CV-fcn detectCheckerboardPoints返回的点的顺序在文档中定义:
数字首先沿棋盘的短边增加,然后沿长边增加。但究竟是如何确定原点的呢?它必须位于棋盘的角落,这将留下4个选项。如果我们说,原点外面必须有一个黑色方块,我们仍有2个选项。
现在看一下使用不同相机拍摄的相同棋盘格的这两张图片,并在其上绘制detectCheckerboardPoints的结果:
正如我们所看到的,原点位于左图像的左上角,支持外部黑色正方形的可能性(正方形在两个图像中都呈现倒置)。我们还可以看到两个图像的编号非常不同。如果我想计算立体相机校准或图像配准,我需要相应的点对。所以我想我的问题是双重的:
答案 0 :(得分:1)
如果你有一个非对称棋盘,其中一面有偶数个正方形而另一面有奇数,那么只有一种方法来设置原点,使得它外面的正方形是黑色,长边是X-轴,X轴指向右侧,Y轴指向下方。这导致右手坐标系,Z轴指向板。
在文档图片中,如果将原点移动到另一个黑色方块,则短边必须变为X轴,或者X轴必须改变方向。
在您的特定情况下,您遇到问题,因为正方形的颜色在红外图像中是相反的。这将导致检测点的顺序不同。如果要将这两个摄像机校准为立体声对,则必须更改红外摄像机设置以反转图像强度,或者在校准之前以编程方式自行完成。