OpenCV + Python 實現視訊色彩分割
阿新 • • 發佈:2018-12-01
實現色彩分割基本步驟
其原理同靜態影象色彩分割一致:OpenCV + Python 實現靜態影象色彩分割
Code:
#--coding: utf-8--
import cv2 as cv
import numpy as np
def color_seperate():
capture = cv.VideoCapture('/home/pi/Desktop/綠褲子.mp4') #匯入視訊
while True:
ret, frame = capture.read() #獲取每一幀影象資訊
hsv = cv.cvtColor(frame, cv.COLOR_BGR2HSV) #將BGR 轉化為HSV
lower_hsv = np.array([25, 30, 30]) #設定目標顏色上下限
upper_hsv = np.array([77, 255, 46])
mask = cv.inRange(hsv, lowerb=lower_hsv, upperb=upper_hsv) #開始分割綠色
dst = cv. bitwise_and(frame, frame, mask=mask) #實際是提取前兩個frame 的“與”結果,然後輸出mask 為1的部分
cv.imshow('video', frame)
cv.imshow('result', dst)
c = cv.waitKey(40)
if cv.waitKey(50) & 0xFF == ord('q'):
break
color_seperate()
cv. waitKey(0)
cv.destoryAllWindows()
結果: