梦到前任预示着什么| vt什么意思| 10月份是什么星座| 梦见鳝鱼是什么预兆| 维生素b是补什么的| 送女朋友什么礼物| 浅粉色配什么颜色好看| 佟丽娅为什么离婚| 12月13日是什么日子| 10月28是什么星座| 精不液化是什么原因导致的| 甲功五项查的是什么| 糖耐什么时候做| 山姆是什么| 2017是什么年| 控制血糖吃什么食物| 姐妹是什么意思| 血氧饱和度是什么意思| 非洲有什么动物| 政协是什么| 儿童割包皮挂什么科| 十指纤纤尽夸巧是什么生肖| 吃什么会变黑| 腱鞘炎挂什么科室| 总是耳鸣是什么原因| 妇科检查清洁度二度是什么意思| 叶酸片有什么作用| 吃什么补气养血最快| 狗狗咳嗽吃什么药| 五灵脂是什么| 97年什么生肖| PT医学上是什么意思| 宅男是什么意思| 1月10号什么星座| 萎缩性阴道炎用什么药| 荡漾什么意思| 盆腔积液是什么意思| 脚气泡脚用什么泡最好| 湖南有什么特产| 4.24是什么星座| 蚯蚓的血是什么颜色的| 南辕北辙告诉我们什么道理| 泌尿科看什么病| 心脏支架不能吃什么| 7月14日是什么日子| 6月23号是什么日子| 吃什么可以补精子| 献血有什么危害| 世界第一长河是什么河| 护理是什么意思| 为什么老是出汗| 红薯什么时候传入中国| plt医学上是什么意思| 胃窦病变意味着什么| 怀孕吃什么药可以流掉| 解酒的酶是什么酶| 热疹症状该用什么药膏| 宫腔占位什么意思| sharon是什么意思| 驴板肠是什么部位| 七月一号是什么星座| 长寿花什么时候开花| 离婚需要什么手续和证件| 晚上睡不着觉是什么原因| hpv是一种什么病| 用什么药材泡酒最好| 什么是尿崩症| 银为什么会变黑| 什么运动可以让孩子长高| 洋桔梗花语是什么| 为什么叫八路军| 头晕头疼挂什么科| 嘴唇肿是什么原因| 利湿是什么意思| 议论纷纷是什么意思| 膀胱壁增厚毛糙是什么意思| 去化是什么意思| 射手什么象星座| 紫荆花的花语是什么| 偏安一隅是什么意思| 湿气重可以吃什么水果| 打耳洞医院挂什么科| 牛头人什么意思| 吃秋葵有什么禁忌| 坠积效应是什么意思| 花中之王是什么花| 眼睛眼屎多是什么原因| 退步是什么意思| 肝硬化有什么症状表现| 梦见理发是什么意思| 红豆与赤小豆有什么区别| 世界上最大的数是什么| 缺钙会出现什么症状| 特斯拉发明了什么| 检查食管做什么检查| 对峙是什么意思| 辣条吃多了有什么危害| 尾巴骨疼挂什么科| dm代表什么| 手腕关节疼痛什么原因引起的| 吃鱼肝油有什么好处| 烂嘴唇是什么原因引起的| 寿辰是什么意思| 婴儿头发长得慢是什么原因| 咽喉肿痛吃什么药好| 第一颗原子弹叫什么| 睁眼睡觉是什么原因| 知了吃了有什么好处| 兰花的花语是什么| 梦到活人死了是什么预兆| 脚底干燥是什么原因| 韩国的思密达是什么意思| 女生经常手淫有什么危害| 能人是什么意思| 猫咪疫苗什么时候打| 佑字五行属什么| 脸红是什么原因引起的| 黑蚂蚁泡酒有什么功效| 尿频是什么原因| 口干口苦口臭是什么原因| 白内障什么原因造成的| 小叶增生是什么原因导致的| 吃狗肉有什么危害| 具象是什么意思| 面子里子什么意思| 阴囊瘙痒用什么药| 地龙是什么东西| 貌不惊人什么意思| cps什么意思| 幼儿园转学需要什么手续| 咳嗽有痰吃什么药好得最快最有效| 黑胡桃色是什么颜色| 槟榔为什么上瘾| 靶点是什么意思| 生日蛋糕上写什么字比较有创意| 李世民是什么生肖| 晚上睡觉口干是什么原因| 多吃木耳有什么好处和坏处| chocker是什么| 西安有什么好吃的特产| 白带带血是什么原因| 吃芒果不能吃什么| 吃海鲜不能吃什么| 看见蛇有什么预兆| 漫谈是什么意思| 什么白云| 溶栓治疗是什么意思| 盐酸盐是什么| 边界清是什么意思| 农历和阳历有什么区别| 左眼皮肿是什么原因引起的| 云指什么生肖| 顾家什么意思| 阴道炎有什么症状| 三月十五日是什么星座| 头皮发麻什么原因| cm是什么意思| 什么东西清肺止咳| 得数是什么意思| 九地是什么中药| 排骨汤里放什么食材好| 白羊座跟什么星座最配| 血脂低是什么原因| 13是什么| 胎盘植入是什么意思| 送什么小礼品好| 什么是石斛| 什么是物理| 办独生子女证需要什么材料| 嗯呢什么意思| 白是什么结构的字| lb是什么| 青砖茶属于什么茶| cos代表什么意思| 没睡好头疼是什么原因| 人中长痘痘是什么原因| 手脚发烫是什么原因造成的| 卵巢在什么位置示意图| 排卵期有什么症状| 哈吉是什么意思| 热毒吃什么药好得快| 什么叫npc| 对偶句是什么意思| food什么意思| 246是什么意思| sand是什么颜色| 肾盂分离是什么意思| 贪狼是什么意思| 气机是什么意思| 二拇指比大拇指长代表什么| 正因数是什么| as医学上是什么意思| 过敏性鼻炎喝什么茶好| 打生长激素有什么危害和副作用| 作是什么意思| 孕妇牙龈出血是什么原因| 烧心反酸水吃什么药| 戛然而止是什么意思| 心绞痛有什么症状| perrier是什么水| 小孩不吃肉是什么原因| 椰子煲鸡汤放什么材料| 黄金有什么作用与功效| 解痉是什么意思| 血管造影检查什么| 6月7日什么星座| 补肾吃什么药效果最好| 沙发客是什么意思| 三点水弘读什么| 头皮长痘痘是什么原因| 舌头开裂吃什么药| 坐怀不乱是什么生肖| 考研要考什么| 云南白药的保险子是起什么作用的| 七月份怀孕预产期是什么时候| 体面什么意思| 助听器什么品牌最好| 蟹柳是什么做的| 圆脸适合什么短发发型| crp什么意思| 痛风吃什么药| 奇的多音字是什么| 胃胀什么原因| 胆碱酯酶低是什么原因| 地球是什么星| 女人能日到什么时候| 三月阳春好风光是什么生肖| 无什么无| 什么是牛黄| 上面一个四下面一个正念什么| 浙江大学什么专业最好| 虬结什么意思| 什么是速率| 泄气是什么意思| 王源粉丝叫什么| 不能吃辛辣是指什么| 胎儿顶臀长是什么意思| 1月16日是什么星座| 三天不打上房揭瓦的下一句是什么| 胃有息肉的症状是什么| 屏保是什么| 弃猫效应是什么| 天堂是什么意思| 茶叶杀青是什么意思| 骨相美是什么意思| 空调病吃什么药| 缺钾吃什么水果| 印枭是什么意思| 心跳和心率有什么区别| 眼睛模糊是什么原因| 金字旁加匀念什么| 肌瘤和囊肿有什么区别| 哈字五行属什么| 人为什么要吃盐| 牙黄是什么原因引起的| 为什么会血糖高| 黄疸高有什么危害| 12306什么时候放票| 什么地走| 雪茄是什么| 潜叶蝇打什么药效果好| 姨妈是什么意思| 拷贝是什么意思| 武则天姓什么| 百度
这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 ? 论坛首页 ? 企业专区 ? OpenVINO生态社区 ? 【原创】OpenCV-Python系列之背景分离(五十六)

