以下、本発明の各実施の形態について、図面を参照して詳細に説明する。
(実施の形態1)
本発明の実施の形態1は、本発明の基本的態様の一例である。
図1は、本実施の形態に係るメイクアップ支援システムの構成の一例を示すブロック図である。
図1において、メイクアップ支援システム100は、第1〜第N(Nは2以上の整数)の端末2001〜200Nと、通信ネットワーク300を介して第1〜第Nの端末2001〜200Nのそれぞれと通信可能なサーバ(本発明に係るメイクアップ支援装置)400とを有する。
サーバ400は、メイク収集部420、メイク分析部440、およびメイク提示部460を有する。
メイク収集部420は、第1〜第Nの端末2001〜200Nのユーザ(複数の人)のそれぞれから、当該ユーザ(人)がメイクアップにおける実施の対象として選択したメイクを示す実施メイク情報を収集する。より具体的には、メイク収集部420は、第1〜第Nの端末2001〜200Nのそれぞれから送られてきた実施メイク情報を、蓄積する。
メイク分析部440は、収集された実施メイク情報を分析し、ユーザに対して提示すべきメイクの選択基準を決定する。より具体的には、メイク分析部440は、蓄積された実施メイク情報を分析し、メイクアップの支援を受けるユーザに対して提示すべきメイクの選択基準を決定する。
メイク提示部460は、決定された選択基準に基づいてメイクを選択し、選択されたメイクを示す提案メイク情報を、メイクアップの支援を受けるユーザに対して提示する。
なお、メイクアップの支援を受けるユーザは、第1〜第Nの端末2001〜200Nのユーザであってもよいし、第1〜第Nの端末2001〜200Nのユーザ以外のユーザであってもよい。メイクアップの支援を受けるユーザが第1〜第Nの端末2001〜200Nのユーザである場合、提案メイク情報は、通信ネットワーク300を介して、当該ユーザに提示される。
サーバ400は、図示しないが、例えば、CPU(Central Processing Unit)、制御プログラムを格納したROM(Read Only Memory)等の記憶媒体、RAM(Random Access Memory)等の作業用メモリ、および通信回路を有する。この場合、上記した各部の機能は、CPUが制御プログラムを実行することにより実現される。
このようなメイクアップ支援システム100は、サーバ400において、複数のユーザから実施メイク情報を収集し、収集された情報を分析して、ユーザに対して提示すべきメイクの選択基準を決定することができる。流行のメイクは、より多くの人々に実際に実施されているメイクである場合が多い。したがって、メイクアップ支援システム100は、メイクの流行が時間と共に変化する場合でも、実際に流行しているメイクを推定してこれを選択することができ、メイクアップの支援を適切に行うことができる。
(実施の形態2)
本発明の実施の形態2は、本発明の具体的態様の一例である。本実施の形態は、本発明を、デジタルカメラおよびディスプレイをそれぞれ備えた複数の端末と、これら複数の端末と通信可能なサーバとを有するシステムに、適用した例である。
<用語の説明>
まず、本実施の形態において用いられる用語について説明する。
「顔部品」とは、目、眉、鼻、頬(ほお)骨、唇、輪郭等、顔の印象を特徴付ける部分を指すものとする。
「顔部品ID」とは、顔部品の識別情報である。
「顔部品の領域」とは、画像上あるいは実空間上で、顔部品が占める領域を指すものとし、目尻等、顔部品の特徴点の位置を含むものとする。
「顔特徴量」とは、顔の特徴を示す所定のパラメータの値である。ここでは、顔の幅に対する顔の長さの比、両目の間の間隔に対する鼻の長さの比、および、顔の幅に対する目の幅の比等の、複数の値から成る多変量データであるものとする。
「メイク」とは、メイクアップの仕方(種類)を示し、肌用化粧剤の色、塗布濃度、および塗布範囲を少なくとも含むものとする。
「メイクパターン」とは、顔全体に対するメイクのパターンであり、1つの所定のパラメータの値または複数の所定のパラメータの値の組み合わせにより、定義されるものとする。
「メイクパターンID」とは、予め用意された複数のメイクパターンの、識別情報である。
「実施メイク情報」とは、メイクアップにおける実施の対象として選択されたメイクを示す情報であり、メイクパターンIDにより特定可能な情報である。
「提案メイク情報」とは、メイクアップの支援を受けるユーザに対して提示すべきメイクとして選択されたメイクを示す情報であり、メイクパターンIDにより特定可能な情報である。
「化粧品情報」とは、メイクを適用するための肌用化粧品に関する情報である。
「化粧品ID」とは、肌用化粧品の識別情報であり、化粧品情報を特定可能な情報である。
「端末ID」とは、端末の識別情報であり、通信を行うためのアドレスを少なくとも特定可能な情報である。
「人ID」とは、メイクアップ支援を受けるユーザの識別情報である。
<メイクアップ支援システムの構成>
次に、本実施の形態に係るメイクアップ支援システムの構成について説明する。
図2は、本実施の形態に係るメイクアップ支援システムの構成の一例を示すシステム構成図である。
図2において、メイクアップ支援システム100は、第1〜第Nの端末2001〜200N(本発明に係る端末)、通信ネットワーク300、およびサーバ(本発明に係るメイクアップ支援装置)400を有する。
第1〜第Nの端末2001〜200Nは、例えば、スマートフォン等の、デジタルカメラおよびディスプレイを備えた情報通信端末である。第1〜第Nの端末2001〜200Nは、それぞれ異なるユーザが使用しているものとする。
通信ネットワーク300は、例えば、インターネット等の公衆通信網である。
サーバ400は、通信ネットワーク300を介して、第1〜第Nの端末2001〜200Nのそれぞれと通信可能な情報処理装置である。サーバ400は、第1〜第Nの端末2001〜200Nのユーザに対するメイクアップの支援を行う。
なお、第1〜第Nの端末2001〜200Nは、同一の構成を有するものとする。このため、第1〜第Nの端末2001〜200Nは、適宜、「端末200」と総称する。
<端末の構成>
次に、端末200の構成について説明する。
図3は、端末200の構成の一例を示すブロック図である。
図3において、端末200は、端末通信部210、実施メイク取得部220、撮影部230、画像取得部240、顔部品取得部250、メイク報告部260、提案メイク取得部270、端末メイク提示部280、および表示部290を有する。
端末通信部210は、通信ネットワーク300に接続し、通信ネットワーク300を介して、サーバ400との間で通信を行う。
実施メイク取得部220は、端末200のユーザがメイクアップにおける実施の対象として選択したメイクを示す、実施メイク情報を取得する。そして、実施メイク取得部220は、取得した実施メイク情報を、メイク報告部260へ出力する。
本実施の形態において、実施メイク取得部220は、例えば、後述のメイクパターンテーブルにより予め用意された複数のメイクパターンを、選択肢としてユーザに提示するものとする。そして、実施メイク取得部220は、ユーザが実際にメイクアップを実施したメイクパターンの選択を、ユーザから受け付けるものとする。メイクパターンの選択の受け付けは、例えば、タッチパネル付きディスプレイを介して行われる。
撮影部230は、例えば、デジタルスチルカメラであり、端末200のユーザの顔の画像を撮影する。そして、撮影部230は、撮影した画像を、画像取得部240へ出力する。
画像取得部240は、入力された画像を取得し、顔部品取得部250および端末メイク提示部280へ出力する。
顔部品取得部250は、入力された画像から、顔の顔部品の領域を取得する。顔部品の領域の取得は、例えば、画像の各部分領域と、予め用意された各顔部品のテンプレート画像とのマッチングにより行われる(例えば、特許文献2参照)。そして、顔部品取得部250は、取得した顔部品の識別情報および領域を示す情報(以下「顔部品情報」という)を、提案メイク取得部270へ出力する。
また、顔部品取得部250は、顔の特徴を示す値である顔特徴量を取得し、取得した顔特徴量を、メイク報告部260へ出力する。なお、顔部品取得部250は、顔特徴量を、顔部品情報から取得してもよいし、画像を別途解析することにより取得してもよい。
メイク報告部260は、入力された実施メイク情報と、入力された顔特徴量と、端末200のユーザの人IDと、端末200の端末IDとを、組にする。以下、これらの情報の組は、「ユーザ情報」という。そして、メイク報告部260は、ユーザ情報を含む実施メイクメッセージを、端末通信部210を介してサーバ400へ送信する。
なお、本実施の形態において、メイクアップの支援を受けるユーザは、実施メイクメッセージを送信した端末200のユーザとする。すなわち、ユーザ情報のサーバ400への送信は、提案メイク情報の返信の要求を兼ねるものとする。
提案メイク取得部270は、サーバ400から、提案メイク情報が送られてきたとき、端末通信部210を介してこれを受信する。また、提案メイク取得部270は、受信した提案メイク情報が示すメイクを適用するのに必要な化粧品の化粧品情報を、取得する。この化粧品情報の取得は、例えば、後述の化粧品テーブルを用いて行われる。そして、提案メイク取得部270は、顔部品取得部250から入力された顔部品情報と、受信した提案メイク情報と、取得した化粧品情報とを、端末メイク提示部280へ出力する。
端末メイク提示部280は、提案メイク情報が示すメイクを、対応する顔部品の領域に対応付けてユーザに提示する。より具体的には、端末メイク提示部280は、入力された画像および提案メイク情報に基づいて、シミュレーション画像を生成し、生成したシミュレーション画像を、表示部290に出力する。ここで、シミュレーション画像は、入力(撮影)された画像に、提案メイク情報が示すメイクを適用したときの画像を、重畳して得られる画像である。
なお、画像の重畳は、例えば、アルファ(α)ブレンド処理等の公知の画像合成処理により行われる。この場合、アルファ値(α)は、メイクの濃度に応じた値に設定される。アルファブレンド処理は、例えば、以下の式(1)〜(3)で表される。ここで、r1、g1、b1は、撮影された画像の任意の領域のRGB値であり、r2、g2、b2は、メイクの色のRGB値である。そして、R、G、Bは、シミュレーション画像の対応する領域のRGB値である。
R = r2×α+r1×(1−α) ・・・(1)
G = g2×α+g1×(1−α) ・・・(2)
B = b2×α+b1×(1−α) ・・・(3)
また、メイクのそれぞれに、顔に重ねて塗布する場合の順序(以下「塗布順序」という)が設定されており、かつ、メイクを適用したときの画像が、濃度に応じた密度の網掛け画像であったとする。塗布順序は、例えば、チークの塗布が、ファンデーションの塗布の後にすべきものであるということを規定する。この場合、画像の重畳は、撮影された画像に対して、各メイクの画像を、塗布順序に応じた順序で上塗り処理することにより、行われてもよい。
また、端末メイク提示部280は、入力された化粧品情報を、更に提示する。より具体的には、端末メイク提示部280は、上記シミュレーション画像に、入力された化粧品情報を示す画像あるいはテキストを、重畳あるいは追加する。
表示部290は、例えば、タッチパネル付きディスプレイであり、端末200のユーザに対して、入力されたシミュレーション画像および化粧品情報を表示(提示)する。
なお、端末200は、図示しないが、例えば、CPU、制御プログラムを格納したROM等の記憶媒体、RAM等の作業用メモリ、および通信回路を有する。この場合、上記した各部の機能は、CPUが制御プログラムを実行することにより実現される。
<サーバの構成>
次に、サーバ400の構成について説明する。
図4は、サーバ400の構成の一例を示すブロック図である。
図4において、サーバ400は、サーバ通信部410、メイク収集部420、メイク蓄積部430、メイク分析部440、分析結果格納部450、およびメイク提示部460を有する。
サーバ通信部410は、通信ネットワーク300に接続し、通信ネットワーク300を介して第1〜第Nの端末2001〜200Nのそれぞれとの間で通信を行う。
メイク収集部420は、第1〜第Nの端末2001〜200Nの複数のユーザのそれぞれから、サーバ通信部410を介して、実施メイク情報を収集する。より具体的には、メイク収集部420は、いずれかの端末200から実施メイクメッセージが送られてきたとき、当該実施メイクメッセージを受信する。そして、メイク収集部420は、受信した実施メイクメッセージに含まれるユーザ情報を、その受信時間(時刻)と対応付けて、メイク蓄積430に格納する。
また、上述の通り、端末200からのユーザ情報の受信は、提案メイク情報の返信が要求されていることを示す。したがって、メイク収集部420は、受信したユーザ情報のうち、少なくとも顔特徴量および端末IDを、メイク提示部460へ出力する。
メイク蓄積部430は、メイク収集部420により格納(入力)されたユーザ情報を蓄積する。
メイク分析部440は、メイク蓄積部430に蓄積されたユーザ情報を分析し、メイクアップの支援を受けるユーザに対して提示すべきメイクの選択基準を決定する。より具体的には、メイク分析部440は、実施メイク情報と顔特徴量との組み合わせに基づき、顔特徴量のグループ毎に、流行のメイクを推定する。そして、メイク分析部440は、推定した流行のメイクが選択されるような選択基準を決定する。分析手法の詳細については、後述する。
なお、メイク分析部440は、十分な量のユーザ情報(実施メイク情報)が蓄積されるまでの間は、メイクの分析を行わないものとする。
分析結果格納部450は、上記分析の結果(選択基準)を示すメイク分析結果テーブルを格納する。メイク分析結果テーブルは、上記複数のユーザから受信し得る顔特徴量と、その顔特徴量を有する顔のユーザに対して提案すべき、流行のメイクのメイクパターンIDとを、予め対応付けて登録したテーブルである。
なお、分析結果格納部450には、少なくともメイクの分析が最初に行われるまでの間、提示メイク情報の初期の選択基準を示すメイク分析結果テーブルが、予め格納されているものとする。
メイク提示部460は、決定された選択基準に基づいてメイクを選択し、選択されたメイクを示す提案メイク情報を、ユーザに対して提示する。より具体的には、メイク提示部460は、分析結果格納部450のメイク分析結果テーブルを参照して、メイク取集部420から入力された顔特徴量に対応する流行のメイクを選択する。そして、メイク提示部460は、選択したメイクを示す提案メイク情報を、サーバ通信部410を介して、メイク取集部420から入力された端末IDが示す端末200へ送信する。
なお、上述の通り、メイク分析結果テーブルには、顔特徴量のグループ毎に、流行のメイクが、そのグループに属する顔特徴量の顔に適したメイクとして、登録されている。したがって、メイク提示部460は、入力された顔特徴量が、メイク分析結果テーブルに登録されたグループのいずれに属するかを判定し、判定されたグループに対応するメイクを選択する。この判定は、例えば、取得された顔特徴量と各グループの代表値(セントロイド)との距離を算出することにより行われる。
なお、サーバ400は、図示しないが、例えば、CPU、制御プログラムを格納したROM等の記憶媒体、RAM等の作業用メモリ、および通信回路を有する。この場合、上記した各部の機能は、CPUが制御プログラムを実行することにより実現される。
<メイクパターンID>
ここで、メイクパターンIDが示すメイクの内容について説明する。
端末200およびサーバ400は、例えば、メイクパターンIDとメイクの内容とを対応づけて記述した、同一内容のメイクパターンテーブルを、それぞれ予め格納している。端末200は、例えば、提案メイク取得部270に、実施メイク取得部220から参照可能な状態で、メイクパターンテーブルを格納している。サーバ400は、例えば、メイク分析部440に、メイクパターンテーブルを格納している。
図5は、メイクパターンテーブルの一例を示す図である。
図5に示すように、メイクパターンテーブル510は、例えば、メイクパターンID511毎に、対応するメイク種別512を記述している。メイク種別512は、ここでは簡略化して図示しているが、具体的には、「ファンデーション」、「アイシャドウ」、「口紅」、および「チーク」等である。
そして、メイクパターンテーブル510は、メイクパターンID511とメイク種別512との組み合わせ毎に、色513、濃度514、範囲515、および化粧品ID516を記述している。色513は、ここでは簡略化して図示しているが、具体的には、RGB値および光沢度等である。濃度514は、ここでは簡略化して図示しているが、具体的には、顔の画像の上に重畳する際の透過度およびグラデーションの仕方等である。範囲515は、ここでは簡略化して図示しているが、具体的には、特徴点からの相対座標群、特徴点に対する中心点の相対位置と半径との組等である。すなわち、色513、濃度514、および範囲515の組は、少なくとも画像化に必要な情報を含む。
なお、メイクパターンテーブル510は、肌用化粧品の塗りパターンを更に記述してもよい。肌用化粧品の塗りパターンとは、例えば、アイシャドウの場合、アイホールか、アイラインか、目の下か等、顔部品に対する相対的な範囲を示す情報である。
例えば、「MP1」というメイクパターンID511には、「MT1」〜「MT4」というメイク種別512が対応付けられている。また、例えば、「MP1」というメイクパターンID511と「MT1」というメイク種別512との組み合わせに対しては、「C1」という色513、「D1」という濃度514、「A1」という範囲515、および「I1」という化粧品ID516が、対応付けられている。これは、「MP1」というメイクパターンIDが、「MT1」というメイク種別について「C1、D1、A1」というメイクアップを行うことを表す。また、これは、「MP1」というメイクパターンIDが、「MT1」というメイク種別について、「I1」という化粧品IDの化粧品を用いるということを表す。
また、端末200は、例えば、提案メイク取得部270に、化粧品IDと化粧品情報とを対応づけて記述した化粧品テーブルを、予め格納している。
図6は、化粧品テーブルの一例を示す図である。
図6に示すように、化粧品テーブル520は、化粧品ID521毎に、会社ID522および品番523を記述している。化粧品ID521は、メイクパターンテーブル510の化粧品ID516に対応している。会社ID522は、肌用化粧品の製造あるいは販売をする会社の名称あるいは識別子である。品番523は、肌用化粧品の品番である。
例えば、「I1」という化粧品ID521には、「B1」という会社ID522および「b11」という品番523が対応付けられている。これは、「I1」という化粧品IDが、「B1」という会社IDが示す会社の、「b11」という品番の肌用化粧品であるということを示す。
なお、端末200において、図5に示すメイクパターンテーブル510と図6に示す化粧品テーブル520とは、1つのテーブルに統合されていてもよい。
<実施メイク情報の分析>
次に、実施メイク情報の分析手法の一例について説明する。
サーバ400のメイク分析部440は、まず、蓄積されたユーザ情報のうち顔特徴量に対して、主成分分析を行う。そして、メイク分析部440は、顔特徴量の主成分分析結果を、主成分値が1σ以上であるか否か等を判定基準とする公知の主成分層別法により、複数のグループにグルーピングする。そして、メイク分析部440は、顔特徴量のグループ毎に、そのグループの代表値(セントロイド)を、代表顔特徴量として決定する。
更に、メイク分析部440は、顔特徴量のグループ毎に、そのグループに属する顔特徴量に対応する実施メイク情報に対して、主成分分析を行う。そして、メイク分析部440は、実施メイク情報の主成分分析結果を、公知の主成分層別法により複数のグループにグルーピングする。そして、メイク分析部440は、実施メイク情報のグループ毎に、そのグループの代表値(セントロイド)との距離が最も短いメイクパターンを、代表メイクパターンとして決定する。
この結果、メイク分析部440は、代表顔特徴量毎に、複数の代表メイクパターンを対応付ける。そして、メイク分析部440は、代表顔特徴量毎に、複数の代表メイクパターンに対して、順位付けを行う。
この順位付けの手法としては、例えば以下の3つが考えられる。
1つ目は、対応する実施メイク情報の数が多い順に、代表メイクパターンに対して順位付けを行う手法である。これは、対応する実施メイク情報の数がより多いメイク(つまり、流行中のメイク)が、優先して選択されるような、選択基準を決定することに相当する。
2つ目は、対応する実施メイク情報が受信された時間の平均が新しい順に、代表メイクパターンに対して順位付けを行う手法である。これは、対応する実施メイク情報が取得された時間の平均がより新しいメイク(つまり、流行の最先端にあるメイク)が、優先して選択されるような、選択基準を決定することに相当する。
3つ目は、対応する実施メイク情報の数の増加速度が高い順に、代表メイクパターンに対して順位付けを行う手法である。これは、対応する実施メイク情報の数の増加速度がより高いメイク(つまり、流行しつつあるメイク)が、優先して選択されるような、選択基準を決定することに相当する。
このような分析の結果、メイク分析部440は、顔特徴量をグループに分類し、顔特徴量のグループ毎に、そのグループに属する顔に対して適用されたメイクを代表するメイクパターンを対応付けることができる。また、メイク分析部440は、顔特徴量のグループ毎に、実際に流行しているメイクを対応付けることができる。メイク分析部440は、この分析結果に基づいて、上述のメイク分析結果テーブルを生成/更新する。
なお、メイク分析部440は、これまでにメイク蓄積部430に蓄積されていない(データベース内にない)傾向のメイクパターン、つまり、斬新なメイクパターンを示す実施メイク情報が入力された場合に、その旨を検知するようにしてもよい。そして、メイク分析部440は、斬新なメイクパターンを検知したとき、当該メイクパターンが優先して選択されるような、選択基準を決定してもよい。このような斬新なメイクパターンは、メイク蓄積部430に既に蓄積されている実施メイク情報の数を母数としたとき、上述の、増加速度がメイクパターンということができる。
斬新なメイクパターンを検出するための具体的な処理は、例えば、以下の通りである。
メイク分析部440は、まず、入力されたメイクパターンに対して、既に分析済みの主成分負荷量を適用し、各主成分値を算出する。次に、メイク分析部440は、各主成分値からなるベクトルと、既にグルーピングされている各グループの代表メイクパターンの主成分値から成るベクトルとの、内積を算出する。メイク分析部440は、全てのグループに対する内積の値が閾値以上である場合、今回入力されたメイクパターンを、斬新なメイクパターンであると判定する。
また、メイク分析部440は、一定期間毎(例えば、一定数の実施メイク情報が入力される毎)に再度主成分分析を行い、新規のグループの有無を検出することにより、新たなメイクパターンのトレンドの予兆を検出してもよい。そして、メイク分析部440は、かかる予兆を検出したとき、該当するメイクパターンが優先して選択されるような、選択基準を決定してもよい。
このような構成を有するメイクアップ支援システム100は、サーバ400において、複数の端末200の複数のユーザから、実施メイク情報および顔特徴量を収集することができる。そして、メイクアップ支援システム100は、サーバ400において、収集された情報を分析することにより、顔特徴量のグループ毎に、流行のメイクを推定することができる。そして、メイクアップ支援システム100は、顔特徴量のグループ毎に流行のメイクを対応付けたテーブルを、提案メイク情報の選択基準として決定することができる。すなわち、メイクアップ支援システム100は、メイクの流行が時間と共に変化する場合でも、メイクアップの支援を適切に行うことができる。
<端末の動作>
次に、端末200の動作について説明する。
図7は、端末200の動作の一例を示すフローチャートである。端末200は、例えば、メイクアップにおける実施の対象としてメイクパターンが選択される毎に、図7に示す処理を実行する。
まず、ステップS1100において、撮影部230は、ユーザの顔を撮影し、画像取得部240は、撮影された映像を構成する画像を取得する。
図8は、図7のステップS1100において取得される、画像の一例を示す図である。
図8に示すように、画像610は、ユーザの顔の画像(以下「顔画像」という)611を含む。ユーザは、メイクアップをしていない状態であるものとする。
そして、図7のステップS1200において、顔部品取得部250は、画像610から、顔部品および顔特徴量を取得する。この際、顔部品取得部250は、例えば、画像610を解析することにより、画像610から顔の(顔部品の)特徴点を抽出する。そして、顔部品取得部250は、同一の顔部品を構成する特徴点により形成される領域を、顔部品の領域として取得する。そして、顔部品取得部250は、取得した顔部品の領域から、顔部品情報を生成する。また、顔部品取得部250は、抽出した顔の特徴点から、例えば、顔の幅に対する顔の長さの比、両目の間の間隔に対する鼻の長さの比、および、顔の幅に対する目の幅の比等の値から成る、顔特徴量を取得する。
図9は、図7のステップS1200において抽出される、顔の特徴点の配置の一例を示す図である。
図9に示すように、顔画像611からは、複数の特徴点(記号「●」で示す)が抽出される。例えば、第1〜第4の特徴点621〜624は、右目を構成する。したがって、顔部品取得部250は、第1〜第4の特徴点621〜624により囲まれる領域625を、右目の領域として取得する。
図10は、図7のステップS1200において生成される、顔部品情報の一例を示す図である。
図10に示すように、顔部品情報630は、例えば、顔部品ID631毎に、領域632および人ID633を記述している。領域632は、画像における顔部品の領域の範囲を示す情報であり、例えば、画像上に設定された座標系の座標値リストである。人ID633は、例えば、撮影が開始される毎に、タッチパネル付きディスプレイに対する操作等を介してユーザにより指定された値が、設定される。
また、顔特徴量としては、例えば、上述の顔の幅に対する顔の長さの比、両目の間の間隔に対する鼻の長さの比、および、顔の幅に対する目の幅の比等を並べた、多変量データが取得される。
そして、図7のステップS1300において、実施メイク取得部220は、実施メイク情報を取得する。この実施メイク情報の取得は、つまり、メイクパターンIDの取得である。
そして、ステップS1400において、メイク報告部260は、顔特徴量および実施メイク情報を、サーバ400へ送信する。この顔特徴量および実施メイク情報の送信は、つまり、実施メイクメッセージの送信である。
図11は、実施メイクメッセージの一例を示す図である。
図11に示すように、実施メイクメッセージ640は、例えば、端末ID641、人ID642、メイクパターンID643、および顔特徴量644を含む。端末ID641は、端末200の端末IDである。人ID642は、顔特徴量644の抽出の対象となった人の人IDである。メイクパターンID643は、実施メイク情報であり、顔特徴量644が抽出の対象となった人に対して選択されたメイクの、メイクパターンIDである。
なお、ステップS1400と、次のステップS1500との間に、サーバ400において、後述の図14に示す動作が行われる。その結果、端末200には、ユーザ情報送信に対する応答として、サーバ400から、提案メイク情報を含む提案メイクメッセージが返信されてくる。
そして、図7のステップS1500において、提案メイク取得部270は、提案メイク情報を、サーバ400から受信する。この提案メイク情報の受信は、つまり、提案メイクメッセージの受信である。
図12は、提案メイクメッセージの一例を示す図である。
図12において、提案メイクメッセージ650は、端末ID651と人ID652との組に対応付けて、複数のメイクパターンID653を対応付けている。端末ID651は、提案メイクメッセージ650の送信先を示す。複数のメイクパターンID653は、人ID652に対して提案すべきメイクパターンのうち、優先度が最も高いメイクパターンのメイクパターンIDである。
そして、図7のステップS1600において、端末メイク提示部280は、提案メイク情報に含まれていた提案メイク情報に基づいて、シミュレーション画像を生成し、表示部290に表示させる。この際、端末メイク提示部280は、化粧品情報についても、表示部290に表示させる。
図13は、図7のステップS1600において表示される、シミュレーション画像の一例を示す図である。
図13に示すように、シミュレーション画像660は、顔画像611に、アイブロウ、アイシャドウ、アイライナー、チーク、および口紅といった、顔用メイクの画像661〜665を重畳した画像となっている。
また、シミュレーション画像660には、化粧品情報を示す情報表示エリア666が追加されている。すなわち、シミュレーション画像660には、選択されたメイクを適用するのに必要な肌用化粧品の化粧品情報も、表示される。ユーザは、表示されているシミュレーション画像660が示すメイクを気に入った場合、表示された化粧品情報に基づいて、必要な肌用化粧品を入手することができ、実際のメイクアップを容易に行うことができる。
このような動作により、端末200は、ユーザの実施メイク情報を顔特徴量と共にサーバ400へ送信し、ユーザの顔に合う流行のメイクに関する情報を、サーバ400から受信して、これをユーザに提示することができる。
<サーバの動作>
次に、サーバ400の動作について説明する。
図14は、サーバ400の動作の一例を示すフローチャートである。
まず、ステップS2100において、メイク収集部420は、端末200から、実施メイク情報(ユーザ情報)を受信したか否かを判断する。この実施メイク情報の受信は、つまり、実施メイクメッセージの受信である。
メイク収集部420は、実施メイク情報を受信していない場合(S2100:NO)、後述のステップS2500へ進む。また、メイク収集部420は、実施メイク情報を受信した場合(S2100:YES)、ステップS2200へ進む。
なお、メイク収集部420は、第1〜第Nの端末2001〜200Nに対して、例えば定期的に、新たに実施の対象として選択されたメイクについてユーザ情報を送信するように要求して、ユーザ情報の収集を行ってもよい。
ステップS2200において、メイク収集部420は、受信した実施メイク情報を、その受信時間と対応付けて、メイク蓄積部430に蓄積させる。この実施メイク情報の蓄積は、つまり、ユーザ情報および受信時間の蓄積である。以下、ユーザ情報と受信時間との組は、「ユーザ情報履歴」という。
図15は、メイク蓄積部430に格納されているユーザ情報履歴の一例を示す図である。
図15に示すように、ユーザ情報履歴670は、端末ID671、人ID672、メイクパターンID673、および顔特徴量674(つまりユーザ情報)と、受信時間675とを、対応付けて記述している。
そして、図14のステップS2300において、メイク分析部440は、現在の選択基準に基づき、メイクを選択する。現在の選択基準とは、つまり、分析結果格納部450に格納されているメイク分析結果テーブルである。メイクの選択は、上述の通り、受信した顔特徴量が、メイク分析結果テーブルに登録されたグループのいずれに属するかを判定し、判定されたグループに対応するメイクを選択することにより行われる。
図16は、分析結果格納部450に格納されているメイク分析結果テーブルの一例を示す図である。
図16に示すように、メイク分析結果テーブル680は、例えば、顔特徴量のグループ681毎に、複数のメイクパターンID682を対応付けて記述している。複数のメイクパターンID682は、顔特徴量のグループ681に属する顔特徴量の人に対して提案すべきメイクパターンのうち、優先度が最も高いメイクパターンのメイクパターンIDである。
例えば、「G1」という顔特徴量のグループ681には、「MP1」というメイクパターンIDが対応付けられている。したがって、メイク提示部460は、端末200から送られてきた顔特徴量が、「G1」という顔特徴量のグループ681に属する場合、「MP1」というメイクパターンID682を、提示メイク情報として決定する。
そして、図14のステップS2400において、メイク提示部460は、選択したメイクを示す提案メイク情報を、端末200へ返信する。この提案メイク情報の返信は、つまり、提案メイクメッセージの返信である。
そして、ステップS2500において、メイク分析部440は、メイク蓄積部430に蓄積された実施メイク情報に対する分析を行うべきタイミングが到来したか否かを判断する。かかるタイミングは、例えば、蓄積された実施メイク情報の量(数)が所定の値以上であり、かつ、最後に分析を行ってから所定の時間が経過したタイミングである。
メイク分析部440は、分析を行うべきタイミングが到来していない場合(S2500:NO)、後述のステップS2800へ進む。また、メイク分析部440は、分析を行うべきタイミングが到来した場合(S2500:YES)、ステップS2600へ進む。
ステップS2600において、メイク分析部440は、蓄積された実施メイク情報を分析し、選択基準を決定する。すなわち、メイク分析部440は、複数のユーザから収集された実施メイク情報から、顔特徴量の分類および流行のメイクの推定を行う。
そして、ステップS2700において、メイク分析部440は、決定した選択基準を、分析結果格納部450に格納する。すなわち、メイク分析部440は、蓄積された実施メイク情報に対する分析結果に基づいて、メイク分析結果テーブル680(図16参照)を更新する。この更新されたメイク分析結果テーブル680は、次に処理がステップS2300へ進んだときに、用いられることになる。
そして、ステップS2800において、メイク収集部420は、サーバ400のオペレータ操作等により処理の終了を指示されたか否かを判断する。
メイク収集部420は、処理の終了を指示されていない場合(S2800:NO)、ステップS2100へ戻る。また、メイク収集部420は、処理の終了を指示された場合(S2800:YES)、一連の処理を終了する。
このような動作により、サーバ400は、第1〜第Nの端末2001〜200Nから実施メイク情報を収集して分析し、顔特徴量のグループ毎の流行のメイクを推定しつつ、その分析結果を、各端末200にフィードバックすることができる。
<本実施の形態の効果>
以上のように、本実施の形態に係るメイクアップ支援システム100は、複数の人のそれぞれから実施メイク情報を収集し、収集された情報を分析し、ユーザに対して提示すべきメイクの選択基準を決定する。そして、メイクアップ支援システム100は、決定された選択基準に基づいて決定されるメイクを、ユーザに対して提示する。より具体的には、メイクアップ支援システム100は、各メイクパターンの、実際の実施の対象として選択された回数、時間の新しさ、および数の増加の度合い等から、提案するメイクの選択基準を決定する。
流行のメイクは、より多くの人々に実際に実施されているメイクである場合が多い。したがって、本実施の形態に係るメイクアップ支援システム100は、メイクの流行が時間と共に変化する場合でも、実際に流行しているメイクを推定してこれを選択することができ、メイクアップの支援を適切に行うことができる。
<提示メイクの選択肢>
なお、本実施の形態では、顔特徴量から1つのメイクパターンを提示対象として選択する選択基準を例示したが、これに限定されない。例えば、サーバ400は、優先度が最も高い複数のメイクパターンを、提示メイク情報として端末200に返信してもよい。
この場合、端末200は、例えば、受信した提示メイク情報が示す複数のメイクパターンを選択肢として提示し、選択されたメイクパターンを、端末メイク提示部280による提示の対象とする。より具体的には、端末200は、提案メイク取得部270において、複数のメイクパターンの識別情報を、表示部290に表示させる。そして、端末200は、タッチパネル付きディスプレイに対する操作等を介してユーザにより選択されたメイクパターンの提案メイク情報を、提案メイク取得部270から端末メイク提示部280へと出力させる。
<他のメイク選択手法>
また、メイクアップ支援システム100は、顔特徴量以外のパラメータに基づいて、実施メイク情報のグルーピングを行ってもよい。例えば、メイクアップ支援システム100は、職業、年齢、居住地等、人の各種属性に基づくグルーピングを行ってもよい。この場合、サーバ400は、かかるグルーピングに必要な情報を、実施メイク情報と対応付けて収集する必要がある。これにより、メイクアップ支援システム100は、人の属性に応じて適切なメイクが異なる場合に、より適切なメイクを提示することが可能となる。
また、メイクアップ支援システム100は、各メイクパターンの実施の回数、時間の新しさ、および数の増加の度合い等に加えて、化粧品会社の優先順位など、別の指標値を考慮して、メイクパターンの選択基準を決定してもよい。例えば、メイクアップ支援システム100は、流行のメイクを選択しつつ、特定の化粧品会社が優先して選択されるような、選択基準を決定してもよい。
<化粧品情報の応用>
また、端末200は、表示する化粧品情報に、肌用化粧品を購入することができるウェブサイトへのリンク情報を対応付けておいてもよい。この場合、端末200は、ユーザがメイクに対する決定操作を行ったとき、通信ネットワーク300を介して、対応するウェブサイトを表示させることが可能となり、メイクアップを更に効果的に支援することができる。また、化粧品会社に対しては、化粧品の販売を促進させることができる。
<他の提示内容>
また、端末200は、全てのメイクアップが行われた後の顔のシミュレーション画像ではなく、メイクアップ途中の顔のシミュレーション画像を生成して表示してもよい。また、端末200は、上述のように、各メイクに塗布順序が設定されている場合、この塗布順序に従って、メイクアップ途中の顔のシミュレーション画像を順次生成して表示してもよい。これにより、端末200は、ユーザに対して、適切なメイクアップの順序を提示することができる。
また、端末200は、選択したメイクの領域との対応付け、および、選択したメイクの色および濃度を、テキストによって提示してもよい。このテキストは、例えば、「両頬骨の最も高い位置を中心にした直径約4cmの範囲に、B1社の品番b55のチークを、濃い目に塗布して下さい。」という内容である。ユーザによっては、テキスト情報のみからでもメイクアップが行われた顔をイメージすることができる。このようなユーザに対しては、このような提示手法によっても、メイクアップを十分に支援することが可能である。これにより、メイクアップ支援システム100は、画像を生成および表示することなく、メイクアップ支援を行うことができる。
<他のメイク提示手法>
また、端末200は、シミュレーション画像以外の手法で、メイクの提示を行ってもよい。
例えば、端末200は、肌用化粧品の化粧剤を所定の薄膜(紙状媒体)に転写するプリンタに接続される。かかる薄膜は、転写された化粧剤を剥離容易に担持する。このため、薄膜上の化粧剤は、肌に押し付けられことにより、肌に容易に転写されるようになっている。
そして、端末200は、端末メイク提示部280において、撮影された顔の実空間における領域と同じ形状および面積を薄膜に設定し、メイクを対応する領域に転写するように、プリンタに指示する。なお、薄膜は、平面状であっても、立体状であってもよい。
これにより、端末200は、メイクを、薄膜上で、それぞれに対応する領域に対応付けて、ユーザに提示することができる。
ユーザは、この薄膜に印刷された左右の目尻を示す点を、ユーザの左右の目尻に合わせた状態で、薄膜の全体を顔に押し付けることにより、シミュレーション画像に基づいて選択したメイクを実際に行うことができる。すなわち、ユーザは、顔部品毎に化粧剤を塗るといった作業を行うことなく、簡単かつ迅速に、流行のメイクを行うことができる。
また、端末200は、デジタルビデオカメラ等によりユーザの顔の映像を撮影し、撮影映像を構成する画像(フレーム)に対して、リアルタイムにシミュレーション画像を生成して表示してもよい。この場合、端末メイク提示部280は、映像に対応して一旦入力された提案メイク情報が示すメイクを維持しつつ、映像を構成する画像毎に、順次、シミュレーション画像を生成して表示部290に表示させればよい。
<他の実施メイク情報取得手法>
また、実施メイク取得部220は、メイクパターンの選択の受け付けを、アイシャドウ毎、チーク毎というように、部分別にメイクの選択を受け付け、受け付けたメイクを組み合わせることによって、行ってもよい。また、実施メイク取得部220は、ユーザの顔画像から実際に実施されたメイクのメイクパターンを抽出し、抽出したメイクパターンを多変量データ化する等して、実施メイク情報を取得してもよい。但し、これらの場合、メイクパターンの選択肢は、膨大な数となる。したがって、特に、これらの場合、メイクアップ支援システム100は、実施メイク情報として、メイクパターンIDではなく、メイクパターンの多変量データをそのまま用いることが望ましい。
<その他の構成の変形例>
また、提案メイク情報の提示先は、必ずしも実施メイク情報の送信元のユーザでなくてもよい。例えば、サーバ400は、決定した選択基準に基づいて選択した提案メイク情報を、実施メイク情報の収集先となっていない端末に送信してもよいし、サーバ400のオペレータに提示してもよい。
また、化粧品情報の取得は、サーバ400で行ってもよい。この場合、例えば、化粧品テーブルをサーバ400に用意し、サーバ400が、提案メイク情報と併せて化粧品情報を端末200に送信すればよい。
また、本実施の形態では、メイク分析結果テーブルの保持およびメイク分析結果テーブルに基づくメイクパターンの選択を、サーバ400ではなく、端末200で行うようにしてもよい。この場合、サーバ400は、メイク分析結果テーブルを端末200に送信するようにし、かつ、端末200にメイク提示部460に対応する機能部を設ける必要がある。
また、メイクの具体的内容は、上述の例に限定されない。例えば、提示の対象となる顔用メイクには、マスカラ、リップグロス等が含まれる。
また、実施の形態では、本発明を、サーバと複数の端末とにより構成されるシステムに適用した場合について説明したが、本発明は、各端末間で直接データを共有して各端末で分析処理等を行うようなという形態であってもよい。
本開示のメイクアップ支援装置は、複数の人のそれぞれから、当該人がメイクアップにおける実施の対象として選択したメイクを示す実施メイク情報を収集するメイク収集部と、収集された前記実施メイク情報を分析し、ユーザに対して提示すべきメイクの選択基準を決定するメイク分析部と、決定された前記選択基準に基づいてメイクを選択し、選択されたメイクを示す提案メイク情報を前記ユーザに対して提示するメイク提示部と、を有する。
なお、上記メイクアップ支援装置は、前記複数の人がそれぞれ使用する複数の端末のそれぞれとの間で通信を行う通信部、を更に有し、前記メイク収集部は、前記通信部を介して前記実施メイク情報を収集してもよい。
また、上記メイクアップ支援装置において、前記ユーザは、前記複数の人に含まれ、前記メイク提示部は、前記通信部を介して、前記提案メイク情報を前記ユーザに対して提示してもよい。
また、上記メイクアップ支援装置において、前記メイク分析部は、対応する前記実施メイク情報の数がより多い前記メイクが、優先して選択されるような、前記選択基準を決定してもよい。
また、上記メイクアップ支援装置において、前記メイク分析部は、対応する前記実施メイク情報が取得された時間の平均がより新しい前記メイクが、優先して選択されるような、前記選択基準を決定してもよい。
また、上記メイクアップ支援装置において、前記メイク分析部は、対応する前記実施メイク情報の数の増加速度がより高い前記メイクが、優先して選択されるような、前記選択基準を決定してもよい。
また、上記メイクアップ支援装置において、前記メイク収集部は、前記複数の人から、前記実施メイク情報以外の所定の情報を更に収集し、前記メイク分析部は、前記実施メイク情報と前記所定の情報との組み合わせに基づき、前記所定の情報の内容毎に、前記選択基準を決定し、前記メイク提示部は、前記ユーザから当該ユーザの前記所定の情報を取得し、取得した前記所定の情報の内容に対応する前記選択基準に基づいてメイクを選択してもよい。
また、上記メイクアップ支援装置において、前記複数の人は、それぞれ、1つの所定のパラメータの値または複数の所定のパラメータの値の組み合わせによりそれぞれ定義される、予め用意された複数のメイクの中から、メイクアップにおける実施の対象を選択し、前記実施メイク情報は、選択された前記メイクを定義する前記1つまたは複数の値を含んでもよい。
また、上記メイクアップ支援装置において、前記メイクは、肌用化粧剤の色、塗布濃度、および塗布範囲を少なくとも含んでもよい。
本開示のメイクアップ支援システムは、複数の端末と、通信ネットワークを介して前記複数の端末のそれぞれと通信可能なサーバと、を含むメイクアップ支援システムであって、前記端末は、前記端末のユーザがメイクアップにおける実施の対象として選択したメイクを示す、実施メイク情報を取得するメイク取得部と、取得された前記実施メイク情報を、前記サーバへ送信するメイク報告部と、を有し、前記サーバは、前記複数の端末のそれぞれから送られてきた前記実施メイク情報を蓄積するメイク収集部と、蓄積された前記実施メイク情報を分析し、メイクアップの支援を受けるユーザに対して提示すべきメイクの選択基準を決定するメイク分析部と、決定された前記選択基準に基づいてメイクを選択し、選択されたメイクを示す前記提案メイク情報を、前記メイクアップの支援を受けるユーザに対して提示するメイク提示部と、を有する。
なお、上記メイクアップ支援システムにおいて、前記端末は、前記サーバから、前記サーバで選択されたメイクを示す提案メイク情報が送られてきたとき、当該提案メイク情報を前記ユーザに提示する端末メイク提示部、を更に有し、前記サーバの前記メイク提示部は、前記提案メイク情報を、前記複数の端末の少なくとも1つに対して送信してもよい。
本開示のメイクアップ支援方法は、複数の人のそれぞれから、当該人がメイクアップにおける実施の対象として選択したメイクを示す実施メイク情報を収集するステップと、収集された前記実施メイク情報を分析し、ユーザに対して提示すべきメイクの選択基準を決定するステップと、決定された前記選択基準に基づいてメイクを選択するステップと、選択されたメイクを示す提案メイク情報を、前記ユーザに対して提示するステップと、を有する。