特許第5666293号(P5666293)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ トムソン ライセンシングの特許一覧

特許5666293ビデオ・エンコーディング、およびデコーディングのためのスキップ/ダイレクトモードのコンテクストに依存するマージのための方法と装置
<>
  • 特許5666293-ビデオ・エンコーディング、およびデコーディングのためのスキップ/ダイレクトモードのコンテクストに依存するマージのための方法と装置 図000002
  • 特許5666293-ビデオ・エンコーディング、およびデコーディングのためのスキップ/ダイレクトモードのコンテクストに依存するマージのための方法と装置 図000003
  • 特許5666293-ビデオ・エンコーディング、およびデコーディングのためのスキップ/ダイレクトモードのコンテクストに依存するマージのための方法と装置 図000004
  • 特許5666293-ビデオ・エンコーディング、およびデコーディングのためのスキップ/ダイレクトモードのコンテクストに依存するマージのための方法と装置 図000005
  • 特許5666293-ビデオ・エンコーディング、およびデコーディングのためのスキップ/ダイレクトモードのコンテクストに依存するマージのための方法と装置 図000006
  • 特許5666293-ビデオ・エンコーディング、およびデコーディングのためのスキップ/ダイレクトモードのコンテクストに依存するマージのための方法と装置 図000007
  • 特許5666293-ビデオ・エンコーディング、およびデコーディングのためのスキップ/ダイレクトモードのコンテクストに依存するマージのための方法と装置 図000008
  • 特許5666293-ビデオ・エンコーディング、およびデコーディングのためのスキップ/ダイレクトモードのコンテクストに依存するマージのための方法と装置 図000009
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5666293
(24)【登録日】2014年12月19日
(45)【発行日】2015年2月12日
(54)【発明の名称】ビデオ・エンコーディング、およびデコーディングのためのスキップ/ダイレクトモードのコンテクストに依存するマージのための方法と装置
(51)【国際特許分類】
   H04N 19/119 20140101AFI20150122BHJP
   H04N 19/139 20140101ALI20150122BHJP
   H04N 19/46 20140101ALI20150122BHJP
   H04N 19/70 20140101ALI20150122BHJP
【FI】
   H04N19/119
   H04N19/139
   H04N19/46
   H04N19/70