共3条 1/1 1 跳转至

【原创】OpenCV-Python系列之背景分离(五十六)

高工
2025-08-04 22:21:45     打赏
百度 ”万鄂湘在介绍情况时说,民革一直“举全党之力抓参政议政”,五年来民革通过“直通车”的方式直接向中共中央和国务院报送调研报告78篇,得到党和国家领导同志的重要批示187次。

OpenCV-Python系列之背景分离

从本次教程开始,我们进入新的篇章,之前一直在讨论OpenCV的特征部分,这次我们来讨论OpenCV中的背景分离,又称背景减法模型。

背景分离(BS)是一种通过使用静态相机来生成前景掩码(即包含属于场景中的移动对象像素的二进制图像)的常用技术。

顾名思义,BS计算前景掩码,在当前帧与背景模型之间执行减法运算,其中包含场景的静态部分,或者更一般而言,考虑到所观察场景的特征,可以将其视为背景的所有内容。

                                              image.png

背景建模包括两个主要步骤:

1.        背景初始化;

2.        背景更新。

初步,计算背景的初始模型,而在第二步中,更新模型以适应场景中可能的变化。

在本教程中,我们将学习如何使用OpenCV中的BS

OpenCV中的使用

OpenCV 中已经包含了其中三种比较容易使用的方法,我们逐一来看。

