X射线成像缺陷特征自动提取显著提高大批量铝压铸件缺陷检测效率
moboyou 2025-05-08 13:28 27 浏览
导读
为解决铝合金压铸件X射线图像典型缺陷的特征提取维度缺乏、大量人工干预影响特征提取效率的问题,提出一种铝合金压铸件X射线成像典型缺陷特征提取算法。该方法对铝合金压铸件中的气孔、欠铸和变形等典型缺陷建立多个特征分析维度,利用滤波去噪、阈值分割等手段进行压铸件图像预处理,并通过提取缺陷周长和面积等多维度特征,实现气孔、夹渣缺陷的特征自动化提取。在部分企业实际生产的铝合金压铸件上的应用表明,该方法可有效地提取铝合金压铸件典型缺陷特征,可为后续缺陷检测识别工作提供参考。
随着铝合金压铸件的需求日益增长,在大批量生产时对质量要求也越来越高,因此对铝合金压铸件的质量检测十分重要。国内传统的是通过人工检测,过程繁琐、效率低下、结果不易存储并且人工经验依赖性强。而通过对铝合金压铸件X射线图像进行一系列的图像处理来辅助质量检测的过程能够明显改善以上问题,特别是通过阈值分割来处理图像。铝合金压铸件常见的缺陷有气孔、欠铸、夹杂和变形等。如果对识别好的缺陷进行多维度的分析,并自动提取到这些维度的数据,能够更好地帮助后续铸件缺陷的识别工作。Gianni D’Angelo等研究了信号处理以及数据在航天材料中用来诊断材料缺陷的有效性。张臻通过对ADC12铝合金铸件的研究,分析了气孔、缩孔以及气缩孔的圆整度、体积以及表面积等。杨勇等通过使用中值滤波器和线性滤波器来研究X射线图识别焊接缺陷。楼国红等利用动态阈值分割算法针对车轮轮毂计算缺陷面积和最长缺陷长度。动态阈值分割算法可以很大程度地保留轮毂中的缺陷并且同时去除掉很多不是缺陷的干扰噪声。XU等 对Otsu阈值分割算法进行了分析,能够通过理论计算得到最好的阈值。KAVITHA等 提出了一种分水岭算法用来阈值分割,计算方法更为简洁,可以在聚类图像实现较好的效果。JOHN CANNY则提出了一种关于边缘检测的算法。DANIEL WEIMEr等采用了深度卷积神经网络来对缺陷进行特征提取。为了更好地识别汽车铝合金压铸件中的典型缺陷,主要考虑气孔、夹渣等缺陷在X射线图中的周长以及面积。而为了实现铸件缺陷特征的自动提取,对铝合金压铸件X射线图进行了一系列的缺陷图像处理,包括滤波去噪、图像增强处理以及阈值分割处理。最后对处理完好的图像进行特征提取并自动给出相关参数。
01 缺陷图像处理
铝合金压铸件X射线图的采集过程会卷入大量的电磁脉冲噪音信号。没有经过处理的图像包含着很多干扰噪声,直接进行特征提取会造成很多噪声也被误认为缺陷,降低缺陷特征提取的准确度。因此主要对铝合金压铸件X射线图像进行三步处理:滤波去噪、图像增强处理以及图像阈值分割处理。
1.1 滤波去噪处理
一般来说图像会有一些噪音干扰。因而计算机处理图像的第一个步骤都是滤波去噪,以减少后面处理的出错概率。选择了中值滤波器、均值滤波器、高斯低通滤波器以及巴特沃斯低通滤波器。通过对比这些滤波器的滤波效果,选择最有的方法。
将同一张图像用不同滤波器处理,效果见图1。
图1 不同滤波器下图像预处理效果
从图1可以看出,在经过中值滤波器之后,图片并没有发生很大的变化,见图1b。经过均值滤波器之后,图像的细节开始变少,对于图像的后续处理效果不明显,见图1c。经过高斯滤波器之后,图像的整体质量变得更好,铸件的细节没有丢失,相比于均值滤波器和中值滤波器,高斯滤波器处理出来的结果较好。经过巴特沃斯滤波处理之后的图像变得很模糊,见图1d。综上,针对汽车铝合金压铸件X射线图,高斯滤波器能够起到很好的作用。因而,采用高斯滤波器作为图像预处理的第一步。
1.2 图像增强处理
经过滤波去噪处理之后的图像,图像的质量已经得到改善,但图像中仍存在着缺陷与图像背景不能很好区分的问题。为使缺陷与背景能更易区分,需增强图像对比度。分析了灰度变换、直方图修正处理的效果。
将高斯滤波处理后的图像用不同灰度变化处理,效果见图2。
图2 不同增强处理下图像预处理效果
从图2b可以看出,通过线性处理,图像的整体对比度有所提升,且图像中细节没有得到破坏,缺陷也能够被更加清楚的显示出来,但线性处理比较单调,只能调高图像中的对比度。从图2c可以看出,背景处理的效果比较明显,但是铸件内部的部分细节也因为整体的变亮而变得不够清晰。这样的处理效果没有线性处理好。在经过直方图处理之后,图像的整体亮度有了很大的提升,对比度也有所增加,见图2d。对比之下,选择线性增强的方法。
1.3 图像的阈值分割
经过图像的滤波处理和增强处理之后,最后对图像进行阈值分割。分割图像之后,很多缺陷能够很容易被肉眼识别出来,并且主要特征也能够很顺利的被提取出来。常见阈值分割方法的有Otsu以及迭代法两种分割方法。
(1)Otsu阈值分割
此算法最大的特性就是使两类像素点之间的区分度能够达到最大。同时,对于一些灰度直方图上存在着双峰现象的图像,也能达到一个很好的效果。其原理是将初始图像进行直方化处理,得到灰度的直方图,进行归一化处理。确定一个初始阈值,从而可以将整个图像分为两类,大于阈值的以及小于阈值的,将这两类灰度所占的比例记为和,同时记录下平均灰度和,整个图像的平均灰度被记为。再进行遍历整个图像,计算出每个像素点的类间方差,而类间方差值最大的像素点,它的灰度值则正好是Otsu算法所确定的阈值分割方法的最佳阈值。
(2)迭代阈值分割法
迭代阈值分割法是基于Otsu算法并对其进行了一些优化。迭代阈值分割法是利用逼近极限的方法来优化Otsu算法,基本原理与Otsu也有些相似。迭代阈值分割法主要处理步骤如下:首先取出初始图像的灰度范围,取灰度范围的中间值作为初始阈值,与Otsu算法相似,接着可以得到两个像素类的平均灰度和,新的阈值则直接取两个像素类的平均灰度的平均值。如果两者之间相差小于给定的误差参数,则新阈值直接确定为最佳阈值,否则重复上述,直到找到最佳的阈值停止。
(3)阈值分割比较
将线性增强后的图像用不同阈值分割处理,结果见图3。
图3 不同阈值分割方法下图像预处理效果
可以看出,Otsu阈值分割的方法总体上效果较好。铸件整体的形状与轮廓都比较好的被呈现出来,并且在铸件的左上角的一处欠铸的缺陷没有缺失。但在部分铸件内部区域,出现了一些空洞,这些空洞的位置在原来铸件上是没有缺陷的,但是在经过阈值分割后可能会被认为有缺陷存在。迭代阈值法所建立的效果也较好,铸件整体都被提取出来,但是它也会分割出一些空洞。在将图像放大之后,迭代阈值分割法分割出来的图像像素点连续度比Otsu阈值分割法分割出来的图像稍差一些。两者对比之下,差距并不是很大,最后选择图像放大后表现性能稍好的Otsu算法。
02 特征提取算法
完成对铝合金压铸件X射线图的图像处理之后,需要对图像的缺陷进行特征提取。针对铝合金压铸件气孔缺陷和夹渣缺陷的面积特征以及周长特征进行特征提取。气孔缺陷以及夹渣缺陷都是常见的铝合金压铸件缺陷并且这些缺陷在X射线图上面能够很明显的反应出来。面积以及周长的提取是基于连通区域来进行提取的。
2.1 连通区域
以图像中的一个像素点为中心,与中心像素点相毗连的八个像素点则被定义为中心像素点的连通区域。由于连通区域拥有传递性,由金属缺陷所表现出来的空洞可以被识别出来成为一个连通区域,见图4。
图4 连通区域示意图
2.2 缺陷区域的识别
由缺陷区域像素点连成的连通区域即为缺陷区域。缺陷区域的识别使用经典的深度优先算法(DFS)。通过深度优先算法来实现缺陷区域提取的具体步骤如下:
步骤1:遍历图像中所有的像素点,对每个像素点进行判断:①如果像素点的值为1, 即为缺陷区域,则进行以下的步骤。②如果像素点的值为0,即不为缺陷区域,则继续遍历下一个像素点。③如果像素点已经被遍历过了,则继续到下一个像素点。直到所有像素点都被遍历。
步骤2:以目前的像素点为中心像素点,看中心像素点周围的8个像素点是否有值也为1的像素点。
步骤3:如果中心像素点周围含有值为1的像素点,并且数量为1,以这个值为1的像素点为新的中心像素点,重复步骤2。
步骤4:如果中心像素点周围含有值为1的像素点,并且数量不止一个,则轮流对每个点重复步骤2。
步骤5:如果中心像素点周围没有含有值为1的像素点,则将这个像素点标记为边缘像素点,回到步骤1遍历下一个像素点。
2.3 缺陷区域的面积提取
在得到缺陷区域之后,进行缺陷区域的面积计算。缺陷区域的面积等于缺陷区域内像素点的个数。通过直接对缺陷区域的像素点个数进行计算,可以很直接地得到缺陷区域面积。
2.4 缺陷区域的周长提取
缺陷区域的周长计算相较于面积复杂。周长并不是缺陷区域边缘区域像素点的叠加。具体的计算是找到缺陷区域边缘位置的像素点,选取任意一个像素点作为起点,以顺时针或者逆时针的方向找到下一个边缘上的像素点,再找到下一个邻近的边缘像素点,并且计算第2个点与第3个点之间的距离,最后将所有点的距离进行求和,得到的总和即为缺陷区域的周长。
03 试验和结果分析
3.1 提取数据
实验所用到的数据图像,都是实际生产的一些汽车铝合金压铸件X射线图像,见图5.
图5 汽车铝合金压铸件X射线图像
这些缺陷包括欠铸、变形、气孔等等。
3.2缺陷部位图像处理之后得到的图像
经过缺陷区域的提取之后,得到主体是缺陷部分的图像,采用图像预处理方法以及图像阈值分割的方法,对图像进行处理。第一步是使用高斯滤波对图像处理,然后通过线性增强,最后通过Otsu阈值分割方法对图像进行处理。图像预处理后的结果见图6。
图6 图像预处理之后气孔缺陷
可以看到,光线对于提取到的图像质量有一定影响,图6a图像和图6c图像受强光源影响较大,形成了大片的白色区域,对气孔缺陷的面积提取较为不利,并且前期的预处理过程难以解决这个问题,可能需对光源进行一定的处理。但总体来说通过预处理和阈值处理,能够很好的将汽车铝合金压铸件X射线图像处理成能够轻易分辨气孔缺陷的二值图像。
图7是夹渣缺陷的图像处理。夹渣缺陷在X射线图像中表现为表面的白色斑迹,并且可能会伴随着铸件表面的一些突起。因此在对夹渣缺陷进行图像处理的时候,Otsu阈值算法效果一般,相比之下,局部阈值的分割方法得到的效果要好很多,因此夹渣缺陷的阈值分割方法是采用局部阈值进行分割得到的。
图7 图像预处理后的夹渣缺陷
整体来看,铸件表面的白色斑迹都被阈值分割给处理出来的,整体比较明显,效果较好。
3.3 图像缺陷特征的提取
在得到清晰含有缺陷的二值图像后,可以对图像中缺陷的面积和周长进行提取。采用的是MATLAB来实现面积和周长的提取。首先是通过MATLAB对气孔缺陷的特征提取,见图8。
图8 气孔缺陷的特征提取效果
其中,缺少了阈值处理后得到的第三张图片(气孔缺陷c),见图8c,因为图像被光源污染,导致最后只能提取出来一大片的白色区域,所以最后没有展示出来。图像中气孔的面积和周长特征提取到的具体值见表1。
图8a中有一连串的气孔,普遍面积较小,并且有一部分气孔被白色光源污染导致无法被提取。其他气孔的面积和周长都被很好的提取出来了,如果在拍摄图像的时候对像素点的长度进行标度,也就能直接得到气孔缺陷的面积和周长了,对后续的工艺分析能够提供帮助。
然后展示对夹渣缺陷面积和周长的特征提取,同样首先先对图像中的缺陷部位进行捕获,见图9。
图9 夹渣缺陷的特征提取效果
从图9可以看出,提取效果整体较好,但会出现一些过度提取的情况,这个时候需要人工来帮助判断具体哪一个部分才是真正的夹渣缺陷。表2为提取到的缺陷的周长和面积。
04 结论
针对铝合金压铸件典型缺陷的特征进行提取,通过使用高斯滤波处理、线性增强、Otsu阈值分割法及局部阈值法对图像进行处理,得到经过处理的二值图像,最后对二值图像直接进行特征提取。整个过程基于MATLAB实现了对缺陷的面积和周长特征的自动化快速提取,解决了铝合金压铸件X射线图像典型缺陷的特征提取维度缺乏、人工干预影响特征提取效率的问题。由于铝合金压铸件X射线图主要呈现二维图像,本次试验的铝合金压铸件缺陷特征提取主要集中于二维数据的提取,希望以后能出现很好的三维铝合金压铸件X射线图并且便于进行缺陷特征的提取。
文献引用格式:傅可清,马源,伍缘杰,等. 铝合金压铸件X射线成像典型缺陷特征提取算法与实现[J]. 特种铸造及有色合金,2021,41(12):1472-1477.
相关推荐
- 【开源推荐】给大家推荐个基于ChatGPT的PHP开发库 openai-php-api
-
有了这个库大家就可以愉快的使用PHP对接chatGPT的官方接口了,至于对接了官方接口想要做什么就看你自己的啦环境要求PHP7.4或以上composer1.6.5以上支持框架Laravel、Sym...
- PHP使用Phar打包控制台程序
-
1.介绍1.1介绍php脚本有着非常强大的库支持,可以轻松做出特别强大的程序。php不仅仅可以搭建各种各样的网站系统、平台系统,还可以开发基于控制台运行的程序。不过使用php开发的控制台程序在使用...
- PHP实现URL编码、Base64编码、MD5编码的方法
-
1.介绍1.1介绍今天开始福哥要给大家讲解关于字符编码的知识,所谓字符编码就是将一个字符串或者是一个二进制字节数组里面的每一个字符根据一定的规则替换成一个或者多个其他字符的过程。字符编码的意义有很...
- 雷卯针对易百纳海思Hi3521D开发板防雷防静电方案
-
一、应用场景1、医疗电子2、安防监控3、数字标牌4、视频广告5、环境监测二、功能概述1CPU:ARMCortexA7双核@Max.1.3GHz2H.265/H.264&JPEG多码流编...
- 不折腾无人生-安卓盒子安装Linux系统armbian纪实
-
不折腾无人生-安卓盒子安装Linux系统armbian纪实小编的x96max+(晶晨Amlogics905x3)安卓盒子已安装二个系统,原装安卓9.0和tf卡上的CoreELEC9.2.3,可玩性...
- 全网最简单的玩客云刷casaos方法及后续使用心得
-
本内容来源于@什么值得买APP,观点仅代表作者本人|作者:不鸣de前几天在站内看见很多值友分享了玩客云刷casaos,被简洁的操作界面种草,于是我将之前刷了powersee大神网页导航版armbia...
- 最新评测:英特尔旗舰 Alder Lake 处理器击败苹果M1 Max
-
据国外媒体tomshardware报道,英特尔最新的酷睿i9-12900HK处理器刚刚赢得了移动x86与Arm的性能大战,但这是有代价的。这款移动14核AlderLake芯片在多个工作负...
- 创维酷开Max系列电视开启ADB并安装第三方应用教程
-
前言创维酷开系列智能电视采用的是相对封闭的系统,虽然设置中提供了安装未知应用的选项,但由于电视安装位置的限制,往往难以直接使用USB接口安装应用。本文将详细介绍如何通过ADB方式在创维酷开Max系列电...
- 苹果 Mac Studio,再次刷新我们对个人电脑的认知
-
由两块M1Max组成的M1Ultra,成为了M1系列的最后一块拼图,并完成了整个M1SoC宇宙。这就好像《复仇者联盟4:终局之战》对于漫威第一阶段,十几年勤恳的布局,最终达到顶峰...
- 「必买」盘点2021年男人们的败家清单,越“败”越香
-
心里总想买点啥?看看《必买》,全网最有料的场景种草指南。草原割不尽,春风吹又生。在过去的2021年,不断被各种数码产品种草,一直在买买买,剁手不停。大部分产品都经过详细的对比做足了功课,也有部分是一时...
- Opus音频编解码在arm上的移植
-
一、简介现在有个需求,在局域网内实现实时语音,传输层协议使用UDP协议,如果直接使用ALSA进行录制音频流并发送到另一端进行播放,音质会非常差,而且断断续续,原因如下:采样频率:fm=44.1K...
- N ARM MINI空气减震系统臂体安装指南及应用说明
-
距离MOVMAX移动大师NARMMINI发布已经过去一段时间了,不少收到NARMMINI的小伙伴也已经迅速将产品投入到自己的车拍工作中去了。而在实际工作过程中我们也收到了用户的部分疑问和反馈:...
- 搜索引擎中的性能怪兽,Elasticsearch挑战者之Manticore Search
-
ManticoreSearch简介ManticoreSearch是一个使用C++开发的高性能搜索引擎,创建于2017年,其前身是SphinxSearch。ManticoreSe...
- 10个运维拿来就用的 Shell 脚本,用了才知道有多爽
-
1、监控MySQL主从同步状态是否异常脚本#!/bin/bashHOST=localhostUSER=rootPASSWD=123.comIO_SQL_STATUS=$(mysql-h$...
- PHP7.0.0正式版开放下载:速度大提升
-
IT之家讯PHP发布经理AnatolBelski在GitHub发布了PHP7.0.0正式版,该版本在速度提升上面有非常大的进步,比5.6版本提速两倍,已经接近Facebook开发的PHP执行引擎...
- 一周热门
- 最近发表
- 标签列表
-
- curseforge官网网址 (16)
- 外键约束 oracle (36)
- oracle的row number (32)
- 唯一索引 oracle (34)
- oracle in 表变量 (28)
- oracle导出dmp导出 (28)
- oracle两个表 (20)
- oracle 数据库 字符集 (20)
- oracle安装补丁 (19)
- matlab化简多项式 (20)
- 多线程的创建方式 (29)
- 多线程 python (30)
- java多线程并发处理 (32)
- 宏程序代码一览表 (35)
- c++需要学多久 (25)
- c语言编程小知识大全 (17)
- css class选择器用法 (25)
- css样式引入 (30)
- html5和css3新特性 (19)
- css教程文字移动 (33)
- php简单源码 (36)
- php个人中心源码 (25)
- 网站管理平台php源码 (19)
- php小说爬取源码 (23)
- github好玩的php项目 (18)