IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 独立行政法人情報通信研究機構の特許一覧

特開2024-140052デジタルカメラのパン又はチルト操作時におけるズレ補正技術
<>
  • 特開-デジタルカメラのパン又はチルト操作時におけるズレ補正技術 図1
  • 特開-デジタルカメラのパン又はチルト操作時におけるズレ補正技術 図2
  • 特開-デジタルカメラのパン又はチルト操作時におけるズレ補正技術 図3
  • 特開-デジタルカメラのパン又はチルト操作時におけるズレ補正技術 図4
  • 特開-デジタルカメラのパン又はチルト操作時におけるズレ補正技術 図5
  • 特開-デジタルカメラのパン又はチルト操作時におけるズレ補正技術 図6
  • 特開-デジタルカメラのパン又はチルト操作時におけるズレ補正技術 図7
  • 特開-デジタルカメラのパン又はチルト操作時におけるズレ補正技術 図8
  • 特開-デジタルカメラのパン又はチルト操作時におけるズレ補正技術 図9
  • 特開-デジタルカメラのパン又はチルト操作時におけるズレ補正技術 図10
  • 特開-デジタルカメラのパン又はチルト操作時におけるズレ補正技術 図11
  • 特開-デジタルカメラのパン又はチルト操作時におけるズレ補正技術 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024140052
(43)【公開日】2024-10-10
(54)【発明の名称】デジタルカメラのパン又はチルト操作時におけるズレ補正技術
(51)【国際特許分類】
   H04N 23/60 20230101AFI20241003BHJP
   H04N 7/18 20060101ALI20241003BHJP
   G03B 15/00 20210101ALI20241003BHJP
