(57)【要約】【課題】  どの映像受信装置がどのカメラを遠隔操作しているかを容易に知ることができるようする。【解決手段】  受信映像ウインドウ１４２の各映像表示域１４２−１〜１４２−６にはそれぞれ、別のカメラから受信した映像が表示され、各映像表示域１４２−１〜１４２−６の下には、送信元のカメラ名が同時に表示される。カメラ名リスト１４２−７には、利用可能なカメラのカメラ名がリストとして表示される。このリストは、アクセス管理プロセスのデータベースから取得される。カメラ操作ウインドウ１４４が、受信映像ウインドウ１４２の、映像を表示している何れかの映像表示域１４２−１〜１４２−６内をクリックすることによりポップアップする。【選択図】  図８
2005151601.tif 000002
【特許請求の範囲】
【請求項１】
カメラに接続される映像送信装置から送信されたカメラの出力映像を通信回線を介して受信する映像受信装置であって、
映像受信可能なカメラの識別情報と、カメラ操作している映像受信装置の識別情報とを少なくとも含む管理リストを参照する参照手段と、
前記参照手段が前記管理リストを参照することにより得られる情報と、受信したカメラの出力映像とを表示する表示手段と、
を備えることを特徴とする映像受信装置。
【請求項２】
前記表示手段は、カメラの出力映像とともに、その出力映像に対応するカメラを操作している映像受信装置の識別情報を表示することを特徴とする請求項１に記載の映像受信装置。
【請求項３】
前記表示手段は、前記映像送信可能なカメラの識別情報を文字列で一覧表示することを特徴とする請求項１に記載の映像受信装置。
【請求項４】
前記表示手段は、カメラの出力映像を表示させるためのウインドウを有し、所定の外部操作指示に基づき前記文字列識別情報が前記ウインドウにドラッグされた場合、前記文字列識別情報に対応するカメラの出力映像を前記ドラッグされたウインドウに表示することを特徴とする請求項３に記載の映像受信装置。
【請求項５】
前記文字列は、映像送信装置を識別する第１文字部と、前記映像送信装置に接続されるカメラを識別する第２文字部とを少なくとも含むことを特徴とする請求項３または４に記載の映像受信装置。
【請求項６】
前記表示手段は、カメラの出力映像を表示させるためのウインドウを有し、所定の外部操作指示に基づきカメラ映像を表示しているウインドウが指示された場合、前記表示している出力映像に対応するカメラを遠隔操作するためのカメラ操作ウインドウを表示することを特徴とする請求項１に記載の映像受信装置。
【請求項７】
前記カメラ操作ウインドウが表示されることに応答して、前記管理リストにおける、前記カメラ操作している映像受信装置の識別情報を更新させる命令を発生することを特徴とする請求項６に記載の映像受信装置。
【請求項８】
カメラに接続される映像送信装置から送信されたカメラの出力映像を通信回線を介して受信する映像受信装置の映像表示方法であって、
映像受信可能なカメラの識別情報と、カメラ操作している映像受信装置の識別情報とを少なくとも含む管理リストを参照する参照工程と、
前記参照手段が前記管理リストを参照することにより得られる情報と、受信したカメラの出力映像とを表示する表示工程と、
を備えることを特徴とする映像受信装置の映像表示方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のカメラに接続される映像送信装置から送信されたカメラの出力映像を通信回線を介して受信する映像受信装置及び映像受信装置の映像表示方法に関する。
【背景技術】
【０００２】
汎用コンピュータを用いたテレビ会議システム又はビデオ会議システムでは、パン、チルト及びズームなどを外部制御できるビデオ・カメラが映像入力手段として用いられる。この場合、通常は、１台のコンピュータに１台のビデオ・カメラが接続され、ビデオ・カメラは、そのコンピュータのオペレータを撮影する向きに設置される。
【０００３】
また近年、複数の遠隔地の状況を把握するためのツールとして、アウエアネス・システムと呼ばれるシステムの研究開発が進んでいる。このシステムは、通常、複数の地点にコンピュータ制御可能なビデオ・カメラと、これを制御すると共に、入力された映像を送信するためのコンピュータとを配置して、遠隔地のセンターで、複数の地点からの映像を同時に見ることができるようにしたものであり、いわゆる、遠隔監視システムに近似している。提案されているアウエアネス・システムでも、１台のコンピュータに１台のビデオ・カメラが接続される構成がとられることが多い。
【０００４】
非特許文献１には、遠隔会議システムやプラント制御システムに適用可能である、ユーザの興味度による複数映像表示方式が記載されている。特許文献１には、非特許文献１に記載されるのと同様のシステム構成において、映像送信装置側の構成及び各カメラ映像へのネットワーク容量の割り当て方法（コマ数、画素数等の割り当て等）がより詳細に記載されている。
【非特許文献１】山足ほか，ユーザの興味度による複数映像表示方式，情報処理学会研究報告，１９９３年  ７月  ８日，第９３巻、第５８号，Ｐ．４１−４８
【特許文献１】特開平６−３２４６６２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、複数地点のコンピュータの間で互いにカメラの遠隔制御を可能とするシステムを構成した場合、どのコンピュータがどのカメラを遠隔操作しているかを、映像表示画面上、知ることができず、不便であった。
【０００６】
本発明は、上述した問題点を解決するためのものであり、どの映像受信装置がどのカメラを遠隔操作しているかを容易に知ることができるようすることで、システムの利便性を向上させた映像受信装置及び映像受信装置の映像表示方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明の映像受信装置は、カメラに接続される映像送信装置から送信されたカメラの出力映像を通信回線を介して受信する映像受信装置であって、映像受信可能なカメラの識別情報と、カメラ操作している映像受信装置の識別情報とを少なくとも含む管理リストを参照する参照手段と、前記参照手段が前記管理リストを参照することにより得られる情報と、受信したカメラの出力映像とを表示する表示手段と、を備えることを特徴とする。
【０００８】
また、本発明の映像受信装置の映像表示方法は、カメラに接続される映像送信装置から送信されたカメラの出力映像を通信回線を介して受信する映像受信装置の映像表示方法であって、映像受信可能なカメラの識別情報と、カメラ操作している映像受信装置の識別情報とを少なくとも含む管理リストを参照する参照工程と、前記参照手段が前記管理リストを参照することにより得られる情報と、受信したカメラの出力映像とを表示する表示工程と、を備えることを特徴とする。
【発明の効果】
【０００９】
以上説明したように、本発明によれば、どの映像受信装置がどのカメラを遠隔操作しているかを容易に知ることができるので、システムの利便性が向上するという効果が得られる。
【発明を実施するための最良の形態】
【００１０】
以下、図面を参照して、本発明の実施例を詳細に説明する。
【００１１】
図１は、本発明の一実施例の概略構成ブロック図を示す。１０−１，１０−２，・・・，１０−Ｎは、パン、チルト、ズーム及びフォーカス等を外部制御自在なビデオ・カメラ、１２は、コンピュータ２０からの制御信号に従い、ビデオ・カメラ１０−１，１０−２，・・・，１０−Ｎの１つの出力映像信号を選択し、コンピュータ２０に供給するカメラ映像入力選択装置である。カメラ映像入力選択装置１２はまた、コンピュータ２０からのカメラ制御信号に従い、ビデオ・カメラ１０−１，１０−２，・・・，１０−Ｎのうちの任意に指定されたビデオ・カメラのパン等を制御する。カメラ映像入力選択装置１２とコンピュータ２０を結ぶ制御信号線は、本実施例ではＲＳ−２３２Ｃであるが、本発明がこれに限定されないことは明らかである。
【００１２】
コンピュータ２０において、２２は、全体を制御するＣＰＵ、２４は主記憶、２６は、カメラ映像入力選択装置１２を制御する制御信号を出力する制御信号ポート、２８は、カメラ映像入力選択装置１２からの映像信号をＡ／Ｄ変換して取り込むビデオ・キャプチャ装置、３０はビットマップ・ディスプレイ、３２は、コンピュータ２０をコンピュータ・ネットワーク又は通信回線網に接続するネットワーク・インターフェース、３４は、ＣＰＵ２２乃至インターフェース３２を相互に接続する内部バスである。ネットワーク・インタフェース３２により、コンピュータ２０にネットワークを経由して遠隔地からカメラ制御信号を送り、カメラ１０−１，１０−２，・・・，１０−Ｎのパン等を制御させることができる。
【００１３】
カメラ映像入力選択装置１２は、ビデオ・カメラ１０−１，１０−２，・・・，１０−Ｎのうち、コンピュータ２０の制御信号ポート２６からの制御信号により指定される１台の出力映像を選択してビデオ・キャプチャ装置２８に供給する。ビデオ・キャプチャ装置２８は、カメラ映像入力選択装置１２からの映像信号をアナログ・ディジタル変換すると共に所定の内部形式に変換し、バス３４を介して主記憶２４に転送する。主記憶２４に取り込まれたビデオ・データは、ネットワーク・インターフェース３２を介してネットワークに出力されると共に、ディスプレイ３０にも供給されて映像表示される。
【００１４】
本実施例では、各カメラ１０−１，１０−２，・・・，１０−Ｎの出力映像を送信するネットワーク上の伝送路を、それぞれ、論理的にチャネル１、チャネル２、・・・チャネルＮと呼んで区別する。映像データは、実際には圧縮符号化されて各チャネルに伝送されるが、本発明の必須の要素では無いので、圧縮符号化の処理については説明を省略した。また、本実施例では、Ｎ個のカメラのうち、１つのカメラの出力映像を高いフレーム・レートで送信し、他のカメラの出力映像を相対的に低いフレーム・レートで送信するので、各チャネルの伝送容量が全て３０フレーム／秒を満たす必要は無い。高いフレーム・レートで映像を伝送するチャネルに、動的に十分大きな伝送容量を割り当てればよい。
【００１５】
本実施例では、映像は、ブロードキャスト・アドレスを使用して送信される。ブロードキャストのために確保したＮ個のポート番号にチャネル番号を割り当てる。ブロードキャスト時にチャネルを指定することで、複数の映像を実質的に同時にブロードキャストできるようになる。ネットワークのプロトコルとしては、ＴＣＰ／ＩＰなど様々なものがあり、送信するアドレスにもブロードキャスト・アドレスの他に、マルチキャスト・アドレス及びユニキャスト・アドレスがある。本実施例では、カメラ１０−１，１０−２，・・・，１０−Ｎの台数分の数の通信路を確保できれば、プロトコル及びアドレス共に、上記例に限定されない。
【００１６】
このようなＮ個の通信路を確保しておき、例えば、カメラ１０−１の出力映像をチャネル１に送信し、カメラ１０−２の出力映像をチャネル２に送信し、カメラ１０−ｍ（ｍは１以上で、Ｎ以下）の出力映像をチャネルｍに送信する。
【００１７】
映像送信の開始を指示する命令として、以下の命令を設けた。即ち、
ｓｅｎｄ（ｍ）
ｍ：チャネル番号（１≦ｍ≦Ｎ）
この命令に応じて、図２に示すように、ビデオ・キャプチャ装置２８は、カメラ映像入力選択装置１２からの１フレーム分の映像信号をＡ／Ｄ変換して取り込み（Ｓ１）、取り込まれた映像がディスプレイ３０により表示され（Ｓ２）、ネットワーク・インターフェース３２を介してネットワークのチャネルｍに出力される（Ｓ３）。
【００１８】
また、カメラ映像入力選択装置１２へのカメラ映像選択切り替え命令として、以下の命令を設けた。即ち、
ｃｈａｎｇｅ（ｎ）
ｎ：カメラ番号（１≦ｎ≦Ｎ）
この命令は、カメラ映像入力選択装置１２に対し、カメラ番号ｎのカメラ映像を選択してコンピュータ２０に出力することを指示するものであり、これに対応する制御信号が制御信号ポート２６からカメラ映像入力選択装置１２に供給される。実際に試験した例では、ｃｈａｎｇｅ命令の実行には約１秒程度かかった。勿論、各部の処理速度によって、これより速くなり、又は遅くなる。
【００１９】
本実施例では、Ｎ個のカメラ映像のそれぞれを、一定の時間間隔で更新される静止画として送信するように動作させることができる。これにより、伝送する映像数に比べて、伝送回線の容量が少なくて済む。なお、以下の説明では、フレームの更新が１秒以上の時間で行なわれる連続的に表示される映像を「静止画」と呼び、これに対して、より短いレートでフレームが更新される連続映像を「動画」と呼ぶ。即ち、本実施例では、フレーム・レートが１フレーム／秒未満の場合に静止画と呼び、１フレーム／秒以上の場合に動画と呼ぶ。
【００２０】
図３は、本実施例の第１の動作フローチャートを示す。先ず、ネットワーク上にカメラ１０−１，・・・，１０−Ｎの数と同じＮ個の通信チャネルを確保する（Ｓ１１）。１フレーム送信するカメラを指定するカメラ番号変数ｎに１をセットする（Ｓ１２）。ここでは、変数ｎの初期値を１としたが、０又は２からＮ−１までのどの数値をセットしてもよいことは明らかである。
【００２１】
映像を送信するカメラを循環的に切り替えていくためには、ｃｈａｎｇｅ命令及びｓｅｎｄ命令を一定時間間隔で発行すればよい。図３では、これをタイムアウト手続きにより実現している。即ち、ｃｈａｎｇｅ命令による映像切替えと、１フレーム分の映像の取り込みと送信のｓｅｎｄ命令の発行周期をＴｓ（秒）とし、これをタイムアウト時間として登録する（Ｓ１３）。ここでは、Ｔｓ＝１０秒とした。
【００２２】
タイムアウトの発生、即ちＴｓの経過を待ち（Ｓ１４）、タイムアウトの発生を検出すると（Ｓ１５）。以降の処理で消費する時間も加味するために、先ず、Ｔｓを再びタイムアウト登録する（Ｓ１６）。
【００２３】
カメラ番号変数ｎをインクリメントし（Ｓ１７）、Ｎより大きくなれば（Ｓ１８）、変数ｎに１をセットする（Ｓ１９）。このカメラ番号変数ｎをパラメータとして、ｃｈａｎｇｅ命令によりカメラ映像入力を切り替え（Ｓ２０）、ｓｅｎｄ命令によりそのカメラ映像をチャネル番号ｎのチャネルに１フレーム送信する（Ｓ２１）。ｃｈａｎｇｅ命令とｓｅｎｄ命令で同じ変数ｎをパラメータとしているので、カメラ番号ｎのカメラ映像がチャネル番号ｎの通信路に送信されることになる。
【００２４】
ｓｅｎｄ命令の発行後、Ｓ１４に戻り、次のタイムアウトを待つ。
【００２５】
このようにして、カメラ１０−１，１０−２，・・・，１０−Ｎの出力映像が循環的に、Ｔｓ（ここでは１０秒）の時間間隔で選択され、対応するチャネルに送信される。受信側から見ると、各カメラの映像は、Ｔｓ×Ｎ毎に更新される静止画になっている。
【００２６】
Ｓ１７〜Ｓ２１の処理に要する時間をＴｐとすると、タイムアウト時間Ｔｓは、
Ｔｓ＞Ｔｐ
であればよいことは明らかである。即ち、Ｔｓは、上式を満たす限り、１０秒である必要はない。本実施例では、ｃｈａｎｇｅ命令の処理時間を１秒程度としているので、Ｔｐが１秒より小さくなることはない。従って、Ｔｓも、１秒より小さくとることはできない。
【００２７】
このように動作させることで、各カメラ映像が低いフレーム・レートで送信されることになり、低速なコンピュータでも十分に対応できるようになる。受信側では、低いフレーム・レートではあるが、多数のカメラ映像を受信できるので、広い範囲を大雑把に把握できる。
【００２８】
本実施例はまた、Ｎ個のカメラ映像の内の１つを、所定期間、動画として送信するとともに、動画として送信するカメラ映像を一定周期で順次切り替えていくことができる。映像を送信しないカメラの映像は、受信側では静止画となる。これにより、図３の場合に比べて、受信側では、循環的で間欠的ではあるが、各カメラの撮影範囲の時間的な変化をより細かく把握できるようになる。このような動作を実現するフローチャートを図４に示す。図４では、カメラ映像を切り替えるための時間変数Ｔｓに加えて、動画伝送のフレーム周期を規定する時間変数ｔｓを導入する。
【００２９】
先ず、ネットワーク上にカメラ１０−１，・・・，１０−Ｎの数と同じＮ個の通信チャネルを確保する（Ｓ３１）。１フレーム送信するカメラを指定するカメラ番号変数ｎに１をセットする（Ｓ３２）。変数ｎは１からＮまでの何れであってもよい。時間変数Ｔｓ及びｔｓをタイムアウト登録し（Ｓ３３，３４）、イベント（ここではタイムアウト）の発生を待つ（Ｓ３５）。ここでは、ｔｓ＝０．１秒とした。
【００３０】
タイムアウトの発生を検出したら（Ｓ３６）、それが、Ｔｓによるものか、又はｔｓによるものかを判別する（Ｓ３７）。ｔｓによるタイムアウトの場合には、ｔｓを再びタイムアウト用に登録し（Ｓ３８）、カメラ番号変数ｎをパラメータとするｓｅｎｄ命令により、カメラ番号ｎのカメラの出力映像をチャネルｎに１フレーム、送信し（Ｓ３９）、Ｓ３５に戻る。Ｔｓに相当する時間（即ち、１０秒）が経過するまで、ｔｓ（０．１秒）を周期として、カメラ１０−ｎの映像がチャネルｎに出力される。即ち、カメラ１０−ｎの映像が、１０フレーム／秒のフレーム・レートで１０秒間、チャネルｎに出力される。
【００３１】
タイムアウトの発生がＴｓによるものであるとき（Ｓ３７）、先ず、Ｔｓを再びタイムアウト登録する（Ｓ４０）。カメラ番号変数ｎをインクリメントし（Ｓ４１）、Ｎより大きくなれば（Ｓ４２）、変数ｎに１をセットする（Ｓ４３）。このカメラ番号変数ｎをパラメータとして、ｃｈａｎｇｅ命令によりカメラ映像入力を切り替え（Ｓ４４）、Ｓ３５に戻って、次のイベントの発生を待つ。
【００３２】
このようにして、カメラ１０−１の映像が１０秒間、１０フレーム／秒で送信されると、カメラ１０−２の映像が同様に、１０秒間、１０フレーム／秒で送信される。カメラ１０−３，・・・１０−Ｎと切り替わっていき、カメラ１０−Ｎの後には、再びカメラ１０−１の映像が、１０秒間、動画送信される。受信側から見ると、各カメラ映像は１０秒間、動画で表示された後、１０×（Ｎ−１）秒間静止画となる。この動作例では、伝送路の伝送容量は、１０フレーム／秒を満たし得るものであればよい。
【００３３】
Ｓ４１からＳ４４の処理を実行するのに要する時間は、Ｔｓより短くなければならない。勿論、Ｔｓ＞ｔｓでなければならない。
【００３４】
本実施例はまた、Ｎ個のカメラ映像のなかから１つを重点的に、即ち動画として送信し、残りのＮ−１個のカメラ映像を一定時間毎に更新される静止画として送信することもできる。図５は、その動作フローチャートを示す。
【００３５】
図５を説明する。先ず、ネットワーク上にカメラの数と同じＮ個の通信路を確保する（Ｓ５１）。１フレーム送信するカメラを指定するカメラ番号変数ｎに１をセットする（Ｓ５２）。動画送信するカメラのカメラ番号を変数ｋにセットする（Ｓ５３）。変数ｋは、１からＮまでの何れであってもよいが、ここでは１にしている。ｃｈａｎｇｅ命令により、映像を取り込むカメラをカメラ番号ｋのカメラに切り替える（Ｓ５４）。
【００３６】
カメラ映像を切り替えるための時間変数Ｔｓと、動画伝送のフレーム周期を規定する時間変数ｔｓの各値をタイムアウト登録し（Ｓ５５，Ｓ５６）、イベントの発生を待つ（Ｓ５７）。ここでは、Ｔｓ＝１０秒、ｔｓ＝０．１秒とした。
【００３７】
Ｔｓ又はｔｓのタイムアウトの発生を検出すると（Ｓ５８）、ｔｓのタイムアウトではＳ６０以降を実行し、ＴｓのタイムアウトではＳ６２以降を実行する（Ｓ５９）。通常は、先ず、ｔｓのタイムアウトが発生する。
【００３８】
ｔｓのタイムアウトのとき（Ｓ５９）、ｔｓを再びタイムアウトに再登録し（Ｓ６０）、カメラ番号ｋのカメラ映像をチャネルｋに１フレーム送信し（Ｓ６１）、Ｓ５７に戻る。Ｔｓ＝１０秒、ｔｓ＝０．１秒としたので、カメラ番号ｋのカメラ映像が、１０秒間にわたり、１０フレーム／秒で送信される。
【００３９】
Ｔｓのタイムアウトが発生すると（Ｓ５９）、Ｔｓを再びタイムアウトに再登録し（Ｓ６２）、カメラ番号ｎをインクリメントする（Ｓ６３）。新たなカメラ番号ｎがｋに一致する場合（Ｓ６４）、ｎを更にインクリメントする（Ｓ６５）。カメラ番号ｋのカメラ映像が動画送信の対象になっているからである。ｎがＮを越えていれば、ｎに１をセットする（Ｓ６６，Ｓ６７）。
【００４０】
送信すべきカメラをｃｈａｎｇｅ命令によりカメラ番号ｎのカメラに切り替え（Ｓ６８）、ｓｅｎｄ命令によりカメラ番号ｎのカメラ映像をチャネルｎに１フレーム送信し（Ｓ６９）、送信すべきカメラをｃｈａｎｇｅ命令によりカメラ番号ｋのカメラに切り替える（Ｓ７０）。再びＳ５７に戻り、イベントの発生を待つ。
【００４１】
Ｔｓは、Ｓ６３からＳ７０の処理を行なうのにかかる時間より長い時間に設定されなければならない。勿論、ｔｓはＴｓよりも短くなければならない。
【００４２】
このようにして、カメラ１０−１の映像を動画で送信しつつ、それ以外のカメラの映像を１０秒間隔で切り替えながら静止画として、送信できる。どの映像がどのカメラによるものかは、各映像が伝送される伝送チャネルにより識別できる。受信側から見ると、カメラ１０−１の映像は１０秒毎に、他のカメラ映像を１フレーム送信する処理に要する時間、即ち、Ｓ６３〜Ｓ７０の処理に要する時間だけ、途切れる動画になっており、他のカメラ映像は、それぞれ、１０×（Ｎ−１）秒毎に更新される静止画となっている。
【００４３】
このような機能又は動作は、ＴＶ会議システム又はビデオ会議システムなどで、相手端末のオペレータを重点的に映像表示しながらも、なおかつ周囲の状況も表示したいといった場合に好適である。
【００４４】
図３に示す動作例では、各カメラ映像の切り替えを高速に実行できれば、各カメラ映像を動画送信できる。例えば、先に説明したＴｐを０．０５秒以下にでき、且つ、Ｎが１０程度のときには、各カメラ映像のフレーム・レートは、２｛＝１／（Ｔ×Ｎ）｝フレーム／秒となり、先の定義によれば動画と看做せる。勿論、このためには更に、ｃｈａｎｇｅ命令を高速に実行できる必要があることは明らかである。
【００４５】
このようにすれば、複数の地点の状況を少ない回線容量で映像送信できる。
【００４６】
次に、映像通信端末間の映像送受信及びカメラ制御を統括管理するアクセス管理手段を設けた実施例を説明する。図６はその実施例の概略構成ブロック図である。１００−１，１００−２，・・・１００−Ｋは、映像の入力、送信、受信及び表示を行なう映像通信装置であり、一般的には、ワークステーションにビデオ・カメラを接続したものである。映像通信装置１００−１，１００−２，・・・１００−Ｋは、ネットワーク１０２に接続し、相互に映像を通信できる。
【００４７】
図７は、映像通信装置１００−１，１００−２，・・・１００−Ｋのハードウエア構成を示す概略ブロック図である。１１０−１，１１０−２，・・・，１１０−Ｎは、パン、チルト、ズーム及びフォーカス等を外部制御自在なビデオ・カメラ、１１２は、コンピュータ１２０からの制御信号に従い、ビデオ・カメラ１１０−１，１１０−２，・・・，１１０−Ｎの１つの出力映像信号（ＮＴＳＣ信号、Ｓビデオ信号又はＲＧＢ信号の何れでもよい。）を選択し、コンピュータ１２０に供給するカメラ映像入力選択装置である。カメラ映像入力選択装置１１２はまた、コンピュータ１２０からのカメラ制御信号に従い、ビデオ・カメラ１１０−１，１１０−２，・・・，１１０−Ｎのうちの任意に指定されたビデオ・カメラのパン等を制御する。カメラ映像入力選択装置１１２とコンピュータ１２０を結ぶ制御信号線は、本実施例ではＲＳ−２３２Ｃに基づくものであるが、本発明がこれに限定されないことは明らかである。
【００４８】
コンピュータ１２０において、１２２は全体を制御するＣＰＵ、１２４は主記憶、１２６は、カメラ映像入力選択装置１１２を制御する制御信号を出力する制御信号ポート、１２８は、カメラ映像入力選択装置１１２からの映像信号をＡ／Ｄ変換して取り込むビデオ・キャプチャ装置、１３０はビットマップ・ディスプレイ、１３２は、コンピュータ１２０をコンピュータ・ネットワーク（公衆通信回線網を含む。）１０２に接続するネットワーク・インターフェース、１３４はポインティング・デバイスとしてのマウス、１３６は、ＣＰＵ１２２乃至マウス１３４を相互に接続する内部バスである。ネットワーク・インタフェース１３２により、コンピュータ１２０にネットワークを経由して遠隔地からカメラ制御信号を送り、カメラ１１０−１，１１０−２，・・・，１１０−Ｎのパン等を制御させることができる。
【００４９】
カメラ映像入力選択装置１１２は、ビデオ・カメラ１１０−１，１１０−２，・・・，１１０−Ｎのうち、コンピュータ１２０の制御信号ポート１２６からの制御信号により指定される１台の出力映像を選択してビデオ・キャプチャ装置１２８に供給する。ビデオ・キャプチャ装置１２８は、カメラ映像入力選択装置１１２からの映像信号をアナログ・ディジタル変換すると共に所定の内部形式に変換し、バス１３６を介して主記憶１２４に転送する。主記憶１２４に取り込まれたビデオ・データは、ネットワーク・インターフェース１３２を介してネットワーク１０２に出力されると共に、ディスプレイ１３０にも供給されて映像表示される。
【００５０】
以上の構成により、各映像通信装置１００−１，１００−２，・・・１００−Ｋは互いに、ネットワーク１０２を介して、映像情報を送受信でき、他の映像通信装置１００−１，１００−２，・・・１００−Ｋに接続するカメラを制御できる。
【００５１】
本実施例では、ネットワーク１０２に接続する全カメラを、それが接続するコンピュータのホスト名と、そのコンピュータにおけるカメラ番号で特定する。具体的には、コンピュータのホスト名とカメラ番号を’．’で連結したカメラ名を利用する。例えば、ホスト名ｈｏｓｔＡのコンピュータに接続するカメラ番号１のカメラには、”ｈｏｓｔＡ．１”というカメラ名が付けられる。ネットワーク１０２に接続する各カメラには、後述するアクセス管理プロセスにより、１つの映像伝送チャネル（又はチャネル番号）が割り当てられている。
【００５２】
本実施例ではまた、映像送信にブロードキャスト通信を利用して、複数地点への映像送信を可能とする。チャネル番号はブロードキャスト・アドレスのポート番号であり、チャネル番号を指定することによりブロードキャスト・アドレスの特定ポートにデータを送信できる。映像受信に関しては、ネットワーク１０２上の映像データは、ネットワーク・インターフェース１３２により取り込まれ、ビットマップ・ディスプレイ１３０に映像表示される。チャネル番号を指定することで、ブロードキャストされている映像の中から目的のカメラ映像を受信できる。
【００５３】
映像データは、実際には圧縮符号化されて各チャネルに伝送されるが、本発明の必須の要素では無いので、圧縮符号化の処理については説明を省略した。
【００５４】
図８は、ｈｏｓｔＡというホスト名の映像通信装置１００−１，１００−２，・・・，又は１００−Ｋのモニタ・ディスプレイの画面例である。この映像通信装置には、４台のビデオ・カメラが接続されているものとする。
【００５５】
１４０は、この映像通信装置に直接接続するカメラからの入力映像を表示する入力映像ウインドウである。入力映像ウインドウ１４０は、この映像通信装置に直接接続されているビデオ・カメラの各々の映像を表示する映像表示域１４０−１，・・・１４０−４からなり、各映像表示域１４０−１，・・・１４０−４の下には、各映像表示域１４０−１，・・・１４０−４に表示される映像のカメラ名が表記される。通常は、入力され、且つ他の映像通信装置に送信されている映像が、入力映像ウインドウ１４０に表示されるが、入力されている全映像を入力映像ウインドウ１４０に表示し、その内で、他の映像通信装置に送信している映像について、送信中であることを示す記号などを別途、表示するようにしてもよい。
【００５６】
１４２は、他の映像通信装置から送信された映像を表示する受信映像ウインドウである。本実施例では、受信映像ウインドウ１４２は、６つの映像表示域１４２−１，・・・１４２−６を具備し、６つの受信映像を同時に表示できる。各映像表示域１４２−１，・・・，１４２−６の下には、送信元のカメラ名が同時に表示されるようになっている。カメラ名リスト１４２−７には、他の映像通信装置に接続する利用可能なカメラのカメラ名がリストとして表示される。このリストは、後述するアクセス管理プロセスのデータベースにアクセスして入手できる。
【００５７】
カメラ名リスト１４２−７に表示されるリストから、６つの映像表示域１４２−１，・・・１４２−６のうちの指定の表示域で映像を表示するカメラ名を選択する。例えば、カメラ名リスト１４２−７に表示される何れかのカメラ名をクリックして選択し、６つの映像表示域１４２−１，・・・，１４２−６の何れかをクリックして選択する。又は、カメラ名リスト１４２−７に表示される何れかのカメラ名をクリックして選択した状態で、６つの映像表示域１４２−１，・・・，１４２−６の何れかの上にドラッグする。
【００５８】
削除ボタン１４６をクリックした後に、映像が表示されている映像表示域をクリックすることにより、その映像表示域での映像表示を終了できる。この操作は、後述するアクセス管理プロセスに、受信状態の変化として通知される。
【００５９】
１４４は、カメラを遠隔操作するためのカメラ操作ウインドウであり、画面上のボタン又はスクロールバーにより、任意の指定のカメラのパン、チルト及びズームを遠隔操作できる。このカメラ操作ウインドウ１４４は、入力映像ウインドウ１４０及び受信映像ウインドウ１４２の、映像を表示している何れかの映像表示域１４０−１，・・・１４０−４，１４２−１，・・・１４２−６内をクリックすることによりポップアップする。これにより、クリックした映像表示域に表示される映像を入力するカメラを遠隔操作できる。他の映像通信装置に接続するカメラの場合には、ネットワーク経由でカメラ制御信号が送られる。カメラ操作を中止する際には、解除ボタン１４４−１をクリックするか、又は、カメラ操作ウインドウ１４４自体を閉じる操作をすればよい。すると、カメラ操作ウインドウ１４４が閉じて、カメラ操作が終了する。カメラ操作の開始及び終了に関しても、アクセス管理プロセスに通知される。
【００６０】
図９は、本実施例のプロセス構成図である。本実施例には、基本的に、映像送信プロセス１５０、映像表示プロセス１５２、カメラ制御サーバ１５４、カメラ制御クライアント１５６及びアクセス管理プロセス１５８の５種類のプロセスがある。
【００６１】
映像送信プロセス１５０は、カメラ映像入力選択装置１１２の映像切り替え、映像の取り込み及び映像送信を管轄する。入力された映像は入力映像ウインドウ１４０に表示される。映像表示プロセス１５２は、複数の他地点からの映像の受信及び表示を管轄する。他地点から配送される映像の中から任意の６地点の映像を受信映像ウインドウ１４２に表示する。
【００６２】
カメラ制御サーバ１５４は、カメラ制御信号をネットワーク経由で受け取り、制御対象のカメラの適したカメラ制御信号を制御信号ポート１２６を介してカメラ映像入力選択装置１１２に出力する。カメラ制御クライアント１５６は、カメラ操作ウインドウ１４４に対する操作に応じて、指定のカメラに向けてカメラ制御信号を送出する。
【００６３】
アクセス管理プロセス１５８は、ネットワーク１０２に接続されている全ての映像通信装置１００−１，１００−２，・・・，１００−Ｋの映像送受信及びカメラ操作を管理する。
【００６４】
プロセス１５０，１５２，１５４，１５６は、各映像通信装置１００−１，１００−２，・・・，１００−Ｋ上で稼働しているが、アクセス管理プロセス１５８は、ネットワーク１０２に接続する何れか１つの映像通信装置上でのみ稼働している。
【００６５】
図１０は、アクセス管理プロセス１５８が管理する管理データベースの構造例を示す。この管理データベースは、映像送信装置リスト、映像受信装置リストとからなる。
【００６６】
映像送信装置リストは、送信カメラ名、チャネル番号、カメラ操作ホスト名及び受信ホスト・リストの各フィールドからなる。送信カメラ名には、ネットワーク１０２上の全てのカメラのカメラ名が登録される。この登録は、各映像通信装置１００−１，１００−２，・・・，１００−Ｋにおいて映像送信プロセス１５０が起動された時に行なわれる。チャネル番号のフィールドには、送信カメラ名のフィールドに登録されたカメラの映像を送信するのに割り当てられたチャネルのチャネル番号が格納される。カメラ名とチャネル番号は１対１に対応する。アクセス管理プロセス１５８は、使用されていないポート番号を各カメラに順番に割り当てることで、互いに重複しないチャネルを各カメラに割り当てる。
【００６７】
カメラ操作ホストのフィールドには、送信カメラ名で特定されるカメラを遠隔操作しているホストがある場合に、そのホスト名が格納される。遠隔操作しているホストが存在しない場合、このエントリは空になっている。カメラ操作ウインドウ１４４のポップアップにより、該当するホスト名がカメラ操作ホストのフィールドに登録され、カメラ操作ウインドウ１４４のクローズにより、その登録が抹消され、再び空になる。
【００６８】
受信ホスト・リストのフィールドには、映像受信装置リストにリンクするポインタが格納される。映像受信装置リストには、受信ホスト名リストでリンクするレコードの送信カメラ名で特定されるカメラの入力映像を受信している１以上の映像受信装置のホスト名のリストが格納される。
【００６９】
送信カメラ名、チャネル番号及びカメラ操作ホスト、並びに、受信ホスト名リストでリンクする映像受信装置リストは、１つのカメラに対する管理情報となるので、以下、これらのデータの集りを管理情報セットと呼ぶ。
【００７０】
一つの映像通信装置で動作している映像送信プロセスを例にとり、映像送信プロセス１５０の動作を説明する。同じ映像通信装置に接続する各ビデオ・カメラには、異なるカメラ番号が付けられている。ネットワーク全体で見ると、先に説明したように、カメラ名は、”ｈｏｓｔＡ．１”及び”ｈｏｓｔＡ．２”などとなるが、以下では単に、カメラ１、カメラ２、・・・カメラＮと表記する。そして、アクセス管理プロセス１５８へのＲＰＣコールによって確保した、各カメラに対応するチャネル番号をチャネル１、チャネル２、・・・チャネルＮとする。以下での説明では、接続されているカメラは４台であるが、一般化するためにカメラ台数をＮとして説明する。
【００７１】
映像送信の開始を指示する命令として、以下の命令を設けた。即ち、
ｓｅｎｄ（ｍ）
ｍ：チャネル番号（１≦ｍ≦Ｎ）
この命令に応じて、図１１に示すように、ビデオ・キャプチャ装置１２８は、カメラ映像入力選択装置１１２からの１フレーム分の映像信号をＡ／Ｄ変換して取り込み（Ｓ１０１）、取り込まれた映像がディスプレイ１３０により表示され（Ｓ１０２）、ネットワーク・インターフェース１３２を介してネットワークのチャネルｍに出力される（Ｓ１０３）。
【００７２】
また、カメラ映像入力選択装置１１２へのカメラ映像選択切り替え命令として、以下の命令を設けた。即ち、
ｃｈａｎｇｅ（ｎ）
ｎ：カメラ番号（１≦ｎ≦Ｎ）
この命令は、カメラ映像入力選択装置１１２に対し、カメラ番号ｎのカメラ映像を選択してコンピュータ１２０に出力することを指示するものであり、これに対応する制御信号が制御信号ポート１２６からカメラ映像入力選択装置１１２に供給される。実際に試験した例では、ｃｈａｎｇｅ命令の実行には約１秒程度かかった。勿論、各部の処理速度によって、これより速くなり、又は遅くなる。
【００７３】
本実施例では、Ｎ個のカメラ映像のそれぞれを一定の時間間隔で更新される静止画として送信する。これにより、伝送する映像数に比べて、伝送回線の容量が少なくて済む。なお、以下の説明では、フレームの更新が１秒以上の時間で行なわれる連続的に表示される映像を「静止画」と呼び、これに対して、より短いレートでフレームが更新される連続映像を「動画」と呼ぶ。即ち、本実施例では、フレーム・レートが１フレーム／秒未満の場合に静止画と呼び、１フレーム／秒以上の場合に動画と呼ぶ。
【００７４】
図１２は、本実施例の第１の動作フローチャートを示す。先ず、ネットワーク１０２上に、カメラの台数Ｎと同じＮ個の通信チャネルを確保する（Ｓ１１１）。１フレーム送信するカメラを指定するカメラ番号変数ｎに１をセットする（Ｓ１１２）。ここでは、変数ｎの初期値を１としたが、０又は２からＮ−１までのどの数値をセットしてもよいことは明らかである。
【００７５】
映像を送信するカメラを循環的に切り替えていくためには、ｃｈａｎｇｅ命令及びｓｅｎｄ命令を一定時間間隔で発行すればよい。図１２では、これをタイムアウト手続きにより実現している。即ち、ｃｈａｎｇｅ命令による映像切替えと、１フレーム分の映像の取り込みと送信のｓｅｎｄ命令の発行周期をＴｓ（秒）とし、これをタイムアウト時間として登録する（Ｓ１１３）。ここでは、Ｔｓ＝１０秒とした。
【００７６】
タイムアウトの発生、即ちＴｓの経過を待ち（Ｓ１１４）、タイムアウトの発生を検出すると（Ｓ１１５）。以降の処理で消費する時間も加味するために、先ず、Ｔｓを再びタイムアウト登録する（Ｓ１１６）。
【００７７】
カメラ番号変数ｎをインクリメントし（Ｓ１１７）、Ｎより大きくなれば（Ｓ１１８）、変数ｎに１をセットする（Ｓ１１９）。このカメラ番号変数ｎをパラメータとして、ｃｈａｎｇｅ命令によりカメラ映像入力を切り替え（Ｓ１２０）、ｓｅｎｄ命令によりそのカメラ映像をチャネル番号ｎのチャネルに１フレーム送信する（Ｓ１２１）。ｃｈａｎｇｅ命令とｓｅｎｄ命令で同じ変数ｎをパラメータとしているので、カメラ番号ｎのカメラ映像がチャネル番号ｎの通信路に送信されることになる。
【００７８】
ｓｅｎｄ命令の発行後、Ｓ１１４に戻り、次のタイムアウトを待つ。
【００７９】
このようにして、カメラ１、カメラ２、・・・及びカメラＮの出力映像が循環的に、Ｔｓ（ここでは１０秒）の時間間隔で選択され、対応するチャネル上を伝送される。受信側から見ると、各カメラの映像は、Ｔｓ×Ｎ（秒）毎に更新される静止画になっている。
【００８０】
Ｓ１１７〜Ｓ１２１の処理に要する時間をＴｐとすると、タイムアウト時間Ｔｓは、
Ｔｓ＞Ｔｐ
であればよいことは明らかである。即ち、Ｔｓは、上式を満たす限り、１０秒である必要はない。本実施例では、ｃｈａｎｇｅ命令の処理時間を１秒程度としているので、Ｔｐが１秒より小さくなることはない。従って、Ｔｓも、１秒より小さくとることはできない。
【００８１】
このように動作させることで、各カメラ映像が低いフレーム・レートで送信されることになり、低速なコンピュータでも十分に対応できるようになる。受信側では、低いフレーム・レートではあるが、多数のカメラ映像を受信できるので、広い範囲を大雑把に把握できる。
【００８２】
本実施例はまた、Ｎ個のカメラ映像の内の１つを、所定期間、動画として送信するとともに、動画として送信するカメラ映像を一定周期で順次切り替えていくことができる。映像を送信しないカメラの映像は、受信側では静止画となる。これにより、図１２の場合に比べて、受信側では、循環的で間欠的ではあるが、各カメラの撮影範囲の時間的な変化をより細かく把握できるようになる。このような動作を実現するフローチャートを図１３に示す。図１３では、カメラ映像を切り替えるための時間変数Ｔｓに加えて、動画伝送のフレーム周期を規定する時間変数ｔｓを導入する。
【００８３】
先ず、ネットワーク上のカメラの台数Ｎと同じＮ個の通信チャネルを確保する（Ｓ１３１）。１フレーム送信するカメラを指定するカメラ番号変数ｎに１をセットする（Ｓ１３２）。変数ｎは１からＮまでの何れであってもよい。時間変数Ｔｓ及びｔｓをタイムアウト登録し（Ｓ１３３，１３４）、イベント（ここではタイムアウト）の発生を待つ（Ｓ１３５）。ここでは、ｔｓ＝０．１秒とした。
【００８４】
タイムアウトの発生を検出したら（Ｓ１３６）、それが、Ｔｓによるものか、又はｔｓによるものかを判別する（Ｓ１３７）。ｔｓによるタイムアウトの場合には、ｔｓを再びタイムアウト用に登録し（Ｓ１３８）、カメラ番号変数ｎをパラメータとするｓｅｎｄ命令により、カメラ番号ｎのカメラの出力映像をチャネルｎに１フレーム、送信し（Ｓ１３９）、Ｓ１３５に戻る。Ｔｓに相当する時間（即ち、１０秒）が経過するまで、ｔｓ（０．１秒）を周期として、カメラｎの映像がチャネルｎに出力される。即ち、カメラｎの映像が、１０フレーム／秒のフレーム・レートで１０秒間、チャネルｎに出力される。
【００８５】
タイムアウトの発生がＴｓによるものであるとき（Ｓ１３７）、先ず、Ｔｓを再びタイムアウト登録する（Ｓ１４０）。カメラ番号変数ｎをインクリメントし（Ｓ１４１）、Ｎより大きくなれば（Ｓ１４２）、変数ｎに１をセットする（Ｓ１４３）。このカメラ番号変数ｎをパラメータとして、ｃｈａｎｇｅ命令によりカメラ映像入力を切り替え（Ｓ１４４）、Ｓ１３５に戻って、次のイベントの発生を待つ。
【００８６】
このようにして、カメラ１の映像が１０秒間、１０フレーム／秒で送信されると、カメラ２の映像が同様に、１０秒間、１０フレーム／秒で送信される。カメラ３、・・・、カメラＮと切り替わっていき、カメラＮの後には、再びカメラ１の映像が、１０秒間、動画送信される。受信側から見ると、各カメラ映像は１０秒間、動画で表示された後、１０×（Ｎ−１）秒間静止画となる。この動作例では、伝送路の伝送容量は、１０フレーム／秒を満たし得るものであればよい。
【００８７】
Ｓ１４１からＳ１４４の処理を実行するのに要する時間は、Ｔｓより短くなければならない。勿論、Ｔｓ＞ｔｓでなければならない。
【００８８】
このような動作により、送信側では同時に２以上の動画を送信しないので、負荷を削減できる。また、受信側では、送信された映像により、広い範囲の状況をより詳しく認識できる。
【００８９】
本実施例はまた、Ｎ個のカメラ映像のなかから１つを重点的に、即ち動画として送信し、残りのＮ−１個のカメラ映像を一定時間毎に更新される静止画として送信することもできる。図１４は、その動作フローチャートを示す。
【００９０】
図１４を説明する。先ず、ネットワーク上にカメラ台数Ｎと同じＮ個の通信路を確保する（Ｓ１５１）。１フレーム送信するカメラを指定するカメラ番号変数ｎに１をセットする（Ｓ１５２）。動画送信するカメラのカメラ番号を変数ｋにセットする（Ｓ１５３）。変数ｋは、１からＮまでの何れであってもよいが、ここでは、１にしている。ｃｈａｎｇｅ命令により、映像を取り込むカメラをカメラ番号ｋのカメラに切り替える（Ｓ１５４）。
【００９１】
カメラ映像を切り替えるための時間変数Ｔｓと、動画伝送のフレーム周期を規定する時間変数ｔｓの各値をタイムアウト登録し（Ｓ１５５，Ｓ１５６）、イベントの発生を待つ（Ｓ１５７）。ここでは、Ｔｓ＝１０秒、ｔｓ＝０．１秒とした。
【００９２】
Ｔｓ又はｔｓのタイムアウトの発生を検出すると（Ｓ１５８）、ｔｓのタイムアウトではＳ１６０以降を実行し、ＴｓのタイムアウトではＳ１６２以降を実行する（Ｓ１５９）。通常は、先ず、ｔｓのタイムアウトが発生する。
【００９３】
ｔｓのタイムアウトのとき（Ｓ１５９）、ｔｓを再びタイムアウトに再登録し（Ｓ１６０）、カメラ番号ｋのカメラ映像をチャネルｋに１フレーム送信し（Ｓ１６１）、Ｓ１５７に戻る。Ｔｓ＝１０秒、ｔｓ＝０．１秒としたので、カメラ番号ｋのカメラ映像が、１０秒間にわたり、１０フレーム／秒で送信される。
【００９４】
Ｔｓのタイムアウトが発生すると（Ｓ１５９）、Ｔｓを再びタイムアウトに再登録し（Ｓ１６２）、カメラ番号ｎをインクリメントする（Ｓ１６３）。新たなカメラ番号ｎがｋに一致する場合には（Ｓ１６４）、ｎを更にインクリメントする（Ｓ１６５）。カメラ番号ｋのカメラ映像が動画送信の対象になっているからである。ｎがＮを越えていれば、ｎに１をセットする（Ｓ１６６，Ｓ１６７）。
【００９５】
送信すべきカメラをｃｈａｎｇｅ命令によりカメラ番号ｎのカメラに切り替え（Ｓ１６８）、ｓｅｎｄ命令によりカメラ番号ｎのカメラ映像をチャネルｎに１フレーム送信し（Ｓ１６９）、送信すべきカメラをｃｈａｎｇｅ命令によりカメラ番号ｋのカメラに切り替える（Ｓ１７０）。再びＳ１５７に戻り、イベントの発生を待つ。
【００９６】
Ｔｓは、Ｓ１６３からＳ１７０の処理を行なうのにかかる時間より長い時間に設定されなければならない。勿論、ｔｓはＴｓよりも短くなければならない。
【００９７】
このようにして、カメラ１の映像を動画で送信しつつ、それ以外のカメラの映像を１０秒間隔で切り替えながら静止画として、送信できる。どの映像がどのカメラによるものかは、各映像が伝送される伝送チャネルにより識別できる。受信側から見ると、カメラ１の映像は１０秒毎に、他のカメラ映像を１フレーム送信する処理に要する時間、即ち、Ｓ１６３〜Ｓ１７０の処理に要する時間だけ、途切れる動画になっており、他のカメラ映像は、それぞれ、１０×（Ｎ−１）秒毎に更新される静止画となっている。
【００９８】
このような機能又は動作は、ＴＶ会議システム又はビデオ会議システムなどで、相手端末のオペレータを重点的に映像表示しながらも、なおかつ周囲の状況も表示したいといった場合に好適である。
【００９９】
図１２に示した動作例又は実施例では、Ｔｐが充分小さいときには、各カメラの映像を動画とみなすことができる。例えば、Ｔｐが０．０５秒以下の場合、Ｔｓを０．０５（秒）とすることができ、Ｎが１０程度ならば、各カメラの映像のフレーム・レートは、１／（Ｔｓ×Ｎ）＝２（フレーム／秒）となって、先の定義によれば、一応、動画とみなすことができる。勿論、このためには更に、ｃｈａｎｇｅ命令を高速に実行できる必要があることは明らかである。
【０１００】
本実施例では、映像送信プロセス１５０は、アクセス管理プロセス１５８の管理する情報をもとに、複数のカメラの出力を選択するカメラ映像入力選択装置１１２の選択方法を切り替える。
【０１０１】
先ず、アクセス管理プロセス１５８の情報管理の動作を詳しく説明する。本実施例では、各プロセス１５０〜１５６とアクセス管理プロセス１５８との間の情報のやり取りには、ＲＰＣ（Ｒｅｍｏｔｅ  Ｐｒｏｃｅｄｕｒｅ  Ｃａｌｌ）コール又はブロードキャスト通信を用いる。ＲＰＣコールは、以下のケースで使用される。即ち、
１）送信プロセス起動
２）送信プロセス終了
３）映像受信開始
４）映像受信終了
５）カメラ操作開始
６）カメラ操作終了
７）送信カメラ名リスト獲得要求
【０１０２】
送信プロセス起動及び送信プロセス終了は、映像送信プロセス１５０が起動及び終了した場合に、そのことをアクセス管理プロセス１５８に通知するＲＰＣコールである。これらの引数又はパラメータは送信カメラ名である。送信プロセス起動の返り値は、送信を行なうための通信路のチャネル番号であり、送信プロセス終了には返り値は無い。
【０１０３】
映像受信開始及び映像受信終了は、それぞれ、映像表示プロセス１５２において、受信映像ウインドウ１４２中のカメラ名リスト１４２−７からカメラを選択した場合、及び映像受信を終了した場合に、その旨をアクセス管理プロセス１５８に通知するＲＰＣコールである。これらの引数は送信カメラ名と受信ホスト名である。映像受信開始の返り値は、送信カメラ名に対応したチャネル番号であり、映像受信終了には返り値は無い。
【０１０４】
カメラ操作開始及びカメラ操作終了は、カメラ制御クライアント１５６がカメラ操作を開始及び終了する時に、そのことをアクセス管理プロセス１５８に知らせるＲＰＣコールである。これらの引数は送信カメラ名とカメラ操作ホスト名である。カメラ操作開始の返り値は、カメラ操作の許可又は拒否を示す１又は０であり、カメラ操作終了には返り値は無い。
【０１０５】
送信カメラ名リスト獲得要求は、映像表示プロセス１５２が現在受信可能な映像を知るために、送信カメラ名の一覧をアクセス管理プロセス１５８に要求するＲＰＣコールである。受信映像表示ウインドウ１４２の更新ボタン１４２−９をクリックすることによってコールされる。引数は無い。返り値は、”ｈｏｓｔ．１，ｈｏｓｔＡ．２，ｈｏｓｔＡ．３，・・・”というように、図１０に示す映像送信装置リストのカメラ名に登録される全カメラのリストである。
【０１０６】
ブロードキャストは、映像送信装置リスト及び映像受信装置リストの何らかに変更が加えられた場合に使用される。この時、図１５に示すように、変更のあった管理情報セットが、ネットワーク１０２上の全ての映像通信装置１００−１，１００−２，・・・，１００−Ｋにブロードキャストされる。なお、このブロードキャストに際して、映像送受信に用いられる通信路とは別の通信路を示すポート番号が指定される。映像データに比べてデータ量は非常に小さいので、ネットワーク・トラフィックを増やすことはない。
【０１０７】
図１６は、アクセス管理プロセス１５８の管理データベースの状態変更に関する動作フローチャートである。
【０１０８】
アクセス管理プロセス１５８は先ず、全ての映像通信装置１００−１，１００−２，・・・，１００−Ｋがネットワーク１０２上で使用可能なブロードキャスト・アドレスのポート番号を確保し、図１０に示す管理データベースの映像送信装置リストのチャネル番号のフィールドに格納する（Ｓ２０１）。図１０では、１０２０１、１０２０２及び１０２０３が一例として格納されている。次に、ＲＰＣコールを待つ（Ｓ２０２）。
【０１０９】
いずれかの映像通信装置で映像送信プロセス１５０が起動されると、送信プロセス起動のＲＰＣコールがアクセス管理プロセス１５８に送られる（Ｓ２０３）。この送信プロセス起動に対して、アクセス管理プロセス１５８は、図１７に示すように、映像送信装置リストのカメラ名のフィールドが空になっている管理情報セットを検索し（Ｓ２１２）、空の領域が見つかれば、その領域にＲＰＣの引数である”送信カメラ名”を格納し（Ｓ２１３）、それに対応するチャネル番号のフィールドの内容を返り値とする（Ｓ２１４）。空の領域が見つからなければ（Ｓ２１２）、−１を返す（Ｓ２１５）。映像送信プロセス１５０は、−１でない返り値を受け取った後、返り値で示されるチャネル番号の通信路に、送信カメラ名で特定されるカメラ映像を送出する。返り値が−１の場合は、空きチャネルがないので、映像送信プロセス１５０は、カメラ映像を送信しない。
【０１１０】
いずれかの映像通信装置上で映像送信プロセス１５０が終了すると、アクセス管理プロセス１５８には送信プロセス終了のＲＰＣコールが入力する（Ｓ２０４）。これに応じて、アクセス管理プロセス１５８は、図１８に示すように、そのＲＰＣコールの引数で示される送信カメラ名にマッチするカメラ名を映像送信装置リスト（図１０）の送信カメラ名のフィールドから検索し（Ｓ２１６）、その送信カメラ名に対応する送信カメラ名、カメラ操作ホスト及び受信装置ホスト名リストの各フィールドを空にする（Ｓ２１７）。
【０１１１】
いずれかの映像通信装置で映像表示が開始されると、受信開始のＲＰＣコールがアクセス管理プロセス１５８に伝達される（Ｓ２０５）。アクセス管理プロセス１５８は、これに応じて、図１９に示すように、その引数で示される送信カメラ名とマッチするカメラ名を映像送信装置リスト（図１０）の送信カメラ名のフィールドから検索し（Ｓ１３２）、そのカメラに対応する映像受信装置リストのエントリの一番後ろに、引数である受信ホスト名を登録する（Ｓ２１９）。そして、チャネル番号を返す（Ｓ２２０）。映像表示プロセス１５２は、返り値で示されるチャネル番号を指定して、映像を受信する。これにより、目的の映像を受信し、表示できる。
【０１１２】
映像表示プロセス１５２映像表示が終了されると、受信終了のＲＰＣコールがアクセス管理プロセス１５８に伝達される（Ｓ２０６）。アクセス管理プロセス１５８は、これに応じて、図２０に示すように、その引数で示される送信カメラ名とマッチするカメラ名を映像送信装置リスト（図１０）の送信カメラ名のフィールドから検索し（Ｓ２２１）、さらに、そのカメラに対応する映像受信装置リスト（図１０）から、引数で示される受信ホスト名を検索し（Ｓ２２２）、その受信ホスト名を映像受信装置リストから削除し、空いたエントリを詰めるように並び変える（Ｓ２２３）。
【０１１３】
カメラ操作を開始する操作があると、カメラ制御クライアント１５６は、カメラ制御開始のＲＰＣコールをアクセス管理プロセス１５８に伝達する（Ｓ２０７）。アクセス管理プロセス１５８は、これに応じて、図２１に示すように、その引数で示される送信カメラ名とマッチするカメラ名を映像送信装置リスト（図１０）の送信カメラ名のフィールドから検索し（Ｓ２２４）、マッチした送信カメラ名に対応する管理情報セットの、カメラ操作ホスト名のフィールドが空かどうかを調べる（Ｓ２２５）。これは、同じカメラを複数のホストが同時に操作するのを防ぐためである。カメラ操作ホストのフィールドが空であれば（Ｓ２２５）、ＲＰＣコールの引数で示されるホスト名をカメラ操作ホストのフィールドに格納し（Ｓ２２６）、１を返す（Ｓ２２７）。カメラ操作ホストのフィールドが空でなければ（Ｓ２２５）、０を返す（Ｓ２２８）。カメラ制御クライアント１５６は、返り値が１なら、カメラを操作する制御命令を発行でき、０なら発行できない。
【０１１４】
カメラ操作を終了する操作があると、カメラ制御クライアント１５６は、カメラ制御終了のＲＰＣコールをアクセス管理プロセス１５８に伝達する（Ｓ２０８）。アクセス管理プロセス１５８は、これに応じて、図２２に示すように、そのＲＰＣコールの引数で示される送信カメラ名とマッチする送信カメラ名を映像送信装置リスト（図１０）の送信カメラ名のフィールドから検索し（Ｓ２２９）、マッチした送信カメラ名に対応する管理情報セットのカメラ操作ホストのフィールドにＮＵＬＬを格納する（Ｓ２３０）。
【０１１５】
これらのＲＰＣコールを受けて、管理データベースの内容が変更されると、内容変更された管理情報セットを図１５に示すようなデータ・フォーマットで全映像通信装置１００−１，１００−２，・・・，１００−Ｋにブロードキャストされる（Ｓ２１１）。
【０１１６】
また、送信カメラ名リスト獲得要求のＲＰＣコールに対しては（Ｓ２０９）、アクセス管理プロセス１５８は、映像送信装置リスト（図１０）の送信カメラ名のフィールドに登録される全カメラ名を所定のリスト形式で要求元に返送する（Ｓ２１０）。映像表示プロセス１５２は、このリストを受け取り、受信映像ウインドウ１４２のカメラ名リスト１４２−７に送信カメラ名をリスト表示する。
【０１１７】
このようにして、アクセス管理プロセス１５８は、ネットワーク１０２上の全ての映像通信装置１００−１，１００−２，・・・，１００−Ｋで行なわれている映像の送受信情報を管理し、管理情報の変更を、全ての映像通信装置１００−１，１００−２，・・・，１００−Ｋに通知する。
【０１１８】
本実施例では、映像送信プロセス１５０は、送受信情報をアクセス管理プロセス１５８から獲得し、以下の３つの指針に従って動作モードを切り替える。即ち、
１）受信ホストがいないビデオ・カメラについては、その出力映像を送信しない。
２）全ての映像表示プロセスが受信しているとき、そのカメラ映像を時分割による動画送信の対象とする。
３）カメラ操作されているビデオ・カメラの出力映像は、動画として送信し、その際、他に受信されているビデオ・カメラの出力映像は静止画として送信する。
【０１１９】
指針２）は、いわば、図１３に示す動作例に示す入力選択切り換え手順で映像を送信し、指針３）は、図１４に示す動作例に示す入力選択切り換え手順で映像を送信するものである。
【０１２０】
以上の３つの指針に従て動作するために、映像送信プロセス１５０には、図２３に示すような、送信カメラ・リストおよび受信ホスト・リストを具備する。このデータは、アクセス管理プロセス１５８により管理される映像送信装置リスト及び映像受信装置リスト（図１０）から、自装置に接続されているカメラに関する管理情報のみを集めたものである。図２３では、ｈｏｓｔＡで特定される映像送信プロセスのデータベースを示しており、ｈｏｓｔＡにはカメラが４台接続され、ｈｏｓｔＡ．１、・・・、ｈｏｓｔＡ．４と名前が付けられている。カメラｈｏｓｔＡ．１の出力映像はｈｏｓｔＢ及びｈｏｓｔＣにより受信されており、カメラｈｏｓｔＡ．３の出力映像はｈｏｓｔＣ及びｈｏｓｔＤにより受信されている。カメラｈｏｓｔＡ．３は、ｈｏｓｔＣにより操作されている。カメラｈｏｓｔＡ．２及びカメラｈｏｓｔＡ．４の映像は、受信されていない。
【０１２１】
図２３に示すデータ例では、指針３）に従い、カメラｈｏｓｔＡ．１及びカメラｈｏｓｔＡ．３の映像が送信されるが、カメラｈｏｓｔＡ．３の映像は動画として送信され、カメラｈｏｓｔＡ．１の映像は静止画として送信される。映像送信プロセス１５０は、図２３に示す送信カメラ・リストに従って、映像入力するカメラを切り換える。図２３に示す送信カメラ・リスト及び受信ホスト・リストは、アクセス管理プロセス１５８からブロードキャストされた情報に従って更新される。
【０１２２】
以下の説明では、カメラｈｏｓｔＡ．１、・・・、ｈｏｓｔＡ．４をカメラ１、・・・、カメラ４と表記し、そのカメラに対応するチャネル番号をチャネル１、・・・、チャネル４と表記する。
【０１２３】
図２４乃至図２７を参照して、映像送信プロセス１５０の動作を詳細に説明する。先ず、カメラの台数をチェックし（Ｓ３０１）、各カメラを識別できるように固有の名前を付ける（Ｓ３０２）。本実施例ではｈｏｓｔＡ．１、ｈｏｓｔＡ．２、ｈｏｓｔＡ．３及びｈｏｓｔＡ．４というように、コンピュータのホスト名とカメラ番号を’．’でつないだものになる。
【０１２４】
カメラ名を引数としてアクセス管理プロセス１５８にＲＰＣコールを行ない、返り値としてチャネル番号を獲得し、各カメラの映像を伝送するためのチャネルを確保する（Ｓ３０３）。なお、カメラ名とチャネル番号の対応は、図２３に示す送信カメラ・リストに格納される。本実施例では、３種類の値を取り得る変数ｍｏｄｅを用いる。ｍｏｄｅ＝１は、どのカメラの映像も送信しないモードを示し、ｍｏｄｅ＝２は、図１３に示す動作例のように、一定時間の動画映像送信を順番に実行するモードを示す。ｍｏｄｅ＝３は、図１４に示す動作のように、特定のカメラの出力映像を動画で送信し、残りのカメラの映像を静止画で送信するモードを示す。
【０１２５】
この段階では、この段階では、ｍｏｄｅに１をセットして（Ｓ３０４）、受信ホストがアクセス管理プロセス１５８に登録されるまでは送信を行なわないようにする。そして、１フレーム毎に映像を送信するタイミング制御のためのタイムアウト・イベントと、アクセス管理プロセス１５８から送信されるブロードキャスト・メッセージの受信という２つのイベントの何れかを待つ（Ｓ３０５）。
【０１２６】
アクセス管理プロセス１５８からブロードキャスト・メッセージを受信すると（Ｓ３０８）、次のように、送信カメラ・リストを更新する。即ち、ブロードキャストされたメッセージは図１５のようなフォーマットになっているので、このメッセージのうち、送信カメラ名について、送信カメラ・リスト中の送信カメラ名のフィールドとの間でマッチングをとる（Ｓ３０９）。どの送信カメラ名ともマッチしなければ（Ｓ３０９）、自装置のカメラの送受信には関わりのないメッセージであるので、そのままイベント待ちに戻る。マッチすれば（Ｓ３０９）、まずメッセージ中の操作ホスト名及び受信ホスト・リストを送信カメラ・リストにコピーする（Ｓ３１０）。
【０１２７】
このように更新された送信カメラ・リストで、全ての送信カメラ名に対する受信ホスト・リストへのポインタがＮＵＬＬであるかどうかを調べる（Ｓ３１１）。その結呆、受信ホスト・リストへの全てのポインタがＮＵＬＬであれば（Ｓ３１１）、変数ｍｏｄｅに１セットして、どのカメラも送信を行なわないようにする（Ｓ３１２）。
【０１２８】
受信ホスト・リストへの全てのポインタにＮＵＬＬでないものがあれば（Ｓ３１１）、変数ｍｏｄｅに２をセットし（Ｓ３１３）、受信ホスト・リストへのポインタがＮＵＬＬでないカメラについて、遠隔操作されているかどうかを調べ（Ｓ３１４）、カメラ操作ホストのエントリがＮＵＬＬであれば（Ｓ３１４）、そのカメラは操作されていないので、そのままｍｏｄｅ＝２として扱い、最初に動画を送信すべきカメラ番号をセットして（Ｓ３１５）、タイムアウト時間Ｔｓ，ｔｓを設定し（Ｓ３１８）、イベント待ち（Ｓ３０５）に戻る。もしカメラが操作されていれば（Ｓ３１４）、変数ｍｏｄｅに３をセットし（Ｓ３１６）、カメラ操作ホストがＮＵＬＬでない送信カメラ名に対応するカメラ番号を動画カメラ番号ｋとしてセットすると共に、最初に静止画として送信するカメラのカメラ番号ｎをセットして（Ｓ３１７）、タイムアウト時間Ｔｓ，ｔｓを設定して（Ｓ３１８）、イベント待ち（Ｓ３０５）に戻る。
【０１２９】
発生するイベントがタイムアウトである場合（Ｓ３０６）、まず変数ｍｏｄｅの値を調べる（Ｓ３０７）。ｍｏｄｅが２であれば、Ｓ３２０に進み、ｍｏｄｅ＝３であれば、Ｓ３３０に進む。Ｓ３２０以降は、図１３に示す動作例とほぼ同じであるが、受信ホストがいないカメラについてその映像を送信しないようにするために、Ｓ３２７による条件判定が含まれる点が異なる。
【０１３０】
Ｓ３３０以降の動作は、図１４に示す動作例とほぼ同じであるが、切り替えの方法が少し異なる。Ｔｓによるタイムアウト場合（Ｓ３３０）、Ｔｓによるタイムアウトを新たに設定し（Ｓ３３３）、静止画送信のカメラ番号ｎをインクリメントする（Ｓ３３４）。つぎに、動画送信するカメラ以外に送信を行なうカメラがあるかどうかをチェックし（Ｓ３３５）、ないのならイベント待ち（Ｓ３０５）に戻る。送信すべきカメラがあるのなら（Ｓ３３５）、ｎと動画映像カメラ番号ｋが等しいかどうか調べ（Ｓ３３６）、等しければ、さらにカメラ番号ｎをインクリメントする（Ｓ３３７）。カメラ番号ｎがカメラ台数Ｎを越えていないかどうかをチェックし（Ｓ３３８）、越えていればカメラ番号ｎを１に戻す（Ｓ３３９）。このように静止画映像送信を行なうカメラのカメラ番号ｎを決定するが、このカメラに対する受信ホストが存在しなければ（Ｓ３４０）、Ｓ３３４に戻り、カメラ番号ｎをインクリメントする。このループにより、受信ホストがあるカメラを探す。
【０１３１】
受信ホストがあるカメラを見つけたら（Ｓ３４０）、そのカメラの映像を静止画送信するために、カメラ映像の入力を切り替え（Ｓ３４１）、送信を行ない（Ｓ３４２）、動画映像送信を行なうカメラに映像入力を切り替え（Ｓ３４３）、イベント待ち（Ｓ３０５）に戻る。
【０１３２】
このように動作させることで、受信されていないカメラの映像を送信せず、受信されているカメラの映像のみを一定時間順番に動画として送信し、また、遠隔操作されているカメラの映像を動画として送信する映像伝送システムを実現できる。
【図面の簡単な説明】
【０１３３】
【図１】本発明の一実施例の概略構成ブロック図である。
【図２】本実施例の映像送信処理のフローチャートである。
【図３】本実施例の第１の動作フローチャートである。
【図４】本実施例の第２の動作フローチャートである。
【図５】本実施例の第３の動作フローチャートである。
【図６】映像伝送システムに関する本発明の一実施例のネットワーク構成図である。
【図７】第２実施例における通信端末装置の概略構成ブロック図である。
【図８】第２実施例の表示画面例である。
【図９】第２実施例のプロセス構成図である。
【図１０】アクセス管理プロセス１５８が管理する送受信情報管理データベースの構造例である。
【図１１】第２実施例における映像送信処理の基本フローチャートである。
【図１２】第２実施例の第１の動作フローチャートである。
【図１３】第２実施例の実施例の第２の動作フローチャートである。
【図１４】第２実施例の第３の動作フローチャートである。
【図１５】アクセス管理プロセス１５８によりブロードキャストされる情報の構造と内容の例である。
【図１６】アクセス管理プロセス１５８の動作フローチャートである。
【図１７】図１６のＳ２０３の詳細なフローチャートである。
【図１８】図１６のＳ２０４の詳細なフローチャートである。
【図１９】図１６のＳ２０５の詳細なフローチャートである。
【図２０】図１６のＳ２０６の詳細なフローチャートである。
【図２１】図１６のＳ２０７の詳細なフローチャートである。
【図２２】図１６のＳ２０８の詳細なフローチャートである。
【図２３】映像送信プロセス１５０が保持する送信カメラ・リストの構造と内容の例である。
【図２４】映像送信プロセス１５０の動作フローチャートの一部である。
【図２５】映像送信プロセス１５０の動作フローチャートの一部である。
【図２６】映像送信プロセス１５０の動作フローチャートの一部である。
【図２７】映像送信プロセス１５０の動作フローチャートの一部である。
【符号の説明】
【０１３４】
１０−１，１０−２，・・・，１０−Ｎ：ビデオ・カメラ
１２：カメラ映像入力選択装置
２０：コンピュータ
２２：ＣＰＵ
２４：主記憶
２６：制御信号ポート
２８：ビデオ・キャプチャ装置
３０：ビットマップ・ディスプレイ
３２：ネットワーク・インターフェース
３４：内部バス
１００−１，１００−２，・・・，１００−Ｋ：映像通信装置
１０２：ネットワーク
１１０−１，１１０−２，・・・，１１０−Ｎ：ビデオ・カメラ
１１２：カメラ映像入力選択装置
１２０：コンピュータ
１２２：ＣＰＵ
１２４：主記憶
１２６：制御信号ポート
１２８：ビデオ・キャプチャ装置
１３０：ビットマップ・ディスプレイ
１３２：ネットワーク・インターフェース
１３４：マウス
１３６：内部バス
１５０：映像送信プロセス
１５２：映像表示プロセス
１５４：カメラ制御サーバ
１５６：カメラ制御クライアント
１５８：アクセス管理プロセス
【図１】
2005151601.tif 000003
【図２】
2005151601.tif 000004
【図３】
2005151601.tif 000005
【図４】
2005151601.tif 000006
【図５】
2005151601.tif 000007
【図６】
2005151601.tif 000008
【図７】
2005151601.tif 000009
【図８】
2005151601.tif 000010
【図９】
2005151601.tif 000011
【図１０】
2005151601.tif 000012
【図１１】
2005151601.tif 000013
【図１２】
2005151601.tif 000014
【図１３】
2005151601.tif 000015
【図１４】
2005151601.tif 000016
【図１５】
2005151601.tif 000017
【図１６】
2005151601.tif 000018
【図１７】
2005151601.tif 000019
【図１８】
2005151601.tif 000020
【図１９】
2005151601.tif 000021
【図２０】
2005151601.tif 000022
【図２１】
2005151601.tif 000023
【図２２】
2005151601.tif 000024
【図２３】
2005151601.tif 000025
【図２４】
2005151601.tif 000026
【図２５】
2005151601.tif 000027
【図２６】
2005151601.tif 000028
【図２７】
2005151601.tif 000029