OpenCV  4.10.0
开源计算机视觉
正在加载...
正在搜索...
无匹配项
公共成员函数 | 公共属性 | 所有成员列表
cv::aruco::DetectorParameters 结构体参考

结构体 DetectorParametersArucoDetector 使用 更多...

#include <opencv2/objdetect/aruco_detector.hpp>

cv::aruco::DetectorParameters 的协作图

公共成员函数

 DetectorParameters ()
 
bool readDetectorParameters (const FileNode &fn)
 FileNode 读取一组新的 DetectorParameters(使用 FileStorage.root())。
 
bool writeDetectorParameters (FileStorage &fs, const String &name=String())
 将一组 DetectorParameters 写入 FileStorage
 

公共属性

double adaptiveThreshConstant
 在查找轮廓之前进行自适应阈值处理的常数(默认值为 7)
 
int adaptiveThreshWinSizeMax
 在查找轮廓之前进行自适应阈值处理的最大窗口大小(默认值为 23)。
 
int adaptiveThreshWinSizeMin
 在查找轮廓之前进行自适应阈值处理的最小窗口大小(默认值为 3)。
 
int adaptiveThreshWinSizeStep
 阈值处理期间从 adaptiveThreshWinSizeMin 到 adaptiveThreshWinSizeMax 的增量(默认值为 10)。
 
float aprilTagCriticalRad
 拒绝边缘对的角度接近直线或接近 180 度的四边形。
 
int aprilTagDeglitch
 是否应该对阈值化图像进行去毛刺?仅对非常嘈杂的图像有用(默认值为 0)。
 
float aprilTagMaxLineFitMse
 将直线拟合到轮廓时,最大均方误差是多少
 
int aprilTagMaxNmaxima
 在将一组像素分割成四边形时,要考虑多少个角点候选者(默认值为 10)。
 
int aprilTagMinClusterPixels
 拒绝包含像素过少的四边形(默认值为 5)。
 
int aprilTagMinWhiteBlackDiff
 添加额外的检查,即白色模型必须(总体上)比黑色模型更亮。
 
float aprilTagQuadDecimate
 April :: 用户可配置参数。
 
float aprilTagQuadSigma
 应该对分割后的图像应用什么高斯模糊(用于四边形检测?)
 
int cornerRefinementMaxIterations
 角点细化过程的停止准则的最大迭代次数(默认值为 30)。
 
int cornerRefinementMethod
 默认值为 CORNER_REFINE_NONE
 
double cornerRefinementMinAccuracy
 角点细化过程的停止准则的最小误差(默认值为:0.1)
 
int cornerRefinementWinSize
 角点细化过程的最大窗口大小(以像素为单位)(默认值为 5)。
 
bool detectInvertedMarker
 检查是否有白色标记。
 
double errorCorrectionRate
 相对于每个字典的最大错误校正能力的错误校正率(默认值为 0.6)。
 
int markerBorderBits
 标记边框的位数,即标记边框宽度(默认值为 1)。
 
double maxErroneousBitsInBorderRate
 边框中允许的最大错误位数(即允许的边框中的白色位数)。
 
double maxMarkerPerimeterRate
 确定要检测的标记轮廓的最大周长。
 
double minCornerDistanceRate
 检测到的标记的角点之间的最小距离,相对于其周长(默认值为 0.05)
 
int minDistanceToBorder
 检测到的标记的任何角点到图像边框的最小距离(以像素为单位)(默认值为 3)
 
float minGroupDistance = 0.21f
 组中两个标记角点之间的最小平均距离,将其添加到候选者列表中
 
double minMarkerDistanceRate
 要分组的两个标记的角点之间的最小平均距离(默认值为 0.125)。
 
float minMarkerLengthRatioOriginalImg
 范围 [0,1],等效于论文中的(2)。参数 tau_i 对处理速度有直接影响。
 
double minMarkerPerimeterRate
 确定要检测的标记轮廓的最小周长。
 
double minOtsuStdDev
 解码步骤中像素值期间的最小标准差,以应用 Otsu 阈值处理(否则,所有位都设置为 0 或 1,具体取决于均值是否大于 128 或小于 128)(默认值为 5.0)
 
int minSideLengthCanonicalImg
 规范图像中标记的最小边长。后者是在其中搜索轮廓的二值化图像。
 
double perspectiveRemoveIgnoredMarginPerCell
 每个单元格中未考虑用于确定单元格位的像素边距的宽度。
 
int perspectiveRemovePixelPerCell
 移除透视时每个标记单元格的每个维度上的位数(默认值为 4)。
 
double polygonalApproxAccuracyRate
 确定哪些轮廓是正方形的多边形逼近过程中的最小精度。(默认值为 0.03)
 
float relativeCornerRefinmentWinSize
 相对于 ArUco 模块大小的角点细化动态窗口大小(默认值为 0.3)。
 
bool useAruco3Detection
 启用新的、更快的 ArUco 检测策略。
 

详细说明

