王鐘斐,王 彪
寶雞文理學(xué)院 數(shù)學(xué)與信息科學(xué)學(xué)院,陜西 寶雞 721013
隨著人們對視頻和顯示質(zhì)量需求的逐漸增加,作為視頻質(zhì)量的重要特性,視頻的圖像分辨率已經(jīng)逐漸過渡到目前主流市場的4K水平[1-2]。為了滿足越來越高的圖像分辨率,終端顯示設(shè)備的分辨率也逐漸加大。但是由于陳舊視頻源的分辨率較低,且低分辨率(low resolution,LR)視頻源在高分辨率(high resolution,HR)顯示設(shè)備上不能得到較好的顯示效果,因此視頻源從LR向HR轉(zhuǎn)化的超分辨率[3-4](super resolution,SR)技術(shù)的研究被廣泛關(guān)注。
基于當前市場需求,SR應(yīng)用主要分為兩類:一類為視頻源從LR直接轉(zhuǎn)化為HR后,通過網(wǎng)絡(luò)傳輸且顯示[5-7];另一類為LR視頻源通過網(wǎng)絡(luò)傳輸后,在顯示端轉(zhuǎn)化為HR后顯示??梢钥闯?,后者在提高視頻分辨率的同時可以節(jié)約大量的網(wǎng)絡(luò)帶寬。因此顯示端的實時SR技術(shù)成為研究的重中之重[8-10]。
目前SR技術(shù)主要從現(xiàn)實應(yīng)用角度分為兩種,分別為實時系統(tǒng)中SR和非實時系統(tǒng)中SR,非實時系統(tǒng)中SR代表算法為基于深度學(xué)習(xí)的方法[11-12],實時系統(tǒng)中SR代表算法為基于方向插值的方法[13-16]。在基于學(xué)習(xí)的方法中,典型算法為稀疏矩陣的字典算法,該方法認為LR和HR存在映射關(guān)系,通過大量LR和HR數(shù)據(jù)的訓(xùn)練學(xué)習(xí),找到最優(yōu)的映射矩陣。圖像由LR到HR的轉(zhuǎn)化過程中,通過查找對應(yīng)類型的映射矩陣,實現(xiàn)圖像的SR重建。該方法為了獲取最優(yōu)的圖像質(zhì)量,需要存儲海量的映射矩陣和邊信息,并且運算復(fù)雜度極高。由于該方法的海量存儲導(dǎo)致實現(xiàn)成本增加,且運算復(fù)雜度過大不能達到實時的要求,因此該方法目前不適于工業(yè)量產(chǎn)。在基于插值的方法中,典型算法為方向插值算法,該方法首先判斷紋理方向,然后根據(jù)紋理方向進行插值,得到SR重建圖像。該方法通過運算復(fù)雜度和圖像質(zhì)量的均衡,在控制成本的前提下,追求圖像質(zhì)量更優(yōu)。
由于目前片源和顯示設(shè)備的分辨率倍數(shù)差異不會過大,并且考慮到成本,大多實時顯示系統(tǒng)的SR分為2~3倍的低倍率和4~5倍的中倍率。
2018年,Kim等提出了基于線性映射的邊緣定位超分辨率算法(super resolution using edge orientation based on linear mapping,SREO)[17]。目前該算法為實時中低倍率SR系統(tǒng)的最優(yōu)算法。該算法首先在LR圖像中根據(jù)紋理邊緣的計算得到大量的紋理方向,然后利用這些紋理方向和HR圖像進行映射,訓(xùn)練得到對應(yīng)的映射矩陣,最終通過映射矩陣查表的方式進行SR的圖像重建。雖然SREO在圖像質(zhì)量和成本復(fù)雜度之間進行平衡,以達到實時性和實現(xiàn)量產(chǎn)的目的,但是該方法仍存在以下缺點:
(1)較經(jīng)典的稀疏矩陣的字典算法,由于SREO的映射矩陣數(shù)量過少,導(dǎo)致圖像質(zhì)量下滑嚴重。
(2)較方向插值算法,SREO的映射矩陣需要大量的存儲空間,且浮點型矩陣映射運算的復(fù)雜度極高,因此實現(xiàn)成本大幅度增加。
基于以上問題,針對實時顯示系統(tǒng),本文提出了一種紋理字典和全方向插值的中低倍率快速超分辨率算法(directional dictionary and fitting interpolation,DDFI)。該算法通過金字塔紋理字典和方向矯正,為每個待插值像素(interpolated pixel,IP)的位置計算插值方向,并通過單邊擬合的方向插值得到IP的像素值,最終在進一步提高圖像質(zhì)量的同時,減少運算復(fù)雜度。
以2倍的低倍率SR為例,實際工作之前,SREO在先驗的原始HR圖像和LR圖像之間,計算得到625組映射矩陣模型。實際工作之后,SREO首先對LR圖像的每個像素,在625組映射矩陣模型中查找對應(yīng)的模型;然后采用該模型,對該LR像素進行映射得到對應(yīng)的HR像素;依次循環(huán),最終得到SR重建圖像。具體步驟如下:
步驟1將先驗的HR圖像,以固定倍率進行下采樣得到LR圖像。
研究表明,草33薄層稠油油藏在水平井井網(wǎng)條件下具備蒸汽驅(qū)可行性。但為了穩(wěn)妥起見,建議實施井組礦場試驗,在取得經(jīng)驗的基礎(chǔ)上大規(guī)模推廣,同時在試驗過程中需要加大監(jiān)測資料的錄取和分析,及時配套工藝技術(shù)解決現(xiàn)場的開發(fā)問題。
步驟2如圖1所示,通過HR圖像中IP位置反推,得到LR圖像中基準像素位置。將基準像素和其周圍共9個像素抽取,形成1個3×3的大塊后,分割為4個2×2的子塊。
Fig.1 Direction calculation diagram using 3×3 pixels in SREO圖1 SREO中3×3像素方向計算示意圖
步驟3根據(jù)式(1)對每個子塊進行水平梯度gh和垂直梯度gv的計算。與圖1對應(yīng),式中表示第i個子塊中第x列第y行的像素。
將計算結(jié)果帶入式(2),計算邊緣方向。式中,mi和di分別是第i個子塊的梯度權(quán)重和梯度斜率。
根據(jù)計算結(jié)果和預(yù)定義閾值,在表1中查詢得到每個子塊的紋理方向和索引。
Table 1 SREO subpatch direction map table表1 SREO子塊方向映射表
步驟4將4個子塊的索引組成2×2矩陣X。設(shè)HR圖像的2×2矩陣為Y,映射矩陣為M。為了最小化M和Y之間的誤差,考慮Y的多樣化,采用多變量回歸模型,通過式(3)計算一個最優(yōu)的M,其中λ為歸一化參數(shù),I為正則矩陣。
由于每個子塊的方向可能性為5種,因此對于2倍率SR,4個子塊的方向組合為54種,即可得到625種映射矩陣模型。
在所有映射矩陣模型得到后,SREO實際工作時,首先對于HR圖像中IP,計算LR圖像中對應(yīng)的待插值像素映射(interpolated pixel map,IPM)位置;然后采用式(2)計算基準像素的mi和di,形成索引矩陣后,查表選取對應(yīng)的映射模型進行映射;最終得到SR后的HR像素。以此類推,若為4倍SR,則映射矩陣數(shù)量為516。
根據(jù)以上算法介紹,可以看出SREO有如下問題:
(1)圖像質(zhì)量角度。SREO僅采用5種紋理方向,遠不能夠滿足自然界的紋理復(fù)雜情況,2倍率SR下SREO的625組映射矩陣,較經(jīng)典的稀疏矩陣的字典算法,也不能使映射矩陣達到最優(yōu)。因此SREO的圖像質(zhì)量較稀疏矩陣的字典算法有較大差距。
(2)實現(xiàn)成本角度。2倍率SR下,SREO的625組映射矩陣需要大量的存儲空間,且每個像素浮點型矩陣映射的運算復(fù)雜度偏高。因此較插值算法,SREO實現(xiàn)的成本大幅度增加。
(3)規(guī)格角度。SREO針對2倍的低倍率SR進行設(shè)計,對于中倍率情況,不僅較少的紋理方向會引起重建HR圖像質(zhì)量的下降,而且成指數(shù)級增長映射矩陣的數(shù)量也會使SREO的實現(xiàn)成本不可接受。
針對以上問題,本文提出了DDFI算法。
如圖2所示,根據(jù)在HR圖像中的IP確定其在LR圖像中的IPM,并以由IPM確定的Pix22、Pix23、Pix32和Pix33構(gòu)成的2×2區(qū)域為插值區(qū)域。將該2×2區(qū)域分別拓展為4×4和6×6區(qū)域,形成3層金字塔模型。先根據(jù)式(4)計算得到3層的4個方向的梯度權(quán)重,式中i和j分別為像素點的行列坐標,k為層數(shù)。再根據(jù)式(5)計算得到4組梯度比。
Fig.2 Pyramid model圖2 金字塔模型
根據(jù)層數(shù)約束后,0層、1層和2層的4組梯度比分別有16、81和256種組合,3層共有331 776種組合。
HR圖像中的IP紋理方向dirt計算公式如式(6),dirt為某一方向的梯度權(quán)值,IPi為當前IP,IPi-n和IPi+n為當前IP按該方向的前后兩個IP,m和n為參數(shù)。最終dir對應(yīng)的角度為該IP的紋理角度。
為了確定LR圖像中IPM的331 776種組合和HR圖像中IP的360個角度的對應(yīng)關(guān)系,在固定SR倍率下,首先仿真約100萬幅HR圖像和之對應(yīng)的LR圖像,得到IPM每個組合對應(yīng)的所有IP角度;然后對于1種IPM組合,在其對應(yīng)的所有IP角度中,選取出現(xiàn)概率最大的角度,作為該IPM組合的對應(yīng)角度;以此類推,得到所有IPM組合的對應(yīng)角度。最終,在實際工作之前形成一個331 776組合和360°的方向映射表。
實際工作中,首先確定IP的插值方向,具體如下:
步驟1插值區(qū)域主方向的確定
由于自然圖像中大部分區(qū)域為平坦區(qū)域,為了降低運算復(fù)雜度,在IPM的插值區(qū)域中,當均小于預(yù)設(shè)閾值時,確定該區(qū)域無方向;否則根據(jù)式(5)計算4組梯度比,通過方向映射表得到當前插值區(qū)域的主紋理方向。
對于無主紋理方向的插值區(qū)域,采用雙線性插值的方法得到IP,否則進入步驟2。
步驟2IP方向矯正
對于存在紋理主方向區(qū)域,由于插值區(qū)域中所有IPM并非嚴格同一方向,而是基于一個方向的方向簇,因此對于任1個IPM,需要考慮其相鄰插值區(qū)域的主紋理方向。如圖3所示,插值區(qū)域分為8個子區(qū)域,每個子區(qū)域需參考1個直相鄰和1個斜相鄰區(qū)域的主紋理方向。設(shè)插值區(qū)域為正方形,且每個邊長為100,可得對角長度為141。設(shè)t為IPM到當前插值區(qū)域斜對角線的垂直距離,a為IPM到當前插值區(qū)域中線垂直距離。根據(jù)式(7)計算得到IPM的具體方向。
Fig.3 Direction correction圖3 方向糾偏
式(7)中,條件為相鄰區(qū)域主紋理方向為無方向或相鄰區(qū)域與當前插值區(qū)域主紋理方向差異超過45°。dcur、dadj和ddia分別是當前、直相鄰和斜相鄰的區(qū)域的主紋理方向。
對于高次運算插值算法,如雙立方插值(bicubic interpolation,BC),雖然圖像質(zhì)量更優(yōu),但是復(fù)雜度過高;當中低倍率SR時,相對高次運算插值算法、低次運算插值算法效果相近且復(fù)雜度更低。對于存在紋理主方向區(qū)域,考慮到算法的實時性和低復(fù)雜度,為了擬合曲線,本文采用單邊擬合插值的方法。如圖4所示,先利用水平或垂直單邊擬合插值計算得到IPM方向上4個子像素點,再利用這4個子像素點,進行第二次單邊擬合插值,最終得到IPM對應(yīng)的IP。單邊擬合插值公式如式(8):
Fig.4 Interpolation schematic diagram圖4 插值示意圖
根據(jù)以上算法原理描述,可以看出本文算法較傳統(tǒng)插值算法,引入金字塔方向字典映射,在SR實際工作之前,獲得更準確的方向查詢模型,在SR實際工作中可得到更準確的紋理方向判定。較SREO,不但具有更多的紋理主方向,而且插值區(qū)域內(nèi)形成了多方向的方向簇,更符合自然圖像形成規(guī)律,而且運算復(fù)雜度較低。
以2倍SR為例,SREO對于每個IPM,索引矩陣的形成需要28個加法器,4個乘法器,1個求根處理和1個查表運算;查表之后的矩陣映射運算需要8個乘法器和4個加法器。平均求根和查表處理運算后,SREO共需要約50個乘法和32個加法。本文算法對于每個IPM,當具有紋理方向時,運算復(fù)雜度最高,方向判定階段最高需要約120個加法器,15個乘法器和1個查表運算;插值階段需要10個乘法器和5個加法器。平均查表處理運算后,本文共需要約50個乘法和32個加法,共需要40個乘法器和125個加法器??梢钥闯觯疚乃惴ǖ淖畲笥嬎懔颗cSREO基本持平,但是本文算法對于所有計算,均限制最大8比特精度,遠小于SREO的16比特精度,因此本文算法的計算復(fù)雜度較SREO更低。
本文根據(jù)圖像質(zhì)量和運算復(fù)雜度對算法進行測試,其中圖像質(zhì)量包括主客觀圖像質(zhì)量,客觀圖像質(zhì)量分為PSNR和SSIM;運算復(fù)雜度以運行時間(run time,UT)進行衡量。對比算法選取典型插值算法BC(bilinear interpolation)、典型深度學(xué)習(xí)算法RAISR(rapid and accurate image super resolution)[18]和SREO。SR倍數(shù)分別設(shè)置為2倍和4倍,運行平臺為Intel I5-6400 CPU@2.7 GHz-8 GB內(nèi)存-Win 7 64位系統(tǒng)。選取的測試序列為經(jīng)典測試序列和如圖5所示的實際采集到的測試序列。
實驗結(jié)果如表2所示。較BC,由于有了紋理的方向判定,圖像質(zhì)量更有大幅度提高,平均PSNR和SSIM分別提高1.4 dB和0.047;運算復(fù)雜度方面,本文算法雖然對紋理區(qū)域的方向判定消耗了大量的運算,但是平坦區(qū)域不需要方向判定且插值方法簡單,而且擬合插值算法較BC的3次運算也節(jié)省了大量的運算量,因此平均運算復(fù)雜度為BC的58.3%。
較RAISR,本文算法雖然PSNR和SSIM提高較小,但是算法運算量僅約為RAISR的2%。即無論在硬件系統(tǒng)還是軟件工程,RAISR目前是無法做到實時計算顯示的。且由于RAISR需要海量數(shù)據(jù)的存儲,也是不可工業(yè)化實現(xiàn)的。
Fig.5 Captured images sequence圖5 采集到的圖像序列
Table 2 Performance comparison among BC,RAISR,SREO and the proposal表2 BC、RAISR、SREO和本文算法的性能比較結(jié)果
較SREO,由于本文算法采用更高準確率的紋理方向判定與擬合插值算法,因此平均PSNR和SSIM分別提高0.73 dB和0.042;由于SREO的4倍SR較2倍SR矩陣浮點乘運算呈指數(shù)級增加,因此4倍SR時,本文算法運算量僅約為SREO的56.8%。
主觀圖像質(zhì)量對比如圖6所示,較BC和SREO,可以看出本文算法在紋理細節(jié)區(qū)域處理得更好,對于圖中頭發(fā)區(qū)域,本文算法的細節(jié)紋理更加豐富銳利。
針對SREO的問題,為了進一步提高重建圖像質(zhì)量,并且降低運算復(fù)雜度,提出了DDFI算法。DDFI首先采用金字塔紋理字典得到插值區(qū)域紋理主方向,然后根據(jù)IPM的位置矯正得到IP的紋理方向,最后采用單邊擬合的方向插值算法計算IP值。實驗結(jié)果顯示,與SREO相比,本文算法的PSNR和SSIM平均分別提高了0.73 dB和0.04,同時大幅度降低了運算復(fù)雜度。
Fig.6 Subjective image quality comparison among BC,RAISR,SREO and the proposal圖6 BC、RAISR、SREO和本文算法的主觀圖像質(zhì)量對比