(57)【特許請求の範囲】
【請求項１】
画像を符号化する画像符号化部と、
前記画像符号化部が出力する画像符号を記憶する第一の記憶部と、
前記第一の記憶部に記憶された前記画像符号を通信路を通じて送信する送信部と、
前記送信部が送信する前記画像符号を通信路を通じて受信する受信部と、
前記受信部が受信した前記画像符号を記憶する第二の記憶部と、
前記画像符号の全てが前記受信部によって受信される前に、前記画像の所定の区分を復号するために必要な前記画像符号の部分である復号単位を前記第二の記憶部から読み出して該所定の区分ごとに復号する画像復号部と、
を備える画像伝送装置において、
前記画像符号化部は、出力した前記画像符号における前記復号単位に属する最後のバイトである最終バイトの位置を前記送信部へ通知し、
前記送信部は、前記第一の記憶部に記憶した画像符号を送信する際に該画像符号の部分を取り出して伝送単位とし、前記最終バイトの位置をもとに前記伝送単位に含まれる前記最終バイトの個数を表す制御符号と前記伝送単位である画像符号とを伝送フレームに多重化して送信し、
前記受信部が前記伝送フレームを受信すると、前記第二の記憶部は前記伝送フレームから分離した前記伝送単位である画像符号を記憶し、
前記画像復号部は、前記伝送フレームに含まれる前記制御符号で通知された前記個数分の前記復号単位である画像符号を前記第二の記憶部から読み出して前記画像の所定の区分の画像符号を復号する、
ことを特徴とする画像伝送装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は画像を符号化し、作成した符号を伝送し、受信した符号を復号する画像伝送装置に関し、特に画像の符号化開始から復号が終了するまでの遅延時間が短い画像伝送装置に関する。
【０００２】
【従来の技術】
従来、特許公開平４−３１９８６６として画像伝送装置が知られている。これは複数の画像を符号化して伝送する際に、複数の画像の符号を一旦格納手段に格納しておき一括して伝送することにより、伝送を開始してから伝送を終了するまでの時間つまり回線の使用時間を節約するものであった。これは使用する回線が高速であって、符号化に要する時間よりも伝送に要する時間の方が短い場合に、高速回線網を有効に使用できる画像伝送装置であった。
【０００３】
また従来、特許公開平５−８３６９４として画像情報セル化方法が知られており図９にその実施例のブロック図を示す。これは非同期転送モード（ＡＴＭ）の通信網において、符号量の大きな一枚の画像を複数のセルに分割して伝送する際に生じる問題を解決した。つまり各セルは非同期転送モードの通信網へ送信されると、到着するまでの遅延時間が一定せず、セルが到着する順番は送信した順番と異なることがあったり、さらに各セルごとに伝送によって混入した誤りを訂正したり、セル廃棄対策処理を行うと、使用可能なセルが画像復号装置に到着するまでの時間がまちまちになってしまう。このように、一定の順番で符号が並んでいることを前提とする画像復号装置においてはセルの到着を待つ時間が無駄になる。そこで、従来の方法では画像の受信開始から復号終了までの時間が長くなってしまうという問題を解決した。この画像情報セル化方法によれば、１画面の画像情報をほぼ等分割して得られる複数のグループに区分し、各グループ単位に再生を開始できるような制御情報を付加し、これをセルに分割して非同期転送モードの通信網へと送信する。これによって受信側では１画像全部の画像情報の到着を待たずに、各グループ単位に再生を実行することができ、再生時の遅延時間を削減できた。また送信側においても、１画像分の符号化が終了するのを待たずに各グループごとに送信を開始できるため、符号化と送信を１画像単位で行う場合よりも時間を分散させて送信を行うことができ、バースト性が改善された。
【０００４】
【発明が解決しようとする課題】
しかし、ＴＶ電話のように画像を撮影しながら、符号化し、伝送し、受信した符号を復号し、画面に再生する画像伝送装置においては、符号化側で撮影してから復号側で再生されるまでの遅延時間を短くすることが重要である。この点従来の複数の画像を一括して伝送する画像符号化装置では、蓄積によって遅延の大きな画像が発生することが問題になる。
【０００５】
また連続して画像を伝送し続けるＴＶ電話においては、画像符号化復号器が符号を発生させ再生する時間は回線の伝送時間と同程度かむしろ短い方が好ましい。なぜなら伝送時間が短い高速な通信回線は使用料金が高価なため、高速な回線を待たせるよりは、使用料金のかからない画像符号化復号器を待たせておくほうが合理的だからである。限られた枚数の画像を高速な回線を使って短時間で伝送することを目的とした従来の画像伝送装置はＴＶ電話のような用途には適当ではない。
【０００６】
また従来の画像情報セル化方法は、非同期転送モードにおいて発生する問題を解決するが、これは非同期転送モードの通信網にしか適用できないという問題がある。既存の通信網でデータ通信を行う場合、例えば電話回線でモデムを使用する場合や、ＰＨＳとＰＩＡＦＳデータ通信カードや、ＰＩＡＦＳ対応ターミナルアダプタ（ＴＡＰ）を使用してデータ通信を行う場合には利用できなかった。これらの通信路においては誤ったフレームを再送することはあっても、一部のセルの到着が著しく遅延するということはない。このため回線の誤り率によってデータ伝送の実効速度が若干変動することはあるが、送信した順番で受信データが得られるように伝送プロトコルが制御を行っている。この伝送プロトコルを使用してＴＶ電話や画像伝送装置を構成することができ、この場合、画像を撮影し、１枚の画像を符号化し、音声符号と多重化し、送受信し、多重化データを分離し、画像を復号し、表示するという一連の処理が実行される。このとき１枚を符号化し、符号化が完了した１枚の符号を送受信し、受信の完了した１枚の符号を復号するという動作では、遅延時間が長くなるという問題があった。
【０００７】
また画像復号器が一度に処理する符号量にはその復号器の動作手順に応じて一定の単位があり、通常はその復号単位分の符号の受信が完了してから画像復号器の動作を開始する。この単位は画像一枚分であるか、または従来の画像情報セル化方法においては画面を区分したグループが単位であった。前記遅延時間の発生原因の一つは、この復号単位の受信が完了するまでは復号を開始できないということにある。
【０００８】
このため復号単位が小さいほど画像の符号化開始から再生されるまでの遅延時間が短くなるが、画像をグループに分割するためには、グループごとに再生を可能にするための制御情報を付加し、可変長である符号にバイト境界を設けるため意味のないビットをグループの符号の終わりに付加する必要があり、伝送に伴ってデータ量が増加してしまうという問題があった。画像符号化復号器によっては符号の構造上バイト境界が存在する場合があり、これを利用してグループ分割を行えば意味のないビットの付加を避けることができるが、例えば静止画像符号化標準であるＪＰＥＧにおいては、１画面を１回のスキャンで符号化するブロックインターリーブされたフォーマットが一般的なため構造上のバイト境界は存在しない。ただしＪＰＥＧにおいて挿入することが許されているリスタートマーカを使用すれば、そのマーカの位置でバイト境界が得られる。しかしこの場合も端数ビットをそろえるために意味のないビットを付加しているために今度は画像符号そのものが増加してしまうという問題があった。
【０００９】
【課題を解決するための手段】
上記の問題を解決するために、請求項１記載の画像伝送装置は、画像を符号化する画像符号化部と、前記画像符号化部が出力する画像符号を記憶する第一の記憶部と、前記第一の記憶部に記憶された前記画像符号を通信路を通じて送信する送信部と、前記送信部が送信する前記画像符号を通信路を通じて受信する受信部と、前記受信部が受信した前記画像符号を記憶する第二の記憶部と、前記画像符号の全てが前記受信部によって受信される前に、前記画像の所定の区分を復号するために必要な前記画像符号の部分である復号単位を前記第二の記憶部から読み出して該所定の区分ごとに復号する画像復号部と、を備える画像伝送装置において、前記画像符号化部は、出力した前記画像符号における前記復号単位に属する最後のバイトである最終バイトの位置を前記送信部へ通知し、前記送信部は、前記第一の記憶部に記憶した画像符号を送信する際に該画像符号の部分を取り出して伝送単位とし、前記最終バイトの位置をもとに前記伝送単位に含まれる前記最終バイトの個数を表す制御符号と前記伝送単位である画像符号とを伝送フレームに多重化して送信し、前記受信部が前記伝送フレームを受信すると、前記第二の記憶部は前記伝送フレームから分離した前記伝送単位である画像符号を記憶し、前記画像復号部は、前記伝送フレームに含まれる前記制御符号で通知された前記個数分の前記復号単位である画像符号を前記第二の記憶部から読み出して前記画像の所定の区分の画像符号を復号する、ことを特徴とする。
【００１１】
【発明の実施の形態】
以下、本発明の実施の形態を図面に基づいて説明する。図１は本発明の好適な実施の形態を示すブロック図である。図２は画像符号化部１の動作の手順を示すフローチャートであり、図３は送信部３の動作の手順を示すフローチャートであり、図４は受信部５の動作の手順を示すフローチャートであり、図５は画像復号部７の動作の手順を示すフローチャートである。
【００１２】
画像符号化部１は静止画像符号化の国際標準であるＪＰＥＧのベースライン方式に従った符号を作成する。画像データは輝度成分と二つの色差成分からなり、色差成分は縦横両方向にサブサンプルされており、ＪＰＥＧの符号化単位であるＭＣＵ（Minimum Coded Unit）は４つの輝度ブロックと２つの色差ブロックの計６個のブロックから構成されている。複数のＭＣＵが画像の横幅を覆うような単位を１ブロックラインと呼ぶことにすると、１画像中には複数個のブロックラインが存在し、符号は画像の上部のブロックラインから下部のブロックラインへと順に生成され伝送される。図６に画像をブロックラインに区分した図を示す。この図においてブロックライン２１は先頭のブロックラインであり、ブロックライン２２は最後のブロックラインである。画像は７個のブロックラインに区分されている。画像復号部７はブロックラインを復号すると、一旦復号処理を中断して次のブロックラインの復号処理が可能かどうか、符号が届いているかどうかを判定する。このため復号単位は１ブロックラインの復号を保証するバイト境界を持つ符号の部分のことであると定義する。また１つのブロックラインの中には複数個のＭＣＵが存在し、画像の左に位置するＭＣＵから右に位置するＭＣＵへと順に符号化される。ただし画像フォーマットは固定であり、ＪＰＥＧヘッダは符号化側と復号側との間の共通の知識となるので伝送しない。通信速度が低い場合はＪＰＥＧヘッダの伝送を省略することにより画像のフレームレートが改善されるからである。
【００１３】
画像符号化部１は画像の符号化の指示を受けると、図２の処理Ｓ０１において画像データのキャプチャと、符号化器の初期化、カウンタの初期化を行う。次に判定処理Ｓ０２において符号化すべき復号単位があるかカウンタを調べる。もしもはやその画像に対して符号化すべき復号単位がなければ処理を終える。まだ符号化すべきであれば、処理Ｓ０３において符号化を１復号単位分実行する。生成した符号は第一の記憶部２に記憶させる。
【００１４】
１ブロックラインの符号化を終えると、そのブロックラインが属する復号単位の最終バイトが第一の記憶部２において位置するアドレスを送信部３へ通知し、送信部３の判定に利用できるようにする。このアドレスは画像の最後である場合とそうでない場合で求める動作を変える。判定処理Ｓ０４において、その復号単位が画像の途中であると判定された場合はこのアドレスは１ブロックラインの符号化を終えたときの画像符号化部１の出力ポインタが指しているアドレスであり、処理Ｓ０５においてこのアドレスを送信部３へ通知し記憶させる。判定処理Ｓ０４においてその復号単位が画像の途中ではないと判定された場合には、ＪＰＥＧ符号の最後としてＥＯＩ（End of image）マーカ３３（図７参照）を出力しているので、画像符号化部１の出力ポインタが指しているアドレスから１引いたアドレスが復号単位の最終バイトのアドレスとなり、これを処理Ｓ０６において求め送信部３へ通知し記憶させる。
【００１５】
次に処理Ｓ０７において送信部３に対して１ブロックライン分の符号化が終了したことを通知し、送信を許可する。さらに復号単位を数えるカウンタをインクリメントする。その後判定処理Ｓ０２へ戻り、１枚の画像を符号化し終えたかどうかを判定する。送信部３は定期的に呼ばれる割り込みハンドラの中から送信すべき画像符号があるかどうかを調べており、送信許可を発見するとその符号の送信を実行する。
【００１６】
ただし送信許可が通知された直後において、そのブロックラインの符号を含む最終バイトは多くの場合未だ第一の記憶部２に出力されておらず、画像符号化部１が留保しているため、最終バイトをただちに送信することはできない。符号境界とバイト境界が偶然に一致した場合はこの最終バイトが出力されるが、ＪＰＥＧ符号は可変長符号を使用しているため多くの場合は符号境界とバイト境界は一致しない。この場合、画像符号化器１がこの最終バイトを第一の記憶部２に記憶させるのは、次の復号単位の符号化が始まって符号が生成され、この最終バイトが符号で満たされたときであるか、または１画像の符号化を終了してＥＯＩマーカ３３を出力する場合である。つまり、処理Ｓ０５において復号単位の最終バイトのアドレスは通知されていても、その値はまだ出力されていないことが多いのである。このため送信部３はある復号単位について送信許可を受けて送信を開始するが、その復号単位の最終バイトを送信する際には、それが第一の記憶部２に出力されているかどうかを判定しなければならない。
【００１７】
この判定処理を単純化するために、ブロックラインに対応する復号単位の最終バイトデータは、画像の最後であればＥＯＩマーカ３３の最終バイトと定義し、画像の最後でない場合は次のブロックラインの先頭の符号が含まれているバイトと定義する。この定義によって、送信部３が復号単位の最終バイトデータを送信する際には、画像の最後であるか、または次の復号単位の送信許可が通知されていることを条件とすればよい。つまり送信許可の通知を受けると送信部３はその復号単位の送信を開始するが、伝送単位３６（図８参照）の中に復号単位の最終バイトが格納されるときは、画像の最後であれば送信し、さもなければ次の復号単位の送信許可が通知されるまで待つことにする。
【００１８】
図７には画像符号のブロックライン境界と復号単位境界の違いを示す。図の左側が符号の先頭であり、図の右側が符号の終端であり、符号の最後にはＥＯＩマーカ３３が存在している。この図はある一つの画像符号について、上側にブロックラインの符号の境界を示し、下側には復号単位の境界を示したものである。一枚の画像には７個のブロックラインがあったため符号をブロックラインごとに区分すると、ブロックライン３１に代表されるような７個のブロックラインで区分される。一方、復号単位で区分するとブロックライン３２で代表されるような７個のブロックラインで区分される。どちらの場合も符号の最後にはＥＯＩマーカ３３が含まれている。なお符号の先頭にはＪＰＥＧヘッダは添付されていない。ＪＰＥＧ符号は可変長符号であるためにブロックラインの符号はバイト境界を持つとは限らないが、復号単位の境界はバイト境界に一致させる。このため図７に示すように復号単位境界は少なくともブロックライン境界以降であることが必要である。なぜなら復号単位のデータの受信が完了した時点で受信した符号に対して復号処理を開始した場合に、ブロックラインの復号が完了することを保証するためである。そして上に述べた定義によれば、ブロックライン境界と復号単位境界が一致することは画像の先頭と終端を除いてありえず、復号単位の最終バイトには次のブロックラインの符号が必ず含まれる。
【００１９】
図８には伝送フレームの構造を示す。伝送フレーム３７にはヘッダ３４、音声符号３５、画像符号３６が多重化されており、画像符号３６のことをここでは画像符号の伝送単位３６と呼ぶことにする。ヘッダ３４は１バイトであり、音声符号３５と画像符号の伝送単位３６は所定のバイトサイズである。伝送フレーム３７のサイズや、多重化されている各データのサイズはあらかじめ定められており、送信側と受信側との共通の知識となっており、音声符号３５の長さを一時的に変化させる必要がある場合でも、ヘッダ３４の中にその旨を示すフラグを立てるだけで受信側は対応できる。
【００２０】
ヘッダ３４は制御符号と伝送フレームの構造に関するフラグなどから構成される１バイトのデータである。ヘッダ３４の中にある伝送フレームの構造に関するフラグは、その伝送フレーム３７の種別、画像符号を格納しているかどうか、端末間でやり取りするコマンドデータを多重化しているかどうかといったフラグであり、受信側ではこのフラグに応じて伝送フレーム３７に含まれているデータの種別と各データの長さを判定する。
【００２１】
伝送フレーム３７のバイトサイズは送信処理が効率的に実行できるような単位に設定することが好ましく、これは送信部のハードウエアや伝送制御プロトコルに応じて選択する必要がある。伝送制御プロトコルは、送信要求のあったデータを小さなフレームに区分して、フレームごとに誤り訂正符号や伝送制御用の情報を付加して送信し、誤りが検出されたフレームに対しては再送要求を返信する。送信部３が作成する伝送フレームはこのフレームにおいてユーザーが使用可能な長さとするか、その整数倍とするのが効率的であり好ましい。
【００２２】
送信部３は伝送フレーム３７を組み立てて送信処理を起動し、伝送制御プロトコルが送信処理を受け付けると誤り無く、通信網４を介して受信部５へ伝送することを保証する。
【００２３】
この方法では符号境界とバイト境界を一致させるために意味の無いビットを追加したり削除する必要はなく、伝送するデータの増加が避けられる。また復号単位を復号するために特別な情報を添付する必要はなく、余計な処理も必要ない。画像符号が生成され、その符号データを順に伝送し、それを受信した側では復号単位ごとに復号するだけであって、復号部が復号動作を開始するタイミングを制御符号によって制御すればよいのである。制御符号はその画像符号の伝送単位３６の中に復号単位の最終バイトデータが何個含まれているかを表すもので、含まれていない場合は０を、含まれている場合はその個数を通知する。制御符号はヘッダ３４の中に格納され、伝送フレーム３７として多重化され伝送される。受信側では制御符号によって通知された数の復号単位の復号が可能になるため、画像復号部７へ開始を通知する。
【００２４】
上に述べた復号単位の最終バイトデータの定義と送信可能性の判定処理は一例であって、別の方法であってもかまわない。復号単位は受信側において画像復号部がその単位を支障無く復号でき、復号したら一旦停止して次の復号単位が受信されているか判定するためのものであり、この動作が実現できるならば上の例と異なる定義をすることも可能である。
【００２５】
図３は送信部３の動作の手順を示すフローチャートである。この処理はタイマー割込みもしくは音声符号化完了割込みのような定期的に呼ばれる割込みハンドラの中で呼び出される。この処理が呼び出されたときには送信するべき音声符号が出来上がっており、さらにこの処理を呼び出す前に送信デバイスが送信可能であるか調べ、送信可能なときにのみ図３の処理が呼び出されるものとする。このためこの処理が呼び出されるたときには必ず音声符号の送信が可能であり、処理Ｓ１１において音声符号を送信フレーム３７の中の音声符号領域３５へ転写する。
【００２６】
次に判定処理Ｓ１２において、伝送単位３６のサイズ分の送信可能な画像符号があるか判定する。ない場合には処理Ｓ１３において、ヘッダ３４の中に画像が含まれていないことを示すフラグを立てて、送信フレームの送信を開始しリターンする。これは音声符号３５を多重化している場合には音声が途切れないように定期的に送信を行う必要があるからであるが、音声符号３５を多重化していない場合には必ずしも送信を継続する必要はなく、次のブロックラインの送信許可が通知されるまで送信を休むことも可能である。
【００２７】
伝送単位３６のサイズ分の送信可能な画像符号がある場合には処理Ｓ１４において画像符号を伝送フレーム３７の画像符号の伝送単位３６の中へ転写する。次に処理Ｓ１５でこの伝送単位３６の中に含まれる復号単位の最終バイトの数を数え、ヘッダ３４の中の制御符号として格納する。伝送フレーム３７が組み立てられると処理Ｓ１６において送信を開始する。
【００２８】
判定処理Ｓ１２において判定する際、画像符号の伝送単位３６の中に復号単位の最終バイトデータが含まれる場合は、次の復号単位の送信許可が通知されているかを調べ、通知がまだ到着していなければこの送信フレームには画像を格納せず、処理Ｓ１３へ進んで画像なしのフレームを送信する。送信許可通知が到着していれば最終バイトデータも送信可能と判定し、続けて伝送単位３６のサイズに達するまで画像符号を格納できるか調べる。ただし、画像の最後のバイト３３が格納される場合には、以後伝送単位３６に空き領域があったとしても画像符号を格納せず、次の画像の符号は次の伝送フレームの伝送単位３６の先頭から格納するものとする。このように画像符号の先頭を必ず伝送単位３６の先頭から格納することにし、画像の最後のバイト３３以降のデータは無効なデータとすることによって、誤りが混入した場合でも次の画像が正常に再生される確率を高くすることができる。
【００２９】
制御符号を伝送するために何ビットを割り当てればよいかは次のように決定できる。伝送単位３６の中に格納されうる画像データの最大のバイト数をN とし、１個の復号単位を符号化した際に発生しうる最小の画像符号量をB バイトとする。画像符号の最小量はＪＰＥＧの場合ハフマンテーブルの指定の仕方によって変わるが、あるハフマンテーブルによれば１個のＭＣＵを符号化するには最低4 バイトを消費する。１ブロックラインにm 個のＭＣＵが存在するならば１復号単位を符号化するには最低B=4mバイトが必要である。さて、N バイトの伝送単位３６に格納されうる最終バイトデータの個数の最大値をM 個とすると、M=1+(N-1)/B である。ここで割り算は整数の割り算であり余りは切り捨てる。この式の意味は、伝送単位３６の最初の１バイトにおいて最終バイトに達することがあるためこれを考慮し、残りの(N-1) バイトで何個の復号単位を伝送できるかを求めたものである。このM を符号として表現できるだけのビット数を制御符号のビット数として割り当てておく必要がある。例えば伝送単位３６のバイト数N が50であり、１復号単位の符号量の最小バイト数B が24であればM=3 であり、制御符号に2bitを割り当てれば十分である。このように本発明は伝送における遅延時間を短くするのが目的であり復号単位を小さくしておいた方が遅延時間を短くできる。このため変数B が小さな値になるが、伝送単位３６ごとに多重化される制御符号による伝送データの増加は必要最小限のものであり、復号単位の最終バイトの位置をバイト数で通知するよりも多くの場合で効率的である。特に復号単位当たりに実際に発生する符号量が小さい場合において有利である。
【００３０】
処理Ｓ１６で送信を実行した後、判定処理Ｓ１７では画像１枚分の符号を送信し終えたか判定する。未だ画像１枚分の符号を送信し終えていない場合はこの処理をリターンする。画像１枚分の符号を送信し終えた場合は、処理Ｓ１８において使用していたカウンタ及びポインタのリセットを行い、第一の記憶部２の中の画像が蓄積されていた領域が空いたことを通知する。その後この処理をリターンする。
【００３１】
送信部３と受信部５は通信網４を介して通信路を開いており、送信部３が送信した伝送フレーム３７は通信網４を介して受信部５へ達する。送信部３と受信部５の間では伝送制御プロトコルが動作しており、受信部５から出力されるデータには誤りがないことが保証されている。
【００３２】
図４は受信部５の動作の手順を示すフローチャートである。図４の処理は受信データが到着したことを通知する割込みハンドラの中から呼び出される。しかも受信データは必ずしも伝送フレーム３７のサイズごとに到着するとは限らないので、サイズに満たない場合はデータを一時バッファに蓄え、伝送フレーム３７のサイズ分のデータがそろったら図４の処理を呼ぶものとする。
【００３３】
受信部５は伝送フレーム３７を受信すると、処理Ｓ２１において音声符号３５を音声再生部へ配送する。次に判定処理Ｓ２２において、ヘッダ３４の中の伝送フレームの構造に関するフラグを調べ画像符号の伝送単位３６が有効であるか判定する。画像符号が有効でない場合は処理をせずにリターンする。画像符号の伝送単位３６が有効ならば処理Ｓ２３において第二の記憶部６へ画像符号の伝送単位３６を転写する。画像符号は伝送単位３６ごとに受信され、第二の記憶部６の中に蓄積されていく。
【００３４】
次に判定処理Ｓ２４においてヘッダ３４の中の制御符号が０であるかを調べる。制御符号は復号単位の最終バイトデータの存在個数を表しており、０でなければその個数分の復号単位を復号することができ、処理Ｓ２５において制御符号で通知された個数分の復号を行うように画像復号部７へ通知を行う。制御符号が０であればそのまま判定処理Ｓ２６へ進む。
【００３５】
判定処理Ｓ２６において、現在の画像にまだ復号するべき復号単位が残っているかを判定する。まだ復号が必要ならばリターンし、もう復号するべき復号単位が残っていない場合は処理Ｓ２７において次の画像を受信して復号するための準備を行う。この準備は第二の記憶部６の中に画像符号を蓄積するためのバッファを確保し、そのアドレスを蓄積先を記憶しているポインタにセットし、復号単位を数えるカウンタをリセットすることなどである。
【００３６】
データ通信によって画像符号を伝送するスピードが画像復号部７が復号するスピードよりも速い場合、第二の記憶部６の中に復号を待つ符号が蓄積されてゆき、蓄積のためのバッファがなくなる場合があるが、この場合は受信データの引き取りを拒否するか、データを引き取るが復号せずにその次の画像の先頭の符号まで捨てることができる。引取りを拒否した場合、伝送制御プロトコルがフロー制御を働かせるため、送信側で送信が一時的にできなくなる。一方データを引き取って捨てる場合、伝送はされたが表示されない画像が発生することになるが、復号待ちの画像符号の蓄積による遅延時間を解消して表示画像のリアルタイム性を回復するというメリットがある。
【００３７】
図５は画像復号部７の動作の手順を示すフローチャートである。画像復号部７は画像通信の開始時には休止中の状態であり、復号単位が受信され復号通知が到着すると起動される。復号通知は、復号するべき復号単位の数だけ復号待ちの待ち行列の数を増加させ、画像復号部７が休止中ならば休止中のフラグをクリアし図５の処理を起動する。画像復号部７が休止中でなければ復号処理は順次進行するのでそのままでよい。画像復号部７は画像符号化部１が符号化したＪＰＥＧ符号を復号する。ただし処理は復号単位ごとに実行される。ここでは復号単位は１ブロックライン分の符号を含んでいるように定義されており、１ブロックラインを復号するごとに画像復号部７は一時処理を中断し、次の復号単位が復号可能であるかを判定する。復号可能であるかどうかは受信部５が制御符号に基づいて復号通知を発生させたときに復号待ちの待ち行列を増加させているので、待ち行列の中で待っている復号単位の数によって判定する。
【００３８】
図５の処理が起動されると、処理Ｓ３１において復号待ちの待ち行列があるか判定する。待ち行列がない場合は処理Ｓ３２において休止中を表すフラグを立ててリターンし、休止する。待ち行列がある場合には処理Ｓ３３へ進む。
【００３９】
処理Ｓ３３では復号待ちの待ち行列の数を１だけ減少させる。次に処理Ｓ３４において復号単位を復号する。次に判定処理Ｓ３５において画像が未完成であるか判定する。未完成であってまだ復号すべき復号単位がある場合には判定処理Ｓ３１へ戻る。画像が未完成でない、つまり画像の復号が完成した場合には処理Ｓ３６において画像を表示装置上に表示させ、第二の記憶部６における次に復号すべき符号バッファのアドレスをセットして画像復号部７を再初期化する。そして判定処理Ｓ３１へ戻る。
【００４０】
このようにして送信側でセットした制御符号は受信側においては画像復号器７の実行許可を指示しており、画像復号器７は復号単位を復号するごとに、画像が完成したか判定し、さらに次の復号単位の復号を開始してよいかどうかを判定する。
【００４１】
【発明の効果】
本発明の画像伝送装置によれば次のような効果が得られる。送信側で画像の符号化を開始してから受信側で画像の復号が終了するまでの遅延時間を短くすることができる。１枚の画像の画像符号を複数の小さな復号単位に分けて伝送する際に、意味の無いビットを付加したり、復号単位ごとに復号するための制御情報を付加することがなく、伝送に伴うデータの不要な増加を抑制することができる。
【図面の簡単な説明】
【図１】  本発明による画像伝送装置のブロック図。
【図２】  本発明の画像伝送装置の画像符号化部の動作を表すフローチャート。
【図３】  本発明の画像伝送装置の送信部の動作を表すフローチャート。
【図４】  本発明の画像伝送装置の受信部の動作を表すフローチャート。
【図５】  本発明の画像伝送装置の画像復号部の動作を表すフローチャート。
【図６】  画像をブロックラインに区分した様子を示す図。
【図７】  画像符号のブロックライン境界と復号単位境界の違いを示す図。
【図８】  伝送フレームにおける多重化構造を示す図。
【図９】  従来の画像伝送装置のブロック図。
【符号の説明】
１  画像符号化部
２  第一の記憶部
３  送信部
４  通信網
５  受信部
６  第二の記憶部
７  画像復号部
２１、２２  ブロックライン
３１  １個のブロックラインの符号
３２  １個の復号単位
３３  ＥＯＩマーカ
３４  ヘッダ
３５  音声符号
３６  画像符号の復号単位
３７  伝送フレーム
８１  画像情報
８２  高能率符号化器
８３  グループバッファ
８４  グループ用冗長符号生成器
８５  セル分割部
８６  セル組立送出器・セルバッファ
８７  セル
８８  同期タイミング発生器
８９  セル分割組立情報生成器
【図１】
0004237869.tif 000002
【図２】
0004237869.tif 000003
【図３】
0004237869.tif 000004
【図４】
0004237869.tif 000005
【図５】
0004237869.tif 000006
【図６】
0004237869.tif 000007
【図７】
0004237869.tif 000008
【図８】
0004237869.tif 000009
【図９】
0004237869.tif 000010