结构体 DetectorParametersArucoDetector 使用

构造函数和析构函数文档

◆ DetectorParameters()

cv::aruco::DetectorParameters::DetectorParameters ( )
inline

成员函数文档

◆ readDetectorParameters()

bool cv::aruco::DetectorParameters::readDetectorParameters ( const FileNode fn)

FileNode 读取一组新的 DetectorParameters(使用 FileStorage.root())。

◆ writeDetectorParameters()

bool cv::aruco::DetectorParameters::writeDetectorParameters ( FileStorage fs,
const String name = String() 
)

将一组 DetectorParameters 写入 FileStorage

成员数据文档

◆ adaptiveThreshConstant

double cv::aruco::DetectorParameters::adaptiveThreshConstant

在查找轮廓之前进行自适应阈值处理的常数(默认值为 7)

◆ adaptiveThreshWinSizeMax

int cv::aruco::DetectorParameters::adaptiveThreshWinSizeMax

在查找轮廓之前进行自适应阈值处理的最大窗口大小(默认值为 23)。

◆ adaptiveThreshWinSizeMin

int cv::aruco::DetectorParameters::adaptiveThreshWinSizeMin

在查找轮廓之前进行自适应阈值处理的最小窗口大小(默认值为 3)。

◆ adaptiveThreshWinSizeStep

int cv::aruco::DetectorParameters::adaptiveThreshWinSizeStep

阈值处理期间从 adaptiveThreshWinSizeMin 到 adaptiveThreshWinSizeMax 的增量(默认值为 10)。

◆ aprilTagCriticalRad

float cv::aruco::DetectorParameters::aprilTagCriticalRad

拒绝边缘对的角度接近直线或接近 180 度的四边形。

零表示不拒绝任何四边形。(以弧度为单位)(默认值为 10*PI/180)

◆ aprilTagDeglitch

int cv::aruco::DetectorParameters::aprilTagDeglitch

是否应该对阈值化图像进行去毛刺?仅对非常嘈杂的图像有用(默认值为 0)。

◆ aprilTagMaxLineFitMse

float cv::aruco::DetectorParameters::aprilTagMaxLineFitMse

将直线拟合到轮廓时,最大均方误差是多少

◆ aprilTagMaxNmaxima

int cv::aruco::DetectorParameters::aprilTagMaxNmaxima

在将一组像素分割成四边形时,要考虑多少个角点候选者(默认值为 10)。

◆ aprilTagMinClusterPixels

int cv::aruco::DetectorParameters::aprilTagMinClusterPixels

拒绝包含像素过少的四边形(默认值为 5)。

◆ aprilTagMinWhiteBlackDiff

int cv::aruco::DetectorParameters::aprilTagMinWhiteBlackDiff

添加额外的检查,即白色模型必须(总体上)比黑色模型更亮。

当我们构建黑白像素模型时,我们添加额外的检查,即白色模型必须(总体上)比黑色模型更亮。有多亮?(以像素值为单位,[0,255]),(默认值为 5)

◆ aprilTagQuadDecimate

float cv::aruco::DetectorParameters::aprilTagQuadDecimate

April :: 用户可配置参数。

可以在较低分辨率的图像上进行四边形检测,提高速度,但会以姿态精度为代价,并略微降低检测率。解码二进制有效载荷仍然

◆ aprilTagQuadSigma

float cv::aruco::DetectorParameters::aprilTagQuadSigma

应该对分割后的图像应用什么高斯模糊(用于四边形检测?)

◆ cornerRefinementMaxIterations

int cv::aruco::DetectorParameters::cornerRefinementMaxIterations

角点细化过程的停止准则的最大迭代次数(默认值为 30)。

◆ cornerRefinementMethod

int cv::aruco::DetectorParameters::cornerRefinementMethod

默认值为 CORNER_REFINE_NONE

◆ cornerRefinementMinAccuracy

double cv::aruco::DetectorParameters::cornerRefinementMinAccuracy

角点细化过程的停止准则的最小误差(默认值为:0.1)

◆ cornerRefinementWinSize

int cv::aruco::DetectorParameters::cornerRefinementWinSize

角点细化过程的最大窗口大小(以像素为单位)(默认值为 5)。

如果 ArUco 标记太小,窗口大小可能会减小,请检查 relativeCornerRefinmentWinSize。最终窗口大小的计算公式为:min(cornerRefinementWinSize, averageArucoModuleSize*relativeCornerRefinmentWinSize),其中 averageArucoModuleSize 是 ArUco 标记的平均模块大小(以像素为单位)(ArUco 标记由黑色和白色模块组成)

◆ detectInvertedMarker

bool cv::aruco::DetectorParameters::detectInvertedMarker

检查是否有白色标记。

为了生成“白色”标记,只需使用波浪号 ~markerImage 反转普通标记。(默认值为 false)

◆ errorCorrectionRate

double cv::aruco::DetectorParameters::errorCorrectionRate

相对于每个字典的最大错误校正能力的错误校正率(默认值为 0.6)。

