(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-12-09
(45)【発行日】2022-12-19
(54)【発明の名称】画像から変状を検知する画像処理装置、画像処理方法及びプログラム
(51)【国際特許分類】
G01N 21/88 20060101AFI20221212BHJP
G06T 1/00 20060101ALI20221212BHJP
E04G 23/00 20060101ALI20221212BHJP
【FI】
G01N21/88 J
G06T1/00 500A
E04G23/00
(21)【出願番号】P 2019527680
(86)(22)【出願日】2018-06-29
(86)【国際出願番号】 JP2018024900
(87)【国際公開番号】W WO2019009214
(87)【国際公開日】2019-01-10
【審査請求日】2021-05-24
(31)【優先権主張番号】P 2017133532
(32)【優先日】2017-07-07
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100090273
【氏名又は名称】國分 孝悦
(72)【発明者】
【氏名】▲高▼山 慧
(72)【発明者】
【氏名】真継 優和
(72)【発明者】
【氏名】野上 敦史
(72)【発明者】
【氏名】穴吹 まほろ
【審査官】越柴 洋哉
(56)【参考文献】
【文献】国際公開第2016/189764(WO,A1)
【文献】特開平10-048152(JP,A)
【文献】特開2007-256132(JP,A)
【文献】国際公開第2017/110278(WO,A1)
【文献】特開平09-119900(JP,A)
【文献】特開2015-232746(JP,A)
【文献】国際公開第2017/110279(WO,A1)
【文献】国際公開第2017/014288(WO,A1)
【文献】英国特許出願公開第02534143(GB,A)
【文献】特開2000-028541(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G01N 21/84 - G01N 21/958
E04G 23/00 - E04G 23/08
G01B 11/00 - G01B 11/30
G06T 1/00 - G06T 7/90
(57)【特許請求の範囲】
【請求項1】
構造物を撮影した画像である入力画像から
第1の閾値に基づく第1
の検知基準によって前記構造物のひび割れとして第1の検知領域を検知し、前記入力画像から前記第1の閾値よりも小さい第2の閾値に基づく第2の検知基準によって
前記ひび割れとして第2の検知領域を検知する検知手段と、
前記第1の検知領域を含む画像を修正の対象となる対象画像として設定し、前記第2の検知領域を含む画像を修正の参照とする参照画像として設定する画像設定手段と、
前記参照画像にお
ける前記第2の検知領域に基づいて、前記対象画像において前記第1の検知領域
の第1のポリラインと第2のポリラインを前記第1のポリラインと前記第2のポリラインが連結するように修正する修正手段と
を有することを特徴とする画像処理装置。
【請求項2】
前記参照画像において、前記第2の検知領域に基づいて、修正すべき領域を設定する修正領域設定手段をさらに有することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
予め定められた第1の条件に従い、前記対象画像及び前記参照画像それぞれの検知領域に対し、修正処理の処理単位となる単位領域を設定する単位領域設定手段
と、をさらに有し、
前記修正領域設定手段は、前記単位領域に基づいて、前記修正
すべき領域を設定することを特徴とする請求項
2に記載の画像処理装置。
【請求項4】
前記単位領域設定手段は、前記
ひび割れが検知されたと判定された、連続する領域を前記単位領域として設定することを特徴とする請求項
3に記載の画像処理装置。
【請求項5】
前記単位領域設定手段は、前記
ひび割れが検知されたと判定された、連続する領域の分岐点に基づいて、前記単位領域を設定することを特徴とする請求項
4に記載の画像処理装置。
【請求項6】
予め定められた第2の条件に従い、前記参照画像に含まれる複数の前記単位領域を1つの連続領域として設定する連続領域設定手段をさらに有し、
前記修正領域設定手段は、前記連続領域に基づいて、前記修正
すべき領域を設定することを特徴とする請求項
3乃至
5の何れか1項に記載の画像処理装置。
【請求項7】
前記修正領域設定手段は、1つの前記連続領域に対応した、前記対象画像の複数の単位領域を、1つの修正領域として設定することを特徴とする請求項
6に記載の画像処理装置。
【請求項8】
前記対象画像における領域の指定と該指定された領域に対する修正の指示とをユーザから受け付ける受付手段と、
前記対象画像において、前記修正すべき領域に対応する領域を修正対象領域として表示する表示手段
と、をさらに有し、
前記修正手段は、前記表示手段により表示された前記修正対象領域に対して、前記受付手段によりユーザからの確認を受け付けると、当該修正対象領域を修正することを特徴とする請求項
2乃至
7の何れか1項に記載の画像処理装置。
【請求項9】
前記修正領域設定手段は、前記参照画像において、前記指定された領域に対応する領域を特定し、該特定された領域と前記第2の検知領域とに基づいて、修正すべき領域を設定することを特徴とする請求項8に記載の画像処理装置。
【請求項10】
前記受付手段は、ユーザ操作に応じた、前記修正
すべき領域
に対応する前記対象画像における修正領域の修正指示をさらに受け付け、
前記修正指示に従い前記修正領域を変更する変更手段をさらに有することを特徴とする請求項
8又は9に記載の画像処理装置。
【請求項11】
前記対象画像は、前記
ひび割れらしさに対する
前記第1の閾値による二値化処理後の撮影画像であり、
前記参照画像は、前記
ひび割れらしさに対する前記第1の閾値に比べて小さい
前記第2の閾値による二値化処理後の前記撮影画像であることを特徴とする請求項1乃至
10の何れか1項に記載の画像処理装置。
【請求項12】
前記対象画像は、第1の撮影画像から得られた画像であり、
前記参照画像は、前記第1の撮影画像と同じ撮影範囲を、前記第1の撮影画像よりも過去のタイミングにおいて撮影した第2の撮影画像から得られた画像であることを特徴とする請求項1乃至
10の何れか1項に記載の画像処理装置。
【請求項13】
前記参照画像は、前記
ひび割れと異なる非検知対象が検知されたと判定された、複数の領域を含む画像であることを特徴とする請求項1乃至
10の何れか1項に記載の画像処理装置。
【請求項14】
前記参照画像は確率マップ形式の画像であることを特徴とする請求項1乃至13の何れか1項に記載の画像処理装置。
【請求項15】
構造物を撮影した画像である入力画像から
第1の閾値に基づく第1
の検知基準によって前記構造物のひび割れとして第1の検知領域を検知し、前記入力画像から前記第1の閾値よりも小さい第2の閾値に基づく第2の検知基準によって
前記ひび割れとして第2の検知領域を検知する検知工程と、
前記第1の検知領域を含む画像を修正の対象となる対象画像として設定し、前記第2の検知領域を含む画像を修正の参照とする参照画像として設定する画像設定工程と、
前記参照画像に
おける第2の検知領域に基づいて、前記対象画像において前記第1の検知領域
の第1のポリラインと第2のポリラインを前記第1のポリラインと前記第2のポリラインが連結するように修正する修正工程と
を有することを特徴とする画像処理方法。
【請求項16】
コンピュータを、請求項1乃至
14の何れか1項に記載の画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像から変状を検知する画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【0002】
近年、橋やダムなどのインフラ構造物の点検の効率化が求められており、中でも画像検査に期待が高まっている。画像検査では、現場で撮影を実施し、後から表示画面上で目視により構造物壁面のひび割れや浮きなどの変状を探して人手でトレースする。トレースにより得られるひび割れの長さや本数の情報は、構造物の補修必要性の判断に役立つため重要であるが、人手によるトレース作業は長時間かかる点で問題視されている。このため、変状領域を構造物表面の画像から画像処理によって自動的に検知する、自動検知技術に期待が高まってきている。特開2000-2523号公報には、ひび割れの写った画像に対し、異なる複数の閾値で2値化処理を行うことで、ひび割れを段階的に抽出する技術が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【0003】
しかしながら、構造物表面には、型枠や細長く暗い汚れのような、ひび割れとして誤検知しやすい要素や、影のような未検知を起こす要素が数多く存在する。このため、変状の自動検知は困難であった。例えば、型枠は、コンクリートを固めるときに生じる水平・垂直方向に伸びた長い線として観測され、見た目はひび割れとよく似ているため、誤検知の原因になりやすい。このような誤検知要素や未検知要素が検出される場合には、修正作業の負担が大きいという問題があった。
【0004】
本発明はこのような問題点に鑑みなされたもので、画像検査における誤検出や検出漏れを効率的にかつ適切に修正することを目的とする。
【課題を解決するための手段】
【0005】
そこで、本発明は、画像処理装置に、構造物を撮影した画像である入力画像から第1の閾値に基づく第1の検知基準によって前記構造物のひび割れとして第1の検知領域を検知し、前記入力画像から前記第1の閾値よりも小さい第2の閾値に基づく第2の検知基準によって前記ひび割れとして第2の検知領域を検知する検知手段と、前記第1の検知領域を含む画像を修正の対象となる対象画像として設定し、前記第2の検知領域を含む画像を修正の参照とする参照画像として設定する画像設定手段と、前記参照画像における前記第2の検知領域に基づいて、前記対象画像において前記第1の検知領域の第1のポリラインと第2のポリラインを前記第1のポリラインと前記第2のポリラインが連結するように修正する修正手段とを備える。
【発明の効果】
【0006】
本発明によれば、画像検査における誤検出や検出漏れを効率的にかつ適切に修正することができる。
【図面の簡単な説明】
【0007】
【
図1】第1の実施形態に係る画像処理装置のハードウェア構成図である。
【
図3】検知結果修正処理を示すフローチャートである。
【
図5A】検知処理及び画像設定処理の説明図である。
【
図5B】検知処理及び画像設定処理の説明図である。
【
図6A】検知処理及び画像設定処理の説明図である。
【
図6B】検知処理及び画像設定処理の説明図である。
【
図8】単位領域のデータ形式の一例を示す図である。
【
図11A】検知領域の形状のパターンを示す図である。
【
図11B】検知領域の形状のパターンを示す図である。
【
図11C】検知領域の形状のパターンを示す図である。
【
図11D】検知領域の形状のパターンを示す図である。
【
図11E】検知領域の形状のパターンを示す図である。
【
図13】第1の変形例に係る連続領域を示す図である。
【
図14A】第1の変形例に係るユーザ操作の説明図である。
【
図14B】第1の変形例に係るユーザ操作の説明図である。
【
図14C】第1の変形例に係るユーザ操作の説明図である。
【
図14D】第1の変形例に係るユーザ操作の説明図である。
【
図15A】ポリラインデータに係る修正処理の説明図である。
【
図15B】ポリラインデータに係る修正処理の説明図である。
【
図15C】ポリラインデータに係る修正処理の説明図である。
【
図16】第2の実施形態に係る検知結果修正処理を示すフローチャートである。
【
図17A】第3の実施形態に係る対象画像及び参照画像の一例を示す図である。
【
図17B】第3の実施形態に係る対象画像及び参照画像の一例を示す図である。
【
図18A】第4の実施形態に係る対象画像及び参照画像の一例を示す図である。
【
図18B】第4の実施形態に係る対象画像及び参照画像の一例を示す図である。
【発明を実施するための形態】
【0008】
以下、本発明の実施形態について図面を参照して説明する。
【0009】
なお、本実施形態においては、画像検査における検知対象は、インフラ構造物の壁面上のひび割れとする。すなわち、本実施形態においては、処理対象の撮影画像はインフラ構造物の壁面画像となる。なお、検知対象は、インフラ構造物壁面上のひび割れや浮きなどの変状に限らず、物体の輪郭や軌跡であってもよい。また、撮影画像についても本実施形態に限定されるものではなく、橋やダム、トンネル、道路の表面の画像の他、移動物体を写した画像であってもよい。
【0010】
(第1の実施形態)
図1は、第1の実施形態に係る画像処理装置のハードウェア構成図である。画像処理装置100は、CPU101と、ROM102と、RAM103と、HDD104と、表示部105と、入力部106と、通信部107とを有している。CPU101は、ROM102に記憶された制御プログラムを読み出して各種処理を実行する。RAM103は、CPU101の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD104は、各種データや各種プログラム等を記憶する。表示部105は、各種情報を表示する。入力部106は、キーボードやマウスを有し、ユーザによる各種操作を受け付ける。通信部107は、ネットワークを介して画像形成装置等の外部装置との通信処理を行う。
【0011】
なお、後述する画像処理装置100の機能や処理は、CPU101がROM102又はHDD104に格納されているプログラムを読み出し、このプログラムを実行することにより実現されるものである。また、他の例としては、CPU101は、ROM102等に替えて、SDカード等の記録媒体に格納されているプログラムを読み出してもよい。また、他の例としては、画像処理装置100の機能や処理の少なくとも一部は、例えば複数のCPU、RAM、ROM、及びストレージを協働させることにより実現してもよい。また、他の例としては、画像処理装置100の機能や処理の少なくとも一部は、ハードウェア回路を用いて実現してもよい。
【0012】
図2は、画像処理装置100の機能構成図である。画像処理装置100は、修正処理部200と、画像取得部210と、受付部220と、データ管理部230と、表示処理部240と、を有している。画像取得部210は、画像検査の対象となる撮影画像を取得する。画像取得部210は例えば、通信部107を介して撮影装置から受信した撮影画像を取得してもよく、また、HDD104等に記憶されている撮影画像を取得してもよい。
【0013】
受付部220は、入力部106を介してユーザ操作に応じた各種指示等を受け付ける。データ管理部230は、修正処理部200が参照する画像等のデータを管理する。表示処理部240は、画像等各種情報を表示する。修正処理部200は、画像取得部210が取得した画像に対し、検知対象の検知を行い、さらに、検知結果を修正する。修正処理部200は、検知部201と、画像設定部202と、変換部203と、修正領域設定部204と、修正部205と、を有する。なお、各部の処理については、
図3を参照しつつ説明する。
【0014】
図3は、画像処理装置100による検知結果の修正処理を示すフローチャートである。まず、S301において、画像取得部210は、撮影画像を読み込む。次に、S302において、修正処理部200の検知部201は、撮影画像に対し、検知対象を検知する検知処理を行い、1または複数の検知データを取得する。ここで、検知データとは、検知処理の結果として、検知対象(ひび割れ)らしさを表す画像である。検知対象らしさを表す画像には例えば、撮影画像に認識処理やエッジ抽出処理を施すことで得られる確率マップやエッジ画像があり、これらの画像は、検知対象らしさを表すスコアや確率、またはエッジ強度を画素毎に格納している。
【0015】
図4は、撮影画像及び検知データの説明図である。
図4Aは、撮影画像400の一例を示す図である。画像401は、検知対象を示す画像である。撮影画像400は、検知処理を施す前の画像であればよく、例えば、RGB画像、グレースケール画像が挙げられる。また、撮影画像400は、RGB画像やグレースケール画像に対し、ノイズ除去等の画像処理が施された画像であってもよい。
【0016】
検知データは、以降の処理で使用するために加工する。本実施形態においては、閾値を設定し、検知データを閾値により二値化した二値画像を用意する。その他にも、二値画像にさらに後述の細線化やポリライン化を施して得られるデータや、検知データに対して閾値処理を適用して得られる画像を用意してもよい。
【0017】
図4Bの画像410は、二値化処理により得られた二値画像である。
図4Cの画像420は、細線化画像である。
図4Dの画像430は、ポリライン画像である。画像410、420、430は、いずれも撮影画像400から得られた検知データである。領域411やライン421,431は、検知対象が検知されたと判定された領域を示している。なお、本実施形態においては、検知処理における検知結果が正解であるか誤検知であるかに関わらず、検知されたと判定された領域を検知領域と称することとする。細分化画像は、撮影画像に対して、細分化処理を施すことで取得できる。ポリライン画像は、細線化画像1にさらにベクタ化処理などの加工を施すことで得られる画像である。ポリライン画像は、検知領域の位置情報を有している。なお、ポリライン画像430に示す点431は、ポリライン画像430が有する位置情報を表している。ポリライン画像430は、隣接する点を繋ぐ線分で表現されるものとする。他の例としては、ポリライン画像430は、位置情報の他に数式情報を有し、数式情報を利用した曲線で表現されてもよい。
【0018】
図3に戻り、本実施形態では、S302において、検知部201は、撮影画像にエッジ抽出処理などを適用した検知データに対し、第1の閾値による二値化処理により、第1の画像を得る。検知部201はさらに、検知データに対し、第2の閾値による二値化処理により、第2の画像を得る。ここで、第2の閾値は、第1の閾値よりも小さい値とする。次に、S303において、画像設定部202は、対象画像と参照画像を設定する画像設定処理を行う。ここで、対象画像とは、検知結果として得られた検知領域に対し修正処理を施すべき画像、すなわち修正処理の対象となる画像である。一方、参照画像は、修正処理において参照される画像である。対象画像は、修正処理が施され更新されるデータであり、参照画像は対象画像に一部が統合される画像である。本実施形態においては、画像設定部202は、第1の閾値を用いた二値化処理により得られた第1の画像を対象画像として設定し、第2の閾値を用いた二値化処理により得られた第2の画像を参照画像として設定する。すなわち、対象画像は、第1の閾値を用いた二値化処理後の画像であり、参照画像は、第2の閾値を用いた二値化処理後の画像である。
【0019】
図5及び
図6は、S302の検知処理及びS303の画像設定処理の説明図である。
図5の画像500及び画像510はそれぞれ、同一の撮影画像に対し、第1の閾値及び第2の閾値による二値化処理により得られた対象画像及び参照画像である。同様に、
図6の画像600及び画像610はそれぞれ、同一の撮影画像から得られる検知データに対し、第1の閾値及び第2の閾値による二値化処理により得られた対象画像及び参照画像である。
【0020】
図5Aに示す対象画像500の検知領域501~505のうち、検知領域501,505は、実際のひび割れが撮影された領域で、検知結果が正しい領域である。一方、検知領域502,503,504は、誤検知の領域である。
図5Bに示す参照画像510の検知領域511~515のうち、検知領域511,515は、実際のひび割れが撮影された領域で、検知結果が正しい領域である。一方、検知領域512,513,514は、誤検知の領域である。
【0021】
このように、二値化画像においては、閾値を低くすることにより、誤検知領域が増加する傾向がある。また、閾値を高くした場合には、1つの検知対象に対し、検知領域が不連続に細切れの状態で発生し易いのに対し、閾値をより低くすると、不連続の領域が繋がり連続した1つの検知領域として得られ易くなる傾向がある。本実施形態の画像処理装置100は、このような傾向に対応し、ノイズが比較的少なくなる傾向にある第1の閾値に対応した二値化画像を対象画像に設定し、第2の閾値に対応した二値化画像を参照画像として設定することとする。
【0022】
図3に戻り、S303の画像設定処理の後、S304において、修正処理部200の変換部203は、対象画像の検知領域を単位領域に変換し、単位領域に関する情報を記録する。同様に、変換部203は、参照画像の検知領域を、単位領域に変換する。ここで、単位領域とは、画像処理装置100が検知領域を扱い易くするために設定した、検知領域の単位である。単位領域は、後述の修正処理の最小の処理単位となる。本実施形態においては、変換部203は、検知対象が検知された画素の連続する領域で、分岐点の位置で分岐した範囲を単位領域として設定する。さらに、データ管理部230は、単位領域を示す情報を生成し、これをHDD104等の記憶部に格納する。
【0023】
ここで、
図7を参照しつつ、単位領域の決定方法について説明する。変換部203は、検知領域において、端点及び分岐点を境界点として検出する。
図7Aに示す検知領域700を処理対象とした場合には、
図7Bに示すように、C1~C6が境界点として検出される。続く処理としては、以下に示す3通りが挙げられる。
【0024】
1つ目は検知領域を分岐点により分解する方法である。ある境界点から最も近い境界点までの検知領域を単位領域として設定する。これにより、検知領域700に対しては、
図7Cに示すように、点C1から点C2までの検知領域が単位領域d11として設定される。また、点C2から点C3までの検知領域が単位領域d12として設定される。
図7Cの例では、さらに、単位領域d13~d15が設定される。
【0025】
2つ目は、検知領域の主線に着目して分解する方法である。主線は、例えばある点からある点までの検知領域の長さや太さの情報に関する条件に従って定められるものとする。そして、主線の方向に伸びた検知領域を一塊の単位領域として設定する。さらに、主線から分岐している検知領域については、主線方向に伸びた単位領域とは異なる単位領域として設定する。
図7Dの例において、点C1から点C4までが主線として設定されているとする。この場合、検知領域700に対しては、点C1から点C4までの連続する検知領域が1つの単位領域d21として設定される。さらに主線から分岐する点C2から点C5までの検知領域及び点C3から点C6までの検知領域がそれぞれ単位領域d22,d23として設定される。
【0026】
3つ目は、上記の2つの方法を合わせたもので、検知領域を主線に着目して分解する方法を適用し、さらに分岐点により分解する方法である。検知領域を主線方向の成分1本とそこから分岐した成分に分け、その段階で連結している領域の情報を保持したまま、検知領域をさらに分岐点で分解したデータを単位領域として管理する。
図7Eは、本例の処理の説明図である。検知領域700は、まず領域d31,d32,d33に分解される。ここで、領域d31,d32,d33は、それぞれ
図7Dの領域d21,d22,d23と等しい。その後、領域d31は領域d31の情報を保持しつつ、d34,d35,d36に分解される。ここで、d34,d35,d36はそれぞれ
図7Cのd11,d12,d13と等しい。これにより、単位領域d32,d33,d34,d35,d36が得られる。
【0027】
本実施形態の変換部203は、上述の3つ目の方法で単位領域への変換を行うこととする。
図8は、変換部203により記録された単位領域に関する情報の一例を示す図である。変換部203は、単位領域に関する情報として、各単位領域の位置を示す情報と、連続領域に関する情報とを記録する。ここで、連続領域とは、
図7Eにおいて説明した単位領域d34,d35,d36のように、主線に着目した場合に連続した一塊の領域として扱われる領域である。変換部203は、連続領域に関する情報を記録することにより、複数の単位領域を1つの連続領域として設定することができる。本処理は、連続領域設定処理の一例である。
【0028】
図8のデータは、
図7Eの単位領域に対応している。各単位領域は、単位領域を識別するデータ番号とその単位領域が位置する座標情報を持つ。各座標情報は(x
i,j,k,y
i,j,k)という形式で与えられ、各単位領域の座標情報の量は単位領域の大きさに依存する。ここで、インデックスi,j,kについて以下に説明する。インデックスiは、検知領域を主線に着目して分解する方法を適用した段階で、分解したデータに割り振られる番号である。すなわち、インデックスiが等しい複数の単位領域は、1つの連続領域(本実施形態においては1つの主線)を形成することがわかる。
図8の例では、単位領域d34,d35,d36それぞれのインデックスiに共通の値1が設定され、単位領域d32のインデックスiには2が設定され、単位領域d33のインデックスiには3が設定されている。
【0029】
インデックスjは、分岐点により分解する方法により分解したデータ、すなわち単位領域毎に割り振られる番号である。インデックスkは、各単位領域が位置する座標の番号である。単位領域d34に含まれる座標数をpとすると、単位領域d34はp個分の座標データを持つことになる。格納する座標の順番は、一方の端点ではインデックスkを1とし、その端点から近い座標を順に並べ、もう一方の端点ではインデックスをpとする。
【0030】
図3に戻り、S305において、表示処理部240は、撮影画像に対象画像を重畳し、これを表示部105に表示する表示処理を行う。これにより、ユーザは、検知処理による検知結果を確認することができる。ここで、ユーザは、検知結果の修正を希望する領域を入力することができる。このとき、ユーザは、修正処理の種類についても指定する。ここで、修正処理の種類としては、検知領域の削除や、複数の検知領域の連結が挙げられる。これに対応し、S306において、受付部220は、ユーザ操作に対応し、検知結果の修正指示を受け付ける。ここで、修正指示には、修正処理の種類と、修正対象の領域を指定する情報が含まれる。ここで、修正指示は、少なくとも1つの領域を指定した、所定の修正処理の実行指示の一例である。例えば、型枠が誤検知されている場合には、ユーザはこの領域を指定した削除の修正指示を入力する。また、ひび割れが確認できるにも関わらずその一部が検知されていない場合には、ユーザはこの領域を指定した連結の修正指示を入力する。
【0031】
S305の表示処理以降の処理については、
図9を参照しつつ説明する。
図9の左上に示す画像900は、S305において表示される画像の一例である。画像900は、撮影画像に対し、対象画像が重畳された画像である。画像900は、
図5に示す対象画像500が、対応する撮影画像に重畳されたものである。以降の処理においては、画像900に対し、削除の修正指示を受け付けた場合を例に説明する。なお、対象画像500に対しては、検知領域501,502,503,504,505がそれぞれ単位領域として設定されているものとする。
【0032】
また、
図9の右上に示す参照画像510は、
図5に示す参照画像510と同一である。参照画像510に対しては、検知領域511,512,513,514,515がそれぞれ単位領域として設定されているものとする。また、検知領域512,513,514は、1つの連続領域として設定されているものとする。
【0033】
表示部105に表示された画像900において、ユーザがマウスポインタ901で単位領域502を選択し、さらに削除の指示を入力すると、S306において、受付部220は、単位領域502を指定した、削除の修正指示を受け付ける。以下、修正指示において対象画像上で指定された、参照画像上で探索するための領域を指定領域と称することとする。なお、マウスポインタ901により単位領域502が選択された場合に、単位領域502のみを指定領域としてもよく、単位領域502だけでなく単位領域502から所定の範囲内にある領域を指定領域としてもよい。なお、本実施形態においては、領域の指定と修正処理の種類を修正指示として、同時に受け付けるものとしたが、領域の指定と修正処理の種類を受け付けるタイミングは実施形態に限定されるものではない。他の例としては、領域の指定を受け付けた後に、修正処理の種類を受け付けてもよく、その逆であってもよい。
【0034】
図3に戻り、S306の修正指示の受付処理の後、S307において、修正領域設定部204は、修正指示に係る単位領域502、すなわち指定領域に対応した、参照画像上の単位領域を探索する。修正領域設定部204は、具体的には指定領域と少なくとも一部が重なる単位領域を検出する。S308において、修正領域設定部204は、指定領域に対応した、参照画像上の単位領域が検出された場合には(S308でYes)、処理をS309へ進める。修正領域設定部204は、指定領域に対応した、参照画像上の単位領域が検出されなかった場合には(S308でNo)、処理をS316へ進める。S316において、受付部220は、ユーザ操作に応じて、修正処理(手動修正)を実行し、その後処理をS314へ進める。
【0035】
S309において、修正領域設定部204は、
図8に示すインデックスiに基づいて、参照画像において検出した単位領域を含んだ連続領域を特定し、この連続領域に含まれる単位領域を探索する。次に、S310において、修正領域設定部204は、S308及びS309において検出された単位領域の領域(連続領域)を修正領域として設定する。なお、修正領域設定部204は、連続領域だけでなく、連続領域の周辺を含む領域に対応した領域を修正領域として設定してもよい。修正領域設定部204はさらに、参照画像における修正領域に対応した、対象画像の領域を修正領域として設定する。本処理は、2以上の単位領域(検知領域)を1つの修正領域として設定する修正領域設定処理の一例である。
【0036】
次に、S311において、表示処理部240は、表示部105に表示中の、撮影画像に対象画像が重畳された撮影画像に対し、さらに、対象画像の修正領域を重畳表示するように制御する。本処理は、修正領域の表示処理の一例である。連続領域は、同一の検知対象に対応する可能性が高い領域であり、連続領域に含まれる複数の単位領域それぞれに対して等しく修正処理を施すのが適切である可能性が高い。そこで、本実施形態では、連続領域に対して一括した修正処理を施す前に、ユーザに確認させるべく、修正領域を表示することとした。
【0037】
図9の例では、単位領域502が選択されると、S307において、参照画像510から、単位領域502に対応した単位領域512が検出される。さらに、S309において、単位領域512と共に1つの連続領域を形成する単位領域513,514が検出される。続いて、S310において、3つの単位領域512,513,514が1つの修正領域910として設定され、対象画像において、修正領域910に対応した修正領域920が設定される。その後、S311において、画像900に、修正領域910に対応した修正領域920が重畳して表示される。なお、S311において、表示処理部240は、修正領域920に加えて、単位領域502、503、504を他の単位領域とは異なる色で表示してもよい。また、単位領域502,503,504が1本に繋がるよう連結させた状態を表示してもよい。このような表示を行うことで、ユーザにとって修正が行われる部分が分かりやすくなる。
【0038】
図3に戻り、S311における修正領域の表示処理の後、S312において、受付部220は、S311において表示中の修正領域920で修正領域を確定する旨の確認指示をユーザ操作に応じて受け付けたか否かを判定する。受付部220は、確認指示を受け付けた場合には(S312でYes)、処理をS313へ進める。受付部220は、確認指示を受け付けなかった場合には(S312でNo)、処理をS316へ進める。S316において、修正領域設定部204は、ユーザ操作に応じて、修正領域を特定し、修正部205は、修正領域に対してユーザ操作に応じた種類の修正処理を行い、その後処理をS314へ進める。S312において、受付部220は、例えば、確認指示を受け付けることなく、修正領域920に対する変更指示を受け付けた場合には、処理をS316へ進める。そして、この場合には、S316において、修正領域設定部204は、S316において、変更指示に従い、修正領域を変更する。
【0039】
一方、S313において、修正部205は、S306において受け付けた修正指示に従い、対象画像において、修正領域に含まれる単位領域に対し修正処理を施し、修正後の対象画像が重畳された撮影画像を表示部105に表示するよう制御する。
図9の例では、修正領域920に対し変更指示がなく、修正処理において単位領域502,503,504が削除される。これにより、単位領域501,505のみが、検知領域として残る。
【0040】
なお、S313において、修正部205は、修正領域内において、一括して修正処理を行ってもよく、修正処理を一括して行うのか複数回に分けて行うのかを選択可能としてもよい。複数回に分けて修正処理を行うことが指定された場合には、例えば、指定領域から近い順に単位領域を1つずつ削除する。例えば、
図9の例では、単位領域502が削除され、その後、単位領域503,504の順に削除される。または、ユーザの指示に従い、その順に各単位領域を削除してもよい。
【0041】
図3に戻り、S313の修正処理の後、S314において、データ管理部230は、S313の修正処理に対応して、単位領域に関する情報を更新する。次に、S315において、受付部220は、終了指示を受け付けたか否かを確認する。受付部220が、終了指示を受け付けると(S315でYes)、検知結果の修正処理が終了する。受付部220が終了指示を受け付けなかった場合には(S315でNo)、処理をS306へ進める。
【0042】
次に、修正処理が連結処理である場合のS305以降の処理について、
図10を参照しつつ説明する。ここで、
図10の左上に示す画像1000は、S305において表示される画像の一例である。画像1000は、
図6に示す対象画像600が、対応する撮影画像に重畳されたものである。画像1000に対し、連結の修正指示を受け付けたものとする。また、対象画像600に対しては、検知領域601,602,603,604がそれぞれ単位領域として設定されているものとする。
図10の右上に示す参照画像610は、
図6に示す参照画像610と同一である。参照画像610に対しては、検知領域611,612,613,614,615がそれぞれ単位領域として設定されているものとする。また、検知領域612,613,614は、1つの連続領域として設定されているものとする。
【0043】
ユーザが、連結したい箇所として、検知領域の欠落領域1010をマウスポインタ1011で選択すると、S307において、参照画像上の単位領域が検索される。参照画像610においては、欠落領域1010と一部が重なる単位領域612,613が検出される。さらに、S309において、単位領域612,613と共に1つの連続領域を形成する単位領域614が検出される。そして、S310において、単位領域612,613,614が1つの修正領域1020として設定され、対象画像においても修正領域1020に対応した修正領域1030が設定される。その後、S311において、画像1000に、修正領域1020に対応した修正領域1030が重畳して表示される。その後、S313において、修正領域1030の単位領域602と単位領域604が連結され、1つの検知領域1040として表示される。さらに、画像処理装置100は、単位領域という形式でデータを保持することにより、検知領域1040の表示後に、画像内で、所定長さ以上の単位領域を表示することもできる。これにより、ユーザは、特定の検知結果を容易に見つけることができる。
【0044】
次に、
図11を参照しつつ、検知領域の形状のパターンについて説明する。検知領域の形状には様々なパターンが存在する。
図11に示す対象画像1110,1120,1130,1140,1150はいずれも、対象画像のイメージを表している。
図11においては、対象画像の検知領域を実線、対応する参照画像の検知領域を破線で示している。また、対象画像の検知領域と、これに対応する参照画像の検知領域は実際には重なっているが、見易さを考慮し、
図11においては、ずらして示している。
【0045】
検知領域の形状には、各画像に示すようなパターンが存在する。対象画像1110では、対応する参照画像の検知領域1101に対応した2つの検知領域1111,1112が検出され、2つの検知領域1111,1112の間には欠落領域が存在している。対象画像1120においては、参照画像の検知領域1101の一部に対応した1つの検知領域1121のみが検知されている。参照画像1130においては、参照画像の検知領域1101に沿って、3つの検知領域1131,1132,1133が検知され、各検知領域1311,1312,1313の間には欠落領域が存在している。対象画像1140は、対応する参照画像において、分岐した検知領域1102が得られている例である。対象画像1140においては、検知領域1141,1142が検知され、検知領域1141,1142の間には検知領域が存在している。対象画像1150においては、参照画像において検知領域1101が検知されているのに対し、検知領域は存在しない。いずれのパターンも、以下に示すユーザーインターフェースにより、対象画像上で範囲や位置を指定し、修正することができる。
【0046】
次に、
図12を参照しつつ、修正指示に係る領域(指定領域)を指定する際のユーザ操作について説明する。
図12A及びBの対象画像1200は同一の画像であり、単位領域1201,1202が表示された画像である。
図12においては、
図11と同様に、対象画像の検知領域を実線、対応する参照画像の検知領域を破線で示している。また、対象画像の検知領域と、これに対応する参照画像の検知領域は実際には重なっているが、見易さを考慮し、
図12においては、ずらして示している。
【0047】
ユーザが単位領域1201,1202の削除又は連結を希望しているとする。この場合のユーザ操作の1つ目としては、指定領域をマウスでクリックして選択する方法が挙げられる。これは、マウスポインタを対象画像の修正したい箇所に近づけて1箇所以上でクリックするものである。この方法により、対象画像の単位領域を選択することも、欠落領域を選択することもできる。例えば、
図12Aに示すように、マウスポインタ1221を単位領域1201に近づけてクリックすることで、参照画像の単位領域1211と対応を取ることができる。
【0048】
なお、単位領域1201,1202の2か所をクリックすることとしてもよい。また、欠落領域を選択するときは、マウスポインタ1221を単位領域1201,1202の間の欠落領域に近付けてクリックする。これにより、参照画像内で、クリックした位置に近い単位領域1211と対応を取ることができる。
【0049】
2つ目のユーザ操作としては、マウスのドラッグにより所望の領域を選択する方法が挙げられる。対象画像上の選択したい領域周辺で、例えば、左上から右下に向けてマウスをドラッグすることで、ドラッグ開始時点と終了時点のマウスポインタの位置を向かい合う頂点に持つ矩形領域を修正領域と設定する。参照画像内において、矩形領域に一部が含まれている単位領域を探索する。この方法も、単位領域の選択と欠落領域の選択に適用できる。例えば、
図12Bに示すように、対象画像1200の単位領域1201の周辺でマウスをドラッグする。これにより、ドラッグの開始時点と終了時点のマウスポインタの位置を頂点に持つ矩形領域1231が指定領域として設定される。そして、参照画像内で、矩形領域1231と一部が重なる単位領域1211を見つけることができる。なお、ドラッグする際には、単位領域1211をのみを含む矩形を選択してもよく、複数の単位領域1201,1202を含む矩形を選択してもよい。
【0050】
欠落箇所を選択するときは、例えば単位領域1201,1202の間の欠落領域周辺でマウスをドラッグする。ドラッグの開始時点と終了時点のマウスポインタの位置を頂点に持つ矩形領域1232が指定領域として設定される。そして、参照画像内で指定領域と一部が重なる単位領域1211が見つかる。以上に説明した方法のうち欠落領域の選択については、
図11の対象画像1150のように、参照画像では検知できた検知対象を、対象画像では検知できなかった場合に適用してもよい。
【0051】
以上のように、本実施形態の画像処理装置100は、不連続に検知された検知領域を自動的に連続した検知領域として設定することができる。これにより、ユーザは、連続した検知領域を参照することができ、誤検出や検出漏れの目視による確認を容易に行うことができる。さらに、画像処理装置100は、連続した検知領域として設定された領域に対して、一括して修正処理を実行することができるので、修正時に、不連続に検知された複数の検知領域1つ1つをユーザが選択する、といった細かい修正作業を不要とすることができる。
【0052】
例えば、構造物の壁面画像からひび割れを検知すると、誤検知領域や未検知領域が細切れに発生し、検知後に人手による誤検知領域の細かい除去作業や未検知領域のトレース作業が必要となる。特に、細切れに発生した検知領域を1つ1つ選択して削除する作業は面倒である。これに対し、本実施形態の画像処理装置100は、検知領域が細切れになっていても連続していることが想定される領域は、連結しているものと捉え、一度に削除したり、連結したりといった修正を行うことができる。これによりユーザが誤検知領域を1つ1つ選択しなくて済み、操作回数を減らすことができる。
【0053】
さらに、画像処理装置100は、不連続に検知された検知領域を1つの連続領域として管理することができるので、修正後のデータの集計や管理を容易にかつ適切に行うことができる。さらに、画像処理装置100は、検知領域を単位領域の単位で管理するので、ひび割れの位置を画素単位で管理する場合に比べて、ひび割れの本数の集計や各ひび割れの長さの計測を容易にすることができる。
【0054】
第1の実施形態の第1の変形例としては、連続領域の設定は実施形態に限定されるものではない。他の例としては、
図13に示すように、分岐の有無に係わらず、連続した1つの検知領域を、連続領域として設定するものとしてもよい。例えば、
図13の検知領域1300においては、単位領域1301,1302,1303が1つの連続領域として設定される。
【0055】
図14は、
図13に示す連続領域に対応した、修正指示に係る領域を指定する際のユーザ操作の説明図である。
図14A~Dの対象画像1400は同一の画像であり、2つの単位領域1401,1402を含んでいる。
図14においては、
図11,12と同様に、対象画像の検知領域を実線、対応する参照画像の検知領域を破線で示している。また、対象画像の検知領域と、これに対応する参照画像の検知領域は実際には重なっているが、見易さを考慮し、
図14においては、ずらして示している。対象画像1400に対応する参照画像の検知領域は、
図13に示す連続領域と同一である。
【0056】
ユーザが単位領域1401,1402の削除又は連結を希望しているとする。この場合のユーザ操作の1つ目としては、マウスポインタの位置によって単位領域の候補線を表示し、ユーザが所望の候補線を選択する方法が挙げられる。マウスポインタの位置の周囲に複数の単位領域が存在する場合、マウスポインタの位置に最も近い単位領域が候補線として表示される。候補線が表示される条件はどのような方法でも構わないが、例えばマウスポインタの位置から単位領域上の最も近い点までの距離が、一定の画素数より短いときとすることができる。
図14Aの例では、対象画像1400において、マウスポインタ1411が単位領域1302より単位領域1303により近いため、単位領域1303に対応した候補線1412が表示される。ユーザが候補線1412をクリックすることで、単位領域1303の選択が確定される。
【0057】
2つ目は、対象画像の単位領域をマウスポインタで1箇所以上選択する方法である。ここでは、単位領域を1箇所選択する方法と2箇所以上選択する方法を説明する。単位領域を1箇所選択するときの例として、
図14Bに示すように、対象画像1400の単位領域1401をマウスポインタ1421で選択したとする。このとき、単位領域1302,1303のうちいずれか一方が、候補線としてランダムに選ばれて表示される。ユーザは、所望の位置の単位領域が選ばれたときに、マウスのクリックやキーボードの任意のキーを押す操作によりその単位領域の選択を確定する。所望の位置の単位領域が選ばれなかったときは、マウスホイールを動かす操作やキーボードの任意のキーを押す操作により候補線が別の単位領域に切り替わる。これにより所望の位置に候補線が表れたら、その単位領域の選択を確定する。
【0058】
単位領域を2箇所以上選択するときの例として、単位領域1401,1402の2箇所を、マウスポインタ1421で選択したとする。すると、選択された単位領域の両方と対応の取れる、参照画像の単位領域1303が選択される。なお、このような複数の単位領域の選択には、クリックによる選択に限らず、複数の単位領域の上またはその周囲を通るようにマウスをドラッグする方法を用いてもよい。例えば、単位領域1401周辺の点から単位領域1402周辺の点までマウスをドラッグすることで単位領域1303を選択することもできる。
【0059】
3つ目は、マウスのドラッグの方向により単位領域を選択する方法である。
図14Cに示すように、単位領域1401周辺にマウスポインタを位置させ、2点鎖線1431の示す方向にマウスをドラッグする。この場合、ドラッグの方向情報と、参照画像の単位領域1302,1303の方向情報が比較され、向きが近い方の単位領域が選択される。例えば、ドラッグの開始位置と終了位置よりドラッグの動きのベクトルの方向、各単位領域の2つの端点より各単位領域のベクトル方向とすることができる。これにより、向きの近い単位領域1303が選択される。
【0060】
4つ目は、マウスのドラッグの動きに似ている形状の単位領域を選択する方法である。
図14Dに示すように、単位領域1401周辺を始点としてマウスを2点鎖線1441のように動線を描くようにドラッグしたとする。すると、ドラッグの動線の形状と参照画像内の単位領域の形状が比較され、参照画像の単位領域1302,1303のうち形状が似ている方の単位領域が選択される。具体的には、ドラッグ開始位置と終了位置よりドラッグの動きのベクトルを、また、各単位領域の端点より各単位領域のベクトルを求める。続いて、ドラッグの動きのベクトルと各単位領域のベクトルの内積を求める。内積が大きい方の単位領域を選択することで、長さと方向の近い単位領域を選択することができる。この例では、単位領域1303が選択される。
【0061】
第2の変形例としては、検知データはポリラインデータであってもよい。ポリラインデータは、検知領域を一塊のデータとして表現されたデータであるため、各ポリラインは単位領域とみなすことができる。検知データとして確率マップやエッジ画像の二値化処理後に得られる画像を用いる場合には、参照画像の単位領域を対象画像から除去または対象画像に重畳することで修正できる。ただし、検知データに細線化画像やポリラインデータを用いる場合には、単純な重畳処理により対象画像と参照画像を統合することができない。この理由は、異なる閾値による二値化画像から細線化画像を作成すると、検知領域の位置がずれる場合があるためである。このため、細線化画像から取得するポリラインデータも、点の位置がずれてしまう。したがって、検知データとして細線化画像やポリラインデータを用いるときには、対象画像と参照画像の統合方法が問題となる。以下に、これらの検知データに適用できる修正方法を、ポリラインデータを修正する方法を示した
図15を参照しつつ説明する。
【0062】
図15Aに示す対象画像1500は、2つの単位領域1501,1502を含んでいる。破線で示す1511は、参照画像の単位領域である。説明の便宜上、対象画像1500上に単位領域1511を重畳して示すが、実際の対象画像1500には単位領域1511は見えていないものとする。単位領域1501,1502及び単位領域1511に示す各点(A1,A2,B1~B5)は、いずれもポリラインデータの座標データを表している。
図15Aの単位領域1501,1502と単位領域1511は同一の検知対象に対応して得られた領域であるが、座標位置がずれている。以下に、削除処理と連結処理における対象画像と参照画像の統合方法を順に説明する。
【0063】
削除処理における統合方法は、検知データとしてポリラインデータを用いるときも、二値画像を用いるときと同じでよい。例えば、ユーザが削除対象として単位領域1501を選択したとする。この場合、修正領域設定部204は、まず単位領域1501の位置とその周辺を含む領域を修正領域とし、参照画像上で修正領域を探索し、単位領域1511を見つける。次に、修正領域設定部204は、単位領域1511の位置する領域とその周辺を含む領域を修正領域と設定し、対象画像における修正領域内で単位領域を探索する。これにより、単位領域1502も一度に削除する可能性があると判断できる。
【0064】
単位領域1501,1502を、参照画像の単位領域1511を用いて連結する連結処理における統合方法について、
図15B及びCを参照しつつ2通りの方法を説明する。ここでは、対象画像1500の単位領域1501の点A1と、単位領域1502の点A2を連結する処理について説明する。
【0065】
図15Bは、対象画像上の欠落領域内側に位置する、参照画像の単位領域1511を利用する方法を説明するための図である。
図15Bの左側に示すように、修正部205は、点A1と点A2を連結するため、参照画像内の単位領域うち、これらの端点より内側に位置する、点B2、B3、B4を結ぶ線分1521を対象画像1500に重畳する。続いて、修正部205は、対象画像上の単位領域1501と、線分1521と、単位領域1502と、の端点同士を接続することで、1つの領域に連結する。ここでは、点A1と点B2、点A2とB4を接続することで、
図15Bの右側に示すような連結領域1522が得られる。
【0066】
図15Cは、対象画像上の単位領域の途切れている箇所の端点から最も近い点を参照画像上で探す方法を説明するための図である。具体的には、修正部205は、参照画像の単位領域1511の点のうち、点A1,A2に最も近い点をそれぞれ探索する。この例では、点A1には点B1が、点A2には点B5が最も近い。したがって、
図15Cの左側に示すように、修正部205は、参照画像の単位領域のうち、これらの点が端点となるよう、点B1、B2、B3、B4、B5を結ぶ線分1531を対象画像1500に重畳する。修正部205はさらに、点A1と点B1、点A2と点B5を接続する。これにより、
図15Cの右側に示すような連結領域1532が得られる。以上の方法で、ポリラインデータを用いた場合も、検知データの修正を行うことができる。細線化画像を用いたときにも、同様の方法で対象画像と参照画像を統合していくことができる。
【0067】
以上の方法では、参照画像は検知データに二値化処理を適用して得られる画像としたが、閾値による処理は実行せずに検知データを参照画像とすることができる。または、検知データ(確率マップやエッジ画像)の代表位置を参照画像とすることができる。例えば、検知データの局所ピーク値の情報を持つ二値画像を参照画像とする。この方法を適用すると、より検知対象らしい位置を、形状良く連結していくことができる。
【0068】
なお、第一の閾値または第二の閾値をユーザが変更できるようにすることもできる。表示部105は前記第2の閾値を変更するためのバーやボタンのような閾値変更ツールを表示するようにし、ユーザによる閾値変更ツールの操作に応じて、閾値を変更する。ユーザにより設定された閾値を用いて、検知データに閾値処理を適用して得られる画像を、画像設定部202で参照画像として設定し直す。その後、修正処理を再実行し、表示部105は対象画像の修正結果を表示する。閾値をユーザが変更できるようにすると、ユーザは好みに合う修正を行うことができる。
【0069】
(第2の実施形態)
第2の実施形態に係る画像処理装置100は、ユーザ操作を要することなく、自動的に修正領域を設定し、修正処理を実行することができる。以下、第2の実施形態に係る画像処理装置100について、第1の実施形態に係る画像処理装置100と異なる点について説明する。本実施形態に係る画像処理装置100は、事前に設定された条件に従い、参照画像と対象画像に基づいて、自動的に修正処理を行う。ここで、事前に設定しておく条件は3つある。1つ目は、参照画像において検知領域の探索を行うための基準領域となる単位領域を設定するための条件であり、基準領域条件と称する。2つ目は、単位領域に応じて修正領域を設定するための条件であり、修正領域条件と称する。3つ目は修正領域における修正を採用するための条件であり、採用条件と称する。
【0070】
本実施形態においては、対象画像の単位領域が細切れになっている領域を基準領域と設定することが基準領域条件として設定されている。ここで、細切れになっているかどうかは、例えば、対象画像の単位領域間の距離が一定の長さより短いことを条件に判断できる。さらに、基準領域に対応した参照画像上の単位領域と、この単位領域と共に連続領域を形成する単位領域と、を修正領域として設定するということが修正領域条件として設定されている。なお、探索する向きについては事前に条件を決めておいてもよい。また、基準領域条件は、対象画像上の各単位領域から所定の範囲内にある領域を基準領域とする、という条件にすることもできる。
【0071】
採用条件は、処理の種類や検知対象と誤検知し易い要素の性質等に応じて設定されるのが好ましい。採用条件の具体例を含め、インフラ構造物の壁面画像からひび割れを検知するとき、型枠の誤検知領域を自動で削除する例を記す。例えば、検知対象のひび割れと共に型枠が誤検知されることが予めわかっているとする。さらに、型枠は水平、垂直を向いており、ひび割れに比べてより長く広範囲に存在することがわかっているとする。これらに場合には、型枠の誤検知として削除の修正対象として採用するための採用条件は、以下の通りとなる。
・修正領域の長さが所定の長さより長い。
・修正領域の単位領域のベクトルの向きが、所定の角度区間に納まっている。
【0072】
図16は、第2の実施形態に係る画像処理装置100による検知結果修正処理を示すフローチャートである。
図16に示す各処理のうち
図3を参照しつつ説明した各処理と同じ処理には同じ番号を付している。画像処理装置100のCPU101は、S302の処理の後、処理をS1601へ進める。S1601において、CPU101は、条件を読み込む。ここで、条件とは、上述の基準領域条件、修正領域条件、採用条件の3つである。CPU101はその後処理をS303へ進める。なお、S1601の処理は、後述のS1602の処理の前に実行されればよく、その処理順番は実施形態に限定されるものではない。
【0073】
さらに、CPU101は、S304の処理の後、処理をS1602へ進める。S1602において、修正領域設定部204は、基準領域条件に従い、対象画像における単位領域のうちの1つを基準領域として選択する。続く、S307においては、修正領域設定部204は、基準領域に対応した参照画像上の単位領域を探索する。S308において、修正領域設定部204は、基準領域に対応した、参照画像上の単位領域が検出された場合には(S308でYes)、処理をS1603へ進める。修正領域設定部204は、基準領域に対応した、参照画像上の単位領域が検出されなかった場合には(S308でNo)、処理をS1603へ進める。
【0074】
S1603において、修正領域設定部204は、基準領域と、修正領域条件と、に従い、修正領域を設定する。本処理は、修正領域設定処理の一例である。具体的には、修正領域設定部204は、参照画像において、基準領域に対応する領域と一部が重なる単位領域を検出する。そして、修正領域設定部204は、検出された単位領域と共に、連続領域を形成する単位領域を検索することで、この連続領域に対応した領域を修正領域として設定する。さらに、修正領域設定部204は、参照画像の修正領域に対応する、対象画像の領域を修正領域として設定する。なお、このとき、修正領域設定部204は、事前に定めたルールに従う向きで、見つかったデータと一繋ぎになっている単位領域を参照画像内で探索するものとする。
【0075】
次に、S1604において、修正部205は、採用条件に従い、修正領域を採用するか否か、すなわち修正領域に対して指定された修正処理を行うか否かを判定する。修正部205は、採用すると判定した場合には(S1604でYes)、処理をS1605へ進める。修正部205は、採用しないと判定した場合には(S1604でNo)、処理をS1603へ進める。
【0076】
S1605において、修正部205は、修正領域に対し、条件に対応した修正処理を行い、その後処理をS314へ進める。そして、S314においてデータの更新が行われると、CPU101は処理をS1603へ進める。S1603において、CPU101は、処理を終了するか否かを判定する。CPU101は、対象画像に基準領域として選択可能な単位領域が残っている場合には、修正を終了しないと判定し(S1603でNo)、処理をS1602へ進める。CPU101は、対象画像において基準領域として選択可能な単位領域のすべてに対し処理が完了している場合には、処理を終了すると判定し(S1603でYes)、検知結果修正処理を終了する。なお、第2の実施形態に係る画像処理装置100のこれ以外の構成及び処理は、第1の実施形態に係る画像処理装置100の構成及び処理と同様である。
【0077】
以上のように、第2の実施形態においては、画像処理装置100は、自動的に検知領域を修正することができる。
【0078】
なお、第2の実施形態の第1の変形例としては、予め設定される条件は、基準領域条件を含まず、修正領域条件及び採用条件の2つの条件でもよい。この場合、例えば、参照画像の各単位領域の位置に対応する、対象画像の位置に単位領域が複数存在していることを修正領域条件としてもよい。修正領域条件は、対象画像及び参照画像の検知領域に関する、予め設定された条件の一例である。なお、修正領域条件は、対象画像に含まれる検知領域と、参照画像に含まれる検知領域と、の間の位置関係により定まるものであればよく、具体的な関係性は本例に限定されるものではない。
【0079】
また第2の変形例としては、画像処理装置100は、第1の実施形態と第2の実施形態の処理を融合した処理を行ってもよい。画像処理装置100は、まず第2の実施形態において説明した処理により自動的に検知領域の修正を行い、修正後の状態の検知領域をユーザに提示する。そして、ユーザからの修正指示を受け付けた場合に、第1の実施形態において説明した処理により検知領域の一括での修正を行う。これにより、より効率的に修正処理を行うことができる。
【0080】
(第3の実施形態)
第3の実施形態の画像処理装置100は、対象画像と参照画像として、同じ撮影範囲が撮影された時系列データを使用する。インフラ構造物の検査では、同じ構造物の壁面を数年間隔で定期的に撮影して、変状を記録する。この検査により、数年前に比べて構造物の変状が増大したかを調べることができる。ただし、過去には問題なく撮影できても、再度撮影すると、天候などの条件により高画質な画像が得られないことがあり、その結果、前回は自動検知できていた箇所においても、最新データでは自動検知できない場合がある。また、過去データでは人手でトレースを行って記録できていたひび割れを、最新データでは自動検知できない場合がある。このような状況を踏まえ、第3の実施形態においては、数年前に撮影した構造物の壁面を再度撮影し、同じ領域の変状を検知するものとする。過去データには、全て人手によりトレースした結果や、自動検知結果またはその一部を人手で修正を加えた結果を用いてもよい。
【0081】
図17の1710,1720は、同一の撮影範囲を異なるタイミングで撮影した画像から得られた検知データである。具体的には、検知データ1720は、検知データ1710よりも過去のタイミングで得られた撮影画像から得られた検知データである。最新の検知データ1710においては、過去の検知データ1720に存在する検知領域が欠落した領域1711がある。構造物壁面の変状データは時間の経過に伴い伸長することがあっても、自然に消失することはない。そこで、画像処理装置100は、最新データ1710を対象画像、過去データ1720を参照画像として設定する。これにより、画像処理装置100は、対象画像の欠落領域1711に参照画像を統合して修正することができる。なお、第3の実施形態に係る画像処理装置100のこれ以外の構成及び処理は、他の実施形態に係る画像処理装置100の構成及び処理と同様である。
【0082】
(第4の実施形態)
第4の実施形態の画像処理装置100は、異なる検知対象の検知データを対象画像と参照画像として設定する。以下において、2通りの方法について説明する。1つ目は、同一の撮影画像に対し、異なる検知対象を検知する処理を別々に行い、その結果として得られる検知データを対象画像と参照画像に設定する方法である。例えば、画像処理装置100は、ある画像に対して、ひび割れを検知する処理と型枠を検知する処理を行う。これにより、例えば、
図18Aに示すひび割れの検知データ1810と、
図18Bは、型枠の検知データ1820とが得られる。ひび割れの検知データ1810の領域1811には、実際には型枠が存在しているものとする。すなわち、ひび割れの検知データ1810の領域1811内の検知領域は誤検知である。この場合に、画像処理装置100は、ひび割れの検知データ1810を対象画像、型枠の検知データ1820を参照画像として設定することで、ひび割れの検知データの誤検知領域を、型枠の検知データを利用して削除できる。ここで、ひび割れの検知データは、検知対象が検知されたと判定された検知領域を含む画像の一例であり、型枠の検知データは、非検知対象が検知されたと判定された検知領域を含む画像の一例である。
【0083】
ここで、ひび割れの検知データと型枠の検知データを得る処理について説明する。機械学習では、検知対象が写った元画像を用意し、検知対象が存在する位置に正解ラベルを付けた画像を正解データとして用意し、元画像と正解データのセットを大量に用いて学習を行うことで、検知対象を検知するためのモデルを生成することができる。この方法により、検知対象をひび割れと型枠とし、それぞれを検知するモデルを別々に用意し、それぞれのモデルによる検知結果をひび割れの検知データ及び型枠の検知データとして得ることができる。画像処理装置100又はこれ以外の装置において、ひび割れの写った元画像とひび割れの正解データをセットとして学習したひび割れ検知モデルと、型枠の写った元画像と型枠の正解データをセットとして学習した型枠検知モデルを別々に生成する。そして、生成したモデルを画像処理装置100に設定しておく。そして、画像処理装置100は、撮影画像に対し、ひび割れの検知モデルと型枠の検知モデルを別々に適用することで、ひび割れの検知データと型枠の検知データを得る。
【0084】
2つ目は、ある検知対象を複数の手段で検知した結果を使用する方法である。例えば、画像処理装置100は、輪郭抽出処理により取得したひび割れの検知データと、エッジ検出処理により取得したひび割れの検知データをそれぞれ、対象画像と参照画像に設定する。なお、対象画像と参照画像の組み合わせは、これらに限定されるものではなく、画像処理装置100は、異なる手法で取得した検知対象らしさを表す画像を対象画像と参照画像として設定してもよい。なお、第4の実施形態に係る画像処理装置100のこれ以外の構成及び処理は、他の実施形態に係る画像処理装置100の構成及び処理と同様である。
【0085】
以上の実施形態においては、インフラ構造物の画像を用いて、構造物壁面上のひび割れなどの変状データを検知対象として説明してきた。しかし、検知対象は変状検知に限定されるものではなく、例えば物体の輪郭抽出や人物トラッキング結果の軌跡の修正に適用してもよい。輪郭抽出では、変状データの検知と同様に、閾値を複数設定したときの結果を利用して検知結果を修正できる。トラッキングにおいても、複数の閾値処理結果や複数の手段で移動物体を追跡した結果がある場合に適用可能である。
【0086】
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0087】
本発明は上記実施の形態に制限されるものではなく、本発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、本発明の範囲を公にするために以下の請求項を添付する。
【0088】
本願は、2017年7月7日提出の日本国特許出願特願2017-133532を基礎として優先権を主張するものであり、その記載内容の全てをここに援用する。