基于成像平面转换的非标定手持式廓形检测方法及装置与流程

文档序号:21273526发布日期:2020-06-26 23:05阅读:162来源:国知局
基于成像平面转换的非标定手持式廓形检测方法及装置与流程

本发明属于图像处理领域,更具体地,涉及一种基于成像平面转换的非标定手持式廓形检测方法及装置。



背景技术:

随着大数据和人工智能的普及,海量的数据逐渐涌入到生产和生活的方方面面,而数据获取这一环所起到的基础作用也更加突出。传感器作为数据获取的重要器件,就像是流水线上的一双“眼睛”,持续地采集着各种数据,给后续的加工和处理提供不可或缺的信息。在生产过程中,物体的表面轮廓信息是一个重要的参数,可以用于引导机器人作业,也可以用于产品质量的监测。

目前,物体表面轮廓信息的测量方法可以分成两大类:接触式测量方式和非接触式测量方式。其中,接触式测量方式主要是以坐标测量机等为手段,由系统控制测头与被测对象直接进行接触,根据接触时传感器所接收到的各种反馈信号来测量和记录当前测头所在位置的三维坐标数据。而非接触式测量主要是以光电、电磁和超声等技术为基础,在测头与被测对象不直接进行接触的情况下,获取物体表面的几何信息。

通常来说,接触式测量方式的测量精度可以达到比较高的水平,而且不会受被测量物体表面光学特性的影响,但不适合测量较易受到外力影响的表面,且其成本较高、速度较慢,对测量的环境要求往往也十分严格,这些都制约着它的应用范围。而非接触式测量方式多使用线结构光原理,将光束或者光栅投射到待测物体的表面,物体表面高低起伏的不同形状实际上对光形成了一种调制,再将其向外界反射,此时在合适的位置用摄像机来捕获这种光信息,经过一系列处理,就可以还原出其中所包含的轮廓信息。但目前常见的非接触式测量装置在检测物体的廓形时需要固定在待测物体上,且每次移动都需要重新进行标定,使用起来较为繁琐。还有的产品存在便携性不够好、检测耗时较长和价格过于昂贵等问题。



技术实现要素:

针对现有技术的以上缺陷或改进需求,本发明提出了一种基于成像平面转换的非标定手持式廓形检测方法及装置,由此解决现有非接触式廓形检测方法每次移动都需要重新标定,造成操作繁琐的技术问题,可以提高处理速度、精度以及使用灵活性。

为实现上述目的,按照本发明的一个方面,提供了一种基于成像平面转换的非标定手持式廓形检测方法,包括:

(1)接收待测物体的第一目标图像,其中,所述第一目标图像中包括激光条纹,所述激光条纹位于所述待测物体表面与激光平面的交线上;

(2)提取所述第一目标图像中的激光条纹的中心线上各第一目标点的像素坐标;

(3)根据预设的相机坐标系下的激光平面方程及各所述第一目标点的像素坐标,将各所述第一目标点从成像平面转换到激光平面,进而得到各所述第一目标点在相机坐标系下的坐标值;

(4)基于各所述第一目标点在相机坐标系下的坐标值,连接各所述第一目标点得到所述待测物体的轮廓线,将所述轮廓线投影到激光平面,得到所述待测物体廓形的正视图。

优选地,步骤(2)包括:

(2.1)对所述第一目标图像进行畸变校正,再从畸变校正后的图像中提取出廓形图像特征区域,然后滤除廓形图像特征区域存在的噪声得到第二目标图像;

(2.2)将所述第二目标图像中所有像素点的一阶偏导数和二阶偏导数组成hessian矩阵,得到所述hessian矩阵中的最大特征值对应的特征向量,将所述最大特征值对应的特征向量作为激光条纹的法线方向;

(2.3)若所述第二目标图像的像素点中存在一阶导数为零的亚像素点,且所述亚像素点在所述法线方向的二阶导数大于预设阈值,则所述亚像素点是激光条纹中心线上的点,将保存所述亚像素点的像素坐标。

优选地,步骤(3)包括:

