Board of ArUco markers. 更多...
#include <opencv2/objdetect/aruco_board.hpp>
Board of ArUco markers.
板是在 3D 空间中具有共同坐标系的标记集。标记板的常见形式是平面(2D)板,但可以使用任何 3D 布局。A Board 对象由以下组成
- 标记角点的对象点,即它们相对于板系统的坐标。
- 指示板标记类型的字典。
- 板中所有标记的标识符。
◆ Board() [1/3]
Python |
---|
| cv.aruco.Board( | objPoints, dictionary, ids | ) -> | <aruco_Board object> |
通用 Board 构造函数。
- 参数
-
objPoints | 板中所有标记角点的对象点数组 |
dictionary | 此板使用的标记字典 |
ids | 板中标记的标识符向量 |
◆ Board() [2/3]
cv::aruco::Board::Board |
( |
| ) |
|
Python |
---|
| cv.aruco.Board( | objPoints, dictionary, ids | ) -> | <aruco_Board object> |
◆ Board() [3/3]
cv::aruco::Board::Board |
( |
const Ptr< Impl > & |
impl | ) |
|
|
protected |
Python |
---|
| cv.aruco.Board( | objPoints, dictionary, ids | ) -> | <aruco_Board object> |
◆ generateImage()
void cv::aruco::Board::generateImage |
( |
Size |
outSize, |
|
|
OutputArray |
img, |
|
|
int |
marginSize = 0 , |
|
|
int |
borderBits = 1 |
|
) |
| const |
Python |
---|
| cv.aruco.Board.generateImage( | outSize[, img[, marginSize[, borderBits]]] | ) -> | img |
绘制平面板。
- 参数
-
outSize | 输出图像的大小(以像素为单位)。 |
img | 包含板的输出图像。此图像的大小将为 outSize,板将位于中心,保持板的比例。 |
marginSize | 输出图像中板的最小边距(以像素为单位)。 |
borderBits | 标记边界的宽度。 |
此函数返回板的图像,可直接打印。
◆ getDictionary()
const Dictionary & cv::aruco::Board::getDictionary |
( |
| ) |
const |
Python |
---|
| cv.aruco.Board.getDictionary( | | ) -> | retval |
◆ getIds()
const std::vector< int > & cv::aruco::Board::getIds |
( |
| ) |
const |
Python |
---|
| cv.aruco.Board.getIds( | | ) -> | retval |
板中标记的标识符向量(应与 objPoints 大小相同)。
- 返回
- 标记标识符向量
◆ getObjPoints()
const std::vector< std::vector< Point3f > > & cv::aruco::Board::getObjPoints |
( |
| ) |
const |
Python |
---|
| cv.aruco.Board.getObjPoints( | | ) -> | retval |
返回板中所有标记角点的对象点数组。
每个标记包含其 4 个角点,顺序如下
- objPoints[i][0] - 第 i 个标记的左上角点
- objPoints[i][1] - 第 i 个标记的右上角点
- objPoints[i][2] - 第 i 个标记的右下角点
- objPoints[i][3] - 第 i 个标记的左下角点
标记按特定顺序排列 - 按行排列,每行从左到右。对于 M 个标记,大小为 Mx4。
◆ getRightBottomCorner()
const Point3f & cv::aruco::Board::getRightBottomCorner |
( |
| ) |
const |
Python |
---|
| cv.aruco.Board.getRightBottomCorner( | | ) -> | retval |
获取板的右下角坐标,在调用 create() 函数时设置。
◆ matchImagePoints()
Python |
---|
| cv.aruco.Board.matchImagePoints( | detectedCorners, detectedIds[, objPoints[, imgPoints]] | ) -> | objPoints, imgPoints |
给定板配置和一组检测到的标记,返回相应的图像点和对象点,可用于 solvePnP()
- 参数
-
detectedCorners | 板的检测到的标记角点列表。对于 cv::Board 和 cv::GridBoard,该方法期望 std::vector<std::vector<Point2f>> 或 std::vector<Mat>,其中包含 ArUco 标记角点。对于 cv::CharucoBoard,该方法期望 std::vector<Point2f> 或 Mat,其中包含 ChAruco 角点(与 ArUco 标记匹配的棋盘角点)。 |
detectedIds | 每个标记或 charuco 角点的标识符列表。对于任何 Board 类,该方法期望 std::vector<int> 或 Mat。 |
objPoints | 板坐标空间中标记点的向量。对于任何 Board 类,该方法期望 std::vector<cv::Point3f> objectPoints 或 cv::Mat |
imgPoints | 图像坐标空间中标记点的向量。对于任何 Board 类,该方法期望 std::vector<cv::Point2f> objectPoints 或 cv::Mat |
- 另请参阅
- solvePnP
◆ impl
Ptr<Impl> cv::aruco::Board::impl |
|
protected |
此类的文档是从以下文件生成的