(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024124526
(43)【公開日】2024-09-12
(54)【発明の名称】映像の符号化装置、映像の復号化装置、映像の符号化方法、及び、映像の復号化方法
(51)【国際特許分類】
H04N 19/105 20140101AFI20240905BHJP
H04N 19/136 20140101ALI20240905BHJP
H04N 19/176 20140101ALI20240905BHJP
【FI】
H04N19/105
H04N19/136
H04N19/176
【審査請求】有
【請求項の数】4
【出願形態】OL
(21)【出願番号】P 2024109470
(22)【出願日】2024-07-08
(62)【分割の表示】P 2023094457の分割
【原出願日】2019-02-14
(31)【優先権主張番号】P 2018120872
(32)【優先日】2018-06-26
(33)【優先権主張国・地域又は機関】JP
(71)【出願人】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100141519
【弁理士】
【氏名又は名称】梶田 邦之
(72)【発明者】
【氏名】蝶野 慶一
(57)【要約】
【課題】画面内予測に使用される画像の使用範囲を適応的に制御すること。
【解決手段】画面内予測装置100は、処理対象ブロックのための画面内予測に使用される候補画像の位置と上記処理対象ブロックが属するユニットの位置との関係に基づいて、上記画面内予測に使用される画像の使用範囲のうちの上記ユニットの端部を所定方向にまたいで上記画面内予測に使用される部分範囲を、所定の最大範囲以下に制御する制御部115を備える。
【選択図】
図7
【特許請求の範囲】
【請求項1】
処理対象ブロックのための画面内予測に使用される画像の使用範囲を制御する制御部を備え、
前記制御部は、
前記使用範囲を、符号化ツリーユニットの端部を所定方向にまたいで前記画面内予測に使用可能な第1の最大範囲以下に制御し、
前記使用範囲を前記第1の最大範囲以下に制御しない場合に、前記使用範囲を、前記第1の最大範囲よりも大きい第2の最大範囲以下に制御し、
前記使用範囲が前記第2の最大範囲以下に制御される場合、前記使用範囲は複数のラインを含み、かつ、前記複数のラインのうちの少なくとも一つが前記処理対象ブロックのための画面内予測に使用され、
前記複数のラインの全てが連続して配置されている、映像の符号化装置。
【請求項2】
処理対象ブロックのための画面内予測に使用される画像の使用範囲を制御することを含み、
前記制御することは、
前記使用範囲を、符号化ツリーユニットの端部を所定方向にまたいで前記画面内予測に使用可能な第1の最大範囲以下に制御することと、
前記使用範囲を前記第1の最大範囲以下に制御しない場合に、前記使用範囲を、前記第1の最大範囲よりも大きい第2の最大範囲以下に制御することと、
を含み、
前記使用範囲が前記第2の最大範囲以下に制御される場合、前記使用範囲は複数のラインを含み、かつ、前記複数のラインのうちの少なくとも一つが前記処理対象ブロックのための画面内予測に使用され、
前記複数のラインの全てが連続して配置されている、
映像の符号化方法。
【請求項3】
処理対象ブロックのための画面内予測に使用される画像の使用範囲を制御する制御部を備え、
前記制御部は、
前記使用範囲を、符号化ツリーユニットの端部を所定方向にまたいで前記画面内予測に使用可能な第1の最大範囲以下に制御し、
前記使用範囲を前記第1の最大範囲以下に制御しない場合に、前記使用範囲を、前記第1の最大範囲よりも大きい第2の最大範囲以下に制御し、
前記使用範囲が前記第2の最大範囲以下に制御される場合、前記使用範囲は複数のラインを含み、かつ、前記複数のラインのうちの少なくとも一つが前記処理対象ブロックのための画面内予測に使用され、
前記複数のラインの全てが連続して配置されている、映像の復号化装置。
【請求項4】
処理対象ブロックのための画面内予測に使用される画像の使用範囲を制御することを含み、
前記制御することは、
前記使用範囲を、符号化ツリーユニットの端部を所定方向にまたいで前記画面内予測に使用可能な第1の最大範囲以下に制御することと、
前記使用範囲を前記第1の最大範囲以下に制御しない場合に、前記使用範囲を、前記第1の最大範囲よりも大きい第2の最大範囲以下に制御することと、
を含み、
前記使用範囲が前記第2の最大範囲以下に制御される場合、前記使用範囲は複数のラインを含み、かつ、前記複数のラインのうちの少なくとも一つが前記処理対象ブロックのための画面内予測に使用され、
前記複数のラインの全てが連続して配置されている、
映像の復号化方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、映像符号化又は映像復号化装置、映像符号化又は映像復号方法、映像符号化又は映像復号処理のためのプログラム、及び記録媒体に関する。
【背景技術】
【0002】
画面内予測符号化では、処理対象ブロックに隣接する再構築画像から画面内予測画像を生成する。例えば非特許文献1に記載されているHEVC(High Efficiency Video Coding)規格などでは、処理対象ブロックに対してそれぞれ左方向に隣接する1画素及び上方向に隣接する1画素に対応する再構築画像を参照範囲に設定することで、画面内予測画像を生成する。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】R. Joshi et al., " High Efficiency Video Coding (HEVC) Screen Content Coding: Draft 5" document JCTVC-V1005, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 22nd Meeting: Geneva, CH, 15-21 Oct. 2015.
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、画面内予測に使用される画像の使用範囲を拡大すると、その拡大する範囲に応じて、映像符号化装置および映像復号装置で用いられるラインバッファのサイズ要求が増大するという問題がある。このため、画面内予測に使用される画像の使用範囲を適応的に制御することが望まれる。
【0005】
本発明の目的は、画面内予測に使用される画像の使用範囲を適応的に制御することを可能にする映像符号化又は映像復号装置、映像符号化又は映像復号方法、プログラム、及び記録媒体を提供することにある。
【課題を解決するための手段】
【0006】
本発明の一つの態様によれば、映像符号化又は映像復号装置は、処理対象ブロックのための画面内予測に使用される候補画像の位置と前記処理対象ブロックが属するユニットの位置との関係に基づいて、前記画面内予測に使用される画像の使用範囲のうちの前記ユニットの端部を所定方向にまたいで前記画面内予測に使用される部分範囲を、所定の最大範囲以下に制御する制御部を備える。
【0007】
本発明の一つの態様によれば、映像符号化又は映像復号方法は、処理対象ブロックのための画面内予測に使用される候補画像の位置と前記処理対象ブロックが属するユニットの位置との関係に基づいて、前記画面内予測に使用される画像の使用範囲のうちの前記ユニットの端部を所定方向にまたいで前記画面内予測に使用される部分範囲を、所定の最大範囲以下に制御すること、を含む。
【0008】
本発明の一つの態様によれば、プログラムは、処理対象ブロックのための画面内予測に使用される候補画像の位置と前記処理対象ブロックが属するユニットの位置との関係に基づいて、前記画面内予測に使用される画像の使用範囲のうちの前記ユニットの端部を所定方向にまたいで前記画面内予測に使用される部分範囲を、所定の最大範囲以下に制御すること、を含む映像符号化又は映像復号処理をコンピュータに実行させるためのプログラムである。
【0009】
本発明の一つの態様によれば、記録媒体は、処理対象ブロックのための画面内予測に使用される候補画像の位置と前記処理対象ブロックが属するユニットの位置との関係に基づいて、前記画面内予測に使用される画像の使用範囲のうちの前記ユニットの端部を所定方向にまたいで前記画面内予測に使用される部分範囲を、所定の最大範囲以下に制御すること、を含む映像符号化又は映像復号処理をコンピュータに実行させるためのプログラムを記録したコンピュータに読み取り可能な非一時的記録媒体である。
【発明の効果】
【0010】
本発明の一つの態様によれば、画面内予測に使用される画像の使用範囲を適応的に制御することが可能になる。なお、本発明により、当該効果の代わりに、又は当該効果とともに、他の効果が奏されてもよい。
【図面の簡単な説明】
【0011】
【
図1】
図1は、水平画素bwが4画素、垂直画素Bhが4画素からそれぞれ構成される処理対象ブロックに対して、上述したHEVC規格において画面内予測に用いる再構築画像の具体例を示す図である。
【
図2】
図2は、水平画素bwが4画素、垂直画素Bhが4画素からそれぞれ構成される処理対象ブロックに対して、拡大された参照範囲の具体例を示す図である。
【
図3】
図3は、本発明の実施形態に係る画面内予測装置100の概略的な構成の一例を示す説明図である。
【
図4】
図4は、第1の実施形態に係る領域制御処理部110の概略的な構成の例を示すブロック図である。
【
図5】
図5は、領域制御処理部110に係る処理の具体例を説明するための図である。
【
図6】
図6は、画面内予測装置100により行われる処理の流れの例を説明するためのフローチャートである。
【
図7】
図7は、第1の実施形態の実施例に係る効果を説明するための図である。
【
図8】
図8は、映像符号化装置800の概略的な構成を示すブロック図である。
【
図9】
図9は、映像復号装置900の概略的な構成を示すブロック図である。
【
図10】
図10は、画面内予測装置100が適用される情報処理システム100の概略的な構成を示すブロック図である。
【
図11】
図11は、上述した映像符号化装置800と上述した映像復号装置900とが、無線伝送路又は有線伝送路などの伝送路300で接続されるシステムを示す図である。
【
図12】
図12は、第2の実施形態に係る映像符号化装置800の概略的な構成の例を示すブロック図である。
【
図13】
図13は、第2の実施形態に係る映像復号装置900の概略的な構成の例を示すブロック図である。
【発明を実施するための形態】
【0012】
以下、添付の図面を参照して本発明の実施形態を詳細に説明する。なお、本明細書及び図面において、同様に説明されることが可能な要素については、同一の符号を付することにより重複説明が省略され得る。
【0013】
説明は、以下の順序で行われる。
1.関連技術
2.実施形態の概要
3.第1の実施形態
3.1.画面内予測装置100の構成
3.2.技術的特徴
3.3.具体例
3.4.適用例
3.5.変形例
4.第2の実施形態
4.1.構成
4.2.技術的特徴
5.他の形態
【0014】
<<1.関連技術>>
本発明の実施形態に関連する技術として、映像符号化処理及び映像復号処理で行われる画面内予測について説明する。
【0015】
下記の参考文献1に記載されているように、例えば、HEVC(High Efficiency Video Coding)規格の画面内予測符号化では、処理対象ブロックに隣接する再構築画像から画面内予測画像を生成する。
参考文献1:R. Joshi et al., " High Efficiency Video Coding (HEVC) Screen Content Coding: Draft 5" document JCTVC-V1005, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 22nd Meeting: Geneva, CH, 15-21 Oct. 2015.
【0016】
図1は、水平画素bwが4画素、垂直画素Bhが4画素からそれぞれ構成される処理対象ブロックに対して、上述したHEVC規格において画面内予測に用いる再構築画像の具体例を示す図である。また、
図1に示すように、画面内予測のために参照される再構築画像の参照範囲は、左方向Kleftに1画素、上方向Kupに1画素である。
【0017】
また、下記の参考文献2及び3では、画面内予測の予測効率を改善するために、画面内予測に用いられる参照範囲を拡大することが提案されている。
参考文献2:J. Pfaff et al., "Intra prediction modes based on neural networks", JVET-J0037, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 10th Meeting: San Diego, US, 10-20 Apr. 2018.
参考文献3:P. Lin et al., "Multiple reference line intra prediction based on JEM7.0", JVET-J0070, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 10th Meeting: San Diego, US, 10-20 Apr. 2018.
【0018】
例えば、
図2は、水平画素bwが4画素、垂直画素Bhが4画素からそれぞれ構成される処理対象ブロックに対して、拡大された参照範囲の具体例を示す図である。
図2に示すように、再構築画像を参照する参照範囲は、左方向Kleftに4画素、上方向Kupに4画素となる。
【0019】
<<2.実施形態の概要>>
まず、本発明の実施形態の概要を説明する。
【0020】
(1)技術的課題
上述したように画面内予測に使用される画像の使用範囲(参照範囲)を拡大すると、映像符号化装置および映像復号装置で用いられるラインバッファのサイズ要求が増大するという問題がある。
【0021】
具体的には、符号化対象のピクチャの水平画素数をw画素とし、画素ビット精度をbitDepthビットとして、画面内予測に用いる参照画像の上方向の範囲Kupを1画素から4画素に拡大した場合には、ラインバッファのサイズ要求は、w*bitDepthビットからw*bitDepth*4ビットに増大する。このため、画面内予測に使用される画像の使用範囲を適応的に制御することが望まれる。
【0022】
そこで、本実施形態に係る目的は、面内予測に使用される画像の使用範囲を適応的に制御することである。
【0023】
(2)技術的特徴
本発明の一態様である実施形態では、例えば、処理対象ブロックのための画面内予測に使用される候補画像の位置と前記処理対象ブロックが属するユニットの位置との関係に基づいて、前記画面内予測に使用される画像の使用範囲のうちの前記ユニットの端部を所定方向にまたいで前記画面内予測に使用される部分範囲を、所定の最大範囲以下に制御する。
【0024】
これにより、例えば、画面内予測に使用される画像の使用範囲を適応的に制御することが可能になる。
【0025】
なお、上述した技術的特徴は本発明の実施形態の具体的な一例であり、当然ながら、本発明の実施形態は上述した技術的特徴に限定されない。
【0026】
<<3.第1の実施形態>>
図3~
図11を参照して、本発明の第1の実施形態を説明する。
【0027】
<3.1.画面内予測装置100の構成>
図3を参照して、第1の実施形態に係る画面内予測装置100の構成の例を説明する。
図3は、本発明の実施形態に係る画面内予測装置100の概略的な構成の一例を示す説明図である。
図3を参照すると、画面内予測装置100は、領域制御処理部110、参照画像生成部120、及び予測画像生成部130を含む。
【0028】
以上のような構成からなる画面内予測装置100において、領域制御処理部110は、画面内予測に使用される画像(再構築画像)の使用範囲(参照範囲)を制御する。参照画像生成部120は、領域制御処理部110により制御される使用範囲に基づいて、再構築画像から参照画像を生成する。予測画像生成部130は、参照画像生成部120により生成された参照画像から予測画像を生成する。
【0029】
図4を参照して、領域制御処理部110の構成の例を説明する。
図4は、第1の実施形態に係る領域制御処理部110の概略的な構成の例を示すブロック図である。
図4を参照すると、領域制御処理部110は、第1の導出部111、第2の導出部113、及び制御部115を含む。具体的な各部で行われる動作などについては、以下で説明する。
【0030】
<3.2.技術的特徴>
次に、第1の実施形態に係る技術的特徴を説明する。
【0031】
領域制御処理部110(制御部115)は、処理対象ブロックのための画面内予測に使用される候補画像の位置と上記処理対象ブロックが属するユニットの位置との関係に基づいて、上記画面内予測に使用される画像の使用範囲のうちの上記ユニットの端部を所定方向にまたいで上記画面内予測に使用される部分範囲を、所定の最大範囲以下に制御する。
【0032】
上記所定方向は、例えば画面上方向、画面左方向など、任意の方向でよいが、以下では、主に、画面上方向であることを想定して説明する。
(1)ユニット
上記ユニットは、画素サンプルを符号化するためのシンタクスストラクチャを含む。とりわけ、上記ユニットは、スライスに含まれる1つの符号化ツリーユニットである。なお、上記ユニットは、上述したように処理対象ブロックを含むので親ブロックとして捉えることも可能である。上記ユニットを、「親ブロック」と呼んでもよい。
【0033】
(2)所定の最大範囲
上記所定の最大範囲は、具体的には、上記符号化ツリーユニットの端部を上記所定方向にまたいで上記画面内予測に使用可能な最大範囲である。
【0034】
例えば、上記所定方向が画面上方向である場合には、上記所定の最大範囲は、上記符号化ツリーユニットの上端部を基準として、当該上端部から画面上方向に向かって上記画面内予測に使用可能(参照可能)な最大範囲である。
【0035】
(3)第1の境界位置の導出及び適用
領域制御処理部110(第1の導出部111)は、上記符号化ツリーユニットの位置と上記所定の最大範囲とに基づいて、上記符号化ツリーユニットの端部を上記所定方向にまたいで上記画面内予測に使用可能な画像位置であって上記符号化ツリーユニットから上記所定方向に最も離れた第1の境界位置を導出する。
【0036】
例えば、上記所定方向が画面上方向である場合には、領域制御処理部110(第1の導出部111)は、上記符号化ツリーユニットの上端部の位置と上記所定の最大範囲とに基づいて、上記符号化ツリーユニットの上端部を基準として画面上方向に最も離れた位置を、上記第1の境界位置として導出する。
【0037】
このように上記第1の境界位置が導出される場合、領域制御処理部110(制御部115)は、上記画面内予測に使用される候補画像の位置と上記第1の境界位置との関係に基づいて、上記符号化ツリーユニットの端部を上記所定方向にまたいで上記画面内予測に使用される上記部分範囲を、上記所定の最大範囲以下に制御する。
【0038】
領域制御処理部110(制御部115)は、例えば、上記処理対象ブロックの位置から見て、上記画面内予測に使用される候補画像の中に、上記第1の境界位置よりも離れている候補画像がある場合には、上記部分範囲を、上記所定の最大範囲以下に制御する。
【0039】
(4)第2の境界位置の導出及び適用
領域制御処理部110(第2の導出部113)は、上記処理対象ブロックの位置と、上記画面内予測において上記所定方向に使用される候補画像の候補範囲とに基づいて、上記画面内予測に使用される候補画像の位置であって上記処理対象ブロックから上記所定方向に最も離れた第2の境界位置を導出する。
【0040】
例えば、上記所定方向が画面上方向である場合には、領域制御処理部110(第2の導出部113)は、上記処理対象ブロックの上端部の位置と、上記画面内予測において画面上方向に使用される候補画像の候補範囲とに基づいて、上記処理対象ブロックの上端部を基準として画面上方向に最も離れた候補画像の候補位置を、上記第2の境界位置として導出する。
【0041】
このようにして上記第2の境界位置が導出される場合、領域制御処理部110(制御部115)は、上記第1の境界位置と上記第2の境界位置の関係に基づいて、上記符号化ツリーユニットの端部を上記所定方向にまたいで上記画面内予測に使用される上記部分範囲を、上記所定の最大範囲以下に制御する。
【0042】
具体的に、領域制御処理部110(制御部115)は、上記処理対象ブロックの位置に対して、上記第2の境界位置が上記第1の境界位置よりも上記所定方向に離れている場合には、上記符号化ツリーユニットの端部を上記所定方向にまたいで上記画面内予測に使用される上記部分範囲を、上記所定の最大範囲以下に制御する。
【0043】
例えば、上記所定方向が画面上方向である場合には、領域制御処理部110(制御部115)は、上記処理対象ブロックの上端部の位置に対して、上記第2の境界位置が上記第1の境界位置よりも画面上方向に離れている場合には、上記部分範囲を、上記所定の最大範囲以下に制御する。
【0044】
また、領域制御処理部110(制御部115)は、上記処理対象ブロックの位置に対して、上記第2の境界位置が上記第1の境界位置よりも上記所定方向に離れていない場合には、上記符号化ツリーユニットの端部を上記所定方向にまたいで上記画面内予測に使用される上記部分範囲を、上記候補範囲に制御する。
【0045】
例えば、上記所定方向が画面上方向である場合には、領域制御処理部110(制御部115)は、上記処理対象ブロックの位置に対して、上記第2の境界位置が上記第1の境界位置よりも画面上方向に離れていない場合には、上記部分範囲を、上記候補範囲に制御する。
【0046】
<3.3.具体例>
次に、画面内予測装置100で行われる処理の具体例について説明する。
【0047】
(1)領域制御処理部110
領域制御処理部110に係る処理の具体例を説明する。
図5は、領域制御処理部110に係る処理の具体例を説明するための図である。
【0048】
まず、変数を次のように定義する。
【0049】
図5に示すように、上記処理対象ブロック501が属する符号化ツリーユニット503の上端部を画面上方向にまたいで使用可能(参照可能)な上記所定の最大範囲をKmax画素とする。また、上記処理対象ブロック501の画面内予測に用いる候補画像505(参照画像)の画面上方向の候補範囲をKup画素、画面左方向の候補範囲をKleft画素とする。なお、本具体例では、説明の簡略化のため、KmaxはKup未満とする。
【0050】
領域制御処理部110(制御部115)が適応的に制御する上記使用範囲、すなわち、上記処理対象ブロック501の画面内予測に用いる画像(再構築画像)の画面上方向の使用範囲をK画素とする。
【0051】
ピクチャに関しては、次のように定義する。ピクチャ左上端部を水平垂直座標系の原点(x,y)=(0,0)とし、画面右方向を+x方向、画面下方向を+yをする。また、ピクチャの水平画素数をw画素、垂直画素数をh画素とする。
【0052】
次に、処理対象ブロックに関しては、次のように定義する。まず、上記処理対象ブロックの左上角位置の座標を(cur_bx,cur_by)とする。また、上記処理対象の画像ブロックの水平画素数をcur_bw画素、垂直画素数をcur_bh画素とする。
【0053】
次に、上記符号化ツリーユニットに関して、次のように定義する。上記符号化ツリーユニットの左上角位置の座標を(cur_cux,cur_cuy)とする。また、上記符号化ツリーユニットの水平画素数をcuw画素、垂直画素数をcuh画素とする。
【0054】
なお、説明の簡略化のため、cur_bwおよびcur_bhは、それぞれcuw未満およびcuh未満とする。また、上述したようにピクチャ左上端部を水平垂直座標系の原点(0,0)とするので、cur_cuxおよびcur_cuyは、それぞれcur_bx以下およびcur_by以下となる。
【0055】
本具体例では、以上のように定義した変数を用いて、上記処理対象ブロックの画面内予測において使用(参照)する画像(再構築画像)の候補位置と上記処理対象ブロックが属する符号化ツリーユニットの位置との関係に基づいて、画面内予測において使用(参照)する使用画像(再構築画像)の候補範囲Kを適応的に制御する。
【0056】
まず、領域制御処理部110(第1の導出部111)は、下記(1)式を用いて、上記第1の境界位置の垂直座標ref_max_pos_yを導出する。
ref_max_pos_y=cur_cuy-Kmax ・・・ (1)
【0057】
ここで、上記第1の境界位置の垂直座標ref_max_pos_yは、上記符号化ツリーユニットの上端部を画面上方向にまたいで使用可能(参照可能)な垂直方向の位置の最大値として捉えることができる。
【0058】
また、領域制御処理部110(第2の導出部113)は、下記(2)式を用いて上記第2の境界位置の垂直座標cand_min_pos_yを導出する。
cand_min_pos_y=cur_by-Kup ・・・ (2)
【0059】
ここで、上述したように垂直座標軸yはピクチャ上端を原点とし画面下方向に正の値をとるので、上記第2の境界位置の垂直座標cand_min_pos_yは、上記処理対象ブロックの画面内予測に使用(参照)される画像(再構築画像)の候補位置の最小値として捉えることができる。
【0060】
領域制御処理部110(制御部115)は、上記第1の境界位置の垂直座標ref_max_pos_y及び上記第2の境界位置の垂直座標cand_min_pos_yを用いて、上記候補範囲Kを適用的に制御する。
【0061】
具体的には、領域制御処理部110(制御部115)は、cand_min_pos_y<ref_max_pos_yの場合に、下記(3)式により、上記使用範囲Kを算出し、上記符号化ツリーユニットの上端部を画面上方向にまたいで上記画面内予測に使用される上記部分範囲を、上記所定の範囲Kmax以下に制御する。
K=cur_by-cur_cuy+Kmax ・・・ (3)
【0062】
また、領域制御処理部110(制御部115)は、cand_min_pos_y≧ref_max_pos_yの場合に、下記(4)式により、上記使用範囲Kを算出する。
K=Kup ・・・ (4)
【0063】
このようにして、領域制御処理部110(制御部115)は、上記第1の境界位置の垂直座標ref_max_pos_y及び上記第2の境界位置の垂直座標cand_min_pos_yの相対的な位置の関係に応じて、上記使用範囲Kを算出し、上記部分範囲をKmax以下に制御することができる。
【0064】
なお、上述したような水平垂直座標系では、ピクチャ左上端を原点としたが、これに限定されない。例えば処理対象ブロックの上端部を垂直座標軸の原点としてもよい。このように原点を決めた場合には、上記第2の境界位置の垂直座標は、上記処理対象ブロックの画面内予測に使用(参照)される画像(再構築画像)の候補位置の最大値として捉えることができる。
【0065】
(2)参照画像生成部120
参照画像生成部120は、上述した領域制御処理部110により算出される上記使用範囲Kに基づいて、上記画面内予測に使用(参照)される画像(参照画像)を生成する。
【0066】
具体的に、参照画像生成部120は、K<Kupの場合に、垂直座標位置がcur_by-Kmaxからcur_by-1に属する画像を複製し、垂直座標位置がcur_by-Kupからcur_by-Kmax-1に対応する位置に上記複製した画像をマッピングすることにより、上記処理対象ブロックの画面内予測に使用(参照)される画像(参照画像)を生成する。
【0067】
このようにして、参照画像生成部120は、上記符号化ツリーユニットの境界を上方向にまたいで参照できない垂直位置cur_by-Kupからcur_by-Kmax-1の再構築画像の代わりに、垂直位置cur_by-Kmax-1の再構築画像を複製し、当該複製画像を参照画像として利用することができる。なお、垂直位置cur_by-Kmaxからcur_by-1の再構築画像は、そのまま参照画像として利用すればよい。
【0068】
また、参照画像生成部120は、K=Kupの場合には上記符号化ツリーユニットの上端部を画面上方向にまたいで使用(参照)できない垂直位置が存在しないので、垂直位置cur_by-Kupからcur_by-1の再構築画像をそのまま参照画像として利用することができる。
【0069】
(3)予測画像生成部130
予測画像生成部130は、参照画像生成部120から供給される参照画像から画面内予測画像を生成する。画面内予測画像の生成は、例えば、上述した参考文献1、参考文献2、又は、参考文献3のいずれかに記載された画面内予測画像生成処理など、任意の画面内予測画像生成処理を適用してもよい。
【0070】
(4)画面内予測装置100により行われる処理の流れ
図6は、画面内予測装置100により行われる処理の流れの例を説明するためのフローチャートである。
【0071】
ステップS601では、領域制御処理部110は、処理対象ブロックの画面内予測において参照する再構築画像の候補位置と上記処理対象ブロックが属する符号化ツリーユニットの位置との関係に基づいて、上記画面内予測において使用(参照)する画像(再構築画像)の候補範囲Kを適応的に制御する。続いて、ステップS603に進む。
【0072】
ステップS603では、参照画像生成部120は、Kmaxと領域制御処理部110で算出されたKの値の関係に基づいて、上記処理対象ブロックの画面内予測の生成に用いる参照画像を生成する。続いて、ステップS605に進む。
【0073】
ステップS605では、予測画像生成部130は、参照画像生成部120から供給される参照画像から、上記処理対象ブロックの画面内予測画像を生成する。
【0074】
(5)効果
以上のような本実施例によれば、処理対象ブロック毎に画面内予測に使用される画像(再構築画像)の使用範囲(参照範囲)を適応的に制御することによって、例えば、
図7に示すように、ラインバッファのサイズ要求を低減することができる。
【0075】
図7は、第1の実施形態の実施例に係る効果を説明するための図である。まず、
図7(a)は、符号化ツリーユニット701の端部をまたいで使用される上記部分範囲を上記所定の最大範囲Kmax以下に制限しない例(比較例)を示す図である。一方、
図7(b)は、符号化ツリーユニット702の端部をまたいで使用される上記部分範囲を上記所定の最大範囲Kmax以下に制御する例(本具体例)を説明するための図である。
【0076】
図7(a)に示す比較例では、画面上方向の画像(参照画像)の使用範囲が常にKup個のライン上の画素となるため、ラインバッファのサイズ要求がw*bitDepth*Kupビットとなる。
【0077】
一方、
図7(b)に示す例では、上記所定の最大範囲Kmax=1とすることで、上記使用範囲Kのうち上記部分範囲を1ライン上の画素に制約する例を示している。このため、
図7(b)に示す本具体例では、w*bitDepthビット*1となる。つまり、
図7(b)に示すような本具体例は、上記比較例(
図7(a)に示す比較例)に対して、ラインバッファのサイズ要求を、w*bitDepth*(Kup-1)まで低減することができる。
【0078】
<3.4.適用例>
(1)映像符号化装置800
上述した画面内予測装置100は、例えば、
図8に示すような映像符号化装置800に適用することができる。
【0079】
図8は、映像符号化装置800の概略的な構成を示すブロック図である。
図8に示すように、映像符号化装置800は、変換/量子化部801、エントロピー符号化部802、逆変換/逆量子化部803、バッファ804、画面内予測装置100を包含する予測部805、および、多重化部806を備える。
【0080】
まず、予測部805は、ブロック毎に、その入力画像信号に対する予測信号を生成する。具体的に、処理対象ブロックに対して画面内予測を行う場合には、上述したように画面内予測装置100によって、処理対象ブロックに対する予測信号が生成される。
【0081】
変換/量子化部801は、入力画像信号から予測信号を減じた予測誤差画像を周波数変換する。さらに、変換/量子化部801は、周波数変換した予測誤差画像(変換係数)を量子化する。
【0082】
エントロピー符号化部802は、変換量子化値、および、予測部805が利用する予測パラメータである動きベクトルの差分情報などを、例えばCABAC(Context-based Adaptive Binary Arithmetic Coding)に基づいてエントロピー符号化する。
【0083】
逆変換/逆量子化部803は、変換量子化値を逆量子化する。さらに、逆変換/逆量子化部803は、逆量子化した周波数変換係数を逆周波数変換する。逆周波数変換された再構築予測誤差画像は、予測信号が加えられて、バッファ804に供給される。バッファ804は、再構築画像を格納する。
【0084】
多重化部806は、エントロピー符号化部802から供給される符号語をビットストリームとして多重化する。
【0085】
上述した動作によってビットストリームを生成する映像符号化装置800は、予測部805に包含されている画面内予測装置100により、処理対象ブロック毎に画面内予測に使用される画像(参照画像)の使用範囲が適応的に制御される。これにより、ラインバッファのサイズ要求を低減しながら、映像符号化されたビットストリームを出力することができる。
【0086】
(2)映像復号装置900
上述した画面内予測装置100は、例えば、
図9に示すような映像復号装置900に適用することができる。
【0087】
図9は、映像復号装置900の概略的な構成を示すブロック図である。
図9に示すように、映像復号装置900は、多重化解除部901、エントロピー復号部902、逆変換/逆量子化部903、上述した画面内予測装置100を包含する予測部904、バッファ905、および、制御情報生成部906を備える。
【0088】
多重化解除部901は、入力されるビットストリームを多重化解除して、符号語を抽出する。
【0089】
エントロピー復号部902は、多重化解除部901により抽出された符号語を、例えばCABACに基づいてエントロピー復号する。エントロピー復号部902によりエントロピー復号された変換量子化値は、逆変換/逆量子化部903に供給される。また、動きベクトルの差分情報などは予測部904に供給される。
【0090】
逆変換/逆量子化部903は、量子化ステップ幅で、変換量子化値を逆量子化する。さらに、逆変換/逆量子化部903は、逆量子化した周波数変換係数を逆周波数変換する。
【0091】
予測部904は、各ブロックの予測信号を生成する。処理対象ブロックに対して画面内予測を行う場合には、上述したように画面内予測装置100により、処理対象ブロックに対する予測信号が生成される。
【0092】
逆変換/逆量子化部903で逆周波数変換された再構築予測誤差画像は、予測部904から供給される予測信号が加えられて、再構築ピクチャとしてバッファ905に供給させる。そして、バッファ905に格納された再構築ピクチャがデコード画像として出力される。
【0093】
上述した動作によってビットストリームからデコード画像を生成する映像復号装置900は、予測部904に包含されている画面内予測装置100により、処理対象ブロック毎に画面内予測に使用される画像(再構築画像)の使用範囲(参照範囲)が適応的に制御される。これにより、ラインバッファのサイズ要求を低減しながら、ビットストリームから復号画像を生成することができる。
【0094】
(3)情報処理システム1000
上述した画面内予測装置100は、例えば
図10に示すような情報処理システム1000により実現してもよい。
【0095】
図10は、画面内予測装置100が適用される情報処理システム1000の概略的な構成を示すブロック図である。
【0096】
情報処理システム1000は、
図10に示すように、プロセッサ1001、プログラムメモリ1002、映像データを格納するための記憶媒体1003およびビットストリームを格納するための記憶媒体1004を備える。記憶媒体1003と記憶媒体1004とは、別個の記憶媒体であってもよいし、同一の記憶媒体からなる記憶領域であってもよい。記憶媒体として、ハードディスク等の磁気記憶媒体を用いることができる。
【0097】
情報処理システム1000は、画面内予測装置100の機能を実現するコンピュータプログラムをプログラムメモリ1002にインストールすることで、処理対象ブロック毎に画面内予測に使用される画像(再構築画像)の使用範囲(参照範囲)が適応的に制御される。これにより、ラインバッファのサイズ要求を低減しながら、ビットストリームから復号画像を生成することができる。
【0098】
(4)相互接続性
図11は、上述した映像符号化装置800と上述した映像復号装置900とが、無線伝送路又は有線伝送路などの伝送路300で接続されるシステムを示す図である。
【0099】
図11に示すようなシステムにおいて、映像符号化装置800と映像復号装置900が、例えば共通のKmax、Kup、Kleftなどを用いるなど、共通のプロシージャで、処理対象ブロック毎に画面内予測に用いる参照画像の範囲を適応的に制御することで、映像符号化装置800と映像復号装置900と相互接続性を確保することができる。
【0100】
具体的には、上記所定の最大値Kmaxは、映像符号化装置800と映像復号装置900との間で共通の固定値を用いることができる。また、上記所定の最大値Kmaxは、例えばピクチャの画素数が大きくなるのに応じて小さな値とするなど、ピクチャの水平画素数や垂直画素数などに基づいて暗黙的に設定される可変値にしてもよい。
【0101】
上述したように、上記所定の最大値Kmaxを可変値とする場合、上記所定の最大値Kmaxは、暗黙的に設定する場合に限られない。例えば、ビットストリームのシンタクス要素として値を明示的にシグナリングしてもよい。すなわち、上記所定の最大範囲Kmaxを特定する情報を、シンタクス要素としてビットストリームに含めてもよい。上記所定の最大範囲Kmaxを特定する情報は、例えばシーケンスごと、ピクチャごと、スライスごと、又はユニットごとなどに含めてもよい。
【0102】
また、上記候補範囲Kup、Kleftも可変値としてもよい。この場合、上記候補範囲Kup、Kleftを、ビットストリームのシンタクス要素として、明示的にシグナリングしてもよい。
【0103】
<3.5.変形例>
本実施形態では、処理対象ブロック毎に画面内予測に使用する画像のうち、画面上方向の使用範囲を適応的に制御したが、これに限定されず、同様にして画面左方向の使用範囲も適応的に制御してもよい。
【0104】
具体的には、画面内予測装置100の領域制御処理部110(制御部115)は、画面内予測に使用される画像の使用範囲のうちのユニットの左端部を画面左方向にまたいで画面内予測に使用される部分範囲を、所定の最大範囲以下に制御してもよい。このような変形例において、上記所定の最大範囲は、具体的には、上記符号化ツリーユニットの左端部を画面左方向にまたいで画面内予測に使用可能な最大範囲である。
【0105】
また、上記所定の最大範囲を特定するための情報を、ビットストリームのシンタクス要素として、映像符号化装置800から映像復号装置900にシグナリングしてもよい。
【0106】
<<4.第2の実施形態>>
続いて、
図12及び
図13を参照して、本発明の第2の実施形態を説明する。上述した第1の実施形態は、具体的な実施形態であるが、第2の実施形態は、より一般化された実施形態である。
【0107】
<4.1.構成>
図12は、第2の実施形態に係る映像符号化装置800の概略的な構成の例を示すブロック図である。
図12を参照すると、映像符号化装置800は、制御部810を備える。
【0108】
図13は、第2の実施形態に係る映像復号装置900の概略的な構成の例を示すブロック図である。
図13を参照すると、映像復号装置900は、制御部910を備える。
【0109】
<4.2.技術的特徴>
次に、第2の実施形態の技術的特徴を説明する。
【0110】
第2の実施形態では、映像符号化装置800(制御部810)は、処理対象ブロックのための画面内予測に使用される候補画像の位置と前記処理対象ブロックが属するユニットの位置との関係に基づいて、前記画面内予測に使用される画像の使用範囲のうちの前記ユニットの端部を所定方向にまたいで前記画面内予測に使用される部分範囲を、所定の最大範囲以下に制御する。
【0111】
例えば、映像符号化装置800は、第1の実施形態に係る画面内予測装置100の動作を行ってもよい。
【0112】
また、映像復号装置900(制御部910)は、処理対象ブロックのための画面内予測に使用される候補画像の位置と前記処理対象ブロックが属するユニットの位置との関係に基づいて、前記画面内予測に使用される画像の使用範囲のうちの前記ユニットの端部を所定方向にまたいで前記画面内予測に使用される部分範囲を、所定の最大範囲以下に制御する。
【0113】
例えば、映像復号装置900は、第1の実施形態に係る画面内予測装置100の動作を行ってもよい。
【0114】
以上、第2の実施形態を説明した。第2の実施形態によれば、例えば、画面内予測に使用される画像の使用範囲を適応的に制御することが可能になる。
【0115】
<<5.他の形態>>
以上、本発明の実施形態を説明したが、本発明はこれらの実施形態に限定されるものではない。これらの実施形態は例示にすぎないということ、及び、本発明のスコープ及び精神から逸脱することなく様々な変形が可能であるということは、当業者に理解されるであろう。
【0116】
例えば、本明細書に記載されている処理におけるステップは、必ずしもシーケンス図に記載された順序に沿って時系列に実行されなくてよい。例えば、処理におけるステップは、シーケンス図として記載した順序と異なる順序で実行されても、並列的に実行されてもよい。また、処理におけるステップの一部が削除されてもよく、さらなるステップが処理に追加されてもよい。
【0117】
また、本明細書において説明した装置の構成要素(例えば、第1の導出部、第2の導出部、及び/又は制御部)の処理を含む方法が提供されてもよく、上記構成要素の処理をプロセッサに実行させるためのプログラムが提供されてもよい。また、当該プログラムを記録したコンピュータに読み取り可能な非一時的記録媒体(Non-transitory computer readable medium)が提供されてもよい。当然ながら、このような装置、モジュール、方法、プログラム、及びコンピュータに読み取り可能な非一時的記録媒体も本発明に含まれる。
【0118】
上記実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
【0119】
(付記1)
処理対象ブロックのための画面内予測に使用される候補画像の位置と前記処理対象ブロックが属するユニットの位置との関係に基づいて、前記画面内予測に使用される画像の使用範囲のうちの前記ユニットの端部を所定方向にまたいで前記画面内予測に使用される部分範囲を、所定の最大範囲以下に制御する制御部を備える、映像符号化又は映像復号装置。
【0120】
(付記2)
前記ユニットは、画素サンプルを符号化するためのシンタクスストラクチャを含む、付記1記載の映像符号化又は映像復号装置。
【0121】
(付記3)
前記ユニットは、スライスに含まれる1つの符号化ツリーユニットである、付記1又は2記載の映像符号化又は映像復号装置。
【0122】
(付記4)
前記所定の最大範囲は、前記ユニットの端部を前記所定方向にまたいで前記画面内予測に使用可能な最大範囲である、付記1乃至3のうち何れか1項記載の映像符号化又は映像復号装置。
【0123】
(付記5)
前記ユニットの位置と前記所定の最大範囲とに基づいて、前記ユニットの端部を前記所定方向にまたいで前記画面内予測に使用可能な画像位置であって前記ユニットから前記所定方向に最も離れた第1の境界位置を導出する第1の導出部を更に備え、
前記制御部は、前記画面内予測に使用される候補画像の位置と前記第1の境界位置との関係に基づいて、前記ユニットの端部を前記所定方向にまたいで前記画面内予測に使用される前記部分範囲を、前記所定の範囲以下に制御する、付記4記載の映像符号化又は映像復号装置。
【0124】
(付記6)
前記処理対象ブロックの位置と、前記画面内予測において前記所定方向に使用される候補画像の候補範囲とに基づいて、前記画面内予測に使用される候補画像の位置であって前記処理対象ブロックから前記所定方向に最も離れた第2の境界位置を導出する第2の導出部を更に備え、
前記制御部は、前記第1の境界位置と前記第2の境界位置の関係に基づいて、前記ユニットの端部を前記所定方向にまたいで前記画面内予測に使用される前記部分範囲を、前記所定の最大範囲以下に制御する、付記5記載の映像符号化又は映像復号装置。
【0125】
(付記7)
前記制御部は、前記処理対象ブロックの位置に対して、前記第2の境界位置が前記第1の境界位置よりも前記所定方向に離れている場合には、前記ユニットの端部を前記所定方向にまたいで前記画面内予測に使用される前記部分範囲を、前記所定の最大範囲以下に制御する、付記6記載の映像符号化又は映像復号装置。
【0126】
(付記8)
前記制御部は、前記処理対象ブロックの位置に対して、前記第2の境界位置が前記第1の境界位置よりも前記所定方向に離れていない場合には、前記画面内予測に使用される画像の使用範囲を、前記候補範囲に制御する、付記6又は7記載の映像符号化又は映像復号装置。
【0127】
(付記9)
前記所定方向は画面上方向であり、
前記所定の最大範囲は、前記ユニットの上端部を画面上方向にまたいで前記画面内予測に使用可能な最大範囲Kmaxであり、
前記候補範囲は、前記画面内予測において画面上方向に使用される候補画像の候補範囲Kupであり、
前記第1の導出部は、ピクチャ上端を原点とし画面下方向に正の値をとる垂直座標軸に基づき、下記(1)式を用いて前記第1の境界位置の垂直座標ref_max_pos_yを導出し、
前記第2の導出部は、前記垂直座標軸に基づき、下記(2)式を用いて前記第2の境界位置の垂直座標cand_min_pos_yを導出し、
前記制御部は、cand_min_pos_y<ref_max_pos_yの場合に、下記(3)式により、前記画面内予測において画面上方向に使用される画像の使用範囲Kを算出し、前記ユニットの端部を所定方向にまたいで前記画面内予測に使用される前記部分範囲を、前記所定の範囲Kmax以下に制御する、付記6乃至8のうち何れか1項記載の映像符号化又は映像復号装置。
ref_max_pos_y=cur_by-Kup ・・・ (1)
cur_byは前記ユニットの上端部の垂直座標である。
cand_min_pos_y=cur_cuy-Kmax ・・・ (2)
cur_cuyは、前記ユニットの上端部の垂直座標である。
K=cur_by-cur_cuy+Kmax ・・・ (3)
【0128】
(付記10)
前記制御部は、cand_min_pos_y≧ref_max_pos_yの場合に、下記(4)式により、前記画面内予測において画面上方向に使用される画像の使用範囲Kを算出する、付記9記載の映像符号化又は映像復号装置。
K=Kup ・・・ (4)
【0129】
(付記11)
前記画面内予測において画面上方向に使用される画像の使用範囲Kに基づいて、前記画面内予測に使用される画像を生成する画像生成部を更に備える、付記9又は10記載の映像符号化又は映像復号装置。
【0130】
(付記12)
前記画像生成部は、K<Kupの場合に、垂直座標位置がcur_by-Kmaxからcur_by-1に属する画像を複製し、垂直座標位置がcur_by-Kupからcur_by-Kmax-1に対応する位置に前記複製した画像をマッピングすることにより、前記画面内予測に使用される画像を生成する、付記11記載の映像符号化又は映像復号装置。
【0131】
(付記13)
処理対象ブロックのための画面内予測に使用される候補画像の位置と前記処理対象ブロックが属するユニットの位置との関係に基づいて、前記画面内予測に使用される画像の使用範囲のうちの前記ユニットの端部を所定方向にまたいで前記画面内予測に使用される部分範囲を、所定の最大範囲以下に制御すること、を含む映像符号化又は映像復号方法。
【0132】
(付記14)
処理対象ブロックのための画面内予測に使用される候補画像の位置と前記処理対象ブロックが属するユニットの位置との関係に基づいて、前記画面内予測に使用される画像の使用範囲のうちの前記ユニットの端部を所定方向にまたいで前記画面内予測に使用される部分範囲を、所定の最大範囲以下に制御すること、を含む映像符号化又は映像復号処理をコンピュータに実行させるためのプログラム。
【0133】
(付記15)
処理対象ブロックのための画面内予測に使用される候補画像の位置と前記処理対象ブロックが属するユニットの位置との関係に基づいて、前記画面内予測に使用される画像の使用範囲のうちの前記ユニットの端部を所定方向にまたいで前記画面内予測に使用される部分範囲を、所定の最大範囲以下に制御すること、を含む映像符号化又は映像復号処理をコンピュータに実行させるためのプログラムを記録したコンピュータに読み取り可能な非一時的記録媒体。
【0134】
この出願は、2018年6月26日に出願された日本出願特願2018-120872を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【0135】
映像を符号化または復号するシステムにおいて、画面内予測に使用される画像の使用範囲を適応的に制御することが可能になる。
【符号の説明】
【0136】
100 画面内予測装置
110 領域制御処理部
111 第1の導出部
113 第2の導出部
115、810、910 制御部
120 参照画像生成部
130 予測画像生成部
800 映像符号化装置
900 映像復号装置