一种规则对象检测及定位方法

文档序号:569662 发布日期:2021-05-18 浏览:17次 >En<

阅读说明:本技术 一种规则对象检测及定位方法 (Rule object detection and positioning method ) 是由 陈建魁 冀向阳 于 2021-01-28 设计创作,主要内容包括:本发明提供了一种形状规则检测与定位方法,属于三维点云检测领域。该方法为:采集目标规则对象的彩色图像和深度图像;将彩色图像和深度图像转化为反映目标当前环境三维信息的点云;确定目标正视平面点云的分布范围和中心点,以与中心点距离越小、点曲率越小则优先选取的原则,在点云中选取种子点;由种子点开始邻域搜索生成点云区块,仅当该点位于所述目标正视平面点云分布范围内,且与种子点属于同一视图,才唯一确定其与种子点属于同一点云区块;将点云区块分别沿水平方向和竖直方向法线投影,投影后提取目标轮廓;通过投影直线和目标物体尺寸特征计算出目标物体的位姿。本发明避免了对所有点云进行生长分割,提高了目标对象检测及定位的速度。(The invention provides a shape rule detection and positioning method, and belongs to the field of three-dimensional point cloud detection. The method comprises the following steps: collecting a color image and a depth image of a target rule object; converting the color image and the depth image into a point cloud reflecting the three-dimensional information of the current environment of the target; determining the distribution range and the central point of the point cloud of the object normal view plane, and selecting seed points from the point cloud according to the principle that the smaller the distance from the central point and the smaller the point curvature, the priority is for selection; starting neighborhood search by the seed point to generate a point cloud block, and only when the point is located in the point cloud distribution range of the target normal viewing plane and belongs to the same view with the seed point, uniquely determining that the point and the seed point belong to the same point cloud block; respectively projecting the point cloud blocks along the normal of the horizontal direction and the vertical direction, and extracting a target contour after projection; and calculating the pose of the target object through the projection straight line and the size characteristic of the target object. The invention avoids the growth and segmentation of all point clouds and improves the speed of target object detection and positioning.)

一种规则对象检测及定位方法

技术领域

本发明属于目标检测定位技术领域,更具体地,涉及一种规则对象检测与定位方法。

背景技术

对于正视平面为规则几何形状的物体,如正视平面为长方形的仓储箱体,此类规则对象在工业生产中被大量使用,对其进行检测与定位对于工业自动化水平的进步与发展具有重要意义。

随着国民经济的快速发展,对规则对象进行检测与定位成为各行各业不可或缺的技术。而规则对象的检测与定位效率和精度是影响其广泛应用的关键因素。传统的规则对象与定位技术主要可以分为两类:一类是基于图像的检测与定位方法,图像检测效率较高,但是其精度难以满足工业中对象检测的精度要求;另一类是基于点云的检测与定位方法,需要对全部点云进行分割,进一步对分割得到的点云区块利用点云配准完成检测与定位,其精度较高,但是点云分割检测过程中需要耗费大量时间,检测效率较为低下。如何在不降低规则对象检测与定位精度和鲁棒性的前提下,实现高效率的目标对象检测与定位工作,成为本领域亟需解决的问题。

发明内容

针对现有技术的以上缺陷或改进需求,本发明提供了一种规则对象检测与定位方法,避免了对所有点云进行生长分割,提高了目标对象检测及定位的速度。

一种规则对象检测方法,其特征在于,该方法包括以下步骤:

(1)采集目标规则对象的彩色图像和深度图像;

(2)将彩色图像和深度图像转化为反映目标当前环境三维信息的点云;

(3)确定目标正视平面点云的分布范围和中心点,以与中心点距离越小、点曲率越小则优先选取的原则,在点云中选取种子点;

(4)由种子点开始邻域搜索生成点云区块,仅当该点位于所述目标正视平面点云分布范围内,且与种子点属于同一视图,才唯一确定其与种子点属于同一点云区块;

(5)将点云区块分别沿水平方向和竖直方向法线投影,投影后提取目标轮廓,至此完成目标检测。

所述步骤(3)的具体实现方式为:

