基于ChArUco标定板的双目鱼眼相机标定方法及系统

文档序号:37079991发布日期:2024-02-20 21:35阅读:54来源:国知局
基于ChArUco标定板的双目鱼眼相机标定方法及系统

本发明涉及计算机视觉领域,尤其涉及一种基于charuco标定板的双目鱼眼相机标定方法及系统。


背景技术:

1、近年来,由于鱼眼相机可以拍摄到更大的视场角度,通常可达到180度甚至更高,拍摄时能够将更多场景纳入画面,在视觉测量、智能交通、虚拟现实、全景拼接等领域发挥着越来越重要的作用。但是由于鱼眼相机独特的镜头设计结构,在拍摄大视角的同时带来的是图像的畸变,最严重的是径向畸变,其产生的原因是光线在离透镜中心越远的地方折射更加严重,这导致越靠近图像边缘位置畸变程度越严重,故在使用鱼眼相机前,需要对相机的内参矩阵、畸变系数、外参矩阵进行标定,才能保证图像测量的精度和准确性,因此鱼眼相机的标定对其使用显得尤为重要。

2、如图1所示,目前基于棋盘格、圆环网格标定板或者aruco标定板对鱼眼相机进行标定的方法,在进行双目鱼眼相机内参和畸变系数标定时,需要将标定板放置在摄像头拍摄范围内,通过变换标定板的位置或移动摄像头,拍摄各个视角下标定板的位置图片,这种标定方法对于鱼眼相机有如下问题:

3、(1)棋盘格标定板在标定过程中需要检测出标定板中所有的角点位置,但鱼眼相机在拍摄标定板位于图像边缘位置时,常常因为畸变严重导致部分角点检测失败;

4、(2)圆形网格标定板在标定过程中,圆形被成像为椭圆,且空间中圆的圆心投影不等于投影出的椭圆的圆心,具有偏心误差;

5、(3)aruco标定板具有快速检测和多功能性,但是这种标定板即使经过亚像素细化,它们的角点位置的准确性也不是很高;由于鱼眼相机的成像特性,其畸变比较严重,使用普通的棋盘格标定板容易造成误差,且部分角点会出现检测失败的情况。

6、在进行双目鱼眼相机的外参标定时,通过双目鱼眼相机拍摄同时包含标定板的一系列不同角度的图片,利用检测的角点位置进行相对外参标定,这种标定方法对于鱼眼相机有如下问题:由于镜头畸变导致左右鱼眼相机拍摄的标定照片的部分角点检测失败或两组照片检测到的角点不一致,使得标定难度高。


技术实现思路

1、本发明主要目的在于提供一种可以提高相机内参标定精度,解决了在双目鱼眼相机外参标定时由于不同相机对同一时刻的标定照片识别的角点不同导致外参标定失败的问题的基于charuco标定板的双目鱼眼相机标定方法及系统。

2、本发明所采用的技术方案是:

3、提供一种基于charuco标定板的双目鱼眼相机标定方法,包括以下步骤:

4、s110、设定charuco标定板参数,包括charuco标定板的行数、列数,黑白方块边长、aruco码边长及字典类型;

5、s120、通过移动charuco标定板位置获取单目鱼眼相机的内参标定图像,根据设定的charuco标定板参数对aruco标记和黑白交替的正方形的角点进行检测,获得角点信息和id信息,利用角点信息和id信息进行内参矩阵和畸变系数标定;

6、s130、同步获取双目鱼眼相机的外参标定图像,根据设定的charuco标定板参数对aruco标记和黑白交替的正方形的角点进行检测,获得角点信息和id信息,剔除角点数目低于80%的外参标定图像,对于角点数在80%-100%之间的外参标定图像,对其依次框选出未识别角点位置后采用梯度下降算法搜索出角点位置,将角点信息和id信息插入自动检测的角点和id数组中,利用完整的角点信息和id信息进行外参矩阵标定。

7、接上述技术方案,步骤s120具体包括以下步骤:

8、s121、通过移动charuco标定板的位置,使charuco标定板出现在鱼眼相机画面的各个位置中,从不同视角采集单个鱼眼相机的标定图像;

9、s122、对获取的标定图像进行灰度化处理;

10、s123、获取aruco码在标定板坐标系下的角点信息,包括检测到的aruco码个数及每个aruco码的四个角点坐标和id,其中aruco码的id从左到右从上到下依次增加;根据角点个数及投影误差对每张图像进行筛选;

11、s124、对剩下的图像运用charuco库计算内参矩阵、畸变系数以及总体重投影误差值。

12、接上述技术方案,步骤s123具体采用subpixel corner detection算法来检测charuco标定板的角点个数,确定每张图像中检测出的角点数量低于charuco标定板中真实的角点数目的80%,则剔除;同时单独计算每张图像的重投影误差值,若单张畸变图像的重投影误差值高于阈值k,则剔除。

