(57)【要約】【課題】撮像位置を変更する構成の初期化中における撮像位置の通知が、外部装置に悪影響を与えないようにすることを目的とする。【解決手段】外部装置とネットワークを介して通信可能な撮像装置は、被写体を撮像する撮像手段の撮像位置を変更する変更部を有する。撮像装置は、外部装置から受信したリクエストに応じて、変更手段により変更された撮像位置が記述された第１のフィールドを含むレスポンスを生成し、生成したレスポンスを外部装置へ送信する。ここで、生成手段は、変更部が初期化中の場合、撮像位置の変更部による変更範囲内の所定の値を第１のフィールドに記述し、この第1のフィールドを含むレスポンスを生成する。【選択図】  図７
2015220693.tif 000002
【特許請求の範囲】
【請求項１】
外部装置とネットワークを介して通信可能な撮像装置であって、
被写体を撮像する撮像手段の撮像位置を変更する変更手段と、
前記外部装置から受信したリクエストに応じて、前記変更手段により変更された撮像位置が記述された第１のフィールドを含むレスポンスを生成する生成手段と、
前記レスポンスを前記外部装置へ送信する送信手段と、を備え、
前記生成手段は、前記変更手段が初期化中の場合、前記第１のフィールドに前記変更手段による撮像位置の変更範囲内の所定の値を記述して前記レスポンスを生成することを特徴とする撮像装置。
【請求項２】
前記所定の値は、前記撮像手段の撮像位置を表す座標系の原点座標を示すことを特徴とする請求項１に記載の撮像装置。
【請求項３】
前記所定の値は、前記変更範囲内に設定された原点位置を示すことを特徴とする請求項１に記載の撮像装置。
【請求項４】
前記生成手段は、前記変更手段が初期化中であって、
前記撮像手段の原点復帰が完了していない場合は、前記撮像手段の撮像位置を表す座標系の原点座標を示す値を前記第１のフィールドに記述し、
前記撮像手段の原点位置への復帰が完了している場合は、前記撮像位置の原点位置の座標を示す値を前記第１のフィールドへ記述する、ことを特徴とする請求項１に記載の撮像装置。
【請求項５】
前記リクエストは、前記変更手段の駆動状態を示す第２のフィールドを有し、
前記生成手段は、前記変更手段が初期化中の場合に、前記第２のフィールドに駆動中、駆動待機中のいずれにも対応しない特定の値を記述することを特徴とする請求項１乃至４のいずれか１項に記載の撮像装置。
【請求項６】
前記第２のフィールドには、前記変更手段が駆動中であること、駆動待機中であること、他の状態であることのいずれかの値を記述することが可能であり、
前記生成手段は、前記特定の値として、前記他の状態であることを示す値を前記第２のフィールドに記述することを特徴とする請求項５に記載の撮像装置。
【請求項７】
前記生成手段は、前記第２のフィールドに前記他の状態であることを示す値を記述した場合、エラー状態ではないことを示す値を記述した第３のフィールドを前記レスポンスに含めることを特徴とする請求項６に記載の撮像装置。
【請求項８】
前記第３のフィールドは前記第２のフィールドに前記他の状態であることを示す値が記述されている場合に参照されるフィールドであることを特徴とする請求項７に記載の撮像装置。
【請求項９】
前記外部装置との通信はＯＮＶＩＦで規定された通信であり、
前記第１のフィールドはPositionフィールド、前記第２のフィールドはMoveStatusフィールドであり、
前記第２のフィールドに記述される前記特定の値はUNKNOWNであることを特徴とする請求項５または６に記載の撮像装置。
【請求項１０】
前記外部装置との通信はＯＮＶＩＦで規定された通信であり、
前記第１のフィールドはPositionフィールド、前記第２のフィールドはMoveStatusフィールドであり、前記第３のフィールドは、Errorフィールドであり、
前記第２のフィールドに記述される前記特定の値はUNKNOWNであることを特徴とする請求項７または８に記載の撮像装置。
【請求項１１】
前記外部装置から、能力の問い合わせを受信したことに応じて、前記変更手段の動作状態の通知が可能であることを通知する通知手段をさらに備えることを特徴とする請求項１乃至１０のいずれか１項に記載の撮像装置。
【請求項１２】
前記撮像装置との通信はＯＮＶＩＦにより規定された通信であり、
前記能力の問い合わせは、GetServiceCapabilitiesリクエストまたはGetServiceリクエストであり、前記通知は、GetServiceCapabilitiesレスポンス、またはGetServiceレスポンスによりなされることを特徴とする請求項１１に記載の撮像装置。
【請求項１３】
前記通知手段は、さらに、前記外部装置からの問い合わせに応じて前記変更手段による撮像位置の変更範囲を通知することを特徴とする請求項１１に記載の撮像装置。
【請求項１４】
前記撮像装置との通信はＯＮＶＩＦにより規定された通信であり、
前記変更範囲の通知は、GetConfigurationsリクエストの受信に応じて送信されるGetConfigurationsレスポンスによりなされることを特徴とする請求項１３に記載の撮像装置。
【請求項１５】
情報処理装置と撮像装置がネットワークを介して通信可能な撮像システムであって、
前記情報処理装置から  前記撮像装置の状態を問い合わせるリクエストを前記撮像装置に送信する第１の送信手段と、
前記撮像装置から、前記リクエストに応じて、被写体を撮像する撮像手段の撮像位置を変更する変更手段により変更された撮像位置が記述された第１のフィールドを含むレスポンスを前記情報処理装置へ送信する第２の送信手段と、を備え、
前記撮像装置において前記変更手段が初期化中の場合、前記レスポンスに含まれる前記第１のフィールドには、前記変更手段による撮像位置の変更範囲内の所定の値が記述されることを特徴とする撮像システム。
【請求項１６】
被写体を撮像する撮像手段の撮像位置を変更する変更手段を有し、外部装置とネットワークを介して通信可能な撮像装置の制御方法であって、
前記外部装置から受信したリクエストに応じて、前記変更手段により変更された撮像位置が記述された第１のフィールドを含むレスポンスを生成する生成工程と、
前記レスポンスを前記外部装置へ送信する送信工程と、を有し、
前記生成工程では、前記変更手段が初期化中の場合、前記第１のフィールドに前記変更手段による撮像位置の変更範囲内の所定の値を記述して前記レスポンスを生成することを特徴とする制御方法。
【請求項１７】
情報処理装置と撮像装置がネットワークを介して通信可能な撮像システムの制御方法であって、
前記情報処理装置から  前記撮像装置の状態を問い合わせるリクエストを前記撮像装置に送信する第１の送信工程と、
前記撮像装置から、前記リクエストに応じて、被写体を撮像する撮像手段の撮像位置を変更する変更手段により変更された撮像位置が記述された第１のフィールドを含むレスポンスを前記情報処理装置へ送信する第２の送信工程と、を有し、
前記撮像装置において前記変更手段が初期化中の場合、前記レスポンスに含まれる前記第１のフィールドには、前記変更手段による撮像位置の変更範囲内の所定の値が記述されることを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像装置、撮像システム、及びそれらの制御方法、プログラムに関する。
【背景技術】
【０００２】
従来、雲台を動作させることにより撮像方向（パン方向、チルト方向）を変更したり、ズームレンズを動作させることにより画角（ズーム位置）を変更したりする撮像装置が知られている。また、そのような撮像装置において、ネットワークを介して接続されたクライアント装置から送信される指示に従って撮像する方向を変更したり、画角を変更したりする技術が知られている。
【０００３】
特許文献１には、ブラウザ機能を備えた携帯電話のキー操作やパソコンのマウス操作によって雲台を動作させることにより、撮像する方向を変更することができる撮像装置が開示されている。このような撮像装置の用途は、監視やＴＶ会議など多様化しており、市場では、様々な雲台を備えた撮像装置が利用されている。例えば、被写体を撮像する撮像部をパン方向、チルト方向に回転させることができ且つこの撮像部のズーム位置を変更することができるＰＴＺカメラ等が利用されている。以下、このような撮像方向やズーム位置の変更を撮像位置の変更と称する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−８９７３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
撮像位置の変更をクライアント装置で行う場合、クライアント装置は撮像装置の撮像位置（撮像方向やズーム位置）がどのような状態にあるのかをクライアント装置が任意のタイミング把握できることが望ましい。たとえば、Open Network Video Interface Forum（以下、ＯＮＶＩＦ）のインターフェース規格では、撮像装置がＰＴＺ駆動機構の動作状態を通知するためにGetStatusレスポンスにおいてPositionというフィールドが用意されている。
【０００６】
しかしながら、ＰＴＺ駆動機構の初期化中においては撮像位置が不明となるため、撮像装置は、ＰＴＺ駆動機構の初期化中に撮像位置の通知が要求されても正しい撮像位置をクライアントに通知することはできない。したがって、ＰＴＺ駆動機構が初期化中の場合には、撮像位置を通知しないようにすることも考えられる。しかしながら、撮像位置の通知を行う能力があることを撮像装置がクライアントに通知した場合に、クライアントからの問い合わせに対しては撮像位置の通知が必須となるような規則も考えられる。このような規則のもとでは、ＰＴＺ駆動機構の初期化中においては意味の無い撮像位置の通知が発生することになる。このような初期化中の撮像位置としてＰＴＺ駆動機構の駆動範囲を超えるような極端な値が通知されると、クライアント装置のソフトウェアによっては、悪影響を受ける可能性がある。
【０００７】
本発明は上記のような点に鑑みてなされたもので、撮像位置を変更する構成の初期化中における撮像位置の通知が、外部装置に悪影響を与えないようにすることを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明の一態様による撮像装置は以下の構成を備える。すなわち、
外部装置とネットワークを介して通信可能な撮像装置であって、
被写体を撮像する撮像手段の撮像位置を変更する変更手段と、
前記外部装置から受信したリクエストに応じて、前記変更手段により変更された撮像位置が記述された第１のフィールドを含むレスポンスを生成する生成手段と、
前記レスポンスを前記外部装置へ送信する送信手段と、を備え、
前記生成手段は、前記変更手段が初期化中の場合、前記第１のフィールドに前記変更手段による撮像位置の変更範囲内の所定の値を記述して前記レスポンスを生成する。
【発明の効果】
【０００９】
本発明によれば、撮像位置を変更する構成の初期化中における撮像位置の通知が、外部装置に悪影響を与えないようにすることができる。
【図面の簡単な説明】
【００１０】
【図１】（Ａ）は撮像システムのシステム構成の一例を示す図、（Ｂ）は撮像装置が撮像方向又は画角を変更するための駆動機構の一例を示す図。
【図２】（Ａ）は撮像装置のハードウェア構成の一例を示す図、（Ｂ）はクライアントのハードウェア構成の一例を示す図。
【図３】第１実施形態の、クライアントと撮像装置のコマンドシーケンス例を示す図。
【図４】第１実施形態の、クライアントと撮像装置の動作を説明するフローチャート。
【図５】第１実施形態の、撮像装置の動作を説明するフローチャート。
【図６】第２実施形態の、クライアントと撮像装置のコマンドシーケンス例示す図。
【図７】第２実施形態の、撮像装置の動作を説明するフローチャート。
【図８】（Ａ）（Ｂ）は、撮像装置が提供可能なサービスを通知するためのコマンド／レスポンスのデータ構成例を示す図。
【図９】（Ａ）は撮像装置が動作状態を通知するためのコマンド／レスポンスのデータ構成例を示す図、（Ｂ）は撮像装置のＰＴＺ駆動機構の可動範囲を通知するためのコマンド／レスポンスのデータ構成例を示す図。
【図１０】ＯＮＶＩＦによるGetServiceCapabilitiesリクエスト／レスポンスの一例を示す図。
【図１１】ＯＮＶＩＦによるGetServiceリクエスト／レスポンスの一例を示す図。
【図１２】ＯＮＶＩＦによるGetStatusリクエスト／レスポンスの一例を示す図。
【図１３】ＯＮＶＩＦによるGetConfigurationsリクエスト／レスポンスの一例を示す図。
【発明を実施するための形態】
【００１１】
以下、添付の図面を参照して本発明の好適な実施形態のいくつかについて説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は、図示された構成に限定されるものではない。また、以下では、ＯＮＶＩＦにより規定される通信インターフェースを用いた場合を説明するが、本発明の適用は特定の通信インターフェース規格に限定されるものではない。
【００１２】
（第１実施形態）
図１（Ａ）は、第１実施形態に係る撮像システムのシステム構成の一例を示す図である。本実施形態に係る撮像システムでは、撮像装置１００がネットワーク３００を介して外部装置であるクライアント２００に接続される。これにより、撮像装置１００は、ネットワーク３００を介してクライアント２００と通信可能となる。撮像装置１００は、撮像した撮像画像をネットワーク３００を介してクライアント２００に配信する。ここで、クライアント２００は、外部装置の一例であり、たとえば情報処理装置により構成される。また、表示部２１０は、図２（Ｂ）を用いて後述する。なお、本実施形態における撮像装置１００は、動画像を撮影する監視カメラであり、より詳細には、監視に用いられるネットワークカメラであるものとし、撮像装置１００とクライアント２００の間の通信は、たとえば、ＯＮＶＩＦで規定される通信を実行する。また、本実施形態における撮像装置１００は、壁面や天井に設置されるものとする。
【００１３】
ネットワーク３００は、例えばＥｔｈｅｒｎｅｔ（登録商標）等の通信規格を満足する複数のルータ、スイッチ、ケーブル等から構成される。本実施形態においては、撮像装置１００とクライアント２００との間の通信を行うことができるものであればその通信規格、規模、構成を問わない。例えば、ネットワーク３００は、インターネットや有線ＬＡＮ（Local Area Network）、無線ＬＡＮ（Wireless LAN）、ＷＡＮ（Wide Area Network）等のいずれにより構成されてもよい。なお、本実施形態における撮像装置１００は、例えば、ＰｏＥ（Power Over Ethernet（登録商標））に対応していても良く、ＬＡＮケーブルを介して電力を供給されても良い。
【００１４】
クライアント２００は、撮像装置１００に対してコマンドを送信する。たとえば、クライアント２００は、ＯＮＶＩＦに規定されたフォーマットで撮像装置１００の撮像方向又は画角を変更するためのコマンド（リクエスト）を送信する。又、撮像装置１００は、クライアント２００から受信した撮像方向（パン、チルト）を変更するためのコマンドに応じて撮像方向を変更する。また、撮像装置１００は、クライアント２００から受信した画角（ズーム）を変更するための命令に応じて画角を変更する。
【００１５】
図１（Ｂ）は、本実施形態に係る撮像装置１００が撮像方向又は画角を変更するための駆動機構の一例を示す図である。パン駆動機構１１１は、撮像装置１００の撮像方向をパン方向に変更させる。また、チルト駆動機構１１２は、撮像装置１００の撮像方向をチルト方向に変更する。さらに、ズーム機構１１３は、撮像装置１００の画角を変更させる。すなわち、これら、パン駆動機構１１１、チルト駆動機構１１２、ズーム機構１１３は、それぞれ撮像装置１００のパン、チルト、ズームを変更することにより、撮像部１０３（図２（Ａ））の撮像位置を変更するＰＴＺ駆動機構を構成する。なお、本実施形態において、パン駆動機構１１１、チルト駆動機構１１２及びズーム機構１１３のそれぞれは、ステッピングモータ及びギヤ等から構成されているものとする。
【００１６】
図２（Ａ）は、本実施形態に係る撮像装置１００のハードウェア構成の一例を示す図である。図２（Ａ）において、制御部１０１は、撮像装置１００の全体の制御を行う。制御部１０１は、例えばＣＰＵ（Central Processing Unit）により構成され、後述のメモリ１０２に記憶されたプログラムを実行する。又は、制御部１０１は、ハードウェアを用いて制御を行うこととしてもよい。
【００１７】
メモリ１０２は、制御部１０１が実行するプログラム格納領域、プログラム実行中のワーク領域、後述する撮像部１０３が生成する撮像画像の格納領域等、データの格納領域として使用される。またメモリ１０２は、撮像装置１００の撮像方向を表すために用いる座標系、及び撮像装置１００の画角を表すために用いる座標系を保持する。またメモリ１０２は、後述の通信部１０４が受信した命令の実行を保留するための命令保留キューを保持する。
【００１８】
撮像部１０３は、被写体の像を撮像して生成したアナログ信号をデジタルデータに変換する。また、撮像部１０３は、ＡＤＣＴ（Adaptive Discrete Cosine Transform、適応離散コサイン変換）等によりデータの圧縮処理を行って撮像画像を生成し、メモリ１０２に出力する。撮像部１０３は、撮像画像をメモリ１０２に出力した後、制御部１０１に画像取得イベントを送信する。駆動部１０７は、パン駆動機構１１１、チルト駆動機構１１２及びズーム機構１１３を有し、撮像制御部１０６の指示にしたがってこれらを駆動し、撮像装置１００の撮像位置を変更する。なお、本実施形態において、パン駆動機構１１１とチルト駆動機構により決定される撮像装置１００の撮像方向と、ズーム機構１１３により決定される撮像装置１００の画角とにより、撮像装置１００の撮像位置が決定される。但し、撮像位置の変更は、パン、チルト、ズームに限られるものではなく、撮像装置１００自体の空間における位置を変更するもの（たとえば、撮像装置１００をレールに乗せて移動するような構成）であってもよい。
【００１９】
通信部１０４は、撮像装置１００をネットワーク３００に接続し、クライアント２００との通信を行う。たとえば、通信部１０４は、各制御コマンド（本実施形態では、たとえば、ＯＮＶＩＦに準拠したリクエスト）をクライアント２００から受信したり、各制御コマンド（たとえば、ＯＮＶＩＦに準拠したレスポンス）をクライアント２００に送信したりする。位置検出部１０５は、パン駆動機構１１１、チルト駆動機構１１２、及びズーム機構１１３の座標を検出する。撮像方向や画角の情報の要求がクライアント２００から撮像装置１００に送信された場合は、撮像装置１００は、それぞれの機構の座標を位置検出部１０５で検出し、検出した座標を位置情報としてクライアント２００に送信する。
【００２０】
撮像制御部１０６は、制御部１０１の指示に従って駆動部１０７（パン駆動機構１１１、チルト駆動機構１１２、及びズーム機構１１３）を制御する。すなわち、通信部１０４がクライアント２００から撮像位置を変更するコマンドを受信すると、当該コマンドに応じた受信イベントが制御部１０１に送信される。制御部１０１は受信イベントを受信すると、当該受信イベントの内容に応じて撮像制御部１０６に制御指示を行う。制御指示を受けた撮像制御部１０６は、制御指示に応じてパン駆動機構１１１、チルト駆動機構１１２、又はズーム機構１１３を駆動させる。
【００２１】
以上、撮像装置１００の内部構成について説明したが、図２（Ａ）に示す処理ブロックは、本発明における撮像装置の好適な実施形態を説明したものでありこの限りではない。音声入力部を備えるなど、本発明の要旨の範囲内で、種々の変形及び変更が可能である。
【００２２】
次に、クライアント２００について説明する。図２（Ｂ）は、本実施形態に係るクライアント２００のハードウェア構成の一例を示す図である。本実施形態におけるクライアント２００は、ネットワーク３００に接続されるコンピュータ装置として構成される。制御部２０１は、例えばＣＰＵにより構成され、後述のメモリ２０２に記憶されたプログラムを実行することによりクライアント２００の全体の制御を行う。なお、制御部２０１は、ハードウェアを用いて制御を行うこととしてもよい。
【００２３】
メモリ２０２は、制御部２０１が実行するプログラム格納領域、プログラム実行中のワーク領域、データの格納領域として使用される。通信部２０４は、ネットワーク３００に接続し、撮像装置１００との通信を行う。通信部２０４は、たとえば、撮像装置１００から送信された撮像画像を受信する。また、通信部２０４は、たとえば撮像装置１００を制御するための命令や、撮像装置１００の情報を要求するための命令を、ネットワーク３００を介して撮像装置１００に送信する。
【００２４】
入力部２０５は、ユーザからの指示の入力を受け付ける。例えば入力部２０５は、ユーザからの指示として、撮像装置１００に対する各種の命令の送信指示の入力を受け付けることができる。撮像装置１００に対する命令の詳細については後述する。入力部２０５は、ユーザから撮像装置１００に対する命令送信指示が入力されると、制御部２０１に命令の入力があった旨を通知する。制御部２０１は、入力部２０５に入力された指示に応じて、撮像装置１００に対する命令を生成し、通信部２０４を介して撮像装置１００に生成した命令を送信する送信制御を行う。また、入力部２０５は、制御部２０１がメモリ２０２に記憶されたプログラムを実行することにより生成されるユーザへの問い合わせメッセージ等に対するユーザの応答の入力を受け付けることができる。
【００２５】
表示部２１０は、通信部２０４が受信した撮像画像を表示する。また、表示部２１０は、制御部２０１がメモリ２０２に記憶されたプログラムを実行することにより生成されるユーザへの問い合わせメッセージ等を表示させることができる。
【００２６】
次に、以上のような構成を備えた本実施形態の撮像装置１００とクライアント２００の間の通信について説明する。図３は、第１実施形態によるクライアント２００と撮像装置１００との間のコマンドシーケンスを説明するための図である。具体的には、図３は、クライアント２００が撮像装置１００に対して送信するコマンドリクエストと、それに対応して撮像装置１００がクライアント２００に送信するコマンドレスポンスについて説明するための図である。図３において、Ｓ３０１、Ｓ３０２では、クライアント２００による撮像装置１００の機能（能力）の確認が行われ、Ｓ３０３、Ｓ３０４では、クライアント２００による撮像装置１００の動作状態の取得が行われる。
【００２７】
また、図８（Ａ）、図９（Ａ）は、図３において用いられているコマンドリクエスト（GetServiceCapabilitiesリクエスト８００、GetStatusリクエスト９００）およびコマンドレスポンス（GetServiceCapabilitiesレスポンス８２０、GetStatusレスポンス９２０）のデータ構成例を説明する図である。コマンドリクエストのそれぞれは、命令を実行させる対象である撮像装置１００のアドレスを示す宛先アドレス８０１，９０１と、命令の送信元であるクライアント２００のアドレスを示す送信元アドレス８０２、９０２とを有する。また、コマンドレスポンスのそれぞれは、レスポンスの送信先（リクエストの送信元）であるクライアント２００のアドレスを示す宛先アドレス８２１、９２１と、レスポンスの送信元である撮像装置１００のアドレスを示す送信元アドレス８２２、９２２とを有する。なお、フィールド８０３，８２３，９０３，９２３は、それぞれのリクエストおよびレスポンスのコマンド種別（GetServiceCapabilities、GetStatus）を特定している。
【００２８】
ステップＳ３０１では、クライアント２００の制御部２０１は、通信部２０４に指示し、GetServiceCapabilitiesリクエスト８００を撮像装置１００へ送信する。このGetServiceCapabilitiesリクエスト８００は、撮像装置１００が提供する機能を問い合わせるためのコマンドである。ステップＳ３０２において、GetServiceCapabilitiesリクエスト８００を受信した撮像装置１００の制御部１０１は、通信部１０４に指示し、GetServiceCapabilitiesレスポンス８２０をクライアント２００に返信させる。このGetServiceCapabilitiesレスポンス８２０は、本実施形態の機能やコマンドに撮像装置１００が対応しているか否かを示すためのレスポンスである。本実施形態では、撮像装置１００が提供可能な能力がCapabilitiesフィールド８２４に記述される。図８では、StatusPosition８２５とMoveStatusフィールド８２６の値がtrueとなっている。これは、撮像装置１００がクライアントからの状態の問い合わせ（GetStatusリクエスト）に応じてＰＴＺ駆動機構の位置や動作状態を通知する能力を有することを示している。
【００２９】
ステップＳ３０３では、制御部２０１は、通信部２０４に指示し、GetStatusリクエスト９００を撮像装置１００へ送信する。このGetStatusリクエスト９００は、撮像装置１００の撮像位置を問い合わせるためのコマンドである。GetStatusリクエスト９００を受信した撮像装置１００の制御部１０１は、パン駆動機構１１１、チルト駆動機構１１２、及びズーム機構１１３のそれぞれの座標を位置検出部１０５で検出するとともに、それらの動作状態を撮像制御部１０６で検出する。そして、ステップＳ３０４において、制御部１０１は、検出された撮像位置の座標を示す情報と撮像装置１００の動作状態を示す情報を含むGetStatusレスポンス９２０を生成し、通信部１０４を介してクライアント２００に返信する。このように、撮像装置１００は、クライアント２００からの能力の問い合わせを受信したことに応じて、ＰＴＺ駆動機構により変更された撮像位置や、ＰＴＺ駆動機構の動作状態の通知が可能であることをクライアント２００に通知する。
【００３０】
GetStatusレスポンス９２０は、撮像装置１００のＰＴＺ駆動機構による現在の撮像方向及び画角（撮像位置）と、ＰＴＺ駆動機構の動作状態を示すレスポンスである。Positionフィールド９２４には、ＰＴＺ駆動機構による現在のパン位置、チルト位置、ズーム位置を示すパン座標９２５、チルト座標９２６、ズーム座標９２７が記述される。また、MoveStatusフィールド９２８には、ＰＴＺ駆動機構の状態として、駆動中であれば「MOVE」が、駆動待機中であれば「IDLE」が、それら以外の状態（たとえばエラー状態あるいは初期化中）であれば「UNKNOWN」が記述される。なお、ＯＮＶＩＦにおいては、MoveStatusフィールド９２８のパン／チルトのフィールド９２９、ズームのフィールド９３０にはこれら３つの値のいずれかが記述可能であり、他の値を記述（格納）することはできない。
【００３１】
次に、図４、図５のフローチャートを参照して、第１実施形態による撮像装置１００とクライアント２００の動作についてさらに詳細に説明する。まず、クライアント２００は、撮像装置１００に対してGetServiceCapabilitiesリクエスト８００を送信する（Ｓ４０１）。撮像装置１００は、クライアント２００からGetServiceCapabilitiesリクエスト８００を受信すると（Ｓ４５１）、GetServiceCapabilitiesレスポンス８２０を生成し、クライアント２００へ送信する（Ｓ４５２）。クライアント２００は、撮像装置１００からGetServiceCapabilitiesレスポンス８２０を受信する（Ｓ４０２）。以上のやり取りが、図３のステップＳ３０１、Ｓ３０２に相当する。続くGetConfigurationsリクエスト／レスポンスのやり取り（Ｓ４０３、Ｓ４０４、Ｓ４５３、Ｓ４５４）は、第１実施形態では省略可能である。これらについては第２実施形態で説明する。
【００３２】
その後、クライアント２００は、GetStatusリクエスト９００を用いて、必要に応じて撮像装置１００にＰＴＺ駆動機構により決定される撮像位置やＰＴＺ駆動機構の動作状態を問い合わせることができる。すなわち、クライアント２００は、GetStatusリクエスト９００を生成し、撮像装置１００へ送信する（Ｓ４０５）。撮像装置１００は、GetStatusリクエスト９００を受信すると（Ｓ４５５）、GetStatusレスポンス９２０を生成し、GetStatusリクエスト９００の送信元であるクライアント２００へ送信する（Ｓ４５６）。クライアント２００は、撮像装置から送信されたGetStatusレスポンス９２０を受信する（Ｓ４０６）。ここで、ステップＳ４５６において、撮像装置１００は、クライアント２００から受信したGetStatusリクエストに応じて、ＰＴＺ駆動機構の動作状態や座標を示す値が記述されたフィールドを含むGetStatusレスポンスを生成する。そして、撮像装置１００は、生成したGetStatusレスポンスをクライアント２００へ送信する。以下、撮像装置１００における、GetStatusレスポンスを生成する処理例についてさらに詳細に説明する。
【００３３】
図５は、撮像装置１００におけるGetStatusレスポンス９２０の生成を説明するフローチャートである。撮像装置１００の制御部１０１は、ＰＴＺ駆動機構が初期化中であるかどうかを判定する（Ｓ５０１）。ＰＴＺ駆動機構の初期化とは、たとえば、撮像装置１００の電源投入時や、ファームウエアのアップデート時において装置のリセットに伴って実行されるＰＴＺ駆動機構の原点復帰動作等をいう。
【００３４】
制御部１０１は、ＰＴＺ駆動機構が初期化中であると判定した場合（Ｓ５０１でＹＥＳ）、MoveStatusフィールド９２８に「UNKNOWN」を記述する（Ｓ５０２）。本実施形態では、パン／チルトのフィールド９２９とズームのフィールド９３０に個別に動作状態を記述できるようになっており、Ｓ５０２ではそれら両方に「UNKNOWN」が記述される。そして、制御部１０１は、Errorフィールド９３１に、非エラー状態であることを示す特定の文字列９３２を記述する（Ｓ５０３）。本実施形態では、文字列９３２として、「Initializing」を用いるものとするが、もちろんこれに限られるものではなく、非エラーとして定義された文字列であればよい。また、文字列９３２として空文字列を用いてもよい。
【００３５】
更に、制御部１０１は、パン／チルトの位置、ズームの位置として、所定値をPositionフィールド９２４の各フィールド（９２５〜９２７）に記述する（Ｓ５０４）。制御部１０１は、こうして生成されたPositionフィールド９２４、MoveStatusフィールド９２８、Errorフィールド９３１を含むGetStatusレスポンス９２０を生成し（Ｓ５１３）、クライアント２００へ送信する（Ｓ５１４）。なお、Positionフィールド９２４に記述される所定値は、パン、チルト、ズームのそれぞれが取り得る変更範囲内の値とすることが好ましい。この点については第２実施形態で詳述する。また、UtcTimeフィールド９３３には撮影日時９３４が記述される。
【００３６】
以上のように、ＰＴＺ駆動機構が初期化中の場合、制御部１０１は、MoveStatusフィールドを含む複数のフィールドの記述の組み合わせにより、初期化中であることをクライアント２００が特定できる記述を含むレスポンスを生成し、送信する。たとえば、MoveStatusフィールドには、ＰＴＺ駆動機構の動作状態について「駆動状態（MOVE）」、「駆動待機状態（IDLE）」、「その他（UNKNOWN）」のいずれかの値が記述され、初期化中であることを明示できない。そこで、制御部１０１は、ＰＴＺ駆動機構が初期化中の場合には、MoveStatusに「その他（UNKNOWN）」を記述し、Errorフィールドの記述との組み合わせにより、初期化中であることを特定することが可能なレスポンスを生成する。なお、ＯＮＶＩＦでは、MoveStatusが「UNKNOWN」の場合、Errorフィールドの参照は必須である。このように、動作状態を記述するフィールドと参照が必須となっているフィールドとの組み合わせを用いることで、より確実に初期化中であることをクライアント２００に通知することが可能である。
【００３７】
ＰＴＺ駆動機構が初期化中でないと判定されると（Ｓ５０１でＮＯ）、制御部１０１は、ＰＴＺ駆動機構がエラー状態であるかどうかを判定する（Ｓ５０５）。エラー状態の具体例としては、センサー（位置検出等）の故障、駆動機構の耐久時間や耐久回数の超過、駆動機構の故障等が挙げられる。ＰＴＺ駆動機構がエラー状態である場合（Ｓ５０５でＹＥＳ）、制御部１０１は、Ｓ５０２と同様に、MoveStatusフィールド９２８に「UNKNOWN」を記述する（Ｓ５０６）。そして、制御部１０１は、Errorフィールド９３１にエラー状態を特定するための文字列９３２を記述する（Ｓ５０７）。更に、制御部１０１は、パン／チルトの位置、ズームの位置として、所定値をPositionフィールド９２４の各フィールド（９２５〜９２７）に記述する（Ｓ５０８）。制御部１０１は、こうして生成されたエラー時のPositionフィールド９２４、MoveStatusフィールド９２８とErrorフィールド９３１を用いてGetStatusレスポンス９２０を生成し（Ｓ５１３）、クライアント２００へ送信する（Ｓ５１４）。
【００３８】
ＰＴＺ駆動機構が初期化中でもエラー状態でもなければ、制御部１０１は、位置検出部１０５を用いてＰＴＺ機構のパン、チルト、ズームの各位置を検出する（Ｓ５０９）。そして、Positionフィールド９２４にパン座標９２５，チルト座標９２６，ズーム座標９２７として記述する（Ｓ５１０）。また、制御部１０１は、駆動部１０７がＰＴＺ機構を駆動中か否かを撮像制御部１０６を介して検出する（Ｓ５１１）。そして、制御部１０１は、ＰＴＺ機構が駆動中であれば「MOVE」の値を、駆動待機中であれば「IDLE」の値をMoveStatusフィールド９２８に記述する（Ｓ５１２）。制御部１０１は、こうして生成されたPositionフィールド９２４とMoveStatusフィールド９２８を用いてGetStatusレスポンス９２０を生成し（Ｓ５１３）、クライアント２００へ送信する（Ｓ５１４）。なお、MoveStatusフィールド９２８にUNKNOWが記述されていない場合、Errorフィールド９３１は不要である。
【００３９】
図４に戻り、以上のようなGetStatusレスポンスを受信したクライアント２００の動作の一例について説明する。クライアント２００の制御部２０１は、撮像装置１００からGetStatusレスポンスを受信すると（Ｓ４０６）、撮像装置１００が動作状態（MoveStatus）を通知する能力があるかどうかを判断する。すなわち、制御部２０１は、Ｓ４０２で受信したGetServiceCapabilitiesレスポンス８２０のCapabilitiesフィールド８２４を解析し（Ｓ４０７）、MoveStatusフィールド８２６がtrueか否かを判定する（Ｓ４０８）。撮像装置１００に動作状態を通知する能力が無い場合（MoveStatusフィールド８２６がfalseの場合）、処理はＳ４１４へ進み、MoveStatusに関わる表示は行われない。
【００４０】
一方、撮像装置１００に動作状態を通知する能力がある場合（MoveStatusフィールド８２６がtrueの場合）、処理はＳ４０９へ進む。制御部２０１は、Ｓ４０６で受信したGetStatusレスポンス９２０のMoveStatusフィールド９２８を解析する（Ｓ４０９）。ＯＮＶＩＦでは、MoveStatusフィールドは、PTZStatusフィールドに含まれているので、この、PTZStatusフィールドが解析されることになる。解析の結果、MoveStatusフィールド９２８に「MOVE」か「IDLE」が記述されていれば、ＰＴＺ駆動機構は正常に稼働中であると判定され、処理はＳ４１０からＳ４１４へ進み、通常表示が継続される。
【００４１】
MoveStatusフィールド９２８に「UNKNOWN」が記述されている場合、処理はＳ４１０からＳ４１１へ進む。制御部２０１は、受信したGetStatusレスポンス９２０のErrorフィールド９３１に記述されている文字列９３２を取得し、それがエラー状態以外を示す特定の文字列（本例では「Initializing」）か否かを判定する（Ｓ４１１）。Errorフィールド９３１の文字列９３２が特定の文字列、すなわち「Initializing」であった場合は、制御部２０１はＰＴＺ駆動機構が初期化中でると判定し、たとえば、撮像装置１００が初期化中であることを表示部２１０に警告表示する（Ｓ４１２）。他方、Errorフィールド９３１の文字列９３２がエラーに関連するものであれば、制御部２０１は、表示部２１０にエラーの発生と文字列９３２から把握されるエラー内容を表示する（Ｓ４１３）。
【００４２】
以上のように、第１実施形態では、クライアント２００は、撮像装置１００から受信したレスポンスのＰＴＺ駆動機構の動作状態を示すフィールドを含む複数のフィールドの記述から撮像装置１００のＰＴＺ機構が初期化中か否かを直ちに判定することができる。たとえば、撮像装置１００とクライアント２００とがＯＮＶＩＦに準拠した通信を行う場合、クライアント２００は、MoveStatusフィールドとErrorフィールドの記述により、ＰＴＺ駆動機構が初期化中か否かが直ちに判定することができる。
【００４３】
ＯＮＶＩＦに準拠した各コマンド（リクエスト、レスポンス）の記述例を、図１０、図１２に示す。図１０は、GetServiceCapabilitiesリクエスト１０Ａの記述例、GetServiceCapabilitiesレスポンス１０Ｂの記述例を示す。GetServiceCapabilitiesリクエスト１０Ａの記述１００１は、当該リクエストがGetServiceCapabilitiesであることを示しており、フィールド８０３に対応している。また、GetServiceCapabilitiesレスポンス１０Ｂの記述１０２１には、撮像装置１００が提供可能な能力の通知が記述されている。記述１０２２，１０２３はそれぞれStatusPosition８２５とMoveStatusフィールド８２６に対応している。
【００４４】
図１２は、GetStatusリクエスト１２Ａの記述例、GetStatusレスポンス１２Ｂの記述例を示す。GetStatusリクエスト１２Ａの記述１２０１は、当該リクエストがGetStatusリクエストであることを示し、フィールド９０３に対応する。記述１２１１は、GetStatusレスポンスの本体部分の記述である。記述１２１２はＰＴＺ駆動機構による撮像位置を示す値を記述するフィールドであり、Positionフィールド９２４に対応する。記述１２１３はパン／チルトの座標を、記述１２１４はズームの座標を記述しており、パン座標９２５、チルト座標９２６、ズーム座標９２７に対応する。記述１２１５はＰＴＺ駆動機構の動作状態を示すMoveStatusフィールド９２８に対応する記述であり、記述１２１６，１２１７はそれぞれフィールド９２９，９３０に対応する。記述１２１８はErrorフィールド９３１に対応する記述であり、図示の例では「Initializing」が記述されている。記述１２１９はUtcTimeフィールド９３３（GetStatusResponseを送信した時刻）に対応する記述例である。
【００４５】
なお、上記第１実施形態では、GetServiceCapabilitiesにおいてMoveStatusとStatusPositionがともにtrueであり、ＰＴＺの動作状態と撮像位置の通知が可能な場合を説明したがこれに限られるものではない。MoveStatusがtrueであり、StatusPositionがfalseであってもよい。その場合、GetStatusレスポンスにおいて、Positionフィールドは不要となる。
【００４６】
また、ＯＮＶＩＦでは、GetServiceCapabilitiesにより撮像装置が、ＰＴＺ駆動機構の動作状態や撮像位置の通知を行う能力がある旨のレスポンスを行うと、GetStatusリクエストに対し、MoveStatusとPositionが必須となる。すなわち、撮像装置１００は初期化中であってもMoveStatusを通知する必要があるが、MoveStatusには初期化中を表す値が規定されていない。第１実施形態によれば、そのようにＰＴＺ駆動機構の初期化中を示す値が用意されていなくても、クライアント２００にＰＴＺ駆動機構の初期化中を明確に伝えることが可能となる。
【００４７】
（第２実施形態）
第１実施形態では、初期化中の場合に、GetStatusレスポンスにおけるPositionフィールドの各座標値について特に規定していない。上述したように、ＯＮＶＩＦに準拠した通信では、撮像装置１００が撮像位置を通知する能力があることをクライアント２００へ通知すると、以降のGetStatusリクエストに対して撮像位置の通知は必須となる。しかしながら、初期化中であるからといって、Positionフィールド９２４に極端な値（通常取りえないような値）を記述してしまうと、この情報を解析したクライアント２００に悪影響が生じかねない。第２実施形態では、ＰＴＺ駆動機構が初期化中の場合に、Positionフィールド９２４に記述する数値を規定する。すなわち、第２実施形態では、ＰＴＺ駆動機構が初期化中であった場合に、パン、チルト、ズームのそれぞれのＰＴＺ駆動機構による変更範囲内の所定の値をPositionフィールド９２４に記述する。これにより、想定外の値がクライアント２００に通知されることを防止する。
【００４８】
図６は、第２実施形態によるクライアント２００と撮像装置１００との間のコマンドシーケンスを説明するための図である。すなわち、図６は、クライアント２００が撮像装置１００に対して送信するコマンドリクエストと、それに対応して撮像装置１００がクライアント２００に送信するコマンドレスポンスについて説明するための図である。図６において、Ｓ６０１、Ｓ６０２では、クライアント２００による撮像装置１００の機能（能力）の確認が行われる。Ｓ６０３、Ｓ６０４については後述する。Ｓ６０５、Ｓ６０６では、クライアント２００による撮像装置１００のＰＴＺ駆動機構のＰＴＺ位置や動作状態の取得が行われる。Ｓ６０１、Ｓ６０２、Ｓ６０４、Ｓ６０５においてやり取りされるコマンド／レスポンスの内容は、Ｓ３０１、Ｓ３０２、Ｓ３０３、Ｓ３０４と同様である。
【００４９】
ステップＳ６０３、Ｓ６０４では、クライアント２００が、撮像装置１００のＰＴＺ駆動機構に関して可動範囲、すなわち、撮像位置を決定するパン、チルト、ズームのそれぞれの変更範囲の確認を行う。この確認は、たとえば、図９に示されるようなGetConfigurationsリクエスト９４０とGetConfigurationsレスポンス９６０を用いて行われる。ステップＳ６０３において、クライアント２００の制御部２０１は、通信部２０４に指示し、GetConfigurationsリクエスト９４０を撮像装置１００に送信させる。GetConfigurationsリクエスト９４０は、命令を実行させる対象である撮像装置１００のアドレスを示す宛先アドレス９４１と、命令の送信元であるクライアント２００のアドレスを示す送信元アドレス９４２とを有する。フィールド９４３には、リクエストの種別を示す「GetConfigurations」が記述されている。
【００５０】
ステップＳ６０４において、GetConfigurationsリクエスト９４０を受信した撮像装置１００の制御部１０１は、通信部１０４に指示し、GetConfigurationsレスポンス９６０をクライアント２００へ送信する。GetConfigurationsレスポンス９６０は、このレスポンスの送信先であるクライアント２００のアドレスを示す宛先アドレス９６１と、このレスポンスの送信元である撮像装置１００のアドレスを示す送信元アドレス９６２とを有する。フィールド９６３にはレスポンスの種別を示す情報が記述されている。また、GetConfigurationsレスポンス９６０において、PanTiltLimitsフィールド９６４には、パンとチルトの可動範囲に対応するパン座標範囲９６５とチルト座標範囲９６６が記述されている。さらに、ZoomLimitsフィールド９６７には、ズームの可動範囲に対応するズーム座標範囲９６８が記述されている。本実施形態では、それぞれの可動範囲として、可動範囲を−１から＋１で正規化した値を用いている。
【００５１】
次に、図４、図７のフローチャートを参照して、第２実施形態による撮像装置１００とクライアント２００の動作についてさらに詳細に説明する。まず、第１実施形態と同様に、クライアント２００は撮像装置１００に提供可能な能力を取得する。すなわち、クライアント２００は、GetServiceCapabilitiesリクエスト８００を送信することにより、撮像装置１００からGetServiceCapabilitiesレスポンス８２０を受信する（Ｓ４０１、Ｓ４０２、Ｓ４５１、Ｓ４５２）。続いて、クライアント２００の制御部２０１は撮像装置１００が有するＰＴＺ駆動機構の可動範囲（パン、チルト、ズームが取り得る座標範囲）を確認する。すなわち、制御部２０１は、通信部２０４を介して、GetConfigurationsリクエスト９４０を撮像装置１００へ送信する（Ｓ４０３）。撮像装置１００の制御部１０１は、GetConfigurationsリクエスト９４０を受信すると（Ｓ４５３）、撮像制御部１０６よりＰＴＺ駆動機構（パン、チルト、ズーム）の可動範囲を示す座標範囲を取得する。そして、制御部１０１は、取得したＰＴＺ駆動機構の座標範囲を用いて、GetConfigurationsレスポンス９６０を生成し、通信部１０４を介してクライアント２００へ送信する（Ｓ４５４）。クライアント２００は、GetConfigurationsレスポンスを受信する（Ｓ４０４）。
【００５２】
その後、クライアント２００は、GetStatusリクエスト９００を用いて、必要に応じて撮像装置１００にＰＴＺ駆動機構により決定される撮像位置や動作状態を問い合わせることができる。第１実施形態と同様に、クライアント２００は、GetStatusリクエスト９００を生成し、撮像装置１００へ送信する（Ｓ４０５）。撮像装置１００は、GetStatusリクエスト９００を受信すると（Ｓ４５５）、GetStatusレスポンス９２０を生成し、GetStatusリクエスト９００の送信元であるクライアント２００へ送信する（Ｓ４５６）。クライアント２００は、GetStatusレスポンス９２０を受信する（Ｓ４０６）。
【００５３】
図７は、第２実施形態による撮像装置１００の、GetStatusレスポンス９２０の生成処理を説明するフローチャートである。制御部１０１は、ＰＴＺ駆動機構が初期化中であると判定した場合（Ｓ７０１でＹＥＳ）、MoveStatusフィールド９２８に「UNKNOWN」を記述する（Ｓ７０２）。第１実施形態と同様に、パン／チルトのフィールド９２９とズームのフィールド９３０の両方に「UNKNOWN」が記述される。そして、制御部１０１は、Errorフィールド９３１に、エラー状態ではないことを示す文字列９３２を記述する（Ｓ７０３）。本実施形態では、文字列９３２として、「Initializing」を用いるものとする。
【００５４】
次に、制御部１０１は、ＰＴＺ駆動機構の原点位置の設定が済んでいるかどうかを確認する（Ｓ７１２）。原点位置の設定とは原点位置（ホームポジション）への復帰（原点復帰）である。原点位置（ホームポジション）は、機器設置に応じてユーザが設定する基本位置で、例えばＰＴＺ動作機能を動作させていない場合に自動的に復帰する撮影位置（及び、ズーム位置）である。例えば、玄関を監視する場合、一般には撮像装置が玄関を向いた方向がホームポジションに設定される。通常、（プリセット位置と同様に）ユーザが設定可能な撮影位置となる。ＰＴＺ駆動機構の原点位置の設定が済んでいる場合、すなわち、原点復帰が完了している場合には（Ｓ７１２でＹＥＳ）、制御部１０１は、Positionフィールド９２４に原点位置を記述する（Ｓ７１３）。他方、原点位置の設定が済んでいない場合には（Ｓ７１２でＮＯ）、制御部１０１は、Positionフィールド９２４に所定の値を記述する（Ｓ７１４）。なお、所定の値としては、たとえば、特定の座標値を示す値（たとえば、パン、チルト、ズームの位置を表す座標系の原点座標）、可動範囲の中央の値、予め決められた値（但し、可動範囲内の値）を用いることができる。なお、可動範囲の中央の値とは、たとえば、座標範囲が正規化座標値−１．０〜＋１．０であった場合、０．０となる。また、原点座標として、メーカーが出荷時等に設定する位置で、製品を正位置（商品カタログ等と同じ向き）に置いた際の位置を用いてもよい。その後、制御部１０１は、以上のようにして生成されたMoveStatusフィールド９２８、Errorフィールド９３１、Positionフィールド９２４を用いて、GetStatusレスポンス９２０を生成する（Ｓ７１５）。そして、制御部１０１は、通信部１０４を介して、GetStatusレスポンス９２０をクライアント２００へ送信する（Ｓ７１６）。
【００５５】
ＰＴＺ駆動機構にエラーが発生した場合の処理や、初期化中でもエラー状態でもない場合の処理は、第１実施形態と同様である。すなわち、Ｓ７０４〜Ｓ７１１の動作は、Ｓ５０５〜Ｓ５１２と同様である。また、Ｓ７１６で送信されたGetStatusレスポンスを受信したクライアント２００の動作は、第１実施形態（図４のＳ４０７〜Ｓ４１４）と同様である。クライアント２００は、ＰＴＺ駆動機構が初期化中であっても不測の値を通知されることは無く、安定した動作を容易に実現できる。とくに、上記実施形態では、初期化中であってもGetConfigurationsレスポンスで通知した可動範囲の値が記述されるので、より確実に安定した動作を提供できる。なお、本実施形態ではGetServiceCapabilitiesレスポンスにおいてMoveStatusをfalseとしてもよい。その場合、GetStatusレスポンスにおけるMoveStatusの通知は不要となる。
【００５６】
図９（Ｂ）に示したGetConfigurationsコマンド（リクエスト、レスポンス）について、ＯＮＶＩＦに準拠した記述例を図１３に示す。図１３は、GetConfigurationsリクエスト１３Ａの記述例、GetConfigurationsレスポンス１３Ｂの記述例を示す。GetConfigurationsリクエスト１３Ａの記述１３０１は、当該リクエストがGetConfigurationsであることを示しており、フィールド９４３に対応している。また、GetConfigurationsレスポンス１３Ｂの記述１３２１は、当該レスポンスがGetConfigurationsであることを示しており、フィールド９６３に対応している。記述１３２２は、パン、チルトの取り得る座標範囲を示す値を記述しており、PanTiltLimitsフィールド９６４に対応する。記述１３２３は、ズームの取り得る座標範囲を示す値を記述しており、ZoomLimitsフィールド９６７に対応する。
【００５７】
また、上記各実施形態では、クライアント２００が撮像装置１００の機能（能力）を確認するために、ＯＮＶＩＦのＰＴＺサービスにおけるGetServiceCapabilitiesを用いる例（Ｓ３０１〜Ｓ３０２、Ｓ６０１〜Ｓ６０２）を示した。しかしながら、能力通知の形態はこれに限られるものではない。たとえば、ＯＮＶＩＦでは、DeviceManagementサービスにおけるGetServiceコマンドを用いて撮像装置１００にＰＴＺ駆動機構による撮影位置や動作状態を通知する能力があるかを問い合わせることができる。すなわち、上記各実施形態において、GetServiceCapabilitiesリクエスト、レスポンスに代えて、GetServiceリクエスト、レスポンスを利用することができる。
【００５８】
GetServiceコマンド（リクエスト／レスポンス）のデータ構成例を図８（Ｂ）に示す。クライアント２００から送信されるGetServiceリクエスト８４０は、当該リクエストの宛先アドレス８４１、当該リクエストの送信元アドレス８４２、当該リクエストがGetServiceであることを示すフィールド８４３を有する。また、撮像装置１００より返信されるGetServiceレスポンス８６０は、当該レスポンスの宛先アドレス８６１、当該レスポンスの送信元アドレス８６２、当該レスポンスがGetServiceに対応することを示すフィールド８６３を有する。また、GetServiceレスポンス８６０のXAddrフィールド８６４にはptz serviceのアドレス８６５が記述される。なお、Xaddrとは、撮像装置１００が持つサービスのアドレスである。クライアント２００は撮像装置１００を制御するために、このアドレスに対して、（当該サービスにおいて定義された）コマンドを発行する。XAddrは、通常、URI形式の文字列で指定される。
【００５９】
撮像装置１００がＰＴＺ駆動機構による撮像位置と動作状態を通知する能力を有する場合、Capabilitiesフィールド８６６において、StatusPosition８６７、MoveStatusフィールド８６８の値がtrueとなる。クライアント２００は、StatusPosition８６７、MoveStatusフィールド８６８の値から、撮像位置と動作状態を通知する能力の有無を判定することができる。たとえば図４のステップＳ４０８において、MoveStatusフィールド８６８の値を参照することができる。なお、ＯＮＶＩＦに準拠する場合、GetServiceレスポンスにおいてMoveStatus、PositionStatusといった能力の情報を撮像装置１００から得るには、GetServiceリクエストでCapabilityフラグをtrueにしておく必要がある。
【００６０】
ＯＮＶＩＦに準拠したGetServiceコマンド（リクエスト、レスポンス）の記述例を図１１に示す。図１１は、GetServiceリクエスト１１Ａの記述例、GetServiceレスポンス１３Ｂの記述例を示す。GetServiceリクエスト１１Ａの記述１１０１は、当該リクエストがGetServiceであることを示しており、フィールド８４３に対応している。なお、記述１１０２は、Capabilityフラグがtrueであることを示す。GetServiceレスポンス１１Ｂにおいてい記述１１１１は、当該レスポンスがGetServiceであることを示しており、フィールド８６３に対応している。記述１１１２は、XAddrフィールド８６４に対応する。記述１１１３は、Capabilitiesフィールド８６６に対応している。記述１１１４，１１１５が、それぞれフィールド８６７，８６８に対応し、撮像位置の通知能力、ＰＴＺ駆動機構の動作状態の通知能力を有することを示している（StatusPosition=true、MoveStatus=true）。
【００６１】
また、上述の各実施形態では、撮像位置を変更する変更部として、パン駆動機構１１１、チルト駆動機構１１２及びズーム機構１１３を備えるように撮像装置１００を構成したが、これに限られるものではない。例えば、撮像位置を変更する変更部として、撮像画像をトリミングする領域（マスク領域）を変更することでクライアント２００に表示される撮像画像を変更する、所謂デジタルＰＴＺ機能を備えるように撮像装置１００を構成しても良い。そのようなデジタルＰＴＺ機能にも上述したような制御を適用することができることは明らかである。
【００６２】
また、図１０〜図１３は、ＯＮＶＩＦ規格に基づいて、ＸＭＬ言語を用いて図８〜図９に示したリクエストやレスポンスを記述したものであるが、通信規格や記述言語はこれに限られるものではない。また、上述の各実施形態において、撮像装置１００およびクライアント２００は、ＸＭＬで定義されたコマンドを、ファイル形式でそれぞれのメモリ（メモリ１０２及びメモリ２０２）に保存するように構成されていても良い。
【００６３】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【００６４】
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
【符号の説明】
【００６５】
１００：撮像装置、１０１：制御部、１０３：撮像部、１０４：通信部、１１１：パン駆動機構、２００：クライアント、３００：ネットワーク
【図１】
2015220693.tif 000003
【図２】
2015220693.tif 000004
【図３】
2015220693.tif 000005
【図４】
2015220693.tif 000006
【図５】
2015220693.tif 000007
【図６】
2015220693.tif 000008
【図７】
2015220693.tif 000009
【図８】
2015220693.tif 000010
【図９】
2015220693.tif 000011
【図１０】
2015220693.tif 000012
【図１１】
2015220693.tif 000013
【図１２】
2015220693.tif 000014
【図１３】
2015220693.tif 000015