一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

标定板的检测方法、装置、计算机设备和存储介质与流程

2022-08-10 14:32:19 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,特别是涉及一种标定板的检测方法、装置、计算机设备和存储介质。


背景技术:

2.随着计算机技术的发展,出现了标定板检测技术,目前基于相机的视觉系统在工业制造领域发挥着越来越重要的角色。在目标检测、三维重构等任务中,检测目标与相机的位姿关系计算是重要的一个环节,位姿计算都必须相机先经过了标定。
3.目前标定板的种类有很多种,有棋盘格、圆点、六边形圆点、aruco(二进制形式的二维码的方形区域编码)、charuco(棋盘格与aruco的结合),对于现有的标定板,角点检测的鲁棒性以及精度的要求都较高,因此在复杂环境中使用时体现出抗干扰性不高,容易出现标定板畸变的情况,导致标定板检测效率低下。


技术实现要素:

4.基于此,有必要针对上述技术问题,提供一种能够提高标定板检测效率的标定板的检测方法、装置、计算机设备和存储介质。
5.第一方面,本技术提供了一种标定板的检测方法。所述方法包括:将待检测标定板图像输入至语义分割模型,得到所述待检测标定板对应的各个已分割子图像;基于各个所述已分割子图像进行组合,得到各个分割后组合图像,取面积值满足预设条件的所述分割后组合图像作为最大面积闭合轮廓;对所述最大面积闭合轮廓进行多边形拟合,得到已拟合多边形,并根据所述已拟合多边形确定至少一个所述已拟合多边形对应的顶点二维图像坐标以及顶点二维物理坐标;基于所述顶点二维图像坐标以及所述顶点二维物理坐标进行单应矩阵求取,得到所述顶点二维图像坐标以及所述顶点二维物理坐标对应的内角顶点的二维图像坐标;基于所述内角顶点的二维图像坐标以及内角顶点的二维物理坐标进行所述单应矩阵求取,得到所述标定板中的所有棋盘格角点的二维图像坐标;根据所有所述棋盘格角点的二维图像坐标得到所有所述棋盘格角点的二维图像坐标对应的角点像素坐标。
6.在其中一个实施例中,所述基于所述顶点二维图像坐标以及所述顶点二维物理坐标进行单应矩阵求取,得到所述顶点二维图像坐标以及所述顶点二维物理坐标对应的内角顶点的二维图像坐标,包括:基于所述顶点二维图像坐标以及所述顶点二维物理坐标进行单映射变换矩阵计算,得到第一单应矩阵;对所述第一单应矩阵求逆矩阵后结合所述顶点二维图像坐标以及所述顶点二维物理坐标对应内角顶点的二维物理坐标进行归一化计算,得到所述顶点二维图像坐标以及所述顶点二维物理坐标对应的内角顶点的二维图像坐标。
7.在其中一个实施例中,所述对所述第一单应矩阵求逆矩阵后结合所述顶点二维图像坐标以及所述顶点二维物理坐标对应内角顶点的二维物理坐标进行归一化计算,得到所述顶点二维图像坐标以及所述顶点二维物理坐标对应的内角顶点的二维图像坐标步骤之后,还包括:基于所述内角顶点的二维图像坐标进行像素坐标求取,得到内角顶点的二维图
像坐标对应的角点像素坐标。
8.在其中一个实施例中,所述基于所述内角顶点的二维图像坐标以及内角顶点的二维物理坐标进行所述单应矩阵求取,得到所述标定板中的所有棋盘格角点的二维图像坐标,包括:基于所述内角顶点的二维图像坐标以及内角顶点的二维物理坐标进行单映射变换矩阵计算,得到第二单应矩阵;对所述第二单应矩阵求逆矩阵后结合所述标定板中的所有棋盘格角点的二维物理坐标进行归一化计算,得到所述标定板中的所有棋盘格角点的二维图像坐标。
9.在其中一个实施例中,所述根据所述已拟合多边形确定至少一个所述已拟合多边形对应的顶点二维图像坐标以及顶点二维物理坐标,包括:基于所述已拟合多边形进行线段简化,得到所述已拟合多边形对应的线段简化后已拟合多边形;使用凸包检测算法对所述线段简化后已拟合多边形进行判断;若所述线段简化后已拟合多边形为凸多边形,则基于预设的最大面积阈值以及所述凸多边形对应的顶点数目,确定至少一个所述已拟合多边形对应的顶点二维图像坐标以及顶点二维物理坐标。
10.在其中一个实施例中,所述方法还包括:获取训练用标定板图像,所述训练用标定板图像用以训练所述语义分割模型;对所述训练用标定板图像进行数据增强,得到已增强训练用标定板图像;将所述已增强训练用标定板图像调整至预设的图像采样尺寸后输入至未训练语义分割模型,得到所述已训练语义分割模型。
11.在其中一个实施例中,所述对所述训练用标定板图像进行数据增强,得到已增强训练用标定板图像,包括:将所述训练用标定板图像进行随机旋转、水平方向翻转以及竖直方向翻转,得到初步增强图像,所述随机旋转所对应的角度为负30度至30度之间;将所述初步增强图像进行亮度调整,得到所述已增强训练用标定板图像。
12.第二方面,本技术还提供了一种标定板的检测装置。所述装置包括:已分割子图像得到模块,用于将待检测标定板图像输入至语义分割模型,得到所述待检测标定板对应的各个已分割子图像;最大面积闭合轮廓得到模块,用于基于各个所述已分割子图像进行组合,得到各个分割后组合图像,取面积值满足预设条件的所述分割后组合图像作为最大面积闭合轮廓;顶点二维坐标确定模块,用于对所述最大面积闭合轮廓进行多边形拟合,得到已拟合多边形,并根据所述已拟合多边形确定至少一个所述已拟合多边形对应的顶点二维图像坐标以及顶点二维物理坐标;内角顶点的二维图像坐标得到模块,用于基于所述顶点二维图像坐标以及所述顶点二维物理坐标进行单应矩阵求取,得到所述顶点二维图像坐标以及所述顶点二维物理坐标对应的内角顶点的二维图像坐标;棋盘格角点的二维图像坐标得到模块,用于基于所述内角顶点的二维图像坐标以及内角顶点的二维物理坐标进行所述单应矩阵求取,得到所述标定板中的所有棋盘格角点的二维图像坐标;棋盘格角点像素坐标模块,用于根据所有所述棋盘格角点的二维图像坐标得到所有所述棋盘格角点的二维图像坐标对应的角点像素坐标。
13.在其中一个实施例中,内角顶点的二维图像坐标得到模块,用于基于所述顶点二维图像坐标以及所述顶点二维物理坐标进行单映射变换矩阵计算,得到第一单应矩阵;对所述第一单应矩阵求逆矩阵后结合所述顶点二维图像坐标以及所述顶点二维物理坐标对应内角顶点的二维物理坐标进行归一化计算,得到所述顶点二维图像坐标以及所述顶点二维物理坐标对应的内角顶点的二维图像坐标。
14.在其中一个实施例中,内角顶点的二维图像坐标得到模块,用于基于所述内角顶点的二维图像坐标进行像素坐标求取,得到内角顶点的二维图像坐标对应的角点像素坐标。
15.在其中一个实施例中,棋盘格角点的二维图像坐标得到模块,用于基于所述内角顶点的二维图像坐标以及内角顶点的二维物理坐标进行单映射变换矩阵计算,得到第二单应矩阵;对所述第二单应矩阵求逆矩阵后结合所述标定板中的所有棋盘格角点的二维物理坐标进行归一化计算,得到所述标定板中的所有棋盘格角点的二维图像坐标。
16.在其中一个实施例中,顶点二维坐标确定模块,用于基于所述已拟合多边形进行线段简化,得到所述已拟合多边形对应的线段简化后已拟合多边形;使用凸包检测算法对所述线段简化后已拟合多边形进行判断;若所述线段简化后已拟合多边形为凸多边形,则基于预设的最大面积阈值以及所述凸多边形对应的顶点数目,确定至少一个所述已拟合多边形对应的顶点二维图像坐标以及顶点二维物理坐标。
17.在其中一个实施例中,语义分割模型训练模块,用于获取训练用标定板图像,所述训练用标定板图像用以训练所述语义分割模型;对所述训练用标定板图像进行数据增强,得到已增强训练用标定板图像;将所述已增强训练用标定板图像调整至预设的图像采样尺寸后输入至未训练语义分割模型,得到所述已训练语义分割模型。
18.在其中一个实施例中,语义分割模型训练模块,用于将所述训练用标定板图像进行随机旋转、水平方向翻转以及竖直方向翻转,得到初步增强图像,所述随机旋转所对应的角度为负30度至30度之间;将所述初步增强图像进行亮度调整,得到所述已增强训练用标定板图像。
19.第三方面,本技术还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:将待检测标定板图像输入至语义分割模型,得到所述待检测标定板对应的各个已分割子图像;基于各个所述已分割子图像进行组合,得到各个分割后组合图像,取面积值满足预设条件的所述分割后组合图像作为最大面积闭合轮廓;对所述最大面积闭合轮廓进行多边形拟合,得到已拟合多边形,并根据所述已拟合多边形确定至少一个所述已拟合多边形对应的顶点二维图像坐标以及顶点二维物理坐标;基于所述顶点二维图像坐标以及所述顶点二维物理坐标进行单应矩阵求取,得到所述顶点二维图像坐标以及所述顶点二维物理坐标对应的内角顶点的二维图像坐标;基于所述内角顶点的二维图像坐标以及内角顶点的二维物理坐标进行所述单应矩阵求取,得到所述标定板中的所有棋盘格角点的二维图像坐标;根据所有所述棋盘格角点的二维图像坐标得到所有所述棋盘格角点的二维图像坐标对应的角点像素坐标。
20.第四方面,本技术还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:将待检测标定板图像输入至语义分割模型,得到所述待检测标定板对应的各个已分割子图像;基于各个所述已分割子图像进行组合,得到各个分割后组合图像,取面积值满足预设条件的所述分割后组合图像作为最大面积闭合轮廓;对所述最大面积闭合轮廓进行多边形拟合,得到已拟合多边形,并根据所述已拟合多边形确定至少一个所述已拟合多边形对应的顶点二维图像坐标以及顶点二维物理坐标;基于所述顶点二维图像坐标以及所述顶点二维物理坐标进行
单应矩阵求取,得到所述顶点二维图像坐标以及所述顶点二维物理坐标对应的内角顶点的二维图像坐标;基于所述内角顶点的二维图像坐标以及内角顶点的二维物理坐标进行所述单应矩阵求取,得到所述标定板中的所有棋盘格角点的二维图像坐标;根据所有所述棋盘格角点的二维图像坐标得到所有所述棋盘格角点的二维图像坐标对应的角点像素坐标。
21.上述标定板的检测方法、装置、计算机设备和存储介质和,通过将待检测标定板图像输入至语义分割模型,得到待检测标定板对应的各个已分割子图像;基于各个已分割子图像进行组合,得到各个分割后组合图像,取面积值满足预设条件的分割后组合图像作为最大面积闭合轮廓;对最大面积闭合轮廓进行多边形拟合,得到已拟合多边形,并根据已拟合多边形确定至少一个已拟合多边形对应的顶点二维图像坐标以及顶点二维物理坐标;基于顶点二维图像坐标以及顶点二维物理坐标进行单应矩阵求取,得到顶点二维图像坐标以及顶点二维物理坐标对应的内角顶点的二维图像坐标;基于内角顶点的二维图像坐标以及内角顶点的二维物理坐标进行单应矩阵求取,得到标定板中的所有棋盘格角点的二维图像坐标;根据所有棋盘格角点的二维图像坐标得到所有棋盘格角点的二维图像坐标对应的角点像素坐标。
22.通过提出了一种基于深度学习语义分割模型的标定板检测方法,该方法可适用于多种相机在标定环节中检测标定板,首先使用语义分割模型分割出棋盘格区域,然后使用多次的重投影算法获取标定板角点坐标。能够结合深度学习语义分割的优势,能够增强对复杂环境的抗干扰性以及对不同摆放角度的标定板的检测能力,提高标定板的检测效率。
附图说明
23.图1为一个实施例中一种标定板的检测方法的应用环境图;图2为一个实施例中一种标定板的检测方法的流程示意图;图3为一个实施例中得到内角顶点的二维图像坐标方法的流程示意图;图4为一个实施例中得到内角顶点的角点像素坐标方法的流程示意图;图5为一个实施例中得到所有棋盘格角点的二维图像坐标方法的流程示意图;图6为一个实施例中确定顶点的二维图像坐标和二维物理坐标方法的流程示意图;图7为一个实施例中得到已训练语义分割模型方法的流程示意图;图8为一个实施例中得到已增强训练用标定板图像方法的流程示意图;图9为一个实施例中模型推理计算方法的流程示意图;图10为一个实施例中棋盘格标定板的内角顶点定义示意图;图11为一个实施例中一种标定板的检测装置的结构框图;图12为一个实施例中计算机设备的内部结构图;图13为一个实施例中计算机存储介质结构图。
具体实施方式
24.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
25.本技术实施例提供的一种标定板的检测方法,可以应用于如图1所示的应用环境中。终端102获取数据,服务器104响应终端102的指令接收终端102的数据,并且对获取得到的数据进行计算,服务器104将数据的计算结果传输回终端102,并且由终端102进行显示。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。服务器104从终端102处获取待检测边顶板图像,然后将待检测标定板图像输入至语义分割模型,得到待检测标定板对应的各个已分割子图像;基于各个已分割子图像进行组合,得到各个分割后组合图像,取面积值满足预设条件的分割后组合图像作为最大面积闭合轮廓;对最大面积闭合轮廓进行多边形拟合,得到已拟合多边形,并根据已拟合多边形确定至少一个已拟合多边形对应的顶点二维图像坐标以及顶点二维物理坐标;基于顶点二维图像坐标以及顶点二维物理坐标进行单应矩阵求取,得到顶点二维图像坐标以及顶点二维物理坐标对应的内角顶点的二维图像坐标;基于内角顶点的二维图像坐标以及内角顶点的二维物理坐标进行单应矩阵求取,得到标定板中的所有棋盘格角点的二维图像坐标;根据所有棋盘格角点的二维图像坐标得到所有棋盘格角点的二维图像坐标对应的角点像素坐标。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
26.在一个实施例中,如图2所示,提供了一种标定板的检测方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:步骤202,将待检测标定板图像输入至语义分割模型,得到待检测标定板对应的各个已分割子图像。
27.其中,待检测标定板图像可以是用在机器视觉、图像测量、摄影测量、三维重建等应用中,为校正镜头畸变、确定物理尺寸和像素间的换算关系以及确定空间物体表面某点的三维几何位置与其在图像中对应点之间的相互关系,需要建立相机成像的几何模型而对应的图像。通过相机拍摄带有固定间距图案阵列平板、经过标定算法的计算,可以得出相机的几何模型,从而得到高精度的测量和重建结果。常用的待检测标定板图像一般会有实心圆阵列图案以及国际象棋盘图案。
28.其中,已训练语义分割模型可以是通过大量的训练样本,对未训练的语义分割模型进行多次的循环训练,调整模型的参数直到准确率符合业务要求而得到的,可以用作对待检测标定板图像进行满足业务需求的语义分割。其中,语义分割模型可以是包括但不局限于卷积神经网络模型、循环神经网络模型或者长短期记忆网络模型等。
29.其中,已分割子图像可以是对待检测标定板使用已训练语义分割模型进行分割后得到的多个分割图像,这些已经分割好的图像将用于后续的标定板的检测所对应的计算。
30.具体地,将需要被用于检测的待检测标定板图像输入至已经训练好的语义分割模型中,待检测标定板图像通过层级的网络编码器得到多级图像特征,随后多级图像特征通过跳跃连接的方式输入到网络的解码器,通过解码器得到了棋盘格的分割结果,也就是各个已分割子图像。
31.举例来说,将需要被用于检测的待检测标定板图像a输入至已经训练好的语义分
割模型中,该语义分割模型采用encoder-decoder模型作为基础而得到的,通过语义分割后得到了待检测标定板图像对应的多个已分割子图像。
32.步骤204,基于各个已分割子图像进行组合,得到各个分割后组合图像,取面积值满足预设条件的分割后组合图像作为最大面积闭合轮廓。
33.其中,分割后组合图像可以是各个已分割子图像通过各种各样的组合方法进行组合后所形成的组合图像,分割后组合图像至少有一个,具体的数量根据已分割子图像的数量以及组合的方法的多少进行决定。其中,组合方法可以是根据条件随机场、边会编码以及完全可微分的条件随机场等对已分割子图像进行拼接。
34.其中,最大面积闭合轮廓可以是各个分割后组合图像中面积最大的那一个分割后组合图像。
35.具体地,输入为分割结果二值化mask,即各个已分割子图像,检测为棋盘格的像素值为1,非棋盘格的像素值为0。使用opencv闭合轮廓算法,找出各个分割后组合图像对应的轮廓,并按照面积大小排序,得到最大面积闭合轮廓。
36.举例来说,对100个已分割子图像进行组合,得到n个分割后组合图像,并使用opencv闭合轮廓算法,对这n个分割后组合图像的轮廓进行获取,并按照面积的大小进行排序,选取面积最大的那个分割后组合图像对应的轮廓作为最大面积闭合轮廓。
37.步骤206,对最大面积闭合轮廓进行多边形拟合,得到已拟合多边形,并根据已拟合多边形确定至少一个已拟合多边形对应的顶点二维图像坐标以及顶点二维物理坐标。
38.其中,多边形拟合可以是使用计算机对选定的分割后组合图像中的轮廓进行拟合,得到一个闭合的连续曲线,该曲线为多边形。
39.其中,顶点二维物理坐标可以是对已拟合多边形中的各个顶点进行标注而得到的二维坐标,该坐标能显示出被备注的顶点的物理性质。
40.其中,顶点二维图像坐标可以是使用多边形拟合方法对分割后组合图像中的轮廓进行拟合后,对于多边形中的多个顶点分别生成的二维图像坐标。
41.具体地,使用ramer

douglas

peucker 计算方法对面积最大闭合轮廓进行多边形拟合;然后再使用opencv的函数iscontourconvex判断多边形是否凸多边形,其中,凸多边形(convex polygon)可以是把一个多边形的所有边中,任意一条边向两方无限延长成为一直线时,其它各边都在此直线的同旁,其内角应该全不是优角,任意两个顶点间的线段位于多边形的内部或边上;最后通过设置最大面积阈值(设置为200个像素)和多边形的顶点数目(例如:标定板为矩形,设置为4)来得到最后的多边形顶点坐标。其中,多边形顶点坐标分为顶点二维物理坐标以及顶点二维图像坐标,二维图像坐标和二维物理坐标是一个单应映射关系,两者关系就是一个平面到另一个平面的仿射变换,所以可以用单应矩阵homography的方式求取。
42.举例来说,使用ramer

douglas

peucker 计算方法对面积最大闭合轮廓m进行多边形拟合;然后再使用opencv的函数iscontourconvex判断多边形m为凸多边形;最后通过设置最大面积阈值和多边形m的顶点数目6来得到最后的多边形6个顶点坐标,分别为6个顶点二维图像坐标以及6个顶点二维物理坐标。
43.步骤208,基于顶点二维图像坐标以及顶点二维物理坐标进行单应矩阵求取,得到顶点二维图像坐标以及顶点二维物理坐标对应的内角顶点的二维图像坐标。
44.其中,单应矩阵可以是描述两个平面之间的映射关系。在感知的场景中特征点都落在同一个平面上,则可以通过单应矩阵来进行运动估计。
45.其中,内角顶点的二维图像坐标可以是顶点二维图像坐标、顶点二维物理坐标以及内角顶点的二维物理坐标通过单应矩阵求取等数学计算而得到的。其中,内角顶点的二维物理坐标是通过人工标注待检测标定板图像的各个内角顶点所得到的二维物理坐标。
46.具体地,根据已拟合多边形对应的多个顶点二维图像坐标,和根据已拟合多边形进行标注的多个顶点二维物理坐标,使用opencv的findhomography算法进行单应矩阵求取,得到第一单应矩阵。根据已拟合多边形进行标注的多个内角顶点的二维物理坐标,使用第一单应矩阵的逆矩阵乘以多个内角顶点的二维物理坐标,得到的中间过程的坐标再进行归一化,得到顶点二维图像坐标以及顶点二维物理坐标对应的多个内角顶点的二维图像坐标。
47.实现上述步骤之后,还使用opencv的cornersubpixel算法对已拟合多边形对应的多个内角顶点的二维图像坐标进行角点亚像素化,然后得到亚像素级的多个内角点坐标。
48.举例来说,根据已拟合矩形对应的4个顶点二维图像坐标,和根据已拟合矩形进行标注的4个顶点二维物理坐标,使用opencv的findhomography算法进行单应矩阵求取,得到第一单应矩阵h1。根据已拟合矩形进行标注的4个内角顶点的二维物理坐标,使用第一单应矩阵h1的逆矩阵乘以4个内角顶点的二维物理坐标,得到的中间过程的坐标b1再进行归一化,得到顶点二维图像坐标以及顶点二维物理坐标对应的4个内角顶点的二维图像坐标。
49.步骤210,基于内角顶点的二维图像坐标以及内角顶点的二维物理坐标进行单应矩阵求取,得到标定板中的所有棋盘格角点的二维图像坐标。
50.其中,所有棋盘格角点的二维图像坐标可以是内角顶点的二维物理坐标通过单应矩阵求取等数学计算而得到的。其中,内角顶点的二维物理坐标是通过人工标注待检测标定板图像的各个内角顶点所得到的二维物理坐标。
51.具体地,根据已拟合多边形进行标注的多个内角顶点二维物理坐标以及多个内角顶点的二维图像坐标(或者亚像素级的多个内角点坐标),使用opencv的findhomography算法进行单应矩阵求取,得到第二单应矩阵,然后使用第二单应矩阵对应的逆矩阵乘以已拟合多边形进行标注的所有内角点的二维物理坐标,对得到的中间过程坐标再进行归一化,得到标定板中的所有棋盘格角点的二维图像坐标。
52.举例来说,根据已拟合矩形进行标注的4个内角顶点二维物理坐标以及4个内角顶点的二维图像坐标(或者亚像素级的4个内角点坐标),使用opencv的findhomography算法进行单应矩阵求取,得到第二单应矩阵h2,然后使用第二单应矩阵h2对应的逆矩阵乘以已拟合矩形进行标注的所有内角点的二维物理坐标,对得到的中间过程坐标b2再进行归一化,得到标定板中的所有棋盘格角点的二维图像坐标。
53.步骤212,根据所有棋盘格角点的二维图像坐标得到所有棋盘格角点的二维图像坐标对应的角点像素坐标。
54.其中,角点像素坐标可以是角点亚像素坐标,也就是摄像机标定中亚像素级角点检测算法,针对摄像机标定模板图像的角点检测问题,提出的简便而有效的亚像素级精度的提取算法。
55.具体地,对所有棋盘格角点的二维图像坐标使用opencv中的亚像素角点检测算法
cornersubpixel进行亚像素坐标求取,得到所有棋盘格角点的二维图像坐标对应的角点像素坐标。
56.举例来说,矩形标定板中所有棋盘格角点的二维图像坐标有100个,使用opencv中的亚像素角点检测算法cornersubpixel进行亚像素坐标求取,得到该矩形标定板中100个棋盘格角点的二维图像坐标对应的角点像素坐标。
57.上述标定板的检测方法中,通过将待检测标定板图像输入至语义分割模型,得到待检测标定板对应的各个已分割子图像;基于各个已分割子图像进行组合,得到各个分割后组合图像,取面积值满足预设条件的分割后组合图像作为最大面积闭合轮廓;对最大面积闭合轮廓进行多边形拟合,得到已拟合多边形,并根据已拟合多边形确定至少一个已拟合多边形对应的顶点二维图像坐标以及顶点二维物理坐标;基于顶点二维图像坐标以及顶点二维物理坐标进行单应矩阵求取,得到顶点二维图像坐标以及顶点二维物理坐标对应的内角顶点的二维图像坐标;基于内角顶点的二维图像坐标以及内角顶点的二维物理坐标进行单应矩阵求取,得到标定板中的所有棋盘格角点的二维图像坐标;根据所有棋盘格角点的二维图像坐标得到所有棋盘格角点的二维图像坐标对应的角点像素坐标。
58.通过提出了一种基于深度学习语义分割模型的标定板检测方法,该方法可适用于多种相机在标定环节中检测标定板,首先使用语义分割模型分割出棋盘格区域,然后使用多次的重投影算法获取标定板角点坐标。能够结合深度学习语义分割的优势,能够增强对复杂环境的抗干扰性以及对不同摆放角度的标定板的检测能力,提高标定板的检测效率。
59.在一个实施例中,如图3所示,基于顶点二维图像坐标以及顶点二维物理坐标进行单应矩阵求取,得到顶点二维图像坐标以及顶点二维物理坐标对应的内角顶点的二维图像坐标,包括:步骤302,基于顶点二维图像坐标以及顶点二维物理坐标进行单映射变换矩阵计算,得到第一单应矩阵。
60.其中,单映射变换矩阵可以是只有一个映射关系的变换矩阵,其中变换矩阵可以是顶点二维图像坐标以及顶点二维物理坐标的线性变换使用矩阵的方式进行表示。
61.其中,第一单应矩阵可以是顶点二维图像坐标以及顶点二维物理坐标进行线性变换后所得到的一个矩阵,该矩阵是描述两个平面之间的映射关系,在感知的场景中特征点都落在同一个平面上,则可以通过单应矩阵来进行运动估计。
62.具体地,根据已拟合多边形对应的多个顶点二维图像坐标,和根据已拟合多边形进行标注的多个顶点二维物理坐标,使用opencv的findhomography算法进行单应矩阵求取,得到第一单应矩阵。
63.举例来说,根据已拟合矩形对应的4个顶点二维图像坐标,和根据已拟合矩形进行标注的4个顶点二维物理坐标,使用opencv的findhomography算法进行单应矩阵求取,得到第一单应矩阵h1。
64.步骤304,对第一单应矩阵求逆矩阵后结合顶点二维图像坐标以及顶点二维物理坐标对应内角顶点的二维物理坐标进行归一化计算,得到顶点二维图像坐标以及顶点二维物理坐标对应的内角顶点的二维图像坐标。
65.具体地,根据已拟合多边形进行标注的多个内角顶点的二维物理坐标,使用第一单应矩阵的逆矩阵乘以顶点二维物理坐标对应的多个内角顶点的二维物理坐标,得到的中
间过程的坐标再进行归一化,得到顶点二维图像坐标以及顶点二维物理坐标对应的多个内角顶点的二维图像坐标。
66.举例来说,根据已拟合矩形进行标注的4个内角顶点的二维物理坐标,使用第一单应矩阵h1的逆矩阵乘以顶点二维物理坐标对应的4个内角顶点的二维物理坐标,得到的中间过程的坐标b1再进行归一化,得到顶点二维图像坐标以及顶点二维物理坐标对应的4个内角顶点的二维图像坐标。
67.本实施例中,通过对顶点二维图像坐标以及顶点二维物理坐标进行单映射变换矩阵计算,得到的结果后进一步进行归一化处理,得到内角顶点的二维图像坐标,能够确定的标定板图像坐标到标定板物理坐标的平面单应映射关系,以便于进行第二次但映射变换矩阵计算。
68.在一个实施例中,如图4所示,对第一单应矩阵求逆矩阵后结合顶点二维图像坐标以及顶点二维物理坐标对应内角顶点的二维物理坐标进行归一化计算,得到顶点二维图像坐标以及顶点二维物理坐标对应的内角顶点的二维图像坐标步骤之后,还包括:步骤402,基于内角顶点的二维图像坐标进行像素坐标求取,得到内角顶点的二维图像坐标对应的角点像素坐标。
69.具体地,使用opencv的cornersubpixel算法对已拟合多边形对应的多个内角顶点的二维图像坐标进行角点亚像素化,然后得到内角顶点的二维图像坐标对应亚像素级的多个内角点坐标。
70.举例来说,使用opencv的cornersubpixel算法对已拟合矩形对应的4个内角顶点的二维图像坐标进行角点亚像素化,然后得到内角顶点的二维图像坐标对应亚像素级的4个内角点坐标。
71.本实施例中,通过对内角顶点的二维图像坐标进行像素坐标求取,得到内角顶点的二维图像坐标对应的角点像素坐标,能够初步地得到亚像素级的内角点坐标,用于第二次单映射变换矩阵计算。
72.在一个实施例中,如图5所示,基于内角顶点的二维图像坐标以及内角顶点的二维物理坐标进行单应矩阵求取,得到标定板中的所有棋盘格角点的二维图像坐标,包括:步骤502,基于内角顶点的二维图像坐标以及内角顶点的二维物理坐标进行单映射变换矩阵计算,得到第二单应矩阵。
73.其中,第二单应矩阵可以是内角顶点的二维图像坐标以及内角顶点的二维物理坐标进行线性变换后所得到的一个矩阵,该矩阵是描述两个平面之间的映射关系,在感知的场景中特征点都落在同一个平面上,则可以通过单应矩阵来进行运动估计。
74.具体地,根据已拟合多边形进行标注的多个内角顶点二维物理坐标以及多个内角顶点的二维图像坐标(或者亚像素级的多个内角点坐标),使用opencv的findhomography算法进行单应矩阵求取,得到第二单应矩阵。
75.举例来说,根据已拟合矩形进行标注的4个内角顶点二维物理坐标以及4个内角顶点的二维图像坐标(或者亚像素级的4个内角点坐标),使用opencv的findhomography算法进行单应矩阵求取,得到第二单应矩阵h2。
76.步骤504,对第二单应矩阵求逆矩阵后结合标定板中的所有棋盘格角点的二维物理坐标进行归一化计算,得到标定板中的所有棋盘格角点的二维图像坐标。
77.具体地,使用第二单应矩阵对应的逆矩阵乘以已拟合多边形进行标注的所有内角点的二维物理坐标,对得到的中间过程坐标再进行归一化,得到标定板中的所有棋盘格角点的二维图像坐标。
78.举例来说,使用第二单应矩阵h2对应的逆矩阵乘以已拟合矩形进行标注的所有内角点的二维物理坐标,对得到的中间过程坐标b2再进行归一化,得到标定板中的所有棋盘格角点的二维图像坐标。
79.本实施例中,通过两次单映射变换矩阵计算,标定板中的所有棋盘格角点的二维图像坐标和标定板中的所有棋盘格角点的二维物理坐标的平面单应映射关系能更加准确,能够便于下一步cornersubpixel角点精确提取。
80.在一个实施例中,如图6所示,根据已拟合多边形确定至少一个已拟合多边形对应的顶点二维图像坐标以及顶点二维物理坐标,包括:步骤602,基于已拟合多边形进行线段简化,得到已拟合多边形对应的线段简化后已拟合多边形。
81.其中,线段简化可以是将已拟合多边形的连续曲线中的曲线要素进行简化的操作。
82.其中,线段简化后已拟合多边形可以是通过线段简化后的已拟合多边形。
83.具体地,对已拟合多边形的连续曲线中按照曲线中的连接点进行分段,得到多条线段。使用ramer

