Trait opencv::hub_prelude::LATCH

source ·
pub trait LATCH: Feature2DTrait + LATCHConst {
    // Required method
    fn as_raw_mut_LATCH(&mut self) -> *mut c_void;

    // Provided methods
    fn set_bytes(&mut self, bytes: i32) -> Result<()> { ... }
    fn set_rotation_invariance(
        &mut self,
        rotation_invariance: bool
    ) -> Result<()> { ... }
    fn set_half_ss_dsize(&mut self, half_ssd_size: i32) -> Result<()> { ... }
    fn set_sigma(&mut self, sigma: f64) -> Result<()> { ... }
}
Expand description

latch Class for computing the LATCH descriptor. If you find this code useful, please add a reference to the following paper in your work: Gil Levi and Tal Hassner, “LATCH: Learned Arrangements of Three Patch Codes”, arXiv preprint arXiv:1501.03719, 15 Jan. 2015

LATCH is a binary descriptor based on learned comparisons of triplets of image patches.

  • bytes is the size of the descriptor - can be 64, 32, 16, 8, 4, 2 or 1
  • rotationInvariance - whether or not the descriptor should compansate for orientation changes.
  • half_ssd_size - the size of half of the mini-patches size. For example, if we would like to compare triplets of patches of size 7x7x then the half_ssd_size should be (7-1)/2 = 3.
  • sigma - sigma value for GaussianBlur smoothing of the source image. Source image will be used without smoothing in case sigma value is 0.

Note: the descriptor can be coupled with any keypoint extractor. The only demand is that if you use set rotationInvariance = True then you will have to use an extractor which estimates the patch orientation (in degrees). Examples for such extractors are ORB and SIFT.

Note: a complete example can be found under /samples/cpp/tutorial_code/xfeatures2D/latch_match.cpp

Required Methods§

Provided Methods§

source

fn set_bytes(&mut self, bytes: i32) -> Result<()>

source

fn set_rotation_invariance(&mut self, rotation_invariance: bool) -> Result<()>

source

fn set_half_ss_dsize(&mut self, half_ssd_size: i32) -> Result<()>

source

fn set_sigma(&mut self, sigma: f64) -> Result<()>

Implementations§

source§

impl dyn LATCH + '_

source

pub fn create( bytes: i32, rotation_invariance: bool, half_ssd_size: i32, sigma: f64 ) -> Result<Ptr<dyn LATCH>>

C++ default parameters
  • bytes: 32
  • rotation_invariance: true
  • half_ssd_size: 3
  • sigma: 2.0

Implementors§

source§

impl LATCH for Ptr<dyn LATCH>