(3.1)基于相机坐标系到像素坐标系的转换方程及所述摄像机的内参得到各所述第一目标点的像素坐标与各所述第一目标点在相机坐标系下的三维坐标之间的目标关系式;

(3.2)由预设的相机坐标系下的激光平面方程及所述目标关系式,得到各所述第一目标点在相机坐标系下的三维坐标。

优选地,在步骤(3)之前,所述方法还包括:获取预设的相机坐标系下的激光平面方程的步骤:

(a)利用圆阵列标定板标定得到摄像机的畸变参数以及内参和外参;

(b)接收所述圆阵列标定板的第三目标图像,其中,所述第三目标图像中包括激光条纹,所述激光条纹位于所述圆阵列标定板表面与激光平面的交线上;

(c)提取所述第三目标图像中激光条纹的中心线上各第二目标点的像素坐标;

(d)由各所述第二目标点的像素坐标、所述摄像机的畸变参数以及内参和外参,将各所述第二目标点从成像平面转换到圆阵列标定板平面,进而得到各所述第二目标点在相机坐标系下的三维坐标;

(e)根据各所述第二目标点在相机坐标系下的三维坐标得到相机坐标系下的激光平面方程。

优选地,步骤(d)包括:

由所述圆阵列标定板上的若干圆点的目标中心点在世界坐标系下的坐标及由所述摄像机外参得到的旋转矩阵和平移矩阵,得到各所述目标中心点在相机坐标系下的坐标;

基于各所述目标中心点在相机坐标系下的坐标,利用最小二乘法确定所述圆阵列标定板所在的平面参数,进而得到所述圆阵列标定板平面在相机坐标系下的方程;

基于各所述第二目标点的像素坐标、相机坐标系到像素坐标系的转换关系、所述摄像机的内参及所述圆阵列标定板平面在相机坐标系下的方程得到各所述第二目标点在相机坐标系下的三维坐标。

按照本发明的另一个方面,提供了一种基于成像平面转换的非标定手持式廓形检测装置,包括:

接收模块,用于接收待测物体的第一目标图像,其中,所述第一目标图像中包括激光条纹,所述激光条纹位于所述待测物体表面与激光平面的交线上;

第一坐标值获取模块,用于提取所述第一目标图像中的激光条纹的中心线上各第一目标点的像素坐标;

第二坐标值获取模块,用于根据预设的相机坐标系下的激光平面方程及各所述第一目标点的像素坐标,将各所述第一目标点从成像平面转换到激光平面,进而得到各所述第一目标点在相机坐标系下的坐标值;

轮廓确定模块,用于基于各所述第一目标点在相机坐标系下的坐标值,连接各所述第一目标点得到所述待测物体的轮廓线,将所述轮廓线投影到激光平面,得到所述待测物体廓形的正视图。

优选地,所述第一坐标值获取模块包括:

图像处理模块,用于对所述第一目标图像进行畸变校正,再从畸变校正后的图像中提取出廓形图像特征区域,然后滤除廓形图像特征区域存在的噪声得到第二目标图像;

特征向量获取模块,用于将所述第二目标图像中所有像素点的一阶偏导数和二阶偏导数组成hessian矩阵,得到所述hessian矩阵中的最大特征值对应的特征向量,将所述最大特征值对应的特征向量作为激光条纹的法线方向;

判断处理模块,用于在所述第二目标图像的像素点中存在一阶导数为零的亚像素点,且所述亚像素点在所述法线方向的二阶导数大于预设阈值时,则所述亚像素点是激光条纹中心线上的点,将保存所述亚像素点的像素坐标。

优选地,所述第二坐标值获取模块包括:

坐标关系式获取模块,用于基于相机坐标系到像素坐标系的转换方程及所述摄像机的内参得到各所述第一目标点的像素坐标与各所述第一目标点在相机坐标系下的三维坐标之间的目标关系式;

第三坐标值获取模块,用于由预设的相机坐标系下的激光平面方程及所述目标关系式,得到各所述第一目标点在相机坐标系下的三维坐标。

