基于图像感知的设备气密性检测相机自标定方法与流程

文档序号:23657473发布日期:2021-01-15 13:54阅读:63来源:国知局
基于图像感知的设备气密性检测相机自标定方法与流程

本发明属于计算机视觉、设备气密性检测领域,具体为一种基于图像感知的设备气密性检测相机自标定方法。



背景技术:

在设备气密性检测过程中,进行图像信息采集的相机的标定十分重要,若相机镜组出现晃动等情况,再通过常规标定方法会影响检测进度,但如果不进行标定,可能导致所采集的信息出现误差。

目前气密性检测领域尚未提出相机自标定的方法,通常按出厂标定的结果直接使用;其原因在于,目前较为准确的自标定方法通常需要多帧运动图像进行标定,而气密性检测时难以获得该类图像集合;而单帧图像自标定的方法误差较大,难以进行精确的标定。



技术实现要素:

为了解决现有技术存在的问题,本发明提出一种基于图像感知的设备气密性检测相机自标定方法,该方法包括:

步骤一,通过相机对检测池进行图像采集,所述检测池中包括进行气密性检测的设备及水体;采集到的检测池图像经过边缘检测、霍夫变换后进行直线拟合;

步骤二,根据拟合直线的斜率,将拟合直线归于不同的直线集合中,具体地,第一直线集合中包括检测池高边所在直线;第二直线集合中包括检测池长边所在直线、进行气密性检测的设备的边缘线、水面直线;第三直线集合中包括检测池宽边所在直线;根据不同直线集合中的平行线组进行灭点的估计,对应三个直线集合得到第一灭点、第二灭点、第三灭点;

步骤三,对检测池图像中的roi区域进行气泡的感知,得到气泡的边缘信息,对得到的边缘信息进行处理得到气泡的曲线信息,其中,曲线包括椭圆曲线和圆的曲线;

步骤四,根据气泡的曲线信息与第一灭点、第三灭点进行相关性分析,对气泡曲线信息进行筛选,根据灭线和保留下来的气泡曲线信息进行计算,得到多组估计灭点对,多组估计灭点对归于第四灭点集合;其中,灭线为第一灭点与第三灭点连接得到;

步骤五,从第一灭点、第三灭点中任选一个灭点,从第四灭点集合中任选一组估计灭点对进行相机内参矩阵的计算,或根据第一灭点、第二灭点、第三灭点进行相机内参矩阵的计算;其中,所选择的进行相机内参矩阵计算的三个灭点分别位于三个互相垂直的方向上;

步骤六,在检测池侧边上选择共线的多个标记点,根据多个标记点的标准图像坐标以及实际图像坐标计算相机的畸变参数。

进行边缘检测之前还需要对检测池图像进行灰度化处理,并且采用sobel算子进行边缘检测。

第一直线集合中包括两条直线,第三直线集合中包括四条直线。

若所述第二集合中的直线条数大于等于2条,所述roi区域为根据第二直线集合中的直线划分得到,否则,所述roi区域为初始roi区域,初始roi区域内包括水体、检测池以及进行气密性检测的设备。

气泡的曲线信息的获取方法为:对roi区域进行灰度化处理后基于laplacian算子进行边缘检测获取气泡的边缘信息,得到二值图像,利用聚类算法对二值图像进行处理得到多个点的集合,利用拟合算法对点的集合进行拟合得到气泡的曲线信息。

所述聚类算法为均值漂移聚类算法,所述拟合算法为最小二乘法。

所述相关性分析具体为:判断第一灭点和第三灭点所处的无穷远平面与气泡所处平面是否共面,若共面,则存在相关性,将相应的气泡曲线信息剔除;若不共面,则不存在相关性,将相应的气泡曲线信息保留。

相机内参矩阵的计算具体为:根据公式计算绝对二次曲线的像ω,pv1、pv2为从步骤五得到的三个灭点中任选的两个灭点;将像ω用相机内参矩阵k表示,具体地,ω=k-tk-1,以步骤五得到的三个灭点为约束求解内参矩阵中的参数。

进一步的,所述标记点至少要有4个。

本发明的有益效果在于:

1.现有针对设备气密性检测的图像处理时未考虑到相机标定准确性对图像处理结果造成的影响;本发明通过单帧图像进行相机的自标定,使图像处理的结果更加准确。

2.本发明中提出的标定方法,基于单帧图像,且无需外物辅助标定,可实现快速高效的自标定。

3.本发明考虑到了极端情况下检测不到水平方向上的平行线组时,可以根据气泡的曲线信息进行相机参数的求解。

附图说明

图1为本发明实施流程图。

具体实施方式

为了让本领域技术人员更好的理解本发明,下面结合实施例对本发明进行详细描述。

本发明提出一种基于图像感知的设备气密性检测相机自标定方法,其目的为通过图像信息感知获取图像中的直线、椭圆或圆的曲线等信息,并进行气泡信息感知roi区域划分、灭点估计,最终得到满足条件的灭点进行相机的标定。本发明的实施流程如图1所示。