记彩色相机坐标系在水平方向的定位误差为Δx,目标正视平面的长l,宽w,目标离地高度h,深度相机坐标系原点离地高度hc,(x0,y0,z0)为相机的拍摄位置坐标;

确定目标正视平面点云在彩色相机坐标系水平方向上的分布范围为[xw-x0-Δx,xw-x0+Δx],在竖直方向上的分布范围为[hc-h-w,hc-h],进而确定其分布范围的中心点为

在点云中按照排序比较函数选取和排序种子点,所述排序比较函数为:

其中,(x1,y1)及(x2,y2)为两待比较点的水平及竖直方向的坐标值,curvature1及curvature2分别为此两点对应的曲率。

进一步地,所述步骤(4)的具体实现方式为:

由种子点开始邻域搜索,仅当点(x,y)与目标正视平面点云中心点的距离ddis小于阈值tdis、其法线与种子点的法线夹角dang小于阈值tang、其曲率与种子点的曲率差的绝对值dcur小于阈值tcur,才唯一确定其与种子点属于同一点云区块,其中,

dang=cos-1(normal·normalroot),dcur=|curvature-curvatureroot|,x,y为当前点的水平及竖直方向坐标值,normal为当前点法向量,normalroot为种子点法向量,两单位法向量的点乘结果为两法向量夹角的余弦值,curvature为当前点曲率,curvatureroot为种子点曲率。

进一步地,所述步骤(3)还对种子点进行预验证处理,具体为:

对于深度相机获取的彩色图像,将其以p=(R*38+G*75+B*15)>>7转换为灰度图像,其灰度图像像素值的平均偏差为其中(R,G,B)为彩色图像中每个像素点对应的像素值,p为每个像素点的灰度值,为灰度图像的灰度平均值,n为像素点数;

若μ<tμ,tμ为明暗界限平均偏差阈值,则当前处于黑暗环境中,保留该种子点;

反之,则进一步判定,若种子点在深度相机获取的彩色图像中所对应像素点的像素值(Rr,Gr,Br)与目标正视平面真实像素值(Rt,Gt,Bt)之间的偏离程度小于等于给定的阈值,则保留该种子点。

进一步地,所述步骤(5)的具体实现方式为:

将点云区块沿竖直方向法向量ny投影至XOZ平面得到点集PXOZ={(xi,zi)},其中xi表示编号为i的点在X轴上的坐标值,zi表示编号为i的点在Z轴上的坐标值,使用直线的二维点进行拟合,拟合方程为其中经最小二乘拟合后可得到直线的斜率k及截距b;

根据xi的大小对二维点进行排序,排序后取出xi最小的点(xmin,ymin),xi最大的点(xmax,ymax);可求出前述两点在拟合得到的直线上的投影间的距离dl,其中XOZ平面两端点投影间的距离被

相应地,将点云区块沿水平方向法向量nx投影至YOZ平面后,对得到的二维点经相似操作可得到YOZ平面两端点投影间的距离dw

进一步地,依据经投影计算得到的点云区块长度dl与目标物体正视平面的长l间的相对误差为计算得到的点云区块宽度dw与目标物体正视平面的宽w间的相对误差为仅当相对误差满足当前点云区块为目标物体所对应点云区块,即检测到目标物体;否则丢弃此点云区块,取出新的种子点进行新一轮的分割检测过程,其中e为相对误差阈值。

进一步地,所述步骤(2)还对点云作预处理,具体为:依据相机坐标系深度方向上的定位误差Δz及目标在世界坐标系中的位置(xw,yw,zw),确定目标物体在深度方向上分布的最近距离dmin及最远距离dmax,其中dmin=zw-z0-Δz,dmax=zw-z0+Δz;进而对过近及过远距离点云进行滤除,随后依次对点云进行体素滤波及概率滤波,以实现对点云的降采样及离群点剔除。

一种规则对象检测方法,针对位于斜坡上的形状规则物体,使用双深度相机进行检测,其具体实现方式如下:

