專利名稱:通過直接離散余弦變換映射改變分辨率的設(shè)備和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種在空間頻率域中直接將編碼信號中的原始轉(zhuǎn)換系數(shù)映射成新的轉(zhuǎn)換系數(shù)以改變編碼信號中的采樣數(shù)的處理器,尤其涉及通過把原始離散余弦變換系數(shù)直接映射成新的離散余弦變換系數(shù)而改變編碼圖像(例如以MPEG-2編碼的視頻信號)的分辨率。
在美國,已經(jīng)推出一種標(biāo)準(zhǔn),用于對高清晰度電視信號進(jìn)行數(shù)字化編碼。該標(biāo)準(zhǔn)的一部分在本質(zhì)上與MPEG-2標(biāo)準(zhǔn)相同,后者由國際標(biāo)準(zhǔn)化組織(ISO)的動(dòng)態(tài)圖畫專家組(MPEG)推出。一本國際標(biāo)準(zhǔn)(IS)出版物對該標(biāo)準(zhǔn)進(jìn)行了說明,它的名字叫做《信息技術(shù)——?jiǎng)討B(tài)圖畫及相關(guān)音頻通用編碼,推薦H.626》(“Information Technology-GenericCoding of Moving Pictures and Associated Audio,Recommendation H.626”),ISO/IEC 13818-2,1995(E)??梢詮腎SO得到該出版物,在此我們將其結(jié)合于此以為講解MPEG-2數(shù)字視頻編碼標(biāo)準(zhǔn)的參考。
MPEG-2標(biāo)準(zhǔn)實(shí)際上是幾種不同的標(biāo)準(zhǔn)。MPEG-2中定義了幾種不同的概要文件,每種都對應(yīng)不同復(fù)雜程度的編碼圖像。對每一種概要文件都定義了不同的程度,分別對應(yīng)不同的圖像分辨率。其中一個(gè)MPEG-2標(biāo)準(zhǔn)——主概要文件-主程度(MP@ML)——用于對視頻信號編碼,使其適應(yīng)現(xiàn)有的電視標(biāo)準(zhǔn)(即NTSC和PAL);另一種標(biāo)準(zhǔn)——主概要文件-高程度(MP@HL)——用于對高清晰度電視圖像進(jìn)行編碼。
按照MP@HL標(biāo)準(zhǔn)編碼的圖像每幀將有1152條掃描線,每線有1920個(gè)像素。而MP@ML標(biāo)準(zhǔn)則將最大圖像定義成每線720個(gè)像素,每幀567線。在美國,用于HDTV的高清晰度電視標(biāo)準(zhǔn)是MP@HL標(biāo)準(zhǔn)的一個(gè)子集,其每幀為1080線,每線1920個(gè)像素,在這種幀大小下,最大幀速率為每秒30幀。
MPEG-2標(biāo)準(zhǔn)定義了一種復(fù)雜的語法,它包含一個(gè)數(shù)據(jù)和控制信息的混合體。有些控制信息能使信號具有幾種不同的格式,以便落入被該標(biāo)準(zhǔn)范圍內(nèi)。這些格式定義出的圖像的每條掃描線具有不同數(shù)目的圖形元素(像素)、每幀(場)中具有可變數(shù)目的掃描線,以及每秒具有可變數(shù)目的幀(場)數(shù)。另外,MPEG-2主概要文件的語法定義了壓縮MPEG-2位流,它代表位于六個(gè)層中的一系列圖像,這些層分別是序列層、圖形組層、圖形層、切片層、宏塊層和塊層。除了塊層以外,其他每個(gè)層都由控制信息引入。最后一點(diǎn),其他控制信息(也叫輔助信息,例如幀型、宏塊模式、圖像運(yùn)動(dòng)向量、系數(shù)之字形模式及反量子化信息)遍布于整個(gè)編碼位流中。
高清晰度電視系統(tǒng)(HDTV)的實(shí)現(xiàn)應(yīng)該與現(xiàn)有系統(tǒng)(例如NTSC和PAL)相兼容。同樣,要想有效地接受數(shù)字圖像,HDTV解碼器必須能夠產(chǎn)生與MP@HL標(biāo)準(zhǔn)或MP@ML標(biāo)準(zhǔn)相應(yīng)的圖像,從而為現(xiàn)有收發(fā)器提供兼容性。例如,高清晰度電視的解碼器應(yīng)該能夠按照MP@HL標(biāo)準(zhǔn)從MP@ML編碼的信號中產(chǎn)生圖像,或者按照MP@ML標(biāo)準(zhǔn)從MP@HL編碼的信號中產(chǎn)生圖像。
另外,使用新型的高清晰度監(jiān)視器的收發(fā)器(能顯示由MP@HL產(chǎn)生的圖像)可能會(huì)因?yàn)閮r(jià)格過高而讓某些客戶不敢問津。因此,HDTV解碼器(能按照MP@HL或MP@ML標(biāo)準(zhǔn)產(chǎn)生圖像)要能使用更新的廉價(jià)接受器,這些接受器帶有視頻監(jiān)視器,能提供比MP@ML高但比MP@HL低的分辨率。帶有此類監(jiān)視器的電視機(jī)還應(yīng)能顯示由MP@HL信號產(chǎn)生的圖像,盡管只需在較低的分辨率上。
使用現(xiàn)有技術(shù),解碼器可能會(huì)利用插值電路在像素域?qū)π盘栠M(jìn)行插值或削減處理,從而將圖像分辨率從MP@HL降至MP@ML。以這些傳統(tǒng)方式處理MP@HL編碼圖像以生成MP@ML信號,要將MP@HL編碼圖像從空間頻率域轉(zhuǎn)換成像素域,經(jīng)插值處理后生成較低分辨率的圖像,然后將其轉(zhuǎn)換回空間頻率域。這種處理方式將有悖于在客戶電視接受器上使用解碼器,因?yàn)閮r(jià)格是其中的主要因素。必須有額外的電路對信號進(jìn)行解碼、插值處理或削減,然后再編碼。另外在解碼和編碼的過程中,由于降低了編碼信號的分辨率,可能會(huì)給圖像帶來無謂的人為干擾。
另一種方法是使用這樣一個(gè)解碼器,它在解碼之前先選擇輸入高清晰度電視位流的一個(gè)部分,正如《具有高清晰度電視解碼功能的SDTV接受器》(SDTV RECEIVERS WITH HDTV DECODING CAPABILITY)中所述。該論文作者是Jill Boyce等人,寫于1995年2月,并于1995年5月18日在ACATS技術(shù)分小組會(huì)議(the ACATS Technical SubgroupMeeting)上宣讀。該論文中講述的解碼器運(yùn)用了多項(xiàng)技術(shù)來降低標(biāo)準(zhǔn)電視接受器的成本和復(fù)雜性。一個(gè)預(yù)分析器檢查輸入位流并除去不大重要的編碼元素和離散余弦變換(DCT)系數(shù),這些元素包括高頻離散余弦變換系數(shù)。然后將編碼元素從空間頻率域轉(zhuǎn)換成像素域中的像素,再對這些像素進(jìn)行下采樣處理以生成低分辨率圖像的像素。
還有其他一些系統(tǒng)也能運(yùn)用不同的技術(shù)對圖像進(jìn)行編碼。例如,傅立葉變換與Z變換已經(jīng)用于對空間頻率域進(jìn)行編碼?!?電視工程手冊》(Television Engineering Handbook)18.3頁講述了其中一個(gè)系統(tǒng),該書作者是K.Blair Benson,寫于1992年,在此將其結(jié)合于此作為講解數(shù)字圖像編碼的參考。該系統(tǒng)運(yùn)用傅立葉變換對圖像編碼。類似MPEG標(biāo)準(zhǔn),該系統(tǒng)可用于對不同分辨率的圖像進(jìn)行編碼。因此,對于這些系統(tǒng)而言,同樣需要在高、低分辨率圖像之間進(jìn)行變換,以便給不同的接受器提供兼容性。
根據(jù)本發(fā)明實(shí)施例的設(shè)備在空間頻率域中進(jìn)行操作,將圖像分辨率從第一圖像分辨率轉(zhuǎn)換為第二圖像分辨率。第一組轉(zhuǎn)換值代表具有第一圖像分辨率的圖像,它在空間頻率域中被映射成第二圖像分辨率,后者代表具有第二圖像分辨率的圖像。該設(shè)備包含存儲好的預(yù)計(jì)算值,它們是第一組轉(zhuǎn)換值和第二組轉(zhuǎn)換值之間的映射系數(shù)值。這些預(yù)計(jì)算值從內(nèi)存中檢索,并能在空間頻率域中直接將第一組轉(zhuǎn)換值映射成第二組轉(zhuǎn)換值。
圖1是本發(fā)明的典型實(shí)施例中離散余弦變換轉(zhuǎn)換設(shè)備的方框圖。
圖2(a)和2(b)是圖1所示離散余弦變換轉(zhuǎn)換器140工作的流程圖。
圖3(a)是數(shù)據(jù)結(jié)構(gòu)圖,顯示了六個(gè)宏塊。
圖3(b)是數(shù)據(jù)結(jié)構(gòu)圖,顯示圖3(a)中一個(gè)宏塊的內(nèi)容。
圖3(c)是數(shù)據(jù)結(jié)構(gòu)圖,顯示由圖3(a)中六個(gè)宏塊產(chǎn)生的、經(jīng)轉(zhuǎn)換的宏塊CMB。
圖4是數(shù)據(jù)結(jié)構(gòu)表,顯示像素域中六個(gè)宏塊映射成一個(gè)宏塊。
圖5(a)和5(b)是圖表,顯示MPEG掃描模式0和MPEG掃描模式1的格式。
圖5(c)是圖表,顯示反向之字形掃描后離散余弦變換系數(shù)格式。該掃描由圖6中的反向之字形掃描存儲器120來完成。
圖6是,根據(jù)本發(fā)明典型實(shí)施例的解碼設(shè)備的方框圖。
圖7是根據(jù)顯示本發(fā)明的另一典型實(shí)施例的用于MPEG-2位流下轉(zhuǎn)換電路方框圖。
圖8是流程圖,顯示圖7中MPEG-2位流下轉(zhuǎn)換電路如何工作。
圖9(a)和9(b)是數(shù)據(jù)結(jié)構(gòu)圖,顯示圖7中步驟700、800、810、和820的運(yùn)行情況。
圖10是數(shù)據(jù)結(jié)構(gòu)圖,顯示切片中宏塊的組成。
圖11(a)和11(b)是數(shù)據(jù)結(jié)構(gòu)圖,顯示4∶2∶0塊格式以幀離散余弦變換編碼的亮度宏塊結(jié)構(gòu)及以場離散余弦變換編碼的亮度宏塊結(jié)構(gòu)。
在本發(fā)明的典型實(shí)施例中改變圖像分辨率是通過在空間頻率域中將原始圖像的離散余弦變換系數(shù)值F′i′j′(u′v′)映射成經(jīng)轉(zhuǎn)換的系數(shù)值Fij(u,v)實(shí)現(xiàn)的。因此,原始的離散余弦變換系數(shù)值F′i′j′(u′,v′)不必在像素域進(jìn)行削減或插值處理轉(zhuǎn)換為像素域的像素以增大或降低圖像的分辨率。于是也不必再使用額外電路去把系數(shù)轉(zhuǎn)換成像素以便對像素進(jìn)行削減和插值處理、以及將處理完的像素轉(zhuǎn)換回離散余弦變換系數(shù)值。
在變換域中將原始離散余弦變換系數(shù)值F′i′j′(u′,v′)轉(zhuǎn)換為經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v)是可行的,因?yàn)樵谧儞Q前后,圖形中的空間像素有對應(yīng)關(guān)系,這種變換是把不同的分辨率上的離散余弦變換系數(shù)值翻譯成一個(gè)對應(yīng)關(guān)系。用于其他變換方法(包括傅立葉變換和Z-變換)的空間頻率域中的變換值也能夠被轉(zhuǎn)換為經(jīng)轉(zhuǎn)換的變換值,因?yàn)樵谧儞Q前后時(shí)間域中的值也有對應(yīng)關(guān)系,這種變換是把不同的分辨率上的變換值翻譯成一個(gè)對應(yīng)關(guān)系。
原始離散余弦變換系數(shù)值F′i′j′(u′,v′)定義了一個(gè)帶有第一分辨率的圖像,它們的生成是利用N點(diǎn)二維離散余弦變換把圖像中的像素轉(zhuǎn)換為離散余弦變換系數(shù)值。N點(diǎn)二維離散余弦變換由以下的方程(1)定義Fi′j′(u′,v′)=2N·c(u′)c(v′)Σm=0N-1Σn=0N-1f′i′j′(m,n)cos(2m+1)u′π2Ncos(2n+1)v′π2N---(1)]]>F′i′j′(u′,v′)是第j′個(gè)塊和第i′個(gè)宏塊的初始離散余弦變換系數(shù)值,其中u′和v′是空間頻率域中的坐標(biāo),u′,v′=0、1、2……N-1;f′i′j′(m,n)是圖像中的像素值,其中m和n是像素域中的空間坐標(biāo),m、n=0、……N-1;c(u′)和c(v′)是變換系數(shù)值,由方程(2)定義c(i)={1otherwise(1/2)fori=0---(2)]]>反過來,圖像的像素值f′i′j′(m,n)也能從原始的離散余弦變換系數(shù)值F′i′j′(u′,v′)中得到,方法是使用N點(diǎn)反向離散余弦變換(IDCT)。N點(diǎn)IDCT定義在方程(3)中f′i′j′(m,n)=2NΣu′=0N-1Σv′=0N-1c(u′)c(v′)F′i′j′(u′,v′)cos(2m+1)u′π2Ncos(2n+1)v′π2N---(3)]]>圖像的分辨率能夠通過對像素域中的像素值f′i′j′(m,n)進(jìn)行插值或削減來增大或減小。例如,經(jīng)轉(zhuǎn)換的像素值f′i′j′(x,y)能從原始的像素值f′i′j′(m,n)中得到,方法是對像素域中原始圖像的像素進(jìn)行線性疊加,如方程(4)所示fij(x,y)=Σi′Σf′Σm=0N-1Σn=0N-1αi′,j′,m,ni,j,x,y·f′i′j′(m,n)---(4)]]>α是在原始像素值f′i′j′(m,n)和轉(zhuǎn)換后的像素值fij(x,y)之間的轉(zhuǎn)換系數(shù)。由轉(zhuǎn)換后的像素值fij(x,y)定義的圖象與由原始像素值f′i′j′(m,n)定義的圖象的分辨率不同。
經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v)能從經(jīng)轉(zhuǎn)換的像素值fij(x,y)中通過以下方程得到Fij(u,v)=2N·c(u)c(v)Σx=0N-1Σy=0N-1fij(x,y)cos(2x+1)uπ2Ncos(2y+1)vπ2N---(5)]]>Fij(u,v)是第j個(gè)塊和第i個(gè)宏塊中的經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值,其中u和v是經(jīng)轉(zhuǎn)換圖像中空間頻率域的坐標(biāo),u,v=0、……N-1;fij(x,y)是經(jīng)轉(zhuǎn)換的像素值,其中x、y是經(jīng)轉(zhuǎn)換圖像的像素域的空間坐標(biāo),x,y=0、……N-1。原始像素值f′i′j′(m,n)與經(jīng)轉(zhuǎn)換離散余弦變換系數(shù)值Fij(u,v)的對應(yīng)關(guān)系示于方程(6)中,其中方程(5)被重寫,即用方程(4)的右邊代替經(jīng)轉(zhuǎn)換的像素值fij(x,y)。Fij(u,v)=2N·c(u)c(v)·]]>Σx=0N-1Σy=0N-1(Σi′Σj′Σm=0N-1Σn=0N-1αi′,j′,m,ni,j,x,y·f′i′j′(m,n))cos(2x+1)uπ2Ncos(2y+1)vπ2N----(6)]]>由于原始像素值f′i′j′(m,n)能用原始離散余弦變換系數(shù)值F′i′j′(u′,v′)來表示(如方程(3)所示),經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v)就能用原始離散余弦變換系數(shù)值F′i′j′(u′,v′)來表示。方程(7)對此加以了證明,其中方程(3)右邊被替代成方程(6)中原始像素值f′i′j′(m,n)。Fij(u,v)=4N2·c(u)c(v).]]>Σi′Σj′Σu′=0N-1Σv′=0N-1Σx=0N-1Σy=0N-1Σm=0N-1Σn=0N-1αi′,j′,m,ni,j,x,ycos[(2x+1)uπ2N]cos[(2y+1)vπ2N].]]>cos[(2m+1)u′π2N]cos[(2n+1)v′π2N]·c(u′)c(v′)F′i′j′(u′,v′)----(7)]]>把方程(7)重寫能得出方程(8)和(9)Fij(u,v)=Σi′Σj′Σu′=0N-1Σv′=0N-1PCVi′,j′,u′,v′i,j,u,v·F′i′j′(u′,v′)---(8)]]>其中PCVi′,j′,u′,v′i,j,u,v=4N2·c(u)c(v)c(u′)c(v′)·]]>Σx=0N-1Σy=0N=1Σm=0N-1Σn=0N-1αi′j′,m,ni,j,x,ycos(2x+1)uπ2Ncos(2y+1)vπ2N·]]>cos(2m+1)u′π2Ncos(2n+1)v′π2π]]>m和n是像素域中原始像素值f′i′j′(m,n)的空間坐標(biāo),m,n=0,……,N;x和y是經(jīng)轉(zhuǎn)換的像素值fij(x,y)在像素域中的空間坐標(biāo),x,y=0,……,N-1;u′和v′是原始離散余弦變換系數(shù)值F′i′j′(u′,v′)在空間頻率域中的坐標(biāo),u′,v′=0,1,2,……N-1;u和v是經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v)在空間頻率域中的坐標(biāo),u,v=0,1,2,……N-1;α是轉(zhuǎn)換系數(shù)。
轉(zhuǎn)換系數(shù)α的典型值列在表1-6中,用于將6個(gè)宏塊(以三乘二宏塊排列)轉(zhuǎn)換成一個(gè)宏塊,如下文所述。由于方程(9)中每個(gè)值——x、y、m、n、u、v、u′、v′、和α——都是已知常量,預(yù)計(jì)算值PCV能通過方程(9)得出,而不管原始離散余弦變換系數(shù)值F′i′j′(u′,v′)(待轉(zhuǎn)換)是多少。計(jì)算預(yù)計(jì)算值PCV與原始離散余弦變換系數(shù)值F′i′j′(u′,v′)及經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v)無關(guān)。預(yù)計(jì)算值PCV用于將任何原始離散余弦變換系數(shù)值F′i′j′(u′,v′)轉(zhuǎn)換成經(jīng)轉(zhuǎn)換的系數(shù)值Fij(u,v),為得是將六個(gè)宏塊(按三乘二排列)轉(zhuǎn)換成一個(gè)經(jīng)轉(zhuǎn)換的宏塊。
如上文所述,經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v)與具有不同分辨率的圖像相對應(yīng),而非原始離散余弦變換系數(shù)值F′i′j′(u′,v′)所代表的圖像。因此,通過將原始離散余弦變換系數(shù)值F′i′j′(u′,v′)映射成經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v)就可以改變圖像的分辨率。這樣就無需使用額外電路將原始離散余弦變換系數(shù)值F′i′j′(u′,v′)轉(zhuǎn)換成像素值并執(zhí)行插值和削減處理,也無需使用電路將像素值轉(zhuǎn)換回經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v)以完成處理。另外,轉(zhuǎn)換圖像的處理時(shí)間也縮短了,因?yàn)槊馊チ艘韵虏襟E將離散余弦變換系數(shù)轉(zhuǎn)換成像素值、處理像素值、再將處理過的像素值轉(zhuǎn)換回離散余弦變換系數(shù)。最后,經(jīng)過這種方式轉(zhuǎn)換的圖像比那種先轉(zhuǎn)換到像素域、再經(jīng)插值處理、然后再轉(zhuǎn)換回空間頻率域的圖像少了人為干擾因素。
圖1顯示了一個(gè)離散余弦變換轉(zhuǎn)換設(shè)備的整體結(jié)構(gòu),作為本發(fā)明的典型實(shí)施例,它在空間頻率域中將原始離散余弦變換系數(shù)值F′i′j′(u′,v′)映射成經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v)。該離散余弦變換轉(zhuǎn)換設(shè)備5可以減少或增加原始離散余弦變換系數(shù)值F′i′j′(u′,v′)的數(shù)量。
如圖1所示,原始離散余弦變換系數(shù)值F′i′j′(u′,v′)所代表的編碼圖像數(shù)據(jù)存儲在存儲器10中。編碼圖像數(shù)據(jù)是按MP@HL或MP@ML編碼的圖像。原始離散余弦變換系數(shù)值F′i′j′(u′,v′)排列在宏塊中,沒有經(jīng)過量子化。原始離散余弦變換系數(shù)值F′i′j′(u′,v ′)被提供給離散余弦變換轉(zhuǎn)換器140,該轉(zhuǎn)換器能將原始離散余弦變換系數(shù)值F′i′j′(u′,v′)映射成轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v),后者代表降低或提高了分辨率的圖像。舉例來說,當(dāng)輸入位流從MP@HL轉(zhuǎn)換成MP@ML,離散余弦變換系數(shù)數(shù)量減少;當(dāng)輸入位流從MP@ML轉(zhuǎn)換成MP@HL時(shí),離散余弦變換系數(shù)數(shù)量增加。經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)存儲在存儲器30中。下面對離散余弦變換轉(zhuǎn)換器140作詳細(xì)的說明。
離散余弦變換轉(zhuǎn)換器140響應(yīng)控制信號CS2將原始離散余弦變換系數(shù)值F′i′j′(u′,v′)映射成經(jīng)轉(zhuǎn)換后的離散余弦變換系數(shù)值Fij(u,v)??刂菩盘朇S2指定了如何改變圖像的分辨率,即將一幅1920×1080的隔行圖像轉(zhuǎn)換成640×540的隔行圖像。響應(yīng)控制信號CS2,原始離散余弦變換系數(shù)值F′i′j′(u′,v′)從存儲器10中被檢索出來;響應(yīng)選擇信號SS1,預(yù)計(jì)算值PCV被從存儲器40中檢索出來。存儲器40可以是隨機(jī)存儲器,也可以是只讀存儲器。
如上文所述,預(yù)計(jì)算值PCV能夠獨(dú)立于原始離散余弦變換系數(shù)值F′i′j′(u′,v′)而被計(jì)算出來。在把原始離散余弦變換系數(shù)值F′i′j′(u′,v′)轉(zhuǎn)換成經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v)之前把預(yù)計(jì)算值PCV保存在存儲器40中。預(yù)計(jì)算值PCV從存儲器40中檢索出來,如下面所說明的。如方程(8)所述,原始離散余弦變換系數(shù)值F′i′j′(u′,v′)乘以相應(yīng)的預(yù)計(jì)算值PCV,再求和,就能在空間頻率域中得出經(jīng)轉(zhuǎn)換的預(yù)計(jì)算值Fij(u,v)。
下面結(jié)合圖2-4詳細(xì)講解離散余弦變換轉(zhuǎn)換器140。首先,在圖2(a)所示的步驟200處,離散余弦變換轉(zhuǎn)換器140響應(yīng)控制信號CS2被設(shè)置以便在空間頻率域中轉(zhuǎn)換原始離散余弦變換系數(shù)值F′i′j′(u′,v′)??刂菩盘朇S2指定了如何改變待轉(zhuǎn)換圖像的分辨率。
原始離散余弦變換系數(shù)值F′i′j′(u′,v′)包含在宏塊中。圖3(a)是一個(gè)數(shù)據(jù)結(jié)構(gòu)圖,顯示了MB0-MB5六個(gè)宏塊,它們組成了待轉(zhuǎn)換圖像的一部分。如圖3(b)所示,每個(gè)宏塊(MB0-MB5)都由六個(gè)塊組成四個(gè)亮度塊b0-b3和兩個(gè)色度塊b4-b5。該格式在MPEG-2標(biāo)準(zhǔn)中被當(dāng)作4∶2∶0。
如圖5(c)所示,b0-b5的每個(gè)塊都包含64個(gè)離散余弦變換系數(shù),每個(gè)被分配了一個(gè)地址值z1,介于0到63之間。替換之,地址值可由原始離散余弦變換系數(shù)值F′i′j′(u′,v′)的空間坐標(biāo)u′、v′來指定。每個(gè)經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v)同樣也包含64個(gè)離散余弦變換系數(shù),每一個(gè)被分配了一個(gè)地址值z,介于0到63之間。通過指定原始離散余弦變換系數(shù)值的地址值z1、第j個(gè)塊(它包含原始離散余弦變換系數(shù)值)、及第i個(gè)宏塊(它包含第j個(gè)塊),原始離散余弦變換系數(shù)值能夠從存儲器10中檢索出。
圖3(a)中的宏塊的轉(zhuǎn)換示于圖4中,其中,像素域中像素代表圖象,它被排列成宏塊MB0-MB5,其中宏塊的格式是幀格式。原始像素值f′i′j′(m,n)位于每個(gè)索引300處,而且經(jīng)轉(zhuǎn)換的像素值f′ij(u,v)位于每個(gè)索引310處,該索引具有填充的圓。在圖4中,原始圖像是1920×1080像素,而經(jīng)轉(zhuǎn)換的圖像是640×540像素。原始圖像在水平上被有效地削減至三分之一,在垂直方向上被有效地削減至二分之一,從而產(chǎn)生分辨率為640×540像素的圖像。確定水平和垂直方向的有效削減因子是通過響應(yīng)控制信號CS2來完成的。在存儲器40中有一套相應(yīng)的預(yù)計(jì)算值PCV與每套水平和垂直削減因子αi,j,x,yi′,j′,m,n相對應(yīng)。正如上文所述,預(yù)計(jì)算值PCV是通過方程(9)計(jì)算出來的,它被保存在存儲器40相應(yīng)的位置,如圖1所示。
接著,在圖2(a)所示的步驟210處,預(yù)計(jì)算值從存儲器40中取出,并提供給離散余弦變換轉(zhuǎn)換器140。根據(jù)宏塊、塊、原始離散余弦變換系數(shù)值及經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值的地址值從存儲器40中將預(yù)計(jì)算值PCV挑選出。預(yù)計(jì)算值保存在存儲器40由地址信號SS1指定的一個(gè)地址處。地址信號SS1提供預(yù)計(jì)算值PCV的地址,從而將第i個(gè)原始宏塊的第j個(gè)塊的第z1個(gè)離散余弦變換系數(shù)值轉(zhuǎn)換成經(jīng)轉(zhuǎn)換的宏塊的第j個(gè)塊的第z個(gè)離散余弦變換系數(shù)值。z1是原始離散余弦變換系數(shù)值的地址值,z是經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值的地址值。
然后,在步驟220,按照方程(8)利用原始離散余弦變換系數(shù)值F′i′j′(u′,v′)和預(yù)計(jì)算值PCV生成經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v)。下面的表0是典型的C代碼,它利用原始離散余弦變換系數(shù)值F′i′j′(u′,v′)和預(yù)計(jì)算值PCV確定經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v)。在表1中,各值是這樣定義的j表示經(jīng)轉(zhuǎn)換的宏塊中第j個(gè)塊;z經(jīng)轉(zhuǎn)換的宏塊中第j個(gè)塊的第z個(gè)離散余弦變換系數(shù)值;i1表示原始宏塊中第i個(gè)宏塊;j1表示第i個(gè)原始宏塊中第j個(gè)塊;z1表示第i個(gè)原始宏塊中第j個(gè)塊的第z1個(gè)離散余弦變換系數(shù)值;map[j][z][i1][j1][z1]表示預(yù)計(jì)算值PCV,用于(1)經(jīng)轉(zhuǎn)換的宏塊的第j個(gè)塊的第z個(gè)離散余弦變換系數(shù)值與(2)第i個(gè)原始宏塊的第j個(gè)塊的第z1個(gè)離散余弦變換系數(shù)值之間的轉(zhuǎn)換;mb_old表示原始宏塊MB0-MB5;mb_new表示經(jīng)轉(zhuǎn)換的宏塊;以及dclip()表示剪裁[-2048,2048]區(qū)域內(nèi)的離散余弦變換系數(shù)值。表1<pre listing-type="program-listing"><![CDATA[dct_mapping(mb_old,mb_new)short mb_old[6][6][64]; /*6輸入MB*/short mb new[6][64];/*1新輸出MB*/{ register double sum; int j,j1,j1,z,z1; int x,y; /*Y,亮度*/ for(j=0;j<4;j++) {/*4個(gè)DCT塊*/for(z=0;z<64;z++) { /*8×8輸出DCT每個(gè)塊的系數(shù)*/sum=0for(i1=0;i1<6;I1++) { /*6輸入MB*/for(j1=0;j1<4;j1++) { /*4個(gè)DCT塊*/for(z1=0;z1<64;z1++) { /*8×8DCT 系數(shù)*/ sum+=(map[j][z][i1][j1][z1]*mb_old[i1][j1][z1]); }} } mb_new[j][z]=dclip(sum); } } /*色度Cr和Cb*/ for(j=4;j<6;j++) { /*每個(gè)Cr和Cb 都有一個(gè)塊*/ for(z=0;z<64;z++) { /*8×8輸出DCT每個(gè)塊的系數(shù)*/sum=0;for(i1=0;i1<6;i1++) { /*6輸入MB*/ for(z1=0;z1<64;z1++){/*8×8輸出DCT 每個(gè)塊的系數(shù)*/ sum+=(mapC[z][i1][z1]*mb_old[i1][z1]); }}mb_new[j][z]=dclip(sum); } }}]]></pre>步驟210和220及表1中的代碼可參照圖2(b)中的流程圖加以解釋。首先,在步驟410處決定生成哪個(gè)經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v)。為將6個(gè)宏塊轉(zhuǎn)換成一個(gè)宏塊,要產(chǎn)生64個(gè)經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值。經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值按順序生成,第一個(gè)經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值被分配的地址值為0,最后一個(gè)地址值為63。于是在步驟415,值Ftemp被置為0。
然后在步驟420,一原始離散余弦變換系數(shù)值F′i′j′(u′,v′)從如圖1所示的存儲器10中取出。圖1的離散余弦變換轉(zhuǎn)換器140為每個(gè)存在存儲器40中的原始離散余弦變換系數(shù)值F′i′j′(u′,v′)保留一個(gè)地址。地址由地址值z1、塊值j1以及原始離散余弦變換系數(shù)值F′i′j′(u′,v′)的宏塊值i1指定。地址值z1標(biāo)記原始離散余弦變換系數(shù)值F′i′j′(u′,v′)之一,值j1指定從哪個(gè)塊檢索原始離散余弦變換系數(shù)值F′i′j′(u′,v′),值i1指定從哪個(gè)宏塊檢索原始離散余弦變換系數(shù)值F′i′j′(u′,v′)。用于從存儲器40中檢索原始離散余弦變換系數(shù)值F′i′j′(u′,v′)的地址由離散余弦變換轉(zhuǎn)換器140產(chǎn)生。
離散余弦變換轉(zhuǎn)換器140根據(jù)方程(8)指定的原始離散余弦變換系數(shù)值F′i′j′(u′,v′)確定檢索哪個(gè)原始離散余弦變換系數(shù)值F′i′j′(u′,v′),并用其計(jì)算下一個(gè)經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v),后者在步驟410確定。
例如在上文表1的代碼中,經(jīng)轉(zhuǎn)換的宏塊的亮度塊產(chǎn)生于每個(gè)原始六宏塊中的每個(gè)離散余弦變換系數(shù)值F′i′j′(u′,v′)。原始離散余弦變換系數(shù)值F′i′j′(u′,v′)按順序從第一原始宏塊的第一個(gè)塊中檢索出來,即每次重復(fù)步驟420,下一個(gè)按順序排列的原始離散余弦變換系數(shù)值就被檢索出。一旦所有的原始離散余弦變換系數(shù)值F′i′j′(u′,v′)都從第一個(gè)塊中檢索出,就開始從第一個(gè)宏塊的下一個(gè)塊中檢索它們。一旦所有的原始離散余弦變換系數(shù)值F′i′j′(u′,v′)都被從第一個(gè)宏塊中檢索出,就開始從下一個(gè)宏塊的第一個(gè)塊中檢索它們。這個(gè)步驟將被重復(fù)執(zhí)行,直到每個(gè)宏塊中的原始離散余弦變換系數(shù)值F′i′j′(u′,v′)都被檢索出。
下一步,在步驟440,離散余弦變換轉(zhuǎn)換器從存儲器40中挑出預(yù)計(jì)算值PCV。如表1中代碼所示,值z、j、z1、j1和i1也同樣用于確定哪個(gè)預(yù)計(jì)算值PCV需要從存儲器40中檢索出。如上文所述,存儲器中存有一個(gè)預(yù)計(jì)算值PCV,它用于在經(jīng)轉(zhuǎn)換的宏塊中第j個(gè)塊的第z個(gè)經(jīng)轉(zhuǎn)換離散余弦變換系數(shù)和第i1個(gè)宏塊中第j1個(gè)塊的第z1個(gè)原始離散余弦變換系數(shù)之間進(jìn)行映射。預(yù)計(jì)算值是利用下面表1-6中的值α按上文所述的步驟在方程(9)中算出。
表2包含的值α用于轉(zhuǎn)換亮度塊b0,表3包含的值α用于轉(zhuǎn)換亮度塊b1,表4包含的值α用于轉(zhuǎn)換亮度塊b2,表5包含的值α用于轉(zhuǎn)換亮度塊b3,表6包含的值α用于轉(zhuǎn)換色度塊b4,表7包含的值α用于轉(zhuǎn)換色度塊b5。預(yù)計(jì)算值PCV產(chǎn)生于表1-6中的值α。
表2α0,0,3x,2y0,0,x,y=1]]>x<3,y<4,偶數(shù)α0,0,3x,2y-10,0x,y=12]]>x<3,y<4,奇數(shù)α0,0,3x,2y+10,0,x,y=12]]>x<3,y<4,奇數(shù)α0,1.3(x-3)+1.2y0,0,x,y=1]]>3<=x<6,y<4,偶數(shù)α0,1.3(x-3)+1.2y-10,0,x,y=12]]>3<=x<6,y<4,奇數(shù)α0,1.3(x-3)+1.2y+10,0,x,y=12]]>3<=x<6,y<4,奇數(shù)α1,0.3(x-6)+2.2y0,0,x,y=1]]>x>=6,y<4,偶數(shù)α1,0.3(x-6)+2.2y-10,0,x,y=12]]>x>=6,y<4,奇數(shù)α1,0.3(x-6)+2.2y+10,0,x,y=12]]>x>=6,y<4,奇數(shù)α0,2,3x,2(y-4)0,0,x,y=1]]>x<3,y>=4,偶數(shù)α0,2,3x,2(y-4)-10,0,x,y,=12]]>x<3,y>=4,奇數(shù)α0,2,3x,2(y-4)+10,0,x,y=12]]>x<3,y>=4,奇數(shù)α0,3,3(x-3)+1,2(y-4)0,0,x,y=1]]>3<=x<6,y>=4,偶數(shù)α0,3,3(x-3)+1,2(y-4)-10,0,x,y=12]]>3<=x<6,y>=4,奇數(shù)α0,3,3(x-3)+1,2(y-4)+10,0,x,y=12]]>3<=x<6,y>=4,奇數(shù)α1,2,3(x-6)+2,2(y-4)0,0,x,y=1]]>x>=6,y>=4,偶數(shù)α1,2,3(x-6)+2,2(y-4)-10,0,x,y=12]]>x>=6,y>=4,奇數(shù)α1,2,3(x-6)+2,2(y-4)+10,0,x,y=12]]>x>=6,y>=4,奇數(shù)表3α1,1,3x,2y0,1,x,y=1]]>x<3,y>=4,偶數(shù)α1,1,3x,2y-10,1,x,y=12]]>x>3,y>=4,奇數(shù)α1,1,3x,2y+10,1,x,y=12]]>x>3,y>=4,奇數(shù)α2,0,3(x-3)+1,2y0,1,x,y=1]]>3<=x<6,y>=4,偶數(shù)α2,0,3(x-3)+1,2y-10,1,x,y=12]]>3<=x<6,y>=4,奇數(shù)α2,0,3(x-3)+1,2y+10,1,x,y=12]]>3<=x<6,y>=4,奇數(shù)α2,1,3(x-6)+2,2y0,1,x,y=1]]>x>=6,y>=4,偶數(shù)α2,1,3(x-6)+2,2y-10,1,x,y=12]]>x>=6,y>=4,奇數(shù)α2,1,3(x-6)+2,2y+10,1,x,y=12]]>x>=6,y>=4,奇數(shù)α1,3,3x,2(y-4)0,1,x,y=1]]>x<3,y>=4,偶數(shù)α1,3,3x,2(y-4)-10,1,x,y=12]]>x>3,y>=4,奇數(shù)α1,3,3x,2(y-4)+10,1,x,y=12]]>x>3,y>=4,奇數(shù)α2,2,3(x-3)+1,2(y-4)0,1,x,y=1]]>3<=x<6,y>=4,偶數(shù)α2,2,3(x-3)+1,2(y-4)-10,1,x,y=12]]>3<=x<6,y>=4,奇數(shù)α2,2,3(x-3)+1,2(y-4)+10,1,x,y=12]]>3<=x<6,y>=4,奇數(shù)α2,3,3(x-6)+2,2(y-4)0,1,x,y=1]]>x>=6,y>=4,偶數(shù)α2,3,3(x-6)+2,2(y-4)-10,1,x,y=12]]>x>=6,y>=4,奇數(shù)α2,3,3(x-6)+2,2(y-4)+10,1,x,y=12]]>x>=6,y>=4,奇數(shù)表4α3,0,3x,2y0,2,x,y=1]]>x<3,y<4,偶數(shù)α3,0,3x,2y-10,2,x,y=12]]>x<3,y<4,奇數(shù)α3,0,3x,2y+10,2,x,y=12]]>x<3,y<4,奇數(shù)α3,1,3(x-3)+1,2y0,2,x,y=1]]>3<=x<6,y<4,偶數(shù)α3,1,3(x-3)+1,2y-10,2,x,y=12]]>3<=x<6,y<4,奇數(shù)α3,1,3(x-3)+1,2y+10,2,x,y=12]]>3<=x<6,y<4,奇數(shù)α4,0,3(x-6)+2,2y0,2,x,y=1]]>x>=6,y<4,偶數(shù)α4,0,3(x-6)+2,2y-10,2,x,y=12]]>x>=6,y<4,奇數(shù)α4,0,3(x-6)+2,2y+10,2,x,y=12]]>x>=6,y<4,奇數(shù)α3,2,3x,2(y-4)=10,2,x,y]]>x<3,y>=4,偶數(shù)α3,2,3x,2(y-4)-10,2,x,y=12]]>x<3,y>=4,奇數(shù)α3,2,3x,2(y-4)+10,2,x,y=12]]>x<3,y>=4,奇數(shù)α3,3,3(x-3)+1,2(y-4)0,2,x,y=1]]>3<=x<6,y>=4,偶數(shù)α3,3,3(x-3)+1,2(y-4)-10,2,x,y=12]]>3<=x<6,y>=4,奇數(shù)α3,3,3(x-3)+1,2(y-4)+10,2,x,y=12]]>3<=x<6,y>=4,奇數(shù)α4,2,3(x-6)+2,2(y-4)0,2,x,y=1]]>x>=6,y>=4,偶數(shù)α4,2,3(x-6)+2,2(y-4)-10,2,x,y=12]]>x>=6,y>=4,奇數(shù)α4,2,3(x-6)+2,2(y-4)+10,2,x,y=12]]>x>=6,y>=4,奇數(shù)表5α4,1,3x,2y0,3,x,y=1]]>x<3,y<4,偶數(shù)α4,1,3x,2y-10,3,x,y=12]]>x<3,y<4,奇數(shù)α4,1,3x,2y+10,3,x,y=12]]>x<3,y<4,奇數(shù)α5,0,3(x-3)+1,2y0,3,x,y=1]]>3<=x<6,y<4,偶數(shù)α5,0,3(x-3)+1,2y-10,3,x,y=12]]>3<=x<6,y<4,奇數(shù)α5,0,3(x-3)+1,2y+10,3,x,y=12]]>3<=x<6,y<4,奇數(shù)α5,1,3(x-6)+2,2y0,3,x,y=1]]>x>=6,y<4,偶數(shù)α5,1,3(x-6)+2,2y-10,5,x,y=12]]>x>=6,y<4,奇數(shù)α5,1,3(x-6)+2,2y+10,5,x,y=12]]>x>=6,y<4,奇數(shù)α4,2,3x,2(y-4)0,3,x,y=1]]>x<3,y>=4,偶數(shù)α4,2,3x,2(y-4)-10,3,x,y=12]]>x>3,y>=4,奇數(shù)α4,2,3x,2(y-4)+10,3,x,y=12]]>x>3,y>=4,奇數(shù)α5,2,3(x-3)+1,2(y-4)0,3,x,y=1]]>3<=x<6,y>=4,偶數(shù)α5,2,3(x-3)+1,2(y-4)-10,3,x,y=12]]>3<=x<6,y>=4,奇數(shù)α5,2,3(x-3)+1,2(y-4)+10,3,x,y=12]]>3<=x<6,y>=4,奇數(shù)α5,3,3(x-6)+2,2(y-4)0,3,x,y=1]]>x>=6,y>=4,偶數(shù)α5,3,3(x-6)+2,2(y-4)-10,3,x,y=12]]>x>=6,y>=4,奇數(shù)α5,3,3(x-6)+2,2(y-4)+10,3,x,y=12]]>x>=6,y>=4,奇數(shù)表6α0,4,3x,2y0,4,x,y=1]]>x<3,y<4,偶數(shù)α0,4,3x,2y-10,4,x,y=12]]>x<3,y<4,奇數(shù)α0,4,3x,2y+10,4,x,y=12]]>x<3,y<4,奇數(shù)α1,4,3(x-3)+1,2y0,4,x,y=1]]>3<=x<6,y<4,偶數(shù)α1,4,3(x-3)+1,2y-10,4,x,y=12]]>3<=x<6,y<4,奇數(shù)α1,4,3(x-3)+1,2y+10,4,x,y=12]]>3<=x<6,y<4,奇數(shù)α2,4,3(x-6)+2,2y0,4,x,y=1]]>x>=6,y<4,偶數(shù)α2,4,3(x-6)+2,2y-10,4,x,y=12]]>x>=6,y<4,奇數(shù)α2,4,3(x-6)+2,2y+10,4,x,y=12]]>x>=6,y<4,奇數(shù)α3,4,3x,2(y-4)0,4,x,y=1]]>x<3,y>=4,偶數(shù)α3,4,3x,2(y-4)-10,4,x,y=12]]>x<3,y>=4,奇數(shù)α3,4,3x,2(y-4)+10,4,x,y=12]]>x<3,y>=4,奇數(shù)α4,4,3(x-3)+1,2(y-4)0,4,x,y=1]]>3<=x<6,y>=4,偶數(shù)α4,4,3(x-3)+1,2(y-4)-10,4,x,y=12]]>3<=x<6,y>=4,奇數(shù)α4,4,3(x-3)+1,2(y-4)-10,4,x,y=12]]>3<=x<6,y>=4,奇數(shù)α5,4,3(x-6)+2,2(y-4)0,4,x,y=1]]>x>=6,y>=4,偶數(shù)α5,4,3(x-6)+2,2(y-4)0,4,x,y=12]]>x>=6,y>=4,奇數(shù)α5,4,3(x-6)+2,2(y-4)+10,4,x,y=12]]>x>=6,y>=4,奇數(shù)表7α0,5,3x,2y0,5,x,y=1]]>x<3,y<4,偶數(shù)α0,5,3x,2y-10,5,x,y=12]]>x<3,y<4,奇數(shù)α0,5,3x,2y+10,5,x,y=12]]>x<3,y<4,奇數(shù)α1,5,3(x-3)+1,2y0,5,x,y=1]]>3<=x<6,y<4,偶數(shù)α1,5,3(x-3)+1,2y-10,5,x,y=12]]>3<=x<6,y<4,奇數(shù)α1,5,3(x-3)+1,2y+10,5,x,y=12]]>3<=x<6,y<4,奇數(shù)α2,5,3(x-6)+2,2y0,5,x,y=1]]>x>=6,y<4,偶數(shù)α2,5,3(x-6)+2,2y-10,5,x,y=12]]>x>=6,y<4,奇數(shù)α2,5,3(x-6)+2,2y+10,5,x,y=12]]>x>=6,y<4,奇數(shù)α3,5,3x,2(y-4)0,5,x,y=1]]>x<3,y>=4,偶數(shù)α3,5,3x,2(y-4)-10,5,x,y=12]]>x<3,y>=4,奇數(shù)α3,5,3x,2(y-4)+10,5,x,y=12]]>x>3,y>=4,奇數(shù)α4,5,3(x-3)+1,2(y-4)0,5,x,y=1]]>3<=x<6,y>=4,偶數(shù)α4,5,3(x-3)+1,2(y-4)-10,5,x,y=12]]>3<=x<6,y>=4,奇數(shù)α4,5,3(x-3)+1,2(y-4)+10,5,x,y=12]]>3<=x<6,y>=4,奇數(shù)α5,5,3(x-6)+2,2(y-4)0,5,x,y=1]]>x>=6,y>=4,偶數(shù)α5,5,3(x-6)+2,2(y-4)-10,5,x,y=12]]>x>=6,y>=4,奇數(shù)α5,5,3(x-6)+2,2(y-4)+10,5,x,y=12]]>x>=6,y>=4,奇數(shù)預(yù)計(jì)算值PCV通過表2至表7的值α計(jì)算得出,用于離散余弦變換系數(shù)值的幀對幀轉(zhuǎn)換。圖11(a)和圖11(b)分別顯示4∶2∶0塊格式中以幀離散余弦變換編碼的亮度宏塊結(jié)構(gòu)和以場離散余弦變換編碼的亮度宏塊結(jié)構(gòu)。在幀編碼的宏塊中,b0-b3每個(gè)塊都由兩個(gè)場交替組成。在場編碼的宏塊中,b0-b3每個(gè)塊都由其中一個(gè)場中的線組成。每種格式的色度宏塊都以幀格式組成。預(yù)計(jì)算值用于將一組幀編碼的宏塊轉(zhuǎn)換成單個(gè)幀編碼的宏塊。預(yù)計(jì)算值同樣可用于將一組場編碼的宏塊轉(zhuǎn)換成單個(gè)場編碼的宏塊。使用預(yù)計(jì)算值進(jìn)行同一類型幀對幀或場對場轉(zhuǎn)換的好處在于可以減小用于保存系數(shù)的存儲器的規(guī)模。
另外,預(yù)計(jì)算值PCV能通過離散余弦變換轉(zhuǎn)換器140由值α中求出。下面的表8是一段偽碼,可以從值α求出預(yù)計(jì)算值。
表810 ifx<=N-1 theny=020 ify<=N-1 thenm=030 ifm<=N-1 thenn=040 ifn<=N-1 thenTMP=α[i][j][m][n]·cos(2x+1)uπ2N·cos(2y+1)vπ2N·]]>cos(2m+1)u′π2N·cos(2n+1)v′π2N]]>PCV=PCV+TMPn=n+1goto 40else m=m+1;goto 30else y=y(tǒng)+1;goto 20
else x=x+1else end在該實(shí)施例中,值α保存在存儲器40中。值α從存儲器40中檢索出,預(yù)計(jì)算值PCV通過表8中的偽碼用轉(zhuǎn)換器140求出。
然后在步驟460,可以計(jì)算出一個(gè)臨時(shí)值Ftemp,方法是先將檢索出的原始離散余弦變換系數(shù)值與預(yù)計(jì)算值PCV相乘求積,再將此積與前一個(gè)臨時(shí)值Ftemp相加求和即可。因?yàn)榻?jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v)可以由若干原始離散余弦變換系數(shù)值F′i′j′(u′,v′)求出,所以如果還需使用原始離散余弦變換系數(shù)值F′i′j′(u′,v′)生成經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v)的話,就可以在步驟470確定它。如果還需要更多的原始離散余弦變換系數(shù)值F′i′j′(u′,v′),將重復(fù)執(zhí)行步驟420。否則,在步驟480處,經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v)就被設(shè)置成與Ftemp相等。然后在步驟490,將確定是否要生成更多的經(jīng)轉(zhuǎn)換宏塊的經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v)。如果需要生成更多的經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v),步驟410將重復(fù)執(zhí)行。
因此,在空間頻率域中可以用原始離散余弦變換系數(shù)值F′i′j′(u′v′)快速生成經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v),且無需將離散余弦變換系數(shù)值轉(zhuǎn)換成像素值。
上文所述的是本發(fā)明的典型實(shí)施例,盡管它探討了使用直接離散余弦變換映射來有效地削減或插值處理MPEG編碼信號,但是直接映射系數(shù)值可以運(yùn)用到任何需要在象素域中對信號進(jìn)行消減和插值處理的系統(tǒng)中,處理的方式是在空間頻率域中直接映射由變換系數(shù)表示的信號。
圖6示出了包含離散余弦變換轉(zhuǎn)換器140的解碼器的總體組成。該解碼器根據(jù)本發(fā)明的另一典型實(shí)施例,將原始離散余弦變換系數(shù)值F′i′j′(u′,v′)映射成轉(zhuǎn)換過的離散余弦變換系數(shù)值Fij(u,v)。如圖6所示,輸入位流IBS被運(yùn)用到可變長度解碼器(VLD)100上。例如,該輸入位流是一個(gè)MP@HL編碼的位流。VLD 100解碼輸入位流IBS,產(chǎn)生成塊的量子化離散余弦變換系數(shù)值QDCT。量子化的離散余弦變換系數(shù)值QDCT被提供給記錄系數(shù)值的反相之字形掃描存儲器110。
采用上文所述的參考MPEG-2規(guī)格指定的格式,每次提供一個(gè)宏塊中的離散余弦變換系數(shù)值。圖5(a)和5(b)示出了兩種不同的之字形掃描模式模式0和模式1。它們均為MPEG-2規(guī)格所使用。在反相之字形掃描存儲器110中,掃描方式的類型被檢測且離散余弦變換系數(shù)值如圖5(c)中所示被重新安排。
接下來,離散余弦變換系數(shù)值被提供給濾波器120。濾波器120是一個(gè)低通濾波器,當(dāng)圖像的分辨率降低時(shí)沿對角線截?cái)嗪陦K,以刪除圖像的高頻成分??刂破?60提供控制信號CS1,決定濾波器120是否起作用。濾波器120用于防止混淆現(xiàn)象發(fā)生。當(dāng)從較低分辨率的圖像產(chǎn)生較高分辨率的圖像時(shí),濾波器120并不為宏塊濾波。
然后,離散余弦變換系數(shù)值在反相量子化器130中被反量子化。反量子化的系數(shù)值,也就是原始離散余弦變換系數(shù)值F′i′j′(u′v′),被儲存在存儲器10中。存儲器10、離散余弦變換轉(zhuǎn)換器140以及存儲器30和40的操作情況如上文所述的第一個(gè)典型實(shí)施例所示??刂破?60為離散余弦變換轉(zhuǎn)換器140提供控制信號CS2。控制信號CS2和上文所述的第一個(gè)典型實(shí)施例中的控制信號CS2相同。
圖7是本發(fā)明的另一個(gè)典型實(shí)施例,用于指示MPEG-2的位流如何通過轉(zhuǎn)換電路。在本實(shí)施例中,除了通過離散余弦變換映射改變圖像的分辨率,也產(chǎn)生目的圖像的新的標(biāo)題信息和運(yùn)動(dòng)向量。在圖7所示的典型實(shí)施例中,原始運(yùn)動(dòng)向量被伸縮,在原始圖像中從宏塊中會(huì)產(chǎn)生適當(dāng)?shù)倪\(yùn)動(dòng)向量以便為其他分辨率的圖像中的新宏塊產(chǎn)生運(yùn)動(dòng)向量。
MPEG-2主概要文件(Main Profile)的基本語法將壓縮過的MPEG-2位流定義為五種層的圖像序列。這五種層分別為序列層,圖形組層,圖形層,切片層,和宏塊層。每個(gè)層都由控制信息被引入序列標(biāo)題(SH)用于序列層,圖形組標(biāo)題(GOPH)用于圖形組層,圖形標(biāo)題(PH)用于圖形層,切片標(biāo)題(SLH)用于切片層,宏塊層標(biāo)題(MBH)用于宏塊層。最后,其他控制信息,又叫輔助信息(例如幀形、宏塊模式、圖像運(yùn)動(dòng)向量、系數(shù)之字形模式和反量子化信息),分布于整個(gè)編碼位流中。
如圖7中所示,包含層及其控制信息的輸入位流IBS被施加到可變長度解碼器(VLD)605上。例如,該輸入位流是一個(gè)MP@HL編碼位流。VLD 605解碼輸入位流IBS,產(chǎn)生多個(gè)量子化的離散余弦變換系數(shù)值。另外,VLD 605通過進(jìn)行反相之字形掃描對記錄量子化的系數(shù)值進(jìn)行重新排序。量子化的離散余弦變換系數(shù)值QDCT被提供給濾波器120。VLD 605也為第一個(gè)轉(zhuǎn)換器610提供序列標(biāo)題SH,為組合器670提供圖形組標(biāo)題GOPH,為第二個(gè)轉(zhuǎn)換器620提供圖形標(biāo)題PH,為第三個(gè)轉(zhuǎn)換器630提供切片標(biāo)題SLH,為第四個(gè)轉(zhuǎn)換器640提供宏塊層標(biāo)題MBH。
第一轉(zhuǎn)換器610、第二轉(zhuǎn)換器620和第三轉(zhuǎn)換器630分別對下列標(biāo)題進(jìn)行了細(xì)微、多數(shù)情況下固定的數(shù)值改變序列標(biāo)題SH、圖形組標(biāo)題GOPH、圖形標(biāo)題PH和切片標(biāo)題SLH,分別與分辨率的改變相對應(yīng)。以下的表9提供了典型的偽碼,作為轉(zhuǎn)換的結(jié)果用于改變標(biāo)題信息。
表9<pre listing-type="program-listing"><![CDATA[ slice() { /*切片頭處理無改變*/ slice start codeif(vertical_size>2800) slice_vertical_position_extension if(<sequence_scalable_extension()是 當(dāng)前的比特流>){ if(scalable_mode=“data partioning”) priority_breakpoint } quantizer_scale_code if(nextbits()=‘1’){ intra_slice_flag intra_slice reserved_bits while(nextbits()=‘1’){ extra_bit_slice /*值為0*/ extra_information_slice } } extra_bit_slice /*值為1*/ slice_modulo=slice_no%M; if(slice_modulo!=M-1){ do{ macroblock(); inverse_quantize(); inverse_DCT(); save_MB_information_slice(slice_modulo,mb); }while(nextbits?。健?00 0000 0000 0000 0000 0000′); } else{/*最后M個(gè)切片*/ do{ macroblock(); inverse_quantize();inverse_dct(); mb_modulo=mb%N; save_MB_information_MB(mb_modulo); if(mb_modulo=N-1){ encode_output(); } }while(nextbits?。健?00 0000 0000 0000 0000 0000′); } next_start_code(); } /*其中,mb=從切片頭開始 的宏的計(jì)數(shù)值*/save_MB_information_slice(slice_modulo,mb) { save macroblock informations at slice_moduloand mb. there are(M-1)slices of macroblock information.} /* 其中, macroblock information={ macroblock_modes={macroblock type, frame/file motion type,dct_type}, quandtizer_scale, motion_vectors, coded block pattern, DCT coefficients }*/save_MB_information_MB(mb_modulo) { 保存宏塊信息到mb modulo. 共有N個(gè)宏塊信息?! ]]></pre>序列標(biāo)題SH、圖形組標(biāo)題GOPH、圖形標(biāo)題PH和切片標(biāo)題SLH根據(jù)大小轉(zhuǎn)換因子改變。該因子被指定用于輸入位流IBS表示的圖像。這些標(biāo)題的格式在參考MPEG-2標(biāo)準(zhǔn)中的6.2和6.3中指定。轉(zhuǎn)換器610-640根據(jù)標(biāo)題控制信號HCS修改SH、GOPH、PH、SLH。HCS指定了輸入圖像分辨率與輸出圖像分辨率之間的變化。
因?yàn)橐呀?jīng)進(jìn)行了大量的處理以產(chǎn)生不同分辨率的圖像,所以在原始圖像中隨宏塊一同提供的運(yùn)動(dòng)向量經(jīng)過消減和插值處理后一般還需要進(jìn)行修正。宏塊是否有運(yùn)動(dòng)向量取決于宏塊是內(nèi)編碼或非內(nèi)編碼。如果使用單幀的信息進(jìn)行編碼,宏塊就是內(nèi)編碼(I型編碼)的。如果使用以往參照場或幀中的動(dòng)態(tài)補(bǔ)償推算(P型編碼)或者使用過去和/或?qū)淼膮⒄請龌驇膭?dòng)態(tài)補(bǔ)償推算(B型編碼)進(jìn)行編碼,就是非內(nèi)編碼。
根據(jù)上文對應(yīng)于圖1所述,原始離散余弦變換系數(shù)值Fi′j′(u ′,v′)被反相量子化器130反量子化,并映射為經(jīng)離散余弦變換轉(zhuǎn)換器140轉(zhuǎn)換過的離散余弦變換系數(shù)值Fij(u,v)。離散余弦變換轉(zhuǎn)換器600的運(yùn)作方式與離散余弦變換轉(zhuǎn)換器140相同,將原始離散余弦變換系數(shù)值轉(zhuǎn)換為經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值。離散余弦變換轉(zhuǎn)換器600執(zhí)行的附加操作(如下文所述)。另外,離散余弦變換轉(zhuǎn)換器600還包括存儲預(yù)計(jì)算值PCV、原始離散余弦變換系數(shù)經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)的存儲器。
原始離散余弦變換系數(shù)值Fi′j′(u′,v′)被提供給離散余弦變換轉(zhuǎn)換器600,以產(chǎn)生轉(zhuǎn)換過的宏塊CMB。在本發(fā)明的典型實(shí)施例中,由分辨率為1920×1024的輸入圖像的兩個(gè)豎直的宏塊和三個(gè)水平宏塊定義的區(qū)域用于產(chǎn)生其分辨率為640×540的編碼輸出圖像單個(gè)宏塊。與該圖形的整個(gè)寬度對應(yīng)的輸入圖像部分被存儲下來。該部分包括一個(gè)或多個(gè)切片,每個(gè)切片都是一系列表示圖像的16根一組的連續(xù)水平線的連續(xù)宏塊。例如,對于一個(gè)MP@HL編碼信號來說,一行240個(gè)連續(xù)的宏塊與一幅圖像的整行相對應(yīng)。
例如,圖3(a)中的宏塊MB0-MB2和MB3-MB5在圖10中顯示時(shí),分別包含在切片A與B中。當(dāng)產(chǎn)生經(jīng)轉(zhuǎn)換的宏塊時(shí),切片A中的宏塊MB0-MB2被儲存在離散余弦變換轉(zhuǎn)換器600的存儲器中(未顯示)。切片B中的宏塊MB3-MB5被提供并存儲在存儲器中,用于與宏塊MB0-MB2相組合。后者從存儲器中取出以產(chǎn)生圖3(c)中所示經(jīng)轉(zhuǎn)換的宏塊CMB。
除了在經(jīng)轉(zhuǎn)換的宏塊CMB中產(chǎn)生經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v),離散余弦變換轉(zhuǎn)換器600也響應(yīng)宏塊的運(yùn)動(dòng)參數(shù)處理的宏塊。圖8中詳細(xì)說明了對宏塊進(jìn)行處理以產(chǎn)生經(jīng)轉(zhuǎn)換宏塊的運(yùn)動(dòng)參數(shù)的電路運(yùn)作情況。
如圖8所示,在步驟700處,離散余弦變換轉(zhuǎn)換器600決定宏塊是內(nèi)編碼的還是非內(nèi)編碼的。如圖4中的范例所示,六個(gè)宏塊MB0-MB5被轉(zhuǎn)換成一個(gè)宏塊CMB。換句話說,包含六個(gè)宏塊MB0-MB5)的圖形的分辨率從每幀1920×640變?yōu)榱嗣繋?40×540。另外,這六個(gè)宏塊MB0-MB5中的每一個(gè)都可以是內(nèi)編碼的或非內(nèi)編碼的宏塊。因此,必須確定基于原始六個(gè)宏塊MB0-MB5的經(jīng)轉(zhuǎn)換宏塊是內(nèi)編碼的還是非內(nèi)編碼的。離散余弦變換轉(zhuǎn)換器600采用了多數(shù)表決原則,利用原始宏塊(MB0-MB6)確定經(jīng)轉(zhuǎn)換的宏塊是非內(nèi)編碼的還是內(nèi)編碼的。
例如,如圖3(a)中所示,如果四個(gè)原始宏塊MB0、MB1、MB2、和MB4是非內(nèi)編碼的,而另兩個(gè)原始宏塊MB3、MB5是內(nèi)編碼的。那么,經(jīng)轉(zhuǎn)換的宏塊是非內(nèi)編碼的。另外,如果四個(gè)原始宏塊MB0、MB1、MB2、MB4是內(nèi)編碼的,而另兩個(gè)原始宏塊MB3、MB5是非內(nèi)編碼的。那么,經(jīng)轉(zhuǎn)換的宏塊就是內(nèi)編碼的。如果三個(gè)原始宏塊MB0、MB1、MB4是非內(nèi)編碼的,而另三個(gè)原始宏塊MB2、MB3、MB5是內(nèi)編碼的。那么,由發(fā)明者決定經(jīng)轉(zhuǎn)換的宏塊編碼類型是非內(nèi)編碼的。
再回到圖8,如果在步驟700處經(jīng)轉(zhuǎn)換的宏塊CMB已確定為內(nèi)編碼宏塊,那么,在步驟710處確定原始宏塊MB0-MB5中哪些是內(nèi)編碼的,哪些是非內(nèi)編碼的。在非內(nèi)編碼的原始宏塊如宏塊MB3和MB5中,取原始離散余弦變換系數(shù)值的平均值作為平均離散余弦變換系數(shù)值。然后,在步驟720處,非內(nèi)編碼宏塊中的每一個(gè)原始離散余弦變換系數(shù)值F′i′j′(u′,v′)被平均離散余弦變換系數(shù)值所替換。例如,產(chǎn)生宏塊MB3中的原始離散余弦變換系數(shù)值F′i′j′(u′,v′)的離散余弦變換平均值,并用其替換宏塊MB3中的每一個(gè)原始離散余弦變換系數(shù)值F′i′j′(u′,v′)。在步驟720之后或步驟710之后,執(zhí)行步驟730。
在步驟730處,確定宏塊MB0-MB5是場的格式還是幀的格式。在步驟740處,如果已確定宏塊MB0-MB5是場的格式,那么宏塊MB0-MB5轉(zhuǎn)換成幀的格式。宏塊的格式轉(zhuǎn)換使得每一個(gè)宏塊能以相同的格式被處理。這就簡化了系統(tǒng)的操作。在可選實(shí)施例中,宏塊MB0-MB5可以由幀的格式轉(zhuǎn)換為場的格式。如下文所述,它們可以場的格式而非幀格式被處理。
對每一個(gè)用于產(chǎn)生經(jīng)轉(zhuǎn)換的宏塊CMB的原始宏塊MB0-MB5,執(zhí)行適當(dāng)?shù)牟襟E710、720、730和740。例如,原始宏塊MB0是場格式,并被內(nèi)編碼。于是,宏塊MB0被處理的順序是首先710,然后是730。如果下一個(gè)宏塊MB1是場格式而且是非內(nèi)編碼的,那么宏塊MB1被處理的順序是710,720,730,740。另外的原始宏塊MB2-MB5中的每一個(gè)要根據(jù)原始宏塊MB0-MB5中的每一個(gè)的格式和編碼方式分別進(jìn)行適當(dāng)處理。
然后,在步驟750處,原始宏塊MB0-MB5中的離散余弦變換系數(shù)被映射成經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)值Fij(u,v)。在步驟750處進(jìn)行的映射和圖2(a)和2(b)中說明的相同。在步驟760,轉(zhuǎn)換后宏塊的量子化伸縮因子Q_scale基于圖像分辨率的改變獲得。
再回到圖7,由離散余弦變換轉(zhuǎn)換器600提供的經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)Fij(u,v)被量子化器650根據(jù)離散余弦變換轉(zhuǎn)換器600產(chǎn)生的量子化伸縮因子Q_scale量子化。如圖8所示,在步驟760處確定的量子化伸縮因子Q_scale和在步驟700處確定的轉(zhuǎn)換后宏塊CMB的編碼類型被提供給第四個(gè)轉(zhuǎn)換器640。宏塊標(biāo)題MB被第四個(gè)轉(zhuǎn)換器640使用轉(zhuǎn)換后宏塊的編碼類型以及量子化伸縮因子Q_scale進(jìn)行修正。最后,對量子化了的轉(zhuǎn)換后離散余弦變換系數(shù)進(jìn)行可變長度編碼。
另一種情況是,如圖8所示,如果在步驟700處就確定了轉(zhuǎn)換后宏塊是非內(nèi)編碼的,那么,如圖9(a)和9(b)所示,原始宏塊MB0-MB5在步驟700、800、810、820處被處理。如圖9(a)中所示,對于步驟700,所有的宏塊900和上文所述一樣被考慮,以確定經(jīng)轉(zhuǎn)換的宏塊是否是內(nèi)編碼的。在如圖8中所示步驟800處,確定轉(zhuǎn)換后宏塊是非內(nèi)編碼類型。在步驟800處,因?yàn)槎鄶?shù)表決推算類型是B型,所以P類型的MB被放棄。如圖9(a)中所示,只有非內(nèi)編碼的宏塊910被用于確定編碼類型。如步驟700中所述,多數(shù)表決原則被用于確定編碼類型。在圖9(a)中,多數(shù)表決編碼類型是B型。因此,經(jīng)轉(zhuǎn)換的宏塊CMB被編碼為B型。然后,在如圖8中所示和圖9(a)中所說明的步驟810處,僅有B型宏塊920用于確定運(yùn)動(dòng)決定類型場推算或幀推算。在步驟810處,會(huì)放棄一個(gè)B型塊,因?yàn)樗褂昧嘶趲耐扑惴绞?,而其他塊使用的是基于場的推算方式。
在場推算中,使用來自一個(gè)或多個(gè)以前已解碼的場中的數(shù)據(jù),對每個(gè)場獨(dú)立進(jìn)行推算。幀推算為來自一個(gè)或多個(gè)開始時(shí)已解碼的幀中的幀進(jìn)行推算。相應(yīng)地,基于步驟800處選擇的原始宏塊的場格式和幀格式,為經(jīng)轉(zhuǎn)換的宏塊CMB選擇場推算或幀推算。多數(shù)表決原則用于選擇場推算或幀推算。如圖9(a)中所示,因?yàn)樵己陦KMB0、MB2、MB4占多數(shù)并使用場推算編碼,所以在步驟810處選擇場推算方式。最后,在步驟820,使用剩余宏塊930選擇轉(zhuǎn)換后宏塊的運(yùn)動(dòng)向量。如圖8中所示步驟800和810,多數(shù)表決原則被用于選擇運(yùn)動(dòng)向量。
如果沒有可以確定推算類型的多數(shù)的情況下,推算類型的選擇按以下順序由先到后雙向推算、前推算,以及后推算。例如,如果只剩兩個(gè)宏塊用于選擇推算類型,并且一個(gè)使用雙向編碼,另一個(gè)使用前編碼,那么經(jīng)轉(zhuǎn)換的宏塊選擇的推算類型是雙向推算。
如果沒有可以確定運(yùn)動(dòng)類型的多數(shù)的情況下,轉(zhuǎn)化后的宏塊選擇的運(yùn)動(dòng)類型是幀類型。如果沒有可以確定運(yùn)動(dòng)向量的多數(shù)的情況下,如圖8所示,在步驟820處被處理的第一個(gè)宏塊的第一個(gè)運(yùn)動(dòng)向量會(huì)成為轉(zhuǎn)換后宏塊CMB的選擇運(yùn)動(dòng)向量。
圖9(b)是另一個(gè)數(shù)據(jù)結(jié)構(gòu)圖,說明的是響應(yīng)不同的輸入宏塊MB0-MB5在圖8中的步驟700、800、810、820的運(yùn)作情況。在圖9(b)中,多數(shù)宏塊采用非內(nèi)編碼。如圖8中所示,非內(nèi)編碼宏塊MB0-MB4在步驟800使用,以確定推算類型P型編碼。然后,如圖8中所示和圖9(b)中說明,在步驟810處,只有P型編碼的宏塊MB1、MB2、MB3用于確定運(yùn)動(dòng)決定類型為幀推算。最后,在步驟820處,轉(zhuǎn)換后宏塊的運(yùn)動(dòng)向量通過使用幀推算P型宏塊MB1與MB3選擇。
接下來,如圖8中所示的步驟830處,對原始宏塊MB0-MB5的每一個(gè)確定原始宏塊MB0-MB5是否有與轉(zhuǎn)換后宏塊CMB相同的推算類型、運(yùn)動(dòng)類型和運(yùn)動(dòng)向量。每一個(gè)擁有不同推算類型、運(yùn)動(dòng)類型、和運(yùn)動(dòng)向量的原始宏塊MB0-MB5在步驟860處將剩余原始系數(shù)值設(shè)為零。否則,接下來在步驟840處決定原始宏塊是幀格式還是場格式。然后,在步驟750處,一旦在步驟850處將宏塊轉(zhuǎn)換成幀格式,或者如果宏塊已經(jīng)是幀格式,離散余弦變換映射在步驟750處進(jìn)行如上文所述。
當(dāng)圖像的分辨率提高時(shí),宏塊的數(shù)目也增多。在這種情況下,同樣的方法也用于選擇轉(zhuǎn)換后宏塊的內(nèi)編碼或非內(nèi)編碼的編碼方式、運(yùn)動(dòng)類型、推算、類型以及運(yùn)動(dòng)向量。轉(zhuǎn)換后宏塊的離散余弦變換系數(shù)通過以下方式產(chǎn)生直接映射原始宏塊的離散余弦變換系數(shù)以增加離散余弦變換系數(shù)的數(shù)目。
接下來,在步驟760,量子化伸縮Q_scale因子的取得是通過對用于產(chǎn)生轉(zhuǎn)換后宏塊CMB的原始宏塊MB0-MB5的量子化伸縮因子平均值實(shí)現(xiàn)的。圖7中所示量子化器650將量子化伸縮因子Q_scale因子運(yùn)用到經(jīng)轉(zhuǎn)換的離散余弦變換系數(shù)上以產(chǎn)生量子化的離散余弦變換系數(shù)值QDCT′。
接下來,圖7所示的轉(zhuǎn)換器640為經(jīng)轉(zhuǎn)換的量子化系數(shù)值QDCT′產(chǎn)生一個(gè)經(jīng)轉(zhuǎn)換的宏塊標(biāo)題。圖8中顯示了以下內(nèi)容來自步驟700的內(nèi)編碼或非內(nèi)編碼宏塊類型決定、來自步驟800的推算類型決定、來自步驟810的運(yùn)動(dòng)類型決定和來自步驟820的運(yùn)動(dòng)向量。這些來自離散余弦變換轉(zhuǎn)換器600的內(nèi)容被提供給轉(zhuǎn)換器640。量子化器650提供Q-scale因子。如表9中所示,轉(zhuǎn)換器640使用顯示在圖8中來自步驟700的內(nèi)編碼/非內(nèi)編碼宏塊類型決定、來自步驟800的推算類型決定、來自步驟810的運(yùn)動(dòng)類型決定和來自步驟820的運(yùn)動(dòng)向量、以及量子化伸縮因子Q_scale產(chǎn)生經(jīng)轉(zhuǎn)換的宏塊標(biāo)題。
如圖7中所示,序列標(biāo)題SH、圖形組標(biāo)題GOPH、圖形標(biāo)題PH、切片標(biāo)題SLH和宏塊層標(biāo)題MBH在組合器670處與來自VLC660的可變長度編碼信號組合起來,產(chǎn)生一個(gè)輸出位流OBS。例如,輸出位流是一個(gè)MPEG-2MP@ML編碼信號。
盡管在上述特定的實(shí)施例中已對本發(fā)明進(jìn)行了說明和描述,本發(fā)明并不局限在所示的細(xì)節(jié)內(nèi)。另外,在權(quán)利要求的范疇和本發(fā)明的精神實(shí)質(zhì)內(nèi),可實(shí)現(xiàn)細(xì)節(jié)的多種變化。
權(quán)利要求
1.一種將圖像的第一分辨率變換成第二分辨率的設(shè)備,其中,多個(gè)第一空間頻率系數(shù)值對應(yīng)于具有所述第一分辨率的圖像,多個(gè)第二空間頻率系數(shù)值對應(yīng)于具有所述第二分辨率的圖像,該設(shè)備特征在于包括用于儲存多個(gè)預(yù)計(jì)算值的存儲器裝置,所述多個(gè)預(yù)計(jì)算值決定圖像的所述第一分辨率到所述第二分辨率的變化;以及通過在空間頻率域中將所述多個(gè)第一空間頻率系數(shù)值映射到所述多個(gè)第二空間頻率系數(shù)值上以直接轉(zhuǎn)換圖像分辨率的轉(zhuǎn)換器裝置,該裝置包括(a)將所述預(yù)計(jì)算值與所述多個(gè)第一空間頻率系數(shù)值組合在一起以產(chǎn)生處理后的值的裝置;以及(b)將所述處理后的值組合在一起以至少產(chǎn)生一個(gè)第二空間頻率系數(shù)值的裝置。
2.根據(jù)權(quán)利要求1所述的設(shè)備,其中所述的轉(zhuǎn)換器的裝置還包括將一個(gè)預(yù)計(jì)算值與一個(gè)空間頻率系數(shù)值相乘的裝置;將另一個(gè)預(yù)計(jì)算值與一個(gè)空間頻率系數(shù)值相乘的裝置;以及將相乘所得的值加在一起產(chǎn)生一個(gè)第二空間頻率系數(shù)值的裝置。
3.根據(jù)權(quán)利要求1所述的設(shè)備,其中所述的轉(zhuǎn)換器裝置包括將第一個(gè)第一預(yù)計(jì)算值與第一個(gè)第一空間頻率系數(shù)值相乘以產(chǎn)生第一個(gè)中間值的裝置;將第二個(gè)第一預(yù)計(jì)算值與第二個(gè)第一空間頻率系數(shù)值相乘以產(chǎn)生第二個(gè)中間值的裝置;以及將所述第一個(gè)和第二個(gè)中間值組合在一起產(chǎn)生一個(gè)第二空間頻率系數(shù)值的裝置。
4.根據(jù)權(quán)利要求1所述的設(shè)備,其中所述的轉(zhuǎn)換器裝置從所述存儲器裝置中獲得所述預(yù)計(jì)算值。
5.根據(jù)權(quán)利要求1所述的設(shè)備,其中所述多個(gè)第一空間頻率系數(shù)值與所述多個(gè)第二空間頻率系數(shù)值都是離散余弦變換系數(shù)。
6.根據(jù)權(quán)利要求5所述的設(shè)備,其中所述多個(gè)第一空間頻率系數(shù)值以成塊的宏塊方式安排,所述多個(gè)第二空間頻率系數(shù)值以經(jīng)轉(zhuǎn)換的宏塊的轉(zhuǎn)換后塊的方式安排,其中一個(gè)預(yù)計(jì)算值被用來將第i1個(gè)宏塊的第j1個(gè)塊的第z1個(gè)離散余弦變換系數(shù)值映射成第i個(gè)轉(zhuǎn)換后宏塊的第j個(gè)轉(zhuǎn)換后塊的第個(gè)離散余弦變換系數(shù)值,其中,z1,j1,il,z,j,和i是整數(shù)。
7.根據(jù)權(quán)利要求5所述的設(shè)備,其中所述具有第一分辨率的圖像由MPEG主概要文件和包括多個(gè)第一空間頻率系數(shù)值的高級信號表示,所述具有第二分辨率的圖像由所述MPEG主概要文件和包括多個(gè)第二空間頻率系數(shù)值的主級信號表示,轉(zhuǎn)換器裝置用于將所述MPEG主概要文件和所述高級信號轉(zhuǎn)換成MPEG主概要文件和主級信號。
8.根據(jù)權(quán)利要求5所述的設(shè)備,其中所述具有第一分辨率的圖像由MPEG主概要文件和包括所述多個(gè)第一空間頻率系數(shù)值的主級信號表示,所述具有第二分辨率的圖像由所述MPEG主概要文件和包括所述多個(gè)第二空間頻率系數(shù)值的高級信號表示,轉(zhuǎn)換器裝置用于將所述MPEG主概要文件和所述高級信號轉(zhuǎn)換成MPEG主概要文件和主級信號。
9.根據(jù)權(quán)利要求1所述的設(shè)備,其中所述多個(gè)第一空間頻率系數(shù)值包括與所述圖像中的空間高頻成分相對應(yīng)的高頻空間頻率系數(shù)值,本設(shè)備還包括濾波器裝置,用于通過去除高頻空間頻率系數(shù)值的方式刪去圖像中的空間高頻成分。
10.根據(jù)權(quán)利要求1所述的設(shè)備,其中所述預(yù)計(jì)算值表示空間頻率域中的轉(zhuǎn)換系數(shù)組合,從而轉(zhuǎn)換在象素域中相當(dāng)于相應(yīng)象素插值的所述多個(gè)第一空間頻率系數(shù)值。
11.用于對MPEG編碼的圖像進(jìn)行解碼和改變編碼圖像分辨率的解碼器,其特征在于包括可變長度解碼裝置,用于接收和解碼包含離散余弦變換值的輸入信號,該離散余弦變換值定義了圖像的第一分辨率;用于將所述離散余弦變換值反量子化的反量子化裝置;以及儲存多個(gè)預(yù)計(jì)算值的存儲器裝置,所述多個(gè)預(yù)計(jì)算值決定編碼的圖像從第一分辨率到的第二分辨率改變;通過在空間頻率域中將離散余弦變換系數(shù)值映射到多個(gè)經(jīng)轉(zhuǎn)換的系數(shù)值上,從而直接轉(zhuǎn)換編碼圖像分辨率的轉(zhuǎn)換器裝置,該轉(zhuǎn)換裝置包括(a)將所述預(yù)計(jì)算值與離散余弦變換系數(shù)值組合起來以產(chǎn)生處理后的值的裝置;以及(b)將所述處理后的值組合在一起以產(chǎn)生至少一個(gè)經(jīng)轉(zhuǎn)換的系數(shù)值的裝置。
12.一種將圖像的分辨率從第一分辨率變換成第二分辨率的方法,其中,多個(gè)第一空間頻率系數(shù)值與具有所述第一分辨率的圖像對應(yīng),第二空間頻率系數(shù)值與具有所述第二分辨率的圖像對應(yīng),該方法的特征在于包括以下步驟(a)儲存多個(gè)預(yù)計(jì)算值,所述多個(gè)預(yù)計(jì)算值決定從所述第一分辨率轉(zhuǎn)換成所述第二分辨率的過程中圖像分辨率的變化;以及(b)通過在所述空間頻率域中將所述第一空間頻率系數(shù)值映射到所述第二空間頻率系數(shù)值上的方式直接轉(zhuǎn)換所述圖像的分辨率,步驟(b)中包括以下步驟將所述預(yù)計(jì)算值應(yīng)用到所述第一空間頻率系數(shù)值上以產(chǎn)生處理后的值;以及將所述處理后的值組合起來至少產(chǎn)生一個(gè)第二空間頻率系數(shù)值。
13.根據(jù)權(quán)利要求12所述的方法,其中所述步驟(b)包括以下步驟將第一個(gè)第一預(yù)計(jì)算值與第一個(gè)第一空間頻率系數(shù)值相乘以產(chǎn)生第一個(gè)中間值;將第二個(gè)第一預(yù)計(jì)算值與第二個(gè)第一空間頻率系數(shù)值相乘以產(chǎn)生第二個(gè)中間值;以及將所述第一個(gè)中間值與第二個(gè)中間值組合起來產(chǎn)生一個(gè)第二空間頻率系數(shù)值。
14.根據(jù)權(quán)利要求12所述的方法,其中所述第一空間頻率系數(shù)值和第二空間頻率系數(shù)值都是離散余弦變換系數(shù)。
15.根據(jù)權(quán)利要求12所述的方法,其中所述預(yù)計(jì)算值表示所述空間頻率域中的轉(zhuǎn)換系數(shù)的組合,用于轉(zhuǎn)換在象素域中相當(dāng)于相應(yīng)象素插值的第一空間頻率系數(shù)值。
全文摘要
一種在空間頻率域中進(jìn)行運(yùn)算以便將圖像的第一分辨率變換為第二分辨率的設(shè)備。在空間頻率域中,第一組變換值被映射成第二組變換值。前者表示采用第一種圖像分辨率的圖像,后者表示采用第二種圖像分辨率的圖像。該設(shè)備包括已被儲存的預(yù)計(jì)算值,它們是介于第一組變換值和第二組變換值之間的映射系數(shù)值。預(yù)計(jì)算值從存儲器中獲得并被用于在空間頻率域中將第一組變換值直接變換為第二組變換值。
文檔編號H04N7/26GK1182331SQ9710049
公開日1998年5月20日 申請日期1997年1月29日 優(yōu)先權(quán)日1996年1月29日
發(fā)明者金和永 申請人:松下電器產(chǎn)業(yè)株式會(huì)社