当前位置 : 主页 > 手机开发 > 无线 >

用opencv校准相机,它是如何工作的,我如何移动我的棋盘

来源:互联网 收集:自由互联 发布时间:2021-06-10
我正在使用openCV的calibrateCamera功能来校准我的相机.我从教程 implementation开始,但似乎有些不对劲. 相机正在向下看桌子,我使用的棋盘面积约占我总图像的1/2或1/4.因为我的目标是跟踪在这
我正在使用openCV的calibrateCamera功能来校准我的相机.我从教程 implementation开始,但似乎有些不对劲.

相机正在向下看桌子,我使用的棋盘面积约占我总图像的1/2或1/4.因为我的目标是跟踪在这张桌子上滑动的扁平物体,所以我也将棋盘滑过这张桌子.

所以我的第一个问题是:我可以将棋盘移到这张桌子上吗?或者我是否必须进行一些3D动作以获得一些好的结果?
因为我想知道:该功能如何猜测桌子和相机之间的距离?他只猜测了他的焦点,他只有一只“眼睛”,所以没有深度视觉.

我的第二个问题:血腥的东西是如何起作用的? :p任何人都可以告诉我这个函数的一些实现吗?

谢谢!

相机校准需要一个点种子来计算相机矩阵和相机中心点的位置,以及失真矩阵,如果你想使用棋盘,你必须考虑它的尺寸(我从未使用过圆圈功能,因为棋盘的检测更容易),棋盘的尺寸应该是X对非对数,这样你就可以获得正确的旋转矩阵!校准功能需要最少8x的棋盘角度和(我用30分50)它取决于你想要的精度.校准函数的返回值是重新投影误差,如果校准是这个应该接近于零好.
cameraCalibration使用二手棋盘的大小(您可以使用不同的chessboardSize)和尺寸(以mm或cm或甚至m等为单位).您的结果将取决于您给定的尺寸.
在获得chessboardCorners之后,您必须使用CornerSubPix函数对它们进行细化,您可以设置函数参数中的细化程度.

在互联网上,你可以找到很多关于这个主题的文档.

http://www.ics.uci.edu/~majumder/vispercep/cameracalib.pdf

我希望它有所帮助!

网友评论