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

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

▶ キヤノン株式会社の特許一覧

特開2023-183058画像処理装置、画像処理方法およびプログラム
<>
  • 特開-画像処理装置、画像処理方法およびプログラム 図1
  • 特開-画像処理装置、画像処理方法およびプログラム 図2
  • 特開-画像処理装置、画像処理方法およびプログラム 図3
  • 特開-画像処理装置、画像処理方法およびプログラム 図4
  • 特開-画像処理装置、画像処理方法およびプログラム 図5
  • 特開-画像処理装置、画像処理方法およびプログラム 図6
  • 特開-画像処理装置、画像処理方法およびプログラム 図7
  • 特開-画像処理装置、画像処理方法およびプログラム 図8
  • 特開-画像処理装置、画像処理方法およびプログラム 図9
  • 特開-画像処理装置、画像処理方法およびプログラム 図10
  • 特開-画像処理装置、画像処理方法およびプログラム 図11
  • 特開-画像処理装置、画像処理方法およびプログラム 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023183058
(43)【公開日】2023-12-27
(54)【発明の名称】画像処理装置、画像処理方法およびプログラム
(51)【国際特許分類】
   G06T 7/00 20170101AFI20231220BHJP
   G06V 10/70 20220101ALI20231220BHJP
【FI】
G06T7/00 350B
G06V10/70
G06T7/00 660
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2022096455
(22)【出願日】2022-06-15
(71)【出願人】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100126240
【弁理士】
【氏名又は名称】阿部 琢磨
(74)【代理人】
【識別番号】100223941
【弁理士】
【氏名又は名称】高橋 佳子
(74)【代理人】
【識別番号】100159695
【弁理士】
【氏名又は名称】中辻 七朗
(74)【代理人】
【識別番号】100172476
【弁理士】
【氏名又は名称】冨田 一史
(74)【代理人】
【識別番号】100126974
【弁理士】
【氏名又は名称】大朋 靖尚
(72)【発明者】
【氏名】牧田 孝嗣
(72)【発明者】
【氏名】野呂 英生
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096FA33
5L096JA03
5L096JA11
5L096KA04
5L096KA15
(57)【要約】      (修正有)
【課題】他人同士を同一人物として認識することを抑制する画像処理装置を提供する。
【解決手段】入力画像に含まれる人物を認識する画像処理システムであって、認識装置(画像認識装置)103は、複数の人物の登録画像を取得する顔画像取得部と、画像から人物毎の特徴を抽出する複数の学習済みモデルに基づいて、それぞれの学習済みモデルに対応する特徴マップを生成する顔特徴抽出部301と、特徴マップに基づいて決定した、学習済みモデルに対するそれぞれの品質値に基づいて、学習済みモデルを選択する特徴抽出器選択部302と、選択した学習済みモデルに基づいて、入力画像に含まれる人物を認識する照合部303と、を有する。
【選択図】図3
【特許請求の範囲】
【請求項1】
入力画像に含まれる人物を認識する画像処理装置であって、
複数の人物の登録画像を取得する取得手段と、
画像から人物毎の特徴を抽出する複数の学習済みモデルに基づいて、それぞれの前記学習済みモデルに対応する特徴マップを生成する生成手段と、
前記特徴マップに基づいて決定された、前記学習済みモデルに対するそれぞれの品質値に基づいて、学習済みモデルを選択する選択手段と、
前記選択された学習済みモデルに基づいて、入力画像に含まれる人物を認識する認識手段と、を有することを特徴とする画像処理装置。
【請求項2】
前記品質値は、特定の人物の特徴と、異なる人物の特徴との類似度が小さいほど大きい値になるように決定されることを特徴とする、請求項1に記載の画像処理装置。
【請求項3】
前記取得手段は、前記複数の人物のそれぞれに対応する前記登録画像に重要度を付与した登録情報を更に取得し、
前記品質値は、前記重要度に基づいて、前記重要度が大きい人物の特徴と、異なる人物の特徴との類似度が小さいほど大きい値になるように決定されることを特徴とする、請求項1に記載の画像処理装置。
【請求項4】
前記複数の学習済みモデルに対応する前記特徴マップを出力装置に表示させる制御手段を、更に有することを特徴とする請求項1に記載の画像処理装置。
【請求項5】
前記選択された学習済みモデルに基づいて、前記特定の人物に類似する他の人物に関する情報を表示手段に表示させる制御手段を、更に有することを特徴とする請求項2に記載の画像認識装置。
【請求項6】
前記選択手段は、選択する学習済みモデルを複数選択し、
前記認識手段は、前記決定された複数の学習済みモデルに基づいて、入力画像に含まれる人物を認識することを特徴とする請求項1に記載の画像処理装置。
【請求項7】
前記複数の登録画像の特徴の分布の分散が大きくなるように、前記複数の登録画像全てから一部の画像を選択する選択手段をさらに有することを特徴とする請求項1に記載の画像処理装置。
【請求項8】
前記複数の学習済みモデルは、少なくとも1つの基準となる学習モデルと、追加の学習データに基づいた機械学習ないし深層学習によって学習された1以上の学習モデルであることを特徴とする請求項1に記載の画像処理装置。
【請求項9】
画像から人物毎の特徴を抽出する複数の学習モデルを学習させる学習手段を更に有し、
前記複数の学習済みモデルは、前記基準となる学習モデルの学習データのうち所定の基準で生成された学習データの部分集合の少なくとも1つに基づいて追加学習した学習モデルであることを特徴とする請求項8に記載の画像処理装置。
【請求項10】
入力画像に含まれる人物を認識する画像処理方法であって、
複数の人物の登録画像を取得する取得工程と、
画像から人物毎の特徴を抽出する複数の学習済みモデルに基づいて、それぞれの前記学習済みモデルに対応する特徴マップを生成する生成工程と、
前記特徴マップに基づいて決定された、前記学習済みモデルに対するそれぞれの品質値に基づいて、学習済みモデルを選択する選択工程と、
前記選択された学習済みモデルに基づいて、入力画像に含まれる人物を認識する認識工程と、を有することを特徴とする画像処理方法。
【請求項11】
コンピュータを請求項1に記載の画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像を用いた個人の認識技術に関する。
【背景技術】
【0002】
画像に写った人物が登録済みの人物と同一人物であるか否かを判定する画像認識装置では、一般的に、人物の特徴を学習させた学習済みモデルを用いる。特許文献1では、学習済みモデルを用いて顔画像から抽出した特徴によって同一人物を判定する。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第6003124号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1の方法では、予め登録する異なる人物同士の見た目が似ている場合に、誤って他人同士を同一人物として判定する可能性があった。本発明は上記課題に鑑みてなされたものであり、他人同士を同一人物として認識することを抑制することを目的とする。
【課題を解決するための手段】
【0005】
上記課題を解決する本発明に係る画像処理装置は、入力画像に含まれる人物を認識する画像処理装置であって、複数の人物の登録画像を取得する取得手段と、画像から人物毎の特徴を抽出する複数の学習済みモデルに基づいて、それぞれの前記学習済みモデルに対応する特徴マップを生成する生成手段と、前記特徴マップに基づいて決定された、前記学習済みモデルに対するそれぞれの品質値に基づいて、学習済みモデルを選択する選択手段と、前記選択された学習済みモデルに基づいて、入力画像に含まれる人物を認識する認識手段と、を有することを特徴とする。
【発明の効果】
【0006】
本発明によれば、他人同士を同一人物として認識することを抑制できる。
【図面の簡単な説明】
【0007】
図1】画像処理システムの構成例を示したブロック図
図2】画像処理装置のハードウェア構成例を示したブロック図
図3】画像処理装置の機能構成例を示したブロック図
図4】画像処理装置が実行する処理を説明するためのフローチャート
図5】画像処理装置が実行する処理を説明するためのフローチャート
図6】画像処理装置の機能構成例を示したブロック図
図7】画像処理装置が実行する処理を説明するためのフローチャート
図8】画像処理装置が実行する処理を説明するためのフローチャート
図9】特徴マップの一例を説明するための図
図10】特徴マップの一例を説明するための図
図11】出力装置による表示の一例を説明するための図
図12】出力装置による表示の一例を説明するための図
【発明を実施するための形態】
【0008】
以下、添付の図面を参照して、本発明の好適な実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【0009】
<実施形態1>
画像を用いた顔認識では、画像から顔の領域を検出する際の精度のばらつきや、照明条件や表情変化などの要因により、同じ人物の画像であっても、画像が異なると特徴にもある程度のばらつきが生じる。そのため、高い類似度を持つ登録人物が複数存在する場合には、最も高い類似度を持つ登録人物が認識結果として正しいとは限らず、信頼度が低下してしまうという問題がある。例えば、ある入力画像に対して、類似度が99%の登録人物Aと、類似度が98%の登録人物Bが存在するような場合において、認識結果として登録人物Aを出力しても、実際には登録人物Bであった、というような現象が起きる可能性がある。
【0010】
本実施形態では、複数の登録画像および複数の特徴抽出器を入力とし、登録画像から特徴を抽出した結果に基づいて特徴抽出器を選択する特徴抽出器選択部を備える、顔認識のための画像処理装置について述べる。
【0011】
<画像処理システムの構成>
以下では、本実施形態に係る画像処理システム1の構成例を、図1を用いて示す。
【0012】
画像処理システム1は、学習装置101と、入力装置102と、認識装置103と、出力装置104と、学習データ記憶装置105と、特徴抽出器記憶装置106と、登録画像記憶装置107とを有している。また、前記の各装置は全てネットワーク接続されており、互いにデータの送受信を行うことができる。ここで、学習データとは、人物の顔画像であって、人物毎に異なるIDが付与された画像である。これらの学習データを用いて、特徴抽出器(学習モデル)を学習する。また、登録画像とは、複数の人物それぞれの顔画像である。また、テスト画像とは、特定の注目人物の顔画像である。言い換えると、テスト画像は、認識装置を用いて特に特定したい人物(注目人物)を撮影した画像のことを指す。
【0013】
学習装置101は、学習データに基づいて、1以上の特徴抽出器(学習モデル)を学習させる。ここで、学習済みの特徴抽出器(学習済みモデル)は、画像から人物を識別するための特徴を抽出するように学習されたディープニューラルネットワークである。特徴抽出器記憶装置106から特徴抽出器を受信し、学習データ記憶装置105から学習データを受信する。さらに、基準となる特徴抽出器を追加の学習データを用いて学習させることで、複数の新たな特徴抽出器を生成する。
【0014】
入力装置102は、撮像装置によって撮像された画像を各装置に入力する。具体的には、入力装置102は、カメラを用いて注目人物を撮影し、画像を認識装置103に送信する。本実施形態では、撮像装置は単眼のカラーカメラであり、撮影された画像はカラー画像であるとする。ただし、カメラはカラーカメラのほかモノクロカメラでも良い。例えば、グレースケールカメラや、赤外線カメラや、広角レンズカメラや、パノラマカメラであっても良い。パン、チルト、ズームが可能なカメラであっても良い。
【0015】
認識装置103は、特徴抽出器を用いて、入力画像に含まれる人物を認識する。本実施形態に係る認識装置は、特に注目人物に対応する識別の成功確率を向上させるために、複数の特徴抽出器のうち注目人物に対応する認識に適した特徴抽出器に基づいて認識を行う。認識装置103は、学習装置101から複数の特徴抽出器を受信し、入力装置102からテスト画像を受信する。また、登録画像記憶装置107から登録画像を受信する。さらに、認識処理を行い、認識結果を出力装置104に送信する。
【0016】
出力装置104は、例えば、入力画像、登録画像または特徴抽出器の特徴マップをディスプレイ等の表示装置に表示する。出力装置104は、入力装置102から、テスト画像を受信し、登録画像記憶装置107から、登録画像を受信する。また、認識装置103から、認識結果を受信する。さらに、受信した画像および認識結果をディスプレイに表示する。表示装置は、ディスプレイのほか、プロジェクターであってもよい。
【0017】
<認識装置の説明>
図2は、認識装置(画像認識装置)のハードウェア構成例を示す図である。中央処理ユニット(CPU)201は、RAM203をワークメモリとして、ROM202や記憶装置204に格納されたOSやその他プログラムを読みだして実行し、システムバス209に接続された各構成を制御して、各種処理の演算や論理判断などを行う。CPU201が実行する処理には、実施形態の画像認識処理が含まれる。記憶装置204は、ハードディスクドライブや外部記憶装置などであり、実施形態の画像認識処理に係るプログラムや各種データを記憶する。入力部205は、ユーザ指示を入力するためのマウス、キーボード、タッチパネルなどの入力デバイスである。なお、記憶装置204は例えばSATAなどのインタフェイスを介して、入力部205は例えばUSBなどのシリアルバスを介して、それぞれシステムバス209に接続されるが、それらの詳細は省略する。通信I/F206は無線通信または有線通信で外部の機器と通信を行う。
【0018】
以下では、本実施形態に係る認識装置の構成例を、図3を用いて示す。認識装置(画像認識装置)103は、顔画像取得部300と、顔特徴抽出部301と、特徴抽出器選択部302と、照合部303とを有している。また、認識装置(画像認識装置)103は、登録画像記憶装置107から登録画像を取得する。認識装置103の特徴抽出器選択部302は、特徴抽出器記憶装置106から特徴抽出器を取得する。認識装置103は、入力装置102と出力装置104と接続されている。認識装置103は、入力装置102から画像を取得する。また、認識装置103は、出力装置104に照合結果を出力する。
【0019】
顔画像取得部300は、画像から人物の顔を検出することによって顔画像を取得する。外部から入力された登録画像、およびテスト画像、をそれぞれ受信する。さらに、受信した登録画像、およびテスト画像から人物の顔の領域を検出して、検出した人物の顔の領域を顔特徴抽出部301に送信する。顔領域は、画像における位置、大きさ等で示される。なお、顔領域の検出は、既存の顔検出方法を用いればよい。例えば、入力画像から顔を含む矩形領域を推定する学習済みモデルや、顔の色または形状を模したテンプレート画像によるマッチング処理で検出する。登録画像およびテスト画像が予め顔の部分画像の場合は、顔画像取得部300の処理をスキップしてもよい。
【0020】
顔特徴抽出部301は、画像から人物毎の特徴を抽出する特徴抽出器(学習済みモデル)に顔画像を入力することによって顔特徴(特徴ベクトル)を抽出する。特徴抽出器(学習済みモデル)は、Deep Convolutional Neural Network(以降ではDNNと表記する)である。具体的には、まず、顔特徴抽出部301は特徴抽出器記憶装置106から入力された複数の特徴抽出器を受信する。また、顔画像取得部300から送信された人物の顔の領域を受信する。次に、複数の特徴抽出器のそれぞれを用いて、人物の顔の領域から特徴を抽出する。例えば、複数の特徴抽出器の個数がM個、受信した顔の領域がN個である場合には、M×N個の特徴を抽出する。さらに、登録画像から抽出した特徴を特徴抽出器選択部302へ、テスト画像から抽出した特徴を照合部303へ、それぞれ送信する。なお、学習済みモデルとは、入力画像から入力画像に対応する特徴を出力するニューラルネットワークに基づくネットワーク構造とそのパラメータとする。複数の特徴抽出器は、それぞれ異なるパラメータセットまたはネットワーク構造を有する。ニューラルネットワークは、畳み込みニューラルネットワーク等の既存のディープラーニング技術によって生成される。
【0021】
特徴抽出器選択部302は、登録画像を複数の特徴抽出器のそれぞれに入力することによって抽出された特徴と、特徴マップとに基づいて、それぞれの学習済みモデルに対する品質値を決定する。特徴抽出器選択部302は、品質値に基づいて、特定の人物を認識するための学習済みモデルを選択する。特徴抽出器選択部302は、外部から入力された複数の特徴抽出器を受信する。また、顔特徴抽出部301から送信された登録画像の顔の領域に対する特徴を受信する。さらに、受信した特徴に基づいて、受信した複数の特徴抽出器の中から1つの特徴抽出器を選択し、選択した特徴抽出器で抽出した顔の領域に対する特徴を、照合部303に送信する。例えば、特徴抽出器の個数がM個である場合には、M個の中から1つの特徴抽出器を選択する。さらに、選択した特徴抽出器で抽出した1×N個の特徴を、照合部303に送信する。ここで、顔特徴抽出部301は、複数の特徴抽出器(学習済みモデル)に基づいて、それぞれの特徴抽出器に対応する特徴マップを生成する。特徴マップとは、特徴抽出器に対応する特徴空間における各人物の特徴の分布を示したマップを指す。言い換えれば、特徴マップは、I番目の特徴抽出器について、N人それぞれの特徴を示すN個の特徴を同一の特徴空間にプロットしたマップである。
【0022】
照合部303は、選択された特徴抽出器に基づいて、入力画像に含まれる人物を認識する。照合部303は、特徴抽出器選択部302から送信された登録画像の特徴を受信する。また、顔特徴抽出部301から送信されたテスト画像の顔の領域に対する特徴を受信する。さらに、登録画像の特徴およびテスト画像の特徴を比較し、テスト画像に対応すると考えられる登録画像のIDを算出する。もしくは、対応すると考えられる登録画像がない場合には、「該当IDなし」という情報を算出する。最後に、算出した登録画像のID、ないし「該当IDなし」という情報を、認識結果として出力装置104に出力する。
【0023】
<認識装置による画像認識方法>
以下では、本実施形態に係る認識装置103によって実行される画像認識方法の一例を、図4を用いて示す。以下、図4等のフローチャートに示した処理は、コンピュータである図2のCPU201により記憶装置204に格納されているコンピュータプログラムに従って実行される。以下の説明では、各工程(ステップ)について先頭にSを付けて表記することで、工程(ステップ)の表記を省略する。
【0024】
なお、以下のフローチャートでは、特徴抽出器は予め学習済みであるとする。特徴抽出器の学習方法については後述する。
【0025】
S400では、顔画像取得部300が、登録画像から人物の顔を検出することによって顔画像を取得する。
【0026】
S401では、顔特徴抽出部301が、画像から人物毎の特徴を抽出する特徴抽出器(学習済みモデル)に顔画像を入力することによって顔特徴(特徴ベクトル)を抽出する。顔特徴抽出部301は、複数の特徴抽出器のそれぞれにおいて、S400で得られた顔領域それぞれについて特徴を抽出する。本例では、特徴抽出器がDNN_A、DNN_B、DNN_C、DNN_Dの4つであり、4つの特徴抽出器を用いて、全ての顔領域の特徴を抽出する。本例では、特徴として512個の数値からなる1次元ベクトルを利用するが、数値の個数が異なる1次元ベクトルや、多次元のベクトルを用いても良い。
【0027】
S402では、特徴抽出器選択部302が、登録画像から抽出された顔領域の特徴を用いて、各々の特徴抽出器に対応する特徴マップを生成する。本実施形態では、DNN_A、DNN_B、DNN_C、DNN_Dの4つから1つの特徴抽出器を選択する例を説明する。なお、それぞれの特徴抽出器の学習方法は後述する。特徴抽出器選択部302は、これらの4つの特徴抽出器に対応する4つの特徴マップMAP_A、MAP_B、MAP_C、MAP_Dを生成する。ここで、特徴マップとは、各々の特徴抽出器で抽出した全ての登録画像から抽出された顔領域の特徴を同一の特徴空間にプロットしたデータの集合である。
【0028】
S403では、特徴抽出器選択部302が、複数の特徴抽出器に対するそれぞれの品質値を決定する。具体的には、各々の特徴抽出器に対応する特徴マップに対して、特徴分布に基づく品質値Q_A、Q_B、Q_C、Q_Dを算出する。ここで、品質値Qは、以下の数1で算出されるものとする。数1は、異なる人物を示す特徴同士の類似度が大きいほど、値が小さくなる。逆に、異なる人物を示す特徴同士の類似度が小さい場合、他人同士を同一人物と認識する可能性が低くなる。つまり、他人同士を同一人物であると認識しにくい特徴抽出器の品質値を大きくすることによって、精度の高い特徴抽出器を特定することができるようになる。
【0029】
【数1】
【0030】
本例では、2つの特徴ベクトルf_iおよびf_jの類似度は、コサイン類似度を用いて算出し、特徴類似度の閾値dは、0.5とするが、他の方法を用いても良い。例えば、類似度の算出にはベクトル間のユークリッド距離を用い、ユークリッド距離に対応する別の閾値を設定しても良い。
【0031】
S404では、特徴抽出器選択部302が、複数の特徴抽出器から、品質値の最も大きい特徴抽出器を選択する。例えば、4つの品質値Q_A、Q_B、Q_C、Q_Dの大きさを比較し、Q_Bが最大であった場合には、Q_Bに対応する特徴抽出器であるDNN_Bを選択する。なお、複数の学習済みモデルに対応する特徴マップを出力装置に表示させてもよい。特徴マップを表示させることによって、選択された特徴抽出器が認識に適したものであることをユーザが確かめることができる。
【0032】
S405では、照合部303が、S404で選択した特徴抽出器によって抽出された特徴を用いて、登録画像とテスト画像を照合し、認識結果を作成する。以下、図5を用いて、特定の人物を認識する画像処理方法を詳述する。S500では、顔画像取得部300が、テスト画像から顔領域を取得する。S501では、顔画像取得部300が、S500において、顔領域を検出した場合にはS502に進み、顔領域が検出されていない場合には処理を終了する。S502では、顔特徴抽出部301が、S500で検出された顔領域の特徴を抽出する。S503では、照合部303が、テスト画像の特徴と、各々の登録画像の特徴との類似度をそれぞれ算出し、所定の基準を満たす登録画像の人物を認識結果として決定する。はじめに、テスト画像に写る人物の顔領域の特徴との特徴類似度が最も高い登録画像に写る人物のIDを算出する。次に、特徴類似度が、予め設定した閾値よりも大きいか否かを判定し、閾値よりも大きい場合には、認識結果としてのIDを出力する。なお、特徴類似度が、予め設定した閾値より小さい場合には、認識結果として「該当IDなし」に決定する。S504では、照合部303が、認識結果を出力装置104に出力する。認識結果は、認識した人物の登録画像を表示させてもよいし、単に登録人物と認識できた旨の表示であってもよい。または、後段処理として、オートロックの開錠信号を出力してもよいし、認識結果を音声でスピーカーに出力してもよい。
【0033】
<学習装置の構成>
ここで、図4の認識方法の準備段階として、特徴抽出器の学習方法を以下に説明する。すなわち、DNN_A、DNN_B、DNN_C、DNN_Dの4つの特徴抽出器の学習方法を説明する。
【0034】
図6は、本実施形態に係る特徴抽出器を学習する学習装置の構成例である。学習装置101は、顔画像取得部600と、初期学習部601と、学習データ選択部602と、追加学習部603とを有している。
【0035】
顔画像取得部600は、学習データを取得する。顔画像取得部600は、学習データ記憶装置105から入力された学習データを受信する。学習データは、人物の顔を含む画像とする。なお、学習データは、人物のIDを示す情報を持っていてもよい。次に、顔画像取得部600は、学習データに含まれる画像から顔領域を検出する。さらに、顔画像取得部600は、検出した顔領域を、初期学習部601に送信する。
【0036】
初期学習部601は、未学習の特徴抽出器を、学習データに基づいて学習させる。初期学習部601は、顔画像取得部600から顔領域を受信する。また、特徴抽出器記憶装置106から、学習対象である学習前の特徴抽出器(学習モデル)を受信する。さらに、初期学習部601は、受信した顔領域を教師データとして用いて、特徴抽出器を学習し、初期学習を完了した特徴抽出器(学習済みモデル)を生成する。学習方法として、本例では、既存の機械学習方法または深層学習方法を利用するが、他の学習手法を用いても良い。初期学習部601は、未学習の学習モデルの入力側の層に画像を設定し、出力側の層に画像に対する正解値を設定し、ニューラルネットワークを経由して算出される出力が設定した正解値に近づくようにニューラルネットワークのパラメータを調整する。以降では、初期学習を完了した特徴抽出器を、DNN_Aと表記する。さらに、DNN_Aを、学習データ選択部602および追加学習部603に送信する。
【0037】
学習データ選択部602は、学習データ記憶装置105から、学習データを受信する。また、初期学習部601から、DNN_Aを受信する。さらに、学習データから、一部の画像を選択し、選択した画像を追加学習部603に送信する。
【0038】
追加学習部603は、追加の学習データに基づいて、学習済みモデルを学習する。言い換えると、学習済みモデルに対して、異なるパラメータセットの学習済みモデルを生成する。複数の学習済みモデルは、少なくとも1つの基準となる学習モデルと、追加の学習データに基づいた機械学習ないし深層学習によって学習された1以上の学習モデルである。追加学習部603は、学習データ選択部602から、選択した画像を受信する。また、初期学習部601からDNN_Aを受信する。さらに、選択した画像を用いて、DNN_Aの追加学習を行う(以降では、追加学習部603で追加学習したDNNを、DNN_Bと表記する)。本例では、学習データ選択部602が選択した画像のみを用いて追加学習を行うが、これに限らず、外部から入力された学習データ全てを用いるが、学習データ選択部602が選択した画像の重みを大きくして学習しても良い。さらに、DNN_A、およびDNN_Bを、特徴抽出器として特徴抽出器記憶装置106に出力する。
【0039】
上記の例では、学習データ選択部602が一部のデータを選択する方法は1つであったが、これに限らず、2種類以上のデータ選択方法を適用し、各々のデータ選択方法に対して別の異なるDNNを学習および生成しても良い。例えば、一部のデータを選択する方法を3種類用意し、DNN_Aに加えて、追加学習部603では3種類のDNN(DNN_B、DNN_C、DNN_D)を生成および出力する、などとしても良い。
【0040】
なお、学習装置101と認識装置103は別の装置として説明したが、同一の装置であってもよい。例えば、認識装置103が、顔画像取得部600と、初期学習部601と、学習データ選択部602と、追加学習部603とを有してもよい。なお、同一の装置で学習と認識を実行する場合は、実際に顔認識を行うゲート等に設置された監視カメラ等で、現地の環境条件にあった学習モデルを生成しながら顔認識を行うケースが挙げられる。
【0041】
<学習方法のフローチャート>
図7は、本実施形態に係る学習装置(画像処理装置)によって実行される特徴抽出器の学習方法を説明するフローチャートである。なお、学習装置は、認識装置と同様に、図2のようなハードウェア構成を持つものとする。また、図7のフローチャートは、学習装置のCPUが、学習装置内の記憶装置に保存されたプログラムを実行することによって実現する。まず、S700では、顔画像取得部600は、学習データを取得する。学習データは、一般的なカメラで人物の顔を撮影し保存された画像と、画像に写る人物のIDの情報とから成るデータである。S701では、初期学習部601が、未学習の特徴抽出器を初期の特徴抽出器として取得する。本例では、未学習の特徴抽出器として、一般的な深層学習に用いられるDNNを用いる。S701では、初期学習部601が、学習済みの特徴抽出器のパラメータセットを初期化してもよい。
【0042】
S702では、初期学習部601は、未学習の特徴抽出器を、学習データに基づいて学習させる。本例では、はじめに、学習データを全て用いて、未学習のDNNを学習する。以降では、学習データの全てを用いて学習したDNNを、DNN_Aと表記する。
【0043】
S703では、学習データ選択部602が、追加の学習データを選択する。学習データ選択部602は、取得された学習データから、学習データの部分集合を作成する。部分集合は、ランダムに決定されてもよいし、所定の条件を満たすような部分集合を決定してもよい。前者の方法でも、元の特徴抽出器とは異なる特徴マップを出力する特徴抽出器を生成でき、この特徴抽出器によって認識精度が向上する個体があるためである。一方で、後者の方法によると、例えば、元の特徴抽出器では認識が難しい個体を追加学習してもよい。本例では、DNN_Aを用いて学習データから特徴抽出を行い、人物IDが互いに異なり、かつ画像間での特徴の類似度が高い部分集合を作成する。このようにすることによって、元の特徴抽出器では認識が困難であった個体について識別率を向上させることができる。ここでは、説明のために、部分集合の数が3であるとする。
【0044】
S704では、追加学習部603は、追加の学習データに基づいて、学習済みモデルを学習する。追加学習部603が、作成された部分集合のいずれかを用いてDNN_Aの追加学習を行う。本例では、部分集合の数が3であるため、追加学習によって3つのDNN(以降ではDNN_B、DNN_C、DNN_Dと表記する)を生成する。つまり、複数の学習済みモデルは、基準となる学習モデルの学習データのうち特定の基準で生成された学習データの部分集合の少なくとも1つに基づいて追加学習した学習モデルである。追加学習には、本例ではDNN_Aを学習した際と同じ既存の学習方法を用いればよい。S705では、追加学習部603は、学習済みの特徴抽出器のパラメータセットを特徴抽出器記憶装置に記憶させる。
【0045】
<学習方法の変形例>
S703では、人物IDが互いに異なり、かつ画像間での特徴の類似度が高い部分集合を作成している。しかしながら、これに限らず、別の所定の基準で部分集合を作成しても良い。例えば、認識を行う環境の明るさを想定し、特定の明るさを持つ画像の集合を作成しても良い。また、特定の人種や、眼鏡を掛けた人物などの画像の集合を作成しても良い。つまり、学習データ選択部602が、所定の基準として、環境の明るさが所定の基準以内、特定の人種、特定の属性を持つ人物を満たす登録画像を対象とした部分集合を決定する。
【0046】
以下では、学習データ選択部602において、一部の画像を選択する手順の例を、図8および以下に示す数2を用いて示す。図8は、本実施形態に係る学習装置(画像処理装置)によって実行されるデータ選択方法を説明するフローチャートである。S800では、学習データ選択部602が、学習データ間の全ての類似度を算出する。本例では、2つの特徴ベクトルf_iおよびf_jの類似度は、コサイン類似度を用いて算出するが、他の方法を用いても良い。例えば、ベクトル間のユークリッド距離を用いても良い。S801では、学習データ選択部602が、変数jに0を代入する。S802では、学習データ選択部602が、1枚の登録画像i_jとの類似度が閾値d以上の画像の集合Sjを作成する。S803では、学習データ選択部602が、変数jに1を加える。S804では、学習データ選択部602が、変数jと変数nが一致するか否かを判定する。一致しない場合にはS802に移行し、一致する場合にはS805に移行する。S805では、学習データ選択部602が、S802において作成された画像の集合Sjのそれぞれについて、集合内の画像の枚数を算出する。さらに、枚数が閾値e以上である画像の集合から成る、画像集合の集合Vを作成し、処理を終了する。
【0047】
【数2】
【0048】
一般的に、顔認識システムのユーザが用意する登録画像は、顔認識システムの作成段階では未知である。登録画像の枚数や、登録画像に写る顔の特性は様々であるため、ある特徴抽出器を用いて登録画像の特徴を抽出すると、特徴が非常に類似するような画像ペアや画像群が存在する可能性がある。そのために、顔認識の精度が低下してしまうことが推察される。そこで、以上説明した処理を利用することで、複数の異なる特徴抽出器のそれぞれに対して、登録画像の特徴の分布を算出する。これにより、特徴が非常に類似するような画像ペアや画像群がなるべく少なくなるような特徴抽出器を選択することで、高精度な顔認識を実現することが可能となる。
【0049】
<変形例1:登録人物の重要度の設定>
認識システムに登録する人物に重要度が設定されており、認識誤りを出来る限り少なくしたい人物が居る場合などには、自動的に選択された特徴抽出器がユーザにとっては最良のものではない場合がある。その場合には、予め登録人物の重要度をユーザが入力しておき、重要度を考慮した特徴マップの評価を行っても良い。特徴抽出器選択部302は、複数の人物のそれぞれに対応する登録画像に重要度を付与した登録情報を更に取得し、品質値に反映する。上記の例では、特徴マップの品質値Qは、数1で定義されている。数1では、全ての登録人物を均等に評価した場合における特徴分布の品質値が算出されている。しかしながら、これに限らず、登録人物に対して重要度の概念を導入し、重要度に基づく重み付き平均によって品質値を算出する。ここで、重要度に基づく重み付き平均によって算出する品質値をQ´とすると、例えば、Q´を以下の数3のように定義すれば良い。
【0050】
【数3】
【0051】
すなわち、品質値は、重要度に基づいて、重要度が大きい人物の特徴と、異なる人物の特徴との類似度が小さいほど大きい値になるように決定される。特定の人物を認識するのに適した特徴抽出器は、ユーザにとって特に正しく識別したい特定の人物について、特定の人物を示す特徴と他人を示す特徴とが離れている(分散が大きい)ほど好ましい。つまり、数3の品質値を用いることによって、特定の人物を他人と同一人物であると認識することを抑制することができる。ユーザは特定の人物の重み付けを大きくすることで、特定の人物について識別率が高い特徴抽出器を使用することができる。なお、重要度を入力するためには、例えば、3段階の重要度を各々の登録画像に対してユーザが入力できるユーザインタフェースを作成し、ディスプレイのタッチ操作やマウス・キーボード等によるデータ入力を用いれば良い。
【0052】
<変形例2:UIによる特徴マップの表示>
図4の方法では、複数の特徴抽出器の中から、最良な1つの特徴抽出器が自動的に選択されている。しかしながら、ユーザが特徴マップを閲覧して最良な特徴マップを選択し、選択されたマップに対応する特徴抽出器を選択しても良い。図9は、2つの異なる特徴マップ900、901を出力装置によって表示した例である。例えば、画像の特徴ベクトルを主成分分析により2次元ベクトルに変換し、2次元の特徴マップを作成し可視化することで、ユーザが特徴マップを閲覧し、所望の特徴マップを選択する。これによって、ユーザは特に識別したい人物に適した特徴マップを視覚的に捉えることができ、利便性が向上する。
【0053】
<変形例3:間違いやすい顔を表示する>
最良な特徴抽出器を用いた場合にも、登録画像の特性によっては、特徴が類似した登録画像群が存在する場合がある。その場合には、特徴が類似した登録画像群の存在をユーザが確認出来るようにしてもよい。例えば、図10のように、特徴マップにおいて、特徴の類似度が高い登録画像の集合を点線などで強調表示するUIを用いると良い。特徴マップ1000の中には、類似グループ1001と1002が点線の枠によって示される。つまり、選択された学習済みモデルに基づいて、特定の人物に類似する他の人物に関する情報を表示手段に表示させる。また、図11に示すように、特徴の類似度が高い登録画像の集合を掲載した表を表示しても良い。例えば、メッセージウィンドウ1100には、登録画像グループaと登録画像グループbが、それぞれ登録人物同士で類似しているグループとして表示される。これによって、予め間違いやすい人物の有無をユーザは確認できるため、利便性が向上する。
【0054】
<変形例4:識別率が向上するように登録画像を選択>
登録画像全てを利用して各特徴抽出器を評価している。しかしながら、各々の登録人物に対応する画像が複数存在する場合には、全体の画像枚数が多くなり、異なるIDの画像同士の特徴類似度が高くなってしまう場合がある。その場合には、複数の画像の取捨選択を含めて、品質が最も高くなるように特徴抽出器を選んでも良い。つまり、複数の登録画像の特徴の分布の分散が大きくなるように、複数の登録画像全てから一部の画像を選択する。例えば、100人の登録画像が20枚ずつ存在する場合には、全体で2000枚の登録画像が存在する。そこで、1人あたりの画像を1枚とし、品質が最も高くなるように100枚の登録画像かつ1つの特徴抽出器を選んでも良い。これによって選択された特徴抽出器は、他人同士を同一人物と認識することを抑制できる。
【0055】
<変形例5:特徴抽出器の再選択>
顔認識システムを運用している最中に、登録から外れる人物や、新たに登録される人物が存在する場合がある。登録画像が削除ないし追加されることにより、選択された特徴抽出器が最適な特徴抽出器ではなくなってしまう可能性がある。その場合には、例えば、登録画像が削除ないし追加された際には自動的に再度特徴抽出器を選びなおす。また、登録画像の数が膨大な場合など、特徴抽出器の選択に時間がかかるような場合には、例えば10%以上の枚数の変更があった場合にのみ自動的に再度特徴抽出器を選びなおす仕組みとすれば良い。つまり、特徴抽出器選択部は、登録画像に変動があった場合に、再度特徴抽出器を選択する。これによって、登録画像の変動があった場合でも、特徴抽出器の性能をチェックしてから認識を実行できるので、利便性が向上する。
【0056】
<変形例6:エラー判断>
最も高い類似度を持つ登録画像以外にも、類似度が高い登録画像が多く存在しているような場合には、認識結果の信頼度が低い可能性がある。その場合には、例えば、特徴抽出器で作成された特徴空間内において、登録画像の特徴が密集している領域を定義して、テスト画像の特徴が領域の内部に存在する際には、認識結果として「該当IDなし」と表示する方法を用いると良い。
【0057】
また、テスト画像の特徴が登録画像の特徴が密集している領域の内部に存在する際には、認識結果として最も類似度の高い登録人物のIDを出力するとともに、他の類似度の高い登録人物が存在する旨の警告情報を同時に出力すると良い。例えば、図12に示すように、入力画像の人物と類似度が所定値以上となる人物の登録画像を表示してもよい。入力画像1200または登録画像1202とともに、他の類似度の高い登録人物の画像1202a~1202cや、「以下の人物かも知れません」といった文面1201を表示すると良い。これらの表示をすることによって、ユーザは顔認識システムが正常に動作できる環境であるか否かを確かめることができるので、利便性が向上する。
【0058】
<変形例7:複数の特徴抽出器を用いる認識方法>
テスト画像の特徴が登録画像の特徴が密集している領域の内部に存在する際には、最も類似度の高い登録人物がテスト画像に写る人物と一致していない可能性が高い。そのような場合には、特徴抽出器を複数選択し、複数の特徴抽出器を併用して認識処理を行っても良い。つまり、照合部は、決定された複数の学習済みモデルに基づいて、特定の人物を認識する。例えば、はじめに、第1の特徴抽出器を用いて登録マップを作成し、登録画像の特徴が密集している領域を検出する。次に、特徴が密集している領域に存在する登録画像の集合に対し、最も特徴マップの品質が高い特徴抽出器を第2の特徴抽出器とする。このように第1の特徴抽出器および第2の特徴抽出器を選択しておき、第1の特徴抽出器で抽出されたがテスト画像の特徴が、特徴が密集している領域に存在する場合には、第2の特徴抽出器を用いて認識処理を行うと良い。これによって、他人同士を同一人物と認識することを抑制できる。
【0059】
<その他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12