opencv物体图像移动检测

本文介绍了一种基于Python和OpenCV的实时视频运动目标检测方法。通过获取摄像头视频流,运用高斯差分和背景减除等技术实现运动目标的识别与定位。详细展示了从摄像头读取视频、灰度转换、高斯模糊、背景建模到目标检测的全过程。
# -*-coding:utf-8 -*-  

import cv2
import time
import datetime
import numpy as np 

camera = cv2.VideoCapture(0)

if (camera.isOpened()):
    print('Open')
else:
    print('请打开摄像头')
#查看视频size
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) 

pre_frame = None

while(1):
    ret, frame = camera.read()
    gray_lwpCV = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
    #gray_lwpCV = cv2.resize(gray_lwpCV, (500, 500))
    gray_lwpCV = cv2.GaussianBlur(gray_lwpCV, (21, 21), 0)

    #将当前第一帧作为对比
    if pre_frame is None:
        pre_frame = gray_lwpCV
        continue;
         # absdiff把两幅图的差的绝对值输出到另一幅图上面来
    img_delta = cv2.absdiff(pre_frame, gray_lwpCV)
    thresh = cv2.threshold(img_delta, 10, 255, cv2.THRESH_BINARY)[1]
    thresh = cv2.dilate(thresh, es, iterations=2)
      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值