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

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

▶ 奥野 修二の特許一覧

<>
  • 特開-学習装置及び推論装置 図1
  • 特開-学習装置及び推論装置 図2
  • 特開-学習装置及び推論装置 図3
  • 特開-学習装置及び推論装置 図4
  • 特開-学習装置及び推論装置 図5
  • 特開-学習装置及び推論装置 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025015893
(43)【公開日】2025-01-31
(54)【発明の名称】学習装置及び推論装置
(51)【国際特許分類】
   G06T 1/40 20060101AFI20250124BHJP
   G06T 3/4053 20240101ALI20250124BHJP
   G06T 3/4046 20240101ALI20250124BHJP
【FI】
G06T1/40
G06T3/40 730
G06T3/40 725
【審査請求】有
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2023118774
(22)【出願日】2023-07-21
(11)【特許番号】
(45)【特許公報発行日】2023-09-19
(71)【出願人】
【識別番号】717001444
【氏名又は名称】奥野 修二
(74)【代理人】
【識別番号】100167818
【弁理士】
【氏名又は名称】蓑和田 登
(72)【発明者】
【氏名】奥野 修二
【テーマコード(参考)】
5B057
【Fターム(参考)】
5B057CA08
5B057CA12
5B057CA16
5B057CB08
5B057CB12
5B057CB16
5B057CE03
5B057CH20
5B057DC40
(57)【要約】
【課題】機械学習によるデータ処理において、元となる教師データの水増しを行って学習を行う際にも、より高品質のデータを準備して、機械学習モデルの学習効率の低下を確実に抑えることができる学習装置を提供する。
【解決手段】学習装置は、元となる教師データの入力を受け付ける入力部110と、元となる教師データに基づいて加工された加工後教師データを作成するデータ加工部113と、学習対象の機械学習モデル111を用いて、少なくとも加工後教師データを含む教師データに基づいて、学習対象の機械学習モデル111における設定値を学習する処理を実行するための学習処理実行部101と、設定値を記憶する記憶部12と、を備える。この構成により、学習装置では、機械学習によるデータ処理において、元となる教師データの水増しを行って学習を行う際にも、より高品質のデータを準備して、機械学習モデル111の学習効率の低下を抑えることができる。
【選択図】図2
【特許請求の範囲】
【請求項1】
教師データに基づいて機械学習モデルにおける設定値を学習する学習装置であって、
元となる教師データの入力を受け付ける入力部と、
前記元となる教師データに基づいて加工された加工後教師データを作成するデータ加工部と、
学習対象の機械学習モデルと、前記機械学習モデルを用いて、少なくとも前記加工後教師データを含む教師データに基づいて、前記学習対象の機械学習モデルにおける設定値を学習する処理を実行するための学習処理実行部と、
前記設定値を記憶する記憶部と、を備え、
前記データ加工部では、
前記加工後教師データの目標解像度を特定し、
前記元となる教師データに基づいて前記目標解像度を有する画像の所定倍の大きさの暫定基準画像を獲得し、
前記暫定基準画像に対する回転、移動又は変形を含む編集を受け付け、
編集実行後の前記暫定基準画像に対し、前記所定倍よりも高い倍率のサンプリングレートでサンプリングし、
当該サンプリング後の画像を、前記目標解像度を有する画像の大きさに変換したものを前記加工後教師データとする、ことを特徴とする学習装置。
【請求項2】
前記学習装置は、さらに、
前記元となる教師データの周囲を予め自動生成してより大きな教師データを作成するアウトペインティングモデルを有し、
前記データ加工部は、前記アウトペインティングモデルにより作成された教師データを、前記加工後教師データに変換する、ことを特徴とする請求項1記載の学習装置。
【請求項3】
前記データ加工部は、
編集実行後の前記暫定基準画像に対し、前記編集に応じてオーバーサンプルのレートを前記所定倍よりも高い倍率以上で決定し、
決定されたレートでオーバーサンプリングを行ない、
オーバーサンプリングにより得られた画像を、前記加工後教師データへ変換する、ことを特徴とする請求項1記載の学習装置。
【請求項4】
前記学習装置は、さらに、
前記元となる教師データの解像度が前記目標解像度の前記所定倍未満である場合、前記元となる教師データに基づいて前記所定倍の超解像画像を作成する超解像モデルを有し、
前記データ加工部においては、前記超解像モデルで作成された当該超解像画像を前記暫定基準画像とする、ことを特徴とする請求項1記載の学習装置。
【請求項5】
請求項1乃至4の何れか一項に記載の学習装置の学習処理実行部において前記設定値を学習された機械学習モデルの、少なくとも一部を損失関数として用いることを特徴とする学習装置。
【請求項6】
機械学習モデルを用いて対象データに対して所定の推論処理を実行する推論装置であって、
前記対象データの入力を受け付ける入力部と、
前記入力部から対象データが入力される機械学習モデルと、
推論処理を実行する機械学習モデルを用いて、対象データに対して所定の推論処理を実行する推論処理実行部と、を備え、
前記機械学習モデルは、請求項1乃至4の何れか一項に記載の学習装置の学習処理実行部において前記設定値を学習された機械学習モデルである、ことを特徴とする推論装置。
【請求項7】
コンピュータを請求項1~4の何れか1項に記載の学習装置として動作させる、ことを特徴とするコンピュータプログラム。
【請求項8】
コンピュータを請求項5に記載の学習装置として動作させる、ことを特徴とするコンピュータプログラム。
【請求項9】
コンピュータを請求項6に記載の推論装置として動作させる、ことを特徴とするコンピュータプログラム。
【請求項10】
教師データに基づいて機械学習モデルにおける設定値を学習する学習方法であって、
元となる教師データの入力を受け付ける入力ステップと、
前記元となる教師データに基づいて加工された加工後教師データを作成するデータ加工ステップと、
学習対象の機械学習モデルと、前記機械学習モデルを用いて、少なくとも前記加工後教師データを含む教師データに基づいて、前記学習対象の機械学習モデルにおける設定値を学習する処理を実行するための学習処理実行ステップと、
前記設定値を記憶する記憶ステップと、を含み、
前記データ加工ステップにおいては、
前記加工後教師データの目標解像度を特定し、
前記元となる教師データに基づいて前記目標解像度を有する画像の所定倍の大きさの暫定基準画像を獲得し、
前記暫定基準画像に対する回転、移動又は変形を含む編集を受け付け、
編集実行後の前記暫定基準画像に対し、前記所定倍よりも高い倍率のサンプリングレートでサンプリングし、
当該サンプリング後の画像を、前記目標解像度を有する画像の大きさに変換したものを前記加工後教師データとする、ことを特徴とする学習方法。
【請求項11】
機械学習モデルを用いて対象データに対して所定の推論処理を実行する推論方法であって、
前記対象データの入力を受け付ける入力ステップと、
前記入力ステップから対象データが入力される機械学習モデルと、
推論処理を実行する機械学習モデルを用いて、対象データに対して所定の推論処理を実行する推論処理実行ステップと、を含み、
前記機械学習モデルは、前記請求項10に記載の学習処理実行ステップにおいて前記設定値を学習された機械学習モデルである、ことを特徴とする推論方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、機械学習モデルを用いた学習装置及び推論装置に関し、特に、画像処理用の機械学習モデルを用いた学習装置及び推論装置に関する。
【背景技術】
【0002】
従来より、機械学習によるデータ処理方法で、コンピュータのプログラムに対して、教師データとなるデータセットを与えて、プログラムのパラメータを学習することで、任意のデータに対してデータ処理を行うことができる学習済みモデルを生成する方法が知られている。
【0003】
例えば、機械学習を用いた「入力画像(教師データ)→学習用プログラム→出力画像(教師データ)」という処理において、入力画像と出力画像の誤差が一番小さくなるように学習用プログラムのパラメータを計算して「学習済みモデル」を生成する。そして、この「学習済モデル」を用いることで、「入力画像(任意のデータ:例えば低解像度画像)→学習済みモデル→出力画像(推論データ:例えば高解像度画像)」という、入力画像から出力画像を推論することで出力画像を生成することができる。
【0004】
近年、機械学習のうちニューラルネットワークを用いた機械学習が多くの分野に適用されている。特に画像認識、音声認識の分野にて、ニューラルネットワークを多層構造で使用したディープラーニング(Deep Learning;深層学習) が高い認識精度を発揮している。多層化したディープラーニングでも、入力の特徴を抽出する畳み込み層及びプーリング層を複数回使用した畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)を用いた画像処理が行なわれている。
【0005】
そして、ニューラルネットワークを用いた画像処理としては、信号を高解像度化させる超解像装置(例えば、特許文献1参照)や疾患領域の違いを把握することを容易にして精度の高い診断支援を行う診断支援装置(例えば、特許文献2参照)などがある。また、デジタル画像に対する自由変形による劣化を回避したプログラム、画像処理方法及び画像処理装置も開示されている(例えば、特許文献3参照)。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2020-27557号公報
【特許文献2】特開2018-38789号公報
【特許文献3】特許第6570164号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
機械学習において、教師データの質と量は、そのまま機械学習モデルの性能に直結する。大量の高品質の学習用データセットを準備することは非常なる労力を有するため、少ない学習用データで、高い性能を得るために、学習データの水増し(Data Augmentation)が一般的に用いられている。
【0008】
例えば、少ない教師画像データから効率よく学習を行うために、拡大・縮小、回転、菱形・台形変形、シフト、カラーシフト、シャープネス・アンシャープネスなどの編集を教師用データに適用して、データ量の水増し(Data Augmentation)を行う。このうちの拡大・縮小、回転、菱形・台形変形、シフトは、小さい画像データをそのまま変形した場合にはボケやエイリアスを生じるので、データの水増しを行った場合は常に一定以上ボケやノイズが発生した水増しデータが新たに生成される。このため、従来のデータ水増しにおいては、画質のいい画像に含まれる微細な高周波データを切り捨てているので、このように画質の劣化した水増しデータを用いて学習すると、反って機械学習モデルの性能が悪化するという問題が生じる。
【0009】
そして、上記特許文献1乃至3においても少ない学習用データから高品質の学習用データを多量に準備するという内容に関しては開示されていない。
【0010】
本発明は、上記課題に鑑みてなされたものであり、機械学習によるデータ処理において、元となる教師データの水増しを行って学習を行う際にも、より高品質のデータを準備して、機械学習モデルの学習効率の低下を確実に抑えることができる学習装置を提供することを目的とする。また、この機械学習モデルを用いた推論装置を提供することをも目的とする。
【課題を解決するための手段】
【0011】
上記目的を達成するために本発明は、教師データに基づいて機械学習モデルにおける設定値を学習する学習装置であって、元となる教師データの入力を受け付ける入力部と、前記元となる教師データに基づいて加工された加工後教師データを作成するデータ加工部と、学習対象の機械学習モデルと、前記機械学習モデルを用いて、少なくとも前記加工後教師データを含む教師データに基づいて、前記学習対象の機械学習モデルにおける設定値を学習する処理を実行するための学習処理実行部と、前記設定値を記憶する記憶部と、を備え、前記データ加工部では、前記加工後教師データの目標解像度を特定し、前記元となる教師データに基づいて前記目標解像度を有する画像の所定倍の大きさの暫定基準画像を獲得し、前記暫定基準画像に対する回転、移動又は変形を含む編集を受け付け、編集実行後の前記暫定基準画像に対し、前記所定倍よりも高い倍率のサンプリングレートでサンプリングし、当該サンプリング後の画像を、前記目標解像度を有する画像の大きさに変換したものを前記加工後教師データとすることを特徴とするものである。
【0012】
この学習装置において、前記学習装置は、さらに、前記元となる教師データの周囲を予め自動生成してより大きな教師データを作成するアウトペインティングモデルを有し、前記データ加工部は、前記アウトペインティングモデルにより作成された教師データを、前記加工後教師データに変換することが好ましい。
【0013】
この学習装置において、前記データ加工部は、編集実行後の前記暫定基準画像に対し、前記編集に応じてオーバーサンプルのレートを前記所定倍よりも高い倍率以上で決定し、決定されたレートでオーバーサンプリングを行ない、オーバーサンプリングにより得られた画像を、前記加工後教師データへ変換することが好ましい。
【0014】
この学習装置において、前記学習装置は、さらに、前記元となる教師データの解像度が前記目標解像度の前記所定倍未満である場合、前記元となる教師データに基づいて前記所定倍の超解像画像を作成する超解像モデルを有し、前記データ加工部においては、前記超解像モデルで作成された当該超解像画像を前記暫定基準画像とすることが好ましい。
【0015】
また、上記目的を達成するために本発明は、上記学習装置の学習処理実行部において前記設定値を学習された機械学習モデルの、少なくとも一部を損失関数として用いることを特徴とする学習装置である。
【0016】
また、上記目的を達成するために本発明は、機械学習モデルを用いて対象データに対して所定の推論処理を実行する推論装置であって、前記対象データの入力を受け付ける入力部と、前記入力部から対象データが入力される機械学習モデルと、推論処理を実行する機械学習モデルを用いて、対象データに対して所定の推論処理を実行する推論処理実行部と、を備え、前記機械学習モデルは、上記学習装置の学習処理実行部において前記設定値を学習された機械学習モデルであることを特徴とするものである。
【0017】
また、本発明は、コンピュータを上記記載の学習装置又は推論装置として動作させることを特徴とするコンピュータプログラムである。
【0018】
また、上記目的を達成するために本発明は、教師データに基づいて機械学習モデルにおける設定値を学習する学習方法であって、元となる教師データの入力を受け付ける入力ステップと、前記元となる教師データに基づいて加工された加工後教師データを作成するデータ加工ステップと、学習対象の機械学習モデルと、前記機械学習モデルを用いて、少なくとも前記加工後教師データを含む教師データに基づいて、前記学習対象の機械学習モデルにおける設定値を学習する処理を実行するための学習処理実行ステップと、前記設定値を記憶する記憶ステップと、を含み、前記データ加工ステップにおいては、前記加工後教師データの目標解像度を特定し、前記元となる教師データに基づいて前記目標解像度を有する画像の所定倍の大きさの暫定基準画像を獲得し、前記暫定基準画像に対する回転、移動又は変形を含む編集を受け付け、編集実行後の前記暫定基準画像に対し、前記所定倍よりも高い倍率のサンプリングレートでサンプリングし、当該サンプリング後の画像を、前記目標解像度を有する画像の大きさに変換したものを前記加工後教師データとすることを特徴とするものである。
【0019】
また、上記目的を達成するために本発明は、機械学習モデルを用いて対象データに対して所定の推論処理を実行する推論方法であって、前記対象データの入力を受け付ける入力ステップと、前記入力ステップから対象データが入力される機械学習モデルと、推論処理を実行する機械学習モデルを用いて、対象データに対して所定の推論処理を実行する推論処理実行ステップと、を含み、前記機械学習モデルは、上記学習処理実行ステップにおいて前記設定値を学習された機械学習モデルであることを特徴とするものである。
【発明の効果】
【0020】
本発明に係る学習装置は、元となる教師データの入力を受け付ける入力部と、元となる教師データに基づいて加工された加工後教師データを作成するデータ加工部と、学習対象の機械学習モデルを用いて、少なくとも加工後教師データを含む教師データに基づいて、学習対象の機械学習モデルにおける設定値を学習する処理を実行するための学習処理実行部と、設定値を記憶する記憶部と、を備える。データ加工部では、(1)加工後教師データの目標解像度を特定し、(2)元となる教師データに基づいて目標解像度を有する画像の所定倍の大きさの暫定基準画像を獲得し、(3)暫定基準画像に対する回転、移動又は変形を含む編集を受け付け、(4)編集実行後の前記暫定基準画像に対し、所定倍よりも高い倍率のサンプリングレートでサンプリングし、(5)サンプリング後の画像を、目標解像度を有する画像の大きさに変換したものを加工後教師データとする。この構成により、本願発明に係る学習装置では、機械学習によるデータ処理において、元となる教師データの水増しを行って学習を行う際にも、より高品質のデータを準備して、機械学習モデルの学習効率の低下を確実に抑えることができる。
【図面の簡単な説明】
【0021】
図1】本発明の実施の形態に係る画像処理装置の構成を示すブロック図である。
図2】同上画像処理装置の機能ブロック図である。
図3】同上画像処理装置の学習動作時の加工後教師データの作成例を示す図である。
図4】同上画像処理装置の学習動作時のデータ水増しを説明する図である。
図5】同上画像処理装置における学習動作時に与えられるデータセットのイメージ図である。
図6】(a)同上画像処理装置の変形例において学習動作時に用いる損失関数を説明する図、(b)同変形例において生成される合成画像の例を示す図である。
【発明を実施するための形態】
【0022】
(実施の形態)
本発明の実施の形態に係る画像処理装置について図1乃至図5を参照して説明する。本実施の形態において、画像処理装置は、所定の学習用画像データに基づいて機械学習モデルにおける設定値を学習する学習装置、又は機械学習モデルを用いて対象画像データに対して所定の推論処理を実行する推論装置の少なくとも一方としての機能を発揮する。
【0023】
最初に、画像処理装置1に備わる各処理部に関して図1を参照しながら説明する。画像処理装置1は、図1に示すように、制御部10、画像処理部11、記憶部12、通信部13、表示部14、操作部15及び読取部16を備える。なお、画像処理装置1及び画像処理装置1における動作について以下では、1台のサーバコンピュータとして説明するが、複数のコンピュータによって処理を分散するようにして構成されてもよい。
【0024】
制御部10は、CPUなどのプロセッサやメモリを用いて、装置の構成部を制御して各種機能を実現する。画像処理部11は、GPU又は専用回路等のプロセッサ及びメモリを用い、制御部10からの制御指示に応じて画像処理を実行する。なお、制御部10及び画像処理部11は、CPU,GPU等のプロセッサ、メモリ、さらには記憶部12及び通信部13を集積した1つのハードウェア(SoC:System on a Chip)として構成されていてもよい。
【0025】
記憶部12は、ハードディスクやフラッシュメモリを用いる。記憶部12には、画像処理プログラム1P、機械学習モデル(例えばCNN)としての機能を発揮させる機械学習ライブラリ1L、超解像モデル1M、及びアウトペインティングモデル1Nが記憶されている。また、記憶部12には、機械学習モデルを定義する定義データ、学習済み機械学習モデルにおける設定値等を含むパラメータなどが記憶される。画像処理部11は、記憶部12に記憶されている超解像モデル1Mに基づいて、解像度を元の解像度よりも高くしたデジタル画像を出力する。なお、アウトペインティングモデル1Nや超解像モデル1Mは機械学習モデルによって生成できる。
【0026】
通信部13は、インターネット等の通信網への通信接続を実現する通信モジュールである。通信部13は、ネットワークカード、無線通信デバイス又はキャリア通信用モジュールを用いる。
【0027】
表示部14は、液晶パネル又は有機EL(Electro Luminescence)ディプレイ等を用いる。表示部14は、制御部10の指示による画像処理部11での処理によって画像を表示することが可能である。
【0028】
操作部15は、キーボード又はマウス等のユーザインタフェースを含む。筐体に設けられた物理的ボタンを用いてもよい。操作部15はまた表示部14に表示されるソフトウェアボタン等を用いてもよい。操作部15は、ユーザによる操作情報を制御部10へ通知する。具体的には、操作部15は、元となる教師データの編集時において、ユーザから教師データに対する変形、例えば拡大・縮小、回転、左右方向へのシフト、輝度・彩度、コントラストの変更など、様々な変形方法の設定を受け付ける。
【0029】
読取部16は、例えばディスクドライブを用い、光ディスク等を用いた記録媒体2に記憶してある画像処理プログラム2P、機械学習ライブラリ2L、超解像モデル2М、及びアウトペインティングモデル2Nを読み取ることが可能である。記憶部12に記憶してある画像処理プログラム1P、機械学習ライブラリ1L、超解像モデル1M、及びアウトペインティングモデル1Nは、記録媒体2から読取部16が読み取った画像処理プログラム2P、機械学習ライブラリ2L、超解像モデル2M、アウトペインティングモデル2Nを制御部10が記憶部12に複製したものであってもよい。
【0030】
次に、画像処理装置1の画像処理の機能に関して図2を参照しながら説明する。画像処理装置1の制御部10は学習処理実行部101及び推論処理実行部102を備える。
学習処理実行部101は、記憶部12に記憶してある機械学習ライブラリ1L、定義データ、パラメータ情報に基づき機械学習モデル(機械学習エンジン)として機能する。すなわち、学習処理実行部101は、学習対象の機械学習モデルを用いて、学習用画像データ又は学習用テキストデータに基づいて、学習対象の機械学習モデルにおける設定値(パラメータ等)を学習する処理を実行する。この設定値の学習は、例えばパラメータをミニバッチ勾配降下法で更新するなど入力データと解答データとの差分を最小化する処理である。また、学習処理実行部101は、操作部15を用いた操作に基づき、入力データである画像データを編集する画像処理実行部としての機能をも発揮する。
【0031】
推論処理実行部102は、記憶部12に記憶してある画像処理プログラム1Pに基づき、画像処理を行う。すなわち、推論処理実行部102は、機械学習モデルを用いて、入力される対象データ(対象画像データや推論対象テキストデータ)に対して所定の推論処理を実行する。また、推論処理実行部102は、ユーザの操作部15を用いた操作に基づき、入力データである画像データを入力部110に入力する画像処理実行部としての機能をも発揮する。
【0032】
画像処理部11は、入力部110、機械学習モデル111、機械学習モデル111としての生成器111aと判別器111b、出力部112、加工部113及び切出部114を備える。例えば、CNNなどの機械学習モデルは与えられた教師データを用いて学習し、生成器111aとして機能する定義データ及びパラメータ情報、判別器111bとして機能する定義データ及びパラメータ情報が記憶部12に記憶されてモデルが作成される。
【0033】
機械学習モデルの学習例としては、典型的には、分類タスク(入力側の教師画像データ→機械学習モデル→出力ラベル⇔教師ラベル)、画像変換(入力側の教師画像データ→機械学習モデル→出力画像データ⇔出力側教師画像データ)、画像生成(入力側の教師テキストデータ→機械学習モデル→出力画像データ⇔出力側教師画像データ)が挙げられる。なお、ここでの→はデータの流れ、⇔は学習時の比較を示す。
【0034】
入力部110は、教師用(学習用)の画像データや分類ラベル、テキストデータ、又は推論対象となる対象画像データや推論対象テキストデータ(図2の12a参照)の入力を受け付ける。また、これらのデータは記憶部12に記録・保持される。
【0035】
データ加工部113は、教師データの水増し(Data Augmentation)のため加工処理を行う。具体的には、データ加工部113は、(1)加工後(水増し後)教師データの目標解像度を特定し、(2)入力部110に入力された元となる教師データに基づいて目標解像度を有する画像の所定倍の大きさの暫定基準画像を獲得し、(3)暫定基準画像に対する回転、移動又は変形を含む編集を受け付け、(4)編集実行後の暫定基準画像に対し、前記所定倍よりも高い倍率のサンプリングレートでサンプリングし、(5)サンプリング後の画像を、目標解像度を有する画像の大きさに変換したものを加工後教師データとする、処理を行う。
【0036】
例えば、図3に示すように(1)元となる教師データ301に対する加工後教師データ304の目標解像度(ここでは等倍)を特定する。次に、(2)元となる教師データ301(ここでは112*112ピクセル)に対して、目標解像度の所定倍(ここでは2倍、すなわち224*224ピクセル)に暫定基準画像302が準備される。なお、暫定基準画像302の獲得には、例えば、記憶部12に予め記憶されている画像データや、画像処理部11が超解像モデル1Mに基づいて、元となる教師データの解像度をより高くした超解像画像を生成して一時的に記憶部12などに記憶する。
【0037】
次に、(3)暫定基準画像302に対する編集(ここでは回転)を受け付け、(4)編集後の暫定基準画像303を、当該所定倍(ここでは2倍)よりも高いサンプリングレートの設定(ここでは3倍)でサンプリングする。そして、(5)サンプリング後の画像を、目標解像度へ縮小処理して(ここでは回転により領域よりはみ出した画像を切り取り、且つ1/3倍にして)目標解像度を有する画像の大きさに変換したものを加工後教師データ304とする。
【0038】
このように、目標となる画像(目標解像度の画像)の大きさよりも大きい(例えば2倍の)画像(暫定基準画像)を用意して、その画像に対して高いサンプリングレートで回転や移動を行ってから、目標のサイズに縮小すると画像が劣化しない。
【0039】
本実施の形態の説明において、目標解像度は元の教師データ301から加工後教師データ304への拡大の倍率であり、制御部10は初期的に、加工前のデジタル画像(オリジナル)と同一の解像度を目標解像度(等倍)として設定しても良い。また、編集にデータの拡大・縮小が含まれている場合、拡大・縮小後の画像データの解像度を目標解像度(1以上、又は1以下)として設定してもよい。さらに、編集に回転・変形が含まれている場合、回転する角度に合わせてサンプリングレートを設定しても良い。
【0040】
目標解像度は必ず加工後の解像度に丁度合わせる必要はなく、近い値を設定してもよい。その場合、解像度が足りない分は劣化する。例えば、加工後教師データが大体元となる教師データの大きさに近ければ、目標解像度が等倍、暫定基準画像が2倍、オーバーサンプリングが3倍である。例えば、加工後教師データを元となる教師データより若干大きくする程度であれば、目標解像度を1.5倍、暫定基準画像が3倍、オーバーサンプリングが5倍である。この数値は画像ごとに設定されてもよいし、ピクセルごとに設定されてもよい。
【0041】
なお、データ加工部113は、 編集実行後の暫定基準画像に対し、編集に応じてオーバーサンプルのレートを所定倍よりも高い倍率以上で決定し、決定されたレートでオーバーサンプリングを行ない、オーバーサンプリングにより得られた画像を、加工後教師データへ変換してもよい。また、これらのデータ加工のための設定は記憶部12に記録・保持されてもよい。
【0042】
図3の例では、2倍の画像を用意して1/2に縮小することになるが、編集として回転が行われる場合は、縦横方向と斜め方向でサンプリングレートが異なるため、縦横方向ではサンプリングレートに対してサンプル数が減り、斜め方向ではサンプリングレートに対してサンプル数が超過する。このため、特に斜め方向ではエイリアスノイズが発生する。このノイズを抑制するためには、サンプリングレートを上げた状態で回転させた上で、目標のサイズに縮小すると、このノイズが発生しない。例を挙げると、目標のサイズの2倍の画像を、さらに1.5倍の大きさに拡大しつつ回転を行い、1/3に縮小する(3倍オーバーサンプル)、というような処理である。
【0043】
また、画像変形の場合は画素ごとに大きくなったり小さくなったりするので、各々の画素が目標解像度よりも大きい暫定基準画像を持ち、且つ、それよりも高いサンプリングレートを持つように調整しても良い。各々の画素ごとに考えなくても、全ての画素が条件を満たすように一律で、十分に高い解像度の暫定基準画像と、十分に高いサンプリングレートを設定しても良い。例えば、拡大される部分に対応できるように高い解像度の暫定基準画像と、縮小される部分や回転する部分に対応できるように高いサンプリングレートを設定するなどである。
【0044】
ここで、編集に関して、画像処理装置1の制御部10は、記憶部12に記憶している画像処理プログラム1Pに基づき、画像データに対する編集を行う。特に制御部10は、画像処理プログラム1Pに基づいて操作部15を介してユーザの操作を受け付け、画像データへの編集を実現する。なお、ここでの編集とは、学習用データ水増しのために、操作部15を介して暫定基準画像に対する拡大・縮小、回転、菱形・台形変形、シフト、カラーシフト、シャープネス・アンシャープネスなどの加工を施すことである。
【0045】
次に、データの水増し加工に関して、図4及び図5を参照しながら説明する。図4に示すように、データ加工部113が元となる教師データ401に様々な加工を施すことで、学習時に使用される見かけ上の教師データ数を水増しした加工後教師データ402が生成される。この際、本実施の形態に係るデータ加工部113を用いることで、加工後教師データ402が劣化することが効果的に抑制され、水増し後の教師データの量と質を向上し、その結果、学習モデルの性能を飛躍的に向上できる。
【0046】
また、例えば、図5(II)に示すように、従来においては元となる教師データを水増しするために直接編集し、画像は同じ大きさのままでも回転や小数画素分の移動(シフト)を行うと水増し後の入力側教師画像データ503及び出力側教師画像データ504は劣化する。これは、画像には境界面など、急に変化して波形的な性質を示さない部分があるので、画像変形のような波形的な処理を行うと、その部分の信号が失われるためである。この結果、教師データを水増ししたとしても、入力側教師画像データ503及び出力側教師画像データ504自体が劣化しているので学習モデルの性能が悪くなってしまう。
【0047】
一方、図5(I)に示すように、本実施の形態に係るデータ加工部113を用いると、水増し後の入力側教師画像データ501及び出力側教師画像データ502の品質が維持され、機械学習モデルの高い性能を実現できる。
【0048】
一方、画像処理装置1が推論装置として機能する場合、機械学習モデルを用いて対象データに対して所定の推論処理を実行する推論装置であって、対象データの入力を受け付ける入力部110と、入力部110から対象データが入力される機械学習モデル111と、推論処理を実行する機械学習モデル111を用いて、対象データに対して所定の推論処理を実行する推論処理実行部102と、を備え、機械学習モデル111は上述した学習装置の学習処理実行部101において設定値を学習された機械学習モデル111である。
【0049】
機械学習モデル111は、学習済みモデル使用時にはそれぞれ既に学習済のパラメータに基づいてデータの最適化処理(例えば高解像度化、クラス分けやノイズ除去、画像生成)を行う。推論時の機械学習モデル111がCNNとなる場合には、定義データにより定義される複数段の畳み込み層及びプーリング層と、全結合層とを含んでもよく、画像データの特徴量を取り出し、取り出された特徴量に基づいて画像加工処理を行う。
【0050】
具体的には、機械学習モデル111の推論時においては、機械学習モデル111に推論対象画像データや推論対象テキストデータを入力し、出力部112からの出力として推論後画像データを得ることができる。ここでの画像データは、YCbCrやRGBを用いて表現される画像データである。また、出力は画像データに限られずクラス分けの場合は特定されたクラスを出力する。出力部112は、画像データや分類クラスを記憶部12に出力する。なお、出力データを画像処理部11において画像として描画し、表示部14へ出力してもよい。
【0051】
次に、本実施の形態に係る学習装置における画像データのアウトペインティングに関して説明する。従来、画像データの水増しは、基本的に同じサイズの画像データを増やすものなので、拡大縮小や回転を掛けた場合は、切出部114で画像をカットしたり、穴埋めしたりして元のサイズに戻す。従来の画像の水増し操作では、変形後に画像が回転や縮小して穴が開いた部分は近くの色で埋めるなど周辺画素の画素値を用いた演算処理によって、画像の不自然さを軽減して、画質の劣化を抑止していた。
【0052】
一方、本実施の形態に係る画像処理部11は、記憶部12に記憶されているアウトペインティングモデル1Nに基づいて、元となる教師データの周囲を予め自動生成してより大きな教師データを作成し、データ加工部113は、アウトペインティングモデル1Nにより作成された教師データを、加工後教師データに変換する。すなわち、従来の方法であれば加工後画像データに生じた穴は、近傍のデータで埋めたり、黒で埋めたりするが、その場合不自然な画像が生成されていたが、本実施の形態に係る画像処理装置1では、アウトペインティングモデル1Nを用いて、先に教師画像データの周りに自然に連続する画像を自動生成して大きくしておくことで、穴が生じないようにする。そして、これを上述のデータ加工部113の教師データの水増しの加工手法と併せて用いることで、より高品質の加工後教師データを獲得できるようになる。
【0053】
以上の説明のように、画像処理装置1が教師データに基づいて機械学習モデル111における設定値を学習する学習装置をして機能する場合、当該学習装置は、元となる教師データの入力を受け付ける入力部110と、元となる教師データに基づいて加工された加工後教師データを作成するデータ加工部113と、学習対象の機械学習モデル111を用いて、少なくとも加工後教師データを含む教師データに基づいて、学習対象の機械学習モデル111における設定値を学習する処理を実行するための学習処理実行部101と、設定値を記憶する記憶部12と、を備える。データ加工部113では、(1)加工後教師データの目標解像度を特定し、(2)元となる教師データに基づいて目標解像度を有する画像の所定倍の大きさの暫定基準画像を獲得し、(3)暫定基準画像に対する回転、移動又は変形を含む編集を受け付け、(4)編集実行後の暫定基準画像に対し、所定倍よりも高い倍率のサンプリングレートでサンプリングし、(5)サンプリング後の画像を、目標解像度を有する画像の大きさに変換したものを加工後教師データとする。この構成により、学習装置では、機械学習によるデータ処理において、元となる教師データの水増しを行って学習を行う際にも、より高品質のデータを準備して、機械学習モデルの学習効率の低下を確実に抑えることができる。
【0054】
すなわち、画像処理装置1が学習装置として機能する際、データ加工部113は、元となる教師データの水増しの際に、超解像などの充分に大きな暫定基準画像を用いて変形などを行い、かつ、大きな倍率でのオーバーサンプリングを用いた後に加工後教師データを得る。これにより、変形後の加工後教師データも好適な画質を保つことが可能になり、そのデータで学習した機械学習モデルの性能も向上させることができる。また、この機械学習モデルを用いることで画像処理装置1が推論装置として機能する際、より高精度な推論後画像データの生成や分類を行うことができる。
【0055】
(変形例)
本発明の実施の形態に係る画像処理装置1の変形例に関して図6を参照して説明する。本変形例では、学習処理実行部101により学習された機械学習モデル111を、損失関数として用い、当該損失関数は、例えばContent loss、Style lossである。例えば、図6(a)に示すように、構造を担保するコンテンツ画像601と、画風を担保するスタイル画像602の2つを入力にとり、前者の構造と後者の画風を併せ持つ合成画像を出力する仕組みであるCNNの一種であるstyle transferが知られている。
【0056】
このstyle transferでは、まず、左右の訓練済VGG(Visual Geometry Group)ネットワークにコンテンツ画像601とスタイル画像602をそれぞれ入力し、その途中の特徴マップから各画像らしさを表すベクトルを抜き出して損失関数603を定義する。そして、その損失を最小化する形で最適化を進めていくが、ここで使用される機械学習モデルの一種である訓練済みVGGについて、コンテンツ画像601とスタイル画像602を上記実施の形態のデータ加工部113で生成された劣化していない画像で学習していれば、最適化が完了した時点において、高周波成分の特徴を捉えた(解像度が高い)図6(b)に例示するようなコンテンツとスタイルを組み合わせた合成画像604の生成が期待できる。
【0057】
なお、本実施の形態に係る画像処理装置1のハードウェア構成の内、通信部13、表示部14、及び読取部16は必須ではない。通信部13については、例えば記憶部12に記憶される画像処理プログラム1P、及び機械学習ライブラリ1Lを外部サーバ装置から取得する場合に一旦使用された後は使用しない場合がある。読取部16も同様に、画像処理プログラム1P、機械学習ライブラリ1Lを記憶媒体から読み出して取得した後は使用されない可能性がある。そして通信部13及び読取部16は、USB等のシリアル通信を用いた同一のデバイスであってもよい。
【0058】
画像処理装置1がWebサーバとして、上述の機械学習モデル111としての機能を、表示部及び通信部を備えるWebクライアント装置へ提供する構成としてもよい。この場合、通信部13は、Webクライアント装置からのリクエストを受信し、処理結果を送信するために使用される。
【0059】
学習時に用いる誤差は、二乗誤差、絶対値誤差、又は交差エントロピー誤差等、入出力されるデータ、学習目的に応じて適切な関数を用いるとよい。例えば、出力が分類である場合、交差エントロピー誤差を用いる。誤差関数を用いることに拘わらずその他の基準を用いるなど柔軟な運用が適用できる。この誤差関数自体に外部の機械学習モデルを用いて評価を行なってもよい。
【0060】
なお、本発明は、上記実施の形態の構成に限られず、発明の趣旨を変更しない範囲で種々の変形が可能である。また、本発明の目的を達成するために、本発明は、画像処理装置(学習装置及び推論装置)に含まれる特徴的な構成手段をステップとする画像処理方法(学習方法及び推論方法)としたり、それらの特徴的なステップを含むプログラムとして実現することもできる。そして、そのプログラムは、ROM等に格納しておくだけでなく、USBメモリ等の記録媒体や通信ネットワークを介して流通させることもできる。
【0061】
また、本発明は、画像処理装置又はコンピュータプログラムに向けて入力データを送信し、画像処理装置又はコンピュータプログラムからの出力データを受信して利用するコンピュータシステムとしても実現できる。このシステムは、上述の処理により学習済みの機械学習モデルから得られるデータを利用した処理システムで、種々のサービスを提供できる。本システムに用いる装置は、表示部及び通信部を備えた画像処理装置又はコンピュータと情報を送受信できる情報処理装置などであり、例えば所謂PC、スマートフォン、携帯端末、ゲーム機器などである。
【符号の説明】
【0062】
1 画像処理装置(学習装置及び推論装置)
10 制御部
12 記憶部(学習結果記憶部)
15 操作部
101 学習処理実行部
102 推論処理実行部
110 入力部
111 機械学習モデル
111a 生成器
111b 判別器
112 出力部
113 データ加工部
114 切出部
301,401 元となる教師データ
302 暫定基準画像
303 編集後の暫定基準画像
304,402 加工後教師データ
図1
図2
図3
図4
図5
図6