BackgroundSubtractorMOG

这是一个以混合高斯模型为基础的前景/背景分割算法。它是 P.KadewTraKuPong R.Bowden 2001 年提出的。

它使用 K(K=3 5)个高斯分布混合对背景像素进行建模。使用这些颜色(在整个视频中)存在时间的长短作为混合的权重。背景的颜色一般持续的时间最长,而且更加静止。

一个像素怎么会有分布呢? x,y平面上一个像素就是一个像素,没有分布,但是我们现在讲的背景建模是基于时间序列的,因此每一个像素点所在的位置在整个时间序列中就会有很多值,从而构成一个分布

在编写代码时,我们需要使用函数:cv2.createBackgroundSubtractorMOG() 创建一个背景对象。这个函数有些可选参数,比如要进行建模场景的时间长度,高斯混合成分的数量,阈值等。将他们全部设置为默认值。然后在整个视频中我们是需要使用backgroundsubtractor.apply() 就可以得到前景的掩模了

移动的物体会被标记为白色,背景会被标记为黑色的,前景的掩模就是白色的了。

不过目前这个方法已经被弃用了,OpenCV中也没有了相关函数的API

BackgroundSubtractorMOG2

这个也是以高斯混合模型为基础的背景/前景分割算法。它是以 2004 2006 Z.Zivkovic 的两篇文章为基础的。这个算法的一个特点是它为每 一个像素选择一个合适数目的高斯分布。(上一个方法中我们使用是 K 高斯分布)

这样就会对由于亮度等发生变化引起的场景变化产生更好的适应。

和前面一样我们需要创建一个背景对象。但在这里我们我们可以选择是否检测阴影。如果 detectShadows = True(默认值),它就会检测并将影子标记出来,但是这样做会降低处理速度。影子会被标记为灰色。

BackgroundSubtractorMOG2算法的两个改进点:

-阴影检测
-速度快了一倍

我们将使用官方提供的人体跟踪的视频:

image.png

这个我提供在这儿:

 test.zip

我们来看代码:

def MOG2():
     cap = cv2.VideoCapture("test.avi")
     fgbg = cv2.createBackgroundSubtractorMOG2()
     while (1):
         ret, frame = cap.read()
         fgmask = fgbg.apply(frame)
         cv2.imshow('frame', fgmask)
         k = cv2.waitKey(100) & 0xff
         if k == 27:
             break
     cap.release()
     cv2.destroyAllWindows()

结果:

image.png

可以看到基本的行人与背景分离出来了。

BackgroundSubtractorGMG

此算法结合了静态背景图像估计和每个像素的贝叶斯分割。这是 2012 Andrew_B.GodbehereAkihiro_Matsukawa Ken_Goldberg 在文章 中提出的。

它使用前面很少的图像(默认为前 120 )进行背景建模。使用了概率前 景估计算法(使用贝叶斯估计鉴定前景)。这是一种自适应的估计,新观察到的 对象比旧的对象具有更高的权重,从而对光照变化产生适应。一些形态学操作 如开运算闭运算等被用来除去不需要的噪音。在前几帧图像中你会得到一个黑 色窗口。

对结果进行形态学开运算对与去除噪声很有帮助。

不过同样的,这个方法目前也是不再用了。

BackgroundSubtractorKNN

KNN作为大名鼎鼎的机器学习算法,其用在背景分离应用中也是得心应手,但是在此不对KNN作过多的解释,它属于机器学习的一个算法,比较复杂,我们来看代码:

def KNN():
     cap = cv2.VideoCapture('test.avi')
     fgbg = cv2.createBackgroundSubtractorKNN()
     while (1):
         ret, frame = cap.read()
         fgmask = fgbg.apply(frame)
         cv2.imshow('frame', fgmask)
         k = cv2.waitKey(100) & 0xff
         if k == 27:
             break
     cap.release()
     cv2.destroyAllWindows()

结果:

image.png

实验结果发现KNN的结果要明显优于MOG2算法。

 


对计算机视觉感兴趣?这个社区推荐给你~

>>点击了解OpenVINO生态开发社区



工程师
2025-08-04 19:13:59     打赏
2楼

学习一下


工程师
2025-08-04 23:27:52     打赏
3楼

感谢分享


共3条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]
口腔发粘是什么原因 血管瘤是什么意思 儿童乘坐飞机需要什么证件 酸菜鱼加什么配菜好吃 18k金是什么意思
碎石后要注意些什么 戒腊什么意思 肝火旺盛吃什么药效果最好 嗓子不舒服吃什么水果 白带有腥味是什么原因
低压高吃什么药效果好 猛虎下山是什么意思 蛇字五行属什么 牙痛 吃什么药 芙蓉是什么花
鸽子咕咕叫是什么意思 狼吞虎咽是什么意思 眼睛屈光不正什么意思 骨髓穿刺是检查什么病 二甲医院是什么意思
性质是什么意思hcv8jop5ns4r.cn 冗长什么意思hcv8jop5ns6r.cn 2.16是什么星座hcv8jop9ns0r.cn 男人不够硬吃什么好hcv8jop2ns2r.cn 十二指肠溃疡是什么症状hcv9jop1ns1r.cn
非萎缩性胃炎伴糜烂吃什么药hcv8jop6ns6r.cn 251什么意思jinxinzhichuang.com 厚实是什么意思cl108k.com vgr100是什么药hcv8jop6ns6r.cn 大便每天四五次是什么病kuyehao.com
幽门螺杆菌阳性是什么意思hcv9jop1ns0r.cn 嘴苦是什么原因造成的aiwuzhiyu.com 膝盖痛吃什么hcv9jop2ns2r.cn 红斑狼疮是什么症状hcv9jop0ns3r.cn 降血脂吃什么hcv8jop4ns2r.cn
来大姨妈前有什么症状hcv8jop2ns9r.cn 琅玕是什么意思imcecn.com 落马是什么意思hcv8jop3ns2r.cn 青玉是什么玉hcv7jop6ns6r.cn 什么时候闰三月hcv8jop1ns8r.cn
百度