[−][src]Struct opencv::features2d::BFMatcher
Brute-force descriptor matcher.
For each descriptor in the first set, this matcher finds the closest descriptor in the second set by trying each one. This descriptor matcher supports masking permissible matches of descriptor sets.
Methods
impl BFMatcher
[src]
pub fn as_raw_BFMatcher(&self) -> *mut c_void
[src]
pub unsafe fn from_raw_ptr(ptr: *mut c_void) -> Self
[src]
impl BFMatcher
[src]
pub fn new(norm_type: i32, cross_check: bool) -> Result<BFMatcher>
[src]
Brute-force matcher constructor (obsolete). Please use BFMatcher.create()
C++ default parameters
- norm_type: NORM_L2
- cross_check: false
pub fn is_mask_supported(&self) -> Result<bool>
[src]
pub fn create(norm_type: i32, cross_check: bool) -> Result<PtrOfBFMatcher>
[src]
Brute-force matcher create method.
Parameters
- normType: One of NORM_L1, NORM_L2, NORM_HAMMING, NORM_HAMMING2. L1 and L2 norms are preferable choices for SIFT and SURF descriptors, NORM_HAMMING should be used with ORB, BRISK and BRIEF, NORM_HAMMING2 should be used with ORB when WTA_K==3 or 4 (see ORB::ORB constructor description).
- crossCheck: If it is false, this is will be default BFMatcher behaviour when it finds the k nearest neighbors for each query descriptor. If crossCheck==true, then the knnMatch() method with k=1 will only return pairs (i,j) such that for i-th query descriptor the j-th descriptor in the matcher's collection is the nearest and vice versa, i.e. the BFMatcher will only return consistent pairs. Such technique usually produces best results with minimal number of outliers when there are enough matches. This is alternative to the ratio test, used by D. Lowe in SIFT paper.
C++ default parameters
- norm_type: NORM_L2
- cross_check: false
pub fn clone(&self, empty_train_data: bool) -> Result<PtrOfDescriptorMatcher>
[src]
C++ default parameters
- empty_train_data: false
Trait Implementations
impl AlgorithmTrait for BFMatcher
[src]
fn as_raw_Algorithm(&self) -> *mut c_void
[src]
fn clear(&mut self) -> Result<()>
[src]
fn write(&self, fs: &mut FileStorage) -> Result<()>
[src]
fn write_1(&self, fs: &PtrOfFileStorage, name: &str) -> Result<()>
[src]
fn read(&mut self, _fn: &FileNode) -> Result<()>
[src]
fn empty(&self) -> Result<bool>
[src]
fn save(&self, filename: &str) -> Result<()>
[src]
fn get_default_name(&self) -> Result<String>
[src]
impl DescriptorMatcher for BFMatcher
[src]
fn as_raw_DescriptorMatcher(&self) -> *mut c_void
[src]
fn add(&mut self, descriptors: &dyn ToInputArray) -> Result<()>
[src]
fn get_train_descriptors(&self) -> Result<VectorOfMat>
[src]
fn clear(&mut self) -> Result<()>
[src]
fn empty(&self) -> Result<bool>
[src]
fn is_mask_supported(&self) -> Result<bool>
[src]
fn train(&mut self) -> Result<()>
[src]
fn train_matches(
&self,
query_descriptors: &dyn ToInputArray,
train_descriptors: &dyn ToInputArray,
matches: &mut VectorOfDMatch,
mask: &dyn ToInputArray
) -> Result<()>
[src]
&self,
query_descriptors: &dyn ToInputArray,
train_descriptors: &dyn ToInputArray,
matches: &mut VectorOfDMatch,
mask: &dyn ToInputArray
) -> Result<()>
fn knn_train_matches(
&self,
query_descriptors: &dyn ToInputArray,
train_descriptors: &dyn ToInputArray,
matches: &mut VectorOfVectorOfDMatch,
k: i32,
mask: &dyn ToInputArray,
compact_result: bool
) -> Result<()>
[src]
&self,
query_descriptors: &dyn ToInputArray,
train_descriptors: &dyn ToInputArray,
matches: &mut VectorOfVectorOfDMatch,
k: i32,
mask: &dyn ToInputArray,
compact_result: bool
) -> Result<()>
fn train_radius_matches(
&self,
query_descriptors: &dyn ToInputArray,
train_descriptors: &dyn ToInputArray,
matches: &mut VectorOfVectorOfDMatch,
max_distance: f32,
mask: &dyn ToInputArray,
compact_result: bool
) -> Result<()>
[src]
&self,
query_descriptors: &dyn ToInputArray,
train_descriptors: &dyn ToInputArray,
matches: &mut VectorOfVectorOfDMatch,
max_distance: f32,
mask: &dyn ToInputArray,
compact_result: bool
) -> Result<()>
fn matches(
&mut self,
query_descriptors: &dyn ToInputArray,
matches: &mut VectorOfDMatch,
masks: &dyn ToInputArray
) -> Result<()>
[src]
&mut self,
query_descriptors: &dyn ToInputArray,
matches: &mut VectorOfDMatch,
masks: &dyn ToInputArray
) -> Result<()>
fn knn_matches(
&mut self,
query_descriptors: &dyn ToInputArray,
matches: &mut VectorOfVectorOfDMatch,
k: i32,
masks: &dyn ToInputArray,
compact_result: bool
) -> Result<()>
[src]
&mut self,
query_descriptors: &dyn ToInputArray,
matches: &mut VectorOfVectorOfDMatch,
k: i32,
masks: &dyn ToInputArray,
compact_result: bool
) -> Result<()>
fn radius_matches(
&mut self,
query_descriptors: &dyn ToInputArray,
matches: &mut VectorOfVectorOfDMatch,
max_distance: f32,
masks: &dyn ToInputArray,
compact_result: bool
) -> Result<()>
[src]
&mut self,
query_descriptors: &dyn ToInputArray,
matches: &mut VectorOfVectorOfDMatch,
max_distance: f32,
masks: &dyn ToInputArray,
compact_result: bool
) -> Result<()>
fn write(&self, file_name: &str) -> Result<()>
[src]
fn read(&mut self, file_name: &str) -> Result<()>
[src]
fn read_1(&mut self, unnamed_arg: &FileNode) -> Result<()>
[src]
fn write_1(&self, unnamed_arg: &mut FileStorage) -> Result<()>
[src]
fn clone(&self, empty_train_data: bool) -> Result<PtrOfDescriptorMatcher>
[src]
fn write_2(&self, fs: &PtrOfFileStorage, name: &str) -> Result<()>
[src]
impl Drop for BFMatcher
[src]
impl Send for BFMatcher
[src]
Auto Trait Implementations
impl RefUnwindSafe for BFMatcher
impl !Sync for BFMatcher
impl Unpin for BFMatcher
impl UnwindSafe for BFMatcher
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,