IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ エルジー エレクトロニクス インコーポレイティドの特許一覧

特開2024-125405BDOFを行う画像符号化/復号化方法、装置、及びビットストリームを伝送する方法
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024125405
(43)【公開日】2024-09-18
(54)【発明の名称】BDOFを行う画像符号化/復号化方法、装置、及びビットストリームを伝送する方法
(51)【国際特許分類】
   H04N 19/513 20140101AFI20240910BHJP
   H04N 19/573 20140101ALI20240910BHJP
【FI】
H04N19/513
H04N19/573
【審査請求】有
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2024106620
(22)【出願日】2024-07-02
(62)【分割の表示】P 2022515879の分割
【原出願日】2020-09-09
(31)【優先権主張番号】62/898,531
(32)【優先日】2019-09-10
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】62/904,648
(32)【優先日】2019-09-23
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】502032105
【氏名又は名称】エルジー エレクトロニクス インコーポレイティド
【氏名又は名称原語表記】LG ELECTRONICS INC.
【住所又は居所原語表記】128, Yeoui-daero, Yeongdeungpo-gu, 07336 Seoul,Republic of Korea
(74)【代理人】
【識別番号】100109841
【弁理士】
【氏名又は名称】堅田 健史
(74)【代理人】
【識別番号】230112025
【弁護士】
【氏名又は名称】小林 英了
(72)【発明者】
【氏名】パク,ナリ
(72)【発明者】
【氏名】ナム,ジョンハク
(72)【発明者】
【氏名】ジャン,ヒョンムン
(72)【発明者】
【氏名】キム,スンファン
(57)【要約】      (修正有)
【課題】BDOP(Bi-directionalopticalflow)を行う画像符号化/復号化方法及び装置を提供する。
【解決手段】画像復号化方法であって、現在ブロックの動き情報に基づいて現在ブロックの予測サンプルを導出するステップと、現在ブロックにBDOF(Bi-directionalopticalflow)を適用するか否かを決定するステップと、現在ブロックにBDOFを適用する場合、現在ブロック内の現在サブブロックに対するグラジエントを導出するステップと、グラジエントに基づいて現在サブブロックに対する改善された動きベクトル(vx,vy)を導出するステップと、グラジエント及び前記改善された動きベクトルに基づいてBDOFオフセットを導出するステップと、現在ブロックの予測サンプル及びBDOFオフセットに基づいて現在ブロックに対する改善された予測サンプルを導出するステップと、を含む。
【選択図】図15
【特許請求の範囲】
【請求項1】
画像復号化装置によって行われる画像復号化方法であって、
前記画像復号化方法は、
現在ブロックの動き情報に基づいて前記現在ブロックの予測サンプルを導出するステッ
プと、
前記現在ブロックにBDOF(Bi-directionalopticalflow
)を適用するか否かを決定するステップと、
前記現在ブロックにBDOFを適用する場合、
前記現在ブロック内の現在サブブロックに対するグラジエントを導出するステップと、
前記グラジエントに基づいて前記現在サブブロックに対する改善された動きベクトル(
x,vy)を導出するステップと、
前記グラジエント及び前記改善された動きベクトルに基づいてBDOFオフセットを導
出するステップと、
前記現在ブロックの予測サンプル及び前記BDOFオフセットに基づいて前記現在ブロ
ックに対する改善された予測サンプルを導出するステップと、を含んでなる、画像復号化
方法。
【請求項2】
前記グラジエントを導出するステップは、前記現在ブロックの予測サンプルを第1シフ
ト量だけ右シフトするステップを含み、
前記第1シフト量は、前記現在ブロックのビットデプスに関係なく、固定された値に設
定される、請求項1に記載の画像復号化方法。
【請求項3】
前記第1シフト量は6である、請求項2に記載の画像復号化方法。
【請求項4】
前記改善された動きベクトル(vx,vy)を導出するステップは、
前記現在ブロックの予測サンプルに基づいて第1中間パラメータdiffを導出するス
テップと、
前記グラジエントに基づいて第2中間パラメータtempH及びtempVを導出する
ステップと、を含む、請求項1に記載の画像復号化方法。
【請求項5】
前記第1中間パラメータdiffを導出するステップは、前記現在ブロックの予測サン
プルを第2シフト量だけ右シフトするステップを含み、
前記第2シフト量は、前記現在ブロックのビットデプスに関係なく、固定された値に設
定される、請求項4に記載の画像復号化方法。
【請求項6】
前記第2シフト量は4である、請求項5に記載の画像復号化方法。
【請求項7】
前記第2中間パラメータtempH及びtempVを導出するステップは、前記グラジ
エントに基づいて誘導された値を第3シフト量だけ右シフトするステップを含み、
前記第3シフト量は、前記現在ブロックのビットデプスに関係なく、固定された値に設
定される、請求項4に記載の画像復号化方法。
【請求項8】
前記第3シフト量は1である、請求項7に記載の画像復号化方法。
【請求項9】
前記改善された動きベクトル(vx,vy)は所定の範囲にクリッピングされる、請求項
1に記載の画像復号化方法。
【請求項10】
前記改善された動きベクトル(vx,vy)をクリッピングする前記所定の範囲は、前記
現在ブロックのビットデプスに関係なく、固定された範囲に設定される、請求項9に記載
の画像復号化方法。
【請求項11】
前記BDOFオフセットを導出するステップは、前記グラジエント及び前記改善された
動きベクトルに基づいて誘導された値を所定のシフト量だけ右シフトするステップを含み

前記所定のシフト量は、前記現在ブロックのビットデプスに関係なく、固定された範囲
に設定される、請求項1に記載の画像復号化方法。
【請求項12】
前記現在ブロックに対する改善された予測サンプルを導出するステップは、前記BDO
Fオフセットを所定の範囲にクリッピングするステップを含み、
前記所定の範囲は、前記現在ブロックのビットデプスに基づいて設定される、請求項1
に記載の画像復号化方法。
【請求項13】
画像復号化装置であって、
メモリと、及び
前記少なくとも一つのプロセッサは、
現在ブロックの動き情報に基づいて前記現在ブロックの予測サンプルを導出し、
前記現在ブロックにBDOFを適用するか否かを決定し、前記現在ブロックにBDOF
を適用する場合、前記現在ブロック内の現在サブブロックに対するグラジエントを導出し

