(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022187566
(43)【公開日】2022-12-20
(54)【発明の名称】画像処理装置、画像処理方法、及びプログラム
(51)【国際特許分類】
G06T 7/00 20170101AFI20221213BHJP
【FI】
G06T7/00 660A
G06T7/00 350C
【審査請求】未請求
【請求項の数】15
【出願形態】OL
(21)【出願番号】P 2021095609
(22)【出願日】2021-06-08
(71)【出願人】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100090273
【弁理士】
【氏名又は名称】國分 孝悦
(72)【発明者】
【氏名】佐藤 俊介
(72)【発明者】
【氏名】矢野 光太郎
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096DA02
5L096HA08
5L096HA11
5L096JA11
5L096KA04
(57)【要約】
【課題】対象物体の特徴抽出に有用な部分に注目して特徴抽出を行うことで、対象物体を含む画像の照合を精度よく行う。
【解決手段】画像処理装置であって、画像から対象物体の特徴を示す特徴マップを生成する生成手段と、前記対象物体の構成要素の位置に基づいて、前記画像上の位置に応じた注目度を前記画像から検出する検出手段と、前記注目度に基づいて、前記特徴マップを補正する補正手段と、補正された前記特徴マップを用いて、前記対象物体を含む複数の画像の照合処理を行う照合手段と、を有することを特徴とする。
【選択図】
図4
【特許請求の範囲】
【請求項1】
画像から対象物体の特徴を示す特徴マップを生成する生成手段と、
前記対象物体の構成要素の位置に基づいて、前記画像上の位置に応じた注目度を前記画像から検出する検出手段と、
前記注目度に基づいて、前記特徴マップを補正する補正手段と、
補正された前記特徴マップを用いて、前記対象物体を含む複数の画像の照合処理を行う照合手段と、
を有することを特徴とする画像処理装置。
【請求項2】
前記画像上の位置に前記構成要素が存在する確からしさを表す第1のマップを算出する算出手段をさらに有し、
前記検出手段は、前記第1のマップに基づいて、前記注目度を検出することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記算出手段は、複数の前記構成要素ごとに、前記第1のマップを算出し、
前記検出手段は、前記算出手段により算出された前記第1のマップ群を結合して得られる結合マップに基づいて、前記注目度を検出することを特徴とする請求項2に記載の画像処理装置。
【請求項4】
前記検出手段は、前記第1のマップ群にさらに前記特徴マップを結合して得られた結合マップに基づいて、前記注目度を検出することを特徴とする請求項3に記載の画像処理装置。
【請求項5】
前記検出手段は、前記結合マップを入力して、前記画像上の各位置における前記注目度を表す注目度マップを出力する第1のニューラルネットワークによって、前記注目度マップを算出することを特徴とする請求項3又は4に記載の画像処理装置。
【請求項6】
前記生成手段は、前記対象物体を含む画像を入力して、前記特徴マップを出力する第2のニューラルネットワークによって、前記特徴マップを生成することを特徴とする請求項5に記載の画像処理装置。
【請求項7】
前記照合手段は、前記対象物体を含む複数の画像ごとに、補正された前記特徴マップを入力して前記対象物体の識別に寄与する特徴が表現された特徴量を出力する第3のニューラルネットワークによって前記特徴量を抽出して、抽出された前記特徴量を比較することで前記照合処理を行うことを特徴とする請求項6に記載の画像処理装置。
【請求項8】
前記第2のニューラルネットワークからの出力を、前記第1のニューラルネットワークからの出力によって補正して得られる補正された前記特徴マップを、前記第3のニューラルネットワークに入力して出力される前記特徴量が、前記対象物体の識別に寄与する特徴を捉えるように、前記第1のニューラルネットワーク、前記第2のニューラルネットワーク、及び第3ニューラルネットワークで用いられるパラメータのうちの少なくとも何れか1つを学習する学習手段をさらに有することを特徴とする請求項7に記載の画像処理装置。
【請求項9】
前記検出手段は、複数の前記構成要素の領域間の関連度を前記注目度として検出することを特徴とする請求項1乃至8の何れか1項に記載の画像処理装置。
【請求項10】
前記生成手段により生成された前記特徴マップを記憶する記憶手段をさらに有し、
前記補正手段は、前記照合処理を行う際に、前記記憶手段から前記特徴マップを読み出して、読み出した前記特徴マップを補正することを特徴とする請求項1乃至9の何れか1項に記載の画像処理装置。
【請求項11】
前記補正手段は、前記注目度に応じた重み付けを前記特徴マップに対して与えることによって、前記特徴マップを補正することを特徴とする請求項1乃至10の何れか1項に記載の画像処理装置。
【請求項12】
前記補正手段は、前記特徴マップの各層と、前記注目度と、についてアダマール積を取ることによって前記特徴マップを補正することを特徴とする請求項11に記載の画像処理装置。
【請求項13】
前記対象物体が、人間の顔であって、前記構成要素が、顔の器官であることを特徴とする請求項1乃至12の何れか1項に記載の画像処理装置。
【請求項14】
画像から対象物体の特徴を示す特徴マップを生成する生成工程と、
前記対象物体の構成要素の位置に基づいて、前記画像上の位置に応じた注目度を前記画像から検出する検出工程と、
前記注目度に基づいて、前記特徴マップを補正する補正工程と、
補正された前記特徴マップを用いて、前記対象物体を含む複数の画像の照合処理を行う照合工程と、
を含むことを特徴とする画像処理方法。
【請求項15】
請求項1乃至13の何れか1項に記載の画像処理装置の各手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像の照合を行うための技術に関する。
【背景技術】
【0002】
近年、顔の画像を照合して同一人物のものであることを判定することによって認証を行う顔認証が行われている。画像処理において、画像中で特徴が強く表れることが期待される部分に注目して特徴抽出する方法が、特許文献1、特許文献2に記載されている。顔認証においても、顔の中で注目する部分を求めて特徴抽出に利用する方法が非特許文献1に記載されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2020-154478号公報
【特許文献2】特開2020-154479号公報
【非特許文献】
【0004】
【非特許文献1】Q. Wang, T. Wu, H. Zheng and G. Guo, "Hierarchical Pyramid Diverse Attention Networks for Face Recognition," 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), Seattle, WA, USA, 2020, pp. 8323-8332, doi: 10.1109/CVPR42600.2020.00835.
【非特許文献2】Zhang, H., Goodfellow, I., Metaxas, D., & Odena, A. (2019, May). Self-attention generative adversarial networks. In International Conference on Machine Learning (pp. 7354-7363). PMLR.
【非特許文献3】Sun, Y., Wang, X., & Tang, X. (2013). Deep convolutional network cascade for facial point detection. In Proceedings of the IEEE conference on computer vision and pattern recognition (pp. 3476-3483).
【非特許文献4】HE, Kaiming, et al. Deep residual learning for image recognition. In: Proceedings of the IEEE conference on computer vision and pattern recognition. 2016. p. 770-778.
【非特許文献5】DENG, Jiankang, et al. Arcface: Additive angular margin loss for deep face recognition. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2019. p. 4690-4699.
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、非特許文献1の方法を含め従来の方法では、注目する部分を画像全体から探し出すことも含めて学習によって獲得するため、望ましい注目部分の抽出方法を獲得できるかどうかは、学習データセットの内容に依存する。そのため、注目すべき部分が定まらずモデルの学習が安定しなかったり、適当でない部分を注目するように学習してしまって最終的なモデルの精度が上がらなかったりすることがある。このようモデルでは、顔の一部にブレや隠れがある顔画像が入力された場合、ブレや隠れのある部分が影響してしまい、誤認証されてしまう可能性がある。
【0006】
本発明は上述した問題を解決するためになされたものであり、対象物体の特徴抽出に有用な部分に注目して特徴抽出を行うことで、対象物体を含む画像の照合を精度よく行うことを目的とする。
【課題を解決するための手段】
【0007】
そこで、本発明に係る画像処理装置は、画像から対象物体の特徴を示す特徴マップを生成する生成手段と、前記対象物体の構成要素の位置に基づいて、前記画像上の位置に応じた注目度を前記画像から検出する検出手段と、前記注目度に基づいて、前記特徴マップを補正する補正手段と、補正された前記特徴マップを用いて、前記対象物体を含む複数の画像の照合処理を行う照合手段と、を有することを特徴とする。
【発明の効果】
【0008】
本発明によれば、対象物体の特徴抽出に有用な部分に注目して特徴抽出を行うことで、対象物体を含む画像の照合を精度よく行うことができる。
【図面の簡単な説明】
【0009】
【
図1】実施形態1に係る画像処理装置のハードウェア構成を示す図である。
【
図2】実施形態1に係る画像処理装置の機能構成を示す図である。
【
図3】実施形態1に係るデータベースに登録されているデータを示す図である。
【
図4】実施形態1に係る画像の照合方法を示すフローチャートである。
【
図5】実施形態1に係る画像処理装置のデータフローを示す図である。
【
図6】実施形態1に係るニューラルネットワークの構造を示す図である。
【
図7】実施形態2及び4に係る画像処理装置の機能構成を示す図である。
【
図8】実施形態2に係る画像処理装置のデータフローを示す図である。
【
図9】実施形態3に係る画像処理装置の機能構成を示す図である。
【
図10】実施形態3に係る画像処理装置のデータフローを示す図である。
【
図11】実施形態3に係るデータベースに登録されているデータを示す図である。
【
図12】実施形態4に係る画像処理装置のデータフローを示す図である。
【
図13】実施形態4に係るニューラルネットワークの構造を示す図である。
【発明を実施するための形態】
【0010】
以下、添付の図面を参照して、本発明の実施形態について説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【0011】
<実施形態1>
人間の顔の特徴は目、口、鼻などの器官に強く表れることは経験的に知られており、顔特徴の抽出においてもそのような個人の特徴が強く表れる部分に注目して行うことが有用であると予想される。本実施形態に係る画像処理装置は、人間の顔画像から、目、口、鼻などの器官の領域に基づいて注目すべき部分を検出し、当該検出結果に基づいて前記顔画像から抽出した特徴マップの重みづけを行う。これにより、顔の特徴抽出に有用な部分に注目した特徴マップを用いて顔画像の照合を行うことが可能になる。
【0012】
本実施形態では、人間の顔画像の照合を行うために、人間の顔の器官を利用する方法について説明する。人間の顔は、対象物体の一例である。顔の器官は、対象物体の特徴的な構成要素の一例である。対象物体は人間の顔に限定されず、動物の顔や自動車等でもよい。本実施形態は、人間の顔の器官の領域の代わりに、その対象物体の特徴的な構成要素の領域を検出することで、同様の構成により様々な対象物体の画像照合に適用することが可能である。
【0013】
図1は、本実施形態に係る画像処理装置100のハードウェア構成の一例を示す図である。画像処理装置100は、制御装置11、記憶装置12、演算装置13、入力装置14、出力装置15、及びI/F(Interface)装置16を有する。これら各構成装置は、バス17を介して相互に接続されている。制御装置11は、CPU(Central Processing Unit)、及びGPU(Graphics Processing Unit)等で構成され、画像処理装置100の全体を制御する。記憶装置12は、ハードディスク等の記録メディアで構成され、制御装置11の動作に必要なプログラムやデータを記憶する。演算装置13は、MPU(Micro Processing Unit)等で構成され、制御装置11からの制御に基づき、必要な演算処理を実行する。
【0014】
入力装置14は、ヒューマンインターフェースデバイス等であり、ユーザの操作情報を画像処理装置100に入力する。出力装置15は、ディスプレイ等であり、制御装置11の制御により、画像処理装置100の処理結果等を表示する。I/F装置16は、ユニバーサルシリアルバス、ローカルエリアネットワーク、光ケーブル等の有線インターフェース、Wifi(登録商標)、Blutooth(登録商標)等の無線インターフェースである。I/F装置16は、制御装置11の制御により、撮影画像をカメラから入力したり、画像処理装置100で得た処理結果を外部装置に送信したり、画像処理装置100の動作に必要なプログラムやデータ等を外部装置から入力したりする。
【0015】
図2は、本実施形態に係る画像処理装置100の機能構成の一例を示す図である。画像処理装置100は、画像取得部201、特徴マップ生成部202、顔器官検出部203、マップ結合部204、注目度検出部205、特徴マップ補正部206、顔特徴抽出部207、顔特徴照合部208、出力部209を有する。画像処理装置100は、制御装置11が記憶装置12等に記憶されたプログラムを実行することで、これら各機能部として機能する。また、画像処理装置100の記憶装置12には、顔特徴データベース210が格納されており、顔特徴データベース210に保持されるデータが、各機能部によって適宜読み出して使用される。
【0016】
画像取得部201は、人間の顔を含む入力画像を取得する。画像取得部201は、入力画像として、I/F装置16に接続されたカメラから撮影画像を取得してもよく、記憶装置12やI/F装置16に接続された外部装置から画像データを取得してもよい。
特徴マップ生成部202は、入力画像から特徴を抽出し、抽出結果を表す特徴マップを生成する。具体的には、特徴マップ生成部202は、画像の各部から抽出した特徴を、画像上の位置に対応付けることで、抽出された特徴が2次元状に配列された特徴マップを生成する。
顔器官検出部203は、入力画像から目、鼻、口などの顔の器官の存在する領域を検出する。具体的には、顔器官検出部203は、複数の器官ごとに、入力画像上の位置に応じた当該器官が存在することの確からしさを表したスコアマップの算出を行う。以下、顔器官検出部203が算出したスコアマップを器官マップ(第1のマップ)という。
マップ結合部204は、顔器官検出部203で複数の器官ごとに算出した器官マップ群を結合する。
【0017】
注目度検出部205は、マップ結合部204の結合結果から、入力画像上の位置に応じた注目度を検出する。具体的には、注目度検出部205は、入力画像上の位置に応じた注目度の大きさを表したマップである注目度マップを算出する。
特徴マップ補正部206は、特徴マップ生成部202で生成した特徴マップを、注目度検出部205で算出した注目度マップを用いて補正する。
顔特徴抽出部207は、特徴マップ補正部206で補正された補正後の特徴マップから、個人の顔特徴を表現する特徴ベクトルを抽出する。
顔特徴照合部208は、顔特徴抽出部207で抽出された特徴ベクトルを、後述の顔特徴データベース210に登録された特徴ベクトルと照合する照合処理を行い、どの人物が本人であるかを探し出す。
出力部209は、照合の結果を出力装置15に表示してユーザに提示する。
【0018】
顔特徴データベース210は、複数の人物の情報及び特徴ベクトルを保持するデータベースである。
図3は、本実施形態に係る顔特徴データベース210の例を示す図である。
図3に示す例では、顔特徴データベース210は、人物ID、顔画像、人物情報、画像情報、及び特徴量の各項目からなる顔特徴レコードを複数の人物ごとに保持する。人物IDの項目には、顔特徴データベース210内の顔特徴レコードを一意に特定するための番号が登録されている。顔画像の項目には、人物の顔が映る画像データが登録されている。人物情報の項目には、人物の氏名等の人物に関する情報が登録されている。なお人物情報の項目に、住所、生年月日、役職等の情報がさらに登録されていてもよい。画像情報の項目には、顔画像の項目に登録されている画像データに付随する情報が登録されている。
図3の例では、画像情報の項目に、撮影日と登録日の情報が登録されている。なお画像情報の項目に、撮影時のカメラパラメータ、画像フォーマット、顔の位置等の情報がさらに登録されていてもよい。特徴量の項目には、顔画像の項目に登録されている画像データを入力画像として、
図4に示す顔画像の照合方法と同様の方法により、顔特徴抽出部207で抽出された特徴ベクトルが登録されている。顔特徴照合部208は、
図4のS308において、特徴量の項目に登録されている特徴ベクトルを用いて照合を行う。
【0019】
続いて、本実施形態に係る画像処理装置100による、顔画像の照合方法について説明する。
図4は、顔画像の照合方法を示すフローチャートである。
図5は、顔画像の照合を行う際に用いられるデータの流れを示す図である。以下のフローチャートの説明では、各工程(ステップ)について先頭にSを付けて表記することで、工程(ステップ)の表記を省略する。フローチャートの各工程の処理は、制御装置11が記憶装置12等に記憶されたプログラムを実行することにより実現される。
【0020】
まず、S301において、画像取得部201は、入力画像としてクエリ顔画像401を取得する。クエリ顔画像401は、
図5に示すように、人間の顔が一つのみ映っている。クエリ顔画像401の縦幅はH、横幅はWである。チャンネル数はRGBの3とする。なお、アルファチャンネルのように、色表現とは別のデータを加えてもよい。また、HSVなど他の色空間を用いてもよい。また、クエリ顔画像はチャンネル数1のグレースケール画像でもよい。
【0021】
次に、S302において、特徴マップ生成部202は、クエリ顔画像401から特徴を抽出し、特徴マップ402を生成する。特徴マップ402は、後段の顔特徴抽出部207が抽出する特徴ベクトル407が、個人の顔特徴を表現するための特徴を抽出するように学習されたCNNにより算出される。CNN(畳み込みニューラルネットワーク:Convolutional Neural Network)としては、例えば非特許文献4に示したResNet(残差ネットワーク:Residual Network)が用いられる。ここで用いられるCNNは、第2のニューラルネットワークの一例である。
【0022】
特徴マップ402は、
図5に示すように、縦幅がH/K、横幅がW/K、チャンネル数がD1のマップである。特徴マップ402の位置(x,y)における値(長さD1のベクトル値)は、クエリ顔画像401の範囲[|x/K|,|x/K|+K)×[|y/K|,|y/K|+K)における顔の特徴量を表す。ここで[・)は上への半開区間、|・|は床関数を表す。Kの値は特徴マップの生成に用いたCNNの最終層のサイズによって定まる。Kを大きくすることで特徴マップのサイズを小さくして計算量を削減できるが、その反面クエリ顔画像に対する特徴マップの解像度は下がるため精度が低下する。そのため、適当な精度と計算量が得られるようにKを定めてCNNの学習を行う。
【0023】
次に、S303において、顔器官検出部203は、クエリ顔画像401から、目、鼻、口などの顔の器官の存在する領域を検出する。具体的には、顔器官検出部203は、クエリ顔画像401から、複数の器官ごとに器官マップを算出して、器官マップ群403を生成する。本実施形態では、非特許文献3に記載されているような器官点位置推定手法によって、右目、左目、鼻、右口端、左口端の5つの器官ごとに器官マップを算出する。なお、器官は上記の5つに限らず、耳・頬・顎など他の器官を加えてもよいし、逆に鼻を省略したり、右口端と左口端の代わりに口の中心を使うなどしたりして減らしてもよい。
【0024】
器官マップ群403の各器官の器官マップは、
図5に示すように、それぞれ縦幅がH/K、横幅がW/K、チャンネル数1のマップであり、クエリ顔画像401との対応関係は前述の特徴マップ402と同様である。各器官マップは、それぞれの要素が正の値を取り、すべての要素の合計が1となるマップである。各要素の値は、クエリ顔画像401の対応する位置に器官が存在する確率を表現しており、例えば右目の器官マップでは、クエリ顔画像401の右目の位置に対応する領域で値が大きく、それ以外の領域で値が小さいようなマップとして出力される。この器官マップは、器官のブレや隠れ等が存在する領域では、値が小さくなる傾向がある。すなわち、器官マップには器官のブレや隠れ等の情報が含まれている。
【0025】
次にS304において、マップ結合部204は、顔器官検出部203が算出した器官マップ群403の各器官マップがそれぞれチャンネルを成すように結合して、結合マップ404を生成する。結合マップ404は、
図5に示すように、縦幅がH/K、横幅がW/K、チャンネル数がD2のマップである。D2は器官マップ群403の器官マップの数であり、本実施形態の例では5である。
次にS305において、注目度検出部205は、マップ結合部204で生成した結合マップ404から、注目度マップ405を算出する。注目度マップ405は、
図5に示すように、特徴マップと同じ、縦幅がH/K、横幅がW/Kで、チャンネル数が1のスコアマップである。注目度マップ405は、後段の顔特徴抽出部207が抽出する特徴ベクトル407の算出において、特徴マップのうち寄与が大きい範囲において値(スコア)が大きくなるように学習されたCNNによって算出される。ここで用いられるCNNは、第1のニューラルネットワークの一例である。
【0026】
注目度検出部205が用いるCNNの構造について、
図6を用いて説明する。注目度検出部205で用いるCNNは、
図6に示すように、第一畳み込み部1001と、第二畳み込み部1002を備える。第一畳み込み部1001は、チャンネル数D2のマップを入力とし、1×1の畳み込みを行ってから各要素に活性化関数を適用して、チャンネル数Lのマップを出力するネットワークである。活性化関数には、正規化線形関数(ReLU:Rectified Linear Unit)を用いる。第二畳み込み部1002は、チャンネル数Lのマップを入力とし、1×1の畳み込みを行ってから各要素にReLUを適用して、チャンネル数1のマップを出力するネットワークである。
【0027】
注目度検出部205は、まず、結合マップ404を第一畳み込み部1001に入力する。結合マップ404は縦幅がH/K、横幅がW/K、チャンネル数がD2であるから、第一畳み込み部1001から出力される中間マップは、縦幅H/K、横幅W/K、チャンネル数Lのマップである。
次に、注目度検出部205は、第一畳み込み部1001から出力された中間マップを第二畳み込み部1002に入力する。第二畳み込み部1002から出力されるマップは、縦幅H/K、横幅W/K、チャンネル数1のマップである。これを注目度マップ405とする。本実施形態の例ではLを3とする。D2は前述のとおり5であるから、注目度検出部205のCNNによって、出力されるマップのチャンネル数は順に5、3、1となる。なお、Lの値は、D2の値に応じて適宜選択される。
【0028】
次にS306において、特徴マップ補正部206は、S302で特徴マップ生成部202が生成した特徴マップ402を、S305で注目度検出部205が算出した注目度マップ405によって補正して、補正後特徴マップ406を生成する。前述したとおり、結合マップ404には器官のブレや隠れ等の情報が含まれているから、結合マップ404を利用して算出した注目度マップ405を用いて特徴マップ402を補正することで、特徴マップ402から器官のブレや隠れ等の影響を除外できる。すなわち、適切な部分に注目するように補正された特徴マップを生成することができる。
【0029】
補正後特徴マップ406は、特徴マップ402の各層と、注目度マップ405のアダマール積をそれぞれ取ることで求める。すなわち、特徴マップ補正部206は、特徴マップ402の要素(y、x、d)に対して、注目度マップ405の要素(y、x)の値を重みとして掛け合わせる。これによって、特徴マップ402のうち注目度マップ405の対応する部分の値が大きい、すなわち注目度の高い部分の値が強調されたものが補正後特徴マップ406として得られる。なお、特徴マップ補正部206は、単純にアダマール積を取って補正するのではなく、例えば注目度マップ405の各要素の値をシグモイド関数f(x)=1/(1+exp(-ax))で変換してからアダマール積を取るなどしてもよい。シグモイド関数のゲインaは、例えば1と定めてもよいし、後述する学習によって定めてもよい。また、補正方法はシグモイド関数を用いる方法に限らない。
【0030】
次にS307において、顔特徴抽出部207は、補正後特徴マップ406から特徴ベクトル407を抽出する。具体的には、顔特徴抽出部207は、
図5に示すように、縦幅H/K、横幅W/K、チャンネル数D1のマップから、次元Nのベクトル値を算出する全結合ニューラルネットワークを用いて、特徴ベクトル407を算出する。特徴ベクトル407は、個人の識別に寄与する顔特徴を表現される値が抽出するように学習されたニューラルネットワークによって算出される。ここで用いられるニューラルネットワークは、第3のニューラルネットワークの一例である。
次に、S308において、顔特徴照合部208は、S307で顔特徴抽出部207が抽出した特徴ベクトル407と、顔特徴データベース210に保持されている特徴ベクトルとを比較して、クエリ顔画像401に映った顔が誰のものであるかを判定する。顔特徴照合部208は、顔特徴データベース210の顔特徴レコードのうち、特徴量の項目に登録されている特徴ベクトルが、クエリ顔画像401から算出した特徴ベクトル407(Fとする)と、最も近しいと考えられるものを探し出すことによって照合を行う。以下に、その方法を説明する。
【0031】
まず、顔特徴照合部208は、
図5に示すように、顔特徴データベース210から特徴ベクトル408を読み出す。特徴ベクトル408を含む顔特徴レコードの人物IDをiとし、人物IDがiであるレコードに含まれる特徴ベクトルをFiとする。次に、顔特徴照合部208は、FとFiのコサイン類似度を算出し、その算出結果を類似度スコアSiとする。顔特徴照合部208は、顔特徴データベース210に含まれるすべての特徴ベクトルについて、類似度スコアを算出する。次に、顔特徴照合部208は、類似度スコアが最大となる人物IDとしてI=argmax{Si}を求め、その類似度スコアSIが閾値T(例えば0.8)を超えるかを判定する。類似度スコアSIが閾値Tを超えた場合、顔特徴照合部208は、クエリ顔画像401に映った人物が、人物IDがIの顔特徴レコードの人物と同一人物であるとして照合の結果を定める。類似度スコアSIが閾値Tを超えない場合、顔特徴照合部208は、クエリ顔画像401に映った顔に該当する人物なしとする。
【0032】
最後に、S309において、出力部209は、照合の結果を出力装置15に表示してユーザに提示する。出力部209は、顔特徴データベース210から人物IDがIの顔特徴レコードを取得し、顔画像、人物情報、画像情報の各項目に登録されている画像データ及び各種の情報を、出力装置15に表示する。これによりユーザはクエリ顔画像401に映った人間の顔が、顔特徴データベース210に登録される人物のうちのどれに該当するかを知ることができる。以上のようにして、
図4に示す顔画像の照合を行うための一連の処理が終了する。
【0033】
以上のような顔画像の照合を行うためには、顔特徴抽出部207で算出される特徴ベクトル407は、同一人物でコサイン類似度が大きく、別人同士ならば小さくなるような特性を持たなければならない。特徴マップ生成部202、注目度検出部205、及び顔特徴抽出部207で使用されるネットワークには、このような特性を持つ特徴ベクトル407が結果的に算出されるように、予め機械学習されたものを用いる。
【0034】
ネットワークの学習は、いわゆるend-to-end学習と呼ばれる方法で、特徴マップ生成部202、注目度検出部205、及び顔特徴抽出部207で使用されるネットワークを一体にして同時に行う。まず、
図2の構成のうち、破線で囲んだ範囲を、先に説明した処理フロー及び入出力順序と同様になるように接続した一体的ネットワーク250として用意する。すなわち、一体的ネットワーク250は、特徴マップ生成部202と注目度検出部205の出力を、特徴マップ補正部206で補正して、補正後のマップを顔特徴抽出部207の入力とするようにネットワークを接続して構成される。一体的ネットワーク250の入出力は、
図5に示したクエリ顔画像401、及び当該クエリ顔画像401から顔器官検出を行って得られた器官マップを結合した結合マップ404が入力であり、次元Nの特徴ベクトル407が出力である。
【0035】
この一体的ネットワーク250は、特徴ベクトル407が顔の照合に有効な特徴を捉える特性を持って算出されるように学習される。これにより、顔特徴抽出部207が特徴ベクトル407を適切に算出するようなネットワークパラメータが獲得される。同時に、特徴マップ生成部202と注目度検出部205が用いるネットワークパラメータも、顔特徴抽出部207の入力である補正後特徴マップ406が、有効な特性を持つ特徴ベクトル407を算出するために有用な情報を持って算出されるように獲得される。なお本実施形態のように、特徴マップ生成部202、注目度検出部205、及び顔特徴抽出部207で使用されるネットワークパラメータを一体にして同時に学習する方法に限られず、個々のネットワークパラメータを別々に学習する方法を用いてもよい。例えば、特徴マップ生成部202で用いられるネットワークパラメータを先に学習させ、当該学習させたパラメータを用いて、注目度検出部205及び特徴マップ補正部206で用いられるネットワークパラメータを学習するようにしてもよい。
【0036】
補正後特徴マップ406は、特徴マップ402の各層と注目度マップ405についてアダマール積を取ることによって算出されるものである。したがって、注目度マップ405は、特徴マップ402のうち、特徴ベクトル407の算出に有用な情報を持つ部分に大きな重みを与えるマップとして算出されることを意味する。すなわち、注目度マップ405は、特徴マップ402、ひいてはクエリ顔画像401のうち、注目すべき場所の値が大きくなるように算出されたマップであって、すなわち注目度の大きさを表すマップであると解釈することができる。
【0037】
一体的ネットワーク250の学習は以下のように行う。まず、多量の顔画像を用意し、分類ラベルを同一人物は同一のクラス、別人は異なるクラスとなるように付与して学習データセットを用意する。さらに、それぞれの顔画像から、顔器官検出部203とマップ結合部204によって結合マップを算出しておく。ここで算出した結合マップと、元の顔画像のペアを、一体的ネットワーク250の入力として以後の学習を行う。次に、適当な初期値を与えた一体的ネットワーク250を用意する。初期値は定数や乱数でもよいし、例えば別に学習済みのResNetのパラメータを利用するなどしてもよい。そして、例えば非特許文献5に記載の方法によって、学習データセットを利用して一体的ネットワーク250のパラメータを更新する。この学習は、同じ分類クラスの顔画像同士で出力ベクトルのコサイン類似度が大きく、異なる分類クラスでは小さくなるように進行する。十分な量の顔画像を学習したのちに、得られた一体的ネットワーク250のパラメータを記憶装置12に格納して、特徴マップ生成部202、注目度検出部205、及び顔特徴抽出部207で使用するネットワークのパラメータとして用いるようにする。なお、特徴マップ補正部206が先述のシグモイド関数のゲインなどのパラメータを持つ場合は、そのパラメータも同時に学習するようにしてもよい。
以上のように、本実施形態では、器官マップのスコアが、器官が隠れている領域や不鮮明な領域で小さくなる特性を利用して、顔画像から検出した器官マップを学習用データとして用いる。これにより、器官の隠れやブレ等の状態に応じて注目すべき部分を適切に定めた学習モデルを生成することが可能になる。
【0038】
以上のような、本実施形態に係る画像処理装置100によれば、人間の顔画像において、顔の器官の領域を利用して注目すべき部分を定めることで、顔の特徴抽出に有用な部分に注目した特徴抽出を行うことが可能になる。これにより、人間の顔等の対象物体を含む画像の照合を精度よく行うことができる。
【0039】
<実施形態2>
実施形態1では、注目度マップを器官マップ群のみによって算出したが、補正前の特徴マップ自体の情報も加えることで、特徴量空間において注目すべき部分をより正確に抽出できるようになる可能性がある。本実施形態では、注目度マップを器官マップ群と特徴マップから算出する方法を説明する。なお、実施形態1と共通する箇所は説明を省略し、実施形態1との差分を中心に説明する。
【0040】
図7は、本実施形態に係る画像処理装置100の機能構成の一例を示す図である。本実施形態の機能構成は、実施形態1と同様であるが、特徴マップ生成部202とマップ結合部204の間の接続が加わっている。すなわち、マップ結合部204は、顔器官検出部203で算出した器官マップ群、及び特徴マップ生成部202で生成した特徴マップを結合する。
図8は、本実施形態で用いられるデータの流れを示す図である。本実施形態に係る画像処理装置100で行う、顔画像の照合方法については
図4と同様であるが、S304でマップ結合部204が行う処理、及びS305で注目度検出部205が行う処理の内容が、以下で説明するとおり実施形態1とは異なる。
【0041】
本実施形態では、S304において、マップ結合部204は、顔器官検出部203が算出した器官マップ群403の各器官マップに加えて、S302で生成した特徴マップ402も合わせて深さ方向に結合することによって、結合マップ404を生成する。結合マップ404は、
図8に示すように、縦幅がH/K、横幅がW/Kとなる。また、チャンネル数D2は器官マップ群403の器官の数に、特徴マップ402のチャンネル数D1を加えたものとなる。
また、本実施形態では、S305において、注目度検出部205が、上記のように結合された結合マップ404を、注目度マップ405の算出に用いる。
【0042】
本実施形態においても、実施形態1と同様に、特徴マップ生成部202、注目度検出部205、及び顔特徴抽出部207が利用するネットワークのパラメータは、これらを接続した一体的ネットワークによって学習したものを用いる。
図7の構成のうち、破線で囲んだ範囲が、本実施形態に係る一体的ネットワーク1250である。一体的ネットワーク1250は、本実施形態に係るマップ結合部204の機能を含む。すなわち、注目度検出部205が利用するネットワークへの入力は、器官マップと特徴マップ生成部202が利用するネットワークの出力とを結合した結合マップ404となる。一体的ネットワーク1250を学習する方法は、実施形態1と同様である。
【0043】
以上のような、本実施形態に係る画像処理装置100によれば、特徴マップの情報を考慮した注目度を検出することが可能となる。特徴マップ自体にも注目すべき場所を決定するための情報が含まれている可能性があるから、このような注目度を利用して特徴マップを補正することで、人間の顔等の対象物体を含む画像の照合を精度よく行うことができる。
【0044】
<実施形態3>
実施形態1及び2では、注目度による特徴マップの補正を予め行っていたが、照合を行うタイミングで特徴マップの補正を行うこともできる。本実施形態では、注目度マップを用いた補正を照合時に行う方法を説明する。なお、実施形態1と共通する箇所は説明を省略し、実施形態1との差分を中心に説明する。
【0045】
図9は、本実施形態に係る画像処理装置100の機能構成の一例を示す図である。本実施形態の機能構成は、実施形態1と同様であるが、特徴マップ補正部206と顔特徴データベース210の間の接続が加わっている。すなわち、特徴マップ補正部206は、顔特徴データベース210に記憶された特徴マップも、注目度検出部205で検出した注目度マップを用いて補正する。
図10は、本実施形態で用いられるデータの流れを示す図である。本実施形態では、顔特徴データベース210に保持されているデータの一部が、以下で説明するとおり実施形態1とは異なる。また、本実施形態に係る画像処理装置100で行う、顔画像の照合方法については
図4と同様であるが、S308で顔特徴照合部208が行う処理の内容が、以下で説明するとおり実施形態1とは異なる。
【0046】
図11は、本実施形態に係る顔特徴データベース210の例を示す図である。本実施形態に係る顔特徴データベース210は、特徴量の項目に、顔特徴抽出部207で抽出された特徴ベクトルの代わりに、特徴マップ生成部202が実施形態1と同様の方法で生成した特徴マップ701が登録されている。
本実施形態では、S308において、まず、特徴マップ補正部206は、
図10に示すように、顔特徴データベース210から特徴マップ701を読み出す。特徴マップ701を含む顔特徴レコードの人物IDをiとし、人物IDがiであるレコードに含まれる特徴マップをMiとする。次に、特徴マップ補正部206は、実施形態1のS306と同様の方法で特徴マップMiを補正して補正後特徴マップ702を生成し、次いで実施形態1のS307と同様の方法で補正後特徴マップ702から特徴ベクトル408(Fi)を抽出する。そして、顔特徴照合部208は、実施形態1のS308と同様の方法で、特徴ベクトルFとの類似度を計算して照合する。なお、本実施形態における特徴マップ生成部202、注目度検出部205、及び顔特徴抽出部207が利用するネットワークの学習方法は、実施形態1と同様である。
【0047】
以上のような、本実施形態に係る画像処理装置100によれば、特徴マップの補正を照合時に行うことが可能になる。これによれば、注目度検出部205で使用するネットワークパラメータが変化した場合でも、顔特徴データベース210の内容を作り直す必要がなくなる。そのため、注目度検出部205で使用するネットワークパラメータを、利用環境などの条件に応じて入れ替えたり、追加学習などによって適宜更新する構成を加えたりすることが可能になる。
【0048】
<実施形態4>
実施形態1~3では、画像内の器官の局所的な領域に着目して注目度を求めたが、器官を含む領域間の関連性に着目した注目度を利用することもできる。本実施形態では、器官を含む領域間の関連性を表す注目度マップを用いて補正を行う方法を説明する。なお、本実施形態は実施形態2を元に説明することとし、実施形態2と共通する箇所は説明を省略して、実施形態2との差分を中心に説明する。
【0049】
本実施形態の機能構成は、
図7に示す実施形態2と同様である。
図12は、本実施形態で用いられるデータの流れを示す図である。また、本実施形態に係る画像処理装置100で行う、顔画像の照合方法については
図4と同様であるが、S305で注目度検出部205が行う処理、及びS306で特徴マップ補正部206が行う処理の内容が、以下で説明するとおり実施形態2とは異なる。
なお、以下の説明では、実施形態2のように、器官マップ群と特徴マップを結合した結合マップを用いるが、実施形態1のように、器官マップ群のみを結合した結合マップを用いて、実施形態4と同様の方法で、注目度マップを算出することも可能である。
【0050】
本実施形態では、S305において、注目度検出部205が算出する注目度マップ405は、
図12に示すように、縦幅と横幅がともにN=((H/K)×(W/K)×D1)である。すなわち、特徴マップ402の要素数を縦幅と横幅に持つ。チャンネル数は1である。このような注目度マップ405は、例えば非特許文献2に示されているような構造のニューラルネットワークを用いることによって計算できる。
【0051】
本実施形態に係る注目度検出部205が用いるニューラルネットワークの構造について、
図13を用いて説明する。本実施形態に係る注目度検出部205が用いるニューラルネットワークは、
図13に示すように、第一畳み込み部1101、第二畳み込み部1102、第一ベクトル化部1103、第二ベクトル化部1104、及び行列計算部1105を備える。
第一畳み込み部1101及び第二畳み込み部1102は、それぞれマップ結合部204で求めたチャンネル数D2のマップを入力とし、1×1の畳み込みを行ってから各要素にReLUを適用して、チャンネル数D1のマップを出力するネットワークである。第一畳み込み部1101と第二畳み込み部1102のネットワークには、それぞれ異なるパラメータを適用する。
【0052】
第一ベクトル化部1103及び第二ベクトル化部1104は、縦幅H/K、横幅W/K、チャンネル数D1の入力マップをベクトル化して、N=((H/K)×(W/K)×D1)次元の出力ベクトルに変換する。入力マップの要素(y、x、d)は、出力ベクトルの(y×(W/K×D1)+x×D1+d)番目の要素となる。第一ベクトル化部1103の出力ベクトルは横ベクトル、第二ベクトル化部1104の出力ベクトルは縦ベクトルである。
行列計算部1105は、N次元の横ベクトルと縦ベクトルを入力として、横ベクトルに縦ベクトルを右から掛けた行列積を取ってN×Nの行列を計算してから、例えばsoftmax関数によって平滑化したものを出力とする。
【0053】
本実施形態では、S305において、注目度検出部205は、まず結合マップ404を第一畳み込み部1101に入力して、第一中間マップを算出する。さらに、注目度検出部205は、結合マップ404を第二畳み込み部1102にも入力して、第二中間マップを算出する。次に、第一中間マップを第一ベクトル化部1103に入力して、第一中間ベクトルを算出する。さらに、第二中間マップを第二ベクトル化部1104に入力して、第二中間ベクトルを算出する。そして、注目度検出部205は、第一中間ベクトルと第二中間ベクトルを行列計算部1105に入力して、出力を得る。これを本実施形態に係る注目度マップ405とする。本実施形態における注目度マップ405は、幅N、高さNのマップとなる。
【0054】
本実施形態における注目度マップ405は、特徴マップの任意の2点間の関連度を表す値を注目度として持つ。すなわち、特徴マップ402の要素(y1、x1、d1)に対する(y2、x2、d2)の関係を表す注目度は、注目度マップ405の要素(y1×(W/K×D1)+x1×D1+d1、y2×(W/K×D1)+x2×D1+d2)の値に対応する。注目度マップ405は対称行列とは限らず、要素(y2、x2、d2)に対する(y1、x1、d1)の注目度は、要素(y1、x1、d1)に対する(y2、x2、d2)と等しいとは限らない。なお、転置行列と足し合わせるなどの工程を追加して等しくなるようにしてもよい。
【0055】
このように計算された注目度マップ405は、例えば右目と左目の間の関連性が高ければ、右目の領域に対する左目の領域の注目度、及び左目の領域に対する右目の領域の注目度が大きいことが期待される。すなわち、器官の領域間の関連性の高い部分の注目度が高くなっているものと考えられる。
【0056】
続いて、本実施形態におけるS305における、特徴マップ補正部206が行う補正の方法を説明する。まず、特徴マップ補正部206は、特徴マップ402を第一ベクトル化部1103と同様にベクトル化する。すなわち、特徴マップ補正部206は、特徴マップ402の要素(y、x、d)を(y×(W/K×D1)+x×D1+d)番目の要素とする、N次元のベクトルVを生成する。次に、特徴マップ補正部206は、注目度マップ405とVの行列積を取る。行列積の結果V’はVと同じ次元を持つベクトルとなる。最後に、特徴マップ補正部206は、V’の(y×(W/K×D1)+x×D1+d)番目の要素が(y、x、d)の要素となる縦幅H/K、横幅W/K、チャンネル数D1のマップを生成する。これを補正後特徴マップ406とする。なお、本実施形態における特徴マップ生成部202、注目度検出部205、及び顔特徴抽出部207が利用するネットワークの学習方法は、先述した注目度検出部205が用いるネットワークの構造を除いて、実施形態1と同様である。
【0057】
以上のような、本実施形態に係る画像処理装置100によれば、器官の領域間の関連性を注目度として検出することが可能になる。このような注目度を利用して特徴マップを補正することで、人間の顔等の対象物体を含む画像の照合を精度よく行うことができる。
【0058】
<その他の実施形態>
以上、各実施形態を詳述したが、本発明は例えば、システム、装置、方法、プログラム若しくは記録媒体(記憶媒体)等としての実施態様をとることが可能である。具体的には、複数の機器(例えば、ホストコンピュータ、インターフェース機器、撮像装置、Webアプリケーション等)から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
【0059】
また、本発明の目的は、以下のようにすることによっても達成される。即ち、前述した各実施形態の機能を実現するソフトウェアのプログラムコード(コンピュータプログラム)を記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給する。係る記憶媒体は、コンピュータ読み取り可能な記憶媒体である。そして、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行する。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【符号の説明】
【0060】
100:画像処理装置