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

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

▶ インターデジタル ヴイシー ホールディングス, インコーポレイテッドの特許一覧

特許7601954画像の符号化および復号のための方法および装置
<>
  • 特許-画像の符号化および復号のための方法および装置 図1
  • 特許-画像の符号化および復号のための方法および装置 図2
  • 特許-画像の符号化および復号のための方法および装置 図3
  • 特許-画像の符号化および復号のための方法および装置 図4
  • 特許-画像の符号化および復号のための方法および装置 図5
  • 特許-画像の符号化および復号のための方法および装置 図6
  • 特許-画像の符号化および復号のための方法および装置 図7
  • 特許-画像の符号化および復号のための方法および装置 図8
  • 特許-画像の符号化および復号のための方法および装置 図9
  • 特許-画像の符号化および復号のための方法および装置 図10
  • 特許-画像の符号化および復号のための方法および装置 図11
  • 特許-画像の符号化および復号のための方法および装置 図12
  • 特許-画像の符号化および復号のための方法および装置 図13
  • 特許-画像の符号化および復号のための方法および装置 図14
  • 特許-画像の符号化および復号のための方法および装置 図15
  • 特許-画像の符号化および復号のための方法および装置 図16
  • 特許-画像の符号化および復号のための方法および装置 図17
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-09
(45)【発行日】2024-12-17
(54)【発明の名称】画像の符号化および復号のための方法および装置
(51)【国際特許分類】
   H04N 19/119 20140101AFI20241210BHJP
   H04N 19/176 20140101ALI20241210BHJP
   H04N 19/70 20140101ALI20241210BHJP
