1. 引言
背景意义:
目前在精度要求较高的印刷行业与医用试纸生产中,产品的质量检测主要靠人眼分辨或手工测量,这种方式在劳动密集型产业中很容易实现,由于高精度的质量检测分类中需要很高的分辨力与适应性,生产工人也有很好的学习能力,在这两点人眼都可以满足,但是这种测量方式还存在着如下的问题:首先,效率低下,人眼在持续的分辨细小物体后效率会显著的下降,误判也会增加;其次,在高亮度状态下持续辨力会对人眼造成健康影响,比如视力下降、头痛等。
机器视觉是利用计算机对图像或视频进行处理,实现对二维或三维场景的识别、检测、感知和理解等功能 [1],随着该技术与计算机图像处理能力快速发展,在工业生产中,尤其是质检工序中,根据视觉与图像信息,可以对生产线的产品进行模式识别进而实现快速的分类乃至分拣,在血糖试纸印刷制造中,各类医疗检测试纸的药液位置与饱满程度决定了该试纸还原各类理化指标的可靠性,进而影响医疗诊断的结论。视觉检测技术尤其在质检方面已经具备相当的潜力,它具有如下优点:高效率,可靠与通用性良好;非接触,这点在卫生与精度要求都很高的医疗器械行业尤为重要。机器视觉在大批量、连续自动化生产流水线上具有很高的应用价值,能够对产品进行辨识和外形尺寸测量等 [2]。
为了能在整版生产试纸的较大视场中分辨精度很高的药液饱满度,本文利用机器视觉与一系列图像处理方法设计了一套自动的质量检测系统,并着重介绍系统中图像处理算法部分。
2. 总体方案
系统的质检对象为一张330 mm * 310 mm的胶印医用纸,如图1,纸上以50行10列分布着500个小的医用血糖测试纸,每个小试纸拥有独立的药物反应功能,上印刷有导液涂层,可视为一个单元。并且每个血糖试纸上有两个滴药液体区域A、B (如图2)。
如图3是未滴药的医用试纸与滴药且合格的试纸,质检要求是A区域药液饱满,而B区域存在药液,只有A、B区域的药液全部符合要求,血糖检测仪才能正常工作以显示可信赖的血糖指标。
由于被测物体较大,而需要分辨的精度有相当高,视场与最小分辨长度的比例较大,所以系统选用线扫相机以得到在相同视场范围内更高的像素数而成本又不至于过高。被测物体是一张轻薄的试纸,线扫描方案选择物体匀速移动而固定相机的方案,这样可以保证画面抖动更小进而可忽略。

Figure 1. Medical test paper overall overview
图1. 医用试纸整体概况

Figure 2. Test strip unit and drop area
图2. 试纸单元与滴药区域

Figure 3. Comparison between drop test paper and non-drip test paper
图3. 滴药试纸与非滴药试纸对比
整个系统的算法框图如图4,通过搭建的底部匀速送纸机构、同轴光源与相机的固定与微调装置,以实现整张试纸的图像信息高精度采集,然后对图像进行基本的预处理操作,之后利用改进的模板匹配算法对滴药部位进行高精度的定位,进而判断该位置的药液是否满足质量要求。
3. 图像预处理部分
在初期试验环节,由于横向视场宽度太大,得知此分辨率的线扫描相机的不可避免的会出现两侧与中间曝光强度不一致的情况,这会对后续的图像处理带来不必要的麻烦 [3]。为了使得后续标准的制定与动态调整,预处理需要对两侧暗部细节进行补偿,本系统针对这一问题运用的是*灰度映射*的方法,在原区间(0~255)内使对应的灰度映射到另一范围(0~230)伽马值为默认1,即灰度映射是线性映射,结合具体得到实际生产光照环境,使得试纸两侧的对比度增强,在不丢失暗部细节,边缘信息也不受到影响的情况下,将明亮部分增强,以获得与视场中间相似的曝光环境,从而使得后续算法可以在整张试纸上统一运行。如图5,图6,分别在空白区域与滴药区域中取得相同坐标位置的灰度信息,可以发现得到了灰度为255的背景色,这与视场中部的情况是一致的。证明此预处理方法有很好的调节曝光作用。

Figure 5. Comparison before and after
图5. 非滴药区域预处理前后对比

