pub struct RandomPatternCornerFinder { /* private fields */ }
Expand description
Class for finding features points and corresponding 3D in world coordinate of a “random” pattern, which can be to be used in calibration. It is useful when pattern is partly occluded or only a part of pattern can be observed in multiple cameras calibration. The pattern can be generated by RandomPatternGenerator class described in this file.
Please refer to paper B. Li, L. Heng, K. Kevin and M. Pollefeys, “A Multiple-Camera System Calibration Toolbox Using A Feature Descriptor-Based Calibration Pattern”, in IROS 2013.
Implementations§
Source§impl RandomPatternCornerFinder
impl RandomPatternCornerFinder
Sourcepub fn new(
pattern_width: f32,
pattern_height: f32,
nmini_match: i32,
depth: i32,
verbose: i32,
show_extraction: i32,
detector: Ptr<Feature2D>,
descriptor: Ptr<Feature2D>,
matcher: Ptr<DescriptorMatcher>,
) -> Result<RandomPatternCornerFinder>
pub fn new( pattern_width: f32, pattern_height: f32, nmini_match: i32, depth: i32, verbose: i32, show_extraction: i32, detector: Ptr<Feature2D>, descriptor: Ptr<Feature2D>, matcher: Ptr<DescriptorMatcher>, ) -> Result<RandomPatternCornerFinder>
§C++ default parameters
- nmini_match: 20
- depth: CV_32F
- verbose: 0
- show_extraction: 0
- detector: AKAZE::create(AKAZE::DESCRIPTOR_MLDB,0,3,0.005f)
- descriptor: AKAZE::create(AKAZE::DESCRIPTOR_MLDB,0,3,0.005f)
- matcher: DescriptorMatcher::create(“BruteForce-L1”)
Sourcepub fn new_def(
pattern_width: f32,
pattern_height: f32,
) -> Result<RandomPatternCornerFinder>
pub fn new_def( pattern_width: f32, pattern_height: f32, ) -> Result<RandomPatternCornerFinder>
§Note
This alternative version of [new] function uses the following default values for its arguments:
- nmini_match: 20
- depth: CV_32F
- verbose: 0
- show_extraction: 0
- detector: AKAZE::create(AKAZE::DESCRIPTOR_MLDB,0,3,0.005f)
- descriptor: AKAZE::create(AKAZE::DESCRIPTOR_MLDB,0,3,0.005f)
- matcher: DescriptorMatcher::create(“BruteForce-L1”)
Trait Implementations§
Source§impl Boxed for RandomPatternCornerFinder
impl Boxed for RandomPatternCornerFinder
Source§unsafe fn from_raw(
ptr: <RandomPatternCornerFinder as OpenCVFromExtern>::ExternReceive,
) -> Self
unsafe fn from_raw( ptr: <RandomPatternCornerFinder as OpenCVFromExtern>::ExternReceive, ) -> Self
Wrap the specified raw pointer Read more
Source§fn into_raw(
self,
) -> <RandomPatternCornerFinder as OpenCVTypeExternContainer>::ExternSendMut
fn into_raw( self, ) -> <RandomPatternCornerFinder as OpenCVTypeExternContainer>::ExternSendMut
Return the underlying raw pointer while consuming this wrapper. Read more
Source§fn as_raw(
&self,
) -> <RandomPatternCornerFinder as OpenCVTypeExternContainer>::ExternSend
fn as_raw( &self, ) -> <RandomPatternCornerFinder as OpenCVTypeExternContainer>::ExternSend
Return the underlying raw pointer. Read more
Source§fn as_raw_mut(
&mut self,
) -> <RandomPatternCornerFinder as OpenCVTypeExternContainer>::ExternSendMut
fn as_raw_mut( &mut self, ) -> <RandomPatternCornerFinder as OpenCVTypeExternContainer>::ExternSendMut
Return the underlying mutable raw pointer Read more
Source§impl Debug for RandomPatternCornerFinder
impl Debug for RandomPatternCornerFinder
Source§impl Drop for RandomPatternCornerFinder
impl Drop for RandomPatternCornerFinder
Source§impl RandomPatternCornerFinderTrait for RandomPatternCornerFinder
impl RandomPatternCornerFinderTrait for RandomPatternCornerFinder
fn as_raw_mut_RandomPatternCornerFinder(&mut self) -> *mut c_void
fn load_pattern(&mut self, pattern_image: &impl MatTraitConst) -> Result<()>
fn load_pattern_1( &mut self, pattern_image: &impl MatTraitConst, pattern_key_points: &Vector<KeyPoint>, pattern_descriptors: &impl MatTraitConst, ) -> Result<()>
fn compute_object_image_points( &mut self, input_images: Vector<Mat>, ) -> Result<()>
fn compute_object_image_points_for_single( &mut self, input_image: impl MatTrait, ) -> Result<Vector<Mat>>
fn get_object_points(&mut self) -> Result<Vector<Mat>>
fn get_image_points(&mut self) -> Result<Vector<Mat>>
Source§impl RandomPatternCornerFinderTraitConst for RandomPatternCornerFinder
impl RandomPatternCornerFinderTraitConst for RandomPatternCornerFinder
fn as_raw_RandomPatternCornerFinder(&self) -> *const c_void
impl Send for RandomPatternCornerFinder
Auto Trait Implementations§
impl Freeze for RandomPatternCornerFinder
impl RefUnwindSafe for RandomPatternCornerFinder
impl !Sync for RandomPatternCornerFinder
impl Unpin for RandomPatternCornerFinder
impl UnwindSafe for RandomPatternCornerFinder
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<Mat> ModifyInplace for Matwhere
Mat: Boxed,
impl<Mat> ModifyInplace for Matwhere
Mat: Boxed,
Source§unsafe fn modify_inplace<Res>(
&mut self,
f: impl FnOnce(&Mat, &mut Mat) -> Res,
) -> Res
unsafe fn modify_inplace<Res>( &mut self, f: impl FnOnce(&Mat, &mut Mat) -> Res, ) -> Res
Helper function to call OpenCV functions that allow in-place modification of a
Mat
or another similar object. By passing
a mutable reference to the Mat
to this function your closure will get called with the read reference and a write references
to the same Mat
. This is unsafe in a general case as it leads to having non-exclusive mutable access to the internal data,
but it can be useful for some performance sensitive operations. One example of an OpenCV function that allows such in-place
modification is imgproc::threshold
. Read more