(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-10
(45)【発行日】2024-04-18
(54)【発明の名称】パン・チルト角算出装置及びそのプログラム
(51)【国際特許分類】
H04N 23/695 20230101AFI20240411BHJP
G03B 15/00 20210101ALI20240411BHJP
G03B 17/00 20210101ALI20240411BHJP
G06T 7/70 20170101ALI20240411BHJP
【FI】
H04N23/695
G03B15/00 P
G03B17/00 B
G06T7/70 Z
(21)【出願番号】P 2020018169
(22)【出願日】2020-02-05
【審査請求日】2023-01-05
(73)【特許権者】
【識別番号】000004352
【氏名又は名称】日本放送協会
(74)【代理人】
【識別番号】110001807
【氏名又は名称】弁理士法人磯野国際特許商標事務所
(72)【発明者】
【氏名】加納 正規
(72)【発明者】
【氏名】河北 真宏
(72)【発明者】
【氏名】三科 智之
【審査官】吉川 康男
(56)【参考文献】
【文献】特開2018-189580(JP,A)
【文献】米国特許出願公開第2008/0129825(US,A1)
【文献】特開2016-035543(JP,A)
【文献】国際公開第2013/121897(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 23/695
G03B 15/00
G03B 17/00
G06T 7/70
(57)【特許請求の範囲】
【請求項1】
カメラの光学中心と回転中心との位置ずれを考慮したカメラモデルで予め求めたカメラパラメータを用いて、目標点に対する前記カメラのパン・チルト角を算出するパン・チルト角算出装置であって、
世界座標系から前記回転中心におけるパン角及びチルト角がゼロ度のときの雲台座標系への変換を示す外部パラメータ及び、前記世界座標系の目標点位置を入力する入力手段と、
前記光学中心を原点としたカメラ座標系の目標点位置をスケール係数に依存する関数と、前記回転中心におけるパン・チルト後のパン・チルト座標系及び前記雲台座標系の間で前記回転中心から前記目標点までの距離が一致することを示す第1式と、前記外部パラメータにより前記目標点位置を前記世界座標系から前記雲台座標系に変換する第2式と、前記パン・チルト座標系の目標点位置を前記スケール係数による回転行列及び並進ベクトルで表した第3式と、を予め設定する設定手段と、
前記第2式により前記目標点位置を前記雲台座標系に変換し、前記第1式に前記第2式及び前記第3式を代入して前記スケール係数を算出し、算出した前記スケール係数を前記関数に代入して前記カメラ座標系の目標点位置を算出し、前記カメラ座標系の目標点位置を前記パン・チルト座標系に変換する目標点算出手段と、
前記パン・チルト座標系及び前記雲台座標系の目標点位置から前記パン・チルト角を算出するパン・チルト角算出手段と、
を備えることを特徴とするパン・チルト角算出装置。
【請求項2】
前記設定手段は、
前記カメラ座標系の目標点位置
CX
aを前記スケール係数sに依存する関数
CX
a(s)として、前記カメラ座標系の座標[
CX(s),
CY(s),
CZ(s)]、前記目標点の画像座標[u
a,v
a]、画像中心の座標[c
u,c
v]、画像座標u,v方向それぞれの焦点距離f
u,f
v、及び、前記カメラ座標系で目標点位置
CX
aをz=1に正規化したときの目標点位置
CX´
aが含まれる式(15)を予め設定し、
【数1】
前記第1式として
、前記雲台座標系の目標点位置
CPX
a、前記パン・チルト座標系の目標点位置
PTX
a、及び、前記距離Lが含まれる式(16)を予め設定し、
【数2】
前記第2式として、前記外部パラメータ
CPM
W、及び、前記世界座標系の目標点位置
wX
aが含まれる式(17)を予め設定し(但し、添え字~が同次座標系を示す)、
【数3】
前記第3式として、前記スケール係数s、前記カメラ座標系から前記パン・チルト座標系への回転行列
PTR
C、及び、前記カメラ座標系から前記パン・チルト座標系への並進ベクトル
PTt´が含まれる式(19)を予め設定する
【数4】
ことを特徴とする請求項1に記載のパン・チルト角算出装置。
【請求項3】
前記パン・チルト角算出手段が算出した複数の前記パン・チルト角のうち、前回算出した前記パン・チルト角に最も近いものを選択するパン・チルト角選択手段、をさらに備えることを特徴とする請求項1又は請求項2に記載のパン・チルト角算出装置。
【請求項4】
前記パン・チルト角算出手段は、前記パン・チルト角(p,t)における前記雲台座標系から前記パン・チルト座標系への回転行列
PTR
CP(p,t)が含まれる式(21)及び式(22)を用いて、
【数5】
【数6】
前記雲台座標系の目標点位置
CPX
a、及び、前記パン・チルト座標系の目標点位置
PTX
aから、前記パン・チルト角(p,t)を算出することを特徴とする請求項1から請求項3の何れか一項に記載のパン・チルト角算出装置。
【請求項5】
コンピュータを、請求項1から請求項4の何れか一項に記載のパン・チルト角算出装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、カメラのパン・チルト角を算出するパン・チルト角算出装置及びそのプログラムに関する。
【背景技術】
【0002】
近年、映像を用いたスポーツ解析が盛んである。このスポーツ解析は、映像のみを用いることによって選手や道具にセンサを取り付ける必要がなく競技に影響を及ぼさない上、解析されたデータを様々な用途に活用できる。スポーツ解析の具体的な用途例としては、スポーツ中継番組への解析データの提示、審判補助、選手のトレーニングなどがある。
【0003】
スポーツ解析の一例として、テニスのトーナメントで使用されている審判補助システムが知られている(非特許文献1)。このシステムは、複数台のカメラを用いてテニスボールを追跡し、自動的にボールのイン・アウトを判別する審判補助の役割を担っている。また、このシステムは、同時にボールの3次元空間位置の時系列データを算出しているためスポーツ中継のスタッツ(統計)にも利用されている。
【0004】
また、スポーツ解析技術では、映像撮影用カメラとして、主に固定カメラが利用されている。この固定カメラは、シンプルな構成のため小型化しやすいというメリットもあるが、広範囲のエリアにおいて高精度な映像解析をしたい場合には問題がある。高精度な映像解析を行うためには、撮影時に高解像度な映像を撮影する必要がある。固定カメラにおいてエリア全体を撮影するため広角レンズを使用した場合、映像の解像度が低下してしまうため解析時に精度が低下してしまう。一方で、広角レンズの代わりに望遠レンズを使用した場合、高解像度な画像が撮影できるが、撮影画角が狭いので非常に多くの固定カメラを設置する必要があり、コストがかかるという問題がある。
【0005】
これら問題を解決する方法として、少ない台数のパン・チルト・ズームカメラ(PTZカメラ)を利用する方法が考えられる。PTZカメラは、パン・チルトにより広範囲なエリアを撮影でき、ズームにより高解像度な映像を撮影できる。ここで、PTZカメラで撮影を行う際、カメラ校正を行うことがある(特許文献1)。特許文献1に記載の手法は、PZTカメラの光学中心と回転中心との位置ずれを考慮したカメラモデルを用いて、カメラ校正を行うものである。
【先行技術文献】
【特許文献】
【0006】
【文献】特開2018-189580号公報(特願2017-93920号公報)
【非特許文献】
【0007】
【文献】“ホークアイ”[令和1年12月11日検索]、インターネット<URL:https://www.hawkeyeinnovations.com/>
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかし、特許文献1に記載の手法は、カメラ校正を行うに留まり、実在するカメラを正確に方向制御できないという課題がある。
【0009】
そこで、本発明は、カメラを正確に方向制御できるパン・チルト角算出装置及びそのプログラムを提供することを課題とする。
【課題を解決するための手段】
【0010】
前記課題を解決するため、本発明に係るパン・チルト角算出装置は、カメラの光学中心と回転中心との位置ずれを考慮したカメラモデルで予め求めたカメラパラメータを用いて、目標点に対するカメラのパン・チルト角を算出するパン・チルト角算出装置であって、入力手段と、設定手段と、目標点算出手段と、パン・チルト角算出手段と、を備える構成とした。
【0011】
かかる構成によれば、入力手段は、世界座標系から回転中心におけるパン角及びチルト角がゼロ度のときの雲台座標系への変換を示す外部パラメータ、及び、世界座標系の目標点位置を入力する。
設定手段は、光学中心を原点としたカメラ座標系の目標点位置をスケール係数に依存する関数と、回転中心におけるパン・チルト後のパン・チルト座標系及び雲台座標系の間で回転中心から目標点までの距離が一致することを示す第1式と、外部パラメータにより目標点位置を世界座標系から雲台座標系に変換する第2式と、パン・チルト座標系の目標点位置をスケール係数による回転行列及び並進ベクトルで表した第3式と、を予め設定する。
【0012】
目標点算出手段は、第2式により目標点位置を雲台座標系に変換し、第1式に第2式及び第3式を代入してスケール係数を算出し、算出したスケール係数を関数に代入してカメラ座標系の目標点位置を算出し、カメラ座標系の目標点位置をパン・チルト座標系に変換する。
パン・チルト角算出手段は、パン・チルト座標系及び雲台座標系の目標点位置からパン・チルト角を算出する。
以上のように、パン・チルト角算出装置は、前記したカメラモデルで求めたパラメータと、前記した第1式とを用いるので、正確なパン・チルト角を算出し、実在するカメラを正確に方向制御することができる。
【0013】
なお、本発明は、コンピュータを、前記したパン・チルト角算出装置として機能させるためのプログラムで実現することもできる。
【発明の効果】
【0014】
本発明によれば、正確なパン・チルト角を算出できるので、カメラを正確に方向制御することができる。
【図面の簡単な説明】
【0015】
【
図1】実施形態に係るパン・チルト角算出装置の構成を示すブロック図である。
【
図3】実施形態におけるカメラモデルの説明図である。
【
図4】実施形態において、パン・チルト座標系及び雲台座標系の間で回転中心から目標点までの距離が一致することを説明する説明図である。
【
図5】実施形態に係るパン・チルト角算出装置の動作を示すフローチャートである。
【発明を実施するための形態】
【0016】
以下、本発明の実施形態について図面を参照して説明する。但し、以下に説明する形態は、本発明の技術思想を具体化するためのものであって、特定的な記載がない限り、本発明を以下のものに限定しない。また、実施形態において、同一の手段には同一の符号を付し、説明を省略することがある。
【0017】
(実施形態)
[カメラ制御システムの概略]
図1を参照し、カメラ制御システム1の概略について説明する。
カメラ制御システム1は、カメラCの姿勢(パン、チルト)を制御するものであり、カメラCと、カメラ校正装置10と、カメラパラメータ記憶装置20と、パン・チルト角算出装置30とを備える。ここで、カメラ制御システム1は、各装置が同期信号により同期して動作することとする。
【0018】
カメラCは、
図2に示すように、一般的なPTZカメラであり、後記するパン・チルト角算出装置30が算出したパン角及びチルト角に従って姿勢を変化させるものである。以後、パン角及びチルト角をパン・チルト角と記載する場合がある。
また、カメラCは、パン及びチルト可能な雲台Caにマウント(搭載)されており、パン・チルト角をセンサ(不図示)により取得可能である。また、カメラCは、ズームレンズCbを搭載し、ズーム値をセンサにより取得可能である。このセンサにより取得したパン・チルト角及びズーム値は、カメラ校正時に使用される。制御には使用しないが、複数のパン・チルト角の候補から1つを選択する際に使用してもよい。なお、センサが取得したパン値、チルト値及びズーム値と、カメラCが撮影した撮影画像との時間的整合が取れていることとする。
【0019】
図1に戻り、カメラ制御システム1の説明を続ける。
カメラ校正装置10は、カメラCの光学中心と回転中心との位置ずれを考慮したカメラモデルを用いて、カメラCのカメラ校正を行うものである。すなわち、カメラ校正装置10は、このカメラモデルを用いたカメラ校正により、カメラCのカメラパラメータを推定する。そして、カメラ校正装置10は、推定したカメラパラメータをカメラパラメータ記憶装置20に書き込む。
なお、カメラモデル及びカメラパラメータの詳細は、後記する。
【0020】
ここで、カメラ校正装置10は、一般的な手法でカメラ校正を行うことができる。例えば、カメラ校正装置10は、校正パターンによる初期カメラ校正と、その校正結果による設置カメラ校正とによって、カメラ校正を行う(参考文献1,2)。この他、カメラ校正装置10は、参考文献3に記載の手法でカメラ校正を行ってもよい。
【0021】
参考文献1:特開2018-189580号公報
参考文献2:加納正規他、“センサを用いた複数のパン・チルト・ズームカメラの校正手法”、第20回画像の認識・理解シンポジウム論文集、PS3-3(2017)
参考文献3:大久保英彦他、“バーチャルスタジオ用高倍率ズームレンズのキャリブレーション手法”、電子情報通信学会技術研究報告、MVE、マルチメディア・仮想環境基礎108.226、61-66.(2008)
【0022】
カメラパラメータ記憶装置20は、カメラ校正装置10が推定したカメラパラメータを記憶するものであり、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)等の一般的な記憶装置である。カメラパラメータ記憶装置20に記憶されているカメラパラメータは、パン・チルト角算出装置30により参照される。
【0023】
パン・チルト角算出装置30は、カメラCの光学中心と回転中心との位置ずれを考慮したカメラモデルで予め求めたカメラパラメータを用いて、目標点に対するカメラCのパン・チルト角を算出するものである。そして、パン・チルト角算出装置30は、算出したパン・チルト角をカメラCに出力し、カメラCを方向制御する。
【0024】
以下、カメラ制御システム1のカメラモデルについて説明した後、パン・チルト角算出装置30の構成について説明する。
【0025】
[カメラモデル]
図3に示すように、カメラCのモデル化を行う。このカメラモデルは、雲台CaにズームレンズCbを搭載したカメラCをマウントしたモデルである。このカメラCをモデル化することで、推定すべきカメラパラメータを定義できる。そして、そのパラメータが推定できれば、関数化もしくはルックアップテーブル化することで、センサ値から一般的なカメラパラメータが算出できる。
【0026】
内部パラメータは、焦点距離や画像中心などのカメラCとレンズに関する特性を表す。本実施形態においては、ピンホールカメラモデルを想定し、レンズ歪も内部パラメータとして扱う。ズームレンズCbにおいては、ズームレンズCbの設定(ズームとフォーカスの設定)により内部パラメータが変化する。しかし、ここではフォーカスは考慮せず、ズームのみ考える。ズームを変化させるとズーム値nが変化し、それに伴い内部パラメータも変化する。このとき、内部パラメータκは、焦点距離f、アスペクト比a、画像中心Cu,Cv、レンズ歪κ1,κ2,κ3,κ4のそれぞれが、ズーム値nを変数としたパラメータとなり、以下の式(1)で表される。
【0027】
【0028】
また、レンズ歪を除き、内部パラメータΚ(n)を行列表記すると、以下の式(2)のようになる。この内部パラメータΚ(n)を内部パラメータ行列と呼ぶ。
【0029】
【0030】
一般的に、外部パラメータは、基準となる座標系(世界座標系)とカメラCの座標系との位置・姿勢の関係を表す。この関係は、並進ベクトルt=[tx,ty,tz]Tと回転角度θ=[θx,θy,θz]Tにより表現でき、座標変換と等しい。つまり、外部パラメータμは、以下の式(3)で表される。
【0031】
【0032】
以降、座標変換のパラメータも外部パラメータと呼ぶ。ここで、ある座標系ΣAから別の座標系ΣBに座標変換する場合、外部パラメータをBμAと表記する。この外部パラメータBμAを剛体変換行列BMAで表現すると、以下の式(4)となる。
【0033】
【0034】
ここで、BRAは回転角度θから求まる回転行列であり、Btは並進ベクトルである。ベクトルにおける左上の添え字は座標系を表し、剛体変換行列と回転行列の右下及び左上の添え字は変換前後の座標系を表す。つまり、外部パラメータBμAと剛体変換行列BMAは等価である。一般的な外部パラメータは、世界座標系ΣWとカメラ座標系ΣCとの位置・姿勢の関係を表すので、カメラ校正で求めるべき外部パラメータは、外部パラメータCμW、又は、剛体変換行列CMWである。
【0035】
以上をふまえ、パン・チルト・ズームカメラのモデル化を考える。
図3に示すように、雲台Caにおいて、パン・チルト軸は1点で直交していると仮定し、この点を回転中心と呼ぶ。回転中心においてパン角及びチルト角が共にゼロ度のときの座標系を雲台座標系Σ
CPと呼ぶ。このとき、世界座標系Σ
Wから雲台座標系Σ
CPへの外部パラメータは、
CPμ
Wとなる。
【0036】
回転中心においてパン・チルトをした後の座標系をパン・チルト座標系ΣPTとすると、雲台座標系ΣCPからパン・チルト座標系ΣPTへの外部パラメータは、PTμCPとなる。このとき、パン・チルト軸は一点で直交しているため、雲台座標系ΣCPとパン・チルト座標系ΣPTの間の並進ベクトルは0となり、回転要素はパン・チルトのみである。カメラCの光学中心を原点とした座標系をカメラ座標系ΣCとする。パン・チルト座標系ΣPTからカメラ座標系ΣCへの外部パラメータは、CμPTとなる。ここで、カメラ座標系ΣCの位置がズーム設定により変化するため、外部パラメータCμPTは、ズーム値nに依存するパラメータCμPT(n)となる。外部パラメータのどの要素がズーム値nに依存するかはカメラモデルの設計次第だが、本実施形態では、以下の式(5)で定義されていることとする。
【0037】
【0038】
この式(5)では、並進ベクトルの光軸方向であるZ軸成分tC
zのみをズーム値nに依存するパラメータと定義している。以上より、パン・チルト・ズームカメラにおいて世界座標系ΣWからカメラ座標系ΣCへの外部パラメータCμW(p,t,n)は、以下の式(6)で算出できる。この外部パラメータCμWは、剛体変換行列CMWのベクトル表現である。
【0039】
【0040】
カメラパラメータが定義されたので、世界座標系ΣWにおける3次元空間中の1点の撮影画像への投影を考える。ここでは、レンズ歪については考慮しない。透視投影行列Pは、内部パラメータ行列Κと剛体変換行列CMWを用いて、以下の式(7)で表される。
【0041】
【0042】
空間中に点Qがあり、世界座標系ΣWにおける座標をX=[X,Y,Z]Tとする。この点Qを透視投影行列Pにより撮影画像上に投影した場合、投影される画像座標u=[u,v]Tは、以下の式(8)で表される。この式(8)では、スケール係数をsとし、3次元座標Xの同次座標系をベクトルX~=[X,Y,Z,1]Tとし、画像座標uの同次座標系をu~=[u,v,1]Tとする。なお、スケール係数sは、カメラ座標系ΣCにおける点QのZ座標と等しくなる。
【0043】
【0044】
前記した投影モデルは、レンズ歪のない理想的なレンズの場合なので、レンズ歪を考慮した場合の点Qの投影について述べる。世界座標系ΣWでの点Qの座標WXは、外部パラメータCμW(剛体変換行列CMWと等価)によりカメラ座標系ΣCに変換され、以下の式(9)のように3次元座標CXで表される。
【0045】
【0046】
ここで、3次元座標Xの左上の添え字は、座標系を表す。このとき、正規化画像座標x=[x,y]Tは、以下の式(10)で表される。この式(10)では、ベクトルCX=[CX,CY,CZ]Tとしている。従って、レンズ歪がある場合の正規化画像座標xd=[xd,yd]Tは、以下の式(11)で表される。
【0047】
【0048】
なお、rは正規化画像の中心からの距離であり、r2=xn
2+yn
2である。このレンズ歪を考慮した正規化画像座標xdに内部パラメータをかけると、以下の式(12)のようにレンズ歪を考慮した画像座標ud=[ud,vd]Tが求められる。
【0049】
【0050】
前記したカメラモデルにおいて、内部パラメータκ(n)、外部パラメータCμPT(n)及び外部パラメータCPμWは、未知のパラメータである。従って、カメラ校正装置10では、これらカメラパラメータ(κ(n)、CμPT(n)、CPμW)を推定すればよい。
【0051】
[パン・チルト角算出装置の構成]
図1に戻り、パン・チルト角算出装置30の構成について説明する。
図1に示すように、パン・チルト角算出装置30は、パラメータ入力手段(入力手段)31と、演算式設定手段(設定手段)32と、目標点算出手段33と、パン・チルト角算出手段34と、パン・チルト角選択手段35とを備える。
【0052】
パラメータ入力手段31は、パン・チルト角の算出に必要な各種パラメータを入力(取得)するものである。ここでは、パラメータ入力手段31は、カメラパラメータ記憶装置20に記憶されているカメラパラメータ(κ(n)、CμPT(n)、CPμW)を取得する。また、パラメータ入力手段31は、手動で設定されたパラメータ及びカメラCからのパラメータ(wXa、ua、na)を取得する。そして、パラメータ入力手段31は、取得した各種パラメータを目標点算出手段33に出力する。
【0053】
<パラメータ>
ここで、パラメータ入力手段31が取得するパラメータについて説明する。
カメラパラメータには、内部パラメータκ(n)、外部パラメータCμPT(n)、及び、外部パラメータCPμWが含まれている。
内部パラメータκ(n)は、カメラCとレンズに関する特性を表すパラメータである。
外部パラメータCμPT(n)は、パン・チルト座標系ΣPTからカメラ座標系ΣCへの変換を示す外部パラメータである(剛体変換行列CMPT(n)と等価)。
外部パラメータCPμWは、世界座標系ΣWから雲台座標系ΣCPへの変換を示す外部パラメータである(剛体変換行列CPMWと等価)。
【0054】
設定パラメータには、目標点位置wXa、画像座標ua、及び、ズーム値naが含まれている。
目標点位置wXaは、パン・チルトによりカメラCを向ける目標点Aの位置を世界座標系ΣWで示したものである。
画像座標uaは、目標点位置wXaを画像座標系で示しており、目標点Aを投影(例えば、透視投影)する画像座標を示すものである。ここで、画像座標uaは、レンズ歪のない画像座標を想定している。また、レンズ歪がある場合、レンズ歪係数を用いて、画像座標uaからレンズ歪を予め除去することが好ましい(参考文献4)。
ズーム値naは、カメラCのズームレンズCbのズーム値である。このズーム値naは、手動で設定する。
【0055】
参考文献4:“OpenCV”、[令和1年12月11日検索]、インターネット<URL:https://opencv.org/>
【0056】
演算式設定手段32は、パン・チルト角の算出に必要な各種演算式を予め設定するものである。この演算式には、後記する関数として式(15)、第1式として式(16)、第2式として式(17)、及び、第3式として式(19)が含まれている。そして、演算式設定手段32は、設定された演算式を目標点算出手段33に出力する。
【0057】
目標点算出手段33は、パラメータ入力手段31からのパラメータ及び演算式設定手段32で設定された演算式を参照し、パン・チルト座標系及び雲台座標系のそれぞれで目標点位置を算出するものである。そして、目標点算出手段33は、算出した値をパン・チルト角算出手段34に出力する。
なお、目標点位置及びパン・チルト角の算出は、詳細を後記する。
【0058】
パン・チルト角算出手段34は、目標点算出手段33が算出したパン・チルト座標系及び雲台座標系の目標点位置から、カメラCのパン・チルト角を算出するものである。そして、パン・チルト角算出手段34は、算出したパン・チルト角をパン・チルト角選択手段35に出力する。なお、パン・チルト角算出手段34は、複数のパン・チルト角を算出し、パン・チルト角選択手段35に出力することがある。
【0059】
パン・チルト角選択手段35は、パン・チルト角算出手段34が算出した複数のパン・チルト角のうち、前回算出したパン・チルト角に最も近いものを選択するものである。つまり、パン・チルト角選択手段35は、複数のパン・チルト角が入力された場合、直前のパン・チルト角に最も近い1つのパン・チルト角を選択する。そして、パン・チルト角選択手段35は、選択したパン・チルト角を、カメラCの姿勢制御目標値としてカメラCに出力する。
なお、パン・チルト角選択手段35は、パン・チルト角算出手段34からパン・チルト角が1つだけ入力された場合、そのパン・チルト角をそのままカメラCに出力すればよい。
【0060】
以上のように、パン・チルト角算出装置30は、パン角p及びチルト角tの組であるパン・チルト角(p,t)をカメラCに出力することで、カメラCの姿勢を制御する。これにより、カメラCが目標点Aの方向を正確に向き、目標点位置wXaの目標点Aが画像座標uaに投影されることになる。
【0061】
<目標点位置及びパン・チルト角の算出>
以下、目標点位置及びパン・チルト角の算出を具体的に説明する。
入力されたズーム値naに応じて、パラメータκ(n),CμPT(n)は一意に定まる。そのため、以後の説明では、(n)の表記を省略する場合がある。
【0062】
式(8)に式(7)を代入すると、以下の式(13)となる。なお、外部パラメータCμPT(剛体変換行列CMPTと等価)は、式(6)に示すように、式(13)の剛体変換行列CMWの算出に利用される。
【0063】
【0064】
この式(13)に式(9)及び設定パラメータX=Xa,u=uaを代入して変形すると、以下の式(14)となる。
【0065】
【0066】
ここで、fx=f、fy=afである。式(14)を展開し、カメラ座標系ΣCの目標点位置CXaをスケール係数sに依存する関数として表記すると、以下の式(15)となる。従って、演算式設定手段32には、スケール係数sの関数CXa(s)として、式(15)を予め設定する。
【0067】
【0068】
なお、カメラ座標系ΣCの座標[CX(s),CY(s),CZ(s)]、目標点Aの画像座標[ua,va]、画像中心の座標[cu,cv]、画像座標u,v方向それぞれの焦点距離fu,fv、及び、カメラ座標系ΣCで目標点位置CXaをz=1に正規化したときの目標点位置CX´aを示す。
【0069】
ここで、目標点Aが常にカメラCの前方に位置するため、s>0が成立する。また、
図4には、カメラ座標系Σ
C、パン・チルト座標系Σ
PT及び雲台座標系Σ
CPの位置関係を図示した。
図4に示すように、カメラ座標系Σ
Cの中心(カメラCの光学中心)αと、パン・チルト座標系Σ
PT及び雲台座標系Σ
CPの回転中心βとの位置がずれている。その一方、パン・チルト座標系Σ
PT及び雲台座標系Σ
CPの間では、原点である回転中心βの位置が一致する。このため、回転中心βから目標点Aまでの距離Lがパン・チルト座標系Σ
PT及び雲台座標系Σ
CPの間で等しくなり、以下の式(16)が成立する。従って、演算式設定手段32には、第1式として、雲台座標系Σ
CPの目標点位置
CPX
a、パン・チルト座標系Σ
PTの目標点位置
PTX
a、及び、距離Lが含まれる式(16)を予め設定する。なお、||・||
2はL2ノルムを意味する。
【0070】
【0071】
雲台座標系ΣCPの目標点位置CPXaは、以下の式(17)で算出できる。従って、演算式設定手段32には、第2式として、外部パラメータCPMW、及び、世界座標系ΣWの目標点位置wXaが含まれる式(17)を予め設定する。
【0072】
【0073】
以下の式(18)を式(15)に代入して整理すると、以下の式(19)となる。従って、演算式設定手段32には、第3式として、スケール係数s、カメラ座標系ΣCからパン・チルト座標系ΣPTへの回転行列PTRC、及び、カメラ座標系ΣCからパン・チルト座標系ΣPTへの並進ベクトルPTt´が含まれる式(19)を予め設定する。なお、PTt´及びPTRCは、剛体変換行列PTMCの並進ベクトル成分と回転行列成分である。
【0074】
【0075】
まず、目標点算出手段33は、式(17)により、設定パラメータとして入力された世界座標系ΣWの目標点位置wXaを、雲台座標系ΣCPの目標点位置CPXaに変換する。
【0076】
次に、目標点算出手段33は、式(16)に式(17)及び式(19)を代入した方程式を解いて、スケール係数sを算出する。このとき、目標点算出手段33は、一般的な条件において、s>0が成立するので、スケール係数sの解を1つに定めることができる。この一般的な条件とは、距離Lが並進ベクトルPTt´の長さを超えることである(L>PTt´)。この場合、スケール係数sが必ず正負の2つの解になるため、s>0により1つの解に定められる。
【0077】
次に、目標点算出手段33は、算出したスケール係数sを式(15)の関数CXa(s)に代入し、カメラ座標系ΣCの目標点位置CXaを算出する。さらに、目標点算出手段33は、以下の式(20)により、カメラ座標系ΣCの目標点位置CXaをパン・チルト座標系ΣPTの目標点位置PTXaに変換する。
【0078】
【0079】
以上の演算により、パン・チルト座標系ΣPTの目標点位置PTXa、及び、雲台座標系ΣCPの目標点位置CPXaが既知となる。これら2つの目標点位置PTXa,CPXaと、回転行列PTRCP(p,t)との関係は、以下の式(21)で表される。なお、回転行列PTRCP(p,t)は、パン・チルト角(p,t)における雲台座標系ΣCPからパン・チルト座標系ΣPTへの回転行列であり、以下の式(22)で表される。
【0080】
【0081】
すなわち、パン・チルト角算出手段34は、式(21)及び式(22)を用いて、既知のパン・チルト座標系ΣPTの目標点位置PTXa、及び、雲台座標系ΣCPの目標点位置CPXaから、パン・チルト角(p,t)を算出する。具体的には、パン・チルト角算出手段34は、cos2p+sin2p=1又はcos2t+sin2t=1の条件を加えて、式(21)及び式(22)の連立方程式を解くことで、パン・チルト角(p,t)を算出できる。
【0082】
ここで、複数のパン・チルト角(p,t)が算出されてしまい、パン・チルト角(p,t)が一意に定まらない場合がある。すなわち、パン・チルト角算出手段34が、複数のパン・チルト角(p,t)を算出する場合がある。そこで、パン・チルト角選択手段35は、パン・チルト角算出手段34が算出した複数のパン・チルト角(p,t)のうち、直前のフレームでのパン・チルト角(p,t)により近い値を採用する。ここで、現在のフレームfでのパン・チルト角を(pf,tf)とし、一つ前のフレームf-1でのパン・チルト角を(pf-1,tf-1)とする。この場合、パン・チルト角選択手段35は、関数dist([pf-pf-1,tf-tf-1])が最小となるパン・チルト角(p,t)を選択する。また、(pf-1,tf-1)は、センサにより取得したパン・チルト角を使用してもよい。
【0083】
なお、関数distは、距離を求める関数であり、ベクトルv=[x,y]TのL1ノルムやL2ノルムとすればよい。ここで、L1ノルムの場合、dist=abs(x)+abs(y)となる。また、L2ノルムの場合、sqrt(x×x+y×y)となる。なお、absが絶対値を求める関数であり、sqrtが平方根を求める関数である。
【0084】
[パン・チルト角算出装置の動作]
図5を参照し、パン・チルト角算出装置30の動作について説明する。
図5に示すように、ステップS1において、パラメータ入力手段31は、パン・チルト角(p,t)の算出に必要な各種パラメータ(κ(n)、
Cμ
PT(n)、
CPμ
W、
wX
a、u
a、n
a)を入力する。
ステップS2において、演算式設定手段32は、パン・チルト角(p,t)の算出に必要な各種演算式(式(15)~式(19))を予め設定する。
【0085】
ステップS3において、目標点算出手段33は、ステップS1のパラメータ及びステップS2の演算式を参照し、パン・チルト座標系ΣPTの目標点位置PTXa、及び、雲台座標系ΣCPの目標点位置CPXaを算出する。
ステップS4において、パン・チルト角算出手段34は、ステップS3で算出したパン・チルト座標系ΣPTの目標点位置PTXa、及び、雲台座標系ΣCPの目標点位置CPXaから、カメラCのパン・チルト角(p,t)を算出する。
ステップS5において、パン・チルト角選択手段35は、ステップS4で算出した複数のパン・チルト角(p,t)のうち、前回算出したパン・チルト角(p,t)に最も近いものを選択する。
【0086】
[作用・効果]
以上のように、パン・チルト角算出装置30は、カメラCの光学中心と回転中心との位置ずれを考慮したカメラモデルで求めたパラメータと、パン・チルト座標系ΣPTの及び雲台座標系ΣCPの間で回転中心から目標点Aまでの距離Lが一致することを示す第1式とを用いる。これにより、パン・チルト角算出装置30は、正確なパン・チルト角(p,t)を算出できるので、カメラCを正確に方向制御することができる。
【0087】
(変形例)
以上、本発明の実施形態を詳述してきたが、本発明は前記した実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
パン・チルト角選択手段は、予め設定されたカメラの可動域内でパン・チルト角を選択してもよい。
【0088】
前記した実施形態では、パン・チルト角算出装置を独立したハードウェアとして説明したが、本発明は、これに限定されない。例えば、本発明は、コンピュータが備えるCPU、メモリ、ハードディスク等のハードウェア資源を、前記したパン・チルト角算出装置として動作させるプログラムで実現することもできる。これらのプログラムは、通信回線を介して配布してもよく、CD-ROMやフラッシュメモリ等の記録媒体に書き込んで配布してもよい。
【符号の説明】
【0089】
1 カメラ制御システム
10 カメラ校正装置
20 カメラパラメータ記憶装置
30 パン・チルト角算出装置
31 パラメータ入力手段(入力手段)
32 演算式設定手段(設定手段)
33 目標点算出手段
34 パン・チルト角算出手段
35 パン・チルト角選択手段
C カメラ