(57)【特許請求の範囲】
【請求項１】
少なくとも撮影アングルを遠隔操作可能な１乃至複数のカメラを制御するカメラ制御装置であって、
前記カメラの撮影アングルで得られた動画を映像ウインドウに表示し、前記カメラの撮影アングルで得られた静止画をサンプル画像ウインドウに表示する表示手段と、
前記カメラの撮影アングルが変更された場合は、前記サンプル画像ウインドウに表示される静止画を前記変更後の撮影アングルで撮影された静止画に更新し、前記カメラの撮影アングルが変更されない場合は、前記サンプル画像ウインドウに表示される静止画を更新しない制御手段と、
を備えることを特徴とするカメラ制御装置。
【請求項２】
前記カメラアングルには、パン角、チルト角及びズーム倍率が含まれることを特徴とする請求項１に記載のカメラ制御装置。
【請求項３】
更に、前記カメラに対してアングルを遠隔操作する操作手段を備えることを特徴とする請求項１に記載のカメラ制御装置。
【請求項４】
前記制御手段は、外部入力装置を使用した前記サンプル画像ウインドウに対する第１指示に応答して、前記サンプル画像ウインドウに表示される静止画を更新することを特徴とする請求項３に記載のカメラ制御装置。
【請求項５】
前記制御手段は、前記外部入力装置を使用した前記サンプル画像ウインドウに対する第２指示に応答して、前記サンプル画像ウインドウに対応するカメラを前記操作手段により遠隔操作することを許可することを特徴とする請求項４に記載のカメラ制御装置。
【請求項６】
前記表示手段は、カメラの配置位置とアングルとに従って、カメラシンボルを配置したマップを地図ウインドウに表示することを特徴とする請求項１乃至５のいずれか１項に記載のカメラ制御装置。
【請求項７】
前記制御手段は、外部入力装置を使用した前記地図ウインドウのカメラシンボルに対する第１指示に応答して、前記指示されたカメラシンボルに対応するサンプル画像ウインドウに表示される静止画を更新することを特徴とする請求項６に記載のカメラ制御装置。
【請求項８】
前記制御手段は、外部入力装置を使用した前記地図ウインドウの地図に対する第１指示に応答して、前記指示された地図上の位置に最も近いカメラシンボルに対応するサンプル画像ウインドウに表示される静止画を更新することを特徴とする請求項６または７に記載のカメラ制御装置。
【請求項９】
前記制御手段は、所定時間毎にカメラのアングル情報を取得し、取得した撮影アングルと予め記憶しておいた撮影アングルとが一致しなかった場合に、前記カメラの撮影アングルが変化したと判断することを特徴とする請求項１に記載のカメラ制御装置。
【請求項１０】
前記カメラを制御して撮影した映像を繋ぎ合わせて広視野角の映像を作成する手段をさらに有し、
前記表示手段は、前記作成手段で作成された広視野角の映像データ中の、前記カメラのアングルに従った領域を抽出し、表示させることを特徴とする請求項１に記載のカメラ制御装置。
【請求項１１】
前記サンプル画像ウインドウによって表示される静止画を、前記ウインドウによって表示される動画の解像度より低くするように構成されていることを特徴とする請求項１に記載のカメラ制御装置。
【請求項１２】
少なくとも撮影アングルを遠隔操作可能な１乃至複数のカメラを制御するカメラ制御装置の制御方法であって、
前記カメラの撮影アングルで得られた動画を映像ウインドウに表示し、前記カメラの撮影アングルで得られた静止画をサンプル画像ウインドウに表示する表示工程と、
前記カメラの撮影アングルが変更された場合は、前記サンプル画像ウインドウに表示される静止画を前記変更後の撮影アングルで撮影された静止画に更新し、前記カメラの撮影アングルが変更されない場合は、前記サンプル画像ウインドウに表示される静止画を更新しない制御工程と、
を備えることを特徴とするカメラ制御装置の制御方法。
【請求項１３】
前記カメラアングルには、パン角、チルト角及びズーム倍率が含まれることを特徴とする請求項１２に記載のカメラ制御装置の制御方法。
【請求項１４】
更に、前記カメラに対してアングルを遠隔操作させる操作工程を備えることを特徴とする請求項１２に記載のカメラ制御装置の制御方法。
【請求項１５】
前記制御工程は、外部入力装置を使用した前記サンプル画像ウインドウに対する第１指示に応答して、前記サンプル画像ウインドウに表示される静止画を更新することを特徴とする請求項１４に記載のカメラ制御装置の制御方法。
【請求項１６】
前記制御工程は、前記外部入力装置を使用した前記サンプル画像ウインドウに対する第２指示に応答して、前記サンプル画像ウインドウに対応するカメラを前記操作手段により遠隔操作することを許可することを特徴とする請求項１５に記載のカメラ制御装置の制御方法。
【請求項１７】
前記表示工程は、カメラの配置位置とアングルとに従って、カメラシンボルを配置したマップを地図ウインドウに表示することを特徴とする請求項１１乃至１６のいずれか１項に記載のカメラ制御装置の制御方法。
【請求項１８】
前記制御工程は、外部入力装置を使用した前記地図ウインドウのカメラシンボルに対する第１指示に応答して、前記指示されたカメラシンボルに対応するサンプル画像ウインドウに表示される静止画を更新することを特徴とする請求項１７に記載のカメラ制御装置の制御方法。
【請求項１９】
前記制御工程は、外部入力装置を使用した前記地図ウインドウの地図に対する第１指示に応答して、前記指示された地図上の位置に最も近いカメラシンボルに対応するサンプル画像ウインドウに表示される静止画を更新することを特徴とする請求項１８に記載のカメラ制御装置の制御方法。
【請求項２０】
前記制御工程は、所定時間毎にカメラのアングル情報を取得し、取得した撮影アングルと予め記憶しておいた撮影アングルとが一致しなかった場合に、前記カメラの撮影アングルが変化したと判断することを特徴とする請求項１２に記載のカメラ制御装置の制御方法。
【請求項２１】
前記各カメラを制御して撮影した映像を繋ぎ合わせて広視野角の映像を作成する工程をさらに有し、
前記表示工程は、前記作成工程で作成された広視野角の映像データ中の、前記カメラのアングルに従った領域を抽出し、表示させることを特徴とする請求項１２に記載のカメラ制御装置の制御方法。
【請求項２２】
少なくとも撮影アングルを遠隔操作可能な１乃至複数のカメラを制御するカメラ制御装置として機能させるプログラムを格納した記憶媒体であって、
前記カメラの撮影アングルで得られた動画を映像ウインドウに表示し、前記カメラの撮影アングルで得られた静止画をサンプル画像ウインドウに表示する表示手段と、
前記カメラの撮影アングルが変更された場合は、前記サンプル画像ウインドウに表示される静止画を前記変更後の撮影アングルで撮影された静止画に更新し、前記カメラの撮影アングルが変更されない場合は、前記サンプル画像ウインドウに表示される静止画を更新しない制御手段と、
して機能させるプログラムを格納した記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は遠隔操作でもって１乃至複数のカメラを制御するカメラ制御装置及び方法及び記憶媒体に関するものである。
【０００２】
【従来の技術】
本願出願人は、ビデオカメラを遠隔操作し、その撮影映像を表示させるシステムをいくつか提案した。
【０００３】
また、１つの装置に複数のビデオカメラが接続されている場合には、それらの中の１つのビデオカメラを選択することになる。この場合の選択は、個々のビデオカメラには番号や名前等を付し、それでもって選択することになろう。
【０００４】
そして、選択したビデオカメラの映像を見ながら、適当な操作パネルを用いてパン角、チルト角、ズームを変化させることになる。
【０００５】
【発明が解決しようとする課題】
しかしながら、複数ビデオカメラを有する場合、どのカメラの映像を見ているのか、そしてそのカメラがどの方向を向いているのかは、カメラの名前等の識別子と映像を通しただけでは分かりにくい。この結果、目的の場所（位置）を見るためにどのカメラをどちらの方向に制御するべきかわからず、試行錯誤することとがある。また、カメラの映像だけでは周囲の状況との対応が分かりづらい、という問題もある。
【０００６】
１つの解決法として地図を表示しその地図上にカメラ図形を表示し、カメラの位置を表示することであろう。しかし、地図情報だけでは個々のカメラの位置は把握できても、実際に個々のカメラからどのような映像が得られるのかは分からない。
【０００７】
【課題を解決するための手段】
本発明はかかる問題点に鑑みなされたものであり、カメラの撮影アングルが変更されたとしても、カメラを選択した際に表示される映像を、通信負荷を増大させることなく簡単かつ正確に把握することを可能ならしめるカメラ制御装置及び方法及び記憶媒体を提供しようとするものである。
【０００８】
この課題を解決するため、本発明のカメラ制御装置は、少なくとも撮影アングルを遠隔操作可能な１乃至複数のカメラを制御するカメラ制御装置であって、前記カメラの撮影アングルで得られた動画を映像ウインドウに表示し、前記カメラの撮影アングルで得られた静止画をサンプル画像ウインドウに表示する表示手段と、前記カメラの撮影アングルが変更された場合は、前記サンプル画像ウインドウに表示される静止画を前記変更後の撮影アングルで撮影された静止画に更新し、前記カメラの撮影アングルが変更されない場合は、前記サンプル画像ウインドウに表示される静止画を更新しない制御手段と、を備えることを特徴とする。
また、本発明のカメラ制御装置の制御方法は、少なくとも撮影アングルを遠隔操作可能な１乃至複数のカメラを制御するカメラ制御装置の制御方法であって、前記カメラの撮影アングルで得られた動画を映像ウインドウに表示し、前記カメラの撮影アングルで得られた静止画をサンプル画像ウインドウに表示する表示工程と、前記カメラの撮影アングルが変更された場合は、前記サンプル画像ウインドウに表示される静止画を前記変更後の撮影アングルで撮影された静止画に更新し、前記カメラの撮影アングルが変更されない場合は、前記サンプル画像ウインドウに表示される静止画を更新しない制御工程と、を備えることを特徴とする。
また、本発明の記憶媒体は、少なくとも撮影アングルを遠隔操作可能な１乃至複数のカメラを制御するカメラ制御装置として機能させるプログラムを格納した記憶媒体であって、前記カメラの撮影アングルで得られた動画を映像ウインドウに表示し、前記カメラの撮影アングルで得られた静止画をサンプル画像ウインドウに表示する表示手段と、前記カメラの撮影アングルが変更された場合は、前記サンプル画像ウインドウに表示される静止画を前記変更後の撮影アングルで撮影された静止画に更新し、前記カメラの撮影アングルが変更されない場合は、前記サンプル画像ウインドウに表示される静止画を更新しない制御手段と、して機能させるプログラムを格納する。
【０００９】
【発明の実施の形態】
以下、添付図面に従って本発明に係る実施形態の一例を詳細に説明する。
【００１０】
図１は本実施形態のカメラ制御装置のブロック構成図である。図中、１０（１０−１、１０−２、１０−３…）はビデオカメラ、１２（１２−１、１２−２，１２−３…）はビデオカメラ１０のパン・チルト・ズームを実際に駆動制御するカメラ制御部であり、以下に説明する装置本体からの信号に従って動作する。
【００１１】
カメラ制御装置２０において、２２は装置全体の制御を司るＣＰＵであり、２４は主記憶装置（ＲＡＭ）である。２６は２次記憶装置であって、例えばハードディスク装置である。２次記憶装置には、ＯＳ及びカメラ制御に係るプログラムが格納されていて、電源投入すると不図示のブートＲＯＭに格納された手順に従って２次記憶装置２６からＯＳを主記憶装置２４に読み出してＯＳを起動し、カメラ制御プログラムも主記憶装置に読み出してカメラ制御装置として動作する。
【００１２】
３０は表示画面上の所望とする位置を指定するためのポインティングデバイス（マウス）であり、表示されたカーソルの移動とカーソル位置における指示を与えるためのボタンが設けられている。尚、後述する処理では、このボタンを１回押下する操作をクリック、２回続けて押下する操作をダブルクリックとして説明している。３２はカメラ制御部１２に対して各種制御信号を出力したり、カメラ制御部からの状態情報を入力するカメラインタフェースである。実施形態におけるこのカメラインタフェースはＲＳ−２３２Ｃインタフェースとしている。勿論、これに限るものではなく、如何なるインタフェースであっても良い。３４は各カメラからの映像（実施形態ではＮＴＳＣ方式で出力されるものとしているが、これも如何なる形式であっても良い）をキャプチャ（デジタル化）するビデオキャプチャ部であり、ＡＶ端子に各カメラからの映像（必要なら音声）を入力することができる。そして、３６はネットワークインタフェースである。これら各種構成要素はバス３８を介して接続されている。
【００１３】
上記構成において、ＣＰＵ２２はそのカメラ制御プログラムの動作中において、カメラインタフェース３２を介して、いずれか１つのカメラを選択し、選択したカメラからの映像をキャプチャし、それをディスプレイ３４上に表示することになる。また、選択したカメラのパン角、チルト角、ズーム倍率（以下、これらを総称してアングルという）を変更して、所望とするアングルの映像を見ることができる。
【００１４】
なお、図１の構成でもって本装置がネットワーク上に接続されたカメラサーバとして機能することもできるし、他のカメラサーバーに接続してその映像を見ることもできる。これについての詳細については後述する。
【００１５】
図２は、ディスプレイ２８に表示される本実施形態の環境設定用のウインドウを示している。図示の如く、実施形態における装置上で、複数のウインドウが表示可能なウインドウシステム（例えば米国マイクロソフト社のＭＳ−Ｗｉｎｄｏｗｓ等）が動作している。
【００１６】
４２はオフィスの座席表等の地図を作成するウインドウであり、ここに良く知られたＣＡＤ等でもってその地図（レイアウト）を予め作成し、その作成した地図上にカメラの載置位置を示すカメラを示す図形（以下、カメラアイコンという）を配置する。作成された地図は２次記憶装置２６にファイルとして格納させておく。
【００１７】
説明を簡単にするため、実施形態における装置が置かれた環境は図示の地図の通りであるものとして説明する。つまり、図示のオフィス空間に示された位置に複数の制御可能カメラ（１０，１２）を配置しておくものとする。
【００１８】
さて、本装置に電源が投入され、カメラ制御装置として動作するようになると、上記のようにして作成された地図及び各カメラの配置位置情報を読み込み、図２に示すような各ウインドウを表示する。地図ウインドウ４２も勿論表示することになる。
【００１９】
そして、操作者が、いずれか１つのカメラを選択すると、その選択されたカメラに相当する図形が他のカメラ図形と区別して表示し、そのカメラのアングルをウインドウ４６をマウス３０で指定することで変更すると、その選択されたカメラの向き、及び視野方位と視野角がそれにつれて変化する（図示では、各カメラの撮影視野を示す線分で表示されている）。言うまでもないが、ズーム倍率（ズーム値）をあげると視野角は狭くなり、逆に倍率を下げると視野角は広くなるので、それに応じて各カメラアイコンの線分を変化させる。これは、他のカメラを選択した場合にも同様である。
【００２０】
ここで、本実施形態では、所定時間毎に各カメラのその時のアングル情報を獲得し、以前のアングル情報（主記憶装置２６に記憶されている）と比較する処理を行なう。そして、その時のアングルと従前の記憶されたアングルとが一致しない場合には、不一致になったカメラから映像を取り込ませ、その映像を縮小して、サンプル画像ウインドウ４０中の該当する枠に表示されている映像を更新する。
【００２１】
なお、サンプル画像ウインドウ４０の上部に表示されている記号は、地図ウインドウ中の各カメラに付した記号と対応するものである。各カメラに付した名前でも良いが、この場合には地図上にも名前となる文字列を付す必要があり、地図上の図形（テーブル等）の妨げになるので、記号で対応付けた。
【００２２】
本装置に電源が投入された場合には、カメラ制御プログラムは２次記憶装置２６より地図情報を読み込み（各カメラに付した記号を含む）、地図ウインドウ４２をはじめとする、サンプル画像ウインドウ４０、映像ウインドウ４４、カメラ制御ウインドウ４６を表示する。そして、各カメラを順次選択して例えばホームポジションにさせ、そのときの映像をサンプル画像ウインドウ４０に表示させる。この後は、操作者からの指示を待つことになる。勿論、地図ウインドウ４２上の各カメラアイコンは、その初期状態のアングル（パン角、チルト角、ズーム値）に従ってその撮影方位、視野角を示す線分で更新する。
【００２３】
ユーザは、上記のようにして各ウインドウが表示された後、所望とするカメラを選択して、そのカメラを操作しながら映像ウインドウ４４に表示される生の映像（動画）を見ることになる。
【００２４】
尚、操作対象のカメラ（映像ウインドウ４４に映像表示させるためのカメラ）を選択するには、サンプル画像ウインドウ４０上の所望とする映像を表示していた枠内をダブルクリック、もしくは地図ウインドウ４２中の、選択しようとしているカメラアイコンもしくはその近傍をダブルクリックすることで実現する。
【００２５】
また、先に説明したようにサンプル画像は、アングルが変化していれば所定周期で更新されるが、その周期が長い場合にはサンプル画像ウインドウ４０内の該当する枠をクリック、もしくは地図ウインドウ４２中の対応するカメラアイコンもしくはその近傍をクリックすることで、アングルの変化の有無を調べて更新する処理を実行する。
【００２６】
つまり、所定の位置でクリックした際には画像の更新を、ダブルクリックした際にはカメラ選択処理を行なう。但し、ダブルクリックした際には、サンプル画像ウインドウ４０の該当する枠内の画像を更新させる処理も行なうものとした。
【００２７】
以上の結果、サンプル画像ウインドウ４０の各枠が、地図ウインドウ４２上に表示された、どのカメラアイコンと対応付けられているかを判断でき、しかも、操作対象のカメラを単にそのサンプル画像ウインドウ４０上の該当する枠、もしくは地図ウインドウ４２中の該当するカメラアイコン（もしくはその近傍）をダブルクリックするだけで、操作対象として選択できるようになる。更には、カメラを選択する際には、事前にどのような映像が映像表示ウインドウ４４に表示されるのかを把握することもできるようになる。
【００２８】
実施形態における装置（主にＣＰＵ２２）の具体的な動作処理手順を図３〜図６に従って説明する。なお、このフローチャートに対応するプログラムは２次記憶装置２６に記憶されていることは既に説明した通りである。
【００２９】
先ず、ステップＳ１において、地図データ及びカメラのアングル情報を読み込み、ウインドウ４０、４２、４４、４６を表示する。次いで、ステップＳ２に進み、各カメラを選択して初期状態にして、映像を取り込み、その映像を順次サンプル画像ウィンドウ４０に表示させていく。その後、ステップＳ３に進んで、イベント待ちに入る。
【００３０】
イベントの種類は、先に説明したようにサンプル画像の更新時期になった場合に発生するタイマイベントと、操作者によるマウス３０によるクリックもしくはダブルクリックである。
【００３１】
サンプル画像の更新時期を知らせるタイマ割り込み、或いはマウス３０による操作以外である判断した場合には（ステップＳ４）、ステップＳ３に戻る。
【００３２】
さて、サンプル画像の更新時期を示すイベントであると判断した場合には、ステップＳ５に進んで、各カメラ制御１２に対して現在のアングル情報（パン角、チルト角、ズーム値）の通知要求を発して、それぞれのカメラのアングルと前回得たアングル情報とを比較する（ステップＳ５）。不一致のものがあれば、ステップＳ６に進んで、不一致となっていたカメラを選択して映像を取り込み、その取り込んだ映像でもってサンプル画像ウインドウ４０の該当する枠の映像を更新する。
【００３３】
一方、マウスの操作によるイベントであると判断した場合には、ステップＳ７〜１０でもって夫々に対応する処理を行なう。
【００３４】
例えば、サンプル画像ウインドウへのクリックであると判断した場合には、ステップＳ７から、図４のステップＳ４０１に進み、その枠内の映像を先に説明したステップＳ６と同様に更新する。そして、ステップＳ４０２に進んで、ダブルクリックであったか否かを判断する。ダブルクリックであると判断した場合には、ステップＳ４０３に進み、そのカメラを選択状態、すなわち、制御対象に設定する。この結果、選択されたカメラで撮影された映像はビデオキャプチャ部３４で順次取り込まれ、それが次々と映像ウインドウ４４に表示させることができる。
【００３５】
なお、この映像ウインドウ４４に表示させる処理は、別タスクで行なっており、ビデオキャプチャ部３４で取り込み完了する度にイベントを発生させ、それに従って映像ウインドウ４４に表示する処理を行なえばよいので、ここではその説明は省略する。
【００３６】
また、マウス３０によるクリックが地図ウインドウ４２中のカメラアイコンであった場合には、ステップＳ８から図５のステップＳ４０４に進み、その指定されたカメラアイコンに相当するサンプル画像ウインドウ４０の該当する枠内の映像を更新する。そして、操作がダブルクリックであった場合には（ステップＳ４０５）、ステップＳ４０６に進み、そのカメラを制御対象として選択状態にする。
【００３７】
更に、マウス３０によるクリックが地図ウインドウ４２内ではあるものの、カメラアイコンではないと判断した場合には、ステップＳ９から図６のステップＳ４０７に進む。ここでは、最寄りのカメラアイコンに相当するサンプル画像ウインドウ４０の該当する枠内の映像を更新する。そして、ステップＳ４０８において、操作がダブルクリックであったと判断したら、ステップＳ４０９に進み、そのカメラを制御対象として選択状態にする。
【００３８】
さて、マウス３０による操作がカメラ制御ウインドウ４６内のいずれかのボタンであると判断したら、ステップＳ１０から図７のステップＳ４１０に進む。この場合には、その時点で選択されているカメラが存在するか否かを判断する。選択されているカメラが存在すれば、その指示されたボタンに応じてカメラアングルを変更するよう、選択カメラ（カメラ制御部）に向けて要求信号を出力する。
【００３９】
以上の結果、本実施形態に従えば、カメラを選択しようとするときに、そのカメラの位置は勿論、そのカメラを選択した際にどのような映像が得られるかを予め把握することが可能になる。
【００４０】
尚、各カメラのアングルが変更するのは、上記の説明によれば、カメラを選択してそのカメラのアングルを変更した場合になるので、結果的に映像ウインドウ４４に表示される映像の送信元のカメラのみのアングルが変更される可能性を有している。つまり、上記の実施形態ではタイマによって所定周期毎に、各カメラのアングルが変更されたか否かを判断したが、非選択のカメラのアングルは変わらない。そこで、選択されているカメラについてのみ、アングルが変更されたかどうかを判定して、変更されたときにサンプル画像ウインドウ中の選択カメラに対応する枠内の映像を更新するようにしてもよい。
【００４１】
＜第２の実施形態＞
上記実施形態（第１の実施形態）では、サンプル画像として静止画を表示しその静止画を更新するという方法をとったが、サンプル画像として動画を利用することもできる。ただし、通信量削減のため、サンプル画像としては解像度の低い動画をサンプル画像ウィンドウに提示しておき、カメラが選択状態になって映像ウィンドウに表示する時のみ高解像度で表示する。動作は第１の実施形態とほとんど同じである。ただし、動画を使用するためサンプル画像の更新は必要なくなる。
【００４２】
＜第３の実施形態＞
第１の実施形態では、カメラのパラメータに変更があるごとに、静止画を取り込み表示した。しかしながら、これでは、例えば或るカメラを選択して映像を眺めている最中に、その更新時期がくると、アングルに変更のあったカメラについてはサンプル画像が取り込まれることになるので、それまでとは別の映像が表示されてしまう。サンプル画像の取り込み中は、その映像を表示しないようにすることも可能であるが、その場合には一瞬映像が表示されなくなる。
【００４３】
一般に、オフィス等でのレイアウトが変更されることはあっても、頻繁に行われることはない。従って、サンプル画像ウインドウに表示される映像は、各カメラを選択した際にどのような映像が表示されるのかの指標となる映像を表示すれば事足りる。
【００４４】
そこで、本第３の実施形態では、カメラを最広角状態（最小ズーム値）で、図１８に示すように、パン角、チルト角を適宜変更させることで、カメラで撮影できる範囲の映像を取り込み、それを繋ぎ合わせて１枚の広範囲な静止画映像を２次記憶装置２６に記憶させる。これを全てのカメラに対して行なっておく。
【００４５】
後は、各カメラのアングル情報に従って、２次記憶装置に記憶された静止画映像データの切出し位置と大きさを決定し、それに従って切り出した映像データをサンプル画像ウインドウ４０に表示させる。このときに切り出す領域は、パン角、チルト角及ズーム値によるが、切り出した映像は、そのズーム値に応じて変倍処理を行なってサンプル画像ウインドウ４０に表示させることになる。
【００４６】
この結果、図１９に示すように、撮影可能範囲内での、そのカメラのアングルで撮影した映像であるかの如く、表示できるようになるので、第１の実施形態の如く、適当な周期ごとにサンプル画像を取り込むという処理はしなくて構わなくなる。
【００４７】
更に、上記のようにすると、地図ウインドウ上の所望のカメラアイコンとその視野情報４３をマウス３０の操作で変更することもできる。その変更後における、そのカメラで撮影されるであろう映像は、実際にそのときに撮影された映像を表示するのではなく、２次記憶装置２６から取り出した映像を表示しても良い。
【００４８】
以上の切出し及びサンプル画像ウインドウへの表示は、実際に選択されたカメラの制御とは無関係に処理できるので、実際に選択したカメラの映像を映像ウインドウ４４に表示させている最中であっても、それとは別のカメラのアングルを変更した場合にはそのカメラによる映像（２次記憶装置２６より切出した映像）を表示することができ、あたかも一度に２つのカメラを制御することができるように振る舞う。
【００４９】
但し、地図ウインドウ４２中のカメラアイコンのアングルを変更した場合には、その変更された後のアングル情報は常に主記憶装置２４等に記憶させておく。理由は、カメラアイコンの向き等を変更した場合、実際にはそのカメラアイコンに対応してカメラのアングルは変更されていないからである。より詳しくは、カメラアイコンのアングルを変更した後、そのカメラを選択させて映像ウインドウ４４に表示させる操作を行った場合に、即座にそのアングルで生の映像を表示するため、そのカメラのアングルを記憶させておいたアングル情報に従って制御する。
【００５０】
＜第４の実施形態＞
上記第１〜第３の実施形態では、１つの装置に複数のカメラを接続させ、その装置上で１つのカメラを選択して生の映像（動画）を表示する例を説明したが、本発明はこれに限定されるものではなく、遠隔にある装置から本装置のカメラを制御することも可能である。
【００５１】
つまり、図１の構成で、カメラサーバを構成し、ネットワークインタフェースを介して接続されている他の端末をクライアントとして機能させるのである。また、場合によっては、図１の装置がクライアントとなって、他のカメラサーバの映像を表示させるようにもできる。従って、カメラサーバとカメラクライアントの相異は、映像を転送する元の装置か、映像を受信する側の装置かの違いであって、サーバ及びクライアントとも図１に示す構成で実現できる。従って、クライアントの構成については説明しない。但し、カメラを接続していない装置は、カメラクライアントとしてしか動作しなくなるのは説明するまでもないであろう。
【００５２】
図２０は、複数のカメラ操作装置がネットワークインタフェースを介して接続されている構成を示している。個々のカメラ操作装置は、図１に示す構成を有しており、それぞれがカメラサーバ、カメラクライアントとして機能し、例えばテレビ会議システムを構築している様を示している。ネットワーク５２はビデオ・キャプチャ部で取り込んだディジタル動画およびカメラ制御信号を送信するのに十分なバンド幅を有するローカルエリア・ネットワークＬＡＮまたは、ワイドエリア・ネットワークＷＡＮを想定しているが、必ずしもこれらに限定されるものではなく、例えばインターネットでも良い。
【００５３】
各カメラ操作装置５０−１〜５０−ｎは、ネットワーク５２に対して、ビデオ・キャプチャ装置により取り込んだビデオ・データをパケット化して出力できると共に、ネットワーク５２からパケット化されたビデオデータを受信できる。そして、各装置のディスプレイは、相手の装置のビデオ・キャプチャ部により取り込まれたビデオ・データを映像ウィンドウに表示する。カメラ・パラメータ（アングル情報）についても、各カメラ操作装置５０−１〜５０−ｎは、ネットワーク５２に送受信可能である。ネットワーク５２から、受信されたカメラ操作命令及びカメラ切替命令は、内部で生成されたカメラ操作命令及びカメラ切替命令と同様に扱われる。
【００５４】
ただし、ネットワーク対応とするためには、ネットワーク上で転送されるカメラデータ内に、ネットワーク上の装置のアドレスと、地図名（オフィス名など）の情報がある必要がある。静止画が選択され、その静止画がネットワーク上の遠隔地にカメラによって取り込まれたものであった場合、地図ウィンドウの絵が、そのカメラのある地図に切り替わる。さらに、遠隔地のカメラが、静止画データのカメラ・パラメータに制御されネットワークによって結ばれた遠隔地の現在の映像を見ることができる。
【００５５】
このように、ネットワーク対応に拡張することで、カメラ入力装置の入力数に制限がある場合も、より多くのカメラを制御できるようになる。また、離れた場所の１又は複数のカメラを制御したい場合に、双方向で相互に簡単に対応できるようになる。
【００５６】
ここで、上記のように、ネットワークを介して接続した１つのカメラ操作装置がカメラサーバとして機能し、そのカメラサーバに複数のカメラ操作装置がログインした場合について説明する。
【００５７】
先に説明した第３の実施形態によれば、カメラサーバにおけるカメラを制御することができるのは（制御権が与えられるのは）、１つのクライアントとなる。制御権を有するクライアントを含む他のクライアントの映像ウインドウ４４は、制御権を有するクライアントが操作したアングルの映像が表示されることになる。
【００５８】
カメラサーバは、１つのクライアントに対してのみ生の映像を見るためのカメラを選択し、アングルを変更するための制御権を与えることになるが、地図ウインドウ４２中のカメラアイコンについては複数のクライアントに対して擬似的な制御権を与えて構わない。但し、１つのカメラアイコンに対して複数のクライアントが操作することはできないので、この点を管理する必要はある。
【００５９】
そこで、カメラサーバは、図８に示すような、地図ウインドウ中の各カメラアイコンに対する管理テーブルを作成する。説明が前後するが、カメラサーバとなる装置は、クライアントが接続した際には、そのクライアントのディスプレイ上に地図ウインドウ（地図名と、その地図を描画するための情報、各カメラアイコン毎の名前、位置及びアングル情報）を表示させるための必要なデータを転送する。
【００６０】
図８の場合には、カメラアイコンＡについてはクライアント“ＹＡＮＯ”が操作しており、その結果、最終的にパン角が２０、チルト角が−５、ズーム値が２になっていることを示している。
【００６１】
カメラサーバは、クライアントよりカメラアイコンへの操作内容（カメラアイコンを特定する情報と、アングル情報、及びそのクライアント名）を示す情報を受けると、その情報に従って２次記憶装置２６より切り出されたサンプル画像を、サンプル画像である旨の情報（サーバ名、カメラアイコン名、アングル情報を含む）を付して、接続されている全クライアントに転送する。
【００６２】
各クライアント側では、転送されてきたデータが、サンプル画像であると判断した場合には、そのデータ中に含まれるサーバ名に相当するサンプル画像ウインドウ中のカメラアイコン名に相当する枠に、転送されてきた映像を表示すると共に、アングル情報に従って該当するカメラアイコンの向きや視野角を示す線分の角度を変更する。
【００６３】
なお、図８では、カメラアイコンＡについてクライアント“ＹＡＮＯ”が操作していることを示しているが、このクライアントの内容は、全クライアントに対してカメラアイコンの操作を行ない、全クライアントに対して該当するサンプル画像の転送するまでは、他のクライアントからの操作は受け付けない。換言すれば、全クライアントに対してカメラアイコンＡへの操作によって切り出された映像の転送が完了した場合になって、図示の“ＹＡＮＯ”を削除して、全てのユーザに対してカメラアイコンＡへの擬似的な制御権を開放する。
【００６４】
＜第５の実施形態＞
第１〜第４の実施形態では、サンプル画像をサンプル画像ウィンドウに表示し、記号等で印を付けることで、マップ上の位置と静止画との対応をとった。しかしながら、サンプル画像を縮小したものを、直接地図上に重ねて表示するようにしてもよい。静止画をクリックした時の機能は第１の実施形態と同じものとする。
【００６５】
こうすることで、地図上の位置と画像との対応がとりやすくなり、より容易に遠隔状況の把握が可能になる。
【００６６】
＜第６の実施形態＞
本第６の実施形態における装置の構成は図１と同じものとし、その説明は省略する。
【００６７】
図９は、本第６の実施形態におけるディスプレイ２８に表示される各ウインドウを示している。図２と異なるのは、サンプル画像ウインドウ４０の代わりに図示の如く静止画ウインドウ４１が表示される点である。
【００６８】
本実施形態では、１つのカメラにつき、静止画ウインドウ４１中の１つのサンプル画像枠を割り当てるのではなく、複数（図示の場合には２つ）のサンプル画像を割り当てている。また、カメラアイコン４７、４８はそれぞれ複数のサンプル画像を静止画ウインドウ４１に登録できるので、それぞれのアングルを示す記号とサンプル画像ウインドウの記号とを一致させるようにした。
【００６９】
また、静止画ウインドウ４１において、領域４１ａで示される記号部分はマウス３０によるクリック対象になっていて、ここをクリックすると、そのときに選択されていたカメラからの映像ウインドウ４４に表示されていた映像を、その領域４１ａの下の枠に登録する。
【００７０】
例えば、カメラ４８を選択して撮影して映像ウインドウ４４に表示させ、そのアングルをカメラ制御ウインドウ４６で制御しているときに、静止画ウインドウ４１の領域４１ａにおける記号部分“Ｘ”（直前まではカメラ４７のアングルと映像を表示していた）をクリックすると、そのときに映像ウインドウ４４に表示されていた映像を、指定した記号部分の下側の枠に登録する。
【００７１】
つまり、１つのカメラによる静止画映像の登録数は静止画ウインドウ４１の枠を越えない範囲であればいくつでも良い。
【００７２】
なお、静止画ウインドウ４１に表示される各静止画は、２次記憶装置２６にファイルとして記憶される。このとき、少なくともそのファイルには、カメラを特定するＩＤ（或いは名前）、静止画ウインドウ４１における枠の位置（枠の番号）、カメラアングル情報が含まれる。
【００７３】
また、領域４１ｂをクリックすると、その枠に相当するカメラＩＤとアングル情報を２次記憶装置２６より読出し、そのカメラＩＤで示されているカメラを選択して操作できるようにする。また、その映像のアングルになるように、その選択カメラを制御し、その後、映像ウインドウ４４に表示させる。
【００７４】
カメラ及びそのアングルを選択するためには、その他に、図９における領域４７−１、４７−２、４８−１、４８−２をクリックすることでも実現する。例えば領域４８−２をクリックした場合には、カメラアイコン４８が選択されたものとして、該当するカメラを選択し、尚且つ、そのときのアングル情報になるようカメラを制御した後、映像ウインドウ４４に撮影されている映像の表示、及びユーザに対して制御できるようにする。
【００７５】
以上の処理により、例えば各カメラ毎に、頻繁に見たいアングルとその映像を登録しておくことができ、尚且つ、その更新も非常に簡単になる。しかも、見たいアングルの静止画の枠をクリックするという単純な操作でもって、その静止画に相当するアングルの生の映像を映像ウインドウ４４に表示させることができると共に、カメラを操作することもである。
【００７６】
尚、選択されたカメラ（制御可能なカメラ）は、他のカメラと色等を変更して表示することは、第１の実施形態と同様である。
【００７７】
図１４は静止画ウインドウ４１に表示する映像の静止画ウインドウ管理テーブル（２次記憶装置に格納されている）を示している。図示において、枠番号は、静止画ウインドウ４１中の枠の位置を示すものであり、ファイル名は静止画ファイル名、カメラパラメータはその静止画を撮影した際のアングル情報（図示ではフォーカスも含まれている）、そしてカメラＩＤはその静止画を撮影したカメラＩＤである。
【００７８】
また、地図ウインドウ４２上に表示するカメラアイコンは、図１５に示すようなカメラアイコンテーブル（２次記憶装置に格納されている）内に、カメラ名と、カメラ座標で管理されている。
【００７９】
尚、静止画ウインドウ４１中の「デフォルト」ボタン４１ｃは、図１４に示す登録内容を、初期情報で書き換えるものである。このボタンは、何等かの理由で、静止画ウインドウ４１に登録した情報を初期状態に戻したい場合に使用する。すなわち、このボタン４１ｃをクリックすることで、予め設定された初期情報で図１４のテーブルの内容を書き換える。初期情報は、ユーザがデフォルト情報として別途登録した情報とし、そのデータ構造は図１４と実質的に同じである。但し、ボタン４１ｃがクリックされた場合には、静止画ウインドウ４１内の領域４１ｂの映像も初期情報中に示された画像ファイルで更新することになる。
【００８０】
また、地図ウインドウ４２上に表示されているカメラアイコンから延びる視野を示す線分の角度及びその長さ（以下、視野図形という）は、図１４に示される静止画ウインドウ管理テーブル内のアングル情報（カメラパラメータ）に従うが、以下にその求め方について詳しく説明する。尚、第１の実施形態における同様の算出を行なって地図ウインドウを更新しているものである。
【００８１】
地図ウインドウ上の座標（ディスプレイでの絶対座標とは異なる）は、マウス３０による操作で指定するか、カメラ制御ウインドウ４６内の各種ボタンの押下により自動的に計算し、それぞれの視野図形を更新する。
【００８２】
以下、着目しているカメラアイコンの中心位置の地図ウインドウ４２内での座標を（ｃｘ，ｃｙ）とする。そして、カメラの焦点距離をｆ、パン角をθとする。なお、実施形態の場合、地図ウインドウは上方向から見たレイアウトであるので、チルト角は無視するようにした。正確にはチルト角も考慮する必要があるが、そこまでの精度は要求しない。
【００８３】
図１６に示す如く、先ず、点Ｐの座標（ｍｘ、ｍｙ）を求める。この点Ｐが、カメラの視点方向と線分の長さを決定するのである。
【００８４】
ｍｘ＝ｃｘ＋ｆ・ｃｏｓθ                  （１）
ｍｙ＝ｃｙ＋ｆ・ｓｉｎθ                  （２）
で求められる。
【００８５】
次に、２本の線分の終点であるが、これは図１７に示すように求めた点Ｐからの角度φを算出することでなされる。
【００８６】
φ＝ａｒｃｔａｎ（Ｌ／ｚ）                （３）
ここで、Ｌは定数、ｚはズーム値である。なお、（１）、（２）式において、焦点距離ｆの変わりにズーム値を用いてもほぼ同じ線分が得られる。
【００８７】
後は、（３）式で得られた角度に従って±φだけ点Ｐを回転させることで、線分の終点Ｑ１，Ｑ２の座標を得ることができる。
【００８８】
本第６の実施形態におけるＣＰＵ２２の動作処理手順を図１０に従って説明する。
【００８９】
先ず、ステップＳ１０１で２次記憶装置２６にファイル等に格納されている地図データを読み込み、地図ウインドウ４２をはじめ、各種ウインドウを表示させる。次いで、ステップＳ１０２に進んで、実際に配置されているカメラの位置情報を持つファイル（位置情報ファイル）を読み込み、位置情報に基づきカメラアイコンを地図ウィンドウ４２上に描画していく。さらに、ステップＳ１０３に進んで、２次記憶装置に記憶されている静止画データを読み込み、それぞれを該当する静止画ウインドウ４１上に表示させ、ステップＳ１０４でユーザによる操作イベントを待つ。
【００９０】
静止画ウインドウ中の静止画表示枠がクリック（もしくはダブルクリック）されると、処理はステップＳ１０５からステップＳ１０６、Ｓ１０７に進み、ＣＰＵ２２はそのカメラの対応するアングル情報に従って静止画を取り込み、静止画映像を更新すると共に、その枠の静止画映像をファイルとして格納し、静止画ウインドウ管理テーブルを更新する。
【００９１】
これは、静止画ウインドウに表示されているのは、以前の映像であるので、それを最新の映像に更新するためである。
【００９２】
また、ダブルクリックであった場合には、そのカメラの制御権を与えて、カメラ制御ウインドウ４６の使用が可能になった旨を記憶する（ステップＳ１０９）。
【００９３】
また、発生したイベントが地図ウインドウ４２中のカメラアイコンであると判断した場合には、ステップＳ１１０から図１１のステップＳ１２１に進む。
【００９４】
ステップＳ１２１では、その静止画ウインドウ４１に表示されている静止画の中でそのカメラで撮影されている映像を全て更新する。これは先に説明したステップＳ１０７と実質的に同じである。但し、このステップＳ１２１では、指定されたカメラアイコンによって撮影され静止画ウインドウ４１上に表示されている静止画が３つある場合には、その３つについて最新の映像を撮影して表示し、ファイルとして更新保存（静止画ウインドウ管理テーブルも更新する）することになる。また、カメラアイコンに対する指示がダブルクリックであると判断した場合には、そのカメラアイコンに対するカメラを制御できるように選択する。この結果、そのカメラで撮影された映像は映像ウインドウ４４に表示されるようになる。
【００９５】
また、マウス３０による操作が地図ウインドウ上の、カメラアイコンではない領域を指定されたと判断したら、処理はステップＳ１１１から図１２のステップＳ１３１に進む。ここでは、その指定位置に最も近いカメラと視野図形が選択されたもの判断し、次のステップＳ１３２でそのカメラのアングルを制御して最新の映像でもって更新する（静止画ウインドウ管理テーブルも更新する）。また、ダブルクリックであると判断した場合には、ステップＳ１３３からステップＳ１３４に進み、そのカメラを制御可能とする。
【００９６】
そして、ステップＳ１１２において、カメラ制御ウインドウ４６内が操作されたと判断した場合には、その時点で選択されているカメラを制御して、映像ウインドウに撮影された映像を表示する。この処理は、先に説明した第１の実施形態における図７と同様であるので、その説明は省略する。
【００９７】
一方、マウスによる操作が、静止画ウインドウ４１における記号領域４１ａであると判断した場合には、ステップＳ１１３から図１３のステップＳ１４１に進み、そのときに表示ウインドウ４４に表示されていた映像を静止画として、静止画記号領域４１ａの下部にある枠に登録する。２次記憶装置に対してもファイルとして格納すると共に、及び地図ウインドウ４２中の視野図形を更新することも行なう。
【００９８】
以上説明したように本第６の実施形態によれば、１つのカメラによる映像を複数個登録でき、登録した映像それぞれの撮影方位や視野角、更にはカメラの位置が容易に把握できるようになる。
【００９９】
しかも、静止画を指示することでもって、そのカメラを選択すると共に、その静止画に対応するアングルに自動的になるので、好みのアングルの映像を１つのカメラに対していくつも登録することが可能になる。
【０１００】
尚、本第６の実施形態を更に発展させ、先に説明した第２、第４、第５の実施形態の内容を第６の実施形態に反映させても構わない。
【０１０１】
＜第７の実施形態＞
第４の実施形態を除く、上記各実施形態では、主として単独の装置に接続された複数のカメラを制御するものであったが、本第７の実施形態では図１に示す装置をカメラサーバとして機能させ、ネットワーク上に接続されているクライアント装置からカメラを制御する例を説明する。つまり、カメラクライアントからの指示に従って、カメラサーバは自身に接続されたカメラを制御し、その撮影映像をクライアントに転送する場合である。
【０１０２】
カメラクライアントの構造は、図１と実質的に同じか（この場合には互いにカメラサーバ及びカメラクライアントとして機能できることになる）、ビデオカメラを有しないかだけなので、その説明は省略する。尚、システム全体の構成は、図２０の通りであるものとして説明する。広域ネットワーク（例えばインターネット等）であっても良い。
【０１０３】
図２１は、本第７の実施形態におけるクライアント側の装置上に表示される各ウインドウを示している。図９と同様のものには同符号を付したので、その説明は省略する。
【０１０４】
実際に、映像ウインドウ４４に表示する生の映像の表示アングル（パン角、チルト角、ズーム値）の制御はカメラ制御ウインドウ４６内の各ボタンをクリックすることで行なうが、複数のクライアントが接続し得るような環境にあっては、互いにアングルを変えようとするので、一人のクライアントに対してのみカメラ制御ウインドウ４６の各ボタンの制御権を与えることが必要になる。特に、インターネット等の広域ネットワーク上にカメラサーバを設置した場合には、不特定多数のクライアントが接続されるので、このように制御せざるを得ない。このため、図２１では、制御権を得ることを積極的にカメラサーバに通知するためのボタン４７をカメラ制御ウインドウ４６中に設けた。
【０１０５】
制御権の与え方は、これまで本願出願人がいくつか提案しているので、ここでの詳述は省略するが、本第７の実施形態では、接続クライアントが複数存在する場合には、適当な時間（例えば１分）だけ１つのクライアントに制御権を与え、それが経過したら次のクライアントに制御権を渡せるように開放するものとする。そして、この制御権を開放している最中に、最初に制御権ボタン４７をクリックしたクライアントに対して制御権を与える。勿論、既に他のクライアントに制御権を与えてしまっている場合には、この制御権ボタン４７をクリックしても制御権は与えられない。
【０１０６】
映像ウインドウ４４に表示されている、映像を撮影しているビデオカメラは、その時点で制御権を有しているクライアントが独占して制御しているものの、制御権を持たない各クライアントにもその映像データは転送されるので、各クライアントの映像ウインドウ４４には映像が表示される。
【０１０７】
なお、表示ウインドウ４４に表示されている映像を撮影しているカメラ以外のカメラについては、カメラ制御権を持たない他のクライアントでもそのアングルを変更し、例えば図９における静止画ウインドウ４１の各枠内の映像を更新させるようにしても構わない。
【０１０８】
また、以下では映像ウインドウ４４に表示中の映像を撮影しているカメラを制御中カメラ、それ以外のカメラを非制御中カメラと呼び、区別する。制御中カメラと非制御中カメラは、先に説明した実施形態と同様に、色や輝度等を変えることで区別できるように各クライアントの地図ウインドウ４２に表示されている。
【０１０９】
ここで、非制御中カメラのアングルを変えるには、例えば第６の実施形態で説明したように、ポインティングデバイス等でその視野図形を操作することで行なうものであるが、具体的な操作を図２２に従って説明しよう。
【０１１０】
図２２は、地図ウインドウ４２中に表示されているカメラアイコンを示している。図示において、“○”記号２８０は、そのカメラの焦点距離（ズーム値）と視野中心方向を示している。記号２８０は、例えば図２１の地図ウインドウ４２の各カメラアイコンに付した記号を意味する。これは、先に説明した図２、或いは図９でも同様である。
【０１１１】
さて、或るカメラのアングルを変更しようとする場合には、そのカメラに対応するアイコンに付された記号２８０をマウス３０でドラッグすることで行なう。例えば、図示の矢印２８０ａに沿って記号２８０をドラッグ操作で移動させると、視野範囲及びズーム値（焦点距離）を示す線分２８１ａ、２８１ｂで挟まれる角度と、それぞれの線分の長さが変更される。また、記号２８０をドラッグして図示の矢印２８０ｂに沿って移動させると、カメラアイコンの向きが変更される（パン角がかわる）。なお、本来では、チルト角も変更したいところであるが、その場合にはそのチルト角を示すための何等かのシンボルを各カメラアイコンに付す必要がある。但し、本第７の実施形態では、チルト角のシンボルを表示するようにすると、見た目が複雑になり、かえって操作が複雑になるので省略した。
【０１１２】
以下、本第７の実施形態におけるクライアント側の装置の動作処理を説明し、その後でカメラサーバ側の動作処理の例を説明する。
【０１１３】
［クライアントの説明］
カメラクライアントとなる装置では、マルチウインドウシステム（例えば米国マイクロソフト社のＭＳ−Ｗｉｎｄｏｗｓ等）が動作しており、その装置上でカメラサーバに接続するアプリケーションを動作させることになる。図２３〜図２９はこのアプリケーションでの動作処理を示している。このアプリケーションは大きく分けて２つのモジュールで構成されている。１つは、図２１に示した各ウインドウの操作を監視するものであり、もう１つはカメラサーバから転送されてきたデータに対する処理である。
【０１１４】
先ず、後者（データ受信処理）について、図２９のフローチャートに従って説明する。
【０１１５】
先ず、ステップＳ２７１でカメラサーバからデータを受信するのを待つ。データが受信されたら、ステップＳ２７２に進んで、そのデータが映像に関するデータであるのか、それ以外のデータであるのかを判断する。映像データ以外であると判断した場合には、ステップＳ２７３に進み、対応する処理を行なう。例えば、制御権無の通知を受けた場合には、それに従ってカメラ制御ウインドウ４６中のカメラ制御ボタン４７を除く、他のボタンを操作できないようにする。
【０１１６】
一方、映像データに関するものであると判断した場合に、ステップＳ２７４に進んで、受信した映像が静止画ウインドウ４１に対するものか、映像表示ウインドウ４４に対するものであるのかを判断する。
【０１１７】
詳細は省略するが、映像に関するデータは、所定のフォーマットになっていて、そのヘッダ部分には、静止画ウインドウ４１に対するものか、映像表示ウインドウ４４に対するものかの識別情報の他に、添付される映像を撮影したカメラを示すカメラＩＤ及びそのアングル情報が付されている。
【０１１８】
さて、受信した映像に関するデータを調べることで、静止画ウインドウ４１に表示すべきデータであると判断した場合には、ステップＳ２７５に進んで、そのカメラＩＤで示される静止画ウインドウ４１中の該当する枠内に受信した映像データを伸張して表示させる。
【０１１９】
一方、映像ウインドウ４４に表示すべきデータであると判断した場合には、そのデータを伸張して映像ウインドウ４４に表示させる。
【０１２０】
ステップＳ２７５、２７６のいずれであっても、映像データのアングル情報に従って、該当する地図ウインドウ４２中のカメラアイコンの向きとその視野図形を更新する。更新の処理自身は、先の第６の実施形態で説明した通りである。
【０１２１】
なお、上記説明で、静止画ウインドウ４１に表示する処理は、後述する如く、例えば、クライアント側のユーザが地図ウインドウ４２中の適当なカメラアイコンの視野図形を変化させ、静止画ウインドウ４１中の枠内をクリックした際に、その枠内の映像を更新させるためのものである。
【０１２２】
さて、次にカメラ操作に係る動作処理を図２３〜図２８に従って説明する。本アプリケーションが動作を開始すると、先ず、図２９に示したデータ受信処理を動作させる。
【０１２３】
先ず、ステップＳ２０１において、所望とするカメラサーバに接続を行なう。接続が行われると、ステップＳ２０２に進んで、接続されたカメラサーバに対してカメラ情報の転送要求を行なう。次いで、カメラサーバから図２１に示す地図ウインドウ４２等を表示させるための情報の転送を待ち（ステップＳ２０３）、受信した場合（実際の受信は図２９におけるステップＳ２７３で行なう）には、ステップＳ２０４で各ウインドウを表示する。
【０１２４】
次いで、操作者による操作イベントの待ち状態に入る。なお、この間でも、図２９に示す処理が行われているので、他のクライアントがカメラ制御権を有して、カメラを制御している場合には、その撮影映像が映像ウインドウ４４に表示されている。勿論、カメラ制御権を有しているクライアントがいない場合であっても、いずれかのカメラが選択状態にあるので、その映像が表示されることになる。
【０１２５】
さて、操作者がマウス３０を操作すると、その操作がイベントとなってステップＳ２０６、ステップＳ２１２〜ステップＳ２１６のいずれかの処理に分岐することになる。
【０１２６】
先ず、静止画ウインドウ４１中の表示枠がクリックされたことを検出すると、処理はステップＳ２０７に進み、その枠の上部に示されている記号に相当する視野の映像を転送するようカメラサーバに要求を出す。この結果、先に説明したように指定された静止画映像がカメラサーバから転送されてきて、該当する枠にその映像を表示することが可能になる。
【０１２７】
また、操作がダブルクリックであると判断した場合には、ステップＳ２０８からステップＳ２０９に進んで、制御権獲得を意図したものとして判断し、制御権の獲得要求をカメラサーバに通知する。つまり、制御権獲得要求は、カメラ制御ウインドウ４６中のカメラ制御ボタン４７をクリックする以外にも可能になっている。
【０１２８】
カメラ制御要求を行った結果、カメラ制御権の許可通知がきたと判断した場合には、ステップＳ２１１に進み、カメラ制御権有効に設定する。
【０１２９】
一方、カメラアイコンの視野図形（図２１における地図ウインドウ４２中の記号○、△等）がクリックされたと判断した場合には、図２４におけるステップＳ２１に進む。ステップＳ２２１〜ステップＳ２２５は、上記のステップＳ２０７〜ステップＳ２１１と同様であるので、その説明は省略する。
【０１３０】
また、静止画ウインドウ４１上の領域４１ａがクリックされたと判断した場合には、図２５のステップＳ２３１に進んで、そのときに映像表示ウインドウ４４に表示されていた映像を該当する枠に登録するよう要求する。本実施形態におけるカメラサーバは、各クライアント毎に、静止画ウインドウ４１に表示する映像を個別に管理している。
【０１３１】
また、カメラ制御ウインドウ４６中のカメラ制御ボタン４７がクリックされたと判断した場合には、ステップＳ２１４から図２６のステップＳ２４１に進み、制御権獲得要求する。そして、ステップＳ２４２で制御権を得たと判断したら、カメラ制御を有効に設定する（ステップＳ２４３）。
【０１３２】
また、カメラ制御ウインドウ４６中のアングル変更ボタンがクリックされたと判断した場合には、ステップＳ２１５から図２７のステップＳ２５１に進む。ステップＳ２５１では、その時点でカメラ制御権があるか否か、つまり、先に説明するステップＳ２１１等で制御権有効と設定されているか否かを判断する。制御権を持っている場合には、ステップＳ２５２に進み、指定されたアングルになるようアングル情報をカメラサーバに転送する。
【０１３３】
そして、カメラアイコンの視野図形中の記号がドラッグされたと判断した場合には、図２８のステップＳ２６１に進む。つまり、図２２で説明したアングル変更操作を検出した場合である。
【０１３４】
この場合には、ステップＳ２６１で制御中カメラアイコンであるか否かを先ず判断する。非制御中アイコンである場合には、ステップＳ２６３に進んで操作された内容に従って、そのカメラＩＤとアングル情報をカメラサーバに転送すると共に、そのカメラＩＤの映像を転送要求する。
【０１３５】
また、制御中カメラアイコンであると判断した場合、ステップＳ２６２で制御権を有するように設定されているかを判断する。制御権を有していないと判断した場合には、そのカメラアイコンは、制御権を有する他のクライアントが操作していることになるので、その操作を無効にするため、本処理を終える。
【０１３６】
一方、非制御中カメラアイコン、もしくは制御権を得ている場合には、ステップＳ２６３に進み、そのカメラＩＤと変更後のアングル情報をカメラサーバに転送する。
【０１３７】
［カメラサーバの説明］
カメラサーバの動作処理は、大きく分けて２つあり、１つはクライアントからの要求に従った処理を行なうメインモジュールと、接続クライアントに向けて撮影された映像データを転送するサブモジュールである。
【０１３８】
図３０はカメラサーバにおけるメインモジュールの処理内容を示すフローチャートである。
【０１３９】
先ず、ステップＳ３０１では、クライアントからの要求或いはタイマによるイベントを待つ。イベントがあると、その要求が何であるのかステップＳ３０２〜ステップＳ３０７で判断する。
【０１４０】
接続要求であると判断した場合には、接続クライアントを管理している図３２に示すような接続テーブルに、その接続要求してきたクライアントのアドレスを追加格納する。なお、図３２の状態では、クライアントＢが現在制御権を獲得していることを示している。
【０１４１】
また、制御権獲得要求であると判断した場合には、図３２の接続テーブルを参照して、その現在制御権を有しているクライアントが存在するか否かを判断し、存在していれば制御権獲得不可通知を、存在しなければそのクライアントに対する制御権を“ＯＮ”にし、そのクライアントに制御権獲得可通知を転送する。
【０１４２】
制御中カメラのアングル変更を受けた場合には、そのクライアントが制御権獲得しているクライアントかどうか調べ、そのクライアントが制御権を有するものである場合には、該当するカメラのアングルを制御する。この結果、接続されている各クライアントには、アングル変更後の映像データが転送され、映像ウインドウ４４に表示されるようになる。
【０１４３】
また、静止画要求であると判断した場合には、その要求を発したクライアント毎に設けられた静止画登録テーブルを図３２のポインタに基づいて探し出す。図３４は例えばクライアントＡ用の静止画登録テーブルの例を示している。他のクライアントのテーブルも同じ構成である。
【０１４４】
さて、静止画転送要求を受けた場合には、その要求されているカメラＩＤ情報が含まれているので、そのカメラＩＤに相当するパン角、チルト角及びズーム値に基づいて、広範囲な静止画から該当する領域を切出し、それを図３３に示す静止画転送テーブルに格納する（詳細は後述）。
【０１４５】
また、制御権を１つのクライアントに対して与えてから適当な時間が経過したか否かを判断する。その時間が経過したと判断した場合には、ステップＳ３１５に進んで、それまで制御権を有していたクライアントに制御権無の通知を行なう。
【０１４６】
また、静止画登録指示を受けたと判断した場合には、ステップＳ３０７からステップＳ３１６に進み、登録指示情報中に含まれるカメラＩＤとそのクライアントのアドレスから、図３４に示すそのクライアントの静止画登録テーブルを探し出し、該当するカメラＩＤのアングル情報欄に、直前に転送していた映像ウインドウ４４に表示させるべく転送していた映像のアングル情報を格納する。
【０１４７】
次に、カメラサーバのサブモジュールについて図３１に従って説明する。
【０１４８】
このモジュールは、基本的にビデオキャプチャ部３４でもって１フレーム分の映像がキャプチャする毎に発生するイベントをトリガにして動作する。
【０１４９】
先ず、ステップＳ３２１において、キャプチャがなされるのを待ち、キャプチャされたら接続テーブルを参照して、その時点で接続されてる全クライアントに向け、撮影した映像の出所であるカメラＩＤ、アングル情報をヘッダにした映像データを転送する。
【０１５０】
この後、図３３に示す静止画転送テーブルに転送すべき静止画が存在するか否かを判断する（ステップＳ３２３）。転送すべき静止画が存在すると判断した場合（図３３の場合には２つ）、ステップＳ３２４に進み、それぞれのクライアントに向けて、カメラＩＤとアングル情報、そして、予め作成しておいた広範囲静止画から切り出した映像を転送する。転送が完了すると、この静止画転送テーブルの内容は消去する。
【０１５１】
以上の結果、各クライアントでは、それぞれ独自の静止画ウインドウ４１を持つことが許され、それぞれ独自の静止画を静止画ウインドウに登録することが可能になる。各静止画の登録する枠やそのアングル情報は異なるが、制御権を得たクライアントが自身の静止画ウインドウのある静止画をダブルクリックした場合には、その静止画のアングル情報でそのカメラを実際に動作させて映像の取り込みが行われるので、問題は起らない。
【０１５２】
以上説明した各実施形態は、ネットワーク上もカメラサーバまたはカメラクライアントとして機能する場合でも、単独で動作する場合であっても、通常のパーソナルコンピュータやワークステーションにカメラを接続するというハード的な要素を有するものの、本実施形態は、それらハードウェアを使用して動作するアプリケーションで実現できる。
【０１５３】
従って、本発明はソフトウェアのプログラムコードを記憶した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出して実行することによっても、達成されることは言うまでのもない。
【０１５４】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１５５】
プログラムコードを供給するための記憶媒体としては、例えばフロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【０１５６】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳなどが実際の処理の一部または全部を行ない、その処理によって実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１５７】
更に、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された拡張機能ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ない、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１５８】
以上の説明から明らかなように実施形態によれば、静止画と地図とを参照することにより、遠隔地の状況の把握が大変容易になる。また、静止画を取り込んだ位置に自動的にカメラを制御することにより、望みの映像を得るための操作性が大幅に改善される。
【０１５９】
【発明の効果】
以上説明したように本発明によれば、カメラの撮影アングルが変更されたとしても、カメラを選択した際に表示される映像を、通信負荷を増大させることなく簡単かつ正確に把握することが可能になる。
【０１６０】
【図面の簡単な説明】
【図１】実施形態における装置のブロック構成図である。
【図２】第１の実施形態におけるディスプレイに表示されるウインドウの種類を示す図である。
【図３】第１の実施形態における動作処理内容を示すフローチャートである。
【図４】第１の実施形態における動作処理内容を示すフローチャートである。
【図５】第１の実施形態における動作処理内容を示すフローチャートである。
【図６】第１の実施形態における動作処理内容を示すフローチャートである。
【図７】第１の実施形態における動作処理内容を示すフローチャートである。
【図８】第４の実施形態におけるカメラアイコン管理テーブルを示す図である。
【図９】第６の実施形態におけるディスプレイに表示されるウインドウの種類を示す図である。
【図１０】第６の実施形態における動作処理内容を示すフローチャートである。
【図１１】第６の実施形態における動作処理内容を示すフローチャートである。
【図１２】第６の実施形態における動作処理内容を示すフローチャートである。
【図１３】第６の実施形態における動作処理内容を示すフローチャートである。
【図１４】第６の実施形態における静止画ウインドウ管理テーブルの内容を示す図である。
【図１５】第６の実施形態におけるカメラ管理テーブルの内容を示す図である。
【図１６】実施形態におけるカメラアイコンに付随する視野図形の算出処理を説明する為の図である。
【図１７】実施形態におけるカメラアイコンに付随する視野図形の算出処理を説明する為の図である。
【図１８】第３の実施形態における広範囲の静止画映像の取り込みの原理を説明するための図である。
【図１９】第３の実施形態における広範囲の静止画映像の切出しの原理を説明するための図である。
【図２０】第４の実施形態におけるネットワークへの構築例を示す図である。
【図２１】第７の実施形態におけるクライアント装置側の表示装置に表示されるウインドウを示す図である。
【図２２】実施形態におけるカメラアイコンを使用してのアングル操作処理概要を説明するための図である。
【図２３】第７の実施形態におけるカメラクライアントにおける動作処理内容を示すフローチャートである。
【図２４】第７の実施形態におけるカメラクライアントにおける動作処理内容を示すフローチャートである。
【図２５】第７の実施形態におけるカメラクライアントにおける動作処理内容を示すフローチャートである。
【図２６】第７の実施形態におけるカメラクライアントにおける動作処理内容を示すフローチャートである。
【図２７】第７の実施形態におけるカメラクライアントにおける動作処理内容を示すフローチャートである。
【図２８】第７の実施形態におけるカメラクライアントにおける動作処理内容を示すフローチャートである。
【図２９】第７の実施形態におけるカメラクライアントにおける動作処理内容を示すフローチャートである。
【図３０】第７の実施形態におけるカメラサーバにおける動作処理内容を示すフローチャートである。
【図３１】第７の実施形態におけるカメラサーバにおける動作処理内容を示すフローチャートである。
【図３２】第７の実施形態におけるカメラサーバでの接続テーブルの内容を示す図である。
【図３３】第７の実施形態における静止画転送テーブルの内容を示す図である。
【図３４】第７の実施形態における静止画登録テーブルの内容を示す図である。
【符号の説明】
１０  ビデオカメラ
１２  カメラ制御部
２０  カメラ制御装置
２２  ＣＰＵ
２４  主記憶装置
２６  ２次記憶装置
２８  ディスプレイ
３０  マウス
３２  カメラインタフェース
３４  ビデオキャプチャ部
３６  ネットワークインタフェース
【図１】
0003754779.tif 000002
【図２】
0003754779.tif 000003
【図３】
0003754779.tif 000004
【図４】
0003754779.tif 000005
【図５】
0003754779.tif 000006
【図６】
0003754779.tif 000007
【図７】
0003754779.tif 000008
【図８】
0003754779.tif 000009
【図９】
0003754779.tif 000010
【図１０】
0003754779.tif 000011
【図１１】
0003754779.tif 000012
【図１２】
0003754779.tif 000013
【図１３】
0003754779.tif 000014
【図１４】
0003754779.tif 000015
【図１５】
0003754779.tif 000016
【図１６】
0003754779.tif 000017
【図１７】
0003754779.tif 000018
【図１８】
0003754779.tif 000019
【図１９】
0003754779.tif 000020
【図２０】
0003754779.tif 000021
【図２１】
0003754779.tif 000022
【図２２】
0003754779.tif 000023
【図２３】
0003754779.tif 000024
【図２４】
0003754779.tif 000025
【図２５】
0003754779.tif 000026
【図２６】
0003754779.tif 000027
【図２７】
0003754779.tif 000028
【図２８】
0003754779.tif 000029
【図２９】
0003754779.tif 000030
【図３０】
0003754779.tif 000031
【図３１】
0003754779.tif 000032
【図３２】
0003754779.tif 000033
【図３３】
0003754779.tif 000034
【図３４】
0003754779.tif 000035