(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025100894
(43)【公開日】2025-07-03
(54)【発明の名称】適応的な数の領域を伴う幾何学的分割におけるインター予測
(51)【国際特許分類】
H04N 19/52 20140101AFI20250626BHJP
H04N 19/176 20140101ALI20250626BHJP
H04N 19/119 20140101ALI20250626BHJP
【FI】
H04N19/52
H04N19/176
H04N19/119
【審査請求】有
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2025072098
(22)【出願日】2025-04-24
(62)【分割の表示】P 2021543478の分割
【原出願日】2020-01-28
(31)【優先権主張番号】62/797,820
(32)【優先日】2019-01-28
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】521328755
【氏名又は名称】オーピー ソリューションズ, エルエルシー
(74)【代理人】
【識別番号】100078282
【弁理士】
【氏名又は名称】山本 秀策
(74)【代理人】
【識別番号】100113413
【弁理士】
【氏名又は名称】森下 夏樹
(74)【代理人】
【識別番号】100181674
【弁理士】
【氏名又は名称】飯田 貴敏
(74)【代理人】
【識別番号】100181641
【弁理士】
【氏名又は名称】石川 大輔
(74)【代理人】
【識別番号】230113332
【弁護士】
【氏名又は名称】山本 健策
(72)【発明者】
【氏名】ボリヴォイェ ファート
(72)【発明者】
【氏名】ハリ カルバ
(72)【発明者】
【氏名】ヴェリボール アジッチ
(57)【要約】
【課題】好適な適応的な数の領域を伴う幾何学的分割におけるインター予測を提供すること。
【解決手段】デコーダは、回路を含み、回路は、ビットストリームを受信することと、カレントブロックを幾何学的分割モードを介して第1の領域、第2の領域、および第3の領域に分割することと、第1の領域、第2の領域、または第3の領域と関連付けられる動きベクトルを決定することであって、決定することは、候補リストを構築することを含む、ことと、決定された動きベクトルを使用してカレントブロックをデコードすることとを行うように構成される。関連する装置、システム、技法、および物品もまた、説明される。
【選択図】
図11
【特許請求の範囲】
【請求項1】
互換性のあるデコーダによってデコードするためにビットストリームをエンコードするように構成される回路を備えるエンコーダであって、前記デコーダは、
カレントピクチャを含む前記エンコードされたビットストリームを受信することであって、前記カレントピクチャは、カレントブロックをさらに含み、前記カレントブロックは、前記カレントブロックを第1および第2の非長方形領域に分割する少なくとも第1の分割境界、および、前記少なくとも第1の分割境界と交差しかつ前記第2の非長方形領域を分割する第2の分割境界を有し、前記カレントブロックを3つの部分に分割する、ことと、
動きベクトル候補の第1のリストから選択される第1の動きベクトルを使用して、前記第1の非長方形領域内での使用のための第1の予測子を決定することと、
動きベクトル候補の第2のリストから選択される第2の動きベクトルを使用して、前記第2の非長方形領域内での使用のための第2の予測子を決定することと、
動きベクトル候補の第3のリストから選ばれる第3の動きベクトルを使用して、前記第2の分割境界の1つの側上での使用のための第3の予測子を決定することと、
前記第1の予測子および前記第2の予測子を使用して、前記カレントブロックをデコードすることであって、デコードすることは、前記少なくとも第1の分割境界を横断して前記第1の予測子および前記第2の予測子を平滑化することをさらに含む、ことと
を行うように構成される、エンコーダ。
【請求項2】
前記カレントブロックは、カレントコーディングツリーユニットである、請求項1に記載のエンコーダ。
【請求項3】
前記第1の分割は、第1の幾何学的分割を含む、請求項1に記載のエンコーダ。
【請求項4】
前記第2の分割は、第2の幾何学的分割を含む、請求項1に記載のエンコーダ。
【請求項5】
互換性のあるデコーダによってデコードするためにビットストリームをエンコードするように構成される回路を備えるエンコーダであって、前記デコーダは、
前記エンコードされたビットストリームを受信することであって、前記ビットストリームは、カレントピクチャを含み、前記カレントピクチャは、N×Nのブロックサイズを有するカレントブロックを含み、Nは、64または128に等しく、前記カレントブロックは、前記カレントブロックを第1および第2の非長方形領域に分割する少なくとも第1の幾何学的分割境界、および、前記少なくとも第1の幾何学的分割境界と交差しかつ前記第2の非長方形領域を分割する第2の幾何学的分割境界を有し、前記カレントブロックを3つの部分に分割する、ことと、
動きベクトル候補の第1のリストから選択される第1の動きベクトルを使用して、前記第1の非長方形領域内での使用のための第1の予測子を決定することと、
動きベクトル候補の第2のリストから選択される第2の動きベクトルを使用して、前記第2の非長方形領域内での使用のための第2の予測子を決定することと、
前記第1の予測子および前記第2の予測子を使用して、前記カレントブロックをデコードすることであって、デコードすることは、前記少なくとも第1の幾何学的分割境界を横断して前記第1の予測子および前記第2の予測子を平滑化することをさらに含む、ことと
を行うように構成される、エンコーダ。
【請求項6】
前記カレントブロックは、カレントコーディングツリーユニットである、請求項5に記載のエンコーダ。
【請求項7】
互換性のあるデコーダによってデコードするためにエンコードされたビットストリームを伝送するための方法であって、前記エンコードされたビットストリームは、カレントピクチャを含み、前記カレントピクチャは、カレントブロックをさらに含み、前記カレントブロックは、前記カレントブロックを第1および第2の非長方形領域に分割する少なくとも第1の分割境界、および、前記少なくとも第1の分割境界と交差しかつ前記第2の非長方形領域を分割する第2の分割境界を有し、前記カレントブロックを3つの部分に分割し、前記デコーダは、
カレントピクチャを含む前記エンコードされたビットストリームを受信することであって、前記カレントピクチャは、カレントブロックをさらに含み、前記カレントブロックは、前記カレントブロックを第1および第2の非長方形領域に分割する少なくとも第1の分割境界、および、前記少なくとも第1の分割境界と交差しかつ前記第2の非長方形領域を分割する第2の分割境界を有し、前記カレントブロックを3つの部分に分割する、ことと、
動きベクトル候補の第1のリストから選択される第1の動きベクトルを使用して、前記第1の非長方形領域内での使用のための第1の予測子を決定することと、
動きベクトル候補の第2のリストから選択される第2の動きベクトルを使用して、前記第2の非長方形領域内での使用のための第2の予測子を決定することと、
動きベクトル候補の第3のリストから選ばれる第3の動きベクトルを使用して、前記第2の分割境界の1つの側上での使用のための第3の予測子を決定することと、
前記第1の予測子および前記第2の予測子を使用して、前記カレントブロックをデコードすることであって、デコードすることは、前記少なくとも第1の分割境界を横断して前記第1の予測子および前記第2の予測子を平滑化することをさらに含む、ことと
を行うように構成される、方法。
【請求項8】
前記カレントブロックは、カレントコーディングツリーユニットである、請求項7に記載の方法。
【請求項9】
前記第1の分割は、第1の幾何学的分割を含む、請求項7に記載の方法。
【請求項10】
前記第2の分割は、第2の幾何学的分割を含む、請求項7に記載の方法。
【請求項11】
エンコードされたビットストリームを伝送する方法であって、前記エンコードされたビットストリームは、カレントピクチャを含み、前記カレントピクチャは、N×Nのブロックサイズを有するカレントブロックを含み、Nは、64または128に等しく、前記カレントブロックは、前記カレントブロックを第1および第2の非長方形領域に分割する少なくとも第1の幾何学的分割境界、および、前記少なくとも第1の幾何学的分割境界と交差しかつ前記第2の非長方形領域を分割する第2の幾何学的分割境界を有し、前記カレントブロックを3つの部分に分割し、エンコーダが、互換性のあるデコーダによってデコードするためにビットストリームをエンコードするように構成される回路を備え、前記デコーダは、
前記エンコードされたビットストリームを受信することと、
動きベクトル候補の第1のリストから選択される第1の動きベクトルを使用して、前記第1の非長方形領域内での使用のための第1の予測子を決定することと、
動きベクトル候補の第2のリストから選択される第2の動きベクトルを使用して、前記第2の非長方形領域内での使用のための第2の予測子を決定することと、
前記第1の予測子および前記第2の予測子を使用して、前記カレントブロックをデコードすることであって、デコードすることは、前記少なくとも第1の幾何学的分割境界を横断して前記第1の予測子および前記第2の予測子を平滑化することをさらに含む、ことと
を行うように構成される、方法。
【請求項12】
前記カレントブロックは、カレントコーディングツリーユニットである、請求項11に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本願は、2019年1月28日に出願され「INTER PREDICTION IN GEOMETRIC PARTITIONING WITH AN ADAPTIVE NUMBER OF REGIONS」と題された米国仮特許出願第62/797,820号の優先権の利益を主張し、その出願は、参照することによってその全体として本明細書に援用される。
【0002】
本発明は、概して、ビデオ圧縮の分野に関する。具体的には、本発明は、適応的な数の領域を伴う幾何学的分割におけるインター予測を対象とする。
【背景技術】
【0003】
ビデオコーデックは、デジタルビデオを圧縮または解凍する電子回路またはソフトウェアを含み得る。それは、圧縮されていないビデオを圧縮されたフォーマットに変換することができ、逆もまた同様である。ビデオ圧縮の文脈において、ビデオを圧縮する(および/またはそのうちのいくつかの機能を実施する)デバイスは、典型的には、エンコーダと呼ばれ得、ビデオを解凍する(および/またはそのうちのいくつかの機能を実施する)デバイスは、デコーダと呼ばれ得る。
【0004】
圧縮されたデータのフォーマットは、標準的なビデオ圧縮仕様に適合することができる。圧縮は、圧縮されたビデオが元のビデオの中に存在するある情報を欠く点で非可逆的であり得る。この結果は、元のビデオを正確に再構築するために不十分な情報しか存在しないので、解凍されたビデオが元の圧縮されていないビデオより低い品質を有し得ることを含み得る。
【0005】
ビデオ品質と、ビデオを表現するために使用される(例えば、ビットレートによって決定される)データ量と、エンコーディングアルゴリズムおよびデコーディングアルゴリズムの複雑性と、データ損失ならびに誤差に対する感度と、編集のし易さと、ランダムアクセスと、エンドツーエンド遅延(例えば、待機時間)と、同等物との間に、複雑な関係が存在し得る。
【発明の概要】
【課題を解決するための手段】
【0006】
ある側面では、デコーダは、回路を含み、回路は、ビットストリームを受信することと、カレントブロックを幾何学的分割モードを介して第1の領域、第2の領域、および第3の領域に分割することと、第1の領域、第2の領域、および第3の領域のうちのある領域と関連付けられる動きベクトルを決定することであって、決定することはさらに、候補リストを構築することを含む、ことと、決定された動きベクトルを使用してカレントブロックをデコードすることとを行うように構成される。
【0007】
別の側面では、方法は、デコーダがビットストリームを受信することを含む。方法は、デコーダがカレントブロックを幾何学的分割モードを介して第1の領域、第2の領域、および第3の領域に分割することを含む。方法は、デコーダが第1の領域、第2の領域、および第3の領域のうちのある領域と関連付けられる動きベクトルを決定することを含み、決定することは、候補リストを構築することを含む。方法は、デコーダが決定された動きベクトルを使用してカレントブロックをデコードすることを含む。
【0008】
本明細書に説明される主題の1つ以上の変形例の詳細が、付随の図面および下記の説明に記載される。本明細書に説明される主題の他の特徴および利点が、説明および図面から、ならびに請求項から明白となるであろう。
本発明は、例えば、以下を提供する。
(項目1)
デコーダであって、前記デコーダは、回路を備え、前記回路は、
ビットストリームを受信することと、
カレントブロックを幾何学的分割モードを介して第1の領域、第2の領域、および第3の領域に分割することと、
前記第1の領域、前記第2の領域、および前記第3の領域のうちのある領域と関連付けられる動きベクトルを決定することであって、決定することはさらに、候補リストを構築することを含む、ことと、
前記決定された動きベクトルを使用して、前記カレントブロックをデコードすることと
を行うように構成される、デコーダ。
(項目2)
前記候補リストを構築することは、左下候補、左候補、左上候補、上候補、および右上候補を評価することを含む、項目1に記載のデコーダ。
(項目3)
前記決定された動きベクトルは、前記第1の領域に関しており、
前記幾何学的分割モードは、第1のルマ場所と第2のルマ場所との間の線セグメントを含み、
前記左下候補は、前記第2のルマ場所のすぐ左かつ真下の第3のルマ場所に位置し、
前記左候補は、前記第2のルマ場所のすぐ左の第4のルマ場所に位置し、
前記左上候補は、前記第1の領域の最も左上のルマ場所の真上かつすぐ左の第5のルマ場所に位置し、
前記上候補は、前記第1のルマ場所の真上の第6のルマ場所に位置し、
前記右上候補は、前記第1のルマ場所の真上かつ右の第7のルマ場所に位置する、項目2に記載のデコーダ。
(項目4)
前記決定された動きベクトルは、前記第2の領域に関しており、
前記幾何学的分割モードは、第1のルマ場所と第2のルマ場所との間の線セグメントを含み、
前記左下候補は、前記第3の領域の最も左下のルマ場所のすぐ左かつ真下の第3のルマ場所に位置し、
前記左候補は、前記第3の領域の最も左下のルマ場所のすぐ左の第4のルマ場所に位置し、
前記左上候補は、前記第1の場所の真上の第5のルマ場所に位置し、
前記上候補は、前記第2の領域の最も右上のルマ場所の真上の第6のルマ場所に位置し、
前記右上候補は、前記第2の領域の最も右上のルマ場所の真上かつ右の第7のルマ場所に位置する、項目2に記載のデコーダ。
(項目5)
前記決定された動きベクトルは、前記第3の領域に関しており、
前記幾何学的分割モードは、第1のルマ場所と第2のルマ場所との間の線セグメントを含み、
前記左下候補は、前記第3の領域の最も左下のルマ場所のすぐ左かつ真下の第3のルマ場所に位置し、
前記左候補は、前記第3の領域の最も左下のルマ場所のすぐ左の第4のルマ場所に位置し、
前記左上候補は、前記第1の領域と同一位置にある第5のルマ場所に位置し、
前記上候補は、前記第2の場所のすぐ左の第6のルマ場所に位置し、
前記右上候補は、前記第2の領域と並列させられた第7のルマ場所に位置する、項目2に記載のデコーダ。
(項目6)
前記決定された動きベクトルは、前記第2の領域に関しており、前記デコーダはさらに、候補が前記第3の領域と同一位置にあることを決定することに応答して、前記候補を利用不可能としてマーキングするように構成される、項目2に記載のデコーダ。
(項目7)
前記決定された動きベクトルは、前記第2の領域に関しており、
前記デコーダはさらに、前記幾何学的分割モードが有効化されることを決定することに応答して、前記左上候補を利用不可能として自動的にマーキングするように構成される、項目2に記載のデコーダ。
(項目8)
前記決定された動きベクトルは、前記第3の領域に関しており、
前記デコーダはさらに、前記幾何学的分割モードが有効化されることを決定することに応答して、前記右上候補を利用不可能として自動的にマーキングするように構成される、項目2に記載のデコーダ。
(項目9)
前記決定された動きベクトルは、前記第3の領域に関しており、
前記デコーダはさらに、前記幾何学的分割モードが有効化されることを決定することに応答して、前記左上候補を自動的に利用不可能としてマーキングするように構成される、項目2に記載のデコーダ。
(項目10)
マージモードが前記第1の領域に関して有効化されることを決定するようにさらに構成される、項目1に記載のデコーダ。
(項目11)
高度動きベクトル予測モードが前記第1の領域に関して有効化されることを決定するようにさらに構成される、項目1に記載のデコーダ。
(項目12)
前記カレントブロックのピクセルデータを再構築するようにさらに構成される、項目1に記載のデコーダ。
(項目13)
前記第1の領域および前記第2の領域は、非長方形である、項目12に記載のデコーダ。
(項目14)
前記幾何学的分割モードは、前記ビットストリーム内で信号伝達される、項目1に記載のデコーダ。
(項目15)
前記カレントブロックを前記幾何学的分割モードを介して前記第1の領域、前記第2の領域、および前記第3の領域に分割することは、第1のルマ場所および第2のルマ場所によって特徴付けられる線セグメントを用いて前記カレントブロックを分割することを含む、項目1に記載のデコーダ。
(項目16)
前記幾何学的分割モードが有効化されるかどうかを決定することと、
前記カレントブロックに関する第1の線セグメントを決定することと、
前記カレントブロックに関する第2の線セグメントを決定することと
を行うようにさらに構成され、
前記カレントブロックのデコーディングは、前記第1の線セグメントおよび前記第2の線セグメントを使用してピクセルデータを再構築することを含み、
前記第1の線セグメントおよび前記第2の線セグメントが、前記カレントブロックを前記第1の領域、前記第2の領域、および前記第3の領域に分割する、項目1に記載のデコーダ。
(項目17)
前記幾何学的分割モードは、64×64ルマサンプル以上、または128×128ルマサンプル以上のブロックサイズに関して利用可能である、項目1に記載のデコーダ。
(項目18)
前記ビットストリームを受信し、前記ビットストリームを量子化された係数にデコードするように構成されるエントロピーデコーダプロセッサと、
逆離散コサイン変換を実施することを含め、前記量子化された係数を処理するように構成される逆量子化および逆変換プロセッサと、
デブロッキングフィルタと、
フレームバッファと、
イントラ予測プロセッサと
をさらに備える、項目1に記載のデコーダ。
(項目19)
前記ビットストリームは、前記幾何学的分割モードが前記カレントブロックに関して有効化されるかどうかを示すパラメータを含む、項目1に記載のデコーダ。
(項目20)
前記カレントブロックは、クアッドツリープラスバイナリディシジョンツリーの一部を形成する、項目1に記載のデコーダ。
(項目21)
前記カレントブロックは、前記クアッドツリープラスバイナリディシジョンツリーの非リーフノードである、項目20に記載のデコーダ。
(項目22)
前記カレントブロックは、コーディングツリーユニットまたはコーディングユニットである、項目1に記載のデコーダ。
(項目23)
前記第1の領域は、コーディングユニットまたは予測ユニットである、項目1に記載のデコーダ。
(項目24)
方法であって、前記方法は、
デコーダが、ビットストリームを受信することと、
前記デコーダが、カレントブロックを幾何学的分割モードを介して第1の領域、第2の領域、および第3の領域に分割することと、
前記デコーダが、前記第1の領域、前記第2の領域、および前記第3の領域のうちのある領域と関連付けられる動きベクトルを決定することであって、前記決定することは、候補リストを構築することを含む、ことと、
前記デコーダが、前記決定された動きベクトルを使用して、前記カレントブロックをデコードすることと
を含む、方法。
(項目25)
前記候補リストを構築することは、左下候補、左候補、左上候補、上候補、および右上候補を評価することを含む、項目24に記載の方法。
(項目26)
前記決定された動きベクトルは、前記第1の領域に関しており、
前記幾何学的分割モードは、第1のルマ場所と第2のルマ場所との間の線セグメントを含み、
前記左下候補は、前記第2のルマ場所のすぐ左かつ真下の第3のルマ場所に位置し、
前記左候補は、前記第2のルマ場所のすぐ左の第4のルマ場所に位置し、
前記左上候補は、前記第1の領域の最も左上のルマ場所の真上かつすぐ左の第5のルマ場所に位置し、
前記上候補は、前記第1のルマ場所の真上の第6のルマ場所に位置し、
前記右上候補は、前記第1のルマ場所の真上かつ右の第7のルマ場所に位置する、項目25に記載の方法。
(項目27)
前記決定された動きベクトルは、前記第2の領域に関しており、
前記幾何学的分割モードは、第1のルマ場所と第2のルマ場所との間の線セグメントを含み、
前記左下候補は、前記第3の領域の最も左下のルマ場所のすぐ左かつ真下の第3のルマ場所に位置し、
前記左候補は、前記第3の領域の最も左下のルマ場所のすぐ左の第4のルマ場所に位置し、
前記左上候補は、前記第1の場所の真上の第5のルマ場所に位置し、
前記上候補は、前記第2の領域の最も右上のルマ場所の真上の第6のルマ場所に位置し、
前記右上候補は、前記第2の領域の最も右上のルマ場所の真上かつ右の第7のルマ場所に位置する、項目25に記載の方法。
(項目28)
前記決定された動きベクトルは、前記第3の領域に関しており、
前記幾何学的分割モードは、第1のルマ場所と第2のルマ場所との間の線セグメントを含み、
前記左下候補は、前記第3の領域の最も左下のルマ場所のすぐ左かつ真下の第3のルマ場所に位置し、
前記左候補は、前記第3の領域の最も左下のルマ場所のすぐ左の第4のルマ場所に位置し、
前記左上候補は、前記第1の領域と同一位置にある第5のルマ場所に位置し、
前記上候補は、前記第2の場所のすぐ左の第6のルマ場所に位置し、
前記右上候補は、前記第2の領域と同一位置にある第7のルマ場所に位置する、項目25に記載の方法。
(項目29)
前記決定された動きベクトルは、前記第2の領域に関しており、候補が前記第3の領域と同一位置にあることを決定することに応答して、前記候補を利用不可能としてマーキングすることをさらに含む、項目25に記載の方法。
(項目30)
前記決定された動きベクトルは、前記第2の領域に関しており、前記幾何学的分割モードが有効化されることを決定することに応答して、前記左上候補を利用不可能として自動的にマーキングすることをさらに含む、項目25に記載の方法。
(項目31)
前記決定された動きベクトルは、前記第3の領域に関しており、前記幾何学的分割モードが有効化されることを決定することに応答して、前記右上候補を利用不可能として自動的にマーキングすることをさらに含む、項目25に記載の方法。
(項目32)
前記決定された動きベクトルは、前記第3の領域に関しており、前記幾何学的分割モードが有効化されることを決定することに応答して、前記左上候補を利用不可能として自動的にマーキングすることをさらに含む、項目25に記載の方法。
(項目33)
マージモードが前記第1の領域に関して有効化されることを決定することをさらに含む、項目24に記載の方法。
(項目34)
高度動きベクトル予測モードが前記第1の領域に関して有効化されることを決定することをさらに含む、項目24に記載の方法。
(項目35)
前記カレントブロックのピクセルデータを再構築することをさらに含む、項目24に記載の方法。
(項目36)
前記第1の領域および前記第2の領域の各々は、非長方形である、項目24に記載の方法。
(項目37)
前記幾何学的分割モードは、前記ビットストリーム内で信号伝達される、項目24に記載の方法。
(項目38)
前記カレントブロックを前記幾何学的分割モードを介して前記第1の領域、前記第2の領域、および前記第3の領域に分割することは、第1のルマ場所および第2のルマ場所によって特徴付けられる線セグメントを用いて前記カレントブロックを分割することを含む、項目24に記載の方法。
(項目39)
前記幾何学的分割モードが有効化されるかどうかを決定することと、
前記カレントブロックに関する第1の線セグメントを決定することと、
前記カレントブロックに関する第2の線セグメントを決定することと
をさらに含み、
前記カレントブロックのデコーディングは、前記第1の線セグメントおよび前記第2の線セグメントを使用してピクセルデータを再構築することを含み、
前記第1の線セグメントおよび前記第2の線セグメントは、前記カレントブロックを前記第1の領域、前記第2の領域、および前記第3の領域に分割する、項目24に記載の方法。
(項目40)
前記幾何学的分割モードは、64×64ルマサンプル以上、または128×128ルマサンプル以上のブロックサイズに関して利用可能である、項目24に記載の方法。
(項目41)
前記デコーダはさらに、
前記ビットストリームを受信し、前記ビットストリームを量子化された係数にデコードするように構成されるエントロピーデコーダプロセッサと、
逆離散コサイン変換を実施することを含め、前記量子化された係数を処理するように構成される逆量子化および逆変換プロセッサと、
デブロッキングフィルタと、
フレームバッファと、
イントラ予測プロセッサと
を備える、項目24に記載の方法。
(項目42)
前記ビットストリームは、前記幾何学的分割モードが前記カレントブロックに関して有効化されるかどうかを示すパラメータを含む、項目24に記載の方法。
(項目43)
前記カレントブロックは、クアッドツリープラスバイナリディシジョンツリーの一部を形成する、項目24に記載の方法。
(項目44)
前記カレントブロックは、前記クアッドツリープラスバイナリディシジョンツリーの非リーフノードである、項目43に記載の方法。
(項目45)
前記カレントブロックは、コーディングツリーユニットまたはコーディングユニットである、項目24に記載の方法。
(項目46)
前記第1の領域は、コーディングユニットまたは予測ユニットである、項目24に記載の方法。
【図面の簡単な説明】
【0009】
本発明を例証する目的のために、図面は、本発明の1つ以上の実施形態の側面を示す。しかしながら、本発明が図面に示される精密な配列および手段に限定されないことを理解されたい。
【0010】
【
図1】
図1は、3つの領域が存在する幾何学的分割を用いた残差ブロック(例えば、カレントブロック)のある例を示す例証である。
【0011】
【
図2】
図2は、幾何学的分割に従って分割されたある例示的カレントブロックの第1の領域(領域S0)に関する潜在的空間動きベクトル候補の例示的位置を例証する略図である。
【0012】
【
図3】
図3は、第1の領域S0の最も左上のルマ場所を含むルマ場所を示す注釈を伴う
図2を例証する。
【0013】
【
図4】
図4は、幾何学的分割に従って分割されたある例示的カレントブロックの第2の領域S1に関する潜在的動きベクトル候補の例示的位置を例証する略図である。
【0014】
【
図5】
図5は、第3の領域S2の最も左下のルマ場所と、第2の領域S1の最も右上のルマ場所とを含むルマ場所を示す注釈を伴う
図4を例証する。
【0015】
【
図6】
図6は、幾何学的分割に従って分割されたある例示的カレントブロックの第3の領域(領域S2)に対する潜在的空間動きベクトル候補の例示的位置を例証する略図である。
【0016】
【
図7】
図7は、第3の領域S2の最も左下のルマ場所と、第2の領域S1の最も右上のルマ場所とを含むルマ場所を示す注釈を伴う
図6を例証する。
【0017】
【
図8】
図8は、適応的な数の領域を伴う幾何学的分割を用いたインター予測を使用してビデオをエンコードすることが可能なある例示的ビデオエンコーダを例証するシステムブロック図である。
【0018】
【
図9】
図9は、圧縮効率を増加させながらエンコーディング複雑性を低減させることができる、本主題のいくつかの側面による適応的な数の領域を伴う幾何学的分割およびインター予測を用いてビデオをエンコードするある例示的プロセスを例証するプロセスフロー図である。
【0019】
【
図10】
図10は、ビデオエンコーディングおよびデコーディングに関する複雑性および処理性能を改良することができる、インター予測および適応的な数の領域を伴う幾何学的分割を使用してビットストリームをデコードすることが可能なある例示的デコーダを例証するシステムブロック図である。
【0020】
【
図11】
図11は、ビデオエンコーディングおよびデコーディングに関する複雑性および処理性能を改良することができる、適応的な数の領域を伴う幾何学的分割においてインター予測を使用してビットストリームをデコードするある例示的プロセスを例証するプロセスフロー図である。
【0021】
【
図12】
図12は、本明細書に開示される方法のうちのいずれか1つ以上およびそのいずれか1つ以上の部分を実装するために使用されることができるコンピューティングシステムのブロック図である。
【0022】
図面は、必ずしも縮尺通りではなく、想像線、図式表現、および部分図によって例証され得る。ある事例では、実施形態の理解のためには必要ではない詳細、または他の詳細を知覚困難にする詳細が、省略されている場合がある。種々の図面内の同様の参照記号は、同様の要素を示す。
【発明を実施するための形態】
【0023】
本主題のいくつかの実装は、長方形ブロックが3つ以上の非長方形領域に分けられ得る、適応的な数の領域を伴う幾何学的分割モードを用いて分割された領域を用いてインター予測を実施することを含む。適応的な数の領域を伴う幾何学的分割を用いて分割された非長方形ブロックを用いてインター予測を実施することは、分割がオブジェクト境界のより近くを辿ることを可能にし、より低い動き補償予測誤差、より小さい残差、したがって、改良された圧縮効率をもたらし得る。インター予測の間、動き補償が、幾何学的分割モードに従って決定されたブロック(例えば、コーディングユニット、予測ユニット等)に関して予測された動きベクトルを使用して実施され得る。動きベクトルは、高度動きベクトル予測(AMVP)を使用して、および/またはマージモードを介して予測され得、動きベクトルは、動きベクトル差をエンコードすることなく、動きベクトル候補のリストから選択される。
【0024】
本主題は、例えば、128×128または64×64のサイズを有するブロック等の比較的大きいブロックに適用され得る。いくつかの実装では、幾何学的分割は、カレントブロックを所与のカレントブロックに関する3つ以上の領域等の適応的な数の領域に分割することを伴い得、動き情報が、領域毎に決定されることができる。
【0025】
動き補償は、ビデオにおけるカメラおよび/またはオブジェクトの動きを考慮することによって、以前および/または将来のフレームを前提として、ビデオフレームまたはその一部を予測するためのアプローチを含み得る。これは、ビデオ圧縮のためのビデオデータのエンコーディングおよびデコーディングにおいて、例えば、動画専門家集団(MPEG)-2(アドバンスドビデオコーディング(AVC)とも称される)規格を使用するエンコーディングおよびデコーディングにおいて採用され得る。動き補償は、参照ピクチャのカレントピクチャへの変換の観点からピクチャを記述し得る。参照ピクチャは、カレントピクチャと比較したとき、時間的に以前のもの、または将来からのものであり得る。画像が、以前に伝送および/または記憶された画像から正確に合成されることができると、圧縮効率が改良され得る。
【0026】
ブロック分割は、同様の動きの領域を見出すためのビデオコーディングにおける方法を指し得る。ある形態のブロック分割が、MPEG-2、H.264(AVCまたはMPEG-4 Part10とも称される)、およびH.265(高効率ビデオコーディング(HEVC)とも称される)を含むビデオコーデック規格において見出され得る。例示的ブロック分割アプローチでは、ビデオフレームの非重複ブロックが、同様の動きを有するピクセルを含有するブロック分割を見出すために、長方形サブブロックに分割され得る。本アプローチは、ブロック分割の全てのピクセルが同様の動きを有するときに良好に機能することができる。ブロック内のピクセルの動きは、以前にコーディングされたフレームに対して決定され得る。
【0027】
動きベクトル予測が、適応的な数の領域を伴う幾何学的分割において効果的に実装され得る。より詳細には、適応的な数の領域を伴う幾何学的分割は、長方形ブロックが非長方形であり得る2つ以上の領域にさらに分けられるビデオエンコーディングおよびデコーディングのための技法を含み得る。例えば、
図1は、3つのセグメントS0、S1、およびS2が存在する幾何学的分割を用いた残差ブロック(例えば、カレントブロック)100の例を示す例証である。カレントブロック100は、64×64または128×128等、M×Nピクセルとして表されるMピクセルの幅およびNピクセルの高さを有し得る。カレントブロックは、2つの線セグメント(P1P2およびP3P4)に従って幾何学的に分割され得、これは、カレントブロックを3つの領域S0、S1、およびS2に分け得る。S0内のピクセルが同様の動きを有するとき、動きベクトルが、その領域内の全てのピクセルの動きを記述し得る。下記により完全に説明されるように、それぞれの動きベクトルが、AMVPモードまたはマージモードに従って決定され得る。動きベクトルは、領域S0を圧縮するために使用され得る。同様に、領域S1内のピクセルが同様の動きを有するとき、関連付けられる動きベクトルが、領域S1内のピクセルの動きを記述し得る。同様に、領域S2内のピクセルが同様の動きを有するとき、関連付けられる動きベクトルが、領域S2内のピクセルの動きを記述し得る。そのような幾何学的分割は、ビデオビットストリーム内の位置P1、P2、P3、P4(または極座標、所定のテンプレートの中へのインデックス、または分割の他の特徴付け等を使用したこれらの位置の表現)をエンコードすることによって受信機(例えば、デコーダ)に信号伝達され得る。
【0028】
継続して
図1を参照すると、ピクセルレベルにおける幾何学的分割を利用してビデオデータをエンコードするとき、線セグメントP1P2(またはより具体的には、点P1およびP2)が、決定され得る。ピクセルレベルにおける幾何学的分割を利用するときにブロックを最良に分ける線セグメントP1P2(またはより具体的には、点P1およびP2)を決定するために、点P1およびP2の可能な組み合わせは、ブロック幅および高さであるMおよびNに依存する。サイズM×Nのブロックに関して、(M-1)×(N-1)×3の可能な分割が存在する。正しい分割を識別することは、したがって、全ての可能な分割に関する動き推定を評価する演算的に高価なタスクになり得、これは、(例えば、ピクセルレベルにおける幾何学的分割を伴わない)長方形分割を使用するエンコーディングと比較して、ビデオをエンコードするために要求される時間および/または処理能力の量を増加させ得る。最良または正しい分割を成すものは、メトリックに従って決定され得、実装毎に変化し得る。
【0029】
いくつかの実装では、引き続き
図1を参照すると、分割は、2つの領域を形成する第1の分割が決定され得(例えば、線P1P2および関連付けられる領域を決定する)、次いで、それらの領域のうちの1つがさらに分割され得る点において、反復的に行われる。例えば、
図1を参照して説明される分割は、ブロックを2つの領域に分割するために実施され得る。それらの領域のうちの1つは、(例えば、新しい領域S1および領域S2を形成するために)さらに分割され得る。プロセスは、停止基準が達せられるまで、ブロックレベル幾何学的分割を実施し続け得る。
【0030】
継続して
図1を参照すると、インター予測が、幾何学的に分割された領域を使用して実施され得る。動き補償に関する動きベクトルが、AMVPまたはマージモードを使用して導出され得る。AMVPでは、動きベクトル予測が、動きベクトル候補リストへのインデックスを信号伝達することによって行われ、動きベクトル差(例えば、残差)が、エンコードされ、ビットストリーム内に含まれる。マージモードでは、動きベクトルは、動きベクトル差をエンコードすることなく、動きベクトル候補のリストから選択され、それによって、カレントブロックが、別の以前にデコードされたブロックの動き情報を採用することを可能にする。AMVPおよびマージモードの両方において、候補リストが、エンコーダおよびデコーダの両方によって構築され得、候補リストへのインデックスが、ビットストリーム内で信号伝達される。
【0031】
図2は、幾何学的分割に従って分割されたある例示的カレントブロック200の第1の領域(領域S0)に関する潜在的空間動きベクトル候補の位置の非限定的な例を例証する略図である。潜在的空間動きベクトル候補は、AMVPモードまたはマージモード中に動きベクトル候補リストを構築するために考慮され得る。カレントブロック200が、それぞれ、点P0と点P1との間、および点P2と点P3との間の直線によって、3つの領域S0、S1、およびS2に分割され得る。領域S0、領域S1、および領域S2の各々は、一方向性または双方向性で予測され得る。例えば
図2に例証されるような第1の領域(領域S0)に関する空間的候補は、左下候補A0、左候補A1、左上候補B2、上候補B1、および右上候補B0を含み得る。
【0032】
引き続き
図2を参照すると、例証されるように、いくつかの実装では、各場所(A0、A1、B2、B1、およびB0)は、それぞれの場所におけるブロックを表し得る。例えば、左上候補B2は、領域S0のすぐ左かつ真上にある場所に存在するブロックであり得、例えば、S0の左上角のルマ場所が(0,0)である場合、左上候補B2は、場所(-1,-1)に存在し得る。左下候補A0は、P1のすぐ左かつ下方に位置し得、例えば、P1のルマ場所が(P1x,P1y)である場合、左下候補A0は、場所(P1x-1,P1y+1)に存在し得る。左候補A1は、P1のすぐ左に位置し得、例えば、左候補A1は、場所(P1x-1,P1y)に存在し得る。上候補B1は、P0の真上に位置し得、例えば、P0のルマ場所が(P0x,P0y)である場合、上候補B1は、(P0x,P0y-1)に位置し得る。右上候補B0は、P0の真上かつ右に位置し得、例えば、右上候補B0は、場所(P0x+1,P0y-1)に存在し得る。本開示の全体を精査することで当業者に明白であるように、他の場所が可能である。
図3は、第1の領域S0の最も左上のルマ場所を含むルマ場所を示す注釈を伴う
図2を例証する。
【0033】
いくつかの実装では、引き続き
図3を参照すると、領域S0に関する候補リストを構築するとき、幾何学的分割が存在する場合、そのような分割は異なる動き情報を有するフレーム内の領域(またはオブジェクト)を分割するために実施され得るので、いくつかの潜在的候補が、利用不可能として自動的にマーキングされ、候補リストから除去され得る。故に、それらの候補と関連付けられるブロックは異なる動きを有する別のオブジェクトを表す可能性が高いと推測され得、したがって、これらの候補は、利用不可能として自動的にマーキングされ得る(例えば、さらに考慮されない、候補リストから除去される等)。上記に
図2を参照して例証される例では、領域S0に関して、領域S0が左下候補A0に位置するブロックと動き情報を共有しない可能性が高くあり得るため、左下候補A0は、利用不可能として自動的にマーキングされ得る。同様に、領域S0に関して、領域S0が右上候補B0に位置するブロックと動き情報を共有しない可能性が高いので、右上候補B0は、利用不可能として自動的にマーキングされ得る。いくつかの実装では、線セグメントP0P1(または点P0、P1)を査定することによって、例えば、線セグメントP0P1の傾きを決定し、線セグメントを左下候補A0ブロックおよび/または右上候補B0ブロック内へ伸ばし、左下候補A0および/または右上候補B0が伸ばされた線セグメントの第1の領域S0と同一の側に存在するかどうかを決定することによって、左下候補A0および/または右上候補B0が動き情報を共有する可能性が高いかどうかが、決定され得る。
【0034】
図4は、幾何学的分割に従って分割されたある例示的カレントブロック400の第2の領域(領域S1)に関する潜在的空間動きベクトル候補の非限定的な例示的位置を例証する略図である。潜在的空間動きベクトル候補は、AMVPモードまたはマージモード中に動きベクトル候補リストを構築するために考慮され得る。カレントブロック400が、それぞれ、点P0と点P1との間、および点P2と点P3との間の直線によって、3つの領域S0、S1、およびS2に分割され得る。領域S0、領域S1、および領域S2の各々は、一方向性または双方向性で予測され得る。第2の領域(領域S1)に関する空間的候補の非限定的な例が、
図4に例証され、左下候補A0、左候補A1、左上候補B2、上候補B1、および右上候補B0を含む。
【0035】
例証されるように、引き続き
図4を参照すると、各場所(A0、A1、B2、B1、およびB0)は、それぞれの場所におけるブロックを表し得る。例えば、左上候補B2は、領域S1の最も左上の場所のすぐ左かつ真上にあるルマ場所に存在するブロックであり得、例えば、S1の左上角のルマ場所がルマ場所座標(P0x+1,P0y)を有するP0に隣接する場合、左上候補B2は、場所(P0x,P0y-1)に存在し得る。左下候補A0は、第3の領域(領域S2)の最も左下の場所の真下に位置し、例えば、第3の領域(領域S2)の最も左下の場所が(0,N-1)に位置する場合、左下候補A0は、場所(0,N)に存在し得る。左候補A1は、第3の領域(領域S2)の最も左下の場所のすぐ左に位置し得、例えば、左候補A1は、場所(0,N-1)に存在し得る。上候補B1は、領域S1の最も右上の場所の真上に位置し得、例えば、領域S1の最も右上の場所が(M-1,0)に位置する場合、B1は、場所(M-1,-1)に存在し得る。右上候補B0は、領域S1の最も右上の場所の真上かつ右に位置し得、例えば、右上候補B0は、場所(M,-1)に存在し得る。
図5は、第3の領域S2の最も左下のルマ場所と、第2の領域S1の最も右上のルマ場所とを含むルマ場所を示す注釈を伴う
図4を例証する。
【0036】
いくつかの実装では、引き続き
図5を参照すると、領域S1に関する候補リストを構築するとき、幾何学的分割が存在する場合、そのような分割は、異なる動き情報を有するフレーム内の領域(またはオブジェクト)を分割するために実施され得るので、いくつかの潜在的候補は、利用不可能として自動的にマーキングされ、候補リストから除去され得る。故に、それらの候補と関連付けられるブロックは異なる動きを有する別のオブジェクトを表す可能性が高いと推測され得、したがって、これらの候補は、利用不可能として自動的にマーキングされ得る(例えば、さらに考慮されない、候補リストから除去される等)。上記で
図4を参照して例証される非限定的な例では、領域S1に関して、領域S1が左上候補B2に位置するブロックと動き情報を共有しない可能性が高くあり得るので、左上候補B2は、利用不可能として自動的にマーキングされ得る。同様に、いくつかの実装では、領域S1に関して、領域S1が第3の領域S2であり得る左候補A1に位置するブロックと動き情報を共有しない可能性が高くあり得るので、左候補A1は、利用不可能として自動的にマーキングされ得る。同様に、いくつかの実装では、領域S1に関して、領域S1が第3の領域S2の下方にあり得る左下候補A0に位置するブロックと動き情報を共有しない可能性が高いので、左下候補A0は、利用不可能として自動的にマーキングされ得る。
【0037】
図6は、幾何学的分割に従って分割されたある例示的カレントブロック600の第3の領域(領域S2)に関する潜在的空間動きベクトル候補の例示的位置を例証する略図である。潜在的空間動きベクトル候補は、AMVPモードまたはマージモード中に動きベクトル候補リストを構築するために考慮され得る。カレントブロック600は、それぞれ、点P0と点P1との間、および点P2とP3との間の直線によって、3つの領域S0、S1、ならびにS2に分割され得る。領域S0、領域S1、および領域S2の各々は、一方向性または双方向性で予測され得る。第3の領域(領域S2)に関する空間的候補の非限定的な例が、
図6に例証され、左下候補A0、左候補A1、左上候補B2、上候補B1、および右上候補B0を含み得る。
【0038】
例証されるように、引き続き
図6を参照すると、各場所(A0、A1、B2、B1、およびB0)は、それぞれの場所におけるブロックを表し得る。例えば、左上候補は、領域S2の上方かつ左にあるルマ場所に存在するブロックであり得、例えば、左上候補B2は、第1の領域S0であり得る。S0が(0,0)に位置する場合、左上候補B2は、(0,0)に位置し得る。左下候補A0は、領域S2の最も左下の場所のすぐ左かつ真下に位置し得、例えば、領域S2の最も左下の場所が(0,N-1)に位置する場合、左下候補A0は、(-1,N)に存在し得る。左候補A1は、領域S2の最も左下の場所のすぐ左に位置し得、例えば、左候補A1は、(-1,N-1)に存在し得る。上候補B1は、領域S2の上方かつ左に位置し得、点P1に隣接し得、例えば、P1が(P1x,P1y)に位置する場合、上候補B1は、(P1x-1,P1y)に位置し得る。右上候補B0は、領域S2の上方かつ右にあるルマ場所に存在するブロックであり得、例えば、右上候補B0は、第2の領域S1であり得る。例えば、右上候補は、(M-1,0)に存在し得るS1の最も右上の場所に位置し得る。
図7は、第3の領域S2の最も左下のルマ場所と、第2の領域S1の最も右上のルマ場所とを含むルマ場所を示す注釈を伴う
図6を例証する。
【0039】
いくつかの実装では、引き続き
図7を参照すると、領域S2に関する候補リストを構築するとき、幾何学的分割が存在する場合、そのような分割は、異なる動き情報を有するフレーム内の領域(またはオブジェクト)を分割するために実施され得るので、いくつかの潜在的候補は、利用不可能として自動的にマーキングされ、候補リストから除去され得る。故に、それらの候補と関連付けられるブロックは異なる動きを有する別のオブジェクトを表す可能性が高いと推測され得、したがって、これらの候補は、利用不可能として自動的にマーキングされ得る(例えば、さらに考慮されない、候補リストから除去される等)。
図6において上記で提供される非限定的な例では、領域S2に関して、領域S2が左上候補B2(例えば、S0)に位置するブロックと動き情報を共有しない可能性が高いので、左上候補B2は、利用不可能として自動的にマーキングされ得る。同様に、いくつかの実装では、領域S2に関して、領域S2が第2の領域S1であり得る左候補B0に位置するブロックと動き情報を共有しない可能性が高いので、右上候補A0は、利用不可能として自動的にマーキングされ得る。同様に、いくつかの実装では、領域S2に関して、領域S2が第1の領域S0の左にある上候補B1に位置するブロックと動き情報を共有しない可能性が高いので、上候補B1は、利用不可能として自動的にマーキングされ得る。
【0040】
図8は、適応的な数の領域を伴う幾何学的分割を用いたインター予測を使用してビデオをエンコードすることが可能なある例示的ビデオエンコーダ800を例証するシステムブロック図である。例示的ビデオエンコーダ800は、入力ビデオ805を受信し、入力ビデオ805は、最初に、ツリー構造化マクロブロック分割スキーム(例えば、クアッドツリープラスバイナリツリー)等の処理スキームに従って、セグメント化されるかまたは分けられ得る。ツリー構造化マクロブロック分割スキームのある例は、ピクチャフレームをコーディングツリーユニット(CTU)と呼ばれる大きいブロック要素に分割することを含み得る。いくつかの実装では、各CTUは、コーディングユニット(CU)と呼ばれるいくつかのサブブロックに1回以上さらに分割され得る。この分割の最終結果は、予測ユニット(PU)と呼ばれ得るサブブロックの群を含み得る。変換ユニット(TU)もまた、利用され得る。そのような分割スキームは、本主題のいくつかの側面に従って適応的な数の領域を伴う幾何学的分割を実施することを含み得る。
【0041】
引き続き
図8を参照すると、例示的ビデオエンコーダ800は、イントラ予測プロセッサ815と、AMVPモードおよびマージモードを含む適応的な数の領域を伴う幾何学的分割を支援することが可能な動き推定/補償プロセッサ820(インター予測プロセッサとも称される)と、変換/量子化プロセッサ825と、逆量子化/逆変換プロセッサ830と、ループ内フィルタ835と、デコード済ピクチャバッファ840と、エントロピーコーディングプロセッサ845とを含み得る。いくつかの実装では、動き推定/補償プロセッサ820は、AMVPモードおよびマージモードの使用を含む適応的な数の領域を伴う幾何学的分割を実施し得る。幾何学的分割モード、AMVPモード、およびマージモードを信号伝達するビットストリームパラメータが、出力ビットストリーム850内での包含のために、エントロピーコーディングプロセッサ845に入力され得る。
【0042】
動作時、引き続き
図8を参照すると、入力ビデオ805のフレームのブロック毎に、イントラピクチャ予測を介して、または動き推定/補償を使用して、ブロックを処理すべきかどうかが、決定され得る。ブロックは、イントラ予測プロセッサ810または動き推定/補償プロセッサ820に提供され得る。ブロックがイントラ予測を介して処理されるべきである場合、イントラ予測プロセッサ810は、処理を実施し、予測子を出力し得る。ブロックが、動き推定/補償を介して処理されるべきである場合、動き推定/補償プロセッサ820は、AMVPモードおよびマージモードを用いた幾何学的分割の使用を含む処理を実施し、予測子を出力し得る。
【0043】
継続して
図8を参照すると、残差が、入力ビデオから予測子を減算することによって形成され得る。残差は、変換/量子化プロセッサ825によって受信され得、これは、変換処理(例えば、離散コサイン変換(DCT))を実施して係数を生成し得、係数は、量子化され得る。量子化された係数および任意の関連付けられる信号伝達情報が、エントロピーエンコーディングおよび出力ビットストリーム850内での包含のために、エントロピーコーディングプロセッサ845に提供され得る。エントロピーエンコーディングプロセッサ845は、幾何学的分割モード、AMVPモード、およびマージモードに関連する信号伝達情報のエンコーディングを支援し得る。加えて、量子化された係数は、逆量子化/逆変換プロセッサ830に提供され得、逆量子化/逆変換プロセッサ830は、ピクセルを再現し得、ピクセルは、予測子と組み合わせられ、ループ内フィルタ835によって処理され得、その出力は、幾何学的分割モード、AMVPモード、およびマージモードを支援することが可能である動き推定/補償プロセッサ820による使用のために、デコード済ピクチャバッファ840内に記憶され得る。
【0044】
図9は、圧縮効率を増加させながらエンコーディング複雑性を低減させ得る本主題のいくつかの側面による幾何学的分割インター予測を用いてビデオをエンコードするある例示的プロセス300を例証するプロセスフロー図である。ステップ910において、ビデオフレームが、例えば、ピクチャフレームをCTUおよびCUに分割することを含み得るツリー構造化マクロブロック分割スキームを使用して、初期ブロックセグメント化を受け得る。ステップ920において、ブロックが、適応的な数の領域を伴う幾何学的分割のために選択され得る。選択は、ブロックが幾何学的分割モードに従って処理されるべきであることをメトリックルールに従って識別することを含み得る。
【0045】
ステップ930において、引き続き
図9を参照すると、3つ以上の領域を伴う幾何学的分割が、決定され得る。それぞれの領域の各々の中のピクセル(例えば、ルマサンプル)が、同様の動きを有し、他の領域(例えば、領域1)内のピクセルの動きと異なり得るように、それらのフレーム間の動きに従ってブロック内に含有されるピクセルを3つ以上の領域(例えば、領域0、領域1、および領域2)に分離する少なくとも2つの線セグメントが、決定され得る。
【0046】
ステップ940において、継続して
図9を参照すると、各領域の動き情報が、AMVPモードまたはマージモードを使用して決定および処理され得る。AMVPモードを使用して領域を処理するとき、候補リストが、上記に説明される空間的候補を含み得る空間的候補および時間的候補の両方を考慮することによって構築され得、これは、利用不可能としていくつかの候補をマーキングすることを含み得る。動きベクトルが、動きベクトル予測として動きベクトル候補のリストから選択され得、動きベクトル差(例えば、残差)が、算出され得る。候補リストへのインデックスが、決定され得る。マージモードでは、候補リストが、上記に説明されるような空間的候補を含み得る空間的候補および時間的候補の両方を考慮することによって構築され得、これは、利用不可能としていくつかの候補をマーキングすることを含み得る。動きベクトルは、領域が別のブロックの動き情報を採用するために、動きベクトル候補のリストから選択され得る。候補リストへのインデックスが、決定され得る。
【0047】
ステップ950において、引き続き
図9を参照すると、決定された幾何学的分割および動き情報が、ビットストリーム内で信号伝達され得る。ビットストリーム内で幾何学的分割を信号伝達することは、例えば、P0、P1、P2、P3の場所、1つ以上の所定のテンプレートへのインデックス、および同等物を含めることを含み得る。AMVPを使用して領域を処理するときの動き情報の信号伝達は、ビットストリーム内に動きベクトル差(例えば、残差)および動きベクトル候補へのインデックスを含めることを含み得る。マージモードを使用して領域を処理するときの動き情報を信号伝達することは、ビットストリーム内に動きベクトル候補へのインデックスを含めることを含み得る。
【0048】
図10は、ビデオエンコーディングおよびデコーディングに関する複雑性および処理性能を改良し得る、インター予測および適応的な数の領域を伴う幾何学的分割を使用してビットストリーム1070をデコードすることが可能なある例示的デコーダ1000を例証するシステムブロック図である。デコーダ1000は、エントロピーデコーダプロセッサ1010と、逆量子化および逆変換プロセッサ1020と、デブロッキングフィルタ1030と、フレームバッファ1040と、動き補償プロセッサ1050と、イントラ予測プロセッサ1060とを含み得る。いくつかの実装では、ビットストリーム1070は、幾何学的分割モード、AMVPモード、および/またはマージモードを信号伝達するパラメータを含み得る。動き補償プロセッサ1050は、本明細書に説明されるような幾何学的分割を使用してピクセル情報を再構築し得る。
【0049】
動作時、引き続き
図10を参照すると、ビットストリーム1070が、デコーダ1000によって受信され、エントロピーデコーダプロセッサ1010に入力され得、エントロピーデコーダプロセッサ1010は、ビットストリームを量子化された係数にエントロピーデコードし得る。量子化された係数は、逆量子化および逆変換プロセッサ1020に提供され得、逆量子化および逆変換プロセッサ1020は、逆量子化および逆変換を実施し、残差信号を作成し得る。残差信号は、処理モードに従って、動き補償プロセッサ1050またはイントラ予測プロセッサ1060の出力に追加され得る。動き補償プロセッサ1050およびイントラ予測プロセッサ1060の出力は、以前にデコードされたブロックに基づくブロック予測を含み得る。予測および残差の合計が、デブロッキングフィルタ1030によって処理され、フレームバッファ1040内に記憶され得る。所与のブロック(例えば、CUまたはPU)に関して、ビットストリーム1070が、分割モードが幾何学的分割であることを信号伝達するとき、動き補償プロセッサ1050は、本明細書に説明される幾何学的分割アプローチに基づいて、予測を構築し得る。
【0050】
図11は、ビデオエンコーディングおよびデコーディングに関する複雑性および処理性能を改良し得る、適応的な数の領域を伴う幾何学的分割におけるインター予測を使用してビットストリームをデコードするある例示的プロセス1100を例証するプロセスフロー図である。ステップ1110において、カレントブロック(例えば、CTU、CU、PU)を含み得るビットストリームが、受信される。受信することは、ビットストリームからカレントブロックおよび関連付けられる信号伝達情報を抽出および/または解析することを含み得る。デコーダは、幾何学的分割を特徴付ける1つ以上のパラメータを抽出または決定し得る。これらのパラメータは、例えば、線セグメント(例えば、P0、P1、P2、P3)の始点および終点のインデックスを含み得る。抽出または決定は、ビットストリームからパラメータを識別し、読み出すこと(例えば、ビットストリームを解析すること)を含み得る。
【0051】
ステップ1120において、引き続き
図11を参照すると、カレントブロックの第1の領域、第2の領域、および第3の領域が、幾何学的分割モードに従って決定され得る。決定することは、幾何学的分割モードがカレントブロックに関して有効化される(例えば、真である)かどうかを決定することを含むことができる。幾何学的分割モードが有効化されない(例えば、偽である)場合、デコーダは、代替分割モードを使用してブロックを処理し得る。幾何学的分割モードが有効化される(例えば、真である)場合、3つ以上の領域が、決定および/または処理され得る。
【0052】
ステップ1130において、引き続き
図11を参照すると、第1の領域、第2の領域、および第3の領域のうちのある領域と関連付けられる動きベクトルが、決定され得る。動きベクトルを決定することは、領域の動き情報がAMVPモードを使用して決定されるべきであるか、またはマージモードを使用して決定されるべきであるかを決定することを含み得る。AMVPモードを使用して領域を処理するとき、候補リストが、上記に説明される空間的候補を含み得る空間的候補および時間的候補の両方を考慮することによって構築され得、これは、利用不可能としていくつかの候補をマーキングすることを含み得る。動きベクトルが、動きベクトル予測として動きベクトル候補のリストから選択され得、動きベクトル差(例えば、残差)が算出され得る。マージモードでは、決定することは、領域毎に空間的候補および時間的候補の候補リストを構築することを含み得る。候補リストを構築することは、利用不可能として候補を自動的にマーキングし、候補リストから利用不可能な候補を除去することを含み得る。構築された候補リストへのインデックスが、ビットストリームから解析され、候補リストから最終候補を選択するために使用され得る。カレント領域に関する動き情報が、最終候補の動き情報と同一であると決定されることができる(例えば、領域に関する動きベクトルは、最終候補から採用されることができる)。
【0053】
引き続き
図11を参照すると、ステップ1140において、カレントブロックが、決定された動きベクトルを使用してデコードされ得る。
【0054】
いくつかの変形例が、上記に詳細に説明されたが、他の修正または追加が可能である。例えば、幾何学的分割は、エンコーダにおけるレート歪み決定に基づいて、ビットストリーム内で信号伝達され得る。コーディングは、通常の所定の分割(例えば、テンプレート)、分割の時間的予測および空間的予測、ならびに/または付加的オフセットの組み合わせに基づき得る。各々の幾何学的に分割された領域は、動き補償された予測またはイントラ予測を利用し得る。予測された領域の境界は、残差が追加される前に平滑化され得る。
【0055】
いくつかの実装では、クアッドツリープラスバイナリディシジョンツリー(QTBT)が、実装され得る。QTBTでは、コーディングツリーユニットレベルにおいて、QTBTの分割パラメータが、いかなるオーバーヘッドも伝送することなく、局所的特性に適合するように動的に導出され得る。続けて、コーディングユニットレベルにおいて、ジョイント分類器ディシジョンツリー構造が、不必要な反復を排除し、誤った予測のリスクを制御し得る。いくつかの実装では、適応的な数の領域を伴う幾何学的分割は、QTBTの全てのリーフノードにおいて利用可能な付加的分割オプションとして利用可能であり得る。
【0056】
いくつかの実装では、デコーダは、分割プロセッサを含み、分割プロセッサは、カレントブロックに関する幾何学的分割を発生させ、従属するプロセスに関する全ての分割関連情報を提供し得る。動き補償は、ブロックが幾何学的に分割される場合にセグメント毎に実施され得るので、分割プロセッサは、動き補償に直接影響を及ぼし得る。さらに、分割プロセッサは、形状情報をイントラ予測プロセッサおよび変換コーディングプロセッサに提供し得る。
【0057】
いくつかの実装では、付加的シンタックス要素が、ビットストリームの異なる階層レベルにおいて信号伝達され得る。シーケンス全体に関して適応的な数の領域を伴う幾何学的分割を有効化するために、有効化フラグが、シーケンスパラメータセット(SPS)においてコーディングされ得る。さらに、任意のコーディングユニット(CU)が適応的な数の領域を伴う幾何学的分割を使用するかどうかを示すために、CTUフラグが、コーディングツリーユニット(CTU)レベルにおいてコーディングされることができる。カレントコーディングユニットが適応的な数の領域を伴う幾何学的分割を利用するかどうかを示すために、CUフラグがコーディングされることができる。ブロック上の線セグメントを規定するパラメータが、コーディングされ得る。領域毎に、カレント領域がインター予測されるかまたはイントラ予測されるかを規定し得るフラグが、デコードされ得る。
【0058】
いくつかの実装では、最小領域サイズが、規定されることができる。
【0059】
本明細書に説明される主題は、多くの技術的利点を提供する。例えば、本主題のいくつかの実装は、圧縮効率を増加させながら複雑性を低減させるブロックの分割を提供することができる。いくつかの実装では、オブジェクト境界におけるブロッキングアーチファクトが、低減させられることができる。
【0060】
本明細書に説明される側面および実施形態のうちの任意の1つ以上のものが、コンピュータ技術分野の当業者に明白であるように、本明細書の教示に従ってプログラムされた1つ以上の機械(例えば、電子ドキュメントのためのユーザコンピューティングデバイスとして利用される1つ以上のコンピューティングデバイス、ドキュメントサーバ等の1つ以上のサーバデバイス等)において実現および/または実装されるデジタル電子回路、集積回路、専用に設計された特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはそれらの組み合わせを使用して、便宜的に実装され得ることに留意されたい。これらの種々の側面または特徴は、少なくとも1つのプログラム可能なプロセッサを含むプログラム可能なシステム上で実行可能かつ/または解読可能である1つ以上のコンピュータプログラムおよび/またはソフトウェア内での実装を含み得、少なくとも1つのプログラム可能なプロセッサは、専用目的もしくは汎用目的であり得、専用目的もしくは汎用目的であり得、データおよび命令を、ストレージシステム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスから受信し、データおよび命令をそれらに伝送するように結合される。適切なソフトウェアコーディングが、ソフトウェア技術分野の当業者に明白であるように、本開示の教示に基づいて、熟練のプログラマによって容易に準備され得る。ソフトウェアおよび/またはソフトウェアモジュールを採用する上記に議論される側面および実装もまた、ソフトウェアおよび/またはソフトウェアモジュールの機械実行可能命令の実装を補助するために適切なハードウェアを含み得る。
【0061】
そのようなソフトウェアは、機械可読記憶媒体を採用するコンピュータプログラム製品であり得る。機械可読記憶媒体は、機械(例えば、コンピューティングデバイス)による実行のための命令のシーケンスを記憶および/またはエンコードすることが可能であり、かつ機械に本明細書に説明される方法および/または実施形態の任意の1つを実施させる任意の媒体であり得る。機械可読記憶媒体の例は、限定ではないが、磁気ディスク、光ディスク(例えば、CD、CD-R、DVD、DVD-R等)、光磁気ディスク、読取専用メモリ「ROM」デバイス、ランダムアクセスメモリ「RAM」デバイス、磁気カード、光学カード、ソリッドステートメモリデバイス、EPROM、EEPROM、プログラマブル論理デバイス(PLD)、および/またはそれらの任意の組み合わせを含む。機械可読媒体は、本明細書で使用される場合、単一の媒体、ならびに、例えばコンピュータメモリとの組み合わされたコンパクトディスクもしくは1つ以上のハードディスクドライブの集合等の物理的に分離した媒体の集合を含むように意図されている。本明細書で使用される場合、機械可読記憶媒体は、信号伝送の一過性形態を含まない。
【0062】
そのようなソフトウェアはまた、搬送波等のデータキャリア上のデータ信号として搬送される情報(例えば、データ)を含み得る。例えば、機械実行可能情報は、信号が機械(例えば、コンピューティングデバイス)による実行のために命令のシーケンスまたはその一部をエンコードするデータキャリアにおいて具現化されるデータ搬送信号、ならびに機械に本明細書に説明される方法および/または実施形態の任意の1つを実施させる任意の関連する情報(例えば、データ構造およびデータ)として含まれ得る。
【0063】
コンピューティングデバイスの例は、限定ではないが、電子書籍読書デバイス、コンピュータワークステーション、端末コンピュータ、サーバコンピュータ、ハンドヘルドデバイス(例えば、タブレット型コンピュータ、スマートフォン等)、ウェブ装置、ネットワークルータ、ネットワークスイッチ、ネットワークブリッジ、機械よってとられるべきアクションを規定する命令のシーケンスを実行することが可能である任意の機械、およびそれらの任意の組み合わせを含む。一例では、コンピューティングデバイスは、キオスクを含み、かつ/またはその中に含まれ得る。
【0064】
図12は、コントロールシステムに本開示の側面および/または方法のうちの任意の1つ以上のものを実施させるための命令のセットが実行され得るコンピュータシステム1200の例示的形態としてのコンピューティングデバイスの一実施形態の図式表現を示す。複数のコンピューティングデバイスが、デバイスのうちの1つ以上に、本開示の側面および/または方法のうちの任意の1つ以上を実施させるために専用に構成された命令のセットを実装するために利用され得ることも、考えられる。コンピュータシステム1200は、プロセッサ1204と、メモリ1208とを含み、プロセッサ1204およびメモリ1208は、バス1212を介して相互に、および他の構成要素と通信する。バス1212は、限定ではないが、種々のバスアーキテクチャのうちのいずれかを使用するメモリバス、メモリコントローラ、周辺バス、ローカルバス、およびそれらの任意の組み合わせを含むいくつかのタイプのバス構造のうちのいずれかを含み得る。
【0065】
メモリ1208は、限定ではないが、ランダムアクセスメモリ構成要素、読取専用構成要素、およびそれらの任意の組み合わせを含む種々の構成要素(例えば、機械可読媒体)を含み得る。一例では、起動中等にコンピュータシステム1200内の要素間で情報を転送することに役立つ基本ルーチンを含む基本入力/出力システム1216(BIOS)が、メモリ1208の中に記憶され得る。メモリ1208はまた、本開示の側面および/または方法のうちの任意の1つ以上を具現化する命令(例えば、ソフトウェア)1220を含み得る(例えば、1つ以上の機械可読媒体上に記憶されている)。別の例では、メモリ1208はさらに、限定ではないが、オペレーティングシステム、1つ以上のアプリケーションプログラム、他のプログラムモジュール、プログラムデータ、およびそれらの任意の組み合わせを含む任意の数のプログラムモジュールを含み得る。
【0066】
コンピュータシステム1200はまた、記憶デバイス1224を含み得る。記憶デバイス(例えば、記憶デバイス1224)の例は、限定ではないが、ハードディスクドライブ、磁気ディスクドライブ、光学媒体と組み合わせられた光ディスクドライブ、ソリッドステートメモリデバイス、およびそれらの任意の組み合わせを含む。記憶デバイス1224は、適切なインターフェース(図示せず)によってバス1212に接続され得る。例示的インターフェースは、限定ではないが、SCSI、アドバンスト・テクノロジー・アタッチメント(ATA)、シリアルATA、ユニバーサルシリアルバス(USB)、IEEE1394(FIREWIRE(登録商標))、およびそれらの任意の組み合わせを含む。一例では、記憶デバイス1224(または1つ以上のその構成要素)は、(例えば、外部ポートコネクタ(図示せず)を介して)コンピュータシステム1200と除去可能にインターフェース接続され得る。特に、記憶デバイス1224および関連付けられた機械可読媒体1228は、コンピュータシステム1200のための機械可読命令、データ構造、プログラムモジュール、ならびに/または、他のデータの不揮発性記憶装置および/または揮発性記憶装置を提供し得る。一例では、ソフトウェア1220は、完全に、または部分的に、機械可読媒体1228内に常駐し得る。別の例では、ソフトウェア1220は、完全に、または部分的に、プロセッサ1204内に常駐し得る。
【0067】
コンピュータシステム1200はまた、入力デバイス1232を含み得る。一例では、コンピュータシステム1200のユーザは、入力デバイス1232を介してコンピュータシステム1200内にコマンドおよび/または他の情報を打ち込み得る。入力デバイス1232の例は、限定ではないが、英数字入力デバイス(例えば、キーボード)、ポインティングデバイス、ジョイスティック、ゲームパッド、オーディオ入力デバイス(例えば、マイクロホン、音声応答システム等)、カーソル制御デバイス(例えば、マウス)、タッチパッド、光学スキャナ、ビデオ捕捉デバイス(例えば、静止カメラ、ビデオカメラ)、タッチスクリーン、およびそれらの任意の組み合わせを含む。入力デバイス1232は、限定ではないが、シリアルインターフェース、パラレルインターフェース、ゲームポート、USBインターフェース、FIREWIRE(登録商標)インターフェース、バス1212への直接的インターフェース、およびそれらの任意の組み合わせを含む種々のインターフェース(図示せず)のうちのいずれかを介して、バス1212にインターフェース接続され得る。入力デバイス1232は、タッチスクリーンインターフェースを含み得、タッチスクリーンインターフェースは、さらに下記に議論されるディスプレイ1236の一部であるか、またはそれと別個であり得る。入力デバイス1232は、上記に説明されるようなグラフィカルインターフェースにおいて1つ以上のグラフィック表現を選択するためのユーザ選択デバイスとして利用され得る。
【0068】
ユーザはまた、記憶デバイス1224(例えば、リムーバブルディスクドライブ、フラッシュドライブ等)および/またはネットワークインターフェースデバイス1240を介してコマンドおよび/または他の情報をコンピュータシステム1200に入力し得る。ネットワークインターフェースデバイス1240等のネットワークインターフェースデバイスは、ネットワーク1244等の種々のネットワークのうちの1つ以上、およびそれに接続される1つ以上の遠隔デバイス1248にコンピュータシステム1200を接続するために利用され得る。ネットワークインターフェースデバイスの例は、限定ではないが、ネットワークインターフェースカード(例えば、モバイルネットワークインターフェースカード、LANカード)、モデム、およびそれらの任意の組み合わせを含む。ネットワークの例は、限定ではないが、ワイドエリアネットワーク(例えば、インターネット、企業ネットワーク)、ローカルエリアネットワーク(例えば、オフィス、建物、キャンパス、または他の比較的小さい地理的空間に関連付けられたネットワーク)、電話ネットワーク、電話/音声プロバイダと関連付けられたデータネットワーク(例えば、モバイル通信プロバイダのデータおよび/または音声ネットワーク)、2つのコンピューティングデバイス間の直接的接続、ならびにそれらの任意の組み合わせを含む。ネットワーク1244等のネットワークは、有線モードおよび/または無線のモードの通信を採用し得る。概して、任意のネットワークトポロジが使用され得る。情報(例えば、データ、ソフトウェア1220等)が、ネットワークインターフェースデバイス1240を介して、コンピュータシステム1200に、および/またはコンピュータシステム1200から通信され得る。
【0069】
コンピュータシステム1200はさらに、ディスプレイデバイス1236等のディスプレイデバイスに表示可能な画像を通信するためのビデオディスプレイアダプタ1252を含み得る。ディスプレイデバイスの例は、限定ではないが、液晶ディスプレイ(LCD)、陰極線管(CRT)、プラズマディスプレイ、発光ダイオード(LED)ディスプレイ、およびそれらの任意の組み合わせを含む。ディスプレイアダプタ1252およびディスプレイデバイス1236は、本開示の側面のグラフィック表現を提供するためにプロセッサ1204と組み合わせて利用され得る。ディスプレイデバイスに加えて、コンピュータシステム1200は、限定ではないが、オーディオスピーカ、プリンタ、およびそれらの任意の組み合わせを含む1つ以上の他の周辺出力デバイスを含み得る。そのような周辺出力デバイスは、周辺インターフェース1256を介してバス1212に接続され得る。周辺インターフェースの例は、限定ではないが、シリアルポート、USB接続、FIREWIRE(登録商標)接続、パラレル接続、およびそれらの任意の組み合わせを含む。
【0070】
前述は、本発明の例証的実施形態の詳細な説明である。種々の修正および追加が、本発明の精神および範囲から逸脱することなく成され得る。上記に説明される種々の実施形態の各々の特徴が、関連付けられた新しい実施形態において複数の特徴の組み合わせを提供するために、適宜、他の説明される実施形態の特徴と組み合わせられ得る。さらに、前述は、いくつかの別個の実施形態を説明するが、本明細書に説明されているものは、本発明の原理の適用を例証するにすぎない。加えて、本明細書における特定の方法は、具体的な順序で実施されるものとして例証および/または説明され得るが、順序は、本明細書に開示されるような実施形態を達成するために、通常の技術内で大いに変更可能である。故に、本説明は、例としてのみ捉えられることを意図されており、別様に本発明の範囲を限定するようには意図されていない。
【0071】
上記の説明において、および請求項において、「~のうちの少なくとも1つ」または「~のうちの1つ以上」等の語句が生じ、要素または特徴の接続的列挙が後に続き得る。用語「および/または」もまた、2つ以上の要素または特徴の列挙内に生じ得る。そのような語句が使用される文脈によって別様に暗示的または明示的に否定されない限り、これは、個々に列挙される要素もしくは特徴のいずれか、または他の記載される要素もしくは特徴のいずれかと組み合わせて記載される要素もしくは特徴のいずれかを意味することが意図されている。例えば、語句「AおよびBのうちの少なくとも一方」、「AおよびBのうちの1つ以上」、ならびに「Aおよび/またはB」は、各々、「Aのみ、Bのみ、またはAおよびBともに」を意味することが意図されている。同様の解釈が、3つ以上のアイテムを含む列挙に関しても意図されている。例えば、語句「A、B、およびCのうちの少なくとも1つ」、「A、B、およびCのうちの1つ以上」、ならびに「A、B、および/またはC」は、各々、「Aのみ、Bのみ、Cのみ、AおよびBともに、AおよびCともに、BおよびCともに、またはAおよびBおよびCともに」を意味することが意図されている。加えて、上記および請求項内での用語「~に基づいて」の使用は、記載されていない特徴または要素も許容可能であるように、「少なくとも、~に基づいて」を意味することが意図されている。
【0072】
本明細書に説明される主題は、所望の構成に応じて、システム、装置、方法、および/または物品として具現化されることができる。前述の説明に記載される実装は、本明細書に説明される主題と一貫した全実装を表すわけではない。代わりに、それらは、単に説明される主題に関連する側面と一貫するいくつかの例にすぎない。いくつかの変更が、上記で詳細に説明されているが、他の修正または追加も、可能である。特に、さらなる特徴および/または変更が、本明細書に記載されるものに加えて提供され得る。例えば、上記で説明される実装は、開示される特徴の種々の組み合わせおよび副次的組み合わせおよび/または上記に開示されるいくつかのさらなる特徴の組み合わせおよび副次的組み合わせを対象とし得る。加えて、付随の図に描写され、かつ/または本明細書に説明される論理フローは、望ましい結果を達成するために、必ずしも、示される特定の順序または連続的順序を要求しない。他の実装も、以下の請求項の範囲内にあり得る。