劉致遠,陳耀武
(浙江大學嵌入式系統研究開發(fā)中心,杭州 310027)
JPEG XR是來自聯合圖像專家組的一種最新的圖像壓縮標準,其前身是由微軟發(fā)布的HD PHOTO。該標準主要用來滿足端到端的數字圖像應用需求,具有高壓縮率和更佳的圖像質量,允許輸入寬動態(tài)范圍圖像,提供無損壓縮模式,支持全格式色彩采樣、縮略圖提取以及嵌入碼流的可伸縮性,同時保持編碼和解碼過程的低復雜度[1]。
壓縮效率是衡量圖像壓縮標準應用價值最重要的指標之一,更高的壓縮率下更好的圖像質量一直是圖像壓縮領域的研究目標。與主流的圖像壓縮標準JPEG和JPEG2000相比,JPEG XR的壓縮效率大大高于 JPEG,接近于JPEG2000[2],但是,由于前兩者出現時間較長,相關研究和優(yōu)化技術眾多,在很多應用場合都有更優(yōu)異的表現。JPEG XR作為較新的標準,有關圖像質量和率失真性能優(yōu)化的研究逐漸興起。文獻[3]通過實驗比較并分析了 JPEG XR、H.264 Intra模式、JPEG20003種圖像編碼器的質量差異;文獻[4]從標準制定的角度提出了在峰值信噪比(Peak Signal to Noise Ratio, PSNR)、多尺度結構相似性(Multi-scale Structural Similarity Index Measurement, MSSIM)等多種評價標準下提高 JPEG XR率失真性能的若干技術;文獻[5]進一步在主觀質量評價標準 MSSIM 下討論了量化系數的選取策略;文獻[6]優(yōu)化了編碼過程中的熵編碼環(huán)節(jié),從而使得特定碼率下的 PSNR提高了 0.5 dB。上述研究均在JPEG XR的率失真性能提高方面有所貢獻,但基于人類視覺系統(Human Visual System, HVS)特點的感知域JPEG XR圖片質量優(yōu)化的研究卻鮮少見到,而這類優(yōu)化方法已經使用于 JPEG和 JPEG2000。文獻[7-8]分別描述了基于 HVS特點的JPEG和JPEG2000編碼優(yōu)化方法。
本文利用 JPEG XR編碼標準的特點,根據能夠反映HVS特性的最小可覺差(Just Noticeable Difference, JND)模型提出一種自適應量化參數(Quantization Parameter, QP)選擇算法。將該算法加入到現有JPEG XR編碼過程中,使量化參數根據亮度、紋理等圖像內容進行動態(tài)調整,輸出壓縮圖像與用戶指定量化參數生成的壓縮圖像保持主觀質量相同,但壓縮效率得到較大提高,實現JPEG XR圖像的編碼優(yōu)化。
JPEG XR仍是一種基于塊的混合編碼方法,與其他靜止圖像壓縮標準在高層流程上有很多相似之處,JPEG XR編碼流程見圖1。
圖1 JPEG XR編碼流程
PEG XR最具有特色的環(huán)節(jié)之一就是系數變換。所謂的外部變換與內部變換構成了變換的 2個階段:第一階段的變換將一個 16×16宏塊中的像素值從空域變換到頻域,其中每個4×4塊中的交流(Alternating Current, AC)系數組成了該宏塊的高頻(High Pass, HP)系數;第二階段的變換針對每個4×4塊中的直流(Direct Current, DC)系數,這16個系數再經過一次與第一階段相同的變換,最終組成了該宏塊的1個DC系數和1個低頻(Low Pass, LP)系數。各階段的變換又可分為預濾波與核心變換。預濾波是可選的,其作用在于消除塊效應及振鈴效應,核心變換是一種類似于離散余弦變換(Discrete Cosine Transform, DCT)的變換。預濾波與核心變換結合在一起就構成了雙正交疊式變換(Lapped Biorthogonal Transform, LBT),該變換被證明可以有效地消除塊效應[9],從而提高視覺質量。
與對預測后的殘差進行變換和量化的H.264標準不同,JPEG XR直接對變換系數進行量化,因此從理論上說,一個宏塊的量化誤差并不會對使用該宏塊進行預測的其他宏塊造成影響,這為通過量化系數控制壓縮率及壓縮質量起到了一定的簡化作用。
JPEG XR的標準量化過程比較靈活。不同的圖像區(qū)域、色彩通道各自擁有獨立的量化參數集,每個宏塊按照所屬圖像區(qū)域及色彩通道從對應的量化參數集中選擇自己的量化參數。一個宏塊的DC、LP、HP系數的量化參數可以不同,其中,DC系數量化參數集僅有 1個量化參數;LP、HP系數的量化參數集可分別有最多16個量化參數。量化參數的范圍為[1, 255],1對應的就是無損壓縮。由量化參數到量化因子的映射具體如下:
JND指的是HVS可以察覺到的差異的最大閾值,在主觀圖片及視頻處理中扮演了重要角色[10]。在有關圖片的JND評價中,已經發(fā)展出了眾多模型,這些現有模型基本可分為基于像素和基于子帶 2類。它們的本質原理都是HVS的一些特性,并可以通過空域頻域變換來互相轉化。
基于像素的JND模型大多用作圖像質量評價、運動估計等,由于空域的限制,該類模型一般不考慮HVS對于不同頻率成分的不同敏感度,因此不能精確地描述 HVS的特性[11]。
基于子帶的JND模型則包含了影響HVS感知的主要因素,如對比度敏感函數(Contrast Sensitivity Function, CSF)、亮度自適應和對比度掩蓋等,該類模型大部分用來提高圖片及視頻的壓縮效率,由于主流壓縮算法大多使用DCT變化,因此基于頻帶的JND模型大多是基于DCT的,其他則基于DWT,處理使用小波變換的壓縮算法如JPEG 2000等。
在基于子帶的JND模型中,DCTune是其中發(fā)展時間較長且接受度比較高的一個。該模型由NASA Ames研究中心提出,申請了發(fā)明專利并推出了相應的JPEG編碼軟件。在最新的DCTune2.0中,增加了根據原始圖像評判壓縮圖像JND質量的功能,是一種快速方便的圖像主觀質量評價工具。
優(yōu)化圖片的壓縮編碼有 2種實現途徑:一種是在保持圖片碼率不變的情況下,使得解碼圖片的質量得到增強;另一種是保持圖片質量不變,減少圖片碼率。這 2種途徑本質是相同的,都是提升壓縮圖片的率失真性能。本文主要從第 2種途徑出發(fā),針對控制圖片質量的量化環(huán)節(jié),提出一種優(yōu)化算法,其框圖如圖2所示。
圖2 自適應量化參數選擇算法框圖
4.1.1 分類要素
對于無色度圖像來說,像素的JND可以用式(2)的非線性模型[12]來近似描述:
其中,x、y分別為像素的橫、縱坐標;Tl為與背景亮度有關的可視閾值;Tt是與圖像紋理掩膜效應有關的可視閾值;Cly是兩者的疊加效應系數。
可見,主要有2個因素影響每個像素的視覺感知閾值:(1)像素所處區(qū)域的平均背景亮度;(2)像素所處區(qū)域的紋理情況。
人眼在不同亮度下的感知閾值呈近似的拋物線:在中等亮度下,閾值最低,差異最容易被感知;在極暗和極亮的亮度下,閾值較高,差異不容易被感知,該曲線如式(3)所示[12]:
其中,I為背景平均亮度。
同樣地,圖像紋理也可以用一個因子來表示,該因子與像素亮度的鄰域梯度和邊緣權重有關,如式(4)所示[12]:
其中,β為調整因子;G為該像素4鄰域最大梯度;W為邊緣權重。可見,人眼對于平坦光滑區(qū)域和圖像中邊緣附近的差異較容易覺察,對于復雜紋理區(qū)域的差異察覺閾值則較高。
基于上述HVS特性可知,若想保持圖片的主觀質量不變而提高壓縮率,則要對更少的碼率進行合理分配。針對亮度自適應因子,應在中等亮度區(qū)域分配較多的碼率,而在暗區(qū)和亮區(qū)分配較少的碼率;針對紋理應在平滑區(qū)域和邊緣區(qū)域分配較多碼率,而在復雜紋理區(qū)域分配較少碼率。為此,必須首先準確地判斷圖像區(qū)域特性。最簡單直接的方法就是在空域直接求上述屬性的值。如對于平均亮度,只要求區(qū)域內像素亮度的平均值即可;求背景亮度的非均勻性,則相當于求區(qū)域內像素亮度的均方差。但在JPEG XR圖像壓縮過程中,上述空域處理屬于額外步驟,會占用一定的編碼資源,更好的方法是利用壓縮過程中的變量來進行判斷。
4.1.2 基于變換系數的圖像亮度與紋理分析
雖然LBT并不等同于DCT,但其系數在頻域的意義是近似的。在亮度通道中,DC系數仍然代表宏塊中像素亮度的平均值,所以,可以用宏塊的 DC系數根據閾值來判斷宏塊的亮度類型;同理,AC系數可以反映宏塊的紋理情況,具有復雜紋理的宏塊區(qū)域有較高能量的AC系數。
表1表示LBT變換系數與圖像亮度、紋理的對應關系。
表1 LBT變換系數與圖像亮度、紋理的對應關系
對于每個宏塊僅有的1個DC系數,只要直接判斷其值即可;對于每個宏塊含有多個的 LP、HP系數,通過大于一定閾值的LP、HP系數個數衡量LP與HP系數的大?。?/p>
LP_num為當前宏塊中大于LP系數閾值的LP系數個數,LP系數閾值設為100。
HP_num為當前宏塊中大于HP系數閾值的HP系數個數,HP系數閾值設為134。
4.1.3 圖像中邊緣區(qū)域的檢測
實際上,并不是所有的高能量AC系數區(qū)域均為復雜紋理區(qū)域,邊緣區(qū)域也會有較高能量的AC系數。判斷邊緣區(qū)域的關鍵在于從LP系數較大的區(qū)域中排除粗紋理區(qū)域,即將具有較大 HP系數的區(qū)域排除。還有一種需要考慮的情況,就是在紋理區(qū)域中出現邊緣,則因為具有較大HP系數的區(qū)域已被排除,該邊緣不會被檢測到。補償的方法是計算每個宏塊HP系數與相鄰宏塊HP系數的能量差,該差大于一定的閾值代表紋理中可能有邊緣。綜上所述,一個宏塊滿足以下任意一個條件即為邊緣宏塊:
其中,邊緣閾值EDGE_TH為2;HP系數差閾值HP_DIFF_TH為100;HP_num_diff為當前宏塊相鄰宏塊(包括上邊宏塊和左邊宏塊)中大于HP系數閾值的HP系數個數,由式(8)計算得到:
圖 3展示了根據變換系數檢測邊緣的效果,可見,該方法能夠準確檢測出大部分的清晰邊緣。
圖3 邊緣檢測效果
4.1.4 基于亮度和紋理的宏塊分類
本文將宏塊分為 6類,并根據變換系數判斷宏塊所屬類型,具體分類方法如表2所示。根據LBT變換關系,其中,亮度閾值分別為?6000和4000。利用該分類方法對實驗圖片中的宏塊進行分類情況如圖4所示。
?
圖4 宏塊分類效果
目前ITU-T發(fā)布的JPEG XR圖像編碼系統參考軟件尚無碼率控制功能,量化參數完全取決于用戶的輸入參數。缺省模式為使用統一量化參數模式并只輸入一個固定量化參數值作為整幅圖片各個色彩通道及各個宏塊的量化參數。這樣一幅圖片的率失真性能就是該量化參數值的函數。本文改進了這種單一量化參數的編碼方法,由缺省量化參數值計算出實際的量化參數集。
4.2.1 量化參數的個數
JPEG XR的DC、LP、HP 3種頻帶系數對碼率及圖像質量的貢獻有所不同。文獻[13]在統一量化參數模式下分析Lena圖壓縮碼流中不同頻帶的碼率情況,得到如下碼率比:
無論是對碼率比的分析還是實驗均表明,當量化參數改變量相同時,對HP系數量化參數的修改會使碼率發(fā)生最大變化;而對 DC系數量化參數的修改則變化相對不大。因此,如果要大幅度調整碼率,應改變HP系數的量化參數值;如果要調整圖片質量同時保持一定范圍內的碼率,則應改變DC系數和LP系數的量化參數值。因此,需要將LP系數和HP系數的量化參數集合進行擴充。
量化參數集合并不是越大越好。原因主要有:每個宏塊為了表示自身的量化參數,需要在碼流中加入自身量化參數在量化參數集合中的序號。一個宏塊的碼率與量化參數集的關系[13]如式(10)所示:
其中,R為該宏塊的碼率;m為宏塊序號;q為量化系數;S為量化參數集;δ為選擇某個量化系數或某種量化參數集的概率;μ為沒有選擇缺省量化系數的懲罰因子。從式(10)可見若量化參數集過大,則量化參數集本身就增大了碼率;同時,如果選擇量化參數集中排序靠后的量化系數,則要用更多的比特來表示這個量化系數的序號,就比排序靠前的量化系數更加耗費碼率。
JPEG XR標準規(guī)定,相鄰宏塊之間的系數預測僅能在量化參數相同的情況下進行。量化參數的個數過多會導致相鄰宏塊之間量化參數相同的概率減小,也就減少了系數預測發(fā)生的次數,從而增加碼率。
綜上所述,本文算法實際使用的量化參數集合為:
(1)DC量化參數集:{DC_QP};
(2)LP量化參數集:{LP_QP_1, LP_QP_2};
(3)HP量化參數集:{HP_QP_1, HP_QP_2, HP_QP_3}。
4.2.2 基于缺省量化參數的實際量化參數計算
按照如下步驟計算實際量化參數:
(1)根據式(1)計算用戶輸入的缺省量化參數對應的缺省量化因子,用default_factor表示。
(2)根據式(11)分別計算各頻帶系數的實際量化因子。
(3)根據式(1)對各個量化因子反推出對應的量化系數。
對于不同類型的宏塊,從量化參數集中選擇各個頻帶系數對應的量化參數,具體對應關系如表3所示。
表3 不同宏塊類型對應的各頻帶量化參數
根據選擇每種量化參數的宏塊數,對量化參數在集合中的順序進行排序,使對應宏塊數較多的量化參數在前面,并使每個集合中對應宏塊數最多的量化參數為該頻帶缺省量化參數。這樣使得耗費在宏塊量化信息上的碼率最小。
本文提出的自適應量化參數選擇算法整體流程見圖5。
圖5 自適應量化參數選擇算法流程
在ITU-T發(fā)布的JPEG XR圖像編碼系統參考軟件版本1.8(JPEG XR image coding system-Reference software 1.8)中,本文加入了上述自適應量化參數選擇算法,選取多張標準實驗圖片,分別用原始的固定量化參數算法與本文算法在不同的輸入量化系數下對它們進行編碼。對輸出的壓縮圖片用DCTune2.0計算其主觀質量誤差。
首先測試本文算法對圖片JND的保持性能,即在相同的輸入量化參數下,采用本文算法得到的圖片主觀質量與原始算法的圖片主觀質量應基本保持一致。圖6和圖7顯示了2幅實驗圖片在不同輸入量化參數下的JND曲線。
圖6 Lena圖JND曲線
圖7 Baboon圖JND曲線
從曲線的重合程度可以看到,原始算法和本文算法的JND曲線基本重合,可見本文算法能夠保持相同輸入量化參數下的主觀質量。
對同一幅測試圖片比較相同 DCTune主觀質量誤差下同一幅原始圖片的不同壓縮版本的碼率大小,結果如表 4和表5所示。
表4 相同DCTune主觀質量誤差下的Lena碼率對比
表5 相同DCTune主觀質量誤差下的Baboon碼率對比
從表4、表5可看出,雖然2幅圖片的原始壓縮率有較大差別,但在各檔次的 DCTune主觀質量誤差上,利用本文算法得到的圖片碼率均小于利用原始算法得到的圖片碼率。
本文從實驗圖片中選取了多幅具有代表性的典型圖片,繪制了如圖 8所示的在本文算法下不同圖片的壓縮效率提升百分比。壓縮效率提升的計算公式如式(12)所示,其中,Bo和Bn分別代表原始算法碼率和本文算法碼率。
圖8 典型圖片的壓縮效率提升
通過對圖8進行分析可得出如下結論:
(1)從曲線的走勢看出本文算法優(yōu)化的趨勢為,在主觀質量誤差較小,即圖片壓縮比較小的情況下,壓縮效率相對提升不大;隨著圖片壓縮比的增加,壓縮效率提升變得明顯,最大可達 10%;當圖片壓縮比進一步增大,壓縮效率提升又逐漸減小??梢姳疚乃惴▽τ谥械葔嚎s比的圖片具有較好的壓縮效率提升效果。
(2)從不同曲線的對比看出,本文算法對于Peppers這類具有較多的中頻成分,Lena這樣紋理與邊緣分布均勻、亮度適中的圖片,以及Cameraman這樣包含較多平滑區(qū)域的圖片具有較好的優(yōu)化效果,但對Baboon這樣具有大量高頻成分、紋理細節(jié)豐富的圖片以及Goldhill這類整體圖片較暗的優(yōu)化效果稍差,原因是本文算法減少了占這類圖絕大部分面積的復雜紋理區(qū)域或低亮度區(qū)域的碼率分配。
在測試程序運行時間時發(fā)現,本文算法復雜度較低,加入自適應量化參數選擇步驟后,相對于原始編碼流程增加的軟件運行時間幾乎可以忽略。
本文將基于HVS感知特點的主觀質量評價引入JPEG XR圖像編碼過程中,在保持壓縮圖像主觀質量不變的前提下,利用自適應量化參數選擇算法使壓縮效率得到最高10%的提升。該算法不僅可應用在顯微鏡、照相機、醫(yī)學影像儀器、視頻監(jiān)控系統等多種系統中,還為JPEG XR圖像的主觀質量提升提供了一種新的思路。今后的主要研究方向除了進一步提高優(yōu)化壓縮比并解決部分特殊圖片壓縮效率提升較低的問題,更重要的是擴展本文算法在運動JPEG XR編碼標準中的應用,使其在視頻編碼中發(fā)揮作用。
[1]Srinivasan S, Tu Chengjie, Regunathan S L, et al.HD Photo: A New Image Coding Technology for Digital Photography[C]//Proc.of SPIE Optics and Photonics, Applications of Digital Image Processing XXX.San Diego, USA: SPIE Press, 2007.
[2]Dufaux F, Sullivan G J, Ebrahimi T.The JPEG XR Image Coding Standard[J].IEEE Signal Processing Magazine, 2009,26(6): 195-199.
[3]Tran T D, Liu Lijie, Topiwala P.Performance Comparison of Leading Image Codecs: H.264/AVC Intra, JPEG2000, and Microsoft HD Photo[C]//Proc.of SPIE Optics and Photonics,Applications of Digital Image Processing XXX.San Diego,USA: SPIE Press, 2007.
[4]Schonberg D, Sun Shijun, Sullivan G J, et al.Techniques for Enhancing JPEG XR/HD Photo Rate-distortion Performance for Particular Fidelity Metrics[C]//Proc.of SPIE Optics and Photonics, Applications of Digital Image Processing XXXI.San Diego, USA: SPIE Press, 2008.
[5]Schonberg D, Sullivan G J, Sun Shijun, et al.Perceptual Encoding Optimization for JPEG XR Image Coding Using Spatially Adaptive Quantization Step Size Control[C]//Proc.of SPIE Optics and Photonics, Applications of Digital Image Processing XXXII.San Diego, USA: SPIE Press, 2009.
[6]Gao Yu, Chan Duncan, Liang Jie.JPEG XR Optimization with Graph-based Soft decision Quantization[C]//Proc.of the 18th IEEE International Conference on Image Processing.Brussels,Belgium: IEEE Signal Processing Society, 2011.
[7]Tong H H Y, Venetsanopoulos A N.A Perceptual Model for JPEG Applications Based on Block Classification, Texture Masking, and Luminance Masking[C]//Proc.of the 18th IEEE International Conference on Image Processing.Chicago, USA:IEEE Signal Processing Society, 1998.
[8]江東明.視覺模型在JPEG2000中的應用研究[J].計算機工程, 2003, 29(4): 130-131.
[9]Malvar H S.Lapped Transforms for Transform Coding with Reduced Blocking and Ringing Artifacts[J]. IEEE Transactions on Signal Processing, 1998, 46(4): 1043-1053.
[10]Jia Yuting, Lin Weisi, Kassim A A.Estimating Just-noticeable Distortion for Video[J].IEEE Transactions on Circuits and Systems for Video Technology, 2006, 16(7): 820- 829.
[11]Ma Lin, King N N, Zhang Fan, et al.Adaptive Block-size Transform Based Just-Noticeable Difference Model for Images/Videos[J].Signal Processing: Image Communication,2011, 26(3): 162-174.
[12]Yang Xiaokang, Ling W S, Lu Z K, et al.Just Noticeable Distortion Model and Its Applications in Video Coding[J].Signal Processing: Image Communication, 2005, 20(7): 662- 680
[13]Richter T.Spatial Constant Quantization in JPEG XR is Nearly Optimal[C]//Proc.of 2010 Data Compression Conference.Snowbird, USA: [s.n.], 2010.