(57)【要約】【課題】ビデオ符号化を提供する。【解決手段】本発明による一実施の形態は、復号器８０８に関連付けられる制約条件を求めること６０２を含むことができる方法６００である。さらに、この方法は、ビデオコンテンツ８０２を符号化するのに利用することができる参照Ｂフレームの最大数を求めること６０４も含むことができる。この最大数は、復号器に関連付けられる制約条件に基づいていることに留意されたい。また、この復号器は、複数のフレームバッファ８０９を備えている。【選択図】図６
2009545918.tif 000002
【特許請求の範囲】
【請求項１】
方法（６００）であって、
復号器（８０８）に関連付けられる制約条件を求めることと（６０２）、
ビデオコンテンツ（８０２）を符号化するのに利用することができる参照Ｂフレームの最大数を求めること（６０４）であって、前記最大数は、前記復号器に関連付けられる前記制約条件に基づいている、最大数を求めることと（６０４）
を含む方法。
【請求項２】
前記復号器は複数のフレームバッファ（８０９）を備える
請求項１に記載の方法。
【請求項３】
前記制約条件は前記複数のフレームバッファの数に等しい
請求項２に記載の方法。
【請求項４】
前記最大数は前記制約条件から２を引いたものに等しい
請求項２に記載の方法。
【請求項５】
前記制約条件は、前記復号器に関連付けられる許容可能な提示フレーム遅延に等しい
請求項１に記載の方法。
【請求項６】
前記最大数は前記制約条件から１を引いたものに等しい
請求項５に記載の方法。
【請求項７】
前記ビデオコンテンツ内でコンテンツのシーン変化を検出すること（６０６）
をさらに含む請求項１に記載の方法。
【請求項８】
前記コンテンツのシーン変化を利用して（６０８）、前記ビデオコンテンツを符号化すること
をさらに含む請求項７に記載の方法。
【請求項９】
前記ビデオコンテンツの少なくとも２つのフレーム間の動きの量を検出すること（６０６）
をさらに含む請求項１に記載の方法。
【請求項１０】
前記ビデオコンテンツ内で遮蔽されている物体を検出すること（６０６）
をさらに含む請求項１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施の形態は、ビデオ符号化に関する。
【背景技術】
【０００２】
現在、ビデオコンテンツの圧縮及び伸張を行うのに利用することができるビデオ圧縮標準規格には、さまざまなものが存在する。
たとえば、ムービングピクチャエキスパートグループ（ＭＰＥＧ）は、さまざまなビデオ圧縮標準規格を定義してきた。
それらのビデオ圧縮標準規格のうち、一般的になりつつある１つは、ＭＰＥＧ−４  パート１０とも呼称されるＭＰＥＧ−４  ＡＶＣ（アドバンストビデオコーディング）である。
ＭＰＥＧ−４  ＡＶＣは、国際電気通信連合（ＩＴＵ）によって定義されたＨ．２６４ビデオ圧縮標準規格と同様のものであることに留意されたい。
【０００３】
ＭＰＥＧ−４  ＡＶＣが一般的になりつつある理由の１つは、ＭＰＥＧ−４  ＡＶＣの能力が、大量のビデオコンテンツデータを、ＭＰＥＧ−２のような現在の標準規格よりも良好にハンドリングすることができるためである。
高精細度（ＨＤ）ビデオコンテンツは、ますます一般的になりつつある、従来のビデオシステムよりも何倍も多くのビデオコンテンツデータを伴うため、その能力は望ましい。
このような状況から、それらのＨＤビデオコンテンツ放送者には、従来から使用してきたものと同じ帯域幅内に同じ数のＨＤチャネルを適合させたいという要望がある。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、ＭＰＥＧ−４  ＡＶＣに関する問題の１つは、そのビットストリームシンタックスが、ビデオコンテンツを圧縮するために、動き予測用にほとんど無限個のフレームを許容しているということである。
動き予測用のフレーム数が増加するにつれて、復号器がビデオコンテンツを伸張するのに必要なフレームバッファ数も増加することに留意されたい。
フレームバッファは、多くの費用を要する可能性があり、それによって、ビデオビットストリームの圧縮プロセスに制限が課せられない場合には、費用効率の良い復号ソリューションが妨げられる。
一方、課せられる制限が多くなるにつれて、その結果生成されるビデオビットストリームの品質は低下する可能性がある。
したがって、ＭＰＥＧ−４  ＡＶＣを使用して、費用効率の良い復号ソリューションに基づき、最も高い品質のビデオビットストリームを生成することが望ましい。
【課題を解決するための手段】
【０００５】
本発明の一形態は、方法（６００）であって、復号器（８０８）に関連付けられる制約条件を求めることと（６０２）、ビデオコンテンツ（８０２）を符号化するのに利用することができる参照Ｂフレームの最大数を求めること（６０４）であって、前記最大数は、前記復号器に関連付けられる前記制約条件に基づいている、最大数を求めることと（６０４）を含む。
【図面の簡単な説明】
【０００６】
【図１】ＭＰＥＧ−１及びＭＰＥＧ−２の提示ビデオストリームの一例示の動き参照構造（motion referencing structure）を示す図である。
【図２】本発明のさまざまな実施形態に従って利用することができるＭＰＥＧ−４  ＡＶＣ提示ビデオフレーム順序の一例示の動き参照構造を示す図である。
【図３】図１に示す提示ビットストリームの異なるビデオフレームタイプに基づく一例示のビットストリームフレーム順序である。
【図４】ＭＰＥＧ−１及びＭＰＥＧ−２に準拠した復号されたビデオフレームをバッファリングすることによって引き起こされる一例示の１フレーム遅延を示す図である。
【図５】ＭＰＥＧ−４  ＡＶＣに関連付けられる復号されたビデオフレームをバッファリングすることによって引き起こされる一例示の２フレーム遅延を示す図である。
【図６】本発明のさまざまな実施形態による一例示の方法のフロー図である。
【図７】本発明のさまざまな実施形態による別の例示の方法のフロー図である。
【図８】本発明のさまざまな実施形態による一例示のシステムのブロック図である。
【発明を実施するための形態】
【０００７】
次に、本発明によるさまざまな実施形態を詳細に参照する。
これらのさまざまな実施形態の例は、添付図面に示されている。本発明をさまざまな実施形態と共に説明するが、これらのさまざまな実施形態は、本発明を限定することを意図するものではないことが理解されよう。
それどころか、本発明は、代替形態、変更形態、及び均等物を含有するように意図されている。これらの代替形態、変更形態、及び均等物は、特許請求の範囲に従って解釈される本発明の範囲内に含めることができる。
さらに、本発明によるさまざまな実施形態の以下の詳細な説明では、本発明の完全な理解を提供するために、多数の具体的な詳細が述べられる。
しかしながら、これらの具体的な詳細がなくても本発明を実用化することができることは、当業者に明白であろう。
それ以外の場合には、本発明の態様を不必要に不明瞭にしないように、既知の方法、手順、コンポーネント、及び回路は詳細に説明されていない。
【０００８】
本発明によるさまざまな実施形態は、ビデオ圧縮を伴うことができる。ビデオ圧縮に使用することができる技法の１つは、動き予測又は動き推定と呼称されるものであり、これは、当業者に既知である。
連続したフレーム間の相違が、通例、シーンの物体若しくはカメラの動き（又はそれらの双方）によって引き起こされる場合に、ビデオシーケンスは、かなりの時間的冗長性を含むことが理解される。
これらの時間的冗長性は、ビデオ圧縮に活用することができる。動き推定は、ビデオシーケンス内に含まれる時間的冗長性を除去するのに使用される技法である。
【０００９】
ビデオ圧縮のためのさまざまな標準規格が存在することに留意されたい。
たとえば、ムービングピクチャエキスパートグループ（ＭＰＥＧ）は、さまざまなビデオ圧縮標準規格を定義してきた。
ＭＰＥＧビデオ圧縮標準規格によれば、ビデオフレームを矩形の重なり合わないブロックに区画することができ、各ブロックを動き参照フレーム（motion reference frame）の別のブロックと照合することができる。
これは、ブロック照合予測（block matching prediction）としても知られている。
より良く照合するほど、より高い圧縮が達成可能であることが理解される。
ビデオの連続したフレーム間には多くの冗長性が存在し、その依存関係を活用することで結果的により良い圧縮をもたらすため、ＭＰＥＧ−１ビデオ圧縮標準規格及びＭＰＥＧ−２ビデオ圧縮標準規格は、それぞれ動き推定に基づいている。
したがって、ビデオのコンテンツを最適化された視覚品質で維持すると同時に、ビデオビットストリームを表すのに可能な最小ビット数を有することが望ましい。
【００１０】
ＭＰＥＧ−１及びＭＰＥＧ−２は、動き推定を行う一環として、Ｉフレーム、Ｐフレーム、及びＢフレームの３つの異なるビデオフレームタイプを含む。
具体的には、Ｉフレームは、フレーム間の動きを利用しない（動き予測がない）。
Ｉフレームは、たとえばＪＰＥＧ（ジョイントフォトグラフィックエキスパートグループ）といった静止画像圧縮と同様に独立して復号可能である。
加えて、Ｐフレームは、先行するＰフレーム又はＩフレームのうち、いずれか時間的に最初に来る方の、１つの動き参照フレームのみを使用するビデオフレームとして定義することができる。
Ｉフレーム及びＰフレーム以外のビデオフレームは、Ｉフレーム及びＰフレームを動き予測に使用することができるため、Ｉフレーム及びＰフレームの双方は、動き参照フレームとなり得ることに留意されたい。
最後に、Ｂフレームは、２つの動き参照ビデオフレームを予測に使用することができ、１つは、先行するビデオフレーム（Ｉフレーム又はＰフレームのいずれかとすることができる）であり、１つは、未来のビデオフレーム（Ｉフレーム又はＰフレームのいずれかとすることができる）である。
一方、Ｂフレームは、動き参照フレームではない。
Ｂフレームを、動き予測に他のいずれのビデオフレームも使用することができない。
Ｐフレーム及びＢフレームの双方は、復元について他のビデオフレームに依存するため、独立して復号可能ではないことに留意されたい。
Ｂフレームは、Ｐフレームよりも良好な圧縮を提供し、Ｐフレームは、Ｉフレームよりも良好な圧縮を提供することに留意されたい。
【００１１】
図１は、ＭＰＥＧ−１及びＭＰＥＧ−２の提示ビデオストリーム１００の一例示の動き参照構造を示している。
この動き参照は、すべてのビデオフレームについて示されているとは限らないことを指摘しておく。
具体的には、Ｐフレームの動き推定は、先行するＩフレーム又はＰフレーム（いずれか時間的に最初に来る方）を使用することを伴うことができる。
このＰフレームの動き推定は、動き予測又は動き推定用に１つのフレームバッファを使用することを伴う。
たとえば、提示ビデオストリーム１００のＰ４フレームのようなＰフレームについて、動き推定は、矢印１０２によって示すように、先行するＩ１フレームを使用することを伴うことができる。
さらに、提示ビデオストリーム１００のＰ７フレームは、矢印１０４によって示すように、先行するＰ４フレームを動き推定に使用することを伴うことができる。
【００１２】
Ｂフレームの動き推定は、先行するＩフレーム又はＰフレーム（いずれか時間的に最初に来る方）及び未来のＩフレーム又はＰフレーム（いずれか時間的に最初に来る方）を使用することを伴うことが理解される。
このＢフレームの動き推定は、双方向の動き推定又は動き予測用に２つのフレームバッファを使用することを伴う。
たとえば、提示ビデオストリーム１００のＢ２フレームのようなＢフレームについて、動き推定は、（矢印１１０によって示す）未来のＰ４フレームと共に、（矢印１１２によって示す）先行するＩ１フレームを動き予測又は動き推定に使用することを伴うことができる。
加えて、提示ビデオストリーム１００のＢ６フレームは、（矢印１０６によって示す）未来のＰ７フレームと共に、（矢印１０８によって示す）先行するＰ４フレームを動き予測又は動き推定に使用することを伴うことができる。
【００１３】
図１内では、提示ビデオストリーム１００は、例示のビデオフレームを含む。
この例示のフレームは、Ｉ１フレーム、その後に続くＢ２フレーム、その後に続くＢ３フレーム、その後に続くＰ４フレーム、その後に続くＢ５フレーム、その後に続くＢ６フレーム、その後に続くＰ７フレーム、その後に続くＢ８フレーム、その後に続くＢ９フレーム、その後に続くＩ１０フレーム、その後に続くことができる他のビデオフレームであるが、これらに限定されるものではない。
【００１４】
先に述べたように、ＭＰＥＧ−１ビデオ圧縮方式及びＭＰＥＧ−２ビデオ圧縮方式のそれぞれは、動き予測（又は動き推定）を最大２つの参照ビデオフレームに制限している。
一方、ＭＰＥＧ−４  ＡＶＣ（アドバンストビデオコーディング）は、これとは対照的に、はるかに多くの参照ビデオフレームを許容することによって動き推定を一般化している。
ＭＰＥＧ−４  ＡＶＣ（ＭＰＥＧ−４  パート１０としても知られている）は、国際電気通信連合（ＩＴＵ）のＨ．２６４標準規格と同様のものであることに留意されたい。
ＭＰＥＧ−４  ＡＶＣコーデックは、任意の数の動き参照フレームを定義する自由度を提供することが理解される。
たとえば、先行して符号化されたほとんどいずれのフレームも、動き推定又は動き予測に利用可能であるため、参照ビデオフレームとすることができる。
先行して符号化されたビデオフレームは、（符号化される現ビデオフレームを基準として）時間的過去（temporal past）のビデオフレームからのものとすることもできるし、時間的未来のビデオフレームからのものとすることもできることを指摘しておく。
これとは対照的に、ＭＰＥＧ−１及びＭＰＥＧ−２内では、Ｉフレーム及びＰフレームは動き参照ビデオフレームとして使用することができるが、Ｂフレームは動き参照ビデオフレームとして使用することができない。
一方、ＭＰＥＧ−４  ＡＶＣ内では、Ｂフレームも、動き参照ビデオフレームとすることができ、このフレームは、参照Ｂフレーム（「Ｂｒ」によって示される）と呼ばれる。
ＭＰＥＧ−４  ＡＶＣ内では、一般化されたＰビデオフレーム及びＢビデオフレームの定義は次の通りである。
Ｐフレームは、複数の動き参照ビデオフレームが時間的過去からのものである限り、それらを使用することができる。
加えて、Ｂフレームは、時間的過去又は時間的未来からの複数の動き参照フレームが先行して符号化されている限り、それらを使用することができる。
【００１５】
図２は、本発明のさまざまな実施形態に従って利用することができるＭＰＥＧ−４  ＡＶＣ提示ビデオフレーム順序２００の一例示の動き参照（又は動き推定）構造を示している。
動き参照（又は動き推定）は、すべてのビデオフレームについて示されているとは限らないことを指摘しておく。
提示フレーム順序２００内において、「Ｂｒ」は、参照Ｂフレームを示すことに留意されたい。
ＭＰＥＧ−４  ＡＶＣ提示ビデオフレーム順序２００によって示すように、動き推定を行うことができる多くの可能性が存在する。
たとえば、Ｐ９フレームのようなＰフレームの動き推定は、（矢印２０２によって示すような）Ｉ１フレーム、（矢印２０４によって示すような）Ｂｒ３フレーム、及び／又は（矢印２０６によって示すような）Ｐ５フレームのような、時間的過去からの任意の先行する参照フレームを使用することを伴うことができる。
【００１６】
Ｂフレームに関して、ＭＰＥＧ−４  ＡＶＣに関連付けられる２つの異なるタイプ、すなわち、参照Ｂｒフレーム及びＢフレーム、が存在する。
具体的には、たとえばＢｒ３フレームといったＢｒフレームの動き推定は、時間的過去及び時間的未来の双方からの他の参照ビデオフレームがすでに符号化されている限り、それらを使用することを伴うことができる。
たとえば、提示フレーム順序２００のＢｒ３フレームの動き推定は、（矢印２０８によって示すような）時間的に先行する（previous temporal）Ｉ１フレーム及び（矢印２１０によって示すような）時間的に未来（future temporal）のＰ５フレームを使用することを伴うことができる。
【００１７】
最後に、図２内では、Ｂフレーム（たとえば、Ｂ１０フレーム）の動き推定も、Ｂｒフレームを含む、時間的過去及び時間的未来の双方からの参照フレームを使用することができるが、Ｂフレーム自体は、参照フレームとして使用することはできない。
たとえば、提示フレーム順序２００のＢ１０フレームの動き推定は、（矢印２２０によって示すような）時間的に先行するＰ９フレーム、（矢印２２４によって示すような）時間的未来のＢｒ１１フレーム、及び（矢印２２２によって示すような）時間的未来のＩ１３フレームを使用することを伴うことができる。
さらに、Ｂ８フレームの動き推定は、（矢印２１６によって示すような）時間的に先行するＢｒ７フレーム及び（矢印２１８によって示すような）時間的未来のＰ９フレームを使用することを伴うことができる。
その上、Ｂ６フレームの動き推定は、（矢印２１２によって示すような）時間的に先行するＰ５フレーム及び（矢印２１４によって示すような）時間的未来のＢｒ７フレームを使用することを伴うことができる。
【００１８】
動き推定の期間中、現フレームにできるだけ近い参照フレームを利用することが望ましいことに留意されたい。
したがって、提示ビデオフレーム順序２００に示すようなＢｒフレーム（たとえば、Ｂｒ１１及びＢｒ７）を利用することが望ましい。
たとえば、参照フレームが現フレームからあまりにも遠く離れている場合、物体は、視野外になっている場合もあるし、向きを変えている場合もあるため、この参照フレームは、良好な動きの照合を提供することができないおそれがある。
【００１９】
図２内では、提示フレーム順序２００は、例示のビデオフレームを含む。
この例示のフレームは、Ｉ１フレーム、その後に続くＢ２フレーム、その後に続くＢｒ３フレーム、その後に続くＢ４フレーム、その後に続くＰ５フレーム、その後に続くＢ６フレーム、その後に続くＢｒ７フレーム、その後に続くＢ８フレーム、その後に続くＰ９フレーム、その後に続くＢ１０フレーム、その後に続くＢｒ１１フレーム、その後に続くＢ１２フレーム、その後に続くＩ１３フレーム、その後に続くことができる他のビデオフレームであるが、これらに限定されるものではない。
【００２０】
図１は、ビデオフレームの表示順序又は提示順序１００を示し、この順序１００は、ビデオフレームが表示デバイスにどのように提示されるべきかの時間的シーケンスであることに留意されたい。
提示ビットストリーム順序１００のＢフレームは、双方向の動き予測（又は動き推定）のために過去のビデオフレーム及び未来のビデオフレームの双方に依存していることが分かる。
一方、未来のフレームを使用することは、現フレームの符号化又は復号に適切な参照フレームが利用可能になるように、提示ビットストリーム順序１００のビデオフレーム順序をシャッフルすることを伴う。
たとえば、Ｂ５フレーム及びＢ６フレームの双方は、Ｐ４フレーム及びＰ７フレームに依拠し、これらのＰ４フレーム及びＰ７フレームは、Ｂ５フレーム及びＢ６フレームの符号化よりも前に符号化されなければならない。
その結果、ＭＰＥＧビットストリームのビデオフレーム順序は、時間的に線形（temporal linear）ではなくなり、実際の提示順序と異なる。
【００２１】
たとえば、図３は、図１に示す提示ビットストリーム１００の異なるビデオフレームタイプに基づく一例示のビットストリームフレーム順序３００である。
具体的には、ビデオビットストリーム３００の最初のビデオフレームは、Ｉ１フレームである。
その理由は、Ｉ１フレームの符号化がいずれの参照ビデオフレームにも依拠せず、Ｉ１フレームが提示ビットストリーム１００の最初のビデオフレームであるためである。
次はＰ４フレームである。
その理由は、Ｐ４フレームの符号化がＩ１フレームに基づいており、Ｂ２フレームの符号化よりも前にＰ４フレームを符号化しなければならないためである。
次はＢ２フレームである。
その理由は、Ｂ２フレームの符号化がＩ１フレーム及びＰ４フレームの双方に基づいているためである。
次はＢ３フレームである。
その理由は、Ｂ３フレームの符号化もＩ１フレーム及びＰ４フレームの双方に基づいているためである。
次はＰ７フレームである。
その理由は、Ｐ７フレームの符号化がＰ４フレームに基づいており、Ｂ５フレームの符号化よりも前にＰ７フレームを符号化しなければならないためである。
次はＢ５フレームである。
その理由は、Ｂ５フレームの符号化がＰ４フレーム及びＰ７フレームの双方に基づいているためである。
次はＢ６フレームである。
その理由は、Ｂ６フレームの符号化もＰ４フレーム及びＰ７フレームの双方に基づいているためである。
次はＩ１０フレームである。
その理由は、Ｂ８フレーム及びＢ９フレームの符号化よりも前にＩ１０フレームを符号化しなければならないためである。
次はＢ８フレームである。
その理由は、Ｂ８フレームの符号化がＰ７フレーム及びＩ１０フレームの双方に基づいているためである。
次はＢ９フレームである。
その理由は、Ｂ９フレームの符号化もＰ７フレーム及びＩ１０フレームの双方に基づいているためである。
このように、ビットストリームフレーム順序３００は、（図１に示す）提示ビットストリーム１００の順序に基づいて生成することができる。
したがって、ビットストリームフレーム順序３００を利用することによって、適切な参照フレームが、現ビデオフレームの符号化及び復号に利用可能である。
【００２２】
図３内では、ビデオビットストリーム３００は、例示のビデオフレームを含む。
この例示のビデオフレームは、Ｉ１フレーム、その後に続くＰ４フレーム、その後に続くＢ２フレーム、その後に続くＢ３フレーム、その後に続くＰ７フレーム、その後に続くＢ５フレーム、その後に続くＢ６フレーム、その後に続くＩ１０フレーム、その後に続くＢ８フレーム、その後に続くＢ９フレーム、その後に続くことができる他のビデオフレームであるが、これらに限定されるものではない。
【００２３】
ビデオビットストリーム３００のシャッフルされたフレーム順序のために、ビデオフレームは、復号されると直ちに表示又は提示することができないことに留意されたい。
たとえば、ビデオビットストリーム３００のビデオフレームＰ４の復号後、ビデオフレームＢ２及びＢ３が復号されて表示されるまで、ビデオフレームＰ４は、表示又は提示されるべきではないため、記憶することができる。
しかしながら、このタイプのフレームバッファリングは、遅延を導入する可能性がある。
【００２４】
たとえば、図４は、ＭＰＥＧ−１及びＭＰＥＧ−２に準拠した復号されたビデオフレームをバッファリングすることによって引き起こされる一例示の１フレーム遅延を示している。
具体的には、図４は、（図３の）ビデオビットストリームフレーム順序３００を、これに対応する（図１の）ビデオ提示順序１００と共に含む。
対応するビデオ提示順序１００は、ビットストリーム順序３００の下に配置されている。
さらに、提示順序１００は、１フレーム分の位置だけ右にシフトされ、それによって、ビットストリーム３００の復号されたビデオフレームを表示又は提示する前のそれらのビデオフレームのバッファリングプロセスによって引き起こされる１フレーム遅延が表されている。
【００２５】
たとえば、ビットストリーム３００のＩ１フレームは、復号されるとすぐに表示又は提示されるべきではない。
その理由は、Ｐ４フレームが復号された後になるまで、次のビデオフレームであるＢ２フレームを復号して表示することができないためである。
したがって、Ｉ１フレームは、バッファリング又は記憶することができる。次に、Ｐ４フレームが、Ｉ１フレームを利用して復号されるとすぐに、Ｉ１フレームを表示又は提示することができる一方、Ｐ４フレームは、バッファリング又は記憶することができる。
その後、Ｂ２フレームを、Ｉ１フレーム及びＰ４フレームの双方を使用して復号することができ、その結果、Ｂ２フレームを表示又は提示することができる。
ビットストリーム３００の復号の結果、１フレーム遅延が生じることが理解される。この遅延は、復号提示遅延と呼称される場合がある。
ＭＰＥＧ−１及びＭＰＥＧ−２の場合、最大遅延は、動き参照構造とは無関係に１フレームであることが分かる。
【００２６】
図４の１フレーム遅延があると、復号器は、復号中、２つの参照フレームを記憶するための２つの追加のフレームバッファと共に、遅延用の１つのフレームバッファを有することに留意されたい。
【００２７】
しかしながら、提示遅延は、ＭＰＥＧ−４  ＡＶＣの柔軟な動き参照構造に起因して無限になる可能性があるため、復号提示遅延は、ＭＰＥＧ−４  ＡＶＣのような新しいビデオ圧縮／伸張標準規格ではより深刻な問題である。
【００２８】
たとえば、図５は、ＭＰＥＧ−４  ＡＶＣに関連付けられる復号されたビデオフレームをバッファリングすることによって引き起こされる一例示の２フレーム遅延を示している。
具体的には、図５は、（図２の）ビデオ提示フレーム順序２００に対応するビデオビットストリームフレーム順序５００を含む。
このビデオ提示フレーム順序２００は、ビットストリーム順序５００の下に配置されている。
加えて、提示フレーム順序２００は、２フレーム分の位置だけ右にシフトされ、それによって、ビットストリーム順序５００の復号されたビデオフレームを表示又は提示する前のそれらのビデオフレームのバッファリングプロセスによって引き起こされる２フレーム遅延が表されている。
具体的には、図５では、Ｉフレーム及びＰフレームの連続した対（Ｉ／Ｐフレーム）又はＰフレームの連続した対（Ｐ／Ｐフレーム）の間の１つの参照Ｂｒフレーム（たとえば、Ｂｒ３）を使用することによって、提示遅延が、図４の提示遅延を超えて１つだけ増加することが分かる。
図５の提示遅延の値は、連続したＩ／Ｐフレーム又はＰ／Ｐフレーム間にますます多くの参照Ｂｒフレームが配置されるにつれて際限なく増大する可能性があることに留意されたい。
【００２９】
実際には、いくつかの実際の検出器は、提示遅延を制限することが望ましい場合がある。たとえば、提示遅延が増加するにつれて、復号器のフレームバッファ数が増加し、それによって、復号器がますます高価になる。
その上、提示遅延が増加するにつれて、復号器は、たとえば、提示遅延を通例容認することができないテレビ会議中では、適切に動作することができない場合がある。
一方、実際の復号器は、提示遅延を制限するように実施されるため、ＭＰＥＧ−４  ＡＶＣビットストリームのビデオ品質も、マイナスの影響を受けることになることに留意されたい。
【００３０】
図５内では、ビデオビットストリーム順序３００と同様の方法でビデオビットストリーム順序５００を生成することができることが分かる。
一方、図５のビデオビットストリーム順序５００は、図２のビデオ提示フレーム順序２００を参照して上述した動き推定符号化に基づくことができる。
【００３１】
図６は、少なくとも１つの復号器の制約条件に基づいてビデオビットストリームの品質を最適化するための、本発明のさまざまな実施形態による一例示の方法６００のフロー図である。
方法６００は、たとえばソフトウェアといった、コンピューティングデバイスが可読で且つ実行可能な命令（又はコード）の制御のもとで、プロセッサ（複数可）及び電気コンポーネントが実行することができる本発明のさまざまな実施形態の例示のプロセスを含む。
コンピューティングデバイスが可読で且つ実行可能な命令（又はコード）は、たとえば、コンピューティングデバイスによって使用可能とすることができる揮発性メモリ、不揮発性メモリ、及び／又はマスデータストレージのようなデータストレージ機構に存在することができる。
しかしながら、コンピューティングデバイスが可読で且つ実行可能な命令（又はコード）は、任意のタイプのコンピューティングデバイス可読媒体に存在することもできる。
特定のオペレーションが方法６００に開示されるが、このようなオペレーションは例示である。
方法６００は、図６によって示されたオペレーションのすべてを含むとは限らない場合がある。
また、方法６００は、他のさまざまなオペレーション及び／又は図６によって示されたオペレーションの変形を含むこともできる。
さらに、方法６００のオペレーションのシーケンスは変更することができる。
方法６００のオペレーションは、手動によって、ソフトウェアによって、ファームウェアによって、電子ハードウェアによって、又はそれらの任意の組み合わせによって実行することができることに留意されたい。
【００３２】
具体的には、方法６００は、ビデオ復号器に関連付けられる少なくとも１つの制約条件を求めることを含むことができる。
ビデオコンテンツを符号化するのに利用することができる参照Ｂフレームの最大数を求めることを行うことができる。
この最大数は、ビデオ復号器に関連付けられる少なくとも１つの制約条件に基づくことができることに留意されたい。
ビデオコンテンツ内で少なくとも１つのビデオ特性を検出することができる。
少なくとも１つのビデオ特性は、ビデオコンテンツを符号化するのに使用することもできる。
【００３３】
図６のオペレーション６０２において、ビデオ復号器に関連付けられる少なくとも１つの制約条件を求めることができる。
オペレーション６０２は、多種多様な方法で実施することができることに留意されたい。
たとえば、さまざまな実施形態では、ビデオ復号器は、複数のフレームバッファを含むことができるが、これに限定されるものではない。
さまざまな実施形態では、制約条件は、次のこと、すなわち、ビデオ復号器によって含まれる複数のフレームバッファの数に等しいこと、ビデオ復号器に関連付けられる許容可能な提示フレーム遅延に等しいこと等のうちの１つ又は複数とすることができるが、これらに限定されるものではない。
さまざまな実施形態では、ビデオ復号器は、当該ビデオ復号器が復号用にいくつのフレームバッファを有するのかをビデオ符号化器に告げることができることに留意されたい。
状況によっては、提示フレーム遅延は現実には問題ではないことを指摘しておく。
たとえば、さまざまな実施形態では、ＤＶＤのプレイバックの提示遅延は、通例、問題ではない。
一方、通信、テレビ電話通信タイプ、テレビ会議のような対話型アクティビティの場合、遅延は問題となる可能性がある。
動き参照バッファ及び／又は提示遅延は、復号に利用されるフレームバッファの量に関係付けることができることに留意されたい。
動き参照バッファ及び／又は提示遅延は、ＭＰＥＧ−１ビットストリーム及びＭＰＥＧ−２ビットストリームに対しては、小さな値を示すため、それらにほとんど影響を与えないが、ＭＰＥＧ−４  ＡＶＣについては、それらの値は実用的な実施にとってあまりにも大きくなる可能性があり、それらの値は、かなりの量の設計変数となる。
ＤＶＤプレイヤのようなデジタルビデオ消費市場では、復号器は通例、大衆向けであり、復号器の費用は、収益性のために低く維持されるべきである。
フレームバッファの形態のメモリは、比較的高価であり、したがって、復号側（たとえば、ＤＶＤプレイヤ）では、動き参照及び／又は提示バッファを制限することが、通常指示される。
このような復号器ハードウェア制約条件は、ＭＰＥＧ−４  ＡＶＣビットストリームのビデオ品質に影響を与える可能性がある。
したがって、方法６００は、事前に設定された所与のパラメータ値を取ることができ、次に、ビデオビットストリームを符号化側でどのように最適化することができるのかを求めることができる。
オペレーション６０２は、本明細書で説明したものと同様の任意の方法で実施することができるが、このように限定されるものではないことに留意されたい。
【００３４】
オペレーション６０４において、ビデオコンテンツを符号化するのに利用することができる参照Ｂフレームの最大数を求めることができる。
この最大数は、ビデオ復号器に関連付けられる制約条件に基づくことができることに留意されたい。
オペレーション６０４は、多種多様な方法で実施することができることが理解される。
たとえば、さまざまな実施形態では、この最大数は、複数のフレームバッファの数から２を引いたものに等しくすることができ、且つ／又は、ビデオ復号器に関連付けられる許容可能な提示フレーム遅延から１を引いたものに等しくすることができるが、これらに限定されるものではない。
具体的には、Ｎ個の動き参照フレームバッファが与えられると、Ｂｒフレームの最大数はＮ−２となる。
提示フレーム遅延としてＤが与えられると、Ｂｒフレームの最大数はＤ−１となる。したがって、許容可能なＢｒフレームの正味の数（net number）は、これらの２つの値の小さい方、すなわちｍｉｎ｛Ｎ−２，Ｄ−１｝となる。
しかしながら、Ｎ−２又はＤ−１のいずれをもオペレーション６０４の最大数として利用することができることが理解される。
ＭＰＥＧ−４  ＡＶＣが基準Ｂフレーム（Ｂｒフレーム）を許容しているため、符号化動き参照構造の連続したＩ／Ｐ対間では、Ｂｒフレームのできるだけ多くを使用することが望ましいことが理解される。
本明細書で述べたように、Ｂｒフレームの最大数は、利用可能な復号動き参照バッファ及び復号提示遅延の双方によって求められる。
オペレーション６０４は、本明細書で説明したものと同様の任意の方法で実施することができるが、このように限定されるものではないことに留意されたい。
【００３５】
図６のオペレーション６０６において、ビデオコンテンツ内で少なくとも１つのビデオ特性を検出することができる。
オペレーション６０６は、多種多様な方法で実施することができることが分かる。
たとえば、さまざまな実施形態では、オペレーション６０６は、本明細書で説明したものと同様の任意の方法で実施することができるが、このように限定されるものではない。
【００３６】
オペレーション６０８において、少なくとも１つのビデオ特性を、ビデオコンテンツを符号化するのにも使用することができる。
オペレーション６０８は、多種多様な方法で実施することができることが理解される。
たとえば、さまざまな実施形態では、オペレーション６０８は、本明細書で説明したものと同様の任意の方法で実施することができるが、このように限定されるものではない。
【００３７】
図７は、ビデオコンテンツの少なくとも１つのビデオ特性に基づいてビデオコンテンツの符号化を適合させるための、本発明のさまざまな実施形態による一例示の方法７００のフロー図である。
方法７００は、たとえばソフトウェアといった、コンピューティングデバイスが可読で且つ実行可能な命令（又はコード）の制御のもとで、プロセッサ（複数可）及び電気コンポーネントが実行することができる本発明のさまざまな実施形態の例示のプロセスを含む。
コンピューティングデバイスが可読で且つ実行可能な命令（又はコード）は、たとえば、コンピューティングデバイスによって使用可能とすることができる揮発性メモリ、不揮発性メモリ、及び／又はマスデータストレージのようなデータストレージ機構に存在することができる。
しかしながら、コンピューティングデバイスが可読で且つ実行可能な命令（又はコード）は、任意のタイプのコンピューティングデバイス可読媒体に存在することもできる。
特定のオペレーションが方法７００に開示されるが、このようなオペレーションは例示である。
方法７００は、図７によって示されたオペレーションのすべてを含むとは限らない場合がある。
また、方法７００は、他のさまざまなオペレーション及び／又は図７によって示されたオペレーションの変形を含むこともできる。
さらに、方法７００のオペレーションのシーケンスは変更することができる。
方法７００のオペレーションは、手動によって、ソフトウェアによって、ファームウェアによって、電子ハードウェアによって、又はそれらの任意の組み合わせによって実行することができることに留意されたい。
【００３８】
具体的には、方法７００は、ビデオコンテンツ内で少なくとも１つのビデオ特性を検出することを含むことができる。
ビデオコンテンツの符号化は、ビデオコンテンツの視覚品質を高めるために、少なくとも１つのビデオ特性に基づくことができる。
方法７００は、ビデオ復号器に関連付けられる制約条件を求めることを含むことができ、符号化も、この制約条件に基づくことができる。
方法７００は、さまざまな実施形態では、動き参照構造符号化内で最良のＢｒフレームロケーションを求めるのに使用することができることが理解される。
【００３９】
たとえば、２つの連続したＩ／Ｐ間に１つのＢｒが与えられると（上述したように、Ｎ＝３、Ｄ＝２と仮定すると）、その結果、可能なＢｒロケーションは、
「Ｐ  Ｂ  Ｂｒ  Ｂ  Ｐ」、「Ｐ  Ｂｒ  Ｂ  Ｂ  Ｐ」、及び「Ｐ  Ｂ  Ｂ  Ｂｒ  Ｐ」
となる。
ビットストリームは、最良のビデオ品質を与える構造を使用すべきである。この求められたものの結果は、フレーム間の動きの量、シーン変化、物体の遮蔽等のようなビデオ特性に依存する。
適応的なＢｒをシーン変化時にビデオ品質にどのように利用することができるのかの一例として、次のより簡単な構造、すなわち「Ｉ  Ｂｒ  Ｂ  Ｐ」又は「Ｉ  Ｂ  Ｂｒ  Ｐ」を考える。
「Ｉ  Ｂｒ  Ｂ  Ｐ」は、コンテンツのシーン変化がＩフレームの直後である（それによって、動き推定には基本的に有用でないＩフレームがレンダリングされる）場合に選ぶことができ、「Ｉ  Ｂ  Ｂｒ  Ｐ」は、コンテンツのシーン変化がＰフレームの直前である（それによって、動き推定に基本的に有用でないＰフレームがレンダリングされる）場合に選ぶことができる。
【００４０】
図７のオペレーション７０２において、ビデオコンテンツ内で少なくとも１つのビデオ特性を検出することができる。
オペレーション７０２は、多種多様な方法で実施することができることに留意されたい。
たとえば、さまざまな実施形態では、オペレーション７０２におけるビデオ特性は、ビデオコンテンツ内での少なくとも１つのコンテンツのシーン変化、遮蔽されている少なくとも１つの物体、ビデオコンテンツの少なくとも２つのフレーム間の動きの量等とすることができるが、これらに限定されるものではない。
さまざまな実施形態では、少なくとも１つのビデオ特性を検出するのにシーン変化検出器を利用することができることに留意されたい。
さまざまな実施形態では、異なる動き参照パターン（たとえば）に基づいてビットストリームを生成し、最小ビット数になるものを選ぶことによって、少なくとも１つのビデオ特性を実施することができる。
さまざまな実施形態では、ビデオコンテンツを符号化してその後復号し、次に、復号された異なるビデオを元のビデオと比較することによって、少なくとも１つのビデオ特性を符号化器側で実施することができる。
この時、復号されたビデオを比較するのに或るメトリックを使用することができ、次に、その１つを選ぶことができる。
オペレーション７０２は、本明細書で説明したものと同様の任意の方法で実施することができるが、このように限定されるものではないことが理解される。
【００４１】
オペレーション７０４において、ビデオコンテンツの符号化は、ビデオコンテンツの視覚品質を高めるために少なくとも１つのビデオ特性に基づくことができる。
オペレーション７０４は、多種多様な方法で実施することができることが理解される。
たとえば、さまざまな実施形態では、動き推定並びにＢｒフレーム及びＢフレームの符号化にできるだけ多くの参照フレームを利用することになる動き参照フレーム構造を求めるのに、少なくとも１つのビデオ特性を利用することができる。
オペレーション７０４は、本明細書で説明したものと同様の任意の方法で実施することができるが、このように限定されるものではないことに留意されたい。
【００４２】
図７のオペレーション７０６において、ビデオ復号器に関連付けられる少なくとも１つの制約条件を求めることができ、オペレーション７０４の符号化も、この制約条件に基づくことができる。
オペレーション７０６は、多種多様な方法で実施することができることが分かる。
たとえば、さまざまな実施形態では、オペレーション７０６は、本明細書で説明したものと同様の任意の方法で実施することができるが、このように限定されるものではない。
【００４３】
方法６００及び７００は、多種多様な方法で組み合わせることができることに留意されたい。
たとえば、ビデオコンテンツの符号化は、動き参照フレームバッファの数、所望の提示フレーム遅延、及び／又はビデオコンテンツの少なくとも１つのビデオ特性に基づいた符号化の変更に基づくことができる。
これらのそれぞれは、個別に使用することもできるし、それらを任意に組み合わせて使用することもできることに留意されたい。
それらのすべてを使用することによって、それらのうちの１つしか使用しない場合よりも良好な結果を提供することができることが理解される。
たとえば、使用するＢｒフレームの最大数を選ぶことができるが、動き参照構造のパターンは固定することができる。
或いは、Ｂｒフレームの最大数を使用する代わりに、動き参照構造のパターンを適応的にすることができる。
【００４４】
図８は、本発明のさまざまな実施形態による一例示の符号化器／復号器システム８００を示すブロック図である。
システム８００は、入力ビデオ８０２に結合することができる入力フレームバッファ８０４、及びビデオ符号化器８０６に結合することができる動きフレームバッファ８０５を含むことができるが、これらに限定されるものではない。
フレームバッファ８０４及び８０５は、１つ又は複数のフレームバッファメモリで実施することができることに留意されたい。
ビデオ符号化器８０６は、ビデオ復号器８０８に結合することができる。
ビデオ復号器８０８は、動きフレームバッファ８０９及び出力フレームバッファ８１０に結合することができ、出力フレームバッファ８１０は、出力ビデオ８１２を出力するために結合することができる。
フレームバッファ８０９及び８１０は、１つ又は複数のフレームバッファメモリで実施することができることに留意されたい。
ビデオ復号器８０８は、フレームバッファ８０９及び８１０並びにビデオ符号化器８０６に結合することができることが理解される。
したがって、ビデオ復号器８０８は、復号に使用することができるフレームバッファの数をビデオ符号化器８０６へ通知又は送信することができる。
【００４５】
システム８００は、要素を追加して実施することもできるし、図８に示すものよりも少ない要素で実施することもできることが理解される。
ビデオ符号化器８０６及びビデオ復号器８０８はそれぞれ、ソフトウェア、ファームウェア、電子ハードウェア、又はそれらの任意の組み合わせで実施することができることに留意されたい。
【００４６】
図８内では、システム８００は、これに限定されるものではないが、本明細書で説明したものと同様の任意の方法で最良又は最適のビデオ品質ビットストリームを生成する動き参照構造を求めるのに利用することができることが分かる。
【００４７】
さまざまな実施形態では、システム８００は、多種多様な方法で実施することができる。
たとえば、システム８００は、ＤＶＤプレイヤ及びＤＶＤ符号化器の組み合わせとして実施することができる。
具体的には、さまざまな実施形態では、ビデオ復号器８０８並びにフレームバッファ８０９及び８１０は、ＤＶＤプレイヤの一部として実装することができる。
さらに、さまざまな実施形態では、ビデオ符号化器８０６並びにフレームバッファ８０４及び８０５は、ＤＶＤ符号化システムの一部として実装することができる。
一方、ビデオ符号化器８０６は、入力ビデオ８０２を符号化するのに使用される動き参照構造を求めるためにＤＶＤプレイヤのビデオ復号器８０８並びにフレームバッファ８０９及び８１０の制約条件を知らなければならない場合があることに留意されたい。
【００４８】
本発明によるさまざまな特定の実施形態の上記説明は、例示及び説明の目的で提示されたものである。
上記説明は、網羅的であることを意図するものでもなければ、開示した正確な形態に本発明を限定することを意図するものでもなく、上記教示を鑑みて多くの変更及び変形が可能であることは明らかである。
本発明は、特許請求の範囲及びそれらの均等物に従って解釈することができる。
【符号の説明】
【００４９】
１００、２００・・・提示順序
３００、５００・・・ビットストリーム順序
８００・・・符号化器／復号器システム
８０２・・・入力ビデオ
８０４・・・入力フレームバッファ
８０５、８０９・・・動きフレームバッファ
８０６・・・ビデオ符号化器
８０８・・・ビデオ復号器
８１０・・・出力フレームバッファ
８１２・・・出力ビデオ
【図１】
2009545918.tif 000003
【図２】
2009545918.tif 000004
【図３】
2009545918.tif 000005
【図４】
2009545918.tif 000006
【図５】
2009545918.tif 000007
【図６】
2009545918.tif 000008
【図７】
2009545918.tif 000009
【図８】
2009545918.tif 000010
【国際調査報告】
2009545918.tif 000011
2009545918.tif 000012
2009545918.tif 000013