运动目标的检测是计算机图像处理与图像理解领域里一个重要课题,在机器人导航、智能监控、医学图像分析、视频图像编码及传输等领域有着广泛的应用。
第一,已知目标的先验知识。在这种情况下检测目标有两类方法,第一类方法是用目标的先验知识训练一堆弱分类器,然后这些弱分类器一起投票来检测目标,如boosting, random forest 都是这个思路,大家熟知的adaboost人脸检测也是如此。第二类方法是根据先验知识找到目标和非目标的最佳划分线,如SVM.这两类方法各成一家,各有所长,都有着不错的表现。
第二,未知目标的先验知识。此时不知道要检测的目标是什么,于是什么是目标就有了不同的定义。一种方法是检测场景中的显著目标,如通过一些特征表达出场景中每个像素的显著性概率,然后找到显著目标。另一种方法就是检测场景当中的运动目标了。
1、背景差分法
在检测运动目标时,如果背景是静止的,利用当前图像与预存的背景图像作差分,再利用阈值来检测运动区域的一种动态目标识别技术。
背景差分算法适用于背景已知的情况,但难点是如何自动获得长久的静态背景模型。
matlab中单纯的背景差分直接是函数imabsdiff(X,Y)就可以。
2、帧差分法
利用视频序列中连续的两帧或几帧图像的差来进行目标检测和提取。在运动的检测过程中,该方法利用时间信息,通过比较图像中若干连续帧获得对应像素点的灰度差值,如果均大于一定的阈值T2,则可以判断该位置存在运动的目标。
较适合于动态变化场景。
3、光流场法
利用相邻两帧中对应像素的灰度保持原理来评估二维图像的变化。能够较好的从背景中检测到相关前景目标,甚至是运动屋里中的部分运动目标,适用于摄像机运动过程中相对运动目标的检测。
开口问题、光流场约束方程的解的不唯一性问题。不能正确的表示实际的运动场。
例子如下:
1.首先在一帧图像内随机均匀选取k个点,并滤除那些邻域纹理太光滑的点,因为这些点不利于计算光流。
其实写到这里想了想到底能不能叫目标检测,博主认为图像的前背景分离也是目标检测的一种(博主才疏学浅,求赐教)
1、像素点操作
对每个像素点进行操作,判别为前景或者背景两类。如下面的图片所示:
推荐另外一篇关于神经网络改进方法的上篇内容:
http://blog.csdn.net/u010402786/article/details/49272757
另外附上一个深度学习未来发展趋势之一:
“注意力模型” 在未来的发展,注意力模型的升温。一些系统,但不是全部,开始放到“注意力模型”的背景中,或者说让神经网络在完成任务的过程中试图学习在哪里放置其“注意力”。这些还不是一个正规神经网络流水线中的一部分,但是已经时不时的出现在模型中了。
联系客服