基于opencv+vs视频运动区域提取

本文是作者首次分享关于运动区域提取的博客,主要介绍如何在VS2013环境下,结合opencv库对视频进行运动区域检测。作者通过高斯背景建模和帧差法提取运动目标,针对摄像头在高空中的抖动问题,采用混合高斯背景建模并进行腐蚀、膨胀处理以减少噪声。博客中提供了相关代码,并预告了后续关于烟雾分析和报警系统的步骤。
摘要由CSDN通过智能技术生成

博友们:

        大家好,这是我首次写博客,之前也读过都铎博客达人们写的博客,觉得博客有很多的好处,能让自己更加的了解自己所学的,让自己更加的明白,能从中找到自己的不足,再者就是能和大家一起探讨自己所有的领域。能相互解答我们感兴趣的问题。所以前段时间开通的博客,现在我来讲述一下,最近我看的关于运动区域的提取。

        我是一个在校的研究生,由于现在手上的工作不是很多,我是做视频方向的,所以选择一家公司实习,是一家做视频监控的,我现在所做的项目是,关于烟雾方面的运动提取。由于自己是小白,什么都不懂,并且自己的码代码的能力也不足,下面我讲述的有很多的不足,希望可以有大牛们给予指点,和感兴趣的朋友一起探讨。

        不多说了,下面进入正题,由于现在是高科技发展的时代,对各种方面的检测都是运用高科技,我们是对一个含有烟雾的视频进行检测,视频是由监控摄像头来拍摄的。

        我的应用环境是vs2013+opencv2.4.9,首先我们得到的视频时给予不同位置的,主要分为两种一种是有烟雾的,一种是无烟雾的,但是拍摄的过程中由于处在高空中的原因,摄像头会由于风的干扰,又分为抖动和静止的,对于禁止的我们可以很好地操作,但是对于抖动的我到目前为止还没有想到什么好点的方法(如有人了解可以留言讨论一下)。在此之前,我参考了许多的文献,然而大部分的文献类容是给予理论上的研究,以及室内环境里面的,都是一些国家自然基金,和某某公司合作的项目,里面只是阐述的大致的内容,没有涉及具体的计算过程。这样就给我带来了很多的困难(我试着联系过吉林大学的一个博士,他就说是公司的一个项目涉及到公司利益和版权,就不了了之了),于是我就是这项分为三个步骤来进行:第一步是、将得到的视频进行预处理,然后进行运动区域检测,提取运动的目标;第二步是、将提取出来的运动区域进行烟雾分析,来去除一些不是烟雾的运动区域,得到烟雾区域或者疑似烟雾区域;第三步是、进行报警。整个烟雾检测的过程我的理解就是分成为三个部分。其中难点在于第二个部分。下面我将阐述一下第一步骤:

        从目前来看,运动不标的提取,主要有两个方面,一个是帧差,另外一个是高斯背景建模(包括背景建模),那么对已前者的话就是,利用后一帧减去前一帧,这样就可以得到运动的区域,将得到的帧差图进行二值化,显示出来,对于摄像头和背景不运动的情况下可以很好地判断出来;对于第二种的话我们采取背景建模的方法,有前后几帧的背景建模,高斯建模,混合高斯建模(就是多几个高斯模型)。我目前所做的就是第一步的所有内容,由于我们所做的是烟雾检测,包括室内室外的,例如高空中对一个烟囱的烟雾检测,那么此时摄像头会收到大风的影响,拍摄出来的画面是抖动的,此时我就是用混合高斯背景建模,再得到差值图像中,我有对其进行了处理,先腐蚀再膨胀,为什么采取这个这个处理方式?我的理解是,先腐蚀的过程是因为我要去除一些噪声干扰的因素后,在对其进行膨胀,这样得出的差值图相比较以前有了一点点的改善。(下面是我进行的代码操作)

#include <stdio.h>
#include <cv.h>
#include <cxcore.h>
#include <high

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值