基于机器视觉的机械零件表面损伤检测研究

来源 :中国矿业大学 | 被引量 : 0次 | 上传用户:ZY5158598
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
在现代世界,制造业是各国工业和经济中最重要的组成部分之一。制造业的发展也体现在我们日常生活各方面的发展。尤其是在过去的几十年中,这种发展是可以看到的。然而,随着制造业的快速发展,我们这个地球上的自然资源越来越少,而且制造业的产品在其使用寿命结束后也变成了对环境有害的废弃物。为改变这种状况,世界各国相继提出了循环经济生产模式。循环经济是一种再生系统,在这一系统中,通过能源和材料循环,可以最大限度地减少资源输入和浪费、排放和能源泄漏,这可以通过全生命周期的设计、维护、维修、再利用、再制造、回收和升级循环来实现。这与线性经济形成鲜明对比,线性经济是一种“采取、制造、处置”的生产模式。作为循环经济的支柱,再制造的重要性近年来不断提高。因此,这一领域的研究工作在过去十年中显著增加。再制造是“利用重复使用、修理和新零件的组合,将产品重新制造到原始制造产品的规格”。它需要修理磨损或失效的部件和模块,更换会影响整体性能或预期寿命的退化部件。再制造是产品回收过程的一种形式,其完整性不同于其他回收过程:再制造的机器应与新机器符合相同的客户期望。再制造是绿色制造过程和循环经济“4R”(减量化、再利用、循环利用和再制造)的一部分。使用中的机械零件通常承受不同的载荷、应力和摩擦,这可能导致磨损或损伤。损伤类型有很多种,如裂纹、磨损、侵蚀、气蚀、断裂、变形等。用新零件更换损伤的零件会导致成本增加和资源浪费,特别是对于某些复杂的精密零件。从经济和时间方面来看,再制造损伤零件比更换新零件更好。再制造过程的主要阶段是核心部件的拆卸、清洁和检查,然后这些核心部件在重新组装成最终的再制造产品并进行测试以确保质量之前,经过一系列的再调整操作。在这些阶段中,损伤检测是决定零件再制造精度和效率的关键环节。目前,人们已经开发了许多不同的损伤检测技术,如人工检测、基于振动的损伤检测、三维激光扫描、基于图像的损伤检测等等。然而,这些技术有其自身的缺点。手工检验是劳动密集、成本高、不准确的,其结果必然取决于检验人员的技能水平。基于振动的损伤检测方法一般只适用于机械零件的操作,因为这种方法需要损伤零件的运动来收集数据。三维激光扫描方法虽能获得良好的效果,但对于大尺寸物体来说,它是一种耗时且不十分方便的方法。此外,点云中的噪声和缺失可能导致更多的错误信息。本文将研究基于二维摄像机图像的损伤检测,以便能够快速、有效地检测损伤区域和边界,从而找到损伤区域的精确位置,并建立损伤对象的三维模型,以便于进一步再制造。该方法包括三个主要步骤:图像匹配方法、损伤区域和边界检测方法以及三维模型创建和编辑方法。1)基于边界点的图像匹配方法在开始图像匹配之前,我们需要准备一个对象的三维模型并获得二维视图数据集。在本研究中,为了制备损伤的3D模型,首先需要制备损伤物体的原始(未损伤)3D模型。所以我们需要获取一个物体的尺寸和尺寸,当然,很多机械零件都有它们的标准尺寸,这些尺寸写在特定的目录和文档中。不同的三维设计工程师使用solidworks、catia、autodesk等三维建模软件,不同的建模软件建立不同的文件格式,如*.sldprt、*.catpart、*.3ds等,也可以导出不同格式的文件,如*.stl、*.obj、*.wrl等,文件格式可以是im。移植到Matlab等数值计算软件中。本文采用SolidWorks软件编制模型,导出STL文件格式,用于Matlab中,并用Matlab软件进行了计算。从三维模型中提取二维视图。三维模型以一个视点放置在三维空间中。视点的位置决定轴的方向。视点以方位角和仰角来指定。方位角是围绕z轴的水平旋转,从负y轴测量角度。高程是围绕Y轴的垂直旋转,从负Z轴测量角度。方位角是x-y平面上的极角,仰角是x-y平面上下的角度。为了获得二维视图,3D模型被放置在绘图框的中心。当视点从0度开始改变方位角和仰角5度后。首先,零度方位角和仰角由0度变为180度,从视点位置获取各位置图像。我们总共得到37幅图像,然后我们将方位角改变5度,仰角又从0度改变到180度,我们再次得到37幅图像。对方位角进行重复处理,直到其值达到180度,我们的数据集总共得到37x37=1369张图像。但是,取决于三维模型的方位角和仰角量会发生变化。所有二维视图都以可移植网络图形(PNG)文件格式保存。当然,方位角和仰角的范围可以从0度改变到360度,而且两个方位角或仰角值之间的间隔可以更小或更大。在我的研究案例中,由于物体的特殊结构,比如矩形和圆形的范围是从0度到180度。在准备好二维视图数据库后,可以开始图像匹配。图像匹配可以定义为使两个图像几何上一致,从而使两个图像中的相应像素对应于被成像场景的相同物理区域的过程。本研究提出的影像匹配方法,主要是寻找两个参考点,从这两个参考点中选取最近和最远的四个点,并计算这四个影像点的坐标差和参考点到最近和最远点的距离差,以寻找影像匹配,包括下列步骤:步骤1:图像分割和图像二值化首先,在获取图像对象和背景颜色时,需要选择相对的颜色,如黑白和背景颜色,选择单色,以便根据不同的颜色空间进行分割。众所周知,每种颜色都可以用RGB格式表示,所以当背景值和对象值之间存在较大差异时,可以通过查看它们来进行分割。分割完成后,背景区域变为黑色空间,图像二值化应用于对象变为白色或其像素值变为1,背景变为黑色或其像素值变为0的情况。在二维视图的情况下,二值化可以直接进行,而无需分割,因为完美的背景和对象在二维视图。为了将图像转换成需要转换成灰度的二值RGB图像,需要在保持亮度的同时,去除图像的色调和饱和度信息。采用OTSU方法对图像进行二值化,选择阈值使黑白像素的类内方差最小化。步骤2:将二维视图重新缩放为采集的图像因为在采集的图像和二维视图上,对象有不同的大小,并且由于采集的图像和二维视图的大小不同,需要重新缩放。要实现这一点,需要计算椭圆的长轴长度和短轴长度,该椭圆具有与作为标量返回的区域相同的标准化第二中心矩。第二个矩成为协方差矩阵k。实际上,这里将多元正态分布拟合到数据上,协方差矩阵确定了该分布的形状,多元正态分布的轮廓线是以平均值为中心的椭圆。椭圆轴线的方向和长度由协方差矩阵的特征向量和特征值给出。在计算获得的图像和二维视图的轴长后,我们可以通过s=Maac+Miac/Mavw+Mivw其中,Maaac为采集图像的长轴长度,,Miac为采集图像的短轴长度,“Mavw为二维视图的长轴长度,Mivw为二维视图的短轴长度,S为比例。所以在它之后,我们用S值重新缩放二维视图。步骤3:选择参考点需要选择四个参考点,两个点在采集的图像上,两个点在二维视图上,对于采集的图像,最好选择角等点。在这种情况下,在图像的左上角选择了一个点,在图像的右上角选择了另一个点。对于二维视图,选定的一个点采集图像,第二个点将与采集图像的第二个点(右上角)相同。由于图像的坐标相同,即使第二个点在图像上,下一步计算也不会有任何问题。此外,图像或像素索引行的坐标系也会增加下降,而列向右增加,像素索引整数值。原点的像素索引为1和1。步骤4:检测最近点在这一步中,将计算到所采集图像和二维视图的第一个参考点的最近点。为了实现这一点,我们需要检测图像边缘的所有点,或者简单地计算两幅图像的二值图像边界。此边界是对象和图像背景之间的外部边界。所以边界计算为像素坐标数组。为了找到与第一个参考点最近的点,参考点与边界上点之间的最小距离按以下公式计算:其中D为第一参考点与边界点之间的距离,Rc和Rr分别为第一参考点的列和行索引,Bc和Br为边界点的列和行索引。在研究案例中,两个图像的第一个参考点是原点,因此方程变为在计算参考点和边界之间的所有距离后,最小距离将显示与参考图像最近的点。步骤5:覆盖最近点叠加两个图像的最近点就是将一个点移动到另一个点。在这里,二维视图的最近点正朝着获取图像的最近点移动。最近的点需要移动一段距离,显示两个点的列和行之间的差异。假设dx是列中的差,dy是行中的差。二值图像可以用mxn矩阵表示,其中m是像素行数,n是像素列数。因此,要将二维视图的最近点移动到采集的图像的最近点,需要将二维视图图像作为矩阵按dx在列中移动,按dy在行中移动。步骤6:寻找最近和最远的点在得到第5步的新图像后,参考点仍然相同。此步骤与步骤4类似。唯一的区别是所有两个参考点都用于采集图像和二维视图。最小值D表示最近点,最大值D表示最远点。所以我们得到了8个距离:D1是根据第一个参考点获得的图像上的最近距离,D2是根据第一个参考点获得的图像上的最大距离,D3是根据第二个参考点获得的图像上的最近距离,D4是根据第二个参考点获得的图像上的最大距离,D5是根据第一个参考点在二维视图上最接近的距离,D6是所获取的二维到第一个参考点的最大距离,D7是根据第二个参考点在二维视图上的最近距离,D8是根据第二个参考点在二维视图上的最大距离。分别指向该点P1、P2、P3、P4、P5、P6、P7、P8。然而,距离D1= D5,点P1=P5,因为第五步。步骤7:距离和坐标差在这一步中,计算所采集图像和二维视图的距离和坐标差。因此,从第一个参考点到最近点的距离差基本上是dD1=|D1-D5| =0,,从第一个参考点到最远点的距离差是dD2=|D2-D6|,从第二个参考点到最近点的距离差是dD3=|D3-D7|,从第一个参考点到最远点的距离差是dD4=|D4-D8|。点的坐标差计算为这些点之间的距离差。步骤8:找出最小差异以上步骤对所有二维视图重复,这意味着所采集的图像与每个二维视图按照步骤1到7进行匹配。然后创建七组不同的差异(每个匹配过程的第一个差异等于零)。在它之后,这个集合从最小到最大排序,当然索引也改变了它的位置,然后在这七个集合中,我们找到了在所有索引中首先重复的索引,这样它将显示这个图像的所有七个距离都小于另一个图像的距离,并且这个图像将成为最佳匹配。(2)基于光差水平的损伤检测研究损伤检测是再制造过程中损伤检测阶段的重要组成部分。损伤检测方法有很多种。本研究采用基于图像的损伤检测案例。然而,在开始损伤检测之前,需要对图像进行预处理。损伤检测方法在本研究中,高度依赖于图像预处理,主要通过形态学开窗操作来检测二维图像的光强差。通过应用形态学开孔,对不均匀光照进行了校正。校正光照损伤区域和未损伤区域后,光照强度变差,通过二值化图像可以检测出损伤区域。步骤1:图像分割和灰度图像此步骤与第章的步骤1类似,这里使用相同的采集图像,通过相同的操作分割和转换灰度。步骤2:形态开放手术在这幅图像上,损伤区域是前景,未损伤区域是背景。图像中物体的光照也存在差异,为了纠正不均匀光照,采用了形态开口。形态开度是结构单元B对A集的扩张和侵蚀,AoB=(A(?)B)(?)B,其中(?)和(?)分别表示侵蚀和扩张。该开口作为去除形态噪声的基本工具,在计算机视觉和图像处理中发挥着重要作用。打开会从前景中删除小对象,通常作为图像的亮像素,并将其置于背景中。这种技术也可以用来在图像中找到特定的形状。开放可以用来找到特定的结构元素可以适合的东西。它可以被认为是B扫过A的边界内部,这样它就不会延伸到边界之外,并在元素边界周围形成A边界。如前所述,选择对象的未损伤区域作为背景。一般来说,即使在可能的最佳条件下,图像的照明也不可能是均匀的。因此,为了校正图像的光照,在本研究中,应用了上述形态开口的未损伤表面或背景的光照。为了使背景照明更均匀,需要创建一个背景近似值作为单独的图像,然后从图像中减去该近似值。作为创建背景近似图像的第一步,使用形态开口移除整个前景。打开具有删除不能完全包含结构元素的对象的效果。要从图像中删除损伤区域,必须调整结构元素的大小,使其不能完全适合单个损伤区域。步骤3:从初始图像中减去背景近似图像由于已知图像是以矩阵形式表示的,所以从初始图像中减去背景近似图像就是两个相同尺寸矩阵的相减运算。步骤4:图像调整在减法运算后获得的一幅新图像中,为了使图像更清晰、更准确地看到背景和前景之间的差别,需要增加对比度。它也有助于生成二进制图像。在图像中,底部1%和顶部1%是饱和的。步骤5:二值化和噪声消除经过饱和度调整后的图像需要传输到二值图像。采用Otsu方法对图像进行二值化,选择阈值使黑白像素的类内方差最小化。图像二值化完成后,二值图像上的背景会变黑,前景会变白,如前所述,前景会被破坏区域,但也因为不可能产生完全完美的照明,二值图像上的一些小区域也会变白,产生所谓的噪音。当损伤区域边界形成以后,这些噪声将成为障碍物,需要去除。通过选取最大噪声大小的像素的阈值进行噪声去除,然后从二值图像中去除所有小于阈值像素的连接分量,生成新的二值图像,不产生任何噪声,只产生损伤区域。此外,在检测到损伤区域后,它们的边界可以被视为非直线,而是锯齿形,这将导致损伤区域再制造更困难的方式,将边界线改为更方便的形式,在损伤区域上采用圆盘近似的形态闭合操作。盘形结构元素根据损伤区域边缘的大小手动指定半径。形态闭合是由结构元素B对二值图像A的侵蚀和膨胀,其中AoB=(A(?)B)(?)B此处(?)和(?)分别表示膨胀和侵蚀。经过图像预处理,建立损伤区域的三维模型,重建损伤的三维模型,损伤区域及其边界是必要的。损伤区域检测与其边界检测方法有关。检测边界的方法与第三章中描述的方法相同,这里将更详细地描述。预处理后图像上的损伤区域是与图像背景无关的白色区域,这意味着损伤区域是与图像的一般背景分离的区域,即除损伤对象外的背景。黑色区域已经显示出未损伤的区域,这些区域是分开的,但由于它们的大小非常小,因此它们被视为噪音。与图像背景相连的物体上的区域意味着它们具有与背景相同的亮度,以及与背景分离的区域,其亮度与图像的其他部分不同。在二值图像中,在去除噪声和校正边界形状后,需要检测出损伤区域的边界。基于二值图像中前景区域和白色区域之间的差异进行边界检测和提取,在本研究中,它是图像的损伤区域和背景或黑色区域,在本研究中,它是未损伤区域和其他区域。利用MATLAB实现了雅各布停止准则修正的摩尔邻域跟踪算法,实现了边界检测。摩尔邻域是一个二维方格,由一个中心单元和围绕它的八个单元组成。给定一个数字图案,背景上的一组白色像素位于黑色像素上,找到一个白色像素并将其声明为起始像素。定位起始像素可以通过多种方式完成,例如从左上角开始,从上到下扫描每一列,从最左边的列开始,然后向右移动,直到遇到白色像素。摩尔邻域跟踪算法在特定方向(顺时针或逆时针)搜索当前边界像素的摩尔邻域,直到找到一个白色像素。然后它声明像素作为当前边界像素,并像以前一样继续。这意味着当前边界像素成为新的起始像素。采用雅各布停止准则终止算法。雅各布斯的停止准则要求,当算法在第一次访问开始像素的相同方向上第二次访问开始像素时,算法终止。整个过程从检测起点到算法结束,在图像中再次重复,寻找与第一个区域分离的区域,直到图像上不再有起点,即所有区域边界都被跟踪。3)损伤零件三维模型重建方法在开始重建损伤的三维模型之前,需要提取损伤区域边界和重建损伤区域边界。损伤区域的边界需要重建为三维模型,但从图像只能获取二维数据,边界只能绘制为二维图,损伤区域边界的三维或深度是手工选择的,由于这些损伤是表面损伤,所以选择的深度值不是很大。提取损伤区域的边界,并将其存储在少量的mx2矩阵中。在这些矩阵中,第一列是y,第二列是x坐标,同时由于图像的坐标系不同,需要从所获取图像大小的行值中减去y坐标,得到一个图。为了在图像上建立损伤物体的三维模型,首先基于损伤区域的边界坐标建立二维图。如前所述,因为从图像中只能提取二维数据来创建三维视图,所以Z方向值是手动选择的,且该值不大,而且Z方向值是常量。这里是作为一个单位。创建两个二维图,其中x和y值取自边界,而z值取自1和0。之后,这两个二维图需要连接起来,就像在它们之间创建一个曲面一样。为了将三维模型重构为损伤模型,需要将三维模型放置在获取图像的位置,以检测正确的表面,并在其表面上创建损伤区域。将使用与采集图像相匹配的二维视图。如前所述,二维视图的提取是按照先方位角变化5度的顺序进行的,然后根据从1到提取结束的索引,将高程和二维视图保存下来,以帮助找到正确的表面。在本研究案例中,实验仅使用58个二维视图,因为使用的零件的特定形状,前视图是圆形的,从顶部或左侧看,它看起来像矩形的,所以通过采取固定的方位角,90度,只有5个仰角从-90度变为0度,然后改变方位角值,180度,5个仰角从0度变为90度。ee,在恒定高度-180度的情况下,方位角从0度改为-90度。第三章通过寻找最佳匹配的二维视图也找到了它的索引,并利用该索引找到了方位角和仰角值,在这种情况下,索引值为15,在方位角为90,仰角为-90+5*15=-15的情况下。根据它放置零件。三维绘图和三维模型的边界尺寸不同,其原因在于边界是从一个既有对象又有背景的图像中得到的,因此对象位置不是从原点开始的。但是,三维模型的位置是从一个原点开始的,这会导致损伤边界和三维模型的实际位置不同,并且由于图像上对象的大小与三维模型的大小不同,绘制边界的大小和需要的边界也不同。由于三维模型坐标系的存在,边界坐标也随之发生变化,即X→Z、Y→X、、Z→Y。要重新调整边界的大小,需要二维视图对象的大小。首先将匹配的二维图像转换为二值图像。在二进制图像中,对象变为白色或其值变为一,对象的背景变为黑色或其值变为0。二值图像成为一个包含一个元素和零个元素的MXN矩阵。其次,需要找到矩阵的所有非零元素下标,并将其保存为行下标和列下标。第三,求出行和列的最小和最大下标。最后,这四个点创建矩形,然后根据这个矩形裁剪图像,创建新的裁剪图像,使其边界穿过这四个点。图像裁剪后,其大小、行和列将重新计算。然后将三维模型的行划分为裁剪图像的行,将三维视图的列划分为裁剪图像的列,并获取重新缩放值。将损伤区域边界的三维图的Y值和Z值相乘,得到新的Y值和Z值,并绘制新的图。裁切后的二维视图与裁切前的坐标系不同,因此需要将损伤区域边界从原始二维视图重新定位到裁切后的图像。它类似于移动坐标。因此,首先需要找出一个差异,通过这个差异,行在修剪前后发生了移动。要做到这一点,从最小列的下标减去1,从最小行的下标也减去1。减去1而不是0是因为在图像坐标或像素索引中,从1开始。然后分别从损伤边界的行和列中减去这些差异。然而,重新定位是在二维视图上完成的,在应用于绘制的三维边界之前,需要做一些小的修正。对于Y方向或列,没有问题,但是由于Z方向或行中的图像具有不同的坐标,为了重新定位边界需要计算的差异有一点。从最大行数减去最大下标,然后从三维打印行中减去差,或从Z中减去差,以重新定位绘制的三维边界。然而,在减去之前,这些差异也需要重新调整。根据采集的图像定位物体的三维模型后,可以开始绘制边界的三维模型并重新缩放和定位,重建损伤的三维模型。从物体的三维模型中减去三维边界模型,重建损伤的三维模型。减法运算是在两个三维模型的坐标点之间进行的,因为数据插值的大小存在差异。三维损伤区域边界的坐标数据或X数据、Y数据、Z数据与用于创建边界三维绘图但重新缩放和重新定位后的点相同。这些点以矩阵mx2的形式保存,m是创建绘图形状的点,2是因为三维是由连接的两个绘图创建的。对于对象x的三维模型,y和z坐标数据点以3xn矩阵的矩阵形式保存。原因是X数据、Y数据和Z数据表示模型的单个面或表示此面的顶点。对象的三维模型是一个STL文件。STL文件描述了一个原始的,非结构化的三角曲面,由单位法向和顶点的三角形使用三维笛卡尔坐标系。因为STL文件有三角形面,所以它有三个顶点,所以数据以3xn矩阵的形式保存,其中n是面数。这两个三维模型可以描述为创建某种形式的多个点。减法运算只在一个方向上进行,但两个模型的X数据尺寸不同,需要插值。由于绘制了边界的三维模型,因此在Y和Z定义的Y-Z平面上方的高度值(x)中,X值是恒定的,实际上i与Y和Z没有任何关系,因此插值成为二维插值。根据物体三维模型的X点数据进行插值。本研究采用整体自然邻域内插法。该方法基于离散空间点集的Voro.noi细分。在Y中插入三维边界后,Z尺寸或其形状没有改变,只是在X方向或其深度值上,矩阵尺寸改变为与对象三维模型的X尺寸相同的尺寸。新的边界X维矩阵的尺寸为3xn,但由于其Y、Z维矩阵的尺寸比一个三维模型小,许多矩阵元素都等于零,这就导致了对一个物体的三维模型进行减法运算而不改变。从物体的三维模型中减去不等于零的边界的X维矩阵的值,将导致改变三维模型的X维,并创建三维模型的损伤区域。最后利用损伤的三维绘图建立了损伤的STL模型。
其他文献
用协整理论、误差修正模型和格兰杰因果关系检验等方法对外商直接投资(FDI)与我国服务贸易进出口的关系进行实证分析,结果表明,外商直接投资与我国服务贸易进口和出口分别存
<正> &#167;0 复合使动式0.1 在《左传》中,使动的表示可以取两种形式:单一的形式和复合的形式。单一形式主要是由单个的谓词带上宾语构成的,如:
<正>文章简介甘露糖受体(MR,CD206)是小噬细胞和树突细胞上的内吞受体,它可识别多种配体,在调节免疫反应和维持糖蛋白稳态中发挥重要作用。然而,MR的结构和功能机制尚不清楚
提出一种全新的热冲压成形生产线的整体解决方案,此方案基于全电机械伺服压力机及多层箱式加热炉。相比较传统的热冲压成形生产线,具有占地面积小、工作效率高及能耗底等优点
为提高筒子纱抓取和上纱过程的自动化和柔性化程度,应用单目视觉系统引导机器人完成上纱过程。采用工业相机获取单个筒子纱不同形态的数据信息,应用GAN(生成式对抗神经网络)
本文依据北京坟庄晚更新世、早全新世孢粉图式,提出北京地区距今30000年时,曾经在丘陵和平原地区繁盛过以云杉、冷杉为优势的针叶林,在22000年左右,进入以蒿、藜和禾本科为代
深度神经网络易受对抗样例的攻击,该攻击主要通过对图像做细微的修改而使卷积神经网络识别出错。因此,为了模拟实际生活中车牌上的污点攻击,只对车牌图像添加局部扰动。首先使用
我国近期的货物贸易顺差从其贸易方式、顺差产品来源、顺差国别来源、顺差经营主体、顺差区域分布看有其自身特点,其形成是由于全球化趋势下跨国外包与供应链重组的加速发展
"得终端者得天下"已成为企业营销中不争的"哲训",在过度竞争中的白酒行业,更是如此.有效武器的缺乏,使很多经销商在终端客房的流失和终端管理费用居训不下面前或是望"费"兴叹
为了建立盾构隧道弹性密封垫橡胶的老化系数模型,开展热氧加速老化试验.该模型采用伸长率与应力的比值作为性能劣化指标,可以预测橡胶在不同温度和时间状态下的性能,对密封垫