论文部分内容阅读
随着现代印刷技术的发展,产品说明书、产品外包装等印刷产品都已经实现了自动印刷,但是在产品大规模印刷过程中难免会出现各种缺陷,当然字符印刷也不例外。字符在印刷的过程中经常出现例如字符漏印、错印、污渍、错位等一系列缺陷。剔除包含印刷缺陷的产品对于提高产品的综合质量和市场竞争力具有重要意义。通过人工观察的方法从密密麻麻的字符中筛选出缺陷,容易造成视觉疲劳,而且检测效率低。当下机器视觉技术在国内蓬勃发展,软硬件的发展水平都有所提高,基于机器视觉的缺陷检测已经切实可行。本论文针对印刷字符存在的缺陷,提出一种基于视觉的字符缺陷检测方法。首先利用扫描仪平面扫描的独特优势,使用扫描仪进行取图,避免字符缺陷检测对相机畸变和光照变化敏感的影响。其次,通过提取模板图像和测试图像的Sift特征点,使用最小欧氏距离进行匹配,找到测试图像中每个Sift特征点在模板图像中的匹配特征点,实现特征点的两两配对。然后从所有的匹配中筛选出三个最优匹配,利用三对最优匹配的Sift特征点,结合仿射变换算法进行矫正和定位,将测试图像的坐标空间转换到模板图像的坐标空间,从而实现待检测图像的定位功能。充分利用测试图像中保存完好的特征,提高定位精度,定位误差被控制在一个像素以内,避免缺陷字符造成定位不准的情况,为缺陷分割打下良好基础。对矫正后的测试图像进行阈值二值化处理,使用像素差法可以将测试图像和模板图像不同的地方准确分割出来。针对误报缺陷的特征,设计剔除误报的算子对分割出的缺陷图像进行滤波处理剔除误报。然后通过连通区域标记算法标记缺陷,给出提示信息。通过C++编程语言和Open CV视觉库实现算法,使用QT语言编写界面,成功的检测出印刷缺陷并完成了提示信息的输出,对存在缺陷的产品给出提示信息,输出到界面。