數據處理裝置及其方法以及編碼裝置和解碼裝置的製作方法
2023-04-30 05:09:46 3
專利名稱:數據處理裝置及其方法以及編碼裝置和解碼裝置的製作方法
技術領域:
本發明涉及一種用於執行運動圖像數據的運動補償的數據處理裝置及其方法,以及編碼裝置和解碼裝置。
背景技術:
近年來,一種與例如運動圖像專家組(MPEG)這樣一種方法相關實現的裝置在例如廣播站的信息傳送端和一般家庭中信息接收端的兩端都是普遍的,該方法通過例如離散餘弦變換這樣的正交變換和將圖像數據作為數字數據處理,在該位置上進行有效信息的發射和積累,並利用對於圖像信息唯一的冗餘信息的運動補償來進行壓縮。
隨著MPEG方法的發展,提出了一種實現更高數據補償率稱作H264/AVC(高級視頻編碼)的編碼方法。
MPEG方法和H264/AVC方法的編碼裝置,以與MPEG方法的編碼裝置相似的方式,通過將預定的運動補償塊作為一個單元執行運動預測和補償處理以產生運動矢量和預測圖像數據。
MPEG方法和H264/AVC方法的編碼裝置將通過在執行正交變換和量化後經歷反量化、反正交變換和重構處理而產生的有效像素區內部的基準圖像數據寫入存儲器並從存儲器讀出由已經獲得的運動矢量所指示的基準圖像數據內部的塊數據,以產生預測圖像數據。
順便提及,在H264/AVC方法中,允許產生指示上面提到的有效像素區外部的運動矢量。
在此情況下,編碼裝置在產生預測圖像數據時判斷包括由運動矢量指示的基準圖像數據內部的塊數據的像素數據是否存在於有效像素內部,對於判斷不存在於有效像素區內部的情況,編碼裝置複製有效像素區內部的像素數據並產生有效像素區外部像素數據,並用其產生預測圖像。
然而,上面提到的傳統編碼裝置存在這樣一個問題,即,由於無論像素數據什麼時候從存儲器中讀出用於產生預測圖像數據都需要判斷像素數據是否是有效像素區內部的數據這樣的一個步驟,因此需要很長的處理時間。
同樣在解碼裝置中在產生預測圖像數據的情況時,存在類似於上面提到的編碼裝置的問題。
發明內容
考慮到上面提到的傳統技術做出了本發明,本發明的一個目的是提供一種即使在使用指示有效像素區外部的運動矢量的情況下也能夠在短時間內產生預測圖像數據的數據處理裝置及其方法,以及編碼裝置和解碼裝置。
為了解決上面提到的傳統技術的問題,第一發明的數據處理裝置是一種用於基於運動矢量和有效像素區的第一基準圖像數據、產生圖像數據的預測圖像數據作為編碼目標或解碼目標的數據處理裝置,該裝置具有存儲第一基準圖像數據的存儲器;用於在產生預測圖像數據之前、基於在存儲器中存儲的第一基準圖像數據產生有效像素區周圍的預定非有效像素區的第二基準圖像數據並將其寫入存儲器的預處理器;用於在運動矢量指示非有效像素區的情況下基於運動矢量讀出由預處理器寫入存儲器的第二基準圖像數據的閱讀器;和基於由閱讀器讀出的第二基準圖像數據產生預測圖像數據的產生器。
第一發明的操作解釋如下。
首先,在產生預測圖像數據之前,預處理器基於存儲在存儲器中的第一基準數據產生在有效像素區周圍的預定非有效像素區的第二基準圖像數據。
接下來,在運動矢量指示非有效像素區的情況下,閱讀器基於運動矢量讀出通過預處理器寫入存儲器的第二基準圖像數據。
接下來,基於通過閱讀器讀出的第二基準數據,產生器產生預測圖像數據。
第二發明的第二數據處理方法是一種基於運動矢量和有效像素區的第一基準圖像數據產生編碼目標或解碼目標圖像數據的預測圖像數據的數據處理方法,該方法具有基於在存儲器中存儲的第一基準圖像數據產生有效像素區周圍的預定非有效像素區的第二基準圖像數據並將其寫入存儲器的第一步驟,在運動矢量指示非有效像素區的情況下基於運動矢量讀出在第一步驟中寫入存儲器的第二基準圖像數據的第二步驟,和基於在第二步驟中從存儲器中讀出的第二基準圖像數據產生預測圖像數據的第三步驟。
第二發明的數據處理方法的操作解釋如下。
首先,在第一步驟,基於存儲在存儲器中的第一基準圖像數據產生在有效像素區周圍的預定非有效像素區的第二基準圖像數據,並將其寫入存儲器。
接下來,在第二步驟,在運動矢量指示非有效像素區的情況下,基於運動矢量讀出在第一步驟寫入存儲器的基準圖像數據。
接下來,在第三步驟,基於在第二步驟從存儲器讀出的第二基準圖像數據產生預測圖像數據。
第三發明的編碼裝置是一種編碼裝置,該編碼裝置具有對編碼圖像數據和預測圖像數據之間的差進行編碼的編碼器;用於存儲有效像素區的第一基準圖像數據的存儲器;用於產生編碼圖像數據的運動矢量的運動預測電路;和基於運動預測電路產生的運動矢量和存儲在存儲器中的基準圖像數據產生預測圖像數據的運動補償電路,其中所述運動補償電路具有用來在產生預測圖像數據之前基於存儲在存儲器中的第一基準圖像數據產生在有效像素區周圍的預定非有效像素區的第二基準圖像數據並將其寫入存儲器的預處理器;用於在由運動預測電路產生的運動矢量指示非有效像素區的情況下,基於運動矢量讀出由預處理過程寫入存儲器的第二基準圖像數據的閱讀器;和用於基於由閱讀器讀出的第二基準圖像數據產生預測圖像數據的產生器。
第三發明的編碼裝置的操作解釋如下。
編碼器對編碼圖像數據和預測圖像數據的差進行編碼。
運動預測電路產生編碼圖像數據的運動矢量。
接下來,運動補償電路基於由運動預測電路產生的運動矢量和存儲在基準圖像數據中的基準圖像數據產生預測圖像數據。
運動補償電路的操作等同於第一發明的數據處理裝置。
第四發明的解碼裝置是一種解碼裝置,該裝置具有對作為解碼目標的圖像數據進行解碼的解碼器;用於在解碼後存儲有效像素區的第一基準圖像數據的存儲器;基於加入到作為解碼目標的圖像數據的運動矢量和從存儲器讀出的第一基準圖像數據產生預測圖像數據的運動補償電路;和用於把由運動補償電路產生的預測圖像數據與由解碼器解碼並產生的圖像數據相加的計算器,其中所述運動補償電路具有預處理器,用於在產生預測圖像數據之前基於存儲在存儲器中的第一基準圖像數據產生有效像素區周圍的預定非有效像素區的第二基準圖像數據並將其寫入存儲器中;閱讀器,用於在由運動預測電路產生的運動矢量指示非有效像素區的情況下,基於運動矢量讀出由預處理過程寫入存儲器的第二基準圖像數據;和產生器,用於基於由閱讀器讀出的第二基準圖像數據產生預測圖像數據。
第四發明的解碼裝置的操作解釋如下。
解碼器對作為解碼目標的圖像數據進行解碼。
運動補償電路基於加入到作為解碼目標的圖像數據的運動矢量和從存儲器中讀出的第一基準圖像數據產生預定圖像數據。
接下來,計算器把由運動補償電路產生的預測圖像數據和解碼器解碼並產生的圖像數據相加。
根據本發明,即使在使用運動矢量指示有效像素區外部的情況下,也可以提供能夠在短時間內產生預測圖像數據的數據處理裝置及其方法,以及編碼裝置和解碼裝置。
從下面參考附圖給出的優選實施例的描述中,本發明的這些和其它目的特徵將變得明顯,其中圖1是本發明第一實施例通信系統的框圖;圖2是圖1所示的編碼裝置的功能框圖;圖3是用於解釋存儲在圖2所示的存儲器中的有效像素區的基準圖像數據和在非有效像素區外部的基準數據的視圖;圖4是用於解釋由圖2所示的運動補償電路使用的基準運動補償塊的視圖;圖5是圖2中所示的運動補償電路的框圖;圖6是用於解釋圖5所示非有效像素區構成電路的處理的視圖;圖7是用於解釋圖5所示非有效像素區構成電路的處理的視圖;圖8是用於解釋在圖2所示的編碼裝置上使用的運動補償塊的視圖;圖9是解釋圖5所示的MV變換電路的處理的視圖;圖10A和10B是解釋圖5所示的MV變換電路的處理的視圖;圖11是用於解釋圖5所示的運動補償電路的操作實例的流程圖;圖12是用於詳細解釋在圖11中所示步驟ST2的流程圖;圖13是用於解釋本發明第二實施例編碼裝置的運動補償電路的處理的視圖;
圖14是用於解釋本發明第二實施例編碼裝置的運動補償電路的處理的視圖;圖15是本發明第三實施例的解碼裝置的框圖;圖16是圖15所示的運動預測/補償電路的框圖;以及圖17是用於解釋本發明實施例的修改實例的視圖。
具體實施例方式
在下文中,將參考附圖描述根據本發明優選實施例的H264/AVC方法的編碼裝置。
第一實施例在下文中,將詳細解釋第一實施例通信系統的編碼裝置。
本實施例對應於第一、第二和第三發明。
在本實施例中,將結合實例解釋通過非隔行掃描獲得的數據作為成為編碼目標的圖像數據的情況。
圖1是本實施例的通信系統1的示意圖。
如圖1所示,通信裝置1有安置在發送端的編碼裝置2和安置在接收端的解碼裝置3。
通信系統1產生通過例如離散餘弦變換和Karhunen-Loeve變換這樣的正交變換和運動補償壓縮的幀圖像數據(比特流),並在發送端的編碼裝置2中調製之後經例如衛星廣播電波、有線電視網、電話線網和行動電話線網這樣的傳輸介質發送該幀圖像數據。
在接收端,在解碼接收的圖像信號之後,產生和利用由正交變換的反向變換和上面提到的調製中的運動補償展寬(stretch)的幀圖像數據。
注意,上面的傳輸介質可以是例如光碟、磁碟和半導體存儲器這樣的記錄介質。
圖1所示的解碼裝置3執行相應於編碼裝置2編碼的解碼。
將在第三實施例中詳細解釋解碼裝置3。
在下文中,將解釋如圖1所示的編碼裝置2。
圖2是圖1所示的編碼裝置2的整體框圖。
如圖2所示,編碼裝置2包括,例如,A/D轉換器電路22、屏幕分類(screensorting)電路23、計算電路24、正交變換電路25、量化電路26、無損耗編碼電路27、緩衝器28、反向量化電路29、反向正交變換電路30、速率控制電路32、重構電路33、解塊濾波器34、存儲器35、運動預測電路36和運動補償電路37。
在本實施例中,編碼裝置2與第三發明的編碼裝置相對應。
進一步,運動補償電路37與第一發明的數據處理裝置和第三發明的運動補償電路相對應。
在下文中,將解釋編碼裝置2的部件。
A/D轉換器電路22把由輸入的模擬亮度信號Y、色差信號Cb、Cr組成的原始圖像信號S10轉換為數字圖像信號S22,並將其輸出到屏幕分類電路23。
屏幕分類電路23把從A/D轉換器電路22輸入的圖像數據S22根據由其畫面(picture)類型I、P、B組成的畫面組(group of pictures,GOP)結構按照編碼順序進行分類,並把經過分類的圖像數據S23輸出到計算電路24、速率控制電路32和運動預測電路36。
計算電路24產生指示作為在圖像數據S23內部處理目標的運動補償塊MCB和相應於MCB的從運動預測/補償電路輸入的預測圖像數據PI的運動補償塊RMCB2之間的差的圖像數據S24,並將其輸出到正交變換電路25。
正交變換電路25對圖像數據S24執行例如離散餘弦變換和Karhunen-Loeve變換這樣的正交變換以產生圖像數據S25(例如DCT係數),並將其輸出到量化電路26。
量化電路26用從速率控制電路32輸入的量化尺度量化圖像數據S25以產生圖像數據S26,並將其輸出到無損耗編碼電路27和反向量化電路29。
無損耗編碼電路27把執行了可變長度編碼或算術編碼的圖像數據存儲在緩衝器28中。
此時,無損耗編碼電路27對從運動預測電路36輸入的運動矢量MV進行編碼,並在執行了間預測(inter-prediction)編碼的情況下存儲在報頭數據中。
在執行調製等等之後,發送存儲在緩衝器28中的圖像數據。
反向量化電路29產生由其它運動補償塊MCB參考的基準圖像數據的運動補償塊MCB的圖像數據S26被反量化所得的信號,並將其輸出到反向正交變換電路30。
反向正交變換電路30對從反向量化電路29輸入的圖像數據S26執行在正交變換電路25中的正交變換的反變換,並將其輸出到重構電路33。
重構電路33相加相應於從運動補償電路37輸入的預測圖像PI的運動補償塊RMCB2和從反向正交變換電路30輸入的圖像數據S26的運動補償塊MCB,並重構運動預測/補償處理中參考的基準運動補償塊RMCB,並將其輸出到解塊過濾器34。
解塊濾波器34去除從重構電路33輸入的重構基準運動補償塊RMCB中的塊失真,並將其寫入到存儲器35中。
在解塊濾波器34把構成一個畫面的所有基準運動補償塊RMCB寫入到存儲器35時,如圖3所示,用於一個畫面的基準圖像數據REF_E存儲在存儲器35中。基準圖像數據REF_E是關於有效像素區的圖像數據,並且不包括關於有效像素區周圍預定範圍的非有效像素區的圖像數據。
速率控制電路32產生量化參數QP以便基於,例如,從屏幕分類電路23輸入的圖像數據S23來精細量化圖像中具有高複雜度的部分並粗略量化圖像中具有低複雜度的部分。
然後,速率控制電路32基於上面產生的量化參數QP和從屏幕分類電路23讀出的圖像數據產生量化尺度,並將其輸出到量化電路26。
運動預測電路36通過把從屏幕分類電路23輸入的圖像數據S23的運動補償塊MCB作為單元產生運動矢量MV。
此時,運動預測電路36實質上可以通過預定預測算法產生指示相應於存儲在存儲器35中的基準圖像數據REF_E的有效像素區外部的運動矢量MV。
運動補償電路37基於從運動預測電路36輸入的運動矢量MV和存儲在存儲器35中的基準圖像數據產生圖像數據S23的預測圖像數據PI,並將其輸出到計算電路24和重構電路33。
具體地,關於構成圖像數據S23的每一運動補償塊MCB,運動補償電路37讀出由從關於運動補償塊MCB的運動預測電路36輸入的運動矢量MV指示的基準圖像數據內部的基準運動補償塊RMCB1,並把基於讀出的基準運動補償塊RMCB1產生的基準運動補償塊RMCB2輸出到計算電路24和重構電路33。
這裡,基準運動補償塊RMCB1是,如圖4所示,對於由運動矢量MV指示的基準運動補償塊RMCB添加在垂直方向上先掃描側的兩個像素和後掃描側的三個像素和在水平方向上先掃描側的兩個像素和後掃描側的三個像素的像素數據的圖像數據。
如上面所提到的,基準運動補償塊RMCB1由預測圖像數據PI的產生算法和重構圖像構成。
圖5是圖1所示的運動補償電路37的框圖。
正如圖5所示,運動補償電路37具有,例如,非有效像素區構成電路51、MV變換電路52、讀出電路53和PI產生電路54。
這裡,非有效像素區構成電路51和MV變換電路52與第一和第三發明的預處理器對應,讀出電路53與第一和第三發明的閱讀器對應,並且PI產生電路54與第一和第三發明的產生器對應。
另外,圖5所示有效像素區的基準圖像數據REF_E與第一到第三發明的第一基準圖像數據對應,非有效像素區REF_N的基準圖像數據與第一到第三發明的第二基準圖像數據對應。
另外,運動補償塊MCB與本發明的塊數據對應。
非有效像素區構成電路51,基於從存儲器35中讀出的圖3所示的有效像素區的基準圖像數據REF_E,產生在有效像素區周圍的非有效像素區的基準圖像數據REF_N,並將其寫入存儲器35。
基準圖像數據REF_N,如圖6所示,由基準圖像數據REF_NH1、NH2、NV1和NV2構成。
如圖6所示,基準圖像數據REF_NH1是有關於第一非有效像素區的數據,該第一非有效像素區在沿垂直於屏幕掃描方向的垂直方向V上延伸並在水平方向H上具有16比特長的長度的第一側L1上與有效像素區相鄰。
非有效像素區構成電路51,如圖7所示的,通過複製在垂直方向V上具有相同位置的第一側L1的有效像素區內部的像素數據而產生上面提到的第一非有效像素區的像素位置的像素數據來產生基準圖像數據REF_NH1。
另外,基準圖像數據REF_NH2是有關於第二非有效像素區的數據,該第二非有效像素區在與上面提到的第一側L1相對、沿垂直方向V延伸並且在水平方向H上具有16比特長的長度的第二側L2上與有效像素區相鄰。
非有效像素區構成電路51通過複製在垂直方向V上具有相同位置的第二側L2的有效像素區內部的像素數據而產生上面提到的第二非有效像素區的像素位置的像素數據來產生基準圖像數據REF_NH2。
另外,基準圖像數據REF_NV1是有關於第三非有效像素區的數據,該第三非有效像素區在沿平行於屏幕掃描方向的水平方向H延伸並且在垂直方向V上具有32比特長的長度的第三側L3上與有效像素區相鄰。
非有效像素區構成電路51,如圖7所示的,通過複製在水平方向H上具有相同位置的第三側L3的有效像素區內部的像素數據而產生上面提到的第三非有效像素區的像素位置的像素數據來產生基準圖像數據REF_NV1。
另外,基準圖像數據REF_NV2是有關於第四非有效像素區的數據,該第四非有效像素區在與上面提到的第三側L3相對、沿水平方向H延伸並且在垂直方向V上具有32比特長的長度的第四側L4上與有效像素區相鄰。
非有效像素區構成電路51通過複製在水平方向H上具有相同位置的第四側L4的有效像素區內部的像素數據而產生上面提到的第四非有效像素區的像素位置的像素數據來產生基準圖像數據REF_NV2。
這裡,正如上面所提到的,在水平方向H上的比特長度規定為16,並且在垂直方向V上的比特長度規定為32的原因是,正如圖8所示,因為運動補償塊MCB的最大尺寸是16(H)×16(V),而後面提到的宏塊對(macro blockpair)的尺寸變為16(H)×32(V)。
在從運動預測電路36輸入的運動矢量MV指示圖3所示有效像素區和第一到第四非有效像素區兩者外部的情況下,MV變換電路52對運動矢量MV進行變換以便指示最接近的第一到第四非有效像素區的內部,並產生新的運動矢量MV1。
具體地,在由運動矢量MV標識的基準圖像數據內部的基準運動補償塊RMCB1的整體或部分指示有效像素區和第一到第四非有效像素區兩者外部的情況下,MV變換電路52產生運動矢量MV1以便整個基準運動補償塊RMCB1落在第一到第四非有效像素區內。
由此,例如,如圖9所示,把位於有效像素區和第一到第四非有效像素區兩者外部的基準運動補償塊RMCB1移動到第三非有效像素區。
進一步,即使在移動了從運動預測電路36輸入的由運動矢量指示的基準圖像數據內部的基準運動補償RMCB1的情況下,整個基準運動補償塊RMCB1也沒有落入第一到第四非有效像素區,MV變換電路52把RMCB1劃分為圖8所示的任何尺寸並獲得多個運動補償塊MCB,並移動它們以便與此相應的基準運動補償塊RMCB1落在第一到第四非有效像素區內來產生對應於移動之後的每一基準運動補償塊RMCB的運動矢量MV1。
此時,對於變為在圖像數據S23中的處理目標的運動補償塊MCB,以類似的方式進行劃分。
MV變換電路52把圖10A所示的相應於,例如,16×16運動補償塊MCB的21×21基準運動補償塊RMCB1劃分為,如圖10B所示,分別相應於兩個8×16的運動補償塊的兩個13×21的基準運動補償塊B1,B2。
然後,MV變換電路52把基準運動補償塊B2移動到第一非有效像素區。
此時,MV變換電路52以相類似的方式也把處理目標的運動補償塊MCB劃分為兩個8×16的運動補償塊,並在上面提到的有關它們每一個的移動之後,根據基準運動補償塊的位置產生運動矢量MV1。
讀出電路53從存儲器35中讀出構成由從MV變換電路52輸入的運動矢量MV1指示的基準運動補償塊RMCB1的像素數據,並產生它提供給PI產生電路54。
此時,通過上面提到的非有效像素區構成電路51和MV變換電路52的處理,把由運動矢量MV1指示的基準運動補償塊RMCB1的所有像素數據存儲到存儲器35內。因此,讀出電路53每次從存儲器35中讀出基準運動補償塊RMCB1的像素數據時,沒有必要去判斷像素數據是否是有效像素區內部的數據,從而,可以使處理負荷比傳統處理小。
PI產生電路54基於從讀出電路53輸入的構成基準運動補償塊RMCB1的像素數據產生構成預測圖像數據PI的運動補償塊MCB2,並將其輸出到計算電路24和重構電路33。
在下文中,是圖5所示的運動預測電路36和運動補償電路37的操作實例。
圖11是用於解釋圖5所示運動預測電路36和運動補償電路37操作實例的流程圖。
步驟ST1運動補償電路37判斷構成由圖像數據S23內部的運動補償塊MCB參考的基準圖像數據的有效像素區內部的基準圖像數據REF_E的所有像素數據是否通過解碼處理寫入了存儲器35,其中圖像數據S23成為運動矢量MV的產生目標(處理目標),並且如果判斷寫入了,則前進到步驟ST2。
這裡,上面提到的解碼處理是反向量化電路29、反向正交變換電路30、重構電路33和解塊濾波器34的處理。
步驟ST2
運動預測電路36通過把從屏幕分類電路23輸入的圖像數據S23的運動補償塊MCB作為單元產生運動矢量MV。
此時,運動補償塊36實際上可以通過預定的預測算法產生指示相應於存儲在存儲器35中的基準圖像數據REF_E的有效像素區外部的運動矢量MV。
步驟ST3MV變換電路52把從運動預測電路36輸入的運動矢量MV變換為指示圖3所示有效像素區和第一到第四非有效像素區內部的新的運動矢量MV1,並將其輸出到讀出電路53。
MV變換電路52的處理將通過使用後面的流程圖來解釋。
步驟ST4非有效像素區構成電路51基於從存儲器35讀出的圖3所示有效像素區的基準圖像數據REF_E產生有效像素區周圍的非有效像素區的基準圖像數據REF_N,並將其寫入存儲器35。
具體地,非有效像素區構成電路51產生圖6所示的基準圖像數據REF_NH1、NH2、NV1和NV2作為基準圖像數據REF_N,並將其寫入存儲器35。
步驟ST5讀出電路53從存儲器35中讀出構成由從MV變換電路52輸入的運動矢量MV指示的基準運動補償塊RMCB1的圖像數據,並將其輸出到PI產生電路54。
然後,PI產生電路54基於構成從讀出電路53輸入的基準運動補償塊RMCB1的像素數據產生構成預測圖像數據的運動補償塊MCB2,並將其輸出到計算電路24和重構電路33。
在下文中,將詳細解釋圖11所示步驟ST2的處理。
圖12是用於解釋圖11所示步驟ST2處理的流程圖。
步驟ST21MV變換電路52判斷從運動預測電路36輸入的運動矢量MV是否指示圖3所示有效像素區和第一到第四非有效像素區兩者的外部,並且如果判斷是,則前進到步驟ST22。
步驟ST22MV變換電路52變換上面提到的運動矢量MV以指示最接近運動矢量MV指示部分的第一到第四非有效像素區的內部,並產生新的運動矢量MV1。
具體地,在由運動矢量MV指示的基準圖像數據內部的基準運動補償塊RMCB1的整體或部分位於有效像素區和第一到第四非有效像素區兩者外部的情況下,MV變換電路52變換運動矢量MV以便基準運動補償塊RMCB1的整體都位於第一到第四非有效像素區的內部,並且產生運動矢量MV1。
步驟ST23在移動由從運動預測電路36輸入的運動矢量MV指示的基準圖像數據內部的基準運動補償塊RMCB1之後,MV變換電路52判斷基準運動補償塊RMCB1的整體是否落在第一到第四非有效像素內部,並且如果判斷沒有落在其內部,則前進到步驟ST24。
步驟ST24MV變換電路52把上面提到的運動補償塊MCB1劃分為圖8所示的任一尺寸,獲得多個運動補償塊MCB,並產生相應於多個運動補償塊MCB中每一個的運動矢量MV1以便相應於這些MCB的基準運動補償塊RMCB1落在第一到第四非有效像素區內部。
同時,也劃分成為圖像數據S23內部的處理目標的運動補償塊MCB。
在下文中,將解釋圖2所示編碼裝置2的整個操作。
當輸入原始圖像信號S10時,在A/D轉換器電路22中把原始圖像信號S10轉換成數字圖像信號。
接下來,根據成為輸出的圖像壓縮信息的GOP結構,在屏幕分類電路23中對圖像數據S22中畫面進行分類,從而把獲得的圖像數據D23輸出到計算電路24、速率控制電路32和運動預測電路36。
接下來,計算電路24檢測在從屏幕分類電路23來的構成圖像數據S23的運動補償塊MCB和從運動預測/補償電路39來的預測運動補償塊RMCB2(預測圖像數據PI)之間的差別,並把示出其差別的圖像數據S24輸出到正交變換電路25。
接下來,正交變換電路25對圖像數據S24執行例如離散餘弦變換和Karhunen-Loeve變換這樣的正交變換,並將其輸出到量化電路26。
接下來,量化電路26量化圖像數據S25,並把表示量化變換係數的圖像數據S26輸出到無損耗編碼電路27和反向量化電路29。
接下來,無損耗編碼電路27對圖像數據S26執行例如可變長度編碼或算術編碼這樣的無損耗編碼,並把從運動預測電路36輸入的運動矢量MV加入到報頭以產生圖像數據,並在緩衝器28中累加它。
另外,速率控制電路32基於圖像數據S23和來自緩衝器28的圖像數據控制量化電路26中的量化速率。
另外,反向正交變換電路30對從量化電路26輸入的圖像數據S26執行反向量化,並將其輸出到重構電路33。
重構電路33相加從運動補償電路37來的預測圖像數據PI和從反向正交變換電路30來的圖像數據S30以產生作為重構圖像的基準圖像數據,並將其輸出到解塊濾波器34。
解塊濾波器34去除從重構電路33輸入的基準圖像數據的塊失真,並將其寫入存儲器35。
另外,運動預測電路36基於從屏幕分類電路23來的圖像數據S23產生作為處理目標的運動補償塊MCB的運動矢量MV,並將其輸出到運動補償電路37。
然後,運動補償電路37執行圖3到圖12所解釋的處理以產生預測圖像數據PI,並將其輸出到計算電路24和重構電路33。
正如上面所解釋的,在編碼裝置2中,在運動補償電路37中產生預測圖像數據PI之前,運動補償電路37產生圖6所示有效像素區外部的第一到第四非有效像素區的基準圖像數據REF_NH1、NH2、NV1和NV2,並將其寫入存儲器35。
然後,補償電路37從存儲器35中讀出由運動預測電路36產生的運動矢量MV指示的基準運動補償塊RMCB的像素數據,並且用以在不用判斷像素數據是否是有效像素區內部的數據的情況下就能產生預測圖像數據PI。
因此,根據編碼裝置2,與傳統裝置比較,在短時間內能產生預測圖像數據PI。
另外,在編碼裝置2中,如使用圖9和圖10所解釋的,由圖5所示補償電路37的MV變換電路52變換運動矢量MV來產生新的運動矢量MV1以便由運動矢量MV指示的基準運動補償塊RMCB落在第一到第四非有效像素區。然後,在讀出電路35中從存儲器35讀出由運動矢量MV1指示的基準運動補償塊RMCB。
因此,根據編碼裝置2,即使在運動矢量MV指示有效像素區和第一到第四非有效像素區兩者外部的情況下,也可以基於運動矢量MV1從存儲器35中讀出基準運動補償塊RMCB。
也就是說,可避免不能從存儲器35中讀出用於產生預測圖像數據PI的基準運動補償塊RMCB的情況。
第二實施例本實施例以與第一實施例相類似的方式與第一、第二和第三發明對應。
除了在第一實施例中解釋的補償電路37的非有效像素區構成電路51的處理之外,本實施例的編碼裝置等同於第一實施例的編碼裝置2。
然而,儘管在上面第一實施例中用實例解釋了由非隔行掃描獲得的圖像數據23,但在本實施例中,通過非隔行掃描和隔行掃描的任何一種獲得圖像數據S23。
在圖11所示的步驟ST24中的本發明的非有效像素區構成電路51a,正如圖13所示,基於有效像素區的基準圖像數據以與第一實施例相類似的方式產生第一非有效像素區的基準圖像數據REF_NH1和第二非有效像素區的基準圖像數據REF_NH2,並將其寫入存儲器35中。
也就是說,非有效像素區構成電路51a不執行產生第三非有效像素區的基準圖像數據REF_NV1和第四非有效像素區的基準圖像數據REF_NV2並將其以塊寫入存儲器35中的操作。
在基於運動矢量MV由運動預測電路36標識的每一基準運動補償塊RMCB1位於有效像素區和非有效像素區兩者外部或橫跨它們外部的情況下,非有效像素區構成電路51a基於在有效像素區中的基準圖像數據複製第三和第四非有效像素區的所需的像素數據。
圖14是用於解釋有效像素區構成電路51a的處理的視圖。
步驟ST41非有效像素區構成電路51a電路基於有效像素區的基準圖像數據以與第一實施例相類似的方式產生第一非有效像素區的基準圖像數據REF_NH1和第二非有效像素區的基準圖像數據REF_NH2,並將其寫入存儲器35。
步驟ST42非有效像素區構成電路51a判斷在由來自MV變換電路52的運動矢量MV1標識的基準圖像數據中的基準運動補償塊RMCB1的頂部邊緣(圖3所示垂直方向V上的最上面邊緣)的像素數據是否位於圖3所示有效像素區的上邊,並且當判斷位於上邊時前進到步驟ST43,或者當判斷不是位於上邊時前進到步驟ST44。
步驟ST43非有效像素區構成電路51a在上面提到的第三側L3上複製在有效像素區內部的像素數據,並且將其寫入存儲器35作為基準圖像數據REF_NV1的一部分,其中第三側的位置等同於在步驟ST42中判斷的在上面提到區域中水平方向H上位於有效像素區的上邊的區域。
步驟ST44非有效像素區構成電路51a判斷在由來自MV變換電路52的運動矢量MV1標識的基準圖像數據中的基準運動補償塊RMCB1的底部邊緣(圖3所示垂直方向V上的最下面邊緣)的像素數據是否位於圖3所示有效像素區的下邊,並且當判斷位於下邊時前進到步驟ST45,或者當不位於下邊時終止該處理。
步驟ST45非有效像素區構成電路51a在上面提到的第四側L4上複製有效像素區內部的像素數據,並且將其寫入存儲器35作為基準圖像數據REF_NV2的一部分,其中第四側的位置等同於在步驟ST44中判斷的在上面提到區域中水平方向H上位於有效像素區下邊的區域。
在本實施例中,在混合非隔行掃描和隔行掃描的情況下,通過產生僅僅關於必要區域的基準圖像數據REF_NV1和REF_NV2並將其寫入存儲器35,可以減少寫入存儲器35的數量並提高處理效率。
第三實施例在本實施例中,將解釋圖1所示解碼裝置3。
本發明對應於第四發明。
圖15是圖1所示解碼裝置的功能框圖。
正如圖15所示,解碼裝置3具有,例如,累加緩衝器71、無損耗解碼電路72、反向量化電路73、反向正交變換電路74、計算電路75、屏幕分類電路76、D/A轉換器電路77、存儲器78和運動預測/補償電路81。
反向解碼電路72對應於第四發明的解碼器,存儲器78對應於第四發明的存儲器,運動預測/補償電路81對應於第四發明的運動補償電路,並且計算電路75相應於第四發明的計算器。
當接收到通過圖2所示的編碼裝置編碼、調製和發送的圖像信號時,累加緩衝器71存儲通過解調獲得的圖像數據並且解碼該圖像數據。
無損耗解碼電路72對從累加緩衝器71輸入的圖像數據S71執行相應於編碼處理的解碼處理,把通過該處理獲得的圖像數據輸出到反向量化電路73,並把在解碼處理過程中獲得的運動矢量MV輸出到運動預測/補償電路81。
反向量化變化電路73對從無損耗解碼電路73輸入的圖像數據執行相應於圖25所示正交變換電路25的正交變換處理的反向正交變換,並把通過該處理獲得的圖像數據輸出到計算電路75。
計算電路75相加來自反向正交變換電路74的圖像數據S74和來自運動預測/補償電路81的預測圖像數據PI以產生圖像數據S75,將其輸出到屏幕分類電路76,並將其寫入存儲器78。
寫入存儲器78的圖像數據S75等同於圖3所示有效像素區內部的基準圖像數據REF_E。
屏幕分類電路76產生圖像信號並將其輸出到D/A轉換器電路77,其中按照顯示順序分類由圖像數據S75指示的畫面。
D/A轉換器電路77把從屏幕分類電路76輸入的數字圖像數據轉換為模擬圖像數據並輸出它。
運動預測/補償電路81基於從無損耗解碼電路72輸入的運動矢量MV和從存儲器78讀出的基準圖像數據產生預測圖像數據,並將其輸出到計算電路75。
圖16是圖15所示運動預測/補償電路81的框圖。
如圖16所示,運動預測/補償電路81具有,例如,非有效像素區構成電路91、MV變換電路92、讀出電路93和PI產生電路94。
這裡,非有效像素區構成電路91、MV變換電路92、讀出電路93和PI產生電路94等同於非有效像素區構成電路51、MV變換電路52、讀出電路53和PI產生電路54。
這裡,非有效像素區構成電路91對應於第四發明的預處理器,讀出電路93對應於第四發明的閱讀器,和PI產生電路對應於第四發明的產生器。
然而,非有效像素區構成電路91和讀出電路93存取圖16所示的存儲器78。
另外,MV變換電路92輸入來自圖15所示無損耗解碼電路72的運動矢量MV。
另外,PI產生電路94輸出用於圖15所示的計算電路75的構成預測圖像數據PI的運動補償塊MCB。
在下文中,將解釋解碼裝置3的整個操作實例。
在解碼裝置3中,在存儲到緩衝器71之後把成為輸入的圖像數據輸出到無損耗解碼電路72。然後,在無損耗解碼電路72中,基於預定圖像壓縮信息的格式執行例如可變長度編碼和算術編碼這樣的處理。同時,在幀是互編碼(inter-coded)幀的情況下,在無損耗解碼電路72中,執行上面提到的操作,並且存儲在圖像數據的報頭部分的運動矢量VD被解碼和輸出到運動預測/補償電路81。
把成為無損耗解碼電路72輸出的量化變換係數輸入到反向量化電路73,並在這裡產生變換係數。對於該變換係數,基於圖像壓縮信息的預定格式執行例如反向離散餘弦變換和反向Karhunen-Loeve變換這樣的反向正交變換。在幀是內編碼(intra-coded)幀的情況下,把執行了反向正交變換處理的圖像信息存儲到屏幕分類電路76,並通過D/A轉換器77的D/A轉換處理輸出。
相反地,在幀是互編碼幀的情況下,在運動預測/補償電路81中,基於運動矢量MV和存儲在存儲器78中的基準圖像數據產生預測圖像數據PI,並且在計算電路75中相加該預測數據PI和從反向正交變換電路74輸出的圖像數據S74。
正如上面解釋的,在解碼裝置3中,在運動預測/補償電路81中,在產生預測圖像數據PI之前,產生在圖6所示有效像素區外部的第一到第四非有效像素區的基準圖像數據REF_NH1、NH2、NV1和NV2,並寫入存儲器35。
然後,運動預測/補償電路81從存儲器35中讀出由上面產生的運動矢量MV指示的基準運動補償塊RMCB的像素數據,並且將它用於在無需判斷像素數據是否是有效像素區內部的數據的情況下就可以產生預測圖像數據PI中。
因此,根據解碼裝置3,與傳統裝置比較,能在短時間內產生預測圖像數據PI。
注意,本發明並不局限於上面的實施例,並且本發明包括在權利要求書範圍內的修改。
在上面提到的實施例中,作為本實施例的塊數據,用實例解釋了圖8所示運動補償塊MCB,然而,如圖17所示,可以使用相應於通過在垂直方向上安排兩個運動補償塊MCB構成的宏塊對的基準運動補償塊RMCB1。
權利要求
1.一種數據處理裝置,用於基於運動矢量和有效像素區的第一基準圖像數據產生編碼目標或者解碼目標的圖像數據的預測圖像數據,包括存儲器,用於存儲所述第一基準圖像數據;預處理器,用於在產生所述預測圖像數據之前,基於存儲在所述存儲器中的所述第一基準圖像數據產生所述有效像素區周圍的預定非有效像素區的第二基準圖像數據,並將其寫入所述存儲器;閱讀器,用於在所述運動矢量指示所述非有效像素區的情況下,基於所述運動矢量讀出由所述預處理器寫入所述存儲器的所述第二基準圖像數據,以及產生器,用於基於由所述閱讀器讀出的所述第二基準圖像數據產生所述預測圖像數據。
2.根據權利要求1所述數據處理裝置,其中在所述運動矢量指示所述有效像素區和所述非有效像素區兩者的外部的情況下,所述預處理器變換所述運動矢量以使它指示所述非有效像素區的內部,所述閱讀器基於由所述預處理器變換並產生的所述運動矢量從所述存儲器中讀出所述第二基準圖像數據。
3.根據權利要求1所述的數據處理裝置,其中所述預處理器變換所述運動矢量以便在關於構成所述圖像數據的多個塊數據的每一個規定所述運動矢量並且由所述運動矢量指示的整個或部分基準塊數據位於所述有效像素區和所述非有效像素區的外部的情況下,整個該基準塊數據落在所述非有效像素區內。
4.根據權利要求1所述的數據處理裝置,其中所述預處理器變換所述運動矢量以便在關於構成所述圖像數據的多個塊數據的每一個規定所述運動矢量並且由所述運動矢量指示的基準塊數據沒有落在非有效像素區內的情況下,通過劃分所述基準塊數據獲得的每一個分割基準塊數據落在所述非有效像素區內。
5.根據權利要求1所述的數據處理裝置,其中在僅將隔行掃描或非隔行掃描之一應用到產生所述預測圖像數據的多個該圖像數據的情況下,所述預處理器規定在第一側與所述有效像素區相鄰的第一非有效像素區、在第二側與所述有效像素區相鄰的第二非有效像素區、在第三側與所述有效像素區相鄰的第三非有效像素區和在第四側與所述有效像素區相鄰的第四非有效像素區的每一個,其中所述第一側將所述有效像素區規定為矩形並在垂直於屏幕掃描方向的垂直方向上延伸,所述第二側與所述第一側相對並且在所述垂直方向上延伸,所述第三側在平行於所述屏幕掃描方向的水平方向上延伸,和所述第四側與所述第三側相對並且在所述水平方向上延伸,並且,所述預處理器基於所述第一基準圖像數據產生所述第二基準圖像數據並將其寫入所述存儲器中以便所述第一非有效像素區的像素位置的像素數據等同於其位置在垂直方向上等同於所述第一非有效像素區的所述第一側上的所述有效像素區內的像素數據,所述第二非有效像素區的像素位置的像素數據等同於其位置在垂直方向上等同於所述第二非有效像素區的所述第二側上的所述有效像素區內的像素數據,所述第三非有效像素區的像素位置的像素數據等同於其位置在水平方向上等同於所述第三非有效像素區的所述第三側上的所述有效像素區內的像素數據,並且所述第四非有效像素區的像素位置的像素數據等同於其位置在水平方向上等同於所述第四非有效像素區的所述第四側上的所述有效像素區內的像素數據。
6.根據權利要求1所述的數據處理裝置,其中在產生所述預測圖像數據的多個所述圖像數據中混合應用了隔行掃描的所述圖像數據和應用了非隔行掃描的所述圖像數據的情況下,所述預處理器規定在第一側與所述有效像素區相鄰的第一非有效像素區和在第二側與所述有效像素區相鄰的第二非有效像素區的每一個,其中所述第一側將所述有效像素區規定為矩形並在垂直於屏幕掃描方向的垂直方向上延伸,所述第二側與所述第一側相對並且在所述垂直方向上延伸,並且,所述預處理器基於所述第一基準圖像數據產生所述第二基準圖像數據並將其寫入所述存儲器中以便所述第一非有效像素區的像素位置的像素數據等同於其位置在垂直方向上等同於所述第一非有效像素區的所述第一側上的所述有效像素區內的像素數據,所述第二非有效像素區的像素位置的像素數據等同於其位置在垂直方向上等同於所述第二非有效像素區的所述第二側上的所述有效像素區內的像素數據。
7.一種基於運動矢量和有效像素區的第一基準圖像數據產生編碼目標或解碼目標的圖像數據的預測圖像數據的數據處理方法,包括第一步驟,基於存儲在存儲器中的所述第一基準圖像數據產生所述有效像素區周圍的預定非有效像素區的第二基準圖像數據並將其寫入所述存儲器;第二步驟,在所述運動矢量指示所述非有效像素區的情況下,基於所述運動矢量讀出在所述第一步驟中寫入所述存儲器中的所述第二基準圖像數據,以及第三步驟,基於在所述第二步驟中從所述存儲器中讀出的所述第二基準圖像數據產生所述預測圖像數據。
8.一種編碼裝置,包括編碼器,用於對編碼的圖像數據和預測圖像數據之間的差進行編碼;存儲器,用於存儲有效像素區的第一基準圖像數據;運動預測電路,用於產生所述編碼的圖像數據的運動矢量;和運動補償電路,用於基於由所述運動預測電路產生的所述運動矢量和存儲在所述存儲器中的所述基準圖像數據產生所述預測圖像數據,其中所述運動補償電路包括預處理器,用於在產生所述預測圖像數據之前、基於存儲在所述存儲器中的所述第一基準圖像數據產生所述有效像素區周圍的預定非有效像素區的第二基準圖像數據並將其寫入所述存儲器中;閱讀器,用於在由所述運動預測電路產生的所述運動矢量指示所述非有效像素區的情況下、基於所述運動矢量讀出由所述預處理過程寫入所述存儲器的所述第二基準圖像數據,和產生器,用於基於由所述閱讀器讀出的所述第二基準圖像數據產生所述預測圖像數據。
9.一種解碼裝置,包括解碼器,用於對作為解碼目標的圖像數據進行解碼;存儲器,用於存儲解碼後的有效像素區的第一基準圖像數據;運動補償電路,用於基於添加到作為所述解碼目標的圖像數據的運動矢量和從所述存儲器中讀出的所述第一基準圖像數據產生預測圖像數據,以及計算器,用於相加由所述運動補償電路產生的所述預測圖像數據和由所述解碼器解碼並產生的圖像數據,其中所述運動補償電路包含預處理器,用於在產生所述預測圖像數據之前、基於存儲在所述存儲器中的所述第一基準圖像數據產生所述有效像素區周圍的預定非有效像素區的第二基準圖像數據並將其寫入所述存儲器中;閱讀器,用於在由所述運動補償電路產生的所述運動矢量指示所述非有效像素區的情況下、基於所述運動矢量讀出由所述預處理過程寫入所述存儲器中的所述第二基準圖像數據,以及產生器,用於基於由所述閱讀器讀出的所述第二基準圖像數據產生所述預測圖像數據。
全文摘要
一種即使在使用指示有效像素區外部的運動矢量的情況下也能在短時間內產生預測圖像數據的數據處理裝置。運動補償電路基於通過解碼存儲在存儲器中的有效像素區內部的基準圖像數據產生有效像素區外部的基準並將其寫入存儲器。在運動矢量MV指示有效像素區外部的情況下,運動補償電路基於存儲在存儲器中的有效像素區外部的基準圖像數據產生預測圖像數據。
文檔編號H04N7/26GK1652608SQ20051005420
公開日2005年8月10日 申請日期2005年2月5日 優先權日2004年2月5日
發明者山根真人, 泉伸明, 渡辺真司 申請人:索尼株式會社