(57)【要約】【課題】構造物に形成された穴の位置の評価精度を向上すること。【解決手段】情報処理装置１０は、構造物を含む撮影画像に構造物に形成された穴が含まれることを検出すると、穴の輪郭の撮影画像上での形状を特定する。情報処理装置１０は、構造物の３Ｄ設計データに応じた３Ｄモデルの撮影画像への投影像が撮影画像に含まれる構造物に対応するように、３Ｄモデルを撮影画像へ投影した場合に、投影像が形状に対応する３Ｄモデルの部位を特定する。情報処理装置１０は、特定した部位と、穴の３Ｄ設計データに対応する３Ｄモデルの部位との比較結果に基づき、構造物に形成された穴の形成位置に関する評価情報を出力する。【選択図】図１
2020122769.tif 000002
【特許請求の範囲】
【請求項１】
構造物を含む撮影画像に前記構造物に形成された穴が含まれることを検出すると、前記穴の輪郭の前記撮影画像上での形状を特定し、
前記構造物の三次元設計データに応じた三次元モデルの前記撮影画像への投影像が前記撮影画像に含まれる前記構造物に対応するように、前記三次元モデルを前記撮影画像へ投影した場合に、投影像が前記形状に対応する前記三次元モデルの部位を特定し、
特定した前記部位と、前記穴の前記三次元設計データに対応する前記三次元モデルの部位との比較結果に基づき、前記構造物に形成された前記穴の形成位置に関する評価情報を出力する、
処理をコンピュータが実行することを特徴とする評価方法。
【請求項２】
前記形状を特定する処理は、前記三次元モデルに含まれる設計上の第１の穴の前記投影像における大きさを基に決定される範囲の中で、前記構造物に形成された第２の穴の輪郭の前記撮影画像上での形状を特定する、
ことを特徴とする請求項１に記載の評価方法。
【請求項３】
前記形状を特定する処理は、前記形状を特定するための手順ごとにあらかじめ設定された複数の手法を組み合わせて前記形状を特定し、
前記出力する処理は、前記組み合わせのうち、所定のコスト関数が最も小さくなる組み合わせを用いて特定された前記形状を基に特定された前記部位と、前記穴の前記三次元設計データに対応する前記三次元モデルの部位との比較結果に基づき、前記評価情報を出力する、
ことを特徴とする請求項１又は２に記載の評価方法。
【請求項４】
前記出力する処理は、特定した前記部位に対応する第１の楕円と、前記穴の前記三次元設計データに対応する前記三次元モデルの部位に対応する第２の楕円との面積の差、中心間の距離、なす角度、及び、前記第２の楕円の長径と短径との差が大きくなるほど大きくなるコスト関数が最も小さくなる組み合わせを用いて特定された前記形状を基に特定された前記部位と、前記穴の前記三次元設計データに対応する前記三次元モデルの部位との比較結果に基づき、前記評価情報を出力する、
ことを特徴とする請求項３に記載の評価方法。
【請求項５】
前記形状を特定する処理は、検出した前記撮影画像の穴を含む領域の画像を、前記画像の画素のうち、輝度値が第１の閾値から前記第１の閾値より大きい第２の閾値までの範囲に含まれる画素を真とし、輝度値が前記範囲に含まれない画素を偽として二値化した画像を基に、前記穴の輪郭の前記撮影画像上での形状を特定する、
ことを特徴とする請求項１から４のいずれか１項に記載の評価方法。
【請求項６】
構造物を含む撮影画像に前記構造物に形成された穴が含まれることを検出すると、前記穴の輪郭の前記撮影画像上での形状を特定し、
前記構造物の三次元設計データに応じた三次元モデルの前記撮影画像への投影像が前記撮影画像に含まれる前記構造物に対応するように、前記三次元モデルを前記撮影画像へ投影した場合に、投影像が前記形状に対応する前記三次元モデルの部位を特定し、
特定した前記部位と、前記穴の前記三次元設計データに対応する前記三次元モデルの部位との比較結果に基づき、前記構造物に形成された前記穴の形成位置に関する評価情報を出力する、
処理をコンピュータに実行させることを特徴とする評価プログラム。
【請求項７】
構造物を含む撮影画像に前記構造物に形成された穴が含まれることを検出すると、前記穴の輪郭の前記撮影画像上での形状を特定する形状特定部と、
前記構造物の三次元設計データに応じた三次元モデルの前記撮影画像への投影像が前記撮影画像に含まれる前記構造物に対応するように、前記三次元モデルを前記撮影画像へ投影した場合に、投影像が前記形状特定部によって特定された形状に対応する前記三次元モデルの部位を特定する部位特定部と、
前記部位特定部によって特定された前記部位と、前記穴の前記三次元設計データに対応する前記三次元モデルの部位との比較結果に基づき、前記構造物に形成された前記穴の形成位置に関する評価情報を出力する出力部と、
を有することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、評価方法、評価プログラム及び情報処理装置に関する。
【背景技術】
【０００２】
従来、構造物の撮影画像に、当該構造物の三次元モデルの投影像を重ね合わせて表示させる技術が知られている。例えば、従来の技術では、撮影画像から抽出したエッジ線に基づき、三次元モデルの表示姿勢を特定する処理が行われる。また、このような技術は、例えば、製造された構造物が、あらかじめ作成された３ＤＣＡＤ（computer  aided  design）データと異なっていないかを検査するために用いられる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１８−１２８８０３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記の技術では、構造物に形成された穴の位置の評価精度を向上することが困難な場合があるという問題がある。
【０００５】
ここで、例えば、構造物には、ボルトを通すための穴が空けられる場合がある。このとき、実際に空けられた穴の位置と設計上の穴の位置とのずれが許容範囲を超えていると、ボルトを通すことができず、例えば構造物同士を組み立てることができなくなる場合がある。
【０００６】
従来の技術によれば、撮影した構造物の画像に三次元モデルの投影図を重ね合わせた重畳画像に、撮影画像上の穴と設計された三次元モデルの穴とを同時に表示することができる。一方で、撮影画像には背景、構造物の表面の模様、陰の影響でノイズが発生するため、重畳画像における穴の位置を精度良く特定できなくなる場合がある。また、撮影画像には構造物の穴が楕円として写ることがあるため、穴の中心等を精度良く把握できず、撮影画像上の穴の位置と設計された穴の位置との誤差を高い精度で評価することが困難な場合がある。
【０００７】
１つの側面では、構造物に形成された穴の位置の評価精度を向上することを目的とする。
【課題を解決するための手段】
【０００８】
１つの態様において、評価方法は、構造物を含む撮影画像に構造物に形成された穴が含まれることを検出すると、穴の輪郭の撮影画像上での形状を特定する処理をコンピュータが実行する。評価方法は、構造物の三次元設計データに応じた三次元モデルの撮影画像への投影像が撮影画像に含まれる構造物に対応するように、三次元モデルを撮影画像へ投影した場合に、投影像が形状に対応する三次元モデルの部位を特定する処理をコンピュータが実行する。評価方法は、特定した部位と、穴の三次元設計データに対応する三次元モデルの部位との比較結果に基づき、構造物に形成された穴の形成位置に関する評価情報を出力する処理をコンピュータが実行する。
【発明の効果】
【０００９】
１つの側面では、構造物に形成された穴の位置の評価精度を向上することができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施例に係る情報処理装置の機能構成の一例を示す図である。
【図２】図２は、３Ｄモデルの穴の一例を示す図である。
【図３】図３は、楕円の中心のずれについて説明するための図である。
【図４】図４は、検出範囲について説明するための図である。
【図５】図５は、撮影画像の穴の検出について説明するための図である。
【図６】図６は、形状を特定する処理について説明するための図である。
【図７】図７は、二値化について説明するための図である。
【図８】図８は、真円の検出について説明するための図である。
【図９】図９は、逆投影について説明するための図である。
【図１０】図１０は、面積の差の一例を示す図である。
【図１１】図１１は、中心間距離の一例を示す図である。
【図１２】図１２は、長径と短径の差の一例を示す図である。
【図１３】図１３は、なす角の一例を示す図である。
【図１４】図１４は、穴の中心補正について説明するための図である。
【図１５】図１５は、誤差の計算について説明するための図である。
【図１６】図１６は、３Ｄモデルの穴の検出について説明するための図である。
【図１７】図１７は、３Ｄモデルの穴の検出について説明するための図である。
【図１８】図１８は、３Ｄモデルの穴の中心及び半径について説明するための図である。
【図１９】図１９は、評価情報の一例を示す図である。
【図２０】図２０は、評価処理の流れを示すフローチャートである。
【図２１】図２１は、特定処理の流れを示すフローチャートである。
【図２２】図２２は、真円の検出処理の流れを示すフローチャートである。
【図２３】図２３は、ハードウェア構成例を説明する図である。
【発明を実施するための形態】
【００１１】
以下に、本発明に係る評価方法、評価プログラム及び情報処理装置の実施例を図面に基づいて詳細に説明する。なお、この実施例により本発明が限定されるものではない。また、各実施例は、矛盾のない範囲内で適宜組み合わせることができる。
【実施例１】
【００１２】
一例として、実施例の評価方法、評価プログラム及び情報処理装置は、製造された構造物と当該構造物の三次元モデルとが異なっていないかを確認するために用いられる。例えば、情報処理装置は、撮影された構造物の姿勢を三次元モデルの姿勢に合わせた上で投影像を生成し、撮影画像に投影像を重畳表示させることができる。
【００１３】
ユーザは、撮影画像に投影像を重畳表示させた重畳画像を見て、構造物が設計された通りに製造されているか否かを判断することができる。ここで、ボルトを通すための穴が、構造物の設計された通りの位置から大きくずれている場合、ボルトを通して構造物同士を組み立てることができなくなる。このため、ユーザは、重畳画像を見て穴の位置が大きくずれていないかを確認するが、目視だけでずれの大きさを定量的に評価することは困難である。例えば、実施例の評価方法、評価プログラム及び情報処理装置は、穴のずれを評価するための情報をユーザに提供することができる。
【００１４】
なお、以降の説明では、「三次元」を省略し「３Ｄ」と表記する場合がある。例えば、三次元設計データを３Ｄ設計データと表記する場合がある。また、三次元モデルを３Ｄモデルと表記する場合がある。
【００１５】
［機能構成］
図１を用いて、実施例に係る情報処理装置の機能構成について説明する。図１は、実施例に係る情報処理装置の機能構成の一例を示す図である。例えば、情報処理装置１０は、スマートフォン、タブレット型端末、パーソナルコンピュータ等である。図１に示すように、情報処理装置１０は、撮影部１１、表示部１２、記憶部１３及び制御部１４を有する。
【００１６】
撮影部１１は、画像を撮影する。例えば、撮影部１１はカメラである。また、表示部１２は、制御部１４による制御に応じて画像を表示する。例えば、表示部１２は、タッチパネルディスプレイ等である。
【００１７】
記憶部１３は、データや制御部１４が実行するプログラム等を記憶する記憶装置の一例であり、例えばハードディスクやメモリ等である。記憶部１３は、３Ｄ設計データ１３１を記憶する。
【００１８】
３Ｄ設計データ１３１は、３ＤＣＡＤ等により作成されたデータであって、構造物の三次元モデルを構築するためのデータである。３Ｄ設計データ１３１によれば、指定された構造物の３Ｄモデルの投影像を生成することができる。制御部１４は、適宜３Ｄ設計データ１３１を参照し３Ｄモデルに関する処理を行う。
【００１９】
制御部１４は、例えば、ＣＰＵ（Central  Processing  Unit）、ＭＰＵ（Micro  Processing  Unit）、ＧＰＵ（Graphics  Processing  Unit）等によって、内部の記憶装置に記憶されているプログラムがＲＡＭを作業領域として実行されることにより実現される。また、制御部１４は、例えば、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）等の集積回路により実現されるようにしてもよい。制御部１４は、検出部１４１、形状特定部１４２、部位特定部１４３、計算部１４４及び出力部１４５を有する。
【００２０】
検出部１４１は、構造物を含む撮影画像に構造物に形成された穴が含まれることを検出する。検出部１４１による検出処理が行われる時点で、撮影部１１によって撮影された撮影画像内の構造物と３Ｄモデルの投影像とが重畳表示された重畳画像が得られているものとする。
【００２１】
ここで、真円として設計された穴は、当該設計に基づく３Ｄモデルの投影像においては、図２のように楕円として表示される場合がある。図２は、３Ｄモデルの穴の一例を示す図である。設計された穴が真円の場合、穴の半径はどの方向に対しても等しい。一方で、図２に示すように、投影像では穴が楕円として表示されるため、半径は、例えば長軸方向では引き伸ばされ、短軸方向では縮められる。
【００２２】
また、図３に示すように、投影像を生成した際の３Ｄモデルの傾きによっては、実際の穴の中心に対応する点は、例えば楕円の中心と一致しない場合がある。図３は、楕円の中心のずれについて説明するための図である。
【００２３】
検出部１４１は、投影像における３Ｄモデルの穴の周囲の範囲を検出する。言い換えると、検出部１４１は、構造物が設計にしたがって製造されている場合に、撮影画像の穴が写っていると推定される領域を検出する。
【００２４】
図４に示すように、検出部１４１は、カメラの中心を示す点と、３Ｄモデルの穴の複数の端点とを結んだ直線の、撮影画像を示す面との交点を求める。図４は、検出範囲について説明するための図である。
【００２５】
そして、検出部１４１は、求めた交点に囲まれた領域を含む範囲を検出する。図５に示すように、検出部１４１は、検出範囲を矩形とすることができる。図５は、撮影画像の穴の検出について説明するための図である。また、検出部１４１は、検出する矩形の辺の長さを設計された穴の半径、３Ｄモデルでの穴の長径及び短径等を基に決定することができる。
【００２６】
ここで、構造物の穴の位置と投影像の穴の位置が一致することが理想の状態であるが、実際には各穴の位置はずれる場合がある。また、図５に示すように、ずれの大きさは穴ごとに異なる場合がある。なお、図５及び以降で説明する図において、撮影画像における破線は投影像を表すものとする。
【００２７】
形状特定部１４２は、構造物を含む撮影画像に構造物に形成された穴が含まれることを検出すると、穴の輪郭の撮影画像上での形状を特定する。図６を用いて、形状特定部１４２による形状を特定する処理の手順を説明する。図６は、形状を特定する処理について説明するための図である。
【００２８】
図６の（１）は、検出部１４１によって検出された検出範囲内の画像である。（１）の画像内には、実線及びパターンで示された楕円のように見える図形が存在する。しかしながら、当該図形は、真円になることを意図して形成された穴に対応するものであったとしても、製造の精度や、背景、構造物の表面の模様、陰の影響で発生する画像上のノイズにより、正確な楕円であるとは限らない。
【００２９】
そこで、形状特定部１４２は、三次元モデルに含まれる設計上の第１の穴の投影像における大きさを基に決定される範囲の中で、構造物に形成された第２の穴の輪郭の撮影画像上での形状を特定する。ここでは、形状特定部１４２は、第２の穴の輪郭の撮影画像上での形状が楕円であると仮定して特定を行う。また、検出範囲は、第１の穴の投影像における大きさを基に決定される範囲の一例である。
【００３０】
まず、形状特定部１４２は、図６の（１）に示す画像の二値化を行う。ここでは、形状特定部１４２は、楕円の候補の領域を真に対応する値、それ以外の領域を偽に対応する値に変換する。真に対応する値及び偽に対応する値は、それぞれ第１の色を示す値、及び第１の色と異なる第２の色を示す値であればよく、形状特定部１４２の処理全体で統一されていればどのような値であってもよい。例えば、真に対応する値及び偽に対応する値は、１及び０であってもよいし、２５５及び０であってもよい。
【００３１】
形状特定部１４２は、図７で説明する重畳結果を利用した二値化を行うことができる。図７は、二値化について説明するための図である。なお、形状特定部１４２は、例えば、大津の二値化、Grabcut及びモルフォロジー等の既知の手法により二値化を行ってもよい。
【００３２】
ここで、画像の輝度値の範囲は、例えば０から２５５までであるものとする。図７に示すように、まず、形状特定部１４２は、図６の（１）の画像の各画素の輝度の平均値である背景平均値を計算する。次に、形状特定部１４２は、判別分析法を用いて、輝度値が背景平均値以下である画素を２群に分ける輝度値の閾値を第１の閾値として計算する。また、形状特定部１４２は、判別分析法を用いて、輝度値が背景平均値以上である画素を２群に分ける輝度値の閾値を第２の閾値として計算する。
【００３３】
そして、形状特定部１４２は、検出範囲の画像を、画像の画素のうち、輝度値が第１の閾値から第１の閾値より大きい第２の閾値までの範囲に含まれる画素を真とする。また、形状特定部１４２は、輝度値が範囲に含まれない画素を偽とする。形状特定部１４２は、真と偽に二値化した画像を基に、穴の輪郭の撮影画像上での形状を特定する。なお、輝度値が第１の閾値以下である画素は、陰等の暗すぎる部分に該当する。また、輝度値が第２の閾値以上である画素は、ハイライト等の明るすぎる部分に該当する。
【００３４】
例えば、図６の（２）に示すように、形状特定部１４２は、輝度値が第１の閾値から第２の閾値までの範囲に含まれる画素を白、輝度値が第１の閾値から第２の閾値までの範囲に含まれない画素を黒に変換する。これにより、楕円が存在すると考えられる領域がより明確になる。
【００３５】
ここで、形状特定部１４２は、図６の（２）に示す二値化済みの画像から、輪郭抽出を行う。形状特定部１４２は、例えば、Suzuki85のアルゴリズム等の既知の手法により楕円の輪郭を抽出することができる。図６の（３）は、形状特定部１４２によって抽出された楕円の輪郭を点線で表した画像である。
【００３６】
そして、形状特定部１４２は、図６の（３）の画像を基に、楕円を検出し、図６の（４）に示すように、当該楕円の長径、短径及び中心を特定する。具体的には、形状特定部１４２は、特定した輪郭が表す楕円を３Ｄモデルと同じ空間（ＣＡＤ座標空間）に真円として投影可能な情報を特定する。ここで、以降の説明では、撮影画像から特定した図形をＣＡＤ座標空間に投影することを逆投影と呼ぶ。
【００３７】
形状特定部１４２は、図８で説明する重畳結果を利用した真円の検出を行うことができる。図８は、真円の検出について説明するための図である。なお、形状特定部１４２は、例えば、ハフ変換等の既知の手法により真円を検出してもよい。
【００３８】
図８を用いて、形状特定部１４２による真円の検出について説明する。図８に示すように、まず、形状特定部１４２は、図８の（１）に示すように、特定した楕円の輪郭を基に、撮影画像から楕円周辺の矩形領域を切り取る。ここで、形状特定部１４２は、楕円全体を含み、１辺の長さがＬの正方形の領域を切り取るものとする。
【００３９】
次に、形状特定部１４２は、３Ｄ設計データ１３１から取得した設計情報を参照し、３Ｄモデルの穴の投影像における楕円の長軸の角度を取得する。形状特定部１４２は、取得した角度を基に、切り取った矩形領域のアフィン変換を行い、位置及び角度を調整する。例えば、形状特定部１４２は、楕円の長軸方向が、変換後の画像の垂直方向と平行になるように変換を行う。
【００４０】
さらに、図８の（２）に示すように、形状特定部１４２は、変換後の画像全体を含むような、１つの辺がＬ´の正方形の画像を切り出す。Ｌ´は、例えばＬにルート２を掛けた値である。そして、図８の（３）に示すように、形状特定部１４２は、３Ｄモデルの穴の投影像における楕円の楕円率を基に、正方形の画像のアスペクト比を補正する。ここで、楕円の長径をａとし、短径をｂとすると、楕円率はａ／ｂである。例えば、楕円の長軸方向が画像の垂直方向と平行である場合、形状特定部１４２は、画像の横の長さＬ´に楕円率ａ／ｂを掛けることでアスペクト比を補正する。
【００４１】
図８の（４）に示すように、形状特定部１４２は、アスペクト比を補正した画像から、ハフ変換等により円の中心及び半径を計算し、真円を検出する。なお、図８の（４）では、説明のため、検出される真円を斜線のパターンで表示している。
【００４２】
部位特定部１４３は、構造物の３Ｄ設計データに応じた３Ｄモデルの撮影画像への投影像が撮影画像に含まれる構造物に対応するように、３Ｄモデルを撮影画像へ投影した場合に、投影像が形状に対応する３Ｄモデルの部位を特定する。つまり、部位特定部１４３は、形状特定部１４２によって検出された真円を基に、形状特定部１４２によって輪郭が特定された楕円が逆投影された場合の、３Ｄモデル上の対応する部位を特定する。前述の通り、逆投影とは、撮影画像から特定した図形をＣＡＤ座標空間に投影することである。
【００４３】
まず、図９に示すように、部位特定部１４３は、形状特定部１４２の手順を逆に実行することで輪郭が特定された楕円の撮影画像における中心の座標（ｘ´，ｙ´）を特定する。図９は、逆投影について説明するための図である。さらに、部位特定部１４３は、座標（ｘ´，ｙ´）を、ＣＡＤ空間座標（Ｘ，Ｙ，Ｚ）に変換する。例えば、部位特定部１４３は、投影像を生成した際の３Ｄモデルの傾き等の情報を用いてＣＡＤ空間座標への変換を行うことができる。
【００４４】
ここで、形状特定部１４２は、形状を特定するための手順ごとにあらかじめ設定された複数の手法を組み合わせて形状を特定することができる。例えば、形状特定部１４２は、二値化の手法として、重畳結果を利用した二値化又は大津の二値化のいずれかを選択するようにあらかじめ設定されているものとする。また、形状特定部１４２は、真円を検出する手法として、重畳結果を利用した真円の検出又はハフ変換のいずれかを選択するようにあらかじめ設定されているものとする。このとき、形状特定部１４２は、最終的に例えば４通りの検出結果を得ることができる。
【００４５】
計算部１４４は、形状特定部１４２によって得られた例えば４通りの検出結果のそれぞれについてコスト関数を計算する。そして、出力部１４５は、組み合わせのうち、所定のコスト関数が最も小さくなる組み合わせを用いて特定された形状を基に特定された部位と、穴の三次元設計データに対応する三次元モデルの部位との比較結果に基づき、評価情報を出力する。ここで、計算部１４４は、撮影画像上の構造物の楕円と、３Ｄモデルの投影像における楕円との誤差を計算する。誤差は、例えば各楕円の中心間の距離である。
【００４６】
計算部１４４は、コスト関数Ｅ（Ｃ，Ｃ＊）を（１）式のように計算する。Ｃは、形状特定部１４２によって形状が特定された楕円である。また、Ｃ＊は、３Ｄモデルの投影像の楕円である。
【００４７】
【数１】
2020122769.tif 000003
【００４８】
Ｅａｒｅａ（Ｃ，Ｃ＊）は、楕円間の面積の差である。図１０は、面積の差について説明するための図である。Ｅｐｏｓ（Ｃ，Ｃ＊）は、楕円の中心間距離である。図１１は、中心間距離について説明するための図である。Ｅｓｈａｐｅ（Ｃ，Ｃ＊）は、楕円の長径と短径の差である。図１２は、長径と短径の差について説明するための図である。Ｅｓｈａｐｅ（Ｃ，Ｃ＊）は、楕円の長軸の水平な直線とのなす角である。図１３は、なす角について説明するための図である。
【００４９】
このように、コスト関数は、特定した部位に対応する第１の楕円と、穴の３Ｄ設計データに対応する３Ｄモデルの部位に対応する第２の楕円との面積の差、中心間の距離、なす角度、及び、第２の楕円の長径と短径との差が大きくなるほど大きくなる。
【００５０】
計算部１４４は、コスト関数が最も小さい組み合わせについて誤差を計算する。誤差は評価情報の一例である。まず、計算部１４４は、誤差を計算するために穴の中心補正を行う。図１４は、穴の中心補正について説明するための図である。
【００５１】
まず、図１４の（１）に示すように、計算部１４４は、第１の楕円を３Ｄモデルの穴が存在する面、すなわち第２の楕円と同一の面に投影する。次に、図１４の（２）に示すように、計算部１４４は、当該投影した第１の楕円を検出し、中心を計算する。さらに、図１４の（３）に示すように、計算部１４４は、検出した楕円を撮影画像に投影する。そして、図１４の（４）に示すように、計算部１４４は、撮影画像に投影した中心を補正後の中心とする。
【００５２】
図１５を用いて誤差の計算について説明する。図１５は、誤差の計算について説明するための図である。図１５に示すように、計算部１４４は、補正後の第１の楕円の中心を３Ｄモデルに投影し、当該投影した中心と、第２の楕円の中心との距離を誤差として計算する。計算部１４４は、第１の楕円及び第２の楕円を、いずれも３Ｄモデルにおける真円とみなした上で誤差を計算する。
【００５３】
ここで、３Ｄモデルの穴を検出する処理について説明する。検出部１４１は、まず３Ｄモデルから穴を検出する。そして、検出部１４１は、検出した３Ｄモデルの穴を基に、撮影画像における範囲の検出を行う。なお、３Ｄモデルの穴は、３Ｄ設計データ１３１においてあらかじめ設定されていてもよく、その場合は検出部１４１による３Ｄモデルの穴の検出は不要である。
【００５４】
図１６は、３Ｄモデルの穴の検出について説明するための図である。ここで、３Ｄモデルにおいて、穴は正Ｎ角形で表現される。このとき、３Ｄモデルにおける穴は、正Ｎ角形の各辺に対応する線分の集合であるといえる。さらに、穴を構成する線分は、正Ｎ角形上の隣の辺に対応する２つの線分とのみ接する。検出部１４１は、この性質を利用して穴を検出する。
【００５５】
図１６は、３Ｄモデルの穴の検出について説明するための図である。検出部１４１は、２つのみの線分と接する探索開始点の隣の点について、２つのみの線分と接しているか否かを判定する。検出部１４１は、２つのみの線分と接している点をたどっていき、探索回転にまで戻ってきた場合、たどってきた線分の集合を穴として検出する。
【００５６】
また、検出部１４１は、図１７に示すような３つ以上の線分と接する点が現れた場合、他の探索開始点から探索を始める。図１７は、３Ｄモデルの穴の検出について説明するための図である。
【００５７】
また、図１８に示すように、検出部１４１は、穴として検出した線分の集合によって構成される図形から例えば３つの頂点を抽出し、当該３つの頂点の中心の位置を穴の中心とする。また、穴の中心からいずれかの頂点までの距離を穴の半径とする。図１８は、３Ｄモデルの穴の中心及び半径について説明するための図である。このように、３Ｄモデルの穴は多角形であるが、中心と半径を定義できるため、実施例の評価処理では真円として扱われる。
【００５８】
図１９に示すように、出力部１４５は、重畳画像に各楕円の中心及び誤差を表示する。図１９は、評価情報の一例を示す図である。図１９の例では、出力部１４５は、誤差として例えば１．２１６を表示している。
【００５９】
［処理の流れ］
図２０、図２１及び図２２を用いて、情報処理装置１０の処理の流れを説明する。図２０は、評価処理の流れを示すフローチャートである。図２０に示すように、まず、情報処理装置１０は、３Ｄ設計データに応じた３Ｄモデルの投影像と構造物の撮影画像とを重畳表示する（ステップＳ１１）。次に、情報処理装置１０は、３Ｄモデルの穴を検出する（ステップＳ１２）。そして、情報処理装置１０は、撮影画像から穴を検出する（ステップＳ１３）。
【００６０】
ここで、情報処理装置１０は、各特定処理のための手法の組み合わせのうち未選択のものを選択する（ステップＳ１４）。そして、情報処理装置１０は、撮影画像の穴の形状及び撮影画像の穴に対応する３Ｄモデルの部位を特定する（ステップＳ１５）。ステップＳ１５の処理の詳細については、後に図２１を用いて説明する。
【００６１】
情報処理装置１０は、３Ｄモデルの穴と特定した部位とに係る各楕円を基にコスト関数を計算する（ステップＳ１６）。ここで、情報処理装置１０は、未選択の手法の組み合わせがあるか否かを判定する（ステップＳ１７）。未選択の手法の組み合わせがある場合（ステップＳ１７、Ｙｅｓ）、情報処理装置１０は、ステップＳ１４に戻り処理を繰り返す。一方、未選択の組み合わせがない場合（ステップＳ１７、Ｎｏ）、情報処理装置１０は、評価情報を出力する（ステップＳ１８）。
【００６２】
図２１を用いて、ステップＳ１５の詳細について説明する。図２１は、特定処理の流れを示すフローチャートである。図２１に示すように、まず、情報処理装置１０は、撮影画像から検出した穴の検出範囲の画像を二値化する（ステップＳ１５１）。次に、情報処理装置１０は、二値化した画像から楕円の輪郭を抽出する（ステップＳ１５２）。そして、情報処理装置１０は、抽出した輪郭を基に真円を検出する（ステップＳ１５３）。
【００６３】
なお、ステップＳ１５１及びステップＳ１５３を実行するための手法としては、それぞれ複数の手法が考えられる。図２０で説明した通り、情報処理装置１０は、複数の手法の組み合わせについて処理を実行し、最適な組み合わせを探索することができる。
【００６４】
図２２を用いて、ステップＳ１５３の詳細について説明する。図２２は、真円の検出処理の流れを示すフローチャートである。図２２に示すように、まず、情報処理装置１０は、撮影画像の穴の周辺の矩形領域を切り出す（ステップＳ１５３１）。
【００６５】
次に、情報処理装置１０は、３Ｄモデルの穴の情報を基に矩形範囲のアフィン変換を実行する（ステップＳ１５３２）。また、情報処理装置１０は、３Ｄモデルの穴の情報を基に、矩形範囲のアスペクト比を補正する（ステップＳ１５３３）。さらに、情報処理装置１０は、ハフ変換による矩形範囲から真円を検出する（ステップＳ１５３４）。
【００６６】
情報処理装置１０は、検出した真円を３Ｄモデルの空間に逆投影する（ステップＳ１５３５）。そして、情報処理装置１０は、逆投影された真円の中心の座標を取得する（ステップＳ１５３６）。
【００６７】
［効果］
情報処理装置１０は、構造物を含む撮影画像に構造物に形成された穴が含まれることを検出すると、穴の輪郭の撮影画像上での形状を特定する。情報処理装置１０は、構造物の３Ｄ設計データに応じた３Ｄモデルの撮影画像への投影像が撮影画像に含まれる構造物に対応するように、３Ｄモデルを撮影画像へ投影した場合に、投影像が形状に対応する３Ｄモデルの部位を特定する。情報処理装置１０は、特定した部位と、穴の３Ｄ設計データに対応する３Ｄモデルの部位との比較結果に基づき、構造物に形成された穴の形成位置に関する評価情報を出力する。このように、情報処理装置１０は、撮影角度等により穴が楕円に見える場合であっても、穴の画像を３Ｄモデルと同じ空間に投影し、設計された穴との誤差を定量的に計算することができる。このため、実施例によれば、構造物に形成された穴の位置の評価精度を向上することができる。
【００６８】
情報処理装置１０は、３Ｄモデルに含まれる設計上の第１の穴の投影像における大きさを基に決定される範囲の中で、構造物に形成された第２の穴の輪郭の撮影画像上での形状を特定する。情報処理装置１０は、３Ｄモデルの穴を基準にして撮影画像の穴を検出することができる。このため、実施例によれば、３Ｄモデル及び構造物に多数の穴が存在する場合であっても、比較対象の穴を容易に特定することができる。
【００６９】
情報処理装置１０は、形状を特定するための手順ごとにあらかじめ設定された複数の手法を組み合わせて形状を特定する。情報処理装置１０は、組み合わせのうち、所定のコスト関数が最も小さくなる組み合わせを用いて特定された形状を基に特定された部位と、穴の３Ｄ設計データに対応する３Ｄモデルの部位との比較結果に基づき、評価情報を出力する。穴の位置、撮影画像の撮影状況等によっては、最適な手法が異なる場合がある。これに対し、実施例では、複数の手法の組み合わせから最適なものを選択することができる。
【００７０】
情報処理装置１０は、特定した部位に対応する第１の楕円と、穴の３Ｄ設計データに対応する３Ｄモデルの部位に対応する第２の楕円とのコスト関数が最も小さくなる組み合わせを用いる。コスト関数は、面積の差、中心間の距離、なす角度、及び、第２の楕円の長軸と短軸との差が大きくなるほど大きくなる。このように、情報処理装置１０は、楕円に関する情報のみを用いて、手法の組み合わせを評価することができる。このため、実施例によれば、追加の情報を取得することなく、計算上発生する情報のみにより手法の組み合わせの評価を行うことができる。
【００７１】
そして、情報処理装置１０は、検出範囲の画像を、画像の画素のうち、輝度値が第１の閾値から第１の閾値より大きい第２の閾値までの範囲に含まれる画素を真とする。また、情報処理装置１０は、輝度値が範囲に含まれない画素を偽とする。情報処理装置１０は、真と偽に二値化した画像を基に、穴の輪郭の撮影画像上での形状を特定する。撮影画像における陰の部分は極端に輝度値が小さくなる場合がある。また、撮影画像におけるハイライトの部分は極端に輝度値が大きくなる場合がある。また、撮影画像における穴は、陰とハイライトのいずれにもならないことが多い。このため、実施例によれば、二値化により、穴の輪郭を明確にすることができる。
【００７２】
なお、上記の実施例では、計算部１４４は、楕円を基にコスト関数を計算するものとしたが、誤差の計算の場合と同様に、各楕円を真円とみなしてコスト関数の計算を行うようにしてもよい。また、出力部１４５は、コスト関数の各項のうち、いずれかの値が閾値より大きい場合、当該コスト関数に係る組み合わせを採用しないようにしてもよい。
【００７３】
［システム］
上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。また、実施例で説明した具体例、分布、数値等は、あくまで一例であり、任意に変更することができる。
【００７４】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散や統合の具体的形態は図示のものに限られない。つまり、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部又は任意の一部が、ＣＰＵ及び当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００７５】
［ハードウェア］
図２３は、ハードウェア構成例を説明する図である。図２３に示すように、情報処理装置１０は、通信インタフェース１０ａ、ＨＤＤ（Hard  Disk  Drive）１０ｂ、メモリ１０ｃ、プロセッサ１０ｄを有する。また、図２３に示した各部は、バス等で相互に接続される。
【００７６】
通信インタフェース１０ａは、ネットワークインタフェースカード等であり、他のサーバとの通信を行う。ＨＤＤ１０ｂは、図１に示した機能を動作させるプログラムやＤＢを記憶する。
【００７７】
プロセッサ１０ｄは、図１に示した各処理部と同様の処理を実行するプログラムをＨＤＤ１０ｂ等から読み出してメモリ１０ｃに展開することで、図１等で説明した各機能を実行するプロセスを動作させる。すなわち、このプロセスは、情報処理装置１０が有する各処理部と同様の機能を実行する。具体的には、プロセッサ１０ｄは、検出部１４１、形状特定部１４２、部位特定部１４３、計算部１４４及び出力部１４５と同様の機能を有するプログラムをＨＤＤ１０ｂ等から読み出す。そして、プロセッサ１０ｄは、検出部１４１、形状特定部１４２、部位特定部１４３、計算部１４４及び出力部１４５等と同様の処理を実行するプロセスを実行する。プロセッサ１０ｄは、例えば、ＣＰＵ、ＭＰＵ、ＡＳＩＣ等のハードウェア回路である。
【００７８】
このように情報処理装置１０は、プログラムを読み出して実行することで分類方法を実行する情報処理装置として動作する。また、情報処理装置１０は、媒体読取装置によって記録媒体から上記プログラムを読み出し、読み出された上記プログラムを実行することで上記した実施例と同様の機能を実現することもできる。なお、この他の実施例でいうプログラムは、情報処理装置１０によって実行されることに限定されるものではない。例えば、他のコンピュータ又はサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
【００７９】
このプログラムは、インターネット等のネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＭＯ（Magneto−Optical  disk）、ＤＶＤ（Digital  Versatile  Disc）等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することができる。
【符号の説明】
【００８０】
１０  情報処理装置
１１  撮影部
１２  表示部
１３  記憶部
１４  制御部
１３１  ３Ｄ設計データ
１４１  検出部
１４２  形状特定部
１４３  部位特定部
１４４  計算部
１４５  出力部
【図１】
2020122769.tif 000004
【図２】
2020122769.tif 000005
【図３】
2020122769.tif 000006
【図４】
2020122769.tif 000007
【図５】
2020122769.tif 000008
【図６】
2020122769.tif 000009
【図７】
2020122769.tif 000010
【図８】
2020122769.tif 000011
【図９】
2020122769.tif 000012
【図１０】
2020122769.tif 000013
【図１１】
2020122769.tif 000014
【図１２】
2020122769.tif 000015
【図１３】
2020122769.tif 000016
【図１４】
2020122769.tif 000017
【図１５】
2020122769.tif 000018
【図１６】
2020122769.tif 000019
【図１７】
2020122769.tif 000020
【図１８】
2020122769.tif 000021
【図１９】
2020122769.tif 000022
【図２０】
2020122769.tif 000023
【図２１】
2020122769.tif 000024
【図２２】
2020122769.tif 000025
【図２３】
2020122769.tif 000026