双深度相机分主视深度相机及俯视深度相机;首先,俯视深度相机采用上述方法完成目标物体俯视平面的检测,由目标物体俯视平面沿水平方向法向量投影得到的直线其中k3,b3为该直线的斜率及截距,斜坡倾角被计算为θ=tan-1k3;然后,主视深度相机进行目标物体主视平面的检测,其中点云区块的投影应改为沿着与斜坡平面垂直的法向量nt及水平方向法向量nx进行,nt满足进而利用权利要求7所述的目标物体检测方法即可完成检测。

一种规则对象定位方法,其特征在于,具体为:

按照上述方法检测目标规则对象;

对于点云区块分别沿竖直方向法向量ny及水平方向法向量nx的投影,并直线拟合得到的直线和直线其中k1,b1及k2,b2为两直线的斜率及截距,目标沿竖直方向的偏转角表示为ω=tan-1k1

目标正视平面的右下端点在相机坐标系下的深度zr=k2(hc-h)+b2,目标正视平面的右下端点在相机坐标系的X轴坐标值为故目标正视平面的右下端点坐标为(xr,hc-h,zr),目标正视平面中心点在相机坐标系X轴及Y轴的坐标为

在点云区块中按照计算得到的坐标搜索,可得到目标物体正视平面中心点在Z轴的坐标值,由此完成目标物体在相机坐标系下的定位。

总体而言,通过本发明所构思的以上技术方案与现有技术相比,本发明具有以下有益的技术效果:

本发明以目标正视平面点云中心点作为种子点选取的基准,以与中心点距离越小、点曲率越小则优先选取的原则选取种子点,并以种子点开始邻域搜索点云区块。本发明利用相机在水平方向的坐标值和定位误差以及目标物体尺寸特征确定目标点云在水平及竖直方向上的分布范围,实现对区域生长种子点的精确选取。在点云区块搜索过程中,本发明引入目标对象点云分布范围的约束,仅当该点位于所述目标正视平面点云分布范围内,且与种子点属于同一视图,才唯一确定其与种子点属于同一点云区块,如此保证了在最好情况下只需分割出一块点云区块便可检测出目标对象,避免了对所有点云进行生长分割,大大地提高了目标对象检测的速度。

进一步地,本发明还对种子点进行预验证处理时,首先对当前环境进行验证,确保当前处于明亮环境中,使得能够得到可用的彩色像素值,进一步利用彩色像素值快速完成种子点的预验证处理,进一步避免了对无效点云区块进行分割。

进一步地,本发明通过对点云区块投影得到拟合直线,利用拟合直线既可完成目标对象的检测,又可完成目标对象的定位,既保证了规则对象检测的效率,又保证了规则对象检测的精度。

进一步地,本发明在规则对象的检测与定位过程中,依据目标物体在深度上的最近和最远距离,确定了形状规则物体的可能存在范围,进一步划分出对点云进行分割检测的界限,避免了对无效点云进行处理,极大地提高了点云处理的效率。

进一步地,本发明的规则对象检测与定位方法针对斜坡这一特殊场景,提出了使用双深度相机完成检测与定位的方案,提高了本发明所设计方法的通用性,具有极高的实用价值。

附图说明

图1是本发明一种规则对象检测与定位方法的总流程图。

图2是本发明中使用深度相机采集目标对象所在环境信息的示意图。

图3是本发明中使用深度相机检测规则对象的侧视示意图。

图4是本发明中改进区域生长算法与目标对象定位算法流程图。

图5是本发明中由种子点开始进行搜索的示意图。

图6是本发明中点云区块沿竖直方向和水平方向法向量投影的示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及较佳实施例,对本发明进行进一步详细说明。应当理解,此处所描述的较佳实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。

图1是本发明一种基于改进区域生长算法的形状规则物体检测与定位方法较佳实施例的总流程图。如图1所示,以长方体目标物体为例,该方法主要包括以下操作步骤,下面将对其逐一进行具体解释说明。

首先,是环境信息的采集。

针对需要对形状规则目标物体进行检测与定位的移动装置,当移动装置由即时定位与地图构建系统移动至目标物体前的目标位置(x0,y0,z0),使用固定于移动装置上的深度相机采集目标物体所在环境的信息,得到包含目标物体的彩色图像和深度图像,图2是本发明中使用深度相机采集目标物体所在环境信息的示意图。

