【文献】
巻渕有哉, 外2名,ホモグラフィ分解を利用した複数マーカからのカメラ位置・姿勢推定,映像情報メディア学会年次大会講演予稿集(2012),日本,一般社団法人映像情報メディア学会,2012年 8月29日,1−2
(58)【調査した分野】(Int.Cl.,DB名)
前記初期姿勢算出部が、前記初期姿勢を平面射影変換の関係として求め、当該関係を大きさ、位置及び向きに対応する相似変換と、歪みに対応するアフィン変換及び射影変換と、に分解することを特徴とする請求項1に記載の画像処理装置。
前記幾何特徴検出部が、前記所定の幾何特徴における平行関係及び/又は直交関係を複数検出した場合、前記平面上における平行関係及び/又は直交関係を形成する線分間の角度の大きさに基づいて当該複数の中から選択を行い、前記初期配置推定部は当該選択された幾何特徴を対象として前記推定を行うことを特徴とする請求項1ないし4のいずれかに記載の画像処理装置。
さらに、前記推定された基準座標系の姿勢及び前記所定の指標における既知の大きさに基づいて、前記撮像画像上における所定箇所の寸法を計測する寸法計測部を備えることを特徴とする請求項1ないし5のいずれかに記載の画像処理装置。
【発明を実施するための形態】
【0016】
図1に、本発明における画像処理装置を用いたARシステムの一実施形態としての構成図を示し、
図1を用いて本発明の概要を説明する。ARシステム1は撮像装置10、情報表示装置11、データベース12及び画像処理装置2を備える。画像処理装置2は指標と複数の幾何特徴の配置情報を用いて基準座標系を推定することで、また当該推定結果に基づいて寸法測定を行うことで、ARシステム1に寄与する。
【0017】
撮像装置10は、カメラ画像を取得する装置であり、市販のWEBカメラのほか、携帯電話端末に搭載されているカメラモジュールを用いてもよい。なお本発明の撮像装置10においては、焦点距離や光軸のずれ、歪みパラメータ等の内部パラメータが事前のキャリブレーションにより既知であるものとする。
【0018】
撮像対象は、一般的なARシステムでは単一の指標であるのに対し、本発明では単一の指標に加えて複数の幾何特徴を含む。このとき、指標及び全ての幾何特徴が必ずしも同一平面上にある必要はない。
図1ではこのような現実世界における撮像対象の例が(1)に示されている。すなわち、指標1及び幾何特徴2が同一平面P1上に存在し、またこれとは別途、別平面P2上に幾何特徴3が存在している。
【0019】
以下、指標及び幾何特徴がP1のような同一平面上にある場合をまず説明した後に、幾何特徴がP2のような別平面上にもある場合を説明する。なお、
図1の(2)及び(3)は後の説明において参照する。
【0020】
なおまた、幾何特徴とは指標に準じた利用ができるものであり、
図1にも模式的に示すように、平面上において2組の平行線及び/又は直交線を検出可能なように構成されたものである。詳しくは後述する。
【0021】
画像処理装置2によれば、指標及び幾何特徴を検出し、
図1の例であれば(2)に示すような指標1の定める平面P1上の基準座標系XYZを、撮像装置10に対する姿勢として推定することができる。さらに当該推定結果に基づいて、画像処理装置2は撮像対象の寸法測定を行うことができる。
【0022】
図2は撮像対象の一例としての直方体を示すものであり、その辺S1〜S9が撮像画像上において見えている様子が示されている。画像処理装置2は指標1が設置された直方体の上面S1-S8-S2-S7における基準座標系を、当該指標1および幾何特徴を検出することによって推定し、また、当該上面S1-S8-S2-S7の各辺や、当該面上のユーザ指定の所定箇所の寸法測定を行うことができる。
【0023】
さらに、後述の指標1と別平面上の幾何特徴を利用する場合においては、直方体の幅、奥行き又は高さに対応する辺S1〜S9や、各面上のユーザ指定の所定箇所の寸法測定を高精度に行うことができる。この際、サイズは指標1についてのみ既知であればよく、直方体については当該立体が直方体であることのみ既知であればよく、未知の各辺のサイズの寸法測定が可能となる。
【0024】
幾何特徴としては、指標1と同一平面上の上面S1-S8-S2-S7が形成する長方形を利用することができる。さらに、後述の指標1と別平面上の幾何特徴も利用する場合においては、対象が直方体であることから導かれる辺S1〜S9の一部又は全部に関する辺同士の直交関係及び/又は平行関係を利用することができる。具体的には図示するように辺S1〜S3、辺S4〜S6及び辺S7〜S9の各組内に属する辺同士が平行であり、当該関係に基づく幾何特徴を利用することができる。
【0025】
情報表示装置11は、テキスト、動画像又はCG(コンピュータ・グラフィック)等を表示するための装置であり、PC(パーソナル・コンピュータ)やテレビのディスプレイ、またはヘッドマウントディスプレイを使用してもよい。また、携帯電話端末のように撮像装置と情報処理装置とが筐体を共有しているものでもよい。また、後述する寸法測定の際に、採寸する線分をユーザがポインティングにより指定できるようにタッチパネルを搭載していることが望ましい。
【0026】
ARシステムでは、撮像装置が取得した動画像にCG等を重畳表示するのが一般的であり、本実施形態においても同様に推定した基準座標系の任意の位置にCG等を表示してもよい。また、寸法測定を行った場合であれば、測定した寸法情報のみ表示してもよい。
【0027】
データベース12は、データを記録する装置であり、ハードディスクやフラッシュメモリ等の不揮発性メモリストレージや、PCの主記憶装置に一般的に使用される揮発性メモリを用いてもよい。本実施形態では少なくとも、撮像装置10の内部パラメータと、指標の形状及び大きさとが記録され画像処理装置2での利用に供されるが、利用環境に応じた必要情報を画像処理装置2にて保持しておいてもよい。
【0028】
データベース12にはさらに、重畳表示するCGのモデルその他の付随情報を記録しておいてもよい。付随情報には本発明の応用的な利用における一例として、寸法を測定した際に付加表示する情報、例えば配送用の段ボール箱等の寸法を測定した場合における寸法毎の配送料金を記録しておいてもよい。
【0029】
図3は、画像処理装置2の機能ブロック図である。画像処理装置2は、撮像画像取得部3、指標検出部4、初期姿勢算出部5、幾何特徴検出部6、初期配置推定部7、基準座標系推定部8及び寸法計測部9を備える。初期姿勢算出部5は、行列算出部51及び行列分解部52を含む。初期配置推定部7は、歪み補正部71、行列構成部72及び推定部73を含む。当該各部の概要は以下の通りである。
【0030】
なお本発明において、当該各部の扱う各対象に対する用語、特に空間上ないし平面上の関係に言及する用語に関して、以下のような区別を設けて用いるものとする。
(1)「姿勢」…平面射影変換の関係として表現される撮像装置(撮像装置座標系)に対
する指標(指標座標系もしくは基準座標系)の位置姿勢、もしくはその逆関係として、指
標に対する撮像装置に位置姿勢を示す用語。3次元空間における位置と姿勢とを決定する6次元ベクトルのパラメータであり、位置と姿勢を指すことから一般に「位置姿勢」と表現されるが、本稿では位置と姿勢をまとめて「姿勢」と表現する。
(2)「位置及び向き」…平面射影変換行列をピクセル座標系の指標に適用することによ
り求まる基準座標系の一平面における指標や幾何特徴の位置及び向きを示す用語。
(3)「配置」…基準座標系の一平面またはピクセル座標系における指標間の位置関係を
示す用語。本稿では、(2)の「位置及び向き」が主に単一のオブジェクト(指標や幾何特徴)について言及する際に用いられるに対し、「配置」は主に複数のオブジェクトについて言及する際に、それらの相対的な位置関係を示すのに用いられる。
【0031】
撮像画像取得部3は、撮像装置10から撮像画像を取得し、指標検出部4及び幾何特徴検出部6へと入力する。指標検出部4は、入力された撮像画像から指標を検出し、初期姿勢算出部5へと入力する。幾何特徴検出部6は、入力された撮像画像から幾何特徴を検出し、初期配置推定部7に入力する。
【0032】
初期姿勢算出部5はまず行列算出部51において、指標検出部4にて検出された指標より、当該指標の撮像装置10に対する初期姿勢を算出する。当該初期姿勢はすなわち当該指標により表される基準座標系の撮像装置10に対する姿勢でもある。当該算出の際、データベース12に記録され又は画像処理装置2にて保持されることで予め既知の、基準座標系における指標の配置としての初期配置と、指標検出部4にて検出された指標の撮像画像上における配置と、の間で平面射影変換を求めることで、初期姿勢を算出する。
【0033】
なお初期姿勢とは、後段の基準座標系推定部8においてより高精度に基準座標系の姿勢を求めるので、その前段におけるいわば中間データとして「初期」姿勢と称するものとする。初期配置は基準座標系における指標及び幾何特徴の配置を表すものであり、指標の初期配置は予め既知である一方で、幾何特徴の初期配置は未知である。前述の初期姿勢をもとに推定されるものであるため、初期配置と呼ぶこととする。
【0034】
初期姿勢算出部5はさらに、行列分解部52において当該初期姿勢の表す平面射影変換を分解して、初期配置推定部7における幾何特徴の初期配置の推定処理のために必要な所定の情報を求め、当該情報を初期配置推定部7へと入力する。
【0035】
初期配置推定部7は、行列分解部52から入力された幾何特徴の初期配置を決定する情報をもとに、幾何特徴検出部6が検出した幾何特徴の基準座標系における初期配置を推定し、基準座標系推定部8へと入力する。なお当該初期配置は、初期姿勢算出部5の初期姿勢に基づく行列分解部52からの情報によって推定されるために、そのように称するものとする。
【0036】
基準座標系推定部8は、入力された幾何特徴の初期配置及び行列算出部51が初期姿勢を算出するのに用いたのと同一の指標の初期配置と、当該幾何特徴及び指標の撮像画像上における配置と、の全体としての対応関係から指標の定める基準座標系の撮像装置10に対する姿勢を推定する。当該推定結果は画像処理装置2の一つの出力となると共に、さらに寸法計測部9へも入力される。
【0037】
寸法計測部9は入力された基準座標系の姿勢及び既知の指標の大きさに基づき、撮像対象の所定箇所の寸法を計測することで当該画像処理装置2のもう一つの出力となす。
【0038】
以下、各部の処理の詳細につき説明する。
【0039】
撮像画像取得部3は、撮像装置10から撮像画像を取得し、指標検出部4及び幾何特徴検出部6に入力する。撮像装置10から撮像画像取得部3が取得する撮像画像の画像サイズは限定しないが、後述する指標及び幾何特徴の検出処理等における座標の丸め誤差の観点から解像度が高い方が望ましく、撮像装置10の撮像画像をそのまま指標検出部4及び幾何特徴検出部6に渡すのが望ましい。リアルタイム処理などで負荷が大きい場合は、所定の解像度に下げてから渡してもよい。
【0040】
指標検出部4は、入力された撮像画像から指標を検出し、初期姿勢算出部5に入力する。指標として利用できるオブジェクトは、大きさと配置が既知である点を少なくとも4つ以上有し(この状態を形状が既知であると表現する)、それぞれに対し撮像画像において対応する点を特定できるものであればよい。ここで、後段の行列算出部51による姿勢算出を可能とするため、4つ以上の点を有する必要がある。また、点ではなく線分の対応が求まるものでもよいし、当該4つ以上の点又は線分と同等に利用できる構成を有し撮像画像において識別可能な任意の指標を利用してよい。
【0041】
図4の(1)はARシステムにおいて一般的な正方指標を示したものであり、内部の模様を認識することで頂点A、頂点B、頂点C、及び頂点Dの各対応点を撮像画像から抽出することができる。指標における点または線分の配置は、指標に任意の位置と向きとに設定した基準座標系により指定することが可能である。本発明ではこのような設定における基準座標系での指標の配置情報を初期配置として予め定めておく。
【0042】
例えば、指標が正方指標である場合は、
図4の(2)に示すように正方指標の重心を基準座標系の原点としてもよい。これにより4頂点の座標が定まり、予め初期配置として既知の基準座標系における頂点の座標とそれに対応する撮像画像中の頂点の座標とを1組として、少なくとも4組以上の頂点座標が初期姿勢算出部5に入力される。
【0043】
指標検出処理を簡略化するために、
図4の(3)に示すように指標に枠領域を設けてもよい。これにより撮像画像に2値化を施すことで指標領域を確実に抽出でき、指標領域の内部を認識することで指標の向きを検知することができる。枠を設けるのが困難である場合は、タッチパネル搭載のディスプレイ等を用いたポインティング等のユーザからの直接指定により指標領域を検出してもよい。以上の指標検出に際する各種処理及び工夫は、次に説明する幾何特徴の検出においても同様に適用可能である。
【0044】
幾何特徴検出部6は、入力された撮像画像から幾何特徴を検出し、初期配置推定部7に入力する。幾何特徴は指標のように予め完全には既知である必要はなく、現実世界に存在する各種の幾何形状より高い自由度のもとで検出が可能である。すなわち、幾何特徴は指標のように配置が既知である点を有する必要がなく、幾何形状に内在する特定の幾何特徴を撮像画像内で特定できるものであればよい。
【0045】
ここで幾何特徴とは具体的には、平行線または直交線を指す。
図5A及び
図5Bは該当の幾何特徴を有する幾何形状の一例を示している。
図5Aに示す幾何形状は、線分AB及び線分DCと、線分AD及び線分BCとがそれぞれ平行であるという拘束条件しか有しておらず、辺の長さに関する拘束条件は有していない。同様に、
図5Bに示す直角三角形は、線分CA及び線分CBが直角であるという拘束条件しか有していない。
【0046】
つまり、
図3に示す指標の例では頂点A、頂点B、頂点C及び頂点Dの基準座標系における座標が既知であり、その4点から構成される正方形の基準座標系における位置及び向きが既知であったのに対し、
図5A及び
図5Bに示す幾何形状に関しては、基準座標系における位置及び向きが未知となっている。
【0047】
幾何特徴検出部6はこのような平行関係及び/又は直交関係としての幾何特徴を撮像画像より抽出する。この際、指標検出部4と同様に撮像画像からエッジ検出によって線分(指標を構成する線分は除く)を検出し、そのうちの所定の線分に対して平行関係及び/又は直交関係を特定するようにすればよい。この際、線分の近傍の既知の色特徴によって平行関係及び/又は直交関係が自動判定可能となるようにしてもよい。
【0048】
例えば白地の壁に任意サイズの赤色の長方形の看板等が設置されており、当該長方形における平行及び直角を幾何特徴として利用するように予め決めている場合は、エッジ検出及びエッジ周辺の色特徴の確認によって当該長方形の境界を自動検出し、当該境界上の各辺より平行関係及び/又は直交関係を求めるようにしてよい。
【0049】
あるいは検出線分をユーザに目視確認させるようにして、その中からユーザ自身によって平行関係及び/又は直交関係を表しているのはいずれの線分であるか決定し、当該決定の情報を前述のポインティング操作等を介して幾何特徴検出部6で受け付けるようにしてもよい。例えば
図2のような場合であれば検出した線分S1〜S9の中からユーザが決定するようにしてよい。
【0050】
なお、線分を用いて説明したが、指標検出部4と同じく点検出により線分の両端に対応する点を対象として、又は線分及び点の両方を対象として、又は同等な平行関係及び/又は直交関係を特定可能な任意のものを対象として、幾何特徴検出部6は同様な処理が可能である。
【0051】
初期姿勢算出部5ではまず行列算出部51が撮像画像上において検出された指標から基準座標系の初期姿勢を平面射影変換行列として求める。その後に行列分解部52が、後述の行列構成部72において各幾何特徴の初期姿勢を決定する際に利用する情報を抽出し、当該情報を行列構成部72へ入力する。
【0052】
当該利用する情報とは具体的には、指標の初期姿勢に対応する平面射影変換行列を相似変換行列とアフィン変換行列と射影変換行列との積に分解することにより得られる相似変換行列、又は相似変換行列及びアフィン変換行列である。前者(相似変換行列)が後述の第1実施形態に、後者(相似変換行列及びアフィン変換行列)が第2実施形態に対応する。
【0053】
行列算出部51における指標の初期姿勢は、同一平面上の少なくとも4組の点の対応または線分の対応から平面射影変換行列を求める計算により算出される。当該計算はCGを重畳表示するARシステムにおいては一般的であるため、詳細は割愛する。以下、当該平面射影変換行列は
図6に概念的に示すように基準座標系から撮像画像への写像として求めたものとして述べるが、いずれを順写像・逆写像と呼ぶかは定義の問題に過ぎないので、この逆写像として求めてもよい。
【0054】
図6では、指標の例として
図4に示したような正方指標が当該行列の定義に従い、平面射影変換行列Hにより基準座標系から撮像画像系へと変換され、その逆行列H
−1により再び基準座標系へと変換されている。すなわち、基準座標系における点を(X
m,Y
m)、撮像画像系におけるその対応点を(u,v)、sをスケール係数とすると、行列算出部51の求める平面射影変換行列Hは3×3行列であり、
【0057】
行列分解部52の処理において前提となる数学的関係につき説明する。非特許文献1によれば、任意の平面射影変換行列H
anyは、大きさ、位置及び向きの変換に対応する相似変換行列H
S、アフィン歪みの変換に対応するアフィン変換行列H
A及び射影歪みの変換に対応する射影変換行列H
Pをそれぞれ、
【0061】
の(式2)〜(式4)のように表したとき、(式3)中のKに関してdet(K)=1という制約の下で
H
any = H
S H
A H
P …(式5)
という形式に一意に分解できる。行列分解部52は(式6)に示すように行列算出部51が算出した行列Hの逆行列H
−1につき上記分解を実行し、後述の第1実施形態では相似変換行列H
Sを、第2実施形態では相似変換行列H
S及びアフィン変換行列H
Aを、行列構成部72へと入力する。なお、逆行列H
−1を対象として分解を実行するのは、後述する行列構成部72での処理に合うようにするためである。
H
−1= H
S H
A H
P …(式6)
【0062】
[非特許文献1] R. Hartley and A. Zisserman: "Multiple view geometry in computer vision, second edition," Cambridge University Press, 2003.
【0063】
初期配置推定部7は、行列分解部52より入力された幾何特徴の初期姿勢を決定するための情報をもとに基準座標系における幾何特徴の初期配置を推定する。具体的には、まず歪み補正部71において、第2実施形態の場合であれば幾何特徴をもとに撮像画像から射影歪みを取り除く射影変換行列を計算し、第1実施形態の場合であれば当該射影変換行列に加えてさらに、当該射影歪みが除去された撮像画像からさらにアフィン歪みを取り除くアフィン変換行列を計算する。
【0064】
行列構成部72は歪み補正部71が当該計算した変換行列と行列分解部52から入力された行列との積として平面射影変換行列を構成する。さらに、当該構成された平面射影変換行列を用いて推定部73が幾何特徴の初期配置を推定し、基準座標系推定部8へと入力する。
【0065】
以下、歪み補正部71における幾何特徴から該当の変換行列を計算する手順について述べた後、行列構成部72及び推定部73における平面射影変換行列を構成して幾何特徴の初期姿勢を推定する手順について述べる。
【0066】
非特許文献1によれば、基準座標系の同一平面における方向が異なる2組の平行線から無限遠直線を特定でき、射影的な歪みに対応するH
Pを求めることができる。本発明では当該H
Pを幾何特徴における歪み除去に利用する。
【0067】
すなわち、撮像画像における無限遠直線の同次座標表現をl = (l
1, l
2, l
3)としたとき、以下の(式7)により定義されるH
1は、(式5)又は(式6)中のH
Pに相当する。
【0069】
当該H
P=H
1より、撮像画像の点をxとすると、
x' = H
P x …(式8)
により撮影画像から射影歪みを除去することが可能であるので、本発明ではこの関係を幾何特徴に対して適用する。
【0070】
例えば、
図7に示すような撮像画像上において歪んで見えている四角形abcdが基準座標系においては平行四辺形を成す場合、つまり基準座標系において平行線を構成する線分の組が線分ab及び線分dcと、線分ad及び線分bcとで定義される場合、点a、点b、点c及び点dを同次座標として、
l = ((a×b) ×(d×c))×((a×d) ×(b×c)) …(式9)
と表現することができ(×は外積)、上述の構成により(式7)のH
P=H
1を計算することが可能であるので、平行関係を本来有している幾何特徴の歪みを除去して、平行関係を有する状態まで戻すことができる。なお、無限遠直線lは
図7に示すように、直線ad及びbcの交点eと、直線ab及びcdの交点fとを通る直線として構成される。
【0071】
また、同様に非特許文献1によれば、基準座標系の同一平面における2組の直交線から、上記H
Pにより射影歪みが除去された撮像画像からさらにアフィン歪みを取り除くH
Aを求めることができる。本発明ではこの関係も幾何特徴に対して適用することができる。
【0072】
すなわち、基準座標系において垂直に交わる線分の組みが線分lと線分m、線分jとkとで定義され、それぞれ射影歪みが除去された撮像画像において同次座標表現されているものとする。このとき、
【0073】
【数6】
と定義されるH
2のKに関して、
【0074】
【数7】
かつs
12 = s
21のもと、s=(s
11, s
12, s
22)
Tとすると、
【0076】
という関係式(式12)が構築できる。上式において直交線同士が平行、つまり線分lと線分jが平行でなければベクトルsが求まり、当該ベクトルsの要素を用いて(式11)で定まる行列Sを分解することでKを求め、(式12)よりH
2を求めることが可能である。ここで、当該H
2の逆行列H
2−1は(式5)又は(式6)中のH
Aに該当し、(式8)によって射影歪みが除去された撮像画像の点をx'とすると、
x'' = H
A x'…(式13)
により射影歪みが除去された撮像画像からさらにアフィン歪みが除去される。
【0077】
例えば、
図7で説明した歪み除去処理の後の状態として、
図8に示すような四角形(平行四辺形)abcdが基準座標系においては正方形を成す場合、つまり基準座標系において直交線を構成する線分の組が線分ab及び線分adと、線分ac及び線分bdとで定義される場合、点a、点b、点c及び点dを同次座標表現として、
l = a×b …(式14)
m =a×d …(式15)
j = a×c …(式16)
k = b×d …(式17)
と表現することができ、この4本の線分から上述の(式11)等によってKを計算でき、従ってさらに(式10)よりH
2=H
Aを計算することが可能である。
【0078】
以上の歪み補正部71の処理詳細より明らかなように、少なくとも2組の平行線及び少なくとも2組の直交線が同一平面上に存在するように幾何特徴が構成されている場合(第1実施形態とする)は射影変換行列及びアフィン変換行列を求めることができる。また、少なくとも2組の平行線のみ同一平面上に存在するように幾何特徴が構成されている場合(第2実施形態とする)は射影変換行列を求めることができる。
【0079】
なお、幾何特徴の例として例えば長方形は、2組の平行線を有する平行四辺形の特別な場合であるので、第2実施形態を適用することができる。しかし、長方形の4頂点のうち1点を選んで、当該点で交差する1組の直交線の存在を特定すると、既に特定された2組の平行線の条件から残りの3頂点で交差する直交線が自動的に定まってしまう。従って、長方形は2組の平行線及び1組の直交線を有する幾何特徴となるので、第1実施形態を適用することはできない。
【0080】
これに対して長方形をさらに限定して正方形となすと、2組の平行線を特定したうえでさらに、4頂点のうち1点で交差する1組の直交線と、対角線がなす1組の直交線と、を定めることができる。従って、正方形には第1実施形態を適用することができる。
【0081】
図9は以上の歪み補正部71による変換の関係を、次に述べる行列構成部72及び推定部73による処理の関係をも含めてまとめ、概念的に示すものである。
【0082】
すなわち、典型例としては正方形のように、幾何特徴がそれぞれ2組の平行関係及び直交関係を有する場合、(1)に示すように撮像画像上で歪んでいても、(式7)〜(式9)で説明したようにその射影歪みの要素H
Pを求めて(4)に示すように当該歪みを除去し、(2)に示すような平行四辺形の状態となすことができる。さらに、(式10)〜(式17)で説明したようにそのアフィン歪みの要素H
Aを求めて(5)に示すように当該歪みを除去し、(3)に示すような正方形の状態となすことができる。
【0083】
なお、(3)においてはさらに行列構成部72及び推定部73によって当該歪み除去された幾何特徴を指標の基準座標系に配置した状態となす。すなわち、(5)において括弧内にHsを付記しているように、行列構成部72がさらに(式5)又は(式6)中の相似変換行列H
sに該当するものを行列分解部52より受け取って行列Hを構成することで、推定部73によって幾何特徴を基準座標系における初期配置が(3)のように得られるようになる。当該行列Hにより、幾何特徴を基準座標系と撮像画像系との間で(7)及び(6)に示すように相互変換できるようになる。
【0084】
なおまた、
図9では幾何特徴が平行関係及び直交関係の両者を有する第1実施形態の場合を示しているが、第2実施形態における平行関係のみの場合であってもアフィン歪み除去の(5)の部分を省略することで、同様に相互変換できるようになる。
【0085】
続いて、幾何特徴を拘束条件とした平面射影変換行列(以下説明するH'
−1 )を行列構成部72が構成し、推定部73が幾何特徴の基準座標系における初期配置を推定する手順について説明する。
【0086】
第1実施形態によって幾何特徴から射影変換行列H'
P及びアフィン変換行列H'
Aが得られた場合、行列分解部52より指標から求めた平面射影変換行列Hの逆行列H
−1を分解した相似変換行列H
Sが行列構成部72に入力される。指標の平面射影変換行列の逆行列H
−1が、
H
−1 = H
S H
A H
P …(式18)
のように分解されたとすると、行列構成部72は幾何特徴に対する新しい平面射影幾何行列H'の逆行列H'
−1 を、
H'
−1 = H
S H'
A H'
P …(式19)
のように求めることができる。
【0087】
そして推定部73は、H'
AとH'
Pを求めるのに利用した撮像画像内の全ての点をH'
−1により基準座標系の点に変換することにより、幾何特徴の初期配置を求める。なお、H'
AとH'
Pを求めるのに利用した点とは、これらを求めるのに利用した線分の始点及び終点でもよいし、線分上の任意の2点でもよい。線分の状態で変換してもよい。
【0088】
同様に、第2実施形態によって幾何特徴から射影変換行列H'
Pのみが得られた場合、行列分解部52より指標から求めた平面射影変換行列Hの逆行列を分解した相似変換行列H
S及びアフィン変換行列H
Aが行列構成部72に入力される。このとき、幾何特徴に対する新しい平面射影幾何行列H'の逆行列H'
−1は、
H'
−1 = H
S H
A H'
P …(式20)
のように求めることができ、第1実施形態で上記説明したのと同様に撮像画像内の幾何特徴の基準座標系における初期配置を計算することができる。以上の処理により、各幾何特徴の初期位置姿勢が計算される。
【0089】
基準座標系推定部8は、基準座標系にて予め与えられた指標の初期配置と、基準座標系にて求められた幾何特徴の初期配置を用いて、基準座標系の撮像装置10に対する姿勢を推定する。この推定計算自体については、行列算出部51と同等の処理となる。つまり、基準座標系推定部8では指標及び幾何特徴の初期配置が既知となっているため、指標及び幾何特徴の初期配置を拘束条件として、撮像画像上にて対応する指標及び幾何特徴の各点又は各線分との全体としての対応から撮像装置10の基準座標系における姿勢、つまり基準座標系の撮像装置10に対する姿勢を推定する。
【0090】
このとき、点又は線分の対応をもとに求めた平面射影変換行列から得られる撮像装置の位置姿勢パラメータから初期値を算出し、反復手法を用いて再投影誤差関数を最小化するように位置姿勢パラメータを最適化してもよい。
【0091】
寸法計測部9では推定した基準座標系を用いて立体形状物等の寸法を測定することができる。この際、採寸する箇所と平面を特定する情報が必要になるが、こちらもポインティング等のユーザ指示を用いることが可能である。採寸箇所を基準座標系にて表現してそのサイズ(座標系上の値としての長さで与えられる)を求め、当該サイズの基準座標系における指標のサイズに対する比率を求め、当該比率に指標の現実の寸法を乗ずることによって採寸箇所の現実の寸法が測定される。なお、採寸箇所が指標及び幾何特徴の設置された平面と異なる場合は後述する。
【0092】
図10A〜
図10Eは幾何特徴の意義を説明するための一連の図である。
図10Aに示すように、指標(指標1とする)を用いる場合、(1)に示す撮像画像系と(2)に示す指標1の定める基準座標系との間で撮像装置10の姿勢に対応する平面射影変換行列H
1を(3)に示すように求めることができる。本発明では行列算出部51がこれを担う。
【0093】
なお、ここでは行列H
1等を
図6の定義形式の逆形式で用いている。またH
1やH
2は、行列構成部72での途中処理を表す(式7)や(式10)のそれとは異なり、ここでは指標1や幾何特徴2につき推定部73により最終的に求められた平面射影変換行列を表している。
【0094】
一方、同一平面上にある幾何特徴2に(4)に示すように当該平面射影変換行列H
1を適用すると、行列H
1の算出に至るまでの誤差によりその形状が歪むため、(2)に示すように基準座標系における正しい配置が求まらない。本発明では幾何特徴2の正しい配置に準じた近似の配置を与えるものとして、初期配置を求める。
【0095】
図10Bの(4)及び(5)に示すように、仮に幾何特徴2が指標1と同様に本来の形状が既知なものであるとすれば、指標1と同様に平面射影変換行列H
2が求まるが、この場合、指標と同様に形状情報が必要となり、高精度な姿勢推定のためには指標1との配置関係も必要となり、且つ実際に正確に配置関係を満たすように配置しても誤差を避けられない点でデメリットが生ずる。
【0096】
なお、特許文献1について説明したように、一般に拘束条件が多い程基準座標系の高精度な推定が可能となる。従来までは対象物の形状を一意に決定する完全な拘束条件(直方体であれば全ての頂点の座標が既知)しか利用することが出来ず、例え対象物が部分的に平行線や直交線を有するという情報を持っていたとしてもそれを有効に活用する術は存在していなかった。本発明では拘束条件を緩和した対象物に対し限られた拘束条件を最大限活用することで、単一の指標を利用した場合と比較して高精度な姿勢推定を目指す。
【0097】
そこで、
図10Cの(4)及び(5)に示すように、幾何特徴が前述の第2実施形態に係る平行四辺形(又はそれと同等に利用できるもの)であったとして、本発明では平行四辺形に戻す射影変換行列H
2Pを求めることができるが、その姿勢が不明であるため、これだけでは基準座標系での配置がわからない。
【0098】
このため本発明では、初期配置推定部7の一連の処理によって、
図10Dの(3)及び(4)に示すように、行列H
2Pによって平行四辺形に戻しつつ、且つ基準座標系に幾何特徴2を配置できるような行列H
2'を求めて、配置する。本発明では特に、指標1に対する幾何特徴2の配置は全く任意である点及び幾何特徴2の取りうる形態の自由度の高さに注目すべきである。
【0099】
そして当該共通の基準座標系に配置された指標1と幾何特徴2との初期配置によって
図10Eの(3)に示すように平面射影変換行列を求めることで、基準座標系の姿勢推定が指標1のみを用いる場合よりも高精度に行うことが可能となる。ここで、(4)に示すように指標1は行列H
1で、幾何特徴2は行列H
2'により基準座標系での配置が定まる。なおまた、幾何特徴2が第1実施形態に係る場合でも同様である。
【0101】
一点目の補足として、平行や直角を成す線分は基準座標系の同一平面における複数の幾何形状に内在するものを利用してもよい。つまり、幾何形状Aから線分1を検出し、かつ幾何形状Bから線分2を検出したとき、線分1と線分2とが基準座標系の同一平面において平行を成すことが既知であれば、線分1と線分2とをこの平面上の1組の平行線とカウントしてもよい。
【0102】
例えば、
図11に示すように正方形と直角三角形の2つの幾何形状が基準座標系の同一平面上に存在している場合、この平面には平行を構成する線分AB、DC及びGF、同様に平行を構成する線分AD、BC及びEGと、直角を構成する線分DA、DCと、同様に直角を構成する線分AC及びBDと、同様に直角を構成するGE及びGFと、が存在している。このとき、2組の平行線の選び方は、
【0103】
[1]平行線(AB、DC)及び平行線(AD, BC)と、[2]平行線(AB、DC)及び平行線(AD, EG)と、[3]平行線(AB、DC)及び平行線(BC, EG)と、
[4]平行線(AB、GF)及び平行線(AD, BC)と、[5]平行線(AB、GF)及び平行線(AD, EG)と、[6]平行線(AB、GF)及び平行線(BC, EG)と、
[7]平行線(DC、GF)及び平行線(AD, BC)と、[8]平行線(DC、GF)及び平行線(AD, EG)と、[9]平行線(DC、GF)及び平行線(BC, EG)と、
【0104】
の[1]〜[9]に挙げる9通りが考えられる。同様に2組の直交線の選び方は、直交線(DA、DC)及び(AC、BD)と、直交線(GE、GF)及び(AC、BD)と、の2通りが考えられる。
【0105】
なお、直交線(DA、DC)と直交線(GE、GF)はお互いに平行の関係にあるため、組み合わせることができない点に注意されたい。また、例えば線分DCと線分GFが一直線上にあるとき、これらは同一の線分として扱われるため、平行線の組み合わせの数が9通りから3通りに減少することにも注意されたい。
【0106】
この例の場合、行列構成部72では9つのH'
Pが求まり、各H'
Pを用いて射影歪みを除去した後に2つのH'
Aを用いてアフィン歪みを除去することができるため、H'
PとH'
Aとの組み合わせは18通り存在し、この18通りのH'
P及びH'
Aを用いて幾何特徴の初期配置をそれぞれ推定する。
【0107】
例えば、平行線(AB、DC)及び(AD, BC)からH'
Pを、直交線(DA、DC)及び(AC、BD)からH'
Aを計算した場合は、H'
P及びH'
Aを用いて構成したH'を用いて点A、点B、点C及び点Dの初期配置が推定できる。
【0108】
なお、幾何特徴の初期配置の推定計算は、上記例であれば18通り全てについて行なってもよい。全て又は以下説明する取捨選択によって複数の初期配置の推定計算を行った場合は、最終的に基準座標系推定部8において姿勢推定する際の平面射影変換行列の算出誤差が最小となる場合を選択するようにしてもよいし、前述のようにユーザからのポインティング等による指示を受け付けて1つを選択してもよい。
【0109】
当該推定計算の際にはまた、予め幾何特徴検出部6において一定の基準に従ってH'
PとH'
Aを取捨選択してから、初期配置推定部7にて推定計算を行うようにしてもよい。一定の基準としては、例えばH
Aに関して言えば、H
Aの信頼度を測る尺度の一種としてH
Aの計算に用いた直交線同士の角度を採用して、当該角度が最も大きい又は大きい側の所定数を選択するようにしてもよい。
【0110】
H
Pに関しても同様に、計算時の四角形における平行線同士の角度の最も大きいもの又は大きい側の所定数を選択するようにしてもよい。
【0111】
なお、「直交線同士の角度」及び「平行線同士の角度」は、2組の直交線又は平行線を(線A1, 線A2)及び(線B1, 線B2)と表現する(すなわち「A1⊥A2, B1⊥B2」又は「A1‖A2, B1‖B2」)と、(1)A1とB1のなす角、(2)A1とB2のなす角、(3)A2とB1のなす角、(4)A2とB2のなす角、とからなる(1)〜(4)の角(0°以上90°以下の範囲で値を取るものとする)のうちの最小値として求めることができる。
【0112】
二点目の補足として、初期配置推定部7では指標と同一平面上に存在しない幾何特徴の初期配置を求め、基準座標系推定部8における基準座標系推定の際に追加で利用するようにすることもできる。当該初期配置はすなわち、指標の基準座標系(XYZ座標のXY平面座標)において記述され且つ指標の平面(Z=0の平面)上にない、Z軸を加えた立体方向側へ拡張された配置となる。
【0113】
図1の(2)及び(3)を用いてその詳細を述べる。
図1では(2)の基準座標系XYZにおいて指標1と同一平面P1上に2組の平行線と2組の直交線とが幾何特徴2として存在しており、幾何特徴2の初期配置はこれまでの説明通りに求めることができる。ここで、注目すべきは、(3)に示すY'Z'平面上の幾何特徴3の初期配置も求めることが可能である点である。
【0114】
Y'Z'平面上の幾何特徴3の初期配置を求めるためには、Y'Z'平面P2上の指標における平面射影変換行列が必要であるが、指標1はY'Z'平面P2とは別のXY平面P1上に存在している。そこで、XY平面P1上の指標1をもとに求めた平面射影変換行列をY'Z'平面上のものに変換することを考える。これはXYZ座標軸とX'Y'Z'座標軸の相対関係をもとに平面射影変換行列に座標軸の回転と平行移動とを適用することで実現できる。平面射影変換行列に座標軸の回転と平行移動とを適用する計算に関しては、特許文献2に詳細が開示されている。
【0115】
つまり、指標1と同一平面上に存在しない幾何特徴3の初期配置を求めるためには、幾何特徴3の存在する平面を特定できる情報さえ持っていればよい。例えば、XYZ座標軸とX'Y'Z'座標軸の相対関係が当該特定する情報に相当し、指標1の基準座標系XYZを定める際に、当該基準座標系XYZにおいてX'Y'Z'座標軸を特定する情報も追加して予め画像処理装置2で保持しておけばよい。
【0116】
図2の直方体の例であれば、指標1の基準座標系において当該指標1の配置された上面S1-S8-S2-S7の長方形の情報を予め有しておけば、直方体であることから直交関係をなすその他の面の上面に対する位置関係が既知となり、その他の面上における幾何特徴の初期配置を求め、基準座標系の姿勢推定計算に加えることができる。当該情報によって全く同様に、その他の面上を対象としての寸法計測部9による寸法測定も可能となる。
【0117】
当該別の面上の幾何特徴の利用により、例えば
図12のような円柱上の幾何特徴4や
図13のような底面と側面との角度が既知の2つの円錐上の幾何特徴5も利用することが可能である。
図12の円柱であれば、円柱の高さ方向の線分(P41, P43)及び(P42, P44)を検出して、長方形P41-P42-P43-P44を幾何特徴として使うことができる。
図13の2つの円錐であれば、稜線に対応する線分(P51, P53)及び(P52, P54)を検出して、同様に長方形P51-P52-P53-P54を幾何特徴として使うことができる。なおここで、長方形P41-P42-P43-P44及び長方形P51-P52-P53-P54はそれぞれ円柱及び円錐の存在によって円柱の内部及び円錐の側面上に概念上構成される平面上の図形であり、壁などの実体を有する必要はない。
【0118】
なお、
図1の例であれば平面P1及びP2の特定処理も幾何特徴の検出の際に、幾何特徴へのユーザからのポインティング指示を利用して、幾何特徴がいずれの平面に属するかの情報をユーザから得るようにしてもよい。また自動検出手法として、当該目的としている平面以外の箇所に検出されることがないような特定の幾何特徴を色特徴等の区別によって予め用意してデータベース12又は画像処理装置2でその情報を保持しておいてもよいし、さらに当該指標のうち平面P1に利用するものと、平面P2に利用するものとを予め区別しておいてもよい。
【0119】
また同様に自動検出手法として、平面P1及び平面P2自体のテクスチャ情報等を保持しておき、指標検出部4は前処理として撮像画像において平面P1及びP2を領域として検出してから、当該領域内で指標を検出するようにしてもよい。当該平面領域の指定情報をユーザに入力させるようにしてもよい。あるいは撮像画像自体をあらかじめ平面P1のみ、又は平面P1及び平面P2のみ、が写った状態で用意するようにしてもよい。
【0120】
三点目の補足として、指標を複数用いる実施形態を説明する。
図14は、当該実施形態における画像処理装置2の機能ブロック図である。画像処理装置2は、
図3の構成にさらに他指標初期配置推定部15を追加で備えた構成となる。他指標初期配置推定部15以外の
図3と共通の各機能部の処理自体については、指標が1つであった実施形態(「単一指標の実施形態」と称する)の場合と同様であるが、以下説明するように、処理対象となる指標が複数存在することから、指標を区別したうえで各処理が行われる。
【0121】
当該実施形態では、指標検出部4が撮像画像より複数の指標を検出して初期姿勢算出部5に渡す。そして、当該複数の指標のうち一つを基準指標とし、基準指標以外の指標(「他指標」と称する)の各々につき、他指標初期配置推定部15が基準指標の定める基準座標系における初期配置を求める。このため、行列算出部51及び行列分解部52では、基準指標及び他指標の各々からなる複数の指標の各々を対象として、単一指標の実施形態と同様の処理を行う。
【0122】
複数の指標の各々については、
図4で説明したのと同様であり、予め既知であって、既知の基準座標系においてその配置が与えられている。なお、複数の指標の中には同一種類のものが含まれていてもよい。当該別実施形態における複数の指標は同一平面上に配置されており、各々が既知であるが、当該同一平面上において互いの配置関係が任意であり、当該互いの配置関係に関する拘束を有しない。
【0123】
このような複数の指標の具体例として例えば、同一平面として机の面を想定し、カードに印刷した各々が既知のマーカを自由に当該机の面上に配置したもの(ただし、互いに重なることはないものとする)を挙げることができる。
【0124】
なお、基準指標と他指標とからなる複数の指標を用いての基準座標系の推定については、本発明者らによる以下の特許文献3に示されている。当該実施形態における初期姿勢算出部5及び他指標初期配置推定部15の処理は、当該特許文献3に示されている処理と同様である。
[特許文献3]特願2012-174321号(「画像処理装置及び方法」)
【0125】
なおまた、複数の指標のうちのいずれを基準指標となすかについては、指標検出部4で検出されたもののうち乱数などを用いて任意の1つとしてもよいし、当該検出されたものの中からユーザのポインティング指示を受けて決定してもよいし、特定種類の指標を用いるようにしてもよいし、撮像画像中において面積(指標が占めている領域)が最大のものとしてもよいし、その他の所定基準で決定してもよい。
【0126】
また、初期配置推定部7は、行列分解部52における基準指標の初期姿勢に対応する平面射影変換の分解結果を用いて、単一指標の実施形態におけるのと同様の処理を行う。基準座標系推定部8は、基準座標系における基準指標及び他指標並びに幾何特徴の初期配置と、撮像画像上における基準指標及び他指標並びに幾何特徴の配置と、の全体としての対応関係から、基準指標の定める基準座標系の撮像装置10に対する姿勢を推定する。
【0127】
ここで、単一指標の実施形態の場合と異なり、利用する対応関係に他指標によるものが加わるが、当該対応関係からの姿勢推定の計算自体は、単一指標の実施形態の場合と同様である。当該別実施形態においては、他指標をさらに追加で用いることによって、単一指標の実施形態における幾何特徴の利用による効果と同様に、さらなる姿勢推定精度の向上の効果が得られる。
【0128】
なお、当該実施形態における処理対象データの流れの、単一指標の実施形態との差異点・共通点は次の通りである。すなわち、
図14に示す線L1は単一指標の実施形態を基準指標を対象として実施したものに相当する。また、線L2、L3及びL4が当該実施形態において他指標を対象として新たに発生するデータの流れに相当する。その他の流れについては単一指標の実施形態と共通である。
【0129】
他指標初期配置推定部15における処理は、初期配置推定部7が幾何特徴の初期配置を基準指標の定める基準座標系において求める処理を、幾何特徴ではなく他指標を対象として実施することに相当する。当該処理により、他指標の初期配置が基準指標の定める基準座標系において求められる。当該処理の詳細は次の通りである。
【0130】
前提となる処理として、初期姿勢算出部5において、複数の指標の各々につき、初期姿勢を表す平面射影変換行列と、その分解結果が得られる。従って、(式6)の形式に倣って、基準指標に対して以下の(式21)が、他指標(各々を区別するためのインデクスiを用いて他指標iとする)に対して以下の(式22)が得られる。
H
−1[基準指標]= H
S[基準指標] H
A[基準指標] H
P[基準指標] …(式21)
H
−1[他指標i]= H
S[他指標i] H
A[他指標i] H
P[他指標i] …(式22)
【0131】
他指標初期配置推定部15は、上記(式21)及び(式22)として初期姿勢算出部5より与えられた各指標における分解結果を用いて、基準指標の定める基準座標系における各他指標iの初期配置を求めるための行列H'
[他指標i]を以下(式23)のように求める。
H'
[他指標i]= H
S[基準指標/他指標iのスケール] H
A[他指標i] H
P[他指標i] …(式23)
ここで、(式23)において、 H
S[基準指標/他指標iのスケール] は、(式21)のH
S[基準指標]を(式2)のように表現した際のスケールs=s
[基準指標]を、(式22)のH
S[他指標i] を同じく(式2)のように表現した際のスケールs=s
[他指標i]にて置き換えたものである。
【0132】
従って、基準指標の基準座標系において他指標iの初期配置を求めるために用いる(式23)は、基準指標につき算出された初期姿勢のうち位置及び向きの要素(H
S[基準指標] においてスケールsを考慮しないものに相当)と、他指標iにつき算出された初期姿勢のうち大きさの要素(前記考慮しないスケールsをH
S[他指標i]のスケールsに置き換えることに相当)及び歪みの要素(アフィン歪み及び射影歪みを表すH
A[他指標i] H
P[他指標i]に相当)と、の合成である。
【0133】
他指標初期配置推定部15は最終的に、撮像画像上における他指標iの点xに対して、基準指標の定める基準座標系における当該他指標iの点x'(すなわち初期配置)を、上記(式23)を変換係数として用いて、以下(式24)より算出し、当該初期配置x'を基準座標系推定部8へと渡す。
x' = H'
[他指標i] x …(式24)
【0134】
図15は当該別実施形態の意義を説明するための図であり、描かれている指標1及び幾何特徴2並びに(1)〜(4)は
図10Aの例と同様である。ここではさらに、指標2が追加されている。指標1を基準指標とし、指標2を他指標とし、共に正方指標であるものとする。当該例においては他指標は指標2の1つのみであるが、複数存在していてもよく、また、正方指標でなくてもよい。
【0135】
図15にて、(3)に示すように、基準指標である指標1について、(1)の撮像画像系における配置と(2)の当該指標1による基準座標系での既知の初期配置とを対応づけ、初期姿勢を与える行列H
1が求まる。当該行列H
1で(4)に示すように幾何特徴2を(2)の基準座標系に変換しても、必ずしも本来の形状に戻らないのと同様に、当該行列H
1で(5)に示すように他指標である指標2を(2)の基準座標系に変換しても、必ずしも本来の正方形に戻らない。これは、(1)の同一平面XY上に存在する指標1と指標2の相互配置関係が未知であり、当該行列H
1が指標1のみから求められていることに起因する。
【0136】
ここで、上記(式24)の適用により、(6)に示すように、指標1の基準座標系において、指標2を本来の正方形に戻すことができる。ここでは、幾何特徴の場合と概ね同様に、(式24)の H
A[他指標i] H
P[他指標i]が(2)で正方形に戻らなかった歪みを補正して正方形に戻すように作用し、 H
S[基準指標/他指標iのスケール]が指標1の基準座標系への変換として作用している。従って、当該正方形としての指標2の配置を、指標1と指標2との相互配置関係が既知であった場合に利用できる初期配置に準じた指標2の初期配置として利用できるようになる。
【0137】
こうして、最終的に基準座標系推定部8において、(6)に示すように基準座標系における、(単一指標として基準指標である指標1を採用することで)単一指標の実施形態と同様にして求めた幾何特徴2の初期配置と、(式24)で求めた指標2の初期配置と、予め既知の指標1の初期配置と、の全体と、(1)に示すこれらの撮像画像系における配置と、の対応関係として(7)に示す行列Hを求め、指標1の基準座標系の姿勢推定の結果となす。当該行列Hとしての推定結果は、基準指標である指標1のみから推定した行列H
1よりも幾何特徴2及び他指標である指標2の追加利用によって、精度が高められている。