LabVIEW 机器视觉 让 FDM 3D 打印缺陷检出率达到 100%
拉丝 · 翘曲 · 层裂 · 错位——实测三种算法,纹理分析法零漏检
拉丝、翘曲、层裂、错位……这些 3D 打印常见缺陷,人工目检不仅累眼睛,还容易漏 LabVIEW + NI Vision 开发了一套 FDM 缺陷检测系统,实测三种算法,其中纹理分析法的缺陷检出率做到了 100%——连毛刺都逃不过。 |
痛点:3D 打印的“隐形杀手”
FDM(熔融沉积成型)是目前应用最广泛的 3D 打印技术。它将三维模型切片,一层层挤出热塑性材料,逐层熔合。原理看似简单,实际生产中却问题频发:
缺陷类型 | 表现 | 后果 |
拉丝 | 喷头移动时拖出细丝 | 表面粗糙,需后处理 |
翘曲 | 边缘抬起变形 | 模型底部不平,甚至报废 |
层裂 | 层间结合不牢 | 强度下降,易断裂 |
错位 | 层间偏移 | 几何失真,不可用 |
传统检测方式——人工肉眼观察,存在三大硬伤:
效率低:每层都要看,大尺寸模型耗时数小时。
易疲劳:长时间盯着条纹,视觉疲劳后漏检率飙升。
难量化:"有点拉丝"和"严重拉丝"缺乏客观标准。
更本质的问题:即使打印机硬件正常,温度、速度、冷却参数不匹配也会产生缺陷。直接检测成型件本身,比监测设备状态更有工程价值——这正是视觉检测的切入点。
系统方案:LabVIEW + 工业相机
硬件配置
工业相机:500万像素 CMOS,安装于打印头侧方。
光源:环形 LED,消除阴影。
控制器:工控机,安装 LabVIEW 2020 及 NI Vision Development Module。
软件流程
①每打印完一层,相机触发拍照 → ② LabVIEW 调用 NI Vision 函数进行图像处理 → ③ 输出"正常/缺陷"判定,标注缺陷位置 → ④ 发现严重缺陷时自动暂停打印。
核心难点在于:如何把正常条纹和真实缺陷区分开?FDM 模型表面天然就有平行条纹(层纹),这不是缺陷。团队对比了三种图像处理算法。
算法一:邻域增强检测法 —— 速度最快
利用 3D 打印条纹的周期性结构——正常层纹在局部区域内是规律排列的。通过局部二值化(Local Threshold)将图像转为黑白,再结合形态学膨胀操作,填充相邻层纹之间的间隙。这样,正常的平行条纹被"抹平",而不规则的缺陷区域(拉丝、孔洞、翘曲边缘)则被保留。
关键步骤:
灰度化 → 中值滤波去噪 → 局部二值化(Niblack 算法,窗口大小根据层纹间距自适应)→ 形态学闭运算(先膨胀后腐蚀)→ 颗粒分析(Particle Analysis),获取缺陷的面积、圆度、长宽比 → 根据面积阈值判定缺陷。
结果:
单帧检测用时 ≈ 110 ms(约 9 帧/秒,满足在线实时性);
检出率中等,对轻微拉丝敏感度不够;精度较低,缺陷边缘模糊。
适合场景:高速在线筛选,允许少量漏检,但要求实时反馈。
算法二:频域增强检测法 —— 精度最高
将图像转换到频域(FFT)后,正常条纹对应低频分量(周期性纹理),而缺陷(拉丝、错位、毛刺)对应高频分量。设计一个梯形高通滤波器,抑制低频、保留高频,再反变换回空间域,缺陷就被"提取"出来了。
关键步骤:
图像扩边到 2 的幂次大小(提高 FFT 效率)→ 快速傅里叶变换(FFT)→ 频域中心化 → 应用梯形高通滤波器(半径截止频率=图像宽度/8,过渡带宽度=10 像素)→ 逆 FFT 得到缺陷增强图像 → 自适应阈值分割 + 形态学滤波。
结果:
单帧检测用时 ≈ 400 ms,实时性尚可;
检出率较低(高频分量中也包含纹理噪声,轻微缺陷可能被淹没);精度极高,可达像素级。
适合场景:离线质量分析、失效根因定位,不要求秒级响应。
算法三:纹理分析检测法 —— 检出率100%
这是本次测试的冠军算法。它不试图"去掉"正常条纹,而是直接判断图像局部区域的纹理特征是否属于"正常类"。
提取灰度共生矩阵(GLCM)的 Haralick 特征(包括对比度、相关性、能量、同质性、熵等共 13 维)。然后训练一个一类支持向量机(One-Class SVM):只输入正常样本的特征,让 SVM 学习"正常纹理"的边界。检测时,任何落在边界外的窗口都被判为缺陷。
关键步骤:
将图像划分为滑动窗口(窗口大小=典型层纹周期的 2~3 倍)→ 对每个窗口计算 GLCM + Haralick 特征 → 用训练好的 One-Class SVM 预测 → 合并相邻的缺陷窗口,输出缺陷区域。
训练集:100张无缺陷的打印层图像(不同位置、不同光照)。
测试集:包含拉丝、翘曲、层裂、错位、外侧毛刺等共 50 张缺陷图像。
检出率:100%(50 张缺陷图全部检出,无一漏检) 误报率:约 3%(部分正常纹理被误判,可通过优化窗口步长降低) 连目标外侧的细小毛刺都能检出——这是前两种方法做不到的。 |
适合场景:对漏检零容忍的关键零部件检测,或作为终检站。
三种算法横向对比
指标 | 邻域增强法 | 频域增强法 | 纹理分析法 |
检出率 | 中(约85%) | 低(约70%) | 高(100%) |
速度 | 高(110ms/帧) | 中(400ms/帧) | 低(990ms/帧) |
精度 | 低(边界粗) | 高(像素级) | 中(窗口级) |
光照敏感度 | 高 | 中 | 低 |
可解释性 | 直观 | 较抽象 | 黑盒(特征组合) |
如何选择?
在线实时监测(每层都要检)→邻域增强法
离线质量分析(研究缺陷机理)→频域增强法
零缺陷出厂(医疗器械、航空航天件)→纹理分析法
LabVIEW + NI Vision工业视觉检测四大核心优势
优势一:视觉函数库完整,即拖即用
从图像采集(IMAQdx)、滤波处理(IMAQ Filters)、FFT 变换(IMAQ FFT)、形态学操作(IMAQ Morphology)到纹理分析(IMAQ GLCM),NI Vision 提供了超过 400 个原生 VI。开发者无需从零写算法,连线即可实现复杂的检测流程。
优势二:图形化编程,所见即所得
在 LabVIEW 中,三种检测方法可以做成并行的子 VI,通过一个单选按钮切换。调试时在图像上叠加缺陷标注,直接看到每一步的处理效果。这种直观的开发体验,远非文本语言可比。
优势三:与数据采集无缝融合,实现闭环控制
视觉检测结果可以实时写入 TDMS 文件,同时与喷嘴温度、热床温度、进丝速度等传感器数据关联。一旦检出缺陷,系统可以自动调整打印参数(如降低速度、升高温度),实现"工艺参数 + 视觉检测"的闭环控制——这是纯视觉方案无法做到的。
优势四:开发效率极高,两周从方案到验证
从拿到相机到跑通三种算法对比,团队仅用了两周时间。如果换成 C++ + OpenCV,光是配置开发环境、封装相机 SDK 就要一周。LabVIEW 让工程师把精力集中在检测逻辑本身,而不是底层细节。
交付能力
我们不只提供软件——从检测需求分析、相机选型与布设、光源方案设计,到算法定制开发、产线集成调试、操作培训,提供全流程技术服务。已成功服务于多个工业视觉检测项目,涵盖 3C 电子、汽车零部件、食品药品包装等领域。
写在最后
机器视觉不是要取代人的眼睛,而是要让人的经验变成可量化的算法。FDM 打印的层纹看似杂乱,实则有规律——只要找对数学模型,100% 检出率完全可以实现。
您的生产线是否也存在类似的"人眼疲劳、漏检高发"的痛点? 联系我们,一起用 LabVIEW 打造适合您的视觉检测方案。 |
