2011-08-03 142 views
3

我想知道是否有降低圖像顏色方案的方法。比方說,我有一個圖像,在RGB中有32位顏色範圍。我想知道是否可以將它縮小到8位色彩方案。這與Photoshop等應用程序中的「卡通」過濾器類似,或者將屏幕色彩空間從32位真彩色更改爲256色。OpenCV較低的顏色值

感謝

回答

0

如果你想最現實的結果看看colour quantisation。基本上找到具有相似RGB顏色的像素塊,並用單一顏色替換它們,試圖最小化改變的像素數量以及每個新像素與其原始顏色不同的量 - 所以這是一個空間參數化問題

+0

這個技巧。 – Seb

0

嗯,你可以做convertTo(newimg, CV_8U)將其轉換爲8位,但是這仍然是1600萬個色。如果圖像具有整像素值,那麼對於任意縮小因子的每個像素的R,G和B值或對於2的乘方因子的減少因子,您也可以對其進行val = val/reductionFactor * reductionFactor + reductionFactor/2(或其一些優化)。

0

您是否嘗試過OpenCV示例中給出的金字塔式Mean Shift過濾器示例程序?提到「卡通」過濾器讓我想起了它 - 顏色變平,微妙的色調合並和減少,導致顏色數量減少。

這個減少是基於一個閾值,一些實驗肯定會得到滿意的結果。