由于要完成3D多视角下数据集的搭建,所以要尽兴多视角下,相机的位姿估计。由于生活中部分物体的纹理信息并不丰富,所以使用sift等特征点然后LM求解并不可靠,而在一侧放置标定板,会因为视角的变化,导致部分被遮挡,所以此处使用了一圈tag来进行位姿估计,在创建board时,犯了一些错误,此处也会将相应的视线代码贴出来,仅供参考。
marker的生成
单独生成对应的marker,具体的函数如下:
board的生成
虽然能生成单个的marker但是想要生成多个marker联合的board,可以运行下面的代码:
自定义board的生成
有时候为了更好地完成任务,需要自己对board进行定义,所以使用了自定义的方法生成一圈tag, 
在生成自定义board的过程中,犯了很多傻傻的错误,总是提示
一直在苦恼时哪个地方的参数没写对吗?结果发现是建立四个点的时候,不是逆时针,因为 aruco::Board::create 要求是逆时针建立四个点,所以改过来就好了。其中可以更改的相关参数如:length marker的宽度, aruco::drawPlanarBoard(board, Size(3000, 3000), boardImage, 70, 1); 中70为边缘的宽度,下面就可以生成对应的board了。
|
|
生成了对应的board。