(57)【要約】【課題】カメラキャリブレーションの効率化及び高精度化を実現させて被写体の計測精度を向上させる。【解決手段】誤差評価部１３は各画像の指定された被写体の下端座標をパラメータ設定部１２が設定した撮像パラメータに基づき床面上位置に投影した場合の仮想下端位置を算出し、この仮想下端位置に基づき実空間上で前記高さだけ鉛直上方にある位置を仮想上端位置として算出し、この仮想上端位置と前記設定された撮像パラメータとに基づき画像上に再投影した場合の仮想上端再投影座標を算出し、各画像の前記指定された上端座標と前記算出された仮想上端再投影座標との距離を再投影誤差として算出し、この算出した各画像の再投影誤差の和を算出する過程を、前記撮像パラメータの設定毎に実行する。パラメータ決定部１４は前記逐次設定された撮像パラメータのうちで前記再投影誤差の和が最小となるものを最適な撮像パラメータとして決定する。【選択図】図１
2011215082.tif 000002
【特許請求の範囲】
【請求項１】
床面上の被写体を撮影する撮像装置の撮像パラメータを決定する撮像パラメータ決定方法であって、
端座標指定手段が床面から鉛直方向に一定の高さを有する被写体の床面上での位置を変えながら撮像装置が当該被写体を撮影することによって取得された複数の画像に対して当該被写体の上端座標及び下端座標を指定するステップと、
パラメータ設定手段が撮像装置の撮像パラメータの値を逐次設定するステップと、
誤差評価手段が、各画像の前記設定された下端座標を前記設定された撮像パラメータに基づき床面上位置に投影した場合の仮想下端位置を算出し、この仮想下端位置に基づき実空間上で前記高さだけ鉛直上方にある位置を仮想上端位置として算出し、この仮想上端位置と前記設定された撮像パラメータとに基づき画像上に再投影した場合の仮想上端再投影座標を算出し、各画像の前記指定された上端座標と前記算出された仮想上端再投影座標との距離を再投影誤差として算出し、この算出した各画像の再投影誤差の和を算出する過程を、前記撮像パラメータの設定毎に実行するステップと、
パラメータ決定手段が前記逐次設定された撮像パラメータのうちで前記再投影誤差の和が最小となるものを最適な撮像パラメータとして決定するステップとを有すること
を特徴とする撮像パラメータ決定方法。
【請求項２】
床面上の被写体を撮影する撮像装置の撮像パラメータを決定する撮像パラメータ決定方法であって、
端座標指定手段が床面から鉛直方向に一定の高さを有する被写体の床面上での位置を変えながら撮像装置が当該被写体を撮影することによって取得された複数の画像に対して当該被写体の上端座標及び下端座標を指定するステップと、
パラメータ設定手段が撮像装置の撮像パラメータの初期値を設定するステップと、
誤差評価手段が、前記撮像パラメータの個々の初期値が変更された値に基づき各画像における下端座標を対応する床面上位置に投影した場合の仮想下端位置を算出し、この仮想下端位置に基づき実空間上で前記高さだけ鉛直上方にある位置を仮想上端位置として算出し、この仮想上端位置と前記設定された撮像パラメータとに基づき画像上に再投影した場合の仮想上端再投影座標値を算出し、各画像の前記設定された上端座標と前記算出された仮想上端再投影座標との距離を再投影誤差として算出するステップと、
パラメータ決定手段が、前記撮像パラメータの変更による再投影誤差の変化に基づき当該撮像パラメータの微分係数を算出し、この微分係数に基づき変更された撮像パラメータを前記再投影誤差の算出に供する更新処理を予め決めておいた所定の条件を満たすまで繰返して実行し、変更後の撮像パラメータを最適な撮像パラメータとして決定するステップを有すること
を特徴とする撮像パラメータ決定方法。
【請求項３】
前記撮像パラメータの初期値を設定するステップにおいて、当該初期値として請求項１に記載の撮像パラメータ決定方法によって決定された撮像パラメータの値が設定されること
を特徴とする請求項２に記載の撮像パラメータ決定方法。
【請求項４】
被写体の下端位置が床面から一定の高さの位置にある場合、当該位置を含んだ水平面を仮想的な床面とし、前記一定の高さの値を減じた当該被写体の高さの値が当該被写体の仮想的な高さとして前記上端座標及び下端座標を指定するステップに供され、これにより決定された撮像パラメータの成分である当該被写体の高さの値に前記一定の高さの値を加算したものを最適な撮像パラメータとすること
を特徴とする請求項１から３のいずれか１項に記載の撮像パラメータ決定方法。
【請求項５】
前記上端座標値および下端座標値を指定するステップにおいて、前記画像における被写体の上端座標値および下端座標値の指定を画像処理技術によって実行すること
を特徴とする請求項１から４のいずれか１項に記載の撮像パラメータ決定方法。
【請求項６】
床面上の被写体を撮影する撮像装置の撮像パラメータを決定する撮像パラメータ決定装置であって、
床面から鉛直方向に一定の高さを有する被写体の床面上での位置を変えながら撮像装置が当該被写体を撮影することによって取得された複数の画像に対して当該被写体の上端座標及び下端座標を指定する端座標指定手段と、
撮像装置の撮像パラメータの値を逐次設定するパラメータ設定手段と、
各画像の前記指定された下端座標を前記設定された撮像パラメータに基づき床面上位置に投影した場合の仮想下端位置を算出し、この仮想下端位置に基づき実空間上で前記高さだけ鉛直上方にある位置を仮想上端位置として算出し、この仮想上端位置と前記設定された撮像パラメータとに基づき画像上に再投影した場合の仮想上端再投影座標を算出し、各画像の前記指定された上端座標と前記算出された仮想上端再投影座標との距離を再投影誤差として算出し、この算出した各画像の再投影誤差の和を算出する過程を、前記撮像パラメータの設定毎に実行する誤差評価手段と、
前記逐次設定された撮像パラメータのうちで前記再投影誤差の和が最小となるものを最適な撮像パラメータとして決定するパラメータ決定手段と
を備えたこと
を特徴とする撮像パラメータ決定装置。
【請求項７】
請求項１から５のいずれか１項に記載の撮像パラメータ決定方法の各ステップをコンピュータに実行させるための撮像パラメータ決定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、映像監視システム等において、被写体のサイズや位置などの情報をカメラ画像から計測する際などに事前に必要となるカメラの各画素と実空間との対応付け所謂カメラキャリブレーションを行うための技術に関する。
【背景技術】
【０００２】
カメラキャリブレーションを行う場合、特定の被写体を撮影し、それに基づき所定の幾何計算を行うことによって必要なカメラパラメータを算出することがその基本となる。
【０００３】
被写体としてドットパターンもしくは格子パターンのような幾何学的な形状およびサイズが完全に既知である被写体を用いる方法が一般的である。キャリブレーションの精度を確保するためには、画像において一定以上の大きさで被写体が写るように撮影する必要がある。ところが、撮影エリアが広い場合や、周囲に人がいる場合や邪魔な構造物がある場合など、その撮影が困難なケースがしばしば発生する。
【０００４】
このような問題が発生しにくい被写体としては、鉛直方向に一定の高さのある１次元の被写体が考えられる。この１次元の被写体を用いる場合、上記の幾何学的な性質が完全に既知である被写体を単に撮影する場合とは異なり、１回撮影しただけではカメラパラメータを推定することは原理的に困難である。
【０００５】
そこで、被写体が床面に拘束されているという制約条件の中で、異なる位置にある被写体を撮影した複数の画像セットを用いてパラメータを推定するようにしている。非特許文献１に記載の推定法は、鉛直方向に所定の高さを持つ被写体として人物を想定し、その撮影場所に現れる人物の画像上での上端及び下端を検出する。そして、予め用意された身長に関する統計データ（平均身長と身長の標準偏差）と整合性の高いカメラパラメータをＲＡＮＳＡＣ法により推定する。
【０００６】
この方法では、カメラの向きが水平に近いという仮定のもと、焦点距離、カメラの俯角等のパラメータを近似によって消去することにより、１）カメラの高さ、および２）画像における床面（地面）の消失位置、の二つのパラメータを算出する式を導出する。
【０００７】
しかしながら、この方法はカメラの俯角が大きい場合などには当然のことながら正しい推定は困難となり、その適用範囲は大きく制限されてしまう。
【先行技術文献】
【非特許文献】
【０００８】
【非特許文献１】安藤寛哲，藤吉弘亘，「人検出結果に基づくカメラの自己キャリブレーションと３次元位置推定」，電気学会一般産業研究会，８号，２００９年１２月，ｐｐ．１／６−６／６
【非特許文献２】宮川  勲，新井啓之，小池秀樹，「映像からの人数推定における遺伝的アルゴリズムを使ったカメラパラメータの調整」，日本知能情報ファジィ学会誌，Ｖｏｌ．２１，Ｎｏ．１，２００９年２月，ｐｐ．４１−５５
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本発明は、上述したような問題点を鑑みなされたもので、カメラキャリブレーションを効率化及び高精度化させることができる撮像パラメータの決定技術の提供を目的とする。
【課題を解決するための手段】
【００１０】
そこで、本発明は被写体の再投影誤差が小さくなるように撮像パラメータを決定することでカメラキャリブレーションの効率化及び高精度化を図る。
【００１１】
本発明の撮像パラメータ決定方法の態様としては、床面上の被写体を撮影する撮像装置の撮像パラメータを決定する撮像パラメータ決定方法であって、端座標指定手段が床面から鉛直方向に一定の高さを有する被写体の床面上での位置を変えながら撮像装置が当該被写体を撮影することによって取得された複数の画像に対して当該被写体の上端座標及び下端座標を指定するステップと、パラメータ設定手段が撮像装置の撮像パラメータの値を逐次設定するステップと、誤差評価手段が、各画像の前記設定された下端座標を前記設定された撮像パラメータに基づき床面上位置に投影した場合の仮想下端位置を算出し、この仮想下端位置に基づき実空間上で前記高さだけ鉛直上方にある位置を仮想上端位置として算出し、この仮想上端位置と前記設定された撮像パラメータとに基づき画像上に再投影した場合の仮想上端再投影座標を算出し、各画像の前記指定された上端座標と前記算出された仮想上端再投影座標との距離を再投影誤差として算出し、この算出した各画像の再投影誤差の和を算出する過程を、前記撮像パラメータの設定毎に実行するステップと、パラメータ決定手段が前記逐次設定された撮像パラメータのうちで前記再投影誤差の和が最小となるものを最適な撮像パラメータとして決定するステップとを有する。
【００１２】
上記撮像パラメータ決定方法に対応した撮像パラメータ決定装置の態様としては、床面上の被写体を撮影する撮像装置の撮像パラメータを決定する撮像パラメータ決定装置であって、床面から鉛直方向に一定の高さを有する被写体の床面上での位置を変えながら撮像装置が当該被写体を撮影することによって取得された複数の画像に対して当該被写体の上端座標及び下端座標を指定する端座標指定手段と、撮像装置の撮像パラメータの値を逐次設定するパラメータ設定手段と、各画像の前記指定された下端座標を前記設定された撮像パラメータに基づき床面上位置に投影した場合の仮想下端位置を算出し、この仮想下端位置に基づき実空間上で前記高さだけ鉛直上方にある位置を仮想上端位置として算出し、この仮想上端位置と前記設定された撮像パラメータとに基づき画像上に再投影した場合の仮想上端再投影座標を算出し、各画像の前記指定された上端座標と前記算出された仮想上端再投影座標との距離を再投影誤差として算出し、この算出した各画像の再投影誤差の和を算出する過程を、前記撮像パラメータの設定毎に実行する誤差評価手段と、前記逐次設定された撮像パラメータのうちで前記再投影誤差の和が最小となるものを最適な撮像パラメータとして決定するパラメータ決定手段とを備える。
【００１３】
また、本発明の撮像パラメータ決定方法の他の態様としては、床面上の被写体を撮影する撮像装置の撮像パラメータを決定する撮像パラメータ決定方法であって、端座標指定手段が床面から鉛直方向に一定の高さを有する被写体の床面上での位置を変えながら撮像装置が当該被写体を撮影することによって取得された複数の画像に対して当該被写体の上端座標及び下端座標を指定するステップと、パラメータ設定手段が撮像装置の撮像パラメータの初期値を設定するステップと、誤差評価手段が、前記撮像パラメータの個々の初期値が変更された値に基づき各画像における下端座標を対応する床面上位置に投影した場合の仮想下端位置を算出し、この仮想下端位置に基づき実空間上で前記高さだけ鉛直上方にある位置を仮想上端位置として算出し、この仮想上端位置と前記設定された撮像パラメータとに基づき画像上に再投影した場合の仮想上端再投影座標値を算出し、各画像の前記設定された上端座標と前記算出された仮想上端再投影座標との距離を再投影誤差として算出するステップと、パラメータ決定手段が、前記撮像パラメータの変更による再投影誤差の変化に基づき当該撮像パラメータの微分係数を算出し、この微分係数に基づき変更された撮像パラメータを前記再投影誤差の算出に供する更新処理を予め決めておいた所定の条件を満たすまで繰返して実行し、変更後の撮像パラメータを最適な撮像パラメータとして決定するステップとを有する。
【００１４】
尚、本発明はコンピュータに上記の撮像パラメータ決定方法の各ステップを実行させるための撮像パラメータ決定プログラムの態様とすることもできる。
【発明の効果】
【００１５】
以上の発明によればカメラキャリブレーションの効率化及び高精度化を実現させて被写体の計測精度を向上させることできる。
【図面の簡単な説明】
【００１６】
【図１】発明の実施形態１に係る撮像パラメータ決定装置のブロック構成図。
【図２】実施形態１に係る撮像パラメータ決定の手順を説明したフローチャート図。
【図３】発明の実施形態２に係る撮像パラメータ決定装置のブロック構成図。
【図４】実施形態２に係る撮像パラメータ決定の手順を説明したフローチャート図。
【図５】撮像パラメータの一例を説明した説明図。
【図６】被写体（人物）の上端点及び下端点が指定される過程を説明した説明図。
【図７】再投影誤差の評価手順を模式的に説明した説明図。
【発明を実施するための形態】
【００１７】
以下、本発明の実施の形態について図面を参照しながら説明する。
【００１８】
［実施形態１］
（概要）
図１に示された本実施形態に係る撮像パラメータ決定装置１は、映像監視システムの一構成要素を成すもので、撮像装置（カメラやビデオカメラ）で撮影された画像を用いて、当該撮像装置の各画素と実空間との対応付け、所謂、カメラキャリブレーションを行う。特に被写体の再投影誤差が最小にするような撮像パラメータを決定することでカメラキャリブレーションの効率化及び高精度化を図る。
【００１９】
カメラキャリブレーションは、基準となる座標系（例えば床面）に対する撮像装置の位置及び撮影方向を示す外部パラメータの算出と、撮像装置の焦点距離やレンズ系の歪を示す内部パラメータの算出に大別される。
【００２０】
カメラキャリブレーションが必要な事例として、固定型の撮像装置によって床面上の被写体の大きさを測定する場合について説明する。この事例では、図５に示したようにキャリブレーション対象となる外部パラメータは撮像装置の高さＴｚ、水平軸（ｘ軸）周りの角度φ、水平軸（ｙ軸）周りの角度ωの３パラメータのみである。床面上での方位（東西南北）に関するパラメータや床面上での位置に関するパラメータは不要である。一方、内部パラメータについては、焦点距離α（若しくは画像と実空間との拡大率に相当するパラメータ）は必須である。尚、撮像装置の歪などのパラメータも算出することが望ましいが、撮像装置のレンズ系の状態や求める計測精度によっては必ずしも必要ではない。
【００２１】
本実施形態は、撮像装置の撮像パラメータとして高さＴｚ、角度φ、角度ω、焦点距離αの４パラメータを決定する態様となっている。焦点距離α以外の内部パラメータについても本発明の手法を適用して算出できるが、ここでは決定すべき内部パラメータを焦点距離αのみとして説明する。
【００２２】
また、本実施形態においては、キャリブレーション用の被写体としては垂直軸方向に一定の高さを持ったものを想定しているが、ダンボール箱や書棚など箱状の構造物の側辺の上端と下端に注目してもよい。また、直立した人物の頭及び踵をそれぞれ上端及び下端としてもよい。その他、様々な被写体が考えられるが、ここでは、鉛直方向の高さがｈであること以外は特に限定しない。
【００２３】
（装置の構成）
撮像パラメータ決定装置１はＣＰＵ、ＲＡＭ、ＲＯＭ、ハードディスクドライブ装置、Ｉ／Ｆ（入出力デバイス）等のハードウェアリソースを備える。そして、このハードウェアリソースがソフトウェアリソース（ＯＳ、アプリケーション等）と協働することより図１に示された撮像パラメータ決定装置１を構成する端座標指定部１１とパラメータ設定部１２と誤差評価部１３とパラメータ決定部１４とが実装される。以下、各機能部１１〜１４について説明する。
【００２４】
端座標指定部１１は、床面から鉛直方向に一定の高さを有する被写体をその床面上での撮像装置の位置を変えながらの撮影によって取得された複数の画像に対して当該被写体の上端座標及び下端座標を指定する。尚、端座標指定部１１は有線または無線の通信回線を介して前記複数の画像を前記撮像装置から取得する。
【００２５】
パラメータ設定部１２は撮像装置の撮像パラメータの値を逐次設定する。
【００２６】
誤差評価部１３は各画像の前記指定された下端座標を前記設定された撮像パラメータに基づき床面上位置に投影した場合の仮想下端位置を算出する。次いで、この仮想下端位置に基づき実空間上で前記高さだけ鉛直上方にある位置を仮想上端位置として算出する。次いで、この仮想上端位置と前記設定された撮像パラメータとに基づき画像上に再投影した場合の仮想上端再投影座標を算出する。次いで、各画像の前記指定された上端座標と前記算出された仮想上端再投影座標との距離を再投影誤差として算出する。そして、この算出した各画像の再投影誤差の和を算出する。誤差評価部１３は以上の演算の過程を前記撮像パラメータの設定毎に実行する。
【００２７】
パラメータ決定部１４は前記逐次設定された撮像パラメータのうちで前記再投影誤差の和が最小となるものを最適な撮像パラメータとして決定する。
【００２８】
（撮像パラメータの決定手順の説明）
図２を参照しながら本実施形態に係る撮像パラメータ決定の手順Ｓ１〜Ｓ６についてより詳細に説明する。以下の説明では、画像上の座標値（２次元）は小文字で（ｘ，ｙ）と表し，実空間の座標値（３次元）は大文字で（Ｘ，Ｙ，Ｚ）と標記する。
【００２９】
Ｓ１：図５に示された撮影現場において撮像装置５はその装置位置及び撮影向きが位置（Ｔｘ，Ｔｙ，Ｔｚ）及び向き（φ，ω，θ）に設定された状態で床面上での被写体の位置を変えながら当該被写体が画面内に収まるように撮影する。前記設定された向きの成分である角度θは図５に示された垂直軸（ｚ軸）周りの角度を示す（実施形態２においても同様）。この撮影によって得られた複数（ｎ枚）の画像は撮像パラメータ決定装置１に入力される。
【００３０】
この撮影枚数は、最低でも推定するパラメータ数ｑに対して、［ｑ／２］（［ｑ］は少数点以下を切り上げの演算を示す。ｑ＝４なら２、ｑ＝５なら３）以上であることが必要となるが、より多い枚数のほうが一般にパラメータの推定精度は高くなる。以下のステップの説明では、図６のように、５枚の画像を用いるものとして、また被写体としては身長ｈが既知の人物を例に説明していく。
【００３１】
Ｓ２：端座標指定部１１は撮像装置５から入力された各画像における前記被写体の上端座標値（ｘｔ，ｙｔ）、下端座標値（ｘｂ，ｙｂ）を指定する。
【００３２】
被写体の上端及び下端の指定方法としてはポインティングデバイスによる指定方法や画像処理技術による指定方法が例示される。
【００３３】
ポインティングデバイスによる指定方法は撮像パラメータ決定装置１を実装するコンピュータが表示装置（ディスプレイ装置）に表示させた画像に対して被写体の頭頂部や踵の位置をマウスに例示されるポインティングデバイスによって指定する方法である。
【００３４】
画像処理技術による指定方法は、被写体が存在しない画像（背景画像）を予め撮影しておき、この画像の画素値と被写体が映っている画像の画素値とを比較する。次いで、一定の閾値以上の差が検出された場合、後者の画像における当該差が検出された画素を前景画素（被写体の画素）と判断する。そして、この前景画素の連結領域を検出する処理（ラベリング処理）を行い、さらに、前記連結領域の上端、下端を検出する。尚、この前景画素、上端、下端の検出法は、周知の検出技術を適用すればよく、特に限定しない。
【００３５】
Ｓ３：パラメータ設定部１２は撮像装置５の撮像パラメータの各値を逐次設定する。本実施形態例では高さＴｚ、角度φ、角度ω、焦点距離αのセットで撮像パラメータが設定される。
【００３６】
撮像パラメータの逐次設定方法は、例えば、パラメータの各値（高さＴｚ、角度φ、角度ω、焦点距離α）を一定の範囲（下限と上限の間）で一定の刻み幅で網羅的に変化させる方法が挙げられる。例えば、撮像装置の高さＴｚの値を設定する場合、Ｔｚの値を例えば下限値２．００ｍから０．０１ｍずつ増やしていき上限値２０ｍまでの範囲で変更する。同様の要領で他の撮像パラメータの値（角度φ、角度ω、焦点距離α）を設定すればよい。尚、撮像パラメータの値の上限、下限、および刻み幅については、経験的に想定される範囲内で決めればよい。
【００３７】
このように撮像パラメータが高さＴｚ、角度φ、角度ω、焦点距離αのセットで設定されると、Ｓ４の再投影誤差の評価ステップに供される。
【００３８】
Ｓ４：誤差評価部１３はＳ３で撮像パラメータのセット（高さＴｚ、角度φ、角度ω、焦点距離α）が設定された毎に再投影誤差を算出する。
【００３９】
図７を参照しながら再投影誤差の算出の手順Ｓ４１〜Ｓ４４について詳細に説明する。
【００４０】
（Ｓ４１）設定された撮像パラメータのセットの値に従い、画像上での下端座標値（ｘｂ，ｙｂ）を、実空間の床面に投影した仮想下端点位置（Ｘ，Ｙ，０）を算出する。算出した位置の成分Ｚの値がＺ＝０となっているのは床面の高さを０として、高さ方向の値を設定していることによる。床面の高さを０としなくとも本質的な問題は発生しないが、本実施形態例では、床面の高さをＺ＝０とした。
【００４１】
ここで、上記の画像上での下端座標値（ｘ，ｙ）を、実空間の床面に投影した仮想下端点位置（Ｘ，Ｙ，０）を算出する変換方法（関数）は、非特許文献２に開示された演算法を適用すればよい。この演算法について以下に詳細に説明する。
【００４２】
実空間の３次元座標を表現するため、任意に世界座標系ＸwＹwＺwを設定することができる。撮像装置は固定されており、この撮像装置を通して観測できる画像上の投影点はピンホールカメラと呼ばれる透視投影モデルに従うと仮定する。すなわち、世界座標系上の３次元点をＰj＝（Ｘj，Ｙj，Ｚj）、撮像装置の位置をＣ＝（Ｔｘ，Ｔｙ，Ｔｚ）とすると、画像上で観測される点Ｐjの２次元座標ｐj＝（ｘj，ｙj）は、単純に式（１），（２）の射影関係で結びつけることができる。
【００４３】
【数１】
2011215082.tif 000003
【００４４】
式（１）（２）において、ｆは図５に示された焦点距離αに相当し、Ｒ11，Ｒ12，…，Ｒ33は３×３の回転行列の要素に対応する。φ，ω，θをそれぞれカメラ座標系ＸＹＺにおけるＸ軸、Ｙ軸、Ｚ軸周りの回転角とすると、各回転要素は式（３）〜（１１）で与えられる。これらの式（１）〜（１１）により、カメラの位置、向きおよび焦点距離がそれぞれ（Ｔｘ，Ｔｙ，Ｔｚ），（φ，ω，θ）およびｆ（前述のαに対応）で指定される場合の実空間の３次元座標Ｐj＝（Ｘj，Ｙj，Ｚj）が対応する（射影される）画像上の座標２次元座標ｐj＝（ｘj，ｙj）を求めることができる。つまり、実空間から画像へ座標変換を行うための式である。本実施形態においては、床面上での絶対的な位置や床面上での東西南北は指定しない形になっているため、これに伴いＴｘ，Ｔｙ，θは推定対象外（どんな値でも良い）となっている。上述した式（１）〜（１１）を適用する際、これらの推定対象外となっている外部パラメータについては任意の値を固定値として設定しておけばよい。例えばこれら全ての値を０にするなどである。これらの値は後述するパラメータの推定結果に対して影響を与えない。
【００４５】
一方、画像上の座標値ｐj＝（ｘj，ｙj）に対応する実空間上平面（床面からの高さｈの平面）上での座標値Ｐj＝（Ｘj，Ｙj，ｈ）の（Ｘj，Ｙj）を求める式は、下記の式（１２）〜（１４）のように、式（１）〜（１１）を元にして求めることができる。
【００４６】
【数２】
2011215082.tif 000004
【００４７】
【数３】
2011215082.tif 000005
【００４８】
これらの式（１２）〜（１４）及び式（３）〜（１１）を用い、ｈ＝０とすることにより、画像の座標（ｘ，ｙ）を、実空間の床面に投影した仮想下端点位置（Ｘ，Ｙ，０）を得ることができる。この算出された仮想下端位置（Ｘ，Ｙ，０）は、その算出時に用いた撮像パラメータが正しいと仮定した場合の実空間における下端の位置である。尚、前述したようにＴｘ，Ｔｙ，θは推定対象外（どんな値でも良い）となっているが、上述した式（１２）〜（１４）及び式（３）〜（１１）を適用する際、これらの推定対象外となっている外部パラメータについては任意の値を固定値として設定しておけばよい。例えば、これら全ての値を０にするなどであるが、前述の式（１）〜（１１）を適用する際の値と同じである必要がある。
【００４９】
（Ｓ４２）次に、前記算出された仮想下端位置（Ｘ，Ｙ，０）を実空間でｈだけ上にずらした位置（Ｘ，Ｙ，ｈ）を算出する。この点は、仮想下端点が正しいと仮定した場合の、実空間における上端の位置であり、仮想上端位置に相当する。
【００５０】
（Ｓ４３）前記算出された仮想上端位置（Ｘ，Ｙ，ｈ）を、設定された撮像パラメータに基づき、画像上に投影した座標値である仮想上端再投影座標値（ｘｔ’，ｙｔ’）に変換する。「元の下端座標値（画像）」→「実空間での仮想下端位置」→「実空間での仮想上端位置」→「仮想上端位置の画像上座標値」の順で計算を行っているので、この（ｘｔ’，ｙｔ’）は仮想上端再投影座標値と呼ぶことにする。仮想上端位置（Ｘ，Ｙ，ｈ）を仮想上端再投影座標値（ｘｔ’，ｙｔ’）に変換するための演算においては、上記の式（１）〜（１１）を適用すればよい。すなわち、式（１）〜（１１）のＸj，Ｙj，Ｚjの値に仮想上端位置（Ｘ，Ｙ，ｈ）の成分Ｘ，Ｙ，ｈの値をそれぞれ代入することで仮想上端再投影座標値（ｘｔ’，ｙｔ’）が算出される。
【００５１】
（Ｓ４４）各画像のＳ２で指定された上端座標とＳ４３で算出された仮想上端再投影座標との距離を再投影誤差として算出する。
【００５２】
Ｓ４３で算出された仮想上端再投影座標値（ｘｔ’，ｙｔ’）は、設定された撮像パラメータが適正な場合、Ｓ２で指定された上端座標値（ｘｔ，ｙｔ）と一致するはずである（画像座標が離散的であること等による小さな誤差を除く）。これらの座標値が一致しない場合、設定された撮像パラメータは適正でないことを意味する。このことに注目し、Ｓ４４では上端座標と仮想上端再投影座標との距離を算出する。誤差（画像座標間の距離）の算出法としては、各々の画像座標値の差の二乗（画像上のユークリッド距離の２乗）が最も一般的な方法であるが、誤差の評価法はこの演算法に限定しない。
【００５３】
Ｓ５：誤差評価部１３は、Ｓ３で撮像パラメータのセットが設定された毎に、Ｓ１で取得した全ての画像（図６の事例では、５枚）についてＳ４で算出された再投影誤差の和を前記セットと対応づけて記憶手段（ＲＡＭやハードディスクドライブ装置）に記憶する。そして、Ｓ４の終了条件を満たした場合（Ｙｅｓ）、すなわち、予め定められた範囲での撮像パラメータの逐次設定が終了すると、再投影誤差評価のステップＳ４を終了する。
【００５４】
Ｓ６：パラメータ決定部１４は、前記逐次設定された撮像パラメータの中で、Ｓ５で算出された再投影誤差の和が最小となるものを最終的（最適）な撮像パラメータとして決定する。この決定された撮像パラメータに基づき撮像装置５の動作が制御される。
【００５５】
尚、決定対象のパラメータの中で予め値がわかっているものがある場合は、そのパラメータをその既知の値に固定してしまって良い。これにより処理時間を短縮することも可能である。
【００５６】
（本実施形態の効果）
以上のように撮像パラメータ決定装置１は、画像上での被写体の再投影誤差が小さくなるようなカメラキャリブレーションを実現する。したがって、撮像装置５を用いた被写体の大きさの計測や位置の計測などの応用場面において必須となるカメラキャリブレーションの効率化及び高精度化が可能となり、被写体計測の精度を向上させることできる。
【００５７】
本実施形態とは異なり、実空間において被写体の身長が合うようにパラメータを決定する方法を適用した場合、例えば、撮像装置５が小さな角度φで遠方を撮影している場合、角度φに関する小さなパラメータ誤差が画像上で大きな誤差に繋がり、画像上での被写体のサイズに大きなずれが発生する可能性が高くなる。
【００５８】
本実施形態では画像上での再投影誤差を最小となる撮像パラメータを決定するので、被写体の上端、下端の指定位置に一定の誤差があっても、また、個々の撮像パラメータの推定結果が真値と比較して一定の誤差がある場合であっても、画像上での被写体のサイズが指定された上端、下端間の長さに近い値になるような撮像パラメータが算出されることが期待できる。したがって、画像上の被写体のサイズが大きくずれてしまう問題は起こりにくくなる。
【００５９】
［実施形態２］
（概要）
図３に示された本実施形態の撮像パラメータ決定装置２は、初期の撮像パラメータの変更に基づく当該パラメータの微分係数に基づき変更した撮像パラメータによる被写体の再投影誤差を算出する。そして、この再投影誤差を小さくする方向に撮像パラメータを逐次更新していくことにより、最適な撮像パラメータを決定する。
【００６０】
（装置の構成）
撮像パラメータ決定装置２は撮像パラメータ決定装置１と同様にＣＰＵ、ＲＡＭ、ＲＯＭ、ハードディスクドライブ装置、Ｉ／Ｆ（入出力デバイス）等のハードウェアリソースを備える。そして、このハードウェアリソースがソフトウェアリソース（ＯＳ、アプリケーション等）と協働することより図３に示された撮像パラメータ決定装置２を構成する端座標指定部２１とパラメータ設定部２２と誤差評価部２３とパラメータ決定２４とが実装される。以下、各機能部２１〜２４について説明する。
【００６１】
端座標指定部２１は、床面から鉛直方向に一定の高さを有する被写体をその床面上での撮像装置の位置を変えながらの撮影によって取得された複数の画像に対して当該被写体の上端座標及び下端座標を指定する。
【００６２】
パラメータ設定部２２は撮像装置の撮像パラメータの初期値を設定する。
【００６３】
誤差評価部２３は、前記撮像パラメータの個々の初期値が変更された値に基づき各画像における下端座標を対応する床面上位置に投影した場合の仮想下端位置を算出する。次いで、この仮想下端位置に基づき実空間上で前記高さだけ鉛直上方にある位置を仮想上端位置として算出する。次いで、この仮想上端位置と前記設定された撮像パラメータとに基づき画像上に再投影した場合の仮想上端再投影座標値を算出する。次いで、各画像の前記設定された上端座標と前記算出された仮想上端再投影座標との距離を再投影誤差として算出する。
【００６４】
パラメータ決定部２４は、前記撮像パラメータの変更による再投影誤差の変化に基づき当該撮像パラメータの微分係数を算出し、この微分係数に基づき変更された撮像パラメータを誤差評価部２３による再投影誤差の算出に供する更新処理を予め決めておいた所定の条件を満たすまで繰返して実行する。そして、変更後の撮像パラメータを最適な撮像パラメータとして決定する。
【００６５】
（撮像パラメータの決定手順の説明）
図４を参照しながら本実施形態に係る撮像パラメータ決定の手順Ｓ２１〜Ｓ２９について説明する。
【００６６】
Ｓ２１：図５に示された撮影現場において撮像装置５は装置位置及び撮影方向が位置（Ｔｘ，Ｔｙ，Ｔｚ）及び向き（φ，ω，θ）に設定された状態で床面上での被写体の位置を変えながら当該被写体が画面内に収まるように撮影する。この撮影によって得られた複数（ｎ枚）の画像は撮像パラメータ決定装置１に入力される。
【００６７】
Ｓ２２：端座標指定部２１は撮像装置５から入力された各画像における前記被写体の上端座標（ｘｔ，ｙｔ）、下端座標（ｘｂ，ｙｂ）を指定する。このステップでは、実施形態１のＳ２と同様に例えばポインティングデバイスによる指定方法や画像処理技術による指定方法によって被写体の上端及び下端の座標が指定される。
【００６８】
Ｓ２３：パラメータ設定部２２は撮像装置５の撮像パラメータの各初期値（高さＴｚ、角度φ、角度ω、焦点距離α）を設定する。
【００６９】
この初期値としては、例えば各パラメータがとりうる想定範囲の中間の値、人が目視で計測したパラメータ（例えば、カメラの高さは大体２．５ｍなどの目分量や簡易計測結果を初期値とする）、または、これらの設定法を組み合わせて定められたものが挙げられる。若しくは、乱数で発生した値を初期値としてもよい。初期値の設定法は限定しない。
【００７０】
Ｓ２４：パラメータ設定部２２はＳ２３で設定された（初期）パラメータに対して微小量Δだけ変更した値を算出する。
【００７１】
例えば図５に示された事例では角度φの（初期）パラメータが６０度のとき、６０．２度（Δが０．２度）、撮像装置５の高さの（初期）パラメータが２．５ｍのとき、２．５１ｍ（Δが０．１ｍ）などである。このデルタの値は、パラメータごとに予め決めておく。その決め方としては、想定しているパラメータの変動範囲と比べ十分に小さい値となっていれば良い。例えば、角度φの想定変動範囲が２０度くらいの幅だとすると、その１００分の１以下とする等のルールで決めておくとよい。
【００７２】
Ｓ２５：誤差評価部２３は、Ｓ２３で設定された初期の撮像パラメータに対する再投影誤差をＳ４と同じ方法によって算出する。次いで、Ｓ２４にて各値が微小変更された撮像パラメータに対する再投影誤差をＳ４と同じ方法で算出する。
【００７３】
Ｓ２６：パラメータ決定部２４はＳ２５で算出された再投影誤差の差分を計算することで初期の撮像パラメータの微分係数を算出する。
【００７４】
初期の撮像パラメータに対する再投影誤差がＥ（ｐｎ）、微小変更された当該撮像パラメータに対する再投影誤差がＥ（ｐｎ＋Δｎ）である場合、当該撮像パラメータの微分係数は両者の差分（Ｅ（ｐｎ＋Δｎ）−Ｅ（ｐｎ））と定義される。ｐｎ（ｎ＝１，２，３，…）は撮像パラメータの各成分の値である。Δｎは各成分の微小変更量である。例えば本実施形態では高さＴｚ、角度φ、角度ω、焦点距離αの値がそれぞれｐ１，ｐ２，ｐ３，ｐ４に対応する（Ｓ２８の演算について同様）。
【００７５】
Ｓ２７：パラメータ決定部２４は初期の撮像パラメータの全ての値（高さＴｚ、角度φ、角度ω、焦点距離α）の微分係数をＳ２６の演算によって算出する。
【００７６】
Ｓ２８：パラメータ決定部２４はＳ２７で算出された微分係数の値に基づき変更された撮像パラメータをＳ２５の再投影誤差の演算処理に供する更新処理を繰返し実行する。
【００７７】
具体的には、先ず、Ｓ２７で算出した微分係数｛Ｅ（ｐｎ＋Δｎ）−Ｅ（ｐｎ）｝に基づく以下の式（１５）により撮像パラメータの各値（ｐｎ）の更新量δｐｎを設定する。
【００７８】
δｐｎ＝−α・｛Ｅ（ｐｎ＋Δｎ）−Ｅ（ｐｎ）｝・Δｎ  …（１５）
この際、Δｎは上記のようにパラメータ毎に予め決めておいた値つまり微分係数を求める際に用いた値をそのまま用いればよい。また、αは更新量を制御するためのパラメータであり、経験的に事前に設定しておく。αの値の決め方の例としては、まず上記の例のようにしてΔｎを決定した後、撮像パラメータが既知である画像を用いて、様々なαの値を設定して実際に計算させてみながら正しいパラメータ値に収束するかどうかを見て決めるなどの方法が考えられる。尚、一般にαは正の実数となる。
【００７９】
次いで、パラメータ決定部２４は前記更新量を加算した撮像パラメータをＳ２５の再投影誤差を算出する演算に供して再投影誤差を算出する。そして、この再投影誤差に基づく微分係数を用いた式（１５）によって算出される更新量を加算した撮像パラメータを、再度、Ｓ２５の再投影誤差の算出処理に供する。
【００８０】
Ｓ２９：パラメータ決定部２４は予め決めておいた所定の終了条件を満たすまで上記の撮像パラメータの更新処理を繰り返し実行する。
【００８１】
パラメータ決定部２４は最終的に変更された撮像パラメータを最適な撮像パラメータとして決定する。この決定された撮像パラメータに基づき撮像装置５の動作が制御される。
【００８２】
尚、撮像パラメータの更新処理の終了条件は、予め決めておいた回数行う方法や、再投影誤差の変化が小さくなったことなどを終了の条件とすればよく、特に限定しない。
【００８３】
（本実施形態の効果）
以上のように撮像パラメータ決定装置２は、実施形態１と同様に、画像上での被写体の再投影誤差が小さくなるように撮像パラメータを決定するので、カメラキャリブレーションの効率化及び高精度化が可能となり、被写体計測の精度を向上させることできる。
【００８４】
［他の実施形態］
実施形態２の撮像パラメータ決定過程における撮像パラメータの初期値を設定するステップＳ２３において、当該初期値として実施形態１の撮像パラメータ決定装置１によって決定された撮像パラメータの値を設定するようにするとよい。より精度よく撮像パラメータを決定できる。
【００８５】
特に、実施形態１に係るステップＳ３で各パラメータの値を粗い刻み幅で設定して撮像パラメータを決定し、この撮像パラメータを実施形態２に係るステップ２３の初期値として適用するようにするとよい。決定対象となる撮像パラメータの数が多い場合や、その想定されるパラメータの値の範囲が広い場合等には、効率的に精度の良い撮像パラメータを得ることができる。
【００８６】
また、実施形態１，２において、撮影場所によっては、障害物などにより被写体の足元（床面）が写りにくいケースが存在する。さらに、被写体が床面から一定の高さｂの位置に下端があるような被写体もあり得る。これらの状況に対しては、実際の床面から一定以上の高さｂだけ上の高さをＺ＝０として仮想的な床面として、かつ被写体の高さを（ｈ−ｂ）として、撮像パラメータを算出する。この場合、決定された撮像パラメータのうち、撮像装置の高さは実際の高さに対して高さｂの値だけ小さな値となる。そこで、この算出された撮像装置の高さの値に高さｂの値を加算すれば正確な高さが得られる。
【００８７】
具体的には、実施形態１，２において、被写体の下端位置が床面から一定の高さｂの位置にある場合、当該位置を含んだ水平面を仮想的な床面とする。この一定の高さｂの値を減算した当該被写体の高さの値を当該被写体の仮想的な高さとして前記上端座標及び下端座標を指定するステップＳ２，２２に供する。そして、ステップＳ２〜Ｓ６，Ｓ２２〜Ｓ２９を経て決定された撮像パラメータの成分である当該被写体の高さの値に前記一定の高さｂの値を加算したものを最適な撮像パラメータとすればよい。以上のように被写体の上端及び下端を指定する過程で撮像装置の高さから被写体の下端の高さｂの値を減算することで正しい撮像パラメータが算出される。
【００８８】
［本発明のプログラムとしての態様］
本発明は、専用のハードウェアにより実現されるもの以外に、上述の撮像パラメータ決定装置１，２を構成する機能手段１１〜１４，２１〜２４に係るステップをコンピュータに実行させる撮像パラメータ決定プログラムの態様とすることもできる。また、このプログラムを格納したコンピュータ読み取り可能な記録媒体も本発明の一態様となる。記録媒体としては、フレキシブルディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等に例示されるような、コンピュータが読み取り可能な周知の記録媒体が挙げられる。または、コンピュータシステムに内蔵されるハードディスクドライブ装置等の記憶装置が例示される。さらに、記録媒体としては、通信回線を介してプログラムを送信する場合のように、短時間の間、動的にプログラムを保持するもの（伝送媒体もしくは伝送波）、その場合のサーバとなるコンピュータシステム内部の揮発性メモリのように一定時間プログラムを保持しているものも含まれる。
【符号の説明】
【００８９】
１，２…撮像パラメータ決定装置
１１，２１…端座標指定部（端座標指定手段）
１２，２２…パラメータ設定部（パラメータ設定手段）
１３，２３…誤差評価部（誤差評価手段）
１４，２４…パラメータ決定部（パラメータ決定手段）
【図１】
2011215082.tif 000006
【図２】
2011215082.tif 000007
【図３】
2011215082.tif 000008
【図４】
2011215082.tif 000009
【図５】
2011215082.tif 000010
【図７】
2011215082.tif 000011
【図６】
2011215082.tif 000012