(57)【特許請求の範囲】
【請求項１】
カメラの撮像方向を変更するための駆動部に対する駆動指示に従って、前記カメラの撮像方向に対応する位置情報を記憶するメモリから当該位置情報を取得する取得手段と、
前記メモリに前記位置情報が記憶されているかどうかを判定する第１の判定手段と、
前記第１の判定手段によって前記メモリに前記位置情報が記憶されていると判定された場合、前記駆動部から出力された前記駆動部の現在位置と、前記メモリから取得された位置情報に対応する位置とが異なるかどうかを判定する第２の判定手段と、
前記第２の判定手段によって、前記駆動部から出力された前記駆動部の現在位置と前記メモリから取得された位置とが異なると判定された場合、前記駆動部から出力された前記駆動部の現在位置と前記メモリから取得された位置情報に対応する位置とが異なることを示す通知を出力する出力手段とを有することを特徴とするカメラ制御装置。
【請求項２】
前記メモリに前記位置情報が記憶されていない場合、前記カメラの撮像方向を予め定められた撮像方向に制御し、前記メモリに前記予め定められた撮像方向に対応する位置情報を記憶させる制御手段を有することを特徴とする請求項１に記載のカメラ制御装置。
【請求項３】
前記制御手段は、前記駆動部から出力された前記駆動部の現在位置と前記メモリの位置情報に応じた位置との差が所定値以上の場合、前記カメラの撮像方向を前記予め定められた撮像方向に制御し、前記駆動部とは異なる方向に前記カメラの撮像方向を変更するための第２の駆動部に関する位置情報を前記メモリに記憶させることを特徴とする請求項２に記載のカメラ制御装置。
【請求項４】
前記制御手段は、前記差が所定値以上の場合で、かつ、前記カメラの撮像方向を前記予め定められた撮像方向にするためのユーザ指示が入力されると、前記カメラの撮像方向を前記予め定められた撮像方向にする処理を実行することを特徴とする請求項３に記載のカメラ制御装置。
【請求項５】
前記出力手段は、前記駆動部から出力された前記駆動部の現在位置と、前記メモリの位置情報に応じた位置との比較結果であって、前記カメラの起動に応じて実行された比較結果に応じて前記通知を出力することを特徴とする請求項１乃至４のうちいずれか１項に記載のカメラ制御装置。
【請求項６】
前記カメラによる複数の撮像映像を比較する比較手段を有し、
前記出力手段は、前記複数の撮像映像の差が所定の差分以上であり、且つ、前記駆動部から出力された前記駆動部の現在位置と、前記メモリの位置情報に応じた前記駆動部の位置との差が所定値以上の場合、前記通知を出力することを特徴とする請求項１乃至４のうちいずれか１項に記載のカメラ制御装置。
【請求項７】
前記メモリは、前記カメラの撮像映像を記憶し、
前記出力手段は、電源が落とされた前記カメラが起動された場合、前記電源が落とされる前に前記メモリに記憶された撮像映像と、前記起動後の撮像映像との差が前記所定の差分以上であり、且つ、前記駆動部から出力された前記駆動部の現在位置と、前記メモリの位置情報に応じた位置との差が前記所定値以上の場合、前記通知を出力することを特徴とする請求項６に記載のカメラ制御装置。
【請求項８】
前記カメラの電源が落とされる前の撮像映像と前記カメラの起動後の撮像映像との差が前記所定の差分以上であり、且つ、前記駆動部から出力された前記駆動部の現在位置と前記メモリの位置情報に応じた前記駆動部の位置との差が前記所定値以下の場合、前記カメラの撮像方向を予め定められた撮像方向に制御し、前記予め定められた撮像方向に対応する位置情報を前記メモリに記憶させる制御手段を有することを特徴とする請求項７に記載のカメラ制御装置。
【請求項９】
前記メモリは、前記駆動部の駆動回数を記憶し、
前記出力手段は、前記駆動部の駆動回数が前記所定回数以上の場合、前記通知を出力することを特徴とする請求項１に記載のカメラ制御装置。
【請求項１０】
カメラ制御装置が行う制御方法であって、
カメラの撮像方向を変更するための駆動部に対する駆動指示に従って、前記カメラの撮像方向に対応する位置情報を記憶するメモリから当該位置情報を取得する取得工程と、
前記メモリに前記位置情報が記憶されているかどうかを判定する第１の判定工程と、
前記第１の判定工程において前記メモリに前記位置情報が記憶されていると判定された場合、前記駆動部から出力された前記駆動部の現在位置と、前記メモリから取得された前記位置情報に対応する位置とが異なるかどうかを判定する第２の判定工程と、
前記第２の判定工程において、前記駆動部から出力された前記駆動部の現在位置と前記メモリから取得された位置情報に対応する位置とが異なると判定された場合、前記駆動部から出力された前記駆動部の現在位置と前記メモリから取得された位置情報に対応する位置とが異なることを示す通知を出力する出力工程とを有することを特徴とする制御方法。
【請求項１１】
コンピュータに、
カメラの撮像方向を変更するための駆動部に対する駆動指示に従って、前記駆動部によって駆動される位置に関する位置情報を記憶するメモリから当該位置情報を取得する取得手順と、
前記メモリに前記位置情報が記憶されているかどうかを判定する第１の判定手順と、
前記第１の判定手順において前記メモリに前記位置情報が記憶されていると判定された場合、前記駆動部から出力された前記駆動部の現在位置と、前記メモリから取得された位置情報に対応する位置とが異なるかどうかを判定する第２の判定手順と、
前記第２の判定手順において、前記駆動部から出力された前記駆動部の現在位置と前記メモリから取得された位置情報に対応する位置とが異なると判定された場合、前記駆動部から出力された前記駆動部の現在位置と前記メモリから取得された位置情報に対応する位置とが異なることを示す通知を出力する出力手順とを実行させることを特徴とするプログラム。
【請求項１２】
カメラと、カメラの撮像方向を制御するカメラ制御装置と、前記カメラにより撮像された映像を表示する表示装置とを含むカメラシステムであって、
前記カメラの撮像方向を変更するための駆動部に対する駆動指示に従って、前記カメラの撮像方向に対応する位置情報を記憶するメモリから当該位置情報を取得する取得手段と、
前記メモリに前記位置情報が記憶されているかどうかを判定する第１の判定手段と、
前記第１の判定手段によって前記メモリに前記位置情報が記憶されていると判定された場合、前記駆動部から出力された前記駆動部の現在位置と、前記メモリから取得された位置情報に対応する位置とが異なるかどうかを判定する第２の判定手段と、
前記第２の判定手段によって、前記駆動部から出力された前記駆動部の現在位置と前記メモリから取得された位置情報に対応する位置とが異なると判定された場合、前記駆動部から出力された前記駆動部の現在位置と前記メモリから取得された位置情報に対応する位置とが異なることを示す通知を出力する出力手段と、
を有することを特徴とするカメラシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像方向を変更可能なカメラの制御方法に関する。
【背景技術】
【０００２】
パン、チルト、ローテート機構のような駆動機構を持つ監視カメラにおいて、駆動機構の現在位置を把握することは、例えば、カメラ制御用のユーザーインターフェースで現在位置を表示させるために重要である。特許文献１には、例えば電源投入時や所定時間の経過ごとに、原点合わせ動作を行い、絶対回転角カウンタを校正することが記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１１−９４１９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、原点合わせ動作によって、カメラの撮像方向を変更するための駆動部が劣化してしまう恐れがあった。
例えば、カメラの電源を投入するたびに、原点合わせ動作のために駆動部を駆動させてしまうと、駆動部に用いられている部品が劣化してしまう恐れがあった。
また、例えば、所定時間が経過するごとに、原点合わせを行うと、駆動部に用いられている部品が劣化してしまう恐れがあった。
本発明は、上記の問題点に鑑みてなされたものであり、その目的は、駆動部の位置情報の精度の低下を防ぎつつ、原点合わせ動作の頻度を低減することである。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、本発明のカメラ制御装置は、例えば、以下の構成を有する。カメラの撮像方向を変更するための駆動部に対する駆動指示に従って、前記カメラの撮像方向に対応する位置情報を記憶するメモリから当該位置情報を取得する取得手段と、前記メモリに前記位置情報が記憶されているかどうかを判定する第１の判定手段と、前記第１の判定手段によって前記メモリに前記位置情報が記憶されていると判定された場合、前記駆動部から出力された前記駆動部の現在位置と、前記メモリから取得された位置情報に対応する位置とが異なるかどうかを判定する第２の判定手段と、前記第２の判定手段によって、前記駆動部から出力された前記駆動部の現在位置と前記メモリから取得された位置とが異なると判定された場合、前記駆動部から出力された前記駆動部の現在位置と前記メモリから取得された位置情報に対応する位置とが異なることを示す通知を出力する出力手段とを有することを特徴とするカメラ制御装置。
【発明の効果】
【０００６】
本発明によれば、駆動部の位置情報の精度の低下を防ぎつつ、原点合わせ動作の頻度を低減できる。
【図面の簡単な説明】
【０００７】
【図１】カメラシステムの構成図
【図２】カメラ２００の外観図
【図３】カメラ２００のブロック図
【図４】カメラ制御装置１００のユーザインタフェースの例
【図５】カメラ２００のＰａｎ、Ｔｉｌｔ、Ｒｏｔａｔｅの制御処理のフローチャート
【図６】カメラ制御装置１００のＰａｎ、Ｔｉｌｔ、Ｒｏｔａｔｅの制御処理のフローチャート
【図７】映像解析の位置ずれ検出処理のフローチャート
【図８】カメラ２００の起動時のフローチャート
【図９】カメラ制御装置１００の起動時のフローチャート
【図１０】カメラ制御装置１００のブロック図
【発明を実施するための形態】
【０００８】
以下に、本発明の好ましい実施の形態を、添付の図面に基づいて詳細に説明する。図１は、本実施形態のカメラシステムの構成を示した図である。
【０００９】
カメラ制御装置１００は、カメラ２００とネットワーク４００により接続される。カメラ制御装置１００は、ネットワーク４００を介して、カメラ２００の各種制御をすると共に、カメラ２００から映像、音声、設定値などの取得を行う。本形態では、ネットワーク４００がローカルエリアネットワークである場合を中心に説明するが、例えばインターネットなどであっても良い。
また、カメラ制御装置１００は、表示装置３００と接続される。表示装置３００は、カメラ２００による撮像映像を表示すると共に、カメラ２００の撮像方向を制御するための指示を入力するための操作画面を表示する。本実施形態のカメラ制御装置１００は、カメラ２００を制御するカメラ制御装置としての機能、及び、表示装置３００の表示を制御する表示制御装置としての機能を有する。なお、カメラ制御装置１００と表示装置３００が一体であっても良い。
【００１０】
図２はカメラ２００の外観図である。２０１はパン駆動部であり、パンモータの駆動によりパン方向２０４で示す方向へ鏡筒部２０３の向きを変更させる。２０２はチルト駆動部であり、チルトモータの駆動によりチルト方向２０５で示す方向へ鏡筒部２０３の向きを変更させる。また、レンズ含む鏡筒部２０３は、ローテートモータの制御により、レンズ中心位置を中心に、ローテート方向２０６で示す方向に回転可能である。
カメラ２００は、ドーム２０７によって全体を覆われている。なお、本形態では、パンモータ、チルトモータ、ローテートモータの駆動可能な回数（駆動量）の上限値が予め設定されている。
【００１１】
図３は、カメラ２００のブロック図である。レンズ２００１とＣＣＤ２００２によって得られた撮像データが、信号処理部２００３によって処理されて映像データが生成される。信号処理部２００３で生成された映像データは、符号化部２００４によって符号化される。また、解析部２００５は、信号処理部２００３で生成された映像データを解析する。符号化部２００４により符号化された映像データや解析部２００５による解析結果は、ＲＡＭ２００７に記憶され、通信部２０１４を介してカメラ制御装置１００へ送信される。
【００１２】
上記の各処理はＣＰＵ２００６によって制御される。ただし、上記の少なくとも一部の処理を専用のハードウェアで行うようにしても良い。
また、ＣＰＵ２００６は、例えば、カメラ制御装置１００からの制御コマンドに応じて、レンズ制御部２００９を介してズームやフォーカスなどのレンズ制御を行う。また、ＣＰＵ２００６は、例えば、カメラ制御装置１００からの制御コマンドに応じて、駆動制御部２０１０を介してパンモータ２０１１、チルトモータ２０１２、ローテートモータ２０１３を制御する。
【００１３】
なお、本形態の駆動制御部２０１０は、パンモータ２０１１、チルトモータ２０１２、ローテートモータ２０１３の少なくともいずれかの現在位置を取得することができる。本形態の駆動制御部２０１０は、パンモータ２０１１、チルトモータ２０１２、ローテートモータ２０１３のそれぞれの現在位置を、ロータリエンコーダを用いて取得する。ただし、例えば、パンモータ２０１１の現在位置のみが、ロータリエンコーダで取得できるようにしても良い。また、現在位置の取得は、ロータリエンコーダを用いた方法に限らない。
また、本形態のＲＯＭ２００８は、カメラ制御装置１００からの制御コマンドや、追尾処理などによる駆動量に応じたパンモータ２０１１、チルトモータ２０１２、ローテートモータ２０１３の位置を記憶する（記憶位置）。また、ＲＯＭ２００８は、パンモータ２０１１、チルトモータ２０１２、ローテートモータ２０１３のそれぞれのこれまでの駆動回数（駆動量）に関する情報を記憶する。
【００１４】
図１０は、カメラ制御装置１００のブロック図である。
カメラ制御装置１００のＣＰＵ１１０１は、ＲＯＭ１１０３に記憶されている各種プログラムをＲＡＭ１１０２に読み出して実行することで、表示制御部１１０４、通信部１１０５を制御する。表示制御部１１０４は、カメラ２００の撮像により取得された映像データに応じた映像を表示装置３００の表示画面上に表示させると共に、カメラ２００の状態等に応じて表示装置３００の表示画面の表示を制御する。通信部１１０５は、カメラ２００との間で各種メッセージやコマンドをやり取りする。
【００１５】
次に、表示装置３００の表示画面について説明する。表示装置３００の表示画面は、カメラ制御装置１００の制御により表示される。
【００１６】
図４は、表示装置３００で表示されるユーザインタフェースの例である。本形態のユーザインタフェースには、映像の表示領域１００２、カメラ操作領域１００３、スライダバー１００４、状況表示領域１００５、リセットボタン１００６が含まれる。
表示領域１００２は、カメラ２００による撮像映像を表示するための領域である。カメラ操作領域１００３は、カメラ２００のパン、チルト制御に関する操作を入力するための領域である。スライダバー１００４は、カメラ２００のローテート制御に関する操作を入力するための領域である。カメラ操作領域１００３やスライダバー１００４の操作に応じて、カメラ制御装置１００から、カメラ２００に対して制御コマンドが送信され、カメラ２００の撮像方向やローテート角が変更される。この変更に応じて、表示領域１００２で表示される映像がリアルタイムで変化する。なお、例えば表示領域１００２上のクリック操作により、パン角度とチルト角度を同時に制御することも可能である。
【００１７】
状況表示領域１００５には、例えば、現在のカメラ２００のパン角度、チルト角度、ローテート角度が表示される。また、リセットボタン１００６は、カメラ２００の原点出しに関する操作を入力するための領域である。本形態のカメラ制御装置１００は、リセットボタン１００６の押下に応じて、カメラ２００に対して原点出しの指示コマンドを送信する。カメラ２００は、カメラ制御装置１００から原点出しの指示コマンドを受信すると、カメラ２００の撮像方向を予め定められた方向に制御し、当該予め定められた方向に対応する位置情報（パン、チルト、ローテート角度）を、記憶位置として、ＲＯＭ２００８に記憶させる。記憶位置は、カメラ２００の撮像方向を変更するための駆動部（パン、チルト、ローテートモータ）に対する駆動指示（制御コマンド）による駆動量に応じた位置情報である。つまり、ＲＯＭ２００８に記憶される記憶位置は、原点出しの後、例えば、制御コマンドに応じてパン角度が制御された場合、制御コマンドによる制御量に基づいて更新される。また、記憶位置は、例えば追尾処理によるパン角度の制御量に基づいて更新される。
【００１８】
次に、カメラ２００によるパン、チルト、ローテート制御時の処理について、図５のフローチャートを用いて説明する。なお、カメラ２００のＣＰＵ２００６は、図５の処理を実行するためのプログラムをＲＯＭ２００８からＲＡＭ２００７に読み出して実行する。
ＣＰＵ２００６は、パン、チルト、ローテートに関する制御コマンドをカメラ制御装置１００から受信すると（Ｓ５０１）、制御コマンドによる指定位置が可動範囲内であるか否かを判定する（Ｓ５０２）。可動範囲内であると判定された場合はＳ５０４へ進み、可動範囲内でないと判定された場合、ＣＰＵ２００６は、エラーメッセージをカメラ制御装置１００へ送信し（Ｓ５０３）、図５の処理を終了する。
【００１９】
ＣＰＵ２００６は、Ｓ５０１で受信した全制御コマンドの処理を完了したか否かを判定し（Ｓ５０４）、完了したと判定した場合は、現在の駆動回数をカメラ制御装置１００へ通知して（Ｓ５０５）、図５の処理を終了する。
ＣＰＵ２００６は、Ｓ５０１で受信した制御コマンドがパンモータ２０１１の制御に関する制御コマンドであるか否かを判定する（Ｓ５１０）。パンモータ２０１１の制御コマンドであると判定された場合、Ｓ５１１へ進み、ＣＰＵ２００６は、制御コマンドによる指定位置に到達するか、パンモータ２０１１の駆動回数が上限値に達するまで、パンモータ２０１１を駆動させる（Ｓ５１１〜Ｓ５１５）。なお、ＣＰＵ２００６は、パンモータ２０１１を所定量、駆動するごとに、パンモータ２０１１の駆動回数をインクリメントする（Ｓ５１４）。その後、ＣＰＵ２００６は、駆動後のパンモータ２０１１の位置を記憶位置としてＲＯＭ２００８に記憶させると共に、当該記憶位置の情報をカメラ制御装置１００へ通知する（Ｓ５１５）。
【００２０】
また、ＣＰＵ２００６は、パンモータ２０１１の駆動回数が上限値に達した場合、警告をカメラ制御装置１００へ送信する（Ｓ５１６）。カメラ制御装置１００は、警告に応じて、パンモータ２０１１が駆動できないことを示すメッセージを表示装置３００に表示させる。パンモータ２０１１の制御に関する制御コマンドで指定された指定位置まで、パンモータ２０１１が駆動されたとＳ５１１で判定されると、Ｓ５０４に戻る。
ＣＰＵ２００６は、Ｓ５０１で受信した制御コマンドがチルトモータ２０１２の制御コマンドであると判定した場合、Ｓ５２０からＳ５２１へ進む。その後、ＣＰＵ２００６は、制御コマンドによる指定位置に到達するか、駆動回数が上限に達するまで、チルトモータ２０１２を駆動させる（Ｓ５２１〜Ｓ５２５）。なお、ＣＰＵ２００６は、チルトモータ２０１２を所定量、駆動するごとに、チルトモータ２０１２の駆動回数をインクリメントする（Ｓ５２４）。その後、ＣＰＵ２００６は、駆動後のチルトモータ２０１２の位置を記憶位置としてＲＯＭ２００８に記憶させると共に、当該記憶位置の情報をカメラ制御装置１００へ通知する（Ｓ５２５）。
【００２１】
また、ＣＰＵ２００６は、チルトモータ２０１２の駆動回数が上限値に達した場合、警告をカメラ制御装置１００へ送信する。カメラ制御装置１００は警告に応じて、チルトモータ２０１２が駆動できないことを示すメッセージを表示装置３００に表示させる。
ＣＰＵ２００６は、Ｓ５０１で受信した制御コマンドがローテートモータ２０１３の制御コマンドであると判定した場合、上述のパンモータ２０１１、チルトモータ２０１２の制御と同様に、ローテートモータ２０１３の制御を行う。
【００２２】
なお、本形態では、パンモータ２０１１、チルトモータ２０１２、ローテートモータ２０１３の処理を１つずつ行う形態を中心に説明したが、それぞれを同時に制御するようにしても良い。
【００２３】
次に、カメラ制御装置１００によるパン、チルト、ローテート制御時の処理について、図６のフローチャートを用いて説明する。なお、カメラ制御装置１００のＣＰＵ１１０１は、図６の処理を実行するためのプログラムをＲＯＭ１１０３からＲＡＭ１１０２に読み出して実行する。
【００２４】
カメラ制御装置１００のＣＰＵ１１０１は、ユーザインタフェースのカメラ操作領域１００３やスライダバー１００４の操作に応じて、パン、チルト、ローテート制御のための制御コマンドをカメラ２００へ送信する。そして、ＣＰＵ１１０１は、カメラ２００から制御後のパンモータ２０１１、チルトモータ２０１２、ローテートモータ２０１３の記憶位置の情報を受信する（Ｓ６０１）。また、表示制御部１１０４は、Ｓ６０１において、記憶位置の情報に基づいて、ユーザインタフェースの状況表示領域１００５に表示されるパン、チルト、ローテート角度の表示を更新する。
カメラ制御装置１００のＣＰＵ１１０１は、Ｓ６０１で受信した記憶位置の情報に基づいて、制御コマンドで指定した指定位置に達したか否かを判定する（Ｓ６０２）。ＣＰＵ１１０１は、指定位置に達していないと判定した場合、モータの駆動回数が上限値に達したことを示す警告をカメラ２００から受信したか否かを判定する（Ｓ６０３）。モータの駆動回数が上限値に達したことを示す警告は、図５のＳ５１６、Ｓ５２６、Ｓ５３６で送信される。カメラ制御装置１００の表示制御部１１０４は、警告を受信したと判定した場合、表示装置３００の表示画面上に警告メッセージを表示させる。また、カメラ制御装置１００の表示制御部１１０４は、警告の受信に応じて、駆動回数が上限値に達した駆動部（例えばパンモータ）の駆動に関するリセットボタン１００６、カメラ操作領域１００３、スライダバー１００４の表示を無効にする（Ｓ６０６）。一方、Ｓ６０３でモータの駆動回数が上限値に達したことを示す警告を受信していないと判定された場合、Ｓ６０１に戻る。
【００２５】
Ｓ６０２でモータの現在位置が指定位置に達したと判定された場合、カメラ制御装置１００の通信部１１０５は、カメラ２００に指定位置を記憶位置として記憶させるための記憶制御コマンドをカメラ２００に送信する（Ｓ６０４）。また、通信部１１０５は、カメラ２００に記憶されている位置ずれフラグをリセットするためのリセットコマンドを送信する（Ｓ６０５）。本形態の位置ずれフラグは、正規の処理（例えば、制御コマンドや追尾処理）以外の方法でカメラ２００の撮像方向が変更された可能性があることを示すフラグである。なお、例えば、カメラ制御装置１００からのコマンドが無くてもカメラ２００が管理できる場合は、Ｓ６０４、及びＳ６０５の処理は省略可能である。Ｓ６０５の処理が完了すると、図６の処理を終了する。
【００２６】
なお、本形態では、駆動を開始してから所定時間が経過すると、駆動回数をインクリメントする例を中心に説明しているが、駆動速度に応じてインクリメントする頻度が異なるようにすることもできる。また、駆動回数は、例えば、モータギアの回転数や、駆動のためのパルス数、実際の角度に基づいて取得することも可能である。
【００２７】
次に、カメラ２００で行う映像解析について図７を用いて説明する。図７の処理は、カメラ２００の起動と共に開始される。なお、本形態ではカメラ２００の解析部２００５で映像解析を行う例について説明するが、例えば、カメラ制御装置１００で行うようにしても良い。本形態では、カメラ２００の解析部２００５の処理は、ＣＰＵ２００６により行われる。
解析部２００５は、信号処理部２００３により生成された１フレーム分の映像データを取得する（Ｓ７０１）。そして、解析部２００５は、過去の映像データが記憶されているか否かを判定する（Ｓ７０２）。なお、本形態のカメラ２００は、カメラ２００の電源が落とされる前の映像データを過去の映像データとして記憶することができる。
【００２８】
Ｓ７０２で過去の映像データが記憶されていないと判定された場合、Ｓ７０３へ進み、解析部２００５は、Ｓ７０１で取得された現在の映像データを過去の映像データとして記憶させる。
【００２９】
一方、Ｓ７０２で過去の映像データが記憶されていると判定された場合、Ｓ７０４へ進み、解析部２００５は、Ｓ７０１で取得された現在の映像データを過去の映像データとして記憶させる（Ｓ７０４）。また、解析部２００５は、Ｓ７０１で取得された映像データと、Ｓ７０２で記憶されていると判定された映像データを比較する（Ｓ７０５）。本形態の解析部２００５は、各映像データから、輝度成分、エッジ、及び、色情報の抽出を行い、それらを比較する。すなわち、解析部２００５は、複数の映像を比較する。ただし、比較方法や、比較対象とするパラメータは、上記に限らない。
【００３０】
映像データの比較により、一定の差分があると判定された場合（Ｓ７０６でＹＥＳ）、位置ずれフラグを有効に設定する（Ｓ７０７）。位置ずれフラグは、正規の処理（例えば、制御コマンドや追尾処理）以外の方法でカメラ２００の撮像方向が変更された可能性があることを示すフラグである。本形態のカメラ２００は、カメラ２００の電源が落とされる前の映像データを過去の映像データとして記憶している。従って、解析部２００５は、例えば、カメラ２００の電源が落とされる直前の映像データと、その後、カメラ２００の電源が投入された直後の映像データとを比較することができる。
Ｓ７０７で位置ずれフラグを有効に設定すると、Ｓ７０１に戻り、解析部２００５は、次の１フレーム分の映像データを取得する。一方、Ｓ７０６で現在の映像データと過去の映像データに一定の差分がないと判定された場合、Ｓ７０１に戻り、解析部２００５は、次の１フレーム分の映像データを取得する。
【００３１】
次に、カメラ２００の起動時の処理について図８のフローチャートを用いて説明する。なお、本形態のカメラ２００は、図８のＳ８０１の初期化処理の完了と共に、図７の処理を開始する。また、カメラ２００のＣＰＵ２００６は、図８の処理を実行するためのプログラムをＲＯＭ２００８からＲＡＭ２００７に読み出して実行する。本形態のカメラ２００は、電源投入時、及び再起動時に、図８の処理を開始する。
ＣＰＵ２００６は、カメラ２００のハードウェアや図３に示す各ブロックの初期化を行う（Ｓ８０１）。初期化が完了すると（Ｓ８０２でＹＥＳ）、Ｓ８０３へ進み、ＣＰＵ２００６は、パン、チルト、ローテート角度の記憶位置と現在位置を取得する。
【００３２】
すなわち、Ｓ８０３（取得手順）において、カメラ２００のＣＰＵ２００６は、ＲＯＭ２００８に記憶された位置情報（記憶位置）を取得する。記憶位置は、カメラ２００の撮像方向を変更するための駆動部（パン、チルト、ローテートモータ）に対する駆動指示（制御コマンド）の駆動量に応じた位置情報である。つまり、ＲＯＭ２００８に記憶される記憶位置は、原点だしの後、例えば、制御コマンドに応じてパン角度が制御された場合、制御コマンドによる制御量に基づいて更新される。また、記憶位置は、例えば追尾処理よるパン角度の制御量に基づいて更新される。なお、パン角度の制御に応じて、駆動回数の情報も更新される。
【００３３】
また、Ｓ８０３において、ＣＰＵ２００６は、駆動部の現在位置に応じた出力をする駆動制御部２０１０からの出力を受信する（受信手順）。本形態の駆動制御部２０１０は、ロータリエンコーダを用いて現在位置を取得する。
記憶位置が記憶されていない場合（Ｓ８０４でＹＥＳ）、ＣＰＵ２００６は、位置ずれフラグをリセットし（Ｓ８０５）、記憶位置が記憶されていないことを示すメッセージをカメラ制御装置１００へ送信し、図８の処理を終了する。すなわち、ＣＰＵ２００６は、例えば、カメラ２００を初めて起動した場合、位置ずれフラグをリセットし、記憶位置が記憶されていないことをカメラ制御装置１００へ通知する。記憶位置が記憶されていないことを通知されたカメラ制御装置１００は、原点だし処理を実行する。すなわち、カメラ２００は、撮像方向を予め定められた方向に制御し、当該予め定められた方向に対応する位置情報（パン、チルト、ローテート角度）を記憶位置として記憶させる。
【００３４】
Ｓ８０４で記憶位置が記憶されていると判定された場合、ＣＰＵ２００６は、位置ずれフラグの状態を判別する（Ｓ８０７）。本形態の位置ずれフラグは、正規の処理（例えば、制御コマンドや追尾処理）以外の方法でカメラ２００の撮像方向が変更された可能性があることを示すフラグである。なお、本形態では、カメラ２００の電源が落とされる前の映像と、その後、カメラ２００の電源が投入された後の映像の比較結果に応じて位置ずれフラグを有効に設定することができる。位置ずれフラグが有効であると判定された場合（Ｓ８０７でＹＥＳ）、Ｓ８０８で進み、位置ずれフラグが有効でないと判定された場合（Ｓ８０７でＮＯ）、図８の処理を終了する。
【００３５】
ＣＰＵ２００６は、位置ずれフラグが有効であると判定された場合、現在位置と記憶位置との差が所定値以上であるか否かを判定する（Ｓ８０８）。本形態のＣＰＵ２００６は、駆動制御部２０１０から取得したパン、チルト、ローテート角度の現在位置と、ＲＯＭ２００８に記憶されているパン、チルト、ローテート角度の記憶位置との差が所定値以上であるか否かを判定する。現在位置と記憶位置との差が所定値以上であると判定された場合、Ｓ８０９に進み、所定値未満であると判定された場合、Ｓ８１０に進む。本形態では、パン、チルト、ローテート角度の少なくとも１つの差が所定値以上であると判定された場合、Ｓ８０９へ進む。
【００３６】
ＣＰＵ２００６は、現在位置と記憶位置の差が所定値以上であると判定された場合、ＲＯＭ２００８に記憶されている記憶位置を現在位置に更新すると共に、現在位置と記憶位置との差をカメラ制御装置１００に通知する（Ｓ８０９）。カメラ制御装置１００は、通知の受信に応じて、現在位置と記憶位置とが異なることを示すメッセージ、及び、現在位置と記憶位置との差を表示装置３００の画面上に表示させる。すなわち、Ｓ８０９（出力手順）において、ＣＰＵ２００６は、ロータリエンコーダからの出力に応じた駆動部の現在位置と、ＲＯＭ２００８の記憶位置に応じた駆動部の位置とが異なることを示す通知をカメラ制御装置１００へ出力する。この通知は、現在位置と記憶位置の比較結果に応じてカメラ制御装置１００へ出力される。なお、カメラ制御装置１００が通知の受信に応じてリセットボタン１００６の表示を有効にしても良い。
【００３７】
Ｓ８０８で現在位置と記憶位置との差が所定値未満であると判定された場合、ＣＰＵ２００６は、現在位置が不定であることを示すメッセージをカメラ制御装置１００へ送信する（Ｓ８１０）。カメラ制御装置１００は、現在位置が不定であることを示すメッセージに応じた警告を表示装置３００の画面上に表示させると共に、リセットボタン１００６の表示を有効にする。そして、カメラ制御装置１００は、リセットボタン１００６が押下に応じて、カメラ２００に原点出し処理をさせるための原点出しコマンドを送信する。ただし、Ｓ８１０のメッセージの受信に応じて、ユーザ指示によらずに原点だしをさせるようにしても良い。すなわち、カメラ制御装置１００は、例えば、カメラ２００の電源が落とされる前の映像と、カメラ２００の起動後の映像との差が所定の差分以上であり、且つ、記憶位置に応じた位置と現在位置との差が所定差未満の場合、原点だし処理をさせる。
【００３８】
なお、図８では、Ｓ８０５、Ｓ８０９、Ｓ８１０の処理のうちのいずれかの完了に応じて、図８の処理を終了しているが、カメラ２００の稼働中は、Ｓ８０６〜Ｓ８１０の処理を継続させることも可能である。このようにすることで、カメラ２００の稼働中に、例えば、いたずらにより、カメラ２００の撮像方向が変更されたことを、表示装置３００の画面を見たユーザが知ることができる。
また、図８の説明では、カメラ２００に記憶位置が記憶されているかの判定と、位置ずれフラグが有効であるかの判定と、現在位置と記憶位置の差が所定値以上であるかの判定とをカメラ２００が行う例について説明した。しかし、上記の判定の少なくとも一部をカメラ制御装置１００において行うようにしても良い。
【００３９】
上記の判定をカメラ制御装置１００で行う場合におけるカメラ制御装置１００の起動時の処理について図９のフローチャートを用いて説明する。なお、カメラ制御装置１００のＣＰＵ１１０１は、図９の処理を実行するためのプログラムをＲＯＭ１１０３からＲＡＭ１１０２に読み出して実行する。また、本実施形態では、カメラ２００の稼働中に、カメラ制御装置１００が起動したときの処理を説明するが、例えば、カメラ制御装置１００の稼働中に、カメラ２００が起動したときに図９の処理を行うようにしても良い。
カメラ制御装置１００は、カメラ２００から記憶位置と現在位置と位置ずれフラグの情報を取得する（Ｓ９０１）。すなわち、Ｓ９０１（取得手順）において、カメラ制御装置１００は、メモリ（カメラ２００のＲＯＭ２００８）に記憶された位置情報（記憶位置）を取得する。記憶位置は、例えば、カメラ２００の撮像方向を変更するための駆動部（パン、チルト、ローテートモータ）に対する駆動指示（制御コマンド）の駆動量に応じた位置情報である。また、Ｓ９０１において、カメラ制御装置１００は、駆動部（パン、チルト、ローテートモータ）の現在位置に応じた出力をする駆動制御部２０１０からの出力を受信する（受信手順）。本形態の駆動制御部２０１０は、ロータリエンコーダを用いて現在位置を取得する。
【００４０】
また、カメラ制御装置１００は、カメラ２００から映像データを取得し、映像データに応じた映像を表示装置３００の画面上に表示させる（Ｓ９０２）。
また、カメラ制御装置１００は、正常な記憶位置の値を取得したか否かを判定する（Ｓ９０３）。本形態のカメラ制御装置１００は、カメラ２００から取得した現在位置が空であることを示す値であった場合、正常な記憶位置の値を取得していないと判定する。正常な記憶位置の値を取得していないと判定された場合、Ｓ９０４に進み、カメラ制御装置１００は、原点出し処理を薦めるメッセージを表示装置３００の画面上に表示させる。また、カメラ制御装置１００は、リセットボタン１００６の表示を有効に、カメラ操作領域１００３とスライダバー１００４の表示を無効にする。
【００４１】
本形態のカメラ制御装置１００は、表示画面上のリセットボタン１００６が押下されると、原点出しを実行させるための原点出しコマンドをカメラ２００に送信する。カメラ２００は、原点出しコマンドを受信すると、カメラ２００の撮像方向を予め定められた方向に制御し、当該予め定められた方向に対応する位置情報（パン、チルト、ローテート角度）を記憶位置としてＲＯＭ２００８に記憶させる。また、カメラ２００は、原点出しを実行すると、記憶位置をカメラ制御装置１００へ送信する。
【００４２】
なお、本実施形態のカメラ制御装置１００は、表示を無効にする表示部品（例えばカメラ操作領域１００３）をグレー表示にするが、例えば、非表示にしても良い。また、本形態では、ユーザ指示に応じて原点出しコマンドが送信されるが、正常な記憶位置を取得しなかった場合、ユーザ指示によらずに原点だしを行うようにしても良い。
カメラ制御装置１００は、表示画面上の状況表示領域１００５を、カメラ２００が初期状態であることを示す表示にする（Ｓ９０５）。例えば、カメラ制御装置１００は、Ｓ９０５において、状況表示領域１００５を空欄にする。その後、原点出しが完了すると、カメラ制御装置１００は、予め定められた撮像方向（原点）に対応するパン、チルト、ローテート角度を状況表示領域１００５に表示させる。
【００４３】
Ｓ９０３で正常な記憶位置の値が取得されたと判定された場合、Ｓ９０６へ進み、カメラ制御装置１００は、位置ずれフラグが有効であるか否かを判定する。位置ずれフラグが有効であると判定された場合、カメラ制御装置１００は、現在位置と記憶位置の差を取得する（Ｓ９０７）。
さらに、カメラ制御装置１００は、現在の駆動部（パン、チルト、ローテートモータ）の駆動回数が、上限値（所定回数）に達しているか否かを判定する（Ｓ９０８）。各駆動部の駆動回数の情報は、カメラ２００のＲＯＭ２００８に記憶されている。本形態では、パン、チルト、ローテートモータのうち、少なくとも１つの駆動回数が上限値に達している（所定回数以上である）と判定されると、Ｓ９１１に進む。
【００４４】
Ｓ９０８で駆動回数が上限値に達していないと判定された場合、Ｓ９０９へ進み、カメラ制御装置１００は、Ｓ９０７で取得した差の情報を含む警告メッセージを表示画面上に表示させ、リセットボタン１００６の表示を有効にする。なお、現在位置と記憶位置の差が所定値未満であると判定された場合、現在位置が不定であることを示す警告を表示装置３００の画面上に表示させると共に、リセットボタン１００６の表示を有効にする。
【００４５】
警告メッセージを見たユーザが、表示画面上のリセットボタン１００６を押下すると、カメラ制御装置１００は、原点出しコマンドをカメラ２００へ送信し、原点出し処理が行われる。すなわち、カメラ制御装置１００の表示制御部１１０４は、Ｓ９０９（出力手順）において、ロータリエンコーダからの出力に応じた駆動部の現在位置と、ＲＯＭ２００８の記憶位置に応じた駆動部の位置とが異なることを示す通知メッセージを表示装置３００へ出力する。表示装置３００は、通知メッセージに応じて、警告を表示させる。また、本形態のカメラ制御装置１００は、警告を表示した後のユーザ指示に応じて、原点出しコマンドをカメラ２００へ送信する。ただし、ユーザ指示を待たずに原点出しコマンドを送信するようにしても良い。
【００４６】
一方、Ｓ９０８で駆動回数が上限値（所定回数）に達していると判定された場合、Ｓ９１０へ進み、カメラ制御装置１００は、表示画面上に駆動回数に関する警告を表示させる。また、カメラ制御装置１００は、表示画面上のリセットボタン１００６の表示を無効にすると共に、カメラ操作領域１００３とスライダバー１００４のうち、駆動回数が上限値に達している駆動部に対応する表示部品の表示を無効にする。駆動回数の情報は、カメラ２００のＲＯＭ２００８に記憶されており、Ｓ９０８で取得される。
【００４７】
すなわち、カメラ制御装置１００は、位置ずれフラグが有効で、且つ、駆動回数が上限値に達していると判定された場合、現在位置と記憶位置の差に関する警告を表示画面上に表示させる一方で、リセットボタン１００６の表示を無効にする。リセットボタン１００６の表示を無効にすることで、ユーザは、カメラ２００の原点出しができないことがわかる。
【００４８】
Ｓ９０６で位置ずれフラグが無効であると判定された場合、Ｓ９１３へ進み、カメラ制御装置１００は、Ｓ９０１で取得した記憶位置に基づいてユーザインタフェース１００１を表示する。すなわち、カメラ制御装置１００は、正常な記憶位置の値を取得し、カメラ２００の電源が落とされる前の撮像映像とカメラ２００の電源が投入されたときの撮像映像との差が所定値未満であった場合、記憶位置の情報に基づいてユーザインタフェースを表示させる。具体的には、カメラ２００からの記憶位置に基づいて、状況表示領域１００５にカメラ２００のパン角度、チルト角度、ローテート角度を表示する。
【００４９】
なお、図９では、Ｓ９０５、Ｓ９１０、Ｓ９１２、Ｓ９１３の処理のいずれかの完了に応じて、図９の処理を終了しているが、カメラ制御装置１００の稼働中は、Ｓ９０６〜Ｓ９１３の処理を継続させることも可能である。このようにすることで、カメラ２００の稼働中に、例えば、いたずらによりカメラ２００の撮像方向が変更されたことを、表示装置３００の画面を見たユーザが知ることができる。
【００５０】
また、上記の本形態では、パンモータ２０１１、チルトモータ２０１２、ローテートモータ２０１３の現在位置を駆動制御部２０１０が取得できる構成を説明したが一部の現在位置のみを駆動制御部２０１０が取得できるようにしても良い。例えば、駆動制御部２０１０がパンモータ２０１１の現在位置のみを、ロータリエンコーダで取得できる構成とした場合、パンモータ２０１１から取得される現在位置と、パンモータ２０１１に関する記憶位置とが異なる場合に、原点だしをさせることができる。この原点だしによって、パンモータ２０１１のみならず、チルトモータ２０１２やローテートモータ２０１３の記憶位置をリセットすることができる。
【００５１】
すなわち、カメラ制御装置１００は、パンモータ２０１１の現在位置と、ＲＯＭ２００８から取得した位置情報に応じたパンモータ２０１１の位置との差が所定値以上の場合、原点だし処理を実行させるための原点だしコマンドを送信するようにしても良い。この場合、原点出しコマンドを受けたカメラ２００は、パンモータ２０１１、チルトモータ２０１２を予め定められた方向に制御し、当該予め定められた方向に対応するパンモータ２０１１、チルトモータ２０１２の位置情報を記憶位置として記憶させる。このようにすれば、現在位置を出力するための部品（ロータリエンコーダ）をより少なくすることができる。また、上記の処理を、カメラ２００で行うようにしても可能である。
【００５２】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
0005818487.tif 000002
【図２】
0005818487.tif 000003
【図３】
0005818487.tif 000004
【図４】
0005818487.tif 000005
【図５】
0005818487.tif 000006
【図６】
0005818487.tif 000007
【図７】
0005818487.tif 000008
【図８】
0005818487.tif 000009
【図９】
0005818487.tif 000010
【図１０】
0005818487.tif 000011