2017-08-25 107 views
1

假設我們有一個穿藍色襯衫的男人。我建立了檢測襯衫對象的hacascascade分類器。一旦檢測到藍色襯衫物體,我怎樣才能獲得十六進制顏色藍色襯衫的價值?如何將單一顏色分配給像素區域?

input: image - >output: #0000FF(輸出可以是多種顏色,如果有可能)

我想使用的OpenCV使用Python或C++這樣的結果。任何有用的鏈接或文件? (我GOOGLE了一個多小時,但無法找到我想要的)

謝謝。

+0

十六進制顏色的代碼只是3個十六進制編碼的字節值連接,所以閱讀紅色通道,通道和藍色通道,將字節值轉換爲十六進制字符串,並將它們全部組合到一個字符串中。您在哪些步驟中有問題需要自己解決?這裏有一些例子:http://www.rapidtables.com/convert/color/hex-to-rgb.htm – Micka

+0

是的,但它如何決定呢?我們是否取某個地區的平均值?我們如何做到這一點? –

+1

所以你的問題是「如何評估像素區域的顏色?」或「如何將單一顏色分配給像素區域?」。我會嘗試掩碼/ roi區域中所有像素的中位數。 – Micka

回答

1

Converting hex color to RGB and vice-versa

如果您已經襯衫分割,你可以採取之前進制轉換均值/中位數RGB。如果您正在使用此功能進行識別,我還將設置您的顏色橢球體的主軸以獲得特定性。即在每個rgb頻道上建立範圍和分配。 你可以做中心點和球體(簡單的顏色距離),如果你懶/它是一個足夠簡單的問題