优选地,所述装置还包括:

参数获取模块,用于利用圆阵列标定板标定得到摄像机的畸变参数以及内参和外参;

图像接收模块,用于接收所述圆阵列标定板的第三目标图像,其中,所述第三目标图像中包括激光条纹,所述激光条纹位于所述圆阵列标定板表面与激光平面的交线上;

提取模块,用于提取所述第三目标图像中激光条纹的中心线上各第二目标点的像素坐标;

第四坐标值获取模块,用于由各所述第二目标点的像素坐标、所述摄像机的畸变参数以及内参和外参,将各所述第二目标点从成像平面转换到圆阵列标定板平面,进而得到各所述第二目标点在相机坐标系下的三维坐标;

激光平面方程获取模块,用于根据各所述第二目标点在相机坐标系下的三维坐标得到相机坐标系下的激光平面方程。

优选地,所述第四坐标值获取模块,用于由所述圆阵列标定板上的若干圆点的目标中心点在世界坐标系下的坐标及由所述摄像机外参得到的旋转矩阵和平移矩阵,得到各所述目标中心点在相机坐标系下的坐标;基于各所述目标中心点在相机坐标系下的坐标,利用最小二乘法确定所述圆阵列标定板所在的平面参数,进而得到所述圆阵列标定板平面在相机坐标系下的方程;基于各所述第二目标点的像素坐标、相机坐标系到像素坐标系的转换关系、所述摄像机的内参及所述圆阵列标定板平面在相机坐标系下的方程得到各所述第二目标点在相机坐标系下的三维坐标。

总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:本发明通过基于成像平面转换的方法,使测量精度能够保持在0.05mm以内,且向用户提供了较为直观和简便的操作方式,通过设计的非标定方式,解决了现有的廓形检测装置不够便携且数据处理过程比较耗时的问题,用户在使用时无需再进行繁琐的标定操作。

附图说明

图1是本发明实施例提供的一种基于成像平面转换的非标定手持式廓形检测方法的流程示意图;

图2是本发明实施例提供的一种基于成像平面转换的非标定手持式廓形检测装置的结构示意图;

图3是本发明实施例提供的一种物理结构示意图;

图4是本发明实施例提供的一种基于成像平面转换的非标定手持式廓形检测系统的结构示意图;

图5是本发明实施例提供的一种图像采集部分的工作流程示意图;

图6是本发明实施例提供的另一种基于成像平面转换的非标定手持式廓形检测方法的流程示意图;

图7是本发明实施例提供的一种提取中心线部分的流程示意图;

图8是本发明实施例提供的一种成像平面到标定平面转换的流程示意图;

图9是本发明实施例提供的一种成像平面到激光平面转换的流程示意图。

具体实施方式

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

在本发明实例中,“第一”、“第二”、“第三”等是用于区别不同的对象,而不必用于描述特定的顺序或先后次序。

本申请实施例所涉及到的客户端可以是具备显示屏及联网功能的终端,该终端可以包括各种智能手机、平板电脑或计算设备等,以及各种形式的用户设备(userequipment,ue),移动台(mobilestation,ms),终端设备(terminaldevice)等。

本发明设计了一种基于成像平面转换的非标定手持式廓形检测方法。根据此方法制作的装置只需在出厂时进行初始化,用户在使用时无需再进行繁琐的标定操作,且该装置不必固定在特定的位置,小巧的体积也可以适合手持,因此操作更加灵活,适合经常移动的应用场景。采用本发明测得的廓形与标准值间的误差可以控制在0.05mm以内。

如图1所示是本发明实施例提供的一种基于成像平面转换的非标定手持式廓形检测方法的流程示意图,包括以下步骤:

s1:接收待测物体的第一目标图像,其中,第一目标图像中包括激光条纹,激光条纹位于待测物体表面与激光平面的交线上;

s2:提取第一目标图像中的激光条纹的中心线上各第一目标点的像素坐标;

s3:根据预设的相机坐标系下的激光平面方程及各第一目标点的像素坐标,将各第一目标点从成像平面转换到激光平面,进而得到各第一目标点在相机坐标系下的坐标值;

