opencv 特殊颜色区域_视频分析与对象跟踪-背景消去建模和基于颜色的对象检测与跟踪...

430bdc67ddbbf3137624532e504c2421.png

1.背景消去建模

基本原理: 消除背景建模就是找出视频中移动的区域,把移动的区域设为白色对象方便观察,其他没有移动的区域设为黑色背景。背景模型为视频之前的某一帧图像,与当前帧做差值,然后对差值图像最二值化,二值化的结果就是背景变为全黑的,前景为白色。二值图像反应了有对象的闯入。它是视频跟踪最基本的方法。可用基于机器学习的KNN算法或者图像分割MOG算法。但不论是KNN还是MOG,它们对于消除背景建模的思路是一样的;以KNN为例:假设在视频的第5帧为开始,用KNN算法可以把第5帧图像中的所有像素点划分为K类。即每个像素点都有属于自己的类别。第6帧时,对第6帧图像进行KNN分类,如果视频中没有物体移动,则第6帧和第5帧图像中所有对应像素点的类别是一样的。如果视频中有物体移动了,则第6帧和第5帧图像中不是所有对应像素点的类别是一样的,不是同一类别的像素点就是移动物体的区域,把该区域设为白色背景。

  • 在opencv中有两种方法可以进行背景消除: (1)基于机器学习(KNN–K个最近邻)背景消除建模 (2)其二、基于图像分割(GMM,高斯混合模型抗干扰图像分割)背景消除建模

相关API:

(1)BackgroundSubtractor

(2)BackgroundSubtractorMOG2 图像分割方法

(3)BackgroundSubtractorKNN 机器学习(KNN)最近邻方法

例子代码:

#include

效果:

703dd1b49a52e09f52f2438299787afb.png
视频分析与对象跟踪-背景消去建https://www.zhihu.com/video/1223167826560839680

总结: 消除背景建模主要分析背景不怎么变化的视频的情况下,其中GMM算法可以有效抗噪,防止每帧之间微弱变化带来的噪声影响。在处理过程中可适当运用形态学操作使得效果更好,开运算,即为先腐蚀后膨胀的过程,可以用来消除小物体(类似椒盐噪声,噪点),在纤细点处分离物体,并且在平滑较大物体的边界时不明显改变面积。闭运算,先膨胀后腐蚀的过程称为闭运算,闭运算能够排除小型黑洞(黑色区域)。

2.基于颜色的对象检测与跟踪

利用颜色范围进行过滤并进行标注和测量。 步骤: (1)inRange过滤 (2)形态学操作提取 (3)轮廓查找 (4)外接矩形获取 (5)位置标定

例子代码:

#include

效果:

6f7cc318a7bc474862509d9cd892c0c6.png
基于颜色的对象检测与跟踪https://www.zhihu.com/video/1223168008275095552

欢迎关注我的微信公众号“OpenCV图像处理算法”,主要是记录自己学习图像处理算法的历程,包括特征提取、目标跟踪、定位、机器学习和深度学习,每一个例子都会提供源码和例子所用的资料,欢迎同行的同学关注我和我一起虚度光阴吧!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值