请为我解释这个opencv程序

时间:2014-02-23 09:04:05

标签: python opencv numpy colors rgb

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_green, upper_green)

    # 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()

注意:我是新手打开简历,所以请帮帮忙!!!

在这个程序中

1)在阅读框架时,为什么会出现符号' _,'在框架之前

是语法吗?

2)指定蓝色的下限和上限。    是RGB值还是BGR值或HSV值

如何找到其他颜色的下限和上限,如红色,绿色?

请解释找到其他颜色值的过程,我尝试了其他颜色,但它给了我hsv和res的黑屏输出!!!

3)有人改变这个程序以检测红色或其他颜色,这样我才能知道其中的差异吗?

1 个答案:

答案 0 :(得分:1)

  1. 这是元组拆包; cap.read()返回两个值,我们将第一个值分配给_(“我们不会使用此”的约定),第二个分配给frame
  2. 评论在hsv中字面上说“。
  3. 您只需要指定自己的边界,或者更改已经存在的边界,并自己查看差异。使用HSV converter查看您正在使用的颜色。如果您处理的图像中的颜色不在您处理的图像中,则它将为黑色。