【FI】
H04N19/119
H04N19/176
H04N19/70
【請求項の数】 20
【外国語出願】
(21)【出願番号】P 2023099109
(22)【出願日】2023-06-16
(62)【分割の表示】P 2019552884の分割
【原出願日】2018-03-13
(65)【公開番号】P2023120332
(43)【公開日】2023-08-29
【審査請求日】2023-06-27
(31)【優先権主張番号】17305347.1
(32)【優先日】2017-03-27
(33)【優先権主張国・地域又は機関】EP
(73)【特許権者】
【識別番号】518338149
【氏名又は名称】インターデジタル ヴイシー ホールディングス, インコーポレイテッド
(74)【代理人】
【識別番号】100079108
【弁理士】
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【弁理士】
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【弁理士】
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【弁理士】
【氏名又は名称】内藤 和彦
(74)【代理人】
【識別番号】100108213
【弁理士】
【氏名又は名称】阿部 豊隆
(72)【発明者】
【氏名】ポワリエ,タンギ
(72)【発明者】
【氏名】ギャルピン,フランク
(72)【発明者】
【氏名】ルリアネック,ファブリス
【審査官】鈴木 順三
(56)【参考文献】
【文献】特表2019-535204(JP,A)
【文献】特表2013-509788(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00 - 19/98
(57)【特許請求の範囲】
【請求項1】
少なくとも一つの分割モードを初期ブロックに適用することの結果として生じる現在のブロックを取得することであって、前記現在のブロックを取得するために前記初期ブロックに適用される各分割は、分割モードのセットに属し、前記分割モードのセットの各分割モードは、複数の第2のブロックにおける第1のブロックの分割を可能にする、ことと、
前記分割モードのセットにおける前記現在のブロックに適用されるべき現在の分割モードを決定することと、
前記決定された現在の分割モードに従って、前記現在のブロックを復号することと、
を含み、
前記現在のブロックが画像の単一の境界を超えることに応答して、前記現在の分割モードを決定することは、分割方向が前記画像の単一の境界の方向に平行である前記分割モードのセットに含まれる複数の分割モードにおける前記現在の分割モードの特定を可能にする情報を復号することを含む、復号方法。
【請求項2】
hは第1のブロックの高さであり、wは前記第1のブロックの幅であり、かつ前記複数の分割モードは、次の分割モード:
前記第1のブロックを、高さh/4の1つの上側第2のブロックおよび高さ3h/4の1つの下側第2のブロックに水平に分割すること、
前記第1のブロックを、高さh/4の1つの下側第2のブロックおよび高さ3h/4の1つの上側第2のブロックに水平に分割すること、
前記第1のブロックを、幅w/4の1つの左側第2のブロックおよび幅3w/4の1つの右側第2のブロックに垂直に分割すること、
前記第1のブロックを、幅w/4の1つの右側第2のブロックおよび幅3w/4の1つの左側第2のブロックに垂直に分割すること、
前記第1のブロックを、高さh/4の1つの第2のブロック、高さh/2の1つの中央第2のブロックおよび高さh/4の1つの第2のブロックに水平に分割すること、
前記第1のブロックを、幅w/4の1つの第2のブロック、幅w/2の1つの中央第2のブロックおよび幅w/4の1つの第2のブロックに垂直に分割すること、
前記第1のブロックを、高さh/2の2つの第2のブロックに水平に分割すること、ならびに
前記第1のブロックを、幅w/2の2つの第2のブロックに垂直に分割すること、
の少なくとも2つを含む、請求項1に記載の復号方法。
【請求項3】
前記現在のブロックが画像の前記境界を右側で又は左側で超えない場合に、前記現在のブロックを高さh/2の二つのブロックに水平に分割することが許可され、
前記現在のブロックが画像の前記境界を上側で又は下側で超えない場合に、前記現在のブロックを幅w/2の二つのブロックに垂直に分割することが許可される、請求項1に記載の復号方法。
【請求項4】
少なくとも一つの分割モードを初期ブロックに適用することの結果として生じる現在のブロックを取得することであって、前記現在のブロックを取得するために前記初期ブロックに適用される各分割は、分割モードのセットに属し、前記分割モードのセットの各分割モードは、複数の第2のブロックにおける第1のブロックの分割を可能にする、ことと、
前記分割モードのセットにおける前記現在のブロックに適用されるべき現在の分割モードを決定することと、
前記決定された現在の分割モードに従って、前記現在のブロックを符号化することと、
を含み、
前記現在のブロックが画像の単一の境界を超えることに応答して、前記現在の分割モードは、分割方向が前記画像の単一の境界の方向に平行である前記分割モードのセットに含まれる複数の分割モードから選択される、符号化方法。
【請求項5】
hは第1のブロックの高さであり、wは前記第1のブロックの幅であり、かつ前記複数の分割モードは、次の分割モード:
前記第1のブロックを、高さh/4の1つの上側第2のブロックおよび高さ3h/4の1つの下側第2のブロックに水平に分割すること、
前記第1のブロックを、高さh/4の1つの下側第2のブロックおよび高さ3h/4の1つの上側第2のブロックに水平に分割すること、
前記第1のブロックを、幅w/4の1つの左側第2のブロックおよび幅3w/4の1つの右側第2のブロックに垂直に分割すること、
前記第1のブロックを、幅w/4の1つの右側第2のブロックおよび幅3w/4の1つの左側第2のブロックに垂直に分割すること、
前記第1のブロックを、高さh/4の1つの第2のブロック、高さh/2の1つの中央第2のブロックおよび高さh/4の1つの第2のブロックに水平に分割すること、
前記第1のブロックを、幅w/4の1つの第2のブロック、幅w/2の1つの中央第2のブロックおよび幅w/4の1つの第2のブロックに垂直に分割すること、
前記第1のブロックを、高さh/2の2つの第2のブロックに水平に分割すること、ならびに
前記第1のブロックを、幅w/2の2つの第2のブロックに垂直に分割すること、
の少なくとも2つを含む、請求項4に記載の符号化方法。
【請求項6】
前記現在のブロックが画像の前記境界を右側で又は左側で超えない場合に、前記現在のブロックを高さh/2の二つのブロックに水平に分割することが許可され、
前記現在のブロックが画像の前記境界を上側で又は下側で超えない場合に、前記現在のブロックを幅w/2の二つのブロックに垂直に分割することが許可される、請求項4に記載の符号化方法。
【請求項7】
電子回路を備える復号装置であって、
前記電子回路は、
少なくとも一つの分割モードを初期ブロックに適用することの結果として生じる現在のブロックを取得することであって、前記現在のブロックを取得するために前記初期ブロックに適用される各分割は、分割モードのセットに属し、前記分割モードのセットの各分割モードは、複数の第2のブロックにおける第1のブロックの分割を可能にする、ことと、
前記分割モードのセットにおける前記現在のブロックに適用されるべき現在の分割モードを決定することと、
前記決定された現在の分割モードに従って、前記現在のブロックを復号することと、
を行うように構成され、
前記現在のブロックが画像の単一の境界を超えることに応答して、前記現在の分割モードを決定することは、分割方向が前記画像の単一の境界の方向に平行である前記分割モードのセットに含まれる複数の分割モードにおける前記現在の分割モードの特定を可能にする情報を復号することを含む、復号装置。
【請求項8】
hは第1のブロックの高さであり、wは前記第1のブロックの幅であり、かつ前記複数の分割モードは、次の分割モード:
前記第1のブロックを、高さh/4の1つの上側第2のブロックおよび高さ3h/4の1つの下側第2のブロックに水平に分割すること、
前記第1のブロックを、高さh/4の1つの下側第2のブロックおよび高さ3h/4の1つの上側第2のブロックに水平に分割すること、
前記第1のブロックを、幅w/4の1つの左側第2のブロックおよび幅3w/4の1つの右側第2のブロックに垂直に分割すること、
前記第1のブロックを、幅w/4の1つの右側第2のブロックおよび幅3w/4の1つの左側第2のブロックに垂直に分割すること、
前記第1のブロックを、高さh/4の1つの第2のブロック、高さh/2の1つの中央第2のブロックおよび高さh/4の1つの第2のブロックに水平に分割すること、
前記第1のブロックを、幅w/4の1つの第2のブロック、幅w/2の1つの中央第2のブロックおよび幅w/4の1つの第2のブロックに垂直に分割すること、
前記第1のブロックを、高さh/2の2つの第2のブロックに水平に分割すること、ならびに
前記第1のブロックを、幅w/2の2つの第2のブロックに垂直に分割すること、
の少なくとも2つを含む、請求項7に記載の復号装置。
【請求項9】
前記現在のブロックが画像の前記境界を右側で又は左側で超えない場合に、前記現在のブロックを高さh/2の二つのブロックに水平に分割することが許可され、
前記現在のブロックが画像の前記境界を上側で又は下側で超えない場合に、前記現在のブロックを幅w/2の二つのブロックに垂直に分割することが許可される、請求項7に記載の復号装置。
【請求項10】
電子回路を備える符号化装置であって、
前記電子回路は、
少なくとも一つの分割モードを初期ブロックに適用することの結果として生じる現在のブロックを取得することであって、前記現在のブロックを取得するために前記初期ブロックに適用される各分割は、分割モードのセットに属し、前記分割モードのセットの各分割モードは、複数の第2のブロックにおける第1のブロックの分割を可能にする、ことと、
前記分割モードのセットにおける前記現在のブロックに適用されるべき現在の分割モードを決定することと、
前記決定された現在の分割モードに従って、前記現在のブロックを符号化することと、
を行うように構成され、
前記現在のブロックが画像の単一の境界を超えることに応答して、前記現在の分割モードは、分割方向が前記画像の単一の境界の方向に平行である前記分割モードのセットに含まれる複数の分割モードから選択される、符号化装置。
【請求項11】
hは第1のブロックの高さであり、wは前記第1のブロックの幅であり、かつ前記複数の分割モードは、次の分割モード:
前記第1のブロックを、高さh/4の1つの上側第2のブロックおよび高さ3h/4の1つの下側第2のブロックに水平に分割すること、
前記第1のブロックを、高さh/4の1つの下側第2のブロックおよび高さ3h/4の1つの上側第2のブロックに水平に分割すること、
前記第1のブロックを、幅w/4の1つの左側第2のブロックおよび幅3w/4の1つの右側第2のブロックに垂直に分割すること、
前記第1のブロックを、幅w/4の1つの右側第2のブロックおよび幅3w/4の1つの左側第2のブロックに垂直に分割すること、
前記第1のブロックを、高さh/4の1つの第2のブロック、高さh/2の1つの中央第2のブロックおよび高さh/4の1つの第2のブロックに水平に分割すること、
前記第1のブロックを、幅w/4の1つの第2のブロック、幅w/2の1つの中央第2のブロックおよび幅w/4の1つの第2のブロックに垂直に分割すること、
前記第1のブロックを、高さh/2の2つの第2のブロックに水平に分割すること、ならびに
前記第1のブロックを、幅w/2の2つの第2のブロックに垂直に分割すること、
の少なくとも2つを含む、請求項10に記載の符号化装置。
【請求項12】
前記現在のブロックが画像の前記境界を右側で又は左側で超えない場合に、前記現在のブロックを高さh/2の二つのブロックに水平に分割することが許可され、
前記現在のブロックが画像の前記境界を上側で又は下側で超えない場合に、前記現在のブロックを幅w/2の二つのブロックに垂直に分割することが許可される、請求項10に記載の符号化装置。
【請求項13】
機械実行可能命令がその上に格納されている非一時的な機械可読媒体であって、前記機械実行可能命令は、少なくとも一つのプロセッサによって実行される場合に、前記少なくとも一つのプロセッサに、
少なくとも一つの分割モードを初期ブロックに適用することの結果として生じる現在のブロックを取得することであって、前記現在のブロックを取得するために前記初期ブロックに適用される各分割は、分割モードのセットに属し、前記分割モードのセットの各分割モードは、複数の第2のブロックにおける第1のブロックの分割を可能にする、ことと、
前記分割モードのセットにおける前記現在のブロックに適用されるべき現在の分割モードを決定することと、
前記決定された現在の分割モードに従って、前記現在のブロックを復号することと、
を実行させ、
前記現在のブロックが画像の単一の境界を超えることに応答して、前記現在の分割モードを決定することは、分割方向が前記画像の単一の境界の方向に平行である前記分割モードのセットに含まれる複数の分割モードにおける前記現在の分割モードの特定を可能にする情報を復号することを含む、非一時的な機械可読媒体。
【請求項14】
機械実行可能命令がその上に格納されている非一時的な機械可読媒体であって、前記機械実行可能命令は、少なくとも一つのプロセッサによって実行される場合に、前記少なくとも一つのプロセッサに、
少なくとも一つの分割モードを初期ブロックに適用することの結果として生じる現在のブロックを取得することであって、前記現在のブロックを取得するために前記初期ブロックに適用される各分割は、分割モードのセットに属し、前記分割モードのセットの各分割モードは、複数の第2のブロックにおける第1のブロックの分割を可能にする、ことと、
前記分割モードのセットにおける前記現在のブロックに適用されるべき現在の分割モードを決定することと、
前記決定された現在の分割モードに従って、前記現在のブロックを符号化することと、
を実行させ、
前記現在のブロックが画像の単一の境界を超えることに応答して、前記現在の分割モードは、分割方向が前記画像の単一の境界の方向に平行である前記分割モードのセットに含まれる複数の分割モードから選択される、非一時的な機械可読媒体。
【請求項15】
少なくとも一つのプロセッサと、
メモリであって、前記少なくとも一つのプロセッサにより実行されるときに、前記少なくとも一つのプロセッサに、
少なくとも一つの分割モードを初期ブロックに適用することの結果として生じる現在のブロックを取得することであって、前記現在のブロックを取得するために前記初期ブロックに適用される各分割は、分割モードのセットに属し、前記分割モードのセットの各分割モードは、複数の第2のブロックにおける第1のブロックの分割を可能にする、ことと、
前記分割モードのセットにおける前記現在のブロックに適用されるべき現在の分割モードを決定することと、
前記決定された現在の分割モードに従って、前記現在のブロックを復号することと、
を実行させる命令を記憶するメモリと、
を備え、
前記現在のブロックが画像の単一の境界を超えることに応答して、前記現在の分割モードを決定することは、分割方向が前記画像の単一の境界の方向に平行である前記分割モードのセットに含まれる複数の分割モードにおける前記現在の分割モードの特定を可能にする情報を復号することを含む、装置。
【請求項16】
少なくとも一つのプロセッサと、
メモリであって、前記少なくとも一つのプロセッサにより実行されるときに、前記少なくとも一つのプロセッサに、
少なくとも一つの分割モードを初期ブロックに適用することの結果として生じる現在のブロックを取得することであって、前記現在のブロックを取得するために前記初期ブロックに適用される各分割は、分割モードのセットに属し、前記分割モードのセットの各分割モードは、複数の第2のブロックにおける第1のブロックの分割を可能にする、ことと、
前記分割モードのセットにおける前記現在のブロックに適用されるべき現在の分割モードを決定することと、
前記決定された現在の分割モードに従って、前記現在のブロックを符号化することと、
を実行させる命令を記憶するメモリと、
を備え、前記現在のブロックが画像の単一の境界を超えることに応答して、前記現在の分割モードは、分割方向が前記画像の単一の境界の方向に平行である前記分割モードのセットに含まれる複数の分割モードから選択される、装置。
【請求項17】
hは第1のブロックの高さであり、wは前記第1のブロックの幅であり、かつ前記複数の分割モードは、次の分割モード:
前記第1のブロックを、高さh/4の1つの上側第2のブロックおよび高さ3h/4の1つの下側第2のブロックに水平に分割すること、
前記第1のブロックを、高さh/4の1つの下側第2のブロックおよび高さ3h/4の1つの上側第2のブロックに水平に分割すること、
前記第1のブロックを、幅w/4の1つの左側第2のブロックおよび幅3w/4の1つの右側第2のブロックに垂直に分割すること、
前記第1のブロックを、幅w/4の1つの右側第2のブロックおよび幅3w/4の1つの左側第2のブロックに垂直に分割すること、
前記第1のブロックを、高さh/4の1つの第2のブロック、高さh/2の1つの中央第2のブロックおよび高さh/4の1つの第2のブロックに水平に分割すること、
前記第1のブロックを、幅w/4の1つの第2のブロック、幅w/2の1つの中央第2のブロックおよび幅w/4の1つの第2のブロックに垂直に分割すること、
前記第1のブロックを、高さh/2の2つの第2のブロックに水平に分割すること、ならびに
前記第1のブロックを、幅w/2の2つの第2のブロックに垂直に分割すること、
の少なくとも2つを含む、請求項13に記載の非一時的な機械可読媒体。
【請求項18】
hは第1のブロックの高さであり、wは前記第1のブロックの幅であり、かつ前記複数の分割モードは、次の分割モード:
前記第1のブロックを、高さh/4の1つの上側第2のブロックおよび高さ3h/4の1つの下側第2のブロックに水平に分割すること、
前記第1のブロックを、高さh/4の1つの下側第2のブロックおよび高さ3h/4の1つの上側第2のブロックに水平に分割すること、
前記第1のブロックを、幅w/4の1つの左側第2のブロックおよび幅3w/4の1つの右側第2のブロックに垂直に分割すること、
前記第1のブロックを、幅w/4の1つの右側第2のブロックおよび幅3w/4の1つの左側第2のブロックに垂直に分割すること、
前記第1のブロックを、高さh/4の1つの第2のブロック、高さh/2の1つの中央第2のブロックおよび高さh/4の1つの第2のブロックに水平に分割すること、
前記第1のブロックを、幅w/4の1つの第2のブロック、幅w/2の1つの中央第2のブロックおよび幅w/4の1つの第2のブロックに垂直に分割すること、
前記第1のブロックを、高さh/2の2つの第2のブロックに水平に分割すること、ならびに
前記第1のブロックを、幅w/2の2つの第2のブロックに垂直に分割すること、
の少なくとも2つを含む、請求項14に記載の非一時的な機械可読媒体。
【請求項19】
hは第1のブロックの高さであり、wは前記第1のブロックの幅であり、かつ前記複数の分割モードは、次の分割モード:
前記第1のブロックを、高さh/4の1つの上側第2のブロックおよび高さ3h/4の1つの下側第2のブロックに水平に分割すること、
前記第1のブロックを、高さh/4の1つの下側第2のブロックおよび高さ3h/4の1つの上側第2のブロックに水平に分割すること、
前記第1のブロックを、幅w/4の1つの左側第2のブロックおよび幅3w/4の1つの右側第2のブロックに垂直に分割すること、
前記第1のブロックを、幅w/4の1つの右側第2のブロックおよび幅3w/4の1つの左側第2のブロックに垂直に分割すること、
前記第1のブロックを、高さh/4の1つの第2のブロック、高さh/2の1つの中央第2のブロックおよび高さh/4の1つの第2のブロックに水平に分割すること、
前記第1のブロックを、幅w/4の1つの第2のブロック、幅w/2の1つの中央第2のブロックおよび幅w/4の1つの第2のブロックに垂直に分割すること、
前記第1のブロックを、高さh/2の2つの第2のブロックに水平に分割すること、ならびに
前記第1のブロックを、幅w/2の2つの第2のブロックに垂直に分割すること、
の少なくとも2つを含む、請求項15に記載の装置。
【請求項20】
hは第1のブロックの高さであり、wは前記第1のブロックの幅であり、かつ前記複数の分割モードは、次の分割モード:
前記第1のブロックを、高さh/4の1つの上側第2のブロックおよび高さ3h/4の1つの下側第2のブロックに水平に分割すること、
前記第1のブロックを、高さh/4の1つの下側第2のブロックおよび高さ3h/4の1つの上側第2のブロックに水平に分割すること、
前記第1のブロックを、幅w/4の1つの左側第2のブロックおよび幅3w/4の1つの右側第2のブロックに垂直に分割すること、
前記第1のブロックを、幅w/4の1つの右側第2のブロックおよび幅3w/4の1つの左側第2のブロックに垂直に分割すること、
前記第1のブロックを、高さh/4の1つの第2のブロック、高さh/2の1つの中央第2のブロックおよび高さh/4の1つの第2のブロックに水平に分割すること、
前記第1のブロックを、幅w/4の1つの第2のブロック、幅w/2の1つの中央第2のブロックおよび幅w/4の1つの第2のブロックに垂直に分割すること、
前記第1のブロックを、高さh/2の2つの第2のブロックに水平に分割すること、ならびに
前記第1のブロックを、幅w/2の2つの第2のブロックに垂直に分割すること、
の少なくとも2つを含む、請求項16に記載の装置。
【発明の詳細な説明】
【技術分野】
【0001】
本原理は一般に、画像の符号化および復号のための方法および装置に関し、より詳細には、画像境界における画像ブロックの符号化および復号のための方法および装置に関する。
【背景技術】
【0002】
高い圧縮効率を達成するために、ビデオ符号化方式は通常、ビデオコンテンツにおける空間的および時間的冗長性を利用するための予測および変換を採用する。一般に、フレーム内またはフレーム間相関を利用するために、イントラまたはインター予測が使用され、次いで、しばしば残差として示される、元の画像と予測された画像との間の差が変換され、量子化されて、エントロピー符号化される。ビデオを再構築するため、圧縮されたデータが、予測、変換、量子化およびエントロピー符号化に対応する逆プロセスによって復号される。
【0003】
HEVC符号化(「ITU-T H.265 Telecommunication standardization sector of ITU(10/2014),series H:audiovisual and multimedia systems,infrastructure of audiovisual services-coding of moving video,High efficiency video coding,Recommendation ITU-T H.265」)では、画像は、構成可能なサイズ、典型的には、64×64、128×128、または256×256の正方形の符号化ツリーユニット(CTU)に分割される。CTUは、符号化ユニット(CU)への四分木分割の根である。各CUに対して、そのCUがイントラまたはインター予測を使用して符号化されるかどうかを示す予測モードが信号通知される。符号化ユニットは、1つ以上の予測ユニット(PU)に分割されて、変換ユニット(TU)への四分木(変換木として知られる)分割の根を形成する。PUは、正方形または長方形を有し得、他方、TUは、正方形を有する。各PUには、例えば、動き情報、空間的イントラ予測などの、何らかの予測情報が割り当てられる。
【0004】
QTBT(Quad-Tree plus Binary-Tree:四分木+二分木)符号化ツール(「Algorithm Description of Joint Exploration Test Model 3」,Document JVET-C1001_v3,ISO/IEC JTC1/SC29/WG11の共同ビデオ探索チーム、第3回会合、2015年5月26日~6月1日、スイス、ジュネーブ)は、HEVC標準のCU/PU/TU配置よりも柔軟なCTU表現を提供する新しい符号化ツールである。この符号化ツールは、ISO/IEC JTC1/SC29/WG11の共同ビデオ探索チームのための参照ソフトウェアであるJoint Exploration Model(JEM)に導入された。QTBT符号化ツールは、符号化ユニットが四分木および二分木の両方の方法で分割できる符号化ツリーを定義する。符号化ツリーユニットのかかる符号化ツリー表現が図1に例示されており、図中、実線はCUの四分木分割を示し、点線は二分木分割を示しており、図2にさらに例示されている。図2では、実線は四分木分割を表し、点線は、四分木の葉内に空間的に埋め込まれている2分割を表す。この図では、値1は垂直の2分割に対応し、値0は水平の2分割に対応する。
【0005】
CTUの符号化ユニットへの分割は、例えば、CTUのQTBT表現を最小限の速度ひずみコストで判断することから成る速度ひずみ最適化手順を通して、符号器側で決定される。QTBT表現では、CUは正方形または長方形のいずれかを有する。符号化ユニットのサイズは常に2の累乗であり、典型的には、4~128である。CTUのQTBT分解は2つの段階を含む、すなわち、図2に例示するように、CTUがまず、四分木法で4つのCUに分割され、次いで各四分木の葉が、二分法で2つのCUに、または四分木法で4つのCUにさらに分割できる。
【0006】
QTBT表現では、CUは、PUまたはTUにさらには分割されない。言い換えれば、一旦、CTUの分割が決定されると、各CUは単一の予測ユニットおよび単一の変換ユニットと見なされる。しかし、かかるQTBT表現は、図3に例示するようなCUの対称分割だけを許可する。図3は、QTBTによって許可される4つの分割モードを示す。モードNO_SPLITは、CUがそれ以上分割されないことを示す。モードQT_SPLITは、CUが四分木に従って4つの象限に分割され、象限は2本の分割線で分けられていることを示す。モードHORは、CUが1本の分割線により等しいサイズの2つのCUに水平に分けられていることを示す。VERは、CUが1本の分割線により等しいサイズの2つのCUに垂直に分けられていることを示す。分割線は図3では破線によって表されている。
【0007】
「Asymmetric Coding Units in QTBT」、文書:JVET-D0064、ITU-T SG16 WP3およびISO/IEC JTC1/SC29/WG11の共同ビデオ探索チーム(JVET)、第4回会合:中国、成都、2016年10月15~21日で、新しい非対称分割モードがQTBTに導入される。CUは従って、図4に示す、それぞれ長方形サイズ(w、h/4)および(w、3h/4)の2つの符号化ユニットに水平に、またはそれぞれ長方形サイズ(w/4、h)および(3w/4、h)の2つの符号化ユニットに垂直に分割され得る。その上、幅または高さが3の倍数のサイズのCUは、サイズが同一であれば、水平または垂直に二分法でさらに分割できる。2つの符号化ユニットは、図4に破線で表されている1本の分割線によって分けられている。
【0008】
「Multi-Type-Tree」、文書:JVET-D0117-r1、ITU-T SG16 WP3およびISO/IEC JTC1/SC29/WG11の共同ビデオ探索チーム(JVET)、第4回会合:中国、成都、2016年10月15~21日で、新しい3分割モード(triple split)モードが導入される。CUは従って、図5に示すように、それぞれ長方形サイズ(w、h/4)、(w、h/2)および(w、h/4)の3つの符号化ユニットに水平に、またはそれぞれ長方形サイズ(w/4、h)、(w/2、h)および(w/4、h)の3つの符号化ユニットに垂直に分割され得る。3つの符号化ユニットは、図5に破線で表されている2本の分割線によって分けられている。
【0009】
HEVCおよびJEMでは、これらのモードのほとんどは、図の縁に位置付けられたブロックに対して許可されず、従ってそれらは効率的に符号化されない。
【発明の概要】
【0010】
画像の少なくとも一部を含む、現在のブロックを復号するための復号方法が開示され、本方法は、
-現在のブロックが画像の境界を越えて延在するかどうかを判断すること、
-複数の分割モードの各分割モードに対して、その分割モードが現在のブロックに対して許可されるかどうかを、分割線の少なくとも1本が画像境界の1つと同一場所に位置付けられているかどうか、または画像境界に沿った画像内部のブロック部分、すなわち、分割によって生じた残りの部分、のサイズが最小ブロックサイズの倍数であるかどうかをチェックすることにより、判断すること、
-許可される分割モードに応答して現在のブロックの現在の分割モードをビットストリームから復号すること、および
-現在の分割モードに従って現在のブロックを復号すること
を含む。
【0011】
画像の少なくとも一部を含む、現在のブロックを復号するように構成された復号装置が開示され、本装置は、
-現在のブロックが画像の境界を越えて延在するかどうかを判断するための手段、
-複数の分割モードの各分割モードに対して、その分割モードが現在のブロックに対して許可されるかどうかを、分割線の少なくとも1本が画像境界の1つと同一場所に位置付けられているかどうか、または画像境界に沿った画像内部のブロック部分のサイズが最小ブロックサイズの倍数であるかどうかをチェックすることにより、判断するための手段、
-許可される分割モードに応答して現在のブロックの現在の分割モードをビットストリームから復号するための手段、および
-現在の分割モードに従って現在のブロックを復号するための手段
を含む。
【0012】
復号装置が開示され、本装置は、少なくともビットストリームにアクセスするように構成された通信インタフェース、ならびに
-画像の少なくとも一部を含む、現在のブロックが、画像の境界を越えて延在するかどうかを判断すること、
-複数の分割モードの各分割モードに対して、その分割モードが現在のブロックに対して許可されるかどうかを、分割線の少なくとも1本が画像境界の1つと同一場所に位置付けられているかどうか、または画像境界に沿った画像内部のブロック部分のサイズが最小ブロックサイズの倍数であるかどうかをチェックすることにより、判断すること、
-許可される分割モードに応答して現在のブロックの現在の分割モードをアクセスされたビットストリームから復号すること、および
-現在の分割モードに従って現在のブロックを復号すること
を行うように構成された少なくとも1つのプロセッサ
を含む。
【0013】
以下の実施形態は上で開示した復号方法および復号装置に適用される。
【0014】
特定の実施形態によれば、複数の分割モードは、次の分割モードの少なくとも2つを含み、ここでhは現在のブロックの高さであり、wは現在のブロックの幅である:
-ブロックを、高さh/4の1つの上側サブブロックおよび高さ3h/4の1つの下側サブブロックに水平に分割すること、
-ブロックを、高さh/4の1つの下側サブブロックおよび高さ3h/4の1つの上側サブブロックに水平に分割すること、
-ブロックを、幅w/4の1つの左側サブブロックおよび幅3w/4の1つの右側サブブロックに垂直に分割すること、
-ブロックを、幅w/4の1つの右側サブブロックおよび幅3w/4の1つの左側サブブロックに垂直に分割すること、
-ブロックを、高さh/4の1つのサブブロック、高さh/2の1つの中央サブブロックおよび高さh/4の1つのサブブロックに水平に分割すること、
-ブロックを、幅w/4の1つのサブブロック、幅w/2の1つの中央サブブロックおよび幅w/4の1つのサブブロックに垂直に分割すること、
-ブロックを、高さh/2の2つのサブブロックに水平に分割すること、ならびに
-ブロックを、幅w/2の2つのサブブロックに垂直に分割すること。
【0015】
特定の特性によれば、高さおよび幅の少なくとも1つにおける最小ブロックサイズは4に等しい。
【0016】
画像の少なくとも一部を含む、現在のブロックを符号化するための符号化方法が開示され、本方法は、
-現在のブロックが画像の境界を越えて延在するかどうかを判断すること、
-複数の分割モードの各分割モードに対して、その分割モードが現在のブロックに対して許可されるかどうかを、分割線の少なくとも1本が画像境界の1つと同一場所に位置付けられているかどうか、または画像境界に沿った画像内部のブロック部分のサイズが最小ブロックサイズの倍数であるかどうかをチェックすることにより、判断すること、
-許可される分割モードに応答して判断された現在のブロックの現在の分割モードをビットストリームに符号化すること、および
-現在の分割モードに従って現在のブロックをビットストリームに符号化すること
を含む。
【0017】
画像の少なくとも一部を含む、現在のブロックを符号化するように構成された符号化装置が開示され、本装置は、
-現在のブロックが画像の境界を越えて延在するかどうかを判断するための手段、
-複数の分割モードの各分割モードに対して、その分割モードが現在のブロックに対して許可されるかどうかを、分割線の少なくとも1本が画像境界の1つと同一場所に位置付けられているかどうか、または画像境界に沿った画像内部のブロック部分のサイズが最小ブロックサイズの倍数であるかどうかをチェックすることにより、判断するための手段、
-許可される分割モードに応答して判断された現在のブロックの現在の分割モードをビットストリームに符号化するための手段、および
-現在の分割モードに従って現在のブロックをビットストリームに符号化するための手段
を含む。
【0018】
画像の少なくとも一部を含む、現在のブロックに少なくともアクセスするように構成された通信インタフェースを含む符号化装置が開示される。符号化装置は、
-アクセスされた現在のブロックが画像の境界を越えて延在するかどうかを判断すること、
-複数の分割モードの各分割モードに対して、その分割モードが現在のブロックに対して許可されるかどうかを、分割線の少なくとも1本が画像境界の1つと同一場所に位置付けられているかどうか、または画像境界に沿った画像内部のブロック部分のサイズが最小ブロックサイズの倍数であるかどうかをチェックすることにより、判断すること、
-許可される分割モードに応答して判断された現在のブロックの現在の分割モードをビットストリームに符号化すること、および
-現在の分割モードに従って、アクセスされた現在のブロックをビットストリームに符号化すること
を行うように構成された少なくとも1つのプロセッサをさらに含む。
【0019】
ビットストリームが開示され、ビットストリームは、
-許可される分割モードに応答して判断された現在のブロックの現在の分割モードを表す符号化データであって、現在のブロックは画像の少なくとも一部を含み、
-現在の分割モードに従って符号化された現在のブロックを表す符号化データ
を含み、
許可される分割モードは、
-現在のブロックが画像の境界を越えて延在するかどうかを判断すること、
-複数の分割モードの各分割モードに対して、その分割モードが現在のブロックに対して許可されるかどうかを、分割線の少なくとも1本が画像境界の1つと同一場所に位置付けられているかどうか、または画像境界に沿った画像内部のブロック部分のサイズが最小ブロックサイズの倍数であるかどうかをチェックすることにより、判断すること
によって判断される。
【0020】
ビットストリームがその上に格納されている持続性プロセッサ可読媒体であって、ビットストリームは、
-許可される分割モードに応答して判断された現在のブロックの現在の分割モードを表す符号化データであって、現在のブロックは画像の少なくとも一部を含み、
-現在の分割モードに従って符号化された現在のブロックを表す符号化データ
を含み、
許可される分割モードは、
-現在のブロックが画像の境界を越えて延在するかどうかを判断すること、
-複数の分割モードの各分割モードに対して、その分割モードが現在のブロックに対して許可されるかどうかを、分割線の少なくとも1本が画像境界の1つと同一場所に位置付けられているかどうか、または画像境界に沿った画像内部のブロック部分のサイズが最小ブロックサイズの倍数であるかどうかをチェックすることにより、判断すること
によって判断される。
【0021】
前述のビットストリームを送信するための送信方法および装置も開示される。
【0022】
以下の実施形態は上で開示した符号化方法、符号化装置、ビットストリーム、プロセッサ可読媒体、送信方法および送信装置に適用される。
【0023】
複数の分割モードは、次の分割モードの少なくとも2つを含み、ここでhは現在のブロックの高さであり、wは現在のブロックの幅である:
-ブロックを、高さh/4の1つの上側サブブロックおよび高さ3h/4の1つの下側サブブロックに水平に分割すること、
-ブロックを、高さh/4の1つの下側サブブロックおよび高さ3h/4の1つの上側サブブロックに水平に分割すること、
-ブロックを、幅w/4の1つの左側サブブロックおよび幅3w/4の1つの右側サブブロックに垂直に分割すること、
-ブロックを、幅w/4の1つの右側サブブロックおよび幅3w/4の1つの左側サブブロックに垂直に分割すること、
-ブロックを、高さh/4の1つのサブブロック、高さh/2の1つの中央サブブロックおよび高さh/4の1つのサブブロックに水平に分割すること、
-ブロックを、幅w/4の1つのサブブロック、幅w/2の1つの中央サブブロックおよび幅w/4の1つのサブブロックに垂直に分割すること、
-ブロックを、高さh/2の2つのサブブロックに水平に分割すること、ならびに
-ブロックを、幅w/2の2つのサブブロックに垂直に分割すること。
【0024】
特定の特性によれば、高さおよび幅の少なくとも1つにおける最小ブロックサイズは4に等しい。
【図面の簡単な説明】
【0025】
図1】様々な分割モードに従い、さらに小さい符号化ユニットに分割された符号化ツリーユニットを表す。
図2図1の符号化ツリーユニットの分割をツリーの形で表す。
図3】四分木および分割なしモードに加えて対称2分割モードを例示する。
図4】非対称分割モードを例示する。
図5】対称3分割モードを例示する。
図6】画像境界を越えて延在する四分木によって分割されたブロックを表す。
図7】特定の、限定されない実施形態に従って画像をビットストリームに符号化するように構成された送信機の例示的なアーキテクチャを表す。
図8】特定の、限定されない実施形態に従った例示的なビデオ符号器を示す。
図9】特定の、限定されない実施形態に従ってビットストリームにおける画像を復号するように構成された受信機の例示的なアーキテクチャを表す。
図10】特定の、限定されない実施形態に従った例示的なビデオ復号器を示す。
図11】特定の、限定されない実施形態に従って画像のブロックをビットストリームから復号するための方法の流れ図を表す。
図12】特定の、限定されない実施形態に従って構文を復号するための方法の流れ図を表す。
図13】画像境界を越えて延在するブロックの分割を表す。
図14-15】構文の切取り(pruning)を例示する。
図16】画像境界を越えて延在するブロックの分割を表す。
図17】特定の、限定されない実施形態に従って画像のブロックをビットストリームに符号化するための方法の流れ図を表す。
【発明を実施するための形態】
【0026】
図および説明は、本原理の明瞭な理解のために適している要素を例証するために簡略化されており、他方、明確にする目的で、典型的な符号化および/または復号装置で見られる他の多くの要素が除外されていることを理解すべきである。第1および第2という用語は本明細書では、様々な要素を説明するために使用され得るが、これらの要素はこれらの用語によって制限されるべきでないことを理解されたい。これらの用語は1つの要素を別の要素と区別するためにだけ使用される。
【0027】
画像はモノクロフォーマットでの輝度サンプルの配列、または4:2:0、4:2:2、および4:4:4カラーフォーマットでの輝度サンプルの配列および彩度サンプルの2つの対応する配列である。一般に、「ブロック」はサンプル配列(例えば、輝度Y)内の特定の領域をアドレス指定し、「ユニット」は全ての色成分(輝度Yならびにおそらくは彩度Cbおよび彩度Cr)の配置されたブロックを含む。スライスは、HEVC符号化ツリーユニットまたはH.264マクロブロックユニットなどの、整数の基本符号化ユニットである。スライスは、完全な画像およびその一部からなり得る。各スライスは1つ以上のスライス断片を含み得る。
【0028】
以下では、用語「ブロック」または「画像ブロック」は、CTU、CU、PU、TU、CB、PBおよびTBのうちの任意の1つを指すために使用できる。加えて、用語「ブロック」または「画像ブロック」は、H.264/AVCまたは他のビデオ符号化標準で指定されるようなマクロブロック、パーティションおよびサブブロックを指すために、より一般的には、様々なサイズのサンプルの配列を指すために、使用できる。CUは、同じ変換および予測情報が適用されるサンプルのブロックであるので、JEMは、CU、PUおよびTUを区別しない。CUは、分割モードに従っていくつかの符号化ユニットに分割され得る。より大きな符号化ユニット内で符号化ユニットを分けている線は分割線と呼ばれる。
【0029】
以下では、用語「再構築された」および「復号された」は、区別しないで使用され得る。通常、しかし必ずしもではなく、「再構築された」は符号器側で使用され、他方、「復号された」は復号器側で使用される。用語「復号された」または「再構築された」は、ビットストリームが、一部「復号される」かまたは「再構築される」ことを意味し得、例えば、非ブロック化フィルタリング後でSAOフィルタリング前に取得された信号、および再構築されたサンプルは表示のために使用される最終の復号された出力とは異なり得ることに留意すべきである。用語「像」、「画像」、および「フレーム」も区別しないで使用され得る。用語「縁」および「境界」を区別しないで使用し得る。
【0030】
様々な実施形態はHEVC標準に関して説明される。しかし、本原理はHEVCに制限されず、他の標準、推奨、およびその拡張に適用でき、例えば、HEVCまたはFormat Range(RExt)のようなHEVC拡張、Scalability(SHVC)、Multi-View(MV-HEVC)拡張およびH.266を含む。様々な実施形態はスライスの符号化/復号に関して説明される。それらは、画像全体または一連の画像全体を符号化/復号するために適用され得る。
【0031】
様々な方法が前述されており、方法の各々は、説明される方法を達成するための1つ以上のステップまたは動作を含む。方法の適切な操作のためにステップまたは動作の特定の順序が要求されない限り、特定のステップおよび/もしくは動作の順序および/もしくは使用は変更されるか、または組み合わされ得る。
【0032】
図3図4および図5に示す新しい分割モードを可能にすると、信号通知コストが劇的に増大し得る。従って、再構築された画像の品質を低下させることなく、構文を改善する必要がある。完全に画像内部のブロックは全てのタイプの分割モードを使用し得る。しかし、画像の境界/縁上、特に画像の右側および下側の境界に(古典的なラスタースキャン順序またはZスキャンの場合)位置するブロックに関して、分割モードの一部は、ブロックが画像の外側に延出する場合は特に許可されない可能性がある。HEVCおよびJEMでは、ブロックが一部、画像の外側に延在する場合、ブロックは必然的に、図6に示す四分木に従って分割される。この場合、これらの一部、画像の外側にあるブロックに対して単一の分割モードしか許可されないので、分割モードを信号通知する必要がない。実際、一旦、ブロックが一部、画像の外側に延在すると判断されると、このブロックに対する分割モードは四分木分割(例えば、QT_SPLIT)であると推測される。しかし、分割モードが四分木分割であると推測することにより、画像の境界で再構築されるブロックの品質は、そのブロックを符号化するための分割モードの数が劇的制限されるので、低下し得る。加えて、かかる方法は、連続する四分木分割によって画像の縁に達するのを確実にするために、画像の幅および高さは最小符号化ブロックサイズ(典型的には4ピクセル)の倍数であることを必要とする。フレーム内の複数のタイルまたはスライスの場合、同じ問題がタイル/スライスの境界で生じるであろう。これは、タイル/スライスの縁において、特に、360°ビデオに対してあるレイアウトと共に使用される場合に、類似の品質問題となり得る。
【0033】
図7は、特定の、限定されない実施形態に従って画像をビットストリームに符号化するように構成された送信機1000の例示的なアーキテクチャを表す。
【0034】
送信機1000は、1つ以上のプロセッサ(複数可)1005を含み、それは、例えば、CPU、GPUおよび/またはDSP(デジタル信号プロセッサの英語の頭文字)を、内部メモリ1030(例えば、RAM、ROM、および/またはEPROM)と共に含み得る。送信機1000は、各々、出力情報を表示し、かつ/またはユーザーがコマンドおよび/もしくはデータを入力するのを可能にするように適合された、1つ以上の通信インタフェース(複数可)1010(例えば、キーボード、マウス、タッチパッド、ウェブカメラ)、ならびに送信機1000の外部であり得る電源1020を含む。送信機1000は、1つ以上のネットワークインタフェース(複数可)(図示せず)も含み得る。符号器モジュール1040は、符号化機能を実行するために装置内に含まれ得るモジュールを表す。追加として、符号器モジュール1040は送信機1000の別個の要素として実装され得るか、または当業者に周知のように、ハードウェアとソフトウェアの組合せとして、プロセッサ(複数可)1005内に組み込まれ得る。
【0035】
画像はソースから取得され得る。異なる実施形態によれば、ソースは、
-ローカルメモリ、例えば、ビデオメモリ、RAM、フラッシュメモリ、ハードディスク、
-記憶インタフェース、例えば、大容量記憶、ROM、光ディスクまたは磁気支持とのインタフェース、
-通信インタフェース、例えば、有線インタフェース(例えば、バスインタフェース、ワイドエリアネットワークインタフェース、ローカルエリアネットワークインタフェース)または無線インタフェース(IEEE802.11インタフェースまたはBluetoothインタフェースなど)、および
-画像捕捉回路(例えば、CCD(または電荷結合素子)またはCMOS(または相補型金属酸化膜半導体)などのセンサー)
であり得るが、それらに制限されない。
【0036】
異なる実施形態によれば、ビットストリームは宛先に送信され得る。一例として、ビットストリームは、リモートまたはローカルメモリ、例えば、ビデオメモリまたはRAM、ハードディスク内に格納される。変形では、ビットストリームは記憶インタフェース、例えば、大容量記憶、ROM、フラッシュメモリ、光ディスクもしくは磁気支持とのインタフェース、に送信され、かつ/または通信インタフェース、例えば、二地点間リンク、通信バス、ポイントツーマルチポイントリンクもしくはブロードキャストネットワークへのインタフェース、を通して送信される。
【0037】
例示的で限定されない実施形態によれば、送信機1000はさらに、メモリ1030内に格納されたコンピュータプログラムを含む。コンピュータプログラムは、送信機1000によって、具体的にはプロセッサ1005によって、実行される場合に、送信機1000が、図17を参照して説明される符号化方法を実行するのを可能にする命令を含む。変形によれば、コンピュータプログラムは、送信機1000外部の持続性デジタルデータサポート上、例えば、HDD、CD-ROM、DVD、読取り専用および/もしくはDVDドライブならびに/またはDVD読取り/書込みドライブなど、当技術分野で周知のすべての、外部記憶媒体上に格納される。送信機1000は従って、コンピュータプログラムを読み取るための機構を含む。さらに、送信機1000は、1つ以上のユニバーサルシリアルバス(USB)タイプの記憶装置(例えば、「メモリスティック」)に対応するUSBポート(図示せず)を通してアクセスし得る。
【0038】
例示的で限定されない実施形態によれば、送信機1000は
-モバイル機器、
-通信装置、
-ゲーム機、
-タブレット(またはタブレットコンピュータ)、
-ラップトップ、
-静止画カメラ、
-ビデオカメラ、
-符号化チップまたは符号化装置/機器、
-静止画サーバー、および
-ビデオサーバー(例えば、ブロードキャストサーバー、ビデオオンデマンドサーバーまたはウェブサーバー)
であり得るが、それらに制限されない。
【0039】
図8は、例示的なビデオ符号器100、例えば、図17の符号化方法を実行するように適合された、HEVCビデオ符号器またはJEMタイプの符号器を示す。符号器100は、送信機1000の一例またはかかる送信機1000の部分である。
【0040】
符号化するために、画像は通常、基本符号化ユニット、例えば、HEVCでの符号化ツリーユニット(CTU)またはH.264でのマクロブロックユニットに分割される。おそらくは連続した基本符号化ユニットのセットはスライスにグループ化される。基本符号化ユニットは、全ての色成分の基本符号化ブロックを含む。HEVCでは、最小CTBサイズ16×16は、以前のビデオ符号化標準で使用されるようなマクロブロックサイズに対応する。用語CTUおよびCTBは本明細書では符号化/復号方法および符号化/復号装置を説明するために使用されるが、これらの方法および装置は、H.264などの他の標準では異なって表され得る(例えば、マクロブロック)これらの特定の用語によって制限されるべきでないことが理解されよう。
【0041】
例示的な符号器100では、画像は、以下で説明するように符号器要素によって符号化される。符号化される画像は、HEVCにおけるように正方形、またはJEMにおけるように長方形であり得るCUの単位で処理される。各CUは、イントラまたはインターモードのいずれかを使用して符号化される。CUがイントラモードで符号化される場合、それはイントラ予測を実行する(160)。インターモードでは、動き推定(175)および補正(170)が実行される。符号器は、CUを符号化するためにイントラモードまたはインターモードのどちらを使用するかを決定して(105)、予測モードフラグによってイントラ/インター決定を示す。残差は、予測されたサンプルブロック(予測因子としても知られる)を元の画像ブロックから差し引く(110)ことによって計算される。
【0042】
イントラモードにおけるCUは、同じスライス内の再構築された隣接するサンプルから予測され得る。1つのDC、1つの平面、および33の角度予測モードを含む、35のイントラ予測モードのセットがHEVCで利用可能である。イントラ予測参照は現在のブロックに隣接した行および列から再構築される。
【0043】
インターCUに関して、対応する符号化ブロックは、HEVCにおけるように1つ以上の予測ブロックにさらに分割され得る。インター予測は、PBレベルで実行されて、対応するPUはインター予測がどのように実行されるかに関する情報を含む。
【0044】
残差が変換されて(125)量子化される(130)。量子化された変換係数、ならびに動きベクトルおよび他の構文要素が、エントロピー符号化されて(145)ビットストリームを出力する。符号器はまた、変換をスキップして、4×4のTUベースで非変換の残差信号に量子化を直接適用し得る。符号器は、変換および量子化の両方も迂回し得、すなわち、変換および量子化プロセスを適用することなく、残差が直接符号化される。直接PCM符号化では、予測は適用されず、符号化ユニットサンプルが直接、ビットストリームに符号化される。
【0045】
符号器は、復号ループを含み、従って、符号化ブロックを復号してさらなる予測のための参照を提供する。量子化された変換係数は、残差を復号するために逆量子化(140)および逆変換(150)される。画像ブロックは、復号された残差および予測されたサンプルブロックを組み合わせる(155)ことにより再構築される。インループフィルタ(165)が、例えば、非ブロック化/SAO(サンプル適応オフセット)フィルタリングを実行するために再構築された画像に適用されて、符号化アーチファクトを低減する。フィルタリングされた画像は参照画像バッファ(180)に格納されて、他の画像に対する参照として使用され得る。
【0046】
図9は、特定の、限定されない実施形態に従い、復号された画像を取得するために、画像をビットストリームから復号するように構成された受信機2000の例示的なアーキテクチャを表す。
【0047】
受信機2000は、1つ以上のプロセッサ(複数可)2005を含み、それは、例えば、CPU、GPUおよび/またはDSP(デジタル信号プロセッサの英語の頭文字)を、内部メモリ2030(例えば、RAM、ROM、および/またはEPROM)と共に含み得る。受信機2000は、各々、出力情報を表示し、かつ/またはユーザーがコマンドおよび/もしくはデータ(例えば、復号された画像)を入力するのを可能にするように適合された、1つ以上の通信インタフェース(複数可)2010(例えば、キーボード、マウス、タッチパッド、ウェブカメラ)、ならびに受信機2000の外部であり得る電源2020を含む。受信機2000は、1つ以上のネットワークインタフェース(複数可)(図示せず)も含み得る。復号器モジュール2040は、復号機能を実行するために装置内に含まれ得るモジュールを表す。追加として、復号器モジュール2040は受信機2000の別個の要素として実装され得るか、または当業者に周知のように、ハードウェアとソフトウェアの組合せとして、プロセッサ(複数可)2005内に組み込まれ得る。
【0048】
ビットストリームはソースから取得され得る。異なる実施形態によれば、ソースは、
-ローカルメモリ、例えば、ビデオメモリ、RAM、フラッシュメモリ、ハードディスク、
-記憶インタフェース、例えば、大容量記憶、ROM、光ディスクまたは磁気支持とのインタフェース、
-通信インタフェース、例えば、有線インタフェース(例えば、バスインタフェース、ワイドエリアネットワークインタフェース、ローカルエリアネットワークインタフェース)または無線インタフェース(IEEE802.11インタフェースまたはBluetoothインタフェースなど)、および
-画像捕捉回路(例えば、CCD(または電荷結合素子)またはCMOS(または相補型金属酸化膜半導体)などのセンサー)
であり得るが、それらに制限されない。
【0049】
異なる実施形態によれば、復号された画像は宛先、例えば、ディスプレイ装置、に送信され得る。一例として、復号された画像は、リモートまたはローカルメモリ、例えば、ビデオメモリまたはRAM、ハードディスク内に格納される。変形では、復号された画像は記憶インタフェース、例えば、大容量記憶、ROM、フラッシュメモリ、光ディスクもしくは磁気支持とのインタフェースに送信され、かつ/または通信インタフェース、例えば、二地点間リンク、通信バス、ポイントツーマルチポイントリンクもしくはブロードキャストネットワークへのインタフェース、を通して送信される。
【0050】
特定の、限定されない実施形態によれば、受信機2000はさらに、メモリ2030内に格納されたコンピュータプログラムを含む。コンピュータプログラムは、受信機2000によって、具体的にはプロセッサ2005によって、実行される場合に、受信機が、図11を参照して説明される復号方法を実行するのを可能にする命令を含む。変形によれば、コンピュータプログラムは、受信機2000外部の持続性デジタルデータサポート上、例えば、HDD、CD-ROM、DVD、読取り専用および/もしくはDVDドライブならびに/またはDVD読取り/書込みドライブなど、当技術分野で周知のすべての、外部記憶媒体上に格納される。受信機2000は従って、コンピュータプログラムを読み取るための機構を含む。さらに、受信機2000は、1つ以上のユニバーサルシリアルバス(USB)タイプの記憶装置(例えば、「メモリスティック」)に対応するUSBポート(図示せず)を通してアクセスし得る。
【0051】
例示的で限定されない実施形態によれば、受信機2000は
-モバイル機器、
-通信装置、
-ゲーム機、
-セットトップボックス、
-TVセット、
-タブレット(またはタブレットコンピュータ)、
-ラップトップ、
-ビデオプレーヤー、例えば、Blu-rayプレーヤー、DVDプレーヤー、
-ディスプレイ、および
-復号チップまたは復号装置/機器
であり得るが、それらに制限されない。
【0052】
図10は、例示的なビデオ復号器200、例えば、図11の復号方法を実行するように適合された、HEVCビデオ復号器またはJEMタイプの復号器のブロック図を示す。ビデオ復号器200は、受信機2000の一例またはかかる受信機2000の部分である。例示的な復号器200では、ビットストリームは、以下で説明するように復号器要素によって復号される。ビデオ復号器200は一般に、図8で説明するような符号化パスと逆の(reciprocal)復号パスを実行し、それは、ビデオデータの符号化の一部としてビデオ復号を実行する。
【0053】
具体的には、復号器の入力はビデオビットストリームを含み、それは、ビデオ符号器100によって生成され得る。ビットストリームは、変換係数、動きベクトル、および他の符号化情報を取得するためにまず、エントロピー復号される(230)。変換係数は、残差を復号するために、逆量子化(240)および逆変換(250)される。復号された残差は次いで、復号された/再構築された画像ブロックを取得するために、予測されたサンプルブロック(予測因子としても知られる)と組み合わされる(255)。予測されたサンプルブロックは、イントラ予測(260)または動き補正された予測(すなわち、インター予測)(275)から取得され得る(270)。インループフィルタ(265)が再構築された画像に適用される。インループフィルタは、非ブロック化フィルタおよびSAOフィルタを含み得る。フィルタリングされた画像は参照画像バッファ(280)に格納される。
【0054】
図11は、特定の、限定されない実施形態に従って現在のブロックをビットストリームから復号するための方法の流れ図を表し、現在のブロックは画像の少なくとも一部を含む。
【0055】
本方法は、ステップS200から始まる。ステップS210で、復号器200などの、受信機2000は、ビットストリームにアクセスする。
【0056】
ステップS220で、受信機は、復号する現在のブロックが一部、画像の外側であるか、すなわち、画像の1つの境界を越えて延在するかどうかを判断する。これは、Diff_XおよびDiff_Yを、次のように計算することによって判断され得る:
Diff_X=blkPosX+width-frameWidth;および
Diff_Y=blkPosY+height-frameHeight
式中、blkPosXは、現在のブロックのXにおける位置、例えば、ブロックの左上ピクセルのXにおける座標であり、blkPosYは、現在のブロックのYにおける位置、例えば、ブロックの左上ピクセルのYにおける座標であり、widthはブロックの幅、heightはブロックの高さ、frameWidthは画像の幅で、frameHeightは画像の高さである。Diff_X<=0かつDiff_Y<=0の場合、ブロックは完全に画像の内部であり、Diff_X>0 && Diff_Y<=0の場合、ブロックの右側部分が画像の外側であり、Diff_X>0 && Diff_Y<=0の場合、ブロックの下側部分が画像の外側であり、そうでなければ、ブロックの右側部分および下側部分が画像の外側である。
【0057】
現在のブロックが一部、画像の外側である場合、方法は、ステップS230から継続し、そうでなければ、方法は、ステップS240から継続する。この後者の場合、ブロックは完全に画像の内部であり、全ての分割モードが許可され得る。この具体的な事例では、分割モードの一部は、完全に画像内部のブロックに対して許可されない可能性がある。例えば、ブロックの幅がブロックに対して認可された最小幅(例えば、4ピクセル)に等しい場合、垂直分割モードは許可されない。同様に、ブロックの高さがブロックに対して認可された最小高さ(例えば、4ピクセル)に等しい場合、水平分割モードは許可されない。加えて、分割モードの一部は、例えば、いくつかの特定のプロファイルに対して、高レベル構文要素によって無効にされ得る。この後者の場合、無効にされた分割モードは、画像の全てのブロック、またはおそらくはビデオの全てのブロックに対して許可されない。現在のブロックが、例えば、図6の右下のブロックのように水平および垂直に画像の外側にある特定の事例では、QT_SPLITモードを除いて、どの分割モードも許可されない。
【0058】
ステップS230で、受信機は、複数の分割モードの各分割モードに対して、現在のブロックがこの分割モードに従って分割されるのを許可されるかどうかを、分割線の少なくとも1本が画像縁の1つと同一場所に位置付けられているかどうかをチェックすることにより、判断する。例示的な実施形態では、複数の分割モードは、次の分割モード、すなわち、HOR_UP、HOR_DOWN、HOR_TRIPLE、HOR、VER_TRIPLE、VER、VER_LEFT、VER_RIGHTを含む。通常、しかし必ずしもではなく、QT_SPLITモード以外の分割モードは、QT_SPLITモードに従った分割が決定される場合にだけ、検討される。変形では、複数の分割モードは以前にリストした分割モードのサブセットを含む。3分割モードまたは非対称2分割モードの導入に伴い、画像の縁に達するために多くの異なる分割が利用可能であり得る。この実施形態では、非対称2分割モードは、分割線が厳密に画像の縁上にある場合に、現在のブロックに対して画像の縁で許可される。3分割モードは、第1の分割線または第2の分割線が厳密にフレームの縁上にある場合に、現在のブロックに対して画像の縁で許可される。
【0059】
特定の実施形態では、許可される分割モードは以下のように指定される。
【0060】
モードNO_SPLITは、ブロックが完全に画像内部にある場合に限り、許可され、そうでない場合、このモードは許可されない。フラグnoSplitAllowedが1(または真)にセットされてNO_SPLITモードが許可されることを示す。
【0061】
モードHORは、ブロックが画像の境界を右側で(またはスキャン順に応じて左側で)越えて延在していない場合に許可される。変形では、モードHORは、ブロックの右側部分が画像の境界を右側で越えて延在していない場合に、かつブロックが画像の境界を下側で越えて延在する事例では、画像の縁およびHOR分割から生じた水平分割線が同一場所に位置付けられている場合に、許可される。この場合、フラグbinaryHorAllowedが1にセットされて対応する分割モードが現在のブロックに対して許可されることを示す。
【0062】
モードVERは、ブロックが画像の境界を下側で(またはスキャン順に応じて上側で)越えて延在していない場合に許可される。変形では、モードVERは、ブロックが画像の境界を下側で越えて延在していない場合に、かつブロックが画像の境界を右側で越えて延在する事例では、画像の縁およびVER分割から生じた垂直分割線が同一場所に位置付けられている場合に、許可される。
【0063】
この場合、フラグbinaryVerAllowedが1にセットされて対応する分割モードが現在のブロックに対して許可されることを示す。
【0064】
モードHOR_TRIPLEは、ブロックが画像の境界を右側で越えて延在していない場合に、かつブロックが画像の境界を下側で越えて延在する事例では、画像の縁がHOR_TRIPLE分割から生じた水平分割線の1本と同一場所に位置付けられている場合、すなわち、blkPosY+height/4がframeHeightに等しい場合か、またはblkPosY+3*height/4がframeHeightに等しい場合に、許可される。フラグhorizontalTripleAllowedが1にセットされて対応する分割モードが現在のブロックに対して許可されることを示す。
【0065】
モードVER_TRIPLEは、ブロックが画像の境界を下側で越えて延在していない場合に、かつブロックが画像の境界を右側で越えて延在する事例では、画像の縁がVER_TRIPLE分割から生じた垂直分割線の1本と同一場所に位置付けられている場合、すなわち、blkPosX+width/4がframeWidthに等しい場合か、またはblkPosX+3*width/4がframeWidthに等しい場合に、許可される。フラグverticalTripleAllowedが1にセットされて対応する分割モードが現在のブロックに対して許可されることを示す。
【0066】
HOR_UPは、ブロックが画像の境界を右側で越えて延在していない場合に、かつブロックが画像の境界を下側で越えて延在する事例では、画像の縁がHOR_UP分割から生じた水平分割線と同一場所に位置付けられている場合、すなわち、blkPosY+height/4がframeHeightに等しい場合に、許可される。フラグhorUpAllowedが1にセットされて対応する分割モードが現在のブロックに対して許可されることを示す。
【0067】
HOR_DOWNは、ブロックが画像の境界を右側で越えて延在していない場合に、かつブロックが画像の境界を下側で越えて延在する事例では、画像の縁がHOR_DOWN分割から生じた水平分割線と同一場所に位置付けられている場合、すなわち、blkPosY+3*height/4がframeHeightに等しい場合に、許可される。フラグhorDownAllowedが1にセットされて対応する分割モードが現在のブロックに対して許可されることを示す。
【0068】
VER_LEFTは、ブロックが画像の境界を下側で越えて延在していない場合に、かつブロックが画像の境界を右側で越えて延在する事例では、画像の縁がVER_LEFT分割から生じた垂直分割線と同一場所に位置付けられている場合、すなわち、blkPosX+width/4がframeWidthに等しい場合に、許可される。フラグverLeftAllowedが1にセットされて対応する分割モードが現在のブロックに対して許可されることを示す。
【0069】
VER_RIGHTは、ブロックが画像の境界を下側で越えて延在していない場合に、かつブロックが画像の境界を右側で越えて延在する事例では、画像の縁がVER_RIGHT分割から生じた垂直分割線と同一場所に位置付けられている場合、すなわち、blkPosX+3*width/4がframeWidthに等しい場合に、許可される。フラグverRightAllowedが1にセットされて対応する分割モードが現在のブロックに対して許可されることを示す。
【0070】
変形では、追加の分割制約が前述の許可可能性の決定に追加され得る。
【0071】
HORおよびHOR_TRIPLE分割モードの少なくとも1つが許可される場合、horBinaryOrTripleAllowedフラグが1にセットされる。
【0072】
VERおよびVER_TRIPLE分割モードの少なくとも1つが許可される場合、verBinaryOrTripleAllowedフラグが1にセットされる。
【0073】
垂直分割モードの少なくとも1つが許可される場合、verticalSplitAllowedフラグが1にセットされる。水平分割モードの少なくとも1つが許可される場合、horizontalSplitAllowedフラグが1にセットされる。
【0074】
非対称水平分割モードの少なくとも1つが許可される場合、horizontalAsymmetricAllowedフラグが1にセットされる。
【0075】
非対称垂直分割モードの少なくとも1つが許可される場合、verticalAsymmetricAllowedフラグが1にセットされる。
【0076】
ステップS240で、受信機は、ステップS230で判断された許可される分割モードに応答して、現在のブロックに対する現在の分割モードをアクセスされたビットストリームから復号する。実際、現在のブロックに対して許可されるモードを知ることは、信号通知を簡略化し、従ってビットを節約するのを可能にする。一例が、図12に関連して表1の構文によって提供される。表1および図12では、慣例により、値真は1に等しく、値偽は0に等しい。それ故に、真である構文要素は1に等しい構文要素と同じであり、偽である構文要素は0に等しい構文要素と同じである。表1では、ビットストリームから復号された構文要素は、太字で示されている。
【表1】
【0077】
図12には、現在のブロックを復号する2分割モードに関連したステップだけが表されている。
【0078】
ステップS1020で、受信機は、復号される現在のブロックに対して、2分割または3分割およびNO_SPLITモードが許可されるかどうかをチェックする。2分割/3分割が許可されるかどうかのチェック(btSplitAllowed())は典型的には、現在のブロック幅(w)または現在のブロック高さ(h)が閾値(minBTSize)よりも高いかどうかのチェックから成る。幅または高さにおける典型的な最小矩形ブロックサイズはminBTSize=4である。
【0079】
2分割/3分割が許可されない場合、ブロックは分割されず(ステップS1045でbtSplitModeがNO_SPLITにセットされる)、分割に関連した他のどの構文要素も復号されない。2分割およびNO_SPLITモードの両方が許可される場合、ステップS1030で現在のブロックが分割されるか否かを示すフラグbtSplitFlagがビットストリームから復号される。
【0080】
そうでない場合(2分割/3分割が許可されて、NO_SPLITモードが許可されない場合)、btSplitFlagは復号されず、1(または真)に等しいと推測されて、方法はステップS1050から継続する。画像の境界を一部、越えて延在する現在のブロックに関して、NO_SPLITモードは許可されず、従って、btSplitFlagは復号されず、1に等しいと推測される。
【0081】
ステップS1040で、受信機は、現在のブロックが分割されるか否かをチェックする。現在のブロックが分割されない(例えば、ステップS1040でbtSplitFlagが偽である)場合、分割に関連した他のどの構文要素も復号されない。ステップS1045でbtSplitModeがNO_SPLITにセットされる。
【0082】
現在のブロックが分割される(ステップS1040でbtSplitFlagがTrueである)事例では、受信機はステップS1050で、水平および垂直分割モードの両方が現在のブロックに対して許可されるかどうかを判断する。水平および垂直分割モードの両方が許可される場合、ステップS1060で構文要素(btSplitOrientation)が復号されて2分割の配向(水平または垂直)を示す。水平および垂直分割のいずれも許可されない場合、この構文要素(btSplitOrientation)は復号されない。この後者の場合、2分割の配向は推測される。水平分割が許可されない(horizontalSplitAllowedが0またはFalseに等しい)場合、btSplitOrientationはOrientationVERに等しいと推測される。そうでなければ、垂直分割が許可されない(verticalSplitAllowedが0またはFalseに等しい)場合、btSplitOrientationはOrientationHORに等しいと推測される。
【0083】
次いで、受信機はステップS1070で、両方のフラグhorizontalAsymmetricAllowedおよびhorizontalBinOrTripleAllowedが真であるかどうかをチェックする。両方のフラグが真である場合、ステップS1090で構文要素(asymmetricSplitFlag)が復号されて、方法は、ステップS1100から継続する。horizontalAsymmetricAllowedが真でhorizontalBinOrTripleAllowedが偽である場合、asymmetricSplitFlagは真に等しいと推測されて、方法は、ステップS1100から継続する。そうでない(horizontalAsymmetricAllowedが偽でhorizontalBinOrTripleAllowedが真である)場合、asymmetricSplitFlagは偽に等しいと推測されて、方法は、ステップS1100から継続する。
【0084】
ステップS1100で、受信機はフラグasymmetricSplitFlagが真か偽かをチェックする。asymmetricSplitFlagが真である場合、方法はステップS1110から継続し、それ以外、方法はステップS1120から継続する。
【0085】
ステップS1110で、受信機は両方のフラグhorUpAllowedおよびhorDownAllowedが真であるかどうかをチェックする。両方のフラグが真である場合、ステップS1112で構文要素horizontalAsymmetricTypeが復号され、そうでない場合(フラグの一方が偽である場合)、ブロックの分割モードは、horDownAllowedが偽であればHOR_UPに、またはhorUpAllowedが偽であればHOR_DOWNに推測される。
【0086】
ステップS1120で、受信機は両方のフラグbinaryHorAllowedおよびhorizontalTripleAllowedが真であるかどうかをチェックする。両方のフラグが真である場合、ステップS1122で構文要素horizontalTripleFlagが復号され、そうでない場合(フラグの一方が偽である場合)、ブロックの分割モードは、binaryHorAllowedが偽であればHOR_TRIPLEに、またはhorizontalTripleAllowedが偽であればHORに推測される。
【0087】
受信機は垂直配向に対して同じ方法で進む。
【0088】
受信機はステップS1080で両方のフラグverticalAsymmetricAllowedおよびverticalBinOrTripleAllowedが真であるかどうかをチェックする。両方のフラグが真である場合、ステップS1090で構文要素(asymmetricSplitFlag)が復号されて、方法はステップS1200から継続する。verticalAsymmetricAllowedが真でverticalBinOrTripleAllowedが偽の場合、asymmetricSplitFlagは真に等しいと推測されて、方法はステップS1200から継続する。そうでない(verticalAsymmetricAllowedが偽でverticalBinOrTripleAllowedが真である)場合、asymmetricSplitFlagは偽に等しいと推測されて、方法はステップS1200から継続する。
【0089】
ステップS1200で、受信機はフラグasymmetricSplitFlagが真であるか偽であるかをチェックする。asymmetricSplitFlagが真である場合、方法はステップS1210から継続し、それ以外の場合、方法はステップS1220から継続する。
【0090】
ステップS1210で、受信機は両方のフラグverLeftAllowedおよびverRightAllowedが真であるかどうかをチェックする。両方のフラグが真である場合、ステップS1212で構文要素verticalAsymmetricTypeが復号され、そうでない場合(フラグの一方が偽である場合)、ブロックの分割モードbtSplitModeは、verRightAllowedが偽であればVER_LEFTに、またはverLeftAllowedが偽であればVER_RIGHTに推測される。
【0091】
ステップS1220で、受信機は両方のフラグbinaryVerAllowedおよびverticalTripleAllowedが真であるかどうかをチェックする。両方のフラグが真である場合、ステップS1222で構文要素verticalTripleFlagが復号され、そうでない場合(フラグの一方が偽である場合)、ブロックの分割モードbtSplitModeは、binaryVerAllowedが偽であればVER_TRIPLEに、またはverticalTripleAllowedが偽であればVERに推測される。
【0092】
一例として、図13の右上のブロックに対して、不必要な分割を除去するために、図14に示すように二分木構文を刈り込むことができる。この例では、VER_TRIPLEおよびVER_RIGHTだけが許可され、そのため分割を復号するために1つのフラグasymmetricSplitFlagだけが必要とされる。図15に示すのと同じ方法で、図13の左下のブロックに対して、不必要な分割を除去するために、二分木構文を刈り込むことができる。この例では、HOR_TRIPLEおよびHOR_UPだけが利用可能である。これら2つの分割モードは、左下のブロックに対して同じ区分を与え、そのために2つの分割の1つが除去できる。より一般的には、2つの異なる分割モードがブロックの同じ区分を与える事例では、1つだけが許可される。図14および図15は、表1で定義されるような構文のグラフィック表現である。本原理に従った方法はそれ故、改善された速度ひずみ性能で、画像の縁で四分木分割と2分割/3分割との間での競争を可能にする。
【0093】
ステップS230の第1の変形では、受信機は、前記現在のブロックが複数の分割モードの少なくとも1つの分割モードに従って分割されるのが許可されるかどうかを、分割後のブロックの残りの部分のサイズ(すなわち、垂直分割の場合は幅または水平分割の場合は高さ)が、最小ブロックサイズ(典型的には4ピクセル)の倍数であるかどうかをチェックすることにより、判断する。この実施形態は、以前の実施形態と組み合わされ得る。残りの部分は、画像の境界に沿って画像の内部に位置する、ブロックの部分、すなわち、分割から生じたサブブロックである。一例として、第1のステップでは、画像の縁が分割線の1本と同一場所に位置付けられているかどうかがチェックされ、そうでない場合、分割後の残りの部分のサイズ(垂直分割の場合は幅または水平分割の場合は高さ)が最小ブロックサイズの倍数であるかどうかがチェックされる。この実施形態では、画像の縁が分割線の1本と同一場所に位置付けられていない場合でさえ、3分割モードが使用できる。図16では、64×64のブロックが、16×64の左側部分、32×64の中央部分および、斜線の入ったブロックによって識別されるサイズ8×64の残りの右側部分で、垂直に分割される。
【0094】
同等に、画像の境界に沿った残りの部分のサイズ(垂直分割の場合は幅または水平分割の場合は高さ)が依然として最小ブロックサイズ(例えば、4)の倍数である場合、非対称2分割が許可される。
【0095】
この第2の実施形態は、以下で開示するように第1の実施形態と好都合に組み合わされ得る。
【0096】
モードNO_SPLITは、ブロックが完全に画像の内部にある場合に限り許可され、そうでない場合、このモードは許可されない。フラグnoSplitAllowedが1にセットされてNO_SPLITモードが許可されることを示す。
【0097】
モードHORは、ブロックが画像の境界を右側で越えて延在していない場合に許可される。変形では、モードHORは、ブロックの右側部分が画像の境界を右側で越えて延在していない場合に、かつブロックが画像の境界を下側で越えて延在する事例では、画像の縁およびHOR分割から生じた水平分割線が同一場所に位置付けられている場合、または分割後のブロックの残りの部分の高さが最小ブロックサイズの倍数である場合に、許可される。この場合、フラグbinaryHorAllowedが1にセットされて対応する分割モードが現在のブロックに対して許可されることを示す。
【0098】
モードVERは、ブロックが画像の境界を下側で越えて延在していない場合に許可される。変形では、モードVERは、ブロックが画像の境界を下側で越えて延在していない場合に、かつブロックが画像の境界を右側で越えて延在する事例では、画像の縁およびVER分割から生じた垂直分割線が同一場所に位置付けられている場合、または分割後のブロックの残りの部分の幅が最小ブロックサイズの倍数である場合に、許可される。この場合、フラグbinaryVerAllowedが1にセットされて対応する分割モードが現在のブロックに対して許可されることを示す。
【0099】
モードHOR_TRIPLEは、ブロックが画像の境界を右側で越えて延在していない場合に、かつブロックが画像の境界を下側で越えて延在する事例では、画像の縁がHOR_TRIPLE分割から生じた水平分割線の1本と同一場所に位置付けられている場合、すなわち、blkPosY+height/4がframeHeightに等しい場合か、もしくはblkPosY+3*height/4がframeHeightに等しい場合、または分割後のブロックの残りの部分の高さが最小ブロックサイズの倍数である場合に、許可される。フラグhorizontalTripleAllowedが1にセットされて対応する分割モードが現在のブロックに対して許可されることを示す。
【0100】
モードVER_TRIPLEは、ブロックが画像の境界を下側で越えて延在していない場合に、かつブロックが画像の境界を右側で越えて延在する事例では、画像の縁がVER_TRIPLE分割から生じた垂直分割線の1本と同一場所に位置付けられている場合、すなわち、blkPosX+width/4がframeWidthに等しい場合か、もしくはblkPosX+3*width/4がframeWidthに等しい場合、または分割後のブロックの残りの部分の幅が最小ブロックサイズの倍数である場合に、許可される。フラグverticalTripleAllowedが1にセットされて対応する分割モードが現在のブロックに対して許可されることを示す。
【0101】
HOR_UPは、ブロックが画像の境界を右側で越えて延在していない場合に、かつブロックが画像の境界を下側で越えて延在する事例では、画像の縁がHOR_UP分割から生じた水平分割線と同一場所に位置付けられている場合、すなわち、blkPosY+height/4がframeHeightに等しい場合、または分割後のブロックの残りの部分の高さが最小ブロックサイズの倍数である場合に、許可される。フラグhorUpAllowedが1にセットされて対応する分割モードが現在のブロックに対して許可されることを示す。
【0102】
HOR_DOWNは、ブロックが画像の境界を右側で越えて延在していない場合に、かつブロックが画像の境界を下側で越えて延在する事例では、画像の縁がHOR_DOWN分割から生じた水平分割線と同一場所に位置付けられている場合、すなわち、blkPosY+3*height/4がframeHeightに等しい場合、または分割後のブロックの残りの部分の高さが最小ブロックサイズの倍数である場合に、許可される。フラグhorDownAllowedが1にセットされて対応する分割モードが現在のブロックに対して許可されることを示す。
【0103】
VER_LEFTは、ブロックが画像の境界を下側で越えて延在していない場合に、かつブロックが画像の境界を右側で越えて延在する事例では、画像の縁がVER_LEFT分割から生じた垂直分割線と同一場所に位置付けられている場合、すなわち、blkPosX+width/4がframeWidthに等しい場合、または分割後のブロックの残りの部分の幅が最小ブロックサイズの倍数である場合に、許可される。フラグverLeftAllowedが1にセットされて対応する分割モードが現在のブロックに対して許可されることを示す。
【0104】
VER_RIGHTは、ブロックが画像の境界を下側で越えて延在していない場合に、かつブロックが画像の境界を右側で越えて延在する事例では、画像の縁がVER_RIGHT分割から生じた垂直分割線と同一場所に位置付けられている場合、すなわち、blkPosX+3*width/4がframeWidthに等しい場合、または分割後のブロックの残りの部分の幅が最小ブロックサイズの倍数である場合に、許可される。フラグverRightAllowedが1にセットされて対応する分割モードが現在のブロックに対して許可されることを示す。
【0105】
S230の第2の変形では、現在のブロックが一部、画像の境界を越えて延在している場合、現在のブロックの残りの部分のサイズが計算される。次いで、残りの部分を係数のブロックに変換するために変換(例えば、DCTまたはDST)が利用可能であるかどうかがチェックされる。かかる変換が利用可能である場合、現在のブロックはさらに分割することなく、符号化され得る。この場合、フラグnoSplitAllowedを1にセットすることにより、分割モードNO_SPLITが許可されているとして示される。この後者の場合、フラグが復号されて、ブロックが有効に分割されないかどうか、またはブロックが分割モード、例えば、四分木など、に従ってさらに分割されるかを示す。特定の実施形態では、2分割または3分割いずれかの他の分割モードはかかるブロックに対して許可されない。変形では、これらすべての分割モードが四分木分割モードに追加して許可される。
【0106】
一例として、残りの部分のサイズが4×16のサイズ16×16の現在のブロックに対して、サイズ4×16のブロックはサイズ4および16の1D変換で変換され得るので、NO_SPLITは現在のブロックに対して許可される。この第2の変形では、NO_SPLITモードは従って、画像の境界を越えて延在しているブロックに対してさえ許可され得る。
【0107】
別の例では、残りの部分のサイズが12×16のサイズ16×16の現在のブロックに対して、非対称分割が有効にされる場合に限りNO_SPLITが現在のブロックに対して許可される。実際、この場合、12×16ブロックがサイズ3×2の変換によって変換され得る。サイズ3×2のかかる変換は、非対称分割が有効にされる場合に利用可能である。非対称分割が無効にされる場合には、2の累乗変換のみが利用可能である。この後者の場合、ブロック12×16は必然的に分割される、すなわち、NO_SPLITモードは従って、許可されない。非対称分割は、高レベル構文要素、例えば、いくつかのプロファイルによって無効にされ得る。
【0108】
ステップS250で、現在のブロックは現在の分割モードに従って復号される。この目的のため、現在のブロックを分割モードに従って分割することにより取得されたブロックの各サブブロックが復号される。
【0109】
ブロック、例えば、現在のブロックのサブブロックの1つを復号することは、通常、しかし必ずしもではなく、ブロックを表すビットストリームの一部をエントロピー復号して変換係数のブロックを取得すること、変換係数のブロックを逆量子化および逆変換して残差のブロックを取得すること、ならびに予測因子を残差のブロックに加えて復号されたブロックを取得することを含む。
【0110】
図17は、特定の、限定されない実施形態に従って画像のブロックをビットストリームに符号化するための方法の流れ図を表す。
【0111】
本方法はステップS100から始まる。ステップS110で、送信機、例えば、符号器100などは、画像の少なくとも一部を含む現在のブロックにアクセスする。ステップS120で、送信機は、現在のブロックが一部、画像の外側にあるか、すなわち、画像の1つの境界を越えて延在しているかどうかを判断する。このステップは、復号方法のステップS220と同一である。
【0112】
現在のブロックが一部、画像の外側にある場合には、方法はステップS130から継続し、そうでない場合、方法は、ステップS140から継続する。この後者の場合、ブロックは完全に画像の内部にあり、全ての分割モードが許可され得る。ステップS130で、送信機は、複数の分割モードの各分割モードに対して、現在のブロックがこの分割モードに従って分割されるのが許可されるかどうかを、分割線の少なくとも1本が画像縁の1つと同一場所に位置付けられているかどうかをチェックすることにより、判断する。このステップは、復号方法のステップS230と同一である。復号方法に関して開示された全ての実施形態および変形は符号化方法にも適用される。ステップS140で、送信機は、許可される分割モードに応答してアクセスされたブロックに対する現在の分割モードを判断し、現在のブロックに対して、現在のブロックモードをビットストリームに符号化する。分割モードは、速度ひずみ基準に基づいて許可されるモードから選択され得る。各許可される分割モードがテストされ得、最良の速度ひずみ妥協を提供するものが現在のブロックを符号化するための分割モードとして選択される。
【0113】
ステップS150で、送信機は、アクセスされたブロックを現在の分割モードに従ってビットストリームに符号化する。この目的のため、現在のブロックは、分割モードに従っていくつかのサブブロックに分割され得る。ブロック、例えば、サブブロックを符号化することは、通常、しかし必ずしもではなく、予測因子をそのブロックから差し引いて残差のブロックを取得すること、残差のブロックを変換係数のブロックに変換すること、係数のブロックを量子化ステップサイズQPで量子化して変換係数の量子化されたブロックを取得すること、および変換係数の量子化されたブロックをビットストリームにエントロピー符号化することを含む。ブロックを符号器側で再構築することは、通常、しかし必ずしもではなく、変換係数の量子化されたブロックを逆量子化および逆変換して残差のブロックを取得すること、および予測因子を残差のブロックに加えて復号されたブロックを取得することを含む。
【0114】
方法は、ステップS180で終了する。
【0115】
本明細書で開示する実施態様は、例えば、方法もしくはプロセス、装置、ソフトウェアプログラム、データストリーム、または信号で実装され得る。たとえ単一の形式の実施態様の文脈だけで説明されていても(例えば、方法または装置としてだけ説明される)、説明される特徴の実施態様は、他の形式(例えば、プログラム)でも実装され得る。装置は、例えば、適切なハードウェア、ソフトウェア、およびファームウェアで実装され得る。本方法は、例えば、コンピュータ、マイクロプロセッサ、集積回路、またはプログラム可能論理回路を含む、一般に処理装置と呼ばれる、例えば、プロセッサなどの、例えば、装置で実装され得る。プロセッサは、エンドユーザー間での情報の伝達を容易にする、例えば、コンピュータ、携帯電話、携帯型/パーソナル情報端末(「PDA」)などの、通信装置も含む。
【0116】
本明細書で説明する様々なプロセスおよび特徴の実施態様は、様々な異なる機器またはアプリケーション、具体的には、例えば、機器またはアプリケーションで具現化され得る。かかる機器の例は、符号器、復号器、復号器からの出力を処理するポストプロセッサ、符号器への入力を提供するプリプロセッサ、ビデオ符号器、ビデオ復号器、ビデオコーデック、ウェブサーバー、セットトップボックス、ラップトップ、パーソナルコンピュータ、携帯電話、PDA、および他の通信装置を含む。当然のことながら、機器はモバイルであり得、移動車両内にさえ設置され得る。
【0117】
追加として、本方法は、プロセッサによって実行されている命令によって実装され得、かかる命令(および/または実施態様によって生成されたデータ値)は、プロセッサ可読記憶媒体、例えば、集積回路、ソフトウェアキャリアまたは、例えば、ハードディスク、コンパクトディスケット(「CD」)、光ディスク(例えば、しばしばデジタル多用途ディスクまたはデジタルビデオディスクと呼ばれる、DVDなど)、ランダムアクセスメモリ(「RAM」)、もしくは読取り専用メモリ(「ROM」)などの他の記憶装置など、上に格納され得る。命令は、プロセッサ可読媒体上に有形的に具現化されたアプリケーションプログラムを形成し得る。命令は、例えば、ハードウェア、ファームウェア、ソフトウェア、または組合せであり得る。命令は、例えば、オペレーティングシステム、別個のアプリケーション、またはその2つの組合せで見られ得る。プロセッサは、従って、例えば、プロセスを実行するために構成された装置およびプロセスを実行するための命令を有するプロセッサ可読媒体(記憶装置など)を含む装置の両方として特徴付けられ得る。さらに、プロセッサ可読媒体は、命令に加えて、または命令の代わりに、実施態様によって生成されたデータ値を格納し得る。
【0118】
当業者には明らかであるように、実施態様は、例えば、格納または送信され得る情報を伝えるためにフォーマットされた様々な信号を生成し得る。情報は、例えば、方法を実行するための命令、または説明される実施態様の1つによって生成されるデータを含み得る。例えば、信号は、説明される実施形態の構文を書き込むか、もしくは読み取るための規則をデータとして伝えるか、または説明される実施形態によって書き込まれる実際の構文値をデータとして伝えるためにフォーマットされ得る。かかる信号は、例えば、電磁波(例えば、スペクトルの無線周波数部分を使用)として、またはベースバンド信号としてフォーマットされ得る。フォーマット化は、例えば、データストリームを符号化すること、および搬送波を符号化されたデータストリームで変調することを含み得る。信号が伝える情報は、例えば、アナログまたはデジタル情報であり得る。信号は、周知のように、様々な異なる有線または無線リンクを通して送信され得る。信号はプロセッサ可読媒体上に格納され得る。
【0119】
いくつかの実施態様が説明されている。それでもなお、様々な変更が行われ得ることが理解されよう。例えば、異なる実施態様の要素が、組み合わされ、補足され、変更され、または取り除かれて他の実施態様を生成し得る。追加として、当業者は、他の構造およびプロセスが開示されたものの代わりに使用され得、結果として生じる実施態様は、開示された実施態様と、少なくとも実質的に同じ機能(複数可)を、少なくとも実質的に同じ方法(複数可)で実行して、少なくとも実質的に同じ結果(複数可)を達成することを理解するであろう。その結果、これらのおよび他の実施態様は本出願によって企図される。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17