(57)【要約】【課題】  階層型ニューラルネットワークを用いた表情認識の精度を向上する。【解決手段】  本発明の一態様に係る表情認識方法は、撮影画像に含まれる顔の表情を認識する方法であって、少なくとも顔の凹凸情報（角度Ａ）、質感情報（勾配Ｇ）及び輪郭情報（輪郭Ｅ）に関する特徴を有する学習用画像群を入力データとして、階層型ニューラルネットワークにパラメータを学習させる学習ステップと、前記撮影画像から少なくとも前記３種類の情報に関する特徴をそれぞれ抽出して複数の入力画像を生成し、生成した前記複数の入力画像を入力データとして、前記撮影画像に含まれる顔の表情を学習済みの前記階層型ニューラルネットワークに認識させる認識ステップと、を含む。【選択図】      図６
2018055470.tif 000002
【特許請求の範囲】
【請求項１】
撮影画像に含まれる顔の表情を認識する方法であって、
少なくとも顔の凹凸情報、質感情報及び輪郭情報に関する特徴を有する学習用画像群を入力データとして、階層型ニューラルネットワークにパラメータを学習させる学習ステップと、
前記撮影画像から少なくとも前記３種類の情報に関する特徴をそれぞれ抽出して複数の入力画像を生成し、生成した前記複数の入力画像を入力データとして、前記撮影画像に含まれる顔の表情を学習済みの前記階層型ニューラルネットワークに認識させる認識ステップと、を含む表情認識方法。
【請求項２】
前記階層型ニューラルネットワークは、畳み込みニューラルネットワークである請求項１に記載の表情認識方法。
【請求項３】
前記凹凸情報は、各画素点における画素値の勾配ベクトルの方向角度であり、
前記質感情報は、各画素点における画素値の方向ベクトルのノルムであり、
前記輪郭情報は、画素値が急峻に変化する画素点の位置情報である請求項１又は請求項２に記載の表情認識方法。
【請求項４】
前記学習ステップは、少なくとも前記３種類の情報に関する特徴を複数のサンプル画像からそれぞれ抽出することにより、前記学習用画像群を生成する生成ステップと、
生成した前記学習用画像群を入力データとして前記階層型ニューラルネットワークが出力する認識結果に基づいて、当該ネットワークの前記パラメータを更新する更新ステップと、を含む請求項１〜請求項３のいずれか１項に記載の表情認識方法。
【請求項５】
前記生成ステップには、前記サンプル画像から抽出した顔画像に水平反射を施す処理が含まれる請求項４に記載の表情認識方法。
【請求項６】
撮影画像に含まれる顔の表情を認識する装置であって、
少なくとも顔の凹凸情報、質感情報及び輪郭情報に関する特徴を有する学習用画像群を入力データとしてパラメータを学習した、階層型ニューラルネットワークを有する処理部と、
前記撮影画像から少なくとも前記３種類の情報に関する特徴をそれぞれ抽出して複数の入力画像を生成し、生成した前記複数の入力画像を前記処理部に入力する画像生成部と、
前記複数の入力画像を入力データとして学習済みの前記階層型ニューラルネットワークが出力した認識結果を、前記撮影画像の顔の表情として外部に出力する出力部と、を備える表情認識装置。
【請求項７】
画像処理を実行可能なコンピュータ装置に、撮影画像に含まれる顔の表情を認識する処理を実行させるためのコンピュータプログラムであって、
少なくとも顔の凹凸情報、質感情報及び輪郭情報に関する特徴を有する学習用画像群を入力データとして、階層型ニューラルネットワークにパラメータを学習させる学習ステップと、
前記撮影画像から少なくとも前記３種類の情報に関する特徴をそれぞれ抽出して複数の入力画像を生成し、生成した前記複数の入力画像を入力データとして、前記撮影画像に含まれる顔の表情を学習済みの前記階層型ニューラルネットワークに認識させる認識ステップと、を含むコンピュータプログラム。
【請求項８】
広告表示装置と、
前記広告表示装置が表示する広告画像の視認者を撮影する撮影装置と、
請求項６に記載の表情認識装置を有する制御装置と、を備える広告管理システムであって、
前記制御装置は、前記撮影装置が撮影した前記視認者を含む撮影画像から当該視認者の表情を認識する認識処理と、前記表情の認識結果を集計する集計処理と、集計結果を広告の管理者に提示する提示処理と、を実行する広告管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表情認識方法、表情認識装置、コンピュータプログラム及び広告管理システムに関する。具体的には、階層型畳み込みニューラルネットワークを用いた表情認識の精度を改善する画像処理技術に関する。
【背景技術】
【０００２】
近年、深層学習（Deep Learning）による画像認識の性能が飛躍的に向上している。深層学習は、多層の階層型ニューラルネットワークを用いた機械学習の総称である。多層の階層型ニューラルネットワークとしては、例えば、畳み込みニューラルネットワーク（以下、「ＣＮＮ」ともいう。）が用いられる。
ＣＮＮは、局所領域の畳み込み層とプーリング層とが繰り返される多層の積層構造を有しており、かかる積層構造により画像認識の性能が向上するとされている。
【０００３】
非特許文献１に示すように、畳み込みニューラルネットワークを用いた深層学習により、幸福感、 驚き、 恐れ、 悲しみ、 怒り、 嫌悪などの普遍的な顔の表情のクラスを認識することも既に行われている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】「畳み込みニューラルネットワークを用いた表情表現の獲得」 西銘大喜  他４名  2016年度 人工知能学会全国大会 4L1-5in1  2016年6月9日一般発表
【発明の概要】
【発明が解決しようとする課題】
【０００５】
畳み込みニューラルネットワークを用いた表情認識では、顔の原画像に前処理を施すことなく、原画像の画素値（ＲＧＢ値）をそのままネットワークに入力するか、画素値に主成分分析（Principle Component Analysis）が行われる。
例えば、非特許文献１では、顔の原画像に対する前処理としてＧＣＮ（Global Contrast Normalization）が実行されている。
【０００６】
このように、従来では、原画像の画素値（生データ）をそのまま使用するか、原画像から単一の特徴因子を抽出する前処理を行うだけである。この点は、表情認識の高精度化を抑制する原因の１つであると考えられる。
本発明は、かかる従来の問題点に鑑み、階層型ニューラルネットワークを用いた表情認識の精度を向上することを目的とする。
【課題を解決するための手段】
【０００７】
（１）  本発明の表情認識方法は、撮影画像に含まれる顔の表情を認識する方法であって、少なくとも顔の凹凸情報、質感情報及び輪郭情報に関する特徴を有する学習用画像群を入力データとして、階層型ニューラルネットワークにパラメータを学習させる学習ステップと、前記撮影画像から少なくとも前記３種類の情報に関する特徴をそれぞれ抽出して複数の入力画像を生成し、生成した前記複数の入力画像を入力データとして、前記撮影画像に含まれる顔の表情を学習済みの前記階層型ニューラルネットワークに認識させる認識ステップと、を含む。
【０００８】
本発明の表情認識方法によれば、学習ステップにおいて、階層型ニューラルネットワークのパラメータの学習に用いる入力データが、少なくとも顔の凹凸情報、質感情報及び輪郭情報に関する特徴を有する学習用画像群よりなる。
また、認識ステップにおいて、学習済みの階層型ニューラルネットワークによる表情認識のための入力データが、撮影画像から少なくとも上記３種類の情報に関する特徴をそれぞれ抽出して生成された複数の入力画像よりなる。
【０００９】
このため、階層型ニューラルネットワークへの入力前に前処理を施さない、或いは、単一の特徴因子のみを抽出する前処理を施す従来技術に比べて、階層型ニューラルネットワークを用いた表情認識の精度を向上することができる（図８参照）。
【００１０】
（２）  本発明の表情認識方法において、具体的には、前記階層型ニューラルネットワークは、畳み込みニューラルネットワークよりなる。
その理由は、畳み込みニューラルネットワークは、表情認識を含む画像認識に高い性能を実現できるからである。
【００１１】
（３）  本発明の表情認識方法において、前記凹凸情報は、各画素点における画素値の勾配ベクトルの方向角度であり、前記質感情報は、各画素点における画素値の方向ベクトルのノルムであり、前記輪郭情報は、画素値が急峻に変化する画素点の位置情報であることが好ましい。
その理由は、上記の方向角度（Ａ）、方向ベクトルのノルム（Ｇ）及び輪郭情報（Ｅ）は、既存のオープンソースソフトウェアにて演算可能であるから、これらのパラメータを採用すれば、本発明を比較的容易に実装可能となるからである。
【００１２】
（４）  本発明の表情認識方法において、前記学習ステップは、具体的には、少なくとも前記３種類の情報に関する特徴を複数のサンプル画像からそれぞれ抽出することにより、前記学習用画像群を生成する生成ステップと、生成した前記学習用画像群を入力データとして前記階層型ニューラルネットワークが出力する認識結果に基づいて、当該ネットワークの前記パラメータを更新する更新ステップと、を含む。
【００１３】
（５）  この場合、前記生成ステップには、前記サンプル画像から抽出した顔画像に水平反射を施す処理が含まれることが好ましい。
このようにすれば、同じ枚数のサンプル画像から得られる学習用画像群の枚数を倍増させることができる。このため、ラベル付きのサンプル画像を収集する手間を省くことができる。更に深い原因として、画像処理によく用いられている深層学習識別器は、反転不変性を有していないという問題があった。このため，異なる方向の撮影条件において、同じの物体としても抽出の物体特徴が異同になり、認識精度の低下を招いていた。このため、顔の学習画像に水平反射処理を追加すると、認識精度は向上することができる。
【００１４】
（６）  本発明の表情認識装置は、撮影画像に含まれる顔の表情を認識する装置であって、少なくとも顔の凹凸情報、質感情報及び輪郭情報に関する特徴を有する学習用画像群を入力データとしてパラメータを学習した、階層型ニューラルネットワークを有する処理部と、前記撮影画像から少なくとも前記３種類の情報に関する特徴をそれぞれ抽出して複数の入力画像を生成し、生成した前記複数の入力画像を前記処理部に入力する画像生成部と、前記複数の入力画像を入力データとして学習済みの前記階層型ニューラルネットワークが出力した認識結果を、前記撮影画像の顔の表情として外部に出力する出力部と、を備える。
【００１５】
本発明の表情認識装置によれば、処理部が有する階層型ニューラルネットワークのパラメータの学習に用いる入力データが、少なくとも顔の凹凸情報、質感情報及び輪郭情報に関する特徴を有する学習用画像群よりなる。
また、画像生成部が生成する、学習済みの階層型ニューラルネットワークによる表情認識のための入力データが、撮影画像から少なくとも上記３種類の情報に関する特徴をそれぞれ抽出して生成された複数の入力画像よりなる。
【００１６】
このため、階層型ニューラルネットワークへの入力前に前処理を施さない、或いは、単一の特徴因子のみを抽出する前処理を施す従来技術に比べて、階層型ニューラルネットワークを用いた表情認識の精度を向上することができる（図８参照）。
【００１７】
（７）  本発明のコンピュータプログラムは、画像処理を実行可能なコンピュータ装置に、撮影画像に含まれる顔の表情を認識する処理を実行させるためのコンピュータプログラムであって、上述の（１）〜（５）の表情認識方法と同様のステップを含む。
従って、本発明のコンピュータプログラムは、上述の（１）〜（５）の表情認識方法と同様の作用効果を奏する。
【００１８】
（８）  本発明の広告管理システムは、広告表示装置と、前記広告表示装置が表示する広告画像の視認者を撮影する撮影装置と、上述の表情認識装置を有する制御装置と、を備えており、前記制御装置は、前記撮影装置が撮影した前記視認者を含む撮影画像から当該視認者の表情を認識する認識処理と、前記表情の認識結果を集計する集計処理と、集計結果を広告の管理者に提示する提示処理と、を実行する。
【００１９】
本発明の広告管理システムによれば、制御装置が、撮影装置が撮影した視認者を含む撮影画像から当該視認者の表情を認識する認識処理と、表情の認識結果を集計する集計処理と、集計結果を広告の管理者に提示する提示処理とを実行するので、管理者は、提示された集計結果から、現状の広告画像の有意性を検討することができる。
このため、現状の広告画像による広告の中止又は継続、或いは、現状の広告画像に改変を加えるなどの判断を、管理者が行えるようになる。
【００２０】
本発明は、上記のような特徴的な構成を備えるシステム及び装置として実現できるだけでなく、かかる特徴的な構成をコンピュータに実行させるためのコンピュータプログラムとして実現することができる。
また、上記の本発明は、システム及び装置の一部又は全部を実現する、１又は複数の半導体集積回路として実現することができる。
【発明の効果】
【００２１】
本発明によれば、階層型ニューラルネットワークを用いた表情認識の精度を向上することができる。
【図面の簡単な説明】
【００２２】
【図１】本発明の実施形態に係る画像処理装置のブロック図である。
【図２】ＣＮＮ処理部に含まれるＣＮＮの概略構成図である。
【図３】畳み込み層の処理内容の概念図である。
【図４】受容野の構造の概念図である。
【図５】画像生成部の処理内容の説明図である。
【図６】画像処理装置を用いた表情認識方法の具体例を示す説明図である。
【図７】ＣＮＮ処理部に構築される深層ＣＮＮの構造図である。
【図８】入力画像がＡＧＥ画像である場合の誤り率と、入力画像がＲＧＢ画像である場合の誤り率を比較したグラフである。
【図９】本実施形態の広告管理システムの全体構成図である。
【図１０】表情認識の集計結果の一例を示す棒グラフである。
【発明を実施するための形態】
【００２３】
以下、図面を参照して、本発明の実施形態の詳細を説明する。なお、以下に記載する実施形態の少なくとも一部を任意に組み合わせてもよい。
【００２４】
〔画像処理装置の全体構成〕
図１は、本発明の実施形態に係る画像処理装置１のブロック図である。
図１に示すように、本実施形態の画像処理装置１は、例えば、図示しないＰＣ（Personal Computer）に搭載されたＧＰＵ（Graphics Processing Unit）を含む。画像処理装置１は、ＰＣのメモリに記録されたコンピュータプログラムにより実現される機能部として、画像生成部２、ＣＮＮ処理部３、学習部４及び出力部５を備える。
【００２５】
画像生成部２は、ラベル付きのサンプル画像７や認識対象である撮影画像８から所定の特徴を抽出する処理などを施して、ＣＮＮ処理部３に対する入力画像（以下、「入力データ」ともいう。）を生成する。画像生成部２は、入力画像をＣＮＮ処理部３に入力する。
ＣＮＮ処理部３は、入力データに対してＣＮＮを利用した認識処理（本実施形態では顔画像の表情認識）を実行し、その認識結果（具体的には、分類クラスごとの確率など）を学習部４又は出力部５に入力する。
【００２６】
具体的には、ラベル付きのサンプル画像７を用いてＣＮＮを訓練する場合には、ＣＮＮ処理部３は、認識結果を学習部４に入力する。
他方、学習済みのＣＮＮ処理部３が撮影画像８に含まれる顔画像の分類クラス（本実施形態では顔画像の表情の種別）を特定する場合、すなわち、画像処理装置１が表情識別器として動作する場合には、ＣＮＮ処理部３は、認識結果を出力部５に入力する。
【００２７】
学習部４は、入力された認識結果に基づいて、ＣＮＮ処理部３が保持するパラメータ（重みやバイアス）を更新し、更新後のパラメータをＣＮＮ処理部３に記憶させる。
出力部５は、入力された認識結果に基づいて入力画像の分類クラスを特定する。具体的には、ＣＮＮ処理部３から入力された最も高い確率の分類クラスを、入力画像の分類クラスとする。出力部５が出力する分類結果は、ＰＣのディスプレイなどに表示されることにより、ＰＣのオペレータに通知される。
【００２８】
〔ＣＮＮ処理部の処理内容〕
（ＣＮＮの構成例）
図２は、ＣＮＮ処理部３に含まれるＣＮＮの概略構成図である。
図２に示すように、ＣＮＮ処理部３に構築されるＣＮＮは、畳み込み層（「ダウンサンプリング層」ともいう。）Ｃ１，Ｃ２、プーリング層Ｐ１，Ｐ２及び全結合層Ｆの３つの演算処理層と、ＣＮＮの出力層である最終層Ｅとを備える。
【００２９】
畳み込み層Ｃ１，Ｃ２の後にはプーリング層Ｐ１，Ｐ２が配置され、最後のプーリング層Ｐ２の後に全結合層Ｆが配置される。ＣＮＮの最終層Ｅには、予め設定された分類クラス数と同数（図２では１０個）の最終ノードが含まれる。
図２では、畳み込み層Ｃ１，Ｃ２とこれに対応するプーリング層Ｐ１，Ｐ２が２つの場合を例示している。もっとも、畳み込み層とプーリング層は、３つ以上であってもよい。また、全結合層Ｆは少なくとも１つ配置される。
【００３０】
ある層Ｃ１，Ｐ１，Ｃ２，Ｐ２におけるｊ番目のノードは、直前の層のｍ個のノードからそれぞれ入力ｘｉ（ｉ＝１，２，……ｍ）を受け取り、これらの重み付き和にバイアスを加算した中間変数ｕｊを計算する。すなわち、中間変数ｕｊは次式で計算される。なお、次式において、ｗｉｊは重みであり、ｂｊはバイアスである。
【数１】
2018055470.tif 000003
【００３１】
非線形関数である活性化関数ａ（・）に中間変数ｕｊを適用した応答ｙｊ、すなわち、ｙｊ＝ａ（ｕｊ）がこの層のノードの出力となり、この出力は次の層に入力される。
活性化関数ａには、「シグモイド関数」、或いは、ａ（ｘｊ）＝ｍａｘ（ｘｊ，０）などが使用される。特に、後者の活性化関数は、「ＲｅＬＵ（Rectified Linear Unit）」と呼ばれる。ＲｅＬＵは、収束性の良さや学習速度の向上などに貢献することから、近年よく使用される。
【００３２】
ＣＮＮの出力層付近には、隣接層間のノードをすべて結合した全結合層Ｆが１層以上配置される。ＣＮＮの出力を与える最終層Ｅは、通常のニューラルネットワークと同様に設計される。
入力画像のクラス分類を目的とする場合は、分類クラス数と同数のノードが最終層Ｅに配置され、最終層Ｅの活性化関数ａには「ソフトマックス関数」が用いられる。
【００３３】
具体的には、ｎ個のノードへの入力ｕｊ（ｊ＝１，２，……ｎ）をもとに、次式が算出される。認識時には、ｐｊが最大値をとるノードのインデックスｊ＝ａｒｇｍａｘｊｐｊが推定クラスとして選択される。
【数２】
2018055470.tif 000004
【００３４】
（畳み込み層の処理内容）
図３は、畳み込み層Ｃ１，Ｃ２の処理内容の概念図である。
図３に示すように、畳み込み層Ｃ１，Ｃ２の入力は、縦長のサイズがＳ×Ｓ画素のＮ枚（Ｎチャンネル）の形式となっている。
以下、この形式の画像をＳ×Ｓ×Ｎと記載する。また、Ｓ×Ｓ×Ｎの入力をｘｉｊｋ（ただし、(i,j,k）∈[0,S-1],[0,S-1],[1,N]）と記載する。
【００３５】
ＣＮＮにおいて、最初の入力層（畳み込み層Ｃ１）のチャンネル数は、入力画像がグレースケールならばＮ＝１となり、カラーならばＮ＝３（ＲＧＢの３チャンネル）となる。
畳み込み層Ｃ１，Ｃ２では、入力ｘｉｊｋにフィルタ（「カーネル」ともいう。）を畳み込む計算が実行される。
【００３６】
この計算は、一般的な画像処理におけるフィルタの畳み込み、例えば、小サイズの画像を入力画像に２次元的に畳み込んで画像をぼかす処理（ガウシアンフィルタ）や、エッジを強調する処理（鮮鋭化フィルタ）と基本的に同様の処理である。
具体的には、各チャンネルｋ（ｋ＝１〜Ｎ）の入力ｘｉｊｋのサイズＳ×Ｓの画素に、Ｌ×Ｌのサイズの２次元フィルタを畳み込み、その結果を全チャンネルｋ＝１〜Ｎにわたって加算する。この計算結果は、１チャンネルの画像ｕｉｊの形式となる。
【００３７】
フィルタをｗｉｊｋ（ただし、(i,j,k）∈[1,L-1],[1,L-1],[1,N]）と定義すると、ｕｉｊは次式で算出される。
【数３】
2018055470.tif 000005
【００３８】
ただし、Ｐｉｊは、画像中の画素（ｉ，ｊ）を頂点とするサイズＬ×Ｌ画素の正方領域である。すなわち、Ｐｉｊは、次式で定義される。
【数４】
2018055470.tif 000006
【００３９】
ｂｋは、バイアスである。本実施形態では、バイアスは、チャンネルごとに全出力ノード間で共通とする。すなわち、ｂｉｊｋ＝ｂｋとする。
フィルタは、全画素ではなく複数画素の間隔で適用されることもある。すなわち、所定の画素数ｓについて、Ｐｉｊを次式のように定義し、ｗｐ−ｉ，ｑ−ｊ，ｋをｗｐ−ｓｉ，ｑ−ｓｊ，ｋと置き換えてｕｉｊを計算してもよい。この画素間隔ｓを「スライド」という。
【数５】
2018055470.tif 000007
【００４０】
上記のように計算されたｕｉｊは、その後、活性化関数ａ（・）を経て、畳み込み層Ｃ１，Ｃ２の出力ｙｉｊとなる。すなわち、ｙｉｊ＝ａ（ｕｉｊ）となる。
これにより、１つのフィルタｗｉｊｋにつき、入力ｘｉｊｋと縦横サイズが同じであるＳ×Ｓの１チャンネル分の出力ｙｉｊが得られる。
【００４１】
同様のフィルタをＮ’個用意して、それぞれ独立して上述の計算を実行すれば、Ｎ’チャンネル分のＳ×Ｓの出力、すなわち、Ｓ×Ｓ×Ｎ’サイズの出力ｙｉｊｋ（ただし、(i,j,k）∈[1,S-1],[1,S-1],[1,N']）が得られる。
このＮ’チャンネル分の出力ｙｉｊｋは、次の層への入力ｘｉｊｋとなる。図３は、Ｎ’個あるフィルタのうちの１つに関する計算内容を示している。
【００４２】
以上の計算は、例えば図４に示すように、特殊な形で層間ノードが結ばれた単層ネットワークとして表現できる。図４は、受容野の構造の概念図である。左側の図では受容野が矩形で表現され、右側の図では受容野がノードで表現されている。
具体的には、上位層の各ノードは下位層の各ノードの一部と結合している（これを「局所受容野」という。）。また、結合の重みは各ノード間で共通となっている（これを「重み共有」という。）。
【００４３】
（プーリング層の処理内容）
図２に示す通り、プーリング層Ｐ１，Ｐ２は、畳み込み層Ｃ１，Ｃ２と対で存在する。従って、畳み込み層Ｃ１，Ｃ２の出力はプーリング層Ｐ１，Ｐ２への入力となり、プーリング層Ｐ１，Ｐ２の入力はＳ×Ｓ×Ｎの形式となる。
プーリング層Ｐ１，Ｐ２の目的は、画像のどの位置でフィルタの応答が強かったかという情報を一部捨てて、特徴の微少な変化に対する応答の不変性を実現することである。
【００４４】
プーリング層Ｐ１，Ｐ２のノード（ｉ，ｊ）は、畳み込み層Ｃ１，Ｃ２と同様に、入力側の層に局所受容野Ｐｉ，ｊを有する。プーリング層Ｐ１，Ｐ２のノード（ｉ，ｊ）は、局所受容野Ｐｉ，ｊの内部のノード（ｐ，ｑ）∈Ｐｉ，ｊの出力ｙｐ，ｑを１つに集約する。
プーリング層Ｐ１，Ｐ２の局所受容野Ｐｉ，ｊのサイズは、畳み込み層Ｃ１，Ｃ２のそれ（フィルタサイズ）と無関係に設定される。
【００４５】
入力が複数チャンネルの場合、チャンネルごとに上記の処理が行われる。すなわち、畳み込み層Ｃ１，Ｃ２とプーリング層Ｐ１，Ｐ２の出力チャンネル数は一致する。
プーリングは、画像の縦横（ｉ，ｊ）の方向に間引いて行われる。すなわち、２以上のストライドｓが設定される。例えば、ｓ＝２とすると、出力の縦横サイズは入力の縦横サイズの半分となり、プーリング層の出力ノード数は、入力ノード数の１／ｓ２倍となる。
【００４６】
受容野Ｐｉ，ｊの内部のノードからの入力を１つに纏めて集約する方法には、「平均プーリング」及び「最大プーリング」などがある。
平均プーリングは、次式の通り、Ｐｉ，ｊに属するノードからの入力ｘｐｑｋの平均値を出力する方法である。
【数６】
2018055470.tif 000008
【００４７】
最大プーリングは、次式の通り、Ｐｉ，ｊに属するノードからの入力ｘｐｑｋの最大値を出力する方法である。ＣＮＮの初期の研究では平均プーリングが主流であったが、現在では最大プーリングが一般的に採用される。
【数７】
2018055470.tif 000009
【００４８】
なお、畳み込み層Ｃ１，Ｃ２と異なり、プーリング層Ｐ１，Ｐ２では、学習によって変化する重みは存在せず、活性化関数も適用されない。
本実施形態のＣＮＮにおいて、平均プーリング及び最大プーリングのいずれを採用してもよいが、図７に示すＣＮＮの実装例では最大プーリングを採用している。
【００４９】
〔学習部の処理内容〕
ＣＮＮの学習（training）では、「教師あり学習」が基本である。本実施形態においても、学習部４は教師あり学習を実行する。
具体的には、学習部４は、学習データとなる多数のラベル付きのサンプル画像を含む集合を対象として、各サンプル画像の分類誤差を最小化することにより実行される。以下、この処理について説明する。
【００５０】
ＣＮＮ処理部３の最終層Ｅの各ノードは、ソフトマックス関数による正規化（前述の〔数２〕）により、対応するクラスに対する確率ｐｊ（ｊ＝１，２，……ｎ）を出力する。この確率ｐｊは、学習部４に入力される。
学習部４は、入力された確率ｐｊから算出される分類誤差を最小化するように、ＣＮＮ処理部３に設定された重みなどのパラメータを更新する。
【００５１】
具体的には、学習部４は、入力サンプルに対する理想的な出力ｄ１，ｄ２，……ｄｎ（ラベル）と、出力ｐ１．ｐ２．……ｐｎの乖離を、次式の交差エントロピーＣによって算出する。この交差エントロピーＣが分類誤差である。
【数８】
2018055470.tif 000010
【００５２】
目標出力ｄ１，ｄ２，……ｄｎは、正解クラスｊのみでｄｊ＝１となり、それ以外のすべてのｋ（≠ｊ）ではｄｋ＝０となるように設定される。
学習部４は、上記の交差エントロピーＣが小さくなるように、各畳み込み層Ｃ１，Ｃ２のフィルタの係数ｗｉｊｋと各ノードのバイアスｂｋ、及び、ＣＮＮの出力層側に配置された全結合層Ｆの重みとバイアスを調整する。
【００５３】
分類誤差Ｃの最小化には、確率的勾配降下法が用いられる。学習部４は、重みやバイアスに関する誤差勾配（∂Ｃ／∂ｗｉｊ）を、誤差逆伝播法（ＢＰ法）により計算する。ＢＰ法による計算方法は、通常のニューラルネットワークの場合と同様である。
もっとも、ＣＮＮ処理部３が最大プーリングを採用する場合の逆伝播では、学習サンプルに対する順伝播の際に、プーリング領域のどのノードの値を選んだかを記憶し、逆伝播時にそのノードのみと結合（重み１で結合）させる。
【００５４】
学習部４による分類誤差Ｃの評価とこれに基づくパラメータ（重みなど）の更新は、全学習サンプルについて実行してもよい。しかし、収束性及び計算速度の観点から、数個から数百個程度のサンプルの集合（ミニバッチ）ごとに実行することが好ましい。この場合の重みｗｉｊの更新量Δｗｉｊは、次式で決定される。
【数９】
2018055470.tif 000011
【００５５】
上式において、Δｗｉｊ（ｔ）は今回の重み更新量であり、Δｗｉｊ（ｔ−１）は前回の重み更新量である。上式の第１項は、勾配降下法により誤差を削減するためのｗｉｊの修正量を表す項であり、εは学習率である。
上式の第２項は、モメンタム（momentum）である。モメンタムは、前回更新量のα（〜０．９）倍を加算することでミニパッチの選択による重みの偏りを抑える。第３項は、重み減衰（weight decay）である。重み減衰は、重みが過大にならないようにするパラメータである。なお、バイアスｂｋの更新についても同様である。
【００５６】
〔画像生成部の処理内容〕
図５は、画像生成部２の処理内容の説明図である。
図５に示すように、画像生成部２が実行する画像処理には、「顔抽出処理」及び「特徴抽出処理」の２つの処理が含まれる。
【００５７】
顔抽出処理は、サンプル画像７又は撮影画像８（図１参照）などのソース画像から、大半が人間の顔部分である矩形画像（顔の原画像）をトリミングする処理である。
特徴抽出処理は、顔抽出処理で得られた矩形画像における所定の特徴を際立たせることにより、ＣＮＮ処理部３に供給する入力画像を生成する処理である。
【００５８】
本実施形態の特徴抽出処理では、矩形画像から「角度（Angle）」、「勾配（Gradient）」及び「輪郭（Edge）」の３種類の特徴を抽出した、合計３種類の入力画像群が生成される。以下、これらの３種類の入力画像を「ＡＧＥ画像」ともいう。
ここで、矩形画像の画素点の２次元座標を（ｘ，ｙ）とし、各画素点（ｘ，ｙ）の画素値（例えばＲＧＢ値）を「Ｉ」とすると、角度Ａ、勾配Ｇ及び輪郭Ｅの数学的な意味は、それぞれ以下の通りである。
【００５９】
角度Ａ：各画素点（ｘ，ｙ）における画素値Ｉの勾配ベクトル∇ｆ＝（∂I／∂ｘ，∂I／∂ｙ）の「方向角度」
勾配Ｇ：各画素点（ｘ，ｙ）における画素値Ｉの勾配ベクトル∇ｆ＝（∂I／∂ｘ，∂I／∂ｙ）の「ノルム」（長さ）
輪郭Ｅ：画素値Ｉが急峻に変化する画素点（ｘ，ｙ）の位置情報（エッジ画像）
【００６０】
角度Ａは、矩形画像に含まれる顔内部の凹凸などの地理的（Geometrical）な情報（以下、「凹凸情報」という。）を表す。
勾配Ｇは、矩形画像に含まれる顔内部の皮膚や毛髪などの質感（texture）に関する情報（以下、「質感情報」という。）を表す。
輪郭Ｅは、矩形画像に含まれる顔の頭部、目、口及び鼻などの各部分のアウトライン（以下、「輪郭情報」という。）を表す。
【００６１】
各画素点（ｘ，ｙ）における３つの特徴量（角度Ａ、勾配Ｇ及び輪郭Ｅ）の値を、それぞれｖ１，ｖ２，ｖ３とし、各画素点における矩形画像の画素値Ｉからｖ１，ｖ２，ｖ３を生成するためのフィルタを、それぞれＤａ，Ｄｇ，Ｄｅとすると、次式が成立する。
【数１０】
2018055470.tif 000012
【００６２】
この場合、フィルタＤａ，Ｄｇの計算式は、以下の通りである。
【数１１】
2018055470.tif 000013
【００６３】
また、フィルタＤｅの計算式は、例えば以下の通りである。
【数１２】
2018055470.tif 000014
【００６４】
なお、輪郭とその周囲の情報をはっきり区別するため、輪郭点（ｘ，ｙ）の周囲の各方向点の濃淡値（白黒値）を、次式で表される輪郭点（ｘ，ｙ）の角度値θｅに応じて調整することが望ましい。
【数１３】
2018055470.tif 000015
【００６５】
例えば、θｅ（ｘ，ｙ）＝０の場合、点（ｘ，ｙ）は縦方向の輪郭を有するので、その点から抽出された輪郭情報の右より、左の方を暗くすることにより、オブジェクトの輪郭をはっきりと表現できる。
上記の通り、各フィルタＤａ，Ｄｇ，Ｄｅは、各画素点（ｘ，ｙ）における角度Ａ、勾配Ｇ及び輪郭Ｅの特徴をそれぞれ抽出したＡＧＥ画像としてもたらす。特徴抽出処理では、矩形画像のすべての画素点（ｘ，ｙ）を上記のフィルタで１回走査することにより、１枚の矩形画像から角度Ａ、勾配Ｇ及び輪郭Ｅの情報を含む３つの入力画像が生成される。
【００６６】
画像生成部２が実行するその他の画像処理には、顔抽出処理によってトリミングされた矩形画像のサイズを変更する処理や、矩形画像の水平反射（鏡映）を生成する処理などが含まれていてもよい。
【００６７】
画像生成部２が実行する以上の画像処理は、「ＶＬｆｅａｔ」、「ＯｐｅｎＣＶ」、「ＩｍａｇｅＳｔｏｎｅ」、「ＧＩＭＰ」及び「ＣｘＩｍａｇｅ」などのオープンソースソフトウェアにより実行することができる。
フィルタＤａ，Ｄｇは、ＶＬｆｅａｔやＯｐｅｎＣＶなどの偏微分フィルタにより求まるＩｘ及びＩｙから算出することができる。また、フィルタＤｅは、ＯｐｅｎＣＶのゾーベルフィルタ、ラプラスフィルタ、キャニーフィルタなどを使用することができる。
【００６８】
〔表情認識方法の具体例〕
図６は、画像処理装置１を用いた表情認識方法の具体例を示す説明図である。
図６に示すように、本実施形態の表情認識方法は、「学習ステップ」と「認識ステップ」の２つのステップに大別される。
学習ステップは、複数のサンプル画像７を用いて画像処理装置１のＣＮＮを学習させるステップである。認識ステップは、学習済みのＣＮＮを含むＣＮＮ処理部３に、撮影画像８に含まれる顔画像の表情を認識させるステップである。
【００６９】
学習ステップでは、複数のサンプル画像７（ラベル付きの生画像）が、６４×６４のサイズの顔画像に変更（トリミング）される。図６中のＮは、ＣＮＮにおける訓練のための画像枚数を表す。
次に、画像枚数をＮからＧに増やすために、Ｎ枚のサイズ６４×６４の画像に水平反射（鏡映）を掛け、それぞれサイズ５６×５６のパッチを抽出する。なお、Ｇ＝２×Ｎである。
【００７０】
次に、Ｇ枚のサイズ５６×５６のパッチから、顔の凹凸情報、質感情報及び輪郭情報をそれぞれ抽出した３種類の入力データ（本実施形態ではＡＧＥ画像群）が生成される。すなわち、Ｇ枚のパッチから、サイズ５６×５６でかつ３×Ｇ枚のＡＧＥ画像が生成される。以上の処理は、画像処理装置１の画像生成部２により実行される。
【００７１】
サイズ５６×５６でかつ３×Ｇ枚のＡＧＥ画像（ＣＮＮにそれぞれ入力される学習用画像群）は、畳み込みネットワークを訓練するために、画像処理装置１のＣＮＮ処理部３に入力される。
この訓練において、学習部４は、ＣＮＮ処理部３に対する重みやバイアスなどのパラメータを調整する。
【００７２】
認識ステップでは、表情認識の対象となる撮影画像８（ラベル付なし生画像）が、サイズ５６×５６の顔画像に変更（トリミング）される。
次に、１枚のサイズ５６×５６の顔画像から、顔の凹凸情報、質感情報及び輪郭情報をそれぞれ抽出した３種類の入力データ（本実施形態ではＡＧＥ画像）が生成される。以上の処理は、画像処理装置１の画像生成部２により実行される。
【００７３】
サイズ５６×５６でかつ３枚のＡＧＥ画像は、顔画像の表情認識のために、画像処理装置１のＣＮＮ処理部３に入力される。
この表情認識において、ＣＮＮ処理部３は、学習済みのパラメータを有するＣＮＮを用いて、入力されたＡＧＥ画像に対して予め設定された表情の分類クラスを特定する。特定された分類クラスは、出力部５に入力される。出力部５は、入力された分類クラスをＰＣのディスプレイなどに表示させる。
【００７４】
〔推奨されるＣＮＮの構造例〕
図７は、ＣＮＮ処理部３に構築される深層ＣＮＮの構造図である。
図７に示すように、本願発明者らが推奨する、人間の表情認識のためのＣＮＮのアーキテクチャは、入力ボリュームを出力ボリュームに変換する畳み込み層Ｃ１〜Ｃ４と、全結合層Ａ１〜Ａ３の積層体により構成されている。
【００７５】
ＣＮＮの各層Ｃ１〜Ｃ４，Ａ１〜Ａ３は、幅、高さ及び奥行きの３次元的に配列されたニューロンを有する。
最初の入力層Ｃ１の幅、高さ及び奥行きのサイズは５６×５６×３が好ましい。畳み込み層Ｃ２〜Ｃ４及び全結合層Ａ１の内部のニューロンは、１つ前の層の受容野と呼ばれる小領域のノードのみに接続されている。
【００７６】
出力ボリュームの空間的な大きさは、次式で計算することができる。
Ｗ２＝１＋（Ｗ１−Ｋ＋２Ｐ）／Ｓ
上式において、Ｗ１は、入力ボリュームのサイズである。Ｋは、畳み込み層のニューロンの核（ノード）のフィールドサイズである。Ｓはストライド、すなわち、カーネルマップにおける隣接するニューロンの受容野の中心間距離を意味する。Ｐは、ボーダー上で使用されるゼロパディングの量を意味する。
【００７７】
図７のＣＮＮでは、第１畳み込み層Ｃ１において、Ｗ１＝５６、Ｋ＝５、Ｓ＝２、Ｐ＝２である。従って、第２畳み込み層Ｃ２の出力ボリュームの空間的な大きさは、Ｗ２＝１＋（５６−５＋２×２）／２＝２８．５→２８となる。
図７のネットワークでは、重みを持つ７つの層を含む。最初の４つは畳み込み層Ｃ１〜Ｃ４であり、残りの３つは完全に接続された全結合層Ａ１〜Ａ３である。全結合層Ａ１〜Ａ３には、ドロップアウトが含まれる。
【００７８】
最後の全結合層Ａ３の出力は、この層Ａ３と完全に接続された最終層である、７クラスラベルの分布を生成する7-way SOFTMAXに供給される。
畳み込み層Ｃ２〜Ｃ４と全結合層Ａ１のニューロンは前の層の受容野に接続され、全結合層Ａ２〜Ａ３のニューロンは、前の層の全てのニューロンに接続されている。
【００７９】
畳み込み層Ｃ１，Ｃ２の後にはバッチ正規化層が続く。各バッチ正規化層の後には、それぞれ前述の最大プーリングを実行するプーリング層が続く。
畳み込み層Ｃ１〜Ｃ４と全結合層Ａ１〜Ａ３のための非線形マッピング関数は、整流リニアユニット（ＲｅＬＵ）よりなる。
【００８０】
第１畳み込み層Ｃ１は、サイズが５×５×３の６４個のカーネルにより、２画素のストライドで５６×５６×３の入力画像（ＡＧＥ画像）をフィルタリングする。
ストライド（歩幅）は、カーネルマップ内で隣接するニューロンの受容野の中心間の距離である。ストライドは、すべての畳み込み層において１ピクセルに設定されている。
【００８１】
第２畳み込み層Ｃ２の入力は、バッチ正規化及び最大プールされた第１畳み込み層Ｃ１の出力である。第２畳込み層Ｃ２は、サイズが３×３×６４である１２８のカーネルで入力をフィルタリングする。
第３畳み込み層Ｃ３は、サイズが３×３×６４である１２８のカーネルを有し、これらは第２層Ｃ２（バッチ正規化とＭＡＸプーリング）の出力に接続されている。
【００８２】
第４畳み込み層Ｃ４は、サイズが３×３×１２８である１２８のカーネルを備えている。完全に接続された全結合層Ａ１〜Ａ３は、それぞれ１０２４のニューロンを備えている。
【００８３】
〔推奨される学習例〕
本願発明者らは、図７の構造の深層ＣＮＮを実際に訓練（学習）させた。訓練に際しては、NVIDIA GTX745 4GBのＧＰＵを実装するＰＣに対して、オープンソースの数値解析ソフトウェアである「ＭＡＴＬＡＢ」を用いて行った。
ＣＮＮの学習ステップにおいては、重み減衰、モメンタム、バッチサイズ、学習率や学習サイクルを含むパラメータなどの重要な設定がある。以下、この点について説明する。
【００８４】
本願発明者らによる訓練では、モメンタムが０．９であり、重み減衰が０．０００５である非同期の確率的勾配降下法を採用した。次式は、今回採用した重みｗの更新ルールである。
【数１４】
2018055470.tif 000016
【００８５】
上式において、ｉは反復回数であり、ｍはモメンタム変数である。εは学習率を意味する。右辺の第３項は、ｗｉにおいて誤差Ｌを削減するための重みｗの修正量のｉ番目のバッチＤｉに関する平均値である。
バッチサイズの増加は、より信頼性の高い勾配推定値をもたらし、学習時間を短縮できるが、それでは最大の安定した学習率εの増加が得られない。そこで、ＣＮＮのモデルに適したバッチサイズを選択する必要がある。
【００８６】
ここでは、畳み込み層Ｃ１〜Ｃ４について、それぞれ、６４、１２８、２５６及び５１２のバッチサイズを採用した訓練（学習）の結果を比較した。その結果、図７のＣＮＮでは、２５６のバッチサイズが最適であることが判明した。
また、すべての層に同等の学習率を使用し、訓練を通して手動で調整した。学習率は０．１に初期化し、エラーレートが現時点の学習率で改善を停止したときに、学習率を１０で分割した。また、訓練に際しては、ＡＧＥ画像よりなる入力画像を入力し、約２０サイクルでネットワークを訓練した。
【００８７】
〔実験例：ＡＧＥ画像を入力画像とした場合の効果〕
本願発明者らは、図７のＣＮＮについて、ＳＦＥＷ（Static Facial Expression in the Wild）のデータベースを使用して、ＡＧＥ画像を入力画像とした場合の表情認識の精度を確認する実験を行った。
【００８８】
入力画像であるＳＦＥＷには、「平静」、「喜び」、「怒り」、「驚き」、「不快」、「悲しみ」、「嫌」の７つの感情ラベルうちの１つが割り当てられている。
従って、学習済みのＣＮＮが出力する感情ラベルも、上記の７種類のうちのいずれかである。
【００８９】
図８は、入力画像がＡＧＥ画像である場合の誤り率と、入力画像がＲＧＢ画像である場合の誤り率を比較したグラフである。図８において、横軸は訓練のサイクル数であり、縦軸は各サイクルにおける誤り率を表す。
誤り率は、表情認識に失敗する確率のことを意味する。例えば、誤り率＝０．６は、１０人の表情認識を行った場合に、６人が失敗で４人が成功であることを意味する。現状の深層ＣＮＮによる表情認識では、誤り率が０．６程度のものしか存在しない。
【００９０】
図８に示すように、入力画像がＲＧＢ画像である場合には、２０サイクルの場合で誤り率が約０．６５である。入力画像がＡＧＥ画像である場合には、１０サイクル以上になると誤り率が０．６を下回っている。
図８のグラフから明らかな通り、深層ＣＮＮを用いた表情認識において、入力画像としてＡＧＥ画像を採用すれば、表情認識の識別力が向上し、従来の生データ（ＲＧＢ画像）を入力画像とする場合に比べて、表情認識の性能が有意に改善される。
【００９１】
〔画像処理装置の応用例〕
図９は、本実施形態の広告管理システム１０の全体構成図である。
本実施形態の広告管理システム１０は、撮影画像に含まれる顔画像の表情認識を実行可能な画像処理装置１（図１参照）を広告の評価に利用する管理システムである。
【００９２】
図９に示すように、広告管理システム１０は、広告表示装置１１、撮影装置１２、広告制御装置１３及び管理装置１４を備える。
広告表示装置１１は、例えば、ＬＥＤ電光表示板、液晶ディスプレイなどよりなる。広告表示装置１１は、広告制御装置１３から受信した所定の広告画像を表示面に表示させる。広告画像は、静止画及び動画像のいずれでもよい。広告表示装置１１は、広告用のポスターが貼り付けられる広告看板であってもよい。
【００９３】
撮影装置１２は、例えば、ＣＣＤ（電荷結合素子）を利用してデジタル画像を生成するデジタルカメラよりなる。撮影装置１２は、広告表示装置１１の上端部などに取り付けられており、広告表示装置１１の手前に立って広告を目視する人間（以下、「視認者」という。）を撮影する。
撮影装置１２は、視認者の顔が含まれるデジタル画像よりなる撮影画像を、広告制御装置１３に送信する。撮影画像は、静止画及び動画像のいずれでもよい。
【００９４】
広告制御装置１３は、広告表示装置１１及び撮影装置１２を制御するコンピュータ装置よりなる。広告制御装置１３は、第１通信部１６、第２通信部１７、制御部１８及び記憶部１９を備える。
第１通信部１６は、所定のＩ／Ｏインタフェース規格により、広告表示装置１１及び撮影装置１２と通信する通信装置よりなる。第１通信部１６と広告表示装置１１及び撮影装置１２との通信は、有線通信及び無線通信のいずれであってもよい。
【００９５】
第２通信部１７は、有線又は無線ＬＡＮなどの所定の通信規格により、管理装置１４と通信する通信装置よりなる。
第２通信部１７は、インターネットなどの公衆通信網を介して管理装置１４と通信してもよいし（図９の場合）、構内通信網のみを経由して管理装置１４と通信してもよいし、管理装置１４と直接通信してもよい。第２通信部１７と管理装置１４との通信は、有線通信及び無線通信のいずれであってもよい。
【００９６】
制御部１８は、１又は複数のＣＰＵ（Central Processing Unit）と、上述の本実施形態のＧＰＵ（図１の画像処理装置１）を含む制御装置よりなる。
記憶部１９は、１又は複数のＲＡＭ（Random Access Memory）及びＲＯＭ（Read Only Memory）などのメモリを含む記憶装置よりなる。記憶部１９は、制御部１８に実行させる各種のコンピュータプログラムや、管理装置１４などから受信した各種のデータの、一時的又は非一時的な記録媒体として機能する。
【００９７】
このように、広告制御装置１３は、コンピュータを備えて構成される。従って、広告制御装置１３の各機能は、当該コンピュータの記憶装置に記憶されたコンピュータプログラムが前記コンピュータのＣＰＵ及びＧＰＵによって実行されることで発揮される。
かかるコンピュータプログラムは、ＣＤ−ＲＯＭやＵＳＢメモリなどの一時的又は非一時的な記録媒体に記憶させることができる。
【００９８】
制御部１８は、記憶部１９に格納されたコンピュータプログラムを読み出して実行することにより、第１及び第２通信部１６，１７に対する通信制御や、管理装置１４を運用する管理者にとって有用な種々のアプリケーションを実現できる。
例えば、制御部１８は、管理装置１４が自局宛に送信した広告画像を第２通信部１７が受信すると、受信した広告画像を広告表示装置１１に送信するように、第１通信部１６を制御する。その後、広告表示装置１１は、受信した広告画像を表示面に表示する。
【００９９】
制御部１８は、撮影装置１２が送信した撮影画像を第１通信部１６が受信すると、受信した撮影画像に含まれる顔画像に対して表情認識を実行し、表情の分類結果を管理装置１４に送信するように第２通信部１７を制御する。
記憶部１９は、顔画像の表情認識を実行可能な所定構造のＣＮＮ（例えば図７）や、当該ＣＮＮに対する学習済みの重み及びバイアスなどを記憶している。制御部１８のＧＰＵは、記憶部１９が記憶する学習済みのＣＮＮにより、撮影画像に含まれる視認者の顔画像に対する表情認識を実行する。
【０１００】
管理装置１４は、広告の管理者が運用する、例えばサーバコンピュータ装置よりなる。図９の例では、１つの広告制御装置１３のみが管理装置１４に接続されているが、複数の広告制御装置１３が管理装置１４に接続されていてもよい。
管理装置１４は、１又は複数の広告制御装置１３に対する広告画像の配信処理を実行可能である。具体的には、管理装置１４は、管理者が入力した広告画像を所定の広告表示装置１０宛てに送信する。従って、広告表示装置１１の広告画像は切り替え可能である。
【０１０１】
管理装置１４は、１又は複数の広告制御装置１３から受信した分類結果の集計処理を実行可能である。具体的には、管理装置１４は、所定期間に広告制御装置１３から受信した多数の分類結果を集計する。管理装置１４は、集計結果をグラフ化又はテーブル化してディスプレイに表示することより、当該集計結果を管理者に提示する。
従って、管理者は、管理装置１４が提示する集計結果に基づいて、広告画像の有意性の評価、広告画像の表示の継続又は中止、広告画像の改変などを判断できるようになる。
【０１０２】
図１０は、表情認識の集計結果の一例を示す棒グラフである。
図１０の棒グラフにおいて、横軸は、人間の表情に関する７種類（「平静」、「喜び」、「怒り」、「驚き」、「不快」、「悲しみ」、「嫌」）の分類クラスである。縦軸は、当該７種類の分類クラスの発生割合である。
【０１０３】
図１０上段の棒グラフは、広告画像の「継続」に繋がる集計結果を示す。
この集計結果では、「喜び」の割合が他の分類クラスに比べて多くなっているので、多くの視認者が現状の広告画像を見て喜びを感じていると推定できる。
従って、図１０上段の棒グラフのような集計結果が得られた場合には、管理者は、現状の広告画像による広告の継続を判断すべきと考えられる。
【０１０４】
図１０下段の棒グラフは、広告画像の「中止」や「改変」に繋がる集計結果を示す。
この集計結果では、「不快」及び「嫌」の割合が他の分類クラスに比べて多くなっているので、多くの視認者が現状の広告画像を見て不快を感じていると推定できる。
従って、図１０下段の棒グラフのような集計結果が得られた場合には、管理者は、現状の広告画像による広告の中止、或いは、現状の広告画像に改変を加えることを判断すべきと考えられる。
【０１０５】
図９の例では、広告制御装置１３が表情認識を実行してその分類結果を管理装置１４に送信し、管理装置１４が分類結果を集計しているが、広告制御装置１３が分類結果の集計を実行し、その集計結果を管理装置１４に送信することにしてもよい。
また、広告制御装置１３が撮影画像を管理装置１４に転送し、管理装置１４が撮影画像に含まれる顔画像の表情認識と、その分類及び集計を実行することにしてもよい。更に、広告制御装置１３及び管理装置１４は、１つのコンピュータ装置よりなる同じ筐体の制御装置で構成されていてもよい。
【０１０６】
上述の広告管理システム１０により実現される広告管理方法の工程を列挙すると、次の通りである。
工程１）  所定の広告画像（静止画又は動画像）を広告表示装置１１に表示する期間中に、当該広告表示装置１１の前の視認者をカメラ１２で撮影する。
【０１０７】
工程２）  撮影画像に含まれる顔画像の表情認識を、広告制御装置１３及び管理装置１４などのコンピュータ装置で実行し、その分類結果を集計する。具体的には、認識した顔画像の総数を分母とし、分類された各表情の割合を求める。
工程３）  集計結果に基づいて、現状の広告画像の継続、中止及び改変などを管理者が判断する。
【０１０８】
〔その他の変形例〕
今回開示した実施形態（変形例を含む。）はすべての点で例示であって制限的なものではない。本発明の権利範囲は、上述の実施形態に限定されるものではなく、特許請求の範囲に記載された構成と均等の範囲内でのすべての変更が含まれる。
例えば、上述の実施形態では、原画像から３種類の特徴を抽出することにより、３種類の入力画像（ＡＧＥ画像）を生成しているが、当該３種類の特徴を含む４種類以上の特徴を抽出し、４種類以上の入力画像を生成することにしてもよい。
【０１０９】
上述の実施形態では、ニューラルネットワークが畳み込みニューラルネットワーク（ＣＮＮ）よりなるが、畳み込み層を有しない他の構造の階層型ニューラルネットワークであってもよい。
上述の実施形態において、広告制御装置１３の制御部１８は、顔画像の表情認識を精度よく行えるものであれば、深層ＣＮＮ以外のアルゴリズムで当該表情認識を実行するものであってもよい。
【符号の説明】
【０１１０】
１  画像処理装置
２  画像生成部
３  ＣＮＮ処理部（処理部）
４  学習部
５  出力部
７  サンプル画像
８  撮影画像
１０  広告管理システム
１１  広告表示装置
１２  撮影装置
１３  広告制御装置（制御装置）
１４  管理装置（制御装置）
１６  第１通信部
１７  第２通信部
１８  制御部
１９  記憶部
【図１】
2018055470.tif 000017
【図２】
2018055470.tif 000018
【図３】
2018055470.tif 000019
【図４】
2018055470.tif 000020
【図５】
2018055470.tif 000021
【図６】
2018055470.tif 000022
【図７】
2018055470.tif 000023
【図８】
2018055470.tif 000024
【図９】
2018055470.tif 000025
【図１０】
2018055470.tif 000026