(57)【要約】【課題】本発明は、誤り訂正符号の付加による伝送遅延の増加や冗長度の局所的変化や演算量の増加を招くことなく、誤り訂正演算を各ピクチャごとに独立して実施することができるようにする新たな映像送受信技術の提供を目的とする。【解決手段】本発明の映像送信装置では、ｎ，ｋの値が可変な（ｎ，ｋ）誤り訂正符号化器を使用する。各ピクチャ単位で独立した誤り訂正ブロックを構成し、かつ、演算時にダミーのメディアパケットを挿入する必要がないように、ピクチャ１枚あたりの発生符号量に応じてｎ，ｋの値を変化させて誤り訂正演算を行い、ＦＥＣパケットを生成して送信する。これを受けて、本発明の映像受信装置では、ｎ，ｋの値が可変な（ｎ，ｋ）誤り訂正復号器を使用し、映像送信装置で選択したものと同一のｎ，ｋの値を用いて、各ピクチャ単位で消失パケットの回復を行う。【選択図】図１
2005347927.tif 000002
【特許請求の範囲】
【請求項１】
動画像の符号化情報をパケット化し、誤り訂正演算によってパケット損失を回復するための冗長なパケットを付加して、通信ネットワークへ送信する映像送信方法において、
ある１枚の画像を符号化した結果生じたビット量をもとに、このビット量を格納するために必要なパケット数を算出し、このパケット数に等しい値を誤り訂正符号の情報シンボル数として決定する過程と、
前記決定した情報シンボル数について、誤り訂正符号の検査シンボル数を決定する過程と、
前記決定した情報シンボル数および検査シンボル数を受け、１枚の画像の符号化情報から得られる可変数の情報シンボルを入力として、可変数の検査シンボルを生成する過程とを備えることを、
特徴とする映像送信方法。
【請求項２】
動画像の符号化情報をパケット化し、誤り訂正演算によってパケット損失を回復するための冗長なパケットを付加して、通信ネットワークへ送信する映像送信方法において、
ある１枚の画像を符号化した結果生じたビット量をもとに、このビット量を格納するために必要なパケット数を算出し、複数の値の和がこのパケット数と等しくなるようなそれぞれの値を、誤り訂正符号の情報シンボル数として決定する過程と、
前記決定した情報シンボル数のそれぞれについて、誤り訂正符号の検査シンボル数を決定する過程と、
前記決定した情報シンボル数および検査シンボル数を受け、１枚の画像の符号化情報から得られる可変数の情報シンボルを入力として、可変数の検査シンボルを生成する過程とを備えることを、
特徴とする映像送信方法。
【請求項３】
請求項２に記載の映像送信方法において、
前記情報シンボル数を決定する過程では、演算可能な情報シンボル数に入る範囲でできるだけ大きく、かつ、情報シンボル数のばらつきが最も小さくなるようにと、それぞれの情報シンボル数を決定することを、
特徴とする映像送信方法。
【請求項４】
請求項２又は３に記載の映像送信方法において、
前記生成した検査シンボルとその生成元となった情報シンボルとを１つのグループとして、各グループのシンボルをインタリーブする形で送信する過程を備えることを、
特徴とする映像送信方法。
【請求項５】
請求項１ないし４のいずれか１項に記載の映像送信方法において、
前記検査シンボル数を決定する過程では、固定的に設定される値を検査シンボル数として決定することを、
特徴とする映像送信方法。
【請求項６】
請求項１ないし４のいずれか１項に記載の映像送信方法において、
前記検査シンボル数を決定する過程では、前記決定した情報シンボル数に比例する形で検査シンボル数を決定することを、
特徴とする映像送信方法。
【請求項７】
請求項１ないし４のいずれか１項に記載の映像送信方法において、
前記検査シンボル数を決定する過程では、画像の符号化に用いた符号化パラメータに基づいて検査シンボル数を決定することを、
特徴とする映像送信方法。
【請求項８】
請求項１ないし４のいずれか１項に記載の映像送信方法において、
前記検査シンボル数を決定する過程では、前記決定した情報シンボル数と、画像の符号化に用いた符号化パラメータとに基づいて検査シンボル数を決定することを、
特徴とする映像送信方法。
【請求項９】
請求項１ないし８のいずれか１項に記載の映像送信方法において、
前記検査シンボルを生成する過程では、前記決定した情報シンボル数および検査シンボル数に基づいて、複数の誤り訂正符号の中からひとつを選択して使用することを、
特徴とする映像送信方法。
【請求項１０】
誤り訂正演算によってパケット損失を回復するための冗長なパケットが付加されている、動画像の符号化情報が格納されたパケットを受信し、損失したパケットを誤り訂正演算によって回復する映像受信方法において、
映像送信側から通知された情報に基づいて、ある１枚の画像について、映像送信側で用いたものと同一の情報シンボル数および検査シンボル数を決定する過程と、
前記決定した情報シンボル数および検査シンボル数を受け、１枚の画像の符号化情報から得られる可変数の情報シンボルおよび検査シンボルを入力として、その入力に対して誤り訂正演算を行う過程とを備えることを、
特徴とする映像受信方法。
【請求項１１】
請求項１０に記載の映像受信方法において、
前記誤り訂正演算を行う過程では、前記決定した情報シンボル数および検査シンボル数に基づいて、複数の誤り訂正符号の中からひとつを選択して使用することを、
特徴とする映像受信方法。
【請求項１２】
動画像の符号化情報をパケット化し、誤り訂正演算によってパケット損失を回復するための冗長なパケットを付加して、通信ネットワークへ送信する映像送信装置において、
ある１枚の画像を符号化した結果生じたビット量をもとに、このビット量を格納するために必要なパケット数を算出し、このパケット数に等しい値を誤り訂正符号の情報シンボル数として決定する手段と、
前記決定した情報シンボル数について、誤り訂正符号の検査シンボル数を決定する手段と、
前記決定した情報シンボル数および検査シンボル数を受け、１枚の画像の符号化情報から得られる可変数の情報シンボルを入力として、可変数の検査シンボルを生成する手段とを備えることを、
特徴とする映像送信装置。
【請求項１３】
動画像の符号化情報をパケット化し、誤り訂正演算によってパケット損失を回復するための冗長なパケットを付加して、通信ネットワークへ送信する映像送信装置において、
ある１枚の画像を符号化した結果生じたビット量をもとに、このビット量を格納するために必要なパケット数を算出し、複数の値の和がこのパケット数と等しくなるようなそれぞれの値を、誤り訂正符号の情報シンボル数として決定する手段と、
前記決定した情報シンボル数のそれぞれについて、誤り訂正符号の検査シンボル数を決定する手段と、
前記決定した情報シンボル数および検査シンボル数を受け、１枚の画像の符号化情報から得られる可変数の情報シンボルを入力として、可変数の検査シンボルを生成する手段とを備えることを、
特徴とする映像送信装置。
【請求項１４】
誤り訂正演算によってパケット損失を回復するための冗長なパケットが付加されている、動画像の符号化情報が格納されたパケットを受信し、損失したパケットを誤り訂正演算によって回復する映像受信装置において、
映像送信側から通知された情報に基づいて、ある１枚の画像について、映像送信側で用いたものと同一の情報シンボル数および検査シンボル数を決定する手段と、
前記決定した情報シンボル数および検査シンボル数を受け、１枚の画像の符号化情報から得られる可変数の情報シンボルおよび検査シンボルを入力として、その入力に対して誤り訂正演算を行う手段とを備えることを、
特徴とする映像受信装置。
【請求項１５】
請求項１ないし９のいずれか１項に記載の映像送信方法の実現に用いられる処理をコンピュータに実行させるための映像送信用プログラム。
【請求項１６】
請求項１０又は１１に記載の映像受信方法の実現に用いられる処理をコンピュータに実行させるための映像受信用プログラム。
【請求項１７】
請求項１ないし９のいずれか１項に記載の映像送信方法の実現に用いられる処理をコンピュータに実行させるための映像送信用プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１８】
請求項１０又は１１に記載の映像受信方法の実現に用いられる処理をコンピュータに実行させるための映像受信用プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像や音声などのディジタル信号を、例えばＭＰＥＧ（Moving Picture Experts Group）方式に従って符号化し、パケット通信ネットワークを通じて送受信するシステムで用いられる映像送受信技術に関し、とりわけ、ＩＰネットワークを介して接続された遠隔地間でテレビ電話機能を提供する低遅延映像コミュニケーションシステムに好適な映像送受信技術に関する。
【背景技術】
【０００２】
インターネットに代表されるディジタルパケット通信網の高速化と広帯域化にともない、高画質なディジタル圧縮映像のリアルタイム送受信が実用的なアプリケーションとなりつつある。一例として、インターネットに接続されたＰＣにカメラやマイクを接続し、ＭＰＥＧ方式等によってリアルタイム符号化した映像を低遅延に双方向伝送するテレビ電話システムが挙げられる。
【０００３】
インターネットを介した伝送では一般的にパケット損失が発生する。パケット損失を回復する手段としては、損失したパケットの再送（ＡＲＱ：Automatic Repeat Request）や、冗長な誤り訂正符号の付加による受信側での回復（ＦＥＣ：Forward Error Correction）などの手法が知られているが、低遅延伝送が必要となる双方向コミュニケーションシステムではＦＥＣによる誤り訂正が適当である。
【０００４】
誤り訂正符号の種類としては、パリティ（ＸＯＲ）符号、ハミング符号、ＢＣＨ符号、リードソロモン符号などが知られている。いずれの符号も、ｋ個の情報シンボルに対して誤り検出・誤り訂正のために（ｎ−ｋ）個の冗長シンボルを付加し、合計でｎ個のシンボルとして伝送路に送出する（ｎ，ｋ）誤り訂正符号として表される。
【０００５】
例として、パリティ符号はｋ個の情報シンボルに対してＸＯＲ演算を行った結果の１シンボルを付加するためｎ−ｋ＝１、ハミング符号の代表例としてはハミング（７，４）符号やハミング（１５，１１）符号がある。リードソロモン符号は、１シンボルを８ビット（１バイト）とした場合にはｎ＝２５５となり、任意のｋに対して（２５５，ｋ）誤り訂正符号を設計することができるとともに、短縮リードソロモン符号を使用することによって、ｎ≦２５５、ｎ＞ｋの範囲内で自由に（ｎ，ｋ）誤り訂正符号が設計できる。
【０００６】
図１１に、短縮リードソロモン（１２８，１２４）の一例を示す。
【０００７】
この図に示すように、短縮リードソロモン（１２８，１２４）は、リードソロモン符号化器および復号器は（２５５，２５１）で設計し、送受信側ともに、情報シンボルの前半１２７シンボル（＝１２７バイト）はゼロと仮定して演算を行う。ゼロと仮定した部分は実際には伝送しない。このような手法により、（２５５，ｋ）リードソロモン符号化器および復号器を使用して、ｎ≦２５５、ｎ＞ｋで任意の（ｎ，ｋ）誤り訂正符号を設計することができる。
【０００８】
図１２に、リードソロモン（ｎ，ｋ）誤り訂正符号を、パケット損失対策のために適用した場合の符号化方式の一例を示す（例えば、非特許文献１参照）。
【０００９】
この図に示すように、リードソロモン（ｎ，ｋ）誤り訂正符号では、符号化された情報は一定長のパケットに区切られ（以降これをメディアパケットと呼称する）、バッファの一番上から行方向に順に格納される。ｋ個のパケットの入力が完了したら、バッファの一番左から順に、列方向に誤り訂正符号を生成する。
【００１０】
すなわち、ｋ個のパケットから１シンボル（＝１バイト）ずつ、縦方向にｋ個のシンボルを取り出して演算し、ｎ−ｋシンボル（＝ｎ−ｋバイト）の検査シンボルを生成して、これをＦＥＣパケットバッファに書き込む。演算が終われば、右方向に１シンボル（＝１バイト）移動して同様に列方向の演算を行う。
【００１１】
このようにして、すべての列についての演算が終了し、ＦＥＣパケットの生成が完了したら、メディアパケットとＦＥＣパケットとが伝送路に送り出される。このとき、受信側でパケットの順序を識別するために、各パケットにはシーケンス番号が付与される。図１２では０〜ｎ−１のシーケンス番号を付与している。
【００１２】
ＲＦＣ3550で規定され、リアルタイムメディアの伝送フォーマットとして一般的なＲＴＰ（Real-Time Trasnport Protocol）を使用する場合、各パケットに１６ビットのシーケンス番号が付与されるため、このシーケンス番号をｎで割った余りである０〜ｎ−１の値によって、パケットの順序を識別することができる。
【００１３】
受信側では、到着したパケットのそれぞれについて、シーケンス番号に基づいてバッファの対応する位置にパケットを格納する。伝送中にメディアパケットの一部が消失した場合、誤り訂正演算器は、バッファの一番左から順に、列方向に誤り訂正演算処理を行い、消失したパケットを回復する。すべての列についての演算が終了し、消失したパケットが回復されたら、メディアパケットの内容を符号化情報出力として出力する。
【００１４】
消失したシンボルの位置が特定できる場合、リードソロモン（ｎ，ｋ）誤り訂正符号は、最大（ｎ−ｋ）シンボルの消失を回復できる。すなわち、上記の例においては、ビット反転などの符号誤りが発生しない条件下において、メディアパケットとＦＥＣパケットとをあわせて（ｎ−ｋ）パケット以内の消失であれば、これを完全に回復できる。
【００１５】
以降、上記にて説明したメディアパケットｋ個とＦＥＣパケット（ｎ−ｋ）個とから構成される誤り訂正演算の単位を、誤り訂正演算ブロックと呼称する。
【００１６】
さて、ＭＰＥＧ方式に代表される動画像の高圧縮符号化方式においては、１枚のピクチャを符号化することによって生じるビット量が一定ではないことが知られている。とりわけ、１枚のピクチャが独立して符号化されるＩピクチャ、前のピクチャからの差分が符号化されるＰピクチャ、前後のピクチャからの差分が符号化されるＢピクチャという３種のピクチャ種別を持つＭＰＥＧ符号化は、Ｉ＞Ｐ＞Ｂピクチャの順で、ピクチャ１枚あたりの発生符号量が大きく異なることが知られている。
【００１７】
これまでの映像伝送アプリケーションでは、ピクチャによって異なる発生符号量を一旦バッファに蓄積して、一定のビットレートに平滑化したのち伝送するＣＢＲ（Constant Bit Rate)伝送が用いられていた。これは、従来の情報伝送路が典型的なＣＢＲ型であり、毎秒あたり一定のビット量しか伝送できなかったという制限に由来しているが、バッファへの蓄積を行う代償として遅延が発生する。
【００１８】
これに対し、ＩＰネットワークに代表されるベストエフォート型のパケット通信網においては、伝送帯域の変動が許容される。そのため、各ピクチャで発生した符号を、その大小にかかわらず１ピクチャ期間中にすべて伝送することが可能になる。バッファへの蓄積を行わないため伝送遅延は小さく抑えられ、往復遅延を小さく保つ必要があるテレビ電話アプリケーション等にとって利点が大きい。
【非特許文献１】大塚他，“ＦＥＣを用いたＭＰＥＧ２ over ＩＰシステムの開発と評価”，情処研究報告「分散システム／インターネット運用技術」No.024，2002
【発明の開示】
【発明が解決しようとする課題】
【００１９】
しかしながら、１ピクチャ単位で伝送を完了する低遅延型アプリケーションについて、（ｎ，ｋ）誤り訂正符号を適用しようとした場合、以下に述べるような問題が生じる。
【００２０】
図１３に、従来のＣＢＲ伝送型アプリケーションに対して（ｎ，ｋ）誤り訂正符号を適用した例を示す。
【００２１】
この場合には、平滑化バッファを通じて毎秒あたり一定のビット量で出力が行われるため、メディアパケットｋ個に相当するビットが出力されるごとに誤り訂正符号化を行い、（ｎ−ｋ）個のＦＥＣパケットを生成して出力できる。すなわち、一定の時間間隔で誤り訂正演算ブロックを構成し、出力することができる。
【００２２】
これに対し、１ピクチャ単位で伝送を完了する低遅延型アプリケーションについて、（ｎ，ｋ）誤り訂正符号を適用しようとした場合、各ピクチャの発生符号量が変化するため、各ピクチャのメディアパケットで誤り訂正演算ブロックを区切りよく構成することができず、パケットの余りや不足を生じる。
【００２３】
例えば図１４の例において、最初のＩピクチャ（１）で発生した符号量がメディアパケット（ｋ＋１）個に相当したとする。そうすると、Ｉピクチャ（１）の最後のメディアパケットは、２つ目の誤り訂正演算ブロック＜２＞に収容せざるを得ない。ここでもし、後続のＢピクチャ（２）およびＢピクチャ（３）で発生した符号量によって、ようやくメディアパケットがｋ個に達し、２つ目の誤り訂正演算ブロック＜２＞が充足されたとすると、Ｉピクチャ（１）の最後のメディアパケットは、Ｂピクチャ（３）の符号が発生するまでは誤り訂正符号の生成演算を行うことができず、送信を待たされることになる。
【００２４】
ここでもし、誤り訂正符号の生成演算を行うより前に、Ｉピクチャ（１）の最後のメディアパケットのみを先に送信したとしても、受信側において、もしこのメディアパケットが消失していた場合に、それを回復するには誤り訂正演算ブロック＜２＞のＦＥＣパケットが必要なのであるから、Ｉピクチャを復号および再生するには誤り訂正演算ブロック＜２＞全体のパケット到着を待たざるを得ない。結果として、ピクチャ２枚に相当する遅延の発生が避けられない。
【００２５】
このように、１ピクチャ単位で伝送を完了する低遅延型アプリケーションに誤り訂正符号を適用すると、遅延が増加するという問題が生じる。
【００２６】
ここで、遅延の増加を起こさないために、各ピクチャ単位でパケット伝送を完結させる方式も考えられる。
【００２７】
例えば図１５の例において、Ｉピクチャ（１）の最後のメディアパケットが、２つ目の誤り訂正演算ブロック＜２＞に収容された場合、残る（ｋ−１）個のメディアパケットはダミー、すなわち内容がすべてゼロであると想定して誤り訂正符号化を行い、ＦＥＣパケットを生成する。こうして、誤り訂正演算ブロック＜１＞と＜２＞は、後続のピクチャを待つことなく直ちに送信できる。同様に、Ｂピクチャ（２）のメディアパケット数がｋ個に満たなかった場合、残るメディアパケットはダミー、すなわち内容がすべてゼロであると想定して誤り訂正符号化を行い、ＦＥＣパケットを生成することで、後続のピクチャを待つことなく直ちに送信できる。
【００２８】
このとき、送受信側双方で、「誤り訂正演算ブロックを構成するメディアパケットが不足した場合はダミーのメディアパケットを使用し、その内容はすべてゼロである」と事前に申し合わせておけば、ダミーのメディアパケットを実際に送る必要もない。
【００２９】
しかしながら、この方法で誤り訂正符号化したＩピクチャ（１）について考えてみると、誤り訂正ブロック＜１＞については、ｋ個のメディアパケットに（ｎ−ｋ）個のＦＥＣパケットが付加されるが、誤り訂正ブロック＜２＞については、わずか１個のメディアパケットについて（ｎ−ｋ）個のＦＥＣパケットが付加されることになる。
【００３０】
すなわち、ピクチャ末尾のメディアパケットのみ冗長度が非常に高いという状態になり、冗長度の局所的な変化が大きくなるという問題点を生じる。さらには、ダミーの挿入による全体的な誤り訂正ブロック数の増加により、誤り訂正演算量が増加するという問題点も生じる。
【００３１】
このように、（ｎ，ｋ）誤り訂正符号化を、各ピクチャ単位で即座に伝送を行う低遅延の映像伝送アプリケーションに適用しようとすると、遅延が増加したり、意図しない冗長度の局所的変化や演算量の増加を引き起こすといった問題があった。
【００３２】
本発明はかかる事情に鑑みてなされたものであって、誤り訂正符号の付加による伝送遅延の増加や冗長度の局所的変化や演算量の増加を招くことなく、誤り訂正演算を各ピクチャごとに独立して実施することができるようにする新たな映像送受信技術の提供を目的とする。
【課題を解決するための手段】
【００３３】
〔１〕本発明の映像送信装置の構成
〔１−１〕第１の構成
上記の目的を達成するために、本発明の映像送信装置は、動画像の符号化情報をパケット化し、誤り訂正演算によってパケット損失を回復するための冗長なパケットを付加して、通信ネットワークへ送信する処理を行うために、（イ）ある１枚の画像を符号化した結果生じたビット量をもとに、このビット量を格納するために必要なパケット数を算出し、このパケット数に等しい値を誤り訂正符号の情報シンボル数として決定する第１の決定手段と、（ロ）第１の決定手段の決定した情報シンボル数について、誤り訂正符号の検査シンボル数を決定する第２の決定手段と、（ハ）第１の決定手段の決定した情報シンボル数と第２の決定手段の決定した検査シンボル数とを受け、１枚の画像の符号化情報から得られる可変数の情報シンボルを入力として、可変数の検査シンボルを生成する生成手段とを備えるように構成する。
【００３４】
このように構成されるときにあって、第２の決定手段は、処理の簡略化を図るべく、固定的に設定される値を検査シンボル数として決定することがある。
【００３５】
また、第２の決定手段は、冗長度を一定の範囲内に保つべく、第１の決定手段の決定した情報シンボル数に比例する形で検査シンボル数を決定することがある。
【００３６】
また、第２の決定手段は、後続の画像に対する影響が大きな画像をより厚く保護すべく、画像の符号化に用いた符号化パラメータに基づいて検査シンボル数を決定することがある。
【００３７】
また、第２の決定手段は、後続の画像に対する影響が大きな画像をより厚く保護するとともに、同一種別の画像における冗長度を一定の範囲内に保つべく、第１の決定手段の決定した情報シンボル数と、画像の符号化に用いた符号化パラメータとに基づいて検査シンボル数を決定することがある。
【００３８】
そして、生成手段は、誤り訂正能力の高い符号と演算負荷の軽い符号とを効率的に組み合わせることで、全体として演算負荷を減少させるべく、第１の決定手段の決定した情報シンボル数と第２の決定手段の決定した検査シンボル数とに基づいて、複数の誤り訂正符号の中からひとつを選択して使用することがある。
【００３９】
以上の各処理手段が動作することで実現される本発明の映像送信方法はコンピュータプログラムでも実現できるものであり、このコンピュータプログラムは、適当な記録媒体に記録して提供されたり、ネットワークを介して提供され、本発明を実施する際にインストールされてＣＰＵなどの制御手段上で動作することにより本発明を実現することになる。
【００４０】
〔１−２〕第２の構成
また、上記の目的を達成するために、本発明の映像送信装置は、動画像の符号化情報をパケット化し、誤り訂正演算によってパケット損失を回復するための冗長なパケットを付加して、通信ネットワークへ送信する処理を行うために、（イ）ある１枚の画像を符号化した結果生じたビット量をもとに、このビット量を格納するために必要なパケット数を算出し、複数の値の和がこのパケット数と等しくなるようなそれぞれの値を、誤り訂正符号の情報シンボル数として決定する第１の決定手段と、（ロ）第１の決定手段の決定した情報シンボル数のそれぞれについて、誤り訂正符号の検査シンボル数を決定する第２の決定手段と、（ハ）第１の決定手段の決定した情報シンボル数と第２の決定手段の決定した検査シンボル数とを受け、１枚の画像の符号化情報から得られる可変数の情報シンボルを入力として、可変数の検査シンボルを生成する生成手段とを備えるように構成する。
【００４１】
この構成を採るときに、同一グループの情報シンボルが連続して消失する場合に対処できるようにするために、生成手段の生成した検査シンボルとその生成元となった情報シンボルとを１つのグループとして、各グループのシンボルをインタリーブする形で送信する送信手段を備えることがある。
【００４２】
このように構成されるときにあって、第１の決定手段は、グループ間における冗長度の均一化を図るべく、演算可能な情報シンボル数に入る範囲でできるだけ大きく、かつ、情報シンボル数のばらつきが最も小さくなるようにと、それぞれのグループの情報シンボル数を決定することがある。
【００４３】
そして、第２の決定手段は、処理の簡略化を図るべく、固定的に設定される値を検査シンボル数として決定することがある。
【００４４】
また、第２の決定手段は、冗長度を一定の範囲内に保つべく、第１の決定手段の決定した情報シンボル数に比例する形で検査シンボル数を決定することがある。
【００４５】
また、第２の決定手段は、後続の画像に対する影響が大きな画像をより厚く保護すべく、画像の符号化に用いた符号化パラメータに基づいて検査シンボル数を決定することがある。
【００４６】
また、第２の決定手段は、後続の画像に対する影響が大きな画像をより厚く保護するとともに、同一種別の画像における冗長度を一定の範囲内に保つべく、第１の決定手段の決定した情報シンボル数と、画像の符号化に用いた符号化パラメータとに基づいて検査シンボル数を決定することがある。
【００４７】
そして、生成手段は、誤り訂正能力の高い符号と演算負荷の軽い符号とを効率的に組み合わせることで、全体として演算負荷を減少させるべく、第１の決定手段の決定した情報シンボル数と第２の決定手段の決定した検査シンボル数とに基づいて、複数の誤り訂正符号の中からひとつを選択して使用することがある。
【００４８】
以上の各処理手段が動作することで実現される本発明の映像送信方法はコンピュータプログラムでも実現できるものであり、このコンピュータプログラムは、適当な記録媒体に記録して提供されたり、ネットワークを介して提供され、本発明を実施する際にインストールされてＣＰＵなどの制御手段上で動作することにより本発明を実現することになる。
【００４９】
〔２〕本発明の映像受信装置の構成
上記のように構成される本発明の映像送信装置から送信されてくるパケットを受けて、本発明の映像受信装置は、誤り訂正演算によってパケット損失を回復するための冗長なパケットが付加されている、動画像の符号化情報が格納されたパケットを受信し、損失したパケットを誤り訂正演算によって回復する処理を行うために、（イ）映像送信側から通知された情報に基づいて、ある１枚の画像について、映像送信側で用いたものと同一の情報シンボル数および検査シンボル数を決定する決定手段と、（ロ）決定手段の決定した情報シンボル数および検査シンボル数を受け、１枚の画像の符号化情報から得られる可変数の情報シンボルおよび検査シンボルを入力として、その入力に対して誤り訂正演算を行う演算手段とを備えるように構成する。
【００５０】
このように構成されるときにあって、演算手段は、本発明の映像送信装置の処理に合わせて、決定手段の決定した情報シンボル数および検査シンボル数に基づいて、複数の誤り訂正符号の中からひとつを選択して使用することがある。
【００５１】
以上の各処理手段が動作することで実現される本発明の映像受信方法はコンピュータプログラムでも実現できるものであり、このコンピュータプログラムは、適当な記録媒体に記録して提供されたり、ネットワークを介して提供され、本発明を実施する際にインストールされてＣＰＵなどの制御手段上で動作することにより本発明を実現することになる。
【００５２】
〔３〕本発明の構成の骨組み
本発明の映像送信装置では、ｎ，ｋの値が可変な（ｎ，ｋ）誤り訂正符号化器を使用する。各ピクチャ単位で独立した誤り訂正ブロックを構成し、かつ、演算時にダミーのメディアパケットを挿入する必要がないように、ピクチャ１枚あたりの発生符号量に応じてｎ，ｋの値を変化させて誤り訂正演算を行い、ＦＥＣパケットを生成して送信する。
【００５３】
これを受けて、本発明の映像受信装置では、ｎ，ｋの値が可変な（ｎ，ｋ）誤り訂正復号器を使用し、映像送信装置で選択したものと同一のｎ，ｋの値を用いて、各ピクチャ単位で消失パケットの回復を行う。
【００５４】
このように、本発明によれば、ピクチャ１枚あたりの発生符号量に応じてｎ，ｋの値を変化させることにより、ダミーのメディアパケットを挿入することによる冗長度の局所的変化や演算量の増加を避けつつ、誤り訂正演算ブロックを各ピクチャ単位に独立とし、遅延の増加を防ぐことができる。
【発明の効果】
【００５５】
以上述べたように、本発明では、ピクチャ１枚あたりの発生符号量に応じて情報シンボル数を可変とし、検査シンボル数は固定に設定したり、情報シンボル数とピクチャ符号化パラメータとに応じて可変に設定して、誤り訂正符号の演算および誤り訂正演算を行うという構成を採る。
【００５６】
この構成に従って、本発明によれば、誤り訂正演算を各ピクチャごとに独立して実施することができ、誤り訂正符号の付加による伝送遅延の増加を防ぐことができるとともに、冗長度の局所的変化や演算量の増加を避けることができるようになる。
【発明を実施するための最良の形態】
【００５７】
〔１〕第１の実施形態例
先ず最初に、第１の実施形態例について説明する。
【００５８】
図１に、第１の実施形態例に従う本発明の映像送信装置１の装置構成の一実施形態例を図示する。
【００５９】
この図に示すように、本発明の映像送信装置１は、ピクチャ符号化・パケット化器１１と、メディアパケットバッファ１２と、誤り訂正演算パラメータ選択器１３と、誤り訂正符号生成部１４と、ＦＥＣパケットバッファ１５と、ネットワーク送出器１６とを備える。そして、誤り訂正符号生成部１４は、情報シンボルレジスタ１４１と、誤り訂正符号演算器１４２と、検査シンボルレジスタ１４３とを備える。
【００６０】
このピクチャ符号化・パケット化器１１は、入力された映像信号を、例えばＭＰＥＧ方式に従って符号化し、生成された各ピクチャの符号を一定のバイト量ごとに区切ってメディアパケット１１３を生成して、メディアパケットバッファ１２に格納する。
【００６１】
図２に、このときの、メディアパケット１１３の生成およびメディアパケットバッファ１２への格納方式を図示する。
【００６２】
いま、メディアパケット１１３の最大サイズが３０００バイトであるとする。このとき、最大のメディアパケット１１３を収容できるようにするため、メディアパケットバッファ１２の横幅も３０００バイトに設定される。
【００６３】
このメディアパケット１１３の最大サイズは、ネットワークに送出するパケットの最大サイズに関連する。一例として、ネットワーク上でのパケットのフラグメンテーションを起こしてはならない場合には、ネットワークのＭＴＵ（Maximum Transfer Unit ）からＩＰヘッダ、ＵＤＰヘッダ、ＲＴＰヘッダ等の各種ヘッダサイズを差し引いた値に設定される。
【００６４】
ここで、図２に示すように、あるピクチャを符号化して発生した符号量が１７０００バイトであったとすると、１７０００÷３０００＝５余り２０００であることから、３０００バイトの最大長をもつ５個のメディアパケットと、２０００バイトの長さを持つ最後のメディアパケットという合計で６個のメディアパケットが構成される。これらのメディアパケットがメディアパケットバッファ１２に格納される。最後のメディアパケットの長さが満たない部分は、後ほどの誤り訂正符号演算に備えてゼロの値でフィリングされる。バッファの残り部分は空きのままとなる。
【００６５】
図１に戻って説明するならば、ピクチャ符号化・パケット化器１１からは、符号化したピクチャのメディアパケット１１３とともに、対象ピクチャのパケット数を示すメディアパケット数情報１１１と、ピクチャの種別を示す符号化パラメータ情報１１２とが出力される。
【００６６】
このメディアパケット数情報１１１と符号化パラメータ情報１１２とを受けて、誤り訂正演算パラメータ選択器１３は、この２つの情報をもとに、（ｎ，ｋ）誤り訂正演算のｋの値とｎ−ｋの値とを決定する。
【００６７】
このｋ、すなわち情報シンボルの数については、メディアパケット数情報１１１と同一に設定される。一方、このｎ−ｋ、すなわち検査シンボルの数については、以下に示す４つの方法のうちのいずれかの方法によって決定される。
【００６８】
〔方法１〕
ｎ−ｋ＝常に一定の値とする。すなわち、メディアパケット数情報１１１や符号化パラメータ情報１１２によらず、ｎ−ｋの値はつねに同一とする。
【００６９】
〔方法２〕
ｎ−ｋ＝ｉｎｔ（ｋ×Ａ）＋Ｂとする。ここで、ｉｎｔ（）は、小数部を切り捨てた整数値を返す。
【００７０】
いま、Ａ＝０.2 ,Ｂ＝１とすると、
ｋ＝１〜４      →  ｎ−ｋ＝１
ｋ＝５〜９      →  ｎ−ｋ＝２
ｋ＝１０〜１４  →  ｎ−ｋ＝３
・・・・・
となり、ｋの数に比例してｎ−ｋの値が増加する。すなわち、この方法２では、検査シンボル数を情報シンボル数に比例させ、冗長度を一定の範囲内に保つのである。
【００７１】
〔方法３〕
ｎ−ｋ＝ＲI （Ｉピクチャの場合），ｎ−ｋ＝ＲP （Ｐピクチャの場合），ｎ−ｋ＝ＲB （Ｂピクチャの場合）とする。
【００７２】
ＭＰＥＧ符号化においては、ＩピクチャやＰピクチャの損失は時間方向予測によって後続のピクチャにまでエラーが伝播するため、Ｂピクチャの損失と比較して影響が大きい。そこで、この方法３では、ＲI ≧ＲP ≧ＲB なるＲI,ＲP,ＲB を設定することにより、ＩピクチャおよびＰピクチャをより厚く保護するのである。
【００７３】
〔方法４〕
方法２と方法３とを組み合わせて、ｎ−ｋの値を決定する。
【００７４】
すなわち、Ｉピクチャ、Ｐピクチャ、Ｂピクチャのそれぞれについて、方法２で述べたＡ，Ｂの値を定義し、ＡI ≧ＡP ≧ＡB もしくはＢI ≧ＢP ≧ＢB と設定する。こうして、検査シンボル数を情報シンボル数に比例させるとともに、ＩピクチャおよびＰピクチャをより厚く保護する。
【００７５】
このようにして誤り訂正演算パラメータ選択器１３により決定されたｋの値およびｎ−ｋの値は、シンボル数選択情報１３１として誤り訂正符号生成部１４に通知される。
【００７６】
この通知を受けて、誤り訂正符号生成部１４は、メディアパケットバッファ１２の一番左から順に演算を開始する。図２に示した通り、メディアパケットバッファ１２にはｋ個のメディアパケットが格納されている。ここから縦方向に１シンボルずつ、合計ｋシンボルを取り出し、情報シンボルレジスタ１４１にセットする。検査シンボルレジスタ１４３は演算前にゼロシンボルでクリアされる。
【００７７】
そして、誤り訂正符号演算器１４２は、情報シンボルレジスタ１４１から順次情報シンボルを読み出して、演算結果を検査シンボルレジスタ１４３に反映してゆく。演算が終了したら、検査シンボルレジスタ１４３上に生成されたｎ−ｋ個の検査シンボル１４４を出力し、ＦＥＣパケットバッファ１５の対応する位置に縦方向に書き込む。
【００７８】
次に、図３を用いて、上記の誤り訂正符号演算と、短縮符号の利用、およびｋとｎ−ｋとが可変であることの関連性について説明する。
【００７９】
図３では、誤り訂正符号として８ビットシンボルのリードソロモン符号を用いており、情報シンボル数は２５５シンボル（２５５バイト）となる。ただし、図１１で説明した短縮符号を利用することにより、後半ｋシンボル（ｋバイト）のみを情報シンボルとし、前半２５５−ｋシンボル（２５５−ｋバイト）はゼロシンボルとされる。
【００８０】
誤り訂正符号演算器１４２は、検査シンボルレジスタ１４３に格納される検査シンボル値をゼロに初期化した後、一番左から順にシンボルを読み込んで検査シンボルの生成演算を行い、検査シンボルの値を更新してゆく。そして、一番右のシンボルまでの読み込みが終了した状態で得られた検査シンボルの値が、求める検査シンボルの値となる。
【００８１】
なお、このような誤り訂正符号演算器１４２の演算方法は、生成多項式での割り算によって巡回符号を得る一般的な演算方法であり（例えば、“ＴＥＣＨＩ  やりなおしのための工業数学  ＣＱ出版社刊 p.105”参照）、本発明の趣旨と直接関連しないため、その詳細は割愛する。
【００８２】
ここで、前半のゼロシンボル部分まで誤り訂正符号演算を終了した状態＜２＞において、ここまでで読み込んだシンボルはすべてゼロシンボルであるから、生成された検査シンボルの値もすべてゼロシンボルとなる。従って、実際には＜２＞の状態から演算を開始すればよい。すなわち、どのようなｋの値であっても、検査シンボルをゼロシンボルでクリアしたあと、ｋ個の情報シンボルの先頭から演算を開始すればよい。
【００８３】
また、検査シンボル長をｎ−ｋシンボル（ｎ−ｋバイト）とするためには、生成多項式の次数をｎ−ｋ−１次に設定する。例えば、生成多項式Ｇ（ｘ）として、
Ｇ（ｘ）＝（ｘ−１)(ｘ−α)(ｘ−α2 ）・・・（ｘ−αn-k-1 ）
を選択し、巡回符号の生成演算（例えば、“ＴＥＣＨＩ  やりなおしのための工業数学  ＣＱ出版社刊 p.105”参照）を行えばよい。ただし、αは体の原始元であり、８ビットシンボルのリードソロモン符号においては例えば“ｘ8 ＋ｘ4 ＋ｘ3 ＋ｘ2 ＋１＝０”の根である。
【００８４】
このように、誤り訂正符号演算器１４２において、ｎ−ｋの値に対応した生成多項式Ｇ（ｘ）を選択し、ｋ個の情報シンボルに対して逐次ｎ−ｋ個の検査シンボルを演算することによって、ｋおよびｎ−ｋが可変であっても検査シンボルを生成できる。
【００８５】
図１に戻って説明するならば、上記の演算をメディアパケットバッファ１２の右端まで行い、ＦＥＣパケットバッファ１５にｎ−ｋ個のＦＥＣパケットが生成されたら、ネットワーク送出器１６は、メディアパケットバッファ１２からｋ個のメディアパケット、およびＦＥＣパケットバッファ１５からｎ−ｋ個のＦＥＣパケットを横方向に読み出し、それぞれにネットワークパケットのヘッダ（例としてＲＴＰ／ＵＤＰ／ＩＰヘッダ）を付加して、ネットワークに送出する。
【００８６】
このとき、メディアパケットおよびＦＥＣパケットの順序、ならびにメディアパケット数情報１１１や符号化パラメータ情報１１２を受信装置に伝達するため、ネットワーク送出器１６は、これらの情報をネットワークパケットのヘッダに付加する。例えば、パケットの順序はＲＴＰヘッダのシーケンス番号フィールドを利用し、その他の情報は独自のヘッダに格納する。独自のヘッダへの格納情報としては、ｋとｎ−ｋの値をペアで格納してもよいし、ｋの値とＭＰＥＧ符号化のピクチャ種別を表す値とを格納してもよい。
【００８７】
図４に、誤り訂正演算パラメータ選択器１３のパラメータ選択方法として前述の方法２を使用し、Ａ＝０.2 ,Ｂ＝１とした場合のネットワークパケットの例を図示する。
【００８８】
メディアパケット数ｋの値に応じて、ＦＥＣパケットの個数が可変となると同時に、誤り訂正演算ブロックが各ピクチャで完結して送信可能となっていることがわかる。この例では、ＲＴＰヘッダにはパケットのシーケンス番号を、独自ヘッダにはピクチャ通し番号と、ｋとｎ−ｋの値の対とを格納している。
【００８９】
なお、誤り訂正符号の演算時にゼロフィリングを行った部分については、実際には伝送していない。
【００９０】
次に、受信装置側の動作について説明する。
【００９１】
図５に、本発明による映像受信装置２の装置構成の一実施形態例を図示する。
【００９２】
この図に示すように、本発明の映像受信装置２は、ネットワーク受信器２１と、メディアパケットバッファ２２と、ＦＥＣパケットバッファ２３と、誤り訂正演算パラメータ選択器２４と、誤り訂正演算部２５と、ピクチャ復号器２６とを備える。そして、誤り訂正演算部２５は、シンボルレジスタ２５１と、シンボル訂正演算器２５２とを備える。
【００９３】
このネットワーク受信器２１は、ネットワークからパケットを受信し、メディアパケット２１２をメディアパケットバッファ２２に、ＦＥＣパケット２１３をＦＥＣパケットバッファ２３に格納する。
【００９４】
このとき、メディアパケットおよびＦＥＣパケットの順序は、ネットワークパケットのヘッダに記録したシーケンス番号（前述の例では、ＲＴＰヘッダに格納したシーケンス番号）を参照することによって、映像送信装置１のメディアパケットバッファ１２およびＦＥＣパケットバッファ１５と同じ配置で格納する。パケット長がパケットバッファの幅に満たない場合は、空き部分がゼロシンボルでフィリングされる。ネットワーク上でのパケット損失によってあるパケットが到着しなかった場合には、バッファの当該位置は空欄のままとされる。
【００９５】
１ピクチャを構成するパケットがすべて到着したら（これは、例えば、当該ピクチャの最後のＦＥＣパケットが到着するか、あるいは次のピクチャを構成するパケットが到着したことによって判別できる）、誤り訂正演算部２５は、損失パケットの回復演算を開始する。
【００９６】
まず、誤り訂正演算パラメータ選択器２４は、ネットワーク受信器２１から送られてくるネットワークヘッダ情報２１１をもとに、ｋおよびｎ−ｋの値を算出し、それをシンボル数選択情報２４１としてシンボル訂正演算器２５２に伝達する。このときのｋおよびｎ−ｋの値の算出式は、映像送信装置１の誤り訂正演算パラメータ選択器１３と共通の方法を用い、送信側と同じ結果を得るようにする。なお、前述の図４の例のように、ｋとｎ−ｋの値の組がヘッダに直接記述されている場合には、この値を直接出力すればよい。
【００９７】
また、メディアパケットバッファ２２およびＦＥＣパケットバッファ２３からは、パケットが未到着で空欄になっている位置をあらわす消失位置情報２２２が誤り訂正演算部２５に伝達される。
【００９８】
これを受けて、誤り訂正演算部２５は、消失位置情報２２２の個数を参照し、これが誤り訂正演算可能な範囲を超えていない場合、例としてリードソロモン符号の場合ではｎ−ｋ個を超えていない場合には、メディアパケットバッファ２２の一番左から順に演算を開始する。メディアパケットバッファ２２およびＦＥＣパケットバッファ２３から縦方向に１シンボルずつ、合計ｎシンボルを取り出し、シンボルレジスタ２５１にセットする。このとき、パケットが未到着で空欄になっている部分はゼロシンボルに置き換えられる。
【００９９】
シンボル訂正演算器２５２は、シンボル数選択情報２４１としてもたらされたｋ，ｎ−ｋの値、および消失位置情報２２２をもとに、シンボルレジスタ２５１に格納された各シンボルからシンドローム値を演算し、バーレカンプ・マッシィ（Berlekamp-Massey）・アルゴリズム等によって、誤り位置の特定と正しいシンボル値の演算とを行ってシンボルを訂正する。なお、この方法は本発明の趣旨と直接関連しないため詳細は割愛する（例えば、“ＴＥＣＨＩ  やりなおしのための工業数学  ＣＱ出版社刊 p.106”参照）。
【０１００】
この演算が終了したら、訂正が完了したシンボルレジスタ２５１内のシンボルをメディアパケットバッファ２２およびＦＥＣパケットバッファ２３の元の位置に書き戻し、ひとつ右の列のシンボル訂正演算を引き続き行う。
【０１０１】
すべての列についての演算が終了したら、メディアパケットバッファ２２に格納されたメディアパケットを上から順に行方向に読み出し、ピクチャ復号器２６へ供給する。
【０１０２】
以上述べたように、ピクチャ１枚あたり可変数のメディアパケットに対して、誤り訂正符号の情報シンボル数をメディアパケット数と同数とし、可変数のＦＥＣパケットを生成して送受信することにより、誤り訂正演算を各ピクチャごとに独立して実施し、伝送遅延の増加を防ぐことができるとともに、冗長度の局所的な変化を抑え、誤り訂正演算においてダミーの挿入による全体的な誤り訂正ブロック数の増加や誤り訂正演算量が増加を防ぐことができる。
【０１０３】
なお、一般的に、回路規模や搭載メモリ量の制限から、誤り訂正符号演算器１４２およびシンボル訂正演算器２５２が対応できる情報シンボル数ｋには上限が存在する。この上限をｋMAX とする。
【０１０４】
もし、１ピクチャあたりの発生符号量が非常に大きく、メディアパケット数の値が非常に大きくなった場合、メディアパケット数がｋMAX を超える事態が想定される。このときには、ｋMAX 個のメディアパケットについて誤り訂正演算を行ってＦＥＣパケットを構成し、残るメディアパケットはＦＥＣパケットによる保護のない状態で送受信する対処法などが考えられる。
【０１０５】
〔２〕第２の実施形態例
次に、第２の実施形態例について説明する。
【０１０６】
第２の実施形態例において、映像送信装置１および映像受信装置２の構成は第１の実施形態例と同様である。しかしながら、送信側の誤り訂正演算パラメータ選択器１３および受信側の誤り訂正演算パラメータ選択器２４におけるｎおよびｎ−ｋの値の選択方式が異なり、これに応じて、送信側の誤り訂正符号生成部１４および受信側の誤り訂正演算部２５の動作が若干異なる。以下に、その差異について説明する。
【０１０７】
第１の実施形態例においては、ｋの値として、ピクチャ１枚を構成するメディアパケット数をそのまま設定し、ピクチャ１枚で１つの誤り訂正ブロックを構成していた。
【０１０８】
そのため、メディアパケット数の変動に対応するためには広範囲のｋに対応する必要があるうえ、仮にメディアパケット数が非常に大きくなった場合、演算可能な上限数ｋMAX を超えるメディアパケットについてはＦＥＣパケットによる保護のない状態で送受信するしかなかった。
【０１０９】
これに対し、第２の実施形態例においては、１枚のピクチャを複数の誤り訂正ブロックで構成することを可能にする。
【０１１０】
具体的には、まず、誤り訂正演算パラメータ選択器１３において、以下の方法で誤り訂正ブロックの総数ｑを決定する。いま、誤り訂正符号生成部１４および誤り訂正演算部２５が演算可能な情報シンボルの最大値をｋMAX とすると、
誤り訂正ブロック数ｑ＝ｃｅｉｌ（メディアパケット数÷ｋMAX ）
ただし、ｃｅｉｌ（）は小数点以下を切り上げた整数を示す
に従って、誤り訂正ブロックの総数ｑを決定する。
【０１１１】
続いて、情報シンボル数ｋの基本値ｋBASEを、
ｋBASE＝ｆｌｏｏｒ（メディアパケット数÷ｑ）  
ただし、ｆｌｏｏｒ（）は小数点以下を切り捨てた整数を示す
に従って決定する。
【０１１２】
この決定を受けて、いま、上記の除算の余りに相当する値ｒを、
ｒ＝メディアパケット数−（ｑ×ｋBASE）
と定義すると、誤り訂正演算ブロック１，２・・・ｑのそれぞれに対応する情報シンボル数ｋ1 ，ｋ2 ・・・ｋq は、
ｒ＝０なら
ｋ1 ，ｋ2 ・・・ｋq ＝ｋBASE
ｒ＞０なら
ｋ1,・・・・ｋr ＝ｋBASE＋１
ｋr+1,・・・ｋq ＝ｋBASE
のように決定される。
【０１１３】
以上の演算の目的は、ｋMAX を超えずにできるだけ大きく、かつ各誤り訂正演算ブロックの大きさのばらつきが最も小さくなるｋ1 ，ｋ2 ・・・ｋq を選択することにある。
【０１１４】
上記の演算の例として、いま、演算可能な情報シンボルの最大値ｋMAX が１５であるとき、４２個のメディアパケットがメディアパケットバッファ１２に入力されたとする。この状態を図６に示す。
【０１１５】
このとき、ｋMAX ＝１５を超えずにできるだけ大きな誤り訂正演算ブロックを構成するためには、ｋ＝１４の誤り訂正演算ブロックを２つ、ｋ＝１３の誤り訂正演算ブロックを１つ、合計３ブロックを構成すればよいことは容易に理解される。
【０１１６】
実際に上記の演算を行うと、
誤り訂正ブロック数ｑ＝ｃｅｉｌ（メディアパケット数÷ｋMAX ）
＝ｃｅｉｌ（４１÷１５）
＝３
ｋBASE＝ｆｌｏｏｒ（メディアパケット数÷ｑ）
＝ｆｌｏｏｒ（４１÷３）
＝１３
ｒ＝メディアパケット数−（ｑ×ｋBASE）
＝４１−（３×１３）
＝２
となる。
【０１１７】
よって
ｋ1 ，ｋ2 ＝ｋBASE＋１＝１３＋１＝１４
ｋ3 ＝ｋBASE＝１３
となり、所望の値が得られていることがわかる。
【０１１８】
続いて、誤り訂正演算パラメータ選択器１３は、ｑ個の誤り訂正演算ブロックのそれぞれについて、ｋ1,ｋ2 ・・・ｋq の値をもとに、第１の実施形態例で述べた方法１〜方法４のいずれかの方法に基づき、（ｎ−ｋ)1 ,（ｎ−ｋ)2 ,・・・（ｎ−ｋ）q の値を決定する。これらｋと（ｎ−ｋ）の値の組、合計ｑ組が、シンボル数選択情報１３１として誤り訂正符号生成部１４にもたらされる。
【０１１９】
図６の例においては、３つの誤り演算ブロックをそれぞれ「グループ１」〜「グループ３」として表記してある。またｎ−ｋの値として、各グループごとにそれぞれ３，３，２が選択されたものとしている。
【０１２０】
これを受けて、誤り訂正符号生成部１４は、各グループを構成するメディアパケットがメディアパケットバッファ１２に到着し次第、誤り訂正符号の生成を行って、ＦＥＣパケットバッファ１５の対応するグループの位置に書き込む。すべてのグループについて演算が終了したら、メディアパケットおよびＦＥＣパケットをネットワーク送出器１６へ出力する。
【０１２１】
映像受信装置２においても、誤り訂正演算パラメータ選択器２４は、上記と同一の方法によって誤り演算ブロックの個数ｑ、および各グループのｋとｎ−ｋの値を再現し、誤り訂正演算部２５へ伝達する。
【０１２２】
従って、図７に示すように、メディアパケットバッファ２２およびＦＥＣパケットバッファ２３内には、映像送信装置１側と同一のグループが構成される。誤り訂正演算部２５は、各グループ単位で誤り訂正演算を行い、すべてのグループについて演算が終了したらメディアパケットをピクチャ復号器２６へ出力する。
【０１２３】
図８に、１枚のピクチャを構成するメディアパケットおよびＦＥＣパケットをネットワーク上で伝送する際のパケット順序について図示する。
【０１２４】
図８（ａ）は、第１の実施形態例と同様に、すべてのメディアパケットを送出した後に、すべてのＦＥＣパケットを送出するものである。
【０１２５】
これに対して、図８（ｂ）のように、各グループ単位で、メディアパケットとＦＥＣパケットとを対にして伝送することもできる。
【０１２６】
この場合、映像送信装置１でＦＥＣパケットの生成が終了したグループから順に伝送し、映像受信装置２においても到着したグループから順に誤り訂正演算を開始できるため、１枚のピクチャに対して誤り訂正符号生成演算および誤り訂正演算を複数回に分散することができ、演算負荷を平滑化する効果がある。また、バッファに蓄積されるパケットは１グループのみに限定し、あるグループの演算が終了し出力が完了した後に、続くグループのパケットを入力するよう動作をスケジューリングすることにより、メディアパケットバッファおよびＦＥＣパケットバッファを共用することができ、バッファの使用量を削減する効果もある。
【０１２７】
さらには、図８（ｃ）のように、各グループのパケットを１つずつ入れ子にして伝送することもできる。
【０１２８】
ネットワーク上ではしばしば複数のパケットが連続して消失するバーストロスが起きることが知られているが、このように入れ子で伝送することにより、例えば３つのパケットが連続して消失した場合でも、各グループあたりでは１つのパケットが消失したことにしかならない。そのため、リードソロモン符号においてｎ−ｋ＝２を選択していた場合、３連続のパケットロスは図８（ａ）や図８（ｂ）に示す伝送方式では回復できないが、図８（ｃ）の方式であれば回復できる。
【０１２９】
以上述べたように、第２の実施形態例によれば、情報シンボルの上限数ｋMAX が比較的小さな誤り訂正符号演算器１４２およびシンボル訂正演算器２５２を使用する場合においても、可変数のメディアパケットに対して適応的に誤り訂正符号を付加することができる。また、パケットの伝送順序によっては誤り訂正演算の負荷を平滑化したり、バーストロスに対する耐性を高めたりすることができる。
【０１３０】
〔３〕第３の実施形態例
次に、第３の実施形態例について説明する。
【０１３１】
図９に、第３の実施形態例に従う本発明の映像送信装置１の装置構成の一実施形態例を図示し、図１０に、第３の実施形態例に従う本発明の映像受信装置２の装置構成の一実施形態例を図示する。
【０１３２】
第１及び第２の実施形態例と異なるのは、第３の実施形態例では、誤り訂正符号演算器１４２、およびシンボル訂正演算器２５２が複数配置されている点のみである。
【０１３３】
これまで主に説明してきたリードソロモン符号は、誤り訂正能力は高いものの演算が複雑であり、特にソフトウェアによって実装する際には演算負荷が問題となる。
【０１３４】
これに対し、パリティ符号（ＸＯＲ）はｎ−ｋの値が１に限られるものの、演算が非常に軽いという利点がある。ｎ−ｋ＝１の場合においては、リードソロモン符号とパリティ符号のパケット損失に対する耐性は同一である（どちらも１つのパケット損失のみを回復できる）。
【０１３５】
よって、図９において、誤り訂正符号演算器１４２としてリードソロモン符号演算器とパリティ符号演算器の双方を実装することにより、誤り訂正演算パラメータ選択器１３がｎ−ｋの値を１と決定した場合にはパリティ符号を、それ以外のｎ−ｋについてはリードソロモン符号を選択することができる。この選択結果は、誤り訂正符号選択情報１３２として伝達され、選択された誤り訂正符号演算器１４２を使用してＦＥＣパケットの生成を行う。
【０１３６】
受信側においても、図１０に示すように、シンボル訂正演算器２５２としてリードソロモン符号とパリティ符号の双方を実装し、誤り訂正演算パラメータ選択器２４が送信側と同一の誤り訂正符号選択情報２４２を出力することにより、送信側で使用した符号と一致するシンボル訂正演算器２５２を選択し、誤り訂正演算を行うことができる。
【０１３７】
このように、第３の実施形態例では、ｋやｎ−ｋの値によって使用する符号方式を変更することにより、誤り訂正能力の高い符号と演算負荷の軽い符号とを効率的に組み合わせ、装置全体での演算負荷を減少させることができる。組み合わせる誤り訂正符号としては、上記のリードソロモン符号、パリティ（ＸＯＲ）符号の他に、ハミング（７，４）符号なども挙げられる。
【図面の簡単な説明】
【０１３８】
【図１】本発明の第１の実施形態例における映像送信装置の構成を示す図である。
【図２】メディアパケットの生成およびメディアパケットバッファへの格納方式を示した図である。
【図３】短縮符号を使用した場合の誤り訂正符号生成方式について示した図である。
【図４】短縮符号を使用した場合の誤り訂正符号生成方式について示した図である。
【図５】本発明の第１の実施形態例における映像受信装置の構成を示す図である。
【図６】本発明の第２の実施形態例における送信側での誤り訂正ブロックのグループ化を示す図である。
【図７】本発明の第２の実施形態例における受信側での誤り訂正ブロックのグループ化を示す図である。
【図８】本発明の第２の実施形態例におけるネットワーク上でのパケットの伝送順序を示す図である。
【図９】本発明の第３の実施形態例における映像送信装置の構成を示す図である。
【図１０】本発明の第３の実施形態例における映像受信装置の構成を示す図である。
【図１１】短縮リードソロモン符号について説明した図である。
【図１２】誤り訂正符号をパケット損失対策のために適用した場合を示す図である。
【図１３】従来のＣＢＲ伝送型アプリケーションに対して誤り訂正符号を適用した場合を示す図である。
【図１４】１ピクチャ単位で伝送を完了する低遅延型アプリケーションについて、誤り訂正符号を適用しようとした第１の場合を示す図である。
【図１５】１ピクチャ単位で伝送を完了する低遅延型アプリケーションについて、誤り訂正符号を適用しようとした第２の場合を示す図である。
【符号の説明】
【０１３９】
１      映像送信装置
２      映像受信装置
１１    ピクチャ符号化・パケット化器
１２    メディアパケットバッファ
１３    誤り訂正演算パラメータ選択器
１４    誤り訂正符号生成部
１５    ＦＥＣパケットバッファ
１６    ネットワーク送出器
２１    ネットワーク受信器
２２    メディアパケットバッファ
２３    ＦＥＣパケットバッファ
２４    誤り訂正演算パラメータ選択器
２５    誤り訂正演算部
２６    ピクチャ復号器
１４１  情報シンボルレジスタ
１４２  誤り訂正符号演算器
１４３  検査シンボルレジスタ
２５１  シンボルレジスタ
２５２  シンボル訂正演算器
【図１】
2005347927.tif 000003
【図２】
2005347927.tif 000004
【図３】
2005347927.tif 000005
【図４】
2005347927.tif 000006
【図５】
2005347927.tif 000007
【図６】
2005347927.tif 000008
【図７】
2005347927.tif 000009
【図８】
2005347927.tif 000010
【図９】
2005347927.tif 000011
【図１０】
2005347927.tif 000012
【図１１】
2005347927.tif 000013
【図１２】
2005347927.tif 000014
【図１３】
2005347927.tif 000015
【図１４】
2005347927.tif 000016
【図１５】
2005347927.tif 000017