JP2023003207A - プログラム、情報処理装置、情報処理方法及び学習モデルの生成方法 - Google Patents
プログラム、情報処理装置、情報処理方法及び学習モデルの生成方法 Download PDFInfo
- Publication number
- JP2023003207A JP2023003207A JP2021104247A JP2021104247A JP2023003207A JP 2023003207 A JP2023003207 A JP 2023003207A JP 2021104247 A JP2021104247 A JP 2021104247A JP 2021104247 A JP2021104247 A JP 2021104247A JP 2023003207 A JP2023003207 A JP 2023003207A
- Authority
- JP
- Japan
- Prior art keywords
- data
- level
- label
- image
- learning model
- 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.)
- Pending
Links
- 238000012545 processing Methods 0.000 title claims description 85
- 238000000034 method Methods 0.000 title claims description 75
- 238000003860 storage Methods 0.000 claims abstract description 43
- 238000012549 training Methods 0.000 claims description 100
- 230000010365 information processing Effects 0.000 claims description 78
- 230000008569 process Effects 0.000 claims description 50
- 230000008859 change Effects 0.000 claims description 4
- 238000003672 processing method Methods 0.000 claims description 3
- 238000007689 inspection Methods 0.000 description 40
- 238000010586 diagram Methods 0.000 description 21
- 230000002159 abnormal effect Effects 0.000 description 17
- 238000005259 measurement Methods 0.000 description 10
- 239000003086 colorant Substances 0.000 description 9
- 238000001514 detection method Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 7
- 230000007547 defect Effects 0.000 description 6
- 238000010801 machine learning Methods 0.000 description 6
- 230000005856 abnormality Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 230000002950 deficient Effects 0.000 description 4
- 230000008451 emotion Effects 0.000 description 4
- 230000011218 segmentation Effects 0.000 description 4
- 239000000284 extract Substances 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000011176 pooling Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000012447 hatching Effects 0.000 description 2
- 238000002595 magnetic resonance imaging Methods 0.000 description 2
- 210000005036 nerve Anatomy 0.000 description 2
- 238000002834 transmittance Methods 0.000 description 2
- 206010028980 Neoplasm Diseases 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000002591 computed tomography Methods 0.000 description 1
- 238000011109 contamination Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000003902 lesion Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 210000000056 organ Anatomy 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000002945 steepest descent method Methods 0.000 description 1
- 238000002604 ultrasonography Methods 0.000 description 1
Images
Landscapes
- Image Analysis (AREA)
Abstract
【課題】高品質の学習用データを生成することが可能なプログラム等を提供する。【解決手段】コンピュータは、アノテーション対象のデータを取得する。また、コンピュータは、取得したデータに対して、アノテーションの信頼度に関する複数のレベルのそれぞれに応じた領域を受け付ける。そして、コンピュータは、複数のレベルのそれぞれと、レベル毎に受け付けた領域とを対応付けて記憶部に記憶する。【選択図】図1
Description
本発明は、プログラム、情報処理装置、情報処理方法及び学習モデルの生成方法に関する。
機械学習において、学習モデルに学習用データ(訓練データ)を学習させることによって、所望の処理を実現する学習モデルを生成することができる。例えば画像中の対象物の検出を行う学習モデルを生成する場合、画像中の対象物の領域が示された学習用データを用いて学習が行われる。このような学習用データを生成する処理はアノテーションと呼ばれ、通常、作業者が手動で行っている。アノテーションでは、例えば膨大な数の画像に対して、画像中の対象物の領域を指定する操作を行うので、作業者の作業負担は大きい。そこで、特許文献1では、画像分類の予測結果を確認しながらアノテーションを行うことにより、作業性を向上させてアノテーションの作業負荷を軽減する技術が開示されている。
手動で学習用データを生成するアノテーションでは、作業者によって判断基準にばらつきが生じるので、生成された学習用データの品質(精度)にばらつきが生じる。よって、高品質の学習用データを効率良く生成することは困難である。特許文献1に開示された技術は、アノテーションの精度を向上させるものではないので、特許文献1に開示された技術においても、高品質の学習用データを効率良く生成することは難しいという問題がある。
本発明は、このような事情に鑑みてなされたものであり、その目的とするところは、高品質の学習用データを生成することが可能なプログラム等を提供することにある。
本発明の一態様に係るプログラムは、アノテーション対象のデータを取得し、前記データに対して、アノテーションの信頼度に関する複数のレベルのそれぞれに応じた領域を受け付け、前記レベルと、前記レベル毎に受け付けた領域とを対応付けて記憶部に記憶する処理をコンピュータに実行させる。
本発明の一態様にあっては、高品質の学習用データを生成することができる。
以下に、本開示のプログラム、情報処理装置、情報処理方法及び学習モデルの生成方法について、その実施形態を示す図面に基づいて詳述する。
(実施形態1)
セマンティックセグメンテーションを実現する学習モデルを生成する情報処理装置について説明する。図1は情報処理装置の構成例を示すブロック図である。情報処理装置10は、種々の情報処理及び情報の送受信が可能であり、例えばパーソナルコンピュータ、ワークステーション又はタブレット端末等で構成される。情報処理装置10は、学習モデルを生成するための学習用データ(以下では訓練データという)を生成する作業者によって使用される。本実施形態において、情報処理装置10は、単一のコンピュータに限らず、複数のコンピュータ及び周辺機器からなるコンピュータシステムであってもよい。また情報処理装置10は、ソフトウェアによって仮想的に構築された仮想マシンであってもよい。
セマンティックセグメンテーションを実現する学習モデルを生成する情報処理装置について説明する。図1は情報処理装置の構成例を示すブロック図である。情報処理装置10は、種々の情報処理及び情報の送受信が可能であり、例えばパーソナルコンピュータ、ワークステーション又はタブレット端末等で構成される。情報処理装置10は、学習モデルを生成するための学習用データ(以下では訓練データという)を生成する作業者によって使用される。本実施形態において、情報処理装置10は、単一のコンピュータに限らず、複数のコンピュータ及び周辺機器からなるコンピュータシステムであってもよい。また情報処理装置10は、ソフトウェアによって仮想的に構築された仮想マシンであってもよい。
情報処理装置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を実行する際に発生するデータ等を一時的に記憶する。制御プログラム12Pは、情報処理装置10の製造段階において記憶部12に書き込まれてもよく、遠隔のサーバ装置が配信するものを情報処理装置10が通信にて取得して記憶部12に記憶されてもよい。また記憶部12は、後述する学習モデル12M、アノテーションアプリケーションプログラム12AP(以下ではアノテーションアプリ12APという)、画像DB(データベース)12a及び訓練DB12bを記憶する。学習モデル12Mは、セマンティックセグメンテーションを実現する学習モデルであり、所定の訓練データを用いて、画像を入力として、入力された画像中の対象物の領域を出力するように機械学習する学習モデルである。なお、学習モデル12Mは、未学習のモデルであっても、学習済みのモデルであってもよい。学習モデル12Mが検知する対象物は、例えば検査対象の物体に生じたキズ、汚れ、不良品、混入した異物、あるいは、建築物又は建造物に生じたひび割れ、欠損等、どのようなものでもよい。例えば学習モデル12Mが医療用のモデルである場合、学習モデル12Mは、X線画像、超音波画像、CT(Computed Tomography:)画像、MRI(Magnetic Resonance Imaging)画像等の医用画像中の臓器、神経、細胞、腫瘍等の病変部位等の対象物を検知する構成でもよい。また、学習モデル12Mが自動運転技術に用いられるモデルである場合、学習モデル12Mは、例えば車載カメラで撮影した画像中の白線、標識、樹木、車両、歩行者等の対象物を検知する構成でもよい。学習モデル12Mは、人工知能ソフトウェアを構成するプログラムモジュールとしての利用が想定される。記憶部12には、学習モデル12Mを定義する情報として、学習モデル12Mが備える層の情報、各層を構成するノードの情報、ノード間の重み(結合係数)等の情報が記憶される。学習モデル12M、画像DB12a及び訓練DB12bは、情報処理装置10に接続された他の記憶装置に記憶されていてもよく、情報処理装置10が通信可能な他の記憶装置に記憶されていてもよい。
通信部13は、有線通信又は無線通信によってネットワークNに接続するためのインタフェースであり、ネットワークNを介して他の装置との間で情報の送受信を行う。入力部14は、例えばマウス及びキーボード等を含み、情報処理装置10を操作するユーザによる操作入力を受け付け、操作内容に対応した制御信号を制御部11へ送出する。表示部15は、液晶ディスプレイ又は有機ELディスプレイ等であり、制御部11からの指示に従って各種の情報を表示する。入力部14及び表示部15は一体として構成されたタッチパネルであってもよい。
読み取り部16は、CD(Compact Disc)-ROM、DVD(Digital Versatile Disc)-ROM、USB(Universal Serial Bus)メモリ、SD(Secure Digital)カード等を含む可搬型記憶媒体10aに記憶された情報を読み取る。記憶部12に記憶される制御プログラム12P(プログラム製品)及び各種のデータは、制御部11が読み取り部16を介して可搬型記憶媒体10aから読み取って記憶部12に記憶してもよい。また記憶部12に記憶される制御プログラム12P及び各種のデータは、制御部11が通信部13を介して外部装置からダウンロードして記憶部12に記憶してもよい。
図2は学習モデル12Mの構成例を示す模式図である。学習モデル12Mは、画像に含まれる特定のオブジェクトOBを検出するためのモデルであり、具体的には、検査対象を撮影した画像から、検査対象に生じたキズ、欠損、汚れ、不良品、異物等のオブジェクトを検出するモデルである。また学習モデル12Mは、セマンティックセグメンテーション技術により、画像中のオブジェクトを画素単位で分類することができるモデルである。学習モデル12Mは、画像に含まれる1種類のオブジェクトを検知するシングルラベル分類を実現するモデルであってもよく、複数種類のオブジェクトを検知するマルチラベル分類を実現するモデルであってもよい。図2に示す学習モデル12Mは、簡略化のために、シングルラベル分類を実現するモデルを示している。
学習モデル12Mは、例えばSegNet、FCN(Fully Convolutional Network )、U-Net等で構成することができる。なお、学習モデル12Mは、R-CNN(Regions with Convolution Neural Network)、Fast R-CNN、SSD(Single Shot Multibook Detector)、Mask R-CNN、YOLO(You Only Look Once)等で構成されてもよく、複数のアルゴリズムを組み合わせて構成されてもよい。
学習モデル12Mは、検査対象を撮影した画像を入力とし、入力された画像の各画素を、オブジェクトの領域、又は、その他の領域に分類し、各画素に、分類した領域毎のラベルを対応付けた分類済みの画像(以下ではラベル画像という)を出力する。なお、本実施形態の学習モデル12Mが出力するラベル画像は、各画素が多値の画素値を有する多値画像であり、各画素は、各画素をオブジェクトに分類すべき確信度に応じた画素値を有する。即ち、図2に示すように、学習モデル12Mは、オブジェクトOBの領域に分類した各画素に対して、オブジェクトOBに分類すべき確信度に応じた画素値(分類情報)が対応付けられたラベル画像(出力画像)を出力する。図2に示す出力画像では、3段階の確信度に応じた画素値が対応付けられており、それぞれの確信度で分類された領域を異なるハッチングで示している。なお、学習モデル12Mがマルチラベル分類を実現するモデルである場合、ラベル毎に(検出対象のオブジェクト毎に)、各オブジェクトに分類された各画素に対して、各オブジェクトに分類すべき確信度に応じた画素値(分類情報)が対応付けられたラベル画像が出力される。
学習モデル12Mは、入力層、中間層、及び出力層を有する。入力層には、処理対象の画像が入力される。中間層は、畳み込み層及びプーリング層と、逆畳み込み層とを有する。畳み込み層は、入力層を介して入力された画像の画素情報から画像の特徴量を抽出して特徴量マップを生成し、プーリング層は、生成された特徴量マップを圧縮する。逆畳み込み層は、畳み込み層及びプーリング層によって生成された特徴量マップを元の画像サイズに拡大(マッピング)する。なお、逆畳み込み層は、畳み込み層で抽出された特徴量に基づいて画像内にオブジェクトがどの位置に存在するかを画素単位で識別し、オブジェクトの領域に分類された画素について、各画素をオブジェクトに分類すべき確信度を示すラベル画像を生成する。出力層は、中間層の演算結果を基にオブジェクトの検出結果を示すラベル画像を出力する。
図2に示すように学習モデル12Mから出力されるラベル画像は、画像の各画素が、オブジェクトOBの画素(オブジェクトOBの領域)と、その他の領域とに分類され、オブジェクトOBの画素には、確信度に応じた画素値が割り当てられた多値画像となる。図2では、オブジェクトOBの画素は、確信度が高い画素ほど、濃い色のハッチングで示されている。このような構成では、中間層は、入力された画像に含まれるオブジェクトを検出するための演算、オブジェクトに含まれる各画素に対する確信度を算出するための演算等を実行する。よって、学習モデル12Mは、入力層への画像の入力に応じて、中間層にて演算を行い、所定のオブジェクトとして検出された画素の位置情報(例えば画像中の座標値)、及び各画素に対してオブジェクトとして検出すべき確信度を含むラベル画像を出力層から出力する。
学習モデル12Mは、訓練用の入力画像と、入力画像中の各画素に対して、オブジェクト領域に判別すべき確信度を示すデータ(レベル)がラベリングされたラベル画像(正解のラベル画像)とを含む訓練データを用いて未学習の学習モデルを機械学習させることにより生成することができる。訓練用のラベル画像は、例えば図3Cに示すように、訓練用の入力画像に対して、オブジェクト領域に判別すべき確信度を示すレベルと、各確信度でオブジェクト領域に判別すべき領域を示す座標範囲とが付与された画像である。図3Cに示すラベル画像では、オブジェクト領域に判別すべき各画素に対して各レベルに応じた画素値が割り当てられており、各画素を各レベルに応じたハッチングで示している。各画素に割り当てられるレベルは、アノテーションの信頼度に関するレベルであり、例えばアノテーションを行う作業者の確信度であり、作業者がアノテーションの際に各画素をオブジェクト領域に分類する際の自信度を示す。またレベル(確信度)は、例えば作業者の技術力に応じたレベルであってもよく、例えばアノテーションの経験が豊富な作業者ほど高いレベルとしてもよい。この場合、各作業者にそれぞれのレベルが設定され、各作業者がオブジェクト領域に分類した各画素には、作業者のレベルが割り当てられる。更にレベル(確信度)は、アノテーションに用いる装置(ここでは情報処理装置10)の種類又は使用環境等に応じたレベルであってもよい。例えば、各装置にレベルが設定され、各装置を用いてアノテーションが行われた場合に、オブジェクト領域に分類された各画素に、装置のレベルが割り当てられる。このような構成では、使用される装置の種類又は使用環境に応じてアノテーションの精度にばらつきが生じる場合であっても、装置に応じたレベルを設定するアノテーションを行うことにより、装置間でのばらつきをアノテーションデータに反映させることができる。
学習モデル12Mは、訓練用の画像が入力された場合に、訓練用のラベル画像(正解のラベル画像)を出力するように学習する。学習処理において学習モデル12Mは、入力された画像に基づいて中間層での演算を行い、入力画像中のオブジェクトを検出した検出結果を取得する。具体的には、学習モデル12Mは、入力画像中の各画素に対して、分類された領域(オブジェクト領域又はその他の領域)と、オブジェクト領域に分類すべき確信度とに応じた値がラベリングされたラベル画像を出力として取得する。そして学習モデル12Mは、取得した検出結果(ラベル画像)を、正解のラベル画像と比較し、両者が近似するように、中間層での演算処理に用いるパラメータを最適化する。当該パラメータは、例えば中間層におけるノード間の重み(結合係数)等である。パラメータの最適化の方法は特に限定されないが、最急降下法、誤差逆伝播法等を用いることができる。これにより、画像が入力された場合に、入力画像中の各画素を、オブジェクト領域又はその他の領域に分類し、オブジェクト領域に分類した画素に対して、分類すべき確信度に応じた画素値が割り当てられたラベル画像を出力する学習モデル12Mが得られる。なお、学習モデル12Mがマルチラベル分類を実現するモデルである場合、学習モデル12Mは、検知対象のオブジェクト毎に訓練用のラベル画像が用意された訓練データを用いて学習してもよい。また、学習モデル12Mは、1つの画像に複数のオブジェクトのラベルと、各オブジェクト領域に判別すべき確信度を示すレベルと、各確信度でオブジェクト領域に判別すべき領域を示す座標範囲とが対応付けられた訓練用のラベル画像を有する訓練データを用いて学習してもよい。
上述したように、本実施形態の学習モデル12Mは、図3Cに示すような多値で表現されたラベル画像を訓練データに用いて学習を行う。訓練データに用いる正解のラベル画像は、情報処理装置10がアノテーションアプリ12APを実行して、後述するアノテーション処理を行うことによって生成され、訓練DB12bに記憶される。
図3は訓練DB12bの説明図である。訓練DB12bは、学習モデル12Mの学習処理に用いる訓練データを記憶する。ここでの訓練データは、訓練用の入力画像に使用する画像データと、正解のラベル画像を生成するためのアノテーションデータとを含む。図3Aは訓練DB12bの構成例を示し、図3Bは訓練用の入力画像の例を示し、図3Cはアノテーションデータの例を示す。訓練用の入力画像に用いる画像データは、例えばファイル名が付けられて画像DB12aに記憶されている。情報処理装置10は、画像DB12aに記憶されている画像データに対してアノテーション処理を実行してアノテーションデータを生成する。例えば図3Bに示す画像データに対してアノテーション処理が行われ、図3Cに示すアノテーションデータが生成される。情報処理装置10は、生成したアノテーションデータを、入力画像の情報に対応付けて訓練DB12bに記憶する。
図3Aに示す訓練DB12bは、画像情報列及びアノテーションデータ列を含む。画像情報列は、訓練用の入力画像に関する情報を記憶し、入力画像に関する情報には、例えば画像DB12aに記憶してある画像データのファイル名が用いられる。アノテーションデータ列は、位置情報列、ラベル列、及びレベル列等を含み、訓練用の入力画像中の各画素の位置情報に対応付けて、各画素に割り当てられたラベル及びレベルを記憶する。ラベルは、各画素を分類したオブジェクトを示す情報であり、レベルは、各画素を各オブジェクトに分類すべき確信度を示す。ここでは、検出対象のオブジェクトは1種類であるので、オブジェクトに分類された各画素にはラベル1が対応付けられている。図3Aに示す例では、オブジェクトに分類されなかった各画素、即ち、その他の領域に分類された各画素にはラベルが対応付けられていないが、その他の領域に対応するラベルが対応付けられていてもよい。また、レベルは予め用意された複数レベルのいずれかが各画素に対応付けられている。訓練DB12bの記憶内容は図3Aに示す例に限定されず、例えばアノテーションを行った作業者の情報等が訓練DB12bに記憶されてもよい。
以下に、上述したような訓練データ(アノテーションデータ)を生成するアノテーション処理について説明する。図4は訓練データの生成処理手順の一例を示すフローチャート、図5は画面例を示す模式図である。以下の処理は、情報処理装置10の制御部11が、記憶部12に記憶してある制御プログラム12P及びアノテーションアプリ12APに従って実行する。
情報処理装置10の制御部11(取得部)は、画像DB12aに記憶してある画像データを読み出してアノテーション対象の画像データを取得し、訓練用の入力画像として表示部15に表示する(S11)。制御部11は、例えば図5Aに示すような操作画面によって訓練用の入力画像を表示する。図5Aに示す画面はメニューバー15aを有しており、メニューバー15aは、アノテーション処理において各画素の分類対象のラベルを選択するためのラベル選択ボタン15bと、アノテーション処理において各画素に割り当てるレベルを選択するためのレベル選択ボタン15cと、操作画面を介して各画素に割り当てたラベル及びレベルをリセットするためのリセットボタンと、各画素に割り当てたラベル及びレベルを保存するための保存ボタンとを有する。なお、メニューバー15aには、各画素に割り当てたラベル及びレベルの一部を修正するための修正ボタンが設けられてもよい。また、マルチラベル分類を実現するモデルに対するアノテーションを想定し、操作画面がラベル選択ボタン15bを有する構成とするが、シングルラベル分類を実現するモデルに対するアノテーションのための操作画面ではラベル選択ボタン15bが設けられていなくてもよく、1つの選択ボタンを有するラベル選択ボタン15bが設けられていてもよい。図5Aに示す画面では、ラベル選択ボタン15bは2つの選択ボタンを有し、各選択ボタンには学習モデル12Mによる検知対象に応じた各ラベルが対応付けられているが、選択ボタンの数は検知対象の数に応じて変更可能である。図5Aに示す画面では、デフォルトの設定としてラベル1が選択されていることを示すチェックがラベル1の選択ボタンに対応付けて表示されている。このような構成により、制御部11は、操作画面のラベル選択ボタン15bを介して、いずれかのラベルに対する選択を受け付けることができ、選択されたラベルについてアノテーションデータを受け付けることができる。
また、図5Aに示す画面では、レベル選択ボタン15cは3つの選択ボタンを有し、各選択ボタンには3段階のレベルのそれぞれが対応付けられている。図5Aに示す画面では、デフォルトの設定としてレベル1が選択されていることを示すチェックがレベル1の選択ボタンに対応付けて表示されている。なお、デフォルトの設定はレベル1に限定されず、レベル2であってもレベル3であってもよい。本実施形態では、レベル3が最高レベルであり、レベル1が最低レベルとする。このようなレベル選択ボタン15cを操作画面に設けることにより、制御部11は、複数のレベルを選択可能に出力することができ、また、いずれかのレベルに対する選択を受け付けることができる。
図5Aに示す画面において、アノテーションの作業者は、ラベル選択ボタン15bを操作して任意のラベルを選択し、レベル選択ボタン15cを操作して、入力画像の各画素に割り当てるレベルを選択し、カーソル15dを用いてドラッグ等の操作を行うことによって、選択したラベル及びレベルを割り当てる画素の指定を行う。図5Bに示す画面では、ラベル選択ボタン15bにおいてラベル1が選択されており、レベル選択ボタン15cにおいてレベル3が選択されており、作業者は、高い自信度でラベル1のオブジェクト領域に分類する各画素を指定することにより、指定した各画素にラベル1におけるレベル3を割り当てることができる。これにより、作業者は、ラベル毎に各レベルを割り当てる画素の領域を指定することができる。
制御部11は、ラベル選択ボタン15bを介していずれかのラベルの選択を受け付けたか否かを判断しており(S12)、選択を受け付けたと判断した場合(S12:YES)、アノテーション対象のラベルを変更する(S13)。なお、制御部11は、メニューバー15aにおいて、選択されたラベルの選択ボタンに対応付けて、このラベルが選択されていることを示すチェックを表示しておく。ラベルの選択を受け付けていないと判断した場合(S12:NO)、制御部11は、ステップS13の処理をスキップする。なお、シングルラベル分類を実現するモデルに対するアノテーションの場合、制御部11は、ラベル選択ボタン15bに対する操作を受け付けずに、ラベル1に対する選択を自動的に受け付けるように構成されていてもよい。次に制御部11は、レベル選択ボタン15cを介していずれかのレベルの選択を受け付けたか否かを判断する(S14)。制御部11は、レベルの選択を受け付けたと判断した場合(S14:YES)、以降に指定される画素に割り当てるレベルを、選択されたレベルに変更する(S15)。制御部11は、メニューバー15aにおいて、選択されたレベルの選択ボタンに対応付けて、このレベルが選択されていることを示すチェックを表示しておく。レベルの選択を受け付けていないと判断した場合(S14:NO)、制御部11は、ステップS15の処理をスキップする。
制御部11は、カーソル15dを用いた操作に従って、選択されたレベルを割り当てる画素の指定を受け付ける(S16)。例えば制御部11は、カーソル15dがドラッグ操作によって移動した領域に含まれる各画素を、指定された画素として受け付ける。これにより、制御部11(受付部)は、アノテーション対象の画像に対して、複数のレベルのそれぞれについて、各レベルを割り当てる領域を受け付ける。なお、作業者は、例えば各画素に各ラベルを割り当てる際の自信度に応じたレベルを、各画素に割り当てる。よって、各画素には、アノテーションの信頼度に応じたレベルが割り当てられる。制御部11は、各レベルを割り当てる領域を受け付けた場合、図5Bに示すように、指定された各画素を、選択されたレベルに応じた態様で表示する(S17)。例えば、制御部11は、指定された各画素を、選択されたラベルに応じた色、かつ、選択されたレベルに応じた濃度で表示する。これにより、ラベル毎に、各レベルが割り当てられた領域を、各レベルに応じた態様で表示することができ、作業者は、各画素に対して自身が割り当てたラベル及びレベルを、各画素を表示する色及び濃度によって確認することができる。なお、図5Bに示す画面において、レベル選択ボタン15cの各ボタンにはそれぞれ異なる濃度の色が割り当てられており、ステップS17において制御部11は、指定された各画素を、選択されたレベルのボタンに割り当てられた色で表示する。これにより、選択ボタンの色と同じ色で、各レベルに指定された画素の領域を色分けすることが可能となるので、アノテーション対象の画像の各領域にいずれのレベルが割り当てられたかを容易に把握できる。なお、各画素を色分けする色は、ラベル及びレベルを判別できる色であればよく、ラベルに応じて異なる色及びレベルに応じて異なる濃度(透過率)に限定されない。例えば、ラベル及びレベルのセット毎に異なる色が割り当てられてもよい。
作業者は、各ラベルについて、オブジェクト領域に分類すべき各画素にそれぞれのレベルを割り当てた後、保存ボタンを操作することにより、生成したアノテーションデータの保存を指示する。よって、制御部11は、保存ボタンが操作されたか否かを判断しており(S18)、操作されていないと判断した場合(S18:NO)、ステップS12の処理に戻り、ステップS12~S17の処理を繰り返す。これにより、表示中の入力画像における各画素に対して、ラベル選択ボタン15bを介して選択されたラベル、及びレベル選択ボタン15cを介して選択されたレベルを割り当てることができる。なお、図5Bに示す操作画面においてリセットボタンが操作された場合、制御部11は、操作画面を介して入力画像の各画素に対して受け付けたラベル及びレベルをリセットし、図5Aに示す状態に戻す。制御部11は、保存ボタンが操作されたと判断した場合(S18:YES)、操作画面を介して入力画像の各画素に対して受け付けたラベル及びレベルに基づいてアノテーションデータを生成する(S19)。ここでは、制御部11は、入力画像中の各画素の位置情報に、各画素に割り当てられたラベル及びレベルを対応付けてアノテーションデータを生成する。そして、制御部11(記憶処理部)は、生成したアノテーションデータを、アノテーション対象である入力画像の情報(例えばファイル名)に対応付けて訓練データとして訓練DB12bに記憶する(S20)。これにより、アノテーション処理によって各レベルが割り当てられた画素の領域が訓練DB12bに記憶される。
上述した処理により、図3Bに示すような入力画像において、オブジェクト領域に分類すべき各画素に対して、各ラベルのオブジェクト領域に分類すべきレベル(確信度)を設定することができる。よって、オブジェクト領域に分類された各画素にレベルが設定されたアノテーションデータが生成されて訓練DB12bに記憶される。なお、学習モデル12Mが複数のオブジェクトを検知対象とするマルチラベル分類を実現するモデルである場合、例えば作業者は、1つの画像データに対して、オブジェクト毎に上述した処理を行い、各オブジェクトに対応するアノテーションデータを生成してもよい。また、作業者は、1つの画像データに対して、ラベル選択ボタン15bを介してラベルを切り替え、ラベル毎に、各ラベルのオブジェクトに分類した各画素にレベルを設定することにより、各画素に各ラベルと、各ラベルのオブジェクトに分類すべきレベルとが設定されたアノテーションデータを生成してもよい。これにより、例えばアノテーション対象の画像に対して、検知対象のオブジェクト毎に色分けされ、色毎に(オブジェクト毎に)レベルに応じた濃度が対応付けられたアノテーションデータを生成することができる。この場合、情報処理装置10の制御部11は、アノテーション対象の画像に対して、分類対象のオブジェクト(ラベル)毎に、各レベルを割り当てる領域を受け付ける。そして、制御部11は、分類対象のオブジェクト(ラベル)毎に、各レベルと、各レベルを割り当てた領域とを対応付けて記憶する。具体的には、制御部11は、アノテーション対象の画像の各画素に、各画素に割り当てられたラベル及びレベルを対応付けたアノテーションデータを生成する。
本実施形態では、アノテーションを行う作業者は、アノテーション対象の画像の各画素に対して、検知対象のオブジェクトであると判断する確信度を割り当てる。具体的には、図5A及び図5Bに示す画面において、作業者は、アノテーション対象の画像の各画素に、確信度に応じた色を割り当てる。なお、確信度に応じた色は、異なる色であってもよく、同じ色で濃度(透過率)が異なる色であってもよい。通常、アノテーション対象の画像には、オブジェクト領域の画素であるか否かの判断が難しい領域と容易な領域とがある。判断が難しい領域には、例えばオブジェクトと背景との境界部分が曖昧である領域、画質が良好でない領域等がある。このような判断が難しい領域では、各画素をオブジェクト領域又はその他の領域に正確に分類することは難しく、誤った判断が行われた場合、アノテーションデータの精度が低下するおそれがある。また、判断が難しい領域では、各画素をオブジェクト領域又はその他の領域に分類する際に作業者が迷うため、アノテーションに要する時間が増大する。しかし、本実施形態におけるアノテーションでは、各画素に、オブジェクト領域に分類する際の確信度を割り当てるので、作業者は、悩むことなく、自信がない画素には低い確信度を割り当てればよい。よって、アノテーションに要する時間が無駄に増大することを抑制でき、アノテーションに要する時間を削減できる。また、高い確信度を割り当てられた画素によるアノテーションデータは、作業者が自信を持ってオブジェクト領域に分類したデータであるので、精度の高いアノテーションデータとなる。また、本実施形態では、精度の高いアノテーションデータを生成できるので、少ない数のアノテーションデータ(訓練データ)で効率良く学習モデル12Mの学習を行うことが可能となり、学習に用いるアノテーションデータの数を削減することができる。
本実施形態において、アノテーション対象の画像の各画素を分類するレベルの数は変更可能に構成されていてもよい。また、レベルの数が変更された場合に、各レベルに応じた確信度(レベル値)も変更可能であってもよい。例えば情報処理装置10の制御部11が、アノテーションに用いるレベルの数を設定するための設定画面(図示せず)を表示し、作業者が、設定画面を介してレベルの数を指定すると共に、各レベルに対応する確信度を指定することにより、レベルの数及び各レベルに応じた確信度の変更を行えるように構成されていてもよい。確信度は例えば0~255(8bit)の値で表される。
上述したようなアノテーションによって生成されたアノテーションデータを用いて学習を行うことにより、オブジェクト領域に分類すべき確信度を多値で示すラベル画像を出力する学習モデル12Mを生成できる。以下に、上述した処理によって生成された訓練データ(アノテーションデータ)を用いて学習モデル12Mを生成する処理について説明する。図6は学習モデル12Mの生成処理手順の一例を示すフローチャートである。以下の処理は、情報処理装置10の制御部11が、記憶部12に記憶してある制御プログラム12Pに従って実行する。上述した訓練データの生成処理と、学習モデル12Mの生成処理とは各別の装置で行われてもよい。以下では、説明の簡略化のため、シングルラベル分類を実現する学習モデル12Mの生成処理について説明する。
情報処理装置10の制御部11は、訓練DB12bから訓練データを取得する(S21)。具体的には、制御部11は、訓練DB12bに記憶してある画像データ及びアノテーションデータを読み出す。なお、画像データが画像DB12aに記憶してある場合、制御部11は、画像DB12aから画像データを読み出す。制御部11は、読み出したアノテーションデータに基づいて、当該訓練データにおける正解のラベル画像を生成する(S22)。ここでは、制御部11は、アノテーションデータにおいて、各画素に対応付けられているレベルを、各レベルに応じた画素値(確信度)に変換する。例えばラベル画像の各画素の画素値が0~255の値を有する場合、レベル3に対応する画素値を255とし、レベル2に対応する画素値を200とし、レベル1に対応する画素値を100としてもよい。なお、各レベルに対応する画素値(分類情報)は任意に変更可能であってもよい。例えば、制御部11は、所定の受付画面を介して、各レベルに応じた分類情報の入力を受け付ける。このようにアノテーションデータから生成された正解のラベル画像は、図3Cに示すような多値画像となる。
そして、制御部11は、ステップS21で取得した訓練データに含まれる画像データ(入力画像)を学習モデル12Mに入力し、学習モデル12Mから出力されるラベル画像を取得する(S23)。学習モデル12Mは、入力された画像に基づいて、入力画像中のオブジェクト領域に分類された各画素に、オブジェクト領域への分類に対する確信度を示す値がラベリングされたラベル画像を出力する。
制御部11は、学習モデル12Mから出力されたラベル画像と、ステップS22で生成した正解のラベル画像とを比較し、両者が近似するように学習モデル12Mの学習処理を行う(S24)。学習処理において、学習モデル12Mは中間層での演算処理に用いるパラメータを最適化する。例えば制御部11は、中間層におけるノード間の重み等のパラメータを、学習モデル12Mの出力層から入力層に向かって順次更新する誤差逆伝播法を用いて最適化する。
制御部11は、訓練DB12bに記憶してある訓練データにおいて、未処理の訓練データがあるか否かを判断する(S25)。未処理の訓練データがあると判断した場合(S25:YES)、制御部11はステップS21の処理に戻り、学習処理が未処理の訓練データについてステップS21~S24の処理を行う。未処理の訓練データがないと判断した場合(S25:NO)、制御部11は一連の処理を終了する。
上述した処理により、画像を入力することによって、画像中のオブジェクトを検知し、オブジェクト領域に分類された各画素に対して確信度に応じた画素値(分類情報)が割り当てられたラベル画像を出力する学習モデル12Mが生成される。なお、上述したような訓練データを用いた学習処理を繰り返し行うことにより、学習モデル12Mを更に最適化することができる。また、既に学習済みの学習モデル12Mについても、上述した処理を行うことによって再学習させることができ、この場合、判別精度がより高い学習モデル12Mを生成できる。また、ラベル毎に、オブジェクト領域に分類すべき各画素に確信度に応じたレベルが割り当てられたアノテーションデータを用いた学習を行うことにより、マルチラベル分類を実現する学習モデル12Mを生成できる。
本実施形態では、アノテーション対象の画像の各画素に確信度を割り当てたアノテーションデータから、多値で表現された正解ラベル画像を生成し、多値の正解ラベル画像を用いて学習を行うことにより、検査対象の画像が入力された場合に、多値のラベル画像を出力する学習モデル12Mを生成することができる。よって、アノテーションの際に作業者が各画素に割り当てた確信度(自信度)が反映された出力情報(ラベル画像)を出力する学習モデル12Mを生成することができる。
上述したような学習モデル12Mを生成することにより、検査対象を撮影した画像を学習モデル12Mに入力し、学習モデル12Mからの出力情報に基づいて、入力画像中の所定のオブジェクトの位置を特定することができる。以下に、学習モデル12Mを用いて検査対象の撮影画像から所定のオブジェクト(例えばキズ、欠損、汚れ、不良品、異物等)を検知する処理について説明する。図7は検査処理手順の一例を示すフローチャート、図8は画面例を示す模式図である。以下の処理は、情報処理装置10の制御部11が、記憶部12に記憶してある制御プログラム12Pに従って実行する。以下の処理の一部を専用のハードウェア回路で実現してもよい。以下では、説明の簡略化のため、シングルラベル分類を実現する学習モデル12Mを用いた処理について説明する。
情報処理装置10の制御部11は、検査対象を撮影した撮影画像を取得する(S31)。例えば、工場等の検査ラインで搬送されてくる検査対象物を撮影する撮影装置(カメラ)が情報処理装置10に接続されている場合、制御部11は、撮影装置で逐次撮影される画像を撮影装置から取得する。また情報処理装置10が撮影装置に搭載されている場合、制御部11は、撮影装置の撮影部から撮影画像を取得する。また撮影画像が可搬型記憶媒体10aに記憶されている場合、制御部11は、読み取り部16によって可搬型記憶媒体10aから撮影画像を読み取ってもよい。更に制御部11は、撮影装置から撮影画像を取得した他の情報処理装置から撮影画像を取得してもよい。
撮影画像を取得した場合、制御部11は、学習モデル12Mを用いて、撮影画像に基づく検査処理を実行する(S32)。ここでは、制御部11は、撮影画像を学習モデル12Mに入力し、学習モデル12Mからの出力情報(ラベル画像)に基づいて、撮影画像中に所定のオブジェクト(例えばキズ、欠損、汚れ、不良品、異物等)があるか否かを判断し、ある場合にはオブジェクトの位置を特定する。なお、本実施形態の学習モデル12Mは、各画素が、各画素をオブジェクトに分類すべき確信度に応じた画素値を有するラベル画像を出力する。従って、制御部11は、検査処理の結果として、多値で表現されたラベル画像を取得する。
制御部11は、取得したラベル画像中に第1閾値以上の画素値(確信度)を有する画素があるか否かを判断する(S33)。第1閾値は、例えば撮影画像中にオブジェクトがあると判断し、判断の際の確信度が高い画像であるか否かを判断するための基準値であり、例えば画素値が0~255で表される場合、200程度とすることができる。ラベル画像中に第1閾値以上の画素値の画素があると判断した場合(S33:YES)、制御部11は、ここでの検査対象の撮影画像に対して学習モデル12Mが出力したラベル画像を第1画像として記憶部12に記憶する(S34)。第1画像は、撮影画像中にオブジェクトが検知された画像であり、撮影日時、撮影場所、第1画像であることを示す情報、画像の識別情報(例えば画像ID、ファイル名)等の画像情報に対応付けてラベル画像を記憶部12に記憶する。なお、ラベル画像と共に撮影画像を記憶部12に記憶してもよい。
ラベル画像中に第1閾値以上の画素値の画素がないと判断した場合(S33:NO)、制御部11は、ラベル画像中に第2閾値以上の画素値(確信度)を有する画素があるか否かを判断する(S35)。第2閾値は、例えば撮影画像中にオブジェクトがあると判断するが、判断の際の確信度が低い画像であるか否かを判断するための基準値である。第2閾値は、第1閾値よりも小さい値であり、例えば画素値が0~255で表される場合、100程度とすることができる。ラベル画像中に第2閾値以上の画素値の画素があると判断した場合(S35:YES)、制御部11は、ここでの検査対象の撮影画像に対して学習モデル12Mが出力したラベル画像を第2画像として記憶部12に記憶する(S36)。第2画像は、撮影画像中にオブジェクトがあると判断すべき確信度が低い画像であり、撮影日時、撮影場所、第2画像であることを示す情報、画像の識別情報等の画像情報に対応付けてラベル画像を記憶部12に記憶する。ここでも、ラベル画像と共に撮影画像を記憶部12に記憶してもよい。
ラベル画像中に第2閾値以上の画素値の画素がないと判断した場合(S35:NO)、制御部11は、ここでの検査対象の撮影画像に対して学習モデル12Mが出力したラベル画像を第3画像として記憶部12に記憶する(S37)。第3画像は、撮影画像中にオブジェクトが検知されなかった画像であり、撮影日時、撮影場所、第3画像であることを示す情報、画像の識別情報等の画像情報に対応付けて撮影画像を記憶部12に記憶する。ここでも、ラベル画像と共に撮影画像を記憶部12に記憶してもよい。
制御部11は、ステップS34,S36,S37の処理後、検査処理が未処理の撮影画像があるか否かを判断し(S38)、未処理の撮影画像があると判断した場合(S38:YES)、ステップS31の処理に戻り、未処理の撮影画像に対してステップS31~S37の処理を実行する。これにより、検査対象の撮影画像に対して、学習モデル12Mを用いた検査処理を実行し、各撮影画像をそれぞれの検査結果に応じて第1~第3画像に区分することができる。なお、検査結果に応じて撮影画像を区分する種類は3つに限定されず、2つ(オブジェクトが有る画像/無い画像)であってもよく、4つ以上であってもよい。
制御部11は、未処理の撮影画像がないと判断した場合(S38:NO)、各撮影画像に対する検査結果を表示する結果画面を生成して表示部15に表示する(S39)。例えば制御部11は、図8に示す結果画面を生成する。図8に示す画面は、第1画像に区分された撮影画像の一覧と、第2画像に区分された撮影画像の一覧とを表示する。このように制御部11は、処理対象の撮影画像中の領域を、各画素が分類されたラベルに対する確信度(分類情報)に応じた態様で表示する表示画面を生成して表示部15へ出力する。なお、図8に示す画面では、画像に割り当てられた画像IDが撮影画像に対応付けて表示されているが、撮影日時、撮影場所等が撮影画像に対応付けて表示されてもよい。制御部11は、各撮影画像に対する検査の終了後に、具体的には、図7中のステップS34,S36,S37の処理後に、検査後の画像(学習モデル12Mから出力されたラベル画像)を表示してもよい。この場合、検査が行われる都度、検査結果を示すラベル画像を提示することができる。また、制御部11は、検査結果の出力方法として、検査結果を示すラベル画像の各画素を確信度に応じた態様(例えば確信度に応じた色、濃度)で表示する構成に限定されない。例えば情報処理装置10が振動を発生させる振動部を有する場合、制御部11は、検査結果を示すラベル画像の各画素の確信度に応じた振動によって、検査結果を通知するように構成されていてもよい。例えば、検査結果を示すラベル画像を表示しているタッチパネルに対してタッチペンを近づけた場合に、制御部11は、近づけた位置の画素の確信度に応じた大きさの振動を振動部に発生させることにより、タッチペンを保持するユーザに確信度を通知することができる。なお、振動部をタッチペンに設け、制御部11からの指示に従って振動部が振動するように構成されていてもよい。
上述した処理により、学習モデル12Mを用いて検査処理を行った結果、オブジェクトが含まれると判断された撮影画像を提示することができる。よって、検査担当者は、結果画面に表示された撮影画像に対して、オブジェクト(キズ、欠損、汚れ、不良品、異物等)の有無を確認すればよく、検査効率が向上する。上述した処理において、学習モデル12Mからの出力情報に基づいて撮影画像が第1画像であるか否か、第2画像であるか否かを判断する際の基準値は変更可能である。この基準値を適宜変更することにより、学習モデル12Mを用いた検索処理の精度を変更することができる。また、学習モデル12Mによって生成されたラベル画像(検査結果を示す画像)において、各画素の画素値(確信度)に応じて、検査対象に行う処理を切り替える構成とすることができる。例えば、第1画像に分類された検査対象と、第2画像に分類された検査対象とに対して、検査後に異なる処理を行うように検査システムを構成することができる。
本実施形態において、学習モデル12Mが出力するラベル画像は、アノテーションの際に作業者が各画素に割り当てた自信度が反映された画像となる。よって、学習モデル12Mが出力したラベル画像の各画素の画素値に基づいて、各画素がオブジェクト領域に分類される際の確信度を把握できる。これにより、ラベル画像の各画素の画素値を考慮して、検査対象の画像にオブジェクトが含まれるか否かを正確に判断することができる。
本実施形態において、アノテーションデータ(訓練データ)の生成処理、訓練データを用いた学習モデル12Mの学習処理、学習モデル12Mを用いた検査処理は、情報処理装置10がローカルで行う構成に限定されない。例えば、上述した各処理を実行する情報処理装置をそれぞれ設けてもよい。また、学習モデル12Mの学習処理を実行するサーバを設けてもよい。この場合、情報処理装置10は、アノテーションによって生成した訓練データをサーバへ送信し、サーバで学習処理によって生成された学習モデル12Mを取得するように構成される。また、学習モデル12Mを用いた検査処理を実行するサーバを設けてもよい。この場合、情報処理装置10は、検査対象の撮影画像をサーバへ送信し、サーバで行われた検査結果を示すラベル画像を取得するように構成されてもよい。このような構成とした場合であっても、本実施形態と同様の処理が可能であり、同様の効果が得られる。なお、上述したようにサーバを設ける場合、サーバは、複数台設けられて分散処理する構成でもよく、1台のサーバ内に設けられた複数の仮想マシンによって実現されてもよく、クラウドサーバを用いて実現されてもよい。
(実施形態2)
アノテーションを行う際の操作画面の変形例について説明する。本実施形態の情報処理装置は、図1に示す実施形態1の情報処理装置10と同様の構成によって実現可能であるので、構成についての説明は省略する。また、本実施形態の情報処理装置10は、図4に示す訓練データの生成処理と同様の処理を実行することにより、アノテーション対象の画像に対するアノテーションが行われ、アノテーションデータを含む訓練データが生成される。
アノテーションを行う際の操作画面の変形例について説明する。本実施形態の情報処理装置は、図1に示す実施形態1の情報処理装置10と同様の構成によって実現可能であるので、構成についての説明は省略する。また、本実施形態の情報処理装置10は、図4に示す訓練データの生成処理と同様の処理を実行することにより、アノテーション対象の画像に対するアノテーションが行われ、アノテーションデータを含む訓練データが生成される。
図9はアノテーションの操作画面の変形例を示す模式図である。図4に示す処理におけるステップS11で情報処理装置10の制御部11は、画像DB12aから読み出したアノテーション対象の画像データを、例えば図9Aに示す操作画面によって表示部15に表示する。図9Aに示す画面は、図5Aに示す画面と同様の構成を有するが、メニューバー15aにレベル選択ボタン15cが設けられていない。ここでのアノテーションアプリ12APは、図9Aに示す画面において、例えばマウスの右クリック又はキーボードのアプリケーションキーの操作が行われた場合にレベル選択パレット15eを表示するように構成されている。レベル選択パレット15eは、図5Aに示す画面においてメニューバー15aに設けられていた3つのレベル選択ボタン15cと同様のボタンを有し、いずれかのボタンが選択された場合、選択されたボタンに対応付けて、当該ボタンが選択されていることを示すチェックが表示される。図9Aに示す画面では、アノテーションの作業者は、マウスの右クリック又はキーボードのアプリケーションキーの操作等を行ってレベル選択パレット15eを表示させ、レベル選択パレット15eを介して、アノテーション対象の画像の各画素に割り当てるレベルを選択する。なお、レベルの選択後は、実施形態1と同様に、作業者は、カーソル15dを用いてドラッグ等の操作を行うことによって、選択したレベルを割り当てる画素の指定を行うことができる。
また図4中のステップS11において、情報処理装置10の制御部11は、アノテーション対象の画像データを、図9Bに示す操作画面によって表示してもよい。図9Bに示す画面は、図9Aに示す画面と同様の構成を有する。なお、図9Bに示す画面では、マウスの右クリック又はキーボードのアプリケーションキー等の操作が行われた場合に、任意のレベルを選択できるレベル選択バーが設けられたレベル選択パレット15eを表示するように構成されている。レベル選択バーは、所定範囲内の任意のレベルを選択できる構成を有しており、例えば正解ラベル画像の各画素が0~255の画素値を有する構成の場合、0~255のいずれかのレベルを選択できるように構成されている。このようなレベルを選択できる構成では、アノテーションにおいて各画素が0~255の画素値を有するアノテーションデータを生成することができるので、アノテーションデータをそのまま正解ラベル画像として使用することが可能となる。図9Bに示すレベル選択パレット15eでは、いずれかのレベルが選択された場合、選択されたレベルに対応する位置に、当該レベルが選択されていることを示すマーク(図9Bでは三角マーク)が表示される。よって、図9Bに示す画面では、アノテーションの作業者は、レベル選択パレット15eに設けられたレベル選択バーを介して、アノテーション対象の画像の各画素に割り当てるレベルを選択する。なお、レベルの選択後は、実施形態1と同様に、作業者は、カーソル15dを用いてドラッグ等の操作を行うことによって、選択したレベルを割り当てる画素の指定を行うことができる。
更に図4中のステップS11において、情報処理装置10の制御部11は、アノテーション対象の画像データを、図9Cに示す操作画面によって表示してもよい。図9Cに示す画面は、図9Aに示す画面と同様の構成を有する。なお、図9Cに示す画面のレベル選択パレット15eには、3つのレベルをそれぞれ選択するための円弧状の選択ボタンが同心円状に設けられている。図9Cに示す画面では、マウスの右クリック又はキーボードのアプリケーションキーの操作等が行われた場合に、その時点でカーソル15dが指す位置を中心に円形のレベル選択パレット15eを表示するように構成されている。図9Cに示すレベル選択パレット15eでは、いずれかのレベルが選択された場合、選択されたレベルに対応する選択ボタンが、当該ボタンが選択されていることを示す態様で表示される。例えば、選択されたレベルに対応する選択ボタンを高輝度で表示し、他の選択ボタンを低輝度で表示することにより、選択されたボタンを明示できる。図9Cに示す画面では、アノテーションの作業者は、レベル選択パレット15eに設けられた選択ボタンによって、アノテーション対象の画像の各画素に割り当てるレベルを選択する。なお、レベルの選択後は、実施形態1と同様に、作業者は、カーソル15dを用いてドラッグ等の操作を行うことによって、選択したレベルを割り当てる画素の指定を行うことができる。図9Cに示すレベル選択パレット15eは、選択ボタンを有する代わりに、レベル選択パレット15eの中心からの距離に応じたレベルを選択できる円形のレベル選択バーが設けられていてもよい。このような構成の場合、図9Bに示すレベル選択バーと同様に、所定範囲内の任意のレベルを選択することが可能となる。
アノテーション対象の画像の各画素に割り当てるレベルを選択するためのレベル選択パレット15eは、予め設定された複数レベルのいずれかを選択できる構成、又は、所定範囲内のいずれかのレベルを選択できる構成であれば、図9A~図9Cに示す構成に限定されない。また、図9A及び図9Cに示す画面において、各レベルを選択するための選択ボタンに割り当てられている色は、それぞれ異なる色であってもよく、同じ色で濃度(透過率)が異なる色であってもよい。また、各レベルに応じた色は変更可能であってもよい。例えば、情報処理装置10の制御部11が、各レベルに応じた色を設定するための設定画面(図示せず)を表示部15に表示し、作業者が、設定画面を介して各レベルに対応付ける色を選択することにより、各レベルの色を任意に変更できるように構成されていてもよい。また学習モデル12Mがマルチラベル分類を実現するモデルである場合、例えば検知対象のオブジェクト(ラベル)毎の色が設定され、色毎(オブジェクト毎)に、レベルに応じた濃度が設定される構成とすることができる。
アノテーションを行う際の操作画面の更なる変形例について説明する。図10はアノテーションの操作画面の他の例を示す模式図である。図4中のステップS11において、情報処理装置10の制御部11は、画像DB12aから読み出したアノテーション対象の画像データを、例えば図10Aに示す操作画面によって表示してもよい。図10Aに示す画面は、図9A~図9Cに示す画面と同様の構成を有し、メニューバー15aは参考ボタンを更に有する。ここでのアノテーションアプリ12APは、図10Aに示す画面において、参考ボタンが操作された場合、他の作業者が生成したアノテーションデータを表示するように構成されている。具体的には、図10Aに示す画面において参考ボタンが操作された場合、情報処理装置10の制御部11は、図10Bに示すように参考欄15fを生成する。そして、制御部11は、他の作業者によって生成されたアノテーションデータを訓練DB12bから読み出し、読み出したアノテーションデータを参考欄15fに表示する。なお、アノテーションデータを生成した作業者の情報(例えば作業者に割り当てられた作業者ID)が、アノテーションデータに対応付けて訓練DB12bに記憶してある場合、制御部11は、アノテーションデータに作業者の情報を対応付けて表示する構成でもよい。また、参考欄15fに表示するアノテーションデータは、予め設定された作業者が生成したアノテーションデータであってもよい。例えばアノテーションの技術が高い作業者、アノテーションの経験が豊富な作業者、アノテーションの責任者等を設定しておき、これらの作業者によるアノテーションデータを提示するように構成されていてもよい。
作業者は、参考欄15fに表示されたアノテーションデータを利用したい場合、カーソル15dを用いてクリック等の操作を行うことにより、任意のアノテーションデータを選択する。情報処理装置10の制御部11は、いずれかのアノテーションデータに対する選択を受け付けた場合、図10Cに示すように、選択されたアノテーションデータを、アノテーション対象の画像に重ねて表示する。その後、作業者は、所定の操作を行ってレベル選択パレット15e(図9A~図9C参照)を表示させ、レベル選択パレット15eを介して、各画素に割り当てるレベルを選択する。また作業者は、レベルの選択後は、実施形態1と同様に、カーソル15dを用いてドラッグ等の操作を行うことによって、選択したレベルを割り当てる画素の指定を行うことができる。これにより、作業者は、他の作業者が生成したアノテーションデータに対して、各画素に対するレベルの変更指示を行うことによって、新たなアノテーションデータを生成することができる。このような構成では、作業者は、他の作業者が生成したアノテーションデータを基にアノテーションを行うことができるので、効率の良いアノテーションを実現できる。
図10に示すように、各作業者が、他の作業者によるアノテーションデータに基づいてアノテーションを行う構成において、機械学習によって構築された学習モデルを用いて生成されたアノテーションデータに基づいてアノテーションを行う構成でもよい。例えばCNNで構成され、アノテーション対象の画像が入力された場合に、アノテーション後の画像(アノテーションデータ)を出力するように学習された学習モデルを用いてもよい。この場合、制御部11は、ステップS11で読み出した画像データを学習済みの学習モデルに入力し、学習モデルからの出力情報に基づいて、アノテーション後の画像を取得し、このアノテーション後の画像に対してアノテーションを行う構成とすることができる。
本実施形態において、アノテーションで各画素に割り当てるレベルを選択する方法は、上述したようなレベル選択パレット15eを用いる方法に限定されない。例えば入力部14及び表示部15がタッチパネル及びタッチペンであり、タッチパネルに対するタッチペンの押圧の強さを検知できるように構成されている場合に、タッチペンの押圧の強さによってレベルを選択できる構成とすることができる。例えば確信度(自信度)が高い場合に、強い力でタッチペンをタッチパネルに押圧することにより、タッチ箇所の画素に対して高いレベルの割当が指示され、確信度が低い場合に、弱い力でタッチペンをタッチパネルに押圧することにより、タッチ箇所の画素に対して低いレベルの割当が指示されるように構成することができる。また、入力部14及び表示部15が静電容量方式のタッチパネルで構成される場合、タッチパネルに対してタッチ操作が行われた際の静電容量に応じて、いずれかのレベルの選択を受け付けるように構成されていてもよい。この場合、情報処理装置10の制御部11は、各レベルに静電容量を対応付けておき、タッチ操作が行われた際に静電容量を検知し、検知した静電容量に対応するレベルを特定することにより、レベルの選択を受け付けることができる。このような構成においても、予め設定された複数のレベルのいずれかに対する選択だけでなく、所定範囲内の任意のレベルに対する選択を行えるように構成されていてもよい。
(実施形態3)
アノテーションにおいて、作業者が、オブジェクト領域に分類する確信度が高い画素に対して高いレベルを割り当てる処理を行い、作業者が生成したアノテーションデータに基づいて、各画素に複数レベルが割り当てられたアノテーションデータを生成する情報処理装置について説明する。本実施形態の情報処理装置は、図1に示す実施形態1の情報処理装置10と同様の構成によって実現可能であるので、構成についての説明は省略する。
アノテーションにおいて、作業者が、オブジェクト領域に分類する確信度が高い画素に対して高いレベルを割り当てる処理を行い、作業者が生成したアノテーションデータに基づいて、各画素に複数レベルが割り当てられたアノテーションデータを生成する情報処理装置について説明する。本実施形態の情報処理装置は、図1に示す実施形態1の情報処理装置10と同様の構成によって実現可能であるので、構成についての説明は省略する。
図11は実施形態3における訓練データの生成処理手順の一例を示すフローチャート、図12は実施形態3におけるアノテーションデータの説明図である。図11に示す処理は、図4に示す処理においてステップS19及びステップS20の間にステップS51を追加したものである。図4と同じステップについては説明を省略する。
本実施形態の情報処理装置10において、制御部11は、図4に示すステップS11~S19の処理を行う。これにより、画像DB12aから読み出されて表示部15に表示されたアノテーション対象の画像に対して、各画素に、オブジェクト領域に分類すべき確信度のレベルを割り当てることができる。なお、本実施形態のアノテーションでは、作業者は、確信度の高い画素に対して高いレベル(図5Aに示す画面ではレベル3)を割り当てる処理のみを行う。即ち、作業者は、確信度の低い画素に対しては何も行わない。これにより、ステップS19において制御部11は、オブジェクト領域に分類すべき画素に高いレベルが割り当てられたアノテーションデータを生成する。
次に制御部11は、生成したアノテーションデータに基づいて、低いレベルのアノテーションデータを追加する(S51)。例えば制御部11は、ステップS19で図12左側に示すようなアノテーションデータを生成した場合、図12右側に示すように、高いレベルが割り当てられた領域の周囲の画素に低いレベルを割り当てることにより、低いレベルのアノテーションデータを追加する。低いレベルを割り当てる画素の領域は、高いレベルが割り当てられた領域の周囲の所定画素数の領域とすることができる。また、低いレベルを割り当てる画素の領域は、機械学習によって構築された学習モデルを用いて特定するように構成されていてもよい。例えばCNNで構成され、高いレベルが割り当てられたアノテーションデータが入力された場合に、低いレベルが割り当てられる画素を示すアノテーションデータを出力するように学習された学習モデルを用いてもよい。この場合、制御部11は、ステップS19で生成したアノテーションデータを学習済みの学習モデルに入力し、学習モデルからの出力情報に基づいて、追加すべき低いレベルのアノテーションデータを生成することができる。
その後、制御部11は、ステップS19で生成したアノテーションデータに、低いレベルのアノテーションデータを追加し、得られたアノテーションデータを、アノテーション対象である入力画像の情報に対応付けて訓練データとして訓練DB12bに記憶する(S20)。
上述した処理により、本実施形態においても、アノテーション対象の画像において、オブジェクト領域に分類すべき各画素に対して複数のレベルが割り当てられたアノテーションデータを生成できる。よって、このようなアノテーションデータを用いて学習を行うことにより、画像中の各画素をオブジェクト領域に分類すべき確信度を多値で示すラベル画像を出力する学習モデル12Mを生成できる。本実施形態では、作業者は、自信を持ってオブジェクト領域に分類できる画素に対して高いレベルを割り当てる処理のみを行えばよいので、迷うことがなく、アノテーションに要する時間を削減することができる。
本実施形態の情報処理装置10は、図6に示す学習モデル12Mの生成処理と同様の処理を実行することにより、上述したように生成したアノテーションデータを用いて学習モデル12Mを生成することができる。また、本実施形態の情報処理装置10は、図7に示す検査処理と同様の処理を実行することにより、上述したアノテーションデータを用いて生成した学習モデル12Mを用いて検査対象の撮影画像に対してオブジェクトの有無を判定することができる。
本実施形態では、上述した各実施形態と同様の効果が得られる。また本実施形態では、作業者が自信を持ってオブジェクト領域に分類できる画素に対して高いレベルを割り当てるアノテーションを行えばよいので、精度の高いアノテーションデータの生成が可能である。また、作業者は、アノテーションの際に迷うことがなく、アノテーションに要する時間を削減できる。
(実施形態4)
実施形態1~3のように生成されたアノテーションデータを用いた学習モデル12Mによる学習処理の変形例について説明する。本実施形態の情報処理装置は、図1に示す実施形態1の情報処理装置10と同様の構成によって実現可能であるので、構成についての説明は省略する。上述した実施形態1の学習処理では、各画素が、各画素に割り当てられたレベルに応じた画素値を有する多値の正解ラベル画像を用いて学習処理を行うことにより、オブジェクト領域に分類された各画素に対して確信度に応じた画素値が割り当てられたラベル画像を出力する学習モデル12Mが生成される。これに対して、本実施形態では、各画素に割り当てられたレベルに応じて、学習処理に用いるアノテーションデータを切り替える構成を有する。例えば、レベル3が割り当てられた画素によるアノテーションデータを用いた学習処理を行ってもよく、レベル3及びレベル2が割り当てられた画素によるアノテーションデータを用いた学習処理を行ってもよい。
実施形態1~3のように生成されたアノテーションデータを用いた学習モデル12Mによる学習処理の変形例について説明する。本実施形態の情報処理装置は、図1に示す実施形態1の情報処理装置10と同様の構成によって実現可能であるので、構成についての説明は省略する。上述した実施形態1の学習処理では、各画素が、各画素に割り当てられたレベルに応じた画素値を有する多値の正解ラベル画像を用いて学習処理を行うことにより、オブジェクト領域に分類された各画素に対して確信度に応じた画素値が割り当てられたラベル画像を出力する学習モデル12Mが生成される。これに対して、本実施形態では、各画素に割り当てられたレベルに応じて、学習処理に用いるアノテーションデータを切り替える構成を有する。例えば、レベル3が割り当てられた画素によるアノテーションデータを用いた学習処理を行ってもよく、レベル3及びレベル2が割り当てられた画素によるアノテーションデータを用いた学習処理を行ってもよい。
図13は実施形態4における学習モデル12Mの生成処理手順の一例を示すフローチャートである。図13に示す処理は、図6に示す処理においてステップS21及びステップS22の間にステップS61を追加したものである。図6と同じステップについては説明を省略する。
情報処理装置10の制御部11は、訓練DB12bから訓練データを取得し(S21)、取得した訓練データに含まれるアノテーションデータから、高いレベルが割り当てられた画素によるアノテーションデータを抽出する(S61)。ここでの高いレベルは、例えばレベル3のみ、又はレベル3及びレベル2等とすることができ、予め設定されているものとする。また、アノテーションデータにおいて各画素に所定範囲内の任意のレベルが割り当てられている場合、高いレベルとして、所定のレベル値が設定されてもよい。この場合、制御部11は、設定された所定のレベル値以上のレベルが割り当てられた画素によるアノテーションデータを抽出できる。
そして制御部11は、抽出した高いレベルのアノテーションデータに基づいて、当該訓練データにおける正解ラベル画像を生成する(S22)。ここでは、制御部11は、抽出したアノテーションデータにおいて、各画素に対応付けられているレベルを、各レベルに応じた画素値に変換することによって正解ラベル画像を生成する。また、制御部11は、高いレベルが割り当てられている画素の画素値を1に、それ以外の画素の画素値を0に変換することによって2値の正解ラベル画像を生成してもよい。なお、各画素のレベルに対応する画素値は任意に変更可能であってもよく、8bit(0~255)で表現される構成、又は1bit(0~1)で表現される構成に限定されず、例えば16bit(0~65535)で表現される構成でもよい。
その後、制御部11は、ステップS21で取得した訓練データに含まれる画像データ(入力画像)と、ステップS22で生成した正解ラベル画像とに基づいて、ステップS23~S24の処理を実行し、学習モデル12Mの学習処理を行う。また制御部11は、未処理の訓練データがあると判断した場合(S25:YES)、上述したステップS21,S61,S22~S24の処理を繰り返す。上述した処理により、訓練DB12bに記憶された訓練データに含まれるアノテーションデータにおいて、高いレベルを割り当てられた画素によるアノテーションデータを用いて正解ラベル画像が生成され、このような正解ラベル画像を用いた学習処理の実行が可能となる。よって、アノテーションの作業者が自信を持ってオブジェクト領域に分類した各画素によるアノテーションデータに基づいて品質の良い正解ラベル画像を生成することができ、このような正解ラベル画像を用いることにより効率の良い学習処理が可能となる。
本実施形態の情報処理装置10は、図7に示す検査処理と同様の処理を実行することにより、上述したように高いレベルを割り当てられた画素によるアノテーションデータを用いて生成した学習モデル12Mを用いて検査対象の撮影画像に対してオブジェクトの有無を判定することができる。本実施形態では、上述した各実施形態と同様の効果が得られる。また本実施形態では、作業者が自信を持ってオブジェクト領域に分類した画素によるアノテーションデータに基づいて、高品質の正解ラベル画像(訓練データ)の生成が可能である。
本実施形態において、それぞれのアノテーションデータから、高いレベルが割り当てられた画素によるアノテーションデータを抽出し、抽出したアノテーションデータから正解ラベル画像を生成する構成に限定されない。例えば複数人の作業者が生成した複数のアノテーションデータに基づいて、1つのアノテーションデータを生成し、生成したアノテーションデータから正解ラベル画像を生成する構成でもよい。この場合、例えば、アノテーション対象の画素の各画素に対して複数の作業者が割り当てたレベルの平均値を算出して、当該画素に割り当てることによって1つのアノテーションデータを生成してもよい。また、作業者毎に重みを設定しておき、各作業者が割り当てたレベルに重み付けを行った平均値を算出し、各画素に割り当てて1つのアノテーションデータを生成してもよい。このような構成の場合、例えばアノテーションの技術が高い作業者、アノテーションの経験が豊富な作業者、アノテーションの責任者等に対して高い重みを設定しておくことにより、作業者の技術力を反映させたアノテーションデータの生成が可能となる。また、例えば複数の作業者(例えば作業者の全員)がオブジェクト領域に分類した画素をオブジェクト領域の画素に決定してアノテーションデータを生成することにより、高精度のアノテーションデータの生成が可能となる。このような構成により、複数のアノテーションデータ(複数パターンのアノテーションデータ)を受け付け、複数のアノテーションデータから、訓練データに使用するアノテーションデータの生成が可能となる。また情報処理装置10は、このような複数パターンのアノテーションデータから1つのアノテーションデータを生成する処理を、図4に示す訓練データの生成処理(アノテーション処理)において実行してもよい。例えば、制御部11は、ステップS19で生成したアノテーションデータを一旦記憶部12に記憶しておき、所定数のアノテーションデータを生成した後に、所定数のアノテーションデータから、訓練データに使用するアノテーションデータを生成する処理を行ってもよい。
(実施形態5)
上述した実施形態1~4では、セマンティックセグメンテーションを実現する学習モデル12Mを生成する情報処理装置について説明した。本開示の技術において、アノテーション対象のデータは、静止画及び動画を含む画像データに限定されず、音声データ、テキストデータ、波形データ等の各種データとすることができる。
上述した実施形態1~4では、セマンティックセグメンテーションを実現する学習モデル12Mを生成する情報処理装置について説明した。本開示の技術において、アノテーション対象のデータは、静止画及び動画を含む画像データに限定されず、音声データ、テキストデータ、波形データ等の各種データとすることができる。
以下に、アノテーション対象を波形データとする情報処理装置について説明する。波形データは、例えば計測処理を開始してからの経過時間に計測結果(計測値)が対応付けられた時系列データである。本実施形態の情報処理装置は、波形データが入力された場合に、波形データ中の各計測値が正常であるか異常であるかを示す情報を出力する学習モデルを生成する。本実施形態の情報処理装置は、図1に示す実施形態1の情報処理装置10と同様の構成によって実現可能であるので、構成についての説明は省略する。
図14は実施形態5の学習モデル12Maの構成例を示す模式図である。本実施形態の学習モデル12Maは、例えばRNN(Recurrent Neural Network)で構成されるが、複数のアルゴリズムを組み合わせて構成されてもよい。本実施形態の学習モデル12Maは、波形データを入力とし、入力された波形データ中の各計測値が正常値であるか異常値であるかを検出し、検出結果を示す情報を出力する機械学習モデルである。学習モデル12Maに入力される波形データは、例えば検査対象から収集した波形データであり、例えば横軸を時刻又は検査開始からの経過時間とし、縦軸を計測値(例えば電流値、電圧値、温度等)として示される時系列データである。学習モデル12Maは、このような波形データから、検査対象に異常(不具合)が発生しているか否かを検出し、検出結果を出力するモデルである。図14に示す学習モデル12Maは、波形データに異常値が含まれているか否かを検知するシングルラベル分類を実現するモデルである。しかし、本実施形態においても学習モデル12Maは、波形データに含まれる複数種類の異常を検知するマルチラベル分類を実現するモデルであってもよい。本実施形態では、説明の簡略化のために、シングルラベル分類を実現する学習モデル12Maについて説明する。
図14に示す学習モデル12Maは、波形データが入力される入力層と、入力された波形データから特徴量を抽出する中間層と、中間層の演算結果を基に波形データ中の計測値が正常値であるか異常値であるかを示す情報を出力する出力層とを有する。入力層は、波形データの計測値が順次入力される入力ノードを有する。中間層は、各種の関数及び閾値等を用いて、入力層を介して入力されたデータ(計測値)から出力値を算出する。出力層は、正常及び異常のそれぞれに対応付けられた2つの出力ノードを有しており、各出力ノードから、入力された計測値が正常値であると判別すべき確率(確信度)、及び異常値であると判別すべき確率(確信度)を出力する。出力層の各出力ノードからの出力値は、例えば0~1の値であり、各出力ノードから出力された確率の合計が1.0(100%)となる。上述した構成により、本実施形態の学習モデル12Maは、計測データが入力された場合に、各計測値が正常値であるか異常値であるかを示す出力値を出力する。なお、学習モデル12Maがマルチラベル分類を実現するモデルである場合、出力層は、予め設定された複数種類の異常(ラベル)に対応付けられた複数の出力ノードを有し、各出力ノードから、対応付けられた種類の異常が発生していると判別すべき確率(確信度)を出力するように構成することができる。例えば、学習モデル12Maを、波形データの各計測値に対して、検査対象に生じた亀裂、劣化、欠損、異物の混入等、異常の発生原因となる要素(ラベル)毎に判別確率を出力するように構成することができる。この場合、学習モデル12Maに各要素に対応付けられた複数の出力ノードを設け、各出力ノードから、各要素による異常が発生していると判別すべき確率(確信度)を出力するように構成することができる。
本実施形態の情報処理装置10は、上述した学習モデル12Maにおいて、各出力ノードからの出力値のうちで最大の出力値(確信度)を出力した出力ノードを特定し、特定した出力ノードが正常値に対応付けられているか、又は異常値に対応付けられているかに応じて、入力された計測値が正常値であるか異常値であるかを判別する。
本実施形態の学習モデル12Maは、訓練用の波形データと、波形データ中の各計測値に対して、異常値であると判別すべき確信度を示すデータがラベリングされた正解ラベルデータとを含む訓練データを用いて未学習の学習モデルを機械学習させることにより生成できる。よって、このような学習モデル12Maにおいても、実施形態1~4に示すようなアノテーションによってアノテーションデータの生成が可能である。学習モデル12Maは、訓練用の波形データが入力された場合に、訓練用の正解ラベルデータを出力するように学習する。学習処理の内容は、上述の各実施形態における学習モデル12Mと同様である。具体的には、学習処理において学習モデル12Maは、入力された波形データに基づいて中間層での演算を行い、波形データ中の異常値を検出した検出結果を取得する。学習モデル12Maは、波形データに対して、異常値に分類された各計測値に、異常値に分類すべき確信度に応じた値がラベリングされたラベルデータを出力として取得する。そして学習モデル12Maは、取得した検出結果(ラベルデータ)を、正解ラベルデータと比較し、両者が近似するように、中間層での演算処理に用いるパラメータを最適化する。これにより、波形データが入力された場合に、波形データ中の異常値を検出し、検出した異常値に対して、異常に分類すべき確信度が割り当てられたラベルデータを出力する学習モデル12Maが得られる。
図15は実施形態5の訓練DB12bの説明図である。本実施形態の訓練DB12bは、学習モデル12Maの学習処理に用いる訓練データを記憶する。学習モデル12Maの訓練データは、訓練用の入力データに使用する波形データと、正解ラベルデータを示すアノテーションデータとを含む。訓練用の入力データに用いる波形データは、例えばファイル名が付けられて波形DB(図示せず)に記憶されている。情報処理装置10は、波形DBに記憶されている波形データに対してアノテーション処理を実行してアノテーションデータを生成する。情報処理装置10は、生成したアノテーションデータを、入力データの情報に対応付けて訓練DB12bに記憶する。
図15に示す訓練DB12bでは、アノテーションデータ列は、時間情報列及びレベル列等を含み、訓練用の波形データにおける時刻又は経過時間を示す時間情報に対応付けて、各時間に割り当てられたレベルを記憶する。なお、学習モデル12Maがマルチラベル分類を実現するモデルである場合、訓練DB12bはラベル列を有し、時間情報に対応付けて検知対象の不具合の種類を示すラベルと、各ラベルに応じたレベルとが記憶される。
以下に、図15に示すようなアノテーションデータを生成するアノテーション処理について説明する。図16はアノテーションの操作画面例を示す模式図である。本実施形態の情報処理装置10は、図4に示す訓練データの生成処理と同様の処理を実行することにより、アノテーション対象の波形データに対するアノテーションを行い、アノテーションデータを含む訓練データを生成する。本実施形態の情報処理装置10では、図4中のステップS11において、制御部11は、アノテーション対象の波形データを波形DBから読み出し、読み出した波形データを、図16に示すような操作画面によって表示する。
図16に示す画面は、図5A及び図5Bに示す画面と同様の構成を有し、表示されるアノテーション対象のデータが、画像データの代わりに波形データである。なお、図16に示す画面においても、図9に示すように、マウスの右クリック又はキーボードのアプリケーションキー等の操作が行われた場合にレベル選択パレット15eが表示され、レベル選択パレット15eを介して任意のレベルを選択できる構成でもよい。図16に示す画面は、アノテーション対象の波形データの表示箇所を変更するためのインジケータ15gが設けられており、作業者は、インジケータ15gを操作することによって、アノテーション対象の波形データの表示箇所を順次移動させることができる。よって、作業者は、インジケータ15gによって、表示される波形データを移動させつつ、特定領域(ここでは異常値の領域)に分類すべき領域に対して、確信度(自信度)に応じたレベルを割り当てていく。なお、作業者は、カーソル15dを用いて横軸方向にドラッグ等の操作を行うことによって、選択したレベルを割り当てる領域の指定を行うことができる。
上述した処理により、本実施形態では、アノテーション対象の波形データに対するアノテーションを行うことができる。具体的には、波形データ中の特定領域に対して、特定領域に分類すべき確信度に応じたレベルを割り当てるアノテーションが可能となる。また、本実施形態の情報処理装置10は、上述したように生成したアノテーションデータを用いて図6に示す処理を実行することにより、学習モデル12Maを生成することができる。更に、本実施形態の情報処理装置10は、学習モデル12Maを用いて図7に示す処理を実行することにより、検査対象の波形データに異常値が含まれるか否かを判定できる。
本実施形態の学習モデル12Maに入力される時系列データは波形データに限定されず、音声データ又はテキストデータ等であってもよい。例えば学習モデルが、テキストデータが入力された場合に、テキストデータに記載された内容から特定される感情を出力するモデルである場合、アノテーション対象のテキストデータにおいて、複数の感情のそれぞれに分類すべき領域に対して、各感情(各ラベル)と、各感情に分類すべきレベルとを対応付けるアノテーションの実行が可能となる。
本実施形態では、上述した各実施形態と同様の効果が得られる。また本実施形態では、画像データ以外のデータに対してもアノテーションを行うことができ、アノテーション対象のデータ中の特定領域に分類すべき領域に対して、確信度(レベル)が割り当てられるアノテーションを実現できる。本実施形態の構成は実施形態1~4の情報処理装置10にも適用でき、実施形態1~4の情報処理装置10に適用した場合であっても同様の効果が得られる。
今回開示された実施の形態はすべての点で例示であって、制限的なものでは無いと考えられるべきである。本発明の範囲は、上記した意味では無く、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
10 情報処理装置
11 制御部
12 記憶部
13 通信部
12a 画像DB
12b 訓練DB
12M 学習モデル
11 制御部
12 記憶部
13 通信部
12a 画像DB
12b 訓練DB
12M 学習モデル
Claims (15)
- アノテーション対象のデータを取得し、
前記データに対して、アノテーションの信頼度に関する複数のレベルのそれぞれに応じた領域を受け付け、
前記レベルと、前記レベル毎に受け付けた領域とを対応付けて記憶部に記憶する
処理をコンピュータに実行させるプログラム。 - 前記データに対する分類対象のラベル毎に、前記複数のレベルのそれぞれに応じた領域を受け付け、
前記ラベル毎に、前記レベルと、前記レベル毎に受け付けた領域とを前記記憶部に記憶する
処理を前記コンピュータに実行させる請求項1に記載のプログラム。 - 前記複数のレベルを選択可能に出力し、
前記複数のレベルのいずれかに対する選択を受け付け、
選択されたレベルに対応する前記領域を受け付ける
処理を前記コンピュータに実行させる請求項1又は2に記載のプログラム。 - 前記データに対して受け付けた前記レベルに応じた領域を、前記レベルに応じた態様で表示する
処理を前記コンピュータに実行させる請求項1から3までのいずれかひとつに記載のプログラム。 - 複数の作業者による前記データに対する前記レベルに応じた領域を複数パターン受け付け、
受け付けた複数パターンの領域に基づいて、前記レベルに応じた領域を特定し、
前記レベルと、特定した領域とを対応付けて前記記憶部に記憶する
処理を前記コンピュータに実行させる請求項1から4までのいずれかひとつに記載のプログラム。 - 複数の作業者による前記データに対する前記レベルに応じた領域を複数パターン受け付け、
受け付けた複数パターンのいずれかに対する選択を受け付け、
選択されたパターンの前記レベルに応じた領域に対して、各レベルに応じた領域の変更指示を受け付け、
前記レベルと、変更指示された領域とを対応付けて前記記憶部に記憶する
処理を前記コンピュータに実行させる請求項1から5までのいずれかひとつに記載のプログラム。 - 前記複数のレベルのそれぞれに対するレベル値の入力を受け付ける
処理を前記コンピュータに実行させる請求項1から6までのいずれかひとつに記載のプログラム。 - アノテーション対象のデータを取得する取得部と、
前記データに対して、アノテーションの信頼度に関する複数のレベルのそれぞれに応じた領域を受け付ける受付部と、
前記レベルと、前記レベル毎に受け付けた領域とを対応付けて記憶部に記憶する記憶処理部と
を備える情報処理装置。 - アノテーション対象のデータを取得し、
前記データに対して、アノテーションの信頼度に関する複数のレベルのそれぞれに応じた領域を受け付け、
前記レベルと、前記レベル毎に受け付けた領域とを対応付けて記憶部に記憶する
処理をコンピュータが実行する情報処理方法。 - データに対する分類対象のラベル毎に、複数のレベルと、前記複数のレベルのそれぞれに応じた領域とを含む訓練データを取得し、
取得した訓練データを用いて、データが入力された場合に、前記データ内の領域に対するラベルと、前記ラベルに対する前記レベルに応じた分類情報とを出力する学習モデルを生成する
処理をコンピュータが実行する学習モデルの生成方法。 - 前記複数のレベルのいずれかのレベルと、前記いずれかのレベルに応じた領域とを含む訓練データを用いて、前記学習モデルを生成する
処理を前記コンピュータが実行する請求項10に記載の学習モデルの生成方法。 - 前記レベルに応じた分類情報の入力を受け付ける
処理を前記コンピュータが実行する請求項10又は11に記載の学習モデルの生成方法。 - データを取得し、
データが入力された場合に、前記データ内の領域に対するラベルと、前記ラベルに対する分類情報とを出力するように学習された学習モデルに、取得したデータを入力して、前記データ内の領域に対するラベルと、前記ラベルに対する分類情報とを出力する
処理をコンピュータに実行させるプログラム。 - 前記データ内の領域に対するラベルと、前記ラベルに対して、任意に設定された複数のレベルに応じた分類情報とを出力する
処理を前記コンピュータに実行させる請求項13に記載のプログラム。 - 前記データ内の領域を、前記ラベルに対する前記分類情報に応じた態様で表示する
処理を前記コンピュータに実行させる請求項13又は14に記載のプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021104247A JP2023003207A (ja) | 2021-06-23 | 2021-06-23 | プログラム、情報処理装置、情報処理方法及び学習モデルの生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021104247A JP2023003207A (ja) | 2021-06-23 | 2021-06-23 | プログラム、情報処理装置、情報処理方法及び学習モデルの生成方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023003207A true JP2023003207A (ja) | 2023-01-11 |
Family
ID=84816997
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021104247A Pending JP2023003207A (ja) | 2021-06-23 | 2021-06-23 | プログラム、情報処理装置、情報処理方法及び学習モデルの生成方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2023003207A (ja) |
-
2021
- 2021-06-23 JP JP2021104247A patent/JP2023003207A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2019109563A (ja) | データ生成装置、データ生成方法及びデータ生成プログラム | |
JP2021140739A (ja) | プログラム、学習済みモデルの生成方法、情報処理方法及び情報処理装置 | |
CN102365645A (zh) | 通过关联面部来组织数字图像 | |
JP2019036167A (ja) | 画像処理装置、画像処理方法 | |
WO2016081531A1 (en) | Automatic schema mismatch detection | |
CN108475427A (zh) | 对象扫描能力的实时检测 | |
CN114862832A (zh) | 缺陷检测模型的优化方法、装置、设备及存储介质 | |
CN111124863B (zh) | 智能设备性能测试方法、装置及智能设备 | |
CN113116377B (zh) | 超声成像导航方法、超声设备及存储介质 | |
JP7355299B2 (ja) | 学習用データセット生成システム、学習サーバ、及び学習用データセット生成プログラム | |
WO2023009206A1 (en) | Automatically generating one or more machine vision jobs based on region of interests (rois) of digital images | |
JP2019075078A (ja) | 工事現場画像判定装置及び工事現場画像判定プログラム | |
JP2023003207A (ja) | プログラム、情報処理装置、情報処理方法及び学習モデルの生成方法 | |
JP7321452B2 (ja) | プログラム、情報処理装置、情報処理方法及び学習済みモデルの生成方法 | |
CN115631374A (zh) | 控件操作方法、控件检测模型的训练方法、装置和设备 | |
EP4327333A1 (en) | Methods and systems for automated follow-up reading of medical image data | |
KR20220050014A (ko) | 영상 분석을 위한 사용자 인터페이스 | |
JP2019074774A (ja) | 工事現場画像判定装置及び工事現場画像判定プログラム | |
CN111862149A (zh) | 一种红外周扫预警系统的运动告警方法及系统 | |
TWI836394B (zh) | 醫療影像處理之方法、裝置及電腦程式 | |
JP2009527000A (ja) | 鳥インフルエンザウイルスの検出を含むデータ分析および特徴認識のための方法およびシステム | |
KR102317855B1 (ko) | 프로젝트 분석을 위한 사용자 인터페이스 | |
EP4016388A1 (en) | Automatic inspection using artificial intelligence models | |
CN115393846B (zh) | 一种血细胞识别方法、装置、设备及可读存储介质 | |
US20230162483A1 (en) | An electronic device and related method for object detection |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240405 |