(57)【要約】【課題】  端を用いて位置制御の初期化を行う場合において、端の検出時間を短縮し、端の誤検出を軽減する撮像装置を提供する。【解決手段】  被写体を撮像する撮像部を有する撮像装置であって、前記撮像部が撮像する被写体を変更する制御を行う変更手段と、前記変更手段で前記撮像部が撮像する範囲を変更する制御を行う際に、前記撮像部で撮像される被写体の動きを判定する判定手段と、前記判定手段の結果に応じて、前記変更手段を制御するための原点位置を決定する決定手段とを備える。【選択図】  図２
2016066955.tif 000002
【特許請求の範囲】
【請求項１】
被写体を撮像する撮像部を有する撮像装置であって、
前記撮像部が撮像する被写体を変更する制御を行う変更手段と、
前記変更手段で前記撮像部が撮像する被写体を変更する制御を行う際に、前記撮像部で撮像される被写体の動きを判定する判定手段と、
前記判定手段の結果に応じて、前記変更手段を制御するための原点位置を決定する決定手段と、
を備えることを特徴とする撮像装置。
【請求項２】
前記変更手段は、
前記撮像部の撮像する被写体を変更するためのパン駆動手段、チルト駆動手段、ローテーション駆動手段、ズーム駆動手段のうち少なくとも一つを含むこと特徴とする請求項１に記載の駆動装置。
【請求項３】
前記変更手段が変更可能な範囲を制限するための制限手段を更に備え、
前記判定手段は前記変更手段が前記制限手段に達することによる被写体の動きを判定することを特徴とする請求項１または２に記載の撮像装置。
【請求項４】
前記判定手段は前記撮像部で撮像される映像信号に基づいて被写体の動きの有無を判定し、
前記決定手段は前記判定手段によって被写体の動きが無いと判定した位置を前記変更手段を制御するための原点位置と決定することを特徴とする請求項１乃至３のいずれか１項に記載の撮像装置。
【請求項５】
前記判定手段は、
前記撮像部で撮像される映像信号に基づいて被写体の動き量を検出する検出手段と、
前記検出手段の検出結果と前記撮像装置が保持する閾値とを比較する比較手段とを含み、前記判定手段は前記比較手段の比較結果に基づいて前記被写体の動きを判定することを特徴とする請求項１乃至３のいずれか１項に記載の撮像装置。
【請求項６】
前記変更手段で前記撮像部が撮像する範囲を変更する制御を行う際の音を取得する音声取得手段と、
前記取得手段で取得した音のスペクトルと前記撮像装置に保持された音のスペクトルを比較する比較手段と、
前記比較手段の比較結果に基づいて前記被写体の動きを判定することを特徴とする請求項１乃至３のいずれか１項に記載の撮像装置。
【請求項７】
前記判定手段は、
前記撮像部で撮像される映像信号に基づいて被写体の動きベクトルを検出する検出手段と、
前記検出手段の検出結果と前記撮像装置に保持される所定の動きベクトルとを比較する比較手段とを含み、
前記判定手段は前記比較手段の比較結果に基づいて前記被写体の動きを判定することを特徴とする請求項１乃至３のいずれか１項に記載の撮像装置。
【請求項８】
前記判定手段は、
前記撮像部で撮像される映像信号に基づいて被写体の動きベクトルを検出する検出手段と、
前記検出手段の検出結果と前記変更手段が前記制限手段に達する際の動きベクトルとを比較する比較手段とを含み、
前記判定手段は前記比較手段の比較結果に基づいて前記被写体の動きを判定することを特徴とする請求項３に記載の撮像装置。
【請求項９】
前記変更手段を少なくとも第一の速度及び前記第一の速度よりも遅い第二の速度で制御を行う制御手段と、
前記比較手段の比較結果に基づいて前記変更手段が前記制限手段に達したか否かを判断する判断手段とを更に備え、
前記制御手段は前記判定手段が前記撮像部で撮像される被写体の動きを判定する際に前記変更手段を第一の速度で制御し、
前記制御手段は前記変更手段が前記制限手段に達したと前記判断手段が判断した際に前記変更手段を前記第二の速度で制御することを特徴とする請求項８に記載の撮像装置。
【請求項１０】
被写体を撮像する撮像部を有する撮像装置の制御方法であって、
前記撮像部が撮像する被写体を変更する制御を行う変更ステップと、
前記変更ステップで前記撮像部が撮像する被写体を変更する制御を行う際に、前記撮像部で撮像される被写体の動きを判定する判定ステップと、
前記判定ステップの結果に応じて前記変更ステップを制御するための原点位置を決定する決定ステップと、
を備えることを特徴とする撮像装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像手段を備えた撮像装置に関し、例えば撮像手段を回動する回動手段を備える撮像装置に関する。
【背景技術】
【０００２】
撮像装置の撮像方向の制御をするためには、エンコーダーやフォトセンサーなどの位置検出機構を使用して制御する方法や、撮像方向の駆動範囲の端を原点として制御する方法がある。
【０００３】
また、特許文献１には撮像方向を制御するための精度を向上させる方法として、パン方向の駆動後の被写体の映像データを利用し、ずれた量だけ位置を補正する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−３４１３３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
駆動範囲の端を位置制御の原点とする撮像装置は、位置制御の初期化を行うために、端へ突き当てる操作をおこなう。この際、端に対する位置が不明であるため、長い駆動時間を設定しなければいけない。
【０００６】
しかし、端までの到達時間は位置によって異なる。そのため、端に突き当てた状態で駆動を続けなければならず、端を検出するために余分な時間がかかってしまう場合や誤判定をしてしまう場合があった。
【０００７】
そこで、本発明の目的は、端を用いて位置制御の初期化を行う場合において、端の検出時間を短縮し、端の誤検出を軽減する撮像装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明は、被写体を撮像する撮像部を有する撮像装置であって、前記撮像部が撮像する被写体を変更する制御を行う変更手段と、前記変更手段で前記撮像部が撮像する被写体を変更する制御を行う際に、前記撮像部で撮像される被写体の動きを判定する判定手段と、前記判定手段の結果に応じて、前記変更手段を制御するための原点位置を決定する決定手段と、を備えることを特徴とする。
【発明の効果】
【０００９】
本発明によれば位置制御の初期化の時間を短縮し、誤検出を軽減することができる。
【図面の簡単な説明】
【００１０】
【図１】本実施の形態の監視カメラシステムを示すブロック構成図である。
【図２】実施例１の撮像装置の制御の動作を示すフローチャートである。
【図３】実施例２の撮像装置の制御の動作を示すフローチャートである。
【図４】実施例３の撮像装置の制御の動作を示すフローチャートである。
【図５】実施例４の撮像装置の制御の動作を示すフローチャートである。
【図６】実施例５の撮像装置の制御の動作を示すフローチャートである。
【図７】実施例３の撮像装置のモーター音の検出方法を説明する図である。
【図８】撮像装置の雲台の構成を説明する概念図である。
【発明を実施するための形態】
【００１１】
以下に、本発明の好ましい実施の形態を、添付の図面に基づいて詳細に説明する。なお、以下の実施例において示す構成は一例に過ぎず、本発明は、図示された構成に限定されるものではない。
【００１２】
（実施例１）
以下、各図を参照して、本発明の第１の実施例について説明する。
【００１３】
図１は、本発明の実施形態にかかわる撮像システムの一例である監視カメラシステムの構成図である。このシステムはカメラサーバー１００とカメラクライアント１２０からなる。カメラサーバー１００はＬＡＮ等のネットワークに接続され、ネットワーク経由で複数のカメラクライアント２００と通信可能に構成されている。カメラクライアント２００は後述するネットワーク１３０を介して、カメラサーバー１００の撮像映像の表示、録画を行うことができる。
【００１４】
本実施例におけるカメラサーバー１００は、ネットワーク１３０に接続され、典型的には、監視カメラである。本実施例におけるカメラサーバーは撮像装置の一例である。
【００１５】
本実施例におけるカメラクライアント２００は、ネットワーク１３０に接続されるコンピュータ装置として構成されており、典型的には、パーソナルコンピュータ（以下、ＰＣと称することがある）などの汎用コンピュータである。本実施例におけるカメラクライアントは外部装置の一例である。
【００１６】
撮像部１０１はズーム、フォーカス、露出などに関する不図示の制御回路を備え、レンズ制御部１０８からの制御信号等によって光学系を制御して映像を撮像する。撮像した映像は映像信号として映像処理部１０３に送信され、符号化回路１０４で符号化等を行い、映像データを生成する。映像データの符号化の方式としては、例えばＪＰＥＧやＨ．２６４などの手法があるが本実施形態は符号化の方式に依存するものではない。
【００１７】
撮像部１０１はパン方向に回転することを可能にするため、撮像部１０１が搭載された雲台部１０２をモーター１１１で駆動することができる。また、モーター１１１は雲台制御部１０９の制御によってパン方向やチルト方向の所望の位置に回転することができる。なお、本実施例において、雲台部１０２は撮像する方向を変更可能するための変更部に相当する。
【００１８】
また、マイク１１２から入力される監視対象の音声データは、音声処理部１１３に送信され、符号化回路１０４で音声データの符号化を行う。
【００１９】
映像処理部１０３、音声処理部１１３、符号化部１０４、ＣＰＵ１０５、ＲＯＭ１０６、ＲＡＭ１０７、レンズ制御部１０８、雲台制御部１０９は内部バスを通じて接続される。そして、内部バスを用いて、各ブロック間で映像データ等のデータ通信をおこなう。なお、ＣＰＵ１０５は、カメラサーバー１００の全体を制御する。また、ＲＯＭ１０６、ＲＡＭ１０７は各種パラメータ等を保持するメモリ部の一例である。そして、ＣＰＵ１０５等が実行するプログラム格納領域、プログラム実行中のワーク領域、撮像部１０１において生成する撮像画像の格納領域、データの格納領域等として使用される。
【００２０】
また、本実施例のカメラサーバー１００は、通信部１１０を通じてネットワーク１３０に映像データや音声データを送信したり、撮像アングルの要求信号を受信したりする機能を備える。なお、ネットワーク１３０は、例えばＥｔｈｅｒｎｅｔ（登録商標）等の通信規格を満足する複数のルータ、スイッチ、ケーブル等から構成される。本実施例においては、カメラサーバー１００との通信を行うことができるものであればその通信規格、規模、構成を問わない。
【００２１】
例えば、ネットワーク１３０は、インターネットや有線ＬＡＮ（Ｌｏｃａｌ  ＡｒｅａＮｅｔｗｏｒｋ）、無線ＬＡＮ（Ｗｉｒｅｌｅｓｓ  ＬＡＮ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等により構成されてもよい。なお、本実施例におけるカメラサーバー１００は、例えば、ＰｏＥ（Ｐｏｗｅｒ  Ｏｖｅｒ  Ｅｔｈｅｒｎｅｔ（登録商標））に対応していても良く、ＬＡＮケーブルを介して電力を供給されても良い。
【００２２】
また、カメラクライアント１２０は、カメラサーバー１００で撮像した映像や音声を再生可能であり、かつカメラサーバー１００の撮像アングルを遠隔制御することが可能である。カメラクライアント１２０はネットワーク１３０経由で、カメラ制御指令である制御コマンドをカメラに送信することにより、カメラサーバー１３０の各種パラメータの設定等を行うことができる。
【００２３】
本実施例では、電源ＯＮ時やユーザーからの初期化指示等により、雲台制御部１０９で原点位置の初期化を行う。本初期化動作において、ＣＰＵ１０５は、映像処理部１０３に入力された映像データから被写体の動きを検出し、動きが停止した場合は、原点であるメカ端に突き当たったと判定する。これらの初期化処理は、ＣＰＵ１０５が実行する。そして、本処理手順を図２のフローチャートを用いて説明する。
【００２４】
ここで、雲台の可動部をメカ端へ突き当てる操作について図８の概念図を用いて説明する。図８（ａ）は、撮像装置の雲台部の概念図であり、８０１は撮像部、８０２は可動部、８０３は固定部である。可動部８０４にはパン方向に駆動するためのガイド８０４を備えており、固定部８０３にはガイド８０４の走行上にガイド８０４のストッパーとなるメカ端８０５を備えている。また、雲台のパン方向はパン軸Ａを中心に可動部８０２を駆動モーターで回転することが可能であり、同様に、雲台のチルト方向はチルト軸Ｂを中心に撮像部８０１を駆動モーターで回転する事ができる。
【００２５】
図８（ｂ）はメカ端８０５に対して可動部８０４のガイドを突き当てる操作を説明する概念図である。ここで、パン軸Ａの回転速度を３０°／秒にした場合、メカ端の反対端からの駆動を想定すると、３６０°÷３０°＝１２秒間を駆動時間として設定すれば、必ずメカ端８０８に突き当たるので、駆動時間を１２秒間として固定する必要がある。
【００２６】
なお、本実施例において、雲台の可動部を制限するために用いられるメカ端は、制限部の一例である。
【００２７】
図２において、ＣＰＵ１０５は、初期化処理が開始されると、ステップＳ２０１に処理を進める。ステップＳ２０１において、ＣＰＵ１０５は、撮像部１０１で撮像した被写体の映像データを映像処理部１０３に入力するように制御する。そして、ステップＳ２０２に処理を進める。
【００２８】
ステップＳ２０２において、ＣＰＵ１０５は、メカ端を検出するために、雲台制御部１０９に対して、モーター１１１を駆動し、パン方向のメカ端への突き当て動作を開始する制御を行う。この際、雲台制御部１０９は雲台の可動部の位置を認識できていないので、メカ端への突き当てを確実におこなうために一定方向に連続駆動を開始する。そして、ステップＳ２０３に処理を進める。
【００２９】
ステップＳ２０３において、ＣＰＵ１０５は、映像処理部１０３で被写体の動き検出を開始する制御を行う。この動き検出は一部の被写体の動きを検出することが目的ではなく、雲台の動きを検出することが目的である。したがって、パン方向の動きと、人や車等の被写体の動きが撮像アングル上で同じ動き量になってしまうなどを防止するため、実際に動いている被写体を動き検出の対象外とする。対象外とする一例として、動き検出を行うエリアを画面の４隅に設定して雲台の動きを判定する方法や、動き検出された領域の画面上の面積比によって雲台の動きを判定する方法などを用いてもよい。そして、ステップＳ２０４に処理を進める。なお、事前にメカ端へ突き当てた際の画像を撮像しておいて、その画像と初期化動作時に撮像した画像との差分によって動き検出を行ってもよい。また、初期化動作時は撮像部１０１に含まれるズーム機構を用いて、望遠側で画像を撮像するようにしてもよい。動きを検出するために複数枚の画像を連続して撮像し、その複数枚の画像の差分を抽出することによって、動き検出を行ってもよい。
【００３０】
ステップＳ２０４において、ＣＰＵ１０５は、ステップＳ２０３にて映像処理部１０３で検出した被写体の動きが停止しているか否かを判定する。判定結果として、被写体の停止を検出した場合は、メカ端に突き当たったと判定する。そして、ステップＳ２０５に処理を進める。一方で、判定結果として停止していない場合は、処理をステップＳ２０３に戻す。
【００３１】
ステップＳ２０５において、ＣＰＵ１０５は、モーター１１１の駆動を停止し、メカ端への突き当て動作を停止する。そして、ステップＳ２０６に処理を進める。
【００３２】
ステップＳ２０６において、ＣＰＵ１０５は、メカ端の位置をパン方向の原点位置と決定するために、雲台制御部１０９のパン位置カウンタの初期化や、カメラクライアント１２０に対してメカ端への駆動の終了の通知を行う。そして、処理を終了する。
【００３３】
以上説明したように、被写体の映像データの動きを検出し、動きが停止した場所をメカ端と判定することで、パン方向のメカ端に到達したら即時にモーター駆動を停止することができる。したがって、余分なモーター駆動時間が削減できメカ端検出までの時間を減らすことが可能になる。
【００３４】
本実施例では、パン方向のメカ端の検出について説明したが、カメラの制御によって被写体の動きが発生する。雲台のチルト駆動方向やレンズのズーム駆動方向、ローテーション駆動方向など、カメラの制御によって被写体の動きが発生する機能については、本実施例と同様に映像データの動き検出を利用してメカ端を検出することが可能である。
【００３５】
また、本実施例では、カメラサーバー１００の動き検出機能を利用した方法を説明したが、カメラクライアント１２０において動き検出機能を設け、カメラサーバー１００から受信した被写体の映像データを利用して同様の制御をおこなうことも可能である。カメラクライアント１２０で動き検出をおこなうことは、カメラサーバー１００の負荷の軽減や、カメラクライアント１２０による複数のカメラの集中管理をおこなうために有効な方法である。
【００３６】
なお、本実施例においてはパン方向における動作を示したが、チルト方向、ズーム方向、ローテーション方向においても、本実施例の動作を行うことで、同様の効果を得ることができる。
【００３７】
なお、本実施例においては、映像処理部１０３で被写体の動きの検出及び判定を行っているがＣＰＵ１０５等が行うようにしてもよい。
【００３８】
（実施例２）
実施例１では、メカ端に突き当て、原点検出を行う動作を例示した。しかし、駆動機構の不具合によって脱調が発生する場合もある。実施例２では、映像処理部１０３に入力された映像データから被写体の動き量を検出する。そして、検出結果に応じてメカ端への突き当てによる脱調か、駆動機構の不具合による脱調かを判定する処理手順を、図３のフローチャートを用いて説明する。また、本実施例では、第１の実施例との相違点を中心に行う。図１に示した監視カメラシステムの構成は実施例１と同様である。また、これらの処理は、ＣＰＵ１０５が実行する。
【００３９】
図３において、ＣＰＵ１０５は、初期化処理が開始されると、ステップＳ３０１に処理を進める。
【００４０】
ステップＳ３０１及びステップＳ３０２は、それぞれ図２のステップＳ２０１及びステップＳ２０３と同様であるため説明を省略する。
【００４１】
ステップＳ３０３において、ＣＰＵ１０５は、メカ端への突き当て動作時における被写体の動き量の予測値をＲＯＭ１０６またはＲＡＭ１０７から読み出して映像処理部１０３に設定する。そして、ステップＳ３０４に処理を進める。ここで、雲台が駆動する際の被写体の動き量は、ズーム量が大きいほど被写体の動きが大きくなるなど、動き量の検出方法、モーターの駆動速度、ズーム量、被写体までの距離などによって異なる。そのため、これらの条件に応じた被写体の動き量をテーブルとして事前に用意しておき、メカ端への突き当て動作の条件に応じて予測値としてＲＯＭ１０６またはＲＡＭ１０７等に記憶させておく。なお、予測値はテーブルとして記憶させるのではなく、所定の演算式によって演算して求めてもよい。本実施例において、予測値は被写体の動きの検出結果を比較する閾値に相当する。
【００４２】
ステップＳ３０４において、ＣＰＵ１０５は、映像処理部１０３で被写体の動きに加えて動き量の検出を開始する制御を行う。ここではステップＳ３０３で設定した予測値に対応した検出方法で被写体の動き量を検出するが、雲台の動き量を検出することが目的であるため、実際に動いている被写体の動き量については検出の対象外とする。また、被写体の動き量の検出については、映像データのフレーム間やブロック間の動きの推定や補償を行うなど、手法については様々であるが本実施形態は検出方式に依存するものではない。そして、ステップＳ３０５に処理を進める。
【００４３】
ステップＳ３０５において、ＣＰＵ１０５は、ステップＳ３０４にて映像処理部１０３で検出した被写体の動き量と、ステップＳ３０３で読み出した予測値の比較を行う。比較結果として予測値に対して動き量が少ない場合は、処理をステップＳ３０６に進める。一方で、比較結果として予測値に対して動き量が多い場合は、処理を戻す。
【００４４】
ステップＳ３０６において、ＣＰＵ１０５は、ステップＳ３０５で被写体の動きが予想値に対して少ないと判定された場合に、更に被写体の動きが停止しているか否かを判定する。判定結果として、被写体の停止を検出した場合は、メカ端に突き当たったと判定する。そして、ステップＳ３０８に処理を進める。一方で、判定結果として停止していない場合は、ステップＳ３０７処理を進める。
【００４５】
ステップＳ３０７において、ＣＰＵ１０５は、ステップＳ３０６にて被写体が停止していないと判定した場合、つまり、予測値に対し動き量が少ない場合は、脱調など駆動機構等に異常が発生したと判断する。そして、何らかの異常が発生したことをカメラクライアント１２０に通知して処理を終了する。
【００４６】
また、ステップＳ３０８において、ＣＰＵ１０５は、ステップＳ３０６にて被写体が停止していると判定した場合、メカ端に突き当たったと判定し、ステップＳ３０７でメカ端に突き当たったことをカメラクライアント１２０に通知する。また、ＣＰＵ１０５は、メカ端の位置をパン方向の原点位置と決定するために、雲台制御部１０９のパン位置カウンタの初期化や、カメラクライアント１２０に対してメカ端への駆動の終了の通知を行う。そして処理を終了する。
【００４７】
以上、説明したように、被写体の映像データより動きの有無だけではなく、動き量を検出し、動き量に応じてメカ端に到達したか、異常が発生したかを判定することで、メカ端の誤検出を防止することが可能になる。
【００４８】
本実施例では、パン方向の動き量検出によるメカ端の判定について説明した。しかし、雲台のチルト方向の動き量や、レンズのズーム方向の動き量など、カメラの制御によって被写体の動き量が変化するする機能については、被写体の動き量を利用してメカ端の誤検出を防止することが可能である。
【００４９】
（実施例３）
実施例２では、動きの有無に加えて動き量を検出して原点検出を行う動作を例示した。しかし、メカ端に突き当ての際にバックラッシュが発生する場合は、動きの有無と動き量からだけでは、適切に原点検出できない場合がある。実施例３では、映像処理部１０３に入力された被写体の映像データから被写体の動きの方向を検出する。そして、命令に対して反転することを検出し、さらに反転時の動きの特性からメカ端の突き当たりによるバックラッシュか、障害物等の突き当たりによるバックラッシュかを判定する処理手順を、図４のフローチャートを用いて説明する。また、本実施例では、第１の実施例との相違点を中心に行う。図１に示した監視カメラシステムの構成は実施例１と同様である。また、これらの処理は、ＣＰＵ１０５が実行する。
【００５０】
図４において、ＣＰＵ１０５は、初期化処理が開始されると、ステップＳ４０１に処理を進める。
【００５１】
ステップＳ４０１及びステップＳ４０２は、それぞれ図２のステップＳ２０１及びステップＳ２０３と同様であるため説明を省略する。
【００５２】
ステップＳ４０３において、ＣＰＵ１０５は、映像処理部１０３で被写体の動き方向の検出を開始する制御を行う。この動き検出は一部の被写体の動き方向を検出するのではなく、雲台の動き方向を検出することが目的である。したがって、動き方向の検出の対象を全画面として設定するなど、動いている被写体の方向検出は対象外とする設定にする。また、被写体の動き方向の検出については、様々な手法があるが本実施形態は検出方式に依存するものではない。そして、ステップＳ４０４に処理を進める。
【００５３】
ステップＳ４０４において、ＣＰＵ１０５は、ステップＳ３０３にて映像処理部１０３で検出した被写体の動き方向が、パンの駆動命令に対して反転したか否かを判定する。動く方向が反転したことを検出した場合は、ステップＳ４０５に処理をすすめる。一方で、反転したことが検出できない場合は、ステップＳ４０３に処理を戻す。
【００５４】
ステップＳ４０５において、ＣＰＵ１０５は、ステップＳ４０４において被写体の動き方向が反転したと検出された時の動きベクトルを解析する。メカ端への突き当て時のバックラッシュは、メカ端部の構造や材料などからカメラ固有の特性を持っている。また、駆動中に障害物などに突き当たった時のバックラッシュもギヤ等の駆動系の構造からカメラ固有の特性を持っている。したがって、メカ端や障害物に突き当たった際の映像反転の特性として、バックラッシュによる戻り量や、モーターの脱調による突き当てと反転との繰り返し周期などのバックラッシュの条件を事前に数値化しておく。そして、実際の被写体の動きベクトルの比較用としてＲＯＭ１０６またはＲＡＭ１０７等に記憶させておくことが可能である。そして、ステップＳ４０６処理を進める。
【００５５】
ステップＳ４０６では、ステップＳ４０５で解析した反転時の動きベクトルの特性と、事前に登録したメカ端のバックラッシュの特性を比較する。つまり、この記憶させている条件とステップＳ４０３で検出したバックラッシュ状態を比較することで、メカ端に突き当たったかどうかを判定することができる。判定した結果として、メカ端のバックラッシュ特性と同じ場合は、メカ端に突き当たったと判定し、ステップＳ４０８に処理を進める。
【００５６】
一方、ステップＳ４０６で事前に登録したメカ端のバックラッシュ特性と異なる特性のであると判定された場合は、ステップＳ４０７に処理を進める。
【００５７】
ステップＳ４０７において、ＣＰＵ１０５は、パン駆動経路の障害物による脱調などが考えられるため、異常が発生したことをカメラクライアント１２０に通知する。具体的にはエラー情報等をネットワーク１３０経由でカメラクライアントに向けて送信する。そして、処理を終了する。
【００５８】
ステップＳ４０８において、ＣＰＵ１０５は、メカ端に突き当たったことをカメラライアント１２０に通知する。具体的には正常終了情報等をネットワーク１３０経由でカメラクライアントに向けて送信する。また、ＣＰＵ１０５は、メカ端の位置をパン方向の原点位置と決定するために、雲台制御部１０９のパン位置カウンタの初期化や、カメラクライアント１２０に対してメカ端への駆動の終了の通知を行う。そして、処理を終了する。
【００５９】
以上、説明したように、被写体の動きの反転を検出し、その際のバックラッシュの特性に応じてメカ端に到達したときの反転か、異常が発生したときの反転か等を判定することで、メカ端の誤検出を防止することが可能になる。
【００６０】
本実施例では、パン方向の動きの反転による判定について説明した。しかし、雲台のチルト方向や、レンズのズーム方向など、メカ端の突き当て時のバックラッシュ等で被写体の動きが反転する機能については、動きの反転の特性を利用してメカ端の誤検出を防止することが可能である。
【００６１】
（実施例４）
実施例３では、被写体の動きの反転を検出し、その際のバックラッシュの特性に応じてメカ端に到達したときの反転か、異常が発生したときの反転か等を判定する動作を例示した。しかし、メカ端に突き当てる際に発生するバックラッシュによってメカ端からずれた状態で停止してしまう場合もある。この場合に、原点の誤差を補正するために、映像処理部１０３に入力された被写体の映像データから被写体の動きの方向が命令に対して反転すること検出し、駆動速度を低速にして再度メカ端に突き当てる処理手順を、図５のフローチャートを用いて説明する。また、本実施例では、第１の実施例との相違点を中心に行う。図１に示した監視カメラシステムの構成は実施例１と同様である。また、これらの処理は、ＣＰＵ１０５が実行する。
【００６２】
図５において、ＣＰＵ１０５は、初期化処理が開始されると、ステップＳ５０１に処理を進める。
【００６３】
ステップＳ５０１からステップＳ５０４までは、夫々図４で説明したステップＳ４０１からステップＳ４０４と同様であるため説明を省略する。
【００６４】
ステップＳ５０５において、ＣＰＵ１０５は、ステップＳ５０４にて映像処理部１０３で被写体の動き方向を検出し、動き方向がパンの駆動命令に対して反転したこと検出した場合は、パンモーターの駆動を停止させる。この時、パン方向の位置は突き当て時のバックラッシュのためメカ端の位置からずれている状態である。そのため、再度メカ端への突き当てが必要となるが、この際、バックラッシュによる反転が発生しないように駆動速度を低下させてメカ端への突き当て動作を行う。そして、ステップＳ５０６に処理を進める。
【００６５】
ステップＳ５０６において、ＣＰＵ１０５は、駆動速度をバックラッシュによる反転が生じない速度に設定して、再度メカ端への突き当て動作を行う制御を行う。そして処理をステップＳ５０７に進める。
【００６６】
ステップＳ５０７において、ＣＰＵ１０５は、映像処理部１０３で被写体の動き検出を開始する制御を行う。この動き検出は一部の被写体の動きを検出することが目的ではなく、雲台の動きを検出することが目的である。したがって、パン方向の動きと、人や車等の被写体の動きが撮像アングル上で同じ動き量になってしまうなどを防止するため、実際に動いている被写体を動き検出の対象外とする。そして、ステップＳ５０８に処理を進める。
【００６７】
ステップＳ５０８において、ＣＰＵ１０５は、ステップＳ５０７にて映像処理部１０３で検出した被写体の動きが停止しているか否かを判定する。判定結果として、被写体の停止を検出した場合は、メカ端に突き当たったと判定する。そして、ステップＳ５０９に処理を進める。一方で、判定結果として停止していない場合は、処理をステップＳ５０７に戻す。
【００６８】
ステップＳ５０９において、ＣＰＵ１０５は、パンモーターの動作を停止する制御を行う。この時、パン方向の位置はバックラッシュのない速度にして突き当てたため、メカ端の位置に停止している。そして、処理をステップＳ５１０に進める。
【００６９】
ステップＳ５１０において、ＣＰＵ１０５は、メカ端の位置をパン方向の原点位置と決定するために、雲台制御部１０９のパン位置カウンタの初期化や、カメラクライアント１２０に対してメカ端への駆動の終了の通知を行う。そして処理を終了する。
【００７０】
以上、説明したように、被写体の動きの反転を検出したら、メカ端の突き当て速度を落として再度突き当てることで、バックラッシュ等のメカ端の位置のずれを無くすことが可能になる。メカ端の位置のずれを修正することが可能であるため、最初のメカ端への突き当ての駆動速度は最高速にすることも可能になり、最初から低速で駆動する場合と比較してもメカ端を検出するまでの時間を低減することが可能になる。
【００７１】
本実施例では、パン方向の制御方法について説明したが、雲台のチルト方向や、レンズのズーム方向など、カメラの制御によって駆動速度が変更できる機能については、同様の制御方法でメカ端の検出時間を低減することが可能になる。
【００７２】
（実施例５）
実施例１では、被写体の動きからメカ端を検出する動作を例示した。しかし、メカ端の検出は必ずしも被写体の動きから行う必要はない。実施例５では、実施例１の図２で説明した被写体の動きの停止を判定するステップＳ２０４において、メカ端突き当て時のモーターの駆動音をマイク１１２にて検出する。そして、その検出結果を動き停止の判定方法として利用する処理手順を図６のフローチャートと図７を用いて説明する。また、本実施例では、第１の実施例との相違点を中心に行う。図１に示した監視カメラシステムの構成は実施例１と同様である。また、これらの処理は、ＣＰＵ１０５が実行する。
【００７３】
図２における停止を判定するステップＳ２０４の判定動作に伴い、ＣＰＵ１０５は、図６のフローチャートの処理を開始する。
【００７４】
ステップＳ６０１において、ＣＰＵ１０５は、マイク１１２から入力される、モーター駆動音を含む音声信号（図７（ａ））を一定時間のデータに変換するため窓関数をかける。そして、ステップＳ６０２に処理を進める。
【００７５】
ステップＳ６０２において、ＣＰＵ１０５は、窓関数をかけたデータをフーリエ変換して周波数毎のパワーである音声スペクトルを求める。ここで、音声スペクトル図７（ｂ）に対して、環境音による成分を除去して所望の周波数帯域だけ抽出するバンドパスフィルタを使用する。これによって、音声スペクトル図７（ｂ）のように監視カメラが設置されている環境音を低減し、図７（ｃ）のモーター駆動音に関連した周波数帯を抜き出すことが可能になる。そして、ステップＳ６０３に処理を進める。
【００７６】
ステップＳ６０３において、ＣＰＵ１０５は、モーターの駆動状態に対応した事前に登録されている登録スペクトルをＲＯＭ１０６またはＲＡＭ１０７から読み出す。ここで、本実施例において登録スペクトルは図７（ｄ）の通常駆動時のモーター駆動音の音声スペクトルとメカ端突き当て時のモーター駆動音の音声スペクトルである。通常駆動時の音声スペクトルは周波数範囲ＦｎとレベルＬｎ、メカ端突き当て時の音声スペクトルは周波数範囲ＦｍとレベルＬｍの特性である。これらの情報は音声処理部１１３にマイク１１２から入力される音声信号との比較用として製品出荷時等に事前に登録されている。そして、ステップＳ６０４に処理を進める。
【００７７】
ステップＳ６０４において、ＣＰＵ１０５は、ステップＳ６０２で求めたマイクから入力された音声スペクトル（図７（ｃ））と登録スペクトル（図７（ｄ））を比較して、通常時のモーター駆動音以外の音が発生しているか否かを判定する。通常の駆動時の音のみが発生している場合は処理を終了する。一方で、通常時の音以外の音が発生している場合は、ステップＳ６０５に処理を進める。
【００７８】
ステップＳ６０５では、ステップＳ６０２で求めたマイクから入力された音声スペクトル（図７（ｃ））と登録スペクトル（図７（ｄ））を比較して、メカ端に突き当たっている時のモーター駆動音が発生しているか否かを判定する。ここで、メカ端に突き当たっている時のモーター駆動音が発生していると判定した場合は、ステップＳ６０６に処理を進める。一方で、メカ端に突き当たっている時のモーター駆動音以外の音が発生していると判定した場合は、ステップＳ６０７に処理を進める。
【００７９】
ステップＳ６０６において、ＣＰＵ１０５は、テップＳ６０５にて被写体が、メカ端に突き当たったと判定し、メカ端に突き当たったことをカメラクライアント１２０に通知する。また、ＣＰＵ１０５は、図２におけるステップＳ２０４での判定結果をふまえて、メカ端の位置をパン方向の原点とするために、雲台制御部１０９のパン位置カウンタの初期化や、カメラクライアント１２０に対してメカ端への駆動の終了の通知を行う。そして処理を終了する。
【００８０】
また、ステップＳ６０７において、ＣＰＵ１０５は、メカ端に突き当たっていないと判定した場合は、期待するモーター駆動音以外の音が発生しているため、カメラクライアント１２０に対して異常音が発生していることを通知する。
【００８１】
以上、説明したように、メカ端に突き当たっている時のモーターの駆動音を周波数スペクトルとして登録し、実際のモーター駆動音のスペクトルとの比較することでメカ端の検出を行うことができる。これらのモーター駆動音を利用した検出結果は、前述の実施例で説明した動き検出を利用したメカ端検出と組み合わせることで、メカ端の誤検出を防止することが可能になる。
【００８２】
なお、本実施例において、モーター駆動音を取得するマイク１１２は、音声を取得するための音声取得部に相当する。
【００８３】
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
【符号の説明】
【００８４】
１００  カメラサーバー
１０１  撮像部
１０２  雲台部
１０３  映像処理部
１０４  符号化部
１０５  ＣＰＵ
１０６  ＲＯＭ
１０７  ＲＡＭ
１０８  レンズ制御部
１０９  雲台制御部
１１０  通信部
１１１  モーター
１１２  マイク
１１３  音声処理部
１２０  カメラクライアント
１３０  ネットワーク
【図１】
2016066955.tif 000003
【図２】
2016066955.tif 000004
【図３】
2016066955.tif 000005
【図４】
2016066955.tif 000006
【図５】
2016066955.tif 000007
【図６】
2016066955.tif 000008
【図７】
2016066955.tif 000009
【図８】
2016066955.tif 000010