当前位置: 首页 > news >正文

《OpenCV 计算机视觉》—— 视频背景建模

还未写完!!!

  • 完整代码如下:

    import cv2cap = cv2.VideoCapture('test.avi')"""
    getstructuringElement(shape,ksize,anchor=None)得到一个卷积核。主要用于后续的腐蚀、膨胀、开、闭等运算。
    参数:shape:设定卷积核的形状,可选如下三个参数:①:MORPH_RECT(矩形卷积核)②:MORPH_CROSS(十字形卷积核)③:MORPH ELLIPSE(椭圆形卷积核)ksize:设定卷积核的大小、anchor:表示描点的位置:一般c=1,表示描点位于中心
    """kernel = cv2.getStructuringElement(cv2.MORPH_CROSS, (3, 3))# 创建混合高斯模型,用于背景建模
    fgbg = cv2.createBackgroundSubtractorMOG2()while (True):ret, frame = cap.read()     # ret:True表示正常读取到图像,frame:从视频中获取当前一帧图片cv2.imshow('frame', frame)fgmask = fgbg.apply(frame)  # 视频处理cv2.imshow('fgmask', fgmask)fgmask_new = cv2.morphologyEx(fgmask, cv2.MORPH_OPEN, kernel)   # 开运算去噪点,先腐蚀后膨胀。cv2.imshow('fgmask_new', fgmask_new)# 寻找视频中行走人的轮廓_, contours, h = cv2.findContours(fgmask_new, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)for c in contours:# 计算各轮廓的周长perimeter = cv2.arcLength(c, True)if perimeter > 188:  # 找到人的矩形框x, y, w, h = cv2.boundingRect(c)# 画出这个短形fgmask_new_rect = cv2.rectangle(frame, (x, y), (x + w, y + h), (0, 255, 0), 2)cv2.imshow('fgmask_new_rect', fgmask_new_rect)k = cv2.waitKey(60)if k == 27:break
    
  • 结果如下:
    在这里插入图片描述

相关文章:

  • 基于STM32+4G通信技术设计远程农田灌溉系统(236)
  • Python空间地表联动贝叶斯地震风险计算模型
  • 前端工程规范-5:Git提交信息规范(commitlint + czg)
  • AWS Redshift把老用户权限赋予新用户
  • 计算机毕业设计 基于爬虫与文本挖掘的网络舆情监控系统的设计与实现 Python+Django+Vue 前后端分离 附源码 讲解 文档
  • \?拉普拉斯到底在讲什么\?控制理论\?倒立摆/
  • 如何选择与运用工具提升工作效率的秘密指南
  • 【自动化测试】Appium Server如何安装和Appium Server安装困难的原因和解决方法以及常见的一些安装失败的错误和解决方法
  • FFmpeg源码:avio_seek函数分析
  • 【Linux 23】线程池
  • golang fmt.Sprintf 引用前述变量
  • 远程服务器安装anaconda并创建虚拟环境
  • Mybatis的基本使用
  • SSTI基础
  • “大数据+高职”:VR虚拟仿真实训室的发展前景
  • 【腾讯Bugly干货分享】从0到1打造直播 App
  • 0基础学习移动端适配
  • co.js - 让异步代码同步化
  • ECMAScript 6 学习之路 ( 四 ) String 字符串扩展
  • session共享问题解决方案
  • 今年的LC3大会没了?
  • 利用DataURL技术在网页上显示图片
  • 前端性能优化——回流与重绘
  • 嵌入式文件系统
  • 使用权重正则化较少模型过拟合
  • 我感觉这是史上最牛的防sql注入方法类
  • 远离DoS攻击 Windows Server 2016发布DNS政策
  • FaaS 的简单实践
  • 继 XDL 之后,阿里妈妈开源大规模分布式图表征学习框架 Euler ...
  • 新海诚画集[秒速5センチメートル:樱花抄·春]
  • ​【已解决】npm install​卡主不动的情况
  • #1015 : KMP算法
  • #VERDI# 关于如何查看FSM状态机的方法
  • $.ajax,axios,fetch三种ajax请求的区别
  • (2)MFC+openGL单文档框架glFrame
  • (4) PIVOT 和 UPIVOT 的使用
  • (undone) MIT6.824 Lab1
  • (八)Flask之app.route装饰器函数的参数
  • (八)光盘的挂载与解挂、挂载CentOS镜像、rpm安装软件详细学习笔记
  • (办公)springboot配置aop处理请求.
  • (二)JAVA使用POI操作excel
  • (力扣)循环队列的实现与详解(C语言)
  • (十) 初识 Docker file
  • (十二)springboot实战——SSE服务推送事件案例实现
  • (四)linux文件内容查看
  • (五十)第 7 章 图(有向图的十字链表存储)
  • (学习总结)STM32CubeMX HAL库 学习笔记撰写心得
  • (游戏设计草稿) 《外卖员模拟器》 (3D 科幻 角色扮演 开放世界 AI VR)
  • (转) 深度模型优化性能 调参
  • (转)利用ant在Mac 下自动化打包签名Android程序
  • *算法训练(leetcode)第四十七天 | 并查集理论基础、107. 寻找存在的路径
  • .describe() python_Python-Win32com-Excel
  • .Net Attribute详解(上)-Attribute本质以及一个简单示例
  • .net core 6 集成和使用 mongodb
  • .net core 微服务_.NET Core 3.0中用 Code-First 方式创建 gRPC 服务与客户端