接着,是点云的预处理。

在此步骤中,通过获取的彩色图像和深度图像转化得到反映当前环境三维信息的点云,结合即时定位与地图构建系统在相机坐标系深度方向上也即图2中ZC轴正方向上的定位误差Δz及目标物体在世界坐标系中的摆放位置(xw,yw,zw),可确定目标物体在深度方向上分布的最近距离dmin及最远距离dmax,其中dmin被计算为dmin=zw-z0-Δz,dmax被计算为dmax=zw-z0+Δz,进而对过近及过远距离点云进行滤除,随后依次对点云进行体素滤波及概率滤波,以实现对点云的降采样及离群点剔除。

最后,是形状规则物体的检测。

在此步骤中,对于预处理后的点云,首先通主成分分析对其单位法向量及曲率进行计算,进而利用本发明提出的融合定位系统的改进区域生长算法,对点云进行单次快速生长分割得到被分割为一类的点云区块,进而将点云区块分别沿水平方向、法线也即图2中XC轴正方向及竖直方向法线也即图2中YC轴正方向投影,通过拟合得到两点云边线,由两点云边线可分别计算出点云区块的两边长度,将此两边长度与目标物体的正视平面边长进行比较,若边长相对误差小于给定阈值,则认为当前点云区块对应于目标物体,即完成目标物体的检测。

本发明以与中心点距离越小、点曲率越小则优先选取的原则选取种子点。更具体而言,可首先参看图3所示的本发明中使用深度相机检测形状规则物体的侧视示意图。在区域生长算法中引入即时定位与地图构建系统的水平方向上也即图2中XC轴正方向上的定位误差Δx,目标物体正视平面的长l,宽w,目标物体离地高度h,深度相机坐标系原点离地高度hc,(x0,y0,z0)为相机的拍摄位置坐标。进而可唯一确定图1中所示的目标物体正视平面点云在相机坐标系水平方向上的分布范围为[xw-x0-Δx,xw-x0+Δx],在竖直方向上的分布范围为[hc-h-w,hc-h],进而其分布范围的中心点为 由此用于种子点选取的排序比较函数需满足,其中种子点为点云进行生长分割的起始点,x1,y1及x2,y2为两待比较点的水平及竖直方向的坐标值,curvature1,curvature2为此两点对应的曲率;相应地,点云经过上述排序函数完成排序后,将得到的有序点云依次作为生长分割的起始点也即种子点。

图4是本发明中改进区域生长算法与形状规则物体定位算法流程图,详细地展示了对形状规则物体进行检测与定位的具体流程。从种子点序列中取出首个排序后的种子点,然后需要先对种子点进行预验证处理。对于深度相机获取的彩色图像,将其以p=(R*38+G*75+B*15)>>7转换为灰度图像,其灰度图像像素值的平均偏差被计算为其中(R,G,B)为彩色图像中每个像素点对应的像素值,p为每个像素点的灰度值,为灰度图像的灰度平均值,n为像素点数,若μ<tμ,则当前处于黑暗环境中,在此次目标物体检测过程中,不对种子点进行预验证处理;相应地,对于在种子点序列中按序选取的种子点,若种子点在深度相机获取的彩色图像中所对应的像素点的像素值(Rr,Gr,Br)与目标正视平面真实的像素值(Rt,Gt,Bt)之间的偏离程度大于给定的阈值,则跳过当前种子点,在种子点序列中选取下一个种子点,其中tμ为给定的像素偏差阈值,由实验测试得到,即分别在明亮及黑暗环境中计算多组灰度图像像素值的平均偏差,在其中找出明亮和黑暗环境的界限平均偏差值,将其作为像素偏差阈值。

