(57)【要約】【課題】符号化データのシンタックス及びセマンティクスのエラーを検出し、この符号化データの復号時にエラーの存在の有無を正確に検出できるようにする。【解決手段】エラー検出部１００は、符号化データに含まれているエラーの存在を示すためのフラグをチェックして、この符号化データにエラーが存在するか否かを検出し、エラーの存在情報や、エラーが存在する位置や範囲を示す情報、エラーが存在する位置での符号化タイプを示す種別情報などを検出情報２０として出力する。置換情報生成部２００は、エラーを訂正するための置換符号列と検出情報とに基づいて置換情報３０を生成する。この置換符号列には、エラーの存在を示すためのフラグを下ろす（０にする）値が含まれている。ビットストリーム置換部３００は、置換情報に基づいて符号化データのエラー訂正を行って、上記のフラグが０にセットされたエラーの無いビットストリーム５０を生成する。【選択図】図２
2007201721.tif 000002
【特許請求の範囲】
【請求項１】
動き補償予測を用いて符号化された符号化データが入力され、その入力された符号化データに設定されているエラーの存在を示すためのフラグをチェックして前記エラーが存在するか否かを検出し、前記エラーの存在情報、前記エラーが存在する位置を示す第１の位置情報、前記エラーが存在する範囲を示す第１の範囲情報、及び前記エラーが存在する位置での符号化タイプを示す種別情報のうちの少なくとも１つ以上をエラー検出情報として出力するエラー検出部と、
前記エラー検出情報に基づいて、前記エラーを訂正するための置換符号列であるとともに前記符号化データの前記フラグを前記エラーが存在しない旨を明示する情報に置換するための置換符号列を生成し、前記生成した置換符号列と前記エラー検出情報とに基づいて前記符号化データの置換すべき位置を示す第２の位置情報と前記符号化データの置換すべき範囲を示す第２の範囲情報を作成し、前記作成した第２の位置情報及び第２の範囲情報に前記置換符号列を加えた置換情報を生成する置換情報生成部と、
前記置換情報生成部の前記置換情報に基づき、前記符号化データを、前記検出されたエラーが訂正され、かつ前記エラーが存在しない旨を明示する情報が前記フラグに設定された符号化データに置換する置換部とを、
有する符号化データ生成装置。
【請求項２】
動き補償予測を用いて符号化された符号化データが入力され、その入力された符号化データに設定されているエラーを検出するとともに、前記符号化データに設定されているエラーの存在の有無を示すためのフラグをチェックして、前記エラーの存在情報及び前記フラグの設定情報をエラー検出情報として出力するエラー検出部と、
前記エラー検出情報に基づいて、前記エラーが存在しない旨が明示された前記フラグが設定されている前記符号化データに前記エラーが検出された場合に、前記符号化データの前記フラグを前記エラーが存在する旨を明示する情報に置換するための置換符号列を生成する置換情報生成部と、
前記符号化データの前記フラグを前記置換情報生成部で生成された置換符号列で置換して、前記エラーが存在する旨を明示する情報が前記フラグに設定された符号化データを生成する置換部とを、
有する符号化データ生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動き補償予測を用いて符号化された符号化データのエラーを検出して、エラー検出結果に基づく符号化データを生成する符号化データ生成装置に関する。
【背景技術】
【０００２】
動画像信号を伝送若しくは蓄積する場合、効率化のため圧縮符号化され圧縮動画像信号（以下、ビットストリームと呼ぶ）とすることが多い。動画像の圧縮符号化方式としては、ＭＰＥＧ（Moving Picture Experts Group,以下ＭＰＥＧなど ）の方式が標準化され、広く用いられている。このように、動画像信号をＭＰＥＧなどの方式で圧縮し、ビットストリームとして扱うことは、伝送系若しくは蓄積系の効率的な利用において非常に重要である。
【０００３】
ところで、上記のような圧縮を伴った符号化規格で圧縮符号化された圧縮符号化データにおいて、シンタックス（符号化データ列規則）のエラーが発生すると、シンタックスエラーの発生した圧縮符号化データの後に続く圧縮符号化データは、エラーを回避できる機能を持たない復号器では復号することはできない。ここで、シンタックスエラーとは、圧縮符号化データのパース（シンタックス要素を分解すること）を続けることができないエラーである。
【０００４】
例えば、ＭＰＥＧなどでは、シンタックスエラーはパースの過程でＶＬＣ（Variable Length Coding：可変長符号化）テーブルにない値が検出された場合や、マクロブロック内のブロック数が規定値と一致しない場合や、ピクチャ内のマクロブロック数が規定値を超えた場合などに検出される。シンタックスエラーは圧縮符号化装置、符号化変換装置、多重化装置にエラーが内在している場合や、圧縮符号化データの伝送や蓄積の途中で起きるエラーをリードソロモンなどのエラー訂正処理で修正できない場合や、パケットの損失が起きた場合などにおいて発生する可能性がある。
【０００５】
シンタックスエラーが検出された場合には、圧縮符号化装置は復号を続けるために次のような動作を行う。一般的な圧縮を伴った符号化データには同期コードが挿入されているため、シンタックスエラーが検出されたデータブロックを廃棄し、次のデータブロックを取得して復号化するというような動作を行う。上述のようにシンタックスエラーが発生した場合の処理方法として、エラーコンシールメントと呼ばれる処理がなされる。
【０００６】
また、上記のような圧縮を伴った符号化規格で圧縮符号化された圧縮符号化データにおいて、セマンティクス（コンテンツ意味内容記述ツール）のエラーが発生すると、圧縮符号化データを正しく符号化することは一般的にできない。また、セマンティクスエラーによっては復号装置に致命的な破綻が起きることもある。セマンティクスエラーとは圧縮符号化データのパースにおいて起きるエラーではなく、パースして得られた値が規格で定められている制限事項に違反しているために起きるエラーである。例えば、動画像圧縮符号化規格の１つであるＭＰＥＧでは、あるシンタックスエレメントの値が固定値に定義されているにもかかわらず、その固定値になっていないようなセマンティクスエラーがある。また、最新の動画像圧縮符号化規格であるＭＰＥＧ−４・ＡＶＣでは、プロファイル、レベルによって制限事項が細かく規定されている。そのため、ベースラインプロファイル・レベル２では規格準拠となる圧縮符号化データが、ベースラインプロファイル・レベル３では規格違反となるようなセマンティクスエラーもある。
【０００７】
セマンティクスエラーは圧縮符号化装置、符号化変換装置において誤った解釈によって符号化された場合に起きる可能性があり、圧縮符号化データの蓄積、伝送、取得過程において発生する場合もある。また、動画像圧縮符号化規格のプロファイル、レベルなどに精通していないユーザが多くの機種の間でデータの相互運用を行う場合に誤った使用をすることでセマンティクスエラーが発生する可能性も高い。また、セマンティクスエラーではないが、システムの運用上で符号化の規格に制限を加える必要が生じる場合もある。システム上でこのような所定の符号化条件を満たさないエラーは、該当するシステムではビットストリームを取り扱うことができない。上述のようにセマンティクスエラーが発生した場合の処理方法として、エラーコンシールメントと呼ばれる処理がなされる。
【０００８】
このようなエラーコンシールメント技術を用いた従来のシステムとして、下記の特許文献１に記載のシステムは、画像の性質に応じた適切なパケット廃棄補償を行い、復号画像の画質を向上させることができる動画像伝送を実現するものである。すなわち、符号化されているビデオパケットのパケット廃棄を検出し、既に復号されている画像信号により、廃棄パケットでエラーとなった信号を置き換えることによりコンシールメントし、復号信号を生成するシステムである。ゆえに、特許文献１に記載のシステムは、入力はエラーを含むことがあるビットストリームであり、出力はエラーを含むビットストリームが入力された場合はそのエラーを修復した復号画像信号である。
【０００９】
もう１つのエラーコンシールメント技術を用いた従来のシステムとして、下記の特許文献２に記載の装置は、エラー訂正の為に別途ディスク装置を必要とせず、映像データの特性を生かしたディスクアレイ装置を備える映像送出を実現するものである。すなわち、入力映像データを分割してビットストリームとして蓄積し、入力映像データのビットストリームにエラーが発生した場合に、あらかじめ入力映像データより高圧縮されたコンシールメント用ビットストリームを蓄積しておき、コンシールメント用ビットストリームを復号及び再符号化して入力映像データのエラー発生ビットストリームと置き換えるものである。ゆえに、特許文献２の装置は、入力はエラーが発生する可能性のあるビットストリームであり、出力はエラーが発生した場合は、そのエラーが修正されたビットストリームである。
【００１０】
さらに、エラーコンシールメント技術を用いた従来のシステムとして、下記の特許文献３に記載の回路では、実時間上で符号化変換を必要とするようなファクシミリ装置において、符号化直後の正常な１ライン分の符号化情報を一時蓄積できるような符号バッファにより、符号エラーを検出したときに、バッファにある正常な１ライン分の符号化情報を出力することによってコンシールメントするものである。
【００１１】
一方、符号化データ内にエラーを明示することも可能である。例えば、符号化データにエラーを明示するフラグがシンタックスに存在する場合の一例として、図８に示すＭＰＥＧ−２ ＴＳ（Transport Stream：トランスポートストリーム）パケットが挙げられる。図８には、ＭＰＥＧ−２ ＴＳパケットの構造が図示されている。図８に図示されているフィールド（２）（図８中では丸付き数字で記す）は、１ビットのトランスポートエラーインジケータ（ＴＥＩ：Transport Error Indicator）と呼ばれており、ＴＥＩビットを１とすることによって、このパケットにエラーが含まれていることが明示される。なお、他のフィールドに関する詳細な説明は省略する。
【００１２】
図８に示すように、符号化データと共にシンタックスエラーの有無を明示するビットが伝送されるようなパケット構造は従来より知られており、例えば、下記の特許文献４、５にも開示されている。
【特許文献１】特開平７−１１１６５４号公報（要約書）
【特許文献２】特許第３４８２９７１号公報（特許請求の範囲）
【特許文献３】特開昭６３−２９２８７３号公報（特許請求の範囲）
【特許文献４】特開２００４−５６１６９号公報（図２、段落０００３）
【特許文献５】特開２００５−２６９９０号公報（図２、段落００２０−００２２）
【発明の開示】
【発明が解決しようとする課題】
【００１３】
しかしながら、以上に述べた、エラーコンシールメント技術を用いたシステム若しくは装置においては次のような課題がある。特許文献１における動画像伝送システムは、エラーコンシールメント後の出力が復号された画像信号であるため、エラー訂正後には、動画像信号をビットストリームとして通信路などを使って伝送することができない。よって、エラーコンシールメント機能を持たない復号器においては、エラーを持つビットストリームの再生が正しくできない。
【００１４】
特許文献２における映像送出装置は、出力はエラーコンシールメントされた入力映像データのビットストリームであるが、あらかじめコンシールメント用のビットストリームを入力映像データのビットストリームごとに蓄積媒体の中に用意しておく必要があり、入力映像データのビットストリームの増加と共にコンシールメント用ビットストリームが増加し、また、蓄積媒体を用いるため、任意のビットストリームを通信路を使って伝送するような場合に適用することができない。特許文献３におけるファクシミリのエラー置換回路では、コンシールメント用の符号化情報として直前の正常な１ライン分を記憶するが、動き補償予測符号化を用いる動画像の圧縮符号化ビットストリームにおいては、直前の符号化情報だけでコンシールメントすると、再生画像の画質が大きく劣化する。
【００１５】
一方、ＭＰＥＧ−２ ＴＳパケットの受信時に訂正不能なエラーを検出した場合などにおいて、このＭＰＥＧ−２ ＴＳパケットのＴＥＩビットのフラグを立てる（エラーの存在を示す）ことにより、エラーの存在を明示することが可能である。これにより、このＭＰＥＧ−２ ＴＳパケットの復号時にフラグが立っていることを検出して、事前にエラーの存在を認知した処理を行うことが可能となる。
【００１６】
しかしながら、復号時におけるエラー処理は任意であり、すなわち、復号時にエラーに対する処理が行われない場合もある。このように、復号時にエラーに対する処理が行われない場合には、復号後に再生されるビデオやオーディオに乱れが生じるなど、正しく再生されないことになる。
【００１７】
さらに、ＭＰＥＧ−２ ＴＳパケットにエラーが存在している場合でも、ＴＥＩビットのフラグを立てる処理は任意である。したがって、エラーが存在しているにもかかわらず、ＴＥＩビットのフラグが０に設定されている場合もある。このような場合には、復号時にエラーの存在を事前に認知することができず、この場合も同様に、復号後に再生されるビデオやオーディオに乱れが生じるなど、正しく再生されないことになる。
【００１８】
本発明は、上記従来例の問題点に鑑み、動き補償予測を用いて符号化された符号化データのシンタックスエラー及び／又はセマンティクスエラーを検出し、この符号化データの復号時に、エラーの存在の有無を正確に検出できるようにする符号化データ生成装置を提供することを目的とする。
【課題を解決するための手段】
【００１９】
本発明は上記目的を達成するために、動き補償予測を用いて符号化された符号化データが入力され、その入力された符号化データに設定されているエラーの存在を示すためのフラグをチェックして前記エラーが存在するか否かを検出し、前記エラーの存在情報、前記エラーが存在する位置を示す第１の位置情報、前記エラーが存在する範囲を示す第１の範囲情報、及び前記エラーが存在する位置での符号化タイプを示す種別情報のうちの少なくとも１つ以上をエラー検出情報として出力するエラー検出部と、
前記エラー検出情報に基づいて、前記エラーを訂正するための置換符号列であるとともに前記符号化データの前記フラグを前記エラーが存在しない旨を明示する情報に置換するための置換符号列を生成し、前記生成した置換符号列と前記エラー検出情報とに基づいて前記符号化データの置換すべき位置を示す第２の位置情報と前記符号化データの置換すべき範囲を示す第２の範囲情報を作成し、前記作成した第２の位置情報及び第２の範囲情報に前記置換符号列を加えた置換情報を生成する置換情報生成部と、
前記置換情報生成部の前記置換情報に基づき、前記符号化データを、前記検出されたエラーが訂正され、かつ前記エラーが存在しない旨を明示する情報が前記フラグに設定された符号化データに置換する置換部とを、
有する符号化データ生成装置が提供される。
【００２０】
また、本発明は上記目的を達成するために、動き補償予測を用いて符号化された符号化データが入力され、その入力された符号化データに設定されているエラーを検出するとともに、前記符号化データに設定されているエラーの存在の有無を示すためのフラグをチェックして、前記エラーの存在情報及び前記フラグの設定情報をエラー検出情報として出力するエラー検出部と、
前記エラー検出情報に基づいて、前記エラーが存在しない旨が明示された前記フラグが設定されている前記符号化データに前記エラーが検出された場合に、前記符号化データの前記フラグを前記エラーが存在する旨を明示する情報に置換するための置換符号列を生成する置換情報生成部と、
前記符号化データの前記フラグを前記置換情報生成部で生成された置換符号列で置換して、前記エラーが存在する旨を明示する情報が前記フラグに設定された符号化データを生成する置換部とを、
有する符号化データ生成装置が提供される。
【発明の効果】
【００２１】
本発明は、上記の構成を有しており、動き補償予測を用いて符号化された符号化データの復号時に、エラーの存在の有無を正確に検出できるようになり、エラー発生によるビデオやオーディオの乱れを防止することができるようになる。
【発明を実施するための最良の形態】
【００２２】
以下、図面を参照して本発明の実施の形態について説明する。
【００２３】
＜第１の実施の形態＞
まず、本発明の第１の実施の形態について説明する。図１は、本発明の実施の形態に係る符号化データ生成装置として中継器が用いられる伝送システムを示すブロック図である。図１の伝送システムは、ビットストリーム生成装置５００と、本発明に係る符号化データ中継器６００と、中継先である再生装置７００の接続例を示している。なお、図１に図示されている伝送システムは、本発明の第１〜第４の実施の形態に共通する構成である。
【００２４】
ビットストリーム生成装置５００は、蓄積媒体５１０にある画像情報を符号化器５２０によって符号化ビットストリームとし、送信器５３０によって伝送路１００１に送信するように構成されている。
【００２５】
また、符号化データ中継器６００は、伝送路１００１を介してビットストリーム生成装置５００から受信したビットストリームにエラーがある場合には中継器６１０でビットストリームを修正し、修正されたビットストリームを伝送路１００２を介して中継先の再生装置７００へ送信するように構成されている。
【００２６】
また、中継先である再生装置７００は、伝送路１００２を介して符号化データ中継器６００から送信されたビットストリームを受信器７１０により受信し、復号器７２０で復号するように構成されている。
【００２７】
この経路において、送信器５３０から伝送されるビットストリームが、伝送路１００１の影響によりエラーを持っていると仮定すると、本発明による中継器６１０はエラーを検証し修正することが可能であるので、エラーを持っているビットストリームに対するエラーコンシールメント能力を持たない復号器７２０においても、ビットストリームの再生が可能となる。また、入力ビットストリームを基にしたエラー訂正情報をあらかじめ用意する必要が無く、また、圧縮符号化コンシールメント用のデータ蓄積を必要とせずにシンタックスエラー訂正が可能であり、また、圧縮符号化ビットストリームのエラー訂正を行う伝送システムを実現することができる。
【００２８】
中継器６１０はシンタックスエラー訂正部及びセマンティクスエラー訂正部のいずれか１つ又は両方を有している。なお、以降では、シンタックスエラー及び／又はセマンティクスエラーを単にエラーと呼ぶことにする。また、中継器６１０が有しているシンタックスエラー訂正部及び／又はセマンティクスエラー訂正部をまとめて単にエラー訂正部と呼ぶことにする。
【００２９】
図２に本発明の第１の実施の形態におけるエラー訂正部のブロック図を示す。図２に示すとおり、エラー訂正部は、エラー検出部１００と、復号部４００と、置換情報生成部２００と、ビットストリーム置換部３００とから構成される。なお、以下では、圧縮符号化ビットストリームを単にビットストリームと呼ぶ。図２において、まず、入力としてビットストリーム１０がエラー検出部１００に入力される。エラー検出部１００は、エラーの存在を示すためのフラグ（例えばＴＥＩビットのフラグ）が立っているか否かをチェックすることによって、ビットストリーム１０にエラーが含まれているかどうかを検出し、エラーの有無、エラーの発生位置などを検出情報２０として出力する。
【００３０】
また、復号部４００にも同様に、入力ビットストリーム１０が供給される。復号部４００は、この入力ビットストリーム１０を復号し、復号時に発生するヘッダ情報などを符号化パラメータ６０として出力し、復号して構成された画像を復号画像７０として出力する。なお、復号部４００から出力される符号化パラメータ６０、復号画像７０は、置換情報生成部２００に供給される。また、エラー検出部１００から復号部４００に渡された検出情報２０も置換情報生成部２００に供給される。
【００３１】
置換情報生成部２００は、復号部４００から供給された検出情報２０に基づいて、あらかじめ用意されたいくつかの符号列の中から、入力ビットストリーム１０のエラーを修正するための置換符号列を選択する。そして、置換情報生成部２００は、選択された置換符号列と検出情報２０とに基づいて、置換すべき入力ビットストリーム１０の位置、範囲及び置換符号列を定め、これらの情報を置換情報３０として出力する。ただし、何らかの外部入力４０により置換情報３０が求められてもよい。
【００３２】
このとき、エラーを修正するための置換情報３０には、エラーの存在を示すためのフラグ位置のビットを下ろす（すなわち、例えばＴＥＩの位置に相当するビットを０にする）ための位置情報及び置換符号列が含まれている。なお、置換符号列のエラーの存在を示すためのフラグ位置のビットは、あらかじめエラーが存在していないことを示す値に設定されていることが望ましい。
【００３３】
ビットストリーム置換部３００は、エラー検出部１００から供給される入力ビットストリーム１０と、置換情報生成部２００から供給される置換情報３０とに基づいて、エラーが検出された符号列を置換符号列に置換することによって、エラーの無いビットストリーム５０を出力する。このエラーの無いビットストリーム５０は、上述の置換情報３０によってエラーの存在を示すためのフラグが下ろされるように符号の置換が行われ、その結果、ビットストリーム５０にはエラーが存在しないことが明示的に示される。
【００３４】
次に、図３を参照しながら、図２に図示されているエラー検出部１００の動作について詳細に説明する。図３は、本発明の第１の実施の形態におけるエラー検出部の動作の一例を示すフローチャートである。なお、図３に図示されているフローチャートは、エラー検出部１００における処理に加えて、処理後に出力される情報に関しても模式的に図示されている。
【００３５】
図３において、エラー検出部１００は、まず、入力ビットストリーム１０をパースしながら（ステップＳ１０）、この入力ビットストリーム１０のエラーを検出する（ステップＳ１１）。このとき、エラー検出部１００は、入力ビットストリーム１０に含まれるエラーの存在を示すためのフラグをチェックする。
【００３６】
エラーの検出判定（ステップＳ１２）において、入力ビットストリーム１０がエラーを含んでいる場合（すなわち、入力ビットストリーム１０に含まれているエラーの存在を示すフラグが立っている場合）、エラーが存在することを示すフラグと、エラーが発生したビットストリーム１０の位置情報、Reversible VLCのようにビットストリームを逆からパース可能な処理を用いた場合には、シンタックスエラーが発生している範囲情報、例えばＭＰＥＧ−４  ＡＶＣの規格ではアクセスユニット単位、スライス単位、マクロブロック単位でのシンタックスエラー発生や、イントラ予測、インタ予測などの符号化タイプを示す種別情報を生成し（ステップＳ１３）、検出情報２０として出力する（ステップＳ１５）。
【００３７】
他方、入力ビットストリーム１０がエラーを含まない場合（すなわち、入力ビットストリーム１０に含まれているエラーの存在を示すフラグが下りている場合）、エラーが存在しないことを示すフラグ（エラー非存在フラグ）を生成し（ステップＳ１４）、このエラー非存在フラグを検出情報２０として出力する（ステップＳ１５）。
【００３８】
ステップＳ１１、ステップＳ１２では、例えば、連続していくつかのマクロブロックが欠落している場合、ピクチャサイズに対するマクロブロックの数は固定であるため、１ピクチャのパースが終わった時点で、マクロブロックの数が一致しなければシンタックスエラーであると判定される。ゆえに、この場合の検出情報２０は、エラーの発生がマクロブロックで起きたことを示す種別情報、マクロブロックの欠落した位置情報（すなわちエラーの発生した箇所のアドレスや、Reversible VLCなどのビットストリームを逆からパース可能な処理を用いた場合は欠落したマクロブロックのアドレスの範囲情報）となる。
【００３９】
また、例えば、ＭＰＥＧ−４  ＡＶＣの符号化方式において、B-Sliceを含むストリームのシーケンスパラメータセットのプロファイル値がBaseline Profileを示す値となっている場合はセマンティクスエラーとなり、シーケンスパラメータセットの単位が種別情報となり、シーケンスパラメータセットの存在するアドレスが位置情報となる。また、例えば動きベクトルが符号化方式のレベルで制限されている値を超えている場合には、動きベクトルの単位が種別情報となり、この動きベクトルが存在するマクロブロックアドレスが位置情報となる。
【００４０】
次に、図４を参照しながら、図２に図示されている復号部４００の動作について詳細に説明する。図４は、本発明の第１の実施の形態における復号部の動作の一例を示すフローチャートである。なお、図４に図示されているフローチャートは、復号部４００における処理に加えて、処理後に出力される情報に関しても模式的に図示されている。
【００４１】
図４において、復号部４００は、まず、入力されるビットストリーム１０を復号する（ステップＳ４０）。このとき、検出情報２０のエラー発生位置情報、範囲情報、及び種別情報から復号画像７０を生成できるかどうかを判定する（ステップＳ４１）。エラーの発生により、復号画像７０が生成できない場合はエラーが発生している箇所に対してエラーコンシールメントする（ステップＳ４４）。エラーコンシールメントは、周辺画像の画素値を用いて欠落部分の画素を補間することによって行われる。例えば、マクロブロックに欠落が発生している場合は、マクロブロック周辺の画素値より補間する方法を用いてエラーコンシールメントが行われ、アクセスユニット単位で欠落している場合は、前の画像からの複製画像により補間する方法などを用いてエラーコンシールメントが行われる。そして、復号部４００は、エラーコンシールメントが行われた画像を復号画像７０として生成する（ステップＳ４３）。また、復号画像が生成できた場合には、置換情報生成部２００に復号画像７０を出力する。
【００４２】
一方、復号部４００は復号画像７０のみではなく、エラーの無い箇所においては、付加情報として、復号時に発生する符号化パラメータ６０を生成することもできる（ステップＳ４２）。復号時に発生する符号化パラメータ６０の例としては、シーケンスやピクチャのヘッダ情報や、動きベクトル、マクロブロックタイプといった再符号化の簡略化に用いることができるような情報が挙げられる。なお、復号部４００から出力される符号化パラメータ６０や復号画像７０は、置換情報生成部２００に出力される。また、図４では不図示だが、復号部４００は、エラー検出部１００から供給された検出情報２０も置換情報生成部２００に供給する動作を行う。
【００４３】
次に、図５を参照しながら、図２に図示されている置換情報生成部２００の動作について詳細に説明する。図５は、本発明の第１の実施の形態における置換情報生成部の動作の一例を示すフローチャートである。なお、図５に図示されているフローチャートは、置換情報生成部２００における処理に加えて、処理後に出力される情報に関しても模式的に図示されている。
【００４４】
置換情報生成部２００は、検出情報２０に基づき、上述した符号化パラメータ６０を用いない場合は、復号画像７０を用いて再符号化を行う（ステップＳ５１）。一方、符号化パラメータ６０を用いる場合には、置換情報生成部２００は、符号化パラメータ６０に基づき再符号化パラメータを生成する（ステップＳ５０）。ここでの再符号化パラメータは、復号画像７０の再符号化すべき位置若しくは範囲である。また、エラーの無い復号画像７０の再符号化を簡略化するために、ヘッダ情報、動きベクトルなどの符号化パラメータ６０を用いる場合には、復号部４００から出力された符号化パラメータ６０に基づいて再符号化パラメータを求め、この再符号化パラメータを用いることもできる。そして、置換情報生成部２００は、再符号化パラメータを用いて入力ビットストリーム１０の復号画像７０を再符号化する（ステップＳ５１）。なお、再符号化パラメータは、外部入力４０によって決められてもよい。
【００４５】
置換情報生成部２００は、以上のように再符号化したビットストリームに加えて、エラーの存在を示すためのフラグを下ろすための値を置換符号列とし、この置換符号列と検出情報２０とにより、置換すべき入力ビットストリーム１０の位置情報、範囲情報を含む置換情報３０を生成する（ステップＳ５２）。
【００４６】
以上説明したように、本発明の第１の実施の形態によれば、動き補償予測された動画像符号化ビットストリームに含まれているエラーを示すためのフラグが立っている場合に、復号画像を用いて再符号化を行うため、シンタックスエラーが発生した部分の動き補償予測の再計算が可能である。よって、置換符号列をあらかじめ用意しておく方式や、単に直前の正常な符号列をコピーすることでエラーコンシールメントを行うような方式に比べ、エラーコンシールメント後のビットストリームの再生画像において画質を向上させることが可能である。また、符号化ビットストリームのエラーを修正する際に用いる置換符号列が、エラーの存在を示すためのフラグ（例えば、ＴＥＩビットのフラグ）を下ろす（０にする）ように設定されており、この置換符号列を用いてエラーに修正を行うことで、エラーが存在しないことを明示的に示し、復号時にエラー発生によるビデオやオーディオの乱れを防止することが可能となる。
【００４７】
＜第２の実施の形態＞
次に、本発明の第２の実施の形態について説明する。図６は、本発明の第２の実施の形態におけるエラー訂正部のブロック図である。図６に示すとおり、本発明の第２の実施の形態におけるエラー訂正部は、エラー検出部１００と、置換情報生成部２０１と、ビットストリーム置換部３００とから構成される。なお、ビットストリーム置換部３００は、動作及び接続関係共に、第１の実施の形態におけるビットストリーム置換部３００（図２に図示）と同一である。
【００４８】
また、図６に示すエラー検出部１００の動作は、第１の実施の形態におけるエラー検出部（図２及び図３に図示）と同一であるが、検出情報２０を置換情報生成部２０１に送る点において相違している。
【００４９】
まず、図６に図示されているエラー訂正部の全体的な動作について説明する。図６において、入力として入力ビットストリーム１０がエラー検出部１００に入力される。エラー検出部１００は、エラーの存在を示すためのフラグ（例えばＴＥＩビットのフラグ）が立っているか否かをチェックすることによって、ビットストリーム１０にエラーが含まれているかどうかを検出し、エラーの有無、エラーの発生位置などを検出情報２０として置換情報生成部２０１に出力する。
【００５０】
置換情報生成部２０１は、エラー検出部１００から供給された検出情報２０に基づいて、あらかじめ用意されたいくつかの符号列の中から、入力ビットストリーム１０のエラーを修正するための置換符号列を選択する。そして、置換情報生成部２０１は、選択された置換符号列と検出情報２０とに基づいて、置換すべき入力ビットストリーム１０の位置、範囲及び置換符号列を定め、これらの情報を置換情報３０として出力する。ただし、何らかの外部入力４０により置換情報３０が求められてもよい。
【００５１】
このとき、エラーを修正するための置換情報３０には、上述の本発明の第１の実施の形態と同様に、エラーの存在を示すためのフラグ位置のビットを下ろす（すなわち、例えばＴＥＩの位置に相当するビットを０にする）ための位置情報及び置換符号列が含まれている。なお、置換符号列のエラーの存在を示すためのフラグ位置のビットは、あらかじめエラーが存在していないことを示す値に設定されていることが望ましい。
【００５２】
ビットストリーム置換部３００は、エラー検出部１００から供給される入力ビットストリーム１０と、置換情報生成部２０１から供給される置換情報３０とに基づいて、エラーが検出された符号列を置換符号列に置換することによって、エラーの無いビットストリーム５０を出力する。このエラーの無いビットストリーム５０は、上述の置換情報３０によってエラーの存在を示すためのフラグが下ろされるように符号の置換が行われ、その結果、ビットストリーム５０にはエラーが存在しないことが明示的に示される。
【００５３】
次に、図７を参照しながら、図６に図示されている置換情報生成部２０１の動作について詳細に説明する。図７は、本発明の第２の実施の形態における置換情報生成部の動作の一例を示すフローチャートである。なお、図７に図示されているフローチャートは、置換情報生成部２０１における処理に加えて、処理後に出力される情報に関しても模式的に図示されている。
【００５４】
置換情報生成部２０１は、エラー検出部１００から受けた検出情報２０に基づき、入力ビットストリーム１０において発生しているシンタックスエラーの種別や位置に従ってあらかじめ用意された符号列の中から、置換に用いる置換符号列を選択する（ステップＳ２０）。そして、置換情報生成部２０１は、選択された置換符号列と検出情報２０とに基づいて、入力ビットストリーム１０を置換すべき位置、範囲を決定し、選択された置換符号列に加えて、エラーの存在を示すためのフラグを下ろすための値を合わせた情報を、置換情報３０として生成する（ステップＳ２１）。
【００５５】
例えば検出情報２０の種別情報がマクロブロックであり、いくつかのマクロブロックが欠落しており、欠落したマクロブロックの前後のマクロブロックタイプがNot Codedでdmv（差分動きベクトル）が０であるような場合、欠落した箇所のマクロブロックタイプも同様にNot Codedでdmvが０であると判定され、あらかじめ用意しておいたマクロブロックのNot Codedを示すフラグが欠落したマクロブロックの置換符号列となる。この場合、置換情報生成部２０１は、置換符号列の欠落したマクロブロック個数分を置換情報３０として生成する。
【００５６】
また、例えば、検出情報２０の種別情報がアクセスユニットであり、いくつかのアクセスユニットが欠落している場合は、NoMC・Not Codedのフラグが欠落したアクセスユニットの置換符号列となる。この場合、置換情報生成部２０１は、置換符号列の、欠落したアクセスユニット個数分を置換情報３０として生成する。また、入力ビットストリーム１０の符号量と一致させるために、置換情報３０の置換符号列にスタッフィングバイトを付加することもできる。
【００５７】
また、例えば、ＭＰＥＧ−４  ＡＶＣの符号化方式において、B-Sliceを含むストリームのシーケンスパラメータセットのプロファイル値がBaseline Profileを示す値となっている場合は、置換情報生成部２０１は、置換符号列としてプロファイル値におけるMain Profileを示す値を選択し、置換情報３０の置換符号列とする。また、入力ビットストリーム１０の符号量と一致させるために、置換情報３０の置換符号列にスタッフィングバイトを付加することもできる。
【００５８】
また、エラー検出部１００において、セマンティクスエラーを検出せず、入力ビットストリーム１０の同一シンタックスを置換情報生成部２０１で常に同じ符号列を用いて置換する方式も考えられる。例えば、受信側となる復号器が、ビットストリームのヘッダにあるレベル値を見て、一定以上のレベル値を持つビットストリームは再生しないという制約を持つとする。ところが、上記の復号器は、符号化規格上で一定以上のレベル値でしか本来再生できない画像サイズも再生できる能力を持つとする。このとき、レベル値だけを常に一定レベル以下に書き換えれば、上記の復号器でビットストリームの再生が可能となる。そこで、エラー検出部１００でセマンティクスのエラーを検出せず、置換情報生成部２０１でこの復号器が対応しているレベル値を置換符号列として用意しておき、入力ビットストリーム１０が入ってきたときに、入力ビットストリーム１０のヘッダのレベル値を用意したレベル値の符号列で置き換えるだけで、上記の復号器でのビットストリームの再生が可能となる。
【００５９】
なお、ここで、置換情報生成部２０１は、置換符号列の選択において、外部入力４０によって供給された置換符号列を選択してもよい。このようにして外部入力４０で制御することで、意図しない再生画像が出力されるのを防ぐことができる。
【００６０】
以上説明したように、本発明の第２の実施の形態によれば、動き補償予測された動画像符号化ビットストリームに含まれているエラーを示すためのフラグが立っている場合に、あらかじめエラーを置換するための符号列を用意しておくことで、エラーコンシールメントするために復号画像を再符号化する場合に比べ、高速なエラーコンシールメント処理を実現できる。また、単に直前の正常な符号列をコンシールメント用の符号列として用いる場合に比べ、エラーコンシールメント後のビットストリームにおいて、再生画像の画質を向上させることができる。また、符号化ビットストリームのエラーを修正する際に用いる置換符号列が、エラーの存在を示すためのフラグ（例えば、ＴＥＩビットのフラグ）を下ろす（０にする）ように設定されており、この置換符号列を用いてエラーに修正を行うことで、エラーが存在しないことを明示的に示し、復号時にエラー発生によるビデオやオーディオの乱れを防止することが可能となる。
【００６１】
＜第３の実施の形態＞
次に、本発明の第３の実施の形態について説明する。上述の本発明の第１及び第２の実施の形態では、エラーの存在を示すためのフラグをチェックすることによってエラーを検出し、エラーが存在する場合には、エラーを修正するとともに置換文字列によってエラーの存在を示すためのフラグを下ろすようにすることで、復号時に、事前にエラーの存在を認知した処理を行えるようにしている。しかしながら、フラグを立てる処理は任意であるため、必ずしもエラー発生時にこのフラグが立っているとは限らない。
【００６２】
そこで、本発明の第３の実施の形態では、エラー検出部１００が入力ビットストリームに関してエラーの検出処理を行って（図３のステップＳ１１に対応）、エラーの有無、エラーの位置情報や範囲情報を含む検出情報２０を生成し、エラーが存在する場合には、入力ビットストリーム１０に対して、エラーの存在を示すためのフラグ（例えば、ＴＥＩビットのフラグ）を立てる（１にする）置換符号列によって符号の置換処理を行うことによって、ビットストリーム５０を生成する。
【００６３】
これにより、入力ビットストリーム１０のエラーが修正されるわけではないが、エラーが存在していることが示されていないエラー発生箇所に対して、明示的にエラーの存在を示すためのフラグが立てられるようになり、出力されるビットストリーム５０の復号時に、エラーの有無及びエラー発生箇所を事前に、かつ正確に認知することが可能となり、復号時にエラー発生によるビデオやオーディオの乱れを防止することが可能となる。
【００６４】
＜第４の実施の形態＞
次に、本発明の第４の実施の形態について説明する。本発明の第４の実施の形態では、本発明の第１〜第３の実施の形態におけるセマンティクスエラー検出において、例えば、システム運用上で、標準化された符号化規格の符号化条件に制限を加える場合に適用される。例えばエラー検出部１００は、制限セマンティクスエラー検出部として動作し、入力となるビットストリームに対してあるシステムの制限事項を満足するかどうかを検出する。そして、システムの制限事項を満足しない場合に、エラー検出部１００は、上述の本発明の第１〜第３の実施の形態と同様の検出情報２０を出力する。その後の動作については、エラーを所定の符号化条件を満足しないエラーと読み替え、上述の本発明の第１〜第３の実施の形態と同様の動作が行われる。
【００６５】
また、本発明の第４の実施の形態では、標準化されている符号化方式を満足していても、運用上の理由で、符号化方式の制限に更に細かい制限を加えた、規格を満たさないエラーを持つビットストリームを修正することができる。例えば、ＭＰＥＧ−２の規格は満たすが、あるシステムで制限されているＭＰＥＧ−２ビットストリームの予約ビット値を満たさないようなビットストリームは、該当するシステムで取り扱うことができないが、本発明の第４の実施の形態によれば、該当するシステムの制限事項を満足するようにビットストリーム内の予約ビット値を修正するため、該当するシステムで取り扱うことができるビットストリームを生成可能である。
【００６６】
また、例えばＭＰＥＧ−２の規格を満たすOpen GOPで符号化されたビットストリームがあるとする。一方、あるシステムでは制限されているＭＰＥＧ−２ビットストリームはClosed GOPで符号化されていなければならないという制限事項があるとする。この場合、該当するシステムの復号器で再生することはできないが、本発明の第４の実施の形態によれば、該当するシステムの制限事項を満足するように、ＭＰＥＧ−２のGOPに符号化順においてI-pictureの直後にある最初のB-pictureを双方向予測から、片方向予測に変更して再符号化する。このようにして、生成されたビットストリームはClosed GOPを満足するため、該当するシステムの復号器で再生することができるビットストリームを生成可能である。
【産業上の利用可能性】
【００６７】
本発明は、動き補償予測を用いて符号化された符号化データの復号時に、エラーの存在の有無を正確に検出できるようにし、エラー発生によるビデオやオーディオの乱れを防止することができるようにするという効果を有しており、動き補償予測を用いて符号化された符号化データのエラーを検出して、エラー検出結果に基づく符号化データを生成する符号化データ処理技術に適用可能である。
【図面の簡単な説明】
【００６８】
【図１】本発明の実施の形態に係る符号化データ生成装置として中継器が用いられる伝送システムを示すブロック図である。
【図２】本発明の第１の実施の形態におけるエラー訂正部の構成例を示すブロック図である。
【図３】本発明の第１の実施の形態におけるエラー検出部の動作の一例を示すフローチャートである。
【図４】本発明の第１の実施の形態における復号部の動作の一例を示すフローチャートである。
【図５】本発明の第１の実施の形態における置換情報生成部の動作の一例を示すフローチャートである。
【図６】本発明の第２の実施の形態におけるエラー訂正部の構成例を示すブロック図である。
【図７】本発明の第２の実施の形態における置換情報生成部の動作の一例を示すフローチャートである。
【図８】従来の技術におけるＭＰＥＧ−２ ＴＳパケットの構造を示す図である。
【符号の説明】
【００６９】
１００  エラー検出部
２００、２０１  置換情報生成部
３００  ビットストリーム置換部
４００  復号部
５００  ビットストリーム生成装置
５１０  蓄積媒体
５２０  符号化器
５３０  送信器
６００  符号化データ中継器
６１０  中継器
７００  再生装置
７１０  受信器
７２０  復号器
１００１、１００２  伝送路
【図１】
2007201721.tif 000003
【図２】
2007201721.tif 000004
【図３】
2007201721.tif 000005
【図４】
2007201721.tif 000006
【図５】
2007201721.tif 000007
【図６】
2007201721.tif 000008
【図７】
2007201721.tif 000009
【図８】
2007201721.tif 000010