pub struct BOWImgDescriptorExtractor { /* private fields */ }
Expand description

Class to compute an image descriptor using the bag of visual words.

Such a computation consists of the following steps:

  1. Compute descriptors for a given image and its keypoints set.
  2. Find the nearest visual words from the vocabulary for each keypoint descriptor.
  3. Compute the bag-of-words image descriptor as is a normalized histogram of vocabulary words encountered in the image. The i-th bin of the histogram is a frequency of i-th word of the vocabulary in the given image.

Implementations§

source§

impl BOWImgDescriptorExtractor

source

pub fn new( dextractor: &Ptr<Feature2D>, dmatcher: &Ptr<dyn DescriptorMatcher> ) -> Result<BOWImgDescriptorExtractor>

The constructor.

Parameters
  • dextractor: Descriptor extractor that is used to compute descriptors for an input image and its keypoints.
  • dmatcher: Descriptor matcher that is used to find the nearest word of the trained vocabulary for each keypoint descriptor of the image.
source

pub fn new_1( dmatcher: &Ptr<dyn DescriptorMatcher> ) -> Result<BOWImgDescriptorExtractor>

The constructor.

Parameters
  • dextractor: Descriptor extractor that is used to compute descriptors for an input image and its keypoints.
  • dmatcher: Descriptor matcher that is used to find the nearest word of the trained vocabulary for each keypoint descriptor of the image.
Overloaded parameters

Trait Implementations§

source§

impl BOWImgDescriptorExtractorTrait for BOWImgDescriptorExtractor

source§

fn as_raw_mut_BOWImgDescriptorExtractor(&mut self) -> *mut c_void

source§

fn set_vocabulary(&mut self, vocabulary: &Mat) -> Result<()>

Sets a visual vocabulary. Read more
source§

fn compute_desc( &mut self, image: &dyn ToInputArray, keypoints: &mut Vector<KeyPoint>, img_descriptor: &mut dyn ToOutputArray, point_idxs_of_clusters: &mut Vector<Vector<i32>>, descriptors: &mut Mat ) -> Result<()>

Computes an image descriptor using the set visual vocabulary. Read more
source§

fn compute( &mut self, keypoint_descriptors: &dyn ToInputArray, img_descriptor: &mut dyn ToOutputArray, point_idxs_of_clusters: &mut Vector<Vector<i32>> ) -> Result<()>

Computes an image descriptor using the set visual vocabulary. Read more
source§

fn compute2( &mut self, image: &Mat, keypoints: &mut Vector<KeyPoint>, img_descriptor: &mut Mat ) -> Result<()>

source§

impl BOWImgDescriptorExtractorTraitConst for BOWImgDescriptorExtractor

source§

fn as_raw_BOWImgDescriptorExtractor(&self) -> *const c_void

source§

fn get_vocabulary(&self) -> Result<Mat>

Returns the set vocabulary.
source§

fn descriptor_size(&self) -> Result<i32>

Returns an image descriptor size if the vocabulary is set. Otherwise, it returns 0.
source§

fn descriptor_type(&self) -> Result<i32>

Returns an image descriptor type.
source§

impl Boxed for BOWImgDescriptorExtractor

source§

unsafe fn from_raw(ptr: *mut c_void) -> Self

Wrap the specified raw pointer Read more
source§

fn into_raw(self) -> *mut c_void

Return an the underlying raw pointer while consuming this wrapper. Read more
source§

fn as_raw(&self) -> *const c_void

Return the underlying raw pointer. Read more
source§

fn as_raw_mut(&mut self) -> *mut c_void

Return the underlying mutable raw pointer Read more
source§

impl Drop for BOWImgDescriptorExtractor

source§

fn drop(&mut self)

Executes the destructor for this type. Read more
source§

impl Send for BOWImgDescriptorExtractor

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

const: unstable · source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
const: unstable · source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.