s4:基于各第一目标点在相机坐标系下的坐标值,连接各第一目标点得到待测物体的轮廓线,将轮廓线投影到激光平面,得到待测物体廓形的正视图。

如图2所示是本发明实施例提供的一种基于成像平面转换的非标定手持式廓形检测装置结构示意图,包括:

接收模块,用于接收待测物体的第一目标图像,其中,第一目标图像中包括激光条纹,激光条纹位于待测物体表面与激光平面的交线上;

第一坐标值获取模块,用于提取第一目标图像中的激光条纹的中心线上各第一目标点的像素坐标;

第二坐标值获取模块,用于根据预设的相机坐标系下的激光平面方程及各第一目标点的像素坐标,将各第一目标点从成像平面转换到激光平面,进而得到各第一目标点在相机坐标系下的坐标值;

轮廓确定模块,用于基于各第一目标点在相机坐标系下的坐标值,连接各第一目标点得到待测物体的轮廓线,将轮廓线投影到激光平面,得到待测物体廓形的正视图。

如图3所示,提供了一种基于成像平面转换的非标定手持式廓形检测的物理结构示意图,包括:摄像机、激光器及控制模块;

控制模块,用于驱动激光器向待测物体发射激光,然后驱动摄像机采集含有激光条纹的待测物体图像,并向服务器发送含有激光条纹的待测物体图像。

其中,控制模块通过通信模块与服务器实现通信连接。

其中,控制模块可以通过fpga实现,通信模块可以通过wifi通信模块实现。

如图4所示,提供了一种基于成像平面转换的非标定手持式廓形检测系统,包括:服务器、摄像机、激光器、控制模块及客户端;

服务器,用于接收激光器发送的含有激光条纹的待测物体图像,并执行基于成像平面转换的非标定手持式廓形检测方法,并将处理得到的待测物体的廓形信息向客户端发送;

客户端,用于接收待测物体的廓形信息,并进行显示。

在本发明实施例中,客户端,还用于向装置中的控制模块发送操作指令,以使控制模块执行操作指令所指示的操作。

其中,控制模块的fpga芯片驱动可以基于esp8266系列的超低功耗的uart-wifi模组,网卡驱动程序可以为移植入ieee802.11协议的网卡驱动程序,主要使用了veriloghdl语言。

其中,服务器端可以使用c++语言,包括图像接收和处理、三维坐标求解、成像平面转换和廓形数据的处理,接收控制模块传来的图像后在服务器端完成所有的处理,得到完整的廓形数据。

其中,在客户端的用户界面上显示出得到的原始廓形,同时给用户提供对廓形进行一些简单处理和测量的选项,根据用户选择的项目对廓形进行进一步处理后重新显示在界面上,直至满足用户的需求。另外还提供数据的导出,即保存功能。

在本发明实施例中,上述是实现本发明的基于成像平面转换的非标定手持式廓形检测方法的一种硬件实现方式,具体还可以采用其他方式实现,本发明实施例不做唯一性限定。

以下结合附图5~9对本发明实现过程进行详细说明,需要说明的是下述实施例所采用的器件型号等只是一种可选的实施方式,不应理解为对本发明的限制。

(1)图像采集

如图3所示,对摄像机及激光器的姿态进行调整,直至激光能够投射到物体的轮廓上,并调整激光器与待测物体间的直线距离,使物体表面反射出的激光线更集中且均匀,在客户端上预览并点击按钮通过控制模块保存当前的图像。

图5中的图像采集部分选用了ov5642相机模组,控制模块驱动ov5642相机实时采集含有激光条纹的图像,将图像传回控制模块fpga芯片之后对其进行预处理,再通过wifi模块创建的局域网与服务器端连接,将图像传输至服务器端。

(2)服务器端的处理

服务器端的处理可以分为两步,第一步如图6中的(a)所示,在初始化时执行;第二步如图6中的(b)所示,在检测待测物体的廓形时执行。

