IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ キヤノン株式会社の特許一覧

特許7391504情報処理装置、情報処理方法及びプログラム
<>
  • 特許-情報処理装置、情報処理方法及びプログラム 図1
  • 特許-情報処理装置、情報処理方法及びプログラム 図2
  • 特許-情報処理装置、情報処理方法及びプログラム 図3
  • 特許-情報処理装置、情報処理方法及びプログラム 図4
  • 特許-情報処理装置、情報処理方法及びプログラム 図5
  • 特許-情報処理装置、情報処理方法及びプログラム 図6
  • 特許-情報処理装置、情報処理方法及びプログラム 図7
  • 特許-情報処理装置、情報処理方法及びプログラム 図8
  • 特許-情報処理装置、情報処理方法及びプログラム 図9
  • 特許-情報処理装置、情報処理方法及びプログラム 図10
  • 特許-情報処理装置、情報処理方法及びプログラム 図11
  • 特許-情報処理装置、情報処理方法及びプログラム 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-27
(45)【発行日】2023-12-05
(54)【発明の名称】情報処理装置、情報処理方法及びプログラム
(51)【国際特許分類】
   G06Q 10/20 20230101AFI20231128BHJP
   G06Q 30/0283 20230101ALI20231128BHJP
   G01B 11/30 20060101ALI20231128BHJP
