技术干货

halcon做缺陷检测到底咋入门啊?有没系统的教程路径

1314521
1314521
2026/07/06 09:23

之前一直在做PLC和运动控制那边,视觉这块基本算小白。最近接了个小项目,金属壳体表面划痕、凹坑这种缺陷检测,打光用同轴加低角度,相机想用500W的,halcon里blob+差分那套看过点视频但没真跑过流程。

想请教下各位,halcon做这类检测有没有比较系统的学习路径?是要先啃官方文档还是直接跟案例练?还有那个阈值分割和形态学运算的搭配,有没有什么固定的套路?项目周期一个月,有点慌。

58 4

全部回复 (4)

abc832270
abc832270#1

先确定你打光方案能不能稳定拍出缺陷吧,halcon再厉害喂进去一坨糊图也白搭。同轴加低角度这组合一般够用,但壳体材质不一样参数差很多。

2026/07/06 11:37
4140148828
4140148828#2

我们之前做铝件检测用的差分加动态阈值,门槛设3σ左右,划痕基本不漏。关键是金样本得攒够,各种NG各拍个一二百张。

2026/07/07 20:05
zhu1976
zhu1976#3

官方例程里那个surface_scratch.hdev拆开看三遍,思路都一样的。

2026/07/11 11:11
18377514234
18377514234#4

PLC转视觉的,恭喜你入了个比梯形图烧脑十倍的坑,但也比那有意思。一个月周期做金属壳体划痕凹坑,时间紧但能搞出来,说点实在的。

学习路径上,别去啃官方文档第一卷那种东西,那是字典不是教材。你先去B站找那种工业级halcon缺陷检测的项目实录视频,最好带完整代码敲一遍的那种,一两个就行,先把"打开图像→预处理→分割→特征提取→判定输出"这条流水线在脑子里建起来。官方文档留着当手册用,函数忘了查啥查啥,dev_update_off、dev_close_window这些开头的样板代码直接复制别纠结。

你选同轴光加低角度这个思路没问题,但金属壳体划痕和凹坑对打光反应不一样——划痕一般低角度更敏感,凹坑同轴更明显,实际跑的时候两种光源切换打两遍图对比下,别死磕一种。500W相机配什么镜头、视野多大、工作距离多少,你得先算像素精度,划痕按0.1mm宽度算的话,单像素分辨率得在0.05mm左右,倒推一下就知道选什么焦距了,别拍脑袋买。

阈值分割加形态学这块,套路是有的但别当公式背。金属表面反光不均匀,全局阈值基本死,必须用局部阈值比如dyn_threshold或者mean_image+动态阈值,分割出来再选合适的结构元腐蚀膨胀开运算闭运算把噪声和粘连分开。blob分析的时候注意用connection+select_shape,把面积、周长、矩形度、凸包面积比这几个特征都用上,单一特征判定不靠谱就上分类器,SVM训练个几十个样本就够用。

另外halcon的差分法和深度学习都能搞这种,传统视觉跑不通就上halcon的dl缺陷检测,预训练模型直接用,省时间。一个月紧的话,先把demo跑通再贴到现场,别一上来就调参调到怀疑人生。

2026/07/11 14:59