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

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

▶ 日本電気株式会社の特許一覧

特許7439953学習装置、処理装置、学習方法、処理方法及びプログラム
<>
  • 特許-学習装置、処理装置、学習方法、処理方法及びプログラム 図1
  • 特許-学習装置、処理装置、学習方法、処理方法及びプログラム 図2
  • 特許-学習装置、処理装置、学習方法、処理方法及びプログラム 図3
  • 特許-学習装置、処理装置、学習方法、処理方法及びプログラム 図4
  • 特許-学習装置、処理装置、学習方法、処理方法及びプログラム 図5
  • 特許-学習装置、処理装置、学習方法、処理方法及びプログラム 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-02-19
(45)【発行日】2024-02-28
(54)【発明の名称】学習装置、処理装置、学習方法、処理方法及びプログラム
(51)【国際特許分類】
   G06T 7/00 20170101AFI20240220BHJP
【FI】
G06T7/00 350C
【請求項の数】 10
(21)【出願番号】P 2022561800
(86)(22)【出願日】2020-11-13
(86)【国際出願番号】 JP2020042398
(87)【国際公開番号】W WO2022102075
(87)【国際公開日】2022-05-19
【審査請求日】2023-05-10
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100110928
【弁理士】
【氏名又は名称】速水 進治
(72)【発明者】
【氏名】児島 一郁
(72)【発明者】
【氏名】谷 真宏
(72)【発明者】
【氏名】池田 圭佑
【審査官】千葉 久博
(56)【参考文献】
【文献】特表2018-515164(JP,A)
【文献】米国特許出願公開第2020/0175673(US,A1)
【文献】国際公開第2020/042741(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00
(57)【特許請求の範囲】
【請求項1】
入力画像に基づき、ピクセル毎の特徴量を示す特徴量マップと、キーポイントとするピクセルを決定する処理で利用される重み付け値をピクセル毎に示す第1の重み付けマップとを生成する学習モデルのパラメータを記憶する記憶手段と、
照明条件が互いに異なり、かつ同一の被写体を含む複数の学習画像の組み合わせを取得する取得手段と、
前記複数の学習画像各々から生成される複数の前記特徴量マップ各々に基づき算出される複数のパラメータと、前記複数の学習画像から生成される前記第1の重み付けマップに基づき算出されるパラメータとを用いて定義される損失関数に基づき、前記学習モデルのパラメータを調整する学習手段と、
を有する学習装置。
【請求項2】
前記学習手段は、前記入力画像に基づき前記特徴量マップと前記第1の重み付けマップの両方を生成する前記学習モデルのパラメータを、前記損失関数に基づき調整する請求項1に記載の学習装置。
【請求項3】
前記損失関数は、前記特徴量マップに基づき算出される各ピクセルの状態値と、前記第1の重み付けマップで示される各ピクセルの重み付け値とを用いて定義され、
各ピクセルの前記状態値は、各ピクセルの特徴量と、各ピクセルの周囲の複数のピクセルの特徴量とに基づき算出される請求項1又は2に記載の学習装置。
【請求項4】
各ピクセルの特徴量は、C個(Cは2以上)の値で示され、
各ピクセルの前記状態値は、各ピクセルの前記C個の値の不偏分散と、各ピクセルの周囲の複数のピクセル各々の前記C個の値の不偏分散とに基づき算出される請求項3に記載の学習装置。
【請求項5】
前記損失関数は、以下の式で示される請求項1から4のいずれか1項に記載の学習装置。
【数1】
【数2】
(Iは、第1の学習画像を示す。I´は、第2の学習画像を示す。i及びjは、第1の学習画像の中のピクセルの座標値を示す。pijは、第1の学習画像の中の被写体が存在するエリアの中のピクセルを示す。S(pij)は、第1の学習画像のpijピクセルの状態値を示す。U(i,j)は、第1の学習画像の(i,j)ピクセルに対応する第2の学習画像のピクセルを示す。p´U(i,j)は、第1の学習画像のpijピクセルに対応する第2の学習画像のピクセルを示す。S(p´U(i,j))は、第2の学習画像のp´U(i,j)ピクセルの状態値を示す。Cijは、第1の学習画像に基づき生成された第1の重み付けマップの(i,j)ピクセルの重み付け値を示す。Pは、pijに着目したパッチ群を示す。|P|は、パッチ群に含まれるピクセルの数を示す。Fijは、pijピクセルの特徴量(C個(Cは2以上)の値)を示す。var(Fij)は、FijのC個(Cは2以上)の値の不偏分散を示す。m及びnは、pijに着目したパッチ群に含まれるpijを除くピクセルの座標値を示す。Fmnは、pijに着目したパッチ群に含まれるpijを除くピクセルの特徴量(C個(Cは2以上)の値)を示す。var(Fmn)は、FmnのC個(Cは2以上)の値の不偏分散を示す。|p|は、パッチ群の個数から1を引いた数を示す。)
【請求項6】
コンピュータが、
入力画像に基づき、ピクセル毎の特徴量を示す特徴量マップと、キーポイントとするピクセルを決定する処理で利用される重み付け値をピクセル毎に示す第1の重み付けマップとを生成する学習モデルのパラメータを記憶しておき、
照明条件が互いに異なり、かつ同一の被写体を含む複数の学習画像の組み合わせを取得し、
前記複数の学習画像各々から生成される複数の前記特徴量マップ各々に基づき算出される複数のパラメータと、前記複数の学習画像から生成される前記第1の重み付けマップに基づき算出されるパラメータとを用いて定義される損失関数に基づき、前記学習モデルのパラメータを調整する学習方法。
【請求項7】
コンピュータを、
入力画像に基づき、ピクセル毎の特徴量を示す特徴量マップと、キーポイントとするピクセルを決定する処理で利用される重み付け値をピクセル毎に示す第1の重み付けマップとを生成する学習モデルのパラメータを記憶する記憶手段、
照明条件が互いに異なり、かつ同一の被写体を含む複数の学習画像の組み合わせを取得する取得手段、
前記複数の学習画像各々から生成される複数の前記特徴量マップ各々に基づき算出される複数のパラメータと、前記複数の学習画像から生成される前記第1の重み付けマップに基づき算出されるパラメータとを用いて定義される損失関数に基づき、前記学習モデルのパラメータを調整する学習手段、
として機能させるプログラム。
【請求項8】
請求項1から5のいずれか1項に記載の学習装置で生成された学習モデルを用いて、入力画像のキーポイントを決定する処理装置。
【請求項9】
コンピュータが、請求項1から5のいずれか1項に記載の学習装置で生成された学習モデルを用いて、入力画像のキーポイントを決定する処理方法。
【請求項10】
コンピュータを、請求項1から5のいずれか1項に記載の学習装置で生成された学習モデルを用いて、入力画像のキーポイントを決定する手段として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、学習装置、処理装置、学習方法、処理方法及びプログラムに関する。
【背景技術】
【0002】
本発明に関連する技術が、非特許文献1、特許文献1及び2に開示されている。
【0003】
非特許文献1は、画像に基づき特徴量マップ、再現性に関するマップ(a repeatability map)及び信頼性に関するマップ(a reliability map)を生成し、それらに基づき、画像に含まれる被写体の外観の特徴的な部分(キーポイント)を高精度に抽出する技術(R2D2:Repeatable and Reliable Detector and Descriptor)を開示している。特許文献1は、2つの画像間の対応点を高精度に抽出する技術を開示している。特許文献2は、ピクセル毎に特徴量を算出し、画像を解析する技術を開示している。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2008-220617号
【文献】国際公開第2020/100630号
【非特許文献】
【0005】
【文献】Jerome Revaud、他3名、"R2D2: Repeatable and Reliable Detector and Descriptor"、[online]、[令和2年10月23日検索]、インターネット<URL: https://papers.nips.cc/paper/9407-r2d2-reliable-and-repeatable-detector-and-descriptor.pdf>
【発明の概要】
【発明が解決しようとする課題】
【0006】
非特許文献1に記載の技術を利用することで、画像に含まれる被写体の外観のキーポイントを高精度に抽出することが可能となる。しかし、非特許文献1に記載の技術で抽出されるキーポイントは、照明条件の変化に弱いという問題があった。このため、例えば、ある照明条件(例:昼間)で撮影された画像においてはそのキーポイント(ピクセル)は周囲のピクセルとの弁別ができるが、異なる照明条件(例:夜間)で撮影された画像においてはそのキーポイントは周囲のピクセルとの弁別ができないという状況が発生し得る。また、同じ被写体を含む画像であっても、各画像生成時の照明条件が異なれば(例:一方は昼間に撮影し、他方は夜間に撮影)、各画像から抽出されるキーポイントが互いに異なるという状況が発生し得る。いずれの先行技術文献も、当該課題及びその解決手段を開示していない。
【0007】
本発明は、照明条件の変化に頑健なキーポイントを抽出できるようにすることを課題とする。
【課題を解決するための手段】
【0008】
本発明によれば、
入力画像に基づき、ピクセル毎の特徴量を示す特徴量マップと、キーポイントとするピクセルを決定する処理で利用される重み付け値をピクセル毎に示す第1の重み付けマップとを生成する学習モデルのパラメータを記憶する記憶手段と、
照明条件が互いに異なり、かつ同一の被写体を含む複数の学習画像の組み合わせを取得する取得手段と、
前記複数の学習画像各々から生成される複数の前記特徴量マップ各々に基づき算出される複数のパラメータと、前記複数の学習画像から生成される前記第1の重み付けマップに基づき算出されるパラメータとを用いて定義される損失関数に基づき、前記学習モデルのパラメータを調整する学習手段と、
を有する学習装置が提供される。
【0009】
また、本発明によれば、
コンピュータが、
入力画像に基づき、ピクセル毎の特徴量を示す特徴量マップと、キーポイントとするピクセルを決定する処理で利用される重み付け値をピクセル毎に示す第1の重み付けマップとを生成する学習モデルのパラメータを記憶しておき、
照明条件が互いに異なり、かつ同一の被写体を含む複数の学習画像の組み合わせを取得し、
前記複数の学習画像各々から生成される複数の前記特徴量マップ各々に基づき算出される複数のパラメータと、前記複数の学習画像から生成される前記第1の重み付けマップに基づき算出されるパラメータとを用いて定義される損失関数に基づき、前記学習モデルのパラメータを調整する学習方法が提供される。
【0010】
また、本発明によれば、
コンピュータを、
入力画像に基づき、ピクセル毎の特徴量を示す特徴量マップと、キーポイントとするピクセルを決定する処理で利用される重み付け値をピクセル毎に示す第1の重み付けマップとを生成する学習モデルのパラメータを記憶する記憶手段、
照明条件が互いに異なり、かつ同一の被写体を含む複数の学習画像の組み合わせを取得する取得手段、
前記複数の学習画像各々から生成される複数の前記特徴量マップ各々に基づき算出される複数のパラメータと、前記複数の学習画像から生成される前記第1の重み付けマップに基づき算出されるパラメータとを用いて定義される損失関数に基づき、前記学習モデルのパラメータを調整する学習手段、
として機能させるプログラムが提供される。
【0011】
また、本発明によれば、
前記学習装置で生成された学習モデルを用いて、入力画像のキーポイントを決定する処理装置が提供される。
【0012】
また、本発明によれば、
コンピュータが、前記学習装置で生成された学習モデルを用いて、入力画像のキーポイントを決定する処理方法が提供される。
【0013】
また、本発明によれば、
コンピュータを、前記学習装置で生成された学習モデルを用いて、入力画像のキーポイントを決定する手段として機能させるプログラムが提供される。
【発明の効果】
【0014】
本発明によれば、照明条件の変化に頑健なキーポイントを抽出できるようなる。
【図面の簡単な説明】
【0015】
図1】本実施形態の学習モデルを説明するための図である。
図2】本実施形態の学習装置及び処理装置のハードウエア構成図の一例である。
図3】本実施形態の学習装置の機能ブロック図の一例である。
図4】本実施形態の処理装置の機能ブロック図の一例である。
図5】本実施形態の処理装置の利用例を説明するための図である。
図6】本実施形態の処理装置の他の利用例を説明するための図である。
【発明を実施するための形態】
【0016】
以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
【0017】
<第1の実施形態>
「概要」
まず、図1を用いて、本実施形態の学習装置の概要を説明する。本実施形態の学習装置は、特徴的な学習データに基づく特徴的な学習を実行し、図示する学習モデル(例:CNN:Convolutional Neural Network)のパラメータを調整する。
【0018】
図示する学習モデルは、入力画像(図中、「H×Wの画像」)に基づき、ピクセル毎の特徴量を示す特徴量マップ(図中、「H´×W´×Cの特徴量群」)と、ピクセル毎の重み付け値を示す第1の重み付けマップ(図中、「Saliency map」)とを生成する機能を少なくとも有する。
【0019】
当該特徴量マップと当該第1の重み付けマップとに基づき、キーポイントとするピクセルが決定される。具体的には、当該特徴量マップと当該第1の重み付けマップとに基づきピクセル毎に評価値が算出される。そして、当該評価値に基づき、キーポイントとするピクセルが決定される。なお、図示する学習モデルが、当該キーポイントを決定する機能をさらに備えてもよいし、図示する学習モデルと物理的及び/又は論理的に分かれたその他の処理手段が当該機能を備えてもよい。
【0020】
詳細は後述するが、本実施形態の学習装置は、特徴的な学習データに基づく特徴的な学習を実行し、図示する学習モデルのパラメータを調整する。結果、照明条件の変化に頑健なピクセルの評価値が相対的に高くなる特徴量マップ及び第1の重み付けマップが生成されるようになる。すなわち、特定の照明条件で撮影された場合だけでなく、各種照明条件で撮影された場合においても、周囲のピクセルとの弁別が可能なピクセルの評価値が相対的に高くなる特徴量マップ及び第1の重み付けマップが生成されるようになる。結果、照明条件の変化に頑健なピクセルがキーポイントとして決定されやすくなる。
【0021】
「構成」
次に、学習装置の構成を説明する。まず、学習装置のハードウエア構成の一例を説明する。学習装置の各機能部は、任意のコンピュータのCPU(Central Processing Unit)、メモリ、メモリにロードされるプログラム、そのプログラムを格納するハードディスク等の記憶ユニット(あらかじめ装置を出荷する段階から格納されているプログラムのほか、CD(Compact Disc)等の記憶媒体やインターネット上のサーバ等からダウンロードされたプログラムをも格納できる)、ネットワーク接続用インターフェイスを中心にハードウエアとソフトウエアの任意の組合せによって実現される。そして、その実現方法、装置にはいろいろな変形例があることは、当業者には理解されるところである。
【0022】
図2は、学習装置のハードウエア構成を例示するブロック図である。図2に示すように、学習装置は、プロセッサ1A、メモリ2A、入出力インターフェイス3A、周辺回路4A、バス5Aを有する。周辺回路4Aには、様々なモジュールが含まれる。学習装置は周辺回路4Aを有さなくてもよい。なお、学習装置は物理的及び/又は論理的に分かれた複数の装置で構成されてもよいし、物理的及び/又は論理的に一体となった1つの装置で構成されてもよい。学習装置が物理的及び/又は論理的に分かれた複数の装置で構成される場合、複数の装置各々が上記ハードウエア構成を備えることができる。
【0023】
バス5Aは、プロセッサ1A、メモリ2A、周辺回路4A及び入出力インターフェイス3Aが相互にデータを送受信するためのデータ伝送路である。プロセッサ1Aは、例えばCPU、GPU(Graphics Processing Unit)などの演算処理装置である。メモリ2Aは、例えばRAM(Random Access Memory)やROM(Read Only Memory)などのメモリである。入出力インターフェイス3Aは、入力装置、外部装置、外部サーバ、外部センサ、カメラ等から情報を取得するためのインターフェイスや、出力装置、外部装置、外部サーバ等に情報を出力するためのインターフェイスなどを含む。入力装置は、例えばキーボード、マウス、マイク、物理ボタン、タッチパネル等である。出力装置は、例えばディスプレイ、スピーカ、プリンター、メーラ等である。プロセッサ1Aは、各モジュールに指令を出し、それらの演算結果をもとに演算を行うことができる。
【0024】
次に、学習装置の機能構成を説明する。図3に示すように、学習装置10は、記憶部11と、取得部12と、学習部13とを有する。
【0025】
記憶部11は、入力画像に基づき特徴量マップ、及び第1の重み付けマップの両方を生成する学習モデル(以下、単に「学習モデル」という場合がある)のパラメータを記憶する。すなわち、記憶部11は、図1に示す学習モデルのパラメータを記憶する。
【0026】
特徴量マップは、ピクセル毎の特徴量を示す。各ピクセルの特徴量は、C個(Cは2以上)の値で示される。入力画像がH×Wのピクセルを有する場合、特徴量マップは図1に示すようにH´×W´×Cと示される。特徴量の種類、及び特徴量マップの生成手段は特段制限されず、従来のあらゆる技術を採用できる。
【0027】
なお、後述する学習部13により学習モデルのパラメータが調整されることで、照明条件の変化に頑健なピクセルの評価値が相対的に高くなる特徴量マップが生成されるようになる。
【0028】
第1の重み付けマップは、例えば特徴量マップから生成される。その他、ネットワークの中間層の出力を用いて、第1の重み付けマップが生成されてもよい。第1の重み付けマップは、例えば特徴量マップを畳み込んで生成される。特徴量マップがH´×W´×Cで示される場合、第1の重み付けマップはH´×W´×1となる。すなわち、第1の重み付けマップにおいて、各ピクセルの値は1個である。この各ピクセルの1個の値は、キーポイントとするピクセルを決定する処理で参照される重み付け値となる。H´×W´×Cの特徴量マップを畳み込んでH´×W´×1のマップを生成する手段は特段制限されず、従来のあらゆる技術を採用できる。
【0029】
なお、後述する学習手段により学習モデルのパラメータが調整されることで、照明条件の変化に頑健なピクセルの評価値が相対的に高くなる第1の重み付けマップが生成されるようになる。
【0030】
取得部12は、特徴的な学習データを取得する。具体的には、取得部12は、照明条件が互いに異なり、かつ同一の被写体を含む複数の学習画像の組み合わせを学習データとして取得する。各組み合わせの複数の学習画像は、2つであってもよいし、3つ以上であってもよい。
【0031】
照明条件が互いに異なるとは、撮影時の照明の状態が互いに異なることを意味する。すなわち、照明条件が互いに異なるとは、撮影時の自然光(太陽光や月光等)の状態、及び人工で用意された光(ライト、ろうそく、カメラのフラッシュ等)の状態の少なくとも一方が互いに異なることを意味する。なお、効率的に学習するためには、照明条件の違いが十分に大きい複数の学習画像を利用することが好ましい。例えば、複数の学習画像は、撮影時間帯が互いに異なってもよいし(例:一方は昼間に撮影し、他方は夜間に撮影)、撮影場所が屋外か屋内かにおいて互いに異なってもよいし、撮影時の天候が互いに異なってもよいし(例:一方は晴れの時に撮影し、他方は雨の時に撮影)、ライト(建物に設置されたライト、撮影用に準備されたライト、カメラのフラッシュ等)の状態(ON/OFFや強度等)が互いに異なってもよいし、その他が互いに異なってもよい。
【0032】
学習部13は、特徴的な損失関数に基づき、記憶部11に記憶されている学習モデルのパラメータを調整する。この特徴的な損失関数に基づき学習することで、照明条件の変化に頑健なピクセルの評価値が相対的に高くなる特徴量マップ及び第1の重み付けマップが生成されるようになる。換言すれば、照明条件の変化に頑健なピクセルの評価値が相対的に高くなる特徴量マップ及び第1の重み付けマップが生成されるように、損失関数は設計されている。
【0033】
照明条件の変化に頑健なピクセルとは、特定の照明条件で撮影された場合だけでなく、各種照明条件で撮影された場合においても、周囲のピクセルとの弁別が可能なピクセルである。周囲のピクセルとの弁別が可能なピクセルとは、周囲のピクセルとの特徴量(特徴量マップで示される特徴量)の差が十分に大きいピクセルである。
【0034】
ここで、損失関数について詳細に説明する。本実施形態の損失関数は、例えば以下の式(1)で示される。なお、同様の結果が得られる範囲で、以下の損失関数を適宜変更してもよい。
【0035】
【数1】
【0036】
当該損失関数は、2つの学習画像の組み合わせを学習データとして取得する場合の例を示す。各種パラメータは以下のように定義される。
【0037】
Iは、第1の学習画像を示す。
I´は、第2の学習画像を示す。
i及びjは、第1の学習画像の中のピクセルの座標値を示す。
ijは、第1の学習画像の中の被写体が存在するエリアの中のピクセルを示す。被写体が存在するエリアの中の全てのピクセルを示してもよいし、任意の手段でピックアップした一部のピクセルを示してもよい。本実施形態では、画像の中の被写体が存在するエリアを示す情報が利用される。被写体が存在するエリアを示す情報が外部から学習装置10に入力されてもよいし、学習装置10が学習画像を解析して、被写体が存在するエリアを特定してもよい。
S(pij)は、第1の学習画像のpijピクセルの状態値を示す。状態値については後述する。
U(i,j)は、第1の学習画像の(i,j)ピクセルに対応する第2の学習画像のピクセルを示す。「対応するピクセル」は、同じ被写体の同じ部分を示すピクセルである。本実施形態では、複数の学習画像の対応するピクセルを示す情報が利用される。複数の学習画像の対応するピクセルを示す情報が外部から学習装置10に入力されてもよいし、学習装置10が学習画像を解析して、複数の学習画像の対応するピクセルを特定してもよい。
p´U(i,j)は、第1の学習画像のpijピクセルに対応する第2の学習画像のピクセルを示す。
S(p´U(i,j))は、第2の学習画像のp´U(i,j)ピクセルの状態値を示す。
ijは、第1の学習画像に基づき生成された第1の重み付けマップの(i,j)ピクセルの重み付け値を示す。他の例として、Cijは、第1の学習画像に基づき生成された第1の重み付けマップの(i,j)ピクセルの重み付け値と、第2の学習画像に基づき生成された第2の重み付けマップのU(i,j)ピクセルの重み付け値との統計値(平均値、最大値、最小値等)を示してもよい。
Pは、pijピクセルに着目したパッチ群を示す。パッチ群は、着目したピクセル及びその周囲のピクセルを含むピクセルの集合である。着目したピクセルとどのような位置関係にあるピクセルを「周囲のピクセル」に含めるかは、要求性能などに基づき任意に決定することができる。
|P|は、パッチ群に含まれるピクセルの数を示す。
【0038】
ここで、各ピクセルの状態値について説明する。第1の学習画像のpijピクセルの状態値S(pij)は、以下の式(2)で示される。なお、第2の学習画像のp´U(i,j)ピクセルの状態値も同様の式で求められる。
【0039】
【数2】
【0040】
ijは、pijピクセルの複数の特徴量(C個(Cは2以上)の値)の集まりを示す。
var(Fij)は、FijのC個(Cは2以上)の値の不偏分散を示す。
m及びnは、pijに着目したパッチ群に含まれるpijを除くピクセルの座標値を示す。
mnは、pijに着目したパッチ群に含まれるpijを除くピクセルの複数の特徴量(C個(Cは2以上)の値)の集まりを示す。
var(Fmn)は、FmnのC個(Cは2以上)の値の不偏分散を示す。
|p|は、パッチ群の個数から1を引いた数を示す。
【0041】
このように、損失関数は、特徴量マップに基づき算出される各ピクセルの状態値(S(pij)、S(p´U(i,j)))と、第1の重み付けマップで示される各ピクセルの重み付け値Cijとを用いて定義される。各ピクセルの状態値は、各ピクセルの特徴量と、各ピクセルの周囲の複数のピクセルの特徴量とに基づき算出される。具体的には、各ピクセルの特徴量がC個(Cは2以上)の値で示される場合、各ピクセルの状態値は、各ピクセルのC個の値の不偏分散と、各ピクセルの周囲の複数のピクセル各々のC個の値の不偏分散とに基づき算出される。
【0042】
ここで、特徴量マップ及び第1の重み付けマップに基づき評価値を算出する方法、及び評価値に基づきキーポイントを決定する方法の一例を説明する。本実施形態では、第1の重み付けマップで示される各記述子(各ピクセル)の重み付け値が評価値となる。そして、評価値が大きいピクセルがキーポイントとして決定される。例えば、評価値が基準値以上のピクセルがキーポイントとして決定されてもよいし、評価値が大きい方から所定数のピクセルがキーポイントとして決定されてもよいし、その他の基準でキーポイントが決定されてもよい。
【0043】
上述の通り、特徴的な損失関数に基づき学習することで、照明条件の変化に頑健なピクセルの評価値が相対的に高くなる特徴量マップ及び第1の重み付けマップが生成されるようになる。上記方法で評価値を算出し、キーポイントを決定することで、照明条件の変化に頑健なピクセルがキーポイントとして決定されるようになる。
【0044】
以上、本実施形態の学習装置は、特徴的な学習データに基づく特徴的な学習(特徴的な損失関数に基づく学習)を実行し、学習モデルのパラメータを調整する。結果、照明条件の変化に頑健なピクセルの評価値が相対的に高くなる特徴量マップ及び第1の重み付けマップが生成されるようになる。すなわち、特定の照明条件で撮影された場合だけでなく、各種照明条件で撮影された場合においても、周囲のピクセルとの弁別が可能なピクセルの評価値が相対的に高くなる特徴量マップ及び第1の重み付けマップが生成されるようになる。結果、照明条件の変化に頑健なピクセルがキーポイントとして決定されやすくなる。
【0045】
<第2の実施形態>
「概要」
本実施形態の処理装置は、第1の実施形態で説明した学習装置10によりパラメータを調整された学習モデルを用いて、入力画像から特徴量マップ及び第1の重み付けマップを生成し、それらに基づきキーポイントを決定する。
【0046】
「構成」
まず、処理装置のハードウエア構成の一例を説明する。処理装置の各機能部は、任意のコンピュータのCPU、メモリ、メモリにロードされるプログラム、そのプログラムを格納するハードディスク等の記憶ユニット(あらかじめ装置を出荷する段階から格納されているプログラムのほか、CD等の記憶媒体やインターネット上のサーバ等からダウンロードされたプログラムをも格納できる)、ネットワーク接続用インターフェイスを中心にハードウエアとソフトウエアの任意の組合せによって実現される。そして、その実現方法、装置にはいろいろな変形例があることは、当業者には理解されるところである。
【0047】
図2は、処理装置のハードウエア構成を例示するブロック図である。図2に示すように、処理装置は、プロセッサ1A、メモリ2A、入出力インターフェイス3A、周辺回路4A、バス5Aを有する。周辺回路4Aには、様々なモジュールが含まれる。処理装置は周辺回路4Aを有さなくてもよい。なお、処理装置は物理的及び/又は論理的に分かれた複数の装置で構成されてもよいし、物理的及び/又は論理的に一体となった1つの装置で構成されてもよい。処理装置が物理的及び/又は論理的に分かれた複数の装置で構成される場合、複数の装置各々が上記ハードウエア構成を備えることができる。なお、図2の各要素の説明は第1の実施形態で行ったので、ここでは省略する。
【0048】
次に、処理装置の機能構成を説明する。図4に示すように、処理装置20は、記憶部21と、入力部22と、推定部23と、出力部24とを有する。
【0049】
記憶部21は、第1の実施形態で説明した学習装置10によりパラメータを調整された学習モデルを記憶する。具体的には、記憶部21は、学習モデルのパラメータ等、学習モデルの実行に必要な情報(データ)を記憶する。
【0050】
入力部22は、入力画像の入力を受付ける。
【0051】
推定部23は、記憶部21に記憶されている学習モデルに入力画像を入力し、その推定結果を得る。
【0052】
学習モデルが、入力画像に基づき特徴量マップ及び第1の重み付けマップを生成して出力するように構成されている場合、推定部23は、出力された特徴量マップ及び第1の重み付けマップに基づき各ピクセルの評価値を算出し、その評価値に基づきキーポイントとするピクセルを決定する。評価値の算出方法及びキーポイントとするピクセルの決定方法は、第1の実施形態で説明した通りである。
【0053】
一方、学習モデルが、入力画像に基づき特徴量マップ及び第1の重み付けマップを生成し、それらに基づきキーポイントを決定して出力するように構成されている場合、推定部23は、学習モデルから出力されたキーポイントを示す情報(キーポイントとして決定されたピクセルを示す情報)を推定結果として取得する。
【0054】
出力部24は、キーポイントして決定されたピクセルを示す情報を出力する。
【0055】
次に、図5を用いて、処理装置20の利用例を説明する。当該例では、クエリ画像に含まれる被写体に類似する被写体を含む画像をデータベースの中から検索し、検索した画像を出力する処理に、処理装置20が利用される。
【0056】
図示するように処理装置20にクエリ画像が入力されると、処理装置20は上述した処理を実行し、クエリ画像からキーポイントを決定する。そして、キーポイントとして決定したピクセルを示す情報を出力する。出力された情報は、類似画像検索装置に入力される。類似画像検索装置は、キーポイントとして決定されたピクセルの特徴量と類似する特徴量を含む画像をデータベースの中から検索し、検索した画像を出力する。
【0057】
上述の通り、処理装置20によれば、照明条件の変化に頑健なピクセルがキーポイントとして決定され、出力される。このようなキーポイントの特徴量を利用して画像検索を行うことで、クエリ画像に含まれる被写体と外観が類似する被写体を含む画像を、その画像の撮影時の照明条件がクエリ画像の撮影時の照明条件と同等であるか否かに関わらず、高精度に検索することが可能となる。すなわち、例えば昼間に撮影された建物Aを含むクエリ画像に基づく画像検索により、昼間に撮影された建物Aを含む画像のみならず、夜間に撮影された建物Aを含む画像をも高精度に検索することが可能となる。
【0058】
図6を用いて、処理装置20の他の利用例を説明する。当該例では、クエリ画像に含まれる被写体に類似する被写体を含む画像をデータベースの中から検索し、検索した画像に紐付けられていた位置情報を出力する処理に、処理装置20が利用される。
【0059】
図示するように処理装置20にクエリ画像が入力されると、処理装置20は上述した処理を実行し、クエリ画像からキーポイントを決定する。そして、キーポイントとして決定したピクセルを示す情報を出力する。出力された情報は、類似画像検索装置に入力される。類似画像検索装置は、キーポイントとして決定されたピクセルの特徴量と類似する特徴量を含む画像をデータベースの中から検索する。なお、データベースにおいては、各画像を撮影した位置を示す位置情報が各画像に紐付けて記憶されている。類似画像検索装置は、検索した画像に紐付けられた位置情報を出力する。
【0060】
以上、本実施形態の処理装置20によれば、照明条件の変化に頑健なピクセルをキーポイントとして決定し、出力することができる。このようなキーポイントを利用することで、照明条件の変化に頑健な画像検索が実現される。
【0061】
<第3の実施形態>
本実施形態の処理装置20は、特徴量マップ及び第1の重み付けマップに加えて、再現性に関するマップ及び信頼性に関するマップの少なくとも一方を、入力画像に基づき生成する。特徴量マップ及び第1の重み付けマップの生成は、第2の実施形態で説明した方法で実現される。再現性に関するマップ及び信頼性に関するマップの生成は、非特許文献1に開示されている方法で実現される。
【0062】
再現性に関するマップ及び信頼性に関するマップはいずれも、各ピクセルの重み付け値を示す。入力画像がH×Wのピクセルを有し、特徴量マップがH´×W´×Cと示される場合、再現性に関するマップ及び信頼性に関するマップはいずれも、H´×W´×1で示される。すなわち、再現性に関するマップ及び信頼性に関するマップにおいて、各ピクセルの値は1個である。
【0063】
そして、処理装置20は、特徴量マップ及び第1の重み付けマップに加えて、再現性に関するマップ及び信頼性に関するマップの少なくとも一方を用いて各ピクセルの評価値を算出し、算出した評価値に基づきキーポイントを決定する。
【0064】
例えば、ピクセルごとに、第1の重み付けマップで示される重み付け値と、再現性に関するマップで示される重み付け値と、信頼性に関するマップで示される重み付け値とを掛け合わせて、評価値を算出してもよい。
【0065】
その他、ピクセルごとに、第1の重み付けマップで示される重み付け値と、再現性に関するマップで示される重み付け値と、信頼性に関するマップで示される重み付け値とを足し合わせて、評価値を算出してもよい。この場合、(第1の重み付けマップで示される重み付け値)×αと、(再現性に関するマップで示される重み付け値)×βと、(信頼性に関するマップで示される重み付け値)×γとの和を、評価値としてもよい。α、β及びγは、各マップの重み付け値である。なお、当該手法の場合、3つのマップをまとめて評価して算出された評価値が高いピクセルがキーポイントとして抽出されることとなる。他の例として、3つのマップに基づき算出された評価値が高いことに加えて、各マップのスコアが全体的に高いピクセルがキーポイントとして抽出されるようにしてもよい。例えば、各マップのスコアを予め定めた条件(閾値より大)でフィルタリングしてもよい。具体的には、再現性に関するマップをA、信頼性に関するマップをB、第1の重み付けマップをCとした時、条件を満たすピクセル群MはM={(i,j∈R)|Aij>thr1,Bij>thr2,Cij>thr3}と定義される。そして、ピクセル群Mに対して上記評価値を算出する処理を行い、ピクセル群Mの中から評価値に基づきキーポイントを抽出してもよい。
【0066】
その他、上記算出方法において、再現性に関するマップで示される重み付け値、及び信頼性に関するマップで示される重み付け値の両方を用いず、いずれか一方のみを用いて、評価値を算出してもよい。
【0067】
算出した評価値に基づきキーポイントを決定する処理は、第2の実施形態で説明した通りである。
【0068】
処理装置20のその他の構成は、第2の実施形態と同様である。
【0069】
本実施形態の処理装置20によれば、第2の実施形態と同様の作用効果が実現される。また、本実施形態の処理装置20によれば、特徴量マップ及び第1の重み付けマップに加えて、再現性に関するマップ及び信頼性に関するマップの少なくとも一方を利用してキーポイントを決定することができる。結果、照明条件の変化に頑健で、撮影角度の変化等にも頑健なピクセルをキーポイントとして決定し、出力することができる。このようなキーポイントを利用することで、照明条件の変化に頑健で、撮影角度の変化等にも頑健な画像検索が実現される。
【0070】
なお、本明細書において、「取得」とは、ユーザ入力に基づき、又は、プログラムの指示に基づき、「自装置が他の装置や記憶媒体に格納されているデータを取りに行くこと(能動的な取得)」、たとえば、他の装置にリクエストまたは問い合わせして受信すること、他の装置や記憶媒体にアクセスして読み出すこと等、および、ユーザ入力に基づき、又は、プログラムの指示に基づき、「自装置に他の装置から出力されるデータを入力すること(受動的な取得)」、たとえば、配信(または、送信、プッシュ通知等)されるデータを受信すること、また、受信したデータまたは情報の中から選択して取得すること、及び、「データを編集(テキスト化、データの並び替え、一部データの抽出、ファイル形式の変更等)などして新たなデータを生成し、当該新たなデータを取得すること」の少なくともいずれか一方を含む。
【0071】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限定されない。
1. 入力画像に基づき、ピクセル毎の特徴量を示す特徴量マップと、キーポイントとするピクセルを決定する処理で利用される重み付け値をピクセル毎に示す第1の重み付けマップとを生成する学習モデルのパラメータを記憶する記憶手段と、
照明条件が互いに異なり、かつ同一の被写体を含む複数の学習画像の組み合わせを取得する取得手段と、
前記複数の学習画像各々から生成される複数の前記特徴量マップ各々に基づき算出される複数のパラメータと、前記複数の学習画像から生成される前記第1の重み付けマップに基づき算出されるパラメータとを用いて定義される損失関数に基づき、前記学習モデルのパラメータを調整する学習手段と、
を有する学習装置。
2. 前記学習手段は、前記入力画像に基づき前記特徴量マップと前記第1の重み付けマップの両方を生成する前記学習モデルのパラメータを、前記損失関数に基づき調整する1に記載の学習装置。
3. 前記損失関数は、前記特徴量マップに基づき算出される各ピクセルの状態値と、前記第1の重み付けマップで示される各ピクセルの重み付け値とを用いて定義され、
各ピクセルの前記状態値は、各ピクセルの特徴量と、各ピクセルの周囲の複数のピクセルの特徴量とに基づき算出される1又は2に記載の学習装置。
4. 各ピクセルの特徴量は、C個(Cは2以上)の値で示され、
各ピクセルの前記状態値は、各ピクセルの前記C個の値の不偏分散と、各ピクセルの周囲の複数のピクセル各々の前記C個の値の不偏分散とに基づき算出される請求項3に記載の学習装置。
5. 前記損失関数は、以下の式で示される1から4のいずれかに記載の学習装置。
【数3】
【数4】
(Iは、第1の学習画像を示す。I´は、第2の学習画像を示す。i及びjは、第1の学習画像の中のピクセルの座標値を示す。pijは、第1の学習画像の中の被写体が存在するエリアの中のピクセルを示す。S(pij)は、第1の学習画像のpijピクセルの状態値を示す。U(i,j)は、第1の学習画像の(i,j)ピクセルに対応する第2の学習画像のピクセルを示す。p´U(i,j)は、第1の学習画像のpijピクセルに対応する第2の学習画像のピクセルを示す。S(p´U(i,j))は、第2の学習画像のp´U(i,j)ピクセルの状態値を示す。Cijは、第1の学習画像に基づき生成された第1の重み付けマップの(i,j)ピクセルの重み付け値を示す。Pは、pijに着目したパッチ群を示す。|P|は、パッチ群に含まれるピクセルの数を示す。Fijは、pijピクセルの特徴量(C個(Cは2以上)の値)を示す。var(Fij)は、FijのC個(Cは2以上)の値の不偏分散を示す。m及びnは、pijに着目したパッチ群に含まれるpijを除くピクセルの座標値を示す。Fmnは、pijに着目したパッチ群に含まれるpijを除くピクセルの特徴量(C個(Cは2以上)の値)を示す。var(Fmn)は、FmnのC個(Cは2以上)の値の不偏分散を示す。|p|は、パッチ群の個数から1を引いた数を示す。)
6. コンピュータが、
入力画像に基づき、ピクセル毎の特徴量を示す特徴量マップと、キーポイントとするピクセルを決定する処理で利用される重み付け値をピクセル毎に示す第1の重み付けマップとを生成する学習モデルのパラメータを記憶しておき、
照明条件が互いに異なり、かつ同一の被写体を含む複数の学習画像の組み合わせを取得し、
前記複数の学習画像各々から生成される複数の前記特徴量マップ各々に基づき算出される複数のパラメータと、前記複数の学習画像から生成される前記第1の重み付けマップに基づき算出されるパラメータとを用いて定義される損失関数に基づき、前記学習モデルのパラメータを調整する学習方法。
7. コンピュータを、
入力画像に基づき、ピクセル毎の特徴量を示す特徴量マップと、キーポイントとするピクセルを決定する処理で利用される重み付け値をピクセル毎に示す第1の重み付けマップとを生成する学習モデルのパラメータを記憶する記憶手段、
照明条件が互いに異なり、かつ同一の被写体を含む複数の学習画像の組み合わせを取得する取得手段、
前記複数の学習画像各々から生成される複数の前記特徴量マップ各々に基づき算出される複数のパラメータと、前記複数の学習画像から生成される前記第1の重み付けマップに基づき算出されるパラメータとを用いて定義される損失関数に基づき、前記学習モデルのパラメータを調整する学習手段、
として機能させるプログラム。
8. 1から5のいずれかに記載の学習装置で生成された学習モデルを用いて、入力画像のキーポイントを決定する処理装置。
9. コンピュータが、1から5のいずれかに記載の学習装置で生成された学習モデルを用いて、入力画像のキーポイントを決定する処理方法。
10. コンピュータを、1から5のいずれかに記載の学習装置で生成された学習モデルを用いて、入力画像のキーポイントを決定する手段として機能させるプログラム。
【符号の説明】
【0072】
10 学習装置
11 記憶部
12 取得部
13 学習部
20 処理装置
21 記憶部
22 入力部
23 推定部
24 出力部
1A プロセッサ
2A メモリ
3A 入出力I/F
4A 周辺回路
5A バス
図1
図2
図3
図4
図5
図6