Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何知道opencv python是否检测到颜色_Python_Opencv - Fatal编程技术网

如何知道opencv python是否检测到颜色

如何知道opencv python是否检测到颜色,python,opencv,Python,Opencv,如下图所示,在图像中检测到蓝色,并弹出新图像。相反,我只想知道是否检测到颜色,而不是显示图像。像这样的, if blueColor in image: print "blue color detected" 来自文档的原始代码 import cv2 import numpy as np cap = cv2.VideoCapture(0) while(1): # Take each frame _, frame = cap.read() # Convert

如下图所示,在图像中检测到蓝色,并弹出新图像。相反,我只想知道是否检测到颜色,而不是显示图像。像这样的,

if blueColor in image:
    print "blue color detected"
来自文档的原始代码

import cv2
import numpy as np

cap = cv2.VideoCapture(0)
while(1):

    # Take each frame
    _, frame = cap.read()

    # Convert BGR to HSV
    hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)

    # define range of blue color in HSV
    lower_blue = np.array([110,50,50])
    upper_blue = np.array([130,255,255])

    # Threshold the HSV image to get only blue colors
    mask = cv2.inRange(hsv, lower_blue, upper_blue)

    # Bitwise-AND mask and original image
    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()

任何彩色图像中都可能有蓝色。“如果检测到颜色”是什么意思?如果
mask
至少有一个像素与0不同,则表示检测到蓝色。您可以使用
np.any
cv2.countNonZero
来this@Miki谢谢你的回答。