gpt4 book ai didi

OpenCV:charuco(钻石)不适用于更大的图像。调整哪些参数?

转载 作者:行者123 更新时间:2023-12-02 17:40:32 28 4
gpt4 key购买 nike

以某种方式检测 charuco 钻石对我来说不适用于更大的图像。使用我的 1920x1080 原始图像,它既不能可靠地识别 id(菱形 id 元素每次都在切换位置)。在第一张图片中,您可以看到它识别出 (7, 9, 45, 2)。

1920x1080 image. wrong ids order and pose estimation

然后我尝试将图像下采样到 960x540,并将校准参数 f、c 分成一半,它可以工作! id被正确识别为(2,7,45,9),姿态估计准确。

960x540 image. correctly estimated

如何使它适用于更大的图像?我尝试根据绝对像素单位(与图像大小无关)更改检测参数。这是我当前参数的列表。我意识到增加阈值的窗口大小有助于识别正方形,但不适用于 id 或姿势估计。

nmarkers: 1024
adaptiveThreshWinSizeMin: 13
adaptiveThreshWinSizeMax: 113
adaptiveThreshWinSizeStep: 10
adaptiveThreshWinSize: 42
adaptiveThreshConstant: 7
minMarkerPerimeterRate: 0.1
maxMarkerPerimeterRate: 4.0
polygonalApproxAccuracyRate: 0.05
minCornerDistance: 10.0
minDistanceToBorder: 10
minMarkerDistance: 10.0
minMarkerDistanceRate: 0.05
doCornerRefinement: false
cornerRefinementWinSize: 5
cornerRefinementMaxIterations: 30
cornerRefinementMinAccuracy: 0.1
markerBorderBits: 1
perspectiveRemovePixelPerCell: 8
perspectiveRemoveIgnoredMarginPerCell: 0.13
maxErroneousBitsInBorderRate: 0.04
minOtsuStdDev: 5.0
errorCorrectionRate: 0.6
有什么提示吗?

谢谢你!

最佳答案

最后我需要修补 opencv aruco 模块。这是某个阈值升级太快(到第 4 位)到图像大小(closestCandidateDistance 中的 refineDetectedMarkers )的问题。解决方案是制作 minRepDistancedetectCharucoDiamond仅随图像大小线性缩放。

opencv forum 中的完整答案和补丁.

关于OpenCV:charuco(钻石)不适用于更大的图像。调整哪些参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45508678/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com