(57)【要約】      （修正有）【課題】一実施形態において、ビデオのエラーを隠蔽するためのシステムおよび方法を提供する。【解決手段】そのシステムは、マクロブロックを生成するためにビデオ信号の各々のフレームを処理し、ネットワーク通信パラメータに基づいてリフレッシュインターバルを選択し、そして選択されたリフレッシュインターバルに基づいてリフレッシュイントラ符号化マクロブロックとして１つまたはそれ以上のマクロブロックを符号化するための符号化エンジンを含む。リフレッシュイントラ符号化マクロブロックは、１つまたはそれ以上の遠隔の装置に亘る送信のためにディスクリートデータパケットに配置される。符号化エンジンは受信されたイントラ符号化マクロブロックを復号化し、予測ドリフトに関連するビデオエラーを減少させるために基準フレームマクロブロックとして用いられる新しく復号化されたビデオフレームに復号化されたマクロブロックを配置する。【選択図】図２
2004215252.tif 000002
【特許請求の範囲】
【請求項１】
ビデオ信号のビデオエラー隠蔽のための方法であって：
複数のマクロブロックを受信する段階であって、ビデオ信号の各々のフレームはマクロブロックの数の整数を有する、段階；
１つまたはそれ以上のネットワークのコールレートとパケット損失エラーレートとに基づいてリフレッシュインターバルを選択する段階；並びに
選択されたリフレッシュインターバルに基づいてリフレッシュイントラ符号化マクロブロックとして複数のマクロブロックのサブセットを符号化する段階；
から構成されることを特徴とする方法。
【請求項２】
請求項１に記載の方法であって、選択されたリフレッシュインターバルは整数ｍであり、整数ｍと整数ｍの因数は、一フレーム当たりのマクロブロックの数の整数に分割されるとき、整数の商を与えず、複数のマクロブロックのサブセットを符号化する段階は、リフレッシュイントラ符号化マクロブロックとして、ｍ番目のマクロブロック毎にイントラ符号化する手順からさらに構成される、ことを特徴とする方法。
【請求項３】
請求項１に記載の方法であって、パケット交換ネットワークに亘って送信のためにディスクリートデータパケットに符号化マクロブロックを配置する段階からさらに構成される、ことを特徴とする方法。
み合わせを有する群から選択される情報を有する、ことを特徴とする方法。
【請求項４】
請求項１に記載の方法であって、回線交換ネットワークにおけるトランスポートのために特定のフォーマットに符号化マクロブロックを配置する段階からさらに構成される、ことを特徴とする方法。
【請求項５】
ビデオエラー隠蔽のためのシステムであって：
符号化エンジンであって、
マクロブロックを生成するためにビデオ信号の各々のフレームを処理する段階であって、各々のフレームはビデオ信号フォーマットに依存するマクロブロックの数の整数番号を有する、段階、
１つまたはそれ以上のネットワーク通信パラメータに基づいてリフレッシュインターバルを選択する段階；および
選択されたリフレッシュインターバルに基づいてリフレッシュイントラ符号化マクロブロックとして生成されたマクロブロックからマクロブロックのサブセットを符号化する段階；
から構成される符号化エンジン；並びに
ネットワークを渡って送信のために特定のフォーマットに各々の符号化マクロブロックを配置するトランスポートエンジン；
から構成されることを特徴とするシステム。
【請求項６】
請求項５に記載のシステムであって、選択されたリフレッシュインターバルは整数ｍであり、整数ｍと整数ｍの因数は、一フレーム当たりのマクロブロックの数の整数に分割されるとき、整数の商を与えず、複数のマクロブロックのサブセットを符号化する段階は、リフレッシュイントラ符号化マクロブロックとして、ｍ番目のマクロブロック毎にイントラ符号化する手順からさらに構成される、ことを特徴とするシステム。
【請求項７】
請求項５に記載のシステムであって、トランスポートエンジンは回線交換ネットワークにおいてトランスポートのために特定のフォーマットに各々の符号化マクロブロックを配置する、ことを特徴とするシステム。
【請求項８】
請求項５に記載のシステムであって、トランスポートエンジンはパケット交換ネットワークに亘って送信のためにパケットに各々の符号化マクロブロックを配置する、ことを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、ビデオ通信に関し、特に、ビデオエラー隠蔽に関する。
【背景技術】
【０００２】
ビデオ画像はグローバルコミュニケーションの一部として次第に重要になってきた。特に、ビデオ会議およびビデオ電話は、デスクトップおよび部屋ベースの会議、インターネットおよび電話回線におけるビデオ、監視およびモニタリング、遠隔治療およびコンピュータベースのトレーニングおよび教育のような幅広いアプリケーションを有している。これらのアプリケーションの各々において、ビデオとそれに伴うオーディオ情報は、電話回線、ＩＳＤＮ、ＤＳＬおよび超音波を含む通信回線を通じて送信される。
【０００３】
ビデオ会議において用いられる標準ビデオフォーマットは、国際電気通信連合（ＩＴＵ：Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｕｎｉｏｎ）のＨ．２６１ビデオ会議規格の一部である共通中間フォーマット（ＣＩＦ：Ｃｏｍｍｏｎ  Ｉｎｔｅｒｍｅｄｉａｔｅ  Ｆｏｒｍａｔ）である。ＣＩＦより大きいかまたは小さいかどちらかの解像度をもつ付加的なフォーマットがまた確立された。図１は、平均して、１つの画素に対して１２ビットが必要であるという仮定の下での種々のビデオフォーマットに関するビットレートの要求および解像度についての表である。示されているビットレート（単位は秒当たりのメガビット、すなわちＭｂｐｓとして）は非圧縮のカラービデオフレームに対するものである。
【０００４】
現在、ビデオ信号の効率的な送信および受信は、ビデオおよびそれに伴うオーディオデータの符号化および圧縮を必要としている。ビデオ圧縮符号化はデジタルビデオデータを符号化する方法であり、それ故、ビデオデータを記憶するために記憶容量をあまり必要とせず、必要とされる送信帯域幅は減少されている。特定の圧縮／展開ＣＯＤＥＣ）スキームは、必要とされる送信ビットレートを減少させてビデオフレームを圧縮するためにしばしば用いられる。それ故、ＣＯＤＥＣハードウェアおよびソフトウェアは、デジタルビデオデータがオリジナル（非圧縮）のデジタルビデオフォーマットにより必要とされるよりコンパクトなバイナリフォーマットに圧縮されることを可能にする。
【０００５】
ソースビデオ信号を符号化し且つ圧縮することに対する幾つかの従来の方法がある。一部の規格が、静止画像に対するＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）、並びに動画像に対するＨ．２６１、Ｈ．２６３、ＭＰＥＧ、ＭＰＥＧ−２およびＭＰＥＧ−４のような特定のアプリケーションについてデザインされている。動画像に対しては、これらの符号化規格は、一般にマクロブロックと呼ばれる１６ｘ１６画素におけるブロックベースの動き補償予測を代表的に用いる。一実施形態においては、マクロブロックは、クロミナンスデータが垂直方向および水平方向において２：１にサブサンプリングされる４：２：０サンプリング構造に従ったクロミナンスデータの４つの８ｘ８ブロックおよびクロミナンスデータの２つの対応する８ｘ８ブロックを含む情報の単位である。
【０００６】
オーディオがビデオを伴うアプリケーションに対しては、実際的には、オーディオデータはまた、ビデオデータと共に圧縮され、送信され、そして同期化される必要がある。同期化、多重化およびプロトコルの問題は、Ｈ．３２０（ＩＳＤＮベースのビデオ会議）、Ｈ．３２４（ＰＯＴＳベースのビデオ電話）およびＨ．３２３（ＬＡＮまたはＩＰベースのビデオ会議）のような規格によりカバーされている。Ｈ．２６３（または前身のＨ．２６１）は、これらの規格群のビデオ符号化部分を提供する。
【０００７】
動き評価および補償スキームは、ビデオ信号に必要な送信帯域幅を減少させるために、一般に用いられる１つの従来の方法である。マクロブロックは基本データ単位であるため、動く評価および補償スキームは、現時点のビデオフレームにおける所定のマクロブロックを前に送信された基準ビデオフレームにおける所定のマクロブロックの周辺領域と比較することが可能である。データの近い適合がみられる場合、僅かの差（すなわち、残差）および空間オフセットは符号化され且つ送信されることが必要であるように、前に送信された基準ビデオフレームにおいて近い適合をみるオフセットマクロブロックから現時点のビデオフレームにおける所定のマクロブロックを減じる。空間オフセットは、一般にうごきベクトルと呼ばれる。動き評価および補償プロセスが効率的である場合、残留残差マクロブロックは、それにより効率的な補償に導く少量の情報を含む必要がある。
【０００８】
１つの終点が回線交換ネットワークに関連し、ゲートウェイまたは他の回線交換ネットワークにパケットスイッチングされるブリッジング装置が用いられる、異質の通信ネットワークまたはパケット交換通信ネットワークにおいて、ビデオデータは送信されることが可能である。パケット交換通信ネットワークにおいて送信のためのビデオフレーム情報が準備されたとき、符号化スキームは、通信ネットワークにおける送信のためのデータパケットに動き評価および補償技術または他の圧縮スキームにより圧縮されるビデオフレーム情報を変換する。データパケットは、ときどき失われ、複写され、または遅延され、それらにより、ビデオ品質の劣化をもたらすエラーが導入されることとなる。
【０００９】
例えば、前に送信された基準フレームの１つまたはそれ以上のパケットが、ソース復号化ユニットから目標復号化ユニットへの送信において失われた場合、符号器基準フレームと復号器機運フレームとの間の不適合が一般にもたらされる。符号器基準フレームと復号器機運フレームとの間に不適合がないとき、符号器により計算され且つ送信される残差は復号化され、復号器の基準フレームから導かれる動き補償ビデオフレームに加えられる。概略を言えば、送信エラーがない状態で、結果的に得られた復号化ビデオフレームは符号器の基準フレームに正確に適合する。基準フレームの不適合が生じるとき、復号化残差と復号器動き補償ビデオフレームとの合計の結果、符号器の基準フレームからさらに異なる復号化ビデオフレームが得られる。補正がない場合、予測ドリフトと呼ばれるこれらの差は、たとえ後の符号化ビデオがエラーのない状態で受信されるとしても、復号化ビデオがでたらめな状態になるまで増加する。
【００１０】
従って、データパケット損失および基準フレームの不適合によりもたらされるエラーを隠蔽し、それによりビデオ品質を改善するためのシステムおよび方法に対する要請がある。
【発明の開示】
【課題を解決するための手段】
【００１１】
本発明は、ビデオデータのパケット損失に関連する基準フレームの不適合に起因するビデオエラーの発生、持続、伝搬および増幅を減少させることである。一般に、本発明は、ネットワーク通信パラメータに基づいてリフレッシュインターバルを動的に選択し、選択されたリフレッシュインターバルに基づいてマクロブロックの特定のパターンをイントラ符号化するシステムおよび方法を提供する。イントラ符号化マクロブロックは少し高価であるため、選択されたリフレッシュインターバルに基づいて一ビデオフレーム当たりにイントラ符号化されたマクロブロックの数はデータ送信コストにおける増加によりバランスをとる。本発明の代表的な実施形態において、符号化エンジンは、マクロブロックを生成するためにビデオ信号の各々のフレームを処理し、ネットワーク通信パラメータに基づいてリフレッシュインターバルを選択し、そして選択されたリフレッシュインタバスに基づいてリフレッシュイントラ符号化マクロブロックとして１つまたはそれ以上のマクロブロックを符号化するために提供される。
【００１２】
他の代表的な実施形態においては、ビデオ信号は、ビデオ信号の各々のフレームがビデオ信号フォーマットに依存するマクロブロックの数の整数を有する、複数のマクロブロックに変換される。次いで、リフレッシュインターバルは、ネットワークのコールレートおよびパケット損失エラーレートに基づいて選択され、１つまたはそれ以上の複数のマクロブロックは、選択されたリフレッシュインターバルに基づいて特定のパターンにおいてイントラ符号化される。これらのマクロブロックは、リフレッシュイントラ符号化マクロブロックと
呼ばれる。リフレッシュマクロブロックとしてイントラ符号化されないマクロブロックは、いずれかの数の選択基準に基づいたイントラ符号化かインター符号化のどちらかである。例えば、所定のマクロブロックのデータコンテンツと前のフレームからのオフセットマクロブロックのデータコンテンツとが類似する場合、所定のマクロブロックはインター符号化されることが可能であり、そうでない場合、イントラ符号化されることが可能である。
【００１３】
本発明の他の実施形態において、符号化マクロブロックは、１つまたはそれ以上の遠隔の装置にネットワークを通して送信するためにディスクリートデータパケットに配置される。さらに、ネットワークにより遠隔の装置から受信されたリフレッシュイントラ符号化マクロブロックは、予測ドリフトを減少させるために、前のビデオフレームから補償されたマクロブロック動きの代わりに用いられる。
【００１４】
本発明の他の実施形態において、リフレッシュインターバルは、いずれかの所定の固定されたパケット損失エラーレートに対して、ネットワークコールレートが増加するにつれて減少する。
【００１５】
本発明の他の実施形態においては、選択されたリフレッシュインターバルは整数であり、その整数およびその整数の因数は、一フレーム当たりのマクロブロックの数の整数に一様に分割できない。さらに、リフレッシュイントラ符号化マクロブロック間のマクロブロックの数は、選択されたリフレッシュインターバルから１を引いた数に等しい。さらに、選択されたリフレッシュインターバルは、ビデオ信号フレームにおける空間的位置に関連する各々のマクロブロックが少なくとも一度リフレッシュイントラ符号化マクロブロックとして符号化されるように、ビデオ信号フレームの数に等しい。
【発明を実施するための最良の形態】
【００１６】
本発明は、パケット損失エラーレートおよびコールレートの関数としてイントラ符号化されたマクロブロックリフレッシュインターバルを動的に選択することにより符号器における基準フレームと復号器における基準フレームとの間の不適合によりもたらされる予測ドリフトを減少させる。ビデオフレームの空間領域に関連する各々のマクロブロックが選択されたリフレッシュインターバル内で少なくとも１回イントラ符号化されるように指定することにより、１つまたはそれ以上の復号器における損失基準フレームマクロブロックは、選択されたリフレッシュインターバル内の良好なイントラ符号化マクロブロックにより置き換えられ、それ故、基準フレームの不適合の発生を減少させる。これらの改善は、通信回線におけるデータパケット損失によりもたらされる外乱を減少させようとするものである。本発明の範囲は、Ｈ．２６１、Ｈ．２６３、Ｈ．２６４、ＭＰＥＧ、ＭＰＥＧ−２およびＭＰＥＧ−４を含むが、これらに限定されない種々のビデオ規格をカバーする。
【００１７】
図２は、代表的なビデオ会議システム２００を示している。ビデオ会議システム２００は、現地のビデオ会議ステーション２０２とネットワーク２０６により接続された遠隔地のビデオ会議ステーション２０６とを含む。図２は２つのビデオ会議ステーション２０２および２０４のみを示しているが、当業者は、さらに多くのビデオ会議ステーションがビデオ会議システム２００に連結されることが可能であることを理解するであろう。本発明のシステムおよび方法は、ビデオデータがネットワークにおいて送信される任意の通信システムにおいて利用することが可能であることに留意する必要がある。ネットワーク２０６は、ＰＯＴＳ、ケーブル、光ファイバおよび高周波媒体のようないずれかの種類の電子送信媒体とすることが可能であるが、これらに限定されるものではない。
【００１８】
図３は、代表的なビデオ会議ステーション３００のブロック図である。簡単化のために、遠隔のビデオ会議ステーション２０４（図２）は類似する構成を含むことが可能であるが、ビデオ会議ステーション３００は現地のビデオ会議ステーション２０２（図２）として説明することとする。一実施形態において、ビデオ会議ステーション３００は、表示装置３０２、ＣＰＵ３０４、記憶装置３０６、少なくとも１つのビデオ捕捉装置３０８、画像処理エンジン３１０および通信インタフェース３１２を含む。また、他の装置は、ビデオ会議ステーション３００において提供され、または、上記の名前を挙げた装置全部とは限らないが提供される。少なくとも１つのビデオ捕捉装置３０８は、電荷結合素子（ＣＣＤ）カメラ、相補形金属酸化膜半導体（ＣＭＯＳ）カメラまたはいずれかの他の種類の画像捕捉装置として実現されることが可能である。少なくとも１つのビデオ捕捉装置３０８は、ユーザ、会議室または他のシーンの画像を捕捉し、画像処理エンジン３１０に画像を送信する。符号化ビデオがパケット交換ネットワーク（図示せず）に送信されるとき、画像処理エンジン３１０は、通信インタフェース３１２が遠隔のビデオ会議ステーション２０４にデータパケットを送信する前に、ビデオ画像を処理してデータパケットにする。画像処理エンジン３１０については、図４と関連させて、さらに詳細に説明する。逆に、画像処理エンジン３１０はまた、表示装置３０２における表示のためのビデオ信号に遠隔のビデオ会議ステーションから受信されたデータパケットを変換する。
【００１９】
図４は、図３の画像処理エンジン３１０の代表的な実施形態である。画像処理エンジン３１０は、符号化エンジン４０２、マクロブロックパケット化エンジン４０４および通信バッファ４０６を含む。本発明の他の実施形態においては、マクロブロックパケット化エンジン４０４を備えないことが可能であり、または符号化エンジン４０２に組み込まれることが可能であり、あるいは、画像処理エンジン３１０は多かれ少なかれ構成要素を含むことが可能である。
【００２０】
初めに、ビデオ捕捉装置３０８（図３）からのビデオ信号は、各々のビデオのフレームを好適なフォーマットに変換し、ビデオ信号の各々のフレームをマクロブロックの集合に変換する符号化エンジン４０２に入る。マクロブロックは、ピクチャ要素（または画素という）に関連するクロミナンス成分と輝度から構成されるデータのブロックを含むデータ単位である。例えば、Ｈ．２６３において、マクロブロックは、輝度データの４つの８ｘ８ブロックと４：２：０クロマサンプリングフォーマットにおける対応するクロミナンスの２つの８ｘ８ブロックから成る。データの８ｘ８ブロックデータは、各々のデータはビデオフレームの画素に対応する８列ｘ８行のデータの行列である。４：２：０クロマフォーマット化マクロブロックは、ビデオフレームの１６画素ｘ１６画素区分をカバーするデータから構成される。しかしながら、本発明は従来定義されたようなマクロブロックに限定されるものではないが、輝度および／またはクロミナンスデータから構成されるいずれかのデータ単位に拡張することが可能である。さらに、本発明の範囲は、輝度データの４つの８ｘ８ブロックとクロミナンスデータの４つの対応する８ｘ８のブロックから構成される４：２：２クロマサンプリングフォーマット、または輝度データの８ｘ８ブロックとクロミナンスデータの８つの対応する８ｘ８ブロックから構成される４：４：４クロマサンプリングフォーマットのような他のサンプリングフォーマットをカバーする。
【００２１】
さらに、符号化エンジン４０２は、データコンテンツを表すために用いられるビット数を減少させるための各々のマクロブロックを符号化する。各々のマクロブロックは、“イントラ符号化”または“インターコード化”されることが可能であり、ビデオフレームは、イントラコード化およびインターコード化マクロブロックのいずれかの組み合わせから構成される。インターコード化されたマクロブロックは、一時的な類似性（すなわち、１つのフレームからのマクロブロックと前の符号化フレームからの近い適合性をもつマクロブロックとの間に存在する類似性）を用いて符号化される。厳密にいうと、所定のインター符号化マクロブロックは、所定のマクロブロックと前の基準ビデオフレームからの近い適合性をみるマクロブロックとの間の符号化された差から構成される。前の基準ビデオフレームからの近い適合をみるマクロブロックは、所定のマクロブロックと関連する画素から空間的にオフセット去れる画素と関連するデータから構成されることが可能である。また、イントラ符号化マクロブロックは、他のビデオフレームからの情報を用いることを伴わずに、符号化される。
【００２２】
本発明の一実施形態において、符号化エンジン４０２は、リフレッシュ機構を用いてフレームのマクロブロックをイントラコード化する。リフレッシュ機構は、各々のフレームのためにマクロブロックの特定のパターンをイントラコード化することにより、符号器基準フレームと復号器基準フレームとの間の不適合性を除去するための決定論的機構であり、予測ドリフトと呼ばれる。将来の基準のために、リフレッシュ機構によりイントラコード化されたマクロブロックは、リフレッシュイントラコードマクロブロック呼ばれる。リフレッシュ機構については、図５および６と関連付けて以下で詳述する。
【００２３】
リフレッシュ機構によりイントラ符号化されなかった所定のフレームの残留マクロブロック全てのために、符号化エンジン４０２はイントラ符号化またはインター符号化として各々のマクロブロックを符号化する。例えば、所定のマクロブロックがインター符号化マクロブロックとして符号化されることが可能であるかどうかを決定するために、符号化エンジン４０２は、例えば、マクロブロック内の同じ場所に位置する画素に対応するデータ間の平均絶対誤差または平均２乗誤差により差が理解されることが可能である前の（または、双方向的に予測されるフレーム符号化の場合は後の）基準ビデオフレーム（オフセットマクロブロックと呼ばれる）からのマクロブロックのデータをもつ現時点のビデオフレームの所定のマクロブロックのデータの間の差を計算する。所定のマクロブロックのために、符号化エンジン４０２が、複数の空間的オフセットマクロブロックに対するエラーを計算する。符号化エンジン４０２が所定の異なる閾値より大きいエラーのみを見つける場合、所定のマクロブロックからのデータと前のフレー間からのデータとの間に著しい類似性は存在せず、マクロブロックはイントラコード化される。しかしながら、エラーが、所定のマクロブロックおよび前のフレームからの所定のオフセットマクロブロックのための所定の差の閾値より小さいことが見つけられた場合、所定のマクロブロックはインター符号化される。本発明の範囲は、所定のマクロブロックがイントラ符号化されるかまたはインター符号化されるかを決定するために、他の種類の選択基準をカバーする。
【００２４】
所定のマクロブロックをインター符号化するために、符号化エンジン４０２は、所定の差のデータを与えるためにオフセットマクロブロックデータ（すなわち、所定のマクロブロックの画素に関連する輝度およびクロミナンスデータが全ての画素のためのオフセットマクロブロックの対応する画素に関連する輝度およびクロミナンスデータから減じられる）から所定のマクロブロックのデータが減じられ、離散コサイン変換および量子化法等のような標準的な符号化技術を用いて差データを符号化し、所定のマクロブロックからオフセットマクロブロックにオフセットベクトル（動きベクトルという）を決定し、動きベクトルを符号化する。
【００２５】
遠隔のビデオ会議ステーション２０４（図２）の画像処理エンジン３１０（図３）の符号化エンジン４０２は、ビデオ品質を改善するためにリフレッシュイントラ符号化マクロブロックの受信と共に種々のエラー隠蔽技術を用いることが可能である。例えば、本発明の一実施形態において、符号化エンジン４０２は、損失インター符号化マクロブロックに隣接するマクロブロックを復号化し、損失マクロブロックの動きベクトルを評価し、さらに、損失マクロブロックのデータを再構築するために評価された動きベクトルを用いる。本発明の他の実施形態において、符号化エンジン４０２は損失イントラ符号化マクロブロックに隣接するマクロブロックを復号化し、損失データを再構築するために復号化された隣接のデータを空間的に補間することが可能である。損失インター符号化マクロブロックおよび損失イントラ符号化マクロブロックに隣接するマクロブロックは、１つまたはそれ以上の受信されたリフレッシュイントラ符号化マクロブロックとすることが可能である。本発明の範囲は、損失マクロブロックのためのビデオ品質を改善するためにリフレッシュイントラ符号化マクロブロックと共に用いられる他のエラー隠蔽技術をカバーする。また、本発明の画像処理エンジン（図３）は、ビデオ品質を改善するために、いずれかの他のエラー隠蔽技術を用いることなく、リフレッシュイントラ符号化マクロブロックを生成し、送信し、そして受信することが可能である。
【００２６】
一旦、所定のフレームのマクロブロックが符号化されると、符号化エンジン４０２はマクロブロックパケット化エンジン４０４に符号化されたマクロブロックを送信する。マクロブロックパケット化エンジン４０４は、所定のフレームのラスタ走査に従って、エラー隠蔽技術に従って、またはいずれかの他の方法に従って、ディスクリートデータパケットに符号化マクロブロックを置くことが可能である。一般に、２つ以上の符号化マクロブロックからのデータは所定のデータパケットに置かれる。
【００２７】
その後、データパケットは、通信インタフェース３１２（図３）によりネットワーク２０６（図２）に亘る送信のための通信バッファ４０６に転送される。パケット損失に対する回復力をさらに促進するために、冗長ピクチャヘッダがデータパケット内に送信されることが可能である。
【００２８】
対照的に、画像処理エンジン３１０はまた、遠隔の場所から受信されたビデオデータパケットを処理し、表示のためにビデオ信号を提供する。初めに、データパケットは通信インタフェース３１２（図３）により受信され、通信バッファ４０６に転送される。データパケットは、次いで、マクロブロックをアンパックしないマクロブロックパケット化エンジン４０４に送信され、必要に応じて、マクロブロックをオリジナルの順序のパターン（すなわち、一般にラスタ走査である遠隔のビデオ会議ステーション２０４（図２）におけるマクロブロックパケット化に先立つパターン）に戻すように順序付けする。その後、符号化エンジン４０２は、オリジナルのビデオフレームと前のビデオフレームから導き出されるリフレッシュイントラ符号化マクロブロック、他のイントラ符号化マクロブロックおよびインター符号化マクロブロックを用いて、復号器として機能し且つオリジナルビデオフレームのデータを再構築し、ネットワーク２０６（図２）におけるデータ送信中にデータパケットが損失されたかどうかを決定する。
【００２９】
例えば、リフレッシュイントラ符号化マクロブロックは、ビデオデータ送信エラーにより損なわれる可能性のある基準フレームからの動き補償の代わりに用いられる。ビデオデータ送信エラー（およびイントラ符号化マクロブロックにより補正されない）により損なわれる可能性のあるいずれかのマクロブロックは、さらに伝搬し、一般に、他の受信されたインター符号化マクロブロックを復号化するための基準マクロブロックとして損なわれたマクロブロックを符号化エンジン４０２が用いるとき、予測ドリフトを拡大する。それ故、リフレッシュイントラ符号化マクロブロックは、その後の復号化フレームのための基準マクロブロックとして用いられるイントラ符号化マクロブロックの“新鮮な”集合を符号化エンジン４０２に提供し、それにより、予測ドリフトを減少させる。
【００３０】
一般に、符号化エンジン４０２は、空間的保管または動きベクトル評価のような方法を用いて損失されたマクロブロックを再構築するために、種々のエラー恩ペイ技術を用いる。これらのエラー隠蔽技術は、リフレッシュイントラ符号化マクロブロックを用いることによりエンハンスされる。ここでは、同じ構成要素が送信機能と受信機能の両方のために用いられるように説明したが、それらの構成要素は受信装置と送信装置とにおいて具現化されることが可能であることに、さらに留意する必要がある。
【００３１】
本発明の他の実施形態において、符号化エンジン４０２は、符号化ビデオフレームにおいてどのマクロブロックがイントラ符号化であるかを識別するイントラマクロブロックマップを生成することが可能である。イントラマクロブロックが生成された後、画像処理エンジン３１０は遠隔のビデオ会議ステーション２０４（図２）にマップを送信する。例えば、マップは、符号化ビデオフレームに関連するピクチャヘッダデータの一部として送信されることが可能であるが、他のデータフィールドが用いられることが可能である。
【００３２】
図５は、本春名の代表的な実施形態に従って、ＣＩＦフォーマットビデオフレームのためにコールレートをパケット損失エラーレートの関数としてのイントラ符号化マクロブロックリフレッシュインターバルについての表を示している。リフレッシュインターバルはフレームの数で与えられる。図５のリフレッシュインターバルは例示目的で示したものであり、他の値を排除することを意味するものではない。さらに、本発明は他のリフレッシュインターバルおよび他のビデオフォーマットをカバーしている。
【００３３】
本発明の一実施形態において、符号化エンジン４０２（図４）は、現時点のネットワークコールレートと現時点のパケット損失エラーレートに基づくリフレッシュインターバルを選択し、選択されたリフレッシュインターバルにより決定付けられるマクロブロックのパターンをイントラ符号化する。リフレッシュインターバルにより指定されるフレームの数が処理された後、フレーム内の空間的位置に関連する全てのマクロブロックが少なくとも１回イントラ符号化されるように、選択されたリフレッシュインターバルは、符号化エンジンにより処理されるフレームの数に等しい。イントラ符号化マクロブロックは、一般に、インター符号化マクロブロックより大きいビット数を必要とするため、本発明は、コールレートやパケット損失エラーレートのようなネットワーク通信パラメータに基づいて利触れ主イントラ符号化マクロブロックの数を最適化する。下で図６Ａ乃至６Ｃと関連して説明するように、いずれかの所定の選択されたリフレッシュインターバル（ｒｉ）に対して、リフレッシュイントラ符号化マクロブロック間のマクロブロック数はｒｉ−１に等しい。それ故、例えば、ｒｉ＝５の場合、フレームにおけるマクロブロックの数が５の倍数でない限り、５つのフレームが処理された後、フレーム内の空間的位置に関連する全てのマクロブロックが少なくとも１回イントラ符号化されるように、符号化エンジンは５番目のマクロブロック毎にイントラ符号化する（すなわち、ｒｉ−１＝４であるため、リフレッシュイントラ符号化マクロブロック間に４つのマクロブロックがある）。
【００３４】
図５の本発明の実施形態は、いずれかの所定のパケット損失エラーレートに対して、ビデオコールのデータレート（以後、コールレートと呼ぶ）が増加するにつれ、減少するリフレッシュインターバルを指定する。例えば、ネットワーク２０６（図２）を亘って送信されるパケットの３％未満が失われた（すなわち、パケット損失エラーレートが３％未満；図５の第２行）であるとき、リフレッシュインターバルは、コールレートが７６８ｋｂｐｓより大きいかそれに等しい場合であって、コールレートが６５フレームに対して３８４ｋｂｐｓより小さいかそれと同じ場合、リフレッシュインターバルは１４９フレームから減少する。すなわち、コールレートが増加する（所定のパケット損失エラーレート）につれ、より多くの帯域幅が、多くの数のリフレッシュイントラ符号化マクロブロックを割り当て且つ尚も良好なビデオ品質を維持するために、利用可能である。さらに、本発明の図５の実施形態は、任意の所定のコールレートに対して、パケット損失エラーレートが増加するにつれて減少するリフレッシュインターバルを指定する。例えば、コールレートが７６８ｋｂｐｓ（図５の第４行）より大きいかまたはそれに等しい場合、リフレッシュインターバルは、エラーレートが１０％より大きいときであって、エラーレートが２９フレームに対して３％より小さいかまたはそれに等しいとき、６５フレームから減少する。すなわち、より多くのパケットが失われるにつれ、予測ドリフトの確率は増加し、それ故、符号化エンジン４０２は、パケット損失によるエラーの伝搬と持続性を除去するために、一フレーム当たりのリフレッシュマクロブロックを大きい割合でイントラ符号化する。
【００３５】
図６Ａは、本発明の一実施形態に従った１２個のマクロブロックから構成される代表的なフレーム６００を示している。説明目的のために、１２個のマクロブロックには１乃至１２のラベリングが施してある。本発明の一実施形態においては、リフレッシュインターバルは、次の特性を有する任意の整数である。一フレーム（ｎ）当たりにマクロブロックの数に分け与えられた所定の整数は整数の商を与えず（すなわち、所定の整数は一フレーム（ｎ）当たりのマクロブロック数に一様に分割できない）、所定の整数は、一フレーム（ｎ）当たりのマクロブロック数に分割されるとき、いずれかの係数を有しない（すなわち、所定の整数のいずれかの係数は一フレーム（ｎ）当たりのマクロブロック数に一様に分割可能ではない）。この特性は、符号化エンジン４０２がｒｉ個のフレームを処理した後、全てのマクロブロックの位置がイントラリフレッシュされ、ここで、ｒｉがフレッシュインターバルである、ことを保証する。このようにして、５、７および１１はｎ＝１２に一様に分け与えることができず、５、７、および１１はｎ＝１２に一様に分け与えることができる係数を有していないため、ｎ＝１２に対して、リフレッシュインターバルは、５、７または１１とすることが可能である。しかしながら、整数の集合｛１，２，３，４，６，１２｝からのいずれかの整数はｎ＝１２に一様に分け与えることができるため、リフレッシュインターバルは本発明における整数の集合｛１，２，３，４，６，１２｝からのいずれかの整数とすることができない。さらに、８は４および２の因数に分解することができ、それら両方はｎ＝１２に一様に分割することができるため、リフレッシュインターバルは８にすることはできない。同様に、９は３と３に因数分解することができ、３はｎ＝１２に一様に分割することができるため、リフレッシュインターバルは８にすることはできない。最後に、１０は５と２に因数分解することができ、２はｎ＝１２に一様に分割することができるため、リフレッシュインターバルは８にすることはできない。
【００３６】
図６Ｂは、本発明の一実施形態に従って、可能な５つのリフレッシュインターバルをもち、一フレーム当たりｎ＝１２個のマクロブロックについての５つの連続的なフレーム６０２を示している。説明を目的として、フレーム６０２のマクロブロックは線形シーケンスに配列されている。符号化エンジン４０２（図４）が５つの可能なリフレッシュインターバルを選択した後、符号化エンジン４０２は、次いで、リフレッシュイントラ符号化マクロブロックとして５つのマクロブロック毎にイントラ符号化される。換言すれば、ｒｉ−１＝４であるため、リフレッシュイントラ符号化マクロブロック間には４つのマクロブロックがある。例えば、符号化エンジン４０２は第１フレーム６０２ａの第１マクロブロックをイントラ符号化し、４つのマクロブロックをスキップし且つ第１フレーム６０２ａの６番目のマクロブロック６０６をイントラ符号化し、４つのマクロブロックをスキップし且つ第１フレーム６０２ａの１１番目のマクロブロック６０８をイントラ符号化し、そして４つのマクロブロックをスキップし且つ第２フレーム６０２ｂの４番目のマクロブロック６１０をイントラ符号化する。符号化エンジン４０２は、フレーム６０２ａ乃至６０２ｅにおいて、さらに後のフレーム（図示せず）において５番目のクロブロック毎に、残留マクロブロックの５番目のマクロブロック毎に連続的にイントラ符号化することを継続する。符号化エンジン４０２が、フレーム６０２ａ乃至６０２ｅのような５つの連続するフレームのマクロブロックをイントラ符号化した後、例えば、マクロブロック１乃至１２の各々のマクロブロックは一度イントラ符号化される。従って、符号化エンジン４０２がリフレッシュインターバルｒｉ＝５を選択するとき、符号化エンジン４０２は連続フレームの５番目のマクロブロック毎にイントラ符号化し、そして、５つの連続フレーム６０２を処理した後、一度どのフレーム内においても空間的位置に関して全てのマクロブロックをイントラ符号化する。
【００３７】
図６Ｃは、許容されない８つのリフレッシュインターバルをもつ、一フレーム当たりｎ＝１２のマクロブロックの３つの連続フレームを示している。本発明に従って、８つ（すなわち、ｒｉ＝８）のリフレッシュインターバルは許容されない。ｒｉ≠８である理由は符号化エンジン４０２がリフレッシュイントラ符号化マクロブロック間の７つ（すなわち、ｒｉ−１＝７）のマクロブロックをスキップすることであるためであり、それ故、全てのマクロブロックが少なくとも１度イントラ符号化されない。例えば、符号化エンジン４０２は、第１フレーム６１２ａの第１マクロブロック６１４と９番目のマクロブロック６１６および第２フレーム６１２ｂの５番目のマクロブロック６１８をイントラ符号化する。しかしながら、第１フレーム６１２ａにおける１番目のイントラ符号化マクロブロック６１４と９番目のイントラ符号化マクロブロック６１６と同等の第３フレーム６１２ｃにおける空間的位置を占める、第３フレーム６１２ｃの１番目のマクロブロック６２０と９番目のマクロブロック６２２を符号化エンジン４０２はイントラ符号化するため、第１フレーム６１２ａのイントラ符号化パターンは第３フレーム６１２ｃから開始して繰り返される。従って、８つのリフレッシュインターバルは、１番目、５番目および９番目のマクロブロックのみがイントラ符号化され、符号化エンジン４０２により処理されるフレームの数に依存しないため、マクロブロック１番目乃至１２番目が少なくとも一度イントラ符号化されることが可能ではない。
【００３８】
図７は、本発明の実施形態に従った、パケット交換ネットワークにおいてリフレッシュイントラ符号化マクロブロックを生成し且つ送信するための方法の段階についての代表的なフローチャートを示している。段階７０５において、少なくとも１つのビデオ捕捉装置３０８（図３）はビデオ画像を捕捉し、ビデオ信号を生成する。
【００３９】
次いで、段階７１０において、符号化エンジン４０２（図４）（また、送信のためにデータが処理されるとき、符号器と呼ばれる）は、ビデオ信号を受信し、マクロブロックの集合にビデオ信号の各々のフレームを送信する。段階７１５において、符号化エンジン４０２は、コールレートとパケットベースのエラーレートに基づく所定の整数の集合からリフレッシュインターバルを選択し、選択されたリフレッシュインターバルに基づくリフレッシュマクロブロックのパターンをイントラ符号化する。本発明の一実施形態においては、所定の整数の集合は記憶装置３０６（図３）に記憶される。本発明の他の実施形態においては、符号化エンジン４０２は、コールレートとパケットベースのエラーレートに基づいてリフレッシュインターバルを計算する。一フレーム当たりのマクロブロックの所定数を指定するビデオフォーマットが与えられる場合、所定の整数の集合は、一フレーム当たりのマクロブロックの所定数に分割されるときに整数の商を与える整数を除いて（すなわち、一フレーム当たりのマクロブロックの所定数に一様に分割可能な整数を除いて）、および、一フレーム当たりのマクロブロックの所定数に分割されるときに整数の商を与える１つまたはそれ以上の因数から成る整数を除いて（すなわち、一フレーム当たりのマクロブロックの所定数に一様に分割可能である１つまたはそれ以上の因数から成る整数を除いて）、全ての整数を含む。符号化エンジン４０２は、次いで、所定のマクロブロックがイントラ符号化であるかまたはインター符号化であるかを決定する選択基準に基づいて、各々のフレームの残留マクロブロックを符号化する。ビデオフレームは、インター符号化マクロブロック、イントラ符号化マクロブロック、またはイントラ符号化マクロブロックおよびインター符号化マクロブロックのいずれかの組み合わせから構成されることが可能である。
【００４０】
次に、マクロブロックパケット化エンジン４０４（図４）は、ディスクリートデータパケットを生成し、段階７２０においてディスクリートデータパケットに符号化されたマクロブロックを配置する。符号化されたマクロブロックは、ビデオフレームにおけるマクロブロックのラスタ走査の順序またはある他の所定の順序の状態に、または、参照によりここでの開示に含まれる  “ビデオエラー隠蔽のためのシステムおよび方法（Ｓｙｓｔｅｍ  ａｎｄ  Ｍｅｔｈｏｄ  ｆｏｒ  Ｖｉｄｅｏ  Ｅｒｒｏｒ  Ｃｏｎｃｅａｌｍｅｎｔ）”と題された２００２年８月２３日に出願された米国特許出願公開第１０／２２６，５０４号明細書に開示されているエラー隠蔽技術に従って、ディスクリートパケットに位置付けられることが可能である。しかしながら、本発明の範囲は、ネットワーク２０６（図２）における送信のために符号化マクロブロックをグループ化し且つパケット化するあらゆる方法を含む。また、マクロブロックパケット化エンジン４０４は、回線交換ネットワーク（図示せず）におけるトランスポートのための特定なフォーマットに符号化マクロブロックを配置するためのトランスポートエンジンとすることが可能である。最後に、段階７２５において、ディスクリートデータパケットは、ネットワーク２０６により遠隔のビデオ会議ステーション２０４への送信のために、通信バッファ４０６（図４）に送信される。
【００４１】
図８は、本発明に従った、パケット交換ネットワークにおいてビデオデータを受信するための方法の段階についての代表的なフローチャートを示している。段階８０５において、通信バッファ４０６（図４）は、ネットワーク２０６（図２）により遠隔のビデオ会議ステーション２０４（図２）から送信されるデータパケットを受信する。次いで、段階８１０において、マクロブロックパケット化エンジン４０４（図４）は、符号化マクロブロックに受信されたデータパケットをデパケット化する。必要に応じて、マクロブロックパケット化エンジン４０４はまた、符号化マクロブロックをオーダー（ｏｒｄｅｒ）し、ビデオフレームにおける正確な空間的配置の状態に符号化マクロブロックを配置する。
【００４２】
次いで、符号化エンジン４０２（図４）は段階８１５において符号化マクロブロックを復号化する。例えば、所定のマクロブロックがイントラ符号化マクロブロックである場合、符号化エンジン４０２はイントラ符号化マクロブロックを復号化し、新しく復号化されたビデオフレームにおいてそれを配置する。さらに、符号化エンジン４０２は復号化された残差を生成するためにインター符号化マクロブロックを復号化し、基準フレームマクロブロックにデータコンテンツに復号化された残差を加え、そして、新しく復号化されたビデオフレームにその結果を配置する。所定のマクロブロックはリフレッシュイントラ符号化マクロブロックとすることが可能であるかそうでないかである。
【００４３】
選択肢として、段階８２０において、符号化エンジン４０２（復号器として機能している）またはビデオデータパケット変換例えば、（ＲＴＰシーケンス連続番号）に関係するある他の機構は、もしあれば、どちらのマクロブロックがトランジットにおいて失われたかを決定し、１つまたはそれ以上のデータ再構築スキームを用いて、これらの損失マクロブロックを再構築する。動き評価／補償とデータ補間のようなデータ再構築スキームは、  “ビデオエラー隠蔽のためのシステムおよび方法（Ｓｙｓｔｅｍ  ａｎｄ  Ｍｅｔｈｏｄ  ｆｏｒ  Ｖｉｄｅｏ  Ｅｒｒｏｒ  Ｃｏｎｃｅａｌｍｅｎｔ）”と題された米国特許出願公開第１０／２２６，５０４号明細書に開示されている。最終的に、一旦、いずれかの損なわれたマクロブロックのデータコンテンツが再構築されると、それらのマクロブロックは、段階８２５において、表示装置３０２（図３）により表示される。
【００４４】
本発明について、上記のように、代表的な実施形態を参照して説明した。本発明の広い主旨および範囲から逸脱することなく、種々の変更がなされることが可能であることは、当業者には明らかであろう。さらに、本発明は特定のアプリケーションに対しておよび特定の環境における実行についてコンテキストにおいて説明したが、本発明の有用性はそれらに限定されるものではなく、本発明は多くのいずれかの環境および実行において優位性をもって用いられることができることを、当業者は理解するであろう。上記の説明および図示は、従って、制限の意味ではなく、むしろ例示としてのものである。
【図面の簡単な説明】
【００４５】
【図１】先行技術に従った、種々のビデオフォーマットに対する解像度とビットレートの要求についての表である。
【図２】本発明にしたがった、代表的なビデオ会議システムを示すブロック図である。
【図３】図２のビデオ会議システムの代表的なビデオ会議ステーションのブロック図である。
【図４】図３の画像処理エンジンの代表的な実施形態を示すブロック図である。
【図５】本発明の代表的な実施形態に従った、ＣＩＦフォーマット化ビデオフレームのためのコールレートおよびパケット損失エラーレートの関数としてのイントラ符号化マクロブロックリフレッシュインターバルについての表である。
【図６Ａ】本発明の一実施形態に従った、ｎ＝１２個のマクロブロックから構成される代表的なフレームを示す図である。
【図６Ｂ】５つの非許容リフレッシュインターバルをもつ、一フレーム当たりｎ＝１２個のマクロブロックから成る３つの代表的な連続フレームを示す図である。
【図６Ｃ】８つの許容リフレッシュインターバルをもつ、一フレーム当たりｎ＝１２個のマクロブロックから成る５つの代表的な連続フレームを示す図である。
【図７】本発明の一実施形態に従った、パケット交換ネットワークに亘ってリフレッシュイントラ符号化マクロブロックを生成し且つ送信するための方法の段階についての代表的なフローチャートである。
【図８】本発明の一実施形態に従った、パケット交換ネットワークに亘ってビデオデータを受信するための方法の段階についての代表的なフローチャートである。
【図１】
2004215252.tif 000003
【図２】
2004215252.tif 000004
【図３】
2004215252.tif 000005
【図４】
2004215252.tif 000006
【図５】
2004215252.tif 000007
【図６Ａ】
2004215252.tif 000008
【図６Ｂ】
2004215252.tif 000009
【図６Ｃ】
2004215252.tif 000010
【図７】
2004215252.tif 000011
【図８】
2004215252.tif 000012
【外国語明細書】
2004215252.tif 000013
2004215252.tif 000014
2004215252.tif 000015
2004215252.tif 000016
2004215252.tif 000017
2004215252.tif 000018
2004215252.tif 000019
2004215252.tif 000020
2004215252.tif 000021
2004215252.tif 000022
2004215252.tif 000023
2004215252.tif 000024
2004215252.tif 000025
2004215252.tif 000026
2004215252.tif 000027
2004215252.tif 000028
2004215252.tif 000029
2004215252.tif 000030
2004215252.tif 000031
2004215252.tif 000032
【図１】
2004215252.tif 000033
【図２】
2004215252.tif 000034
【図３】
2004215252.tif 000035
【図４】
2004215252.tif 000036
【図５】
2004215252.tif 000037
【図６Ａ】
2004215252.tif 000038
【図６Ｂ】
2004215252.tif 000039
【図６Ｃ】
2004215252.tif 000040
【図７】
2004215252.tif 000041
【図８】
2004215252.tif 000042