JP4702911B2 - カメラ制御方法、カメラ制御サーバ、および記録媒体 - Google Patents
カメラ制御方法、カメラ制御サーバ、および記録媒体 Download PDFInfo
- Publication number
- JP4702911B2 JP4702911B2 JP27872198A JP27872198A JP4702911B2 JP 4702911 B2 JP4702911 B2 JP 4702911B2 JP 27872198 A JP27872198 A JP 27872198A JP 27872198 A JP27872198 A JP 27872198A JP 4702911 B2 JP4702911 B2 JP 4702911B2
- Authority
- JP
- Japan
- Prior art keywords
- camera
- control
- information
- zoom magnification
- module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
- H04N7/181—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a plurality of remote sources
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Studio Devices (AREA)
- Closed-Circuit Television Systems (AREA)
- Image Input (AREA)
- Computer And Data Communications (AREA)
Description
【発明の属する技術分野】
この発明は、例えばインターネットやイントラネットなどのコンピュータネットワークを介した映像の配信のための、カメラ制御システム、カメラ制御方法、カメラ制御サーバ、カメラ装置、ユーザインタフェース装置などに関するものである。特に、映像配信サービスにおいて遠隔地に設定されているビデオカメラの操作の改良に関するものである。
【0002】
【従来の技術】
近年、インターネットやイントラネット等のコンピュータネットワークの普及に伴い、遠隔地に設置されたプリンタやスキャナ等の周辺機器をコンピュータ・ネットワークを介して操作することを可能にする「遠隔機器サービス・システム」の製品化が盛んになってきている。
【0003】
このような製品の1つに「遠隔カメラシステム」がある。遠隔カメラシステムは、遠隔地に設置されたビデオカメラの映像をコンピュータ・ネットワークを介して世界のどこからでも鑑賞できるようにするシステムである。このような遠隔カメラシステムでは、単にカメラの映像を見ることができるだけでなく、カメラの向きやズーム倍率を遠隔地から操作することができることを大きな特徴としている。
【0004】
図1は、従来の遠隔カメラシステムの概念を説明するための図である。図から分かるように、システムは以下の4つの構成要素から成り立っている。
・映像を撮影するビデオカメラ(201,202,203)、
・ビデオカメラ(201-203)を遠隔地から操作することを可能にするカメラ制御モジュール(204)、
・利用者がカメラ映像を鑑賞したりカメラを操作するためのユーザインタフェースを提供するカメラ・クライアント(205,206,207)、
・カメラ・クライアント(205-207)とカメラ制御モジュール(204)の間をつなぐコンピュータ・ネットワーク(208)。
【0005】
遠隔カメラシステムの主な機能はカメラ制御モジュール204によって提供される。図1ではカメラ制御モジュール204をどのようなハードウェアによっても実現することはできるが、通常は一般的なパーソナルコンピュータ(以下、PCと呼ぶ)上のソフトウェアとしてカメラ制御モジュールを実装する。この場合、ビデオカメラはRS232Cなどの手段でPCに接続される。また、カメラ制御モジュール204をビデオカメラと一体化してしまうような従来例も存在する。
【0006】
いずれの従来例の方式においても、カメラ制御モジュール(204)は、カメラ・クライアントから送信されてくる「カメラ操作要求」を解釈/実行するためのカメラコマンド解釈実行手段と、複数のカメラ・クライアント(205,206,207)が同じカメラの操作を同時に要求したときに、どのクライアントにカメラの操作権を提供するかを決定するためのカメラ操作権調停手段を必要とする。
【0007】
【発明が解決しようとする課題】
しかしながら、従来の遠隔カメラシステムは1つのカメラ制御モジュールが1つのカメラを操作するのが通常である。1つのカメラ制御モジュールが複数のカメラを管理下におくような従来システムも存在するが、実際に操作できるのはそのうちの1台だけで、他のカメラを同時に操作することはできない。
【0008】
カメラ制御モジュールを複数用意することで、見かけ上は複数のカメラ操作を可能にすることは可能である。しかし、この場合も各カメラは専用のモジュールにより独立に操作されるだけであり、複数のカメラが協調しながらあるいは連係しながらの処理、例えば互いに死角を補いながら連係して動作するような処理を行わせることは困難である。
【0009】
本発明は、所定のカメラが所定の向きの撮影をするように、複数のカメラに所定の連係動作を行わせることを目的とする。
【0010】
【課題を解決するための手段】
上記課題を達成するための請求項1に係る、複数のカメラの連係動作を制御するために、ユーザが遠隔的に向き及びズーム倍率を操作する第1のカメラの向き及びズーム倍率の値を示した開始条件、前記第1のカメラと連係動作させる第2のカメラの情報、及び前記連係動作により前記第2のカメラの向き及びズーム倍率の値をどのように制御するかを示した連携動作内容がユーザにより予め設定された連係制御情報に基づいてネットワークを介して当該複数のカメラを制御するカメラ制御方法は、
検出手段が、前記第1のカメラの向きとズーム倍率の値を検出する工程と、
制御手段が、前記検出する工程で検出された前記第1のカメラの向き及びズーム倍率の値が、前記連携制御情報において設定された開始条件を満たす場合、前記連携制御情報において前記第1のカメラと連係動作するカメラとして設定された前記第2のカメラの向き及びズーム倍率の値を、前記連携制御情報において設定された前記連係動作内容にしたがって制御する工程とを具備することを特徴とする。
【0031】
【発明の実施の形態】
以下、添付図面を参照しながら本発明の好適な実施形態を説明する。
〈構成〉…第1実施形態
本実施形態は、図1で示した従来の遠隔カメラシステムを改良し、カメラ制御モジュールの他に「カメラ連係制御サーバ」というソフトウェアを導入するものである。
【0032】
図2は本実施形態の遠隔カメラシステムのシステム構成の概要を表す図である。
同図において、実施形態の遠隔カメラシステムは、夫々がカメラ制御モジュール410a,410b,410cを有する複数のカメラサーバ400a,400b,400cと、複数のカメラ・クライアント600a,600bと、それが接続されたコンピュータネットワーク301,302と、ネットワーク301とネットワーク302との間に設けられたカメラ連係制御サーバ500とを有する。
【0033】
カメラ・クライアントは、遠隔のカメラをネットワークを介して利用しようとするユーザであり、実際は、そのユーザは所定のクライアントアプリケーションプログラムを稼働することのできる、例えば、パソコンシステム、ワークステーションシステム、メインフレームコンピュータシステムである。また、カメラ制御モジュール410a,410b,410cの夫々は、単体として、個々のカメラサーバにインストールされている。
【0034】
カメラ連係制御サーバ500は、カメラ・クライアントとカメラサーバカメラ制御モジュールとの間に設置された適当なPC等で起動され、コンピュータ・ネットワーク301,302を介して、夫々のカメラ・クライアントとカメラサーバと通信を行う。
コンピュータネットワーク302上のカメラクライアントは制御サーバ500を介して複数のカメラを利用することができるようにするために、個々のカメラクライアントのシステムは図3のようなユーザインタフェースを提供することが好ましい。
【0035】
図3のユーザインタフェースでは、映像ウィンドウ601上に複数のカメラからの映像602〜613を夫々表示するウインドを有する。カメラクライアントのユーザは、所望の映像ウインドの上をマウス等で選択することにより、目的のシーンを、即ち目的のカメラを選択する。即ち、ユーザは、連係して制御されるべきカメラを、夫々のカメラが現在撮像している映像に基づいて指定することが許される。選択したカメラの撮像方向は、コントローラアイコン614で指定する。また、撮像方向を指定するときは、ウインド601の下方に表示されるカメラコントローラ614上の矢印の部分をマウス等で選択する。
【0036】
カメラ操作要求(連係されるべきカメラの指定、撮像方向の指定)がカメラ連係制御サーバ500を経由して、指定されたカメラサーバのカメラ制御モジュールに送信され、カメラの向きが変更される。
図3で示したカメラコントローラアイコン614は、カメラの撮像方向の変更のみを指定できるものであるが、実際には、カメラに対して他の操作(例えばズーム倍率の指定)等が必要な場合は、対応した適当なボタン等のユーザインタフェースを追加すればよい。
【0037】
本実施形態でのカメラ連係制御サーバ500によるカメラの連係処理の結果を利用者から見ると、あるカメラ(例えば映像603を撮影するカメラ)を操作したとき、そのカメラに連係するように指定されたカメラにも、所定のカメラ操作が人手を介さずに制御サーバ500により行われ、例えば映像605を撮影するカメラの撮影方向が変化されるといった動きとなってあらわれる。
【0038】
〈カメラ連係制御サーバの構成〉…第1実施形態
図4を用いて、図2に示した制御サーバ500、カメラサーバ400、カメラクライアント600の構成について説明する。尚、同図では、図示の便宜上、夫々一台のカメラクライアント600とカメラサーバ400とがネットワーク700に接続されていることとする。
【0039】
カメラ連係制御サーバ500はCPU508、主メモリ509、ハードディスク510から構成されており、各ソフトウェアはハードディスク510から主メモリ509にロードされ、CPU508で実行される。カメラサーバ400及びカメラクライアント600も同じようにCPU、主メモリ、ハードディスクなどを有する。尚、カメラサーバ400には映像を撮影するためのビデオカメラ420が設置される。
【0040】
前述したように、カメラクライアント600には、利用者がカメラ・クライアント600を操作するためのディスプレイおよびマウス等の入出力デバイスが設置され、カメラ制御モジュール410にカメラ操作要求を送信する機能を有し、この要求がカメラサーバ400に送信されて、カメラクライアントのユーザはビデオカメラ420を操作することができる。
【0041】
カメラサーバのカメラ制御モジュール410にはカメラ420を制御するためのカメラ操作部412と、カメラ420の操作権を調整するための操作権制御部413が含まれている。カメラ操作部412はカメラ・クライアント等からのカメラ操作要求をカメラに内蔵されているモータの駆動信号に変換する機構によって実現される。
【0042】
操作権制御部413は、カメラ操作を要求した複数のカメラ・クライアントの1つにカメラ対する操作権を与えるものである。操作権制御部413を実現するには、たとえば、最初にカメラ操作を要求したクライアントに操作権を与え、一定時間(例えば30秒程度)経過したところで、次に操作を要求したクライアントに操作権を与えるといった処理を実装する。操作権を与えられたクライアントから送信されてくるカメラ操作要求のみがカメラ制御部412に渡されるようにすればよい。
【0043】
また、カメラ制御モジュール410は、カメラの状態(向き等)や制御権の取得状況をカメラ・クライアント600やカメラ連係制御サーバ500に通知するカメラ情報通知部414を有する。
カメラ制御モジュール410ならびにカメラ・クライアント600は、カメラ連係制御サーバ500と同様に、送受信モジュールを有する。これらの送受信モジュールは、カメラサーバのカメラ制御モジュール410と、カメラクライアントのクライアント制御モジュール601と、カメラ連係制御サーバ500のアプリケーションプログラム507間の通信手段を提供するもので、ソケット等の一般的なプロセス間通信機構を用いている。カメラサーバのカメラ情報通知部414も、送受信モジュールを利用して適当なタイミングで他のソフトにカメラ状態情報を送信することで実現される。
【0044】
カメラ連係制御サーバアプリケーションプログラム507を構成するソフトウェア・モジュールを説明する。ここで「ソフトウェア・モジュール」とはソフトウェアの内部的な機能単位のことである。ソフトウェア・モジュールは、通常は、関数の集まりやオブジェクト指向におけるクラスやオブジェクトなどの形で実装される。カメラ制御モジュール410も実装次第ではソフトウェアモジュールとして実現することが可能である。そこで以降は特に断らないかぎり「モジュール」と記述したときは「ソフトウェア・モジュール」のことを意味することにする。カメラ連係制御サーバアプリケーションプログラム507は、図4に示されているように、
送受信モジュール515
CS管理モジュール516
CC管理モジュール517
カメラ状態管理モジュール518
カメラ連係制御モジュール519
カメラ操作サブモジュール520
操作権制御サブモジュール521
〈送受信モジュール515〉…第1実施形態
以下の説明では、この送受信モジュール515は、例示として、ソケットを実装したものとして説明するものとし、機能として、カメラ制御モジュール410やクライアント制御モジュール601から送信されてくる要求やリプライを受信するモジュールである。受信したメッセージは内部的なメッセージ形式に変換して他のモジュールに転送する。通常、この内部的なやりとりのためのメッセージ形式はC++等のオブジェクト指向言語のメッセージとして実装することができる。また、オブジェクト指向ではない言語を利用するときも、一般的な関数呼び出しとして実装することが可能である。
【0045】
また、送受信モジュール515は、逆に要求やリプライを他のソフトウェアに送信する機能も提供する。他のモジュールから送信されてきた内部メッセージをプロセス間通信機構であつかえるメッセージ形式に変換する。
〈CS管理モジュール516〉…第1実施形態
CS(camera server)管理モジュール516は、カメラ制御モジュールに関する情報(CS情報と呼ぶ)を管理するモジュールである。カメラサーバ(CS)情報は、図5に示された「CS-ID」,「ホスト名」,「ポート番号」,「ソケット番号」,「カメラID」などの項目から構成されている。
【0046】
「CS-ID」は、各カメラ制御モジュールを識別するために予め付けられた一意なIDである。本実施形態では1以上の整数として実装される。CS-IDは、アプリケーションプログラム507が、CS情報を検索する時のキーとして使用することができる。「ホスト名」は、カメラ制御モジュールが稼動しているコンピュータの「名前」である。また、「ポート番号」は、カメラ制御モジュール410が提供するプロセス間通信用のポートに付された番号である。「ホスト名」と「ポート番号」とを指定することで、アプリケーションプログラム507は、カメラ制御モジュール410と通信を行うことが可能となる。
【0047】
「ソケット番号」は、「ホスト名」と「ポート番号」によってカメラ制御モジュール410との間に形成された通信路、即ち「ソケット」を表す番号である。アプリケーションプログラム507は、「ソケット番号」を送受信モジュール515に渡すことで、メッセージの送信先を、即ち、カメラサーバを指定することができる。「カメラID」はカメラ制御モジュール410の管理下におかれているカメラに割り当てられた一意な識別子IDである。この「カメラID」も1以上の整数として実装される。カメラ制御モジュールは複数のカメラを管理下におくこともあり得る。その場合は、「カメラID」のリストがCS情報に追加される。このとき「カメラID」の並び順がカメラ制御モジュール側でのカメラの識別子(特に「ローカルカメラID」と呼ぶ)と対応している。カメラIDのことを、「ローカル・カメラID」を特に区別する場合には、「グローバル・カメラID」とも呼ぶ。
【0048】
「カメラID」のリストの最初のものがカメラ制御モジュール側ではローカル「カメラID」1番として扱われる。例えば、図4では3台のカメラがカメラ制御モジュール410の管理下にある。仮に最前列のカメラから順にその「ローカル・カメラID」を、“1”,“2”,“3”とする。これらのカメラのグローバル・「カメラID」を102, 501, 405とすると、CS情報内の「カメラID」項目には102, 501, 405の順で並べられる。
【0049】
CS管理モジュール516はCS情報を図5の如く一般的なテーブルの形式で管理する。このテーブルのことを「CS管理テーブル」と呼ぶ。このテーブルの実装においてはハードディスクやデータベースシステムを用いてデータを永続化することが出来る。また、データを永続化しないならばメモリ上でテーブルを作成してもよい。ただし、その場合は、連係制御サーバが終了してしまうとCS管理モジュール内の情報が失われてしまう。このため、次の起動時に起動オプションや初期化ファイルを用いてCS情報を与える必要がある。
【0050】
〈CC管理モジュール517〉…第1実施形態
CC(camera client)管理モジュール517では、カメラ・クライアントの情報CC情報を管理する。CC情報は、図6のように、「CC-ID」,「ソケット番号」,「カメラID」などの項目から成り立っている。
「CC-ID」は、CC管理モジュール517によって個々のカメラ・クライアントに割り当てられる一意な識別子である。本実施形態では1以上の整数として実装される。「CC-ID」はカメラ・クライアントからカメラ連係制御サーバアプリケーションプログラム507へ接続要求が送られてきた時に、CC管理モジュール517によって割り当てられる。「CC-ID」は、「CS-ID」と同様に、CC情報取得のキーとして使用することができる。
【0051】
図6の「ソケット番号」は、「CC-ID」によって識別されるカメラ・クライアントとの通信のために送受信モジュール515に渡すソケットの番号である。また、「カメラID」は、そのクライアントが現在使用中のカメラの「カメラID」である。
CC管理モジュールの実装もCS管理モジュールをまったく同じくテーブル(CC管理テーブル)で実施することができる。ただし、CC管理モジュール517では、CC情報を予め用意する必要はないので、CS管理モジュールのような初期化処理は不要である。
【0052】
〈カメラ状態管理モジュール518〉…第1実施形態
アプリケーションプログラム507のカメラ状態管理モジュール118は、個々のカメラに関する情報、即ち、カメラ状態情報を管理するモジュールである。ここで管理されるカメラ状態情報を図7に示す。尚、図7では、カメラIDがnであるカメラの情報を主に示す。
【0053】
カメラ状態管理テーブルは、複数のカメラの関する状態を管理するテーブルであり、特定のカメラの状態に関する情報を検索するには、「カメラID」をキーとして検索を行う。連係制御サーバ500は、最新のカメラ状態情報を、そのカメラnを管理するカメラサーバのカメラ制御モジュールに問い合わせを行うことで取得する。一方、カメラ制御モジュールによってカメラの状態(撮像方向の向きや操作権)が変更されたときには、カメラ制御モジュール内のカメラ情報通知部414が連係制御サーバ500に通知する。この通知に基づき、随時カメラ状態情報を更新することができる。カメラ状態管理モジュールそのものはCS管理モジュールと同様なテーブル(図7)として実装することが可能である。
【0054】
〈連係制御モジュール519〉…第1実施形態
カメラ連係制御サーバ500の連係制御モジュール519は、複数のカメラ間の連係動作を制御するモジュールである。どのようにして連係を制御するかを記述したカメラ連係情報テーブル(図8)を管理し、その内容にもとづいて連係処理を実施する。連係制御モジュールは、図4に示すように、内部的に2つのサブモジュール(カメラ操作サブモジュール520と操作権制御サブモジュール521)とから構成されている。
【0055】
カメラ操作サブモジュール520は、カメラ連係情報を解釈・実行し、カメラの操作をカメラ制御モジュール410に指示するモジュールである。操作権制御サブモジュール521は、連係の対象となるカメラの操作権の取得処理を実行するモジュールである。
本実施形態では、複数のカメラ・クライアントが1つのカメラに対してカメラ操作を要求することができる。このため、連係処理を実行する時に、連係させたいカメラが別のクライアントによって既に使用されており、操作権を取得できない場合が想定される。操作権制御サブモジュール521は上記の如く操作権の衝突が発生したときに、カメラ連係情報テーブル内の記述に基づいて衝突解消処理を実行する。本実施形態で準備されている衝突調停処理の態様は以下のものである。即ち、既に使用されているカメラpに対する要求が発生したときに、
-操作権が解放されるまで待つ
-カメラpに対する操作権を強制的に取得する
-替りのカメラ(例えばカメラq)の操作権を取得する
-カメラpに対する操作を断念する
連係制御モジュール519が使用するカメラ連係情報管理テーブル(図8)は、例えば後述の図9に示すところの、連係制御モジュール519が提供するユーザインタフェースを用いて作成することができる。本実施形態のウィンドウ501(図9)上で設定できる項目は、以下の通りである。
【0056】
-カメラリスト532
-アクションリスト533
-アクション名534
-関始条件535
-連係対象カメラ536
-衝突時処理537
-操作内容538
-代理カメラフラグ539
即ち、図9のウインドを介して入力された各項目は、図8のカメラ連係情報管理テーブルの対応記憶領域に格納される。
【0057】
カメラ状態管理モジュール518により管理されている全てのカメラの「カメラID」は、図8のカメラ連係情報管理テーブルの「カメラリスト」記憶領域に記憶される。そこで、図9の表示領域「カメラリスト」532には、カメラ連係情報管理テーブルの「カメラリスト」内の「カメラID」がリスト表示される。図9の例では、「カメラI」と「カメラII」と「カメラIII」である。
【0058】
表示領域「アクションリスト」533には、領域532に表示されているカメラリストの中でユーザが選択したカメラ(図9では「カメラI」)に対して設定されている「連係動作」のリストが表示される。各カメラに設定されている「連係動作」、即ちアクションは、カメラ連係情報管理テーブルの「アクションリスト」に格納されている。カメラ連係情報管理テーブルの「アクションリスト」は、連係動作を新たに設定したときに生成される。即ち、「連係動作」、即ちアクションを新たに設定する場合は、まず「カメラリスト」表示領域532で目的の「カメラID」を選択し、この目的のカメラに設定すべき「アクション名」と「開始条件」とを領域534と535において設定する。ここで、「アクション名」は、ユーザがこの連係情報に任意に付した名前である。図9の例では、「映像切替」という名前が付された。「アクション名」はアクションリスト533に表示される名前でもある。アクション名の値には任意の文字列を指定することが可能である。
【0059】
「開始条件」を入力する領域535は、この連係処理が開始されるべき条件を設定する。本実施形態ではカメラリストで選択したカメラのパン正面を0度とした左右方向に亘るPan角度、チルト正面を0度とした上下方向でのTilt角、そしてズーム倍率Zoomを指定する。指定された値は、カメラ連係情報管理テーブル内で、当該「カメラID」の当該「アクション」の夫々の領域に格納される。図8の例では、カメラ=「カメラI」に設定されたアクション名「映像切替」に設定された「開始条件」は、
Pan = pp1 度
Tilt = tt1 度
Zoom = zz1 度
である。カメラIの実際の撮像方向の向きやズーム倍率が、上記カメラ連係情報管理テーブルの「開始条件」に記憶されている値と一致すると、連係処理が実行される。
【0060】
図9において、「連係対象カメラ」の入力表示領域536は、連係処理の対象となるカメラを選択するものである。領域536で指定された連係カメラの識別子は、カメラ連係情報管理テーブルの該当領域に記憶される。尚、「連係対象カメラ」として複数のカメラを選択することが可能である。
チェックボックス539は、カメラに対する使用要求が衝突したときにおいて代理カメラを用いるべきか否かを指定する。この代理カメラは衝突時処理として「別のカメラの操作権を取得」が選択されているときに用いられる。即ち、衝突時処理の「別のカメラの操作権を取得」が選択されて、この代理カメラのフラグがONにされると、領域536に表示されているカメラが、衝突時処理における代理カメラとして使用される。
【0061】
「操作内容」入力領域538は、連係処理後の連係対象カメラの向きとズーム倍率を設定する領域である。また、「衝突時処理」入力領域537は操作権衝突時の対処方法を指定する。尚、「衝突時処理」として「別のカメラの操作権取得」を選択したときは、操作権取得に失敗した時に使用される代理のカメラの「カメラID」も選択しなければならない。
【0062】
図9のユーザインタフェースで作成されるカメラ連係情報は以下の項目から成るテキストデータとして主メモリや2次記憶装置上に図8のようにおかれる。ただし//で始まる行は注釈である。
//開始条件
Action-Name=<アクション名>
Camera-Id=<開始条件を定義するカメラのID>
Pan=<開始条件の左右角>
Tilt=<開始条件の上下角>
Zoom=<開始条件のズーム倍率>
//連係処理の設定
Target=<連係の対象となるカメラのlD>
Type=<カメラのタイプ>
Policy=<衝突時処理の選択された項目の番号>
Alternative=<代理カメラのID>
nPan=<操作内容の左右角>
nTilt=<操作内容の上下角>
nZoom=<操作内容のズーム倍率>
ここで、Typeの値は、Targetに指定したカメラが通常の対象カメラなら文字列“target”が設定される。カメラが代理カメラとして指定されたのならば、Typeの値は“alternative”になる。また、Policyの値は図9における衝突解消処理の選択項目を上から数えた番号である。従って1から4までの整数になる。Alternativeの値である代理カメラはPolicyの値が“4”の時のみ参照される。Policyの値“4”は「別のカメラの操作権を取得する」を選択した時に設定される。
【0063】
本実施形態では、カメラのパン、チルト、ズームのみ設定可能であるとしてユーザインタフェースが設計されているが、カメラの機種によってはそれ以外にも制御可能な設定項目が用意されることが考えられる。本実施形態の連係情報はテキストとして管理されるので、図9のGUIユーザインタフェースを使用しなくても、テキストエディタ等を用いて直接項目を設定することが可能である。
【0064】
また、本実施形態ではパン、チルト、ズームの値を直接数値で入力しなければならないが、これを実際にカメラ・クライアントに表示される映像を見ながら設定できるようにすることも可能である。この実現は、適当なカメラ・クライアントを使ってユーザにカメラを操作させ、設定するカメラの向きやズーム倍率が決定したら、その時点でのカメラ状態情報をカメラ状態管理モジュールから取得すればよい。
【0065】
〈動作概要〉…第1実施形態
では、次に本実施形態の動作概要について説明する。本実施形態の動作フェーズには以下のものがある。
1.連係制御サーバの起動
2.カメラ・クライアントの起動
3.カメラ・クライアントによるカメラ操作
3-1.カメラの操作
3-2.カメラ操作の通知
4カメラの連係動作
4-1.カメラ操作権の制御
4-2.カメラ操作
各フェーズについて図10から図19を用いて説明する。
【0066】
以下の説明では、連係制御の対象となるカメラの電源がすべてONになっていると仮定する。また、各カメラを管理するカメラ制御モジュールも正常に動作しているものとする。
〈連係制御サーバの起動〉
連係制御サーバの起動については図10と図15を用いて説明する。図10は動作の様子を表す概念図、図15は制御手順を示すフローチャートである。
【0067】
連係制御サーバアプリケーションプログラム507が起動されると、「CS管理モジュールの初期化」、「カメラ状態管理モジュールの初期化」、「連係制御モジュールの初期化」などの処理が実行される。
CS管理モジュールの初期化は以下のようにする。
カメラ連係制御サーバアプリケーションプログラム507が起動されると、CS管理モジュール517はCS管理情報をハードディスク510からロードしてCS管理情報のテーブル(図5)を作成する。すなわち、まずCS管理モジュール517はCS情報をハードディスク510から取り出す(図15のS1101)。通常、CS情報は複数保存されている。ハードディスク510上では、CS情報として、カメラ制御モジュール410の稼動しているホストの「名前」と、通信のための「ポート番号」のみが保存されている。CS管理モジュール517は、「ホスト名」と「ポート番号」以外のCS情報を作成するために、最初にCS情報にCS-IDを割り当てる(S1102)。つぎに、CS情報内の各カメラサーバについての「ホスト名」と「ポート番号」を送受信モジュール515に渡して、各カメラサーバの夫々のカメラ制御モジュール410とのコネクション作成を指示する(S1103)。
【0068】
コネクション作成指示を受け取った送受信モジュール515では、渡された各カメラサーバの「ホスト名」と「ポート番号」とを利用して、各カメラサーバのカメラ制御モジュールとの通信のためのソケットを作成する(S1104)。作成されたソケットの番号(「ソケット番号」)は、CS管理モジュール517に、コネクション作成指示に対するリプライとして返送される(S1105)。CS管理モジュール517がこのソケット番号を受け取ると、そのソケット番号をCS管理情報に追加する(S1106)。
【0069】
ここまで処理が行われると、次に制御は「カメラ状態管理モジュールの初期化処理」に移行する。
〈カメラ状態管理モジュールの初期化〉…第1実施形態
カメラ状態管理モジュールの初期化は図7のテーブルを作成する。
カメラ制御管理モジュールの初期化処理に制御が移ると、まずカメラ状態管理モジュール518は、上述の初期化の終了したCS管理モジュール517から、すべての「CS-ID」と「ソケット番号」を取得する(図15のS1107)。そして、取得した「ソケット番号」を送受信モジュール515に渡し、カメラ状態情報取得要求を全カメラ制御モジュールに対して送信するように指示する(S1108)。
【0070】
送受信モジュール517側では、指定された「ソケット番号」を使って各カメラ制御モジュール410に対してカメラ状態情報取得要求を送信する(S1109)。
カメラ制御モジュール410では、連係制御サーバからのカメラ状態情報取得要求を受け取ると、そのカメラ制御モジュールの管理下にあるカメラのカメラ状態情報(カメラの機種、キャプションカメラの向き、ズーム倍率)を返送する。ここで、1つのカメラ制御モジュール410が複数のカメラを管理している場合も、そのカメラの台数分のカメラ状態情報を返送する。
【0071】
連係制御サーバの送受信モジュール515は、カメラ制御モジュール410から返送されてくるカメラ状態情報を受信すると(S1110)、受信したカメラ状態情報をさらにカメラ状態管理モジュール518に転送する(S1111)。カメラ状態管理モジュール518側では受信したカメラ状態情報に「カメラID」を割り当て(S1112)、カメラ状態管理テーブルに追加する(S1113)。ここで「カメラID」の割り当てのとき、カメラ制御モジュール410側での「カメラID」(「ローカルカメラID」)と、カメラ状態管理モジュール518側での「カメラID」(「グローバルカメラID」)の大小関係が保存されるように、「グローバルカメラID」の割り当てをおこなわなければならない。また、最初に取得した「CS-ID」の値をカメラ状態情報内の「CS-ID」項目の値に設定する(S1114)。
【0072】
以上のカメラ状態管理モジュール518の初期化が終了すると、再度、CS管理モジュールの初期化処理に制御が戻る。
まず、CS管理モジュール517はカメラ状態管理モジュール518から全てのカメラ状態情報を取得し(S1115)、カメラ状態情報内の「カメラID」と「CS-ID」項目の値を基にして、CS情報側の「カメラID」項目の値を設定する(S1116)。
【0073】
〈連係制御モジュールの初期化〉…第1実施形態
この処理は、連係制御情報をハードディスクからロードしその内容を主メモリにコピーするだけである(S1117)。CS管理モジュール517とカメラ状態管理モジュール518の初期化は、互いに関連をもって処理されるが、連係制御モジュール519の初期化処理はこれらの処理とは無関係に動作することができる。
【0074】
〈カメラ・クライアントの起動〉…第1実施形態
カメラ・クライアント601が利用者によって起動され、さらにカメラ連係制御サーバ500とのコネクションを要求してきたときは以下の処理が行われる。
この処理を図11と図16を用いて説明する。
利用者がカメラ・クライアント601を起動して、カメラ連係制御サーバアプリケーションプログラム507とのコネクション処理を実行すると、連係制御サーバ500の送受信モジュール515によってコネクション処理が検知され、通信のためのソケットが生成される(S1201)。送受信モジュール515はこの接続を検知すると、CC管理モジュール517に生成した「ソケット番号」を通知する(S1202)。通知を受けたCC管理モジュール517側では取得した「ソケット番号」にCC-IDを割り当てた後、CC情報管理テーブルにこれを登録する(S1203)。次に、カメラ状態管理モジュール518に対して、全てのカメラ状態情報の「カメラID」および「キャプション項目」の取得を指示する(S1204)。
【0075】
指示を受け取ったカメラ状態管理モジュール518側では、カメラ状態管理テーブル内のすべての「カメラID」と「キャプション項目」を取り出し(S1205)、CC管理モジュール517に返送する(S1206)。
CC管理モジュール517で「カメラID」と「キャプション項目」のリストを取得すると(S1207)、送受信モジュール515に対して、取得したこのリストを転送し、カメラ・クライアント601にリストを送信するように指示する(S1208)。送受信モジュール515ではリストを取得すると、カメラ・クライアント601にその内容を送信する(S1209)。
【0076】
カメラ・クライアント601側では、取得した「カメラID」と「キャプション項目」をディスプレイ等に表示し、利用者が操作したいカメラに関する情報と、カメラを選択するためのユーザインタフェースを提供する。
また、カメラ・クライアント601との接続が終了したときも、開始の時と同様である。即ち、コネクションの終了処理が送受信モジュール515によって検知されると、終了されたソケットの番号がCC管理モジュール517に転送される。CC管理モジュール517では転送されてきた「ソケット番号」と、その「ソケット番号」に対応するCC-IDをCC管理テーブル(図6)から削除する。削除されたCC-IDはカメラ状態管理モジュール518にも送信され、カメラ状態情報からも削除される。
【0077】
〈カメラ・クライアント601によるカメラ操作〉…第1実施形態
利用者がカメラ・クライアント601を利用してカメラ操作を要求すると、以下の処理が行われる。実際にカメラ操作を行うには、まずカメラの操作権を要求して操作権を取得してからでないと、カメラ操作を行うことができない。しかし、カメラ連係制御サーバ500では、カメラの操作権取得処理とカメラ操作処理もまったく同じ方式で処理される。以下で図12と図17を用いてカメラ・クライアント601によるカメラ操作について説明する。
【0078】
利用者が行った操作は、カメラ・クライアント601によつて、カメラ連係制御サーバ500が認識可能なメッセージ形式(カメラ操作要求)に変換されて送信される。送受信モジュール515がカメラ操作要求を受信すると(S1301)、その要求はCC管理モジュール517に転送される(S1302)。
受け取ったカメラ操作要求の内容は、略そのままカメラ制御モジュール410で解釈・実行できる形式のものである。ただし、そこで指定されている「カメラID」は「グローバル・カメラID」なので、これをカメラ制御モジュール410側の「ローカル・カメラID」に変換しなければならない。そこで、カメラ操作要求を受け取ったCC管理モジュール517は、受け取った操作要求からまず、「カメラID」を抽出する(S1303)。この「カメラID」は「グローバル・カメラID」である。この「カメラID」をカメラ状態管理モジュール518に渡して、そのカメラを管理しているカメラ制御モジュール410のCS-ID取得を指示する(S1304)。
【0079】
カメラ状態管理モジュール518では、渡された「カメラID」をキーとしてカメラ状態情報(図7)を検索する(S1305)。それから、カメラ状態情報内のCS-ID項目の値をCC管理モジュール517に返送する(S1306)。
「CS-ID」を受け取ったCC管理モジュール517では、「CS-ID」と「カメラID」をCS管理モジュール516に渡し、「ローカルカメラID」と、カメラ制御モジュール410と通信するための「ソケット番号」との取得を指示する(S1307)。
【0080】
CS管理モジュール516では、まず「CS-ID」をキーとしてCS情報を取得し(S1302)、そこから「ソケット番号」を抽出する。また、「カメラID」項目の値と渡されたカメラ項目を比較し、「カメラID」項目内の何番目の「カメラID」と一致するかを調べる。一致した場合は、その「カメラID」の「カメラID」項目内における順番が「ローカル・カメラID」として使用される。このようにして得られた「ソケット番号」と「ローカル・カメラID」はCC管理モジュール517に返送される(S1309)。
【0081】
CC管理モジュール517側では、操作要求内の「カメラID」を「ローカルカメラID」に置換してから(S1310)、「ソケット番号」と操作要求を送受信モジュール515に渡し、カメラ制御モジュール410への送信を指示する(S1311)。送受信モジュール515では要求をカメラ制御モジュール410に送信する。
【0082】
〈カメラ操作通知〉…第1実施形態
カメラ・クライアント601によってカメラ操作が行われると、カメラ制御モジュール410の「カメラ情報通知部」によりカメラ操作通知が送信されてくる。カメラ連係制御サーバは、この通知内容をもとにしてカメラ状態管理モジュール518内のカメラ状態情報を更新したり、連係制御の開始条件のチェックを行う。
【0083】
以下図13と図18を用いて説明する。
カメラ制御モジュール410からカメラ操作通知が送信され、カメラ連係制御サーバ507内の送受信モジュール515によって受信されると(S1401)、その送受信モジュール515はCS管理モジュール516にカメラ操作通知を転送する(S1402)。
【0084】
CS管理モジュール516では、まず、カメラ操作通知に含まれている「ローカル・カメラID」を抽出し(S1403、これを「カメラID」(「グローバル・カメラID」)に変換する(S1404)。この変換は、カメラ操作通知を送信してきたカメラ制御モジュール410に対応するCS情報(図5)内の「カメラID」項目を参照し、その「ローカル・カメラID」番目に記入されている「カメラID」を取り出せばよい。「カメラID」の変換を行うと、カメラ操作通知内に書かれている「ローカル・カメラID」を「グローバル・カメラID」で置換する(S1405)。次に、この書き変えたカメラ操作通知を連係制御モジュール519とカメラ状態管理モジュール518に転送する(S1406,S1407)。ここで図18のフローチャートでは、ステップS1406とステップS1407を順番に行うように書かれているが、実際は、S1406とS1407は同時に実行される。
【0085】
また、ステップS1406によりカメラ操作通知は連係制御モジュール519によって処理されるが、その処理内容は後に説明することとし、ここでは、ステップS1407によって実行されるカメラ状態管理モジュール518側の処理について説明する。
CS管理モジュール516からカメラ操作通知を転送されたカメラ状態管理モジュール518では、カメラ操作通知から、「カメラID」とカメラの「向き」、「ズーム倍率」等のカメラ状態情報を抽出する(S1408)。それからその情報でカメラ状態管理テーブル(図7)内のカメラ状態情報を更新する(S1409)。さらにカメラ状態情報からCC-ID項目の値を取り出し(S1410)、CC管理モジュール517にCC-IDを渡して、カメラ操作通知の転送を指示する。
【0086】
転送を指示されたCC管理モジュール517では、操作されたカメラを参照しようとしているすべてのカメラ・クライアント601に対してカメラ操作通知を転送するための処理をおこなう。各カメラ・クライアント601にカメラ操作通知を転送することで、カメラ・クライアント601側でもカメラ動作をディスプレイ上の表示に反映させる等の処理が可能となる。CC管理モジュール517はカメラ状態管理モジュール518から渡されたCC-IDをキーとして、カメラ・クライアント601と通信するために必要な「ソケット番号」を検索する(S1412)。この「ソケット番号」が得られると、CC管理モジュール517は、送受信モジュール515に、「ソケット番号」と「カメラID」とが書き換えられたカメラ操作通知を転送し、カメラ操作通知のカメラ・クライアント601ヘの送信を指示する(S1413)。最後に、送受信モジュール(S1414)では、指定されたカメラクライアント601(ソケット番号)にカメラ操作通知を送信する(S1614)。
【0087】
〈カメラ連係の制御〉…第1実施形態
ここではカメラの連係制御が行われる様子について図14および図19,図20を用いて説明する。ここで、図19の処理は主に操作権制御サブモジュール521によって実行され、図20に書かれた処理はカメラ操作サブモジュール520によって実行される。
【0088】
連係制御モジュール519は、カメラ操作通知をCS管理モジュール516から受け取ると(S1501)、受け取ったカメラ操作通知から「カメラID」を抽出する(S1502)。ここで、受け取ったカメラ操作通知の内容を直接参照することによりカメラ状態情報を得ることもできるが、本実施形態ではカメラ状態情報をカメラ状態管理モジュール518経由で取得するものである。このようにすることで、カメラ操作通知そのものを扱うモジュールを限定し、システムの変更を容易にすることができる。すなわち、抽出した「カメラID」をカメラ状態管理モジュール518に渡すことにより、このモジュール518にカメラ状態情報の取得を依頼する(S1503)。カメラ状態管理モジュール518では、この依頼に対して、「カメラID」に基づいてカメラ状態情報を検索し、検索したカメラ状態情報を連係制御モジュール519に返送する(S1504)。カメラ状態情報を得たカメラ連係制御モジュール519では、このカメラ状態情報と、カメラ連係制御サーバ507の起動時にハードディスク510から主メモリにロードしておいたところの連係制御情報(図8)の「Camera-Id」項目および「Pan」,「Tilt」,「Zoom」項目の値と比較して一致したものがないかチェックする。その結果、カメラ状態情報に一致する連係制御情報が見つからなければ(S1505)、そのまま処理は終了する。
【0089】
カメラ状態情報に一致する連係制御情報が見つかった場合は(S1505)、その連係制御情報に含まれるすべての「連係対象カメラ」(Target)の項目の値を取り出し(S1506)、その1つ1つにステップS1507以降の処理を適用していく。
本実施形態では、同一の「開始条件」をもつ連係制御情報は指定できないものと仮定している。ただし、複数の同一開始条件を許すような制御手順も容易である。その場合には、ステップS1505以降を同一の開始条件をもつ連係制御情報がなくなるまで繰り返してやればよい。
【0090】
すなわち、まず、Target項目の値である「カメラID」を1つ取得し(S1507)、カメラ状態管理モジュール518にこの「カメラID」を渡して「CS-ID」の取得を指示する(S1508)。カメラ状態管理モジュール518では、「カメラID」をキーとしてカメラ状態情報を検索し、さらにカメラ状態情報から「CS-ID」項目の値を取り出して連係制御モジュール519に返送する(S1509。連係制御モジュール519ではCS管理モジュール516に「CS-ID」と「カメラID」に渡して、カメラの操作権の取得を依頼する(S1510)。
【0091】
CS管理モジュール516では、この依頼を受けると、依頼中の「CS-ID」から、カメラ制御モジュールと通信するための「ソケット番号」を検索し(S1511)、さらに「カメラID」から「ローカル・カメラID」への変換を行う(S1512)。次に送受信モジュール515に「ソケット番号」と「ローカル・カメラID」を渡して操作権取得要求の送信を指示する(S1513)。
【0092】
送受信モジュール515では、上記の指示を受けて操作権取得要求をカメラ制御モジュール410に送信する(S1514)。その結果がカメラ制御モジュール410から連係制御サーバ500の送受信モジュール515に返送されてくるので、これを受信する(S1516)。この結果はさらに連係制御モジュール519に転送される(S1517)。操作権を得ることができたならば(S1518)、連係制御モジュール519はステップS1520以降の処理を即座に実行する。
【0093】
操作権の取得に失敗した場合(S1518)、即ち、他のカメラクライアント601がそのカメラを既に使用していた場合には、連係制御情報内のPolicy項目に指定された操作権衝突回避処理を実行する(S1519)。ここで、Policyに指定可能な項目は前述のように、
-操作権が解放されるまで待つ
-カメラpに対する操作権を強制的に取得する
-替りのカメラ(例えばカメラq)の操作権を取得する
-カメラpに対する操作を断念する
である。この設定は、図9のウインドダイアログによって設定されることは前述した。
【0094】
「解放されるまで待つ」が指定されていた場合は、ステップS1519の「操作権衝突回避処理」は一旦中断され、新たなカメラ操作通知がカメラ制御モジュール410から送信されてくるまで、ステップS1519においてサスペンド状態になる。
当該カメラに対する他のクライアントによる操作の終了はカメラ制御モジュール410によって検知される。そこで、カメラ制御モジュール410からカメラの操作権が放棄された旨のカメラ操作通知を送受信モジュール515経由で連係制御モジュール519が受信した時点で、サスペンドされていた処理は再開される。
【0095】
一方、操作権衝突回避処理として、「強制的に操作権を取得する」が選択されていた場合には、再度、送受信モジュール515に操作権取得要求の送信を指示する。ただし、今回の操作権取得要求には「強制取得フラグ」をONにしておく。当然のことながら、カメラ制御モジュール410側で、強制取得機能をサポートしていない場合、この回避方法は無効である。強制取得フラグがサポートされており、操作権の強制取得に成功した場合は、ステップS1520以降の処理を再開する。
【0096】
また、操作権衝突回避処理として、「そのカメラ操作を断念する」が選択されていた場合には、ステップS1520以降の処理を中止し、ステップS1507から処理を再開する。
また、操作権衝突回避処理として、「替りのカメラ操作権を取得する」が選択されていた場合には、連係制御情報のAlternative項目の値を取り出し、そこに指定されている「カメラID」についてステップS1508以降の処理を再度行う。
【0097】
以上の操作権衝突回避処理の結果、なんらかのかたちで操作権を取得した場合(S1518)、連係情報から「nPan」,「nTilt」,「nZoom」項目の値を抽出し(S1520)、さらに先ほど取得した「カメラID」,「CS-ID」をCS管理モジュール516に渡して、カメラ操作要求の送信を指示する(S1521)。CS管理モジュール516では先ほどと同様に「CS-ID」から「ソケット番号」を取得(S1522)し、「カメラID」を「ローカルカメラID」に変換する(S1523)。得られた「ローカル・カメラID」、「ソケット番号」および「nPan」,「nTilt」,「nZoom」の値を送受信モジュール515に渡してカメラ操作要求の送信を指示する(S1524)。最後に送受信モジュール515がカメラ操作要求をカメラ制御モジュール410に送信する(S1525)。
【0098】
以上の処理をすべてのTarget(連係対象カメラ)項目について繰り返す(S1526)。
以上のようにしてカメラの連係を制御する。
Targetを複数連係制御情報に含ませることで、複数のカメラを連動させることが可能となる。
【0099】
以上、述べたように本実施形態では、
-個々のカメラの操作部
-個々のカメラの操作権制御部
-複数のカメラの操作権を管理するための連係制御モジュール内の操作権
制御サブモジュール
-カメラの連係の発生条件および具体的な連係の内容を管理し実行するた
めの連係制御モジュール内のカメラ操作サブモジュール
-カメラの連係の発生条件の検出のための各カメラの情報向きやズーム
倍率などを管理するためのカメラ状態管理モジュール
-上記カメラ状態情報管理部で管理されるカメラ状態情報を取得を可能にする
送受信モジュール、CS管理モジュール、およびCC管理モジュールを提供している。
【0100】
以上の構成により、本案施例では従来のカメラ制御モジュールによる個々のカメラ操作と共存可能なカメラ連係制御を可能している。カメラ・クライアントは従来どおりカメラ制御モジュールを使用して個々のカメラの操作が可能であると同時に、複数のカメラを連係させることが可能である。
〈第2の実施形態〉
ここでは、本発明の第2の実施形態について説明する。図21は第2実施形態の概念を表す図である。
【0101】
第1の実施形態ではカメラ連係のための各部がマルチカメラ制御サーバという形の独立したソフトウェアとして実現されていた。第2実施形態では、カメラ連係のための各部をカメラ制御モジュールに組み込んでいる。また、カメラ制御モジュール自体も、カメラとは独立なPCで動作するのではなく、カメラ自体に組み込まれたCPUや主メモリ上で動作するものとする。
【0102】
このため図21に示すように、第2実施形態では、カメラ1400a,1400b,1400cの内部にカメラ制御モジュール1401a,1401b,1401cが夫々組み込まれている。ただし、このカメラ制御モジュール1401a,1401b,1401cは、機能的には、第1実施形態のカメラ制御モジュールと同等な機能をもっているものとする。各カメラ制御モジュールは、第1実施形態のようなマルチカメラ制御サーバを仲介とすることなく、コンピュータネットワーク1700を使用して、カメラ・クライアント1600a,1600b,1600c,1600dと通信を行う。複数カメラの連係動作は、カメラ制御サーバ同士で通信を行うことによって実現される。
【0103】
第2実施形態の構成要素について図22を用いて説明する。
図22において、カメラ1411とカメラ・クライアント1600が存在し、コンピュータネットワーク1712で接続されている。図には記載されていないが、カメラ1411はCPUと主メモリを持ちプログラムを実行することができる。また、カメラ1411にはデータベース管理システム1410が接続されている。カメラ1411内で動作するプログラムは、データベース管理システム1410を利用してデータの管理を行うことができる。
【0104】
カメラ1411内の主メモリにはカメラ制御モジュール1401が置かれている。カメラ制御モジュールは内部的に2つのモジュールに分割される。コア制御モジュール1402は、第1実施形態のカメラ制御モジュールに相当し、カメラ1411の操作を行うためのローカルカメラ操作サブモジュール1403と、カメラの制御権を管理するためのローカル操作権制御サブモジュール1404から構成される。もう一つのモジュールであるリモート制御モジュール1408は、第1実施形態のマルチカメラ制御サーバ(500)に相当し、複数カメラの操作権を制御するためのリモート操作権制御サブモジュール1405と、カメラの連動を制御するリモート連係制御サブモジュール1407と、カメラ1411だけでなく他カメラ制御モジュールの管理下にあるカメラに関する情報を管理するリモートカメラ情報管理サブモジュール1406とから構成されている。
【0105】
第2実施形態において、第1実施形態のカメラ状態管理モジュール518、カメラ操作サブモジュール520、操作権制御サブモジュール521に相当する構成要素として、リモートカメラ状態管理モジュール1406、リモート連係制御サブモジュール1407、リモート操作権制御サブモジュール1405が提供されている。しかし、第1実施形態の、送受信モジュール515、CS管理モジュール516、CC管理モジュール517に相当する構成要素は図22に明記されていない。しかしながら、CC管理モジュール517に相当する機能はローカル操作権制御サブモジュール1404によって提供される。また、CS管理モジュール516に相当する機能は、リモートカメラ情報管理サブモジュール1406に組み込まれている。これは、第2実施形態ではカメラとカメラ制御モジュールが必ず1;1に対応しているので、カメラ情報とCS情報を個別に扱う必要がないためである。
【0106】
第2実施形態では、ソケット等のプロセス間通信機能を使用せず、データベース管理システム1410が「変更通知機能」を提供していると仮定する。「変更通知機能」は、データベース上で管理されているデータに変更がなされた時、そのデータを参照している各クライアントに通知を行う機能である。送受信モジュールに相当する機能は変更通知機能によって提供される。ただし、データベース管理システム1410が「変更通知機能」を提供していない場合は、第1実施形態と同様な送受信モジュールをカメラ制御モジュール1401に追加する必要がある。
【0107】
第2実施形態で、各モジュールが使用するカメラ情報やCC情報は第1実施形態で示したものと同じである。ただし、CS情報の各項目はカメラ情報内に含まれているものとする。これらの情報はデータベース管理システム1410上で管理される。このため各モジュールでテーブルを作成する必要はない。また、データベース上の情報はすべてのカメラ制御モジュールから参照することができる。
【0108】
第2実施形態の動作において、各モジュールの動作は第1実施形態と同じである。即ち、第1実施形態の各モジュール名を第2実施形態における各サブモジュール名で読み替えることとし、第1実施形態でCS情報を参照する制御はカメラ情報を参照する制御に変更解釈すればよい。
ただし、第2実施形態では第1実施形態のように送受信モジュールを有さないので、送受信モジュールを使用して通信を行う第1実施形態の制御部分は以下のように変更される。
【0109】
すなわち、カメラ操作要求などの要求メッセージを、他のカメラ制御モジュールに送信する処理を実現するために、処理を行わせたいカメラ制御モジュールのカメラ情報に「要求」という項目を追加する。要求項目の値には、要求の種類(操作権取得要求など)を指定するための識別子(例えば、要求の名前を表す文字列など)を指定しておく。
【0110】
カメラ情報に項目を追加されたカメラ制御モジュールには、データベース管理モジュール1410から変更が通知されてくるので、カメラ情報に追加された要求項目の値をチェックする。チェックの結果、たとえば「カメラ制御要求」が指定されていることが分かれば、カメラ制御要求を送受信モジュールから受け取る第1実施形態の場合と同様にして、処理を実行することができる。
【0111】
また、上記のような要求に対するリプライは、リプライを通知したいカメラ制御モジュールのカメラ情報に「リプライ」項目を追加し、リプライの内容を値として設定すればよい。「要求」と「リプライ」項目は必要がなくなれば、適宜削除してよい。
カメラ・クライアントとカメラ制御モジュール間の通信も同様にして実現される。すなわち、CC情報に「要求」項目および「リプライ」項目を追加し、適当な値を設定すればよい。
【0112】
以上述べたように、第2実施形態は、
・個々のカメラの操作部であるローカルカメラ操作サブモジュール、
・個々のカメラの操作権制御部であるローカル操作権利御サブモジュー
ル、
・複数のカメラの操作権を管理するためのリモート操作権利御サブモジュ
ール
・カメラの連係の発生条件および具体的な連係の内容を管理し実行するた
めのリモート連係制御サブモジュール
・カメラの連係の発生条件の検出のための各カメラの情報向きやズーム
倍率などを管理するためのカメラ状態管理モジュール
・上記カメラ情報管理部で管理されるカメラ情報の共有を可能にするデ
ータベース管理システム
から構成されているカメラ制御モジュールを提供する。
【0113】
以上のように第2実施形態ではデータベース管理システムを使用してデータ管理機構を実現しており、さらにカメラ連係のための部を各カメラ制御モジュールに組み込んでいるため、カメラの台数の増減が行われてもデータベース上のカメラ情報を操作するだけでシステムを稼動させつづけることが可能となる。また、カメラ連係処理の負荷が特定のコンピュータに集中することなく、個々のカメラ制御モジュールに分散されるので、システム全体の利用効率が第1実施形態で示したものより向上するという利点をもっている。
【0114】
【他の実施形態】
なお、本発明は、複数の機器例えばホストコンピュータ,インタフェイス機器,リーダ,プリンタなどから構成されるシステムに適用しても、一つの機器からなる装置例えば、複写機,ファクシミリ装置などに適用してもよい。
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータまたはCPUやMPUが記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【0115】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
プログラムコードを供給するための記憶媒体としては、例えば、フロッピディスク,ハードディスク,光ディスク,光磁気ディスク,CD-ROM,CD-R,磁気テープ,不揮発性のメモリカード,ROMなどを用いることができる。
【0116】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOSオペレーティングシステムなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0117】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0118】
【発明の効果】
以上述べたように本発明によれば、所定のカメラが所定の向きの撮影をするように、複数のカメラに所定の連係動作を行わせることが可能になる。
【図面の簡単な説明】
【図1】 従来の技術である遠隔カメラシステムを説明するための図である。
【図2】 本発明の第1の実施形態のネットワーク構成図である。
【図3】 第1の実施形態におけるクライアントのユーザインタフェースを説明するための図である。
【図4】 第1の実施形態の概念を説明するための図である。
【図5】 第1実施形態に用いられるCS管理テーブルの構成を説明する図。
【図6】 第1実施形態に用いられるCC管理テーブルの構成を説明する図。
【図7】 第1実施形態に用いられるカメラ状態管理テーブルの構成を説明する図。
【図8】 第1実施形態に用いられる連係情報管理テーブルの構成を説明する図。
【図9】 カメラの連係情報を作成するためのユーザインタフェースを示す図である。
【図10】 連係制御サーバの起動処理を説明するための図である。
【図11】 カメラ・クライアントの起動処理を説明するための図である。
【図12】 カメラ・クライアントによるカメラ操作の処理を説明するための図である。
【図13】 カメラ制御モジュールからのカメラ操作通知の処理を説明するための図である。
【図14】 カメラ連係処理を説明するための図である。
【図15】 連係制御サーバの起動処理を表すフローチャートである。
【図16】 カメラ・クライアントの起動処理を表すフローチャートである。
【図17】 カメラ・クライアントによるカメラ操作の処理を表すフローチャートである。
【図18】 カメラ制御モジュールからのカメラ操作通知の処理を表すフローチャートである。
【図19】 カメラ連係処理を表すフローチャートである。
【図20】 カメラ連係処理を表すフローチャートである。
【図21】 本発明の第2実施形態の概念図である。
【図22】 第2の実施形態の構成図である。
Claims (3)
- 複数のカメラの連係動作を制御するために、ユーザが遠隔的に向き及びズーム倍率を操作する第1のカメラの向き及びズーム倍率の値を示した開始条件、前記第1のカメラと連係動作させる第2のカメラの情報、及び前記連係動作により前記第2のカメラの向き及びズーム倍率の値をどのように制御するかを示した連携動作内容がユーザにより予め設定された連係制御情報に基づき、ネットワークを介して当該複数のカメラを制御するカメラ制御方法において、
検出手段が、前記第1のカメラの向きとズーム倍率の値を検出する工程と、
制御手段が、前記検出する工程で検出された前記第1のカメラの向き及びズーム倍率の値が、前記連係制御情報において設定された開始条件を満たす場合、前記連係制御情報において前記第1のカメラと連係動作するカメラとして設定された前記第2のカメラの向き及びズーム倍率の値を、前記連係制御情報において設定された前記連係動作内容にしたがって制御する工程とを具備することを特徴とするカメラ制御方法。 - 複数のカメラの連係動作を制御するために、ユーザが遠隔的に向き及びズーム倍率を操作する第1のカメラの向き及びズーム倍率の値を示した開始条件、前記第1のカメラと連係動作させる第2のカメラの情報、及び前記連係動作により前記第2のカメラの向き及びズーム倍率の値をどのように制御するかを示した連携動作内容がユーザにより予め設定された連係制御情報に基づき、ネットワークを介して当該複数のカメラを制御するカメラ制御サーバであって、
前記第1のカメラの向きとズーム倍率の値を検出する検出手段と、
前記検出手段によって検出された前記第1のカメラの向き及びズーム倍率の値が、前記連係制御情報において設定された開始条件を満たす場合、前記連係制御情報において前記第1のカメラと連係動作するカメラとして設定された前記第2のカメラの向き及びズーム倍率の値を、前記連係制御情報において設定された前記連係動作内容にしたがって制御する制御手段とを具備することを特徴とするカメラ制御サーバ。 - 複数のカメラの連係動作を制御するために、ユーザが遠隔的に向き及びズーム倍率を操作する第1のカメラの向き及びズーム倍率の値を示した開始条件、前記第1のカメラと連係動作させる第2のカメラの情報、及び前記連係動作により前記第2のカメラの向き及びズーム倍率の値をどのように制御するかを示した連携動作内容がユーザにより予め設定された連係制御情報に基づき、ネットワークを介して当該複数のカメラを制御するカメラ制御手順をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記第1のカメラの向きとズーム倍率の値を検出する手順と、
前記検出する手順で検出された前記第1のカメラの向き及びズーム倍率の値が、前記連係制御情報において設定された開始条件を満たす場合、前記連係制御情報において前記第1のカメラと連係動作するカメラとして設定された前記第2のカメラの向き及びズーム倍率の値を、前記連係制御情報において設定された前記連係動作内容にしたがって制御する手順とを実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP27872198A JP4702911B2 (ja) | 1998-09-30 | 1998-09-30 | カメラ制御方法、カメラ制御サーバ、および記録媒体 |
US09/401,983 US6909457B1 (en) | 1998-09-30 | 1999-09-23 | Camera control system that controls a plurality of linked cameras |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP27872198A JP4702911B2 (ja) | 1998-09-30 | 1998-09-30 | カメラ制御方法、カメラ制御サーバ、および記録媒体 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2000113166A JP2000113166A (ja) | 2000-04-21 |
JP2000113166A5 JP2000113166A5 (ja) | 2005-11-17 |
JP4702911B2 true JP4702911B2 (ja) | 2011-06-15 |
Family
ID=17601281
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP27872198A Expired - Fee Related JP4702911B2 (ja) | 1998-09-30 | 1998-09-30 | カメラ制御方法、カメラ制御サーバ、および記録媒体 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6909457B1 (ja) |
JP (1) | JP4702911B2 (ja) |
Families Citing this family (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001042442A (ja) * | 1999-07-30 | 2001-02-16 | Sony Corp | プリント発注納品システム及び方法、ディジタルカメラ、登録装置、プリント発注用端末装置並びにプリントシステム |
US20020140819A1 (en) * | 2001-04-02 | 2002-10-03 | Pelco | Customizable security system component interface and method therefor |
US20030001959A1 (en) * | 2001-06-27 | 2003-01-02 | Nikon Corporation | Digital camera and recycle method thereof |
US7196810B2 (en) * | 2001-08-28 | 2007-03-27 | Casio Computer Co., Ltd | Printing system |
US20030185302A1 (en) * | 2002-04-02 | 2003-10-02 | Abrams Thomas Algie | Camera and/or camera converter |
US7212574B2 (en) * | 2002-04-02 | 2007-05-01 | Microsoft Corporation | Digital production services architecture |
US20030185301A1 (en) * | 2002-04-02 | 2003-10-02 | Abrams Thomas Algie | Video appliance |
CN100515076C (zh) * | 2002-05-31 | 2009-07-15 | 安桥株式会社 | 网络型内容再现系统 |
US20040183915A1 (en) * | 2002-08-28 | 2004-09-23 | Yukita Gotohda | Method, device, and program for controlling imaging device |
US8189059B2 (en) | 2003-01-29 | 2012-05-29 | Nikon Corporation | Digital camera and digital camera system |
KR101022374B1 (ko) * | 2004-02-05 | 2011-03-22 | 주식회사 케이티 | 홈뷰어 서비스 제공 방법 및 그 프로그램이 기록된 기록매체 |
JP5055686B2 (ja) * | 2004-05-13 | 2012-10-24 | ソニー株式会社 | 撮像システム、撮像装置、撮像方法 |
WO2006028247A1 (ja) * | 2004-09-10 | 2006-03-16 | Pioneer Corporation | 映像撮影システム、映像撮影装置、及び映像撮影方法 |
JP4649980B2 (ja) * | 2004-12-21 | 2011-03-16 | ソニー株式会社 | 画像編集装置、画像編集方法、プログラム |
JP2007243268A (ja) * | 2006-03-06 | 2007-09-20 | Sony Corp | 映像監視システムおよび映像監視プログラム |
EP1876828B1 (en) * | 2006-07-03 | 2016-10-26 | Axis AB | Method and apparatus for configuring parameter values for cameras |
JP4416017B2 (ja) * | 2007-07-18 | 2010-02-17 | ソニー株式会社 | 撮像システム |
US7760238B2 (en) * | 2007-07-25 | 2010-07-20 | National Instruments Corporation | Vision system with deterministic low-latency communication |
JP2009100220A (ja) * | 2007-10-16 | 2009-05-07 | Olympus Imaging Corp | カメラ及びカメラシステム |
JP5451260B2 (ja) * | 2009-08-28 | 2014-03-26 | キヤノン株式会社 | 制御装置、制御システム及びコマンド送信方法ならびにプログラム |
US8090251B2 (en) * | 2009-10-13 | 2012-01-03 | James Cameron | Frame linked 2D/3D camera system |
US7929852B1 (en) * | 2009-10-13 | 2011-04-19 | Vincent Pace | Integrated 2D/3D camera |
US20110149086A1 (en) | 2009-12-23 | 2011-06-23 | Winbush Iii Amos | Camera user content synchronization with central web-based records and information sharing system |
US8503984B2 (en) * | 2009-12-23 | 2013-08-06 | Amos Winbush, III | Mobile communication device user content synchronization with central web-based records and information sharing system |
US9183560B2 (en) | 2010-05-28 | 2015-11-10 | Daniel H. Abelow | Reality alternate |
JP5521836B2 (ja) * | 2010-07-05 | 2014-06-18 | ソニー株式会社 | 撮像装置及び画像処理装置 |
US20120039537A1 (en) * | 2010-08-10 | 2012-02-16 | Keys Gregory C | Method, apparatus, and system for workflow participation of an imaging device |
US9071738B2 (en) | 2010-10-08 | 2015-06-30 | Vincent Pace | Integrated broadcast and auxiliary camera system |
US8879902B2 (en) | 2010-10-08 | 2014-11-04 | Vincent Pace & James Cameron | Integrated 2D/3D camera with fixed imaging parameters |
JP5967473B2 (ja) * | 2011-06-03 | 2016-08-10 | パナソニックIpマネジメント株式会社 | 撮像装置及び撮像システム |
HK1161817A2 (en) | 2011-06-24 | 2012-07-27 | Signal Comm Ltd | Methods of connecting network-based cameras to video stations, and corresponding video surveillance systems, video stations, and network-based cameras |
US8655163B2 (en) | 2012-02-13 | 2014-02-18 | Cameron Pace Group Llc | Consolidated 2D/3D camera |
JP5880210B2 (ja) * | 2012-03-29 | 2016-03-08 | 株式会社Jvcケンウッド | 通信装置、撮像装置、撮像システム及びプログラム |
US8780219B2 (en) * | 2012-07-23 | 2014-07-15 | Wooblue, Inc. | Wireless viewing and control interface for imaging devices |
US10659763B2 (en) | 2012-10-09 | 2020-05-19 | Cameron Pace Group Llc | Stereo camera system with wide and narrow interocular distance cameras |
US9123172B2 (en) | 2013-05-20 | 2015-09-01 | Steven Sebring | Systems and methods for producing visual representations of objects |
JP6332017B2 (ja) * | 2014-12-24 | 2018-05-30 | ソニー株式会社 | 制御方法、制御装置およびプログラム |
USD798936S1 (en) | 2015-12-03 | 2017-10-03 | Durst Sebring Revolution, Llc | Photo booth |
USD782559S1 (en) | 2015-12-03 | 2017-03-28 | Durst Sebring Revolution, Llc | Photo booth |
USD812671S1 (en) | 2015-12-03 | 2018-03-13 | Durst Sebring Revolution, Llc | 3D imaging system |
USD781948S1 (en) | 2015-12-03 | 2017-03-21 | Durst Sebring Revolution, Llc | Photographic imaging system |
JPWO2017119034A1 (ja) * | 2016-01-06 | 2018-11-22 | ソニー株式会社 | 撮影システム、撮影方法およびプログラム |
USD822746S1 (en) | 2016-02-05 | 2018-07-10 | Durst Sebring Revolution, Llc | Photo booth |
WO2017160170A1 (en) | 2016-03-15 | 2017-09-21 | Motorola Solutions, Inc. | Method and apparatus for camera activation |
US10447924B2 (en) * | 2017-06-30 | 2019-10-15 | Microsoft Technology Licensing, Llc | Camera usage notification |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5164827A (en) * | 1991-08-22 | 1992-11-17 | Sensormatic Electronics Corporation | Surveillance system with master camera control of slave cameras |
EP1686802A3 (en) * | 1993-09-20 | 2008-05-21 | Canon Kabushiki Kaisha | Video system |
JP3265893B2 (ja) * | 1995-02-13 | 2002-03-18 | 株式会社日立製作所 | 画像表示装置 |
US6208379B1 (en) * | 1996-02-20 | 2001-03-27 | Canon Kabushiki Kaisha | Camera display control and monitoring system |
JPH09289606A (ja) * | 1996-04-23 | 1997-11-04 | Canon Inc | 画像表示装置およびカメラ制御装置 |
US5959667A (en) * | 1996-05-09 | 1999-09-28 | Vtel Corporation | Voice activated camera preset selection system and method of operation |
-
1998
- 1998-09-30 JP JP27872198A patent/JP4702911B2/ja not_active Expired - Fee Related
-
1999
- 1999-09-23 US US09/401,983 patent/US6909457B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2000113166A (ja) | 2000-04-21 |
US6909457B1 (en) | 2005-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4702911B2 (ja) | カメラ制御方法、カメラ制御サーバ、および記録媒体 | |
JP3817312B2 (ja) | 制御方法及び装置と撮像システム及び表示操作装置とのその方法 | |
CN106878580B (zh) | 信息处理装置及信息处理装置的控制方法 | |
JP4033857B2 (ja) | プリントシステムおよび印刷管理サーバおよび印刷方法および印刷管理方法およびプログラム | |
JP4795133B2 (ja) | 画像形成装置、画像処理方法、該方法を実行する制御プログラム | |
EP0974890A2 (en) | Print system, information processing apparatus, print job registering method, and storage medium | |
JP4623469B2 (ja) | プリントサーバおよびプリントシステムおよびプリント方法およびプログラムおよび記録媒体 | |
JP4317162B2 (ja) | プリントサーバおよび印刷管理サーバおよび印刷装置およびプリントシステムおよび印刷データ蓄積方法および印刷管理方法および印刷方法およびプログラム | |
JP4890931B2 (ja) | コンテンツ管理方法、装置、及びシステム | |
JP7520504B2 (ja) | 画像処理装置、その制御方法及びプログラム | |
JP2011041214A (ja) | 文書管理システム及びその制御方法、情報処理装置 | |
JP7418133B2 (ja) | 情報処理装置、情報処理装置の制御方法、及びプログラム | |
JPH08314954A (ja) | 情報処理方法及び装置 | |
JP3450619B2 (ja) | 通信装置、画像処理装置、通信方法及び画像処理方法 | |
EP2023593A1 (en) | Image forming apparatus, method of controlling the same, program, and storage medium | |
JP4697713B2 (ja) | プリントシステムおよび印刷管理サーバおよび印刷方法および印刷管理方法およびプログラム | |
US20070041381A1 (en) | Information processing apparatus and grouping method | |
JP6686732B2 (ja) | 情報処理装置、情報処理システム、プログラム、及び制御方法 | |
JP4480037B2 (ja) | 印刷管理サーバおよび印刷装置および印刷管理方法および印刷方法およびプログラムおよび記録媒体 | |
EP3767464B1 (en) | Information processing system, information processing apparatus, information processing method, and program | |
JP4191063B2 (ja) | 画像処理装置、画像処理方法、画像処理プログラム | |
JP2018200542A (ja) | 情報処理装置、サーバ装置、情報処理システム、情報処理方法及びプログラム | |
JP6331654B2 (ja) | 画像形成装置、画像形成システム、その制御方法及びプログラム | |
JP6620837B2 (ja) | 情報処理システム、情報処理装置、その制御方法及びプログラム | |
JP6579229B2 (ja) | 情報処理装置、情報処理システム、その制御方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050930 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050930 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7426 Effective date: 20050930 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20050930 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20080718 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20080807 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090508 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090703 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100528 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100722 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20100903 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101202 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20101214 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110304 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110307 |
|
LAPS | Cancellation because of no payment of annual fees |