【請求項の数】20
【全頁数】18
(21)【出願番号】特願2010-503047(P2010-503047)
(86)(22)【出願日】2008年4月9日
(65)【公表番号】特表2010-524397(P2010-524397A)
(43)【公表日】2010年7月15日
(86)【国際出願番号】US2008004586
(87)【国際公開番号】WO2008127597
(87)【国際公開日】20081023
【審査請求日】2011年3月14日
(31)【優先権主張番号】60/911,489
(32)【優先日】2007年4月12日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】501263810
【氏名又は名称】トムソン ライセンシング
【氏名又は名称原語表記】Thomson Licensing
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100091214
【弁理士】
【氏名又は名称】大貫 進介
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100159547
【弁理士】
【氏名又は名称】鶴谷 裕二
(72)【発明者】
【氏名】ディヴォラ エスコーダ,オスカー
(72)【発明者】
【氏名】イン,ペン
【審査官】 川崎 優
(56)【参考文献】
【文献】 De Forni,R., et al,On the Benefits of Leaf Merging in Quad-Tree Motion Models,Proc. of Int. Conf. on Image Processing,米国,IEEE,2005年 9月11日
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00−98
(57)【特許請求の範囲】
【請求項1】
フレームパーティショニングを用いたイメージ領域のパーティションをジョイントコーディングするためのエンコーダを有する装置であって、
前記パーティショニングは、所定の条件でパーティションマージング処理を用いて実行され、前記マージング処理は、明示的なコーディング規則とは異なる別個のマージング規則を使用し、
前記マージング規則を用いて同じ動き情報を共有する少なくとも2つのマージされたパーティションのセグメントにおいて、スキャンの順番において最初のパーティションである特定の一つのパーティションに対して、暗黙的なコーディング規則は無視され、前記明示的なコーディング規則が使われ、前記明示的なコーディング規則は、他のパーティションの動きベクトルを用いるのではなく、明示的に動きを算出して動きベクトルを求める規則である、装置。
【請求項2】
暗黙的なコーディング規則によるコーディングモードを使用する前記パーティションの所与の一つは、さらにもう一つのパーティションがすでに前記パーティションの前記所与の一つとマージされている場合にのみ、前記パーティションの別の一つと前記マージング処理によってマージされる、
請求項1記載の装置。
【請求項3】
マージされ得る前記パーティションは、いずれも、ツリーベースの画像デコンポジションの、少なくともブロックの一つまたはブロックの結合である、
請求項1記載の装置。
【請求項4】
暗黙的なコーディング規則によるコーディングモードは、スキップモード、ダイレクトモード、および方向性イントラデータの暗黙的なコーディングのためのモードのうちの少なくとも一つを含む、
請求項1記載の装置。
【請求項5】
暗黙的なコーディング規則による少なくとも2つのモードをマージする可能性は、高水準構文を使用して使用可能または使用不可能にされる、
請求項1記載の装置。
【請求項6】
フレームパーティショニングを用いたイメージ領域のパーティションをジョイントコーディングするための方法であって、
前記パーティショニングは、所定の条件でパーティションマージング処理を用いて実行され、前記マージング処理は、明示的なコーディング規則とは異なる別個のマージング規則を使用し、
前記マージング規則を用いて同じ動き情報を共有する少なくとも2つのマージされたパーティションのセグメントにおいて、スキャンの順番において最初のパーティションである特定の一つのパーティションに対して、暗黙的なコーディング規則は無視され、前記明示的なコーディング規則が使われ、前記明示的なコーディング規則は、他のパーティションの動きベクトルを用いるのではなく、明示的に動きを算出して動きベクトルを求める規則である、方法。
【請求項7】
暗黙的なコーディング規則によるコーディングモードを使用する前記パーティションの所与の一つは、さらにもう一つのパーティションがすでに前記パーティションの前記所与の一つとマージされている場合にのみ、前記パーティションの別の一つと前記マージング処理によってマージされる、
請求項6記載の方法。
【請求項8】
マージされ得る前記パーティションは、いずれも、ツリーベースの画像デコンポジションの、少なくともブロックの一つまたはブロックの結合である、
請求項6記載の方法。
【請求項9】
暗黙的なコーディング規則によるコーディングモードは、スキップモード、ダイレクトモード、および方向性イントラデータの暗黙的なコーディングのためのモードのうちの少なくとも一つを含む、
請求項6記載の方法。
【請求項10】
暗黙的なコーディング規則による少なくとも2つのモードをマージする可能性は、高水準構文を使用して使用可能または使用不可能にされる、
請求項6記載の方法。
【請求項11】
フレームパーティショニングを用いたイメージ領域のパーティションをジョイントデコーディングするためのデコーダを有する装置であって、
前記パーティショニングは、所定の条件でパーティションマージング処理を用いて実行され、前記マージング処理は、明示的なコーディング規則とは異なる別個のマージング規則を使用し、
前記マージング規則を用いて同じ動き情報を共有する少なくとも2つのマージされたパーティションのセグメントにおいて、スキャンの順番において最初のパーティションである特定の一つのパーティションに対して、暗黙的なコーディング規則は無視され、前記明示的なコーディング規則が使われ、前記明示的なコーディング規則は、他のパーティションの動きベクトルを用いるのではなく、明示的に動きを算出して動きベクトルを求める規則である、装置。
【請求項12】
暗黙的なコーディング規則によるコーディングモードを使用する前記パーティションの所与の一つは、さらにもう一つのパーティションがすでに前記パーティションの前記所与の一つとマージされている場合にのみ、前記パーティションの別の一つと前記マージング処理によってマージされる、
請求項11記載の装置。
【請求項13】
マージすることとなっている前記パーティションは、いずれも、前もって実行されたツリーベースの画像デコンポジションからの、少なくともブロックの一つまたはブロックの結合である、
請求項11記載の装置。
【請求項14】
暗黙的なコーディング規則によるコーディングモードは、スキップモード、ダイレクトモード、および方向性イントラデータの暗黙的なコーディングのためのモードのうちの少なくとも一つを含む、
請求項11記載の装置。
【請求項15】
暗黙的なコーディング規則による少なくとも2つのモードをマージする可能性は、高水準構文を使用して使用可能または使用不可能にされる、
請求項11記載の装置。
【請求項16】
フレームパーティショニングを用いたイメージ領域のパーティションをジョイントデコーディングするための方法であって、
前記パーティショニングは、所定の条件でパーティションマージング処理を用いて実行され、前記マージング処理は、明示的なコーディング規則とは異なる別個のマージング規則を使用し、
前記マージング規則を用いて同じ動き情報を共有する少なくとも2つのマージされたパーティションのセグメントにおいて、スキャンの順番において最初のパーティションである特定の一つのパーティションに対して、暗黙的なコーディング規則は無視され、前記明示的なコーディング規則が使われ、前記明示的なコーディング規則は、他のパーティションの動きベクトルを用いるのではなく、明示的に動きを算出して動きベクトルを求める規則である、方法。
【請求項17】
暗黙的なコーディング規則によるコーディングモードを使用する前記パーティションの所与の一つは、さらにもう一つのパーティションがすでに前記パーティションの前記所与の一つとマージされている場合にのみ、前記パーティションの別の一つと前記マージング処理によってマージされる、
請求項16記載の方法。
【請求項18】
マージされ得る前記パーティションは、いずれも、ツリーベースの画像デコンポジションの、少なくともブロックの一つまたはブロックの結合である、
請求項16記載の方法。
【請求項19】
暗黙的なコーディング規則によるコーディングモードは、スキップモード、ダイレクトモード、および方向性イントラデータの暗黙的なコーディングのためのモードのうちの少なくとも一つを含む、
請求項16記載の方法。
【請求項20】
暗黙的なコーディング規則による少なくとも2つのモードをマージする可能性は、高水準構文を使用して使用可能または使用不可能にされる、
請求項16記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ビデオ・エンコーディング、およびデコーディングに関する。より詳細には、ビデオ・エンコーディング、およびデコーディングのためのスキップ/ダイレクトモードのための状況依存的なマージのための方法と装置に関する。
【背景技術】
【0002】
[関連出願についてのクロスリファレンス]
本出願は、2007年4月12日に出願された、米国仮出願番号60/911,489の利益を主張する。そして、これは完全に本願明細書において引用したものとする。
【0003】
国際標準化機構/国際電気標準会議(ISO/IEC)MPEG−4において、第10部Advanced Video Coding(AVC)標準/国際電気通信連合、Telecommunication Sector(ITU−T)H.264勧告(以下、「MPEG−4AVC標準」という)における、スキップ、およびダイレクトモードは、非常に特殊なモードである。スキップ、およびダイレクトモードは、動きベクトルのいかなるビットも含まない。歪みとビット率との間の適切なトレードオフによって、スキップ、およびダイレクトモードは、低いビット率において最適化される。動きベクトルは、空間および/または時間的な近隣から取得される。スキップモードの場合、残差(residue)は、ゼロにセットされる。したがって、スキップ、およびダイレクトモードは、いかなる余分なサイド情報の伝送なしに、隣接したブロックから動き情報を取得するため、暗黙的な規則を使用する。ブロックマージを有するコード体系において使用するサイド情報は、送られる余分のデータのために、スキップ、およびダイレクトコーディングモードのコーディングペナルティとされる。
【0004】
ツリー構造のビデオデータパーティショニングは、現在の主要ビデオコーディング規格に存在する。
【0005】
ビデオ標準の大部分は、ビデオ信号に従いコーディングモードおよびビデオデータのコーディングに適応させるために、フレームパーティショニングに対し、ツリー構造のビデオデータパーティショニングを使用している。H.261、MPEG−1、およびMPEG−2/H.262は、16×16MBパーティショニングだけをサポートする。MPEG−4スタンダードの単純プロファイル、またはH.263(+)は、16×16MBに対して16×16、および8×8の両方のパーティションをサポートする。MPEG−4AVCスタンダードは、ツリー構造の階層的なマクロブロックパーティションをサポートする。16×16MBは、サイズ16×8、8×16または8×8のマクロブロックパーティションに分けることができ、8×8パーティションは、サブマクロブロックとして知られている。サブマクロブロックは、マクロブロックがサイズ8×4、4×8、および4×4のパーティションに分けられる。図1を参照すると、MPEG−4AVCスタンダードコーディングモードが、参照番号100として一般的に示されている。
【0006】
しかしながら、場合によっては、ビデオデータの単純な4分木パーティショニングは、最高のコーディング効率を達成するのには十分ではない。パーティショニングの処理の間、一部のブロックでは、結局のところ近くに類似したデータが含まれることがある。このようなデータに対し、単一ブロックとしてジョイントしてエンコードすれば、よりよくコーディングされるだろう。しかしながら、これらの隣接したブロックは、ツリー構造のパーティショニングの別の親に対応していることがある。このような場合、結合したコーディングは不可能である。また、たとえばマクロブロックが与えられた場合、総合的にサブブロックの全てでなく、任意のパターンのサブブロックの一部だけをコーディングしたいという場合もある。この種の欠点を克服する従来のアプローチとしては、ツリーデコンポジションの後に葉をマージすることによって隣接したブロックをジョイントコーディングすることが挙げられる。上述の従来技術なアプローチを、MPEG−4AVCスタンダードに適用し、隣接したブロックの動画データのジョイントコーディングすることが提案されている。提案された応用は、どのブロックがジョイントされてコーディングされるかについて示すために、付加的なサイド情報を使用する。このサイド情報は、同じ動き情報をもつセグメントを生成するために、どのブロックがどのブロックにマージされるかを示すものである。図2に移ると、最初のツリーデコンポジションの領域ベースの動き補償およびコーディングの後の可能なマージ規則の例が示されている。図2において、マクロブロック、マクロブロックパーティション、サブマクロブロックおよび/またはサブマクロブロックパーティションの可能なマージが、矢印によってそれぞれ示されている。一実施例において、ブロックが他のブロックにマージされるかどうか指し示すためにマージフラグが用いられる。マージする方向の信号は、現在のブロックがどのブロックにマージされるかを示すために用いられる。本来、MPEG−4AVCスタンダードは、(例えば、スキップまたはダイレクトモード)予測器によってビデオデータ(例えば動き)が直接に得られ、そして、動きに関する情報(およびスキップの残差)がエンコードされない領域の有用なコーディングのための統計的に最適化されているモードを持っているにもかかわらず、上述の従来技術は、これを無視しているという欠点がある。場合によっては、この種のモードでの動きの情報のために導入されるいかなる追加情報も、結果としてコーディング効率の損失を導きかねない。このような例が上述に提案されたマージ情報のケースで起こり得る。見方を変えれば、スキップ、およびダイレクトモードは予測器によって生成される同じ動きを有するスキップ/ダイレクトのブロックの暗黙的なマージ操作と考えてもよい。このため、他の一部のブロックとのジョイントコーディングまたはスキップおよび/またはダイレクトモード内でマージの方向を示す追加のサイド情報は、結果として不必要な冗長性、および速度歪み(RD)効率の損失を導くこととなる。
【発明の概要】
【発明が解決しようとする課題】
【0007】
従来技術のこれらの、そしてまた他の、欠点および不利な点は本願発明の原理によって対処される。そして、本願発明はビデオ・エンコーディング、およびデコーディングのためのスキップ/ダイレクトモードのための状況依存的なマージのための方法と装置を提供することを目指す。
【課題を解決するための手段】
【0008】
本発明の一態様によって、以下の装置が提供される。
【0009】
フレームパーティショニング、およびパーティションマージング処理を用いたイメージ領域のパーティションをジョイントコーディングするためのエンコーダを有する装置であって、
暗黙的なコーディング規則によるコーディングモードを使用する所与の前記パーティションはいずれも、明示的なコーディング規則によるコーディングモードに対して使用されるマージング規則とは異なる別個のマージング規則を使用して、前記パーティションの別の一つとマージされる装置。
【0010】
本願発明の別の態様で、以下の方法が提供される。
【0011】
フレームパーティショニング、およびパーティションマージング処理を用いたイメージ領域のパーティションをジョイントコーディングするための方法であって、
暗黙的なコーディング規則によるコーディングモードを使用する所与の前記パーティションはいずれも、明示的なコーディング規則によるコーディングモードに対して使用されるマージング規則とは異なる別個のマージング規則を使用して、前記パーティションの別の一つとマージされる方法。
【0012】
本願発明のさらにもう一つの態様によれば、以下の装置が提供される。
【0013】
フレームパーティショニング、およびパーティションマージング処理を用いたイメージ領域のパーティションをジョイントデコーディングするためのデコーダを有する装置であって、
暗黙的なコーディング規則によるコーディングモードを使用する所与の前記パーティションはいずれも、明示的なコーディング規則によるコーディングモードに対して使用されるマージング規則とは異なる別個のマージング規則を使用して、前記パーティションの別の一つとマージされる装置。
【0014】
本願発明の他の態様によれば、以下の方法が提供される。
【0015】
フレームパーティショニング、およびパーティションマージング処理を用いたイメージ領域のパーティションをジョイントデコーディングするための方法であって、
暗黙的なコーディング規則によるコーディングモードを使用する所与の前記パーティションはいずれも、明示的なコーディング規則によるコーディングモードに対して使用されるマージング規則とは異なる別個のマージング規則を使用して、前記パーティションの別の一つとマージされる方法。
【0016】
これらの、そしてまた他の態様、特徴、および本発明の効果は以下の例示的な実施例の詳細な説明から明らかになる。そして、それは添付の図面と関連して説明する。
【0017】
本願発明は、以下の例示的な図に従ってよりよく理解される。
【図面の簡単な説明】
【0018】
図1】本願発明が適用され得るMPEG−4AVCスタンダードコーディングモードのためのブロック図である。
図2】従来技術に従って、領域ベースの動き補償、およびコーディングのための最初のツリーデコンポジション段階の後の可能なマージの規則の例示的なスキームを示す図である。
図3】本願発明が適用され得る例示的なエンコーダのブロック図である。
図4】本願発明が適用され得る例示的なデコーダのブロック図である。
図5】本願発明の実施例に従ったマージ可能なスキップモードのビデオエンコーダにおけるマージ処理のための例示的な方法のフローチャートである。
図6】本願発明の実施例に従ったマージ可能なスキップモードのビデオデコーダにおけるマージ処理のための例示的な方法のフローチャートである。
図7】本願発明の実施例に従ったマージ可能なスキップモードのためのコーディングの例示的な方法のためのフローチャートである。
図8】本願発明の実施例に従ったマージ可能なスキップモードのためのデコーディングの例示的な方法のためのフローチャートである。
【発明を実施するための形態】
【0019】
本願発明は、ビデオ・エンコーディング、およびデコーディングのためのスキップ/ダイレクトモードのための状況依存的なマージのための方法と装置を提供することを目的とする。本願明細書において、以下本願発明を例示する。当業者であれば、本願明細書において明示的に記載されまたは示されていない場合であっても、その趣旨および範囲の中に含まれるさまざまな本願発明を実施し、考案することが可能であると理解される。
【0020】
本願明細書において詳述される全ての実施例、および条件つきの語は、説明を目的とし、読者が本願発明および発明者の貢献によって構築されたコンセプトを理解するのを助けることを目的とする。しかも、特にこの種の詳述された実施例および条件に限定されるものと解釈してはならない。
【0021】
さらに、本願発明の原理、態様、および実施例並びにその具体例を詳述した本願明細書における全ての記載は、その構造および機能に関する均等物を含むことを意図している。加えて、このような均等物は、現在知られている均等物および将来開発される均等物をも含む。すなわち、開発された同じ機能を呈するいかなる要素も、その構造を問わず、含まれることとなる。
【0022】
したがって、例えば、本願明細書において示されるブロック図は、本願発明を実施している実例となる回路の概念ビューを表すということが、当業者によって理解される。同様に、いかなるフローチャート、フローダイヤグラム、状態遷移図、擬似コード、などは、この種のコンピュータまたはプロセッサが明示的に示されているか否かにかかわらず、実質的に計算機可読のメディアで表されてもよく、かつコンピュータまたはプロセッサによって実行され得るさまざまな方法を表すことはいうまでもない。
【0023】
図に示されるさまざまな構成要素の機能は、専用ハードウェアの使用によって提供されてもよく、また、適切なソフトウェアによって、ソフトウェア実行可能なハードウェアによって提供されてもよい。プロセッサによって提供される場合、機能は単一の専用プロセッサによって、単一の共有プロセッサによって、または複数の個々のプロセッサによって提供されてもよい。そして、その幾つかは共有されてもよい。さらに、語「プロセッサ」または「コントローラ」の明確な使用は、ソフトウェアを実行することが可能なハードウェアだけに関連すると解釈されてはならない。そして、これらには、デジタルシグナルプロセッサ(DSPハードウェア)、ソフトウェアを格納するための読取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、および不揮発性記憶装置が挙げられるが、これに限定されるものではない。
【0024】
他のハードウェア、通常のものおよび/またはカスタムなものも含まれ得る。同様に、図に示されるいかなるスイッチも、概念上のものに過ぎない。それらの機能は、プログラムロジックの動作によって達成されてもよい。これは、専用のロジック、プログラム制御および専用のロジックの相互作用、または手動でもよい。そして、特定の技術が詳細には文脈から理解され、作成者によって選択可能である。
【0025】
請求項において、特定された機能を実行するための手段を示すいかなる構成要素も、その機能を実行する以下に示すいかなる方法も含むことを目的とする。すなわち、a)機能を実行する回路素子の組合せ、または、b)機能を実行するための適切な回路と組み合わされたソフトウェアを実行するファームウェア、マイクロコード等を含むいかなる形式のソフトウェア、が挙げられる。クレームに記載された本願発明は、クレームに詳述された手段によって提供されるさまざまな機能が結合される形で実現される。したがって、それらの機能を提供するいかなる手段も、本願明細書において示されるものと均等である。
【0026】
本願における「一実施例」または「実施例」の参照は、実施例に関連して記載される特定の特徴、構造、特質等が本願発明の少なくとも一つの実施例に含まれることを意味する。したがって、明細書のさまざまな場所において使用される「一実施例において」または「実施例において」という表現は、必ずしも同じ実施例に関連しているというわけではない。
【0027】
例えば、「および/または」という表現は、例えば、「Aおよび/またはB」においては、第1のオプション(A)、第2のオプション(B)または両方のオプション(A、およびB)の選択を含むことを意図する。更なる例としては、「A、Bおよび/またはC」という場合には、第一のオプション(A)、第二のオプション(B)、第三のオプション(C)、第一と第二のオプションの選択(AおよびB)、第一と第三のオプションの選択(AおよびC)、第二と第三のオプションの選択(BおよびC)、または全てのオプションの選択(AおよびBおよびC)が含まれる。多くのアイテムが示された場合も同様であることは、の当業者によって直ちに明らかである。
【0028】
本願で使用している「高水準構文」は、マクロブロック・レイヤーより上の層に存在するビット列に対する構文に関連する。例えば、本願明細書において使われるスライス・ヘッダ・レベルの高レベル構文としては、サプレメンタル・エンハンスメント・インフォメーション・レベル(Supplemental Enhancement Information(SEI)level)、ピクチャ・パラメータ・セット・レベル(picture parameter set(SPS)level)、シーケンス・パラメータ・セットレベル、(sequence parameter set(SPS)level)、およびネットワーク・アブストラクション・レイヤー・ユニット・ヘッダー・レベル(Network Abstraction Layer(NAL)Unit header level)が挙げられる。
【0029】
さらに、本願発明の一つ以上の実施例は、MPEG−4AVC標準に関して記載されている。しかしながら、本願発明の精神を維持するかぎり、本願発明は、単にこの標準だけに限られない。すなわち、MPEG−4AVC標準の拡張を含み、その他の映像コーディング標準、勧告、および拡張に関連して利用されてもよいことが理解されるべきである。
【実施例】
【0030】
図3において、MPEG−4AVC標準に従ったビデオ・エンコーディングを実行することが可能なビデオエンコーダが、参照番号300によって全体的に示されている。
【0031】
ビデオエンコーダ300は、コンバイナ385の非反転入力に信号通信接続された出力を有するフレーム順序付けバッファ310を含む。コンバイナ385の出力は、変換器および量子化器325の第一入力に信号通信接続される。変換器および量子化器325の出力は、領域マージ拡張付きエントロピー符号器345の第一入力、および逆変換器および逆量子化器350の第一入力に信号通信接続される。領域マージ拡張付きエントロピー符号器345の出力は、コンバイナ390の第1の非反転入力に信号通信接続される。コンバイナ390の出力は、出力バッファ335の第一入力に信号通信接続される。
【0032】
領域マージ拡張付きエンコーダ・コントローラ305の第一出力端は、フレーム順序付けバッファ310の第2の入力、逆変換器および逆量子化器350の第2の入力、画像−タイプ決定モジュール315の入力、マクロブロック−タイプ(MB−タイプ)決定モジュール320の入力、イントラ予測モジュール360の第2の入力、デブロッキングフィルタ365の第2の入力、モーションコンペンセータ370の第一入力、モーション推定器375の第一入力、および参照ピクチャ・バッファ380の第2の入力に信号通信接続される。
【0033】
領域マージ拡張付きエンコーダ・コントローラ305の第2の出力は、付加的強調情報(SEI)インサータ330の第一入力、変換器および量子化器325の第2の入力、エントロピー符号器145の第2の入力、出力バッファ335の第2の入力、およびシーケンス・パラメータ・セット(SPS)およびピクチャ・パラメータ・セット(PPS)インサータ340の入力に信号通信接続される。
【0034】
画像−タイプ決定モジュール315の第一出力端は、フレーム順序付けバッファ310の第三入力に信号通信接続される。画像−タイプ決定モジュール315の第2の出力は、マクロブロック−タイプ決定モジュール320の第2の入力に信号通信接続される。
【0035】
シーケンス・パラメータ・セット(SPS)およびピクチャ・パラメータ・セット(PPS)インサータ340の出力は、コンバイナ390の第三非反転入力に信号通信接続される。逆量子化器および逆変換器350の出力は、コンバイナ319の第1の非反転入力に信号通信接続される。コンバイナ319の出力は、イントラ予測モジュール360の第一入力、およびデブロッキングフィルタ365の第一入力に信号通信接続される。デブロッキングフィルタ365の出力は、参照ピクチャ・バッファ380の第一入力に信号通信接続される。参照ピクチャ・バッファ380の出力は、モーション推定器375の第2の入力に信号通信接続される。モーション推定器375の第一出力端は、モーションコンペンセータ370の第2の入力に信号通信接続される。モーション推定器375の第2の出力は、領域マージ拡張付きエントロピー符号器345の第三入力に信号通信接続される。
【0036】
モーションコンペンセータ370の出力は、スイッチ397の第一入力に信号通信接続される。イントラ予測モジュール360の出力は、スイッチ397の第2の入力に信号通信接続される。マクロブロック−タイプ決定モジュール320の出力は、スイッチ397の第三入力に信号通信接続される。スイッチ397の第三入力(制御入力と比較すると、すなわち第三入力)は、スイッチの「データ」入力がモーションコンペンセータ370かイントラ予測モジュール360によって提供されることであるか否かを確定する。スイッチ397の出力は、コンバイナ319の第2の非反転入力、およびコンバイナ385の逆相入力端子に信号通信接続される。
【0037】
フレーム順序付けバッファ310、および領域マージ拡張付きエンコーダ・コントローラ305の入力は、入力画像301を受信するため、エンコーダ300の入力として利用できる。さらに、サプレメンタルエンハンスメントインフォメーション(SEI)インサータ330の入力は、メタデータの受信のために、エンコーダ300の入力として使われる。出力バッファ335の出力は、ビット列を出力するために、エンコーダ300の出力として使われる。
【0038】
図4を参照すると、MPEG−4AVC標準に従ってビデオ・デコーディングを実行することが可能なビデオデコーダが、参照番号400によって全体的に示されている。
【0039】
ビデオデコーダ400は、領域マージ拡張付きエントロピーデコーダ445の第一入力に信号通信接続される出力を有する入力バッファ410を含む。領域マージ拡張付きエントロピーデコーダ445の第一出力端は、逆変換器および逆量子化器450の第一入力に信号通信接続される。逆変換器および逆量子化器450の出力は、コンバイナ425の第2の非反転入力に信号通信接続される。コンバイナ425の出力は、デブロッキングフィルタ465の第2の入力、およびイントラ予測モジュール460の第一入力に信号通信接続される。デブロッキングフィルタ465の第2の出力は、参照ピクチャ・バッファ480の第一入力に信号通信接続される。参照ピクチャ・バッファ480の出力は、モーションコンペンセータ470の第2の入力に信号通信接続される。
【0040】
領域マージ拡張付きエントロピーデコーダ445の第2の出力は、モーションコンペンセータ470の第三入力、およびデブロッキングフィルタ465の第一入力に信号通信接続される。領域マージ拡張付きエントロピーデコーダ445の第三出力は、領域マージ拡張付きデコーダ・コントローラ405の入力に信号通信接続される。領域マージ拡張付きデコーダ・コントローラ405の第一出力端は、領域マージ拡張付きエントロピーデコーダ445の第2の入力に信号通信接続される。領域マージ拡張付きデコーダ・コントローラ405の第2の出力は、逆変換器および逆量子化器450の第2の入力に信号通信接続される。領域マージ拡張付きデコーダ・コントローラ405の第三出力は、デブロッキングフィルタ465の第三入力に信号通信接続される。領域マージ拡張付きデコーダ・コントローラ405の第四出力は、イントラ予測モジュール460の第2の入力、モーションコンペンセータ470の第一入力、および参照ピクチャ・バッファ480の第2の入力に信号通信接続される。
【0041】
モーションコンペンセータ470の出力は、スイッチ497の第一入力に信号通信接続される。イントラ予測モジュール460の出力は、スイッチ497の第2の入力に信号通信接続される。スイッチ497の出力は、コンバイナ425の第1の非反転入力に信号通信接続される。
【0042】
入力バッファ410の入力は、入力ビット列を受信するために、デコーダ400の入力として使われる。デブロッキングフィルタ465の第一出力端は、出力画像を出力するために、デコーダ400の出力として使われる。
【0043】
上述の如く、本願発明は、ビデオ・エンコーディング、およびデコーディングのためのスキップ/ダイレクトモードのための状況依存的なマージのための方法と装置を提供することを目的とする。
【0044】
場合によっては、与えられたブロックと他のブロックをジョイントコーディングすることを示す構文は、更にコーディング効率を改善するために役立つと理解されるべきである。実施例において、本願発明の原理はこの種のケースを特定するために用いる。さらに、条件つきのコーディング規則は、隣接したブロックの状況に依存してスキップおよびダイレクトモードでジョイントコーディングの利用を可能/使用不可能にするために導入される。さらに、ビデオデータのための暗黙的なコーディング規則をもつ一般のコーディングモードも、本願発明を使用することができる(スキップ/特別なダイレクトモードは、暗黙的なコーディングビデオ・データが動きであり、かつコーディング規則はメディアン予測器であるという特別なケースである)。実際には、本願明細書において記載されている課題としての、動きは、他の暗黙的に得られるビデオデータの状況にも現れ得ることが理解されるべきである。
【0045】
本願発明は、ブロック予測のジョイントコーディングを有するコード体系の中で、スキップ、およびダイレクトモードの使用を目的としている。状況依存的な規則が、マージ情報の使用を可能/不可能にするために、この種のモードで使われる。このことは、スキップおよびダイレクトモードにおいて、マージ情報が無益な場合に、RDパフォーマンスを失うことを回避する。さらに一般的にいえば、本願発明は、状況依存的なビデオデータをコーディングする暗黙的な導出規則(derivation rule)を持つビデオ・データブロックおよび/または領域のジョイントコーディングのマージ情報を使用可能/不可能にする規則に適用可能である。
【0046】
したがって、本願発明の実施例に従って、我々は、ビデオデータのための暗黙的なコーディング規則を持つコーディングモードを使用するフレームパーティションの中のマージ情報の適応的な使用に関する規則を定める。
【0047】
暗黙的なコーディング規則を持つモードの実施例において、我々は、スキップおよびダイレクトモードを利用する。本実施例において、動きデータは、導出規則を使用し、暗黙的にコーディングされる。この導出規則は、利用できるデコードされたデータに基づいて、スキップ/ダイレクトコーディングブロックの動きの推定値を生成する予測器に基づく。このために典型的な予測器(特にMPEG−4AVCスタンダードによって使われる)は、空間的近隣からのメディアン予測器(median predictor)または時間的近隣からの同一位置予測器(collocdated predictor)である。これらの種類のコーディングモードは、何ら制限無く、他の種類のビデオ・データ、例えば方向モードのイントラコーディング、または、モデル・フィッティング(model fitting)に基づいてイメージ/映像コーディングのために使用されるモデルのモデル・パラメータ、に適用することができる。
【0048】
ある程度まで、暗黙的なコーディング規則を持つコーディングモードは、暗黙的なマージ操作としてとらえることができる。メディアン予測器が暗黙的なデータ導出規則として用いられる場合、暗黙的なマージは、予測器によって生成される同じ動きベクトルを持つブロックを有するスキップ/ダイレクトのブロックのマージである。
【0049】
実施例において、マージサイド情報の使用は、暗黙的なコーディング規則を使用するコーディングモードの内で適合的に可能または不可能にされるケースが特定される。暗黙的なコーディング規則を使用しているフレームパーティションが与えられると、マージ情報を使用するべきか否かの決定は、隣接したパーティションモード、およびマージ情報に基づく。
【0050】
スキップまたはダイレクトモードに関して上述の実施例について以下に説明する。スキップ/ダイレクトマクロブロックがマージ方法で影響を受け得る状況は、スキップ/ダイレクトマクロブロックが他の一部のブロック(通常は16×16または他のスキップ/ダイレクトモード)にマージされる可能性に依存する時である。不必要なペイロード・ビットを含むことがないよう、デフォルトにおいては、スキップ/ダイレクトモードはマージ情報を含まない。実際、それらは、デフォルトでマージされない。スキップ/ダイレクトモードが他の一部のブロックとマージされ得る唯一の状況は、スキップ/ダイレクトモードのブロックがすでに幾つかのマージングする葉(merging leaf)端末送信(entering)を持っている場合である。実際、他のブロックがスキップ/ダイレクトブロックにマージされた場合、このことは、そのブロックに対し、ある軽減が既に得られていることを示している。したがって、他のブロックに対するマージングの決定を示す追加ビットを与えることができる。また、スキップ/ダイレクトモード・データの構文は、以下のように修正される。もし、あるブロックが、スキップ/ダイレクトマクロブロックにマージしており、そのスキップ/ダイレクトマクロブロックが、セグメントのスキャニングの最初のブロックである場合、スキップ/ダイレクトマクロブロック・データの構文は、マージされた部分のための動き情報を有する明示的な構文を含んでもよい。
【0051】
図5を参照すると、マージを可能とするスキップモードのためのビデオエンコーダにおいてマージ処理を実行するための例示的な方法が参照番号500によって全体的に示されている。
【0052】
方法500は、決定ブロック510にコントロールを渡す開始ブロック505を有する。決定ブロック510は、いずれかのブロックが現在のブロックにすでにマージされているか否か判断する。その場合は、コントロールは、機能ブロック515に移行する。それ以外の場合には、コントロールは、機能ブロック530に移行する。
【0053】
機能ブロック515は、現在のブロックをマージすることをテストし、決定ブロック520にコントロールを渡す。決定ブロック520は、マージされたブロックがコーディング効率によりよいか否か判断する。その場合は、コントロールは、機能ブロック525に移行する。それ以外の場合、コントロールは、機能ブロック530に移行する。
【0054】
機能ブロック525は、現在のブロックをマージし、かつ終了ブロック599にコントロールを渡す。
【0055】
機能ブロック530は、現在のブロックをマージされないままにしておき、かつ機能ブロック535にコントロールを渡す。機能ブロック535は、暗黙的に現在のブロックのための動きデータをコーディングし、および終了ブロック599にコントロールを渡す。
【0056】
図6を参照すると、マージ可能なスキップモードに対して、ビデオデコーダでマージ処理を実行するための例示的な方法が、参照番号500によって全体的に示されている。
【0057】
方法600は、決定ブロック610にコントロールを渡す開始ブロック605を含む。決定ブロック610は、いずれかのブロックが現在のブロックにすでにマージされているか否か判断する。その場合は、コントロールは、機能ブロック615に移行する。それ以外の場合、コントロールは、機能ブロック630に移行する。
【0058】
機能ブロック615は、コーディングされたマージ情報を読み込んで、決定ブロック620にコントロールを渡す。決定ブロック620は、現在のブロックがマージされたブロックであるか否か判断する。その場合は、コントロールは、機能ブロック625に移行する。それ以外の場合、コントロールは、機能ブロック630に移行する。
【0059】
機能ブロック625は、コーディングされたデータに従って現在のブロックをマージし、終了ブロック699にコントロールを渡す。機能ブロック630は、現在のブロックをマージされないままにしておき、機能ブロック635にコントロールを渡す。機能ブロック635は、現在のブロックのために暗黙的にコーディングされた動きデータをデコードし、終了ブロック699にコントロールを渡す。
【0060】
図7を参照すると、マージ可能なスキップモードのコーディングのための例示的な方法が、参照番号700によって全体的に示されている。
【0061】
方法700は、決定ブロック710にコントロールを渡す開始ブロックを含む。決定ブロック710は、いずれかのブロックが現在のブロックにマージされるか否か判断する。その場合は、コントロールは、決定ブロック715に移行する。それ以外の場合、コントロールは、機能ブロック750に移行する。
【0062】
決定ブロック715は、マージするのが可能なブロックがあるか否か判断する。その場合は、コントロールは、機能ブロック720に移行する。それ以外の場合、コントロールは、決定ブロック740に移行する。
【0063】
機能ブロック720は、マージ/ノーマージ・フラグをコーディングし決定ブロック725にコントロールを渡す。決定ブロック725は、現在のブロックが他のブロックにマージされるか否か判断する。その場合は、コントロールは、決定ブロック730に移行する。それ以外の場合、コントロールは、決定ブロック740に移行する。
【0064】
決定ブロック730は、マージする可能な複数ブロックがあるか否か判断する。その場合は、コントロールは、機能ブロック735に移行する。それ以外の場合、コントロールは、決定ブロック740に移行する。
【0065】
機能ブロック735は、マージの決定をコーディングし、決定ブロック740にコントロールを渡す。
【0066】
決定ブロック740は、現在のブロックがセグメントの最初のブロックであるか否か判断する。その場合は、コントロールは、機能ブロック745に移行する。それ以外の場合、コントロールは、終了ブロック799に移行する。
【0067】
機能ブロック745は、明示的に現在のブロックのための動きデータをコーディングし、終了ブロック799にコントロールを渡す。
【0068】
機能ブロック750は、暗黙的に現在のブロックの動きデータをコーディングし、終了ブロック799にコントロールを渡す。
【0069】
図8を参照すると、マージ可能なスキップモードのデコーディングのための例示的な方法が、参照番号800によって全体的に示されている。
【0070】
方法800は、決定ブロック810にコントロールを渡す開始ブロックを含む。決定ブロック810は、いずれかのブロックが現在のブロックにマージされるか否か判断する。その場合は、コントロールは、決定ブロック815に移行する。それ以外の場合、コントロールは、機能ブロック850に移行する。
【0071】
決定ブロック815は、マージする可能なブロックがあるか否か判断する。その場合は、コントロールは、機能ブロック820に移行する。それ以外の場合、コントロールは、決定ブロック840に移行する。
【0072】
機能ブロック820は、マージ/ノーマージ・フラグをデコードし、決定ブロック825にコントロールを渡す。決定ブロック825は、現在のブロックが他のブロックにマージされるか否か判断する。その場合は、コントロールは、決定ブロック830に移行する。それ以外の場合、コントロールは、決定ブロック840に移行する。
【0073】
決定ブロック830は、マージする可能な複数ブロックがあるか否か判断する。その場合は、コントロールは、機能ブロック835に移行する。それ以外の場合、コントロールは、決定ブロック840に移行する。
【0074】
機能ブロック835は、マージの決定をデコードし、決定ブロック840にコントロールを渡す。
【0075】
決定ブロック840は、現在のブロックがセグメントの最初のブロックであるか否か判断する。その場合は、コントロールは、機能ブロック845に移行する。それ以外の場合、コントロールは、終了ブロック899に移行する。
【0076】
機能ブロック845は、現在のブロックのための明示的にコーディングされた動きデータをデコードし、終了ブロック899にコントロールを渡す。
【0077】
機能ブロック850は、暗黙的にコーディングされた現在のブロックのための動きデータをデコードし、終了ブロック899にコントロールを渡す。
【0078】
本発明の多くの効果/特徴のいくつかは、すでに説明した。例えば、一つの効果/機能としては、パーティションをマージする処理およびフレームのパーティション化を用いたイメージ領域のパーティションのジョイントコーディングのためのエンコーダを含む装置であるということである。ここにおいて、明示的なコーディング規則を持つコーディングモードのために使われているマージング規則とは異なる別個のマージング規則が使用される。そして、暗黙的なコーディング規則を持つコーディングモードを使用する与えられたパーティションの一つのいかなるものも、異なったパーティションの一つとマージされることになる。
【0079】
他の効果/機能は、上述の通りのエンコーダを有する装置であるということである。ここで、暗黙的なコーディング規則を持つコーディングモードを使用する与えられた一つのパーティションがマージ処理によってパーティションの他の一つにマージされるのは、さらにもう一つのパーティションが、前記与えられた一つのパーティションにすでにマージされた場合だけである。
【0080】
さらにもう一つの効果/機能は、上述の通りのエンコーダを有する装置であるということである。ここで、パーティションのうちでマージの対象となるのは、ツリーベースの画像デコンポジションが既に実行された少なくとも一つのブロックまたはブロックの結合である。
【0081】
さらに、他の効果/機能は、上述の通りのエンコーダを有する装置であるということである。ここで、暗黙的なコーディング規則を持つコーディングモードは、スキップモード、ダイレクトモード、および方向イントラデータ(directional intra data)の暗黙的なコーディングのためのモードのうちの少なくとも一つを含むものである。
【0082】
更に、他の効果/機能は、上述の通りのエンコーダを有する装置であるということである。ここで、暗黙的なコーディング規則を持つコーディングモードを使用するパーティションの与えられた一つ、およびパーティションの他の一つがマージされることになっている、パーティションの特定の一つが、スキャンの順番において、少なくとも2つのマージされたパーティションの最初のパーティションである場合、暗黙的なコーディング規則は無視され、明示的なコーディング規則が使われる。
【0083】
他の効果/機能は、上述の通りのエンコーダを有する装置であるということである。ここで、暗黙的なコーディング規則を持つ少なくとも2つのモードをマージする可能性は、高水準構文を使用して使用可能または使用不可能にされる。
【0084】
本願発明のこれらの、そしてまた他の、特徴および効果は、本願明細書における教示に基づいて関連する技術の当業者によって、直ちに確認される。
【0085】
本願発明の教示は、ハードウェア、ソフトウェア、ファームウェア、専用プロセッサまたは組合せのさまざまな形式でインプリメントされてもよいことが理解されるであろう。
【0086】
最も好ましくは、本願発明の教示は、ハードウェアおよびソフトウェアの組合せとしてインプリメントされる。さらに、ソフトウェアはアプリケーションプログラムとして、プログラム記憶領域ユニットに明白に記憶されるよう、インプリメントされてもよい。アプリケーションプログラムは、適切なアーキテクチュアを有しているいかなるマシンにアップロードされ、実行されてもよい。望ましくは、マシンは、ハードウェア、例えば一つ以上の中央処理装置(CPU)、ランダムアクセスメモリ(RAM)、および入出力(I/O)インターフェースを有するコンピュータプラットフォームにインプリメントされる。コンピュータプラットフォームは、オペレーティングシステムおよびマイクロ命令コードを含んでもよい。本願明細書において記載されているさまざまな方法、および機能は、マイクロ命令コードの一部かアプリケーションプログラムの一部またはそれのいかなる組合せであってもよい。それはCPUによって実行されてもよい。加えて、さまざまな他の周辺装置が、コンピュータプラットフォーム、例えば追加データ記憶機構ユニット、および印刷ユニットに接続されてもよい。
【0087】
添付の図面において表されるいくつかの構成部分のシステムコンポーネント、および方法はソフトウェアで好ましくはインプリメントされるため、システムコンポーネントまたは方法機能ブロックとの実際の結合は、本願発明がプログラムされる方式によって、異なってもよいことが、更に理解されるべきである。本願明細書における教示を与えられて、関連する技術の当業者は、これら、および類似した実装または本願発明の構成を考察することが可能である。
【0088】
例示の実施例が添付の図面に即して本願明細書において記載されているが、本願発明は、それらの正確な実施例に限られない。そして、そのさまざまな変形例、および変更態様は本願発明の範囲または精神から逸脱することなく、関連する技術の当業者によって遂行されてもよい。全てのこの種の改変と変更態様は、請求項に記載したように本願発明の範囲内に含まれる。
図1
図2
図3
図4
図5
図6
図7
図8