(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-07
(45)【発行日】2024-06-17
(54)【発明の名称】制御されていない照明条件の画像中の肌色を識別する技術
(51)【国際特許分類】
A61B 5/00 20060101AFI20240610BHJP
G06T 1/00 20060101ALI20240610BHJP
【FI】
A61B5/00 101A
G06T1/00 340A
A61B5/00 M
【外国語出願】
(21)【出願番号】P 2022184124
(22)【出願日】2022-11-17
(62)【分割の表示】P 2022503000の分割
【原出願日】2020-07-09
【審査請求日】2022-11-17
(32)【優先日】2019-07-18
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】595100370
【氏名又は名称】ロレアル
【氏名又は名称原語表記】L′OREAL
(74)【代理人】
【識別番号】110001139
【氏名又は名称】SK弁理士法人
(74)【代理人】
【識別番号】100130328
【氏名又は名称】奥野 彰彦
(74)【代理人】
【識別番号】100130672
【氏名又は名称】伊藤 寛之
(72)【発明者】
【氏名】エルファクリ,クリスティン
(72)【発明者】
【氏名】ヴァルセシーニ,フローレント
(72)【発明者】
【氏名】トラン,ロイック
(72)【発明者】
【氏名】ペロット,マシュー
(72)【発明者】
【氏名】キップス,ロビン
(72)【発明者】
【氏名】マルヘルブ,エマニュエル
【審査官】▲高▼原 悠佑
(56)【参考文献】
【文献】米国特許出願公開第2019/0014884(US,A1)
【文献】国際公開第2019/079895(WO,A1)
【文献】特表2010-520551(JP,A)
【文献】特表2019-512797(JP,A)
【文献】特開2019-102068(JP,A)
【文献】特開2018-128950(JP,A)
【文献】特開2005-242582(JP,A)
【文献】特開2013-207721(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
A61B 5/00
(57)【特許請求の範囲】
【請求項1】
種々の照明下における顔の肌色を決定するための機械学習モデルを訓練する方法であって、
訓練被写体の顔を含む少なくとも1つの訓練画像を受信するステップ、
前記少なくとも1つの訓練画像
のためのタグ付け情報を決定するステップ、
前記少なくとも1つの訓練画像および前記タグ付け情報を訓練データストアに付加するステップ、および
前記訓練データストアに記憶された訓練データのセットを使用して顔の肌色を決定するために少なくとも1つの機械学習モデルを訓練するステップを含み、
前記少なくとも1つの訓練画像
のためのタグ付け情報を決定するステップは、
前記訓練画像中の基準色票を検出するステップおよび前記基準色票に基づいて照明色を決定するステップ、
または、分光光度計により前記訓練被写体から収集された肌色情報を受信するステップを含み、
前記訓練データのセットを使用して顔の肌色を決定するために前記少なくとも1つの機械学習モデルを訓練するステップは、
入力として
前記訓練画像を処理し、出力として照明色を示す値を生成する、第1の機械学習モデルを訓練するステップ、および
入力として前記訓練画像および前記照明色を示す値を処理し、出力として肌色を示す値を生成する、第2の機械学習モデルを訓練するステップを含む、方法。
【請求項2】
請求項1に記載の方法であって、少なくとも1つの正規化訓練画像を作製するために前記少なくとも1つの訓練画像を正規化するステップをさらに含む、方法。
【請求項3】
請求項2に記載の方法であって、
前記少なくとも1つの正規化訓練画像を作製するために前記少なくとも1つの訓練画像を正規化するステップは、
前記少なくとも1つの訓練画像中の顔を検出するステップ、
前記少なくとも1つの訓練画像中の前記顔をセンタリングするステップ、および
前記顔が所定のサイズになるように、前記少なくとも1つの訓練画像をズームするステップを含む、方法。
【請求項4】
請求項1に記載の方法であって、
前記少なくとも1つの訓練画像を受信するステップは、
ビデオを受信するステップ、および
前記ビデオから少なくとも1つの訓練画像を抽出するステップを含む、方法。
【請求項5】
請求項1に記載の方法であって、前記少なくとも1つの訓練画像
のためのタグ付け情報を決定するステップは、
前記訓練画像中の基準色票を検出するステップ、および
前記基準色票に基づいて照明色を決定するステップを含む、方法。
【請求項6】
請求項5に記載の方法であって、前記決定された照明色に基づいて前記少なくとも1つの訓練画像の色を調整するステップをさらに含む、方法。
【請求項7】
請求項1に記載の方法であって、前記タグ付け情報は、肌色情報を含み、
前記少なくとも1つの訓練画像
のためのタグ付け情報を受信するステップは、分光光度計により前記訓練被写体から収集された前記肌色情報を受信するステップを含む、方法。
【請求項8】
システムであって、計算回路を含む肌色予測ユニットを備え、
前記計算回路を含む肌色予測ユニットは、
訓練被写体の顔を含む少なくとも1つの訓練画像を受信し、
前記少なくとも1つの訓練画像のためのタグ付け情報を決定し、
前記少なくとも1つの訓練画像および前記タグ付け情報を訓練データストアに付加し、ならびに
前記訓練データストアに記憶された訓練データのセットを使用して顔の肌色を決定するために少なくとも1つの機械学習モデルを訓練するように構成され、
前記少なくとも1つの訓練画像
のためのタグ付け情報を決定するステップは、
前記訓練画像中の基準色票を検出するステップおよび前記基準色票に基づいて照明色を決定するステップ、
または、分光光度計により前記訓練被写体から収集された肌色情報を受信するステップを含み、
前記訓練データのセットを使用して顔の肌色を決定するために前記少なくとも1つの機械学習モデルを訓練するステップは、
入力として
前記訓練画像を処理し、出力として照明色を示す値を生成する、第1の機械学習モデルを訓練するステップ、および
入力として前記訓練画像および前記照明色を示す値を処理し、出力として肌色を示す値を生成する、第2の機械学習モデルを訓練するステップを含む、システム。
【請求項9】
請求項8に記載のシステムであって、前記計算回路は、少なくとも1つの正規化訓練画像を作製するために前記少なくとも1つの訓練画像を正規化するようにさらに構成されている、システム。
【請求項10】
請求項9に記載のシステムであって、少なくとも1つの正規化訓練画像を作製するために前記少なくとも1つの訓練画像を正規化するステップは、
前記少なくとも1つの訓練画像中の顔を検出するステップ、
前記少なくとも1つの訓練画像中の顔をセンタリングするステップ、および
前記顔が所定のサイズになるように、前記少なくとも1つの訓練画像をズームするステップを含む、システム。
【請求項11】
請求項8に記載のシステムであって、少なくとも1つの訓練画像を受信するステップは、
ビデオを受信するステップ、および
前記ビデオから少なくとも1つの訓練画像を抽出するステップを含む、システム。
【請求項12】
請求項8に記載のシステムであって、前記少なくとも1つの訓練画像のためにタグ付け情報を決定するステップは、
前記訓練画像中の基準色票を検出するステップ、および
前記基準色票に基づいて照明色を決定するステップを含む、システム。
【請求項13】
請求項12に記載のシステムであって、前記計算回路は、前記決定された照明色に基づいて前記少なくとも1つの訓練画像の色を調整するようにさらに構成されている、システム。
【請求項14】
請求項8に記載のシステムであって、前記タグ付け情報は、肌色情報を含み、
前記少なくとも1つの訓練画像
のためのタグ付け情報を
決定するステップは、分光光度計により前記訓練被写体から収集された前記肌色情報を受信するステップを含む、システム。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
【0002】
本出願は、2019年7月18日に出願された米国出願第16/516080号の利益を主張するものであり、この内容は、あらゆる目的のために該出願全体が参照により、本明細書に援用される。
【発明の概要】
【0003】
本概要は、以下の「詳細な説明」でさらに記載される概念の選択を簡略化して紹介するために提供される。本概要は、クレームされた主題の主要な特徴を特定することを意図したものではなく、また、クレームされた主題の範囲を決定する際の補助として使用することを意図したものでもない。
【0004】
いくつかの実施形態では、画像中の顔の肌色を推定するために機械学習モデルを訓練する方法が提供される。コンピューティングデバイスは、訓練被写体の顔を含む少なくとも1つの訓練画像を受信する。前記コンピューティングデバイスは、前記少なくとも1つの訓練画像のタグ付け情報を受信する。前記コンピューティングデバイスは、前記少なくとも1つの訓練画像および前記タグ付け情報を訓練データストアに付加する。前記コンピューティングデバイスは、前記訓練データストアに記憶された情報を使用して顔の肌色を決定するために前記機械学習モデルを訓練する。
【0005】
いくつかの実施形態では、顔の肌色を推定するための1つまたは複数の機械学習モデルを使用する方法が提供される。コンピューティングデバイスは、ライブ被写体の顔を含む少なくとも1つの画像を受信する。前記コンピューティングデバイスは、肌色の決定を得るために少なくとも1つの機械学習モデルを使用して前記少なくとも1つの画像を処理する。前記コンピューティングデバイスは、前記肌色を提示する。
【0006】
いくつかの実施形態では、システムが提供される。前記システムは、訓練被写体の顔を含む少なくとも1つの訓練画像を受信し、前記少なくとも1つの訓練画像のためのタグ付け情報を受信し、前記少なくとも1つの訓練画像および前記タグ付け情報を訓練データストアに付加し、ならびに前記訓練データセットを使用して顔の肌色を決定するために前記機械学習モデルを訓練するように構成された計算回路(computational circuitry)を含む肌色予測ユニットを備える。
【0007】
いくつかの実施形態では、システムが提供される。前記システムは、肌色予測ユニットおよび予測された肌色ユニットを備える。前記肌色予測ユニットは、1つまたは複数の畳み込みニューラルネットワーク画像分類器を使用して画像中の顔の肌色のためのピクセルワイズ予測のスコア生成するように構成された計算回路を含む。前記予測された肌色ユニットは、前記顔の肌色の前記予測スコアに基づいて1つまたは複数の入力に応答するユーザの予測された肌色の仮想表示を生成するように構成された計算回路を含む。
【図面の簡単な説明】
【0008】
本発明の上述の態様および付随する利点の多くは、添付の図面と併せ、以下の詳細な説明を参照することにより、同様のことがよりよく理解できるようになるにつれて、より容易に理解されるであろう。
【0009】
【
図1】
図1は、本開示の様々な態様に係る、肌色の自動推定を生成するために少なくとも1つの機械学習モデルを使用するシステムの非限定的な例示的実施形態の概略図である。
【0010】
【
図2】
図2は、本開示の様々な態様に係る、モバイルコンピューティングデバイスおよび肌色決定デバイスの非限定的な例示的実施形態を示すブロック図である。
【0011】
【
図3】
図3は、本開示の様々な態様に係る、画像中の顔の肌色を推定するために機械学習モデルを訓練する方法の非限定的な例示的実施形態を示すフローチャートである。
【0012】
【
図4】
図4は、本開示の様々な態様に係る、顔を含む画像の正規化の非限定的な例示的実施形態を示す概略図である。
【0013】
【
図5】
図5は、本開示の様々な態様に係る、画像中の顔の肌色を推定するために機械学習モデルを使用する方法の非限定的な例示的実施形態を示すフローチャートである。
【0014】
【
図6】
図6は、本開示のコンピューティングデバイスとして使用するのに適切な例示的なコンピューティングデバイスの態様を示すブロック図である。詳細な説明
【0015】
モバイルコンピューティングデバイスを介したものを含め、オンラインでの商品購入は、消費者にとって商品を閲覧したり入手したりするのに便利な方法である。マウスをクリックまたは指でタップするだけで大量の品物のカタログが入手可能であることに加え、オンラインの買い物客に商品の幅広い推薦を提供する様々な技術が存在する。これらの商品は、買い物客が興味を持っている他の商品、買い物客の購入履歴、買い物客の他の商品のレビュー、他の買い物客の購入履歴およびレビューなどに基づいた、買い物客が興味を持つ可能性がある商品である。
【0016】
しかし、実物での体験をオンラインのインタラクションに置き換えることが困難であった特定のタイプの商品がある。例えば、ファンデーションや他の化粧品などの美容商品は、オンラインで閲覧することは困難であり、自動化された方式で推薦することも困難である。これは、主として推薦に最も関連する根拠となる消費者の特徴(顔の肌色)を自動化された方法で推定することが困難であるためである。たとえ消費者の画像やビデオを取り込んだとしても、制御されていない環境からの画像処理における技術的欠陥により、この画像を、確実に肌色を決定することに、現在は使用することができない。複数の場所の間で照明条件に一貫性がないと、異なる場所では画像やビデオで再現される色が異なる。それゆえ、照明条件に基づいて、決定される肌色が異なることになる。照明条件にかかわらず画像中の肌色を正確に推定するために、このような技術的な制限を克服できる技術が望まれている。
【0017】
本開示のいくつかの実施形態では、1つまたは複数の機械学習モデルは、照明条件にかかわらず、1つまたは複数の画像における肌色を正確に推定するように訓練される。次に、いくつかの実施形態では、モデルを使用して、新しい画像の肌色を推定することができ、この推定された肌色は、様々な目的のために使用することができる。例えば、この肌色を使用して、肌色に正確にマッチするファンデーションの色合いの推薦、または推定された肌色と補完的な別の化粧品の推薦を生成することができる。したがって、実物で商品を試す必要性が取り除かれ、オンラインショッピングの体験の利点を、色合せに大きく依存するこれらの新しい商品に拡張することができる。
【0018】
図1は、本開示の様々な態様に係る肌色の自動推定を生成するために、少なくとも1つの機械学習モデルを使用するシステムの非限定的な例示的実施形態の概略図である。示されるように、ユーザ90は、モバイルコンピューティングデバイス102を有する。ユーザ90は、モバイルコンピューティングデバイス102でユーザ90の顔の画像を取り込む。ユーザ90は、どんなタイプの場所にいてもよく、したがって、画像が取り込まれた際の照明条件は不明であってもよい。モバイルコンピューティングデバイス102は、画像を肌色決定デバイス104に送信する。肌色決定デバイス104は、1つまたは複数の機械学習モデル106を使用して、画像に基づいて肌色108を決定する。次に、肌色108を使用して、肌色108を補完するか、そうでなければ肌色108に適した、1つまたは複数の商品110の推薦を行うことができる。
【0019】
いくつかの実施形態では、モバイルコンピューティングデバイス102は、2つ以上の画像を肌色決定デバイス104に送信することができる。いくつかの実施形態では、1つの画像の代わりに、ビデオを取り込むことによって複数の画像が取り込まれてもよく、ビデオを取り込む最中にモバイルコンピューティングデバイス102を動かすことによって照明条件が変更されてもよい。例えば、ユーザ90は、前面カメラ(「自撮り」カメラとしても知られている)を使用してビデオを取り込むようにモバイルコンピューティングデバイス102を設定してもよく、モバイルコンピューティングデバイス102を持ちながら「自撮り」位置で回転して、経験する照明条件を変更してもよい。異なる照明条件での複数の画像を提供することによって、機械学習モデル106を、複数の肌色108の決定を生成するために使用することができる。そして、これを平均化するか、他の方法で組み合わせて、決定の精度を向上させることができる。
【0020】
図2は、本開示の様々な態様に係るモバイルコンピューティングデバイスおよび肌色決定デバイスの非限定的な例示的実施形態を示すブロック図である。上述したように、モバイルコンピューティングデバイス102は、ユーザ90の画像を取り込むために使用され、モバイルコンピューティングデバイス102は、ユーザ90の肌色を決定するために肌色決定デバイス104に画像を送信する。モバイルコンピューティングデバイス102および肌色決定デバイス104は、任意の適当な通信技術を使用して通信することができる。任意の適当な通信技術は、Wi-Fi(登録商標)、Wi-MAX(登録商標)、Bluetooth(登録商標)、2G、3G、4G、5G、およびLTE(登録商標)を含むがこれらに限定されない無線通信技術、またはイーサネット(登録商標)、FireWire(登録商標)、およびUSBを含むがこれに限定されない有線通信技術である。いくつかの実施形態では、モバイルコンピューティングデバイス102と肌色決定デバイス104との間の通信は、少なくとも部分的にインターネット上で行われても良い。
【0021】
いくつかの実施形態では、モバイルコンピューティングデバイス102は、スマートフォン、タブレットコンピューティングデバイス、または少なくとも図示された構成要素を有する他のコンピューティングデバイスである。図示された実施形態では、モバイルコンピューティングデバイス102は、カメラ202、データ収集エンジン204、およびユーザインターフェースエンジン206を含む。いくつかの実施形態では、カメラ202は、画像を取り込むように構成されている。いくつかの実施形態では、モバイルコンピューティングデバイス102は、前面カメラおよび背面カメラを含むがこれらに限定されない、複数のカメラを含んでもよい。いくつかの実施形態では、前面カメラ(すなわち、モバイルコンピューティングデバイス102のディスプレイと同じくモバイルコンピューティングデバイス102の面上に位置するカメラ)を、画像を取り込むためのカメラ202として使用してもよい。
【0022】
いくつかの実施形態では、データ収集エンジン204は、カメラ202を使用してユーザ90の画像を取り込むように構成され、また、機械学習モデル106を訓練するための訓練画像を取り込むように構成されてもよい。いくつかの実施形態では、ユーザインターフェースエンジン206は、訓練被写体の肌色情報を収集するためのユーザインターフェースを提示するように構成されている。
【0023】
いくつかの実施形態では、肌色決定デバイス104は、デスクトップコンピューティングデバイス、サーバコンピューティングデバイス、クラウドコンピューティングデバイス、または図示された構成要素を設ける他のコンピューティングデバイスである。図示された実施形態では、肌色決定デバイス104は、訓練エンジン208、肌色決定エンジン210、画像正規化エンジン212、および商品推薦エンジン214を含む。一般に、本明細書で使用する「エンジン」という語は、ハードウェア命令またはソフトウェア命令で具現化された論理を指し、これらを、C、C++(登録商標)、COBOL(登録商標)、JAVA(登録商標)、PHP(登録商標)、Perl(登録商標)、HTML、CSS、JavaScript(登録商標)、VBScript(登録商標)、ASPX、Microsoft .NET(登録商標)、および/または同類のものなどの、プログラミング言語で書くことが可能である。エンジンは、実行可能プログラムでコンパイルしてもよいし、インタプリタ形式のプログラミング言語で書いてもよい。ソフトウェアエンジンは、他のエンジンから、またはこれ自体から呼び出すことができる。一般に、本明細書で述べるエンジンは、他のエンジンとマージすることができる論理モジュール、またはサブエンジンに分割することができる論理モジュールを指す。エンジンを任意のタイプのコンピュータ可読媒体またはコンピュータ記憶デバイスに記憶することができ、1つまたは複数の汎用コンピュータ上に記憶し、1つまたは複数の汎用コンピュータによって実行することができる。したがって、エンジンまたはこの機能を設けるように構成された特殊目的コンピュータを作製することができる。
【0024】
示すように、肌色決定デバイス104はまた、訓練データストア216、モデルデータストア218、および商品データストア220も含む。当業者によって理解されるように、本明細書に記載される「データストア」は、コンピューティングデバイスによるアクセス用にデータを記憶するように構成された任意の適当なデバイスであってよい。データストアの一例は、1つまたは複数のコンピューティングデバイス上で実行され、高速ネットワーク上でアクセス可能な、信頼性の高い高速リレーショナルデータベース管理システム(DBMS)である。データストアの別な例としては、キーバリューストアがある。しかし、他の任意の適当なストレージ技術および/またはデバイス(クエリに応答して記憶データを迅速かつ確実に提供することができる技術および/またはデバイス)を使用してもよく、コンピューティングデバイスは、ネットワーク上ではなくローカルにアクセス可能であってもよく、またはクラウドベースのサービスとして提供されてもよい。また、データストアは、以下でさらに述べるように、コンピュータ可読記憶媒体上に組織化方法で記憶されたデータを含んでもよい。当業者であれば、本開示の範囲から逸脱することなく、本明細書に記載される別々のデータストアが単一のデータストアに結合されてもよく、および/または本明細書に記載される単一のデータストアが複数のデータストアに分離されてもよいことが認識されよう。
【0025】
いくつかの実施形態では、訓練エンジン208は、訓練データストア216に記憶された訓練データにアクセスし、訓練データを使用して1つまたは複数の機械学習モデルを生成するように構成される。訓練エンジン208は、生成された機械学習モデルをモデルデータストア218に記憶することができる。いくつかの実施形態では、肌色決定エンジン210は、画像に描かれた肌色を推定するために、モデルデータストア218に記憶された1つまたは複数の機械学習モデルを使用して画像を処理するように構成される。いくつかの実施形態では、画像正規化エンジン212は、行われる決定の精度を向上させるために、訓練エンジン208または肌色決定エンジン210に画像が提供される前に、画像を前処理するように構成される。いくつかの実施形態では、商品推薦エンジン214は、決定された肌色に基づいて商品データストア220に記憶された1つまたは複数の商品を推薦するように構成される。
【0026】
図2には、モバイルコンピューティングデバイス102または肌色決定デバイス104が設けるものとして様々な構成要素が図示されているが、いくつかの実施形態では、構成要素のレイアウトは異なっていてもよい。例えば、いくつかの実施形態では、モバイルコンピューティングデバイス102が、画像を肌色決定デバイス104に送信することなくカメラ202によって取り込まれた画像中の肌色を決定できるように、肌色決定エンジン210およびモデルデータストア218がモバイルコンピューティングデバイス102に存在してもよい。別の例として、いくつかの実施形態では、構成要素のすべてが、単一のコンピューティングデバイスによって設けられてもよい。さらに別の例として、いくつかの実施形態では、複数のコンピューティングデバイスが連携して、肌色決定デバイス104が設けるものとして図示された機能を提供してもよい。
【0027】
図3は、本開示の様々な態様に係る、画像中の顔の肌色を推定するための機械学習モデルを訓練する方法の非限定的な例示的実施形態を示すフローチャートである。方法300において、1組の訓練データが収集され、肌色決定デバイス104は、訓練データを使用して、1つまたは複数の機械学習モデルを生成する。そしてこの機械学習モデルを使用して、制御されていない照明条件にもかかわらず、画像中の肌色を推定することができる。
【0028】
ブロック302において、モバイルコンピューティングデバイス102のユーザインターフェースエンジン206は、訓練被写体の肌色情報を受信する。この肌色情報は、訓練被写体が写る画像の正解(ground truth)またはタグ付け情報として使用される。いくつかの実施形態では、ユーザインターフェースエンジン206は、ユーザが肌色情報の入力を可能にするインターフェースを提示する。いくつかの実施形態では、肌色情報は、肌色を決定するための業界標準技術(色票との比較や分光光度計によって決定された値など)を使用してユーザによって収集されてもよい。いくつかの実施形態では、肌色情報は、ユーザインターフェースを使用する代わりに分光光度計などのデバイスから電子的に収集されてもよい。いくつかの実施形態では、画像の一部に、基準色票が描かれている場合がある。このような実施形態では、基準色票の描写に基づいて画像に色補正を適用することにより、画像自体から肌色情報を決定することが可能である。
【0029】
ブロック304において、モバイルコンピューティングデバイス102のデータ収集エンジン204は、モバイルコンピューティングデバイス102のカメラ202を使用して、訓練被写体の1つまたは複数の訓練画像を取り込む。いくつかの実施形態では、訓練被写体が持つモバイルコンピューティングデバイス102の前面カメラ202が、訓練画像を取り込むために使用されてもよい。いくつかの実施形態では、訓練画像は、異なる照明条件で収集されてもよい。いくつかの実施形態では、訓練画像は、個々の画像であってもよい。いくつかの実施形態では、カメラ202でビデオを録画することによって、複数の訓練画像を収集してもよい。いくつかの実施形態では、ビデオを録画している間に訓練被写体が移動する(円形に回転するなど)ことによって、照明条件が変化してもよい。この場合、ビデオから個々のフレームを抽出することによって、複数の訓練画像を生成することができる。複数の訓練画像を生成するためにビデオを取り込むことは、少なくとも、異なる照明条件で大量の訓練データを生成する効率を大幅に向上させるため、有益であり得る。
【0030】
ブロック306において、データ収集エンジン204は、肌色情報および1つまたは複数の訓練画像を肌色決定デバイス104に送信する。上述したように、この送信は、任意の適当な有線通信技術または無線通信技術を使用して行うことができる。ブロック308において、肌色決定デバイス104の訓練エンジン208は、訓練被写体用の肌色情報を訓練データストア216に記憶する。肌色情報を、訓練画像の処理の所望の結果を示すタグ付けデータとして使用することができる。
【0031】
ブロック310において、肌色決定デバイス104の画像正規化エンジン212は、1つまたは複数の訓練画像を正規化し、正規化された1つまたは複数の訓練画像を訓練データストア216に記憶する。いくつかの実施形態では、訓練画像の正規化は任意選択であり、方法300の残り(ブロック310以外)の部分は、正規化されていない生の訓練画像で動作してよい。いくつかの実施形態では、1つまたは複数の訓練画像の正規化は、機械学習モデルの精度を向上させるのに役立てることができる。
【0032】
図4は、本開示の様々な態様に係る、顔を含む画像の正規化の非限定的な例示的実施形態を示す概略図である。示されるように、モバイルコンピューティングデバイス102は、訓練被写体の画像402を取り込み、モバイルコンピューティングデバイス102のディスプレイデバイス上に画像402を表示している。画像402には、画像402全体のほんの一部しか占めていない中心から外れている顔も含まれる。そのため、画像402に基づいて肌色を推定するために機械学習モデルを訓練することは困難である可能性がある。画像中の非顔領域の量を減らし、画像の顔領域を一貫した位置に配置することが望ましい場合がある。
【0033】
第1の正規化アクション404では、画像正規化エンジン212は、顔検出アルゴリズムを使用して、画像404のうち顔が描かれている部分を検出する。画像正規化エンジン212は、顔検出アルゴリズムを使用して、顔を含むバウンディングボックス406を見つけ出すことができる。第2の正規化アクション408では、画像正規化エンジン212は、画像408中のバウンディングボックス406を中心にするために画像408を変更することができる。第3の正規化アクション410では、画像正規化エンジン212は、画像410をズームして、バウンディングボックス406を画像410中で可能な限り大きくすることができる。正規化アクションを行うことによって、画像正規化エンジン212は、複数の画像間のレイアウトおよびサイズの差異を低減することができる。したがって、機械学習モデルの訓練および精度を向上させることができる。いくつかの実施形態では、異なる正規化アクションが発生する可能性がある。例えば、いくつかの実施形態では、画像正規化エンジン212は、バウンディングボックス406をセンタリングおよびズームする代わりに、画像をバウンディングボックス406にクロップしてもよい。別の例として、いくつかの実施形態では、画像正規化エンジン212は、異なるカメラ202または異なるモバイルコンピューティングデバイス102によって収集された他の画像と同等となるように、ビット深度を減少または増加させてもよく、画像の画素をアンダーサンプリングまたはオーバーサンプリングしてもよい。
【0034】
図3に戻り、決定ブロック312において、もっと多くの訓練データを収集するかどうかに関する決定を行う。この決定は、機械学習モデルを訓練するのに十分であると管理者によってみなされる、訓練データの所定の閾値量に基づいてもよい。もっと多くの訓練データを収集することが決定された場合、決定ブロック312の結果はYESであり、方法300はブロック302に戻り、新しい訓練被写体の訓練データを収集する。そうでなく十分な訓練データが収集された場合、決定ブロック312の結果はNOである。
【0035】
ブロック314において、訓練エンジン208は、訓練データストアに記憶された肌色情報および正規化訓練画像を使用して、1つまたは複数の機械学習モデルを訓練する。いくつかの実施形態では、第1の機械学習モデルは、正規化訓練画像を入力として用い、推定された照明色を出力するように訓練されてもよく、第2の機械学習モデルは、正規化訓練画像および推定された照明色を入力として用い、推定された肌色を出力するように訓練されてもよい。いくつかの実施形態では、単一の機械学習モデルが、正規化訓練画像を入力として用い、推定された肌色を出力するように訓練されてもよい。第1の機械学習モデルおよび第2の機械学習モデルを使用することは、推定された照明色を使用して画像の表示色を修正したり、または画像中の他のオブジェクトの色を検出したりできるという点で有益であり得る。一方、単一の機械学習モデルを使用することは、訓練時間および複雑さを低減するという点で有益であり得る。いくつかの実施形態では、機械学習モデルは、ニューラルネットワークとできる(順番伝播型ニューラルネットワーク、畳み込みニューラルネットワーク、および回帰型ニューラルネットワークを含むがこれらに限定されない)。いくつかの実施形態では、勾配降下法(確率的勾配降下法、バッチ勾配降下法、およびミニバッチ勾配降下法を含むがこれらに限定されない)を含むがこれに限定されない、任意の適当な訓練技術を使用してもよい。
【0036】
ブロック316において、訓練エンジン208は、1つまたは複数の機械学習モデルをモデルデータストア218に記憶する。いくつかの実施形態では、モデルデータストア218部分は、モバイルコンピューティングデバイス102または別のデバイス上に存在してもよく、この場合、訓練エンジン208は、モデルデータストア218部分を保持する他のデバイスに1つまたは複数の機械学習モデルを送信することができる。
【0037】
図5は、本開示の様々な態様に係る、画像中の顔の肌色を推定するために機械学習モデルを使用する方法の非限定的な例示的実施形態を示すフローチャートである。方法500において、肌色決定デバイス104は、ライブの被写体の画像中の肌色を推定するために、上述した方法300によって生成された1つまたは複数の機械学習モデルを使用する。この被写体と方法300で分析された訓練被写体とを区別するために、方法500ではこの被写体を「ライブ被写体」と呼ぶ。訓練被写体については正解肌色情報が利用可能であったが、ライブ被写体についてはこのような情報は利用することができない。
【0038】
ブロック502において、モバイルコンピューティングデバイス102のデータ収集エンジン204は、モバイルコンピューティングデバイス102のカメラ202を使用して、ライブ被写体の1つまたは複数の画像を取り込む。ブロック304において訓練被写体の1つまたは複数の画像を取り込むために使用されたのと類似の技術(単一の画像を取り込むステップ、またはビデオを取り込むステップ、およびビデオのフレームから画像を抽出するステップなど)を使用して、ライブ被写体の1つまたは複数の画像を取り込むことができる。
【0039】
いくつかの実施形態では、モバイルコンピューティングデバイス102およびカメラ202は、方法300のブロック304で使用されるモバイルコンピューティングデバイス102および/またはカメラ202と同様のタイプでもよい。例えば、ブロック304のモバイルコンピューティングデバイスはiPhone6(登録商標)であってもよく、ブロック304のカメラはiPhone6(登録商標)の前面カメラであってもよい。一方、ブロック502のモバイルコンピューティングデバイスは同じまたは異なるiPhone6(登録商標)であってもよく、ブロック502のカメラは、やはり前面カメラであってもよい。いくつかの実施形態では、正規化ステップおよび機械学習モデルを、訓練データおよびライブ被写体の画像を収集するために使用されるモバイルコンピューティングデバイス102およびカメラ202のモデルに合わせてカスタマイズしてもよい。いくつかの実施形態では、ブロック304で、ブロック502とは異なるタイプのモバイルコンピューティングデバイス102および/またはカメラ202を使用してもよく、正規化中に、取り込まれた画像間の差異を最小化することができる。
【0040】
ブロック504において、データ収集エンジン204は、ライブ被写体の1つまたは複数の画像を肌色決定デバイス104に送信する。上記のように、データ収集エンジン204は、任意の適当な有線通信技術または無線通信技術を使用して、画像を肌色決定デバイス104に送信することができる。
【0041】
ブロック506において、画像正規化エンジン212は、ライブ被写体の1つまたは複数の画像を正規化する。いくつかの実施形態では、ライブ被写体の画像の正規化は、ブロック310で訓練被写体の画像上で実行された正規化と同じである。非限定的な一例として、
図4に図示されたアクションを、訓練対象の画像に適用されたアクションと同様の方法で、ライブ被写体の画像に適用してもよい。
【0042】
ブロック508では、肌色決定デバイス104の肌色決定エンジン210は、ライブ被写体の正規化された1つまたは複数の画像および1つまたは複数の機械学習モデルを使用して、ライブ被写体の肌色を決定する。いくつかの実施形態では、ライブ被写体の正規化された1つまたは複数の画像は、照明色を推定するための第1の機械学習モデルへの入力として提供され、次に、ライブ被写体の正規化された1つまたは複数の画像および照明色は、肌色を推定するための第2の機械学習モデルへの入力として提供される。いくつかの実施形態では、ライブ被写体の正規化された1つまたは複数の画像は、肌色を直接推定する単一の機械学習モデルへの入力として提供される。いくつかの実施形態では、複数の正規化画像を、単一の機械学習モデルへ(または、第1の機械学習モデルへ、次いで第2の機械学習モデルへ)の入力として、同時に提供することができる。いくつかの実施形態では、正規化画像は一度に1つずつ分析されてもよく、正規化画像の推定された肌色を、平均化するか、または他の方法で組み合わせて、最終肌色決定を生成することができる。いくつかの実施形態では、ライブ被写体の画像は、正規化せずに機械学習モデルによって処理されてもよい。
【0043】
ブロック510において、肌色決定エンジン210は、肌色をモバイルコンピューティングデバイス102に送信する。いくつかの実施形態では、ユーザインターフェースエンジン206は、肌色に関連付けられた名前や値をユーザに提示することができる。いくつかの実施形態では、ユーザインターフェースエンジン206は、モバイルコンピューティングデバイス102のディスプレイ上でユーザへ提示するために色を再現することができる。
【0044】
ブロック512において、肌色決定デバイス104の商品推薦エンジン214は、肌色に基づいて推薦する1つまたは複数の商品を決定する。ブロック514において、商品推薦エンジン214は、1つまたは複数の商品をモバイルコンピューティングデバイス102に送信する。次いで、ユーザインターフェースエンジン206は、ユーザに商品を提示することができ、これにより、ユーザが商品を購入するか、または他の方法で入手することが可能になる。
【0045】
いくつかの実施形態では、商品推薦エンジン214は、商品データストア220において、決定された肌色にマッチする1つまたは複数の商品を決定することができる。これは、ユーザの肌色にマッチすることを意図したファンデーションなどの商品に特に有用であり得る。いくつかの実施形態では、商品推薦エンジン214は、商品データストア220において、肌色を補完するが肌色にマッチしない1つまたは複数の商品を決定することができる。これは、肌色と正確にマッチすることがあまり望ましくないアイシャドウやリップカラーなどの商品に特に有用であり得る。いくつかの実施形態では、商品推薦エンジン214は、推薦システムなどの別の機械学習モデルを使用して、肌色がマッチするまたは類似する他のユーザが好む商品に基づいて、商品データストア220から商品を決定することができる。いくつかの実施形態では、既存の商品が肌色にマッチしない場合、商品推薦エンジン214は、肌色にマッチするであろう商品を作製するための成分を決定することができ、肌色にマッチするであろうカスタム商品を作製するための調合システムにこの成分を提供することができる。
【0046】
図6は、本開示のコンピューティングデバイスとして使用するのに適切な例示的なコンピューティングデバイス600の態様を示すブロック図である。複数の異なるタイプのコンピューティングデバイスを上で論じたが、例示的なコンピューティングデバイス600では、多くの異なるタイプのコンピューティングデバイスに共通する様々な要素を描写する。
図6は、ネットワーク上のデバイスとして実装されるコンピューティングデバイスを参照して述べられるが、以下の説明は、サーバ、パーソナルコンピュータ、携帯電話、スマートフォン、タブレットコンピュータ、組み込みコンピューティングデバイス、および本開示の実施形態の一部を実装するために使用することができる他のデバイスに適用可能である。さらに、当業者等は、コンピューティングデバイス600が、現在利用可能なデバイス、またはまだ開発されていないデバイスの任意の数のうちのいずれか1つとできることを認識するであろう。
【0047】
この最も基本的な構成では、コンピューティングデバイス600は、通信バス606によって接続された少なくとも1つのプロセッサ602とシステムメモリ604を含む。正確な構成およびデバイスのタイプに応じて、システムメモリ604は、揮発性メモリまたは不揮発性メモリ(読み取り専用メモリ(「ROM」)、ランダムアクセスメモリ(「RAM」)、EEPROM、フラッシュメモリ、または類似のメモリ技術など)とできる。当業者等は、システムメモリ604が、典型的に、データモジュールおよび/またはプログラムモジュールを記憶することを認識するであろう。これらのモジュールは、プロセッサ602に直ちにアクセス可能であり、および/またはプロセッサ602によって現在動作している。この点で、プロセッサ602は、命令の実行をサポートすることによって、コンピューティングデバイス600の計算センター(computational center)として機能することができる。
【0048】
図6にさらに図示されるように、コンピューティングデバイス600は、ネットワーク上で他のデバイスと通信するための1つまたは複数の構成要素を備えるネットワークインターフェース610を含んでもよい。本開示の実施形態は、一般的なネットワークプロトコルを使用して通信を行うために、ネットワークインターフェース610を利用する基本サービスにアクセスすることができる。また、ネットワークインターフェース610は、1つまたは複数の無線通信プロトコルを介して通信するように構成された無線ネットワークインターフェースも含んでもよい。1つまたは複数の無線通信プロトコルは、WiFi(登録商標)、2G、3G、LTE(登録商標)、WiMAX(登録商標)、Bluetooth(登録商標)、Bluetooth low energy(登録商標)および/または同類のものなどである。当業者によって理解されるように、
図6に図示されたネットワークインターフェース610は、システム100の特定の構成要素に関して上で述べられ図示された、1つまたは複数の無線インターフェースまたは物理通信インターフェースを表すことができる。
【0049】
図6に描かれた例示的実施形態では、コンピューティングデバイス600はまた、記憶媒体608を含む。しかし、サービスは、ローカル記憶媒体にデータを永続させるための手段を含まないコンピューティングデバイスを使用してアクセスされてもよい。したがって、
図6に描かれた記憶媒体608は、記憶媒体608が任意選択であることを示すために破線で表されている。いずれにせよ、記憶媒体608は、揮発性または不揮発性、取り外し可能または取り外し不可能とでき、情報を記憶することができる任意の技術を使用して実装されてもよい。この任意の技術は、ハードドライブ、ソリッドステートドライブ、CD ROM、DVD、または他のディスクストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ、および/または同類のものなどであるがこれらに限定されない。
【0050】
本明細書で使用されるように、用語「コンピュータ可読媒体」は、任意の方法または技術で実装された、揮発性および非揮発性ならびに取り外し可能および取り出し不可能な媒体を含む。任意の方法または技術は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報を記憶することができる。この点について、
図6に描かれたシステムメモリ604および記憶媒体608は、コンピュータ可読媒体の単なる例にすぎない。
【0051】
プロセッサ602、システムメモリ604、通信バス606、記憶媒体608、およびネットワークインターフェース610を含むコンピューティングデバイスの適当な実装は既知であり、商業的に入手可能である。図示を容易にするため、およびクレームされた主題の理解にとって重要でないため、
図6は、多くのコンピューティングデバイスのいくつかの典型的な構成要素を示していない。この点に関して、コンピューティングデバイス600は、キーボード、キーパッド、マウス、マイク、タッチ入力デバイス、タッチスクリーン、タブレット、および/または同類のものなどの入力デバイスを含んでもよい。このような入力デバイスは、有線接続または無線接続によってコンピューティングデバイス600に結合されてもよい。有線接続または無線接続は、RF、赤外線、シリアル、パラレル、Bluetooth(登録商標)、Bluetooth low energy(登録商標)、USB、または無線接続もしくは物理接続を用いた他の適当な接続プロトコルを含む。同様に、コンピューティングデバイス600はまた、ディスプレイ、スピーカ、プリンタなどの出力デバイスを含むこともできる。これらのデバイスは当技術分野で周知であるため、本明細書ではこれ以上図示または記述しない。
【0052】
例示的実施形態を図示して説明してきたが、本発明の趣旨および範囲から逸脱することなく、例示的実施形態に様々な変更が可能であることを理解されたい。例えば、上述した実施形態は、肌色を推定するためにモデルを訓練して使用するが、いくつかの実施形態では、肌色以外の肌の特徴が推定されてもよい。例えば、いくつかの実施形態では、1つまたは複数の機械学習モデルが、肌色に関して上述したものと類似の技術を使用してフィッツパトリックのスキンタイプを推定するように訓練されてもよく、次いで、このようなモデルを、ライブ被写体の画像のフィッツパトリックのスキンタイプを推定するために使用してもよい。
【0053】
さらに、上述の実施形態は、画像に描かれた顔全体の肌色を推定するモデルを訓練して使用するが、いくつかの実施形態では、1つまたは複数の畳み込みニューラルネットワーク画像分類器を訓練して使用して、画像中の顔の肌色のピクセルワイズの予測スコアを生成してもよい。このような実施形態は、肌色予測ユニットおよび予測された肌色ユニットを備えるシステムを含んでもよい。肌色予測ユニットは、1つまたは複数の畳み込みニューラルネットワーク画像分類器を使用してピクセルワイズの予測スコアを生成するように構成された計算回路を含む。予測された肌色ユニットは、顔の肌色の予測スコアに基づいて1つまたは複数の入力に応答する、ユーザの予測された肌色の仮想表示を生成するように構成された計算回路を含む。