【FI】
G06Q10/20
G06Q30/0283
G01B11/30 A
【請求項の数】 14
(21)【出願番号】P 2018225992
(22)【出願日】2018-11-30
(65)【公開番号】P2020085869
(43)【公開日】2020-06-04
【審査請求日】2021-11-30
【前置審査】
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100090273
【弁理士】
【氏名又は名称】國分 孝悦
(72)【発明者】
【氏名】野上 敦史
【審査官】山崎 誠也
(56)【参考文献】
【文献】特開2015-007341(JP,A)
【文献】特開2019-108755(JP,A)
【文献】米国特許出願公開第2017/0293894(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
G01B 11/30
(57)【特許請求の範囲】
【請求項1】
少なくとも1つの設定を調整可能な検知処理により、処理対象の画像から、検知対象を検知する検知手段と、
前記検知処理の不良部分を設定する設定手段と、
前記不良部分の検知結果の修正に要する時間又は料金を修正コストとして推定する修正コスト推定手段と、
前記検知処理の設定の調整方法に応じて、前記検知処理の設定の調整に要する調整コストを推定する調整コスト推定手段と、
前記修正コストと前記調整コストを比較可能に表示手段に表示するよう制御する表示制御手段と
を有することを特徴とする情報処理装置。
【請求項2】
前記調整コストは、時間又は金額であることを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記検知処理の設定の調整指示を受け付ける調整指示受付手段をさらに有し、
前記調整コスト推定手段は、前記調整指示に従った調整方法に応じて前記調整コストを推定することを特徴とする請求項1又は2に記載の情報処理装置。
【請求項4】
前記設定手段は、ユーザ操作に応じて前記不良部分を設定することを特徴とする請求項1乃至3の何れか1項に記載の情報処理装置。
【請求項5】
前記設定手段は、前記検知処理の結果に基づいて、前記不良部分を設定することを特徴とする請求項1乃至3の何れか1項に記載の情報処理装置。
【請求項6】
前記検知処理は、検知対象の学習モデルを用いた処理であり、
前記設定手段は、前記検知対象の画像と前記学習モデルの類似度に基づいて前記不良部分を設定することを特徴とする請求項5に記載の情報処理装置。
【請求項7】
前記検知手段の検知対象は、壁面におけるひび割れであって、
前記設定手段は、検知対象の長さに基づいて、前記不良部分を設定することを特徴とする請求項5に記載の情報処理装置。
【請求項8】
前記修正コスト推定手段は、前記不良部分の面積に基づいて、前記修正コストを推定することを特徴とする請求項1乃至7の何れか1項に記載の情報処理装置。
【請求項9】
前記修正コスト推定手段は、前記不良部分の画像特徴量に基づいて、前記修正コストを推定することを特徴とする請求項1乃至8の何れか1項に記載の情報処理装置。
【請求項10】
前記検知手段は、前記検知処理の再実行指示を受け付けた場合に、前記設定の調整後の前記検知処理により、検知対象を検知し、
調整前の設定における前記検知処理により得られた検知結果と、前記再実行指示に係る検知処理により得られた検知結果を合成する合成手段をさらに有し、
前記表示制御手段は、前記合成手段により合成された前記検知結果を表示することを特徴とする請求項1乃至9の何れか1項に記載の情報処理装置。
【請求項11】
前記不良部分に基づいて、推奨調整方法を特定する方法特定手段をさらに有し、
前記表示制御手段は、前記方法特定手段により特定された前記調整方法を表示することを特徴とする請求項1乃至10の何れか1項に記載の情報処理装置。
【請求項12】
前記推奨調整方法を用いた検知処理における、検知結果の改善の期待値を推定する期待値推定手段をさらに有し、
前記表示制御手段は、前記期待値推定手段により推定された前記期待値を表示することを特徴とする請求項11に記載の情報処理装置。
【請求項13】
情報処理装置が実行する情報処理方法であって、
少なくとも1つの設定を調整可能な検知処理により、処理対象の画像から、検知対象を検知する検知ステップと、
前記検知処理の不良部分を設定する設定ステップと、
前記不良部分の検知結果の修正に要する時間又は料金を修正コストとして推定する修正コスト推定ステップと、
前記検知処理の設定の調整方法に応じて、前記検知処理の設定の調整に要する調整コストを推定する調整コスト推定ステップと、
前記修正コストと前記調整コストを比較可能に表示手段に表示するよう制御する表示制御ステップと
を含むことを特徴とする情報処理方法。
【請求項14】
コンピュータを、請求項1乃至12の何れか1項に記載の情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、構造物の画像から変状を検知する技術に関する。
【背景技術】
【0002】
画像から対象物を検知する検知処理では、検知処理に用いられる検知モデルやパラメータを検知対象画像に合わせて調整することで、検知精度が向上することが期待できる。特許文献1には、生産工程の検査のため、異常を検知する検知処理において、製品のロットや環境の変動に対応して検知処理の検知モデルを調整する技術が開示されている。この技術では、検知結果を評価し、評価結果に基づいて検知モデルを更新して、再び検知処理を実施する。
【0003】
一方、検知結果の精度が不十分でも、人間が検知結果を修正して利用するケースがある。例えば、橋梁やトンネルなどのインフラ構造物のコンクリート壁面の点検方法として、構造物の壁面を撮影した画像を調査して、ひび割れなどの変状の位置を記録する方法がある。このような画像を用いた点検では、点検対象画像からひび割れなどの変状を自動的に検知することで、人間が変状を記録する工数を削減することができる。しかし、現状では検知処理で変状を検知する際、部分的な誤検知や未検知を完全に無くすことは難しい。記録する点検結果としては、求める検知精度に対して不十分な検知結果が得られることがある。このような場合、得られた不十分な検知結果を人間が確認し、必要に応じて修正して、最終的な点検結果を作成することが好ましい。
【先行技術文献】
【特許文献】
【0004】
【文献】特開平10-21393号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、検知結果を人間が修正するとなると、修正作業の時間などの修正コストが発生する。一方で、前述したように、検知結果が不十分な場合に、検知処理を調整して、検知結果の精度を向上させることができるが、この場合にも、検知モデルの再学習などにより時間的なコストや金銭的なコストがかかる。
【0006】
本発明はこのような問題点に鑑みなされたもので、コストを抑えつつ適切な検知結果を得るための仕組みを提供することを目的とする。
【課題を解決するための手段】
【0007】
そこで、本発明は、情報処理装置であって、少なくとも1つの設定を調整可能な検知処理により、処理対象の画像から、検知対象を検知する検知手段と、前記検知処理の不良部分を設定する設定手段と、前記不良部分の検知結果の修正に要する時間又は料金を修正コストとして推定する修正コスト推定手段と、前記検知処理の設定の調整方法に応じて、前記検知処理の設定の調整に要する調整コストを推定する調整コスト推定手段と、前記修正コストと前記調整コストを比較可能に表示手段に表示するよう制御する表示制御手段とを有することを特徴とする。
【発明の効果】
【0008】
本発明によれば、コストを抑えつつ適切な検知結果を得るための仕組みを提供することができる。
【図面の簡単な説明】
【0009】
図1】第1の実施形態に係る情報処理装置のハードウェア構成図である。
図2】情報処理装置の機能構成図である。
図3】コスト表示処理を示すフローチャートである。
図4】検知処理を示すフローチャートである。
図5】ひび割れ検知結果の一例を示す図である。
図6】ウィンドウの表示例を示す図である。
図7】検知対象画像の一例を示す図である。
図8】第2の実施形態に係る情報処理装置の機能構成図である。
図9】第2の実施形態に係るコスト表示処理を示すフローチャートである。
図10】検知結果合成処理の説明図である。
図11】第3の実施形態に係るウィンドウの表示例を示す図である。
図12】情報処理システムの構成例を示す図である。
【発明を実施するための形態】
【0010】
以下、本発明の実施形態について図面に基づいて説明する。
【0011】
(第1の実施形態)
第1の実施形態においては、橋梁やトンネルなどのインフラ構造物のコンクリート壁面の点検において撮影された画像に基づいて、対象物を検知する検知処理を行う情報処理装置について説明する。
【0012】
インフラ構造物の壁面の点検では、点検者は、コンクリート壁面の変状を記録する。コンクリート壁面の変状には、例えば、ひび割れ、エフロレッセンス、ジャンカ、コールドジョイント、鉄筋露出などがある。画像を用いた点検では、点検者は、構造物の壁面を撮影し、撮影した画像の中から、変状の位置や範囲を記録することで点検結果を作成する。画像の中から、全ての変状を発見、記録する作業は大変な作業となる。従って、機械による検知処理により、画像から自動的に変状を検知することが好ましい。しかし、検知結果には、一般に、検知漏れや検知誤りが含まれており、正しい点検結果を作成するためには、検知漏れや検知誤りを修正する必要がある。しかし、人間が修正を行うと、修正の作業時間が発生する。このような修正コストは可能な限り小さいことが好ましい。
【0013】
一方、検知処理をターゲットの構造物に合わせて調整することで、検知結果の精度が向上することが期待される。構造物の壁面の画像は、壁面の種類や、撮影条件などにより様々なバリエーションがある。このため、特定の検知処理の設定で、全ての画像に対して良好な検知結果を得ることは難しい。一方で、検知の対象となる画像に合わせて、検知処理の設定を調整することで、高い精度の検知結果を得ることができる。しかし、検知処理を調整することにも、時間や料金などの調整コストが発生する。具体的には、検知処理が機械学習を用いて実施されているとすると、検知対象画像に適した検知モデルを、再学習するために、学習時間や計算機リソースの利用料金が発生する。
【0014】
これに対し、本実施形態に係る情報処理装置は、検知結果などに基づき修正コストと調整コストを算出し、これを比較可能な状態でユーザに提示する。これにより、検知結果を採用した上で、ユーザ操作により修正して利用するのと、検知処理を調整して、再度、検知処理を実施して新しい検知結果を作成するのと、どちらが好ましいかをユーザが判断することができる。なお、以下では、画像からの検知対象の変状をひび割れとして説明するが、検知対象は、画像から特定可能なものであればよく、ひび割れに限定されるものではない。
【0015】
また、実施形態においては、SaaS(Software as a Service)でひび割れ検知を行う例を説明する。本実施形態のSaaSでは、まず、ユーザが検知対象画像に対するひび割れ検知をサービスに依頼し、検知結果を受け取る。ユーザは検知結果を確認して、検知結果を修正して最終的な点検結果を作成するか、検知処理の調整を行って、再度検知処理を依頼するかを判断する。本実施形態のSaaSは、検知処理の実施や検知処理の調整などの利用内容に従って利用料金が発生するサービスであるとする。本実施形態の情報処理装置は、このようなサービス機能を有している。
【0016】
図1は、第1の実施形態に係る情報処理装置100のハードウェア構成図である。本実施形態に係る情報処理装置100は、CPU101と、ROM102と、RAM103と、HDD104と、表示部105と、入力部106と、通信部107とを有している。CPU101は、ROM102に記憶された制御プログラムを読み出して各種処理を実行する。RAM103は、CPU101の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD104は、各種データや各種プログラム等を記憶する。表示部105は、各種情報を表示する。入力部106は、キーボードやマウスを有し、ユーザによる各種操作を受け付ける。通信部107は、ネットワークを介して画像形成装置等の外部装置との通信処理を行う。
【0017】
なお、後述する情報処理装置100の機能や処理は、CPU101がROM102又はHDD104に格納されているプログラムを読み出し、このプログラムを実行することにより実現されるものである。また、他の例としては、CPU101は、ROM102等に替えて、SDカード等の記録媒体に格納されているプログラムを読み出してもよい。
【0018】
また、他の例としては、情報処理装置100の機能や処理の少なくとも一部は、例えば複数のCPU、RAM、ROM、及びストレージを協働させることにより実現してもよい。また、他の例としては、情報処理装置100の機能や処理の少なくとも一部は、ハードウェア回路を用いて実現してもよい。
【0019】
図2は、情報処理装置100の機能構成図である。情報処理装置100は、モデル格納部201と、検知部202と、不良部分設定部203と、コスト算出部204(修正コスト推定部208、調整コスト推定部209)と、モデル学習部205と、調整方法設定部206と、表示制御部207と、を有している。モデル格納部201は、既存のひび割れ画像で学習した、ひび割れを検知する検知モデルを格納する。検知部202は、検知モデルに基づいて、検知対象(ひび割れ)の検知処理を行う。なお、検知部202が実行する検知処理の検知モデルや設定値等はユーザ操作に応じて調整可能である。不良部分設定部203は、対象画像において不良部分を設定する。ここで、不良部分とは、正しい検知結果が得られなかった領域である。
【0020】
本実施形態のコスト算出部204は、修正コストの推定値を求める修正コスト推定部208と調整コストの推定値を求める調整コスト推定部209とからなる。ここで、修正コストは検知結果の修正をユーザ操作に応じて行う場合に要するコストである。また、調整コストは、検知結果を改善するために、検知部202による検知処理の設定を調整する場合に調整に要するコストである。なお、コスト算出処理については後に詳述する。モデル学習部205は、検知モデルの学習を行う。調整方法設定部206は、ユーザ操作に従い、検知処理の調整方法を設定する。表示制御部207は、表示部105への表示を制御する。
【0021】
図3は、情報処理装置100によるコスト表示処理を示すフローチャートである。S301において、情報処理装置100の検知部202は、処理対象の画像を取得し、取得した画像に対し、検知処理を行う。以下、処理対象の画像を検知対象画像と称することとする。前述の通り、本実施形態においては、検知部202は、機械学習を用いてひび割れを検知するものとする。機械学習によりひび割れを検知する方法では、ひび割れを含む画像と、ひび割れ位置を示す教師データを用いて学習を行う。この学習には様々な方法があり、どのような方法を用いてもよい。例えば、画像の各画素に関する特徴量を作成し、この特徴量を識別器で識別する方法により、各画素がひび割れか否かを判定することができる。これらの特徴量や識別器はどのような方法を用いてもよいが、例えば、HOG特徴量やSVM、CNNなどの方法を用いることができる。
【0022】
機械学習では、予め、既存のひび割れ画像と教師データを用いて、SVMやCNNなどの識別器の重みを学習しておく必要がある。検知処理を実行するときには、このような識別器の重みを呼び出して利用する。このような識別器の重みなどの、機械学習の検知処理のために予め学習した結果が検知モデルであり、モデル格納部201には、既存のひび割れ画像で学習した、ひび割れを検知する検知モデルが格納されている。
【0023】
図4は、検知処理(S301)における詳細な処理を示すフローチャートである。S401において、検知部202は、検知処理を実行するために、まずモデル格納部201から検知モデルを呼び出す。そして、検知部202は、検知対象画像を取得する。次に、S402において、検知部202は、検知対象画像に対して、前処理を実施する。前処理は、画像ノイズの除去や、輝度の調整など、ひび割れ検知を実行しやすくするために検知対象画像を変換、加工する処理である。次に、S403において、検知部202は、検知モデルを用いて検知対象画像に対して識別処理を行う。本実施形態においては、検知部202は、識別処理において、検知対象画像の各画素が、ひび割れであるか否かを、識別器で識別するものとする。検知部202はさらに、検知対象画像の画素毎に、ひび割れらしさを示すスコアを求める。ひび割れらしさを示すスコアは、高い値であるほど、ひび割れであることを示すものとする。以下では、このスコアを各画素に格納したデータをスコアマップと呼ぶ。
【0024】
次に、S404において、検知部202は、後処理を実行する。具体的には、検知部202は、スコアマップに対して閾値処理を行うことにより、ひび割れと判定する画素を決定する。なお、後処理には、スコアマップや閾値処理後の結果に対して、ノイズ除去処理を実施する処理や、スコアマップへ細線化処理を行うことでひび割れ位置を詳細に特定する処理が含まれてもよい。さらに、後処理には、ひび割れ検知結果の位置や形状を整形する処理等が含まれてもよい。次に、S405において、表示制御部207は、検知結果を表示部105に表示するよう制御する。
【0025】
以上、説明したように、本実施形態の情報処理装置100は、検知処理において、既存のひび割れ画像で学習した検知モデルを用いて、検知対象画像のひび割れを検知する。しかし、この検知モデルは、必ずしも検知対象画像の検知に適しているとは限らない。一般的には、高精度な検知結果を得るためには、学習画像と検知対象画像の画像条件が類似することが好ましいが、学習画像と検知対象画像の画像条件が乖離している場合がある。例えば、検知モデルの学習に用いる画像は、過去に撮影した様々な構造物の壁面の画像が含まれるが、構造物壁面の見た目は様々な状態が存在するため、新規に与えられた検知対象画像の見た目が、学習画像に類似しているとは限らない。また、照明条件など画像の撮影条件も様々な状態が存在するため、撮影条件の違いにより学習画像と検知対象画像が類似しないこともあり得る。このようなケースでは、検知対象画像の検知結果は不十分な精度の結果となる。
【0026】
検知結果が不十分な場合には、検知モデルを検知対象画像に適した状態に調整して、再度、検知処理を実施することが好ましい。検知モデルの調整方法としては、例えば、検知モデルを再学習する方法がある。検知対象画像の一部に教師データを入力し、この一部の画像を用いて検知モデルを学習することで、検知対象画像に適した検知モデルを学習することができる。また、予め複数の検知モデルを準備しておき、検知対象画像に適した検知モデルを選択することで、検知対象画像に対して検知モデルを調整することもできる。具体的には、予め、様々な組み合わせの学習画像セットや学習パラメータで、異なる複数の検知モデルを学習しておき、これらをモデル格納部201に格納しておく。そして、ある検知モデルで検知処理を実施した結果、検知結果が不十分な場合には、別の検知モデルを選択して、再度、検知処理を実施する。
【0027】
また、図4を参照しつつ説明したように、検知処理には、前処理(S402)、識別処理(S403)及び後処理(S404)が含まれ、それぞれの処理において、様々なパラメータが存在する。例えば、前処理のノイズ除去の強さを調整するパラメータや、後処理のスコアマップ閾値処理の閾値パラメータである。これらのパラメータは、通常、汎用的な設定で検知処理が行われる。ただし、検知対象画像に合わせて調整する方が、好ましい検知結果を得ることができる。例えば、ひび割れ検知結果の誤検知が多い場合には、検知結果のノイズ除去を強くする方向にパラメータを調整することにより、好ましい検知結果を得ることができるようになる。
【0028】
以上のように、本実施例の検知処理は、検知モデルの学習やパラメータチューニングなど、検知処理の調整方法が複数存在する。本実施形態に係る情報処理装置100は、検知結果が不十分な場合に、ユーザが検知処理の調整を行うべきかを判断するための情報を提示する。以降では、まず、検知結果が不十分であることの判定について説明し、次に、情報の提示について説明する。
【0029】
検知処理以降の処理の説明に先立ち、まず、表示部105に表示されるウィンドウについて説明する。図5は、検知処理の後に表示部105に表示されるGUIアプリケーションのウィンドウ500を示す図である。図5には、ウィンドウ500の画像表示領域501に、検知対象画像とひび割れ検知結果が表示されている様子を示している。図5に示す検知対象画像は、橋梁の壁面で、橋梁の床版511、橋脚512、513の壁面画像が平面図に貼り付けられた画像データであるとする。図5では、前述した検知処理のひび割れ検知結果521が、検知対象画像に重畳して表示されている様子を示している。図5の画像表示領域501には、さらに、点線の矩形522で検知結果が不十分な領域が、不良部分として示されている。不良部分422は、不良部分設定部203で設定される。
【0030】
図3に戻り、先に説明したS301に続くS302において、不良部分設定部203は、不良部分を設定する。以下、この不良部分422の設定方法について説明する。本実施形態においては、ユーザが入力部106を介して、検知結果が不十分な領域を指定する。ユーザは、画像表示領域501に表示された検知結果を確認し、誤検知や未検知が存在する領域を不良部分として設定する。このために、情報処理装置100は、矩形や自由形状で画像表示領域501の部分領域を指定する機能を備えるものとする。また、情報処理装置100は、検知結果を確認するために、検知対象画像の拡大縮小表示の機能や、検知結果の表示、非表示を切り替える機能も備えるものとする。そして、不良部分設定部203は、ユーザ操作に従い、不良部分を設定する。
【0031】
なお、他の例としては、不良部分設定部203は、検知処理の結果に基づいて、不良部分を設定してもよい。以下では、ひび割れ検知において、不良部分を設定する3種類の方法を説明する。不良部分を設定する第1の方法として、検知結果を評価して不良部分を判定する処理について説明する。ここでは、具体的な判定方法として、短い検知結果が多い領域を不良部分とする方法について説明する。図6には、検知対象画像600のひび割れ検知結果を示す。ひび割れは、一般的には、ある程度の長さを持っているので、良好な検知結果は連続的な線として現れる。例えば、図6のひび割れ検知結果601は、良好な検知結果の例である。一方、検知処理の結果が不十分な場合、ひび割れ検知結果が不連続な途切れた結果として得られることがある。例えば、図6の検知結果602、603などは、本来、1つの連続したひび割れ検知結果として得られるべきひび割れが、不連続な検知結果として検知されたものである。
【0032】
このように不連続な検知結果が得られる原因は、例えば、このひび割れ部分の画像に対して、検知モデルが適しておらず、ひび割れ部分のスコアが高く算出さていないことが考えられる。画素毎のひび割れスコアは、後処理で閾値処理するが、検知モデルが適していない場合には、検知対象のひび割れのスコアが低い画素が閾値以下となってしまい、最終的な検知結果として残らない。この結果、検知結果のひび割れが不連続になってしまう。これを改善するためには、当該画像部分に適した検知モデルを再学習する対応や、後処理の閾値の値を調整する対応を行うことなどが必要になる。不良部分設定部203は、このように不連続な検知結果の領域を特定して、その領域を含む範囲を不良部分610として設定する。なお、図6の不良部分610は、矩形範囲で示しているが、不良部分の設定形状はこれに限らず、不連続な検知結果に沿った不定形状の範囲としてもよい。
【0033】
また、構造物壁面の汚れや凹凸などにより、誤検知が発生している領域も、短い検知結果が多い領域となる傾向にある。そこで、不良部分設定部203は、検知結果の局所領域毎に、短い検知結果の数を集計して、所定以上の短い検知結果を含む局所領域を不良部分として設定してもよい。また、不良部分設定部203は、短い検知結果を含むと判定した局所領域について、近傍の局所領域を連結して、ある程度の広さを持つ範囲を不良部分として設定してもよい。
【0034】
次に、不良部分を設定する第2の方法について説明する。第2の方法は、検知処理の中間情報であるスコアマップを利用して不良部分を設定する方法である。前述したように、スコアマップは、あるひび割れ検知モデルで、検知対象画像の各画素を識別した結果のスコアを格納したマップである。好ましいスコアマップは、ひび割れの部分にのみ高いスコアが記録されたデータである。ただし、ひび割れ検知の識別器は画像中のエッジに反応しやすく、現実的には、ひび割れ以外のエッジ部分(例えば、コンクリート壁面の目地など)にも比較的高いスコアが記録される。検知対象画像中に、コンクリート目地などのひび割れ以外のエッジが含まれることが一般的である。このため、ひび割れが存在しない領域であっても、スコアマップは画像エッジ部分にスコアが格納された強弱のあるマップになる。なお、このひび割れ以外のエッジ部分のスコアが後処理の閾値を超えると、ひび割れの誤検知結果となるが、真に好ましいスコアマップでは、ひび割れ以外のエッジ部分のスコアは閾値以下の値に収まる。
【0035】
一方、検知対象画像に適していない検知モデルで識別したときには、スコアがまったく出力されず、全ての画素がゼロ、またはゼロに近いスコアが格納される場合がある。また、画像中のどの部分でも同様のスコアが出力され、強弱のない平坦なスコアマップが得られることがある。このように平坦なスコアマップが得られる領域は、検知対象画像に検知モデルが適していないと推定することができる。このことから、不良部分設定部203は、スコアマップの局所領域毎に、スコアマップのスコアの平坦性を評価して、所定の基準よりも平坦なスコアマップを出力している部分領域を検知処理の不良部分として設定してもよい。
【0036】
スコアマップの局所領域の平坦性は、例えば、局所領域内のスコアの分布を集計し、分布の状態から判断すればよい。また、不良部分設定部203は、このスコアマップが平坦と判定した局所領域について、近傍の局所領域を連結して、ある程度の広さを持つ範囲を不良部分として判定するようにしてもよい。以上のような方法により、スコアマップを用いて検知処理の不良部分を設定することができる。なお、スコアマップを用いて不良部分を設定する方法は、この方法に限らず、他の方法を用いてもよい。
【0037】
次に、不良部分を設定する第3の方法について説明する。第3の方法は、検知対象画像が未知の画像である場合の設定方法である。前述したように、機械学習を用いたひび割れ検知では、学習していない画像に対する検知処理は不十分な結果になりやすい。具体的には、例えば、学習画像に含まれていない構造物壁面テクスチャが検知対象画像となった場合には、当該学習画像で学習した検知モデルでは、良好な検知結果を得ることは難しい。これに対し、第3の方法では、不良部分設定部203は、検知対象画像の局所領域毎に、局所領域が学習画像と類似しているかを判定し、類似していない局所領域を不良部分として設定する。
【0038】
このために、予め、学習データの画像セットと検知対象画像の類似度を算出する画像類似度判定機を作成し、情報処理装置100に登録しておくものとする。画像類似度判定機は、学習画像セットと検知対象画像の局所領域の類似度を算出することができるものであればよい。画像類似度判定機は、例えば、以下のような方法で実現できる。
【0039】
まず、学習画像セットの各画像から画像特徴量を抽出し、特徴空間での画像特徴量の分布を記録しておく。次に、検知対象画像の局所領域の画像からも画像特徴量を抽出し、学習画像セットの特徴量分布との距離の逆数を求めることで類似度を算出する。画像特徴量と学習画像セットの特徴量分布の距離は、分布の平均値と画像特徴量の距離を求めてもよいし、マハラノビス距離を用いて距離を求めてもよい。このようにして算出した類似度が所定以下であれば、検知対象画像の局所領域は、学習していない未知画像であり、検知結果の性能も期待することができない。従って、類似度が所定以下の局所領域を不良部分と設定する。
【0040】
以上、不良部分を自動的に設定する方法を3種類説明したが、不良部分の自動設定のための方法は、これらの方法に限定されない。不良部分設定部203は、検知処理の結果が不十分である部分、または不十分と推定される部分を不良領域として設定すればよい。
【0041】
さらに、上記のような方法により不良部分設定部203が自動的に設定した不良領域を、ユーザ操作に応じて修正することができるようにしてもよい。この場合、自動的に設定された不良部分を画像表示領域501に表示し(例えば、図5の点線の矩形522)、この不良部分の位置、サイズ、形状などを変更できるように、入力部106にGUIの機能を持たせればよい。さらに、自動的に設定された不良部分から、不適切なものをユーザが選択して消去できるようにしてもよい。さらに、ユーザが自動的に設定された不良部分に加えて、任意の領域を不良部分として設定できるようにしてもよい。これらの場合においては、不良部分設定部203は、ユーザ操作に応じて、不良領域を変更する。
【0042】
また、他の例としては、不良部分設定部203は、画素や局所領域毎に、検知結果の不良度を算出し、所定の閾値以上の不良度の領域を不良部分として設定してもよい。ここで、不良度は、画素や局所領域の検知結果が不良であるほど高くなる値であるとする。例えば、前述した第2の方法におけるスコアマップの平坦性を不良度としてもよいし、第3の方法における学習画像セットの特徴量分布との距離を不良度としてもよい。さらに、ユーザが、任意の不良度の閾値を設定することとし、不良部分設定部203は、設定された不良度の閾値以上の領域を不良部分として設定してもよい。この場合、入力部106及び表示部105では、GUIのスライダー等で、任意の不良度の閾値を設定できるようにする。また、設定した閾値により、不良部分と設定される領域が表示されるようにする。このようにすることで、ユーザは、不良度の閾値を調整しながら、所望の範囲が不良部分となるように調整することができるようになる。
【0043】
以上では、検知対象画像の部分画像領域を不良部分とする実施形態について説明したが、他の例としては、不良部分設定部203は、構造物の構造部分毎に不良部分の設定を行うようにしてもよい。例えば、図7には、床版701、橋脚702、703の3つの構造部分の検知対象画像を示している。この内、橋脚702の構造部分が不良部分710として判定されている。このように、構造物の構造部分毎に不良部分を判定する方法は、以下のようにして実施することができる。
【0044】
不良部分設定部203は、まず、前述のように、検知対象画像の部分画像領域毎に不良部分を判定する。そして、不良部分設定部203は、所定の構造部分ごとに、構造部分に含まれる不良部分の量や構造部分の領域に占める不良部分の割合を算出する。そして、不良部分設定部203は、これらの不良部分の量や割合が、所定以上となる構造部分を不良部分として設定する。
【0045】
これにより、不良部分の判定を構造物の構造部分毎に設定することができる。なお、図7の例では、不良部分を判定するための構造部分を床版と橋脚としたが、検知対象画像の分割方法はこの限りではなく、任意の分割方法で検知対象画像を分割してもよい。不良部分設定部203では、以上のような方法で、検知処理の結果の中から、検知処理の精度が不十分な画像領域、または、不十分と推定される画像領域を決定し、これを不良部分として設定する。
【0046】
図3に戻り、S302処理の後、S303にいて、修正コスト推定部208は、不良部分設定部203により設定された不良部分に基づいて、修正コストを算出する。本処理は、修正コストを推定する修正コスト推定処理の一例である。修正コスト推定部208は、修正コストとして、予測修正時間を算出する。ここで、予測修正時間は、修正コストを時間で表したもので、検知処理の結果をユーザが手動で修正したときに要する修正時間である。修正コスト推定部208は、不良部分として設定された画像領域の面積に基づいて、予測修正時間を算出する。不良部分は、検知処理の結果が不十分な領域であるため、ユーザは、この領域の検知結果を修正しなければならない。この修正作業について、単位面積当たりの修正時間を予め設定しておくことで、不良部分の画像領域面積に基づいて、修正時間を予測することができる。具体的には、修正コスト推定部208は、(式1)により、修正時間を算出してもよい。
Cr=f(a)=wa+b ・・・(式1)
ここで、Crは修正コスト(予測修正時間)、aは不良部分の面積、wは単位面積当たりの修正時間、bは修正を実施することにより発生する固定の作業時間(定数)である。修正コストとして算出された予測修正時間は、図5の修正コスト表示領域530に表示される。
【0047】
上記の例では、単純に不良部分の画像領域面積に基づいて修正コストを算出したが、他の例としては、修正コスト推定部208は、不良部分の画像特徴量に基づいて、修正コストを算出してもよい。例えば、修正コスト推定部208は、不良部分の画像特徴量に基づいて、不良部分の修正難易度を推定し、この修正難易度に基づいて修正コストを算出してもよい。例えば、不良部分の画像領域が、複雑なテクスチャのコンクリート壁面の場合には、ひび割れを判断することが難しく、修正作業に時間を要する。そこで、複雑なテクスチャの場合に、修正難易度が高い判断とする。また、不良部分の画像領域のひび割れの量が多いと予測される場合には、修正作業におけるひび割れの判断回数や入力回数が多くなる。したがって、このような場合に、修正難易度が高いと判断する。
【0048】
このような考えに基づいた修正難易度を算出するための具体的な方法について説明する。修正コスト推定部208は、例えば、不良部分の画像領域のエッジ強度やエッジ量に基づいて修正難易度を算出する。コンクリート壁面のテクスチャが複雑な場合や、ひび割れの量が多い画像領域には、強い画像エッジが多く存在する。そこで、本実施形態においては、修正コスト推定部208は、不良部分の画像領域に対して、エッジ抽出処理を実施し、不良部分のエッジ強度やエッジ量に基づいて修正難易度を算出する。具体的には、修正コスト推定部208は、不良部分の各画素のエッジ強度を集計し、修正難易度とする。また他の例としては、修正コスト推定部208は、不良部分の各画素について、エッジと判定するか否かの2値化処理を実施して、不良部分の領域においてエッジと判定した画素数を修正難易度としてもよい。
【0049】
修正コスト推定部208は、修正難易度を用いた修正コスト算出においては、修正難易度の値や修正難易度の高い不良部分の量に基づいて、修正コストを算出する。具体的には、例えば、修正難易度が高いほど、不良部分の単位面積当たりの修正時間が長くなるものとして、予め単位面積当たりの修正時間を設定しておく。そして、修正コスト推定部208は、不良部分の画像領域面積と、各不良部分の修正難易度と、各修正難易度の単位面積当たり修正時間に基づいて、修正時間を予測する。これにより、修正難易度の高い不良部分を多く含む場合には、長い修正時間が予測されるようになり、不良部分の画像特徴量に基づいて、修正コストを算出することができるようになる。
【0050】
なお、本実施形態においては、修正コスト推定部208は、修正コストとして修正に要する時間を算出することとしたが、修正コストは時間に限定されるものではない。他の例としては、修正コスト推定部208は、修正に要する金額を修正コストとして算出してもよい。ここで、修正コスト推定部208が修正コストとして金額を算出する例について説明する。
【0051】
まず、本実施形態においてひび割れ検知は、SaaSのサービス形態であるとした。ここでは、サービス提供側のオペレーターが、手動で検知結果を修正する有料オプションも提供しているものとする。そして、ユーザは、入力部106を介して、検知結果の不良部分の修正をオペレーターに委託する選択を行うことができるものとする。
【0052】
ユーザが、検知結果の不良部分の修正をオペレーターに委託する選択を行った場合には、修正コスト推定部208は、修正コストを修正作業の委託料金に切り替えて算出する。修正作業の委託料金は、予想修正時間と同様に、不良部分の面積や難易度に基づいて算出されるものとする。このように、修正コスト推定部208は、修正コストとして、金額を算出してもよい。また、ユーザが修正作業委託のオプションを選択しなくても、修正コスト推定部208は、修正コストとして、修正作業時間と委託料金の両方を算出することしてもよい。
【0053】
また、ユーザが修正作業委託のオプションを選択しなくても、修正コスト推定部208は、修正コストとして、修正作業時間と委託料金の両方を算出し、修正コスト表示領域530には、修正作業時間と委託料金の両方が表示されてもよい。これにより、ユーザは、自身で検知結果を修正する場合の予測時間と、修正作業を委託した場合の金額を比較して、自身で修正を行うか、修正作業の委託を行うかを判断することができる。
【0054】
図3に示すS303の処理の後、S304において、調整方法設定部206は、ユーザ操作に応じた調整指示を受け付け、調整指示に従い調整方法を設定する。ここで、調整指示を受け付ける処理は、調整指示受付処理の一例である。次に、S305において、調整コスト推定部209は、S304において設定された調整方法に対応した調整コストを算出する。ここで、調整コストとは、調整後の設定値にかかる検知処理を実行した場合に要するコストである。S305の処理は、調整コストを推定する調整コスト推定処理の一例である。
【0055】
ユーザは、検知結果が得られたときに、検知結果を修正するだけでなく、検知処理を調整して、再度、検知を実行して、検知結果の改善を試みることができる。このために、図5に示すウィンドウ500には、検知処理の調整方法を設定する調整領域540と、設定した調整方法に基づいて調整コストを表示する調整コスト表示領域531とが表示される。以下、検知処理の調整方法を設定する処理(S304)と、調整コストを算出する処理(S305)と、について説明する。
【0056】
まず、図5に示すウィンドウ500の調整領域540について説明する。調整領域540は、検知処理の検知モデルに関する調整を設定する領域541と、各種パラメータを設定する領域542を有している。前述したように、本実施形態の検知部202が実行する検知処理においては、検知対象画像に適した検知を行うために、検知モデルや検知処理のパラメータなどの設定を調整することができる。この調整方法については、複数の設定項目があり、調整領域540は、複数の調整方法を設定するための操作を受け付ける。
【0057】
例えば、検知モデルに関する調整方法の設定を行う領域541では、「検知モデルの切り替え」を設定する項目がある。この設定では、モデル格納部201に保存されている別の検知モデルに切り替えて検知処理を再実施する調整方法を選択することができる。なお、モデル格納部201には、異なる条件で学習した複数の検知モデルが保存されているものとする。
【0058】
また、さらに、「検知モデル再学習」の項目を選択すると、検知モデルの再学習を実施する設定を行うことができる。「検知モデル再学習」の設定では、さらに、「追加教師データ作成」を設定することにより、検知対象画像の一部に、教師データを入力することができる。これにより、検知対象画像の一部の画像と、対応する教師データを用いて、検知対象画像での検知に適した検知モデルを学習することができる。
【0059】
また、各種設定には、オプションを選択できるようにしてもよく、例えば、「追加教師データ作成」では、「教師データ作成委託」のオプション項目を選択することにより、サービスのオペレーターに教師データ入力を委託することができるようにしてもよい。また、「高速計算機利用」のオプション項目を備え、高速な計算機で学習させることを選択できるようにしてもよい。
【0060】
以上は、検知モデルに関する設定の一例であり、検知モデル設定を行う領域541に表示する内容は、これら以外の学習条件などを含んでもよい。また、図5には、項目を設定するために、各項目についてチェックボックスが表示される例を示しているが、項目の設定方法は、これに限定されるものではない。他の例としては、他のインターフェースを備えてもよい。例えば、各種の検知方法の調整の設定項目を順次、表示し、ユーザに設定の実施、または非実施を判断させるようにしてもよい。
【0061】
同様に、パラメータを設定する領域542には、検知処理の前処理や後処理などのパラメータを設定する項目が表示されている。図5には、これらの一例として、前処理の「明るさ調整」や「ノイズ除去強度」のパラメータを調整する設定を実施するインターフェースを示している。図5には、これらのパラメータの値を設定するために、スライダー543が表示される例を示している。なお、パラメータ設定の種類は、これらに限らず、他のパラメータを設定できるようにしてもよい。例えば、後処理におけるスコアマップの閾値処理の閾値の値を設定できるようにしてもよいし、後処理の検知結果ノイズのノイズ除去強度を調整するパラメータを設定できるようにしてもよい。
【0062】
図5には、調整領域540において、ユーザが各項目のオンオフやパラメータの値などの調整方法が設定された状態を示している。なお、ユーザが調整方法を設定する前の調整領域540の初期状態では、すべての調整項目の設定がブランクの状態となっている。図5においては、ユーザが選択した調整方法のチェックボックスに設定を実施する旨を示すチェックが入力されているが、初期状態は、これらすべてのチェックが外れている状態とする。また、図5のウィンドウ500には、前処理の明るさ調整のパラメータを設定する方法として、スライダー543を備えている。図5では、このスライダー543が操作されて、あるパラメータが設定されている状態を示している。初期状態では、このようなパラメータの数値も、予め決められた所定の値に設定されているものとする。
【0063】
なお、図5の例では、図5に示すように設定された調整方法に基づいて調整コストが算出され、調整コスト表示領域531に調整コストが表示されるが、初期状態においては、調整コスト表示領域531に調整コストは表示されない。また、他の例としては、初期状態においては、調整コストがゼロである旨が表示されてもよい。
【0064】
調整領域540の初期状態は、上記の内容に限らず、他の状態としてもよい。例えば、以前、ユーザが設定した検知方法の調整の設定を、ユーザの好みとして記録しておき、その設定内容を初期状態としてもよい。また他の例としては、検知対象の構造物と類似した過去の事例において設定した調整方法を呼び出して、これを初期状態としてもよい。類似した過去事例は、例えば、構造物の種類や特徴から過去の事例と調整方法を呼び出せるようにしておき、検知対象構造物の種類や特徴を入力することで、類似した構造物で設定した調整方法を呼び出して初期状態とする。なお、構造物の種類や特徴は、具体的には、橋梁やトンネルなどの構造物種類や、建築からの経過年数、構造物の場所、年平均気温、などの情報である。
【0065】
また、類似した過去事例は、画像特徴に基づいて選択するようにしてもよい。この場合、検知対象画像と、過去事例の画像の画像特徴量を抽出し、検知対象画像と最も類似する画像特徴量を有する過去事例を選択して、この過去事例で設定した調整方法を呼び出す。また、検知処理のパラメータの値については、S302で検知処理を実施したときのパラメータを設定の初期値として表示してもよい。具体的には、例えば、図5の「明るさ調整」のスライダー543の初期値を、検知処理を実施したときのパラメータとしてもよい。
【0066】
以上のように、調整領域540には、ユーザが検知処理の調整方法を設定するための表示とインターフェースが表示される。ユーザが、調整領域540において調整方法を設定すると、調整方法設定部206は、設定に係る調整指示を受け付ける。そして、調整方法設定部206は、調整指示に従い、調整方法を設定する。そして、調整コスト推定部209は、設定された調整方法が反映された検知処理に要するコストを調整コストとして算出する。
【0067】
本実施形態においては、調整コスト推定部209は、調整コストとして調整処理時間と調整金額とを算出する。以下、調整コストの算出方法について説明する。調整コスト推定部209は、予め各調整方法に対して処理時間や金額を設定しておき、ユーザが設定した調整方法の組み合わせに基づいて、各調整方法に設定された処理時間や金額を足し合わせることで調整処理時間や金額を算出する。各調整方法に対して設定する処理時間や金額は、調整方法ごとに必要となる時間や人件費、あるいは計算コストなどに基づいて予め設定されているものとする。
【0068】
例えば、検知モデルの学習を実施する設定は、学習処理を実施するために長時間の計算処理を実施する必要があるため、処理時間がかかり、また計算機を使用するための料金も発生する。従って、検知モデルの学習を実施する調整方法は、他の調整方法と比べて処理時間や金額が高く設定されている。また、学習のためには、検知対象画像の一部に対してひび割れ位置を示す教師データを作成する必要があり、これをオペレーターに委託するオプションを設定すると、教師データ作成のための時間や、人件費が発生する。従って、このオプションには、調整コストの処理時間や金額に大きな値が設定されている。
【0069】
逆に、この教師データ作成を委託するオプションを外し、ユーザが自ら教師データを作成することを選択すると、調整コストは低下する。なお、図5の調整領域540には、教師データを作成するモードへ移行するボタン544が設けられている。このボタン544をクリックすることにより、検知対象画像の一部に対してひび割れ位置を示す教師データを作成するためのツールが起動する。この教師データ入力ツールは、図5の画像表示領域501に直接、ひび割れ位置を入力するためのツールでもよいし、図5に示すGUIアプリケーションと異なる別のアプリケーションでもよい。
【0070】
また、予め教師データの入力が必要な最低限の画像サイズを設定しておき、検知対象画像に、教師データの入力が必要な範囲を示すようにしてもよい。さらに、その教師データ入力範囲に対して、ユーザが教師データを入力するために必要な時間を予測して、教師データ入力ツールに表示するようにしてもよい。教師データ入力の予測時間は、修正コストの修正時間と同様に算出することができる。具体的には、単位面積当たりの教師データ入力時間を予め設定しておくことで、教師データ入力範囲の面積に基づいて、教師データ入力時間を予測することができる。
【0071】
また、図5に示す調整領域540では、「検知モデル再学習」をオン、且つ、「追加教師データ作成」をオフの設定にすることにより、教師データを作成せずに検知モデルの再学習を実施する方法を選択することもできる。この設定を選択すると、既存データのみを用いて、検知対象画像に適した検知モデルを学習することを試みる。なお、既存データとして、十分な量とバリエーションのコンクリート壁面の画像と、この画像のひび割れ位置を示す教師データの組を記憶したデータベースがHDD104に格納されているものとする。検知部202は、データベースから、検知対象画像と類似した既存データを収集し、収集した既存画像データで検知モデルを再学習することで、検知対象画像に適した検知モデルを学習することができる。
【0072】
検知対象画像と類似した既存データを収集する方法は、どのような方法を用いてもよいが、例えば、以下のようにして実施する。まず、データベースの各既存画像の画像特徴量を抽出し、特徴量空間でクラスタリングする。これにより、既存画像の中で類似した画像がクラスタ化される。また、各クラスタについて、クラスタ中心などの代表特徴ベクトルを算出しておく。検知対象画像の特徴量と、各代表特徴ベクトルの距離を算出し、最も距離が近いクラスタを特定する。このクラスタに含まれる既存画像と、その教師データを、検知対象画像と類似した既存データとする。なお、最近傍クラスタに含まれるデータ数が少ない場合には、上位n近傍のクラスタのデータを既存データとしてもよい。
【0073】
これにより、追加の教師データを作成することなく、検知対象画像に適した検知モデルを学習することができる。これにより、追加教師データを作成する調整コストを削減しながら、検知処理を調整することができる。しかし、一般には、追加の教師データを作成して検知モデルを学習した方が、高い検知精度が得られる可能性が高い。ユーザは、調整コストが上昇しても確実に高い検知精度が得られる調整方法を設定するか、調整コストを下げた調整方法を設定するかを選択することができる。
【0074】
また、さらに、「高速計算機利用」のオプションを付けることにより、検知モデルの学習を短時間で実施することができる。これにより、調整コストの処理時間を短くすることができる。一方、「高速計算機利用」のオプションは、計算機利用量がかかるため高い金額が設定されており、調整コストの金額は上昇する。
【0075】
以上では、検知モデル学習の調整方法設定に関する調整コストの算出について説明したが、これ以外の検知処理の調整方法の設定についても同様に、それぞれの調整方法について、実施のコストとして処理時間や金額を関連付けておく。例えば、「検知モデル切り替え」を選択すると、新しく選択した検知モデルによる再検知処理の処理時間、及び計算のための計算機利用の料金が調整コストとして加算される。検知モデルを切り替えて再検知する場合は、学習処理を必要としないので、学習処理を選択した場合に比べて、処理時間や金額の加算は少なくなり、調整コストは比較的小さな値となる。以上では、検知モデル設定に関する調整コストについて説明したが、同様に、前処理や後処理のパラメータ調整の実施の設定も、それぞれの設定に対して処理時間や金額が設定されており、調整方法の設定状態に合わせて、調整コストが算出される。
【0076】
以上では、調整方法設定領域440に設定された調整方法に基づいて、調整コストを算出する方法について説明したが、調整コストの算出には、これ以外の情報も用いてもよい。例えば、調整コスト推定部209は、検知対象画像の情報も用いて調整コストを算出してもよい。検知対象画像の情報を用いる場合の具体的な例としては、調整コスト推定部209は、検知対象画像の画像サイズの情報を用いて調整コストを算出してもよい。検知対象画像の画像サイズによって、検知処理の処理時間は変化する。従って、検知処理の処理時間や実施の料金を画像サイズに基づいて重みづけて算出することで、検知対象画像に基づいた調整コストを算出することができる。検知対象画像の情報を用いて調整コストを算出する方法は、画像サイズを用いた方法に限らず、他の情報を用いてもよい。
【0077】
なお、上記S303の処理と、S304の処理の処理順番は実施形態に限定されるものではない。他の例としては、S304及びS305の処理の後にS303の処理を実行することとしてもよい。
【0078】
S305の処理の後、S306において、表示制御部207は、検知結果、修正コスト及び調整コストを表示するよう制御する。具体的には、図5に示すウィンドウ500を表示する。修正コスト表示領域530には、修正コストとして予測修正時間が表示される。なお、上述のように修正コストとして金額が算出された場合には、修正コスト表示領域530には、修正コストとして金額が表示される。また、修正コストとして修正時間と金額の両方が算出された場合には、両方が修正コストとして表示される。調整コスト表示領域531には、調整コストとして処理時間と金額の2種類の情報が表示される。
【0079】
これにより、ユーザが手動で修正を行うか、検知処理の設定を調整して再度検知処理を実行するか、の判断のための情報とすることができる。ユーザは、これらの情報を参照して、検知結果が不十分な場合に、検知結果を手動で修正する対応と、再び検知処理を実施する対応のコストを比較して、適切な判断を行うことができる。すなわち、ユーザは、検知結果を採用して修正を手動で実施するか、検知処理を調整して再び検知処理を実行するかを、時間や金額で比較しながら判断することができる。
【0080】
なお、修正コストや調整コストの表示は、ユーザの操作に基づいて、随時更新される。例えば、ユーザが調整領域540の調整方法の設定を変更した場合には、調整コスト推定部209は、最新の設定内容に基づいて調整コストを算出し、表示制御部207は、調整コスト表示領域531の調整コストを更新する。また、ユーザが検知結果の不良部分の範囲を変更した場合には、修正コスト推定部208は、変更された不良部分に基づいて修正コストを算出し、表示制御部207は、修正コスト表示領域530の修正コストを更新する。このように、調整方法や不良部分の状態によって修正コストと調整コストは変化するため、ユーザは調整方法や不良部分の変えながら、修正コストと調整コストを比較し、検知結果に対する対応を検討することができる。
【0081】
なお、このように、調整方法や不良部分を変化させると、修正コストと調整コストが変化する。情報処理装置100は、適切な設定を探索するために、これらの状態を記録することができる。図5に示すようにウィンドウ500には、「保存」ボタン560と「読込」ボタン561が表示されている。これらのボタンにより、ある時点に設定された調整方法と不良部分、及び、それらから算出される調整コストと修正コストのセットを保存したり、読み込んだりすることができる。また、保存した複数の調整コストと修正コストのセットを比較表示する機能を備えてもよい。この機能では、調整コストと修正コストのセットが一覧表示される。これにより、ユーザが、複数の調整コストと修正コストのセットを比較して、適切な調整コストと修正コストを示す調整方法と不良部分の設定を選択することができるようになる。
【0082】
設定した調整方法により、再び検知を実施する場合には、ウィンドウ500の「調整実行」ボタン551をクリックする。本処理が行われると、S306に続くS307において、検知部202は、調整実行指示を受け付けたと判断し(307でYES)、処理をS308へ進める。ここで、調整実行指示は、検知処理の再実行指示の一例である。S308において、CPU101は、設定された調整方法に応じた検知処理の設定の変更を行う。例えば、モデル学習部205は、設定された調整方法に基づいて、検知対象画像に適した検知モデルを学習して、検知処理に用いる検知モデルに設定する。また例えば、検知部202は、検知処理のパラメータを設定する。
【0083】
これらの準備が完了すると、CPU101は、処理をS301へ進める。この場合、S301においては、パラメータなどが変更(設定)された検知処理を行う。同様に以降の処理を実行し、修正コストと調整コストを算出し、さらに検知処理の調整を実施するかをユーザに問い合わせる。ユーザが検知結果を受け入れて、調整を実施しないと判断した場合には、ウィンドウ500の「終了」ボタン550をクリックし、一連の処理を終了する。ユーザは引き続き、必要に応じて検知結果の修正作業を実施する。なお、検知結果の調整を繰り返し複数回実行した場合には、調整内容に応じて、支払いの料金が加算されていく。この支払いが必要となる累積金額を表示部に表示するようにしてもよい。
【0084】
以上のように、本実施形態にかかる情報処理装置100は、調整コストと修正コストを算出し、これらを比較可能に表示することができる。したがって、ユーザは、表示された調整コストと修正コストを確認し、検知処理を調整するか、検知結果を修正するかを選択することができる。ユーザは、適切な検知結果をより低コストで得るための方法を選択することができる。すなわち、情報処理装置100は、コストを抑えつつ適切な検知結果を得るための仕組みを提供することができる。
【0085】
第1の実施形態の第1の変形例について説明する。情報処理装置100は、調整コストが所定値以上になる項目を記憶しておき、図5の検知処理の調整領域540において、設定すると調整コストが所定値以上になる項目を、予め強調して表示してもよい。また他の例としては、情報処理装置100は、設定したときに加算される処理時間や金額を、項目と共に表示してもよい。これにより、ユーザは、どの項目を設定すると調整コストが上昇するかを確認しながら、検知処理の調整方法を選択することができる。
【0086】
また、第2の変形例としては、情報処理装置100は、検知結果の一部から正解率を算出し、全体の不良部分の面積を推定してもよい。この場合、情報処理装置100は、検知対象画像の一部に対応するひび割れの正解データを取得し、正解データに対応する部分領域において、正解データと検知結果を比較する。そして、情報処理装置100は、検知結果が正解とならなかった部分を不良部分とする。
【0087】
この方法では、検知対象画像全体においては、不良部分を明確に設定することはできない。そこで、情報処理装置100は、検知対象画像全体においても、正解データに対応した部分領域と同様の割合で不良部分が存在すると仮定して、検知対象画像にこの割合を適用して、全体の不良部分の量(不良部分の画像面積)を推定する。具体的には、情報処理装置100は、正解データに対応する部分領域に対して不良部分が占める割合を算出する。そして、情報処理装置100は、検知対象画像の全体の面積に、不良部分の割合を乗じた値を、検知対象画像の全体における不良部分の面積として推定する。このように、情報処理装置100は、不良部分を明確に設定することなく、不良部分の面積を推定することとしてもよい。
【0088】
また、第3の変形例としては、情報処理装置100による検知処理は機械学習を用いた処理に限定されるものではない。他の例としては、情報処理装置100は、ひび割れの検知処理をエッジ抽出などの画像処理によりひび割れの検知処理を行ってもよい。この場合には、情報処理装置100は、検知処理の調整においては、エッジ抽出に関するパラメータを調整するものとする。
【0089】
(第2の実施形態)
次に、第2の実施形態に係る情報処理装置について、第1の実施形態に係る情報処理装置と異なる点を主に説明する。図3を参照しつつ説明したコスト表示処理においては、S307において、調整実行指示を受け付ける度に、異なる設定での検知処理が実行され、異なる設定での検知結果に対応した検知結果が得られる。検知処理の設定が異なると、設定毎に検知結果の良好部分及び不良部分が異なる場合がある。第2の実施形態の情報処理装置は、不良部分が単独の検知結果よりも少なくなるように、複数の異なる検知結果を部分的に組み合わせて合成検知結果を作成する。これにより、情報処理装置は、単独の検知結果よりも、精度の高い検知結果を作成することができる。
【0090】
図8は、第2の実施形態に係る情報処理装置800の機能構成図である。情報処理装置800は、情報処理装置100の機能構成に加えて、検知結果格納部801と、検知結果合成部802と、を有している。検知結果格納部801は、検知部202による検知結果と、不良部分設定部203により設定された不良部分を記憶する。検知結果合成部802は、検知結果格納部801に格納されている検知結果を合成する。
【0091】
図9は、第2の実施形態に係るコスト表示処理を示すフローチャートである。なお、図9に示すコスト表示処理の各処理のうち、図3を参照しつつ説明した第1の実施形態に係るコスト表示処理の各処理と同一の処理には、同一の番号を付している。第2の実施形態に係るコスト表示処理においては、CPU101は、S302の処理の後、処理をS901へ進める。S901において、検知結果合成部802は、検知結果を合成し、合成検知結果を得る。そして、表示制御部207は、合成検知結果を表示するよう制御する。なお、S301における検知処理が1回しか行われていない状態、すなわち初回のS901の処理においては、検知結果は1つしか存在しない。したがって、初回のS901の処理においては、検知結果合成部802は、S301において得られた検知結果と不良部分を検知結果格納部801へ格納する。異なる設定がなされた検知処理が繰り返し行われることで、検知結果格納部801には複数回の検知処理による複数の検知結果が格納されていく。CPU101は、その後処理をS303へ進める。
【0092】
また、S307において調整実行指示を受け付け、初回の検知処理と異なる設定で、再度S301における検知処理が実行されたとする。この場合、同ループ処理におけるS901において、検知結果合成部802は、検知結果格納部801に記憶されている過去の検知結果と不良部分を読み出す。ここで、検知結果格納部801に記憶されている検知結果は、直前のループ処理における検知処理の設定値の調整前の検知結果である。さらに、検知結果合成部802は、次回以降の検知結果合成処理に備えて、直前のS301の検知処理において得られた検知結果と直前のS302の不良部分設定処理において得られた不良部分を検知結果格納部801に格納する。そして、検知結果合成部802は、過去の検知結果及び不良部分と、直前のS301及びS302の処理(現ループで実行された処理)において得られた検知結果及び不良部分と、を組み合わせることで、合成検知結果を作成する。
【0093】
図10は、検知結果合成処理(S901)の説明図である。図10は、検知対象画像と、ひび割れ検知の検知結果と、検知結果の不良部分を示している。図10においては、橋梁の複数の構造部分の検知対象画像を示している。ここでは、検知対象画像には、1つの床版と、2つの橋脚が含まれているものとする。検知結果1010,1020は、同一の検知対象画像に対して行われた、異なる設定の検知処理に対する検知結果である。ここで、検知結果1010は、検知結果格納部801から読み出した過去の検知結果であり、検知結果1020は、現ループにおいて得られた最新の検知結果とする。なお、検知結果1010における1011は床版、1012,1013は橋脚を示している。同様に、検知結果1020における1021は床版、1022,1023は橋脚を示している。
【0094】
2つの検知結果1010,1020は、異なる設定の検知処理に対応した検知結果であるため、検知結果及び不良部分が異なる。図10においては、点線1001,1002,1003,1004が不良部分に設定された領域を示している。なお、図10の例では、不良部分は、図7において説明したのと同様に、構造部分毎に設定されている。
【0095】
S901の処理では、検知結果1010と検知結果1020を合成し、合成検知結果1030を生成する。検知結果合成部802は、この処理において、合成により、単独の検知結果よりも不良部分が少なくなるように、部分領域毎によい検知結果を採択する。図10の例では、検知結果合成部802は、検知結果1020の床版1021を合成検知結果1030の床版1031として採用している。また、検知結果合成部802は、検知結果1010の橋脚1013を合成検知結果1030の橋脚1033として採用している。ここで、床版1021と橋脚1013は、いずれも良好な検知結果と推定される部分である。したがって、これらを組み合わせて作成した合成検知結果1030においては、検知結果1010,1020に比べて不良部分が減少している。このように、検知結果を合成することにより、より好ましい検知結果を作成することができる。
【0096】
なお、合成検知結果1030における橋脚1032は、検知結果1020の橋脚1022、すなわち不良部分である。良好な検知結果が得られていない構造部分については、不良部分と判定された検知結果を採用する必要がある。検知結果合成部802は、良好な検知結果が得られていない構造部分については、不良部分の検知結果が複数存在する場合には、複数の検知結果のうち、不良度が最も低い検知結果を合成検知結果に採用するものとする。ここで、不良度は、検知結果が不良であるほど高くなる値である。例えば、構造部分に含まれる不良部分の割合を不良度とする。なお、不良部分の検知結果から1つの検知結果を採用するための判断基準は実施形態に限定されるものではない。他の例としては、表示制御部207が複数の検知結果を表示し、検知結果合成部802は、ユーザにより選択された検知結果を採用してもよい。また、他の例としては、検知結果合成部802は、複数の不良部分からランダムに選択した検知結果を採用してもよい。
【0097】
以上のように、S901において、検知結果合成部802は、複数の検知結果から部分的に良好な検知結果を採用して、単独の検知結果よりも不良部分が減少した合成検知結果を作成する。ループ2回目以降のS901においては、検知結果合成部802は、合成検知結果を検知結果として作成する。
【0098】
なお、上記の説明では、過去の検知結果1010と、現在の検知結果1020の2つの検知結果を合成する例について説明したが、合成する検知結果は2つに限らない。例えば、検知結果が3回以上繰り返された場合には、検知結果格納部801には、3以上の検知結果が格納される。この場合には、検知結果合成部802は、3以上の検知結果に基づいて、合成検知結果を作成する。
【0099】
また、検知対象画像の同部分に対して、複数の良好な結果(不良部分でない結果)が得られる場合がある。この場合には、これらの良好部分の中から、合成検知結果に採用する検知結果を選択する必要がある。この場合、検知結果合成部802は、前述の複数の不良部分から合成検知結果に採用する検知結果を選択するのと同様の方法で複数の良好な検知結果から1つの検知結果を採用すればよい。具体的には、検知結果合成部802は、良好部分についても不良度を算出し、不良度が最も低い検知結果を合成検知結果に採用する検知結果として選択すればよい。また、検知結果合成部802は、不良度に限らず、検知結果の良好な度合いを示す良好度を各検知結果について算出し、この良好度に基づいて、検知結果を選択するようにしてもよい。また、検知結果合成部802は、複数の不良部分からの選択方法と同様に、ユーザ操作に応じて選択された検知結果を選択してもよく、ランダムに検知結果を選択してもよい。なお、第2の実施形態に係る情報処理装置100のこれ以外の構成及び処理は、他の実施形態に係る情報処理装置100の構成及び処理と同様である。
【0100】
第2の実施形態の第1の変形例について説明する。検知結果格納部801には、ループ初回を除き、常に合成検知結果を格納することとしてもよい。そして、検知結果合成部802は、検知結果の合成処理において、検知結果格納部801に格納された過去の合成検知結果と、最新の検知結果を合成してもよい。この場合、ループ2回目以降のS901の処理においては、検知結果合成部802は、検知結果を合成した後に、合成検知結果を検知結果格納部801に上書き保存する。これにより、S901において、検知結果合成部802は、常に2つの検知結果を合成するだけで、過去のループの複数の検知結果を組み合わせた合成検知結果を作成することができる。
【0101】
第2の変形例について説明する。第2の実施形態の情報処理装置100は、構造物の構造部分毎に検知結果を組み合わせるものとした。ただし、検知結果を組み合わせる分割部分は、これに限定されるものではない。他の例としては、情報処理装置100は、連続した画像の部分領域毎に、複数の検知結果を組み合わせることとしてもよい。具体的には、図5の画像表示領域501に示すように、画像中の任意の領域で設定された不良部分を有する検知結果を複数用意する。そして、検知結果合成部802は、これらの検知結果を、不良部分が少なくなるように、部分領域毎に組み合わせて、合成検知結果を作成する。なお、ひび割れのような連続性を持つ検知結果が、不良部分の境界を跨ぐように存在する場合は、検知結果の合成が難しくなる。従って、この場合は、不良部分の範囲を設定するときに、ひび割れ検知結果が不良部分の境界を跨がないような範囲を不良部分として設定することが好ましい。
【0102】
第3の変形例について説明する。実施形態においては、情報処理装置100は、S301において、検知処理を1回実行するものとしたが、これにかえて、異なる設定の検知処理を同時に行うこととしてもよい。そして、情報処理装置100は、S901において、S301において得られた複数の検知結果を合成する。以下では、この変形例について説明する。
【0103】
情報処理装置100は、まず、ループ初回の検知処理(S301)では、異なる設定の複数の検知処理を実行する。ここで、異なる設定の検知処理は任意である。情報処理装置100は、例えば、モデル格納部201に予め格納された複数の検知モデルを呼び出して、検知処理毎に異なる検知モデルを用いてもよい。また、他の例としては、情報処理装置100は、検知処理の前処理や後処理に異なるパラメータを設定して、複数の設定の異なる検知処理として用いてもよい。これらの設定は、予め決められた複数の設定としてもよいし、ランダムで設定するとしてもよい。
【0104】
この検知処理結果により、検知対象画像に対して、複数の検知結果が得られる。S302において、不良部分設定部203は、各検知結果に対して、不良部分を設定する。次に、S901において、検知結果合成部802は、S301において得られた複数の検知結果とS302において得られた複数の不良部分の情報を用いて、合成検知結果を作成する。
【0105】
さらに、本変形例において、情報処理装置100は、検知精度を向上させるための検知処理の調整について、複数の異なる調整方法を同時に設定してもよい。例えば、複数の異なる検知モデル学習条件を設定することにより、複数の新規な検知モデルを学習することとしてもよい。また、ループ初回の検知処理と同様に、既存の検知モデルを複数選択することや、前処理や後処理のパラメータを複数設定することができるようにしてもよい。このように検知処理の調整方法を設定することにより、2回目以降のループでの検知処理(S301)でも、複数の異なる設定で検知処理が実行され、複数の異なる検知結果が得られる。情報処理装置100は、以降の処理では、同様に、これらの複数の検知結果を合成して、合成検知結果を作成すればよい。
【0106】
(第3の実施形態)
次に、第3の実施形態に係る情報処理装置100について、他の実施形態に係る情報処理装置100と異なる点を主に説明する。第3の実施形態に係る情報処理装置100は、不良部分に基づいて、検知処理の有効な調整方法を推定する。第3の実施形態に係る情報処理装置100は、さらに調整の効果を予測し、検知処理の調整を実施するか否かの判断のための情報として、予測結果をユーザに提示する。第3の実施形態の情報処理装置100においては、調整方法設定部206は、調整方法を設定するだけでなく、不良部分に基づいて、有効な調整方法を推奨調整方法として特定する。本処理は、方法特定処理の一例である。調整方法設定部206はさらに、各種調整方法を設定して検知処理を実施したときの検知結果の改善効果、すなわち改善の期待値を推定する。本処理は、期待値推定処理の一例である。
【0107】
まず、不良部分に基づいて、有効な調整方法を予測する処理について説明する。本実施形態においては、情報処理装置100は、不良部分の判定に複数の方法を実施し、どの判定方法で不良部分と判定されたかに応じて、有効な調整方法を予測する。以下においては、第1の実施形態において説明した、検知結果を評価して不良部分を判定する方法と、スコアマップを利用して不良部分を判定する方法を用いて、不良部分を判定する場合を例に説明する。なお、以下においては、検知結果を評価して不良部分を判定する方法及びスコアマップを利用して不良部分を判定する方法をそれぞれ第1の方法及び第2の方法と称する。
【0108】
ここで、ある部分領域が、第1の方法で不良部分と判定されたとする。前述の通り、第1の方法で不良部分と判定される原因の一つとして、後処理の閾値が適切な値でないことがある。従って、第1の方法で不良部分と判定された場合には、調整方法設定部206は、パラメータ調整、特に後処理の閾値調整を有効な調整方法として予測する。一方、ある部分領域が、第2の方法で不良部分と判定されたとする。第2の方法は、スコアマップの状態に基づいて不良部分を判定する方法であり、スコアマップが好ましくないということは、検知対象画像に検知処理で用いた検知モデルが適していないことを示している。従って、第2の方法で不良部分と判定された場合には、調整方法設定部206は、検知モデルの変更や再学習を有効な調整方法として予測する。
【0109】
さらに、表示制御部207は、不良部分単位で、有効な調整方法、すなわち効果が期待できる調整方法を表示する。例えば、図5に示すウィンドウ500において、不良部分522が選択された場合に、表示制御部207は、不良部分522の検知結果を改善するために好ましいと予測された調整方法を表示する。
【0110】
さらに、調整方法設定部206は、このようにして得られた各不良部分の好ましい調整方法を統合して、検知対象画像全体の好ましい調整方法も予測する。調整方法設定部206は、例えば、各不良部分で予測された有効な調整方法を集計し、最も出現回数の多い調整方法を検知対象画像全体に対する推奨調整方法として特定する。そして、表示制御部207は、予測された推奨調整方法に係る各項目の設定値を、調整領域540において初期の設定値として表示する。
【0111】
調整コスト推定部209は、さらに、調整方法の設定状態に基づいて、検知処理を調整して再検知処理を実施した場合の検知結果の修正コストを予測する。具体的には、まず、不良部分設定部203が調整により検知結果が改善すると予測される不良部分を決定する。そして、修正コスト推定部208は、修正コストの算出に用いる不良部分から、これらの改善が予測される不良部分を除いて修正コストを算出する。そして、表示制御部207は、この修正コストを「調整による予測修正コスト」として、通常の修正コストと比較できるように表示する。この表示により、ユーザは、検知処理の調整を実施することにより、検知結果がどの程度改善するかの効果の予測を、修正の時間や金額で比較することができるようになる。
【0112】
さらに、情報処理装置100は、ユーザが選択した調整方法に基づいて、検出処理の設定を調整して再び検知処理を実施したときの効果を予測する。以下、この検知処理の調整による検知結果の改善の効果を調整効果と呼ぶ。図11は、第3の実施形態に係るウィンドウ500の表示例を示す図である。図11に示すウィンドウ500には、調整効果表示領域1101が設けられている。調整効果表示領域1101には、調整領域540の設定状態に応じて予測した調整効果の期待度が5段階のマークで表示される。
【0113】
調整方法設定部206は、調整領域540の設定状態に応じて、検知結果の改善が期待できる不良部分の数や面積に基づいて、調整効果の評価値を算出する。具体的には、調整方法設定部206は、上述のように有効な調整方法を予測する。そして、調整方法設定部206は、調整領域540の設定の状態と、各不良部分の有効な調整方法を比較して、検知結果の改善が期待できる不良部分の数や面積を集計する。そして、調整方法設定部206は、この改善が期待できる不良部分の数や面積が多いほど、調整効果が高くなるような値を調整効果の評価値として算出する。
【0114】
調整効果の算出方法は、実施形態に限定されるものではない。例えば、検知対象画像に教師データを入力して検知モデルを学習する調整方法は、これまでに一度も実施していない場合には大きな性能改善が期待できる。従って、これまでの調整において、検知対象画像に教師データを入力して検知モデルを学習する調整方法を実施していない状態で、この調整方法を設定している場合には、調整効果が大きいと予測する。このように、調整方法の各項目について、それぞれを選択したときの効果を予め設定しておき、この情報に基づいて調整効果を予測するようにしてもよい。なお、第3の実施形態に係る情報処理装置100のこれ以外の構成及び処理は、他の実施形態に係る情報処理装置100の構成及び処理と同様である。
【0115】
以上のように、第3の実施形態に係る情報処理装置100においては、調整方法設定部206は、調整方法を設定するだけでなく、不良部分に基づいて、有効な調整方法を推奨調整方法として特定する。調整方法設定部206はさらに、各種調整方法を設定して検知処理を実施したときの検知結果の改善効果、すなわち改善の期待値を推定する。ユーザは、推奨調整方法を用いた場合の期待度を確認することができるので、より効果的な調整方法を選択することができる。
【0116】
第3の実施形態の第1の変形例について説明する。調整効果の表示方法は実施形態に限定されるものではない。他の例としては、表示制御部207は、調整効果の期待度を数値で表してもよい。また、他の例としては、表示制御部207は、調整により検知結果が改善すると予測される不良部分の領域を強調表示するようにしてもよい。不良部分の領域の強調表示は、例えば、当該領域を半透明色で塗りつぶす方法や、当該領域を囲う線を点滅表示させる方法などがある。
【0117】
第2の変形例について説明する。推奨調整方法を予測するための方法は実施形態に限定されるものではない。他の例としては、情報処理装置100は、不良部分を含む検知結果と、その検知結果を適切に改善するための調整方法の組データを大量に準備して、検知結果から適切な調整方法を予測することができる予測モデルを学習し、格納しておくものとする。そして、情報処理装置100は、この予測モデルに基づいて、推奨調整方法を予測してもよい。
【0118】
(第4の実施形態)
以上の実施形態においては、検知対象画像が構造物壁面の画像で、検知対象がコンクリート壁面のひび割れなどの変状である場合を例に説明した。ただし、検知対象画像や検知対象は、実施形態に限定されるものではない。第4の実施形態においては、検知対象画像及び検知対象が上記実施形態と異なる例を説明する。
【0119】
情報処理装置100は、修正を加えてでも検知結果を利用したい、というケースへの適応に適している。このようなケースとして、例えば、機械学習のための教師データを作成する状況がある。さらに具体的な例として、例えば、モニタリング用のカメラにおける人体検知を考える。まず、予め、一般的な画像で人体の検知モデル(以下、既存モデル)が学習されているとする。モニタリングカメラは、カメラを設置した環境で人体を検知することが求められるが、設置環境は様々であるので、既存モデルが、必ずしもカメラ設置環境に適しているとは限らない。従って、人体検知の精度を向上させるためには、カメラの個別の環境に合わせて、人体検知の検知モデルを学習することが望ましい。
【0120】
この目的を達成するためには、個別のカメラ設置環境での画像を収集し、その画像で人体検知モデルを学習するための学習データを作成する必要がある。学習データ作成の作業は、まず、検知モデルを学習する対象のカメラが撮影した動画の各フレームを切り出した大量の画像を、学習画像データセットとして準備する。そして、この学習画像データセットの各画像について、人体位置を示す教師データを入力する。この作業により、画像と教師データの組の学習データが作成される。
【0121】
ここで、大量の画像に対して、全ての人体位置を示す教師データを入力することは、非常に手間のかかる作業である。そこで、情報処理装置100は、まず、教師データ入力対象の画像に、既存モデルを用いて人体検知処理を行う。検知結果が正しい部分は、検知結果をそのまま教師データとすることができるため、教師データ入力の作業が大幅に削減される。一方、未検知や誤検知など、検知結果が誤っている部分は、そのままでは教師データとして利用することができないため、修正を行う必要がある。そこで、情報処理装置100は、検知結果に対して不良部分を設定し、不良部分の量などに基づいて修正作業時間などの修正コストを表示する。これにより、教師データ作成のために、どの程度の修正作業が必要かを見積もることができる。
【0122】
一方、単純に既存モデルで学習データセットの画像に検知処理を実施した場合、検知処理は学習データセットの画像に対して調整されていないので、不十分な検知結果となることもある。検知結果が不十分な場合、修正作業時間が膨大になるため、よりよい検知結果を基にして教師データを作成したいという要望がある。ここで、既存モデルを用いた検知処理も、他の既存モデルを用いることや、各種パラメータを変更することなどの検知処理の調整を行うことで、検知結果の精度を向上させることができる。この検知処理の調整は、検知対象画像である学習画像データセットに対して、検知処理が最適になるように、ユーザが各種の検知処理の項目を設定するものである。情報処理装置100は、このような検知処理の項目を調整することができる。この検知処理の調整により、検知結果の精度を向上させた結果を用いることで、教師データの作成のための修正作業を減少させることができる。ユーザは、検知処理を調整して、よりよい検知結果を取得して、教師データ作成の元データとしたいが、検知処理の調整作業を実施すると、再検知処理の時間などの調整コストがかかる。
【0123】
なお、本実施形態においても、情報処理装置100は、修正コストを算出するために、既存モデルの検知結果が不十分な部分を不良部分として判定する必要がある。第1~第3の実施形態においては、検知対象画像の部分領域を不良部分としたが、本実施形態の情報処理装置100は、画像単位で不良部分を判定する。すなわち、本実施形態においては、学習画像データセットが他の実施形態における検知対象画像であり、その一部分である画像1枚が不良部分として判定される単位領域となる。したがって、情報処理装置100の不良部分設定部203は、学習画像データセットの全画像に対して検知処理を実施して、検知が不十分と推定される画像をピックアップして、これを学習画像データセットの中の不良部分として設定する。
【0124】
不良部分の判定方法は限定されるものではないが、不良部分設定部203は、例えば、既存モデルで対応できない未知の画像を不良部分としてもよい。既存モデルの未知画像の判定には、第1の実施形態で説明した画像類似度判定機を用いた方法を適用することができる。これにより、例えば、未知の照明条件や明るさの画像が不良部分として判定される。また、異常な数の人体が検知された画像は、誤検知が大量に発生している可能性がある。そこで、不良部分設定部203は、このような画像を不良部分として設定してもよい。このように、不良部分設定部203は、検知結果の異常を不良部分として検出してもよい。
【0125】
修正コスト推定部208は、修正コストについては、第1の実施形態において説明したのと同様に、不良部分に基づいて算出する。本実施形態の情報処理装置100は、画像毎に不良部分を設定するため、修正コストは、例えば、不良部分とされた画像枚数に基づいて算出すればよい。情報処理装置100は、具体的には、予め、画像1枚当たりの修正時間を設定しておく。そして、修正コスト推定部208は、不良部分として設定された画像枚数と画像1枚当たりの単位修正時間に基づいて、修正時間を算出する。
【0126】
また、調整コスト推定部209は、第1の実施形態において説明したのと同様に、画像内容に基づいて、修正コストを算出するようにしてもよい。調整コスト推定部209は、例えば、画像中の人体群衆を検知する検出器を備え、人体群衆を含む画像を判定する。人体群衆の画像に対して、人体位置を正確に入力する作業は、非常に時間を要する。従って、修正コスト推定部208は、学習画像データセットの人体群衆画像枚数に基づいて、修正コストを算出するようにしてもよい。この場合も、同様に、人体群衆画像の1枚当たりの単位修正時間を設定しておき、修正コスト推定部208は、人体群衆画像枚数に基づいて、修正コストを算出する。
【0127】
また、調整コスト推定部209は、調整コストの算出については、第1の実施形態において説明したのと同様に実行する。調整コスト推定部209は、具体的には、人体の検知モデルの学習に関する調整項目や、検知処理の前処理や後処理に係るパラメータの調整の設定に基づいて、調整に必要な時間や金額を調整コストとして算出する。なお、第4の実施形態に係る情報処理装置100のこれ以外の構成及び処理は、他の実施形態に係る情報処理装置100の構成及び処理と同様である。
【0128】
第4の実施形態の第1の変形例について説明する。第4の実施形態においては、撮影した動画をフレーム画像に分割して用いる実施形態について説明したが、検知処理の対象は画像に限らず動画でもよい。なお、情報処理装置100は、連続したフレームの範囲を不良部分と判定するようにしてもよい。
【0129】
第2の変形例としては、情報処理装置100は、画像中の部分領域だけでなく、画像単位や連続したフレーム部分を不良部分とするようにしてもよい。このように、不良部分は、検知対象の一部であれば、どのような部分でもよい。
【0130】
第3の変形例について説明する。第4の実施形態においては、画像からの人体検知を例として、画像単位で不良部分を判定する実施形態について説明した。しかし、画像からの人体検知においても、第1の実施形態において説明したのと同様に、画像の部分領域を不良部分として判定してもよい。情報処理装置100は、例えば、検知対象画像の検知結果について、局所的に検知結果の数が多い部分領域は、誤検知が発生している可能性が高いとして、不良部分として設定するようにしてもよい。
【0131】
第4の変形例について説明する。第4の実施形態においては、インフラ構造物のコンクリート壁面の点検以外の用途にも情報処理装置100を適用できることを、人体検知のための教師データ作成を例に説明した。ただし、情報処理装置100の適用はこれらに限定されるものではない。他の例としては、情報処理装置100は、生産設備における外観検査において、異常を検知する検知モデルを学習するための教師データを作成する場合にも適用することができる。
【0132】
(第5の実施形態)
図12は、第5の実施形態に係る情報処理システムの構成例を示す図である。図12(A)は、SaaSを用いた情報処理システムの一形態の説明図である。図12(A)では、ユーザが操作するクライアント装置1200が、インターネット1203を介して、サービス提供側システム1201に接続している。図12(A)では、図2に示す、表示制御部207以外のすべての機能をサービス提供側システム1201が実行する。そして、クライアント装置1200は、ユーザ操作に応じた情報を受け付け、これをサービス提供側システム1201に送信する。また、クライアント装置1200は、サービス提供側システム1201から図5を参照しつつ説明したウィンドウ500の表示内容等を受信し、これらを表示する。このように、クライアント装置1200は、ユーザインタフェースとして機能する。
【0133】
この構成により、軽い処理のみをクライアント装置1200で実行し、検知処理などの計算量が多い処理は、高性能なサービス提供側システム1201で実行することができる。これにより、ユーザは安価で処理能力の低いクライアント装置を準備するだけで、サービスを受けることができるようになる。
【0134】
また、本実施形態のSaaSの構成では、複数のユーザがサービス提供側システム1201を利用する。具体的には、図12(A)では、ユーザは、インターネット1203を介して、サービス提供側システム1201を利用する。この場合、サービスの稼働状況に応じて、調整コストを算出するようにしてもよい。
【0135】
具体的には、例えば、他のユーザが新規の検知モデルを学習して、サービス提供側システム1201の計算機能を専有している場合は、この学習が完了しないと、学習を実行することができない。従って、調整方法の設定において、検知モデルの学習を選択した場合、通常よりも学習完了に時間がかかることが予測される。調整コスト推定部209では、このように、サービス提供側システム1201の稼働状況を鑑みて、調整処理の時間を予測し、この結果を調整コストとして出力してもよい。
【0136】
また、調整コスト推定部209は、調整コストの算出に用いるサービスの稼働状況として、サービス提供側システム1201の稼働状況のみならず、他の情報を用いてもよい。例えば、検知処理の調整において、教師データの作成を委託するオプションを選択すると、オペレーターが教師データ作成の作業を実施する。ここで、他のユーザが教師データ作成委託を実施している場合には、オペレーターは、この教師データ作成作業が完了しないと、次の教師データ作成委託を受けることができない。従って、調整方法の設定において、教師データ作成の委託を選択した場合、通常よりも調整処理に時間がかかることが予測される。調整コスト推定部209では、このように、オペレーターの作業状況を鑑みて、調整処理の時間を予測し、この結果を調整コストとして出力するようにしてもよい。
【0137】
さらに、また、ユーザの実行結果をサービス提供側システム1201に蓄積し、調整方法の初期値の設定に活用するようにしてもよい。具体的には、サービス提供側システム1201は、様々なユーザが実行した調整方法の設定を蓄積しておき、頻度の高い設定項目や、設定の組み合わせを特定する。そして、クライアント装置1200は、この設定を調整方法の初期値として、表示部に表示する。
【0138】
また、不良部分設定部203は、同様に、不良部分の設定に関するパラメータを、ユーザの実行結果に基づいて決定してもよい。例えば、まず、不良領域の自動設定について、第1の実施形態の第3の方法では、学習画像との類似度を算出し、類似度が所定以下の領域を不良部分とした。この場合には、「類似度が所定以下」を判定するための閾値がパラメータとなる。この閾値パラメータが不適切であると、不良部分が適切に設定されないため、ユーザは不良部分を修正することになる。従って、ユーザの実行結果として、不良部分を修正しなかったケースの閾値パラメータを蓄積して、その最頻値や平均値を求めることで、適切な類似度の閾値を算出することができる。このように、適切にパラメータが算出された後には、このパラメータを用いて不良部分を設定するようにすればよい。
【0139】
図12(B)は、情報処理システムの他の形態の説明図である。図12(B)には、図12(A)とは異なる処理構成として、オンプレミスサーバ装置1211を備える構成を示す。図12(B)では、クライアント装置1210、オンプレミスサーバ装置1211、サービス提供側システム1212の協働により図2を参照しつつ説明した各機能を実行する。例えば、サービス提供側システム1212は、計算量が多い検知部202として機能する。クライアント装置1210は、図12(A)の例と同様にユーザインタフェースとして機能する。オンプレミスサーバ装置1211は、図2に示す検知部202以外の構成として機能する。
【0140】
このような処理分配にすることで、不良部分の修正などのユーザ操作に合わせて、コストを計算した結果の応答が早くなり、ユーザの操作のストレスが軽減される。また、検知対象画像や学習モデルに機密性がある場合には、自社内のオンプレミスサーバ装置1211に、これらの情報を格納するようにしてもよい。この場合、オンプレミスサーバ装置1211には、例えば、モデル格納部201などの情報を格納する構成を備える。
【0141】
以上、上述した各実施形態によれば、コストを抑えつつ適切な検知結果をえるための仕組みを提供することができる。
【0142】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【0143】
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【符号の説明】
【0144】
100 情報処理装置
202 検知部
204 コスト算出部
206 調整方法設定部
207 表示制御部
208 修正コスト推定部
209 調整コスト推定部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12