Figure 6. Comparison before and after pretreatment of the drop area
图6. 滴药区域预处理前后对比
4. 定位算法
对于待检测滴药区域的定位,本系统运用的是模板匹配算法,在所有的图像匹配算法中模板匹配算法是最基本的一种 [4],模板匹配理论是按照相关策略,根据已知模块在搜索图像中寻找逼近模块匹配的过程,是一种简单有效、使用广泛的图像处理方法 [5] - [11],它的基本方案是:
1) 首先,选定模板,它必须能区分每个阵列单元,拥有的特征需要与单元内有较高相关性而与单元外(单元间隙)有较低的相关性。
2) 计算模板与待匹配子图的相关性或差异性,通过在某一位置的邻域内寻找相关性最大或差异性最小的子图。
3) 遍历搜索整张图片后得到所有子图最佳的定位点。
模板匹配的核心就是考察模板(template)与子图(subgraph)的关系,本系统运用的是计算灰度值相关性的方法:将模板T(m, n)与子图S(i, j)的灰度矩阵处理成一维数组,计算每个相对应像素位置灰度值的平方差D(i, j)。
最后进行归一化得到两图像的相关性cc(i, j) [5],公式如下
首先根据遍历搜索的方式,选取模板的特征应该与两个试纸单元间隙的子图特征有明显的差异,否则模板与阵列单元间的子图的相关性显著增高,造成局部峰值的选取混乱,进而影响到定位的效果。
由于在整张500个小试纸中,除了滴药液体的区域外,每个小的试纸的其他区域是高度相似的,所以可以采用在非滴药区域中选区具有分离特征的模板,再用这一模板如图7定位出每一个小试纸非滴药区域的精确位置。
用此模板沿着某一列Y方向比对搜索并计算该列每一位置与子图的cc值,并绘制定位位置-相关性的关系图如图8,可以看出cc值峰值(图中标注)明确,周围无干扰,并且呈周期性变化,这证明了这一模板也有效的预防了单元间之间的干扰。

Figure 8. Relationship between position and cc value in the Y direction
图8. 沿Y方向定位位置与cc值的关系曲线
根据这一周期规律系统在搜索方式上可以进一步优化,跳跃式的搜索,即跳过与预设位置相差过远的地方,这样可以缩小计算量,提高整体的算法效率,如图9是跳跃式算法的定位位置-相关性图像,可以看到将跳跃的位置的图像相关系数置零,不但不影响其峰值的采集,还优化了效率,通过实验,这样的搜索方式可以把整体的算法时间缩减3~4秒。

Figure 9. Relationship between the jump positioning position and the cc value
图9. 跳跃式定位位置与cc值的关系曲线
如此在一列试纸中定位出50个试纸的Y坐标,但是横向的X坐标还是预设值,下一步就是确定500个试纸单元滴药位置的X坐标。针对每一个纵向位置坐标与每一列的预设定坐标,确定大致的感兴趣区域(ROI),在这500个坐标的ROI中再选定一模板进行横向的二次匹配检索,在二次匹配的过程中,由于有了第一步的基础,所以选定的模板可以非常小,而且精度要求很高的前提下,搜索范围也可以很小,从而极大的降低了运算量。
在二次匹配中,由于仅是定位X方向的坐标,所选模板具备在横向的区分能力即可,所以在图中,仅划取高度为1,长度为40个像素的一条线,通过选取适当阈值,将滴药区域二值化如图10,屏蔽了药液印染溢出的影响,二值化的图像仅有滴药区域,得到了稳定的滴药区域模板匹配ROI (为图中划线部分标记)。

Figure 10. ROI area and template preciselypositioned along the X direction
图10. 沿X向精确定位的ROI区域与模板
滴药区域宽度为14 pix,两个滴药区域A、B的间隙为6 pix,得到模板是为长度为34的向量。为了可以更加方便的优化精度,接着描述模板与子图的差异性,选取计算方差的方法来确定X轴的位置,最后根据计算出方差的具体数值结合实际情况配合一定参数对其定位信息进行补偿。
5. 结论
根据试纸的生产节拍需求,每张试纸的检测时间控制在了10秒以内,在单一相机与镜头环境下,实现了大视场(310 * 330 mm),与高精度(分辨力0.04 mm),进而可以根据这一精确位置确定出整张试纸的500个滴药位置的纵坐标,针对滴药情况筛选出良品与次品,本文构建的系统相比于优化前的模板匹配算法有效的提高了精度,缩短了判定时间,降低了误判率。