OpenCV3-Python之 色彩空间 过滤视频的背景颜色

连接上一节,这一节直接上代码:

#!/usr/bin/env python
# _*_ coding:utf-8 _*_
import cv2 as cv
import numpy as np


#读取视频文件
def extract_obj():
    capture = cv.VideoCapture("D:\exerciseResource\\02Jumping.wmv") #读取视频文件
    while(True): #判断是否读取成功
        ret, frame = capture.read()
        if ret == False:
            break
        #把视频中的某种颜色过滤出来
        hsv = cv.cvtColor(frame, cv.COLOR_BGR2HSV)      # 转换成HSV色彩空间
        lower_hsv = np.array([0, 43, 46])               # 色彩低值(红色)
        upper_hsv = np.array([180, 255, 255])           # 色彩高值
 mask =cv.inRange(hsv, lowerb=lower_hsv, upperb=upper_hsv)#inRang之后得到的是二值图像
        '''与或非的逻辑操作'''
        dst = cv.bitwise_and(frame, frame, mask=mask)#这里可以把彩色图像显示出来
        cv.imshow("video", frame) #显示视频文件
 cv.imshow("mask", dst)#这里显示dst而不是mask
        c = cv.waitKey(30)
        if c == 27:
            break
extract_obj()
cv.waitKey(0)

cv.destroyAllWindows()

运行效果如下:


第一个是原视频,第二个是过滤掉灰色背景的视频!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值