專利名稱:圖像編碼裝置、方法及程序的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及按照H.264標(biāo)準(zhǔn)對(duì)高清晰度電視廣播進(jìn)行編碼的圖像編碼裝置以及方法。
背景技術(shù):
近年來,模擬電視廣播(SDTVStandard Definition TeleVision)向著數(shù)字化方向發(fā)展,而且,對(duì)運(yùn)動(dòng)圖像進(jìn)行壓縮編碼,并記錄到硬盤(Harddisc)、DVD-RAM(Digital Versatile Disk-Random Access Memory)等光盤上的數(shù)字視頻記錄器逐漸普及,進(jìn)一步,能夠記錄衛(wèi)星、地面波數(shù)字高清晰度電視廣播(HDTVHigh Definition TeleVision)的數(shù)字視頻記錄器開始商品化。
在HDTV廣播中,發(fā)送以MPEG2(Moving Picture Experts Group 2)標(biāo)準(zhǔn)編碼的流,在記錄該流時(shí),仍以MPEG2流的格式記錄。或者,通常的方法是,將解碼圖像轉(zhuǎn)換為DVD標(biāo)準(zhǔn)規(guī)定的圖像尺寸,然后以MPEG2標(biāo)準(zhǔn)再壓縮并記錄。另外還有一種方法是,使用比MPEG2編碼效率高的H.264標(biāo)準(zhǔn),降低比特率(bit rate),然后以HDTV圖像尺寸且抑制圖像質(zhì)量惡化的方式記錄。
HDTV圖像尺寸中,水平像素?cái)?shù)是1920或者1440像素,有效行(line)數(shù)是1080行。由于H.264標(biāo)準(zhǔn)的編碼適用于像素?cái)?shù)和行數(shù)均為16的倍數(shù)的圖像,所以對(duì)HDTV圖像尺寸的原圖像進(jìn)行編碼時(shí),需要考慮將行數(shù)擴(kuò)充為1088行的擴(kuò)充圖像。
同樣的圖像擴(kuò)充,還利用于以下情況例如為了使編碼圖像中顯示的塊噪音(Block noise)不明顯,故意打亂編碼單位塊的排列時(shí)的情況。
日本專利申請(qǐng)公開號(hào)為特開平1-168165號(hào)公報(bào)的專利文獻(xiàn)1中,公開了帶有圖像擴(kuò)充的圖像數(shù)據(jù)編碼技術(shù)的一個(gè)例子。其概要為當(dāng)未滿單位塊大小的部分在圖像邊緣時(shí),補(bǔ)充推測(cè)的像素生成單位塊,并對(duì)該單位塊進(jìn)行編碼。根據(jù)專利文獻(xiàn)1,具體可以對(duì)所述推測(cè)的像素,使用最邊緣的像素值。
但是,例如,如果將現(xiàn)有技術(shù)中的圖像擴(kuò)充,單純地應(yīng)用于使用H.264標(biāo)準(zhǔn)的圖像數(shù)據(jù)的編碼,則會(huì)產(chǎn)生擴(kuò)充部分無法獲得良好的編碼效率的問題。該問題的起因在于,針對(duì)H.264標(biāo)準(zhǔn)規(guī)定的幀內(nèi)預(yù)測(cè)編碼以及幀間預(yù)測(cè)編碼,現(xiàn)有技術(shù)的圖像擴(kuò)充不一定對(duì)減少上述編碼的預(yù)測(cè)誤差起作用。
為了解決上述問題,本發(fā)明的圖像編碼裝置包括編碼單元,用于通過預(yù)測(cè),生成表示擴(kuò)充圖像的符號(hào),所述擴(kuò)充圖像是將輸入圖像擴(kuò)充為編碼塊的自然數(shù)倍大小的圖像;控制單元,用于控制所述編碼單元,使所述編碼單元生成將擴(kuò)充部分的預(yù)測(cè)誤差表示為0的符號(hào),所述擴(kuò)充部分是為成為所述擴(kuò)充圖像的一部分而在所述輸入圖像擴(kuò)充的部分。
而且,所述控制單元包括圖像擴(kuò)充單元,用于無論所述輸入圖像包含的像素值的大小,通過使用參考值擴(kuò)充所述輸入圖像,生成所述擴(kuò)充圖像,該參考值是為用于按照H.264標(biāo)準(zhǔn)進(jìn)行幀內(nèi)預(yù)測(cè)時(shí)周圍像素不存在的情況而規(guī)定的值;所述編碼單元可以通過對(duì)由所述圖像擴(kuò)充部分生成的所述擴(kuò)充圖像,按照H.264標(biāo)準(zhǔn),采用幀內(nèi)預(yù)測(cè)進(jìn)行編碼,生成將所述擴(kuò)充部分的預(yù)測(cè)誤差表示為0的符號(hào)。
另外,所述輸入圖像的行數(shù)為1080;所述圖像擴(kuò)充單元可以通過使用像素值128,對(duì)所述輸入圖像在上側(cè)擴(kuò)充8行,生成行數(shù)為1088的擴(kuò)充圖像。
另外,所述控制單元進(jìn)一步包括圖像擴(kuò)充參數(shù)輸出單元,用于輸出表示所述擴(kuò)充部分位于所述輸入圖像的上方還是下方的圖像擴(kuò)充參數(shù);所述圖像擴(kuò)充單元,當(dāng)表示所述位置為上方時(shí),可以無論所述輸入圖像包含的像素值的大小,使用參考值,對(duì)所述輸入圖像在上側(cè)擴(kuò)充,該參考值是為用于按照H.264標(biāo)準(zhǔn)進(jìn)行幀內(nèi)預(yù)測(cè)時(shí)周圍像素不存在的情況而規(guī)定的值,當(dāng)表示所述位置為下方時(shí),可以使用所述輸入圖像的最下方行的像素值,對(duì)所述輸入圖像在下側(cè)擴(kuò)充。
另外,所述控制單元進(jìn)一步包括圖像擴(kuò)充參數(shù)輸出單元,用于輸出表示所述輸入圖像為構(gòu)成運(yùn)動(dòng)圖像的幀還是半幀的圖像擴(kuò)充參數(shù);所述圖像擴(kuò)充單元,當(dāng)表示所述輸入圖像為幀時(shí),可以與表示所述輸入圖像為半幀的情況下的擴(kuò)充行數(shù)相比,對(duì)所述輸入圖像擴(kuò)充2倍的行數(shù)。
另外,所述編碼單元采用幀內(nèi)預(yù)測(cè)及幀間預(yù)測(cè)中的任何一種,都可以對(duì)所述擴(kuò)充圖像進(jìn)行編碼;所述控制單元進(jìn)一步包括圖像擴(kuò)充參數(shù)輸出單元,用于輸出表示在所述擴(kuò)充圖像的編碼中,所述編碼單元采用幀內(nèi)預(yù)測(cè)及幀間預(yù)測(cè)中的哪一種的圖像擴(kuò)充參數(shù);所述圖像擴(kuò)充單元,當(dāng)表示采用幀內(nèi)預(yù)測(cè)時(shí),可以無論所述輸入圖像包含的像素值的大小,使用參考值擴(kuò)充所述輸入圖像,該參考值是為用于按照H.264標(biāo)準(zhǔn)進(jìn)行幀內(nèi)預(yù)測(cè)時(shí)周圍像素不存在的情況而規(guī)定的值,當(dāng)表示采用幀間預(yù)測(cè)時(shí),可以使用所述用于幀間預(yù)測(cè)的參考圖像的擴(kuò)充部分的像素值,擴(kuò)充所述輸入圖像。
另外,所述控制單元包括圖像擴(kuò)充參數(shù)輸出單元,用于輸出表示所述擴(kuò)充部分相對(duì)于所述輸入圖像的位置和行數(shù)的圖像擴(kuò)充參數(shù);所述編碼單元包括0值生成單元,用于生成作為所述圖像擴(kuò)充參數(shù)表示的所述擴(kuò)充部分的預(yù)測(cè)誤差的0值;所述編碼單元可以對(duì)所述生成的0值和有關(guān)所述輸入圖像的預(yù)測(cè)誤差,按照H.264標(biāo)準(zhǔn)進(jìn)行編碼,生成將所述擴(kuò)充部分的預(yù)測(cè)誤差表示為0的符號(hào)。
另外,所述編碼單元可以對(duì)所述擴(kuò)充部分的0值和有關(guān)所述輸入圖像的預(yù)測(cè)誤差,分別作為不同的編碼塊進(jìn)行編碼。
再有,本發(fā)明不僅可以通過上述圖像編碼裝置實(shí)現(xiàn),還能通過將上述圖像編碼裝置所包含的特征性單元執(zhí)行的處理作為步驟的圖像編碼方法實(shí)現(xiàn),另外,還可以通過圖像編碼處理的集成電路裝置實(shí)現(xiàn)。
本發(fā)明的圖像編碼裝置,使用參考值擴(kuò)充輸入圖像,并對(duì)擴(kuò)充得到的擴(kuò)充圖像進(jìn)行編碼,該參考值是為用于按照H.264標(biāo)準(zhǔn)進(jìn)行幀內(nèi)預(yù)測(cè)時(shí)周圍像素不存在的情況而規(guī)定的值,或者通過插入作為擴(kuò)充部分的預(yù)測(cè)誤差的0值,生成將所述擴(kuò)充圖像的擴(kuò)充部分相關(guān)的預(yù)測(cè)誤差表示為0的符號(hào),從而生成的編碼量得到抑制,其結(jié)果,可以獲得比現(xiàn)有技術(shù)更好的編碼效率。
圖1是實(shí)施方式1中圖像編碼裝置的一個(gè)例子的框圖。
圖2是直觀地示出向輸入圖像的上側(cè)進(jìn)行圖像擴(kuò)充的一個(gè)例子的圖。
圖3是直觀地示出向輸入圖像的下側(cè)進(jìn)行圖像擴(kuò)充的一個(gè)例子的圖。
圖4是實(shí)施方式1中編碼單元的一個(gè)例子的框圖。
圖5是說明幀內(nèi)預(yù)測(cè)模式的圖。
圖6是說明運(yùn)動(dòng)補(bǔ)償?shù)膯挝怀叽绲膱D。
圖7是確定擴(kuò)充行數(shù)的處理過程的一個(gè)例子的流程圖。
圖8是對(duì)輸入圖像進(jìn)行的擴(kuò)充處理的一個(gè)例子的流程圖。
圖9是對(duì)輸入圖像進(jìn)行的擴(kuò)充處理的其他例子的流程圖。
圖10是實(shí)施方式2中圖像編碼裝置的一個(gè)例子的框圖。
圖11是實(shí)施方式2中編碼單元的一個(gè)例子的框圖。
圖12是直觀地示出對(duì)向上側(cè)擴(kuò)充的擴(kuò)充圖像進(jìn)行編碼的一個(gè)例子的圖。
圖13是直觀地示出對(duì)向下側(cè)擴(kuò)充的擴(kuò)充圖像進(jìn)行編碼的一個(gè)例子的圖。
具體實(shí)施例方式
以下,參照附圖對(duì)本發(fā)明的實(shí)施方式進(jìn)行說明。
(實(shí)施方式1)
圖1是本發(fā)明實(shí)施方式1中,圖像編碼裝置10的功能性結(jié)構(gòu)的一個(gè)例子的框圖。
圖像編碼裝置10,用于使用參考值擴(kuò)充輸入圖像,并對(duì)擴(kuò)充得到的擴(kuò)充圖像進(jìn)行編碼,生成將所述擴(kuò)充圖像的擴(kuò)充部分的預(yù)測(cè)誤差表示為0的符號(hào),其中,該參考值是為用于按照H.264標(biāo)準(zhǔn)進(jìn)行幀內(nèi)預(yù)測(cè)時(shí)周圍像素不存在的情況而規(guī)定的值;該裝置由控制單元11及編碼單元12構(gòu)成??刂茊卧?1由圖像擴(kuò)充參數(shù)輸出單元111、編碼參數(shù)輸出單元112及圖像擴(kuò)充單元113構(gòu)成。
作為具體的一個(gè)例子,控制單元11及編碼單元12,可以是通過計(jì)算機(jī)執(zhí)行程序而實(shí)現(xiàn)的軟件功能,也可以是構(gòu)成集成電路裝置的電路塊。另外,輸入圖像可以是以1080i解像度表示的HDTV圖像。
控制單元11中,圖像擴(kuò)充參數(shù)輸出單元111輸出圖像擴(kuò)充參數(shù),該圖像擴(kuò)充參數(shù)包含至少表示以下內(nèi)容中的一個(gè)內(nèi)容的信息(A)所述擴(kuò)充部分位于所述輸入圖像的上方還是下方;(B)所述輸入圖像是構(gòu)成運(yùn)動(dòng)圖像的幀還是半幀(field);以及(C)在所述擴(kuò)充圖像的編碼中,編碼單元12采用幀內(nèi)預(yù)測(cè)還是幀間預(yù)測(cè)。
該圖像擴(kuò)充參數(shù)另外還可以包含以下信息,即,表示輸入圖像以具有相同數(shù)目的亮度像素和色差像素的YUV422方式,還是以具有亮度像素和像素?cái)?shù)目為亮度像素一半的色差像素的YUV420方式顯示的信息。
該圖像擴(kuò)充參數(shù)的內(nèi)容,例如,根據(jù)無圖示的用戶發(fā)來的指示信息確定。
圖像擴(kuò)充單元113根據(jù)圖像擴(kuò)充參數(shù),擴(kuò)充輸入圖像,生成擴(kuò)充圖像。對(duì)該擴(kuò)充處理的詳細(xì)內(nèi)容,在后面敘述。
編碼參數(shù)輸出單元112輸出編碼參數(shù),該編碼參數(shù)包含表示編碼單元12在所述擴(kuò)充圖像的編碼中,采用幀內(nèi)預(yù)測(cè)還是幀間預(yù)測(cè)的信息。編碼參數(shù)另外還可以包含以下信息,即,規(guī)定編碼率的壓縮率信息、與幀內(nèi)預(yù)測(cè)的預(yù)測(cè)方向相關(guān)的模式信息。
編碼單元12根據(jù)編碼參數(shù),對(duì)擴(kuò)充圖像進(jìn)行編碼,生成流,該流包含表示圖像的符號(hào),同時(shí)向圖像擴(kuò)充單元113輸出參考像素值。在幀內(nèi)預(yù)測(cè)中,該參考像素值是與其他編碼塊的像素進(jìn)行比較的像素值,而在幀間預(yù)測(cè)(表示幀間或者半幀間的預(yù)測(cè))中,該參考像素值是與其他幀或者半幀的像素進(jìn)行比較的像素值。
下面,對(duì)圖像擴(kuò)充單元113進(jìn)行的圖像擴(kuò)充處理進(jìn)行說明。
圖2及圖3是直觀地示出該圖像擴(kuò)充處理內(nèi)容的一個(gè)例子的圖。
圖像擴(kuò)充單元113從圖像擴(kuò)充參數(shù)輸出單元111接收?qǐng)D像擴(kuò)充參數(shù),并根據(jù)該圖像擴(kuò)充參數(shù)的內(nèi)容,按照規(guī)定方向,使用規(guī)定行數(shù)、規(guī)定像素值擴(kuò)充輸入圖像。
圖2示出的是,對(duì)輸入圖像在上側(cè)擴(kuò)充8行,獲得擴(kuò)充圖像的例子,該例子具體適用于,將1080行的輸入圖像擴(kuò)充為1088行的擴(kuò)充圖像時(shí)的情況。
當(dāng)輸入圖像分別為構(gòu)成幀的540行的前半幀(Top field)或者后半幀(Bottom field)時(shí),如圖2左側(cè)所示,圖像擴(kuò)充單元113在每半幀,對(duì)輸入圖像擴(kuò)充4行,相當(dāng)于在每幀擴(kuò)充8行。當(dāng)輸入圖像為1080行的幀時(shí),如圖2右側(cè)所示,圖像擴(kuò)充單元113對(duì)輸入圖像擴(kuò)充8行。
換言之,輸入圖像為幀時(shí)擴(kuò)充的行數(shù)是,輸入圖像為半幀時(shí)擴(kuò)充的行數(shù)的2倍。
另外,當(dāng)編碼單元12在所述擴(kuò)充圖像的編碼中采用幀內(nèi)預(yù)測(cè)時(shí),圖像擴(kuò)充單元113將參考值128作為圖像擴(kuò)充部分的像素值,該參考值128是為用于按照H.264標(biāo)準(zhǔn)進(jìn)行幀內(nèi)預(yù)測(cè)時(shí)周圍像素不存在的情況而規(guī)定的值。在所述擴(kuò)充圖像的編碼中,當(dāng)編碼單元12在所述擴(kuò)充圖像的編碼中采用幀間預(yù)測(cè)時(shí),圖像擴(kuò)充單元113將編碼單元12提供的參考像素值作為圖像擴(kuò)充部分的像素值。
圖3示出了對(duì)輸入圖像在下側(cè)擴(kuò)充8行,獲得擴(kuò)充圖像的例子。根據(jù)輸入圖像是半幀還是幀的不同,擴(kuò)充的行數(shù)與前述相同。
另外,當(dāng)編碼單元12在所述擴(kuò)充圖像的編碼中采用幀內(nèi)預(yù)測(cè)時(shí),圖像擴(kuò)充單元113將輸入圖像的最下方行的像素的像素值作為圖像擴(kuò)充部分的像素值。當(dāng)編碼單元12在所述擴(kuò)充圖像的編碼中采用幀間預(yù)測(cè)時(shí),圖像擴(kuò)充單元113將編碼單元12提供的參考像素值作為圖像擴(kuò)充部分的像素值。
到此為止的說明,未對(duì)表示亮度信息的亮度像素及表示色差信息的色差像素加以區(qū)別。作為一個(gè)例子,上述說明均適用于以YUV422方式表示的輸入圖像的亮度像素和色差像素雙方。另外,上述說明適用于以YUV420方式表示的輸入圖像的亮度像素的同時(shí),上述說明中用一半行數(shù)進(jìn)行的擴(kuò)充適用于該輸入圖像的色差像素。
下面,對(duì)編碼單元12的詳細(xì)內(nèi)容進(jìn)行說明。
圖4是編碼單元12的功能性結(jié)構(gòu)的一個(gè)例子的框圖。眾所周知,該結(jié)構(gòu)是遵循H.264標(biāo)準(zhǔn)的編碼器的一般模型,所以在此非常簡(jiǎn)單地說明。
編碼單元12對(duì)圖像擴(kuò)充單元113輸出的擴(kuò)充圖像,以每個(gè)編碼塊的宏塊為單位進(jìn)行編碼,并編碼成為流。編碼單元12在幀內(nèi)預(yù)測(cè)及幀間預(yù)測(cè)之中,采用與編碼參數(shù)輸出單元112提供的編碼參數(shù)對(duì)應(yīng)的預(yù)測(cè)方式,進(jìn)行所述編碼。
加法單元121計(jì)算出擴(kuò)充圖像的像素值與用于預(yù)測(cè)的參考像素值之間的誤差;正交變換單元122將該誤差轉(zhuǎn)換為例如離散余弦(cosine)系數(shù);量化單元123對(duì)該離散余弦系數(shù)進(jìn)行量化。
逆量化單元124及逆正交變換單元125通過解碼所述量化結(jié)果,局部求與播放器中計(jì)算出的誤差同等的誤差。加法單元126通過相加該誤差和參考像素值,得到局部解碼結(jié)果的像素值。
加法單元126得到的像素值,輸出到幀內(nèi)預(yù)測(cè)單元127,與此同時(shí),經(jīng)過環(huán)路濾波器(loop filter)存儲(chǔ)到幀存儲(chǔ)器129,更進(jìn)一步,還輸出到圖像擴(kuò)充單元113。
當(dāng)編碼中采用幀內(nèi)預(yù)測(cè)時(shí),幀內(nèi)預(yù)測(cè)單元127根據(jù)加法單元126提供的所述像素值,生成規(guī)定的參考像素值。根據(jù)H.264標(biāo)準(zhǔn),該參考像素值是為了用于與相鄰宏塊之間的對(duì)比而規(guī)定的值。
然后,開關(guān)(switch)132選擇幀內(nèi)預(yù)測(cè)單元127輸出的參考像素值;加法單元121計(jì)算擴(kuò)充圖像包含的相鄰宏塊的像素值與所選擇的參考像素值之間的誤差,由此執(zhí)行后續(xù)的編碼。
當(dāng)編碼中采用幀間預(yù)測(cè)時(shí),運(yùn)動(dòng)檢測(cè)單元130根據(jù)對(duì)先行的幀或者半幀(即參考圖像)計(jì)算并存儲(chǔ)于幀存儲(chǔ)器129的參考像素值,計(jì)算出表示后續(xù)的幀或者半幀的擴(kuò)充圖像中的宏塊的運(yùn)動(dòng)矢量。運(yùn)動(dòng)補(bǔ)償單元131將參考圖像中以計(jì)算出的運(yùn)動(dòng)矢量表示的范圍的像素值,作為參考像素值輸出。
然后,開關(guān)132選擇運(yùn)動(dòng)補(bǔ)償單元131輸出的參考像素值;加法單元121計(jì)算后續(xù)的幀或者半幀中的宏塊的像素值與所選擇的參考像素值之間的誤差,由此執(zhí)行后續(xù)的編碼。
圖5是在H.264標(biāo)準(zhǔn)中,為了取得與幀內(nèi)預(yù)測(cè)對(duì)象的單位塊內(nèi)的各像素之間的差分,而規(guī)定使用的參考像素的示意圖。如圖所示,H.264標(biāo)準(zhǔn)規(guī)定,在9種預(yù)測(cè)模式中,分別取得箭頭記號(hào)的起點(diǎn)所在的參考像素與該箭頭記號(hào)方向所在的各像素之間的差分。
此圖中,給出了以4×4像素表示該單位塊的大小的例子。圖中,白色圓表示該單位塊內(nèi)的各像素,斜線填充的圓表示位于該單位塊的左方及上方的幾個(gè)參考像素。
預(yù)測(cè)模式0中,取得位于單位塊的上側(cè)的若干個(gè)參考像素與單位塊內(nèi)位于各參考圖像的正下方的像素之間的差分。
預(yù)測(cè)模式1中,取得位于單位塊的左側(cè)的若干個(gè)參考像素與單位塊內(nèi)位于各參考圖像的右側(cè)的像素之間的差分。
預(yù)測(cè)模式3~8中,取得若干個(gè)參考圖像與從各參考像素出發(fā)的位于箭頭記號(hào)方向上的單位塊內(nèi)的各像素之間的差分。
位于圖像的最上方的單位塊,由于上側(cè)的參考像素不存在,所以采用預(yù)測(cè)模式1、2及8中的任意模式。特別是,位于圖像的最左上方的單位塊,由于所有的參考像素都不存在,所以假定參考像素的平均值為128并采用預(yù)測(cè)模式2。該值128是為了用于按照H.264標(biāo)準(zhǔn)進(jìn)行幀內(nèi)預(yù)測(cè)時(shí)周圍像素不存在的情況而規(guī)定的參考值的一個(gè)例子。
還有,幀內(nèi)預(yù)測(cè)也能以8×8像素及16×16像素大小的單位塊為對(duì)象進(jìn)行。
圖6是H.264標(biāo)準(zhǔn)中的運(yùn)動(dòng)補(bǔ)償?shù)膯挝坏氖疽鈭D?,F(xiàn)有的MPEG標(biāo)準(zhǔn)中,運(yùn)動(dòng)補(bǔ)償?shù)膯挝还潭?6×16像素大小的宏塊,與此相對(duì),H.264標(biāo)準(zhǔn)中,如圖6(A)所示,能夠利用16×16像素、16×8像素、8×16像素、8×8像素這4種大小的宏塊,作為運(yùn)動(dòng)補(bǔ)償?shù)膯挝?,而且,如圖6(B)所示,能夠利用通過分割8×8像素的宏塊得到的8×4像素、4×8像素、4×4像素這3種子宏塊。
下面,參照流程圖,對(duì)圖像擴(kuò)充單元113的處理的主要部分進(jìn)行說明。
圖7是確定擴(kuò)充行數(shù)的處理過程的一個(gè)例子的流程圖。
當(dāng)圖像擴(kuò)充參數(shù)輸出單元111提供的圖像擴(kuò)充參數(shù)表示輸入圖像為幀時(shí)(S11中為幀),圖像擴(kuò)充單元113將Ny(用于亮度的擴(kuò)充行數(shù))確定為8(S12);當(dāng)圖像擴(kuò)充參數(shù)表示輸入圖像為半幀時(shí)(S11中為半幀),圖像擴(kuò)充單元113將Ny確定為4(S13)。
然后,當(dāng)所述圖像擴(kuò)充參數(shù)表示輸入圖像以YUV420方式顯示時(shí)(S14中4:2:0),圖像擴(kuò)充單元113將Nc(用于色差的擴(kuò)充行數(shù))確定為Ny/2(S15);當(dāng)所述圖像擴(kuò)充參數(shù)表示輸入圖像以YUV422方式顯示時(shí)(S14中4:2:2),圖像擴(kuò)充單元113將Nc確定為Ny(S16)。
圖8是圖像擴(kuò)充處理的一個(gè)例子的流程圖。
當(dāng)所述圖像擴(kuò)充參數(shù)表示擴(kuò)充部分的位置在輸入圖像的上方時(shí)(S31中為上),圖像擴(kuò)充單元113對(duì)所述輸入圖像,使用像素值128在所述輸入圖像的上側(cè),擴(kuò)充按照?qǐng)D7所示的流程圖確定的行數(shù),生成擴(kuò)充圖像(S32及圖2)。另一方面,當(dāng)所述圖像擴(kuò)充參數(shù)表示擴(kuò)充部分的位置在輸入圖像的下方時(shí)(S31中為下),圖像擴(kuò)充單元113對(duì)所述輸入圖像,使用所述輸入圖像的最下方行的像素值,在所述輸入圖像的下側(cè)擴(kuò)充所確定的行數(shù),生成擴(kuò)充圖像(S33及圖3)。
圖9是考慮預(yù)測(cè)中采用幀內(nèi)預(yù)測(cè)還是幀間預(yù)測(cè)的情況下,將圖8所示的處理擴(kuò)展后的流程圖。
該擴(kuò)展的處理中,當(dāng)圖像擴(kuò)充參數(shù)輸出單元111提供的圖像擴(kuò)充參數(shù)表示預(yù)測(cè)中采用幀內(nèi)預(yù)測(cè)時(shí)(S41中為幀內(nèi)預(yù)測(cè)),圖像擴(kuò)充單元113執(zhí)行圖8所示的處理。而當(dāng)圖像擴(kuò)充參數(shù)表示預(yù)測(cè)中采用幀間預(yù)測(cè)時(shí)(S41中為幀間預(yù)測(cè)),圖像擴(kuò)充單元113使用編碼單元12提供的參考像素值,對(duì)所述輸入圖像進(jìn)行擴(kuò)充(S42)。此時(shí)擴(kuò)充的方向及行數(shù)根據(jù)所述圖像擴(kuò)充參數(shù)及所述確定的行數(shù)得到。
在到此為止說明的結(jié)構(gòu)中,如果使用像素值128,對(duì)輸入圖像在上側(cè)擴(kuò)充得到擴(kuò)充圖像,并采用幀內(nèi)預(yù)測(cè)對(duì)該擴(kuò)充圖像進(jìn)行編碼,則對(duì)于圖像的左上方的宏塊,由于使用像素值128進(jìn)行幀內(nèi)預(yù)測(cè),所以預(yù)測(cè)誤差全部為0。而且,對(duì)其他上方的宏塊,也由于使用左相鄰的像素值進(jìn)行幀內(nèi)預(yù)測(cè),所以預(yù)測(cè)誤差全部為0。
另外,如果對(duì)輸入圖像,使用所述輸入圖像的最下方行的像素值,在下側(cè)擴(kuò)充得到擴(kuò)充圖像,并采用幀內(nèi)預(yù)測(cè)對(duì)所述擴(kuò)充圖像進(jìn)行編碼,則對(duì)于圖像下方的宏塊,由于使用上相鄰的像素值進(jìn)行預(yù)測(cè),所以可以將預(yù)測(cè)誤差變?yōu)?。
另一方面,如果使用編碼單元12輸出的參考像素值(即參考圖像的像素值),擴(kuò)充得到擴(kuò)充圖像,并采用將運(yùn)動(dòng)矢量設(shè)為0的幀間預(yù)測(cè),對(duì)所述擴(kuò)充圖像進(jìn)行編碼,也可以將預(yù)測(cè)誤差變?yōu)?。在這種情況下,特別希望通過選擇例如16×8像素的宏塊、8×4像素的子宏塊等作為運(yùn)動(dòng)補(bǔ)償?shù)膯挝?,?duì)擴(kuò)充圖像中的擴(kuò)充部分與其他部分,分別作為各個(gè)不同的編碼塊進(jìn)行編碼。這樣,對(duì)于擴(kuò)充部分僅產(chǎn)生與編碼條件相關(guān)的編碼量,可以為抑制生成的編碼量作出很大的貢獻(xiàn)。
(實(shí)施方式2)圖10是本發(fā)明實(shí)施方式2中,圖像編碼裝置20的功能性結(jié)構(gòu)的一個(gè)例子的框圖。
圖像編碼裝置20生成作為擴(kuò)充部分的預(yù)測(cè)誤差的0值,所述擴(kuò)充部分是為成為擴(kuò)充圖像的一部分而在輸入圖像擴(kuò)充的部分,并對(duì)所述生成的0值和所述輸入圖像相關(guān)的預(yù)測(cè)誤差,按照H.264標(biāo)準(zhǔn)進(jìn)行編碼,生成將所述擴(kuò)充部分的預(yù)測(cè)誤差表示為0的符號(hào)。圖像編碼裝置20與圖像編碼裝置10相比,圖像編碼裝置20具有省略了圖像擴(kuò)充單元113的控制單元21,同時(shí)編碼單元22的內(nèi)容由編碼單元12變更得到。
與實(shí)施方式1相同,控制單元21及編碼單元22,例如可以是通過計(jì)算機(jī)執(zhí)行程序而實(shí)現(xiàn)的軟件功能,也可以是構(gòu)成集成電路裝置的電路塊。另外,輸入圖像可以是以1080i解像度表示的HDTV圖像。
以下,對(duì)與實(shí)施方式1說明的圖像編碼裝置10中的結(jié)構(gòu)要素相同的結(jié)構(gòu)要素,標(biāo)記相同的符號(hào),并省略說明。
控制單元21向編碼單元22輸出與實(shí)施方式1相同的圖像擴(kuò)充參數(shù)及編碼參數(shù)。
在實(shí)施方式2中,該圖像擴(kuò)充參數(shù)與實(shí)施方式1中不同,僅用于確定所述擴(kuò)充部分相對(duì)于所述輸入圖像的位置及行數(shù)。該圖像擴(kuò)充參數(shù)不用于為了向編碼單元22輸入而對(duì)確定的擴(kuò)充部分生成具體的像素值。
圖11是編碼單元22的功能性結(jié)構(gòu)的一個(gè)例子的框圖。與圖4所示的編碼單元12的結(jié)構(gòu)相比,編碼單元22具有0值生成單元221,用于生成作為所述擴(kuò)充部分的預(yù)測(cè)誤差的0值;編碼單元22對(duì)所述生成的0值和所述輸入圖像的預(yù)測(cè)誤差,按照H.264標(biāo)準(zhǔn)進(jìn)行編碼。
圖12和圖13是直觀地示出該編碼處理內(nèi)容的一個(gè)例子的圖。
圖12是擴(kuò)充部分為輸入圖像的上側(cè)8行時(shí)的例子。
如圖所示,圖上方的宏塊中,上面的8行為擴(kuò)充的區(qū)域。對(duì)于將宏塊的擴(kuò)充部分設(shè)為虛擬數(shù)據(jù)(dummy data)(不在意(don’t care)的值)的擴(kuò)充宏塊,進(jìn)行如下所述的編碼。
幀內(nèi)預(yù)測(cè)單元127按照H.264標(biāo)準(zhǔn),分別對(duì)圖5所示的9種模式生成各個(gè)評(píng)價(jià)值,選擇生成的評(píng)價(jià)值最佳的模式,并以選擇的模式進(jìn)行幀內(nèi)預(yù)測(cè)。例如,將用參考圖像與宏塊之間的對(duì)應(yīng)像素的差分絕對(duì)值和表示的預(yù)測(cè)誤差作為評(píng)價(jià)值,選擇該值最小的模式。
特別是,當(dāng)對(duì)擴(kuò)充宏塊進(jìn)行幀內(nèi)預(yù)測(cè)時(shí),將擴(kuò)充部分A1及A2的預(yù)測(cè)誤差強(qiáng)制地設(shè)為0后評(píng)價(jià),并確定模式。在幀內(nèi)預(yù)測(cè)中,位于圖像左上方的塊中,只能使用像素值128的平均值預(yù)測(cè)(預(yù)測(cè)模式2),位于除此以外的圖像上方的塊中,只能使用預(yù)測(cè)模式1、2、8,而對(duì)與相鄰塊中選擇的最小編號(hào)的預(yù)測(cè)模式相同的預(yù)測(cè)模式,可以用1比特表示,若考慮以上因素,則在抑制編碼量的方面上,較佳地,例如對(duì)所有的擴(kuò)充宏塊選擇預(yù)測(cè)模式2。
運(yùn)動(dòng)檢測(cè)單元130及運(yùn)動(dòng)補(bǔ)償單元131按照H.264標(biāo)準(zhǔn),在圖6所示的每個(gè)運(yùn)動(dòng)補(bǔ)償?shù)膯挝怀叽缰猩稍u(píng)價(jià)值,選擇評(píng)價(jià)值最佳的運(yùn)動(dòng)單位尺寸,并以選擇的單位尺寸進(jìn)行運(yùn)動(dòng)補(bǔ)償。例如,將用參考圖像與宏塊之間的對(duì)應(yīng)像素的差分絕對(duì)值和表現(xiàn)的預(yù)測(cè)誤差設(shè)為評(píng)價(jià)值,選擇該值最小的單位尺寸。
特別是,當(dāng)對(duì)擴(kuò)充宏塊進(jìn)行幀間預(yù)測(cè)時(shí),將擴(kuò)充部分B1及B2的預(yù)測(cè)誤差強(qiáng)制地設(shè)為0后評(píng)價(jià),選擇運(yùn)動(dòng)補(bǔ)償?shù)膯挝怀叽纭?br>
作為一個(gè)例子,當(dāng)選擇16×16像素作為單位尺寸時(shí),將上側(cè)塊B1及B2的預(yù)測(cè)誤差設(shè)為0后求評(píng)價(jià)值。該評(píng)價(jià)值中,僅包括擴(kuò)充宏塊的下側(cè)塊B3、B4的預(yù)測(cè)誤差。
作為其他例子,當(dāng)選擇16×8像素作為單位尺寸時(shí),將位于擴(kuò)充部分的塊的預(yù)測(cè)誤差設(shè)為0的同時(shí),確定用最少的編碼量表示運(yùn)動(dòng)矢量。若考慮用運(yùn)動(dòng)矢量與由周圍運(yùn)動(dòng)矢量生成的預(yù)測(cè)矢量之間的差分表示,則在抑制編碼量的方面上,較佳地,可以認(rèn)為運(yùn)動(dòng)矢量與預(yù)測(cè)矢量相等,并將差分矢量設(shè)為0。
然后,加法單元121按照如上所述確定的幀內(nèi)預(yù)測(cè)模式、運(yùn)動(dòng)補(bǔ)償?shù)膯挝怀叽缂斑\(yùn)動(dòng)矢量,對(duì)輸入圖像的各塊計(jì)算出的預(yù)測(cè)誤差,以及0值生成單元221對(duì)擴(kuò)充部分的塊A1、A2、B1和B2生成的0值,通過正交變換單元122、量化單元123以及熵編碼單元133,編碼成為流。
圖13是擴(kuò)充部分為輸入圖像的下側(cè)8行時(shí)的例子。
如圖所示,圖下方的宏塊中,下面的8行為擴(kuò)充的區(qū)域??紤]將宏塊的擴(kuò)充部分設(shè)為任意(不在意)的像素值的擴(kuò)充宏塊,進(jìn)行編碼。編碼的基本思想,與圖12所示的擴(kuò)充部分在上側(cè)時(shí)的情況相同。
幀內(nèi)預(yù)測(cè)單元127在對(duì)擴(kuò)充宏塊進(jìn)行幀內(nèi)預(yù)測(cè)時(shí),將擴(kuò)充部分C3及C4的預(yù)測(cè)誤差強(qiáng)制地設(shè)為0后評(píng)價(jià)的同時(shí),選擇預(yù)測(cè)模式。對(duì)塊C3,從塊C1的預(yù)測(cè)模式以及預(yù)測(cè)模式2之中,選擇編號(hào)小的預(yù)測(cè)模式。這是因?yàn)閴KC3的左側(cè)不存在塊,所以采用上述選擇方法。對(duì)塊C4,從塊C2的預(yù)測(cè)模式以及塊C3的預(yù)測(cè)模式之中,選擇編號(hào)小的預(yù)測(cè)模式。
另外,運(yùn)動(dòng)檢測(cè)單元130及運(yùn)動(dòng)補(bǔ)償單元131與上側(cè)擴(kuò)充的情況相對(duì)稱地,將下側(cè)的塊D3及D4的預(yù)測(cè)誤差強(qiáng)制地設(shè)為0后進(jìn)行幀間預(yù)測(cè),并選擇運(yùn)動(dòng)補(bǔ)償?shù)膯挝怀叽?,同時(shí)求運(yùn)動(dòng)矢量。
然后,加法單元121按照如上所述確定的幀內(nèi)預(yù)測(cè)模式、運(yùn)動(dòng)補(bǔ)償?shù)膯挝怀叽缂斑\(yùn)動(dòng)矢量,對(duì)輸入圖像的各塊計(jì)算出的預(yù)測(cè)誤差,以及0值生成單元221對(duì)擴(kuò)充部分的塊C3、C4、D3和D4生成的0值,通過正交變換單元122、量化單元123以及熵編碼單元133,編碼成為流。
本發(fā)明的圖像編碼裝置及其方法,可以利用于采用幀內(nèi)預(yù)測(cè)及幀間預(yù)測(cè)對(duì)圖像進(jìn)行編碼的裝置,特別有用于按照H.264標(biāo)準(zhǔn)對(duì)以1080i解像度表示的HDTV圖像進(jìn)行編碼。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種圖像編碼裝置,其特征在于,該裝置包括編碼單元,用于通過預(yù)測(cè)擴(kuò)充圖像,生成表示所述擴(kuò)充圖像的符號(hào),所述擴(kuò)充圖像是將輸入圖像擴(kuò)充為編碼塊的自然數(shù)倍大小的圖像;控制單元,用于控制所述編碼單元,使所述編碼單元生成將擴(kuò)充部分的預(yù)測(cè)誤差表示為0的符號(hào),所述擴(kuò)充部分是為成為所述擴(kuò)充圖像的一部分而在所述輸入圖像擴(kuò)充的部分。
2.根據(jù)權(quán)利要求1所述的圖像編碼裝置,其特征在于,所述控制單元包括圖像擴(kuò)充單元,用于無論所述輸入圖像包含的像素值的大小,通過使用參考值擴(kuò)充所述輸入圖像,生成所述擴(kuò)充圖像,該參考值是為用于按照H.264標(biāo)準(zhǔn)進(jìn)行幀內(nèi)預(yù)測(cè)時(shí)周圍像素不存在的情況而規(guī)定的值;所述編碼單元通過對(duì)由所述圖像擴(kuò)充部分生成的所述擴(kuò)充圖像,按照H.264標(biāo)準(zhǔn),采用幀內(nèi)預(yù)測(cè)進(jìn)行編碼,生成將所述擴(kuò)充部分的預(yù)測(cè)誤差表示為0的符號(hào)。
3.根據(jù)權(quán)利要求2所述的圖像編碼裝置,其特征在于,所述輸入圖像的行數(shù)為1080;所述圖像擴(kuò)充單元通過使用像素值128,對(duì)所述輸入圖像在上側(cè)擴(kuò)充8行,生成行數(shù)為1088的擴(kuò)充圖像。
4.根據(jù)權(quán)利要求2所述的圖像編碼裝置,其特征在于,所述控制單元進(jìn)一步包括圖像擴(kuò)充參數(shù)輸出單元,用于輸出表示所述擴(kuò)充部分位于所述輸入圖像的上方還是下方的圖像擴(kuò)充參數(shù);所述圖像擴(kuò)充單元,當(dāng)表示所述位置為上方時(shí),無論所述輸入圖像包含的像素值的大小,使用參考值,對(duì)所述輸入圖像在上側(cè)擴(kuò)充,該參考值是為用于按照H.264標(biāo)準(zhǔn)進(jìn)行幀內(nèi)預(yù)測(cè)時(shí)周圍像素不存在的情況而規(guī)定的值,當(dāng)表示所述位置為下方時(shí),使用所述輸入圖像的最下方行的像素值,對(duì)所述輸入圖像在下側(cè)擴(kuò)充。
5.根據(jù)權(quán)利要求2所述的圖像編碼裝置,其特征在于,所述控制單元進(jìn)一步包括圖像擴(kuò)充參數(shù)輸出單元,用于輸出表示所述輸入圖像為構(gòu)成運(yùn)動(dòng)圖像的幀還是半幀的圖像擴(kuò)充參數(shù);所述圖像擴(kuò)充單元,當(dāng)表示所述輸入圖像為幀時(shí),與表示所述輸入圖像為半幀的情況下的擴(kuò)充行數(shù)相比,對(duì)所述輸入圖像擴(kuò)充2倍的行數(shù)。
6.根據(jù)權(quán)利要求2所述的圖像編碼裝置,其特征在于,所述編碼單元采用幀內(nèi)預(yù)測(cè)及幀間預(yù)測(cè)中的任何一種,都可以對(duì)所述擴(kuò)充圖像進(jìn)行編碼;所述控制單元進(jìn)一步包括圖像擴(kuò)充參數(shù)輸出單元,用于輸出表示在所述擴(kuò)充圖像的編碼中,所述編碼單元采用幀內(nèi)預(yù)測(cè)及幀間預(yù)測(cè)中的哪一種的圖像擴(kuò)充參數(shù);所述圖像擴(kuò)充單元,當(dāng)表示采用幀內(nèi)預(yù)測(cè)時(shí),無論所述輸入圖像包含的像素值的大小,使用參考值擴(kuò)充所述輸入圖像,該參考值是為用于按照H.264標(biāo)準(zhǔn)進(jìn)行幀內(nèi)預(yù)測(cè)時(shí)周圍像素不存在的情況而規(guī)定的值,當(dāng)表示采用幀間預(yù)測(cè)時(shí),使用所述用于幀間預(yù)測(cè)的參考圖像的擴(kuò)充部分的像素值,擴(kuò)充所述輸入圖像。
7.根據(jù)權(quán)利要求1所述的圖像編碼裝置,其特征在于,所述控制單元包括圖像擴(kuò)充參數(shù)輸出單元,用于輸出表示所述擴(kuò)充部分相對(duì)于所述輸入圖像的位置和行數(shù)的圖像擴(kuò)充參數(shù);所述編碼單元包括0值生成單元,用于生成作為所述圖像擴(kuò)充參數(shù)表示的所述擴(kuò)充部分的預(yù)測(cè)誤差的0值;所述編碼單元對(duì)所述生成的0值和有關(guān)所述輸入圖像的預(yù)測(cè)誤差,按照H.264標(biāo)準(zhǔn)進(jìn)行編碼,生成將所述擴(kuò)充部分的預(yù)測(cè)誤差表示為0的符號(hào)。
8.根據(jù)權(quán)利要求7所述的圖像編碼裝置,其特征在于,所述編碼單元對(duì)所述擴(kuò)充部分的0值和有關(guān)所述輸入圖像的預(yù)測(cè)誤差,分別作為不同的編碼塊進(jìn)行編碼。
9.一種集成電路裝置,其特征在于,該裝置包括編碼電路,用于生成表示擴(kuò)充圖像的符號(hào),所述擴(kuò)充圖像是將輸入圖像擴(kuò)充為編碼塊的自然數(shù)倍大小的圖像;控制電路,用于控制所述編碼電路,使所述編碼電路生成將擴(kuò)充部分的預(yù)測(cè)誤差表示為0的符號(hào),所述擴(kuò)充部分是為成為所述擴(kuò)充圖像的一部分而在所述輸入圖像擴(kuò)充的部分。
10.一種圖像編碼方法,用于對(duì)圖像進(jìn)行編碼,其特征在于,該方法包括編碼步驟,用于通過預(yù)測(cè)擴(kuò)充圖像,生成表示所述擴(kuò)充圖像的符號(hào),所述擴(kuò)充圖像是將輸入圖像擴(kuò)充為編碼塊的自然數(shù)倍大小的圖像;控制步驟,用于控制所述編碼步驟,使所述編碼步驟生成將擴(kuò)充部分的預(yù)測(cè)誤差表示為0的符號(hào),所述擴(kuò)充部分是為成為所述擴(kuò)充圖像的一部分而在所述輸入圖像擴(kuò)充的部分。
11.一種程序,是計(jì)算機(jī)能夠執(zhí)行的用于對(duì)圖像進(jìn)行編碼的程序,其特征在于,該程序讓計(jì)算機(jī)執(zhí)行以下步驟編碼步驟,用于通過預(yù)測(cè)擴(kuò)充圖像,生成表示所述擴(kuò)充圖像的符號(hào),所述擴(kuò)充圖像是將輸入圖像擴(kuò)充為編碼塊的自然數(shù)倍大小的圖像;控制步驟,用于控制所述編碼步驟,使所述編碼步驟生成將擴(kuò)充部分的預(yù)測(cè)誤差表示為0的符號(hào),所述擴(kuò)充部分是為成為所述擴(kuò)充圖像的一部分而在所述輸入圖像擴(kuò)充的部分。
全文摘要
本發(fā)明提供了一種圖像編碼裝置,在采用H.264標(biāo)準(zhǔn)進(jìn)行圖像數(shù)據(jù)的編碼時(shí),減少編碼量。該裝置包括圖像擴(kuò)充單元,用于通過使用參考值擴(kuò)充輸入圖像,生成擴(kuò)充圖像,該參考值是為用于按照H.264標(biāo)準(zhǔn)進(jìn)行幀內(nèi)預(yù)測(cè)時(shí)周圍像素不存在的情況而規(guī)定的值;編碼單元,用于通過對(duì)由所述圖像擴(kuò)充部分生成的所述擴(kuò)充圖像,按照H.264標(biāo)準(zhǔn),采用幀內(nèi)預(yù)測(cè)進(jìn)行編碼,生成將所述擴(kuò)充部分的預(yù)測(cè)誤差表示為0的符號(hào)。
文檔編號(hào)H04N7/26GK1960495SQ20061013763
公開日2007年5月9日 申請(qǐng)日期2006年10月31日 優(yōu)先權(quán)日2005年10月31日
發(fā)明者大古瀨秀之 申請(qǐng)人:松下電器產(chǎn)業(yè)株式會(huì)社