动态图像的拼接与运动目标检测方法的研究
2014-03-17杨智尧宋占伟
杨智尧, 宋 欣, 宋占伟
(1. 吉林大学电子科学与工程学院,吉林 长春 130012;2. 吉林省启明软件园企业孵化有限公司,吉林 长春 130117)
动态图像的拼接与运动目标检测方法的研究
杨智尧1, 宋 欣2, 宋占伟1
(1. 吉林大学电子科学与工程学院,吉林 长春 130012;2. 吉林省启明软件园企业孵化有限公司,吉林 长春 130117)
动态图像运动目标检测是图像处理中的热点,但动态图像的识别范围却成了目标检测的限制,针对此问题,本文提出了一种利用图像拼接技术扩展图像识别范围、并在此基础上完成运动目标检测的方法。在图像拼接中采用了SURF图像匹配算法,运动目标识别利用背景差分法,实验中使用的是开源的Linux操作系统、以及为图像处理提供了大量算法和函数的OpenCV软件开发库。针对不同分辨率、不同角度采集的图像进行了实验研究,结果表明,可以在较好满足图像识别范围的同时,明确地检测出运动目标的相关信息。同时,本文提出一种通过图像拼接实现扩展运动目标检测的方法,满足了实时性要求,达到了增加图像清晰度的目的,但是,在摄像设备与场景之间的相对运动方面还存在着有待解决的问题,这将成为今后研究的重点方向。
图像拼接;SURF算法;运动目标检测;背景差分法
静止是相对的,运动是绝对的,动态图像不仅给人们提供了直观的动态视觉体验,还包含了远高于单幅图像的信息量,因此对动态图像的研究是现代图像处理的一个热点。动态图像[1]处理的内容主要有运动目标检测,识别和跟踪及目标行为的理解与描述。其中运动目标检测作为计算机视觉的基础被广泛研究,但随着人们对自动化、智能化提出更高的要求,图像可识别范围的局限性逐渐凸显出来。通常人们会采用广角摄像设备提高图像范围,但是广角摄像设备却存在着严重的失真,同时其价格远高于普通摄像设备,因此本研究引入了图像拼接技术[2]来增加图像采集范围。在拼接过程中对图像进行了预处理,不但避免了广角设备的失真,还增加了图像的清晰度,使目标检测更加准确可靠。为获得用于拼接的多幅图像,本研究采用了多传感器的方式,既使用双摄像头来完成图像采集。经过一系列的优化使本研究的成果有着相当广泛的应用前景,例如智能交通,军事领域等。无论国内外,在动态图像目标识别方面都做了很多研究[3-5],并且取得较好的成果,而且已有很多技术应用到实际生活中,虽然国内在这方面的研究相对落后于欧美等发达国家,但随着国内科技的不断进步,以及计算机视觉的快速发展,动态图像目标识别技术将会得到越来越多的重视。
1 动态图像拼接
图像拼接目的在于将多幅存在重叠部分的图像拼接成一幅无缝隙高分辨率图像。拼接的关键在于图像配准与图像融合,本研究除了考虑基础的图片拼接技术以外,还需完成提高图像质量,双摄像头图像采集同步,及解决拼接过程速度提升等技术和算法问题,为运动目标检测提供良好的基础。
1.1 图像拼接流程
从图像拼接技术诞生至今,已形成一套相对完整的工作流程,根据本研究的过程给出相关阐述。首先,为减少图像中噪声与干扰的影响,满足提高图像质量的要求,需要进行图像的预处理,此过程主要完成一些图像处理的基本操作,例如图像去噪、边缘提取以及直方图处理等,同时还要对图像进行某种变换,例如傅里叶变换,小波变换。
预处理完成后,进行的是拼接的关键技术——图像配准,其目的是找出待拼接图像的特征点在参考图像中对应的位置,根据对应关系进行图像变换,是本课题的关键,因为图像配准不仅直接关乎拼接图像的质量,最主要的是这一过程所选算法的好坏将给运行时间带来直接的影响。实验初期要对摄像设备进行标定,标定方法为张正友棋盘格标定法,本次实验采用的OpenCV函数库,其提供了相关程序以及标定过程介绍。
课题采用了一种设置硬件的方法来对图像配准进行简化,根据摄像头标定获得的摄像设备相关参数,对两个摄像头的位置和角度进行固定,这样就使得两摄像头采集的图像保持一个确定的位置变换关系,可实现在最初几帧图像中通过配准获得这一变换关系 H,将这一变换关系应用到后续的各帧图像中,即可省去图像配准这一过程,从而大幅减少程序运行时间。根据变换关系 H,进行坐标系统的统一。最后进行图像融合,将两幅图像的重叠部分合二为一,消除图像拼接的痕迹,实现无缝拼接。图 1为图像拼接过程的基本流程。
1.2图像配准算法分析
图1 图像拼接基本流程
目前在图像配准方面已形成一套独立的体系结构,常见方法有:基于灰度信息的方法、基于变换域的方法和基于特征的方法。其中,基于特征的配准获得的关注程度很高,因为图像的特征对旋转、尺度缩放、仿射变换都保持良好地不变性(scale invariant feature transform, SIFT),对于噪声和光照变换有较好地鲁棒性(speeded up robust transform, SURF)。SIFT[6]和SURF[3]就是能够满足不变性与鲁棒性的两种常用算法,本课题就这两种算法进行了研究。
1.2.1 SIFT与SURF
SIFT算法[4]被广范应用于图像配准,SURF算法[5,7]与SIFT算法类似,可以说SURF算法是SIFT算法的优化,SURF算法保持了SIFT算法优良的稳定性与鲁棒性,同时还减少了检测的时间,增加了实时性优势,这是本实验采用SURF算法的主要原因。通过OpenCV库中的FeatureDetector()类对两种算法进行实际对比,图 2给出对同一景物不同角度拍摄的图像,对两种方法进行了特征点检测,表 1给出了检测过程的相关参数。由此可以看出,SURF算法不仅检测出足够的特征点,而且检测时间小于SIFT算法,这证明了选取SURF算法的合理性。
图2 SIFT算法与SURF算法测得描述符示意图
表1 SIFT算法与SURF算法测得描述符数目与运行时间
1.2.2 SURF算法解析
SURF图像配准算法主要目的在于生成SURF描述子用以表示图像的特征点, SURF算法采用了Hessian矩阵的行列式来进行图像特征点[8]的判断,Hessian矩阵的一般形式为:
式中,f(x, y)表示任一个函数,由式(1)得其行列式为:
通过对det(H)的符号进行判断,可得知此点是否为极值点。对于一幅图像 P1,设其像素点满足函数 I(x, y),在此选取一种标准的二阶高斯函数G (σ)作为滤波器,求得图像的二阶偏导数,根据等式(1)可得到图像P1中各像素点对应的Hessian矩阵形式为:
式中,X=(x, y),而L(X,σ)是由I(x, y)与G (σ)卷积所得:
根据式(2)~(3)可以得到图像P1的Hessian矩阵对应的行列式,此处为方便应用,将L(X,σ)替换为离散形式D(X,σ),行列式为:
式中,ω为权值,引入ω的目的在于平衡准确值与近似值之间的误差,通常情况下 ω是通过多次试验而获得的经验值。
通过源图像与G (σ)卷积得到尺度空间,这也是SIFT与SURF时间差距的主要原因之一,SIFT尺度空间是对源图像进行重复卷积所得,即下一幅图像要利用本次的结果,SURF算法则通过调节滤波模板的大小同时处理多个层次,大大减小运行时间。尺度空间构建完成后,通过相邻点对比选取特征点,进而为特征点构造描述算子,将特征点表示出来。
1.3 相关实验内容分析
本次实验的拼接手段是Opencv中的Stitcher()结构,函数内部在配准算法方面采用的就是SURF算法,下面给出拼接部分的几个主要函数:首先通过Stitcher::createDefault(bool try_use_gpu=false)对初始值、阈值进行设定,接下来的图像配准函数Stitcher::estimateTransform(InputArray images, const std::vector<std::vector<Rect>>& rois)函数参数中images为输入图像组,参数rois是感兴趣区域,由于只关心待配准图像的重叠部分,对rois进行设定可以进一步节省时间。下一步是图形融合Stitcher::composePanorama(InputArray images, OutputArray pano)根据变换关系对图像进行融合,函数参数分别为输入数组images,输出结果pano。图3为实际采集的两幅图像及其拼接后的图像。
图3 图像拼接情况
2 动态图像运动目标检测
完成图像拼接,获得了广视角的动态图像,在此基础上进行运动目标的检测[9-10]。本实验中,检测的目的是从图像序列中将运动目标与背景分离,并进行标识。
2.1 运动目标检测的方法
目标检测通常分为静态背景与动态背景[11]两部分,由于本课题在完成图像拼接的基础上进行目标检测,考虑到算法的复杂程度,本研究重点为静态背景的情况。下面对静态处理方法进行简要概述,并结合实际情况对算法作出合理选择。
帧间差分,就是对相邻两帧进行差分,提取出两帧中的变化目标,这种方法很难提取出完整目标。光流法,是一种相对复杂的算法,它主要是通过估计图像的运动场,将相似的运动矢量合成起来,便构成了所检测的目标。虽然这种算法能够产生良好地检测效果,但是对噪声很敏感,加之以复杂的计算过程,很难适应本次实验的要求。背景差分,将当前帧与背景帧相减,原理相对简单,检测速度也比较快,最重要的是能够得到较为完整目标信息,但背景的构造及更新是一个难点,本次实验中采用的正是背景差分法。
2.2 背景差分法
对于一组动态图像中的一帧,可用f(x, y)表示,背景则用B(x, y)表示,由此可得差分值D(x, y):在本实验中,背景的初值选择为动态图像的第一帧,完成差分后对D(x, y)进行二值化处理,根据相关实验经验给出阈值 T,将低于阈值的像素赋值为0即为黑色,相反则赋值为255即为白色,而此白色部分便为运动目标,设二值化图像函数为 I(x, y),则:
对于背景更新,需采用的是基础的加权更新原理:
式中,Bk(x, y),表示当前背景,而Bk-1(x, y)表示的是上一帧的背景,α 是加权值称作更新率,根据式(8)可知,α 值的选取对背景更新带来很大影响,当α 值过大背景更新很快,但会引入噪声,而α 值过小背景更新过慢,根据实验对比α 值取在0.01到0.10之间较为合理。图4为α 取0.05时得到的运动目标检测情况。
图4 运动目标检测情况
3 实验内容与结果
根据需求进行硬件设备的选择,实验的重点是实时性,要求硬件设备有足够的运行速度,其次还需考虑可行性、实用性等问题,合理选定设备。本实验选择的主要处理设备为Intel Core2双核 2.0 GHz CPU,摄像设备为市场上广泛使用的USB摄像头中微星ZC0301。软件方面,采用的是Linux系统,加之以广泛应用于图像处理的Opencv图形开发库,实现动态图像拼接、运动目标检测。
实验初期设定了两摄像头的角度与距离,因此摄像头参数之间有一个固定变换关系,可采用只在最初几帧测定此变换关系的方法,来减少匹配时间的消耗,而实验过程中会以一定的时间间隔进行变换关系的再匹配,以克服光照变换所带来的影响。
对一般视频而言,图像每秒帧数为25 fps,对于本实验,在满足图像拼接与目标识别的同时,很难达到这一要求,因此应当在满足人眼的动态视觉要求的前提下,适当减少图像帧数。表 2展示本实验在不同分辨率下有、无ROI等情况下的帧数。
表2 图像帧数情况
硬件设备配置完成,软件开发完毕,所得实验结果如图5所示。从图5中可以看出,通过图像拼接完成了识别范围扩展,在此基础之上精准完成了运动目标的识别。图中边缘部分的不整齐是图像匹配造成的,这一点可以通过边缘裁剪来解决,总体上本实验已达到课题目标。
图5 图像拼接与运动目标识别整体结果
4 结 论
本次课题研究主要实现了在完成动态图像运动目标检测的同时,通过图像拼接技术扩大了图像识别的范围,以节约资源为前提克服了当前目标检测识别范围不足的缺陷,通过合理选择图像配准算法,调整图像分辨率,以及图像ROI来减少图像拼接的时间消耗,可产生满足人眼要求的、清晰度要求的准实时动态图像,并根据背景差分法,清晰地提取出运动目标的轮廓信息,为接下来的目标分析打下了良好的基础。综合本次课题的结果,以及实验过程中所遇到的问题,对相关研究方向的未来发展做出展望,今后的重点目标是本次实验所未解决的动态背景下的目标检测,以及如何进一步提高图像分辨率等问题。
[1] Zitova´ B, Jan F. Image registration methods:a survey [J]. Image and Vision Computing, 2003, 21(11): 977-1000.
[2] 王 娟, 师 军, 吴宪祥. 图像拼接技术综述[J]. 计算机应用研究, 2008, 25(7): 1940-1943.
[3] 时 磊, 谢晓方, 乔勇军. 基于SURF算法和OpenCV的人脸特征检测技术研究[J]. 计算机与数字工程, 2010, 38(2): 124-126.
[4] Cai Guorong, Jodoin P M, Li Shaozi, Wu Yundong, Su Songzhi, Huang Zhenkun. Perspective-SIFT: an efficient tool for low-altitude remote sensing image registration [J]. Signal Processing, 2013, 93(11): 3088-3110.
[5] 张亚娟. 基于SURF特征的图像与视频拼接技术的研究[D]. 西安: 西安电子科技大学, 2013.
[6] Yang Fan, Deng Zhensheng, Fan Qiuhong. A method for fast automated microscope image stitching [J]. Micron, 2013, 48: 17-25.
[7] 仝如强, 黄玉清, 田瑞娟. SURF算法及其对运动目标的检测跟踪效果[J]. 西南科技大学学报, 2011, 26(3): 63-67.
[8] Nascimento E R, Oliveira G L, Vieira A W, Campos M F. On the development of a robust, fast and lightweight keypoint descriptor [J]. Neurocomputing, 2013, 120(S1): 141-155.
[9] 张晓慧. 视频监控运动目标检测算法的研究与实现[D].西安: 西安电子科技大学, 2012.
[10] Maillard J, Leny M, Diakhaté H. Enhancing the audience experience during sport events:real-time processing of multiple stereoscopic cameras [J]. Annals of Telecommunications, 2013, 68(11-12): 657-671.
[11] Ali I, Dailey M N. Multiple human tracking in high-density crowds [J]. Image and Vision Computing, 2012, 30(12): 966-977.
The Research of Dynamic Image Mosaic and Moving Object Detection Method
Yang Zhiyao1, Song Xin2, Song Zhanwei1
(1. College of Electronic Science and Engineering, Jilin University, Changchun Jilin 130012, China; 2. Qiming Software Park Business Incubation CO., LTD, Changchun Jilin 130117, China)
The moving object detection of dynamic image, in the modern world is a key point, a difficult point and also a hotspot in image processing, it has a lot of useful application, such as keep a lookout over traffic situation in intelligent transportation, the precise guidance in military affairs and so on, but the recognition range of dynamic image has been the limitation of moving object detection. In order to solve this problem, this paper have made a research and put forward a kind of new method that using image mosaic technology to expand the scope of image recognition, and then based on the wide angle image we have get to finishing the detection of moving object. In this experiment, first we considered the problem of real-time and then we choose the SURF (speeded up robust transform) as an image matching algorithm instead of the SIFT (scale invariant feature transform) which is usually adopted in image mosaicking, because of the SURF algorithm can provide enough characteristic points and on other hand it’s working speed is faster than SIFT algorithm, and after the image mosaic we start to do the detection work about the moving object, at this time we took advantage of the background difference method, which can help us detect the moving object completely and quickly. Second, we considered the problem of practicability and then we choose the open source systemLinux as the operating system and the software library which named OpenCV is used in this experiment as the tool of image processing which can provided a large number of algorithms and functions, the reason that we choose this software is that all of them are free. We can get them through the internet easily. We use the image that we take about one sight from different angle, different distance and the image with different resolution rate to do this experiment, so that we can have a general result. At the end of this experiment, the study results show that, we can get the dynamic image that satisfy the requirement of real-time and the enhancement of the resolution rate, and it can detect the moving object clearly and get the useful information of the moving object completely, at the same time this study can gave a more spacious image recognition range. In this paper we put forward a new kind of moving target detection method which can gave a widely recognition range of an image by image mosaic, and at the same time on one hand we can fulfil the real-time requirements, also can fulfill the requirements of practicability, on the other hand we can also increase the image resolution rate. However, there is still some problem we can’t solve in this study, just like the relatively motion between the camera and the sight. After finish the work of this research we will start to make a deep study about this topic so that at the next study we will take steps to solve the problem persist.
image mosaic; speeded up robust transform; moving target detection; background difference
TP 391
A
2095-302X(2014)06-0893-06
2014-06-04;定稿日期:2014-07-16
长春市物联网重大科技专项资助项目(2011144)
杨智尧(1989-),男,吉林白山人,博士。主要研究方向为图像处理、嵌入式系统研究。E-mail:naruto_yang@163.com
宋占伟(1962-),男,吉林长春人,教授,博士。主要研究方向为数字信号处理、图像处理、智能交通、嵌入式系统研究。E-mail:songzw@jlu.edu.cn