前記グラジエントに基づいて前記現在サブブロックに対する改善された動きベクトル(
x,vy)を導出し、
前記グラジエント及び前記改善された動きベクトルに基づいてBDOFオフセットを導
出し、
前記現在ブロックの予測サンプル及び前記BDOFオフセットに基づいて前記現在ブロ
ックに対する改善された予測サンプルを導出する、ように構成される、画像復号化装置。
【請求項14】
画像符号化装置によって行われる画像符号化方法であって、
前記画像符号化方法は、
現在ブロックの動き情報に基づいて前記現在ブロックの予測サンプルを導出するステッ
プと、
前記現在ブロックにBDOFを適用するか否かを決定するステップと、
前記現在ブロックにBDOFを適用する場合、
前記現在ブロック内の現在サブブロックに対するグラジエントを導出するステップと、
前記グラジエントに基づいて前記現在サブブロックに対する改善された動きベクトル(
x,vy)を導出するステップと、
前記グラジエント及び前記改善された動きベクトルに基づいてBDOFオフセットを導
出するステップと、
前記現在ブロックの予測サンプル及び前記BDOFオフセットに基づいて前記現在ブロ
ックに対する改善された予測サンプルを導出するステップと、を含む、画像符号化方法。
【請求項15】
請求項14に記載の画像符号化方法によって生成されたビットストリームを伝送する方
法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、画像符号化/復号化方法、装置、及びビットストリームを伝送する方法に係
り、より詳細には、BDOP(Bi-directionalopticalflow)
を行う画像符号化/復号化方法、装置、及び本開示の画像符号化方法/装置によって生成
されたビットストリームを伝送する方法に関する。
【背景技術】
【0002】
最近、高解像度、高品質の画像、例えばHD(HighDefinition)画像及
びUHD(UltraHighDefinition)画像への需要が多様な分野で増加
している。画像データが高解像度、高品質になるほど、従来の画像データに比べて、伝送
される情報量又はビット量が相対的に増加する。伝送される情報量又はビット量の増加は
、伝送費用と保存費用の増加をもたらす。
【0003】
これにより、高解像度、高品質画像の情報を効果的に伝送又は保存し、再生するための
高効率の画像圧縮技術が求められる。
【発明の概要】
【発明が解決しようとする課題】
【0004】
本開示は、符号化/復号化効率が向上した画像符号化/復号化方法及び装置を提供する
ことを目的とする。
【0005】
また、本開示は、BDOFオフセットを行う画像符号化/復号化方法及び装置を提供す
ることを目的とする。
【0006】
また、本開示は、BDOFを行う画像符号化/復号化方法及び装置を提供することを目
的とする。
【0007】
また、本開示は、本開示による画像符号化方法又は装置によって生成されたビットスト
リームを伝送する方法を提供することを目的とする。
【0008】
また、本開示は、本開示による画像符号化方法又は装置によって生成されたビットスト
リームを保存した記録媒体を提供することを目的とする。
【0009】
また、本開示は、本開示による画像復号化装置によって受信され、復号化されて画像の
復元に利用されるビットストリームを保存した記録媒体を提供することを目的とする。
【0010】
本開示で解決しようとする技術的課題は上述した技術的課題に制限されず、上述してい
ない別の技術的課題は以降の記載から本開示の属する技術分野における通常の知識を有す
る者(当業者)に明確に理解できるだろう。
【課題を解決するための手段】
【0011】
本開示の一態様による画像復号化方法は、画像復号化装置によって行われる画像復号化
方法であって、現在ブロックの動き情報に基づいて前記現在ブロックの予測サンプルを導
出するステップと、前記現在ブロックにBDOFを適用するか否かを決定するステップと
、前記現在ブロックにBDOFを適用する場合、前記現在ブロック内の現在サブブロック
に対するグラジエントを導出するステップと、前記グラジエントに基づいて前記現在サブ
ブロックに対する改善された動きベクトル(vx,vy)を導出するステップと、前記グラ
ジエント及び前記改善された動きベクトルに基づいてBDOFオフセットを導出するステ
ップと、前記現在ブロックの予測サンプル及び前記BDOFオフセットに基づいて前記現
在ブロックに対する改善された予測サンプルを導出するステップと、を含む(備える;構
成する;構築する;包接する;包含する;含有する)ことができる。
【0012】
本開示による画像復号化方法において、前記グラジエントを導出するステップは、前記
現在ブロックの予測サンプルを第1シフト量だけ右シフトするステップを含み、前記第1
シフト量は、前記現在ブロックのビットデプスに関係なく、固定された値に設定されるこ
とができる。
【0013】
本開示による画像復号化方法において、前記第1シフト量は6であり得る。
【0014】
本開示による画像復号化方法において、前記改善された動きベクトル(vx,vy)を導
出するステップは、前記現在ブロックの予測サンプルに基づいて第1中間パラメータdi
ffを導出するステップと、前記グラジエントに基づいて第2中間パラメータtempH
及びtempVを導出するステップと、を含むことができる。
【0015】
本開示による画像復号化方法において、前記第1中間パラメータdiffを導出するス
テップは、前記現在ブロックの予測サンプルを第2シフト量だけ右シフトするステップを
含み、前記第2シフト量は、前記現在ブロックのビットデプスに関係なく、固定された値
に設定されることができる。
【0016】
本開示による画像復号化方法において、前記第2シフト量は4であり得る。
【0017】
本開示による画像復号化方法において、前記第2中間パラメータtempH及びtem
pVを導出するステップは、前記グラジエントに基づいて誘導された値を第3シフト量だ
け右シフトするステップを含み、前記第3シフト量は、前記現在ブロックのビットデプス
に関係なく、固定された値に設定されることができる。
【0018】
本開示による画像復号化方法において、前記第3シフト量は1であり得る。
【0019】
本開示による画像復号化方法において、前記改善された動きベクトル(vx,vy)は、
所定の範囲にクリッピングされることができる。
【0020】
本開示による画像復号化方法において、前記改善された動きベクトル(vx,vy)をク
リッピングする前記所定の範囲は、前記現在ブロックのビットデプスに関係なく、固定さ
れた範囲に設定されることができる。
【0021】
本開示による画像復号化方法において、前記BDOFオフセットを導出するステップは
、前記グラジエント及び前記改善された動きベクトルに基づいて誘導された値を所定のシ
フト量だけ右シフトするステップを含み、前記所定のシフト量は、前記現在ブロックのビ
ットデプスに関係なく、固定された範囲に設定されることができる。
【0022】
本開示による画像復号化方法において、前記現在ブロックに対する改善された予測サン
プルを導出するステップは、前記BDOFオフセットを所定の範囲にクリッピングするス
テップを含み、前記所定の範囲は、前記現在ブロックのビットデプスに基づいて設定され
ることができる。
【0023】
本開示の他の態様による画像復号化装置は、メモリ及び少なくとも一つのプロセッサを
含み、前記少なくとも一つのプロセッサは、現在ブロックの動き情報に基づいて前記現在
ブロックの予測サンプルを導出し、前記現在ブロックにBDOFを適用するか否かを決定
し、前記現在ブロックにBDOFを適用する場合、前記現在ブロック内の現在サブブロッ
クに対するグラジエントを導出し、前記グラジエントに基づいて前記現在サブブロックに
対する改善された動きベクトル(vx,vy)を導出し、前記グラジエント及び前記改善さ
れた動きベクトルに基づいてBDOFオフセットを導出し、前記現在ブロックの予測サン
プル及び前記BDOFオフセットに基づいて前記現在ブロックに対する改善された予測サ
ンプルを導出することができる。
【0024】
本開示の別の態様による画像符号化方法は、画像符号化装置によって行われる画像符号
化方法であって、現在ブロックの動き情報に基づいて前記現在ブロックの予測サンプルを
導出するステップと、前記現在ブロックにBDOFを適用するか否かを決定するステップ
と、前記現在ブロックにBDOFを適用する場合、前記現在ブロック内の現在サブブロッ
クに対するグラジエントを導出するステップと、前記グラジエントに基づいて前記現在サ
ブブロックに対する改善された動きベクトル(vx,vy)を導出するステップと、前記グ
ラジエント及び前記改善された動きベクトルに基づいてBDOFオフセットを導出するス
テップと、前記現在ブロックの予測サンプル及び前記BDOFオフセットに基づいて前記
現在ブロックに対する改善された予測サンプルを導出するステップと、を含むことができ
る。
【0025】
本開示の別の態様による伝送方法は、本開示の画像符号化装置又は画像符号化方法によ
って生成されたビットストリームを伝送することができる。
【0026】
本開示の別の態様によるコンピュータ可読記録媒体は、本開示の画像符号化方法又は画
像符号化装置によって生成されたビットストリームを保存することができる。
【0027】
本開示について簡略に要約して上述した特徴は、後述する本開示の詳細な説明の例示的
な態様に過ぎず、本開示の範囲を制限するものではない。
【発明の効果】
【0028】
本開示によれば、符号化/復号化効率が向上した画像符号化/復号化方法及び装置が提
供されることができる。
【0029】
また、本開示によれば、BDOFオフセットを導出する画像符号化/復号化方法及び装
置が提供されることができる。
【0030】
また、本開示によれば、BDOFを行う画像符号化/復号化方法及び装置が提供される
ことができる。
【0031】
また、本開示によれば、本開示による画像符号化方法又は装置によって生成されたビッ
トストリームを伝送する方法が提供されることができる。
【0032】
また、本開示によれば、本開示による画像符号化方法又は装置によって生成されたビッ
トストリームを保存した記録媒体が提供されることができる。
【0033】
また、本開示によれば、本開示による画像復号化装置によって受信され、復号化されて
画像の復元に利用されるビットストリームを保存した記録媒体が提供されることができる
【0034】
本開示で得られる効果は、上述した効果に限定されず、上述していない別の効果は、以
降の記載から、本開示の属する技術分野における通常の知識を有する者に明確に理解でき
るだろう。
【図面の簡単な説明】
【0035】
図1】本開示による実施例が適用できるビデオコーディングシステムを概略的に示す図である。
図2】本開示による実施例が適用できる画像符号化装置を概略的に示す図である。
図3】本開示による実施例が適用できる画像復号化装置を概略的に示す図である。
図4】インター予測に基づくビデオ/画像符号化方法を示すフローチャートである。
図5】本開示によるインター予測部180の構成を例示的に示す図である。
図6】インター予測に基づくビデオ/画像復号化方法を示すフローチャートである。
図7】本開示によるインター予測部260の構成を例示的に示す図である。
図8】空間マージ候補として用いられる周辺ブロックを例示する図である。
図9】本開示の一例によるマージ候補リスト構成方法を概略的に示す図である。
図10】空間候補に対して行われる冗長性チェックのための候補ペアを例示する図である。
図11】時間候補の動きベクトルをスケーリングする方法を説明するための図である。
図12】時間候補を誘導する位置を説明するための図である。
図13】本開示の一例による動きベクトル予測子候補リスト構成方法を概略的に示す図である。
図14】BDOFを行うために拡張されたCUを示す図である。
図15】BDOFを適用して現在ブロックの予測サンプルを導出する過程を説明するための図である。
図16】本開示の一実施例によるBDOF過程の入力と出力を説明するための図である。
図17】本開示の一実施例によるBDOF過程に用いられる変数を説明するための図である。
図18】本開示の一実施例によって、BDOFの適用如何に基づいて現在CU内の各サブブロックに対する予測サンプルを生成する方法を説明するための図である。
図19】本開示の一実施例によって、現在サブブロックのグラジエント、自己相関及び交差相関を誘導する方法を説明するための図である。
図20】本開示の一実施例によって、改善された動きベクトル(motionrefinement、vx,vy)を誘導し、BDOFオフセットを誘導し、現在サブブロックの予測サンプルを生成する方法を説明するための図である。
図21】本開示の他の実施例によるBDOF過程に用いられる変数を説明するための図である。
図22】本開示の他の実施例によって、現在サブブロックのグラジエント、自己相関及び交差相関を誘導する方法を説明するための図である。
図23】本開示の他の実施例によって、改善された動きベクトル(motionrefinement、vx,vy)を誘導し、BDOFオフセットを誘導し、現在サブブロックの予測サンプルを生成する方法を説明するための図である。
図24】本開示の別の実施例によるBDOF過程に用いられる変数を説明するための図である。
図25】本開示の別の実施例によって、現在サブブロックのグラジエント、自己相関及び交差相関を誘導する方法を説明するための図である。
図26】本開示の別の実施例によるBDOF過程に用いられる変数を説明するための図である。
図27】本開示の別の実施例によって、現在サブブロックのグラジエント、自己相関及び交差相関を誘導する方法を説明するための図である。
図28】本開示の実施例が適用できるコンテンツストリーミングシステムを例示した図である。
【発明を実施するための形態】
【0036】
以下、添付図面を参照して、本開示の実施例について、本開示の属する技術分野におけ
る通常の知識を有する者が容易に実施し得るように詳細に説明する。しかし、本開示は、
様々な異なる形態で実現でき、ここで説明する実施例に限定されない。
【0037】
本開示の実施例を説明するにあたり、公知の構成又は機能についての具体的な説明が本
開示の要旨を不明確にするおそれがあると判断される場合には、それについての詳細な説
明は省略する。そして、図面において、本開示についての説明と関係ない部分は省略し、
同様の部分には同様の図面符号を付した。
【0038】
本開示において、ある構成要素が他の構成要素と「連結」、「結合」又は「接続」され
ているとするとき、これは、直接的な連結関係だけでなく、それらの間に別の構成要素が
存在する間接的な連結関係も含むことができる。また、ある構成要素が他の構成要素を「
含む」又は「有する」とするとき、これは、特に反対される記載がない限り、別の構成要
素を排除するのではなく、別の構成要素をさらに含むことができることを意味する。
【0039】
本開示において、「第1」、「第2」などの用語は、一つの構成要素を他の構成要素か
ら区別する目的のみで使用され、特に言及されない限り、構成要素間の順序又は重要度な
どを限定しない。したがって、本開示の範囲内において、一実施例の第1構成要素を他の
実施例で第2構成要素と呼んでもよく、これと同様に、一実施例の第2構成要素を他の実
施例で第1構成要素と呼んでもよい。
【0040】
本開示において、互いに区別される構成要素は、それぞれの特徴を明確に説明するため
のものであり、構成要素が必ずしも分離されることを意味するものではない。つまり、複
数の構成要素が統合されて一つのハードウェア又はソフトウェア単位で構成されてもよく
、一つの構成要素が分散されて複数のハードウェア又はソフトウェア単位で構成されても
よい。よって、別に言及しなくても、このように統合された又は分散された実施例も本開
示の範囲に含まれる。
【0041】
本開示において、さまざまな実施例で説明する構成要素が必ず必要不可欠な構成要素を
意味するものではなく、一部は選択的な構成要素であり得る。したがって、一実施例で説
明する構成要素の部分集合で構成される実施例も本開示の範囲に含まれる。また、様々な
実施例で説明する構成要素にさらに他の構成要素を含む実施例も、本開示の範囲に含まれ
る。
【0042】
本開示は、画像の符号化及び復号化に関するものであって、本開示で使用される用語は
、本開示で新たに定義されない限り、本開示の属する技術分野における通常の意味を持つ
ことができる。
【0043】
本開示において、「ピクチャ(picture)」は、一般的に、特定の時間帯のいず
れか一つの画像を示す単位を意味し、スライス(slice)/タイル(tile)は、
ピクチャの一部を構成する符号化単位であって、一つのピクチャは、一つ以上のスライス
/タイルで構成できる。また、スライス/タイルは、一つ以上のCTU(codingt
reeunit)を含むことができる。
【0044】
本開示において、「ピクセル(pixel)」又は「ペル(pel)」は、一つのピク
チャ(又は画像)を構成する最小の単位を意味することができる。また、ピクセルに対応
する用語として「サンプル(sample)」が使用できる。サンプルは、一般的に、ピ
クセル又はピクセルの値を示すことができ、ルマ(luma)成分のピクセル/ピクセル
値のみを示すこともでき、クロマ(chroma)成分のピクセル/ピクセル値のみを示
すこともできる。
【0045】
本開示において、「ユニット(unit)」は、画像処理の基本単位を示すことができ
る。ユニットは、ピクチャの特定の領域及び当該領域に関連する情報のうちの少なくとも
一つを含むことができる。ユニットは、場合に応じて、「サンプルアレイ」、「ブロック
(block)」又は「領域(area)」などの用語と混用して使用できる。一般な場
合、M×Nブロックは、M個の列とN個の行からなるサンプル(又はサンプルアレイ)又
は変換係数(transformcoefficient)のセット(又はアレイ)を含
むことができる。
【0046】
本開示において、「現在ブロック」は、「現在コーディングブロック」、「現在コーデ
ィングユニット」、「符号化対象ブロック」、「復号化対象ブロック」又は「処理対象ブ
ロック」のうちのいずれか一つを意味することができる。予測が行われる場合、「現在ブ
ロック」は、「現在予測ブロック」又は「予測対象ブロック」を意味することができる。
変換(逆変換)/量子化(逆量子化)が行われる場合、「現在ブロック」は「現在変換ブ
ロック」又は「変換対象ブロック」を意味することができる。フィルタリングが行われる
場合、「現在ブロック」は「フィルタリング対象ブロック」を意味することができる。
【0047】
本開示において、「/」と「、」は「及び/又は」と解釈されることができる。例えば
、「A/B」と「A、B」は「A及び/又はB」と解釈されることができる。また、「A
/B/C」と「A、B、C」は、「A、B及び/又はCのうちの少なくとも一つ」を意味
することができる。
【0048】
本開示において、「又は」は「及び/又は」と解釈されることができる。例えば、「A
又はB」は、1)「A」のみを意味するか、2)「B」のみを意味するか、3)「A及び
B」を意味することができる。又は、本開示において、「又は」は、「追加的に又は代替
的に(additionallyoralternatively)」を意味することが
できる。
【0049】
ビデオコーディングシステムの概要
【0050】
図1は本開示によるビデオコーディングシステムを示す図である。
【0051】
一実施例によるビデオコーディングシステムは、符号化装置10及び復号化装置20を
含むことができる。符号化装置10は、符号化されたビデオ(video)及び/又は画
像(image)情報又はデータをファイルまたはストリーミング形式でデジタル記憶媒
体又はネットワークを介して復号化装置20へ伝達することができる。
【0052】
一実施例による符号化装置10は、ビデオソース生成部11、符号化部12及び伝送部
13を含むことができる。一実施例による復号化装置20は、受信部21、復号化部22
及びレンダリング部23を含むことができる。前記符号化部12は、ビデオ/画像符号化
部と呼ばれることができ、前記復号化部22は、ビデオ/画像復号化部と呼ばれることが
できる。伝送部13は、符号化部12に含まれることができる。受信部21は、復号化部
22に含まれることができる。レンダリング部23は、ディスプレイ部を含むこともでき
、ディスプレイ部は、別個のデバイス又は外部コンポーネントとして構成されることもで
きる。
【0053】
ビデオソース生成部11は、ビデオ/画像のキャプチャ、合成又は生成過程などを介し
てビデオ/画像を取得することができる。ビデオソース生成部11は、ビデオ/画像キャ
プチャデバイス及び/又はビデオ/画像生成デバイスを含むことができる。ビデオ/画像
キャプチャデバイスは、例えば、一つ以上のカメラ、以前にキャプチャされたビデオ/画
像を含むビデオ/画像アーカイブなどを含むことができる。ビデオ/画像生成デバイスは
、例えば、コンピュータ、タブレット及びスマートフォンなどを含むことができ、(電子
的に)ビデオ/画像を生成することができる。例えば、コンピュータなどを介して仮想の
ビデオ/画像が生成されることができ、この場合、ビデオ/画像キャプチャ過程は、関連
データが生成される過程に置き換えられることができる。
【0054】
符号化部12は、入力ビデオ/画像を符号化することができる。符号化部12は、圧縮
及び符号化効率のために、予測、変換、量子化などの一連の手順を行うことができる。符
号化部12は、符号化されたデータ(符号化されたビデオ/画像情報)をビットストリー
ム(bitstream)形式で出力することができる。
【0055】
伝送部13は、ビットストリーム形式で出力された、符号化されたビデオ/画像情報又
はデータを、ファイルまたはストリーミング形式でデジタル記憶媒体又はネットワークを
介して復号化装置20の受信部21に伝達することができる。デジタル記憶媒体は、US
B、SD、CD、DVD、Blu-ray(登録商標)、HDD、SSDなどのさまざま
な記憶媒体を含むことができる。伝送部13は、予め決められたファイルフォーマットを
介してメディアファイルを生成するためのエレメントを含むことができ、放送/通信ネッ
トワークを介して伝送するためのエレメントを含むことができる。受信部21は、前記記
憶媒体又はネットワークから前記ビットストリームを抽出/受信して復号化部22に伝達
することができる。
【0056】
復号化部22は、符号化部12の動作に対応する逆量子化、逆変換、予測などの一連の
手順を行ってビデオ/画像を復号化することができる。
【0057】
レンダリング部23は、復号化されたビデオ/画像をレンダリングすることができる。
レンダリングされたビデオ/画像は、ディスプレイ部を介して表示されることができる。
【0058】
画像符号化装置の概要
【0059】
図2は本開示による実施例が適用できる画像符号化装置を概略的に示す図である。
【0060】
図2に示されているように、画像符号化装置100は、画像分割部110、減算部11
5、変換部120、量子化部130、逆量子化部140、逆変換部150、加算部155
、フィルタリング部160、メモリ170、インター予測部180、イントラ予測部18
5及びエントロピー符号化部190を含むことができる。インター予測部180及びイン
トラ予測部185は、合わせて「予測部」と呼ばれることができる。変換部120、量子
化部130、逆量子化部140及び逆変換部150は、レジデュアル(residual
)処理部に含まれることができる。レジデュアル処理部は減算部115をさらに含むこと
もできる。
【0061】
画像符号化装置100を構成する複数の構成部の全部又は少なくとも一部は、実施例に
よって一つのハードウェアコンポーネント(例えば、エンコーダ又はプロセッサ)で実現
されることができる。また、メモリ170は、DPB(decodedpictureb
uffer)を含むことができ、デジタル記憶媒体によって実現できる。
【0062】
画像分割部110は、画像符号化装置100に入力された入力画像(又は、ピクチャ、
フレーム)を一つ以上の処理ユニット(processingunit)に分割すること
ができる。一例として、前記処理ユニットは、コーディングユニット(codingun
it、CU)と呼ばれることができる。コーディングユニットは、コーディングツリーユ
ニット(codingtreeunit、CTU)又は最大コーディングユニット(la
rgestcodingunit、LCU)をQT/BT/TT(Quad-tree/
binary-tree/ternary-tree)構造によって再帰的に(recu
rsively)分割することにより取得されることができる。例えば、一つのコーディ
ングニットは、四分木構造、二分木構造及び/又は三分木構造に基づいて、下位(dee
per)デプスの複数のコーディングユニットに分割されることができる。コーディング
ユニットの分割のために、四分木構造が先に適用され、二分木構造及び/又は三分木構造
が後で適用されることができる。それ以上分割されない最終コーディングユニットを基に
、本開示によるコーディング手順が行われることができる。最大コーディングユニットが
最終コーディングユニットとして使用されることができ、最大コーディングユニットを分
割して取得した下位デプスのコーディングユニットが最終コーディングユニットとして使
用されることもできる。ここで、コーディング手順とは、後述する予測、変換及び/又は
復元などの手順を含むことができる。他の例として、前記コーディング手順の処理ユニッ
トは、予測ユニット(PU:PredictionUnit)又は変換ユニット(TU:
TransformUnit)であることができる。前記予測ユニット及び前記変換ユニ
ットは、それぞれ前記最終コーディングユニットから分割又はパーティショニングされる
ことができる。前記予測ユニットは、サンプル予測の単位であることができ、前記変換ユ
ニットは、変換係数を誘導する単位、及び/又は変換係数からレジデュアル信号(res
idualsignal)を誘導する単位であることができる。
【0063】
予測部(インター予測部180又はイントラ予測部185)は、処理対象ブロック(現
在ブロック)に対する予測を行い、前記現在ブロックに対する予測サンプルを含む予測さ
れたブロック(predictedblock)を生成することができる。予測部は、現
在ブロック又はCU単位でイントラ予測が適用されるか、或いはインター予測が適用され
るかを決定することができる。予測部は、現在ブロックの予測に関するさまざまな情報を
生成してエントロピー符号化部190に伝達することができる。予測に関する情報は、エ
ントロピー符号化部190で符号化されてビットストリーム形式で出力されることができ
る。
【0064】
イントラ予測部185は、現在ピクチャ内のサンプルを参照して現在ブロックを予測す
ることができる。参照される前記サンプルは、イントラ予測モード及び/又はイントラ予
測技法に従って、前記現在ブロックの周辺(neighbor)に位置することもでき、
或いは離れて位置することもできる。イントラ予測モードは、複数の非方向性モードと複
数の方向性モードを含むことができる。非方向性モードは、例えば、DCモード及びプラ
ンナーモード(Planarモード)を含むことができる。方向性モードは、予測方向の
細かい程度に応じて、例えば33個の方向性予測モード又は65個の方向性予測モードを
含むことができる。ただし、これは例示に過ぎず、設定に基づいてそれ以上又はそれ以下
の個数の方向性予測モードが使用できる。イントラ予測部185は、周辺ブロックに適用
された予測モードを用いて、現在ブロックに適用される予測モードを決定することもでき
る。
【0065】
インター予測部180は、参照ピクチャ上で動きベクトルによって特定される参照ブロ
ック(参照サンプルアレイ)に基づいて、現在ブロックに対する予測されたブロックを誘
導することができる。この時、インター予測モードで伝送される動き情報の量を減らすた
めに、周辺ブロックと現在ブロックとの動き情報の相関性に基づいて動き情報をブロック
、サブブロック又はサンプル単位で予測することができる。前記動き情報は、動きベクト
ル及び参照ピクチャインデックスを含むことができる。前記動き情報は、インター予測方
向(L0予測、L1予測、Bi予測など)情報をさらに含むことができる。インター予測
の場合、周辺ブロックは、現在ピクチャ内に存在する空間周辺ブロック(spatial
neighboringblock)と、参照ピクチャに存在する時間周辺ブロック(t
emporalneighboringblock)を含むことができる。前記参照ブロ
ックを含む参照ピクチャと、前記時間周辺ブロックを含む参照ピクチャとは、同一でもよ
く、互いに異なってもよい。前記時間周辺ブロックは、コロケート参照ブロック(col
locatedreferenceblock)、コロケートCU(colCU)などの
名前で呼ばれることができる。前記時間周辺ブロックを含む参照ピクチャは、コロケート
ピクチャ(collocatedpicture、colPic)と呼ばれることができ
る。例えば、インター予測部180は、周辺ブロックに基づいて動き情報候補リストを構
成し、前記現在ブロックの動きベクトル及び/又は参照ピクチャインデックスを導出する
ために、どの候補が使用されるかを指示する情報を生成することができる。様々な予測モ
ードに基づいてインター予測が行われることができ、例えばスキップモードとマージモー
ドの場合に、インター予測部180は、周辺ブロックの動き情報を現在ブロックの動き情
報として用いることができる。スキップモードの場合、マージモードとは異なり、レジデ
ュアル信号が伝送されないことができる。動き情報予測(motionvectorpr
ediction、MVP)モードの場合、周辺ブロックの動きベクトルを動きベクトル
予測子(motionvectorpredictor)として用い、動きベクトル差分
(motionvectordifference)及び動きベクトル予測子に対するイ
ンジケータ(indicator)を符号化することにより、現在ブロックの動きベクト
ルをシグナリングすることができる。動きベクトル差分は、現在ブロックの動きベクトル
と動きベクトル予測子との差を意味することができる。
【0066】
予測部は、後述する様々な予測方法及び/又は予測技法に基づいて予測信号を生成する
ことができる。例えば、予測部は、現在ブロックの予測のために、イントラ予測又はイン
ター予測を適用することができるだけでなく、イントラ予測とインター予測を同時に適用
することができる。現在ブロックの予測のためにイントラ予測とインター予測を同時に適
用する予測方法は、CIIP(combinedinterandintrapredi
ction)と呼ばれることができる。また、予測部は、現在ブロックの予測のためにイ
ントラブロックコピー(intrablockcopy、IBC)を行うこともできる。
イントラブロックコピーは、例えば、SCC(screencontentcoding
)などのようにゲームなどのコンテンツ画像/動画コーディングのために使用できる。I
BCは、現在ブロックから所定の距離だけ離れた位置の現在ピクチャ内の既に復元された
参照ブロックを用いて現在ブロックを予測する方法である。IBCが適用される場合、現
在ピクチャ内の参照ブロックの位置は、前記所定の距離に該当するベクトル(ブロックベ
クトル)として符号化されることができる。
【0067】
予測部によって生成された予測信号は、復元信号を生成するために用いられるか、或い
はレジデュアル信号を生成するために用いられることができる。減算部115は、入力画
像信号(原本ブロック、原本サンプルアレイ)から、予測部から出力された予測信号(予
測されたブロック、予測サンプルアレイ)を減算して、レジデュアル信号(residu
alsignal、残余ブロック、残余サンプルアレイ)を生成することができる。生成
されたレジデュアル信号は、変換部120に伝送されることができる。
【0068】
変換部120は、レジデュアル信号に変換技法を適用して変換係数(transfor
mcoefficients)を生成することができる。例えば、変換技法は、DCT(
DiscreteCosineTransform)、DST(DiscreteSin
eTransform)、KLT(Karhunen-LoeveTransform)
、GBT(Graph-BasedTransform)、又はCNT(Conditi
onallyNon-linearTransform)のうちの少なくとも一つを含む
ことができる。ここで、GBTは、ピクセル間の関係情報をグラフで表現するとするとき
、このグラフから得られた変換を意味する。CNTは、以前に復元されたすべてのピクセ
ル(allpreviouslyreconstructedpixel)を用いて予測
信号を生成し、それに基づいて取得される変換を意味する。変換過程は、正方形の同じサ
イズを有するピクセルブロックに適用されることもでき、正方形ではない、可変サイズの
ブロックに適用されることもできる。
【0069】
量子化部130は、変換係数を量子化してエントロピー符号化部190に伝送すること
ができる。エントロピー符号化部190は、量子化された信号(量子化された変換係数に
関する情報)を符号化してビットストリーム形式で出力することができる。前記量子化さ
れた変換係数に関する情報は、レジデュアル情報と呼ばれることができる。量子化部13
0は、係数スキャン順序(scanorder)に基づいて、ブロック形式の量子化され
た変換係数を1次元ベクトル形式で再整列することができ、前記1次元ベクトル形式の量
子化された変換係数に基づいて、前記量子化された変換係数に関する情報を生成すること
もできる。
【0070】
エントロピー符号化部190は、例えば、指数ゴロム(exponentialGol
omb)、CAVLC(context-adaptivevariablelengt
hcoding)、CABAC(context-adaptivebinaryari
thmeticcoding)などの様々な符号化方法を行うことができる。エントロピ
ー符号化部190は、量子化された変換係数の他に、ビデオ/画像復元に必要な情報(例
えば、シンタックス要素(syntaxelements)の値など)を一緒に又は別々
に符号化することもできる。符号化された情報(例えば、符号化されたビデオ/画像情報
)は、ビットストリーム形式でNAL(networkabstractionlaye
r)ユニット単位で伝送又は保存されることができる。前記ビデオ/画像情報は、適応パ
ラメータセット(APS)、ピクチャパラメータセット(PPS)、シーケンスパラメー
タセット(SPS)又はビデオパラメータセット(VPS)などの様々なパラメータセッ
トに関する情報をさらに含むことができる。また、前記ビデオ/画像情報は、一般制限情
報(generalconstraintinformation)をさらに含むことが
できる。本開示で言及されたシグナリング情報、伝送される情報及び/又はシンタックス
要素は、上述した符号化手順を介して符号化されて前記ビットストリームに含まれること
ができる。
【0071】
前記ビットストリームは、ネットワークを介して伝送されることができ、又はデジタル
記憶媒体に保存されることができる。ここで、ネットワークは、放送網及び/又は通信網
などを含むことができ、デジタル記憶媒体は、USB、SD、CD、DVD、Blu-r
ay(登録商標)、HDD、SSDなどのさまざまな記憶媒体を含むことができる。エン
トロピー符号化部190から出力された信号を伝送する伝送部(図示せず)及び/又は保
存する保存部(図示せず)が画像符号化装置100の内/外部要素として備えられること
ができ、又は伝送部はエントロピー符号化部190の構成要素として備えられることもで
きる。
【0072】
量子化部130から出力された、量子化された変換係数は、レジデュアル信号を生成す
るために用いられることができる。例えば、量子化された変換係数に逆量子化部140及
び逆変換部150を介して逆量子化及び逆変換を適用することにより、レジデュアル信号
(レジデュアルブロック又はレジデュアルサンプル)を復元することができる。
【0073】
加算部155は、復元されたレジデュアル信号をインター予測部180又はイントラ予
測部185から出力された予測信号に加えることにより、復元(reconstruct
ed)信号(復元ピクチャ、復元ブロック、復元サンプルアレイ)を生成することができ
る。スキップモードが適用された場合のように処理対象ブロックに対するレジデュアルが
ない場合、予測されたブロックが復元ブロックとして使用されることができる。加算部1
55は、復元部又は復元ブロック生成部と呼ばれることができる。生成された復元信号は
、現在ピクチャ内の次の処理対象ブロックのイントラ予測のために使用されることができ
、後述するようにフィルタリングを経て次のピクチャのインター予測のために使用される
こともできる。
【0074】
一方、後述するように、ピクチャ符号化過程でLMCS(lumamappingwi
thchromascaling)が適用されることもできる。
【0075】
フィルタリング部160は、復元信号にフィルタリングを適用して主観的/客観的画質
を向上させることができる。例えば、フィルタリング部160は、復元ピクチャに様々な
フィルタリング方法を適用して、修正された(modified)復元ピクチャを生成す
ることができ、前記修正された復元ピクチャをメモリ170、具体的にはメモリ170の
DPBに保存することができる。前記様々なフィルタリング方法は、例えば、デブロッキ
ングフィルタリング、サンプル適応的オフセット(sampleadaptiveoff
set)、適応的ループフィルタ(adaptiveloopfilter)、双方向フ
ィルタ(bilateralfilter)などを含むことができる。フィルタリング部
160は、各フィルタリング方法についての説明で後述するようにフィルタリングに関す
る様々な情報を生成してエントロピー符号化部190に伝達することができる。フィルタ
リングに関する情報は、エントロピー符号化部190で符号化されてビットストリーム形
式で出力されることができる。
【0076】
メモリ170に伝送された、修正された復元ピクチャは、インター予測部180で参照
ピクチャとして使用されることができる。画像符号化装置100は、これを介してインタ
ー予測が適用される場合、画像符号化装置100と画像復号化装置での予測ミスマッチを
回避することができ、符号化効率も向上させることができる。
【0077】
メモリ170内のDPBは、インター予測部180での参照ピクチャとして使用するた
めに、修正された復元ピクチャを保存することができる。メモリ170は、現在ピクチャ
内の動き情報が導出された(又は符号化された)ブロックの動き情報及び/又は既に復元
されたピクチャ内ブロックの動き情報を保存することができる。前記保存された動き情報
は、空間周辺ブロックの動き情報又は時間周辺ブロックの動き情報として活用するために
、インター予測部180に伝達されることができる。メモリ170は、現在ピクチャ内の
復元されたブロックの復元サンプルを保存することができ、イントラ予測部185に伝達
することができる。
【0078】
画像復号化装置の概要
【0079】
図3は本開示による実施例が適用できる画像復号化装置を概略的に示す図である。
【0080】
図3に示されているように、画像復号化装置200は、エントロピー復号化部210、
逆量子化部220、逆変換部230、加算部235、フィルタリング部240、メモリ2
50、インター予測部260及びイントラ予測部265を含んで構成できる。インター予
測部260及びイントラ予測部265を合わせて「予測部」と呼ばれることができる。逆
量子化部220、逆変換部230はレジデュアル処理部に含まれることができる。
【0081】
画像復号化装置200を構成する複数の構成部の全部又は少なくとも一部は、実施例に
よって一つのハードウェアコンポーネント(例えば、デコーダ又はプロセッサ)で実現さ
れることができる。また、メモリ170は、DPBを含むことができ、デジタル記憶媒体
によって実現できる。
【0082】
ビデオ/画像情報を含むビットストリームを受信した画像復号化装置200は、図1
画像符号化装置100で行われたプロセスに対応するプロセスを実行して画像を復元する
ことができる。例えば、画像復号化装置200は、画像符号化装置で適用された処理ユニ
ットを用いて復号化を行うことができる。したがって、復号化の処理ユニットは、例えば
コーディングユニットであることができる。コーディングユニットは、コーディングツリ
ーユニット又は最大コーディングユニットを分割して取得できる。そして、画像復号化装
置200を介して復号化及び出力された復元画像信号は、再生装置(図示せず)を介して
再生できる。
【0083】
画像復号化装置200は、図1の画像符号化装置から出力された信号をビットストリー
ム形式で受信することができる。受信された信号は、エントロピー復号化部210を介し
て復号化できる。例えば、エントロピー復号化部210は、前記ビットストリームをパー
シングして画像復元(又はピクチャ復元)に必要な情報(例えば、ビデオ/画像情報)を
導出することができる。前記ビデオ/画像情報は、適応パラメータセット(APS)、ピ
クチャパラメータセット(PPS)、シーケンスパラメータセット(SPS)又はビデオ
パラメータセット(VPS)などの様々なパラメータセットに関する情報をさらに含むこ
とができる。また、前記ビデオ/画像情報は、一般制限情報(generalconst
raintinformation)をさらに含むことができる。画像復号化装置は、画
像を復号化するために、前記パラメータセットに関する情報及び/又は前記一般制限情報
をさらに用いることができる。本開示で言及されたシグナリング情報、受信される情報及
び/又はシンタックス要素は、前記復号化手順を介して復号化されることにより、前記ビ
ットストリームから取得されることができる。例えば、エントロピー復号化部210は、
指数ゴロム符号化、CAVLC又はCABACなどのコーディング方法に基づいてビット
ストリーム内の情報を復号化し、画像復元に必要なシンタックス要素の値、レジデュアル
に関する変換係数の量子化された値を出力することができる。より詳細には、CABAC
エントロピー復号化方法は、ビットストリームから各シンタックス要素に該当するビン(
bin)を受信し、復号化対象シンタックス要素情報と周辺ブロック及び復号化対象ブロ
ックの復号化情報、或いは以前ステップで復号化されたシンボル/ビンの情報を用いてコ
ンテキスト(context)モデルを決定し、決定されたコンテキストモデルに基づい
てビン(bin)の発生確率を予測してビンの算術復号化(arithmeticdec
oding)を行うことにより、各シンタックス要素の値に該当するシンボルを生成する
ことができる。この時、CABACエントロピー復号化方法は、コンテキストモデルの決
定後、次のシンボル/ビンのコンテキストモデルのために、復号化されたシンボル/ビン
の情報を用いてコンテキストモデルを更新することができる。エントロピー復号化部21
0で復号化された情報のうち、予測に関する情報は、予測部(インター予測部260及び
イントラ予測部265)に提供され、エントロピー復号化部210でエントロピー復号化
が行われたレジデュアル値、すなわち量子化された変換係数及び関連パラメータ情報は、
逆量子化部220に入力されることができる。また、エントロピー復号化部210で復号
化された情報のうち、フィルタリングに関する情報は、フィルタリング部240に提供さ
れることができる。一方、画像符号化装置から出力された信号を受信する受信部(図示せ
ず)が画像復号化装置200の内/外部要素としてさらに備えられることができ、又は受
信部はエントロピー復号化部210の構成要素として備えられることもできる。
【0084】
一方、本開示による画像復号化装置は、ビデオ/画像/ピクチャ復号化装置と呼ばれる
ことができる。前記画像復号化装置は、情報デコーダ(ビデオ/画像/ピクチャ情報デコ
ーダ)及び/又はサンプルデコーダ(ビデオ/画像/ピクチャサンプルデコーダ)を含む
こともできる。前記情報デコーダは、エントロピー復号化部210を含むことができ、前
記サンプルデコーダは、逆量子化部220、逆変換部230、加算部235、フィルタリ
ング部240、メモリ250、インター予測部260及びイントラ予測部265のうちの
少なくとも一つを含むことができる。
【0085】
逆量子化部220では、量子化された変換係数を逆量子化して変換係数を出力すること
ができる。逆量子化部220は、量子化された変換係数を2次元のブロック形式で再整列
することができる。この場合、前記再整列は、画像符号化装置で行われた係数スキャン順
序に基づいて行われることができる。逆量子化部220は、量子化パラメータ(例えば、
量子化ステップサイズ情報)を用いて、量子化された変換係数に対する逆量子化を行い、
変換係数(transformcoefficient)を取得することができる。
【0086】
逆変換部230では、変換係数を逆変換してレジデュアル信号(レジデュアルブロック
、レジデュアルサンプルアレイ)を取得することができる。
【0087】
予測部は、現在ブロックに対する予測を行い、前記現在ブロックに対する予測サンプル
を含む予測されたブロック(predictedblock)を生成することができる。
予測部は、エントロピー復号化部210から出力された前記予測に関する情報に基づいて
、前記現在ブロックにイントラ予測が適用されるか或いはインター予測が適用されるかを
決定することができ、具体的なイントラ/インター予測モード(予測技法)を決定するこ
とができる。
【0088】
予測部が後述の様々な予測方法(技法)に基づいて予測信号を生成することができるの
は、画像符号化装置100の予測部についての説明で述べたのと同様である。
【0089】
イントラ予測部265は、現在ピクチャ内のサンプルを参照して現在ブロックを予測す
ることができる。イントラ予測部185についての説明は、イントラ予測部265に対し
ても同様に適用されることができる。
【0090】
インター予測部260は、参照ピクチャ上で動きベクトルによって特定される参照ブロ
ック(参照サンプルアレイ)に基づいて、現在ブロックに対する予測されたブロックを誘
導することができる。この時、インター予測モードで伝送される動き情報の量を減らすた
めに、周辺ブロックと現在ブロックとの動き情報の相関性に基づいて動き情報をブロック
、サブブロック又はサンプル単位で予測することができる。前記動き情報は、動きベクト
ル及び参照ピクチャインデックスを含むことができる。前記動き情報は、インター予測方
向(L0予測、L1予測、Bi予測など)情報をさらに含むことができる。インター予測
の場合に、周辺ブロックは、現在ピクチャ内に存在する空間周辺ブロック(spatia
lneighboringblock)と参照ピクチャに存在する時間周辺ブロック(t
emporalneighboringblock)を含むことができる。例えば、イン
ター予測部260は、周辺ブロックに基づいて動き情報候補リストを構成し、受信した候
補選択情報に基づいて前記現在ブロックの動きベクトル及び/又は参照ピクチャインデッ
クスを導出することができる。様々な予測モード(技法)に基づいてインター予測が行わ
れることができ、前記予測に関する情報は、前記現在ブロックに対するインター予測のモ
ード(技法)を指示する情報を含むことができる。
【0091】
加算部235は、取得されたレジデュアル信号を予測部(インター予測部260及び/
又はイントラ予測部265を含む)から出力された予測信号(予測されたブロック、予測
サンプルアレイ)に加えることにより、復元信号(復元ピクチャ、復元ブロック、復元サ
ンプルアレイ)を生成することができる。加算部155についての説明は、加算部235
に対しても同様に適用されることができる。
【0092】
一方、後述するように、ピクチャ復号化過程でLMCS(lumamappingwi
thchromascaling)が適用されることもできる。
【0093】
フィルタリング部240は、復元信号にフィルタリングを適用して主観的/客観的画質
を向上させることができる。例えば、フィルタリング部240は、復元ピクチャに様々な
フィルタリング方法を適用して、修正された(modified)復元ピクチャを生成す
ることができ、前記修正された復元ピクチャをメモリ250、具体的にはメモリ250の
DPBに保存することができる。前記様々なフィルタリング方法は、例えば、デブロッキ
ングフィルタリング、サンプル適応的オフセット(sampleadaptiveoff
set)、適応的ループフィルタ(adaptiveloopfilter)、双方向フ
ィルタ(bilateralfilter)などを含むことができる。
【0094】
メモリ250のDPBに保存された(修正された)復元ピクチャは、インター予測部2
60で参照ピクチャとして使用されることができる。メモリ250は、現在ピクチャ内の
動き情報が導出された(又は復号化された)ブロックの動き情報及び/又は既に復元され
たピクチャ内のブロックの動き情報を保存することができる。前記保存された動き情報は
、空間周辺ブロックの動き情報又は時間周辺ブロックの動き情報として活用するために、
インター予測部260に伝達することができる。メモリ250は、現在ピクチャ内の復元
されたブロックの復元サンプルを保存することができ、イントラ予測部265に伝達する
ことができる。
【0095】
本明細書において、画像符号化装置100のフィルタリング部160、インター予測部
180及びイントラ予測部185で説明された実施例は、それぞれ画像復号化装置200
のフィルタリング部240、インター予測部260及びイントラ予測部265にも、同様
に又は対応するように適用されることができる。
【0096】
インター予測の概要
【0097】
画像符号化/復号化装置は、ブロック単位でインター予測を行って予測サンプルを導出
することができる。インター予測は、現在ピクチャ以外のピクチャ(ら)のデータ要素に
依存的な方法で導出される予測技法を意味することができる。現在ブロックに対してイン
ター予測が適用される場合、参照ピクチャ上で動きベクトルによって特定される参照ブロ
ックに基づいて、現在ブロックに対する予測ブロックが誘導されることができる。
【0098】
このとき、インター予測モードで伝送される動き情報の量を減らすために、周辺ブロッ
クと現在ブロックとの動き情報の相関性に基づいて現在ブロックの動き情報が誘導される
ことができ、ブロック、サブブロック又はサンプル単位で動き情報が誘導されることがで
きる。このとき、動き情報は、動きベクトル及び参照ピクチャインデックスを含むことが
できる。動き情報はインター予測タイプ情報をさらに含むことができる。ここで、インタ
ー予測タイプ情報はインター予測の方向性情報を意味することができる。インター予測タ
イプ情報は、現在ブロックがL0予測、L1予測及びBi予測のうちのいずれか一つを用
いて予測されることを指示することができる。
【0099】
現在ブロックに対してインター予測が適用される場合、現在ブロックの周辺ブロックは
、現在ピクチャ内に存在する空間周辺ブロック(spatialneighbourin
gblock)と参照ピクチャに存在する時間周辺ブロック(temporalneig
hbouringblock)を含むことができる。このとき、現在ブロックに対する参
照ブロックを含む参照ピクチャと、前記時間周辺ブロックを含む参照ピクチャとは、同一
でもよく、異なっていてもよい。前記時間周辺ブロックは、コロケート参照ブロック(c
ollocatedreferenceblock)、コロケート符号化ユニット(co
lCU)などと呼ばれることができる。前記時間周辺ブロックを含む参照ピクチャは、コ
ロケートピクチャ(collocatedpicture、colPic)と呼ばれるこ
とができる。
【0100】
一方、現在ブロックの周辺ブロックに基づいて動き情報候補リストが構成されることが
でき、このとき、現在ブロックの動きベクトル及び/又は参照ピクチャインデックスを導
出するためにどの候補が使用されるかを指示するフラグ又はインデックス情報がシグナリ
ングされることができる。
【0101】
動き情報は、インター予測タイプに基づいてL0動き情報及び/又はL1動き情報を含
むことができる。L0方向の動きベクトルは、L0動きベクトル又はMVL0と定義され
ることができ、L1方向の動きベクトルは、L1動きベクトル又はMVL1と定義される
ことができる。L0動きベクトルに基づいた予測はL0予測と定義されることができ、L
1動きベクトルに基づいた予測はL1予測と定義されることができ、前記L0動きベクト
ル及び前記L1動きベクトルの両方ともに基づいた予測は双予測(Bipredicti
on)と定義されることができる。ここで、L0動きベクトルは、参照ピクチャリストL
0に関連した動きベクトルを意味することができ、L1動きベクトルは、参照ピクチャリ
ストL1に関連した動きベクトルを意味することができる。
【0102】
参照ピクチャリストL0は、前記現在ピクチャよりも出力順序における以前のピクチャ
を参照ピクチャとして含むことができ、参照ピクチャリストL1は、前記現在ピクチャよ
りも出力順序における以後のピクチャを含むことができる。このとき、以前のピクチャは
、順方向(参照)ピクチャと定義することができ、前記以後のピクチャは、逆方向(参照
ピクチャ)と定義することができる。一方、参照ピクチャリストL0は、現在ピクチャよ
りも出力順序における以後のピクチャをさらに含むことができる。この場合、参照ピクチ
ャリストL0内で以前ピクチャが先にインデックス化され、以後のピクチャは、その次に
インデックス化されることができる。参照ピクチャリストL1は、現在ピクチャよりも出
力順序における以前のピクチャをさらに含むことができる。この場合、参照ピクチャリス
トL1内で以後のピクチャが先にインデックス化され、以前のピクチャはその次にインデ
ックス化されることができる。ここで、出力順序は、POC(pictureorder
count)順序(order)に対応することができる。
【0103】
図4はインター予測に基づくビデオ/画像符号化方法を示すフローチャート図である。
【0104】
図5は本開示によるインター予測部180の構成を例示的に示す図である。
【0105】
図4の符号化方法は、図2の画像符号化装置によって行われることができる。具体的に
、ステップS410は、インター予測部180によって行われることができ、ステップS
420は、レジデュアル処理部によって行われることができる。具体的に、ステップS4
20は、減算部115によって行われることができる。ステップS430は、エントロピ
ー符号化部190によって行われることができる。ステップS430の予測情報はインタ
ー予測部180によって導出され、ステップS430のレジデュアル情報はレジデュアル
処理部によって導出されることができる。前記レジデュアル情報は、前記レジデュアルサ
ンプルに対する量子化された変換係数に関する情報を含むことができる。前述したように
、前記レジデュアルサンプルは、画像符号化装置の変換部120を介して変換係数として
導出され、前記変換係数は、量子化部130を介して量子化された変換係数として導出さ
れることができる。前記量子化された変換係数に関する情報がレジデュアルコーディング
手順を介してエントロピー符号化部190で符号化されることができる。
【0106】
画像符号化装置は、現在ブロックに対するインター予測を行うことができる(S410
)。画像符号化装置は、現在ブロックのインター予測モード及び動き情報を導出し、前記
現在ブロックの予測サンプルを生成することができる。ここで、インター予測モードの決
定、動き情報の導出及び予測サンプルの生成手順は、同時に行われてもよく、いずれか一
つの手順が他の手順よりも先に行われてもよい。例えば、図5に示されているように、画
像符号化装置のインター予測部180は、予測モード決定部181、動き情報導出部18
2、及び予測サンプル導出部183を含むことができる。予測モード決定部181で前記
現在ブロックに対する予測モードを決定し、動き情報導出部182で前記現在ブロックの
動き情報を導出し、予測サンプル導出部183で前記現在ブロックの予測サンプルを導出
することができる。例えば、画像符号化装置のインター予測部180は、動き推定(mo
tionestimation)を介して参照ピクチャの一定の領域(探索領域)内で前
記現在ブロックと類似のブロックを探索し、前記現在ブロックとの差が最小又は一定の基
準以下である参照ブロックを導出することができる。これに基づいて、前記参照ブロック
が位置する参照ピクチャを指す参照ピクチャインデックスを導出し、前記参照ブロックと
前記現在ブロックとの位置差に基づいて動きベクトルを導出することができる。画像符号
化装置は、様々な予測モードのうち、前記現在ブロックに対して適用されるモードを決定
することができる。画像符号化装置は、前記様々なインター予測モードに対するレート歪
みコスト(Rate-Distortion(RD)cost)を比較し、前記現在ブロ
ックに対する最適の予測モードを決定することができる。しかし、画像符号化装置が現在
ブロックに対するインター予測モードを決定する方法は、上記の例に限定されず、様々な
方法が利用できる。
【0107】
例えば、現在ブロックに対するインター予測モードは、マージモード(mergemo
de)、スキップモード(skipmode)、MVPモード(MotionVecto
rPredictionmode)、SMVDモード(SymmetricMotion
VectorDifference)、アフィンモード(affinemode)、サブ
ブロックベースのマージモード(Subblock-basedmergemode)、
AMVRモード(AdaptiveMotionVectorResolutionmo
de)、HMVPモード(History-basedMotionVectorPre
dictormode)、双予測マージモード(Pair-wiseaverageme
rgemode)、MMVDモード(MergemodewithMotionVect
orDifferencesmode)、DMVRモード(DecodersideMo
tionVectorRefinementmode)、CIIPモード(Combin
edInterandIntraPredictionmode)、及びGPM(Geo
metricPartitioningmode)のうちの少なくとも一つと決定される
ことができる。
【0108】
例えば、現在ブロックにスキップモード又はマージモードが適用される場合、画像符号
化装置は、前記現在ブロックの周辺ブロックからマージ候補を誘導し、誘導されたマージ
候補を用いてマージ候補リストを構成することができる。また、画像符号化装置は、前記
マージ候補リストに含まれているマージ候補が指す参照ブロックのうち、現在ブロックと
の差が最小又は一定の基準以下である参照ブロックを導出することができる。この場合、
前記導出された参照ブロックに関連するマージ候補が選択され、前記選択されたマージ候
補を示すマージインデックス情報が生成されて画像復号化装置にシグナリングされること
ができる。前記選択されたマージ候補の動き情報を用いて前記現在ブロックの動き情報を
導出することができる。
【0109】
他の例として、前記現在ブロックにMVPモードが適用される場合、画像符号化装置は
、前記現在ブロックの周辺ブロックから動きベクトル予測子(MVP、MotionVe
ctorPredictor)候補を誘導し、誘導されたMVP候補を用いてMVP候補
リストを構成することができる。また、画像符号化装置は、前記MVP候補リストに含ま
れているMVP候補のうち、選択されたMVP候補の動きベクトルを前記現在ブロックの
MVPとして用いることができる。この場合、例えば、前述した動き推定によって導出さ
れた参照ブロックを指す動きベクトルが前記現在ブロックの動きベクトルとして用いられ
ることができ、前記MVP候補のうち、前記現在ブロックの動きベクトルとの差が最も小
さい動きベクトルを持つMVP候補が、前記選択されたMVP候補になることができる。
前記現在ブロックの動きベクトルから前記MVPを差し引いた差分であるMVD(mot
ionvectordifference)が導出されることができる。この場合、前記
選択されたMVP候補を示すインデックス情報、及び前記MVDに関する情報が画像復号
化装置にシグナリングされることができる。また、MVPモードが適用される場合、前記
参照ピクチャインデックスの値は、参照ピクチャインデックス情報で構成されて別途に前
記画像復号化装置にシグナリングされることができる。
【0110】
画像符号化装置は、前記予測サンプルに基づいてレジデュアルサンプルを導出すること
ができる(S420)。画像符号化装置は、前記現在ブロックの原本サンプルと前記予測
サンプルとの比較によって前記レジデュアルサンプルを導出することができる。例えば、
前記レジデュアルサンプルは、原本サンプルから対応する予測サンプルを減算することに
より導出されることができる。
【0111】
画像符号化装置は、予測情報及びレジデュアル情報を含む画像情報を符号化することが
できる(S430)。画像符号化装置は、符号化された画像情報をビットストリーム形式
で出力することができる。前記予測情報は、前記予測手順に関連した情報であって、予測
モード情報(例えば、skipflag、mergeflag又はmodeindexな
ど)及び動き情報に関する情報を含むことができる。前記予測モード情報のうち、ski
pflagは、現在ブロックに対してスキップモードが適用されるか否かを示す情報であ
り、mergeflagは、現在ブロックに対してマージモードが適用されるか否かを示
す情報である。又は、予測モード情報は、modeindexのように、複数の予測モー
ドのうちのいずれか一つを指示する情報であってもよい。前記skipflagとmer
geflagがそれぞれ0である場合、現在ブロックに対してMVPモードが適用される
と決定されることができる。前記動き情報に関する情報は、動きベクトルを導出するため
の情報である候補選択情報(例えば、mergeindex、mvpflag又はmvp
index)を含むことができる。前記候補選択情報のうち、mergeindexは、
現在ブロックに対してマージモードが適用される場合にシグナリングされることができ、
マージ候補リストに含まれているマージ候補のうちのいずれか一つを選択するための情報
であることができる。前記候補選択情報のうち、MVPflag又はMVPindexは
、現在ブロックに対してMVPモードが適用される場合にシグナリングされることができ
、MVP候補リストに含まれているMVP候補のうちのいずれか一つを選択するための情
報であることができる。具体的に、MVPflagは、シンタックス要素mvp_l0_
flag或いはmvp_l1_flagを用いてシグナリングされることができる。また
、前記動き情報に関する情報は、上述したMVDに関する情報及び/又は参照ピクチャイ
ンデックス情報を含むことができる。また、前記動き情報に関する情報は、L0予測、L
1予測又は双(Bi)予測が適用されるか否かを示す情報を含むことができる。前記レジ
デュアル情報は、前記レジデュアルサンプルに関する情報である。前記レジデュアル情報
は、前記レジデュアルサンプルに対する量子化された変換係数に関する情報を含むことが
できる。
【0112】
出力されたビットストリームは、(デジタル)記憶媒体に保存されて画像復号化装置に
伝達されることができ、又はネットワークを介して画像復号化装置に伝達されることもで
きる。
【0113】
一方、前述したように、画像符号化装置は、前記参照サンプル及び前記レジデュアルサ
ンプルに基づいて復元ピクチャ(復元サンプル及び復元ブロックを含むピクチャ)を生成
することができる。これは、画像復号化装置で行われるのと同じ予測結果を画像符号化装
置で導出するためであり、これによりコーディング効率を高めることができるためである
。したがって、画像符号化装置は、復元ピクチャ(又は復元サンプル、復元ブロック)を
メモリに保存し、インター予測のためのピクチャとして活用することができる。前記復元
ピクチャにインループフィルタリング手順などがさらに適用できるのは、上述したとおり
である。
【0114】
図6はインター予測に基づくビデオ/画像復号化方法を示すフローチャートである。
【0115】
図7は本開示によるインター予測部260の構成を例示的に示す図である。
【0116】
画像復号化装置は、前記画像符号化装置で行われた動作と対応する動作を行うことがで
きる。画像復号化装置は、受信された予測情報に基づいて現在ブロックに対する予測を行
い、予測サンプルを導出することができる。
【0117】
図6の復号化方法は、図3の画像復号化装置によって行われることができる。ステップ
S610乃至S630は、インター予測部260によって行われることができ、ステップ
S610の予測情報及びステップS640のレジデュアル情報は、エントロピー復号化部
210によってビットストリームから取得されることができる。画像復号化装置のレジデ
ュアル処理部は、前記レジデュアル情報に基づいて現在ブロックに対するレジデュアルサ
ンプルを導出することができる(S640)。具体的には、前記レジデュアル処理部の逆
量子化部220は、前記レジデュアル情報に基づいて導出された、量子化された変換係数
に基づいて、逆量子化を行って変換係数を導出し、前記レジデュアル処理部の逆変換部2
30は、前記変換係数に対する逆変換を行って前記現在ブロックに対するレジデュアルサ
ンプルを導出することができる。ステップS650は、加算部235又は復元部によって
行われることができる。
【0118】
具体的に、画像復号化装置は、受信された予測情報に基づいて、前記現在ブロックに対
する予測モードを決定することができる(S610)。画像復号化装置は、前記予測情報
内の予測モード情報に基づいて、前記現在ブロックにどのインター予測モードが適用され
るかを決定することができる。
【0119】
例えば、前記skipflagに基づいて、前記現在ブロックに前記スキップモードが
適用されるか否かを決定することができる。また、前記mergeflagに基づいて、
前記現在ブロックに前記マージモードが適用されるか或いはMVPモードが決定されるか
を決定することができる。又は、前記modeindexに基づいて、多様なインター予
測モード候補のうちのいずれか一つを選択することができる。前記インター予測モード候
補は、スキップモード、マージモード及び/又はMVPモードを含むことができ、或いは
後述する様々なインター予測モードを含むことができる。
【0120】
画像復号化装置は、前記決定されたインター予測モードに基づいて前記現在ブロックの
動き情報を導出することができる(S620)。例えば、画像復号化装置は、前記現在ブ
ロックにスキップモード又はマージモードが適用される場合、後述するマージ候補リスト
を構成し、前記マージ候補リストに含まれているマージ候補のうちのいずれか一つを選択
することができる。前記選択は、前述した候補選択情報(mergeindex)に基づ
いて行われることができる。前記選択されたマージ候補の動き情報を用いて前記現在ブロ
ックの動き情報を導出することができる。例えば、前記選択されたマージ候補の動き情報
が前記現在ブロックの動き情報として用いられることができる。
【0121】
他の例として、画像復号化装置は、前記現在ブロックにMVPモードが適用される場合
、MVP候補リストを構成し、前記MVP候補リストに含まれているMVP候補の中から
選択されたMVP候補の動きベクトルを前記現在ブロックのMVPとして用いることがで
きる。前記選択は、前述した候補選択情報(mvpflag又はmvpindex)に基
づいて行われることができる。この場合、前記MVDに関する情報に基づいて前記現在ブ
ロックのMVDを導出することができ、前記現在ブロックのMVPと前記MVDに基づい
て前記現在ブロックの動きベクトルを導出することができる。また、前記参照ピクチャイ
ンデックス情報に基づいて前記現在ブロックの参照ピクチャインデックスを導出すること
ができる。前記現在ブロックに関する参照ピクチャリスト内で前記参照ピクチャインデッ
クスが指すピクチャが、前記現在ブロックのインター予測のために参照される参照ピクチ
ャとして導出されることができる。
【0122】
画像復号化装置は、前記現在ブロックの動き情報に基づいて前記現在ブロックに対する
予測サンプルを生成することができる(S630)。この場合、前記現在ブロックの参照
ピクチャインデックスに基づいて前記参照ピクチャを導出し、前記現在ブロックの動きベ
クトルが前記参照ピクチャ上で指す参照ブロックのサンプルを用いて前記現在ブロックの
予測サンプルを導出することができる。場合に応じて、前記現在ブロックの予測サンプル
のうちの全部又は一部に対する予測サンプルフィルタリング手順がさらに行われることが
できる。
【0123】
例えば、図7に示されているように、画像復号化装置のインター予測部260は、予測
モード決定部261、動き情報導出部262、予測サンプル導出部263を含むことがで
きる。画像復号化装置のインター予測部260は、予測モード決定部261で受信された
予測モード情報に基づいて前記現在ブロックに対する予測モードを決定し、動き情報導出
部262で受信された動き情報に関する情報に基づいて前記現在ブロックの動き情報(動
きベクトル及び/又は参照ピクチャインデックスなど)を導出し、予測サンプル導出部2
63で前記現在ブロックの予測サンプルを導出することができる。
【0124】
画像復号化装置は、受信されたレジデュアル情報に基づいて、前記現在ブロックに対す
るレジデュアルサンプルを生成することができる(S640)。画像復号化装置は、前記
予測サンプル及び前記レジデュアルサンプルに基づいて前記現在ブロックに対する復元サ
ンプルを生成し、これに基づいて復元ピクチャを生成することができる(S650)。以
後、前記復元ピクチャにインループフィルタリング手順などがさらに適用できるのは前述
したとおりである。
【0125】
前述したように、インター予測手順は、インター予測モード決定ステップ、決定された
予測モードによる動き情報導出ステップ、及び導出された動き情報に基づく予測実行(予
測サンプル生成)ステップを含むことができる。前記インター予測手順は、前述したよう
に、画像符号化装置及び画像復号化装置で行われることができる。
【0126】
以下、予測モードによる動き情報導出ステップについてより詳細に説明する。
【0127】
前述したように、インター予測は、現在ブロックの動き情報を用いて行われることがで
きる。画像符号化装置は、動き推定(motionestimation)手順を介して
、現在ブロックに対する最適の動き情報を導出することができる。例えば、画像符号化装
置は、現在ブロックに対する原本ピクチャ内の原本ブロックを用いて相関性の高い類似な
参照ブロックを参照ピクチャ内の定められた探索範囲内で分数ピクセル単位にて探索する
ことができ、これにより動き情報を導出することができる。ブロックの類似性は、現在ブ
ロックと参照ブロック間のSAD(sumofabsolutedifferences
)に基づいて計算できる。この場合、探索領域内のSADが最も小さい参照ブロックに基
づいて動き情報を導出することができる。導出された動き情報は、インター予測モードに
基づいて様々な方法によって画像復号化装置にシグナリングされることができる。
【0128】
現在ブロックに対してマージモード(mergemode)が適用される場合、現在ブ
ロックの動き情報が直接伝送されず、周辺ブロックの動き情報を用いて前記現在ブロック
の動き情報を誘導する。よって、マージモードを用いたことを知らせるフラグ情報及びど
の周辺ブロックをマージ候補として用いたかを知らせる候補選択情報(例えば、マージイ
ンデックス)を伝送することにより、現在予測ブロックの動き情報を指示することができ
る。本開示において、現在ブロックは予測実行の単位であるので、現在ブロックは現在予
測ブロックと同じ意味で使用され、周辺ブロックは周辺予測ブロックと同じ意味で使用さ
れることができる。
【0129】
画像符号化装置は、マージモードを行うために現在ブロックの動き情報を誘導するのに
用いられるマージ候補ブロック(mergecandidateblock)を探索する
ことができる。例えば、前記マージ候補ブロックは、最大5個まで使用できるが、これに
限定されない。前記マージ候補ブロックの最大個数は、スライスヘッダー又はタイルグル
ープヘッダーから伝送されることができるが、これに限定されない。前記マージ候補ブロ
ックを見つけた後、画像符号化装置は、マージ候補リストを生成することができ、これら
のうち、RDコストが最も小さいマージ候補ブロックを最終マージ候補ブロックとして選
択することができる。
【0130】
本開示は、前記マージ候補リストを構成するマージ候補ブロックに対する様々な実施例
を提供する。前記マージ候補リストは、例えば5つのマージ候補ブロックを用いることが
できる。例えば、4つの空間マージ候補(spatialmergecandidate
)と1つの時間マージ候補(temporalmergecandidate)を用いる
ことができる。
【0131】
図8は空間マージ候補として用いられる周辺ブロックを例示する図である。
【0132】
図9は本開示の一例によるマージ候補リスト構成方法を概略的に示す図である。
【0133】
画像符号化装置/画像復号化装置は、現在ブロックの空間周辺ブロックを探索して導出
された空間マージ候補をマージ候補リストに挿入することができる(S910)。前記空
間周辺ブロックは、図8に示すように、前記現在ブロックの左下側コーナー周辺ブロック
A0、左側周辺ブロックA1、右上側コーナー周辺ブロックB0、上側周辺ブロックB1
、左上側コーナー周辺ブロックB2を含むことができる。但し、これは例示であって、前
述した空間周辺ブロック以外にも、右側周辺ブロック、下側周辺ブロック、右下側周辺ブ
ロックなどの追加周辺ブロックがさらに前記空間周辺ブロックとして使用できる。画像符
号化装置/画像復号化装置は、前記空間周辺ブロックを優先順位に基づいて探索すること
により、利用可能なブロックを検出し、検出されたブロックの動き情報を前記空間マージ
候補として導出することができる。例えば、画像符号化装置/画像復号化装置は、図8
示されている5つのブロックをA1、B1、B0、A0、B2の順に探索し、利用可能な
候補を順次インデックス化することにより、マージ候補リストを構成することができる。
【0134】
画像符号化装置/画像復号化装置は、前記現在ブロックの時間周辺ブロックを探索して
導出された時間マージ候補を前記マージ候補リストに挿入することができる(S920)
。前記時間周辺ブロックは、前記現在ブロックが位置する現在ピクチャとは異なるピクチ
ャである参照ピクチャ上に位置することができる。前記時間周辺ブロックが位置する参照
ピクチャは、コロケート(collocated)ピクチャ又はcolピクチャと呼ばれ
ることができる。前記時間周辺ブロックは、前記colピクチャ上における前記現在ブロ
ックに対するコロケートブロック(co-locatedblock)の右下側コーナー
周辺ブロック及び右下側センターブロックの順序で探索できる。一方、メモリ負荷を減ら
すためにmotiondatacompressionが適用される場合、前記colピ
クチャに対して、一定の保存単位ごとに特定の動き情報を代表動き情報として保存するこ
とができる。この場合、前記一定の保存ユニット内のすべてのブロックに対する動き情報
を保存する必要がなく、これによりmotiondatacompression効果を
得ることができる。この場合、一定の保存単位は、例えば16×16サンプル単位、又は
8×8サンプル単位などに予め定められることもでき、又は画像符号化装置から画像復号
化装置へ前記一定の保存単位に対するサイズ情報がシグナリングされることもできる。前
記motiondatacompressionが適用される場合、前記時間周辺ブロッ
クの動き情報は、前記時間周辺ブロックが位置する前記一定の保存単位の代表動き情報に
置き換えられることができる。つまり、この場合、実現の観点からみると、前記時間周辺
ブロックの座標に位置する予測ブロックロックではなく、前記時間周辺ブロックの座標(
左上側サンプルポジション)に基づいて一定の値だけ算術右シフトした後、算術左シフト
した位置をカバーする予測ブロックの動き情報に基づいて前記時間マージ候補が導出され
ることができる。例えば、前記一定の保存単位が2n×2nサンプル単位である場合、前記
時間周辺ブロックの座標が(xTnb、yTnb)であるとすれば、修正された位置であ
る((xTnb>>n)<<n)、(yTnb>>n)<<n))に位置する予測ブロッ
クの動き情報が前記時間マージ候補のために使用できる。具体的には、例えば、前記一定
の保存単位が16×16サンプル単位である場合、前記時間周辺ブロックの座標が(xT
nb,yTnb)であるとすれば、修正された位置である((xTnb>>4)<<4)
,(yTnb>>4)<<4))に位置する予測ブロックの動き情報が前記時間マージ候
補のために使用できる。又は、例えば、前記一定の保存単位が8×8サンプル単位である
場合、前記時間周辺ブロックの座標が(xTnb,yTnb)であるとすれば、修正され
た位置である((xTnb>>3)<<3),(yTnb>>3)<<3))に位置する
予測ブロックの動き情報が前記時間マージ候補のために使用できる。
【0135】
再び図9を参照すると、画像符号化装置/画像復号化装置は、現在マージ候補の数が最
大マージ候補の数よりも小さいか否かを確認することができる(S930)。前記最大マ
ージ候補の数は、予め定義されるか、或いは画像符号化装置から画像復号化装置にシグナ
リングされることができる。例えば、画像符号化装置は、前記最大マージ候補の数に関す
る情報を生成し、符号化してビットストリーム形式で前記画像復号化装置に伝達すること
ができる。前記最大マージ候補の数が全て満たされると、以後の候補追加過程(S940
)は行われないことができる。
【0136】
ステップS930の確認結果、前記現在マージ候補の数が前記最大マージ候補の数より
も小さい場合、画像符号化装置/画像復号化装置は、所定の方式に基づいて追加マージ候
補を誘導した後、前記マージ候補リストに挿入することができる(S940)。前記追加
マージ候補は、例えば、historybasedmergecandidate(s)
、pair-wiseaveragemergecandidate(s)、ATMVP
、combinedbi-predictiveマージ候補(現在スライス/タイルグル
ープのスライス/タイルグループタイプがBタイプである場合)及び/又はゼロ(zer
o)ベクトルマージ候補のうちの少なくとも一つを含むことができる。
【0137】
ステップS930の確認結果、前記現在マージ候補の数が前記最大マージ候補の数より
も小さくない場合、画像符号化装置/画像復号化装置は、前記マージ候補リストの構成を
終了することができる。この場合、画像符号化装置は、RDコストに基づいて、前記マー
ジ候補リストを構成するマージ候補のうちの最適のマージ候補を選択することができ、前
記選択されたマージ候補を指す候補選択情報(例えば、マージ候補インデックス、mer
geindex)を画像復号化装置にシグナリングすることができる。画像復号化装置は
、前記マージ候補リスト及び前記候補選択情報に基づいて前記最適のマージ候補を選択す
ることができる。
【0138】
前記選択されたマージ候補の動き情報が前記現在ブロックの動き情報として使用される
ことができ、前記現在ブロックの動き情報に基づいて前記現在ブロックの予測サンプルを
導出することができるのは、前述したとおりである。画像符号化装置は、前記予測サンプ
ルに基づいて前記現在ブロックのレジデュアルサンプルを導出することができ、前記レジ
デュアルサンプルに関するレジデュアル情報を画像復号化装置にシグナリングすることが
できる。画像復号化装置は、前記レジデュアル情報に基づいて導出されたレジデュアルサ
ンプル及び前記予測サンプルに基づいて復元サンプルを生成し、これに基づいて復元ピク
チャを生成することができるのは、前述したとおりである。
【0139】
現在ブロックに対してスキップモード(skipmode)が適用される場合、前でマ
ージモードが適用される場合と同様の方法で前記現在ブロックの動き情報を導出すること
ができる。ただし、スキップモードが適用される場合、当該ブロックに対するレジデュア
ル信号が省略される。よって、予測サンプルが直ちに復元サンプルとして使用できる。前
記スキップモードは、例えばcu_skip_flagの値が1である場合に適用できる
【0140】
以下、マージモード及び/又はスキップモードの場合、空間候補を誘導する方法につい
て説明する。空間候補は、上述した空間マージ候補を示すことができる。
【0141】
空間候補の誘導は、空間的に隣接しているブロック(Spatialneighbor
ingblocks)に基づいて行われることができる。例えば、図8に示されている位
置に存在する候補ブロックから最大4つの空間候補が誘導できる。空間候補を誘導する順
序は、A1→B1→B0→A0→B2の順序であり得る。ところが、空間候補を誘導する
順序は、上記の順序に限定されず、例えば、B1→A1→B0→A0→B2の順序であっ
てもよい。順序上、最後の位置(上記の例において、B2位置)は、先行する4つの位置
(上記の例において、A1、B1、B0及びA0)のうちの少なくとも一つが利用可能で
ない場合に考慮できる。この際、所定の位置のブロックが利用可能でないというのは、当
該ブロックが現在ブロックとは異なるスライス又は異なるタイルに属するか、或いは当該
ブロックがイントラ予測されたブロックである場合を含むことができる。順序上、一番目
の位置(上記の例において、A1又はB1)から空間候補が誘導された場合、後続する位
置の空間候補に対しては冗長性チェックが行われることができる。例えば、後続する空間
候補の動き情報がマージ候補リストに既に含まれている空間候補の動き情報と同一である
場合、前記後続する空間候補は、マージ候補リストに含ませないことにより、符号化効率
を向上させることができる。後続する空間候補に対して行われる冗長性チェックは、でき
る限るすべての候補ペアに対して行われず、一部の候補ペアに対してのみ行われることに
より、計算複雑度を減少させることができる。
【0142】
図10は空間候補に対して行われる冗長性チェックのための候補ペアを例示する図であ
る。
【0143】
図10に示されている例において、B0位置の空間候補に対する冗長性チェックは、A
0位置の空間候補に対してのみ行われることができる。また、B1位置の空間候補に対す
る冗長性チェックは、B0位置の空間候補に対してのみ行われることができる。また、A
1位置の空間候補に対する冗長性チェックは、A0位置の空間候補に対してのみ行われる
ことができる。最後に、B2位置の空間候補に対する冗長性チェックは、A0位置及びB
0位置の空間候補に対してのみ行われることができる。
【0144】
図10に示されている例は、空間候補を誘導する順序がA0→B0→B1→A1→B2
の順序である場合の例である。ところが、これに限定されず、空間候補を誘導する順序が
変更されても、図10に示されている例の如く、一部の候補ペアに対してのみ冗長性チェ
ックが行われることができる。
【0145】
以下、マージモード及び/又はスキップモードの場合、時間候補を誘導する方法につい
て説明する。時間候補は、上述した時間マージ候補を示すことができる。また、時間候補
の動きベクトルは、MVPモードの時間候補に対応することもできる。
【0146】
時間候補は、一つの候補のみがマージ候補リストに含まれることができる。時間候補を
誘導する過程で、時間候補の動きベクトルはスケーリングできる。例えば、前記スケーリ
ングは、コロケート参照ピクチャ(collocaedreferencepictur
e、colPic)(以下、「colピクチャ」という)に属するコロケートブロック(
co-locatedCU)(以下、「colブロック」という)に基づいて行われるこ
とができる。colブロックの誘導に使用される参照ピクチャリストは、スライスヘッダ
ーで明示的にシグナリングされることができる。
【0147】
図11は時間候補の動きベクトルをスケーリングする方法を説明するための図である。
【0148】
図11において、curr_CUとcurr_picは現在ブロックと現在ピクチャを
示し、col_CUとcol_picはcolブロックとcolピクチャを示す。col
_refはcolブロックの参照ピクチャを示す。また、tbは現在ブロックの参照ピク
チャと現在ピクチャとの距離を示し、tdはcolブロックの参照ピクチャとcolピク
チャとの距離を示す。前記tbとtdは、ピクチャ間のPOC(PictureOrde
rCount)の差に該当する値で表すことができる。時間候補の動きベクトルのスケー
リングはtbとtdに基づいて行われることができる。また、時間候補の参照ピクチャイ
ンデックスは0に設定されることができる。
【0149】
図12は時間候補を誘導する位置を説明するための図である。
【0150】
図12において、太い実線のブロックは現在ブロックを示す。時間候補は、図12のC
0位置(右下側位置)又はC1位置(中央位置)に該当するcolピクチャ内のブロック
から誘導できる。まず、C0位置が利用可能であると判断され、C0位置が利用可能であ
る場合、C0位置に基づいて時間候補が誘導されることができる。もしC0位置が利用可
能でない場合、C1位置に基づいて時間候補が誘導されることができる。例えば、C0位
置のcolピクチャ内のブロックがイントラ予測されたブロックであるか、或いは現在C
TU行(row)の外部に存在する場合、C0位置が利用可能でないと判断できる。
【0151】
上述したように、motiondatacompressionが適用される場合、c
olブロックの動きベクトルは所定の単位ブロックごとに保存できる。この場合、C0位
置又はC1位置をカバーするブロックの動きベクトルを誘導するために、C0位置又はC
1位置は修正できる。例えば、前記所定の単位ブロックが8×8ブロックであり、C0位
置又はC1位置を(xColCi,yColCi)とするとき、時間候補を誘導するため
の位置は((xColCi>>3)<<3,(yColCi>>3)<<3)に修正され
ることができる。
【0152】
以下、マージモード及び/又はスキップモードの場合、History-based候
補を誘導する方法について説明する。History-based候補は、Histor
y-basedマージ候補で表現できる。
【0153】
History-based候補は、空間候補と時間候補がマージ候補リストに追加さ
れた後に、前記マージ候補リストに追加されることができる。例えば、以前に符号化/復
号化されたブロックの動き情報がテーブルに保存され、現在ブロックのHistory-
based候補として使用できる。前記テーブルは、符号化/復号化過程中に複数のHi
story-based候補を保存することができる。前記テーブルは、新しいCTU行
(row)が始まるときに初期化できる。テーブルが初期化されるというのは、テーブル
に保存されたHistory-based候補がすべて削除されて当該テーブルが空にな
ることを意味することができる。インター予測されたブロックがあるたびに、関連動き情
報が最後のエントリとして前記テーブルに追加できる。このとき、前記インター予測され
たブロックは、サブブロックに基づいて予測されたブロックではないことができる。前記
テーブルに追加された動き情報は、新しいHistory-based候補として使用で
きる。
【0154】
History-based候補のテーブルは、所定のサイズを持つことができる。例
えば、当該サイズは5であり得る。このとき、前記テーブルは、最大5つのHistor
y-based候補を保存することができる。新しい候補がテーブルに追加されるとき、
まず、同じ候補が前記テーブルに存在するかの冗長性チェックが行われる制限されたfi
rst-in-first-out(FIFO)規定が適用できる。もし同じ候補が前記
テーブルに既に存在する場合、前記同じ候補が前記テーブルから削除され、以後のすべて
のHistory-based候補の位置が前方に移動することができる。
【0155】
History-based候補は、マージ候補リストの構成過程に使用できる。この
とき、前記テーブルに最近に含まれているHistory-based候補が順次チェッ
クされ、前記マージ候補リストの時間候補以降の位置に含まれることができる。Hist
ory-based候補がマージ候補リストに含まれるとき、前記マージ候補リストに既
に含まれている空間候補又は時間候補との冗長性チェックが行われることができる。もし
、マージ候補リストに既に含まれている空間候補又は時間候補とHistory-bas
ed候補が同時に重複する場合、当該History-based候補は、前記マージ候
補リストに含まれないことができる。前記冗長性チェックは、次のように単純化させるこ
とにより演算量が低減できる。
【0156】
マージ候補リストの生成に用いられるHistory-based候補の数は(N<=
4)?M:(8-N)に設定できる。このとき、Nはマージ候補リストに既に含まれてい
る候補の数を示し、Mは前記テーブルに保存された利用可能なHistory-base
d候補の数を示す。つまり、マージ候補リストに4個以下の候補が含まれた場合、前記マ
ージ候補リストの生成に用いられるHistory-based候補の数はM個であり、
マージ候補リストに4個より多いN個の候補が含まれた場合、前記マージ候補リストの生
成に用いられるHistory-based候補の数は、(8-N)個に設定できる。
【0157】
利用可能なマージ候補の総数が(マージ候補の最大許容数-1)に達する場合、His
tory-based候補を用いたマージ候補リストの構成は終了できる。
【0158】
以下、マージモード及び/又はスキップモードの場合、Pair-wiseavera
ge候補を誘導する方法について説明する。Pair-wiseaverage候補は、
Pair-wiseaverageマージ候補又はPair-wise候補で表現できる
【0159】
Pair-wiseaverage候補は、マージ候補リストに含まれた候補から既に
定義された候補ペアを取得し、これらを平均することにより生成できる。既に定義された
候補ペアは、{(0,1),(0,2),(1,2),(0,3),(1,3),(2,
3)}であり、各候補ペアを構成する数字は、マージ候補リストのインデックスであり得
る。つまり、既に定義された候補ペア(0,1)は、マージ候補リストのインデックス0
候補とインデックス1候補の対を意味し、Pair-wiseaverage候補は、イ
ンデックス0候補とインデックス1候補との平均によって生成できる。前記既に定義され
た候補ペアの順序でPair-wiseaverage候補の誘導が行われることができ
る。すなわち、候補ペア(0,1)に対してPair-wiseaverage候補を誘
導した後、候補ペア(0,2)、候補ペア(1,2)の順序でPair-wiseave
rage候補誘導過程が行われることができる。Pair-wiseaverage候補
誘導過程は、マージ候補リストの構成が完了するまで行われることができる。例えば、P
air-wiseaverage候補誘導過程は、マージ候補リストに含まれたマージ候
補の数が最大マージ候補の数に達するまで行われることができる。
【0160】
Pair-wiseaverage候補は、参照ピクチャリストのそれぞれに対して個
別に計算できる。1つの参照ピクチャリスト(L0list又はL1list)に対して
2つの動きベクトルが利用可能である場合、これらの2つの動きベクトルの平均が計算で
きる。このとき、2つの動きベクトルが互いに異なる参照ピクチャを指しても、前記2つ
の動きベクトルの平均が行われることができる。もし1つの参照ピクチャリストに対して
1つの動きベクトルのみが利用可能である場合、利用可能な動きベクトルがPair-w
iseaverage候補の動きベクトルとして使用できる。もし1つの参照ピクチャリ
ストに対して2つの動きベクトルがすべて利用可能でない場合、当該参照ピクチャリスト
は有効でないと決定できる。
【0161】
Pair-wiseaverage候補がマージ候補リストに含まれた以後にも、マー
ジ候補リストの構成が完了していない場合、最大マージ候補の数に達するまでゼロベクト
ルがマージ候補リストに追加できる。
【0162】
現在ブロックに対してMVPモードが適用される場合、復元された空間周辺ブロック(
例えば、図8に示されている周辺ブロック)の動きベクトル及び/又は時間周辺ブロック
(又はColブロック)に対応する動きベクトルを用いて、動きベクトル予測子(mot
ionvectorpredictor、mvp)候補リストが生成できる。つまり、復
元された空間周辺ブロックの動きベクトル及び/又は時間周辺ブロックに対応する動きベ
クトルが現在ブロックの動きベクトル予測子候補として使用できる。双予測が適用される
場合、L0動き情報導出のためのmvp候補リストとL1動き情報導出のためのmvp候
補リストが個別に生成されて利用できる。現在ブロックに対する予測情報(又は予測に関
する情報)は、前記mvp候補リストに含まれている動きベクトル予測子候補の中から選
択された最適の動きベクトル予測子候補を指示する候補選択情報(例えば、MVPフラグ
又はMVPインデックス)を含むことができる。このとき、予測部は、前記候補選択情報
を用いて、mvp候補リストに含まれている動きベクトル予測子候補の中から、現在ブロ
ックの動きベクトル予測子を選択することができる。画像符号化装置の予測部は、現在ブ
ロックの動きベクトルと動きベクトル予測子との動きベクトル差分(MVD)を求めるこ
とができ、これを符号化してビットストリーム形式で出力することができる。つまり、M
VDは現在ブロックの動きベクトルから前記動きベクトル予測子を差し引いた値で求めら
れることができる。画像復号化装置の予測部は、前記予測に関する情報に含まれている動
きベクトル差分を取得し、前記動きベクトル差分と前記動きベクトル予測子との加算を介
して、現在ブロックの前記動きベクトルを導出することができる。画像復号化装置の予測
部は、参照ピクチャを指示する参照ピクチャインデックスなどを前記予測に関する情報か
ら取得又は誘導することができる。
【0163】
図13は本開示の一例による動きベクトル予測子候補リスト構成方法を概略的に示す図
である。
【0164】
まず、現在ブロックの空間候補ブロックを探索して、利用可能な候補ブロックをMVP
候補リストに挿入することができる(S1010)。その後、MVP候補リストに含まれ
ているMVP候補が2つ未満であるか否かが判断され(S1020)、2つである場合、
MVP候補リストの構成を完了することができる。
【0165】
ステップS1020で、利用可能な空間候補ブロックが2つ未満である場合、現在ブロ
ックの時間候補ブロックを探索して、利用可能な候補ブロックをMVP候補リストに挿入
することができる(S1030)。時間候補ブロックが利用可能でない場合、ゼロ動きベ
クトルをMVP候補リストに挿入(S1040)することにより、MVP候補リストの構
成を完了することができる。
【0166】
一方、MVPモードが適用される場合、参照ピクチャインデックスが明示的にシグナリ
ングされることができる。この場合、L0予測のためのピクチャインデックス(refi
dxL0)とL1予測のための参照ピクチャインデックス(refidxL1)が区分さ
れてシグナリングされることができる。例えば、MVPモードが適用され、双予測(BI
prediction)が適用される場合、前記refidxL0に関する情報及びre
fidxL1に関する情報が両方ともシグナリングされることができる。
【0167】
前述したように、MVPモードが適用される場合、画像符号化装置から導出されたMV
Dに関する情報が画像復号化装置にシグナリングされることができる。MVDに関する情
報は、例えばMVD絶対値及び符号に対するx、y成分を示す情報を含むことができる。
この場合、MVD絶対値が0よりも大きいか、及び1よりも大きいか否か、MVDの残り
を示す情報が段階的にシグナリングされることができる。例えば、MVD絶対値が1より
も大きいか否かを示す情報は、MVD絶対値が0よりも大きいか否かを示すflag情報
の値が1である場合に限ってシグナリングされることができる。
【0168】
以下、本開示の予測実行方法の一実施例について説明する。以下の予測実行方法は、図
4のステップS410又は図6のステップS630で行われることができる。
【0169】
予測モードに従って導出された動き情報に基づいて、現在ブロックに対する予測された
ブロックを生成することができる。前記予測されたブロック(予測ブロック)は前記現在
ブロックの予測サンプル(予測サンプルアレイ)を含むことができる。現在ブロックの動
きベクトルが分数サンプル(fractionalsample)単位を指す場合、補間
(interpolation)手順が行われることができ、これにより参照ピクチャ内
で分数サンプル単位の参照サンプルに基づいて前記現在ブロックの予測サンプルが導出さ
れることができる。現在ブロックにアフィン(affine)インター予測が適用される
場合、サンプル/サブブロック単位MVに基づいて予測サンプルを生成することができる
。双予測(bi-prediction)が適用される場合、L0予測(すなわち、参照
ピクチャリストL0内の参照ピクチャとMVL0を用いた予測)に基づいて導出された予
測サンプルと、L1予測(すなわち、参照ピクチャリストL1内の参照ピクチャとMVL
1を用いた予測)に基づいて導出された予測サンプルの(位相による)加重和又は加重平
均によって導出された予測サンプルが現在ブロックの予測サンプルとして用いられること
ができる。双予測が適用される場合、L0予測に用いられた参照ピクチャとL1予測に用
いられた参照ピクチャが現在ピクチャを基準に互いに異なる時間的方向に位置する場合(
すなわち、双予測でありながら双方向予測に該当する場合)、これをtrue(真)双予
測と呼ぶことができる。
【0170】
画像復号化装置において、導出された予測サンプルに基づいて復元サンプル及び復元ピ
クチャが生成でき、その後、インループフィルタリングなどの手順が行われることができ
る。また、画像符号化装置において、導出された予測サンプルに基づいてレジデュアルサ
ンプルが導出され、予測情報及びレジデュアル情報を含む画像情報の符号化が行われるこ
とができる。
【0171】
Bi-directionalopticalflow(BDOF)
【0172】
本開示によれば、双予測(bi-prediction)信号をリファイン(改善)す
るためにBDOFが使用できる。BDOFは、現在ブロック(ex.CU)に双予測が適
用される場合、改善された動き情報を計算して予測サンプルを生成するためのものである
。よって、BDOFを適用して改善された動き情報を計算する過程は、上述した動き情報
導出ステップに含まれてもよい。
【0173】
例えば、BDOFは、4×4サブブロックレベルで適用できる。すなわち、BDOFは
、現在ブロック内の4×4サブブロック単位で行われることができる。
【0174】
BODFは、例えば、次の条件を少なくとも一つ又は全て満たすCUに対して適用でき
る。
【0175】
-CUがtrue双予測モードで符号化された場合、すなわち、2つの参照ピクチャの
うち、いずれか一つはディスプレイ順序が現在ピクチャに先行し、もう一つはディスプレ
イ順序が現在ピクチャに後行する場合
【0176】
-CUがアフィンモード又はATMVPマージモードでない場合
【0177】
-CUが64個以上のルマサンプルを有する場合
【0178】
-CUの高さ(height)及び幅(width)が8ルマサンプル以上である場合
【0179】
-BCW重みインデックスが均等重みを指示する場合、すなわちL0予測サンプルとL
1予測サンプルに同一の重みが適用されることを指示する場合
【0180】
-現在CUに対して加重予測(WP、WeightedPrediction)が適用
されない場合
【0181】
-現在CUに対してCIIPモードが使用されない場合
【0182】
また、BDOFはルマ成分に対してのみ適用できる。しかし、これに限定されず、BD
OFは、クロマ成分に対してのみ適用されてもよく、ルマ成分及びクロマ成分の両方に対
して適用されてもよい。
【0183】
BDOFモードはオプティカルフロー(opticalflow)の概念に基づく。す
なわち、オブジェクトの動きがスムーズ(smooth)であると仮定する。BDOFが
適用される場合、それぞれの4×4サブブロックに対して、改善された動きベクトル(m
otionrefinement)(vx,vy)が計算できる。改善された動きベクトル
(motionrefinement)は、L0予測サンプルとL1予測サンプルとの差
を最小化することにより計算できる。改善された動きベクトル(motionrefin
ement)は、4×4サブブロック内の双予測されたサンプル値を調整(adjust
)するのに利用できる。
【0184】
以下、BDOFが行われる過程をより具体的に説明する。
【0185】
【表1】
【0186】
【数1】
【0187】
上記数式1中、I(k)(i,j)は、リストk(k=0,1)内の予測信号の座標(i
,j)のサンプル値を意味する。例えば、I(0)(i,j)はL0予測ブロック内の(i
,j)位置のサンプル値を意味し、I(1)(i,j)はL1予測ブロック内の(i,j)
位置のサンプル値を意味することができる。前記数式1中、第1シフト量(shift1
)は、ルマ成分のビットデプス(ビット深度)に基づいて決定できる。例えば、ルマ成分
のビットデプスをbitDepthとするとき、shift1はmax(6,bitDe
pth-6)と決定されることができる。
【0188】
上述したようにグラジエントが計算された後、グラジエント間の自己相関(auto-
correlation)及び交差相関(cross-correlation)S1
2、S3、S5及びS6が次のように計算できる。
【0189】
【数2】
【0190】
前記数式2中、na及びnbはそれぞれmin(1,bitDepth-11)及びmi
n(4,bitDepth-8)に設定されることができる。
【0191】
上述したグラジエント間の自己相関及び交差相関を利用して改善された動きベクトル(
motionrefinement)(vx,vy)が次のように誘導できる。
【0192】
【数3】
【0193】
前記数式3中、nS2は12であり得る。前記誘導された、改善された動きベクトル(m
otionrefinement)及びグラジエントに基づいて、4×4サブブロック内
の各サンプルに対して次のような調整が行われることができる。
【0194】
【数4】
【0195】
最終的に、CUの双予測サンプルを次のように調整することにより、BDOFが適用さ
れたCUの予測サンプル(predBDOF)を計算することができる。
【0196】
【数5】
【0197】
上記数式において、na、nb及びnS2はそれぞれ3、6及び12であり得る。これらの
値は、BDOF過程における乗数(multiplier)が15ビットを超えず、中間
パラメータ(intermediateparameters)のビット幅(bit-w
idth)が32ビット以内に維持できるように選択され得る。
【0198】
グラジエント値を誘導するために、現在CUの外部に存在するリストk(k=0、1)
内の予測サンプルI(k)(i,j)が生成できる。図14はBDOFを行うために拡張さ
れたCUを示す図である。
【0199】
図14に示されているように、BDOFを行うために、CUの境界周辺に拡張された行
/列が使用できる。境界外の予測サンプルを生成するための計算の複雑度を制御するため
に、拡張された領域(図14の白色領域)内の予測サンプルは、双線形フィルタ(bil
inearfilter)を用いて生成され、CU(図14の灰色領域)内の予測サンプ
ルは、通常の8-tap動き補償補間フィルタ(normal8-tapmotionc
ompensationinterpolationfilter)を用いて生成できる
。前記拡張された位置のサンプル値は、グラジエント計算にのみ使用できる。BDOF過
程の残りのステップを行うために、CU境界の外側に位置するサンプル値及び/又はグラ
ジエント値が必要な場合、最も隣接している隣接サンプル値及び/又はグラジエント値を
パディング(反復)して使用することができる。
【0200】
CUの幅及び/又は高さが16ルマサンプルよりも大きい場合、当該CUは、幅及び又
は高さが16ルマサンプルであるサブブロックに分割されることができる。各サブブロッ
クの境界は、BDOF過程で上述したCU境界と同一に取り扱われることができる。BD
OF過程が行われる最大ユニットサイズは16×16に制限できる。
【0201】
それぞれのサブブロックに対して、BDOFを実行するか否かが決定されることができ
る。すなわち、それぞれのサブブロックに対するBDOF過程はスキップされることがで
きる。例えば、初期(initial)LO予測サンプルと初期L1予測サンプルとの間
のSAD値が所定の閾値よりも小さい場合、BDOF過程は、当該サブブロックに適用さ
れないことができる。このとき、当該サブブロックの幅と高さがそれぞれW及びHである
とき、前記所定の閾値は(8*W*H>>1)に設定できる。付加的なSAD計算の複雑
度を考慮して、DMVR過程で計算された初期L0予測サンプルと初期L1予測サンプル
との間のSADが再使用できる。
【0202】
現在ブロックに対してBCWが利用可能である場合、例えば、BCW重みインデックス
が不均等重みを指示する場合、BDOFは適用されないことができる。同様に、現在ブロ
ックに対してWPが利用可能である場合、例えば、2つの参照ピクチャのうちの少なくと
も一つに対するluma_weight_lx_flagが1である場合、BDOFは適
用されないことができる。このとき、luma_weight_lx_flagは、lx
予測(xは0又は1)のルマ成分に対するWPの重み係数(weightingfact
ors)がビットストリームに存在するか否かを指示する情報であり得る。或いは、lx
予測のルマ成分に対してWPが適用されるか否かを指示する情報であり得る。CUがSM
VD(SymmetricMVD)モード又はCIIPモードで符号化された場合、BD
OFは適用されないことができる。
【0203】
上述したように、インター予測過程でBDOFが適用されて動き補償過程で参照サンプ
ルを改善することにより、画像の圧縮性能を高めることができる。BDOFは一般モード
のときに行われることができる。すなわち、アフィンモード、GPMモード、CIIPモ
ードなどである場合、BDOFは行われない。
【0204】
本開示は、BDOF過程で参照サンプルの改善のためのBDOFオフセット(bdof
Offset、b(x,y))を誘導するとき、正規化(normalization)
及びクリッピング(clipping)を適用してBDOFの潜在的誤りを防ぎ、性能を
向上させることができる多様な方法を提案する。本開示において、正規化は、多様な単位
(例えば、1/64-pel、1/32-pel、2-pel等)で表現された値を所定
の単位(例えば、1-pel)の値に統一することを意味することができる。また、本開
示において、[a,b]は、aからbまでの値の範囲を意味し、ある値xが[a,b]の
範囲にクリッピングされるというのは、xがaよりも小さい場合にはaの値、xがbより
も大きい場合にはbの値、その他の場合にはxの値を持つようにxの範囲が制限されるこ
とを意味することができる。また、本開示において、ビットデプスは、ルマ成分のビット
デプスに限定されず、例えば、ルマ成分のビットデプスとクロマ成分のビットデプスとが
同一である場合のビットデプスを含むことができる。
【0205】
図15はBDOFを適用して現在ブロックの予測サンプルを導出する過程を説明するた
めの図である。
【0206】
図15のBDOFベースのインター予測手順は、画像符号化装置及び画像復号化装置で
行われることができる。
【0207】
まず、ステップS1510で、現在ブロックの動き情報が導出できる。現在ブロックの
動き情報は、本開示に記載されている多様な方法によって導出できる。例えば、現在ブロ
ックの動き情報は、正規のマージモード、MMVDモード又はAMVPモードによって導
出できる。前記動き情報は、双予測動き情報(L0動き情報、L1動き情報)を含むこと
ができる。例えば、前記L0動き情報はMVL0(L0動きベクトル)、refIdxL
0(L0参照ピクチャインデックス)を含むことができ、前記L1動き情報はMVL1(
L1動きベクトル)、refIdxL1(L1参照ピクチャインデックス)を含むことが
できる。
【0208】
その後、導出された現在ブロックの動き情報に基づいて現在ブロックの予測サンプルが
導出できる(S1520)。具体的には、前記L0動き情報に基づいて現在ブロックに対
するL0予測サンプルが導出できる。また、前記L1動き情報に基づいて現在ブロックに
対するL1予測サンプルが導出できる。
【0209】
その後、導出された予測サンプルに基づいてBDOFオフセットが導出できる(S15
30)。ステップS1530のBDOFは、本開示に記載されている方法に従って行われ
ることができる。例えば、前記L0予測サンプルの(位相による)グラジエント及び前記
L1予測サンプルの(位相による)グラジエントに基づいてBDOFオフセットが導出で
きる。
【0210】
その後、LX(X=0又は1)予測サンプル及び前記BDOFオフセットに基づいて前
記現在ブロックの改善された予測サンプルが導出できる(S1540)。前記改善された
予測サンプルは、現在ブロックの最終予測ブロックとして用いられることができる。
【0211】
画像符号化装置は、図15の方法に従って生成された現在ブロックの予測サンプルに基
づいて原本サンプルとの比較を介してレジデュアルサンプルを導出することができる。前
記レジデュアルサンプルに関する情報(レジデュアル情報)が画像/ビデオ情報に含まれ
て符号化され、ビットストリーム形式で出力されることができるのは、上述したとおりで
ある。また、画像復号化装置は、図15の方法によって生成された現在ブロックの予測サ
ンプル及びビットストリーム内のレジデュアル情報に基づいて取得したレジデュアルサン
プルに基づいて復元された現在ブロックを生成することができるのは、上述したとおりで
ある。
【0212】
図16は本開示の一実施例によるBDOF過程の入力と出力を説明するための図である
【0213】
図16に示すように、BDOF過程の入力は、現在ブロックの幅(nCbW)、高さ(
nCbH)、境界領域が所定の長さ(ex,2)だけ拡張された予測サブブロック(pr
edSamplesL0,predSamplesL1)、予測方向インデックス(pr
edFlagL0,predFlagL1)及び参照ピクチャインデックス(refId
xL0,refIdxL1)を含むことができる。また、BDOF過程の入力は、BDO
F利用フラグ(bdofUtilizationFlag)をさらに含むこともできる。
このとき、BDOF利用フラグは、現在ブロック内のサブブロック単位で入力され、当該
サブブロックに対してBDOFが適用されるか否かを指示することができる。
【0214】
また、BDOF過程は、前記入力情報に基づいてBDOFを適用することにより、改善
された予測ブロック(pbSamples)を生成することができる。
【0215】
図17は本開示の一実施例によるBDOF過程に用いられる変数を説明するための図で
ある。図17は、図16に続く過程であり得る。
【0216】
図17に示すように、BDOF過程を行うために、現在ブロックの入力ビットデプス(
bit/Depth)がBitDepthYに設定されることができる。このとき、Bi
tDepthYは、ビットストリームを介してシグナリングされるビットデプスに関する
情報に基づいて誘導されることができる。また、ビットデプスに基づいて多様な右シフト
量が設定されることができる。例えば、第1シフト量(shift1)、第2シフト量(
shift2)、第3シフト量(shift3)及び第4シフト量(shift4)がビ
ットデプスに基づいて、図17に示すようにそれぞれ誘導されることができる。そして、
shift4に基づいてオフセット(offset4)が設定されることができる。また
、改善された動きベクトルのクリッピング範囲を特定するための変数mvRefineT
hresがビットデプスに基づいて設定されることができる。図17で説明された多様な
変数の用途については後述する。
【0217】
図18は本開示の一実施例によって、BDOFの適用如何に基づいて現在CU内の各サ
ブブロックに対する予測サンプルを生成する方法を説明するための図である。図18は、
図17に続く過程であり得る。
【0218】
図18に開示された過程は、現在CU内のサブブロックごとに行われ、このとき、サブ
ブロックのサイズは4×4であり得る。現在サブブロックに対するBDOF利用フラグ(
bdofUtilizationFlag)が第1値(False、「0」)である場合
、現在サブブロックに対してはBDOFが適用されないことができる。この場合、現在サ
ブブロックの予測サンプルは、L0予測サンプルとL1予測サンプルとの加重和で誘導さ
れ、このとき、L0予測サンプルに適用される重みとL1予測サンプルに適用される重み
とは同一であり得る。図18の式(1)で使用されたshift4及びoffset4は
図17で設定された値であり得る。現在サブブロックに対するBDOF利用フラグ(b
dofUtilizationFlag)が第2値(True、「1」)である場合、現
在サブブロックに対してはBDOFが適用できる。この場合、現在サブブロックの予測サ
ンプルは、後述する本開示によるBDOF過程によって生成されることができる。
【0219】
図19は本開示の一実施例によって、現在サブブロックのグラジエント、自己相関及び
交差相関を誘導する方法を説明するための図である。図19は、図18に続く過程であり
得る。
【0220】
図19に開示された過程は、現在CU内のサブブロックごとに行われ、このとき、サブ
ブロックのサイズは4×4であり得る。
【0221】
図19によれば、式(1)、式(2)に従って、現在サブブロック内の各サンプル位置
(x,y)に対する位置(hx,hy)が誘導されることができる。その後、式(3)~式
(6)に従って、各サンプル位置に対する水平グラジエントと垂直グラジエントが誘導さ
れることができる。その後、式(7)~式(9)に従って、自己相関及び交差相関を誘導
するための変数(第1中間パラメータdiff及び第2中間パラメータtempH及びt
empV)が誘導されることができる。例えば、第1中間パラメータdiffは、式(7
)のように、現在ブロックの予測サンプル(predSamplesL0,predSa
mplesL1)に第2シフト量shift2だけ右シフトを適用した値を用いて誘導さ
れることができる。例えば、第2中間パラメータtempH及びtempVは、式(8)
及び式(9)のように、L0方向のグラジエントとL1方向のグラジエントとを合算した
値に第3シフト量(shift3)だけ右シフトを適用して誘導されることができる。そ
の後、誘導された第1中間パラメータ及び第2中間パラメータに基づいて、式(10)~
式(16)に従って自己相関及び交差相関が誘導されることができる。
【0222】
図20は本開示の一実施例によって、改善された動きベクトル(motionrefi
nement、vx,vy)を誘導し、BDOFオフセットを誘導し、現在サブブロックの
予測サンプルを生成する方法を説明するための図である。図20は、図19に続く過程で
あり得る。
【0223】
図20に開示された過程は、現在CU内のサブブロックごとに行われ、このとき、サブ
ブロックのサイズは4×4であり得る。
【0224】
図20によれば、式(1)、式(2)に従って改善された動きベクトル(vx,vy)が
誘導されることができる。改善された動きベクトルは、mvRefineThresによ
って特定される範囲にクリッピングされることができる。また、改善された動きベクトル
及びグラジエントに基づいて、式(3)に従ってBDOFオフセット(bdofOffs
et)が誘導されることができる。誘導されたBDOFオフセットを用いて、式(4)に
従って現在サブブロックの予測サンプル(pbSamples)が生成されることができ
る。
【0225】
図16図20を参照して説明した方法は、連続的に行われることにより、本開示の第
1実施例によるBDOF過程を実現することができる。図16図20による実施例にお
いて、第1シフト量shift1はMax(6,bitDepth-6)に設定され、m
vRefineThresは1<<Max(5,bitDepth-7)に設定される。
したがって、BitDepthによるpredSampleとBDOFの各パラメータの
ビット幅(bitwidth)は、下記表のように誘導されることができる。
【0226】
【表2】
【0227】
前記表1において、例えば、BitDepthが8である場合、predSample
は16ビット範囲の値を有し、グラジエントは11ビット、vx,vyは6ビットを使用し
、その結果、bdofOffset値の範囲は[-49856,48298]になる。前
記表1に示すように、BitDepthが変化するにつれて、predSampleのビ
ット幅が変わる。しかし、BitDepthとの関連性が高いグラジエントは、BitD
epthが変化するにも拘らず、固定されたビット幅(11ビット)を有する。また、B
itDepthとの関連性がないvx,vyのビット幅は、BitDepthが変化するに
つれて変わる。
【0228】
後述する本開示の他の実施例によれば、BDOF過程で使用されるパラメータの正規化
及びクリッピングを改善することにより、各パラメータとBitDepthとの関連性を
より正確に反映することができる。これにより、各パラメータがより正確な値を有するこ
とができ、さらにBDOF過程におけるメモリオーバーフローイシューも解決することが
できる。
【0229】
本開示の他の実施例は、図16図20を参照して上述した本開示の第1実施例の一部
を変更することにより実現できる。
【0230】
以下、本開示の第2実施例によるBDOF過程を説明する。
【0231】
本開示の第2実施例は、本開示の第1実施例におけるBDOF過程とは異なる正規化方
法を適用する。本開示によれば、グラジエント(gradientHLX、gradie
ntVLX、ここで、Xは0又は1)は、それぞれ現在サンプル位置の左右及び上下2-
ピクセル距離での勾配を示す。また、vx,vyが1/32-pel精度(precisi
on)であり、[-32,31]又は[-32,32]の値の範囲を有する場合、vx
yの1値は、実際1/32-pel距離を示す。よって、vx,vyは、1-ピクセル単
位の値に「1<<5」演算を適用したものと見なすことができる。
【0232】
本開示の第2実施例によれば、BDOFオフセットの計算に用いられる各パラメータ(
水平グラジエント、垂直グラジエント、vx,vy)を1-ピクセル単位の値に正規化する
ことができる。例えば、2-ピクセル距離の勾配であるグラジエントに対しては、「>>
1」の演算を適用して1-ピクセル単位の値に正規化を行うことができる。また、1/3
2-pel精度のvx,vyに対しては、「>>5」の演算を適用して1-ピクセル単位の
値に正規化を行うことができる。これを考慮して、図23の式(3)に示すように、前記
正規化のためにグラジエントとvx,vyとを乗じた値を第1シフト量shift1だけ右
シフトすることができる。このとき、shift1は、ビットデプスに関係なく、固定さ
れた値(例えば、7)に設定することができる。また、vx,vyも、ビットデプスに関係
なく、設定される値の範囲にクリッピングすることができる。例えば、vx,vyのクリッ
ピング範囲を特定する変数mvRefineThresを「1<<5」の値に設定するこ
とができる。上述したように、本開示の第2実施例による正規化は、グラジエントとvx
,vyを一緒に考慮して行われることができる。
【0233】
本開示の第2実施例は、本開示の第1実施例の図17図19及び図20を改善するこ
とにより実現できる。
【0234】
図21は本開示の他の実施例によるBDOF過程に用いられる変数を説明するための図
である。図21図17の例を変形させた例であり得る。よって、図17及び図21にお
いて共通する部分の説明は省略できる。
【0235】
図21に示すように、BDOF過程を行うために、現在ブロックの入力ビットデプス(
bitDepth)がBitDepthYに設定されることができる。このとき、Bit
DepthYは、ビットストリームを介してシグナリングされるビットデプスに関する情
報に基づいて誘導されることができる。また、第1シフト量(shift1)、第2シフ
ト量(shift2)及び第3シフト量(shift3)は、ビットデプスに関係なく、
固定された値に設定されることができる。例えば、第1シフト量(shift1)、第2
シフト量(shift2)及び第3シフト量(shift3)は、それぞれ7、4及び1
に設定されることができる。第4シフト量(shift4)及びオフセット(offse
t4)は、図17の例と同様に誘導されることができる。また、変数mvRefineT
hresは、ビットデプスに関係なく、固定された値に設定されることができる。例えば
、変数mvRefineThresは「1<<5」に設定されることができる。
【0236】
図22は本開示の他の実施例によって、現在サブブロックのグラジエント、自己相関及
び交差相関を誘導する方法を説明するための図である。図22図19の例を変形させた
例であり得る。よって、図19及び図22において共通する部分の説明は省略できる。
【0237】
図19の例と比較すると、図22の式(3)~式(6)のグラジエント計算において、
右シフト演算(「>>shift1」)は行われないことができる。本実施例によれば、
右シフト演算を省略することにより、より高い精度を有するグラジエントを得ることがで
きる。
【0238】
図23は本開示の他の実施例によって、改善された動きベクトル(motionref
inement、vx,vy)を誘導し、BDOFオフセットを誘導し、現在サブブロック
の予測サンプルを生成する方法を説明するための図である。図23図20の例を変形さ
せた例であり得る。よって、図20及び図23において共通する部分の説明は省略できる
【0239】
図20の例と比較すると、図23の式(3)のbdofOffsetの計算において、
右シフト演算「>>1」は「>>shift1」に変更できる。すなわち、上述したよう
に、グラジエントとvx,vyの正規化のためにグラジエントとvx,vyとを乗じた値を第
1シフト量(shift1)だけ右シフトすることができる。このとき、shift1は
ビットデプスに関係なく、固定された値(例えば、7)に設定できるのは、上述したとお
りである。
【0240】
上述したように、本開示の第1実施例による図17図19及び図20の例を図21
図22及び図23のようにそれぞれ修正することにより、本開示の第2実施例が実現でき
る。
【0241】
本開示の第2実施例によれば、BitDepthによるpredSampleとBDO
Fの各パラメータのビット幅(bitwidth)は、下記表のように誘導できる。
【0242】
【表3】
【0243】
前記表2に示すように、ビットデプスとの関連性が高いグラジエントは、ビットデプス
に応じて変化する。また、predSample値に基づいてグラジエント値の範囲が定
められるので、グラジエント値の精度が増加することができる。また、ビットデプスとの
関連性がないvx,vyのビット幅は、ビットデプスに関係なく、固定された値を持つこと
ができる。表2によれば、グラジエント値の範囲が増加する代わりに、vx,vyの値の範
囲が減少するので、bdofOffset値の範囲には影響を与えない。
【0244】
以下、本開示の第3実施例によるBDOF過程を説明する。
【0245】
本開示の第2実施例で上述したように、グラジエント及びvx,vyは1ピクセル単位の
値に正規化されることができる。しかしながら、図22の実施例によれば、グラジエント
計算過程でビットオーバーフロー(bitoverflow)が発生することができる。
例えば、図22の式(3)~式(6)のように、グラジエント計算過程でシフト演算を行
わない場合、グラジエントの計算のために32ビット演算が行われることができる。すな
わち、グラジエント計算の際に、ビットオーバーフローが発生することができる。
【0246】
本開示の第3実施例は、これを考慮して、グラジエントに対する正規化をグラジエント
計算時に適用することができる。すなわち、グラジエント計算時に「>>1」演算を適用
して正規化を行うことにより、ビットオーバーフローを防止することができる。本開示の
第3実施例によれば、グラジエントは16ビットを超えないことができる。一方、vx
yに対する正規化は、調整されたshift1だけ右シフト演算を適用することにより
行われることができる。例えば、shift1は、ビットデプスに関係なく、固定された
値(例えば、6)に設定されることができる。
【0247】
本開示の第3実施例は、本開示の第2実施例の図21及び図22を改善することにより
実現できる。
【0248】
図24は本開示の別の実施例によるBDOF過程に用いられる変数を説明するための図
である。図24図21の例を変形させた例であり得る。よって、図21及び図24にお
いて共通する部分の説明は省略できる。
【0249】
図24に示すように、BDOF過程を行うために、現在ブロックの入力ビットデプス(
bitDepth)がBitDepthYに設定されることができる。このとき、Bit
DepthYは、ビットストリームを介してシグナリングされるビットデプスに関する情
報に基づいて誘導されることができる。また、第1シフト量(shift1)、第2シフ
ト量(shift2)及び第3シフト量(shift3)は、ビットデプスに関係なく、
固定された値に設定されることができる。例えば、第1シフト量(shift1)、第2
シフト量(shift2)及び第3シフト量(shift3)はそれぞれ6、4及び1に
設定されることができる。第4シフト量(shift4)及びオフセット(offset
4)は、図17の例と同様に誘導されることができる。また、変数mvRefineTh
resは、ビットデプスに関係なく、固定された値に設定されることができる。例えば、
変数mvRefineThresは「1<<5」に設定されることができる。
【0250】
図25は本開示の別の実施例によって、現在サブブロックのグラジエント、自己相関及
び交差相関を誘導する方法を説明するための図である。図25図22の例を変形させた
例であり得る。よって、図22及び図25において共通する部分の説明は省略できる。
【0251】
図22の方法と比較すると、図25の式(3)~式(6)のグラジエント計算において
、右シフト演算(「>>1」)が行われることができる。このようにグラジエント計算過
程で右シフト演算を行うことにより、ビットオーバーフローの発生を防止することができ
る。
【0252】
また、図24のように、shift1は6に修正されるので、グラジエントとvx,vy
に適用される全体右シフト量は「7」となる。よって、本開示の第3実施例と本開示の第
2実施例における全体右シフト量は同様に維持されることができる。
【0253】
上述したように、本開示の第2実施例による図21及び図22の例を図24及び図25
のようにそれぞれ修正することにより、本開示の第3実施例が実現できる。
【0254】
本開示の第3実施例によれば、BitDepthによるpredSampleとBDO
Fの各パラメータのビット幅(bitwidth)は、下記表のように誘導されることが
できる。
【0255】
【表4】
【0256】
前記表3に示すように、ビットデプスとの関連性が高いグラジエントはビットデプスに
応じて変化する。また、predSample値に基づいてグラジエント値の範囲が定め
られるので、グラジエント値の精度が増加することができる。また、図25の式(3)~
式(6)で右シフト演算を行うことにより、グラジエント計算時のビットオーバーフロー
を防止することができる。また、ビットデプスとの関連性がないvx,vyのビット幅は、
ビットデプスに関係なく、固定された値を有することができる。
【0257】
以下、本開示の第4実施例によるBDOF過程を説明する。
【0258】
本開示の第2実施例で上述したように、グラジエント及びvx,vyは、1-ピクセル単
位の値に正規化されることができる。しかし、図22の実施例によれば、グラジエント計
算過程でビットオーバーフロー(bitoverflow)が発生することができる。例
えば、図22の式(3)~式(6)のように、グラジエント計算過程でシフト演算を行わ
ない場合、グラジエントの計算のために32ビット演算が行われることができる。すなわ
ち、グラジエント計算時にビットオーバーフローが発生することができる。
【0259】
本開示の第4実施例は、これを考慮して、グラジエント計算時にクリッピングを行うこ
とにより、ビットオーバーフローを防止することができる。本開示の第4実施例によれば
、グラジエントは16ビットを超えないことができる。グラジエント及びvx,vyに対す
る正規化は、本開示の第2実施例と同様に行われることができる。このために、グラジエ
ントとvx,vyとを乗じた値は、第1シフト量(shift1)だけ右シフトすることが
できる。このとき、shift1は、ビットデプスに関係なく、固定された値(例えば、
7)に設定されることができる。
【0260】
本開示の第4実施例は本開示の第2実施例の図21及び図22を改善することにより実
現できる。
【0261】
図26は本開示の別の実施例によるBDOF過程に用いられる変数を説明するための図
である。図26図21の例を変形させた例であり得る。よって、図21及び図26にお
いて共通する部分の説明は省略できる。
【0262】
図26に示すように、BDOF過程を行うために、現在ブロックの入力ビットデプス(
bitDepth)がBitDepthYに設定されることができる。このとき、Bit
DepthYは、ビットストリームを介してシグナリングされるビットデプスに関する情
報に基づいて誘導されることができる。また、第1シフト量(shift1)、第2シフ
ト量(shift2)及び第3シフト量(shift3)は、ビットデプスに関係なく、
固定された値に設定されることができる。例えば、第1シフト量(shift1)、第2
シフト量(shift2)及び第3シフト量(shift3)はそれぞれ7、4及び1に
設定されることができる。第4シフト量(shift4)及びオフセット(offset
4)は、図17の例と同様に誘導されることができる。また、変数mvRefineTh
resは、ビットデプスに関係なく、固定された値に設定されることができる。例えば、
変数mvRefineThresは「1<<5」に設定されることができる。また、グラ
ジエント値のクリッピング範囲を特定するための変数gradLimitが設定されるこ
とができる。このとき、gradLimitは、ビットデプスに基づいて設定されること
ができ、例えば、「1<<Max(15,BitDepth+3)」に設定されることが
できる。
【0263】
図27は本開示の別の実施例によって、現在サブブロックのグラジエント、自己相関及
び交差相関を誘導する方法を説明するための図である。図27図22の例を変形させた
例であり得る。よって、図22及び図27において共通する部分の説明は省略できる。
【0264】
図22の方法と比較すると、図27の式(3)~式(6)のグラジエント計算において
、クリッピング演算が行われることができる。すなわち、計算されたグラジエント値は、
gradLimitによって特定される範囲の値にクリッピングされることができる。例
えば、クリッピングの範囲は[-gradLimit,gradLimit-1]であり
得る。本開示の第3実施例によれば、このようにグラジエント計算過程でクリッピング演
算を行うことにより、ビットオーバーフローの発生を防止することができる。
【0265】
上述のように、本開示の第2実施例による図21及び図22の例を図26及び図27
ようにそれぞれ修正することにより、本開示の第4実施例が実現できる。
【0266】
本開示の第4実施例によれば、BitDepthによるpredSampleとBDO
Fの各パラメータのビット幅(bitwidth)は、下記表のように誘導されることが
できる。
【0267】
【表5】
【0268】
前記表4に示すように、ビットデプスとの関連性が高いグラジエントは、ビットデプス
に応じて変化する。また、predSample値に基づいてグラジエント値の範囲が定
められるので、グラジエント値の精度が増加することができる。また、図27の式(3)
~式(6)でクリッピング演算を行うことにより、グラジエント計算時のビットオーバー
フローを防止することができる。また、ビットデプスとの関連性がないvx,vyのビット
幅は、ビットデプスに関係なく、固定された値を有することができる。
【0269】
以下、本開示によるBDOFオフセットをクリッピングする実施例について説明する。
【0270】
インター予測の補間(interpolation)によって生成された予測サンプル
(predSample)は、入力ビットデプスと補間フィルタの係数によって値の範囲
が定められ、最悪の場合、[-16830,33150]の値の範囲を有する。このとき
、16ビットオーバーフローを防止するために、predSample値に-8192値
を加えることにより、表1に示すように、predSampleの値は[-25022,
24958]の範囲に調整されることができる。
【0271】
したがって、表1に示すように、BitDepthYが8である場合、predSam
pleは16ビット範囲の値を有し、gradientは11ビット、vx,vyは6ビッ
トを使用し、その結果、bdofOffset値の範囲は[-49856,48298]
になる。よって、本開示の様々な実施例によって、predSampleとbdofOf
fsetを加える場合、16ビットオーバーフローが発生することができる。
【0272】
本開示によれば、BDOFオフセット(bdofOffset)値を所定の範囲にクリ
ッピングすることにより改善された予測サンプルの値を計算するとき、16ビットオーバ
ーフローが発生することを防止することができる。より具体的には、ビットデプスが8~
12である場合、predSampleは16ビット範囲の値を有し、ビットデップスが
14及び16である場合、predSampleは18ビット範囲及び20ビット範囲の
値をそれぞれ有する。よって、bdofOffsetのクリッピングの範囲もビットデプ
スを考慮して定義できる。例えば、bdofOffsetのクリッピングの範囲を特定す
る変数OffsetLimitがビットデプスベースで定義され、本開示の実施例にbd
ofOffsetのクリッピングが付加的に適用されることができる。
【0273】
例えば、図20の式(4)及び図23の式(4)で、bdofOffsetは[-Of
fsetLimit,OffsetLimit-1]の範囲にクリッピングされることが
できる。例えば、図20の式(4)及び図23の式(4)で、bdofOffsetは、
Clip3(-OffsetLimit,OffsetLimit-1,bdofOff
set)に置き換えられることができる。このとき、OffsetLimitはビットデ
プスに基づいて定義できる。例えば、OffsetLimitは、「1<<Max(12
,BitDepthY)」に設定されることができる。上述のようにbdofOffse
tにクリッピングを適用することにより、predSampleとbdofOffset
を加える場合に発生しうるビットオーバーフローを防止することができる。
【0274】
以下、本開示の別の実施例によって、BDOFオフセット(bdofOffset)を
誘導する方法を説明する。
【0275】
本実施例によれば、BDOFオフセットの精度を向上させるために、グラジエント計算
過程における右シフト演算を最小化することができる。また、bdofOffset計算
過程で右シフト演算を行うとき、オフセット値を加えることにより、bdofOffse
tの精度をさらに高めることができる。このとき、オフセット値は右シフト量に基づいて
決定されることができる。例えば、本実施例は、本開示の第3実施例に適用できる。この
場合、図23の式(3)は、次のとおりに変形できる。
【0276】
bdofOffset=(vx*(gradientHL0[x+1][y+1]-g
radientHL1[x+1][y+1]+offset))>>shift1+(v
y*(gradientVL0[x+1][y+1]-gradientVL1[x+1
][y+1])+offset)>>shift1
【0277】
上記式において、shift1は「6」に設定され、offsetは「1<<(shi
ft1-1)」のようにshift1に基づいて設定されることができる。
【0278】
前記式(3)の変形は、本開示の第3実施例に適用されるものに限定されず、本開示の
他の実施例にも適用できる。例えば、前記式(3)の変形は、本開示の第4実施例に適用
できる。この場合、shift1は「7」に設定され、offsetは「1<<(shi
ft1-1)」のようにshift1に基づいて設定されることができる。
【0279】
本実施例によれば、グラジエント計算過程での右シフト演算を最小化し、bdofOf
fset計算過程で右シフト演算を行うとき、オフセット値を加えることにより、bdo
fOffsetの精度を高めることができる。
【0280】
以下、本開示の別の実施例によって、BDOFオフセット(bdofOffset)を
誘導する方法を説明する。
【0281】
上述したように、BDOFオフセット計算過程で、predictionsample
及びグラジエントなどを用いて様々な変数が誘導される。本開示の多様な実施例によって
正規化を行うとき、グラジエント計算過程で右シフト量が「1」に設定されるか或いはク
リッピングが行われる場合、グラジエント値のビット範囲が変わり得る。例えば、表1に
示されているように、本開示の第1実施例は、16ビット範囲のpredictions
ampleに「>>6」を適用することにより、11ビット範囲のグラジエントを計算す
ることができる。このとき、本開示の第3実施例又は第4実施例によって16ビット範囲
のpredictionsampleに「>>1」を適用するか或いはクリッピングを適
用する場合、表3又は表4に示されているように、グラジエントは16ビット範囲の値を
持つことができる。しかし、グラジエント値の範囲が増加する場合、グラジエントに基づ
いて計算される変数tempH、tempVなどを計算するとき、16ビットオーバーフ
ローが発生することができる。本実施例は、これを考慮して、tempH及びtempV
計算時にグラジエントの各項目に右シフト演算を適用することにより、ビットオーバーフ
ローの発生を防止することができる。例えば、図25及び図27の式(8)及び式(9)
は、次のように修正できる。
【0282】
tempH[x][y]=(gradientHL0[x][y]>>shift3)
+(gradientHL1[x][y]>>shift3)(8)
【0283】
tempV[x][y]=(gradientVL0[x][y]>>shift3)
+(gradientVL1[x][y]>>shift3)(9)
【0284】
前記修正された式(8)及び式(9)で、shift3はMax(1,bitDept
h-11)又は固定値1に設定されることができる。上述のように、本開示の第3実施例
及び第4実施例を修正することにより、tempH及びtempV計算時にビットオーバ
ーフローの発生を防止することができる。
【0285】
以下、本開示の別の実施例によってビットオーバーフローの発生を防止する方法を説明
する。
【0286】
上述したように、本開示の第3実施例又は第4実施例によって16ビット範囲のpre
dictionsampleに「>>1」を適用するか或いはクリッピングを適用する場
合、変数tempH、tempVなどを計算するとき、16ビットオーバーフローが発生
することができる。このとき、変数tempH及びtempVに基づいて計算されるsG
x2、sGy2、sGxGy、sGxdI、sGydIなどの中間パラメータの計算にお
いても、16ビットオーバーフローが発生することができる。本実施例によれば、変数t
empH及びtempVだけでなく、sGx2、sGy2、sGxGy、sGxdI、s
GydIなどの中間パラメータの計算においても、ビットオーバーフローの発生を防止す
るために、前記修正された式(8)及び式(9)に適用される右シフトの量(shift
3)を調節することができる。例えば、本開示の第3実施例の場合、図25の式(8)及
び式(9)を上記のように修正するにあたり、shift3はMax(6,bitDep
th-6)又は固定値6に設定されることができる。また、本開示の第4実施例の場合、
図27の式(8)及び式(9)を上記のように修正するにあたり、shift3はMax
(6,bitDepth-6)+1又は固定値7に設定されることができる。本実施例に
よれば、変数tempH及びtempVだけでなく、sGx2、sGy2、sGxGy、
sGxdI、sGydIなどの中間パラメータの計算においても、ビットオーバーフロー
の発生を防止することができる。
【0287】
本開示の実施例は上述した例に限定されず、本開示に記載された実施例は他の実施例又
は変形例と組み合わせられて使用されることができる。例えば、本開示の第5実施例は、
図16図20を参照して説明した本開示の第1実施例を構成するステップのうち、図1
7のステップを変更することにより実現できる。例えば、本開示の第1実施例の図17
、本開示の第3実施例の図24に変更されることにより、本開示の第5実施例が導出され
ることができる。
【0288】
本開示の例示的な方法は、説明の明確性のために動作のシリーズで表現されているが、
これは、ステップが行われる順序を制限するためのものではなく、必要な場合には、それ
ぞれのステップが同時に又は異なる順序で行われることもできる。本開示による方法を実
現するために、例示するステップにさらに他のステップを含むか、一部のステップを除い
て残りのステップを含むか、或いは一部のステップを除いて追加の他のステップを含むこ
ともできる。
【0289】
本開示において、所定の動作(ステップ)を行う画像符号化装置又は画像復号化装置は
、当該動作(ステップ)の実行条件や状況を確認する動作(ステップ)を行うことができ
る。例えば、所定の条件が満足される場合、所定の動作を行うと記載された場合、画像符
号化装置又は画像復号化装置は、前記所定の条件が満足されるか否かを確認する動作を行
った後、前記所定の動作を行うことができる。
【0290】
本開示の様々な実施例は、すべての可能な組み合わせを羅列したものではなく、本開示
の代表的な態様を説明するためのものであり、様々な実施例で説明する事項は、独立して
適用されてもよく、2つ以上の組み合わせで適用されてもよい。
【0291】
また、本開示の様々な実施例は、ハードウェア、ファームウェア(firmware)
、ソフトウェア、又はそれらの組み合わせなどによって実現できる。ハードウェアによる
実現の場合、1つ又はそれ以上のASICs(ApplicationSpecific
IntegratedCircuits)、DSPs(DigitalSignalPr
ocessors)、DSPDs(DigitalSignalProcessingD
evices)、PLDs(ProgrammableLogicDevices)、F
PGAs(FieldProgrammableGateArrays)、汎用プロセッ
サ(generalprocessor)、コントローラ、マイクロコントローラ、マイ
クロプロセッサなどによって実現できる。
【0292】
また、本開示の実施例が適用された画像復号化装置及び画像符号化装置は、マルチメデ
ィア放送送受信装置、モバイル通信端末、ホームシネマビデオ装置、デジタルシネマビデ
オ装置、監視用カメラ、ビデオ会話装置、ビデオ通信などのリアルタイム通信装置、モバ
イルストリーミング装置、記憶媒体、カムコーダ、注文型ビデオ(VoD)サービス提供
装置、OTTビデオ(Overthetopvideo)装置、インターネットストリー
ミングサービス提供装置、3次元(3D)ビデオ装置、画像電話ビデオ装置、及び医療用
ビデオ装置などに含まれることができ、ビデオ信号又はデータ信号を処理するために使用
できる。例えば、OTTビデオ(Overthetopvideo)装置としては、ゲー
ムコンソール、ブルーレイプレーヤー、インターネット接続TV、ホームシアターシステ
ム、スマートフォン、タブレットPC、DVR(DigitalVideoRecode
r)などを含むことができる。
【0293】
図28は本開示の実施例が適用できるコンテンツストリーミングシステムを例示する図
である。
【0294】
図28に示すように、本開示の実施例が適用されたコンテンツストリーミングシステム
は、大きく、符号化サーバ、ストリーミングサーバ、Webサーバ、メディアストレージ
、ユーザ装置及びマルチメディア入力装置を含むことができる。
【0295】
前記符号化サーバは、スマートフォン、カメラ、カムコーダなどのマルチメディア入力
装置から入力されたコンテンツをデジタルデータに圧縮してビットストリームを生成し、
これを前記ストリーミングサーバに伝送する役割を果たす。他の例として、スマートフォ
ン、カメラ、ビデオカメラなどのマルチメディア入力装置がビットストリームを直接生成
する場合、前記符号化サーバは省略できる。
【0296】
前記ビットストリームは、本開示の実施例が適用された画像符号化方法及び/又は画像
符号化装置によって生成でき、前記ストリーミングサーバは、前記ビットストリームを伝
送又は受信する過程で一時的に前記ビットストリームを保存することができる。
【0297】
前記ストリーミングサーバは、Webサーバを介してユーザの要求に基づいてマルチメ
ディアデータをユーザ装置に伝送し、前記Webサーバは、ユーザにどんなサービスがあ
るかを知らせる媒介体の役割を果たすことができる。ユーザが前記Webサーバに所望の
サービスを要求すると、前記Webサーバは、これをストリーミングサーバに伝達し、前
記ストリーミングサーバは、ユーザにマルチメディアデータを伝送することができる。こ
の時、前記コンテンツストリーミングシステムは、別途の制御サーバを含むことができ、
この場合、前記制御サーバは、前記コンテンツストリーミングシステム内の各装置間の命
令/応答を制御する役割を果たすことができる。
【0298】
前記ストリーミングサーバは、メディアストレージ及び/又は符号化サーバからコンテ
ンツを受信することができる。例えば、前記符号化サーバからコンテンツを受信する場合
、前記コンテンツをリアルタイムで受信することができる。この場合、円滑なストリーミ
ングサービスを提供するために、前記ストリーミングサーバは、前記ビットストリームを
一定時間の間保存することができる。
【0299】
前記ユーザ装置の例としては、携帯電話、スマートフォン(smartphone)、
ノートパソコン(laptopcomputer)、デジタル放送用端末、PDA(pe
rsonaldigitalassistants)、PMP(portablemul
timediaplayer)、ナビゲーション、スレートPC(slatePC)、タ
ブレットPC(tabletPC)、ウルトラブック(ultrabook)、ウェアラ
ブルデバイス(wearabledevice)、例えば、スマートウォッチ(smar
twatch)、スマートグラス(smartglass)、HMD(headmoun
teddisplay)、デジタルTV、デスクトップコンピュータ、デジタルサイネー
ジなどがあり得る。
【0300】
前記コンテンツストリーミングシステム内の各サーバは、分散サーバとして運営される
ことができ、この場合、各サーバから受信するデータは、分散処理されることができる。
【0301】
本開示の範囲は、様々な実施例の方法による動作が装置又はコンピュータ上で実行され
るようにするソフトウェア又はマシン-実行可能なコマンド(例えば、オペレーティング
システム、アプリケーション、ファームウェア(firmware)、プログラムなど)
、及びこのようなソフトウェア又はコマンドなどが保存されて装置又はコンピュータ上で
実行できる非一時的なコンピュータ可読媒体(non-transitorycompu
ter-readablemedium)を含む。
【産業上の利用可能性】
【0302】
本開示による実施例は、画像を符号化/復号化するために利用可能である。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27
図28
【手続補正書】
【提出日】2024-07-02
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
画像復号化装置によって行われる画像復号化方法であって、
現在ブロックの動き情報に基づいて、前記現在ブロックのL0予測サンプル及びL1予測サンプルを導出するステップ;
前記現在ブロック内の現在サブブロックを含む所定の領域に対するグラジエントを導出するステップ;
前記グラジエントに基づいて、前記現在サブブロックに対するオフセット動きベクトル(v,v)を導出するステップ;
前記グラジエント及び前記オフセット動きベクトルに基づいて、BDOF(Bi-directionalopticalflow)オフセットを導出するステップ;及び
前記現在ブロックの前記L0予測サンプル及び前記L1予測サンプル並びに前記BDOFオフセットに基づいて、前記現在ブロックに対する予測サンプルを導出するステップ;を含んでなり、
前記グラジエントは、前記現在ブロックの前記L0予測サンプル及び前記L1予測サンプルを第1シフト量だけ右シフトすることにより導出され、
前記オフセット動きベクトル(v,v)を導出するステップは、
前記現在ブロックの前記L0予測サンプルから前記現在ブロックの前記L1予測サンプルを減算することにより、第1中間パラメータdiffを導出するステップと、
前記グラジエントを第3シフト量だけ右シフトすることにより、第2中間パラメータtempH及び第2中間パラメータtempVを導出するステップと、を含み、
前記第1中間パラメータdiffを導出するステップは、前記現在ブロックの前記L0予測サンプル及び前記L1予測サンプルを第2シフト量だけ右シフトするステップを含み、
前記第1シフト量、前記第2シフト量、及び前記第3シフト量は、前記現在ブロックのビットデプス(bit depth)に関係なく、固定された値に設定され、
前記第1シフト量の値は、前記第2シフト量の値及び前記第3シフト量の値と異なるものであり、
前記第2シフト量の値は、前記第3シフト量の値と異なるものである、画像復号化方法。
【請求項2】
前記第1シフト量は6である、請求項1に記載の画像復号化方法。
【請求項3】
前記第2シフト量は4である、請求項1に記載の画像復号化方法。
【請求項4】
前記第3シフト量は1である、請求項1に記載の画像復号化方法。
【請求項5】
前記現在ブロックに対する前記予測サンプルを導出するステップは、前記BDOFオフセットを所定の範囲にクリッピングするステップを含み、
前記所定の範囲は、前記現在ブロックのビットデプスに基づいて設定される、請求項1に記載の画像復号化方法。
【請求項6】
画像符号化装置によって行われる画像符号化方法であって、
現在ブロックの動き情報に基づいて、前記現在ブロックのL0予測サンプル及びL1予測サンプルを導出するステップ;
前記現在ブロック内の現在サブブロック含む所定の領域に対するグラジエントを導出するステップ;
前記グラジエントに基づいて、前記現在サブブロックに対するオフセット動きベクトル(v,v)を導出するステップ;
前記グラジエント及び前記オフセット動きベクトルに基づいて、BDOF(Bi-directionalopticalflow)オフセットを導出するステップ;及び
前記現在ブロックの前記L0予測サンプル及び前記L1予測サンプル並びに前記BDOFオフセットに基づいて、前記現在ブロックに対する予測サンプルを導出するステップ;を含んでなり、
前記グラジエントは、前記現在ブロックの前記L0予測サンプル及び前記L1予測サンプルを第1シフト量だけ右シフトすることにより導出され、
前記オフセット動きベクトル(v,v)を導出するステップは、
前記現在ブロックの前記L0予測サンプルから前記現在ブロックの前記L1予測サンプルを減算することにより、第1中間パラメータdiffを導出するステップと、
前記グラジエントを第3シフト量だけ右シフトすることにより、第2中間パラメータtempH及び第2中間パラメータtempVを導出するステップと、を含み、
前記第1中間パラメータdiffを導出するステップは、前記現在ブロックの前記L0予測サンプル及び前記L1予測サンプルを第2シフト量だけ右シフトするステップを含み、
前記第1シフト量、前記第2シフト量、及び前記第3シフト量は、前記現在ブロックのビットデプス(bit depth)に関係なく、固定された値に設定され、
前記第1シフト量の値は、前記第2シフト量の値及び前記第3シフト量の値と異なるものであり、
前記第2シフト量の値は、前記第3シフト量の値と異なるものである、画像符号化方法。
【請求項7】
ビットストリームを伝送する方法であって、
現在ブロックの動き情報に基づいて、前記現在ブロックのL0予測サンプル及びL1予測サンプルを導出するステップ;
前記現在ブロック内の現在サブブロック含む所定の領域に対するグラジエントを導出するステップ;
前記グラジエントに基づいて、前記現在サブブロックに対するオフセット動きベクトル(v,v)を導出するステップ;
前記グラジエント及び前記オフセット動きベクトルに基づいて、BDOF(Bi-directionalopticalflow)オフセットを導出するステップ;及び
前記現在ブロックの前記L0予測サンプル及び前記L1予測サンプル並びに前記BDOFオフセットに基づいて、前記現在ブロックに対する予測サンプルを導出するステップ;によって生成されたビットストリームを伝送することを含んでなり、
前記グラジエントは、前記現在ブロックの前記L0予測サンプル及び前記L1予測サンプルを第1シフト量だけ右シフトすることにより導出され、
前記オフセット動きベクトル(v,v)を導出するステップは、
前記現在ブロックの前記L0予測サンプルから前記現在ブロックの前記L1予測サンプルを減算することにより、第1中間パラメータdiffを導出するステップと、
前記グラジエントを第3シフト量だけ右シフトすることにより、第2中間パラメータtempH及び第2中間パラメータtempVを導出するステップと、を含み、
前記第1中間パラメータdiffを導出するステップは、前記現在ブロックの前記L0予測サンプル及び前記L1予測サンプルを第2シフト量だけ右シフトするステップを含み、
前記第1シフト量、前記第2シフト量、及び前記第3シフト量は、前記現在ブロックのビットデプス(bit depth)に関係なく、固定された値に設定され、
前記第1シフト量の値は、前記第2シフト量の値及び前記第3シフト量の値と異なるものであり、
前記第2シフト量の値は、前記第3シフト量の値と異なるものである、伝送方法。