本文包含原理图、PCB、源代码、封装库、中英文PDF等资源
您需要 登录 才可以下载或查看,没有账号?注册会员
×
摘 要: 设计了一套基于机器视觉的大输液可见异物自动检测系统。利用高速旋转装置获取运动异物的序列图像,采用嵌入至高速DSP中的异物检测与识别算法对序列图像进行处理,DSP将处理结果输送至控制器,并由控制器做出相应动作。重点研究了异物的检测与跟踪识别方法,针对快速降落及相似异物难以准确跟踪的问题,对Mean Shift跟踪算法作了一系列改进。最后的实验结果验证了算法的有效性和该系统的实用性。
关键词: 机器视觉; 图像处理; Mean Shift;自动检测
输液是医疗保健中的重要组成部分,在临床应用中已广泛使用。然而,若含有玻璃碎屑、橡皮屑、毛发、纤维等可见异物的输液产品注射进入人体,将对患者造成极大的伤害。因此,许多国家在药典中规定,要对每一只或每一瓶医用液体进行异物检测。基于机器视觉的异物检测方法克服了传统人工灯检方法劳动强度大、检测效率低的缺点。若从国外引进这方面的设备不仅价格昂贵,而且由于药剂容器制造工艺的差别导致检测精度不理想。因此,我国迫切需要自主研发适用于国内液体异物检测的先进设备及技术。为此,本文分析并设计了基于机器视觉的大输液可见异物检测系统。
1系统硬件设计
1.1系统工作原理
该系统针对机器视觉检测大输液异物过程中存在对噪声敏感、难以区分异物与气泡的问题而设计的一套自动检测系统。首先利用摄像机拍摄生产线上每只输液瓶的连续运动图像,并将图像信号送入DSP处理器,DSP利用嵌入至其中的异物检测识别算法对图像进行处理,并将处理后的数据送入ARM控制器中。最后控制器根据预设条件(可见异物的大小和数量)判断输液液体是否合格,并发送控制信号给执行机构,剔除不合格的输液瓶。
在静止时,输液瓶中的可见异物会沉在瓶底,而且输液瓶本身还可能存在瓶子缺陷、瓶外灰尘、瓶身刻度等静止干扰,这些都将增加检测的难度。为了将这些静止干扰与运动异物分离,设计了专门的旋转机构将输液瓶先旋转然后急停。由于惯性和重力的作用,可见异物将在输液中做旋转下沉运动。当从垂直于输液瓶的侧面拍摄图像时,异物将在序列图像中做类似直线的连续运动。此时,摄像机跟踪拍摄输液瓶以获得运动异物的连续图像,作为后续异物检测的基础。大输液中的异物分为黑色和白色两大类,为增加异物与背景的对比度,对黑色异物采用LED背部白光照明方式,对白色异物采用LED底部红光照明黑色背景方式。
1.2 基于DSP的检测系统设计
根据系统工作原理,该系统由光电传感器、夹持与旋转机构、LED光源、摄像机、DSP图像处理单元、ARM控制器、剔除机构等组成。本文采用了高灵敏型低照度工业CMOS摄像机,它采用美国OmniVision公司生产的OV7725作为核心传感器。OV7725工作电压低,提供单片VGA摄像头和图像处理的所有功能,包括自动曝光控制、自动白平衡等,VGA格式图像采集速率可高达60 S/s。通过标准的SCCB总线控制,可以输出多种分辨率的8 bit或10 bit图像,支持RGB和YUV/YCbCr等多种图像输出格式。在本设计中,采用的是8 bit 640×480的YUV(4:2:2)格式,LED光源作为CMOS摄像机的辅助光源。本设计选择专用于数字媒体应用的高性能32 bit定点TMS320DM642 DSP[1]芯片作为运算器,专门处理耗时的异物检测识别算法,其工作主频最高达720 MHz,处理性能可达5 760 MIPS,满足系统的精确性和实时性要求。TMS320DM642程序执行过程中,代码和数据缓存在SDRAM中,对应TMS320DM642上的CEO映射的地址空间。SDRAM使用两片HY57V283220TP-6, 每个HY57V283220TP-6均为32 bit数据总线的SDRAM。其中,高32 bit存储在一个SDRAM中,低32 bit存储在另一个SDRAM中,从而满足TMS320DM642所需的64 bit数据总线要求。系统外围部分选用了S3C2440处理器作为控制单元,包含了图像数据采集控制、剔除设备运行及光电传感器读取等功能。系统参数设置和运行过程显示采用了带触摸功能的AT043TN24液晶模块。 检测系统如图1所示。
检测系统工作流程如下:
(1)传送带将输液瓶送至检测区,同时光电传感器检测到位后,输出检测信号至ARM控制器,ARM驱动输液旋转设备夹住瓶口并开始旋转。
(2)旋转输液瓶到达摄相机拍摄位置时,ARM停止旋转设备运行,同时开启摄像机及LED辅助光源。
(3)摄像机按照预先设定的曝光时间连续拍摄指定帧数的图像,以YUV(4:2:2)格式输出至DSP的SDRAM缓存区中。
(4)DSP运行异物检测与识别算法,对缓存区保存的序列图像数据进行处理,并将处理后的识别结果传送至ARM。
(5)ARM控制器根据预设的范围参数对识别结果进行判断,控制剔除设备剔除不合格的输液瓶,并将处理结果显示在LCD上。
2 系统检测识别算法设计
输液在旋转过程中不可避免地会产生向上运动气泡,为了提高检测的准确性,排除气泡干扰,本文采用先跟踪后检测的异物检测方法。首先对连续多帧旋转-急停-跟踪拍摄的大输液瓶图像中的可疑运动目标进行分割,初步确定异物的大小、数目、位置等信息,并以这些信息为基础连续跟踪数帧图像,根据运动目标在帧间运动的连续性和方向性判别异物气泡。为了避免运动异物在连续两帧中位移不大导致不利于检测的情况及满足检测的实时性要求,本文对每瓶输液瓶图像选取等时间间隔的5帧图像并取其亮度分量Y(即灰度信息)做检测。
在采集到的单帧图像中,包含有异物、静止干扰以及大量的噪声,使得异物目标和背景的对比度和图像的信噪比很低,不利于异物目标的提取。因此,本文首先建立序列图像的背景,然后利用背景减除法提取异物图像。为了更准确地分割出异物,本文对异物图像利用形态学方法进一步去除背景亮度,增强目标能量。最后利用阈值分割法进行异物分割。异物检测识别算法流程如图2所示。
|