图5是本发明中由种子点开始进行搜索的示意图,对种子点及其邻域一点的点云法线进行了展示。由种子点开始邻域搜索生成点云区块,仅当该点位于所述目标正视平面点云分布范围内,且与种子点属于同一视图,才唯一确定其与种子点属于同一点云区块。更具体地,当种子点通过了预验证处理过程,由种子点开始进行搜索,对于由种子点开始进行搜索的点云,仅当其与目标物体分布范围中心点的距离ddis小于阈值tdis,其法线与种子点的法线夹角dang小于阈值tang,其曲率与种子点的曲率差的绝对值dcur小于阈值tcur,才唯一确定其与种子点属于同一点云区块,其中dang=cos-1(normal·normalroot),dcur=|curvature-curvatureroot|,若当前点云不满足以上任意条件,则此点云丢弃,进行对下一点云的判断;相应地,若当前种子点邻域范围内任一点云均不再满足阈值条件,则当前点云区块分割完成,其中x,y为当前点的水平及竖直方向坐标值,normal为当前点法向量,normalroot为种子点法向量,两单位法向量的点乘结果为两法向量夹角的余弦值,curvature为当前点曲率,curvatureroot为种子点曲率;各阈值同样均由实验测试得到,即对包含目标物体的点云进行生长分割,能够保证准确分割出目标物体所在点云区块的测试阈值作为设定的阈值。

将点云区块分别沿水平方向和竖直方向法线投影,投影后提取目标轮廓。图6是本发明中点云区块沿竖直方向和水平方向法向量投影的示意图,在图6中,对于首个由种子点搜索判别得到的点云区块,首先将其沿竖直方向法向量ny投影至XOZ平面得到点集PXOZ={(xi,zi)},其中xi表示编号为i的点在X轴上的坐标值,zi表示编号为i的点在Z轴上的坐标值,使用直线的二维点进行拟合,拟合方程为其中经最小二乘拟合后可得到直线的斜率k及截距b,进一步根据xi的大小对二维点进行排序,排序后取出xi最小的点(xmin,ymin),xi最大的点(xmax,ymax);相应地,可求出前述两点在拟合得到的直线上的投影间的距离dl,其中两点投影间的距离被计算为相应地,将其沿水平方向法向量nx投影至YOZ平面后,对得到的二维点经相似操作可得到两端点投影间的距离dw

对于经投影计算得到的点云区块长度dl与目标物体正视平面的长l间的相对误差为计算得到的点云区块宽度dw与目标物体正视平面的宽w间的相对误差为仅当相对误差满足当前点云区块为目标物体所对应点云区块,即检测到目标物体,此时改进区域生长算法全部完成;否则丢弃此点云区块,在种子点序列中按序取出新的种子点进行新一轮的分割检测过程,其中e为相对误差阈值,e=0.05。

当完成了形状规则物体的检测,需对检测出的目标物体进行定位。对于经分割得到的目标物体点云分别沿竖直方向法向量ny及水平方向法向量nx的投影,并使用最小二乘方法进行直线拟合得到的直线和直线其中k1,b1及k2,b2为两直线的斜率及截距,目标物体沿竖直方向的偏转角可表示为ω=tan-1k1;相应地,目标物体正视平面的右下端点在相机坐标系下的深度被计算为zr=k2(hc-h)+b2,进一步地,目标物体正视平面的右下端点在相机坐标系X轴上的坐标值被计算为故目标物体正视平面的右下端点坐标为(xr,hc-h,zr),目标物体正视平面中心点在相机坐标系X轴及Y轴的坐标被计算为在分割得到的点云中按照计算得到的坐标搜索,可得到目标正视平面中心点在Z轴的坐标值,由此完成目标物体在相机坐标系下的定位。

特别地,对于位于斜坡上的形状规则物体,对其进行检测需使用双深度相机完成。双深度相机分主视深度相机及俯视深度相机,首先俯视深度相机采用前述方法完成目标物体俯视平面的检测,由目标物体俯视平面沿水平方向法向量投影得到的直线其中k3,b3为该直线的斜率及截距,斜坡倾角被计算为θ=tan-1k3;相应地,主视深度相机进行目标物体主视平面的检测,其中点云区块的投影应改为沿着与斜坡平面垂直的法向量nt及水平方向法向量nx进行,nt满足进而利用前文所述的目标物体检测方法即可完成检测。

本发明不局限于长方体,同样适用于譬如正方体、圆锥体、圆柱体,正视平面为规则几何形状的复合几何体等规则对象。

本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

14页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:坐标修正方法及装置、电子设备、计算机可读介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!