我在研究中使用了棋盘角检测算法。我使用了 goodFeaturesToTrack 来找到角点,并使用 cvFindCornerSubPix 来细化亚像素级别的角点。在我的第一个线索中,在相机前固定了一个棋盘并拍摄了近 5 张图像。在找到亚像素级别后,我找到了像这样的第一张图像的角点。
(x,y) = (1259.422974,784.823181) (x,y) = (1258.550537,828.983459) (x,y) = (1257.704956,873.095154) (x,y) = (1256.886188,917.151306)
对于第二张图片,我的角落是这样的
(x,y) = (1259.426147,784.866272) (x,y) = (1258.548584,829.007916) (x,y) = (1257.697754,873.099915) (x,y) = (1256.873779,917.136719)
我使用了如下所示的 deadreg
cornerCriter.epsilon = 0.0005;
cornerCriter.max_iter = 30;
cornerCriter.type = 3;
winSize.height = 30;
winSize.width = 30;
deadReg.height = -1;
deadReg.width = -1;
我使用了 10MP 相机,我的棋盘正方形大小是 40 毫米。我的问题是我得到的角的精度是 0.1 像素。但我需要 0.001 像素的精度。有什么方法可以存档这种准确性吗?角落是否依赖于噪音?相机拍摄图像时是否会出现任何噪音?
请帮我。