TW202025766A - 編碼裝置、解碼裝置、編碼方法及解碼方法 - Google Patents

編碼裝置、解碼裝置、編碼方法及解碼方法 Download PDF

Info

Publication number
TW202025766A
TW202025766A TW108129863A TW108129863A TW202025766A TW 202025766 A TW202025766 A TW 202025766A TW 108129863 A TW108129863 A TW 108129863A TW 108129863 A TW108129863 A TW 108129863A TW 202025766 A TW202025766 A TW 202025766A
Authority
TW
Taiwan
Prior art keywords
motion vector
prediction
aforementioned
block
threshold
Prior art date
Application number
TW108129863A
Other languages
English (en)
Other versions
TWI813740B (zh
Inventor
李靜雅
宗順 林
廖如伶
海威 孫
漢文 張
安倍清史
遠間正真
西孝啓
Original Assignee
美商松下電器(美國)知識產權公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 美商松下電器(美國)知識產權公司 filed Critical 美商松下電器(美國)知識產權公司
Publication of TW202025766A publication Critical patent/TW202025766A/zh
Application granted granted Critical
Publication of TWI813740B publication Critical patent/TWI813740B/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • H04N19/433Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/527Global motion vector estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Error Detection And Correction (AREA)

Abstract

編碼裝置包含有:電路;及連接於電路的記憶體,電路在動作中:導出用於處理對象區塊的預測的基準移動向量;導出與基準移動向量不同的第1移動向量;根據基準移動向量與第1移動向量的差分,導出差分移動向量;以及判定差分移動向量是否大於閾值,當判定為差分移動向量大於閾值時,變更第1移動向量,當判定為差分移動向量不大於閾值時,不變更第1移動向量,使用變更後的第1移動向量或者未變更的第1移動向量,將處理對象區塊進行編碼。

Description

編碼裝置、解碼裝置、編碼方法及解碼方法
本揭示是有關於將動態圖像進行編碼的編碼裝置等。
背景技術 迄今,作為用來將動態圖像進行編碼之規格已有H.265,H.265亦被稱為HEVC(High Efficiency Video Coding/高效率視訊編碼)(非專利文獻1)。
先行技術文獻 非專利文獻 非專利文獻1:H.265(ISO/IEC 23008-2 HEVC)/ HEVC(High Efficiency Video Coding)
發明欲解決的課題 在如此的編碼方法及解碼方法中,為了處理效率的提昇、畫質的改善、及電路規模的削減等,期待能有新方式的提案。
本揭示中的實施形態或者其一部分所揭示的構成或方法之每一個,能對於例如編碼效率的改善、編碼/解碼處理量的削減、電路規模的削減、編碼/解碼速度的改善、編碼及解碼中濾波器、區塊、尺寸、移動向量、參考圖片、及參考區塊等之構成要素/動作的適當的選擇等之中的至少任1者有所貢獻。
另,本揭示也包含可提供上述以外的利益之構成或者方法的揭示。例如一邊抑制處理量的增加,一邊改善編碼效率之構成或者方法等。
解決課題的手段 本揭示一態樣之編碼裝置為將動態圖像進行編碼的編碼裝置,具備電路及連接於前述電路的記憶體,前述電路在動作中:導出用於處理對象區塊的預測的基準移動向量;導出與前述基準移動向量不同的第1移動向量;根據前述基準移動向量與前述第1移動向量的差分,導出差分移動向量;以及判定前述差分移動向量是否大於閾值,當判定為前述差分移動向量大於前述閾值時,變更前述第1移動向量,當判定為前述差分移動向量不大於前述閾值時,不變更前述第1移動向量,使用變更後的前述第1移動向量或者未變更的前述第1移動向量,將前述處理對象區塊進行編碼。
本揭示一態樣之解碼裝置為將動態圖像進行解碼的解碼裝置,具備電路及連接於前述電路的記憶體,前述電路在動作中:導出用於處理對象區塊的預測的基準移動向量;導出與前述基準移動向量不同的第1移動向量;根據前述基準移動向量與前述第1移動向量的差分,導出移動向量;以及判定前述差分移動向量是否大於閾值,當判定為前述差分移動向量大於前述閾值時,變更前述第1移動向量,當判定為前述差分移動向量不大於前述閾值時,不變更前述第1移動向量,使用變更後的前述第1移動向量或者未變更的前述第1移動向量,將前述處理對象區塊進行解碼。
另,該等概括性或者是具體性的態樣,可以透過系統、裝置、方法、積體電路、電腦程式、或者、電腦可讀取之CD-ROM等之非暫時性記錄媒體來實現,也可以透過系統、裝置、方法、積體電路、電腦程式、及記錄媒體的任意組合來實現。
已揭示的實施形態所提供的進一步的利益及優點,能從說明書及圖式明瞭。該等利益及優點有時能藉各種實施形態或說明書及圖式的特徵,各自來獲取,為了得到1個以上的利益及優點,沒必要一定要全部提供。
發明的效果 本揭示可提供可提升處理效率的編碼裝置、解碼裝置、編碼方法或者解碼方法。
實施發明的形態 (成為本揭示之基礎的見解) 例如,將動態圖像進行編碼的編碼裝置在動態圖像的編碼等之中,在一邊抑制處理量的增加,一邊對進行更細分化的預測處理的動態圖像進行編碼時,藉由從構成動態圖像的圖像減去預測圖像來導出預測誤差。接著,編碼裝置對預測誤差進行頻率轉換及量化,將其結果作為圖像的資料來進行編碼。此時,對動態圖像所包含的區塊等之編碼對象單元的移動,以區塊單位或者構成該區塊的子區塊單位來進行移動預測處理時,有藉由控制移動向量的偏差來提昇編碼效率的可能性。
惟,在動態圖像所包含的區塊等的編碼等之中,若不控制移動向量的偏差,就會關聯到處理量的增加,而使編碼效率降低。
在此,本揭示一態樣之編碼裝置為將動態圖像進行編碼的編碼裝置,具備:電路;及連接於前述電路的記憶體,前述電路在動作中:導出用於處理對象區塊的預測的基準移動向量;導出與前述基準移動向量不同的第1移動向量;根據前述基準移動向量與前述第1移動向量的差分,導出差分移動向量;以及判定前述差分移動向量是否大於閾值,當判定為前述差分移動向量大於前述閾值時,變更前述第1移動向量,當判定為前述差分移動向量不大於前述閾值時,不變更前述第1移動向量,使用變更後的前述第1移動向量或者未變更的前述第1移動向量,將前述處理對象區塊進行編碼。
藉此,編碼裝置能調整移動向量,以使被分割成複數個子區塊之處理對象區塊內的複數個移動向量的偏差落在預定範圍內。因此,與移動向量的偏差大於預定範圍的情況相比,須參考的像素數變少,所以可以將從記憶體轉送的資料量抑制在預定範圍內。因此,編碼裝置可以減低間預測處理中的記憶體存取量,所以能提昇編碼效率。
例如也可為:前述基準移動向量對應於前述處理對象區塊內的第1像素組合,前述第1移動向量對應於前述處理對象區塊內之與前述第1像素組合不同的第2像素組合。
藉此,編碼裝置可使用基於第1像素組合而訂定的基準移動向量、及基於第2像素組合而訂定的第1移動向量,適當地控制處理對象區塊內的複數個移動向量的偏差。
例如也可為:當判定為前述差分移動向量大於前述閾值時,前述電路使用已將前述差分移動向量剪裁的值來變更前述第1移動向量。
藉此,編碼裝置能變更第1移動向量,以使第1移動向量的偏差落在預定範圍內。因此,編碼裝置可以減低間預測處理中的記憶體存取量,所以能提昇編碼效率。
例如,前述處理對象區塊的預測模式也可為仿射模式。
藉此,編碼裝置可以子區塊單位來對處理對象區塊進行預測,因此能提昇預測精度。
例如也可為:藉由以前述預測模式來對前述處理對象區塊進行預測處理時的最差事例的記憶體存取量,成為以前述預測模式以外的預測模式來進行預測處理時的最差事例的記憶體存取量以下之方式,來決定前述閾值。
藉此,編碼裝置會將從記憶體區域轉送資料的記憶體存取量限制在預定範圍內,以此順利地執行轉送處理,因此能提昇處理效率。
例如也可為:藉由前述預測模式以外的預測模式來進行預測處理時的最差事例的記憶體存取量,為藉由前述預測模式以外的預測模式且每8×8像素來對前述處理對象區塊進行雙向預測處理時的記憶體存取量。
此時,編碼裝置例如在不使用仿射模式而進行預測處理時,以區塊單位從過去的圖片來產生預測圖像。在使用仿射模式以外的預測模式且以8×8像素的區塊單位來進行雙向預測時,存取的記憶體量會變最多。為此,要決定仿射模式的閾值,以在仿射模式中也能落在該記憶體存取量內。如此,編碼裝置將從記憶體區域轉送資料的記憶體存取量限制在預定範圍內,藉此能順利地執行轉送處理,因此能提昇處理效率。
例如,前述閾值也可依前述處理對象區塊進行單向預測的情況、及進行雙向預測的情況而不同。
藉此,編碼裝置在對處理對象區塊進行雙向預測時的存取數比起進行單向預測時還多,因此也可將閾值設定為雙向預測之情況比單向預測的情況還小。如此,存取數愈多,就將閾值設定愈小,藉此能提昇編碼效率。
例如也可為:前述電路判定前述差分移動向量是否大於前述閾值,當前述差分移動向量的水平成分的絕對值大於前述閾值的第1值,或者前述差分移動向量的垂直成分的絕對值大於前述閾值的第2值時,判定為前述差分移動向量大於前述閾值,當前述差分移動向量的前述水平成分的前述絕對值不大於前述閾值的第1值,且前述差分移動向量的前述垂直成分的前述絕對值不大於前述閾值的前述第2值時,判定為前述差分移動向量不大於前述閾值。
藉此,閾值能以水平成分即第1值(以下也稱為第1閾值)及垂直成分即第2值(以下也稱為第2閾值)來表示,因此編碼裝置可以透過二維方式來判定第1移動向量的偏差。進而,編碼裝置判定處理對象區塊內的第1移動向量的偏差是否在預定範圍內,因此能將處理對象區塊內的第1移動向量調整到適當的值。因此,能提昇編碼效率。
例如也可為:當判定為前述差分移動向量大於前述閾值時,前述電路使用已將前述差分移動向量剪裁的值及前述基準移動向量,變更前述第1移動向量,變更後的前述第1移動向量與前述基準移動向量的差分移動向量不大於前述閾值。
此時,編碼裝置在第1移動向量的偏差超過預定範圍時,例如將差分移動向量的水平成分及垂直成分之中超過閾值的成分的絕對值剪成閾值的值。然後,例如,編碼裝置也可以把已將差分移動向量剪裁的值加到基準移動向量之後的值,作為變更後的第1移動向量。藉此,能使處理對象區塊內的第1移動向量的偏差落在預定範圍內。因此,能提昇編碼效率。
例如,前述基準移動向量也可為前述處理對象區塊的複數個前述第1移動向量的平均。
藉此,編碼裝置能針對處理對象區塊內的複數個第1移動向量每一個,將處理對象區塊內全部的第1移動向量的平均作為基準,來導出與該基準的差分。
例如,前述基準移動向量也可為前述處理對象區塊內的複數個前述第1移動向量之中的1個。
藉此,編碼裝置能針對處理對象區塊內的複數個第1移動向量每一個,將處理對象區塊內的1個第1移動向量作為基準,來導出與該基準的差分。
例如,前述閾值也可對應於前述處理對象區塊的尺寸。
藉此,編碼裝置因為處理對象區塊的大小不同而記憶體存取量有所不同,因此也可以在記憶體存取量愈多時,使閾值愈小。例如,處理對象區塊的尺寸愈大,閾值就要愈小。因此,編碼裝置是就算處理對象區塊的尺寸變大,也能使記憶體存取量落在預定範圍內,所以能提昇編碼效率。
例如,前述閾值也可為事先決定,且不編碼成串流。
藉此,編碼裝置可以使用已事先決定的閾值,因此沒必要在每次進行預測處理時對閾值進行編碼。因此,能提昇編碼效率。
又,本揭示一態樣之解碼裝置為將動態圖像進行解碼的解碼裝置,包含有:電路;及連接於前述電路的記憶體,前述電路在動作中:導出用於處理對象區塊的預測的基準移動向量;導出與前述基準移動向量不同的第1移動向量;根據前述基準移動向量與前述第1移動向量的差分,導出移動向量;以及判定前述差分移動向量是否大於閾值,當判定為前述差分移動向量大於前述閾值時,變更前述第1移動向量,當判定為前述差分移動向量不大於前述閾值時,不變更前述第1移動向量,使用變更後的前述第1移動向量或者未變更的前述第1移動向量,將前述處理對象區塊進行解碼。
藉此,解碼裝置能調整移動向量,以使被分割成複數個子區塊之處理對象區塊內的複數個移動向量的偏差落在預定範圍內。因此,與移動向量的偏差大於預定範圍的情況相比,須參考的像素數變少,所以可以將從記憶體轉送的資料量抑制在預定範圍內。因此,解碼裝置可以減低間預測處理中的記憶體存取量,所以就提昇處理效率。
例如也可為:前述基準移動向量對應於前述處理對象區塊內的第1像素組合,前述第1移動向量對應於前述處理對象區塊內之與前述第1像素組合不同的第2像素組合。
藉此,解碼裝置可使用基於第1像素組合而訂定的基準移動向量、及基於第2像素組合而訂定的第1移動向量,適當地控制處理對象區塊內的複數個移動向量的偏差。
例如也可為:當判定為前述差分移動向量大於前述閾值時,前述電路使用已將前述差分移動向量剪裁的值,變更前述第1移動向量。
藉此,解碼裝置能變更第1移動向量,以使第1移動向量的偏差落在預定範圍內。因此,解碼裝置可以減低間預測處理中的記憶體存取量,所以能提昇處理效率。
例如,前述處理對象區塊的預測模式也可為仿射模式。
藉此,解碼裝置可以子區塊單位來對處理對象區塊進行預測,因此能提昇預測精度。
例如也可為:藉由以前述預測模式來對前述處理對象區塊進行預測處理時的最差事例的記憶體存取量,成為以前述預測模式以外的預測模式來進行預測處理時的最差事例的記憶體存取量以下之方式,來決定前述閾值。
藉此,解碼裝置會將從記憶體區域轉送資料的記憶體存取量限制在預定範圍內,以此順利地執行轉送處理,因此能提昇處理效率。
例如也可為:藉由前述預測模式以外的預測模式來進行預測處理時的最差事例的記憶體存取量,為藉由前述預測模式以外的預測模式且每8×8像素來對前述處理對象區塊進行雙向預測處理時的記憶體存取量。
此時,解碼裝置例如在不使用仿射模式而進行預測處理時,以區塊單位從過去的圖片來產生預測圖像。在使用仿射模式以外的預測模式且以8×8像素的區塊單位來進行雙向預測時,存取的記憶體量會變最多。為此,要決定仿射模式的閾值,以在仿射模式中也能落在該記憶體存取量內。如此,解碼裝置將從記憶體區域轉送資料的記憶體存取量限制在預定範圍內,藉此能順利地執行轉送處理,因此能提昇處理效率。
例如,前述閾值也可依前述處理對象區塊進行單向預測的情況、及進行雙向預測的情況而不同。
藉此,解碼裝置在對處理對象區塊進行雙向預測時的存取數比起進行單向預測時還多,因此也可將閾值設定為雙向預測之情況比單向預測的情況還小。如此,存取數愈多,就將閾值設定愈小,藉此能提昇處理效率。
例如也可為:前述電路判定前述差分移動向量是否大於前述閾值,當前述差分移動向量的水平成分的絕對值大於前述閾值的第1值,或者前述差分移動向量的垂直成分的絕對值大於前述閾值的第2值時,判定為前述差分移動向量大於前述閾值,當前述差分移動向量的前述水平成分的前述絕對值不大於前述閾值的前述第1值,且前述差分移動向量的前述垂直成分的前述絕對值不大於前述閾值的前述第2值時,判定為前述差分移動向量不大於前述閾值。
藉此,閾值能以水平成分即第1值(以下也稱為第1閾值)及垂直成分即第2值(以下也稱為第2閾值)來表示,因此解碼裝置可以透過2維方式來判定第1移動向量的偏差。進而,解碼裝置判定處理對象區塊內的第1移動向量的偏差是否在預定範圍內,因此能將處理對象區塊內的第1移動向量調整到適當的值。因此,能提昇處理效率。
例如也可為:當判定為前述差分移動向量大於前述閾值時,前述電路使用已將前述差分移動向量剪裁的值及前述基準移動向量,變更前述第1移動向量,變更後的前述第1移動向量與前述基準移動向量的差分移動向量不大於前述閾值。
此時,解碼裝置在第1移動向量的偏差超過預定範圍時,例如將差分移動向量的水平成分及垂直成分之中超過閾值的成分的絕對值剪成閾值的值。然後,例如,解碼裝置也可以把已將差分移動向量剪裁的值加到基準移動向量之後的值,作為變更後的第1移動向量。藉此,能使處理對象區塊內的第1移動向量的偏差落在預定範圍內。因此,能提昇處理效率。
例如,前述基準移動向量也可為前述處理對象區塊的複數個前述第1移動向量的平均。
藉此,解碼裝置能針對處理對象區塊內的複數個第1移動向量每一個,將處理對象區塊內全部的第1移動向量的平均作為基準,來導出與該基準的差分。
例如,前述基準移動向量也可為前述處理對象區塊內的複數個前述第1移動向量之中的1個。
藉此,解碼裝置能針對處理對象區塊內的複數個第1移動向量每一個,將處理對象區塊內的1個第1移動向量作為基準,來導出與該基準的差分。
例如,前述閾值也可對應於前述處理對象區塊的尺寸。
藉此,解碼裝置因為處理對象區塊的大小不同而記憶體存取量有所不同,因此也可以在記憶體存取量愈多時,使閾值愈小。例如,處理對象區塊的尺寸愈大,閾值就要愈小。因此,解碼裝置是就算處理對象區塊的尺寸變大,也能將記憶體存取量落在預定範圍內,所以能提昇處理效率。
例如,前述閾值也可為事先決定,且不從串流進行解碼。
藉此,解碼裝置可以使用已事先決定的閾值,因此沒必要在每次進行預測處理時對閾值進行解碼。因此,能提昇處理效率。
又,本揭示一態樣的編碼方法是將動態圖像進行編碼的編碼方法,包含:導出用於處理對象區塊的預測的基準移動向量;導出與前述基準移動向量不同的第1移動向量;根據前述基準移動向量與前述第1移動向量的差分,導出差分移動向量;以及判定前述差分移動向量是否大於閾值,當判定為前述差分移動向量大於前述閾值時,變更前述第1移動向量,當判定為前述差分移動向量不大於前述閾值時,不變更前述第1移動向量,使用變更後的前述第1移動向量或者未變更的前述第1移動向量,將前述處理對象區塊進行編碼。
藉此,編碼方法能調整移動向量,以使被分割成複數個子區塊的處理對象區塊內的複數個移動向量的偏差落在預定範圍內。因此,與移動向量的偏差大於預定範圍的情況相比,須參考的像素數變少,所以可以將從記憶體轉送的資料量抑制在預定範圍內。因此,編碼方法可以減低間預測處理中的記憶體存取量,所以能提昇編碼效率。
又,本揭示一態樣的解碼方法是將動態圖像進行解碼的解碼方法,包含:導出用於處理對象區塊的預測的基準移動向量;導出與前述基準移動向量不同的第1移動向量;根據前述基準移動向量與前述第1移動向量的差分,導出差分移動向量;以及判定前述差分移動向量是否大於閾值,當判定為前述差分移動向量大於前述閾值時,變更前述第1移動向量,當判定為前述差分移動向量不大於前述閾值時,不變更前述第1移動向量,使用變更後的前述第1移動向量或者未變更的前述第1移動向量,將前述處理對象區塊進行解碼。
藉此,解碼方法能調整移動向量,以使被分割成複數個子區塊的處理對象區塊內的複數個移動向量的偏差落在預定範圍內。因此,與移動向量的偏差大於預定範圍的情況相比,須參考的像素數變少,所以可以將從記憶體轉送的資料量抑制在預定範圍內。因此,解碼方法可以減低間預測處理中的記憶體存取量,所以能提昇處理效率。
進而,該等概括性或者具體性態樣,可透過系統、裝置、方法、積體電路、電腦程式、或者、電腦可讀取的CD-ROM等非暫時性的記錄媒體來實現,也可以系統、裝置、方法、積體電路、電腦程式、及記錄媒體之任意組合來實現。
以下,一邊參考圖式,一邊具體地說明實施形態。另,在以下所說明的實施形態每一個都是顯示概括性或具體性的例子。在以下的實施形態中所示的數值、形狀、材料、構成要素、構成要素的配置位置及連接形態、步驟、步驟的關係及順序等都只是例示罷了,其旨趣並非是用來限定請求的範圍。
以下,說明編碼裝置及解碼裝置的實施形態。實施形態是可適用本揭示各態樣中所說明的處理及/或構成的編碼裝置及解碼裝置的例子。處理及/或構成也在與實施形態不同的編碼裝置及解碼裝置中實施。例如,有關於對於實施形態適用的處理及/或構成,例如也可實施以下任一種方式。
(1)在本揭示的各態樣中所說明的實施形態的編碼裝置或者解碼裝置的複數個構成要素之中任一者也可以替換成或者組合在本揭示各態樣任一者之中所說明的其他構成要素。
(2)在實施形態的編碼裝置或者解碼裝置中,對於藉由該編碼裝置或者解碼裝置的複數個構成要素之中一部分的構成要素所進行的功能或者處理,也可施予功能或者處理的追加、替換、刪除等之任意的變更。例如,任一個功能或者處理也可以替換成或者組合本揭示各態樣任一者之中所說明的其他功能或者處理。
(3)在實施形態的編碼裝置或者解碼裝置實施的方法中,針對該方法所包含的複數個處理之中的一部分處理,也可施予追加、替換及刪除等之任意的變更。例如,方法中的任一個處理也可以替換成或者組合本揭示各態樣任一者之中所說明的其他處理。
(4)構成實施形態的編碼裝置或者解碼裝置的複數個構成要素之中的一部分構成要素,也可以和在本揭示各態樣任一者之中所說明的構成要素組合,也可以和具有本揭示各態樣任一者之中所說明的功能的一部分的構成要素組合,也可以和實施本揭示各態樣之中所說明的構成要素所實施的處理的一部分的構成要素組合。
(5)具有實施形態的編碼裝置或者解碼裝置的功能的一部分的構成要素,或者,實施實施形態的編碼裝置或者解碼裝置的處理的一部分的構成要素,也可以和本揭示各態樣任一者之中所說明的構成要素、具有本揭示各態樣中任一者之中所說明的功能的一部分的構成要素、或者,實施本揭示各態樣任一者中所說明的處理的一部分的構成要素組合或者替換。
(6)在實施形態的編碼裝置或者解碼裝置所實施的方法中,該方法所包含的複數個處理之任一者,也可以替換成或者組合本揭示各態樣任一者之中所說明的處理,或者,同樣的任一者的處理。
(7)實施形態的編碼裝置或者解碼裝置所實施的方法所包含的複數個處理之中的一部分處理也可以和本揭示各態樣任一者之中所說明的處理組合。
(8)本揭示之各態樣中所說明的處理及/或構成的實施方式並不限於實施形態的編碼裝置或者解碼裝置。例如,處理及/或構成也可以在與實施形態之中所揭示的動態圖像編碼或者動態圖像解碼不同的目的來利用的裝置中來實施。 (實施形態1) [編碼裝置]
首先,說明本實施形態之編碼裝置。圖1是顯示本實施形態之編碼裝置100之功能構成的方塊圖。編碼裝置100是以區塊單位而將動態圖像進行編碼的動態圖像編碼裝置。
如圖1所示,編碼裝置100為將圖像以區塊單位進行編碼的裝置,包含有:分割部102、減法部104、轉換部106、量化部108、熵編碼部110、反量化部112、反轉換部114、加法部116、區塊記憶體118、迴路濾波部120、幀記憶體122、內預測部124、間預測部126、及預測控制部128。
編碼裝置100,是例如藉由通用處理器及記憶體來實現。此時,當儲存在記憶體的軟體程式藉由處理器來執行時,處理器是作為分割部102、減法部104、轉換部106、量化部108、熵編碼部110、反量化部112、反轉換部114、加法部116、迴路濾波部120、內預測部124、間預測部126、及預測控制部128而發揮功能。又,編碼裝置100也可作為對應於分割部102、減法部104、轉換部106、量化部108、熵編碼部110、反量化部112、反轉換部114、加法部116、迴路濾波部120、內預測部124、間預測部126、及預測控制部128之專用的1個以上的電子電路來實現。
以下,在說明過編碼裝置100整體的處理之流程之後,針對編碼裝置100所包含的各構成要素進行說明。 [編碼處理的整體流程]
圖2是顯示編碼裝置100之整體性的編碼處理一例之流程圖。
首先,編碼裝置100的分割部102將作為動態圖像之輸入圖像所含的各圖片分割成複數個固定尺寸的區塊(128×128像素)(步驟Sa_1)。接著,分割部102對於其固定尺寸的區塊,選擇分割圖案(也稱為區塊形狀)(步驟Sa_2)。即,分割部102將固定尺寸的區塊,進一步分割成複數個區塊,前述複數個區塊構成其已選擇的分割圖案。然後,編碼裝置100針對其複數個區塊之各個,對於其區塊(即編碼對象區塊)進行步驟Sa_3至Sa_9的處理。
即,由內預測部124、間預測部126及預測控制部128全部或者一部分所構成的預測處理部產生編碼對象區塊(也稱為當前區塊)的預測訊號(也稱為預測區塊)(步驟Sa_3)。
接著,減法部104產生編碼對象區塊與預測區塊之差分,作為預測殘差(也稱為差分區塊)(步驟Sa_4)。
接著,轉換部106及量化部108對於其差分區塊進行轉換及量化,藉此產生複數個量化係數(步驟Sa_5)。另,由複數個量化係數所構成的區塊也被稱為係數區塊。
接著,熵編碼部110對於其係數區塊與關於預測訊號的產生的預測參數進行編碼(具體來說,是指熵編碼),藉此產生編碼訊號(步驟Sa_6)。另,編碼訊號也被稱為編碼位元流、壓縮位元流或者串流。
接著,反量化部112及反轉換部114對於係數區塊進行反量化及反轉換,藉此將複數個預測殘差(即差分區塊)進行復原(步驟Sa_7)。
接著,加法部116對其已復原的差分區塊加上預測區塊,藉此將當前區塊再構成為再構成圖像(也稱為再構成區塊或者解碼圖像區塊)(步驟Sa_8)。藉此,來產生再構成圖像。
該再構成圖像一產生,迴路濾波部120對其再構成圖像,因應需要而進行濾波(步驟Sa_9)。
然後,編碼裝置100判定圖片整體的編碼是否已完成(步驟Sa_10),當判定為未完成時(步驟Sa_10的否),重複執行從步驟Sa_2開始的處理。
另,在上述之例中,編碼裝置100是對於固定尺寸的區塊,選擇1個分割圖案,依照其分割圖案來進行各區塊的編碼,但是也可依照複數個分割圖案之各個來進行各區塊的編碼。此時,編碼裝置100也可以評價對於複數個分割圖案之各個的成本,例如選擇藉由依照最小成本的分割圖案之編碼得到的編碼訊號,作為最後要輸出的編碼訊號。
又,該等步驟Sa_1至Sa_10的處理也可藉由編碼裝置100而按序進行,也可將其等處理之中一部分的複數個處理並列進行,也可把順序對調。 [分割部]
分割部102是將輸入動態圖像所含之各圖片分割成複數個區塊,並將各區塊輸出至減法部104。例如,分割部102,首先將圖片分割成固定尺寸(例如128×128)的區塊。該固定尺寸的區塊有時被稱為編碼樹單元(CTU)。接著,分割部102,例如根據遞迴性的四元樹(quadtree)及/或二元樹(binary tree)區塊分割,將每一個固定尺寸的區塊分割成可變尺寸(例如64×64以下)的區塊。即,分割部102選擇分割圖案。這個可變尺寸的區塊有時被稱為編碼單元(CU)、預測單元(PU)或者轉換單元(TU)。另,在各種安裝例中,沒有區別CU、PU及TU的必要,也可以是圖片內的一部分或者全部的區塊成為CU、PU、TU的處理單位。
圖3是顯示本實施形態中的區塊分割一例之圖。在圖3中,實線是表示透過四元樹區塊分割所得到的區塊邊界,虛線是表示透過二元樹區塊分割所得到的區塊邊界。
在此,區塊10是128×128像素的正方形區塊(128×128區塊)。這個128×128區塊10,首先是被分割成4個正方形的64×64區塊(四元樹區塊分割)。
左上的64×64區塊是進一步被垂直分割成2個矩形的32×64區塊,左邊的32×64區塊是進一步被垂直分割成2個矩形的16×64區塊(二元樹區塊分割)。其結果,左上的64×64區塊是被分割成2個16×64區塊11、12、及32×64區塊13。
右上的64×64區塊是被水平分割成2個矩形的64×32區塊14、15(二元樹區塊分割)。
左下的64×64區塊是被分割成4個正方形的32×32區塊(四元樹區塊分割)。4個32×32區塊之中,左上的區塊及右下的區塊被進一步分割。左上的32×32區塊是被垂直分割成2個矩形的16×32區塊,右邊的16×32區塊是進一步被水平分割成2個16×16區塊(二元樹區塊分割)。右下的32×32區塊是被水平分割成2個32×16區塊(二元樹區塊分割)。其結果,左下的64×64區塊是被分割成16×32區塊16;2個16×16區塊17、18;2個32×32區塊19、20;及2個32×16區塊21、22。
右下的64×64區塊23不分割。
如上,在圖3中,區塊10是根據遞迴性的四元樹及二元樹區塊分割,而被分割成13個可變尺寸的區塊11至23。如此之分割有時被稱為QTBT(quad-tree plus binary tree)分割。
另,在圖3中,1個區塊已被分割成4個或者2個區塊(四元樹或者二元樹區塊分割),但是分割並不限於此。例如,1個區塊也可被分割成3個區塊(三元樹區塊分割)。如此之包括三元樹區塊分割的分割有時被稱為MBT(multi type tree)分割。 [圖片的構成  切片/方塊]
為了將圖片並列地進行解碼,圖片有時以切片單位或者方塊單位來構成。由切片單位或者方塊單位構成的圖片也可藉由分割部102來構成。
切片是構成圖片的基本的編碼單位。圖片,例如由1個以上的切片所構成。又,切片是由1個以上的連續之CTU(Coding Tree Unit)所構成。
圖4A是顯示切片的構成一例之圖。例如,圖片含有11×8個CTU,且被分割成4個切片(切片1至4)。切片1是由16個CTU所構成,切片2是由21個CTU所構成,切片3是由29個CTU所構成,切片4是由22個CTU所構成。在此,圖片內的各CTU是屬於任一個切片。切片的形狀形成為沿水平方向分割圖片的形狀。切片的邊界沒必要在畫面邊,只要在畫面內的CTU的邊界,任何地方都可以。切片之中的CTU的處理順序(編碼順序或者解碼順序),例如為逐線掃描(raster scan)順序。又,切片包括標頭資訊及編碼資料。標頭資訊中也可記述切片的前頭的CTU位址、切片型式等其切片的特徵。
方塊為構成圖片之矩形區域的單位。對各方塊,也可以按照逐線掃描順序來分配被稱為TileId的號碼。
圖4B是顯示方塊之構成一例的圖。例如,圖片含有11×8個CTU,且被分割成4個矩形區域的方塊(方塊1至4)。比起不使用方塊的時候,在使用方塊時,會變更CTU的處理順序。在不使用方塊時,圖片內的複數個CTU是按照逐線掃描順序來處理。在使用方塊時,在複數個方塊之各個中,有至少1個CTU會按照逐線掃描順序來處理。例如圖4B所示,方塊1所含的複數個CTU的處理順序是指:從方塊1的第1列左端前往方塊1的第1列右端為止,接著從方塊1的第2列左端前往方塊1的第2列右端的順序。
另,1個方塊有包括1個以上之切片的時候,1個切片有包括1個以上之方塊的時候。 [減法部]
減法部104是以從分割部102所輸入且藉分割部102所分割的區塊單位,從原訊號(原樣本)減去預測訊號(從以下所示的預測控制部128所輸入的預測樣本)。即,減法部104是算出編碼對象區塊(以下,稱為當前區塊)的預測誤差(也稱為殘差)。然後,減法部104將所算出的預測誤差輸出至轉換部106。
原訊號是編碼裝置100的輸入訊號,為表示構成動態圖像之各圖片之圖像的訊號(例如亮度(luma)訊號及2個色差(chroma)訊號)。在以下內容中,有時也將表示圖像的訊號稱為樣本。 [轉換部]
轉換部106是將空間區域的預測誤差轉換成頻率區域的轉換係數,且將轉換係數輸出至量化部108。具體來說,轉換部106,例如對於空間區域的預測誤差,進行已事先決定的離散餘弦轉換(DCT)或者離散正弦轉換(DST)。
另,轉換部106也可從複數個轉換型式之中適應性地選擇轉換型式,使用對應於所選擇的轉換型式之轉換基底函數(transform basis function),將預測誤差轉換成轉換係數。如此之轉換有時被稱為EMT(explicit multiple core transform)或者AMT(adaptive multiple transform)。
複數個轉換型式,例如包括有DCT-II、DCT-V、DCT-VIII、DST-I及DST-VII。圖5A是顯示對應於各轉換型式之轉換基底函數之表格。在圖5A中,N顯示輸入像素的數量。從該等複數個轉換型式之中的轉換型式的選擇,例如也可依據預測的種類(內預測及間預測),也可依據內預測模式。
顯示是否適用如此的EMT或者AMT之資訊(例如被稱為EMT旗標或者AMT旗標)以及顯示已選擇的轉換型式的資訊,通常是以CU等級而被訊號化。另,該等資訊的訊號化沒有必要限定在CU等級,也可為其他等級(例如位元序列等級(sequence level)、圖片等級(picture level)、切片等級(slice level)、方塊等級(tile level)或者CTU等級)。
又,轉換部106也可將轉換係數(轉換結果)進行再轉換。如此之再轉換有時被稱為AST(adaptive secondary transform)或者NSST(non-separable secondary transform)。例如,轉換部106是依對應於內預測誤差之轉換係數的區塊所含之各個子區塊(例如4×4子區塊)進行再轉換。顯示是否適用NSST之資訊及有關於使用在NSST之轉換矩陣之資訊,通常是以CU等級而被訊號化。另,該等資訊的訊號化沒有必要限定在CU等級,也可為其他等級(例如序列等級、圖片等級、切片等級、方塊等級或者CTU等級)。
在轉換部106中,也可適用可分離(Separable)性轉換及不可分離(Non-Separable)性轉換。可分離性轉換是指依方向分離輸入的維數,來進行數次轉換的方式,不可分離性轉換是指在輸入為多維時,將2個以上的維度匯整而視為1維,再一起進行轉換的方式。
例如,以不可分離性轉換之一例來說,可舉出:在輸入為4×4的區塊時,將該區塊視為具有16個要素之一個陣列,並對該陣列,以16×16的轉換矩陣進行轉換處理。
又,在不可分離的轉換之更一例中,也可將4×4的輸入區塊視為如同具有16個要素之一個陣列,之後對該陣列進行數次吉文斯旋轉(Givens rotation)之構成(Hypercube Givens Transform/超立方體吉文斯轉換)。
在於轉換部106的轉換中,也可因應CU內的區域,將轉換成頻率區域的基底的型式進行切換。以一例來說,有SVT(Spatially Varying Transform)。在SVT中,如圖5B所示,沿水平或者垂直方向將CU分成2等份,只對其中任一邊的區域進行成為頻率區域的轉換。轉換基底的型式可以對每區域進行設定,例如會採用DST7及DCT8。在本例中,在CU內的2個區域之中,只對其中任一邊進行轉換,另一邊則不進行轉換,但也可對2個區域都進行轉換。又,分割方法也不只有2等份,也可為4等份,或者是另外將顯示分割的資訊進行編碼,與CU分割同樣地,進行訊號化等更靈活的方式。另,SVT,有時也稱為SBT (Sub-block Transform)。 [量化部]
量化部108將從轉換部106所輸出的轉換係數進行量化。具體來說,量化部108是以預定的掃描順序來掃描當前區塊的轉換係數,根據對應於已掃描的轉換係數的量化參數(QP),而將該轉換係數進行量化。然後,量化部108將當前區塊之業經量化的轉換係數(以下稱為量化係數)輸出至熵編碼部110及反量化部112。
預定的掃描順序是用於轉換係數的量化/反量化的順序。例如,預定的掃描順序是以頻率的升冪排序(從低頻到高頻的順序)或者降冪排序(從高頻到低頻的順序)來定義。
量化參數(QP)是指定義量化步階(量化幅寬)的參數。例如,若量化參數的值增加,則量化步階也會增加。即,若量化參數的值增加,量化誤差也會變大。
又,在量化中,有使用量化矩陣的時候。例如,有對應4×4及8×8等之頻率轉換尺寸、內預測及間預測等之預測模式、以及亮度及色差等之像素成分,來使用數種量化矩陣的時候。另,量化意指:將已透過事先訂定的間隔取樣的值對應於已事先訂定的等級,來進行數位化,在這技術領域中,也有時會採用被稱為近似(round)、捨入(rounding)、定標(scaling)之表示方式。
以使用量化矩陣的方法來說,有使用直接在編碼裝置側設定的量化矩陣的方法、以及使用內定的量化矩陣(default matrix)的方法。在編碼裝置側,藉由直接設定量化矩陣,可設定與圖像的特徵相應之量化矩陣。惟,此時,有著因為量化矩陣的編碼,而造成編碼量增加的缺點。
另一方面,也有不使用量化矩陣,高頻成分的係數及低頻成分的係數都一樣來進行量化的方法。另,該方法是等於使用係數全部同一值的量化矩陣(平面式的矩陣)的方法。
量化矩陣,例如也可以SPS(序列參數組合:Sequence Parameter Set)或者PPS(圖片參數組合:Picture Parameter Set)來指定。SPS包括對於序列使用的參數,PPS包括對於圖片使用的參數。SPS及PPS有時簡稱為參數組合。 [熵編碼部]
熵編碼部110根據從量化部108所輸入的量化係數,來產生編碼訊號(編碼位元流)。具體來說,熵編碼部110,例如是將量化係數二值化,將二值訊號進行算術編碼,並輸出已壓縮的位元流或者序列。 [反量化部]
反量化部112將從量化部108所輸入之量化係數進行反量化。具體來說,反量化部112是以預定的掃描順序將當前區塊的量化係數進行反量化。然後,反量化部112將當前區塊的業經反量化的轉換係數輸出至反轉換部114。 [反轉換部]
反轉換部114將從反量化部112所輸入的轉換係數進行反轉換,藉此將預測誤差(殘差)復原。具體來說,反轉換部114是對轉換係數進行與轉換部106所進行之轉換對應的反轉換,藉此將當前區塊的預測誤差進行復原。然後,反轉換部114將已復原的預測誤差輸出至加法部116。
另,已復原的預測誤差通常是因為量化的進行而失去了資訊,因此和減法部104所算出的預測誤差不一致。即,在已復原的預測誤差中通常含有量化誤差。 [加法部]
加法部116將從反轉換部114所輸入的預測誤差、與從預測控制部128所輸入的預測樣本相加,藉此再構成當前區塊。然後,加法部116將已再構成的區塊輸出至區塊記憶體118及迴路濾波部120。再構成區塊有時也被稱為局部解碼區塊。 [區塊記憶體]
區塊記憶體118,例如是用以儲存於內預測被參考的區塊且為編碼對象圖片(以下稱為當前圖片)內的區塊。具體來說,區塊記憶體118儲存從加法部116輸出的再構成區塊。 [幀記憶體]
幀記憶體122,例如是用於儲存使用在間預測之參考圖片的記憶部,有時也被稱為幀緩衝器。具體來說,幀記憶體122儲存已藉迴路濾波部120進行濾波的再構成區塊。 [迴路濾波部]
迴路濾波部120對已藉加法部116再構成的區塊施行迴路濾波,且將已濾波的再構成區塊輸出至幀記憶體122。迴路濾波是指在編碼迴路內所使用的濾波器(迴路內濾波器),例如包括解區塊濾波器(DF或DBF)、樣本適應性偏移(SAO)及適應性迴路濾波器(ALF)等。
在ALF中,適用用於移除編碼失真的最小平方誤差濾波器,例如按當前區塊內的各個2×2子區塊,根據局部性的梯度(gradient)的方向及活性度(activity),適用從複數個濾波器之中所選擇的1個濾波器。
具體來說,首先子區塊(例如2×2子區塊)被分類成複數個類別(例如15或者25類)。子區塊的分類是根據梯度的方向及活性度來進行。例如,使用梯度的方向值D(例如0至2或者0至4)與梯度的活性值A(例如0至4),而算出分類值C(例如C=5D+A)。然後,根據分類值C,使子區塊被分類成複數個類別。
梯度的方向值D,例如是藉由比較複數個方向(例如水平、垂直及2個對角方向)的梯度來導出。又,梯度的活性值A,例如是藉由將複數個方向的梯度相加,並將加法結果進行量化來導出。
根據如此分類的結果,從複數個濾波器之中,決定子區塊用的濾波器。
以於ALF所使用的濾波器的形狀來說,例如利用圓對稱形狀。如圖6A至圖6C是顯示ALF所使用的濾波器的形狀的複數例之圖。圖6A顯示5×5菱形形狀濾波器,圖6B顯示7×7菱形形狀濾波器,圖6C是顯示9×9菱形形狀濾波器。顯示濾波器的形狀之資訊是以圖片等級而被訊號化。另,顯示濾波器的形狀之資訊的訊號化並不須限定在圖片等級,也可為其他等級(例如序列等級、切片等級、方塊等級、CTU等級或者是CU等級)。
ALF的開啟/關閉,例如也可以圖片等級或者CU等級來決定。例如,針對亮度,也可以CU等級來決定是否適用ALF,針對色差,也可以圖片等級來決定是否適用ALF。顯示ALF的開啟/關閉的資訊,通常是以圖片等級或者CU等級而被訊號化。另,顯示ALF的開啟/關閉的資訊並無須限定在圖片等級或者CU等級,也可為其他等級(例如序列等級、切片等級、方塊等級、或者CTU等級)。
可選擇的複數個濾波器(例如迄至15或25的濾波器)的係數組合,通常是以圖片等級而被訊號化。另,係數組合的訊號化並無須限定在圖片等級,也可為其他等級(例如序列等級、切片等級、方塊等級、CTU等級、CU等級或者子區塊等級)。 [迴路濾波部>解區塊濾波器]
在解區塊濾波器中,迴路濾波部120對再構成圖像的區塊邊界進行濾波處理,藉此減少在其區塊邊界所產生的失真。
圖7是顯示作為解區塊濾波器而發揮功能的迴路濾波部120的詳細構成一例之方塊圖。
迴路濾波部120包含有:邊界判定部1201、濾波判定部1203、濾波處理部1205、處理判定部1208、濾波器特性決定部1207、開關1202、1204及1206。
邊界判定部1201判定進行解區塊濾波處理的像素(即對象像素)是否存在區塊邊界附近。然後,邊界判定部1201將其判定結果輸出至開關1202及處理判定部1208。
在已藉由邊界判定部1201判定為對象像素存在於區塊邊界附近時,開關1202將濾波處理前的圖像輸出至開關1204。反之,在已藉由邊界判定部1201判定為對象像素不存在於區塊邊界附近時,開關1202將濾波處理前的圖像輸出至開關1206。
濾波判定部1203基於位在對象像素的周邊之至少1個周邊像素的像素值,判定是否對於對象像素進行解區塊濾波處理。然後,濾波判定部1203將其判定結果輸出至開關1204及處理判定部1208。
在已藉由濾波判定部1203判定為對於對象像素進行解區塊濾波處理時,開關1204將已經由開關1202取得的濾波處理前的圖像輸出至濾波處理部1205。反之,在已藉由濾波判定部1203判定為對於對象像素不進行解區塊濾波處理時,開關1204將已經由開關1202取得的濾波處理前的圖像輸出至開關1206。
在已藉由開關1202及1204取得濾波處理前的圖像時,濾波處理部1205對於對象圖像執行解區塊濾波處理,前述解區塊濾波處理具有已藉由濾波器特性決定部1207所決定的濾波器特性。然後,濾波處理部1205將其濾波處理後的像素輸出至開關1206。
開關1206因應處理判定部1208的控制,選擇性地輸出未進行解區塊濾波處理的像素、與已藉由濾波處理部1205進行解區塊濾波處理的像素。
處理判定部1208根據邊界判定部1201及濾波判定部1203的各個判定結果,來控制開關1206。即,在已藉由邊界判定部1201判定為對象像素存在於區塊邊界附近,且,已藉由濾波判定部1203判定為對於對象像素進行解區塊濾波處理時,處理判定部1208從開關1206來輸出業經解區塊濾波處理的像素。又,上述的時候以外,處理判定部1208則從開關1206來輸出未經解區塊濾波處理的像素。藉由反覆進行如此的像素的輸出,來從開關1206輸出濾波處理後的圖像。
圖8是顯示具有對區塊邊界呈對稱的濾波器特性的解區塊濾波器的例子之圖。
在解區塊濾波處理中,例如使用像素值及量化參數,選擇特性相異的2個解區塊濾波器,即選擇強濾波器及弱濾波器之中任1種。在強濾波器中,如圖8所示,夾區塊邊界存在有像素p0至p2、及像素q0至q2時,藉由如下式子所示的運算,將像素q0至q2之各個像素值變更成像素值q’0至q’2。 q’0=(p1+2×p0+2×q0+2×q1+q2+4)/8 q’1=(p0+q0+q1+q2+2)/4 q’2=(p0+q0+q1+3×q2+2×q3+4)/8
另,在上述式子中,p0至p2及q0至q2是像素p0至p2及像素q0至q2各自的像素值。又,q3是鄰接於像素q2且與區塊邊界相反側的像素q3的像素值。又,在上述各式子的右邊中,與使用在解區塊濾波處理的各像素的像素值相乘的係數為濾波係數。
進而,在解區塊濾波處理中,為了不讓運算後的像素值變化超過閾值,也可進行剪裁(Clip)處理。在該剪裁處理中,上述的式子所進行的運算後的像素值是使用從量化參數決定的閾值,而剪裁成「運算前的像素值±2×閾值」。藉此,可防止過度的平滑化。
圖9是用於說明進行解區塊濾波處理的區塊邊界的圖。圖10是顯示Bs值一例之圖。
進行解區塊濾波處理的區塊邊界,例如為如圖9所示的8×8像素區塊的PU(Prediction Unit)或者TU(Transform Unit)的邊界。解區塊濾波處理是以4列或者4行為單位來進行。首先,如圖10所示,對於圖9所示的區塊P及區塊Q,來決定Bs(Boundary Strength)值。
依照圖10的Bs值,就算是屬於相同圖像的區塊邊界,也能決定是否進行不同強度的解區塊濾波處理。對於色差訊號的解區塊濾波處理是在Bs值為2的時候才進行。對於亮度訊號之解區塊濾波處理是在Bs值為1以上且滿足預定的條件的時候進行。另,Bs值的判定條件不限定於圖10所示,也可根據其他參數來決定。 [預測處理部(內預測部・間預測部・預測控制部)]
圖11是顯示以編碼裝置100的預測處理部所進行的處理一例的圖。另,預測處理部是由內預測部124、間預測部126及預測控制部128的全部或者一部分的構成要素所構成。
預測處理部產生當前區塊的預測圖像(步驟Sb_1)。該預測圖像也稱為預測訊號或者預測區塊。另,在預測訊號,例如有內預測訊號或者間預測訊號。具體來說,預測處理部使用再構成圖像,來產生當前區塊的預測圖像,其中再構成圖像是已藉由進行預測區塊的產生、差分區塊的產生、係數區塊的產生、差分區塊的復原及解碼圖像區塊的產生而得到的圖像。
再構成圖像,例如也可為參考圖片的圖像,也可為含有當前區塊的圖片即當前圖片內的編碼完畢的區塊之圖像。當前圖片內的編碼完畢的區塊,例如為當前區塊的鄰接區塊。
圖12是顯示編碼裝置100的預測處理部所進行的處理的另一例之圖。
預測處理部以第1方式產生預測圖像(步驟Sc_1a),以第2方式產生預測圖像(步驟Sc_1b),以第3方式產生預測圖像(步驟Sc_1c)。第1方式、第2方式及第3方式為用於產生預測圖像之相異的方式,分別例如為間預測方式、內預測方式及其等以外的預測方式。在該等預測方式中,也可使用上述之再構成圖像。
接著,預測處理部選擇步驟Sc_1a、Sc_1b及Sc_1c所產生的複數個預測圖像之中的任1者(步驟Sc_2)。用於該預測圖像的選擇,即用於得到最後的預測圖像的方式或者模式的選擇,也可算出對於已產生的各預測圖像的成本,根據其成本來進行。或者,其預測圖像的選擇也可根據使用在編碼的處理的參數來進行。編碼裝置100也可將用於特定其已選擇的預測圖像、方式或者模式的資訊進行訊號化,使其成為編碼訊號(也稱為編碼位元流)。其資訊也可為例如旗標等。藉此,解碼裝置根據其資訊,依照在編碼裝置100中所選擇的方式或者模式,來產生預測圖像。另,在圖12所示的例子中,預測處理部在以各方式產生預測圖像之後,選擇任一個預測圖像。惟,預測處理部也可在產生其等預測圖像之前,根據使用在上述之編碼的處理之參數,選擇方式或者模式,依照其方式或者模式,來產生預測圖像。
例如,第1方式及第2方式也可分別為內預測及間預測,預測處理部從依照其等預測方式所產生的預測圖像,來選擇對於當前區塊之最後的預測圖像。
圖13是顯示編碼裝置100的預測處理部所進行的處理的另一例的圖。
首先,預測處理部藉由內預測來產生預測圖像(步驟Sd_1a),且藉由間預測來產生預測圖像(步驟Sd_1b)。另,藉由內預測圖像產生的預測圖像也稱之為內預測圖像,藉由間預測產生的預測圖像也稱之為間預測圖像。
其次,預測處理部評價內預測圖像及間預測圖像的各個(步驟Sd_2)。在該評價也可使用成本。也就是說,預測處理部算出內預測圖像及間預測圖像各自的成本C。該成本C是藉由R-D最適化模型的式子,例如C=D+λ×R所算出。在該式中,D為預測圖像的編碼失真,例如藉當前區塊的像素值與預測圖像的像素值的差分絕對值和等來表示。又,R為預測圖像的產生編碼量,具體來說,是對用以產生預測圖像的移動資訊等之編碼所必須的編碼量等。又,λ例如為拉格朗日(Lagrange)的未定乘數。
接著,預測處理部從內預測圖像及間預測圖像,選擇算出了最小成本C的預測圖像,作為當前區塊的最後的預測圖像(步驟Sd_3)。也就是說,選擇用以產生當前區塊的預測圖像的預測方式或者模式。 [內預測部]
內預測部124是藉由參考區塊記憶體118儲存的當前圖片內的區塊,進行當前區塊的內預測(也稱為畫面內預測),以產生預測訊號(內預測訊號)。具體來說,內預測部124是藉由參考鄰接於當前區塊之區塊的樣本(例如亮度值、色差值)進行內預測,以產生內預測訊號,且將內預測訊號輸出至預測控制部128。
例如,內預測部124利用已事先規定的複數個內預測模式之中的1個,來進行內預測。複數個內預測模式通常包括1個以上的非方向性預測模式及複數個方向性預測模式。
1個以上的非方向性預測模式,例如包括以H.265/HEVC規格所規定的平面(Planar)預測模式及直流(DC)預測模式。
複數個方向性預測模式, 例如包括以H.265/ HEVC規格所規定的33種方向的預測模式。另,複數個方向性預測模式,除了33種方向外,也可進一步包括32種方向的預測模式(合計共65種方向性預測模式)。圖14是顯示內預測中的67種內預測模式(2個非方向性預測模式及65個方向性預測模式)之圖。實線箭頭符號是表示以H.265/HEVC規格所規定的33種方向,虛線箭頭符號是表示所追加的32種方向(2個非方向性預測模式,在圖14中未圖示)。
在各種安裝例中,在色差區塊的內預測中,也可參考亮度區塊。也就是說,根據當前區塊的亮度成分,也可預測當前區塊的色差成分。如此之內預測有時也被稱為CCLM(cross-component linear model)預測。像這種參考亮度區塊之色差區塊的內預測模式(例如被稱為CCLM模式),也可作為1種色差區塊的內預測模式而加入。
內預測部124,也可根據水平/垂直方向的參考像素的梯度,來補正內預測後的像素值。像這樣伴隨著補正的內預測有時被稱為PDPC(position dependent intra prediction combination)。顯示有無PDPC的適用之資訊(例如被稱為PDPC旗標)通常是以CU等級而被訊號化。另,該資訊的訊號化並無須限定在CU等級,也可為其他等級(例如序列等級、圖片等級、切片等級、方塊等級、或者CTU等級)。 [間預測部]
間預測部126是參考儲存於幀記憶體122且與當前圖片不同的參考圖片,來進行當前區塊的間預測(也稱為畫面間預測),以此產生預測訊號(間預測訊號)。間預測是以當前區塊或者當前區塊內的當前子區塊(例如4×4區塊)的單位來進行。例如,間預測部126是針對當前區塊或者當前子區塊,在參考圖片內進行移動估測(motion estimation),找到與其當前區塊或者當前子區塊最一致的參考區塊或者子區塊。接著,間預測部126從參考區塊或者子區塊,取得補償對當前區塊或者子區塊的移動或者變化的移動資訊(例如移動向量)。間預測部126根據其移動資訊,進行移動補償(或者移動預測),來產生當前區塊或者子區塊的間預測訊號。間預測部126將已產生的間預測訊號輸出至預測控制部128。
移動補償所使用的移動資訊也可以多種形態而被訊號化,作為間預測訊號。例如,移動向量也可被訊號化。以其他例來說,移動向量與預測移動向量(motion vector predictor)之差分也可被訊號化。 [間預測的基本流程]
圖15是顯示間預測的基本的流程的流程圖。
首先,間預測部126產生預測圖像(步驟Se_1至Se_3)。其次,減法部104產生當前區塊與預測圖像之差分,作為預測殘差(步驟Se_4)。
在此,間預測部126在預測圖像的產生中,進行當前區塊的移動向量(MV)的決定(步驟Se_1及Se_2)及移動補償(步驟Se_3),藉此產生其預測圖像。又,間預測部126在MV的決定上,進行候選移動向量(候選MV)的選擇(步驟Se_1)及MV的導出(步驟Se_2),藉此決定其MV。候選MV的選擇,例如是藉由從候選MV清單選擇至少1個候選MV來進行。又,在MV的導出中,間預測部126也可從至少1個候選MV,進一步選擇至少1個候選MV,藉此決定其已選擇的至少1個候選MV,作為當前區塊的MV。或者,間預測部126也可對其已選擇的至少1個候選MV每個,估測以其候選MV所指示的參考圖片的區域,來決定當前區塊的MV。另,也可將估測參考圖片的區域一事稱為移動估測(motion estimation)。
又,在上述的例子中,步驟Se_1至Se_3是藉由間預測部126來進行,但例如步驟Se_1或者步驟Se_2等之處理也可藉由編碼裝置100所含的其他構成要素來進行。 [導出移動向量的流程]
圖16是顯示導出移動向量一例的流程圖。
間預測部126以將移動資訊(例如MV)進行編碼的模式,來導出當前區塊的MV。此時,例如將移動資訊作為預測參數來進行編碼,並進行訊號化。也就是說,已編碼的移動資訊包含在編碼訊號(也稱為編碼位元流)。
或者,間預測部126以不將移動資訊進行編碼的模式來導出MV。此時,移動資訊不包含在編碼訊號。
在此,在導出MV的模式中有後述的正常間模式、合併模式、FRUC模式及仿射模式等。該等模式之中,將移動資訊進行編碼的模式有正常間模式、合併模式及仿射模式(具體來說,仿射間模式及仿射合併模式)等。另,在移動資訊中,不只MV,也可含有後述的預測移動向量選擇資訊。又,在不將移動資訊進行編碼的模式中有FRUC模式等。間預測部126從該等複數個模式,選擇用於導出當前區塊的MV的模式,並使用其已選擇的模式,來導出當前區塊的MV。
圖17是顯示移動向量導出的另一例之流程圖。
間預測部126以將差分MV進行編碼的模式,來導出當前區塊的MV。此時,例如差分MV是作為預測參數被編碼,並被訊號化。也就是說,已編碼的差分MV包含在編碼訊號。該差分MV為當前區塊的MV、與其預測MV之差。
或者,間預測部126以不將差分MV進行編碼的模式,來導出MV。此時,已編碼的差分MV不包含在編碼訊號。
在此,如上述,在導出MV的模式中有後述的正常間模式、合併模式、FRUC模式及仿射模式等。該等模式之中,在將差分MV進行編碼的模式中有正常間模式及仿射模式(具體來說,仿射間模式)等。又,在不將差分MV進行編碼的模式中有FRUC模式、合併模式及仿射模式(具體來說,仿射合併模式)等。間預測部126從該等複數個模式,選擇用於導出當前區塊的MV的模式,並使用其已選擇的模式,來導出當前區塊的MV。 [導出移動向量的流程]
圖18是顯示導出移動向量的另一例的流程圖。導出MV的模式即間預測模式中有複數個模式,大致上可以分成:將差分MV進行編碼的模式、及不將差分移動向量進行編碼的模式。在不將差分MV進行編碼的模式中有合併模式、FRUC模式以及仿射模式(具體來說,仿射合併模式)。關於該等模式容後詳述,簡單來說,合併模式是從周邊的編碼完畢區塊選擇移動向量,藉此來導出當前區塊的MV的模式,FRUC模式是在編碼完畢區域之間進行估測,藉此來導出當前區塊的MV的模式。又,仿射模式是假設仿射轉換,導出構成當前區塊的複數個子區塊各自的移動向量作為當前區塊的MV的模式。
具體來說,在間預測模式資訊顯示0時(在Sf_1,0),間預測部126藉由合併模式來導出移動向量(Sf_2)。又,在間預測模式資訊顯示1時(在Sf_1,1),間預測部126藉由FRUC模式,來導出移動向量(Sf_3)。又,在間預測模式資訊顯示2時(在Sf_1,2),間預測部126藉由仿射模式(具體來說,仿射合併模式)來導出移動向量(Sf_4)。又,在間預測模式資訊顯示3時(在Sf_1,3),間預測部126藉由將差分MV進行編碼的模式(例如正常間模式),來導出移動向量(Sf_5)。 [導出MV>正常間模式]
正常間模式是從候選MV所示的參考圖片的區域,找出類似於當前區塊的圖像的區塊,藉此導出當前區塊的MV的間預測模式。又,該正常間模式中,差分MV會被編碼。
圖19是顯示依正常間模式所進行的間預測之例的流程圖。
間預測部126首先根據時間性或者空間性地位於當前區塊周圍的複數個編碼完畢區塊的MV等的資訊,對其當前區塊,取得複數個候選MV(步驟Sg_1)。即,間預測部126作成候選MV清單。
接著,間預測部126從已在步驟Sg_1取得的複數個候選MV之中,依照已事先決定的優先順位,擷取N個(N為2以上的整數)候選MV,將每一個作為預測移動向量候選(也稱為預測MV候選)(步驟Sg_2)。另,其優先順位是對於N個候選MV之每一個已事先決定的。
接著,間預測部126從其N個預測移動向量候選之中,選擇1個預測移動向量候選,作為當前區塊的預測移動向量(也稱為預測MV)(步驟Sg_3)。此時,間預測部126將用以識別已選擇的預測移動向量之預測移動向量選擇資訊進行編碼成串流。另,串流是上述的編碼訊號或者編碼位元流。
接著,間預測部126參考編碼完畢參考圖片,導出當前區塊的MV(步驟Sg_4)。此時,間預測部126進一步將其已導出的MV與預測移動向量之差分值,作為差分MV,編碼成串流。另,編碼完畢參考圖片是由編碼後進行再構成的複數個區塊所構成的圖片。
最後,間預測部126使用其已導出的MV及編碼完畢參考圖片,對當前區塊進行移動補償,藉此產生其當前區塊的預測圖像(步驟Sg_5)。另,預測圖像為上述的間預測訊號。
又,顯示編碼訊號所含的預測圖像的產生所使用的間預測模式(在上述之例中為正常間模式)的資訊是例如作為預測參數而被編碼。
另,候選MV清單也可和其他模式所使用的清單共通地使用。又,也可將關於候選MV清單的處理適用在關於其他模式所使用的清單的處理。關於該候選MV清單的處理,例如為從候選MV清單的候選MV的擷取或者選擇、候選MV的重新排列、或候選MV的刪除等。 [MV導出>合併模式]
合併模式是從候選MV清單選擇候選MV來作為當前區塊的MV,藉此導出其MV的間預測模式。
圖20是顯示依合併模式所進行的間預測之例的流程圖。
間預測部126,首先根據時間性或空間性位於當前區塊周圍的複數個編碼完畢區塊的MV等的資訊,對於其當前區塊來取得複數個候選MV(步驟Sh_1)。也就是說,間預預測部126作成候選MV清單。
接著,間預測部126從已在步驟Sh_1所取得的複數個候選MV之中,選擇1個候選MV,藉此導出當前區塊的MV(步驟Sh_2)。此時,間預測部126將用於識別已選擇的候選MV的MV選擇資訊編碼成串流。
最後,間預測部126使用其已導出的MV及編碼完畢參考圖片,對於當前區塊進行移動補償,藉此產生其當前區塊的預測圖像(步驟Sh_3)。
又,顯示已使用在編碼訊號所含之預測圖像的產生的間預測模式(在上述之例中為合併模式)的資訊是例如作為預測參數而被編碼。
圖21是用於說明合併模式之當前圖片的移動向量導出處理一例之圖。
首先,產生登錄有預測MV的候選之預測MV清單。以預測MV的候選來說,有如下MV等:空間鄰接預測MV,空間性地位於對象區塊的周邊之複數個編碼完畢區塊所具有的MV;時間鄰接預測MV,已投影編碼完畢參考圖片中的對象區塊的位置的附近的區塊所具有的MV;結合預測MV,組合空間鄰接預測MV及時間鄰接預測MV的MV值而產生的MV;及零預測MV,值為零的MV。
其次,從已登錄在預測MV清單的複數個預測MV之中,選擇1個預測MV,以此決定為對象區塊的MV。
進而,在可變長度編碼部中,將顯示已選擇了哪一個預測MV的訊號即merge_idx記述在串流中並進行編碼。
另,登錄在圖21所說明的預測MV清單的預測MV為一例,也可為與圖中的個數不同的個數,或者是含有圖中的預測MV之一部分種類的構成,或者是追加了圖中的預測MV的種類以外的預測MV的構成。
也可使用藉由合併模式所導出的對象區塊的MV,進行後述的DMVR(dynamic motion vector refreshing)處理,來決定最後的MV。
另,預測MV的候選為上述候選MV,預測MV清單為上述的候選MV清單。又,亦可將候選MV清單稱為候選清單。又,merge_idx為MV選擇資訊。 [MV導出>FRUC模式]
移動資訊也可不從編碼裝置側進行訊號化,而是在解碼裝置側來導出。另,如上述,也可使用以H.265/HEVC規格所規定的合併模式。又,例如也可在解碼裝置側進行移動估測,藉此來導出移動資訊。此時,在解碼裝置側不使用當前區塊的像素值來進行移動估測。
在此,針對在解碼裝置側進行移動估測之模式來說明。在該解碼裝置側進行移動估測的模式有時被稱為PMMVD(pattern matched motion vector derivation)模式或者FRUC(frame rate up-conversion)模式。
FRUC處理之一例顯示在圖22中。首先,參考空間性或時間性鄰接於當前區塊的編碼完畢區塊之移動向量,產生各自具有移動向量(MV)之複數個候選的清單(即,候選MV清單,也可與合併清單共通)(步驟Si_1)。接著,從已登錄在候選MV清單的複數個候選MV之中,選擇最佳候選MV(步驟Si_2)。例如,算出候選MV清單所含之各候選MV的評價值,根據評價值,而選擇1個候選MV。接著,根據所選擇的候選之移動向量,導出當前區塊用的移動向量(步驟Si_4)。具體來說,例如將所選擇的候選之移動向量(最佳候選MV)直接導出來作為當前區塊用的移動向量。又,例如也可在與所選擇之候選的移動向量對應的參考圖片內之位置的周邊區域中進行圖案匹配,藉此來導出當前區塊用的移動向量。即,也可以對於最佳候選MV之周邊的區域,進行參考圖片中的圖案匹配及使用了評價值之估測,進而在有了評價值成為好的值的MV時,將最佳候選MV更新為前述MV,並將該MV當作為當前區塊之最後的MV。也可以作成不實施進行變成具有更好的評價值的MV之更新的處理之構成。
最後,間預測部126使用其已導出的MV及編碼完畢參考圖片,對當前區塊來進行移動補償,藉此產生其當前區塊的預測圖像(步驟Si_5)。
在以子區塊單位進行處理時,也可構成為完全同樣的處理。
評價值也可以藉由各種的方法來算出。例如,比較對應於移動向量之參考圖片內的區域的再構成圖像與預定的區域(其區域,例如,如下文所示,也可為其他參考圖片的區域或者當前圖片的鄰接區塊的區域)的再構成圖像。然後,也可以算出2個再構成圖像的像素值的差分,使用在移動向量的評價值。另,除了差分值外,也可以使用使用除此以外的資訊,來算出評價值。
接著,就圖案匹配來詳細說明。首先,選擇候選MV清單(例如合併清單)所含的1個候選MV來作為由圖案匹配所進行的估測的起始點。對於圖案匹配,是使用第1圖案匹配或者第2圖案匹配。第1圖案匹配及第2圖案匹配,有時分別被稱為雙向匹配(bilateral matching)以及模板匹配(template matching)。 [MV導出>FRUC>雙向匹配]
在第1圖案匹配中,是在不同的2個參考圖片內的2個區塊,且是沿著當前區塊的移動軌跡(motion trajectory) 的2個區塊之間進行圖案匹配。因此,在第1圖案匹配中,是使用沿著當前區塊的移動軌跡的其他參考圖片內之區域,來作為算出上述候選的評價值之用的預定區域。
圖23是用於說明在沿著移動軌跡的2個參考圖片中的2個區塊間之第1圖案匹配(雙向匹配)一例之圖。如圖23所示,在第1圖案匹配下,在沿著當前區塊(Cur block)的移動軌跡之2個區塊,且為不同的2個參考圖片(Ref0、Ref1)內的2個區塊之配對(pair)之中,估測最為相配的配對,藉此導出2個移動向量(MV0、MV1)。具體來說,對於當前區塊,導出以候選MV指定的第1編碼完畢參考圖片(Ref0)內的指定位置中之再構成圖像、與已將前述候選MV以顯示時間間隔進行定標的對稱MV所指定的第2編碼完畢參考圖片(Ref1)內的指定位置中之再構成圖像間之差分,使用所得到的差分值來算出評價值。在複數個候選MV之中,選擇評價值最佳的值的候選MV,作為最後MV即可。
在連續的移動軌跡的假設之下,指示2個參考區塊的移動向量(MV0、MV1)相對於當前圖片(Cur Pic)與2個參考圖片(Ref0、Ref1)間之時間性的距離(TD0、TD1)成比例。例如,當前圖片是時間性地位於2個參考圖片之間,在從當前圖片到2個參考圖片的時間性的距離相等時,在第1圖案匹配上,能導出鏡射對稱的雙向的移動向量。 [MV導出>FRUC>模板匹配]
在第2圖案匹配(模板匹配)上,在當前圖片內的模板(在當前圖片內鄰接於當前區塊的區塊(例如上及/或左鄰接區塊))與參考圖片內的區塊之間進行圖案匹配。因此,在第2圖案匹配上,使用鄰接於當前圖片內的當前區塊的區塊,來作為上述之候選的評價值之算出用的預定區域。
圖24是用於說明在當前圖片內的模板與參考圖片內的區塊之間的圖案匹配(模板匹配)一例之圖。如圖24所示,在第2圖案匹配中,在參考圖片(Ref0)內估測在當前圖片(Cur Pic)內與鄰接於當前區塊(Cur block)之區塊最匹配的區塊,藉此導出當前區塊的移動向量。具體來說,對於當前區塊,導出:左鄰接及上鄰接兩邊或者任一邊的編碼完畢區域的再構成圖像、與以候選MV指定的編碼完畢參考圖片(Ref0)內的同等位置中的再構成圖像間之差分,且使用所得到的差分值,算出評價值,在複數個候選MV之中選擇評價值最佳之值的候選MV作為最佳候選MV即可。
如此之顯示是否適用FRUC模式之資訊(例如被稱為FRUC旗標)也可以CU等級而被訊號化。又,在適用FRUC模式時(例如FRUC旗標為真時),顯示可適用的圖案匹配之方法(第1圖案匹配或者第2圖案匹配)之資訊也可以CU等級而被訊號化。另,該等資訊之訊號化並不須限定於CU等級,也可為其他等級(例如序列等級、圖片等級、切片等級、方塊等級、CTU等級或者子區塊等級)。 [MV導出>仿射模式]
接著,說明根據複數個鄰接區塊的移動向量,且以子區塊單位來導出移動向量的仿射模式。該模式有時被稱為仿射移動補償預測(affine motion compensation prediction)模式。
圖25A是用於說明根據複數個鄰接區塊的移動向量之子區塊單位的移動向量之導出之圖。在圖25A中,當前區塊含有16個4×4子區塊。在此,根據鄰接區塊的移動向量,導出當前區塊的左上角控制點的移動向量v0 ,同樣地,根據鄰接區塊的移動向量,導出當前區塊的右上角控制點的移動向量v1 。接著,經由以下的式(1A),投影2個移動向量v0 及v1 ,而導出當前區塊內的各子區塊的移動向量(vx ,vy )。 (數1)
Figure 02_image001
在此,x及y分別表示子區塊的水平位置及垂直位置,w表示已事先訂定的權重係數。
顯示如此之仿射模式之資訊(例如被稱為仿射旗標)也可以CU等級而被訊號化。另,該顯示仿射模式之資訊的訊號化無須限定在CU等級,也可為其他等級(例如序列等級、圖片等級、切片等級、方塊等級、CTU等級或者子區塊等級)。
又,在如此的仿射模式中,也可含有左上角及右上角控制點的移動向量的導出方法相異的幾個模式。例如,在仿射模式中有仿射間(也稱為仿射正常間)模式、及仿射合併模式的2個模式。 [MV導出>仿射模式]
圖25B是用於說明具有3個控制點之仿射模式中的子區塊單位的移動向量之導出一例之圖。在圖25B中,當前區塊含有16個4×4子區塊。在此,根據鄰接區塊的移動向量,導出當前區塊的左上角控制點的移動向量v0 ,同樣地,根據鄰接區塊的移動向量,導出當前區塊的右上角控制點的移動向量v1 ,根據鄰接區塊的移動向量,導出當前區塊的左下角控制點的移動向量v2 。接著,經由以下的式(1B),投影3個移動向量v0 、v1 及v2 ,而導出當前區塊內的各子區塊的移動向量(vx ,vy )。 (數2)
Figure 02_image003
在此,x及y分別表示子區塊中心的水平位置及垂直位置,w表示當前區塊的寬度,h表示當前區塊的高度。
不同的控制點數(例如2個及3個)的仿射模式也可以CU等級切換而被訊號化。另,顯示以CU等級所使用的仿射模式的控制點數也可以其他等級(例如序列等級、圖片等級、切片等級、方塊等級、CTU等級或者子區塊等級)來被訊號化。
又,在如此之具有3個控制點的仿射模式中,也可含有左上角、右上角及左下角控制點的移動向量的導出方法不同的幾個模式。例如在仿射模式中有仿射間(也稱為仿射正常間)模式及仿射合併模式之2個模式。 [MV導出>仿射合併模式]
圖26A、圖26B及圖26C是用於說明仿射合併模式的概念圖。
在仿射合併模式中,如圖26A所示,例如鄰接於當前區塊的編碼完畢區塊A(左)、區塊B(上)、區塊C(右上)、區塊D(左下)及區塊E(左上)之中,根據對應於藉仿射模式編碼的區塊的複數個移動向量,來算出當前區塊的控制點各自的預測移動向量。具體來說,以編碼完畢區塊A(左)、區塊B(上)、區塊C(右上)、區塊D(左下)及區塊E(左上)的順序,檢查該等區塊,來特定已藉仿射模式編碼的最初的有效的區塊。根據對應於該已特定的區塊之複數個移動向量,來算出當前區塊的控制點的預測移動向量。
例如,如圖26B所示,在鄰接於當前區塊的左邊之區塊A以具有2個控制點的仿射模式進行編碼時,導出投影在含有區塊A的編碼完畢區塊的左上角及右上角的位置的移動向量v3 及v4 。然後,從所導出的移動向量v3 及v4 ,算出當前區塊的左上角的控制點的預測移動向量v0 、及右上角的控制點的預測移動向量v1
例如,如圖26C所示,在鄰接於當前區塊的左邊之區塊A以具有3個控制點的仿射模式進行編碼時,導出投影在含有區塊A的編碼完畢區塊的左上角、右上角及左下角的位置的移動向量v3 、v4 及v5 。然後,從所導出的移動向量v3 、v4 及v5 ,算出當前區塊的左上角的控制點的預測移動向量v0 、右上角的控制點的預測移動向量v1 及左下角的控制點的預測移動向量v2
另,後述之圖29的步驟Sj_1中的當前區塊的控制點各自的預測移動向量的導出,也可使用該預測移動向量導出方法。
圖27是顯示仿射合併模式一例之流程圖。
在仿射合併模式中,首先,間預測部126導出當前區塊的控制點各個的預測MV(步驟Sk_1)。控制點,如圖25A所示,為當前區塊的左上角及右上角的點,或者,如圖25B所示,為當前區塊的左上角、右上角及左下角的點。
也就是說,間預測部126,如圖26A所示,按編碼完畢區塊A(左)、區塊B(上)、區塊C(右上)、區塊D(左下)及區塊E(左上)的順序,檢查該等區塊,來特定已藉仿射模式編碼的最初的有效的區塊。
接著,在區塊A已被特定且區塊A具有2個控制點時,如圖26B所示,間預測部126從含有區塊A的編碼完畢區塊的左上角及右上角的移動向量v3 及v4 ,算出當前區塊的左上角的控制點的移動向量v0 、及右上角的控制點的移動向量v1 。例如,間預測部126將編碼完畢區塊的左上角及右上角的移動向量v3 及v4 投影到當前區塊,藉此算出當前區塊的左上角的控制點的預測移動向量v0 及右上角的控制點的預測移動向量v1
或者,在區塊A已被特定且區塊A具有3個控制點時,如圖26C所示,間預測部126從含有區塊A的編碼完畢區塊的左上角、右上角及左下角的移動向量v3 、v4 及v5 ,算出當前區塊的左上角的控制點的移動向量v0 、右上角的控制點的移動向量v1 及左下角的控制點的移動向量v2 。例如,間預測部126將編碼完畢區塊的左上角、右上角及左下角的移動向量v3 、v4 及v5 投影到當前區塊,藉此算出當前區塊的左上角的控制點的預測移動向量v0 、右上角的控制點的預測移動向量v1 及左下角的控制點的移動向量v2
接著,間預測部126對當前區塊所含的複數個子區塊之各個來進行移動補償。即,間預測部126針對其複數個子區塊的各個,使用2個預測移動向量v0 及v1 與上述之式(1A)、或者3個預測移動向量v0 、v1 及v2 與上述之式(1B),算出其子區塊的移動向量,來作為仿射MV(步驟Sk_2)。然後,間預測部126使用其等仿射MV及編碼完畢圖片,對其子區塊進行移動補償(步驟Sk_3)。其結果,能對當前區塊進行移動補償,產生其當前區塊的預測圖像。 [MV導出>仿射間模式]
圖28A是用於說明具有2個控制點的仿射間模式的圖。
在該仿射間模式中,如圖28A所示,使用從鄰接於當前區塊的編碼完畢區塊A、區塊B及區塊C的移動向量所選擇的移動向量,來作為當前區塊的左上角的控制點的預測移動向量v0 。同樣地,使用從鄰接於當前區塊的編碼完畢區塊D及區塊E的移動向量所選擇的移動向量,來作為當前區塊的右上角的控制點的預測移動向量v1
圖28B是用於說明具有3個控制點的仿射間模式的圖。
在該仿射間模式中,如圖28B所示,使用從鄰接於當前區塊的編碼完畢區塊A、區塊B及區塊C的移動向量所選擇的移動向量,來作為當前區塊的左上角的控制點的預測移動向量v0 。同樣地,使用從鄰接於當前區塊的編碼完畢區塊D及區塊E的移動向量所選擇的移動向量,來作為當前區塊的右上角的控制點的預測移動向量v1 。進而,使用從鄰接於當前區塊的編碼完畢區塊F及區塊G的移動向量所選擇的移動向量,來作為當前區塊的左下角的控制點的預測移動向量v2
圖29是顯示仿射間模式的一例之流程圖。
在仿射間模式中,首先,間預測部126導出當前區塊的2個或者3個控制點的各個預測MV(v0 ,v1 )或者(v0 ,v1 ,v2 )(步驟Sj_1)。如圖25A或者圖25B所示,控制點為當前區塊的左上角、右上角或者左下角的點。
也就是說,間預測部126,選擇圖28A或者圖28B所示的當前區塊的各控制點附近的編碼完畢區塊之中的任一個區塊的移動向量,藉此導出當前區塊的控制點的預測移動向量(v0 ,v1 )或者(v0 ,v1 ,v2 )。此時,間預測部126將用於識別已選擇的2個移動向量的預測移動向量選擇資訊編碼成串流。
例如,間預測部126也可使用成本評價等,來決定要從鄰接於當前區塊的編碼完畢區塊,選擇哪一個區塊的移動向量,來作為控制點的預測移動向量,並將顯示已選擇了哪一個預測移動向量的旗標記述在位元流。
接著,間預測部126一邊分別更新在步驟Sj_1所選擇或者所導出的預測移動向量(步驟Sj_2),一邊進行移動估測(步驟Sj_3及Sj_4)。也就是說,間預測部126使用上述的式(1A)或者式(1B),來算出對應於所更新的預測移動向量之各子區塊的移動向量,來作為仿射MV(步驟Sj_3)。然後,間預測部126使用其等仿射MV及編碼完畢參考圖片,而對各子區塊進行移動補償(步驟Sj_4)。其結果,間預測部126在移動估測循環中,例如決定得到最小成本的預測移動向量,來作為控制點的移動向量(步驟Sj_5)。此時,間預測部126進一步將其已決定的MV及預測移動向量的各自的差分值作為差分MV,來編碼成串流。
最後,間預測部126使用其已決定的MV及編碼完畢參考圖片,而對當前區塊進行移動補償,藉此產生其當前區塊的預測圖像(步驟Sj_6)。 [MV導出>仿射間模式]
在以CU等級切換不同控制點數(例如2個及3個)的仿射模式時,有在編碼完畢區塊與當前區塊上控制點的數量不同的情況。圖30A及圖30B是用於說明在編碼完畢區塊與當前區塊上控制點的數量不同時的控制點之預測向量導出方法的概念圖。
例如,如圖30A所示,在當前區塊以具有左上角、右上角及左下角之3個控制點的仿射模式,且鄰接於當前區塊的左邊之區塊A以具有2個控制點的仿射模式進行了編碼時,導出已投影到含有區塊A的編碼完畢區塊的左上角及右上角的位置之移動向量v3 及v4 。然後,從已導出的移動向量v3 及v4 ,來算出當前區塊的左上角的控制點的預測移動向量v0 、及右上角的控制點的預測移動向量v1 。進而,從已導出的移動向量v0 及v1 ,來算出左下角的控制點的預測移動向量v2
例如,如圖30B所示,在當前區塊以具有左上角及右上角之2個控制點的仿射模式,且鄰接於當前區塊的左邊之區塊A以具有3個控制點的仿射模式進行了編碼時,導出已投影到含有區塊A的編碼完畢區塊的左上角、右上角及左下角的位置之移動向量v3 、v4 及v5 。然後,從已導出的移動向量v3 、v4 及v5 ,來算出當前區塊的左上角的控制點的預測移動向量v0 、及右上角的控制點的預測移動向量v1
對於圖29的步驟Sj_1中的當前區塊的控制點各自的預測移動向量的導出,也可使用該預測移動向量導出方法。 [MV導出>DMVR]
圖31A是顯示合併模式及DMVR的關係之圖。
間預測部126以合併模式,來導出當前區塊的移動向量(步驟Sl_1)。接著,間預測部126判定是否進行移動向量的估測,即判定是否進行移動估測(步驟Sl_2)。在此,間預測部126在判定為不進行移動估測時(步驟Sl_2之否),將步驟Sl_1所導出的移動向量決定作為對於當前區塊的最後的移動向量(步驟Sl_4)。即,在此時,以合併模式來決定當前區塊的移動向量。
另一方面,在步驟Sl_1判定為進行移動估測時(步驟Sl_2的是),間預測部126估測藉由於步驟Sl_1所導出的移動向量所示的參考圖片的周邊區域,藉此導出對於當前區塊來說是最後的移動向量(步驟Sl_3)。即,在此時,以DMVR來決定當前區塊的移動向量。
圖31B是用於說明用以決定MV的DMVR處理一例之概念圖。
首先,(例如在合併模式中)令設定在當前區塊的最適合MVP作為候選MV。接著,依照候選MV(L0),從L0方向的編碼完畢圖片即第1參考圖片(L0),來特定參考像素。同樣地,依照候選MV(L1),從L1方向的編碼完畢圖片即第2參考圖片(L1),來特定參考像素。取該等參考像素的平均,以此產生模板。
其次,使用前述模板,分別估測第1參考圖片(L0)及第2參考圖片(L1)的候選MV之周邊區域,將成本成為最小的MV決定作為最後的MV。另,成本值,例如也可是利用模板的各像素值與估測區域的各像素值之差分值及候選MV值等來算出。
另,在編碼裝置及解碼裝置中,在此所說明的處理之概要基本上是共通的。
就算不是在此所說明的處理內容,只要是能估測候選MV的周邊而導出最後的MV之處理,也可使用任何處理。 [移動補償>BIO/OBMC]
在移動補償中,有產生預測圖像,且補正其預測圖像的模式。其模式例如為後述的BIO及OBMC。
圖32是顯示預測圖像之產生的一例的流程圖。
間預測部126產生預測圖像(步驟Sm_1),且藉由上述任一種模式來補正其預測圖像(步驟Sm_2)。
圖33是顯示預測圖像之產生的另一例的流程圖。
間預測部126決定當前區塊的移動向量(步驟Sn_1)。接著,間預測部126產生預測圖像(步驟Sn_2),判定是否進行補正處理(步驟Sn_3)。在此,間預測部126在判定為進行補正處理時(步驟Sn_3之是),補正其預測圖像,藉此產生最後的預測圖像(步驟Sn_4)。另一方面,間預測部126在判定為不進行補正處理時(步驟Sn_3之否),不補正其預測圖像並作為最後的預測圖像來輸出(步驟Sn_5)。
又,在移動補償中,有在產生預測圖像時補正亮度的模式。其模式,例如為後述的LIC。
圖34是顯示預測圖像之產生的更另一例的流程圖。
間預測部126導出當前區塊的移動向量(步驟So_1)。接著,間預測部126判定是否進行亮度補正處理(步驟So_2)。在此,間預測部126在判定為進行亮度補正處理時(步驟So_2之是),一邊進行亮度補正,一邊產生預測圖像(步驟So_3)。也就是說,藉LIC來產生預測圖像。另一方面,間預測部126在判定為不進行亮度補正處理時(步驟So_2之否),不進行亮度補正,且藉由通常的移動補償,來產生預測圖像(步驟So_4)。 [移動補償>OBMC]
也可不僅使用透過移動估測所得到的當前區塊的移動資訊,還使用鄰接區塊的移動資訊,來產生間預測訊號。具體來說,也可將根據透過(參考圖片內的)移動估測所得到的移動資訊之預測訊號、與根據(當前圖片內的)鄰接區塊的移動資訊之預測訊號進行加權加總,藉此以當前區塊內的子區塊單位來產生間預測訊號。如此之間預測(移動補償)有時被稱為OBMC (overlapped block motion compensation)。
在OBMC模式中,顯示OBMC用的子區塊的尺寸之資訊(例如被稱為OBMC區塊尺寸)也可以序列等級而被訊號化。進而,顯示是否適用OBMC模式的資訊(例如被稱做OBMC旗標)也可以CU等級而被訊號化。另,該等資訊的訊號化的等級並無須限定在序列等級及CU等級,也可為其他等級(例如圖片等級、切片等級、方塊等級、CTU等級、或者子區塊等級)。
針對OBMC模式,更具體地來進行說明。圖35及圖36是用來說明OBMC處理所進行的預測圖像補正處理的概要之流程圖及概念圖。
首先,如圖36所示,使用被分配到處理對象(當前)區塊之移動向量(MV),來取得依通常的移動補償所得到之預測圖像(Pred)。在圖36中,“MV”箭頭符號是指參考圖片,表示為了預測圖像,當前圖片的當前區塊正在參考何者。
其次,將已對於編碼完畢的左鄰接區塊導出的移動向量(MV_L)適用(再利用)在編碼對象區塊,來取得預測圖像(Pred_L)。移動向量(MV_L)是由從當前區塊指出參考圖片的”MV_L”箭頭符號所表示。接著,將2個預測圖像Pred與Pred_L疊合,以此進行預測圖像的第1次補正。這具有將鄰接區塊間的邊界混合的效果。
同樣地,將已對於編碼完畢的上鄰接區塊導出的移動向量(MV_U)適用(再利用)在編碼對象區塊,來取得預測圖像(Pred_U)。移動向量(MV_U)是由從當前區塊指出參考圖片的”MV_U”箭頭符號所表示。然後,將預測圖像Pred_U疊合在已進行第1次補正的預測圖像(例如Pred及Pred_L),以此進行預測圖像的第2次補正。這具有將鄰接區塊間的邊界混合的效果。藉由第2次補正的預測圖像為混合有與鄰接區塊的邊界(已平滑化)之當前區塊的最後的預測圖像。
另,上述之例是說明了使用左鄰接與上鄰接的區塊之2階段的補正方法,但其補正方法也能為連右鄰接及/或下鄰接的區塊都使用的3階段或者比這更多階段的補正方法。
另,進行疊合的區域,也可為僅為區塊邊界附近之一部分的區域,而非區塊整體的像素區域。
另,在此雖是說明為了從1張參考圖片來疊合追加的預測圖像Pred_L及Pred_U,以此得到1個預測圖像Pred的OBMC的預測圖像補正處理。但是在根據複數張參考圖像來補正預測圖像時,同樣的處理也適用在複數張參考圖片之各個。如此情況下,進行根據複數張參考圖片的OBMC之圖像補正,藉此從各個參考圖片,取得已補正的預測圖像,之後將其所得到的複數個補正預測圖像進一步疊合,以此取得最後的預測圖像。
另,在OBMC中,對象區塊的單位也可為預測區塊單位,也可為將預測區塊進一步分割的子區塊單位。
作為判定是否適用OBMC處理的方法,例如有使用顯示是否適用OBMC處理的訊號之obmc_flag的方法。以一具體例來說,編碼裝置也可判定對象區塊是否屬於移動複雜的區域。在屬於移動複雜的區域時,編碼裝置設定值為1來作為obmc_flag,適用OBMC處理來進行編碼,在不屬於移動複雜的區域時,則設定值為0來作為obmc_flag,不適用OBMC處理來進行區塊的編碼。另一方面,在解碼裝置中,將記述在串流(例如壓縮序列)的obmc_flag進行解碼,以此因應該值切換是否適用OBMC處理,來進行解碼。
間預測部126,在上述之例中,對於矩形當前區塊,產生1個矩形預測圖像。惟,間預測部126也可對於其矩形當前區塊,產生與矩形不同形狀的複數個預測圖像,將其等複數個預測圖像結合,藉此產生最後的矩形預測圖像。與矩形不同的形狀,例如也可為三角形。
圖37是用於說明產生2個三角形預測圖像的圖。
間預測部126對當前區塊內的三角形第1分區,使用其第1分區的第1MV來進行移動補償,藉此產生三角形預測圖像。同樣地,間預測部126對當前區塊內的三角形第2分區,使用該第2分區的第2MV來進行移動補償,藉此產生三角形預測圖像。然後,間預測部126結合該等預測圖像,產生與當前區塊相同的矩形預測圖像。
另,在圖37所示之例中,第1分區及第2分區各自為三角形,但也可為梯形,也可分別為互相不同的形狀。進而,在圖37所示之例中,當前區塊是由2個分區所構成,但也可由3個以上的分區所構成。
又,第1分區及第2分區也可以重複。即,第1分區及第2分區也可含有相同的像素區域。此時,也可使用第1分區中的預測圖像及第2分區中的預測圖像,來產生當前區塊的預測圖像。
又,在該例中,是顯示了2個分區都是以間預測來產生預測圖像的例子,但也可針對至少1個分區,藉由內預測來產生預測圖像。 [移動補償>BIO]
其次,針對導出移動向量的方法進行說明。首先針對根據已假設等速直線運動之模型來導出移動向量的模式進行說明。該模式有時被稱為BIO (bi-directional optical flow,雙向光流)模式。
圖38是用於說明假設為等速直線運動的模型之圖。在圖38中,(vx ,vy )表示速度向量,τ0 、τ1 分別表示當前圖片(Cur Pic)與2個參考圖片(Ref0 ,Ref1 )間的時間性距離。(MVx0 ,MVy0 )是表示對應於參考圖片Ref0 之移動向量,(MVx1 、MVy1 )是表示對應於參考圖片Ref1 之移動向量。
此時,速度向量(vx ,vy )在等速直線運動的假設之下,(MVx0 ,MVy0 )及(MVx1 ,MVy1 )分別表示為(vx τ0 ,vy τ0 )及(-vx τ1 ,-vy τ1 ),以下的光流等式(2)成立。 (數3)
Figure 02_image005
在此,I(k) 表示移動補償後之參考圖像k(k=0,1)的亮度值。該光流等式顯示(i)亮度值的時間微分、(ii)水平方向的速度及參考圖像的空間梯度的水平成分的乘積、與(iii)垂直方向的速度及參考圖像的空間梯度的垂直成分的乘積之和等於零。也可根據該光流等式與埃爾米特插值(Hermite interpolation)之組合,將從合併清單等所得到的區塊單位之移動向量以像素單位進行補正。
另,也可以異於根據假設等速直線運動之模型之移動向量的導出之方法,在解碼裝置側導出移動向量。例如,也可根據複數個鄰接區塊的移動向量,以子區塊單位導出移動向量。 [移動補償>LIC]
接著,針對使用LIC(local illumination compensation)處理來產生預測圖像(預測)的模式一例進行說明。
圖39是用於說明使用依LIC處理所進行的亮度補正處理的預測圖像產生方法一例之圖。
首先,從編碼完畢的參考圖片,導出MV,取得對應於當前區塊的參考圖像。
其次,對當前區塊,擷取顯示亮度在參考圖片與當前圖片是如何變化的資訊。該擷取是根據當前圖片中的編碼完畢左鄰接參考區域(周邊參考區域)、編碼完畢上鄰接參考區域(周邊參考區域)的亮度像素值、及藉已導出的MV所指定的參考圖片內的同等位置中的亮度像素值來進行。然後,使用顯示亮度值如何變化的資訊,來算出亮度補正參數。
對藉MV所指定的參考圖片內的參考圖像,進行適用前述亮度補正參數的亮度補正處理,以此產生對於當前區塊的預測圖像。
另,圖39中的前述周邊參考區域的形狀只是一個例子而已,也可使用除此之外的形狀。
又,在此已針對從1張參考圖片來產生預測圖像的處理進行說明,但從複數張的參考圖片來產生預測圖像的情況也是同樣,也可以先對已從各個參考圖片所取得的參考圖像,以同樣的方法進行亮度補正處理,之後再產生預測圖像。
以判斷是否適用LIC處理之方法來說,例如有使用顯示是否適用LIC處理的訊號之lic_flag的方法。以具體的一例來說,在編碼裝置中,判定當前區塊是否為屬於發生了亮度變化之區域,若為屬於發生了亮度變化的區域時,對lic_flag設定其值為1,適用LIC處理來進行編碼,若不屬於發生了亮度變化之區域時,則對lic_flag設定其值為0,不適用LIC處理來進行編碼。另一方面,在解碼裝置中,也可以將記述於串流之lic_flag進行解碼,藉此因應其值來切換是否適用LIC處理而進行解碼。
以判定是否適用LIC處理之另一方法來說,例如還有依照在周邊區塊是否適用過LIC處理來判定的方法。以具體的一例來說,在當前區塊為合併模式時,判定在於合併模式處理中的MV之導出時所選擇的周邊的編碼完畢區塊是否適用LIC處理而進行編碼。因應其結果,切換是否適用LIC處理來進行編碼。另,在該例的情況,相同處理也適用在解碼裝置側的處理。
已使用圖39來說明LIC處理(亮度補正處理),以下進行詳細說明。
首先,間預測部126從編碼完畢圖片即參考圖片,導出用以取得對應於編碼對象區塊的參考圖像之移動向量。
其次,間預測部126對於編碼對象區塊,使用左鄰接及上鄰接的編碼完畢周邊參考區域的亮度像素值、以移動向量所指定的參考圖片內的同等位置中的亮度像素值,擷取顯示亮度值在參考圖片與編碼對象圖片如何變化的資訊,來算出亮度補正參數。例如,令編碼對象圖片內的周邊參考區域內的某像素的亮度像素值為p0,且與該像素同樣位置的參考圖片內的周邊參考區域內的像素的亮度像素值為p1。間預測部126對於周邊參考區域內的複數個像素,算出將A×p1+B=p0進行最適化的係數A及B,來作為亮度補正參數。
其次,間預測部126使用亮度補正參數對以移動向量所指定的參考圖片內的參考圖像進行亮度補正處理,以此產生對於編碼對象區塊之預測圖像。例如,令參考圖像內的亮度像素值為p2,且亮度補正處理後的預測圖像的亮度像素值為p3。間預測部126對於參考圖像內的各像素,算出A×p2+B=p3,以此產生亮度補正處理後的預測圖像。
另,圖39中的周邊參考區域的形狀只是一個例子而已,也可使用除此之外的形狀。又,也可使用圖39所示的周邊參考區域的一部分。例如,也可使用含有從上鄰接像素及左鄰接像素各個減去的預定數的像素的區域來作為周邊參考區域。又,周邊參考區域不限於鄰接於編碼對象區塊的區域,也可為不鄰接於編碼對象區塊的區域。又,在圖39所示之例中,參考圖片內的周邊參考區域為從編碼對象圖片內的周邊參考區域,以編碼對象圖片的移動向量所指定的區域,但也可為以其他移動向量所指定的區域。例如,該其他移動向量也可為編碼對象圖片內的周邊參考區域的移動向量。
另,在此是已說明了編碼裝置100的動作,但是解碼裝置200的動作也是同樣。
另,LIC處理不只亮度,也可適用於色差。此時,Y、Cb及Cr各自也可個別地導出補正參數,也可對於任一個,使用共通的補正參數。
又,LIC處理也可以子區塊單位適用。例如,使用當前子區塊的周邊參考區域、及以當前子區塊的MV所指定的參考圖片內的參考子區塊的周邊參考區域,來導出補正參數。 [預測控制部]
預測控制部128是選擇內預測訊號(從內預測部124所輸出的訊號)及間預測訊號(從間預測部126所輸出的訊號)之任一種,且將所選擇的訊號作為預測訊號,而輸出至減法部104及加法部116。
如圖1所示,在各種的安裝例中,預測控制部128也可將輸入於熵編碼部110的預測參數輸出。熵編碼部110也可根據從預測控制部128所輸入的其預測參數、及從量化部108所輸入的量化係數,產生編碼位元流(或者序列)。預測參數也可使用在解碼裝置。解碼裝置也可接收編碼位元流而進行解碼,並進行與內預測部124、間預測部126及預測控制部128中所進行的預測處理相同的處理。預測參數也可含有選擇預測訊號(例如移動向量、預測型式、或者、內預測部124或在間預測部126所使用的預測模式),或者根據內預測部124、間預測部126及預測控制部128中所進行的預測處理,或者顯示其預測處理的任意的索引、旗標、或者值。 [編碼裝置的安裝例]
圖40是顯示編碼裝置100的安裝例的方塊圖。編碼裝置100具備處理器a1及記憶體a2。例如,如圖1所示的編碼裝置100的複數個構成要素是藉由圖40所示的處理器a1及記憶體a2來安裝。
處理器a1是進行資訊處理的電路,且為可對記憶體a2進行存取的電路。例如,處理器a1是將動態圖像進行編碼之專用或者通用的電子電路。處理器a1也可為如CPU般之處理器。又,處理器a1也可為複數個電子電路的集合體。又,例如處理器a1也可實現圖1等所示之編碼裝置100之複數個構成要素中除了用來記憶資訊的構成要素之外的複數個構成要素的作用。
記憶體a2是通用或者專用的記憶體,記憶用來使處理器a1將動態圖像進行編碼之資訊。記憶體a2也可為電子電路,也可連接於處理器a1。又,記憶體a2也可包含在處理器a1。又,記憶體a2也可為複數個電子電路的集合體。又,記憶體a2也可為磁碟或者是光碟,也可表現為儲存器(storage)或者是記錄媒體等。又,記憶體a2也可為非揮發性記憶體,也可為揮發性記憶體。
例如,記憶體a2也可記憶要編碼的動態圖像,也可記憶對應於已被編碼的動態圖像之位元列。又,在記憶體a2也可記憶用來使處理器a1將動態圖像進行編碼的程式。
又,例如,記憶體a2也可實現在圖1等所示之編碼裝置100之複數個構成要素之中用來記憶資訊之構成要素的作用。具體來說,記憶體a2也可實現圖1等所示之區塊記憶體118、及幀記憶體122之作用。更具體來說,記憶體a2也可記憶再構成完畢區塊、及再構成完畢圖片等。
另,在編碼裝置100中,也可不安裝圖1等所示的複數個構成要素全部,也可不進行上述之複數個處理全部。圖1等所示的複數個構成要素之一部分也可包含在其他裝置,上述之複數個處理之一部分也可藉其他裝置來執行。 [解碼裝置]
接著,針對可將從上述之編碼裝置100輸出的編碼訊號(編碼位元流)解碼的解碼裝置進行說明。圖41是顯示本實施形態之解碼裝置200的功能構成的方塊圖。解碼裝置200是以區塊單位來將動態圖像進行解碼的動態圖像解碼裝置。
如圖41所示,解碼裝置200包含有熵解碼部202、反量化部204、反轉換部206、加法部208、區塊記憶體210、迴路濾波器212、幀記憶體214、內預測部216、間預測部218、及預測控制部220。
解碼裝置200,例如可透過通用處理器及記憶體來實現。此時,記憶體所儲存的軟體程式經由處理器來執行時,處理器是作為熵解碼部202、反量化部204、反轉換部206、加法部208、迴路濾波部212、內預測部216、間預測部218、及預測控制部220而運作。又,解碼裝置200也可作為對應於熵解碼部202、反量化部204、反轉換部206、加法部208、迴路濾波部212、內預測部216、間預測部218、及預測控制部220之專用的1個以上的電子電路而附諸實現。
以下,在說明過解碼裝置200的整體的處理的流程之後,再針對解碼裝置200所含的各構成要素進行說明。 [解碼處理的整體流程]
圖42是顯示依解碼裝置200的整體性的解碼處理一例之流程圖。
首先,解碼裝置200的熵解碼部202特定出固定尺寸的區塊(128×128像素)的分割圖案(步驟Sp_1)。該分割圖案為藉由編碼裝置100所選擇的分割圖案。然後,解碼裝置200對於構成其分割圖案的複數個區塊之各個來進行步驟Sp_2至Sp_6的處理。
也就是說,熵解碼部202將解碼對象區塊(也稱為當前區塊)的已編碼的量化係數及預測參數進行解碼(具體來說熵解碼)(步驟Sp_2)。
接著,反量化部204及反轉換部206對複數個量化係數,進行反量化及反轉換,藉此將複數個預測殘差(即,差分區塊)進行復原(步驟Sp_3)。
接著,由內預測部216、間預測部218及預測控制部220的全部或者一部分所構成的預測處理部產生當前區塊的預測訊號(也稱為預測區塊)(步驟Sp_4)。
接著,加法部208在差分區塊加上預測區塊,藉此來將當前區塊再構成為再構成圖像(也稱為解碼圖像區塊)(步驟Sp_5)。
接著,一產生該再構成圖像,迴路濾波部212就對其再構成圖像來進行濾波(步驟Sp_6)。
然後,解碼裝置200判定圖片整體的解碼是否已完成(步驟Sp_7),判定為未完成時(步驟Sp_7之否),反覆執行從步驟Sp_1開始之處理。
另,該等步驟Sp_1至Sp_7的處理也可藉解碼裝置200而按序進行,也可將其等處理之中一部分的複數個處理並列進行,也可把順序對調。 [熵解碼部]
熵解碼部202將編碼位元流進行熵解碼。具體來說,熵解碼部202例如是從編碼位元流進行算術解碼成二值訊號。接著,熵解碼部202將二值訊號進行多值化(debinarize)。熵解碼部202是以區塊單位而將量化係數輸出至反量化部204。熵解碼部202也可將編碼位元流(參考圖1)所含的預測參數輸出到內預測部216、間預測部218及預測控制部220。內預測部216、間預測部218及預測控制部220可執行與編碼裝置側中的內預測部124、間預測部126及預測控制部128所進行的處理相同的預測處理。 [反量化部]
反量化部204是將來自熵解碼部202的輸入之解碼對象區塊(以下稱為當前區塊)的量化係數進行反量化。具體來說,反量化部204是針對當前區塊的量化係數之各個,根據對應於該量化係數之量化參數,而將該量化係數進行反量化。然後,反量化部204將當前區塊的業經反量化之量化係數(即轉換係數)輸出至反轉換部206。 [反轉換部]
反轉換部206是將來自反量化部204之輸入的轉換係數進行反轉換,藉此將預測誤差復原。
例如在從編碼位元流已解讀的資訊是顯示適用EMT或者AMT的時候(例如AMT旗標為真),反轉換部206是根據顯示所解讀的轉換型式的資訊,將當前區塊的轉換係數進行反轉換。
又,例如從編碼位元流已解讀的資訊是顯示適用NSST的時候,反轉換部206是對轉換係數適用反再轉換。 [加法部]
加法部208是將來自反轉換器206的輸入之預測誤差與來自預測控制部220的輸入之預測樣本相加,藉此再構成當前區塊。然後,加法部208是將已再構成的區塊輸出至區塊記憶體210及迴路濾波部212。 [區塊記憶體]
區塊記憶體210是用於儲存在內預測中被參考的區塊且為解碼對象圖片(以下稱為當前圖片)內的區塊之記憶部。具體來說,區塊記憶體210是儲存從加法部208所輸出的再構成區塊。 [迴路濾波部]
迴路濾波部212是對已藉由加法部208而再構成的區塊施行迴路濾波,且將已濾波的再構成區塊輸出至幀記憶體214及顯示裝置等。
在顯示從編碼位元流已解讀之ALF之開啟/關閉的資訊是顯示ALF之開啟的時候,根據一部分的梯度的方向及活性度,從複數個濾波器之中,選擇1個濾波器,將所選擇的濾波器適用於再構成區塊。 [幀記憶體]
幀記憶體214是用於儲存使用在間預測的參考圖片之記憶部,也有時被稱為幀緩衝器。具體來說,幀記憶體214是儲存經由迴路濾波部212所濾波的再構成區塊。 [預測處理部(內預測部・間預測部・預測控制部)]
圖43是顯示在解碼裝置200的預測處理部所進行的處理一例之圖。另,預測處理部是由內預測部216、間預測部218、及預測控制部220的全部或者一部分的構成要素所構成。
預測處理部產生當前區塊的預測圖像(步驟Sq_1)。該預測圖像也稱為預測訊號或者預測區塊。另,在預測訊號中,例如有內預測訊號或者間預測訊號。具體來說,預測處理部使用藉由進行了預測區塊的產生、差分區塊的產生、係數區塊的產生、差分區塊的復原、及解碼圖像區塊的產生而得到的再構成圖像,來產生當前區塊的預測圖像。
再構成圖像,例如也可為參考圖片的圖像,也可為含有當前區塊的圖片即當前圖片內的解碼完畢的區塊的圖像。當前圖片內的解碼完畢的區塊,例如為當前區塊的鄰接區塊。
圖44是顯示在解碼裝置200的預測處理部所進行的處理的另一例的圖。
預測處理部判定用來產生預測圖像的方式或者模式(步驟Sr_1)。例如,該方式或者模式,例如也可根據預測參數等來判定。
預測處理部在判定為第1方式來作為用來產生預測圖像的模式時,依照其第1方式來產生預測圖像(步驟Sr_2a)。又,預測處理部在判定為第2方式來作為用來產生預測圖像的模式時,依照其第2方式來產生預測圖像(步驟Sr_2b)。又,預測處理部在判定為第3方式來作為用來產生預測圖像的模式時,依照其第3方式來產生預測圖像(步驟Sr_2c)。
第1方式、第2方式、及第3方式為用來產生預測圖像之互相不同的方式,也可分別為例如間預測方式、內預測方式及其等以外的預測方式。在該等預測方式中,也可使用上述之再構成圖像。 [內預測部]
內預測部216根據已從編碼位元流解讀的內預測模式,參考區塊記憶體210所儲存的當前圖片內的區塊來進行內預測,以此來產生預測訊號(內預測訊號)。具體來說,內預測部216參考鄰接於當前區塊的區塊的樣本(例如亮度值、色差值)來進行內預測,以此產生內預測訊號,且將內預測訊號輸出至預測控制部220。
另,當在色差區塊的內預測中已選擇了參考亮度區塊的內預測模式時,內預測部216也可根據當前區塊的亮度成分,預測當前區塊的色差成分。
又,在從編碼位元流已解讀的資訊顯示PDPC的適用時,內預測部216根據水平/垂直方向的參考像素的梯度,來補正內預測後的像素值。 [間預測部]
間預測部218是參考幀記憶體214所儲存的參考圖片,來預測當前區塊。預測是以當前區塊或者當前區塊內的子區塊(例如4×4區塊)的單位進行。例如,間預測部218是使用已從編碼位元流(例如,從熵解碼部202所輸出的預測參數)解讀的移動資訊(例如移動向量)來進行移動補償,以此產生當前區塊或者子區塊的間預測訊號,且將間預測訊號輸出至預測控制部220。
另,在已從編碼位元流解讀的資訊是顯示適用OBMC模式時,間預測部218不只是利用經由移動估測而得到的當前區塊的移動資訊,還利用鄰接區塊的移動資訊,來產生間預測訊號。
又,在已從編碼位元流解讀的資訊是顯示適用FRUC模式時,間預測部218是依照已從編碼流解讀的圖案匹配的方法(雙向匹配或者模板匹配)來進行移動估測,藉此導出移動資訊。然後,間預測部218是使用所導出的移動資訊,來進行移動補償(預測)。
又,間預測部218是在適用BIO模式時,根據假設等速直線運動的模型,來導出移動向量。又,在已從編碼位元流解讀的資訊顯示適用仿射移動補償預測模式時,間預測部218是根據複數個鄰接區塊的移動向量,而以子區塊單位導出移動向量。 [MV導出>正常間模式]
在已從編碼位元流解讀的資訊顯示適用正常間模式時,間預測部218根據已從編碼流解讀的資訊,導出MV,且使用其MV,來進行移動補償(預測)。
圖45是顯示解碼裝置200中依正常間模式所進行的間預測之例的流程圖。
解碼裝置200的間預測部218依每區塊而對其區塊進行移動補償。此時,間預測部218首先根據時間性或者空間性地位於當前區塊的周圍之複數個解碼完畢區塊的MV等之資訊,對其當前區塊,取得複數個候選MV(步驟Ss_1)。也就是說,間預測部218作成候選MV清單。
接著,間預測部218從步驟Ss_1所取得的複數個候選MV之中,依照已事先決定的優先順位,擷取N個(N為2以上的整數)候選MV,分別作為預測移動向量候選(也稱為預測MV候選(步驟Ss_2)。另,其優先順位已對於N個預測MV候選之各個而事先訂定了。
接著,間預測部218從已輸入的串流(即,編碼位元流)將預測移動向量選擇資訊進行解碼,使用其已解碼的預測移動向量選擇資訊,從其N個預測MV候選之中選擇1個預測MV候選,來作為當前區塊的預測移動向量(也稱為預測MV)(步驟Ss_3)。
接著,間預測部218從已輸入的串流,將差分MV進行解碼,將其已解碼的差分MV即差分值及已選擇的預測移動向量相加,藉此導出當前區塊的MV(步驟Ss_4)。
最後,間預測部218使用其已導出的MV及解碼完畢參考圖片,來對當前區塊進行移動補償,藉此產生其當前區塊的預測圖像(步驟Ss_5)。 [預測控制部]
預測控制部220選擇內預測訊號及間預測訊號之任一者,將已選擇的訊號作為預測訊號而輸出至加法部208。整體上,解碼裝置側的預測控制部220、內預測部216及間預測部218的構成、功能、及處理也可對應於編碼裝置側的預測控制部128、內預測部124及間預測部126的構成、功能、及處理。 [解碼裝置的安裝例]
圖46是顯示解碼裝置200的安裝例的方塊圖。解碼裝置200具備處理器b1及記憶體b2。例如,如圖41所示的解碼裝置200的複數個構成要素是藉由圖46所示的處理器b1及記憶體b2來安裝。
處理器b1是進行資訊處理的電路,且為可對記憶體b2進行存取的電路。例如,處理器b1是將已編碼之動態圖像(即,編碼位元流)進行解碼之專用或者通用的電子電路。處理器b1也可為如CPU般之處理器。又,處理器b1也可為複數個電子電路的集合體。又,例如處理器b1也可實現圖41等所示之解碼裝置200之複數個構成要素中除了用來記憶資訊的構成要素之外的複數個構成要素的作用。
記憶體b2是通用或者專用的記憶體,記憶用來使處理器b1將編碼位元流進行解碼之資訊。記憶體b2也可為電子電路,也可連接於處理器b1。又,記憶體b2也可包含在處理器b1。又,記憶體b2也可為複數個電子電路的集合體。又,記憶體b2也可為磁碟或者是光碟,也可表現為儲存器(storage)或者是記錄媒體等。又,記憶體b2也可為非揮發性記憶體,也可為揮發性記憶體。
例如,記憶體b2也可記憶動態圖像,也可記憶編碼位元流。又,在記憶體b2也可記憶用來讓處理器b1將編碼位元流進行解碼的程式。
又,例如,記憶體b2也可實現在圖41等所示之解碼裝置200之複數個構成要素之中用來記憶資訊之構成要素的作用。具體來說,記憶體b2也可實現圖41等所示之區塊記憶體210、及幀記憶體214之作用。更具體來說,在記憶體b2也可記憶再構成完畢區塊、及再構成完畢圖片等。
另,在解碼裝置200中,也可不安裝圖41等所示的複數個構成要素全部,也可不進行上述之複數個處理全部。圖41等所示的複數個構成要素之一部分也可包含在其他裝置,上述之複數個處理之一部分也可藉其他裝置來執行。 [各用語的定義]
各用語,舉一例來說,也可為如下的定義。
圖片為單色格式中的複數個量度樣本的陣列,或者是4:2:0、4:2:2及4:4:4的彩色格式中的複數個亮度樣本的陣列及複數個色差樣本的2個對應陣列。圖片也可為幀(frame)或者場域(field)。
幀是複數個樣本列0、2、4、・・・所產生的頂場域(top field),以及複數個樣本列1、3、5、・・・所產生的底場域(bottom field)的組成物。
切片是1個獨立切片段,以及(如果有)在相同存取單元內的(如果有)下一個獨立切片段之前的全部的後續之附屬切片段所含的整數個編碼樹單元。
方塊是圖片中的特定的方塊行及特定的方塊列內的複數個編碼樹區塊的矩形區域。方塊,依然也可適用跨越方塊的邊緣的迴路濾波器,但也可為意圖了可獨立進行解碼及編碼之幀的矩形區域。
區塊為複數個樣本的M×N(N行M列)陣列,或者複數個轉換係數的M×N陣列。區塊也可為由1個亮度及2個色差的複數個矩陣所構成的複數個像素的正方形或者矩形的區域。
CTU(編碼樹單元)也可為具有3個樣本陣列的圖片之複數個亮度樣本的編碼樹區塊,也可為複數個色差樣本之2個對應編碼樹區塊。或者,CTU也可為單色圖片、使用3種分離的顏色平面及複數個樣本的編碼所使用的語法構造而被編碼之圖片中之任一者的複數個樣本之編碼樹單元。
超級區塊也可為構成1個或者2個模式資訊區塊,或者遞迴性地分割成4個32×32區塊,也可為可進一步分割的64×64像素的正方形方塊。 [第1態樣]
以下就本揭示第1態樣之編碼裝置100、解碼裝置200、編碼方法及解碼方法進行說明。
圖47是顯示第1態樣之間預測處理一例的流程圖。以下針對解碼裝置200的間預測處理,說明一例。
解碼裝置200中的間預測部218導出用於處理對象區塊的預測的基準移動向量;導出與基準移動向量不同的第1移動向量;根據基準移動向量與前述第1移動向量的差分,導出移動向量;判定差分移動向量是否大於閾值,當判定為差分移動向量大於閾值時,變更第1移動向量,當判定為差分移動向量不大於閾值時,不變更第1移動向量,使用變更後的第1移動向量或者未變更的第1移動向量,將處理對象區塊進行解碼。例如,基準移動向量對應於處理對象區塊內的第1像素組合,第1移動向量對應於處理對象區塊內之與第1像素組合不同的第2像素組合。以下,一邊參考圖式一邊更具體地說明間預測處理。另,以下說明的基準移動向量及第1移動向量只是一個例子罷了,並不限於此。
首先,在步驟S1001中,間預測部218導出處理對象區塊內的第1像素組合的基準移動向量。以下一邊參考圖48,一邊更具體說明步驟S1001的處理。
圖48是顯示處理對象區塊一例的圖。如圖48所示,處理對象區塊也可由複數個子區塊(子區塊0至子區塊5)所構成。又,各子區塊也可分別具有不同的第1移動向(MV0 至MV5 )。第1像素組合的一例也可為子區塊0。此時,基準移動向量是處理對象區塊內的複數個第1移動向量之中的1個。在該例中,基準移動向量為MV0
第1像素組合的另一例也可為處理對象區塊整體。在該例中,基準移動向量為處理對象區塊內全部的子區塊的第1移動向量的平均,也就是說從MV0 到MV5 的平均。
其次,在步驟S1002中,間預測部218導出處理對象區塊內的第2像素組合的第1移動向量。第2像素組合不同於第1像素組合。第2像素組合的一例也可為子區塊2。在該例中,第2像素組合的第1移動向量為MV2
又,第2像素組合的另一例也可為子區塊1。在該例中,第1移動向量為MV1
接著,在步驟S1003中,間預測部218根據第1像素組合的基準移動向量與第2像素組合的第1移動向量的差分,來導出差分向量。基準移動向量的值的一例也可為(-3,4)。第1移動向量的一例也可為(16,5)。因此,第1移動量與基準移動向量的差分移動向量便成為(-19,-1)。
接著,在步驟S1004中,間預測部218判定在步驟S1003所導出的差分移動向量是否大於閾值。閾值是1組合的第1值(以下為第1閾值)及第2值(以下為第2閾值)。閾值的一例也可為(10,20)。以下就該判定處理進行說明。
當步驟S1003所導出的差分移動向量的水平成分的絕對值大於第1閾值,或者,差分移動向量的垂直成分的絕對值大於第2閾值時,間預測部218判定差分移動向量大於閾值(在步驟S1004,是)。換言之,若差分移動向量的水平成分的絕對值及垂直成分的絕對值的任一者大於閾值時,差分移動向量被判定為大於閾值。例如,比較在步驟S1003舉例顯示的差分移動向量(-19,-1)的水平成分的絕對值與第1閾值,因為|-19|>10,所以差分移動向量被判定為大於閾值。此時,間預測部218變更第1移動向量。在步驟S1006中詳細說明變更內容。
另一方面,當差分移動向量的水平成分的絕對值不大於第1閾值,並且,差分移動向量的垂直成分的絕對值不大於第2閾值時,間預測部218判定差分移動向量不大於閾值(在步驟S1004,否)。換言之,當差分移動向量的水平成分的絕對值及垂直成分的絕對值之任一者皆是閾值以下時,差分移動向量則被判定為閾值以下。當判定為差分移動向量不大於閾值時(在步驟S1004,否),間預測部218不變更第1移動向量(步驟S1005)。
接著,在步驟S1006中,當判定為差分移動向量不大於閾值時(在步驟S1004,是),間預測部218使用已將差分移動向量剪裁的值,來變更第1移動向量。此時,差分移動向量(-19,-1)被剪成(-10,-1)。如上述,因為差分移動向量的水平成分的絕對值|-19|大於閾值(10,20)的第1閾值即10,因此被剪成如同差分移動向量的水平成分的絕對值與第1閾值一致。因此,被剪裁的差分移動向量便成為(-10,-1)。
接著,間預測部218使用已剪裁的差分移動向量及基準移動向量,來變更第1移動向量。更具體來說,也可將差分移動向量加到基準移動向量,藉此來變更第1移動向量。例如,變更後的第1移動向量:(-3,4)-(-10,-1)=(7,5)。
在步驟S1007中,間預測部218使用變更後的第1移動向量或者未變更的第1移動向量,來將第2像素組合進行解碼。例如,子區塊2使用變更後的第1移動向量(7,5)來解碼。
另,圖47所示的處理1000也可為編碼裝置的處理。
處理1000能適用於處理對象區塊內的全部子區塊。當處理1000適用於處理對象區塊內的全部子區塊時,處理對象區塊的預測模式也可為仿射模式。又,當處理1000適用於處理對象區塊內的全部子區塊時,處理對象區塊的預測模式也可為ATMVP(Alternative Temporal Motion Vector Prediction,可選時域移動向量預測)模式。
另,ATMVP模式是分類到合併模式的子區塊模式的1例,例如在藉由鄰接於當前區塊的左下角的區塊的MV(MV0)所指定的編碼完畢的參考圖片中,特定出已對應於該當前區塊的時間MV參考區塊,針對當前區塊內的各子區塊,特定出在與該時間MV參考區塊內之該子區塊對應的區域的編碼時使用的MV。
又,也可使用以特定的子區塊變更的第1移動向量,更新處理對象區塊的其他的子區塊的第1移動向量。以下,說明處理例。
例如,將子區塊0的MV0 確定為基準移動向量,將子區塊2的MV2 確定為第1移動向量,使用處理1000,來決定變更後的第1移動向量。子區塊2的變更後的第1移動向量可以MV2 ’=(V2x ’,V2y ’)來表示。使用基準移動向量MV0 及變更後的第1移動向量MV2 ’,藉由下列式子,來算出處理對象區塊內的子區塊2以外的子區塊i(i=1,3,4,5)的變更後的第1移動向量MVi ’=(Vix ’,Viy ’)。 Vix ’=(V2x ’-V0x )*POSix /W-(V2y ’-V0y )*POSiy /W+V0x Viy ’=(V2y ’-V0y )*POSix /W+(V2x ’-V0x )*POSiy /W+V0y
接著,當MVi ’不大於閾值時,更新MVi 來作為MVi ’,使用MVi 而將子區塊i進行解碼。POSix 及POSiy 為子區塊i的水平位置及垂直位置。 在圖48的例子中, POS1x =W/2,POS1y =0 POS3x =0,POS3y =H POS4x =W/2,POS4y =H POS5x =W,POS5y =H
W及H為子區塊2的水平位置及垂直位置(例如左下角的X座標及Y座標)。
閾值也可對應於處理對象區塊的尺寸。例如,處理對象區塊的尺寸愈大,閾值就變得愈大。
又,閾值也可對應於參考圖片的數量。例如,參考圖片的數量愈多,閾值就變得愈小。
閾值也可被編碼於SPS標頭、PPS標頭或者切片標頭等的標頭區域。
閾值也可事先決定,且不編碼成串流。
閾值也可以下列方式來決定,即,為了將以預定的預測模式來對處理對象區塊進行移動補償處理(預測處理)時的最差事例(worst case)的記憶體存取量,限制在以該預測模式以外的預測模式且每8×8像素來對處理對象區塊進行雙向移動補償處理(預測處理)時的記憶體存取量以下。預定的預測模式,例如為仿射模式。以下,就限制的例子進行說明。
「Mem_base」意指:以預定的預測模式以外的預測模式且每8×8尺寸來對處理對象區塊進行雙向預測移動補償處理(亮度值)時,且將1個8×8尺寸的區塊作為1單位的最差事例的記憶體存取量。
以預定的預定模式來對處理對象區塊(尺寸:M×N)進行移動補償處理(亮度值)時的最差事例的記憶體存取量是以「Mem_CU」來表示,對此的閾值「Mem_th」是使用「Mem_base」表示在下文中。 Mem_th=M×N/(8×8)*Mem_base
Mem_CU是限制成不比Mem_th還大。以下,就閾值的算出處理例進行說明。
假設亮度訊號的每1像素的尺寸為1位元組,移動補償處理的濾波器的抽頭數為8抽頭時,成為:Mem_base=(8+7)*(8+7)*2=450(位元組單位)。
假設處理對象區塊的預測模式為仿射模式,處理對象區塊的尺寸為64×64像素時,成為:Mem_th=64/8*64/8*450=28800(位元組單位)。
「H」及「V」分別假設顯示為閾值的第1成分的閾值(第1閾值)及第2成分的閾值(第2閾值)。
以仿射模式以外的正常間模式進行預測處理時的最差條件為:處理對象區塊被分成8×8像素的區塊,8×8像素的區塊全部都是以雙向預測進行移動補償處理的情況。在不超過這個最差條件的記憶體存取量的狀態下,來決定成為以仿射模式進行預測模式時可參考的記憶體的範圍。假設以下列式[1]算出成為以仿射模式可參考的記憶體的範圍。使仿射模式的記憶體存取的範圍成為Mem_th(例如28800)以下,來算出H及V。另,在此,舉該仿射模式進行雙向預測的情況為例來說明。 Mem_CU=(64+7+2*H)(64+7+2*V)*2≦28800 [1] 假設H=V來解式[1],則得到H=V=24。
另,閾值的上述的算出處理也適用在不同的尺寸及不同的參考圖片數量的處理對象區塊。圖49是顯示已算出的閾值之例的圖。另,在圖49中顯示了H=V的例子,但也可為H>V,也可為H<V。
如圖49所示,閾值在將處理對象區塊進行單向預測的情況(參考幀的數量=1)、及進行雙向預測的情況(參考幀的數量=2)有所不同。在上述之式[1]之例中,以仿射模式來進行預測的處理對象區塊的尺寸為64×64,當進行了雙向預測時,也就是說,參考2張參考圖片時,第1閾值H及第2閾值V都成為24。例如,當對於以仿射模式進行預測的64×64尺寸的處理對象區塊進行了單向預測時,也就是說只參考了1張參考圖片時,第1閾值H及第2閾值V都成為49。圖49中,使用上列的式[1],算出可以仿射模式進行預測的全部區塊尺寸的閾值並表格化。 [第1態樣的技術性優點]
在本揭示的第1態樣中,在間預測處理導入第1移動向量的導出處理。如上述,為了使處理對象區塊內的複數個第1移動向量的偏差落在預定的範圍內,而選擇適當的第1移動向量的處理可以削減間預測處理的記憶體帶寬。 [補充]
本實施形態中之編碼裝置100及解碼裝置200,分別可作為圖像編碼裝置及圖像解碼裝置來利用,也可作為動態圖像編碼裝置及動態圖像解碼裝置來利用。
或者,編碼裝置100及解碼裝置200分別也可作為熵預測裝置及熵解碼裝置來利用。即,編碼裝置100及解碼裝置200分別也可只對應於熵編碼部110及熵解碼部202。然後,其他構成要素也可包含在其他裝置。
又,本實施形態的至少一部分也可作為編碼方法來利用,也可作為解碼方法來利用,也可作為熵解碼方法來利用,也可作為其他方法來利用。
又,在本實施形態中,各構成要素可以專用的硬體來構成,或透過執行適於各構成要素的軟體程式來實現。各構成要素也可讓CPU或者處理器等之程式執行部讀出記錄在硬碟或者半導體記憶體等之記錄媒體的軟體程式來執行,藉此來實現。
具體來說,編碼裝置100及解碼裝置200各自也可具有處理電路(Processing Circuitry)、及記憶裝置(Storage),該記憶裝置是電連接於該處理電路,可由該處理電路進行存取。例如,處理電路是對應於處理器a1或b1,記憶裝置是對應記憶體a2或b2。
處理電路包含有專用的硬體及程式執行部至少一者,使用記憶裝置來執行處理。又,記憶裝置在處理電路含有程式執行部時,記憶藉該程式執行部所執行之軟體程式。
在此,實現本實施形態之編碼裝置100或者解碼裝置200等之軟體為如下的程式。
例如,本程式也可讓電腦執行將動態圖像進行編碼的編碼方法,包含:導出用於處理對象區塊的預測的基準移動向量;導出與前述基準移動向量不同的第1移動向量;根據前述基準移動向量與前述第1移動向量的差分,導出差分移動向量;以及判定前述差分移動向量是否大於閾值,當判定為前述差分移動向量大於前述閾值時,變更前述第1移動向量,當判定為前述差分移動向量不大於前述閾值時,不變更前述第1移動向量,使用變更後的前述第1移動向量或者未變更的前述第1移動向量,將前述處理對象區塊進行編碼。
又,例如,本程式也可讓電腦執行將動態圖像解碼的解碼方法,包含:導出用於處理對象區塊的預測的基準移動向量;導出與前述基準移動向量不同的第1移動向量;根據前述基準移動向量與前述第1移動向量的差分,導出差分移動向量;以及判定前述差分移動向量是否大於閾值,當判定為前述差分移動向量大於前述閾值時,變更前述第1移動向量,當判定為前述差分移動向量不大於前述閾值時,不變更前述第1移動向量,使用變更後的前述第1移動向量或者未變更的前述第1移動向量,將前述處理對象區塊進行解碼。
又,如上述,各構成要素也可為電路。該等電路也可以整體構成為1個電路,也可分別為個別的電路。又,各構成要素也可以通用式的處理器來實現,也可以專用的處理器來實現。
又,也可讓別的構成要素來執行特定的構成要素所要執行的處理。又,也可變更執行處理的順序,也可並行地執行複數個處理。又,編碼解碼裝置也可具備編碼裝置100及解碼裝置200。
在說明中所使用過的第1及第2等序數,也可適當地更替。又,對構成要素等,也可重新附上序數,也可移除之。
以上,針對編碼裝置100及解碼裝置200之態樣,已根據實施形態來說明,但編碼裝置100及解碼裝置200的態樣並不限於該實施形態。只要在不脫離本揭示的旨趣,熟悉此項技藝之人士可思及之各種變形實施在本實施形態者、或者將不同實施形態的構成要素組合而所構建的形態,也可包括在編碼裝置100及解碼裝置200之態樣的範圍內。
也可以將本態樣與本揭示中的其他態樣之至少一部分組合來實施。又,也可以將本態樣的流程圖所記載的一部分處理、裝置的一部分構成、語法(syntax)的一部分等與其他態樣組合來實施。 (實施形態2) [實施及應用]
在以上之各實施形態中,功能性或者是作用性的區塊每一個通常可藉MPU(micro proccessing unit)及記憶體等來實現。又,功能區塊每一個所進行的處理也可以作為讀出記錄在ROM等之記錄媒體所記錄的軟體(程式)而執行的處理器等之程式執行部來實現。該軟體也可以來分發。該軟體也可記錄在半導體記憶體等各式各樣的記錄媒體。另,當然也可以透過硬體(專用電路)來實現各功能區塊。
又,在各實施形態中所說明的處理也可以使用單一裝置(系統)進行集中處理來實現,或者也可以使用複數個裝置進行分散處理來實現。又,執行上述程式的處理器也可為單數個,也可為複數個。即,可進行集中處理,或者也可進行分散處理。
本揭示的態樣並不限於以上的實施例,可做各種變更,其等也包括在本揭示的態樣之範圍內。
進而在此,說明在上述各實施形態中所示之動態圖像編碼方法(圖像編碼方法)或者動態圖像解碼方法(圖像解碼方法)之應用例及實施該應用例之各種系統。如此系統也可是以具有使用圖像編碼方法之圖像編碼裝置、使用圖像解碼方法之圖像解碼裝置、或具有兩者之圖像編碼解碼裝置為特徵所在。針對如此系統的其他構成,可配合情況的需要,可適當地變更。 [使用例]
圖50是顯示實現內容分發服務之內容供給系統ex100之整體構成的圖。將通訊服務之提供區域分割成所期望之大小,在各胞元(cell)內分別設置有圖示之例子中的固定無線台即基地台ex106、ex107、ex108、ex109、ex110。
在該內容供給系統ex100中,經由網際網路服務提供者ex102或通訊網ex104、及基地台ex106至ex110,而將電腦ex111、遊戲機ex112、攝像機ex113、家電ex114、及智慧型手機ex115等各機器連接於網際網路ex101。該內容供給系統ex100也可構成為組合上述任意要素而連接。在各種實施之中,也可使各機器經由電話網路或者近距離無線等直接或間接地互相連接,而不經過為固定無線台之基地台ex106至ex110來連接。進而,串流伺服器ex103也可以經由網際網路ex101等而與電腦ex111、遊戲機ex112、攝像機ex113、家電ex114、及智慧型手機ex115等之各機器連接。又,串流伺服器ex103也可經由衛星ex116而與飛機ex117內之熱點內的終端機等連接。
另,也可利用無線存取點或熱點等,來替代基地台ex106至ex110。又,串流伺服器ex103也可以不經由網際網路ex101或者網際網路服務提供者ex102,而直接與通訊網ex104連接,也可不經由衛星ex116,而直接與飛機ex117連接。
攝像機ex113是數位相機等可進行靜態圖像攝影及動態圖像攝影之機器。又,智慧型手機ex115一般是指對應於2G、3G、3.9G、4G、以及今後被稱為5G之行動通訊系統的方式之智慧型話機、行動電話機、或者PHS (Personal Handyphone System)等。
家電ex114是包括在冰箱、或者家用燃料電池熱電共生系統之機器等。
在內容供給系統ex100中,讓具有攝影功能的終端機經由基地台ex106等而連接到串流伺服器ex103,以此可進行現場直播等。在現場直播中,終端機(電腦ex111、遊戲機ex112、攝像機ex113、家電ex114、智慧型手機ex115、及飛機ex117内之終端機等)也可以對使用者使用該終端機攝影的靜態圖像或者動態圖像內容進行在上述各實施形態所說明的編碼處理,也可對藉編碼所得到的影像資料、及已將對應於影像的聲音編碼後的聲音資料進行多工,也可將所得到的資料發送到串流伺服器ex103。即,各終端機是作為本揭示一態樣的圖像編碼裝置而發揮功能。
另一方面,串流伺服器ex103是對於有了請求的客戶端將被發送的內容資料進行串流分發。客戶端是指可將上述經過編碼處理的資料進行解碼之電腦ex111、遊戲機ex112、攝像機ex113、家電ex114、智慧型手機ex115、或者飛機ex117內的終端機等。已接收到分發的資料的各機器將接收到的資料進行解碼處理後進行播放。即,各機器也可作為本揭示一態樣之圖像解碼裝置而發揮功能。 [分散處理]
又,串流伺服器ex103也可為複數個伺服器或者是複數個電腦,並將資料分散處理或記錄分發者。例如,串流伺服器ex103也可藉由CDN(Contents Delivery Network)來實現,透過連接分散在世界各地的多數邊緣伺服器(edge server)與邊緣伺服器間的網路來實現內容分發。在CDN中,因應客戶端而動態地分配實體上接近的邊緣伺服器。然後,內容被該邊緣伺服器快取及分發,以此可減少延遲的情況。又,在發生有數種類型的錯誤時或者因流量增加等而使通訊狀態改變時,可以複數個邊緣伺服器分散處理,或者將分發主體切換到其他邊緣伺服器,而對已發生障礙的網路部分進行迂迴,來繼續進行分發,因此可實現高速且穩定的分發。
又,不只是分發自身的分散處理,也可將所攝影的資料的編碼處理在各終端機進行,也可在伺服器側進行,也可互相分擔來進行。舉一例來說,一般在編碼處理中,進行處理迴路2次。第1次的迴路,會檢測以幀或者場景單位的圖像之複雜度、或者編碼量。又,在第2次的迴路,會進行維持畫質,並使編碼效率提高的處理。例如,終端機進行第1次的編碼處理,已收到內容的伺服器側進行第2次的編碼處理,以此可一邊減少在各終端機的處理負擔,又能一邊提高內容的品質及效率。此時,若有幾乎以實時接收來解碼的請求時,也可將終端機已進行過第1次的編碼完畢資料在其他終端機接收且進行播放,因此能達到更靈活的實時分發。
舉另一例來說,攝像機ex113等是從圖像進行特徵量擷取,將有關於特徵量的資料作為元(meta)資料進行壓縮,而發送到伺服器。伺服器是例如從特徵量來判斷物件的重要性,而切換量化精度等因應圖像的意義(或內容的重要性)來進行壓縮。特徵量資料對於伺服器上之再次壓縮時的移動向量預測之精度及效率提昇特別有效。又,也可在終端機進行VLC(可變長度編碼)等之簡易性編碼,在伺服器進行CABAC(上下文適應型二值算術編碼方式)等處理負荷大的編碼。
進而,以其他例來說,在體育場、購物商場、或者工廠等之中,會有經由複數個終端機而拍攝到幾乎相同的場景的複數個影像資料存在的情況。在該情況下,使用進行過拍攝的複數個終端機、及因應需要而未進行拍攝的其他終端機及伺服器,以例如GOP(Group of Picture)單位、圖片單位、或者將圖片分割之方塊單位等,分別分配編碼處理,來進行分散處理。藉此,可減少延遲,並實現更佳的實時性。
又,由於複數個影像資料為幾乎相同的場景,因此也可在伺服器進行管理及/或指示,以使在各終端機拍攝的影像資料可相互參考。又,也可使伺服器接收來自各終端機的編碼完畢資料,在複數個資料之間變更參考關係,或者將圖片本身進行補正或更換,來重新進行編碼。藉此,可產生將一個個資料的品質及效率提高的串流。
進而,伺服器也可進行將影像資料的編碼方式變更的轉碼後,再分發影像資料。例如,伺服器也可將MPEG系的編碼方式轉換成VP系(例如VP9),也可將H.264轉換成H.265。
如此,編碼處理可透過終端機或者是1個以上的伺服器來進行。藉此,以下,作為進行處理的主體是採用「伺服器」或者是「終端機」等的記述,但也可讓以伺服器所進行的處理的一部分或者全部在終端機來進行,也可讓以終端機所進行的處理的一部分或者全部在伺服器來進行。又,有關於該等部分,針對解碼處理也是同樣。 [3D、多視角]
近年來,將幾乎互相同步的複數個攝像機ex113及/或智慧型手機ex115等之終端機所攝影的不同場景、或者是相同場景以不同的視角拍攝的圖像或影像整合來利用的情形也變多了。以各終端機所拍攝的影像是根據另外取得的終端機間之相對的位置關係、或者影像所含的特徵點一致的區域等來整合。
伺服器不只將2維的動態圖像進行編碼,還可根據動態圖像的場景解析等,而自動或者是在使用者所指定的時刻,將靜態圖像進行編碼,再發送到接收終端機。伺服器進而在可取得攝影終端機之間的相對的位置關係時,不只是2維的動態圖像,還可根據從不同視角對相同場景拍攝的影像,來產生該場景的3維形狀。另,伺服器也可另外將透過點雲(point cloud)等所產生的3維的資料進行編碼,也可根據使用3維資料來辨識或者追蹤人物或物件的結果,從以複數個終端機拍攝的影像中選擇、或再構成,以產生要發送到接收終端機的影像。
如此進行後,使用者也可以任意選擇對應於各攝影終端機的各影像來觀賞場景,也可以觀賞從使用複數個圖像或者影像而再構成的3維資料剪出任意視點的影像的內容。進而,也可與影像一起,從複數個不同視角收取聲音,令伺服器將來自特定的視角或空間的聲音和對應的影像進行多工,且發送已多工的影像及聲音。
又,近年來,Virtual Reality(VR/虛擬實境)及Augmented Reality(AR/擴增實境)等對現實世界與虛擬世界建立對應關係的內容也漸漸普及了。在VR的圖像的情況,也可使伺服器分別作出右眼用及左眼用的視點圖像,透過Multi-View Coding(MVC/多視角編碼)等,進行在各視點影像之間容許參考的編碼,也可不互相參考而作為不同串流來進行編碼。在解碼不同串流時,也可透過因應使用者的視點而將虛擬的3維空間重現的方式,使其互相同步且播放。
在AR的圖像的情況,伺服器會根據3維上的位置或者使用者的視點的移動,而將虛擬空間上的虛擬物體資訊重疊在現實空間的攝像機資訊。解碼裝置也可取得或者保持虛擬物體資訊及3維資料,並因應使用者的視點的移動來產生2維圖像,而順利地接續,以此作成重疊資料。或者,解碼裝置也可除了虛擬物體資訊的請求外,也將使用者的視點的移動發送到伺服器。伺服器配合接收的視點的移動而從保持在伺服器的3維資料來作成重疊資料,且將重疊資料進行編碼,再分發到解碼裝置。另,也可以是:重疊資料除了RGB以外還具有顯示穿透度的α值,伺服器將從3維資料所作成的物件以外的部分之α值設定為0等,且使該部分為穿透的狀態下進行編碼。或者,伺服器也可如同色鍵(Chroma key)設定預定之值的RGB值為背景,並產生物件以外的部份設定為背景色的資料。
同樣,被進行分發的資料的解碼處理也可在客戶端的各終端機進行,或是也可在伺服器側進行,或者也可相互分擔進行。以一例來說,某終端機也可先將接收請求送到伺服器,以其他終端機接收因應該請求的內容,進行解碼處理,並將已解碼完畢的訊號發送到具有顯示器的裝置。能在不依賴可通訊的終端機本身的性能之狀態下,將處理分散而選擇適合的內容,以此可播放畫質佳的資料。又,以另一例來說,也可在TV等接收大尺寸的圖像資料,並且於觀眾的個人終端將圖片分割後的方塊等一部分的區域解碼而顯示。藉此,可共享整體圖像,並可在身邊確認本身的負責領域或者想更加詳細確認的區域。
又,在室內外的近距離、中距離、或者長距離之數種無線通訊的狀況下,可利用MPEG-DASH等之分發系統規格,無縫地接收內容。使用者也可一邊自由地選擇自身的終端機、設在室內或室外之顯示器等之解碼裝置或者顯示裝置,一邊實時地進行切換。又,根據本身的位置資訊等,可一邊切換解碼的終端機及顯示的終端機,一邊進行解碼。藉此,使得在使用者往目的地移動的期間,於埋設有可進行顯示的設備之旁邊的建築物的壁面或者是地面的一部分對應(map)及顯示地圖資訊,一邊移動。又,也可以基於網路上之對編碼資料的存取容易性,諸如有編碼資料會被可在短時間內從接收終端機進行存取的伺服器快取、或者是被複製到內容分發服務(Contents Delivery Service)中的邊緣伺服器等,來切換接收資料的位元率。 [可調式編碼]
有關於內容的切換,是利用顯示於圖51之可調式之串流來說明,前述可調式之串流是應用在上述各實施形態所示的動態圖像編碼方法而被壓縮編碼的串流。伺服器雖然具有複述個以個別的串流而言內容相同但品質不同的之串流也無妨,但也可為如下構成,即:靈活運用時間型/空間型可調式的串流之特徵,來切換內容,其中前述時間型/空間型可調式的串流是如圖所示藉由分層來進行編碼而實現。即,解碼側因應例如性能的內在因素及通訊頻帶的狀態等之外在因素,來決定要解碼到哪一層,以此解碼側可自由地切換低影像解析度的內容及高影像解析度的內容來進行解碼。例如想要把使用者曾在移動中於智慧型手機ex115收看的影像的後續部分例如放到回家後以網路TV等的機器收看時,該機器只要將相同的串流進行解碼到不同層即可,因此可減輕伺服器側的負擔。
進而,如上述,依每層將圖片進行編碼,且以基本層(base layer)的上階的加強層(enhancement layer)來實現可調性(scalability)之構成以外,也可為加強層含有基於圖像的統計資訊等之元資訊。解碼側也可根據元資訊,將基本層的圖片進行超解析,以此產生已高畫質化的內容。所謂超解析也可是維持及/或擴大解析度,並且提高SN比。元資訊是包括用以特定超解析處理所使用的線性或者是非線性的濾波係數的資訊、或者、用以特定超解析處理所使用的濾波處理、機械學習或者是最小平方運算中的參數值的資訊等。
或者,也可因應圖像內的物件(object)等的意涵,將圖片分割成方塊等之構成。解碼側選擇要解碼的方塊,以此只將一部分的區域進行解碼。進而,把物件的屬性(人物、車、球等)與影像內的位置(同一圖像中的座標位置等),作為元資訊來儲存,以此解碼側可根據元資訊來特定出所希望的物件的位置,並決定包含該物件的方塊。例如,如圖52所示,元資訊是使用HEVC中的SEI(supplemental enhancement information)訊息等與像素資料不同之資料儲存構造來儲存。該元資訊是例如顯示主物件的位置、尺寸、或者色彩等。
也可以串流、序列或者隨機存取單位等由複數個圖片所構成的單位來儲存元資訊。解碼側可取得特定人物出現在影像內的時刻等,配合圖片單位的資訊與時間資訊,以此便可特定出物件存在的圖片,並決定圖片內之物件的位置。 [網頁的最適化]
圖53是顯示電腦ex111等之中網頁(web page)的顯示畫面例之圖。圖54是顯示智慧型手機ex115等之網頁的顯示畫面例之圖。如圖53及圖54所示,網頁有包括複往圖像內容的鏈接之複數個鏈接圖像的情況,該等鏈接圖像的看到方式會依據閱覽的設備而有所不同。在於畫面上看得到複數個鏈接圖像時,迄至使用者明白表示選擇鏈接圖像為止,或者是迄至鏈接圖像靠近畫面的中央附近或者鏈接圖像整體進入畫面內為止,顯示裝置(解碼裝置)也可顯示各內容所具有的靜態圖像或I圖片來作為鏈接圖像,也可以複數個靜態圖像或I圖片等來顯示像gif動畫般的影像,也可只有接收基本層而將影像進行解碼及顯示。
在由使用者選擇了鏈接圖像時,顯示裝置會將基本層視為最優先,來進行解碼。另,若在構成網頁的HTML中,有顯示可調式的內容的資訊時,顯示裝置也可進行解碼迄至加強層為止。又,為了保證實時性,在被選擇之前或者通訊頻帶極窄時,顯示裝置可只對參考前方的圖片(I圖片、P圖片、僅參考前方的B圖片)進行解碼及顯示,以此可減少前頭圖片的解碼時刻與顯示時刻間的延遲(從內容的解碼開始迄至顯示開始之延遲)。又,顯示裝置也可硬是忽視圖片的參考關係,而使全部的B圖片及P圖片為參考前方,先粗略地進行解碼,隨著時間經過,接收的圖片的增加,再進行正常的解碼。 [自動行駛]
又,為了汽車的自動行駛或者支援行駛,而發送及接收如2維或者3維的地圖資訊等之靜態圖像或者是影像資料時,接收終端機除了屬於1層以上的層級之圖像資料以外,也可接收天氣或者施工的資訊等來作為元資訊,並對該等資訊建立對應關係而進行解碼。另,元資訊也可屬於層,也可只單純地與圖像資料進行多工。
此時,由於含有接收終端機的車、空拍機或者飛機等會移動,因此接收終端機會發送該接收終端機的位置資訊,以此可一邊切換基地台ex106至ex110,一邊實現無縫的接收及解碼的執行。又,接收終端機可因應使用者的選擇、使用者的狀況及/或通訊頻帶的狀態,而動態地切換將元資訊接收到哪一程度,或者將地圖資訊更新到何種程度。
在內容供給系統ex100中,可讓客戶端實時接收使用者所發送的已編碼的資訊並解碼,且進行播放。 [個人內容的分發]
又,在內容供給系統ex100中,不只以透過影像分發業者所進行的高畫質且長時間的內容,還能以透過個人所進行的低畫質進行短時間的內容的單點傳播(unicast)、或者多點傳播(multicast)進行分發。像這樣的個人的內容,認為今後也會增加。為了將個人內容做成更優異的內容,伺服器也可進行編輯處理,之後再進行編碼處理。這是例如可以如下的構成來實現。
在攝影時實時或者先儲存並於攝影後,伺服器從原圖或者編碼完畢資料,進行攝影錯誤、場景搜尋、意義的解析、及物件檢測等之辨識處理。接著,伺服器根據辨識結果,而以手動或者自動進行補正失焦或手震等、或者是刪除亮度比其他圖片低或未對焦的場景等重要性低的場景、或者是強調物件的邊緣、或者是變化色調等之編輯。伺服器根據編輯結果,而將編輯後的資料進行編碼。又,已知道攝影時間太長時,收視率會下降,伺服器也可根據圖像處理結果,不只是對如上述般重要性低的場景,亦對動作少的場景等自動地進行剪輯,以使因應攝影時間而成為特定的時間範圍內的內容。或者,伺服器也可根據場景的意義解析的結果,來產生摘要(digest)並進行編碼。
另,在個人內容中,若保持原狀,也有成為著作權、著作人格權、或者肖像權等侵害的東西被拍進去的事例,也有共享的範圍超過所意圖的範圍等,對個人來說是不宜的情況。因此,例如,伺服器也可刻意地將畫面的周邊部的人臉或者是家中等,變更成不對焦的圖像來進行編碼。又,伺服器也可辨識在編碼對象圖像內是否有拍到與事先登錄的人物不同之人物的臉,若有拍到時,對臉的部分進行加上馬賽克等之處理。或者,在編碼的前處理或者後處理上,從著作權等的觀點來看,使用者對圖像指定想要加工的人物或者背景區域也可。伺服器將所指定的區域替換成別的影像,或者進行模糊焦點等的處理也可。若是人物時,在動態圖像中,可一邊追蹤人物,一邊將臉的部分影像替換。
由於資料量小的個人內容的收看在實時性的要求高,因此雖然依頻帶寬度有所差異,但解碼裝置首先是以基本層最優先地接收,並進行解碼及播放。解碼裝置也可在這期間接收加強層,在有循環播放的情況等有播放2次以上的時候,連同加強層在內將高畫質的影像播放。若是已如此地進行可調式編碼的串流,就能提供如下體驗,即,雖然在未選擇時或者剛開始看的階段,是粗糙的動畫,但會漸漸地串流變精緻了、圖像變好。除了可調式編碼以外,以在第1次播放的粗糙的串流及參考第1次動畫來編碼的第2次的串流構成為1個串流,也可提供同樣的體驗。 [其他的實施應用例]
又,該等編碼或者解碼處理,一般來說是在各終端機所具有的LSIex500來處理。LSI(large scale integration circuitry)ex500(參考圖50)可以是單晶片,也可以是由複數個晶片所構成。另,也可將動態圖像編碼或者解碼用的軟體載入能以電腦ex111等讀取的某些記錄媒體(CD-ROM、軟碟、或者硬碟等),並使用該軟體來進行編碼或者解碼處理。進而,智慧型手機ex115附有攝像機時,也可發送以該攝像機取得的動畫資料。此時的動畫資料是已經透過智慧型手機ex115所具有的LSIex500進行編碼處理的資料。
另,LSIex500也可為下載應用軟體程式來啟動之構成。此時,首先,終端機要判定該終端機是否支援內容的編碼方式,或者是否具有特定服務的執行能力。在終端機未支援內容的編碼方式時,或者不具有特定服務的執行能力時,終端機要下載編解碼器或者應用軟體程式,之後進行內容的取得及播放。
又,不限於經由網際網路ex101的內容供給系統ex100,在數位式廣播用系統也可裝入上述各實施形態之至少動態圖像編碼裝置(圖像編碼裝置)或者動態圖像解碼裝置(圖像解碼裝置)之任一者。由於是利用衛星等而在廣播用的電波乘載已將影像與聲音進行多工處理的多工資料,來進行傳送接收,所以相對於內容供給系統ex100的易於進行單點傳播的構成,數位式廣播用系統雖有利於多點播送的差異,但有關於編碼處理及解碼處理,仍可實施同樣的應用。 [硬體構成]
圖55是顯示圖50所示之智慧型手機ex115的圖。又,圖56是顯示智慧型手機ex115的構成例之圖。智慧型手機ex115包含有:天線ex450,用以於與基地台ex110之間收發電波;攝像機部ex465,可拍攝影像及靜態圖像;以及顯示部ex458,顯示已將以攝像機部ex465所拍攝的影像、及以天線ex450所接收的影像等進行解碼之資料。智慧型手機ex115更包含有:操作部ex466,為觸控面板等;聲音輸出部ex457,為用以輸出聲音或者音響的揚聲器等;聲音輸入部ex456,為用以輸入聲音之麥克風等;記憶部ex467,可保存所拍攝的影像或者靜態圖像、已錄音的聲音、已接收的影像或者靜態圖像、郵件等的已編碼的資料、或者已解碼的資料;及插槽部ex464,為與SIMex468之間的介面部,前述SIMex468為用以特定使用者,並以網路為首,實行對各種資料進行存取的認證。另,也可使用外接式記憶體代替記憶部ex467。
又,將顯示部ex458及操作部ex466等統合性地控制的主控制部ex460,與電源電路部ex461、操作輸入控制部ex462、影像訊號處理部ex455、攝像機介面部ex463、顯示器控制部ex459、調變/解調部ex452、多工/分離部ex453、聲音訊號處理部ex454、插槽部ex464、以及記憶部ex467是經由匯流排ex470來連接。
電源電路部ex461是藉由使用者的操作使電源開關成為開啟狀態時,使智慧型手機ex115啟動成可動作的狀態,從電池組對各部供應電力。
智慧型手機ex115是基於具有CPU、ROM及RAM等之主控制部ex460的控制,進行通話及資料通訊等的處理。在通話時是將以聲音輸入部ex456所收音的聲音訊號在聲音訊號處理部ex454轉換成數位聲音訊號,將該訊號在調變/解調部ex452實施頻譜擴散處理,在發送/接收部ex451實施數位類比轉換處理以及頻率轉換處理,並將其結果的訊號經由天線ex450進行發送。又,將接收資料放大,並實施頻率轉換處理以及類比數位轉換處理,在調變/解調部ex452進行頻譜反擴散處理,在聲音訊號處理部ex454轉換成類比聲音訊號,並將該訊號從聲音輸出部ex457輸出。在資料通訊模式時,透過本體部的操作部ex466等的操作,將正文(text)、靜態圖像、或者影像資料經由操作輸入控制部ex462而送出至主控制部ex460,並同樣地被進行收發處理。在資料通訊模式時,於發送影像、靜態圖像、或者影像及聲音的情況,影像訊號處理部ex455是將記憶部ex467所保存的影像訊號、或者從攝像機部ex465所輸入的影像訊號透過上述各實施形態所示的動態圖像編碼方法進行壓縮編碼,且將業經編碼的影像資料送出至多工/分離部ex453。又,聲音訊號處理部ex454是將在以攝像機部ex465將影像或者靜態圖像等攝影中於聲音輸入部ex456所收音的聲音訊號進行編碼,且將業經編碼的聲音資料送出至多工/分離部ex453。多工/分離部ex453是將業經編碼完畢的影像資料及業經編碼完畢的聲音資料以預定的方式進行多工,且於調變/解調部(調變/解調電路部)ex452、及發送/接收部ex451實施調變處理及轉換處理,並經由天線ex450來發送。
在接收到電子郵件或者對話(chat)所附的影像、或者連結到網頁等的影像時,為了將經由天線ex450接收到的多工資料進行解碼,多工/分離部ex453將多工資料進行分離,藉此把多工資料分成影像資料的位元串流及聲音資料的位元串流,經由同步匯流排ex470,而將業經編碼的影像資料供給至影像訊號處理部ex455,並將業經編碼的聲音資料供給至聲音訊號處理部ex454。影像訊號處理部ex455透過對應於上述各實施形態所示的動態圖像編碼方法之動態圖像解碼方法,而將影像訊號進行解碼,且透過顯示器控制部ex459,而從顯示部ex458,顯示被連結的動態圖像檔所含之影像或者靜態圖像。又,聲音訊號處理部ex454是將聲音訊號進行解碼,且從聲音輸出部ex457輸出聲音。另,由於實時串流傳輸(real-time streaming)已開始普及,因此依使用者的狀況,聲音的播放也可能會有對社會上不合適的場面發生。為此,作為第1值,較希望不播放聲音訊號,而只將影像資料播放的構成。也可以是只有在使用者進行了點選影像資料等操作,將聲音同步地播放。
又,在此,是以智慧型手機ex115為例進行了說明,但以終端機而言也可考慮如下3種安裝形式,除了具有編碼器及解碼器兩者的訊號收發型終端機之外,還有只具有編碼器的發訊終端機、及只具有解碼器的收訊終端機。進而,在數位廣播用系統中,是以接收或者發送在影像資料上已有聲音資料等進行多工處理之多工資料的情形來說明,但多工資料上除了聲音資料以外,也可有與影像有關聯的文字資料等進行多工處理,也可接收或者發送影像資料本身,而不是多工資料。
另,雖然已經說明了含有CPU的主控制部ex460控制編碼處理或者解碼處理的情形,但是各種終端機大多有具備GPU的情況。因此,如後述構成也可,即,透過在CPU與GPU共通化的記憶體、或者將位址加以管理以形成可以共通使用之狀態的記憶體,來靈活運用GPU的性能,並將廣大區域匯整來一起處理者。藉此,可縮短編碼時間,確保實時性,可實現低延遲。尤其,不是利用CPU,而是透過GPU,以圖片等的單位匯整來一起進行移動估測、解區塊濾波器、SAO(Sample Adaptive Offset)、及轉換、量化的處理時,是有效率的。 產業利用性
本揭示是可利用在諸如電視機、數位影像錄影機、車用導航、行動電話機、數位照相機、數位影像攝影機、視訊會議系統、或者電子鏡等。
10:區塊 100:編碼裝置 102:分割部 104:減法部 106:轉換部 108:量化部 110:熵編碼部 112、204:反量化部 114、206:反轉換部 116、208:加法部 118、210:區塊記憶體 120、212:迴路濾波部 122、214:幀記憶體 124、216:內預測部 126、218:間預測部 128、220:預測控制部 200:解碼裝置 202:熵解碼部 1000:處理 1201:邊界判定部 1202、1204、1206:開關 1203:濾波判定部 1205:濾波處理部 1207:濾波器特性決定部 1208:處理判定部 a1、b1:處理器 a2、b2:記憶體 ex100:內容供給系統 ex101:網際網路 ex102:網際網路服務提供者 ex103:串流伺服器 ex104:通訊網 ex106至ex110:基地台 ex111:電腦 ex112:遊戲機 ex113:攝像機 ex114:家電 ex115:智慧型手機 ex116:衛星 ex117:飛機 ex450:天線 ex451:發送/接收部 ex452:調變/解調部 ex453:多工/分離部 ex454:聲音訊號處理部 ex455:影像訊號處理部 ex456:聲音輸入部 ex457:聲音輸出部 ex458:顯示部 ex459:顯示器控制部 ex460:主控制部 ex461:電源電路部 ex462:操作輸入控制部 ex463:攝像機介面部 ex464:插槽部 ex465:攝像機部 ex466:操作部 ex467:記憶部 ex468:SIM ex470:匯流排 ex500:LSI Sa_1至Sa_10、Sb_1、Sc_1a至Sc_1c、Sc_2、Sd_1a至Sd_1b、Sd_2至Sd_3、Se_1至Se_4、Sf_1至Sf_5、Sg_1至Sg_5、Sh_1至Sh_3、Si_1至Si_5、Sk_1至Sk_3、Sj_1至Sj_6、Sl_1至Sl_4、Sm_1至Sm_2、Sn_1至Sn_5、So_1至So_4、Sp_1至Sp_7、Sq_1、Sr_1、Sr_2a至Sr_2c、Ss_1至Ss_5、S1001至S1007:步驟
圖1是顯示實施形態之編碼裝置之功能構成的方塊圖。
圖2是顯示依編碼裝置所進行的整體性的編碼處理一例的流程圖。
圖3是顯示區塊分割一例之圖。
圖4A是顯示切片之構成一例的圖。
圖4B是顯示方塊之構成一例的圖。
圖5A是顯示對應於各轉換型式之轉換基底函數的表格。
圖5B是顯示SVT(Spatially Varying Transform)的圖。
圖6A是顯示ALF(adaptive loop filter)所使用之濾波器的形狀一例之圖。
圖6B是顯示ALF所使用之濾波器的形狀另一例之圖。
圖6C是顯示ALF所使用之濾波器的形狀另一例之圖。
圖7是顯示作為DBF而發揮功能的迴路濾波部之詳細構成一例的方塊圖。
圖8是顯示具有對區塊邊界呈對稱的濾波器特性之解區塊濾波器之例的圖。
圖9是用於說明進行解區塊濾波處理的區塊邊界的圖。
圖10是顯示Bs值一例的圖。
圖11是顯示編碼裝置的預測處理部所進行的處理一例的圖。
圖12是顯示編碼裝置的預測處理部所進行的處理另一例的圖。
圖13是顯示編碼裝置的預測處理部所進行的處理另一例的圖。
圖14是顯示內預測中之67個內預測模式一例之圖。
圖15是顯示間預測之基本處理之流程之流程圖。
圖16是顯示導出移動向量一例的流程圖。
圖17是顯示導出移動向量另一例的流程圖。
圖18是顯示導出移動向量另一例的流程圖。
圖19是顯示依正常間模式所進行的間預測之例的流程圖。
圖20是顯示依合併模式所進行的間預測之例的流程圖。
圖21是用於說明依合併模式所進行之移動向量導出處理一例的流程圖。
圖22是顯示FRUC(frame rate up conversion)一例的流程圖。
圖23是用於說明沿著移動軌跡的2個區塊之間的圖案匹配(雙向匹配)一例的圖。
圖24是用於說明當前圖片內的模板與參考圖片內的區塊之間的圖案匹配(模板匹配)一例的圖。
圖25A是用於說明基於複數個鄰接區塊的移動向量而導出子區塊單位的移動向量一例的圖。
圖25B是用於說明具有3個控制點的仿射模式中的導出子區塊單位之移動向量一例之圖。
圖26A是用於說明仿射合併模式的概念圖。
圖26B是用於說明具有2個控制點的仿射合併模式的概念圖。
圖26C是用於說明具有3個控制點的仿射合併模式的概念圖。
圖27是顯示仿射合併模式之處理一例的流程圖。
圖28A是用於說明具有2個控制點的仿射間模式的圖。
圖28B是用於說明具有3個控制點的仿射間模式的圖。
圖29是顯示仿射間模式之處理一例的流程圖。
圖30A是用於說明當前區塊具有3個控制點,且鄰接區塊具有2個控制點的仿射間模式的圖。
圖30B是用於說明當前區塊具有2個控制點,且鄰接區塊具有3個控制點的仿射間模式的圖。
圖31A是顯示合併模式及DMVR(dynamic motion vector refreshing)之關係的圖。
圖31B是用於說明DMVR處理一例的概念圖。
圖32是顯示產生預測圖像一例之流程圖。
圖33是顯示產生預測圖像另一例之流程圖。
圖34是顯示產生預測圖像又另一例之流程圖。
圖35是用於說明依OBMC(overlapped block motion compensation)處理所進行的預測圖像補正處理一例的流程圖。
圖36是用於說明依OBMC處理所進行的預測圖像補正處理一例的流程圖。
圖37是用於說明產生2個三角形之預測圖像的圖。
圖38是用於說明假設等速直線運動之模型的圖。
圖39是用於說明使用了依LIC(local illumination compensation)處理所進行的亮度補正處理之預測圖像產生方法一例的圖。
圖40是顯示編碼裝置的安裝例的方塊圖。
圖41是顯示實施形態之解碼裝置的功能構成的方塊圖。
圖42是顯示依解碼裝置所進行的整體性的解碼處理一例之流程圖。
圖43是顯示解碼裝置的預測處理部所進行的處理一例的圖。
圖44是顯示解碼裝置的預測處理部所進行的處理另一例的圖。
圖45是顯示解碼裝置中的正常間模式所進行的間預測之例的流程圖。
圖46是顯示解碼裝置的安裝例的方塊圖。
圖47是顯示第1態樣中的間預測處理一例的流程圖。
圖48是顯示處理對象區塊一例的圖。
圖49是顯示已算出的閾值之例的圖。
圖50是實現內容分發服務之內容供給系統的整體構成圖。
圖51是顯示可調式編碼時之編碼構造一例之圖。
圖52是顯示可調式編碼時之編碼構造一例之圖。
圖53是顯示網頁的顯示畫面例之圖。
圖54是顯示網頁的顯示畫面例之圖。
圖55是顯示智慧型手機一例之圖。
圖56是顯示智慧型手機之構成例的方塊圖。
1000:處理
S1001至S1007:步驟

Claims (28)

  1. 一種編碼裝置,為將動態圖像進行編碼的編碼裝置,包含有: 電路;及 連接於前述電路的記憶體, 前述電路在動作中: 導出用於處理對象區塊之預測的基準移動向量; 導出與前述基準移動向量不同的第1移動向量; 根據前述基準移動向量與前述第1移動向量的差分,導出差分移動向量;以及 判定前述差分移動向量是否大於閾值, 當判定為前述差分移動向量大於前述閾值時,變更前述第1移動向量, 當判定為前述差分移動向量不大於前述閾值時,不變更前述第1移動向量, 使用變更後的前述第1移動向量或者未變更的前述第1移動向量,將前述處理對象區塊進行編碼。
  2. 如請求項1之編碼裝置,其中前述基準移動向量對應於前述處理對象區塊內的第1像素組合, 前述第1移動向量對應於前述處理對象區塊內之與前述第1像素組合不同的第2像素組合。
  3. 如請求項1或2之編碼裝置,其中當判定為前述差分移動向量大於前述閾值時,前述電路使用已將前述差分移動向量剪裁的值來變更前述第1移動向量。
  4. 如請求項1或2之編碼裝置,其中前述處理對象區塊的預測模式為仿射模式。
  5. 如請求項1或2之編碼裝置,其藉由以前述預測模式來對前述處理對象區塊進行預測處理時的最差事例的記憶體存取量,成為以前述預測模式以外的預測模式來進行預測處理時的最差事例的記憶體存取量以下之方式,來決定前述閾值。
  6. 如請求項5之編碼裝置,其中藉由前述預測模式以外的預測模式來進行預測處理時的最差事例的記憶體存取量,為藉由前述預測模式以外的預測模式且每8×8像素來對前述處理對象區塊進行雙向預測處理時的記憶體存取量。
  7. 如請求項1或2之編碼裝置,其中前述閾值依前述處理對象區塊進行單向預測的情況、及進行雙向預測的情況而不同。
  8. 如請求項1或2之編碼裝置,其中前述電路判定前述差分移動向量是否大於前述閾值, 當前述差分移動向量的水平成分的絕對值大於前述閾值的第1值,或者前述差分移動向量的垂直成分的絕對值大於前述閾值的第2值時,判定為前述差分移動向量大於前述閾值, 當前述差分移動向量的前述水平成分的前述絕對值不大於前述閾值的前述第1值,且前述差分移動向量的前述垂直成分的前述絕對值不大於前述閾值的前述第2值時,判定為前述差分移動向量不大於前述閾值。
  9. 如請求項1或2之編碼裝置,其中當判定為前述差分移動向量大於前述閾值時,前述電路使用已將前述差分移動向量剪裁的值及前述基準移動向量,變更前述第1移動向量, 變更後的前述第1移動向量與前述基準移動向量的差分移動向量不大於前述閾值。
  10. 如請求項1或2之編碼裝置,其中前述基準移動向量為前述處理對象區塊的複數個前述第1移動向量的平均。
  11. 如請求項1或2之編碼裝置,其中前述基準移動向量為前述處理對象區塊內的複數個前述第1移動向量之中的1個。
  12. 如請求項1或2之編碼裝置,其中前述閾值對應於前述處理對象區塊的尺寸。
  13. 如請求項1或2之編碼裝置,其中前述閾值也可為事先決定,且不編碼成串流。
  14. 一種解碼裝置,為將動態圖像進行解碼的解碼裝置,包含有: 電路; 及連接於前述電路的記憶體, 前述電路在動作中: 導出用於處理對象區塊的預測的基準移動向量; 導出與前述基準移動向量不同的第1移動向量; 根據前述基準移動向量與前述第1移動向量的差分,導出移動向量;以及 判定前述差分移動向量是否大於閾值, 當判定為前述差分移動向量大於前述閾值時,變更前述第1移動向量, 當判定為前述差分移動向量不大於前述閾值時,不變更前述第1移動向量, 使用變更後的前述第1移動向量或者未變更的前述第1移動向量,將前述處理對象區塊進行解碼。
  15. 如請求項14之解碼裝置,其中前述基準移動向量對應於前述處理對象區塊內的第1像素組合, 前述第1移動向量對應於前述處理對象區塊內之與前述第1像素組合不同的第2像素組合。
  16. 如請求項14或15之解碼裝置,其中當判定為前述差分移動向量大於前述閾值時,前述電路使用已將前述差分移動向量剪裁的值,變更前述第1移動向量。
  17. 如請求項14或15之解碼裝置,其中前述處理對象區塊的預測模式為仿射模式。
  18. 如請求項14或15之解碼裝置,其藉由以前述預測模式來對前述處理對象區塊進行預測處理時的最差事例的記憶體存取量,成為以前述預測模式以外的預測模式來進行預測處理時的最差事例的記憶體存取量以下之方式,來決定前述閾值。
  19. 如請求項18之解碼裝置,其中藉由前述預測模式以外的預測模式來進行預測處理時的最差事例的記憶體存取量,為藉由前述預測模式以外的預測模式且每8×8像素來對前述處理對象區塊進行雙向預測處理時的記憶體存取量。
  20. 如請求項14或15之解碼裝置,其中前述閾值依前述處理對象區塊進行單向預測的情況、及進行雙向預測的情況而不同。
  21. 如請求項14或15之解碼裝置,其中前述電路判定前述差分移動向量是否大於前述閾值, 當前述差分移動向量的水平成分的絕對值大於前述閾值的第1值,或者前述差分移動向量的垂直成分的絕對值大於前述閾值的第2值時,判定為前述差分移動向量大於前述閾值, 當前述差分移動向量的前述水平成分的前述絕對值不大於前述閾值的前述第1值,且前述差分移動向量的前述垂直成分的前述絕對值不大於前述閾值的前述第2值時,判定為前述差分移動向量不大於前述閾值。
  22. 如請求項14或15之解碼裝置,其中當判定為前述差分移動向量大於前述閾值時,前述電路使用已將前述差分移動向量剪裁的值及前述基準移動向量,變更前述第1移動向量, 變更後的前述第1移動向量與前述基準移動向量的差分移動向量不大於前述閾值。
  23. 如請求項14或15之解碼裝置,其中前述基準移動向量為前述處理對象區塊的複數個前述第1移動向量的平均。
  24. 如請求項14或15之解碼裝置,其中前述基準移動向量為前述處理對象區塊內的複數個前述第1移動向量之中的1個。
  25. 如請求項14或15之解碼裝置,其中前述閾值對應於前述處理對象區塊的尺寸。
  26. 如請求項14或15之解碼裝置,其中前述閾值為事先決定,且不從串流進行解碼。
  27. 一種編碼方法,是將動態圖像進行編碼的編碼方法,包含: 導出用於處理對象區塊的預測的基準移動向量; 導出與前述基準移動向量不同的第1移動向量; 根據前述基準移動向量與前述第1移動向量的差分,導出差分移動向量;以及 判定前述差分移動向量是否大於閾值, 當判定為前述差分移動向量大於前述閾值時,變更前述第1移動向量, 當判定為前述差分移動向量不大於前述閾值時,不變更前述第1移動向量, 使用變更後的前述第1移動向量或者未變更的前述第1移動向量,將前述處理對象區塊進行編碼。
  28. 一種解碼方法,是將動態圖像進行解碼的解碼方法,包含: 導出用於處理對象區塊的預測的基準移動向量; 導出與前述基準移動向量不同的第1移動向量; 根據前述基準移動向量與前述第1移動向量的差分,導出差分移動向量;以及 判定前述差分移動向量是否大於閾值, 當判定為前述差分移動向量大於前述閾值時,變更前述第1移動向量, 當判定為前述差分移動向量不大於前述閾值時,不變更前述第1移動向量, 使用變更後的前述第1移動向量或者未變更的前述第1移動向量,將前述處理對象區塊進行解碼。
TW108129863A 2018-08-27 2019-08-21 編碼裝置、解碼裝置、編碼方法及解碼方法 TWI813740B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201862723302P 2018-08-27 2018-08-27
US62/723,302 2018-08-27

Publications (2)

Publication Number Publication Date
TW202025766A true TW202025766A (zh) 2020-07-01
TWI813740B TWI813740B (zh) 2023-09-01

Family

ID=69644991

Family Applications (3)

Application Number Title Priority Date Filing Date
TW113102241A TW202420825A (zh) 2018-08-27 2019-08-21 編碼裝置、解碼裝置、編碼方法、解碼方法及非暫時性記憶媒體
TW112132682A TWI831724B (zh) 2018-08-27 2019-08-21 非暫時性記憶媒體
TW108129863A TWI813740B (zh) 2018-08-27 2019-08-21 編碼裝置、解碼裝置、編碼方法及解碼方法

Family Applications Before (2)

Application Number Title Priority Date Filing Date
TW113102241A TW202420825A (zh) 2018-08-27 2019-08-21 編碼裝置、解碼裝置、編碼方法、解碼方法及非暫時性記憶媒體
TW112132682A TWI831724B (zh) 2018-08-27 2019-08-21 非暫時性記憶媒體

Country Status (8)

Country Link
US (3) US11212549B2 (zh)
JP (2) JP7461885B2 (zh)
KR (1) KR20210046679A (zh)
CN (1) CN112640465A (zh)
BR (1) BR112021001245A2 (zh)
MX (6) MX2021002084A (zh)
TW (3) TW202420825A (zh)
WO (1) WO2020045050A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220264146A1 (en) * 2019-07-01 2022-08-18 Interdigital Vc Holdings France, Sas Bi-prediction refinement in affine with optical flow

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240055147A (ko) * 2018-10-10 2024-04-26 삼성전자주식회사 움직임 벡터 차분값을 이용한 비디오 부호화 및 복호화 방법, 및 움직임 정보의 부호화 및 복호화 장치
JP7189234B2 (ja) * 2018-12-21 2022-12-13 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置及び復号装置

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2914448B2 (ja) * 1997-06-25 1999-06-28 日本電信電話株式会社 動きベクトル予測符号化方法および動きベクトル復号方法、予測符号化装置および復号装置、並びに、動きベクトルの予測符号化プログラムおよび復号プログラムを記録した記録媒体
JP2000209594A (ja) * 1999-01-18 2000-07-28 Mitsubishi Electric Corp 画像符号化装置
JP2002325258A (ja) * 2001-04-25 2002-11-08 Nec Corp 画像符号化装置及びそれに用いる画像符号化方法
CA2435757C (en) * 2001-11-29 2013-03-19 Matsushita Electric Industrial Co., Ltd. Video coding distortion removal method and apparatus using a filter
KR100763917B1 (ko) * 2006-06-21 2007-10-05 삼성전자주식회사 고속으로 움직임을 추정하는 방법 및 장치
US8994788B2 (en) * 2010-05-25 2015-03-31 Panasonic Intellectual Property Corporation Of America Image coding apparatus, method, program, and circuit using blurred images based on disparity
JP5798467B2 (ja) * 2011-12-07 2015-10-21 ルネサスエレクトロニクス株式会社 符号化タイプ決定装置及び動画像符号化装置、符号化タイプ決定方法及び動画像符号化方法、プログラム
CN103348678B (zh) 2012-02-07 2017-06-27 松下知识产权经营株式会社 图像处理装置以及图像处理方法
CN102630011A (zh) * 2012-03-31 2012-08-08 浙江师范大学 一种视频传感器网络中的压缩感知编解码方法及系统
EP2814253B1 (en) 2013-06-05 2015-09-16 Axis AB Method for encoding digital video data
JP6191296B2 (ja) * 2013-07-16 2017-09-06 富士通株式会社 動画像処理装置、動画像処理方法及びプログラム
WO2016008157A1 (en) * 2014-07-18 2016-01-21 Mediatek Singapore Pte. Ltd. Methods for motion compensation using high order motion model
CN109005407B (zh) * 2015-05-15 2023-09-01 华为技术有限公司 视频图像编码和解码的方法、编码设备和解码设备
US10390033B2 (en) * 2016-06-06 2019-08-20 Google Llc Adaptive overlapped block prediction in variable block size video coding
WO2018230493A1 (ja) * 2017-06-14 2018-12-20 シャープ株式会社 動画像復号装置、動画像符号化装置、予測画像生成装置及び動きベクトル導出装置
KR20200133327A (ko) * 2018-04-12 2020-11-27 삼성전자주식회사 부호화 방법 및 그 장치, 복호화 방법 및 그 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220264146A1 (en) * 2019-07-01 2022-08-18 Interdigital Vc Holdings France, Sas Bi-prediction refinement in affine with optical flow

Also Published As

Publication number Publication date
US11212549B2 (en) 2021-12-28
TW202402060A (zh) 2024-01-01
JP7461885B2 (ja) 2024-04-04
MX2024004312A (es) 2024-04-29
JPWO2020045050A1 (ja) 2021-08-10
TWI813740B (zh) 2023-09-01
WO2020045050A1 (ja) 2020-03-05
US20220078472A1 (en) 2022-03-10
TWI831724B (zh) 2024-02-01
KR20210046679A (ko) 2021-04-28
CN112640465A (zh) 2021-04-09
MX2024004314A (es) 2024-04-29
US20230412832A1 (en) 2023-12-21
MX2024004313A (es) 2024-04-29
US20210105500A1 (en) 2021-04-08
US11785243B2 (en) 2023-10-10
TW202420825A (zh) 2024-05-16
MX2024004315A (es) 2024-04-23
BR112021001245A2 (pt) 2021-04-27
JP2023060057A (ja) 2023-04-27
MX2021002084A (es) 2021-04-28
MX2024004320A (es) 2024-04-23

Similar Documents

Publication Publication Date Title
TW202408229A (zh) 圖像編碼裝置、圖像編碼方法及非暫時性記憶媒體
JP2022503464A (ja) ビデオコーディング用動きベクトル予測
JP2022008483A (ja) 符号化方法及び復号方法
TW202032985A (zh) 編碼裝置、解碼裝置、編碼方法及解碼方法
TW202041011A (zh) 編碼裝置、解碼裝置、編碼方法、及解碼方法
TWI825176B (zh) 編碼裝置、解碼裝置及電腦可讀取之非暫時性媒體
TWI835963B (zh) 編碼裝置、解碼裝置、編碼方法、及解碼方法
JPWO2019240050A1 (ja) 符号化装置、復号装置、符号化方法および復号方法
TW202034697A (zh) 編碼裝置、解碼裝置、編碼方法及解碼方法
JP7072088B2 (ja) 符号化装置及び復号装置
TWI813740B (zh) 編碼裝置、解碼裝置、編碼方法及解碼方法
JP2022058478A (ja) 符号化装置及び復号装置
WO2020166480A1 (ja) 符号化装置、復号装置、符号化方法、および復号方法
TW202101987A (zh) 編碼裝置、解碼裝置、編碼方法及解碼方法
JPWO2020162535A1 (ja) 符号化装置、復号装置、符号化方法、および復号方法
JPWO2020050279A1 (ja) 符号化装置、復号装置、符号化方法および復号方法
JP2023001298A (ja) 復号装置及び復号方法
JP7079377B2 (ja) 符号化装置、復号装置、符号化方法、および復号方法
TWI846782B (zh) 編碼裝置及解碼裝置
TWI852987B (zh) 編碼裝置及解碼裝置
TW202431842A (zh) 圖像編碼裝置、圖像解碼裝置及非暫時性記憶媒體