opcv第二天視訊檔案開啟及色彩分離合並
阿新 • • 發佈:2018-11-03
import cv2 as cv import numpy as np def extrace_object_demo(): capture = cv.VideoCapture("C:/Users/weiqiangwen/Desktop/sest/QQ視訊_2703CD4E8BBCC4F5B071A7A61FA35AB7.mp4") #在讀取時有可能出現ret=false用播放器開啟一次視訊就好了。應該是轉碼問題 while(True): ret,frame = capture.read() print (ret) print (frame) if ret == False: break; hsv = cv.cvtColor(frame, cv.COLOR_BGR2HSV) ##轉成hsv碼 lower_hsv = np.array([37, 43, 46]) ##綠色最低值 upper_hsv = np.array([77, 255, 255]) ##綠色最高值 mask=cv.inRange(hsv,lowerb=lower_hsv,upperb=upper_hsv) ##得到二值影象 cv.imshow("video",frame) cv.imshow("masl",mask) c = cv.waitKey(40) if c ==27: ##27位退出 break; def color_space_demo(image): gray = cv.cvtColor(image, cv.COLOR_BGR2GRAY) cv.imshow("gray", gray) hsv = cv.cvtColor(image, cv.COLOR_BGR2HSV) cv.imshow("hsv", hsv) yuv = cv.cvtColor(image, cv.COLOR_BGR2YUV) cv.imshow("yuv", yuv) Ycrcb = cv.cvtColor(image, cv.COLOR_BGR2YCrCb) cv.imshow("ycrcb", Ycrcb) print("--------- Hello Python ---------") src = cv.imread("C:/Users/weiqiangwen/Desktop/sest/morph02.png") cv.namedWindow("input image", cv.WINDOW_AUTOSIZE) cv.imshow("input image", src) color_space_demo(src) b,g,r =cv.split(src) ##rgb分離 cv.imshow("blue",b) cv.imshow("green",g) cv.imshow("red",r) src= cv.merge([b,g,r]) ##3通道合併 cv.imshow("merg",src) extrace_object_demo() cv.waitKey(0) cv.destroyAllWindows()