实施例:

通过位置固定的高速相机对检测池进行图像采集,获取设备气密性检测过程中单帧存在气泡的检测池图像,其中,检测池中包括进行气密性检测的设备及清晰的水体,且所检测的设备存在气密性问题,以便后续信息的采集和处理;将感知到气泡信息作为本发明的启动条件,其原因在于,仅在存在气泡时为保证气泡信息的准确性才需要本发明所提出的方法进行相机的自标定。

采集到的检测池图像经过边缘检测,该步骤的目的为提取出图像中所有的直线边缘以进行后续的分析,此时选择sobel算子,其原因在于根据先验信息,图像中所存在的直线应为水面、设备表面以及检测池的边缘,显然上述直线两侧的灰度值差别较大,因此采用3*3的sobel算子进行边缘提取,得到直线二值图像。需要说明的是,本发明所述边缘检测的输入均为经过灰度化处理的图像。

通过霍夫变换将直线二值图像转换至霍夫空间,该步骤的目的为防止上述直线二值图像中出现噪点或未检测到的点导致在图像坐标系中无法拟合出一条直线,因此转换至霍夫空间处理。

在霍夫空间通过ransac方法进行多条直线的拟合,该步骤的目的为获取图像中多条直线的解析式,具体方法为任选霍夫空间中两条直线作为集合,以其交点作为条件,对其余任一直线均判断该交点是否在直线上,若在直线上将该直线加入集合,最后统计集合内直线条数。重复该步骤,最终选出直线条数最多的top-k个集合,每个集合里都包括过一个交点的若干条直线,该交点在霍夫空间坐标系的k,b就是拟合直线的斜率k和截距b,由此,可得到拟合直线的解析式;实施例中建议k值选择为15,该值考虑了存在极端情况即水平面出现倒影,且检测装置为矩体,则会导致需选择的互相垂直的平行线无法完全获取。

对拟合得到的多条直线进行筛选,该步骤的目的为筛选出用于后续灭点估计检测的平行直线组,基于先验信息,本发明所应用的场景为所拍摄的检测池图像,因此,易根据检测池缸体的特性,找到两个平行线组,即检测池的高边和宽边所在的直线,而实际会存在极端情况,即由于长边所在的直线无法从图像中获取,又与长边所在直线平行的被检测设备为非矩体或倾斜的时候,此时仅能得到水面直线,而水面又存在晃动的可能性,此时无法得到一个平行线组,因此需要气泡信息作为约束项进行相机的自标定,当不存在该类极端情况时,气泡信息可作为辅助约束优化标定结果。

具体地,根据拟合直线的斜率对拟合直线进行筛选,将拟合直线归于不同的直线集合中:

设置经验阈值m1,将斜率大于m1的直线归于第一直线集合,该经验阈值m1设置应较大,即所选择的为斜率近似不存在的直线,此时第一直线集合内应存在两条直线,为检测池高边所在的直线,在世界坐标系中,该两条直线平行。

设置经验阈值m2,将斜率小于m2的直线归于第二直线集合,该经验阈值m2设置应较小,目的为选择出斜率近似为0的直线,由于检测池长边所在直线及与其平行的直线可能存在的极端情况,所以该直线集合内直线条数不确定,但该第二直线集合中正常情况下包括检测池长边所在直线、进行气密性检测的设备的边缘线、水面直线。

将斜率大于等于m2且小于等于m1的直线归于第三直线集合,该集合内存在四条直线,为检测池宽边所在直线。

每个直线集合内直线的方程已知,根据不同直线集合中的平行线组进行灭点的估计,具体的估计方法为公知的,不在本发明保护范围内,正常情况下,对应三个直线集合得到第一灭点、第二灭点、第三灭点。

至此,得到不同直线集合对应的灭点。

若第二直线集合中的直线条数大于等于2条,根据第二直线集合中的直线划分roi区域,否则,基于初始roi区域进行后续处理,初始roi区域内包括水体、检测池以及进行气密性检测的设备。

根据第二直线集合中的直线划分roi区域具体为:

第二直线集合中每条直线的解析式已知,即截距也已知,根据多条直线的截距得到截距中位数,选择截距小于截距中位数,且与截距中位数差值最小的直线最为第一直线,选择截距小于第一直线的截距,且与第一直线的截距差值最小的直线最为第二直线,则第一直线、第二直线与第一直线集合中的两条直线组成的区域即为roi区域。

对检测池图像中的roi区域进行气泡的感知,获取气泡的边缘信息,基于气泡内部近似透明的特性,实施例基于laplacian算子进行边缘检测得到气泡二值图像。

对得到的边缘信息进行处理得到气泡的曲线信息,获取气泡曲线信息的方法具体为:

