基于模板匹配的静脉注射滴速测量
2018-10-17余翠,李立,龙凡,张原
余 翠,李 立,龙 凡,张 原
(武汉大学 电子信息学院,武汉 430072)
1 引 言
目前静脉注射技术已经成为临床最有效、直接且常用的治疗手段之一.不同的临床病情对静脉注射的滴速要求不同,输液耗时长且需要医护人员实时监测,这给患者自身、患者家属以及医护工作人员都带来了沉重的负担[1].因此实现静脉滴注自动测速对于临床治疗和日常生活具有显著意义.
传统的静脉滴注测速主要依靠医护人员人工测量(通常通过滴15-30秒来目测),不仅检测速度慢,检测结果也不够精确;或者利用机械称重、电容计量、红外光电等方式输液检测,这些测量方案复杂不便操作,成本较高无法普及[2].
随着人工智能与机器视觉的高速发展,智慧医疗也逐渐走进人们的生活,图像处理不仅可以代替人力完成测量和鉴定的工作,保证测量过程中的自动化与自由性,而且使得测量和检查更精确.如[3]提出了一种将连续帧间差分与背景差分相融合运用到医疗中输液液滴速度检测中,但是该方法抗干扰能力差,没有考虑到复杂环境因素对结果的影响.
本文提出了一种基于模板匹配的静脉注射滴速测量方法.将图像处理中的模板匹配算法应用到液滴速度测量中,通过移动设备采集拍摄静脉注射视频,首先对视频图像进行液滴模板的提取,然后利用模板匹配找出液滴帧并提取液滴帧号,根据帧号计算出输液速度,实验证明该方法能有效地减少环境的干扰,准确地计算出液滴速度,并且方便快捷、成本低廉、操作简单,具有很好的现实应用意义.
2 用于滴速测量的模板匹配算法
2.1 模板匹配算法原理
模板匹配是数字图像处理匹配技术中一种常用方法,其主要方式是通过已知模板图像,按照相应的模式去寻找另一幅图像中是否存在已知模板图像.这里寻找模式主要是指通过相关函数的计算来寻找模板图像在另一幅图像中的位置[4].模板匹配示意图如图1所示.
常见的模板匹配算法,一种是基于灰度的模板匹配,另一种是基于特征点的模板匹配[5].本文研究模板匹配的对象主要是液滴,液滴形状较小且单一,相对应的特征点较少.所以本文所述的静脉注射液滴流速测量算法,采用的是基于灰度的模板匹配.
目前基于灰度的模板匹配的思想主要是统计学的思想,将待处理的图像看成是一个二维的信号,然后通过统计学里面的相关算法统计计算不同信号之间的相似度也就是匹配的相关程度[6].
图1 模板匹配示意图Fig.1 Diagram of template matching
主要是样本灰度图的像素平均值、方差、协方差以及相关函数等与模本之间的相似性,判断模板与样本间的对应关系[7].
2.2 液滴模板的提取
基于液滴模板匹配的难点在于液滴模板的提取,由于移动设备采集视频时可控性差,易造成视频抖动,且输液环境不同,这些都对视频图像液滴模板的提取影响十分严重,因此需要对输入的视频图像进行处理,首先利用高斯混合模型提取滴管前景,然后采用积分投影算法对滴管区域进行定位,最后通过霍夫变换提取出液滴模板,从而能较大程度减少环境的干扰,提高液滴模板提取结果的准确性.液滴模板提取的流程图如图2所示.
图2 液滴模板提取流程图Fig.2 Flow chart of droplet template extracting
2.2.1 混合高斯模型
混合高斯模型是利用若干个单高斯分布也就是正态分布的加权和进行建模的方式,能够很好的反映像素的多尖峰情况,避免光照变化或者其他背景干扰[8].在混合高斯背景模型中,实际场景画面的每个点的像素值可以由k个正太分布也就是单高斯分布组成的混合分布来表示[9],如公式(1)所示:
(1)
图3 前景提取结果示意图Fig.3 Result of foreground extraction
本文利用样本图像的像素统计信息(模式数量、每个模式的均值和标准差)表示背景,然后使用统计差分进行目标像素判断,判断为前景则将像素的值设置为255,即为一个白色像素点.反之设置为0,得到前景的二值化图像.最后进行形态学滤波,开运算滤除较小的噪声干扰,闭运算补全不连续的边缘信息,从而得到复杂背景下视频的前景提取,如图3所示.
2.2.2 投影积分算法
投影积分算法是针对灰度图像寻找灰度变化极大(小)值的算法,这种方法在本质上是一种统计方法, 主要有水平投影和垂直投影[10].
(2)
(3)
在公式(2)和公式(3)中,(x,y)表示像素所处的位置,I(x,y)表示该像素点的灰度值,n表示一行所有的像素点数,m表示一列所有的像素点数, 可见水平投影就是将一行所有的像素点的灰度值进行累加后再显示;垂直投影就是将一列所有的像素点的灰度值进行累加后再显示[11,12].
图4 积分投影算法滴管区域定位结果Fig.4 Results of locating the dopper region
视频图像进行前景提取后,接着进行滴管区域的定位,为增强边界特点,同时又减少其他非边界像素的干扰,首先将输入的前景图像进行灰度化、二值化、腐蚀膨胀等处理,然后对处理过后的图像分别进行水平方向与垂直方向进行积分投影.
滴管长度上下边界的定位:设定一个阈值T(T值设定根据实验统计得来,并且与滴管宽度像素B有关,一般T>1/2B)来进行判断;当统计像素和S≥T时上边界点出现;继续进行遍历统计像素,当出现S≤T时,下边界出现,直至遍历坐标等于图像像素宽,遍历结束.滴管宽度左右边界的定位,采取同样的思路,定位结果如图4所示.
2.2.3 液滴半径参数设置
液滴在滴管中运动时,其在二维平面中其边缘可以近似于一个圆.由于Hough变换对于不规则圆、缺边等抗干扰能力比较强,所以本文的液滴模板提取采用的是Hough变换.Hough变换检测圆的关键就是对圆的半径参数设置,包括最大半径和最小半径.
由于采集视频图像时距离远近随意性很大,相同静脉注射相同滴速的液滴在距离不同时,其像素宽度也会不同,这为液滴模板半径参数的提取造成了困难.本文利用输液滴管的实际参数,辅助完成液滴像素半径的设置.具体步骤如下:
步骤1.根据滴系数,估算液滴实际半径.
滴系数表示静脉输液时1ml药滴的滴数,单位为滴/ml,不同管径尺寸的输液器滴系数不同,我国临床常用的输液器液滴系数有10、15、20滴/ml三种型号.则将每个液滴近似为球体,已知滴系数k,可根据体积公式(4)计算出液滴实际半径R.
4πR3/3=1/k
(4)
步骤2.计算出液滴在任意视频帧的像素宽度.
取任意长宽已知(宽度为L)的平面物体,将滴管平放于其表面,然后手持手机贴近该物体平面,移动手机远离直至相机拍摄范围刚好达到该物体宽的边缘.已知手机像素宽度为W,则根据比例公式液滴像素宽度为:
r=RW/L
(5)
2.2.4 Hough变换
Hough变换是Hough于1962年提出的一种基于物体区域边界的形状描述方法.基本原理是将图像的空间中检测问题通过参数方程变换到参数空间中寻找满足该参数方程特性的峰值问题.把检测整体特性转化为检测局部特性.比如直线、椭圆、圆、弧线等[13].
图5 特征点三维锥面图Fig.5 Three-dimensional cone of feature points
经典的Hough变换检测圆是将图像分隔成许多小块,然后扫描图像特征点,将这些点按照一定的方式转换到参数空间,再用累加器存储这些点在参数空间的圆心以及半径.设定阈值,根据统计学原理累加值大于阈值时认为此特征点为圆心,相对应的坐标为半径[14].
已知圆的一般方程式为:
(x-a)2+(y-b)2=r2
(6)
其中(a,b)是圆心,r是半径.将此方程转换到参数空间,也就是将(a,b,r)当作空间坐标,而x,y为坐标量.这样每个参数点(x,y)就构成了基于a,b,r参数空间的圆锥.则图像上的任意一个特征点对应的参数空间上的一个三维锥面,如图5所示.图像空间中同一圆上的点对应于参数空间中的所有三维锥面必然交于一点,通过检测这一点可以获得圆的参数[15].
图6 液滴模板提取结果示意图Fig.6 Results of the droplet template's extraction
本文按照以上液滴半径参数设置方法,设置最小半径为0,最大半径为200像素,最终检测结果见图6.
2.3 匹配判别
提取液滴模板之后,通过计算模板与匹配区域的相似度进行匹配判别,常用的相似度计算方法主要有直方图相似度计算(如巴氏距离法),特征点的计算,感知哈希算法等[16].
图7 滴管区域匹配结果示意图Fig.7 Results of the dropper region's template matching
本文研究模板匹配的对象主要是液滴,液滴形状较小且单一,相对应的特征点较少.所以这里采取的判别方式就是将匹配区域,单独截取出来,然后进行二值化处理,再进行遍历统计像素和.根据设定好的阈值,大于阈值的判断为含有液滴帧,若小于阈值则判定为无液滴帧.记录含有液滴帧的帧号.滴管区域匹配结果如图7所示,液滴匹配区域二值化如图8所示.
图7向我们展示了利用模板匹配算法匹配判别检测到含有液滴帧的结果,第15帧为出现第一个液滴的最后一帧,第40帧为出现第二个液滴的最后一帧.根据模板匹配算法判别:第15帧和第40帧含有液滴,记录其帧号;第16帧和第41帧不含有液滴.图8分别为这四帧图像的液滴模板二值化后的结果.
图8 液滴区域匹配结果示意图 Fig.8 Results of the droplet region′s template matching
3 液滴速度检测
通过模板匹配算法提取的相邻液滴帧号后,可以计算相邻液滴出现的帧间隔. 然后根据视频的频率f,计算液滴速度V,V的计算方法主要有两种:
第一种传统的做法是直接做差值运算假设相邻液滴出现的帧号分别为n1,n2.则相邻两滴液滴出现的帧间隔为:
ΔN=n2-n1
(7)
对于由于液滴滴速过快或采集设备采集频率过高而出现同一液滴出现在多幅图像中的情况,导致提取的帧号为同一液滴,这里对同一滴出现的帧进行取均值计算,然后再计算帧间隔.液滴滴速为:
V=f/ΔN
(8)
该方法只是根据帧间差时间计算液滴滴速,没有考虑液滴在滴管中降落所耗费的时间,缺乏准确性.因此我们对此方法进行了改进,考虑了位置差,比直接根据帧间差去进行计算的结果更加准确.
如图9所示,将滴管区域看成一个二维坐标平面,水平面为离滴管上部1/2液滴直径处(即认为液滴从此水平面开始脱离滴管上部做初速度为0的匀加速运动滴入管中),横轴为x坐标,竖轴为y坐标.记录帧号n1,n2的纵坐标(液滴1/2高度的位置)分别为y1,y2.
图9 相邻两液滴帧位置差示意图Fig.9 Position difference of two adjacent drop frames
已知视频频率为f,则相邻两个液滴出现的时间差为:
Δt=ΔN/f+t2-t1
(9)
(10)
则输液时间t(h)为:
(11)
其中T为液体总量,单位为ml,k为点滴系数,单位为滴/ml.
4 实验与分析
4.1 实验数据与环境
实验条件为:Visual Studio 2010 开发平台,运用OpenCV2.9进行编程.选用的计算机的配置为 Intel Core i5-6200U CPU2.30 GHz,内存8GB,操作系统是 Windows 10.
本文采集了来自武汉大学中南医院、武汉大学校医院等医疗机构50个输液视频样本,每个视频样本15秒,视频每秒29帧,每帧图像大小为1080×1920像素.
4.2 液滴流速误差分析
根据本文的相关算法,对背景环境各异、滴速快慢程度不同、光照程度不同、拍摄距离不同的样本进行液滴流速计算统计,并与其实际速度相对比进行误差分析.如表1是其中10组样本液滴流速的测量以及误差分析,液滴滴速单位为滴/分.
表1中参考滴速为人为观测的液滴滴速,误差比为计算滴速与参考滴速差值比上参考滴速.帧差法为上文介绍的滴速计算方法一,直接由含有液滴帧的时间差计算而来,这也是传统的做法,本文方法利用模板匹配算法精确提取液滴帧号并考虑液滴落下的位置差所消耗的时间.
表1 液滴滴速误差分析比较Table 1 Error analysis of the infusion rate
由表1可以看出帧差法的实验结果比本文方法误差更大,特别是在外界环境干扰比较大的情况下,例如样本1,液滴呈黄色,背景较杂乱,光照强度为56Lx,测量误差达到8.97%.样本5,液滴无色透明,滴管与背景区分度弱,光照强度82Lx,误差率高达14.80%.图10为两个样本图.
图10 样本实际场景图Fig.10 Samples on different infusion environment
由此可见,本文方法计算出的液滴滴速比传统帧差法准确性更高,且对不同背景、光照、拍摄距离的因素的鲁棒性更好.
4.3 高帧率视频液滴测速
上述的实验采集设备采用的帧率29帧每秒,实验中有滴速超过90滴每分钟的情况.这种情况下检测液滴帧出现漏帧情况严重,如上表样本8实际速度132滴每分钟,最终的计算结果误差高达31.228%.所以本部分实验采用帧率为60帧/s的采集设备进行实验分析.表2显示了两种不同帧率的液滴检测结果.
表2 不同帧率液滴滴速结果比较Table 2 Infusion rate of different video frame rates
图11 不同帧率测量误差Fig.11 Results of different video frame rates
由图11可以看出对于滴速较快、帧率较小的静脉滴注,测量误差较大.造成误差增大的原因主要是当帧率较小时液滴滴速过快会出现漏帧的情况,同时液滴会形成光流,模板匹配法处理结果带来较大干扰.如图12为同一样本同一滴速下,分别用29帧与60帧设备进行采集样本逐帧分解后图像.
当帧率为29帧/s时液滴在滴管中形态较为模糊,形成光流场,也会出现漏帧现象;但是对于帧率为60帧/s的样本液滴形态较好,不容易出现漏帧现象.将视频帧率看作采样频率,液滴出现频率视为信号的频率.根据采样定理,即采样频率大于等于两倍的信号最大频率,也即说明了当采用较高帧率的视频进行处理时出现的干扰越小,结果更加准确,误差也就较小.移动设备发展越来越快,虽然现在60帧等高帧率视频格式的移动设备未能完全普及,但是随着移动硬件设备的高速发展,静脉注射液滴测速技术在移动平台上也能更好地实现.
图12 不同帧率视频图像Fig.12 Images of different video frame rates
5 结束语
模板匹配算法多用于机器视觉中的目标跟踪,本文将这种方法应用于静脉注射滴速检测,是智慧医疗领域的一个重大突破.现实场景中的静脉注射滴速测量受观察距离、角度、光线、背景复杂度等影响较大,本文设计的基于模板匹配的静脉注射滴速测量方法,对液滴模板的提取进行了改进:首先利用高斯混合模型提取滴管前景,然后采用积分投影算法对滴管区域进行定位分割,最后通过Hough变换提取液滴模板,从而能较大程度减少环境的干扰,提高液滴滴速检测结果的准确性.