利用MOG2背景模型提取运动目标的OpenCV代码
图像处理开发需求、图像处理接私活挣零花钱,请加微信/QQ 2487872782
图像处理开发资料、图像处理技术交流请加QQ群,群号 271891601
前面已经写了一篇博文介绍背景建模,详情可见:运动目标的背景建模-混合高斯背景建模和KNN模型建模的OpenCV代码实现,这篇博文利用背景建模,再结合前面学习的图像的基本操作等知识实现视频里车辆目标区域的提取。思路如下:
首先利用双线性插值对源数据图像进行缩小操作以减少运算量,再利用高斯混合模型背景建模得到运动目标区域,然后对目标区域进行形态学闭操作,填充运动目标区域的间断点,再对目标区域求解其连通域并选取连通域的最大外接矩形,最后根据车辆目标的外接矩形应该满足的基本条件在这些最大外接矩形中筛选出最可能是车辆的外接区域,进而提取出运动目标。
车辆运动目标检测代码如下:
代码中用到的视频的下载链接为 https://pan.baidu.com/s/1hrIk2Ew:
代码请访问博文0056-在OpenCV环境下使用混合高斯背景建模提取前景目标_清溪算法-CSDN博客获取
代码请访问博文0056-在OpenCV环境下使用混合高斯背景建模提取前景目标_清溪算法-CSDN博客获取
代码请访问博文0056-在OpenCV环境下使用混合高斯背景建模提取前景目标_清溪算法-CSDN博客获取
运行结果如下图所示:
从图片中不容易看出效果,建议大家还是亲自运行下程序来看效果。这里我再补充描述下吧,最终体现出来的效果是运行结果窗口中只显示了有运动目标的区域。
说明一下:这个程序还不能实现对特定运动目标的提取,它提取的所有运动的目标,以后再研究怎样实现对某一辆车的跟踪吧。
图像处理开发需求、图像处理接私活挣零花钱,请加微信/QQ 2487872782
图像处理开发资料、图像处理技术交流请加QQ群,群号 271891601
相关文章
- 利用OpenCV进行图像的轮廓检测
- OpenCV读取图片、判断读取是否成功、显示图片的代码(C++代码和Python代码)
- OpenCV环境下实现图像任意角度旋转的原理及代码
- 使用OpenCV计算两幅图像的协方差
- OpenCV-C++选择、提取感兴趣区域(ROI区域)【附用鼠标选取ROI区域的代码】
- 通过圆的颜色并结合霍夫变换检测目标圆的OpenCV代码
- 利用均值漂移实现图像分割的原理和OpenCV代码
- 利用OpenCV的函数Rect()提取感兴趣区域的C++代码
- 利用OpenCV的函数threshold()实现双阈值二值化操作的C++代码
- 我对图像金字塔的理解及OpenCV下的实现代码
- opencv二值化代码实现
- Pycharm中实现openCV安装好后简单测试
- Python OpenCV实现鼠标画框矩形框
- Python代码库OpenCV之06访问与修改图片像素(含代码)
- Python代码库OpenCV之13 古书一页切成两页
- Python代码库OpenCV之03读取和显示图片(含代码)
- Python代码库OpenCV之基础环境搭建(含代码)
- Python代码库OpenCV之11 切割碑文
- 卡尔曼滤波—Simple Kalman Filter for 2D tracking with OpenCV
- OpenCV+Mediapipe+UDP+Unity挥手电子书翻页
- openCV中cvSnakeImage()函数代码分析
- 【OpenCV入门指南】第一篇 安装OpenCV
- 实战深度学习OpenCV(二):读取并播放本地或者摄像头的视频
- Python实现APP UI自动化以及OpenCV图像识别元素
- ACE图像增强算法Opencv实现