气泡二值图像经过均值漂移聚类算法得到多个点的集合,该步骤目的为得到单个气泡的点的集合,否则多个气泡的点会对后续曲线结果拟合造成影响。采用均值漂移算法的原因在于,气泡数量是难以确定的,但由于采用的是高速相机,因此气泡应当无粘连情况,每个气泡均是完整且相似的。具体过程为:

首先在气泡二值图像中随机选择任意若干个点作为中心点,根据经验设置半径为r,将与中心点距离小于半径r的点划分到相应中心点的集合中去,若存在中心点所划区域重合的情况,则保留存在重合的多个集合中点较多的中心点集合;计算集合内中心点指向各点的多个偏移向量的和,并将中心点根据偏移向量的和进行移动,重新划分集合;重复上述步骤,直至中心点稳定,各个集合无重合区域,即完成聚类。

通过最小二乘法对多个点的集合进行拟合得到气泡的曲线信息,其中,曲线包括椭圆曲线和圆的曲线;该步骤的目的为得到气泡的几何信息,基于先验将气泡假设为椭圆形状,当长轴与短轴相同时说明气泡在图像中为圆形;最小二乘法为公知常识,在此不再赘述。

至此,得到气泡的曲线信息。

根据气泡的曲线信息与第一灭点、第三灭点进行相关性分析,对气泡曲线信息进行筛选:

连接第一灭点和第三灭点得到灭线lp,根据数学原理,第一灭点和第三灭点叉乘即可得到灭线lp,将气泡的曲线设为e,根据形心计算公式pc=e-1·lp,得到形心pc,形心与第一灭点(第三灭点)相连即形心与第一灭点(第三灭点)叉乘得到直线l;第一灭点、第三灭点处于无穷远平面上,根据每个气泡都可确定一个平面,假设无穷远平面与任一气泡所在平面重合,即第一灭点、第三灭点与气泡在同一平面,则灭线lp与直线l叉乘后得到一交点,此时,该点应与第三灭点(第一灭点)重合。

基于上述结论进行相关性分析,固定第一灭点p1,计算交点p′2,固定第三灭点p2,计算交点p′1,则式中dis代表计算两点间距离,即模型的含义为计算共面情况下所求得的灭点与原灭点之间差值的均值与原灭点之间距离的比值,该比值越小代表椭圆与灭点越可能共面;当计算结果pro小于等于一定值时,判断气泡与两灭点共面,即存在相关性,将相应的气泡曲线信息剔除;若不共面,则不存在相关性,将相应的气泡曲线信息保留。

根据符合条件保留下来的气泡曲线信息和灭线进行计算,即保留下来的每个气泡的曲线中任一曲线和灭线可根据对极关系得到无数组估计灭点对,无数组估计灭点对归于第四灭点集合。

至此,结合气泡的曲线信息得到估计灭点对。

判断是否可以根据第二直线集合得到灭点,即判断该集合中直线斜率的均方差,当均方差大于一定值或第二直线集合内不存在两条或以上的直线,则第二直线集合不能作为标定的约束项。

三个灭点的选择:若存在极端情况导致没有得到第二灭点,则从第一灭点、第三灭点中任选一个灭点,从第四灭点集合中任选一组估计灭点对进行相机内参矩阵的计算;否则,从第一灭点、第三灭点中任选一个灭点,从第四灭点集合中任选一组估计灭点对进行相机内参矩阵的计算,或根据第一灭点、第二灭点、第三灭点进行相机内参矩阵的计算;其中,所选择的进行相机内参矩阵计算的三个灭点分别位于三个互相垂直的方向上;内参矩阵的具体计算方法为:

根据公式计算绝对二次曲线的像ω,pv1、pv2为从选择的三个灭点中任选的两个灭点;将像ω用相机内参矩阵k表示,具体地:

以选择的三个灭点为约束求解内参矩阵中的参数f、u0、v0。

至此,得到相机的内参矩阵。

在检测池侧边上选择共线的四个标记点,四个点的真实距离已知,四个点在世界坐标系中的坐标分别为q1(x1,y1,z1),q2(x2,y2,z2),q3(x3,y3,z3),q4(x4,y4,z4),对应的图像坐标系中的坐标为qu1(xu1,yu1),qu2(xu2,yu2),qu3(xu3,yu3),qu4(xu4,yu4),根据透视原理及交比不变性质有以下公式1:

公式1中,cr表示线束交比。

实际上由于畸变的原因,空间点(x,y,z)所成的像不在(xu,yu)点,在图像坐标(xd,yd)点;由一阶径向畸变可得公式2:

公式2中,i=1,2,3,4,k为畸变参数。

联立公式1和公式2,可得到形如ak2+bk+c=0的关于畸变参数k的一元二次方程,即可求得畸变参数。

以上所述旨在让本领域技术人员更好的理解本发明,并不用于限制本发明,凡是在本发明精神和原则之内做出的修改与变动,皆在本发明的保护范围内。

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