2016-04-23 576 views
1

我正在使用python中的openCV識別顏色黃色。我已經到了這一步,我必須在HSV中定義黃色的上下範圍。使用openCV識別HSV中顏色的範圍

用於限定藍的範圍

實施例:

lower_blue = np.array([110,50,50]) 
upper_blue = np.array([130,255,255]) 

的HSV通常以百分比定義,我想知道如何定義的範圍內爲黃色等的例子。

This is the colorspaces tutorial I've been following.

編輯: 有在上述博客的一些建議,但它並沒有給我所需的輸出。

+0

查看http://i.stack.imgur.com/gCNJp.jpg。色調值以度數給出。 Opencv使用範圍0..180而不是0..360,因此您必須將度數值除以2.選擇目標值周圍的任何範圍。例如黃色的色調是60度。所以你的色調範圍可能從60/2 - 10到60/2 + 10或從60/2-5到60/2 + 5取決於你想從完美的黃色離開多遠。 – Micka

回答

2

看看this page你會發現你想要的顏色的HSV值。

對於HSV,色調範圍爲[0,179],飽和度範圍爲[0,255],值範圍爲[0,255]。不同的軟件使用不同的比例。因此,如果您正在比較OpenCV值與他們,您需要規範化這些範圍。

我猜你是黃色

lower_blue = np.array([25,50,50]) 
upper_blue = np.array([32,255,255]) 
+0

是的,我正在尋找黃色的這種值。 – Harish

0

如果您從相機拍攝照片,將取決於照明條件。如果你的目標是跟蹤一些物體,你應該總是更新你的HSV值。我的建議是在你的照明條件下儘量縮小邊界。