opencvpython中通过颜色检测物体

2021-04-12 00:35:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图用hsv颜色范围来检测我的手机,但问题是我应该如何选择颜色范围来检测我的手机。在

手机颜色为金属金。在

如果我知道BGR值,有没有什么简单的方法可以在hsv中找到颜色范围?在

这是我的密码

侦探手机.py

import cv2
import numpy as np

cap = cv2.VideoCapture(0)

while True:
    _, frame = cap.read()
    hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)

    lowerColor = np.array([0, 0, 0])
    upperColor = np.array([74, 74, 83])

    mask = cv2.inRange(hsv, lowerColor, upperColor)
    res = cv2.bitwise_and(frame, frame, mask=mask)

    cv2.imshow('frame', frame)
    cv2.imshow('mask', mask)
   #cv2.imshow('res', res)

    if cv2.waitKey(1) & 0xff == ord('q'):
        break

cv2.destroyAllWindows()
cap.release()
1条回答
网友
1楼 ·

是的,有一个简单的方法:你可以写一些类似的东西

lowerColor = np.uint8([[[0, 0, 0]]])
upperColor = np.uint8([[[74, 74, 83]]])
hsv_lower = cv2.cvtColor(lowerColor, cv2.COLOR_BGR2HSV)
hsv_upper = cv2.cvtColor(upperColor, cv2.COLOR_BGR2HSV)

正如opencvpython教程(1)中建议的那样!在

相关问题