(57)【特許請求の範囲】
【請求項１】
フレームを構成する画素の画素値を指示する信号を適応ダイナミックレンジコーディング（ＡＤＲＣ）処理を用いて符号化したデータを復号する復号方法において、
少なくとも２つ以上のバッファにおいて、所望の伝送速度及びデータセグメントの格納に用いられる該少なくとも２つ以上のバッファの長さに基づいた、符号化ビットとして使用可能なビットの数を超えないようにブロック内の画素のダイナミックレンジの大きさに応じて異なる量子化ビットを割り当てるために選択された複数の閾値のセットに基づいて符号化されたデータセグメントを有する符号化データを受信するステップと、
バッファ内において、上記符号化データが破損または欠落しているかを判定するステップと、
上記符号化データが破損または欠落している場合、破損または欠落している符号化データを格納しているバッファ以外のバッファに格納されている符号化データを復号し、上記符号化データが破損または欠落していない場合、上記バッファ内において、該符号化データを復号するステップとを有する復号方法。
【請求項２】
プロセッサを備えるデジタル信号処理装置において、
上記プロセッサは、
上記信号をデータセグメントに分割し、
上記データセグメントのそれぞれを符号化時の作業領域である少なくとも２つ以上のバッファ内に格納し、
所望の伝送速度及び上記データセグメントの格納に用いられる上記少なくとも２つ以上のバッファの長さに基づいて、符号化ビットとして使用可能なビットの数を決定し、
上記使用可能なビットの数を超えないように、ブロック内の画素のダイナミックレンジの大きさに応じて異なる量子化ビットを割り当てるための、複数の閾値のセットを選択し、
上記閾値のセットを用いて、上記データセグメントを符号化して、信号を符号化することを特徴とするデジタル信号処理装置。
【請求項３】
上記閾値のセットは、バッファ内に格納された符号化データのビットの総数が上記使用可能なビットの数を超えないように選択されることを特徴とする請求項２記載のデジタル信号処理装置。
【請求項４】
上記閾値のセットは、上記各データセグメントの符号化に割り当てられた符号化ビットの数が、上記使用可能なビットの数を超えない範囲で、該使用可能なビットの数にできる限り近い数になるように選択されることを特徴とする請求項２記載のデジタル信号処理装置。
【請求項５】
上記少なくとも２つ以上のバッファは、固定長を有することを特徴とする請求項２記載のデジタル信号処理装置。
【請求項６】
符号化データで充填されていない上記固定長を有するバッファのビットは、所定のビットストリームパターンによって充填され、該ビットストリームパターンは、上記符号化データの最後を示すことを特徴とする請求項５記載のデジタル信号処理装置。
【請求項７】
プロセッサを備えるデジタル信号処理装置において、
上記プロセッサは、
少なくとも２つ以上のバッファにおいて、所望の伝送速度及びデータセグメントの格納に用いられる該少なくとも２つ以上のバッファの長さに基づいた、符号化ビットとして使用可能なビットの数を超えないようにブロック内の画素のダイナミックレンジの大きさに応じて異なる量子化ビットを割り当てるために選択された複数の閾値のセットに基づいて符号化されたデータセグメントを有する符号化データを受信し、
バッファ内において、上記符号化データが破損または欠落しているかを判定し、
上記符号化データが破損または欠落している場合、破損または欠落している符号化データを格納しているバッファ以外のバッファに格納されている符号化データを復号し、上記符号化データが破損または欠落していない場合、上記バッファ内において、該符号化データを復号して、データを復号することを特徴とするデジタル信号処理装置。
【請求項８】
上記少なくとも２つ以上のバッファは、固定長を有することを特徴とする請求項７記載のデジタル信号処理装置。
【請求項９】
プロセッサにより実行可能な複数の命令を格納するコンピュータにより読取可能な記録媒体であって、
上記プロセッサに、
上記信号をデータセグメントに分割するステップと、
上記データセグメントのそれぞれを符号化時の作業領域である少なくとも２つ以上のバッファ内に格納するステップと、
所望の伝送速度及び上記データセグメントの格納に用いられる上記少なくとも２つ以上のバッファの長さに基づいて、符号化ビットとして使用可能なビットの数を決定するステップと、
上記使用可能なビットの数を超えないように、ブロック内の画素のダイナミックレンジの大きさに応じて異なる量子化ビットを割り当てるための、複数の閾値のセットを選択するステップと、
上記閾値のセットを用いて、上記データセグメントを符号化するステップとを実行させて、信号を符号化する命令が格納されていることを特徴とするコンピュータにより読取可能な記録媒体。
【請求項１０】
プロセッサにより実行可能な複数の命令を格納するコンピュータにより読取可能な記録媒体であって、
上記プロセッサに、
少なくとも２つ以上のバッファにおいて、所望の伝送速度及びデータセグメントの格納に用いられる該少なくとも２つ以上のバッファの長さに基づいた、符号化ビットとして使用可能なビットの数を超えないようにブロック内の画素のダイナミックレンジの大きさに応じて異なる量子化ビットを割り当てるために選択された複数の閾値のセットに基づいて符号化されたデータセグメントを有する符号化データを受信するステップと、
バッファ内において、上記符号化データが破損または欠落しているかを判定するステップと、
上記符号化データが破損または欠落している場合、破損または欠落している符号化データを格納しているバッファ以外のバッファに格納されている符号化データを復号し、上記符号化データが破損または欠落していない場合、上記バッファ内において、該符号化データを復号するステップとを実行させて、データを復号する命令が格納されていることを特徴とするコンピュータにより読取可能な記録媒体。
【発明の詳細な説明】
【０００１】
発明の背景
１．関連出願
本出願は、１９９７年１０月２３日出願の米国特許出願番号０８／９５６，６３２号「伝送損失におけるエラーを強力に回復する画像−ブロックマッピング（Image-to-Block Mapping to Provide for Robust Error Recovery During Transmission Losses）」、１９９７年１０月２３日出願の米国特許出願番号０８／９５７，５５５号「伝送損失におけるエラーを強力に回復する原始コーディング（Source Coding to Provide for Robust Error Recovery During Transmission Losses）」、１９９７年１０月２３日出願の米国特許出願番号０８／９５６，８７０号「伝送損失におけるエラーを強力に回復するマルチプルブロック回復方法（Multiple Block Recovery Method to Provide for Robust Error Recovery During Transmission Losses）」の一部継続出願として１９９８年１月２日に出願された米国特許出願番号０９／００２，５４７号「伝送損失におけるエラーを強力に回復する画像−ブロックマッピング（Image-to-Block Mapping to Provide for Robust Error Recovery During Transmission Losses）」、１９９８年１月２日に出願された米国特許出願番号０９／００２，４７０号「伝送損失におけるエラーを強力に回復する原始コーディング（Source Coding to Provide for Robust Error Recovery During Transmission Losses）」、１９９８年１月２日に出願された米国特許出願番号０９／００２，５５３号「伝送損失におけるエラーを強力に回復するマルチプルブロック回復方法（Multiple Block Recovery Method to Provide for Robust Error Recovery During Transmission Losses）」の一部継続出願として１９９８年１月３０日に出願された米国特許出願番号０９／０１６，０８３号「伝送損失におけるエラーを強力に回復する原始コーディング（Source Coding to Provide for Robust Error Recovery During Transmission Losses）」の継続出願である。１９９８年１月３０日に出願された米国特許出願番号０９／０１６，０８３号、１９９８年１月２日に出願された米国特許出願番号０９／００２，５４７号、米国特許出願番号０９／００２，４７０号、米国特許出願番号０９／００２，５５３号、１９９７年１０月２３日出願の米国特許出願番号０８／９５６，６３２号、米国特許出願番号０８／９５７，５５５号、米国特許出願番号０８／９５６，８７０号は、参照により本願に組み込まれるものとする。
【０００２】
２．発明の分野
本発明は、信号伝送中のデータ欠落に起因するエラーを強力に回復する技術に関する。
【０００３】
３．背景技術
信号伝送中に発生するランダムエラーにより失われたデータを再構築するための様々な手法が提案されている。しかしながら、これらの手法は、連続したデータパケットの欠落を回復することはできない。連続したデータパケットの欠落は、当分野では、バーストエラーと呼ばれる。バーストエラーにより、再生信号は、大きく劣化する。さらに、通信の高速化を目的とする圧縮技術は、バーストエラーにより起こる信号の劣化を増長させ、これにより再生信号の劣化はさらに深刻なものとなる。バーストエラーによる伝送信号及び／又は記録信号への影響の例は、圧縮技術が重要な役割を果たす高精細度テレビジョン（high definition television：以下、ＨＤＴＶという。）や、移動通信装置等において確認される。
【０００４】
ＨＤＴＶの出現により、テレビジョンシステムにおいて、ナショナルテレビジョンシステムコミッティ（National Television Systems Committee：ＮＴＳＣ）が提案する従来の標準規格より高い解像度が実現されるようになった。現在提案されているＨＤＴＶ信号は、主にデジタル信号である。カラーテレビジョン信号がデジタル形式に変換される場合、通常、輝度信号及び色差信号は、８ビットにデジタル化される。カラーテレビジョン信号をデジタル伝送するためには、２１６メガビット毎秒の基準データ伝送速度が必要である。この伝送速度は、ＨＤＴＶの場合はさらに高く、通常、１２００メガビット毎秒の伝送速度が必要となる。このような高い伝送速度は、現在の無線規格によりサポートされている帯域幅をはるかに上回る。したがって、効率的な圧縮技術が求められている。
【０００５】
圧縮技術は、移動通信の分野においても重要な役割を果たす。通常、移動通信の用途における遠隔の端末間でパケットデータが送受信される。移動通信の伝送チャネル数は限られており、パケット送信の前にパケットを効率的に圧縮する技術が必要である。高い伝送速度を達成するために、多くの圧縮技術が提案されている。
【０００６】
画像圧縮のための適応ダイナミックレンジコーディング（Adaptive Dynamic Range Coding：以下、ＡＤＲＣという。）及び、離散コサイン変換（discrete cosine transform：以下、ＤＣＴという。）技術が知られている。これらの技術は、画像内の局所的な相関を利用して高圧縮比を達成するものである。しかしながら、符号化された信号を復号する際にエラーが顕著となるため、効率的な圧縮アルゴリズムは、複合的なエラーの増殖の原因ともなる。このようなエラーの増大により、再生映像は大幅に劣化する。
【０００７】
発明の開示
本発明は、信号を原始コーディングする方法を提供する。特に、本発明は、複数の信号成分からなる信号を処理する。各信号成分は、ビットストリームとして符号化される。与えられたビットストリームは、異なる複数のビットストリームに分散される。これにより、セグメント成分のパラメータ記述成分が異なる複数のビットストリームに分散される。分散処理により、エラーは複数レベルに分散される。したがって、分散処理の逆の処理がデコーダによりなされると、伝送時のバーストエラーは局所的な欠落として分散される。
【０００８】
本発明は、複数レベルのシャッフリング処理を提供する。信号は、複数のレベルを有するものと定義される。各レベルは、複数のフレーム、複数の画素、複数のビットから構成される。一具体例において、各レベル内及びレベル間でシャッフリングが行われ、これにより欠落が発生した画像領域における画像の再構築が容易となる。
【０００９】
すなわち、本発明に係る符号化方法は、復号処理時のエラー伝播を制限する信号を符号化する符号化方法において、上記信号をデータセグメントに分割するステップと、上記データセグメントのそれぞれを少なくとも１つのバッファ内に格納するステップと、所望の伝送速度及び上記データセグメントの格納に用いられる上記少なくとも１つのバッファの長さに基づいて、符号化ビットとして使用可能なビットの数を決定するステップと、上記使用可能なビットの数を超えない、それぞれ異なる数の符号化ビットを割り当てる複数の範囲を有し、上記データセグメントのそれぞれを符号化する閾値のセットを選択するステップと、上記閾値のセットを用いて、上記データセグメントを符号化するステップとを有する。
【００１０】
ここで、上記閾値のセットは、バッファ内に格納された符号化データが最大化されるように選択される。
【００１１】
また、上記閾値のセットは、上記各データセグメントの符号化に割り当てられた符号化ビットの数が、上記使用可能なビットの数を超えない範囲で、該使用可能なビットの数にできる限り近い数になるように選択される。
【００１２】
上記少なくとも１つのバッファは、固定長を有する。
【００１３】
符号化データで充填されていない上記固定長を有するバッファのビットは、所定のビットストリームパターンによって充填され、該ビットストリームパターンは、上記符号化データの最後を示す。
【００１４】
次に、本発明に係る復号化方法は、エラー伝播を制限するデータを復号する復号方法において、少なくとも１つのバッファにおいて、所望の伝送速度及びデータセグメントの格納に用いられる該少なくとも１つのバッファの長さに基づいた、符号化ビットとして使用可能なビットの数を超えない、それぞれ異なる数の符号化ビットを割り当てる複数の範囲を有する選択された閾値のセットに基づいて符号化されたデータセグメントを有する符号化データを受信するステップと、バッファ内において、上記符号化データの再生が禁止されているかを判定するステップと、上記符号化データの再生が禁止されていない場合、上記バッファ内において、該符号化データを復号するステップとを有する。
【００１５】
ここで、上記少なくとも１つのバッファは、固定長を有する。
【００１６】
次に、本発明に係るデジタル信号処理装置は、プロセッサを備えるデジタル信号処理装置において、上記プロセッサは、上記信号をデータセグメントに分割し、上記データセグメントのそれぞれを少なくとも１つのバッファ内に格納し、所望の伝送速度及び上記データセグメントの格納に用いられる上記少なくとも１つのバッファの長さに基づいて、符号化ビットとして使用可能なビットの数を決定し、上記使用可能なビットの数を超えない、それぞれ異なる数の符号化ビットを割り当てる複数の範囲を有し、上記データセグメントのそれぞれを符号化する閾値のセットを選択し、上記閾値のセットを用いて、上記データセグメントを符号化して、復号処理時のエラー伝播を制限する信号を符号化するものである。
【００１７】
次に、本発明に係るデジタル信号処理装置は、プロセッサを備えるデジタル信号処理装置において、上記プロセッサは、少なくとも１つのバッファにおいて、所望の伝送速度及びデータセグメントの格納に用いられる該少なくとも１つのバッファの長さに基づいた、符号化ビットとして使用可能なビットの数を超えない、それぞれ異なる数の符号化ビットを割り当てる複数の範囲を有する選択された閾値のセットに基づいて符号化されたデータセグメントを有する符号化データを受信し、バッファ内において、上記符号化データの再生が禁止されているかを判定し、上記符号化データの再生が禁止されていない場合、上記バッファ内において、該符号化データを復号して、エラー伝播を制限するデータを復号するものである。
【００１８】
次に、本発明に係る記録媒体は、プロセッサにより実行可能な複数の命令を格納するコンピュータにより読取可能な記録媒体であって、上記プロセッサに、上記信号をデータセグメントに分割するステップと、上記データセグメントのそれぞれを少なくとも１つのバッファ内に格納するステップと、所望の伝送速度及び上記データセグメントの格納に用いられる上記少なくとも１つのバッファの長さに基づいて、符号化ビットとして使用可能なビットの数を決定するステップと、上記使用可能なビットの数を超えない、それぞれ異なる数の符号化ビットを割り当てる複数の範囲を有し、上記データセグメントのそれぞれを符号化する閾値のセットを選択するステップと、上記閾値のセットを用いて、上記データセグメントを符号化するステップとを実行させて、復号処理時のエラー伝播を制限する信号を符号化する命令が格納されているものである。
【００１９】
次に、本発明に係る記録媒体は、プロセッサにより実行可能な複数の命令を格納するコンピュータにより読取可能な記録媒体であって、上記プロセッサに、少なくとも１つのバッファにおいて、所望の伝送速度及びデータセグメントの格納に用いられる該少なくとも１つのバッファの長さに基づいた、符号化ビットとして使用可能なビットの数を超えない、それぞれ異なる数の符号化ビットを割り当てる複数の範囲を有する選択された閾値のセットに基づいて符号化されたデータセグメントを有する符号化データを受信するステップと、バッファ内において、上記符号化データの再生が禁止されているかを判定するステップと、上記符号化データの再生が禁止されていない場合、上記バッファ内において、該符号化データを復号するステップとを実行させて、エラー伝播を制限するデータを復号する命令が格納されているものである。
【００２０】
次に、本発明に係る復号装置は、復号処理時のエラー伝播を制限する信号を符号化する符号化装置において、上記信号をデータセグメントに分割する手段と、上記データセグメントのそれぞれを少なくとも１つのバッファ内に格納する手段と、所望の伝送速度及び上記データセグメントの格納に用いられる上記少なくとも１つのバッファの長さに基づいて、符号化ビットとして使用可能なビットの数を決定する手段と、上記使用可能なビットの数を超えない、それぞれ異なる数の符号化ビットを割り当てる複数の範囲を有し、上記データセグメントのそれぞれを符号化する閾値のセットを選択する手段と、上記閾値のセットを用いて、上記データセグメントを符号化する手段とを備える。
【００２１】
次に、本発明に係る復号装置は、エラー伝播を制限するデータを復号する復号装置において、少なくとも１つのバッファにおいて、所望の伝送速度及びデータセグメントの格納に用いられる該少なくとも１つのバッファの長さに基づいた、符号化ビットとして使用可能なビットの数を超えない、それぞれ異なる数の符号化ビットを割り当てる複数の範囲を有する選択された閾値のセットに基づいて符号化されたデータセグメントを有する符号化データを受信する手段と、バッファ内において、上記符号化データの再生が禁止されているかを判定する手段と、上記符号化データの再生が禁止されていない場合、上記バッファ内において、該符号化データを復号する手段とを備える。
【００２２】
発明の詳細な説明
本発明は、強力なエラー回復を実現するコーディング及び信号ストリームの処理の手法を提供する。以下の記述においては、説明を目的として、本発明の理解を容易にするために多くの詳細事項について述べる。しかしながら、当業者にとって、これら特定の詳細事項が本発明の実施に必ずしも必要でないことは明らかである。また、本発明を具体的かつ明瞭に説明するために、ブロック図においては、周知の電気的構造及び回路を例示する。
【００２３】
本発明を適用した信号処理方法及び信号構造について、映像信号の処理を例に説明する。しかしながら、ここに説明する方法及び装置は、音声信号や他のデジタルデータビットストリーム等、複数の信号成分からなる種々の信号に適用することができる。さらに、ここに説明する処理例は、データ圧縮のための適応ダイナミックレンジコーディング（Adaptive Dynamic Range Coding：以下、ＡＤＲＣという。）処理を用いている。しかしながら、他の様々なコーディング方式及びアルゴリズムを用いてもよい。ＡＤＲＣの詳細については、１９９１年９月４日〜６日にイタリアのトリノで開催されたＨＤＴＶ及びその未来に関する第４回国際研究会（Fourth International Workshop on HDTV and Beyond）において、近藤、藤森、中屋らにより発表された「将来のＨＤＴＶデジタルＶＴＲのための適応ダイナミックレンジコーディング方式（Adaptive Dynamic Range Coding Scheme for Future HDTV Digital VTR）」に記載されている。
【００２４】
この論文では、異なる種類のＡＤＲＣが紹介されている。これらは、以下の式により実現される。
【００２５】
【数１】
0004558195.tif 000002
【００２６】
【数２】
0004558195.tif 000003
【００２７】
【数３】
0004558195.tif 000004
【００２８】
信号の符号化、伝送、続いて行われる復号処理を包括的にＦＩＧ．１に示す。信号１００は、エンコーダ１１０に入力されるデータストリームである。エンコーダ１１０は、ＡＤＲＣ圧縮アルゴリズムに基づいて、伝送媒体１３５を介して伝送されるパケット１・・・Ｎを生成する。デコーダ１２０は、これらパケット１・・・Ｎを受信し、信号１３０を生成する。信号１３０は、信号１００を再構築する信号である。
【００２９】
エンコーダ１１０とデコーダ１２０は、様々な形式で実現されて、以下に説明する機能を実行することができる。ある具体例においては、エンコーダ１１０及び／又はデコーダ１２０は、通常、中央演算処理装置、メモリ、１又は複数の入出力装置、コプロセッサ等を備える汎用又は専用のコンピュータシステムにより実行される、媒体に格納されたソフトウェアプログラムとして実現される。これに代えて、エンコーダ１１０及び／又はデコーダ１２０を以下に説明する機能を実行する論理回路として実現してもよい。さらに、エンコーダ１１０及び／又はデコーダ１２０は、ハードウェア、ソフトウェア又はファームウェアの組み合わせとして実現してもよい。
【００３０】
この具体例においては、信号１００は、それぞれがビデオシステムにおいてインターレースされた画像を示す情報を含む一連のビデオフレームからなるカラービデオ画像を示す信号である。各フレームは、２つのフィールドからなり、一方のフィールドは画像の偶数ラインのデータに相当し、他方のフィールドは、画像の奇数ラインのデータに相当する。データは画素値を含み、画素値は、画像内の対応する位置の色成分を表す。例えば、この具体例において、色成分は、輝度信号Ｙと、色差信号Ｕ、Ｖからなる。なお、本発明による処理がインターレース処理されたビデオ信号以外の信号にも適用できることは明らかである。さらに、本発明はＹＵＶ色空間に限定されるものではなく、この他の色空間を示す画像にも適応できることは明らかである。
【００３１】
ＦＩＧ．１において、エンコーダ１１０は、Ｙ信号、Ｕ信号、Ｖ信号を分離し、それぞれの信号グループをＡＤＲＣアルゴリズムに基づいて別々に処理する。以下では、説明を簡潔に行うために、Ｙ信号の処理について述べるが、符号化処理は、Ｕ信号及びＶ信号に対しても同様に行われる。
【００３２】
この具体例において、エンコーダ１１０は、信号１００の、この明細書ではフレーム対と呼ばれる２つの連続するフレームに亘るＹ信号を３次元（３Ｄ）ブロックにグループ化する。さらに、一具体例では、３Ｄブロックは、所定のフレーム対に亘る同一の局所領域における２つの２次元ブロックをグループ化して生成される。ここで、２次元（２Ｄ）ブロックは、フレーム又はフィールド内の局所画素をグループ化して生成される。ここに記述する処理は、他のブロック構造に対しても適用できる。信号のグループ化については、画像−ブロックマッピングの説明において詳述する。
【００３３】
この具体例においては、任意の３Ｄブロックに対し、エンコーダ１１０は、３Ｄブロックを形成する２つの２Ｄブロック間について、画素値に変化があるか否かを算出する。値に実質的な変化が認められた場合は、モーションフラグ（Motion Flag）が設定される。当分野で周知のとおり、モーションフラグを用いることにより、エンコーダ１１０は、各フレーム対において画像の特定領域の画像が同じ場合、量子化符号の数を減らすことができる。エンコーダ１１０は、３Ｄブロック内における最大画素強度値（ＭＡＸ）及び最小画素強度値（ＭＩＮ）を検出する。エンコーダ１１０は、これら値ＭＡＸ、ＭＩＮを用いて、与えられたデータの３Ｄブロックのダイナミックレンジ値（ＤＲ）を算出する。変形例では、ノン・エッジ・マッチングＡＤＲＣの場合、DR=MAX-MIN+1である。また、エッジ・マッチングＡＤＲＣの場合、DR=MAX-MINである。他の具体例においては、エンコーダ１１０は、ビデオフレームのシーケンスを示すフレームのストリーム信号をフレーム毎に符号化する。さらに、他の変形例においては、エンコーダ１１０は、ビデオフィールドのシーケンスを示すフィールドのストリーム信号をフィールド毎に符号化する。この場合、モーションフラグは使用されず、２Ｄブロックを用いて値ＭＩＮ，ＭＡＸ，ＤＲを算出する。
【００３４】
この具体例においては、エンコーダ１１０は、算出されたＤＲと閾値テーブル（図示せず）を参照し、ＤＲに対応するブロック内の画素を符号化するために用いる量子化ビット（Ｑビット）のビット数を決定する。画素を符号化することにより、量子化符号（Ｑコード）が得られる。Ｑコードは、記録又は伝送を目的として使用される圧縮画像データに相当する。したがって、任意の３Ｄブロック内の全ての画素は、同じＱビットにより符号化され、これにより３Ｄ符号化ブロックが形成される。３Ｄ符号化ブロックにおけるＱコード、ＭＩＮ、モーションフラグ、及びＤＲをまとめて、３Ｄ−ＡＤＲＣブロックと呼ぶ。これに代えて、２Ｄブロックを符号化する場合、与えられた２ＤブロックにおけるＱコード、ＭＩＮ及びＤＲにより２Ｄ−ＡＤＲＣブロックが構成される。
【００３５】
様々な閾値テーブルを実現することができる。一具体例においては、閾値テーブルは、一列のＤＲ閾値からなる。Ｑビットは、閾値テーブルの列において隣り合う２つのＤＲ値の範囲を符号化するために用いる量子化ビット数に対応する。変形例では、複数の列を有し、所望の伝送速度に応じて列を選択する。閾値テーブルの各列は、閾値インデックスにより識別される。閾値の選択については、後述する部分バッファリングの説明で詳述する。ＡＤＲＣ符号化及びバッファリングのさらなる詳細については、本発明の譲受人が譲受した米国特許番号第４，７２２，００３号「高効率コーディング装置（High Efficiency Coding Apparatus）」及び同じ名称の米国特許番号第４，８４５，５６０号「高効率コーディング装置（High Efficiency Coding Apparatus）」に開示されている。
【００３６】
以下では、Ｑコードを可変長データ（variable length data: ＶＬデータ）とも呼ぶ。また、ＤＲ、ＭＩＮ、モーションフラグをブロック属性と呼ぶ。ブロック属性は、閾値インデックスとともに固定長データ（fixed length data: ＦＬデータ）を構成する。さらに、上述の説明の観点からみれば、ブロック属性は、複数の成分を有する信号要素のその成分に関するパラメータを記述するものである。変形例においては、ＦＬデータは、Ｑビット符号を含む。これにより、復号処理においてＱビット情報をＤＲから導き出す必要がなくなる。したがって、ＤＲ情報が欠落又は破損された場合でもＱビット符号に基づいてＱビット情報を求めることができる。さらにまた、Ｑビット符号が欠落又は破損された場合には、ＤＲに基づいてＱビット情報を導き出すこともできる。したがって、ＤＲ及びＱビットを回復する必要性を低下させることができる。
【００３７】
Ｑビット符号を新たに設けることにより、各ＡＤＲＣブロックについて伝送すべきビット数が増加するという問題がある。しかしながら、一具体例においては、グループ化されたＡＤＲＣブロックの複数のＱコードは、例えば加算関数や連結関数に基づいて連結される。たとえば、３つのＡＤＲＣブロックがグループ化され、各ＡＤＲＣブロックのＱビット値がそれぞれ３、４、４である場合、ＦＬデータに符号化される合計値は１１である。このように合計値を表すために必要なビット数は、それぞれの値を個別に表すために必要なビット数に比べて少なく、後述するように、破損されていないグループのＱビット値を用いて、Ｑビット回復処理を行うことなく、Ｑビット値を求めることができる。
【００３８】
さらに他の変形例も可能である。例えば、モーションフラグデータを符号化してもよい。この場合、Ｑビット及びモーションフラグデータにタグが付され、このタグを用いて符号テーブルを参照する。コーディングの手法及び機能はアプリケーションにより異なる。
【００３９】
フレーム、ブロック属性、ＶＬデータは、ビデオ信号内の様々な成分を記述している。これら成分の境界、位置、量は、ビデオ信号の伝送及び圧縮属性に応じて異なる。本実施の形態においては、これら成分は、ビデオ信号のビットストリーム内で変更及びシャッフリングされ、これにより伝送欠落に対する強力なエラー回復が実現される。
【００４０】
以下の説明では、ビデオ信号のＡＤＲＣ符号化及びシャッフリングに基づいて、１／６連続パケット伝送欠落の許容について例示的に記述する。すなわち、以下に示す成分の定義及び分割の手法は、一具体例にすぎない。したがって、他の形態も可能である。データセットは、ビデオデータの区分又は他の種類のデータ信号を含む。したがって、一具体例においては、フレームセットは、１又は複数の連続するフレームを含むデータセットの１種である。セグメントは、１／６に分割されたＱコードを格納する記憶容量を有し、フレームセットには、ブロック属性が含まれる。データのシャッフリングは、セグメント及び／又はバッファ内の成分を相互に交換することにより行われる。続いて、セグメントに格納されたデータを用いて、伝送のためのデータパケットを生成する。したがって、以下に説明するように、伝送中にあるセグメントが欠落した場合、そのセグメントから生成される全てのパケットがなくなる。同様に、伝送中にセグメントの一部が欠落した場合、そのセグメントから生成される対応する数のパケットが伝送中になくなる。
【００４１】
以下では、ＡＤＲＣ符号化されたデータにおける１／６連続パケット欠落について説明するが、ここに説明する方法及び装置は、様々な符号化／復号方式に結びつけられた。
【００４２】
ＦＩＧ．２は、ポイントトゥポイント（point-to-point）接続又はネットワークを介してデータを伝送するために用いられるパケット構造２００の具体例を示す。パケット構造２００は、エンコーダ１１０により生成され、伝送媒体１３５を介して伝送される。一具体例においては、パケット構造２００は、５バイトのヘッダ情報と、８ビットのＤＲと、８ビットのＭＩＮと、モーションフラグと、５ビットの閾値インデックスと、３５４ビットのＱコードとを有する。ここに示すパケット構造２００は、パケット構造の一例であり、ネットワークの非同期伝送モード（asynchronous transfer mode：ＡＴＭ）による伝送に適応するように構成されたものである。なお、本発明は、このようなパケット構造に限定されるものではなく、様々なネットワークにおける種々のパケット構造に適用できるものである。
【００４３】
上述のように、伝送媒体（例えば、媒体）１３５は、エラーフリーの伝送媒体とみなすことはできず、したがってパケットは欠落又は破損するおそれがある。上述のとおり、従来よりこのような欠落や破損を検出する手法が提案されているが、通常、実質的な画像の劣化は避けられなかった。本発明は、このような欠落又は破損に対する強力なエラー回復の手法を提供する。以下の説明においては、複数の連続するパケットの欠落であるバースト欠落が最も発生する可能性の高いエラーであると仮定するが、ランダムパケット欠落も発生する可能性がある。
【００４４】
１又は複数の連続するパケットのデータを確実且つ強力に回復するために、本発明に基づく装置及び方法は、複数レベルのシャッフリングを行う。特に、伝送パケットに含まれるＦＬデータ及びＶＬデータは、ある画像の空間的及び時間的に離間した位置にあるデータを含んでいる。データのシャッフリングにより、いかなるバーストエラーも分散され、これによりエラー回復が容易となる。後述するように、シャッフリングによりブロック属性とＱビット値を回復することができる。
【００４５】
データ符号化／復号
ＦＩＧ．３は、エンコーダ１１０により実行される符号化処理の一具体例を説明するフローチャートである。また、ＦＩＧ．３は、画像の劣化を防止し、強力なエラー回復を容易にするためのシャッフリング処理の概要を示す図でもある。
【００４６】
ＦＩＧ．３におけるステップ１において、表示成分とも呼ばれる入力フレームセットに対し、伝送量を削減するための間引きを行う。Ｙ信号については、水平方向に元の幅から３／４となるよう間引きし、Ｕ信号及びＹ信号については、それぞれ元の高さ及び元の幅から１／２となるよう間引きする。これにより、各フレーム対が３９６０Ｙブロック、６６０Ｕブロック、６６０Ｖブロックを有する３：１：０のビデオフォーマットが形成される。上述のように、ここではＹ信号の処理に関する説明を行うが、この処理はＵ信号及びＹ信号についても適用される。ステップ２において、２つのＹフレーム画像を３Ｄブロックにマッピングする。ステップ３において、３Ｄブロックをシャッフリングする。ステップ４において、ＡＤＲＣバッファリング及び符号化を行う。ステップ５において、符号化されたＹブロック、Ｕブロック、Ｖブロックをバッファ内でシャッフリングする。
【００４７】
ステップ６において、符号化された３Ｄブロックのグループ用のＶＬデータと、これに対応するブロック属性をシャッフリングする。ステップ７において、ＦＬデータを異なるセグメントに亘ってシャッフリングする。ステップ８において、ポストアンブルを充足し、すなわちバッファ端の可変領域が所定のビットストリームにより充足される。ステップ９において、ＶＬデータを異なるセグメントに亘ってシャッフリングする。
【００４８】
以下では、符号化処理の前及び後の画素データの処理を例に本発明に基づくシャッフリングの手法を説明する。変形例として、ハードウェアにより独立したデータ値のシャッフリング及びデシャッフリングを行ってもよい。特に、ハードウェアは、ブロック値のアドレスを異なるアドレスにマッピングすることによりシャッフリング／デシャッフリング処理を実現する。しかしながら、シャッフリング処理は、データ処理の後に行う必要があるため、アドレスマッピングは、データに従属する値に対しては行うことができない。一方、後述するグループ内ＶＬデータシャッフリングは、データに従属する値に対しても行うことができる。さらに、本発明を説明する一例として、以下に示すシャッフリングは、離散的なデータセットに対して行われる。しかしながら、変形例においては、信号は、ビットから画素及びフレームまでの複数のデータレベルに基づいて定義される。シャッフリング処理は、信号内で定義される各レベルにおいて、及び信号内の異なるレベル間でも行うことができる。
【００４９】
ＦＩＧ．４は、デコーダ１２０により実行される復号処理の例を説明するフローチャートである。好ましくは、変換処理及びデシャッフリング処理は、ＦＩＧ．３に示す処理と逆の処理である。ＦＩＧ．４は、さらにＱビット、モーションフラグ、ＤＲ、ＭＩＮ及び画素データの異なる組み合わせにおいてエラー回復を実現する革新的な処理を示している。Ｑビット回復、モーションフラグ回復、ＤＲ回復、ＭＩＮ回復、画素回復の異なる具体例において異なる組み合わせを用いるエラー回復処理については後に詳細に説明する。
【００５０】
画像−ブロックマッピング
本発明において、１つのフレームは、通常５２８０個の２Ｄブロックを含み、各２Ｄブロックは、６４画素からなる。第１のフレームに基づく２Ｄブロックとそれに続くフレームの２Ｄブロックが結合されて３Ｄブロックが形成されるため、フレーム対は５２８０個の３Ｄブロックから構成される。
【００５１】
画像−ブロックマッピングは、フレーム又はフレームセットのデータをそれぞれ２Ｄブロック又は３Ｄブロックに分割する目的で行われる。さらに、画像−ブロックマッピングは、相補的パターン及び／又は連鎖的（interlocking）パターンを用いてフレーム内の画素を分割し、これにより伝送欠落に対する強力なエラー回復が実現される。しかしながら、与えられたＤＲ値が過大になってしまう可能性を低減するために、各２Ｄブロックは、局所的な範囲の画素から構成する。
【００５２】
ＦＩＧ．５は、例示的に示す画像の１６画素セクションに対する画像−ブロック変換処理の具体例を示す図である。画像５００は、単一のフレームの局所的な領域を形成する１６個の画素からなる。画像５００内の各画素は、強度値により示される。この例では、画像５００の最上列左端の画素の強度は１００であり、最下列右端の画素の強度は１０である。
【００５３】
この具体例においては、画像５００内の異なる領域における画素を用いて、２Ｄブロック５１０、５２０、５３０、５４０を生成する。２Ｄブロック５１０、５２０、５３０、５４０は、符号化され、（後述するように）シャッフリングされ、伝送される。この伝送処理の後、２Ｄブロック５１０、５２０、５３０、５４０は再結合され、画像５５０が形成される。画像５５０は、画像５００を再構築したものである。
【００５４】
発生する可能性のある伝送欠落に関わらず、画像５００を正確に再生するために、ＦＩＧ．５に示す具体例では、連鎖的相補ブロック構造を用いる。特に、２Ｄブロック５１０、５２０、５３０、５４０を生成するための画素を選択することにより、画像５５０を再構築する際に、相補的及び／又は連鎖的パターンは、ブロックの再結合に用いられる。したがって、特定のブロック属性が伝送中に欠落しても、再構築された画像５５０においてエラーは隣接しない。例えば、ＦＩＧ．５において、２Ｄブロック５４０のＤＲが伝送中に欠落したとする。ここで、デコーダは隣り合うブロックの隣り合う複数の画素を利用し、２Ｄブロック５４０の失われたＤＲを回復することができる。また、後述するように、相補的パターン及びシフティングを用いることにより、隣り合う画素が増加し、好ましくは他のブロックに基づく隣り合う画素の数を最大化し、これによりＤＲ及びＭＩＮの回復の可能性を大幅に向上させることができる。
【００５５】
ＦＩＧ．５ａは、画像−ブロック変換処理の一具体例において、２Ｄブロックを形成するために用いられるシャッフリングパターンの例を示す図である。ここでは、画素を交互に抜き取ることにより１つの画像を２つのサブ画像、すなわちサブ画像５６０及びサブ画像５７０に分割する。サブ画像５６０内の長方形の区切りは、２Ｄブロックの境界線を示す。説明のため、２Ｄブロックに０，２，４，７，９，１１，１２，１４，１６，１９，２１，２３といった番号を付す。タイル５６５は、サブ画像５６０内の２Ｄブロックのための画素分布を示す。
【００５６】
サブ画像５７０においては、２Ｄブロックの割り当ては水平方向に８画素分、及び垂直方向に４画素分シフトされている。これにより、再構築処理においてサブ画像５６０とサブ画像５７０とが結合されると、割り当てられた２Ｄブロックが包み込まれ、重なり合う。２Ｄブロックは、１，３，５，６，８，１０，１３，１５，１７，１８，２０，２２と番号付けされている。タイル５７５は、サブ画像５７０内の２Ｄブロックの画素分布を示す。タイル５７５は、タイル５６５に対する相補構造を有している。したがって、特定のブロック属性が伝送中に欠落した場合、失われた２Ｄブロックのブロック属性を回復することができる隣り合う画素が存在することとなる。さらに、同様なブロック属性のセットを有する重なり合う２Ｄブロックが存在する。したがって、画像の再構築の過程において、デコーダは、隣り合う２Ｄブロックから複数の隣り合う画素を取得し、これにより失われたブロック属性を回復することができる。
【００５７】
ＦＩＧ．６は、他の相補的及び連鎖的２Ｄブロックの構造例を示す図である。これら以外の構造を用いてもよい。ＦＩＧ．５と同様に、ＦＩＧ．６に示す２Ｄブロック構造によっても、任意の２Ｄブロックに伝送欠落が生じても、周囲の２Ｄブロックの存在が保証される。なお、パターン６１０ａ、６１０ｂ、６１０ｄでは、画素を後続する２Ｄブロックにマッピングする際、水平シフト及び／又は垂直シフトを行う。水平シフトとは、新たな２Ｄブロック境界が始まる前に、タイル構造を水平方向に所定画素数分シフトすることを意味する。垂直シフトとは、新たな２Ｄブロック境界が始まる前に、タイル構造を垂直方向に所定画素数分シフトすることを意味する。アプリケーションに応じて、水平シフトのみを行ってもよく、垂直シフトのみを行ってもよく、水平シフト及び垂直シフトを組み合わせて行ってもよい。
【００５８】
パターン６１０ａは、画像−ブロック変換に用いる渦巻状パターンを示す。渦巻状パターンでは、画像−ブロック変換処理において後続する２Ｄブロックを生成する際に水平シフトを行う。パターン６１０ｂ及びパターン６１０ｄは、相補パターンを示し、画像−ブロックマッピング処理において、後続する２Ｄブロックを生成するために、水平シフト及び垂直シフトにより画素が選択される。さらに、パターン６１０ｂ及びパターン６１０ｄは、２つの２Ｄブロック間の画素選択において交互にオフセットを設けた例である。パターン６１０ｃは、画像−ブロック変換処理のための２Ｄブロックを構成する画素を不規則にサンプリングした例を示す。すなわち、画素が２Ｄブロックに対して一度だけマッピングされるならば、画像−ブロックマッピングにはいかなるマッピング構造を用いてもよい。
【００５９】
ＦＩＧ．５、ＦＩＧ．５ａ、ＦＩＧ．６は、２Ｄブロックを生成するための画像−ブロックマッピングを示すものである。この処理は、３Ｄブロックに対しても適用できることは明らかである。上述のように、３Ｄブロックの生成は、２Ｄブロックと同様の境界定義を用いるが、３Ｄブロックの生成では、境界分割は、３Ｄブロックを構成する後続するフレームに亘って拡張される。すなわち、３Ｄブロックは、第１のフレーム内の２Ｄブロックを定義するために用いる画素と、後続するフレーム内の２Ｄブロックの画素とを結合して生成される。一具体例においては、第１のフレームにおける２Ｄブロックの画素と、後続するフレームにおける２Ｄブロックの画素とは、同一の位置から抽出される。
【００６０】
フレームセット内ブロックシャッフリング
任意の画像の画素値は、局所的な領域において緊密な関係を有する。一方、同一画像内の離れた領域にある画素は、大きく異なる値を有している可能性がある。したがって、任意の画像のある部分において空間的に隣接する２Ｄブロック又は３Ｄブロックを連続して符号化した場合、ＤＲ及びＭＩＮは近い値を有し、画像の離れた部分のＤＲ及びＭＩＮは大きく異なる値を有するものとなる。したがって、画像において空間的に隣接する２Ｄブロック又は３Ｄブロックを符号化して得られたデータを連続的にバッファに格納した場合、バッファ空間の使用率に不均衡が生じる。フレームセット内のブロックシャッフリングは、ＡＤＲＣ符号化に先立って行われ、画像−ブロックマッピング処理により生成された２Ｄブロック又は３Ｄブロックのシャッフリングを行う。シャッフリング処理により、後段のＡＤＲＣ符号化において、バッファを均等に使用することが保証される。
【００６１】
ＦＩＧ．７ａ〜ＦＩＧ．７ｄは、３Ｄ−Ｙブロックのシャッフリングの具体例を示すものである。ＦＩＧ．７ａ〜ＦＩＧ．７ｄ内の３Ｄ−Ｙブロックは、Ｙ信号のみを有するフレーム対に上述の画像−ブロックマッピング処理を施して得られるものである。３Ｄ−Ｙブロックは、シャッフリングされ、これにより符号化されたフレーム対を格納するバッファには、そのフレーム対の異なる部分に対応する３Ｄ−Ｙブロックが含まれるようになる。これによりＡＤＲＣ符号化処理におけるＤＲ分布の均一化が促される。各バッファのＤＲ分布が均一化されることによりバッファを均等に利用することができる。
【００６２】
ＦＩＧ．７ａ〜ＦＩＧ．７ｄは、物理的に離れた３Ｄブロックのシャッフリングを示す図である。これにより連続するパケットに伝送欠落が生じても、欠落するブロック属性は、画像内の特定の領域に集中することなく、画像全体に分散される。
【００６３】
ブロックシャッフリングは、小規模、中規模及び大規模のバースト的パケット欠落のいずれが生じても、欠落するブロック属性が広範囲に分散されるように設計されている。この実施の形態においては、小規模なバースト欠落とは、数個のパケットの欠落を意味し、中規模のバースト欠落とは、１バッファ分の欠落を意味し、大規模な欠落とは１セグメント分の欠落を意味するものとする。ブロックシャッフリングにおいては、画像内の比較的離れた部分から、３つの隣り合うブロックを選択する。したがって、次のグループ内ＶＬデータシャッフリング（後に詳細に説明する）において、各グループは互いに異なる静的特性を有する３Ｄブロックから構成される。ブロック属性の欠落を分散させることにより、破損した３Ｄブロックの周囲には破損していない３Ｄブロックが残り、これら破損していない３Ｄブロックにより欠落したデータを回復ことができるため、強力なエラー回復を実現することができる。
【００６４】
ＦＩＧ．７ａは、水平方向に６６個の３Ｄ−Ｙブロックを有し、垂直方向に６０個の３Ｄ−Ｙブロックを有するフレーム対を示す。これら３Ｄ−Ｙブロックは、セグメント０〜５に割り当てられている。図に示すように、３Ｄ−Ｙブロックの割り当ては、２×３の枠を設け、各枠内の各３Ｄ−Ｙブロックが各セグメントに対応するように割り当てる。ここで、さらなるシャッフリングを行わず、最初の８８０個のパケットにバーストエラーが生じたとすると、セグメント０に対応するブロック属性が失われる。しかしながら、後述するように、ＦＬデータシャッフリングを行うことにより、ブロック属性の欠落を分散させることができる。
【００６５】
ＦＩＧ．７ｂは、セグメント０に割り当てられる番号０が付された３Ｄ−Ｙブロックの走査順序を示す。ＦＩＧ．７ａにおいて「０」で示される各３Ｄ−Ｙブロックには、０，１，２，３，・・・，６５９という番号が付され、これらはセグメント０に入力されるストリーム内の位置を示すものである。セグメントの割り当てを行うためのこのようなブロック番号を用いて、残りの３Ｄ−Ｙブロックもセグメント１〜５に割り当てられる。このようにして、フレーム対内のデータは、複数のセグメントにシャッフリングされる。
【００６６】
ＦＩＧ．７ｃは、１セグメントを構成する６６０個の３Ｄ−Ｙブロックを示す図である。０〜６５の番号が付された３Ｄ−Ｙブロックは、バッファ０に入力される。同様に、番号が付された３Ｄ−Ｙブロックに隣接する３Ｄ−Ｙブロックは、バッファ１に入力される。このような処理を繰り返してバッファ２〜９が充足される。このような処理により、伝送中のバッファの欠落により失われる複数の３Ｄ−Ｙブロックは、画像内の異なる部分に分散される。
【００６７】
ＦＩＧ．７ｄは、セグメント０に対応する３Ｄ−Ｙブロックのバッファにおける最終的な配列順序を示す図である。３Ｄ−Ｙブロック０，１，２は、バッファ内の最初の３つの部分を占める。この処理は、バッファの残りの部分において繰り返される。これにより、伝送中に３つの３Ｄ−Ｙブロックが欠落した場合、失われる３Ｄ−Ｙブロックは、画像内で離れた位置に対応するものとなる。
【００６８】
ＦＩＧ．７ａ〜７ｄは、フレームセット内の３Ｄ−Ｙブロックの分散の一具体例を示すものである。この他に、３Ｄ−Ｕブロック及び３Ｄ−Ｖブロックを分散することもできる。３Ｄ−Ｕブロックは、Ｕ信号のみを含むフレームセットに上述の画像−ブロックマッピング処理を適用して生成される。同様に、３Ｄ−Ｖブロックは、Ｖ信号のみを含むフレームセットに上述の画像−ブロックマッピング処理を適用して生成される。そして、３Ｄ−Ｕブロック及び３Ｄ−Ｖブロックの両方に対して、上述の３Ｄ−Ｙブロックの分散と同様の処理を行う。なお、上述のように、３Ｄ−Ｕブロックと３Ｄ−Ｙブロックの数は、それぞれ３Ｄ−Ｙブロックの数の１／６である。
【００６９】
ＦＩＧ．７ａ〜７ｄは、Ｙ信号に対するフレーム内ブロックシャッフリングの具体例を示し、この具体例では、伝送中の１／６のパケット欠落が許容され、さらにバッファの使用率の均等化が実現されている。セグメント、バッファ、ＡＤＲＣブロックの割り当てを変更することにより１／ｎバーストエラーに対応でき、またバッファ使用率を変更できることは当業者にとって明らかである。
【００７０】
部分バッファリング
ＦＩＧ．３に示すステップ４において、ＡＤＲＣ符号化及びバッファリング処理が行われる。符号化技術により、画像−ブロックマッピング処理により生成された２Ｄブロック又は３Ｄブロックは、２Ｄ−ＡＤＲＣブロック又は３Ｄ−ＡＤＲＣブロックに符号化される。３Ｄ−ＡＤＲＣブロックは、それぞれＱコード、ＭＩＮ、モーションフラグ、ＤＲを含む。２Ｄ−ＡＤＲＣブロックは、Ｑコード、ＭＩＮ、ＤＲを含む。すなわち、２Ｄ−ＡＤＲＣブロックでは、単一のフレーム又は単一のフィールドに対する符号化が行われるため、２Ｄ−ＡＤＲＣブロックは、モーションフラグを含まない。
【００７１】
従来より多くのバッファリングの手法が知られている（例えば、近藤らによる米国特許番号第４，８４５，５６０号「高効率コーディング装置（High Efficiency Coding Apparatus）」及び米国特許番号第４，７２２，００３号「高効率コーディング装置（High Efficiency Coding Apparatus）」を参照）。これらの記載内容は本出願に組み込まれるものとする。
【００７２】
以下に説明する部分バッファリングは、ＡＤＲＣ符号化において使用する符号化ビットを決定するための革新的な手法を提供するものである。詳しくは、部分バッファリングは、閾値テーブルから閾値を選択する手法を提供するものであり、閾値テーブルは、遠隔の端末間の伝送速度を一定に保つとともに、エラーが増えることを制限するために設計されている。変形例においては、閾値テーブルはさらに、バッファが最大限活用されるよう設計される。一具体例においては、バッファは、任意のフレームセットに対応する符号化されたデータを１６分の１に分割して格納するメモリである。閾値は、上述した画像−ブロックマッピング処理により生成された２Ｄブロック又は３Ｄブロック内の画素を符号化するために用いるＱビットのビット数を決定するために用いられる。
【００７３】
閾値テーブルは、閾値の列を備え、この列は閾値セットとも呼ばれ、閾値テーブルの各列には閾値インデックスが付されている。一具体例においては、閾値テーブルは、閾値テーブルの上位列に位置する閾値セットが、より多くのＱコードビットを生成するように配列されている。これにより、利用可能な所定のビット数を有する任意のバッファに対して、エンコーダ１１０は、この所定のビット数より小さいビット数を生成する閾値に到達するまで、閾値テーブルを下位方向に順次検索する。バッファ内の画素データの符号化には、適切な閾値が用いられる。
【００７４】
一具体例においては、３０Ｍｂｐｓ程度の伝送速度が望まれる。この所望の伝送速度により、全ての任意のバッファにおいてＶＬデータの格納に３１，１５２ビットが利用可能となる。これに応じて、各バッファについての累積的ＤＲ分布が算出され、閾値テーブルから閾値セットが選択され、これに基づいて３Ｄブロックあるいは２Ｄブロック内の画素をＶＬデータとして符号化する。
【００７５】
ＦＩＧ．８は、バッファ０における選択された閾値及びＤＲ分布の具体例を示すグラフである。ＦＩＧ．８における垂直方向の軸は、累積ＤＲ分布を示す。例えば、値ｂは、ＤＲがＬ３以上の３Ｄブロック又は２Ｄブロックの数に等しい。水平方向の軸は、ＤＲ値のとり得る値を示す。ある具体例では、ＤＲ値は０〜２５５の値をとる。閾値Ｌ４，Ｌ３，Ｌ２，Ｌ１は、バッファの符号化を決定する閾値セットを表す。
【００７６】
一具体例において、バッファ０に格納されている全てのブロックは、閾値Ｌ４，Ｌ３，Ｌ２，Ｌ１を用いて符号化される。すなわち、ＤＲ値がＬ４よりおおきなブロックは、４ビットを用いて符号化された画素値を有することとなる。同様に、ＤＲ値がＬ３とＬ４の間にあるブロックに属する画素は、３ビットを用いて符号化される。また、ＤＲ値がＬ２とＬ３の間にあるブロックに属する画素は、２ビットを用いて符号化される。ＤＲ値がＬ１とＬ２の間にあるブロックに属する画素は１ビットを用いて符号化される。そして、ＤＲ値がＬ１より小さいブロックは、０ビットを用いて符号化される。Ｌ４，Ｌ３，Ｌ２，Ｌ１は、バッファ０内の全てのブロックを符号化するために用いるビットの総数が、３１，１５２ビットを超えることなく、可能な限り３１，１５２ビットに近い数となるように選択される。
【００７７】
ＦＩＧ．８ａは、部分バッファリングの一具体例を示す図である。フレーム８００は、符号化されてバッファ０〜５９に格納される。伝送エラーがデータの回復の妨げとなる場合、欠落したデータに対するエラー回復処理が行われるまで、フレーム８００の復号処理は中断される。ここで、部分バッファリングは、バッファ内のエラーの伝播を制限するため、残りのバッファについて復号処理を行うことができる。例えば、伝送エラーによりバッファ０内のブロック８０のＱビット及びモーションフラグの回復が妨げられているとする。部分バッファリングは、バッファ０内にこのエラーが伝播することを制限する。バッファ長は固定であるため、バッファ０の最後とバッファ１の先頭は既知であり、このためエラーの伝播バッファ０内に制限される。これにより、デコーダ１２０は、バッファ１内のブロックに対する処理を遅延することなく開始することができる。さらに、異なるバッファの符号化に対して異なる閾値セットを用いることにより、エンコーダ１１０は、任意のバッファ内に含まれるＱコードビットの数を最大化／制御することができ、したがってより高い圧縮比が実現できる。さらにまた、部分バッファリング処理では、バッファ０〜５９は、固定長を有するため、一定の伝送速度を実現できる。
【００７８】
一具体例においては、バッファの可変領域は、限られた数の閾値セットが存在するために、Ｑコードビットのみにより充足されるわけではない。すなわち、固定長を有するバッファの残りのビットは、ポストアンブルと呼ばれる所定のビットストリームパターンにより充足される。後述するように、ポストアンブルは、バッファの最後より前にあるＶＬデータの最後を示しているので、ポストアンブルにより双方向のデータ回復が実現できる。
【００７９】
バッファ内ＹＵＶブロックシャッフリング
Ｙ信号、Ｕ信号、Ｖ信号は、それぞれ固有の静的特性を有している。Ｑビット及びモーションフラグの回復処理（後述する）を改善するために、Ｙ信号、Ｕ信号及びＶ信号は、バッファ内で多重化される。したがって、伝送欠落は、特定の信号に対して実質的な影響を与えない。
【００８０】
ＦＩＧ．９は、それぞれＹ信号、Ｕ信号、Ｖ信号から導き出されるＹ−ＡＤＲＣブロック、Ｕ−ＡＤＲＣブロック、Ｖ−ＡＤＲＣブロックに対するシャッフリング処理であるバッファ内ＹＵＶブロックシャッフリング処理を説明する図である。バッファ９００は、フレームセット内ブロックシャッフリング後のＡＤＲＣブロックの割当を示す。バッファ９００は、６６個のＹ−ＡＤＲＣブロックと、これに続く１１個のＵ−ＡＤＲＣブロックと、これに続く１１個のＶ−ＡＤＲＣブロックを含む。バッファ９１０は、バッファ内ＹＵＶブロックシャッフリングを行った後のＹＵＶ−ＡＤＲＣブロック配列構造を示す。図に示すように、３つのＹ−ＡＤＲＣブロックに１つのＵ−ＡＤＲＣブロック又は１つのＶ−ＡＤＲＣブロックが後続する。バッファ内ＹＵＶブロックシャッフリングによりバッファ内の隣り合うブロックのビットストリームの類似の度合いが低減される。バッファ内ブロックシャッフリングは、この形態に限られることなく、初期の画像フォーマットに応じて、異なる信号、すなわち異なるＹＵＶ比又は異なる色空間を有する信号に対して変形して実行されるようにしてもよい。
【００８１】
グループ内ＶＬデータシャッフリング
グループ内ＶＬデータシャッフリングは３つのステップを有する。この３つのステップは、Ｑコードの連結と、Ｑコードの再割当と、連結されたＱコードのランダム化である。ＦＩＧ．１０は、グループ内ＶＬデータシャッフリングの手順を示す図であり、バッファ内に格納されたＱコードには、３つの処理が順次施される。この変形例としては、処理手順のサブセットをグループ内ＶＬデータシャッフリングに適用してもよい。各処理手順は、それぞれ独立して伝送中のデータに対するエラー回復に寄与する。したがって、各処理ステップを個別に説明する。エラー回復に関する詳細は、データ回復の説明の項目で述べる。
【００８２】
１．Ｑコード連結
Ｑコード連結により、複数のＡＤＲＣブロックが互いに復号されることが保証される。グループ復号によれば、後述するようにデータ回復工程において隣り合うブロックから追加的な情報を取得することが可能なため、エラー回復を容易に行うことができる。一具体例においては、Ｑコード連結は、バッファ内に格納された３つのＡＤＲＣブロックからなる各グループに対して個別に適用される。変形例として、グループ内に他のバッファからのＡＤＲＣを含めることもできる。ＡＤＲＣブロックに亘るＱコードの連結は、１つの連結ＡＤＲＣタイルの生成として記述される。ＦＩＧ．１１及びＦＩＧ．１１ａは、連結ＡＤＲＣタイルの生成を例示する図である。
【００８３】
ＦＩＧ．１１は、２ＡＤＲＣブロックから連結ＡＤＲＣタイルを生成する例を示す図である。具体的には、この連結は、２Ｄ−ＡＤＲＣブロック０，１，２に含まれる各Ｑコード（ｑ０〜ｑ６３）に対して行われ、この結果６４個のＱコードを含む連結ＡＤＲＣタイルＡが生成される。例えば、２Ｄ−ＡＤＲＣブロック０の第１のＱコードｑ０，０（量子化された値の０番目）は、２Ｄ−ＡＤＲＣブロック１の第１のＱコードｑ０，１に連結される。この２つの連結されたＱコードは、続いて、２Ｄ−ＡＤＲＣブロック２の第１のＱコードｑ０，２に連結され、これにより連結ＡＤＲＣタイルＡのＱ０が生成される。この処理は、Ｑ６３が生成されるまで繰り返される。これに代えて、連結ＡＤＲＣタイルＡ内のＱｉの生成を以下の式に基づいて行ってもよい。
【００８４】
Ｑｉ＝［ｑｉ，０，ｑｉ，１，ｑｉ，２］  ｉ＝０，１，２，・・・６３
さらに、連結ＡＤＲＣタイルＡ内の各Ｑｉには、単一のＱｉを生成するために連結されたビット総数であるＮビットを示す値が関連付けられる。
【００８５】
ＦＩＧ．１１ａは、動ブロックを含むフレーム対から生成された連結ＡＤＲＣタイルの具体例を示す図である。動ブロックとは、モーションフラグが設定された３Ｄ−ＡＤＲＣブロックである。モーションフラグは、上述した画像−ブロックマッピング処理により生成された２つの２Ｄブロック構造内の所定数の画素が第１のフレームと第２のフレームとの間で変化している場合に設定される。この変形例として、第１のフレームと、これに続くフレームとの間の各画素の変化の最大値が所定の値を超えた場合にモーションフラグを設定するようにしてもよい。一方、非動ブロック（すなわち静ブロック）は、モーションフラグが設定されていない３Ｄ−ＡＤＲＣブロックである。第１のフレームと、これに続く第２のフレームの２つの２Ｄブロック間で所定数の画素が変化していない場合、モーションフラグの設定は行われない。変形例として、第１のフレームと、これに続く第２のフレームとの間の各画素の変化の値が所定の値を超えない場合には、モーションフラグの設定を行わないものとしてもよい。
【００８６】
動ブロックは、第１のフレームにおける符号化された２Ｄブロックと、後続するフレームにおける符号化された２Ｄブロックとに基づくＱコードを含む。単一の符号化された２Ｄブロックに対応するＱコードの集合をＡＤＲＣタイルと呼ぶ。すなわち、動ブロックは２つのＡＤＲＣタイルを生成する。一方、静ブロックは、動きがないため、動ブロックの半数のＱコードのみしか含まず、したがって、１つのＡＤＲＣタイルしか生成しない。この具体例においては、静ブロックのＱコードは、第１のフレームの２Ｄブロックと、後続するフレームの対応する２Ｄブロックとの間の対応する画素の画素値の平均を求めることにより生成される。平均化された各画素値は、符号化されて、これにより単一のＡＤＲＣタイルを形成するＱコードの集合が生成される。このようにして、動ブロック１１１０は、ＡＤＲＣタイル０，１を生成し、静ブロック１１２０は、ＡＤＲＣタイル２を生成し、動ブロック１１３０は、ＡＤＲＣタイル３，４を生成する。
【００８７】
ＦＩＧ．１１ａに示すＡＤＲＣの連結処理では、ＡＤＲＣタイル０〜４を連結して連結ＡＤＲＣタイルＢを生成している。具体的には、ＡＤＲＣタイル０〜４内に含まれる各Ｑコード（ｑ０〜ｑ６３）が連結され、連結ＡＤＲＣタイルＢ内の６４個のＱコードが生成される。これに代えて、連結ＡＤＲＣタイルＢ内の各Ｑコード、すなわちＱｉを以下の数式に基づいて生成してもよい。
【００８８】
Ｑｉ＝［ｑｉ，０，ｑｉ，１，ｑｉ，２，ｑｉ，３，ｑｉ，４］  ｉ＝０，１，２，・・・６３
【００８９】
２．Ｑコード再割当
Ｑコードの再割当により、伝送欠落に起因するビットエラーが空間的に離れた画素に分散されることが保証される。特に、Ｑコードの再割当処理において、Ｑコードは、再分散され、再分散されたＱコードのビットは、シャッフルされる。したがって、Ｑコードの再割当により、破損された画素の周囲に破損されていない画素が残るため、エラーの回復が容易となる。画素の破損はＡＤＲＣブロック全体に亘って分散するため、ＤＲ及びＭＩＮの回復が容易となる。ＤＲ及びＭＩＮの回復については、データ回復の説明で詳述する。
【００９０】
ＦＩＧ．１２に１／６バーストエラー欠落による画素の劣化の具体例を示す。具体的には、２Ｄ−ＡＤＲＣブロック１２１０、１２２０、１２３０は、それぞれ３ビットを用いて符号化された６４個の画素を含む。すなわち、２Ｄ−ＡＤＲＣブロックの各画素Ｐ０〜Ｐ６３は、３ビットにより表される。２Ｄ−ＡＤＲＣブロック１２１０は、６ビット毎の第１ビットが欠落した場合におけるビット欠落パターンを影付きの長方形として示す図である。同様にＡＤＲＣブロック１２２０及びＡＤＲＣブロック１２３０は、それぞれ６ビット毎に第２及び第４ビットが欠落した場合を示す。ＦＩＧ．１２から、Ｑコードの再割当を行わなければ、１／６バーストエラー欠落により２Ｄ−ＡＤＲＣブロック１２１０，１２２０，１２３０において、それぞれ半数の画素に劣化が生じることがわかる。
【００９１】
一具体例において、Ｑコードの再割当はバッファに格納されている各連結ＡＤＲＣタイル対して別個に行われ、これによりデシャッフリングにおいて、ビットエラーが空間的に分散された画素に位置されることが保証される。変形例として、バッファ内に格納された各ＡＤＲＣブロックに対してＱコードの再割当を行ってもよい。
【００９２】
ＦＩＧ．１２ａは、連結ＡＤＲＣタイルに基づくシャッフリングされたＱコードビットのビットストリームを生成するＱコード再割当の具体例を示す。テーブル１２２及びテーブル１３２は、Ｑコードの再分配を示す。ビットストリーム１３０及び１４０は、Ｑコードビットのシャッフリングを示す。
【００９３】
テーブル１２２は、連結ＡＤＲＣタイルＡの連結されたＱコードを示す。Ｑ０は、最初の連結Ｑコードであり、Ｑ６３は、最後の連結Ｑコードである。テーブル１３２は、Ｑコードの再分配を示す。この具体例においては、第１の組である区画０には、Ｑ０，Ｑ６，Ｑ１２，Ｑ１８，Ｑ２４，Ｑ３０，Ｑ３６，Ｑ４２，Ｑ４８，Ｑ５４，Ｑ６０が含まれる。テーブル１３２内において後続する区画１には、１１個の連結Ｑコードが含まれている。同様にして区画２〜５にも１１個の連結Ｑコードが含まれる。テーブル１３２においては、区画間の境界を垂直方向の線分で示している。このように連結Ｑコードを空間的に分離された６つの区画に割り当てることにより、１／６バーストエラー欠落により生じるビット欠落パターンが連続する画素グループに分散されることが保証される。
【００９４】
ＦＩＧ．１２ｂは、再割り当てされたＱコードにおける１／６バーストエラーにより生じるビット欠落のパターンを示す図である。具体的には、２Ｄ−ＡＤＲＣブロック１２１５，１２２５，１２３５は、それぞれ３ビットを用いて符号化されている６４個の画素を有している。すなわち、各２Ｄ−ＡＤＲＣブロックの内の各画素Ｐ０〜Ｐ６３は、３ビットにより表される。２Ｄ−ＡＤＲＣブロック１２１５，１２２５，１２３５において、影付きの長方形で表されるビット欠落パターンは、連続する画素に亘って位置している。すなわち、与えられたセグメント欠落に対して、各２Ｄ−ＡＤＲＣブロック１２１５，１２２５，１２３５内のそれぞれ１１個の連続する画素のみが劣化している。変形例においては、区画へのＱコードの割当処理において、異なる動ブロックからのＱコードを割り当てるようにしてもよく、これにより空間的及び時間的に分離されたＱコードを６つのセグメントに割り当ててもよい。これにより、１／６バーストエラー欠落に対して破損されていない空間的及び時間的画素が追加され、より強力なエラー回復処理が提供される。
【００９５】
ＦＩＧ．１２ａにおいて、テーブル１３２内の再割当されたＱコードは、生成されるビットストリームに亘ってシャッフリングされ、ビットストリーム内で隣接するビットが異なる区画からのビットであるようにされる。テーブル１３２内の全ての区画内のＱコードは、ビットストリーム１３０内で連結される。ビットストリーム１３０内で隣り合う任意のビットの区画は、生成されるビットストリーム１４０において６ビット位置毎に分散される。これにより、ビットストリーム１４０内のビット番号０〜５は、各区画における第１のＱコードからの第１ビットを含む。同様に、ビットストリーム１４０のビット番号６〜１１は、各区画の第１のＱコードからの第２のビットを含む。このような処理は、全てのＱコードビットに対して繰り返される。これにより、１／６バーストエラー欠落による画素欠落が空間的に分離されることが保証される。
【００９６】
ＦＩＧ．１２ｃは、再割当された（すなわち再分配されシャッフリングされた）Ｑコードの１／６バーストエラー欠落により生成されたビット欠落パターンを示す図である。特に、２Ｄ−ＡＤＲＣブロック１２１７，１２２７，１２３７は、それぞれ３ビットを用いて符号化された６４個の画素を含む。すなわち、各２Ｄ−ＡＤＲＣブロックの各画素Ｐ０〜Ｐ６３は、３ビットで表される。２Ｄ−ＡＤＲＣブロック１２１７，１２２７，１２３７において、影付き長方形で示されているビット欠落パターンは、空間的に分離された画素に分散されており、したがって、画素エラー回復を容易に行うことができる。
【００９７】
３．Ｑコードビットのランダム化
Ｑコードビットは、マスキングキーを用いてランダム化される。マスキングキーは、欠落及び破損されたデータの回復処理においてデコーダの処理を補助するものである。具体的には、符号化処理において、ＫＥＹとして示されるキーを用いてＱコードのビットストリームをマスキングする。これに対応して、デコーダは、このＫＥＹの正確な値を知っている必要があり、これによりＱコードのビットストリームのマスクを外すことができる。
【００９８】
一具体例において、ＫＥＹは、３つのＡＤＲＣブロックに対するＱコード再割当により生成されたＱコードのビットストリームをマスキングするために用いられる。上述のように、ＡＤＲＣブロックはＦＬデータ及びＱコードを有している。マスキングキーの各キー要素（ｄｉ）は、ＦＬデータの値と、対応するＡＤＲＣブロックに関連する量子化ビット数（ｑｉ）との組み合わせにより生成される。具体例においては、モーションフラグとＱビットを用いてＫＥＹを定義する。すなわち、この具体例においては、キー要素は、以下の数式に基づいて生成される。
【００９９】
ｄｉ＝５・ｍｉ＋ｑｉ  ここで、ｉ＝０，１，２  ｑｉ＝０，１，２，３，４
変数ｍｉは、モーションフラグに等しい。すなわち、対応するＡＤＲＣブロックが動ブロックである場合、ｍｉは０となり、対応するＡＤＲＣブロックが静ブロックである場合、ｍｉは１となる。さらに、変数ｑｉは対応するＡＤＲＣブロックを符号化するために用いる量子化ビットを表す。すなわち、ｑｉの値は、４ビットＡＤＲＣ符号化方式においては０，１，２，３，４のいずれかである。一具体例において、３つのＡＤＲＣブロックからなるグループに用いるＫＥＹは、以下に示す数式に基づいて得られるキー要素（ｄｉ）により定義される。
【０１００】
ＫＥＹ＝ｄ０＋１０・ｄ１＋１００・ｄ２
これにより、モーションフラグ又はＱビットデータの回復処理において、マスキングキーの生成に用いられた値に基づいて、使用された可能性のあるキーの再生が可能となる。再生されたキーの値は、受信されたＱコードのビットストリムのアンマスキングに使用され、これにより復号候補が生成される。キーの値の再生及び特定の復号候補の選択については、データ回復の説明において詳述する。
【０１０１】
変形例として、マスキングキーは、様々な要素から生成できる。これにより、伝送媒体を介して要素に関する情報を伝送することなく、デコーダに要素に関連する特定の情報を提供することができる。一具体例においては、任意のＡＤＲＣブロックに対応するＤＲ値又はＭＩＮ値を用いてマスキングキーを生成し、このマスキングキーによりそのＡＤＲＣブロックを示すビットストリームをマスキングする。
【０１０２】
ＦＩＧ．１０〜１２には、伝送中に生じる１／６パケットデータ欠落までを許容するグループ内ＶＬデータシャッフリングの例を示しているが、当業者にとって、区画の総数、ビットの間隔を変更することにより、１／ｎバーストエラー欠落に対応するよう設計を変更できることは明らかである。
【０１０３】
セグメント間ＦＬデータシャッフリング
セグメント間ＦＬデータシャッフリングは、異なるセグメント間でブロック属性を再割当するものである。ブロック属性を再割当することによりデータ欠落を分散させることができる。具体的には、あるセグメントのＦＬデータが伝送中に欠落しても、失われたＤＲ値、ＭＩＮ値及びモーションフラグ値が同一のブロックに属さないようにする。ＦＩＧ．１３及びＦＩＧ．１４は、セグメント間ＦＬデータシャッフリングの具体例を示す図である。
【０１０４】
ＦＩＧ．１３にセグメント０〜５のコンテンツを示す。一具体例において、各セグメントは、８８０個のＤＲと、８８０個のＭＩＮと、８８０個のモーションフラグと、６６０個のＹブロック、１１０個のＵブロック、１１０個のＶブロックに対応するＶＬデータとを有する。図に示すように、ＭＩＮシャッフリング１３００のセグメント０のＭＩＮ値は、セグメント２に移動され、セグメント２のＭＩＮ値は、セグメント４に移動され、セグメント４のＭＩＮ値は、セグメント０に移動される。さらにセグメント１のＭＩＮ値はセグメント３に移動され、セグメント３のＭＩＮ値はセグメント５に移動され、セグメント５のＭＩＮ値は、セグメント１に移動される。
【０１０５】
ＦＩＧ．１３ａは、モーションフラグのシャッフリングを示す。図に示すように、モーションフラグシャッフリング１３０５のセグメント０のモーションフラグ値はセグメント４に移動され、セグメント２のモーションフラグ値はセグメント０に移動され、セグメント４のモーションフラグ値はセグメント２に移動される。さらに、セグメント１のモーションフラグはセグメント５に移動され、セグメント３のモーションフラグはセグメント１に移動され、セグメント５のモーションフラグはセグメント３に移動される。欠落パターン１３１０は、伝送中にセグメント０が欠落した結果のＦＬデータ欠落を示す。
【０１０６】
特定のブロック属性に対して、ＦＩＧ．１３及びＦＩＧ．１３ａに示すように、セグメント間の特定のブロック属性の全ての瞬時値のシャッフリングを行う。例えば、ＦＩＧ．１３においては、セグメント２の８８０個のＭＩＮ値は、セグメント０の８８０個のＭＩＮ値に一括して置き換えられる。同様に、ＦＩＧ．１３ａにおいては、セグメント４の８８０個のモーションフラグ値は、セグメント０のモーションフラグ値に一括して置き換えられる。このようにブロック属性を一括してシャッフリングすることにより、連続するパケットの伝送欠落に対して、欠落は、特定のブロックの特定のブロック属性に偏らない。一具体例においては、１つのブロックグループは３つのＡＤＲＣブロックを含む。
【０１０７】
ＦＩＧ．１４は、ＤＲ値、ＭＩＮ値、モーションフラグ値に対する３つのモジュールシャッフルを示す図である。３つモジュールシャッフルとは、３つの異なるセグメントにおける３つのグループ（すなわちブロックグループ）に亘ってシャッフリングパターンを共有することを意味する。シャッフリングパターンは、３つの異なるセグメント内の全てのブロックグループに対して繰り返される。なお、異なるブロック属性に対しては異なるシャッフリングパターンを用いる。すなわち、３つのモジュールシャッフリングにより、３つの全てのセグメントに亘ってブロック属性が分散される。具体的には、任意のブロックグループについて、３つのモジュールシャッフリングは、伝送中のセグメントの欠落に対して、特定のブロック属性の瞬時値が１つだけしか失われないことを保証する。したがって、後述するデータ回復処理において、ブロック内の失われたデータ回復するための復号候補の数を低減することができる。
【０１０８】
ＤＲモジュールシャッフル１４１０に示すように、１セグメントには８８０個のＤＲ値が格納されている。ＤＲ値には、そのＤＲ値が由来するブロックに応じた番号が付されている。３つのモジュールシャッフリングにおいては、３つのセグメントのＦＬデータのコンテンツがシャッフルされる。カウント値０〜２は、モジュールシャッフリングのために識別される３つのセグメント内の各ＤＲ値を識別するために付された値である。すなわち、ブロック番号０，３，６，９・・・に属するＤＲ値は、カウント０に属する。同様に、ブロック番号１，４，７，１０・・・に属するＤＲ値は、カウント１に属し、ブロック番号２，５，８，１１に属するＤＲ値は、カウント２に属する。これにより、所定のカウント値に対して、そのカウント値に関連付けられたＤＲ値は、セグメント０，２，４に亘ってシャッフリングされる。同様に、同一のカウント値に関連付けられたＤＲ値は、セグメント１，３，５に亘ってシャッフリングされる。
【０１０９】
ＤＲモジュールシャッフル１４１０において、カウント値０に属するＤＲ値はシャッフリングされない。カウント値１に属するＤＲ値は、シャッフリングされる。具体的には、セグメントＡ内のカウント値１に属するＤＲ値は、セグメントＢに移動され、セグメントＢ内のカウント値１に属するＤＲ値は、セグメントＣに移動され、セグメントＣ内のカウント値１に属するＤＲ値は、セグメントＡに移動される。
【０１１０】
カウント値２に属するＤＲ値もまたシャッフリングされる。具体的には、セグメントＡ内のカウント値２に属するＤＲ値は、セグメントＣに移動され、セグメントＢ内のカウント値２に属するＤＲ値は、セグメントＡに移動され、セグメントＣ内のカウント値２に属するＤＲ値は、セグメントＢに移動される。
【０１１１】
ＭＩＮモジュールシャッフル１４２０は、ＭＩＮ値用の３つのブロック属性のモジュールシャッフリング処理の具体例を示す。１つのセグメントは、８８０個のＭＩＮ値を含んでいる。ＭＩＮモジュールシャッフル１４２０においては、ＤＲモジュールシャッフリング１４１０においてカウント値１及びカウント値２に対して用いたシャッフリングパターンをカウント値０及びカウント値１にシフトして用いる。詳しくは、ＤＲモジュールシャッフル１４１０においてカウント値１に対して用いたシャッフリングパターンをカウント値０に適用する。また、ＤＲモジュールシャッフル１４１０においてカウント値２に対して用いたシャッフリングパターンをカウント値１に適用し、カウント値２に属するＭＩＮ値については、シャッフリングを行わない。
【０１１２】
モーションフラグモジュールシャッフル１４３０は、モーションフラグ値用の３つのブロック属性のモジュールシャッフリング処理の具体例を示す。１セグメントは８８０個のモーションフラグを含んでいる。モーションフラグモジュールシャッフル１４３０においては、ＤＲモジュールシャッフル１４１０においてカウント値１及びカウント値２に対して用いたシャッフリングパターンをそれぞれカウント値２及びカウント値０にシフトして用いる。具体的には、ＤＲモジュールシャッフル１４１０においてカウント値２に対して用いたシャッフリングパターンをカウント値０に適用する。また、ＤＲモジュールシャッフル１４１０においてカウント値１に対して用いたシャッフリングパターンをカウント値２に適用し、カウント値１に属するモーションフラグ値については、シャッフリングを行わない。
【０１１３】
ＦＩＧ．１４ａは、モジュールシャッフル１４１０，１４２０，１４３０により得られたモジュールシャッフリングの結果を示す図である。モジュールシャッフル結果１４１６は、各ブロック属性移動先がセグメント０に属することを示す。この例では、セグメント０は、ＦＩＧ．１４に示すセグメントＡに対応する。この移動先は、ＦＩＧ．１４に示すモジュールシャッフル１４１０，１４２０，１４３０により決定される。ＦＩＧ．１４ａは、セグメント０が伝送中に欠落した場合のブロック属性の欠落分布を示す。具体的には、欠落パターン１４１５は、モジュールシャッフル１４１０，１４２０，１４３０によりシャッフリングされた受信データをデシャッフリング処理した後に、６つのセグメントに亘るＤＲ値、モーションフラグ値、ＭＩＮ値の欠落を示す。ＦＩＧ．１４ａに示すように、ブロック属性の欠落は、セグメント０，２，４に亘って周期的に分散されており、セグメント１，３，５にはブロック属性欠落は生じていない。さらに、空間欠落パターン１４１７は、伝送中にセグメント０が欠落して失われたＦＬデータのデシャッフル後の空間的分布を示す。空間欠落パターン１４１７は、後に受信データに対して施されるデシャッフリング処理後のＤＲ値、モーションフラグ値、ＭＩＮ値の欠落を示す。空間欠落パターン１４１７においては、破損されたブロックは破損されていないブロックに取り囲まれており、破損されたブロック属性は、破損されていないブロック属性に基づいて回復することができる。
【０１１４】
ＦＩＧ．１４及びＦＩＧ．１４ａは、３つのモジュールシャッフリングパターン及び伝送中にセグメントが失われた後のブロック属性の欠落分布を示す。変形例として、カウント値又はセグメント数を変更することによりブロック属性の欠落分布を変更してもよい。ＦＩＧ．１４ｂにモジュールシャッフル結果１４２１と欠落パターン１４２０とを示す。同様に、ＦＩＧ．１４ｃにモジュールシャッフル結果１４２６と欠落パターン１４２５とを示す。欠落パターン１４２０及び欠落パターン１４２５は、上述した３つのセグメントではなく、６つのセグメントに亘るブロック属性欠落の分布を示す。
【０１１５】
シャッフリング処理を行うための、ブロック属性を組み合わせて分散させる手法については、様々な変形例が可能である。
【０１１６】
セグメント間ＶＬデータシャッフリング
セグメント間ＶＬデータシャッフリング処理では、所定数のセグメント、例えば６つのセグメントが並べ替えられ、これにより１／６パケット伝送欠落までの欠落に対し、空間的に分離された周期的なＶＬデータ欠落が保証される。ＦＩＧ．１５及びＦＩＧ．１６は、セグメント間ＶＬデータシャッフリング処理の一具体例を示す。
【０１１７】
この具体例においては、３０Ｍｂｐｓに近い伝送速度が望ましい。したがって、望ましい伝送速度では、６０のバッファのそれぞれにおけるＶＬデータとして３１，１５２ビットが利用可能となる。残りの領域には、バッファ内に含まれる８８個のブロック用のＦＬデータに使用される。ＦＩＧ．１５は、３０Ｍｂｐｓに近い伝送速度用のフレームセット内のＶＬデータバッファ配列構造を示す図である。上述のとおり、部分バッファリングにより各バッファの使用可能なＶＬデータの使用効率が最適化されており、ＶＬデータの未使用領域は、ポストアンブルにより充足されている。
【０１１８】
ＦＩＧ．１６は、空間的に分散された周期的なＶＬデータ欠落を保証するシャッフリング処理の具体例を示す図である。第１列は、ＦＩＧ．１５に示す６０個のバッファから１，８６９，１２０ビットの連結ストリームに並べ替えられたＶＬデータを示す図である。第２列は、６ビット毎にビットを抽出してまとめた新たなビットストリームを示す図である。これにより、デコーダが後に逆の処理を行う際に、伝送中に起こった１／６までのバースト欠落は、２つの破損されたビット間に少なくとも５つの未破損ビットがある周期的な欠落パターンに変換される。
【０１１９】
第３列は、ストリーム２のビットを１０ビット毎に抽出してグループ化して生成された新たなビットストリーム、すなわちストリーム３を示す。この場合も、グループの境界は、セグメントにおけるビット番号により規定される。ストリーム２を１０ビット毎にグループ化することにより、１／６０のデータ欠落が生じた場合、２つの破損されたビット間に少なくとも５９個の未破損ビットが存在することが保証される。これにより、８８個の連続するパケットのデータが欠落した場合に、空間的に分離された周期的なＶＬデータ欠落が実現される。
【０１２０】
第４列は、ストリーム３のビットを１１ビット毎に抽出して生成されたストリーム４を示す。この場合も、グループの境界は、セグメントにおけるビット番号により規定される。ストリーム３を１１ビット毎にグループ化することにより、１／６６０のデータ欠落が生じた場合、２つの破損されたビット間に少なくとも６５９個の未破損ビットが存在することが保証され、８個の連続するパケットの伝送欠落が生じた場合、空間的に分離された周期的なＶＬデータ欠落を実現する。
【０１２１】
ストリーム４内の３１，１５２ビットからなる各グループは、連続的にバッファ０〜５９に再格納される。すなわち、最初のビットグループは、バッファ０に格納され、最後のビットグループは、バッファ５９に格納される。
【０１２２】
ＦＩＧ．１６に示すグループ化の手法を変更することにより、１／ｎまでの伝送欠落を許容する空間的に分離された周期的なＶＬデータ欠落が保証されることは、当業者にとって明らかである。
【０１２３】
伝送
上述したシャッフリング処理により、ＦＬデータ及びＶＬデータが相互に混合されたバッファが形成される。一具体例においては、パケット構造２００に従って各バッファからパケットを生成し、各パケットを伝送媒体１３５を介して送信する。
【０１２４】
データ回復
上述のとおり、ビットストリームを符号化する革新的な本手法により、データパケットの欠落により生じるエラーに対する強力なエラー回復を実現することができる。復号処理の概要については、ＦＩＧ．４に示すとおりである。
【０１２５】
ＦＩＧ．４に示すように、パケットとして受信されたデータは、複数レベルのデシャッフリング処理、すなわちステップ４２５，４３０，４３５，４４０において処理され、ここでは、パケットとして受信されたデータの異なるデータ又は部分がデシャッフリングされ、データが復元される。そして、ステップ４４５において、当分野で知られた技術（１９９１年９月４日〜６日にイタリアのトリノで開催されたＨＤＴＶ及びその未来に関する第４回国際研究会（Fourth International Workshop on HDTV and Beyond）において、近藤、藤森、中屋らにより発表された「将来のＨＤＴＶデジタルＶＴＲのための適応ダイナミックレンジコーディング方式（Adaptive Dynamic Range Coding Scheme for Future HDTV Digital VTR）」参照）を用いてデータをＡＤＲＣ復号する。
【０１２６】
ステップ４４５，４５０において、フレームセット内ブロックデシャッフリング及びブロック−画像マッピングが順次実行される。ステップ４２５，４３０，４３５，４４０，４４５，４５０，４５５は、データを符号化するために実行される上述の処理の逆の処理であり、ここでは、詳細には説明しない。なお、一具体例においては、ステップ４２５，４３０，４４０により示されるデシャッフリングは、データに対して独立である。例えば、実行されるデシャッフリング処理は、予め定められているか、あるいはアドレスマッピング又はテーブルルックアップにより特定される。デシャッフリングステップ４２５，４３０，４４０は、データコンテンツに対して独立しているので、例えばパケット欠落に起因するデータ欠落によってデシャッフリング処理ができなくなることはない。同様に、ステップ４５０，４５５は、データに対して独立である。詳しくは、グループ内ＶＬデータデシャッフリング処理により、ブロックグループ用の量子化コードが決定される。したがって、ステップ４３５では、パケットが欠落している場合、影響のあるグループを処理することはできない。
【０１２７】
デシャッフリング処理、復号処理、マッピング処理（ステップ４２５，４３０，４３５，４４０，４４５，４５０，４５５）の後、回復処理が実行され、これにより欠落パケット内に存在していたＱビット及びモーションフラグ値が回復される。Ｑビットの欠落は、通常ＤＲ欠落（パケット欠落に起因する）に起因する。Ｑビット又はモーションフラグ値が未知の場合、画素のＱコードビットをデータビットストリームから判定することができない。Ｑビット又はモーションフラグ値が不正確に判定された場合、バッファ内のデータにおいて後続するブロックの開始点が誤って判断されるため、このエラーは伝播性を有している。
【０１２８】
ＦＩＧ．１７は、Ｑビット及びモーションフラグ値を回復するための処理の概要を示す図である。ここでは、特定の具体例により複数のデータブロックを用いてＱビットとモーションフラグ値を回復する処理を説明する。しかしながら、ブロックの数は、この具体例に例示するものに制限されるわけではなく、１又は複数のブロックを用いることができる。ＦＩＧ．１７に示すように、ステップ１７０５において、ビットストリーム内に検出されたエラーに基づいて、ステップ１７１０において、特定のパラメータに基づいて、検査された３つのブロック用の復号候補が生成される。ステップ１７１５において、各復号候補が正しい復号候補である可能性（likelihood）に基づいて各復号候補に得点を付ける。そして、最も得点の高い復号候補を選択する。選択された復号候補は、Ｑビット及びモーションフラグ値を修正し、これにより検査されたブロックの画素が復号される。
【０１２９】
ＦＩＧ．４に示す復号処理において、一旦最良の復号候補が選択されると、ステップ４６５において、パケット欠落に起因して失われたＤＲ値又はＭＩＮ値が回復される。ここでは、例えば隣り合うブロックの最小自乗又は平均を用いた手法など、当業者に既知の回復処理を用いてＤＲ及びＭＩＮを回復する。この処理の詳細については、例えば、１９９１年９月４日〜６日にイタリアのトリノで開催されたＨＤＴＶ及びその未来に関する第４回国際研究会（Fourth International Workshop on HDTV and Beyond）において、近藤、藤森、中屋らにより発表された「将来のＨＤＴＶデジタルＶＴＲのための適応ダイナミックレンジコーディング方式（Adaptive Dynamic Range Coding Scheme for Future HDTV Digital VTR）」に記載されている。この具体例においては、革新的な画像−ブロックマッピング処理及びこれに基づくデータ構造により隣り合うブロックを増加させ、これにより追加的データを提供し、より正確なＤＲ及びＭＩＮ回復を容易に行うことができる。詳しくは、一具体例において、ＤＲ及びＭＩＮは以下の式に基づいて回復される。
【０１３０】
【数４】
0004558195.tif 000005
【０１３１】
ここで、ＤＲ’は、回復されたＤＲに対応し、ｑｉは、ＡＤＲＣブロック内のｉ番目の値であり、ｑｉ∈｛０，１，・・・２ｑ−１｝であり、エッジマッチングＡＤＲＣの場合ｍ＝２Ｑ−１、非エッジマッチングＡＤＲＣの場合ｍ＝２Ｑであり、ｙｉは、隣接するブロックの復号された値であり、Ｑは、Ｑビット値である。
【０１３２】
【数５】
0004558195.tif 000006
【０１３３】
ここで、ＭＩＮ’は、回復されたＭＩＮに対応し、Ｎは、総和に用いた項の数を表す（例えば、ｉが０〜３１であればＮは３２である）。他の具体例において、同一のブロックのＤＲ及びＭＩＮが同時に破損されている場合、ＤＲ及びＭＩＮは以下の式に基づいて回復される。
【０１３４】
【数６】
0004558195.tif 000007
【０１３５】
ステップ４７０において、Ｑビット及びモーションフラグ回復を実行する以前に復号されていないデータをＡＤＲＣ復号し、ステップ４７５において、パケット欠落又はランダムエラーに起因して生じたエラーを含む全ての画素データを回復する。そして、ステップ４８５において、３：１：０−４：２：２逆変換を行い、画像を表示のための望ましいフォーマットに変換する。
【０１３６】
ＦＩＧ．１８は、本発明が提供する復号処理におけるＱビット及びモーションフラグ回復処理の特定の具体例を示す図である。この特定の具体例において、処理に入力される情報は、隣接ブロック情報と、処理すべき３つのブロックのブロック属性及び画素データである。さらに、失われたデータの位置を示すエラーフラグも入力される。エラーフラグは、当業者に知られた様々な手法で生成することができるため、詳細には説明しない。エラーフラグは、どのビットが破損された又は欠落したパケットにより伝送されてきたかを示す。
【０１３７】
ステップ１８０５において、復号候補を生成する。復号候補は様々な手法で生成できる。例えば、処理負担がかなり大きくなってしまうが、復号候補に可能な復号の全てを含ませてもよい。これに代えて、事前に特定されたパラメータに基づいて、復号候補を生成し、評価すべき復号候補の数を減らしてもよい。
【０１３８】
この具体例においては、復号候補は、上述したグループ内ＶＬデータシャッフリング処理においてビットストリームをランダム化するために用いられた可能性のあるキー値に基づいて判定される。さらに、復号候補は、復号すべき状態で残っているビットのビット長及び残りのブロック数に関する情報により制限される。例えば、後述するように、最後のブロックの処理においては、ブロックの復号長は通常既知である。
【０１３９】
この具体例の説明を続ける。ＦＩＧ．１９は、この具体例における可能な組合わせを表す、ここでｘは、未知の値（パケット欠落等に起因して失われた値）を示す。さらに具体例を挙げて説明する。ｍｉは、ｉ番目のブロックのモーションフラグであり、ｑｉは、ｉ番目のブロックの量子化ビットの数であり、ｎｉは、ｉ番目のブロックに対して可能な復号候補の数であり、ｄｉは、グループ内ＶＬデータシャッフリングの説明で述べたｉ番目のブロックのキー要素の値である。ｉ番目のブロックは、各グループに内で定義される。この具体例では、各グループ内のブロック数は３である。この３ブロックグループに対するキーは、ｄ０＋１０・ｄ１＋１００・ｄ２として生成される。第１のブロックにおいてモーションフラグが未知であり、量子化ビットのビット数が２であり、ｍ０がｘであり、ｑ０が２であるとする。上述の式に基づいて、キー要素ｄｉは、ｄｉ＝５・ｍｉ＋ｑｉとなり、ｄ０として可能なデジットの集合は｛２，７｝となる。したがって、可能な値（ｎ０）は、２となる。第２のブロックのモーションフラグ値が１であり、量子化ビット数が１であり、ｄｉの値がｄｉ＝５・１＋１＝６であり、ｎｉ＝１であるとする。また、第３のブロックのモーションフラグ値が１であり、量子化ビット数が未知であるとする。これにより、デジットｄ２は｛６，７，８，９｝の集合からなり、ｎ２＝４となる。したがって、このグループの復号候補の可能数Ｍは、２×１×４＝８となり、復号候補を生成するキーのバリエーションは、６６２，６６７，７６２，７６７，８６２，８６７，９６２，９６７となる。この処理は、好ましくは、データ欠落の影響を受けた各グループに対して実行される。
【０１４０】
ＦＩＧ．１７の説明に戻る。ステップ１７１５において、データがキーデータに基づいて復号されると、生成された復号候補は、復号されたデータが正しい可能性に基づいて得点付けされる。ステップ１７２０において、最高の得点を得た復号候補を選択する。
【０１４１】
復号候補の得点付けには、様々な手法を用いることができる。例えば、特定の復号候補に基づくブロック内の画素が画像内の他の画素にどれくらい合致しているかを分析して復号候補を得点付けすることができる。好ましくは、得点は、例えば自乗誤差や相関などのエラーを示す判定基準に基づいて決定する。例えば、相関については、隣接する画素との相関度が高いほど、仮定が正しい確率が高い。したがって、相関度が高ければ復号候補が正しいことが予測され、相関性がなければ復号候補が正しくないことが予測される。
【０１４２】
ＦＩＧ．１８に示すように、４つの異なる判定基準を分析して最良の復号候補を選択する。しかしながら、復号候補を選択するために分析する判定基準の数は、１乃至３個であってもよく、５個以上であってもよい。
【０１４３】
ＦＩＧ．１８に示す具体例では、４つの副得点付け判定基準を設け、これらに対する得点を合計して最終得点を算出する。具体的には、ステップ１８１５において、自乗誤差を求め、ステップ１８２０において、水平相関を判定し、ステップ１８２５において垂直相関を判定し、ステップ１８３０において、時間的動きを測定する（それぞれ、Ｍ個の復号候補とＮ個のブロックと２データフレーム／ブロックに対応するＭ×２Ｎ行列として示される）。ここでは、水平相関及び垂直相関を用いるが、例えば対角相関等の様々な相関値を測定することができる。ステップ１８３５，１８４０，１８４５，１８５０において、各判定基準の信頼度を測定し、測定値を正規化する。ステップ１８５５，１８６０，１８６５，１８７０においては、それぞれ異なる判定基準の確率関数を生成する。これら確率関数は、例えば確率値を掛け合わせることにより結合され、例えばＦＩＧ．１８のステップ１８７５においては、尤度関数等による得点付けを行う。そして各復号候補の得点を他の全ての復号候補の得点と比較し、最も正しいと考えられる復号候補を選択する。
【０１４４】
各復号候補を評価し、それぞれの候補に得点を付けるために様々な手法を用いることができる。例えば、信頼度測定は、判定基準を正規化する一手法である。さらに、以下に説明するもの以外にも、様々な信頼度測定の手法がある。同様に、各判定基準に基づく確率値を掛け合わせて全体の尤度関数を求める手法は、検査された様々な判定基準を結合する手法の単なる例示に過ぎない。
【０１４５】
通常、候補となる可能性が低い復号候補が得る得点は低く、一方、候補として有力な復号候補が得る得点が極めて高くなるため、符号化処理により最良の復号候補の判定が容易となる。特に、上述したグループ内データシャッフリング処理におけるＱコードのランダム化処理によってこの判定を容易に行うことができる。
【０１４６】
ＦＩＧ．２０ａ、２０ｂ、２０ｃ、２０ｄは、ＦＩＧ．１８に示すステップ１８１５，１８２０，１８２５，１８３０において特定の復号候補に得点を付け、及び総得点を算出するための異なる測定法の例を示す。ＦＩＧ．２０ａは、復号候補により復号された画素ｘｉを復号された隣接する画素ｙｉ，ｊと比較して評価する自乗誤差による測定を説明する図である。添え字「ｉ，ｊ」は、ｉに隣接するアドレスに対応する。なお、画像内の輪郭の境界に存在するために生じる急峻な変化（スパイク：spike）の影響を取り除くために、値が大きな項のいくつかを除外することが望ましい。好ましくは、（ｘｉ−ｙｉ，ｊ）２を除外し、発生する可能性のあるスパイクを回避するとよい。ＦＩＧ．２０ｂは、時間的動きの判定基準を測定する手法を説明する図である。これは、ブロックが動ブロックであるか、動ブロックであると仮定される場合にのみ適用可能である。時間的動きの判定基準では、ブロック間の相違は小さいものであると仮定する。したがって、復号候補が悪いほど、ブロック間の相違が大きくなる。空間相関では、実際の画像が密接な関係を保ちながら徐々に変化するため、復号候補が正しい可能性が高いほど、相関度が高くなると仮定する。ＦＩＧ．２０ｃに示す水平相関測定及びＦＩＧ．２０ｄに示す垂直相関測定は、この仮定を利用する。
【０１４７】
ＦＩＧ．１８に示すステップ１８３５，１８４０，１８４５，１８５０における信頼度測定は、先のステップ（ステップ１８１５，１８２０，１８２５，１８３０）において判定された判定基準の正規化を行う処理である。一具体例において、例えば、自乗誤差が［０，１］間の値をとり、エラーが等しい場合、信頼度は０となり、エラーが０である場合信頼度は１となる。正規化のためには他の測定法及び手法を用いてもよい。
【０１４８】
同様に、空間相関に関する信頼度は、以下の式により算出される。
【０１４９】
maximum(Y,0)-maximum(X,0)
ここで、Ｙは、最良の相関値であり、Ｘは、現在の復号候補による相関値である。時間的動きの信頼度の測定は、以下の式に基づいて行われる。
【０１５０】
conf=(a-b)/(a+b)
ここで、a=max(X, M_TH)であり、b=max(Y, M_TH)であり、さらにここで、M_THは候補ブロックの動き閾値であり、Ｙは最良の測定値、すなわち最小の時間的動きを表し、Ｘは現在の候補の時間的動きの測定値を表す。
【０１５１】
ＦＩＧ．１８に示すステップ１８５５，１８６０，１８６５，１８７０において、それぞれ異なる判定基準に関する確率関数を生成する。確率を測定する手法は様々なものが存在する。例えば、得点を信頼度の測定に用いることができる。信頼度の測定値が所定の値、例えば０．８より大きければ、基礎得点から１０を減じ、０．５〜０．８の間であれば基礎得点から５を減じる。ＦＩＧ．２１は、自乗誤差測定判定基準用の確率関数を生成するために用いる具体例である。この表は、経験的に求められた任意のデータを格納し、信頼度と、自乗誤差測定値と、既知復号候補が含まれている。具体的には、この表は、破損されていないデータを用い、ＤＲ値が破損又は欠落したと仮定して作成することができる。これにより、適切な復号及び不適切な復号に対するキー及び信頼度測定値が求められる。この表は、適切な復号と不適切な復号との確率比を反映したものである。この表を用いて、特定の自乗誤差の値（列）及び信頼度の値（行）に対する確率が判定される。例えば、信頼度０において、様々な自乗誤差が存在し、候補が正しい確率は４０％〜５０％であることが判る。信頼度が０ではないが、低い値である場合、この確率は、急速に低下する。相関及び時間的動きに関しても、対応する経験的に求められた判定基準測定値及び信頼度測定値に基づいて、同様の表を作成することができる。
【０１５２】
生成された確率を用いて、この具体例における、上述の「得点」を求めることができる。候補復号の得点付けには、他の手法を用いてもよい。ステップ１８７５において、異なる確率を結合して尤度関数Ｌｉ＝ｊ・Ｐｉ，ｊを求める。ここで、ｊは確率関数Ｐｉ，ｊの乗算関数であり、Ｐｉ，ｊは候補ｉブロックｊの確率関数である。候補としては、関数Ｌｉが最大となるものを選択する。
【０１５３】
ＦＩＧ．１８に示す処理においては、欠落したパケットにより伝送されたブロック属性を回復する必要がある場合がある。したがって、ステップ１８１０において、ＤＲ値及びＭＩＮ値を必要に応じて回復する。この回復処理には、初期値、平均、自乗誤差関数を用いた手法や、例えば、１９９３年９月２０〜２２日にオーストラリアのメルボルンで開催されたＩＥＥＥビジュアル信号処理及び通信学会で発表された近藤、藤森、中屋らによる「将来のＨＤＴＶデジタルＶＴＲのための適応ダイナミックレンジコーディング（Adaptive Dynamic Range Coding Scheme for Future HDTV Digital VTR）」及び近藤、藤森、中屋、内田らによる「新たなデジタルＶＣＲの秘匿法（A New Concealment Method for Digital VCRs）」に開示されたより高度な手法を用いることができる。回復された値は、上述した復号候補の生成に利用される。
【０１５４】
あるいは、ＤＲ値及びＭＩＮ値は、Ｑビット判定処理において判定される。この手法をＦＩＧ．２２に示す。具体的には、上述のとおり、この具体例においては、モーションフラグ及び量子化ビット数を用いて符号化処理を行い、さらにこれらにより、回復処理において復号候補の可能な数を減少させている。上述のとおり、他の情報を用いてもよい。すなわち、ＤＲ値及び／又はＭＩＮ値を符号化にも用いてもよい。これに代えて、ＤＲの一部のビット（例えば、ＤＲにおいて重要度が低い２つのビット）を符号化に用いてもよい。ＤＲデータを符号化しても、変数を追加するにつれて可能な復号候補の数は増加する。ＦＩＧ．２２の処理では、Ｋ・Ｍ復号候補が生成される。ここで、Ｋは、未知のデータの候補値の数であり、例えば、ＤＲ１、ＤＲ２、ＤＲ３（ＤＲ１、ＤＲ２、ＤＲ３は、グループ内のブロックのＤＲ値を示す）の合計の２ビットが符号化された場合、Ｋ＝４である。ＤＲ及びＭＩＮは、例えばＤＲ１、ＤＲ２、ＤＲ３の合計の２ビット等の補助情報を用いて回復される。この処理により、復号候補の最大数を調べるためのオーバーヘッドを代償として、候補選択処理の精度を向上させることができる。
【０１５５】
なお、通常、復号された隣接するブロックの数が多いほど、Ｑビット及びモーションフラグの回復処理が向上する。さらに、いくつかの具体例において、この処理は、バッファ内の連続するブロックに対して適応される。ＦＬデータの全て又は一部が利用可能であれば、復号候補の数を減らすことができ、ブロックのＦＬデータ全てが与えられれば、可能な復号候補は１つとなる。しかしながら、Ｑビット及びモーションフラグの回復処理は比較的時間を要するものであるため、回避した方が望ましい。さらに、Ｑビット及びモーションフラグの回復処理を行うためには、可能な限り多くの情報を用いることが望ましい。一具体例においては、Ｑビット／モーションフラグ情報が失われているブロックに到達するまで、バッファの先頭から順次ブロックを処理する。このような処理を順方向Ｑビット及びモーションフラグ回復処理と呼ぶ。他の具体例においては、バッファの最後を参照してバッファ内の最終ブロックを判定し、この最終ブロックからＱビット／モーションフラグ情報が失われているブロックに到達するまで、バッファの最後から先頭の方向に順次データを回復する。この処理を逆方向Ｑビット及びモーションフラグ回復処理と呼ぶ。
【０１５６】
上述したように、ブロックは、ＶＬデータを含むため、ブロック長は可変である。したがって、バッファ内で後続するブロックの位置を正確に検出するために、ＶＬデータを形成するビットの総数を判定する必要がある。復号処理において、バッファ内の未使用のビット位置には、所定の、望ましくは認識が容易なパターンを有するポストアンブルを設ける。復号処理においては、ポストアンブルは、ブロックとバッファの最後との間に存在することとなる。容易に認識できるパターンを用いているため、復号装置は、このパターンを確認することにより、ポストアンブルの開始位置を検出でき、したがって、バッファ内のブロックの最後を検出できる。この情報は、２つの処理において使用される。ブロックが破損されたＱビット／モーションフラグデータを含み、ブロックの開始位置が既知である場合（例えば、先行するブロックが無事に復号されている場合）、直前のブロックの最後からポストアンブルの先頭までの差分がブロック長に対応する。この情報は、ブロックのＱビット及び／又はモーションフラグの算出に使用できる。ポストアンブルの開始位置は、直前のブロックからバッファの先頭方向におけるＱビット及びモーションフラグ回復にも使用できる。
【０１５７】
ＦＩＧ．２３は、ポストアンブルを用いた双方向Ｑビット及びモーションフラグ回復処理を説明する図である。ＦＩＧ．２３においては、バッファ２３００は、ＦＬデータのブロックからなるＮ個のグループ用のＦＬデータ２３０３を含む。各グループは、複数の（例えば、３個の）ブロックから構成される。この具体例においては、１番目及び２番目のグループ２３０５，２３１０が復号され、３番目のグループは、ＤＲ／モーションフラグデータが破損されているために、直ちには復号するこができない。この時点で、破損されたデータを回復するためにＱビット／モーションフラグ回復処理が必要となる。ここで、順方向へのグループの処理を継続せず、ポストアンブルパターン２２０を検出することにより、バッファの最後を読み出す。すなわち、ポストアンブルの先頭を判定することにより、最後のブロックグループが判定される。ＤＲ／モーションフラグデータはＶＬデータの長さを暗示しているため、最終ブロックのＶＬデータの先頭と、したがって直前のブロック最後とが判定される。これにより、破損データを含むブロック２４０に到達するまで、ブロック２２５，２３０，２３５等のブロックが順次処理される。続いて、破損されたブロック２１５，２４０及び妨害された複数のブロック２５０が回復される。ここでは、望ましくは上述のＱビット／モーションフラグ回復処理を用いる。
【０１５８】
なお、双方向処理の順序は、順方向から逆方向の順序に限定されるものではなく、処理は、いずれの方向から開始してもよく、両方向から開始してもよい。さらに、いくつかの具体例においては、複数の処理を平行して実行し、処理効率を高めることもできる。さらに、破損されていない妨害されたブロックについては、上述のＱビット／モーションフラグ回復処理を行うことなく、Ｑビット／モーションフラグ情報に直接アクセスしてこれらのブロックを回復してもよい。
【０１５９】
上述のように、最良の復号候補を実際の復号処理として選択するための得点付けの手法は、様々である。変形例においては、各復号候補を用いた画像の平滑度を評価する。一具体例においては、ラプラス測定を実行する。ラプラス測定では、例えば画像の曲率等の画像表面の２次特性を利用する。線形画像表面、すなわち平滑な表面に対しては、このラプラス測定の結果は０に近い値となる。
【０１６０】
この処理をＦＩＧ．２４ａ、２４ｂ、２４ｃを用いて説明する。ＦＩＧ．２４ａは、ラプラスカーネルの一具体例を示す。他のラプラスカーネルを用いてもよい。ラプラスカーネルＬは、３×３の領域で示される。画像領域の平滑度を測定するために、画像のサブ領域をカーネルにより畳み込み、畳み込まれた値の平均を求める。領域及びサブ領域のサイズ（したがってカーネルのサイズ）は、アプリケーションに応じて変更できる。
【０１６１】
処理の一例をＦＩＧ．２４ｃに示す。この具体例では、３×３のカーネル及びサブ領域サイズ及び８×８の領域サイズと、インデックスｉ，ｊにより識別される独立要素とを用いる。ステップ２４６０において、候補復号値×[i][j]を正規化する。例えば、値は以下の式に基づいて正規化される。
【０１６２】
【数７】
0004558195.tif 000008
【０１６３】
ステップ２４６５では、正規化された値を用い、以下の式に基づいて、平滑度を示すブロックラプラス値ＬＸを求める。
【０１６４】
【数８】
0004558195.tif 000009
【０１６５】
ブロックラプラス値が０に近いほど、画像の部分の平滑度が高い。したがって、このブロックラプラス値に基づいて得点を算出することができ、ラプラス値が最も小さい復号候補を正しいと判定することができる。
【０１６６】
ラプラス評価法は、符号化された候補値q[i][j]を用いて実現することもできる。基本的な処理手順は、ＦＩＧ．２４ｃに示す手順と同様である。この具体例では、３×３のカーネル及びサブ領域サイズ及び８×８の領域サイズと、インデックスｉ，ｊにより識別される独立要素とを用いる。例えば、値は以下の式により正規化される。
【０１６７】
【数９】
0004558195.tif 000010
【０１６８】
ステップ２４６５では、正規化された値を用いて、以下の式に基づいて、平滑度を示すブロックラプラス値Ｌｑを求める。
【０１６９】
【数１０】
0004558195.tif 000011
【０１７０】
ブロックラプラス値が０に近いほど、画像の部分の平滑度が高い。したがって、このブロックラプラス値に基づいて得点を算出することができ、ラプラス値が最も小さい復号を正しいと判断することができる。
【０１７１】
さらに他の変形例も可能である。変形例として、平滑度測定のために、より高次元の画像特性を用いることもできる。この場合、高次カーネルを用いることができる。例えば、４次カーネルを用いて、４次ブロックラプラス測定を行うことができる。このような４次カーネルは、２次ラプラス演算を縦続的に実行することにより実現できる。
【０１７２】
さらに、画像が所定の値より大きな変化又は動きを有しているか否かに基づいて評価処理を変更してもよい。画像の部分が所定の値より大きな動きを示している場合、フレームではなくフィールドに対する測定を行うことが望ましい。この点について、ＦＩＧ．２５を用いて説明する。ＦＩＧ．２５は、平滑度測定を用いた処理を示す図である。しかしながら、この処理は様々な種類の測定法を用いて実現することができる。
【０１７３】
画像領域のフレーム２５０５は、フィールド０及びフィールド１から構成される。ステップ２５１０において動きが検出されない場合、ステップ２５１５において、各フレーム内のブロックについてブロックラプラス値を求めることにより平滑度を測定する。所定の値より大きな動きが検出された場合、ステップ２５２０及びステップ２５２５においてそれぞれのフィールドに対してブロックラプラス測定を行い、得られた２つの測定値をステップ２５３０において結合、例えば平均値を求め、平滑度測定値を算出する。動きの検出及び測定には様々な手法を用いることができる。一具体例においては、フィールド間の変化を評価し、得られた値が所定の値を超えた場合に動きを検出する。
【０１７４】
値の回復（通常、欠落又は破損された値の置換）のために動き検出、フレーム情報及びフィールド情報を使用する手法は、値を回復する必要があるあらゆる処理の過程に適用できる。例えば、値を回復するための動き検出、フレーム情報及びフィールド情報を使用する手法は、ＤＲ／ＭＩＮ回復処理、画素回復処理、Ｑビット及びモーションフラグ回復処理等に適用することができる。このように、検出された動きレベルに基づいて、回復処理は、フィールド単位又はフレーム単位で既存の情報を利用する。さらに、この処理は、特定の方向（例えば、水平方向又は垂直方向）での相関レベルに基づいて選択される重み付けの値を用いるアプリケーションと組み合わせて用いることもできる。
【０１７５】
Ｑビット及びモーションフラグ回復処理の他の具体例では、復号候補は、ブロック内及びブロック間測定に基づいて評価される。以下の説明では、用語「ブロック」は、フレーム又はフィールドの部分を意味するものとする。ブロック内測定は、復号候補により復号された画像の部分の例えば平滑度を評価する。ブロック間測定は、復号候補が隣接する画像部分にどれほど合致するかを測定する。ＦＩＧ．２６ａ及びＦＩＧ．２６ｂは、ブロック間評価とブロック内評価とを組み合わせた手法を説明する図である。具体的には、ＦＩＧ．２６ａは、ブロック間測定及びブロック内測定の結果が良好であるために許容可能な復号候補を示し、一方、ＦＩＧ．２６ｂでは、ブロック内測定の結果は極めて良好であるが、ブロック間測定の結果が良好ではない場合を示している。
【０１７６】
ブロック内測定の具体例では、上述した平滑化測定を行う。ブロック間測定の具体例では、上述の自乗誤差測定を行う。ブロック間測定の変形例では、ＡＤＲＣブロック候補における適合する境界画素の比及び境界画素の総数を使用する。
【０１７７】
ＡＤＲＣ符号化された８×８ブロックに対するブロック間評価及びブロック内評価について、ＦＩＧ．２６ｃ、２６ｄ、２６ｅを用いて説明する。ＦＩＧ．２６ｄは、ｑ個の値からなる符号化された値２６５０のデータの画像の一部（ブロック）を示し、このブロックから候補復号値ｘが生成される。隣接する復号されたデータ２６５５は、ｙ個の値からなる。上述のとおり、ＦＩＧ．２６ｃのフローチャートに示すステップ２６０５において、ブロック内測定が実行され、これにより測定値、例えばブロックラプラス値ＬＸが算出される。ステップ２６１０において、ブロック間測定値ＳＸが算出され、これにより隣接するブロック間の適合性が測定される。ステップ２６１５において、結合測定値ＭＸが算出される。結合測定値は、復号候補を選択するために用いる情報を提供する。
【０１７８】
この具体例において、ＳＸは、復号候補による各境界画素の有効範囲内に存在する隣接データの数として算出される（ＦＩＧ．２６ｅ参照）。ＦＩＧ．２６ｅは、一具体例の有効範囲を示すグラフであり、ここでは観察された量子化値ｑｉのそれぞれの有効範囲が示されている。すなわち、ＬＱ≦ＤＲ＜ＵＱとなり、ここで、ＬＱ、ＵＱは、それぞれ量子化ビット＝Ｑに対応するＤＲの上位及び下位の境界を示している。ＳＸについては、ＳＸ＝ＳＸ／境界画素数として正規化することが望ましい。
【０１７９】
この具体例では、結合測定値ＭＸは、ＭＸ＝ＳＸ＋（１−ＬＸ）という式に基づいて算出する。これに代えて、以下の式を用いて結合測定値の重み付けを行ってもよい。ＭＸ＝ｗ・ＳＸ＋（１−ｗ）・（１−ＬＸ）ここで、ｗは重みであり、通常経験的に決定された重み付けの値を有する。
【０１８０】
欠落又は破損されたＤＲ値及びＭＩＮ値を判定するための他の具体例も考えられる。例えば、上述の式を変形して用い、より高精度なＤＲ値及びＭＩＮ値の回復を実現することができる。他の具体例では、メジアン法を用いてもよい。メジアン法の一具体例では、ＭＩＮの値を全てのＭＩＮｉの値のメジアンとして以下のようにして求める。
【０１８１】
ＭＩＮｉ＝ｙｉ−ｑｉ・ｓここで、ｑｉは、符号化された画素値を示し、ｙｉは、ｑｉに隣接する復号された画素を示す。エッジマッチングＡＤＲＣにおいて、ｓ＝ＤＲ／（２Ｑ−１）である。ノンエッジマッチングＡＤＲＣにおいては、ｓ＝ＤＲ／２Ｑである。ここで、Ｑは、画素毎の量子化ビット数（Ｑビット値）を示す。
【０１８２】
使用される値は、時間的近似値又は空間的近似値であってもよい。ｙｉの値としては、隣接するフレーム／フィールド又は同じフィールドの隣接する画素の復号値を用いてもよい。ｙｉの値としては、隣接するフレーム／フィールド又は同じフィールド内の同じ位置の画素の復号値を用いてもよい。
【０１８３】
さらに、ＤＲ及び／又はＭＩＮ回復処理をクリップ処理と組み合わせて用い、回復精度を向上させるとともに、回復処理中のデータのオーバフローを防止することもできる。クリッピング処理は、回復されたデータの値を所定の範囲内に制限する処理である。すなわち、所定の範囲外の値は、この範囲の最も近い境界値にクリップされる。一具体例においては、クリップ処理により値を［ＬＱ，ＵＱ］の範囲内に制限する。ここで、ＬＱ，ＵＱは、量子化ビット数＝Ｑで表される画素値の範囲の下限及び上限を示す。量子化ビット及びさらにＭＩＮ＋ＤＲ≦Ｎｕｍに値を制限する。Ｎｕｍは最大画素値であり、この具体例においてはＮｕｍは２５５である。この具体例において、適応可能であれば、ＵＱ＋１＝ＬＱ＋１とする。
【０１８４】
判定基準を単一の式に結合することにより、ＤＲのための拘束されない回復値（val'）と、最終的にクリップされた回復値（val）とが以下の式から得られる。
【０１８５】
val=max(min(val, min(UQ, 255-MIN)), LQ)
ここで、min及びmaxは、それぞれ最小関数及び最大関数を示す。
【０１８６】
他の具体例においては、境界画素ｙｉを用いて回復されたＤＲ及び／又はＭＩＮをフィルタリングして相関値が最も高いものだけを用いるようにする。これによりＤＲ及びＭＩＮの回復の精度が向上する。これら境界画素は、使用されていない判定基準には適合しない。一具体例においては、境界画素ｙｉは、ＬＱ≦ＤＲ＜ＵＱを満たすＤＲ値が存在し、元の画素ｙｉがｑｉとして符号化されている場合、ＤＲ算出に有効であるとみなされる。すなわち、以下の式が満たされるとき、画素は有効である。
【０１８７】
【数１１】
0004558195.tif 000012
【０１８８】
ここで、ｍは、最大量子化レベル＝２Ｑ−１を表す。次に、ＤＲ回復値（val'）は、以下の式に基づいて算出される。
【０１８９】
【数１２】
0004558195.tif 000013
【０１９０】
続いて、この値は有効範囲内にクリップされる。この処理により、ＤＲ回復値は、閾値テーブルにより定義されている有効範囲内に納められる。これにより、ＤＲが閾値テーブル境界近傍に存在する点の精度が低下する。
【０１９１】
ここで、量子化雑音の影響により静ＡＤＲＣブロックのＤＲは、フレーム間で若干変化することがある。このような変化がＡＤＲＣ符号化境界を横断し、ＤＲが複数の連続フレームにおいて回復された場合、有効画素選択とともに回復されたＤＲの回復値は、各横断点で過大になる傾向があり、この結果、表示画面上で顕著なちらつきが生じる。このような問題を抑制する手法として、一具体例では、有効画素選択処理を変形し、上限及び下限の境界による制約を緩和する。これにより隣接する有効領域に侵入する境界画素を許容する。境界に外接する点を含むことにより、回復値が上限又は下限に近い値となる傾向を強めることができる。緩和された境界Ｌ’ＱとＵ’Ｑは、緩和定数ｒにより算出される。一具体例においては、ｒの値を０．５に設定する。他の値を用いてもよい。
【０１９２】
Ｌ’Ｑ＝ｒＬＱ−１＋（１−ｒ）ＬＱ
Ｕ’Ｑ＝（１−ｒ）ＵＱ＋ｒＵＱ＋１
以上、ＤＲ及びＭＩＮが破損又は欠落した場合にＤＲ及びＭＩＮを回復するための様々な手法を説明した。算出され、回復された対応するデータの時間的及び／又は空間的相関を調べ、重み付けを行うことにより、さらに回復の精度を高めることができる。具体的には、特定の方向又は時間軸において高度な相関が存在する、例えば水平相関が存在する場合、画像特性はその高度な相関を有する方向において平滑に連続し、したがって、相関値の高い回復値の使用に最良の評価を与える。これにより、境界データは対応する方向（例えば、垂直、水平、フィールド間）に含まれ、相関測定値に基づいて重み付けされ、最終的な回復値が得られる。
【０１９３】
この処理の一具体例をＦＩＧ．７ａを参照に説明する。ステップ２７１０において、ＤＲ又はＭＩＮの回復値を一方向について生成し、ステップ２７１５において、他の方向の回復値を生成する。例えば、この処理を空間的に適用する場合、水平方向の境界に沿う境界画素を用いて第１の回復値hestを生成し、垂直方向の境界に沿う境界画素を用いて第２の回復値vestを生成する。これに代えて、処理を時間的に適用する場合、隣接するフィールド間の境界画素を用いて第１の回復値を生成し、隣接するフレーム間の境界画素を用いて第２の回復値を生成する。
【０１９４】
ステップ２７２０において、各方向における相関レベルを示す相関演算に基づいて回復値の重み付けを行う。続いてステップ２７２５において、重み付けされた第１及び第２の回復値を結合して結合回復値を生成する。なお、この処理は、２方向の回復値に対する重み付けのみに限定されるわけではない。すなわち、重み付けされ、結合される回復値の数は、アプリケーションに応じて変更できることは明らかである。特定の方向における相関レベルを示す相関値を算出するために様々な手法を用いることができる。さらに、様々な判定基準を用いて相関レベルに関する重み付け要素を選択することができる。通常、一方の相関値が他方の相関値よりかなり大きい場合、結合された回復値は、主に対応する回復値に基づくものである必要がある。一具体例において、結合された回復値は以下の式により求められる。
【０１９５】
【数１３】
0004558195.tif 000014
【０１９６】
ここで、hcは水平相関を表し、vcは垂直相関を表し、hestは左右の境界情報のみに基づくＤＲ回復値を表し、vestは上下の境界情報のみに基づく回復値を表し、αは重みを表す。重みの値は様々な方法で決定できる。ＦＩＧ．２７ｂは、水平相関と垂直相関との差分の関数として重みの値を決定する一具体例を説明する図である。具体的にはαは、以下の式を満たすように選択される。
【０１９７】
【数１４】
0004558195.tif 000015
【０１９８】
上述のように、適応相関処理は、ＤＲ及びＭＩＮのいずれの回復にも用いることができる。しかしながら、望ましくは、ＭＩＮ＋ＤＲ≦２５５になるようにＭＩＮ回復処理においてクリッピングを行う。したがって、関数val=max(min(val', 255-MIN), 0)を用いることができる。さらに、上述のとおり、時間的相関を評価し、これにより回復値の重み付けを行うこともできる。また、時間的相関と空間的相関を組み合わせて利用してもよい。例えば、フィールド間のある回復値を時間的回復値として生成する。他方の回復値を１フィールド内の空間的回復値として生成する。最終的な回復値は、時間的相関及び空間的相関を組み合わせて算出される。相関の組み合わせを動きの量に置換してもよい。他の変形例も可能である。この手法をオーディオデータに対して適用しもよい。
【０１９９】
一変形例として、最小自乗法に単純な修正を加えた手法を用いることができる。この具体例により、回復されたＤＲ値に起因するちらつきを低減することができる。以下の説明においては、ＱＶは、画像部分又は点ｑｉの集合を有し、ＤＲが回復されようとしているＡＤＲＣブロックを表し、Ｙは、ＱＶ内の垂直方向又は水平方向に隣接する点から得られた復号値のリストを表し、ｙｉは、ｑｉの垂直方向又は水平方向の隣接点を表す。各点ｑiは、最大４個の復号された隣接点を有するので、１画素又は点について（ｑｉ，ｙｉ）の組み合わせは最大４つとなる。ＤＲ（ＤＲｕｌｓ）の無制約最小自乗評価値は、以下のとおりである。
【０２００】
【数１５】
0004558195.tif 000016
【０２０１】
ここで、Ｑは量子化ビットの数であり、ＭＩＮはブロック属性として伝送された最小値を表す。上述の式は、ノンエッジマッチングＡＤＲＣに対応するものであり、エッジマッチングＡＤＲＣの場合は、２Ｑを２Ｑ−１に置き換え、（０．５＋ｑｉ）をｑｉに置き換える。
【０２０２】
好ましくは、無制約自乗評価値をクリップし、閾値テーブル及び等式ＭＩＮ＋ＤＲ≦２５５に整合させる。この条件は符号化処理中に行わなければならない（通常、ノンエッジマッチングＡＤＲＣの場合、ＤＲ値として許容される範囲は１〜２５６である）。すなわち、最小自乗評価値は、以下の式に基づいてクリップされる。
【０２０３】
(DR)lsc=max(min(UB, DRuls), LB)
ここで、ＵＢは上限を表し、ＬＢは加減を表し、min及びmaxは、それぞれ最小関数及び最大関数を表す。
【０２０４】
変形例として、ＤＲ評価値に最も適合する画素を選択することにより評価を高めてＤＲの評価値を算出することもできる。例えば、画像内の変化の少ない領域の画素に対するＤＲ評価値は、変化が多い領域の画素に対するＤＲ評価値より適合性が高くなる。具体的には、画像の輪郭が鋭ければ、評価の精度が低くなる。以下、ＤＲ評価値を算出するために用いる画素を選択する簡易な計算手法の具体例を説明する。
【０２０５】
この具体例では、最小自乗評価値（DRlse）。例えば（DRuls）又は（DRlsc）を算出する。この評価値を用いて、符号化値ＱＶのリストを復号候補値Ｘに変換する。ここで、ｘｉはｑｉに由来するＸの構成要素を表す。ｘｉ値はＤＲの第１の評価値を用いて生成された、回復された復号値である。ｘｉ値は、以下の式により定義される。
【０２０６】
【数１６】
0004558195.tif 000017
【０２０７】
DRlseが真のＤＲの正当な評価値であると仮定すると、いかなる場合もｘｉはｙｉに比較的近似し、したがって変化の少ない領域と判断され、望ましい適合性が得られる。新たなＸ及びＹリストは、ｘｉとｙｉが近似しており、最小自乗評価値が再計算されて評価値が更新される。
【０２０８】
「近似」しているか否かを決定するために、様々な判定基準を設けることができる。一具体例においては、エラー関数のＡＤＲＣ符号化を用いる。この手法は、計算が低コストであるという利点を有する。処理においては、点ｅｉ｜ｙｉ−ｘｉ｜から構成されるリストＥを定義する。emin及びemaxをそれぞれリストの最大値及び最小値として定義すると、eDR=emax-eminとなる。したがって、符号化されたエラー値は、以下のように定義される。
【０２０９】
gi=(ei-emin)nl/eDR
ここで、ｎｌは上述したＡＤＲＣ処理と同様の手法によりｅｉを再量子化する際の量子化レベルの数を表す。
【０２１０】
ｇｉがいずれかの閾値以下であるという条件に合致するもののみを選択することにより、新たなリストＸ、Ｙが生成される。これら新たなリストが十分長ければ、これらのリストを用いて精密な最小自乗評価値ＤＲｒｌｓを生成できる。最小自乗評価値を精密化するため必要となるｇiの閾値及び合致数は、好ましくは経験的に求められる。例えば、ｎｌを１０とした８×８×２の水平サブサンプルブロックに対する具体例では、ｇｉ＝０に対応する合致数のみを用い、評価値は、新たなリストが少なくとも３０個以上の合致数を含む場合にのみ精密化される。
【０２１１】
変形例として、潜在的ＤＲ値をクリッピングし、ＤＲ評価値を再計算することによりＤＲ評価値の精度を高めることができる。詳しくは、一具体例において、リストＤは、構成要素ｄｉから構成され、ｄｉはｘｉをｙｉに一致させるＤＲ値を含む。より具体的には、以下の式のとおりとなる。
【０２１２】
di=2Q(yi-MIN)/(0.5+qi)
以下に示すように、各ｄiをクリッピングすることにより精度が高められる。
【０２１３】
di'=max(min(UB, di), LB)
ここで、ＤＲｃｌｓはｄｉ’の平均となるように算出される。重み付け平均において、クリップ処理（ＤＲｃｌｓ）を他のＤＲ評価、例えばＤＲｌｓｅと組み合わせて最終のＤＲ値を求めるようにしてもよい。例えば、重み平均ＤＲｅｓｔを以下の式に基づいて算出する。
【０２１４】
ＤＲｅｓｔ＝ｗ１（ＤＲｃｌｓ）＋ｗ２（ＤＲｌｓｅ）
重みｗ１及びｗ２は、好ましくは、結果として得られた評価値及び特定の重みから生成された画像に基づいて経験的に決定される。一具体例においては、ｗ１＝０．２２５１３とし、ｗ２＝０．８０７３９とする。
【０２１５】
本発明を好ましい実施の形態に基づいて説明した。上述の説明から、多数の代替、修正、変形及び用法が実現できることは当業者にとって明らかである。
【図面の簡単な説明】
【図１】ＦＩＧ．１は、信号の符号化、伝送、復号の処理を包括的に示す図である。
【図２】ＦＩＧ．２は、パケット構造の具体例を示す図である。
【図３】ＦＩＧ．３は、本発明に基づく符号化処理の一例を説明するフローチャートである。
【図４】ＦＩＧ．４は、本発明に基づく復号処理の一例を説明するフローチャートである。
【図５】ＦＩＧ．５は、本発明に基づく画像−ブロックマッピングの一例を示す図である。
【図６】ＦＩＧ．５ａは、画像−ブロックマッピングにおいて用いられるシャッフリングパターンの一例を示す図である。
【図７】ＦＩＧ．６は、相補的及び連鎖的なブロック構造の例を示す図である。
【図８】ＦＩＧ．７ａ及びＦＩＧ．７ｂは、フレームセット内のＹブロックのシャッフリングパターンの具体例を説明する図である。
【図９】ＦＩＧ．７ｃは、フレームセット内のＹブロックのシャッフリングパターンの具体例を説明する図である。
【図１０】ＦＩＧ．７ｄは、フレームセット内のＹブロックのシャッフリングパターンの具体例を説明する図である。
【図１１】ＦＩＧ．８は、バッファ０内の累積的ＤＲ分布の具体例を示す図である。
【図１２】ＦＩＧ．８ａは、本発明に基づく部分バッファリング処理の具体例を示す図である。
【図１３】ＦＩＧ．９は、本発明に基づくバッファ内ＹＵＶブロックシャッフリング処理の具体例を示す図である。
【図１４】ＦＩＧ．１０は、本発明に基づくグループ内ＶＬデータシャッフリング処理の具体例を示す図である。
【図１５】ＦＩＧ．１１は、本発明に基づく３ブロックグループ内におけるＱコードの結合の具体例を示す図である。
【図１６】ＦＩＧ．１１ａは、本発明に基づく動ブロックを含むフレーム対におけるＱコードの結合の具体例を示す図である。
【図１７】ＦＩＧ．１２は、１／６バーストエラー欠落に起因する画素データエラーの具体例を示す図である。
【図１８】ＦＩＧ．１２ａは、本発明に基づくＱコードのシャッフリング及びＱコードビットの分散の具体例を示す図である。
【図１９】ＦＩＧ．１２ｂは、Ｑコードを再分散した場合における１／６バーストエラーに起因する画素データエラーの具体例を示す図である。
【図２０】ＦＩＧ．１２ｃは、Ｑコードを再割当した場合における１／６バーストエラーに起因する画素データエラーの具体例を示す図である。
【図２１】ＦＩＧ．１３は、本発明に基づくＭＩＮシャッフリングの具体例を示す図である。
【図２２】ＦＩＧ．１３ａは、モーションフラグシャッフリング及び１フレーム対内における固定長データ欠落を示す図である。
【図２３】ＦＩＧ．１４は、モジュールシャッフリングの具体例を示す図である。
【図２４】ＦＩＧ．１４ａは、モジュールシャッフリングの結果及びモジュールシャッフリングに関連する固定長データ欠落を示す図である。
【図２５】ＦＩＧ．１４ｂは、変形されたモジュールシャッフリングの結果及びこのモジュールシャッフリングに関連する固定長データ欠落を示す図である。
【図２６】ＦＩＧ．１４ｃは、変形されたモジュールシャッフリングの結果及びこのモジュールシャッフリングに関連する固定長データ欠落を示す図である。
【図２７】ＦＩＧ．１５は、フレームセット内の可変長データバッファリングの具体例を示す図である。
【図２８】ＦＩＧ．１６は、本発明に基づくセグメント間ＶＬデータシャッフリングを説明する図である。
【図２９】ＦＩＧ．１７は、本発明に基づくデータ回復処理の具体例を示すフローチャートである。
【図３０】ＦＩＧ．１８は、本発明に基づくＱビット及びモーションフラグ回復処理の具体例を示すフローチャートである。
【図３１】ＦＩＧ．１９は、復号候補の具体例を示す図である。
【図３２】ＦＩＧ．２０ａ及びＦＩＧ．２０ｂは、ＦＩＧ．１８に示すＱビット及びモーションフラグ回復処理において用いられる測定を説明する図である。
【図３３】ＦＩＧ．２０ｃ及びＦＩＧ．２０ｄは、ＦＩＧ．１８に示すＱビット及びモーションフラグ回復処理において用いられる測定を説明する図である。
【図３４】ＦＩＧ．２１は、Ｑビット及びモーションフラグ回復処理において自乗誤差確率関数を求めるために用いられる表を示す図である。
【図３５】ＦＩＧ．２２は、本発明に基づくＱビット、モーションフラグ及び補助情報回復処理の具体例を示すフローチャートである。
【図３６】ＦＩＧ．２３は、双方向Ｑビット及びモーションフラグ回復処理の具体例におけるポストアンブルの使用を説明する図である。
【図３７】ＦＩＧ．２４ａ及びＦＩＧ．２４ｂは、復号候補を評価する変形例を説明する図である。
【図３８】ＦＩＧ．２４ｃは、復号候補を評価する変形例を説明する図である。
【図３９】ＦＩＧ．２５は、本発明に基づく平滑度測定の具体例を示す図である。
【図４０】ＦＩＧ．２６ａ及びＦＩＧ．２６ｂは、復号候補の評価法の他の具体例を説明する図である。
【図４１】ＦＩＧ．２６ｃは、復号候補の評価法の他の具体例を説明する図である。
【図４２】ＦＩＧ．２６ｄ及びＦＩＧ２６ｅは、復号候補の評価法の他の具体例を説明する図である。
【図４３】ＦＩＧ．２７ａは、復号候補の評価処理の他の具体例を示す図である。
【図４４】ＦＩＧ．２７ｂは、重み付けに用いる重みを決定するための具体例を示す図である。
【図１】
0004558195.tif 000018
【図２】
0004558195.tif 000019
【図３】
0004558195.tif 000020
【図４】
0004558195.tif 000021
【図５】
0004558195.tif 000022
【図６】
0004558195.tif 000023
【図７】
0004558195.tif 000024
【図８】
0004558195.tif 000025
【図９】
0004558195.tif 000026
【図１０】
0004558195.tif 000027
【図１１】
0004558195.tif 000028
【図１２】
0004558195.tif 000029
【図１３】
0004558195.tif 000030
【図１４】
0004558195.tif 000031
【図１５】
0004558195.tif 000032
【図１６】
0004558195.tif 000033
【図１７】
0004558195.tif 000034
【図１８】
0004558195.tif 000035
【図１９】
0004558195.tif 000036
【図２０】
0004558195.tif 000037
【図２１】
0004558195.tif 000038
【図２２】
0004558195.tif 000039
【図２３】
0004558195.tif 000040
【図２４】
0004558195.tif 000041
【図２５】
0004558195.tif 000042
【図２６】
0004558195.tif 000043
【図２７】
0004558195.tif 000044
【図２８】
0004558195.tif 000045
【図２９】
0004558195.tif 000046
【図３０】
0004558195.tif 000047
【図３１】
0004558195.tif 000048
【図３２】
0004558195.tif 000049
【図３３】
0004558195.tif 000050
【図３４】
0004558195.tif 000051
【図３５】
0004558195.tif 000052
【図３６】
0004558195.tif 000053
【図３７】
0004558195.tif 000054
【図３８】
0004558195.tif 000055
【図３９】
0004558195.tif 000056
【図４０】
0004558195.tif 000057
【図４１】
0004558195.tif 000058
【図４２】
0004558195.tif 000059
【図４３】
0004558195.tif 000060
【図４４】
0004558195.tif 000061