13、接上述技术方案,畸变系数分为径向畸变和切向畸变,均通过最小化重投影误差计算得到的;具体对于标定板上的每个标定角点,计算其在理想位置上的二维像素坐标和实际图像中二维像素坐标之间的距离,然后使用最小二乘法来拟合径向畸变和切向畸变系数,并使拟合误差最小化。

14、接上述技术方案,步骤s130包括以下步骤:

15、s131、从不同视角同步采集双目鱼眼相机同时包含charuco标定板的多幅图像,使charuco标定板出现在鱼眼相机的各个位置中,得到用于标定外参的多幅畸变图像;

16、s132、对采集的多幅畸变图像进行灰度化处理;

17、s133、获取aruco码在标定板坐标系下的角点信息,包括检测到的aruco码个数及每个aruco码的四个角点坐标和id,其中aruco码的id从左到右从上到下依次增加;根据角点个数及投影误差对每张图像进行筛选,得到候选标定图像;

18、s134、将候选标定图像检测的角点数目和charuco标定板中实际的角点数目进行比较,如果检测出的角点数目不足实际角点数目的80%,则同时剔除两个相机在同一时刻拍摄的照片;如果检测出的角点数目超过80%但不足100%,则进入手动添加角点,防止双目鱼眼相机在同一时刻拍摄的两张标定照片所检测出的角点数目不同导致检测失败;

19、s135、根据角点坐标、内参矩阵和畸变系数来计算相机的相对外参,包括相对旋转矩阵r和相对平移矩阵t。

20、接上述技术方案,用于内参标定或者外参标定的图像为40至60张。

21、接上述技术方案,步骤s134中,当检测出某张图像中所有未识别的角点id后,从第一个未识别的角点位置开始,手动框选出一个以该角点为中心的矩形,从矩形中心位置开始向四周进行搜索,分别计算x方向和y方向的梯度值g_x和g_y,并且计算当前位置处的梯度幅值,如果当前位置的梯度幅值大于历史最大梯度幅值,则更新最大梯度幅值和对应位置的坐标值,直到更新后的位置达到了图像边缘或迭代达到最大次数,则停止搜索,输出坐标值(x,y),并在标定图片中绘制出该点的位置和id,依次添加所有的角点信息,并将搜索出的每个角点坐标和id添加到对应角点数组和id数组的位置中。

22、接上述技术方案,设置charuco标定板为5行7列,其中黑白方块的边长为0.04m,aruco码的边长为0.031m,字典类型为dict_6*6。

23、本发明还提供一种基于charuco标定板的双目鱼眼相机标定系统,其特征在于,包括:

24、标定照片获取模块,用于通过移动charuco标定板位置获取单目鱼眼相机的内参标定图像及外参标定图像,并预先设定charuco标定板参数,包括charuco标定板的行数、列数,黑白方块边长、aruco码边长及字典类型;

25、相机内参标定模块,用于根据设定的charuco标定板参数对内参标定图像中aruco标记和黑白交替的正方形的角点进行检测,获得角点信息和id信息,利用角点信息和id信息进行内参矩阵和畸变系数标定;

26、相机外参标定模块,用于根据设定的charuco标定板参数对外参标定图像中aruco标记和黑白交替的正方形的角点进行检测,获得角点信息和id信息,剔除角点数目低于80%的外参标定图像,对于角点数在80%-100%之间的外参标定图像,对其依次框选出未识别角点位置后采用梯度下降算法搜索出角点位置,将角点信息和id信息插入自动检测的角点和id数组中,利用完整的角点信息和id信息进行外参矩阵标定。

27、本发明还提供一种计算机存储介质,其内存储有可被处理器执行的计算机程序,该计算机程序执行上述技术方案所述的基于charuco标定板的双目鱼眼相机标定方法。

28、本发明产生的有益效果是:本发明通过采用charuco标定板,结合aruco码和棋盘格的优点,提高了标定结果的精确度,同时也避免了由于标定图像不完整或角点检测不全而造成标定系统准确率低甚至标定失败的问题。在相机外参标定时,剔除角点数目低于80%的外参标定图像,对于角点数在80%-100%之间的外参标定图像,对其依次框选出未识别角点位置后,采用梯度下降算法搜索出角点位置,解决了在双目鱼眼相机外参标定时由于不同相机对同一时刻的标定照片识别的角点不同导致外参标定失败的问题。

29、进一步地,在相机内参标定时,首先进行预标定,筛选掉检测出角点数目低于80%的标定照片,再将剩下的照片进行重投影误差检测,对于重投影误差值高于阈值的标定照片进行过滤剔除,使得内参标定精度大大提高。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1