用python和OpenCV进行动态物体检测

用python和OpenCV进行动态物体检测

此程序将摄像头录制的视频转化为灰度视频,在将压缩后灰度明显不同的区域用矩形框选起来,得到侦测结果。

  • 实现效果
  • 程序编写
    • 初始化,测试摄像头
    • 读取、转换视频
    • 对比转换后摄像头,设置坐标框选
    • 退出循环
  • 应用场景

实现效果

先测试摄像头宽、高度备用,再将视频进行灰度处理,后对视频进行形态学膨胀。接着对比处理过的视频,设定框选的x,y坐标,框选视频中对比强烈的部分,不断刷新,进行动态物体检测。
在这里插入图片描述
(程序流程图)

程序编写

本程序由Python编译器IDLE编写,需事先通过cmd安装OpenCV库(详细库安装方法见之前博客)

初始化,测试摄像头

先初始化各库,通过cv2打开摄像头,并测量摄像头拍摄范围的宽、高。

import cv2
import numpy as np

camera = cv2.VideoCapture(0)
if (camera.isOpened()):	  
    print('Open')
else:
    print('摄像头未打开')

size = (int(camera.get(cv2.CAP_PROP_FRAME_WIDTH)),
    int(camera.get(cv2.CAP_PROP_FRAME_HEIGHT)))
print('size:'+repr(size))  

es = cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (9, 4))
kernel = np.ones((5, 5), np.uint8)
background = None
 

读取、转换视频

将视频进行灰度处理(变成黑白视频),再进行形态学

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值