(57)【特許請求の範囲】
【請求項１】
画像の投影変換に必要なパラメータを前記画像に基づき得るパラメータ処理装置であって、
周囲３６０°の被写体からの光を反射する回転体ミラーで反射された被写体光により形成されカメラにより撮像されたドーナツ状の有効範囲を有する画像を取込む取込み手段と、
前記取込み手段により取込んだ画像上に、外周円、内周円、及び中心点を示す各パラメータ図形を重畳し、ディスプレイに表示させる表示制御手段と、
操作入力機器による入力に応じて前記ディスプレイに表示された各パラメータ図形を直接指示して移動させ、各パラメータ図形の移動結果に応じて外周円半径、内周円半径、及び中心点の座標を変更する座標変更手段と、を備え、
前記座標変更手段は、前記複数のパラメータ図形のうち中心点のパラメータ図形を直接指示して移動させた場合、そのパラメータ図形と外周円及び内周円のパラメータ図形とを一体にして移動させることを特徴とするパラメータ処理装置。
【請求項２】
前記操作入力機器はマウスであり、前記座標変更手段は、前記マウスによるドラッグ操作に応じて、前記各パラメータ図形を移動させることを特徴とする請求項１に記載のパラメータ処理装置。
【請求項３】
画像の投影変換に必要なパラメータを前記画像に基づき得るパラメータ処理装置であって、
周囲３６０°の被写体からの光を反射する回転体ミラーで反射された被写体光により形成されカメラにより撮像されたドーナツ状の有効範囲を有する画像を取込む取込み手段と、
前記取込み手段により取込んだドーナツ状の有効範囲を有する画像から円形のエッジを構成する点群を抽出し、前記点群をハフ変換によって中心座標と半径からなる円のパラメータ空間に投票し、投票数の高い投票空間のピークを２つ検出する検出手段と、
前記検出手段による検出結果に基づき前記２つのピークに対応する外周円及び内周円の半径と中心座標を求め、前記求めた外周円及び内周円の２つの中心座標が同心でない場合はその２つの中心座標の平均座標或いは外周円の中心座標を前記ドーナツ状の有効範囲を有する画像の中心座標とする演算手段と、
を備えることを特徴とするパラメータ処理装置。
【請求項４】
前記検出手段は、前記検出した前記２つのピークに対応する２つの中心座標の差異の大きさに応じて、前記エッジを構成する点群の抽出をパラメータ変更した上で再度行い、得られた点群に基づく前記ハフ変換による投票と前記２つのピーク検出とを再度行うことを特徴とする請求項３に記載のパラメータ処理装置。
【請求項５】
周囲３６０°の被写体からの光を反射する回転体ミラーと、
前記回転体ミラーによって反射された被写体光を撮像するカメラと、
前記回転体ミラーからの反射光により形成されるドーナツ状の有効範囲を有する画像の、内側の有効範囲外の円形領域の中心座標を求める演算手段と、
前記回転体ミラーの周囲に配置された直線状のマーカーを有する部材とを備え、
前記カメラは前記被写体光と共に前記マーカーの像を撮像し、前記演算手段は前記マーカーの画像を二値化して直線群を求めると共に、前記直線群の交点を求めることを特徴とする全方位画像撮像装置。
【請求項６】
画像の投影変換に必要なパラメータを前記画像に基づき得るパラメータ処理方法であって、
周囲３６０°の被写体からの光を反射する回転体ミラーで反射された被写体光により形成されカメラにより撮像されたドーナツ状の有効範囲を有する画像を取込む取込み工程と、
前記取込み工程により取込んだ画像上に、外周円、内周円、及び中心点を示す各パラメータ図形を重畳し、ディスプレイに表示させる表示制御工程と、
操作入力機器による入力に応じて前記ディスプレイに表示された各パラメータ図形を直接指示して移動させ、各パラメータ図形の移動結果に応じて外周円半径、内周円半径、及び中心点の座標を変更する座標変更工程と、を備え、
前記座標変更工程は、前記複数のパラメータ図形のうち中心点のパラメータ図形を直接指示して移動させた場合、そのパラメータ図形と外周円及び内周円のパラメータ図形とを一体にして移動させることを特徴とするパラメータ処理方法。
【請求項７】
前記操作入力機器はマウスであり、前記座標変更工程は、前記マウスによるドラッグ操作に応じて、前記各パラメータ図形を移動させることを特徴とする請求項６に記載のパラメータ処理方法。
【請求項８】
画像の投影変換に必要なパラメータを前記画像に基づき得るパラメータ処理方法であって、
周囲３６０°の被写体からの光を反射する回転体ミラーで反射された被写体光により形成されカメラにより撮像されたドーナツ状の有効範囲を有する画像を取込む取込み工程と、
前記取込み工程により取込んだドーナツ状の有効範囲を有する画像から円形のエッジを構成する点群を抽出し、前記点群をハフ変換によって中心座標と半径からなる円のパラメータ空間に投票し、投票数の高い投票空間のピークを２つ検出する検出工程と、
前記検出工程による検出結果に基づき前記２つのピークに対応する外周円及び内周円の半径と中心座標を求め、前記求めた外周円及び内周円の２つの中心座標が同心でない場合はその２つの中心座標の平均座標或いは外周円の中心座標を前記ドーナツ状の有効範囲を有する画像の中心座標とする演算工程と、
を備えることを特徴とするパラメータ処理方法。
【請求項９】
前記検出工程は、前記検出した前記２つのピークに対応する２つの中心座標の差異の大きさに応じて、前記エッジを構成する点群の抽出をパラメータ変更した上で再度行い、得られた点群に基づく前記ハフ変換による投票と前記２つのピーク検出とを再度行うことを特徴とする請求項８に記載のパラメータ処理方法。
【請求項１０】
周囲３６０°の被写体からの光を反射する回転体ミラーで反射された被写体光を撮像でき、前記回転体ミラーの周囲に直線状のマーカーを有する部材を備える全方位画像撮像装置の制御方法であって、
前記回転体ミラーからの反射光により形成されるドーナツ状の有効範囲を有する画像を撮像する撮像工程と、
前記ドーナツ状の有効範囲を有する画像の内側の有効範囲外の円形領域の中心座標を求める演算工程とを備え、
前記撮像工程では前記被写体光と共に前記マーカーの像を撮像し、前記演算工程では前記マーカーの画像を二値化して直線群を求めると共に、該直線群の交点を求めることを特徴とする全方位画像撮像装置の制御方法。
【請求項１１】
請求項６乃至９のいずれか１項に記載のパラメータ処理方法をコンピュータに実行させることを特徴とするプログラム。
【請求項１２】
請求項１１に記載のプログラムをコンピュータ読み取り可能に記憶したことを特徴とする記憶媒体。
【請求項１３】
請求項１０に記載の制御方法をコンピュータに実行させることを特徴とするプログラム。
【請求項１４】
請求項１３に記載のプログラムをコンピュータ読み取り可能に記憶したことを特徴とする記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は回転体ミラーを用いて側方３６０度の視野角を持つ全方位画像を撮影する技術に関するものである。
【０００２】
【従来の技術】
回転体ミラーを用いて側方３６０度の視野角を持つ全方位画像を撮影する方式は既に知られており、「八木："全方位ビジョンの研究動向"、コンピュータビジョンとイメージメディア、Ｖｏｌ１２５, ｐｐ.１４７-１６０」に様々な手法が紹介されている。この他にも、特開平１１−２０５７７２号公報「全方位撮像画像伝送システム及び全方位撮像画像伝送方法」や、特開２０００−２６１７８３号公報「撮影画像配信システム」などの応用例が多数存在する。また回転体ミラーのうち双曲面ミラーを用いたパノラマ画像や投影画像の生成方式に関しては、特開平０６−２９５３３３号公報「全方位視覚系」に述べられている。また特開平１１−１７４６０３号公報「全方位撮影装置」では、カメラに取り付ける双曲面ミラーユニットの構造例が説明されている。
【０００３】
上記の応用例においては、回転体ミラーを用いて撮影した全方位画像を、周囲３６０度のパノラマ画像や透視投影画像に変換する。このような変換を行うためには、回転体ミラーの形状、全方位画像の画像中心、有効画像領域、カメラの焦点距離、撮像面の大きさなどに関する種々のパラメータを必要とする。
【０００４】
【発明が解決しようとする課題】
従来の方式においては前記パラメータを事前に記録しておき、プログラムを実行する際に読み込むなどしていた。しかし、パラメータのうち全方位画像の画像中心あるいはその有効画像領域は、撮影を行わないと決定できない。このため、複数の回転体ミラーとカメラとの組み合わせを変更するたびに画像中心と有効画像領域の計測を行う必要があった。また、画像の大きさによってその値が異なるため、同一の回転体ミラーとカメラとの組み合わせにおいても、画像サイズを変更するたびに画像中心と有効画像領域の指定を行う必要があり、煩雑であった。
【０００５】
従って、本発明は上述した課題に鑑みてなされたものであり、その目的は、全方位画像を撮像する場合に、全方位画像の画像中心と有効画像領域とを容易に求められるようにすることである。
【０００６】
【課題を解決するための手段】
上述した課題を解決し、目的を達成するために、本発明に係わるパラメータ処理装置は、画像の投影変換に必要なパラメータを前記画像に基づき得るパラメータ処理装置であって、周囲３６０°の被写体からの光を反射する回転体ミラーで反射された被写体光により形成されカメラにより撮像されたドーナツ状の有効範囲を有する画像を取込む取込み手段と、前記取込み手段により取込んだ画像上に、外周円、内周円、及び中心点を示す各パラメータ図形を重畳し、ディスプレイに表示させる表示制御手段と、操作入力機器による入力に応じて前記ディスプレイに表示された各パラメータ図形を直接指示して移動させ、各パラメータ図形の移動結果に応じて外周円半径、内周円半径、及び中心点の座標を変更する座標変更手段と、を備え、前記座標変更手段は、前記複数のパラメータ図形のうち中心点のパラメータ図形を直接指示して移動させた場合、そのパラメータ図形と外周円及び内周円のパラメータ図形とを一体にして移動させることを特徴としている。
【０００７】
また、この発明に係わるパラメータ処理装置において、前記操作入力機器はマウスであり、前記座標変更手段は、前記マウスによるドラッグ操作に応じて、前記各パラメータ図形を移動させることを特徴としている。
【０００８】
また、本発明に係わるパラメータ処理装置は、画像の投影変換に必要なパラメータを前記画像に基づき得るパラメータ処理装置であって、周囲３６０°の被写体からの光を反射する回転体ミラーで反射された被写体光により形成されカメラにより撮像されたドーナツ状の有効範囲を有する画像を取込む取込み手段と、前記取込み手段により取込んだドーナツ状の有効範囲を有する画像から円形のエッジを構成する点群を抽出し、前記点群をハフ変換によって中心座標と半径からなる円のパラメータ空間に投票し、投票数の高い投票空間のピークを２つ検出する検出手段と、前記検出手段による検出結果に基づき前記２つのピークに対応する外周円及び内周円の半径と中心座標を求め、前記求めた外周円及び内周円の２つの中心座標が同心でない場合はその２つの中心座標の平均座標或いは外周円の中心座標を前記ドーナツ状の有効範囲を有する画像の中心座標とする演算手段と、を備えることを特徴としている。
【０００９】
また、この発明に係わるパラメータ処理装置において、前記検出手段は、前記検出した前記２つのピークに対応する２つの中心座標の差異の大きさに応じて、前記エッジを構成する点群の抽出をパラメータ変更した上で再度行い、得られた点群に基づく前記ハフ変換による投票と前記２つのピーク検出とを再度行うことを特徴としている。
【００１０】
また、本発明に係わる全方位画像撮像装置は、周囲３６０°の被写体からの光を反射する回転体ミラーと、前記回転体ミラーによって反射された被写体光を撮像するカメラと、前記回転体ミラーからの反射光により形成されるドーナツ状の有効範囲を有する画像の、内側の有効範囲外の円形領域の中心座標を求める演算手段と、前記回転体ミラーの周囲に配置された直線状のマーカーを有する部材とを備え、前記カメラは前記被写体光と共に前記マーカーの像を撮像し、前記演算手段は前記マーカーの画像を二値化して直線群を求めると共に、前記直線群の交点を求めることを特徴としている。
【００１１】
また、本発明に係わるパラメータ処理方法は、画像の投影変換に必要なパラメータを前記画像に基づき得るパラメータ処理方法であって、周囲３６０°の被写体からの光を反射する回転体ミラーで反射された被写体光により形成されカメラにより撮像されたドーナツ状の有効範囲を有する画像を取込む取込み工程と、前記取込み工程により取込んだ画像上に、外周円、内周円、及び中心点を示す各パラメータ図形を重畳し、ディスプレイに表示させる表示制御工程と、操作入力機器による入力に応じて前記ディスプレイに表示された各パラメータ図形を直接指示して移動させ、各パラメータ図形の移動結果に応じて外周円半径、内周円半径、及び中心点の座標を変更する座標変更工程と、を備え、前記座標変更工程は、前記複数のパラメータ図形のうち中心点のパラメータ図形を直接指示して移動させた場合、そのパラメータ図形と外周円及び内周円のパラメータ図形とを一体にして移動させることを特徴としている。
【００１２】
また、この発明に係わるパラメータ処理方法において、前記操作入力機器はマウスであり、前記座標変更工程は、前記マウスによるドラッグ操作に応じて、前記各パラメータ図形を移動させることを特徴としている。
【００１３】
また、本発明に係わるパラメータ処理方法は、画像の投影変換に必要なパラメータを前記画像に基づき得るパラメータ処理方法であって、周囲３６０°の被写体からの光を反射する回転体ミラーで反射された被写体光により形成されカメラにより撮像されたドーナツ状の有効範囲を有する画像を取込む取込み工程と、前記取込み工程により取込んだドーナツ状の有効範囲を有する画像から円形のエッジを構成する点群を抽出し、前記点群をハフ変換によって中心座標と半径からなる円のパラメータ空間に投票し、投票数の高い投票空間のピークを２つ検出する検出工程と、前記検出工程による検出結果に基づき前記２つのピークに対応する外周円及び内周円の半径と中心座標を求め、前記求めた外周円及び内周円の２つの中心座標が同心でない場合はその２つの中心座標の平均座標或いは外周円の中心座標を前記ドーナツ状の有効範囲を有する画像の中心座標とする演算工程と、を備えることを特徴としている。
【００１４】
また、この発明に係わるパラメータ処理方法において、前記検出工程は、前記検出した前記２つのピークに対応する２つの中心座標の差異の大きさに応じて、前記エッジを構成する点群の抽出をパラメータ変更した上で再度行い、得られた点群に基づく前記ハフ変換による投票と前記２つのピーク検出とを再度行うことを特徴としている。
【００１６】
また、本発明に係わる全方位画像撮像装置の制御方法は、周囲３６０°の被写体からの光を反射する回転体ミラーで反射された被写体光を撮像でき、前記回転体ミラーの周囲に直線状のマーカーを有する部材を備える全方位画像撮像装置の制御方法であって、前記回転体ミラーからの反射光により形成されるドーナツ状の有効範囲を有する画像を撮像する撮像工程と、前記ドーナツ状の有効範囲を有する画像の内側の有効範囲外の円形領域の中心座標を求める演算工程とを備え、前記撮像工程では前記被写体光と共に前記マーカーの像を撮像し、前記演算工程では前記マーカーの画像を二値化して直線群を求めると共に、該直線群の交点を求めることを特徴としている。
【００１８】
また、本発明に係わるプログラムは、上記の方法をコンピュータに実行させることを特徴としている。
【００１９】
また、本発明に係わる記憶媒体は、上記のプログラムをコンピュータ読み取り可能に記憶したことを特徴としている。
【００２０】
【発明の実施の形態】
以下、本発明の好適な実施形態について、添付図面を参照して説明する。
【００２１】
（第１の実施形態）
本実施形態では全方位画像のパラメータのうち、画像中心座標を画像処理によって自動的に求める。
【００２２】
図１は、本実施形態におけるパラメータ計測装置のハードウェア構成を示すブロック図である。
【００２３】
図１において、パラメータ計測装置は、ＣＰＵ１０２、ＲＯＭ１０３、ＲＡＭ１０４、二次記憶部１０５を具備する。また、プログラムの実行をはじめとする各種の操作のために、マウスなどのポインティングデバイス１０６、キーボード１０７を接続する。また、フロッピーディスクドライブ、ＭＯドライブなどの外部入出力機器との接続を行うためのＩ／Ｏ１０８を具備する。また、映像信号を入力して画像データを取り込むための画像取込装置１０９を具備する。
【００２４】
画像取込装置１０９には回転体ミラー１１０を装着したカメラ１１１から出た画像信号を入力する。この他にも、ＲＳ−２３２Ｃ、ＵＳＢ、ＩＥＥＥ１３９４などのシリアルＩ／ＯやパラレルＩ／Ｏを通じてカメラを接続し、画像を取り込む方法があるが、本発明は画像の取り込み方法に依存するものではない。
【００２５】
画像表示装置は操作画面や画像表示のためにビデオＲＡＭ１１２を具備し、モニタ１１３を接続する。さらに、ネットワーク１１５を通じて操作を行ったり、画像を送受信したりするための通信装置１１４を具備する。
【００２６】
ＣＰＵ１０２、ＲＯＭ１０３、ＲＡＭ１０４、二次記憶１０５、ポインティングデバイス１０６、キーボード１０７、Ｉ／Ｏ１０８、画像取込装置１０９、ビデオＲＡＭ１１２、通信装置１１４は内部バス１０１に接続する。以上のパラメータ計測装置は市販のパーソナルコンピュータを用いることで簡単に実現できる。
【００２７】
つぎに、本実施例において使用する回転体ミラーの構造例を図２に示す。
【００２８】
図２（ａ）は回転体ミラーの外観である。回転体ミラーはミラー部２０１、ガラス筒部２０２、カメラ接続部２０３、黒針部２０４などからなり、市販のカメラやビデオカメラに装着する。ミラー部の断面は球、放物線、双曲線などの形状であることから、回転体ミラーと呼ばれている。回転体ミラーの構造例に関しては特開平１１−１７４６０３号公報に詳しく述べられている。
【００２９】
図２（ｂ）は撮影原理であり、回転体ミラー２０５がカメラ２０６に装着された状態を模式的に示している。ここで、空間上の点Ｐ（２０９）を出た光線は回転体ミラーに反射して２１０のような経路によって、レンズ２０７を通過しＣＣＤ面２０８に到達する。その結果、例えばカメラを垂直方向上面に装着して撮影した場合、図２（ｃ）に示すような全方位画像を得ることができる。
【００３０】
回転体ミラーを用いたときの、空間上の点と全方位画像上の点との対応関係に関しては、特開平０６−２９５３３３号公報に詳しく述べられている。この対応関係を用いると、全方位画像を空間中に設けた仮想の平面や曲面に逆投影することで、側方３６０度のパノラマ画像や、透視投影画像などの、我々が一般に目にする自然な画像を得ることができる。しかし対応関係を表す数式を求めるためには、回転体ミラーの断面形状や、全方位画像の中心座標などのパラメータが必要である。中でも全方位画像の中心座標は、画像から直接求める必要がある。
【００３１】
全方位画像の中心には黒針部２０４が２１１のように円状に存在する。また、その外側に周囲３６０度の画像２１２が回転体ミラーの外周まで存在する。以下この領域を有効画像領域と称する。さらにその外側にはミラーを介さずに直接カメラに入る光線や、回転体ミラー底面２１３が存在する。図では直接カメラに入る光線は省略しているが、この光線の有無は本発明には無関係である。また回転体ミラーには「八木："全方位ビジョンの研究動向"、コンピュータビジョンとイメージメディア、Ｖｏｌ１２５, ｐｐ.１４７−１６０」に述べられているようにさまざまな種類のものが存在し、針部が無いものや、ミラーの保持方法が異なるものなどが存在する。このような場合、回転体ミラーの中央部を黒く塗ったり円形のマーカーを付けたりすることで、図２（ｃ）と同様な画像を得るようにしてもよい。
【００３２】
本実施形態における、画像中心の計測方法の原理を図３に示す。
【００３３】
図３（ａ）のドーナツ状の白色部分は全方位画像である。この全方位画像の中心領域３０１に対してあるしきい値を用いて二値化して、図３（ｃ）のような円形領域３０３を画像中心付近に得る。そして、この領域の重心座標を求めて全方位画像（内側の有効範囲外の円形領域）の中心座標とする。ここで、全方位画像の中心領域３０１のサイズに関しては、有効画像領域の外周円の直径が全方位画像の短辺にほぼ等しいと仮定して、縦横が全方位画像の縦横の１/２程度の長さを持つ矩形領域を、全方位画像の中央部分に設ければよい。
【００３４】
二値化の際のしきい値を求める方法を述べる。矩形領域３０１の明度ヒストグラムを図３（ｂ）に示す。全方位画像は中心が暗く、その外側の有効画像領域はシーンに応じてさまざまな明度の画素が存在する。ヒストグラム曲線３０２によれば、比較的暗い画素からなる分布と明るい画素からなる分布とに分離しているのが分かる。そこで、二つの分布を分けるようなしきい値を設定すればよい。しきい値を図にIthと示す。Ithはヒストグラムを見て手動で設定してもよいが、大津の方法など公知の手法を用いれば自動的に設定することが可能である。
【００３５】
二値化を終了すると、雑音を除去して暗い領域を抽出する。これはメディアンフィルタなどの雑音除去フィルタを適用した後に、画素の連結処理を行って領域を抽出し、その中で面積の大きな領域を求めれば、容易に中心部の円形領域３０３を得ることができる。よって最後に同領域の重心座標を求め、全方位画像の画像中心座標とする。
【００３６】
次に本実施形態の処理手順を図４のフローチャートに示す。機器の設置は既に行われているものとする。
【００３７】
開始後、ステップＳ４０１において装置の起動などの初期化を行う。次にステップＳ４０２において全方位画像を撮影する。ここで画像は必ずしもその場で撮影したものである必要は無く、事前に撮影したものをハードディスクなどの二次記憶装置やネットワークを通じて読み込む場合など、さまざまな場合が存在する。
【００３８】
つぎにステップＳ４０３においてしきい値の設定を行う。しきい値は前述したように、画像中央付近の矩形領域に関して作成したヒストグラムに基づく手法によって求める。つぎにステップＳ４０４において、求めたしきい値を用いて二値化を行う。さらにステップＳ４０５において、領域抽出処理を行う。フィルタによる雑音除去処理もここに含まれる。検出された領域のうち最大のものを中心円領域の候補とする。
【００３９】
ステップＳ４０６において、中心円領域の抽出が成功したかどうかを確認する。これは中心円領域の候補の面積が十分大きいかどうかを計測する。面積は雑音領域の面積より十分大きな値であれば良く、経験的に設定することで何ら問題は生じない。もし中心円領域の抽出が成功したと判断すればＹ分岐し、 ステップＳ４０７において領域の重心を求め、この座標を全方位画像の中心座標として終了する。
【００４０】
もしステップＳ４０６において、中心円領域の候補の面積が小さく、しきい値以下である場合、抽出が失敗したとしてステップＳ４０３に戻って二値化のしきい値を設定しなおして、もう一度抽出を試みる。この際に二値化のしきい値は一定幅大きくしたり、暗い領域が抽出されやすいようにする。
【００４１】
以上の説明からも明らかなように、本実施形態によれば、全方位画像に対して、画像処理を施して中央に存在する円形領域を抽出し、その重心点を求めることによって、全方位画像の中心座標を自動的に求めることができる。
【００４２】
（第２の実施形態）
次に第２の実施形態について説明する。
【００４３】
本実施形態は全方位画像に対してエッジ検出処理を施して得たエッジ画像に対して、ハフ変換を適用して画像中の円を検出し、全方位画像の中心座標、および、有効画像領域の内周と外周とを求めるものである。本実施形態のハードウェア構成図は図１と同じであるため、説明を省略する。また、本実施形態で使用する回転体ミラーの構造も図２と同じであるため、説明を省略する。また、本実施形態も第１の実施形態と同様回転体ミラーの種類に依存するものではない。
【００４４】
本実施形態において求めるパラメータは全方位画像上に存在する二つの同心円である。これを図５（ａ）に示す。画像中には中心が同じで半径の異なる外周円５０１と内周円５０２が存在し、有効画像領域は両円の間にある。
【００４５】
二つの円を求める手順を説明する。まず、図５（ａ）に対してエッジ抽出処理を施した結果を図５（ｂ）に示す。エッジ抽出処理は周辺画素との明度差の大きな画素を検出するもので、Sobelフィルタなどさまざまな公知の方法がある。ここでは円周５０３に加えて画像中に存在する様々なエッジ５０４が検出される。エッジ画像を見ると、円周の部分は有効画像とそれ以外の暗い領域との境界にあたるので、強いエッジが検出されていることがわかる。そこで、強いエッジのみを選択するために、二値化処理を行う。
【００４６】
図５（ｃ）に二値化処理の結果を示す。ここで、二値化の際のしきい値は第１の実施形態において中央付近の円形領域を求める際に行った方法を同様な方法によって決定することができる。以上の処理によって同心円の候補５０５、５０６が検出される。
【００４７】
次にこの同心円の中心座標と半径を、ハフ変換を用いて求める。ハフ変換とは直線や円など特定のパラメータを持つ幾何図形を画像中から抽出する方法で、画像上の点群をパラメータ空間に写像し、投票を行ってピークを検出することで、幾何図形を検出する公知の手法である。高速化、高精度化に関する様々な手法が提案されており、円の検出例としては、 C.Kimme, D.Ballad, and J.Sklansky, "Finding circles by and array of accumulators", Commun. ACM, vol.１８, no.２, pp.１２０-１２２, １９７５. がある。また高速化手法の例としては、市川、泉田、村上、"投票配列を１次元化したハフ変換による円検出の高速化について"、電子情報通信学会論文誌, Vol.J８０-D-II No.１１ pp.２９４９-２９５７ がある。
【００４８】
円の検出にこの手法を適用する場合、円の式が中心座標を（ｘc，ｙc）、半径をｒとして、（ｘ−ｘc）2＋（ｙ−ｙc）2＝ｒ2と表されることから、パラメータ数は３となり、ｘc，ｙc，ｒから成る三次元のパラメータ空間を用意する。そして、各ｒに対して、図５（ｃ）で検出されたエッジ点の座標を上式のｘ，ｙに代入して得られる円をパラメータ空間に描画し投票を行う。上位二つのピーク、すなわち、全投票空間中で得票数の高い座標から順に二つを検出して、二つの円のパラメータとする。
【００４９】
ここでパラメータ空間の単位は画素であり、大きさは、ｒが１から画像の高さの半分まで、ｘ，ｙは画像の中心付近の適当な範囲を設定すればよいので、有限の範囲で収めることができる。また二つの円が同心でない場合、平均をとってもよいし、あるいは、外側の円を優先させてもよい。以上の方法で全方位画像における中心座標と、有効画像領域の内周円と外周円とを求めることができる。
【００５０】
つぎに本実施形態における処理手順を図６に示す。
【００５１】
初期化ステップＳ６０１後、ステップＳ６０２において画像を取得する。これは第１の実施形態と同様、その場で撮影してもよいし、ファイルをネットワークや二次記憶から読み込んでもよい。次にステップＳ６０３において、エッジ検出フィルタを用いたエッジ検出処理を行う。つぎにステップＳ６０４において、しきい値を設定し、ステップＳ６０５において二値化処理を行う。さらにステップＳ６０６においてハフ変換を行って、検出された点をパラメータ空間に投票する。さらにステップＳ６０７において、パラメータ空間で上から順に二つのピークを検出し、円の検出を終了する。ステップＳ６０８では二つの円が検出されたかどうかを確認し、もし、検出されないか、二つの円の中心が大きく異なる場合には、Ｎ分岐してステップＳ６０４に戻って、改めてしきい値を設定しなおして、再度円の検出処理を行う。それ以外の場合はＹ分岐して終了する。
【００５２】
以上の説明からも明らかなように、第２の実施形態によれば、エッジを検出後にハフ変換を施すことによって二つの円を検出し、全方位画像の中心座標に加えて、有効画像領域の内周円と外周円とを求めることができる。
【００５３】
（第３の実施形態）
次に第３の実施形態について説明する。本実施形態ではマーカーを回転体ミラーユニットに貼り付けて画像を撮影し、マーカー画像から全方位画像の画像中心を求める。
【００５４】
本実施形態で用いるマーカーの例を図７（ａ）に示す。図は無色透明で矩形形状のセロファン７０１に、黒線で示されたマーカー７０２を等間隔に描いたものである。７０１は透明で曲げることができる素材であれば素材に依存するものではない。マーカーはセロファンの短辺に対して平行、かつ、等間隔に描く。これを回転体ミラーユニットに巻きつけて装着した状態を図７（ｂ）に示す。装着の際には回転体ミラーの回転軸とマーカーの線が平行になるように注意する。
【００５５】
つぎに、全方位画像の画像中心の計測原理を説明する。
【００５６】
マーカーを装着した状態で撮影した全方位画像の例を図８（ａ）に示す。図ではマーカー８０１が中心から外側に向かって写っている。そこでこのマーカーを直線群として検出し、これら直線群の交点を求めて、これを全方位画像の画像中心とする。
【００５７】
直線検出の原理を図８（ｂ）および（ｃ）に示す。図８（ｂ）は図８（ａ）に対して、二値化処理を行った後、細線化処理を施した例である。ここで二値化の際のしきい値はマーカーの明度が低いことから、第１の実施形態と同様な手法によって設定することが可能である。また、細線化処理は領域の骨格を求める処理で、公知のものであるため、説明は省略する。
【００５８】
つぎに、図８（ｃ）は図８（ｂ）の画像に対してハフ変換によって直線を検出したものである。直線のハフ変換も円と同様、よく知られた手法であるので説明を省略する。直線の場合、パラメータ空間は二次元となり、円よりも小さくて済む。図８（ｂ）をパラメータ空間上に投影すると、複数のピークが検出されるので、上位数個のピークを採用することで複数の直線を検出することができる。検出した直線群を図８（ｃ）に示す。これらの直線８０３はかならずしも一点で交わるとは限らないが、直線群の交点群を求め、さらに交点群の重心点を求めることで、全方位画像の中心８０４を求めることができる。
【００５９】
つぎに、図９を用いて本実施形態の処理手順を説明する。
【００６０】
初期化ステップＳ９０１、画像取得ステップＳ９０２は第１の実施形態と同じである。また、しきい値設定ステップＳ９０３、二値化ステップＳ９０４は範囲が画像全体となる他は、第１の実施形態と同様なので説明を省略する。二値化後、ステップＳ９０５において細線化を行い、ステップＳ９０６においてハフ変換を行う。ステップＳ９０７において、ある程度の大きさを持つピークのうち、大きいほうから数個のピークを選択して直線を検出する。もし複数の直線が検出された場合にはステップＳ９０８においてＹ分岐し、ステップＳ９０９において複数直線の互いの交点を求め、その重心座標を計測して、全方位画像の中心として処理を終了する。もし複数の直線が検出されなかった場合にはステップＳ９０７においてＮ分岐し処理を終了する。
【００６１】
以上述べたように、第３の実施形態によれば、マーカーを回転体ミラーユニットに装着し、全方位画像に写ったマーカーを画像処理することで、全方位画像の中心を自動的に求めることができる。
【００６２】
（第４の実施形態）
つぎに第４の実施形態について説明する。
【００６３】
本実施形態は全方位画像のパラメータを画像上で対話的に設定するためのＧＵＩ（グラフィカル・ユーザー・インターフェース）に関するものである。ユーザーはこのＧＵＩによって、第１から第３の実施形態で説明した方法で自動的に求めたパラメータに対して、微調整を行うことができる。本実施形態におけるＧＵＩの例を図１０に示す。
【００６４】
図１０において、１００１はウィンドウシステムに表示されるダイアログであり、ダイアログ上に全方位画像１００２、パラメータ表示領域１００３を配置する。１００４はマウスカーソルなどのポインタである。全方位画像上には画像中心１００５、有効画像領域の内周１００６、外周１００７に対応する図形が表示されている。ユーザーは図形をドラッグ操作して、実際の画像に重ねることによって、対話的にパラメータを調整できる。以下１００５〜１００７の図形をパラメータスコープと称する。
【００６５】
パラメータ表示領域１００３には、パラメータとして全方位画像の中心座標Ｘ、Ｙおよび、有効画像領域の内周円の半径Ｒ１、および、外周円の半径Ｒ２が、テキストボックス上にそれぞれ表示されている。各表示はパラメータスコープに連動して変化する。また、ユーザーがテキストボックス上でマウスポインタをクリックすると入力モードになり数値を直接入力できる。数値が変化するとパラメータスコープの表示も連動して変化する。
【００６６】
数値を入力したり、パラメータスコープを移動したりして、全方位画像のパラメータを設定した後に、変更を確定する場合にはＯＫボタン１００８を押す。また、変更を確定せずにダイアログを終了する場合にはキャンセルボタン１００９を押す。
【００６７】
つぎに本実施形態におけるパラメータ測定の手順を、図１１を用いて説明する。図１１では、図１０のダイアログが起動するところから、消去されるまでを説明し、その前後の初期化処理などの説明は省略する。
【００６８】
ステップＳ１１０１においてダイアログが起動すると、ステップＳ１１０２においてイベント待ちを行う。イベントにはテキストボックスの数値入力、マウスの左ボタンダウン、マウス移動、マウスの左ボタンアップ、ＯＫボタン選択、キャンセルボタン選択等がある。ステップＳ１１０２においてイベントが発生すると、ステップＳ１１０３においてイベントが数値入力イベントであるかどうか確認する。なお、マウスのボタンに関しては便宜上左ボタンを使用するが、本実施形態は使用するボタンに依存するものではない。
【００６９】
数値入力イベントはパラメータ表示領域１００３上のテキストボックスをクリックすると発生する。もしイベントが数値入力イベントであるならばステップＳ１１０３においてＹ分岐し、ステップＳ１１０４において数値入力処理を行う。数値入力処理においては指定したテキストボックス上にカーソルが現れ、数字を入力／修正できる。この処理は一般にウィンドウシステムで提供されていることから、実装の詳細は省略する。数値入力が終了するとステップＳ１１１１において規定のイベント処理を行う。この処理は一般にウィンドウシステムが行うイベント処理であるため説明を省略する。その後再びステップＳ１１０２に戻ってイベント待ちを行う。ステップＳ１１０３において、もし数値入力ではなかった場合にはＮ分岐してステップＳ１１０５に進む。
【００７０】
ステップＳ１１０５ではイベントがマウスの左ボタンダウンイベントであるかどうか確認する。もしそうであるならば移動モードをＯＮにし、ポインタの近傍にあるパラメータスコープの要素、すなわち、中心、小円、大円、の三つのオブジェクトのうち一つを選択する。いずれのオブジェクトも近くにない場合には選択を行わない。つぎに前記したステップＳ１１１１以下の処理を行う。
【００７１】
ステップＳ１１０５においてマウスの左ボタンダウンイベントではない場合、ステップＳ１１０７に進んでマウスムーブイベントかどうか判断する。もしマウスムーブイベントである場合にはＹ分岐し、ステップＳ１１０８において移動処理を行う。これにより、選択されたパラメータスコープの一オブジェクトのパラメータを変更する。中心が選択されている場合パラメータスコープ全体を移動する。小円もしくは大円が選択されている場合、小円もしくは大円の半径を変更する。ここで小円の半径が大円より大きくなることはない。移動処理を終了後、前記したステップＳ１１１１以下の処理を行う。
【００７２】
ステップＳ１１０７においてマウスムーブイベントでない場合にはＮ分岐してステップＳ１１０９に進んでマウスの左ボタンアップイベントかどうか判断する。もしそうである場合にはＹ分岐してステップＳ１１１０に進んで移動モードをＯＦＦにする。パラメータスコープの一オブジェクトが選択されている場合には選択を解除する。つぎにステップＳ１１１１以下の処理を行う。
【００７３】
ステップＳ１１０９においてマウスの左ボタンアップイベントではない場合はＮ分岐し、ステップＳ１１１３においてＯＫボタンアップイベントかどうかを判別する。もしそうである場合にはＹ分岐し、ステップＳ１１１４に進んでデータ確定処理を行う。ここではテキストボックスにある数値やダイアログ上のパラメータスコープの表示状態を、パラメータスコープの値として確定する。次にステップＳ１１１６に進んでダイアログの消去処理を行う。次にステップＳ１１１７に進んで規定のイベント処理を行い終了する。
【００７４】
もしステップＳ１１１３においてＯＫボタンアップイベントで無かった場合には、ステップＳ１１１５に進んでキャンセルボタンアップイベントであるかどうかを判別する。もしそうである場合にはＹ分岐して、変更したデータの確定を行わず、前記したステップＳ１１１６以下の処理を行い終了する。もし、ステップＳ１１１５において、キャンセルイベントでもない場合には、ステップＳ１１１１に進んで、規定のイベント処理のみを行った後、ステップＳ１１０２に進んでイベント待ちループに戻る。
【００７５】
以上述べたように、第４の実施形態によれば、全方位画像の中心、有効画像領域の内周円と外周円の半径を直感的かつ対話的に変更する手段を設けることによって、自動設定以外の微調整を行なうことができる。
【００７６】
（第５の実施形態）
本発明は、図１の基本構成を含んでいれば、複数の機器（例えば、ホストコンピュータ、インタフェース機器、プリンタなど）から構成されるシステムに適用しても良い。
【００７７】
また、上述した実施形態の機能を実現するべく各種のデバイスを動作させるように、該各種デバイスと接続された装置あるいはシステム内のコンピュータに対し、上記実施形態の機能を実現するためのソフトウェアのプログラムコードを供給し、そのシステムあるいは装置のコンピュータに格納されたプログラムにしたがって上記各種デバイスを動作させることによって実施したものも、本発明の範疇に含まれる。
【００７８】
また、この場合、上記ソフトウェアのプログラムコード自体が上述した実施形態の機能を実現することになり、そのプログラムコード自体、およびそのプログラムコードをコンピュータに供給するための手段、例えばかかるプログラムコードを格納した記録媒体は本発明を構成する。かかるプログラムコードを記憶する記録媒体としては、例えばフロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【００７９】
また、コンピュータが供給されたプログラムコードを実行することにより、常住の実施形態の機能が実現されるだけでなく、そのプログラムコードがコンピュータにおいて稼動しているＯＳ（オペレーションシステム）あるいは他のアプリケーションソフトなどの共同して上述の実施形態の自供が実現される場合にも、かかるプログラムコード自体は本発明の実施形態に含まれることは言うまでもない。
【００８０】
さらに、供給されたプログラムコードがコンピュータの機能拡張ボードや、コンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが、実際の処理の一部または全部を行い、その処理によって上述した実施形態の機能が実現されてる場合にも本発明に含まれることは言うまでもない。
【００８１】
【発明の効果】
以上説明したように、本発明によれば、全方位画像をパノラマ画像や透視投影画像に変換する際に不可欠な、全方位画像のパラメータを自動的に求めることができる。
【００８２】
また自動的に求めたパラメータを、使用者が対話的に修正することができる。
【００８３】
その結果、全方位画像のパラメータを効率的かつ正確に設定することができる。
【図面の簡単な説明】
【図１】本発明の一実施形態のハードウェア構成を示すブロック図である。
【図２】本発明で使用する回転体ミラーの構造と全方位画像の説明図である。
【図３】全方位画像中心の円形領域を抽出して画像中心を求める例の原理図である。
【図４】全方位画像中心の円形領域を抽出して画像中心を求める例の処理手順を示す図である。
【図５】全方位画像中から複数の円を抽出して画像中心と有効画像領域を求める例の原理図である。
【図６】全方位画像中から複数の円を抽出して画像中心と有効画像領域を求める例の処理手順を示す図である。
【図７】マーカーを用いて画像中心を求める場合の、マーカーの説明図である。
【図８】マーカーを用いて画像中心を求める場合の原理図である。
【図９】マーカーを用いて画像中心を求める場合の処理手順を示す図である。
【図１０】対話的にパラメータを設定する場合の画面表示例を示す図である。
【図１１】対話的にパラメータを設定する場合の処理手順を示す図である。
【図１】
0003862603.tif 000002
【図２】
0003862603.tif 000003
【図３】
0003862603.tif 000004
【図４】
0003862603.tif 000005
【図５】
0003862603.tif 000006
【図６】
0003862603.tif 000007
【図７】
0003862603.tif 000008
【図８】
0003862603.tif 000009
【図９】
0003862603.tif 000010
【図１０】
0003862603.tif 000011
【図１１】
0003862603.tif 000012