使用python opencv跟踪白色 [英] Tracking white color using python opencv

查看:358
本文介绍了使用python opencv跟踪白色的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想使用网络摄像头和python opencv跟踪白色.我已经有了跟踪蓝色的代码.

I would like to track white color using webcam and python opencv. I already have the code to track blue color.

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

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

#How to define this range for white color


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

我应该给出什么作为下限和上限 来跟踪白色 ! 我尝试更改值,但得到其他颜色,但白色却没有运气!!!

what values should I give as lower bound and upper bound to track white color!!?? I tried changing values and I got other colors but no luck with the white color!!!

是将HSV值或BGR值指定为上下限吗?

is that HSV values or BGR values specified as lower and upper bounds???

PS:我必须以二进制图像的形式获得最后的结果,以便进行进一步处理!

PS : I must get the last result as a binary image for further processing!!

请帮助我!

推荐答案

我写这是为了跟踪白色:

I wrote this for tracking white color :

import cv2
import numpy as np

cap = cv2.VideoCapture(0)

while(1):

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

    # define range of white color in HSV
    # change it according to your need !
    lower_white = np.array([0,0,0], dtype=np.uint8)
    upper_white = np.array([0,0,255], dtype=np.uint8)

    # Threshold the HSV image to get only white colors
    mask = cv2.inRange(hsv, lower_white, upper_white)
    # 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()

我试图跟踪手机的白屏并得到了这个信息:

I tried to track the white screen of my phone and got this :

您可以尝试更改HSV值 您也可以尝试如Legat所说的HSL色彩空间,这样会更准确

You can try changing the HSV values You might also try HSL color space as Legat said, it would be more accurate

这篇关于使用python opencv跟踪白色的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