(57)【要約】【課題】拡張により機械学習用の学習データを作成する際、無駄な学習データの増大を防止する。【解決手段】画像処理装置は、画像データから拡張対象を特定する特定部（１２）と、画像データの拡張対象を画像処理により拡張した拡張データを生成する拡張部（１３）と、クラス分類により拡張データのスコアを算出する算出部（１４）と、得られたスコアに応じて、拡張データを学習データとして使用するか否かを選択する選択部（１５）とを備える。【選択図】図１
2020166397.tif 000002
【特許請求の範囲】
【請求項１】
画像データから拡張対象を特定する特定部と、
前記画像データの前記拡張対象を画像処理により拡張した拡張データを生成する拡張部と、
クラス分類により前記拡張データのスコアを算出する算出部と、
得られたスコアに応じて、前記拡張データを学習データとして使用するか否かを選択する選択部と、
を備える画像処理装置。
【請求項２】
前記特定部は、前記画像データから拡張する領域を抽出し、
前記拡張部は、前記画像データのうち前記特定部が抽出した領域を拡張する
請求項１に記載の画像処理装置。
【請求項３】
前記拡張部は、前記領域の色又はテクスチャを変更する
請求項２に記載の画像処理装置。
【請求項４】
前記拡張部は、拡張対象を反転、回転又はリサイズする
請求項２に記載の画像処理装置。
【請求項５】
前記選択部は、複数の前記拡張データを前記スコアの降順又は昇順で並べたとき、上位又は下位の所定数の前記拡張データを選択する
請求項１乃至４のいずれか１に記載の画像処理装置。
【請求項６】
前記選択部は、複数の前記拡張データを前記スコアの降順又は昇順で並べたとき、スコアによって分類された各範囲から規定数の前記拡張データを選択する
請求項１乃至４のいずれか１に記載の画像処理装置。
【請求項７】
前記拡張部は、ユーザによって拡張条件が入力されると、当該拡張条件で前記画像データを処理する
請求項１乃至６のいずれか１に記載の画像処理装置。
【請求項８】
画像データから拡張対象を特定するステップと、
前記画像データの前記拡張対象を画像処理により拡張した拡張データを生成するステップと、
クラス分類により前記拡張データのスコアを算出するステップと、
得られたスコアに応じて、前記拡張データを学習データとして使用するか否かを選択するステップと、
を有する画像処理方法。
【請求項９】
請求項８に記載の画像処理方法をコンピュータに実行させる画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、機械学習の学習データを拡張する画像処理装置、画像処理方法、及びプログラムに関する。
【背景技術】
【０００２】
特許文献１には、機械学習で利用する教師データ（学習データ）を生成する画像処理装置について記載されている。機械学習では、学習データの特徴量空間における分布範囲が得られる結果に影響するため、多種多様な学習データを用いることが好ましい。ところが、多種多様な学習データを撮影取得等することは撮影の時間や手間等も必要であることから困難であり、特許文献１に記載されるように、多種多様な学習データを作成する方法が検討されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１８−１６３５５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本開示は、データ拡張により機械学習の学習データを追加する際、有効なデータを選択し、有効なデータのみ追加する画像処理装置、画像処理方法、及びプログラムを提供する。
【課題を解決するための手段】
【０００５】
本開示の画像処理装置は、画像データから拡張対象を特定する特定部と、画像データの拡張対象を画像処理により拡張した拡張データを生成する拡張部と、クラス分類により拡張データのスコアを算出する算出部と、得られたスコアに応じて、拡張データを学習データとして使用するか否かを選択する選択部とを備える。
【０００６】
これらの概括的かつ特定の態様は、システム、方法、及びコンピュータプログラム、並びに、それらの組み合わせにより、実現されてもよい。
【発明の効果】
【０００７】
本開示の画像処理装置、画像処理方法、及びプログラムによれば、データ拡張により機械学習用の学習データを作成する際、無駄な学習データの増大を防止することができる。
【図面の簡単な説明】
【０００８】
【図１】本開示に係る画像処理装置の構成を説明するブロック図である。
【図２】拡張の対象とする元画像データの一例である。
【図３】拡張の対象とするマスク領域を特定したマスク画像の一例である。
【図４Ａ】図２の画像データから生成された拡張データの一例である。
【図４Ｂ】図２の画像データから生成された拡張データの他の例である。
【図４Ｃ】図２の画像データから生成された拡張データの他の例である。
【図５】図４Ａの拡張データから算出される分類スコアの一例である。
【図６】画像処理方法の処理を説明するフローチャートである。
【図７】図６のフローチャートの選択処理を説明するフローチャートである。
【発明を実施するための形態】
【０００９】
［本開示の基礎となった知見]
近年、様々な分野に機械学習が普及している。機械学習では、学習データの特徴量空間における分布範囲がその結果を左右するため、多種多様な学習データが必要になる。ところが、画像撮影等により学習データを作成することは物理的な問題等から困難である。そのためデータオーギュメンテーション等のデータ拡張が利用されている。
【００１０】
ところが、データオーギュメンテーションでは、現実として想定し得ない画像データが生成される場合もあり得る。すなわち、データオーギュメンテーション等のデータ拡張の技術では、ランダムパラメータを用いるため、学習データとして、機械学習の精度には無関係なデータが作成される恐れがある。このように機械学習の精度に無関係なデータが作成されると、精度の向上が得られないばかりでなく、学習データの数の増加によって、処理容量が増大する。
【００１１】
本開示は、データ拡張により機械学習の学習データを追加する際に、拡張データから有効なデータを選択し、無駄な学習データの増大を防止することができる画像処理装置、画像処理方法及びプログラムを提供する。これにより、不要に多量の学習データを用いるのではなく、処理を効率化させることのできる学習データの利用を実現させることができる。
【００１２】
[実施形態]
以下に、図面を用いて本開示における実施の形態を、図面を適宜参照しながら説明する。ただし、詳細な説明において、従来技術および実質的に同一の構成に関する説明のうち不必要な部分は省略されることもある。これは、説明を簡単にするためである。また、以下の説明および添付の図面は、当業者が本開示を充分に理解できるよう開示されるのであって、特許請求の範囲の主題を限定することを意図されていない。
【００１３】
本開示に係る、画像処理装置、画像処理方法及びプログラムは、機械学習の学習データを拡張により生成するものである。以下では、画像処理装置は、人物検知のために利用する学習データを拡張する一例で説明する。したがって、以下の説明において、画像処理装置における画像処理の対象は、人物が含まれる画像データである。具体的には、人物が含まれる元画像データの一部について、人物のいずれかの部分のテクスチャを変更した拡張データを生成する例で説明する。
【００１４】
本開示において、「拡張」とは、画像の反転、回転、リサイズ、対象部分の色、テクスチャの変更等を意味する。人物の画像に関する反転、回転、リサイズには、人物の傾きの変更、人物の大きさの変更等がある。人物の大きさの変更には、通常の体格の人物を細め又は太目の体格に変更したり、背を高く又は低く変更したりすることが含まれる。人物の画像の色の変更とは、人物の肌の色の変更や、人物の衣服や持ち物の色の変更を含むものとする。
また、「テクスチャ」とは、画像の見た目の質感を変更することをいい、模様の変更も含むものとする。例えば、人物の画像に関するテクスチャの変更とは、衣服や人物の持ち物の素材、柄、模様等の変更を含むものとする。
【００１５】
〈画像処理装置〉
画像処理装置１は、図１に示すように、制御部１０、記憶部２０、通信インタフェース（Ｉ／Ｆ）２１、入力部２２及び出力部２３等を備える情報処理装置である。
【００１６】
制御部１０は、画像処理装置１全体の制御を司るコントローラである。例えば、制御部１０は、記憶部２０に記憶される画像処理プログラムＰを読み出して実行することにより、受付部１１、特定部１２、拡張部１３、算出部１４、選択部１５及び推定部１６としての処理を実現する。また、制御部１０は、ハードウェアとソフトウェアの協働により所定の機能を実現するものに限定されず、所定の機能を実現する専用に設計されたハードウェア回路でもよい。すなわち、制御部１０は、ＣＰＵ、ＭＰＵ、ＧＰＵ、ＦＰＧＡ、ＤＳＰ、ＡＳＩＣ等、種々のプロセッサで実現することができる。
【００１７】
記憶部２０は種々の情報を記録する記録媒体である。記憶部２０は、例えば、ＲＡＭ、ＲＯＭ、フラッシュメモリ、ＳＳＤ（Solid State Device）、ハードディスク、その他の記憶デバイス又はそれらを適宜組み合わせて実現される。記憶部２０には、制御部１０が実行する画像処理プログラムＰの他、画像処理のために取得された種々の情報等が格納される。例えば、記憶部２０は、画像処理で使用する条件データＤ１、元画像データＤ２、画像処理で使用された拡張データＤ３及び学習データＤ４を記憶する。
【００１８】
通信Ｉ／Ｆ２１は、外部の装置（図示せず）とのデータ通信を可能とするためのインタフェース回路（モジュール）である。入力部２２は、操作やデータの入力に利用される操作ボタン、キーボード、マウス、タッチパネル、マイクロフォン等の入力手段である。出力部２３は、処理結果やデータの出力に利用されるディスプレイ、スピーカ等の出力手段である。
【００１９】
なお、画像処理装置１は、複数の情報処理装置によって実現されてもよい。また、記憶部２０に記憶されるデータの一部は外部の記憶装置に記憶され、外部の記憶装置から読み出して使用する構成であってもよい。
【００２０】
条件データＤ１は、画像処理装置１においてデータ拡張の条件として入力されたデータであり、具体例については後述する。
【００２１】
元画像データＤ２は、画像処理装置１においてデータ拡張に利用される画像データである。例えば、図２に示すように、元画像データＤ２には、被写体として、人物が含まれる。
【００２２】
拡張データＤ３は、画像処理装置１において画像処理によって拡張されたデータであり、具体例については後述する。
【００２３】
学習データＤ４は、機械学習において教師データとなるデータである。画像処理装置１では、この学習データＤ４に、画像処理によって拡張された拡張データＤ３が追加される。
【００２４】
受付部１１は、画像処理、具体的には、画像データの拡張に利用される条件を受け付ける。また、受付部１１は、受け付けた条件を条件データＤ１として記憶部２０に記憶させる。
【００２５】
例えば、条件には、特定部１２における拡張の対象の特定方法を含むことができる。拡張対象の特定には、画像データのどのような領域を拡張するかを含むことができる。条件には、拡張部１３におけるデータの拡張方法を含むことができる。拡張方法としては、画像の反転、回転、リサイズ、テクスチャの変更等を含む。条件には、選択部１５における拡張データＤ３の選択方法を含むことができる。選択方法としては、学習データＤ４に求めるデータの精度を含む。
【００２６】
また、受付部１１は、拡張の対象となる元画像データを受け付け、記憶部２０に元画像データＤ２として記憶させる。例えば、受付部１１は、通信Ｉ／Ｆ２１を介して外部の装置（図示せず）から受信する画像データを元画像データとすることができる。なお、受付部１１が受け付ける画像データの数については限定されない。この場合、画像処理装置１は、複数の画像データを処理対象としてもよい。
【００２７】
特定部１２は、拡張対象の元画像データＤ２から、拡張の対象を特定する。ここでは、画像データのある領域について、テクスチャを変更した拡張データを生成する例で説明する。このような場合、特定部１２は、元画像データＤ２から拡張の対象の領域を抽出する。また、特定部１２は、特定結果を拡張部１３に出力する。領域の抽出方法については、既存の領域抽出技術を利用する。例えば、領域抽出技術の一例としては、セマンティックセグメンテーションがあげられる。また、特定部１２は、複数の領域抽出技術に対応し、条件データＤ１に応じて使用する領域抽出技術を選択可能であってもよい。
【００２８】
図３は、図２に示す元画像データＤ２から特定された拡張の対象の領域を示す一例である。図３に示す例では、図２の元画像データＤ２から人物が着用する下衣であるスカートの部分がマスク領域Ｍとして抽出されるマスク画像の一例で示すが、特定部１２が特定するマスク領域については限定されない。例えば、人物が着用する上衣であるＴシャツ等の部分がマスク領域として抽出されてもよい。
【００２９】
拡張部１３は、元画像データＤ２の拡張対象を画像処理により拡張した拡張データＤ３を生成する。具体的には、拡張部１３は、条件データＤ１に応じて、元画像データＤ２に対し、反転、回転、リサイズ、色の変更、テクスチャ変更等の処理を実行する。ここでは、特定部１２で特定されたマスク領域Ｍの色及びテクスチャを変更する例で説明する。拡張部１３は、例えば、ランダムパラメータを用いてランダムに選択された色又はテクスチャをマスク領域Ｍに追加する。データの拡張方法については、既存のデータ拡張技術を利用する。例えば、色やテクスチャを変更するデータ拡張技術の一例としては、アルファブレンディングがあげられる。
【００３０】
図４Ａ乃至図４Ｃは、図３で選択されたマスク領域Ｍについてランダムに色又はテクスチャが変更された拡張データＤ３の一例を示す。図４Ａは、マスク領域Ｍの部分の色が変更された例で、図４Ｂ及び図４Ｃは、マスク領域Ｍの模様が変更された例である。図４Ａ乃至図４Ｃでは、３パターンの拡張がされた例であるが、拡張部１３は、さらに多くのパターンの拡張データＤ３を生成することが可能であり、例えば、ランダムパラメータを使用して１万パターンの画像データを生成することができる。例えば、拡張部１３は、条件データＤ１で規定された数の拡張データＤ３を生成する。すなわち、ユーザは、拡張部１３に生成させる拡張データＤ３の数を自由に設定することができる。
【００３１】
このとき、条件データＤ１は、所定の条件で拡張データＤ３を生成すること、又は生成しないことを含んでもよい。具体的には、拡張データＤ３においてテクスチャを付与する際に黒色を含まないことを条件としたり、黒色を含むことを条件とすることができる。また、拡張データＤ３において所定テクスチャを多く含むことを条件としてもよい。具体的には、テクスチャを付与する際に黒色を含む拡張データＤ３を所定の割合（例えば、５０％）で生成するような条件とすることができる。
【００３２】
算出部１４は、拡張データＤ３についてクラス分類の分類スコアを算出する。具体的には、この算出部１４は、基準となる学習データによって学習済みのクラス分類器であって、拡張データＤ３の各クラスの分類スコアを算出する。この算出部１４には、既存の分類器を用いることができる。例えば、分類器の一例としては、ＶＧＧ１６やＩｎｃｅｐｔｉｏｎＶ３等を利用することができる。
【００３３】
なお、算出部１４は、入力画像の属性を統計的に網羅した画像群により学習済みであることが好ましい。具体的には、入力画像が「歩行者」の画像である場合、算出部１４は、多種多様な「人間」の画像により学習済みである必要がある。また、入力画像が「ニンジン」の画像である場合、算出部１４は、多種多様な「野菜」の画像により学習済みである必要がある。さらに、入力画像が「スポーツカー」の画像である場合、算出部１４は、多数の多種多様な「自動車」の画像により学習済みである必要がある。ここで、算出部１４は、拡張部１３で拡張した全ての拡張データＤ３に対して分類スコアを算出する。なお、仮に、算出部１４で学習に使用する学習データとして拡張データＤ３を追加前の学習データＤ４を使用する場合、拡張データＤ３を追加前の学習データＤ４に類似するデータのスコアが高くなり、最終的にスコアが高いものを選べば過学習、低いものを選んだ場合は全く不必要なデータを選択してしまう可能性がある。したがって、算出部１４が学習データとして拡張データＤ３を追加前の学習データＤ４を使用することは避けることが好ましい。具体的には、算出部で基準とする学習データは、あくまで自然画像であったり、上述したような例（「歩行者」と「人間」、「ニンジン」と「野菜」、「スポーツカー」と「自動車」等）の関係とする必要がある。
【００３４】
図５は、図４Ａの拡張データＤ３から求めた分類スコアの一例を示す。図４Ａの拡張データＤ３は、人物の元画像データＤ２から得られたものであるため、人物（'human'）のクラスの分類スコアとして「０．９０４３」と高い値が算出された。また、画像内の人物が着用する眼鏡（'glasses'）のクラスの分類スコア及びスカート（'skirt'）のクラスの分類スコアも高い値が算出された。一方、図５に表される他のクラスは、拡張データＤ３と関係のないクラスであるため、算出された分類スコアの値は、低いものとなっている。
【００３５】
選択部１５は、拡張部１３で生成された拡張データＤ３について、学習データＤ４として利用するデータを選択する。具体的には、選択部１５は、算出部１４で算出された分類スコア及び予め指定された条件に応じて、拡張データＤ３から学習データＤ４として利用するデータを選択する。また、選択部１５は、選択された拡張データＤ３を、算出部１４の算出結果とともに、学習データＤ４として記憶部２０に記憶させる。
【００３６】
《分類スコア》
選択部１５は、算出部１４で算出した分類スコアを用いて分類するが、分類スコアの利用の方法としては、複数考えられる。具体的には、算出部１４で算出した単一のクラスの分類スコアを用いる場合と、算出部１４で算出した複数のクラスの分類スコアから新たなスコアを算出して用いる場合が考えられる。また、単一のクラスの分類スコア、または、複数のクラスの分類スコアのいずれを用いるのかは、条件データＤ１において指定されている。
【００３７】
（１．１）単一のクラスの分類スコアのみを参照する場合
選択部１５は、一のクラスの分類スコアを用いて、拡張データＤ３を選択してもよい。この場合、選択部１５は、算出部１４で算出された各クラスの分類スコアのうち、条件データＤ１で指定されるクラスの分類スコアのみを利用する。
【００３８】
（１．２）複数のクラスの分類スコアを参照する場合
選択部１５は、複数のクラスの分類スコアを用いて、拡張データＤ３を選択してもよい。この場合、選択部１５は、算出部１４で算出された各クラスの分類スコアのうち、条件データＤ１で指定される複数のクラスの分類スコアを用いて新たなスコアを算出して利用する。例えば、選択部１５は、以下の式（１）に示すような重み付け加算によって得られた値を新たなスコアとして利用する。
【００３９】
'human_new'
＝  Ｗhuman ＊ 'human' ＋ Ｗglasses ＊ 'glasses' ＋ Ｗskirt ＊ 'skirt'
・・・（１）
ただし、
'human_new'：  選択部１５で算出する新たなスコア
'human'，'glasses'，'skirt'：  算出部１４で算出した分類スコア
Ｗhuman，Ｗglasses，Ｗskirt：  各分類スコアの重み値
とする。
【００４０】
式（１）は、新たに人物のスコアを算出する際に、それぞれ重み値で重み付けされた人物のスコア（'human'）、眼鏡のスコア（'glasses'）及びスカート（'skirt'）のスコアが加算された例である。
【００４１】
《選択方法》
選択部１５は、分類スコアを用いて拡張データＤ３を選択するが、選択の方法としては、複数考えられる。この選択方法は、どのような目的で学習データＤ４を増加させるかによって異なる。具体的には、レアな画像データのみを追加したい場合、よくある画像データのみを追加したい場合、ランダムに選択した画像データを追加した場合等が考えられる。どのような目的で学習データＤ４に拡張データＤ３を追加させるのかについては、条件データＤ１で指定されている。
【００４２】
（２．１）レアな画像データのみを追加する場合
例えば、学習データＤ４にレアな画像データを追加したい場合、分類スコアの低い画像データを追加することが考えられる。レアな画像とは、一般的にあまり想定されない状況の画像である。このような場合、選択部１５は、例えば、複数の拡張データＤ３を降順で並べ、下位となった所定割合（例えば、１５％）の拡張データＤ３を選択し、学習データＤ４に追加する。ここで利用する、所定の割合は、条件データＤ１で指定されている。また、ここでは拡張データＤ３を分類スコアの降順で並べる例で説明したが、昇順で処理しても同様である。
【００４３】
その他、選択部１５は、指定されたクラスのスコアが所定値以下となる拡張データＤ３を選択するようにしてもよい。この場合に選択する拡張データＤ３の数を予め決めておいてもよいし、全てを選択するようにしてもよい。この場合に利用するスコアや選択方法は、条件データＤ１で指定される。
【００４４】
（２．２）よくある画像データを追加する場合
例えば、学習データＤ４によくある画像データを追加したい場合、分類スコアの高い画像データを追加することが考えられる。よくある画像とは、一般的に珍しくなく、よく起こりうる状況の画像である。このような場合、選択部１５は、複数の拡張データＤ３を降順で並べ、上位となった所定割合（例えば、１５％）の拡張データＤ３を選択し、学習データＤ４に追加する。ここで利用する、所定の割合は、条件データＤ１で指定されている。また、ここでは拡張データＤ３を分類スコアの降順で並べる例で説明したが、昇順で処理しても同様である。
【００４５】
その他、選択部１５は、指定されたクラスのスコアが所定値以上となる拡張データＤ３を選択するようにしてもよい。この場合に選択する拡張データＤ３の数を予め決めておいてもよいし、全てを選択するようにしてもよい。この場合に利用するスコアや選択方法は、条件データＤ１で指定される。
【００４６】
（２．３）ランダムに選択して追加する場合
例えば、追加する画像データの分類スコアを限定せず、単に、学習データＤ４を増やすことを目的とする場合、ランダムで学習データＤ４に画像データを追加する。例えば、拡張部１３において１万枚の拡張データＤ３が生成された場合、選択部１５は、全ての拡張データＤ３を分類スコアの降順で並べ、例えば、上位０〜２０％の２０００枚からランダムに５００枚、上位２０〜４０％の２０００枚からランダムに４００枚、上位４０〜６０％の２０００枚からランダムに４００枚、上位６０〜８０％の２０００枚からランダムに３００枚、上位８０〜１００％の２０００枚からランダムに２００枚選択する。これにより、選択部１５は、様々なバリエーションの拡張データＤ３を少ない枚数で学習データＤ４に追加させることができる。この場合も、拡張データＤ３をスコアの昇順で並べても同様である。ランダムに拡張データを選択する場合の選択方法については、例えば、予め画像処理プログラムＰにおいて規定される。または、選択方法について、条件データＤ１によって指定可能としてもよい。
【００４７】
推定部１６は、選択部１５によって拡張データＤ３が追加された後の学習データＤ４を用いて、テストデータＤ５のクラス分類を実行する。また、推定部１６は、得られた分類スコアを所定の閾値以上と比較し、閾値以上である場合、希望の推定精度の学習データＤ４が得られたと判定し、所定の閾値以上でない場合、希望の推定精度の学習データＤ４は得られていないと判定する。例えば、推定部１６は、あるクラスの分類スコアと比較する閾値を設定し、このクラスについて得られた分類スコアと比較する。これにより、更新された学習データＤ４が希望の推定精度で処理を実行可能となったか否かを判定することができる。また、推定部１６によって希望の推定精度の学習データＤ４が得られていないと判定した場合、新たに拡張データＤ３を作成し、処理を繰り返すことができる。
【００４８】
このように、画像処理装置１は、学習データとして使用するための拡張データを生成した際、算出されたスコアに応じて選択された拡張データのみを学習データとして追加することができる。したがって、学習データの無駄な増大を防止することが可能となり、効率的な処理を実現させることができる。
【００４９】
〈画像処理方法〉
次に、図６及び図７に示すフローチャートを用いて、画像処理装置１で実行される画像処理方法について説明する。
【００５０】
画像処理装置１は、データの拡張に関する条件を受け付ける（Ｓ１）。条件は、データ拡張の対象や方法、生成する拡張データの数、拡張データに求める精度等の情報を含む。このとき、画像処理装置１は、受け付けた条件を条件データＤ１として記憶部２０に登録する。
また、画像処理装置１は、元画像データを受け付け、記憶部２０に登録する（Ｓ２）。
【００５１】
画像処理装置１は、記憶部２０から元画像データＤ２を読み出し、拡張の対象を特定する（Ｓ３）。例えば、画像処理装置１は、拡張対象の領域のマスク領域を特定する画像を生成する。
【００５２】
画像処理装置１は、拡張データＤ３を生成する（Ｓ４）。このとき、画像処理装置１は、ステップＳ１で条件として指定された所定数の拡張データＤ３を生成し、記憶部２０に記憶させる。
【００５３】
画像処理装置１は、ステップＳ４で生成した各拡張データＤ３について、分類スコアを算出する（Ｓ５）。また、画像処理装置１は、算出した分類スコアを各拡張データＤ３と関連付けて記憶部２０に記憶させる。
【００５４】
その後、画像処理装置１は、ステップＳ５で算出した分類スコアを参照して学習データＤ４に追加する拡張データＤ３を選択する（Ｓ６）。拡張データＤ３の選択処理については、図７に示すフローチャートを用いて後述する。
【００５５】
画像処理装置１は、ステップＳ６で選択した拡張データＤ３を学習データＤ４に追加する（Ｓ７）。
【００５６】
画像処理装置１は、ステップＳ７で拡張データＤ３が追加された新たな学習データＤ４で学習処理を実行する（Ｓ８）。
【００５７】
ステップＳ８で得られた精度が閾値以上でない場合（Ｓ９でＮＯ）、希望の学習データＤ４が得られなかったため、画像処理装置１は、ステップＳ１に戻り、ステップＳ１〜Ｓ９の処理を繰り返す。なお、同一の条件データＤ１及び元画像データＤ２を用いる場合、ステップＳ３に戻って処理を繰り返してもよい。
【００５８】
ステップＳ９で得られた精度が閾値以上の場合（Ｓ９でＮＯ）、画像処理装置１は、希望の学習データＤ４が得られたため、終了する。
【００５９】
《選択処理》
図７に示すように、図６のフローチャートのステップＳ６における選択処理では、画像処理装置１は、まず、複数のクラスの分類スコアを利用するか否かを判定する（Ｓ６１）。具体的には、画像処理装置１は、記憶部２０に記憶される条件データＤ１の条件を参照して判定する。
【００６０】
複数のクラスの分類スコアを利用する場合（Ｓ６１でＹＥＳ）、画像処理装置１は、複数のクラスの分類スコアを利用して、新たなスコアを算出する（Ｓ６２）。具体的には、画像処理装置１は、記憶部２０に記憶される条件データＤ１に含まれる算出方法で、新たなスコアを算出する。
【００６１】
一方、複数のクラスの分類スコアを利用しない場合（Ｓ６１でＮＯ）、画像処理装置１は、ステップＳ６３に進む。このとき、記憶部２０に記憶される条件データＤ１で指定される一のクラスの分類スコアが利用される。
【００６２】
画像処理装置１は、ステップＳ６２で算出した新たなスコア又は、記憶部２０に記憶される条件データＤ１で指定される一のクラスの分類スコアを用いて、記憶部２０に記憶される複数の拡張データＤ３をスコアの降順に並べる（Ｓ６３）。
【００６３】
条件データＤ１でレアな画像を学習データＤ４に追加することが指定されているとき（Ｓ６４でＹＥＳ）、画像処理装置１は、ステップＳ６３で降順に並べた下位所定割合の拡張データＤ３を選択する（Ｓ６５）。ここで、選択する所定の割合も、条件データＤ１で規定される。
【００６４】
レアな画像を学習データＤ４に追加することが指定されていないとき（Ｓ６４でＹＥＳ）、画像処理装置１は、条件データＤ１でよくある画像を学習データＤ４に追加することが指定されているか否かを判定する（Ｓ６６）。
【００６５】
条件データＤ１でよくある画像を学習データＤ４に追加することが指定されているとき（Ｓ６６でＹＥＳ）、ステップＳ６３で降順に並べた上位所定割合の拡張データＤ３を選択する（Ｓ６７）。ここで、選択する所定の割合も、条件データＤ１で規定される。
【００６６】
一方、条件データＤ１でよくある画像を学習データＤ４に追加することが指定されていないとき（Ｓ６６でＮＯ）、条件データＤ１で指定された方法で拡張データＤ３を選択する（Ｓ６８）。
【００６７】
いずれかの方法で拡張データＤ３が選択されると（Ｓ６５，Ｓ６７，Ｓ６８）、図６のフローチャートのステップＳ７の処理に進む。
【００６８】
このように、画像処理装置１は、学習データとして使用するための拡張データを生成した際、算出されたスコアに応じて選択された拡張データのみを学習データとして追加することができる。したがって、学習データの無駄な増大を防止することが可能となり、効率的な処理を実現させることができる。
【００６９】
[効果及び補足]
以上のように、本出願において開示する技術の例示として、上記実施形態を説明した。しかしながら、本開示における技術は、これに限定されず、適宜、変更、置き換え、付加、省略などを行った実施形態にも適用可能である。そこで、以下、他の実施形態を例示する。
【００７０】
《変形例》
（１）クラス分類の精度の向上
算出部１４を所望の画像データを用いて予め学習させることで、分類精度を向上させることができる。そのため、追加学習部を設け、多量な画像を保有する外部のデータベース等にアクセスして有効な画像データを取得し、取得した複数の画像データを利用して学習させるようにしてもよい。この場合、追加学習部は、指定された条件の画像データを複数外部の装置等から取得し、取得した画像データを学習データとして学習する。
【００７１】
（２）推定精度の判定
上述した画像処理装置１では、推定部１６は、選択部１５によって選択された拡張データＤ３を追加した学習データＤ４を用いてテストデータＤ５で推定したが、受付部１１で受け付けた元画像データＤ２を推定部１６で推定し、所定の閾値以上である場合に拡張部１３による拡張を実行するようにしてもよい。すなわち、元から条件を満たさない画像データを利用してデータ拡張を実行した場合、得られる拡張データＤ３について、学習データＤ４に要求する条件を満たさない可能性が高い。したがって、予め条件を満たす元画像データＤ２のみ使用することで、不要な処理の実行を防止することができる。具体的には、推定部１６は、元画像データＤ２についてクラス分類により各クラスの分類スコアを求め、所定のクラスについての分類スコアが予め定められる閾値以上である場合に、拡張部１３での処理を実行するようにしてもよい。これにより、不要な処理を削減することができ、効率的な学習データＤ４の追加を実現することができる。
【００７２】
《実施形態の概要》
（１）本開示の画像処理装置は、画像データから拡張対象を特定する特定部と、画像データの拡張対象を画像処理により拡張した拡張データを生成する拡張部と、クラス分類により拡張データのスコアを算出する算出部と、得られたスコアに応じて、拡張データを学習データとして使用するか否かを選択する選択部とを備える。
【００７３】
これにより、拡張されたデータを学習データとして使用する際に、スコアに応じて学習データとするか否かを判定するため、学習データの無駄な増大を防止することができる。
【００７４】
（２）（１）の画像処理装置において、特定部は、画像データから拡張する領域を抽出し、拡張部は、画像データのうち特定部が抽出した領域を拡張してもよい。
【００７５】
これにより、画像データの特定の領域を拡張させた学習データを作成することができる。
【００７６】
（３）（２）の画像処理装置において、拡張部は、領域の色又はテクスチャを変更してもよい。
【００７７】
これにより、領域の色やテクスチャのみを変更するのみで学習データのバリエーションを増やすことができる。
【００７８】
（４）（２）の画像処理装置において、拡張部は、拡張対象を反転、回転又はリサイズしてもよい。
【００７９】
これにより、対象を反転、回転リサイズするのみで学習データのバリエーションを増やすことができる。
【００８０】
（５）（１）の画像処理装置において、選択部は、複数の拡張データをスコアの降順又は昇順で並べたとき、上位又は下位の所定数の拡張データを選択してもよい。
【００８１】
これにより、希望の精度の学習をさせることができる。
【００８２】
（６）（１）の画像処理装置において、選択部は、複数の拡張データをスコアの降順又は昇順で並べたとき、スコアによって分類された各範囲から規定数の拡張データを選択してもよい。
【００８３】
これにより、希望の精度の学習をさせることができる。
【００８４】
（７）（１）の画像処理装置において、拡張部は、ユーザによって拡張条件が入力されると、当該拡張条件で画像データを処理してもよい。
【００８５】
これにより、指定された条件の拡張データを生成することが可能となり、希望のバリエーションのデータを生成することができる。
【００８６】
（８）本開示の画像処理方法は、画像データから拡張対象を特定するステップと、画像データの前記拡張対象を画像処理により拡張した拡張データを生成するステップと、クラス分類により前記拡張データのスコアを算出するステップと、得られたスコアに応じて、前記拡張データを学習データとして使用するか否かを選択するステップとを有する。
【００８７】
これにより、拡張されたデータを学習データとして使用する際に、スコアに応じて学習データとするか否かを判定するため、学習データの無駄な増大を防止することができる。
【００８８】
本開示の全請求項に記載の画像処理装置及び画像処理方法は、ハードウェア資源、例えば、プロセッサ、メモリ、及びプログラムとの協働などによって、実現される。
【産業上の利用可能性】
【００８９】
本開示の画像処理装置及び画像処理方法は、機械学習の学習データの拡張に有用である。
【符号の説明】
【００９０】
１  画像処理装置
１０  制御部
１１  受付部
１２  特定部
１３  拡張部
１４  算出部
１５  選択部
１６  推定部
２０  記憶部
２１  通信Ｉ／Ｆ
２２  入力部
２３  出力部
Ｄ１  条件データ
Ｄ２  元画像データ
Ｄ３  拡張データ
Ｄ４  学習データ
【図１】
2020166397.tif 000003
【図２】
2020166397.tif 000004
【図３】
2020166397.tif 000005
【図４Ａ】
2020166397.tif 000006
【図４Ｂ】
2020166397.tif 000007
【図４Ｃ】
2020166397.tif 000008
【図５】
2020166397.tif 000009
【図６】
2020166397.tif 000010
【図７】
2020166397.tif 000011