此次主要学习了如何将BGR转成HSV,主要用到cv2.cvtColor()和cv2.inRange()函数来识别视频中的蓝色物体。
code:
import cv2import numpy as np cap = cv2.VideoCapture(0)#开启相机 while(1): _,frame = cap.read() hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV) #将BGR图转成HSV图 lower_blue = np.array([100,43,46]) #能识别的最小的蓝色 upper_blue = np.array([124,255,255]) #能识别的最大蓝色 mask = cv2.inRange(hsv,lower_red,upper_blue) #设置hsv的颜色范围 res = cv2.bitwise_and(frame,frame ,mask = mask) #使用and的方式,区分出蓝色 cv2.imshow(‘hsv‘,hsv) cv2.imshow(‘frame‘,frame) cv2.imshow(‘mask‘,mask) cv2.imshow(‘res‘,res) k = cv2.waitKey(5) &0xFF if k== 27: break cv2.destroyAllWindows() code结果:
原文地址:https://www.cnblogs.com/August2019/p/11718862.html
时间: 2024-11-12 00:16:18