◆ markerBorderBits

int cv::aruco::DetectorParameters::markerBorderBits

标记边框的位数,即标记边框宽度(默认值为 1)。

◆ maxErroneousBitsInBorderRate

double cv::aruco::DetectorParameters::maxErroneousBitsInBorderRate

边框中允许的最大错误位数(即允许的边框中的白色位数)。

表示为相对于每个标记的总位数的比率(默认值为 0.35)。

◆ maxMarkerPerimeterRate

double cv::aruco::DetectorParameters::maxMarkerPerimeterRate

确定要检测的标记轮廓的最大周长。

这被定义为相对于输入图像的最大尺寸的比率(默认值为 4.0)。

◆ minCornerDistanceRate

double cv::aruco::DetectorParameters::minCornerDistanceRate

检测到的标记的角点之间的最小距离,相对于其周长(默认值为 0.05)

◆ minDistanceToBorder

int cv::aruco::DetectorParameters::minDistanceToBorder

检测到的标记的任何角点到图像边框的最小距离(以像素为单位)(默认值为 3)

◆ minGroupDistance

float cv::aruco::DetectorParameters::minGroupDistance = 0.21f

组中两个标记角点之间的最小平均距离,将其添加到候选者列表中

相对于其模块大小计算的两个标记的角点之间的平均距离(默认值为 0.21)。

◆ minMarkerDistanceRate

double cv::aruco::DetectorParameters::minMarkerDistanceRate

要分组的两个标记的角点之间的最小平均距离(默认值为 0.125)。

该比率相对于两个标记中较小的周长。如果两个标记的角点之间的平均距离小于 min(MarkerPerimeter1, MarkerPerimeter2)*minMarkerDistanceRate,则将两个标记归为一组。

默认值为 0.125,因为 0.125*MarkerPerimeter = (MarkerPerimeter / 4) * 0.5 = 标记的一半边长。

注意
默认值在 4.8.1 版本发布后从 0.05 更改为 0.125,因为过滤算法已更改。现在,如果同一组中的几个候选者彼此相距较远,则可以将它们添加到候选者列表中。
另请参阅
minGroupDistance.

◆ minMarkerLengthRatioOriginalImg

float cv::aruco::DetectorParameters::minMarkerLengthRatioOriginalImg

范围 [0,1],等效于论文中的(2)。参数 tau_i 对处理速度有直接影响。

◆ minMarkerPerimeterRate

double cv::aruco::DetectorParameters::minMarkerPerimeterRate

确定要检测的标记轮廓的最小周长。

它被定义为相对于输入图像最大尺寸的比率(默认值为 0.03)。

◆ minOtsuStdDev

double cv::aruco::DetectorParameters::minOtsuStdDev

解码步骤中像素值期间的最小标准差,以应用 Otsu 阈值处理(否则,所有位都设置为 0 或 1,具体取决于均值是否大于 128 或小于 128)(默认值为 5.0)

◆ minSideLengthCanonicalImg

int cv::aruco::DetectorParameters::minSideLengthCanonicalImg

规范图像中标记的最小边长。后者是在其中搜索轮廓的二值化图像。

◆ perspectiveRemoveIgnoredMarginPerCell

double cv::aruco::DetectorParameters::perspectiveRemoveIgnoredMarginPerCell

每个单元格中未考虑用于确定单元格位的像素边距的宽度。

它表示相对于单元格总大小的比率,即 perspectiveRemovePixelPerCell(默认值为 0.13)。

◆ perspectiveRemovePixelPerCell

int cv::aruco::DetectorParameters::perspectiveRemovePixelPerCell

移除透视时每个标记单元格的每个维度上的位数(默认值为 4)。

◆ polygonalApproxAccuracyRate

double cv::aruco::DetectorParameters::polygonalApproxAccuracyRate

确定哪些轮廓是正方形的多边形逼近过程中的最小精度。(默认值为 0.03)

◆ relativeCornerRefinmentWinSize

float cv::aruco::DetectorParameters::relativeCornerRefinmentWinSize

相对于 ArUco 模块大小的角点细化动态窗口大小(默认值为 0.3)。

最终窗口大小计算如下:min(cornerRefinementWinSize, averageArucoModuleSize*relativeCornerRefinmentWinSize),其中 averageArucoModuleSize 是 ArUco 标记中模块的平均大小(以像素为单位)。(ArUco 标记由黑色和白色模块组成)如果标记彼此相距较远,则将参数值增加到 0.4-0.5 可能会有用。如果标记彼此靠近,则将参数值降低到 0.1-0.2 可能会有用。

◆ useAruco3Detection

bool cv::aruco::DetectorParameters::useAruco3Detection

启用新的、更快的 ArUco 检测策略。

在论文中提出:Romero-Ramirez 等:Speeded up detection of squared fiducial markers (2018) https://www.researchgate.net/publication/325787310_Speeded_Up_Detection_of_Squared_Fiducial_Markers


此结构的文档是从以下文件生成的