專利名稱:圖像評價裝置、圖像評價方法、計算機可讀介質和計算機數據信號的制作方法
技術領域:
本發明涉及一種用于判斷輸入圖像的圖像質量的圖像評價裝置。具體地說,本發明涉及一種用于估計由JPEG造成的幾何失真的圖像評價裝置。
背景技術:
在經解碼的圖像數據中產生的圖像質量的劣化程度根據圖像數據的壓縮程度(如壓縮率、量化等級(quantization level)等)而變化。因此,可以根據壓縮程度來改變用于校正這種圖像質量的劣化的圖像處理。
當輸入圖像數據是編碼數據時,能夠根據該編碼數據中包含的編碼參數(如比例因數)來評價壓縮程度。然而,當輸入圖像數據不是編碼數據而是經解碼的圖像數據時,無法獲取編碼參數。
即使可以從編碼數據中獲取編碼參數,但是該編碼參數也不指示與在多個編碼處理中累積的圖像質量劣化相對應的壓縮程度,而是指示當對圖像數據進行了這樣的多個編碼處理時的最后一個編碼處理的壓縮程度。
為了解決這個問題,已經提出了一種根據圖像數據來估計由JPEG編碼處理引起的幾何失真的方法。具體地說,提出了一種用于檢測塊失真的技術,因為在幾何失真中塊失真在視覺上是顯著的,所以塊失真是個問題。
例如,日本專利申請公報JP2000-151418(美國2002/0097911A)和日本專利申請公報特開平8-79752提出了一種技術,在該技術中,獲取塊邊界部分中的像素之間的差的直方圖和塊邊界部分之外的區域中的相鄰像素之間的差的直方圖,以驗證這兩種直方圖之間的差。
具體地講,日本專利申請公報第2000-151418號(美國2002/0097911A)公開了一種驗證兩種直方圖之間的差的絕對值之和的方法。
日本專利申請公報特開平8-79752公開了一種驗證兩種直方圖的眾數(mode)之間的差的方法。
在這些技術中,針對整個圖像來獲取兩種差的直方圖,從而當兩種直方圖之間的差大時,判斷出塊失真大。即,把“相鄰像素之間沒有塊邊界的情況下的相鄰像素之間的差”視為背景信號,由此來判斷目標信號與背景信號是否明顯不同,其中,目標信號是“相鄰像素之間存在塊邊界的情況下的相鄰像素之間的差”。
當以這種方式來獲取觀察兩種直方圖之間的差時,會出現以下問題。
如果針對整個圖像獲取的兩種直方圖之間的差小,則不能充分地檢測到塊失真。具體地說,如果在該圖像中局部存在雜亂的部分,則塊失真隱藏在該雜亂的部分之后,從而減小了直方圖之間的差。
發明內容
考慮到以上情況作出了本發明,本發明提供了一種適當地評價為圖像數據執行的編碼處理的圖像評價裝置。
根據本發明的一方面,一種圖像評價裝置包括像素提取單元、對內差計算單元、對間差計算單元和評價單元。所述像素提取單元從輸入圖像中提取像素區域,所述像素區域包括(i)位于編碼塊的邊界位置處的塊邊界像素對和(ii)位于所述編碼塊的所述邊界位置之外的位置處的非塊邊界像素對。所述對內差計算單元計算所提取的塊邊界像素對之間的差作為第一差。所述對內差計算單元計算所提取的非塊邊界像素對之間的差作為第二差。所述對間差計算單元計算所述第一差和所述第二差之間的差作為所提取的像素區域的塊失真的量。所述評價單元根據計算出的所提取的像素區域的塊失真的量,評價所述輸入圖像的塊失真的量。
所述塊邊界像素對可跨相鄰編碼塊之間的邊界彼此相對。
另外,所述像素提取單元可提取包括所述一個塊邊界像素對和多個非塊邊界像素對的所述像素區域。所述對內差計算單元可計算各個提取的非塊邊界像素對之間的差。所述對內差計算單元可將計算出的所提取的非塊邊界像素對之間的差的平均值設定為所述第二差。
另外,所述像素提取單元可提取多個像素區域。所述對內差計算單元可針對各個提取的像素區域計算所述第一差和所述第二差。所述對間差計算單元可計算各個提取的像素區域的塊失真的量。所述評價單元可計算所提取的像素區域的塊失真的量的平均值,作為所述輸入圖像的塊失真的量。
另外,所述像素提取單元可提取多個像素區域。所述對內差計算單元可針對各個提取的像素區域計算所述第一差和所述第二差。所述對間差計算單元可計算各個提取的像素區域的塊失真的量。所述評價單元可用所提取的像素區域的塊失真的量的標準偏差除所提取的像素區域的塊失真的量的平均值,以獲得所述輸入圖像塊失真的量。
所述圖像評價裝置還可包括平坦像素區域判斷單元,該平坦像素區域判斷單元根據所述輸入圖像的灰度級變化的量,判斷所提取的像素區域是否包含邊緣。當所述平坦像素區域判斷單元判斷出所提取的像素區域不包含邊緣時,所述對內差計算單元可計算所述第一差和所述第二差。
另外,所述平坦像素區域判斷單元可利用所提取的像素區域中的最大像素值和最小像素值之間的差來判斷所提取的像素區域是否包含邊緣。
另外,所述塊邊界像素對可跨相鄰編碼塊之間的邊界彼此相對。所述平坦像素區域判斷單元可計算所述相鄰編碼塊之一中的所提取的像素區域中的最大像素值和最小像素值之間的差。所述平坦像素區域判斷單元可計算所述相鄰編碼塊的另一個中的所提取的像素區域中的最大像素值和最小像素值之間的差。所述平坦像素區域判斷單元可利用計算出的差中的最大差來判斷所提取的像素區域是否包含邊緣。
另外,所述塊邊界像素對可跨相鄰編碼塊之間的邊界彼此相對。所述平坦像素區域判斷單元可計算所述相鄰編碼塊之一中的所提取的像素區域中的最大像素值和最小像素值之間的差。所述平坦像素區域判斷單元可計算所述相鄰編碼塊的另一個中的所提取的像素區域中的最大像素值和最小像素值之間的差。所述平坦像素區域判斷單元可利用計算出的差的平均值來判斷所提取的像素區域是否包含邊緣。
另外,所述像素提取單元可按使所述塊邊界像素對之間的相對位置與所述非塊邊界像素對之間的相對位置相同的方式來提取所述像素區域。
另外,所述像素提取單元可按使所述塊邊界像素對之間的相對位置相對于所述非塊邊界像素對之間的相對位置旋轉至少90度的方式來提取所述像素區域。
另外,所述像素提取單元可提取包括四個像素的像素區域,所述四個像素由所述塊邊界像素對和在左右方向上或在上下方向上與所述塊邊界像素對相鄰的兩個像素構成。
另外,所述像素提取單元可提取包括所述塊邊界像素對的像素區域,所述塊邊界像素對在橫向方向上或縱向方向上排列。
另外,所述像素提取單元可從所述輸入圖像的一部分行或列中提取多個像素區域。
另外,所述像素提取單元可從所述輸入圖像的一部分塊邊界中提取多個像素區域。
根據本發明的另一方面,一種圖像評價裝置包括塊設定單元、差評價單元、控制單元和評價值產生單元。所述塊設定單元在輸入圖像中設定具有預定大小的塊。所述差評價單元基于所述塊設定單元所設定的所述塊,評價所述輸入圖像的灰度級差。所述控制單元控制所述塊設定單元和所述差評價單元,以針對大小不同或在圖像中的相位不同的多種類型的塊評價所述輸入圖像的灰度級差。所述評價值產生單元根據所述差評價單元針對各個所述多種類型的塊評價出的所述灰度級差來產生所述輸入圖像的評價值。
要注意的是,所述塊設定單元對塊的設定可包括假定塊劃分處理。對于塊的設定而言,將所述輸入圖像實際劃分成塊并不是必須包括的。
所述評價值產生單元可從針對各個所述多種類型的塊計算出的所述灰度級差之中選擇最大值作為所述輸入圖像的所述評價值。
另外,所述差評價單元可包括像素提取單元、對內差計算單元、對間差計算單元和評價單元。所述像素提取單元從輸入圖像中提取像素區域,所述像素區域包括(i)位于編碼塊的邊界位置處的塊邊界像素對和(ii)位于所述編碼塊的所述邊界位置之外的位置處的非塊邊界像素對。所述對內差計算單元計算所提取的塊邊界像素對之間的差作為第一差。所述對內差計算單元還計算所提取的非塊邊界像素對之間的差作為第二差。所述對間差計算單元計算所述第一差和所述第二差之間的差作為所提取的像素區域的塊失真的量。所述評價單元根據計算出的所提取的像素區域的塊失真的量,評價所述輸入圖像的塊失真的量。所述評價值產生單元基于所述塊失真的量產生所述輸入圖像的所述評價值。
根據本發明的又一方面,一種圖像評價方法包括從輸入圖像中提取像素區域,所述像素區域包括(i)位于編碼塊的邊界位置處的塊邊界像素對和(ii)位于所述編碼塊的所述邊界位置之外的位置處的非塊邊界像素對;計算所提取的塊邊界像素對之間的差作為第一差;計算所提取的非塊邊界像素對之間的差作為第二差;計算所述第一差和所述第二差之間的差作為所提取的像素區域的塊失真的量;以及根據計算出的所提取的像素區域的塊失真的量,評價所述輸入圖像的塊失真的量。
根據本發明的又一方面,一種計算機可讀介質存儲有使計算機執行評價輸入圖像的塊失真的量的處理的程序。所述處理包括從輸入圖像中提取像素區域,所述像素區域包括(i)位于編碼塊的邊界位置處的塊邊界像素對和(ii)位于所述編碼塊的所述邊界位置之外的位置處的非塊邊界像素對;計算所提取的塊邊界像素對之間的差作為第一差;計算所提取的非塊邊界像素對之間的差作為第二差;計算所述第一差和所述第二差之間的差作為所提取的像素區域的塊失真的量;以及根據計算出的所提取的像素區域的塊失真的量,評價所述輸入圖像的塊失真的量。
根據以上述結構,可以對應用于圖像數據的編碼處理進行適當的評價。
將根據附圖詳細描述本發明的實施例,在附圖中圖1是示出了應用了根據本發明示例性實施例的圖像評價方法、以控制器20為其中心的圖像處理裝置2的硬件結構的圖;圖2是示出了控制器20(圖3)所執行的圖像處理程序5的功能結構的圖;圖3A和圖3B是示出了所提取的像素區域的圖;圖4是示出了在輸入圖像中提取的具有32×32像素的像素區域的示例的圖;圖5是圖像處理過程的流程圖;圖6是示出了根據示例性實施例的圖像評價處理的實驗結果的圖表;圖7是平坦區域中的標準偏差的圖表;圖8A和圖8B是示出了變型例1的實驗結果的圖表;圖9A和圖9B是示出了僅沿一個方向分別提取的提取像素區域的圖;圖10A和圖10B是示出了在僅橫向提取像素的情況下實驗結果的圖表;圖11A和圖11B是示出了分別以預定間隔取樣的所提取的像素區域的圖;圖12A至圖12C是示出了在行取樣的情況下的實驗結果的圖表;圖13A和圖13B是示出了在塊取樣的情況下的實驗結果的圖表;圖14A至圖14F是示出了變型例3中的塊邊界像素對和非塊邊界像素對的圖;圖15A至圖15C是解釋變型例4中的判斷平坦區域的方法的圖;圖16是例示了對其進行了剪取(clipping)的圖像的圖;圖17是例示了其中塊邊界位置僅在橫向方向上移動的圖像的圖;圖18是例示了其中塊邊界位置在橫向方向上和縱向方向上都移動的圖像的圖;圖19是解釋通過改變移動來計算塊失真的方法的圖;
圖20是示出了與變型例5相關的實驗結果的圖表;圖21是示出了變型例5的圖像處理裝置2的功能結構的圖;以及圖22是變型例5的圖像處理裝置2的操作的流程圖。
具體實施例方式
本發明的示例性實施例的圖像處理裝置2不產生相鄰像素之間的差的直方圖。在根據示例性實施例的圖像處理裝置2中,把“相鄰像素之間存在塊邊界的情況下的相鄰像素之間的差”視為目標信號,而把“相鄰像素之間不存在塊邊界的情況下的相鄰像素之間的差”視為背景信號。另外,該示例性實施例將從其獲取了背景信號的像素位置和從其獲取了目標信號的像素位置限定為彼此靠近的位置。
以這種方式利用彼此靠近的像素之間的差使得可以利用“目標信號和背景信號彼此緊密相關”的特性,由此使得可以以較高的精度來估計塊失真。
另外,已經出現了關于以下事實的各種報告在普通圖像中相鄰像素的像素值彼此緊密相關。例如,在Hajime Enomoto的“Image InformationProcessing”(Corona出版公司,1984,第一版,第五次印刷,第64頁)中描述了圖像的自相關函數。當參照自相關函數的曲線時,證實了相鄰像素之間的相關性高。還可以想到的是,因為像素值之間的相關性高,所以像素值之間的差彼此緊密相關。
更具體地講,圖像處理裝置2執行下面的處理。提取塊邊界中的兩個像素(即,塊邊界像素對),并計算這兩個像素之間的差。然后,把靠近所提取的像素但是位于塊邊界之外的區域中的兩個像素視為非塊邊界像素對。提取一個這樣的非塊邊界像素對或多個這樣的非塊邊界像素對,并計算每對非塊邊界像素之間的差。
然后,計算非塊邊界像素對之間的差的平均值。然后,計算塊邊界像素對之間的差與非塊邊界像素對之間的差的平均值之間的差。最后,把所述差的絕對值的平均值視為塊失真。
另外,為了計算平均值,獲得塊邊界像素對和非塊邊界像素對之中的最大像素值和最小像素值,并計算最大像素值和最小像素值之間的差。當最大像素值和最小像素值之間的差大時,圖像區域被判斷為隨機圖像區域。不使用這種圖像區域來計算失真(計算平均值)。
首先將描述根據本示例性實施例的圖像處理裝置2(圖像評價裝置)的硬件結構。
圖1是示出了應用了根據本發明示例性實施例的圖像評價方法、以控制器20為其中心的圖像處理裝置2的硬件結構的圖。
如圖1所示,圖像處理裝置2包括控制器20、通信裝置220、存儲裝置240和用戶接口裝置(UI裝置)230。控制器20包括CPU212和存儲器214。存儲裝置240包括硬盤(HDD)和CD裝置。UI裝置230包括LCD顯示裝置或CRT顯示裝置、以及鍵盤或觸摸板。
例如,圖像處理裝置2設置在打印機10的內部。圖像處理裝置2通過通信裝置220或存儲裝置240獲取圖像數據,并基于所獲取的圖像數據對編碼處理所引起的圖像質量的劣化進行校正。
圖2是示出了由控制器20(圖3)執行的圖像處理程序5的功能結構的圖。
如圖2所示,圖像處理程序5包括圖像評價單元500和圖像校正單元600。圖像評價單元500執行根據本發明的示例性實施例的圖像評價方法。圖像校正單元600基于圖像評價單元500作出的評價結果來校正圖像數據。
圖像評價單元500包括像素對提取部510、平坦區域判斷部520、塊邊界差獲取部530、非塊邊界差獲取部540、提取區域失真計算部550和總圖像失真計算部560。
當一圖像是輸入到像素對提取部510的輸入圖像數據時,像素對提取部510將該輸入圖像數據劃分為多個8×8像素塊,并從所劃分的像素塊中提取塊邊界像素對和非塊邊界像素對。
例如,如圖3A所示,像素對提取部510將輸入圖像劃分為多個8×8像素塊,并從各自具有所劃分的8×8像素塊的相鄰塊中提取8對塊邊界像素。
如圖3B所示,這個示例的像素對提取部510從相鄰的兩個塊中提取了4個像素a、b、c和d作為一個塊邊界像素對和多個非塊邊界像素對。即,像素對提取部510同時提取所述塊邊界像素對和所述非塊邊界像素對。在圖3B示出的示例中,所述塊邊界像素對由像素b和c構成。一個非塊邊界像素對由像素a和b構成。另一非塊邊界像素對由像素c和d構成。像素b和c跨該相鄰兩個塊之間的邊界彼此相對。另一方面,在像素a和b之間或在像素c和d之間沒有邊界。
圖4示出了在輸入圖像的大小為32×32的情況下提取的塊邊界像素對和非塊邊界像素對。當輸入圖像的大小為32×32時,提取圖4中示出的像素區域。
另外,不需要一次性地提取像素區域。為了進行處理,可以一次提取如圖3B所示的四個像素a、b、c和d。在完成了提取這四個像素的處理之后,可以執行提取下四個像素的處理。
為了便于描述,將各包含四個像素的像素區域按I(I=1,2 ,…,MaxI)進行編號。把各四像素區域視為所提取的像素區域I。在下面的描述中,a、b、c和d表示像素a、b、c和d的像素值。設E(I)為所提取的像素區域I的塊失真的量。下面將描述獲得E(I)的方法。
平坦區域判斷部520(圖2)根據下面的表達式計算所提取的像素區域I的平坦度H(I)H(I)=max(a,b,c,d)-min(a,b,c,d)其中,max(x0,x1,...)是用于計算x0,x1,...中最大值的函數,min(x0,x1,...)是用于計算x0,x1,...中最小值的函數。
塊邊界差獲取部530(圖2)根據下面的表達式計算塊邊界差B(I)B(I)=abs(b-c)其中,abs(x)是用于計算x的絕對值的函數。
非塊邊界差獲取部540根據下面的表達式計算非塊邊界像素對之間的差N(I)。
N(I)={abs(a-b)+abs(c-d)}/2換言之,N(I)是用于計算在所提取的像素區域I中的非塊邊界像素對之間的差的絕對值的平均值的函數。
提取區域失真計算部550根據下面的表達式計算所提取區域I的塊失真E(I)。
E(I)=B(I)一N(I)總圖像失真計算部560根據下面的表達式計算整個圖像的塊失真BNBN=mean(E)/std(E)其中,mean(E)是用于計算E(I)的平均值的函數,std(E)是用于計算E(I)的標準偏差的函數。
預先準備閾值TH1。總圖像失真計算部560選擇平坦度H(I)小于閾值TH1的提取區域I,并利用所選擇的提取區域I來計算平均值(mean(E))和標準偏差(std(E))。這樣做的目的是僅針對平坦區域計算塊失真。
按圖5中示出的流程圖來執行圖像評價單元500的操作。在圖5中,sqrt(x)是用于獲得x的平方根的函數。
在步驟S101中,初始化變量。具體地講,NumI=0,I=1,S=0和S2=0。NumI表示平坦度H(I)小于TH1的塊的數量。附標I表示所提取的像素區域。S表示塊失真的量。S2表示S的平方和。然后,像素對提取部510提取像素區域I,平坦區域判斷部520基于所提取的像素區域I計算H(I)(步驟S102)。總圖像失真計算部560確定平坦區域判斷部520計算出的H(I)是否小于TH1(步驟S103)。如果總圖像失真計算部560確定H(I)小于TH1(在步驟S103中為是),則總圖像失真計算部560使NumI遞增1,按上述方式計算E(I),并將E(I)加到S,還將E(I)×E(I)加到S2(步驟S104)。如果總圖像失真計算部560確定H(I)等于或大于TH1(在步驟S103中為否),則處理跳到步驟S105。在步驟S105,總圖像失真計算部560使I遞增1。然后,總圖像失真計算部560確定I是否等于MaxI(步驟S106)。如果總圖像失真計算部560確定I不等于MaxI,即,小于MaxI(在步驟S106中為否),則處理返回到步驟S102。如果總圖像失真計算部560確定I等于MaxI(在步驟S106中為是),則總圖像失真計算部560通過將S除以NumI來計算mean(E)(即,E(I)的平均值),并通過利用下面的表達式來計算std(E)(即,E(I)的標準偏差)std(E)=S2NumI-(mean(E))2]]>然后,總圖像失真計算部560通過將mean(E)除以std(E)來計算整個圖像的塊失真BN(步驟S107)。
如果在所有區域I中H(I)≥TH1(即,NumI=0),則圖像評價單元500判定無法獲得輸入圖像數據的塊失真BN。
以下將描述圖像處理裝置2進行的圖像評價處理的實驗結果。
在該實驗中使用了三十三個圖像(第1至第33)。
當從視覺上檢查實驗圖像第1至第33時,圖像第15和第16的塊失真看起來小于其他圖像的塊失真。
因此,如果圖像處理裝置2所執行的圖像評價處理檢測到圖像第15和第16的塊失真小,則圖像評價處理操作工作良好。
圖6是示出了圖像處理裝置2從圖像第1至第33中檢測到的塊失真的圖表。
從圖6中顯而易見,圖像第15和第16的塊失真明顯小于其他圖像的塊失真。這與基于人眼觀察的評價結果相符。即,顯而易見的是,根據本示例性實施例的圖像處理裝置2可以適當地評價塊失真。
在以上的示例性實施例中,以用E(I)的標準偏差(std(E))除E(I)的平均值(mean(E))的方式來計算輸入圖像數據的塊失真的量BN。用E(I)的標準偏差除E(I)的平均值的原因在于將E(I)的平均值歸一化。即,在E(I)變化幅度大的圖像中,可以認為mean(E)的值并不重要。另一方面,在E(I)變化幅度小的圖像中,可以認為mean(E)的值是重要的。
然而,在如示例性實施例所述的僅對平坦像素區域執行輸入圖像數據的塊失真的量BN的計算的情況下,如圖7所示,標準偏差的值根據圖像變化很小。因此可以得出用std(E)除mean(E)的必要性低。
因此,在變型例1中,如下計算整個圖像的塊失真的量。
BN=mean(E)圖8A和圖8B是將按BN=mean(E)/std(E)計算的塊失真的量與按BN=mean(E)計算的塊失真的量進行比較的圖表。圖8A示出了按BN=mean(E)/std(E)計算的結果。圖8B示出了按BN=mean(E)計算的結果。
參照圖8A和圖8B顯而易見的是,即使使用BN=mean(E)時也可獲得幾乎相同的結果。
盡管示例性實施例已經示出了如圖4所示地提取塊邊界像素的所有對的情況,但是沒有必要提取塊邊界像素的所有對。
例如,在變型例2中,像素對提取部510僅提取橫向像素對,如圖9A所示。即,變型例2的像素對提取部510提取這樣的像素區域I,即,各像素區域I包含相鄰兩個塊之間的邊界并具有排列在同一行的像素。
圖10示出了在這種情況下的實驗結果。圖10A示出了示例性實施例的變型例2的實驗結果(即,與圖6相同的圖)。參照圖10A顯而易見的是,即使僅使用橫向像素對,也可以以足夠的精度來檢測塊失真。
另外,如圖9B所示,像素對提取部510可以僅提取縱向像素對。即,像素對提取部510可提取這樣的像素區域I,即,各像素區域I包含相鄰兩個塊之間的邊界并具有排列在同一列的像素。圖10B示出了示例性實施例的變型例2的另一實驗結果(即,與圖6相同的圖)。參照圖10B顯而易見的是,即使僅使用橫向像素對,也可以以足夠的精度來檢測塊失真。
如圖11A所示,像素對提取部510可以提取像素對(像素區域I),從而以若干行為間隔對像素對(像素區域I)進行取樣。假定像素對提取部510以Nr行為間隔對像素對(像素區域I)進行取樣,圖11A等價于像素對提取部510僅橫向地對像素對(像素區域I)進行取樣并且Nr等于2的情況。
圖12A至圖12C示出了在這種情況下的實驗結果。圖12A等價于像素對提取部510提取所有橫向像素對(像素區域I)的情況。圖12B等價于像素對提取部510以兩個像素為間隔對橫向像素對(像素區域I)進行取樣的情況。圖12C等價于像素對提取部510以四個像素為間隔對橫向像素對(像素區域I)進行取樣的情況。
從圖12A至圖12C所示的圖表可以顯見,雖然對行進行了取樣,但性能劣化很小。
像素對提取部510可以如圖11B所示那樣對處理塊進行取樣。具體地講,像素對提取部510可以僅對Nb×Nb個塊中的一個塊進行取樣。另外,圖11B等價于像素對提取部510執行橫向取樣、Nr等于4且Nb等于2的情況。
圖13A和圖13B示出了在這種情況下的試驗結果。圖13A等價于按照Nr=2且Nb=1來進行取樣(即,不是對每個塊都進行取樣)的情況。圖13B等價于按照Nr=4且Nb=2來進行取樣的情況。
從圖13A和圖13B所示的圖表可以顯見,雖然對塊進行了取樣,但性能劣化很小。
盡管示例性實施例已經示出了提取圖3B所示的像素a、b、c和d作為塊邊界像素對和非塊邊界像素對(像素區域I)的情況,但非塊邊界像素對的圖案并不限于該示例性實施例。以下將描述與塊邊界像素對b和c相對應的非塊邊界像素對的另一圖案。
如圖14A所示,像素對提取部510可以使用像素a和b作為非塊邊界像素對。換言之,像素對提取部510可以提取包括一對塊邊界像素(像素b和c)和一對非塊邊界像素(像素a和b)的像素區域。在這種情況下,不需要獲取非塊邊界像素之間的差的平均值。
如圖14B所示,像素對提取部510可以使用像素a和d作為非塊邊界像素對。所述非塊邊界像素對不是必需包含像素b。換言之,像素對提取部510可以提取包括一對塊邊界像素(像素b和c)和一對非塊邊界像素(像素a和d)的像素區域。盡管圖14B示出了像素d和b彼此并不相鄰的情況,但是這些像素可以彼此相鄰。在那樣的情況下,像素對提取部510不將像素d和b的對當作非塊邊界像素對。
如圖14C所示,像素對提取部510可以提取多個非塊邊界像素對(像素a1和d1的對以及像素a2和d2的對),所述多個非塊邊界像素對與塊邊界像素對(像素b和c的對)分立。換言之,像素對提取部510可以提取包括一對塊邊界像素和與所述一對塊邊界像素分立的多個非塊邊界像素對的像素區域。如圖14D所示,像素對提取部510可以將像素a至e(包括像素a至e的像素區域)視為包括三對非塊邊界像素“a和d”、“d和e”以及“e和b”的像素區域。
如圖14E所示,像素對提取部510可以分別從不同的行提取塊邊界像素對和非塊邊界像素對。換言之,像素對提取部510可以提取包括不同行的多個像素的像素區域。在這種情況下,所述塊邊界像素對之間的相對位置關系與所述非塊邊界像素對之間的相對位置關系相同。例如,如圖14E所示,由于像素b和c彼此橫向相鄰,所以像素a和d彼此橫向相鄰。
作為另一選擇,如圖14F所示,像素對(例如,像素b和c)之間的相對位置關系可以相對于其他像素對(例如,像素a和d)之間的相對位置關系旋轉90度。
在所述示例性實施例中,平坦區域判斷部520將所提取的像素區域I中的最大像素值和最小像素值之間的差設定為H(I)。
然而,可以使用另一方法作為判斷平坦區域(非邊緣區域)的方法。例如,可將具有非塊邊界像素對的區域中的最大像素值和最小像素值之間的差設定為H(I)。
在圖15A所示的情況下,如下獲得H(I)。
H(I)=max(a1,d1,a2,d2)-min(a1,d1,a2,d2)平坦區域判斷部520可以計算包含在單個塊中的像素區域中的最大像素值和最小像素值之間的差作為H(I)。由于兩個塊與邊界相鄰,所以可以計算最大像素值和最小像素值之間的兩種差。可以將這兩種差中最大值設定為H(I)。
例如,在圖15B所示的情況下,如下獲得H(I)。
H(I)=max[{max(a1,d1)-min(a1,d1)},{max(a2,d2)-min(a2,d2)}]=max{abs(a1-d1),abs(a2-d2)}作為另一選擇,在圖15C所示的情況下,如下獲得H(I)。
H(I)=max[{max(a,b)-min(a,b)},{max(c,d)-min(c,d)}]=max{abs(a-b),abs(c-d)}作為另一選擇,H(I)可以不是差的最大值,而像下面一樣是差的平均值。
H(I)={max(a,b)-min(a,b)},{max(c,d)-min(c,d)}/2={abs(a-b),abs(c-d)}/2作為另一選擇,可以將在所提取的像素區域I中的像素值的方差或標準偏差設定為H(I)。
在以上的示例性實施例和該示例性實施例的變型例中,根據已知JPEG編碼處理的塊位置這一假定,計算以每個具有8像素×8像素的塊為單位的失真程度作為塊失真的量。
在變型例5中,將給出對以下方法的描述,該方法用于在未知JPEG編碼處理的塊位置的情況下計算塊失真的量同時檢測8×8塊的邊界位置。
在未知塊位置的情況下的示例包括如圖16所示地執行剪取處理的情況、以及執行旋轉處理的情況。
圖17是例示了其中編碼處理的塊在橫向方向上移動的圖像的圖。首先,將給出對如圖17所示的塊邊界在橫向方向上移動的情況的描述。
如所述示例性實施例和該示例性實施例的變型例中所描述的,圖像處理裝置2基于在塊邊界上沿橫向方向排列的四個像素(a、b、c、d)之間的灰度級差(gradation difference)來計算塊失真(例如,各相鄰像素對之間的差的絕對值或像素區域的塊失真的量,所述像素區域包括四個像素(a、b、c、d)并包括塊邊界)。因此,塊位置沿圖像縱向方向的移動基本上不影響對塊失真的量的計算。例如,如圖17所示,即使沿縱向方向移動了塊位置,用于計算的四個像素的位置也僅在縱向方向上移動,并且仍然包括塊邊界。因此,通常可以檢測到塊失真。
圖18例示了編碼處理的塊也在橫向方向移動的圖像。接下來,將對如圖1 8所示的塊邊界在橫向方向移動的情況給出描述。在這種情況下,沿橫向方向排列的四個像素(a、b、c、d)可能不包括塊邊界。因此,不能根據上述方法計算塊失真。
例如,如圖18所示,在塊位置沿橫向方向移動的情況下,用于計算的四個像素也在橫向方向上移動,不能檢測塊邊界中的灰度級差。
變型例5的圖像處理裝置2具有圖21所示的結構。圖21類似于圖1,但其差別在于,在圖21中示出了CPU 212的具體部件。CPU 212包括塊設置單元212a、差評價單元212b、控制單元212c和評價值產生單元212d。控制單元212c控制塊設置單元212a、差評價單元212b和評價值產生單元212d。
變型例5的圖像處理裝置2計算圖像的多種類型的塊(其相位或大小不同)的塊失真的量。然后,圖像處理裝置2根據計算出的多個塊失真的量,評價輸入圖像的塊失真的量。在這個示例中,圖像處理裝置2在沿橫向方向移動起始位置(總共8個位置)的同時的計算塊失真的量,并采用最大值。
例如,如圖19所示,差評價單元212b計算各提取像素區域I的塊失真E(I,1)。然后,差評價單元212b基于塊失真E(I,1)通過在示例性實施例中描述的方法計算整個圖像F的塊失真的量BN(F,1)。差評價單元212b存儲所計算出的整個圖像F的塊失真的量BN(F,1)。在圖像F中,編碼處理的塊位置未知。這時,如圖18所示,不能計算塊邊界。即使在此情況下,圖像處理裝置2也不在意。
然后,如圖19所示,塊設置單元212a將塊失真計算的起始點沿向右的方向移動一個像素。然后,差評價單元212b計算各提取像素區域I的塊失真E(I,2)。差評價單元212b以相似的方式來計算并存儲整個圖像F的塊失真的量BN(F,2)。隨后,圖像處理裝置2在塊設置單元212a將起始位置沿向右的方向逐個像素地移動的同時來計算整個圖像F的塊失真的量B(N,i)。
這樣,本變型例的圖像處理裝置2在將起始位置逐個像素地移動的同時總共計算8次整個圖像F的塊失真的量BN(F,i)(i=1,2,...8)。這里,將這樣計算的BN(F,i)的最大值表示為BN(F)。評價值產生單元212d判斷塊邊界位于給出最大值BN(F)的位置。
接著,將描述之所以將用多個相位計算出的塊失真的量的最大值用作輸入圖像的塊失真的量的原因。這里,術語“相位”定義如下。假定假想正弦曲線具有為一個周期的塊尺寸(在本示例性實施例中,該塊尺寸等于8)。要注意的是,不考慮假想正弦波的幅度。由于假想正弦波的周期等于塊尺寸(例如8塊),所以如果“相位”改變,則假想正弦波的位置改變。此外,假定塊的位置和假想正弦波的位置是固定的。這時,可用“相位”表示各塊的位置。另外,可用“相位”表示塊失真計算的起始位置的位移。例如,如果位移等于塊尺寸(即8塊),則“相位”等于2n弧度。另外,如果位移等于塊尺寸的一半(即4塊),則“相位”等于n弧度。
首先,顯而易見的是,如果在將起始位置逐個像素地移動的同時計算塊失真的量(總共8個),則計算出的塊失真的量中的任何一個應該與真正的塊失真的量相匹配。另外,如示例性實施例和示例性實施例的變型例中所描述的,當比較不同的圖像時,當塊失真的量較大時,JPEG塊失真就較大。另外,JPEG塊失真之外的因素很少會引起以8個像素間隔出現的大邊界差的塊失真的量。從這些特征可以推出,如果計算出的八個值中的最大值大于特定等級,則該最大值就被認為是塊失真的量。另外,如果計算出的八個值中的最大值小于特定等級,則難以精確地判斷這個最大值是否是塊失真的量。然而,即使這個最大值被用作塊失真的量,因為該最大值相對較小,所以也不會出現問題。因此,如果不管計算出的八個值中的最大值的大小是多少,都將該最大值用作塊失真的量,則將不會出現問題。
按三個像素對在變型例5的示例中使用的33個圖像各自周圍的邊緣圖像進行剪取。然后,通過采用最大值的上述方法來計算塊失真的量。然后,如圖20所示,計算的塊失真的量在剪取的情況和非剪取的情況之間沒有大的差別。
可以根據總共八個位置計算塊失真的量的事實意味著可以同時指定塊失真的邊界位置。因此,圖像處理裝置2通過計算多個相位的塊失真的量并將計算出的塊失真的量相互比較,可以估計編碼處理的塊邊界位置。
另外,如上所述,塊失真的量是特征值,其在高壓縮的JPEG圖像中取大值。因此,最大值在根據八個位置計算出的八個值中通常很突出。另一方面,如果八個值中的最大值不突出,則存在這樣的可能該最大值是根據圖像的結構而不是塊失真的量而偶然獲得的值。因此,圖像處理裝置2可以計算多個相位的塊失真的量,并將塊失真的量相互比較,然后判斷是否有必要去除塊失真。
另外,在與編碼處理的塊相對應的圖像區域的大小由于圖像的放大或縮小而改變的情況下,圖像處理裝置2計算具有多個大小的塊的塊失真的量,并將塊失真的量相互比較,由此計算真正的塊失真的量。
將參照圖22所示的流程圖描述變型例5的圖像處理裝置2的操作。
在步驟S201,對變量進行初始化。具體地說,I=1,i=1,NumI=0,S=0以及S2=0。要注意的是,附標“I”和附標“i”是不同的變量。NumI表示塊的數量,其具有小于TH1的平坦度H(I,i)。附標I表示所提取的像素區域。附標“i”表示塊失真計算的起始點。S表示塊失真的量。S2表示S的平方和。然后,差評價單元212b從起始點i提取像素區域I,并基于所提取的像素區域I計算H(I,i)(步驟S202)。差評價單元212b確定H(I,i)是否小于TH1(步驟S203)。如果差評價單元212b確定了H(I,i)小于TH1(在步驟S203中為是),則差評價單元212b使NumI增加1,按上述方式計算E(I,i),將E(I,i)加到S,并且還將E(I,i)×E(I,i)加到S2(步驟S204)。如果差評價單元212b確定出H(I,i)等于或大于TH1(在步驟S203中為否),則處理跳到步驟S205。在步驟S205,差評價單元212b使I增加1。然后,差評價單元212b確定I是否等于MaxI(步驟S206)。如果差評價單元212b確定出I不等于MaxI,即,小于MaxI(在步驟S206中為否),則處理返回到步驟S202。如果差評價單元212b確定出I等于MaxI(在步驟S206中為是),則差評價單元212b通過將S除以NumI來計算mean(E,i)(即,E(I,i)的平均值),并通過利用下面的表達式來計算std(E,i)(即,E(I,i)的標準偏差)std(E,i)=S2NumI-(mean(E,i))2]]>然后,評價值產生單元212d通過將mean(E,i)除以std(E,i)來計算整個圖像的塊失真BN(F,i)(步驟S207)。
如果在所有區域I中H(I,i)≥TH1(即,NumI=0),則控制單元212c判定無法獲得塊失真BN(F,i)。
然后,差評價單元212b確定附標i是否等于Maxi(步驟S208)。如果差評價單元212b確定了附標i小于Maxi(在步驟S208中為否),則塊設置單元212a更新變量(步驟S209)。具體地說,塊設置單元212a使附標i增加1。并重置附標I、NumI、S和S2(即,設置I=1,NumI=0,S=0以及S2=0)。然后,處理返回到步驟S202,并且在塊失真計算的起始點如圖19所示地沿向右的方向移動一個像素時,重復步驟S202至S208。
如果差評價單元212b確定出附標i等于Maxi(在步驟S208中為是),則評價值產生單元212d從BN(F,i)(i=1至Maxi)中選擇最大值BN(F),作為整個圖像F的塊失真的量(步驟S210)。
應該注意的是,平坦區域判斷部520對示例性實施例來說不是必需的。
盡管示例性實施例已經示出了總圖像失真計算部560計算E(I)的平均值的情況,但是總圖像失真計算部560也可以計算E(I)的中間值、E(I)的眾數或E(I)的和(僅當圖像的大小恒定并且沒有進行平坦像素區域判斷時才能獲取該和),而不是E(I)的平均值。
出于例示和說明的目的,已經提供了本發明的示例性實施例的以上描述。這并不意圖窮舉或將本發明限制為所公開的精確形式。明顯的是,對本領域的技術人員來說很多修改和變型將是明顯的。選擇并描述了示例性實施例以最好地解釋本發明的原理及其實際應用,從而使本領域的其他技術人員可以針對適于所構想的具體用途的各種實施例和各種變型例來理解本發明。本發明的范圍旨在由下面的權利要求及其等同物限定。
權利要求
1.一種圖像評價裝置,該裝置包括像素提取單元,從輸入圖像中提取像素區域,所述像素區域包括(i)位于編碼塊的邊界位置處的塊邊界像素對和(ii)位于所述編碼塊的所述邊界位置之外的位置處的非塊邊界像素對;對內差計算單元,計算所提取的塊邊界像素對之間的差作為第一差,所述對內差計算單元還計算所提取的非塊邊界像素對之間的差作為第二差;對間差計算單元,計算所述第一差和所述第二差之間的差作為所提取的像素區域的塊失真的量;和評價單元,根據計算出的所提取的像素區域的塊失真的量,評價所述輸入圖像的塊失真的量。
2.根據權利要求1所述的裝置,其中,所述塊邊界像素對跨相鄰編碼塊之間的邊界彼此相對。
3.根據權利要求1所述的裝置,其中所述像素提取單元提取包括所述一個塊邊界像素對和所述多個非塊邊界像素對的所述像素區域,所述對內差計算單元計算各個提取的非塊邊界像素對之間的差,以及所述對內差計算單元將計算出的所提取的非塊邊界像素對之間的差的平均值設定為所述第二差。
4.根據權利要求1所述的裝置,其中所述像素提取單元提取多個像素區域,所述對內差計算單元針對各個提取的像素區域計算所述第一差和所述第二差,所述對間差計算單元計算各個提取的像素區域的塊失真的量,以及所述評價單元計算所提取的像素區域的塊失真的量的平均值,作為所述輸入圖像的塊失真的量。
5.根據權利要求1所述的裝置,其中所述像素提取單元提取多個像素區域,所述對內差計算單元針對各個提取的像素區域計算所述第一差和所述第二差,所述對間差計算單元計算各個提取的像素區域的塊失真的量,以及所述評價單元用所提取的像素區域的塊失真的量的標準偏差除所提取的像素區域的塊失真的量的平均值,以獲得所述輸入圖像的塊失真的量。
6.根據權利要求1所述的裝置,該裝置還包括平坦像素區域判斷單元,根據所述輸入圖像的灰度級變化的量,判斷所提取的像素區域是否包含邊緣,其中當所述平坦像素區域判斷單元判斷出所提取的像素區域不包含邊緣時,所述對內差計算單元計算所述第一差和所述第二差。
7.根據權利要求6所述的裝置,其中,所述平坦像素區域判斷單元利用所提取的像素區域中的最大像素值和最小像素值之間的差來判斷所提取的像素區域是否包含邊緣。
8.根據權利要求6所述的裝置,其中所述塊邊界像素對跨相鄰編碼塊之間的邊界彼此相對,所述平坦像素區域判斷單元計算所述相鄰編碼塊之一中的所提取的像素區域中的最大像素值和最小像素值之間的差,所述平坦像素區域判斷單元計算所述相鄰編碼塊的另一個中的所提取的像素區域中的最大像素值和最小像素值之間的差,以及所述平坦像素區域判斷單元利用計算出的差中的最大差來判斷所提取的像素區域是否包含邊緣。
9.根據權利要求6所述的裝置,其中所述塊邊界像素對跨相鄰編碼塊之間的邊界彼此相對,所述平坦像素區域判斷單元計算所述相鄰編碼塊之一中的所提取的像素區域中的最大像素值和最小像素值之間的差,所述平坦像素區域判斷單元計算所述相鄰編碼塊的另一個中的所提取的像素區域中的最大像素值和最小像素值之間的差,以及所述平坦像素區域判斷單元利用計算出的差的平均值來判斷所提取的像素區域是否包含邊緣。
10.根據權利要求1所述的裝置,其中,所述像素提取單元以使所述塊邊界像素對之間的相對位置與所述非塊邊界像素對之間的相對位置相同的方式來提取所述像素區域。
11.根據權利要求1所述的裝置,其中,所述像素提取單元以使所述塊邊界像素對之間的相對位置相對于所述非塊邊界像素對之間的相對位置旋轉至少90度的方式來提取所述像素區域。
12.根據權利要求1所述的裝置,其中,所述像素提取單元提取包括四個像素的像素區域,所述四個像素由所述塊邊界像素對和在左右方向上或在上下方向上與所述塊邊界像素對相鄰的兩個像素構成。
13.根據權利要求1所述的裝置,其中,所述像素提取單元提取包括所述塊邊界像素對的像素區域,所述塊邊界像素對在橫向方向上或縱向方向上排列。
14.根據權利要求1所述的裝置,其中,所述像素提取單元從所述輸入圖像的一部分行或列中提取多個像素區域。
15.根據權利要求1所述的裝置,其中,所述像素提取單元從所述輸入圖像的一部分塊邊界中提取多個像素區域。
16.一種圖像評價裝置,該裝置包括塊設定單元,在輸入圖像中設定具有預定大小的塊;差評價單元,基于所述塊設定單元所設定的所述塊,評價所述輸入圖像的灰度級差;控制單元,控制所述塊設定單元和所述差評價單元,以針對大小不同或在圖像中的相位不同的多種類型的塊評價所述輸入圖像的灰度級差;和評價值產生單元,根據所述差評價單元針對各個所述多種類型的塊評價出的所述灰度級差來產生所述輸入圖像的評價值。
17.根據權利要求16所述的裝置,其中,所述評價值產生單元從針對各個所述多種類型的塊計算出的多個所述灰度級差之中選擇最大值作為所述輸入圖像的所述評價值。
18.根據權利要求16所述的裝置,其中所述差評價單元包括像素提取單元,從輸入圖像中提取像素區域,所述像素區域包括(i)位于編碼塊的邊界位置處的塊邊界像素對和(ii)位于所述編碼塊的所述邊界位置之外的位置處的非塊邊界像素對;對內差計算單元,計算所提取的塊邊界像素對之間的差作為第一差,所述對內差計算單元還計算所提取的非塊邊界像素對之間的差作為第二差;對間差計算單元,計算所述第一差和所述第二差之間的差作為所提取的像素區域的塊失真的量;和評價單元,根據計算出的所提取的像素區域的塊失真的量,評價所述輸入圖像的塊失真的量,以及所述評價值產生單元基于所述塊失真的量產生所述輸入圖像的所述評價值。
19.一種圖像評價方法,該方法包括從輸入圖像中提取像素區域,所述像素區域包括(i)位于編碼塊的邊界位置處的塊邊界像素對和(ii)位于所述編碼塊的所述邊界位置之外的位置處的非塊邊界像素對;計算所提取的塊邊界像素對之間的差作為第一差;計算所提取的非塊邊界像素對之間的差作為第二差;計算所述第一差和所述第二差之間的差作為所提取的像素區域的塊失真的量;以及根據計算出的所提取的像素區域的塊失真的量,評價所述輸入圖像的塊失真的量。
20.一種計算機可讀介質,其存儲有使計算機執行評價輸入圖像的塊失真的量的處理的程序,所述處理包括從輸入圖像中提取像素區域,所述像素區域包括(i)位于編碼塊的邊界位置處的塊邊界像素對和(ii)位于所述編碼塊的所述邊界位置之外的位置處的非塊邊界像素對;計算所提取的塊邊界像素對之間的差作為第一差;計算所提取的非塊邊界像素對之間的差作為第二差;計算所述第一差和所述第二差之間的差作為所提取的像素區域的塊失真的量;以及根據計算出的所提取的像素區域的塊失真的量,評價所述輸入圖像的塊失真的量。
全文摘要
本發明提供了圖像評價裝置、圖像評價方法、計算機可讀介質和計算機數據信號。該圖像評價裝置包括像素提取單元、對內差計算單元、對間差計算單元和評價單元。像素提取單元從輸入圖像中提取包括位于編碼塊的邊界位置處的塊邊界像素對和位于所述邊界位置之外的位置處的非塊邊界像素對的像素區域。對內差計算單元計算所提取的塊邊界像素對之間的差作為第一差,并且計算所提取的非塊邊界像素對之間的差作為第二差。對間差計算單元計算第一差和第二差之間的差作為所提取的像素區域的塊失真的量。評價單元根據計算出的所提取的像素區域的塊失真的量,評價輸入圖像的塊失真的量。
文檔編號H04N7/30GK101014079SQ20061016703
公開日2007年8月8日 申請日期2006年12月13日 優先權日2005年12月16日
發明者木村俊一 申請人:富士施樂株式會社