(57)【要約】【課題】従来よりもロバストな分類結果を得ることができるようにする。【解決手段】画像分類装置１００は、対象判定部１１と、分類部１２と、結果出力部１３と、を備える。対象判定部１１は、入力画像が分類対象に含まれる画像であるか否かを判定する。分類部１２は、入力画像を分類する。結果出力部１３は、対象判定部１１が判定した結果と分類部１２が分類した結果とを用いて、入力画像の最終的な分類結果である最終結果を出力する。【選択図】図１
2020119308.tif 000002
【特許請求の範囲】
【請求項１】
入力画像が分類対象に含まれる画像であるか否かを判定する対象判定部と、
前記入力画像を分類する分類部と、
前記対象判定部が判定した結果と前記分類部が分類した結果とを用いて、入力画像の最終的な分類結果である最終結果を出力する結果出力部と、
を備える画像分類装置。
【請求項２】
元画像の情報量を削減する画像変換を行って変換画像を生成する変換部と、
前記変換画像から前記元画像の復元を試みた復元画像を生成する復元部と、
をさらに備え、
前記変換部は、前記入力画像の情報量を削減する画像変換を行って変換画像を生成し、
前記復元部は、前記変換画像から復元画像を生成し、
前記対象判定部は、前記入力画像と前記復元画像との間の差分である復元誤差に基づいて前記入力画像が前記分類対象に含まれる画像であるか否かを判定する、
請求項１に記載の画像分類装置。
【請求項３】
前記変換部は、
前記元画像の色成分を削減するグレースケール変換、
前記元画像の高周波成分を削減する平滑化変換、
前記元画像の低周波成分を削減するエッジ抽出変換、及び、
前記元画像の一部の領域を削除する一部領域削除変換、
のうちの少なくとも１つの画像変換を行う、
請求項２に記載の画像分類装置。
【請求項４】
前記分類部は、前記入力画像を前記変換部により画像変換してから分類する、
請求項２または３に記載の画像分類装置。
【請求項５】
前記結果出力部は、前記分類部が前記変換部により行った画像変換の種類とともに、前記最終結果を出力する、
請求項４に記載の画像分類装置。
【請求項６】
前記結果出力部は、前記復元誤差とともに、前記最終結果を出力する、
請求項２から５のいずれか１項に記載の画像分類装置。
【請求項７】
前記対象判定部は、前記入力画像が前記分類対象に含まれる画像である確率を算出し、
前記結果出力部は、前記対象判定部が算出した確率とともに、前記最終結果を出力する、
請求項１から６のいずれか１項に記載の画像分類装置。
【請求項８】
前記入力画像は、皮膚疾患の患部を撮影した画像である、
請求項１から７のいずれか１項に記載の画像分類装置。
【請求項９】
入力画像が分類対象に含まれる画像であるか否かを判定する対象判定ステップと、
前記入力画像を分類する分類ステップと、
前記対象判定ステップで判定した結果と前記分類ステップで分類した結果とを用いて、入力画像の最終的な分類結果である最終結果を出力する結果出力ステップと、
を含む画像分類方法。
【請求項１０】
画像分類装置のコンピュータに、
入力画像が分類対象に含まれる画像であるか否かを判定する対象判定ステップ、
前記入力画像を分類する分類ステップ、及び、
前記対象判定ステップで判定した結果と前記分類ステップで分類した結果とを用いて、入力画像の最終的な分類結果である最終結果を出力する結果出力ステップ、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像分類装置、画像分類方法及びプログラムに関する。
【背景技術】
【０００２】
畳み込みニューラルネットワーク（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ：ＣＮＮ）等による分類器を用いて画像を分類する技術が開発されてきている。このような分類器は、予め決められた特定の分類対象について学習が行われているため、この特定の分類対象以外の画像が入力された場合の挙動を予想することは困難であり、想定外の分類が行われてしまう可能性がある。したがって、ロバストな分類を行うためには、入力画像が、分類器の学習に用いられた分類対象に含まれているか否かを判定する必要がある。この判定に関し、例えば非特許文献１には、入力画像とそれをオートエンコーダに入力して得られる復元画像との誤差（復元誤差）に基づいて入力画像が分類対象に含まれているか否かを判定する技術が開示されている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Yuchen Lu, and Peng Xu、"Anomaly Detection for Skin Disease Images Using Variational Autoencoder"、[online]、平成３０年７月２４日(2018.7.24)、［平成３０年１２月２７日検索］、インターネット（URL:https://arxiv.org/pdf/1807.01349.pdf）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
非特許文献１に開示された技術では、復元誤差が小さいなら入力画像は学習時に用いた分類対象に含まれると判定し、復元誤差が大きいなら入力画像は当該分類対象には含まれないと判定する。したがって、復元誤差に基づいて入力画像が分類対象に含まれているか否かを判定することができる。しかし、一般にオートエンコーダの出力画像はボケやすいので、復元画像のボケにより、学習した画像が入力されても復元誤差が大きくなってしまう場合がある。この場合、入力画像は分類対象に含まれているのに、復元誤差に基づく判定では、分類対象に含まれていないと判定してしまうおそれがある。
【０００５】
本発明は、上記問題を解決するためになされたものであり、想定外の画像を含む様々な入力画像に対して、従来よりもロバストな分類結果を得ることができる画像分類装置、画像分類方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明の画像分類装置は、
入力画像が分類対象に含まれる画像であるか否かを判定する対象判定部と、
前記入力画像を分類する分類部と、
前記対象判定部が判定した結果と前記分類部が分類した結果とを用いて、入力画像の最終的な分類結果である最終結果を出力する結果出力部と、
を備える。
【発明の効果】
【０００７】
本発明によれば、従来よりもロバストな分類結果を得ることができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施形態１に係る画像分類装置の機能構成を示す図である。
【図２】オートエンコーダによる処理の概要を説明する図である。
【図３】実施形態１に係る変換部及び復元部による処理の概要を説明する図である。
【図４】実施形態１に係る画像分類処理のフローチャートである。
【図５】実施形態１に係る分類部学習処理のフローチャートである。
【図６】実施形態１に係る復元部学習処理のフローチャートである。
【図７】実施形態１に係る判定処理のフローチャートである。
【図８】変形例１に係る画像分類処理のフローチャートである。
【図９】変形例１に係る分類部学習処理のフローチャートである。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態に係る画像分類装置等について、図表を参照して説明する。なお、図中同一又は相当部分には同一符号を付す。
【００１０】
（実施形態１）
本発明の実施形態１に係る画像分類装置１００は、教師あり学習で得られた分類器、つまり、学習用の画像（学習データ）を用いて学習させた分類器を用いて未知の画像（入力データ）を分類する。この学習用の画像には、その画像が何に分類されるかを示す正解ラベルが付与されている。例えば、皮膚疾患の患部を撮影した画像を分類する場合には、メラノーマ、基底細胞癌、日光角化症、脂漏性角化症、色素性母斑のような疾患名が正解ラベルとなる。また、花を撮影した画像を分類する場合には、例えば、アサガオ、キク、サクラ、タンポポ、バラのような花の名称が正解ラベルとなる。
【００１１】
教師あり学習で得られた分類器は、どのような入力データが与えられた場合であっても、学習データの正解ラベルの中のいずれかを分類結果として出力せざるを得ないので、学習データの正解ラベルに含まれるものしか正しく分類することはできない。例えば、皮膚疾患の患部を撮影した画像を用いて分類器を学習させた場合、皮膚疾患の患部を撮影した画像以外の画像をその分類器で正しく分類することはできない。また、皮膚疾患の患部を撮影した画像であっても、学習データの正解ラベルに含まれている疾患名以外の皮膚疾患の画像は、その分類器では正しく分類することができない。つまり、この分類器が分類の対象として想定している画像は、学習データの正解ラベルに含まれている疾患名の画像である。
【００１２】
そこで、画像分類装置１００は、入力データが学習データの正解ラベルに含まれるものか否かを判定してから分類することにより、従来よりもロバストな分類結果を得ることができるようにしている。このような画像分類装置１００について、以下に説明する。なお、「分類対象に含まれる画像」とは、「学習データの正解ラベルに含まれる画像」を指すものとする。
【００１３】
実施形態１に係る画像分類装置１００は、図１に示すように、制御部１０、記憶部２０、画像入力部３１、出力部３２、通信部３３、操作入力部３４、を備える。
【００１４】
制御部１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等で構成され、記憶部２０に記憶されたプログラムを実行することにより、後述する各部（対象判定部１１、分類部１２、結果出力部１３、変換部１４、復元部１５）の機能を実現する。
【００１５】
記憶部２０は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等で構成され、制御部１０のＣＰＵが実行するプログラム及び必要なデータを記憶する。
【００１６】
画像入力部３１は、学習用の画像データ又は分類する（未知の）画像データを入力するためのデバイスである。制御部１０は、画像入力部３１を介して画像データを取得する。画像入力部３１としては、制御部１０が画像データを取得できるなら、任意のデバイスを使用することができる。例えば、記憶部２０に画像データを記憶させておき、制御部１０が記憶部２０を読み出すことによって画像データを取得する場合は、記憶部２０が画像入力部３１を兼ねることになる。また、制御部１０が通信部３３を介して外部のサーバ等から画像データを取得する場合は、通信部３３が画像入力部３１を兼ねることになる。
【００１７】
出力部３２は、制御部１０が、画像入力部３１から入力した画像を分類した結果や後述する復元誤差等を出力するためのデバイスである。例えば、出力部３２は、液晶ディスプレイや有機ＥＬ（Ｅｌｅｃｔｏｒｏ−Ｌｕｍｉｎｅｓｃｅｎｃｅ）ディスプレイである。ただし、画像分類装置１００は、出力部３２としてこれらディスプレイを備えてもよいし、外部のディスプレイを接続するためのインタフェースとしての出力部３２を備えてもよい。画像分類装置１００は、インタフェースとしての出力部３２を備える場合は、出力部３２を介して接続した外部のディスプレイに分類結果等を表示する。出力部３２は、出力手段として機能する。
【００１８】
通信部３３は、外部の他の装置（例えば、画像データのデータベースが格納されているサーバ等）とデータの送受信を行うためのデバイス（ネットワークインタフェース等）である。制御部１０は、通信部３３を介して画像データを取得することができる。
【００１９】
操作入力部３４は、画像分類装置１００に対するユーザの操作入力を受け付けるデバイスであり、例えば、キーボード、マウス、タッチパネル等である。画像分類装置１００は、操作入力部３４を介して、ユーザからの指示等を受け付ける。操作入力部３４は、操作入力手段として機能する。
【００２０】
次に、制御部１０の機能について説明する。制御部１０は、対象判定部１１、分類部１２、結果出力部１３、変換部１４、復元部１５の機能を実現する。
【００２１】
対象判定部１１は、画像入力部３１を介して取得した入力画像が分類対象に含まれる画像であるか否かを判定する。具体的には、入力画像を変換部１４で変換した画像を復元部１５で復元して復元画像を生成し、入力画像と復元画像との間の誤差（復元誤差）に基づいて判定する。対象判定部１１は、復元誤差が基準値未満であれば入力画像は分類対象に含まれると判定し、復元誤差が基準値以上であれば入力画像は分類対象に含まれないと判定する。また、対象判定部１１は、入力画像が分類対象に含まれるか否かを、復元誤差と基準値との比較で判定するのではなく、復元誤差を確率に変換して確率の値として示してもよい。この場合、入力画像が分類対象に含まれる確率は、例えばｔａｎｈ（１／復元誤差）として算出することができる。
【００２２】
分類部１２は、ニューラルネットワークによる画像の分類器であり、入力画像が入力されると、当該画像が分類対象のそれぞれに分類される確率を出力することによって、入力画像を分類する。予め正解ラベルの付与された学習用の画像データでニューラルネットワークを学習させることにより、分類部１２が実現される。
【００２３】
結果出力部１３は、対象判定部１１が判定した結果と分類部１２が分類した結果とを用いて、入力画像の最終的な分類結果である最終結果を出力する。
【００２４】
変換部１４は、元画像の情報量を削減する画像変換を行って変換画像を生成する。情報量を削減する画像変換とは、色成分を削減するグレースケール変換、ローパスフィルタにより高周波成分を削減する平滑化変換、ハイパスフィルタにより低周波成分を削減するエッジ抽出変換、元画像の一部の領域を削除する一部領域削除変換等である。元画像の情報量を削減する画像変換の種類毎に変換部１４が存在する。例えば、第１の変換部１４はグレースケール変換を行い、第２の変換部１４は平滑化変換を行い、第３の変換部１４はエッジ抽出変換を行うといった具合である。
【００２５】
画像変換の中には、ローパスフィルタやハイパスフィルタのように、カーネルサイズを設定する必要があるものがあるが、カーネルサイズは画像中の分類の対象となる部分（疾患の部分、花の部分等）の大きさにより可変とする。画像中の分類の対象となる部分の大きさは、例えば画像中で背景と異なる色の部分の大きさとして把握することができる。また、皮膚疾患に関しては、皮膚画像の疾患領域をセグメンテーションするＣＮＮが既にいくつか開発されているので、このようなＣＮＮで得られた疾患領域の面積を、分類の対象となる部分の面積として用いてもよい。
【００２６】
なお、カーネルサイズを画像中の分類の対象となる部分の大きさによって可変とするのではなく、予め複数のカーネルサイズに基づくハイパスフィルタ、ローパスフィルタ等を用意しておいて、カーネルサイズの異なるハイパスフィルタやローパスフィルタは、別の画像変換（異なる種類の画像変換）として扱うことにしてもよい。
【００２７】
復元部１５は、変換部１４が生成した変換画像から、元画像の復元を試みた復元画像を生成する。復元部１５は、変換画像を入力すると、その変換画像の元画像が出力されるように予め学習させたニューラルネットワークによって実現される。
【００２８】
変換部１４及び復元部１５の処理は、オートエンコーダの処理に似ているので、ここで、これらを比較して説明する。オートエンコーダは図２に示すように、まず、入力画像をエンコーダ（ニューラルネットワーク）により、入力画像の画素数（例えば３２０×３２０画素）よりずっと少ない次元数（例えば１００次元）の潜在ベクトルに変換する。そして、デコーダ（ニューラルネットワーク）により、潜在ベクトルから入力画像（元画像）をできるだけ復元した出力画像を生成する。
【００２９】
変換部１４及び復元部１５の処理は、図３に示すように、まず、入力画像に対し、変換部１４により、情報量を削減する画像変換を行って変換画像を生成する。そして、復元部１５（ニューラルネットワーク）により、変換画像から、入力画像（元画像）の復元を試みた復元画像を生成する。なお、復元部１５に入力される変換画像の画像データは入力画像から情報が削除済みの画像データであるので、オートエンコーダのように中間層（潜在ベクトル）で情報を欠落させる必要はない。したがって、復元部１５のニューラルネットワークは、中間層で情報が欠落しないモデルとする。
【００３０】
また、変換画像がどのような画像変換によって生成されたかによって元画像の復元の仕方が異なるので、復元部１５は変換部１４毎に存在する。例えば、第１の復元部１５はグレースケール変換された変換画像から元画像を復元し、第２の復元部１５は平滑化変換された変換画像から元画像を復元し、第３の復元部１５はエッジ抽出変換された変換画像から元画像を復元するといった具合である。
【００３１】
図２及び図３に示すように、復元部１５の処理は、オートエンコーダの後半部分（潜在ベクトルから出力画像を生成するデコーダ）の処理と似ている。しかし、オートエンコーダでは潜在ベクトルをブラックボックス的に扱わざるを得なかったのに対し、復元部１５では入力画像から削除された情報の種類が分かっている。したがって、制御部１０及びユーザは、変換部１４が行う画像変換の種類に応じた復元画像の状態を確認することができ、対象判定部１１で用いる変換部１４及び復元部１５を、入力画像の種類や画像分類の用途等に応じて使い分けることも可能になる。
【００３２】
以上、画像分類装置１００の機能構成について説明した。次に、画像分類装置１００が行う画像分類処理の内容について、図４を参照して説明する。画像分類処理は、操作入力部３４を介して、ユーザにより、画像分類装置１００に対して画像分類処理の開始が指示されると開始される。なお、ここでは、変換部１４が行う画像変換の種類はＮ種類とし、変換部１４及び復元部１５はそれぞれ第１から第ＮまでのＮ個用意されているものとする。
【００３３】
まず、画像分類装置１００の制御部１０は、大量の学習用画像データにより、分類部１２の学習を行う（ステップＳ１０１）。この処理（分類部学習処理）については、図５を参照して後述する。なお、ステップＳ１０１（分類部学習処理）は、画像分類処理を開始する前に、予め行っておいてもよい。
【００３４】
次に、制御部１０は、大量の学習用画像データにより、復元部１５の学習を行う（ステップＳ１０２）。この処理（復元部学習処理）については、図６を参照して後述する。なお、ステップＳ１０２（復元部学習処理）は、画像分類処理を開始する前に、予め行っておいてもよい。
【００３５】
次に、制御部１０は、画像入力部３１を介して入力画像（画像分類装置１００で分類する未知の画像）を取得する（ステップＳ１０３）。そして、画像変換の種類を示す変数ｉを１に初期化する（ステップＳ１０４）。
【００３６】
次に、対象判定部１１は、第ｉ番目の画像変換により、入力画像が分類対象に含まれる確率を算出する（ステップＳ１０５）。この処理（判定処理）については、図７を参照して後述する。ステップＳ１０５は、対象判定ステップとも呼ばれる。
【００３７】
次に、制御部１０は、画像変換の種類を示す変数ｉをインクリメントし（ステップＳ１０６）、変数ｉの値が画像変換の種類数であるＮより大きくなったか否かを判定する（ステップＳ１０７）。
【００３８】
変数ｉの値が画像変換の種類数Ｎより大きくなければ（ステップＳ１０７；Ｎｏ）、ステップＳ１０５に戻る。変数ｉの値が画像変換の種類数Ｎより大きければ（ステップＳ１０７；Ｙｅｓ）、分類部１２はステップＳ１０３で取得した入力画像を分類する（ステップＳ１０８）。ステップＳ１０８は分類ステップとも呼ばれる。
【００３９】
次に、制御部１０は、ステップＳ１０５で算出した確率の重み付き平均を求める（ステップＳ１０９）。具体的には、第ｉ番目の画像変換により算出した確率をＰｉで表し、第ｉ番目の画像変換の重みをＷｉで表すとすると、確率の重み付き平均Ａを、
Ａ＝（Σｉ＝１，Ｎ（Ｗｉ×Ｐｉ））／（Σｉ＝１，Ｎ  Ｗｉ）
として求める。重みＷｉには、機械学習の手法により、第ｉの画像変換が学習データの分類に寄与する割合に応じ、寄与する割合が大きいほど大きな重みを付与する。
【００４０】
そして、結果出力部１３は、ステップＳ１０９で求めた確率の重み付き平均Ａと、分類部１２がステップＳ１０８で分類した結果と、を用いて最終的な分類結果を、出力部３２を介して出力し（ステップＳ１１０）、画像分類処理を終了する。ステップＳ１１０は、結果出力ステップとも呼ばれる。
【００４１】
結果出力部１３は、例えば、確率の重み付き平均Ａが５０％以上なら分類部１２が分類した結果を出力し、５０％未満であれば、「入力画像は分類対象には含まれません」というようなメッセージを出力する。また、結果出力部１３は、確率の重み付き平均Ａの値の大小によらずに、分類部１２が分類した結果と確率の重み付き平均Ａとの両方を、最終的な分類結果として出力してもよい。このような出力を行うことで、結果出力部１３は、分類部１２が分類した結果の信頼度を示すことができる。このように結果出力部１３が最終的な分類結果をどのように出力するかは任意である。
【００４２】
以上、説明した画像分類処理により、画像分類装置１００は、確率の重み付き平均Ａの値によって、入力画像が分類対象に含まれる確率を考慮した分類結果を出力することができるので、従来よりもロバストな分類結果を得ることができる。次に、画像分類処理（図４）のステップＳ１０１で行われる分類部学習処理について、図５を参照して説明する。
【００４３】
まず、制御部１０は、画像入力部３１を介して学習用の入力画像とその正解ラベルを取得する（ステップＳ２０１）。そして、分類部１２にその入力画像を入力した時に出力される分類結果と正解ラベルとの誤差を逆伝播させることにより、分類部１２のニューラルネットワークを学習させる（ステップＳ２０２）。
【００４４】
そして、制御部１０は、学習を終了するか否かを判定する（ステップＳ２０３）。例えば、学習用入力画像を予め決められた枚数（例えばＭ枚）学習させたら学習を終了する。学習させていない学習用画像データが残っている場合等、学習を終了しないなら（ステップＳ２０３；Ｎｏ）、ステップＳ２０１に戻る。学習を終了するなら（ステップＳ２０３；Ｙｅｓ）、分類部学習処理を終了する。
【００４５】
次に、画像分類処理（図４）のステップＳ１０２で行われる復元部学習処理について、図６を参照して説明する。復元部１５は、画像変換の種類数Ｎだけ存在するので、第１の復元部１５から、第Ｎの復元部１５まで、Ｎ個の復元部１５が存在する。復元部学習処理では、これらＮ個の復元部１５の学習を行う必要がある。
【００４６】
まず、制御部１０は、画像変換の種類を示す変数ｉを１に初期化する（ステップＳ３０１）。そして、制御部１０は、画像入力部３１を介して取得する学習用の入力画像の取得位置を初期化する（ステップＳ３０２）。これは、複数の復元部１５の学習を行うため、各復元部１５の学習の最初に、学習用の入力画像を最初から入力し直すようにするためである。
【００４７】
次に、制御部１０は、画像入力部３１を介して学習用の入力画像を取得する（ステップＳ３０３）。そして、第ｉの変換部１４が第ｉ番目の画像変換により、学習用の入力画像から変換画像を生成する（ステップＳ３０４）。
【００４８】
次に、第ｉの復元部１５がその変換画像を入力した時に出力される復元画像と学習用の入力画像との誤差を逆伝播させることにより、第ｉの復元部１５のニューラルネットワークを学習させる（ステップＳ３０５）。
【００４９】
そして、制御部１０は、第ｉの復元部１５の学習を終了するか否かを判定する（ステップＳ３０６）。例えば、学習用入力画像を予め決められた枚数（例えばＭ枚）学習させたら学習を終了する。学習させていない学習用画像データが残っている場合等、第ｉの復元部１５の学習を終了しないなら（ステップＳ３０６；Ｎｏ）、ステップＳ３０３に戻る。第ｉの復元部１５の学習を終了するなら（ステップＳ３０６；Ｙｅｓ）、画像変換の種類を示す変数ｉをインクリメントする（ステップＳ３０７）。
【００５０】
そして、制御部１０は、変数ｉの値が画像変換の種類数であるＮより大きくなったか否かを判定する（ステップＳ３０８）。変数ｉの値が画像変換の種類数Ｎより大きくなければ（ステップＳ３０８；Ｎｏ）、ステップＳ３０２に戻る。変数ｉの値が画像変換の種類数Ｎより大きければ（ステップＳ３０８；Ｙｅｓ）、復元部学習処理を終了する。
【００５１】
次に、画像分類処理（図４）のステップＳ１０５で行われる判定処理について、図７を参照して説明する。判定処理は、入力画像と、画像変換の種類を示す番号（ｉ）の、２つの引数を取り、第ｉ番目の画像変換を行って入力画像が分類対象に含まれる確率を算出して、その確率を戻り値とする関数として機能する。
【００５２】
まず、制御部１０は、第ｉの変換部１４により、第ｉ番目の画像変換を行って、入力画像から変換画像を生成する（ステップＳ４０１）。次に、制御部１０は、第ｉの復元部１５により、変換画像から復元画像を生成する（ステップＳ４０２）。
【００５３】
そして、対象判定部１１は、入力画像と復元画像との間の復元誤差を算出する（ステップＳ４０３）。復元誤差は、例えば、各画像間で対応する画素の値（色成分）の差の絶対値を全ての画素について加算した値として求めることができる。
【００５４】
次に、対象判定部１１は、復元誤差を、入力画像が分類対象に含まれる確率に変換する（ステップＳ４０４）。この変換はシグモイド関数等を用いて行われる。基本的には、復元誤差が大きいほど当該確率が低くなり、復元誤差が０に近いほど当該確率が高くなるので、例えば、確率＝ｔａｎｈ（１／復元誤差）として、入力画像が分類対象に含まれる確率を求めることができる。そして、この確率を判定処理の呼び出し元に返して（ステップＳ４０５）、判定処理を終了する。
【００５５】
以上、説明した判定処理及び画像分類処理により、画像分類装置１００は、入力画像が分類対象に含まれる確率を考慮した分類結果を出力することができるので、従来よりもロバストな分類結果を得ることができる。
【００５６】
（変形例１）
上述の実施形態１では、分類部１２の学習は、図５に示す分類部学習処理により、学習用入力画像をそのまま用いて学習を行っている。しかし、変換部１４や復元部１５のように、画像変換の種類毎に分類部１２を用意してもよい。学習用入力画像を第ｉ番目の画像変換により変換した変換画像で第ｉの分類部１２の学習を行う変形例１について説明する。
【００５７】
実施形態１では分類部１２は１つだけ存在していたが、変形例１では、変換部１４によって変換された画像を分類するので、変換部１４毎に分類部１２が存在する。例えば、第１の分類部１２はグレースケール変換された変換画像を分類し、第２の分類部１２は平滑化変換された変換画像を分類し、第３の分類部１２はエッジ抽出変換された変換画像を分類するといった具合である。
【００５８】
また、変形例１の画像分類処理は、図８に示すように、実施形態１の画像分類処理（図４）のうち、分類部１２が関係している処理を、複数の分類部１２による処理に置き換えた内容になっている。変形例１の画像分類処理を、図８を参照して説明する。この画像分類処理も、操作入力部３４を介して、ユーザにより、画像分類装置１００に対して画像分類処理の開始が指示されると開始される。変形例１においても、変換部１４が行う画像変換の種類はＮ種類とする。したがって、分類部１２、変換部１４及び復元部１５はそれぞれ第１から第ＮまでのＮ個用意されているものとする。
【００５９】
まず、制御部１０は、大量の学習用画像データにより、Ｎ個の分類部１２の学習を行う（ステップＳ１２１）。この処理（分類部学習処理）については、図９を参照して後述する。なお、ステップＳ１２１（分類部学習処理）は、画像分類処理を開始する前に、予め行っておいてもよい。
【００６０】
ステップＳ１０２からステップＳ１０５までの処理は、上述した実施形態１の画像分類処理（図４）、復元部学習処理（図６）及び判定処理（図７）と同じなので、説明を省略する。
【００６１】
ステップＳ１０５の次に、制御部１０は、第ｉの変換部１４により第ｉ番目の画像変換で入力画像を変換した画像（第ｉの変換画像）を、第ｉの分類部１２で分類する（ステップＳ１２２）。ステップＳ１２２は分類ステップとも呼ばれる。ステップＳ１２２では、第ｉの変換画像が分類対象のそれぞれに分類される確率が第ｉの分類部１２により算出される。例えば、分類対象がＧ１，Ｇ２，Ｇ３の３種類あるとし、第ｉの変換画像が分類対象Ｇｊに分類される確率をＣｉｊで表すとすると、分類部１２が算出する分類結果は（Ｃｉ１，Ｃｉ２，Ｃｉ３）というベクトルで表すことができる。
【００６２】
次のステップＳ１０６及びステップＳ１０７は、上述した実施形態１の画像分類処理（図４）と同じなので、説明を省略する。
【００６３】
次に、制御部１０は、ステップＳ１０５で算出した確率とステップＳ１２２で算出した分類結果（第ｉの変換画像が分類対象のそれぞれに分類される確率を示すベクトル）との積の、重み付き平均を求める（ステップＳ１２３）。具体的には、第ｉ番目の画像変換により算出した確率をＰｉで表し、分類結果をベクトルＣｉで表し、第ｉ番目の画像変換の重みをＷｉで表すとすると、この重み付き平均を以下に示すベクトルＢとして、求める。
Ｂ＝（Σｉ＝１，Ｎ（Ｗｉ×Ｐｉ×Ｃｉ））／（Σｉ＝１，Ｎ  Ｗｉ）
ここで、重みＷｉには、機械学習の手法により、第ｉの画像変換が学習データの分類に寄与する割合に応じ、寄与する割合が大きいほど大きな重みを付与する。
【００６４】
そして、結果出力部１３は、ステップＳ１２３で求めた重み付き平均であるベクトルＢを用いて最終的な分類結果を、出力部３２を介して出力し（ステップＳ１１０）、画像分類処理を終了する。ステップＳ１１０は、結果出力ステップとも呼ばれる。
【００６５】
結果出力部１３は、例えばベクトルＢの要素のうち最も大きい要素が５０％以上の確率を示していれば、その最も大きい要素に対応する分類結果を出力し、５０％未満であれば、「入力画像は分類対象には含まれません」というようなメッセージを出力する。また、結果出力部１３は、ベクトルＢ自体を出力してもよい。ベクトルＢ自体を出力することで、結果出力部１３は、分類部１２が分類した結果を信頼度と共に示すことができる。このように結果出力部１３が最終的な分類結果をどのように出力するかは任意である。
【００６６】
次に、画像変換処理（図８）のステップＳ１２１で行われる分類部学習処理について、図９を参照して説明する。変形例１では、分類部１２は、画像変換の種類数Ｎだけ存在するので、第１の分類部１２から、第Ｎの分類部１２まで、Ｎ個の分類部１２が存在する。図９に示す分類部学習処理では、これらＮ個の分類部１２の学習を行う必要がある。
【００６７】
まず、制御部１０は、画像変換の種類を示す変数ｉを１に初期化する（ステップＳ５０１）。そして、制御部１０は、画像入力部３１を介して取得する学習用の入力画像の取得位置を初期化する（ステップＳ５０２）。これは、複数の分類部１２の学習を行うため、各分類部１２の学習の最初に、学習用の入力画像を最初から入力し直すようにするためである。
【００６８】
次に、制御部１０は、画像入力部３１を介して学習用の入力画像とその正解ラベルを取得する（ステップＳ５０３）。そして、第ｉの変換部１４が第ｉ番目の画像変換により、学習用の入力画像から変換画像を生成する（ステップＳ５０４）。
【００６９】
そして、第ｉの分類部１２にその変換画像を入力した時に出力される分類結果と正解ラベルとの誤差を逆伝播させることにより、第ｉの分類部１２のニューラルネットワークを学習させる（ステップＳ５０５）。
【００７０】
そして、制御部１０は、学習を終了するか否かを判定する（ステップＳ５０６）。例えば、学習用入力画像を予め決められた枚数（例えばＭ枚）学習させたら学習を終了する。学習させていない学習用画像データが残っている場合等、第ｉの分類部１２の学習を終了しないなら（ステップＳ５０６；Ｎｏ）、ステップＳ５０３に戻る。第ｉの分類部１２の学習を終了するなら（ステップＳ５０６；Ｙｅｓ）、画像変換の種類を示す変数ｉをインクリメントする（ステップＳ５０７）。
【００７１】
そして、制御部１０は、変数ｉの値が画像変換の種類数であるＮより大きくなったか否かを判定する（ステップＳ５０８）。変数ｉの値が画像変換の種類数Ｎより大きくなければ（ステップＳ５０８；Ｎｏ）、ステップＳ５０２に戻る。変数ｉの値が画像変換の種類数Ｎより大きければ（ステップＳ５０８；Ｙｅｓ）、分類部学習処理を終了する。
【００７２】
以上、説明した変形例１に係る画像分類装置１００では、分類対象の判定に用いる画像変換と、分類を行う画像を生成する画像変換と、を一致させることにより、最終的な分類結果をよりロバストなものにすることができる。なぜなら、各画像変換について、復元誤差が大きい変換画像の分類精度は低く、復元誤差が小さい変換画像の分類精度は高いことが予想されるからである。
【００７３】
例えば、第１の画像変換が色成分を削減するグレースケール変換で、第１の復元部１５が生成した復元画像の復元誤差（入力画像と復元画像との間の差分）が大きかったとする。この復元誤差が大きいということは、グレースケール画像から元の画像を復元するのが困難であるということを意味する。したがって、この場合、グレースケール画像の分類精度（第１の分類部１２による分類精度）も落ちることが予想される。そして、復元誤差が大きいと、復元誤差から得られる確率（入力画像が分類対象に含まれる確率）が小さくなるので、変形例１では、この場合、第１の分類部１２による分類結果Ｃ１には、この小さい確率Ｐ１が乗算されることになり、分類精度の低い分類部１２の分類結果の影響度を下げることができる。
【００７４】
なお、結果出力部１３は、最終的な分類結果のみならず、変換部１４が行った画像変換の種類とともに、各画像変換後に得られた復元誤差及び分類結果を出力してもよい。各画像変換における復元誤差と分類結果とが提示されることにより、ユーザは削減された情報と分類精度との対応を取ることができる。これにより、ユーザは最終的な分類結果が得られた理由を、色成分、高周波成分（複雑な模様）、低周波成分（全体的な模様）等の各成分から直感的に理解することができる。
【００７５】
また、上述の実施形態１及び変形例１では、分類部１２、変換部１４、復元部１５は、それぞれ、これらを実現するプログラムを制御部１０が実行することにより、制御部１０が分類部１２、変換部１４、復元部１５として機能することとしている。しかし、これに限られない。画像分類装置１００は、制御部１０とは別に、分類部１２、変換部１４、復元部１５の機能をそれぞれ実現するデバイス（例えば、ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）や、専用のＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）等）を複数備えてもよい。
【００７６】
また、上述の実施形態１では一部の説明で皮膚の疾患を例に挙げたが、本発明は皮膚科の分野に限定されるものではなく、広く一般の画像分類の分野において適用可能である。例えば、花の分類、細菌の顕微鏡写真の分類等にも適用できる。
【００７７】
なお、画像分類装置１００の各機能は、通常のＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）等のコンピュータによっても実施することができる。具体的には、上記実施形態では、画像分類装置１００が行う画像分類処理のプログラムが、記憶部２０のＲＯＭに予め記憶されているものとして説明した。しかし、プログラムを、フレキシブルディスク、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）、ＭＯ（Ｍａｇｎｅｔｏ−Ｏｐｔｉｃａｌ  Ｄｉｓｃ）、メモリカード、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）メモリ等のコンピュータ読み取り可能な記録媒体に格納して配布し、そのプログラムをコンピュータに読み込んでインストールすることにより、上述の各機能を実現することができるコンピュータを構成してもよい。
【００７８】
以上、本発明の好ましい実施形態について説明したが、本発明は係る特定の実施形態に限定されるものではなく、本発明には、特許請求の範囲に記載された発明とその均等の範囲が含まれる。以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
【００７９】
（付記１）
入力画像が分類対象に含まれる画像であるか否かを判定する対象判定部と、
前記入力画像を分類する分類部と、
前記対象判定部が判定した結果と前記分類部が分類した結果とを用いて、入力画像の最終的な分類結果である最終結果を出力する結果出力部と、
を備える画像分類装置。
【００８０】
（付記２）
元画像の情報量を削減する画像変換を行って変換画像を生成する変換部と、
前記変換画像から前記元画像の復元を試みた復元画像を生成する復元部と、
をさらに備え、
前記変換部は、前記入力画像の情報量を削減する画像変換を行って変換画像を生成し、
前記復元部は、前記変換画像から復元画像を生成し、
前記対象判定部は、前記入力画像と前記復元画像との間の差分である復元誤差に基づいて前記入力画像が前記分類対象に含まれる画像であるか否かを判定する、
付記１に記載の画像分類装置。
【００８１】
（付記３）
前記変換部は、
前記元画像の色成分を削減するグレースケール変換、
前記元画像の高周波成分を削減する平滑化変換、
前記元画像の低周波成分を削減するエッジ抽出変換、及び、
前記元画像の一部の領域を削除する一部領域削除変換、
のうちの少なくとも１つの画像変換を行う、
付記２に記載の画像分類装置。
【００８２】
（付記４）
前記分類部は、前記入力画像を前記変換部により画像変換してから分類する、
付記２または３に記載の画像分類装置。
【００８３】
（付記５）
前記結果出力部は、前記分類部が前記変換部により行った画像変換の種類とともに、前記最終結果を出力する、
付記４に記載の画像分類装置。
【００８４】
（付記６）
前記結果出力部は、前記復元誤差とともに、前記最終結果を出力する、
付記２から５のいずれか１つに記載の画像分類装置。
【００８５】
（付記７）
前記対象判定部は、前記入力画像が前記分類対象に含まれる画像である確率を算出し、
前記結果出力部は、前記対象判定部が算出した確率とともに、前記最終結果を出力する、
付記１から６のいずれか１つに記載の画像分類装置。
【００８６】
（付記８）
前記入力画像は、皮膚疾患の患部を撮影した画像である、
付記１から７のいずれか１つに記載の画像分類装置。
【００８７】
（付記９）
入力画像が分類対象に含まれる画像であるか否かを判定する対象判定ステップと、
前記入力画像を分類する分類ステップと、
前記対象判定ステップで判定した結果と前記分類ステップで分類した結果とを用いて、入力画像の最終的な分類結果である最終結果を出力する結果出力ステップと、
を含む画像分類方法。
【００８８】
（付記１０）
画像分類装置のコンピュータに、
入力画像が分類対象に含まれる画像であるか否かを判定する対象判定ステップ、
前記入力画像を分類する分類ステップ、及び、
前記対象判定ステップで判定した結果と前記分類ステップで分類した結果とを用いて、入力画像の最終的な分類結果である最終結果を出力する結果出力ステップ、
を実行させるためのプログラム。
【符号の説明】
【００８９】
１０…制御部、１１…対象判定部、１２…分類部、１３…結果出力部、１４…変換部、１５…復元部、２０…記憶部、３１…画像入力部、３２…出力部、３３…通信部、３４…操作入力部、１００…画像分類装置
【図１】
2020119308.tif 000003
【図２】
2020119308.tif 000004
【図３】
2020119308.tif 000005
【図４】
2020119308.tif 000006
【図５】
2020119308.tif 000007
【図６】
2020119308.tif 000008
【図７】
2020119308.tif 000009
【図８】
2020119308.tif 000010
【図９】
2020119308.tif 000011