專利名稱:用于縮放顯示mpeg2編碼圖像的編碼方法和設備的制作方法
技術領域:
本發(fā)明涉及一種與MPEG2標準兼容的編碼和解碼的方法和設備,用于縮放顯示傳輸的圖像。對圖像的縮放包含對這一圖像的一部分進行放大或者縮小。因此它包含修改圖像中被選用進行縮放顯示的部分的水平和垂直尺寸。
背景技術:
目前,基于互動的應用要求必須具有觀看縮小或者放大的圖像的能力。例如電子節(jié)目指南使用縮小尺寸的圖像以允許以OSD(代表在屏顯示)的形式在屏幕上顯示輔助信息。當人們期望將注意力集中于源圖像中某一部分的顯示的時候,圖像放大可能也是必需的。
這里提到的方法可以適用于任何類型的使用按照MPEG2標準編碼的數據流的設備,例如解碼器、DVD讀取器/記錄器、互聯網機頂盒等等。數據的傳送可能通過衛(wèi)星、電纜、陸地傳輸等等。
MPEG2壓縮并不是一個基于對象的處理,經過解碼的顯示圖像通常是經過編碼的源圖像的一個拷貝。因此為了獲得縮放模式下的特定顯示,需要對源圖像按照它必須顯示的形式進行編碼,也就是說在對這一源圖像之行了縮放以后進行編碼。因此,例如來自一個提供視頻序列的工作室的源圖像在視頻數據進行編碼和傳輸之前進行處理。對源圖像執(zhí)行縮放操作,并且它是經過了和視頻序列中其他的圖像同樣的編碼的新的“經過縮放的”圖像。這種方法的缺點是由于它缺乏應有的靈活性而受到限制。必須在編碼的時候確定要執(zhí)行的縮放。這些縮放在數據的接收時是不能再在解碼器級別上被修改的,例如作為一個瀏覽者選擇的數據或者參數功能。
發(fā)明內容
本發(fā)明的目的在于減少上述的缺點。
因此,本發(fā)明的主題是允許對按照MPEG2標準編碼的圖像進行縮放顯示的編碼方法。經過縮放的圖像按照經過編碼的圖像的水平和垂直相似放大率進行定義,其特征在于執(zhí)行下面的步驟通過應用水平和垂直縮放率來計算原始顯示長方形的水平和垂直尺寸,從中獲得按照輪廓和級別信息定義的目標顯示長方形的尺寸。
在MPEG2視頻數據流的display_horizontal_size和display_vertical_size字段中存儲原始顯示長方形的水平和垂直尺寸。
按照一個變化,由當縮小的時候在被顯示圖像中的圖像的位置或者由在放大的時候將被顯示的經過編碼的圖像的部分來定義經過縮放的圖像,上述方法的特點在于它還執(zhí)行下面的步驟針對經過編碼的圖像的中心計算原始顯示長方形的中心位置,從而定義水平和垂直偏移,在MPEG2視頻數據流的frame_centre_horizontal_offset和frame_centre_vertical_offset字段中存儲定義水平和垂直偏移的信息項。
本發(fā)明的主題也是一種用來執(zhí)行上述編碼方法的編碼設備,其特征在于包含鏈接到MPEG2編碼器的語法修改器,用于修改從編碼器來的原始MPEG2數據流的display_horzontal_size和dispay_vertical_size字段以及frame_centre_horizontal_offset和frame_centre_vertical_offset字段,分別作為期望的縮放的幅度和位置的函數。
按照一個變化,上述設備的特征在于它包含了鏈接到編碼器和語法修改器的應用程序同步器,用以在與期望縮放功能的圖象相對應的MPEG2數據流的兩個時間代碼時刻tc0和tc1之間控制語法修改。
本發(fā)明的想法是在由按照視頻MPEG2標準編碼的二進制視頻數據流語法所定義的字段中傳送一定數量的與圖像縮放相關的參數。這些字段從標準提供的范圍中選擇。這樣,編碼器可以動態(tài)地管理與縮放相關的參數,也就是將要看到的圖像的大小、它在被顯示圖像中的位置、在縮放模式下將要看到的被編碼圖像的部分,可以這樣做而不用改變被編碼圖像的諸如水平尺寸和垂直尺寸這些編碼參數。
圖l以圖表的形式示出了字段應用的例子;圖2給出了圖像縮小的例子并展示了一個初始顯示長方形8,其中包含了對應于被編碼圖像1的被編碼圖像7;圖3針對一種實現方式示出了設備的簡化圖;圖4在第一條線中表現了在應用程序運行的時刻tc0和tc1之間由編碼器構建的圖像13,以及在應用程序開始之前的圖像和應用程序結束之后的圖像,在第二條線中表現了當應用程序運行的時候解碼器顯示的圖像14,應用程序執(zhí)行以前以及應用程序執(zhí)行之后的圖像。
具體實施方式
下面回顧在視頻MPEG2標準(ISO/CEI標準13818-2)中與將要被編碼和顯示的圖像的尺寸相關的各種不同的已存的字段被編碼圖像或者更確切地說可顯示的圖像的大小在MPEG2數據流的序列頭中定義(視頻MPEG2標準的第6.3.3段),也可以選擇在序列擴展中定義(視頻MPEG2標準的第6.3.5段)。
第一個字段參考了horizontal_size、vertical_size字段和horizontal_size_value、vertical_size_value以及horizontal_size_extension、vertical_size_extension字段。這些字段實際上定義了整個圖像(兩幀)中可顯示的發(fā)光部分的像素寬度以及可顯示的發(fā)光部分就線數而言的像素高度。包含視頻的圖像部分以及因此不需要包含整數數量的宏塊的可顯示圖像部分被放置在被編碼圖像的左邊緣和上邊緣。
被顯示的圖像,其實是它的一部分的大小在sequence_display_extension中定義(視頻MPEG2標準的第6.3.6段)。需要注意的是這個擴展并沒有定義顯示過程,這個擴展的信息與解碼過程沒有任何關系,而且按照MPEG2規(guī)范的規(guī)定,這一信息可以被解碼器丟棄。兩個結構display_horizontal_size和display_vertical_size一起定義了一個可以被看作是可顯示的活動區(qū)域的長方形。如果這個顯示的長方形比被編碼的兩幀圖像要小,那么可以想象顯示過程將只能顯示這個圖像的一部分。相反,如果顯示的長方形比經過編碼的兩幀圖像要大,則顯示過程可能將在顯示設備的一部分而不是整個顯示設備上顯示重新構建的兩幀圖像。
MPEG2標準提出了一個picture_diplay_extension結構,這也是ISO/CEI文檔13818-2的第6.3.12段的主題。picture_display_extension使得圖像可以按照圖像顯示長方形的位置進行偏移,它的大小由前面所述的“sequence_display_extension”結構規(guī)定。有一個應用程序與圖像的再組織相關。frame_centre_horizontal_offset和frame_centre_vertical_offset字段指示了重新構建的圖像的中心與顯示長方形的中心的水平和垂直的偏移。圖像的中心偏移可以用來為執(zhí)行全屏的幀重建程序提供服務,通過這一偏移定義了一個對應于全屏的長方形區(qū)域,并且將這一區(qū)域在整個重新構建的圖像上進行了全景式轉換。這一程序尤其用在從16/9格式編碼的圖像轉換為4/3格式顯示的圖像的時候,這樣由4/3格式定義的區(qū)域就可以包含原來的16/9格式的圖像中最感興趣的部分。
需要注意的是在標準中關于序列方面(序列頭、序列顯示擴展)定義的字段實際上可能在每一幅圖像上進行傳輸(“用于擴展觸發(fā)代碼的識別碼”標準中表6.2里的協(xié)議保留值)。
縮放的幅度。
這里提出的想法是將包含在“display_horizontal_size”和“display_vertical_size”字段中的信息作為對縮放幅度的定義。
除了在這些字段的幫助下像MPEG2標準中建議的那樣定義顯示長方形或者被顯示圖像的尺寸以外,還可以定義“初始顯示長方形”或者原始圖像的尺寸,縮放將要從這一尺寸執(zhí)行。這個初始顯示長方形的尺寸是這樣的,對這個長方形所應用的縮放給出的圖像的大小正是目標顯示長方形的大小,也就是屏幕的大小,就像編碼器通過輪廓以及級別的選擇所定義的那樣。
這樣來說,初始顯示長方形的尺寸大于目標顯示長方形的時候就需要對圖像進行縮小,初始顯示長方形的尺寸小于目標顯示長方形的時候就需要對圖像進行放大。
因此縮放的幅度通過計算從級別和輪廓信息中得出的目標顯示長方形的大小除以在“display_horizontal_size”和“display_vertical_size”字段中表達的初始顯示長方形的大小的比值而獲得。當然,在將16/9格式轉換為4/3格式的時候,兩個字段中的后者不應該用于傳達多余的信息。
下面給出了上述的字段的例子應用,而且在圖1中以圖表的形式進行了展示。
讓我們考慮一個經過解碼或者重新構造的圖形,如圖中的標記1,它的大小是480像素576線(這實際上是在MPEG編碼器級別進行編碼的圖像的大小),一個目標顯示長方形或者屏幕大小,也就是標記2,是720像素576線。
下表說明了不同的縮放幅度是在“display_horizontal_size”和“display_vertical_size”字段中傳達的信息的一項功能。
h_zoom和v_zoom值對應于水平和垂直的縮放。小于1的縮放幅度意味著重新構建以后獲得的圖像的大小與被編碼的圖像的大小之比小于1,縮放幅度大于1表示獲得的圖像的大小與被編碼的圖像的大小之比大于1。如果這個值等于1,那么獲得的圖像也就是重新構建的圖像。
注釋1圖像縮小注釋2圖像放大注釋3大小大于被編碼圖像的大小的、從被編碼圖像獲得的圖像填充了屏幕。
從輪廓和級別信息以及從圖像格式信息(16/9)得出的目標顯示長方形(或者目標顯示)比被編碼的圖像的大小要大。
標記為3、4、5、6的圖象分別對應于下面的值h_zoom=v_zoom=0.50h_zoom=v_zoom=1.00h_zoom=1.50,v_zoom=1.00h_zoom=v_zoom=2.00display_horizontal_size和display_vertical_size字段是14位的字段。最大的十進制數值等于16383,在我們的例子中對應的最大縮小值在水平上是720/16383,在垂直上是576/16383。
被縮放圖像的位置。
圖像顯示擴展結構的frame_centre_horizontal_offset和frame_centre_vertical_offset字段用于傳達被縮放圖像的位置信息。同樣對應于被編碼圖像的中心相對于初始顯示長方形的中心的偏移。
被編碼圖像(實際上是可顯示圖像)的中心是由序列頭的“horizontal_size”和“vertical_size”字段定義的區(qū)域的中心。
和上面所說的相同,初始顯示長方形的中心是由“display_horizontal_size”和“display_vertical_size”字段定義的區(qū)域的中心。
圖2給出了圖像縮小的例子并展示了一個初始顯示長方形8,其中包含了對應于被編碼圖像1的被編碼圖像7。水平和垂直箭頭表示被編碼圖像中心相對于初始顯示長方形中心的水平和垂直偏移。
讓我們舉例考慮一個被解碼的或者重新構建的大小為480像素*576線的圖像,“display_horizontal_size”和“display_vertical_size”字段相應地傳達了值1440(像素)和1152(線),以及一個大小為720(像素)*576(線)的目標顯示長方形。
h_zoom=720/1440=0.50v_zoom=576/1152=0.50如果我們希望在初始顯示長方形的左上部分放置一個經過縮放的圖像,例如在距離初始顯示長方形的左上角的水平距離400像素、垂直距離300線的地方,偏移信息將有下面的值frame_centre_horizontal_offset=(400-1440/2)×16frame_centre_vertical_offset=(3OO-1152/2)×16這兩個值按照MPEG規(guī)范將要被丟棄。
將這兩個值乘以16的原因是偏移是以1/16像素為單位定義的。
值400和300對應了圖像的預縮放值,如果我們期望將經過縮放的圖像的位置定義在圖像在屏幕上實際看到的位置,這些值必須根據縮放的幅度進行更正。
在圖像放大的情況下,在被編碼圖像(7)中的初始顯示長方形(8)的位置定義了我們期望看到的放大的被編碼圖像的區(qū)域。
本發(fā)明的一個專門的實現方式涉及到了從交互應用中得到的視頻的動態(tài)格式。
圖3針對這樣的一個實現方式示出了設備的簡化圖。
MPEG2視頻編碼器91到9n接收不同的視頻源圖像。圖像按照一個恒定的圖像尺寸,例如720像素乘以576線進行編碼。作為視頻編碼器的一部分或者不作為視頻編碼器的一部分的視頻語法修改電路10i到10n為相關的編碼器i到n提供了用于修改MPEG2視頻語法字段的接口。
用于應用程序12的工具箱包含應用程序注入器,例如Open TV、Media Highway、Java格式,這些都是已經注冊的商標。
應用程序同步器,它將應用程序與視頻進行同步,用于依照MPEG2基本流時間代碼信息執(zhí)行應用程序,。
這個工具箱12接收來源于不同的編碼器i到n的信息并向語法修改電路10i到10n傳輸用于修改這些字段的數據。
它鏈接到多路復用電路11以段的形式傳輸私有數據和它們的PID(分組標識符)。
在可能的情況下,通過視頻語法修改電路10i到10n的不同的編碼器91到9n也可能鏈接到多路復用電路11,多路復用電路11在不同的基本流和私有數據的基礎上提供傳輸流。
隨后這個傳輸流被使用以將其傳輸到IRD接收機(代表集成的接收機/解碼器)。其中,這個并沒有在圖中描述的接收機包含用于對音頻/視頻數據進行解碼的解碼器以及用于執(zhí)行應用程序分組的應用程序引擎。它還可能是一個簡單的諸如硬盤、DVD或者類似的數字存儲裝置,以用于隨后對記錄的數據的使用。
語法修改電路10對MPEG2視頻語法的基本字段進行修改以允許按照上面描述的過程執(zhí)行對圖像的縮放。
在視頻流中,這些字段在一個對應于應用程序執(zhí)行期間的時間段中被修改。應用程序(私有數據)傳輸對應于初始和結束圖像的時間代碼,在這段時間里應用程序將在接收機級別被執(zhí)行。因此這就是對應于應用程序的起始和結束的“起始時間代碼”信息(tc0)和“停止時間代碼”信息(tc1)。在接收機中,應用程序引擎對不同的數據流提取出“時間代碼”信息,而且對給定的流,應用程序從對應于tc0的時間代碼的讀取到應用程序停止的tc1時刻觸發(fā)。在這兩個時刻中間,在縮放模式下執(zhí)行顯示。
應用程序同步器12接收到不同編碼器的時間代碼。它通過語法修改電路在對應于應用程序開始的起始時間代碼時刻和對應于應用程序中止的停止時間代碼時刻之間對MPEG2視頻語法的字段進行修改,這樣就可以使得針對位于這兩個時刻之間的圖像按照上述的方法縮小(或者增加)視頻圖像的尺寸。
這個“起始時間代碼”和“停止時間代碼”信息可以從外部數據生成。例如它可以從對人們期望能執(zhí)行縮放的時間段的圖像序列的識別而獲得,序列由這些時間代碼來定義。
在一個例子中,應用程序通過向圖像中插入信息來對處于交互OSD顯示模式下的被縮小圖像的顯示進行補充。這種交互模式使通過中斷應用程序的方式返回到正常模式成為可能。
圖4在第一條線中表現了在應用程序運行的時刻tc0和tc1之間由編碼器構建的圖像13,以及在應用程序開始之前的圖像和應用程序結束之后的圖像。在第二條線中表現了當應用程序運行的時候解碼器顯示的圖像14,應用程序執(zhí)行以前以及應用程序執(zhí)行之后的圖像。
在時刻tc0和tc1之間,作為從上面定義的字段中讀取數據的功能,接收機中的應用程序運行并縮小了圖像的尺寸。
MPEG解碼器接收到數據流并以傳統(tǒng)方式對其進行解碼。特別地,由于對與縮放幅度和被縮放圖像的位置相關的字段進行了填充,所以可以解碼進行了縮放操作的圖像,從而首先提供了一個重新構建的圖像,它的大小在“horizontal size”和“vertical size”字段中指示。作為縮放幅度的一個功能,隨后對這個重新構建的圖像進行過采樣或者下采樣,隨后被過濾,從而獲得人們期望顯示的圖像的大小。作為與偏移相關的數據的功能,對圖像(縮小)的位置或者被瀏覽的圖像部分的選擇進行計算。
一個可以作為示范的應用程序是廣告的插入。圖像的尺寸被縮小以展示一些文字。另一個例子與節(jié)目指南有關。在已有技術中,瀏覽者從一個在編碼器級別構建的隊列中進行選擇,而且通過跳過其它的視頻服務(基本視頻流)對圖像進行選擇。
在本發(fā)明中,節(jié)目的選擇觸發(fā)了對應于被選擇節(jié)目的MPEG數據流的應用程序的啟動。隨后在一個窗口中“實況”(實時的)顯示被選擇的頻道。
權利要求
1.一種對按照MPEG2標準編碼的圖像執(zhí)行縮放的編碼方法,被縮放的圖像由其對于被編碼圖像(1,7)的縮放率定義,其特征在于執(zhí)行下面的步驟通過應用縮放率來計算初始顯示長方形(8)的水平和垂直尺寸,從中可以獲得按照輪廓和級別信息定義的目標顯示長方形(2)的尺寸,在MPEG2比特流的“display_horizontal_size”和“display_vertical_size”字段中記錄初始顯示長方形的水平和垂直尺寸。
2.根據權利要求
1所述的方法,在縮小的情況下,被縮小的圖像由它在被顯示圖像中的位置定義,在放大的情況下,被放大的圖像由被顯示的被編碼圖像的部分定義,其特征在于執(zhí)行下面的步驟計算初始顯示長方形(8)的中心對于被編碼圖像(7)的中心的相對位置,以定義水平和垂直偏移,在MPEG2視頻數據流的frame_centre_horizontal_offset和frame_certre_vertical_offset字段中存儲定義水平和垂直偏移的信息項。
3.根據權利要求
1所述的方法,其特征在于,在與期望執(zhí)行縮放功能的圖像相對應的MPEG2數據流的兩個時間代碼時刻tc0和tc1之間執(zhí)行與數值在字段中的存儲相對應的流的修改。
4.一種用于執(zhí)行根據權利要求
2的編碼方法的編碼設備,其特征在于包括鏈接到MPEG2編碼器(9)的語法修改器(12),用于修改源自編碼器的MPEG2數據流的display_horizontal_size和display_vertical_size字段以及frame_centre_horizontal_offset和frame_centre_vertical_offset字段,分別作為期望進行縮放的幅度和位置的函數。
5.根據權利要求
4所述的設備,其特征在于包括鏈接到編碼器(9)和語法修改器(10)的應用程序同步器(12),用于控制與期望執(zhí)行縮放功能的圖像相對應的MPEG2數據流的兩個時間代碼時刻tc0和tc1之間的語法修改。
6.一種用于對MPEG2數據流進行解碼的方法,其特征在于執(zhí)行下面的操作讀取MPEG2視頻數據流的frame_centre_horizontal_offset和frame_centre_vertical_offset字段中的數據,讀取MPEG2視頻數據流的display_horizontal_offset和display_vertical_offset字段中的數據,作為被選擇的與這些數據相對應的被縮放圖像的水平和垂直尺寸的函數計算縮放率,作為這個縮放率的函數對接收到的被編碼圖像進行過采樣或者低采樣或者過濾或者插值,作為與偏移相關的數據的函數將經過采樣的圖像放置在圖像中將要顯示的位置。
7.一種接收機,包括根據權利要求
3的方法編碼的MPEG2數據流的解碼器、交互式應用程序引擎,其特征在于,應用程序引擎針對時間代碼位于值tc0和tc1之間的圖像(14)執(zhí)行與縮放功能相關的應用程序。
專利摘要
該方法的特點是被縮放圖像由它針對被編碼圖像(1,7)的水平和垂直縮放率定義,它執(zhí)行下面的步驟通過應用水平和垂直縮放率來計算初始顯示長方形(8)的水平和垂直尺寸,從中可以獲得按照輪廓和級別信息定義的目標顯示長方形(2)的尺寸,在MPEG2視頻數據流的display_horizontal_size和display_vertical_size字段中存儲初始顯示長方形的水平和垂直尺寸。
文檔編號H04N7/24GKCN1257649SQ01819355
公開日2006年5月24日 申請日期2001年11月16日
發(fā)明者斯特凡娜·阿利, 安德烈·馬格拉斯 申請人:湯姆森許可貿易公司導出引文BiBTeX, EndNote, RefMan