(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022174095
(43)【公開日】2022-11-22
(54)【発明の名称】特徴量抽出装置、特徴量抽出方法、識別装置、識別方法及びプログラム
(51)【国際特許分類】
G06T 7/00 20170101AFI20221115BHJP
G06V 10/44 20220101ALI20221115BHJP
A61B 5/00 20060101ALI20221115BHJP
【FI】
G06T7/00 300F
G06T7/00 612
G06V10/44
A61B5/00 M
G06T7/00 350C
【審査請求】未請求
【請求項の数】22
【出願形態】OL
(21)【出願番号】P 2022133096
(22)【出願日】2022-08-24
(62)【分割の表示】P 2020043778の分割
【原出願日】2020-03-13
(31)【優先権主張番号】P 2019113990
(32)【優先日】2019-06-19
(33)【優先権主張国・地域又は機関】JP
(71)【出願人】
【識別番号】504180239
【氏名又は名称】国立大学法人信州大学
(71)【出願人】
【識別番号】000001443
【氏名又は名称】カシオ計算機株式会社
(74)【代理人】
【識別番号】100095407
【弁理士】
【氏名又は名称】木村 満
(72)【発明者】
【氏名】佐野 佑
(72)【発明者】
【氏名】奥山 隆平
(72)【発明者】
【氏名】皆川 茜
(72)【発明者】
【氏名】手島 義裕
(72)【発明者】
【氏名】浜田 玲
(57)【要約】
【課題】特徴量を、その抽出のための負荷を抑制しながら、適切に抽出することができるようにする。
【解決手段】識別装置100は、所定の対象を撮像した撮像画像を取得する取得部11と、取得部11で取得された撮像画像における所定の対象を含む領域から、互いに異なる複数の方向に延びる線状の領域を特定する特定部12と、特定部12で特定された線状の領域から、画素値に基づく特徴量を抽出する抽出部13と、を備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
所定の対象を撮像した撮像画像を取得する取得手段と、
前記取得手段で取得された撮像画像における前記所定の対象を含む領域から、互いに異なる複数の方向に延びる線状の領域を特定する特定手段と、
前記特定手段で特定された線状の領域から、画素値に基づく特徴量を抽出する抽出手段と、
を備えることを特徴とする特徴量抽出装置。
【請求項2】
前記線状の領域は、螺旋状の領域であることを特徴とする、
請求項1に記載の特徴量抽出装置。
【請求項3】
前記螺旋状の領域の螺旋を規定するパラメータをランダムに設定する設定手段をさらに備えることを特徴とする、
請求項2に記載の特徴量抽出装置。
【請求項4】
前記所定の対象は、人の皮膚のうちの診断の対象となる診断対象部分であることを特徴とする、
請求項1から3の何れか1項に記載の特徴量抽出装置。
【請求項5】
前記抽出手段は、前記特定された線状の領域の画素値を1次元データとして取得し、前記1次元データに対して所定の統計値を計算して前記特徴量を抽出することを特徴とする、
請求項1から4の何れか1項に記載の特徴量抽出装置。
【請求項6】
前記抽出手段は、前記特定された線状の領域の画素値を所定の色空間における第1成分、第2成分及び第3成分それぞれの1次元データとして取得し、前記第1成分と前記第2成分それぞれの前記1次元データの分散、前記第1成分と前記第2成分と前記第3成分それぞれの前記1次元データの回帰直線の傾き及び寄与率、前記1次元データ同士の差の絶対値の分散、前記1次元データ同士の比のうち前記第1成分/前記第2成分及び前記第1成分/前記第3成分の回帰直線の傾き及び寄与率、前記1次元データの最大値と最小値の差、の合計16の値のうちの少なくとも1つを特徴量として抽出することを特徴とする、
請求項5に記載の特徴量抽出装置。
【請求項7】
前記抽出手段は、前記特定された線状の領域の画素値を1次元データとして取得し、前記1次元データを1次元コンボリューショナルニューラルネットワークに入力して前記特徴量を抽出することを特徴とする、
請求項1から4の何れか1項に記載の特徴量抽出装置。
【請求項8】
さらに、前記線状の領域を特定するパラメータの適正度を評価した値である評価値を算出する評価手段を備え、
前記特定手段は、複数の前記パラメータの中から、前記評価手段で算出された評価値が最も高い前記パラメータである最高評価パラメータを選択し、前記選択した最高評価パラメータを用いて前記線状の領域を特定する、
請求項7に記載の特徴量抽出装置。
【請求項9】
所定の対象を撮像した撮像画像を取得する取得手段と、
前記取得手段で取得された撮像画像における前記所定の対象を含む領域から、互いに異なる複数の方向に延びる線状の領域を特定する特定手段と、
前記特定手段で特定された線状の領域から、画素値に基づく1次元データを取得する1次元データ取得手段と、
前記1次元データ取得手段で取得された1次元データに基づいて前記所定の対象を識別する識別手段と、
を備えることを特徴とする識別装置。
【請求項10】
前記線状の領域は、螺旋状の領域であることを特徴とする、
請求項9に記載の識別装置。
【請求項11】
前記特定手段は、前記螺旋状の領域の螺旋を規定するパラメータをランダムに設定し、前記ランダムに設定したパラメータで規定された螺旋を用いて前記螺旋状の領域を特定することを特徴とする、
請求項10に記載の識別装置。
【請求項12】
さらに、前記線状の領域を特定するパラメータの適正度を評価した値である評価値を算出する評価手段を備え、
前記特定手段は、複数の前記パラメータの中から、前記評価手段で算出された評価値が最も高い前記パラメータである最高評価パラメータを選択し、前記選択した最高評価パラメータを用いて前記線状の領域を特定する、
請求項9又は10に記載の識別装置。
【請求項13】
前記評価手段は、
前記特定手段に、互いに異なる複数の前記パラメータから評価用パラメータを選択させるとともに、前記選択させた評価用パラメータを用いて、評価用の画像データにおける所定の対象を含む領域から前記線状の領域を特定させ、
前記1次元データ取得手段に、前記特定手段により前記評価用パラメータを用いて特定された前記線状の領域である評価用線状領域から前記1次元データを取得させ、
前記識別手段に、前記1次元データ取得手段により前記評価用線状領域から取得された前記1次元データに基づいて前記評価用の画像データにおける前記所定の対象を識別させ、
前記評価用線状領域から取得された前記1次元データに基づく前記識別手段の識別精度を算出し、前記識別精度に基づいて前記評価値を算出し、前記識別精度及び前記評価値の算出を、前記複数のパラメータの各々について行う、
請求項12に記載の識別装置。
【請求項14】
前記評価手段は、評価用の画像データを用いて各画素が識別に及ぼす影響の大きさを示す影響度を表した活性化マップを取得し、前記活性化マップ上で前記線状の領域から得られる各画素の前記影響度に基づいて、前記評価値を算出する、
請求項12又は13に記載の識別装置。
【請求項15】
前記所定の対象は、人の皮膚のうちの診断の対象となる診断対象部分であることを特徴とする、
請求項9から14の何れか1項に記載の識別装置。
【請求項16】
前記識別手段は、前記1次元データに基づく入力データを入力とし、かつ、前記所定の対象の識別結果を出力とするように機械学習されたモデルに従って、前記所定の対象を識別することを特徴とする、
請求項9から15の何れか1項に記載の識別装置。
【請求項17】
さらに、前記1次元データ取得手段で取得された1次元データに対して所定の統計値を計算して特徴量を抽出する抽出手段を備え、
前記識別手段は前記特徴量を前記モデルとしてのサポートベクターマシンに入力して前記所定の対象を識別することを特徴とする、
請求項16に記載の識別装置。
【請求項18】
前記識別手段は前記1次元データ取得手段で取得された1次元データを前記モデルとしての1次元コンボリューショナルニューラルネットワークに入力して前記所定の対象を識別することを特徴とする、
請求項16に記載の識別装置。
【請求項19】
所定の対象を撮像した撮像画像を取得する取得ステップと、
前記取得ステップで取得された撮像画像における前記所定の対象を含む領域から、互いに異なる複数の方向に延びる線状の領域を特定する特定ステップと、
前記特定ステップで特定された線状の領域から、画素値に基づく特徴量を抽出する抽出ステップと、
を備えることを特徴とする特徴量抽出方法。
【請求項20】
所定の対象を撮像した撮像画像を取得する取得ステップと、
前記取得ステップで取得された撮像画像における前記所定の対象を含む領域から、互いに異なる複数の方向に延びる線状の領域を特定する特定ステップと、
前記特定ステップで特定された線状の領域から、画素値に基づく1次元データを取得する1次元データ取得ステップと、
前記1次元データ取得ステップで取得された1次元データに基づいて前記所定の対象を識別する識別ステップと、
を備えることを特徴とする識別方法。
【請求項21】
コンピュータに、
所定の対象を撮像した撮像画像を取得する取得ステップ、
前記取得ステップで取得された撮像画像における前記所定の対象を含む領域から、互いに異なる複数の方向に延びる線状の領域を特定する特定ステップ、及び、
前記特定ステップで特定された線状の領域から、画素値に基づく特徴量を抽出する抽出ステップ、
を実行させるためのプログラム。
【請求項22】
コンピュータに、
所定の対象を撮像した撮像画像を取得する取得ステップ、
前記取得ステップで取得された撮像画像における前記所定の対象を含む領域から、互いに異なる複数の方向に延びる線状の領域を特定する特定ステップ、
前記特定ステップで特定された線状の領域から、画素値に基づく1次元データを取得する1次元データ取得ステップ、及び、
前記1次元データ取得ステップで取得された1次元データに基づいて前記所定の対象を識別する識別ステップ、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、特徴量抽出装置、特徴量抽出方法、識別装置、識別方法及びプログラムに関する。
【背景技術】
【0002】
従来から、人間の皮膚のホクロ等の診断の対象に係る部分である診断対象部分をカメラで撮像し、この撮像した撮像画像を用いて診断対象部分の診断を支援することが、行われている。例えば、非特許文献1に開示された技術では、このような診断支援のために、皮膚のうちの診断対象部分以外の部分を多く含む全体撮像画像と、全体撮像画像から診断対象部分をクロップしたクロップ画像とを取得し、取得した全体撮像画像及びクロップ画像の各々から、色ヒストグラム等の複数の特徴量を抽出し、抽出した複数の特徴量の各々を、複数の識別器の対応する各々に入力し、それにより得られた複数の識別器の出力を平均することによって、診断対象部分が疾患であるか否かを表す疾患リスクスコアを算出している。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】N. C. F. Codella, Q. B. Nguyen, S. Pankanti, D. Gutman, B. Helba, A. Halpern, J. R. Smith、"Deep learning ensembles for melanoma recognition in dermoscopy images"、IBM Journal of Research and Development, vol. 61, no.4/5, 2017
【発明の概要】
【発明が解決しようとする課題】
【0004】
非特許文献1に開示された技術では、特徴量を、全体撮像画像及びクロップ画像の各々から、すなわち、2次元画像から抽出しているので、その抽出のための処理の負荷が過大になってしまう。このような処理の負荷を抑えるために、撮像画像のうちの診断対象部分の一部の領域を特定して、特定した一部の領域から特徴量を抽出することが考えられるが、そのような処理を行うと、診断対象部分について特徴量を適切に抽出できず、ひいては、疾患リスクスコアを用いた疾患の識別を適切に行うことができなくなる可能性がある。以上の問題は、人間の皮膚の診断対象部分の特徴量を抽出する場合だけでなく、色及び輝度の少なくとも一方が互いに異なる複数の領域を含む他の適当な対象の特徴量、例えば、人間の子宮頸部の診断対象部分の特徴量を抽出する場合にも、同様に当てはまる。
【0005】
本発明は、上記問題を解決するためになされたものであり、特徴量を、その抽出のための負荷を抑制しながら、適切に抽出することができる特徴量抽出装置、特徴量抽出方法、識別装置、識別方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するため、本発明の特徴量抽出装置は、
所定の対象を撮像した撮像画像を取得する取得手段と、
前記取得手段で取得された撮像画像における前記所定の対象を含む領域から、互いに異なる複数の方向に延びる線状の領域を特定する特定手段と、
前記特定手段で特定された線状の領域から、画素値に基づく特徴量を抽出する抽出手段と、
を備えることを特徴とする。
【発明の効果】
【0007】
本発明によれば、特徴量を、その抽出のための負荷を抑制しながら、適切に抽出することができる。
【図面の簡単な説明】
【0008】
【
図1】第1実施形態に係る識別装置の機能構成を示す図である。
【
図2】第1実施形態に係る特定部が特定する線状の領域を説明する図である。
【
図3】曲線に沿って画素値が取得される一例を説明する図である。
【
図4】取得された1次元データの一例を説明する図である。
【
図5】第1実施形態に係る学習処理のフローチャートである。
【
図6】第1実施形態に係る識別処理のフローチャートである。
【
図7】第2実施形態に係る1次元CNNの構成概要を説明する図である。
【
図8】第2実施形態に係る学習処理のフローチャートである。
【
図9】第2実施形態に係る識別処理のフローチャートである。
【
図10】第3実施形態に係る識別装置の機能構成を示す図である。
【
図11】第3実施形態に係る最適パラメータ選択処理のフローチャートである。
【
図12】第3実施形態に係る活性スコア算出処理のフローチャートである。
【発明を実施するための形態】
【0009】
以下、本発明の実施形態に係る識別装置等について、図表を参照して説明する。なお、図中同一又は相当部分には同一符号を付す。
【0010】
(第1実施形態)
本発明の第1実施形態に係る識別装置100は、所定の対象を撮像した撮像画像に基づいてこの所定の対象を識別するための装置である。例えば、識別装置100は、所定の対象としての診断の対象となる診断対象部分(例えば、腫瘍、ホクロ、シミ、できもの、血管、アトピー性湿疹や薬疹、膠原病による発疹などといった皮膚の疾患部分、皮膚の疾患が疑われる部分)を含む人の皮膚を撮像した撮像画像に基づいて、この画像中の診断対象部分が良性か悪性かを識別する。このような識別装置100による識別は、医師の診断を支援するために行われる。また、識別装置100は、画像に基づく識別において、2次元の画像データをそのまま用いるのではなく、画像データから1次元データを取得し、取得した1次元データを用いて当該画像内の所定の対象を識別する。
【0011】
具体的には、識別装置100は、予め用意された学習用の画像データセットに含まれる画像データ(学習用画像データ)から1次元データを取得し、当該1次元データから抽出した特徴量を用いてサポートベクターマシン(Support Vector Machine:SVM)を学習(機械学習)させ、学習させたSVMを利用して画像識別を行う。なお、識別装置100は、SVMを学習させるための特徴量を抽出するので、特徴量抽出装置でもある。
【0012】
学習用画像データには、画像識別の用途に応じた正解ラベルが付与されている。第1実施形態に係る識別装置100は、上記の診断対象部分として、ホクロが撮影された画像に基づいて、当該ホクロが良性か悪性かの識別を行う。したがって、学習用画像データは、良性か悪性かが判明しているホクロが写っている画像データであり、学習用画像データのそれぞれには、その画像に写っているホクロが良性なのか悪性なのかが、正解ラベルとして付与されている。
【0013】
なお、ここでは識別装置100がホクロの良性/悪性の識別を行うものとして説明するが、識別装置100による識別の対象はホクロ等の皮膚疾患に限られない。例えば、子宮頸癌、口腔癌(舌癌、歯肉癌、口底癌)等について、これらの診断対象部分を対象として、当該対象を撮影した画像に基づいて当該対象の疾患名等を識別してもよい。この場合、学習用画像データは、疾患名が判明している診断対象部分を撮影した画像データであり、学習用画像データのそれぞれには、その画像に写っている診断対象部分の疾患名が正解ラベルとして付与される。
【0014】
さらに言えば、識別対象は人体の診断対象部分に限られない。他の適当な物体、例えば、コンクリートの劣化状態についてコンクリートの画像を用いて識別を行うことも考えられる。この場合、学習用画像データは、劣化の有無が判明しているコンクリートを撮影した画像データであり、学習用画像データのそれぞれには、その画像に写っているコンクリートの劣化の有無の情報が正解ラベルとして付与される。なお、識別対象が人体の診断対象部分に限られないことは後述する他の実施形態及び変形例においても同様である。
【0015】
第1実施形態に係る識別装置100は、機能構成として、
図1に示すように、制御部10、記憶部20、画像入力部31、出力部32、通信部33、操作入力部34、を備える。
【0016】
制御部10は、CPU(Central Processing Unit)等で構成され、記憶部20に記憶されたプログラムを実行することにより、後述する各部(取得部11、特定部12、抽出部13、設定部14、識別部15)の機能を実現する。
【0017】
記憶部20は、ROM(Read Only Memory)、RAM(Random Access Memory)等で構成され、制御部10のCPUが実行するプログラム及び必要なデータを記憶する。記憶部20は、識別部15の学習に用いる画像データ(学習用画像データ)も記憶する。ただし、識別装置100は、学習用画像データの一部又は全部を通信部33から取得するようにしてもよい。
【0018】
画像入力部31は、学習用画像データや、ユーザから与えられる識別する(未知の)対象が撮影された画像の画像データを入力するためのデバイスである。画像入力部31は、例えばカメラであり、撮像した画像データを制御部10に入力する。識別装置100が所定の対象を識別する際に用いる画像は、色及び輝度の少なくとも一方が互いに異なる複数の領域を含む画像である。したがって、画像入力部31は、色及び輝度の少なくとも一方が互いに異なる複数の領域を含む画像を制御部10に入力する。色及び輝度の少なくとも一方が互いに異なる複数の領域には、例えば画像のエッジ部分の領域とそれ以外の他の領域が含まれる。
【0019】
なお、画像入力部31としては、制御部10が画像データを取得できるなら、カメラに限らず任意のデバイスを使用することができる。例えば、記憶部20に画像データを記憶させておき、制御部10が記憶部20から当該画像データを読み出すことによって取得する場合は、記憶部20が画像入力部31を兼ねることになる。また、制御部10が通信部33を介して外部のサーバ等から画像データを取得する場合は、通信部33が画像入力部31を兼ねることになる。
【0020】
出力部32は、制御部10が、画像識別結果等を出力するためのデバイスである。例えば、出力部32は、液晶ディスプレイや有機EL(Electro-Luminescence)ディスプレイである。ただし、識別装置100は、出力部32としてこれらディスプレイを備えてもよいし、外部のディスプレイを接続するためのインタフェースとしての出力部32を備えてもよい。識別装置100は、インタフェースとしての出力部32を備える場合は、出力部32を介して接続した外部のディスプレイに画像識別結果等を表示する。
【0021】
通信部33は、外部の他の装置(例えば、画像データのデータベースが格納されているサーバ等)とデータの送受信を行うためのデバイス(ネットワークインタフェース等)である。制御部10は、通信部33を介して画像データを取得することができる。
【0022】
操作入力部34は、識別装置100に対するユーザの操作入力を受け付けるデバイスであり、例えば、キーボード、マウス、タッチパネル等である。識別装置100は、操作入力部34を介して、ユーザからの指示等を受け付ける。
【0023】
次に、制御部10の機能について説明する。制御部10は、取得部11、特定部12、抽出部13、設定部14、識別部15の機能を実現する。
【0024】
取得部11は、画像入力部31で撮像した画像を取得する。上述したように、識別装置100が所定の対象を識別する際に用いる画像は、色及び輝度の少なくとも一方が互いに異なる複数の領域を含む画像であり、取得部11は、そのような領域を含む所定の対象(ホクロのような皮膚の診断対象部分等)を撮像した撮像画像を取得する。なお、取得部11は、撮像された撮像画像をリアルタイムで取得する必要はなく、例えば、記憶部20に記憶されている過去に撮像された撮像画像を取得してもよいし、過去に撮像されて他のサーバ等に格納されている撮像画像を通信部33で受信して取得してもよい。取得部11は、撮像画像を取得する取得手段として機能する。
【0025】
特定部12は、取得部11で取得された撮像画像における所定の対象(皮膚の診断対象部分等)を含む識別領域から、互いに異なる複数の方向に延びる線状の領域を特定する。互いに異なる複数の方向に延びる線とは、互いに異なる方向に延びる複数の線(例えば所定の対象の中心付近から放射状に延びる複数の線)や、線上の局所領域のそれぞれの方向が複数の方向を向いている線(円、楕円、螺旋等)である。ここで「線上の局所領域」とは、当該線の様々な位置における一部分(微小な線分)である。例えば特定部12は、
図2に示すように、皮膚の診断対象部分(疾患部と疑われる部分)である対象領域41を含む識別領域42内を螺旋状の曲線43が通る線状の領域を特定する。対象領域41には、色及び輝度の少なくとも一方が互いに異なる複数の領域41a、41bが含まれている。特定部12は、このような線状の領域を特定する特定手段として機能する。
【0026】
抽出部13は、特定部12で特定された線状の領域から、画素値に基づく特徴量を抽出する。より詳細には、まず抽出部13は、特定部12で特定された領域を通る螺旋状の曲線43の一方の端から他方の端にかけ、
図3に示すように、曲線43(1次元)に沿って順に画素値(RGBそれぞれの値)を取得して構成される1次元データを取得する。ここでは、画素値はRGB色空間におけるR(Red)成分、G(Green)成分及びB(Blue)成分それぞれの値で表され、取得される1次元データは
図4に示すように3チャネル分(Red、Green、Blueそれぞれ)の1次元データとなる。なお、
図4では横軸に「距離」と記載されているが、
図4の「距離」は「螺旋の一方の端点から、螺旋に沿って見たときの距離」のことである。
【0027】
そして、抽出部13は、取得したR成分、G成分及びB成分それぞれの1次元データに対して、所定の統計値(例えば、平均、分散、最大値、最小値、中央値、回帰直線(1次元データを1次関数で近似した直線であり、最小二乗法等で求められる)の傾き、回帰直線の寄与率(回帰直線がその算出時に用いたRGB各成分の1次元データにどの程度よく当てはまっているかを示す度合いであり、決定係数ともいう。)等)を計算する。また、抽出部13は、RGB成分間の差(R成分-G成分、R成分-B成分、G成分-B成分)や比(R成分/G成分、R成分/B成分、G成分/B成分)についても、同様に、それぞれの1次元データとして扱い、上述したような所定の統計値(平均、分散等)を計算する。
【0028】
そして、抽出部13は、例えば、R成分とG成分それぞれの1次元データの分散、RGB成分それぞれの1次元データの回帰直線の傾き及び寄与率、RGB成分それぞれの1次元データ同士の差(RGB成分の差(R成分-G成分、R成分-B成分、G成分-B成分))の絶対値の分散、RGB成分それぞれの1次元データ同士の比(RGB成分の比(R成分/G成分、R成分/B成分、G成分/B成分))のうちR成分/G成分及びR成分/B成分の回帰直線の傾き及び寄与率、RGB成分それぞれの1次元データの中の最大値と最小値の差(RGB成分の最大値とRGB成分の最小値との差)、の合計16の値を特徴量として抽出する。つまり、この例では、特徴量は、16次元のベクトルで表される。抽出部13は、特徴量を抽出する抽出手段として機能する。
【0029】
なお、ここでは、抽出部13が各画素値をRGB色空間におけるR成分、G成分及びB成分それぞれの値として取得するものとしたが、画素値を表す色空間はRGB色空間に限られない。例えば、YUV色空間、Lab色空間等を用いてもよい。これらの色空間はいずれも1つの画素値を3つの成分で表しているので、R成分、Y成分及びL成分を各色空間における第1成分、G成分、U成分及びa成分を各色空間における第2成分、B成分、V成分及びb成分を各色空間における第3成分、と表すことができる。
【0030】
そして、抽出部13は、特定部12で特定された線上の領域の画素値を上述した任意の色空間における第1成分、第2成分及び第3成分それぞれの1次元データとして取得し、第1成分と第2成分それぞれの1次元データの分散、第1成分と第2成分と第3成分それぞれの1次元データの回帰直線の傾き及び寄与率、1次元データ同士の差の絶対値の分散、1次元データ同士の比のうち第1成分/第2成分及び第1成分/第3成分の回帰直線の傾き及び寄与率、1次元データの最大値と最小値の差、の合計16の値のうちの少なくとも1つを特徴量として抽出してもよい。
【0031】
設定部14は、特定部12で特定された領域を通る螺旋状の曲線を規定するパラメータをランダムに設定する。このパラメータは、例えば、螺旋の種類(アルキメデスの螺旋、放物螺旋等。
図2ではアルキメデスの螺旋)、螺旋の巻き数(
図2では3巻き)、向き(
図2では内側から外側に向かって時計回り)、開始角度(
図2では識別領域42の長方形を基準にして垂直90度の方向)等である。設定部14は、螺旋状の領域の螺旋を規定するパラメータをランダムに設定する設定手段として機能する。
【0032】
識別部15は、抽出部13で抽出された特徴量を用いて所定の対象(皮膚の診断対象部分等)を識別する。具体的には、識別部15は、学習用画像データから抽出部13で抽出された特徴量を用いて機械学習されたSVMである。ここでは、識別装置100は、皮膚のホクロが良性か悪性かを識別する装置なので、識別部15は、ホクロについて良性か悪性かを識別するSVMを備える。そしてこのSVMに特徴量を入力データとして入力して得られる出力値に基づいて、識別部15は当該ホクロが良性か悪性かを識別する。つまり、SVMの出力値が良性を示す値であれば識別部15の識別結果は良性となり、SVMの出力値が悪性を示す値であれば識別部15の識別結果は悪性となる。
【0033】
なお、本実施形態では識別装置100がホクロの良性/悪性を識別するものとして説明しているが、識別装置100がホクロについて識別する内容はその良性/悪性に限られないし、識別する対象はホクロに限られない。識別装置100は、皮膚疾患の疾患名(色素性母斑(ホクロ)やメラノーマ、脂漏性角化症等)を識別してもよい。この場合、識別部15は、1対他識別を行うSVMを、識別するクラスの数だけ備える。例えば、識別装置100が色素性母斑(ホクロ)、メラノーマ及び脂漏性角化症の3つの疾患を識別する場合、識別部15は、色素性母斑(ホクロ)を識別するSVM、メラノーマを識別するSVM及び脂漏性角化症を識別するSVMの3つのSVMを備える。そして、これら3つのSVMに特徴量を入力して、最も確率の高い出力が得られたSVMに対応する疾患名が識別部15の識別結果となる。
【0034】
より一般には、識別装置100が識別する対象として例えば、A,B,C,…のn個のクラスが存在する場合、識別部15は、「A又はA以外」を識別するSVM、「B又はB以外」を識別するSVM、「C又はC以外」を識別するSVM、…というn個のSVMを備える。そして、これらn個のSVMに特徴量を入力して、最も確率の高い出力が得られたSVMに対応するクラス(A,B,C,…)が識別部15の識別結果となる。識別部15は、所定の対象(皮膚の診断対象部分等)を識別する識別手段として機能する。
【0035】
以上、識別装置100の機能構成について説明した。次に識別装置100による学習処理について、
図5を参照して説明する。この学習処理は、操作入力部34を介して、ユーザにより、識別装置100に対して学習処理の開始が指示されると開始される。
【0036】
まず、取得部11は、記憶部20から学習用画像データを取得する(ステップS101)。ステップS101は、取得ステップとも呼ばれる。次に、特定部12は、取得部11が取得した学習用画像データから、所定の対象(ホクロのような皮膚の診断対象部分等)を含む対象領域41を抽出する(ステップS102)。
【0037】
ステップS102での対象領域41の抽出は、病変領域(ここではホクロ)を学習させたFCN(Fully Convolutional Networks)のようなディープニューラルネットワーク(Deep Neural Network:DNN)等を利用して自動で行ってもよいし、対話的グラフカット等の技術を利用して半自動で行ってもよいし、ユーザが操作入力部34で対象領域41を指定する等して手動で行ってもよい。
【0038】
そして、特定部12は、抽出された対象領域41を囲む矩形である識別領域42を算出する(ステップS103)。例えば、特定部12は、
図2に示すような、抽出された対象領域41の内部の任意の2点の最大径を長径とし、当該長径に直交する方向において対象領域41が内接するように短径が定められた矩形として、識別領域42を算出する。
【0039】
次に、設定部14は、特定部12が算出した識別領域42の内部を通る螺旋を規定するパラメータ(螺旋の種類、螺旋の巻き数、向き、開始角度)として、ランダムな値を設定する(ステップS104)。例えば、螺旋の種類としては、アルキメデスの螺旋、放物螺旋等からランダムに設定する。また、螺旋の巻き数としては、例えば2~6程度の数の中からランダムに設定する。なお巻き数は任意の数に設定可能であり、上記の6よりも多い数に設定してもよい。さらに、巻き数は整数でなくてもよく、3.5巻き、3.25巻き等を設定してもよい。また、螺旋の向きとしては、時計回りか反時計回りかをランダムに設定する。なお、螺旋の開始角度は任意の角度をランダムに設定しても良いが、例えば、0度、90度、180度、270度のようにある程度の候補を決めて、その中からランダムに設定してもよい。
【0040】
そして、特定部12は、設定部14が設定した螺旋のパラメータを用いて、
図2に示すように、識別領域42の中心に螺旋の中心が略一致し、識別領域42に内接するような螺旋を定義する(ステップS105)。ステップS105は、識別領域42から、互いに異なる複数の方向に延びる線状の領域を特定するステップなので、特定ステップとも呼ばれる。なお、螺旋の中心は、識別領域42の中心に完全に一致させてもよいし、ずらしてもよい。また、螺旋の中心をずらす場合、識別領域42の中心から螺旋の中心をずらす量及び向きをランダムに設定してもよい。さらに、識別領域42の中心と螺旋の中心とをずらす量及び向きを、ステップS104で設定する「螺旋を規定するパラメータ」に加えてもよい。ずらす量及び向きを「螺旋を規定するパラメータ」に加えると、さらに多様な螺旋での学習が行われることになるので、識別部15の精度向上につながる可能性がある。
【0041】
次に、抽出部13は、
図3に示すように特定部12が定義した螺旋に沿って画素値を取得していき、
図4に示すようなRGBそれぞれについての1次元データを取得する(ステップS106)。なお、画素値の取得は、螺旋に沿って画素が変わる毎に新たな画素値を1次元データに付加する形で取得してもよいし、螺旋に沿って所定の距離を進む毎にその場所の画素値を1次元データに付加する形で取得してもよい。また、色空間としては、上述したようにRGB色空間以外の色空間(YUV色空間、Lab色空間等)を用いてもよい。RGB色空間以外の色空間を用いる場合は、抽出部13は、1次元データを取得する際に色空間の変換を行う。例えば、RGB色空間をYUV色空間に変換する場合は、抽出部13は、Y成分、U成分及びV成分それぞれについての1次元データを取得する。
【0042】
また、抽出部13は、ステップS106で取得した1次元データのサイズ(画素値の取得数)を固定長にしてもよい。固定長にする場合は、抽出部13は、1次元データを線形補間して、サイズを所定の長さに合わせる。
【0043】
そして、抽出部13は、取得した1次元データに対して、平均、分散等を計算したり、成分間の差や比についても平均、分散等を計算したりすることにより、特徴量(例えば上述した16次元のベクトル)を抽出し、当該学習用画像データに付与されている正解ラベルとともに記憶部20に格納する(ステップS107)。ステップS107は、抽出ステップとも呼ばれる。
【0044】
そして、制御部10は、ステップS104からステップS107の処理を所定回数(例えば10回)繰り返したか否かを判定する(ステップS108)。所定回数繰り返していなければ(ステップS108;No)、ステップS104に戻る。所定回数繰り返すことにより、ステップS104でランダムに設定される螺旋のパラメータのバリエーションが多くなり、ひいては、様々な形状の螺旋に沿った1次元データに基づく特徴量を抽出できるので、識別部15のSVMの学習の頑健性(ロバスト性)を高めることができる。ただし、識別部15のSVMの学習の頑健性は、学習用画像データの数を増やすことによっても高めることができる。したがって、学習用画像データを非常に多く(例えば1万以上)用意できる場合には、ステップS108で所定回数の繰り返しを行わなくてもよい(ステップS108の処理はスキップして、すぐにステップS109に進んでもよい)。
【0045】
所定回数繰り返したら(ステップS108;Yes)、制御部10は、当該学習用画像データ中の全ての対象領域について、ステップS103からステップS108の処理を行ったか否かを判定する(ステップS109)。これは、1枚の学習用画像データの中に複数の対象領域が存在する場合に、全ての対象領域について学習用の特徴量を抽出するためである。全ての対象領域について、ステップS103からステップS108の処理を行っていなければ(ステップS109;No)、ステップS103に戻る。
【0046】
全ての対象領域について、ステップS103からステップS108の処理を行ったら(ステップS109;Yes)、制御部10は、全ての学習用画像データについて特徴量抽出を行ったか否かを判定する(ステップS110)。まだ全ての学習用画像データについて特徴量抽出を行っていなければ(ステップS110;No)、ステップS101に戻る。
【0047】
全ての学習用画像データについて特徴量抽出を行ったら(ステップS110;Yes)、ステップS107で記憶部20に格納した特徴量及び正解ラベルを用いて、識別部15のSVMを学習させ(ステップS111)、学習処理を終了する。なお、
図5に示すフローチャートは一例に過ぎず、学習効率や識別性能を向上させるために処理順序や処理内容を変更してもよい。
【0048】
以上、学習処理について説明した。次に、以上の学習処理により学習された識別部15(SVM)を用いて、画像識別を行う識別処理について、
図6を参照して説明する。この識別処理は、操作入力部34を介して、ユーザにより、識別装置100に対して識別処理の開始が指示されると開始される。
【0049】
まず、取得部11は、識別する画像(識別画像)を画像入力部31等から取得する(ステップS201)。ステップS201は、取得ステップとも呼ばれる。例えば、ユーザが識別させたい画像を画像入力部31で撮像することにより、取得部11は識別画像を取得する。
【0050】
次に、特定部12は、取得部11が取得した識別画像から、所定の対象(ホクロのような皮膚の診断対象部分等)を含む対象領域41を抽出する(ステップS202)。ステップS202での対象領域41の抽出も、上述のステップS102での抽出と同様、自動、半自動、手動のいずれで行ってもよい。
【0051】
次に、特定部12は、抽出された対象領域41を囲む矩形である識別領域42を算出する(ステップS203)。例えば、特定部12は、
図2に示すような、抽出された対象領域41の内部の任意の2点の最大径を長径とし、当該長径に直交する方向において対象領域41が内接するように短径が定められた矩形として、識別領域42を算出する。
【0052】
そして、特定部12は、算出した識別領域42の内部を通る螺旋を規定するパラメータ(螺旋の種類、螺旋の巻き数、向き、開始角度)として典型的な値(例えば、
図2に示すような、螺旋の種類:アルキメデスの螺旋、巻き数:3、向き:時計回り、開始角度:垂直90度方向)を設定し、設定したパラメータを用いて、識別領域42の中心を螺旋の中心とし、識別領域42に内接するような螺旋を定義する(ステップS204)。ステップS204は、識別領域42から、互いに異なる複数の方向に延びる線状の領域を特定するステップなので、特定ステップとも呼ばれる。なお、ステップS204で、特定部12は、螺旋を規定するパラメータとして典型的な値を設定する代わりに、このパラメータをランダムに設定してもよい。
【0053】
そして、抽出部13は、
図3に示すように特定部12が定義した螺旋に沿って画素値を取得していき、
図4に示すようなRGBそれぞれについての1次元データを取得する(ステップS205)。ステップS205は1次元データ取得ステップとも呼ばれる。また、ステップS205では、抽出部13は1次元データ取得手段として機能する。なお、この時の画素値の取得単位や、用いる色空間については、学習処理(
図5、ステップS106)で行ったものに合わせる。また、学習処理で1次元データのサイズを固定長にしていた場合は、抽出部13は、ここで1次元データを線形補間して、サイズを学習処理時と同じ所定の長さに合わせる。
【0054】
そして、抽出部13は、取得した1次元データに対して、平均、分散等を計算したり、成分間の差や比についても平均、分散等を計算したりすることにより、特徴量(例えば上述した16次元のベクトル)を抽出する(ステップS206)。
【0055】
そして、識別部15は、
図5の学習処理により学習済みのSVMにステップS206で抽出された特徴量を入力することにより、ステップS202で抽出された対象領域に含まれる所定の対象(ホクロ)の識別を行う(ステップS207)。ステップS207は、識別ステップとも呼ばれる。そして、制御部10は、識別部15が識別した結果、すなわち当該ホクロが良性のホクロなのか悪性のホクロなのかを出力部32に出力し(ステップS208)、識別処理を終了する。
【0056】
以上、識別処理について説明した。以上説明したように、第1実施形態に係る識別装置100は、画像から特徴量を抽出する際に1次元データを用いるため、2次元の画像データを直接扱う場合と比較して処理負荷を削減することができる。つまり、識別装置100は、外部のコンピュータリソースを使用しなくても、識別装置100だけで高速に画像識別を行うことができる。したがって、識別装置100は、クラウドでの処理(インターネット上のサーバ等のコンピュータリソース)を使用できない場合や、多数の画像を識別する必要がある場合(例えば画像スクリーニング等)や、リアルタイムに識別する必要がある場合等にも使用することができる。
【0057】
また、識別装置100では、1次元データを取得する際の線(螺旋)のパラメータを変えることにより、2次元画像を直接学習する場合に比べ、1つの画像からより多くの学習データ(1次元データ)を取得できるので、学習用に準備する画像データの総数を少なめに抑えることができる。
【0058】
なお、上記の第1実施形態では、SVMにより線形識別を行っているが、学習処理(
図5)のステップS111及び識別処理(
図6)のステップS207で、カーネル法を使って非線形識別に対応させたSVMを用いること等により、非線形識別を行うこともできる。また、特徴量の各次元に閾値を設定して、当該次元の要素が閾値以上か未満かによって、特徴量を二値のベクトルで表し、この二値のベクトルによる演算結果の非線形スコアリングにより識別を行ってもよい。
【0059】
(第2実施形態)
第1実施形態に係る識別装置100は、予め定義された特徴量を用いてSVMで識別を行った。しかし、コンボリューショナルニューラルネットワーク(Convolutional Neural Network:CNN)等のDNNを上述した1次元データに適用すれば、事前に特徴量(特徴量のベクトルを構成する各要素の算出方法等)を定義しなくても識別することができるようになる。このような第2実施形態に係る識別装置101について、説明する。
【0060】
第2実施形態に係る識別装置101の機能構成は、
図1に示す第1実施形態に係る識別装置100と同じだが、識別部15はSVMではなくCNNであり、抽出部13は識別部15のCNNの内部の重み等を更新することによりCNNを機械学習させる。その結果、抽出部13は、CNNの出力値やCNN内部の特徴マップを、特徴量として抽出できるようになる。
【0061】
ここで、第2実施形態に係る識別装置101で用いるCNNについて説明する。CNNは、人間の視覚野の神経細胞の働きを模倣したニューラルネットワークであり、通常は2次元の画像データを直接扱って、画像識別等を行う。しかし、第2実施形態に係るCNNは、
図7に示すように、RGB(3チャネル)の1次元データを入力データとして入力して、1次元データのまま処理を行ってNクラス識別を行う1次元コンボリューショナルニューラルネットワークである。
【0062】
図7に示すように、第2実施形態に係るCNNは、RGBの1次元データが入力される入力層111に対して、1次元のまま畳み込み処理(フィルタの走査)やプーリング処理(ウィンドウの走査)を行って徐々にサイズの小さな特徴マップ112,113,114,115,116,117を算出していき、最終的に出力層118から、N次元の出力ベクトルを得る。
図7に示す例では、入力された1次元データに対して、畳み込み処理用のフィルタ121,123,124,125やプーリング処理用のウィンドウ122,126を、横にストライド2で走査することによって、徐々にサイズの小さな特徴マップを算出し、最終的な出力を得ている。なお、「ストライド2で走査する」とは、画素又は特徴マップを構成する要素を1つ飛ばしで走査することをいう。
【0063】
フィルタ121,123,124,125の各要素には、重み係数が割り当てられており、同一チャネル数の入力1次元データ又は特徴マップの上を横方向に走査することにより、入力1次元データ又は特徴マップの各注目点において、スカラ値の内積結果が出力され、新たな特徴マップが得られる。そして、フィルタを複数枚(n枚)適用することにより、その枚数分(nチャネル)の特徴マップが得られる。また、ストライド2で走査する度に、特徴マップの横方向のサイズは1/2のサイズになる。この結果、後段に行くに従い、より大局的な特徴抽出が行われる(フィルタサイズは、特徴マップサイズに対して相対的に拡大する)ことになる。
【0064】
図7に示す例では、CNNの中間層の最終層(特徴マップ117)と、出力層118とは重み係数が割り当てられた全結合接続127で接続されており、通常のニューラルネットと同様に重み付け加算が行われる。CNNの中間層の最終層は、出力層118と全結合接続127で接続していることから、全結合層とも呼ばれる。この例では、Nクラスの識別を行うので、出力層118はN個の素子(若しくはユニット)を持ち、その素子の値の大小により、推定した識別の確率の大小が表現される。
【0065】
CNNでは、全結合接続127の各結合に割り当てられている重み係数や、上記フィルタ121,123,124,125の重み係数を、予め用意した学習データを用いて取得することができる。具体的には、まず、学習データを入力画像として入力層111に入力し、順方向伝播させて出力層118から出力結果を得る。そして、抽出部13は、その出力結果と正解(入力した学習データに付与されている正解ラベル)との違い(誤差)を求め、誤差逆伝播法を用いて、誤差を減らす方向に重み係数を更新する。この操作を、学習率(誤差逆伝播法における重み係数の更新量)を下げながら繰り返し実行することにより、重み係数の値を収束させる。
【0066】
CNNの各重み係数を学習データで学習させた後は、未知の画像データを入力画像データとして順方向伝播させることで、出力層118に入力画像に基づく識別の推論値である出力結果が得られる。この出力結果が識別部15の識別結果となる。
【0067】
以上、識別装置101の識別部15が備える1次元CNNの概要を説明した。なお、
図7に示すCNNは1次元CNNの一例に過ぎない。入力層に1次元データを入力し、1次元データのまま処理を行うCNN(1次元CNN)であれば、識別装置101は、任意の1次元CNNを用いることができる。
【0068】
次に、識別装置101が行う学習処理について、
図8を参照して説明する。この学習処理は、操作入力部34を介して、ユーザにより、識別装置101に対して学習処理の開始が指示されると開始される。
【0069】
まず、抽出部13は、識別部15のCNNの全ての重みパラメータを初期化する(ステップS301)。次のステップS302からステップS307までは、第1実施形態の学習処理(
図5)のステップS101からステップS106までの処理と同じであるので、説明を省略する。
【0070】
そして、抽出部13は、ステップS307で取得した画素値(使用する色空間に応じて、RGB、YUV、Lab等)それぞれについての1次元データを、線形補間によりリサンプリングして、サイズを識別部15のCNNの入力層のサイズ(
図7に示す例では224)に合わせる(ステップS308)。
【0071】
次に、抽出部13は、リサンプリングした1次元データを識別部15のCNNに入力し(ステップS309)、CNNの出力値を得る。そして、抽出部13は、CNNの出力値と、当該学習用画像データに付与されている正解ラベルとから、誤差を計算し(ステップS310)、記憶部20に格納する。
【0072】
そして、制御部10は、当該学習用画像データ中の全ての対象領域について、ステップS304からステップS310の処理を行ったか否かを判定する(ステップS311)。これは、1枚の学習用画像データの中に複数の対象領域が存在する場合に、全ての対象領域についてCNNに入力して学習させるためである。全ての対象領域について、ステップS304からステップS310の処理を行っていなければ(ステップS311;No)、ステップS304に戻る。
【0073】
全ての対象領域について、ステップS304からステップS310の処理を行ったら(ステップS311;Yes)、制御部10は、ステップS302からステップS311の処理を所定の学習用画像データ数(バッチサイズともいい、例えば50)回繰り返したか否かを判定する(ステップS312)。所定の学習用画像データ数回繰り返していなければ(ステップS312;No)、ステップS302に戻る。このバッチサイズ分の繰り返しの処理のことをミニバッチという。
【0074】
所定の学習用画像データ数回繰り返したら(ステップS312;Yes)、抽出部13は、それまでにステップS310で記憶部20に格納された誤差の平均値に基づいて、識別部15のCNNの重みパラメータを更新する(ステップS313)。ステップS313により、CNNの内部に学習用画像データの特徴量が抽出されると考えることができるので、ステップS313も抽出ステップと呼ばれる。そして、制御部10は、ステップS302からステップS313の処理を所定の回数(例えば、学習用画像データ数をバッチサイズで割った値を所定数(エポック数ともいい、例えば100)倍した回数)繰り返したか否かを判定する(ステップS314)。
【0075】
ステップS302からステップS313の処理を所定の回数繰り返していなければ(ステップS314;No)、ステップS302に戻る。所定の回数繰り返したら(ステップS314;Yes)、学習処理を終了する。なお、第2実施形態の学習処理(
図8)では、第1実施形態の学習処理(
図5)と比較して、処理を繰り返す際の判定内容や処理を繰り返す位置が少し異なる。これは、CNNの学習の際は、同一のミニバッチ内で同じ学習用画像データを対象に学習を繰り返し行うと過学習になる場合があるためである。しかし、
図8に示すフローチャートは一例に過ぎず、学習効率や識別性能を向上させるために処理順序や処理内容が変更されてもよい。例えば、第2実施形態の学習処理(
図8)においても、第1実施形態の学習処理(
図5)のステップS108と同様に、ステップS305からステップS310までの処理を所定回数繰り返してもよい。ステップS305において、螺旋のパラメータを毎回ランダムに変更しているため、同じ学習用データを繰り返し用いても過学習にならずに、識別性能の向上に寄与する可能性があるからである。
【0076】
以上、学習処理について説明した。次に、以上の学習処理により学習された識別部15(CNN)を用いて、画像識別を行う識別処理について、
図9を参照して説明する。この識別処理は、操作入力部34を介して、ユーザにより、識別装置101に対して識別処理の開始が指示されると開始される。
【0077】
ステップS401からステップS405までは、第1実施形態の識別処理(
図6)のステップS201からステップS205までの処理と同じであるので、説明を省略する。そして、抽出部13は、ステップS405で取得した画素値(使用する色空間に応じて、RGB、YUV、Lab等)それぞれについての1次元データを、線形補間によりリサンプリングして、サイズを識別部15のCNNの入力層のサイズに合わせる(ステップS406)。
【0078】
次に、抽出部13は、リサンプリングした1次元データを識別部15のCNNに入力する(ステップS407)。すると、識別部15は、CNNの出力値を識別結果として取得する(ステップS408)。ステップS408は、識別ステップとも呼ばれる。そして、制御部10は、識別部15が識別した結果を出力部32に出力し(ステップS409)、識別処理を終了する。
【0079】
以上、識別処理について説明した。以上説明したように、第2実施形態に係る識別装置101は、1次元データをCNNに入力するだけで、CNNが自動的に特徴量を抽出する。したがって、識別装置100と異なり、予め特徴量(特徴量のベクトルを構成する各要素の算出方法等)を定義しておく必要がない。
【0080】
また、識別装置101では、CNNに入力するデータは1次元データなので、通常の2次元データを扱うCNNと比較して処理負荷を削減することができる。つまり、識別装置101は、外部のコンピュータリソースを使用しなくても、識別装置101だけで高速に画像識別を行うことができる。したがって、識別装置101は、識別装置100と同様、クラウドでの処理(インターネット上のサーバ等のコンピュータリソース)を使用できない場合や、多数の画像を識別する必要がある場合(例えば画像スクリーニング等)や、リアルタイムに識別する必要がある場合等にも使用することができる。
【0081】
また、識別装置101は、識別装置100と同様、1次元データを取得する際の線(螺旋)のパラメータを変えることにより、2次元画像を直接学習する場合に比べ、1つの画像からより多くの学習データ(1次元データ)を取得できるので、学習用に準備する画像データの総数を少なめに抑えることができる。
【0082】
また、通常の2次元のCNNでは、学習データの不足を補うため、膨大な一般画像認識用のデータセット(例えばImageNet)を用いて学習した結果に基づく転移学習を利用することが多い。しかし、識別装置101のCNNは、
図7に示すように、1次元の特徴マップ、フィルタ、ウィンドウ等で構成されるため、CNNの内部パラメータの数が少なく、転移学習を行わなくてもある程度の性能を出すことができる。つまり、学習用画像データの数や、学習時間を抑えることができる。
【0083】
特に、悪性腫瘍の画像識別においては、局所的な輝度や色の不連続性の分布評価が重要である一方、2次元CNNで考慮されるような局所特徴同士の位置関係はあまり重要ではない。したがって、識別装置101のCNNは、通常の2次元CNNと比較して、少ないパラメータ数で必要十分な情報を抽出することができる。
【0084】
なお、識別装置101の識別部15はDNNとしてCNNを用いたが、CNNの代わりにRNN(Recurrent Neural Network)等の非固定長のデータを入力可能なDNNを用いてもよい。この場合、学習処理(
図8)のステップS308や、識別処理(
図9)のステップS406のリサンプリングは行わなくてもよくなる。
【0085】
なお、CNN等のDNNを用いて特徴量を抽出する場合、学習処理は上述の学習処理(
図8)と同様に行うことができ、特徴量抽出処理も、ステップS408,S409を除けば、上述の識別処理(
図9)と同様に行うことができる。特徴量抽出処理では、ステップS408の代わりに、CNNの出力層118の値や、CNNの中間層の特徴マップ(出力層の直前の特徴マップ(
図7では、特徴マップ117)が望ましい)の値を、特徴量として抽出すればよい。
【0086】
また、CNNの出力層118の値を特徴量ベクトルとし、当該特徴量ベクトルを利用した距離学習の手法で画像の特徴量を抽出してもよい。この場合、当該特徴量は識別だけで無く、類似検索にも適する特徴量となる。
【0087】
(第3実施形態)
上述の実施形態では、螺旋のパラメータについて、学習処理においてはランダムに決定し、識別処理においては典型的な値に設定していた。しかし、このように設定された螺旋のパラメータは、識別に有効なパラメータとあまり有効でないパラメータとが入り混じった状態になっていると考えられる。そこで、螺旋のパラメータについて、有効なパラメータを探索する第3実施形態について、説明する。
【0088】
なお、螺旋のパラメータは、学習処理で決定されるパラメータ(例えば、抽出部13が抽出する特徴量やCNNの内部の重み等)ではないため、ハイパーパラメータと呼ばれる。また、有効なハイパーパラメータを探索する手法(ハイパーパラメータ最適化手法)としては、グリッドサーチ、ランダムサーチ、ベイズ最適化等が知られているが、第3実施形態ではこれらのうち、ランダムサーチを用いることとする。
【0089】
第3実施形態に係る識別装置102の機能構成は、
図10に示すように、第1実施形態に係る識別装置100又は第2実施形態に係る識別装置101の機能構成に、活性スコア取得部16及び評価部17が追加された機能構成である。なお、識別部15としては、SVMを用いてもCNNを用いてもよい。
【0090】
また、第3実施形態に係る識別装置102には、学習処理によって学習された識別部15の識別精度を評価するためのテストデータ(評価用の、画像データと正解ラベルの組)を複数含むテストデータセット(テストデータの集合)が与えられている。識別装置102は、このテストデータセットを用いて、何種類もある螺旋のパラメータの中から識別に有効なパラメータを探索する。したがって、このテストデータセットとして、識別装置102で識別する対象に応じたものを与えるのが望ましい。例えば、皮膚の診断対象部分を識別装置102で識別させる場合、テストデータセットとして、皮膚疾患の画像データとその正解ラベルの組の集合を用いるようにする。
【0091】
活性スコア取得部16は、縦方向と横方向とからなる2次元の画像データが入力される2次元のCNNを備え、この2次元CNNを用いて、入力された画像データの各画素が識別に及ぼす影響の大きさを示す影響度を表した活性化マップを取得する。そして、取得した活性化マップ上で、螺旋の曲線に沿って得られる各画素の値(影響度)に基づいて、当該螺旋を生成する際に用いた螺旋のパラメータの活性スコアを取得する。螺旋のパラメータの活性スコアとは、当該螺旋のパラメータによって得られる螺旋上の画素が識別に及ぼす影響の大きさ示す値であり、後述する活性スコア算出処理によって算出される。
【0092】
評価部17は、選択された螺旋のパラメータの評価値である評価スコアを算出する。評価スコアは、当該螺旋のパラメータに基づいて学習した識別部15の識別精度(及び活性スコア取得部16が取得した活性スコア)に基づいて、識別部15による識別における当該螺旋のパラメータの適正度を評価した値である。したがって、評価スコアが高い螺旋のパラメータを用いれば、識別部15の識別精度が高くなると考えられる。評価部17は、評価手段として機能する。
【0093】
識別装置102が行う学習処理は、第1実施形態及び第2実施形態の学習処理(
図5、
図8)と同じ処理であるので、説明を省略する。
【0094】
また、識別装置102が行う識別処理は、第1実施形態及び第2実施形態の識別処理(
図6、
図9)と、螺旋を定義する処理(
図6のステップS204、
図9のステップS404)を除き、同じ処理である。第3実施形態の螺旋を定義する処理では、特定部12は、次に説明する最適パラメータ選択処理によって選択された螺旋のパラメータを用いて螺旋を定義する。
【0095】
したがって、操作入力部34を介して、ユーザにより、識別装置102に対して識別処理の開始が指示されると、識別処理が開始されるが、識別処理の螺旋を定義する処理の直前で最適パラメータ選択処理が開始され、最適パラメータ選択処理の終了後に識別処理の螺旋を定義する処理以降が実行される。
【0096】
なお、識別処理の開始とともに、最適パラメータ選択処理を並行して実行するようにしてもよい。また、識別処理が開始される前に、例えばユーザにより識別装置102に対して最適パラメータ選択処理の開始が指示されると、事前に最適パラメータ選択処理が実行されるようにしてもよい。このようにすれば、識別処理の螺旋を定義する処理においては、特定部12は、事前に実行された最適パラメータ選択処理によって選択されていた螺旋のパラメータを用いて螺旋を定義することができるので、識別処理の途中で(又は識別処理と並行に)最適パラメータ選択処理を実行する必要がなくなる。
【0097】
識別装置102が行う最適パラメータ選択処理について、
図11を参照して説明する。まず、制御部10は、螺旋のパラメータ(螺旋の種類、巻き数、向き、角度)をランダムに選択する(ステップS501)。この処理は、実施形態1に係る学習処理(
図5)のステップS104における螺旋パラメータの設定と同様の処理である。
【0098】
次に、活性スコア取得部16は、ステップS501で選択された螺旋のパラメータの活性スコアSmを算出する(ステップS502)。この処理(活性スコア算出処理)の詳細は後述する。
【0099】
次に、制御部10は、ステップS502で算出された活性スコアSmが閾値未満であるか否かを判定する(ステップS503)。閾値未満なら(ステップS503;Yes)、ステップS501に戻る。
【0100】
閾値を超えているなら(ステップS503;No)、制御部10は、学習処理を行う(ステップS504)。この学習処理は、第1実施形態及び第2実施形態の学習処理(
図5、
図8)と同様の処理である。ただし、螺旋のパラメータをランダムに設定する処理(
図5のステップS104、
図8のステップS305)においては、設定部14は、螺旋のパラメータを、完全にランダムに設定するのではなく、ステップS501で選択された螺旋のパラメータの値を中心として、少しだけ変更する程度にとどめる。
【0101】
具体的には、ステップS501で選択された螺旋のパラメータのうち、螺旋の種類は変更しない。また、他のパラメータ(螺旋の巻き数、向き、開始角度)は、ステップS501で選択されたパラメータを中心とした一定の値の範囲で設定されるようにする。ステップS501で選択するパラメータ(最適化用パラメータ)は、螺旋のパラメータの全てを様々に変更することで、最適なパラメータを探索するためのものである。これに対し、学習処理のステップS104(又はステップS305)で設定されるパラメータは、ステップS501で選択されたパラメータに対応する学習データを疑似的に増やすためのものなので、螺旋の種類を変えずに、識別領域42の中を通る場所を変えるようなパラメータが設定されるのが望ましいからである。
【0102】
次に、評価部17は、ステップS501で選択された螺旋のパラメータ(評価用パラメータ)を、ステップS504で学習された識別部15の識別精度に基づいて評価する(ステップS505)。具体的には、評価部17は、テストデータセットに含まれる各テストデータに対して、上記の螺旋のパラメータ(評価用パラメータ)を用いて特定される螺旋上の領域である評価用線状領域から1次元データを取得する。そして、評価部17は、取得した1次元データに基づいて識別部15にテストデータにおける診断対象部分を識別させて識別精度Sa(正解数/テストデータ数)を算出する。そして評価部17は、算出した識別精度Saを評価スコアSとする。なお、1つのテストデータの画像データ中に診断対象部分が複数ある場合には、評価部17は、診断対象部分のそれぞれを識別し、(正解数/全てのテストデータの診断対象部分の和)を識別精度Saとして算出してもよい。
【0103】
また、評価部17は、識別精度Saだけでなく、ステップS502で算出した活性スコアSmも用いて、以下の式(1)で評価スコアSを求めてもよい。ここで、λは0.0<λ<1.0となる任意の数であり、識別精度Saと活性スコアSmとで加重平均を求めるために設定される。
S=(1-λ)Sm+λSa …(1)
【0104】
さらに、評価部17は、識別精度Saや活性スコアSmだけでなく、螺旋のパラメータを評価する他の評価値を求め、識別精度Saや活性スコアSmに代えて、又は、識別精度Saや活性スコアSmとともに、当該他の評価値を用いて評価スコアSを求めてもよい。
【0105】
そして、制御部10は、ステップS501~ステップS505を所定回数繰り返し行ったか否かを判定する(ステップS506)。所定回数繰り返していなければ(ステップS506;No)、ステップS501に戻る。所定回数繰り返したなら(ステップS506;Yes)、制御部10は、ステップS505で最も高い評価スコアSが得られたときの螺旋のパラメータ(最高評価パラメータ)を最適パラメータとして選択し(ステップS507)、処理を終了する。ステップS507において、制御部10は、パラメータ選択手段として機能する。
【0106】
なお、上述の最適パラメータ選択処理(
図11)では、ステップS502で算出した活性スコアが閾値未満の場合には、すぐにステップS501に戻って螺旋のパラメータを選択し直している。しかし、活性スコアが低ければ確実に識別精度Saが低くなるとは言い切れない場合も考えられる。そのような場合に備えて、ステップS503の処理をスキップし、活性スコアの値によらずに学習処理を行って、学習結果を評価してもよい。
【0107】
次に、最適パラメータ選択処理のステップS502で実行される活性スコア算出処理について、
図12を参照して説明する。
【0108】
まず、制御部10は、活性スコア取得部16が備えている2次元のCNNを、記憶部20に記憶されている学習用画像データを用いて学習させる(ステップS551)。具体的には、学習用画像データを入力した2次元CNNから出力される値が当該学習用画像データに付与されている正解ラベルに近づくように、2次元CNNの内部の重みを修正する処理を所定回数(例えば学習用画像データの数だけ)繰り返すことによって、2次元CNNを学習させる。次に、制御部10は、テストデータをカウントするための変数iを1に初期化する(ステップS552)。
【0109】
そして、活性スコア取得部16は、i番目のテストデータの画像データの活性化マップMiを取得する(ステップS553)。なお、ここでは活性化マップとして、CAM(Class Activation Mapping)を取得することを想定しているが、それ以外の活性化マップ(例えば、Grad-CAM(Gradient-weighted Class Activation Mapping)、Guided Grad-CAM等)を取得してもよい。ただし、いずれの場合も、活性化マップMiの各画素値は、0以上1以下に正規化されているものとする。すなわち、当該画素が識別に全く影響を及ぼさないなら0であり、影響を及ぼす度合が大きいほど1に近い値であるものとする。
【0110】
次に、活性スコア取得部16は、取得した活性化マップMiの上で、最適化パラメータ選択処理(
図11)のステップS501で選択された螺旋のパラメータを用いて螺旋を描き、その螺旋に沿って画素値を取得していき、取得した画素値を平均した値Smiを取得する(ステップS554)。
【0111】
そして、制御部10は、変数iに1を加算し(ステップS555)、変数iがテストデータ数よりも大きいか否かを判定する(ステップS556)。変数iがテストデータ数以下なら(ステップS556;No)、ステップS553に戻り、ステップS553~ステップS555を、変数iがテストデータ数よりも大きくなるまで繰り返す。
【0112】
そして、変数iがテストデータ数よりも大きくなると(ステップS556;Yes)、それまでに取得されたテストデータ数分のSmiを平均することによって、活性スコアSmを算出して取得する(ステップS557)。また、活性スコア算出処理を終了して、最適パラメータ選択処理のステップS503から処理を進める。
【0113】
なお、上述のステップS551ではテストデータの画像データをそのまま用いて2次元CNNを(通常の2次元CNN学習処理で)学習させることを想定しており、上述のステップS553では、活性化マップの作成は、テストデータの画像データ1つに対して1つの活性化マップ(通常の活性化マップ)を取得することを想定している。
【0114】
このようにテストデータの画像データをそのまま用いるのに代えて、
図5や
図8で説明した学習処理のように、画像データから診断対象部分を含む矩形領域を2次元CNNの学習用及び活性化マップ作成用として切り出してもよい。この場合、上述のステップS551では、このように切り出した各矩形領域のサイズを2次元CNNのサイズに正規化したものを用いて2次元CNNを学習させてもよい。また、上述のステップS554では、このように切り出した各矩形領域についてそれぞれ1つの活性化マップを取得するようにしてもよい。画像データ全体における診断対象部分の面積の割合が小さい場合には、矩形領域を切り出して2次元CNNの学習や、活性化マップの取得を行った方が、活性スコアの算出精度が上がると考えられる。また、画像データをそのまま用いる場合と矩形領域を切り出す場合とでそれぞれ活性スコアを算出し、その平均値に基づいて螺旋のパラメータを評価してもよい。
【0115】
以上説明した最適パラメータ選択処理により第3実施形態に係る識別処理では、評価スコアが最も高い螺旋のパラメータ(最高評価パラメータ)で定義された螺旋を用いて識別が行われるので、識別装置102の識別精度を高めることができる。
【0116】
評価スコアとしては、テストデータセットに対する識別部15の識別精度Saを用いることで、テストデータと性質の近い識別対象について識別精度を向上させる可能性が高い螺旋のパラメータを選択することができる。また、識別精度Saの算出には時間がかかるが、評価スコアとして活性スコアSmを用いることで、比較的短時間で識別精度向上に有効と考えられる螺旋のパラメータを選択することができる。
【0117】
なお、上述の最適パラメータ選択処理では、ハイパーパラメータ最適化手法の中で、ランダムサーチを用いてパラメータの探索を行ったが、他の手法を用いてもよい。例えば、グリッドサーチを用いるなら、ステップS501の処理において、螺旋のパラメータをランダムに選択する代わりに、全てのパラメータの全ての組合せを1つ1つ順番に選択していくことになる。
【0118】
また、上述の最適パラメータ選択処理(
図11)では、評価部17は、活性スコアSmと識別精度Saの両方を算出しているが、必ずしもこの両方を算出しなければいけないわけではない。評価部17は、最適パラメータ選択処理において、活性スコアSmと識別精度Saのどちらか一方の値を算出し、算出した値を評価スコアSとしてもよい。活性スコアSmを評価スコアSとする場合、最適パラメータ選択処理のステップS504はスキップでき、ステップS505で評価部17は、ステップS502で算出された活性スコアSmを評価スコアSとして螺旋のパラメータを評価する。
【0119】
なお、上述の最適パラメータ選択処理は、識別処理の際の螺旋のパラメータとして、最適なパラメータを選択するための処理として説明した。しかし、第2実施形態の識別処理を特徴抽出処理として用いる場合にも用いることができる。この場合、特定部12は、螺旋を定義する処理(
図9のステップS404)において、最適パラメータ選択処理で選択された螺旋のパラメータを用いて螺旋を定義する。
【0120】
(変形例)
上記の実施形態では、画素値に基づく1次元データを取得する際の「互いに異なる複数の方向に延びる線」として螺旋状の曲線を採用した。螺旋は、連続した線状領域を長くとることができるので、大域的な特徴を捉えることが可能で、しかも(断点がない分だけ)多くの局所特徴を捉えることが可能だからである。しかし、「互いに異なる複数の方向に延びる線」を、螺旋状の曲線に限る必要はない。
【0121】
例えば、識別領域の中心付近から放射状に延びる複数の直線、識別領域内の任意の(ランダムな)2点間を結ぶ複数の直線、識別領域の中心付近を中心とする同心楕円(同心円を含む)等を用いてもよい。これらの線の場合、線が複数となるが、複数の線をつなげて1つの長い線として1次元データとするのではなく、各線をつなげずに(RGB等と同様に)それぞれ別のチャネルの1次元データとして扱うようにするのが望ましい。これらは、1つの螺旋とは異なり、連続した線ではないので、連続している部分のみを1チャネル分の1次元データとした方が各線に存在する特徴をうまく捉えることができると考えられるからである。
【0122】
螺旋や上述した放射状に延びる複数の直線、ランダムな複数の直線、同心楕円等は、線上の局所領域の方向が複数の方向を向いているため、識別対象の回転に対してロバストであり、識別対象に存在する特徴を見逃しにくいという特長がある。また、ダーモスコピー診断においては、平行する構造特徴を利用する場合があるが、上述した種々の線は、複数の方向を持つことにより、このような構造特徴を見逃すことなく捉えることができるという特長がある。また、特に、螺旋及び同心楕円は、ダーモスコピー画像において、疾患領域の輪郭等の特徴に合う円周方向の特徴をとらえやすいという特長がある。
【0123】
上述した「互いに異なる複数の方向に延びる線」(螺旋状の曲線に限らない)を用いる場合、例えば、学習処理(
図5)のステップS104では、設定部14は、上述の「互いに異なる複数の方向に延びる線」(螺旋状の曲線に限らない)を規定するパラメータをランダムに設定する。そして、ステップS105では、特定部12は、設定部14が設定したパラメータを用いて、識別領域42の中心付近から識別領域42内において延ばした「互いに異なる複数の方向に延びる線」を定義する。そして、ステップS106では、抽出部13は、特定部12が定義した当該「互いに異なる複数の方向に延びる線」に沿って画素値を取得する。これらの処理は、学習処理(
図8)のステップS305~S307、識別処理(
図6)のステップS204~S205、識別処理(
図9)のステップS404~S405、においても同様である。
【0124】
また、上述の最適パラメータ選択処理(
図11)では、ステップS501で制御部10は、螺旋のパラメータをランダムに選択しているが、これは一例である。「互いに異なる複数の方向に延びる線」として螺旋状の曲線以外の線を用いる場合は、ステップS501で、制御部10は、そのような線を規定するパラメータをランダムに選択してもよい。この場合、活性スコア算出処理(
図12)のステップS554では、活性スコア取得部16は、ステップS501で選択されたパラメータで規定された「互いに異なる複数の方向に延びる線」に沿って画素値を取得していき、取得した画素値を平均した値Smiを取得する。これにより、ステップS507で、制御部10は、螺旋以外のパラメータについても、最も高い評価スコアSが得られたときのパラメータを最適パラメータとして選択できるようになる。
【0125】
上述の実施形態では、識別部15のモデルとして、SVMやCNNを用いて説明したが、これらの代わりに、決定木等を用いてもよい。また、第3実施形態では、活性化マップとしてCNNのCAM、Grad-CAM、Guided Grad-CAMを例示したが、活性スコア取得部16が用いる活性化マップはこれらに限定されない。例えば、活性スコア取得部16は、RNNの活性化マップを取得してもよいし、Saliency Mapを活性化マップとして取得してもよい。Saliency Mapを活性化マップとして取得する場合、活性化マップMiの各画素値は、各画素値で構成される画像を見た人間の視線が向く確率に応じて、0以上1以下の値を取る。すなわち、当該画素に全く人間の視線が向かないなら0であり、人間の視線が向く確率が高いほど1に近い値であるものとする。また、Saliency Mapを活性化マップとして取得する場合には、本発明における所定の対象が、人間の目につきやすい対象、例えば、構造物の錆や、青果の腐敗部分、識別装置で識別される商品などといった対象であるときに、本発明による効果をより有効に得ることができる。
【0126】
(画像データの変形例)
また、上述の実施形態及び変形例において、画像入力部31が取得する画像データは、通常の可視光画像に限られない。撮影時に診断対象部分に照射する光としては、白色光(可視光の各波長の光が均等に混じった光。)、紫色付近の可視光と紫外光(非可視光)とを含む波長域の光(例えば、波長が320nm~440nm、好ましくは、405nmの光。)、近赤外光を含む赤外光(例えば、波長が750nm~1000nm、好ましくは、945nmの光。)及びこれらを混合した光のいずれを用いてもよい。また、診断対象部分からの光(上述の光を照射したときに診断対象部分で反射した光、及び、照射した光により診断対象部分で発生した蛍光光)を画像入力部31の受光デバイスで受光する際も、これらの複数の種類の光(可視光、紫外光、赤外光)のいずれか又はこれら複数の光の任意の組合せを受光して画像データを取得することができる。
【0127】
例えば、紫外光を照射した診断対象部分からの紫外光を受光して得られる紫外線画像では、皮膚のしみを観察することができる。また、赤外光を照射した診断対象部分からの赤外光を受光して得られる赤外線画像では、血管の様子を観察することができる。したがって、これらの画像(紫外線画像、赤外線画像等)を通常の可視光画像に加えることで識別精度が向上する場合も考えられる。
【0128】
具体的には、紫外線画像や赤外線画像においても上述の実施形態で説明したのと同様に、螺旋を定義し、螺旋の曲線に沿って順に画素値(例えば紫外光や赤外光の強度を表す値)を取得して構成される1次元データを取得する。そして、取得した1次元データをチャネル方向に追加する(RGB等と同様にそれぞれ別のチャネルの1次元データとして扱う)。そして得られた複数チャネルの1次元データを用いた学習処理及び識別処理は、上述のCNNによる学習処理(
図8)や識別処理(
図9)と同様に行うことができる。なお、紫外線画像や赤外線画像は単体で用いてもよいし、他の画像(可視光画像、赤外線画像、紫外線画像等)と組み合わせて使用してもよい。
【0129】
なお、識別装置100,101,102の各機能は、通常のPC(Personal Computer)等のコンピュータによっても実施することができる。具体的には、上記実施形態では、識別装置100,101,102が行う学習処理及び検索処理のプログラムが、記憶部20のROMに予め記憶されているものとして説明した。しかし、プログラムを、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory)、DVD(Digital Versatile Disc)、MO(Magneto-Optical disc)、メモリカード、USB(Universal Serial Bus)メモリ等のコンピュータ読み取り可能な記録媒体に格納して配布し、そのプログラムをコンピュータに読み込んでインストールすることにより、上述の各機能を実現することができるコンピュータを構成してもよい。
【0130】
以上、本発明の好ましい実施形態について説明したが、本発明は係る特定の実施形態に限定されるものではなく、本発明には、特許請求の範囲に記載された発明とその均等の範囲が含まれる。以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
【0131】
(付記1)
所定の対象を撮像した撮像画像を取得する取得手段と、
前記取得手段で取得された撮像画像における前記所定の対象を含む領域から、互いに異なる複数の方向に延びる線状の領域を特定する特定手段と、
前記特定手段で特定された線状の領域から、画素値に基づく特徴量を抽出する抽出手段と、
を備えることを特徴とする特徴量抽出装置。
【0132】
(付記2)
前記線状の領域は、螺旋状の領域であることを特徴とする、
付記1に記載の特徴量抽出装置。
【0133】
(付記3)
前記螺旋状の領域の螺旋を規定するパラメータをランダムに設定する設定手段をさらに備えることを特徴とする、
付記2に記載の特徴量抽出装置。
【0134】
(付記4)
前記所定の対象は、人の皮膚のうちの診断の対象となる診断対象部分であることを特徴とする、
付記1から3の何れか1つに記載の特徴量抽出装置。
【0135】
(付記5)
前記抽出手段は、前記特定された線状の領域の画素値を1次元データとして取得し、前記1次元データに対して所定の統計値を計算して前記特徴量を抽出することを特徴とする、
付記1から4の何れか1つに記載の特徴量抽出装置。
【0136】
(付記6)
前記抽出手段は、前記特定された線状の領域の画素値を所定の色空間における第1成分、第2成分及び第3成分それぞれの1次元データとして取得し、前記第1成分と前記第2成分それぞれの前記1次元データの分散、前記第1成分と前記第2成分と前記第3成分それぞれの前記1次元データの回帰直線の傾き及び寄与率、前記1次元データ同士の差の絶対値の分散、前記1次元データ同士の比のうち前記第1成分/前記第2成分及び前記第1成分/前記第3成分の回帰直線の傾き及び寄与率、前記1次元データの最大値と最小値の差、の合計16の値のうちの少なくとも1つを特徴量として抽出することを特徴とする、
付記5に記載の特徴量抽出装置。
【0137】
(付記7)
前記抽出手段は、前記特定された線状の領域の画素値を1次元データとして取得し、前記1次元データを1次元コンボリューショナルニューラルネットワークに入力して前記特徴量を抽出することを特徴とする、
付記1から4の何れか1つに記載の特徴量抽出装置。
【0138】
(付記8)
さらに、前記線状の領域を特定するパラメータの適正度を評価した値である評価値を算出する評価手段を備え、
前記特定手段は、複数の前記パラメータの中から、前記評価手段で算出された評価値が最も高い前記パラメータである最高評価パラメータを選択し、前記選択した最高評価パラメータを用いて前記線状の領域を特定する、
付記7に記載の特徴量抽出装置。
【0139】
(付記9)
所定の対象を撮像した撮像画像を取得する取得手段と、
前記取得手段で取得された撮像画像における前記所定の対象を含む領域から、互いに異なる複数の方向に延びる線状の領域を特定する特定手段と、
前記特定手段で特定された線状の領域から、画素値に基づく1次元データを取得する1次元データ取得手段と、
前記1次元データ取得手段で取得された1次元データに基づいて前記所定の対象を識別する識別手段と、
を備えることを特徴とする識別装置。
【0140】
(付記10)
前記線状の領域は、螺旋状の領域であることを特徴とする、
付記9に記載の識別装置。
【0141】
(付記11)
前記特定手段は、前記螺旋状の領域の螺旋を規定するパラメータをランダムに設定し、前記ランダムに設定したパラメータで規定された螺旋を用いて前記螺旋状の領域を特定することを特徴とする、
付記10に記載の識別装置。
【0142】
(付記12)
さらに、前記線状の領域を特定するパラメータの適正度を評価した値である評価値を算出する評価手段を備え、
前記特定手段は、複数の前記パラメータの中から、前記評価手段で算出された評価値が最も高い前記パラメータである最高評価パラメータを選択し、前記選択した最高評価パラメータを用いて前記線状の領域を特定する、
付記9又は10に記載の識別装置。
【0143】
(付記13)
前記評価手段は、
前記特定手段に、互いに異なる複数の前記パラメータから評価用パラメータを選択させるとともに、前記選択させた評価用パラメータを用いて、評価用の画像データにおける所定の対象を含む領域から前記線状の領域を特定させ、
前記1次元データ取得手段に、前記特定手段により前記評価用パラメータを用いて特定された前記線状の領域である評価用線状領域から前記1次元データを取得させ、
前記識別手段に、前記1次元データ取得手段により前記評価用線状領域から取得された前記1次元データに基づいて前記評価用の画像データにおける前記所定の対象を識別させ、
前記評価用線状領域から取得された前記1次元データに基づく前記識別手段の識別精度を算出し、前記識別精度に基づいて前記評価値を算出し、前記識別精度及び前記評価値の算出を、前記複数のパラメータの各々について行う、
付記12に記載の識別装置。
【0144】
(付記14)
前記評価手段は、評価用の画像データを用いて各画素が識別に及ぼす影響の大きさを示す影響度を表した活性化マップを取得し、前記活性化マップ上で前記線状の領域から得られる各画素の前記影響度に基づいて、前記評価値を算出する、
付記12又は13に記載の識別装置。
【0145】
(付記15)
前記所定の対象は、人の皮膚のうちの診断の対象となる診断対象部分であることを特徴とする、
付記9から14の何れか1つに記載の識別装置。
【0146】
(付記16)
前記識別手段は、前記1次元データに基づく入力データを入力とし、かつ、前記所定の対象の識別結果を出力とするように機械学習されたモデルに従って、前記所定の対象を識別することを特徴とする、
付記9から15の何れか1つに記載の識別装置。
【0147】
(付記17)
さらに、前記1次元データ取得手段で取得された1次元データに対して所定の統計値を計算して特徴量を抽出する抽出手段を備え、
前記識別手段は前記特徴量を前記モデルとしてのサポートベクターマシンに入力して前記所定の対象を識別することを特徴とする、
付記16に記載の識別装置。
【0148】
(付記18)
前記識別手段は前記1次元データ取得手段で取得された1次元データを前記モデルとしての1次元コンボリューショナルニューラルネットワークに入力して前記所定の対象を識別することを特徴とする、
付記16に記載の識別装置。
【0149】
(付記19)
所定の対象を撮像した撮像画像を取得する取得ステップと、
前記取得ステップで取得された撮像画像における前記所定の対象を含む領域から、互いに異なる複数の方向に延びる線状の領域を特定する特定ステップと、
前記特定ステップで特定された線状の領域から、画素値に基づく特徴量を抽出する抽出ステップと、
を備えることを特徴とする特徴量抽出方法。
【0150】
(付記20)
所定の対象を撮像した撮像画像を取得する取得ステップと、
前記取得ステップで取得された撮像画像における前記所定の対象を含む領域から、互いに異なる複数の方向に延びる線状の領域を特定する特定ステップと、
前記特定ステップで特定された線状の領域から、画素値に基づく1次元データを取得する1次元データ取得ステップと、
前記1次元データ取得ステップで取得された1次元データに基づいて前記所定の対象を識別する識別ステップと、
を備えることを特徴とする識別方法。
【0151】
(付記21)
コンピュータに、
所定の対象を撮像した撮像画像を取得する取得ステップ、
前記取得ステップで取得された撮像画像における前記所定の対象を含む領域から、互いに異なる複数の方向に延びる線状の領域を特定する特定ステップ、及び、
前記特定ステップで特定された線状の領域から、画素値に基づく特徴量を抽出する抽出ステップ、
を実行させるためのプログラム。
【0152】
(付記22)
コンピュータに、
所定の対象を撮像した撮像画像を取得する取得ステップ、
前記取得ステップで取得された撮像画像における前記所定の対象を含む領域から、互いに異なる複数の方向に延びる線状の領域を特定する特定ステップ、
前記特定ステップで特定された線状の領域から、画素値に基づく1次元データを取得する1次元データ取得ステップ、及び、
前記1次元データ取得ステップで取得された1次元データに基づいて前記所定の対象を識別する識別ステップ、
を実行させるためのプログラム。
【符号の説明】
【0153】
10…制御部、11…取得部、12…特定部、13…抽出部、14…設定部、15…識別部、16…活性スコア取得部、17…評価部、20…記憶部、31…画像入力部、32…出力部、33…通信部、34…操作入力部、41…対象領域、41a,41b…領域、42…識別領域、43…曲線、100,101,102…識別装置、111…入力層、112,113,114,115,116,117…特徴マップ、118…出力層、121,123,124,125…フィルタ、122,126…ウィンドウ、127…全結合接続