douglas

peucker 计算方法,对每一条曲线的首末点虚连一条直线,求所有点与直线的距离,并找出最大距离值,用最大距离值与限差相比。若最大距离值小于限差,这条曲线上的中间点全部舍去;若最大距离值大于或者等于限差,保留最大距离值对应的坐标点,并以该点为界,把曲线分为两部分,对这两部分重复使用该方法。最后得到已拟合多边形对应的线段简化后已拟合多边形。
84.举例来说,对已拟合多边形的连续曲线中按照曲线中的99个连接点进行分段,得到100条线段。使用ramer

douglas

peucker 计算方法,对每一条曲线的首末点虚连一条直线,求所有点与直线的距离,并找出最大距离值m,用最大距离值m与限差d相比。若最大距离值m小于限差d,这条曲线上的中间点全部舍去;若最大距离值m大于或者等于限差d,保留最大距离值对应的坐标点,并以该点为界,把曲线分为两部分,对这两部分重复使用该方法。最后得到已拟合多边形对应的线段简化后已拟合多边形。
85.步骤604,使用凸包检测算法对线段简化后已拟合多边形进行判断。
86.其中,凸包检测算法可以是用来对线段简化后已拟合多边形的轮廓的凸起情况进行判断,凸包检测算法可以使用opencv的函数iscontourconvex。
87.具体地,使用凸包检测算法对线段简化后已拟合多边形的轮廓进行检测,判断是否存有凸包,若检测结果为是,则表明该线段简化后已拟合多边形为凸多边形,若检测结果为否,则表明该线段简化后已拟合多边形不为凸多边形。
88.举例来说,使用opencv的函数iscontourconvex对线段简化后已拟合多边形的轮廓进行检测,判断结果为该多边形存在5个凸包,因此表明该线段简化后已拟合多边形为凸多边形。
89.步骤606,若线段简化后已拟合多边形为凸多边形,则基于预设的最大面积阈值以及凸多边形对应的顶点数目,确定至少一个已拟合多边形对应的顶点二维图像坐标以及顶
点二维物理坐标。
90.其中,最大面积阈值可以是一次取值中包含像素点个数所对应的面积,例如:取值为300个像素点所对应的面积。
91.具体地,如果通过凸包检测算法后判定线段简化后已拟合多边形为凸多边形,则基于预设的最大面积阈值以及凸包检测算法检测到凸多边形的顶点数目,进一步确定凸多边形中至少一个已拟合多边形对应的顶点二维图像坐标以及顶点二维物理坐标。
92.举例来说,如果通过凸包检测算法后判定线段简化后已拟合多边形为具有五个凸包的凸多边形,则基于预设的最大面积阈值(500个像素点)以及凸包检测算法检测到凸多边形的顶点数目为3,进一步确定凸多边形中1个至3个中选取一个值作为已拟合多边形对应的顶点二维图像坐标以及顶点二维物理坐标。
93.本实施例中,通过使用凸包检测算法对已拟合多边形进行检测,进一步确认凸多边形中的最大面积阈值以及顶点数目,能够更为准确地确定已拟合多边形对应的顶点二维图像坐标以及顶点二维物理坐标。
94.在一个实施例中,如图7所示,方法还包括:步骤702,获取训练用标定板图像。
95.其中,训练用标定板图像可以是用来训练语义分割模型的训练集图像,训练用标定板图像与待检测标定板图像是具有相似性,因此训练用标定板图像具有可以是将用在机器视觉、图像测量、摄影测量、三维重建等应用中,为校正镜头畸变;确定物理尺寸和像素间的换算关系;以及确定空间物体表面某点的三维几何位置与其在图像中对应点之间的相互关系,需要建立相机成像的几何模型而对应的图像等特性。同时,训练用标定板图像一般会有实心圆阵列图案以及国际象棋盘图案。
96.具体地,获取训练用的标定板图像,未训练语义分割模型中的分割网络采用高分辨网络结构hrnet,其中网络骨架采用轻量级别的hrnetv2_w18以加快网络推理速度。
97.步骤704,对训练用标定板图像进行数据增强,得到已增强训练用标定板图像。
98.具体地,对训练用标定板图像进行数据增强,其中,数据增强包括但不局限于图片随机旋转-30到30度,图片随机进行水平方向翻转,图片随机进行竖直方向翻转以及图片进行随机的亮度调整,经过数据增强后得到已增强训练用标定板图像。
99.举例来说,对训练用标定板图像进行15度的图片随机旋转,60度的图片随机进行水平方向翻转,130度的图片随机进行竖直方向翻转以及图片进行随机的亮度调整,得到已增强训练用标定板图像。
100.步骤706,将已增强训练用标定板图像调整至预设的图像采样尺寸后输入至未训练语义分割模型,得到已训练语义分割模型。
101.其中,图像采样尺寸可以是输入至未训练语义分割模型中对其进行训练的样本对象采取预设的图像尺寸进行输入,以达到同时具备检测和分割功能。
102.其中,未训练语义分割模型可以是用来进行语义分割,但是还没进行训练的人工智能模型,该模型一般采用encoder-decoder模型或者扩展卷积的方法实现。
103.具体地,训练过程中固定图像采样大小,使得训练得到的分割网络既适应于少量标注数据的情况,同时使得网络兼具检测与分割的功能。然后输入至bottleneck_block与basic_block中,得到的结果输入至fcn_head,经过fcn_head的计算,最后得到了分割结果。
其中,bottleneck_block 与basic_block 是两种基础模块,而fcn_head 则参照了hrnet中的特征解码模块得到最后的分割结果。
104.举例来说,训练过程中固定图像采样的长为x,宽为y,然后输入至bottleneck_block与basic_block中,得到的结果输入至fcn_head,经过fcn_head的计算,最后得到了长为x,宽为y的训练样本对应的分割结果。
105.本实施例中,通过提出一种基于深度学习语义分割模型的标定板检测方法,有效解决了目前标定板检测的稳定性问题,能够在各种复杂场景下或标定板任意摆放的情况下,有效地检测出标定板并进行亚像素级的角点检测,为后续相机标定提供了稳定的效果。
106.在一个实施例中,如图8所示,对训练用标定板图像进行数据增强,得到已增强训练用标定板图像,包括:步骤802,将训练用标定板图像进行随机旋转、水平方向翻转以及竖直方向翻转,得到初步增强图像。
107.具体地,对训练用标定板图像采用移动变换的方式进行数据增强,其中,数据增强包括但不局限于图片随机旋转-30到30度,图片随机进行水平方向翻转以及图片随机进行竖直方向翻转。
108.举例来说,对训练用标定板图像采用图片随机旋转15度,图片随机进行水平方向翻转68度以及图片随机进行竖直方向翻转130度方式进行数据增强。
109.步骤804,将初步增强图像进行亮度调整,得到已增强训练用标定板图像。
110.具体地,对训练用标定板图像采用亮度调整的方式进行数据增强,其中,亮度调整的范围是预设的,调整时可以在预设的范围内进行任意且连续的亮度变化。
111.举例来说,对训练用标定板图像采用亮度为500流明调整至亮度为1000流明的方式进行数据增强。
112.本实施例中,通过经过在网络训练过程的数据增强,能够使得网络的泛化性得到极大的增强。
113.在一个实施例中,如图9所示,标定板图像通过层级的网络编码器得到多级图像特征,随后多级图像特征通过跳跃连接的方式输入到网络的解码器,通过解码器得到了棋盘格的分割结果。
114.在一个实施例中,棋盘格标定板的内角顶点定义如图10所示,对于所有内角顶点都有对应的内角顶点的二维图像坐标以及内角顶点的二维物理坐标。
115.应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
116.基于同样的发明构思,本技术实施例还提供了一种用于实现上述所涉及的标定板的检测方法的标定板的检测装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个标定板的检测装置实施例中的具体限定可
以参见上文中对于标定板的检测方法的限定,在此不再赘述。
117.在一个实施例中,如图11所示,提供了一种标定板的检测装置,包括:已分割子图像得到模块、最大面积闭合轮廓得到模块、顶点二维坐标确定模块、内角顶点的二维图像坐标得到模块、棋盘格角点的二维图像坐标得到模块和棋盘格角点像素坐标模块,其中:已分割子图像得到模块1102,用于将待检测标定板图像输入至语义分割模型,得到待检测标定板对应的各个已分割子图像;最大面积闭合轮廓得到模块1104,用于基于各个已分割子图像进行组合,得到各个分割后组合图像,取面积值满足预设条件的分割后组合图像作为最大面积闭合轮廓;顶点二维坐标确定模块1106,用于对最大面积闭合轮廓进行多边形拟合,得到已拟合多边形,并根据已拟合多边形确定至少一个已拟合多边形对应的顶点二维图像坐标以及顶点二维物理坐标;内角顶点的二维图像坐标得到模块1108,用于基于顶点二维图像坐标以及顶点二维物理坐标进行单应矩阵求取,得到顶点二维图像坐标以及顶点二维物理坐标对应的内角顶点的二维图像坐标;棋盘格角点的二维图像坐标得到模块1110,用于基于内角顶点的二维图像坐标以及内角顶点的二维物理坐标进行单应矩阵求取,得到标定板中的所有棋盘格角点的二维图像坐标;棋盘格角点像素坐标模块1112,用于根据所有棋盘格角点的二维图像坐标得到所有棋盘格角点的二维图像坐标对应的角点像素坐标。
118.在其中一个实施例中,内角顶点的二维图像坐标得到模块,用于基于顶点二维图像坐标以及顶点二维物理坐标进行单映射变换矩阵计算,得到第一单应矩阵;对第一单应矩阵求逆矩阵后结合顶点二维图像坐标以及顶点二维物理坐标对应内角顶点的二维物理坐标进行归一化计算,得到顶点二维图像坐标以及顶点二维物理坐标对应的内角顶点的二维图像坐标。
119.在其中一个实施例中,内角顶点的二维图像坐标得到模块,用于基于内角顶点的二维图像坐标进行像素坐标求取,得到内角顶点的二维图像坐标对应的角点像素坐标。
120.在其中一个实施例中,棋盘格角点的二维图像坐标得到模块,用于基于内角顶点的二维图像坐标以及内角顶点的二维物理坐标进行单映射变换矩阵计算,得到第二单应矩阵;对第二单应矩阵求逆矩阵后结合标定板中的所有棋盘格角点的二维物理坐标进行归一化计算,得到标定板中的所有棋盘格角点的二维图像坐标。
121.在其中一个实施例中,顶点二维坐标确定模块,用于基于已拟合多边形进行线段简化,得到已拟合多边形对应的线段简化后已拟合多边形;使用凸包检测算法对线段简化后已拟合多边形进行判断;若线段简化后已拟合多边形为凸多边形,则基于预设的最大面积阈值以及凸多边形对应的顶点数目,确定至少一个已拟合多边形对应的顶点二维图像坐标以及顶点二维物理坐标。
122.在其中一个实施例中,语义分割模型训练模块,用于获取训练用标定板图像,训练用标定板图像用以训练语义分割模型;对训练用标定板图像进行数据增强,得到已增强训练用标定板图像;将已增强训练用标定板图像调整至预设的图像采样尺寸后输入至未训练语义分割模型,得到已训练语义分割模型。
123.在其中一个实施例中,语义分割模型训练模块,用于将训练用标定板图像进行随机旋转、水平方向翻转以及竖直方向翻转,得到初步增强图像,随机旋转所对应的角度为负30度至30度之间;将初步增强图像进行亮度调整,得到已增强训练用标定板图像。通过对语义分割模型的训练样本数据进行语义增强,可以让训练样本数据针对语义分割模型的目标训练方向更具有针对性,提高语义分割模型的泛化性能,使得语义分割模型的分割效率更高。
124.上述标定板的检测装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
125.在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图12所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储服务器数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种标定板的检测方法。
126.本领域技术人员可以理解,图12中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
127.在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
128.在一个实施例中,提供了一种计算机可读存储介质,如图13所示,存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
129.在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方法实施例中的步骤。
130.需要说明的是,本技术所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
131.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(reram)、磁变存储器(magnetoresistive random access memory,mram)、铁电存储器(ferroelectric random access memory,fram)、相变存储器(phase change memory,pcm)、石墨烯存储器等。易失性存储器可包括随机存取存储器(random access memory,
ram)或外部高速缓冲存储器等。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。本技术所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本技术所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
132.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
133.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献