(57)【特許請求の範囲】
【請求項１】
複数の領域に分割された画面内の１つの領域である特定領域に表示すべき動画のデータを、データの転送レートを保証するプロトコルによって送信する送信装置であって、
前記動画の前記データのうち、前記特定領域を構成するｎ本の水平ラインに相当する部分からデータパケットを生成するデータパケット生成手段と、
前記特定領域のｎ本の前記水平ラインを含む、前記画面の全幅にわたるｎ本の全幅水平ラインの走査のタイミングに対応する期間のうち、前記特定領域の前記画面内での水平方向における位置に対応する期間である送信期間か否かを判断する判断手段と、
前記送信期間であると前記判断手段が判断したとき、前記データパケットを送信する送信手段と、
を備えることを特徴とする送信装置。
【請求項２】
前記データパケット生成手段は、前記画面の垂直方向の走査順と同じ方向で上または下から順に、ｎ本の前記水平ラインを繰り返しの単位として、前記データパケットを生成することを繰り返し、
前記判断手段は、水平方向に並ぶｄｈ個の前記領域について、水平方向の位置に応じて、前記特定領域に対応する前記送信期間であると判断するか、または前記特定領域以外の領域に対応する非送信期間であると判断し、
前記ｄｈ個の領域に対応する前記送信期間と前記非送信期間とからなる判断のパターンが、前記データパケット生成手段による前記繰り返しの単位ごとに繰り返される、
ことを特徴とする請求項１に記載の送信装置。
【請求項３】
前記画面は水平方向と垂直方向の分割をともに含み、
前記画面の走査順において、前記特定領域の上または下にある他の領域の走査のタイミングに対応する期間では、前記判断手段が前記送信期間ではないと判断する、
ことを特徴とする請求項１に記載の送信装置。
【請求項４】
前記動画の前記データのうちｎ本の前記水平ラインに相当する前記部分の大きさは固定であることを特徴とする請求項１に記載の送信装置。
【請求項５】
複数の領域に分割された画面内のそれぞれの前記領域に表示すべき複数の動画のデータを、データの転送レートを保証するプロトコルによって、複数の送信装置のそれぞれから受信する受信装置であって、
前記複数の送信装置と前記複数の領域との対応関係を、前記複数の送信装置に通知する通知手段と、
前記動画の前記データから生成され、前記対応関係により示される前記領域の前記画面内での位置と前記画面の走査順とに基づくタイミングで前記複数の送信装置からそれぞれ送信された、データパケットを受信する受信手段と、
１つの前記送信装置から受信した１つ以上の前記データパケットから、前記動画の前記データのうち、前記１つの送信装置に対応する１つの前記領域を構成するｎ本の水平ラインに相当する部分を復元する復元手段と、
復元された前記動画の前記データを記憶する記憶手段と、
前記記憶手段に記憶された前記動画の前記データに基づいて、前記画面の全幅にわたるｎ本の全幅水平ラインを、走査により表示するよう命令する表示手段とを備え、
前記データパケットの受信と、前記動画の前記データの復元および記憶と、前記表示手段による命令とを繰り返すことによって前記画面全体の表示を実現させることを特徴とする受信装置。
【請求項６】
前記受信手段が、水平方向に並ぶｄｈ個の前記領域に対応するｄｈ個の前記送信装置から順にそれぞれ前記データパケットを受信し、前記記憶手段が、ｄｈ個の前記送信装置から受信した前記データパケットからそれぞれ復元されたｄｈ個の前記動画それぞれの前記データを記憶した後で、前記表示手段がｎ本の前記全幅水平ラインの表示を命令することを特徴とする請求項５に記載の受信装置。
【請求項７】
コンピュータに、複数の領域に分割された画面内の１つの領域である特定領域に表示すべき動画のデータを、データの転送レートを保証するプロトコルによって送信させるプログラムであって、
前記動画の前記データのうち、前記特定領域を構成するｎ本の水平ラインに相当する部分からデータパケットを生成するステップと、
前記特定領域のｎ本の前記水平ラインを含む、前記画面の全幅にわたるｎ本の全幅水平ラインの走査のタイミングに対応する期間のうち、前記特定領域の前記画面内での水平方向における位置に対応する期間である送信期間か否かを判断するステップと、
前記送信期間であると判断したとき、前記データパケットを送信するステップと、
を前記コンピュータに実行させることを特徴とするプログラム。
【請求項８】
コンピュータに、複数の領域に分割された画面内のそれぞれの前記領域に表示すべき複数の動画のデータを、データの転送レートを保証するプロトコルによって、複数の送信装置のそれぞれから受信させるプログラムであって、
前記複数の送信装置と前記複数の領域との対応関係を、前記複数の送信装置に通知する通知ステップと、
前記動画の前記データから生成され、前記対応関係により示される前記領域の前記画面内での位置と前記画面の走査順とに基づくタイミングで前記複数の送信装置からそれぞれ送信された、データパケットを受信する受信ステップと、
１つの前記送信装置から受信した１つ以上の前記データパケットから、前記動画の前記データのうち、前記１つの送信装置に対応する１つの前記領域を構成するｎ本の水平ラインに相当する部分を復元する復元ステップと、
復元された前記動画の前記データを記憶手段に記憶する記憶ステップと、
前記記憶手段に記憶された前記動画の前記データに基づいて、前記画面の全幅にわたるｎ本の全幅水平ラインを、走査により表示するよう命令する表示ステップと、
を前記コンピュータに実行させ、
前記受信ステップ、前記復元ステップ、前記記憶ステップ、および前記表示ステップを前記コンピュータに繰り返させることによって前記画面全体の表示を実現させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の領域に分割された画面内の各領域にそれぞれ動画を表示するシステムに関する。本発明は特に、そのような分割表示に適した方法で動画のデータを送信する送信装置、および、その方法でデータが送信された複数の動画を、画面の各領域に表示させる受信装置に関する。
【背景技術】
【０００２】
近年、車両の周囲にカメラを配置し、運転者（ドライバ）から見えにくい箇所の映像をフロント座席のモニタに映し出すシステムが一般化してきた。このようなシステムは、例えばカーナビゲーションシステムの機能の一部として提供される。現状のそのようなシステムでは、例えば、車の後方、および前方の左右両サイドの合計３方向を撮影する３台程度のカメラが配置されるのが一般的である。
【０００３】
ところで、車載用の各種機器を接続するＬＡＮ（以下、車載ＬＡＮという；ＬＡＮはLocal Area Networkの略）の規格には、高速シリアルバスの規格であるＩＥＥＥ（Institute of Electrical and Electronics Engineers）１３９４規格を車載用に改変したＩＤＢ（ITS Data Bus Forum；ＩＴＳはIntelligent Transport Systemsの略）−１３９４等がある。今後は、ＩＤＢ−１３９４のように高速な車載ＬＡＮの普及にともない、より多くのカメラが配置されたシステムが一般化すると予想される。
【０００４】
図１１は、車載用の多数のカメラを車両の周辺に設置したマルチカメラシステムの例である。図１１では、監視用の６台のカメラ１００３ａ〜１００３ｆが車両１００１に設置され、車両の周囲を撮影している。カメラ１００３ａと１００３ｂと１００３ｆは、いずれも車両１００１の後方を向くように設置され、それぞれの設置位置は、車両１００１の後尾部、左サイドミラー近傍、右サイドミラー近傍である。カメラ１００３ｃは左向きに車体前面部左側に設置され、カメラ１００３ｄは前向きに車体前面部中央に設置され、カメラ１００３ｅは右向きに車体前面部右側に設置されている。また、右フロント座席である運転席にはモニタ１００４ａが設置され、中央の左側と右側の座席にはモニタ１００４ｂと１００４ｃがそれぞれ設置されている。
【０００５】
カメラ１００３ａ〜１００３ｆにはそれぞれ送信コントローラ１００５ａ〜１００５ｆが取り付けられており、送信コントローラ１００５ａ〜１００５ｆを介してカメラ１００３ａ〜１００３ｆは車載ＬＡＮ１００２に接続されている。同様に、モニタ１００４ａ〜１００４ｃにはそれぞれ受信コントローラ１００６ａ〜１００６ｃが取り付けられており、受信コントローラ１００６ａ〜１００６ｃを介してモニタ１００４ａ〜１００４ｃも車載ＬＡＮ１００２に接続されている。このような構成により、カメラ１００３ａ〜１００３ｆが撮影した画像を、車載ＬＡＮ１００２を介してモニタ１００４ａ〜１００４ｃに送信することが可能となる。
【０００６】
図１１のような車載マルチカメラシステムでは、安全運転を支援するために、運転席に設けられたモニタ１００４ａの画面に、複数のカメラが撮影した複数の画像を同時に表示し、運転者の死角をなくすことが求められている。
【０００７】
複数のカメラのそれぞれが撮影した画像、すなわちマルチチャンネル画像を合成して１つの画面に表示することは、チャンネル数に応じた容量のフレームメモリを画像の受信側であるモニタ側に設けることによって、実現可能である。図１２は、モニタ１００４ａの画面１０１１を４分割して、カメラ１００３ａ〜１００３ｄが撮影した画像を同時に表示するシステムの構成要素と、その４分割された画面１０１１を示す図である。なお、図１２では、図１１にあったカメラ１００３ｅと１００３ｆ、およびこの２台のカメラに関連する部分を省略している。
【０００８】
カメラ１００３ａ〜１００３ｄは、安全運転の支援を目的とするので、動画像を撮影している。そのため、一般のビデオカメラと同様に、カメラ１００３ａ〜１００３ｄはそれぞれフレームメモリ１００７ａ〜１００７ｄを備えている。図１２の例では、カメラ１００３ａ〜１００３ｄが撮影する画像の大きさは、いずれも水平方向３２０画素、垂直方向２４０画素である。以下では、この大きさを「３２０×２４０画素」と表記する。また、画面の大きさや、画面を分割した領域の大きさについても同様に表記する。
【０００９】
図１１においてカメラ１００３ａ〜１００３ｄに取り付けられている送信コントローラ１００５ａ〜１００５ｄは、それぞれ図１２の伝送部１００８ａ〜１００８ｄの機能を有する。伝送部１００８ａ〜１００８ｄはそれぞれ、フレームメモリ１００７ａ〜１００７ｄに記憶されているフレーム画像のデータからパケットを生成し、車載ＬＡＮ１００２を介して、例えばモニタ１００４ａに取り付けられた合成部１００９へパケットを送信する。
【００１０】
図１２の合成部１００９は、例えば図１１のモニタ１００４ａに取り付けられた受信コントローラ１００６ａに含まれる。合成部１００９は、車載ＬＡＮ１００２を介して伝送部１００８ａ〜１００８ｄから送られてきたそれぞれのパケットから、４台のカメラ１００３ａ〜１００３ｄがそれぞれ撮影した４枚のフレーム画像のデータを復元し、それぞれのデータをフレームメモリ１０１０ａ〜１０１０ｄに記憶する。なお、フレームメモリ１０１０ａ〜１０１０ｄは、理解しやすくするために４つのブロックに分けて図示してあるが、物理的には、４つのメモリモジュールであってもよく、４枚のフレーム画像のデータを記憶することが可能な容量を持った１つのメモリモジュールであってもよい。
【００１１】
図１２においてモニタ１００４ａの画面１０１１は、６４０×４８０画素の大きさであり、水平方向と垂直方向にそれぞれ２等分してできる領域１０１２ａ〜１０１２ｄはいずれも３２０×２４０画素の大きさである。合成部１００９は、フレームメモリ１０１０ａ〜１０１０ｄにそれぞれデータが記憶されたフレーム画像を、それぞれ領域１０１２ａ〜１０１２ｄに表示する。すなわち、合成部１００９は４つのフレーム画像を合成した画像を画面１０１１に表示する。
【００１２】
図１２のシステムは、動画を構成する各フレーム画像について以上の動作を繰り返すことで、画面１０１１の４つの領域１０１２ａ〜１０１２ｄにそれぞれ、カメラ１００３ａ〜１００３ｄが撮影した動画を表示する。
【００１３】
図１３は、図１２の車載ＬＡＮ１００２がＩＤＢ−１３９４プロトコルによるネットワークである場合に、図１２に示した構成において行われるパケットの送信方法を示す図である。
【００１４】
ＩＤＢ−１３９４プロトコルは、元になったＩＥＥＥ１３９４プロトコルと同様に、アイソクロナス転送とアシンクロナス転送という２種類のデータ転送方式をサポートしている。また、各転送方式によるパケットは、それぞれアイソクロナスパケット、アシンクロナスパケットと呼ばれる。
【００１５】
アイソクロナス転送は、データの転送レートを保証する転送方式であり、動画や音声などのリアルタイム性が要求されるデータの転送に好適である。一方、アシンクロナス転送は、アイソクロナス転送が行われておらず、バスが空いている時間に非同期にデータを転送する方式であり、データの転送先が転送元にアクノリッジ（応答）を返信することが定められている。
【００１６】
ＩＤＢ−１３９４規格によるシリアルバス（以下、１３９４バスという）に接続された機器はノードと呼ばれ、例えば、図１２では、伝送部１００８ａ〜１００８ｄと合成部１００９がいずれもノードに該当する。バスの初期化の際には、アイソクロナス転送を行う各ノードに帯域が割り当てられるとともに、サイクルマスタと呼ばれるノードが１つ選ばれる。
【００１７】
ＩＤＢ−１３９４プロトコルにおけるアイソクロナス転送では、１２５μｓという所定の周期（サイクル）で、サイクルマスタがサイクルスタートパケットを送信する。図１２に示した１２５μｓごとの矩形は、サイクルスタートパケットを表す。アイソクロナス転送を行いたいノードは、サイクルスタートパケットの受信後、アイソクロナスギャップと呼ばれる所定の時間待ってから、バスの使用権を得るためのアービトレーションを開始し、使用権が得られればアイソクロナスパケットを送信する。アイソクロナスギャップは、バスが使用されておらずアイドル状態であることを確認するために待つべき時間である。
【００１８】
なお、１２５μｓの１サイクル内で複数回のアイソクロナスパケットの転送が可能である。すなわち、あるアイソクロナスパケットの送信終了後、バスのアイドル状態がアイソクロナスギャップだけ続くことを確認してからアービトレーションを開始し、そこでバスの使用権を得たノードが、当該サイクル内で次にアイソクロナスパケットを転送することができる。これを繰り返すことにより、１２５μｓのサイクル内で複数のアイソクロナスパケットの送信が可能である。
【００１９】
図１３の例では、４台のカメラ１００３ａ〜１００３ｄにそれぞれ取り付けられた４つの伝送部１００８ａ〜１００８ｄが、それぞれ１サイクルに１回、アイソクロナス転送のためのバスの使用権を取得し、それぞれフレーム画像から生成したパケットをアイソクロナス転送する。図１３において１２５μｓごとに並んだ４つの矩形とその下の符号ａ〜ｄは、各サイクルで伝送部１００８ａ〜１００８ｄからそれぞれ送信されるパケットを表す。
【００２０】
なお、アシンクロナス転送を行いたいノードは、アイソクロナスギャップよりも長い時間であるサブアクションギャップという時間、バスがアイドル状態であることを確認してから、バスの使用権を得るためのアービトレーションを開始し、使用権が得られればアシンクロナスパケットを送信する。これにより、１２５μｓの１サイクルの中で、アイソクロナス転送とアシンクロナス転送が混在することも可能となる。一方で、サブアクションギャップはアイソクロナスギャップよりも長いため、アシンクロナス転送よりもアイソクロナス転送の方が優先される。したがって、アイソクロナス転送では、１２５μｓごとに優先的にパケットを送信することができるため、データの転送レートが保証される。このように、１３９４バスは１２５μｓの周期が繰り返されるため、同期式の伝送路であると言える。
【００２１】
データの転送レートが保証されるという前提が成立することを利用して、図１３では、伝送部１００８ａ〜１００８ｄのそれぞれが式（１）のようにして、１サイクルに送信するパケットの大きさｓを決定する。
【００２２】
ｓ＝ｈ×ｖ×ｆ×ｐ÷（１÷ｃ）                                    （１）
ｓ：１サイクルに送信するパケットの大きさ（単位はバイト）
ｈ：カメラが撮影した画像の水平方向の画素数
ｖ：カメラが撮影した画像の垂直方向の画素数
ｆ：動画のフレームレート（単位はｆｐｓ）
ｐ：１画素あたりのバイト数
ｃ：１サイクルの長さ（単位は秒）
なお、ここでパケットの大きさｓは、より正確には、パケットのペイロード部に含まれる動画データの大きさである。また、特にデータとフレーム画像との対応を明示する必要がない場合に、「フレーム画像のデータ」のかわりに「動画データ」と表現する場合がある。
【００２３】
ここでは簡単のため、カメラ１００３ａ〜１００３ｄがいずれも３２０×２４０画素の大きさの動画を３０ｆｐｓで撮影していると仮定する。また、これらの動画ではＹＵＶ表色系が採用されており、輝度信号（Ｙ）と色差信号（ＵおよびＶ）がそれぞれ１バイトで表されると仮定する。この場合、Ｙは各画素に割り当てられ、ＵとＶは隣接する２画素に対して１つの値が割り当てられるので、１画素あたりのバイト数ｐは式（２）より２である。
【００２４】
ｐ＝１＋１／２＋１／２＝２                                        （２）
また、動画のデータは圧縮されていないと仮定して、式（１）に数値を代入すると、式（３）のとおり、５７６バイトという値が得られる。
【００２５】
３２０×２４０×３０×２÷（１÷（１２５×１０−６））＝５７６    （３）
したがって、図１３の例では、各サイクルで伝送部１００８ａ〜１００８ｄの各々が５７６バイトの動画データを含むアイソクロナスパケットを送信すればよい。
【００２６】
より正確には、サイクルごとのパケットに含まれる動画データの平均が５７６バイト以上であればよく、実際には切りのよい数値に調整してもよい。例えば、フレームレートが３０ｆｐｓのとき、１つのフレームの時間は約３３ｍｓだが、これを１２５μｓで割ろうとすると、２６６．６……となって割り切れない。そこで、例えば各サイクルで５７６バイトより多い動画データを送信するようにして、２６６以下の整数のサイクルで１つのフレーム画像のデータを送信し終えるように調整してもよい。
【００２７】
なお、ＩＤＢ−１３９４規格で規定されているデータ転送レートには、Ｓ１００（９８．３０４Ｍｂｐｓ）、Ｓ２００（１９６．６０８Ｍｂｐｓ）、Ｓ４００（３９３．２１６Ｍｂｐｓ）という種類がある。これらの転送レートは、各サイクルにおいて各ノードから送信されるパケットの大きさの和の上限を規定する。各サイクルで伝送部１００８ａ〜１００８ｄのそれぞれが５７６バイトずつの動画データを含むアイソクロナスパケットを送信しても、Ｓ２００で十分転送可能である。
【００２８】
このように十分な帯域があるため、非圧縮の動画データを４台のカメラ１００３ａ〜１００３ｄから伝送部１００８ａ〜１００８ｄを介して同時並行的に送信することも可能であるが、動画データは圧縮されていてもよい。
【００２９】
しかし、図１３の方法を採用する場合、上記のように、今後、より多くのカメラが配置されるようになると、それに応じて図１２のシステムにおいて合成部１００９に必要なフレームメモリの容量が増し、コストも増大するという問題がある。しかし、車載用の装置あるいはその部品に、高価な大容量のフレームメモリを設けることは現実的ではなく、図１２の構成ですら高コストである。そこで、１つの画面を複数の領域に分割して、各領域に異なる画像を表示する場合に必要なフレームメモリの容量をできるだけ削減することが求められている。
【００３０】
例えば、図１２のように画面１０１１を４分割する例において、必要なフレームメモリの容量を削減する方法の一例が、図１４に示した方法である。
モニタが表示されるときのラスタ走査順は、一般的に、水平方向のラインを左から右へ走査することを上から下に向かって繰り返すという順番である。つまり、図１２の画面１０１１に表示すべきある１つのフレーム（以下、注目フレームという）に注目すると、まず画面１０１１の左上にある領域１０１２ａと右上にある領域１０１２ｂが同時並行的にラスタ走査により表示され、領域１０１２ａと１０１２ｂのラスタ走査の終了後、画面１０１１の左下にある領域１０１２ｃと右下にある領域１０１２ｄが同時並行的にラスタ走査により表示され、以上によって注目フレームの合成されたフレーム画像が画面１０１１全体に表示される。
【００３１】
このラスタ走査順に注目し、カメラ１００３ａ〜１００３ｄがフレーム画像のデータを伝送するタイミングをうまく制御すると、３２０×２４０画素の大きさのフレーム画像のデータを記憶することが可能な容量のＦＩＦＯ（First In First Out）メモリを２組、フレームメモリとして利用することにより、図１２と同様の画面１０１１の４分割表示が可能となる。以下、この２組のＦＩＦＯメモリが図１２のフレームメモリ１０１０ａと１０１０ｂであるとして説明する。
【００３２】
図１４に示すように、第１の期間では、カメラ１００３ａと１００３ｂに対応する伝送部１００８ａと１００８ｂだけが、動画データから生成したパケットを合成部１００９に伝送（送信）する。合成部１００９は、伝送部１００８ａと１００８ｂのそれぞれからパケットを受信し、各パケットからカメラ１００３ａと１００３ｂが撮影した動画のデータをそれぞれ復元して、フレームメモリ１０１０ａと１０１０ｂにそれぞれ記憶する。
【００３３】
続いて、第２の期間で、合成部１００９がフレームメモリ１０１０ａと１０１０ｂのデータに基づいて画面１０１１の上半分を表示（再生）する。これにより、カメラ１００３ａと１００３ｂが撮影した画像が表示される。この表示と並行して、カメラ１００３ｃと１００３ｄに対応する伝送部１００８ｃと１００８ｄが、合成部１００９にパケットを伝送する。
【００３４】
すなわち、第２の期間において合成部１００９は、画面１０１１の上半分の表示と並行して、伝送部１００８ｃと１００８ｄのそれぞれからパケットを受信し、各パケットから、カメラ１００３ｃと１００３ｄが撮影した動画のデータをそれぞれ復元して、フレームメモリ１０１０ａと１０１０ｂにそれぞれ記憶する。
【００３５】
次の第３の期間では、合成部１００９がフレームメモリ１０１０ａと１０１０ｂのデータに基づいて画面１０１１の下半分を表示する。これにより、カメラ１００３ｃと１００３ｄが撮影した画像が表示される。図１４では省略されているが、この表示動作と並行して、注目フレームの次のフレームについて、伝送部１００８ａと１００８ｂから動画データを含むパケットが伝送され、それぞれフレームメモリ１０１０ａと１０１０ｂに記憶される。
【００３６】
このように、注目フレームは第２の期間と第３の期間にわたってラスタ走査され、再生される。以上を繰り返すことにより、動画を構成する個々のフレーム画像が再生され、４台のカメラ１００３ａ〜１００３ｄが撮影した４組の動画が、分割された画面１０１１上で再生される。つまり、図１４の方法によれば、フレームメモリ１０１０ａと１０１０ｂという２組のフレームメモリのみで４分割表示を実現することが可能であり、図１２のフレームメモリ１０１０ｃと１０１０ｄは削減可能である。しかし、この方法では、垂直方向に複数の領域が並んでいないとフレームメモリを削減することができず、また、水平方向に多くの領域が並ぶような分割では、必要なフレームメモリの容量は大きいままである。
【００３７】
なお、フレームメモリの削減に関しては、以下のような技術も知られている。
特許文献１は、圧縮されている画像データを復号処理して表示するビデオ表示システムにおいて、フレームメモリを削減し、かわりに容量の小さなラインバッファを使うことでシステムの規模を小さくする技術を記載している。具体的には、画面全体の走査時間ではなく、圧縮されている画像データの復号処理に必要な時間に走査するラインに相当するデータ分の記憶容量を有し復号処理後のデータを順次記憶するラインバッファを設け、このラインバッファに記憶されたデータを順次読み出して１ラインずつ走査する構成が採用されている。しかし、複数の装置からそれぞれ画像データを受信して、１つの画面に複数の画像を合成して表示する場合について特許文献１にはまったく記載がない。
【００３８】
特許文献２は、１つの画面に複数の画像を表示する場合のフレームメモリの容量を抑える技術を記載している。特許文献２に記載の分割マルチ画面表示装置は、例えば複数の監視カメラから出力される複数の非同期なカラー映像信号を、複数の領域に分割された１つの画面に表示する装置である。
【００３９】
この分割マルチ画面表示装置は、複数の入力映像信号に対応してそれぞれ設けられた入力映像信号処理回路ごとに、入力映像信号を、Ａ／Ｄ変換回路のドットクロックを１／Ｎに分周した周波数で、かつＮラインに１回に間引いて、当該入力映像信号処理回路に設けられた２組以上のラインメモリに書き込む。そして、複数の入力映像信号処理回路に共通の同期発生回路に基づく、ドットクロックの２倍以上の周波数で、複数の入力映像信号処理回路それぞれのラインメモリからデータを読み出し、１つの共通のフレームメモリに書き込む。
【００４０】
特許文献２に記載の技術によれば、カメラの台数によらず、１画面分の共通のフレームメモリがあれば、分割表示が実現可能である。しかし、分割表示を行いたい場合に、特許文献２で前提とされている条件が成立するとは限らない。特許文献２では、例えば４分割表示の場合に各画像の水平方向と垂直方向をそれぞれ１／２に縮小して表示することを前提としているため、分周やラインの間引きをしている。しかし、カメラの画素数とモニタの画素数の関係によっては、分割表示が縮小表示を意味するとは限らない。また、特許文献２は、映像入力信号がアナログ信号であることを前提としているが、デジタルカメラなどから出力されたデジタル信号を入力としたい場合も多い。
【特許文献１】特開２００２−１８２６２８号公報
【特許文献２】特開２０００−２３０３３号公報
【発明の開示】
【発明が解決しようとする課題】
【００４１】
本発明の課題は、１つの画面を分割した複数の領域のそれぞれに異なる動画を表示させる場合に、動画のデータを受信して表示する側の装置において必要となる記憶手段の容量を削減することである。
【課題を解決するための手段】
【００４２】
本発明による送信装置は、複数の領域に分割された画面内の１つの領域である特定領域に表示すべき動画のデータを、データの転送レートを保証するプロトコルによって送信する送信装置であり、データパケット生成手段と、判断手段と、送信手段とを備える。前記データパケット生成手段は、前記動画の前記データのうち、前記特定領域を構成するｎ本の水平ラインに相当する部分からデータパケットを生成する。前記判断手段は、前記特定領域のｎ本の前記水平ラインを含む、前記画面の全幅にわたるｎ本の全幅水平ラインの走査のタイミングに対応する期間のうち、前記特定領域の前記画面内での水平方向における位置に対応する期間である送信期間か否かを判断する。前記送信手段は、前記送信期間であると前記判断手段が判断したとき、前記データパケットを送信する。
【００４３】
本発明による受信装置は、複数の領域に分割された画面内のそれぞれの前記領域に表示すべき複数の動画のデータを、データの転送レートを保証するプロトコルによって、複数の送信装置のそれぞれから受信する受信装置であり、通知手段と受信手段と復元手段と記憶手段と表示手段を備える。前記通知手段は、前記複数の送信装置と前記複数の領域との対応関係を、前記複数の送信装置に通知する。前記受信手段は、前記動画の前記データから生成され、前記対応関係により示される前記領域の前記画面内での位置と前記画面の走査順とに基づくタイミングで前記複数の送信装置からそれぞれ送信された、データパケットを受信する。前記復元手段は、１つの前記送信装置から受信した１つ以上の前記データパケットから、前記動画の前記データのうち、前記１つの送信装置に対応する１つの前記領域を構成するｎ本の水平ラインに相当する部分を復元する。前記記憶手段は、復元された前記動画の前記データを記憶する。前記表示手段は、前記記憶手段に記憶された前記動画の前記データに基づいて、前記画面の全幅にわたるｎ本の全幅水平ラインを、走査により表示するよう命令する。そして、前記受信装置は、前記データパケットの受信と、前記動画の前記データの復元および記憶と、前記表示手段による命令とを繰り返すことによって前記画面全体の表示を実現させる。
【００４４】
上記の送信装置と受信装置のうち記憶手段以外の各手段の機能は、プログラムによって実現することも可能であり、本発明の１つの態様によればそのようなプログラムが提供される。
【００４５】
上記の送信装置と受信装置を組み合わせると、画面上で水平方向に並んだ複数（以下、この数をｄｈとして説明する）の領域を通る、あるｎ本の全幅水平ラインに対応するデータは、このｎ本の全幅水平ラインの走査のタイミングに対応する期間にすべて送信され、受信される。その理由は次のとおりである。上記ｄｈ個の領域のそれぞれは、当該領域を特定領域とする送信装置と対応する。よって、上記ｎ本の全幅水平ラインの走査のタイミングに対応する期間は、ｄｈ個の領域に対応するｄｈ個の送信装置それぞれにとっての送信期間を含む。すなわち、ｎ本の全幅水平ラインの走査のタイミングに対応する期間において、ｄｈ個の送信装置のそれぞれが、当該送信装置にとっての特定領域を構成するｎ本の水平ラインに相当する部分からデータパケットを生成し、送信する。受信装置は、ｄｈ個の送信装置それぞれからデータパケットを受信する。
【００４６】
ここで、ｎ本の全幅水平ラインは、水平方向に並んだｄｈ個の領域を通っており、これらｄｈ個の領域それぞれにおけるｎ本の水平ラインを水平方向に並べたものと見なせる。つまり、ｎ本の全幅水平ラインの走査のタイミングに対応する期間において、受信装置は、ｎ本の全幅水平ラインを構成する全部分に対応するデータパケットを受信することになる。
【発明の効果】
【００４７】
このように、本発明によれば、ｎ本の全幅水平ラインに対応するデータは当該ｎ本の全幅水平ラインの走査のタイミングに対応する期間に送信および受信される。換言すれば、走査のタイミングに合わせて、走査に使われるデータが送信および受信される。
【００４８】
つまり、本発明によれば、まだ走査すべきタイミングにならないうちに、走査すべき箇所とは無関係な箇所のデータが先に送信および受信されるということがない。よって、先に受信したそのような無関係な箇所のデータを走査のタイミングが訪れるまで記憶しておくという必要もない。したがって、先に受信したデータを走査のタイミングが訪れるまで記憶しておく必要があった従来の装置に比べて、本発明の受信装置では、記憶手段に必要な容量が削減されている。
【発明を実施するための最良の形態】
【００４９】
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。なお、同様の構成要素には同じ符号または添え字のみ異なる符号を付し、適宜説明を省略する。
まず、図１と図２を参照して第１実施形態を説明する。第１実施形態は、後述の第２実施形態および第３実施形態の共通点を含む。図１は、第１実施形態による送信装置および受信装置の機能ブロック図であり、図２は、第１実施形態において動画を分割表示する全体の流れを示すフローチャートである。
【００５０】
送信装置は３つ以上でもかまわないが、図１には、２つの送信装置１０１ａと１０１ｂのみを示した。図１に示すように、１つの受信装置に複数の送信装置が対応する。送信装置１０１ａは、データパケット生成部１０２ａ、判断部１０３ａ、および送信部１０４ａを備え、送信装置１０１ｂも同様の構成である。受信装置１０５は、通知部１０６、受信部１０７、復元部１０８、記憶部１０９、および表示部１１０を備える。送信装置１０１ａと１０１ｂはいずれも、ネットワークを介して受信装置１０５と接続されている。送信装置１０１ａと１０１ｂは、図１１の送信コントローラ１００５ａ〜１００５ｆと同様に車載用のカメラに取り付けられ、受信装置１０５は図１１の受信コントローラ１００６ａ〜１００６ｃと同様に車載用のモニタに取り付けられる。なお、以下では説明の便宜上、受信装置１０５が運転席のモニタに取り付けられているという前提で説明する。
【００５１】
次に、図２を参照して図１の各部の動作を説明する。まず、ステップＳ１１で、受信装置１０５の通知部１０６が、画面の分割の仕方と、分割された各領域と各送信装置との対応関係を、複数の送信装置１０１ａと１０１ｂにそれぞれに通知する。例えば、上記「画面の分割の仕方」は「６４０×２４０画素の画面を水平方向に２等分して、３２０×２４０画素の２つの領域に分割する」といったものであり、上記「対応関係」は「左側の領域は送信装置１０１ａに対応し、右側の領域は送信装置１０１ｂに対応する」といったものである。
【００５２】
例えば、受信装置１０５がボタン等の入力装置を備えており、入力装置を介して、画面の分割の仕方と対応関係に関する運転者からの指示を受け付けてもよい。あるいは、運転者からの指示を受け付けるための入力装置がモニタに備えられ、受け付けられた指示がモニタから受信装置１０５に送られてもよい。または、カメラの台数が固定されているシステムなどでは、画面の分割の仕方と対応関係がデフォルトで決められており、通知部１０６に記憶されていてもよい。いずれにしろ、画面の分割の仕方と対応関係は、予め何らかの方法で決められ、ステップＳ１１で通知部１０６によりネットワークを介して送信装置１０１ａと１０１ｂに通知される。
【００５３】
すると、ステップＳ２１で送信装置１０１ａと１０１ｂがそれぞれこの通知を受け取る。この通知から、送信装置１０１ａの判断部１０３ａは、送信装置１０１ａに対応する領域が画面内のどの位置であるかということを認識する。同様に、送信装置１０１ｂの判断部１０３ｂは、送信装置１０１ｂに対応する領域が画面内のどの位置であるかということを認識する。
【００５４】
以下では、ステップＳ２１で認識した自送信装置に対応する領域を、当該送信装置にとっての「特定領域」という。送信装置は、１台のカメラに対して１台が対応するので、特定領域は、換言すれば、自送信装置が取り付けられたカメラが撮影した画像を表示すべき領域のことである。つまり、領域と送信装置との対応関係は、領域とカメラとの対応を示すものでもある。また、異なる送信装置にとっての特定領域は互いに異なる。ステップＳ１１で述べた例の場合、ステップＳ２１で判断部１０３ａは「左側の領域が特定領域である」と認識し、判断部１０３ｂは「右側の領域が特定領域である」と認識する。
【００５５】
ステップＳ２１で判断部１０３ａが送信装置１０１ａに対応する特定領域を認識すると、それ以降、送信装置１０１ａではステップＳ２２とＳ２３からなるループが繰り返し実行される。送信装置１０１ａのこの動作と並行して、同様に、ステップＳ２１で判断部１０３ｂが送信装置１０１ｂに対応する特定領域を認識すると、それ以降、送信装置１０１ｂではステップＳ２２とＳ２３からなるループが繰り返される。
【００５６】
ステップＳ２２では、まず、送信装置１０１ａが取り付けられたカメラが撮影したフレーム画像のデータから、データパケット生成部１０２ａが複数のパケットを生成する。以下では、フレーム画像のデータから生成されるパケットを「データパケット」という。データパケットの生成は、フレーム画像を構成する水平ラインのｎ本分を単位として行われる。
【００５７】
ここで、「水平ライン」とは、カメラが撮影した画像、または画面内の１つの領域において、当該画像または当該領域の全幅に渡って画素が水平方向に連なったラインである。水平ラインの垂直方向の大きさは１画素である。また、ｎはフレーム画像の垂直方向の大きさと比べて十分に小さな値であり、例えばフレーム画像が３２０×２４０画素のとき、ｎ＝８などの値が採用される。
【００５８】
データパケットはステップＳ２２で送信部１０４ａにより送信されるが、送信は、その１フレームに対応する期間のうちで特定領域に応じた一部の期間でのみ行われる。以下では、データパケットを送信すべき期間のことを「送信期間」といい、それ以外の期間を「非送信期間」という。送信期間であるか否かは判断部１０３ａが判断する。また、データパケットの生成がｎ本の水平ラインを単位として繰り返し行われるのに合わせ、データパケットの送信もｎ本の水平ラインを単位として繰り返し行われる。送信装置１０１ｂもステップＳ２２では送信装置１０１ａと同様に動作する。
【００５９】
送信期間は、ステップＳ２１で認識した画面の分割の仕方と対応関係から定められる。例えば、送信装置１０１ａにとっての送信期間は、送信装置１０１ａにとっての特定領域を構成するあるｎ本の水平ラインを含むｎ本の全幅水平ラインの走査のタイミングに対応する期間のうち、特定領域の画面内での水平方向における位置に対応する期間である。ここで、「全幅水平ライン」とは、複数の領域に分割される画面において、当該画面の全幅に渡って画素が水平方向に連なったラインである。全幅水平ラインの垂直方向の大きさは１画素である。
【００６０】
ステップＳ１１で述べた例の場合、６４０×２４０画素の画面が水平方向に２等分されているので、画面の全幅である６４０画素に渡るｎ本の全幅水平ラインの走査のタイミングに対応する期間は、左側の領域に対応する期間と右側の領域に対応する期間に分けられる。前者は送信装置１０１ａにとっての送信期間であって送信装置１０１ｂにとっての非送信期間であり、後者は、送信装置１０１ｂにとっての送信期間であって送信装置１０１ａにとっての非送信期間である。
【００６１】
以上のようにしてステップＳ２２では、ｎ本の水平ラインを単位として、データパケットの生成および送信が繰り返され、繰り返しのたびに、送信期間と非送信期間からなるパターンが現れる。なお、ステップＳ２２に相当するより詳細なフローチャートは、第２および第３実施形態と合わせて後に示す。
【００６２】
ステップＳ２２に続くステップＳ２３では、動画の撮影およびデータパケットの送信を終了するよう受信装置１０５から通知されたか否かを判断部１０３ａが判定する。通知があれば図１の処理を終了し、なければステップＳ２２に戻る。また、送信装置１０１ｂもステップＳ２３において同様に動作する。
【００６３】
ステップＳ２２とＳ２３からなるループの繰り返しによって、個々のフレーム画像のデータが、データパケットの形で受信装置１０５に順次送信される。この送信に対応して、受信装置１０５は、複数の送信装置から送られるデータパケットに基づいて、ステップＳ１１で通知した画面の分割の仕方で、モニタに複数の動画を分割表示するよう命令する。
【００６４】
すなわち、ステップＳ１２では、受信部１０７が送信装置１０１ａと１０１ｂからのデータパケットを受信し、それぞれのデータパケットから復元部１０８がフレーム画像のデータを復元して記憶部１０９に記憶し、表示部１１０が記憶部１０９に記憶されたデータに基づいて、分割表示されたフレーム画像をモニタに表示するよう命令する。ステップＳ２２の動作がｎ本の水平ラインを単位として繰り返されるのに対応して、ステップＳ１２の動作はｎ本の全幅水平ラインを単位として繰り返される。なお、ステップＳ１２に相当するより詳細なフローチャートは、第２および第３実施形態と合わせて後に示す。
【００６５】
また、受信側から見ると、データパケットは、ステップＳ１１で通知した対応関係により示される、各送信装置にとっての特定領域の画面内での位置と、画面の走査順とに基づくタイミングで送信されたものだが、対応関係も走査順も受信装置１０５にとっては既知である。つまり、受信装置１０５にとって、データパケットは、既知の情報から決定されるタイミングで送信されてくるものである。
【００６６】
ステップＳ１２において、送信装置１０１ａにとっての送信期間と送信装置１０１ｂにとっての送信期間は互いに異なるので、送信装置１０１ａからのデータパケットの受信と送信装置１０１ｂからのデータパケットの受信は、異なる期間に行われる。それに合わせて、送信装置１０１ａと１０１ｂに対応するフレーム画像の復元が行われる期間もずれる。
【００６７】
ステップＳ１１で示した２分割の例を用いて説明すると、ステップＳ２２で説明したとおり、ｎ本の全幅水平ラインの走査のタイミングに対応する期間のうち、左側の領域に対応する期間には、当該ｎ本の全幅水平ラインのうち左側の領域に含まれる部分、すなわち左側の領域のｎ本の水平ラインに相当するデータパケットが送信装置１０１ａの送信部１０４ａから送信される。一方、ｎ本の全幅水平ラインの走査のタイミングに対応する期間のうち、右側の領域に対応する期間には、当該ｎ本の全幅水平ラインのうち右側の領域に含まれる部分、すなわち右側の領域のｎ本の水平ラインに相当するデータパケットが送信装置１０１ｂの送信部１０４ｂから送信される。
【００６８】
つまり、ｎ本の全幅水平ラインの走査のタイミングに対応する期間で、当該ｎ本の全幅水平ラインに相当するすべてのデータが送信され、受信され、復元され、記憶され、表示のために使われ、当該ｎ本の全幅水平ラインに関する処理が完結する。したがって、受信装置１０５の記憶部１０９は、ｎ本の全幅水平ラインの走査のタイミングに対応する期間を超えてデータを記憶し続ける必要がないため、高々ｎ本の全幅水平ライン分のデータを記憶する容量があれば十分である。上記のとおり、ｎは画面の垂直方向に比べて十分に小さな値が選ばれるので、例えば図１２や図１４で説明した従来の方法と比べて、本実施形態では必要な記憶容量が十分に少ない。記憶部１０９に必要な記憶容量が小さいため、受信装置１０５は比較的安価に製造することが可能であり、装置規模も小さくて済む。
【００６９】
ステップＳ１２で、ｎ本の全幅水平ラインを単位とした繰り返しにより、モニタに１フレーム分の分割表示を命令すると、続くステップＳ１３で受信装置１０５は、動画の分割表示を終了する旨の指示を受け取ったか否かを判断する。例えば、ステップＳ１１で説明した入力装置が、運転者から終了の指示を受け取るのにも用いられ、入力装置を介して終了の指示が入力されていればステップＳ１３からステップＳ１４に進み、そうでなければステップＳ１２に戻る。
【００７０】
こうしてステップＳ１２とＳ１３からなるループを繰り返すことにより、複数のカメラが撮影したそれぞれの動画を１つのモニタの１つの画面上に分割表示することができる。また、ステップＳ１３からステップＳ１４に進んだ場合は、受信装置１０５は、送信装置１０１ａと１０１ｂにそれぞれ、動画の撮影およびデータパケットの送信を終了するよう通知し、図２の処理を終了する。この通知を受けた場合の送信装置１０１ａと１０１ｂの動作は、ステップＳ２３に関して説明したとおりである。
【００７１】
なお、図１の各構成要素のうち、記憶部１０９は専用のラインメモリあるいは汎用のＲＡＭ（Random Access Memory；ランダムアクセスメモリ）などのハードウェアにより実現されるが、それ以外の構成要素は、ハードウェア、ファームウェア、ソフトウェア、あるいはそれらの任意の組み合わせにより実現してもよい。また、各構成要素をそれぞれ別個のハードウェアにより実現してもよく、複数の構成要素を、それらに共通のハードウェアと、それらの構成要素の機能を実現するソフトウェアとによって実現してもよい。
【００７２】
例えば、ＲＯＭ（Read Only Memory；読み出し専用メモリ）などの不揮発性メモリと、ＲＡＭなどの揮発性メモリと、ＣＰＵ（Central Processing Unit；中央処理装置）と、通信インタフェイスとを備え、これらが内部バスで互いに接続されたコンピュータを使うことで、ソフトウェアを使って送信装置１０１ａ、１０１ｂ、および受信装置１０５の機能をそれぞれ実現することができる。すなわち、不揮発性メモリが各構成要素の機能を実現するプログラムを格納し、ＣＰＵがそのプログラムを読み出して揮発性メモリをワーク用に用いながら該プログラムを実行することにより、各構成要素の機能が実現される。また、上記ＲＡＭの一部を記憶部１０９として利用してもよく、プログラムがネットワークあるいはコンピュータ読み取り可能な記憶媒体を介して提供され、ＲＡＭに読み込まれて実行されるのでもよい。
【００７３】
次に、図３〜６を参照して、本発明の第２実施形態について、説明する。第２実施形態は、２台のカメラ１００３ａと１００３ｂで撮影した同じ大きさの２つの動画を水平方向に並べて表示する例である。なお、後述の第３実施形態でも図３を参照するため、図３には第２実施形態とは直接関係しない構成要素も含まれるが、それらの構成要素についてもまとめて説明する。
【００７４】
図３は、第２および第３実施形態に共通のシステム構成図である。このシステムは、３２０×２４０画素の大きさの動画を撮影する、図１２と同様の４台のカメラ１００３ａ〜１００３ｄを含む。カメラ１００３ａ〜１００３ｄはそれぞれ、図１２と同様にフレームメモリ１００７ａ〜１００７ｄを備えている。また、図３においては、共通の垂直同期信号（ＶＳＹＮＣ）がカメラ１００３ａ〜１００３ｄに与えられ、カメラ１００３ａ〜１００３ｄが同期されている。
【００７５】
カメラ１００３ａ〜１００３ｄにはそれぞれ送信装置１０１ａ〜１０１ｄが取り付けられている。送信装置１０１ａは圧縮部２０１ａとパケット生成部２０２ｂを備える。パケット生成部２０２ｂは、図１の送信装置１０１ａ中のデータパケット生成部１０２ａ、判断部１０３ａ、および送信部１０４ａの機能を備える。図３の他の送信装置１０１ｂ〜１０１ｄも、図３の送信装置１０１ａと同様の構成である。これらのうち、カメラ１００３ｃと１００３ｄ、および送信装置１０１ｃと１０１ｄは、第２実施形態では使われない。
【００７６】
図３において、フレームメモリ１００７ａ〜１００７ｄに記憶されたフレーム画像のデータは、それぞれ圧縮部２０１ａ〜２０１ｄによって読み込まれ、圧縮される。圧縮部２０１ａ〜２０１ｄは、ｎ本の水平ラインを単位として、この単位ごとに圧縮後のデータが固定長となるように圧縮する。このような圧縮の方法には、例えば本願の発明者が特願２００６−９６０３５号で提案した方法がある。特願２００６−９６０３５号に記載の方法は、可変長符号化されたデータを圧縮して、圧縮した結果が、ｎ本の水平ラインを単位としたときに固定長となるようにするものである。
【００７７】
以下では説明の便宜上、圧縮前のフレーム画像のデータが、１画素あたりｐバイトという固定長に符号化されており、これが固定の圧縮率ｒ（０＜ｒ≦１）で圧縮されるものとして計算例を示す。例えば、式（２）と同様に１画素あたりｐ＝２バイトで表される動画データにおいて、フレーム画像のうちｎ＝８本の水平ラインを圧縮の単位とする場合、フレーム画像の横幅がｈ＝３２０画素であれば、式（４）より、５１２０バイトごとに固定の圧縮率ｒで圧縮部２０１ａ〜２０１ｄが動画データを圧縮するものとして、以下では説明する。
【００７８】
ｈ×ｎ×ｐ＝３２０×８×２＝５１２０                              （４）
上記のように、可変長符号化されたデータを圧縮して、圧縮した結果が、ｎ本の水平ラインを単位としたときに固定長となるようにする圧縮方法を圧縮部２０１ａ〜２０１ｄが採用する場合であっても、データ量の計算においては、この５１２０バイトを単位として固定の圧縮率ｒで圧縮していると見なして計算することが可能である。
【００７９】
以下の実施形態では、ｎ本の水平ラインを単位としたときに圧縮されたデータが固定長であるという性質を利用するが、具体的な圧縮方法は任意であり、また、圧縮前のフレーム画像のデータが固定長符号化されたものか可変長符号化されたものかは問わない。そこで、以下では説明の簡単化のため、ｎ本の水平ラインに対応するデータが式（４）のような固定長であり、その固定長のデータが固定の圧縮率ｒで圧縮されることにより、固定長の圧縮データになるものとして説明し、計算例を示す。
【００８０】
圧縮部２０１ａ〜２０１ｄによって圧縮されたフレーム画像のデータは、各圧縮部２０１ａ〜２０１ｄから各パケット生成部２０２ａ〜２０２ｄに出力される。パケット生成部２０２ａ〜２０２ｄはいずれも、１３９４バス２０３に接続されている。
【００８１】
パケット生成部２０２ａは、圧縮部２０１ａから出力された圧縮データからデータパケットを生成し、送信装置１０１ａにとっての特定領域の位置に基づいて送信装置１０１ａにとっての送信期間か否かを判断し、送信期間ならば１３９４バス２０３を介してデータパケットを送信する。パケット生成部２０２ａはさらに、後述のダミーパケットを生成し、非送信期間に１３９４バス２０３を介してダミーパケットを送信する。他のパケット生成部２０２ｂ〜２０２ｄも同様である。データパケットとダミーパケットはいずれもアイソクロナスパケットの形式であり、１３９４バス２０３を介してアイソクロナス方式で送信される。
【００８２】
図３のシステムにおいて、図１の受信装置１０５に相当する受信装置１０５が１３９４バス２０３に接続されており、パケット復元部２０４、復号部２０５、および表示部２０６を含む。
【００８３】
パケット復元部２０４は、１３９４バス２０３に接続されており、パケット生成部２０２ａ〜２０２ｄから送られたデータパケットを受信し、データパケットからパケットヘッダを取り除くなどの処理を行い、圧縮データを復元する。図３のパケット復元部２０４は、図１の受信部１０７と、復元部１０８の一部に相当する。
【００８４】
パケット復元部２０４により復元された圧縮データは復号部２０５に出力される。復号部２０５は圧縮データを復号（すなわち解凍）し、復号部２０５に含まれる不図示のラインメモリに記憶する。図３の復号部２０５は、図１の復元部１０８の一部に相当するとともに、復号部２０５の内部の不図示のラインメモリが図１の記憶部１０９に相当する。
【００８５】
表示部２０６は、図１の表示部１１０に相当し、ラインメモリに記憶されたデータにもとづき、モニタの画面に動画の分割表示を行うよう命令する。具体的には、表示部２０６は、ラスタ走査順で画面を走査するよう命令する。その命令により、画面に、複数のカメラが撮影した動画それぞれのフレーム画像を合成したフレーム画像が表示される。第２実施形態では、画面１０１１ａの２分割表示が行われ、第３実施形態では画面１０１１ｂの４分割表示が行われる。
【００８６】
なお、図１の通知部１０６に相当する部分は図３では図示を省略したが、図３の受信装置１０５にも含まれている。また、ＩＤＢ−１３９４プロトコルについて図１３を参照して説明したが、図３においては、送信装置１０１ａ〜１０１ｄと受信装置１０５がいずれも、ＩＤＢ−１３９４プロトコル上のノードに該当し、これらのノードのうちの１つがサイクルマスタとしてバスの初期化の際に選ばれる。
【００８７】
次に、第２実施形態での前提条件を説明する。図３のカメラのうち、カメラ１００３ａと１００３ｂで撮影した動画のみが第２実施形態での表示の対象である。例えば運転者による指示を、入力装置を介して受け付けることによって、受信装置１０５は予め表示の対象を認識している。表示の対象となるこの２つの動画の大きさはいずれも３２０×２４０画素であり、モニタの画面１０１１ａの大きさは６４０×２４０画素である。第２実施形態での目的は、画面１０１１ａを水平方向に２等分し、左側の領域１０１２ａにはカメラ１００３ａが撮影した動画を表示し、右側の領域１０１２ｂにはカメラ１００３ｂが撮影した動画を表示することである。また、カメラ１００３ａとカメラ１００３ｂが撮影した動画は、ｎ＝８本の水平ラインを単位として、図３の圧縮部２０１ａと２０１ｂによってそれぞれ圧縮され、パケット生成部２０２ａと２０２ｂにそれぞれ出力される。
【００８８】
次に、図４を参照して第２実施形態におけるパケットの送信方法について説明する。
図４の上段の２つの矩形は、３２０×２４０画素の大きさのフレーム画像のデータが、カメラ１００３ａと１００３ｂからそれぞれ送信装置１０１ａと１０１ｂを介して受信装置１０５へと送信されることと、そのデータが８ラインを単位として処理されることを示す。
【００８９】
図４の（ａ）〜（ｃ）は、いずれも横軸が時間軸であり、小さな矩形がパケットを示している。パケットの種類は、（ａ）ではサイクルスタートパケット、（ｂ）と（ｃ）ではアイソクロナスパケットである。また、（ｂ）と（ｃ）においては、矩形の横幅がそのパケットの送信にかかる時間を示し、矩形の縦幅がそのパケットの大きさを示している。つまり、（ｃ）では（ｂ）の２倍の帯域幅を各ノードに割り当てることによって、同じ量のデータを１／２の時間で集中的に送信している。図４の（ａ）〜（ｃ）を詳細に説明すれば以下のとおりである。
【００９０】
図４の（ａ）は、１２５μｓごとにサイクルマスタからサイクルスタートパケットが送信される様子を示し、図１３と同様である。
図４の（ｂ）は、図３のように画面１０１１ａを領域１０１２ａと１０１２ｂに分割してカメラ１００３ａと１００３ｂで撮影した動画をそれぞれ表示するために、図１３と同様の従来の方法を採用した場合のパケットの送信の仕方を示す図である。動画のデータが非圧縮なら式（３）のように、５７６バイトの動画データを含むアイソクロナスパケットが各サイクルで送信される。動画のデータが圧縮されていれば、パケットの大きさは圧縮率ｒに応じて５７６バイトよりも小さくなる。なお、パケットを表す矩形の下の符号ａとｂは、それぞれカメラ１００３ａと１００３ｂの動画データを含むパケットであることを表す。
【００９１】
図４の（ｃ）は、第２実施形態におけるパケットの送信方法を示す。第２実施形態では、ダミーデータから生成された、データパケットと同じ大きさのパケットであるダミーパケットも使用される。ダミーデータは無効なデータであって、例えばビット値“０”のみからなるデータであり、ダミーパケットはダミーデータの前後にアイソクロナスパケットヘッダとＣＲＣ（Cyclic Redundancy Check；巡回冗長検査）をそれぞれ付加してアイソクロナスパケットの形式に整えたものである。なお、パケットを表す矩形の下の符号ａとｂは、それぞれ送信装置１０１ａと１０１ｂから送信されたパケットであることを表す。
【００９２】
ダミーパケットを送信する理由は次のとおりである。第２実施形態で利用するＩＤＢ−１３９４プロトコルのアイソクロナス転送では、各ノードが、割り当てられた帯域幅に応じた大きさのアイソクロナスパケットを各サイクルで定期的に送信することによって、一定の転送レートでのデータの転送を実現している。つまり、アイソクロナス転送を行うノードは、均等な大きさのパケットを定期的に送信する。
【００９３】
このアイソクロナス転送の方法を変更せずにそのまま利用するために、本実施形態では、パケット生成部２０２ａと２０２ｂが、非送信期間に相当するサイクルにおいても、割り当てられた帯域幅に応じた大きさのアイソクロナスパケットであるダミーパケットを送信している。また、ＩＤＢ−１３９４プロトコルは非常に高速なデータ転送をサポートしており、比較的帯域に余裕があることから、ダミーパケットを採用しても特に害は生じない。
【００９４】
図４の（ｂ）では、いずれのサイクルにおいても、カメラ１００３ａが撮影した動画に対応するデータパケットと、カメラ１００３ｂが撮影した動画に対応するデータパケットとが送信されていることが特徴的である。一方、図４の（ｃ）では、期間によって、送信されるパケットの種類が異なる。また、図４の（ｂ）と（ｃ）を比較すると、パケットの大きさが異なる。
【００９５】
すなわち、送信装置１０１ａにとっての送信期間である一連の数サイクルの間は、送信装置１０１ａのパケット生成部２０２ａがデータパケットを送信する一方で、送信装置１０１ｂのパケット生成部２０２ｂはダミーパケットを送信する。逆に、送信装置１０１ｂにとっての送信期間である一連の数サイクルの間は、送信装置１０１ａのパケット生成部２０２ａがダミーパケットを送信する一方で、送信装置１０１ｂのパケット生成部２０２ｂはデータパケットを送信する。そして、送信装置１０１ａにとっての送信期間と送信装置１０１ｂにとっての送信期間とが交互に繰り返される。
【００９６】
また、図４の（ｂ）と（ｃ）で圧縮率ｒが同じだという前提で比較すると、図４の（ｃ）では、図４の（ｂ）の２倍の大きさのパケットが送信される。したがって、カメラ１００３ａが撮影した動画のデータだけに注目すると、図４の（ｂ）と比べて１／２の長さの時間に集中的に送信される。同様に、カメラ１００３ｂが撮影した動画のデータだけに注目すると、図４の（ｂ）と比べて１／２の長さの時間に集中的に送信される。なお、後述の切り捨てなどの影響があるため、正確には２倍（あるいは１／２）とならないこともある。また、パケットの大きさの比較は、ヘッダやＣＲＣを無視した、ペイロード部のデータの量で比較している。
【００９７】
次に、図５を参照して、第２実施形態におけるデータの転送順についてより詳細に説明する。図５は、受信側で表示される６４０×２４０画素の画面１０１１ａに含まれる各部分のデータがどの順番で送信されて合成されるのかを説明する図である。
【００９８】
第２実施形態では、ｎ＝８本の水平ラインをまとめた３２０×８画素の単位で、各フレーム画像が圧縮され、送信される。この圧縮および送信の単位は、受信および復元の単位ともなる。また、以下では水平ラインを上から順に０ライン目、１ライン目、……と数えることにする。
【００９９】
ある特定のフレームに注目すると、図５に示すように、まずカメラ１００３ａが撮影したフレーム画像のうち０〜７ライン目のデータを圧縮部２０１ａが圧縮し、パケット生成部２０２ａが圧縮データからデータパケットを生成して送信する。この期間は、送信装置１０１ａにとっての送信期間であり、送信装置１０１ｂにとっての非送信期間なので、パケット生成部２０２ｂはダミーパケットを送信する。
【０１００】
次に、送信装置１０１ｂにとっての送信期間となり、カメラ１００３ｂが撮影したフレーム画像のうち０〜７ライン目のデータを圧縮部２０１ｂが圧縮し、パケット生成部２０２ｂが圧縮データからデータパケットを生成して送信する。この期間は、送信装置１０１ａにとっての非送信期間なので、パケット生成部２０２ａはダミーパケットを送信する。
【０１０１】
この２つの期間を合わせた期間が、０〜７ライン目の全幅水平ラインの走査のタイミングに対応する期間である。この２つの期間で受信装置１０５により受信され、復元、復号、および記憶されたデータにもとづき、画面１０１１ａの０〜７ライン目の全幅水平ラインが表示される。
【０１０２】
続いて、再度送信装置１０１ａにとっての送信期間となり、カメラ１００３ａが撮影したフレーム画像のうち８〜１５ライン目のデータを圧縮部２０１ａが圧縮し、パケット生成部２０２ａが圧縮データからデータパケットを生成して送信する。この期間は、送信装置１０１ｂにとっての非送信期間なので、パケット生成部２０２ｂはダミーパケットを送信する。
【０１０３】
そして、再度送信装置１０１ｂにとっての送信期間となり、カメラ１００３ｂが撮影したフレーム画像のうち８〜１５ライン目のデータを圧縮部２０１ｂが圧縮し、パケット生成部２０２ｂが圧縮データからデータパケットを生成して送信する。この期間は、送信装置１０１ａにとっての非送信期間なので、パケット生成部２０２ａはダミーパケットを送信する。
【０１０４】
この２つの期間を合わせた期間が、８〜１５ライン目の全幅水平ラインの走査のタイミングに対応する期間である。この２つの期間で受信装置１０５に受信され、復元、復号、および記憶されたデータにもとづき、画面１０１１ａの８〜１５ライン目の全幅水平ラインが表示される。
【０１０５】
以下同様にして、送信装置１０１ａと１０１ｂそれぞれにとっての送信期間が交互に繰り返されて、２３９ライン目までの全てのデータが送信され、１つのフレームにおいて２台のカメラが撮影した２つのフレーム画像の送信が完了する。また、受信装置１０５の側では、カメラ１００３ａと１００３ｂが撮影したフレーム画像を合成した画面１０１１ａの表示が完成する。
【０１０６】
次に、図６のフローチャートを参照して、第２実施形態におけるフレーム画像の送信から表示までの流れを説明する。図６の左側に示したステップＳ１０１〜Ｓ１０３のフローチャートは、図２のステップＳ２２に対応し、図６の右側に示したステップＳ２０１〜Ｓ２０４のフローチャートは、図２のステップＳ１２に対応する。
【０１０７】
つまり、図６のフローチャートの処理が実行される前に、第２実施形態においては、図２のステップＳ１１で、「６４０×２４０画素の画面１０１１ａをそれぞれ３２０×２４０画素の領域１０１２ａと１０１２ｂに分割する」という画面の分割の仕方と、「領域１０１２ａには送信装置１０１ａが対応し、領域１０１２ｂには送信装置１０１ｂが対応する」という対応関係が通知され、通知された内容がステップＳ２１で送信装置１０１ａと１０１ｂに認識されている。ステップＳ１１の通知は、例えばアシンクロナスパケットの送信により行われてもよい。
【０１０８】
図６の左側に示したフローチャートは、送信装置１０１ａおよび１０１ｂにより実行される。まず、ステップＳ１０１において、カメラ１００３ａが撮影した動画のフレーム画像のうち、（ｊ×８）ライン目から（（ｊ＋１）×８−１）ライン目までの８ライン分のデータを、圧縮部２０１ａが圧縮する。そして、パケット生成部２０２ａが、圧縮データからデータパケットを生成し、１３９４バス２０３を介して受信装置１０５へ送信する。ここでｊは０以上の整数であり、初期値は０である。また、ステップＳ１０１でパケット生成部２０２ｂはダミーパケットを受信装置１０５へ送信する。ステップＳ１０１は、送信装置１０１ａにとっての送信期間であり、送信装置１０１ｂにとっての非送信期間である。
【０１０９】
なお、上記のとおり、圧縮部２０１ａにより圧縮された８本の水平ライン分の圧縮データは固定長である。すなわち、ステップＳ１０１〜Ｓ１０３からなるループが繰り返されるたびに、毎回ステップＳ１０１では固定長の圧縮データから、固定長のデータパケットが生成される。８ライン分のデータは、複数に分割されて、複数のデータパケットが生成されてもよい。生成するデータパケットの数は、後述の計算例に示すように、画面の分割の仕方から決めることができる。
【０１１０】
次に、ステップＳ１０２において、カメラ１００３ｂが撮影した動画のフレーム画像のうち、（ｊ×８）ライン目から（（ｊ＋１）×８−１）ライン目までの８ライン分のデータを、圧縮部２０１ｂが圧縮する。そして、パケット生成部２０２ｂが、圧縮データからデータパケットを生成し、１３９４バス２０３を介して受信装置１０５へ送信する。また、ステップＳ１０２でパケット生成部２０２ａはダミーパケットを受信装置１０５へ送信する。ステップＳ１０２は、送信装置１０１ａにとっての非送信期間であり、送信装置１０１ｂにとっての送信期間である。
【０１１１】
続いて、ステップＳ１０３において、縦幅分の全部の水平ラインが送信済みか否かを、パケット生成部２０２ａと２０２ｂがそれぞれ判断する。第２実施形態では、カメラが撮影した動画の垂直方向の大きさが２４０画素なので、ステップＳ１０３では、２３９ライン目まで送信済みか否かが判断される。パケット生成部２０２ａと２０２ｂによる判断は一致する。
【０１１２】
ステップＳ１０３において送信済みと判断されれば、現在のフレームのフレーム画像は、カメラ１００３ａが撮影したものもカメラ１００３ｂが撮影したものも送信済みであるから図６の処理を終了し、送信済みでないと判断されれば、送信装置１０１ａと１０１ｂのそれぞれにおいて上記のｊの値を１増やして、ステップＳ１０１に戻る。
【０１１３】
一方、図６の右側のフローチャートは、受信装置１０５により実行される。まず、ステップＳ２０１で、カメラ１００３ａが撮影したフレーム画像のうち（ｊ×８）ライン目から（（ｊ＋１）×８−１）ライン目までの８ライン分のデータから生成されたデータパケットを、パケット復元部２０４が受信し、ヘッダ等を取り除いて圧縮データを復元する。右側のフローチャートでも、ｊは初期値を０とする整数である。そして、復号部２０５が圧縮データを復号してラインメモリに記憶する。ステップＳ２０１で受信されるデータパケットは、ステップＳ１０１でパケット生成部２０２ａが送信したものである。
【０１１４】
また、ステップＳ２０１でパケット復元部２０４は、ステップＳ１０１でパケット生成部２０２ｂが送信したダミーパケットも受信するが、ダミーパケットは後段の復号部２０５へは出力せずに廃棄する。データパケットかダミーパケットかの判別には、例えばアイソクロナスパケットヘッダに含まれるチャンネルＩＤを用いてもよい。
【０１１５】
次にステップＳ２０２で、カメラ１００３ｂが撮影したフレーム画像のうち（ｊ×８）ライン目から（（ｊ＋１）×８−１）ライン目までの８ライン分のデータから生成されたデータパケットを、パケット復元部２０４が受信し、ヘッダ等を取り除いて圧縮データを復元する。そして、復号部２０５が圧縮データを復号してラインメモリに記憶する。ステップＳ２０２で受信されるデータパケットは、ステップＳ１０２でパケット生成部２０２ｂが送信したものである。また、ステップＳ２０２でパケット復元部２０４は、ステップＳ１０２でパケット生成部２０２ａが送信したダミーパケットも受信するが、ダミーパケットは廃棄する。
【０１１６】
続いてステップＳ２０３で、ラインメモリに記憶されたデータに基づいて、表示部２０６が、モニタの画面１０１１ａに画像を表示するための命令、つまり、ラスタ走査の命令を発行する。以下では、ラスタ走査順が、画面の左上隅から始まり、１つの全幅水平ラインを左から右へと走査し、全幅水平ラインの右端に達したら、１つ下の全幅水平ラインに移ることを繰り返して、画面の右下隅に至るという順序であるとする。
【０１１７】
第２実施形態では、図５から分かるように、画面１０１１ａの全幅水平ラインは水平方向において６４０画素に渡るラインであり、領域１０１２ａと１０１２ｂそれぞれの水平ラインは、いずれも水平方向において３２０画素に渡るラインである。そして、画面１０１１ａのｋライン目の全幅水平ラインは、領域１０１２ａのｋライン目と領域１０１２ｂのｋライン目とからなる。すなわち、ステップＳ２０３では、上記のラスタ走査順で、（ｊ×８）ライン目から（（ｊ＋１）×８−１）ライン目までの全幅水平ラインを描画するよう、表示部２０６がモニタに命令する。なお、ここで「描画」とはラスタ走査により表示することを表す。
【０１１８】
そして、続くステップＳ２０４において、縦幅分、すなわち０〜２３９ライン目の全部の全幅水平ラインの描画を命令し終えたか否かを表示部２０６が判断し、終了していれば図６の処理を終了し、そうでなければ上記のｊの値を１増やしてステップＳ２０１に戻る。
【０１１９】
以上が図６の説明だが、送信装置１０１ａと送信装置１０１ｂと受信装置１０５は個別に図６の動作を行っており、互いに同期するための処理などは行っていない。このように同期処理が不要なのは、ＩＤＢ−１３９４プロトコルによるアイソクロナス転送を使用しているためである。このことについて具体的な数値の例を挙げて次に説明する。
【０１２０】
式（５）は、ｎ本の全幅水平ラインの走査のタイミングに対応する期間の長さを示すサイクル数ｘを計算する式の一例である。
ｘ＝ｆｌｏｏｒ（ｆｌｏｏｒ（１÷ｃ÷ｆ）÷（ｖｅ÷ｎ））          （５）
ｆｌｏｏｒ（ｍ）：数ｍを切り捨てた整数
ｖｅ：画面全体の垂直方向の画素数
ｎ：圧縮および送信の単位となる水平ラインのライン数（ｖｅの約数とする）
第２実施形態では、式（５）のサイクル数ｘが、図６の左側と右側のそれぞれのフローチャートにおける１回のループにかかるサイクル数である。式（５）に具体的な数値を当てはめて説明すると、次のとおりである。１秒あたりのサイクル数は（１÷ｃ）回であるから、１つのフレームあたりのサイクル数は、（１÷ｃ÷ｆ）回である。ｃ＝１２５μｓでｆ＝３０ｆｐｓのとき、
１÷ｃ÷ｆ＝２６６．６……サイクル
となり割り切れない。したがって、これを切り捨てて、１フレームあたり２６６サイクルを使うことができる。
【０１２１】
一方、フレーム画像のデータは、ｎ＝８ラインを単位として、
ｖｅ÷ｎ＝２４０÷８＝３０回
繰り返して処理される。つまり、図６の左側と右側のそれぞれのフローチャートにおいて
ループが３０回繰り返される。
【０１２２】
すなわち、１フレームにおいて使えるのは２６６サイクルであり、それを３０回に分配することになるから、１回のループに割り当てられるのは、
２６６÷３０＝８．８……サイクル
である。これを切り捨てて、１回のループに８サイクルを割り当てる。つまり、ｘ＝８である。
【０１２３】
ここで、ｘ＝８サイクルは、ステップＳ１０１とＳ１０２で使われるサイクル数の合計であり、第２実施形態では、カメラ１００３ａと１００３ｂの撮影する動画の大きさはいずれも３２０×２４０画素で等しいから、８サイクルを２等分した４サイクルが、それぞれステップＳ１０１とステップＳ１０２に割り当てられる。これを式に表せば、式（６）のようになる。
【０１２４】
ｙ＝ｆｌｏｏｒ（ｘ÷ｄｈ）                                        （６）
ｄｈ：水平方向の画面分割数
つまり、ステップＳ１０１の動作の詳細は次のとおりである。まず、カメラ１００３ａが撮影したフレーム画像の８ライン分のデータを圧縮部２０１ａが圧縮する。そして、パケット生成部２０２ａは圧縮データを４等分し、その４等分されたデータから４つのデータパケットを生成し、１サイクルに１つずつ、４サイクルかけて、４つのデータパケットを送信する。一方、パケット生成部２０２ｂは、この４サイクルの間、毎回ダミーパケットを送信する。
【０１２５】
なお、圧縮率ｒが一定であり、圧縮前のデータは例えば式（２）に示すように１画素あたりのバイト数ｐが２と固定されているので、この４つのデータパケットに含まれる動画データの大きさはそれぞれ、式（７）に示す固定長ｓである。
【０１２６】
ｓ＝ｈ×ｎ×ｐ×ｒ÷ｙ                                            （７）
ｈ，ｐ：式（１）と同様
ステップＳ１０２も同様に４サイクルかかり、この４サイクルの間、パケット生成部２０２ａは毎回ダミーパケットを送信し、パケット生成部２０２ｂはデータパケットを送信する。
【０１２７】
したがって、例えばステップＳ１０１からステップＳ１０２への移行に際して、送信装置１０１ａのパケット生成部２０２ａが８ラインに相当するデータパケットを送信し終わったことを送信装置１０１ｂに認識させるために、送信装置１０１ａが送信装置１０１ｂに通知を行うなどの同期処理は不要である。送信装置１０１ａと１０１ｂが独立に、単にサイクル数を数えるだけで、ステップＳ１０１からステップＳ１０２へ移行すべきか否かという判定も、ステップＳ１０２からステップＳ１０３へ移行すべきか否かという判定も、行うことが可能である。さらに、ステップＳ１０３の判定を、サイクル数のカウントに基づいて行うことも可能である。
【０１２８】
同様に、受信側でも上記の式（５）と（６）から、ステップＳ２０１とＳ２０２にはそれぞれ４サイクルずつかかることが予め判明しているので、ステップＳ２０１からステップＳ２０２へ移行すべきか否かという判定も、ステップＳ２０２からステップＳ２０３へ移行をすべきか否かという判定も、単にサイクル数を数えるだけで行うことができる。
【０１２９】
また、１〜４サイクル目、９〜１２サイクル目、１７〜２０サイクル目……がステップＳ１０１とＳ２０１に該当し、５〜８サイクル目、１３〜１６サイクル目、２１〜２４サイクル目……がステップＳ１０２とＳ２０２に該当するということは、図２のステップＳ１１で通知される対応関係から、送信装置１０１ａ、１０１ｂ、および受信装置１０５のそれぞれが、計算によって認識することが可能である。
【０１３０】
ただし、どのサイクルを１サイクル目として数えるべきかについては、送信装置１０１ａ、１０１ｂ、および受信装置１０５が予め共通に認識している必要がある。そのような共通の認識を実現する方法は任意である。例えば、バスの初期化の際にサイクルマスタ（送信装置１０１ａ、１０１ｂ、および受信装置１０５のうちのいずれか）が全ノードに対して、サイクル数のカウントをクリアするよう指示するクリア指示パケットをブロードキャストしてもよい。あるいは、受信装置１０５が図２のステップＳ１１においてさらに、クリア指示パケットのブロードキャストを行ってもよい。
【０１３１】
このように予め何らかの方法によって、どのサイクルを１サイクル目として数えるべきかについての同期をとっておけば、その後はサイクルマスタがサイクルスタートパケットを送信する以外に、同期のための特段の処理は不要である。つまり、各ノード（送信装置１０１ａ、１０１ｂ、および受信装置１０５）は、独立にサイクル数、すなわち送信されたサイクルスタートパケットの数を数えるだけで、ノード間の同期が保たれる。
【０１３２】
なお、より正確には、図６では省略されているステップがある。式（５）と（６）は切り捨てを含むため、１つのフレームに対応するデータが、そのフレームの時間より短い時間で送信し終わることがある。上記の例だと、ｘ＝８サイクルを
ｖｅ÷ｎ＝２４０÷８＝３０回
繰り返すことで、１つのフレームに関する処理が完了する。また、フレームレートはｆ＝３０ｆｐｓである。したがって、式（８）に示すサイクル数ｚで、１秒に相当する全データの送信が完了する。
【０１３３】
ｚ＝ｘ×（ｖｅ÷ｎ）×ｆ                                          （８）
つまり、この例では、
ｚ＝８×３０×３０＝７２００サイクル                              （９）
で１秒に相当する全データ、すなわち３０フレーム分の全データの送信が完了する。
【０１３４】
一方で、１サイクルは１２５μｓなので、１秒のサイクル数は８０００である。よって、８０００と７２００の差の８００サイクル分だけ、１秒ごとにずれが生じる。
ずれをなくす調整のために、この８００サイクルは、例えば、８０００サイクルの中に均等に分散させて、送信装置１０１ａと１０１ｂ双方にとっての非送信期間と定めてもよい。図６では、このようなずれの調整のためのサイクルなのか、一方の送信装置にとってのみ送信期間となる通常のサイクルなのか、という判別処理等は省略している。しかし、８００サイクルを８０００サイクルの中に分散させるパターンを予め定めておき、例えばパケット生成部２０２ａや２０２ｂのうち図１の判断部１０３ａや１０３ｂに相当する部分がそのパターンを記憶していれば、図６の処理中に、送信装置１０１ａと送信装置１０１ｂと受信装置１０５が、通信をともなうような同期処理を行うことなく、それぞれ独立して単にサイクル数を数えるだけで、図６の処理が同期されて行われることは明らかである。
【０１３５】
このように、所定の大きさのパケットを１２５μｓという所定の間隔で送信することを可能にすることで帯域を保証するＩＤＢ−１３９４プロトコルのアイソクロナス転送を使うことによって、送信装置が、画面の分割の仕方から一意に決まるタイミングで、一定の大きさのパケットを送信するだけで、同期処理を行うことなく画面の分割表示を行うことが可能である。また、図６のステップＳ２０１〜Ｓ２０４から分かるように、全幅水平ラインに換算して高々８ライン分のラインメモリ（図１の記憶部１０９に相当）を復号部２０５が含むだけで、画面１０１１ａの２分割表示が可能となる。従来の手法では３２０×２４０画素のフレーム画像２枚分のフレームメモリが必要だったことと比較すると、第２実施形態で必要なラインメモリに対応する画素数は６４０×８画素なので、大幅なコストダウンが可能である。
【０１３６】
なお、１画素あたりのバイト数ｐが２で、圧縮率ｒが０．５の場合について、データパケットの大きさを、図４の（ｂ）に示した従来の方式と、図４の（ｃ）に示した本発明の第２実施形態とで比較すると、従来は、式（３）に圧縮率ｒをかけて、
５７６×０．５＝２８８バイト
である。一方、第２実施形態では、式（４）から５１２０バイトと分かる８ライン分のデータが、圧縮されて０．５倍になり、４サイクルに分けて送信されるので、式（７）にも示したとおり
５１２０×０．５÷４＝６４０バイト
である。ただし、上記の２８８バイトは、乗算と除算のみから単純に求めたものであって、式（５）や（６）のような切り捨ての影響を含まないのに対し、上記の６４０バイトは式（５）や（６）の切り捨ての影響を含む。
【０１３７】
そこで、この影響を調整してから両者を比較する。式（９）のとおり、１秒間の８０００サイクル中、データパケットの送信は７２００サイクルで済んでしまう。よって、１サイクルあたりの平均をとれば、
６４０×７２００÷８０００＝５７６バイト
となる。これを従来の２８８バイトと比較すると、ちょうど２倍である。すなわち、切り捨てなどの細かい影響を無視して比較すると、本発明の第２実施形態では、画面の分割数である２に合わせて１つのデータパケットの大きさを従来の２倍とし、その分、各領域のデータが従来の１／２の長さの時間で集中して送信されるようにしている。
【０１３８】
次に、図３および図７〜９を参照して、本発明の第３実施形態について説明する。第３実施形態では、水平方向および垂直方向にそれぞれ画面を２分割して、合計４つの領域に画面を分割する。
【０１３９】
第３実施形態におけるシステム構成は、図３に示したとおりである。第３実施形態では、カメラ１００３ｃと１００３ｄおよび、送信装置１０１ｃと１０１ｄも使われる。
図７は、第３実施形態におけるパケットの送信方法を説明する図である。
【０１４０】
図７の上段の４つの矩形は、３２０×２４０画素の大きさのフレーム画像のデータが、カメラ１００３ａ〜１００３ｄのそれぞれから送信装置１０１ａ〜１０１ｄを介して受信装置１０５へと送信されることと、そのデータが８ラインを単位として処理されることを示す。
【０１４１】
図７の（ａ）は、１２５μｓごとにサイクルマスタからサイクルスタートパケットが送信される様子を示し、図１３や図４と同様である。
図７の（ｂ）は、図３のように画面１０１１ｂを領域１０１２ａ〜１０１２ｄに分割して、カメラ１００３ａ〜１００３ｄで撮影した動画をそれぞれ表示するために、図１３と同様の従来の方法を採用した場合のパケットの送信の仕方を示す図である。動画のデータが非圧縮なら式（３）のように、５７６バイトの動画データを含むアイソクロナスパケットが各サイクルで送信される。動画のデータが圧縮されていれば、パケットの大きさは圧縮率ｒに応じて５７６バイトよりも小さくなる。すなわち、図７の（ｂ）は、図１３とまったく同様であり、各サイクルでパケットの数が増えた以外は図４の（ｂ）とも同様である。また、パケットを表す矩形の下の符号ａ〜ｄは、それぞれカメラ１００３ａ〜１００３ｄの動画データを含むパケットであることを表す。
【０１４２】
図７の（ｃ）は、第３実施形態におけるパケットの送信方法を示す。図７の（ｂ）ではいずれのサイクルにおいてもカメラ１００３ａ〜１００３ｄが撮影した動画にそれぞれ対応する４つのデータパケットが送信されるのに対し、図７の（ｃ）では、期間によって、送信されるパケットの種類が異なる。また、図７の（ｂ）と（ｃ）を比較すると、パケットの大きさが異なる。なお、パケットを表す矩形の下の符号ａ〜ｄは、それぞれ送信装置１０１ａ〜１０１ｄから送信されたパケットであることを表す。
【０１４３】
すなわち、送信装置１０１ａにとっての送信期間である一連の数サイクルの間は、送信装置１０１ａのパケット生成部２０２ａがデータパケットを送信する一方で、他の送信装置１０１ｂ〜１０１ｄのパケット生成部２０２ｂ〜２０２ｄはダミーパケットを送信する。また、送信装置１０１ｂにとっての送信期間である一連の数サイクルの間は、送信装置１０１ｂのパケット生成部２０２ｂがデータパケットを送信する一方で、他の送信装置１０１ａ、１０１ｃ、１０１ｄのパケット生成部２０２ａ、２０２ｃ、２０２ｄはダミーパケットを送信する。同様に、送信装置１０１ｃにとっての送信期間である一連の数サイクルの間は、送信装置１０１ｃのパケット生成部２０２ｃがデータパケットを送信する一方で、他の送信装置１０１ａ、１０１ｂ、１０１ｄのパケット生成部２０２ａ、２０２ｂ、２０２ｄはダミーパケットを送信する。そして、送信装置１０１ｄにとっての送信期間である一連の数サイクルの間は、送信装置１０１ｄのパケット生成部２０２ｄがデータパケットを送信する一方で、他の送信装置１０１ａ〜１０１ｃのパケット生成部２０２ａ〜２０２ｃはダミーパケットを送信する。
【０１４４】
こうして、送信装置１０１ａ〜１０１ｄのそれぞれにとっての送信期間が順番に繰り返される。ある１つの送信装置にとっての送信期間は、他の３つの送信装置にとっての非送信期間である。
【０１４５】
また、図７の（ｂ）と（ｃ）で圧縮率ｒが同じだという前提で比較すると、図７の（ｃ）では、図７の（ｂ）の４倍の大きさでパケットが送信される。したがって、カメラ１００３ａが撮影した動画のデータだけに注目すると、図７の（ｂ）と比べて１／４の長さの時間に集中的に送信される。カメラ１００３ｂ〜１００３ｄについても同様である。なお、第２実施形態の場合と同じく、式（５）や（６）の切り捨ての影響で正確には４倍（あるいは１／４）とならないこともある。
【０１４６】
図８は、受信側で表示される６４０×４８０画素の画面１０１１ｂに含まれる各部分のデータがどの順番で送信されて合成されるのかを説明する図である。画面１０１１ｂは、上下および左右にそれぞれ２等分されており、４つの領域１０１２ａ〜１０１２ｄはいずれも３２０×２４０画素の大きさである。なお、左上の領域１０１２ａはカメラ１００３ａが撮影した動画を表示すべき領域であり、右上の領域１０１２ｂはカメラ１００３ｂが撮影した動画を表示すべき領域であり、左下の領域１０１２ｃはカメラ１００３ｃが撮影した動画を表示すべき領域であり、右下の領域１０１２ｄはカメラ１００３ｄが撮影した動画を表示すべき領域である。
【０１４７】
第３実施形態でも、第２実施形態と同様に、ｎ＝８本の水平ラインをまとめた３２０×８画素を単位として、各フレーム画像が圧縮され、送信される。
ある特定のフレームに注目すると、図８に示すように、まずカメラ１００３ａが撮影したフレーム画像のうち０〜７ライン目のデータを圧縮部２０１ａが圧縮し、パケット生成部２０２ａが圧縮データからデータパケットを生成して送信する。この期間は、送信装置１０１ａにとっての送信期間であり、送信装置１０１ｂ〜１０１ｄにとっての非送信期間なので、パケット生成部２０２ｂ〜２０２ｄはダミーパケットを送信する。
【０１４８】
次に、送信装置１０１ｂにとっての送信期間となり、カメラ１００３ｂが撮影したフレーム画像のうち０〜７ライン目のデータを圧縮部２０１ｂが圧縮し、パケット生成部２０２ｂが圧縮データからデータパケットを生成して送信する。この期間は、送信装置１０１ａ、１０１ｃ、１０１ｄにとっての非送信期間なので、パケット生成部２０２ａ、２０２ｃ、２０２ｄはダミーパケットを送信する。
【０１４９】
続いて、再度送信装置１０１ａにとっての送信期間となり、カメラ１００３ａが撮影したフレーム画像のうち８〜１５ライン目のデータを圧縮部２０１ａが圧縮し、パケット生成部２０２ａが圧縮データからデータパケットを生成して送信する。この期間は、送信装置１０１ｂ〜１０１ｄにとっての非送信期間なので、パケット生成部２０２ｂ〜２０２ｄはダミーパケットを送信する。
【０１５０】
そして、再度送信装置１０１ｂにとっての送信期間となり、カメラ１００３ｂが撮影したフレーム画像のうち８〜１５ライン目のデータを圧縮部２０１ｂが圧縮し、パケット生成部２０２ｂが圧縮データからデータパケットを生成して送信する。この期間は、送信装置１０１ａ、１０１ｃ、１０１ｄにとっての非送信期間なので、パケット生成部２０２ａ、２０２ｃ、２０２ｄはダミーパケットを送信する。
【０１５１】
以下同様にして、送信装置１０１ａと１０１ｂそれぞれにとっての送信期間が交互に繰り返されて、画面１０１１ｂの上半分にある領域１０１２ａと１０１２ｂのそれぞれ２３９ライン目までの全てのデータが送信され、画面１０１１ｂの上半分が表示される。その後、画面１０１１ｂの下半分にある領域１０１２ｃと１０１２ｄのデータの送信が始まる。
【０１５２】
すなわち、送信装置１０１ｃにとっての送信期間となり、カメラ１００３ｃが撮影したフレーム画像のうち０〜７ライン目のデータを圧縮部２０１ｃが圧縮し、パケット生成部２０２ｃが圧縮データからデータパケットを生成して送信する。ここで圧縮の対象となるデータは、画面１０１１ｂの２４０〜２４７ライン目の全幅水平ラインのうち、左半分の部分に対応するデータである。また、この期間は、送信装置１０１ａ、１０１ｂ、１０１ｄにとっての非送信期間なので、パケット生成部２０２ａ、２０２ｂ、２０２ｄはダミーパケットを送信する。
【０１５３】
次に、送信装置１０１ｄにとっての送信期間となり、カメラ１００３ｄが撮影したフレーム画像のうち０〜７ライン目のデータを圧縮部２０１ｄが圧縮し、パケット生成部２０２ｄが圧縮データからデータパケットを生成して送信する。ここで圧縮の対象となるデータは、画面１０１１ｂの２４０〜２４７ライン目の全幅水平ラインのうち、右半分の部分に対応するデータである。また、この期間は、送信装置１０１ａ〜１０１ｃにとっての非送信期間なので、パケット生成部２０２ａ〜２０２ｃはダミーパケットを送信する。
【０１５４】
以下同様にして、送信装置１０１ｃと１０１ｄそれぞれにとっての送信期間が交互に繰り返されて、カメラ１００３ｃと１００３ｄが撮影したフレーム画像の０〜２３９ライン目のデータが、画面１０１１ｂの２４０〜４７９ライン目に表示すべき部分のデータとして順次送信される。そして、画面１０１１ｂの２４０〜４７９ライン目が表示され、１つのフレームの送信と表示が完了する。
【０１５５】
次に、図９のフローチャートを参照して、第３実施形態におけるフレーム画像の送信から表示までの流れを説明する。図９の左側に示したステップＳ３０１〜Ｓ３０６のフローチャートは、図２のステップＳ２２に対応し、図９の右側に示したステップＳ４０１〜Ｓ４０８のフローチャートは、図２のステップＳ１２に対応する。
【０１５６】
つまり、図９のフローチャートの処理が実行される前に、第３実施形態においては、図２のステップＳ１１で、「６４０×４８０画素の画面１０１１ｂをそれぞれ３２０×２４０画素の領域１０１２ａ〜１０１２ｄに分割する」という分割の仕方と、「領域１０１２ａ〜１０１２ｄにはそれぞれカメラ１００３ａ〜１００３ｄが対応する」という対応関係が通知され、通知された内容がステップＳ２１で送信装置１０１ａ〜１０１ｄにそれぞれ認識されている。
【０１５７】
図９の左側に示した送信側のフローチャートにおいて、ステップＳ３０１〜Ｓ３０３は、データパケットおよびダミーパケットの大きさが異なり、後述するように何サイクルかけて実行するかも異なるが、図６のステップＳ１０１〜Ｓ１０３とほぼ同様である。ただし、ステップＳ３０３では、領域１０１２ａと１０１２ｂからなる画面１０１１ｂの上半分の領域の縦幅分の送信が終了している場合、図９では、ステップＳ３０４に進む。
【０１５８】
ステップＳ３０４〜Ｓ３０６は、ステップＳ３０１〜Ｓ３０３と類似のステップである。
すなわち、ステップＳ３０４では、カメラ１００３ｃが撮影した動画のデータを圧縮部２０１ｃが圧縮し、その圧縮データからパケット生成部２０２ｃがデータパケットを生成して受信装置１０５へ送信する。一方、パケット生成部２０２ｄはダミーパケットを受信装置１０５へ送信する。
【０１５９】
ステップＳ３０５では、カメラ１００３ｄが撮影した動画のデータを圧縮部２０１ｄが圧縮し、その圧縮データからパケット生成部２０２ｄがデータパケットを生成して受信装置１０５へ送信する。一方、パケット生成部２０２ｃはダミーパケットを受信装置１０５へ送信する。ステップＳ３０６では、領域１０１２ｃと１０１２ｄからなる画面１０１１ｂの下半分の領域の縦幅分の送信が終了しているか否かが判断され、送信が終了していれば図９の処理を終了する。
【０１６０】
なお、図９に示すとおり、１フレームに相当する時間のうち、前半に相当するステップＳ３０１〜Ｓ３０３の部分では、送信装置１０１ｃおよび１０１ｄからのデータパケットの送信が行われない。つまり、その間、カメラ１００３ｃと１００３ｄが撮影したフレーム画像は、どこかに記憶され、保持されている必要がある。しかし、そのために新たなフレームメモリを追加する必要はない。なぜなら、図３に示すように、もともとカメラ１００３ａ〜１００３ｄはそれぞれフレームメモリ１００７ａ〜１００７ｄを備えているからである。
【０１６１】
次に、受信装置１０５の動作を示す図９の右側のフローチャートについて説明する。このフローチャートにおいて、ステップＳ４０１〜Ｓ４０４は、図６のステップＳ２０１〜Ｓ２０４とほぼ同様である。多少異なるのはステップＳ４０４での判断である。ステップＳ４０４では、画面１０１１ｂの上半分の描画を命令済みか否か、すなわち、画面１０１１ｂの０〜２３９ライン目の全幅水平ラインの描画を命令済みか否かが、表示部２０６により判断される。そして、命令済みであればステップＳ４０５に進み、そうでなければ図６に関して説明したのと同様にｊの値を１増やしてステップＳ４０１に戻る。
【０１６２】
ステップＳ４０５〜Ｓ４０８は、ステップＳ４０１〜Ｓ４０４と類似の処理である。ステップＳ４０１〜Ｓ４０４は、パケット生成部２０２ａと２０２ｂから送信されたデータパケットに基づいて、画面１０１１ｂの上半分の領域１０１２ａと１０１２ｂを描画するための処理である。一方、ステップＳ４０５〜Ｓ４０８は、パケット生成部２０２ｃと２０２ｄから送信されたデータパケットに基づいて、画面１０１１ｂの下半分の領域１０１２ｃと１０１２ｄを描画するための処理である。
【０１６３】
すなわち、ステップＳ４０５では、カメラ１００３ｃが撮影したフレーム画像のうち（ｊ×８）ライン目から（（ｊ＋１）×８−１）ライン目までの８ライン分のデータから生成されたデータパケットを、パケット復元部２０４が受信する。パケット復元部２０４は受信したデータパケットから圧縮データを復元し、復号部２０５が圧縮データを復号してラインメモリに記憶する。ステップＳ４０５で受信されるデータパケットは、ステップＳ３０４でパケット生成部２０２ｃが送信したものである。また、ステップＳ４０５でパケット復元部２０４が受信したダミーパケットはすべて廃棄される。
【０１６４】
次に、ステップＳ４０６では、カメラ１００３ｄが撮影したフレーム画像のうち（ｊ×８）ライン目から（（ｊ＋１）×８−１）ライン目までの８ライン分のデータから生成されたデータパケットを、パケット復元部２０４が受信する。パケット復元部２０４は受信したデータパケットから圧縮データを復元し、復号部２０５が圧縮データを復号してラインメモリに記憶する。ステップＳ４０６で受信されるデータパケットは、ステップＳ３０５でパケット生成部２０２ｄが送信したものである。また、ステップＳ４０６でパケット復元部２０４が受信したダミーパケットはすべて廃棄される。
【０１６５】
続いてステップＳ４０７で、ラインメモリに記憶されたデータに基づいて、表示部２０６が、モニタの画面１０１１ｂへの描画を命令する。ここで描画の対象となる領域１０１２ｃと１０１２ｄは、画面１０１１ｂの下半分にある。よって、元のカメラ１００３ｃや１００３ｄが撮影したフレーム画像中の（ｊ×８）ライン目から（（ｊ＋１）×８−１）ライン目までの水平ラインは、画面１０１１ｂ中の（２４０＋（ｊ×８））ライン目から（２４０＋（ｊ＋１）×８−１）ライン目までの全幅水平ラインに対応する。
【０１６６】
そして、ステップＳ４０８では、領域１０１２ｃおよび１０１２ｄの縦幅分の２４０本の全幅水平ラインの描画を命令し終えたか否かを表示部２０６が判断する。すなわち、ステップＳ４０８では、画面１０１１ｂの４７９ライン目までのすべての全幅水平ラインの描画を命令し終えたか否かを表示部２０６が判断し、終了していれば図９の処理を終了し、そうでなければ上記のｊの値を１増やしてステップＳ４０５に戻る。
【０１６７】
以上のとおり、第３実施形態でも、第２実施形態と同様に、送信装置１０１ａ〜１０１ｄおよび受信装置１０５は個別に動作を行っており、互いに同期するための通信をともなう処理などは行っていない。しかし、第２実施形態と同様の理由で、送信装置１０１ａ〜１０１ｄおよび受信装置１０５は、単にサイクル数を数えていれば、他の装置とタイミングを合わせて動作することが可能である。第２実施形態と同様に、数値の具体例により説明すれば、下記のごとくである。
【０１６８】
第３実施形態に式（５）を当てはめると、ｃ＝１２５μｓ、ｆ＝３０ｆｐｓ、ｖｅ＝４８０、ｎ＝８より、
ｘ＝ｆｌｏｏｒ（２６６÷６０）＝４
である。つまり、ｎ＝８本の水平ラインの走査のタイミングに対応する期間の長さは４サイクルである。また、ｄｈ＝２なので、式（６）からｙ＝２である。したがって、ステップＳ３０１、Ｓ３０２、Ｓ３０４、およびＳ３０５は、それぞれ２サイクルかけて実行される。同様に、ステップＳ４０１、Ｓ４０２、Ｓ４０５、およびＳ４０６もそれぞれ２サイクルかけて実行される。例えば、ステップＳ３０１では、カメラ１００３ａが撮影した動画の８ライン分のデータは、圧縮部２０１ａによって圧縮され、２等分される。そして、２等分されたデータを使って、パケット生成部２０２ａが２つのデータパケットを生成し、１サイクルに１つずつ送信する。
【０１６９】
この２つのデータパケットに含まれる動画データの大きさはそれぞれ、式（７）のｓである。例えば、第２実施形態の計算例と同様に圧縮率ｒを０．５とすれば、
ｓ＝５１２０×０．５÷２＝１２８０バイト
であり、第２実施形態において計算された６４０バイトの２倍である。また、式（５）における切り捨ての影響の分、多少のずれはあるが、従来方式による２８８バイトと比べると、第３実施形態において各サイクルで送信されるデータパケットの大きさは、約４倍である。この約４倍という数値は、画面１０１１ｂが４分割されていることに対応する。すなわち、切り捨ての影響を無視すれば、同じ大きさの複数の領域に画面を分割した場合、各サイクルで送信すべきデータパケットの大きさは、領域の数に比例する。また、データパケットの大きさの増大に反比例して、当該領域のデータの送信にかかるサイクル数は少なくなる。
【０１７０】
次に、第２および第３の実施形態で説明した具体例と、第１実施形態との対応について説明する。
第１実施形態で説明したように、例えば送信装置１０１ａにとっての送信期間は、送信装置１０１ａにとっての特定領域を構成するｎ本の水平ラインを含むｎ本の全幅水平ラインの走査のタイミングに対応する期間のうち、特定領域の画面内での水平方向における位置に対応する期間である。ここで、「ｎ本の全幅水平ラインの走査のタイミングに対応する期間」とは、次の期間を指す。
【０１７１】
（ａ）第２実施形態では、図６のステップＳ１０１とＳ１０２からなる８サイクル
（ｂ）第３実施形態で、現在注目しているｎ本の全幅水平ラインが画面１０１１ｂの上半分に含まれる場合は、図９のステップＳ３０１とＳ３０２からなる４サイクル
（ｃ）第３実施形態で、現在注目しているｎ本の全幅水平ラインが画面１０１１ｂの下半分に含まれる場合は、図９のステップＳ３０４とＳ３０５からなる４サイクル
また、「特定領域の画面内での水平方向における位置」とは、第２および第３実施形態の場合、画面の右半分か左半分かということである。特定領域が画面の右半分と左半分のどちらであるかということに対応する以下のいずれかの期間が、送信期間である。
【０１７２】
（ｄ）第２実施形態では、上記（ａ）の８サイクルの前半または後半の４サイクル
（ｅ）第３実施形態では、上記（ｂ）または（ｃ）の４サイクルの前半または後半の２サイクル
例えば、第３実施形態で送信装置１０１ｃに注目すると、特定領域は左下の領域１０１２ｃである。よって、上半分の領域１０１２ａと１０１２ｂの走査のタイミングに対応する期間である図９のステップＳ３０１〜Ｓ３０３のループが実行されている間は、非送信期間が続く。そして、下半分の領域１０１２ｃと１０１２ｄの走査のタイミングに対応する期間である図９のステップＳ３０４〜Ｓ３０６の繰り返しにおいては、領域１０１２ｃが水平方向に並ぶ２つの領域のうち左側であることに対応して、上記（ｃ）の４サイクルの前半の２サイクル、すなわちステップＳ３０４が送信期間となる。そして、ステップＳ３０４とＳ３０５からなる、２サイクルの送信期間と２サイクルの非送信期間というパターンが繰り返される。
【０１７３】
また、第１実施形態で説明したように、受信側から見ると、データパケットは、対応関係により示される各送信装置にとっての特定領域の画面内での位置と、画面の走査順とに基づくタイミング、すなわち既知の情報から決定されるタイミングで送信されてくるものである。例えば、第３実施形態において送信装置１０１ｃからデータパケットが送信されるタイミングは、次の点において、特定領域１０１２ｃの画面１０１１ｂ内での位置と、画面１０１１ｂの走査順とに基づいている。
【０１７４】
・送信装置１０１ｃの特定領域１０１２ｃが画面１０１１ｂの下半分に属し、画面１０１１ｂは上から下へ走査されることから、送信装置１０１ｃからデータパケットを受信するのは、図９の右側のフローにおいて後半部にあたるステップＳ４０５〜Ｓ４０８のループが実行される期間内に限られる。
【０１７５】
・フローの後半部にあたるステップＳ４０５〜Ｓ４０８のループが実行される期間内では、画面１０１１ｂが上から下へ走査されるという順序に合わせて、上から下へ順番にｎ＝８本の水平ラインを単位として、送信装置１０１ｃからデータパケットが送信され、受信装置１０５がそのデータパケットを受信する。
【０１７６】
・特定領域１０１２ｃが画面１０１１ｂの左半分にあることから、ステップＳ４０５〜Ｓ４０８からなるループの前半の２サイクルにあたるステップＳ４０５で、送信装置１０１ｃからデータパケットを受信する。
【０１７７】
以上、本発明の実施の形態について詳細に説明してきたが、本発明は上記の実施形態に限られるものではなく、様々に変形可能である。以下にその例をいくつか述べる。
画像の形式は、上記の実施形態で例示したものに限らない。上記の実施形態では、１画素あたり２バイトで表されるＹＵＶ表色系を例に説明したが、１画素あたり３バイトで表されるＲＧＢ表色系を採用してもよく、表示すべき画像がグレースケール画像であってもよい。
【０１７８】
また、上記の実施形態では、プログレッシブ画像であることを暗黙の前提として説明したが、インターレース画像に対しても同様に本発明を適用することができる。インターレース画像を対象とする場合は、フレームではなくフィールドを単位として処理するようにしたり、偶数フィールドに対しては例えば０、２、……、１４本目の水平ラインを処理の単位とする一方で、奇数フィールドに対しては例えば１、３、……、１５本目の水平ラインを処理の単位とするようにしたり、必要な変形を行えばよい。
【０１７９】
また、図３には圧縮部２０１ａ〜２０１ｄがあり、動画のデータを圧縮しているが、動画のデータを圧縮せずに伝送してもよい。
ＩＤＢ−１３９４プロトコルによるアイソクロナス転送を利用するためには、各サイクルで同じ大きさのパケットを送信するという前提を成立させる必要がある。この前提は、例えば固定長符号化された非圧縮の画像データ、あるいはｎ本の水平ラインごとに固定長になるように圧縮された画像データを利用することによって成立する。そして、この条件が成立することにより、上記の計算例のようにどのパケットも同じ大きさとすることができる。
【０１８０】
また、図１の説明において、送信装置はカメラに取り付けられ、受信装置はモニタに取り付けられると説明したが、送信装置と受信装置は、外付けの装置でなくてもよい。すなわち、送信装置がカメラに内蔵されていても、受信装置がモニタに内蔵されていてもよい。
【０１８１】
さらに、送信装置が取り付けられ、あるいは内蔵される対象の装置は、カメラに限らない。上記の説明におけるカメラは、テレビチューナー、ＤＶＤ（Digital Versatile Disk）プレーヤ、またはカーナビゲーション装置など、画像を出力することができる任意の機器に置き換えることが可能である。例えば、３台のカメラにそれぞれ取り付けられた３台の送信装置１０１ａ〜１０１ｃと、カーナビゲーション装置に内蔵された送信装置１０１ｄが、それぞれ動画のデータを受信装置１０５に送信するようシステムを構成することも可能である。この場合、受信装置１０５は、４分割されたモニタの画面上の１つの領域にカーナビゲーションのための動画を、残りの３つの領域にカメラが撮影した画像を表示させる。
【０１８２】
画面の分割の仕方および各領域とカメラとの対応関係は、図２のステップＳ１１に示したように受信側から通知するのでもよく、デフォルトで決められて、送信装置と受信装置の双方に予め記憶されていてもよい。デフォルトで決められている場合、図２のステップＳ１１とＳ２１は不要である。
【０１８３】
また、バスはＩＤＢ−１３９４に限らず、転送レートを保証するアイソクロナス転送の仕組みを備えたプロトコルのバスであればよく、例えばＵＳＢ（Universal Serial Bus；ユニバーサルシリアルバス）を使うこともできる。第２および第３実施形態では、パケット生成部２０２ａ〜２０２ｄが非送信期間にダミーパケットを送信しているが、割り当てられた帯域を必ず使うことが前提となっていないプロトコルの場合は、ダミーパケットを送信しなくてもよい。
【０１８４】
上記実施形態では、カメラが撮影した画像を拡大も縮小もせずにモニタの画面に表示する例を示した。しかし、例えば、復元部１０８が復元したデータを適宜間引いてから記憶部１０９に記憶するか、記憶部１０９に記憶されたデータを表示部１１０が適宜間引くように上記実施形態を変形すれば、縮小した分割表示も可能である。拡大表示も同様に、例えば表示部１１０の動作を適宜変更することによって可能となる。
【０１８５】
また、画面の分割の仕方は、例示した２分割と４分割に限らず、各領域の大きさが同じである必要もない。例えば、第２実施形態を変形して、水平方向に３分割あるいは４分割して表示することも可能である。その場合、第２実施形態では従来と比べてパケットの大きさが２倍になったのと同様に、パケットの大きさは３倍あるいは４倍となる。
【０１８６】
また、図１０に示すように、画面１０１１ｃを上下に分割し、上半分を水平方向に２分割して領域１０１２ａ〜１０１２ｂとし、下半分を水平方向に３分割して領域１０１２ｃ〜１０１２ｅとするなど、垂直方向の位置によって水平方向の分割数が異なるような分割であってもよい。図１０のような複雑な分割を行った場合でも、次のようにして、送信期間の長さを示すサイクル数を計算し、そのサイクル数に基づいてデータパケットのサイズを決定することが可能である。
【０１８７】
まず、式（５）により、ｎ本の全幅水平ラインの走査のタイミングに対応する期間に割り当てられるサイクル数ｘを求める。図１０の例では、画面１０１１ｃの垂直方向の画素数ｖeが１７６なので、ｃ＝１２５μｓ、ｆ＝３０ｆｐｓ、ｎ＝８とすると、式（５）より、
ｘ＝ｆｌｏｏｒ（２６６÷２２）＝１２
である。図１０のような分割の場合、こうして算出したサイクル数ｘを、式（６）のように等分にするかわりに、水平方向に並んだｄｈ個の領域の水平方向の画素数で比例分配する。図１０の例では、画面１０１１ｃの上段は、水平方向の画素数がそれぞれ７５と２２５の領域１０１２ａおよび領域１０１２ｂに分割されており、この２つの領域の水平方向の画素数の比は１：３である。よって、画面１０１１ｃの上段ではｘ＝１２を１：３に比例配分して、領域１０１２ａには３サイクル、領域１０１２ｂには９サイクルを分配する。一方、画面１０１１cの下段は、水平方向の画素数が１００で等しい３つの領域１０１２ｃ〜１０１２ｅに分割されている。よって、画面１０１１ｃの下段ではｘ＝１２を１：１：１に比例配分して、領域１０１２ｃ〜１０１２ｅに４サイクルずつ分配する。なお、正確に比例分配すると整数にならない場合は、適宜切り上げまたは切り捨てを行って分配すればよい。
【０１８８】
こうしてｄｈ個の領域に対応するｄｈ個の送信装置にそれぞれ分配されたサイクル数が、当該送信装置にとっての送信期間の長さを表すサイクル数である。ｎ本の水平ラインのデータ量を、この分配されたサイクル数で割れば、１サイクルあたりに当該送信装置から送信すべきデータパケットの大きさとなる。例えば、動画データが１画素あたり２バイトに固定長符号化されたものである場合、領域１０１２ａに対応する送信装置（送信装置１０１ａとする）から１サイクルあたりに送信されるデータパケットの大きさは、
７５×８×２÷３＝４００バイト
である。同様に、領域１０１２ｂに対応する送信装置（送信装置１０１ｂとする）から１サイクルあたりに送信されるデータパケットの大きさは、
２２５×８×２÷９＝４００バイト
である。また、領域１０１２ｃ〜１０１２ｅに対応する送信装置（送信装置１０１ｃ〜１０１ｅとする）からそれぞれ１サイクルあたりに送信されるデータパケットの大きさは、
１００×８×２÷４＝４００バイト
で等しい。つまり、ｎ本の水平ラインのデータ量は、各領域の水平方向の画素数に比例するので、上記のようにサイクル数ｘを比例分配すると、各領域から１サイクルあたりに送信されるデータパケットの大きさは等しくなる。なお、ここで「等しい」とは、整数への切り捨て等があった場合は、その影響を無視すればデータパケットの大きさが等しいという意味である。
【０１８９】
このようにしてデータパケットの大きさが決まると、ダミーパケットの大きさも定まる。図１０の例ではどのサイクルにおいても、送信装置１０１ａ〜１０１ｅが４００バイトデータパケットか４００バイトのダミーパケットを送信することから、１サイクルあたり
４００×５＝２０００バイト
の転送が保証されていなくてはならないが、これはＩＤＢ−１３９４のＳ２００で十分まかなえる転送レートである。
【０１９０】
つまり、図１０の例では、送信装置１０１ａが４００バイトのデータパケットを送信し、送信装置１０１ｂ〜１０１ｅがそれぞれ４００バイトのダミーパケットを送信することが３サイクル続いた後、送信装置１０１ｂが４００バイトのデータパケットを送信し、送信装置１０１ａ、１０１ｃ〜１０１ｅが４００バイトのダミーパケットを送信することが９サイクル続く。そして、この１２サイクルを８回繰り返すことで、画面１０１１ｃの上段のデータの送信および描画が完成する。
【０１９１】
同様に、送信装置１０１ｃが４００バイトのデータパケットを送信し、送信装置１０１ａ、１０１ｂ、１０１ｄ、１０１ｅが４００バイトのダミーパケットを送信することが４サイクル続いた後、送信装置１０１ｄが４００バイトのデータパケットを送信し、送信装置１０１ａ〜１０１ｃ、１０１ｅが４００バイトのダミーパケットを送信することが４サイクル続き、さらにその後、送信装置１０１ｅが４００バイトのデータパケットを送信し、送信装置１０１ａ〜１０１ｄが４００バイトのデータパケットを送信することが４サイクル続く。そして、この１２サイクルを１４回繰り返すことで、画面１０１１ｃの下段のデータの送信および描画が完成する。
【０１９２】
さらに別の変形例について説明すると、上記の第１〜第３実施形態では、モニタが１つであると仮定して説明したが、ＩＤＢ−１３９４のアイソクロナス転送では、パケットがブロードキャストされるので、複数のモニタにそれぞれ受信装置１０５を取り付け、複数のモニタにおいて同様の画面分割表示を行うようにしてもよい。あるいは、複数のモニタで異なる分割の仕方の分割表示を行うことも可能である。
【０１９３】
例えば、複数のモニタが受信装置１０５を介して１３９４バスに接続されている場合、第１のモニタでは、カメラ１００３ａ〜１００３ｄが撮影した動画を、第３実施形態のように４分割表示し、第２のモニタでは、カメラ１００３ａと１００３ｂが撮影した動画を、第２実施形態のように２分割表示することも可能である。この場合、第２のモニタに接続された受信装置は、ダミーパケットを廃棄するだけではなく、カメラ１００３ｃと１００３ｄにそれぞれ取り付けられた送信装置から送られるデータパケットも廃棄する。廃棄すべきデータパケットなのか、画面の表示に用いるべきデータパケットなのかは、例えば、アイソクロナスパケットヘッダのチャンネルＩＤに基づいて判別することが可能である。この場合、第２のモニタに接続された受信装置に必要なラインメモリの容量も、第２実施形態と同様に、全幅水平ラインに換算してｎ本分である。
【０１９４】
なお、このように複数のモニタで異なる分割の仕方の分割表示を行う場合は、最も分割数の多いモニタに取り付けられた受信装置が、予め、送信装置だけではなく他のモニタに取り付けられた受信装置にも、自モニタの画面の分割の仕方および分割された各領域とカメラとの対応関係を通知する必要がある。各送信装置は、最も分割数の多いモニタに合わせたタイミングおよび大きさでパケットを送信し、他のモニタに接続された受信装置は、受信したデータパケットのうち不要なものを廃棄する。
【０１９５】
また、上記の例における、４分割表示を行う第１のモニタを前提とした場合、第２のモニタで可能な分割の仕方はある程度限定される。例えば、カメラ１００３ａで撮影した動画を画面左半分に表示し、カメラ１００３ｃで撮影した動画を画面右半分に表示するような２分割表示はできない。なぜなら、図９から分かるように、カメラ１００３ａで撮影したフレーム画像のデータがすべて送信され終わってから、カメラ１００３ｃで撮影したフレーム画像のデータの送信が始まるため、全幅水平ラインに換算してｎ本分のラインメモリでは足りないからである。
【０１９６】
第２のモニタで可能な分割の仕方の例は、第２のモニタの画面の大きさにもよるが、例えば、第１のモニタの画面上で水平方向に並ぶ２つの領域の左右を入れ替えること、第１のモニタの画面の上段または下段の一方にある２つの領域だけを水平方向に並べて２分割表示をすること、第１のモニタの画面の上段と下段から１つずつ領域を選んでその２つの領域を垂直方向に並べて２分割表示をすること、などである。
【０１９７】
ところで、上記の実施形態では、ｎ＝８と仮定し、８ラインを処理の単位としていたが、ｎは任意である。ｎは１でもよく、ｎが整数でなくても本発明を実施することは可能である。また、上記の実施形態では簡単のため、ｎが画面全体の垂直方向の画素数ｖｅの約数であると仮定していたが、そうでなくてもよい。
【０１９８】
ただし、ｎが小さすぎると、第２および第３実施形態のように動画データを圧縮する場合に、所望の圧縮率を達成することができない場合がある。一方、ｎが大きすぎると、受信装置１０５の記憶部１０９の容量がそれに応じて増してしまい、本発明の利点が薄くなる。これらの観点から、ｎの値を検討し、実施形態に応じて最適な値を実験により求め、それをｎの値として採用することが望ましい。あるいは、例えば受信装置１０５が備える入力装置を介して、ｎの値を人間が指定することを可能としてもよい。
【０１９９】
なお、上記のいくつかの式は例示である。例えば、図６のフローチャートの１回のループあたりのサイクル数を、８．８……を切り捨てて８サイクルとする場合を例示したが、このように切り捨てなくてもよい。例えば、ループごとに、８サイクルで実行する場合と９サイクルで実行する場合を所定のパターンで混在させて、平均すると１回のループあたりのサイクル数が整数にならないように調整してもよい。その所定のパターンを予め送信装置と受信装置の双方が認識していれば、同期のための通信をともなう処理を必要とせず、各装置が単にサイクル数を数えるだけで、タイミングを合わせて動作することが可能である。
【０２００】
以上説明したことを概観すれば本発明は以下のような構成を備えるものである。
（付記１）
複数の領域に分割された画面内の１つの領域である特定領域に表示すべき動画のデータを、データの転送レートを保証するプロトコルによって送信する送信装置であって、
前記動画の前記データのうち、前記特定領域を構成するｎ本の水平ラインに相当する部分からデータパケットを生成するデータパケット生成手段と、
前記特定領域のｎ本の前記水平ラインを含む、前記画面の全幅にわたるｎ本の全幅水平ラインの走査のタイミングに対応する期間のうち、前記特定領域の前記画面内での水平方向における位置に対応する期間である送信期間か否かを判断する判断手段と、
前記送信期間であると前記判断手段が判断したとき、前記データパケットを送信する送信手段と、
を備えることを特徴とする送信装置。
（付記２）
前記データパケット生成手段は、前記画面の垂直方向の走査順と同じ方向に順に、ｎ本の前記水平ラインを繰り返しの単位として、前記データパケットを生成することを繰り返し、
前記判断手段は、水平方向に並ぶｄｈ個の前記領域について、水平方向の位置に応じて、前記特定領域に対応する前記送信期間であるか、または前記特定領域以外の領域に対応する非送信期間であるかを判断し、
前記ｄｈ個の領域に対応する前記送信期間と前記非送信期間とからなる判断のパターンが、前記データパケット生成手段による前記繰り返しの単位ごとに繰り返される、
ことを特徴とする付記１に記載の送信装置。
（付記３）
前記画面は水平方向と垂直方向の分割をともに含み、
前記画面の走査順において、前記特定領域の上または下にある他の領域の走査のタイミングに対応する期間では、前記判断手段が前記送信期間ではないと判断する、
ことを特徴とする付記１に記載の送信装置。
（付記４）
前記画面の分割の仕方と、前記画面内での前記特定領域の前記位置は、前記データパケットの送信先である受信装置から予め通知されたものであることを特徴とする付記１に記載の送信装置。
（付記５）
ダミーデータからダミーパケットを生成するダミーパケット生成手段をさらに備え、
前記送信期間ではないと前記判断手段が判断したとき、前記送信手段は前記ダミーパケットを送信する、
ことを特徴とする付記１に記載の送信装置。
（付記６）
前記動画の前記データのうちｎ本の前記水平ラインに相当する前記部分の大きさは固定であることを特徴とする付記１に記載の送信装置。
（付記７）
前記動画の前記データは圧縮されていることを特徴とする付記６に記載の送信装置。
（付記８）
複数の領域に分割された画面内のそれぞれの前記領域に表示すべき複数の動画のデータを、データの転送レートを保証するプロトコルによって、複数の送信装置のそれぞれから受信する受信装置であって、
前記複数の送信装置と前記複数の領域との対応関係を、前記複数の送信装置に通知する通知手段と、
前記動画の前記データから生成され、前記対応関係により示される前記領域の前記画面内での位置と前記画面の走査順とに基づくタイミングで前記複数の送信装置からそれぞれ送信された、データパケットを受信する受信手段と、
１つの前記送信装置から受信した１つ以上の前記データパケットから、前記動画の前記データのうち、前記１つの送信装置に対応する１つの前記領域を構成するｎ本の水平ラインに相当する部分を復元する復元手段と、
復元された前記動画の前記データを記憶する記憶手段と、
前記記憶手段に記憶された前記動画の前記データに基づいて、前記画面の全幅にわたるｎ本の全幅水平ラインを、走査により表示するよう命令する表示手段とを備え、
前記データパケットの受信と、前記動画の前記データの復元および記憶と、前記表示手段による命令とを繰り返すことによって前記画面全体の表示を実現させることを特徴とする受信装置。
（付記９）
前記受信手段は、少なくとも１つの前記送信装置から、ダミーデータから生成されて前記データパケットを送信すべきタイミングではないときに送信されたダミーパケットを受信し、受信した該ダミーパケットを廃棄することを特徴とする付記８に記載の受信装置。
（付記１０）
前記受信手段が、水平方向に並ぶｄｈ個の前記領域に対応するｄｈ個の前記送信装置から順にそれぞれ前記データパケットを受信し、前記記憶手段が、ｄｈ個の前記送信装置から受信した前記データパケットからそれぞれ復元されたｄｈ個の前記動画それぞれの前記データを記憶した後で、前記表示手段がｎ本の前記全幅水平ラインの表示を命令することを特徴とする付記８に記載の受信装置。
（付記１１）
前記動画の前記データのうちｎ本の前記水平ラインに相当する前記部分の大きさは固定であることを特徴とする付記１０に記載の受信装置。
（付記１２）
コンピュータに、複数の領域に分割された画面内の１つの領域である特定領域に表示すべき動画のデータを、データの転送レートを保証するプロトコルによって送信させるプログラムであって、
前記動画の前記データのうち、前記特定領域を構成するｎ本の水平ラインに相当する部分からデータパケットを生成するステップと、
前記特定領域のｎ本の前記水平ラインを含む、前記画面の全幅にわたるｎ本の全幅水平ラインの走査のタイミングに対応する期間のうち、前記特定領域の前記画面内での水平方向における位置に対応する期間である送信期間か否かを判断するステップと、
前記送信期間であると判断したとき、前記データパケットを送信するステップと、
を前記コンピュータに実行させることを特徴とするプログラム。
（付記１３）
コンピュータに、複数の領域に分割された画面内のそれぞれの前記領域に表示すべき複数の動画のデータを、データの転送レートを保証するプロトコルによって、複数の送信装置のそれぞれから受信させるプログラムであって、
前記複数の送信装置と前記複数の領域との対応関係を、前記複数の送信装置に通知する通知ステップと、
前記動画の前記データから生成され、前記対応関係により示される前記領域の前記画面内での位置と前記画面の走査順とに基づくタイミングで前記複数の送信装置からそれぞれ送信された、データパケットを受信する受信ステップと、
１つの前記送信装置から受信した１つ以上の前記データパケットから、前記動画の前記データのうち、前記１つの送信装置に対応する１つの前記領域を構成するｎ本の水平ラインに相当する部分を復元する復元ステップと、
復元された前記動画の前記データを記憶手段に記憶する記憶ステップと、
前記記憶手段に記憶された前記動画の前記データに基づいて、前記画面の全幅にわたるｎ本の全幅水平ラインを、走査により表示するよう命令する表示ステップと、
を前記コンピュータに実行させ、
前記受信ステップ、前記復元ステップ、前記記憶ステップ、および前記表示ステップを前記コンピュータに繰り返させることによって前記画面全体の表示を実現させることを特徴とするプログラム。
【図面の簡単な説明】
【０２０１】
【図１】第１実施形態による送信装置および受信装置の機能ブロック図である。
【図２】第１実施形態において動画を分割表示する全体の流れを示すフローチャートである。
【図３】第２および第３実施形態に共通のシステム構成図である。
【図４】第２実施形態におけるパケットの送信方法を示す図である。
【図５】第２実施形態における画面の合成方法を示す図である。
【図６】第２実施形態におけるフレーム画像の送信から表示までを示すフローチャートである。
【図７】第３実施形態におけるパケットの送信方法を示す図である。
【図８】第３実施形態における画面の合成方法を示す図である。
【図９】第３実施形態におけるフレーム画像の送信から表示までを示すフローチャートである。
【図１０】画面の分割の仕方の例を示す図である。
【図１１】車載用の多数のカメラを設置したマルチカメラシステムの例である。
【図１２】４分割表示を行うシステムの構成要素と画面を示す図である。
【図１３】ＩＤＢ−１３９４プロトコルによる４分割表示のためのパケットの送信方法を示す図である。
【図１４】４分割表示においてフレームメモリの容量を削減する方法の例である。
【符号の説明】
【０２０２】
１０１ａ〜１０１ｅ  送信装置
１０２ａ、１０２ｂ  データパケット生成部
１０３ａ、１０３ｂ  判断部
１０４ａ、１０４ｂ  送信部
１０５  受信装置
１０６  通知部
１０７  受信部
１０８  復元部
１０９  記憶部
１１０  表示部
２０１ａ〜２０１ｄ  圧縮部
２０２ａ〜２０２ｄ  パケット生成部
２０３  １３９４バス
２０４  パケット復元部
２０５  復号部
２０６  表示部
１００１  車両
１００２  車載ＬＡＮ
１００３ａ〜１００３ｄ  カメラ
１００７ａ〜１００７ｄ  フレームメモリ
１０１１ａ〜１０１１ｃ  画面
１０１２ａ〜１０１２ｅ  領域
【図１】
0004940030.tif 000002
【図２】
0004940030.tif 000003
【図３】
0004940030.tif 000004
【図４】
0004940030.tif 000005
【図５】
0004940030.tif 000006
【図６】
0004940030.tif 000007
【図７】
0004940030.tif 000008
【図８】
0004940030.tif 000009
【図９】
0004940030.tif 000010
【図１０】
0004940030.tif 000011
【図１２】
0004940030.tif 000012
【図１３】
0004940030.tif 000013
【図１４】
0004940030.tif 000014
【図１１】
0004940030.tif 000015