python+opencv色彩转换,分离与合并
import cv2 as cv
import numpy as np
def color_change(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)
img=cv.imread('D:/fengge.jpg')
cv.imshow('image',img)
b,g,r = cv.split(img)
cv.imshow('b',b)
cv.imshow('g',g)
cv.imshow('r',r)
img[: ,: , 2]= 2
img=cv.merge([b,g,r])
cv.imshow('change',img)
k = cv.waitKey(0)
视频提取与 利用inRange 提取锁定颜色
import cv2 as cv
import numpy as np
def extract_object():
capture=cv.VideoCapture('D:/viseo.MP4')
while (True):
ret, fet = capture.read()
if ret == False:
break;
hsv=cv.cvtColor(fet,cv.COLOR_BGR2HSV)
lower_hsv = np.array([100,43,46])
higer_hsv = np.array([124,255,255])
mask=cv.inRange(hsv,lowerb=lower_hsv,upperb=higer_hsv)
dst=cv.bitwise_and(fet,fet,mask=mask)
cv.imshow('viseo',fet)
cv.imshow('mask',mask)
cv.imshow('dst',dst)
c = cv.waitKey(40)
if c==27:
break
extract_object()
从电脑自带摄像头中获取视频
import cv2
import numpy as np
cap=cv2.VideoCapture(0)
while(True):
ret,frame=cap.read()
gray=cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)
cv2.imshow('frame',gray)
if cv2.waitKey(1)&0xFF == ord('9'):
break
cap.release()