特開2018-55470(P2018-55470A)IP Force 特許公報掲載プロジェクト 2015.5.11 β版

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

▶ 国立大学法人神戸大学の特許一覧
特開2018-55470表情認識方法、表情認識装置、コンピュータプログラム及び広告管理システム
<>
  • 特開2018055470-表情認識方法、表情認識装置、コンピュータプログラム及び広告管理システム 図000017
  • 特開2018055470-表情認識方法、表情認識装置、コンピュータプログラム及び広告管理システム 図000018
  • 特開2018055470-表情認識方法、表情認識装置、コンピュータプログラム及び広告管理システム 図000019
  • 特開2018055470-表情認識方法、表情認識装置、コンピュータプログラム及び広告管理システム 図000020
  • 特開2018055470-表情認識方法、表情認識装置、コンピュータプログラム及び広告管理システム 図000021
  • 特開2018055470-表情認識方法、表情認識装置、コンピュータプログラム及び広告管理システム 図000022
  • 特開2018055470-表情認識方法、表情認識装置、コンピュータプログラム及び広告管理システム 図000023
  • 特開2018055470-表情認識方法、表情認識装置、コンピュータプログラム及び広告管理システム 図000024
  • 特開2018055470-表情認識方法、表情認識装置、コンピュータプログラム及び広告管理システム 図000025
  • 特開2018055470-表情認識方法、表情認識装置、コンピュータプログラム及び広告管理システム 図000026
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】特開2018-55470(P2018-55470A)
(43)【公開日】2018年4月5日
(54)【発明の名称】表情認識方法、表情認識装置、コンピュータプログラム及び広告管理システム
(51)【国際特許分類】
   G06T 7/20 20170101AFI20180309BHJP
   G06T 7/00 20170101ALI20180309BHJP
   G06T 1/00 20060101ALI20180309BHJP
【FI】
   G06T7/20 300B
   G06T7/00 350C
   G06T1/00 340A
【審査請求】未請求
【請求項の数】8
【出願形態】OL
【全頁数】21
(21)【出願番号】特願2016-191819(P2016-191819)
(22)【出願日】2016年9月29日
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.MATLAB
(71)【出願人】
【識別番号】504150450
【氏名又は名称】国立大学法人神戸大学
【住所又は居所】兵庫県神戸市灘区六甲台町1−1
(74)【代理人】
【識別番号】110000280
【氏名又は名称】特許業務法人サンクレスト国際特許事務所
(72)【発明者】
【氏名】陳 金輝
【住所又は居所】兵庫県神戸市灘区六甲台町1−1 国立大学法人神戸大学内
(72)【発明者】
【氏名】羅 兆傑
【住所又は居所】兵庫県神戸市灘区六甲台町1−1 国立大学法人神戸大学内
(72)【発明者】
【氏名】有木 康雄
【住所又は居所】兵庫県神戸市灘区六甲台町1−1 国立大学法人神戸大学内
【テーマコード(参考)】
5B057
5L096
【Fターム(参考)】
5B057CA08
5B057CA12
5B057CA16
5B057DA11
5B057DB02
5B057DB09
5B057DC08
5B057DC16
5B057DC22
5L096DA02
5L096EA35
5L096FA06
5L096FA08
5L096FA67
5L096FA70
5L096JA11
5L096KA04
(57)【要約】
【課題】 階層型ニューラルネットワークを用いた表情認識の精度を向上する。
【解決手段】 本発明の一態様に係る表情認識方法は、撮影画像に含まれる顔の表情を認識する方法であって、少なくとも顔の凹凸情報(角度A)、質感情報(勾配G)及び輪郭情報(輪郭E)に関する特徴を有する学習用画像群を入力データとして、階層型ニューラルネットワークにパラメータを学習させる学習ステップと、前記撮影画像から少なくとも前記3種類の情報に関する特徴をそれぞれ抽出して複数の入力画像を生成し、生成した前記複数の入力画像を入力データとして、前記撮影画像に含まれる顔の表情を学習済みの前記階層型ニューラルネットワークに認識させる認識ステップと、を含む。
【選択図】 図6
【特許請求の範囲】
【請求項1】
撮影画像に含まれる顔の表情を認識する方法であって、
少なくとも顔の凹凸情報、質感情報及び輪郭情報に関する特徴を有する学習用画像群を入力データとして、階層型ニューラルネットワークにパラメータを学習させる学習ステップと、
前記撮影画像から少なくとも前記3種類の情報に関する特徴をそれぞれ抽出して複数の入力画像を生成し、生成した前記複数の入力画像を入力データとして、前記撮影画像に含まれる顔の表情を学習済みの前記階層型ニューラルネットワークに認識させる認識ステップと、を含む表情認識方法。
【請求項2】
前記階層型ニューラルネットワークは、畳み込みニューラルネットワークである請求項1に記載の表情認識方法。
【請求項3】
前記凹凸情報は、各画素点における画素値の勾配ベクトルの方向角度であり、
前記質感情報は、各画素点における画素値の方向ベクトルのノルムであり、
前記輪郭情報は、画素値が急峻に変化する画素点の位置情報である請求項1又は請求項2に記載の表情認識方法。
【請求項4】
前記学習ステップは、少なくとも前記3種類の情報に関する特徴を複数のサンプル画像からそれぞれ抽出することにより、前記学習用画像群を生成する生成ステップと、
生成した前記学習用画像群を入力データとして前記階層型ニューラルネットワークが出力する認識結果に基づいて、当該ネットワークの前記パラメータを更新する更新ステップと、を含む請求項1〜請求項3のいずれか1項に記載の表情認識方法。
【請求項5】
前記生成ステップには、前記サンプル画像から抽出した顔画像に水平反射を施す処理が含まれる請求項4に記載の表情認識方法。
【請求項6】
撮影画像に含まれる顔の表情を認識する装置であって、
少なくとも顔の凹凸情報、質感情報及び輪郭情報に関する特徴を有する学習用画像群を入力データとしてパラメータを学習した、階層型ニューラルネットワークを有する処理部と、
前記撮影画像から少なくとも前記3種類の情報に関する特徴をそれぞれ抽出して複数の入力画像を生成し、生成した前記複数の入力画像を前記処理部に入力する画像生成部と、
前記複数の入力画像を入力データとして学習済みの前記階層型ニューラルネットワークが出力した認識結果を、前記撮影画像の顔の表情として外部に出力する出力部と、を備える表情認識装置。
【請求項7】
画像処理を実行可能なコンピュータ装置に、撮影画像に含まれる顔の表情を認識する処理を実行させるためのコンピュータプログラムであって、
少なくとも顔の凹凸情報、質感情報及び輪郭情報に関する特徴を有する学習用画像群を入力データとして、階層型ニューラルネットワークにパラメータを学習させる学習ステップと、
前記撮影画像から少なくとも前記3種類の情報に関する特徴をそれぞれ抽出して複数の入力画像を生成し、生成した前記複数の入力画像を入力データとして、前記撮影画像に含まれる顔の表情を学習済みの前記階層型ニューラルネットワークに認識させる認識ステップと、を含むコンピュータプログラム。
【請求項8】
広告表示装置と、
前記広告表示装置が表示する広告画像の視認者を撮影する撮影装置と、
請求項6に記載の表情認識装置を有する制御装置と、を備える広告管理システムであって、
前記制御装置は、前記撮影装置が撮影した前記視認者を含む撮影画像から当該視認者の表情を認識する認識処理と、前記表情の認識結果を集計する集計処理と、集計結果を広告の管理者に提示する提示処理と、を実行する広告管理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、表情認識方法、表情認識装置、コンピュータプログラム及び広告管理システムに関する。具体的には、階層型畳み込みニューラルネットワークを用いた表情認識の精度を改善する画像処理技術に関する。
【背景技術】
【0002】
近年、深層学習(Deep Learning)による画像認識の性能が飛躍的に向上している。深層学習は、多層の階層型ニューラルネットワークを用いた機械学習の総称である。多層の階層型ニューラルネットワークとしては、例えば、畳み込みニューラルネットワーク(以下、「CNN」ともいう。)が用いられる。
CNNは、局所領域の畳み込み層とプーリング層とが繰り返される多層の積層構造を有しており、かかる積層構造により画像認識の性能が向上するとされている。
【0003】
非特許文献1に示すように、畳み込みニューラルネットワークを用いた深層学習により、幸福感、 驚き、 恐れ、 悲しみ、 怒り、 嫌悪などの普遍的な顔の表情のクラスを認識することも既に行われている。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】「畳み込みニューラルネットワークを用いた表情表現の獲得」 西銘大喜 他4名 2016年度 人工知能学会全国大会 4L1-5in1 2016年6月9日一般発表
【発明の概要】
【発明が解決しようとする課題】
【0005】
畳み込みニューラルネットワークを用いた表情認識では、顔の原画像に前処理を施すことなく、原画像の画素値(RGB値)をそのままネットワークに入力するか、画素値に主成分分析(Principle Component Analysis)が行われる。
例えば、非特許文献1では、顔の原画像に対する前処理としてGCN(Global Contrast Normalization)が実行されている。
【0006】
このように、従来では、原画像の画素値(生データ)をそのまま使用するか、原画像から単一の特徴因子を抽出する前処理を行うだけである。この点は、表情認識の高精度化を抑制する原因の1つであると考えられる。
本発明は、かかる従来の問題点に鑑み、階層型ニューラルネットワークを用いた表情認識の精度を向上することを目的とする。
【課題を解決するための手段】
【0007】
(1) 本発明の表情認識方法は、撮影画像に含まれる顔の表情を認識する方法であって、少なくとも顔の凹凸情報、質感情報及び輪郭情報に関する特徴を有する学習用画像群を入力データとして、階層型ニューラルネットワークにパラメータを学習させる学習ステップと、前記撮影画像から少なくとも前記3種類の情報に関する特徴をそれぞれ抽出して複数の入力画像を生成し、生成した前記複数の入力画像を入力データとして、前記撮影画像に含まれる顔の表情を学習済みの前記階層型ニューラルネットワークに認識させる認識ステップと、を含む。
【0008】
本発明の表情認識方法によれば、学習ステップにおいて、階層型ニューラルネットワークのパラメータの学習に用いる入力データが、少なくとも顔の凹凸情報、質感情報及び輪郭情報に関する特徴を有する学習用画像群よりなる。
また、認識ステップにおいて、学習済みの階層型ニューラルネットワークによる表情認識のための入力データが、撮影画像から少なくとも上記3種類の情報に関する特徴をそれぞれ抽出して生成された複数の入力画像よりなる。
【0009】
このため、階層型ニューラルネットワークへの入力前に前処理を施さない、或いは、単一の特徴因子のみを抽出する前処理を施す従来技術に比べて、階層型ニューラルネットワークを用いた表情認識の精度を向上することができる(図8参照)。
【0010】
(2) 本発明の表情認識方法において、具体的には、前記階層型ニューラルネットワークは、畳み込みニューラルネットワークよりなる。
その理由は、畳み込みニューラルネットワークは、表情認識を含む画像認識に高い性能を実現できるからである。
【0011】
(3) 本発明の表情認識方法において、前記凹凸情報は、各画素点における画素値の勾配ベクトルの方向角度であり、前記質感情報は、各画素点における画素値の方向ベクトルのノルムであり、前記輪郭情報は、画素値が急峻に変化する画素点の位置情報であることが好ましい。
その理由は、上記の方向角度(A)、方向ベクトルのノルム(G)及び輪郭情報(E)は、既存のオープンソースソフトウェアにて演算可能であるから、これらのパラメータを採用すれば、本発明を比較的容易に実装可能となるからである。
【0012】
(4) 本発明の表情認識方法において、前記学習ステップは、具体的には、少なくとも前記3種類の情報に関する特徴を複数のサンプル画像からそれぞれ抽出することにより、前記学習用画像群を生成する生成ステップと、生成した前記学習用画像群を入力データとして前記階層型ニューラルネットワークが出力する認識結果に基づいて、当該ネットワークの前記パラメータを更新する更新ステップと、を含む。
【0013】
(5) この場合、前記生成ステップには、前記サンプル画像から抽出した顔画像に水平反射を施す処理が含まれることが好ましい。
このようにすれば、同じ枚数のサンプル画像から得られる学習用画像群の枚数を倍増させることができる。このため、ラベル付きのサンプル画像を収集する手間を省くことができる。更に深い原因として、画像処理によく用いられている深層学習識別器は、反転不変性を有していないという問題があった。このため,異なる方向の撮影条件において、同じの物体としても抽出の物体特徴が異同になり、認識精度の低下を招いていた。このため、顔の学習画像に水平反射処理を追加すると、認識精度は向上することができる。
【0014】
(6) 本発明の表情認識装置は、撮影画像に含まれる顔の表情を認識する装置であって、少なくとも顔の凹凸情報、質感情報及び輪郭情報に関する特徴を有する学習用画像群を入力データとしてパラメータを学習した、階層型ニューラルネットワークを有する処理部と、前記撮影画像から少なくとも前記3種類の情報に関する特徴をそれぞれ抽出して複数の入力画像を生成し、生成した前記複数の入力画像を前記処理部に入力する画像生成部と、前記複数の入力画像を入力データとして学習済みの前記階層型ニューラルネットワークが出力した認識結果を、前記撮影画像の顔の表情として外部に出力する出力部と、を備える。
【0015】
本発明の表情認識装置によれば、処理部が有する階層型ニューラルネットワークのパラメータの学習に用いる入力データが、少なくとも顔の凹凸情報、質感情報及び輪郭情報に関する特徴を有する学習用画像群よりなる。
また、画像生成部が生成する、学習済みの階層型ニューラルネットワークによる表情認識のための入力データが、撮影画像から少なくとも上記3種類の情報に関する特徴をそれぞれ抽出して生成された複数の入力画像よりなる。
【0016】
このため、階層型ニューラルネットワークへの入力前に前処理を施さない、或いは、単一の特徴因子のみを抽出する前処理を施す従来技術に比べて、階層型ニューラルネットワークを用いた表情認識の精度を向上することができる(図8参照)。
【0017】
(7) 本発明のコンピュータプログラムは、画像処理を実行可能なコンピュータ装置に、撮影画像に含まれる顔の表情を認識する処理を実行させるためのコンピュータプログラムであって、上述の(1)〜(5)の表情認識方法と同様のステップを含む。
従って、本発明のコンピュータプログラムは、上述の(1)〜(5)の表情認識方法と同様の作用効果を奏する。
【0018】
(8) 本発明の広告管理システムは、広告表示装置と、前記広告表示装置が表示する広告画像の視認者を撮影する撮影装置と、上述の表情認識装置を有する制御装置と、を備えており、前記制御装置は、前記撮影装置が撮影した前記視認者を含む撮影画像から当該視認者の表情を認識する認識処理と、前記表情の認識結果を集計する集計処理と、集計結果を広告の管理者に提示する提示処理と、を実行する。
【0019】
本発明の広告管理システムによれば、制御装置が、撮影装置が撮影した視認者を含む撮影画像から当該視認者の表情を認識する認識処理と、表情の認識結果を集計する集計処理と、集計結果を広告の管理者に提示する提示処理とを実行するので、管理者は、提示された集計結果から、現状の広告画像の有意性を検討することができる。
このため、現状の広告画像による広告の中止又は継続、或いは、現状の広告画像に改変を加えるなどの判断を、管理者が行えるようになる。
【0020】
本発明は、上記のような特徴的な構成を備えるシステム及び装置として実現できるだけでなく、かかる特徴的な構成をコンピュータに実行させるためのコンピュータプログラムとして実現することができる。
また、上記の本発明は、システム及び装置の一部又は全部を実現する、1又は複数の半導体集積回路として実現することができる。
【発明の効果】
【0021】
本発明によれば、階層型ニューラルネットワークを用いた表情認識の精度を向上することができる。
【図面の簡単な説明】
【0022】
図1】本発明の実施形態に係る画像処理装置のブロック図である。
図2】CNN処理部に含まれるCNNの概略構成図である。
図3】畳み込み層の処理内容の概念図である。
図4】受容野の構造の概念図である。
図5】画像生成部の処理内容の説明図である。
図6】画像処理装置を用いた表情認識方法の具体例を示す説明図である。
図7】CNN処理部に構築される深層CNNの構造図である。
図8】入力画像がAGE画像である場合の誤り率と、入力画像がRGB画像である場合の誤り率を比較したグラフである。
図9】本実施形態の広告管理システムの全体構成図である。
図10】表情認識の集計結果の一例を示す棒グラフである。
【発明を実施するための形態】
【0023】
以下、図面を参照して、本発明の実施形態の詳細を説明する。なお、以下に記載する実施形態の少なくとも一部を任意に組み合わせてもよい。
【0024】
〔画像処理装置の全体構成〕
図1は、本発明の実施形態に係る画像処理装置1のブロック図である。
図1に示すように、本実施形態の画像処理装置1は、例えば、図示しないPC(Personal Computer)に搭載されたGPU(Graphics Processing Unit)を含む。画像処理装置1は、PCのメモリに記録されたコンピュータプログラムにより実現される機能部として、画像生成部2、CNN処理部3、学習部4及び出力部5を備える。
【0025】
画像生成部2は、ラベル付きのサンプル画像7や認識対象である撮影画像8から所定の特徴を抽出する処理などを施して、CNN処理部3に対する入力画像(以下、「入力データ」ともいう。)を生成する。画像生成部2は、入力画像をCNN処理部3に入力する。
CNN処理部3は、入力データに対してCNNを利用した認識処理(本実施形態では顔画像の表情認識)を実行し、その認識結果(具体的には、分類クラスごとの確率など)を学習部4又は出力部5に入力する。
【0026】
具体的には、ラベル付きのサンプル画像7を用いてCNNを訓練する場合には、CNN処理部3は、認識結果を学習部4に入力する。
他方、学習済みのCNN処理部3が撮影画像8に含まれる顔画像の分類クラス(本実施形態では顔画像の表情の種別)を特定する場合、すなわち、画像処理装置1が表情識別器として動作する場合には、CNN処理部3は、認識結果を出力部5に入力する。
【0027】
学習部4は、入力された認識結果に基づいて、CNN処理部3が保持するパラメータ(重みやバイアス)を更新し、更新後のパラメータをCNN処理部3に記憶させる。
出力部5は、入力された認識結果に基づいて入力画像の分類クラスを特定する。具体的には、CNN処理部3から入力された最も高い確率の分類クラスを、入力画像の分類クラスとする。出力部5が出力する分類結果は、PCのディスプレイなどに表示されることにより、PCのオペレータに通知される。
【0028】
〔CNN処理部の処理内容〕
(CNNの構成例)
図2は、CNN処理部3に含まれるCNNの概略構成図である。
図2に示すように、CNN処理部3に構築されるCNNは、畳み込み層(「ダウンサンプリング層」ともいう。)C1,C2、プーリング層P1,P2及び全結合層Fの3つの演算処理層と、CNNの出力層である最終層Eとを備える。
【0029】
畳み込み層C1,C2の後にはプーリング層P1,P2が配置され、最後のプーリング層P2の後に全結合層Fが配置される。CNNの最終層Eには、予め設定された分類クラス数と同数(図2では10個)の最終ノードが含まれる。
図2では、畳み込み層C1,C2とこれに対応するプーリング層P1,P2が2つの場合を例示している。もっとも、畳み込み層とプーリング層は、3つ以上であってもよい。また、全結合層Fは少なくとも1つ配置される。
【0030】
ある層C1,P1,C2,P2におけるj番目のノードは、直前の層のm個のノードからそれぞれ入力x(i=1,2,……m)を受け取り、これらの重み付き和にバイアスを加算した中間変数uを計算する。すなわち、中間変数uは次式で計算される。なお、次式において、wijは重みであり、bはバイアスである。
【数1】
【0031】
非線形関数である活性化関数a(・)に中間変数uを適用した応答y、すなわち、y=a(u)がこの層のノードの出力となり、この出力は次の層に入力される。
活性化関数aには、「シグモイド関数」、或いは、a(x)=max(x,0)などが使用される。特に、後者の活性化関数は、「ReLU(Rectified Linear Unit)」と呼ばれる。ReLUは、収束性の良さや学習速度の向上などに貢献することから、近年よく使用される。
【0032】
CNNの出力層付近には、隣接層間のノードをすべて結合した全結合層Fが1層以上配置される。CNNの出力を与える最終層Eは、通常のニューラルネットワークと同様に設計される。
入力画像のクラス分類を目的とする場合は、分類クラス数と同数のノードが最終層Eに配置され、最終層Eの活性化関数aには「ソフトマックス関数」が用いられる。
【0033】
具体的には、n個のノードへの入力u(j=1,2,……n)をもとに、次式が算出される。認識時には、pが最大値をとるノードのインデックスj=argmaxが推定クラスとして選択される。
【数2】
【0034】
(畳み込み層の処理内容)
図3は、畳み込み層C1,C2の処理内容の概念図である。
図3に示すように、畳み込み層C1,C2の入力は、縦長のサイズがS×S画素のN枚(Nチャンネル)の形式となっている。
以下、この形式の画像をS×S×Nと記載する。また、S×S×Nの入力をxijk(ただし、(i,j,k)∈[0,S-1],[0,S-1],[1,N])と記載する。
【0035】
CNNにおいて、最初の入力層(畳み込み層C1)のチャンネル数は、入力画像がグレースケールならばN=1となり、カラーならばN=3(RGBの3チャンネル)となる。
畳み込み層C1,C2では、入力xijkにフィルタ(「カーネル」ともいう。)を畳み込む計算が実行される。
【0036】
この計算は、一般的な画像処理におけるフィルタの畳み込み、例えば、小サイズの画像を入力画像に2次元的に畳み込んで画像をぼかす処理(ガウシアンフィルタ)や、エッジを強調する処理(鮮鋭化フィルタ)と基本的に同様の処理である。
具体的には、各チャンネルk(k=1〜N)の入力xijkのサイズS×Sの画素に、L×Lのサイズの2次元フィルタを畳み込み、その結果を全チャンネルk=1〜Nにわたって加算する。この計算結果は、1チャンネルの画像uijの形式となる。
【0037】
フィルタをwijk(ただし、(i,j,k)∈[1,L-1],[1,L-1],[1,N])と定義すると、uijは次式で算出される。
【数3】
【0038】
ただし、Pijは、画像中の画素(i,j)を頂点とするサイズL×L画素の正方領域である。すなわち、Pijは、次式で定義される。
【数4】
【0039】
は、バイアスである。本実施形態では、バイアスは、チャンネルごとに全出力ノード間で共通とする。すなわち、bijk=bとする。
フィルタは、全画素ではなく複数画素の間隔で適用されることもある。すなわち、所定の画素数sについて、Pijを次式のように定義し、wp−i,q−j,kをwp−si,q−sj,kと置き換えてuijを計算してもよい。この画素間隔sを「スライド」という。
【数5】
【0040】
上記のように計算されたuijは、その後、活性化関数a(・)を経て、畳み込み層C1,C2の出力yijとなる。すなわち、yij=a(uij)となる。
これにより、1つのフィルタwijkにつき、入力xijkと縦横サイズが同じであるS×Sの1チャンネル分の出力yijが得られる。
【0041】
同様のフィルタをN’個用意して、それぞれ独立して上述の計算を実行すれば、N’チャンネル分のS×Sの出力、すなわち、S×S×N’サイズの出力yijk(ただし、(i,j,k)∈[1,S-1],[1,S-1],[1,N'])が得られる。
このN’チャンネル分の出力yijkは、次の層への入力xijkとなる。図3は、N’個あるフィルタのうちの1つに関する計算内容を示している。
【0042】
以上の計算は、例えば図4に示すように、特殊な形で層間ノードが結ばれた単層ネットワークとして表現できる。図4は、受容野の構造の概念図である。左側の図では受容野が矩形で表現され、右側の図では受容野がノードで表現されている。
具体的には、上位層の各ノードは下位層の各ノードの一部と結合している(これを「局所受容野」という。)。また、結合の重みは各ノード間で共通となっている(これを「重み共有」という。)。
【0043】
(プーリング層の処理内容)
図2に示す通り、プーリング層P1,P2は、畳み込み層C1,C2と対で存在する。従って、畳み込み層C1,C2の出力はプーリング層P1,P2への入力となり、プーリング層P1,P2の入力はS×S×Nの形式となる。
プーリング層P1,P2の目的は、画像のどの位置でフィルタの応答が強かったかという情報を一部捨てて、特徴の微少な変化に対する応答の不変性を実現することである。
【0044】
プーリング層P1,P2のノード(i,j)は、畳み込み層C1,C2と同様に、入力側の層に局所受容野Pi,jを有する。プーリング層P1,P2のノード(i,j)は、局所受容野Pi,jの内部のノード(p,q)∈Pi,jの出力yp,qを1つに集約する。
プーリング層P1,P2の局所受容野Pi,jのサイズは、畳み込み層C1,C2のそれ(フィルタサイズ)と無関係に設定される。
【0045】
入力が複数チャンネルの場合、チャンネルごとに上記の処理が行われる。すなわち、畳み込み層C1,C2とプーリング層P1,P2の出力チャンネル数は一致する。
プーリングは、画像の縦横(i,j)の方向に間引いて行われる。すなわち、2以上のストライドsが設定される。例えば、s=2とすると、出力の縦横サイズは入力の縦横サイズの半分となり、プーリング層の出力ノード数は、入力ノード数の1/s倍となる。
【0046】
受容野Pi,jの内部のノードからの入力を1つに纏めて集約する方法には、「平均プーリング」及び「最大プーリング」などがある。
平均プーリングは、次式の通り、Pi,jに属するノードからの入力xpqkの平均値を出力する方法である。
【数6】
【0047】
最大プーリングは、次式の通り、Pi,jに属するノードからの入力xpqkの最大値を出力する方法である。CNNの初期の研究では平均プーリングが主流であったが、現在では最大プーリングが一般的に採用される。
【数7】
【0048】
なお、畳み込み層C1,C2と異なり、プーリング層P1,P2では、学習によって変化する重みは存在せず、活性化関数も適用されない。
本実施形態のCNNにおいて、平均プーリング及び最大プーリングのいずれを採用してもよいが、図7に示すCNNの実装例では最大プーリングを採用している。
【0049】
〔学習部の処理内容〕
CNNの学習(training)では、「教師あり学習」が基本である。本実施形態においても、学習部4は教師あり学習を実行する。
具体的には、学習部4は、学習データとなる多数のラベル付きのサンプル画像を含む集合を対象として、各サンプル画像の分類誤差を最小化することにより実行される。以下、この処理について説明する。
【0050】
CNN処理部3の最終層Eの各ノードは、ソフトマックス関数による正規化(前述の〔数2〕)により、対応するクラスに対する確率p(j=1,2,……n)を出力する。この確率pは、学習部4に入力される。
学習部4は、入力された確率pから算出される分類誤差を最小化するように、CNN処理部3に設定された重みなどのパラメータを更新する。
【0051】
具体的には、学習部4は、入力サンプルに対する理想的な出力d1,d2,……dn(ラベル)と、出力p1.p2.……pnの乖離を、次式の交差エントロピーCによって算出する。この交差エントロピーCが分類誤差である。
【数8】
【0052】
目標出力d1,d2,……dnは、正解クラスjのみでd=1となり、それ以外のすべてのk(≠j)ではd=0となるように設定される。
学習部4は、上記の交差エントロピーCが小さくなるように、各畳み込み層C1,C2のフィルタの係数wijkと各ノードのバイアスb、及び、CNNの出力層側に配置された全結合層Fの重みとバイアスを調整する。
【0053】
分類誤差Cの最小化には、確率的勾配降下法が用いられる。学習部4は、重みやバイアスに関する誤差勾配(∂C/∂wij)を、誤差逆伝播法(BP法)により計算する。BP法による計算方法は、通常のニューラルネットワークの場合と同様である。
もっとも、CNN処理部3が最大プーリングを採用する場合の逆伝播では、学習サンプルに対する順伝播の際に、プーリング領域のどのノードの値を選んだかを記憶し、逆伝播時にそのノードのみと結合(重み1で結合)させる。
【0054】
学習部4による分類誤差Cの評価とこれに基づくパラメータ(重みなど)の更新は、全学習サンプルについて実行してもよい。しかし、収束性及び計算速度の観点から、数個から数百個程度のサンプルの集合(ミニバッチ)ごとに実行することが好ましい。この場合の重みwijの更新量Δwijは、次式で決定される。
【数9】
【0055】
上式において、Δwij(t)は今回の重み更新量であり、Δwij(t−1)は前回の重み更新量である。上式の第1項は、勾配降下法により誤差を削減するためのwijの修正量を表す項であり、εは学習率である。
上式の第2項は、モメンタム(momentum)である。モメンタムは、前回更新量のα(〜0.9)倍を加算することでミニパッチの選択による重みの偏りを抑える。第3項は、重み減衰(weight decay)である。重み減衰は、重みが過大にならないようにするパラメータである。なお、バイアスbの更新についても同様である。
【0056】
〔画像生成部の処理内容〕
図5は、画像生成部2の処理内容の説明図である。
図5に示すように、画像生成部2が実行する画像処理には、「顔抽出処理」及び「特徴抽出処理」の2つの処理が含まれる。
【0057】
顔抽出処理は、サンプル画像7又は撮影画像8(図1参照)などのソース画像から、大半が人間の顔部分である矩形画像(顔の原画像)をトリミングする処理である。
特徴抽出処理は、顔抽出処理で得られた矩形画像における所定の特徴を際立たせることにより、CNN処理部3に供給する入力画像を生成する処理である。
【0058】
本実施形態の特徴抽出処理では、矩形画像から「角度(Angle)」、「勾配(Gradient)」及び「輪郭(Edge)」の3種類の特徴を抽出した、合計3種類の入力画像群が生成される。以下、これらの3種類の入力画像を「AGE画像」ともいう。
ここで、矩形画像の画素点の2次元座標を(x,y)とし、各画素点(x,y)の画素値(例えばRGB値)を「I」とすると、角度A、勾配G及び輪郭Eの数学的な意味は、それぞれ以下の通りである。
【0059】
角度A:各画素点(x,y)における画素値Iの勾配ベクトル∇f=(∂I/∂x,∂I/∂y)の「方向角度」
勾配G:各画素点(x,y)における画素値Iの勾配ベクトル∇f=(∂I/∂x,∂I/∂y)の「ノルム」(長さ)
輪郭E:画素値Iが急峻に変化する画素点(x,y)の位置情報(エッジ画像)
【0060】
角度Aは、矩形画像に含まれる顔内部の凹凸などの地理的(Geometrical)な情報(以下、「凹凸情報」という。)を表す。
勾配Gは、矩形画像に含まれる顔内部の皮膚や毛髪などの質感(texture)に関する情報(以下、「質感情報」という。)を表す。
輪郭Eは、矩形画像に含まれる顔の頭部、目、口及び鼻などの各部分のアウトライン(以下、「輪郭情報」という。)を表す。
【0061】
各画素点(x,y)における3つの特徴量(角度A、勾配G及び輪郭E)の値を、それぞれv1,v2,v3とし、各画素点における矩形画像の画素値Iからv1,v2,v3を生成するためのフィルタを、それぞれDa,Dg,Deとすると、次式が成立する。
【数10】
【0062】
この場合、フィルタDa,Dgの計算式は、以下の通りである。
【数11】
【0063】
また、フィルタDeの計算式は、例えば以下の通りである。
【数12】
【0064】
なお、輪郭とその周囲の情報をはっきり区別するため、輪郭点(x,y)の周囲の各方向点の濃淡値(白黒値)を、次式で表される輪郭点(x,y)の角度値θに応じて調整することが望ましい。
【数13】
【0065】
例えば、θ(x,y)=0の場合、点(x,y)は縦方向の輪郭を有するので、その点から抽出された輪郭情報の右より、左の方を暗くすることにより、オブジェクトの輪郭をはっきりと表現できる。
上記の通り、各フィルタDa,Dg,Deは、各画素点(x,y)における角度A、勾配G及び輪郭Eの特徴をそれぞれ抽出したAGE画像としてもたらす。特徴抽出処理では、矩形画像のすべての画素点(x,y)を上記のフィルタで1回走査することにより、1枚の矩形画像から角度A、勾配G及び輪郭Eの情報を含む3つの入力画像が生成される。
【0066】
画像生成部2が実行するその他の画像処理には、顔抽出処理によってトリミングされた矩形画像のサイズを変更する処理や、矩形画像の水平反射(鏡映)を生成する処理などが含まれていてもよい。
【0067】
画像生成部2が実行する以上の画像処理は、「VLfeat」、「OpenCV」、「ImageStone」、「GIMP」及び「CxImage」などのオープンソースソフトウェアにより実行することができる。
フィルタDa,Dgは、VLfeatやOpenCVなどの偏微分フィルタにより求まるIx及びIyから算出することができる。また、フィルタDeは、OpenCVのゾーベルフィルタ、ラプラスフィルタ、キャニーフィルタなどを使用することができる。
【0068】
〔表情認識方法の具体例〕
図6は、画像処理装置1を用いた表情認識方法の具体例を示す説明図である。
図6に示すように、本実施形態の表情認識方法は、「学習ステップ」と「認識ステップ」の2つのステップに大別される。
学習ステップは、複数のサンプル画像7を用いて画像処理装置1のCNNを学習させるステップである。認識ステップは、学習済みのCNNを含むCNN処理部3に、撮影画像8に含まれる顔画像の表情を認識させるステップである。
【0069】
学習ステップでは、複数のサンプル画像7(ラベル付きの生画像)が、64×64のサイズの顔画像に変更(トリミング)される。図6中のNは、CNNにおける訓練のための画像枚数を表す。
次に、画像枚数をNからGに増やすために、N枚のサイズ64×64の画像に水平反射(鏡映)を掛け、それぞれサイズ56×56のパッチを抽出する。なお、G=2×Nである。
【0070】
次に、G枚のサイズ56×56のパッチから、顔の凹凸情報、質感情報及び輪郭情報をそれぞれ抽出した3種類の入力データ(本実施形態ではAGE画像群)が生成される。すなわち、G枚のパッチから、サイズ56×56でかつ3×G枚のAGE画像が生成される。以上の処理は、画像処理装置1の画像生成部2により実行される。
【0071】
サイズ56×56でかつ3×G枚のAGE画像(CNNにそれぞれ入力される学習用画像群)は、畳み込みネットワークを訓練するために、画像処理装置1のCNN処理部3に入力される。
この訓練において、学習部4は、CNN処理部3に対する重みやバイアスなどのパラメータを調整する。
【0072】
認識ステップでは、表情認識の対象となる撮影画像8(ラベル付なし生画像)が、サイズ56×56の顔画像に変更(トリミング)される。
次に、1枚のサイズ56×56の顔画像から、顔の凹凸情報、質感情報及び輪郭情報をそれぞれ抽出した3種類の入力データ(本実施形態ではAGE画像)が生成される。以上の処理は、画像処理装置1の画像生成部2により実行される。
【0073】
サイズ56×56でかつ3枚のAGE画像は、顔画像の表情認識のために、画像処理装置1のCNN処理部3に入力される。
この表情認識において、CNN処理部3は、学習済みのパラメータを有するCNNを用いて、入力されたAGE画像に対して予め設定された表情の分類クラスを特定する。特定された分類クラスは、出力部5に入力される。出力部5は、入力された分類クラスをPCのディスプレイなどに表示させる。
【0074】
〔推奨されるCNNの構造例〕
図7は、CNN処理部3に構築される深層CNNの構造図である。
図7に示すように、本願発明者らが推奨する、人間の表情認識のためのCNNのアーキテクチャは、入力ボリュームを出力ボリュームに変換する畳み込み層C1〜C4と、全結合層A1〜A3の積層体により構成されている。
【0075】
CNNの各層C1〜C4,A1〜A3は、幅、高さ及び奥行きの3次元的に配列されたニューロンを有する。
最初の入力層C1の幅、高さ及び奥行きのサイズは56×56×3が好ましい。畳み込み層C2〜C4及び全結合層A1の内部のニューロンは、1つ前の層の受容野と呼ばれる小領域のノードのみに接続されている。
【0076】
出力ボリュームの空間的な大きさは、次式で計算することができる。
W2=1+(W1−K+2P)/S
上式において、W1は、入力ボリュームのサイズである。Kは、畳み込み層のニューロンの核(ノード)のフィールドサイズである。Sはストライド、すなわち、カーネルマップにおける隣接するニューロンの受容野の中心間距離を意味する。Pは、ボーダー上で使用されるゼロパディングの量を意味する。
【0077】
図7のCNNでは、第1畳み込み層C1において、W1=56、K=5、S=2、P=2である。従って、第2畳み込み層C2の出力ボリュームの空間的な大きさは、W2=1+(56−5+2×2)/2=28.5→28となる。
図7のネットワークでは、重みを持つ7つの層を含む。最初の4つは畳み込み層C1〜C4であり、残りの3つは完全に接続された全結合層A1〜A3である。全結合層A1〜A3には、ドロップアウトが含まれる。
【0078】
最後の全結合層A3の出力は、この層A3と完全に接続された最終層である、7クラスラベルの分布を生成する7-way SOFTMAXに供給される。
畳み込み層C2〜C4と全結合層A1のニューロンは前の層の受容野に接続され、全結合層A2〜A3のニューロンは、前の層の全てのニューロンに接続されている。
【0079】
畳み込み層C1,C2の後にはバッチ正規化層が続く。各バッチ正規化層の後には、それぞれ前述の最大プーリングを実行するプーリング層が続く。
畳み込み層C1〜C4と全結合層A1〜A3のための非線形マッピング関数は、整流リニアユニット(ReLU)よりなる。
【0080】
第1畳み込み層C1は、サイズが5×5×3の64個のカーネルにより、2画素のストライドで56×56×3の入力画像(AGE画像)をフィルタリングする。
ストライド(歩幅)は、カーネルマップ内で隣接するニューロンの受容野の中心間の距離である。ストライドは、すべての畳み込み層において1ピクセルに設定されている。
【0081】
第2畳み込み層C2の入力は、バッチ正規化及び最大プールされた第1畳み込み層C1の出力である。第2畳込み層C2は、サイズが3×3×64である128のカーネルで入力をフィルタリングする。
第3畳み込み層C3は、サイズが3×3×64である128のカーネルを有し、これらは第2層C2(バッチ正規化とMAXプーリング)の出力に接続されている。
【0082】
第4畳み込み層C4は、サイズが3×3×128である128のカーネルを備えている。完全に接続された全結合層A1〜A3は、それぞれ1024のニューロンを備えている。
【0083】
〔推奨される学習例〕
本願発明者らは、図7の構造の深層CNNを実際に訓練(学習)させた。訓練に際しては、NVIDIA GTX745 4GBのGPUを実装するPCに対して、オープンソースの数値解析ソフトウェアである「MATLAB」を用いて行った。
CNNの学習ステップにおいては、重み減衰、モメンタム、バッチサイズ、学習率や学習サイクルを含むパラメータなどの重要な設定がある。以下、この点について説明する。
【0084】
本願発明者らによる訓練では、モメンタムが0.9であり、重み減衰が0.0005である非同期の確率的勾配降下法を採用した。次式は、今回採用した重みwの更新ルールである。
【数14】
【0085】
上式において、iは反復回数であり、mはモメンタム変数である。εは学習率を意味する。右辺の第3項は、wiにおいて誤差Lを削減するための重みwの修正量のi番目のバッチDiに関する平均値である。
バッチサイズの増加は、より信頼性の高い勾配推定値をもたらし、学習時間を短縮できるが、それでは最大の安定した学習率εの増加が得られない。そこで、CNNのモデルに適したバッチサイズを選択する必要がある。
【0086】
ここでは、畳み込み層C1〜C4について、それぞれ、64、128、256及び512のバッチサイズを採用した訓練(学習)の結果を比較した。その結果、図7のCNNでは、256のバッチサイズが最適であることが判明した。
また、すべての層に同等の学習率を使用し、訓練を通して手動で調整した。学習率は0.1に初期化し、エラーレートが現時点の学習率で改善を停止したときに、学習率を10で分割した。また、訓練に際しては、AGE画像よりなる入力画像を入力し、約20サイクルでネットワークを訓練した。
【0087】
〔実験例:AGE画像を入力画像とした場合の効果〕
本願発明者らは、図7のCNNについて、SFEW(Static Facial Expression in the Wild)のデータベースを使用して、AGE画像を入力画像とした場合の表情認識の精度を確認する実験を行った。
【0088】
入力画像であるSFEWには、「平静」、「喜び」、「怒り」、「驚き」、「不快」、「悲しみ」、「嫌」の7つの感情ラベルうちの1つが割り当てられている。
従って、学習済みのCNNが出力する感情ラベルも、上記の7種類のうちのいずれかである。
【0089】
図8は、入力画像がAGE画像である場合の誤り率と、入力画像がRGB画像である場合の誤り率を比較したグラフである。図8において、横軸は訓練のサイクル数であり、縦軸は各サイクルにおける誤り率を表す。
誤り率は、表情認識に失敗する確率のことを意味する。例えば、誤り率=0.6は、10人の表情認識を行った場合に、6人が失敗で4人が成功であることを意味する。現状の深層CNNによる表情認識では、誤り率が0.6程度のものしか存在しない。
【0090】
図8に示すように、入力画像がRGB画像である場合には、20サイクルの場合で誤り率が約0.65である。入力画像がAGE画像である場合には、10サイクル以上になると誤り率が0.6を下回っている。
図8のグラフから明らかな通り、深層CNNを用いた表情認識において、入力画像としてAGE画像を採用すれば、表情認識の識別力が向上し、従来の生データ(RGB画像)を入力画像とする場合に比べて、表情認識の性能が有意に改善される。
【0091】
〔画像処理装置の応用例〕
図9は、本実施形態の広告管理システム10の全体構成図である。
本実施形態の広告管理システム10は、撮影画像に含まれる顔画像の表情認識を実行可能な画像処理装置1(図1参照)を広告の評価に利用する管理システムである。
【0092】
図9に示すように、広告管理システム10は、広告表示装置11、撮影装置12、広告制御装置13及び管理装置14を備える。
広告表示装置11は、例えば、LED電光表示板、液晶ディスプレイなどよりなる。広告表示装置11は、広告制御装置13から受信した所定の広告画像を表示面に表示させる。広告画像は、静止画及び動画像のいずれでもよい。広告表示装置11は、広告用のポスターが貼り付けられる広告看板であってもよい。
【0093】
撮影装置12は、例えば、CCD(電荷結合素子)を利用してデジタル画像を生成するデジタルカメラよりなる。撮影装置12は、広告表示装置11の上端部などに取り付けられており、広告表示装置11の手前に立って広告を目視する人間(以下、「視認者」という。)を撮影する。
撮影装置12は、視認者の顔が含まれるデジタル画像よりなる撮影画像を、広告制御装置13に送信する。撮影画像は、静止画及び動画像のいずれでもよい。
【0094】
広告制御装置13は、広告表示装置11及び撮影装置12を制御するコンピュータ装置よりなる。広告制御装置13は、第1通信部16、第2通信部17、制御部18及び記憶部19を備える。
第1通信部16は、所定のI/Oインタフェース規格により、広告表示装置11及び撮影装置12と通信する通信装置よりなる。第1通信部16と広告表示装置11及び撮影装置12との通信は、有線通信及び無線通信のいずれであってもよい。
【0095】
第2通信部17は、有線又は無線LANなどの所定の通信規格により、管理装置14と通信する通信装置よりなる。
第2通信部17は、インターネットなどの公衆通信網を介して管理装置14と通信してもよいし(図9の場合)、構内通信網のみを経由して管理装置14と通信してもよいし、管理装置14と直接通信してもよい。第2通信部17と管理装置14との通信は、有線通信及び無線通信のいずれであってもよい。
【0096】
制御部18は、1又は複数のCPU(Central Processing Unit)と、上述の本実施形態のGPU(図1の画像処理装置1)を含む制御装置よりなる。
記憶部19は、1又は複数のRAM(Random Access Memory)及びROM(Read Only Memory)などのメモリを含む記憶装置よりなる。記憶部19は、制御部18に実行させる各種のコンピュータプログラムや、管理装置14などから受信した各種のデータの、一時的又は非一時的な記録媒体として機能する。
【0097】
このように、広告制御装置13は、コンピュータを備えて構成される。従って、広告制御装置13の各機能は、当該コンピュータの記憶装置に記憶されたコンピュータプログラムが前記コンピュータのCPU及びGPUによって実行されることで発揮される。
かかるコンピュータプログラムは、CD−ROMやUSBメモリなどの一時的又は非一時的な記録媒体に記憶させることができる。
【0098】
制御部18は、記憶部19に格納されたコンピュータプログラムを読み出して実行することにより、第1及び第2通信部16,17に対する通信制御や、管理装置14を運用する管理者にとって有用な種々のアプリケーションを実現できる。
例えば、制御部18は、管理装置14が自局宛に送信した広告画像を第2通信部17が受信すると、受信した広告画像を広告表示装置11に送信するように、第1通信部16を制御する。その後、広告表示装置11は、受信した広告画像を表示面に表示する。
【0099】
制御部18は、撮影装置12が送信した撮影画像を第1通信部16が受信すると、受信した撮影画像に含まれる顔画像に対して表情認識を実行し、表情の分類結果を管理装置14に送信するように第2通信部17を制御する。
記憶部19は、顔画像の表情認識を実行可能な所定構造のCNN(例えば図7)や、当該CNNに対する学習済みの重み及びバイアスなどを記憶している。制御部18のGPUは、記憶部19が記憶する学習済みのCNNにより、撮影画像に含まれる視認者の顔画像に対する表情認識を実行する。
【0100】
管理装置14は、広告の管理者が運用する、例えばサーバコンピュータ装置よりなる。図9の例では、1つの広告制御装置13のみが管理装置14に接続されているが、複数の広告制御装置13が管理装置14に接続されていてもよい。
管理装置14は、1又は複数の広告制御装置13に対する広告画像の配信処理を実行可能である。具体的には、管理装置14は、管理者が入力した広告画像を所定の広告表示装置10宛てに送信する。従って、広告表示装置11の広告画像は切り替え可能である。
【0101】
管理装置14は、1又は複数の広告制御装置13から受信した分類結果の集計処理を実行可能である。具体的には、管理装置14は、所定期間に広告制御装置13から受信した多数の分類結果を集計する。管理装置14は、集計結果をグラフ化又はテーブル化してディスプレイに表示することより、当該集計結果を管理者に提示する。
従って、管理者は、管理装置14が提示する集計結果に基づいて、広告画像の有意性の評価、広告画像の表示の継続又は中止、広告画像の改変などを判断できるようになる。
【0102】
図10は、表情認識の集計結果の一例を示す棒グラフである。
図10の棒グラフにおいて、横軸は、人間の表情に関する7種類(「平静」、「喜び」、「怒り」、「驚き」、「不快」、「悲しみ」、「嫌」)の分類クラスである。縦軸は、当該7種類の分類クラスの発生割合である。
【0103】
図10上段の棒グラフは、広告画像の「継続」に繋がる集計結果を示す。
この集計結果では、「喜び」の割合が他の分類クラスに比べて多くなっているので、多くの視認者が現状の広告画像を見て喜びを感じていると推定できる。
従って、図10上段の棒グラフのような集計結果が得られた場合には、管理者は、現状の広告画像による広告の継続を判断すべきと考えられる。
【0104】
図10下段の棒グラフは、広告画像の「中止」や「改変」に繋がる集計結果を示す。
この集計結果では、「不快」及び「嫌」の割合が他の分類クラスに比べて多くなっているので、多くの視認者が現状の広告画像を見て不快を感じていると推定できる。
従って、図10下段の棒グラフのような集計結果が得られた場合には、管理者は、現状の広告画像による広告の中止、或いは、現状の広告画像に改変を加えることを判断すべきと考えられる。
【0105】
図9の例では、広告制御装置13が表情認識を実行してその分類結果を管理装置14に送信し、管理装置14が分類結果を集計しているが、広告制御装置13が分類結果の集計を実行し、その集計結果を管理装置14に送信することにしてもよい。
また、広告制御装置13が撮影画像を管理装置14に転送し、管理装置14が撮影画像に含まれる顔画像の表情認識と、その分類及び集計を実行することにしてもよい。更に、広告制御装置13及び管理装置14は、1つのコンピュータ装置よりなる同じ筐体の制御装置で構成されていてもよい。
【0106】
上述の広告管理システム10により実現される広告管理方法の工程を列挙すると、次の通りである。
工程1) 所定の広告画像(静止画又は動画像)を広告表示装置11に表示する期間中に、当該広告表示装置11の前の視認者をカメラ12で撮影する。
【0107】
工程2) 撮影画像に含まれる顔画像の表情認識を、広告制御装置13及び管理装置14などのコンピュータ装置で実行し、その分類結果を集計する。具体的には、認識した顔画像の総数を分母とし、分類された各表情の割合を求める。
工程3) 集計結果に基づいて、現状の広告画像の継続、中止及び改変などを管理者が判断する。
【0108】
〔その他の変形例〕
今回開示した実施形態(変形例を含む。)はすべての点で例示であって制限的なものではない。本発明の権利範囲は、上述の実施形態に限定されるものではなく、特許請求の範囲に記載された構成と均等の範囲内でのすべての変更が含まれる。
例えば、上述の実施形態では、原画像から3種類の特徴を抽出することにより、3種類の入力画像(AGE画像)を生成しているが、当該3種類の特徴を含む4種類以上の特徴を抽出し、4種類以上の入力画像を生成することにしてもよい。
【0109】
上述の実施形態では、ニューラルネットワークが畳み込みニューラルネットワーク(CNN)よりなるが、畳み込み層を有しない他の構造の階層型ニューラルネットワークであってもよい。
上述の実施形態において、広告制御装置13の制御部18は、顔画像の表情認識を精度よく行えるものであれば、深層CNN以外のアルゴリズムで当該表情認識を実行するものであってもよい。
【符号の説明】
【0110】
1 画像処理装置
2 画像生成部
3 CNN処理部(処理部)
4 学習部
5 出力部
7 サンプル画像
8 撮影画像
10 広告管理システム
11 広告表示装置
12 撮影装置
13 広告制御装置(制御装置)
14 管理装置(制御装置)
16 第1通信部
17 第2通信部
18 制御部
19 記憶部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10