專利名稱:自適應量化控制器及其方法
技術(shù)領(lǐng)域:
本發(fā)明的范例性實施例一般涉及一種自適應量化控制器及其方法,特別是涉及一種執(zhí)行運動預測的自適應量化控制器及其方法。
背景技術(shù):
在運動圖像專家組(MPEG)-2、MPEG-4和H.264標準中,輸入圖像或幀可以被劃分為多個亮度塊和“宏塊”。所述宏塊和亮度塊當中的每個可以具有相同數(shù)量的像素(例如,用于亮度塊的8×8像素和用于宏塊的16×16像素等)。以亮度塊為單位執(zhí)行包括運動估計和運動補償?shù)倪\動預測??梢砸云渲械拿總€塊都具有相同數(shù)量像素(例如,8×8像素)的多個塊的單位執(zhí)行離散余弦變換(DCT)和量化,對輸入的圖像或幀進行變長編碼以便于視頻編碼處理。
傳統(tǒng)的使用MPEG-2、MPEG-4和/或H.264標準的運動圖像編碼器可以對輸入的圖像或幀執(zhí)行解碼處理以產(chǎn)生解碼的宏塊。解碼后的宏塊可以被存儲在存儲器中并用于編碼后續(xù)幀。
為了在帶寬限制系統(tǒng)中促進(faciliate)數(shù)據(jù)流的視頻,可以經(jīng)過有限的傳輸信道傳輸由編碼格式(例如,MPEG-2、MPEG-4、H.264等)確定的給定量的視頻數(shù)據(jù)。例如,MPEG-2運動圖像編碼器使用自適應量化控制處理,在該處理中,可以將量化參數(shù)或量化級別可以提供給運動圖像編碼器的量化器??梢曰谒鲞\動圖像編碼器輸出緩沖器的狀態(tài)控制所提供的量化參數(shù)/級別(level)。由于可以在視頻特征(例如,涉及在視頻幀內(nèi)時間和空間相關(guān)的活動)的基礎(chǔ)上計算所述量化參數(shù),所以,可以降低輸出緩沖器的位使用率。
傳統(tǒng)的MPEG-2運動圖像編碼器可以支持三種輸入幀的編碼模式。這三種編碼模式可以包括幀內(nèi)編碼(I)幀、預測編碼(P)幀和雙向預測編碼(B)幀??梢曰诋斍拜斎霂械男畔⒕幋a所述I幀,基于時間在前I幀或P幀的運動預測來編碼所述P幀,和基于在前I幀或P幀或后續(xù)幀I(例如,下一個幀)或P幀的運動預測來編碼所述B幀。
通常,可以對P幀或B幀執(zhí)行運動估計并可以使用運動矢量編碼經(jīng)過運動補償?shù)臄?shù)據(jù)。但是,I幀可以不被運動估計以及I幀內(nèi)的數(shù)據(jù)可以被編碼。
因此,在傳統(tǒng)的自適應量化控制方法中,可以基于是當前輸入幀和運動補償數(shù)據(jù)之間的差值的預測誤差或者基于用于預測誤差的DCT系數(shù)來執(zhí)行用于P幀和B幀的活動性計算(activity computation)??梢詫幀的數(shù)據(jù)執(zhí)行用于I幀的活動性計算。
因此,可以使用運動估計基于一個或多個時間和空間相關(guān)性執(zhí)行I幀前或后相鄰的P幀和B幀的活動性計算,但是,用于I幀的活動性計算可以只以空間相關(guān)性、而不以時間相關(guān)性為基礎(chǔ)。這樣,在所述I幀中的自適應量化控制可能具有比所述I幀的相鄰幀(例如,相鄰幀,例如在前幀或下一幀)更低的自適應量化效率和在用于包括在所述I幀中的多個塊的量化系數(shù)之間的時間連續(xù)性可能被間斷,從而導致可視質(zhì)量的降低。由于人的眼睛對于靜態(tài)區(qū)域(例如,具有很小運動的部分)更加敏感,所以,如果多個輸入幀都包括很小的運動(例如,當比特率減小時),那么,上述視頻質(zhì)量的降低可能會變成非常明顯的問題。此外,由于與所述I幀相鄰的幀使用該I幀作為運動估計的參考幀,所以,該I幀的可視質(zhì)量也可能降低,從而使視頻質(zhì)量的降低可能與所述I幀的頻率相互關(guān)聯(lián)起來。
發(fā)明內(nèi)容
本發(fā)明的范例性實施例提供了一種自適應量化控制器,包括預測誤差產(chǎn)生單元,用于在參考幀的基礎(chǔ)上對包括在輸入幀內(nèi)的至少一個幀執(zhí)行運動預測并產(chǎn)生預測誤差,所述預測誤差是所述輸入幀和所述參考幀之間的差值;活動性計算單元,用于在所接收的宏塊的基礎(chǔ)上輸出活動性值,所接收的宏塊與輸入幀和所述預測誤差之一相關(guān);和量化參數(shù)產(chǎn)生單元,用于通過將參考量化參數(shù)乘以所輸出活動性值的歸一化值而產(chǎn)生量化參數(shù)。
本發(fā)明的另一個范例性實施例提供了一種自適應量化控制的方法,包括在參考幀的基礎(chǔ)上對包括在輸入幀中的至少一個幀執(zhí)行運動預測,產(chǎn)生預測誤差,該預測誤差是所述輸入幀和所述參考幀之間的差值;基于所接收的宏塊計算活動性值,所接收的宏塊與輸入幀和所述預測誤差之一相關(guān);和通過將參考量化參數(shù)乘以所計算的活動性值的歸一化值而產(chǎn)生量化參數(shù)。
本發(fā)明的再一范例性實施例提供了一種自適應量化控制的方法,包括接收包括I幀的輸入幀并基于從一個或多個在前輸入幀提取的至少部分信息來執(zhí)行用于I幀的運動預測。
包括附圖以提供對本發(fā)明的進一步理解,附圖被插入并作為說明書的一部分。所述附圖示出了本發(fā)明的范例性實施例,并與說明書一起來解釋本發(fā)明的原理。
圖1的框圖示出了根據(jù)本發(fā)明范例性實施例的用于運動圖像編碼器的自適應量化控制器;圖2示出了根據(jù)本發(fā)明另一范例性實施例的活動性計算單元;圖3的框圖示出了根據(jù)本發(fā)明另一范例性實施例的運動圖像編碼器的另一個自適應量化控制器;圖4的流程示出了根據(jù)本發(fā)明另一范例性實施例的用于運動圖像編碼器的自適應量化控制處理;圖5示出了根據(jù)本發(fā)明另一范例性實施例的活動性值計算的流程圖;圖6的曲線示出了傳統(tǒng)的峰值信噪比(PSNR)曲線和根據(jù)本發(fā)明范例性
具體實施例方式
下面將詳細地說明本發(fā)明的范例性實施例。但是,為簡便描述本發(fā)明的范例性實施例,這里所披露的特定結(jié)構(gòu)和功能僅僅是代表性的。本發(fā)明的范例性實施例可以多種不同形式實施,并不受這些實施例的限制。
因此,在本發(fā)明的范例性實施例可以被作出各種修改和具有其它形式的同時,借助于在附圖中舉例的方式示出了本發(fā)明的特定實施例并在這里予以詳細的說明。但是應當理解,這里并不試圖將所述范例性實施例限制到所描述的特定形式,相反,本發(fā)明的范例性實施例將覆蓋落入本發(fā)明精神和范圍內(nèi)的所有修改、等同和變化。在整個說明中,相同的數(shù)字可以指代相同的元件。
應當理解,盡管在這里可以使用術(shù)語第一、第二等描述各種元件,但這些元件不受這些術(shù)語的限制。這些術(shù)語只被用于元件之間的彼此區(qū)分。例如,第一元件也可以被稱之為第二元件,類似的,第二元件也可以被稱之為第一元件,不會脫離本發(fā)明的范圍。如這里所使用的,術(shù)語“和/或”包括相關(guān)列表項的一個或多個的任一和全部組合。
應當理解,當一個元件被稱作“連接到”或“耦合到”另一元件時,它可以是被直接連接到或耦合到另一個元件或者是存在介入元件。相反,當一個元件被稱作“直接連接到”或“直接耦合到”另一元件時,則不存在所述介入元件。應當用相同的方式來解釋用于描述元件之間關(guān)系的其它用語(即,“在...之間”和“直接在...之間”,“相鄰”和“直接相鄰”等)。
這里所使用的術(shù)語學僅僅是為了說明本發(fā)明的特定實施例而不是試圖限制本發(fā)明的范例性實施例。如這里所使用的,單數(shù)形式“一”、“一個”和“該”試圖包括復數(shù)形式,除非上下文清楚地指出相反的情況。還應當理解,這里所使用的術(shù)語“包含”、“包含有”、“包括”和/或“包括有”規(guī)定狀態(tài)特征、總體、步驟、操作、元件和/或構(gòu)件的存在,但并不排除附加的一個或多個其它特征、總體、步驟、操作、元件、構(gòu)件和/或它們組合的存在。
除非有相反的規(guī)定,這里所使用的所有術(shù)語(包括技術(shù)的和科學的術(shù)語)都具有本領(lǐng)域普通技術(shù)人員所公共理解的相同含義。應當理解,諸如在公共詞典中定義的術(shù)語應當被解釋為具有與相關(guān)技術(shù)上下文中所具有含義相同的含義,而不被理想化或過度形式化地加以解釋,除非這里有明白的規(guī)定。
圖1的框圖示出了根據(jù)本發(fā)明范例性實施例的用于運動圖像編碼器的自適應量化控制器100。參看圖1,自適應量化控制器100可以包括預測誤差產(chǎn)生單元105、宏塊類型判定單元110、開關(guān)115、活動性計算單元120和量化參數(shù)產(chǎn)生單元130。
在圖1的范例性實施例中,預測誤差產(chǎn)生單元105可以在參考幀REF_F的基礎(chǔ)上對輸入幀IN_F執(zhí)行運動預測(例如,運動估計和運動補償)。預測誤差產(chǎn)生單元105可以產(chǎn)生預測誤差RE。所述預測誤差PE可以表示輸入幀IN_F和經(jīng)過運動補償?shù)膸?例如,參考幀REF_F)之間的差。
在圖1所示的范例性實施例中,輸入幀IN_F可以是當前的“原始”幀(例如,未經(jīng)運動補償?shù)膸?。該輸入幀IN_F可以包括基于運動圖像編碼器的編碼模式的I幀、P幀和B幀。參考幀REF_F可以被存儲在運動圖像編碼器的幀存儲器中。
在圖1所示的范例性實施例中,由于I幀可以表示編碼數(shù)據(jù),所以,對于I幀的參考幀是先前(例如,在前)P幀或I幀的原始幀(例如,未經(jīng)運動補償?shù)膸??;蛘?,所述參考幀可以是先前(例如,在前)P幀或I幀的一個未經(jīng)運動補償?shù)膸?例如,或者被稱為“重構(gòu)”幀)。用于P幀的參考幀可以是先前(例如,在前)P幀或I幀的經(jīng)運動補償?shù)膸?,而用于B幀的參考幀可以是先前P幀或I幀和/或隨后的(例如,下一個)P幀或I幀的經(jīng)過運動補償?shù)膸?br>
在圖1所示的范例性實施例中,預測誤差產(chǎn)生單元105可以包括運動估計處理器(未示出)、運動補償處理器(未示出)和減法器(未示出)。所述運動估計處理器可以基于存儲在所述幀存儲器中的參考幀REF_F和輸入幀IN_F執(zhí)行運動估計并輸出運動矢量。在一個例子中,在I幀、P幀和B幀的運動估計中所使用的參考塊是給定像素格柵大小(例如,16×16、4×4、4×8、8×4、8×8、8×16、16×8等)的宏塊。所述運動補償處理器可以在所述運動矢量的基礎(chǔ)上從存儲在幀存儲器中的參考幀中讀出經(jīng)過運動補償?shù)膸?。所述減法器可以從輸入幀IN_F中減去經(jīng)過運動補償?shù)膸琑EF_F并可以產(chǎn)生所述預測誤差PE。
在圖1所示的范例性實施例中,宏塊類型判定單元110可以響應輸入幀IN_F和預測誤差PE而輸出用于表示宏塊類型是幀間宏塊(例如,或者非幀內(nèi)宏塊)還是幀內(nèi)宏塊的宏塊類型信息MT。
在圖1所示的范例性實施例中,開關(guān)115可以響應所述宏塊類型信息MT向活動性計算單元120輸出所述預測誤差PE或輸入幀IN_F之一。例如,如果宏塊類型信息MT表示幀間宏塊類型,則開關(guān)115可以輸出預測誤差PE,以及如果所述宏塊類型信息MT表示幀內(nèi)宏塊類型,則開關(guān)115可以以宏塊為單位輸出所述輸入幀IN_F。在另一個實施例中,可以將所述預測誤差PE和輸入幀IN_F作為幀輸出。
在圖1所示的范例性實施例中,活動性計算單元120可以從開關(guān)115接收宏塊(例如,預測誤差PE的幀間宏塊、輸入幀IN_F的幀內(nèi)宏塊),可以執(zhí)行活動性計算并可以輸出宏塊j的時間和空間活動性值actj。
圖2示出了根據(jù)本發(fā)明另一范例性實施例的圖1所示的活動性計算單元120。在圖2所示的范例性實施例中,活動性計算單元120可以包括預測誤差/偏差加法單元122、比較單元124和加法單元126。
在圖2所示的范例性實施例中,如果開關(guān)115輸出預測誤差PE的幀間宏塊,那么,預測誤差/偏差加法單元122可以對預測誤差PE的幀間宏塊執(zhí)行操作,其中,包括在預測誤差PE的幀間宏塊內(nèi)的預測誤差值Ekn的絕對值可以被相加到一起。該加法的結(jié)果可以被輸出以作為等式1所示的亮度子塊值(例如,具有8×8像素大小)sblknsblkn=Σk=164|Ekn|]]>等式1其中,Ekn可以表示在第n個8×8預測視頻塊中的預測誤差值,而n可以是正整數(shù)(例如,1,2,3,4等)。在等式1中,假設(shè)所述亮度子塊值sblkn可以對應于8×8像素格柵(grid)(例如,由于64可以被表示為8乘以8)。但是,應當理解,另外的范例性實施例也可以利用其它的像素格柵,因此,等式1中所示的值是按照比例設(shè)定(scale)的。
在圖2所示的范例性實施例中,如果開關(guān)115輸出輸入幀IN_F的幀內(nèi)宏塊,那么,預測誤差/偏差加法單元122對輸入幀IN_F的的幀內(nèi)宏塊執(zhí)行操作,其中,通過從包括在所述輸入幀IN_F的幀內(nèi)宏塊內(nèi)的取樣值(例如,像素值)Pkn中減去平均取樣值P_meann獲得的偏差值的絕對值可以被相加到一起。相加的結(jié)果可以被作為等式2所示的亮度子塊值(例如,具有8×8像素大小)sblkn輸出sblkn=Σk=164|Pkn-P_meann|]]>等式2其中,p_meann=164×ΣK=164Pkn]]>等式3
其中,Pkn可以表示在第n個8×8原始視頻塊中的取樣值,P_meann可以表示第n個取樣值的平均值,而n可以是正整數(shù)(例如,1,2,3,4等)。在等式2中,假設(shè)所述亮度子塊值sblkn對應于8×8像素格柵(例如,由于64可以被表示為8乘以8)。但是,應當理解,另外的范例性實施例可以應用到其它的像素大小,因此,在等式2中示出的值是按照比例設(shè)定的。
在圖2所示的范例性實施例中,比較單元124可以比較子塊值sblk1、sblk2、sblk3和sblk4并可以輸出具有最低值的子塊值。加法單元126可以增加(例如加1)比較后子塊值的所述最低值并可以輸出活動性值actj。因此,由計算單元124和加法單元126執(zhí)行的上述操作可以由下述等式4來表示actj=1+min(sblk1,sblk2,sblk3,and sblk4) 等式4回到圖1所示的范例性實施例,量化參數(shù)產(chǎn)生單元130可以將參考量化參數(shù)Qj乘以活動性值actj的歸一化值N_actj,由此以產(chǎn)生自適應量化值或量化參數(shù)MQj。可以基于運動圖象編碼器的輸出緩沖器被填充的程度(例如,空,填充其容量填滿的40%等)確定參考量化參數(shù)Qj。例如,如果從輸出緩沖器產(chǎn)生的位的數(shù)量大于閾值,則所述參考量化參數(shù)Qj可以增加,以及如果從所述輸出緩沖器產(chǎn)生的位的數(shù)量不大于閾值,則所述參考量化參數(shù)Qj可以減小。量化參數(shù)MQj可以是用于I幀、P幀和B幀的最佳量化參數(shù)并可以被提供給運動圖像編碼器的量化器。這樣,可以減少所述輸出緩沖器的位使用(例如,與I幀有關(guān)的位使用)。所述量化器可以響應量化參數(shù)MQj來量化從運動圖像編碼器的離散余弦變換器中輸出的DCT系數(shù),并可以輸出量化系數(shù)。
在圖1所示的范例性實施例中,量化參數(shù)產(chǎn)生單元130可以如下輸出量化參數(shù)MQjN_actj=2*actj+mean_actjactj+2*meanj-actj]]>等式5其中,N_actj可以表示歸一化的活動性,mean_actj可以表示活動性的平均值。然后,參數(shù)N_actj可以被乘以Qj以獲得等式6表示的MQjMQj=Qj*N_actj]]>等式6圖3的框圖示出了根據(jù)本發(fā)明另一范例性實施例的運動圖像編碼器的自適應量化控制器300。在圖3的范例性實施例中,自適應量化控制器300可以包括預測誤差產(chǎn)生單元305、宏快類型判定單元310、開關(guān)315、活動性計算單元320、量化參數(shù)產(chǎn)生單元330、DCT類型判定單元340和DCT單元350。
此外,在圖3的范例性實施例中,預測誤差產(chǎn)生單元305、宏塊類型判定單元310、開關(guān)315和量化參數(shù)產(chǎn)生單元330的結(jié)構(gòu)配置和操作可以分別和圖1所示的預測誤差產(chǎn)生單元105、宏塊類型判定單元110、開關(guān)115和量化參數(shù)才產(chǎn)生單元130的結(jié)構(gòu)配置和操作相同,因此,為簡便起見而不再描述。
在圖3的范例性實施例中,DCT類型判定單元340可以輸出DCT類型信息DT,該信息表示是對從開關(guān)315接收的預測誤差PE的幀間宏塊還是對從開關(guān)315接收的輸入幀IN_F的幀內(nèi)宏塊執(zhí)行DCT,使其成為幀結(jié)構(gòu)或場結(jié)構(gòu)。
在圖3的范例性實施例中,所述DCT單元350以具有給定像素格柵大小(例如,8×8像素)的塊為單位對預測誤差PE的幀間宏塊或輸入幀IN_F的幀內(nèi)宏塊執(zhí)行與所述DCT類型信息DT相對應的DCT,并可以輸出所產(chǎn)生的DCT系數(shù)。
在圖3的范例性實施例中,DCT系數(shù)可以被傳送給活動性計算單元320。如上所述,活動性計算單元320可以包括與圖1所示范例性實施例的活動性計算單元120類似的結(jié)構(gòu)組件(例如,預測誤差/偏差加法單元122、比較單元124和加法單元126)。活動性計算單元320可以計算和輸出與DTC系數(shù)對應的活動性值actj(例如,利用等式1和/或2,其中sblkj可以表示具有DCT類型的幀結(jié)構(gòu)子塊或場結(jié)構(gòu)子塊)。
在圖3的范例性實施例中,自適應量化控制器300可以利用DCT類型的DCT系數(shù)執(zhí)行活動性計算,由此以降低活動性計算期間的復雜性。
圖4的流程示出了根據(jù)本發(fā)明另一范例性實施例的用于運動圖像編碼器的自適應量化控制處理。在該例子中,可以利用圖1的自適應量化控制器100和/或圖3的自適應量化控制器300執(zhí)行自適應量化控制處理400。
在圖4所示的范例性實施例中,可以在參考幀的基礎(chǔ)上對輸入幀執(zhí)行運動預測(例如,包括運動估計和運動補償)。可以產(chǎn)生作為所述輸入幀和所述參考幀之間的差的預測誤差(在405處)。
在圖4所示的范例性實施例中,所述輸入幀可以是當前的原始幀并可以包括基于運動圖像編碼器的編碼模式的I幀、P幀和B幀。在例子中,用于I幀的參考幀可以是先前(例如,在前)P幀或I幀的原始幀。在另一個例子中,用于所述I幀的參考幀可以是先前P幀或I幀的經(jīng)過運動補償?shù)膸?。在再一個例子中,用于所述P幀的參考幀可以是先前P幀或I幀的經(jīng)過運動補償?shù)膸?,而用于所述B幀的參考幀可以是先前P幀或I幀和隨后P幀或I幀的經(jīng)過運動補償?shù)膸?。運動預測(在405處)可以基于在I幀、P幀和B幀的運動估計中所使用的參考塊。在例子中,參考塊可以是16×16宏塊、4×4宏塊、4×8宏塊、8×4宏塊、8×8宏塊、8×16宏塊、16×8宏塊和/或任何其它大小的宏塊。
在圖4所示的范例性實施例中,可以確定用于預測誤差和/或輸入幀的宏塊類型(在410處)。在例子中,幀間宏塊可以被確定為用于所述預測誤差的宏塊類型,而幀內(nèi)宏塊可以被確定為用于所述輸入幀的宏塊類型。在再一個例子中,所述預測誤差和輸入幀可以被作為幀輸出。
在圖4的范例性實施例中,評估與預測誤差的內(nèi)部宏塊和/或輸入幀的幀內(nèi)宏塊相關(guān)的DCT的結(jié)果(例如,DCT系數(shù)),以便確定DCT系數(shù)是否可以被用于活動性計算(在415處)。如果確定DCT系數(shù)可以被用于活動性計算,那么,處理前進到420(后述)?;蛘?,如果確定所述DCT系數(shù)不能被用于活動性計算,那么,圖4的處理前進到430。
在圖4的范例性實施例中,可以在預測誤差的幀間宏塊和/或輸入幀的幀內(nèi)宏塊的基礎(chǔ)上計算宏塊j的時間和空間活動性值actj,這將在下面相對于圖5所示的范例性實施例詳細說明。
圖5示出了根據(jù)本發(fā)明另一范例性實施例的圖4的430的活動性值計算。
在圖5的范例性實施例中,在4301處,活動性計算430可以包括對包括在預測誤差PE的幀間宏塊內(nèi)的預測誤差值Ekn的絕對值求和(例如,利用等式1)并輸出該求和的結(jié)果(例如,作為8×8亮度子塊值sblkn(n=1、2、3或4))。如以上對等式1所述,Ekn可以表示在第n個8×8預測視頻塊中的預測誤差值?;蛘?,在圖5的4301處,通過從包括在輸入幀IN_F的幀內(nèi)宏塊中的取樣值(像素值)Pkn減去平均取樣值P_meann獲得的偏差值的絕對值被求和并被輸出(例如,根據(jù)等式2)(例如,作為8×8亮度子塊值sblkn(n=1、2、3或4))。
在圖5的范例性實施例中,在4302處,比較4個子塊值sblk1、sblk2、sblk3和sblk4,并輸出這4個子塊值sblk1、sblk2、sblk3和sblk4中的最小值??梢栽黾铀敵龅淖钚≈?例如,加1)并輸出活動性值actj。在例子中,可以根據(jù)等式3執(zhí)行圖5的4302和4303。
回到圖4所示的范例性實施例,可以對被確定的宏塊(根據(jù)410)(例如,預測誤差的幀間宏塊或所述輸入幀的幀內(nèi)宏塊)進行評估,以確定是否執(zhí)行DCT以便將所確定的宏塊轉(zhuǎn)換成幀或場結(jié)構(gòu)(在420處)。然后,可以以給定的塊大小(例如,8×8塊)為單位對所確定的宏塊執(zhí)行與所述DCT類型(在420處確定的)相對應的DCT,并輸出DCT系數(shù)。
在圖4所示的范例性實施例中,可以計算與DCT系數(shù)對應的活動性值actj(例如,基于等式1或2)(在430處)。在圖4的430處,(例如,等式1或等式2)sblkn可以根據(jù)DCT的類型來表示幀結(jié)構(gòu)子塊或場結(jié)構(gòu)子塊。
在圖4的范例性實施例中,可以將參考量化參數(shù)Qj乘以活動性值actj的歸一化值N_actj,從而產(chǎn)生自適應量化值(在435處)(例如,量化參數(shù)MQj)。可以基于運動圖像編碼器的輸出緩沖器的填充程度來確定參考量化參數(shù)Qj。在例子中,如果在輸出緩沖器處產(chǎn)生的位數(shù)大于參考值,那么,所述參考量化參數(shù)Qj可以較高,而如果從輸出緩沖器產(chǎn)生的位數(shù)不大于所述參考值,那么,參考量化參數(shù)Qj可以較低。可以將量化參數(shù)MQj提供給運動圖像編碼器的量化器(未示出)。量化器可以響應量化參數(shù)MQj來量化從所述運動圖像編碼器(未示出)的離散余弦變換器輸出的DCT系數(shù)并輸出量化系數(shù)。在例子中,圖4中435的量化參數(shù)產(chǎn)生可以執(zhí)行等式4和/或5。
圖6的曲線示出了傳統(tǒng)的峰值信/噪比(PSNR)曲線610和根據(jù)本發(fā)明范例性實施例的PSNR曲線620。在另一示例中,PSNR曲線620可以表示施加到Paris視頻序列的亮度塊(Y)的自適應量化控制處理。在例子中,Paris視頻序列的比特率(bit-rate)可以是每秒800千比特(Kbps),且Paris視頻序列可以包括公共媒介格式的幀。但是,應當理解,本發(fā)明的其它范例性實施例也可以包括其它的比特率和/或格式。
在圖6的范例性實施例中,PSNR曲線620通常高于PSNR曲線610,這表明,通過最佳地安排I幀的量化值,該范例性自適應控制器和該范例性自適應量化控制處理可以影響I幀的相鄰P/B幀,從而提供主關(guān)視頻質(zhì)量的整個增加。
圖7的曲線示出了另一傳統(tǒng)的PSNR曲線710和根據(jù)本發(fā)明范例性實施例的另一個PSNR曲線。在例子中,PSNR曲線720可以表示施加到Flag視頻序列的亮度塊(Y)的自適應量化處理。在例子中,F(xiàn)lag視頻序列的比特率可以是每秒800千比特(Kbps),且所述Flag視頻序列可以包括公共媒介格式的多個幀。但是,應當理解,本發(fā)明的其它范例性實施例可以包括其它的比特率和/或格式。
在圖7的范例性實施例中,PSNR720通??梢愿哂赑SNR曲線710,這可以表示出,通過最佳地安排I幀的量化值,該示例的自適應量化控制器和該示例的自適應量化控制處理可以影響I幀的相鄰P/B幀,由此,提供主觀視頻質(zhì)量的整個增加。
圖8的表格示出了一組傳統(tǒng)自適應量化控制處理的模擬結(jié)果和一組根據(jù)本發(fā)明范例性實施例的自適應量化控制處理的模擬結(jié)果。在圖8所示的范例性實施例中,包括在圖像組中的幀數(shù)可以是15,而每個視頻序列可以包括300個幀。
在圖8的范例性實施例中,在每個視頻序列中根據(jù)本發(fā)明范例性實施例的PSNR與傳統(tǒng)的PSNR之間的差ΔY_PSNR可以大于0dB。例如,在較低的比特率(例如,諸如600Kbps)處,該ΔY_PSNR可以達到0.52dB的較高(例如,最大)值。Δ_PSNR的正值可以反映響應根據(jù)本發(fā)明范例性實施例的自適應量化控制器和自適應量化控制處理的圖象質(zhì)量的改善。
圖9的表格示出了根據(jù)本分明的一組使用I幀運動預測的運動預測模擬結(jié)果和一組不使用I幀運動預測的運動模擬結(jié)果。在圖9的模擬示例中,包括在圖像組中的幀數(shù)可以是15,而每個視頻序列可以包括300幀。
在圖9的模擬示例中,在每個視頻序列中,使用I幀運動預測時(IMP_On)的PSNR和不使用I幀預測時(IMP_Off)時的PSNR之間的差ΔY_PSNR可以大于0dB。所述ΔY_PSNR的正值反映響應本發(fā)明該范例性實施例中使用的I幀運動預測的圖像質(zhì)量的改善。
圖10的表格示出了根據(jù)本發(fā)明范例性實施例的一組用于其中I幀的參考幀是原始幀的運動預測的模擬結(jié)果和一組其中所述I幀的參考幀是經(jīng)過運動補償?shù)膸哪M結(jié)果。在圖10所示的模擬示例中,包括在圖像組中的幀數(shù)可以是15,而每個視頻序列可以包括300幀。
在圖10所示的模擬示例中,在每個視頻序列中,I幀的參考幀是原始幀(IMP_org)時的PSNR和I幀的參考幀是經(jīng)過運動補償?shù)膸?IMP_recon)時的PSNR之間的差ΔY_PSNR可以大于0dB。ΔY_PSNR的正值可以反映響應在本發(fā)明范例性實施例中使用原始幀作為所述I幀的參考幀的圖像質(zhì)量的改善。
到此,已經(jīng)描述了本發(fā)明的范例性實施例,很明顯,可以利用多種形式做相同的改變。例如,盡管已經(jīng)利用某種格式和大小(例如,16×16像素的宏塊)的結(jié)構(gòu)討論了本發(fā)明,但應當理解,在本發(fā)明的其它范例性實施例中,上述給出的幾個例子可以按比例決定以便與公知的視頻協(xié)議相符。
這種變化并不脫離本發(fā)明范例性實施例的精神和范圍,對于本領(lǐng)域的普通技術(shù)人員來講很明顯的這種修改構(gòu)均被包括在本發(fā)明權(quán)利要求書的范圍內(nèi)。
權(quán)利要求
1.一種自適應量化控制器,包括預測誤差產(chǎn)生單元,用于在參考幀的基礎(chǔ)上對包括在輸入幀內(nèi)的至少一個幀執(zhí)行運動預測并產(chǎn)生預測誤差,該預測誤差是所述輸入幀和所述參考幀之間的差;活動性計算單元,用于基于所接收的宏塊輸出活動性值,所接收的宏塊與所述輸入幀和所述預測誤差之一相關(guān);和量化參數(shù)產(chǎn)生單元,用于通過將參考量化參數(shù)與輸出的活動性值的歸一化值相乘而產(chǎn)生量化參數(shù)。
2.如權(quán)利要求1所述的自適應控制器,其中,至少一個幀包括一個或多個I幀、P幀和B幀。
3.如權(quán)利要求1所述的自適應控制器,其中,所接收的宏塊是幀內(nèi)宏塊或幀間宏塊中的一個。
4.如權(quán)利要求1所述的自適應控制器,其中,所述量化參數(shù)產(chǎn)生單元基于所包括的輸出緩沖器被填充的程度來產(chǎn)生所述參考量化參數(shù)。
5.如權(quán)利要求2所述的自適應控制器,其中,所述I幀的參考幀是先前P幀或I幀的原始幀。
6.如權(quán)利要求2所述的自適應控制器,其中,所述I幀的參考幀是先前P幀或I幀的經(jīng)過運動補償?shù)膸?br>
7.如權(quán)利要求1所述的自適應控制器,其中,所述預測誤差產(chǎn)生單元執(zhí)行包括運動估計和運動補償?shù)倪\動預測。
8.如權(quán)利要求7所述的自適應控制器,其中,在至少一個幀的運動預測期間所使用的參考塊是給定大小的宏塊。
9.如權(quán)利要求8所述的自適應控制器,其中,就像素而言,所述給定大小是16×16、4×4、4×8、8×4、8×8、8×16或16×8。
10.如權(quán)利要求1所述的自適應控制器,還包括宏塊類型判定單元,用于響應所述預測誤差和輸入幀而輸出表示所接收的宏塊是否是幀間宏塊還是幀內(nèi)宏塊的宏塊類型信息;和開關(guān),用于響應所述宏塊類型信息而輸出所述預測誤差和所述輸入幀中的一個給所述活動性計算單元。
11.如權(quán)利要求1所述的自適應控制器,其中,所述活動性計算單元包括預測誤差/偏差加法單元,用于如果所接收的宏塊是所述預測誤差的幀間宏塊,則求和包括在所接收宏塊中的預測誤差值的絕對值,和如果所接收的宏塊是所述輸入幀的幀內(nèi)宏塊,則求和通過從包括在所接收宏塊中的取樣值中減去平均取樣值而獲得的偏差值的絕對值,和輸出求和的結(jié)果作為多個子塊值中的一個;比較單元,用于將所述多個子塊值進行比較并輸出所述多個子塊值的最小值;和加法單元,用于增加所輸出的最小值并輸出所接收宏塊的活動性值。
12.如權(quán)利要求1所述的自適應控制器,還包括離散余弦變換單元,用于執(zhí)行與所接收宏塊的離散余弦變換類型信息相對應的離散余弦變換,并輸出離散余弦變換系數(shù),其中,所述活動性計算單元接收所述離散余弦變換系數(shù)并基于該離散余弦變換系數(shù)確定所接收宏塊的輸出活動性值。
13.如權(quán)利要求12所述的自適應控制器,其中,所述量化參數(shù)產(chǎn)生單元基于所包括的輸出緩沖器被填充的程度以及表示是否對所接收的宏塊執(zhí)行離散余弦變換的離散余弦變換類型信息而產(chǎn)生所述參考量化參數(shù)。
14.如權(quán)利要求12所述的自適應控制器,還包括宏塊類型判定單元,用于響應所述預測誤差和所述輸入幀而輸出表示所接收的宏塊是否是幀間宏塊還是幀內(nèi)宏塊的宏塊類型信息;開關(guān),用于響應所述宏塊類型信息將所接收的宏塊輸出到所述活動性計算單元;和離散余弦變換類型判定單元,用于響應所接收的從所述開關(guān)輸出的宏塊輸出所述離散余弦變換類型信息給所述離散余弦變換單元。
15.一種自適應量化控制方法,包括基于參考幀對包括在輸入幀中的至少一個幀執(zhí)行運動預測;產(chǎn)生預測誤差,該預測誤差是所述輸入幀和所述參考幀之間的差值;基于所接收的宏塊計算活動性值,所接收的宏塊與所述輸入幀和所述預測誤差中的一個相關(guān);和通過將參考量化參數(shù)乘以所計算的活動性值的歸一化值而產(chǎn)生量化參數(shù)。
16.如權(quán)利要求15所述的方法,其中,所述活動性值的計算至少部分地基于與所接收宏塊的離散余弦變換類型對應的離散余弦變換系數(shù)。
17.如權(quán)利要求15所述的方法,其中,所述量化參數(shù)產(chǎn)生單元基于所包括的輸出緩沖器的填充程度而產(chǎn)生所述參考量化參數(shù),和所述離散余弦變換類型信息表示是否對所接收的宏塊執(zhí)行離散余弦變換。
18.如權(quán)利要求15所述的方法,其中,至少一個幀包括一個或多個I幀、P幀和B幀。
19.如權(quán)利要求18所述的方法,其中,對于所述I幀的參考幀是先前P幀或I幀的原始幀。
20.如權(quán)利要求18所述的方法,其中,對于所述I幀的參考幀是先前P幀或I幀的經(jīng)過運動補償?shù)膸?br>
21.如權(quán)利要求15所述的方法,其中,所述運動預測包括運動估計和運動補償。
22.如權(quán)利要求21所述的方法,其中,在至少一幀的運動估計中使用的參考塊是給定大小的宏塊。
23.如權(quán)利要求22所述的方法,其中,就像素而言,所述給定大小是16×16、4×4、4×8、8×4、8×8、8×16或16×8。
24.如權(quán)利要求16所述的方法,還包括第一,確定所接收的宏塊是否是所述預測誤差的幀間宏塊還是所述輸入幀的幀內(nèi)宏塊;第二,確定是否基于所述離散余弦變換系數(shù)來計算所接收宏塊的活動性值;和第三,確定是否對所接收的宏塊執(zhí)行離散余弦變換;至少部分地基于所接收的宏塊是否是幀間宏塊還是幀內(nèi)宏塊對所接收的宏塊執(zhí)行離散余弦變換,并輸出所述離散余弦變換系數(shù),其中,如果所述第二確定步驟基于所述離散余弦變換系數(shù)確定不計算所述活動性值,則產(chǎn)生所述量化參數(shù),以及如果所述第二確定步驟基于所述離散余弦變換系數(shù)確定計算所述活動性值,那么,只有在第三確定和執(zhí)行步驟之后才產(chǎn)生所述量化參數(shù)。
25.如權(quán)利要求15所述的方法,其中,產(chǎn)生所述量化參數(shù)包括如果所接收的宏塊是所述預測誤差的幀間宏塊,則求和包括在所接收宏塊中的預測誤差值的絕對值,以及如果所接收的宏塊是所述輸入幀的幀內(nèi)宏塊,則求和通過從包括在所接收宏塊中的取樣值中減去平均取樣值所獲得的偏差值的絕對值,并輸出求和的結(jié)果作為多個子塊值中的一個;比較所述多個子塊值并輸出所述多個子塊值的最小值;和增加輸出的最小值并輸出所接收的宏塊的活動性值。
26.一種自適應量化控制的方法,包括接收包括I幀的輸入幀;和至少部分地基于從一個或多個先前輸入幀中提取的信息來執(zhí)行所述I幀的運動預測。
27.一種執(zhí)行權(quán)利要求15所述方法的自適應量化控制器。
28.一種執(zhí)行權(quán)利要求26所述方法的自適應量化控制器。
全文摘要
提供了一種自適應量化控制器及其方法。在范例性的方法中,基于參考幀對包括在輸入幀中的至少一個幀執(zhí)行運動預測??赡墚a(chǎn)生預測誤差作為輸入幀和參考幀之間的差值。可以基于所接收的宏塊計算活動性值,所接收的宏塊與輸入幀和預測誤差之一相關(guān)。通過將參考量化參數(shù)乘以所計算的活動性值的歸一化值可以產(chǎn)生量化參數(shù)。在另一范例性方法中,可以接收包括I幀的輸入幀并至少部分地基于從一個或多個先前輸入幀中提取的信息執(zhí)行對該I幀的運動預測。在另一個例子中,所述自適應量化控制器可以執(zhí)行上述范例性的方法。
文檔編號H04N7/32GK1949877SQ20061014168
公開日2007年4月18日 申請日期2006年10月9日 優(yōu)先權(quán)日2005年10月12日
發(fā)明者金鐘善, 范宰榮, 任慶默, 樸宰弘, 錢升弘 申請人:三星電子株式會社