JP7333029B2 - プログラム、情報処理方法及び情報処理装置 - Google Patents

プログラム、情報処理方法及び情報処理装置 Download PDF

Info

Publication number
JP7333029B2
JP7333029B2 JP2019100664A JP2019100664A JP7333029B2 JP 7333029 B2 JP7333029 B2 JP 7333029B2 JP 2019100664 A JP2019100664 A JP 2019100664A JP 2019100664 A JP2019100664 A JP 2019100664A JP 7333029 B2 JP7333029 B2 JP 7333029B2
Authority
JP
Japan
Prior art keywords
image
heat map
input
learning
objects
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019100664A
Other languages
English (en)
Other versions
JP2020194446A (ja
Inventor
享祐 市川
拓海 杉浦
大地 横川
匡仁 熊田
Original Assignee
株式会社アーク情報システム
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社アーク情報システム filed Critical 株式会社アーク情報システム
Priority to JP2019100664A priority Critical patent/JP7333029B2/ja
Publication of JP2020194446A publication Critical patent/JP2020194446A/ja
Application granted granted Critical
Publication of JP7333029B2 publication Critical patent/JP7333029B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Analysis (AREA)

Description

本開示は、プログラム、情報処理方法及び情報処理装置に関する。
道路、建物、トンネル、ダム等の構造物の表面においてひび割れ等の発生を点検する際に、ニューラルネットワークを用いて、構造物の表面画像からひび割れ等の線状図形を抽出することが行われている(例えば特許文献1参照)。また近年、ニューラルネットワークを用いて、画像中の各画素を特定の物体の領域に分類するセマンティックセグメンテーションと呼ばれる技術が利用されている。セマンティックセグメンテーションでは、例えば犬の画像と猫の画像とを学習させたニューラルネットワークを用いて、犬及び猫を含む画像中の各画素を、犬の領域、猫の領域及びその他の領域にそれぞれ分類する。
特開2018-195001号公報
セマンティックセグメンテーションでは、ニューラルネットワークを学習させる際に、予め人間が手作業で画像中の各画素を各領域に分類した画像を教師データとして用いる。よって、昨今の機械学習分野では、このような教師データを作成する作業に多くの労力及び予算が費やされている。
本開示は、このような事情に鑑みてなされたものであり、その目的とするところは、セマンティックセグメンテーションに用いる教師データの作成負担を軽減することが可能なプログラム等を提供することにある。
本開示の一態様に係るプログラムは、画像が入力された場合に前記画像中の対象物が複数の対象物のいずれであるかを示す対象物情報を出力するように学習された学習済みモデルの学習に用いた画像及び前記画像中の対象物が前記複数の対象物のいずれであるかを示すラベル情報を取得し、前記学習済みモデルに対して、取得した前記画像を入力し、前記画像が入力された前記学習済みモデルが前記画像中の対象物が前記複数の対象物のいずれであるかを示す対象物情報を出力した場合に根拠とした前記画像中の領域を示すヒートマップを生成し、前記画像中の前記ヒートマップが示す領域内の各画素に、取得した前記ラベル情報を対応付けて、画像が入力された場合に前記画像中の各画素を前記複数の対象物の領域に分類する学習モデルの学習に用いる教師データを生成する処理をコンピュータに実行させる。
本開示にあっては、セマンティックセグメンテーションに用いる教師データの作成負担を軽減することができる。
情報処理装置の構成例を示すブロック図である。 クラス分類モデルの構成例を示す模式図である。 ヒートマップ生成アプリの動作を説明するための模式図である。 セグメンテーションDNNを説明するための模式図である。 情報処理装置による教師データの生成処理手順の一例を示すフローチャートである。 画面例を示す模式図である。 画面例を示す模式図である。 実施形態2の情報処理装置による教師データの生成処理手順の一例を示すフローチャートである。
以下に、本開示のプログラム、情報処理方法及び情報処理装置について、クラス分類を行うように学習させたディープニューラルネットワーク(DNN)を用いて、セマンティックセグメンテーションに用いるDNNを学習させるための教師データを生成する装置に適用した実施形態を示す図面に基づいて詳述する。
(実施形態1)
クラス分類DNNを用いて、セマンティックセグメンテーションに用いるセグメンテーションDNNを学習させるための教師データを生成する情報処理装置について説明する。本実施形態では、アスファルト舗装された道路の表面(路面)を撮影して得られた路面画像に基づいて路面上のひび割れ、凹み(わだち掘れ、ポットホール等)、白線及び黄色線等の路面標識の欠損等の有無を判別するように学習させたクラス分類DNNを用いる。また、本実施形態では、路面画像中の各画素を、ひび割れの領域、凹みの領域、路面標識の欠損の領域等にそれぞれ分類するセグメンテーションDNNの学習に用いる教師データを生成する。
図1は、情報処理装置の構成例を示すブロック図である。情報処理装置10は、パーソナルコンピュータ又はサーバコンピュータ等を用いて構成されており、制御部11、記憶部12、通信部13、入力部14、表示部15、読み取り部16等を含み、これらの各部はバスを介して相互に接続されている。制御部11は、CPU(Central Processing Unit)、MPU(Micro-Processing Unit)又はGPU(Graphics Processing Unit)等の1又は複数のプロセッサを含む。制御部11は、記憶部12に記憶してある制御プログラム12Pを適宜実行することにより、本開示の情報処理装置が行うべき種々の情報処理、制御処理等を情報処理装置10に行わせる。
記憶部12は、RAM(Random Access Memory)、フラッシュメモリ、ハードディスク、SSD(Solid State Drive)等を含む。記憶部12は、制御部11が実行する制御プログラム12P及び制御プログラム12Pの実行に必要な各種のデータ等を予め記憶している。また記憶部12は、制御部11が制御プログラム12Pを実行する際に発生するデータ等を一時的に記憶する。また記憶部12は、例えばディープラーニング処理によって構築されたDNNであるクラス分類モデル12aを記憶している。クラス分類モデル12aは、路面を撮影して得られた画像データ(路面画像)が入力された場合に、画像データ中に撮影された路面にひび割れ、凹み、路面標識の欠損等(対象物)があるか否かを示す情報(対象物情報)を出力するように学習された学習済みモデルである。DNN(学習済みモデル)は、入力値に対して所定の演算を行い、演算結果を出力するものであり、記憶部12には、この演算を規定する関数の係数や閾値等のデータがDNN(クラス分類モデル12a)として記憶される。更に記憶部12は、クラス分類モデル12aの学習に用いた教師データが蓄積された教師データDB(データベース)12bを記憶する。教師データは、路面を撮影して得られた路面画像と、路面画像中の路面に存在するひび割れ、凹み、路面標識の欠損を示す情報又は路面がこれら以外の状態であることを示す情報(正解ラベル、ラベル情報)とを1セットとしたデータであり、このような教師データが教師データDB12bに多数記憶してある。なお、クラス分類モデル12aは、このような教師データを用いて、路面画像が入力された場合に、路面画像中の路面にひび割れ、凹み、路面標識の欠損等が存在するか否かを示す情報を出力するように学習してある。また記憶部12は、DNNが入力データをクラス分類した際に注目した箇所(分類結果に寄与した箇所)を可視化するアプリケーションプログラムであるヒートマップ生成アプリケーション12c(ヒートマップ生成アプリ)を記憶する。なお、教師データDB12bは、情報処理装置10に接続された外部の記憶装置に記憶されてもよく、ネットワークを介して情報処理装置10が通信可能な記憶装置に記憶されてもよい。
通信部13は、有線通信又は無線通信によって、インターネット又はLAN(LocalArea Network)等のネットワークに接続するためのインタフェースであり、ネットワークを介して外部装置との間で情報の送受信を行う。入力部14は、マウス及びキーボード等を含み、ユーザによる操作入力を受け付け、操作内容に対応した制御信号を制御部11へ送出する。表示部15は、液晶ディスプレイ又は有機ELディスプレイ等であり、制御部11からの指示に従って各種の情報を表示する。なお、入力部14及び表示部15は一体として構成されたタッチパネルであってもよい。
読み取り部16は、CD(Compact Disc)-ROM、DVD(Digital Versatile Disc)-ROM及びUSB(Universal Serial Bus)メモリを含む可搬型記憶媒体1aに記憶された情報を読み取る。記憶部12に記憶されるプログラム及びデータは、例えば制御部11が読み取り部16を介して可搬型記憶媒体1aから読み取って記憶部12に記憶してもよい。また、記憶部12に記憶されるプログラム及びデータは、制御部11が通信部13を介してネットワーク経由で外部装置からダウンロードして記憶部12に記憶してもよい。更に、プログラム及びデータを半導体メモリ1bに記憶しておき、制御部11が、半導体メモリ1bからプログラム及びデータを読み出してもよい。
図2は、クラス分類モデル12aの構成例を示す模式図である。本実施形態のクラス分類モデル12aは、例えば図2に示すようにCNN(Convolution Neural Network)モデルで構成されている。クラス分類モデル12aは、CNNモデルのほかに、RNN(Recurrent Neural Network)モデル又はLSTM(Long Short-Term Memory)モデル等で構成されていてもよい。図2に示すクラス分類モデル12aは、入力層、中間層及び出力層から構成されている。中間層は畳み込み層、プーリング層及び全結合層を含む。本実施形態のクラス分類モデル12aでは、入力層を介して、路面画像(画像データ)が入力される。入力層の各ノードには路面画像中の各画素が入力され、入力層の各ノードを介して入力された路面画像は中間層に入力される。中間層に入力された路面画像は、畳み込み層でフィルタ処理等によって画像の特徴量が抽出されて特徴マップが生成され、プーリング層で圧縮されて情報量が削減される。畳み込み層及びプーリング層は複数層繰り返し設けられており、複数の畳み込み層及びプーリング層によって生成された特徴マップは、全結合層に入力される。全結合層は複数層(図2では2層)設けられており、入力された特徴マップに基づいて、各種の関数や閾値等を用いて各層のノードの出力値を算出し、算出した出力値を順次後の層のノードに入力する。全結合層は、各層のノードの出力値を順次後の層のノードに入力することにより、最終的に出力層の各ノードにそれぞれの出力値を与える。畳み込み層、プーリング層及び全結合層のそれぞれの層数は図2に示す例に限定されない。
本実施形態のクラス分類モデル12aでは、出力層は4つのノードを有しており、例えばノード0は、入力された路面画像中の路面にひび割れが存在すると判別すべき確率を出力し、ノード1は、凹みが存在すると判別すべき確率を出力し、ノード2は、路面標識の欠損が存在すると判別すべき確率を出力し、ノード3は、その他の状態であると判別すべき確率を出力する。なお、その他の状態とは、路面にひび割れ、凹み及び路面標識の欠損が存在しない状態と、路面にひび割れ、凹み及び路面標識の欠損以外の損傷が存在する状態とを含む。出力層の各ノードの出力値は例えば0~1.0の値であり、4つのノードからそれぞれ出力された確率の合計が1.0(100%)となる。
クラス分類モデル12aは、路面画像と、路面画像中の路面に存在するひび割れ、凹み、路面標識の欠損を示す情報又は路面がこれら以外の状態であることを示す情報(正解ラベル)とを含む教師データを用いて学習する。クラス分類モデル12aは、教師データに含まれる路面画像が入力された場合に、教師データに含まれる正解ラベルに対応する出力ノードからの出力値が1.0に近づき、他の出力ノードからの出力値が0に近づくように学習する。学習処理においてクラス分類モデル12aは、入力値に対して行う所定の演算を規定する各種の関数の係数や閾値等のデータを最適化する。これにより、路面画像が入力された場合に、路面画像中の路面にひび割れ、凹み、路面標識の欠損の何れが存在するか、又は路面がその他の状態であるかを示す情報を出力するように学習された学習済みのクラス分類モデル12aが得られる。なお、クラス分類モデル12aの学習は、情報処理装置10で行われてもよく、他の学習装置で行われてもよいが、既に学習処理が完了している学習済みモデルとする。クラス分類モデル12aが他の学習装置で学習される場合、情報処理装置10は、例えばネットワーク経由又は可搬型記憶媒体1a経由で学習装置から学習済みのクラス分類モデル12aを取得すればよい。なお、本実施形態の情報処理装置10は、記憶部12に教師データ(教師データDB12b)を記憶しているので、学習装置から学習済みのクラス分類モデル12aを取得する場合、クラス分類モデル12aの学習に用いた教師データも取得し、記憶部12の教師データDB12bに記憶する。
図3は、ヒートマップ生成アプリ12cの動作を説明するための模式図である。ヒートマップ生成アプリ12cは、DNNに入力データが入力されて、DNNから出力データが出力された場合に、DNNが、入力データ中のどの部分に基づいて出力データを算出したかを示すヒートマップを生成する。本実施形態の情報処理装置10では、ヒートマップ生成アプリ12cは、クラス分類モデル12aに路面画像が入力されて、クラス分類モデル12aが出力層の各ノードからそれぞれの出力値を出力した場合に、クラス分類モデル12aが、路面画像中のどの領域に基づいて出力値を算出したかを示すヒートマップを生成する。具体的には、クラス分類モデル12aに路面画像が入力されて、クラス分類モデル12aの出力層のノード0から1.0に近い値が出力された場合、ヒートマップ生成アプリ12cは、クラス分類モデル12aが、路面画像中の路面にひび割れ(ノード0に対応するクラス)が存在すると判定した際に根拠とした路面画像中の領域を示すヒートマップを生成する。なお、ヒートマップは、DNNからの出力値に影響を与えた領域を示すだけでなく、領域中の画素毎に、各画素が出力値に与えた影響の度合いを示す。即ち、ヒートマップは、入力画像の各画素の画素位置に対応して、各画素が出力値に与えた影響の度合い(レベル)を示す値を有する。ヒートマップ中の各値は、例えば5段階の数値のように所定数の数値によって、各画素が出力値に与えた影響の度合いを示している。図3に示すヒートマップでは、路面画像において各領域(各画素)が出力値に与えた影響の度合いを異なる色(異なる濃淡)で示している。DNNは複数層からなる中間層を有しており、ヒートマップ生成アプリ12cは、中間層の各層についてそれぞれヒートマップを生成することができる。
ヒートマップ生成アプリ12cが生成するヒートマップは、入力画像において、DNN(クラス分類モデル12a)が分類したクラスの対象物の領域を示している。そこで、本実施形態の情報処理装置10は、ヒートマップ生成アプリ12cによって生成されるヒートマップを用いて、セマンティックセグメンテーションに用いるセグメンテーションDNN(学習モデル)を学習させるための教師データを生成する。なお、ヒートマップ生成アプリ12cは、例えばGrad-CAM(Gradient weighted Class Activation Mapping)、Guided Grad-CAM、CAM、Grad-CAM++、Guided Grad-CAM++、Saliency Map、Guided Backpropagation、Layer-wise Relevance Propagation、Integrated Gradients、Smooth Grad、DeepLIFT(Deep Learning Important FeaTures)等を用いることができる。なお、ヒートマップ生成アプリ12cは、上述したアプリケーションに限定されず、各種の計算方法によってヒートマップを生成するプログラムを用いることができる。
セグメンテーションDNNについて説明する。ここでは、画像が入力された場合に、入力画像の各画素を、リンゴの領域、バナナの領域、及びその他の領域にそれぞれ分類するように学習された学習済みモデルであるセグメンテーションDNNを例に説明する。図4は、セグメンテーションDNNを説明するための模式図であり、図4AはセグメンテーションDNNの構成例を示し、図4BはセグメンテーションDNNの学習に用いる教師データの例を示す。セグメンテーションDNNは、例えば図4に示すようなSegNetモデル、FCN(Fully Convolutional Network )モデル又はU-Netモデル等で構成されている。
図4に示すセグメンテーションDNNは、入力層、中間層及び出力層を有し、中間層は前半部分に畳み込み層及びプーリング層を含み、後半部分にアップサンプリング層(逆プーリング層)及び畳み込み層を含む。このような構成のセグメンテーションDNNでは、入力層を介して入力された入力画像が中間層において、前半部分の畳み込み層で画像の特徴量が抽出されて特徴マップが生成され、プーリング層で圧縮される。セグメンテーションDNNにおいても、畳み込み層及びプーリング層は複数層設けられており、複数の畳み込み層及びプーリング層によって生成された特徴マップは、後半部分のアップサンプリング層で拡大(画素が補間)されて、畳み込み層で画像の平滑化が行われる。アップサンプリング層及び畳み込み層も複数層設けられており、複数のアップサンプリング層及び畳み込み層によって拡大された特徴マップは、出力層から出力される。出力層から出力される特徴マップは、図4に示すように、入力画像に対して、リンゴに分類された領域と、バナナに分類された領域と、その他の領域とにそれぞれ異なる色が付された画像である。セグメンテーションDNNにおいて、畳み込み層及びプーリング層の層数、アップサンプリング層及び畳み込み層の層数等は図4に示す例に限定されない。
上述した構成のセグメンテーションDNNは、入力画像と、図4Bに示すように入力画像中の各画素に対して、判別すべき物体(ここではリンゴ又はバナナ)を示す情報(クラスラベル)が対応付けられたラベル画像とを含む教師データを用いて学習する。セグメンテーションDNNは、教師データに含まれる入力画像が入力された場合に、教師データに含まれるラベル画像を出力するように学習する。学習処理においてセグメンテーションDNNは、入力値に対して行う所定の演算を規定する各種の関数の係数や閾値等のデータを最適化する。これにより、画像が入力された場合に、入力画像中の各画素を、リンゴの領域、バナナの領域、及びその他の領域(各クラスの領域)にそれぞれ分類するように学習したセグメンテーションDNNが得られる。なお、セグメンテーションDNNは、図4Bに示すようにクラス毎にラベル画像が用意された教師データを用いて学習してもよいし、1つの入力画像に複数のクラス(物体)のクラスラベルが対応付けられたラベル画像の教師データを用いて学習してもよい。
本実施形態の情報処理装置10は、図4Bに示すようなセグメンテーションDNNの学習に用いるラベル画像(教師データ)を、ヒートマップ生成アプリ12cによって生成されるヒートマップを用いて生成する。なお、本実施形態では、路面画像が入力された場合に、路面画像の各画素を、ひび割れの領域、凹みの領域、路面標識の欠損の領域、及びその他の領域にそれぞれ分類するようにセグメンテーションDNNを学習させるための教師データを、クラス分類モデル12a、教師データDB12b及びヒートマップ生成アプリ12cを用いて生成する。
以下に、本実施形態の情報処理装置10が、セグメンテーションDNNの学習に用いる教師データを生成する際に行う処理について説明する。図5は、情報処理装置10による教師データの生成処理手順の一例を示すフローチャート、図6及び図7は画面例を示す模式図である。以下の処理は、情報処理装置10の記憶部12に記憶してある各種のプログラムに従って制御部11によって実行される。なお、本実施形態では、以下の処理を制御部11がプログラムを実行することにより実現するが、一部の処理を専用のハードウェア回路で実現してもよい。
情報処理装置10において、例えば入力部14を介して、セグメンテーションDNNの学習に用いる教師データの生成処理の実行指示を受け付けた場合、制御部11(取得部)は、教師データDB12bに記憶してある教師データを読み出す(S11)。それぞれの教師データには、路面画像と、路面画像中の路面に存在するひび割れ、凹み、路面標識の欠損(対象物)を示すラベル情報(対象物情報)とが含まれる。制御部11は、読み出した教師データに基づいて、セグメンテーションDNNの学習に用いる教師データの生成に用いる画像(路面画像)の指定を受け付けるための画像指定画面を生成して表示部15に表示する(S12)。
図6は画像指定画面例を示しており、画像指定画面は、読み出した複数の教師データにそれぞれ含まれる路面画像を選択可能画像A2として表示し、選択可能画像A2から選択された1つの路面画像を処理画像A1として表示している。なお、画像指定画面において、選択可能画像A2の表示領域は、教師データDB12bから読み出された全ての路面画像(教師データ)を表示できるように、例えばスクロールできるように構成されている。また画像指定画面は、処理画像A1からヒートマップを生成する際に用いるアプリケーションプログラムを選択するための入力欄A3を有する。入力欄A3には、選択可能なヒートマップ生成アプリ12cから任意の1つを選択するためのプルダウンメニューが設定されている。図6に示すプルダウンメニューでは、ヒートマップ生成アプリ12cとしてGrad-CAM、Guided Grad-CAM又はCAMが選択できるように表示されているが、プルダウンメニューは、情報処理装置10で実行可能な全てのアプリケーションの選択が可能に構成されている。更に画像指定画面は、選択された処理画像A1に基づいて、入力欄A3を介して選択されたアプリケーションプログラムを用いて、セグメンテーションDNNの学習に用いる教師データを生成する処理の実行を指示するための実行ボタンを有する。
画像指定画面において、制御部11は、入力部14を介して選択可能画像A2のいずれかの路面画像の指定を受け付け(S13)、指定を受け付けた場合、指定(選択)された路面画像を処理画像A1として画像指定画面に表示する。また画像指定画面において、制御部11は、入力部14を介してヒートマップ生成アプリ12cのいずれかの選択を受け付けた場合、選択されたアプリケーションの名前を入力欄A3に表示しておく。更に画像指定画面において、制御部11は、入力部14を介して実行ボタンが操作されることにより、教師データの生成処理の実行指示を受け付ける。よって、制御部11は、実行ボタンが操作されて教師データの生成処理の実行指示を受け付けたか否かを判断しており(S14)、実行指示を受け付けていないと判断した場合(S14:NO)、ステップS13の処理に戻る。教師データの生成処理の実行指示を受け付けたと判断した場合(S14:YES)、制御部11は、クラス分類モデル12aに対して、処理画像A1に選択された路面画像を入力する。そして制御部11(生成部)は、ヒートマップ生成アプリ12cによって、クラス分類モデル12aが処理画像A1に基づいて処理画像A1のラベル情報を出力する際に処理画像A1中のどの領域に基づいて出力値を算出したかを示すヒートマップを生成する(S15)。具体的には、制御部11は、クラス分類モデル12aが処理画像A1に基づいて出力層の各ノードからそれぞれの出力値を出力した場合に、それぞれの出力値を算出する際に根拠とした処理画像A1中の領域及び出力値に与えた影響の度合を示すヒートマップを生成する。
ヒートマップ生成アプリ12cは、クラス分類モデル12aの中間層が有する各層についてヒートマップを生成しており、制御部11は、生成された複数のヒートマップを合成して合成ヒートマップを生成する(S16)。例えば中間層の各層について予め合成する際の割合が設定してあり、制御部11は、各層のヒートマップにおいて、それぞれ同じ位置の値に、それぞれの層の合成割合を乗じた上で合計値を算出することにより、1つのヒートマップに合成する。なお、各層の合成割合は例えば、出力層に近い層ほど大きい値となるように設定されている。このように設定した場合、各層で生成されたヒートマップに対する重みを、出力層に近い層ほど大きくすることができる。
制御部11は、生成した合成ヒートマップを編集するための編集画面を生成して表示部15に表示する(S17)。図7は編集画面例を示しており、編集画面は、画像指定画面と同様に処理画像A1、選択可能画像A2、入力欄A3及び実行ボタンを表示する。また編集画面は、処理画像A1の下側に、処理画像A1のラベル情報(クラスの情報)と、ヒートマップ生成アプリ12cによって生成された各層のヒートマップM1とを表示している。図7に示す例では、2つのラベル情報が設定してある処理画像A1について、処理画像A1のクラスは、路面標識(横断歩道)の欠損であるクラス1と、路面標識(路側帯)の欠損であるクラス2とであることが表示してあり、クラス毎にLayer1~Layer5の5層について生成されたヒートマップが表示してある。編集画面は、各層のヒートマップM1の右側に、それぞれの層の合成割合を表示しており、合成割合は入力部14を介して変更できるように構成されている。なお、編集画面は、いずれかのクラスを選択するためのチェックボックス(ラジオボタン)が表示してあり、チェックボックスにて選択されたクラスについて、各層の合成割合の変更が可能である。更に編集画面は、合成ヒートマップM2を大きい領域に表示しており、合成ヒートマップM2の上側に、合成ヒートマップM2を編集するための鉛筆ボタンB1及び消しゴムボタンB2を表示している。鉛筆ボタンB1は、表示中のクラスに分類すべき領域(画素)を合成ヒートマップM2に追加する処理の実行を指示するためのボタンである。消しゴムボタンB2は、表示中のクラスに分類すべきでない領域(画素)を合成ヒートマップM2から消去する処理の実行を指示するためのボタンである。また編集画面は、編集後の合成ヒートマップM2を教師データとして記憶する記憶先(フォルダ名及びファイル名)を指定するための入力欄B3を有し、編集後の合成ヒートマップM2を、入力欄B3に入力された記憶先に記憶する処理の実行を指示するための保存ボタンを有する。上述した構成の編集画面において、合成ヒートマップM2の一部が拡大して表示できるように構成されていてもよい。
編集画面において、制御部11は、入力部14を介して、いずれかの層のヒートマップM1に対する合成割合の変更指示を受け付けたか否かを判断している(S18)。合成割合の変更指示を受け付けたと判断した場合(S18:YES)、制御部11は、表示中の合成割合を、変更指示された合成割合に変更して編集画面を更新し、ステップS16の処理に戻る。そして、制御部11は、変更された各層の合成割合に基づいて、ステップS15で生成された複数のヒートマップから合成ヒートマップを生成し(S16)、表示中の合成ヒートマップM2を、生成した合成ヒートマップに変更して編集画面を更新する(S17)。制御部11は、各層に対する合成割合の変更指示を受け付ける都度、ステップS16~S17の処理を行い、変更指示された合成割合で合成された合成ヒートマップを生成して表示する。
合成割合の変更指示を受け付けていないと判断した場合(S18:NO)、制御部11は、入力部14を介して鉛筆ボタンB1又は消しゴムボタンB2が操作されて、処理画像A1中の各画素の分類クラスに対する変更指示を受け付けたか否かを判断する(S19)。表示中の合成ヒートマップM2に画素を追加する場合、即ち、表示中のクラスに分類されなかった画素を表示中のクラスに追加する場合、ユーザは、入力部14を介して鉛筆ボタンB1を操作した後、合成ヒートマップM2に追加したい箇所(画素)を操作(色付け操作)する。また表示中の合成ヒートマップM2から画素を消去する場合、即ち、表示中のクラスに分類された画素を表示中のクラスから除外する場合、ユーザは、入力部14を介して消しゴムボタンB2を操作した後、合成ヒートマップM2から消去したい箇所(画素)を操作(消去操作)する。これにより、制御部11は、表示中の合成ヒートマップM2に対する画素の追加又は削除の指示(分類クラスの変更指示)を受け付ける。
分類クラスの変更指示を受け付けたと判断した場合(S19:YES)、制御部11は、表示中の合成ヒートマップM2に対して、変更指示を受け付けた画素の追加又は消去を行って合成ヒートマップM2を変更し(S20)、表示中の編集画面を更新する。分類クラスの変更指示を受け付けていないと判断した場合(S19:NO)、又はステップS20の処理後、制御部11は、入力部14を介して入力欄B3に記憶先の情報が入力されて保存ボタンが操作されることにより、教師データの保存指示を受け付ける。よって、制御部11は、編集画面において保存ボタンが操作されて保存指示を受け付けたか否かを判断しており(S21)、保存指示を受け付けていないと判断した場合(S21:NO)、ステップS18の処理に戻る。教師データの保存指示を受け付けたと判断した場合(S21:YES)、制御部11は、合成ヒートマップM2に基づいて教師データを生成する(S22)。具体的には、制御部11(対応付け部)は、処理画像A1中の合成ヒートマップM2が示す領域内の各画素に、処理画像A1のラベル情報(クラスラベル)を対応付けて教師データ(ラベル画像)を生成する。これにより、路面画像が入力された場合に、路面画像の各画素を、ひび割れの領域、凹みの領域、路面標識の欠損の領域、及びその他の領域にそれぞれ分類するためのセグメンテーションDNNの学習に用いる教師データが生成される。そして、制御部11は、生成した教師データを、編集画面を介して受け付けた記憶先に記憶し(S23)、処理を終了する。
本実施形態の情報処理装置10は、上述した処理により、画像が入力された場合に、画像中に存在する物体を示す情報を出力するクラス分類モデル12aと、クラス分類モデル12aの学習に用いる教師データとを用いて、画像が入力された場合に、画像中の各画素を、画像中に存在する物体の領域に分類するセグメンテーションDNNを学習させるための教師データを生成することができる。即ち、クラス分類モデル12aを生成するために必要なクラス分類モデル12a及び教師データ(教師データDB12b)を用いて、セグメンテーションDNNの学習(生成)に用いる教師データの生成が可能である。また、上述したようにヒートマップ生成アプリ12cによって生成されるヒートマップを用いて自動的に、セグメンテーションDNNの学習に用いる教師データを生成することにより、従来は手作業で作成していた教師データ(ラベル画像)の作成負担を軽減できる。また、手作業で教師データ(ラベル画像)を作成する場合、作業者毎にばらつきが生じる虞があるが、上述した処理によって自動的に教師データを作成する場合、客観的に各物体が分類された教師データの作成が可能となる。
近年、セマンティックセグメンテーションは、自動運転分野及び医療分野をはじめとする種々の分野において重要な技術であり、様々な業種及び企業において研究開発が行われている。その際に、セグメンテーションDNNの学習に用いる教師データを自動的に作成することにより、教師データの作成に費やされる予算及び労力の低減が可能であり、セマンティックセグメンテーション技術の更なる発展に寄与するものと期待できる。
本実施形態では、ヒートマップ生成アプリ12cによって生成されたヒートマップから自動的に生成された合成ヒートマップを、編集画面を介して編集(変更)できる。よって、自動的に生成された合成ヒートマップに誤りが含まれる場合に訂正することができるので、精度の高い教師データの生成が可能となる。また、図7に示す編集画面では、処理画像A1を選択し直すことも可能である。よって、一旦表示させた編集画面において、複数の処理画像A1に基づく教師データ(ラベル画像)を順次作成することができる。また、本実施形態において、例えば編集画面を介して、合成ヒートマップの作成に用いるヒートマップの数を変更(指定)できるように構成してもよい。即ち、ヒートマップ生成アプリ12cがクラス分類モデル12aの中間層の各層について生成したヒートマップのうちで、合成ヒートマップの生成に用いるヒートマップを変更できるように構成してもよい。具体的には、図7に示す編集画面では、5つのヒートマップから合成ヒートマップが生成される例を示すが、例えば出力層に近い層(例えばLayer3~Layer5の3層)のヒートマップのみを用いて合成ヒートマップを生成してもよい。
また、生成された各層のヒートマップにおいて、ヒートマップ中の各値の最大値(最大レベル)が所定閾値以上のヒートマップのみを用いて合成ヒートマップを生成するようにしてもよい。即ち、ヒートマップにおける最大値が所定閾値未満のヒートマップを、合成ヒートマップの生成に用いないようにしてもよい。ヒートマップの各値が大きいほど分類結果に対する寄与度が高いことを示しているので、寄与度が高いことを示しているヒートマップのみを用いて合成ヒートマップを生成することにより、より精度の高い教師データを生成できる。なお、合成ヒートマップの生成に用いるか否かの判断基準とする閾値は、例えば編集画面において入力部14を介して設定できるように構成してもよい。この場合、編集画面は、設定された閾値に基づいて合成ヒートマップの生成に用いると判断されたヒートマップのみを表示してもよい。また、ヒートマップにおける最大値に応じて合成ヒートマップに用いるヒートマップを切り替える場合、ヒートマップ生成アプリ12cが生成したヒートマップから、合成ヒートマップの生成に用いるヒートマップを自動的に選択するように情報処理装置10を構成してもよい。
(実施形態2)
ヒートマップ生成アプリ12cによって生成されたヒートマップにノイズ除去処理を行った後に合成ヒートマップを生成する情報処理装置10について説明する。本実施形態の情報処理装置は、実施形態1の情報処理装置10と同様の構成を有するので、構成についての説明は省略する。
図8は、実施形態2の情報処理装置10による教師データの生成処理手順の一例を示すフローチャートである。図8に示す処理は、図5に示す処理において、ステップS15及びステップS16の間にステップS31の処理を追加したものである。図5と同様のステップについては説明を省略する。また図8では、図5中のステップS17~S23の図示を省略している。
本実施形態の情報処理装置10において、制御部11は、実施形態1と同様にステップS11~S15の処理を行う。これにより、画像指定画面を介して指定された処理画像A1がクラス分類モデル12aに入力され、クラス分類モデル12aから処理画像A1のラベル情報が出力された場合に、クラス分類モデル12aが出力値を算出する際に根拠とした処理画像A1中の領域を示すヒートマップが、ヒートマップ生成アプリ12cによって生成される。
本実施形態の情報処理装置10では、制御部11は、生成したヒートマップのそれぞれに対して、ノイズを除去する処理を行う(S31)。例えば制御部11は、それぞれのヒートマップにおいて、所定閾値未満の値の画素をヒートマップから消去(除去)する。このようにヒートマップにおいて、ノイズの可能性が高い箇所(画素)を消去することにより、クラス分類モデル12aによる分類結果に対する寄与度が高い領域のみを示すヒートマップを生成できる。制御部11は、ノイズが除去された各ヒートマップに基づいて、合成ヒートマップを生成し(S16)、ステップS17以降の処理を行う。よって、本実施形態では、分類結果に対する寄与度が高い領域のみを示すヒートマップを合成することにより、より精度の高い合成ヒートマップ(教師データ)を生成できる。
本実施形態においても、実施形態1と同様の効果が得られる。また本実施形態では、ヒートマップ生成アプリ12cによって生成されたヒートマップに含まれるノイズが除去された後に合成ヒートマップが生成されるので、より精度の高い合成ヒートマップ(教師データ)を生成することができる。なお、ヒートマップにおいて、ノイズとして除去されるか否かの判断基準である所定閾値を、例えば入力部14を介して指定された値に変更できるように構成してもよい。また、例えばヒートマップにおける最大値又は平均値等に応じて所定閾値が自動的に変更されるように構成してもよい。
上述した各実施形態において、クラス分類モデル12a及び教師データDB12bに基づいて生成されたセグメンテーションDNNの学習用の教師データを用いて、セグメンテーションDNNを学習させることができる。これにより、画像が入力された場合に、入力画像中の各画素を、判別対象の各物体の領域(各クラスの領域)に精度良く分類できるセグメンテーションDNNを実現できる。本実施形態では、路面画像中の各画素を、ひび割れの領域、凹みの領域、路面標識の欠損の領域及びその他の領域に分類するセグメンテーションDNNの学習用の教師データを作成する構成について説明した。しかし、本開示は、その他の分類を行うセグメンテーションDNNにも適用できる。例えば、建物、トンネル、ダム等の構造物の表面画像から、表面画像中の各画素をひび割れ等の欠損領域のそれぞれに分類するセグメンテーションDNNの学習用の教師データを生成することができる。また、自動運転分野及び医療分野等、種々の分野において利用されるセグメンテーションDNNにも適用でき、各種のセグメンテーションDNNの学習用の教師データの生成に利用できる。また、画像中に存在する物体又は状態を判別するセグメンテーションDNNだけでなく、画像中のフォトジェニックな領域又はインスタ映えする領域を判別するセグメンテーションDNNにも適用できる。即ち、入力画像に対してフォトジェニックな領域の有無又はインスタ映えする領域の有無を判別するクラス分類モデルと、このクラス分類モデルの学習に用いた教師データとを用いることにより、画像中の各画素をフォトジェニックな領域又はインスタ映えする領域に分類するセグメンテーションDNNの学習用の教師データを生成することができる。
今回開示された実施の形態はすべての点で例示であって、制限的なものでは無いと考えられるべきである。本開示の範囲は、上記した意味では無く、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
10 情報処理装置
11 制御部
12 記憶部
14 入力部
15 表示部
12a クラス分類モデル
12b 教師データDB
12c ヒートマップ生成アプリ

Claims (8)

  1. 画像が入力された場合に前記画像中の対象物が複数の対象物のいずれであるかを示す対象物情報を出力するように学習された学習済みモデルの学習に用いた画像及び前記画像中の対象物が前記複数の対象物のいずれであるかを示すラベル情報を取得し、
    前記学習済みモデルに対して、取得した前記画像を入力し、
    前記画像が入力された前記学習済みモデルが前記画像中の対象物が前記複数の対象物のいずれであるかを示す対象物情報を出力した場合に根拠とした前記画像中の領域を示すヒートマップを生成し、
    前記画像中の前記ヒートマップが示す領域内の各画素に、取得した前記ラベル情報を対応付けて、画像が入力された場合に前記画像中の各画素を前記複数の対象物の領域に分類する学習モデルの学習に用いる教師データを生成す
    処理をコンピュータに実行させるプログラム。
  2. 生成した前記ヒートマップに対して、前記学習済みモデルが入力された前記画像に基づいて前記対象物情報を出力した場合に根拠とした度合に基づいてノイズを除去する
    処理を前記コンピュータに実行させる請求項1に記載のプログラム。
  3. 前記学習済みモデルは、複数層を有するニューラルネットワークであり、
    前記複数層のそれぞれに対応する前記ヒートマップを生成し、
    前記複数層のそれぞれに対応して生成したヒートマップを合成する
    処理を前記コンピュータに実行させる請求項1又は2に記載のプログラム。
  4. 生成した前記ヒートマップに対する変更指示を受け付け、
    受け付けた前記変更指示に基づいて、前記ヒートマップを変更する
    処理を前記コンピュータに実行させる請求項1から3までのいずれかひとつに記載のプログラム。
  5. 取得した前記画像と、前記画像に対応するラベル情報と、前記画像が入力された前記学習済みモデルが前記対象物情報を出力した場合に根拠とした度合に応じた前記ヒートマップとを対応付けて表示部に表示する
    処理を前記コンピュータに実行させる請求項1から4までのいずれかひとつに記載のプログラム。
  6. 生成した前記教師データを用いて、画像が入力された場合に前記画像中の各画素を前記複数の対象物の領域に分類する学習モデルを学習させる
    処理を前記コンピュータに実行させる請求項1から5までのいずれかひとつに記載のプログラム。
  7. コンピュータが、
    画像が入力された場合に前記画像中の対象物が複数の対象物のいずれであるかを示す対象物情報を出力するように学習された学習済みモデルの学習に用いた画像及び前記画像中の対象物が前記複数の対象物のいずれであるかを示すラベル情報を取得し、
    前記学習済みモデルに対して、取得した前記画像を入力し、
    前記画像が入力された前記学習済みモデルが前記画像中の対象物が前記複数の対象物のいずれであるかを示す対象物情報を出力した場合に根拠とした前記画像中の領域を示すヒートマップを生成し、
    前記画像中の前記ヒートマップが示す領域内の各画素に、取得した前記ラベル情報を対応付けて、画像が入力された場合に前記画像中の各画素を前記複数の対象物の領域に分類する学習モデルの学習に用いる教師データを生成す
    処理を実行する情報処理方法。
  8. 画像が入力された場合に前記画像中の対象物が複数の対象物のいずれであるかを示す対象物情報を出力するように学習された学習済みモデルの学習に用いた画像及び前記画像中の対象物が前記複数の対象物のいずれであるかを示すラベル情報を取得する取得部と、
    前記学習済みモデルに対して、取得した前記画像を入力し、前記画像が入力された前記学習済みモデルが前記画像中の対象物が前記複数の対象物のいずれであるかを示す対象物情報を出力した場合に根拠とした前記画像中の領域を示すヒートマップを生成する生成部と、
    前記画像中の前記ヒートマップが示す領域内の各画素に、取得した前記ラベル情報を対応付けて、画像が入力された場合に前記画像中の各画素を前記複数の対象物の領域に分類する学習モデルの学習に用いる教師データを生成する対応付け部と
    を備える情報処理装置。
JP2019100664A 2019-05-29 2019-05-29 プログラム、情報処理方法及び情報処理装置 Active JP7333029B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019100664A JP7333029B2 (ja) 2019-05-29 2019-05-29 プログラム、情報処理方法及び情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019100664A JP7333029B2 (ja) 2019-05-29 2019-05-29 プログラム、情報処理方法及び情報処理装置

Publications (2)

Publication Number Publication Date
JP2020194446A JP2020194446A (ja) 2020-12-03
JP7333029B2 true JP7333029B2 (ja) 2023-08-24

Family

ID=73548723

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019100664A Active JP7333029B2 (ja) 2019-05-29 2019-05-29 プログラム、情報処理方法及び情報処理装置

Country Status (1)

Country Link
JP (1) JP7333029B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114693694A (zh) * 2020-12-25 2022-07-01 日本电气株式会社 图像处理的方法、设备和计算机可读存储介质
WO2022168441A1 (ja) * 2021-02-05 2022-08-11 ソニーグループ株式会社 推論装置、推論方法およびプログラム
WO2023026404A1 (ja) * 2021-08-25 2023-03-02 日本電気株式会社 順伝播装置、学習装置、情報処理システム、処理方法、及びプログラムが格納された非一時的なコンピュータ可読媒体
JP7383684B2 (ja) * 2021-12-08 2023-11-20 キヤノンマーケティングジャパン株式会社 情報処理装置、情報処理方法、並びにプログラム
JP2024000600A (ja) * 2022-06-21 2024-01-09 株式会社日立ハイテク 識別器生成装置および画像診断支援装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019061658A (ja) 2017-08-02 2019-04-18 株式会社Preferred Networks 領域判別器訓練方法、領域判別装置、領域判別器訓練装置及びプログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019061658A (ja) 2017-08-02 2019-04-18 株式会社Preferred Networks 領域判別器訓練方法、領域判別装置、領域判別器訓練装置及びプログラム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Weifeng Ge,外2名,Multi-Evidence Filtering and Fusion for Multi-Label Classification, Object Detection and Semantic Segmentation Based on Weakly Supervised Learning,[online],2018年02月26日,[2023年07月05日検索],インターネット<URL:https://arxiv.org/pdf/1802.09129.pdf>
白岩 史,外2名,自動車運転時における注視位置推定の検討,電気学会研究会資料 知覚情報研究会,2017年09月02日,PI-17-071~075,pp. 7-10

Also Published As

Publication number Publication date
JP2020194446A (ja) 2020-12-03

Similar Documents

Publication Publication Date Title
JP7333029B2 (ja) プログラム、情報処理方法及び情報処理装置
Xiao et al. Development of an image data set of construction machines for deep learning object detection
JP6584477B2 (ja) スキップアーキテクチャ・ニューラルネットワーク装置及び改良されたセマンティックセグメンテーションのための方法
Hong et al. Synthetic data generation using building information models
JP6980289B2 (ja) 車線モデルを利用して車線を検出し得る学習方法及び学習装置そしてこれを利用したテスト方法及びテスト装置{learning method, learning device for detecting lane using lane model and test method, test device using the same}
JP6612487B1 (ja) 学習装置、分類装置、学習方法、分類方法、学習プログラム、及び分類プログラム
WO2022105608A1 (zh) 一种快速人脸密度预测和人脸检测方法、装置、电子设备及存储介质
JP6612486B1 (ja) 学習装置、分類装置、学習方法、分類方法、学習プログラム、及び分類プログラム
JP6929322B2 (ja) データ拡張システム、データ拡張方法、及びプログラム
KR102103511B1 (ko) 코드 생성 장치 및 방법
CN112115862B (zh) 一种结合密度估计的拥挤场景行人检测方法
CN113569852A (zh) 语义分割模型的训练方法、装置、电子设备及存储介质
CN114330588A (zh) 一种图片分类方法、图片分类模型训练方法及相关装置
CN116167910B (zh) 文本编辑方法、装置、计算机设备及计算机可读存储介质
CN116486071A (zh) 图像分块特征提取方法、装置及存储介质
CN111292396B (zh) 图像样本集生成方法、设备、装置及存储介质
US8300936B2 (en) System and method for improving display of tuned multi-scaled regions of an image with local and global control
JP7321452B2 (ja) プログラム、情報処理装置、情報処理方法及び学習済みモデルの生成方法
CN113920377A (zh) 对图像进行分类的方法、计算机设备、存储介质
CN113470048A (zh) 场景分割方法、装置、设备及计算机可读存储介质
Ramesh et al. Hybrid U-Net and ADAM Algorithm for 3DCT Liver Segmentation
Al-Wesabi et al. Extracting Information from Old and Scanned Engineering Drawings of Existing Buildings for the Creation of Digital Building Models
Gunnarsson Panoptic segmentation in video
US20240153039A1 (en) Attributing generated visual content to training examples
Jung et al. VoroCrack3d: An annotated semi-synthetic 3d image data set of cracked concrete

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220311

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230307

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230428

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230711

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230801

R150 Certificate of patent or registration of utility model

Ref document number: 7333029

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150