(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023183956
(43)【公開日】2023-12-28
(54)【発明の名称】学習プログラム、推論プログラム、学習方法および推論方法
(51)【国際特許分類】
G06T 7/00 20170101AFI20231221BHJP
G06V 10/143 20220101ALI20231221BHJP
H04N 7/18 20060101ALI20231221BHJP
【FI】
G06T7/00 350B
G06V10/143
H04N7/18 D
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2022097784
(22)【出願日】2022-06-17
(71)【出願人】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】白石 壮大
【テーマコード(参考)】
5C054
5L096
【Fターム(参考)】
5C054CA04
5C054CA05
5C054CC02
5C054EA01
5C054EA07
5C054FC01
5C054FC03
5C054FC07
5C054FC12
5C054FC14
5C054GB15
5C054HA31
5L096AA02
5L096AA06
5L096BA02
5L096FA66
5L096GA40
5L096GA53
5L096HA11
5L096JA05
5L096JA11
5L096KA04
5L096MA07
(57)【要約】
【課題】NIR画像を正しくグレースケール画像に変換すること。
【解決手段】情報処理装置は、素材の異なる複数の物体を第一の波長域で撮影した第一の画像と、素材の異なる複数の物体を第二の波長域で撮影した画像をグレースケールに変換した第二の画像とを取得する。情報処理装置は、同一の素材の物体に対する第一の画像の特徴量と第二の画像の特徴量との関係を示すサンプルを、異なる素材の物体毎に特定することで生成される複数のサンプルの分布を基にして、複数のサンプルを、複数のクラスタに分類する。情報処理装置は、複数のクラスタに含まれるサンプルを基にして、複数の機械学習モデルを訓練する。
【選択図】
図4
【特許請求の範囲】
【請求項1】
素材の異なる複数の物体を第一の波長域で撮影した第一の画像と、前記素材の異なる複数の物体を第二の波長域で撮影した画像をグレースケールに変換した第二の画像とを取得し、
同一の素材の物体に対する前記第一の画像の特徴量と前記第二の画像の特徴量との関係を示すサンプルを、異なる素材の物体毎に特定することで生成される複数のサンプルの分布を基にして、前記複数のサンプルを、複数のクラスタに分類し、
前記複数のクラスタに含まれるサンプルを基にして、複数の機械学習モデルを訓練する
処理をコンピュータに実行させることを特徴とする学習プログラム。
【請求項2】
前記分類する処理は、前記複数のサンプルの分布を基にして、各サンプル間の距離に基づくクラスタリングを実行することで、前記複数のサンプルを、複数のクラスタに分類することを特徴とする請求項1に記載の学習プログラム。
【請求項3】
前記訓練する処理は、前記複数のクラスタから一つのクラスタを選択し、選択したクラスタに含まれる複数のサンプルを基にして、前記複数の機械学習モデルのうち、一つの機械学習モデルを訓練することを特徴とする請求項1に記載の学習プログラム。
【請求項4】
素材の異なる複数の物体を第一の波長域で撮影した第一の画像、および、前記素材の異なる複数の物体を第二の波長域で撮影した画像をグレースケールに変換した第二の画像であって、同一の素材の物体に対する前記第一の画像の特徴量と前記第二の画像の特徴量との関係を示すサンプルを、異なる素材の物体毎に特定することで生成される複数のサンプルの分布を基にして分類された複数のクラスタに含まれるサンプルを基にして訓練された機械学習モデルを取得し、
前記第一の波長域で撮影された第三の画像を前記機械学習モデルに入力することで、前記第二の波長域で撮影された第四の画像を推論する
処理をコンピュータに実行させることを特徴とする推論プログラム。
【請求項5】
前記取得する処理は、前記複数のクラスタに含まれるサンプルを基にして訓練された複数の機械学習モデルを取得し、
前記推論する処理は、前記第三の画像を、前記複数の機械学習モデルに入力することで、複数の第四の画像を推論し、
前記複数の第四の画像を複数のRGB画像に変換し、前記複数のRGB画像と、所定のRGB画像との一致度を基にして、最大の一致度となるRGB画像に対応する前記第四の画像を推論した機械学習モデルを、前記複数の機械学習モデルから選択する処理を更にコンピュータに実行させることを特徴とする請求項4に記載の推論プログラム。
【請求項6】
前記推論する処理は、前記第三の画像に含まれる物体の領域を複数の領域に分割し、分割した領域の画像を前記複数の機械学習モデルに入力し、前記複数の機械学習モデルから出力される各領域の画像を統合することで、前記第四の画像を推論することを特徴とする請求項5に記載の推論プログラム。
【請求項7】
前記選択する処理よって選択された回数を、前記機械学習モデル毎にテーブルに登録する処理を更に実行し、前記選択する処理は、前記所定のRGB画像が存在しない場合に、前記テーブルに登録された前記回数を基にして、前記機械学習モデルを選択することを特徴とする請求項5に記載の推論プログラム。
【請求項8】
素材の異なる複数の物体を第一の波長域で撮影した第一の画像と、前記素材の異なる複数の物体を第二の波長域で撮影した画像をグレースケールに変換した第二の画像とを取得し、
同一の素材の物体に対する前記第一の画像の特徴量と前記第二の画像の特徴量との関係を示すサンプルを、異なる素材の物体毎に特定することで生成される複数のサンプルの分布を基にして、前記複数のサンプルを、複数のクラスタに分類し、
前記複数のクラスタに含まれるサンプルを基にして、複数の機械学習モデルを訓練する
処理をコンピュータが実行することを特徴とする学習方法。
【請求項9】
素材の異なる複数の物体を第一の波長域で撮影した第一の画像、および、前記素材の異なる複数の物体を第二の波長域で撮影した画像をグレースケールに変換した第二の画像であって、同一の素材の物体に対する前記第一の画像の特徴量と前記第二の画像の特徴量との関係を示すサンプルを、異なる素材の物体毎に特定することで生成される複数のサンプルの分布を基にして分類された複数のクラスタに含まれるサンプルを基にして訓練された機械学習モデルを取得し、
前記第一の波長域で撮影された第三の画像を前記機械学習モデルに入力することで、前記第二の波長域で撮影された第四の画像を推論する
処理をコンピュータが実行することを特徴とする推論方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、学習プログラム等に関する。
【背景技術】
【0002】
駅や街中などにおいて、複数の防犯カメラが設置されており、防犯カメラに撮影された画像(映像)は、犯人検挙等を目的として利用される。ここで、防犯カメラの画像を目視で確認する場合、ユーザに係る負担が大きいため、自動で特定の人物を探索する従来技術が利用されている。なお、犯罪の多くが夜間に行われるため、従来技術では、防犯カメラの画像として、RGB(Red Green Blue)カメラのRGB画像の他に、NIR(Near-Infrared)カメラのNIR画像を用いて、人物を探索する。
【0003】
ここで、従来技術は、RGB画像を前提とした技術であるため、NIR画像を利用する場合には、NIR画像をRGB画像に変換した後に、探索する処理を行う。
【0004】
図15は、NIR画像をRGB画像に変換する従来技術を説明する図である。従来技術では、2段階の処理で、NIR画像を、RGB画像に変換する。
図15に示すように、従来技術では、学習モデルM1と、学習モデルM2とを用いる。学習モデルM1は、NIR画像を入力とし、グレースケール画像を出力とする訓練済みの学習モデルである。学習モデルM2は、クレースケール画像を入力とし、RGB画像を出力とする訓練済みの学習モデルである。
【0005】
グレースケール画像では、対象に対して、可視光の反射率が高い部分が白色(輝度値:255)に近づき、反射率が低くなるにつれて、黒色(輝度値:0)に近づく。NIR画像は、対象に対して、赤外線の反射率が高い部分が白色(輝度値:255)に近づき、反射率が低くなるにつれて、黒色(輝度値:0)に近づく。
【0006】
図16は、可視光と赤外線との関係を示す図である。
図16に示すように、可視光は、波長が380nm~780nmまでの光である。赤外線は、波長が780nmより大きい光である。
【0007】
従来技術では、NIR画像5aを、学習モデルM1に入力することで、グレースケール画像5bを生成する。従来技術では、グレースケール画像5bを、学習モデルM2に入力することで、RGB画像5cを生成する。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開2006-148690号公報
【特許文献2】国際公開第2015/011824号
【特許文献3】米国特許出願公開第2004/0001142号明細書
【特許文献4】米国特許出願公開第2020/0242355号明細書
【発明の概要】
【発明が解決しようとする課題】
【0009】
しかしながら、従来技術では、可視光で同一の反射特性を持つ対象であっても、NIRの反射特性は対象の素材によって大きく異なるため、NIR画像からグレースケール画像に正しく変換できない場合がある。
【0010】
図17は、RGB画像、グレースケール画像、NIR画像の一例を示す図である。
図17において、RGB画像(可視光画像)10と、グレースケール画像11と、NIR画像12とを示す。RGB画像10のフリースの領域を領域10aとし、革靴の領域を領域10bとする。グレースケール画像11のフリースの領域を領域11aとし、革靴の領域を領域11bとする。NIR画像12のフリースの領域を領域12aとし、革靴の領域を領域12bとする。
【0011】
フリースの色は黒色であるため、領域10aおよび領域11bは黒色となる。なお、フリースの素材が、ポリエステル等の化学繊維の場合には、赤外線に対して高い反射率を持つため、領域12aは白色となる。
【0012】
革靴の色は黒であるため、領域10aおよび領域11bは黒色となる。革素材は、ポリエステル等のように、赤外線に対して高い反射率を持たないため、領域12aは黒色となる。
【0013】
上記の結果をまとめると、テーブル13に示すものとなる。すなわち、革靴の領域については、RGB画像10、グレースケール画像11、NIR画像12ともに黒色となる。一方、フリースの領域については、RGB画像10、グレースケール画像11では黒色となるものの、NIR画像12については、白色となる。
【0014】
このように、RGB画像のある色に対して、グレースケール画像の色と、NIR画像の色とが一致しないと、
図15に示した学習モデルM1を訓練するための適切な訓練データを生成できない。たとえば、NIR画像において「白色」の対象が、グレースケール画像において「白色」であるのか、「黒色」であるのかを設定することが難しい。そうすると、学習モデルM1を用いて、NIR画像をグレースケール画像に変換した際に、グレースケール画像を正しく生成できない場合がある。
【0015】
1つの側面では、本発明は、NIR画像を正しくグレースケール画像に変換することができる学習プログラム、推論プログラム、学習方法および推論方法を提供することを目的とする。
【課題を解決するための手段】
【0016】
第1の案では、コンピュータに、次の処理を実行させる。コンピュータは、素材の異なる複数の物体を第一の波長域で撮影した第一の画像と、素材の異なる複数の物体を第二の波長域で撮影した画像をグレースケールに変換した第二の画像とを取得する。コンピュータは、同一の素材の物体に対する第一の画像の特徴量と第二の画像の特徴量との関係を示すサンプルを、異なる素材の物体毎に特定することで生成される複数のサンプルの分布を基にして、複数のサンプルを、複数のクラスタに分類する。コンピュータは、複数のクラスタに含まれるサンプルを基にして、複数の機械学習モデルを訓練する。
【発明の効果】
【0017】
NIR画像を正しくグレースケール画像に変換することができる。
【図面の簡単な説明】
【0018】
【
図1】
図1は、本実施例に係るシステムの一例を示す図である。
【
図2】
図2は、情報処理装置の学習フェーズの処理を説明するための図(1)である。
【
図3】
図3は、情報処理装置の学習フェーズの処理を説明するための図(2)である。
【
図4】
図4は、情報処理装置の学習フェーズの処理を説明するための図(3)である。
【
図5】
図5は、素材の反射特性の一例を示す図である。
【
図6】
図6は、情報処理装置の推論フェーズの処理を説明するための図(1)である。
【
図7】
図7は、情報処理装置の推論フェーズの処理を説明するための図(2)である。
【
図8】
図8は、情報処理装置の推論フェーズの処理を説明するための図(3)である。
【
図9】
図9は、使用頻度テーブルに登録されるデータの一例を示す図である。
【
図10】
図10は、本実施例に係る情報処理装置の構成を示す機能ブロック図である。
【
図11】
図11は、画像データテーブルのデータ構造の一例を示す図である。
【
図12】
図12は、本実施例に係る情報処理装置の学習フェーズの処理手順を示すフローチャートである。
【
図13】
図13は、本実施例に係る情報処理装置の推論フェーズの処理手順を示すフローチャートである。
【
図14】
図14は、実施例の情報処理装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
【
図15】
図15は、NIR画像をRGB画像に変換する従来技術を説明する図である。
【
図17】
図17は、RGB画像、グレースケール画像、NIR画像の一例を示す図である。
【発明を実施するための形態】
【0019】
以下に、本願の開示する学習プログラム、推論プログラム、学習方法および推論方法の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例0020】
本実施例に係るシステムの一例について説明する。
図1は、本実施例に係るシステムの一例を示す図である。
図1に示すように、このシステムは、NIRカメラ30a,30bと、RGBカメラ40a,40b,40cと、情報処理装置100とを有する。
【0021】
NIRカメラ30a,30bおよびRGBカメラ40a~40cと、情報処理装置100とは、有線または無線によって相互に接続される。
【0022】
NIRカメラ30a,30bは、赤外線によって対象物のNIR画像を撮影するカメラである。NIRカメラ20a,30bは、撮影したNIR画像のデータを、情報処理装置100に送信する。以下の説明では、NIR画像のデータを、「NIR画像データ」と表記する。また、NIRカメラ30a,30bをまとめて、「NIRカメラ30」と表記する。たとえば、NIRカメラ30は、時系列のNIR画像データを、情報処理装置100に送信し、各NIR画像データには、フレーム番号、撮影時刻の情報が付与される。
【0023】
RGBカメラ40a~40cは、可視光によって対象物のRGB画像を撮影するカメラである。RGBカメラ40a~40cは、撮影したRGB画像のデータを、情報処理装置100に送信する。以下の説明では、RGB画像のデータを、「RGB画像データ」と表記する。また、RGBカメラ40a~40cをまとめて、「RGBカメラ40」と表記する。
【0024】
情報処理装置100は、NIRカメラ30からNIR画像データを取得し、RGBカメラ40からRGB画像データを取得し、学習フェーズの処理および推論フェーズの処理を実行する。以下において、情報処理装置100の学習フェーズの処理および推論フェーズの処理について順に説明する。
【0025】
情報処理装置100が実行する学習フェーズの処理の処理について説明する。
図2、
図3、
図4は、情報処理装置の学習フェーズの処理を説明するための図である。学習フェーズにおいて、情報処理装置100は、複数のNIR画像データ、複数のRGB画像データを基にして、NIR輝度値と、グレースケール輝度値とを関係を示す訓練データを生成する。情報処理装置は、訓練データの特徴量に応じて、訓練データをクラスタリングし、クラスタ毎の訓練データを基にして、複数の学習モデルのパラメータを訓練する。後述するように、各学習モデルは、それぞれ異なる素材の反射特性に応じた学習モデルとなる。
【0026】
図2について説明する。情報処理装置100は、複数のNIR画像データ、複数のRGB画像データから、所定の所持品を有する人物を検出し、検出した人物を含むNIR画像データ、RGB画像データを抽出する。
【0027】
図2では、情報処理装置100が、所持品(リュック)6を有する人物のRGB画像データ15a,15bと、NIR画像データ16とを抽出した例を示す。RGB画像データ15aは、RGBカメラ40bで撮影されたRGB画像データである。RGB画像データ15bは、カメラ40cで撮影されたRGB画像データである。NIR画像データ16は、NIRカメラ30bに撮影されたNIR画像データである。
【0028】
たとえば、情報処理装置100は、RGB画像データ15aを、グレースケール画像データに変換し、変換したグレースケール画像データの人物の上半身の輝度値と、NIR画像データ16の人物の上半身の輝度値との関係を特定し、輝度値テーブルに登録する。また、情報処理装置100は、グレースケール画像データの人物の下半身の輝度値と、NIR画像データ16の人物の下半身の輝度値との関係を特定し、輝度値テーブルに登録する。
【0029】
情報処理装置100は、RGB画像データ15bを、グレースケール画像データに変換し、変換したグレースケール画像データの人物の上半身の輝度値と、NIR画像データ16の人物の上半身の輝度値との関係を特定し、輝度値テーブルに登録する。また、情報処理装置100は、グレースケール画像データの人物の下半身の輝度値と、NIR画像データ16の人物の下半身の輝度値との関係を特定し、輝度値テーブルに登録する。
【0030】
図3の説明に移行する。情報処理装置100は、複数のNIR画像データ、複数のRGB画像データに付与された撮影時刻の情報を基にして、追跡可能な人物を追跡し、追跡した人物を含むNIR画像データ、RGB画像データを抽出する。たとえば、情報処理装置100は、人物の服装、髪型、身長、形状等の人物特徴を基にして、人物を追跡する。
【0031】
図3では、情報処理装置100が、追跡可能な人物7を有するRGB画像データ17a、NIR画像データ18、RGB画像データ17bを抽出した例を示す。たとえば、RGB画像データ17aは、時刻t1において、カメラ40aで撮影されたRGB画像データである。NIR画像データ18は、時刻t2において、NIRカメラ30aに撮影されたNIR画像データである。RGB画像データ17bは、時刻t3において、カメラ40dで撮影されたRGB画像データである。すなわち、人物7は、
図1において、カメラ40aの位置、NIRカメラ30aの位置、カメラ40dの位置の順に移動したことを意味する。
【0032】
情報処理装置100は、RGB画像データ17aを、グレースケール画像データに変換し、変換したグレースケール画像データの人物の上半身の輝度値と、NIR画像データ18の人物の上半身の輝度値との関係を特定し、輝度値テーブルに登録する。情報処理装置100は、グレースケール画像データの人物の下半身の輝度値と、NIR画像データ18の人物の下半身の輝度値との関係を特定し、輝度値テーブルに登録する。
【0033】
情報処理装置100は、RGB画像データ17bを、グレースケール画像データに変換し、変換したグレースケール画像データの人物の上半身の輝度値と、NIR画像データ18の人物の上半身の輝度値との関係を特定し、輝度値テーブルに登録する。情報処理装置100は、グレースケール画像データの人物の下半身の輝度値と、NIR画像データ18の人物の下半身の輝度値との関係を特定し、輝度値テーブルに登録する。
【0034】
図4の説明に移行する。グラフG1は、上記の
図2、
図3の処理によって輝度値テーブルに登録されたNIR輝度値と、グレースケール輝度値との関係を示す図である。グラフG1の縦軸はNIR輝度値に対応し、横軸はグレースケール輝度値に対応する。グラフG1には複数のサンプルが示される。たとえば、サンプルSaは、NIR輝度値「Nbr1」に対応するグレースケール輝度値が「Gbr1」である旨が示される。
【0035】
情報処理装置100は、グラフG1に含まれる複数のサンプルに対して、クラスタリング処理を実行することで、複数のサンプルを、複数のクラスタに分類する。
図4に示す例では、複数のサンプルが、クラスタCr1,Cr2,Cr3に分類されている。たとえば、情報処理装置100は、クラスタリングとして、DBSCAN(Density-based spatial clustering of applications with noise)を実行する。
【0036】
情報処理装置100は、クラスタCr1に含まれる複数のサンプルを基にして、NIR輝度値を入力とし、グレースケール輝度値を出力とする「第1学習モデル」を訓練する。かかる第1学習モデルに、NIR画像データを入力すると、NIR画像データの各画素のNIR輝度値が、グレースケール輝度値にそれぞれ変換され、グレースケール画像データが生成される。第1学習モデルは、NN(neural network)等である。クラスタCr1の複数のサンプルは、第1学習モデルを訓練するための訓練データに相当する。
【0037】
情報処理装置100は、クラスタCr2に含まれる複数のサンプルを基にして、NIR輝度値を入力とし、グレースケール輝度値を出力とする「第2学習モデル」を訓練する。かかる第2学習モデルに、NIR画像データを入力すると、NIR画像データの各画素のNIR輝度値が、グレースケール輝度値にそれぞれ変換され、グレースケール画像データが生成される。第2学習モデルは、NN等である。クラスタCr2の複数のサンプルは、第2学習モデルを訓練するための訓練データに相当する。
【0038】
情報処理装置100は、クラスタCr3に含まれる複数のサンプルを基にして、NIR輝度値を入力とし、グレースケール輝度値を出力とする「第3学習モデル」を訓練する。かかる第3学習モデルに、NIR画像データを入力すると、NIR画像データの各画素のNIR輝度値が、グレースケール輝度値にそれぞれ変換され、グレースケール画像データが生成される。第3学習モデルは、NN等である。クラスタCr3の複数のサンプルは、第3学習モデルを訓練するための訓練データに相当する。
【0039】
ここで、素材の反射特性の一例について説明する。
図5は、素材の反射特性の一例を示す図である。
図5に示す例では、素材の一例として、綿、麻、PEs(Polyethersulfone)、PET(Polyethyleneterephthalate)、キュプラ、アセテート、PP(polypropylene)、レーヨン、絹、ビニロン、ウールの反射特性を示す。グラフG2の縦軸は吸光度(absorbance)に対応し、横軸は周波数に対応する。
【0040】
線l1は、綿の反射特性である。線l2は、麻の反射特性である。線l3は、PEsの反射特性を示す。線l4は、PETの反射特性を示す。線l5は、キュプラの反射特性を示す。線l6は、アセテートの反射特性を示す。線l7は、PPの反射特性を示す。線l8は、レーヨンの反射特性を示す。線l9は、絹の反射特性を示す。線l10は、ビニロンの反射特性を示す。線l11は、ウールの反射特性を示す。
【0041】
図5に示すように、綿、麻は、反射特性が類似している。PEs、PETは、反射特性が類似している。キュプラ、アセテート、PP、レーヨン、絹、ビニロン、ウールは、反射特性が類似している。これによって、素材の反射特性は、3つのカテゴリに大別できるといえる。
【0042】
情報処理装置100は、
図4に示すように、複数のサンプルを、クラスタCr1,Cr2,Cr3に分類し、クラスタCr1,Cr2,Cr3のサンプルを用いて、第1学習モデル、第2学習モデル、第3学習モデルをそれぞれ訓練する。すなわち、第1学習モデル、第2学習モデル、第3学習モデルは、それぞれ、異なる素材の反射特性を反映した、学習モデルとなる。
【0043】
たとえば、第1学習モデルは、綿、麻の反射特性を反映した訓練データで訓練された学習モデルである。第2学習モデルは、PEs、PETの反射特性を反映した訓練データで訓練された学習モデルである。第3学習モデルは、キュプラ、アセテート、PP、レーヨン、絹、ビニロン、ウールの反射特性を反映した訓練データで訓練された学習モデルである。
【0044】
続いて、情報処理装置100が実行する推論フェーズの処理の処理について説明する。
図6、
図7、
図8は、情報処理装置の推論フェーズの処理を説明するための図である。推論フェーズにおいて、情報処理装置100は、NIRカメラ30が撮影したNIR画像データを、第1学習モデル、第2学習モデル、第3学習モデルを用いて、グレースケール画像データに変換し、グレースケール画像を、RGB画像データに変換する。
【0045】
図6について説明する。情報処理装置100は、NIR画像データ20に含まれる人物の各領域を推定する。本実施例では、人物の各領域を、上半身の服の領域、下半身の服の領域とする。たとえば、情報処理装置100は、SOLOv2(Segmenting Objects by Locations v2)等の着衣領域の検出を行う学習モデルM3を利用する。
【0046】
図6に示す例では、情報処理装置100が、NIR画像データ20を、学習モデルM3に入力することで、NIR画像データ20から、着衣のタイプの確率、セグメンテーションを推定し、上半身の服の領域21aと、下半身の服の領域21bとを検出する。
【0047】
図7について説明する。情報処理装置100は、
図6で検出した上半身の服の領域21aと、下半身の服の領域21bを、第1学習モデル、第2学習モデル、第3学習モデルでそれぞれグレースケールに変換する。情報処理装置100は、上半身および下半身の各グレースケールを統合することで、複数パターンの統合画像データを生成する。
【0048】
情報処理装置100は、上半身の服の領域21aを、第1学習モデル、第2学習モデル、第3学習モデルにそれぞれ入力することで、3パターンの上半身のグレースケールを生成する。情報処理装置100は、下半身の服の領域21bを、第1学習モデル、第2学習モデル、第3学習モデルにそれぞれ入力することで、3パターンの下半身のグレースケールを生成する。3パターンの上半身のグレースケールと、3パターンの下半身のグレースケールとの組み合わせにより、合計9パターンの統合データが生成される。
【0049】
図7に示す例では、情報処理装置100は、上半身の服の領域21aを、第1学習モデルに入力することで、上半身の服のグレースケールデータ22aを生成する。情報処理装置100は、下半身の服の領域21bを、第1学習モデルに入力することで、下半身の服のグレースケールデータ22bを生成する。情報処理装置100は、上半身の服のグレースケールデータ22aと、下半身の服のグレースケールデータ22bとを統合することで、統合データ50-1を生成する。また、情報処理装置100は、統合データ50-1をRGB変換することで、RGB画像データ60-1を生成する。
【0050】
情報処理装置100は、上半身の服の領域21aを、第1学習モデルに入力することで、上半身の服のグレースケールデータ22aを生成する。情報処理装置100は、下半身の服の領域21bを、第2学習モデルに入力することで、下半身の服のグレースケールデータ22cを生成する。情報処理装置100は、上半身の服のグレースケールデータ22aと、下半身の服のグレースケールデータ22cとを統合することで、統合データ50-2を生成する。また、情報処理装置100は、統合データ50-2をRGB変換することで、RGB画像データ60-2を生成する。
【0051】
情報処理装置100は、異なる組み合わせについて、上記処理を繰り返し実行することで、9パターンのRGB画像データを生成する。たとえば、9パターンのRGB画像データを、RGB画像データ60-1~60-9とする。
【0052】
図8について説明する。情報処理装置100は、RGB画像データ60-1~60-9と、照合対象のRGB画像データ70との一致度をそれぞれ算出する。RGB画像データ70は、NIR画像データ20の人物と同一の人物を含むRGB画像データであって、RGBカメラ40によって撮影された画像である。たとえば、一致度は、コサイン類似度である。
【0053】
情報処理装置100は、複数のNIR画像データ、複数のRGB画像データに付与された撮影時刻の情報を基にして、追跡可能な人物を追跡し、事前に、NIR画像データ20の人物と同一の人物を撮影したRGB画像データを特定しておき、特定したRGB画像データを、RGB画像データ70として使用する。
【0054】
情報処理装置100は、RGB画像データ60-1~60-9と、照合対象のRGB画像データ70との一致度をそれぞれ算出した結果、RGB画像データ60-2と、照合対象のRGB画像データ70との一致度が最大になるものとする。
図7で説明したように、RGB画像データ60-2を生成する過程において、上半身の服のNIR輝度値を、グレースケール輝度値に変換する場合に用いた学習モデルは、第1学習モデルである。RGB画像データ60-2を生成する過程において、下半身の服のNIR輝度値を、グレースケール輝度値に変換する場合に用いた学習モデルは、第2学習モデルである。
【0055】
このため、情報処理装置100は、人物の上半身の服のNIR画像を変換する学習モデルとして、第1学習モデルを選択し、人物の下半身の服のNIR画像を変換する学習モデルとして、第2学習モデルを選択する。情報処理装置100は、選択した学習モデルを用いて、NIR画像データを、グレースケール画像データに変換する。
【0056】
情報処理装置100は、推論フェーズにおいて、追跡中の異なる人物毎に上記処理を繰り返し実行する。たとえば、情報処理装置100は、人物毎に、NIR画像データを、グレースケール画像データに変換する学習モデルの組を選択する。
【0057】
更に、情報処理装置100は、学習モデルの組のパターンごとの選択した回数を使用頻度テーブルに登録しておく。
図9は、使用頻度テーブルに登録されるデータの一例を示す図である。横軸には、学習モデルの組み合わせのパターン1~9が設定される。縦軸は、選択された回数に相当する。たとえば、パターン1~9の学習モデルの組み合わせは、下記である。ただし、上半身の服の輝度変換に利用する学習モデル、下半身の服の輝度変換に利用する学習モデルとする。
【0058】
パターン1:第1学習モデル、第1学習モデル
パターン2:第1学習モデル、第2学習モデル
パターン3:第1学習モデル、第3学習モデル
パターン4:第2学習モデル、第1学習モデル
パターン5:第2学習モデル、第2学習モデル
パターン6:第2学習モデル、第3学習モデル
パターン7:第3学習モデル、第1学習モデル
パターン8:第3学習モデル、第2学習モデル
パターン9:第3学習モデル、第3学習モデル
【0059】
図8で説明した情報処理装置100の処理では、照合対象のRGB画像データ70を特定していることが前提となっていたが、照合対象のRGB画像データ70を特定できない場合には、使用頻度テーブルを利用して、学習モデルの組を選択する。たとえば、情報処理装置100は、パターン1~9のうち、選択回数が最大となるパターンに対応する学習モデルの組を選択する。
図9に示す例では、パターン2の選択回数が最大となるため、情報処理装置100は、上半身の服の輝度変換に利用する学習モデルとして、第1学習モデルを選択する。情報処理装置100は、下半身の服の輝度変換に利用する学習モデルとして、第2学習モデルを選択する。
【0060】
上記のように、情報処理装置100は、学習フェーズにおいて、複数のNIR画像データ、複数のRGB画像データを基にして、NIR輝度値と、グレースケール輝度値とを関係を示す訓練データを生成する。情報処理装置100は、訓練データの特徴量に応じて、訓練データをクラスタリングし、クラスタ毎の訓練データを基にして、複数の学習モデルのパラメータを訓練する。これによって、異なる素材の反射特性に応じた学習モデルを生成することができる。
【0061】
情報処理装置100は、推論フェーズにおいて、NIRカメラ30が撮影したNIR画像データから人物の上半身の服の領域と、人物の下半身の服の領域とを検出し、各領域をグレースケール画像に変換する際の最適な学習モデルの組を選択する。情報処理装置100は、選択した学習モデルの組を用いて、NIR画像データを、グレースケール画像データに変換し、グレースケール画像データを、RGB画像データに変換する。これによって、対象となる人物の服の素材の反射特性に応じた学習モデルを選択でき、NIR画像データから、適切なグレースケール画像データ、RGB画像データを生成することができる。
【0062】
次に、本実施例に係る情報処理装置の構成例について説明する。
図10は、本実施例に係る情報処理装置の構成を示す機能ブロック図である。
図10に示すように、この情報処理装置100は、通信部110と、入力部120と、表示部130と、記憶部140と、制御部150とを有する。
【0063】
通信部110は、無線又は有線によって、NIRカメラ30、RGBカメラ40等に接続され、各種のデータを受信する。たとえば、通信部110は、NIC(Network Interface Card)等によって実現される。通信部110は、NIRカメラ30から、NIR画像データを受信する。通信部110は、RGBカメラ40から、RGB画像データを受信する。
【0064】
入力部120は、各種の情報を、情報処理装置100に入力する入力装置である。入力部120は、キーボードやマウス、タッチパネル等に対応する。
【0065】
表示部130は、制御部150から出力される情報を表示する表示装置である。表示部130は、液晶ディスプレイ、有機EL(Electro Luminescence)ディスプレイ、タッチパネル等に対応する。
【0066】
記憶部140は、画像データテーブル141、輝度値テーブル142、第1学習モデル143a、第2学習モデル143b、第3学習モデル143c、使用頻度テーブル144を有する。記憶部140は、たとえば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。
【0067】
画像データテーブル141は、NIRカメラ30によって撮影されたNIR画像データ、RGBカメラ40によって撮影されたRGB画像データを保持するテーブルである。
図11は、画像データテーブルのデータ構造の一例を示す図である。
図11に示すように、画像データテーブル141は、カメラ識別情報、画像データ、位置情報を対応付ける。
【0068】
カメラ識別情報は、NIRカメラ30、RGBカメラ40を一意に識別する情報である。たとえば、カメラ識別情報CA30aは、NIRカメラ30aの識別情報である。カメラ識別情報CA30bは、NIRカメラ30bの識別情報である。カメラ識別情報CA40aは、RGBカメラ30aの識別情報である。カメラ識別情報CA40bは、RGBカメラ30bの識別情報である。カメラ識別情報CA40cは、RGBカメラ30cの識別情報である。
【0069】
画像データは、該当するカメラに撮影された時系列の画像データである。NIRカメラ30に撮影された時系列の画像データは、時系列のNIR画像データとなる。RGBカメラ40に撮影された時系列の画像データは、時系列のRGB画像データとなる。NIR画像データ、RGB画像データには、フレーム番号、撮影時刻の情報が付与される。
【0070】
位置情報は、該当するカメラの位置情報であり、緯度、経度等の情報が設定される。
【0071】
図10の説明に戻る。輝度値テーブル142は、
図4で説明したNIR輝度値と、グレースケール輝度値との関係を示す複数のサンプルの情報を保持するテーブルである。
【0072】
第1学習モデル143a、第2学習モデル143b、第3学習モデル143cは、クラスタリングされた複数のサンプルによって、訓練される学習モデルである。第1学習モデル143a、第2学習モデル143b、第3学習モデル143cは、NN等である。
【0073】
使用頻度テーブル144は、学習モデルの組のパターンごとの選択された回数を保持するテーブルである。使用頻度テーブル144のデータは、
図9で説明したように、学習モデルの組み合わせのパターンと、選択回数とが対応付けられる。
【0074】
制御部150は、取得部151、検出部152、学習部153、推論部154を有する。制御部150は、たとえば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)により実現される。また、制御部150は、例えばASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実行されてもよい。
【0075】
取得部151は、通信部110を介して、NIRカメラ30から時系列のNIR画像データを取得する。取得部151は、時系列のNIR画像データを、カメラ識別情報と対応付けて、画像データテーブル141に登録する。
【0076】
取得部151は、通信部110を介して、RGBカメラ40からRGB画像データを取得する取得部151は、時系列のRGB画像データを、カメラ識別情報と対応付けて、画像データテーブル141に登録する。
【0077】
検出部152は、画像データテーブル141に格納された複数のNIR画像データ、RGB画像データを基にして、同一の人物の領域を撮影したNIR画像データと、RGB画像データとを検出する。検出部152は、検出した同一の人物の領域を撮影したNIR画像データと、RGB画像データのグレースケール画像データとを基にして、NIR輝度値と、グレースケール輝度値との関係を特定する。検出部152は、特定したNIR輝度値と、グレースケール輝度値との関係を示すサンプルのデータを、輝度値テーブル142に登録する。
【0078】
たとえば、検出部152は、
図2で説明した処理を実行することで、同一の人物の領域を撮影したNIR画像データと、RGB画像データとを検出する。検出部152は、複数のNIR画像データ、複数のRGB画像データから、所定の所持品を有する人物を検出し、検出した人物を含むNIR画像データ、RGB画像データを抽出する。
【0079】
図2で説明した例では、検出部152(情報処理装置100)が、所持品(リュック)6を有する人物のRGB画像データ15a,15bと、NIR画像データ16とを抽出した例を示した。検出部152は、
図2で説明した処理を実行して、NIR輝度値と、グレースケール輝度値との関係を示すサンプルのデータを、輝度値テーブル142に登録する。
【0080】
更に、検出部152は、
図3で説明した処理を実行することで、同一の人物の領域を撮影したNIR画像データと、RGB画像データとを検出する。検出部152は、画像データテーブル141に登録された、複数のNIR画像データ、複数のRGB画像データに付与された撮影時刻の情報を基にして、追跡可能な人物を追跡する。検出部152は、追跡した人物を含むNIR画像データ、RGB画像データを抽出する。たとえば、検出部152は、人物の服装、髪型、身長、形状等の人物特徴を基にして、人物を追跡する。
【0081】
図3で説明した例では、検出部152(情報処理装置100)が、追跡可能な人物7を有するRGB画像データ17a、NIR画像データ18、RGB画像データ17bを抽出した例を示した。検出部152は、
図3で説明した処理を実行して、NIR輝度値と、グレースケール輝度値との関係を示すサンプルのデータを、輝度値テーブル142に登録する。
【0082】
続いて、検出部152は、輝度値テーブル142に登録された複数のサンプルに対して、クラスタリングを実行し、複数のサンプルを複数のクラスタに分類する。
図4で説明した例では、検出部152は、複数のサンプルに対して、クラスタリングを実行し、複数のサンプルを、クラスタCr1,Cr2,Cr3に分類する。検出部152は、分類結果となるクラスタCr1,Cr2,Cr3のデータを、学習部153に出力する。
【0083】
学習部153は、クラスタCr1,Cr2,Cr3のデータを基にして、第1学習モデル143a、第2学習モデル143b、第3学習モデル143cを訓練する。たとえば、学習部153は、訓練を実行する場合に、誤差逆伝播法等を用いる。
【0084】
学習部153は、クラスタCr1に含まれる複数のサンプルを基にして、NIR輝度値を入力とし、グレースケール輝度値を出力とする「第1学習モデル143a」を訓練する。第1学習モデル143aに、NIR画像データを入力すると、NIR画像データの各画素のNIR輝度値が、グレースケール輝度値にそれぞれ変換され、グレースケール画像データが生成される。
【0085】
学習部153は、クラスタCr2に含まれる複数のサンプルを基にして、NIR輝度値を入力とし、グレースケール輝度値を出力とする「第2学習モデル143b」を訓練する。第2学習モデル143bに、NIR画像データを入力すると、NIR画像データの各画素のNIR輝度値が、グレースケール輝度値にそれぞれ変換され、グレースケール画像データが生成される。
【0086】
学習部153は、クラスタCr3に含まれる複数のサンプルを基にして、NIR輝度値を入力とし、グレースケール輝度値を出力とする「第3学習モデル143c」を訓練する。第3学習モデル143cに、NIR画像データを入力すると、NIR画像データの各画素のNIR輝度値が、グレースケール輝度値にそれぞれ変換され、グレースケール画像データが生成される。
【0087】
推論部154は、
図6~
図8で説明した推論フェーズの処理を実行する。推論部154は、推論フェーズにおいて、NIRカメラ30から、NIR画像データ(NIR画像データ20)を取得し、NIR画像データ20に含まれる人物の各領域を推定する。推論部154は、
図6で説明したように、学習モデルM3を用いて、NIR画像データ20から、上半身の服の領域21aと、下半身の服の領域21bとを検出する。
【0088】
推論部154は、
図7で説明したように、上半身の服の領域21aと、下半身の服の領域21bとを、第1学習モデル143a、第2学習モデル143b、第3学習モデル143cにそれぞれ入力して、それぞれグレースケールに変換する。推論部154は、上半身および下半身の各グレースケールを統合することで、9パターンの統合画像データを生成する。また、推論部154は、9パターンの統合画像データを基にして、9パターンのRGB画像データ60-1~60-9を生成する。たとえば、推論部154は、学習モデルM2に、統合画像データを入力することで、RGB画像データを生成する。
【0089】
推論部154は、NIRカメラ30から取得する複数のNIR画像データ、RGBカメラ40から取得する複数のRGB画像データに付与された撮影時刻の情報を基にして、追跡可能な人物を追跡する。推論部154は、事前に、NIR画像データ20の人物と同一の人物を撮影したRGB画像データを特定しておき、特定したRGB画像データを、RGB画像データ70として使用する。たとえば、推論部154は、撮影時刻を遡って、追跡を実行し、過去に撮影された複数のRGB画像データから、NIR画像データ20の人物と同一の人物を撮影したRGB画像データを特定する。
【0090】
推論部154は、RGB画像データ60-1~60-9と、照合対象のRGB画像データ70との一致度をそれぞれ算出する。RGB画像データ70は、NIR画像データ20の人物と同一の人物を含むRGB画像データであって、RGBカメラ40によって撮影された画像である。たとえば、一致度は、コサイン類似度である。
【0091】
推論部154は、RGB画像データ60-1~60-9と、照合対象のRGB画像データ70との一致度をそれぞれ算出した結果、RGB画像データ60-2と、照合対象のRGB画像データ70との一致度が最大になるものとする。
図7で説明したように、RGB画像データ60-2を生成する過程において、上半身の服のNIR輝度値を、グレースケール輝度値に変換する場合に用いた学習モデルは、第1学習モデルである。RGB画像データ60-2を生成する過程において、下半身の服のNIR輝度値を、グレースケール輝度値に変換する場合に用いた学習モデルは、第2学習モデルである。
【0092】
このため、推論部154は、NIR画像データ20に含まれる人物と同一の人物の上半身の服のNIR画像を変換する学習モデルとして、第1学習モデル143aを選択する。推論部154は、NIR画像データ20に含まれる人物と同一の人物の下半身の服のNIR画像を変換する学習モデルとして、第2学習モデル143bを選択する。推論部154は、選択した学習モデルを用いて、NIR画像データを、グレースケール画像データに変換する。
【0093】
推論部154は、推論フェーズにおいて、追跡中の異なる人物毎に上記処理を繰り返し実行する。たとえば、推論部154は、人物毎に、NIR画像データを、グレースケール画像データに変換する学習モデルの組を選択する。
【0094】
たとえば、推論部154は、NIR画像データ20に含まれる人物と同一の人物を追跡し、他のNIR画像データに、追跡中の人物が含まれる場合には、選択した学習モデルの組を用いてRGB画像データを推論する。ここで、上半身の服のNIR画像を変換する学習モデルとして、第1学習モデル143aを選択し、下半身の服のNIR画像を変換する学習モデルとして、第2学習モデル143bを選択しているものとする。この場合、推論部154は、他のNIR画像データの人物の上半身の服の領域を、第1学習モデル143aに入力して上半身のグレースケールを生成する。推論部154は、他のNIR画像データの人物の下半身の服の領域を、第2学習モデル143bに入力して下半身のグレースケールを生成する。推論部154は、生成した各グレースケールを統合したグレースケール画像データを、RGB画像データに変換する(RGB画像データを推論する)。
【0095】
更に、推論部154は、学習モデルの組のパターンごとの選択した回数を使用頻度テーブル144に登録する。
【0096】
推論部154は、照合対象のRGB画像データ70を特定できない場合には、使用頻度テーブルを利用して、学習モデルの組を選択する。たとえば、推論部154は、パターン1~9のうち、選択回数が最大となるパターンに対応する学習モデルの組を選択する。
図9に示す例では、パターン2の選択回数が最大となるため、推論部154は、上半身の服の輝度変換に利用する学習モデルとして、第1学習モデルを選択する。推論部154は、下半身の服の輝度変換に利用する学習モデルとして、第2学習モデルを選択する。
【0097】
次に、本実施例に係る情報処理装置100の処理手順の一例について説明する。
図12は、本実施例に係る情報処理装置の学習フェーズの処理手順を示すフローチャートである。
図12に示すように、情報処理装置100の取得部151は、NIRカメラ30から、時系列のNIR画像データを取得し、画像データテーブル141に登録する(ステップS101)。取得部151は、RGBカメラ40から、時系列のRGB画像データを取得し、画像データテーブル141に登録する(ステップS102)。
【0098】
情報処理装置100の検出部152は、画像データテーブル141に登録された複数のNIR画像データ、RGB画像データを基にして、同一の人物の領域を撮影したNIR画像データと、RGB画像データとを検出する(ステップS103)。
【0099】
検出部152は、検出した同一の人物の領域を撮影したNIR画像データと、RGB画像データのグレースケール画像データとを基にして、NIR輝度値と、グレースケール輝度値との関係を特定し、輝度値テーブル142に登録する(ステップS104)。
【0100】
検出部152は、輝度値テーブル142に登録された複数のサンプルに対して、クラスタリングを実行し、複数のサンプルを複数のクラスタCr1,Cr2,Cr3に分類する(ステップS105)。
【0101】
情報処理装置100の学習部153は、クラスタCr1,Cr2,Cr3のデータを基にして、第1学習モデル143a、第2学習モデル143b、第3学習モデル143cを訓練する(ステップS106)。
【0102】
図13は、本実施例に係る情報処理装置の推論フェーズの処理手順を示すフローチャートである。情報処理装置100の取得部151は、NIRカメラ30から推論対象のNIR画像データを取得する(ステップS201)。
【0103】
情報処理装置100の推論部154は、NIR画像データの上半身の服の領域と、下半身の服の領域とを、第1学習モデル143a、第2学習モデル143b、第3学習モデル143cにそれぞれ入力して、それぞれグレースケールに変換する(ステップS202)。
【0104】
推論部154は、上半身の服の領域のグレースケールおよび下半身の服の領域のグレースケールをそれぞれ統合することで、9パターンの統合画像データを生成する(ステップS203)。推論部154は、9パターンの統合画像データを基にして、9パターンのRGB画像データを生成する(ステップS204)。
【0105】
推論部154は、推論対象のNIR画像データの人物と同一の人物を有する照合対象のRGB画像データを検索する(ステップS205)。推論部154は、照合対象のRGB画像データが存在する場合には(ステップS206,Yes)、ステップS207に移行する。
【0106】
推論部154は、9パターンのRGB画像データと、照合対象のRGB画像データとの一致度を基にして、学習モデルの組を選択する(ステップS207)。推論部154は、選択結果を基にして、使用頻度テーブル144の選択回数を更新する(ステップS208)。
【0107】
推論部154は、選択した学習モデルの組を用いて、NIR画像データをグレースケール画像データに変換し、グレースケール画像データを、RGB画像データに変換する(ステップS209)。
【0108】
一方、推論部154は、照合対象のRGB画像データが存在しない場合には(ステップS206,No)、ステップS210に移行する。推論部154は、使用頻度テーブル144の使用回数が最大となるパターンの学習モデルの組を選択し(ステップS210)、ステップS209に移行する。
【0109】
次に、本実施例に係る情報処理装置100の効果について説明する。情報処理装置100は、学習フェーズにおいて、複数のNIR画像データ、複数のRGB画像データを基にして、NIR輝度値と、グレースケール輝度値とを関係を輝度値テーブル142に登録する。情報処理装置100は、輝度値テーブル142のサンプルの特徴量に応じて、複数のサンプルをクラスタリングし、クラスタ毎のサンプルを基にして、複数の学習モデルのパラメータを訓練する。これによって、異なる素材の反射特性に応じた複数の第1学習モデル143a、第2学習モデル143b、第3学習モデル143cを生成することができる。
【0110】
情報処理装置100は、輝度値テーブル142のサンプルの特徴量に応じて、複数のサンプルをクラスタリングする。これによって、異なる素材の反射特性に応じた複数の第1学習モデル143a、第2学習モデル143b、第3学習モデル143cを訓練するための訓練データを生成することができる。
【0111】
情報処理装置100は、推論フェーズにおいて、NIRカメラ30が撮影したNIR画像データから人物の上半身の服の領域と、人物の下半身の服の領域とを検出し、各領域をグレースケール画像に変換する際の最適な学習モデルの組を選択する。情報処理装置100は、選択した学習モデルの組を用いて、NIR画像データを、グレースケール画像データに変換し、グレースケール画像データを、RGB画像データに変換する。これによって、対象となる人物の服の素材の反射特性に応じた学習モデルを選択でき、NIR画像データから、適切なグレースケール画像データ、RGB画像データを推論することができる。
【0112】
情報処理装置100は、RGB画像データ60-1~60-9と、照合対象のRGB画像データ70との一致度をそれぞれ算出し、一致度が最大となるRGB画像データ60-1に対応する学習モデルの組を選択する。これによって、NIR画像データから、グレースケール画像データに変換する際の複数の学習モデルの組から、物体の素材に適した学習モデルの組を選択することができる。
【0113】
たとえば、情報処理装置100は、上半身の服のNIR画像を変換する学習モデルとして、第1学習モデル143aを選択し、下半身の服のNIR画像を変換する学習モデルとして、第2学習モデル143bを選択しているものとする。この場合、情報処理装置100は、他のNIR画像データの人物の上半身の服の領域を、第1学習モデル143aに入力して上半身のグレースケールを生成する。情報処理装置100は、他のNIR画像データの人物の下半身の服の領域を、第2学習モデル143bに入力して下半身のグレースケールを生成する。情報処理装置100は、生成した各グレースケールを統合したグレースケール画像データを、RGB画像データに変換する。これによって、複数の学習モデルを用いて、NIR画像データから、RGB画像データを適切に推論することができる。
【0114】
情報処理装置100は、輝度値テーブル142の複数のサンプルをクラスタリングし、クラスタ毎のサンプルを基にして、複数の学習モデルのパラメータを訓練することで、各素材の反射特性に対応した複数の学習モデルを訓練する。すなわち、NIR画像データに含まれる各素材の反射特性を解析する代わりに、クラスタリングのみで、素材に対応した訓練データを準備でき、情報処理装置100の処理負荷を軽減できる。
【0115】
次に、上記実施例に示した情報処理装置100と同様の機能を実現するコンピュータのハードウェア構成の一例について説明する。
図14は、実施例の情報処理装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
【0116】
図7に示すように、コンピュータ200は、各種演算処理を実行するCPU201と、ユーザからのデータの入力を受け付ける入力装置202と、ディスプレイ203とを有する。また、コンピュータ200は、有線または無線ネットワークを介して、外部装置等との間でデータの授受を行う通信装置204と、インタフェース装置205とを有する。また、コンピュータ200は、各種情報を一時記憶するRAM206と、ハードディスク装置207とを有する。そして、各装置201~207は、バス208に接続される。
【0117】
ハードディスク装置207は、取得プログラム207a、検出プログラム207b、学習プログラム207c、推論プログラム207dを有する。また、CPU201は、各プログラム207a~207dを読み出してRAM206に展開する。
【0118】
取得プログラム207aは、取得プロセス206aとして機能する。検出プログラム207bは、検出プロセス206bとして機能する。学習プログラム207cは、学習プロセス206cとして機能する。推論プログラム207dは、推論プロセス206dとして機能する。
【0119】
取得プロセス206aの処理は、取得部151の処理に対応する。検出プロセス206bの処理は、検出部152の処理に対応する。学習プロセス206cの処理は、学習部153の処理に対応する。推論プロセス206dの処理は、推論部154の処理に対応する。
【0120】
なお、各プログラム207a~207dについては、必ずしも最初からハードディスク装置207に記憶させておかなくても良い。例えば、コンピュータ200に挿入されるフレキシブルディスク(FD)、CD-ROM、DVD、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ200が各プログラム207a~207dを読み出して実行するようにしてもよい。
【0121】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【0122】
(付記1)素材の異なる複数の物体を第一の波長域で撮影した第一の画像と、前記素材の異なる複数の物体を第二の波長域で撮影した画像をグレースケールに変換した第二の画像とを取得し、
同一の素材の物体に対する前記第一の画像の特徴量と前記第二の画像の特徴量との関係を示すサンプルを、異なる素材の物体毎に特定することで生成される複数のサンプルの分布を基にして、前記複数のサンプルを、複数のクラスタに分類し、
前記複数のクラスタに含まれるサンプルを基にして、複数の機械学習モデルを訓練する
処理をコンピュータに実行させることを特徴とする学習プログラム。
【0123】
(付記2)前記分類する処理は、前記複数のサンプルの分布を基にして、各サンプル間の距離に基づくクラスタリングを実行することで、前記複数のサンプルを、複数のクラスタに分類することを特徴とする付記1に記載の学習プログラム。
【0124】
(付記3)前記訓練する処理は、前記複数のクラスタから一つのクラスタを選択し、選択したクラスタに含まれる複数のサンプルを基にして、前記複数の機械学習モデルのうち、一つの機械学習モデルを訓練することを特徴とする付記1に記載の学習プログラム。
【0125】
(付記4)素材の異なる複数の物体を第一の波長域で撮影した第一の画像、および、前記素材の異なる複数の物体を第二の波長域で撮影した画像をグレースケールに変換した第二の画像であって、同一の素材の物体に対する前記第一の画像の特徴量と前記第二の画像の特徴量との関係を示すサンプルを、異なる素材の物体毎に特定することで生成される複数のサンプルの分布を基にして分類された複数のクラスタに含まれるサンプルを基にして訓練された機械学習モデルを取得し、
前記第一の波長域で撮影された第三の画像を前記機械学習モデルに入力することで、前記第二の波長域で撮影された第四の画像を推論する
処理をコンピュータに実行させることを特徴とする推論プログラム。
【0126】
(付記5)前記取得する処理は、前記複数のクラスタに含まれるサンプルを基にして訓練された複数の機械学習モデルを取得し、
前記推論する処理は、前記第三の画像を、前記複数の機械学習モデルに入力することで、複数の第四の画像を推論し、
前記複数の第四の画像を複数のRGB画像に変換し、前記複数のRGB画像と、所定のRGB画像との一致度を基にして、最大の一致度となるRGB画像に対応する前記第四の画像を推論した機械学習モデルを、前記複数の機械学習モデルから選択する処理を更にコンピュータに実行させることを特徴とする付記4に記載の推論プログラム。
【0127】
(付記6)前記推論する処理は、前記第三の画像に含まれる物体の領域を複数の領域に分割し、分割した領域の画像を前記複数の機械学習モデルに入力し、前記複数の機械学習モデルから出力される各領域の画像を統合することで、前記第四の画像を推論することを特徴とする付記5に記載の推論プログラム。
【0128】
(付記7)前記選択する処理よって選択された回数を、前記機械学習モデル毎にテーブルに登録する処理を更に実行し、前記選択する処理は、前記所定のRGB画像が存在しない場合に、前記テーブルに登録された前記回数を基にして、前記機械学習モデルを選択することを特徴とする付記5に記載の推論プログラム。
【0129】
(付記8)素材の異なる複数の物体を第一の波長域で撮影した第一の画像と、前記素材の異なる複数の物体を第二の波長域で撮影した画像をグレースケールに変換した第二の画像とを取得し、
同一の素材の物体に対する前記第一の画像の特徴量と前記第二の画像の特徴量との関係を示すサンプルを、異なる素材の物体毎に特定することで生成される複数のサンプルの分布を基にして、前記複数のサンプルを、複数のクラスタに分類し、
前記複数のクラスタに含まれるサンプルを基にして、複数の機械学習モデルを訓練する
処理をコンピュータが実行することを特徴とする学習方法。
【0130】
(付記9)前記分類する処理は、前記複数のサンプルの分布を基にして、各サンプル間の距離に基づくクラスタリングを実行することで、前記複数のサンプルを、複数のクラスタに分類することを特徴とする付記8に記載の学習方法。
【0131】
(付記10)前記訓練する処理は、前記複数のクラスタから一つのクラスタを選択し、選択したクラスタに含まれる複数のサンプルを基にして、前記複数の機械学習モデルのうち、一つの機械学習モデルを訓練することを特徴とする付記8に記載の学習方法。
【0132】
(付記11)素材の異なる複数の物体を第一の波長域で撮影した第一の画像、および、前記素材の異なる複数の物体を第二の波長域で撮影した画像をグレースケールに変換した第二の画像であって、同一の素材の物体に対する前記第一の画像の特徴量と前記第二の画像の特徴量との関係を示すサンプルを、異なる素材の物体毎に特定することで生成される複数のサンプルの分布を基にして分類された複数のクラスタに含まれるサンプルを基にして訓練された機械学習モデルを取得し、
前記第一の波長域で撮影された第三の画像を前記機械学習モデルに入力することで、前記第二の波長域で撮影された第四の画像を推論する
処理をコンピュータが実行することを特徴とする推論方法。
【0133】
(付記12)前記取得する処理は、前記複数のクラスタに含まれるサンプルを基にして訓練された複数の機械学習モデルを取得し、
前記推論する処理は、前記第三の画像を、前記複数の機械学習モデルに入力することで、複数の第四の画像を推論し、
前記複数の第四の画像を複数のRGB画像に変換し、前記複数のRGB画像と、所定のRGB画像との一致度を基にして、最大の一致度となるRGB画像に対応する前記第四の画像を推論した機械学習モデルを、前記複数の機械学習モデルから選択する処理を更にコンピュータに実行させることを特徴とする付記11に記載の推論方法。
【0134】
(付記13)前記推論する処理は、前記第三の画像に含まれる物体の領域を複数の領域に分割し、分割した領域の画像を前記複数の機械学習モデルに入力し、前記複数の機械学習モデルから出力される各領域の画像を統合することで、前記第四の画像を推論することを特徴とする付記12に記載の推論方法。
【0135】
(付記14)前記選択する処理よって選択された回数を、前記機械学習モデル毎にテーブルに登録する処理を更に実行し、前記選択する処理は、前記所定のRGB画像が存在しない場合に、前記テーブルに登録された前記回数を基にして、前記機械学習モデルを選択することを特徴とする付記12に記載の推論方法。