表面瑕疵检测是机器视觉领域非常重要的一个应用。机器视觉是集光学、机电和计算机三个领域的一门不算新的技术。但目前表面瑕疵检测在学界主要是计算机专业或者控制专业瞄准图像处理方向在做,而视觉光学系统这一块主要是光学工程专业在做。很少有研究者把这三块都结合的很好,而国内做这机器视觉(注意是机器视觉 不是计算机视觉)基本上都是小公司。 软件这一块就不说了,国内的整体软件环境不好。据我所知,日本、德国和美国在机器视觉方面有很多相对成熟的软件。中国农业大学的陈兵旗教授在留日期间弄过很多机器视觉方面的农业机器人,同时他也写过一本书介绍视觉图像处理,后面还附录了他们自己主推的软件。德国的软件就是下面要介绍的halcon。提到halcon就有必要和开源的opencv进行对比,opencv在图像处理方面也是小有名气,但是其成型的图像模块函数并不多,而且由于是开源,并没有专门对各种图像处理领域方面的检测需求进行扩展,还是那句话,毕竟是开源。 halcon是商业软件,国内主要是大恒公司在代理,其在图像处理方面,特别是检测测量方面有很多优势。下面我以一个例子在介绍halcon图像算法开发过程。 启动软件,ctrl+E弹出例程,选择表面检测中的detect_mura_defects_texture 。这个是液晶面板上的mura 损伤 。附录上张存在损伤的图像
在杂乱的纹理上出现的黑色区域就是损伤。如何检测呢?