(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-06-07
(45)【発行日】2023-06-15
(54)【発明の名称】対象識別方法、情報処理装置、情報処理プログラム、および照明装置
(51)【国際特許分類】
G06T 7/00 20170101AFI20230608BHJP
G06T 7/90 20170101ALI20230608BHJP
F21S 2/00 20160101ALI20230608BHJP
【FI】
G06T7/00 350C
G06T7/90 D
F21S2/00 390
(21)【出願番号】P 2019135696
(22)【出願日】2019-07-23
【審査請求日】2022-02-14
(73)【特許権者】
【識別番号】513067727
【氏名又は名称】高知県公立大学法人
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】栗原 徹
【審査官】伊知地 和之
(56)【参考文献】
【文献】国際公開第2018/047171(WO,A1)
【文献】特開2018-136767(JP,A)
【文献】三島駿祐他,植物のスペクトル反射特性を用いたRGB画像からの近赤外画像の推定,情報処理学会 研究報告 コンピュータビジョンとイメージメディア(CVIM) 2019-CVIM-217 [online] ,日本,情報処理学会,2019年05月23日,pp.1-8
【文献】Ying FU et al.,“Joint Camera SpectralSensitivity Selection and Hyperspectral Image Recovery”,Computer Vision - ECCV 2018,2018年,pp.1-17,DOI:10.1007/978-3-030-01219-9_48
【文献】Boaz ARAD et al.,“Filter Selection forHyperspectral Estimation”,2017 IEEE InternationalConference on Computer Vision (ICCV),IEEE,2017年10月,pp.3153-3161,DOI: 10.1109/ICCV.2017.342
(58)【調査した分野】(Int.Cl.,DB名)
F21S 2/00
G06T 1/00
G06T 7/00 - 7/90
G06V 10/00 - 20/90
G06V 30/418
G06V 40/16
G06V 40/20
CSDB(日本国特許庁)
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
光を複数の第1の波長に分光して撮像する第1の撮像装置により取得される前記第1の波長に対応した複数の第1の色チャネルの第1の画像データの入力に応じて、
1以上の第2の波長に対応し
前記第1の色チャネルの数よりも少ない1以上の第2の色チャネルの第2の画像データを出力する第1のニューラルネットワークと、前記第2の画像データの入力に応じて、当該第2の画像データにおいて撮像された対象の識別結果を出力する第2のニューラルネットワークと、を備えたニューラルネットワークであって、前記第1のニューラルネットワークが、前記第1の画像データの入力を受け付ける入力層と、前記第2の画像データを出力する前記入力層よりも低次元の出力層と、色チャネルごとに設定される第1の重みにより前記入力層と関連付けられるとともに前記第1の波長と前記第2の波長との関係性に基づいて予め決められた第2の重みにより前記出力層と関連付けられる前記入力層と同次元の中間層と、を有するニューラルネットワークに基づいて、前記第1の画像データの入力に応じて当該第1の画像データにおいて撮像された前記対象の識別結果が得られるように、前記第1の重みおよび前記第2のニューラルネットワークの構成を調整するための機械学習を実行する学習ステップと、
光を前記第2の波長に分光して撮像することで前記第2の画像データを取得する第2の撮像装置に取り付ける光学フィルタの光学特性、または、前記第2の撮像装置の撮像時に照明装置によって前記対象に照射する光の照射特性を、前記学習ステップの前記機械学習による調整を経た前記第1の重みに応じて決定する決定ステップと、
前記決定ステップにおいて決定された前記光学特性を有するように設計された前記光学フィルタが前記第2の撮像装置に取り付けられているという環境下、または、前記決定ステップにおいて決定された前記照射特性を有するように調整された光が前記照明装置によって前記対象に照射されているという環境下で前記第2の撮像装置により取得される前記第2の画像データを取得する取得ステップと、
前記取得ステップにおいて取得された前記第2の画像データを前記第2のニューラルネットワークに入力し、前記対象の識別結果の出力を取得する識別ステップと、
を備える、対象識別方法。
【請求項2】
前記第1のニューラルネットワークは、前記入力層が、単一の画素についての前記第1の色チャネルの第1の画素値の入力を前記第1の画像データの入力として受け付ける前記第1の色チャネルと同数の入力ノードを有し、前記出力層が、単一の画素についての前記第2の色チャネルの第2の画素値を前記第2の画像データとして出力する前記第2の色チャネルと同数の出力ノードを有し、前記中間層が、前記第1の重みにより前記入力ノードと関連付けられるとともに前記第2の重みにより前記出力ノードと関連付けられる前記入力ノードと同数の中間ノードを有する、ように設定されている、
請求項1に記載の対象識別方法。
【請求項3】
前記第1の画像データは、前記第1の撮像装置としての多波長分光カメラにより取得されるデータキューブに基づく画像データに対応し、
前記第2の画像データは、前記第2の撮像装置としてのRGBカメラにより取得される、RGB空間の三原色である赤(R)、緑(G)、および青(B)の3つの波長に対応した3つの色チャネルの画像データに対応する、
請求項1または2に記載の対象識別方法。
【請求項4】
前記光学フィルタは、前記第1の重みに応じた透過率が波長ごとに設定されているという前記光学特性を有する波長フィルタである、
請求項1~3のうちいずれか1項に記載の対象識別方法。
【請求項5】
前記対象は、果実と当該果実以外の他の部位とを有する植物体であり、
前記第2のニューラルネットワークにより出力される前記識別結果は、前記果実と前記他の部位との判別結果を含む、
請求項1~4のうちいずれか1項に記載の対象識別方法。
【請求項6】
前記決定ステップにおいて決定された前記光学特性を有するように設計された前記光学フィルタの実際の光学特性、または、前記決定ステップにおいて決定された前記照射特性を有するように調整された光の実際の照射特性を示す値に応じた固定の重みが前記第1の重みとして設定された前記ニューラルネットワークに基づいて、前記第1の画像データの入力に応じて当該第1の画像データにおいて撮像された前記対象の識別結果が得られるように、前記第2のニューラルネットワークの構成をさらに調整するための再度の機械学習を実行する再学習ステップをさらに備え、
前記識別ステップは、前記取得ステップにおいて取得された前記第2の画像データを、前記再学習ステップによる前記再度の機械学習による調整を経た前記第2のニューラルネットワークに入力し、前記対象の識別結果の出力を取得する、
請求項1~5のうちいずれか1項に記載の対象識別方法。
【請求項7】
光を複数の第1の波長に分光して撮像する第1の撮像装置により取得される前記第1の波長に対応した複数の第1の色チャネルの第1の画像データの入力に応じて、
1以上の第2の波長に対応し
前記第1の色チャネルの数よりも少ない1以上の第2の色チャネルの第2の画像データを出力する第1のニューラルネットワークと、前記第2の画像データの入力に応じて、当該第2の画像データにおいて撮像された対象の識別結果を出力する第2のニューラルネットワークと、を備えたニューラルネットワークであって、前記第1のニューラルネットワークが、前記第1の画像データの入力を受け付ける入力層と、前記第2の画像データを出力する前記入力層よりも低次元の出力層と、色チャネルごとに設定される第1の重みにより前記入力層と関連付けられるとともに前記第1の波長と前記第2の波長との関係性に基づいて予め決められた第2の重みにより前記出力層と関連付けられる前記入力層と同次元の中間層と、を有するニューラルネットワークに基づいて、前記第1の画像データの入力に応じて当該第1の画像データにおいて撮像された前記対象の識別結果が得られるように、前記第1の重みおよび前記第2のニューラルネットワークの構成を調整するための機械学習を実行する学習部と、
光を前記第2の波長に分光して撮像することで前記第2の画像データを取得する第2の撮像装置に取り付ける光学フィルタの光学特性、または、前記第2の撮像装置の撮像時に照明装置によって前記対象に照射する光の照射特性を、前記学習部の前記機械学習による調整を経た前記第1の重みに応じて決定する決定部と、
を備える、情報処理装置。
【請求項8】
光を複数の第1の波長に分光して撮像する第1の撮像装置により取得される前記第1の波長に対応した複数の第1の色チャネルの第1の画像データの入力に応じて、
1以上の第2の波長に対応し
前記第1の色チャネルの数よりも少ない1以上の第2の色チャネルの第2の画像データを出力する第1のニューラルネットワークと、前記第2の画像データの入力に応じて、当該第2の画像データにおいて撮像された対象の識別結果を出力する第2のニューラルネットワークと、を備えたニューラルネットワークであって、前記第1のニューラルネットワークが、前記第1の画像データの入力を受け付ける入力層と、前記第2の画像データを出力する前記入力層よりも低次元の出力層と、色チャネルごとに設定される第1の重みにより前記入力層と関連付けられるとともに前記第1の波長と前記第2の波長との関係性に基づいて予め決められた第2の重みにより前記出力層と関連付けられる前記入力層と同次元の中間層と、を有するニューラルネットワークに基づいて、前記第1の画像データの入力に応じて当該第1の画像データにおいて撮像された前記対象の識別結果が得られるように、前記第1の重みおよび前記第2のニューラルネットワークの構成を調整するための機械学習による調整を経た前記第1の重みに応じて決定された光学特性を有するように設計された光学フィルタが光を前記第2の波長に分光して撮像することで前記第2の画像データを取得する第2の撮像装置に取り付けられているという環境下、または、前記機械学習による調整を経た前記第1の重みに応じて決定された照射特性を有するように調整された光が照明装置によって前記対象に照射されているという環境下で前記第2の撮像装置により取得される前記第2の画像データを取得する取得部と、
前記取得部により取得された前記第2の画像データを前記第2のニューラルネットワークに入力し、前記対象の識別結果の出力を取得する識別部と、
を備える、情報処理装置。
【請求項9】
光を複数の第1の波長に分光して撮像する第1の撮像装置により取得される前記第1の波長に対応した複数の第1の色チャネルの第1の画像データの入力に応じて、
1以上の第2の波長に対応し
前記第1の色チャネルの数よりも少ない1以上の第2の色チャネルの第2の画像データを出力する第1のニューラルネットワークと、前記第2の画像データの入力に応じて、当該第2の画像データにおいて撮像された対象の識別結果を出力する第2のニューラルネットワークと、を備えたニューラルネットワークであって、前記第1のニューラルネットワークが、前記第1の画像データの入力を受け付ける入力層と、前記第2の画像データを出力する前記入力層よりも低次元の出力層と、色チャネルごとに設定される第1の重みにより前記入力層と関連付けられるとともに前記第1の波長と前記第2の波長との関係性に基づいて予め決められた第2の重みにより前記出力層と関連付けられる前記入力層と同次元の中間層と、を有するニューラルネットワークに基づいて、前記第1の画像データの入力に応じて当該第1の画像データにおいて撮像された前記対象の識別結果が得られるように、前記第1の重みおよび前記第2のニューラルネットワークの構成を調整するための機械学習を実行する学習ステップと、
光を前記第2の波長に分光して撮像することで前記第2の画像データを取得する第2の撮像装置に取り付ける光学フィルタの光学特性、または、前記第2の撮像装置の撮像時に照明装置によって前記対象に照射する光の照射特性を、前記学習ステップの前記機械学習による調整を経た前記第1の重みに応じて決定する決定ステップと、
をコンピュータに実行させるための、情報処理プログラム。
【請求項10】
光を複数の第1の波長に分光して撮像する第1の撮像装置により取得される前記第1の波長に対応した複数の第1の色チャネルの第1の画像データの入力に応じて、
1以上の第2の波長に対応し
前記第1の色チャネルの数よりも少ない1以上の第2の色チャネルの第2の画像データを出力する第1のニューラルネットワークと、前記第2の画像データの入力に応じて、当該第2の画像データにおいて撮像された対象の識別結果を出力する第2のニューラルネットワークと、を備えたニューラルネットワークであって、前記第1のニューラルネットワークが、前記第1の画像データの入力を受け付ける入力層と、前記第2の画像データを出力する前記入力層よりも低次元の出力層と、色チャネルごとに設定される第1の重みにより前記入力層と関連付けられるとともに前記第1の波長と前記第2の波長との関係性に基づいて予め決められた第2の重みにより前記出力層と関連付けられる前記入力層と同次元の中間層と、を有するニューラルネットワークに基づいて、前記第1の画像データの入力に応じて当該第1の画像データにおいて撮像された前記対象の識別結果が得られるように、前記第1の重みおよび前記第2のニューラルネットワークの構成を調整するための機械学習による調整を経た前記第1の重みに応じて決定された光学特性を有するように設計された光学フィルタが光を前記第2の波長に分光して撮像することで前記第2の画像データを取得する第2の撮像装置に取り付けられているという環境下、または、前記機械学習による調整を経た前記第1の重みに応じて決定された照射特性を有するように調整された光が照明装置によって前記対象に照射されているという環境下で前記第2の撮像装置により取得される前記第2の画像データを取得する取得ステップと、
前記取得ステップにより取得された前記第2の画像データを前記第2のニューラルネットワークに入力し、前記対象の識別結果の出力を取得する識別ステップと、
をコンピュータに実行させるための、情報処理プログラム。
【請求項11】
光を複数の第1の波長に分光して撮像する第1の撮像装置により取得される前記第1の波長に対応した複数の第1の色チャネルの第1の画像データの入力に応じて、
1以上の第2の波長に対応し
前記第1の色チャネルの数よりも少ない1以上の第2の色チャネルの第2の画像データを出力する第1のニューラルネットワークと、前記第2の画像データの入力に応じて、当該第2の画像データにおいて撮像された対象の識別結果を出力する第2のニューラルネットワークと、を備えたニューラルネットワークであって、前記第1のニューラルネットワークが、前記第1の画像データの入力を受け付ける入力層と、前記第2の画像データを出力する前記入力層よりも低次元の出力層と、色チャネルごとに設定される第1の重みにより前記入力層と関連付けられるとともに前記第1の波長と前記第2の波長との関係性に基づいて予め決められた第2の重みにより前記出力層と関連付けられる前記入力層と同次元の中間層と、を有するニューラルネットワークに基づいて、前記第1の画像データの入力に応じて当該第1の画像データにおいて撮像された前記対象の識別結果が得られるように、前記第1の重みおよび前記第2のニューラルネットワークの構成を調整するための機械学習による調整を経た前記第1の重みに応じて決定された照射特性を有するように調整された光を照射する、
照明装置。
【請求項12】
光を複数の第1の波長に分光して撮像する第1の撮像装置により取得される前記第1の波長に対応した複数の第1の色チャネルの第1の画像データと、第1の重みと、前記第1の波長と当該第1の波長よりも少ない1以上の第2の波長との関係性に基づいて予め決められた第2の重みと、を乗算することで前記第1の画像データを前記第2の波長に対応し
前記第1の色チャネルの数よりも少ない1以上の第2の色チャネルの第2の画像データに縮退する数式モデルに基づいて、対象に関する前記第1の画像データに応じた前記第2の画像データと、前記対象とは異なる非対象に関する前記第1の画像データに応じた前記第2の画像データと、の差異を所定レベル以上とするような前記第1の重みを算出し、当該第1の重みに応じて、光を前記第2の波長に分光して撮像することで前記第2の画像データを取得する第2の撮像装置に取り付ける光学フィルタの光学特性、または、前記第2の撮像装置の撮像時に照明装置によって前記対象に照射する光の照射特性を決定する決定ステップと、
前記第1の画像データの入力に応じて前記第2の画像データを出力する第1のニューラルネットワークと、前記第2の画像データの入力に応じて当該第2の画像データにおいて撮像された前記対象の識別結果を出力する第2のニューラルネットワークと、を備えたニューラルネットワークであって、前記第1のニューラルネットワークが、前記第1の画像データの入力を受け付ける入力層と、前記第2の画像データを出力する前記入力層よりも低次元の出力層と、前記第1の重みにより前記入力層と関連付けられるとともに前記第2の重みにより前記出力層と関連付けられる前記入力層と同次元の中間層と、を有するニューラルネットワークに基づいて、前記第1の画像データの入力に応じて当該第1の画像データにおいて撮像された前記対象の識別結果が得られるように、前記第2のニューラルネットワークの構成を調整するための機械学習を実行する学習ステップと、
前記決定ステップにおいて決定された前記光学特性を有するように設計された前記光学フィルタが前記第2の撮像装置に取り付けられているという環境下、または、前記決定ステップにおいて決定された前記照射特性を有するように調整された光が前記照明装置によって前記対象に照射されているという環境下で前記第2の撮像装置により取得される前記第2の画像データを取得する取得ステップと、
前記取得ステップにおいて取得された前記第2の画像データを前記第2のニューラルネットワークに入力し、前記対象の識別結果の出力を取得する識別ステップと、
を備える、対象識別方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、対象識別方法、情報処理装置、情報処理プログラム、および照明装置に関する。
【背景技術】
【0002】
従来から、RGBカメラによる果実などの対象の撮像結果と当該対象の識別結果との関係を機械学習により学習することで重みなどが最適化されたニューラルネットワークを利用して、RGBカメラによる対象の撮像結果の入力に応じて当該対象の識別結果の出力を取得する技術について検討されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記のような従来の技術において、学習時および識別時にニューラルネットワークに入力されるデータは、RGBカメラによる対象の撮像結果であり、当該撮像結果は、RGB空間の三原色である赤(R)、緑(G)、および青(B)の3つの波長に対応した高々3つの色チャネルの画像データを根拠としているに過ぎない。したがって、上記のような従来の技術は、対象の識別の精度をより向上させる余地があると考えられる。
【0005】
そこで、本開示の課題の一つは、対象の識別の精度をより向上させることが可能な対象識別方法、情報処理装置、情報処理プログラム、および照明装置を提供することである。
【課題を解決するための手段】
【0006】
本開示の一例としての対象識別方法は、光を複数の第1の波長に分光して撮像する第1の撮像装置により取得される第1の波長に対応した複数の第1の色チャネルの第1の画像データの入力に応じて、1以上の第2の波長に対応し前記第1の色チャネルの数よりも少ない1以上の第2の色チャネルの第2の画像データを出力する第1のニューラルネットワークと、第2の画像データの入力に応じて、当該第2の画像データにおいて撮像された対象の識別結果を出力する第2のニューラルネットワークと、を備えたニューラルネットワークであって、第1のニューラルネットワークが、第1の画像データの入力を受け付ける入力層と、第2の画像データを出力する入力層よりも低次元の出力層と、色チャネルごとに設定される第1の重みにより入力層と関連付けられるとともに第1の波長と第2の波長との関係性に基づいて予め決められた第2の重みにより出力層と関連付けられる入力層と同次元の中間層と、を有するニューラルネットワークに基づいて、第1の画像データの入力に応じて当該第1の画像データにおいて撮像された対象の識別結果が得られるように、第1の重みおよび第2のニューラルネットワークの構成を調整するための機械学習を実行する学習ステップと、光を第2の波長に分光して撮像することで第2の画像データを取得する第2の撮像装置に取り付ける光学フィルタの光学特性、または、第2の撮像装置の撮像時に照明装置によって対象に照射する光の照射特性を、学習ステップの機械学習による調整を経た第1の重みに応じて決定する決定ステップと、決定ステップにおいて決定された光学特性を有するように設計された光学フィルタが第2の撮像装置に取り付けられているという環境下、または、決定ステップにおいて決定された照射特性を有するように調整された光が照明装置によって対象に照射されているという環境下で第2の撮像装置により取得される第2の画像データを取得する取得ステップと、取得ステップにおいて取得された第2の画像データを第2のニューラルネットワークに入力し、対象の識別結果の出力を取得する識別ステップと、を備える。
【図面の簡単な説明】
【0007】
【
図1】
図1は、実施形態にかかる対象識別システムの構成を示した例示的かつ模式的な図である。
【
図2】
図2は、実施形態において実行される機械学習の概要を示した例示的かつ模式的な図である。
【
図3】
図3は、実施形態にかかる光学フィルタの光学特性の一例を示した例示的かつ模式的なブロック図である。
【
図4】
図4は、実施形態にかかる対象識別方法を実現するためにコンピュータ端末が実行する一連の処理を示した例示的かつ模式的なフローチャートである。
【
図5】
図5は、実施形態にかかる対象識別方法を実現するためにコンピュータ端末が
図4に示される一連の処理の後に実行する一連の処理を示した例示的かつ模式的なフローチャートである。
【
図6】
図6は、実施形態にかかる対象識別方法を実現するために携帯端末が実行する一連の処理を示した例示的かつ模式的なフローチャートである。
【
図7】
図7は、実施形態にかかる対象識別方法の効果を確認するための実験結果を示した例示的かつ模式的な図である。
【
図8】
図8は、変形例において実行されうる機械学習の概要を示した例示的かつ模式的な図である。
【
図9】
図9は、
図9は、変形例にかかる数式モデルにおいて利用されうる画像データの特性を示した例示的かつ模式的な図である。
【
図10】
図10は、変形例にかかる数式モデルにおいて利用されうる第2の重みの特性を示した例示的かつ模式的な図である。
【
図11】
図11は、変形例にかかる数式モデルに基づいて特定された第1の重みに応じて決定された光学フィルタの光学特性の一例を示した例示的かつ模式的な図である。
【発明を実施するための形態】
【0008】
以下、本開示の実施形態および変形例を図面に基づいて説明する。以下に説明される実施形態および変形例の構成ならびに当該構成によってもたらされる作用および効果は、あくまで一例であって、以下の記載内容に限られるものではない。
【0009】
<実施形態>
図1は、実施形態にかかる対象識別システムの構成を示した例示的かつ模式的な図である。
【0010】
図1に示されるように、対象識別システムは、コンピュータ端末100と、携帯端末200と、を備えている。コンピュータ端末100は、たとえばPC(Personal Computer)として構成され、携帯端末200は、たとえばスマートフォンとして構成される。コンピュータ端末100および携帯端末200は、共に、「情報処理装置」の一例である。
【0011】
コンピュータ端末100は、プロセッサやメモリ、入出力インターフェースなどといった、通常のコンピュータと同様のハードウェア構成(回路)を有している。コンピュータ端末100は、プロセッサがメモリに記憶された情報処理プログラムを実行した結果として、学習部110および特性決定部120(いずれも詳細は後述する)を機能的に実現する。
【0012】
また、携帯端末200は、コンピュータ端末100と同様に、プロセッサやメモリ、入出力インターフェースなどといった、通常のコンピュータと同様のハードウェア構成(回路)を有している。携帯端末200は、プロセッサがメモリに記憶された情報処理プログラムを実行した結果として、画像データ取得部210および識別部220(いずれも詳細は後述する)を機能的に実現する。
【0013】
また、携帯端末200は、光学フィルタ300(詳細は後述する)を取り付け可能な撮像装置201を備えている。撮像装置201は、一般的なデジタルカラーカメラ、すなわち、光学系を介して入射する光をRGB空間の三原色である赤(R)、緑(G)、および青(B)の3つの波長に分光して撮像するRGBカメラとして構成される。実施形態において、撮像装置201は、携帯端末200に予め搭載された内蔵デバイスとして構成されていてもよいし、携帯端末200に付加的に取り付けられる外部デバイスとして構成されていてもよい。
【0014】
なお、以下では、一例として、撮像装置201により撮像される対象が、照明装置400により光が照射された植物体Xであるものとする。また、以下では、植物体Xが、果実X1と、当該果実X1以外の他の部位X2と、を有しており、果実X1および他の部位X2は、互いに類似の色を有しているものとする。このような条件を満たす植物体Xは、たとえばピーマンである。
【0015】
ここで、対象が植物体Xである場合、収穫の対象となる果実X1を他の部位X2と区別して認識することが望まれる。
【0016】
これに対して、従来から、上記の撮像装置201のようなRGBカメラによる対象の撮像結果と当該対象の識別結果との関係を機械学習により学習することで重みなどが調整されたニューラルネットワークを利用して、RGBカメラによる対象の撮像結果の入力に応じて当該対象の識別結果の出力を取得する技術について検討されている。
【0017】
しかしながら、上記のような従来の技術において、学習時および識別時にニューラルネットワークに入力されるデータは、RGBカメラによる対象の撮像結果であり、当該撮像結果は、RGB空間の三原色である赤(R)、緑(G)、および青(B)の3つの波長に対応した高々3つの色チャネルの画像データを根拠としているに過ぎない。したがって、上記のような従来の技術は、対象の識別の精度をより向上させる余地があると考えられる。
【0018】
特に、実施形態のように、互いに類似の色を有した果実X1と他の部位X2との判別が望まれている場合、赤(R)、緑(G)、および青(B)の3つの波長に対応した高々3つの色チャネルの画像データを根拠としたデータのみに基づいて学習および識別を実行する上記のような従来の技術では、精度の良い識別が困難である。
【0019】
そこで、実施形態は、コンピュータ端末100の学習部110および特性決定部120と、携帯端末200の画像データ取得部210および識別部220とを以下に説明するように機能させることで、対象の識別の精度をより向上させることが可能な対象識別方法を提供する。
【0020】
より具体的に、実施形態において、コンピュータ端末100の学習部110は、第1のニューラルネットワーク111aおよび第2のニューラルネットワーク111bを含むニューラルネットワーク111に基づいて、次の
図2に示されるような機械学習を実行する。そして、携帯端末200の画像データ取得部210は、コンピュータ端末100での機械学習による調整を経た第1のニューラルネットワーク111aに基づいて設計された光学フィルタ300が取り付けられた撮像装置201から画像データを取得し、携帯端末200の識別部220は、コンピュータ端末100での機械学習による調整を経た第2のニューラルネットワーク111bを利用して、画像データ取得部210により取得された画像データの入力に応じて当該画像データにおいて撮像された対象の識別結果の出力を取得する。
【0021】
図2は、実施形態において実行される機械学習の概要を示した例示的かつ模式的な図である。なお、実施形態では、機械学習のスキームとして、教師あり学習、教師なし学習、および強化学習の単独または2以上の任意の組み合わせが用いられる。
【0022】
図2に示されるように、実施形態において、ニューラルネットワーク111は、入力層としての第1の層L1と、中間層としての第2の層L2、第3の層L3、および第4の層L4と、出力層としての第5の層L5と、により構成されている。第1の層L1と第2の層L2とは、第1の重みW1によって関連付けられており、第2の層L2と第3の層L3とは、第2の重みW2によって関連付けられている。また、第3の層L3と第4の層L4とは、第3の重みW3によって関連付けられており、第4の層L4と第5の層L5とは、第4の重みW4によって関連付けられている。
【0023】
また、実施形態において、第1のニューラルネットワーク111aは、ニューラルネットワーク111の前段部分として構成されており、第2のニューラルネットワーク111bは、ニューラルネットワーク111の後段部分として構成されている。より具体的に、第1のニューラルネットワーク111aは、第1の層L1を入力層として有し、第1の層L1と同次元の第2の層L2を中間層として有し、第1の層L1よりも低次元の第3の層L3を出力層として有するニューラルネットワークとして構成されており、第2のニューラルネットワーク111bは、第3の層L3を入力層として有し、第4の層L4を中間層として有し、第5の層L5を出力層として有するニューラルネットワークとして構成されている。
【0024】
ここで、前述したように、第2のニューラルネットワーク111bは、画像データ取得部210により取得される画像データの入力に応じて当該画像データにおいて撮像された対象の識別結果の出力を得ることを目的として携帯端末200の識別部220により利用される。これを踏まえると、第2のニューラルネットワーク111bは、携帯端末200の撮像装置201の撮像結果である画像データD20を構成する赤(R)、緑(G)、および青(B)の3つの波長に対応した3つの色チャネルの画像データD21~D23と同等の画像データの入力を受け付け、当該入力に応じて、対象の識別結果、すなわち果実X1と他の部位X2との判別結果の出力を実行するように設定されるべきである。
【0025】
したがって、実施形態では、第2のニューラルネットワーク111bの入力層である第3の層L3が有するノードの数が、赤(R)、緑(G)、および青(B)の3つの波長に対応した3つの色チャネルと同数の3つに設定され、第2のニューラルネットワーク111bの出力層である第5の層L5が有するノードの数が、果実X1と他の部位X2との判別結果をデジタル的に出力可能な1つに設定される。そして、実施形態では、第3の層L3のノードと第5の層L5のノードとが適切に関連付けられるように、第3の層L3と第5の層L5との間に第4の層L4が設けられ、第4の層L4と第3の層L3とを関連付ける第3の重みW3と、第4の層L4と第5の層L5とを関連付ける第4の重みW4とが、機械学習による調整の対象である変数として設定される。
【0026】
なお、実施形態において、第5の層L5が有するノードの数は、2つ以上に設定されてもよく、第4の層L4は、任意の数のノードを有する単一の層として構成されていてもよいし、任意の数のノードを有する2以上の層の結合として構成されていてもよい。また、実施形態において、画像データの入力に応じた識別結果の出力は、ピクセルワイズ、すなわち入力である画像データの画素ごとに実行される。
【0027】
ところで、第2のニューラルネットワーク111bは、上記のように、高々3つの色チャネルのデータを入力とするモデルである。したがって、第2のニューラルネットワーク111bのみを利用して学習および識別を実行しても、前述した従来の技術と同様の結果しか得られない。
【0028】
そこで、実施形態は、以下に説明するような第1のニューラルネットワーク111aに第2のニューラルネットワーク111bと併せてトレーニングを施し、その結果を反映して設計される光学フィルタ300(
図1参照)および第2のニューラルネットワーク111bを携帯端末200での識別に利用することで、前述した従来の技術よりもより良い結果を得る。
【0029】
実施形態において、第1のニューラルネットワーク111aは、光を撮像装置201よりも多くの複数の波長に分光して撮像する多波長分光カメラにより取得される画像データとしてのデータキューブD10の入力に応じて、第2のニューラルネットワーク111bへの入力と同等の3つの画像データを出力するモデルである。
【0030】
より具体的に、実施形態において、第1のニューラルネットワーク111aの入力層である第1の層L1は、上記の多波長分光カメラの一例であるハイパースペクトルカメラとして構成された撮像装置500により取得されるデータキューブD10を構成する波長ごとの(つまり色チャネルごとの)画像データD11、D12、D13、…の入力を受け付けるように設定される。したがって、実施形態では、第1の層L1が有するノード(入力ノードと表現しうる)の個数が、画像データD11、D12、D13、…の色チャネルの数、すなわち撮像装置500が分光可能な波長の数と同数に設定される。
【0031】
なお、実施形態において、第1のニューラルネットワーク111aの出力層である第3の層L3は、第2のニューラルネットワーク111bの入力層でもある。したがって、第3の層L3が有するノード(出力ノードと表現しうる)の個数は、前述したように、3つに設定される。
【0032】
ここで、実施形態において、第1のニューラルネットワーク111aは、入力層である第1の層L1と出力層である第3の層L3との間の中間層として、第1の層L1のノードと同数のノード(中間ノードと表現しうる)を有する第2の層L2を有している。第2の層L2は、複数の色チャネルの画像データD11、D12、D13、…を第1の重みW1に基づいて重み付けすることで取得される複数の色チャネルの画像データD11、D12、D13、…と同次元のデータを、第2の重みW2に基づいて重み付けし、3つの色チャネルの画像データD21~D23に対応した3次元のデータとして縮退する。
【0033】
上記を踏まえると、第1の層L1と第3の層L3との間に第2の層L2を設けることは、携帯端末200に設けられるRGBカメラとしての撮像装置201による撮像の前処理として、当該撮像装置201の光学系に入力される光のうちハイパースペクトルカメラとしての撮像装置500が撮像可能な複数の波長の成分に対して、波長ごとに何らかの光学的な処理を実行することに相当すると解釈できる。
【0034】
そこで、実施形態において、コンピュータ端末100の学習部110は、撮像装置500による対象の撮像結果の入力に応じて当該対象の識別結果の出力が得られるように、第1のニューラルネットワーク111aと第2のニューラルネットワーク111bとを含むニューラルネットワーク111の全体に機械学習によるトレーニングを施す。
【0035】
たとえば、実施形態では、前述したように、果実X1を他の部位X2と区別して認識することが望まれているため、学習部110は、果実X1の撮像結果の入力に応じて出力される識別結果と、他の部位X2の撮像結果の入力に応じて出力される識別結果と、の差異を最大化するように、ニューラルネットワーク111の全体に機械学習によるトレーニングを施す。
【0036】
すなわち、実施形態において、学習部110は、上記のような機械学習に基づいて、第1のニューラルネットワーク111aで用いられる第1の重みW1と、第2のニューラルネットワーク111bで用いられる第3の重みW3および第4の重みW4と、を調整する。
【0037】
ここで、第1のニューラルネットワーク111aで用いられる第2の重みW2は、ハイパースペクトルカメラとしての撮像装置500による撮像結果と同次元のデータをRGBカメラとしての撮像装置201による撮像結果に対応した3次元のデータとして縮退するためのものであるので、撮像装置500が撮像可能な複数の波長と、撮像装置201が撮像可能な3つの波長と、の関係性に応じて予め決められる定数である。
【0038】
したがって、携帯端末200に設けられる撮像装置201による撮像の前処理として波長ごとに実行すべき光学的な処理の内容は、機械学習による調整を経た第1の重みW1に応じて決定される。また、当該光学的な処理を経た撮像装置201による対象の撮像結果を入力として当該対象の識別結果を得る処理は、機械学習による調整を経た第3の重みW3および第4の重みW4によって調整された第2のニューラルネットワーク111bによって実現される。
【0039】
上記を踏まえて、実施形態において、コンピュータ端末100の特性決定部120は、機械学習による調整を経た第1の重みW1に基づいて、たとえば次の
図3に示されるような形で、携帯端末200に設けられる撮像装置201による撮像の前処理として波長ごとに実行すべき光学的な処理を実現するために携帯端末200の撮像装置201に取り付ける光学フィルタ300の光学特性を決定する。
【0040】
図3は、実施形態にかかる光学フィルタ300の光学特性の一例を示した例示的かつ模式的なブロック図である。
【0041】
図3に示されるように、実施形態に係る光学フィルタ300は、波長ごとに実線L300で示されるような透過率が設定されているという光学特性を有する波長フィルタである。コンピュータ端末100の特性決定部120は、光学フィルタ300の波長ごとの透過率を、機械学習による調整を経た第1の重みW1に応じて決定する。
【0042】
そして、携帯端末200の画像データ取得部210は、
図3に示されるような光学フィルタ300が取り付けられた撮像装置201から画像データを取得する。そして、携帯端末200の識別部220は、コンピュータ端末100での機械学習による調整を経た第2のニューラルネットワーク111bを利用して、画像データ取得部210により取得された画像データの入力に応じて当該画像データにおいて撮像された対象の識別結果の出力を取得する。
【0043】
なお、実施形態では、技術的な制約などにより、実際に物理的に設計された光学フィルタ300の光学特性が、機械学習による調整を経た第1の重みW1に応じて決定された光学特性と完全には一致しない場合も想定される。
【0044】
したがって、実施形態において、コンピュータ端末100の学習部110は、実際に物理的に設計された光学フィルタ300の実際の光学特性に応じた固定の重みが第1の重みW1として設定されたニューラルネットワーク111に基づいて、撮像装置500による対象の撮像結果の入力に応じて当該対象の識別結果の出力が得られるように、第2のニューラルネットワーク111bの構成をさらに調整するための再度の機械学習を実行しうる。
【0045】
そして、携帯端末200の識別部220は、上記の再度の機械学習による調整を経た第2のニューラルネットワーク111bのコンピュータ端末100からの移管を受け、当該第2のニューラルネットワーク111bを利用して、画像データ取得部210により取得された画像データの入力に応じて当該画像データにおいて撮像された対象の識別結果の出力を取得しうる。
【0046】
以上の構成に基づき、実施形態にかかるコンピュータ端末100および携帯端末200は、対象の識別の精度を従来に比べてより向上させることが可能な対象識別方法を提供するために、以下の
図4および
図5に示されるような一連の処理を実行する。
【0047】
図4は、実施形態にかかる対象識別方法を実現するためにコンピュータ端末100が実行する一連の処理を示した例示的かつ模式的なフローチャートである。
【0048】
図4に示されるように、実施形態では、まず、ステップS401において、コンピュータ端末100の学習部110は、第1のニューラルネットワーク111aと第2のニューラルネットワーク111bとを含むニューラルネットワーク111に基づく上述したような機械学習を実行する。すなわち、学習部110は、ハイパースペクトルカメラとして構成された撮像装置500により取得される画像データの入力に応じて当該画像データにおいて撮像された対象の識別結果の出力が得られるように、ニューラルネットワーク111で用いられる各種の変数を調整する。
【0049】
そして、ステップS402において、コンピュータ端末100の特性決定部120は、S401における機械学習の結果、より具体的には、機械学習による調整を経た、第1のニューラルネットワーク111aで用いられる第1の重みW1に応じて、携帯端末200の撮像装置201に取り付けるべき光学フィルタ300の光学特性を決定する。そして、処理が終了する。
【0050】
図5は、実施形態にかかる対象識別方法を実現するためにコンピュータ端末100が
図4に示される一連の処理の後に実行する一連の処理を示した例示的かつ模式的なフローチャートである。
【0051】
図5に示されるように、実施形態では、まず、ステップS501において、コンピュータ端末100の学習部110は、
図4のステップS402において決定された光学特性を有するように実際に物理的に設計された光学フィルタ300の実際の光学特性を取得し、当該実際の光学特性に応じた固定の重みを第1の重みW1として設定する。
【0052】
そして、ステップS502において、コンピュータ端末100の学習部110は、上記の固定の重みが第1の重みW1として設定されたニューラルネットワーク111に基づいて、撮像装置500による対象の撮像結果の入力に応じて当該対象の識別結果の出力が得られるように、第2のニューラルネットワーク111bの構成をさらに調整するための再度の機械学習を実行する。なお、再度の機械学習による調整を経た第2のニューラルネットワーク111bは、携帯端末200の識別部220に移管される。そして、処理が終了する。
【0053】
図6は、実施形態にかかる対象識別方法を実現するために携帯端末200が実行する一連の処理を示した例示的かつ模式的なフローチャートである。
【0054】
図6に示されるように、実施形態では、まず、ステップS601において、携帯端末200の画像データ取得部210は、コンピュータ端末100により実行される上述した処理において決定された光学特性を有する光学フィルタ300が取り付けられたRGBカメラとしての撮像装置201から、赤(R)、緑(G)、および青(B)の3つの波長に対応した画像データを取得する。
【0055】
そして、ステップS602において、携帯端末200の識別部220は、ステップS601で取得された画像データに対して、第2のニューラルネットワーク111bによる識別を実行する。すなわち、識別部220は、コンピュータ端末100により実行される上述した処理による調整を経て移管された第2のニューラルネットワーク111bにステップS601で取得された画像データを入力し、当該画像データにおいて撮像された対象の識別結果を取得する。
【0056】
そして、ステップS603において、携帯端末200の識別部220は、ステップS602で取得される識別結果を出力する。たとえば、識別部220は、対象としての植物体Xを示す画像を、果実X1と他の部位X2との差異が視覚的に認識できるような態様で、携帯端末200のディスプレイ(不図示)に表示する。そして、処理が終了する。
【0057】
以上説明したように、実施形態にかかる対象識別方法は、学習ステップと、決定ステップと、取得ステップと、識別ステップと、を含んでいる。
【0058】
より具体的に、コンピュータ端末100の学習部110は、学習ステップとして、第1のニューラルネットワーク111aと第2のニューラルネットワーク111bとを備えたニューラルネットワーク111に基づいて機械学習を実行する処理(
図4のステップS401参照)を実行する。第1のニューラルネットワーク111aは、光を多数の波長に分光して撮像するハイパースペクトルカメラとして構成された第1の撮像装置としての撮像装置500により取得される複数の波長(第1の波長)に対応した複数の色チャネル(第1の色チャネル)の画像データ(第1の画像データ)の入力に応じて、赤(R)、緑(G)、および青(B)の3つの波長(第2の波長)に対応した3つの色チャネル(第2の色チャネル)の画像データ(第2の画像データ)を出力するモデルである。また、第2のニューラルネットワーク111bは、赤(R)、緑(G)、および青(B)の3つの波長に対応した3つの色チャネルの画像データの入力に応じて、当該画像データにおいて撮像された対象の識別結果を出力するモデルである。なお、対象とは、たとえば果実X1と当該果実X1以外の他の部位X2とを有する植物体Xであり、第2のニューラルネットワーク111bにより出力される識別結果とは、たとえば果実X1と他の部位X2との判別結果を含んでいる。ここで言及されている画像データとは、単一の画素についての画素値である。
【0059】
ここで、第1のニューラルネットワーク111aは、撮像装置500が撮像可能な複数の波長に対応した複数の色チャネルの画像データの入力を受け付ける当該複数の色チャネルと同数の複数の入力ノードを有する入力層(第1の層L1)と、携帯端末200の撮像装置201が撮像可能な3つの波長に対応した3つの色チャネルの画像データを出力する当該3つの色チャネルと同数の3つの出力ノードを有する出力層(第3の層L3)と、第1の重みW1により入力ノードと関連付けられるとともに、撮像装置500が撮像可能な複数の波長と撮像装置201が撮像可能な3つの波長との関係性に基づいて予め決められた第2の重みW2により出力ノードと関連付けられる入力ノードと同数の中間ノードを有する中間層(第2の層L2)と、により構成されている。そして、コンピュータ端末100の学習部110は、ニューラルネットワーク111に基づく機械学習において、撮像装置500による撮像結果としての複数の色チャネルの画像データの入力に応じて当該複数の画像データにおいて撮像された対象の識別結果が得られるように、第1の重みW1および第2のニューラルネットワーク111bの構成を調整する。
【0060】
そして、コンピュータ端末100の特性決定部120は、決定ステップとして、光を赤(R)、緑(G)、および青(B)の3つの波長に分光して撮像するRGBカメラとして構成された第2の撮像装置として携帯端末200に設けられる撮像装置201に取り付ける光学フィルタ300の光学特性を、上記の機械学習による調整を経た第1の重みW1に応じて決定する処理(
図4のステップS402参照)を実行する。なお、光学フィルタ300とは、波長ごとに第1の重みW1に応じた透過率が設定された波長フィルタである(
図3参照)。
【0061】
そして、携帯端末200の画像データ取得部210は、取得ステップとして、コンピュータ端末100の特性決定部120により決定された光学特性を有する光学フィルタ300が撮像装置201に取り付けられているという環境下で撮像装置201により取得される赤(R)、緑(G)、および青(B)の3つの波長に対応した3つの色チャネルの画像データを取得する処理(
図6のステップS601参照)を実行する。
【0062】
そして、携帯端末200の識別部220は、識別ステップとして、画像データ取得部210により取得された3つの画像データを第2のニューラルネットワーク111bに入力し、対象の識別結果の出力を取得する処理(
図6のステップS602参照)を実行する。
【0063】
したがって、実施形態によれば、赤(R)、緑(G)、および青(B)の3つの波長に高々3つの色チャネルの画像データを根拠としたデータのみに基づいて学習および識別を実行する前述したような従来の技術と異なり、より高次元の、つまりより多くの色チャネルの画像データを利用して、学習の精度を向上させることができるとともに、当該学習の結果が反映された構成(光学フィルタ300)を利用して、3つの色チャネルの画像データを根拠とした識別の精度を向上させることができる。
【0064】
さらに、実施形態にかかる対象識別方法は、上記の4つのステップに加えて、再学習ステップを含みうる。すなわち、実施形態において、コンピュータ端末100の学習部110は、再学習ステップとして、上記の学習ステップにおける機械学習の結果に基づいて実際に物理的に設計された光学フィルタ300の実際の光学特性に応じた固定の重みが第1の重みW1として設定されたニューラルネットワーク111に基づいて、撮像装置500による対象の撮像結果の入力に応じて当該対象の識別結果の出力が得られるように、第2のニューラルネットワーク111bの構成をさらに調整するための再度の機械学習を実行しうる。この場合、携帯端末200の識別部220は、識別ステップとして、再度の機械学習による調整を経た第2のニューラルネットワーク111bを利用して、画像データ取得部210により取得された画像データの入力に応じて当該画像データにおいて撮像された対象の識別結果の出力を取得しうる。このような構成によれば、技術的な制約などにより、実際に物理的に設計された光学フィルタ300の光学特性に合うように再調整された第2のニューラルネットワーク111bに基づいて、識別の精度をさらに向上させることができる。
【0065】
なお、実施形態では、ハイパースペクトルカメラとして構成された撮像装置500のような高価なデバイスが学習時にのみ利用され、識別時にはRGBカメラとして構成された撮像装置201のような一般的なデバイスが利用される。したがって、実施形態の技術によれば、たとえば撮像装置500のような高価なデバイスを学習時および識別時の両方において利用する場合と異なり、低コスト化を図ることができる。
【0066】
ここで、実施形態にかかる対象識別方法の効果について、実験結果とともにより具体的に説明する。
【0067】
図7は、実施形態にかかる対象識別方法の効果を確認するための実験結果を示した例示的かつ模式的な図である。
【0068】
図7に示される例において、第1の比較例とは、学習時および識別時の両方にハイパースペクトルカメラを利用する技術に相当する。たとえば、上述した実施形態に当てはめると、第1の比較例の構成は、光学フィルタ300を使用することなく、携帯端末200に設けられる撮像装置201をハイパースペクトルカメラに置換するとともに、識別部220に記憶させる第2のニューラルネットワーク111bを、ハイパースペクトルカメラの撮像結果の入力に応じて対象の識別結果の出力が適切に得られるようにトレーニングされたニューラルネットワークに置換する構成に相当する。
【0069】
また、第2の比較例とは、前述した従来の技術のような、学習時および識別時の両方にRGBカメラを利用する技術に相当する。
【0070】
ここで、
図7に示される画像701、702、および703は、それぞれ、第1の比較例、実施形態、および第2の比較例にかかる技術によって得られる植物体Xの識別結果に相当する。これらの画像701~703において、明るい領域は、果実X1として識別された領域であり、暗い領域は、果実X1として識別されなかった領域、すなわち他の部位X2として識別された領域である。
【0071】
図7に示される画像701~703を比較すると、画像701は、実際に果実X1を表す領域以外の領域にノイズとして存在する明るい領域が最も小さいので、第1の比較例は、識別の精度が最も高い技術であると言える。しかしながら、第1の比較例は、学習時と識別時との両方においてハイパースペクトルカメラのような高価なデバイスを利用する必要があるので、最も高コストな技術であると言える。
【0072】
また、画像703は、ノイズとして存在する明るい領域が最も大きいので、第2の比較例は、識別の精度が最も低い技術であると言える。しかしながら、第2の比較例は、学習および識別の両方をRGBカメラのような一般的なデバイスによって実現することができるので、精度に課題はあるが、コスト面では優秀な技術であると言える。
【0073】
ここで、画像702は、ノイズとして存在する明るい領域が第1の比較例と第2の比較例との中間程度の大きさであるので、実施形態は、識別の精度が第1の比較例と第2の比較例との中間程度の技術であると言える。また、実施形態は、学習時においてはハイパースペクトルカメラを利用するものの、識別時にはRGBカメラを利用するので、コストも第1の比較例と第2の比較例との中間程度の技術であると言える。
【0074】
上記を踏まえると、精度とコストとの両立を図る技術として、実施形態が最も優秀であると言える。すなわち、実施形態は、一般的に普及しており多くの人が所持しているスマートフォンなどの情報処理装置に適切な光学フィルタおよびニューラルネットワークを提供するだけで高精度の識別を実現可能な技術であるので、非常に有益である。この場合、識別の精度は、ニューラルネットワークによる識別の後にグルーピングなどの画像処理をさらに実行することでさらに向上させることができると見込まれる。
【0075】
なお、実施形態にかかるコンピュータ端末100および携帯端末200において実行される情報処理プログラムは、メモリなどに予め組み込まれた状態で提供されてもよいし、フレキシブルディスク(FD)のような各種の磁気ディスクやDVD(Digital Versatile Disk)のような各種の光ディスクなどといった、コンピュータで読み取り可能な記録媒体にインストール可能な形式または実行可能な形式で記録されたコンピュータプログラムプロダクトとして提供されてもよい。
【0076】
また、実施形態にかかるコンピュータ端末100および携帯端末200において実行される情報処理プログラムは、インターネットなどのネットワーク経由で提供または配布されてもよい。すなわち、実施形態にかかるコンピュータ端末100および携帯端末200において実行される情報処理プログラムは、インターネットなどのネットワークに接続されたコンピュータ上に格納された状態で、ネットワーク経由でのダウンロードを受け付ける、といった形で提供されてもよい。
【0077】
<変形例>
上述した実施形態では、機械学習の結果を光学フィルタ300に反映する構成が例示されている。しかしながら、光学フィルタ300を利用しなくても、たとえば照明装置400による光の照射特性を適切に設定すれば、上述した実施形態と同等の結果を得ることができる。
【0078】
すなわち、本開示は、変形例として、ニューラルネットワーク111に基づく機械学習の結果を光学フィルタ300ではなく照明装置400に反映する構成も想定している。この構成では、光学フィルタ300が取り付けられていない撮像装置201が、光学フィルタ300が取り付けられた撮像装置201と同様の画像データを取得するように、ニューラルネットワーク111に基づく機械学習の結果に基づいて、照明装置400による光の照射特性が設定される。
【0079】
また、上述した実施形態では、学習時に利用される撮像装置500がハイパースペクトルカメラとして構成され、識別時に利用される撮像装置201がRGBカメラとして構成されている。しかしながら、本開示の技術は、撮像装置500が撮像可能な光の波長の数が、撮像装置201が撮像可能な光の波長の数よりも多ければ、撮像装置500がハイパースペクトルカメラ以外のカメラとして構成されてもよいし、撮像装置201がRGBカメラ以外のカメラとして構成されてもよい。この場合、撮像装置201は、モノクロカメラとして構成されてもよい。ただし、前述したように、ハイパースペクトルカメラおよびRGBカメラを利用する実施形態によれば、対象の識別における精度とコストとの両立を図ることができる。
【0080】
また、上述した実施形態では、本開示の技術が植物体Xにおける果実X1と他の部位X2との識別に利用されている。しかしながら、本開示の技術は、他の目的にも利用することが可能である。たとえば、本開示の技術は、果実X1の熟成度の推定や、つぼみの識別、病気の有無の識別などに利用することが可能である。また、本開示の技術は、農業以外にも、塗装製品における色むらの検出にも利用することが可能である。
【0081】
また、上述した実施形態では、対象の識別処理のための第2のニューラルネットワーク111bが携帯端末200により保持されることで対象の識別が携帯端末200により実行される構成が例示されている。しかしながら、変形例として、対象の識別処理のための第2のニューラルネットワーク111bがクラウドサーバのようなネットワーク上の情報処理装置により保持されることで対象の識別がクラウドサーバにより実行される構成も考えられる。この場合、携帯端末200は、撮像装置201により取得した画像データをクラウドサーバに送信し、当該画像データにおいて撮像された対象の識別結果をクラウドサーバから受信する。
【0082】
また、上述した実施形態では、単一の画素についての複数の色チャネルの画素値を入力とするニューラルネットワーク111に基づく機械学習の結果を利用して対象の識別を実現する構成が例示されている。しかしながら、変形例として、次の
図8に示されるような、所定の大きさの領域を構成する複数の画素についての複数の色チャネルの画素値の集合を入力とするニューラルネットワーク811に基づく機械学習の結果を利用して対象の識別を実現する構成も考えられる。
【0083】
図8は、変形例において実行されうる機械学習の概要を示した例示的かつ模式的な図である。なお、以下では、変形例の技術が、上述した実施形態と同様の対象識別システムによって実現されるものとして説明する。
【0084】
図8に示されるように、変形例にかかるニューラルネットワーク800は、画像を入出力とするいわゆる畳み込みニューラルネットワークとして構成されている。より具体的に、ニューラルネットワーク800は、入力層としての第1の層L810と、中間層としての第2の層L820、第3の層L830、および第4の層L840と、出力層としての第5の層L850と、により構成されている。第1の層L810と第2の層L820とは、第1の重みW810によって関連付けられており、第2の層L820と第3の層L830とは、第2の重みW820によって関連付けられている。また、第3の層L830と第4の層L840とは、第3の重みW830によって関連付けられており、第4の層L840と第5の層L850とは、第4の重みW840によって関連付けられている。
【0085】
なお、第4の層840は、複数の層L841、L842、L843…の結合として構成されている。層L841およびL842は、重みW841によって関連付けられており、層L842およびL843は、重み842によって関連付けられている。
図8に示される例では、層L843以降にも、適当な重みによって関連付けられた1以上の層が存在しうるが、第4の層840の構成は、任意に設定または変更されうる。
【0086】
ここで、変形例においても、上述した実施形態と同様に、ニューラルネットワーク800の前段部分としての第1のニューラルネットワーク801と、ニューラルネットワーク800の後段部分としての第2のニューラルネットワーク802と、が構成されている。第1のニューラルネットワーク801は、第1の層L810を入力層として有し、第2の層L820を中間層として有し、第3の層L830を出力層として有するニューラルネットワークであり、第2のニューラルネットワーク802は、第3の層L830を入力層として有し、第4の層L840を中間層として有し、第5の層L850を出力層として有するニューラルネットワークである。
【0087】
変形例にかかる第1のニューラルネットワーク801および第2のニューラルネットワーク802の構成は、入出力が画素値ではなく画素値の集合としての画像である点以外は、上述した第1のニューラルネットワーク811aおよび第2のニューラルネットワーク811bと基本的に同様であると考えることができる。
【0088】
すなわち、変形例にかかる第1のニューラルネットワーク801は、複数の画素の集合として構成される高さがHで幅がWであるN枚の画像の入力を受け付け、当該入力に応じて、高さがHで幅がWであるM枚の画像を出力するように構成されている。Nは、上述した撮像装置500のような多波長分光カメラが撮像可能な波長(色チャネル)の数に対応し、Mは、上述した撮像装置201のようなRGBカメラが撮像可能な波長(色チャネル)の数に対応する。
【0089】
したがって、第1のニューラルネットワーク801の入力層としての第1の層L810は、多波長分光カメラにより取得されるデータキューブに対応した画像IM810を構成する画像IM811、IM812、IM813…のような複数の色チャネルの画像の入力を受け付ける層として構成されている。また、第1のニューラルネットワーク801の出力層としての第3の層L830は、RGBカメラの撮像結果に対応した画像IM820を構成する画像IM821、IM822、およびIM823のような3つの色チャネルの画像を出力する、第1の層L810よりも低次元の層として構成されている。
【0090】
そして、第1のニューラルネットワーク801の中間層としての第2の層L820は、第1の層L810と同次元の層として構成されている。これにより、変形例においても、上述した実施形態と同様に、第1の層L810と第2の層L820とを関連付ける第1の重みW810を、RGBカメラに取り付ける上述した光学フィルタ300の光学特性を決定するための根拠として使用することができる。なお、第2の層L820と第3の層L830とを関連付ける第2の重みW820が、撮像装置500が撮像可能な複数の波長と、撮像装置201が撮像可能な3つの波長と、の関係性に応じて予め決められる定数であることは、上述した実施形態と同様である。
【0091】
一方、変形例にかかる第2のニューラルネットワーク802は、RGBカメラの撮像結果に対応した画像IM820を構成する画像IM821、IM822、およびIM823のような3つの色チャネルの画像の入力を受け付け、当該入力に応じて、たとえば画像IM800のように、二値化処理によって識別対象の部分(たとえば上述した果実X1)が他の部分と差別化された1枚の画像を出力するように構成されている。これにより、対象の識別結果を視覚的に分かりやすい形で提供することができる。
【0092】
変形例では、以上のような構成を有するニューラルネットワーク800に基づいて、上述した撮像装置500のような多波長分光カメラにより取得される複数の色チャネルの画像の入力に応じて当該画像において撮像された対象の識別結果が得られるように、第1のニューラルネットワーク801における第1の重みW810および第2のニューラルネットワーク802の構成を調整するための機械学習が実行される。そして、変形例では、上述した実施形態と同様に、機械学習による調整を経た第1の重みW810に応じて設計された光学フィルタ300が携帯端末200の撮像装置201に取り付けられるとともに、機械学習による調整を経た第2のニューラルネットワーク802が携帯端末200に搭載される。これにより、変形例によっても、上述した実施形態と同様に、対象の識別の精度がより向上した対象識別方法を提供することができる。
【0093】
さらに、上述した実施形態では、機械学習の結果に基づいて光学フィルタ300の特性を決定する構成が例示されているが、変形例として、数式モデルに基づいて数学的な計算により光学フィルタ300の光学特性を決定する構成も考えられる。この構成においては、たとえば下記の式(100)で示される評価関数Jが利用される。
【0094】
【0095】
上記の式(100)の右辺にある3つのパラメータは、下記の式(101)~(103)に基づくパラメータである。
【0096】
【0097】
上記の式(101)~(103)において、s
g(λ)は、植物体Xにおける果実X1のような識別すべき対象を上述した撮像装置500のような多波長分光カメラにより撮像することで得られる複数の色チャネルの画像データを波長λの関数として表現したものであり、s
l(λ)は、植物体Xにおける他の部位X2のような識別すべき対象と異なる非対象を上述した撮像装置500のような多波長分光カメラにより撮像することで得られる複数の色チャネルの画像データを波長λの関数として表現したものである。s
g(λ)およびs
l(λ)は、たとえば次の
図9に示されるような特性を有している。
【0098】
図9は、変形例にかかる数式モデルにおいて利用されうる画像データの特性を示した例示的かつ模式的な図である。
図9に示される例では、s
g(λ)が実線L901で表され、s
l(λ)が一点鎖線L902で表されている。植物体Xがたとえばピーマンである場合、果実X1と他の部位X2とが互いに類似の色を有しているので、s
g(λ)およびs
l(λ)は、互いに類似の特性(形状)を有することになる。
【0099】
上記の式(101)~(103)に戻り、Tr(λ)、Tg(λ)、およびTb(λ)は、上述した撮像装置500のような多波長分光カメラが撮像可能な多次元色空間の情報を上述した撮像装置201のようなRGBカメラが撮像可能な3次元色空間の情報に変換(射影)するために波長λに応じて予め決められた値を有する関数である。
【0100】
したがって、T
r(λ)、T
g(λ)、およびT
b(λ)は、撮像装置500が撮像可能な波長と撮像装置201が撮像可能な波長との関係性に基づいて波長λに応じて予め決められた値を有する関数であると言えるので、上述した実施形態にかかる第2の重みW2と一致すると言える。そこで、以下では、T
r(λ)、T
g(λ)、およびT
b(λ)を、第2の重みと表現することがある。上述した実施形態にかかる第2の重みW2も同様であるが、変形例にかかる第2の重みは、たとえば次の
図10に示されるような特性を有している。
【0101】
図10は、変形例にかかる数式モデルにおいて利用されうる第2の重みの特性を示した例示的かつ模式的な図である。
図10に示される例では、T
r(λ)が実線L1001で表され、T
g(λ)が一点鎖線L1002で表され、T
b(λ)が二点鎖線L1003で表されている。T
r(λ)、T
g(λ)、およびT
b(λ)は、それぞれ、上述した3次元空間における赤(R)、緑(G)、および青(B)の波長に対応した軸への射影を実行するための関数である。したがって、T
r(λ)、T
g(λ)、およびT
b(λ)は、それぞれ異なる位置でピークを迎えるような特性(形状)を有している。
【0102】
上記の式(101)~(103)に戻り、Tr(λ)、Tg(λ)、またはTb(λ)と、sg(λ)またはsl(λ)と、の間に存在するf(λ)は、多波長分光カメラが撮像可能な多次元色空間の情報をRGBカメラが撮像可能な3次元色空間の情報に変換(射影)するにあたって多次元色空間の情報に対して波長λごとに何らかの光学的な処理を実行するための関数に相当する。
【0103】
したがって、f(λ)は、光学フィルタ300の光学特性を決定するために考慮される上述した実施形態にかかる第1の重みW1に対応していると言える。そこで、以下では、f(λ)を、第1の重みと表現することがある。変形例にかかる第1の重みは、上述した実施形態にかかる第1の重みW1と同様、調整可能な変数である。
【0104】
以上を踏まえると、上記の式(100)は、下記の式(110)のようにも表現できる。
【0105】
【0106】
上記の式(110)において、Rg、Gg、およびBgは、植物体Xにおける果実X1のような識別対象を上述した撮像装置201のようなRGBカメラにより撮像することで得られる3つの色チャネルの画像データであり、Rl、Gl、およびBlは、植物体Xにおける他の部位X2のような非識別対象を上述した撮像装置201のようなRGBカメラにより撮像することで得られる3つの色チャネルの画像データである。
【0107】
したがって、上記の式(110)に示される評価関数Jの値を所定レベル以上にする(たとえば最大化する)ことが可能な第1の重みを特定し、当該第1の重みに応じた光学特性を有するように設計された光学フィルタ300を撮像装置201に取り付ければ、当該撮像装置201によって得られる3つの色チャネルの画像データ上で識別対象と非識別対象との差異を明確化することができると言える。
【0108】
そこで、変形例は、たとえば以下に説明するような手法で、評価関数Jの値を最大化するような第1の重みとしてのf(λ)を特定し、当該f(λ)に応じて、撮像装置201に取り付けるべき光学フィルタ300の光学特性を決定する。
【0109】
上記のような条件を満たすf(λ)を特定するための手法として、上述した各関数を離散化する手法が考えられる。この手法によれば、下記の式(201)~(205)に基づいて、上記の式(101)を、下記の式(200)のように書き換えることができる。
【0110】
【0111】
【0112】
なお、上記の式(202)では、上記の式(101)における{(sg(λ)-sl(λ)}を、単にs(λ)と表記している。
【0113】
上記の式(200)によれば、下記の式(206)が成立する。
【0114】
【0115】
そして、下記の式(207)によれば、上記の式(206)を、下記の式(208)のように書き換えることができる。
【0116】
【0117】
【0118】
以上のような離散化を上記の式(100)の右辺にある3つのパラメータの全てについて実行すると、評価関数Jに関する下記の式(300)を導出することができる。
【0119】
【0120】
なお、上記の式(300)において、Sr、Sg、Sbは、ハイパースペクトルカメラの撮像結果と第2の重みとに基づいて決まる定数項であり、(Sr+Sg+Sb)という項の両側に存在する行ベクトルおよび列ベクトルは、上述した第1の重みに対応した変数としてのf(λ1)、f(λ1)、…、およびf(λN)を成分として有している。
【0121】
以上を踏まえて、変形例は、第1の重みがゼロ以上であるという拘束条件のもとで、上記の式(300)を最大化するような第1の重みを特定する。そして、変形例は、特定された(波長ごとの)第1の重みに応じて、たとえば次の
図11に示されるような形で、光学フィルタ300の(波長ごとの)光学特性を決定する。
【0122】
図11は、変形例にかかる数式モデルに基づいて特定された第1の重みに応じて決定された光学フィルタ300の光学特性の例を示した例示的かつ模式的な図である。変形例においても、上述した実施形態と同様に、光学フィルタ300が、波長ごとに実線L1100で示されるような透過率が設定されているという光学特性を有する波長フィルタとして実現される。
【0123】
なお、このような数式モデルを利用する変形例においても、対象の識別時には、上述した実施形態にかかる再学習ステップと同様の発想でトレーニングされたニューラルネットワークが利用されうる。したがって、数式モデルを利用する変形例においても、上述した実施形態にかかるニューラルネットワーク111と同様の、前半部分としての第1のニューラルネットワークと、後半部分としての第2のニューラルネットワークと、を含むニューラルネットワークに基づく機械学習が実行される。
【0124】
より具体的に、数式モデルを利用する変形例では、
図11に示されるような光学特性に応じた固定の第1の重みと、撮像装置500が撮像可能な複数の波長と撮像装置201が撮像可能な3つの波長との関係性に基づく固定の第2の重みと、が設定された第1のニューラルネットワークと、調整対象の第2のニューラルネットワークと、を含むニューラルネットワークに基づいて、撮像装置500による対象の撮像結果の入力に応じて当該対象の識別結果の出力が得られるように、第2のニューラルネットワークの構成を調整するための機械学習が実行される。この場合、機械学習による調整を経た第2のニューラルネットワークが、対象の識別用のニューラルネットワークとして利用される。
【0125】
以上、本開示の実施形態および変形例を説明したが、上述した実施形態はあくまで一例であって、発明の範囲を限定することは意図していない。上述した新規な実施形態および変形例は、様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。上述した実施形態および変形例は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0126】
100 コンピュータ端末(情報処理装置)
110 学習部
111、800 ニューラルネットワーク
111a、801 第1のニューラルネットワーク
111b、802 第2のニューラルネットワーク
120 特性決定部(決定部)
200 携帯端末(情報処理装置)
201 撮像装置(第2の撮像装置)
210 画像データ取得部(取得部)
220 識別部
300 光学フィルタ(波長フィルタ)
400 照明装置
500 撮像装置(第1の撮像装置)