如何用python调用摄像头获取颜色色值
现在就是用opencv实现了调用摄像头去识别提前设置的颜色,而且没法输出色值,希望能用摄像头来识别颜色的RGB色值
可以使用OpenCV库中的cv2模块来调用摄像头,从而获取颜色色值。
以下是一个示例代码:
import cv2
cap = cv2.VideoCapture(0)
while True:
_, frame = cap.read()
hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)
# 获取某个颜色的色值
lower_blue = np.array([110,50,50])
upper_blue = np.array([130,255,255])
mask = cv2.inRange(hsv, lower_blue, upper_blue)
res = cv2.bitwise_and(frame,frame, mask= mask)
cv2.imshow('frame',frame)
cv2.imshow('mask',mask)
cv2.imshow('res',res)
k = cv2.waitKey(5) & 0xFF
if k == 27:
break
cv2.destroyAllWindows()
“现在就是用opencv实现了调用摄像头去识别提前设置的颜色”:
现在是怎么做的很重要:
(1)从图像中分割区域进行识别,还是根据预置的颜色从图像中找一个区域?
(2)识别的结果是什么?是某种颜色,还是某个区域,还是某些点?
“而且没法输出色值,”,如果你能识别所设置的颜色,只要根据识别的区域/点集,对这些点的像素值取平均就得到输出色值。如果识别结果是轮廓就更简单。
“希望能用摄像头来识别颜色的RGB色值”,得到像素值,就得到 RGB