以下、この発明の実施の形態を図面に基づいて説明する。図1は、本実施の形態である構造物検査システムSの概略構成を示すブロック図である。
本実施の形態の構造物検査システムSは、構造物検査装置10、入力装置11及び表示装置12を有する。
本実施の形態の構造物検査装置(以下、検査装置と省略する)10は、例えばパーソナルコンピュータ等であり、制御部20、記憶部(記憶装置)21、入力インタフェース(I/F)22及び出力インタフェース(I/F)23を有する。
制御部20はCPU等の演算素子を備える。記憶部21内に格納されている図略の制御用プログラムが検査装置10の起動時に実行され、この制御用プログラムに基づいて、制御部20は記憶部21等を含む検査装置10全体の制御を行うとともに、表示制御部30、低解像度化部31、第一のパラメータ取得部32、第二のパラメータ取得部33、第一の特徴点取得部34、第二の特徴点取得部35、三次元モデル生成部36、除外データ特定部37、空領域処理部38、グループ処理部39及び三次元モデル比較部40としての機能を実行する。これら各機能部の動作については後述する。
記憶部21はハードディスクドライブ等の大容量記憶媒体、及びROM、RAM等の半導体記憶媒体を備える。この記憶部21には上述の制御用プログラムが格納されているとともに、制御部20の制御動作時に必要とされる各種データが一時的に格納される。
また、この記憶部21には、画像データ50、低解像度画像データ51、第一のパラメータ52、第二のパラメータ53、第一の特徴点データ54及び第二の特徴点データ55が格納されている。これらデータのうち、画像データ50を除くデータについては一時的に記憶部21に格納されればよい。
画像データ50は、鉄道構造物に代表される構造物を、デジタルカメラ等の撮像装置(図示は省略)により撮像することで得られる。本実施の形態では、複数の画像データ50が記憶部21に格納されている。一般的に、後述の三次元モデル生成部36による三次元モデルの生成処理を簡易にかつ高精度に行うためには、重複領域が三次元モデル生成処理可能な範囲(例えば、60%以上重複)においてできるだけ少なく、かつ鮮明な(合焦状態にある)画像データ50を多数取得することが好ましいが、後述する本実施の形態による特徴的な処理に基づけば、かかる条件を緩めた画像データ50によっても簡易かつ高精度な三次元モデルを取得することができる。
なお、画像データ50を除くデータの詳細については後述する。
入力インタフェース22は、検査装置10に接続された入力装置11からの各種入力を受け入れ、これを制御部20に出力する。本実施例の入力装置11は例えばキーボードやマウス等であり、後述する表示装置12の表示画面に対して座標指定入力を行いうるものである。
出力インタフェース23は、制御部20、特に表示制御部30から出力された出力信号を受け入れ、これを表示装置12に出力する。本実施例の表示装置12は例えば液晶ディスプレイ装置であり、出力インタフェース23を介して出力された表示制御信号に基づいて図略の表示面に表示画面を表示する。
次に、制御部20に構成される各機能部の説明をする。
表示制御部30は、制御部20及びこの制御部20に構成される各機能部による処理の結果、表示装置12に表示画面を生成するための表示制御信号を生成して、この表示制御信号を出力インタフェース23を介して表示装置12に出力する。
低解像度化部31は、記憶部21に格納された画像データ50の解像度を低下させた低解像度画像データ51を生成する。低解像度化部31による低解像度画像データ51の生成手法は周知であり、ここでは特段詳細な説明を行わない。通常、低解像度化部31による画像データ50の低解像度化処理は、画像データ50の単位面積当たりの画素数(一例としてdpi:dots per inch)を削減することででき、さらに、画像データ50が圧縮画像(例えばJPEG画像)であるならば、低解像度化処理と圧縮率を上昇させる処理とを併用することができる。低解像度化部31により生成された低解像度画像データ51は、記憶部21に一時的に格納されることが好ましい。
第二のパラメータ取得部33は、低解像度化部31により生成された低解像度画像データ51に基づいて、画像データ50が撮像された際の撮像装置に関する第二のパラメータ53を取得する。第二のパラメータ取得部33により取得された第二のパラメータ53は、記憶部21に一時的に格納されることが好ましい。ここで、第二のパラメータ53は、画像データ50が撮像された際の撮像装置の撮像位置、姿勢及び画角を含む。
なお、画像データ50の第一及び第二のパラメータ52、53及び後述する第一及び第二の特徴点データ54、55は、画像データ50に基づいて算出するか、あるいは低解像度画像データ51に基づいて算出するかによって大きく異なることは考えにくい(より正確には、無視しうる誤差範囲内であると考えられる)ので、以下の説明では特段区別して説明しないことがある。
撮像装置の撮像位置は、構造物を基準とする相対座標系の座標値として与えられうる。あるいは、この相対座標系の原点の緯度、経度及び高度が与えられるならば、絶対座標系の座標値である緯度、経度及び高度として与えられうる。また、撮像装置の姿勢は、上述した撮像位置(相対座標系または絶対座標系の座標値)で特定される位置(座標点)において、撮像装置の撮像系の光軸と、この座標点を原点とする直交座標系の各座標軸とがなす角度として与えられうる。さらに、撮像装置の画角は、撮像装置の撮像位置と第二の特徴点データ55から算出することができ、画像データ50のフォーマットがExif(Exchangeable image file format)であれば画像データ50に付随するメタタグデータから算出することができる。
第二の特徴点取得部35は、低解像度画像データ51に基づいて画像データ50の第二の特徴点データ55を取得する。低解像度画像データ51を含む画像データ50の特徴点データを取得する手法は周知であり、ここでは特段詳細な説明を行わない。一例として、SIFT(Scale-Invariant Feature Transformation)法やSURF(Speed-Up Robust Features)法により画像データ50、低解像度画像データ51の特徴点を抽出し、この特徴点に関するデータ(画像データ50、低解像度画像データ51中の位置データなど)を取得することができる。第二の特徴点取得部35により取得された第二の特徴点データ55は、記憶部21に一時的に格納されることが好ましい。
第二のパラメータ取得部33による第二のパラメータ53の取得処理及び第二の特徴点取得部35による第二の特徴点データ55の取得処理は、上述したSfMにより行うことが好ましい。これら技術によれば、複数の画像データ50を入力として、複数の画像データ50に共通する構造物の特徴点を複数取得し、これら特徴点及び画像データ50から、各画像データ50を撮像した撮像装置の撮像位置、姿勢及び画角を含むパラメータを算出する一方、特徴点の三次元位置を算出することができる。
SfMそのものは周知の手法であるので、ここでは特段詳細な説明を行わない。これら技術は既にオープンソースとして公開されているものもあり(例えばOpenMVG:http://imagine.enpc.fr/~moulonp/openMVG/)、本実施の形態の検査装置10においても好適に適用可能である。
ここで、低解像度画像データ51は画像データ50の解像度を低下させたものであり、従って、そのデータ容量も低解像度化作業に伴って小さく(軽く)なっている。このため、第二のパラメータ取得部33による第二のパラメータ53の取得処理及び第二の特徴点取得部35による第二の特徴点データ55の取得処理そのものも軽量化かつ高速化される利点を有する。
除外データ特定部37は、低解像度画像データ51に基づいて、後述する三次元モデル生成部36が三次元モデルを生成する際に除外すべき画像データ50を特定する。特に、本実施の形態の除外データ特定部37は、第二のパラメータ取得部33により取得された第二のパラメータ53、及び第二の特徴点取得部35により取得された第二の特徴点データ55に基づいて、三次元モデル生成部36が三次元モデルを生成する際に除外すべき画像データ50を特定する。
本実施の形態の除外データ特定部37により三次元モデルを生成する際に除外すべき画像データ50を特定する手法は任意であるが、本実施の形態の除外データ特定部37は、低解像度画像データ51あるいは画像データ50の手ブレ・合焦状態の判定結果に基づいて三次元モデルの生成の際に除外すべき画像データを特定する手ブレ・合焦判定部37aと、複数の画像データ50が撮像された際の撮像装置の撮像位置及び姿勢のそれぞれが所定距離以内に近接しているか否かに基づいて三次元モデルの生成の際に除外すべき画像データを特定するパラメータ判定部37bとを有し、これら手ブレ・合焦判定部37a及びパラメータ判定部37bの動作により、三次元モデルを生成する際に除外すべき画像データ50を特定している。
手ブレ・合焦判定部37aが低解像度画像データ51あるいは画像データ50の手ブレ・合焦状態の判定を行う、より詳細には、低解像度画像データ51あるいは画像データ50が手ブレしているか否か、あるいは合焦しているか否か(低解像度画像データ51あるいは画像データ50がピンボケであるか)の判定を行う手法は特段限定されず、種々の手法が好適に採用可能である。一例として、本実施の形態の手ブレ・合焦判定部37aでは、低解像度画像データ51あるいは画像データ50のエッジ検出を行った後の画像データの輝度値が閾値を超えていれば手ブレ・合焦状態にあると判定する。そして、手ブレ・合焦判定部37aは、手ブレしている、あるいは合焦状態にない低解像度画像データ51あるいは画像データ50を、三次元モデルを生成する際に除外すべき画像データ50として特定する。
エッジ検出手法も周知の手法から好適に採用可能であり、一例として、ラプラシアンフィルタのような、画像データの各画素値に対して(二次)微分値を求める(画像微分)ことによりエッジ検出を行う手法などが好適に挙げられる。
本実施の形態であるパラメータ判定部37bは、第二のパラメータ取得部33が取得した低解像度画像データ51の第二のパラメータ53を低解像度画像データ51毎に比較し、第二のパラメータ53のうち、撮像装置の撮像位置及び姿勢が近接するか否かを判定することにより、三次元モデルを生成する際に除外すべき画像データ50を特定している。具体的には、撮像装置の撮像位置及び姿勢のそれぞれに閾値を予め設定し、複数の低解像度画像データ51において、それぞれの低解像度画像データ51から得られた撮像装置の撮像位置及び姿勢が閾値を下回れば、撮像装置の撮像位置及び姿勢が近接すると判定している。そして、パラメータ判定部37bは、撮像装置の撮像位置及び姿勢が近接する低解像度画像データ51を、冗長あるいは重複する低解像度画像データ51であると判定し、三次元モデルを生成する際に除外すべき画像データ50として特定する。
あるいは、またはさらに、パラメータ判定部37bは、第二の特徴点取得部35により取得された第二の特徴点データ55を低解像度画像データ51毎に比較し、第二の特徴点データ55が共通する特徴点が、予め定められた閾値を超えたか否かを判定することにより、三次元モデルを生成する際に除外すべき画像データ50を特定している。そして、パラメータ判定部37bは、共通する特徴点が閾値を超えたと判定した低解像度画像データ51を、三次元モデルを生成する際に除外すべき画像データ50として特定する。
手ブレ・合焦判定部37a及びパラメータ判定部37bを含む、除外データ特定部37により特定された画像データ50については、後述する三次元モデル生成部36による三次元モデル生成処理がされない(除外される)ことを明記する処理が行われる。一例として、特定された画像データ50についてはそのデータ中に特定のフラグを記入する。画像データ50のファイル名等のIDを記入したテーブルを記憶部21内に格納する、等の手法が挙げられる。
三次元モデル生成部36による三次元モデル生成処理、あるいは第一の特徴点取得部34による第一の特徴点データ54取得処理において、画像データ50が手ブレ状態にある、あるいは合焦状態にないと特徴点データ取得処理の精度が向上せず、また、実質的に重複する画像データ50を用いた場合、三次元モデル生成処理が長時間になる傾向がある。本実施の形態である除外データ特定部37によれば、上述の動作により三次元モデルを生成する際に除外すべき画像データ50を特定しているので、三次元モデル生成部36による三次元モデル生成処理を高速にかつ高精度に行うことができる。
また、低解像度画像データ51はデータ容量が軽量化されているので、除外データ特定部37による、三次元モデルを生成する際に除外すべき画像データ50として特定する処理そのものも軽量化かつ高速化される利点を有する。
ここで、除外データ特定部37による画像データ50の特定作業に先立って、グループ処理部39により低解像度画像データ51のグループ処理を行うことが好ましい。ここでのグループ処理部39によるグループ処理とは、上述した第二のパラメータ取得部33により取得された第二のパラメータ53及び第二の特徴点取得部35により取得された第二の特徴点データ55に基づいて、同一の構造物(例えば橋脚の一つの支柱といった単位)を撮像したと判断できる複数の低解像度画像データ51を抽出し、抽出された低解像度画像データ51を一つのグループとして特定することを指す。
グループ処理部39により低解像度画像データ51のグループ処理の一例について、図8を参照して説明する。画像1〜3として示されている3つの低解像度画像データ51a〜51cは、第二の特徴点取得部35の処理の結果、図示するように複数の特徴点C1〜C3を有する。そして、画像1 51a及び画像2 51bの特徴点C1、C2は、図中点線で示す対応関係にあり、画像1 51a及び画像3 51cの特徴点C1、C3は、図中実践で示す対応関係にあるものとする。ここに、対応関係とは、画像1〜3に表示されている共通の構造物の同一の特徴点と判断される画像1〜3の特徴点相互の関係である。
図8に示すように、画像1 51a及び画像3 51cは、画像1 51a及び画像2 51bと比較して対応関係にある特徴点C1、C3の数が多い。そこで、グループ処理部39は、対応関係が予め定められた閾値以上である低解像度画像データ51(図示例では画像1 51aと画像3 51c)を抽出し、抽出された低解像度画像データ51を一つのグループGとして特定する。
グループ処理部39により一つのグループGとして特定された低解像度画像データ51については、これら低解像度画像データ51が一つのグループに属することを明記する処理が行われる。一例として、特定された低解像度画像データ51についてはそのデータ中に特定のフラグを記入する。低解像度画像データ51のファイル名等のIDを記入したテーブルを記憶部21内に格納する、等の手法が挙げられる。
そして、除外データ特定部37は、グループ処理部39によりグループ化された個々のグループG単位で、三次元モデル生成部36が三次元モデルを生成する際に除外すべき画像データ50を特定する。これにより、少なくともパラメータ判定部37bによる判定処理を合理的な規模に収めることができ、三次元モデルを生成する際に除外すべき画像データ50として特定する処理そのものも軽量化かつ高速化される利点を有する。
つまり、グループ化せずに全ての低解像度画像データ51についてパラメータ判定部37bによる判定処理を行うとしたら、この判定処理が大規模なものになるが、グループ処理部39により同一の構造物を撮像したと判断できる複数の低解像度画像データ51を抽出してグループ化することにより、他の構造物を撮像したと判断できる低解像度画像データ51を判定処理から除外することができ、処理そのものを合理的な規模に収めることができる。
空領域処理部38は、低解像度画像データ51に基づいて、画像データ50内において空を撮像した領域(以下、単に「空領域」と称する)を特定する。一般的に、SfMでは画像データ50中の空領域を特定して、特定した空領域については三次元モデル生成処理から除外しているが、本実施の形態である検査装置10では、低解像度画像データ51に基づいて空領域を特定し、後述するように、三次元モデル生成部36による三次元モデル生成処理から除外している。
空領域処理部38による空領域特定処理の具体的手法については、周知の手法が好適に適用可能であるが、本実施の形態である空領域処理部38では、次の手法を採用している。
まず、(1)空領域処理部38は、低解像度画像データ51を構成する画素それぞれについて、その画像的特徴が空、または雲の特徴を満たすか否かを判定する。具体的には、画素の色情報を取得し、また、画素の空間周波数を(離散的または高速)フーリエ変換することで取得し、色情報または空間周波数が空、または雲のそれであるか否かを判定する。当然、他の手法により画素の画像的特徴が空、または雲の特徴を満たすか否かを判定してもよい。
次に、(2)空領域処理部38は、低解像度画像データ51を構成する、ある画素の周辺にある画素の全てが(1)の条件を満たすか否かを判定する。
さらに、(3)空領域処理部38は、低解像度画像データ51を構成する、ある画素の周辺にある画素の全てにおいて、特徴点が予め定められた閾値以上存在しないかどうかを判定する。
そして、条件(1)〜(3)のうち少なくとも一つ、あるいは所定の数の条件を満たすと判定されたら、空領域処理部38は、この画素を空領域であると判定する。そして、空領域処理部38は、空領域と判定した画素をマスク処理する。マスク処理する具体的な手法は任意であり、画像データ50の該当画素の値を0にする、該当画素の座標値をテーブル化する等の手法が任意に採用可能である。
第一のパラメータ取得部32は、除外データ特定部37により特定された画像データ50を除外した画像データ50に基づいて、画像データが撮像された際の撮像装置に関する第一のパラメータ52を取得する。ここに、第一のパラメータ52も、画像データ50が撮像された際の撮像装置の撮像位置、姿勢及び画角を含む。第一のパラメータ52の取得手法は、第二のパラメータ取得部33による第二のパラメータ53の取得方法と同様であるので、再度の説明は行わない。
第一の特徴点取得部34は、除外データ特定部37により特定された画像データ50を除外した画像データ50の第一の特徴点データ54を取得する。第一の特徴点データ54の取得方法は、第二の特徴点取得部35による第二の特徴点データ55の取得方法と同様であるので、再度の説明は行わない。
第一のパラメータ取得部32により取得された第一のパラメータ52、及び第一の特徴点取得部34により取得された第一の特徴点データ54は、記憶部21に一時的に格納されることが好ましい。
グループ処理部39は、入力装置11からの選択入力情報に基づいて少なくとも2つの画像データ50を抽出し、これら画像データ50の第一のパラメータ52に基づいて同一の構造物を撮像した画像データ50を特定し、特定された画像データ50を一つのグループとして特定する。
グループ処理部39による画像データ50のグループ化処理動作は、上述した低解像度画像データ51のグループ化処理動作と同様なものでもよいが、本実施の形態である検査装置10では、一例として図10及び図11に図示するような手法を採用している。
まず、図10に示すように、構造物STが比較的平坦な壁面を有し、この壁面に沿って撮影者が移動して撮像装置により画像データ50を撮像した場合を考える。
グループ処理部39は、画像データ50に基づく画像、あるいは画像データ50を縮小表示したサムネイル画像を表示装置12に表示させ、入力装置11による選択入力情報の入力を待つ。検査装置10の操作者(オペレータ)は、表示装置12に表示されている画像を見て、構造物STの端部を撮像した画像データ50を入力装置11を用いて選択する(図中における「指定画像」)。入力装置11は、操作者による選択入力に基づき、選択入力情報を検査装置10に出力する。
グループ処理部39は、入力装置11からの選択入力情報の入力に基づき、指定画像に対応する撮像装置の撮像位置を入手する。撮像装置の撮像位置は、第一のパラメータ取得部32により取得された第一のパラメータ52から入手すればよい。次に、グループ処理部39は、指定画像である画像データ50を包含するような画像データ50を、指定画像を撮像した撮像装置の撮像位置に基づいて抽出する。この際、グループ処理部39は、構造物STの両端を撮像した一対の指定画像(画像データ50)に対応する撮像装置の撮像位置の距離(図中Lで示す)を算出し、距離Lに所定の増分ΔLを加えた距離L1(=L+ΔL)内にある画像データ50を抽出することが好ましい。
次に、図11に示すように、構造物STが橋脚のような柱状体であり、この構造物STの周囲を撮影者が一周して移動して撮像装置により画像データ50を撮像した場合を考える。
図10と同様に、グループ処理部39は表示装置12に画像を表示し、操作者による選択入力に基づいて入力装置11が選択入力情報を検査装置10に出力する。この際、操作者は、3枚以上の画像データ50を選択入力することが好ましい。2枚の画像データ50が選択入力されると、図10に示す例と区別することが困難である。
グループ処理部39は、入力装置11からの選択入力情報の入力に基づき、指定画像に対応する撮像装置の撮像位置を入手する。撮像装置の撮像位置は、第一のパラメータ取得部32により取得された第一のパラメータ52から入手すればよい。次に、グループ処理部39は、指定画像である3枚(あるいはそれ以上)の画像データ50の撮影方向(これは指定画像に対する法線で表され、図中矢印Aで示す)が最も近接する位置CEを求め、この位置CEを中心とする半径rの球Bを仮想的に設定する。そして、撮影方向Aがこの球Bを貫く画像データ50を、指定画像を撮像した撮像装置の撮像位置に基づいて抽出する。
グループ処理部39により画像データ50をグループ化することにより、後述する三次元モデル比較部40による三次元モデルの比較処理を同一の構造物単位で行うことができ、比較処理を高速かつ簡易に行うことができる。
ここで、図10及び図11に示すグループ処理部39のグループ化処理動作はあくまで一例であり、他の手法によりグループ化処理動作が行われてもいいことは言うまでもない。
三次元モデル生成部36は、除外データ特定部37により特定された画像データ50を除外した画像データ50、第一のパラメータ52及び第一の特徴点データ54に基づいて、構造物の三次元モデルを生成する。三次元モデル生成部36による三次元モデル生成処理の具体的手法は、既知のSfMによればよいので、ここでは特段詳細な説明を行わない。三次元モデル生成部36により生成された三次元モデルは、記憶部21に一時的に格納されることが好ましい。三次元モデル生成部36により生成された三次元モデルの一例を図13(a)、(b)に示す。
ここで、三次元モデル生成部36は、空領域処理部38により特定された領域に関するデータを除外して構造物の三次元モデルを生成することが好ましい。また、三次元モデル生成部36は、グループ処理部39により特定されたグループ単位で構造物の三次元モデルを生成することが好ましい。
三次元モデル比較部40は、複数の日時における三次元モデルを共通する座標系において比較した結果を表示装置12に表示させる。
三次元モデル比較部40による三次元モデル比較処理の一例について、図3を参照して説明する。まず、異なる日時(図3においてはT0、T1、T2)に撮影された3種類の画像データ50に基づいて、三次元モデル生成部36により生成された同一の構造物に関する3種類の三次元モデルM0、M1、M2が記憶部21に格納されているものとする。ここに、日時(時刻)T0を基準時刻とし、T1及びT2はT0より後の時刻であるとする。また、基準時刻T0に撮影された画像データ50に基づく三次元モデルM0を基準モデルと称する。また、三次元モデルM0、M1、M2の座標系は任意の(すなわち統一されていない)座標系であるものとする。
まず、三次元モデル比較部40は、基準モデルM0の座標系を特定の座標系(以下、これを基準座標系と称する)に変換する座標変換処理を行う。基準座標系の設定基準に特段の限定はないが、それぞれの三次元モデルM0、M1、M2の任意座標系に対する座標変換処理が複雑にならない基準座標系であることが好ましい。基準座標系に座標変換された後の基準モデルをM0 nと称する。
次いで、三次元モデル比較部40は、基準モデルM0 n以外の三次元モデルM1、M2についても、基準座標系への座標変換処理を行う。基準座標系に座標変換された後の三次元モデルをM1 n、M2 nと称する。
そして、三次元モデル比較部40は、これら基準モデルM0 n及び三次元モデルM1 n、M2 nの画像データ50、第一のパラメータ52及び第一の特徴点データ54を取得して、基準モデルM0 n及び三次元モデルM1 n、M2 nの比較動作を行う。
一例として、基準モデルM0 n及び三次元モデルM1 n、M2 nを、ボクセル(voxel)と呼ばれる微細な立方体により構成し、このボクセルの差分を取ることで構造物の変形を際立たせる動作が挙げられる。図12に示す、ボクセルにより構成される三次元モデルの一般的な例を用いて、かかる動作を説明する。
変形前の三次元モデルをViとし、変形後の三次元モデルをVjとすると、ボクセル単位でのこれら三次元モデルVi、Vjの差分Vijを算出すると、変形した部分がボクセルの差分として視認可能な状態で表示されうる。構造物の三次元モデルについても、同様にボクセルで構成してその差分を算出することにより、構造物の変形を容易に視認可能な状態で表示することができ、これにより、構造物の維持管理に利用することができる。
また、他の例として、図14に示すように、三次元モデル比較部40が構造物を同一断面で切断した際の断面形状、言い換えれば断面輪郭を重ね合わせた結果を表示装置12に表示させる。例えば、図14に実線で示す輪郭SIが基準モデルM0 nのものであり、破線で示す輪郭SIが三次元モデルM1 nのものであるとする。輪郭SIの重複の程度に基づいて、構造物の外形を的確に把握することができ、これにより、検査装置10の検査結果を構造物の維持管理に利用することができる。また、構造物の図面データが保管されていれば、この図面データDと輪郭SIとを重複表示させることでも、構造物の維持管理に利用することができる。
次に、図2〜図3、及び図4〜図7のフローチャートを参照して、本実施の形態である構造物検査システムSの動作について説明する。なお、制御部20を構成する各部の説明について詳述した内容については繰り返しの説明を省略することがある。
図2及び図3は、本実施の形態である構造物検査システムSの全体動作を説明するための図であり、図4は、本実施の形態である構造物検査システムSの全体動作を説明するためのフローチャートである。構造物検査システムSの動作が開始されると、まず、ステップS10において、低解像度化部31による低解像度画像データ51の生成動作が行われる。
次に、ステップS11において、第二のパラメータ取得部33により、ステップS10で生成された低解像度画像データ51に基づく第二のパラメータ53の取得動作が行われる。次に、ステップS12において、第二の特徴点取得部35により、ステップS10で生成された低解像度画像データ51に基づく第二の特徴点データ55の取得動作が行われる。
ステップS13では、グループ処理部39により、ステップS10で生成された低解像度画像データ51に基づくグループ化処理動作が行われる。
次いでステップS14では、ステップS13によりグループ化処理動作がされたグループ単位で、除外データ特定部37の手ブレ・合焦判定部37aにより低解像度画像データ51あるいは画像データ50の手ブレ・合焦状態が判定され、いわゆるピンボケ、手ブレした画像データ50が、後述するステップS18における三次元モデル生成部36による三次元モデル生成処理で除外される画像データ50として特定される。
ステップS15では、ステップS13によりグループ化処理動作がされたグループ単位で、除外データ特定部37のパラメータ判定部37bにより、冗長あるいは重複する画像データ50が、後述するステップS18における三次元モデル生成部36による三次元モデル生成処理で除外される画像データ50として特定される。
ステップS16では、空領域処理部38により、画像データ50内に空領域が存在するか否かが判定され、空領域と判定された領域をマスク処理する。
ステップS17では、グループ処理部39により、画像データ50に基づくグループ化処理動作が行われる。次いで、ステップS18では、ステップS14及びステップS15の処理により特定された画像データ50を除外して、ステップS17によりグループ化処理動作がされたグループ単位で、画像データ50に基づくグループ化処理動作が行われる。
ステップS19では、三次元モデル比較部40により複数の三次元モデルの比較処理が行われる。
次に、図5は、図4のステップS16で示した、空領域処理部38による空領域マスク処理動作を説明するためのフローチャートである。
まず、ステップS20では、低解像度画像データ51を構成する画素の中から注目画素を一つ選択する。ステップS21では、注目画素の画像的特徴(色情報、空間周波数など)を算出する。ステップS22では、注目画素の周辺の画素の画像的特徴を算出する。ステップS23では、注目画素の周辺の画素の特徴点を取得する。
ステップS24では、注目画素が空領域の条件を満たすか否かが判定され、空領域の条件を満たす(ステップS24においてYES)と判定されるとプログラムはステップS25に移行し、空領域の条件を満たさない(ステップS24においてNO)と判定されるとプログラムはステップS26に移行する。ステップS24における判定基準は、上述した条件(1)〜(3)に基づく。
ステップS25では、空領域と判定された注目画素をマスク領域として設定する。
ステップS26では、低解像度画像データ51を構成する全ての画素を注目画素として選択したか否かが判定され、全ての画像を注目画素として選択した(ステップS26においてYES)と判定されると、図5に示す空領域マスク処理動作が終了し、全ての画素を注目領域として選択していない(ステップS26においてNO)と判定されると、プログラムはステップS27に移行して次の注目画素を選択する。その後、プログラムはステップS21に戻って、ステップS21〜S26までの動作が繰り返し実行される。
次に、図6は、図4のステップS17で示した、グループ処理部39によるグループ化処理動作を説明するためのフローチャートである。
まず、ステップS30では、画像データ50の第一のパラメータ52が取得される。次に、ステップS31では、表示装置12に表示された画像データ50を示す画像に基づき、操作者が入力装置11を操作することにより指定画像を選択したことによる選択入力情報の入力が行われる。
ステップS32では、指定画像に対応する画像データ50を包含する、グループ対象の画像データ50が、ステップS30で取得した第一のパラメータ52に基づき抽出される。そして、ステップS33では、ステップS32で抽出された画像データ50のグループ化処理動作が行われる。
そして、図7は、図4のステップS19で示した、三次元モデル比較部40による三次元モデル比較処理を説明するためのフローチャートである。
まず、ステップS40では、基準時刻T0の三次元モデル(基準モデルM0)が記憶部21から読み出される。次に、ステップS41では、比較時刻T1、T2の三次元モデルM1、M2が記憶部21から読み出される。
ステップS42では、基準モデルM0の基準座標系への座標変換処理が行われる。次いで、ステップS43では、三次元モデルM1、M2の基準座標系への座標変換処理が行われる。
次いで、ステップS44では、各三次元モデルM0 n、M1 n、M2 nの画像データ50、第一のパラメータ52及び第一の特徴点データ54を取得して、ステップS45では基準モデルM0 n及び三次元モデルM1 n、M2 nの比較動作を行う。
このように構成された本実施の形態である構造物検査システムSでは、構造物検査装置10が、低解像度画像データ51に基づいて三次元モデルを生成する際に除外すべき画像データ50を特定する除外データ特定部37と、除外データ特定部37により特定された画像データ50を除外した画像データ50に基づいて画像データ50が撮像された際の撮像装置に関する第一のパラメータ52を取得する第一のパラメータ取得部32と、除外データ特定部37により特定された画像データ50を除外した画像データ50の第一の特徴点データ54を取得する第一の特徴点取得部34とを有する。
このようにすることで、データ容量が削減された低解像度画像データ51を用いた除外データ特定部37による除外すべき画像データ50の特定作業を高速に行うことができるとともに、除外すべき画像データ50を特定して、この画像データ50を除外して第一のパラメータ取得部32及び第一の特徴点取得部34によるパラメータ取得処理及び特徴点データ取得処理を行うことができ、三次元モデル生成部36による三次元モデル生成処理を高精度に行うことができる。これにより、画像データ50の撮像及びモデル生成に特段のノウハウを必要とせずに、簡易にかつ高精度な三次元モデルを生成することができる。
ここで、除外データ特定部37が第二のパラメータ53及び第二の特徴点データ55に基づいて三次元モデルの生成の際に除外すべき画像データ50を特定しているので、除外すべき画像データ50を的確に特定することができる。
また、第一及び第二のパラメータ52、53が、画像データ50が撮像された際の撮像装置の撮像位置、姿勢及び画角を含むので、除外すべき画像データ50の特定作業及び三次元モデル生成部36による三次元モデル生成処理を簡易かつ高精度に行うことができる。
さらに、除外データ特定部37が、低解像度画像データ51の手ブレ・合焦状態の判定結果に基づいて三次元モデルの生成の際に除外すべき画像データ50を特定する手ブレ・合焦判定部37aと、複数の画像データ50が撮像された際の撮像装置の撮像位置及び姿勢のそれぞれが所定距離以内に近接しているか否かに基づいて三次元モデルの生成の際に除外すべき画像データ50を特定するパラメータ判定部37bとを有するので、除外すべき画像データ50を的確に特定することができる。
さらに、構造物検査装置10が、低解像度画像データ51に基づいて、画像データ50内において空を撮像した領域を特定する空領域処理部38を有し、三次元モデル生成部36が、空領域処理部38により特定された領域に関するデータを除外して構造物の三次元モデルを生成するので、三次元モデル生成部36による三次元モデル生成処理を簡易かつ高精度に行うことができる。
さらに、構造物検査装置10が、入力装置11からの選択入力情報に基づいて少なくとも2つの画像データ50を抽出し、これら画像データ50の第一のパラメータ52に基づいて同一の構造物を撮像した画像データ50を特定し、特定された画像データ50を一つのグループGとして特定するグループ処理部39を有し、三次元モデル生成部36がグループ処理部39により特定されたグループ単位で構造物の三次元モデルを生成するので、三次元モデル生成部36による三次元モデル生成処理を簡易かつ高精度に行うことができるとともに、三次元モデルの管理を簡易に行うことができる。
そして、記憶装置21に複数の日時において構造物を撮像装置により撮像して得られた複数の画像データ50が格納され、構造物検査装置10が、複数の日時における三次元モデルを共通する座標系において比較した結果を表示装置12に表示させる三次元モデル比較部40を有するので、三次元モデル生成部36により生成された三次元モデルを用いて、構造物の維持管理を簡易にかつ精密に行うことができる。
以上、図面を参照して、本発明の実施の形態を詳述してきたが、具体的な構成は、この実施の形態及び実施例に限らず、本発明の要旨を逸脱しない程度の設計的変更は、本発明に含まれる。
例えば、上述の実施の形態である構造物検査システムSでは、検査装置10内に記憶部21を設けていたが、記憶部21を検査装置10とは別体に構成することも可能である。
また、上述の実施の形態である構造物検査システムSでは鉄道構造物を含む構造物を撮像した画像データ50が記憶部21に格納されていたが、構造物の種類に特段の限定はなく、三次元的外形を管理すべき構造物であれば本発明の構造物検査システムS等の適用が可能である。
そして、上述の実施例において、検査装置10を動作させるプログラムは記憶部21に格納されて提供されていたが、不図示の光学ディスクドライブ等を用いて、プログラムが格納されたDVD(Digital Versatile Disc)、USB外部記憶装置、メモリーカード等を接続し、このDVD等からプログラムを検査装置10に読み込んで動作させてもよい。また、インターネット上のサーバ装置内にプログラムを格納しておき、検査装置10に通信部を設けてこのプログラムを検査装置10に読み込んで動作させてもよい。さらに、上述の実施例において、検査装置10は複数のハードウェア要素により構成されていたが、これらハードウェア要素の一部の動作を制御部20がプログラムの動作により実現することも可能である。