圖像顏色量化與抖動方法和系統的制作方法
【技術領域】
[0001] 本發明涉及圖像處理技術,特別是涉及一種圖像顏色量化與抖動方法和系統。
【背景技術】
[0002] 顏色量化是一項能夠用少量顏色(如256色或更少)表達24比特真彩色圖像(超過 一千六百萬種顏色),同時又能保證與原真彩色圖像相似性的技術。顏色量化最終需要求得 的是顏色板和像素標記圖。其中,顏色板包含了最終圖像中的K種顏色,像素標記圖則指示 每個像素選取顏色板中的第幾種顏色。顏色量化技術在只支持少量顏色的顯示設備和打印 設備中有廣泛應用,同時也是其它圖像處理技術的常用預處理步驟。
[0003] 傳統的顏色量化方法都是基于聚類的,往往會引入很明顯的偽邊緣,如圖12(b)所 示,是采用K-means聚類方法對輸入圖像進行顏色量化后得到的圖像。抖動是一種誤差擴散 的方法,可以有效的改善偽邊緣的問題,如圖12(c)所示,對顏色量化后的圖像進行抖動處 理后得到的圖像能有效改善偽邊緣。傳統技術中,量化和抖動是兩步分開的過程,優化目標 不一致,得到的并不是最優的結果,因此顏色量化與抖動后得到的圖像質量效果仍有待提 尚。
【發明內容】
[0004] 基于此,有必要針對上述技術問題,提供一種能有效提高圖像質量的圖像顏色量 化與抖動的方法和系統。
[0005] -種圖像顏色量化與抖動的方法,所述方法包括:
[0006] 對輸入圖像進行計算得到視覺顯著性圖;
[0007] 基于所述視覺顯著性圖中的像素的視覺顯著性參數構建目標函數;
[0008] 對所述輸入圖像進行交替的中值分割和聚類算法,得到初始顏色板;
[0009] 通過優化所述目標函數以交替的更新像素標記圖和顏色板,得到最終的像素標記 圖和顏色板。
[0010] -種圖像顏色量化與抖動的系統,所述系統包括:
[0011] 顯著性處理模塊,用于對輸入圖像進行計算得到視覺顯著性圖;
[0012] 目標函數構建模塊,用于基于所述視覺顯著性圖中的像素的視覺顯著性參數構建 目標函數;
[0013] 預處理模塊,用于對所述輸入圖像進行交替的中值分割和聚類算法,得到初始顏 色板;
[0014] 更新模塊,用于通過優化所述目標函數以交替的更新像素標記圖和顏色板,得到 最終的像素標記圖和顏色板。
[0015] 上述圖像顏色量化與抖動的方法和系統,通過先對輸入圖像進行計算得到視覺顯 著性圖,基于像素的視覺顯著性來構建目標函數,在構建目標函數時引入了像素的視覺顯 著性,采用了優化的初始顏色板替代傳統的隨機顏色板,且在優化目標函數過程中交替的 更新像素標記圖和顏色板,最終得到的顏色量化的結果有著更高的圖像質量。
【附圖說明】
[0016] 圖1為一個實施例中圖像顏色量化與抖動的方法的流程示意圖;
[0017] 圖2為一個實施例中對輸入圖像計算得到視覺顯著性圖的效果圖;
[0018] 圖3為一個實施例中對輸入圖像進行交替的中值分割和聚類算法,得到初始顏色 板的流程示意圖;
[0019] 圖4為一個實施例中中值分割的流程示意圖;
[0020] 圖5為一個實施例中包圍盒的示意圖;
[0021] 圖6為一個實施例中通過優化所述目標函數以交替的更新像素標記圖和顏色板, 得到最終的像素標記圖和顏色板的流程示意圖;
[0022] 圖7為一個實施例中圖像顏色量化與抖動的系統的結構框圖;
[0023]圖8為一個實施例中預處理模塊的結構框圖;
[0024] 圖9為一個實施例中更新模塊的結構框圖;
[0025] 圖10為一個實施例中電子設備的內部結構圖;
[0026] 圖11為采用高斯核和采用雙邊濾波核的效果對比圖;
[0027] 圖12為現有技術中顏色量化與抖動的效果圖。
【具體實施方式】
[0028] 為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對 本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并 不用于限定本發明。
[0029] 如圖1所示,在一個實施例中,提供了一種圖像顏色量化與抖動的方法,該方法可 應用于各種電子設備,特別是只支持少量顏色的顯示設備和打印設備中,可以實現對輸入 圖像用少量顏色(如256色或更少)表達24比特真彩色圖像(超過一千六百萬種顏色),同時 又能保證與原真彩色圖像的相似性。該方法包括:
[0030] 步驟102,對輸入圖像進行計算得到視覺顯著性圖。
[0031] 視覺顯著性圖,是指像素的顯著性較高的圖像。具體的,對輸入圖像可計算一張同 等分辨率的視覺顯著性圖,顯著性越高的像素代表人眼的關注程度越高。比如,對輸入圖像 通過調整灰度、色階或飽和度來得到對應的視覺顯著性圖。優選的,視覺顯著性圖可為輸入 圖像對應的灰度圖,通過對輸入圖像進行灰度處理則可得到對應的灰度圖,顯著性越高,則 對應的像素的灰度值越高。如圖2所示,示出了輸入圖像和對應的灰度圖。
[0032]步驟104,基于視覺顯著性圖中的像素的視覺顯著性參數構建目標函數。
[0033]具體的,在一個實施例中,步驟104中構建目標函數,目標函數中包含視覺顯著性 圖中的像素的視覺顯著性參數,以及對于像素 j的量化結果的最終顏色與像素 j原來的顏色 之間的差值增加基于像素 i和像素 j的空間距離的雙邊濾波核的權重,其中,像素 i是輸入圖 像中的像素,像素 j是輸入圖像中的像素 i的領域中的像素。因此,對于像素總數目為N的輸 入圖像,i和j的取值都為1~N之間的整數。
[0034]根據得到的視覺顯著性圖來確定像素的視覺顯著性參數,例如,對輸入圖像通過 調整灰度來得到灰度圖,則像素的視覺顯著性參數可為像素的灰度值;對輸入圖像通過調 整色階或飽和度等來得到的視覺顯著性圖,則像素的視覺顯著性參數可為像素的飽和度 等。由于目標函數中增加了像素的視覺顯著性參數,使得在優化的過程中可以優先考慮視 覺顯著性的區域,改善圖像質量。
[0035] 進一步的,構建的目標函數模型中,對于像素 j的量化結果的最終顏色與像素 j原 來的顏色之間的差值增加了基于像素 i和像素 j的空間距離的雙邊濾波核的權重。其中,像 素 j是指像素 i的一個領域化中的像素。傳統技術中所構建的目標函數模型中通常使用的是 高斯濾波核的權重,而使用雙邊濾波核的權重可以避免在公式加權求和的過程中將顏色差 異較大的顏色混合起來,使得方法增加了邊緣敏感的特性。
[0036] 步驟106,對輸入圖像進行交替的中值分割和聚類算法,得到初始顏色板。
[0037] 具體的,對輸入圖像每進行一次中值分割再采用聚類算法優化聚類中心的位置以 及分割的邊界,在進行了一次中值分割和聚類優化后,可以根據顏色板中的每個像素當前 顏色到原圖顏色的距離,進一步加大加權方差較大的像素的權重,再進行中值分割和聚類 優化,如此反復,直到總體的平均加權方差不再減少,最終得到初始顏色板。本實施例中,使 用優化的初始顏色板來替代傳統的隨機顏色板,能夠避免在后續優化目標函數的過程中采 用逐像素局部更新容易較快陷入遠離全局最優解的局部極小值的問題,從而能夠有效提高 顏色量化后的圖像質量。
[0038] 步驟108,通過優化目標函數以交替的更新像素標記圖和顏色板,得到最終的像素 標記圖和顏色板。
[0039] 顏色量化最終得到的是像素標記圖和顏色板,其中,顏色板中包含了最終圖像中 的k種顏色,像素標記圖則指示每個像素選取顏色板中的第幾種顏色。本實施例中,交替優 化像素標記圖和顏色板,直到目標函數不再減少,相對于同時優化像素標記圖和顏色板的 方式,降低了復雜度。具體的,可采用像素局部更新的方式來更新像素標記圖,每更新一次 像素標記圖,則固定像素標記圖并開始更新顏色板,如此交替進行,直到目標函數不再減 少,得到最終的像素標記圖和顏色板。
[0040] 本實施例中,通過先對輸入圖像進行計算得到視覺顯著性圖,基于像素的視覺顯 著性來構建目標函數,在構建目標函數時引入了像素的視覺顯著性,采用了優化的初始顏 色板替代傳統的隨機顏色板,且在優化目標函數過程中交替的更新像素標記圖和顏色板, 最終得到的顏色量化的結果有著更高的圖像