以下、本発明に係る実施形態を、図面を参照して詳細に説明する。なお、以下の実施形態に記載する構成は代表例であり、本発明の範囲はそれらの具体的構成に必ずしも限定されない。
<実施形態1>
実施形態1として、社会インフラ点検業務において、個々の撮影画像から点検用画像を生成する際に、対応するデフォーカスマップを生成する為の処理の例を説明する。
図1(a)は、本実施形態に係る情報処理装置100のハードウェア構成図である。図1に示すように、情報処理装置100は、CPU101と、ROM102と、RAM103と、HDD104と、表示部105と、操作部106と、I/F(インターフェース)部107とを有している。I/F107は、さらにメモリカードR/W(リーダー/ライター)108と通信部109が接続されている。CPU101は、中央演算装置(Central Processing Unit)であり、各種処理のための演算や論理判断等を行い、システムバス110に接続された各構成要素を制御する。ROM(Read-Only Memory)102は、プログラムメモリであって、後述する各種処理手順を含むCPU101による制御のためのプログラムを格納する。RAM(Random Access Memory)103は、CPU101の主メモリ、ワークエリア等の一時記憶領域として用いられる。尚、情報処理装置100に接続された外部記憶装置等からRAM103にプログラムをロードすることで、プログラムメモリを実現しても構わない。
HDD104は、本実施形態に係る電子データやプログラムを記憶しておくためのハードディスクである。同様の役割を果たすものとして外部記憶装置を用いてもよい。ここで、外部記憶装置は、例えば、メディア(記録媒体)と、当該メディアへのアクセスを実現するための外部記憶ドライブとで実現することができる。このようなメディアとしては、例えば、フレキシブルディスク(FD)、CD-ROM、DVD、USBメモリ、MO、フラッシュメモリ、SSD(Solid State Drive)等が知られている。また、外部記憶装置は、ネットワークで接続されたサーバ装置等であってもよい。
表示部105は、例えばCRTディスプレイや、液晶ディスプレイ等であって、表示画面に画像を出力するデバイスである。なお表示部105は、情報処理装置100と有線あるいは無線で接続された外部デバイスでも構わない。操作部106は、キーボードやマウスを有し、ユーザによる各種操作を受け付ける。I/F107は、システムバス110に接続され、外部機器からのデータの入出力を行う。メモリカードR/W108は、デジタルカメラやデジタルビデオで撮影されたデータが記録されているメモリカードの読み書きを行う。通信部109は、公知の通信技術により、他の情報処理装置や通信機器、外部記憶装置等との間で、有線又は無線による双方向の通信を行う。
図1(b)は、情報処理装置100の機能構成を示すブロック図の一例である。これらの各機能部は、CPU101が、ROM102に格納されたプログラムをRAM103に展開し、後述する各フローチャートに従った処理を実行することで実現されている。そして、各処理の実行結果をRAM103に保持する。また例えば、CPU101を用いたソフトウェア処理の代替としてハードウェアを構成する場合には、ここで説明する各機能部の処理に対応させた演算部や回路を構成すればよい。
取得部111は、撮像装置によって構造物を撮影することで得られた複数の撮影画像と、それらに対応する複数のデフォーカスマップとを、撮像装置の記憶部から取得する。なお、取得部111が取得し、各機能部とやりとりする対象は、実際には撮影画像の画像データ、およびマップデータに対応する信号であるが、本明細書では単に「画像を取得する」、「デフォーカスマップを取得する」として説明する。
第1生成部112は、複数の撮影画像を少なくともスティッチ合成することにより、構造物の点検用画像を生成する。本実施形態の場合、スティッチ合成、あおり補正、クロップ処理が実行された結果として、点検用画像が生成される。第2生成部113は、第1生成部による点検用画像の生成工程に対応して、複数のデフォーカスマップから複合デフォーカスマップを生成する。本実施形態では、第1生成部112の処理と同様、複数のデフォーカスマップに対して、スティッチ合成、あおり補正、クロップ処理を実行する。保持部114は、HDD104またはRAM103の機能部であり、第1生成部112および第2生成部113が画像処理を実行するための中間データやパラメータを保持する。
表示制御部115は、表示部105に表示させる画像を生成し、出力する機能部である。本実施形態では、第1生成部112に生成された点検用画像に関連付けて、第2生成部113に生成された複合デフォーカスマップが表すデフォーカス量を表示する制御を行う。本実施形態では、撮影画像データとデフォーカスデータのそれぞれクロップされた部分が比較可能であるように表示される。一例として、実施形態1では、デフォーカス量を多段階のレベルに分けて表現し、点検用画像に重畳するように、同レベルのデフォーカス量をもつ領域の境界線と、各領域のデフォーカス量を示す数値データを表示する場合を説明する。
図2は、大規模構造物の一例であるダムの壁面201を、ある撮影位置に設置した撮像装置203(カメラ)により、パノラマ撮影する様子を俯瞰したものである。なお、本実施形態でいうパノラマとは、ある範囲を複数ブロックに分割して複数回撮影する方法である。また、1つの撮影位置から、十分な解像度で点検範囲の全体をパノラマ撮影できない場合には、複数の撮影位置に撮像システムを移動させながらパノラマ撮影を繰り返す。例えば、1回のパノラマ撮影では、壁面201のうちブロック202の部分が複数回に分けて撮影される。撮像装置203は、望遠レンズ装置204を備え、三脚206と電動雲台205を用いて撮像装置に設置され、点検範囲を網羅するように位置をずらしながら複数の画像を撮影する。こうして得られた複数の画像は、のちにスティッチ画像処理されることにより、壁面201を撮影した1つの画像として再構成することができる。
なお、図2における、壁面201と撮像装置203の大小関係および位置関係は、撮像装置203を強調したものであり正確ではない。実施には、点検対象の構造物の多くは撮像装置203に対して極めて大きいものであるため、電動雲台でのパノラマ撮影を行う場合には撮影位置は構造物から適切に離されている。また、パノラマ撮影を行う都合上、パノラマ撮影範囲の端部では、カメラは壁面201をあおり撮影することになる。また、構造物がダムの場合は特に、壁面の正面には水路が存在するために三脚等の設置が難しいこともある。その場合には、撮影位置の制限から構造物を大きくあおるような角度からの撮影が行われることもある。
図3(a)及び(b)を使って、本実施形態において撮影画像に対して行われるスティッチ合成処理について説明する。図3(a)は、構造物の撮影により得られる画像とデフォーカスマップの対応関係の一例を示す図である。そして図4(a)は、スティッチ合成される撮影画像群のファイル名のリストの一例である。このリストは、例えば、撮像装置203の撮影に連動して自動生成されたものを、撮影者によって編集可能としたものである。項目401には、撮像装置203が撮影方向を変更しながら順次撮影していく複数の画像のファイル名が格納されている。しかしながら、必ずしも1つの画角について1回の撮影で得られるとは限らない。人為的なミスや撮影機材の不具合、あるいは、天候や野生動物の予期せぬ動きなどによって、点検対象領域の特定箇所について再撮影が実施され、差し替えが必要になることがある。例えば、ユーザである撮影者や点検者が、撮影された画像群についてチェックを行った際に、点検に利用する画像として不適切な画像が含まれていると判断された場合に、当該箇所の撮影画像についての再撮影が行われ、差し替えが決定される。項目402の列は、撮影の際に、撮影画像に何らかの異常があった場合に、再撮影などにより差し替えられる画像のファイル名が格納されている。
図3(a)において、画像301~306は、図2で例示した壁面201のうちブロック202のパノラマ撮影によって得られた画像群の一部である複数の画像である。そして、デフォーカスマップ307~312のそれぞれは、画像301~306のそれぞれに対応するデフォーカスマップのラスターデータ群を示す。デフォーカスマップの生成方法は、特許文献2等に例示される公知の方法が利用可能である。本実施形態においては、全ての撮影画像において対応するデフォーカスマップが生成されるものとする。また、デフォーカスマップのデータ形式については、撮影画像の特定の位置におけるデフォーカス量(ピントのズレ量)が取得できるデータであればよく、ラスターデータに限るものではないが、本実施形態においては、ラスターデータとして扱うものである。
図4(b)は、図4(a)のリストに記載されている撮影画像のサイズ405と、対応するデフォーカスマップのラスターデータのサイズ506を記録したテーブルデータの一例である。レコード407のサイズ比率は、幅と高さのそれぞれのサイズの比率の一例が記録されている。図4(b)に示す通り、本実施形態では、デフフォーカスマップは、撮影画像に対して1/40のサイズであるものとする。もちろん、本実施形態に利用されるデフォーカスマップの大きさはこれに限られない。
ここで図13(a)のマップ1300~1303は、それぞれ、4枚の撮影画像に対応するデフォーカスマップを可視化した場合の一例を示す。各デフォーカスマップについて、「0」が付けられた領域は、撮像装置の合焦単位において誤差の無い領域である。また、「-1」が付けられた領域は、撮像装置の合焦単位において1単位の前ピンの領域、同様に、「+1」が付けられた領域は、同様に1単位の後ピンの領域を示す。ここで、合焦単位は、合焦の状態(程度)が判断できるようにレベル分けされたものであればよい。例えば奥行き方向5mm、あるいは8mmなどのデフォーカス量の幅を1単位として定義することができる。一例として、撮像装置の撮像素子の大きさと、絞りを含む光学レンズ系による許容錯乱円の大きさによって判定される値がある。また本来、概ね平面である検査対象領域に対して、正対して撮影を行う際には、撮影画像に対して一様な合焦状態となるべきものである。しかし、被写体面の歪みや光学的な歪み、また撮影角度などによって、多くの場合は図13(a)のマップ1300~1303に示される様な、まだら分布を持つ合焦状態となる。本実施形態では、構造物のうち点検対象となる面に合焦させた点検用画像が得られることが望ましい。従って本実施形態の複合デフォーカスマップに表されるデフォーカス量とは、構造物のうち点検対象となる面を合焦位置とした場合の、合焦の程度のずれ量を表す値である。
また、デフォーカスマップは、撮影画像の各画素の相対する位置座標におけるデフォーカス量を示すデータをマップ化したものであり、マップデータを一見しただけでは、点検者はデフォーカス量の情報を識別することは困難である。そのため、一般的にはデフォーカス量を可視化する処理が行われる。デフォーカスマップの可視化方法は、例えば、座標ごとに色やパターンによってデフォーカス量を提示することができる。本実施形態では、デフォーカスマップの座標において、デフォーカス量のレベルが変わる境界線と、境界線間の領域のデフォーカス量を表す代表値を示す。本実施形態におけるデフォーカス量の可視化方法の詳細は図14を参照して後述する。
図3(b)は、図3(a)の画像の301~306を含む画像群を用いてスティッチ合成を行う事で、高精細なブロック202の撮影画像を得る過程を説明する図である。画像301~306の撮影画像群は、ブロック202について、左上角から右方向に順次撮影を行って得た撮影画像であり、一部を重複させながらスティッチ合成される。なお、図3(b)において、画像301~306は、重なりを紙面において分かり易く表現する為に、徐々に下方にずれ、一部を重ね合わせたスティッチ合成が行われているが、実際にはそれぞれの撮影画像の特徴点を基に、スティッチ合成の位置合わせが行われる。画像313は、画像の301~306を含む画像群を横方向、及び縦方向にスティッチした結果として得られるブロック302の撮影画像の模式図である。
図5(a)は、図4(a)のリストに記載されている撮影画像を用いて行われたスティッチ合成処理の結果の状態を示すパラメータのリストの一例である。項目501は使用された撮影画像のファイル名、項目502は、合成後の画像において各撮影画像が配置された座標を示す配置位置データをX座標とY座標が格納される。図5(a)の場合座標は、最初の画像(左上の画像)の位置が基準となる。また、項目503は、各撮影画像のうち、合成後の画像において使用される領域を示すマスク用ラスターデータである。項目503のマスク用ラスターデータと合致する各撮影画像の部分領域と、項目504に格納される重ね合わせの順番により、スティッチ合成後の画像で最終的に表示される画像領域が決定される。つまり、より上位層に重ね合わされ、マスクにより隠されていない領域が、表示される画像領域となる。図5(b)は、スティッチ合成により最終的に合成された画像に使用された合成枚数と、合成画像のサイズが記録されているテーブルデータである。
そして本実施形態では、撮影画像とセットで取得されるデフォーカスマップにも、撮影画像のスティッチ処理に対応する画像処理が行われる。例えば、図3(a)の307~312を含むデフォーカスマップ群は、301~306を含む画像群とセットとして取得されるものである。デフォーカスマップのスティッチ合成については、図11のフローチャート及び図13を参照して後述する。
次に、図6、図7を使って、スティッチ合成処理後の撮影画像に対して実行される画像処理を説明する。まず、本実施形態では、構造物を撮影する際、一部があおり撮影となるため、あおり補正処理(正対化処理、オルソ補正処理という場合もある)を行う。あおり補正処理を行うことで、壁面の見かけ上の寸法が画像上で一様となるので、点検時に、壁面に生じた変状の大きさを精度よく推定することができる。例えば、ひび割れを点検する場合、あおり角度が付いた撮影画像では、同じ幅のひび割れでも、画像の奥行きが深い位置に写るほど細く、手前に写るほど太く見えてしまう。あおり補正を行うことで、奥行きを考慮せずに幅の比較が可能となる。
このように、所定の条件でのパノラマ撮影と、スティッチ合成処理、及びあおり補正処理により、実質的に点検対象の構造物を正面から見た高解像度の画像を得ることができる。ただし、この画像データは大きなデータサイズを持つ。従って、表示処理、あるいは、検知器による変状検知処理等を実行する場合に負荷を低減させるために、適切なデータサイズの部分画像に切り分けると都合がよい場合がある。しかしながら、部分画像のクロップ(切り取り)は、可能な限り点検作業に影響しないようにその範囲を決定されるのが望ましい。例えば、ひび割れに沿って画像を切ってしまうと、そのひび割れは画像上で確認するのが困難になってしまう。そこで本実施形態では、コンクリート構造物である壁面201の場合は、構造上のユニットの境界線を利用して画像のクロップ範囲を決める。構造上のユニットとは、製造過程において1ユニットとして扱われた範囲であり、設計図面等により知ることができる。また、コンクリート壁面においてその境界線が視認できることも多い。境界線は、点検において確認すべきひび割れとは異なる性質のものであることから、境界線で画像を切ることで、ひび割れなどの点検に対する影響を抑えることができる。以下、上述した画像処理の一連の流れを図面に沿って説明する。
図6(a)は、図3(a)の画像群からスティッチ合成を行う事で得られた撮影画像の一例を示す。画像601は、図3(b)で示した画像313に相当する画像で、画像313はスティッチされる前の画像の輪郭を示して合成の状態を示していたのに対し、画像601は画像の内容(撮像された壁面201)を表示している。画像601は、大規模構造物である壁面201を、地面に設置された撮像システムによって撮影した為に、下部から上部に向かって縮小された画像となっている。境界線602は、コンクリート製の壁面201の構造上のユニットの境界が視認されているものであり、点検において注意すべきひび割れではない。その為、ブロック202のうち、境界線上に定義した点605~608の4点で示された領域607は、台形型の領域となっている。
一方、図6(b)は、壁面201の大規模構造物の設計図面の一部である。つまり図6(b)は、ダム壁面201を正対した位置から見た構造情報が示されている。境界線608は、構造上のユニットの境界であり、図6(a)の境界線602に対応している。境界線上に定義された点609~612の4点で示された領域613は、図6(a)の領域607に対応する。本実施形態では、図6(b)の図面に基づいて、図6(a)のスティッチ合成された撮影画像をあおり補正する。一例としてここでは、行列式を使って射影変換が行われる。変換行列の算出には4つ以上の対応点ペアが必要となる。例えば、領域607の4頂点である点603~606と、領域613の4頂点である点609~612が4つのペアとなる。図7(a)は、図6(a)の画像を、図6(b)の図面に基づいて射影変換(あおり補正)した結果の一例を示す。画像701のうち、点702~705は、点603~606及び点609~612に対応するものである。領域607は、領域706に対応する。
図8(a)及び(b)は、4つの対応点のペアと、それらから算出されるホモグラフィ行列の形式の一例を示している。図8(a)において、”src”のキーで示される4点の座標は、合成された撮影画像上の4点の位置を示すデータであり、”dst”のキーで示される4点の座標は、”src”の4点の座標と対応する図面上の4点の位置を示すデータである。xs1~xs4、ys1~ys4には撮影画像上の座標値が、そしてxd1~xd4、yd1~yd4には図面上の座標値が入る。そして、図8(b)は、射影変換(正対化)に使用される行列式の一例である。変換行列は、変換前後の4点の座標のセットから算出される。この行列式によって、撮影画像の各画素位置が変換されることにより、図面に合わせて正対化された画像が生成される。なお、ここでの変換行列の算出方法には、直接解法や反復解法など様々な算出方法を用いることができる。
本実施形態では、あおり補正後の画像を、後段での利用方法に適したサイズの画像としてクロップする。本実施形態では、後段において点検者が目視でひび割れを確認するために画像を表示する、あるいは、検知器を用いた変状検出処理を実行する。クロップ位置は、例えば、あおり補正後の画像中でユーザが任意に指定した矩形領域で決定される。矩形領域の指定は、例えば対角の2点の座標を指定することにより行われる。図10(a)は、クロップ領域を指定する2点の座標データを保持するデータ形式の一例である。x座標とy座標に指定されるのが画像701内の座標である。ユーザは、構造上のユニットの境界線を参考にしながらでクロップすることにより、クロップ画像の縁付近のひび割れ点検への影響を抑えることもできる。図7(b)は、図7(a)の画像701をクロップ処理した画像707の一例を示す。
以上、本実施形態において、構造物の点検に用いる点検用画像の生成を目的として構造物を撮影した画像群に行うスティッチ合成処理、あおり補正処理、クロップ処理について説明した。ただし、このうち、あおり補正処理、クロップ処理については、構造物の種類や大きさ、撮影環境によっては必ずしも必要ではない。例えば、構造物のうち点検が必要な部分が限定されている場合には、あおり角度をつけずにそれらの面を撮影可能な場合もある。また、構造物の大きさによっては、スティッチ後の画像サイズが、そのまま後段の処理に利用可能な場合もある。そのような場合には、パノラマ撮影された画像を少なくともスティッチ合成した結果を点検用画像とすればよい。また、本実施形態では、撮影画像についてあおり補正処理、クロップ処理等の一部画像処理が不要である場合、対応するデフォーカスマップについても同様に対応する画像処理は省略される。
本実施形態では、構造物を撮影した画像群から点検用画像を生成する生成工程に応じて、撮影した画像に対応するデフォーカスマップにも画像処理を施し、複合デフォーカスマップを生成する。図11のフローチャートを参照して、点検用画像の生成に伴って複合デフォーカスマップを生成する処理の流れを説明する。本実施形態では、情報処理装置100において起動されたアプリケーションから、点検用画像を生成する機能が起動されることで、S1101の処理が開始される。以下、各工程(ステップ)は、それら符号の先頭にはSを付与して説明することとする。
点検対象の構造物に対する撮影が行われ、撮像装置203により、図3(b)に示すような、撮影画像301~306と、対応するデフォーカスマップ307~312が取得された状態であるとする。これらの画像およびデフォーカスマップは、例えば記憶媒体や、サーバ装置に記憶されている。S1101では、取得部111により、図4(a)の参照リストを参照し、格納されたファイル名に従って、記憶媒体等から複数の撮影画像(以下、「撮影画像のセット」と称する)を取得する。S1102では、取得部111が、参照リストに従い、必要に応じて、差し替え用の撮影画像との入れ替えが行われる。図4(a)の場合には、レコード403において、撮影画像セットのうち“IMG_2010.JPG”が、後に撮影された“IMG_5032.JPG”によって差し替えられている。従ってCPU101では、読み込まれている画像セットのうち“IMG_2010.JPG”のデータを消去し、“IMG_5032.JPG”の画像データに置き換える。
S1003では、取得部111により、差し替えが完了した撮影画像セットのそれぞれに対応するデフォーカスマップの情報が記憶媒体等から取得される。取得部111は、取得した撮像画像の画像サイズ、デフォーカスマップの画像サイズをそれぞれ取得し、図4(b)のリストに書き込みRAM103等に保持する。S1104では、取得部111により、図4(b)のリストから、撮影画像のサイズ405とデフォーカスマップのサイズ406が取得され、画像変換パラメータとなるサイズ比率が算出される。
S1105では、第1生成部112により、図4(a)に示される撮影画像のセットについてスティッチ合成が実施される。なお、ここで行われるスティッチ合成は、図3(b)に示した様に、撮影範囲を重複して撮影された複数の画像を、それぞれ抽出した画像の特徴点に基づいて位置を合わせた上で合成するものである。また、重複した画像の部分については、画像のコントラストが高い画像を選択し、また、画像の境界領域についてはブレンディングや露出補正を行う事で、合成後の画像において、繋ぎ目が目立たない様な処理が行われる。このようなスティッチ合成の処理は、公知の方法を利用することができる。なお、本実施形態においては、重複した画像の部分の処理については、説明を簡単にする為に、後述するマスクデータと重ね合わせの情報に基づいて重ねた画像の部分が表れるものとしている。スティッチ合成された撮影画像の例が図6(a)の画像601である。S1106は、第1生成部112により、スティッチ合成処理に使用された各種パラメータを保持するステップである。本実施形態の場合は、図5(a)および(b)で示したリストの形式で、保持部114に情報が保持される。
なお、本実施形態ではスティッチ合成前の撮影画像のデータは記憶媒体に保持されている。S1105~S1106の処理が実行された後は、これらの画像を読み込み、図6(a)のリストに記載されたパラメータを適用すれば、再びS1105のスティッチ合成処理を実行することなく、スティッチ合成後の画像を再現することが可能となる。
次に、S1107では、第2生成部113により、撮影画像のスティッチ合成処理もパラメータが、デフォーカスマップのスティッチ合成処理に用いるパラメータに変換される。本実施形態では、図5(a)のパラメータリストのうち、項目502の配置位置データ、及び項目503のマスク用ラスターデータの情報について、S1104で算出された座標変換パラメータである画像のサイズ比率に基づき、値の変換が行われる。図5(b)に示す通り、撮影画像からデフォーカスマップへのサイズ比率である1/40であるので、撮影画像のスティッチ合成に用いられたパラメータに1/40の変換が実行される。その結果、配置位置データは、X座標とY座標それぞれの値が1/40になり、マスク用ラスターデータは、縦と横のサイズが1/40に縮小されたラスターデータに変換される。
S1108では、第2生成部113により、図4(a)の撮影画像セットに対応するデフォーカスマップのセットに対して、スティッチ合成が実行される。すなわち、変換された配置位置データに従ってデフォーカスマップが配置され、変換されたマスク用ラスターデータに基づいて切り出されたそれぞれのデフォーカスマップの領域が、図5(a)の項目504の重ね合わせの順番情報によって重ね合わされる。S1108までの処理によって、スティッチ合成された撮影画像と対応する、合成された複合デフォーカスマップが生成される。
S1109では、取得部111により、所定の記憶装置から点検対象領域を含む構造物の図面データを取得する。本実施形態の例では、図6(b)に示すように、図3のブロック202の部分を含む図面データが取得される。S1110では、第1生成部112が、スティッチ合成画像においてユーザによって指示される指示点の情報を取得する。図6(a)の例では、領域607を形成する点603~606のデータが指示点として取得される。S1111では、第1生成部112が、同様に図面データにおいてユーザによって指示される指示点の情報を取得する。図6(b)の例では、領域613を形成する点609~611のデータが指示点として取得される。
S1112では、第1生成部112により、スティッチ合成画像のうち指示点によって特定される領域の射影変換(あおり補正)が実行される。射影変換処理は、図9に例示したホモグラフィ行列を用いる方法によって行われる。図9(a)は、図6(a)の点603~606の指示点を図8(a)の”src”データとし、図6(b)の点609~612の指示点を”dst”データとする場合の具体例を示す。図9(a)の値から算出される変換行列式が図9(b)のようになる。変換の結果として、図6(a)のスティッチ合成画像が射影変換(正対化)され、図7(a)の画像が得られる。図6(a)の領域607は、台形状の四角形から、図6(b)の図面に示された領域613に整合するように、長方形状の領域705に変換されている。この射影変換によって、撮影画像の点検対象領域における位置や大きさや向きは、図6(b)の図面データとの対応するものとして扱うことができる。つまり、あおり補正後の画像内の位置や大きさや向きは、図面データに定義されたスケールや座標軸に基づいて表現することができる。S1003では、第1生成部112により、S1110及びS1111で取得された指示点データを保持部114に保持する。
S1114では、第2生成部113が、S1113で保持された指示点のデータに基づいて、デフォーカスマップ上での指示点の座標位置を求める。すなわち、射影変換すべき領域を特定する。より具体的には、S1004で算出された座標変換パラメータに基づいて、複合デフォーカスマップにおける対応指示点の座標データに変換する。本実施形態の場合、例えば、図6(a)の画像601の点603~606の指示点の座標データについて1/40の変換が行われる。またS1114において、S1113で保持された図6(b)の点609~611の対応指示点の座標データについても同様に、座標変換パラメータに基づいて、座標データの変換が行われる。
S1115では、第2生成部113により、S1114で変換された指示点のデータに基づき、S1108でスティッチ合成された複合デフォーカスマップの射影変換(正対化)が行われる。S1015までの処理によって、図4(c)の正対化された撮影画像と対応する、正対化された複合デフォーカスマップが生成される。
S1116では、正対化された撮影画像である図7(a)の画像701において、点検の対象となる部分領域を切り出す(クロップする)ために、第1生成部112により、部分領域を特定する指示点をユーザ操作から取得する。図7(a)の例では、点702~705の点検対象領域を含むように、その周辺部分を切り出す為の矩形領域選択がユーザによって行われ、当該選択された矩形領域の対角点の情報がクロップ指示点として取得される。
S1117では、第1生成部112により、指定された矩形領域をクロップする処理が実行される。本実施形態では、S1116で取得したクロップ指示点に基づいて、クロップの処理が行われる。図7(b)の画像707は、図7(a)の画像701をクロップした場合のイメージ図であり、点検対象である構造物のブロック202に相当する領域706とその周辺のみが切り出されている。S1118では、第1生成部112により、一連の画像処理が実行された結果の画像が点検用画像として出力される。例えば所定の記憶領域に画像ファイルとして保存される。また、表示制御部115により所定の表示画面に表示される。本実施形態における点検用画像の表示形態については、図11のフローチャート及び図13を参照して後述する。図7(b)の画像707は、本実施形態で生成される点検用画像の1つである。S1119では、第1生成部112により、クロップ指示点の情報が保持部114に保持される。例えば、座標データは図10(a)に例示した形式により保持される。図10(b)は、具体的な座標データによる例である。
S1020では、第2生成部113により、S1019で保持された撮影画像のクロップ領域に用いられた対角点座標が、座標変換パラメータに基づいて、複合デフォーカスマップをクロップするための座標データに変換される。S1121では、第2生成部113により、変換された対角点の座標データに基づいて、正対化された複合デフォーカスマップについてクロップの処理が実施される。S1123では、第2生成部113によりクロップ処理された複合デフォーカスマップが、点検用画像(画像707)に対応する複合デフォーカスマップとして、出力される。本実施形態では、所定の記憶領域に画像ファイルとして保存される。また、表示制御部115により、所定の表示画面において点検用画像に関連付けて表示される。表示制御部115は特に、点検用画像と複合デフォーカスマップの対応部分を比較可能であるような表示制御を行う。表示処理の詳細は後述する。以上が、本実施形態における点検用画像の生成と、点検用画像の生成工程に合わせて複合デフォーカスマップを生成する処理の流れである。
ここで、図13を参照して、複合デフォーカスマップが生成される工程の各段階の具体例を説明する。なお本来であれば、点検用画像を生成するためにスティッチされる画像は多数であるが、ここでは説明の簡単のため、4枚の撮影画像に対応するデフォーカスマップを処理する場合を説明する。図13(a)のマップ1300~1303は、構造物をパノラマ撮影して得られた複数の画像のうち4枚に対応するデフォーカスマップである。
図11のS1108において、デフォーカスマップに対するスティッチ合成が行われる際には、対応する撮影画像に用いられたパラメータを基に、合成する画像の配置や、合成後に使用される領域や重ね合わせが決定される。図13(b)のマップ1304は、は、マップ1300~1303のデフォーカスマップが、対応する撮影画像のスティッチ合成処理に応じて座標変換されたパラメータによりティッチ合成された結果を示す。これは、S1105で生成されたスティッチ合成画像(点検用画像)に対応する複合デフォーカスマップである。また、マップ1305は、合成配置の際の枠を表示せず、複合デフォーカスマップのみを表示した場合を示す。撮影画像のスティッチ合成においては、画像から得られる特徴点に基づいて位置合わせを行い、境界のブレンド処理などを行うために、画像の接続部分はなめらかにつながる。それに対して、デフォーカスマップの持つデフォーカス量データは、対応する撮影画像の画像情報(内容)とは無関係であるため、デフォーカスマップのスティッチ合成結果においては滑らかではない不連続な境界線が現れる場合がある。
図11のS1115においては、スティッチ合成された複合デフォーカスマップに対する射影変換(あおり補正)が行われる。ここで利用されるパラメータはS1114において、撮影画像のあおり補正に利用されたパラメータを変換したものである。図13(c)のマップ1306は、図13(b)のマップ1305を、射影変換した結果である。これは、S1112で生成されたあおり補正画像(点検用画像)に対応する複合デフォーカスマップである。さらにS1121では、あおり補正(正対化)されたデフォーカスマップに対して、クロップ処理が実行される。クロップに利用されるパラメータは、対応する撮影画像のクロップ処理に利用された指示点の座標を座標変換したものである。図13(c)のマップ1307では、座標変換された指示点に基づき、クロップされる矩形領域がデフォーカスマップ上に表示される。この状態は、図7(a)の画像701に対応している。そしてマップ1308は、クロップ後の複合デフォーカスマップである。本実施形態では、点検者に対して、最終的に生成された図7(b)の点検用画像と関連付けて、マップ1308が提示される。
ここまで説明した様に、本実施形態では、複数の撮影画像に対して多段の画像変換処理を行うことで点検者が点検を行う為の点検用画像を生成する工程に応じて、複数の撮影画像に対応する複数のデフォーカスマップから複合デフォーカスマップを生成する。その際、複数の撮影画像に対して行われる画像変換処理のそれぞれで利用されたパラメータを保持し、撮影画像とデフォーカスマップの大きさの違いに基づいて変換したパラメータを利用する。この結果、撮影画像に多段の画像変換処理を行っても、複合デフォーカスマップから画像処理後の点検用画像の任意の位置に応じたデフォーカス量の情報を得ることができる。
次に、本実施形態において、点検用画像におけるデフォーカス量の分布をユーザである点検者に提示するための表示処理について説明する。図12は、点検用画像に複合デフォーカスマップを重畳して表示する処理の流れの一例を示すフローチャートである。本実施形態では、図11のフローチャートで示した点検用画像と複合デフォーカスマップの生成処理が完了したのに応じて、S1201の処理が開始される。S1201では、表示制御部115により、S1118で出力された点検用画像が取得される。そして、S1202ではS1122で出力された複合デフォーカスマップが取得される。さらにS1203では、表示制御部115が、S1104で算出された点検用画像とデフォーカスマップの座標変換パラメータを取得する。S1204では、表示制御部115により、表示部105に表示される所定の表示画面に、点検用画像が表示される。図14(a)のウィンドウ1400は、S1204で表示される表示画面の一例を示す。ウィンドウ1400には、点検用画像として、図7(b)の画像707が表示されている。例えば点検者は、ウィンドウ1400の操作により点検用画像を拡大するなどして、点検対象エリア(ブロック202)の状態を点検することができる。
次に、S1205では、表示制御部115が、ユーザからデフォーカス量の表示指示があるかを判定する。デフォーカス量の表示指示は、例えばキーボードの操作や、点検用画像上にカーソルを合わせてのマウスの右クリックなどによって受け付けられる。あるいはウィンドウ1400に、表示指示を受け付けるための操作部品を設けてもよい。ユーザからのデフォーカス量の表示指示が受け付けられた場合、S1206に進む(S1205でYes)。ユーザからのデフォーカス量の表示指示が受け付けられない場合、S1210に進む(S1205でNo)。
S1206では、表示制御部115が、S1202で取得したデフォーカスマップに対して、S1203で取得した座標変換パラメータを適用した、デフォーカスマップの表示サイズの変換を行う。例えば、図4(b)の例のようにデフォーカスマップが撮影画像に対して1/40のサイズであるなら、デフォーカスマップの縦横を40倍することで撮影画像と同サイズに揃えることができる。表示サイズを揃えるのは、点検用画像と複合デフォーカスマップを重畳して表示させるためである。
S1207では、表示制御部115が、複合デフォーカスマップの各座標が持つデフォーカス量のデータから、デフォーカス量のレベルの境界線をなす座標情報を抽出する。S1208では、表示制御部115が、境界線間の領域のデフォーカス量を示す数値データを選択する。例えば、デフォーカス量が1単位未満となる領域では「0」、前ピン側に1単位のデフォーカス量では「-1」の数値が選択される。S1209では、表示制御部115により、点検用画像上に境界線と数値データを重畳して表示する処理が実行される。ただし、境界線で区分された領域の大きさによっては、数値データは一定以上の間隔で分散するように複数個所に表示される。図14(a)のウィンドウ1401は、ウィンドウ1400の内容が重畳表示により切り替わった後の状態を示している。画像1402では、図13(c)で示したマップ1308から抽出された境界線と数値データが、画像707の上に重畳されている。
一方、S1210では、表示制御部115が、点検用画像の表示を終了する指示がユーザから入力されたかを判定する。ユーザからのデフォーカス量の終了指示が受け付けられた場合、処理は終了する(S1210でYes)。ユーザからのデフォーカス量の表示指示が受け付けられない場合、S1206に戻る(S1210でNo)。
以上説明した通り、本実施形態では、点検用画像にデフォーカスマップから得たデフォーカス量情報を重畳表示することができる。これにより、点検者は、点検用画像に対して、デフォーカス量を参考にしながら、点検対象の変状に対する適切な判断基準を適用することができる。例えば、ひび割れの幅などをより正確に推定する等、精度の高い点検業務を行うことが可能となる。
なお、S1209で表示された複合デフォーカスマップの情報(境界線、および数値データ)は、一定時間経過後にウィンドウ1401から消去され、再び点検用画像のみが表示されるようにしてもよい。あるいは一定時間ごとに、重畳表示の有無が切り替わるように制御することもできる。また、図12のフローチャートの一連の処理に加え、複合デフォーカスマップの重畳表示を中止して、再び点検用画像のみを表示させるためのユーザ操作を受け付け、それに応じる処理を加えてもよい。また、複合デフォーカスマップの情報を重畳している間は、同じレベルのデフォーカス量の領域を同じ色に色分けすることで、デフォーカス量の違いをより分かりやすく表現してもよい。色分けによってレベルの違いを表現できる場合には、数値データの表示は省略されてもいい場合がある。あるいは、ユーザがカーソル操作等で指定した領域のみ、数値データを追加表示するような変形も可能である。
また、実施形態1では、点検用画像とデフォーカス量の情報とを重畳表示する例を説明したが、さらに他の情報を、重畳したり、あるいは切り替えたりして表示するように変形してもよい。例えば、点検作業において点検者によってトレースされたり、検知器によって点検用画像から検知されたりして得られるひび割れデータ(ベクタデータ)をさらに表示してもいい。なお検知器としては、画像を入力データ、画像に写るひび割れをトレースしたひび割れデータを出力データとする学習データの組合せにより機械学習された学習済みモデルを利用可能である。その場合、切り替え指示はキーボードやマウスの操作によって受け付けられてもよいが、例えば図14(b)のウィンドウ1403のようにチェックボックス形式の操作部品を設けてもよい。ウィンドウ1403では、点検用画像とデフォーカス量のチェックボックスがチェックされていることで、ウィンドウ1401と同様に画像1402が表示されている。
このように、複合デフォーカスマップを重畳のON/OFFを切り替えられるような変形によれば、デフォーカス量と比較しながら行う点検作業がより効率化される。
<変形例1>
実施形態1に対して、点検用画像にデフォーカス量の情報が重畳表示されたことを利用して、点検用画像の表示範囲を絞り込む機能を追加する例を変形例1として説明する。変形例1では、点検用画像のうちデフォーカス量の境界線で区分された領域のうち、ユーザ操作によって選択された領域を特定し、特定された領域を表示し、他の領域の表示を非表示とする。
図15は、変形例1において、デフォーカスマップの情報に基づく点検用画像の選択表示を行う処理の一例を示すフローチャートである。図12と同じ処理を行う工程には同じ番号を付し、ここでは説明を省略する。
変形例1では、S1209において、点検用画像にデフォーカス量の境界線と数値データが重畳表示されると、S1501に進む。S1501では、表示制御部115が、ユーザからの領域選択操作を受け付ける。S1502では、表示制御部115が、複合デフォーカスマップのうち、ユーザ操作で選択された領域と同レベルのデフォーカス量を持つ全ての領域を選択する。S1503では、表示制御部115が、選択された領域以外の他の領域を非表示とする。つまり、点検用画像のうち選択された領域部分を表示し、他の領域を透明度の低い色で塗りつぶすことで非表示とする。より具体的には、表示制御部115がマスクデータを生成し、所定の色を着色して点検用画像に重畳する。変形例1では、S1210においてユーザの終了指示が受け付けられない場合(S1210でNo)、S1501~S1503の処理をユーザ操作に従って繰り返す。
図16(a)の画像1601は、変形例1において、ユーザである点検者に、点検用画像内の領域の選択をさせる為にウィンドウ1401に表示される画像の例である。画像1601は点検用画像807に複合デフォーカスマップ1308の情報が重畳された画像1402に対応している。図16では図面の簡単のため、ウィンドウ1401の周辺部を省略し、ウィンドウ内に表示される画像部分のみを表示する。図16(b)の画像1601~1607は、ユーザによりデフォーカス量毎に、対応する領域のマスクデータと、点検者に提示する点検用画像の例を説明するものである。
画像1602は、ユーザである点検者が、画像1601に表示された情報に基づき「―1」のデフォーカス量に該当する領域1608を選択したのに応じて、S1502で「―1」のデータを持つ全ての領域が選択された複合デフォーカスマップを表す。なお、画像1602においては、選択された領域が黒色で表示されている。表示部105においては、ユーザである点検者に対しては、選択された領域またはその輪郭等を短時間点滅させるなどの表示制御を行ってもよい。このように選択操作の結果をフィードバック表示することで、選択の誤りの有無をユーザが確認しやすくなる。
画像1603は、S1503の処理によって、ユーザである点検者に提示される点検用画像の一例を示す。画像1603では、点検用画像807のうち、ユーザが画像1601で選択した領域1608と同じ「―1」のデータを持つ点検用画像の領域のみが表示されている。以下同様に、画像1604は、画像1601においてデフォーカス量が「0」である領域1609が選択された場合の複合デフォーカスマップの選択状態を示す。この場合に、点検者に提示される点検用画像の態様が画像1605に示される。画像1606では、デフォーカス量が「0」である領域のみが表示され、他の領域は非表示となっている。また、画像1606は、画像1601においてデフォーカス量が「+1」である領域1609が選択された場合の複合デフォーカスマップを示し、画像1607は、その場合に点検者に提示される点検用画像である。
変形例1によれば、点検者は、同一のデフォーカス量を持つ領域、すなわち同一の判断基準を用いて点検作業を行うことができる領域を絞り込んで点検作業を行うことができ、点検作業の効率化が可能となる。
<変形例2>
変形例2においては、点検用画像に対応する複合デフォーカスマップの情報を、さらに点検用画像のうち遮蔽された領域(以下、遮蔽領域)の特定及び除去に利用する例を説明する。橋梁の床板等を点検対象として、下部から見上げる形で撮影を行う場合、長い橋梁全体を一度に撮影することは困難である。そのため、撮影場所を移動させて複数回に分けての撮影が行われることが多い。また、全体のうち一区画分の床板を点検対象として撮影する場合であっても、実施形態1で説明したように、高解像度で床板表面を撮影するために、スティッチ合成を前提としたパノラマ撮影(分割撮影)が行われる。しかしながら、構造物の構造によっては、橋梁を支える斜材構造物などによって床板の一部が遮蔽され、点検用画像に写らない場合がある。このような場合には、遮蔽領域を、別の撮影位置で撮影された画像を用いて置き換えという遮蔽物の除去作業が行われている。
ここで橋梁の床板を点検対象とする場合の具体的な環境を例示する。変形例2においても、実施形態1の図2で例示したものと同様の撮影システムが利用可能である。図17(a)及び図17(b)は、点検対象の橋梁1701の床板の区画1702に関する撮影方法を模式的に表す図である。図17(a)は、橋梁1701を下面から見た図、図17(b)は側面図であり、橋梁1701については図17(a)における線1703に相当する断面図を示す。ここで、黒色で示される領域1706は、面は、橋梁の斜材構造物1709の断面である。領域1706は、区画1702を撮影する場合、撮像装置1704からは、床板のうち位置1707の部分を遮蔽する。
また、撮像装置1705は、区画1702の隣の区画を分割撮影する目的で、撮影システムが配置される位置である。しかしながら、撮像装置1705において電動雲台等により床板に対する角度を変更しながら連続撮影する場合、区画1702を画角に収めることが可能である。そして、撮像装置1705から区画1702を撮影した場合には、領域1706によって遮蔽される部分は位置1708である。つまり、撮像装置1704からは撮影されなかった位置1707の部分が、撮影位置1705からは撮影されている。従って、撮像装置1704から撮影された複数の画像から区画1702の点検用画像の生成に当たり、遮蔽された位置1707を含む部分を、撮像装置1705で撮影された画像の一部を使って置き換えることが可能となる。なお、撮像装置1704および撮像装置1705は、異なる撮像装置であってもよいが、第1の撮像装置を移動させる場合も含む。
しかしながら、従来は、床板のうち遮蔽されていた部分を他の画像で置き換えるためには、点検用画像から、人手により、遮蔽物となっている斜材構造物の領域を、切り出す作業が必要であり、非常に手間が掛かるものであった。そこで変形例2では、遮蔽物と床板の間の距離が、ピント位置のずれよりも大きいことから、デフォーカス量の大きさに基づいて遮蔽領域を特定する。
変形例2に係る情報処理装置100も、実施形態1の図1(a)で示したのと同じハードウェア構成のものが利用できる。また、情報処理装置100の機能構成には、図1(b)に示される通り、実施形態1と同様の構成に加えて特定部116が追加される点が特徴となる。特定部116もまた、CPU101が、ROM102に格納されたプログラムをRAM103に展開し、後述する各フローチャートに従った処理を実行することで実現される。特定部116は、点検用画像と対応する複合デフォーカスマップの情報に基づいて、点検対象の構造物のうち点検対象となる面よりも手前に存在する物体によって遮蔽される遮蔽領域を特定する。本実施形態では、特定された遮蔽領域を、撮影位置の異なる画像の一部で置き換えることで、点検用画像が生成される。また、同様にデフォーカスマップにも一部置き換え処理が実行される。
図18は、変形例2において情報処理装置100に実行される、遮蔽物除去の処理の一例を示すフローチャートである。変形例2では、実施形態1で説明した図11のフローチャートに従った処理において、S1115の処理を実行した後に、図18のフローチャートの処理が挿入される。まず、S1801の処理では、特定部116により、床板の設計図面に対して射影変換された点検用画像(S1112で生成された点検用画像)が取得される。そしてS1802の処理では、特定部116により、点検用画像に合わせて射影変換されたデフォーカスマップ(S1115で生成された複合デフォーカスマップ)が取得される。
S1803では、特定部116により、複合デフォーカスマップからデフォーカス量が基準値を超える部分領域を抽出される。S1804では、特定部116により、S1803で抽出された領域が所定量以上存在するかが判定される。所定量は例えばピクセル単位の閾値として1以上の値が予め定義される。抽出された領域が所定量以上存在する場合(S1804でYes)、S1805に進む。抽出された領域が所定量以上存在しない場合(S1804でNo)、図18のサブフローチャートの処理は終了し、図11のS1116に進む。
S1805では、特定部116が、抽出された領域ごとにS1806~S1814の処理が繰り返されるように制御する。また、S1806では、点検対象領域(例えば区画1702)を、他の撮像装置から撮影した画像ごとに、特定部116が、S1807~S1813の処理が繰り返されるように制御を行う。
S1807では、特定部116により、点検対象領域を他の撮像装置から撮影した画像のうち、カレントの処理対象の画像について、点検対象領域の図面に合わせたあおり補正(正対化処理)を実行する。すなわち、S1801で取得された点検対象画像と同じ座標系に射影変換する。射影変換の方法は実施形態1で説明したのと同様の方法が利用できる。S1808では、特定部116により、カレントの処理対象の画像について、対応するデフォーカスマップが取得される。S1809では、特定部116により、S1808で取得されたデフォーカスマップから、デフォーカス量が基準値を超える部分領域を抽出される。本実施形態では、S1803の判定処理に利用されたのと同じ基準値が用いられる。S1810では、特定部116により、S1809で抽出された部分領域が、点検用画像の座標系において、S1803において点検用画像から抽出された部分領域と一致しているかが判定される。一致している場合(S1801でYes)、S1806に戻って、次の画像をカレント画像として処理を繰り返す。一致していない場合(S1801でNo)、S1811に進む。
S1811では、S1803で点検用画像から抽出された部分領域を、S1809でデフォーカスマップから抽出された部分領域に対応する撮影画像の部分領域で置き換える。なお、ここでいう置き換えには、点検用画像から対象領域を切り出して、他の画像から切り出した領域に置き換える処理の他、点検用画像上に、他の画像から切り出した領域を上書きする処理を含む。S1813では、点検用画像(撮影画像)と同様に、複合デフォーカスマップでも部分領域の置き換えを実行する。この時、実施形態1と同様、置き換えに係る座標情報を、座標変換パラメータを用いて変換した上で、置き換え処理を実行する。
なお、図18のフローチャートでは、点検用画像の遮蔽領域を、異なる撮影位置から撮影された別の1枚の画像を使って置き換える例を説明したが、複数の画像を使っても構わない。その場合は、例えば、S1810で領域の一致の有無を判定する処理において、全領域の一致ではなく一部の領域の重複を判定し、重複しない部分の合成を行う。そして、S1811の後で、遮蔽領域の全域が置き換えられたかを判定し、全領域が置き換えられるまで処理をS1807~S1813の処理が繰り返えされるように制御すればよい。S1814において、点検対象画像から抽出された全ての部分領域(遮蔽領域)について処理が終了した場合、図18のサブフローチャートの処理は終了し、図11のS1116に進む。
図19及び図20を参照して、点検用画像から遮蔽領域が除去される処理の具体例を説明する。図19(a)の画像1901は、点検対象領域である区画1702を撮像装置1704で撮影した画像を、床板の図面を基にあおり補正(正対化)した画像である。変形例2では、S1801において画像1901が取得される。画像1902は、区画1702を撮像装置1705で撮影した画像を、画像1901と同様の図面を基にあおり補正した画像である。なお、これらの画像は、実施形態1及び変形例1の場合と同様に、高解像度で分割撮影された画像をスティッチ合成処理した結果得られた画像である。変形例2の場合、画像1902は、S1805においてカレントの対象画像の1つとして取得される。
次に、図19(b)のマップ1903は、画像1901の撮影画像に対応するデフォーカスマップの一例を示す。図17(b)で示された様に、斜材構造物1709は、検査対象面である区画1702の床板からは著しく手前側に存在している。図17(b)では、デフォーカスマップにおいて、斜材構造物1709に相当する部分は、デフォーカス量の測定範囲外であることを意味するため黒色で表される。なお、図19(b)では省略されているが、床板のような平な面でも、実際には図13あるいは図16で示した通り、多少のデフォーカス量の分散が存在することが多い。変形例2では、S1802においてマップ1903が取得される。また、マップ1904は、同様に画像1902の撮影画像に対するデフォーカスマップの一例を示す。変形例2では、カレントの対象画像が画像1902である場合に、S1808において、デフォーカスマップとしてマップ1904が取得される。ここでは、マップ1903とマップ1904のデフォーカス量の検出不能な領域は一致していない為に、画像2001に示される様に、マップ1903のデフォーカス量の検出不能領域を利用して、画像1902の画像からの画像の切り出しが行われる。
図20の画像2001は、画像1902の撮影画像から、画像1901の撮影画像において遮蔽されている領域を切り出す処理の手順の具体例を示す。画像2001では、撮像装置1705で撮影された点検対象領域(区画1702)の撮影画像である画像1902から、画像1901に対応するマップ1903の情報を利用して、デフォーカス量が測定範囲外の部分と重なる領域の切り出しを行う。図20(a)では、切り出された部分が黒色で表示され、当該切り出された領域が画像2002に示されている。図20(b)の画像2003は、切り出された領域である画像2002を、画像1901の画像に対して合成を行った結果を示す図である。また、変形例2では、実施形態1と同様に、このように生成された点検用画像の生成工程に合わせて、対応する複合デフォーカスマップについても部分的な置き換えが実行される。
以上説明した様に、変形例2によれば、デフォーカスマップからデフォーカス量の検出不能領域を利用して、画像の置き換え部分の切り出し範囲を特定する事が可能であり、遮蔽物除去の作業を効率化する事が可能となる。そして、実施形態1と同様に、点検用画像と関連付けて、複合デフォーカスマップから得られるデフォーカス量を表示し、点検時に参照することが可能となる。なお、デフォーカス量の情報から射影領域を特定する処理は、スティッチ合成前の撮影画像とデフォーカスマップに対しても実行可能である。しかしながら、本実施形態のようにスティッチ合成後に行うことで、同一の遮蔽物によって遮蔽される領域をまとまりで特定することができる。変形例2によれば、点検者であるユーザは、手動により、遮蔽物の除去を行う手間が低減され、より効率的に点検作業を行うことが可能となる。
<その他の実施形態>
なお、上述した各処理部のうち、第1生成部112、第2生成部113、特定部116等については、その代わりとして、機械学習された学習済みモデルを用いて処理しても良い。その場合には、例えば、その処理部への入力データと出力データとの組合せを学習データとして複数個準備し、それらから機械学習によって知識を獲得し、獲得した知識に基づいて入力データに対する出力データを結果として出力する学習済みモデルを生成する。学習済みモデルは、例えばニューラルネットワークモデルで構成可能である。そして、その学習済みモデルは、前記処理部と同等の処理をするためのプログラムとして、CPUあるいはGPUなどと協働で動作することにより、前記処理部の処理を行う。なお、上記学習済みモデルは、必要に応じて一定の処理後に更新しても良い。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。