CN115880361A - 适用于结构光三维重建系统标定的十字交叉角点检测方法 - Google Patents
适用于结构光三维重建系统标定的十字交叉角点检测方法 Download PDFInfo
- Publication number
- CN115880361A CN115880361A CN202211466295.2A CN202211466295A CN115880361A CN 115880361 A CN115880361 A CN 115880361A CN 202211466295 A CN202211466295 A CN 202211466295A CN 115880361 A CN115880361 A CN 115880361A
- Authority
- CN
- China
- Prior art keywords
- point
- points
- corner
- candidate
- pixel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
本发明公开了适用于结构光三维重建系统标定的十字交叉角点检测方法。所述方法包括以下步骤:通过拍摄获取方块标靶图像;通过角点初定位,初步定位出方块标靶图像中类似角点的位置;通过角点精确定位,剔除虚假角点的定位,完成方块标靶角点位置定位。本发明相比于OpenCV提供的findChessboardCorners()角点检测方法,鲁棒性大大提高,特别是针对方块标靶平面与相机成像平面之间夹角大于45°与方块标靶存在部分遮挡的情况,能够有效地提高结构光三维重建系统的标定的成功率、鲁棒性和效率。
Description
技术领域
本发明方法涉及图像处理、双目相机系统或者相机与投影仪系统标定技术领域,具体涉及适用于结构光三维重建系统标定的十字交叉角点检测方法。
背景技术
传统方块标靶角点检测方法中,目前普遍应用于工业界的方块标靶角点检测方法为OpenCV提供的findChessboardCorners()角点检测方法。该方法通过对方块标靶的纹理特征进行检测,主要检测出方块标靶的角点信息并进行定位,最终实现相机标定或成像系统参数的标定。
根据现有文献中的《Learning OpenCV 3_Computer vision in C++with theOpenCV library》、Automatic chessboard corner detection method以及基于Harris-张正友平面标定法的摄像机标定算法,针对结构光三维重建系统标定,当方块标靶平面与相机成像平面之间的相交夹角大于45°或者方块标靶存在部分遮挡的时候,OpenCV提供的findChessboardCorners()角点检测方法(Rufli M,Scaramuzza D,SiegwartR.Automatic detection of checkerboards on blurred and distorted images[C]//2008IEEE/RSJ International Conference on Intelligent Robots and Systems.IEEE,2008:3121-3126.)会经常出现检测失败的情况,导致结构光三维重建系统标定效率过低。
发明内容
针对结构光三维重建系统标定,当方块标靶平面与相机成像平面之间的相交夹角大于45°或者方块标靶存在部分遮挡的时候,对OpenCV提供的findChessboardCorners()角点检测方法检测方块标靶角点经常失败的问题进行了原因分析,本发明提出一种舍弃通过检测标靶中方块形状来检测角点的思路,只通过方块标靶中角点的几何特征来检测角点的方法。本发明有效解决了findChessboardCorners()在方块标靶平面与相机成像平面之间相交角度大于45°或方块标靶存在部分遮挡的时候,检测角点经常失败的问题,有效提高了结构光三维重建系统标定的成功率和鲁棒性。
本发明的目的至少通过如下技术方案之一实现。
适用于结构光三维重建系统标定的十字交叉角点检测方法,包括以下步骤:
S1、通过拍摄获取方块标靶图像;
S2、通过角点初定位,初步定位出方块标靶图像中类似角点的位置;
S3、通过角点精确定位,剔除虚假角点的定位,完成方块标靶角点位置定位。
进一步地,步骤S2包括以下步骤:
S2.1、对相机拍摄得到的方块标靶图像进行边缘提取,获得方块标靶图像的边缘结果;
S2.2、基于方块标靶图像的边缘结果,进行候选端点的检测,得到候选端点集合A;
S2.3、通过角点和边缘特征的定位算法,初步剔除候选端点集合A中的虚假端点,得到初始角点集合B。
进一步地,步骤S2.2中,基于方块标靶图像的边缘结果,进行候选端点的检测,得到候选端点集合A,具体如下:
根据方块标靶角点的几何特征,设置边缘像素的像素值为1,非边缘像素的像素值为0;首先定义像素八邻域的每个像素位置关系,将位于像素八邻域的中心像素点定义为p1,中心像素下方的像素定义为p2并且作为起点,顺时针方向围绕着中心像素的像素点分别定义为p3至p9。
构建‘近似十字结构’特征如下:
当像素八邻域中的p1为边缘像素,p3、p4与p5中至少有一个为边缘像素,p6至p9与p2为非边缘像素;
当像素点p1与p1的八邻域满足上述特征时,则认为p1为一个候选端点。
定义一个‘类十字结构’数学矩阵,如式1中的K1所示:
遍历步骤S2.1中得到的标靶边缘图像像素当方块标靶图像的边缘结果中的某个像素点及其八邻域与‘类十字结构’的数学矩阵点乘结果达到设定条件,即点乘结果的矩阵的对应位置的数值也满足“近似十字结构”特征时,将该像素点认为是一个候选端点,进而得到候选端点集合A。
但是,上述得到的候选端点集合A中很可能还包含着虚假的端点。虚假的端点及其邻域与“类十字结构”数学矩阵的点乘结果也会满足设定特征条件。它们的产生是由于图像噪声、像素分辨率、摆放角度和位置等因素造成了边缘扭曲,而产生的虚假边缘端点。
进一步地,步骤S2.3中,所述角点和边缘特征的定位算法是建立在正确的候选端点拥有方块边界线交叉的特征基础之上的;相比之下,虚假的端点处于方块的边界线上,无‘十字交叉’的特征;
因此基于方块标靶图像的角点是由两条互相垂直的直线相交而成的特征,定义一个13*13大小的边界扫描矩形窗口模板K2,用于判断‘十字交叉’的特征,边界扫描矩形窗口模板K2如式2所示。
其中,pi代表候选端点的位置,1所处的位置代表需要遍历的像素,0所处位置的像素不需要遍历;
遍历候选端点集合A中的所有候选端点,将边界扫描矩形窗口模板的中心点,分别与候选端点集合A中的每一个候选端点重合,进行候选端点附近区域边界的特征的识别;
其中,按照上下左右的顺序进行候选端点与边界扫描矩形窗口模板重合区域的四条边界的遍历,当在某个边界遍历时发现一个边缘点,即像素值为1的边缘像素点,则停止当前边界的遍历,将当前遍历的候选端点的总边界值加1,并且开始下一边界的遍历;完成四条边界的遍历后,最后将得到当前遍历的候选端点的总边界值结果记录下来;如果当前遍历的候选端点的总边界值结果为4,意味着当前遍历的候选端点附近存在着两条相交的直线,那么当前遍历的候选端点即为正确的候选端点;反之如果当前遍历的候选端点的总边界值结果小于4的话,则当前的候选端点为虚假的端点;
对候选端点集合A中的所有候选端点进行扫描,并且剔除虚假端点后进行集合的更新,即可得到初始角点集合B。
进行角点初定位操作后,所得到的初始角点集合B中,还存在着一个真实角点被两个或以上的初始角点包围着的可能性。也就是说,这些初始角点并不是虚假的角点,而是真实角点的近似点。因此,角点精确定位算法就需要在初始角点集合B中选取出最接近真实角点的位置的那个初始角点。
进一步地,步骤S3中,定义一个大小为7*7的‘十字瞄准响应值’矩阵K3,如式4所示:
通过‘十字瞄准响应值’矩阵与初始角点集合B中处于同一局部区域的一个或者多个初始角点进行点乘和非极大值抑制处理后,实现真实角点的精确定位。
进一步地,步骤S3包括以下步骤:
S3.1、遍历初始角点集合B中的每个初始角点,计算出每个初始角点与其它初始角点之间的欧式距离;若存在两个或多个初始角点之间的欧式距离小于设定的阈值,则认为欧式距离小于设定的阈值的两个或多个初始角点处于同一个理论角点的局部区域,都是真实角点的近似点,将这些处于同一个理论角点的局部区域的近似点进行标记;
S3.2、将得到的处于同一区域的近似点及近似点的邻域,分别与预定义的‘十字瞄准响应值’矩阵进行点乘操作,得到与近似点对应的响应矩阵;
S3.3、对经过步骤S3.2得到的响应矩阵进行求和,进而得到各个近似点的响应值;响应值越高,对应的近似点与真实角点的相似程度就越高;为此,保留当前局部区域内响应值最大的近似点作为最终正确的定位角点;
S3.4、返回步骤S3.1,直至遍历完初始角点集合B中所有的初始角点,得到方块标靶图像正确的角点集合C。
相比与现有技术,本发明的优点在于:
通过对应用于结构光三维重建系统参数标定方法的调研,发现目前应用于结构光三维重建系统标定中最常用的方法是检测标靶中方块形状来检测角点,进行参数的标定,该方法已经能够通过调用OpenCV的findChessboardCorners()函数实现。但是该方法在角点查找时,鲁棒性较差,特别是当方块标靶平面与相机成像平面之间相交夹角大于45°或者方块标靶存在部分遮挡的时候,使用findChessboardCorners()来进行角点查找会经常失败,这造成了结构光三维重建系统标定成功率、鲁棒性及效率过低的缺陷。而且在结构光三维重建系统标定的过程中,经常需要以较大角度(即方块标靶平面与相机成像平面之间存在一个较大的夹角)摆放方块标靶进行标定,以保证后期三维重构被测三维物体在大角度下的三维重构性能不会有显著下降。因此急需解决上述方块标靶平面与相机成像平面之间相交角度大于45°时角点检测经常失败的问题,提高结构光三维重建系统标定的性能和效率。
本发明摈弃了OpenCV提供的findChessboardCorners()角点检测方法通过识别方块标靶的方块来识别角点的基本思想。所提出的“十字交叉瞄准法”思路是:采用先对方块标靶图像进行边缘提取,然后采用“类十字结构”数学矩阵对方块标靶图像的边缘结果进行候选端点的检测和筛选,获得候选角点集合A;随后,使用一个13*13的“边界扫描矩形窗口模板”来剔除候选端点集合A中的虚假端点,获取第一次更新的初始角点集合B。然后,使用“十字瞄准响应值”矩阵与处于同一个局部区域的多个初始角点进行点乘与求和操作,得到各个近似角点的响应值,并且只保留处于同一个局部区域内的响应值最大的近似角点,即进行非极大值抑制操作。对初始角点集合B中的所有初始角点均进行响应值求取以及非极大值抑制后,即可获得所有正确的角点集合C。利用集合C中的角点信息,将能够实现结构光三维重构系统的内、外参数的准确标定。
相比于OpenCV提供的findChessboardCorners()角点检测方法,所提出的“十字交叉角点检测方法”是基于方块标靶角点的“十字交叉”的几何特征,因此当方块标靶平面与相机成像平面之间夹角大于45°的时候,在相机成像捕获的方块标靶图片中,角点的局部区域变化小,受大角度摆放的影响也比较小。因此可以避免由于方块标靶平面与相机成像平面之间夹角大于45°时,方块标靶的方块变形较大而带来的角点检测失败的影响。
同时也是因为采取了方块标靶角点的局部几何特征的原因,当方块标靶的部分方块被遮挡的时候,只要角点的局部特征没有被遮挡住,该方法均可以检测出角点。而OpenCV提供的findChessboardCorners()的基本思路是检测方块标靶的方块,当方块标靶的方块存在部分遮挡的时候,则会导致无法检测出方块中的角点。
因此,本发明相比于OpenCV提供的findChessboardCorners()角点检测方法,鲁棒性大大提高,特别是针对方块标靶平面与相机成像平面之间夹角大于45°与方块标靶存在部分遮挡的情况,能够有效地提高结构光三维重建系统的标定的成功率、鲁棒性和效率。
附图说明
图1为本发明实施例1中的棋盘边缘结果示意图;
图2为本发明实施例1中的棋盘角点几何特征示意图,其中,a图为棋盘角点完美十字结构示意图,b、c、d图分别为棋盘角点经过边缘提取后因为失真衍生出来的几种几何特征示意图;
图3为本发明实施例1中的像素八邻域示例图;
图4为本发明实施例1中的候选端点的几何特征示意图,其中,a图为正确候选端点示意图,b图为错误候选端点示意图;
图5为本发明实施例1中的正确候选端点与虚假端点的总边界值数量示意图;
图6为本发明实施例1中的处于同一个理论棋盘角点局部区域的初始角点示意图;
图7为本发明实施例1中的初始角点相应响应值示意图;
图8为本发明实施例中适用于结构光三维重建系统标定的十字交叉角点检测方法的步骤流程图;
图9为本发明实施例2中的正确候选端点与虚假端点的总边界值数量示意图;
图10为本发明实施例2中的初始角点相应响应值示意图;
图11为本发明实施例3中正确候选端点与虚假端点的总边界值数量示意图;
图12为本发明实施例3中初始角点相应响应值示意图。
具体实施方式
此方法着重解决了OpenCV提供的findChessboardCorners()角点检测方法应用于结构光三维重建系统标定,当方块标靶平面与相机成像平面之间夹角大于45°或方块标靶存在部分遮挡的时候,角点经常检测失败导致结构光三维重建系统标定效率过低的问题。该方法实现的设计构思是摈弃findChessboardCorners()通过检测纹理特征来检测角点的基本思想,改为通过检测方块标靶角点的几何特征来检测角点,该思路使得该方法能够在方块标靶平面与相机成像平面之间夹角大于45°或方块标靶存在部分遮挡的时候,均能检测出角点,提高了结构光三维重建系统标定的效率。
实施例1:
本实施例中,将以方块标靶中典型的棋盘标定板为例,且棋盘标定板平面与相机成像平面相交夹角为20°进行展开说明,适用于结构光三维重建系统标定的十字交叉角点检测方法,如图8所示,包括以下步骤:
S1、通过拍摄获取棋盘标定板图像;
S2、通过角点初定位,初步定位出棋盘标定板图像中类似角点的位置,包括以下步骤:
S2.1、对相机拍摄得到的棋盘标定板图像进行边缘提取,获得棋盘标定板图像的边缘结果;
这是由于本发明的基本思想只需要使用棋盘角点的几何特征来检测角点,因此除了棋盘角点的几何信息外,棋盘标定板图像的其它信息均是冗余信息。对棋盘标定板图像进行边缘提取后,只会保留下棋盘标定板图像的边缘结果的几何信息,棋盘标定板的方格内的重复信息均会被剔除,在后续的检测中能够避免冗余信息对角点检测带来额外的影响,也能够减少后续的运算数据量,提升方法的运算速度。
在对相机拍摄得到的棋盘标定板图像进行边缘提取后,可以获得棋盘标定板图像的边缘结果。棋盘标定板图像经过边缘提取后的边缘结果如图1所示。
S2.2、基于棋盘标定板图像的边缘结果,进行候选端点的检测,得到候选端点集合A,具体如下:
根据方块标靶角点的几何特征,定义了一个‘类十字结构’数学矩阵;
本实施例中,由于相机分辨率、灰度值随机变化与棋盘图像边缘结果不够锐利的原因,提取出来的棋盘角点的几何特征会存在一定的失真,衍生出多种不同的几何特征结构。理论上如果不存在上述的影响,一个棋盘角点应该处于一个如图2中的a图所示的完美的局部十字结构之中。如图1的实际棋盘边缘结果所示,对实际棋盘图像的边缘结果中的棋盘角点的几何特征进行统计分析,可以得知棋盘角点经过边缘提取后因为失真衍生出来的几种几何特征如图2中的b图、c图与d图所示。图2中的b图、c图与d图是棋盘角点经过边缘提取后的一些经典几何特征,其均有一个共同的几何结构,因此可以在棋盘图像的边缘结果中对该几何结构进行检索来检测棋盘角点。该方法中将该种几何结构称为‘近似十字结构’特征。
本实施例中,将边缘像素用白色表示,像素值为1,非边缘像素使用黑色表示,像素值为0;如图3所示,当p1为边缘像素,p3、p4与p5中至少有一个为边缘像素,p6至p9与p2为非边缘像素,当像素点p1与p1的八邻域满足上述特征时,该方法认为p1为一个候选端点,上述特征即为‘近似十字结构’特征;因此该方法定义了一个‘类十字结构’数学矩阵,如式1中的K1所示:
遍历步骤S2.1中得到的标靶边缘图像像素,当方块标靶图像的边缘结果中的某个像素点及其八邻域与‘类十字结构’的数学矩阵点乘结果达到设定条件,即点乘结果的矩阵的对应位置的数值也满足“近似十字结构”特征时,即本实施例中,将K1与棋盘图像的边缘结果中的所有像素点及该像素点的八邻域进行点乘操作,当点乘的结果矩阵满足如图3所示的p1值为1,p3、p4与p5中至少有一个值为1,p6至p9与p2值为0的时候,即认为当前像素及其八邻域像素满足“近似十字结构”特征,将该像素点认为是一个候选端点;
本实施例中,以棋盘标定板图像左上角第一个像素为坐标系原点建立坐标系,构建一个候选端点集合A。
但是,上述得到的候选端点集合A中很可能还包含着虚假的端点。正确的候选端点是满足‘近似十字结构’特征且位置处于棋盘角点局部区域的,虚假的端点是满足‘近似十字结构’特征但是位置不处于棋盘角点局部区域的;如图4中的a图所示,黑色圈标记的像素点1满足像素点1为边缘像素,其对应的八邻域像素点3,4,5中至少有一个边缘像素,像素点2、6至9是非边缘像素,满足‘近似十字结构’特征,同时处在棋盘角点局部区域附近,是一个正确的候选端点。而如图4中的b图所示,黑色圈标记的像素虽然也满足‘近似十字结构’特征,但是其位置并不处于棋盘角点局部区域附近,因此是一个错误的端点,需要剔除。
S2.3、通过角点和边缘特征的定位算法,初步剔除候选端点集合A中的虚假端点,得到初始角点集合B;
所述角点和边缘特征的定位算法是建立在正确的候选端点拥有方块边界线交叉的特征基础之上的;相比之下,虚假的端点处于方块的边界线上,无‘十字交叉’的特征;
一个正确的候选端点应该处于棋盘角点的局部区域附近,而虚假的端点不处于棋盘角点的局部区域附近,而棋盘角点的最明显特征是其由两条正交直线相交形成,因此可以基于此特征进行正确候选端点与虚假端点之间的区分。
因此基于方块标靶图像的角点是由两条互相垂直的直线相交而成的特征,定义一个13*13大小的边界扫描矩形窗口模板K2,用于判断‘十字交叉’的特征,模板K2如式2所示。
该模板中,pi代表候选端点的位置,1所处的位置代表需要遍历的像素,0所处位置的像素不需要遍历。
遍历候选端点集合A中的所有候选端点,将边界扫描矩形窗口模板K2中的pi,分别与候选端点集合A中的每一个候选端点重合,进行候选端点附近区域边界的特征的识别;
当位置重合之后,需要遍历与边界扫描矩形窗口模板K2中值为1重合的像素点,遍历的顺序依次为上边界、下边界、左边界与右边界,当在某个边界遍历时发现一个边缘点,即像素值为1的边缘像素点,则停止当前边界的遍历,将当前遍历的候选端点的总边界值加1,并且开始下一边界的遍历;完成四条边界的遍历后,最后将得到当前遍历的候选端点的总边界值结果记录下来;如果当前遍历的候选端点的总边界值结果为4,意味着当前遍历的候选端点附近存在着两条相交的直线,认为当前候选端点处于棋盘角点的局部区域附近,那么当前遍历的候选端点即为正确的候选端点;反之如果当前遍历的候选端点的总边界值结果小于4的话,则认为当前候选端点不处于棋盘角点的局部区域附近,当前的候选端点为虚假的端点;
如图4中的a图中的黑色圈标记的候选端点经过上述步骤后得到的总边界值数量为4,可以认为是一个正确的候选端点,图4中b图中的黑色圈标记的候选端点经过上述步骤后得到的总边界值数为2,认为是一个虚假端点。
对候选端点集合A中的所有候选端点进行扫描,并且剔除虚假端点后进行集合的更新,即可得到初始角点集合B。
如图5所示,图5展示了一张棋盘图像的候选端点集合A在经过虚假端点检测与剔除后的结果,白色圈标记的是正确的候选端点,处于棋盘角点的局部区域附近,白色×标记的点是虚假端点,不处于棋盘角点的局部区域附近,其中白色圈与白色×右下角显示的为相应候选端点的总边界值数量。
进行角点初定位操作后,所得到的初始角点集合B中,还存在着一个真实角点被两个或以上的初始角点包围着的可能性。也就是说,这些初始角点并不是虚假的角点,而是真实角点的近似点。因此,角点精确定位算法就需要在初始角点集合B中选取出最接近真实角点的位置的那个初始角点。
如图6所示,黑色圈标记的像素点A与B都是初始角点集合B的初始角点,它们均属于同一个理论棋盘角点的近似点,区别只在于它们与理论棋盘角点的相似程度不一样。因此角点精确定位操作需要计算这些属于同一个理论棋盘角点的近似点与该理论棋盘角点的相似程度,保留相似程度最大的那个近似角点。
S3、通过角点精确定位,提出虚假角点的定位,完成方块标靶角点位置定位;
定义一个大小为7*7的‘十字瞄准响应值’矩阵,通过‘十字瞄准响应值’矩阵与初始角点集合B中处于同一局部区域的一个或者多个初始角点进行点乘和非极大值抑制处理后,实现真实角点的精确定位,包括以下步骤:
S3.1、遍历初始角点集合B中的每个初始角点,按照式3计算出每个初始角点与其它初始角点之间的欧式距离:
|(xi-xj)+(yi-yj)|<threshold 式3
在式3中,xi,xj,yi与yj分别代表的是两个不同的初始角点的横坐标与纵坐标,i与j为对应初始角点的下标,threshold为距离阈值。
需要根据方块标靶在相机成像的图像中,每个方块的边界长度来设置初始角点之间的欧式距离阈值,因为结构光三维重建系统的装置基本固定,使用的物体摆放距离也大概固定,因此该阈值可以设置为一个适合该结构光三维重建系统的值,本实施例中,阈值设定为15,说明方块标靶在相机成像的图像中每个方块的边界长度约为15个像素。因为真实角点是处于四个方块相接之处,以真实角点为中心,边长为15的一个正方形刚好可以覆盖住该真实角点相接四个方块的各1/4部分,以此类推,可以覆盖所有初始角点确保不遗漏;
若存在两个或多个初始角点之间的欧式距离小于设定的阈值,则认为欧式距离小于设定的阈值的两个或多个初始角点处于同一个理论角点的局部区域,都是真实角点的近似点,将这些处于同一个理论角点的局部区域的近似点进行标记;
S3.2、将得到的处于同一区域的近似点及近似点的邻域,即对处于同一个局部区域的初始角点获取以其自身为中心的一个7*7的ROI(pi)图像区域,pi代表的是第i个初始角点,然后将这些ROI(pi)区域分别与预定义的‘十字瞄准响应值’矩阵K3进行重合按照式5进行的点乘操作,得到与近似点对应的响应矩阵R,具体如下:
R=K2.*ROI(pi) 式5
S3.3、根据式6对对经过步骤S3.2得到的响应矩阵R进行求和,进而得到各个近似点的响应值;响应值越高,对应的近似点与真实角点的相似程度就越高具体如下:
reponse=∑i∑jR(i,j) 式6
式6中,i与j代表的是响应矩阵R的第i行,第j列元素;
为此,保留当前局部区域内响应值最大的近似点作为最终正确的定位角点;
S3.4、返回步骤S3.1,直至遍历完初始角点集合B中所有的初始角点,得到方块标靶图像正确的角点集合C。
如图7所示,图7展示了一张棋盘图像的初始角点集合B在经过角点精确定位操作之后的结果。图7中白色矩形框框选部分出现了两个初始角点位于同一局部区域,这两个初始角点是同一个理论棋盘角点的近似点,在图7左上角的放大图中可以得知,一个初始角点响应值为4,另一个初始角点响应值为5,因此认为响应值为5的初始角点为真正的角点,剔除响应值为4的初始角点。
综上所述,在经过上述角点初定位操作与角点精确定位操作之后,即可得到棋盘图像的真正棋盘角点集合C。
实施例2:
本实施例中,将以方块标靶中典型的棋盘标定板为例,且条件为棋盘标定板平面与相机成像平面相交夹角为48°。以该条件下的棋盘标定板为例给出经过步骤S2与步骤S3的结果。棋盘标定板平面与相机成像平面相交夹角为48°的时候,该棋盘标定板经过步骤S2后的结果如图9所示。图9中,与实施例1一致,×标记代表的是虚假端点,白色圈标记代表的是正确的候选端点,白色圈与白色×右下角显示的为相应候选端点的总边界值数量。经过步骤S3之后的结果如图10所示。图10中展示了初始角点集合B在经过角点精确定位操作之后的结果,其中白色矩形框框选部分出现了两个初始角点位于同一局部区域,这两个初始角点是同一个理论棋盘角点的近似点,在图10右上角的放大图中可以得知,一个初始角点响应值为1,另一个初始角点响应值为4,因此认为响应值为4的初始角点为真正的角点,剔除响应值为1的初始角点,最后即可得到真正的棋盘角点集合C。
实施例3:
本实施例中,将以方块标靶中典型的棋盘标定板为例,且条件为棋盘标定板平面与相机成像平面相交夹角为20°,其中棋盘的上边界被部分遮挡。以该条件下的棋盘标定板为例给出经过步骤S2与步骤S3的结果。棋盘标定板平面与相机成像平面相交夹角为20°的时候,该棋盘标定板经过步骤S2后的结果如图11所示。图11中,与实施例1一致,×标记代表的是虚假端点,白色圈标记代表的是正确的候选端点,白色圈与白色×右下角显示的为相应候选端点的总边界值数量。经过步骤S3之后的结果如图12所示。图12中展示了初始角点集合B在经过角点精确定位操作之后的结果,其中白色矩形框框选部分出现了两个初始角点位于同一局部区域,这两个初始角点是同一个理论棋盘角点的近似点,在图12右上角的放大图中可以得知,一个初始角点响应值为1,另一个初始角点响应值为4,因此认为响应值为4的初始角点为真正的角点,剔除响应值为1的初始角点,最后即可得到真正的棋盘角点集合C。
以上公开的本申请优选实施例只是用于帮助理解本发明及核心思想。对于本领域的一般技术人员,依据本发明的思想,在具体应用场景和实施操作上均会有改变之处,本说明书不应理解对本发明的限制。本发明仅受权利要求书及其全部范围和等效物的限制。
Claims (10)
1.适用于结构光三维重建系统标定的十字交叉角点检测方法,其特征在于,包括以下步骤:
S1、通过拍摄获取方块标靶图像;
S2、通过角点初定位,初步定位出方块标靶图像中类似角点的位置;
S3、通过角点精确定位,剔除虚假角点的定位,完成方块标靶角点位置定位。
2.根据权利要求1所述的适用于结构光三维重建系统标定的十字交叉角点检测方法,其特征在于,步骤S2包括以下步骤:
S2.1、对相机拍摄得到的方块标靶图像进行边缘提取,获得方块标靶图像的边缘结果;
S2.2、基于方块标靶图像的边缘结果,进行候选端点的检测,得到候选端点集合A;
S2.3、通过角点和边缘特征的定位算法,初步剔除候选端点集合A中的虚假端点,得到初始角点集合B。
3.根据权利要求2所述的适用于结构光三维重建系统标定的十字交叉角点检测方法,其特征在于,步骤S2.2中,根据方块标靶角点的几何特征,设置边缘像素的像素值为1,非边缘像素的像素值为0;首先定义像素八邻域的每个像素位置关系,将位于像素八邻域的中心像素点定义为p1,中心像素下方的像素定义为p2并且作为起点,顺时针方向围绕着中心像素的像素点分别定义为p3至p9。
4.根据权利要求3所述的适用于结构光三维重建系统标定的十字交叉角点检测方法,其特征在于,构建‘近似十字结构’特征如下:
当像素八邻域中的p1为边缘像素,p3、p4与p5中至少有一个为边缘像素,p6至p9与p2为非边缘像素;
当像素点p1与p1的八邻域满足上述特征时,则认为p1为一个候选端点。
7.根据权利要求6所述的适用于结构光三维重建系统标定的十字交叉角点检测方法,其特征在于,遍历候选端点集合A中的所有候选端点,将边界扫描矩形窗口模板的中心点,分别与候选端点集合A中的每一个候选端点重合,进行候选端点附近区域边界的特征的识别;
其中,按照上下左右的顺序进行候选端点与边界扫描矩形窗口模板重合区域的四条边界的遍历,当在某个边界遍历时发现一个边缘点,即像素值为1的边缘像素点,则停止当前边界的遍历,将当前遍历的候选端点的总边界值加1,并且开始下一边界的遍历;完成四条边界的遍历后,最后将得到当前遍历的候选端点的总边界值结果记录下来;如果当前遍历的候选端点的总边界值结果为4,意味着当前遍历的候选端点附近存在着两条相交的直线,那么当前遍历的候选端点即为正确的候选端点;反之如果当前遍历的候选端点的总边界值结果小于4的话,则当前的候选端点为虚假的端点;
对候选端点集合A中的所有候选端点进行扫描,并且剔除虚假端点后进行集合的更新,即可得到初始角点集合B。
9.根据权利要求8所述的适用于结构光三维重建系统标定的十字交叉角点检测方法,其特征在于,通过‘十字瞄准响应值’矩阵与初始角点集合B中处于同一局部区域的一个或者多个初始角点进行点乘和非极大值抑制处理后,实现真实角点的精确定位。
10.根据权利要求1~9任一项所述的适用于结构光三维重建系统标定的十字交叉角点检测方法,其特征在于,步骤S3包括以下步骤:
S3.1、遍历初始角点集合B中的每个初始角点,计算出每个初始角点与其它初始角点之间的欧式距离;若存在两个或多个初始角点之间的欧式距离小于设定的阈值,则认为欧式距离小于设定的阈值的两个或多个初始角点处于同一个理论角点的局部区域,都是真实角点的近似点,将这些处于同一个理论角点的局部区域的近似点进行标记;
S3.2、将得到的处于同一区域的近似点及近似点的邻域,分别与预定义的‘十字瞄准响应值’矩阵进行点乘操作,得到与近似点对应的响应矩阵;
S3.3、对经过步骤S3.2得到的响应矩阵进行求和,进而得到各个近似点的响应值;响应值越高,对应的近似点与真实角点的相似程度就越高;为此,保留当前局部区域内响应值最大的近似点作为最终正确的定位角点;
S3.4、返回步骤S3.1,直至遍历完初始角点集合B中所有的初始角点,得到方块标靶图像正确的角点集合C。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211466295.2A CN115880361A (zh) | 2022-11-22 | 2022-11-22 | 适用于结构光三维重建系统标定的十字交叉角点检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211466295.2A CN115880361A (zh) | 2022-11-22 | 2022-11-22 | 适用于结构光三维重建系统标定的十字交叉角点检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115880361A true CN115880361A (zh) | 2023-03-31 |
Family
ID=85760519
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211466295.2A Pending CN115880361A (zh) | 2022-11-22 | 2022-11-22 | 适用于结构光三维重建系统标定的十字交叉角点检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115880361A (zh) |
-
2022
- 2022-11-22 CN CN202211466295.2A patent/CN115880361A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108369650B (zh) | 标识校准图案的可能特征点的方法 | |
JP3387499B2 (ja) | 輪郭線分の局所領域における方位決定方法および線分と角の決定方法 | |
CN109360203B (zh) | 图像配准方法、图像配准装置及存储介质 | |
CN110689579A (zh) | 基于合作目标的快速单目视觉位姿测量方法及测量系统 | |
CN112132907B (zh) | 一种相机标定方法、装置、电子设备及存储介质 | |
EP1031812A2 (en) | Measurement apparatus | |
CN106846412B (zh) | 一种棋盘格角点检测方法及装置 | |
CN110738273B (zh) | 图像特征点的匹配方法、装置、设备及存储介质 | |
CN112614188B (zh) | 一种基于交比不变性的点阵式标定板及其识别方法 | |
CN108074237B (zh) | 图像清晰度检测方法、装置、存储介质及电子设备 | |
US6873712B2 (en) | Method for identifying an object image | |
CN110569845A (zh) | 一种试卷图像的校正方法及相关装置 | |
CN115205286B (zh) | 爬塔机器人机械臂螺栓识别与定位方法、存储介质、终端 | |
CN114998448A (zh) | 一种多约束双目鱼眼相机标定与空间点定位的方法 | |
CN107680035B (zh) | 一种参数标定方法和装置、服务器及可读存储介质 | |
CN116625239A (zh) | 一种基于图像处理的台阶孔检测方法、装置及系统 | |
CN115880361A (zh) | 适用于结构光三维重建系统标定的十字交叉角点检测方法 | |
CN116051652A (zh) | 一种参数标定方法及电子设备、存储介质 | |
CN113128499B (zh) | 视觉成像设备的震动测试方法、计算机设备及存储介质 | |
US20030156748A1 (en) | Adaptive threshold determination for ball grid array component modeling | |
CN115187769A (zh) | 一种定位方法及装置 | |
CN109255754B (zh) | 一种大场景多相机图像拼接与真实展现的方法和系统 | |
CN109242910B (zh) | 一种基于任意已知平面形状的单目相机自标定方法 | |
JP2003317033A (ja) | 画像処理におけるアフィン変換係数算出方法および画像処理装置 | |
CN110310239A (zh) | 一种基于特性值拟合消除光照影响的图像处理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |