(57)【要約】【課題】画像データ伝送による画質の劣化を抑制することができるようにする。【解決手段】フラグ付加部２５５は、コードストリームのデータ量が、符号化処理の目標レートとバッファ量情報とに基づいて設定された許容レートを超えていると判定された場合、そのコードストリームのヘッダに、転送禁止を指定するインコンプリートフラグを付加する。データ供給部２５６は、コードストリームを送信バッファ１１４に供給し、保持させる。レート制御部２５８は、受信装置１０２より供給されるフィードバック情報に基づいて、符号化部１１２の符号化処理の目標レートを決定する。本発明は、例えば、画像データを伝送するシステムの情報処理装置に適用することができる。【選択図】図６
2010239288.tif 000002
【特許請求の範囲】
【請求項１】
他の情報処理装置に伝送する画像データを符号化する符号化手段と、
前記符号化手段により前記画像データが符号化されて生成されたコードストリームのデータ量が、前記コードストリームを不具合なく伝送可能なビットレートの上限値である許容レートを超えるか否かに基づいて前記コードストリームの実データの送信の可否を制御する制御手段と、
前記制御手段の制御に基づいて、前記コードストリームのデータ量が前記許容レートを超えない場合、前記コードストリームをパケット化し、前記コードストリームのデータ量が前記許容レートを超える場合、前記コードストリームのヘッダのみをパケット化するパケット化手段と、
前記パケット化手段により前記コードストリームから生成されたパケットを前記他の情報処理装置に送信する送信手段と
を備える情報処理装置。
【請求項２】
前記制御手段は、前記コードストリームがバッファに保持される前に、前記コードストリームの実データの送信の可否を制御し、
前記パケット化手段は、前記バッファに保持されている前記コードストリームを読み出してパケット化する
請求項１に記載の情報処理装置。
【請求項３】
前記制御手段は、
前記バッファに保持されているコードストリームのデータ量を示すバッファ量を監視する監視手段と、
前記監視手段により監視される現在の前記バッファ量と、前記画像データを前記他の情報処理装置に伝送する伝送路の伝送可能なビットレートの上限値とに基づいて、前記許容レートを設定する許容レート設定手段と、
前記コードストリームのデータ量が、前記許容レート設定手段により設定された前記許容レートを超えるか否かを判定する判定手段と、
前記コードストリームを前記バッファに供給して保持させる供給手段と
を備える請求項２に記載の情報処理装置。
【請求項４】
前記制御手段は、
前記判定手段により、前記コードストリームのデータ量が前記許容レートを超えると判定された場合、前記コードストリームのヘッダにフラグ情報を付加する付加手段
をさらに備え、
前記パケット化手段は、前記コードストリームの前記ヘッダに前記フラグ情報が付加されている場合、前記コードストリームの前記実データ部分を破棄し、前記ヘッダのみをパケット化する
請求項３に記載の情報処理装置。
【請求項５】
前記制御手段は、
前記伝送路の伝送可能なビットレートの上限値から、前記符号化手段による符号化における符号量の目標値である目標レートを求める目標レート設定手段
をさらに備え、
前記許容レート設定手段は、前記監視手段により監視される現在の前記バッファ量と、前記目標レート設定手段により算出された前記目標レートとに基づいて、前記許容レートを設定する
請求項３に記載の情報処理装置。
【請求項６】
前記他の情報処理装置から送信される、受信側における前記コードストリームの欠損状況を示すフィードバック情報を取得する取得手段をさらに備え、
前記目標レート設定手段は、前記取得手段により取得された前記フィードバック情報に基づいて、前記目標レートを求める
請求項５に記載の情報処理装置。
【請求項７】
前記符号化手段は、
前記画像データに対して、前記画像データの周波数成分を低域成分と高域成分とに分割する分析フィルタ処理を、低域成分に対して再帰的に所定回数繰り返すウェーブレット変換処理を行うウェーブレット変換手段と、
前記分析フィルタ処理手段により、帯域毎に分割された前記周波数成分を量子化する量子化手段と、
前記量子化手段により量子化された前記周波数成分をエントロピ符号化するエントロピ符号化手段と
を備える請求項１に記載の情報処理装置。
【請求項８】
前記ウェーブレット変換手段は、前記画像データのピクチャ内の連続する複数のラインからなるプレシンクト毎に前記ウェーブレット変換処理を行う
請求項７に記載の情報処理装置。
【請求項９】
情報処理装置の符号化手段が、他の情報処理装置に伝送する画像データを符号化し、
前記情報処理装置の制御手段が、前記画像データが符号化されて生成されたコードストリームのデータ量が、前記コードストリームを不具合なく伝送可能なビットレートの上限値である許容レートを超えるか否かに基づいて前記コードストリームの実データの送信の可否を制御し、
前記情報処理装置のパケット化手段が、前記制御に基づいて、前記コードストリームのデータ量が前記許容レートを超えない場合、前記コードストリームをパケット化し、前記コードストリームのデータ量が前記許容レートを超える場合、前記コードストリームのヘッダのみをパケット化し、
前記情報処理装置の送信手段が、前記コードストリームから生成されたパケットを前記他の情報処理装置に送信する
情報処理方法。
【請求項１０】
他の情報処理装置から伝送されるコードストリームを受信する受信手段と、
前記受信手段により受信された前記コードストリームのヘッダを解析する解析手段と、
前記解析手段による解析の結果、前記コードストリームにデータの欠損が発生しているか否かを判定する欠損判定手段と、
前記欠損判定手段により前記データの欠損が発生していると判定された場合、前記ヘッダに含まれる情報に基づいて、欠損したデータを補完する補完手段と、
前記補完手段により欠損したデータが補完された前記コードストリーム、または、前記欠損判定手段により前記データの欠損が発生していないと判定された前記コードストリームを復号する復号手段と
を備える情報処理装置。
【請求項１１】
前記補完手段は、前記ヘッダに含まれる量子化パラメータの重みづけに基づいて選択されたデータを用いて前記欠損したデータを補完する
請求項１０に記載の情報処理装置。
【請求項１２】
前記データの欠損状況を前記他の情報処理装置に通知するためのフィードバック情報を前記他の情報処理装置に送信する送信手段とをさらに備える
請求項１０に記載の情報処理装置。
【請求項１３】
前記解析手段による解析の結果、前記ヘッダに、前記他の情報処理装置が付加したフラグ情報が存在するか否かを判定するフラグ情報判定手段と、
前記欠損判定手段により前記データの欠損が発生していると判定され、かつ、前記フラグ情報判定手段により前記フラグ情報が存在しないと判定された場合のみ、前記フィードバック情報を生成する生成手段と
をさらに備える請求項１２に記載の情報処理装置。
【請求項１４】
情報処理装置の受信手段は、他の情報処理装置から伝送されるコードストリームを受信し、
前記情報処理装置の解析手段は、受信された前記コードストリームのヘッダを解析し、
前記情報処理装置の欠損判定手段は、解析の結果、前記コードストリームにデータの欠損が発生しているか否かを判定し、
前記情報処理装置の補完手段は、前記データの欠損が発生していると判定された場合、前記ヘッダに含まれる情報に基づいて、欠損したデータを補完し、
前記情報処理装置の復号手段は、欠損したデータが補完された前記コードストリーム、または、データの欠損が発生していないと判定された前記コードストリームを復号する
情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および方法に関し、特に、画像データ伝送による画質の劣化を抑制することができるようにした情報処理装置および方法に関する。
【背景技術】
【０００２】
従来、画像データの符号化方法として、様々な方法が提案されている。例えば、動画像の複数のフレームを処理単位とし、そのフレーム間での相関や、動き補償を使用して圧縮を行うMPEG-2（Moving Picture Experts Group-2）やAVC（Advanced Video Coding）といった技術や、１フレーム単位で処理を行い、フレーム間での相関を使用しないMotion JPEG（Joint Photographic Experts Group）やJPEG2000などがある。
【０００３】
これらはそれぞれ一般に、前者は高圧縮だが遅延が長い、後者は遅延が短いが圧縮率は比較的低いといった特徴を持っている。また、これらの主な画像符号化方式にはVBR（Variable Bit Rate）であるものが多い。
【０００４】
さらに、動画像の各ピクチャの数ライン毎を１つの圧縮符号化ブロックとしてウェーブレット変換による圧縮符号化を行う方式が提案された（例えば、特許文献１参照）。この方式の場合、符号化装置は、ピクチャ内のデータ全てが入力される前に圧縮符号化を開始することができる。また、圧縮データをネットワーク経由で伝送し、受信側でその圧縮データを復号する場合、復号装置は、ピクチャ内の全てのデータを受信する前に復号処理を開始することができる。したがって、ネットワーク伝播遅延が十分小さければ、フレーム間隔以下の遅延でのリアルタイム動画像伝送が可能となる。
【０００５】
一般的に、画像データは、伝送路の負荷を軽減させるために、これらの技術を用いて符号化されて圧縮された状態で伝送される。このとき伝送路の帯域幅は有限であり、伝送可能なレートの上限が存在する。従って、通常の場合、符号化の目標ビットレートは、伝送路の伝送レートの上限値以下に設定される。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−３１１９２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、例えばシーンチェンジ等によって画像が急に複雑になる場合、符号化の難易度も急に上り、画像データが符号化されて生成されるコードストリームのデータ量が、一時的に増大し、目標ビットレートを超えてしまう場合がある。また、例えば、特許文献１に記載の方法においても、ピクチャ全体では目標ビットレートに従ってレート制御が行われるが、ピクチャ内でも位置によって画像の複雑さなどが異なることがある。そのため、ピクチャ単位よりも小さな符号化処理単位においてビットレートは可変となるので、一時的に目標ビットレートを超えてしまう場合がある。
【０００８】
このような場合に、目標ビットレートを上回るビットレートのコードストリームをそのまま伝送するようにすると、伝送路において発生するパケットロス等に対処するための、パケットの再送やエラー訂正のために必要となる帯域を消費してしまうことになり、それらの機能に支障をきたし、結果として動画像の再生画質が低下してしまう恐れがあった。
【０００９】
また、例えば、画像データを伝送しながら、受信側でその画像を再生するような場合、決められた再生タイミングまでに再生フレームを用意する（再生するフレームの伝送を完了させ、所定の処理を行い、再生可能な状態とする）必要があるが、コードストリームのビットレートが伝送路の伝送レートの上限値を超えると伝送遅延が増大するのでデータ伝送が画像再生に間に合わなくなり、また、その影響は後続のフレームにも伝播するので、結果として動画像の再生画質が低下してしまう恐れがあった。
【００１０】
本発明は、このような状況に鑑みて提案されたものであり、画像データ伝送による画質の劣化を抑制することができるようにするものである。
【課題を解決するための手段】
【００１１】
本発明の一側面は、他の情報処理装置に伝送する画像データを符号化する符号化手段と、前記符号化手段により前記画像データが符号化されて生成されたコードストリームのデータ量が、前記コードストリームを不具合なく伝送可能なビットレートの上限値である許容レートを超えるか否かに基づいて前記コードストリームの実データの送信の可否を制御する制御手段と、前記制御手段の制御に基づいて、前記コードストリームのデータ量が前記許容レートを超えない場合、前記コードストリームをパケット化し、前記コードストリームのデータ量が前記許容レートを超える場合、前記コードストリームのヘッダのみをパケット化するパケット化手段と、前記パケット化手段により前記コードストリームから生成されたパケットを前記他の情報処理装置に送信する送信手段とを備える情報処理装置である。
【００１２】
前記制御手段は、前記コードストリームがバッファに保持される前に、前記コードストリームの実データの送信の可否を制御し、前記パケット化手段は、前記バッファに保持されている前記コードストリームを読み出してパケット化することができる。
【００１３】
前記制御手段は、前記バッファに保持されているコードストリームのデータ量を示すバッファ量を監視する監視手段と、前記監視手段により監視される現在の前記バッファ量と、前記画像データを前記他の情報処理装置に伝送する伝送路の伝送可能なビットレートの上限値とに基づいて、前記許容レートを設定する許容レート設定手段と、前記コードストリームのデータ量が、前記許容レート設定手段により設定された前記許容レートを超えるか否かを判定する判定手段と、前記コードストリームを前記バッファに供給して保持させる供給手段とを備えることができる。
【００１４】
前記制御手段は、前記判定手段により、前記コードストリームのデータ量が前記許容レートを超えると判定された場合、前記コードストリームのヘッダにフラグ情報を付加する付加手段をさらに備え、前記パケット化手段は、前記コードストリームの前記ヘッダに前記フラグ情報が付加されている場合、前記コードストリームの前記実データ部分を破棄し、前記ヘッダのみをパケット化することができる。
【００１５】
前記制御手段は、前記伝送路の伝送可能なビットレートの上限値から、前記符号化手段による符号化における符号量の目標値である目標レートを求める目標レート設定手段をさらに備え、前記許容レート設定手段は、前記監視手段により監視される現在の前記バッファ量と、前記目標レート設定手段により算出された前記目標レートとに基づいて、前記許容レートを設定することができる。
【００１６】
前記他の情報処理装置から送信される、受信側における前記コードストリームの欠損状況を示すフィードバック情報を取得する取得手段をさらに備え、前記目標レート設定手段は、前記取得手段により取得された前記フィードバック情報に基づいて、前記目標レートを求めることができる。
【００１７】
前記符号化手段は、前記画像データに対して、前記画像データの周波数成分を低域成分と高域成分とに分割する分析フィルタ処理を、低域成分に対して再帰的に所定回数繰り返すウェーブレット変換処理を行うウェーブレット変換手段と、前記分析フィルタ処理手段により、帯域毎に分割された前記周波数成分を量子化する量子化手段と、前記量子化手段により量子化された前記周波数成分をエントロピ符号化するエントロピ符号化手段とを備えることができる。
【００１８】
前記ウェーブレット変換手段は、前記画像データのピクチャ内の連続する複数のラインからなるプレシンクト毎に前記ウェーブレット変換処理を行うことができる。
【００１９】
本発明の一側面は、また、情報処理装置の符号化手段が、他の情報処理装置に伝送する画像データを符号化し、前記情報処理装置の制御手段が、前記画像データが符号化されて生成されたコードストリームのデータ量が、前記コードストリームを不具合なく伝送可能なビットレートの上限値である許容レートを超えるか否かに基づいて前記コードストリームの実データの送信の可否を制御し、前記情報処理装置のパケット化手段が、前記制御に基づいて、前記コードストリームのデータ量が前記許容レートを超えない場合、前記コードストリームをパケット化し、前記コードストリームのデータ量が前記許容レートを超える場合、前記コードストリームのヘッダのみをパケット化し、前記情報処理装置の送信手段が、前記コードストリームから生成されたパケットを前記他の情報処理装置に送信する情報処理方法である。
【００２０】
本発明の他の側面は、他の情報処理装置から伝送されるコードストリームを受信する受信手段と、前記受信手段により受信された前記コードストリームのヘッダを解析する解析手段と、前記解析手段による解析の結果、前記コードストリームにデータの欠損が発生しているか否かを判定する欠損判定手段と、前記欠損判定手段により前記データの欠損が発生していると判定された場合、前記ヘッダに含まれる情報に基づいて、欠損したデータを補完する補完手段と、前記補完手段により欠損したデータが補完された前記コードストリーム、または、前記欠損判定手段により前記データの欠損が発生していないと判定された前記コードストリームを復号する復号手段とを備える情報処理装置である。
【００２１】
前記補完手段は、前記ヘッダに含まれる量子化パラメータの重みづけに基づいて選択されたデータを用いて前記欠損したデータを補完することができる。
【００２２】
前記データの欠損状況を前記他の情報処理装置に通知するためのフィードバック情報を前記他の情報処理装置に送信する送信手段とをさらに備えることができる。
【００２３】
前記解析手段による解析の結果、前記ヘッダに、前記他の情報処理装置が付加したフラグ情報が存在するか否かを判定するフラグ情報判定手段と、前記欠損判定手段により前記データの欠損が発生していると判定され、かつ、前記フラグ情報判定手段により前記フラグ情報が存在しないと判定された場合のみ、前記フィードバック情報を生成する生成手段とをさらに備えることができる。
【００２４】
本発明の他の側面は、また、情報処理装置の受信手段が、他の情報処理装置から伝送されるコードストリームを受信し、前記情報処理装置の解析手段が、受信された前記コードストリームのヘッダを解析し、前記情報処理装置の欠損判定手段が、解析の結果、前記コードストリームにデータの欠損が発生しているか否かを判定し、前記情報処理装置の補完手段が、前記データの欠損が発生していると判定された場合、前記ヘッダに含まれる情報に基づいて、欠損したデータを補完し、前記情報処理装置の復号手段が、欠損したデータが補完された前記コードストリーム、または、データの欠損が発生していないと判定された前記コードストリームを復号する情報処理方法である。
【００２５】
本発明の一側面においては、他の情報処理装置に伝送する画像データが符号化され、画像データが符号化されて生成されたコードストリームのデータ量が、コードストリームを不具合なく伝送可能なビットレートの上限値である許容レートを超えるか否かに基づいてコードストリームの実データの送信の可否が制御され、制御に基づいて、コードストリームのデータ量が許容レートを超えない場合、コードストリームがパケット化され、コードストリームのデータ量が許容レートを超える場合、コードストリームのヘッダのみがパケット化され、コードストリームから生成されたパケットが他の情報処理装置に送信される。
【００２６】
本発明の他の側面においては、他の情報処理装置から伝送されるコードストリームが受信され、受信されたコードストリームのヘッダが解析され、解析の結果、コードストリームにデータの欠損が発生しているか否かが判定され、データの欠損が発生していると判定された場合、ヘッダに含まれる情報に基づいて、欠損したデータが補完され、欠損したデータが補完されたコードストリーム、または、データの欠損が発生していないと判定されたコードストリームが復号される。
【発明の効果】
【００２７】
本発明によれば、情報を処理することができる。特に、画像データ伝送による画質の劣化を抑制することができる。
【図面の簡単な説明】
【００２８】
【図１】本発明を適用した通信システムの主な構成例を示すブロック図である。
【図２】図１の符号化部の主な構成例を示すブロック図である。
【図３】ウェーブレット変換を説明する図である。
【図４】サブバンドを説明する図である。
【図５】ラインベースウェーブレット変換を説明する図である。
【図６】図１の送信装置の制御部の主な構成例を示すブロック図である。
【図７】図１のパケタイズ処理部の主な構成例を示すブロック図である。
【図８】図１の受信装置の制御部の主な構成例を示すブロック図である。
【図９】図１の復号部の主な構成例を示すブロック図である。
【図１０】ラインベースウェーブレット逆変換を説明する図である。
【図１１】送信処理の流れの例を説明するフローチャートである。
【図１２】符号化処理の流れの例を説明するフローチャートである。
【図１３】データ制御処理の流れの例を説明するフローチャートである。
【図１４】パケタイズ処理の流れの例を説明するフローチャートである。
【図１５】レート制御処理の流れの例を説明するフローチャートである。
【図１６】受信処理の流れの例を説明するフローチャートである。
【図１７】受信制御処理の流れの例を説明するフローチャートである。
【図１８】復号処理の流れの例を説明するフローチャートである。
【図１９】本発明を適用したパーソナルコンピュータの主な構成例を示すブロック図である。
【発明を実施するための形態】
【００２９】
以下、発明を実施するための形態（以下実施の形態とする）について 説明する。なお、説明は以下の順序で行う。
１．第１の実施の形態（通信システム）
【００３０】
＜１．第１の実施の形態＞
［通信システムの構成］
図１は、本発明を適用した通信システムの主な構成例を示すブロック図である。
【００３１】
図１に示される通信システムは、伝送路を介して接続された送信装置１０１および受信装置１０２よりなり、送信装置１０１が画像データを、伝送路を介して受信装置１０２に伝送させるシステムである。
【００３２】
送信装置１０１は、入力された画像データを符号化し、符号化データを、伝送路を介して受信装置１０２に送信する。送信装置１０１は、入力インタフェース（Ｉ／Ｆ）１１１、符号化部１１２、制御部１１３、送信バッファ１１４、パケタイズ処理部１１５、および伝送インタフェース（Ｉ／Ｆ）１１６を有する。
【００３３】
入力インタフェース１１１は、矢印１３１に示されるように、外部より送信装置１０１に入力される画像データを受け付け、それを、矢印１３２に示されるように、符号化部１１２に供給する。
【００３４】
符号化部１１２は、入力された画像データを所定のデータ単位（例えば数ライン）毎に符号化し、得られたコードストリームを、矢印１３３に示されるように、制御部１１３に供給する。また、符号化部１１２は、制御部１１３より供給されるレート制御情報により指定される目標レートに従って、符号化のレート制御を行う。
【００３５】
制御部１１３は、符号化部１１２により生成されたコードストリームの実データ部分の送信の可否を制御する。
【００３６】
具体的には、例えば、制御部１１３は、受信装置１０２より供給されるフィードバック信号に基づいて符号化部１１２による符号化処理の目標レートを定め、矢印１５４に示されるように、それをレート制御情報として符号化部１１２に供給する。
【００３７】
また、制御部１１３は、両矢印１５５に示されるように、送信バッファ１１４を監視し、送信バッファ１１４に保持されているコードストリームのデータ量（バッファ量）を示すバッファ量情報を取得する。そして、制御部１１３は、レート制御情報とバッファ量情報とに基づいて、送信バッファ１１４が保持可能なデータ量を示す許容レートを設定する。
【００３８】
さらに制御部１１３は、許容レートを超えるコードストリームを送信させないように制御しながら、符号化部１１２より供給されるコードストリームを、矢印１３４に示されるように、送信バッファ１１４に供給する。
【００３９】
送信バッファ１１４は、制御部１１３より供給されるコードストリームを一時的に保持し、パケタイズ処理部１１５の要求に基づく等して、矢印１３５に示されるように、保持しているコードストリームを所定のタイミングでパケタイズ処理部１１５に供給する。
【００４０】
また、送信バッファ１１４は、両矢印１５５に示されるように、制御部１１３からの要求に応じてバッファ量情報を制御部１１３に通知する。
【００４１】
パケタイズ処理部１１５は、送信バッファ１１４からコードストリームを読み出してパケット化し、矢印１３６に示されるように、そのパケットを伝送インタフェース１１６に供給する。このときパケタイズ処理部１１５は、コードストリームの許容レートを超えるとされた部分については、ヘッダのみをパケット化し、実データの部分を破棄する。
【００４２】
伝送インタフェース１１６は、パケタイズ処理部１１５より供給されるパケットを、矢印１３７に示されるように伝送路を介して受信装置１０２に送信する。
【００４３】
この伝送路は任意であり、PCIバス（Peripheral Components Interconnect bus）等の装置内の伝送路であってもよい。また、IEEE（Institute of Electrical and Electronic Engineers）1394ケーブルやUSB（Universal Serial Bus）ケーブル等の所定の規格のケーブルであってもよい。さらに、LAN（Local Area Network）やインターネット等のネットワークであってもよい。また、これら以外のものであってもよい。もちろん、画像データを伝送する通信は、有線通信に限らず無線通信であってもよい。無線通信の場合、伝送路は空間となる。さらに、複数種類の伝送路を組み合わせても良い。
【００４４】
伝送インタフェース１１６は、また、受信装置１０２から送信されるフィードバック情報を、伝送路を介して受信する。伝送インタフェース１１６は、受信したフィードバック情報を、矢印１５３に示されるように、制御部１１３に供給する。もちろん、このフィードバック情報はパケット化されていてもよく、その場合、デパケタイズする必要があるが、そのデパケタイズの方法は任意であるので、その説明は省略する。
【００４５】
受信装置１０２は、送信装置１０１より供給されるコードストリームを復号し、得られた画像データを出力する。受信装置１０２は、伝送インタフェース（Ｉ／Ｆ）１２１、デパケタイズ処理部１２２、受信バッファ１２３、制御部１２４、復号部１２５、および出力インタフェース（Ｉ／Ｆ）１２６を有する。
【００４６】
伝送インタフェース１２１は、送信装置１０１から伝送路を介して送信されるコードストリームのパケットを受信する。伝送インタフェース１２１は、矢印１３８に示されるように、受信したパケットをデパケタイズ処理部１２２に供給する。
【００４７】
また、伝送インタフェース１２１は、制御部１２４より供給されるフィードバック情報を、矢印１５２に示されるように伝送路を介して送信装置１０１に送信する。このとき、フィードバック情報をパケット化して送信するようにしてもよい。そのパケタイズの方法は任意であるので、その説明は省略する。
【００４８】
デパケタイズ処理部１２２は、伝送インタフェース１２１から供給されたパケットをデパケタイズし、送信装置１０１において生成されたコードストリームを抽出する。デパケタイズ処理部１２２は、矢印１３９に示されるように、抽出したコードストリームを受信バッファ１２３に供給し、保持させる。
【００４９】
受信バッファ１２３は、デパケタイズ処理部１２２より供給されるコードストリームを一時的に保持し、制御部１２４の要求に基づく等して、矢印１４０に示されるように、保持しているコードストリームを所定のタイミングで制御部１２４に供給する。
【００５０】
制御部１２４は、受信バッファ１２３に保持されているコードストリームを読み出し、矢印１４１に示されるように復号部１２５に供給する。このとき、制御部１２４は、コードストリームの欠損を検出し、必要に応じて欠損したコードストリームの補完を行う。
【００５１】
また、制御部１２４は、必要に応じて、コードストリームの欠損状況を通知するフィードバック情報を生成し、矢印１５１に示されるように、伝送インタフェース１２１に供給する。このフィードバック情報は、送信装置１０１が目標レートを制御したり、許容レートを算出したりするための情報であり、伝送インタフェース１２１を介して送信装置１０１に送信される。
【００５２】
復号部１２５は、制御部１２４から供給されるコードストリームを、符号化部１１２の符号化に対応する方法で復号し、ベースバンドの画像データを生成する。復号部１２５は、矢印１４２に示されるように、得られたベースバンドの画像データを出力インタフェース１２６に供給する。
【００５３】
出力インタフェース１２６は、矢印１４３に示されるように、復号部１２５より供給されるベースバンドの画像データを、受信装置１０２の外部に出力する。
【００５４】
以上のような通信システム１００において、送信装置１０１は、コードストリームのビットレートが伝送可能なレートの上限値を超える場合、そのデータ部分は送信せずにヘッダ部分のみを送信する。
【００５５】
これにより、送信装置１０１は、伝送路の帯域を不要に消費することを抑制することができる。つまり、送信装置１０１は、伝送路において発生するパケットロス等に対処するための、パケットの再送やエラー訂正のために必要となる帯域を消費してしまうことを抑制することができるので、結果として動画像の再生画質の低下を抑制することができる。
【００５６】
また、通信システム１００が、画像データを伝送しながら、その画像を再生するような場合であっても、送信装置１０１は、以上のように処理を行うことにより、伝送量の増大を抑制することができるので、伝送遅延の増大を抑制することができる。つまり、送信装置１０１は、データ伝送を画像再生に間に合わせることができる。これにより、後続のデータ伝送への影響も抑制されるので、送信装置１０１は、結果として動画像の再生画質の低下を抑制することができる。
【００５７】
すなわち、通信システム１００は、画像データ伝送による画質の劣化を抑制することができる。
【００５８】
なお、受信装置１０２は、単に受信できた画像データを再生するだけでなく、欠損したコードストリームの補完も行う。これに対して、送信装置１０１は、コードストリームのビットレートが伝送可能なレートの上限値を超える場合も、ヘッダ部分を受信装置１０２に送信する。したがって、受信装置１０２は、送信装置１０１が送信しなかった部分については、そのヘッダを参照することができる。
【００５９】
つまり、受信装置１０２は、データ補完の際に、ヘッダに含まれる符号化時の情報を参照することができ、より適切にデータ補完を行うことができる。したがって、受信装置１０２は、欠損した元の画像により近い画像で補完を行うことができる。これにより、送信装置１０１が単純にコードストリームを送信しない（ヘッダもデータも送信しない）場合よりも、再生画質の向上が期待される。すなわち、通信システム１００は、画像データ伝送による画質の劣化を抑制することができる。
【００６０】
なお、送信装置１０１がヘッダを送信することにより、欠損したコードストリームについて、受信装置１０２は、そのヘッダの有無により、送信装置１０１が送信しなかった部分と、伝送中のパケットロスにより欠損した部分とを区別することができる。
【００６１】
上述したように、受信装置１０２は、受信結果（コードストリームの損失状況）を送信装置１０１に報告（フィードバック）する。送信装置１０１は、そのフィードバック情報に基づいて符号化の目標レートを制御する。また、送信装置１０１は、その目標レートとバッファ量とに基づいて送信制御を行う。
【００６２】
つまり、送信装置１０１は、実際には伝送帯域に余裕があっても、再生速度に間に合わないという理由から、コードストリームを送信しないことが考えられる。このような場合、その部分だけデータを破棄すればよく、次の符号化の目標レートを低減させる必要はない。
【００６３】
ところが、欠損したコードストリームについてその理由を全く判断できないと、受信装置１０２は、コードストリームの全ての欠損を送信装置１０１に対して報告してしまうことになる。つまり、送信装置１０１がコードストリームを送信しなかった場合も、受信装置１０２は、伝送時の欠損の場合と同様に、送信装置１０１に報告する。受信装置１０２から欠損が報告されると、送信装置１０１は、その分、符号化の目標レートを下げてしまう。つまり、不要に再生画質を劣化させてしまう恐れがある。
【００６４】
しかしながら上述したように、受信装置１０２は、送信装置１０１が送信するヘッダの有無により、送信装置１０１が送信しなかった部分と、伝送中のパケットロスにより欠損した部分とを区別することができる。したがって、受信装置１０２は、送信装置１０１が送信しなかった部分については、報告を止め、伝送中のパケットロスにより欠損した部分についてのみ送信装置１０１に報告する。このようにすることにより、受信装置１０２は、送信装置１０１に、符号化の目標レートを不要に低減させることを抑制させることができ、結果として動画像の再生画質の低下を抑制することができる。
【００６５】
すなわち、通信システム１００は、画像データ伝送による画質の劣化を抑制することができる。
【００６６】
以下に各部の詳細について説明する。
【００６７】
［符号化部の説明］
図２は、図１の符号化部の主な構成例を示すブロック図である。図２に示されるように、符号化部１１２は、ウェーブレット変換部２０１、量子化部２０２、およびエントロピ符号化部２０３を有する。
【００６８】
ウェーブレット変換部２０１は、矢印１３１に示されるように入力インタフェース１１１より供給される処理対象のプレシンクト（現画像）の画像データをウェーブレット変換する。
【００６９】
プレシンクトはウェーブレット変換処理の処理単位であり、ピクチャ内の連続する複数のラインからなる（ラインブロックまたはスライスとも称する）。ウェーブレット変換により得られる最終分割レベルの係数を少なくとも１ライン生成するために必要なベースバンドの画像データ（複数ライン分の画像データ）、または、各階層（各サブバンド）の係数をまとめてプレシンクト（またはラインブロック）と称する。
【００７０】
ウェーブレット変換は、入力データを低域成分と高域成分に分割する分析フィルタ処理を画面水平方向および画面垂直方向の両方に対して行う処理である。一般的に、離散ウェーブレット変換では、原画像は、各水平画素列に対する一次元ウェーブレット畳み込み(one-dimensional wavelet convolution)により、低周波数情報を含む副画像と高周波数情報を含む副画像との２つの副画像に分割される。さらに、各副画像は、それぞれ、各垂直画素行に対する同様のウェーブレット畳み込みにより、低周波数情報及び高周波数情報の２つの副画像に分割される。
【００７１】
図３は、分析フィルタ処理を説明する図である。図３の左側に示される１フレーム分のベースバンド信号２３１は、図３の右側に示される変換後信号２３２のように、４つのサブバンド即ち副画像（ＨＨ，ＨＬ，ＬＨ，ＬＬ）に分解される。ＬＬ副画像は、垂直及び水平双方の低域成分である。ＬＨ副画像は、水平方向に低域で垂直方向に高域な成分である。ＨＬ副画像は、水平方向に高域で垂直方向に低域な成分である。ＨＨ副画像は、垂直及び水平双方の高域成分である。各副画像は、原画像の１／４のサイズであり、原画像の１／４のデータ点数を含む。
【００７２】
このような分析フィルタ処理が、ＬＬ副画像に対して繰り返し行われる。例えば、図２において、原画像をウェーブレット変換して得られた第１分解レベルの副画像を、それぞれ、１ＨＨ，１ＨＬ，１ＬＨ、および１ＬＬ（図示せず）とする。このとき、１ＬＬ副画像に対してさらにウェーブレット変換が行われ、第２分解レベルの副画像である、２ＨＨ，２ＨＬ，２ＬＨ、および２ＬＬ（図示せず）に分割される。さらに、その２ＬＬ副画像に対してさらにウェーブレット変換がなされ、第３レベルの副画像である、３ＨＨ，３ＨＬ，３ＬＨ、および３ＬＬに分割される。このように、ウェーブレット変換が繰り返し行われ、変換後信号２３２においては、副画像が階層構造を形成する。
【００７３】
このように、ウェーブレット変換では、再帰的に低域成分の分析フィルタ処理を繰り返すことにより、空間周波数の低い帯域のデータをより小さな領域に追い込んでいき、効率的な圧縮符号化を可能とする。
【００７４】
ラインベースウェーブレット変換は、このようなウェーブレット変換を、符号化単位が画像全体ではなく、１ラインまたは複数ライン毎に行う処理である。
【００７５】
例えば、図４に示される変換後信号２３２のように、ベースバンドの画像の一部のラインがウェーブレット変換され、１ＬＬ−１（図示せず）、１ＬＨ−１、１ＨＬ−１、および１ＨＨ−１が生成される。さらに、その中の１ＬＬ−１がウェーブレット変換され、２ＬＬ−１、２ＬＨ−１、２ＨＬ−１、２ＨＨ−１が生成される。
【００７６】
以上のようにして画像の一部分が所定回数ウェーブレット変換されると、次の一部のラインが同様にウェーブレット変換され、１ＬＬ−２（図示せず）、１ＬＨ−２、１ＨＬ−２、および１ＨＨ−２が生成される。さらに、１ＬＬ−２がウェーブレット変換され、２ＬＬ−２、２ＬＨ−２、２ＨＬ−２、２ＨＨ−２が生成される。
【００７７】
以上のように、所定数のライン毎にウェーブレット変換が行われる。ウェーブレット変換された画像データ（ウェーブレット係数データ）は、順次、符号化される。つまり、所定数のライン毎に符号化が行われる。このように、フレーム画像より小さい符号化単位で符号化を行うことにより、ラインベースウェーブレット変換は、符号化・復号による遅延時間を低減し、データ伝送の遅延時間の低減を実現する。
【００７８】
なお、分析フィルタ処理により得られる４つのサブバンドの各係数データのライン数は、処理前の係数データのライン数より少ない。例えば、Ｎラインの係数データに対して分析フィルタ処理を行うと、Ｎより少ないライン数（例えばＮ／２ライン）の４つのサブバンドが得られる。
【００７９】
したがって、例えば、図４の例において、１ＨＬ−１、１ＬＨ−１、および１ＨＨ−１の各ライン数は、２ＬＬ−１、２ＨＬ−１、２ＬＨ−１、および２ＨＨ−１の各ライン数より多い。同様に、１ＨＬ−２、１ＬＨ−２、および１ＨＨ−２の各ライン数は、２ＬＬ−２、２ＨＬ−２、２ＬＨ−２、および２ＨＨ−２の各ライン数より多い。
【００８０】
なお、互いに同一の分割レベルのサブバンド同士では、ライン数は互いに同一である。つまり、例えば、１ＨＬ−１、１ＬＨ−１、および１ＨＨ−１の各ライン数は互いに同一であり、２ＬＬ−１、２ＨＬ−１、２ＬＨ−１、および２ＨＨ−１の各ライン数も互いに同一である。
【００８１】
例えば、分析フィルタ処理により、１分割レベル下位の係数データが、１／２ライン数得られるとすると、図５Ａに示されるように、ベースバンド８ラインごとに縦方向のウェーブレット変換を分割レベル３まで行った場合、図５Ｂに示されるように、分割レベル３のサブバンド（３ＬＬ，３ＨＬ，３ＬＨ，３ＨＨ）が各１ライン生成される。このとき、分割レベル２のサブバンド（２ＨＬ，２ＬＨ，２ＨＨ）は、各２ライン生成され、分割レベル１のサブバンド（１ＨＬ，１ＬＨ，１ＨＨ）は各４ライン生成される。
【００８２】
上述したように、最低域の係数データを少なくとも１ライン生成するために必要なベースバンドの画素データの集合をプレシンクト（Precinct）（またはラインブロック）と称する。例えば、図５の場合、図５Ａに示される８ライン（斜線部分）が１プレシンクトとなる。なお、プレシンクトは、分析フィルタ後の全サブバンドの係数の集合（アラインユニットの集合）のことを示す場合もある。たとえば、図５の場合、図５Ｂに示される斜線部分全てを示す。この係数データの集合は、図５Ａに示されるベースバンドの画素データの集合（斜線部分）と実質的に同一である。
【００８３】
なお、１プレシンクトのライン数はピクチャ内において、各プレシンクトで互いに同一でなくてもよい。
【００８４】
図２に戻り、ウェーブレット変換部２０１は、以上のようなウェーブレット変換をプレシンクト毎に行う。ウェーブレット変換部２０１は、ウェーブレット変換により得られた各サブバンドの係数データを、矢印２１１に示されるように、量子化部２０２に供給する。
【００８５】
量子化部２０２は、ウェーブレット変換部２０１により生成される各成分の係数を、例えば量子化ステップサイズで除算することにより量子化し、量子化係数を生成する。この際、量子化部２０２は、プレシンクト毎に量子化ステップサイズを設定することができる。量子化部２０２は、制御部１１３から供給されるレート制御情報により指定される目標レートを達成するように、量子化ステップサイズを設定する。このプレシンクトは、ある画像領域のすべての周波数成分の係数を包含しているため、プレシンクト毎に量子化を行えば、ウェーブレット変換の特徴である多重解像度分析の利点を活かすことができる。また、全画面でプレシンクト数だけを決めればよいため、量子化の負荷も小さくて済む。
【００８６】
さらに、画像信号のエネルギは一般的に低域成分に集中しており、また、人間の視覚上、低域成分の劣化が目立ちやすいという特性があるため、量子化に際しては、低域成分のサブバンドでの量子化ステップサイズが結果的に小さな値になるように、重み付けを行うことが有効である。この重み付けにより、低域成分には相対的に多くの情報量が割り当てられるようになり、全体の主観的な画質が向上する。
【００８７】
量子化部２０２は、矢印２１２に示されるように、量子化された係数データをエントロピ符号化部２０３に供給する。
【００８８】
エントロピ符号化部２０３は、量子化部２０２で生成された量子化係数を情報源符号化し、圧縮された符号化コードストリームを生成する。情報源符号化としては、例えばハフマン符号化や、JPEG2000方式で用いられているさらに高精度な算術符号化を用いることができる。
【００８９】
ここで、エントロピ符号化をどの範囲の係数に対して行うかは、圧縮効率に直接関係する非常に重要な要素になる。例えば、JPEG方式では、８×８のブロックに対してDCT変換を施し、生成された６４個のDCT変換係数に対してハフマン符号化を行うことで、情報を圧縮している。すなわち、６４個のDCT変換係数がエントロピ符号化の範囲になる。
【００９０】
ウェーブレット変換部２０１では、８×８ブロックに対するDCT変換とは異なり、ライン単位でウェーブレット変換を施しているため、エントロピ符号化部２０３では、周波数帯域（サブバンド）毎に独立に、且つ各周波数帯域内をプレシンクト毎に情報源符号化する。エントロピ符号化部２０３は、矢印１３２に示されるように、得られたコードストリームを制御部１１３に供給する。
【００９１】
なお、ウェーブレット変換処理においては、各サブバンドの係数データが、高域成分から低域成分に向かう順に生成される。しかしながら、ウェーブレット逆変換処理においては、低域成分から高域成分に向かう順に、各サブバンドの係数データが処理される。したがって、ウェーブレット変換部２０１は、遅延時間を低減させるために、生成した係数データを並べ替え、低域成分の係数データから先に量子化部２０２に供給するようにしてもよい。
［制御部の説明］
図６は、図１の送信装置１０１の制御部１１３の主な構成例を示すブロック図である。図６に示されるように、制御部１１３は、バッファ量監視部２５１、許容レート設定部２５２、データ取得部２５３、レート判定部２５４、フラグ付加部２５５、およびデータ供給部２５６を有する。
【００９２】
バッファ量監視部２５１は、所定のタイミングにおいて、矢印１５５Ａに示されるように、送信バッファ１１４に対してリクエスト（要求）を送信し、矢印１５５Ｂに示されるように、送信バッファ１１４からそのリクエストに対する応答として供給されるバッファ量情報を取得する。矢印１５５Ａおよび矢印１５５Ｂは、図１の両矢印１５５を構成する。
【００９３】
バッファ量情報は、その時点において、送信バッファ１１４に保持されているコードストリームのデータ量を示す情報である。このようなバッファ量情報の取得は、どのようなタイミングで行われるようにしてもよい。例えば定期的に行われるようにしてもよいし、不定期に行われるようにしてもよい。一般的に、符号化部１１２においてプレシンクトが処理される度に最新の情報が得られる程度の頻度で行われるのが望ましい。ただし、バッファ量情報取得の頻度が増大すると、負荷が増大する恐れがあるので、不要に頻度を増大させるのは好ましくない。
【００９４】
バッファ量監視部２５１は、矢印２６１に示されるように、取得したバッファ量情報を許容レート設定部２５２に供給する。
【００９５】
許容レート設定部２５２は、レート制御部２５８から供給されるレート制御情報と、バッファ量監視部２５１から供給されるバッファ量情報とに基づいて、許容レートを設定する。
【００９６】
許容レートは、コードストリームの、不具合なく伝送可能なビットレートの上限値を示す。上述したように伝送路の伝送可能なビットレート（伝送レート）には上限がある。したがって、コードストリームのビットレートはその伝送レート以下でなければならない。ただし、バッファされているコードストリームを先に転送しなければならないので、バッファ量が多いほど、遅延時間は増大する。したがって、伝送速度が再生速度に遅れないようにするために（遅延時間を低減させるために）、コードストリームのビットレートは、バッファ量が多いほど低減させなければならない。
【００９７】
このように、パケット再送やエラー訂正等の性能を低下させず、かつ、再生処理や復号処理等の受信側の処理に間に合うように（不具合なく）伝送可能なコードストリームのビットレート（データ量）の上限値を許容レートと称する。
【００９８】
つまり、許容レートは、レート制御情報が示す符号化処理における符号量の目標値である目標レート（すなわち、伝送路の伝送可能なビットレートの上限値）と、バッファ量とに基づいて決定される。例えば、許容レート設定部２５２は、目標レートとバッファ量とから許容レートを求めるテーブル情報を予め保持しておくようにしてもよい。この場合、許容レート設定部２５２は、そのテーブル情報を参照することにより、入力された目標レートとバッファ量とに対応する許容レートを求めることができる。
【００９９】
また、例えば、許容レート設定部２５２が、目標レートとバッファ量とから許容レートを求める所定の関数を予め保持しておくようにしてもよい。この場合、許容レート設定部２５２は、入力された目標レートとバッファ量とを変数として、その関数から、許容レートを算出することができる。もちろん、これら以外の方法であっても良い。目標レートとバッファ量とに基づいて求めるのであれば許容レートの求め方は任意である。
【０１００】
許容レート設定部２５２は、このように設定した許容レートを、矢印２６３のように、データ取得部２５３を介してレート判定部２５４に供給する。
【０１０１】
データ取得部２５３は、矢印１３３に示されるように、符号化部１１２から供給されるコードストリームを取得する。データ取得部２５３は、矢印２６４に示されるように、符号化部１１２から取得したコードストリームを、許容レート設定部２５２から取得した許容レートとともに、レート判定部２５４に供給する。
【０１０２】
レート判定部２５４は、データ取得部２５３により取得されたコードストリームのデータ量と許容レートとを比較し、コードストリームのデータ量が許容レートを超えるか否かを判定する。ここで、コードストリームは、略定期的に取得されるので、コードストリームのデータ量はレートと等価である。
【０１０３】
レート判定部２５４は、矢印２６５に示されるように、その判定結果（比較結果）を、コードストリームとともにフラグ付加部２５５に供給する。
【０１０４】
フラグ付加部２５５は、レート判定部２５４により、コードストリームのデータ量が許容レートを超えていると判定された場合、そのコードストリームのヘッダに、転送禁止を指定するインコンプリートフラグを付加する。
【０１０５】
後述するように、このインコンプリートフラグは、パケタイズ処理部１１５において、コードストリームの実データ部分を送信するか否かの判定に利用される。パケタイズ処理部１１５は、コードストリームの、インコンプリートフラグが立っていない部分については、実データも受信装置１０２に送信し、インコンプリートフラグが立っている部分については、実データを破棄してヘッダのみを送信するように制御する。
【０１０６】
また、後述するように、このインコンプリートフラグは、受信装置１０２の制御部１２４においても参照される。制御部１２４は、インコンプリートフラグの有無に基づいて、データ損失の報告を行うか否かを制御する。
【０１０７】
なお、このインコンプリートフラグは、ヘッダのどの位置に付加してもよい。インコンプリートフラグの情報は、フラグが立っているか立っていないかを示すだけでよいので最低１ビット確保できればよい。
【０１０８】
このインコンプリートフラグの付加は、任意の間隔で行うことができる。例えば、プレシンクト毎に付加することもできるし、分割レベル毎に付加することもできるし、サブバンド毎に付加することもできる。換言すれば、レート判定部２５４が任意のタイミングで判定を行うことができる。
【０１０９】
例えば、レート判定部２５４がサブバンド毎に判定を行い、フラグ付加部２５５がサブバンド毎にインコンプリートフラグの付加作業（付加するかしないかの判定と、判定結果に応じて実際に付加する処理との両方）を行うようにしてもよい。また、例えば、レート判定部２５４がサブバンド毎に判定を行い、フラグ付加部２５５がプレシンクト毎にインコンプリートフラグの付加作業を行うようにしてもよい。
【０１１０】
つまりこの場合、プレシンクト内の全ての判定結果がプレシンクト単位のヘッダにまとめて付加される。したがって、パケタイズ処理部１１５や制御部１２４は、この部分を参照すれば、そのプレシンクト内の全サブバンドのインコンプリートフラグを確認することができる。ただし、インコンプリートフラグが１箇所に集中するため、パケットロスなどによる損失の危険性が高くなる。
【０１１１】
なお、レート判定をより細かい単位毎に頻繁に行う方が、コードストリームを送信するか否かの制御をより詳細に行うことができる。ただし、その場合、判定処理の負荷が増大するだけでなく、インコンプリートフラグのデータ量も増大する。また、受信装置１０２の制御部１２４における制御の負荷も増大する。したがって、レート判定は、必要に応じて適切な頻度で行うのが望ましい。
【０１１２】
フラグ付加部２５５は、レート判定結果に応じてヘッダにインコンプリートフラグを付加したコードストリームを、矢印２６６に示されるように、データ供給部２５６に供給する。
【０１１３】
データ供給部２５６は、フラグ付加部２５５より供給されたコードストリームを矢印１３４に示されるように送信バッファ１１４に供給し、保持させる。
【０１１４】
以上のように、制御部１１３が、送信バッファ１１４に保持される前の段階において、コードストリーム（の実データ部分）を送信するか否かを判定する。これに対して、とりあえず送信バッファ１１４にコードストリームを保持させ、出力する際に送信するか否かを判断する方法が考えられるが、その場合、送信直前になって、データの伝送量と再生タイミングまでの残り時間とを確認し、送信するか否かの判断を行わなければならず、その分遅延時間が増大してしまう。制御部１１３が送信するか否かを判定することにより、このような遅延時間の増大を抑制することができる。
【０１１５】
なお、ここでは送信バッファ１１４の記憶容量については考慮せず、基本的に無限であるものとして説明している。しかしながら、実際には、送信バッファ１１４の記憶容量は有限である。この記憶容量が十分に大きくない場合、その点についても考慮する必要がある。
【０１１６】
例えば、算出された許容レートが大きくても、送信バッファ１１４の空き容量がそれより少ない場合、その空き容量以上のコードストリームを送信バッファ１１４に保持させることはできない。このような場合、データ供給部２５６は、ヘッダのみを送信バッファ１１４に保持させ、実データの部分は破棄するようにしてもよい。
【０１１７】
また、例えば、データ供給部２５６が、インコンプリートフラグが立てられた部分については全て、実データを破棄し、ヘッダのみ送信バッファ１１４に保持させるようにしてもよい。
【０１１８】
これらの場合、送信バッファ１１４に保持されるデータ量の削減が期待される。したがって送信バッファ１１４として必要な記憶容量が低減されるので、コストを低減させることができる。ただし、この場合、部分的にヘッダのみが送信バッファ１１４に保持されるようになるので、送信バッファ１１４に保持されるデータの構造が複雑になる恐れがある。したがって、パケタイズ処理部１１５による読み出し処理が複雑になり、負荷が増大して遅延時間が増大する恐れがある。
【０１１９】
なお、後者のように、データ供給部２５６が、コードストリームの送信しない部分については全て、実データを破棄し、ヘッダのみ送信バッファ１１４に保持させる場合、パケタイズ処理部１１５は、その実データの有無によって送信するか否かを判定することができるので、インコンプリートフラグが不要になる。また、受信装置１０２の制御部１２４においても、実データの有無によって、送信装置１０１が送信しなかったのか、伝送途中でロスしたのかを識別することができる。しかしながら、一般的に、ヘッダを確認し、実データの有無を確認するよりも、ヘッダ内部の所定の位置に付加されるインコンプリートフラグの存在を確認する方が容易かつ正確である。処理が容易であることは、負荷の軽減に繋がり、遅延時間増大の抑制を実現する。
【０１２０】
以上のように、送信装置１０１は、インコンプリートフラグを用いることにより、容易に、コードストリームを送信するか否かを制御することができ、結果として動画像の再生画質の低下を抑制することができる。
【０１２１】
すなわち、通信システム１００は、より容易に画像データ伝送による画質の劣化を抑制することができる。
【０１２２】
なお、制御部１１３は、さらに、フィードバック情報取得部２５７およびレート制御部２５８を有する。
【０１２３】
フィードバック情報取得部２５７は、伝送インタフェース１１６を介して受信装置１０２より供給されるフィードバック情報を取得する。フィードバック情報取得部２５７は、取得したフィードバック情報を、矢印２６７に示されるように、レート制御部２５８に供給する。
【０１２４】
このフィードバック情報には、伝送路において発生したパケットロス等によるコードストリームの損失が報告される。レート制御部２５８は、フィードバック情報取得部２５７より供給されたフィードバック情報に基づいて、符号化部１１２の符号化処理の目標レートを決定し、その目標レートを示すレート制御情報を、矢印１５４のように符号化部１１２に供給する。
【０１２５】
例えば、フィードバック情報に基づいて、コードストリームの欠損が多いと判定された場合、レート制御部２５８は、目標レートを低減させる。コードストリームの欠損が少ないまたは全くない場合、レート制御部２５８は、目標レートを上昇させる。具体的に、どの程度のコードストリームの欠損に対して目標レートをどのように制御するかは任意である。例えばレート制御部２５８が、所定の関数や変換テーブルを予め用意し、それらを用いて制御を行うようにしても良い。
【０１２６】
また、レート制御部２５８は、このレート制御情報を、矢印２６２に示されるように、許容レート設定部２５２にも供給する。
【０１２７】
［パケタイズ処理部の説明］
図７は、図１のパケタイズ処理部の主な構成例を示すブロック図である。図７に示されるように、パケタイズ処理部１１５は、データ取得部３０１、フラグ検出部３０２、データ破棄部３０３、パケット化部３０４、およびパケット出力部３０５を有する。
【０１２８】
データ取得部３０１は、矢印１３５に示されるように、所定のタイミングで送信バッファ１１４から所定量のコードストリームを取得する。例えば、データ取得部３０１は、コードストリームを、伝送レートに応じたタイミングでプレシンクト毎に取得する。データ取得部３０１は、取得したコードストリームを、矢印３１１に示されるように、フラグ検出部３０２に供給する。
【０１２９】
フラグ検出部３０２は、データ取得部３０１により取得されたコードストリームのヘッダを参照し、インコンプリートフラグの検出を行う。フラグ検出部３０２は、矢印３１２に示されるように、フラグ検出を行ったコードストリームをデータ破棄部３０３に供給するとともに、フラグ検出結果もデータ破棄部３０３に報告する。
【０１３０】
データ破棄部３０３は、フラグ検出部３０２においてインコンプリートフラグが検出された場合、コードストリームの、そのヘッダに対応する部分を破棄し、残りの部分を、矢印３１３に示されるようにパケット化部３０４に供給する。
【０１３１】
パケット化部３０４は、データ破棄部３０３より供給されたコードストリームをパケット化する。パケット化部３０４は、生成したパケットを、矢印３１４に示されるように、パケット出力部３０５に供給する。パケット出力部３０５は、供給されたパケットを、矢印１３６に示されるように、伝送インタフェース１１６に供給する。
【０１３２】
以上のように、送信装置１０１は、画像データを符号化し、そのコードストリームをパケット化して受信装置１０２に伝送する。
【０１３３】
［制御部の説明］
次に、受信装置１０２の処理部の詳細について説明する。
【０１３４】
図８は、図１の受信装置１０２の制御部１２４の主な構成例を示すブロック図である。図８に示されるように、制御部１２４は、データ取得部３５１、ヘッダ解析部３５２、フィードバック情報生成部３５３、補完処理部３５４、データ供給部３５５、フィードバック情報保持部３５６、およびフィードバック情報供給部３５７を有する。
【０１３５】
データ取得部３５１は、矢印１４０に示されるように、受信バッファ１２３に保持されているコードストリームを、所定のタイミングで所定のデータ量毎に取得する。例えば、データ取得部３５１は、復号部１２５の復号処理の処理速度に応じたレートとなるような時間間隔で、コードストリームをプレシンクト毎に読み出す。データ取得部３５１は、読み出したコードストリームを、矢印３６１に示されるように、ヘッダ解析部３５２に供給する。
【０１３６】
ヘッダ解析部３５２は、データ取得部３５１から供給されるコードストリームのヘッダを解析し、まず、データの欠損があるか否かを確認する。例えば、ヘッダ内の識別情報等に基づいて、前回処理したプレシンクトと連続しているか否か、および、今回のプレシンクト内部においてデータの欠損が存在するか否かを確認する。
【０１３７】
また、ヘッダ解析部３５２は、インコンプリートフラグが立っているか否かを確認する。このインコンプリートフラグの確認は、データの欠損が確認された後に行うようにしてもよいし、データの欠損の確認の前に行うようにしてもよい。
【０１３８】
データの欠損が確認され、かつ、インコンプリートフラグが立っていないと判定された場合、ヘッダ解析部３５２は、そのデータの欠損が、パケットロス等の伝送中に発生したものであるとする。そして、ヘッダ解析部３５２は、矢印３６２に示されるように、コードストリームをフィードバック情報生成部３５３に供給するとともに、データ欠損の発生をフィードバック情報生成部３５３に通知する。
【０１３９】
また、データの欠損が確認され、かつ、インコンプリートフラグが立っていると判定された場合、ヘッダ解析部３５２は、そのデータの欠損が、送信装置１０１がコードストリームを送信しなかったことによるものとする。そして、ヘッダ解析部３５２は、矢印３６３に示されるように、コードストリームを補完処理部３５４に供給する。つまり、この場合、データの欠損をフィードバック情報に反映させない。つまり、このデータの欠損は、送信装置１０１に報告されない。したがって、送信装置１０１は、このデータの欠損を基に符号化処理の目標レートを低減させない。
【０１４０】
このように、ヘッダ解析部３５２が、インコンプリートフラグを検出したときに、データの欠損をフィードバック情報に反映させないようにすることにより、受信装置１０２は、符号化の目標レートを不要に低減させることを抑制することができる。つまり、受信装置１０２は、結果として動画像の再生画質の低下を抑制することができる。すなわち、通信システム１００は、画像データ伝送による画質の劣化を抑制することができる。
【０１４１】
さらに、データの欠損が確認されなかった場合（当然、インコンプリートフラグが立っていない場合）、ヘッダ解析部３５２は、データ補完を行う必要がないので、矢印３６４に示されるように、コードストリームをデータ供給部３５５に供給する。
【０１４２】
フィードバック情報生成部３５３は、ヘッダ解析部３５２よりデータの欠損を通知されると、その旨をフィードバック情報に反映させる。例えば、フィードバック情報生成部３５３は、どの部分のデータがどのくらいの量欠損したかを、フィードバック情報に記述する。
【０１４３】
フィードバック情報生成部３５３は、矢印３６７に示されるように、生成したフィードバック情報をフィードバック情報保持部３５６に供給する。このフィードバック情報の供給タイミングは任意であり、プレシンクト毎にフィードバック情報保持部３５６に供給するようにしてもよいし、複数のプレシンクトのフィードバック情報をまとめてフィードバック情報保持部３５６に供給するようにしてもよい。
【０１４４】
また、フィードバック情報生成部３５３は、ヘッダ解析部３５２より供給されたコードストリームを、矢印３６５に示されるように、補完処理部３５４に供給する。
【０１４５】
補完処理部３５４は、ヘッダ解析部３５２またはフィードバック情報生成部３５３から供給された、データの欠損を含むコードストリームに対して、例えば予め用意されたダミーデータや周辺のコードストリームを用いて、その欠損した部分の補完を行う。
【０１４６】
このとき、補完処理部３５４は、欠損した部分のヘッダがコードストリームに含まれる場合、そのヘッダに含まれる情報を参照し、その情報に基づいて補完処理を行う。例えば、上述したように送信装置１０１が実データ部分を送信しなかった場合、コードストリームにはヘッダのみが含まれる。このヘッダには例えば量子化部２０２において行われた量子化処理の量子化パラメータが含まれている。補完処理部３５４は、その量子化パラメータの重み付けに応じて、補完するデータの選択等を行う。これにより、補完処理部３５４は、より元の画像に近い適切なデータを用いて補完処理を行うことができる。つまり、受信装置１０２は、結果として動画像の再生画質の低下を抑制することができる。すなわち、通信システム１００は、画像データ伝送による画質の劣化を抑制することができる。もちろん、補完処理部３５４がヘッダに含まれるその他の情報を参考に補完処理を行うようにしてもよい。
【０１４７】
補完処理部３５４は、矢印３６６に示されるように、データの欠損を補完したコードストリームをデータ供給部３５５に供給する。データ供給部３５５は、補完処理部３５４またはヘッダ解析部３５２より供給された、データの欠損を含まないコードストリームを、矢印１４１に示されるように、復号部１２５に供給する。
【０１４８】
［復号部の説明］
図９は、図１の復号部の主な構成例を示すブロック図である。図９に示されるように、復号部１２５は、エントロピ復号部４０１、逆量子化部４０２、およびウェーブレット逆変換部４０３を有する。
【０１４９】
エントロピ復号部４０１は、矢印１４１に示されるように制御部１２４から供給されたコードストリームを情報源復号し、量子化係数データを生成する。情報源復号としては、エントロピ符号化部２０３の情報源符号化に対応して、ハフマン復号や、高効率な算術復号などを用いることができる。なお、エントロピ符号化部２０３においてＰラインごとに情報源符号化されている場合、エントロピ復号部４０１においても同様に、各サブバンドが独立に、かつ各サブバンド内がＰライン毎に情報源復号される。エントロピ復号部４０１は、得られた量子化係数データを、矢印４１１に示されるように、逆量子化部４０２に供給する。
【０１５０】
逆量子化部４０２は、エントロピ復号部４０１から供給された量子化係数データに量子化ステップサイズを乗算することにより逆量子化し、係数データを生成する。この量子化ステップサイズは、通常、コードストリームのヘッダなどに量子化パラメータ等として記述されている。なお、量子化部２０２において、プレシンクト毎に量子化ステップサイズが設定されている場合には、逆量子化部４０２においても同様に、プレシンクト毎に逆量子化ステップサイズが設定されて、逆量子化される。逆量子化部４０２は、逆量子化により得られたウェーブレット係数データを、矢印２１２に示されるように、ウェーブレット逆変換部４０３に供給する。
【０１５１】
ウェーブレット逆変換部４０３は、逆量子化部４０２から供給されたウェーブレット係数データに対して、ウェーブレット変換部２０１の逆処理を行う。つまり、ウェーブレット逆変換部４０３は、ウェーブレット変換部２０１により複数の周波数帯域に分割された係数データに対して、低域成分と高域成分を合成するフィルタ処理（合成フィルタ処理）を水平方向と垂直方向の両方に対して行う。
【０１５２】
つまり、合成フィルタ処理においては、分析フィルタ処理とは逆に、４つのサブバンド（ＬＬ，ＨＬ，ＬＨ，ＨＨ）の係数データが合成され、１つ上位の分解レベルの１つのサブバンドの係数データ（またはベースバンドの画像データ）が生成される。
【０１５３】
なお、このウェーブレット逆変換処理も、ウェーブレット変換の場合と同様に、ラインベースで行われる。つまり、ウェーブレット変換部２０１がプレシンクト単位でウェーブレット変換を行う場合、ウェーブレット逆変換部４０３もプレシンクト単位でウェーブレット逆変換を行う。
【０１５４】
この合成フィルタ処理では、分析フィルタ処理の場合と同様に、合成フィルタ処理により得られる１つのサブバンドの係数データ（またはベースバンドの画像データ）のライン数は、処理前の係数データのライン数より少ない。例えば、４つのサブバンドのＮラインの係数データに対して合成フィルタ処理を行うと、Ｎより少ないライン数（例えばＮ／２ライン）の１つのサブバンド（またはベースバンド）が得られる。
【０１５５】
例えば、合成フィルタ処理により、１分割レベル上位の係数データが、１／２ライン数得られるとすると、図１０Ａに示されるように、分割レベル３のサブバンド８ラインに対してウェーブレット逆変換を行った場合、図１０Ｂに示されるように、ベースバンドの画像データが１ライン生成される。このとき、図１０Ａに示されるように、分割レベル３のサブバンドの他に、分割レベル２のサブバンド（２ＨＬ，２ＬＨ，２ＨＨ）が各４ライン、分割レベル１のサブバンド（１ＨＬ，１ＬＨ，１ＨＨ）が各２ライン必要になる。
【０１５６】
合成フィルタ処理においては、例えば、図１０Ａに示される各サブバンドの斜線部分、または図１０Ｂに示される１ライン（斜線部分）が１プレシンクトとなる。
【０１５７】
ウェーブレット逆変換部４０３は、以上のようにラインベースでウェーブレット逆変換を行い、ベースバンドの画像データを生成する。そして、ウェーブレット逆変換部４０３は、得られたベースバンドの画像データを、矢印１４２に示されるように、出力インタフェース１２６に出力する。
【０１５８】
以上のように、通信システム１００は、画像データ伝送による画質の劣化を抑制することができる。
【０１５９】
なお、以上においては、インコンプリートフラグをコードストリームのヘッダに付加するように説明したが、インコンプリートフラグは、例えばパケットのヘッダに付加されて受信装置１０２に伝送されるようにしてもよい。
【０１６０】
ただし、その場合、インコンプリートフラグが示すコードストリームの位置を特定するための情報が必要になる。また、受信装置１０２において、その情報を解析し、該当するコードストリームの位置を特定しなければならず、煩雑な処理が必要になる。
【０１６１】
［送信装置の処理の流れ］
次に、以上のような通信システム１００において実行される各種処理の流れについて説明する。
【０１６２】
最初に送信装置１０１により実行される送信処理の流れの例を図１１のフローチャートを参照して説明する。
【０１６３】
送信処理が開始されると、ステップＳ１０１において、符号化部１１２は、入力インタフェース１１１により取得された１プレシンクト分の画像データを符号化する。ステップＳ１０２において、制御部１１３は、ステップＳ１０１の処理により生成されたコードストリームに対して、送信するか否かを制御する送信制御を行う。より具体的には、制御部１１３は、目標レートとバッファ量から求めた許容レートに基づいて、コードストリームの送信可否判定を行い、インコンプリートフラグをヘッダに付加する等の処理を行う。
【０１６４】
ステップＳ１０３において、送信バッファ１１４は、コードストリームを一時的に保持する。ステップＳ１０４において、パケタイズ処理部１１５は、所定のタイミングにおいてコードストリームを送信バッファ１１４より読み出し、パケット化する。ステップＳ１０５において、伝送インタフェース１１６は、伝送路を介してパケットを受信装置１０２に送信する。
【０１６５】
また、ステップＳ１０６において、伝送インタフェース１１６は、受信装置１０２より送信されたフィードバック情報を受信する。ステップＳ１０７において、制御部１１３は、ステップＳ１０６の処理により受信されたフィードバック情報に基づいて、レート制御を行う。
【０１６６】
ステップＳ１０８において、符号化部１１２は、送信処理を終了するか否かを判定する。送信処理を終了しないと判定された場合、ステップＳ１０１に戻り、それ以降の処理を繰り返す。また、ステップＳ１０８において、送信処理を終了すると判定された場合、送信処理が終了される。
【０１６７】
次に、図１１のステップＳ１０１において実行される符号化処理をより具体的に説明する。この符号化部１１２による符号化処理の流れの例を図１２のフローチャートを参照して説明する。
【０１６８】
符号化処理が開始されると、ステップＳ１２１において、量子化部２０２は、レート制御情報を取得する。ステップＳ１２２において、量子化部２０２は、そのレート制御情報に基づいて量子化ステップサイズを制御する。
【０１６９】
ステップＳ１２３において、ウェーブレット変換部２０１は、画像データの処理対象プレシンクトを取得する。ステップＳ１２４において、ウェーブレット変換部２０１は、ステップＳ１２３の処理において取得したプレシンクトに対してウェーブレット変換を行い、サブバンド毎の係数データを生成する。
【０１７０】
ステップＳ１２５において、量子化部２０２は、ステップＳ１２２の処理により制御された量子化ステップサイズを用いて、ステップＳ１２４の処理により生成されたウェーブレット係数を量子化する。
【０１７１】
ステップＳ１２６において、エントロピ符号化部２０３は、量子化された係数データに対してエントロピ符号化を行う。ステップＳ１２７においてエントロピ符号化部２０３は、コードストリームを出力する。
【０１７２】
ステップＳ１２８において、量子化部２０２は、符号化処理を終了するか否かを判定する。終了しないと判定された場合、ステップＳ１２１に戻りそれ以降の処理が行われる。ステップＳ１２８において、符号化処理を終了すると判定された場合、符号化処理が終了される。
【０１７３】
次に、図１１のステップＳ１０２において実行される送信制御処理をより具体的に説明する。この制御部１１３による送信制御処理の流れの例を図１３のフローチャートを参照して説明する。
【０１７４】
送信制御処理が開始されると、バッファ量監視部２５１は、ステップＳ１４１において、送信バッファ１１４に蓄積されているコードストリームのデータ量（バッファ量）を監視し、バッファ量情報を取得する。ステップＳ１４２において、許容レート設定部２５２は、レート制御情報およびバッファ量情報に基づいて、許容レートを設定する。
【０１７５】
ステップＳ１４３において、データ取得部２５３は、コードストリームを取得する。ステップＳ１４４において、レート判定部２５４は、そのコードストリームのビットレートが、ステップＳ１４２の処理により設定された許容レートより大きいか否かを判定する。コードストリームのビットレートが許容レートより大きいと判定された場合、ステップＳ１４５に進む。
【０１７６】
ステップＳ１４５において、フラグ付加部２５５は、コードストリームに含まれるヘッダにインコンプリートフラグを立てる。ステップＳ１４５の処理が終了すると、ステップＳ１４６に進む。また、ステップＳ１４４において、コードストリームのビットレートが許容レートより大きくないと判定された場合、ステップＳ１４５の処理は省略され、ステップＳ１４６に進む。
【０１７７】
ステップＳ１４６において、データ供給部２５６は、コードストリームをバッファに保持させる。
【０１７８】
ステップＳ１４７において、バッファ量監視部２５１は、データ制御処理を終了するか否かを判定する。終了しないと判定された場合、ステップＳ１４１に戻りそれ以降の処理が繰り返される。また、ステップＳ１４７において、データ制御処理を終了すると判定された場合、データ制御処理が終了される。
【０１７９】
次に、図１１のステップＳ１０４において実行されるパケタイズ処理をより具体的に説明する。このパケタイズ処理部１１５によるパケタイズ処理の流れの例を図１４のフローチャートを参照して説明する。
【０１８０】
パケタイズ処理が開始されると、データ取得部３０１は、ステップＳ１６１において、送信バッファ１１４から、所定の処理単位のコードストリームを取得する。
【０１８１】
ステップＳ１６２において、フラグ検出部３０２は、コードストリームのヘッダを参照し、インコンプリートフラグの検出を行う。ステップＳ１６３において、フラグ検出部３０２は、インコンプリートフラグを検出したか否かを判定する。インコンプリートフラグを検出したと判定された場合、ステップＳ１６４に進む。
【０１８２】
ステップＳ１６４において、データ破棄部３０３は、コードストリームの、インコンプリートフラグが立てられたヘッダに対応する実データを破棄する。実データを破棄するとステップＳ１６５に進む。また、ステップＳ１６３において、インコンプリートフラグを検出していないと判定された場合、ステップＳ１６５に進む。
【０１８３】
ステップＳ１６５において、パケット化部３０４は、コードストリームをパケット化する。ステップＳ１６６において、パケット出力部３０５は、ステップＳ１６５の処理により生成されたパケットを出力する。
【０１８４】
ステップＳ１６７において、データ取得部３０１は、パケタイズ処理を終了するか否かを判定する。終了しないと判定された場合、ステップＳ１６１に戻り、それ以降の処理が繰り返される。また、ステップＳ１６７において、パケタイズ処理を終了すると判定された場合、パケタイズ処理が終了される。
【０１８５】
次に、図１１のステップＳ１０７において実行されるレート制御処理をより具体的に説明する。この図６の制御部１１３により実行されるレート制御処理の流れの例を図１５のフローチャートを参照して説明する。
【０１８６】
レート制御処理が開始されると、フィードバック情報取得部２５７は、ステップＳ１８１において、フィードバック情報を取得する。ステップＳ１８２において、レート制御部２５８は、ステップＳ１８１の処理により取得されたフィードバック情報に基づいて、符号化部１１２による符号化の目標レートを設定する。
【０１８７】
ステップＳ１８３において、レート制御部２５８は、目標レートをレート制御情報として符号化部１１２に供給する。同時に、レート制御部２５８は、許容レート設定部２５２に対してもレート制御情報を供給する。
【０１８８】
ステップＳ１８４において、フィードバック情報取得部２５７は、レート制御処理を終了するか否かを判定する。レート制御処理を終了しないと判定された場合、ステップＳ１８１に戻り、それ以降の処理が繰り返される。また、ステップＳ１８４において、レート制御処理を終了すると判定された場合、レート制御処理が終了される。
【０１８９】
以上のように各種処理を行うことにより、送信装置１０１は、結果として動画像の再生画質の低下を抑制することができる。すなわち、通信システム１００は、画像データ伝送による画質の劣化を抑制することができる。
【０１９０】
［受信装置の処理の流れ］
次に、受信装置１０２による処理の流れの例を説明する。最初に、受信装置１０２による受信処理の流れの例を図１６のフローチャートを参照して説明する。
【０１９１】
受信処理が開始されると、伝送インタフェース１２１は、ステップＳ２０１において、送信装置１０１より送信されるパケットを受信する。ステップＳ２０２において、デパケタイズ処理部１２２は、ステップＳ２０１の処理により受信されたパケットからコードストリームを抽出する。ステップＳ２０３において、受信バッファ１２３は、コードストリームを保持する。
【０１９２】
ステップＳ２０４において、制御部１２４は、受信バッファ１２３よりコードストリームを読み出し、コードストリームの受信制御を行う。具体的には、制御部１２４は、データの欠損をフィードバック情報に反映させたり、欠損したデータの補完を行ったりする。
【０１９３】
ステップＳ２０５において、復号部１２５は、コードストリームを復号する。ステップＳ２０６において、出力インタフェース１２６は、ステップＳ２０５の処理によりコードストリームが復号されて得られた画像データを出力する。
【０１９４】
ステップＳ２０７において、伝送インタフェース１２１は、ステップＳ２０４の処理により生成されたフィードバック情報を、伝送路を介して送信装置１０１に送信する。
【０１９５】
ステップＳ２０８において、伝送インタフェース１２１は、受信処理を終了するか否かを判定する。受信処理を終了しないと判定された場合、ステップＳ２０１に戻り、それ以降の処理が繰り返される。また、ステップＳ２０８において、受信処理を終了すると判定された場合、受信処理が終了される。
【０１９６】
次に、図１６のステップＳ２０４において実行される受信制御処理をより具体的に説明する。この制御部１２４により実行される受信制御処理の流れの例を図１７のフローチャートを参照して説明する。
【０１９７】
ステップＳ２２１において、データ取得部３５１は、受信バッファ１２３よりコードストリームを取得する。ステップＳ２２２において、ヘッダ解析部３５２は、ステップＳ２２１の処理により取得されたコードストリームのヘッダを解析する。
【０１９８】
ステップＳ２２３において、ヘッダ解析部３５２は、コードストリームにデータの欠損があるか否かを判定する。欠損があると判定された場合、ステップＳ２２４に進む。ステップＳ２２４において、ヘッダ解析部３５２は、インコンプリートフラグが立っているか否かを判定する。インコンプリートフラグが立っていないと判定された場合、ステップＳ２２５に進む。
【０１９９】
ステップＳ２２５において、フィードバック情報生成部３５３は、データ欠損を示すフィードバック情報を生成する。ステップＳ２２６において、フィードバック情報保持部３５６は、ステップＳ２２５の処理により生成されたフィードバック情報を保持する。
【０２００】
フィードバック情報が保持されるとステップＳ２２７に進む。また、ステップＳ２２４において、インコンプリートフラグが立っていると判定された場合、ステップＳ２２５およびステップＳ２２６の処理は省略され、ステップＳ２２７に進む。
【０２０１】
ステップＳ２２７において、補完処理部３５４は、必要に応じてヘッダを参照しながら、欠損データを補完する。補完処理が終了すると、ステップＳ２２８に進む。また、ステップＳ２２３においてデータの欠損が無いと判定された場合、ステップＳ２２４乃至ステップＳ２２７の処理は省略され、ステップＳ２２８に進む。
【０２０２】
ステップＳ２２８において、データ供給部３５５は、コードストリームを復号部１２５に供給する。ステップＳ２２９において、フィードバック情報供給部３５７は、フィードバック情報保持部３５６に保持されているフィードバック情報を読み出し、それを伝送インタフェース１２１に供給する。
【０２０３】
ステップＳ２３０において、データ取得部３５１は、受信制御処理を終了するか否かを判定する。終了しないと判定された場合、ステップＳ２２１に戻り、それ以降の処理が繰り返される。また、ステップＳ２３０において、受信制御処理を終了すると判定された場合、受信制御処理が終了される。
【０２０４】
次に、図１６のステップＳ２０５において実行される復号処理をより具体的に説明する。この復号部１２５により実行される復号処理の流れの例を図１８のフローチャートを参照して説明する。
【０２０５】
復号処理が開始されるとエントロピ復号部４０１は、ステップＳ２５１において、コードストリームを取得する。ステップＳ２５２において、エントロピ復号部４０１は、ステップＳ２５１の処理により取得されたコードストリームを、エントロピ符号化部２０３によるエントロピ符号化に対応する方法でエントロピ復号する。
【０２０６】
ステップＳ２５３において、逆量子化部４０２は、ステップＳ２５２の処理により得られた係数データに対して、量子化部２０２の量子化処理における量子化ステップサイズに合わせて逆量子化を行う。
【０２０７】
ステップＳ２５４において、ウェーブレット逆変換部４０３は、ウェーブレット変換部２０１に対応する方法で、逆量子化された係数データに対してウェーブレット逆変換を行い、ベースバンドの画像データを得る。ステップＳ２５５において、ウェーブレット逆変換部４０３は、ステップＳ２５４の処理により得られた画像データを出力インタフェース１２６に供給する。
【０２０８】
ステップＳ２５６において、エントロピ復号部４０１は、復号処理を終了するか否かを判定する。復号処理を終了しないと判定された場合、ステップＳ２５１に戻り、それ以降の処理が繰り返される。また、ステップＳ２５６において、復号処理を終了すると判定された場合、復号処理が終了される。
【０２０９】
以上のように各種処理を行うことにより、受信装置１０２は、結果として動画像の再生画質の低下を抑制することができる。すなわち、通信システム１００は、画像データ伝送による画質の劣化を抑制することができる。
【０２１０】
［パーソナルコンピュータの構成］
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０２１１】
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。この場合、例えば、図１９に示されるようなパーソナルコンピュータとして構成されるようにしてもよい。
【０２１２】
図１９において、パーソナルコンピュータ５００のCPU（Central Processing Unit）５０１は、ROM（Read Only Memory）５０２に記憶されているプログラム、または記憶部５１３からRAM（Random Access Memory）５０３にロードされたプログラムに従って各種の処理を実行する。RAM５０３にはまた、CPU５０１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０２１３】
CPU５０１、ROM５０２、およびRAM５０３は、バス５０４を介して相互に接続されている。このバス５０４にはまた、入出力インタフェース５１０も接続されている。
【０２１４】
入出力インタフェース５１０には、キーボード、マウスなどよりなる入力部５１１、CRT（Cathode Ray Tube）やLCD（Liquid Crystal Display）などよりなるディスプレイ、並びにスピーカなどよりなる出力部５１２、ハードディスクなどより構成される記憶部５１３、モデムなどより構成される通信部５１４が接続されている。通信部５１４は、インターネットを含むネットワークを介しての通信処理を行う。
【０２１５】
入出力インタフェース５１０にはまた、必要に応じてドライブ５１５が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア５２１が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部５１３にインストールされる。
【０２１６】
上述した一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、ネットワークや記録媒体からインストールされる。
【０２１７】
この記録媒体は、例えば、図１９に示されるように、装置本体とは別に、ユーザにプログラムを配信するために配布される、プログラムが記録されている磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM（Compact Disc - Read Only Memory）,DVD（Digital Versatile Disc）を含む）、光磁気ディスク（MD（Mini Disc）を含む）、もしくは半導体メモリなどよりなるリムーバブルメディア５２１により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに配信される、プログラムが記録されているROM５０２や、記憶部５１３に含まれるハードディスクなどで構成される。
【０２１８】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０２１９】
また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０２２０】
また、本明細書において、システムとは、複数のデバイス（装置）により構成される装置全体を表わすものである。
【０２２１】
また、以上において、１つの装置（または処理部）として説明した構成を分割し、複数の装置（または処理部）として構成するようにしてもよい。逆に、以上において複数の装置（または処理部）として説明した構成をまとめて１つの装置（または処理部）として構成されるようにしてもよい。また、各装置（または各処理部）の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置（または処理部）の構成の一部を他の装置（または他の処理部）の構成に含めるようにしてもよい。つまり、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【０２２２】
１００  通信システム，  １０１  送信装置，  １０２  受信装置，  １１２  符号化部，  １１３  制御部，  １１４  送信バッファ，  １１５  パケタイズ処理部，  １２３  受信バッファ，  １２４  制御部，  １２５  復号部，  ２５１  バッファ量監視部，  ２５２  許容レート設定部，  ２５４  レート判定部，  ２５５  フラグ付加部，  ２５７  フィードバック情報取得部，  ２５８  レート制御部，  ３０２  フラグ検出部，  ３０３  データ破棄部，  ３５２  ヘッダ解析部，  ３５３  フィードバック情報生成部，  ３５４  補完処理部
【図１】
2010239288.tif 000003
【図２】
2010239288.tif 000004
【図３】
2010239288.tif 000005
【図４】
2010239288.tif 000006
【図５】
2010239288.tif 000007
【図６】
2010239288.tif 000008
【図７】
2010239288.tif 000009
【図８】
2010239288.tif 000010
【図９】
2010239288.tif 000011
【図１０】
2010239288.tif 000012
【図１１】
2010239288.tif 000013
【図１２】
2010239288.tif 000014
【図１３】
2010239288.tif 000015
【図１４】
2010239288.tif 000016
【図１５】
2010239288.tif 000017
【図１６】
2010239288.tif 000018
【図１７】
2010239288.tif 000019
【図１８】
2010239288.tif 000020
【図１９】
2010239288.tif 000021