【FI】
H04N23/60
H04N7/18 E
G03B15/00 S
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2023051039
(22)【出願日】2023-03-28
(71)【出願人】
【識別番号】301022471
【氏名又は名称】国立研究開発法人情報通信研究機構
(74)【代理人】
【識別番号】100116850
【弁理士】
【氏名又は名称】廣瀬 隆行
(74)【代理人】
【識別番号】100165847
【弁理士】
【氏名又は名称】関 大祐
(72)【発明者】
【氏名】山崎 亮三
(72)【発明者】
【氏名】村上 雄樹
(72)【発明者】
【氏名】村田 健史
(72)【発明者】
【氏名】山本 和憲
【テーマコード(参考)】
5C054
5C122
【Fターム(参考)】
5C054CA04
5C054CC02
5C054CF06
5C054CF07
5C054CG05
5C054EA01
5C054EA03
5C054EA05
5C054EA07
5C054FC12
5C054FC15
5C054FD07
5C054FF02
5C054GB01
5C054HA19
5C122DA11
5C122EA06
5C122EA58
5C122EA63
5C122FH11
5C122GD06
5C122HA82
5C122HA88
5C122HB01
(57)【要約】
【課題】あるターゲットに対して一方側からパン又はチルトした場合と他方側からパン又はチルトする場合の撮影画像のズレを補正する。
【解決手段】カメラからの距離が既知である第一種ターゲットに対して左側からパンした撮影画像と右側からパンした撮影画像のズレ量を角度で正規化した値(Δx)に基づいてカメラ固有のズレ特性に関する定数(C)を求め、この定数(C)を利用してカメラからの距離が未知である特定の第二種ターゲットに対して左側からパンした撮影画像と右側からパンした撮影画像のズレ量を角度で正規化した値(Δx)を複数予め求めておき、カメラからの距離が未知である任意の第三種ターゲットにカメラをパンする場合には、この複数の正規化した値(Δx)からの補間等により第三種ターゲットのパン値(x)の補正量(±Δx/2)を算出する。チルト操作についても同様である。
【選択図】図1
【特許請求の範囲】
【請求項1】
デジタルカメラのパン又はチルト操作時におけるズレを補正する方法であって、
補正対象のカメラからの距離が既知である一又は複数の特定の第一種ターゲットに対して、当該補正対象のカメラに当該第一種ターゲットのパン値(x)又はチルト値(y)を指定して、前記第一種ターゲットを挟んだ一方側から当該第一種ターゲットへパン又はチルトして撮影した場合と他方側から当該第一種ターゲットへパン又はチルトして撮影した場合との第一種画像を取得する第1工程と、
前記第一種画像を解析することにより、前記一方側からパン又はチルトして撮影した場合のズレ位置から前記他方側からパン又はチルトして撮影した場合のズレ位置までのズレ量を表すピクセル値(ΔPx,ΔPy)と、当該ズレ量をパン角又はチルト角の角度で正規化した値(Δx,Δy)を求める第2工程と、
前記第2工程で求めた前記ピクセル値(ΔPx,ΔPy)及び前記角度で正規化した値(Δx,Δy)から、前記補正対象のカメラ固有のズレ特性に関する定数(Cx,Cy)を求める第3工程と、
前記補正対象のカメラからの距離が未知である複数の特定の第二種ターゲットに対して、当該補正対象のカメラに当該第二種ターゲットのパン値(x)又はチルト値(y)を指定して、前記第二種ターゲットを挟んで一方側から当該第二種ターゲットへパン又はチルトして撮影した場合と他方側から当該第二種ターゲットへパン又はチルトして撮影した場合との第二種画像をそれぞれ取得する第4工程と、
前記第二種画像を解析することにより、前記一方側からパン又はチルトして撮影した場合のズレ位置から前記他方側からパン又はチルトして撮影した場合のズレ位置までのズレ量を表すピクセル値(ΔPx,ΔPy)を複数求める第5工程と、
前記第3工程で求めた前記定数(Cx,Cy)と前記第5工程で求めた複数の前記ピクセル値(ΔPx,ΔPy)から、前記ズレ量をパン角又はチルト角の角度で正規化した値(Δx,Δy)を複数求める第6工程と、
前記補正対象のカメラからの距離が未知である任意の第三種ターゲットに対して前記補正対象のカメラをパン又はチルトするときに、前記第6工程で求めた複数の前記角度で正規化した値(Δx,Δy)に基づいて、前記補正対象のカメラに指定する当該第三種ターゲットのパン値(x)又はチルト値(y)の補正量(±Δx/2,±Δy/2)を求める第7工程と、を含む
方法。
【請求項2】
前記第1工程は、複数の前記第一種ターゲットに対して行われるものであり、
前記第2工程では、複数の前記第一種ターゲットについて前記ズレ量を表すピクセル値(ΔPx,ΔPy)の平均を求める
請求項1に記載の方法。
【請求項3】
前記第7工程では、前記第6工程で求めた複数の前記角度で正規化した値(Δx,Δy)のうち、前記第三種ターゲットの近傍のパン値(x)又はチルト値(y)に対して前記第6工程で求めた前記角度で正規化した値(Δx,Δy)から、補間によって、当該第三種ターゲットに対するズレ量をパン角又はチルト角の角度で正規化した値(Δx,Δy)を求め、当該値(Δx,Δy)から前記補正量(±Δx/2,±Δy/2)を求める
請求項1に記載の方法。
【請求項4】
デジタルカメラのパン又はチルト操作時における補正量を求めるためのデータを生成する方法であって、
補正対象のカメラからの距離が既知である一又は複数の特定の第一種ターゲットに対して、当該補正対象のカメラに当該第一種ターゲットのパン値(x)又はチルト値(y)を指定して、前記第一種ターゲットを挟んで一方側から当該第一種ターゲットへパン又はチルトして撮影した場合と他方側から当該第一種ターゲットへパン又はチルトして撮影した場合との第一種画像を取得する第1工程と、
前記第一種画像を解析することにより、前記一方側からパン又はチルトして撮影した場合のズレ位置から前記他方側からパン又はチルトして撮影した場合のズレ位置までのズレ量を表すピクセル値(ΔPx,ΔPy)と、当該ズレ量をパン角又はチルト角の角度で正規化した値(Δx,Δy)を求める第2工程と、
前記第2工程で求めた前記ピクセル値(ΔPx,ΔPy)及び前記角度で正規化した値(Δx,Δy)から、前記補正対象のカメラ固有のズレ特性に関する定数(Cx,Cy)を求める第3工程と、
前記補正対象のカメラからの距離が未知である複数の特定の第二種ターゲットに対して、当該補正対象のカメラに当該第二種ターゲットのパン値(x)又はチルト値(y)を指定して、前記第二種ターゲットを挟んで一方側から当該第二種ターゲットへパン又はチルトして撮影した場合と他方側から当該第二種ターゲットへパン又はチルトして撮影した場合との第二種画像をそれぞれ取得する第4工程と、
前記第二種画像を解析することにより、前記一方側からパン又はチルトして撮影した場合のズレ位置から前記他方側からパン又はチルトして撮影した場合のズレ位置までのズレ量を表すピクセル値(ΔPx,ΔPy)を複数求める第5工程と、
前記第3工程で求めた前記定数(Cx,Cy)と前記第5工程で求めた複数の前記ピクセル値(ΔPx,ΔPy)から、前記ズレ量をパン角又はチルト角の角度で正規化した値(Δx,Δy)を複数求める第6工程と、
前記第6工程で求めた複数の前記角度で正規化した値(Δx,Δy)を含むデータを記憶装置に保存する工程を含む、
方法。
【請求項5】
デジタルカメラの制御装置であって、
前記デジタルカメラからの距離が未知である複数の特定のターゲットについて、各特定のターゲットを挟んでパン又はチルトの一方側のズレ位置から他方側のズレ位置までのズレ量をパン角又はチルト角の角度で正規化した値(Δx,Δy)に関するデータをそれぞれ記憶した記憶部と、
前記デジタルカメラからの距離が未知である任意のターゲットに対して前記デジタルカメラをパン又はチルトするときに、前記記憶部に記憶されている前記データに基づいて、前記デジタルカメラに指定する当該任意のターゲットのパン値(x)又はチルト値(y)の補正量(±Δx/2,±Δy/2)を算出し、当該補正量を加算して前記デジタルカメラのパン又はチルト操作を制御するための制御信号を生成する制御部を備える
制御装置。
【請求項6】
前記制御部は、前記デジタルカメラの現在向きが前記任意のターゲットから所定閾値内の近傍である場合には、当該デジタルカメラの向きを当該任意のターゲットから一度遠ざけた後に、前記補正量を加算して前記デジタルカメラのパン又はチルト操作を実行する
請求項5に記載の制御装置。
【請求項7】
情報処理装置を請求項5に記載の制御装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、デジタルカメラのパン又はチルト操作時におけるズレを補正するための技術に関する。具体的に説明すると、本発明は、デジタルカメラのズレを補正する方法、補正量を求めるためのデータを生成する方法、デジタルカメラの制御装置、及び補正用のプログラムに関する。
【背景技術】
【0002】
災害の多い日本には、全国各地に災害監視などの目的でカメラが設置されている。このような監視用のカメラは、有線や無線ネットワークを通じて遠隔で操作することが有効であり、そのような遠隔操作の標準規格としてONVIF(Open Network Video Interface Forum)が知られている(非特許文献1)。ONVIFは、インターネット等の通信回線を介して互いに接続されるカメラと外部の制御装置との間の通信インタフェースを共通化するための標準プロトコルである。ONVIFに対応したカメラは、安価なものから高価なものまで多様な製品が販売されている。
【0003】
このようなONVIFのプロトコルに従った遠隔操作のコマンドを実行することにより、カメラのパン、チルト、及びズームといった各種操作を行い所望のターゲットを撮影することや、カメラによる撮影画像を有線や無線のIPネットワークを介して外部の制御装置に伝送する技術が知られている(特許文献1)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2013-026642号公報
【非特許文献】
【0005】
【特許文献1】ONVIF Network Interface Specifications (https://www.onvif.org/profiles/specifications/)
【発明の概要】
【発明が解決しようとする課題】
【0006】
ところで、標準的なONVIF規格であるかその他の独自規格であるかによらず、カメラの機種によっては(特に安価な機種では)、あるターゲットに対して、右側からそのターゲットに向かってカメラをパンした場合の撮影画像と左側から同じターゲットに向かってカメラをパンした場合の撮影画像を比べると、同一のx座標値を指定したにもかかわらず、両画像に左右のズレが生じる場合がある。なお、チルト操作の場合には、あるターゲットに対して、上側からそのターゲットに向かってカメラをチルトした場合の撮影画像と下側から同じターゲットに向かってカメラをチルトした場合の撮影画像を比べると、同一のy座標値を指定したにもかかわらず、両画像に上下のズレが生じる。例えばパン操作時にこのようなズレが生じることになると、外部の制御装置からネットワークを介してカメラに対して同じ座標のターゲットを指定して撮影を行うようにコマンドを送信した場合に、そのカメラがそのターゲットに向かって左側からパンした場合と右側からパンした場合とで異なる撮影画像が得られることとなり、そのため以下のような問題が生じる。すなわち、ズレの大きさを表すピクセル値(ΔPx,ΔPy)は、カメラのズーム倍率に比例するため、例えばズーム倍率1倍のときには4ピクセルのズレであっても、そのカメラのズーム倍率を25倍にアップすると100ピクセルずれてしまうことになる。そして、災害監視などの目的でONVIF対応のPTZカメラを設置し運用する場合、通常はズーム倍率1倍でワイドに撮影し、もし画面内に発煙・発火などの異常が目視やAIなどで検出された場合には詳しく見るためにズーム倍率を上げる必要があるが、そのままズームアップしてしまうと異常点がフレームアウトしてしまうので、その異常点が画面の中央になるようにカメラをパンチルト操作する必要がある。しかしながら上記のような大きなズレが生じていると、特にAIなどによるアラートの自動処理などでは、その異常点が見過ごされてしまったり、正しい評価や判断がなされないといった問題が生じる。
【0007】
また、ONVIFの絶対値指定移動コマンドでは、その引数としてカメラのパン値をx座標の絶対値(-1<x≦1)で指定し、同じくカメラのチルト値をy座標の絶対値(-1<y≦1)で指定する。このとき、例えばカメラが360°に亘ってパン可能なものである場合、x=-1が-180°、x=1が180°に対応するため、例えばx=0.01は1.8°となり、x=-0.01は-1.8°となる。一方で、カメラの最大のチルト角はパン角よりも小さいことが多く、例えばカメラのチルト角が180°に限られる場合、y=-1が-90°、y=1が90°に対応するため、例えばy=0.01は0.9°となる。このようにONVIFの絶対値指定移動コマンドでは、パン値とチルト値を比べると、例えば同じ0.01単位でもパン値のほうが角度の振れ幅が大きいことがわかる。このため、ONVIF規格に従った場合、一般的にあるターゲットに対するズレ量はパン操作の場合のほうが大きくなるとされている。
また、ONVIFでは、相対値を引数として指定する移動コマンドも用意されているが、ズレの生じる状況は絶対値指定移動コマンドを用いた場合と同様である。
【0008】
本発明は、このようなあるターゲットに対して一方側からパン又はチルトした場合と他方側からパン又はチルトした場合の撮影画像のズレを補正するための技術を提供することを主な目的とする。
【課題を解決するための手段】
【0009】
本発明の発明者らは、上記目的を達成する手段について鋭意検討した結果、例えばカメラからの距離が既知である第一種ターゲットに対して左側からパンした撮影画像と右側からパンした撮影画像のズレ量を角度で正規化した値(Δx)に基づいてカメラ固有のズレ特性に関する定数(C)を求め、この定数(C)を利用してカメラからの距離が未知である特定の第二種ターゲットに対して左側からパンした撮影画像と右側からパンした撮影画像のズレ量を角度で正規化した値(Δx)を複数予め求めておき、カメラからの距離が未知である任意の第三種ターゲットにカメラをパンする場合には、この複数の正規化した値(Δx)からの補間等により第三種ターゲットのパン値(x)の補正量(±Δx/2)を算出することで、この第三種ターゲットに対してパンするときのカメラのズレを低減することができるようになるという知見を得た。なお、カメラのチルト操作についても同様である。そして、本発明者らは、上記知見に基づけば従来技術の課題を解決できることに想到し、本発明を完成させた。以下、本発明について具体的に説明する。
【0010】
本発明の第1の側面は、デジタルカメラのパン又はチルト操作時におけるズレを補正する方法に関する。本発明に係る補正方法は、以下の第1工程(S1)から第7工程(S7)を含む。第1工程(S1)から第3工程(S3)は、補正対象のカメラからの距離が既知である一又は複数の特定の第一種ターゲットを対象として行われる工程であり、例えば屋内にて実施される(屋内予備実験)。第4工程(S4)から第6工程(S6)は、補正対象のカメラからの距離が未知である複数の特定の第二種ターゲットを対象として行われる工程であり、例えば屋外にて実施される(屋外予備実験)。第7工程(S7)は、補正対象のカメラからの距離が未知である任意の第三種ターゲットに対して補正対象のカメラをパン又はチルトする工程であり、上記第1工程から第6工程を経て求められたデータを利用して当該カメラの補正量を求める。
【0011】
第1工程では、補正対象のカメラからの距離が既知である一又は複数の特定の第一種ターゲットに対して、当該補正対象のカメラに当該第一種ターゲットのパン値(x)又はチルト値(y)を指定して、第一種ターゲットを挟んだ一方側から当該第一種ターゲットへパン又はチルトして撮影した場合と他方側から当該第一種ターゲットへパン又はチルトして撮影した場合との第一種画像を取得する。なお、補正対象のカメラをターゲットに向けてパンする場合、例えばここにいう「一方側」とは当該ターゲットの左側であり、「他方側」とは当該ターゲットの右側である。また、補正対象のカメラをターゲットに向けてチルトする場合、例えばここにいう「一方側」とは当該ターゲットの上側であり、「他方側」とは当該ターゲットの下側である。
【0012】
第2工程では、第1工程で取得した第一種画像を解析することにより、一方側からパン又はチルトして撮影した場合のズレ位置から他方側からパン又はチルトして撮影した場合のズレ位置までのズレ量を表すピクセル値(ΔPx,ΔPy)と、当該ズレ量をパン角又はチルト角の角度で正規化した値(Δx,Δy)を求める。ここにいう「ズレ量をパン角又はチルト角の角度で正規化した値(Δx,Δy)」とは、第一種ターゲットに対するズレ量をONVIFコマンドで指定されるカメラのパン値(-1<x≦1)又はチルト値(-1<y≦1)で表した値である。例えば、第一種ターゲットは、カメラからの距離(例えばl[m])が既知であることから、この第一種ターゲットの設置面(例えば壁面)上における上記のズレ量(Δdx,Δdy)の長さは三角測量法などによって求まる。また、例えば補正対象のカメラが最大360°(2π)でパン可能なものであれば、パン方向のズレ量(Δdx)が上記パン値(-1<x≦1)でいうとどういう値となるかは、xが-1から1まで2だけ変化するときΔdxは2πlで変化すること、すなわちΔx=(Δdx/l)/(2π/2)で求まる。また、同様に、例えば補正対象のカメラが最大180°(π)でチルト可能なものであれば、チルト方向のズレ量(Δdy)がパン値(-1<y≦1)でいうとどういう値となるかは、yが-1から1まで2だけ変化するときΔdyはπlで変化すること、すなわちΔy=(Δdy/l)/(π/2)で求まる。このようにして求めた「ズレ量をパン角又はチルト角の角度で正規化した値(Δx,Δy)」は、カメラから第一種ターゲットまでの距離によらず一定であることから、カメラからの距離が未知である他のターゲットに対しても応用できる値となる。
【0013】
第3工程では、第2工程で求めたピクセル値(ΔPx,ΔPy)及び角度で正規化した値(Δx,Δy)から、補正対象のカメラ固有のズレ特性に関する定数(Cx,Cy)を求める。具体的には、パン方向のズレ特性を表す定数(Cx)は、Cx=ΔPx/Δxで求められる。また、チルト方向のズレ特性を表す定数(Cy)は、Cy=ΔPy/Δyで求められる。このようにして求めた定数(Cx,Cy)もカメラから第一種ターゲットまでの距離によらず一定であることから、カメラからの距離が未知である他のターゲットに対しても応用できる値となる。
【0014】
第4工程では、補正対象のカメラからの距離が未知である複数の特定の第二種ターゲットに対して、当該補正対象のカメラに当該第二種ターゲットのパン値(x)又はチルト値(y)を指定して、第二種ターゲットを挟んで一方側から当該第二種ターゲットへパン又はチルトして撮影した場合と他方側から当該第二種ターゲットへパン又はチルトして撮影した場合との第二種画像をそれぞれ取得する。なお、この第4工程は、前述した第1工程と同様の手順である。
【0015】
第5工程では、第4工程で取得した第二種画像を解析することにより、一方側からパン又はチルトして撮影した場合のズレ位置から他方側からパン又はチルトして撮影した場合のズレ位置までのズレ量を表すピクセル値(ΔPx,ΔPy)を複数求める。なお、この第5工程は、前述した第2工程と同様の手順である。ただし、カメラから第二種ターゲットまでの距離は未知であることから、第5工程では、「ズレ量をパン角又はチルト角の角度で正規化した値(Δx,Δy)」を求めることができず、この点において第2工程とは異なる。
【0016】
第6工程では、第3工程で求めた定数(Cx,Cy)と第5工程で求めた複数のピクセル値(ΔPx,ΔPy)から、ズレ量をパン角又はチルト角の角度で正規化した値(Δx,Δy)を複数求める。ここにいう「ズレ量をパン角又はチルト角の角度で正規化した値(Δx,Δy)」とは、第二種ターゲットに対するズレ量を例えばONVIFコマンドで指定されるカメラのパン値(-1<x≦1)又はチルト値(-1<y≦1)で表した値である。具体的には、カメラのパン値(Δx)については、Δx=ΔPx/Cxを計算すればよい。また、カメラのチルト値(Δy)については、Δy=ΔPy/Cyを計算すればよい。
【0017】
第7工程では、実際に、補正対象のカメラからの距離が未知である任意の第三種ターゲットに対して補正対象のカメラをパン又はチルトするときに、第6工程で求めた複数の角度で正規化した値(Δx,Δy)に基づいて、補正対象のカメラに指定する当該第三種ターゲットのパン値(x)又はチルト値(y)の補正量(±Δx/2,±Δy/2)を求める。例えば、あるx座標の第三種ターゲットに対してカメラをパンするときには、この第三種ターゲットのx座標に最も近い第二種ターゲットについて求めたΔxを参照して、パン値の補正量(±Δx/2)を決定することとしてもよい。例えば、あるx座標の第三種ターゲットに対して左側からカメラをパンするときには、ONVIFの絶対値指定移動コマンドを用いてカメラにx+Δx/2を引数として指定し、あるx座標の第三種ターゲットに対して右側からカメラをパンするときには、ONVIFの絶対値指定移動コマンドを用いてカメラにx-Δx/2を引数として指定することができる。このような操作はあるy座標の第三種ターゲットに対してカメラをチルトするときも同様である。
【0018】
本発明に係るズレ補正方法において、第1工程は、複数の第一種ターゲットに対して行われるものであり、第2工程では、複数の第一種ターゲットについてズレ量を表すピクセル値(ΔPx,ΔPy)の平均を求めることが好ましい。第1工程は、一つの第一種ターゲットについてのみ行われるものであってもよいが、第1工程を複数の第一種ターゲットについて行い、第2工程において、複数の第一種ターゲットについてズレ量を表すピクセル値(ΔPx,ΔPy)の平均を求めることで、ズレ補正の精度を向上させることができる。
【0019】
本発明に係るズレ補正方法において、第7工程は、第6工程で求めた複数の角度で正規化した値(Δx,Δy)のうち、第三種ターゲットの近傍のパン値(x)又はチルト値(y)に対して第6工程で求めた角度で正規化した値(Δx,Δy)から、補間によって、当該第三種ターゲットに対するズレ量をパン角又はチルト角の角度で正規化した値(Δx,Δy)を求め、当該値(Δx,Δy)から補正量(±Δx/2,±Δy/2)を求めることが好ましい。補間とは、ある既知の複数の数値データを基にして、それらのデータの各区間の範囲内を埋める数値を求めることを意味する。このように、既知の複数の正規化した値(Δx,Δy)から補間によって第三種ターゲットに対する正規化した値(Δx,Δy)を求めて、これから補正量(±Δx/2,±Δy/2)を算出することで、ズレ補正の精度を向上させることができる。
【0020】
本発明の第2の側面は、デジタルカメラのパン又はチルト操作時における補正量を求めるためのデータを生成する方法に関する。第2の側面に係るデータ生成方法は、前述した第1の側面に係るズレ補正方法について説明した第1工程から第6工程を含むが、第7工程は含まない。第2の側面に係るデータ生成方法は、前述した第7工程の代わりに、第6工程で求めた複数の「角度で正規化した値(Δx,Δy)」を含むデータを記憶装置に保存する工程(第8工程)を含む。「角度で正規化した値(Δx,Δy)」は、前述した通りカメラのパン操作又はチルト操作時における補正量を求めるのに有用であることから、このような「角度で正規化した値(Δx,Δy)」を含むデータを複数生成して、記憶装置に記憶しておくことに価値がある。
【0021】
本発明の第3の側面は、デジタルカメラの制御装置に関する。この制御装置は、補正対象となるデジタルカメラに対して有線又は無線(インターネット等)で接続されている。デジタルカメラの制御装置は、記憶部と制御部を備える。記憶部は、デジタルカメラからの距離が未知である複数の特定のターゲット(前述した第二種ターゲット)について、各特定のターゲットを挟んでパン又はチルトの一方側のズレ位置から他方側のズレ位置までのズレ量をパン角又はチルト角の角度で正規化した値(Δx,Δy)に関するデータをそれぞれ記憶している。制御部は、デジタルカメラからの距離が未知である任意のターゲット(前述した第三種ターゲット)に対してデジタルカメラをパン又はチルトするときに、記憶部に記憶されているデータに基づいて、デジタルカメラに指定する当該任意のターゲットのパン値(x)又はチルト値(y)の補正量(±Δx/2,±Δy/2)を算出し、当該補正量を加算してデジタルカメラのパン又はチルト操作を制御する。
【0022】
本発明の第3の側面に係る制御装置において、制御部は、デジタルカメラの現在向きが任意のターゲットから所定閾値内の近傍である場合には、当該デジタルカメラの向きを当該任意のターゲットから一度遠ざけた後に、補正量を加算してデジタルカメラのパン又はチルト操作を実行することが好ましい。デジタルカメラの現在向きが任意のターゲットに近すぎる場合、補正量を加算してデジタルカメラをターゲットにパン又はチルトしても、デジタルカメラが正確にターゲットに向かない場合がある。このため、一度、デジタルカメラの向きを任意のターゲットから一度遠ざけた後に、この補正量を加算してデジタルカメラをターゲットに改めてパン又はチルトすることで、デジタルカメラを精度良くターゲットに向けることができる。
【0023】
本発明の第4の側面は、パーソナルコンピュータ等の情報処理装置を、前述した第3の側面に係る制御装置として機能させるためのコンピュータプログラムに関する。このコンピュータプログラムは、インターネット等を通じて情報処理装置にダウンロード及びインストールされるものであってもよいし、CD-ROM等の記録媒体に非一時的に記録されたものであってもよい。
【発明の効果】
【0024】
本発明によれば、あるターゲットに対して一方側からパン又はチルトした場合と他方側からパン又はチルトする場合の撮影画像のズレを補正することができる。
【図面の簡単な説明】
【0025】
図1図1は、デジタルカメラのズレ補正方法における各工程を端的に示したフロー図である。
図2図2は、屋内において位置決めされたカメラから複数の第一種ターゲットを撮影する測定実験の例を示している。
図3図3は、屋内撮影において補正前のカメラの撮影画像にズレが生じることを示した実験データの例を示している。
図4図4は、第一種ターゲットの撮影画像(第一種画像)から求められるズレ量の概念を示している。
図5図5は、屋内撮影において補正後のカメラの撮影画像ではズレが抑制されることを示した実験データの例を示している。
図6図6は、屋外において位置決めされたカメラから複数の第二種ターゲットを撮影する測定実験の例を示している。
図7図7は、屋外撮影において補正前のカメラの撮影画像にズレが生じることを示した実験データの例を示している。
図8図8は、第二種ターゲットの撮影画像(第二種画像)から求められるズレ量の概念を示している。
図9図9は、屋外撮影において補正後のカメラの撮影画像ではズレが抑制されることを示した実験データの例を示している。
図10図10は、所定間隔毎に複数の第二種ターゲットについて測定したズレ量のピクセル値(ΔPx)の計測結果と、特定のターゲットについて個別に測定したズレ量のピクセル値(ΔPx)の計測結果の例を示している。
図11図11は、補正対象のデジタルカメラとその制御装置の構成の一例を示したブロック図である。
図12図12は、制御装置によるデジタルの制御方法の例を示している。
【発明を実施するための形態】
【0026】
以下、図面を用いて本発明を実施するための形態について説明する。本発明は、以下に説明する形態に限定されるものではなく、以下の形態から当業者が自明な範囲で適宜変更したものも含む。
【0027】
図1は、本発明に係るデジタルカメラのズレ補正方法に含まれる各工程を示している。以下この図1に示した工程に従って、本発明の内容を具体的な実験の手順とともに説明する。なお、以下では、一般的にズレ量が比較的大きくなるとされているカメラのパン操作を中心に説明を行う。ただし、本発明に係るズレ補正方法は、パン操作と同様の手順でカメラのチルト操作にも適用することができる。
【0028】
[1.屋内予備実験]
まず、本実施形態では、図1に示した第1工程(S1)から第3工程(S3)は、カメラからの距離が既知である第一種ターゲットを対象としたものであり、この第一種ターゲットは例えば屋内に配置される。第1工程(S1)では、カメラからの距離が既知である第一種ターゲットについて、左側からパンした場合と右側からパンした場合の撮影画像(第一種画像)を取得する。図2は、この工程を模式的に表している。図2に示されるように、例えば四方が壁で囲まれた屋内に補正対象となるカメラ10を設置する。このカメラ10は、撮影部(イメージセンサ)と、この撮影部をパン方向に回動させるパン機構と、この撮影部をチルト方向に回動させるチルト機構を持つ。なお、このカメラ10は、パン方向には360°回転可能であり、チルト方向には180°回転可能となっている。この屋内には、壁面に第一種ターゲットA~Cが設置されており、カメラ10の視線方向と直交する点にターゲットBが設置され、その両隣にターゲットA及びターゲットCが設置されている。各ターゲットA~Cの中心には、ターゲットBに例示したように、垂直方向にマーカー線(ML)が描かれ、また水平方向にはこのマーカー線(ML)からの距離を測定できるように定規が貼付又は印刷されている。また、カメラ10から各ターゲットA~Cまでの距離l[m](i=1,2,3)は予め測定された既知の値である。また、各ターゲットA~Cについて、ONVIFコマンドにおけるカメラ10のパン方向の正確な絶対値座標値(-1.0<x≦1.0)、すなわちパン値x(i=1,2,3)も取得しておく。なお、x=0は0°であり、x=-1.0は-180°であり、x=1.0は180°であるため、x=-1.0とx=1.0は実質的に同じ座標値である。図1に示した例では、ターゲットAのパン値xは-0.279、ターゲットBのパン値xは-0.258、ターゲットCのパン値xは-0.235となっている。なお、各ターゲットA~Cのチルト方向の絶対値座標値(-1.0<y≦1.0)は、すべてy=1.0(水平)とする。
【0029】
上記屋内環境下において、カメラ10に各ターゲットA~Cのパン値xをONVIFコマンドの引数として入力し、各ターゲットA~Cのマーカー線(ML)に向かってカメラ10をパンした後に、各ターゲットA~Cの撮影を行う。ターゲットBを対象とした具体的な実験手順としては、まず、乱数により、カメラ10を各ターゲットBの左右どちらに向けるかを決める(1)。次に、乱数により、カメラ10を所定範囲でどのくらいの角度に向けるのかを決め、その角度に向けたときのカメラ10のx座標値(パン値)をxとする(2)。例えば角度の所定範囲を±54°とすると、54°は(-1.0<x≦1.0)の絶対値座標系では0.3となるため、x-0.3≦x≦x+0.3となる。なお、nは試行回数であり、本例ではn=1,2,…,400回となる。次に、ONVIFの絶対値指定移動コマンドの引数としてターゲットBのパン値(x=-0.258)をカメラ10に入力して、このターゲットBへカメラ10をパンして撮影する(3)。次に、カメラ10に写された撮影画像、ここではFHD(1920×1080px)画像Dをxの値とともに制御装置20等のコンピュータに保存する(4)。次に、このコンピュータで実行するパイソンプログラム等の画像処理により、撮影画像D内のターゲットBのマーカー線(ML)のx座標軸のピクセル値Vを求める(5)。そして、ターゲットBについては、上記した(1)~(5)の処理を400回繰り返す。この実験により、400組(n=1,2,…,400)のデータセット(D,x,V)が得られる。
【0030】
続いて、第2工程(S2)では、まず、コンピュータによる画像処理により、第1工程で取得した複数の第一種画像のデータセットに基づいて、特定のターゲットに対してカメラ10を左側からパンした場合の撮影画像と右側からパンした場合の撮影画像のズレ量のピクセル値(ΔPx)を求める。すなわち、上記した繰り返しの試行の結果、ターゲットB(x=-0.258)については、例えば図3に示すようなヒストグラムが得られる。そして、繰り返しの試行で求めた第一種画像のデータセット(D,x,V)から、ターゲットBに対してカメラ10を左側からパンした場合の撮影画像では平均何ピクセルほどズレが発生し、同様にターゲットBに対してカメラ10を右側からパンした場合の撮影画像では平均何ピクセルほどズレが発生するのかを求めることができる。そして、この屋内予備実験では、左側からパンした場合の撮影画像のズレ位置の平均値と右側からパンした場合の撮影画像のズレ位置の平均値の差分をΔPxとする。図3に示したヒストグラム例の計算結果では、ΔPx=69.3[px]となる。
【0031】
図4は、ここにいうズレ量(ΔPx)の概念を示したものである。つまり、図4(a)に示すように、カメラによる撮影画像の中心線(CL)が、例えばターゲットBのマーカー線(ML)と完全に一致していることが理想である。しかしながら、図4(b)に示すように、ターゲットBの左側からこのターゲットBに向かってカメラをパンして撮影した画像や、図4(c)に示すように、ターゲットBの右側からこのターゲットBに向かってカメラをパンして撮影した画像では、撮影画像の中心線(CL)がターゲットBのマーカー線(ML)とずれることが多い。図4(b)と図4(c)に示した例では、それぞれ、カメラのパン方向の回転が不足しており、撮影画像の中心線(CL)がターゲットBのマーカー線(ML)に到達できていない。なお、カメラの特性によっては、カメラのパン方向の回転が過剰であり、撮影画像の中心線(CL)がターゲットBのマーカー線(ML)を超えてしまう場合もある。このような場合に、図4(d)に示すように、ターゲットBの左側からパンした場合の撮影画像(図4(b))の中心線(CL)とターゲットBの右側からパンした場合の撮影画像(図4(c))の中心線(CL)のズレ量を画像解析により求め、これらの中心線の間の距離をズレ量としてピクセル値で表すと「ΔPx」となる。なお、左側からパンした場合の撮影画像の中心線と右側からパンした場合の撮影画像の中心線は、それぞれ、前述したとおり複数回の試行の平均値から求めることができる。
【0032】
また、図4に示されるように、マーカー線(ML)の左右両側の壁面に定規を貼付又は印刷しておくことにより、コンピュータによる画像処理によって、この壁面において、ターゲットの左側からパンした撮影画像の中心線(CL)と右側からパンした撮影画像の中心線(CL)のズレ量の実際の寸法Δdx[cm]を求めることができる。Δdxの値は、撮影画像がFHD(1920×1080px)である場合、以下の<式1>により表される。

<式1> Δdx[cm]=ΔPx/1920×L[cm]

ここで、Lは、図4(d)に示されるように、撮影画像に写っているターゲットが設けられた壁面上の横幅(つまり撮影画像全幅に収まる定規の長さ)である。例えば、このLを34.1[cm]とし、ΔPxを前述した69.3[px]とした場合、Δdxは1.23[cm]となる。なお、撮影画像がFHDではなく4Kである場合、上記1920×1080pxは、3840×2160pxに置き換わることになる。
【0033】
また、第2工程(S2)では、上記手順で算出したズレ量のピクセル値(ΔPx)に基づいて、カメラ10からの距離(l)が既知であるターゲットBについて、このズレ量をパン角(2π)で正規化した値(Δx)を求める。正規化した値(Δx)は、ターゲットBに対するカメラ10のズレ量(Δdx)をONVIFコマンドで指定されるカメラのパン値(-1<x≦1)で表した値である。例えば補正対象のカメラ10が最大360°(2π)でパン可能なものであれば、パン方向のズレ量(Δdx)が上記パン値(-1<x≦1)でいうとどういう値となるかは、xが-1から1まで2だけ変化するときΔdxは2πlで変化することから求まる。つまり、ターゲットBについての正規化した値(Δx)は、以下の<式2>により表される。

<式2> Δx=(Δdx/l)/(2π/2)

例えば、前述の通りΔdxが1.23[cm]であり、距離lが651[cm]である場合、Δx=(1.23/651)/(2π/2)=0.00060141499となる。
【0034】
続いて、第3工程(S3)では、上記した第2工程で求めたΔPx及びΔxの値に基づいて、補正対象のカメラ10固有のズレ特性に関する定数(Cx)を求める。すなわち、定数Cxは、以下の<式3>により表される。

<式3> Cx=ΔPx/Δx
【0035】
ここで、もしカメラ10からターゲットBまでの距離lが2倍になったとすると、Δdxも同様に2倍になるため、上記<式2>より、Δxの値は距離によらず一定となる。また、カメラ10からターゲットBまでの距離lが2倍になったとすると、Δdxも同様に2倍になるが、上記<式1>におけるLも2倍となるので、上記<式1>より、ΔPxの値も距離によらず一定であるといえる。従って、上記<式3>のΔPx/Δxにより求められる定数Cxも距離によらず一定となる。従って、この定数Cxは、補正対象のカメラ10固有のズレ特性を示すものと捉えることができる。前述したターゲットBについては、ΔPx=69.3であり、Δx=0.00060141499であることから、上記<式3>により、定数Cx=115228.255285となる。
【0036】
また、上記ターゲットBについて行った第1工程から第3工程を、カメラ10の位置は固定したまま、同じ屋内に配置されたターゲットA及びターゲットCについても行うとよい。ターゲットA,Cの実験で求めた定数Cxは、それぞれ前述したターゲットBの実験で求めた定数Cxと多少の誤差はあれどもほぼ同じ値となるはずである。なお、ターゲットA,B,Cそれぞれの実験で求めた定数Cxの平均値を、カメラ10固有の定数Cxとしてもよい。このように、屋内予備実験により、カメラ10からの距離が既知であるターゲットを利用して、カメラ10からの距離によらず一定となる定数(Cx)を求めておくことにより、距離が不知であるターゲットについて同じカメラ10のズレ量を算出する際にこの定数(Cx)を利用することができる。本実施形態では、ΔPx/Δx=Cx≒110000とする。
【0037】
なお、屋内予備実験でカメラ10からの距離が既知であるターゲットにパンする場合のズレを補正する場合、前述した正規化した値(Δx)を半分にした値(Δx/2)が、パン操作時の補正量となる。つまり、屋内予備実験において、例えばターゲットBにカメラ10を右側からパンする場合には、最初からONVIFコマンドの引数としてx-Δx/2をカメラ10に指定し、例えばターゲットBにカメラ10を左側からパンする場合はx+Δx/2を指定すればよい。その場合の実験結果は、図5のヒストグラムようになり、図4に示したヒストグラムと比較して、ズレ量が大幅に抑制されることがわかる。すなわち、図4に示したヒストグラムの計算結果では、ΔPx=69.3[px]となっていたが、図4に示したヒストグラムの計算結果では、ΔPx=4.2[px]となり大幅な改善がみられる。
【0038】
[2.屋外予備実験]
続いて、図1に示した第4工程(S4)から第6工程(S6)は、カメラ10からの距離が不知である第二種ターゲットを対象としたものであり、この第二種ターゲットは例えば屋外に配置されたものとする。第4~第6工程の屋外予備実験では、第1~第3工程までの屋内予備実験を行ったカメラ10を引き続き実験の対象とする。屋外予備実験では、例えば図6に示されるように、屋外に存在する画像解析のし易い特徴点(例えば鉄塔や看板など)を適当に選択して第二種ターゲットとすればよい。
【0039】
図6に示されるように、第4工程(S4)では、前述した第1工程(S1)と同様に、カメラ10に各ターゲットのパン値x(例:-0.415)を引数として入力し、ターゲットに向かってカメラ10をパンした後に、このターゲットの撮影を行う。具体的には、乱数により、カメラ10をターゲットの左右どちらに向けるかを決める(1)。次に、乱数により、カメラ10を所定範囲でどのくらいの角度に向けるのかを決め、その角度に向けたときのカメラ10のx座標値(パン値)をxとする(2)。例えば角度の所定範囲を±54°とすると、54°は(-1.0<x≦1.0)の絶対値座標系では0.3となるため、x-0.3≦x≦x+0.3となる。なお、nは試行回数であり、本例ではn=1,2,…,100となる。次に、ONVIFの絶対値指定移動コマンドに、ターゲットのパン値(x=-0.415)をカメラ10に入力して、このターゲットへカメラ10をパンして撮影する(3)。次に、カメラ10に写された撮影画像、ここではFHD(1920×1080px)画像Dをxの値とともに制御装置20等のコンピュータに保存する(4)。次に、このコンピュータで実行するパイソンプログラム等の画像処理により、撮影画像D内のターゲットのx座標軸のピクセル値Vを求める(5)。そして、一つのターゲットについて、上記した(1)~(5)の処理を400回繰り返す。この実験により、一つのターゲットについて400組(n=1,2,…,400)のデータセット(D,x,V)が得られる。そして、この(1)~(5)の処理を、複数のターゲットについてそれぞれ繰り返し行う。図6に示した例では、パン値x(-1.0<x≦1.0)において、左右に0.005(すなわち0.9°)ごとにターゲットを設定して、各ターゲットについて(1)~(5)の処理を行うこととしている。
【0040】
続いて、第5工程(S5)では、前述した第2工程(S2)と同様に、コンピュータによる画像処理により、第4工程で取得した複数の第二種画像のデータセットに基づいて、特定のターゲットに対してカメラ10を左側からパンした場合の撮影画像と右側からパンした場合の撮影画像のズレ量のピクセル値(ΔPx)を求める。すなわち、上記した繰り返しの試行の結果、ターゲット(x=-0.415)については、例えば図7に示すようなヒストグラムが得られる。そして、繰り返しの試行で求めた第二種画像のデータセット(D,x,V)から、同ターゲットに対してカメラ10を左側からパンした場合の撮影画像では平均何ピクセルほどズレが発生し、同様に同ターゲットに対してカメラ10を右側からパンした場合の撮影画像では平均何ピクセルほどズレが発生するのかを求めることができる。そして、この屋外予備実験では、左側からパンした場合の撮影画像のズレ位置の平均値と右側からパンした場合の撮影画像のズレ位置の平均値の差分をΔPxとする。図7に示したヒストグラム例の計算結果では、ΔPx=210.4[px]となる。このようなΔPxの値を、複数のターゲットのそれぞれについて求める。
【0041】
図8は、ここにいうズレ量(ΔPx)の概念を示したものである。つまり、図8(a)に示すように、カメラによる撮影画像の中心線(CL)が、例えば特定のターゲット(鉄塔)の中心と完全に一致していることが理想である。しかしながら、図8(b)に示すように、ターゲットの左側からこのターゲットに向かってカメラをパンして撮影した画像や、図8(c)に示すように、ターゲットの右側からこのターゲットに向かってカメラをパンして撮影した画像では、撮影画像の中心線(CL)がターゲットの中心とずれることが多い。図8(b)と図8(c)に示した例では、それぞれ、カメラのパン方向の回転が不足しており、撮影画像の中心線(CL)がターゲットに到達できていない。なお、カメラの特性によっては、カメラのパン方向の回転が過剰であり、撮影画像の中心線(CL)がターゲットを超えてしまう場合もある。このような場合に、図8(d)に示すように、ターゲットの左側からパンした場合の撮影画像(図8(b))の中心線(CL)とターゲットの右側からパンした場合の撮影画像(図8(c))の中心線(CL)のズレ量を画像解析により求め、このズレ量をピクセル値で表すと「ΔPx」となる。なお、左側からパンした場合の撮影画像の中心線と右側からパンした場合の撮影画像の中心線は、それぞれ、前述したとおり複数回の試行の平均値から求めることができる。
【0042】
ただし、第5工程(S5)は、第2工程(S2)工程とは異なり、カメラ10からの距離が未知であるターゲットを対象としていることから、カメラ10の撮影画像からは、ズレ量をパン角で正規化した値(Δx)を求めることができない。そこで、続く第6工程(S6)では、第5工程で求めたΔPxの値と、第3工程で求めた定数Cxの値に基づいて、この正規化した値(Δx)を求める。つまり、定数Cxは<式3>Cx=ΔPx/Δxで求めた値であることから、これをΔxの式に援用すると、Δxは以下の<式4>により求めることができる。

<式4> Δx=ΔPx/Cx

例えば、前述したとおり、このカメラ10についての定数Cx≒110000であることから、上記ターゲット(x=-0.415)に対するカメラ10のズレ量がΔPx=210.4[px]である場合、Δx=210.4/110000=0.00191272727となる。
【0043】
屋外予備実験では、カメラ10の方向によりターゲットとなす角度も異なってくることから、上記ΔPxの値は、カメラ10から見たターゲットの方向(すなわちカメラ10に入力するパン値x)によって異なってくるため、Δxも異なってくる。ただし、同ターゲットに向けたカメラ10の補正量としては、屋内予備実験と同様に、カメラ10を右側からパンする場合にはx-Δx/2としてコマンドを入力し、左側からパンする場合はx+Δx/2としてコマンドを入力すればよい。例えば、x=-0.415のターゲットに向けてカメラ10を左側からパンする場合にはコマンドの引数を(-0.415+0.00191272727/2)として補正し、同ターゲットに向けてカメラ10を右側からパンする場合にはコマンドの引数を(-0.415-0.00191272727/2)として補正する。この補正後の実験結果は、図9のヒストグラムようになり、図7に示したヒストグラムと比較して、ズレ量が大幅に抑制されることがわかる。図7に示したヒストグラムの計算結果では、ΔPx=210.4[px]となっていたが、図9に示したヒストグラムの計算結果では、ΔPx=-18.2[px]となり大幅な改善がみられた。
【0044】
また、前述の通り、屋外撮影のように、カメラ10からの距離が未知であるターゲットを対象に撮影する場合、上記Δxの値はパン値x(カメラ10から見たターゲットの方向)よって異なってくるが、このパン値xによるΔxの変化は滑らかである。そこで、例えば予めxの値を-1.0~1.0(-180°~180°)まで所定値毎(例え0.1毎、0.05毎、0.01毎、又は0.005毎)に変えていき、それぞれの値について、上記手順にてΔPx又はΔxの値を、制御装置20等のコンピュータに記憶しておく。これにより、任意のパン値xに対してΔxを求める際には、予め計算済みのパン値xに対するΔPx又はΔxをコンピュータから読み出し、読み出したΔPx又はΔxに基づく補間等によって、任意のパン値xに対するΔxを算出することができるようになる。なお、予めΔPx等の値を測定するx値の間隔は、必ずしも上記のように一定間隔ごとである必要はない。例えば鉄塔や看板などの特徴点が密集している箇所などではこのx値の間隔を密にして測定したり、反対に特徴点がほとんどない箇所ではx値の間隔を疎にして測定したりするなど、屋外の風景に応じてx値の間隔は適宜調整することができる。
【0045】
例えば図10のグラフは、パン値xを-0.24~-0.07まで0.005ずつ変えて、各パン値について上記手順にてΔPxを求めた結果を示している。なお、ΔxはΔPxに比例するため、Δxのグラフを作成した場合もこの図10と同じ様な折れ線となる。この結果から、屋外撮影においてもパン値xが少し変化しただけではズレの大きさΔPx(ピクセル値)も少ししか変化しないことが分かる。このため、任意のパン値xに対するΔPxは、xの近傍の予め実験済みの既知のΔPxを用いて補間によって求めることが可能であると分かる。例えば、図10のグラフでは、パン値-0.24とパン値-0.245についてはすでにΔPxを算出しており、Δxも特定できている。このため、これらのパン値の間の任意の点についてΔxを求めるためには、パン値-0.24のΔxとパン値-0.245のΔxを参照して、これらの値の補間によってその任意の点のΔxを求めることができる。具体的には、図10には、別に無線局アンテナ(x=-0.241、-0.214)や時計台(x=-0.173)などの特徴点のある特定のターゲットに対して個別に第4工程(S4)及び第5工程(S5)のプロセスによって取得したΔPxの値をオーバープロットしている。このように、任意のターゲットのΔPxは、ほとんど予め0.005きざみで測定したΔPxを繋ぐ折れ線上に位置していることから、他の任意のターゲットに対して補間によってΔPx等を求めることは有効であるといえる。従って、図1に示した第1工程(S1)から第6工程(S6)は、補正対象となるカメラ10について、距離が未知の多数のターゲットのパン値xについてそれぞれΔxを求め、この多数のΔxの値をデータとしてコンピュータに記憶しておくことが最終的な目的となる。このようなΔxの値を多数含むデータからは、同カメラ10について他の任意のターゲットにパンする場合の補正量を求めることができるため、このようなデータはカメラ10の補正にとって有用なものであるといえる。
【0046】
[3.カメラの補正制御]
図1に示した第7工程(S7)は、第1工程(S1)から第6工程(S6)で生成したデータに基づいて、制御装置20がカメラ10のパン操作を補正する工程である。図11は、制御装置20と補正対象となるカメラ10のハードウェア構成を示したブロック図である。
【0047】
図11に示されるように、カメラ10は、主に制御回路11、通信部12、撮影部13、パン機構14、及びチルト機構15を備えている。このようなカメラ10としては、インターネット等の通信回線を通じて遠隔制御可能な公知のネットワークカメラ(IPカメラ)を採用することができる。制御回路11は、その他の各要素12~15に接続されており、これらの全体的な制御を行うための回路である。通信部12は、通信回路を介して制御装置20と通信を行うための通信モジュールであり、有接LAN又は無線LANにて通信回路に接続されている。撮影部13は、例えば、光導波用レンズ、光学ズーム用レンズ、メカシャッター、シャッタードライバ、CCDイメージセンサユニットやCMOSイメージセンサユニットといった光電変換素子、光電変換素子から電荷量を読み出し画像データを生成するデジタルシグナルプロセッサ(DSP)、ICメモリなどで実現される。パン機構14は、撮影部13を物理的にパン方向(水平方向)に回転させるための機構であり、複数のギア等の組み合わせによって実現される。パン機構14は、撮影部13を360°全周に亘ってパン方向に回転させることができるものであることが好ましいが、例えばパンの上限は270°や180°であっても構わない。チルト機構15は、撮影部13を物理的にチルト方向(垂直方向)に回転させるための機構であり、複数のギア等の組み合わせによって実現される。チルト機構15は、撮影部13を360°全周に亘ってチルト方向に回転させることができるものであってもよし、例えばチルトの上限は270°や180°、90°であっても構わない。
【0048】
また、制御装置20は、主に制御部21、通信部22、記憶部23、入力部24、及び出力部25を備えている。制御装置20は、汎用的なコンピュータを採用することができる。制御部21は、CPU又はGPUといったプロセッサで構成され、カメラ10を遠隔制御するための演算処理や、その他制御装置20全体の制御処理を行う。通信部22は、有線LANや無線LANでインターネット等の通信回線に接続するための通信モジュールである。記憶部23のメモリ機能は、RAM等の揮発性メモリやフラッシュメモリ等の不揮発性メモリによって実現され、ストレージ機能はHDD及びSDDといった不揮発性メモリによって実現される。入力部24としては、キーボード、マウス、タッチパネル、マイクロフォン等の公知の入力装置を採用できる。出力部25としては、液晶ディスプレイや有機ELディスプレイ等の表示装置、及びスピーカ等の音出力装置を採用できる。
【0049】
また、制御装置20の記憶部23には、ONVIFなどの公知の規格に従ってカメラ10を遠隔制御するためのドライバプログラムが記憶されている。制御部21は、このドライバプログラムを記憶部23から読み出してメモリに展開し、このプログラムに従って、カメラ10に送信するコマンド(制御信号)を生成するための所定の演算処理を行うことができる。カメラ10は、通信回路を介して制御装置20が生成したコマンドを受信すると、このコマンドに従って撮影部13、パン機構14、及びチルト機構15を制御する。具体的には、撮影部13によるズーム操作、パン機構14による撮影部13のパン操作、及び/又はチルト機構15による撮影部13のチルト操作が行われる。また、カメラ10の撮影部13により撮影された画像は、例えば所定の画像フォーマットに変換された後、通信回線を介して制御装置20へ送信される。制御装置20は、カメラ10から受信した撮影画像を記憶部23に記憶する。
【0050】
また、制御装置20は、前述した第1工程から第6工程における画像解析を行うためのコンピュータとしても利用することができる。具体的には、制御装置20は、補正対象となるカメラ10の撮影画像を受信すると、これを画像解析し、前述したズレ量のピクセル値(ΔPx,ΔPy)、ズレ量を角度で正規化した値(Δx,Δy)、カメラ固有のズレ特性に関する定数(Cx,Cy)、ズレ量のピクセル値(ΔPx,ΔPy)、ズレ量を角度で正規化した値(Δx,Δy)を算出する所定の演算処理を行うこととしてもよい。これらの値の演算方法は前述したとおりである。なお、制御装置20には、前述した第6工程で求めた多数のズレ量を角度で正規化した値(Δx,Δy)を含むデータが記憶されていれば十分であり、この値(Δx,Δy)を求めるための画像解析や演算処理は、この制御装置20とは異なる他のコンピュータを用いて行ってもよい。
【0051】
また、制御装置20の記憶部23には、前述した第6工程で求めた多数のズレ量を角度で正規化した値(Δx,Δy)を含むデータが記憶されている。制御装置20の制御部21は、カメラ10に対して任意のパン値又はチルト値を指定するコマンドを生成する際に、記憶部23に記憶されているデータから補間等により任意のパン値又はチルト値の補正量(±Δx/2,±Δy/2)を求めることができる。そして、制御装置20は、カメラ10に対して、任意のパン値又はチルト値にこの補正量を加算したコマンドを送信し、カメラ10はこのコマンドに従ってパン操作又はチルト操作を実行する。
【0052】
図12には、制御装置20によるカメラ10の遠隔制御の一例を示している。図12(a)は、一般的なパン操作の例を示し、図12(b)は、カメラ10の向きがターゲットに近い場合に行う特殊なパン操作の例を示している。
【0053】
まず、図12(a)に示されるように、例えばパン値xが-0.125であるターゲットTに向けてカメラ10をパンさせる場合、制御装置20は、このカメラ10にターゲットTのパン値(-0.125)に補正量(±Δx/2)を加えた値をコマンドとして入力する。このときの補正量(±Δx/2)は、例えば図示されるようにカメラ10をターゲットの右側からパンさせる場合には(-Δx/2)となり、反対にカメラ10をターゲットの左側からパンさせる場合には(+Δx/2)となる。また、この補正量は、他の多数のパン値に対して予め算出したΔxの値のデータを利用し、ターゲットTのパン値(-0.125)に対応したΔxの値を補間等によって求めた後、ここで求めたΔxを1/2とすることで算出することができる。なお、ターゲットTのパン値(-0.125)が、予めΔxの値を算出した他のパン値と一致している場合には、補間計算を行う必要はない。制御装置20は、このようにして求めたコマンド(-0.125-Δx/2)をカメラ10に入力する。すると、カメラ10は、このコマンドに応じてパン操作を実行し、撮影部をターゲットTに向ける。このパン操作は補正量を考慮して行われるものであることから、補正前と比較して、カメラ10の光軸のターゲットTとのズレはより抑えられたものとなる。
【0054】
次に、図12(b)に示されるように、例えばパン値xが-0.125であるターゲットTに向けてカメラ10をパンさせるときに、カメラ10のパン操作前の向きがこのターゲットTに近すぎる場合がある。このような場合、図12(a)と同様に、単純にカメラ10に対してターゲットTのパン値xとその補正量を入力しても、ズレが効果的に抑制できない場合があることが確認されている。これは、カメラ10のパン機構のハードウェア的な問題であると考えられ、特に安価な機種のカメラ10ではこのような現象が頻発する。そこで、図12(b)に示されるように、カメラ10のパン操作前のパン値がターゲットTのパン値に対して所定閾値以内である場合には、制御装置20は、ターゲットTにパンするコマンドをカメラ10に入力する前に、一度、カメラ10の光軸をターゲットTから一旦遠ざけるようにカメラ10を制御すると良い。なお、カメラ10をターゲットTから遠ざける位置は、乱数によって決定してもよいし、所定の計算式(例えばターゲットTのパン値xに所定値を加えること)により決定してもよい。その後、図12(a)に示した例と同じように、制御装置20は、補間計算等によって求めた補正量を加えたコマンド(-0.125-Δx/2)をカメラ10に入力し、カメラ10は、このコマンドに応じてパン操作を実行する。これにより、例えば図9に示したヒストグラムと同様に、カメラ10をターゲットTに対して右側からパンした場合と左側からパンした場合のいずれであっても、カメラ10の光軸とターゲットTとのズレを大幅に小さくすることができる。
【0055】
以上の手順を要約すると以下の通りである。
(1.屋内予備実験)
屋内において、カメラから壁面までの距離の測定などの準備をした後、ONVIFの絶対値指定移動コマンドを用いてターゲットへランダムな位置からパン操作又はチルト操作を多数回行い、平均的なズレ量(ΔPx,ΔPy)を測定し、これを角度によって正規化した値(Δx,Δy)を求め、定数(Cx=ΔPx/Δx,Cy=ΔPy/Δy)を求める。
(2.屋外予備実験)
屋外において、予め様々なパン値x又はチルト値yに対して、上記屋内予備実験と同様の方法により平均的なズレの大きさズレ量(ΔPx,ΔPy)を測定し、屋内予備実験で求めた定数を用いて、ズレ量を角度で正規化した値(Δx=ΔPx/Cx,Δy=ΔPy/Cy)を求めておく。
(3.カメラの補正制御)
屋外における任意のパン値x又はチルト値yに対しては、上記屋外予備実験で得ているパン値x又はチルト値yの複数の近傍のΔx又Δyから補間等により対応するΔx又Δyを計算し、ONVIFの絶対値指定移動コマンドの引数として、任意のパン値x又はチルト値yに補正量(±Δx/2,±Δy/2)を加えた値を指定する。これにより、カメラの光軸とターゲットのズレを大幅に小さくできる。
【0056】
なお、本願明細書では、主にターゲットに向けたカメラをパン操作する場合を例に挙げて本発明の内容を説明したが、上記した要約にあるように、本発明はカメラのパン操作のずれを補正する場合に限らず、カメラのチルト操作を補正する場合にも適用することが可能である。
【0057】
以上、本願明細書では、本発明の内容を表現するために、図面を参照しながら本発明の実施形態の説明を行った。ただし、本発明は、上記実施形態に限定されるものではなく、本願明細書に記載された事項に基づいて当業者が自明な変更形態や改良形態を包含するものである。
【符号の説明】
【0058】
10…カメラ 20…制御装置
11…制御回路 21…制御部
12…通信部 22…通信部
13…撮影部 23…記憶部
14…パン機構 24…入力部
15…チルト機構 25…出力部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12