專利名稱:用于運(yùn)動圖象的預(yù)測宏塊數(shù)據(jù)存取轉(zhuǎn)換的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種用來對運(yùn)動圖象進(jìn)行解碼和編碼的預(yù)測宏塊的存取轉(zhuǎn)換技術(shù),更詳細(xì)地說是涉及一種從一幀存貯器輸出預(yù)測宏塊數(shù)據(jù)的存取轉(zhuǎn)換方法和裝置,該預(yù)測宏塊數(shù)據(jù)存貯在一單獨(dú)的存貯單元中,并按照一適于處理隨后的預(yù)測宏塊的順序而讀出。
運(yùn)動圖象編碼是一種利用運(yùn)動補(bǔ)償預(yù)測、離散余弦變換(DCT)和變長編碼(VLC)對運(yùn)動圖象進(jìn)行壓縮和復(fù)原的技術(shù)。
圖1是一種一般的運(yùn)動圖象解碼器的方框圖。一變長解碼器10接收變長編碼的數(shù)據(jù)并通過反向處理對它解碼。一逆DCT部分20將一頻率區(qū)域的被解碼數(shù)據(jù)變換成一空間區(qū)域的視頻數(shù)據(jù)。一運(yùn)動補(bǔ)償器30讀取與來自一幀存貯器40中存貯的一先前幀的視頻數(shù)據(jù)的運(yùn)動矢量相應(yīng)的一宏塊,并將該讀取的宏塊加到逆離散余弦變換的數(shù)據(jù)上,從而輸出被運(yùn)動補(bǔ)償和復(fù)原了的運(yùn)動圖象數(shù)據(jù)。
運(yùn)動圖象的數(shù)據(jù)壓縮是由在圖象之間的差值的DCT和VLC來執(zhí)行的??紤]到圖象間的移動,從以16象素×16行的Y、8象素×8行的U和8象素×8行的V所組成的宏塊為單位的一參考圖象中求出一運(yùn)動失量。然后,利用具有該運(yùn)動矢量的位置的一預(yù)測宏塊提高壓縮率,這種方法稱之為運(yùn)動補(bǔ)償預(yù)測方法。
在該運(yùn)動補(bǔ)償預(yù)側(cè)方法中,預(yù)測宏塊數(shù)據(jù)從一幀存貯器中讀出,并且該讀出的預(yù)測宏塊數(shù)據(jù)通過水平插值、垂直插值、前向預(yù)測和后向預(yù)測而被過濾。
但是,因?yàn)閺囊粠尜A器中讀取的預(yù)測宏塊數(shù)據(jù)的次序與被用于一被過濾處理的數(shù)據(jù)的次序在傳統(tǒng)運(yùn)動圖象解碼方法中是不匹配的,所以該預(yù)測宏塊數(shù)據(jù)的存取時間被延遲。
為了解決上面的問題,本發(fā)明的目的是提供一種用于運(yùn)動圖象的預(yù)測宏塊數(shù)據(jù)的存取轉(zhuǎn)換方法和裝置,其中從一幀存貯器中輸出的該預(yù)測宏塊數(shù)據(jù)按照一輸出次序被存貯在一單獨(dú)的存貯單元中,并且所存貯的預(yù)測宏塊數(shù)據(jù)按照一使用的次序從該存貯單元中輸出,以便存取該預(yù)測宏塊數(shù)據(jù)。
為了達(dá)到本發(fā)明的上述目的,提供了一種對被存貯在一幀存貯器中并用來對運(yùn)動圖象進(jìn)行解碼和編碼的預(yù)測宏塊數(shù)據(jù)的存取轉(zhuǎn)換方法,該存取轉(zhuǎn)換方法包括以下步驟在一單獨(dú)存貯單元上記錄該幀存貯器輸出的預(yù)測宏塊數(shù)據(jù);和按照一適于處理來自該單獨(dú)存貯單元的隨后的預(yù)測宏塊的次序來讀取該被記錄的預(yù)測宏塊數(shù)據(jù)。
還提供了一種存貯在一幀存貯器中并用來解碼和編碼運(yùn)動圖象的預(yù)測宏塊數(shù)據(jù)的存取轉(zhuǎn)換裝置,該存取轉(zhuǎn)換裝置包括預(yù)測宏塊存取轉(zhuǎn)換裝置,該裝置被連接在該幀存貯器和一運(yùn)動補(bǔ)償器之間,用來解碼和編碼該運(yùn)動圖象、用來記錄其上的預(yù)測宏塊數(shù)據(jù)和按照由該運(yùn)動補(bǔ)償器所使用的次序來輸出該被記錄的預(yù)測宏塊數(shù)據(jù)。
本發(fā)明的優(yōu)選實(shí)施例參考如下附圖加以說明圖1是一種一般運(yùn)動圖象解碼器的方框圖。
圖2是根據(jù)本發(fā)明的一實(shí)施例的運(yùn)動圖象解碼器的方框圖。
圖3是圖2中所示的預(yù)測宏塊存取轉(zhuǎn)換器的一詳細(xì)方框圖。
圖4A到4C是在一幀預(yù)測組中的預(yù)測宏塊的示意圖。
圖5A到5C是在一場預(yù)測組中的預(yù)測宏塊的示意圖。
圖6示出了根據(jù)本發(fā)明的一實(shí)施例的一預(yù)測宏塊存貯器的結(jié)構(gòu)。
圖7是為了存取該預(yù)測宏塊存貯器通過一寫地址和一讀地址對一第一區(qū)域和第二區(qū)域進(jìn)行選擇的定時圖。
圖8示出了一幀預(yù)測組被存貯在本發(fā)明的預(yù)測宏塊存貯器的一區(qū)域中的一種狀態(tài)的圖。
圖9A和9B示出了為按如圖8中所示的次序讀和寫數(shù)據(jù)而從一地址發(fā)生器產(chǎn)生的地址。
圖10示出了一場預(yù)測組被存貯在本發(fā)明的預(yù)測宏塊存貯器的一區(qū)域中的一種狀態(tài)。
圖11A和11B示出了為按如圖10中所示的順序讀和寫數(shù)據(jù)而自一地址發(fā)生器產(chǎn)生的地址。
下面參考附圖對本發(fā)明的的優(yōu)選實(shí)施例作更詳細(xì)的說明。
圖2示出了根據(jù)本發(fā)明的一優(yōu)選實(shí)施例的一運(yùn)動圖象解碼器,其中的變長解碼器10、逆DCT部分20和幀存貯器40與圖1所示相同。
為了作運(yùn)動補(bǔ)償,在該幀存貯器40中存貯的在前面的視頻數(shù)據(jù)作為由一運(yùn)動矢量所指定的預(yù)測宏塊數(shù)據(jù)而被輸出。
在圖2的實(shí)施例中,一預(yù)測宏塊存取變換器50被設(shè)置在幀存貯器40和一運(yùn)動補(bǔ)償器30之間。該預(yù)測宏塊存取變換器50按照預(yù)測宏塊數(shù)據(jù)從幀存貯器40輸出的順序來存貯該預(yù)測宏塊數(shù)據(jù),并按它在運(yùn)動補(bǔ)償器30的一預(yù)測宏塊過濾器32中使用的順序來將其輸出。該預(yù)測宏塊過濾器32基于自該預(yù)測宏塊存取變換器50所輸出的預(yù)測宏塊數(shù)據(jù)來執(zhí)行諸如水平插值、垂直插值、前向預(yù)測和后向預(yù)測的過濾。一加法器31根據(jù)自變長解碼器10輸出的運(yùn)動矢量、自預(yù)測宏塊過濾器32輸出的預(yù)測宏塊數(shù)據(jù)和逆DCT處理過的數(shù)據(jù)而輸出復(fù)原的運(yùn)動圖象數(shù)據(jù)。
圖3是圖2所示的預(yù)測宏塊存取變換器50的一詳細(xì)框圖。該預(yù)測宏塊存取變換器50包括一地址發(fā)生器51和一預(yù)測宏塊存貯器52。該地址發(fā)生器51和一預(yù)測宏塊存貯器52。該地址發(fā)生器51順序向該預(yù)測宏塊存貯器52產(chǎn)生一寫水平地址、一寫垂直地址、一讀水平地址和一讀垂直地址。該預(yù)測宏塊存貯器52根據(jù)自地址發(fā)生器51輸入的寫水平地址和寫垂直地址存貯自幀存貯器40輸出的預(yù)測宏塊數(shù)據(jù),并且根據(jù)從地址發(fā)生器51輸入到其中的讀水平地址和讀垂直地址輸出所存貯的預(yù)測宏塊數(shù)據(jù)。
下面,以使用一幀圖象和一場圖象的運(yùn)動補(bǔ)償預(yù)測方法為例,詳細(xì)說明與該幀存貯器的數(shù)據(jù)總線為128比特,即16象素時的該預(yù)測宏塊存貯器52的結(jié)構(gòu)和自地址發(fā)生器51所產(chǎn)生的地址。
當(dāng)運(yùn)動編碼是以幀為單元執(zhí)行時,該幀稱之為一幀圖象,而當(dāng)該運(yùn)動編碼是以場為單元執(zhí)行時,該場稱之為一場圖象。
使用幀圖象的運(yùn)動補(bǔ)償預(yù)測方法被分為場預(yù)測、幀預(yù)測和雙主用(dual-prume)預(yù)測。使用場圖象的運(yùn)動補(bǔ)償預(yù)測方法被分為場預(yù)測、16×8MC預(yù)測和雙主用預(yù)測。在它們之中,在該幀圖象中的幀預(yù)測和在該場圖象中的場預(yù)測和雙主用預(yù)測均具有一具有分別由16象素×16行組成的Y、由8象素×8行組成的U和由8象素×8行組成的V的預(yù)測單元。在該幀圖象中的場預(yù)測和在該場圖象中的雙主用預(yù)測和16×8MC預(yù)測具有一具有分別由16象素×8行組成的Y、由8象素×4行組成的U和由8象素×4行組成的V的一預(yù)測單元。前者稱之為“幀預(yù)測組”而后者稱之為“場預(yù)測組”。
圖4A至4C是在一幀預(yù)測組中的預(yù)測宏塊的示意圖。圖4A示出了在該幀預(yù)測組中的一Y預(yù)測宏塊。圖4B示出了在一幀預(yù)測組中的一U預(yù)測宏塊。圖4C示出了在一幀預(yù)測組中的一V預(yù)測宏塊。因?yàn)檫\(yùn)動矢量具有半象素單元,所以該幀預(yù)測組應(yīng)讀取具有由17象素×17行組成的Y、由9象素×9行組成的U和由9象素×9行組成的V的數(shù)據(jù),以執(zhí)行半象素單元預(yù)測。
圖5A到5C是在一場預(yù)測組中的預(yù)測宏塊的示意圖。圖5A示出了在該場預(yù)測組中的一Y預(yù)測宏塊。圖5B示出了在該場預(yù)測組中的U預(yù)測宏塊。圖5C示出了在該場預(yù)測組中的一V預(yù)測宏塊。因?yàn)檫\(yùn)動矢量具有半象素單元,所以該場預(yù)測組將讀取具有由17象素×9行組成的Y、由9象素×5行組成的U和由9象素×5行組成的V的數(shù)據(jù),以執(zhí)行半象素單元預(yù)測。
圖6示出了根據(jù)本發(fā)明一實(shí)施例的一預(yù)測宏塊存貯器的結(jié)構(gòu)。參見圖6,在本發(fā)明中所使用的該預(yù)測宏塊存貯器被分成一第一區(qū)域和一第二區(qū)域。因此,可同時執(zhí)行接收來自幀存貯器40的數(shù)據(jù)和從預(yù)測宏塊存貯器52輸出該數(shù)據(jù)。首先,數(shù)據(jù)被寫入該第一區(qū)域,并且隨后在第二區(qū)域中寫入數(shù)據(jù)期間輸出在第一區(qū)域中所存貯的該數(shù)據(jù)。隨后,數(shù)據(jù)被寫入第一區(qū)域中并同時輸出在第二區(qū)域中存貯的數(shù)據(jù)。
圖7是一表示為了存取該預(yù)測宏塊存貯器而通過一寫地址和一讀地址來選擇第一區(qū)域和第二區(qū)域的定時圖。如圖7所示,在第一區(qū)域的寫入數(shù)據(jù)期間,輸出在第二區(qū)域中存貯的數(shù)據(jù),而在輸出第一區(qū)域中所存貯的數(shù)據(jù)期間,在第二區(qū)域中寫入數(shù)據(jù)。
因?yàn)閺脑搸尜A器輸出的是一16象素單元,所以給在每一區(qū)域的水平方向上的每個16象素單元賦予一水平地址。因?yàn)樵赮信號情況下自該幀存貯器中應(yīng)讀出17象素數(shù)據(jù),所以兩個16象素單元被用來存貯一個預(yù)測宏塊??紤]到前向和后向預(yù)測宏塊數(shù)據(jù),在水平方向上將至少存貯兩個預(yù)測宏塊。在圖6中,在水平方向上存貯四個字的前向和后向預(yù)測宏塊。另外,在幀預(yù)測組的情況下,至少存貯由17行Y和9行U或V組成的26行。在場預(yù)測組的情況下,至少存貯由9行Y和5行U或V組成的14行。本發(fā)明提出了28行的預(yù)測宏塊存貯器以便適合于該幀預(yù)測組和該場預(yù)測組兩種情況。因?yàn)?,如圖6所示,根據(jù)本發(fā)明的預(yù)測宏塊存貯器在垂直方向上具有28行并給每一行賦予一垂直地址。
現(xiàn)在說明從幀存貯器輸出的數(shù)據(jù)被寫入具有如圖6所示結(jié)構(gòu)的預(yù)測宏塊存貯器時的寫入順序和自該預(yù)測宏塊存貯器輸出時的輸出順序。
圖8示出了根據(jù)本發(fā)明的在該預(yù)測宏塊存貯器的一區(qū)域中存貯的幀預(yù)測組的狀態(tài)。如圖8所示,Y信號的左16象素被寫入具有為0的水平地址和0-16的垂直地址的部分而Y信號的右16象素被寫入具有1的水平地址和0-16的垂直地址的部分。然后,C信號(U或V)的左8象素被寫入具有0水平地址和17-25垂直地址的部分,并且C信號(U或V)的右8象素被寫入具有1水平地址和17-25垂直地址的部分。如上所述,按照上述順序前向預(yù)測宏塊被寫入具有0和1的水平地址的部分,而反向宏塊被寫入具有2和3的水平地址的部分。在圖8中,數(shù)據(jù)被寫入該預(yù)測宏塊的順序表示為①②③④⑤⑥⑦⑧。
當(dāng)數(shù)據(jù)從該預(yù)測宏塊存貯器讀出時,下述步驟更為可取即對于Y信號讀取前向和后向宏塊數(shù)據(jù),并且對于C信號(U或V)讀出前者。因此,在圖8中,從該預(yù)測宏塊存貯器讀出數(shù)據(jù)的順序表示為 圖9A和9B示出了為了按圖8所示的順序?qū)懭牒妥x出數(shù)據(jù)而自該地址發(fā)生器所產(chǎn)生的地址。圖9A示出了寫地址,圖9B示出了讀地址,更詳細(xì)地說,相對于垂直地址為0,水平地址為0和1分別代表在該前向預(yù)測宏塊中該Y信號的第一行中的左16象素和右16象素。如圖9A所示,首先寫入前向預(yù)測宏塊的Y信號和C信號,然后寫入后向宏塊的Y信號和C信號。參見圖9B,可以看出用0的垂直地址可以進(jìn)行對0,1,2和3的水平地址的存取,這表示被記錄在具有0的垂直地址及0和1的水平地址的部分中的前向預(yù)測宏塊中的Y信號的左和右16象素被讀取,并且隨后被記錄在具有0的垂直地址及2和3的水平地址的部分中的后向預(yù)測宏塊中的Y信號的左和右16象素被讀取。因此,對于Y信號讀取該前向和后向宏塊數(shù)據(jù),并且隨后對于C信號(U或V)讀取前向和后向宏塊數(shù)據(jù)。
圖10示出了根據(jù)本發(fā)明存貯在預(yù)測宏塊存貯器中的一區(qū)域中的一場預(yù)測組的狀態(tài)。如圖10所示,在具有0的水平地址和0-8的垂直地址的部分中寫入Y信號的左16象素,和在具有1的水平地址和0-8的垂直地址的部分中寫入Y信號的右16象素。然后,在具有0的水平地址和9-13的垂直地址的部分中寫入C信號(U或V)的左8象素,和在具有1的水平地址及9-13的垂直地址的部分中寫入C信號(U或V)的右8象素。如上所述,按上述順序前向預(yù)測宏塊被寫入具有0和1的水平地址的部分,而后向預(yù)測宏塊被寫入具有2及3的水平地址的部分。在圖10中,被寫入該預(yù)測宏塊存貯器中的數(shù)據(jù)的順序表示為①②③④⑤⑥⑦⑧。
當(dāng)從該預(yù)測宏塊存貯器中讀取數(shù)據(jù)時,最好是按下面的步驟即對于Y信號讀取前向和后向宏塊數(shù)據(jù),并且隨后對于C信號(U或V)讀取前者。因此,在圖10中,從該預(yù)測宏塊讀取的數(shù)據(jù)的次序表示為 圖11A和11B示出了為了按圖10所示的順序?qū)懞妥x數(shù)據(jù)自該地址發(fā)生器產(chǎn)生的地址。圖11A示出了寫地址,圖11B示出了讀地址。更詳細(xì)地說,對于0的垂直地址,0和1的水平地址分別表示在該前向預(yù)測宏塊中在Y信號的第一行中的左16象素和右16象素。如圖11A所示,首先寫入前向預(yù)測宏塊的Y信號和C信號,并且隨后寫入后向宏塊的Y信號和C信號。參見圖11B,可看出用0的垂直地址可以進(jìn)行對0,1,2和3的水平地址的存取,這表示記錄在具有0的垂直地址和0及1的水平地址的部分中的前向預(yù)測宏塊中的Y信號的左和右16象素被讀取,并且隨后記錄在具有0的垂直地址和2及3的水平地址部分中的后向預(yù)測宏塊中的Y信號的左和右16象素被讀取。因此,對于該Y信號讀取前向和后向宏塊數(shù)據(jù),并且隨后對于C信號(U或V)讀取前向和后向宏塊數(shù)據(jù)。
以上對于用作運(yùn)動補(bǔ)償解碼的預(yù)測宏塊數(shù)據(jù)存取轉(zhuǎn)換方法和裝置的情況對本發(fā)明的實(shí)施例進(jìn)行了描述。該預(yù)測宏塊數(shù)據(jù)存取轉(zhuǎn)換方法和裝置可用于作運(yùn)動圖象編碼的運(yùn)動補(bǔ)償預(yù)測中。
如上所述,根據(jù)本發(fā)明的預(yù)測宏塊數(shù)據(jù)存取轉(zhuǎn)換方法和裝置存貯了從在一單獨(dú)存貯單元中的一幀存貯器輸出的運(yùn)動圖象,并隨后為了處理隨后的預(yù)測宏塊按一適當(dāng)?shù)拇涡蜃x取該被存貯的預(yù)測宏塊數(shù)據(jù)。因此可降低用于存取該預(yù)測宏塊數(shù)據(jù)的時間。
雖然這里僅描述了本發(fā)明的特定的實(shí)施例,但顯然在不違背本發(fā)明精神和范圍的情況下可作若干的改進(jìn)。
權(quán)利要求
1.一種存貯在幀存貯器中并用來對一運(yùn)動圖象進(jìn)行解碼和編碼的預(yù)測宏塊數(shù)據(jù)的存取轉(zhuǎn)換方法,該存取轉(zhuǎn)換方法包括有下列步驟在一單獨(dú)的存貯單元上記錄自所述幀存貯器輸出的所述預(yù)測宏塊數(shù)據(jù);和按照一適于處理來自所述單獨(dú)存貯單元的隨后的預(yù)測宏塊的順序來讀取所記錄的預(yù)測宏塊數(shù)據(jù)。
2.如權(quán)利要求1所述的預(yù)測宏塊數(shù)據(jù)存取轉(zhuǎn)換方法,其中所述單獨(dú)存貯單元被分成第一區(qū)域和第二區(qū)域,通過在從所述第二區(qū)域讀取先前存貯的數(shù)據(jù)的同時在所述第一區(qū)域上記錄所述預(yù)測宏塊數(shù)據(jù)來同時地執(zhí)行數(shù)據(jù)讀和寫操作。
3.如權(quán)利要求1所述的預(yù)測宏塊數(shù)據(jù)存取轉(zhuǎn)換方法,其中在所述預(yù)測宏塊數(shù)據(jù)記錄步驟中,按照所述預(yù)測宏塊從所述幀存貯器輸出的順序依次地記錄一前向Y信號和前向C信號,和隨后記錄一后向Y信號和后向C信號。
4.如權(quán)利要求3所述的預(yù)測宏塊數(shù)據(jù)存取轉(zhuǎn)換方法,其中在所述預(yù)測宏塊數(shù)據(jù)讀取步驟中,按照在運(yùn)動補(bǔ)償中所使用的預(yù)測宏塊數(shù)據(jù)的順序依次讀取一前向Y信號和一后向Y信號,并且隨后讀取一前向C信號和一后向C信號。
5.一種存貯在幀存貯器中并且用來對一運(yùn)動圖象進(jìn)行解碼和編碼的預(yù)測宏塊數(shù)據(jù)的存取轉(zhuǎn)換裝置,該存取轉(zhuǎn)換裝置包括一連接在所述幀存貯器和運(yùn)動補(bǔ)償器之間用來解碼和編碼該運(yùn)動圖象的預(yù)測宏塊存取轉(zhuǎn)換裝置,用來在其上記錄該預(yù)測宏塊數(shù)據(jù)并按照由該運(yùn)動補(bǔ)償器使用的順序來輸出所記錄的該預(yù)測宏塊數(shù)據(jù)。
6.如權(quán)利要求5所述的預(yù)測宏塊數(shù)據(jù)存取轉(zhuǎn)換裝置,其中所述預(yù)測宏塊存取轉(zhuǎn)換裝置包括一地址發(fā)生器,用于產(chǎn)生一寫垂直地址和一寫水平地址以按照該預(yù)測宏塊數(shù)據(jù)從所述幀存貯器輸出的順序來記錄該預(yù)測宏塊數(shù)據(jù);以及產(chǎn)生一讀水平地址和一讀垂直地址以按照在所述運(yùn)動補(bǔ)償器中使用的順序來輸出該預(yù)測數(shù)據(jù)宏塊數(shù)據(jù);和一預(yù)測宏塊存儲器,用于按照由所述地址發(fā)生器產(chǎn)生的寫水平地址、寫垂直地址、讀水平地址和讀垂直地址來存取該數(shù)據(jù)。
7.如權(quán)利要求6所述的預(yù)測宏塊數(shù)據(jù)存取轉(zhuǎn)換裝置,其中所述單獨(dú)存貯單元被分成用來存貯第一預(yù)測宏塊的第一區(qū)域和用來存貯第二預(yù)測宏塊的第二區(qū)域,并且同時地自所述地址發(fā)生器產(chǎn)生第一區(qū)域的寫地址和第二區(qū)域的讀地址,使得在第一區(qū)域上記錄數(shù)據(jù)和從第二區(qū)域讀取數(shù)據(jù)是同時地執(zhí)行。
全文摘要
提供了一種用于解碼和編碼一運(yùn)動圖象的預(yù)測宏塊數(shù)據(jù)的存取轉(zhuǎn)換方法和裝置。該預(yù)測宏塊的存取轉(zhuǎn)換方法和裝置在一單獨(dú)存貯單元中存貯自一幀存貯器輸出的預(yù)測宏塊數(shù)據(jù),并且其后按照適于處理后面預(yù)測宏塊的順序來讀取所存貯的預(yù)測宏塊數(shù)據(jù)。可降低用于存取預(yù)測宏塊數(shù)據(jù)的時間。
文檔編號H04N7/36GK1151663SQ9611247
公開日1997年6月11日 申請日期1996年10月25日 優(yōu)先權(quán)日1995年10月26日
發(fā)明者俞弼皓 申請人:三星電子株式會社