本发明涉及计算机视觉处理技术领域,具体涉及一种空间坐标系标定的系统和方法。
背景技术:
双目立体视觉是机器视觉的一个重要分支,即由不同位置的两台摄像头经拍摄同一幅场景,通过计算空间点在两幅图像中的视差,获得该点的三维坐标值。该点的三维坐标值是相对于双目系统而言的,在某些应用中并不会带来任何问题,例如当测量空间中某两点的距离时。然而,当需要确定空间中某点相对于由空间中另一点为原点而建立的坐标系的坐标值时,就需要利用非常繁琐的坐标系转换——将双目系统坐标系转换到所需坐标系。这时可能的做法是测量双目系统坐标系,通过数学计算得出两者的转换公式。这就需要很测量双目系统坐标系相对于在所需坐标系中的原点坐标和各坐标轴的朝向等数据,这些往往很难精确测量,因此实际上这种坐标系转换往往很难做到足够精确。
技术实现要素:
基于上述现有技术存在的问题,本发明提出了一种基于双目立体视觉技术的空间坐标系标定系统和方法,利用双目立体视觉系统事先人体身高测量。
本发明的一种双目立体视觉的空间坐标系标定系统,该系统包括依序连接的待标定的双目立体视觉系统模块101、标定板102、滑轨模块103、特征点识别模块104、双目坐标计算模块105以及坐标系转换关系计算模块106;所述待标定的双目立体视觉系统模块由光轴互相平行的两个摄像头组成;所述滑轨模块由滑轨和支架组成,支架用来固定标定板,所述标定板在滑轨上移动;所述标定板采用黑白相间的棋盘格组成的平板;其中:
待标定的双目立体视觉系统模块101,用于获得左/右双目采集图像;
标定板102,用于对双目系统进行标定;
特征点识别模块104,用于在待标定的双目立体视觉系统模块101的左/右双目采集图像中识别出特征点;
双目坐标计算模块105,用于接收所述特征点识别模块103发送的特征点数据,并计算这些点在双目坐标系下的坐标值;
坐标系转换关系计算模块106,用于计算特征点在所求目标坐标系和双目系统坐标系两个坐标系的转换关系。
本发明的一种双目立体视觉的空间坐标系标定方法,该方法包括以下步骤:
步骤1、将标定板安装在滑轨上中,并于目标坐标系中将滑轨固定;
步骤2、将标定板移动到滑轨一端并固定;
步骤3、精确测量标定板中每个特征点相对于目标坐标系的坐标值;
步骤4、利用待标定的双目立体视觉系统模块的左/右摄像头采集图像;
步骤5、将标定板移动到滑轨另一端并固定;
步骤6、再次精确测量标定板中每个特征点相对于“目标坐标系”的坐标值;
步骤7、再次利用待标定的双目立体视觉系统模块的左/右摄像头采集图像;
步骤8、利用特征点识别模块识别标定板移动之前和移动之后双目立体视觉系统模块采集图像中的特征点;
步骤9、利用双目坐标计算模块,根据上述的标定特征点,计算标定板中每个特征点在标定板移动标定板移动之前和移动之后相对于“双目坐标系”的坐标值;
步骤10、利用坐标系转换关系计算模块,根据标定板中每个特征点,在标定板移动之前和移动之后相对于双目坐标系和目标坐标系的坐标值,计算出双目坐标系和目标坐标系这两个坐标系的转换关系。
与现有技术相比,本发明能够实现大大提高了简单性和便捷性、快速实用、具有更广泛的应用范围的实现双目立体视觉的空间坐标系标定的系统和方法;使得双目系统能够快速准确自动地计算其自身的双目系统坐标系到任何所需坐标系(目标坐标系)的转换。
附图说明
图1为本发明的双目立体视觉的空间坐标系标定系统结构示意图;
图2为本发明的双目立体视觉的空间坐标系标定方法整体流程示意图。
具体实施方式
下面结合附图对本发明作进一步详细描述。
如图1所示,为本发明的双目立体视觉的空间坐标系标定系统结构示意图,该系统包括:
待标定的双目立体视觉系统模块101,用来进行标定的双目立体视觉系统,由光轴互相平行的两个摄像头组成;
标定板102,进行坐标系标定的工具,由黑白相间的棋盘格组成;
滑轨模块103,由滑轨和支架组成,支架用来固定坐标系标定板,并能在滑轨上移动;
特征点识别模块104,用以在待标定的双目立体视觉系统模块中左/右双目采集的图像中识别特征点;
双目坐标计算模块105,用以接收特征点识别模块发送的特征点数据,并计算这些点在双目坐标系下的坐标值;
坐标系转换关系计算模块106,用以根据特征点实际坐标和双目坐标系下坐标计算两个坐标系的转换。所求目标坐标系(即双目系统在标定后将要测量的物体所在的坐标系)和双目系统坐标系(即双目系统中以两摄像头连线x轴,y轴垂直于x轴并位于竖直方向,z轴垂直于x轴和y轴所确定的坐标系)。
其中,待标定的双目立体视觉系统模块中的两个摄像头已经进行过单目校准和双目匹配,即此双目立体视觉系统可以轻易测试空间中某点相对于双目系统坐标系的坐标。并且所述待标定的双目立体视觉系统模块已经安装在特定位置将不再移动。
标定板是由黑白相间的棋盘格组成的平板,或者由对称或非对称的圆组成。其中棋盘格的尺寸,或者圆的尺寸以及每个圆的相对位置都已经精确测量了;例如正方形格子构成棋盘格校准板,横竖至少各包含三个以上格子。
滑轨模块带有精确测量距离的游标结构或者螺旋测距结构,能够精确测量滑轨上滑块的移动距离。
如图2所示,为本发明的双目立体视觉的空间坐标系标定方法整体流程图,该流程包括以下步骤:
步骤1、将标定板安装在滑轨上中,并于“目标坐标系”中将滑轨固定;
步骤2、将标定板移动到滑轨一端并固定;
步骤3、精确测量标定板中每个特征点相对于“目标坐标系”的坐标值;
步骤4、利用待标定的双目立体视觉系统模块的左/右摄像头采集图像;
步骤5、将标定板移动到滑轨另一端并固定;
步骤6、再次精确测量标定板中每个特征点相对于“目标坐标系”的坐标值;
步骤7、再次利用待标定的双目立体视觉系统模块的左/右摄像头采集图像;
步骤8、利用特征点识别模块识别标定板移动之前和移动之后双目立体视觉系统模块采集图像中的特征点;
步骤9、利用双目坐标计算模块,根据上述的标定特征点,计算标定板中每个特征点在标定板移动标定板移动之前和移动之后相对于“双目坐标系”的坐标值;
步骤10、利用坐标系转换关系计算模块,根据标定板中每个特征点,在标定板移动之前和移动之后相对于“双目坐标系”和“目标坐标系”的坐标值,计算出“双目坐标系”和“目标坐标系”这两个坐标系的转换关系;
步骤1的将标定板安装在滑轨上中,并于“目标坐标系”中将滑轨固定,其具体包括:
步骤11、标定板安装在所述滑轨模块中,使得标定板在滑轨上移动方向垂直于标定板所在平面;并将滑轨模块固定在待求坐标系中,使得待标定的双目立体视觉系统模块在滑轨模块的滑块前后移动时能完整拍摄标定板中的所有特征点;
步骤12、将滑轨模块固定在“目标坐标系”中,应该将滑轨模块摆放到合适的角度以利于标定板中各个特征点相对于“目标坐标系”的坐标的测量。
步骤8的利用特征点识别模块识别标定板移动之前和移动之后双目立体视觉系统模块采集图像中的特征点,其具体包括:
步骤81、标定板移动之前、之后,双目立体视觉系统模块的左/右两台摄像头各拍摄含有标定板的图像共四张,特征点识别模块在这四张图像上识别每个特征点并记录每个特征点在所在图像上的像素坐标。
步骤82、特征点在图像上识别每个特征点时,采用亚像素检测算法,即在识别的每个特征点的像素坐标基础上,通过反复迭代,得到精确到亚像素级别的特征点像素坐标值,以提高特征点坐标计算的准确性。
步骤9的利用双目坐标计算模块,根据上述的标定特征点,计算标定板中每个特征点在标定板移动标定板移动之前和移动之后相对于“双目坐标系”的坐标值,其具体为:
步骤91、双目坐标计算模块根据从标定板移动前后双目立体视觉系统模块的左/右摄像头采集的图像上识别出的各个特征点的像素坐标值,依据视差原理计算(出标定板移动之前和移动之后每个特征点相对于双目坐标系的坐标值,具体为:
其中Tx为双目摄像头中两摄像头距离,cx和c'x分别为双目摄像头中两摄像头光轴与成像平面交点在图像中的横坐标,f为摄像头焦距,d为视差,即特征点在双目系统中两个摄像头所成图像的横坐标之差;
步骤92、每个特征点相对于双目坐标系的坐标值的计算,可以在标定板移动前后,双目立体视觉系统模块的左/右摄像头同时采集多张图像形成多组左/右图像对,并且在这些图像对上识别特征点并计算其相对于双目坐标系的坐标值形成每个特征点的多组坐标值,通过对每个特征点的多组坐标值取平均,得到每个特征点的实际坐标值,以此减小误差。
步骤10的利用坐标系转换关系计算模块,根据标定板中每个特征点,在标定板移动之前和移动之后相对于“双目坐标系”和“目标坐标系”的坐标值,计算出“双目坐标系”和“目标坐标系”这两个坐标系的转换关系;其具体包括:
根据已经计算得到的标定板移动之前和之后其上的每个特征点相对于“双目坐标系”的坐标值、已经测量得到的标定板移动之前和之后其上的每个特征点相对于目标坐标系的坐标值,计算“双目坐标系”和“目标坐标系”的转换关系,计算的依据是不同坐标系之间的数学关系,具体为:
其中[X Y Z]T和[X' Y' Z']T分别为某特征点在两坐标系中的坐标。
采用上述的实现双目立体视觉的空间坐标系标定的系统和方法,可以简单方便地将双目系统对空间点的坐标的测量由相对于双目坐标系变换到相对于实际坐标系。有利于实现某些严重依赖于坐标测量,而不是距离测量的应用。并且这种方法精确性高,易操作。