(57)【要約】      （修正有）【課題】適正且つ効率的に制御し、操作性に優れたカメラ制御システム及びカメラ制御方法を提供する。【解決手段】カメラクライアント装置において、カメラの制御権の獲得要求を発行する制御権獲得要求の発行手段と、カメラの制御権の先送りを要求する先送り要求発行手段とを備え、カメラサーバ装置において、制御権獲得要求に対して、該制御権獲得要求を発行した前記カメラクライアント装置の制御権獲得要求を管理する制御権管理手段と、先送り要求を発行したカメラクライアント装置の制御権を剥奪する制御権剥奪手段と、カメラクライアント装置を再度登録する再登録手段とを備える。【選択図】図５
2009200973.tif 000002
【特許請求の範囲】
【請求項１】
カメラサーバ装置に接続されたカメラを複数のカメラクライアント装置から遠隔制御可能なカメラ制御システムであって、
各前記カメラクライアント装置において、
前記カメラの制御権の獲得要求を発行する制御権獲得要求の発行手段と、
前記カメラの制御権の先送りを要求する先送り要求発行手段とを備え、
前記カメラサーバ装置において、
前記制御権獲得要求の発行手段で発行された制御権獲得要求に対して、該制御権獲得要求を発行した前記カメラクライアント装置の制御権獲得要求を管理する制御権管理手段と、
前記先送り要求発行手段で発行された先送り要求に対して、該先送り要求を発行したカメラクライアント装置の制御権を剥奪する制御権剥奪手段と、
前記先送り要求を発行したカメラクライアント装置を再度登録する再登録手段とを備えることを特徴とするカメラ制御システム。
【請求項２】
前記カメラクライアント装置において、ユーザが前記カメラの制御権を獲得してからクライアントアプリオリを使用していないことを検出する検出手段を更に備え、前記ユーザが獲得している該制御権を自動的に先送りすることを特徴とする請求項１に記載のカメラ制御システム。
【請求項３】
カメラサーバ装置に接続されたカメラを複数のカメラクライアント装置から遠隔制御可能なカメラ制御方法であって、
前記カメラの制御権の獲得要求を発行する制御権獲得要求の発行工程と、
前記カメラの制御権の先送りを要求する先送り要求発行工程と、
前記制御権獲得要求の発行工程で発行された制御権獲得要求に対して、該制御権獲得要求を発行した前記カメラクライアント装置の制御権獲得要求を管理する制御権管理工程と、
前記先送り要求に対して、該先送り要求を発行した前記カメラクライアント装置の制御権を剥奪する制御権剥奪工程と、
前記先送り要求を発行したカメラクライアント装置を再度登録する再登録工程とを備えることを特徴とするカメラ制御方法。
【請求項４】
請求項３に記載のカメラ制御方法の各工程をコンピュータにて実施させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばＴＶ会議システムあるいは監視カメラなどに用いて好適なカメラ制御システム等に関するものである。
【背景技術】
【０００２】
従来、TV会議システムあるいは監視カメラのように、遠隔地などから映像入力装置を制御することが可能なカメラ制御システムがある。この種の装置においては、複数台のカメラを一人の監視者が制御するのが一般的である。即ち、映像入力装置の数が制御者の数に比して多く、複数の制御者が同時に一台の映像入力装置を制御することはなかった。
【０００３】
近年、インターネットの普及などにより、一台の映像入力装置によって取り込まれた映像を複数のユーザが見たり、当該映像入力装置を複数のユーザから制御可能にしたいという要求が高まっている。このような場合には、遠隔地などからの複数の映像入力装置に対する制御要求を管理する機構が必要となる。
【０００４】
また、一台の映像入力装置を複数のユーザによって制御しようとした場合、複数のユーザ間で制御要求の衝突が発生することは明らかである。従って、当該映像入力装置の操作に対する権限を適切に管理、制御する必要が生じた。このような技術動向に鑑み、特許文献１、特許文献２及び特許文献３において、カメラに対する制御要求及び制御権を管理し、カメラの制御を可能とする映像入力システムが提案されている。
【０００５】
【特許文献１】特開平１０−４２２７８号公報
【特許文献２】特開平１０−１３６３４７号公報
【特許文献３】特開平１０−３０４２３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
遠隔地などからネットワークを介して多数の人間が一つのカメラにアクセスし、カメラを制御できる状況においては、カメラ制御権を要求したユーザの都合の良い時にカメラ制御権を獲得できるとは限らない。
【０００７】
例えば、カメラ制御権を獲得した時点でカメラ制御権を獲得したユーザの都合が悪く、カメラが制御されない場合がある。その場合、制御権を獲得したにも拘わらず制御できなかったユーザは、せっかく獲得した制御権が無駄になってしまい、再度要求した場合にはまた最初から制御権を獲得できるまで待たなければならない。
更に、制御権要求中のクライアント数に限りがある場合は、再度制御権を要求した時に制御権の要求が受理されないこともある。また、カメラ制御権を要求して待っている他のユーザは、制御権を獲得しているユーザがカメラ制御を行わない場合、そのユーザが制御権を獲得している間、定点映像を見ながらそのユーザの制御時間が終了するまで待つことしかできなかった。
本発明はかかる実情に鑑み、適正且つ効率的に制御し、操作性に優れたカメラ制御システム及びカメラ制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明のカメラ制御システムは、カメラサーバ装置に接続されたカメラを複数のカメラクライアント装置から遠隔制御可能なカメラ制御システムであって、
各前記カメラクライアント装置において、
前記カメラの制御権の獲得要求を発行する制御権獲得要求の発行手段と、
前記カメラの制御権の先送りを要求する先送り要求発行手段とを備え、
前記カメラサーバ装置において、
前記制御権獲得要求の発行手段で発行された制御権獲得要求に対して、該制御権獲得要求を発行した前記カメラクライアント装置の制御権獲得要求を管理する制御権管理手段と、
前記先送り要求発行手段で発行された先送り要求に対して、該先送り要求を発行したカメラクライアント装置の制御権を剥奪する制御権剥奪手段と、
前記先送り要求を発行したカメラクライアント装置を再度登録する再登録手段とを備えることを特徴とする。
【０００９】
また、本発明のカメラ制御方法は、カメラサーバ装置に接続されたカメラを複数のカメラクライアント装置から遠隔制御可能なカメラ制御方法であって、
前記カメラの制御権の獲得要求を発行する制御権獲得要求の発行工程と、
前記カメラの制御権の先送りを要求する先送り要求発行工程と、
前記制御権獲得要求の発行工程で発行された制御権獲得要求に対して、該制御権獲得要求を発行した前記カメラクライアント装置の制御権獲得要求を管理する制御権管理工程と、
前記先送り要求に対して、該先送り要求を発行した前記カメラクライアント装置の制御権を剥奪する制御権剥奪工程と、
前記先送り要求を発行したカメラクライアント装置を再度登録する再登録工程とを備えることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、カメラに関する複数のユーザ側装置からの制御要求を管理する遠隔カメラ制御システムにおいて、ユーザが獲得した制御権を先送りにすることで、制御権喪失時に再度制御権を要求する手間を省くことが可能である。
また、制御権要求中のクライアント数に限りがある場合にも、確実に制御権を要求することが可能である。
また、制御権要求中のクライアントに、効率的に制御権を許可することが可能となり、ユーザの操作性が向上する。
【発明を実施するための最良の形態】
【００１１】
以下、図面に基づき、本発明によるカメラ制御システム、カメラ制御方法及びプログラムの好適な実施の形態を説明する。
（第１の実施形態）
図１は、本実施形態によるカメラシステムの構成を示すブロック図である。同図において、１-1はカメラ制御を行うコンピュータ等のカメラサーバ装置である。１２はネットワークであり、LAN、WAN、あるいはインターネット等である。１-2，１-3，１-4，１-5，・・・は遠隔地からカメラ制御の命令を出し、遠隔制御可能なカメラクライアント装置である。
【００１２】
即ち、カメラサーバ装置１-1ではビデオカメラからの映像データを取り込み、クライアントへそのデータの出力を行うと共に、カメラクライアントからのカメラ制御の指令を受けてカメラを制御する。
カメラクライアント装置１-2〜１-nでは、カメラサーバ装置１-1からの映像データを受信して映像を表示する。更に、カメラクライアント装置１-2〜１-nでは、カメラ制御権の制御権獲得要求をカメラサーバ装置１-1へ出力してカメラ制御権を獲得することによりカメラの制御を行うことができる。ここでは、カメラ制御は同時に複数のカメラクライアントでは制御できないように、排他制御されているものとする。
【００１３】
カメラサーバ装置１-1において、１１ａは映像を撮影するカメラであり、パン、チルト、ズーム等、映像視点を外部からの命令により制御可能となっている。１１ｂはカメラ制御部であり、遠隔地からの要求に応じてカメラを制御する。１１ｃは制御権管理部であり、複数のカメラクライアントからの要求に対してカメラの制御権を管理する。
【００１４】
また、１１ｄはメッセージ送受信部であり、ネットワーク１２を介してカメラクライアント装置１-2等からのメッセージを受信すると共に、これらカメラクライアントに対してメッセージの送信を行う。１１ｅは映像送信部であり、ネットワーク１２を介してカメラクライアント装置１-2〜１-nへカメラ１１ａから取得した映像の送信を行う。
【００１５】
カメラクライアント装置１-2において、１３ａはメッセージ送受信部であり、ネットワーク１２を介してカメラサーバ装置１-1とメッセージをやり取りする。１３ｂは表示部であり、カメラサーバ装置１-1より受信した画像や制御状態等を表示する。１３ｃは操作入力部であり、カメラサーバ装置１-1に対して、カメラ制御権の制御権獲得の要求発行や、カメラ１１ａのパン角、チルト角、ズーム値の変更指示等を入力する。１３ｄは映像受信部であり、ネットワーク１２を介してカメラサーバ装置１-1から送信される映像の受信を行う。
【００１６】
なお、図１の構成において、カメラサーバ及びカメラクライアントの数は図示の範囲に限られるものではないし、カメラサーバ装置１-1に複数のカメラが接続されても良い。
【００１７】
図２は、本実施形態によるカメラサーバ装置とカメラクライアント装置のシステム構成を示すブロック図である。１-1はカメラサーバ装置であり、１-2〜１-nはカメラクライアント装置である。
【００１８】
次にカメラサーバ装置１-1の構成について説明する。カメラサーバ装置１-1は、ビデオカメラ１-11、ビデオカメラ１-11のパン、チルト及びズーム倍率を制御するカメラ制御回路１-12、ビデオカメラ１-11からの映像を取り込むビデオキャプチャ１-13を有する。また、取り込んだ映像データをネットワーク１２上に配送するネットワークインターフェース１-14、上記モジュールを制御するために管理手段として機能するCPU１-16及び主記憶装置１-15を有する。また、カメラサーバ装置１-1を制御する制御プログラムを格納するハードディスクなどの二次記憶装置１-17などによって構成される。
【００１９】
なお、CPU１-16は、ネットワークインターフェース１-14を通じてカメラ制御命令を受け取り、カメラ制御回路１-12にカメラのパン、チルト及びズームの制御を実行する。また、ビデオキャプチャ１-13は、ビデオカメラ１-11からのNTSCなどの映像信号を取り込み、A/D変換後、データ圧縮してネットワークインターフェース１-14からカメラサーバ装置１-1にアクセスしているカメラクライアント装置に出力している。また、ビデオキャプチャ１-13での映像圧縮方式としては、MotionJPEGなどがあるが、これにこだわるものではない。
【００２０】
１-19タイマで、CPU１-16の指示に基づいて時間を計時し、タイムアウトが検出されるとCPU１-16に対してイベントを発生させ、ビデオカメラ１-11の制御を希望しているカメラクライアント装置への制御権管理に利用する。１-18は、前述の各ユニットを接続するためのシステムバスである。
【００２１】
次に、カメラクライアント装置１-2〜１-nの構成について説明する。カメラクライアント装置１-2〜１-nの構成及び動作処理は、本実施形態においては同一のものとし、ここではカメラクライアント装置１-2の構成について説明する。
カメラサーバ装置１-1からネットワーク１２に出力された圧縮映像データは、ネットワークインターフェース１-24を通じて受信され、CPU１-22により伸長され、ビットマップディスプレイ１-21上に撮像画像が表示される。なお、ビットマップディスプレイ１-21上には、例えば図３のようなユーザインタフェース画面が表示されるものとする。
【００２２】
カメラクライアント装置１-2上では、CPU１-22によってハードディスクなどの二次記憶装置１-26に記憶されたプログラムを実行することによって、図３のような画面を構成するウィンドウシステムを稼動させている。RAMなどによって構成される主記憶１-23は、二次記憶装置１-26に記憶されたプログラムを展開するものであり、CPU１-22は、必要に応じたプログラムを主記憶１-23から呼び出す。マウス１-25は、ポインティングデバイスである。図３のようなユーザインターフェース上でカーソルを移動させ、ドラッグ操作などを行うことによって、カメラサーバ側にあるビデオカメラ１-11の制御を、遠隔地にいるカメラクライアントを操作するユーザに実行させるようにしている。
【００２３】
次に、主記憶装置１-15のデータ構成について説明する。１-131は識別子バッファであり、カメラ制御権を与えたカメラクライアント装置の識別子を記録保持するために利用する。１-132は待ちバッファリストであり、カメラの制御権を要求しているカメラクライアント装置の識別子を管理する。
【００２４】
例えば、あるカメラクライアント装置がカメラ制御権を獲得している時に、他のクライアントがカメラ制御要求を出した場合、このカメラ制御要求を出したカメラクライアント装置の識別子を待ちバッファリスト１-132に追加登録する。
また、識別子バッファ１-131に登録された識別子を持つカメラクライアント装置が制御権を喪失した時、最初に登録された識別子を識別子バッファ１-131に登録し、待ちバッファリスト１-132から削除する。即ち、待ちバッファリスト１-132はカメラ制御権要求中のカメラクライアント装置の識別子を管理するキュー（FIFO）として動作する。
【００２５】
１-133は送信先テーブルであり、カメラサーバ装置１-1で撮影した映像情報を送信するカメラクライアント装置１-2〜１-nの識別子を管理する。カメラクライアント装置は初期化処理で自身の識別子とともに送信先テーブルへの登録を要求する映像送信要求メッセージをカメラサーバ装置に送信する。カメラサーバ装置は受信したカメラクライアント装置の識別子を送信先テーブル１-133に登録する。
【００２６】
カメラサーバ装置は、送信先テーブル１-133に登録された識別子を持つカメラクライアント装置に対して、ビデオカメラ１-11からの映像情報を送信する。また、カメラクライアント装置のアプリケーションが終了する時、その終了処理において、カメラサーバ装置に対して映像情報の送信の停止を依頼する。カメラサーバ装置では、その依頼を受け、カメラサーバの送信先テーブル１-133から、終了するカメラクライアント装置の識別子を削除する。
【００２７】
図３のボタン５０２は、カメラ制御権に関わる要求をカメラサーバ装置１-1に送信するためのボタンである。ボタン５０２上の表示は当該クライアントのカメラ制御状態によって変化し、カメラ制御権が無い状態では「制御権獲得」と表示され、カメラ制御権を獲得した状態では「制御権先送り」と表示される。５０３は現在の制御権の状態を表示する表示ウィンドウである。
【００２８】
図４は、図３で示す枠５０１内のボタン５０２と表示ウィンドウ５０３の例を示す図である。
(d)は、例えば「制御権有り」の状態で算出された待ち時間をそのまま数値で表示した例である。
(c)は「制御権有り」の状態で、算出された待ち時間表示をインジケータで行った例を示している。
(b)は「制御権要求中」の状態において、算出された待ち時間表示をインジケータで示した例である。
なお、(b)では、インジケータの図形を「制御権有り」の場合と異ならせており、これにより「制御権有り」なのか「制御権要求中」なのかを一目で認識できる。なお、(b)の「制御権要求中」の待ち時間表示は、例えば人間の形状をしており、一つの人間パターンが制御キューにおける一つのクライアントに対応するようにしてもよい。
更に、(a)は「制御権なし」の場合の表示ウィンドウ５０３の表示例であり、待ち時間の表示は無い。また、(e)は制御権延長中における表示ウィンドウ５０３の表示状態を示している。
【００２９】
ユーザはビデオカメラ１-11を制御したい場合、「制御権獲得」と表示されているボタン５０２をクリックしてカメラ制御権獲得要求を発行し、カメラサーバへ出力する。制御権が獲得できない場合は制御権要求中になり、枠５０１内は図４(b)のように表示される。制御権が獲得できると、枠５０１内は図４(c)又は図４(d)のように表示され、ボタン５０２をクリックすることによって「制御先送り」が可能となる。
【００３０】
「制御権有り」の状態で残り時間が０になるか、ボタン５０２をクリックして制御先送りをすることで制御権解放命令が発行され、他の制御権要求中のカメラクライアントへ制御権が受け渡される。
「制御権有り」の状態で残り時間が０になるとき、当該クライアント以外に制御権要求中のカメラクライアントが存在しない場合は、制御権延長状態となり、枠５０１内は図４(e)のように表示される。
また、「制御権有り」の状態で、ボタン５０２をクリックして制御先送りをしたとき、当該クライアント以外に制御権要求中のカメラクライアント装置が存在しない場合は、通常通りカメラ制御権は続行される。
【００３１】
以下、カメラサーバ１-1の動作を、図５のフローチャートを用いて説明する。なお、この制御を実行する制御プログラムは二次記憶装置１-17に記憶されており、実行時に主記憶１-15にロードされ、CPU１-16によって実行されるものとする。
【００３２】
先ず、ステップＳ５１０でビデオカメラ１-11のパン、チルト等の角度やズーム倍率を特定の初期位置に設定するための初期化処理をし、次にステップＳ５２０に進む。何らかのイベントが発生するとステップＳ５３０に進む。それがクライアントからのカメラ制御命令であれば、ステップＳ５３１に進み、その制御命令を送信したクライアントの識別子が識別子バッファ１-131に登録している識別子と一致するか否かを判断する。一致すればステップＳ５３２に進み、制御命令に従ってカメラ制御を実行する。
【００３３】
ステップＳ５２０のイベント待ち状態でステップＳ５４０に進み、それがカメラ制御権獲得要求のイベントであれば、ステップＳ５４１に進みカメラ制御中フラグがONされているかどうか、即ちその制御対象のビデオカメラカメラ１-11が制御されているかどうかを判断する。
そのビデオカメラ１-11が他のカメラクライアントによって制御されていないときは、ステップＳ５４３に進み、そのビデオカメラ１-11が制御中であることを示す制御中フラグをオンにする。そしてステップＳ５４４に進んで、タイマ１-19リセットし、ステップＳ５４５で、その制御を受け付けたカメラクライアントの識別子（受信した制御要求に含まれる）を識別子バッファ１-131に記憶する。そして、ステップＳ５４６でそのカメラクライアントに制御権が獲得できたことを通知する。
【００３４】
一方、ステップＳ５４１でビデオカメラ１-11が他のカメラクライアントから制御中の場合は、ステップＳ５４２に進み、待ちバッファリスト１-132にそのクライアント装置の識別子を追加して登録する。
【００３５】
ステップＳ５２０で起こったイベントが、タイマ１-19にセットした時間が経過したことによるタイマ発火イベントだった場合、ステップＳ５５０からステップＳ５５１に進む。そして、カメラサーバ装置１-1は、現在カメラ制御権を保持しているカメラクライアントから制御権を剥奪する。
【００３６】
ここで、識別子バッファ１-131に記憶された識別子のカメラクライアントの制御権が奪われたことをそのカメラクライアントに通知する。そして、ステップＳ５５２で待ちバッファリスト１-132に現時点で登録されている制御権要求中のカメラクライアントがあるかどうか調べ、なければステップＳ５５３に進み、カメラ制御フラグをOFFにする。そしてビデオカメラ１-11の撮影状態を特定の初期位置に戻すように制御する。
【００３７】
また、制御権要求中のカメラクライアントがいない時にタイマが発火した場合、別のカメラクライアントから次の制御権要求が来るまで制御権を許可し続ける。そして、別のカメラクライアントからの制御要求が来た時に、制御権の剥奪と許可を実行すれば、制御権延長中という状態を実現することも可能である。
【００３８】
一方、ステップＳ５５２で制御権要求中のカメラクライアントがある場合は、ステップＳ５５４に進む。待ちバッファリスト１-132の先頭に保持されている識別子に対応するカメラクライアントを、次に制御権を与えるカメラクライアントとする。そして、識別子バッファ１-131に登録させる。ステップＳ５５５で、その新たに制御権を獲得したカメラクライアントの制御時間を監視するためのタイマ１-19を初期化して計時を開始する。そしてステップＳ５５６に進み、識別子のカメラクライアントへ制御権が獲得できたことを通知する。
【００３９】
ステップＳ５６０でそれが制御先送りメッセージである場合は、ステップＳ５６１に進み、待ちバッファリスト１-132に現時点で登録されている制御権要求中のカメラクライアント装置があるかどうか調べる。ある場合はステップＳ５６２に進み、カメラサーバ装置１-11は現在カメラ制御権を保持しているカメラクライアントから制御権を剥奪する。ここで、識別子バッファ１-131に記憶された識別子のカメラクライアントの制御権が奪われたことをそのカメラクライアントに通知する。
【００４０】
次にステップＳ５６３で待ちバッファリスト１-13の先頭に保持されている識別子に対応するカメラクライアントを、次に制御権を与えるカメラクライアントとし、識別子バッファ１-131に登録させる。ステップＳ５６４で、その新たに制御権を獲得したカメラクライアントの制御時間を監視するためのタイマ１-19を初期化して計時を開始する。ステップＳ５６５で制御先送りメッセージを送信したカメラクライアントを、待ちバッファリスト１-132に再度登録する。
【００４１】
ここで、待ちバッファリスト内に登録されたカメラクライアントに、先送り処理によって変更された個々の待ち時間を通知する。通知が終了するとステップＳ５６６へ進み、識別子のカメラクライアントへ制御権が獲得できたことを通知する。
【００４２】
ステップＳ５７０でカメラサーバが、カメラクライアント起動時の映像送信要求メッセージを受信した場合、ステップＳ５７１で、受信したカメラクライアントの識別子を送信先テーブル１-133に登録・更新する。また、ステップＳ５７０でカメラサーバが、カメラクライアント終了時の映像送信停止要求メッセージを受信した場合、ステップＳ５７１で、受信したカメラクライアントの識別子を送信先テーブル１-133から削除・更新する。更新後は、送信先テーブル１-133に登録されている識別子を持つカメラクライアントに対して映像情報を送信する。
【００４３】
次に、以下では図６のフローチャートを参照して、この実施形態のカメラクライアント１-2のカメラ制御プロセスの動作処理を説明する。なお、この制御を実行する制御プログラムは二次記憶装置１-26に記憶されている。そして、実行時に記憶手段として機能する主記憶１-23にロードされ、CPU１-22によって実行されるものとする。
【００４４】
先ず、ステップＳ６１０で各種パラメータ、フラグ、映像送信要求メッセージの送信などの初期化処理を実行し、次にステップＳ６２０へ進む。ここで何らかのイベントが発生するとステップＳ６３０に進み、それがカメラ制御命令であるかどうか調べる。それがカメラ制御命令であるならば、ステップＳ６３１に進み、制御権獲得フラグがONとなっているか、即ち今自分がカメラ制御権を獲得しているのかどうかを判断する。フラグがONであれば、ステップＳ６３２に進み、カメラサーバ装置１-1へカメラ制御命令を送信する。
【００４５】
ステップＳ６４０において、それがカメラ制御権獲得要求のイベントであれば、ステップＳ６４１に進み、制御権フラグがOFFであるかどうか確認する。そして、自分がカメラ制御権を獲得していなければ、ステップＳ６４２に進み、カメラ制御権要求メッセージをカメラサーバ装置１-1へ送信する。
【００４６】
ステップＳ６５０において、それがカメラ制御先送り要求のイベントであれば、ステップＳ６５１に進み、制御権フラグがONとなっているかを確認する。もし制御権フラグがONならば、自分がカメラ制御権を獲得していると判断してステップＳ６５２に進み、カメラサーバ装置１-1へ先送りを要求するメッセージを送信する。
【００４７】
ステップＳ６６０において、カメラクライアントのアプリケーションを終了するイベントだった場合、ステップＳ６６１で映像送信停止要求メッセージの送信、ネットワーク切断等の終了処理を行い、本制御プログラムを終了する。
【００４８】
ステップＳ６７０において、カメラサーバ装置１-1からそのカメラクライアントが制御権を獲得できたというカメラ制御権獲得通知を受け取ると、ステップＳ６７１に進み、制御権フラグをONにする。カメラクライアントがステップＳ６８０で、カメラサーバ装置１-1からカメラ制御権喪失通知を受け取ると、ステップＳ６８１において、制御権フラグをOFFにする。
【００４９】
ステップＳ６９０において、カメラサーバ装置１-1から、現在のカメラ制御権に関する待ち情報を受け取った場合には、ステップＳ６９０に進む。待ち情報に含まれる現時点でのカメラ制御権獲得までの待ち時間及び現時点でのカメラ制御権要求中のカメラクライアントの数をビットマップディスプレイ１-21上に表示されているカメラ制御ユーザインターフェース画面へ出力する。
【００５０】
以上説明したように複数のカメラクライアントにビデオカメラの制御権を順番に与えていく場合、カメラ制御権を持っているカメラクライアントからの制御権先送り要求メッセージに対してカメラサーバがその時の状態を判断して処理する。そして、結果をカメラクライアントに送信することで、制御権を先送りすることを可能にしている。
【００５１】
（第２の実施形態）
次に、本発明を第２の実施形態を図７を使って説明する。図１〜図５の説明部分は第１の実施形態と同一なので省略する。図６の説明については図７の説明と置き換え、第１の実施例との差分を説明する。
以下では図７のフローチャートを参照して、本実施形態のカメラクライアント装置１-2のカメラ制御プロセスの動作処理を説明する。なお、この制御を実行する制御プログラムは二次記憶装置１-26に記憶されており、実行時に記憶手段として機能する主記憶１-23にロードされ、CPU１-22によって実行されるものとする。
【００５２】
本実施形態ではカメラクライアント装置１-2はタイマ１-28を使用し、カメラクライアントがカメラ制御権を獲得してから一定時間、ユーザがカメラクライアントを使用しているかどうか監視する。一定時間カメラクライアントが使用されない場合に、自動的にそのユーザには現時点で制御意思が無いものと判断して制御権先送りメッセージを送信する。なお、ここで「カメラクライアントを使用している」ということは、カメラクライアントのユーザインターフェース画面を、ビットマップディスプレイ上で最前面に表示していることと定義する。
【００５３】
ステップＳ６７０でカメラサーバからのカメラ制御権獲得通知を受信すると、ステップＳ６７１で制御権フラグをONにする。ステップＳ６７２に進み、ビットマップディスプレイ１-21上でカメラ制御ユーザインターフェースが最前面に表示されているかどうかを判断する。もしカメラ制御ユーザインターフェースが最前面に表示されていない場合は、ステップＳ６７３に進み、カメラ制御意思があるかどうかを判断する監視をするために、タイマ１-28を初期化し、計時を開始する。
【００５４】
ステップＳ６１００でカメラ制御ユーザインターフェースが最前面に表示されている場合は、ステップＳ６１０１に進み、ステップＳ６７３でセットしたタイマがONかどうか判断する。もしタイマがONであったならば、現時点でユーザにカメラ制御意思があるものと判断し、ステップＳ６１０２でタイマをOFFにして監視を終了する。
【００５５】
また、ステップＳ６３０でカメラ制御命令を受け取った場合、ステップＳ６３２でカメラ制御メッセージを送信した時も、ユーザにはカメラ制御意志があると判断し、ステップＳ６３３でタイマをOFFにする。ステップＳ６５０でタイマが発火した場合は、制御権獲得時点から一定時間、ユーザに制御意思があると判断される処理が一度も行われなかったとしてステップＳ６５１に進む。この時、制御権フラグがONであるならば、ステップＳ６５２で先送りメッセージをカメラサーバへ送信する。
【００５６】
本実施形態では、「カメラクライアントを使用している」ことを、「カメラクライアントのユーザインターフェース画面を、ビットマップディスプレイ上で最前面に表示していること」と定義している。例えばマウス操作を監視していて、一定時間マウス入力が無い場合は「カメラクライアントを使用していない」と判断したり、カメラクライアント上でスクリーンセーバーが起動している場合は無条件で「カメラクライアントを使用していない」と判断する。
【００５７】
また、クライアントアプリオリの映像を表示する領域だけでも、ビットマップディスプレイ上で表示されていれば「カメラクライアントを使用している」と判断したりしてもよい。
本実施形態ではカメラクライアントが使用されていないことを検知した時にカメラクライアントが能動的にカメラサーバへメッセージを送信して制御権の自動先送りを実現している。
【００５８】
しかし、カメラサーバが、制御権を持ったカメラクライアントにクライアントアプリオリの使用状況を問い合わせるなどして、カメラサーバが能動的に動作する形態で自動先送りを実現するように構成しても良い。例えばカメラサーバが一定時間カメラ制御命令を受信していないことを検知した時、カメラサーバからクライアントアプリオリへ使用状況の問い合わせを行う。カメラサーバからの使用状況の問い合わせに対して、カメラクライアントが「カメラクライアントを使用していない」と返事をした場合、カメラサーバはそのカメラクライアントから制御権を剥奪する。ここで、カメラクライアントが、制御権を剥奪されたことを検知してカメラサーバへ制御権の先送りを要求するメッセージを送信するように構成しても良い。
【００５９】
または、カメラサーバがカメラクライアントの制御権を剥奪した時にそのカメラクライアントを待ちバッファリストに再登録するように構成しても良い。なお、カメラサーバが、カメラクライアントを制御権剥奪と同時に待ちバッファリストに再登録する場合、カメラサーバは待ちバッファリスト内に登録されている全てのカメラクライアントに対して、先送り処理によって再計算された待ち情報を通知する。待ち情報を受信した全てのカメラクライアントは、ユーザインターフェース上の待ち時間表示等を更新する。このようにカメラサーバが主体となって、制御権の先送りを実現するように構成しても良い。
【００６０】
また、本実施形態では先送りする回数に特に制限を持たせてはいないが、先送りは連続ｎ回まで、というように回数制限を持たせても良い。先送り回数の制御をカメラサーバ側で行う場合は、例えばカメラサーバで管理している各カメラクライアントの情報として、先送りされた時の制御中であることを示すフラグをｎ個持たせておく。カメラクライアントの制御権が一回先送りされるごとに、カメラサーバはそのカメラクライアントのフラグを一つ立てる。カメラクライアントの制御権がタイムアウトによって喪失された場合には、カメラサーバはそのカメラクライアントのフラグを全てクリアする。先送り処理をする時にこのフラグがｎ個全て立っている場合は先送りの処理を実行しないようにする。
【００６１】
また、先送り回数の制御をカメラクライアント側で行う場合は、例えばカメラクライアントに先送りされた時の制御中であることを示すフラグをｎ個持たせておく。カメラクライアントがカメラサーバに制御権先送りを要求して、制御時間を残した状態で制御権が剥奪された場合、カメラクライアントはフラグを一つ立てる。制御時間を全て使い切って制御権を喪失した場合には、カメラクライアントはフラグを全てクリアする。先送り要求を出す時に、このフラグがｎ個全て立っている場合は先送り要求をカメラサーバへ送信しないようにする。以上のようにして、連続先送り回数に制限を持たせても良い。
【００６２】
本実施形態では、制御権の先送りに関してパラメータ等を何ら指定することはできないが、例えば自分よりｎ人分後ろに先送りする、といった指定ができるように構成しても良い。ｎ人分後ろに先送りという指定を可能にするには、例えばカメラクライアントのユーザは制御権の先送りを要求する時に、ｎ人分後ろに先送りすることを指定し、カメラサーバへ送信する。カメラサーバは制御権の先送り要求とともにｎ人分後ろに先送りするという数字ｎを受信し、待ちバッファリストに登録されたカメラクライアント数を確認する。
【００６３】
待ちバッファリストに登録されたカメラクライアント数がｎ以上であれば、待ちバッファリストの先頭からｎ番目に先送りを要求したカメラクライアントの識別子を挿入する。待ちバッファリストに登録されたカメラクライアント数がｎ未満の場合、待ちバッファリストの最後尾に先送りを要求したカメラクライアントの識別子を登録する。いずれの場合もカメラサーバは、待ちバッファリストに変更を加えた時に、待ちバッファリストに登録されている全てのカメラクライアントに待ち情報を通知する。待ち情報を受信したカメラクライアントは、ユーザインターフェース上の待ち時間表示等を更新する。以上のようにして、ｎ人分後ろに先送りという指定を可能にしても良い。
【図面の簡単な説明】
【００６４】
【図１】本発明の第１の実施形態におけるカメラ制御システムの構成を示す図である。
【図２】本発明の第１の実施形態におけるカメラ制御システムの構成を示す図である。
【図３】本発明の第１の実施形態におけるカメラ制御システムのユーザインターフェース画面を示す図である。
【図４】図３の枠５０１内の組み合わせ例を示す図である。
【図５】本発明の第１の実施形態におけるカメラサーバの処理フローを示すフローチャートである。
【図６】本発明の第１の実施形態におけるカメラクライアントの処理フローを示すフローチャートである。
【図７】本発明の第２の実施形態におけるカメラクライアントの処理フローを示すフローチャートである。
【符号の説明】
【００６５】
１-1    カメラサーバ装置
１-2    カメラクライアント装置
１-11  ビデオカメラ
１-12  カメラ制御回路
１-13  ビデオキャプチャ
１-14  ネットワークインターフェース
１-15  主記憶
１-16  ＣＰＵ
１-17  二次記憶装置
１-18  バス
１-19  タイマ
１-21  ビットマップディスプレイ
１-22  ＣＰＵ
１-23  主記憶
１-24  ネットワークインターフェース
１-25  マウス
１-26  二次記憶装置
１-27  バス
１１ａ  カメラ
１１ｂ  カメラ制御部
１１ｃ  制御権管理部
１１ｄ  メッセージ送受信部
１１ｅ  映像送信部
１２    ネットワーク
１３ａ  メッセージ送受信部
１３ｂ  表示部
１３ｃ  操作入力部
１３ｄ  映像送信部
５０２  制御権関連要求送信ボタン
５０３  表示ウィンドウ
【図１】
2009200973.tif 000003
【図２】
2009200973.tif 000004
【図３】
2009200973.tif 000005
【図４】
2009200973.tif 000006
【図５】
2009200973.tif 000007
【図６】
2009200973.tif 000008
【図７】
2009200973.tif 000009