王震 杜進楷 寇宏玉 陳世國
關(guān)鍵詞: Otsu閾值分割; 邊緣插值; 插值算法; 圖像質(zhì)量; 視頻監(jiān)控; 目標(biāo)檢測
中圖分類號: TN911.73?34; TP391.41 ? ? ? ? ? 文獻標(biāo)識碼: A ? ? ? ? ? ? ? ? ? 文章編號: 1004?373X(2019)02?0071?04
A fast edge image interpolation algorithm based on Otsu threshold segmentation
WANG Zhen, DU Jinkai, KOU Hongyu, CHEN Shiguo
(School of Physics and Electronic Science, Guizhou Normal University, Guiyang 550025, China)
Abstract: A fast edge image interpolation algorithm based on Otsu threshold segmentation is proposed in this paper to meet the requirements of high image quality and low algorithm complexity during the process of video monitoring, and target detection and recognition, and improve detail fuzziness and saw?tooth effect during the traditional image interpolation. The Otsu algorithm is used to determine the segmentation threshold according to the maximum class variance between the target region and background region. The bilinear interpolation is conducted for the non?edge area. The multi?direction characteristic for the local structure of six or eight adjacent downsampling pixels around the point under interpolation is used for the edge area, so as to self?adaptively estimate high resolution pixel values. The experimental results show that the algorithm has low computational complexity, can well retain the image edge, and obtain high resolution images with good visual quality.
Keywords: Otsu threshold segmentation; edge interpolation; interpolation algorithm; image quality; video monitoring; target detection
目前,在大部分實時視頻監(jiān)控系統(tǒng)中,普遍存在攝像頭分辨率不高,獲取的監(jiān)控圖像分辨率低,導(dǎo)致目標(biāo)識別和檢測的準確率下降。為了獲取高分辨率圖像,又不增加硬件成本的,有效方式是通過圖像插值技術(shù)來提高圖像的分辨率[1]。傳統(tǒng)圖像插值算法有最近鄰插值、雙線性插值、雙立方插值[2?4],該類算法計算復(fù)雜度較低,但插值后圖像邊緣會產(chǎn)生邊緣模糊和鋸齒效應(yīng)。
針對傳統(tǒng)插值算法的不足,各類邊緣圖像插值算法相繼被提出。文獻[5]提出了一種新的邊緣插值算法(New Edge?Directed Interpolation, NEDI),利用低分辨率圖像中局部的協(xié)方差與高分辨率圖像的對偶關(guān)系來實現(xiàn)高分辨率圖像的插值。該算法能獲得視覺效果較好的高分辨率圖像,但計算復(fù)雜度高,不能達到快速插值的目的。為此文獻[6]提出了快速的邊緣圖像插值算法。文獻[7]提出了基于閾值控制的邊緣自適應(yīng)快速圖像插值算法(Fast Self?Adaptive Edge?Oriented Interpolation Based on Threshold Method,F(xiàn)EOI)。該方法利用待插值像素[3×3]鄰域內(nèi)水平方向、垂直方向、對角方向兩像素差值與自設(shè)閾值比較,對圖像進行區(qū)域劃分,對不同區(qū)域進行相應(yīng)的插值,非邊緣區(qū)域進行雙線性插值,對邊緣區(qū)域利用各方向最大相關(guān)性進行插值。圖像的邊緣模糊和鋸齒現(xiàn)象得到了一定改善,計算復(fù)雜度也較低;但對邊緣與非邊緣區(qū)域劃分采用的是自設(shè)閾值,若對所處理圖像都采用同一閾值,導(dǎo)致圖像區(qū)域劃分不準確,從而影響圖像插值效果;若對每一類圖像都通過試驗來找到最優(yōu)分割閾值,會降低處理效率,不能滿足大批量處理圖像的實時性要求。
本文提出基于Otsu(最大類間方差法)閾值分割的邊緣圖像快速插值算法。通過Otsu閾值分割法[8],能夠快速獲取最優(yōu)分割閾值,劃分圖像區(qū)域,然后利用與其相鄰的6個或8個降采樣像素點的多方向最大相關(guān)性來估計高分辨率像素。該算法保持了圖像邊緣,降低了運算復(fù)雜度,減少了誤差累積,提高了運算效率。
1.1 Otsu閾值分割法
1.1.1 ?Otsu閾值分割法的閾值確定
Otsu閾值分割法是以圖像的灰度直方圖為依據(jù),選取閾值是以目標(biāo)區(qū)域與背景區(qū)域平均灰度的最大類間方差為基準[9]。其基本思想如下:假設(shè)圖像的灰度為[i]的像素數(shù)為[ni],灰度范圍為[[0,L-1]],可記為[G={0,1,2,…,L-1}],總像素數(shù)為[N]:
[N=i=0L-1ni] (1)
各灰度值出現(xiàn)的概率為:
[pi=niN] (2)
對于[pi],有:
[i=0L-1pi=1] (3)
將圖像中像素用閾值[T]分成兩類[C0]和[C1],[C0]由灰度值在[[0,T-1]]的像素組成,[C1]由灰度值在[[T,L-1]]的像素組成,則區(qū)域[C0]和[C1]的概率分別為:
[p0=i=0T-1pi] (4)
[p1=i=TL-1pi] (5)
區(qū)域[C0]和[C1]的平均灰度分別為:
[μ0=1p0i=0T-1ipi] (6)
[μ1=1p1i=TL-1ipi] (7)
整幅圖像的平均灰度值為:
[μ=i=0T-1ipi+i=TL-1ipi=p0μ0+p1μ1] (8)
兩個區(qū)域的總方差為:
[σ2B=p0(μ0-μ)2+p1(μ1-μ)2=p0p1(μ0-μ1)2] (9)
讓[T]在[[0,L-1]]范圍內(nèi)依次取值,使[σ2B]最大時,被認為是兩區(qū)域最佳分割狀態(tài),由此確定分割閾值:
[T=argmaxT∈G[σ2B]] (10)
1.1.2 ?Otsu閾值分割法的邊緣區(qū)域確定
根據(jù)Otsu閾值分割法處理圖像找到其最優(yōu)分割閾值,將其與待插值像素點鄰域6個或8個原已知像素點的平均灰度值做比較來確定為非邊緣區(qū)域和邊緣區(qū)域,針對不同的區(qū)域采用不同的插值算法,這樣既能夠保證圖像放大的質(zhì)量要求,也能降低計算復(fù)雜度。
為了快速對圖像區(qū)域進行確定,假設(shè)[M×N]低分辨率圖像[X]由[2M×2N]高分辨率圖像[Y]降采樣得到,即[Y(2i,2j)=X(i,j)],考慮到待插像素點的不同位置關(guān)系,將其分為三類,如圖1所示,即[Y(2i+1,2j+1)],[Y(2i,2j+1)],[Y(2i+1,2j)]。首先對圖1a)所示待插像素進行邊緣與非邊緣的確定:利用Otsu閾值分割找到最優(yōu)分割閾值[T],記[a],[b],[c],[d],[e],[f],[g],[h]為3[×]3鄰域上各點的灰度值,平均灰度值記為[E],則待插像素[Y(2i+1,2j+1)]局部平均灰度值為[(a+b+c+d+e+f+g+h)8],如果平均灰度值小于[T],則[Y(2i+1,2j+1)]確定為非邊緣區(qū)域,否則為邊緣區(qū)域。圖1b)、圖1c)這兩類待插值像素點的邊緣區(qū)域確定與圖1a)類似。
1.2 ?邊緣區(qū)域插值算法
記[p]為[Y(2i+1,2j+1)]的灰度值。采用[p]周圍3[×]3鄰域內(nèi)8個低分辨率近鄰像素如圖2所示。計算4個方向上的像素差值,分別用[d1],[d2],[d3],[d4]表示,找出其中最小值[dmin],即確定待插值像素的邊緣方向。然后對該方向上的兩個像素進行加權(quán)計算得到待插值點的像素值。
過程如下:記8個低分辨率像素的灰度值分別為[a~h],有:
[d10=a-c; ? d11=d-f; ? ?d1=a-c+d-f2;] [d20=a-g,d21=b-h;][d2=a-g+b-h2;][d3=b-d;d4=a-e;][dmin=Min(d1,d2,d3,d4)]
如果[dmin=d1],則[p=d1min(d10,d11)],若[d1min=d10],則[p=aa+c·a+ca+c·c];若[d1min=d11],則[p=dd+f·d+fd+f·f];如果[dmin=d2],則[p=d2min=(d20,d21)],若[d2min=d20],則[p=aa+g·a+ga+g·g];若[d2min=d21],則[p=bb+h·b+hb+h·h];如果[dmin=d3],則[p=bb+d·b+db+d·d];如果[dmin=d4],則[p=aa+e·a+ea+e·e]。
對邊緣區(qū)域為[Y(2i,2j+1)]進行插值,記[q]為[Y(2i,2j+1)]的灰度值。采用[q]周圍[2×3]鄰域內(nèi)6個低分辨率近鄰像素如圖3所示,計算4個方向上的像素差值,分別用[f1],[f2],[f3],[f4]表示,找出其中最小值[fmin],即確定待插值像素的邊緣方向。然后對該方向上的兩個像素進行加權(quán)計算得到待插值點的像素值。
過程如下:記6個低分辨率像素的灰度值分別為[a~f],有:
[f10=a-c;f11=d-f;][f1=(a-c+d-f)2;][f2=b-e;f3=c-d;f4=a-f;fmin=Min(f1,f2,f3,f4)]
如果[fmin=f1],則[q=f1min(f10,f11)],若[f1min=f10],則[q=aa+c·a+ca+c·c];若[f1min=f11],則[q=dd+f·d+fd+f·f];如果[fmin=f2],則[q=bb+e·b+eb+e·e];如果[fmin=f3],則[q=cc+d·c+dc+d·d];如果[fmin=f4],則[q=aa+f·a+fa+f·f]。
同理,對邊緣像素[Y(2i+1,2j)]的插值方法類似于邊緣像素[Y(2i,2j+1)]。
1.3 ?圖像插值算法實現(xiàn)步驟
插值算法步驟如圖4所示。
從標(biāo)準圖庫中選取3幅灰度圖作為測試圖像,通過實驗來驗證算法的有效性。實驗時將待測試圖像進行降采樣處理([256×256-128×128])。對降采樣圖像進行插值復(fù)原,非邊緣區(qū)域進行雙線性插值[10],邊緣區(qū)域按第1.2節(jié)算法進行插值。為了進行對比驗證,分別采用Otsu分割閾值與自設(shè)閾值對圖像區(qū)域劃分;分別采用雙線性插值、NEDI插值、FEOI插值對邊緣區(qū)域插值,結(jié)果分別如圖5和圖6所示。實驗環(huán)境是計算機Intel Core i5 CPU 2.5 GHz,內(nèi)存4 GB,雙線性插值和Otsu閾值分割采用Matlab R2010b自帶庫函數(shù)編程, NEDI插值采用文獻[5]作者在其學(xué)術(shù)主頁上公布的Matlab代碼, FEOI插值和本文算法則在Matlab R2010b上編程。
從圖5可以看出,針對某一圖像的最優(yōu)分割閾值(自設(shè)閾值)并不能適用于所有圖像,不能很好劃分圖像區(qū)域,尤其是圖像紋理比較復(fù)雜的;而Otsu閾值分割能根據(jù)不同圖像的特征自適應(yīng)確定最優(yōu)分割閾值,能較準確劃分圖像區(qū)域,且計算簡單,能快速實現(xiàn)。
從圖6可以看出,雙線性插值的圖像存在邊緣模糊和鋸齒現(xiàn)象,而NEDI插值和FEOI插值有了顯著改善;本文插值算法也沒有出現(xiàn)明顯鋸齒和模糊現(xiàn)象,圖像邊緣和紋理特征得到了較好保持,視覺效果也較好。
為了客觀評價文中算法的優(yōu)越性,給出了不同插值方法的峰值信噪比(PSNR)和計算時間,如表1和表2所示。峰值信噪比反映插值圖像與原圖像的相似程度,PSNR越大說明圖像質(zhì)量越好;計算時間反映處理圖像的運算速度。
從表1可以看出,本文算法的PSNR值高于雙線性插值和FEOI插值,略微低于NEDI插值。從表2可知本文算法計算時間低于NEDI插值和FEOI插值。結(jié)果表明,本文算法能夠在保證圖像質(zhì)量情況下,有效提高插值效率,滿足實時性需求。
本文提出的基于Otsu閾值分割的邊緣快速圖像插值算法有兩個優(yōu)勢:第一,Otsu閾值分割的方法能夠根據(jù)圖像自身的結(jié)構(gòu)特征來自動快速確定圖像的最佳閾值。既能保證圖像的質(zhì)量,又能滿足圖像處理的實時性要求,且獲得該閾值的方法計算簡單,能夠解決固定閾值不能根據(jù)不同圖像自適應(yīng)調(diào)整圖像區(qū)域劃分的局限性;第二,對待插像素點根據(jù)其各方向的邊緣信息特征以及近鄰的6個或8個低分辨率像素估計高分辨率像素,能進一步減少誤差的產(chǎn)生和誤差累積,計算復(fù)雜度也較低。本文插值算法在保證圖像質(zhì)量的同時,能夠快速地實現(xiàn)圖像的插值復(fù)原,大大提高圖像的處理效率。
參考文獻
[1] SAJJAD M, EJAZ N, BAIK S W. Multi?kernel based adaptive interpolation for image super?resolution [J]. Multimedia tools and applications, 2014, 72(3): 2063?2085.
[2] 金海丁,周孝寬.數(shù)字圖像自適應(yīng)插值法[J].激光與紅外,2006,36(9):907?910.
JIN Haiding, ZHOU Xiaokuan. Self?adaptive interpolation algorithm for digital image [J]. Laser & infrared, 2006, 36(9): 907?910.
[3] KEYS R G. Cubic convolution interpolation for digital image processing [J]. IEEE transactions on acoustics, speech and signal processing, 1981, 29(6): 1153?1160.
[4] 李春龍,潘海俠,王華峰.自適應(yīng)立方卷積圖像插值算法[J].北京航空航天大學(xué)學(xué)報,2014,40(10):1463?1468.
LI Chunlong, PAN Haixia, WANG Huafeng. Adaptive cubic convolution based image interpolation approach [J]. Journal of Beijing University of Aeronautics and Astronautics, 2014, 40(10): 1463?1468.
[5] LI X, ORCHARD M T. New edge?directed interpolation [J]. IEEE transactions on image processing, 2001, 10(10): 1521?1527.
[6] CHEN Meijuan, HUANG Chinhui, LEE Wenli. A fast edge?oriented algorithm for image interpolation [J]. Image and vision computing, 2005, 23(9): 791?798.
[7] 吳錫生,黨向盈,趙勇.基于閾值控制的邊緣自適應(yīng)快速圖像插值算法[J].計算機工程,2007,33(22):226?228.
WU Xisheng, DANG Xiangying, ZHAO Yong. Fast self?adaptive edge?oriented interpolation based on threshold method [J]. Computer engineering, 2007, 33(22): 226?228.
[8] OTSU N. A threshold selection method from gray?level histograms [J]. IEEE transactions on systems, man and cybernetics, 1979, 9(1): 62?66.
[9] 張錚.精通Matlab數(shù)字圖像處理與識別[M].北京:人民郵電出版社,2013.
ZHANG Zheng. Proficient in Matlab digital image processing and recognition [M]. Beijing: Posts & Telecom Press, 2013.
[10] TIAN Qichong, WEN Hao, ZHOU Chenhui, et al. A fast edge?directed interpolation algorithm [C]// Proceedings of the 19th International Conference on Neural Information Processing. Berlin: Springer, 2012: 398?405.