一、ccv的主要思想[1]
針對顏色直方圖和顏色矩無法表達影象色彩的空間位置的缺點,pass[9]提出了影象的顏色聚合向量(color coherence vector)。它是顏色直方圖的一種演變,其核心思想是將屬於直方圖每乙個bin的畫素進行分為兩部分:如果該bin內的某些畫素所佔據的連續區域的面積大於給定的閾值,則該區域內的畫素作為聚合畫素,否則作為非聚合畫素。假設αi與βi分別代表直方圖的第i個bin中聚合畫素和非聚合畫素的數量,影象的顏色聚合向量可以表達為。而 就是該影象的顏色直方圖。由於包含了顏色分布的空間資訊,顏色聚合向量相比顏色直方圖可以達到更好的檢索效果。
二、ccv的演算法流程[2]
三、 舉個ccv的小例子
輸入資料如圖1所示,一共包含36個畫素點,則將後面判斷是否聚合的閾值設定為4。
圖1 輸入資料
1、量化
量化其實就是乙個降維的過程,使特徵更加緊湊。將圖1所示輸入資料按照均勻量化的原則,數值為10~19的對應1,數值為20~29的對應2,30~39的對應3,即將原來的顏色特徵量化為了1、2、3三種顏色。按照這種方法量化後的結果如2圖2所示:
圖2 量化後的結果
2、劃分連通區域
圖2所示的資料可以劃分成4個連通區域a、b、c、d,如圖3所示:
圖3 劃分的連通區域
3、判斷聚合性
對於第2步得到的a、b、c、d四個連通區域分別統計畫素數目,如圖4所示:
圖4 統計連通區域畫素數目
然後與之前設定的閾值4做比較,畫素數大於4的連通區域中的畫素為聚合畫素,小於4的連通區域中的畫素為非聚合畫素,如此可知連通區域a、b中的畫素都是聚合畫素,而連通區域c、d中的畫素為非聚合畫素。
然後對於量化的3個顏色1、2、3分別統計其中聚合畫素和非聚合畫素的數目,如圖5所示,其中color為3時的b應該為1,圖中有錯誤。
圖5 統計各顏色分量畫素聚合情況
4、得到結果
由圖5可知該影象的聚合向量為,搞定,~`(*∩_∩*)′~。最開始看英文課件看得雲裡霧裡,後來查資料並且最終通過例子真正搞明白了,雖然不難但這個學習的過程還是蠻有成就感的。over~
參考:
[1]
[2]
顏色聚合向量
針對顏色直方圖和顏色矩無法表達影象色彩的空間位置的缺點,pass 9 提出了影象的顏色聚合向量 color coherence vector 它是顏色直方圖的一種演變,其核心思想是將屬於直方圖每乙個bin的畫素進行分為兩部分 如果該bin內的某些畫素所佔據的連續區域的面積大於給定的閾值,則該區域內的...
顏色聚合向量
針對顏色直方圖和顏色矩無法表達影象色彩的空間位置的缺點,提出了影象的顏色聚合向量 color coherence vector 它是顏色直方圖的一種演變,其核心思想是將屬於直方圖每乙個bin的畫素進行分為兩部分 如果該bin內的某些畫素所佔據的連續區域的面積大於給定的閾值,則該區域內的畫素作為聚合畫...
C C 顏色問題
在開頭寫上 include 在函式中寫入 system color 3h 即可改變在vc中執行是背景和前景的顏色。設定預設的控制台前景和背景顏色。color attr attr 指定控制台輸出的顏色屬性。顏色屬性由兩個十六進製制數字指定 第乙個為前景,第二個為前景。每一數字可以為以下任何值之一 0 ...