第一步的流程是先将圆阵列标定板分别置于n(一般取n>=5)个不同的位置,用摄像机各拍摄一张图像并将图像发送至服务器端,在服务器端利用标定工具处理这些图片,确定摄像机的畸变参数以及内参矩阵和外参矩阵。再在同样的n个位置处各向标定板上投射一束线激光,由服务器端接收装置发送的带激光条纹的标定板图像数据,然后再提取出激光条纹的中心线上的点,通过世界坐标系与相机坐标系及相机坐标系与成像平面的转换关系,完成从成像平面到标定板平面的转换后就可以得到中心线上的点在相机坐标系下的三维坐标,再用中心线上的点的三维坐标来确定激光平面的方程。若后续检测时精度不够,可以增大n的值。

第二步的流程是先由服务器接收带有激光条纹的物体图像,再提取出激光条纹的中心线上所有点的像素坐标,根据已知的激光平面方程将中心线上所有点从成像平面转换到激光平面后就得到了轮廓线上所有的点在相机坐标系下的三维坐标。将轮廓线上所有的点投影到激光平面,连接所有的投影点并对线条进行平滑处理就得到了最终的廓形,将其显示在客户端的用户界面中,并提供导出的选项以方便用户后续使用。

其中,第一步在初始化时完成,检测物体的廓形时只需执行第二步。根据该方法设计的装置中配有线激光器,用数字摄像机捕获附有激光条纹的图像并发送至服务器端,在服务器端对图像进行上述处理后显示在客户端。该方法的计算量较小,具有较好的实时性。利用此方法设计的装置在出厂前已进行初始化,用户无需标定即可使用,且装置体积较小、适合手持,无需固定、操作灵活,较适合经常移动的应用场景。由此装置测得的廓形与标准值间的误差可以控制在0.05mm之内。

提取中心线的流程如图7所示。获取含有激光条纹的图像之后,先对图像进行畸变校正,再从图像中提取出廓形图像特征,进行形态学处理之后,提取激光条纹的中心线,并将中心线的数据保存在文件中。

(3)成像平面转换

(31)成像平面到标定板平面的转换

如图8所示,先将获得的像素坐标转换到成像平面上,再求成像平面到相机坐标系的转换以及世界坐标系到相机坐标系的转换,最终完成从成像平面到标定板平面的转换,得到相机坐标系下的三维坐标。

(32)成像平面到激光平面的转换

如图9所示,先将获得的像素坐标转换到成像平面上,再求成像平面到相机坐标系的转换以及世界坐标系到激光平面的转换,最终完成成像平面到激光平面的转换,得到相机坐标系下的三维坐标。

(4)廓形显示和导出

将求出的廓形显示在客户端的用户界面上,并提供简单的处理选项,用户在调整到满意的状态之后,可以选择将廓形数据导出。

各步骤的具体操作过程如下:

1、将圆阵列标定板分别置于几个不同的位置,用摄像机各拍摄一幅图像并将图像发送至服务器端,在服务器端利用标定工具处理这些图片,确定摄像机的畸变参数以及内参和外参;

2、用线激光器向标定板发射一束线激光,在激光平面和标定板表面的交线上会产生一条激光条纹,用摄像机拍摄时尽量使这条激光条纹位于图像的中心,再将图像发送至服务器端;

3、在服务器端对廓形特征进行提取:采用灰度阈值分割的方法,从图像数据中将不需要的背景信息滤除掉,从而分割出能够代表待测物体廓形特征的区域,具体实现方法依据如下公式:

式(1)中的f(i,j)表示服务器接收到的源图像中位于像素坐标(i,j)处的像素点的灰度值,g(i,j)表示处理后的目标图像中位于像素坐标(i,j)处的像素点的灰度值,t为分割的阈值,可以根据实际需要确定。当源图像中某个像素点的灰度值大于或等于阈值时,目标图像中的对应位置取相同的灰度值,当源图像中某个像素点的灰度值小于阈值时,目标图像中对应位置灰度值取零。

4、利用形态学方法来滤除特征提取后图像数据中廓形特征区域存在的噪声。

