论文摘要
近年来,随着计算机及图像处理技术的发展,机器视觉技术在工业在线检测中的应用逐渐广泛,利用机器视觉技术来进行印刷品缺陷的自动检测已切实可行。机器视觉软件是进行基于机器视觉的检测工作必不可少的软件工具。当前,国外机器视觉软件虽然功能较强,但是购买费用很高,不是一般研究人员或单位所能承担,同时,由于不知道源代码,维护起来比较困难。有必要采用全新的软件开发技术,开发具有特色、方便使用、容易集成新的图像处理方法的机器视觉软件系统。本文引入构件技术,提出了基于构件的机器视觉软件开发方法,以印刷品缺陷检测系统为例,以Visual C++6.0为软件平台,设计了一套基于构件的印刷品缺陷检测机器视觉软件。结果表明,采用基于构件的软件开发技术,可以节省开发成本,提高软件开发的速度,减少开发的重复劳动和重复投入,减少软件的维护费用。在开发机器视觉软件算法的过程中,本文对图像匹配和Blob分析算法进行了研究。提出一种改进的Harris角点检测方法,并用一种稳定性评价准则测试,证明了本文算子在工业环境下的优越性。建立仿射变换模型来近似相应特征点邻域的几何变换,用确定性退火方法计算模型参数,避免了耗时的穷举搜索。利用RANSAC方法鲁棒地估计基本矩阵和单应矩阵,建立对极几何约束和单应约束来剔除初始匹配中的误匹配对;提出一种基于连通区域标记的快速Blob分析方法,算法使用游程链表和动态数组的方法,只需扫描图像一次,并且无需建立等价表和进行等价标记合并,解决了现有算法中的标记冗余现象。另外,算法还能够标记连通区域中的内洞。实验结果表明,该算法对于任意复杂形状、任意数目的Blob区域都能正确检测并计算参数,并且具有很快的速度和很好的稳定性。