カメラ姿勢取得装置、カメラ姿勢取得方法、及びカメラ姿勢取得プログラム
【課題】 都市部などにおいて撮影された全方位画像から撮影したカメラの姿勢を、一枚の全方位画像から容易かつ確実に取得する。
【解決手段】 全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出部22、物体輪郭抽出後の全方位画像に対して画像中心から任意の角度で領域分割を行う検出領域分割部23、分割した各領域内の物体輪郭に対して直線検出を行い、検出した直線の交点を算出する直線検出部24、並びに検出した直線の交点と画像中心との位置の差からカメラ姿勢を算出するFOE算出部25、及びFOE変換部26を有するカメラ姿勢取得装置。
【解決手段】 全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出部22、物体輪郭抽出後の全方位画像に対して画像中心から任意の角度で領域分割を行う検出領域分割部23、分割した各領域内の物体輪郭に対して直線検出を行い、検出した直線の交点を算出する直線検出部24、並びに検出した直線の交点と画像中心との位置の差からカメラ姿勢を算出するFOE算出部25、及びFOE変換部26を有するカメラ姿勢取得装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータビジョン分野、画像計測、及び測量分野において、全方位カメラの画像入力装置等により取得した画像データ(いわゆる全方位画像)から、画像データ取得時の画像入力装置の姿勢情報を取得する技術に関するものである。
【背景技術】
【0002】
光軸が真上を向くように車両にカメラを固定して撮影を行ったときに、車両の左右前後の揺れにより実際にはカメラが真上を向かず傾いて撮影を行っていることがある。このようなカメラの傾きをカメラの姿勢情報と呼ぶ。従来、このカメラの姿勢情報取得には、ジャイロセンサなどを用いるセンサベースの手法、複数画像の解析による手法等があった。
【0003】
ジャイロセンサを用いる手法では、出力される角度情報を姿勢情報として直接取得できるという利点があるが、画像処理などに用いる場合には、カメラの取り付け位置とジャイロセンサの取り付け位置との違いから、位置合わせなどの処理が必要となるだけでなく、画像と姿勢情報の同期がとれないという問題や、ジャイロのドリフトなどの問題がある。
【0004】
一方、複数画像の解析による手法では、上記のような位置合わせや同期などの問題がなく、また画像毎の姿勢情報を獲得することが可能であるが、複数の画像を解析しないと姿勢情報を取得することはできないという問題がある(例えば、非特許文献1参照。)。
【0005】
そこで、全方位画像中のFOE(Focus of expansion、画像中の消失点、又は出現点を指す)の位置から、カメラの姿勢情報を算出する技術が開示されている(例えば、特許文献1参照。)。この技術では、画像中に投影された建物の輪郭情報を用いて全方位画像中のFOE位置を推定し、それからカメラ姿勢を求めることにより、カメラ姿勢を取得している。
【特許文献1】特開2004−157894号公報
【非特許文献1】農宗 千典、小沢 慎治著、「道路形状情報と連続道路画像からの車両位置とカメラ姿勢の同時推定」、電気情報通信学会論文誌 Vol.J77−D−II No.4 pp.764−773 1994年4月
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかし上記特許文献1に開示された技術では、撮影時において周囲の建物の状況に偏りがある場合、具体的には進行方向の右側にのみ建物がありそれ以外の方向には建物が無かった場合などには、FOEを求めるための建物の輪郭情報を十分に抽出することができないという問題があった。また、建物の輪郭情報から直線を検出する際に輪郭が強く出る建物ばかりに直線が集中してしまい、正確にFOEを求めることができないという問題があった。
【0007】
図14に直線が集中してFOEが正しく検出できない例を示す。図14では、全方位画像の左側に写っている建物が大きな領域を占めていることにより建物の輪郭が強く検出され、このため直線検出を行うと左の建物からしか検出が行われない。したがって、直線の交点の位置が大きく偏り、求めようとするFOEの位置と大きく異なってしまうことが生じていた。
【0008】
かかる事情に鑑みて本発明はなされたもので、その目的は、都市部などにおいて撮影された全方位画像から撮影したカメラの姿勢を、一枚の全方位画像から容易かつ確実に取得することにある。
【課題を解決するための手段】
【0009】
そこで上記課題を解決するために、請求項1に記載の発明は、全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置であって、前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出手段と、前記物体輪郭抽出後の全方位画像に対して画像中心から任意の角度で領域分割を行う検出領域分割手段と、前記分割した各領域内の物体輪郭に対して直線検出を行い、当該検出した直線の交点を算出する直線検出手段と、前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出手段と、を有することを特徴とする。
【0010】
また、請求項2に記載の発明は、全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置であって、前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出手段と、前記物体輪郭抽出後の全方位画像に対して、前記物体の輪郭のエッジ角度に基づいてフィルタリングを行う輪郭フィルタ手段と、前記フィルタリング後の全方位画像に対して直線検出を行い、当該検出した直線の交点を算出する直線検出手段と、前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出手段と、を有することを特徴とする。
【0011】
また、請求項3に記載の発明は、全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置であって、前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出手段と、前記物体輪郭抽出後の全方位画像に対して、前記物体の輪郭のエッジ角度に基づいてフィルタリングを行う輪郭フィルタ手段と、前記フィルタリング後の全方位画像に対して画像中心から任意の角度で領域分割を行う検出領域分割手段と、前記分割した各領域内の物体輪郭に対して直線検出を行い、当該検出した直線の交点を算出する直線検出手段と、前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出手段と、を有することを特徴とする。
【0012】
また、請求項4に記載の発明は、全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置におけるカメラ姿勢取得方法であって、物体輪郭抽出手段が、前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出ステップと、検出領域分割手段が、前記物体輪郭抽出後の全方位画像に対して画像中心から任意の角度で領域分割を行う検出領域分割ステップと、直線検出手段が、前記分割した各領域内の物体輪郭に対して直線検出を行い、当該検出した直線の交点を算出する直線検出ステップと、カメラ姿勢算出手段が、前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出ステップと、を有することを特徴とする。
【0013】
また、請求項5に記載の発明は、全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置におけるカメラ姿勢取得方法であって、物体輪郭抽出手段が、前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出ステップと、輪郭フィルタ手段が、前記物体輪郭抽出後の全方位画像に対して、前記物体の輪郭のエッジ角度に基づいてフィルタリングを行う輪郭フィルタステップと、直線検出手段が、前記フィルタリング後の全方位画像に対して直線検出を行い、当該検出した直線の交点を算出する直線検出ステップと、カメラ姿勢算出手段が、前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出ステップと、を有することを特徴とする。
【0014】
また、請求項6に記載の発明は、全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置におけるカメラ姿勢取得方法であって、物体輪郭抽出手段が、前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出ステップと、輪郭フィルタ手段が、前記物体輪郭抽出後の全方位画像に対して、前記物体の輪郭のエッジ角度に基づいてフィルタリングを行う輪郭フィルタステップと、検出領域分割手段が、前記フィルタリング後の全方位画像に対して画像中心から任意の角度で領域分割を行う検出領域分割ステップと、直線検出手段が、前記分割した各領域内の物体輪郭に対して直線検出を行い、当該検出した直線の交点を算出する直線検出ステップと、カメラ姿勢算出手段が、前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出ステップと、を有することを特徴とする。
【0015】
また、請求項7に記載の発明は、前記請求項1〜6に記載の発明のいずれかに記載の処理を行わせるプログラムであることを特徴とする。
【0016】
請求項1及び4に記載の発明では、画像分割処理手段で直線検出を行う領域を分割しておくことで、検出した直線が一部のエッジが強い部分にのみ集中するということがなくなる。これにより直線を各領域から均等に検出することが可能となり、カメラ姿勢推定の精度が向上する。
【0017】
請求項2及び5に記載の発明では、輪郭フィルタ手段で輪郭フィルタリング処理を行うことで、画像中心を向かう建物輪郭のみを抽出することができる。これにより、FOE位置を算出するための直線検出をより高精度に行うことが可能となり、カメラ姿勢推定の精度が向上する。
【0018】
請求項3及び6に記載の発明では、輪郭フィルタ手段で輪郭のフィルタリング処理を行い、その後に画像分割処理手段で領域を分割してそれぞれの領域から直線検出を行う。これにより、検出した直線が一部のエッジが強い部分にのみ集中することがなく、空間中で垂直な建物輪郭のみを抽出することができ、カメラ姿勢推定の精度が向上する。
【発明の効果】
【0019】
請求項1〜7に記載の発明によれば、撮影時の周囲の建物の状況に偏りがある場合であっても、安定して正確なFOE位置を検出することが可能となる。これにより、カメラの姿勢推定の精度を向上させることができ、全方位画像を利用した三次元計測を行う際に、ロバストで高精度な計測を実現することが可能となる。
【発明を実施するための最良の形態】
【0020】
以下に本発明の実施形態を説明する。説明上、全方位カメラは、魚眼レンズをマウントしたものとし、このカメラを車両に対して光軸が垂直上向きになるように搭載して、移動しながら全方位映像を取得するものとする。また、X−Y平面を地面、Z軸を高さ方向、X軸方向をカメラの進行方向とすると、算出するカメラ姿勢は、X軸まわりの回転角φ(ロール角)、及びY軸まわりの回転角ρ(ピッチ角)となる。なお、魚眼レンズは等距離投影
【0021】
【数1】
【0022】
を用いるものとする。
【0023】
本実施形態では魚眼レンズをマウントした全方位カメラを用いた場合について説明するが、他の全方位カメラを用いた場合についても、その全方位カメラの有する投影式をあてはめることで本発明が成立する。
【0024】
ここで、図1に全方位画像の座標系を示す。図1に示すように、全方位画像上の画素の座標系をI−J、空間中の座標系をX−Y−Zとする。全方位画像上の点の座標はI−J座標系で(i,j)と示す。ここでは、X−Y平面は空間中での地面を、Z軸方向は高さを、X軸方向は進行方向を、ぞれぞれ表している。
【0025】
また、I軸、J軸はそれぞれX軸、Y軸と並行であるものとする。なお、I−J座標系とX−Y−Z座標系とのスケールを変換するための係数として結像面における受光素子1画素の物理的な大きさをDとする。
【0026】
(実施形態1)
以下に、図2〜図7を用いて実施形態1を説明する。
【0027】
図2に実施形態1のカメラ姿勢取得装置の構成図を示す。図2に示すように実施形態1のカメラ姿勢取得装置は、全方位画像をデータとして入力する全方位画像入力部21、全方位画像上に投影された建物の輪郭を抽出する建物輪郭抽出部22、抽出した建物輪郭の中から空間中で垂直な直線を検出する領域を分割する検出領域分割部23、分割した各領域内の建物輪郭に対して直線検出を行う直線検出部24、検出した各直線の交点をFOEとして算出するFOE算出部25、算出したFOEの位置をロール角とピッチ角に変換するFOE変換部26、及び算出したロール角とピッチ角をカメラ姿勢情報として出力するカメラ姿勢出力部27から構成されている。
【0028】
図3にカメラ姿勢取得装置の処理フローを示す。図3に示すように、処理が開始すると、全方位画像を全方位画像入力部21に対して入力する(S301)。
【0029】
S301で受信した全方位画像が建物輪郭抽出部22に送信され、建物輪郭抽出部22は全方位画像に対して輪郭抽出処理を行い、輪郭抽出画像を得る(S302)。
【0030】
ここで図4に全方位画像に対する輪郭抽出例を示す。図4に示すように、全方位画像から、画素の輝度の勾配値を利用した公知の方法等により建物輪郭を求め、輪郭に当たる画素の値を1、輪郭にあたらない画素の値を0とする。図4では黒い画素の値を1、白い画素の値を0としている。
【0031】
次にS302で取得した輪郭抽出画像が検出領域分割部23に送信され、検出領域分割部23は分割後の領域の画像中心を基準にした角度が各領域で等しくなるように、輪郭抽出画像をn領域に分割する(S303)。
【0032】
ここで図5にn=4、すなわち輪郭抽出画像を4領域に画像を分割した場合の例を示す。初期設定ではn分割した領域毎に処理を行う領域番号mの初期値として1を代入する。
【0033】
なお、算出するロール角、及びピッチ角が第一次近似(cos(θ)≒1、sin(θ)≒θ)が成立する範囲内での微少な傾きである場合、空間中で垂直な建物の輪郭は、FOEを中心として放射状の直線と重なるという性質がある。このため、抽出した輪郭に対して直線検出を行うことで、空間中で垂直な建物の輪郭を抽出することができる。
【0034】
次にS303で分割した画像が直線検出部24に送信され、直線検出部24は分割された領域番号mに対する領域に対して直線検出を行う (S304)。
【0035】
ここで図6に直線検出の例を示す。ここでは、輪郭抽出画像に対して、Hough変換を用いた直線検出処理を行った例を示す。ここでは、S302で輪郭抽出を行った輪郭抽出画像をS303によって分割した各領域に対して直線検出処理を実現している。前述の図14と比較すると、図6に示すように直線検出に偏りがなく、安定して直線が求められていることがわかる。
【0036】
続いて直線検出部24は、各領域についてS304が行われたかどうかを判定し(S305)、mとnとが等しくなければS306に処理を進め、mとnとが等しければ全ての領域についてS304が行われたものとしてS307へ処理を進める。
【0037】
続いて直線検出部24は、領域番号mを1加算して、領域番号mに対する直線検出(S304)へ繰り返し処理を進める(S306)。このようにしてS304で検出した複数の直線から交点を算出する(S307)。直線の交点は、検出したすべての直線からの距離が最小となるような点の位置を最小自乗法などによって算出し、交点として決定する。
【0038】
次にFOE算出部25が、S307で算出した直線の交点をFOE位置として決定する(S308)。
【0039】
ここで図7にFOE位置決定例を示す。図7に示すように、直線の交点を決定したFOE位置(ifoe,jfoe)としている。
【0040】
なお一般的に、空間中で垂直な線分の高さを無限遠まで延長した直線は、画像上でFOEを中心として放射状に投影されるという性質がある。すなわち、S307において算出した直線の交点はFOEと一致することとなる。ここでは、上記の性質を利用してS307で算出した交点をS308においてFOE位置(ifoe,jfoe)として決定することを実現している。前述の図14と比較すると、図7に示すようにFOE位置が誤差なく、安定して求められていることがわかる。
【0041】
このようにしてS308で決定したFOE位置を、FOE変換部26が下記の魚眼レンズの投影式、結像面における受光素子1画素の物理的な大きさDから導出した式により処理してロール角φ、及びピッチ角ρを算出する。
【0042】
【数2】
【0043】
【数3】
【0044】
以上により、カメラ姿勢の取得処理を終了する。
【0045】
以上、実施形態1で説明したように、S303の画像分割処理で予めS304の直線検出を行う領域をn個に分割しておくことで、前述の図14のように検出した直線が一部のエッジが強い部分にのみ集中するということがなくなる。従来技術のように直線が一部のエッジに集中するという状況は、全方位画像を撮影したときの周囲の建物の状況にばらつきがある場合には直線の交点を求める際の交点の精度が低下することにつながり、カメラ姿勢推定の精度が低下することを意味する。これに対して実施形態1では、直線を各領域から均等に検出することにより、カメラ姿勢推定の精度を向上することを実現している。
【0046】
(実施形態2)
実施形態2では、輪郭抽出を行った後に輪郭抽出時のエッジ方向によるフィルタリング処理を行うことで、空間中において地面(又はX−Y平面)に対して垂直な直線以外の輪郭を削除し、より高精度に空間中で地面(又はX−Y平面)に対して垂直な直線の検出について述べる。
【0047】
以下に、図8〜図11を用いて実施形態2について説明する。
【0048】
図8に実施形態2のカメラ姿勢取得装置の構成図を示す。図8に示すように実施形態2のカメラ姿勢取得装置は、全方位画像をデータとして入力する全方位画像入力部81、全方位画像上に投影された建物の輪郭を抽出する建物輪郭抽出部82、抽出した建物輪郭の輪郭方向を基準にして輪郭のフィルタリング処理を行う輪郭フィルタ部83、フィルタリング処理を行った建物輪郭に対して直線検出を行う直線検出部84、検出した直線の交点をFOEとして算出するFOE算出部85、算出したFOEの位置をロール角、ピッチ角に変換するFOE変換部86、及び算出したロール角、ピッチ角をカメラ姿勢情報として出力するカメラ姿勢情報出力部87から構成されている。
【0049】
図9にカメラ姿勢取得装置の処理フローを示す。図9に示すように、処理が開始すると全方位画像を全方位画像入力部81に対して入力する(S901)。
【0050】
S901で入力した全方位画像が建物輪郭抽出部82に送信され、建物輪郭抽出部82は全方位画像に対して建物輪郭Eiの抽出を行い、輪郭抽出画像を得る。ここでEi(i=1〜n)はエッジ抽出画像中で輪郭となる画素の集合を示す。
【0051】
次に、輪郭フィルタ部83がフィルタリング処理を行うための閾値として角度θを指定する(S903)。このθは、輪郭抽出画像における任意の輪郭におけるエッジの角度(エッジの接線に垂直な直線の角度)μとその輪郭の位置と画像中心とを結んだ直線の法線の角度νの差がθ以下であるときに、その輪郭が画像中心方向を向かっていると判定するための角度である。また、処理対象となる輪郭の番号であるmに1を代入する。
【0052】
続いて輪郭フィルタ部83はフィルタリング処理を行うために閾値と比較するための値として角度νを算出する(S904)。角度νは処理対象の輪郭Emの位置と画像中心とを通る直線の法線の角度とする。
【0053】
ここで図10に角度νの例を示す。図10に示すように、処理対象の輪郭Emの位置と画像中心とを通る直線101の法線102とI軸とがなす角度がνとなっている。
【0054】
続いて輪郭フィルタ部83はS902で輪郭Emの抽出処理を行った際のエッジの角度を、エッジ角度μとして代入する(S905)。
【0055】
続いて輪郭フィルタ部83は角度μと角度νの差の絶対値を求め角度θと比較し(S906)、角度θより小さい場合にはS908に処理を進め、角度θ以上の場合にはS907に処理を進める。
【0056】
S907では、処理対象となる輪郭Emから求めた角度μと角度νの差の絶対値が閾値θよりも大きいため、画像中心に向かっていないエッジとして判定され、輪郭Emを削除し、処理をS908に進める。
【0057】
S908では、処理対象の輪郭番号mがS902で抽出した輪郭数nに一致するかを判定し、mがnに到達していない場合にはS909でmに1を加算して処理を繰り返す。つまり、S902において抽出したすべての輪郭に関してS904〜S907の輪郭フィルタリング処理を繰り返す。mがnに等しい場合には、S902において抽出したすべての輪郭に関してS904〜S907の輪郭フィルタリング処理が終了したと判定し、S910へ処理を進める。
【0058】
ここで、図11にフィルタリング処理を行った輪郭の例を示す。図11(a)がフィルタリング処理によって削除された輪郭を示し、図11(b)がフィルタリング処理によって残った輪郭を示す。
【0059】
このようにして取得したフィルタリング処理によって残った輪郭に対して直線検出部84が、Hough変換などの直線検出処理を行い、直線の検出を行う(S910)。
【0060】
続いて直線検出部84は、S910で検出したすべての直線からの距離が最小となるような点の位置を最小自乗法などによって算出し、交点として決定する(S911)。
【0061】
次にFOE算出部85が、S911で算出した交点をFOE位置(ifoe,jfoe)として決定する(S912)。
【0062】
次にFOE変換部が、S912で決定したFOE位置から上記数式2、3に基づいてロール角φ、ピッチ角ρを算出する(S913)。
【0063】
以上により、カメラ姿勢取得処理を終了する。
【0064】
以上、実施形態2に説明した通り、S904〜S907の輪郭フィルタリング処理を行うことで画像中心に向かう建物輪郭のみを抽出し、FOE位置を算出するための直線検出をより高精度に行うことが可能となる。これにより、カメラ姿勢推定の精度向上を実現することができる。
【0065】
(実施形態3)
実施形態3では、実施形態1及び実施形態2を組み合わせることで、周囲の建物状況に影響されにくく、さらに建物の垂直な輪郭だけを高精度に抽出することでカメラ姿勢推定の精度を向上させる。
【0066】
図12に実施形態3のカメラ姿勢取得装置の構成図を示す。図12に示すように実施形態3のカメラ姿勢取得装置は、全方位画像をデータとして入力する全方位画像入力部121、全方位画像上に投影された建物の輪郭を抽出する建物輪郭抽出部122、抽出した建物輪郭の輪郭方向を基準にして輪郭のフィルタリングを行う輪郭フィルタ部123、抽出した建物輪郭の中から空間中で垂直な直線を検出する領域を分割する検出領域分割部124、分割した各領域内でフィルタリングを行った建物輪郭に対して直線検出を行う直線検出部125、検出した直線の交点をFOEとして算出するFOE算出部126、算出したFOEの位置をロール角、ピッチ角に変換するFOE変換部127、及び算出したロール角、ピッチ角をカメラ姿勢情報として出力するカメラ姿勢情報出力部128から構成されている。
【0067】
実施形態3の処理フローとしては図3のS302の処理に代替して、図9のS902〜S910の処理を行う。
【0068】
以上、実施形態3では、実施形態2に示した輪郭のフィルタリング処理を行った後に実施形態1に示した領域分割処理を行ってから、直線検出及びFOE位置の決定を行う。
【0069】
ここで図13に実施形態3の処理結果の例を示す。図13に示すように輪郭のフィルタリング処理をあらかじめ行い、その後に領域を分割してそれぞれの領域から直線検出を行う処理が実現できていることがわかる。これにより、検出した直線が一部のエッジが強い部分にのみ集中することがなく、空間中で垂直な建物輪郭のみからFOE位置を求めることが可能となり、全方位画像を撮影した周囲の状況によらず安定かつ高精度にカメラ姿勢推定を行うことが可能となる。
【0070】
なお、カメラ姿勢取得装置は、例えば、コンピュータ装置が有するCPUによって実現され、必要とする建物輪郭抽出、検出領域分割、輪郭フィルタ、直線検出、FOE算出、FOE変換などをアプリケーションプログラムとして搭載することができる。
【0071】
また、コンピュータ装置には上記説明した建物輪郭抽出、検出領域分割、輪郭フィルタ、直線検出、FOE算出、FOE変換など行った処理結果や計算結果等のデータを内部メモリや外部記憶装置等に書き込み・読み出しができるようにしてもよい。
【0072】
また、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のCPU(MPU)が記録媒体に格納されたプログラムコードを読み出し実行することによっても実現できる。その場合、記憶媒体から読み出されたプログラムコード自体が上述した実施形態の機能を実現することになり、そのプログラムコードを、例えば、CD−ROM、DVD−ROM、CD−R、CD−RW、MO、HDD等の記録媒体に記録することができる。
【図面の簡単な説明】
【0073】
【図1】全方位画像の座標系図。
【図2】実施形態1のカメラ姿勢取得装置の構成図。
【図3】実施形態1のカメラ姿勢取得装置の処理フローチャート。
【図4】全方位画像に対する輪郭抽出例を示す図。
【図5】輪郭抽出画像を4領域に画像を分割した場合の例を示す図。
【図6】直線検出の例を示す図。
【図7】FOE位置決定例を示す図。
【図8】実施形態2のカメラ姿勢取得装置の構成図。
【図9】実施形態2のカメラ姿勢取得装置の処理フローチャート。
【図10】全方位画像の座標系における角度νの例を示す図。
【図11】フィルタリング処理を行った輪郭の例を示す図。
【図12】実施形態3のカメラ姿勢取得装置の構成図。
【図13】実施形態3のカメラ姿勢取得装置の処理フローチャート。
【図14】直線が集中してFOEが正しく検出できない例を示す図。
【符号の説明】
【0074】
21…全方位画像入力部
22…建物輪郭抽出部
23…検出領域分割部
24…直線検出部
25…FOE算出部
26…FOE変換部
27…カメラ姿勢出力部
81…全方位画像入力部
82…建物輪郭抽出部
83…輪郭フィルタ部
84…直線検出部
85…FOE算出部
86…FOE変換部
87…カメラ姿勢出力部
101…処理対象画像の輪郭Emの位置と画像中心とを通る直線
102…処理対象の輪郭Emの位置と画像中心とを通る直線の法線
121…全方位画像入力部
122…建物輪郭抽出部
123…輪郭フィルタ部
124…検出領域分割部
125…直線検出部
126…FOE算出部
127…FOE変換部
128…カメラ姿勢出力部
【技術分野】
【0001】
本発明は、コンピュータビジョン分野、画像計測、及び測量分野において、全方位カメラの画像入力装置等により取得した画像データ(いわゆる全方位画像)から、画像データ取得時の画像入力装置の姿勢情報を取得する技術に関するものである。
【背景技術】
【0002】
光軸が真上を向くように車両にカメラを固定して撮影を行ったときに、車両の左右前後の揺れにより実際にはカメラが真上を向かず傾いて撮影を行っていることがある。このようなカメラの傾きをカメラの姿勢情報と呼ぶ。従来、このカメラの姿勢情報取得には、ジャイロセンサなどを用いるセンサベースの手法、複数画像の解析による手法等があった。
【0003】
ジャイロセンサを用いる手法では、出力される角度情報を姿勢情報として直接取得できるという利点があるが、画像処理などに用いる場合には、カメラの取り付け位置とジャイロセンサの取り付け位置との違いから、位置合わせなどの処理が必要となるだけでなく、画像と姿勢情報の同期がとれないという問題や、ジャイロのドリフトなどの問題がある。
【0004】
一方、複数画像の解析による手法では、上記のような位置合わせや同期などの問題がなく、また画像毎の姿勢情報を獲得することが可能であるが、複数の画像を解析しないと姿勢情報を取得することはできないという問題がある(例えば、非特許文献1参照。)。
【0005】
そこで、全方位画像中のFOE(Focus of expansion、画像中の消失点、又は出現点を指す)の位置から、カメラの姿勢情報を算出する技術が開示されている(例えば、特許文献1参照。)。この技術では、画像中に投影された建物の輪郭情報を用いて全方位画像中のFOE位置を推定し、それからカメラ姿勢を求めることにより、カメラ姿勢を取得している。
【特許文献1】特開2004−157894号公報
【非特許文献1】農宗 千典、小沢 慎治著、「道路形状情報と連続道路画像からの車両位置とカメラ姿勢の同時推定」、電気情報通信学会論文誌 Vol.J77−D−II No.4 pp.764−773 1994年4月
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかし上記特許文献1に開示された技術では、撮影時において周囲の建物の状況に偏りがある場合、具体的には進行方向の右側にのみ建物がありそれ以外の方向には建物が無かった場合などには、FOEを求めるための建物の輪郭情報を十分に抽出することができないという問題があった。また、建物の輪郭情報から直線を検出する際に輪郭が強く出る建物ばかりに直線が集中してしまい、正確にFOEを求めることができないという問題があった。
【0007】
図14に直線が集中してFOEが正しく検出できない例を示す。図14では、全方位画像の左側に写っている建物が大きな領域を占めていることにより建物の輪郭が強く検出され、このため直線検出を行うと左の建物からしか検出が行われない。したがって、直線の交点の位置が大きく偏り、求めようとするFOEの位置と大きく異なってしまうことが生じていた。
【0008】
かかる事情に鑑みて本発明はなされたもので、その目的は、都市部などにおいて撮影された全方位画像から撮影したカメラの姿勢を、一枚の全方位画像から容易かつ確実に取得することにある。
【課題を解決するための手段】
【0009】
そこで上記課題を解決するために、請求項1に記載の発明は、全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置であって、前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出手段と、前記物体輪郭抽出後の全方位画像に対して画像中心から任意の角度で領域分割を行う検出領域分割手段と、前記分割した各領域内の物体輪郭に対して直線検出を行い、当該検出した直線の交点を算出する直線検出手段と、前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出手段と、を有することを特徴とする。
【0010】
また、請求項2に記載の発明は、全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置であって、前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出手段と、前記物体輪郭抽出後の全方位画像に対して、前記物体の輪郭のエッジ角度に基づいてフィルタリングを行う輪郭フィルタ手段と、前記フィルタリング後の全方位画像に対して直線検出を行い、当該検出した直線の交点を算出する直線検出手段と、前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出手段と、を有することを特徴とする。
【0011】
また、請求項3に記載の発明は、全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置であって、前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出手段と、前記物体輪郭抽出後の全方位画像に対して、前記物体の輪郭のエッジ角度に基づいてフィルタリングを行う輪郭フィルタ手段と、前記フィルタリング後の全方位画像に対して画像中心から任意の角度で領域分割を行う検出領域分割手段と、前記分割した各領域内の物体輪郭に対して直線検出を行い、当該検出した直線の交点を算出する直線検出手段と、前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出手段と、を有することを特徴とする。
【0012】
また、請求項4に記載の発明は、全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置におけるカメラ姿勢取得方法であって、物体輪郭抽出手段が、前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出ステップと、検出領域分割手段が、前記物体輪郭抽出後の全方位画像に対して画像中心から任意の角度で領域分割を行う検出領域分割ステップと、直線検出手段が、前記分割した各領域内の物体輪郭に対して直線検出を行い、当該検出した直線の交点を算出する直線検出ステップと、カメラ姿勢算出手段が、前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出ステップと、を有することを特徴とする。
【0013】
また、請求項5に記載の発明は、全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置におけるカメラ姿勢取得方法であって、物体輪郭抽出手段が、前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出ステップと、輪郭フィルタ手段が、前記物体輪郭抽出後の全方位画像に対して、前記物体の輪郭のエッジ角度に基づいてフィルタリングを行う輪郭フィルタステップと、直線検出手段が、前記フィルタリング後の全方位画像に対して直線検出を行い、当該検出した直線の交点を算出する直線検出ステップと、カメラ姿勢算出手段が、前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出ステップと、を有することを特徴とする。
【0014】
また、請求項6に記載の発明は、全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置におけるカメラ姿勢取得方法であって、物体輪郭抽出手段が、前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出ステップと、輪郭フィルタ手段が、前記物体輪郭抽出後の全方位画像に対して、前記物体の輪郭のエッジ角度に基づいてフィルタリングを行う輪郭フィルタステップと、検出領域分割手段が、前記フィルタリング後の全方位画像に対して画像中心から任意の角度で領域分割を行う検出領域分割ステップと、直線検出手段が、前記分割した各領域内の物体輪郭に対して直線検出を行い、当該検出した直線の交点を算出する直線検出ステップと、カメラ姿勢算出手段が、前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出ステップと、を有することを特徴とする。
【0015】
また、請求項7に記載の発明は、前記請求項1〜6に記載の発明のいずれかに記載の処理を行わせるプログラムであることを特徴とする。
【0016】
請求項1及び4に記載の発明では、画像分割処理手段で直線検出を行う領域を分割しておくことで、検出した直線が一部のエッジが強い部分にのみ集中するということがなくなる。これにより直線を各領域から均等に検出することが可能となり、カメラ姿勢推定の精度が向上する。
【0017】
請求項2及び5に記載の発明では、輪郭フィルタ手段で輪郭フィルタリング処理を行うことで、画像中心を向かう建物輪郭のみを抽出することができる。これにより、FOE位置を算出するための直線検出をより高精度に行うことが可能となり、カメラ姿勢推定の精度が向上する。
【0018】
請求項3及び6に記載の発明では、輪郭フィルタ手段で輪郭のフィルタリング処理を行い、その後に画像分割処理手段で領域を分割してそれぞれの領域から直線検出を行う。これにより、検出した直線が一部のエッジが強い部分にのみ集中することがなく、空間中で垂直な建物輪郭のみを抽出することができ、カメラ姿勢推定の精度が向上する。
【発明の効果】
【0019】
請求項1〜7に記載の発明によれば、撮影時の周囲の建物の状況に偏りがある場合であっても、安定して正確なFOE位置を検出することが可能となる。これにより、カメラの姿勢推定の精度を向上させることができ、全方位画像を利用した三次元計測を行う際に、ロバストで高精度な計測を実現することが可能となる。
【発明を実施するための最良の形態】
【0020】
以下に本発明の実施形態を説明する。説明上、全方位カメラは、魚眼レンズをマウントしたものとし、このカメラを車両に対して光軸が垂直上向きになるように搭載して、移動しながら全方位映像を取得するものとする。また、X−Y平面を地面、Z軸を高さ方向、X軸方向をカメラの進行方向とすると、算出するカメラ姿勢は、X軸まわりの回転角φ(ロール角)、及びY軸まわりの回転角ρ(ピッチ角)となる。なお、魚眼レンズは等距離投影
【0021】
【数1】
【0022】
を用いるものとする。
【0023】
本実施形態では魚眼レンズをマウントした全方位カメラを用いた場合について説明するが、他の全方位カメラを用いた場合についても、その全方位カメラの有する投影式をあてはめることで本発明が成立する。
【0024】
ここで、図1に全方位画像の座標系を示す。図1に示すように、全方位画像上の画素の座標系をI−J、空間中の座標系をX−Y−Zとする。全方位画像上の点の座標はI−J座標系で(i,j)と示す。ここでは、X−Y平面は空間中での地面を、Z軸方向は高さを、X軸方向は進行方向を、ぞれぞれ表している。
【0025】
また、I軸、J軸はそれぞれX軸、Y軸と並行であるものとする。なお、I−J座標系とX−Y−Z座標系とのスケールを変換するための係数として結像面における受光素子1画素の物理的な大きさをDとする。
【0026】
(実施形態1)
以下に、図2〜図7を用いて実施形態1を説明する。
【0027】
図2に実施形態1のカメラ姿勢取得装置の構成図を示す。図2に示すように実施形態1のカメラ姿勢取得装置は、全方位画像をデータとして入力する全方位画像入力部21、全方位画像上に投影された建物の輪郭を抽出する建物輪郭抽出部22、抽出した建物輪郭の中から空間中で垂直な直線を検出する領域を分割する検出領域分割部23、分割した各領域内の建物輪郭に対して直線検出を行う直線検出部24、検出した各直線の交点をFOEとして算出するFOE算出部25、算出したFOEの位置をロール角とピッチ角に変換するFOE変換部26、及び算出したロール角とピッチ角をカメラ姿勢情報として出力するカメラ姿勢出力部27から構成されている。
【0028】
図3にカメラ姿勢取得装置の処理フローを示す。図3に示すように、処理が開始すると、全方位画像を全方位画像入力部21に対して入力する(S301)。
【0029】
S301で受信した全方位画像が建物輪郭抽出部22に送信され、建物輪郭抽出部22は全方位画像に対して輪郭抽出処理を行い、輪郭抽出画像を得る(S302)。
【0030】
ここで図4に全方位画像に対する輪郭抽出例を示す。図4に示すように、全方位画像から、画素の輝度の勾配値を利用した公知の方法等により建物輪郭を求め、輪郭に当たる画素の値を1、輪郭にあたらない画素の値を0とする。図4では黒い画素の値を1、白い画素の値を0としている。
【0031】
次にS302で取得した輪郭抽出画像が検出領域分割部23に送信され、検出領域分割部23は分割後の領域の画像中心を基準にした角度が各領域で等しくなるように、輪郭抽出画像をn領域に分割する(S303)。
【0032】
ここで図5にn=4、すなわち輪郭抽出画像を4領域に画像を分割した場合の例を示す。初期設定ではn分割した領域毎に処理を行う領域番号mの初期値として1を代入する。
【0033】
なお、算出するロール角、及びピッチ角が第一次近似(cos(θ)≒1、sin(θ)≒θ)が成立する範囲内での微少な傾きである場合、空間中で垂直な建物の輪郭は、FOEを中心として放射状の直線と重なるという性質がある。このため、抽出した輪郭に対して直線検出を行うことで、空間中で垂直な建物の輪郭を抽出することができる。
【0034】
次にS303で分割した画像が直線検出部24に送信され、直線検出部24は分割された領域番号mに対する領域に対して直線検出を行う (S304)。
【0035】
ここで図6に直線検出の例を示す。ここでは、輪郭抽出画像に対して、Hough変換を用いた直線検出処理を行った例を示す。ここでは、S302で輪郭抽出を行った輪郭抽出画像をS303によって分割した各領域に対して直線検出処理を実現している。前述の図14と比較すると、図6に示すように直線検出に偏りがなく、安定して直線が求められていることがわかる。
【0036】
続いて直線検出部24は、各領域についてS304が行われたかどうかを判定し(S305)、mとnとが等しくなければS306に処理を進め、mとnとが等しければ全ての領域についてS304が行われたものとしてS307へ処理を進める。
【0037】
続いて直線検出部24は、領域番号mを1加算して、領域番号mに対する直線検出(S304)へ繰り返し処理を進める(S306)。このようにしてS304で検出した複数の直線から交点を算出する(S307)。直線の交点は、検出したすべての直線からの距離が最小となるような点の位置を最小自乗法などによって算出し、交点として決定する。
【0038】
次にFOE算出部25が、S307で算出した直線の交点をFOE位置として決定する(S308)。
【0039】
ここで図7にFOE位置決定例を示す。図7に示すように、直線の交点を決定したFOE位置(ifoe,jfoe)としている。
【0040】
なお一般的に、空間中で垂直な線分の高さを無限遠まで延長した直線は、画像上でFOEを中心として放射状に投影されるという性質がある。すなわち、S307において算出した直線の交点はFOEと一致することとなる。ここでは、上記の性質を利用してS307で算出した交点をS308においてFOE位置(ifoe,jfoe)として決定することを実現している。前述の図14と比較すると、図7に示すようにFOE位置が誤差なく、安定して求められていることがわかる。
【0041】
このようにしてS308で決定したFOE位置を、FOE変換部26が下記の魚眼レンズの投影式、結像面における受光素子1画素の物理的な大きさDから導出した式により処理してロール角φ、及びピッチ角ρを算出する。
【0042】
【数2】
【0043】
【数3】
【0044】
以上により、カメラ姿勢の取得処理を終了する。
【0045】
以上、実施形態1で説明したように、S303の画像分割処理で予めS304の直線検出を行う領域をn個に分割しておくことで、前述の図14のように検出した直線が一部のエッジが強い部分にのみ集中するということがなくなる。従来技術のように直線が一部のエッジに集中するという状況は、全方位画像を撮影したときの周囲の建物の状況にばらつきがある場合には直線の交点を求める際の交点の精度が低下することにつながり、カメラ姿勢推定の精度が低下することを意味する。これに対して実施形態1では、直線を各領域から均等に検出することにより、カメラ姿勢推定の精度を向上することを実現している。
【0046】
(実施形態2)
実施形態2では、輪郭抽出を行った後に輪郭抽出時のエッジ方向によるフィルタリング処理を行うことで、空間中において地面(又はX−Y平面)に対して垂直な直線以外の輪郭を削除し、より高精度に空間中で地面(又はX−Y平面)に対して垂直な直線の検出について述べる。
【0047】
以下に、図8〜図11を用いて実施形態2について説明する。
【0048】
図8に実施形態2のカメラ姿勢取得装置の構成図を示す。図8に示すように実施形態2のカメラ姿勢取得装置は、全方位画像をデータとして入力する全方位画像入力部81、全方位画像上に投影された建物の輪郭を抽出する建物輪郭抽出部82、抽出した建物輪郭の輪郭方向を基準にして輪郭のフィルタリング処理を行う輪郭フィルタ部83、フィルタリング処理を行った建物輪郭に対して直線検出を行う直線検出部84、検出した直線の交点をFOEとして算出するFOE算出部85、算出したFOEの位置をロール角、ピッチ角に変換するFOE変換部86、及び算出したロール角、ピッチ角をカメラ姿勢情報として出力するカメラ姿勢情報出力部87から構成されている。
【0049】
図9にカメラ姿勢取得装置の処理フローを示す。図9に示すように、処理が開始すると全方位画像を全方位画像入力部81に対して入力する(S901)。
【0050】
S901で入力した全方位画像が建物輪郭抽出部82に送信され、建物輪郭抽出部82は全方位画像に対して建物輪郭Eiの抽出を行い、輪郭抽出画像を得る。ここでEi(i=1〜n)はエッジ抽出画像中で輪郭となる画素の集合を示す。
【0051】
次に、輪郭フィルタ部83がフィルタリング処理を行うための閾値として角度θを指定する(S903)。このθは、輪郭抽出画像における任意の輪郭におけるエッジの角度(エッジの接線に垂直な直線の角度)μとその輪郭の位置と画像中心とを結んだ直線の法線の角度νの差がθ以下であるときに、その輪郭が画像中心方向を向かっていると判定するための角度である。また、処理対象となる輪郭の番号であるmに1を代入する。
【0052】
続いて輪郭フィルタ部83はフィルタリング処理を行うために閾値と比較するための値として角度νを算出する(S904)。角度νは処理対象の輪郭Emの位置と画像中心とを通る直線の法線の角度とする。
【0053】
ここで図10に角度νの例を示す。図10に示すように、処理対象の輪郭Emの位置と画像中心とを通る直線101の法線102とI軸とがなす角度がνとなっている。
【0054】
続いて輪郭フィルタ部83はS902で輪郭Emの抽出処理を行った際のエッジの角度を、エッジ角度μとして代入する(S905)。
【0055】
続いて輪郭フィルタ部83は角度μと角度νの差の絶対値を求め角度θと比較し(S906)、角度θより小さい場合にはS908に処理を進め、角度θ以上の場合にはS907に処理を進める。
【0056】
S907では、処理対象となる輪郭Emから求めた角度μと角度νの差の絶対値が閾値θよりも大きいため、画像中心に向かっていないエッジとして判定され、輪郭Emを削除し、処理をS908に進める。
【0057】
S908では、処理対象の輪郭番号mがS902で抽出した輪郭数nに一致するかを判定し、mがnに到達していない場合にはS909でmに1を加算して処理を繰り返す。つまり、S902において抽出したすべての輪郭に関してS904〜S907の輪郭フィルタリング処理を繰り返す。mがnに等しい場合には、S902において抽出したすべての輪郭に関してS904〜S907の輪郭フィルタリング処理が終了したと判定し、S910へ処理を進める。
【0058】
ここで、図11にフィルタリング処理を行った輪郭の例を示す。図11(a)がフィルタリング処理によって削除された輪郭を示し、図11(b)がフィルタリング処理によって残った輪郭を示す。
【0059】
このようにして取得したフィルタリング処理によって残った輪郭に対して直線検出部84が、Hough変換などの直線検出処理を行い、直線の検出を行う(S910)。
【0060】
続いて直線検出部84は、S910で検出したすべての直線からの距離が最小となるような点の位置を最小自乗法などによって算出し、交点として決定する(S911)。
【0061】
次にFOE算出部85が、S911で算出した交点をFOE位置(ifoe,jfoe)として決定する(S912)。
【0062】
次にFOE変換部が、S912で決定したFOE位置から上記数式2、3に基づいてロール角φ、ピッチ角ρを算出する(S913)。
【0063】
以上により、カメラ姿勢取得処理を終了する。
【0064】
以上、実施形態2に説明した通り、S904〜S907の輪郭フィルタリング処理を行うことで画像中心に向かう建物輪郭のみを抽出し、FOE位置を算出するための直線検出をより高精度に行うことが可能となる。これにより、カメラ姿勢推定の精度向上を実現することができる。
【0065】
(実施形態3)
実施形態3では、実施形態1及び実施形態2を組み合わせることで、周囲の建物状況に影響されにくく、さらに建物の垂直な輪郭だけを高精度に抽出することでカメラ姿勢推定の精度を向上させる。
【0066】
図12に実施形態3のカメラ姿勢取得装置の構成図を示す。図12に示すように実施形態3のカメラ姿勢取得装置は、全方位画像をデータとして入力する全方位画像入力部121、全方位画像上に投影された建物の輪郭を抽出する建物輪郭抽出部122、抽出した建物輪郭の輪郭方向を基準にして輪郭のフィルタリングを行う輪郭フィルタ部123、抽出した建物輪郭の中から空間中で垂直な直線を検出する領域を分割する検出領域分割部124、分割した各領域内でフィルタリングを行った建物輪郭に対して直線検出を行う直線検出部125、検出した直線の交点をFOEとして算出するFOE算出部126、算出したFOEの位置をロール角、ピッチ角に変換するFOE変換部127、及び算出したロール角、ピッチ角をカメラ姿勢情報として出力するカメラ姿勢情報出力部128から構成されている。
【0067】
実施形態3の処理フローとしては図3のS302の処理に代替して、図9のS902〜S910の処理を行う。
【0068】
以上、実施形態3では、実施形態2に示した輪郭のフィルタリング処理を行った後に実施形態1に示した領域分割処理を行ってから、直線検出及びFOE位置の決定を行う。
【0069】
ここで図13に実施形態3の処理結果の例を示す。図13に示すように輪郭のフィルタリング処理をあらかじめ行い、その後に領域を分割してそれぞれの領域から直線検出を行う処理が実現できていることがわかる。これにより、検出した直線が一部のエッジが強い部分にのみ集中することがなく、空間中で垂直な建物輪郭のみからFOE位置を求めることが可能となり、全方位画像を撮影した周囲の状況によらず安定かつ高精度にカメラ姿勢推定を行うことが可能となる。
【0070】
なお、カメラ姿勢取得装置は、例えば、コンピュータ装置が有するCPUによって実現され、必要とする建物輪郭抽出、検出領域分割、輪郭フィルタ、直線検出、FOE算出、FOE変換などをアプリケーションプログラムとして搭載することができる。
【0071】
また、コンピュータ装置には上記説明した建物輪郭抽出、検出領域分割、輪郭フィルタ、直線検出、FOE算出、FOE変換など行った処理結果や計算結果等のデータを内部メモリや外部記憶装置等に書き込み・読み出しができるようにしてもよい。
【0072】
また、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のCPU(MPU)が記録媒体に格納されたプログラムコードを読み出し実行することによっても実現できる。その場合、記憶媒体から読み出されたプログラムコード自体が上述した実施形態の機能を実現することになり、そのプログラムコードを、例えば、CD−ROM、DVD−ROM、CD−R、CD−RW、MO、HDD等の記録媒体に記録することができる。
【図面の簡単な説明】
【0073】
【図1】全方位画像の座標系図。
【図2】実施形態1のカメラ姿勢取得装置の構成図。
【図3】実施形態1のカメラ姿勢取得装置の処理フローチャート。
【図4】全方位画像に対する輪郭抽出例を示す図。
【図5】輪郭抽出画像を4領域に画像を分割した場合の例を示す図。
【図6】直線検出の例を示す図。
【図7】FOE位置決定例を示す図。
【図8】実施形態2のカメラ姿勢取得装置の構成図。
【図9】実施形態2のカメラ姿勢取得装置の処理フローチャート。
【図10】全方位画像の座標系における角度νの例を示す図。
【図11】フィルタリング処理を行った輪郭の例を示す図。
【図12】実施形態3のカメラ姿勢取得装置の構成図。
【図13】実施形態3のカメラ姿勢取得装置の処理フローチャート。
【図14】直線が集中してFOEが正しく検出できない例を示す図。
【符号の説明】
【0074】
21…全方位画像入力部
22…建物輪郭抽出部
23…検出領域分割部
24…直線検出部
25…FOE算出部
26…FOE変換部
27…カメラ姿勢出力部
81…全方位画像入力部
82…建物輪郭抽出部
83…輪郭フィルタ部
84…直線検出部
85…FOE算出部
86…FOE変換部
87…カメラ姿勢出力部
101…処理対象画像の輪郭Emの位置と画像中心とを通る直線
102…処理対象の輪郭Emの位置と画像中心とを通る直線の法線
121…全方位画像入力部
122…建物輪郭抽出部
123…輪郭フィルタ部
124…検出領域分割部
125…直線検出部
126…FOE算出部
127…FOE変換部
128…カメラ姿勢出力部
【特許請求の範囲】
【請求項1】
全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置であって、
前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出手段と、
前記物体輪郭抽出後の全方位画像に対して画像中心から任意の角度で領域分割を行う検出領域分割手段と、
前記分割した各領域内の物体輪郭に対して直線検出を行い、当該検出した直線の交点を算出する直線検出手段と、
前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出手段と、を有することを特徴とするカメラ姿勢取得装置。
【請求項2】
全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置であって、
前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出手段と、
前記物体輪郭抽出後の全方位画像に対して、前記物体の輪郭のエッジ角度に基づいてフィルタリングを行う輪郭フィルタ手段と、
前記フィルタリング後の全方位画像に対して直線検出を行い、当該検出した直線の交点を算出する直線検出手段と、
前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出手段と、を有することを特徴とするカメラ姿勢取得装置。
【請求項3】
全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置であって、
前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出手段と、
前記物体輪郭抽出後の全方位画像に対して、前記物体の輪郭のエッジ角度に基づいてフィルタリングを行う輪郭フィルタ手段と、
前記フィルタリング後の全方位画像に対して画像中心から任意の角度で領域分割を行う検出領域分割手段と、
前記分割した各領域内の物体輪郭に対して直線検出を行い、当該検出した直線の交点を算出する直線検出手段と、
前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出手段と、を有することを特徴とするカメラ姿勢取得装置。
【請求項4】
全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置におけるカメラ姿勢取得方法であって、
物体輪郭抽出手段が、前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出ステップと、
検出領域分割手段が、前記物体輪郭抽出後の全方位画像に対して画像中心から任意の角度で領域分割を行う検出領域分割ステップと、
直線検出手段が、前記分割した各領域内の物体輪郭に対して直線検出を行い、当該検出した直線の交点を算出する直線検出ステップと、
カメラ姿勢算出手段が、前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出ステップと、を有することを特徴とするカメラ姿勢取得方法。
【請求項5】
全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置におけるカメラ姿勢取得方法であって、
物体輪郭抽出手段が、前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出ステップと、
輪郭フィルタ手段が、前記物体輪郭抽出後の全方位画像に対して、前記物体の輪郭のエッジ角度に基づいてフィルタリングを行う輪郭フィルタステップと、
直線検出手段が、前記フィルタリング後の全方位画像に対して直線検出を行い、当該検出した直線の交点を算出する直線検出ステップと、
カメラ姿勢算出手段が、前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出ステップと、を有することを特徴とするカメラ姿勢取得方法。
【請求項6】
全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置におけるカメラ姿勢取得方法であって、
物体輪郭抽出手段が、前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出ステップと、
輪郭フィルタ手段が、前記物体輪郭抽出後の全方位画像に対して、前記物体の輪郭のエッジ角度に基づいてフィルタリングを行う輪郭フィルタステップと、
検出領域分割手段が、前記フィルタリング後の全方位画像に対して画像中心から任意の角度で領域分割を行う検出領域分割ステップと、
直線検出手段が、前記分割した各領域内の物体輪郭に対して直線検出を行い、当該検出した直線の交点を算出する直線検出ステップと、
カメラ姿勢算出手段が、前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出ステップと、を有することを特徴とするカメラ姿勢取得方法。
【請求項7】
前記請求項1〜6のいずれか1項に記載の処理を行わせることを特徴とするカメラ姿勢取得プログラム。
【請求項1】
全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置であって、
前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出手段と、
前記物体輪郭抽出後の全方位画像に対して画像中心から任意の角度で領域分割を行う検出領域分割手段と、
前記分割した各領域内の物体輪郭に対して直線検出を行い、当該検出した直線の交点を算出する直線検出手段と、
前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出手段と、を有することを特徴とするカメラ姿勢取得装置。
【請求項2】
全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置であって、
前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出手段と、
前記物体輪郭抽出後の全方位画像に対して、前記物体の輪郭のエッジ角度に基づいてフィルタリングを行う輪郭フィルタ手段と、
前記フィルタリング後の全方位画像に対して直線検出を行い、当該検出した直線の交点を算出する直線検出手段と、
前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出手段と、を有することを特徴とするカメラ姿勢取得装置。
【請求項3】
全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置であって、
前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出手段と、
前記物体輪郭抽出後の全方位画像に対して、前記物体の輪郭のエッジ角度に基づいてフィルタリングを行う輪郭フィルタ手段と、
前記フィルタリング後の全方位画像に対して画像中心から任意の角度で領域分割を行う検出領域分割手段と、
前記分割した各領域内の物体輪郭に対して直線検出を行い、当該検出した直線の交点を算出する直線検出手段と、
前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出手段と、を有することを特徴とするカメラ姿勢取得装置。
【請求項4】
全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置におけるカメラ姿勢取得方法であって、
物体輪郭抽出手段が、前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出ステップと、
検出領域分割手段が、前記物体輪郭抽出後の全方位画像に対して画像中心から任意の角度で領域分割を行う検出領域分割ステップと、
直線検出手段が、前記分割した各領域内の物体輪郭に対して直線検出を行い、当該検出した直線の交点を算出する直線検出ステップと、
カメラ姿勢算出手段が、前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出ステップと、を有することを特徴とするカメラ姿勢取得方法。
【請求項5】
全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置におけるカメラ姿勢取得方法であって、
物体輪郭抽出手段が、前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出ステップと、
輪郭フィルタ手段が、前記物体輪郭抽出後の全方位画像に対して、前記物体の輪郭のエッジ角度に基づいてフィルタリングを行う輪郭フィルタステップと、
直線検出手段が、前記フィルタリング後の全方位画像に対して直線検出を行い、当該検出した直線の交点を算出する直線検出ステップと、
カメラ姿勢算出手段が、前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出ステップと、を有することを特徴とするカメラ姿勢取得方法。
【請求項6】
全方位画像から当該全方位画像撮影時のカメラ姿勢を取得するカメラ姿勢取得装置におけるカメラ姿勢取得方法であって、
物体輪郭抽出手段が、前記全方位画像に投影された物体の輪郭を抽出する物体輪郭抽出ステップと、
輪郭フィルタ手段が、前記物体輪郭抽出後の全方位画像に対して、前記物体の輪郭のエッジ角度に基づいてフィルタリングを行う輪郭フィルタステップと、
検出領域分割手段が、前記フィルタリング後の全方位画像に対して画像中心から任意の角度で領域分割を行う検出領域分割ステップと、
直線検出手段が、前記分割した各領域内の物体輪郭に対して直線検出を行い、当該検出した直線の交点を算出する直線検出ステップと、
カメラ姿勢算出手段が、前記検出した直線の交点と前記画像中心との位置の差からカメラ姿勢を算出するカメラ姿勢算出ステップと、を有することを特徴とするカメラ姿勢取得方法。
【請求項7】
前記請求項1〜6のいずれか1項に記載の処理を行わせることを特徴とするカメラ姿勢取得プログラム。
【図1】
【図2】
【図3】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図4】
【図5】
【図2】
【図3】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図4】
【図5】
【公開番号】特開2006−172245(P2006−172245A)
【公開日】平成18年6月29日(2006.6.29)
【国際特許分類】
【出願番号】特願2004−365386(P2004−365386)
【出願日】平成16年12月17日(2004.12.17)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】
【公開日】平成18年6月29日(2006.6.29)
【国際特許分類】
【出願日】平成16年12月17日(2004.12.17)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】
[ Back to top ]