运动目标的检测是计算机图像处理与图像理解领域里一个重要课题,在机器人导航、智能监控、医学图像分析、视频图像编码及传输等领域有着广泛的应用。

                                      

图像目标检测过程 图像处理目标检测方法_图像处理

目标检测方法分类

  第一,已知目标的先验知识。在这种情况下检测目标有两类方法,第一类方法是用目标的先验知识训练一堆弱分类器,然后这些弱分类器一起投票来检测目标,如boosting, random forest 都是这个思路,大家熟知的adaboost人脸检测也是如此。第二类方法是根据先验知识找到目标和非目标的最佳划分线,如SVM.这两类方法各成一家,各有所长,都有着不错的表现。

  第二,未知目标的先验知识。此时不知道要检测的目标是什么,于是什么是目标就有了不同的定义。一种方法是检测场景中的显著目标,如通过一些特征表达出场景中每个像素的显著性概率,然后找到显著目标。另一种方法就是检测场景当中的运动目标了。

经典目标检测方法

1、背景差分法

  在检测运动目标时,如果背景是静止的,利用当前图像与预存的背景图像作差分,再利用阈值来检测运动区域的一种动态目标识别技术。

  背景差分算法适用于背景已知的情况,但难点是如何自动获得长久的静态背景模型。

  matlab中单纯的背景差分直接是函数imabsdiff(X,Y)就可以。

2、帧差分法

  利用视频序列中连续的两帧或几帧图像的差来进行目标检测和提取。在运动的检测过程中,该方法利用时间信息,通过比较图像中若干连续帧获得对应像素点的灰度差值,如果均大于一定的阈值T2,则可以判断该位置存在运动的目标。

  较适合于动态变化场景。

3、光流场法

  利用相邻两帧中对应像素的灰度保持原理来评估二维图像的变化。能够较好的从背景中检测到相关前景目标,甚至是运动屋里中的部分运动目标,适用于摄像机运动过程中相对运动目标的检测。

  开口问题、光流场约束方程的解的不唯一性问题。不能正确的表示实际的运动场。

        例子如下:

       1.首先在一帧图像内随机均匀选取k个点,并滤除那些邻域纹理太光滑的点,因为这些点不利于计算光流。

图像目标检测过程 图像处理目标检测方法_目标检测_02


       2.计算这些点与上一帧图像的光流矢量,如上右图,此时已经可以看出背景运动的大概方向了。

       

图像目标检测过程 图像处理目标检测方法_类方法_03


       3.接下来的这一步方法因人而异了。

       2007年cvpr的一篇文章Detection and segmentation of moving objects in highly dynamic scenes的方法是把这些光流点的(x,y,dx,dy,Y,U,V)7个特征通过meanshift聚类来聚合到一起,最后形成运动目标轮廓。

新目标检测方法

       其实写到这里想了想到底能不能叫目标检测,博主认为图像的前背景分离也是目标检测的一种(博主才疏学浅,求赐教)

1、像素点操作

  对每个像素点进行操作,判别为前景或者背景两类。如下面的图片所示:

  

图像目标检测过程 图像处理目标检测方法_类方法_04


2、低秩矩阵应用

  背景建模是从拍摄的视频中分离出背景和前景。下面的例子就是将背景与前景分离开。使用的方法是RPCA的方法。

  其网址以及效果如下:

  http://perception.csl.illinois.edu/matrix-rank/introduction.html

  

图像目标检测过程 图像处理目标检测方法_类方法_05


3、深度学习

  FCN + denseCRF 精确分割+语义标签。图像中的前景目标检测分割做的很好,下面还能做出语义检测,判断出图中的东西属于什么。This demo is based on our ICCV 2015 paper :Conditional Random Fields as Recurrent Neural Networks,

  测试网址以及测试图像如下:

  http://www.robots.ox.ac.uk/~szheng/crfasrnndemo

  

图像目标检测过程 图像处理目标检测方法_类方法_06







©1999-2012, csdn.net, All Rights Reserved