基于高斯混合模型联合CamShift的运动图像检测跟踪方法
0 引言
新时期,移动互联技术与人工智能技术飞速发展,为生产生活提供了巨大的便利。作为人工智能的重要分支,运动目标跟踪方法将图像处理、智能计算以及模式识别等众多技术相融合,在众多领域应用广泛,如:安全监控、目标探测、车辆跟踪等。CamShift算法是典型的特征跟踪算法,依据目标物的颜色特征进行识别跟踪,其运算复杂度低,实时获取跟踪结果,且性能稳定。不过,一旦目标物的颜色与背景色、目标物颜色相似,或者存在遮挡的情况下,就会出现目标丢失、准确性大大降低的问题[1-4]。
徐琨等人在2009年时提出了基于CamShift的自适应颜色空间目标跟踪算法,依据当前量和类间平均距离动态地选取当前的颜色空间,克服了只适用于单个颜色空间的缺陷[5]。倪麒等人在2010年将高斯混合模型同CamShift算法结合,通过背景差分提取出运动物体所在的局部区域避免了手动选取的缺陷[6]。王冉等人则在2012年提出将运动预测与Camshift算法相结合以提高对于运动目标的跟踪准确率[7]。本文将提出一种将高斯混合模型引入CamShift算法中的优化方法,以解决在目标与背景差异较小情况下,目标丢失率升高的问题,并通过实验证明该方法的可行性与准确性。
1 CamShift动态图像图像跟踪
1.1 颜色概率分布提取
本实验中,为统计图像颜色概率分布情况,我们先将图像由RGB颜色空间转换为HSV颜色空间。因为HSV色度空间在色度、饱和度以及亮度三个分量上三者之间相互独立并且可以很好的反映出图像的灰度信息以及色彩信息,且HSV的H(色度)分量可以比较好的反应出目标色彩信息,可将H分量作为统计目标颜色直方图的考量依据。
2.3 患者生存分析 患者生存146~908 d,平均中位生存时间(496±233)d。放化疗后1、2、3年生存率为73.1%、21.9%、13.1%。生存曲线见图1。Cox模型分析(表3)显示:T分期和淋巴转移数目是患者生存的影响因素(P值分别为0.048和0.019);跳跃性转移淋巴结数目越多,患者预后越差。
图1 RGB颜色空间转换HSV颜色空间
具体转换过程中,先把原图中的像素点替换为对应的颜色直方图以作后续统计,最终将其归一化为[0 255],最终获取到图像颜色概率分布图[8-12]。具体步骤如下:
当然,市场依然存在许多不确定因素,诸如环保限产、能源供应、尿素期货上市等。但短期而言,在保障来年春耕用肥的前提下,结合国内的供需形势,市场的不确定因素也以利好居多。尿素期货上市即使经历了长期准备,各方面研发工作也基本就绪,但也难以在今年完成上市。
统计并整理两版教材中“平方根”“无理数的引入”两块内容中的知识点的背景来源(见图7),我们发现:两版教材中知识点的四个背景分布有很大的差异,数学背景所占比例最高,远高于其他三个背景所占比例之和,其他三个背景各自所占比例较低或没有.其中,浙教版比美GMH版多了文化背景和科学背景,但是缺少生活背景.
1)根据查找轮廓,读入一帧图片,预览;
2) 将图片中所有颜色换成HSV色度空间;
3)设定识别颜色的取值范围,分成R、G、B三种色彩;
4)在图片中查找相关颜色,转换成二值图,并将所得的二值图像四边都分别增加一个像素,设定为查找轮廓;
5)重复上面步骤,直到所有颜色都识别完毕。
多年来,我校对实验报告册及期末考试试卷要求在一定时期内存档,而我们的实验室空间有限,需要存放的资料多,以至于查找资料较为繁难、年代久远的资料甚至已经遗失。电子版实验报告方便文档存放,而且还可以归类存放,这样既便于资料查询,又减少了不必要的人力资源浪费,同时向无纸化办公模式[12]发展,减少资源浪费。
1.2 CamShift目标搜索
图2 Camshift图像跟踪原理
在跟踪搜索领域,CamShift算法是一种常见的根据目标特征进行目标跟踪的算法,该算法以目标图像颜色的直方图为依据,只要通过在概率分布中不断迭代,就可以最终寻找到极值并进行目标定位。如图2为CamShift图像跟踪原理,CamShift算法思想主要包含如下几点:
1)目标局部发生位移,影响目标颜色概率分布;
2)实时计算、统计整个目标不同颜色的概率分布情况,分析目标变化情况;
高斯混合模型的核心是能否构建一个合理的背景模型并且进行背景模型的更新操作。一般构建一个合适的背景模型是通过对一个时间段内的背景图像的累积获取的:第一步是获取一段不存在运动物体的视频序列,将这一背景序列的点(x,y)的像素值的和表示为S(x,y),而用Sq(x,y)代表这一背景序列中像素点(x,y)的平方和,两者分别如下表示:
4)对搜索框中的颜色分布进行计算和分析,实时、灵活调整搜索框位置和大小。
1.3 搜索质心位置
本设计中,首先分析图像颜色概率分布确定目标搜索窗大小,假定其为s;计算出所采用的搜索窗的质心坐标,其可以采用以上求得的概率分布图的零阶矩和一阶矩求出来,其零阶矩如下:
(1)
而x以及y的一阶矩如下所示:
(2)
通过以上方法求得的搜索窗质心为:
得出搜索框质心位置,这其中,I(x,y)是像素点(x,y)的值,其横坐标和纵坐标在搜索窗内。
1.4 搜索窗调整
搜索窗的大小需要根据需要进行适当调整,其大小根据下式重新确定:
(3)
重新确定的搜索窗的大小为:
(4)
(5)
这其中:
照度仪检测值:88lux-125lux;
该品种由福建省泉州市农业科学研究所(福建省泉州市晋江市池店镇泉安北路,邮编:362212)和云南省农业科学院经济作物研究所培育。
2 高斯混合模型CamShift算法
2.1 高斯混合图像模型
高斯模型用高斯概率密度函数精确量化图像,将图像分解为若干个基于高斯概率密度函数形成的模型。为提高模型的精确性,本文在模型中引入权值均值,建立背景图像并实时更新,后续处理中结合权值、权值均值和背景图像等因素对像素点进行前景和背景的分类。所以:
项目式教学的目的是将知识、技能的学习融入任务完成过程中,调动学生的学习积极性,让学生积极地学习,自主地进行知识建构,培养学生的创造能力和独立工作能力。它综合了当前任务驱动教学、案例教学、探究教学(问题式)的特点,对培养高技能人才效果明显,在发达国家职业教育中已普遍应用[2]。
Dik(x,y)=|fk(x,y)-Bk(x,y)|
(6)
并且根据如下公式进行阈值判断:
(7)
这其中,fk是当前的图像帧,而Dk则是差分得出的图像,Rk是二值化后的图像,Bk则是图像的背景。
3)将历史frame的计算值,作为实时计算的frame的Search Window的初始值;
S(x,y)=I1(x,y)+I2(x,y)+I3(x,y)+...+Ik(x,y)
(8)
(9)
针对于高斯分布的背景模型的均值和方差如下计算:
(10)
(11)
其中,N是整个背景序列中背景图的数量。
在整个环境中,随着时间的变化,背景也会发生改变。所以为了避免系统产生较大的误差,需要对背景进行相应的更新,这里采用自适应的背景模型更新方法,其公式如下表示:
1.天下才人俱以一傲字败,天下庸人俱以一惰字败;2.不能不趁三十以前立志猛进也;3.集思广益本非易事,要当内持定见,外广延纳;4.莫问收获,但问耕耘;5.天下事当于大处着眼,小处下手;6.先静之再思之,五六分把握即做之;7.凡全付精神专注一事,终身必有所成;8.智慧愈苦而愈明。
(12)
(13)
公式内的系数α是更新速度,在采用自适应的背景 更新算法时需要将运动物体排除在背景模型的更行之外,而且不能要求每一个图像帧都进行背景模型的更新[17-18]。
2.2 基于高斯混合模型的CamShift运动目标跟踪方法
采用高斯混合模型对一个移动的目标进行检测,先对图像进行二值化处理,再根据高斯混合模型计算得出的当前帧的背景图像。高斯混合模型可以得出每一帧的当前背景进而提取出目标区域中的移动目标部分,进而实现运动目标的跟踪监测。高斯混合模型联合CamShift运动图像跟踪检测实施步骤如下:
规划实施影响补偿方案风险性分析研究——以哈密至郑州输电工程哈密煤电基地规划水资源论证为例……………………………………………………… 郭贺洁(9.42)
1)高斯混合模型标示出跟踪区域,作为后续算法跟踪初始搜索窗;
2)计算目标跟踪区域颜色概率分布数据;
这个游戏规则简单,费用也不高,所以吸引了许多的人来撞运气,结果是扫兴者居多。为什么会出现这样的结果?带着这样的问题我们引入随机变量数学期望的概念并用它来解决这个问题,我想不仅可以使学生加深对随机变量数学期望的理解,更体会到了学习的快乐。
3)用CamShift算法计算获取下一步搜索窗具体位置、长宽等数据;
4)计算出运动目标所在矩形区域的中心、横纵坐标、搜索窗等参数的绝对差值;
5)判断步骤4中得到的差值是否超出设定的阈值:若差值大于阈值,则采用第一步中获取的矩形框作为下一个搜索窗,否则的话将步骤(的搜索窗作为下一个搜索窗,并从第二步重新计算得出结果。
3 实验与分析
3.1 代码实现
本次实验智能高清摄像机采用海康威视某型号200 W像素CCD,操作系统为Linux操作系统。算法部分在Linux ubuntu操作系统下(采用ubuntu操作系统的原因在于该系统裁剪性好,且对多种接口友好度高),采用OpenCV2.3视觉库编程设计实现,将实现好的软件合并到智能高清摄像机中。其部分代码如下:
import rospy
import cv2from cv2
import cv as cvfrom rbx1_vision.ros2opencv2
import ROS2OpenCV2from std_msgs.msg
import Stringfrom sensor_msgs.msg import Image
as well as the min and max value (the V in HSV) and a
采集开始时间:16时32分;
def __init__(self, node_name):
ROS2OpenCV2.__init__(self, node_name)
self.node_name = node_name
The minimum saturation of the tracked color in HSV space,
import numpy as np
threshold on the backprojection probability image.
self.smin = rospy.get_param("~smin", 85)
self.vmin = rospy.get_param("~vmin", 50)
高校教务管理人员对于毕业生的学业管理是一个持久讨论的话题,尤其是在新形势下,即90后大学生即将毕业的特殊情境下.我们应该清醒地看到,除了上面提到的几点以外,毕业生学业管理还有很多工作需要去做、去思考.
self.vmax = rospy.get_param("~vmax", 254)
self.threshold = rospy.get_param("~threshold", 50)
3.2 测试参数
测试设备:海康威视某型号200 W像素CCD高清摄像机;
测试环境:某地级市某狭窄双向行驶道路;
l是新确定的搜索窗的长,而ω是新的搜索窗的宽度。
class CamShiftNode(ROS2OpenCV2):
视频帧率:75 fps;
可以看出,随着镜头画面中跟踪物的不断移动,正方形搜索窗一直标示着运动的目标,这证明了所提方法可以完成对运动目标进行跟踪的目的,充分证明方法是可行且有效的。
拍摄时,摄像头位置较为固定,可理想化为稳定状态;
设定:跟踪目标质心为黄色、检测框为绿色、检测调整框为灰色。
高校机关在高校发展中所起作用的主要衡量标准就是师生对机关工作的满意程度,要通过各种形式的教育、学习将这一理念不断灌输给机关工作人员,要使机关工作人员有大局观,树立“校兴我荣”的信念,把工作的重心集中到为师生服务上来,强化机关工作人员的服务理念。可以参照服务类企业的管理和培训方式,每年利用假期参考专业教师企业现场挂职的方式,分批安排机关工作人员进入服务类企业相应岗位挂职,学习企业的服务和管理经验,结合各部门的实际情况,将服务理念融入到日常工作中。
我们对设计的目标跟踪方法进行实验验证,验证可行性以及准确性。可行性的验证设计为使用该方法对一段录制好的视屏进行动态目标的跟踪提取,以判断其是否可以完成运动目标的跟踪目的。准确性是验证跟踪目标不丢失,且维持较长的跟踪时间。图3为Ubuntu系统下编程示例。
图3 Ubuntu系统下编程示例
3.3 验证结果分析
图4 低照度环境下较大画面动态目标跟踪结果
验证结果如图4所示,其中正方形方框为检测框,较粗且不规则线段为跟踪目标质心移动轨迹。
1)可行性:
跟踪目标数:4个;
且在跟踪过程中,黄色质心点随着时间的推移构成了四条连续、未间断的线条轨迹,且没有出现离散点。这说明在跟踪过程没有出现丢帧以及目标丢失的情况。
2)准确性:
本次测试实在黄昏时间段,光照条件较差,照度仅为88lux-125lux(从光学角度来看,该光照数值说明光照条件较差,属于恶劣光照环境)。测试环境中,不断出现行人、自行车、电瓶车等移动物体,干扰性较大,目前算法可以准确跟踪到画面中的移动物体。
四个跟踪目标中,左上角白色小车与JAC小型卡车均整体位于检测框内,左起第三辆银色小车的上半检测框侵入车辆图像上边缘内,最右边银色面包车的检测框上边缘和左边缘均有一定程度的侵入。说明检测框跟踪效果较好,没有出现目标的丢失,且检测框的准确性较高(没有出现30%以上的误差)。四个跟踪目标中仅有JAC牌小型卡车出现了检测调整框,说明检测框调整及时且准确。
四个跟踪目标的质心轨迹均平滑、线性,没有出现离散的质心点,这说明跟踪的效果相比较于普通的跟踪算法来说,有较大的性能优势。
3.4 结果讨论
实验环节准确、充分证明了高斯混合模型联合CamShift算法的可行性,于以往跟踪算法相比,其优势如下:
何良诸回到省城,走进公安厅对过的咖啡店,在吧台打过电话后,捡个临窗位置坐下。服务小姐送上热毛巾和晨报。何良诸一怔,头版赫然刊登消息:省领导关心北大坎市矿工生活,拨专款雪中送炭。
1)高斯混合模型的加入,使得CamShift算法的性能大幅度提升,主要体现在丢失率的降低和连续跟踪能力的增强;
2)RGB颜色空间到HSV颜色空间的转换使图像采集数
据的处理更为可控,提高了算法的运算性能,保证了运算速度。
综合上述,方案2的交通组织优化方案更好,在不影响施工的前提下,对周围影响较小,总体上能够保持一种较为稳定的交通运行状态,故选择方案2.
与其他跟踪算法相比,本设计也存在一些美中不足,主要是高斯混合模型的加入大大提高了数据预处理环节的运算量,对硬件运算能力要求较高。若后续算法优化环节能够降低对硬件的要求就更为理想,将大幅度降低该设计实际应用的风险,提高经济性。
4 结论
本文基于CamShift算法,结合高斯混合模型对于图像目标定位设计了一种运动目标跟踪方法。提出了采用高斯混合模型对目标图像的修正,提出存在运动物体的目标区域的方法。这一方法通过直接运算,提高了系统的适应性与效率。通过CamShift算法采用一个根据高斯混合模型得出的搜索窗对目标区域进行目标跟踪。文章最后通过实验进行测试,证明该算法跟踪效果较好,且不会出现跟踪丢失的现象,本文所提出算法很好克服了运动目标跟踪过程中目标跟踪过程中目标发散,容易丢失的缺点,具有很好的适用性。
参考文献:
[1] 张 娟, 毛晓波, 陈铁军. 运动目标跟踪算法研究综述[J]. 计算机应用研究, 2009, 26(12):4407-4410.
[2] 胡瑞钦,张立建,孟少华.基于OpenCV的图像椭圆特征识别与定位研究[J]. 计算机测量与控制2016(12):116-118.
[3] 常发亮, 刘 雪, 王华杰. 基于均值漂移与卡尔曼滤波的目标跟踪算法[J]. 计算机工程与应用, 2007, 43(12):50-52.
[4] 周志宇, 汪亚明, 黄文清. 基于动态图像序列的运动目标跟踪[J]. 浙江工程学院学报, 2002, 19(3):165-170.
[5] 徐 琨, 贺昱曜, 王卫亚. 基于CamShift的自适应颜色空间目标跟踪算法[J]. 计算机应用, 2009, 29(3):757-760.
[6] 雷阳阳,程维明,何康华.基于线阵CCD的图像采集系统设计[J]. 计算机测量与控制2016(11):215-218.
[7] 王 冉. 基于Camshift算法的运动预测目标跟踪改进算法研究[D]. 济南:山东大学, 2012.
[8] 赵文倩, 匡逊君, 李明富. 基于改进的Camshift运动目标跟踪算法的研究[J]. 信息技术, 2012(7):165-169.
[9] 钱永青, 谢勤岚, QIANYong-qing,等. 结合Camshift和Kalman预测的运动目标跟踪[J]. 计算机工程与科学, 2010, 32(8):81-83.
[10] 刘 雨,周丽娟.基于谱分解的模糊C均值算法在彩色图像分割中的应用[J]. 计算机测量与控制,2016(12):168-171.
[11] 刘 明, 赵孝磊. 一种改进的Camshift目标跟踪算法[J]. 南京理工大学学报(自然科学版), 2013, 37(5):755-760.
[12] 张春林, 李小坚. 基于帧间差分和背景差分结合的Camshift目标跟踪算法[J]. 工业控制计算机, 2014(6):118-120.
[13] 李劲菊, 朱 青, 王耀南. 一种复杂背景下运动目标检测与跟踪方法[J]. 仪器仪表学报, 2010, 31(10):2242-2247.
[14] 罗 敏,李 辉.低照度条件下超分辨率人脸图像采集系统设计与实现[J]. 2016(11):229-231.
[15] 周 帅, 秦明伟, 侯宝临. 结合局部差分的CamShift动目标跟踪算法[J]. 自动化仪表, 2017, 38(2).
[16] 杨 杰, 穆平安, 戴曙光,等. 一种改进Camshift算法的研究[J]. 计算机应用与软件, 2014(2):167-170.
[17] 邬大鹏, 程卫平, 于盛林. 基于帧间差分和运动估计的Camshift目标跟踪算法[J]. 光电工程, 2010, 37(1):55-60.
[18] 谭 艳, 王宇俊. 一种结合背景差分的改进 CamShift 目标跟踪方法[J]. 西南师范大学学报(自然科学版), 2016, 41(9):120-125.