pub struct CharucoBoard { /* private fields */ }
Expand description
ChArUco board is a planar chessboard where the markers are placed inside the white squares of a chessboard.
The benefits of ChArUco boards is that they provide both, ArUco markers versatility and chessboard corner precision, which is important for calibration and pose estimation. The board image can be drawn using generateImage() method.
Implementations§
Source§impl CharucoBoard
impl CharucoBoard
Sourcepub fn new(
size: Size,
square_length: f32,
marker_length: f32,
dictionary: &impl DictionaryTraitConst,
ids: &impl ToInputArray,
) -> Result<CharucoBoard>
pub fn new( size: Size, square_length: f32, marker_length: f32, dictionary: &impl DictionaryTraitConst, ids: &impl ToInputArray, ) -> Result<CharucoBoard>
CharucoBoard constructor
§Parameters
- size: number of chessboard squares in x and y directions
- squareLength: squareLength chessboard square side length (normally in meters)
- markerLength: marker side length (same unit than squareLength)
- dictionary: dictionary of markers indicating the type of markers
- ids: array of id used markers The first markers in the dictionary are used to fill the white chessboard squares.
§C++ default parameters
- ids: noArray()
Sourcepub fn new_def(
size: Size,
square_length: f32,
marker_length: f32,
dictionary: &impl DictionaryTraitConst,
) -> Result<CharucoBoard>
pub fn new_def( size: Size, square_length: f32, marker_length: f32, dictionary: &impl DictionaryTraitConst, ) -> Result<CharucoBoard>
CharucoBoard constructor
§Parameters
- size: number of chessboard squares in x and y directions
- squareLength: squareLength chessboard square side length (normally in meters)
- markerLength: marker side length (same unit than squareLength)
- dictionary: dictionary of markers indicating the type of markers
- ids: array of id used markers The first markers in the dictionary are used to fill the white chessboard squares.
§Note
This alternative version of [new] function uses the following default values for its arguments:
- ids: noArray()
pub fn default() -> Result<CharucoBoard>
Trait Implementations§
Source§impl BoardTrait for CharucoBoard
impl BoardTrait for CharucoBoard
fn as_raw_mut_Board(&mut self) -> *mut c_void
Source§impl BoardTraitConst for CharucoBoard
impl BoardTraitConst for CharucoBoard
fn as_raw_Board(&self) -> *const c_void
Source§fn get_dictionary(&self) -> Result<Dictionary>
fn get_dictionary(&self) -> Result<Dictionary>
return the Dictionary of markers employed for this board
Source§fn get_obj_points(&self) -> Result<Vector<Vector<Point3f>>>
fn get_obj_points(&self) -> Result<Vector<Vector<Point3f>>>
return array of object points of all the marker corners in the board. Read more
Source§fn get_ids(&self) -> Result<Vector<i32>>
fn get_ids(&self) -> Result<Vector<i32>>
vector of the identifiers of the markers in the board (should be the same size as objPoints) Read more
Source§fn get_right_bottom_corner(&self) -> Result<Point3f>
fn get_right_bottom_corner(&self) -> Result<Point3f>
get coordinate of the bottom right corner of the board, is set when calling the function create()
Source§fn match_image_points(
&self,
detected_corners: &impl ToInputArray,
detected_ids: &impl ToInputArray,
obj_points: &mut impl ToOutputArray,
img_points: &mut impl ToOutputArray,
) -> Result<()>
fn match_image_points( &self, detected_corners: &impl ToInputArray, detected_ids: &impl ToInputArray, obj_points: &mut impl ToOutputArray, img_points: &mut impl ToOutputArray, ) -> Result<()>
Given a board configuration and a set of detected markers, returns the corresponding
image points and object points, can be used in solvePnP() Read more
Source§fn generate_image(
&self,
out_size: Size,
img: &mut impl ToOutputArray,
margin_size: i32,
border_bits: i32,
) -> Result<()>
fn generate_image( &self, out_size: Size, img: &mut impl ToOutputArray, margin_size: i32, border_bits: i32, ) -> Result<()>
Draw a planar board Read more
Source§fn generate_image_def(
&self,
out_size: Size,
img: &mut impl ToOutputArray,
) -> Result<()>
fn generate_image_def( &self, out_size: Size, img: &mut impl ToOutputArray, ) -> Result<()>
Draw a planar board Read more
Source§impl Boxed for CharucoBoard
impl Boxed for CharucoBoard
Source§unsafe fn from_raw(
ptr: <CharucoBoard as OpenCVFromExtern>::ExternReceive,
) -> Self
unsafe fn from_raw( ptr: <CharucoBoard as OpenCVFromExtern>::ExternReceive, ) -> Self
Wrap the specified raw pointer Read more
Source§fn into_raw(self) -> <CharucoBoard as OpenCVTypeExternContainer>::ExternSendMut
fn into_raw(self) -> <CharucoBoard as OpenCVTypeExternContainer>::ExternSendMut
Return the underlying raw pointer while consuming this wrapper. Read more
Source§fn as_raw(&self) -> <CharucoBoard as OpenCVTypeExternContainer>::ExternSend
fn as_raw(&self) -> <CharucoBoard as OpenCVTypeExternContainer>::ExternSend
Return the underlying raw pointer. Read more
Source§fn as_raw_mut(
&mut self,
) -> <CharucoBoard as OpenCVTypeExternContainer>::ExternSendMut
fn as_raw_mut( &mut self, ) -> <CharucoBoard as OpenCVTypeExternContainer>::ExternSendMut
Return the underlying mutable raw pointer Read more
Source§impl CharucoBoardTrait for CharucoBoard
impl CharucoBoardTrait for CharucoBoard
Source§impl CharucoBoardTraitConst for CharucoBoard
impl CharucoBoardTraitConst for CharucoBoard
fn as_raw_CharucoBoard(&self) -> *const c_void
fn get_legacy_pattern(&self) -> Result<bool>
fn get_chessboard_size(&self) -> Result<Size>
fn get_square_length(&self) -> Result<f32>
fn get_marker_length(&self) -> Result<f32>
Source§fn get_chessboard_corners(&self) -> Result<Vector<Point3f>>
fn get_chessboard_corners(&self) -> Result<Vector<Point3f>>
get CharucoBoard::chessboardCorners
Source§fn get_nearest_marker_idx(&self) -> Result<Vector<Vector<i32>>>
fn get_nearest_marker_idx(&self) -> Result<Vector<Vector<i32>>>
get CharucoBoard::nearestMarkerIdx, for each charuco corner, nearest marker index in ids array
Source§fn get_nearest_marker_corners(&self) -> Result<Vector<Vector<i32>>>
fn get_nearest_marker_corners(&self) -> Result<Vector<Vector<i32>>>
get CharucoBoard::nearestMarkerCorners, for each charuco corner, nearest marker corner id of each marker
Source§fn check_charuco_corners_collinear(
&self,
charuco_ids: &impl ToInputArray,
) -> Result<bool>
fn check_charuco_corners_collinear( &self, charuco_ids: &impl ToInputArray, ) -> Result<bool>
check whether the ChArUco markers are collinear Read more
Source§impl Clone for CharucoBoard
impl Clone for CharucoBoard
Source§impl Debug for CharucoBoard
impl Debug for CharucoBoard
Source§impl Drop for CharucoBoard
impl Drop for CharucoBoard
Source§impl From<CharucoBoard> for Board
impl From<CharucoBoard> for Board
Source§fn from(s: CharucoBoard) -> Self
fn from(s: CharucoBoard) -> Self
Converts to this type from the input type.
impl Send for CharucoBoard
Auto Trait Implementations§
impl Freeze for CharucoBoard
impl RefUnwindSafe for CharucoBoard
impl !Sync for CharucoBoard
impl Unpin for CharucoBoard
impl UnwindSafe for CharucoBoard
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<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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