先用腐蚀法处理图像,有如下公式:

g(i,j)=min{f(i±δi,j±δj)}(2)

表示目标图像中位于像素坐标(i,j)处的像素点的灰度值g(i,j)等于源图像中该坐标处的像素点的领域内的最小的灰度值。

再用膨胀法处理图像,有如下公式:

g(i,j)=max{f(i±δi,j±δj)}(3)

表示目标图像中位于像素坐标(i,j)处的像素点的灰度值g(i,j)等于源图像中该坐标处的像素点的领域内的最大的灰度值。

5、对图像中的每一个像素点,求出其在i和j方向的一阶偏导数、二阶偏导数和混合偏导数,组成该点的hessian矩阵,再求出此矩阵的最大特征值对应的特征向量,此向量即为光条的法线方向。若当前像素范围内存在一阶导数为零的亚像素点,且在法线方向的二阶导数大于预设阈值,则该点就是光条中心线上的点,将其坐标保存下来;若不符合此条件,则不是中心线上的点,继续遍历下一个点。遍历整幅图像后就可以得到光条中心线上所有的点的像素坐标。

其中,预设阈值可根据实际需要来确定。

6、由成像平面转换到标定板平面

在世界坐标系下记某点的坐标为(xw,yw,zw),且该点在相机坐标系下的坐标为(xc,yc,zc),则两组坐标之间的关系如以下公式:

其中,r和t分别是由摄像机外参得到的旋转矩阵和平移矩阵。

在标定板上取若干个圆点的中心点,由于标定板的参数是已知的,所以可以确定选取的圆点的中心点在世界坐标系下的坐标(xw,yw,zw),将选取的圆点的中心点经过r和t矩阵的处理,可以得到它们在相机坐标系下的坐标(xc,yc,zc)。依据选取的圆点的中心点在相机坐标系下的坐标(xc,yc,zc),利用最小二乘法确定标定板所在的平面的参数ab、bb、cb和db,则标定板平面在相机坐标系下的方程可以表示为:

abxc+bbyc+cbzc=db(5)

记某一点在像素坐标系下的坐标为(u,v),则从相机坐标系到像素坐标系有如以下公式所示的转换关系:

将相关的参数用摄像机内参矩阵k来表示,并将式(6)改写成矩阵形式,则有:

设内参矩阵k的逆矩阵为k-1,则上式可以写成:

由于标定板上被线激光覆盖的目标点位于标定板平面上,且该目标点在成像平面上的成像位置可以确定,因此该目标点能同时满足式(5)和式(8),据此完成从成像平面到标定板平面的转换,就可以求出一整条激光线上所有的点在相机坐标系下的三维坐标,其中,激光线表示激光条纹中心线;

7、将标定板置于与步骤1中相同的几个位置,但保持相机和线激光不变,以此来改变标定板在相机坐标系中的位置,在每个位置都执行步骤2至6,最后可以得到若干条不同的激光线上所有的点在相机坐标系下的三维坐标,且这些点都位于同一个平面上。用这些点的坐标来拟合相机坐标系下激光平面的方程,记为:

alxc+blyc+clzc=dl(9)

利用此激光平面的方程,可以求出激光条纹中心线上所有的点在相机坐标系下的三维坐标。

8、由成像平面转换到激光平面

检测待测物体的廓形时,将标定板换成待测物体,再重复步骤2至步骤5,可以得到激光平面与物体表面的交线上所有的点的像素坐标。由于该物体与激光平面交线上的点在激光平面上,因此它满足式(9),再根据交线上的点的像素坐标,执行步骤6,可以得到:

根据式(9)和式(10),可以完成从成像平面到激光平面的转换,求出激光平面与物体表面的交线上的点在相机坐标系下的三维坐标(x′c,y′c,x′c)。

遍历一整条激光线上所有的点,可以得到它们在相机坐标系下的三维坐标,连接这些点可以得到一条完整的轮廓线,再将其投影到激光所在的平面,就得到了该物体廓形的正视图。

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

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