(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-08-15
(54)【発明の名称】深層学習ネットワークを使用したユーザ画像からの身体組成の予測
(51)【国際特許分類】
G06T 7/00 20170101AFI20240807BHJP
A61B 5/107 20060101ALI20240807BHJP
A61B 5/0537 20210101ALN20240807BHJP
【FI】
G06T7/00 350C
G06T7/00 660B
A61B5/107 110
A61B5/107 420
A61B5/107 400
A61B5/107 130
A61B5/0537
【審査請求】未請求
【予備審査請求】有
(21)【出願番号】P 2023559779
(86)(22)【出願日】2022-03-24
(85)【翻訳文提出日】2023-11-20
(86)【国際出願番号】 US2022021637
(87)【国際公開番号】W WO2022204343
(87)【国際公開日】2022-09-29
(32)【優先日】2021-03-24
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】523367864
【氏名又は名称】ボディグラム,インコーポレイテッド
(74)【代理人】
【識別番号】100114775
【氏名又は名称】高岡 亮一
(74)【代理人】
【識別番号】100121511
【氏名又は名称】小田 直
(74)【代理人】
【識別番号】100202751
【氏名又は名称】岩堀 明代
(74)【代理人】
【識別番号】100208580
【氏名又は名称】三好 玲奈
(74)【代理人】
【識別番号】100191086
【氏名又は名称】高橋 香元
(72)【発明者】
【氏名】チャックリ,スバス
(72)【発明者】
【氏名】神山 恭平
(72)【発明者】
【氏名】コー,チョン,ジン
【テーマコード(参考)】
4C038
4C127
5L096
【Fターム(参考)】
4C038HJ05
4C038VA03
4C038VA04
4C038VB11
4C038VB14
4C038VB19
4C038VB28
4C038VB35
4C038VC05
4C127AA06
4C127GG10
5L096CA02
5L096DA02
5L096FA12
5L096FA59
5L096FA64
5L096FA69
5L096FA70
5L096HA11
5L096KA04
(57)【要約】
画像取り込みデバイスを使用して、ユーザの身体組成の予測を生成するためのシステム及び方法が開示される。本システム及び方法を使用して、単一のユーザ画像から、体脂肪率、含水率、筋肉量、骨量などの身体組成を予測することができる。本方法は、1つ以上のユーザ画像及び1つ以上のユーザパラメータを受信するステップと、1つ以上のユーザ画像に基づいて、1つ以上のキーポイントを生成するステップと、身体組成深層学習ネットワーク(DLN)を使用して、1つ以上のキーポイント及び1つ以上のユーザパラメータに基づいて、ユーザの身体組成の予測を生成するステップと、を含む。一実施形態では、身体組成DLNは、顔画像DLN、身体特徴DLN、及び出力DLNを備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
ユーザの身体組成を予測するためのコンピュータ実装方法であって、前記方法が、
1つ以上のユーザ画像、及び1つ以上のユーザパラメータを受信することと、
前記1つ以上のユーザ画像に基づいて、1つ以上のキーポイントを生成することと、
身体組成深層学習ネットワーク(DLN)を使用して、前記1つ以上のキーポイント及び前記1つ以上のユーザパラメータに基づいて、前記ユーザの前記身体組成の予測を生成することと、を含む、前記コンピュータ実装方法。
【請求項2】
1つ以上のキーポイントを前記生成することが、キーポイントDLNを使用することを含む、請求項1に記載のコンピュータ実装方法。
【請求項3】
前記身体組成DLNが、
前記ユーザの顔画像を受信するように、かつ顔特徴ベクトルを生成するように構成された顔画像DLNと、
前記1つ以上のユーザパラメータ、及び1つ以上のスケーリングされた外部身体特徴寸法のセットを受信するように、かつ身体特徴ベクトルを生成するように構成された身体特徴DLNと、
前記顔特徴ベクトル及び前記身体特徴ベクトルを受信するように、かつ前記ユーザの前記身体組成を生成するように構成された出力DLNと、を備える、請求項1に記載のコンピュータ実装方法。
【請求項4】
前記顔画像DLNが、畳み込みニューラルネットワーク(CNN)であり、前記身体特徴DLN及び前記出力DLNが、完全接続ニューラルネットワークである、請求項3に記載のコンピュータ実装方法。
【請求項5】
前記身体組成が、前記ユーザの筋肉、骨、含水量、または体脂肪の指標である、請求項1に記載のコンピュータ実装方法。
【請求項6】
前記身体組成が、除脂肪体重(LBM)、体脂肪体重(MBF)、軟質除脂肪体重(SLM)、及び体脂肪率(PBF)からなる群から選択される、請求項1に記載のコンピュータ実装方法。
【請求項7】
前記1つ以上のユーザパラメータが、身長、体重、性別、及び年齢からなる群から選択される、請求項1に記載のコンピュータ実装方法。
【請求項8】
前記1つ以上のユーザ画像から前記ユーザの頭部画像を抽出することであって、前記身体組成DLNを使用して前記身体組成を生成することが、前記頭部画像にさらに基づく、前記抽出すること、をさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項9】
前記頭部画像が、顔画像であり、前記顔画像が、顔抽出コンピュータビジョンモジュール及び顔抽出DLNのうちの1つを使用して抽出される、請求項8に記載のコンピュータ実装方法。
【請求項10】
前記1つ以上のユーザ画像が、少なくとも正面画像及び側面画像を含む、請求項1に記載のコンピュータ実装方法。
【請求項11】
前記1つ以上のユーザ画像が、完全に衣服を着用したユーザを表す、請求項1に記載のコンピュータ実装方法。
【請求項12】
前記1つ以上のユーザ画像から前記ユーザの身長を計算することと、
前記身長を前記ユーザパラメータのうちの1つとして利用することと、をさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項13】
前記1つ以上のユーザ画像から前記ユーザの体重を計算することと、
前記体重を前記ユーザパラメータのうちの1つとして利用することと、をさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項14】
前記1つ以上のキーポイントに基づいて、1つ以上のスケーリングされた外部身体特徴寸法のセットを生成することであって、前記身体組成DLNを使用して前記身体組成を生成することが、前記1つ以上のスケーリングされた外部身体特徴寸法のセットにさらに基づく、前記生成すること、をさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項15】
前記1つ以上のスケーリングされた外部身体特徴寸法のセットを前記生成することが、
前記1つ以上のキーポイントから1つ以上の外部身体特徴寸法のセットを生成することと、
前記1つ以上の外部身体特徴寸法のセットをスケーリングして、前記1つ以上のスケーリングされた外部身体特徴寸法のセットを生成することと、を含む、請求項14に記載のコンピュータ実装方法。
【請求項16】
前記1つ以上の外部身体特徴寸法が、身長、腹部深度、腹部長さ、腹部ウエスト、バスト回り、ヒップ回り、首回り、大腿部回り、アンダーバスト回り、上腕回り、ウエスト回り、及び手首回りからなる群から選択される、請求項15に記載のコンピュータ実装方法。
【請求項17】
ユーザの身体組成を予測するための、ハードウェアプロセッサによって実行可能なプログラムコードを記憶する、非一時的記憶媒体であって、前記プログラムコードが、
1つ以上のユーザ画像、及び1つ以上のユーザパラメータを受信することと、
前記1つ以上のユーザ画像に基づいて、1つ以上のキーポイントを生成することと、
身体組成深層学習ネットワーク(DLN)を使用して、前記1つ以上のキーポイント及び前記1つ以上のユーザパラメータに基づいて、前記ユーザの前記身体組成の予測を生成することと、を行うように構成されている、前記非一時的記憶媒体。
【請求項18】
1つ以上のキーポイントを前記生成することが、キーポイントDLNを使用することを含む、請求項17に記載の非一時的記憶媒体。
【請求項19】
前記身体組成DLNが、
前記ユーザの顔画像を受信するように、かつ顔特徴ベクトルを生成するように構成された顔画像DLNと、
前記1つ以上のユーザパラメータ、及び1つ以上のスケーリングされた外部身体特徴寸法のセットを受信するように、かつ身体特徴ベクトルを生成するように構成された身体特徴DLNと、
前記顔特徴ベクトル及び前記身体特徴ベクトルを受信するように、かつ前記ユーザの前記身体組成を生成するように構成された出力DLNと、を備える、請求項17に記載の非一時的記憶媒体。
【請求項20】
ユーザの身体組成を予測するためのシステムであって、前記システムが、非一時的記憶媒体及びハードウェアプロセッサを備え、前記非一時的記憶媒体が、コンピュータ実行可能プログラムコードを記憶し、前記コンピュータ実行可能プログラムコードが、前記ハードウェアプロセッサによって実行されたときに、前記ハードウェアプロセッサに、
1つ以上のユーザ画像、及び1つ以上のユーザパラメータを受信することと、
前記1つ以上のユーザ画像に基づいて、1つ以上のキーポイントを生成することと、
身体組成深層学習ネットワーク(DLN)を使用して、前記1つ以上のキーポイント及び前記1つ以上のユーザパラメータに基づいて、前記ユーザの前記身体組成の予測を生成することと、を行うためのステップを実行させる、前記システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、自動化された身体特徴測定の分野にあり、特に、画像取り込みデバイスを用いて撮影された画像を使用して、ユーザの身体組成の予測を生成することに関する。
【背景技術】
【0002】
本発明の背景は、単に、本発明の文脈、ならびにその用途及び使用を理解するのを助けるために提供され、先行技術とはみなされない場合がある。
【0003】
身体組成は、個々の健康及びウェルネスについての情報を提供する。身体組成の測定は、ヒト(または任意の他の生物)の身体を構成する1つ以上の個々の成分の定量的な測定である。身体組成は、体脂肪、筋肉、骨、水などの身体の構成成分のうちの1つの定量的な指標として定義され得る。そのような指標としては、体重、体積、及びその割合またはパーセンテージが挙げられる。例えば、肥満、すなわち、過剰な体脂肪の蓄積にかかわる病状は、肥満度指数(BMI)を通じて評価され得、これは、個人の体重及び身長に基づいた体脂肪の指標である。肥満はまた、体脂肪率(PBF)などのいくつかの他の指標を通じても評価され得る。「身体組成」、「身体組成予測」、及び「身体組成測定」は、本明細書において区別なく使用される。
【0004】
身体組成を測定するためのいくつかの既存のシステムは、3Dスキャンされた身体から取得された深度画像を利用して、体脂肪を予測する。通常、ユーザは、正確なBMIを測定するために、薄い衣服(例えば、下着)を着用する必要がある。スマートフォンアプリケーションを通じて迅速なサービスが広く普及するようになっているときには、3Dスキャン及び/またはユーザの薄着の要求は、費用がかかり、かつ煩雑である。
【0005】
身体組成を測定するための他のシステムは、ユーザの正面顔画像を利用して、身長、体重、及びBMIを予測する。多くのシステムは、統計データを使用して、または単一のタイプのデータ(例えば、顔画像)に基づいて、身体組成を測定し、したがって、堅牢性及び精度を欠いている予測を提供する。したがって、ユーザ画像をユーザパラメータ(例えば、ユーザの身長または性別)などの他の入力と組み合わせることによって、身体組成を正確に測定することができるシステムが必要である。
【0006】
この背景の下で、本発明の様々な実施形態が開発された。
【発明の概要】
【0007】
本発明のこの概要は、本発明、その適用、及び使用の全体像を提供するものであり、本発明の範囲を限定することを意図されておらず、このことは、図面と併せて読まれるときに、詳細な説明から明らかになるであろう。
【0008】
本発明は、ユーザ画像及び1つ以上のユーザパラメータを使用して、ユーザの身体組成の予測を生成するための方法及びシステムに関する。ユーザ画像及びパラメータは、モバイルスマートフォンなどの画像取り込みデバイスを介して取得され得る。
【0009】
一実施形態では、本発明は、ユーザの身体組成を予測するためのコンピュータ実装方法であって、この方法は、1つ以上のユーザ画像、及び1つ以上のユーザパラメータを受信することと、1つ以上のユーザ画像に基づいて、1つ以上のキーポイントを生成することと、身体組成深層学習ネットワーク(DLN)を使用して、1つ以上のキーポイント、及び1つ以上のユーザパラメータに基づいて、ユーザの身体組成の予測を生成することと、を含む。一実施形態では、1つ以上のキーポイントを生成することは、キーポイントDLNを使用することを含む。
【0010】
一実施形態では、身体組成DLNは、ユーザの顔画像を受信するように、かつ顔特徴ベクトルを生成するように構成された顔画像DLNと、1つ以上のユーザパラメータ、及び1つ以上のスケーリングされた外部身体特徴寸法のセットを受信するように、かつ身体特徴ベクトルを生成するように構成された身体特徴DLNと、顔特徴ベクトル及び身体特徴ベクトルを受信して、ユーザの身体組成を生成するように構成された出力DLNと、を含む。
【0011】
別の実施形態では、顔画像DLNは、畳み込みニューラルネットワーク(CNN)であり、身体特徴DLN及び出力DLNは、完全接続ニューラルネットワークである。
【0012】
一実施形態では、身体組成は、ユーザの筋肉、骨、含水量、または体脂肪の指標である。
【0013】
一実施形態では、身体組成は、除脂肪体重(LBM)、体脂肪体重(MBF)、軟質除脂肪体重(SLM)、及び体脂肪率(PBF)からなる群から選択される。
【0014】
一実施形態では、1つ以上のユーザパラメータは、身長、体重、性別、及び年齢からなる群から選択される。
【0015】
別の実施形態では、コンピュータによる実装方法は、1つ以上のユーザ画像からユーザの頭部画像を抽出することであって、身体組成DLNを使用して身体組成を生成することは、頭部画像にさらに基づく、抽出すること、をさらに含む。
【0016】
一実施形態では、頭部画像は、顔画像であり、顔画像は、顔抽出コンピュータビジョンモジュール及び顔抽出DLNのうちの1つを使用して抽出される。
【0017】
いくつかの実施形態では、1つ以上のユーザ画像は、少なくとも正面画像及び側面画像を含む。
【0018】
一実施形態では、1つ以上のユーザ画像は、完全に衣服を着用したユーザを表す。
【0019】
別の実施形態では、コンピュータによる実装方法は、1つ以上のユーザ画像からユーザの身長を生成することと、身長をユーザパラメータのうちの1つとして利用することと、をさらに含む。
【0020】
さらに別の実施形態では、コンピュータによる実装方法は、1つ以上のユーザ画像からユーザの体重を生成することと、体重をユーザパラメータのうちの1つとして利用することと、をさらに含む。
【0021】
一実施形態では、コンピュータによる実装方法は、1つ以上のキーポイントに基づいて、1つ以上のスケーリングされた外部身体特徴寸法のセットを生成することであって、身体組成DLNを使用して身体組成を生成することは、1つ以上のスケーリングされた外部身体特徴寸法のセットにさらに基づく、生成すること、をさらに含む。
【0022】
一実施形態では、1つ以上のスケーリングされた外部身体特徴寸法のセットを生成することは、1つ以上のキーポイントから1つ以上の外部身体特徴寸法のセットを生成することと、1つ以上の外部身体特徴寸法のセットをスケーリングして、1つ以上のスケーリングされた外部身体特徴寸法のセットを生成することと、を含む。
【0023】
いくつかの実施形態では、1つ以上の外部身体特徴寸法のセットをスケーリングすることは、(a)ユーザ画像のうちの1つに取り込まれた既知のサイズの対象物、(b)深度センサ、(c)ライダー(Lidar)、(d)拡張現実ソフトウェア開発キット(AR-SDK)を使用して検出された基平面の少なくとも3つの特徴の間の距離、及び(e)ユーザから受信された身長、ならびにユーザの正面画像及び側面画像のうちの1つから判定された画素高さ、のうちの1つを使用して判定されたスケール係数を使用する。
【0024】
他の実施形態では、1つ以上の外部身体特徴寸法は、身長、腹部深度、腹部長さ、腹部ウエスト、バスト回り、ヒップ回り、首回り、大腿部回り、アンダーバスト回り、上腕回り、ウエスト回り、及び手首回りからなる群から選択される。
【0025】
いくつかの実施形態では、本発明は、実行可能命令を記憶する非一時的コンピュータ可読記憶媒体であり、その命令は、プロセッサによって実行されたときに、プロセッサに、ユーザの身体組成を予測するためのプロセスを実施させ、その命令は、プロセッサに、前述のステップを実施させる。
【0026】
他の実施形態では、コンピュータプログラム製品が開示される。コンピュータプログラムは、ユーザの身体組成を予測するために使用され得、コンピュータ可読記憶媒体を用いて具現化されたプログラム命令またはプログラムコードを有するそのコンピュータ可読記憶媒体を含み得、プログラム命令は、プロセッサによって実行されて、プロセッサに、前述のステップを実施させる。
【0027】
様々な実施形態では、コンピュータ実行可能コンポーネントを記憶するメモリと、そのメモリに動作可能に結合され、かつそのメモリに記憶されたコンピュータ実行可能コンポーネントを実行するハードウェアプロセッサと、を含む、システムが記載され、そこでは、コンピュータ実行可能コンポーネントは、前述のステップを実行するプロセッサに通信可能に結合されたコンポーネントを含み得る。
【0028】
一実施形態では、本発明は、ユーザの身体組成を予測するためのシステムであり、このシステムは、2Dカメラ、プロセッサ、ディスプレイ、第1のメモリ、を有するユーザデバイスと、第2のメモリ及びデータ倉庫を含むサーバと、当該ユーザデバイスと当該サーバとの間の電気通信回線と、当該ユーザデバイス及び当該サーバの当該第1及び第2のメモリ上に具現化された複数のコンピュータコードと、を含み、当該複数のコンピュータコードは、実行されたときに、当該サーバ及び当該ユーザデバイスに、前述のステップを含むプロセスを実行させる。
【0029】
他の実施形態では、本発明は、少なくとも1つのプロセッサ、メモリ、及び当該メモリ上に具現化された複数のコンピュータコードを含む、コンピュータ化されたサーバであり、当該複数のコンピュータコードは、実行されたときに、当該プロセッサに、前述のステップを含むプロセスを実行させる。本発明の他の態様及び実施形態は、本明細書に説明されるステップを含む方法、プロセス、及びアルゴリズムを含み、また、本明細書に説明されるシステム及びサーバの動作の処理及びモードも含む。
【0030】
本発明のさらなる他の態様及び実施形態は、添付された図面と併せて読まれたときに、本発明の詳細な説明から明らかになるであろう。
【0031】
この明細書に組み込まれ、かつこの一部を構成する添付図面は、本発明の実施形態を例解し、説明とともに、開示される実施形態の原理を説明するのに役立つ。明確さ、単純さ、及び柔軟さのために、すべての要素、構成要素、または仕様が、必ずしもすべての図面において定義されるわけではない。本発明の特定のステップまたは実施形態に対応するすべての図面が、縮尺通りに描かれているわけではない。逆に、本明細書に説明される方法及びデバイスの性質、機能、及び製品の例解に重点が置かれる。
【0032】
本明細書に説明される本発明の実施形態は、例示的なものであり、限定的なものではない。ここで、以下の添付図面を参照して、例として、実施形態が説明されるであろう。
【図面の簡単な説明】
【0033】
【
図1】本発明の好ましい実施形態による、ユーザの身体組成を予測するためのシステムのブロック図を例解する。
【
図2】本発明の一実施形態による、深層学習を通じてユーザの身体組成を予測するための例示的なブロック図を例解する。
【
図3】本発明の例示的な実施形態による、生成されたキーポイントを示す、正面画像(正面図)及び側面画像(側面図)の例解的な図を示す。
【
図4】本発明の例示的な実施形態による、注釈付きキーポイント及び外部身体特徴寸法の計算を示す、正面画像(正面図)及び側面画像(側面図)の例解的な図を示す。
【
図5】本発明の例示的な実施形態による、ユーザの正面画像からの正面顔抽出のプロセスを例解する。
【
図6】本発明の例示的な実施形態による、ユーザの身体組成の予測を生成するための身体組成深層学習ネットワーク(DLN)の例解的な図を示す。
【
図7A】本発明の例示的な実施形態による、ユーザの身体組成の予測を生成するための身体組成DLNの詳細なアーキテクチャを示す。
【
図7B】本発明の例示的な実施形態による、ユーザの身体組成の予測を生成するための身体組成DLNの詳細なアーキテクチャを示す。
【
図8】本発明の一実施形態による、ユーザの身体組成を予測するための方法の例示的なフローチャートを示す。
【
図9】ユーザの軟質除脂肪体重(SLM)及び体脂肪率(PBF)を生成する際に、
図7A及び
図7Bの例解的な身体組成予測アーキテクチャを使用する、身体組成DLNの一実施形態の成績を示す表である。
【
図10】ユーザのSLMを生成する際に、
図7A及び
図7Bの例解的な身体組成予測アーキテクチャを使用する、身体組成DLNの一実施形態の精度を描写する密度分布を示す。
【
図11】ユーザのPBFを生成する際に、
図7A及び
図7Bの例解的な身体組成予測アーキテクチャを使用する、身体組成DLNの一実施形態の精度を描写する密度分布を示す。
【
図12】本発明の実施形態と併せて、ユーザの身体組成を予測するために使用することができるサーバ(管理コンピューティングエンティティ)の概略図を提供する。
【
図13】本発明の実施形態と併せて、ユーザの身体組成を予測するために使用することができるクライアント(ユーザコンピューティングエンティティ)を表す例解的な概略図を提供する。
【
図14】本発明の実施形態と併せて、クライアントサーバ環境におけるユーザの身体組成を予測するために使用することができる例解的なシステムアーキテクチャを示す。
【発明を実施するための形態】
【0034】
本発明は、同様の参照番号が同様の構造を示す添付図面と併せて読み取られる必要がある以下の詳細な説明を通じてより完全に理解されるであろう。上記及び以下の説明で引用されるすべての参考文献は、参照により、本明細書によって明示的に組み込まれる。
【0035】
ここでは、本発明の例示的な実施形態(複数可)に対して、詳細な参照が行われるであろう。「一実施形態」、「少なくとも1つの実施形態」、「実施形態」、「一例」、「例」、「例えば」などへの言及は、実施形態(複数可)または例(複数可)が特定の特徴、構造、特性、特質、要素、または限定を含み得るが、あらゆる当該実施形態または例が必ずしもその特定の特徴、構造、特性、特質、要素、または限定を含むわけではないことを示す。さらに、繰り返して使用される「実施形態では」という語句は、必ずしも同じ実施形態を指すわけではない。
【0036】
以下の説明では、説明を目的として、多数の具体的な詳細が、本発明の全体的な理解を提供するために記述される。しかしながら、本発明は、これらの特定の詳細が伴わなくても実践することができることが、当業者には明らかであろう。他の事例では、本発明を不明瞭にすることを回避するために、結線図、ユースケース、及び/または略図を使用して、構造、デバイス、動作、方法、及びプロセスが示される。以下の説明には、例解を目的として多くの細目が含まれるが、当業者は、提案された詳細に対して多くの変形及び/または変更が本発明の範囲内に存在することを認識するであろう。同様に、本発明の多くの特徴は、互いの観点から、または互いに併せて説明されるが、当業者は、これらの特徴の多くが他の特徴とは独立して提供することができることを認識するであろう。したがって、本発明のこの説明は、本発明に対する一般性を何ら損なうことなく、かつ本発明に対して限定を課すことなく、述べられる。
【0037】
本明細書で使用される場合、単数形「a」、「an」、及び「the」は、その文脈が別様に明示しない限り、複数の参照を含む。また、本明細書で使用される場合、測定された量と併せて「約」という用語は、測定を行い、かつ、測定の目的及び測定機器の精度に見合った注意レベルを働かせる際に当業者が予想するように、当該測定された量における正常なばらつきを指す。特定の実施形態では、「約」という用語は、列挙された数値の±10%を含み、このため、「約10」は、9~11を含むことになる。
【0038】
BODYGRAMは、本発明の実施形態を支える商標名であり、したがって、前述の商標名は、本発明の実施形態によって提供される製品/製造プロセスを指すために、本明細書及び図面において使用され得る。BODYGRAMという用語及びその等価物は、本発明、ならびに当該発明を提供する会社について説明ために、本の明細書では区別なく使用され得る。各図を参照して、本発明の実施形態が、ここで詳細に説明される。
【0039】
概要
異なる手法を使用して、ユーザの画像から身体組成を測定した。以前の手法は、一般に、ユーザが特定の姿勢を取り、何もない背景の正面でカメラから特定の距離に立ち、体にぴったりしたシャツを着用し、及び/または下着のみを着用しながら、部分的に裸になることを要求する。環境を制御し、かつユーザの煩雑さを著しくするそのような要件は、望ましくない。
【0040】
本発明の実施形態は、ユーザの少なくとも1つの画像、ユーザの身体キーポイント(例えば、ユーザの完全に衣服を着用した画像から取得された)、及び少なくとも1つのユーザパラメータ(例えば、年齢、身長など)を使用することによって、身体組成を推定するように構成されたシステム及び方法を提供する。本発明の一実施形態は、ユーザの正面顔画像、ユーザの身体キーポイント(例えば、完全に衣服を着用した正面画像及び側面画像から取得された)、及び1つ以上のユーザパラメータを使用することによって、身体組成を推定するように構成されたシステム及び方法を提供する。
【0041】
本発明は、任意のタイプの衣服を着用するユーザ、及び任意の距離で撮影された画像を有する2D画像(例えば、RGB赤緑青、RGB-D赤緑青深度、または白黒階調画像)から身体組成を正確に測定するためのシステム及び方法を提供し、その結果、どんなユーザも、容易に、ユーザ自身の画像を撮影し、ユーザの身体組成を測定することができる。たとえユーザが何を着用していても、高度化されたコンピュータビジョン及び深層学習技法を使用して、画像取り込みデバイスから提供される画像から、ユーザの身体組成を推定する。本発明のいくつかの実施形態は、画像取り込みデバイスに提供されるAR(拡張現実)SDK(ソフトウェア開発キット)を活用する。本開示では、「画像取り込みデバイス」という用語は、スマートフォン、タブレット、ラップトップ、またはデスクトップなどのコンピューティングデバイスの中に内蔵されるか、またはそのコンピューティングデバイスに接続される任意のカメラを表すために使用される。
【0042】
本発明の様々な実施形態は、ユーザ画像などの複数のデータタイプ、生成されたキーポイント、年齢、性別、身長、もしくは体重などの受信もしくは生成されたユーザパラメータ、ならびに他の統計データ(例えば、年齢及び/または性別によって分類された身長のデータベース)を組み合わせて、ユーザの身体組成の1つ以上の予測を生成する。入力データタイプの各々は、身体組成、ならびに身体組成の不正確な予測につながる可能性がある弱点(例えば、偏り)を推定するための有用な情報を所有し得る。1つ以上のデータタイプからの情報を、意味があるように組み合わせることによって、そのような本発明の実施形態は、いくつかのデータタイプに固有の弱点を補償し、したがって、より正確な予測結果を生成する。
【0043】
図1は、本発明の好ましい実施形態による、ユーザ(116)の身体組成(120)を測定するためのシステムのブロック図を例解する。このシステムは、画像取り込みデバイス(110)、サーバ、及びネットワーク(108)を含み、そこでは、サーバは、入力モジュール(102)、処理モジュール(104)、及びデータベース(106)を含む。画像取り込みデバイス(110)は、ユーザの少なくとも1つの画像を取り込むカメラ(112)を含む。
図1では、カメラ(112)は、ユーザ(116)の正面画像(114a)及び側面画像(114b)を取り込む。ユーザ(116)の正面画像(114a)及び側面画像(114b)は、
図1のように、完全に衣服を着用したユーザを表すことができる。しかしながら、ユーザ画像(複数可)(114a及び/または114b)は、ユーザを、下着のみの状態で、ぴったりした衣服の状態で、または裸の状態で示すことができる。ユーザ画像(複数可)(114a及び/または114b)は、通常、ユーザ(116)の全身を示す。
図1には、正面画像及び側面画像が表されているが、本発明の一実施形態によって身体組成を予測するには、1枚の画像で十分である。
【0044】
画像取り込みデバイス(110)は、スマートフォン、カメラ、タブレット、ラップトップ、デスクトップ、及びスキャナのうちの1つであり得るが、この画像取り込みデバイス(110)は、列挙されたデバイスに限定されない。画像取り込みデバイス(110)は、ユーザ(116)の年齢、性別、身長、及び体重などの1つ以上のユーザパラメータ(118)を受信するように構成されている。入力モジュール(102)は、ネットワーク(108)を介して画像取り込みデバイス(110)から、ユーザの正面画像(114a)及び/または側面画像(114b)、ならびに1つ以上のユーザパラメータ(118)を受信するように構成されている。
【0045】
ネットワーク(108)には、データを交換するための無線通信を確立するために、短波、マイクロ波、高周波、ワイヤレスフィディリティ(Wi-Fi)、Bluetooth、広域自動車通信システム(GSM)、符号分割多元アクセス(CDMA)、第2世代(2G)、第3世代(3G)、第4世代(4G)、4Gロングタームエボリューション(LTE)、LTEアドバンスト、または任意の他の通信技術もしくは標準規格などの技術を使用する無線通信回線が含まれ得る。別の実施形態では、ユーザの正面画像(114a)、側面画像(114b)、または1つ以上のユーザパラメータ(118)は、データベース(106)から取得され得る。1つ以上のユーザパラメータは、自動的に(例えば、正面(114a)もしくは側面(114b)画像、または他のユーザ画像に基づくか、あるいは1つ以上のデータベースから検索されるコンピュータビジョンアルゴリズムを使用して)判定され得るか、またはユーザ(例えば、ユーザ入力)から判定され得る。
【0046】
いくつかの実施形態では、処理モジュール(104)は、キーポイント深層学習モジュールまたは深層学習ネットワーク(DLN)を使用して、正面画像(114a)または側面画像(114b)からユーザ(116)の衣服の下に隠れた1つ以上の身体部分についての1つ以上の注釈キーポイントを識別し、1つ以上の注釈キーポイントに基づいてユーザ(116)の1つ以上の外部身体特徴寸法のセットを計算し、1つ以上のユーザパラメータ(118)及び1つ以上の注釈キーポイントに基づいてスケール係数を導出し、1つ以上の外部身体特徴寸法のセット及びスケール係数に基づいてユーザ(116)の1つ以上のスケーリングされた外部身体特徴寸法のセットを計算するように構成されている。
【0047】
深層学習技法と組み合わされた高度なコンピュータビジョンを使用して、1つ以上の身体部分についての1つ以上の注釈キーポイントを識別する。「注釈キーポイント」及び「キーポイント」という表現は、今後、区別なく使用される。
【0048】
スケール係数を使用して、ユーザの正面画像及び/または側面画像の画素寸法からユーザの現実世界の寸法にスケーリングする。一実施形態では、スケール係数は、ユーザから受信された身長(すなわち、1つ以上のユーザパラメータ)、ならびにユーザの正面画像及び側面画像のうちの少なくとも1つから判定された画素高さ(すなわち、1つ以上の注釈キーポイント)に基づいて導出される。
【0049】
1つ以上の外部身体特徴寸法のセットは、ユーザに関連付けられた身長、腹部深度、腹部長さ、腹部ウエスト、バスト回り、ヒップ回り、首回り、大腿部回り、アンダーバスト回り、上腕回り、ウエスト回り、及び手首回りからなる群から選択され得る。
図2に示すように、1つ以上の外部身体特徴寸法のセットは、1つ以上のスケーリングされた外部身体特徴寸法のセットを計算するために使用される。
【0050】
いくつかの実施形態では、処理モジュール(104)は、コンピュータビジョンモジュールを通じて、ユーザの画像からユーザの頭部画像を抽出するように構成され、その場合、身体組成DLNを使用して身体組成を生成することは、頭部画像にさらに基づく。さらに、処理モジュール(104)は、頭部画像DLNを起動して、ユーザの頭部画像を受信し、かつユーザの頭部画像からユーザの頭部特徴ベクトルを生成するように構成され得、その場合、身体組成DLNを使用して身体組成を生成することは、頭部特徴ベクトルにさらに基づく。
【0051】
1つの例解的な実施形態では、処理モジュール(104)は、顔抽出コンピュータビジョンモジュールを使用して、ユーザ(116)の正面画像(114a)からユーザの顔画像を抽出するように構成される。さらに、処理モジュール(104)は、顔画像深層学習モジュールを起動して、ユーザの顔画像を受信し、かつユーザの顔画像からユーザの顔特徴ベクトルを生成するように構成される。顔画像深層学習モジュールは、畳み込みニューラルネットワーク(CNN)であり得る。ただし、顔特徴ベクトルを生成するための任意の他のニューラルネットワーク、機械学習(ML)、または人工知能(AI)モジュールを使用することは、本発明の範囲内である。一実施形態では、処理モジュール(104)は、配布ライブラリのオープンソースマシンビジョンライブラリを使用して、ユーザの正面画像からユーザの顔画像を抽出するように構成される。
【0052】
さらに、
図2に例解されているように、処理モジュール(104)は、身体特徴深層学習モジュールを起動して、ユーザ(116)の1つ以上のスケーリングされた外部身体特徴寸法のセット、及び1つ以上のユーザパラメータ(118)を受信し、かつユーザ(116)の1つ以上のスケーリングされた外部身体特徴寸法のセット、及び1つ以上のユーザパラメータ(118)からユーザの身体特徴ベクトルを生成するように構成される。
【0053】
さらに、
図2に例解されているように、処理モジュール(104)は、出力深層学習モジュールを起動して、顔画像深層学習モジュールからのユーザの顔特徴ベクトル、及び身体特徴深層学習モジュールからのユーザの身体特徴ベクトルを受信し、かつユーザの顔特徴ベクトル及びユーザの身体特徴ベクトルに基づいて、ユーザの身体組成(120)の予測を生成するように構成される。
【0054】
処理モジュール(104)は、身体組成(120)を画像取り込みデバイス(110)のディスプレイに送信する。身体特徴深層学習モジュール、及び出力深層学習モジュールは、
図7A及び
図7Bに示すように、完全接続ニューラルネットワークであり得る。しかしながら、身体特徴ベクトルまたは身体組成を生成するために任意の他のニューラルネットワーク、機械学習(ML)、または人工知能(AI)モジュールを使用することは、本発明の範囲内である。
【0055】
身体組成(120)は、生物(例えば、ヒト、動物)の身体の内部構成成分の任意の指標である。例えば、身体組成(120)は、ユーザ(116)の筋肉体重、骨体重、含水量、及び体脂肪のうちのいずれかの指標であり得る。
図1は、ユーザ(116)が22%の体脂肪、30%の筋肉体重、14%の骨体重、及び58%の含水量を有することを示す、表示された身体組成(120)の例解的な例を示している。身体組成(120)は、除脂肪体重(LBM)、体脂肪量(MBF)、軟質除脂肪体重(SLM)、及び体脂肪率(PBF)からなる群から選択され得る。
【0056】
複数のタイプの身体組成は、本明細書に説明されるシステム及び方法によって予測され得る。例えば、骨格筋肉量(すなわち、骨及び腹部の臓器体重のない除脂肪体重)を推定することは、本発明の範囲内である。身体内の任意のタイプの筋肉、骨、及び/または臓器の任意の相対的または絶対的定量化の推定は、本発明の範囲内である。
【0057】
一実施形態では、1つ以上のユーザパラメータから、肥満度指数(BMI)が計算され得る。BMIは、身体の体重及び身長の両方を使用して身体測定抽出を較正するために使用され得る。追加のユーザパラメータには、とりわけ、人種、出身国、運動能力、及び/または、ユーザに関連付けられた他の人口統計学的情報のうちの少なくとも1つが含まれ得る。ユーザの身長を使用して、正面図写真及び/または側面図写真を正規化またはスケーリングし、画像内のヒトの参照を提供し得る。一実施形態では、他のユーザパラメータはまた、1つ以上のサードパーティデータソースから、またはサーバから自動的に取得され得る。
【0058】
本発明のいくつかの実施形態は、画像取り込みデバイスに提供されたAR(拡張現実)キットSDK(ソフトウェア開発キット)を活用して、ユーザの身体組成を測定する。
【0059】
一実施形態では、ユーザの3つ以上の画像を利用して、正面画像、側面画像、及びほぼ45度の角度で撮影された画像を含む、身体組成を測定する。いくつかの実施形態では、ユーザビデオ、例えば、正面画像、90度、180度、さらには360度のユーザ視界が使用され得る。ユーザビデオから、正面画像、側面画像、及び/または45度のユーザ視界などの1つ以上の静止フレームまたは画像が、ビデオから抽出され得る。システムは、画像及びスケール係数を使用して、(例えば、1つ以上のAIアルゴリズムを使用して)身体組成を自動的に測定し得る。いくつかの実施形態では、ユーザは、より正確な結果のために、ユーザがぴったりした衣服、通常の衣服、またはゆったりした衣服を着用しているかどうかを示すことができる。他の実施形態では、ユーザは、より正確な結果のために、ユーザが裸であるか、下着を着用しているか、または完全に衣服を着用しているかどうかを示すことができる。
【0060】
「深層学習モジュール」及び「深層学習ネットワーク(DLN)」という用語は、本明細書において区別なく使用される。本明細書で説明される深層学習モジュール及びネットワークと同様の特徴ベクトル及び出力を生成するための他のニューラルネットワーク、機械学習(ML)、または人工知能(AI)モジュールを使用することは、本発明の範囲内である。
【0061】
図2は、本発明の一実施形態による、深層学習を通じてユーザの身体組成を予測するための例示的なブロック図を例解する。側面画像(212)及び正面画像(213)は、画像取り込みデバイス(210)から受信されて、キーポイント(234)を識別及び生成する。1つ以上の注釈キーポイント(236)は、第1のキーポイント深層学習ネットワーク(DLN)またはモジュール(230)を使用して側面画像(212)から生成され、1つ以上の注釈キーポイント(238)は、第2のキーポイント深層学習モジュール(232)を使用して正面画像(213)から生成される。第1のキーポイント深層学習モジュール(230)及び第2のキーポイント深層学習モジュール(232)は、注釈キーポイント訓練データに対して訓練されており、注釈キーポイント訓練データには、1つ以上のサンプルユーザのための1つ以上の画像、及び1つ以上のサンプルユーザのための注釈キーポイントのセットが含まれる。次いで、側面画像(212)上で生成された1つ以上の注釈キーポイント(236)、及び正面画像(213)上で生成された1つ以上の注釈キーポイント(238)は、外部身体特徴計算(240)ステップで使用される。したがって、外部身体特徴寸法(242)が生成される。
【0062】
受信されたユーザ画像が部分的にまたは完全に衣服を着用したユーザを示す実施形態では、キーポイントDLNを訓練して、ユーザ衣服の下に隠れた身体部分の輪郭を判定するキーポイントを生成する。1つ以上のMLモジュールを使用して、ユーザ衣服の下に隠れたキーポイントを検出することによってユーザ画像から外部身体特徴寸法(例えば、身体部分測定値)を生成するための方法の例示的な実施形態については、米国特許第10,321,728号により詳細に記載されており、これは、本明細書に完全に記述されているかのように、本明細書によって、その全体が参照により本明細書に組み込まれる。
【0063】
様々な実施形態では、ユーザパラメータ(250)が受信される。このユーザパラメータ(250)は、ユーザに関連付けられた年齢、身長、体重、及び性別(例えば、年齢:20歳、性別:男、身長:70インチ、体重:160ポンド)を含み得る。いくつかの実施形態では、1つ以上のユーザパラメータは、受信されないが、逆に、受信されたユーザ画像から生成される。ユーザ画像から身長を生成ための方法の例示的な実施形態については、米国特許第10,636,158号により詳細に記載されており、これは、本明細書に完全に記述されているかのように、本明細書によって、その全体が参照により本明細書に組み込まれる。1つ以上のMLモジュールを使用して2Dキーポイントを検出することによってユーザ画像から体重を生成するための方法の例示的な実施形態については、米国特許第10,962,404号により詳細に記載されており、これは、本明細書に完全に記述されているかのように、本明細書によって、その全体が参照により本明細書に組み込まれる。
【0064】
スケール係数計算ステップ(252)において、ユーザパラメータ(250)(好ましくは、ユーザの身長)、側面画像(212)上に生成された1つ以上の注釈キーポイント(236)、及び正面画像(213)上に生成された1つ以上の注釈キーポイント(238)は、スケール係数(254)の計算のために使用され得る。スケール係数を生成する、例えば、ユーザの受信された現実世界の身長、及び注釈キーポイントから判定された画素高さに基づいてスケール係数を生成する、ための複数の方法は、本発明の範囲内である。したがって、スケーリングされた外部身体特徴寸法のセット(248)は、スケール係数(254)及び外部身体特徴寸法(242)に基づいて、正規化ステップ(246)を通じて計算される。「スケーリング」及び「正規化」という用語は、本明細書において、区別なく使用される。
【0065】
正面顔抽出ステップ(220)において、ユーザの顔は、顔抽出コンピュータビジョンモジュールを使用して、ユーザの正面画像(213から抽出されて、顔画像(222)を取得し得る。顔抽出コンピュータビジョンモジュールは、1つ以上のサンプルユーザについての1つ以上の正面画像、1つ以上のサンプルユーザについての顔画像、または、ユーザの顔を抽出するための手動で判定されたポイントまたはフレームを含む、顔訓練データに対して訓練されている。破線(219)によって示された代替的な実施形態では、顔画像(222)または頭部画像は、画像取り込みデバイスまたはユーザデバイス(210)によって直接取り込まれる。
【0066】
最後に、予測ステップ(260)は、(a)顔画像深層学習モジュール(262)を使用して、顔画像(222)から顔特徴ベクトル(272)を生成すること、(b)身体特徴深層学習モジュール(264)を使用して、スケーリングされた外部身体特徴寸法(248)及びユーザパラメータ(250)から身体特徴ベクトル(274)を生成すること、ならびに、(c)顔特徴ベクトル(272)及び身体特徴ベクトル(274)に基づいて、出力深層学習モジュール(266)を使用して、内部身体組成(280)の予測を生成すること、によって、ユーザの内部身体組成(280)の予測を生成する。したがって、
図1に示すように、内部身体組成(280)は、画像取り込みデバイス(210)に出力される。
【0067】
一実施形態では、内部身体組成予測器(260)の3つのコンポーネント、すなわち、顔画像深層学習モジュール(262)、身体特徴深層学習モジュール(264)、及び出力深層学習モジュール(266)は、単一のDLNとして、顔画像、スケーリングされた外部身体特徴寸法、ユーザパラメータ、及び複数のサンプルユーザの身体組成を含む、身体組成データに対してともに訓練された。
【0068】
他の実施形態では、それらのモジュールは、顔画像、スケーリングされた外部身体特徴寸法、ユーザパラメータ、顔特徴ベクトル、身体特徴ベクトル、及び複数のサンプルユーザの身体組成を含む、身体組成データに対して別個に訓練された。例えば、出力深層学習モジュール(266)は、1つ以上のサンプルユーザのために、顔特徴ベクトル、身体特徴ベクトル、及び身体組成を含む、身体組成データに対して別個に訓練された可能性がある。同様に、顔画像深層学習モジュール(262)は、顔特徴訓練データが1つ以上のサンプルユーザについての顔画像、及び1つ以上のサンプルユーザについての顔特徴ベクトルのセットを含む、顔特徴訓練データに対して訓練された可能性がある。身体特徴深層学習モジュール(264)はまた、身体特徴訓練データがスケーリングされた外部身体特徴寸法のセット、及び1つ以上のサンプルユーザについての1つ以上のユーザパラメータを含む、身体特徴訓練データに対して訓練された可能性がある。
【0069】
別の実施形態では、全体的な頭部または顔(222)の画像を内部身体組成予測器(260)への入力として使用する代わりに、頭部または顔画像(222)は、複数のサブセクション(例えば、顔画像の四分円、または任意の他の分割)に細分化される。この実施形態では、単一の顔画像深層学習モジュール(262)の代わりに、内部身体組成予測器(260)は、1つ以上の顔サブセクション深層学習ネットワーク(DLN)またはモジュールを含む。各顔サブセクションDLNは、顔サブセクションを受信して、顔サブセクション特徴ベクトルを生成する。このようにして生成された様々な顔サブセクション特徴ベクトルは、連結されて、顔特徴ベクトル(272)を形成する。この実施形態では、スケーリングされた外部身体特徴寸法(248)の生成は、任意選択的である。したがって、一実施形態では、外部身体特徴計算(240)及びスケール係数計算(252)は、必要とされない場合があり、身体特徴深層学習モジュール(264)は、入力としてユーザパラメータ(250)のみを受信する。
【0070】
1つの例示的な実施形態では、スケール係数は、ユーザの現実の身長などの1つ以上のユーザパラメータを使用して計算され、そのユーザパラメータは、正規化またはスケーリングを実施するために取得及び/または測定される。別の実施形態では、体重はまた、身長と併せて使用され得る。ユーザの身長及び体重は、自動的に(例えば、コンピュータビジョンアルゴリズムを使用して、もしくは1つ以上のデータベースから生成されて)判定され得るか、またはユーザ(例えば、ユーザ入力)から判定され得る。
【0071】
一実施形態では、システムは、(例えば、1つ以上のAIアルゴリズムを使用して)正面画像、側面画像、及びスケール係数を使用して、ユーザの内部身体組成を自動的に生成し得る。別の実施形態では、ユーザは、より正確な結果のために、ユーザがぴったりした衣服、通常の衣服、またはゆったりした衣服を着用しているかどうかを示すことができる。
【0072】
別の例示的な実施形態では、スケール係数は、深度センサまたはライダー(Lidar)を使用して計算される。別の実施形態では、スケール係数は、ユーザの画像のうちの1つに取り込まれた既知のサイズのものから計算される。さらに別の例示的な実施形態では、スケール係数は、拡張現実ソフトウェア開発キット(AR-SDK)を使用して検出された基平面の少なくとも3つの特徴ポイント間の距離に基づいて判定される。
【0073】
キーポイント、特徴寸法、及び顔画像の生成
図3は、本発明の例示的な実施形態による、生成されたキーポイントを示す、正面画像(正面図)及び側面画像(側面図)の例解的な図を示している。システムは、キーポイント深層学習モジュールを使用して、正面画像及び側面画像から、ユーザの衣服の下に隠された1つ以上の身体部分についての1つ以上のキーポイント(302、304)を識別するように構成されている。1つ以上のキーポイント(302、304)は、画像内に含まれる人体上の画素ポイントにマッピングされ得、ユーザの1つ以上の外部身体特徴寸法を計算するための基準として使用される。キーポイント深層学習モジュールは、1つ以上のサンプルユーザのための1つ以上の正面画像及び側面画像、ならびに1つ以上の正面画像及び側面画像の各々に対する1つ以上の予測された(訓練)キーポイントを含む、キーポイント訓練データに対して訓練されており、1つ以上のサンプルユーザのための外部身体特徴を生成している。訓練キーポイントは、注釈者によって手動で判定され得るか、またはキーポイントDLN訓練目的のためにキーポイント注釈ソフトウェアによって自動的に生成され得る。一実施形態では、キーポイント深層学習モジュールは、1つ以上のサンプルユーザのために、各身体特徴の注釈行またはキーポイントのセットを用いて、異なる姿勢及び異なる衣服でのサンプルユーザのための1つ以上の画像に対して訓練されている。注釈行は、サンプルユーザの画像上に、手動で描写され得るか、または自動的に生成され得る。
【0074】
予測されたキーポイントは、ユーザ画像(複数可)上で、身体、手、足、または顔のキーポイントを指し得る。ユーザ画像(複数可)内に示された人体は、身体キーポイントとして利用され得る複数の特徴を含み、その特徴には、左目、右目、左耳、右耳、鼻、首、左肩、右肩、左肘、右肘、左手首、右手首、左ヒップ、右ヒップ、左膝、右膝、左足首、及び右足首が含まれるが、これらに限定されない。一実施形態では、キーポイントは、ユーザ画像上のユーザの姿勢から推定され得る。
【0075】
一実施形態では、キーポイントDLN(230または232)は、各身体特徴上のキーポイントに関連し、かつ所与の身体特徴測定に対応する注釈行を生成する。次いで、システムは、関連する身体特徴上に注釈行を利用する外部身体特徴寸法(242)を生成し得る(
図4を参照)。別の実施形態では、注釈行は、外部身体特徴計算(240)ステップにおいて生成される。
【0076】
図4は、本発明の例示的な実施形態による、注釈付きキーポイント及び外部身体特徴寸法の計算を示す、正面画像(正面図)及び側面画像(側面図)の例解的な図を示している。正面画像及び側面画像上に生成された注釈キーポイントを使用して、1つ以上の外部身体特徴寸法を計算する。上述されるように、コンピュータビジョンモジュールは、人体上の2つ以上のキーポイントを接続する注釈行(402または404)を生成して、各身体特徴の外部身体特徴寸法を判定し得る。
【0077】
例えば、
図4を参照すると、キーポイント深層学習モジュール(230もしくは232)または外部身体特徴計算モジュール(240)は、ユーザの足の底部を表す画素ドット(Z2)、及びユーザの頭部の頂部を表す別の画素ドット(Z1)を用いて、ユーザの身長を示す全身注釈行を描画し得る。同様に、上腕二頭筋幅または周縁部については、システムは、上腕二頭筋の位置における骨格線に対して垂直である線を引き得、胸については、システムは、代わりに2つの胸のドットを接続し得る。次いで、各身体特徴の注釈から、スケーリングされた外部身体特徴寸法(248)は、ユーザの身体特徴の外部寸法(例えば、身長、上腕二頭筋、胸)を正規化する(246)ことによって取得され得る。
【0078】
注釈行(402、404)は、1つ以上のキーポイントの画素位置間の距離によって定義された基準長さである(例えば、ユーザの身長は、「Z1_Z2」と示される、画素Z1と画素Z2との間の距離として計算される)。1つ以上の外部身体特徴寸法は、ユーザに関連付けられた、身長、腹部深度、腹部長さ、腹部ウエスト、バスト回り、ヒップ回り、首回り、大腿部回り、アンダーバスト回り、上腕回り、ウエスト回り、及び手首回りからなる群から選択され得る。一実施形態では、
図4を参照すると、1つ以上の外部身体特徴寸法は、以下のように計算される。Height_pxl:Z1_Z2、Belly_depth_pxl:F3_F4、Belly_length_pxl:F1_F2、Belly_waist_pxl:2x(F1_F2)+2x(F3_F4)、Bust_girth_pxl:2x(C1_C2)+2x(C3_C4)、Hip_girth_pxl:2x(H1_H2)+2x(H3_H4)、Neck_girth_pxl:2x(A1_A2)+2x(A3_A4)、Thigh_girth_pxl:2x(I1_I2)+2x(I3_I4)、Under_Bust_girth_pxl:2x(D1_D2)+2x(D3_D4)、Upper_arm_girth_pxl:2x(B1_B2)+2x(B3_B4)、Waist_girth_pxl:2x(E1_E2)+2x(E3_E4)、及びWrist_girth_pxl:2x(G1_G2)+2x(G3_G4)。
【0079】
1つの例示的な実施形態では、生成された注釈キーポイントに基づいて、ユーザの1つ以上の外部身体特徴寸法のセットを計算することは、少なくとも1つの注釈付き画像を使用して、(a)注釈付き身体部分の周縁部、(b)注釈付き身体部分の身体部分画像面積、または(c)注釈付き身体部分の身体部分体積、を計算することを含む。
【0080】
別の例示的な実施形態では、スケール係数(すなわち、正規化係数)は、ユーザの実際の身長、及び注釈キーポイントから生成された身長(例えば、Height_pxl:Z1_Z2)を取得することによって導出され、ここで、スケール係数は、実際の身長を画素高さによって除算されたものである。さらに別の例示的な実施形態では、正面画像内のユーザの画素高さは、実際の身長とともに検出及び使用されて、すべての注釈行測定値を正規化する。
【0081】
1つの例示的な実施形態では、システムは、1つ以上の外部身体特徴寸法のセット、及びスケール係数に基づいて、ユーザの1つ以上のスケーリングされた外部身体特徴寸法のセットを計算するように構成される。上記の例解的な例では、1つ以上のスケーリングされた外部身体特徴寸法のセットは、Belly_depth=Belly_depth_pxl xスケール係数、Belly_length=Belly_length_pxl xスケール係数、Belly_waist=Belly_waist_pxl xスケール係数、Bust_girth=Bust_girth_pxl xスケール係数、Hip_girth=Hip_girth_pxl xスケール係数、Neck_girth=Neck_girth_pxl xスケール係数、Thigh_girth=Thigh_girth_pxl xスケール係数、Under_Bust_girth=Under_Bust_girth_pxl xスケール係数、Upper_arm_girth=Upper_arm_girth_pxl xスケール係数、Waist_girth=Waist_girth_pxl xスケール係数、及びWrist_girth=Wrist_girth_pxl xスケール係数である。
【0082】
図5は、本発明の例示的な実施形態による、ユーザの正面画像からの正面顔抽出のプロセスを例解している。一実施形態では、
図5に例解されているように、完全な正面顔(504)を含むユーザ画像(502)の一部が切り取られている。一実施形態では、システムは、顔抽出コンピュータビジョンモジュールまたは顔抽出深層学習モジュールを使用して、ユーザの正面画像(502)からユーザの顔画像(504)を抽出するように構成される。1つの例示的な実施形態では、ユーザの顔画像(504)は、配布ライブラリのオープンソースライブラリを使用して抽出される。他の実施形態では、シングルショット検出器(SSD)などの、他の顔検出及び対象物検出コンピュータビジョン、ならびに深層学習ベース方式を使用することができる。同様のプロセスは、ユーザ画像からの頭部画像、顔画像サブセクション、または頭部画像サブセクションの検出のために使用され得る。
【0083】
深層学習ネットワークアーキテクチャ及び成績
図6は、本発明の例示的な実施形態による、ユーザの身体組成の予測を生成するための、身体組成深層学習ネットワーク(DLN)または内部身体組成予測器(260)モジュールの例解的な図を示している。
図6の多モード身体組成DLNは、2つの入力分岐、すなわち、顔画像深層学習モジュール(608)及び身体特徴深層学習モジュール(610)を有し、両方ともそれらの出力を出力深層学習モジュール(612)にわたす。この身体組成DLNは、身体組成を回帰タスクとして出力する。
【0084】
顔画像深層学習モジュール(608)は、ユーザの顔画像(602)を受信するように、かつ顔特徴ベクトルを生成するように構成されている。身体特徴深層学習モジュール(610)は、1つ以上のユーザパラメータ(606)、及び身体特徴ベクトルを生成するための1つ以上のスケーリングされた外部身体特徴寸法のセット(604)を受信するように構成されている。出力深層学習モジュール(612)は、顔画像深層学習モジュール(608)から顔特徴ベクトルを受信し、かつ身体特徴深層学習モジュール(610)から身体特徴ベクトルを受信して、ユーザの身体組成(614)を生成するように構成されている。身体組成(614)は、ユーザの筋肉体重、骨体重、含水量、または体脂肪などの身体の肉体的組成の任意の指標である。顔画像深層学習モジュール(608)は、畳み込みニューラルネットワーク(CNN)として実装され得、身体特徴深層学習モジュール(610)及び出力深層学習モジュール(612)は、完全接続ニューラルネットワークとして実装され得る。ただし、顔特徴ベクトル、身体特徴ベクトル、または身体組成を生成するための任意の他のニューラルネットワーク、機械学習(ML)、または人工知能(AI)モジュールを使用することは、本発明の範囲内である。
【0085】
一実施形態では、
図6の身体組成深層学習モジュールの3つのコンポーネント、すなわち、顔画像深層学習モジュール(608)、身体特徴深層学習モジュール(610)、及び出力深層学習モジュール(612)は、単一のDLNとして、顔画像、スケーリングされた外部身体特徴寸法、ユーザパラメータ、及び複数のサンプルユーザの身体組成を含む、身体組成データに対してともに訓練される。他の実施形態では、それらのモジュールは、組み合わされる前に、複数のサンプルユーザの顔画像、スケーリングされた外部身体特徴寸法、ユーザパラメータ、顔特徴ベクトル、身体特徴ベクトル、及び身体組成を含む、身体組成データに対して別個に訓練される。
【0086】
図6の実施形態では、顔画像深層学習モジュール(608)及び身体特徴深層学習モジュール(610)は、ニューラルネットワークであり、それらは、自己注意、すなわち、そのニューラルネットワークが、例えば、フィードフォワード構造及び乗算レイヤを通じて様々なレイヤの入力に重みを割り当てることを可能にするアーキテクチャ属性のセットを使用する(
図7A及び
図7Bを参照)。自己注意アーキテクチャの使用により、ニューラルネットワークは、他のものを犠牲にして、特定の入力に値を割り当てることが可能になり、したがって、出力身体組成に追加の精度を提供する。
【0087】
一実施形態では、身体組成(614)は、除脂肪体重(LBM)、体脂肪体重(MBF)、軟質除脂肪体重(SLM)、及び体脂肪率(PBF)からなる群から選択される。
【0088】
一実施形態では、
図6の身体組成深層学習モジュールへの入力として顔全体(602)の画像を使用する代わりに、顔画像(602)は、複数のサブセクション(例えば、顔画像の四分円、または任意の他の分割)に細分化される。この実施形態では、単一の顔画像深層学習モジュール(608)の代わりに、身体組成深層学習モジュール(
図6)は、1つ以上の顔サブセクションの深層学習ネットワーク(DLN)またはモジュールを含む。各顔サブセクションDLNは、顔サブセクションを受信して、顔サブセクション特徴ベクトルを生成する。このようにして生成された様々な顔サブセクション特徴ベクトルは、身体特徴深層学習モジュール(610)の出力と連結されて、出力深層学習モジュール(612)の入力を形成する。この実施形態では、1つ以上のスケーリングされた外部身体特徴寸法のセット(604)の生成は、任意選択的である。したがって、一実施形態では、外部身体特徴計算(240)及びスケール係数計算(252)は存在せず、身体特徴深層学習モジュール(610)は、入力としてユーザパラメータ(606)のみを受信する。
【0089】
さらに、本発明の一実施形態では、ユーザ画像(212及び/または213)を使用して、1つ以上の頭部画像または頭部サブセクション(例えば、222)を抽出し、それらは、1つ以上の頭部特徴または頭部サブセクションDLN(例えば、262)に送り込まれて、1つ以上の頭部特徴または頭部サブセクションベクトル(例えば、272)を生成する。この実施形態では、身体特徴深層学習モジュール(264、610)は、入力としてユーザパラメータ(250、606)のみを受信し、キーポイントDLN(複数可)(230及び232)、外部身体特徴計算ステップ(240)、及びスケール係数計算ステップ(252)は存在しない。
【0090】
図7A及び
図7Bは、本発明の例示的な実施形態による、ユーザの身体組成の予測を生成するための身体組成DLNの詳細なアーキテクチャを示している。具体的には、
図7A及び
図7Bは、本発明の例示的な実施形態による、ユーザ(614)の身体組成の予測を生成するための、
図6の身体組成DLNの例解的なアーキテクチャを示している。
図7A及び
図7Bは、
図6の身体組成深層学習モジュールの3つのコンポーネント、すなわち、顔画像深層学習モジュール(608)、身体特徴深層学習モジュール(610)、及び出力深層学習モジュール(612)の例解的なアーキテクチャを示している。
【0091】
図7Aは、顔画像深層学習モジュール(608)の一実施形態を、自己注意(704)を伴う畳み込みニューラルネットワーク(CNN)として示している。顔画像CNN(704)の入力は、入力1(702)としてラベル付けされ、正方形の正面顔画像からなる。赤緑青(RGB)、赤緑青深度(RGB-D)、及び白黒階調画像を含む様々な画像フォーマットは、本発明の範囲内にあるが、これらに限定されない。顔画像CNN(704)の出力(705)は、顔特徴ベクトル(272)である。
【0092】
図7Bは、身体特徴深層学習モジュール(610)の一実施形態を、自己注意(710)を伴う完全接続ニューラルネットワークとして示している。この実施形態では、身体特徴DLN(710)の入力は、入力2とラベル付けされ、スケーリングされた外部身体特徴寸法(248)の連結からなり、ここでは、「正規化外部身体特徴」(706)とラベル付けされ、入力ユーザパラメータ(250)と組み合わされ、ここでは、「4つの基本的な身体統計データ」(708)とラベル付けされている。身体特徴DLN(710)の入力は、単一の配列に合体される。一実施形態では、2つの入力の各々は、16個の要素配列に符号化され、かつ単一の32個の要素配列に連結される。身体特徴DLN(710)の最後のレイヤ(709)の出力は、身体特徴ベクトル(274)である。
【0093】
図7Bはまた、出力深層学習モジュール(612)の一実施形態を、完全接続ニューラルネットワーク(712)としても示している。出力深層学習モジュール(例えば、DLN)(712)は、身体特徴DLN(710)の最後のレイヤ(709)によって生成された身体特徴ベクトルを、顔画像CNN(710)によって生成された顔特徴ベクトル(705)とマージして、身体組成(714)を与える。
【0094】
図7A及び
図7Bの例示的な実施形態では、各レイヤの出力配列、マトリックス、及びテンソルのサイズ及び寸法は、丸括弧内に示されている。例えば、顔画像CNN(704)の入力は、128x128個の画像であるが、顔画像CNN(704)の最後のプーリングレイヤ(703)によって生成される顔特徴ベクトル(705)のサイズは、64個である。
【0095】
図7A及び
図7Bに例解されているニューラルネットワークアーキテクチャは、畳み込み(「Conv」)レイヤ、最大/平均プーリングレイヤ、バッチ正規化(「Batch Norm」)レイヤ、整流線形ユニット(「Relu」)レイヤ、加算レイヤ、乗算(「Multiply」)レイヤ、シグモイドレイヤ、完全接続レイヤ、及びマージングレイヤを使用する。
図7A及び
図7Bでは、乗算及び加算は、要素毎の乗算及び合計であり、両方の演算は、入力と同じ次元のテンソルまたはマトリックスを生成する。さらに、
図7A及び
図7Bにおける「マージング」という用語は、ベクトル連結を表す。
【0096】
図7A及び
図7Bの実施形態では、顔画像CNN(704)及び身体特徴DLN(710)は、ニューラルネットワークであり、それらは、自己注意、すなわち、そのニューラルネットワークが、例えば、フィードフォワード構造及び乗算レイヤを通じて様々なレイヤの入力に重みを割り当てることを可能にするアーキテクチャ属性のセットを使用し、したがって、出力身体組成に追加の精度を提供する。
【0097】
本明細書に開示された様々な深層学習ネットワーク及びモジュールについて上で列挙されたDLNアーキテクチャ及びアルゴリズムは、本発明の範囲内である、単なる例解的なアルゴリズムであり、本発明は、列挙されたDLNアルゴリズムの使用に限定されない。他のDLNアルゴリズムもまた、本発明の範囲内でもある。さらに、他の機械学習(ML)方法は、列挙された様々なDLNアーキテクチャ及びアルゴリズムの代わりに、またはそれらと組み合わせて使用され得る。したがって、リグレッサ、最近傍アルゴリズム、決定木、サポートベクトルマシン(SVM)、適応的ブースティング、ベイズのネットワーク、ファジー理論モデル、進化型アルゴリズムなどを含むが、これらに限定されない他のMLアルゴリズムは、本発明の範囲内である。
【0098】
図8は、本発明の一実施形態による、ユーザの身体組成を予測するための方法の例示的なフローチャートを示している。ステップ802において、1つ以上の画像が受信される。これらの画像は、衣服の有無にかかわらず、ユーザの正面画像または側面画像を含み得る。様々な実施形態では、入力ユーザ画像は、ユーザの全身を示す。他の実施形態では、入力ユーザ画像は、全画像ではなく、ユーザの1つ以上の身体部分を示すユーザの部分画像である。ステップ804において、年齢、性別、民族性、体重、または身長などの1つ以上のユーザパラメータが受信される。ステップ806において、1つ以上のキーポイントは、キーポイント深層学習ネットワーク(DLN)を使用して、受信されたユーザ画像(複数可)に基づいて生成される。ステップ808において、ユーザの身体組成の予測は、身体組成深層学習ネットワーク(DLN)を使用して、キーポイント(複数可)及びユーザパラメータ(複数可)に基づいて生成される。
【0099】
図9は、ユーザの軟質除脂肪体重(SLM)及び体脂肪率(PBF)を生成する際に、
図7A及び
図7Bの例解的な身体組成予測アーキテクチャを使用する身体組成DLNの一実施形態の成績を示す表である。SLMは、体内水分、タンパク質、及び非骨格ミネラルの、キログラム(KG)単位での身体組成体重の測定値である。PBFは、体脂肪パーセンテージ(%)の身体組成の測定値である。
図9の左側の2つの列は、様々なサンプルユーザの実際のSLM及びPBFを示しており、これに対して、右側の2つの列は、
図7A及び
図7Bの身体組成DLNの実施形態によって予測されたときのSLM及びPBF測定値を示している。実際の及び予測されたSLM及びPBFの測定値は、以下の
図10及び
図11において、統計的に比較される。
【0100】
図10は、ユーザのSLMを生成する際に、
図7A及び
図7Bの例解的な身体組成予測アーキテクチャを使用する、身体組成DLNの一実施形態の精度を描写する密度分布を示している。具体的には、
図10は、
図9の結果に基づいて、SLM誤差(すなわち、サンプルユーザの各々についての実際のSLMと、予測されたSLMとの間の差)の密度分布を示している。
図10は、1.78KGの平均絶対誤差(MAE)、及び2.19KGの標準偏差を示している。
【0101】
図11は、ユーザのPBFを生成する際に、
図7A及び
図7Bの例解的な身体組成予測アーキテクチャを使用する、身体組成DLNの一実施形態の精度を描写する密度分布を示している。具体的には、
図11は、
図9の結果に基づいて、PBF誤差(すなわち、サンプルユーザの各々についての実際のPBFと、予測されたPBFとの間の差)の密度分布を示している。
図11は、3.04%の平均絶対誤差(MAE)、及び3.64%の標準偏差を示している。
【0102】
図10及び
図11の誤差密度分布の両方とも、ゼロでピークとなり、サンプルユーザの最大のサブセットに対して正確な身体組成を示している。
図9、
図10、及び
図11の成績結果は、ニューラルネットワーク及びMLアーキテクチャ、訓練データ、ならびに、身体組成DLN及び/またはその様々なコンポーネントのために使用された訓練プロセスを含む多数の要因に基づいて、改善の効果を受けている。
【0103】
例解的な実施形態
1つの例示的な実施形態では、ユーザの身体組成を測定するための方法が提供される。この方法は、ユーザの正面画像及び側面画像、ならびに1つ以上のユーザパラメータを受信することと、ユーザの正面画像及び側面画像、ならびに1つ以上のユーザパラメータに基づいて、ユーザの身体組成の予測を生成することと、身体組成深層学習モジュールを使用して、身体組成を画像取り込みデバイスのディスプレイに送信することと、を含む。
【0104】
別の例示的な実施形態では、身体組成深層学習モジュールを使用して身体組成の予測を生成することは、ユーザの顔画像にさらに基づく。一実施形態では、身体組成深層学習モジュールを使用して身体組成の予測を生成することは、1つ以上のスケーリングされた外部身体特徴寸法のセットにさらに基づく。
【0105】
1つの例示的な実施形態では、方法は、1つ以上のユーザ画像からユーザの身長及び体重を生成するように構成される。1つ以上のユーザ画像は、ユーザの正面画像及び側面画像からなる群から選択される。
【0106】
別の例示的な実施形態では、方法は、1つ以上のスケーリングされた外部身体特徴寸法のセットを計算するための、1つ以上の外部身体特徴寸法のセットを生成するように構成される。1つ以上の外部身体特徴寸法のセットは、1つ以上の注釈キーポイントを使用して、ユーザの正面画像及び側面画像から抽出される。1つ以上の注釈キーポイントは、キーポイント深層学習モジュールを使用して生成される。1つ以上のスケーリングされた外部身体特徴寸法のセットは、スケール係数を使用して、1つ以上の外部身体特徴寸法のセットから計算される。スケール係数は、深度センサ及びライダーのうちの1つを使用して計算される。
【0107】
1つの例示的な実施形態では、ユーザの身体組成を予測するためのシステムが開示され、このシステムは、画像取り込みデバイス及びサーバを備える。この画像取り込みデバイスは、ユーザの正面画像及び側面画像を取り込み、1つ以上のユーザパラメータを受信するように構成される。サーバは、入力モジュール及び処理モジュールを含む。入力モジュールは、画像取り込みデバイスから無線ネットワークを通じて、ユーザの正面画像及び側面画像、ならびに1つ以上のユーザパラメータを受信するように構成される。処理モジュールは、キーポイントDLNを使用して、正面画像及び側面画像から衣服の下に隠れた1つ以上の身体部分の1つ以上の注釈キーポイントを識別するための命令を実行することと、1つ以上の注釈キーポイントに基づいてユーザの1つ以上の外部身体特徴寸法のセットを計算することと、1つ以上のユーザパラメータ及び1つ以上の注釈キーポイントに基づいてスケール係数を導出することと、1つ以上の外部身体特徴寸法のセット及びスケール係数に基づいてユーザの1つ以上のスケーリングされた外部身体特徴寸法のセットを計算することと、顔抽出コンピュータビジョンモジュールを使用してユーザの正面画像からユーザの顔画像を抽出することと、を行うように構成される。処理モジュールは、顔画像DLNを起動して、ユーザの顔画像を受信し、ユーザの顔画像からユーザの顔特徴ベクトルを生成するようにさらに構成される。さらに、処理モジュールは、身体特徴DLNを起動して、ユーザの1つ以上のスケーリングされた外部身体特徴寸法のセット、及び1つ以上のユーザパラメータを受信し、ユーザの1つ以上のスケーリングされた外部身体特徴寸法のセット、及び1つ以上のユーザパラメータから、ユーザの身体特徴ベクトルを生成するように構成される。さらに、処理モジュールは、出力DLNを起動して、顔画像DLNからユーザの顔特徴ベクトルを受信し、かつ身体特徴DLNからユーザの身体特徴ベクトルを受信することと、ユーザの顔特徴ベクトル及びユーザの身体特徴ベクトルに基づいてユーザの身体組成の予測を生成することと、身体組成を画像取り込みデバイスのディスプレイに送信することと、を行うように構成される。
【0108】
別の例示的な実施形態では、1つ以上の注釈キーポイントに基づいて1つ以上の外部身体特徴寸法のセットを計算することは、(a)注釈付き正面画像及び注釈付き側面画像を使用して、少なくとも1つの注釈付き身体部分の少なくとも1つの周縁部を計算することと、(b)注釈付き正面画像及び注釈付き側面画像を使用して、少なくとも1つの注釈付き身体部分の少なくとも1つの身体部分画像面積を計算することと、(c)注釈付き正面画像及び注釈付き側面画像を使用して、少なくとも1つの注釈付き身体部分の少なくとも1つの身体部分体積を計算することと、からなる群から選択される少なくとも1つのステップを含む。
【0109】
例示的なシステムアーキテクチャ
本開示の例示的な実施形態は、1つ以上のサーバ(管理コンピューティングエンティティ)、1つ以上のネットワーク、及び1つ以上のクライアント(ユーザコンピューティングエンティティ)を含み得る。これらのコンポーネント、エンティティ、デバイス、及びシステム(本明細書で区別なく使用される類似の用語)の各々は、例えば、同じまたは異なる有線または無線ネットワークを介して互いに直接的または間接的に通信し得る。さらに、
図12及び
図13は、様々なシステムエンティティを別個の独立型エンティティとして例解しているが、様々な実施形態は、この特定のアーキテクチャに限定されない。
【0110】
例示的な管理コンピューティングエンティティ
図12は、本開示の実施形態と併せて使用することができるサーバ(管理コンピューティングエンティティ)(1202)の概略図を提供する。一般に、本明細書で区別なく使用されるコンピューティングエンティティ、コンピュータ、エンティティ、デバイス、システムという用語、及び/または同様の単語は、例えば、1つ以上のコンピュータ、コンピューティングエンティティ、デスクトップコンピュータ、携帯電話、タブレット、ファブレット、ノートブック、ラップトップ、分散システム、ゲーム機、腕時計、眼鏡、iBeacon、近接ビーコン、キーフォブ、無線周波数識別(RFID)タグ、イヤホーン、スキャナ、テレビジョン、ドングル、カメラ、リストバンド、ウェアラブルアイテム/デバイス、キオスク、入力端末、サーバもしくはサーバネットワーク、ブレード、ゲートウェイ、スイッチ、処理デバイス、処理エンティティ、セットトップボックス、リレー、ルータ、ネットワークアクセスポイント、基地局など、及び/または、本明細書に説明される機能、動作、及び/またはプロセスを実施するように適合されたデバイスもしくはエンティティの任意の組み合わせを指す場合がある。そのような機能、動作、及び/またはプロセスは、例えば、送信すること、受信すること、動作すること、処理すること、表示すること、記憶すること、判定すること、作成/生成すること、監視すること、評価すること、及び/または比較すること(本明細書で区別なく使用される類似の用語)を含み得る。一実施形態では、これらの機能、動作、及び/またはプロセスは、データ、コンテンツ、及び/または情報(本明細書で区別なく使用される類似の用語)に対して実施することができる。
【0111】
示されるように、一実施形態では、管理コンピューティングエンティティ(1202)はまた、送信、受信、動作、処理、表示、記憶などが可能なデータ、コンテンツ、及び/または情報(本明細書で区別なく使用される類似の用語)を伝達することなどによって、様々なコンピューティングエンティティと通信するための1つ以上の通信インターフェース(1210)を含み得る。
【0112】
図12に示すように、一実施形態では、管理コンピューティングエンティティ(1202)は、例えば、バスを介して、管理コンピューティングエンティティ(1202)内の他の要素と通信する1つ以上の処理要素(1204)(プロセッサ及び/または処理回路-本明細書で区別なく使用される類似の用語、とも呼ばれる)を含み得るか、またはそれらの要素と通信し得る。理解されるように、処理要素(1204)は、多くの異なる方法で具現化され得る。例えば、処理要素(1204)は、1つ以上の結合プログラム可能論理デバイス(CPLD)、マイクロプロセッサ、マルチコアプロセッサ、コプロセシングエンティティ、特定用途向け命令セットプロセッサ(ASIP)、マイクロコントローラ、及び/またはコントローラとして具現化され得る。さらに、処理要素(1204)は、1つ以上の他の処理デバイスまたは回路として具現化され得る。回路という用語は、ハードウェアの実施形態全体、または、ハードウェア及びコンピュータプログラム製品の組み合わせを指す場合がある。したがって、処理要素(1204)は、集積回路、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルロジックアレイ(PLA)、ハードウェアアクセラレータ、他の回路などとして具現化され得る。したがって、理解されるように、処理要素(1204)は、特定の使用のために構成され得るか、または、揮発性媒体もしくは不揮発性媒体に記憶されるか、もしくは別様に処理要素(1204)にアクセス可能な命令を実行するように構成され得る。したがって、ハードウェアまたはコンピュータプログラム製品によって、またはそれらの組み合わせによって構成されるかどうかにかかわらず、処理要素(1204)は、それに応じて構成されたときに、本開示の実施形態によるステップまたは動作を実施することが可能であり得る。
【0113】
一実施形態では、管理コンピューティングエンティティ(1202)は、不揮発性媒体(不揮発性ストレージ、メモリ、メモリストレージ、及び/またはメモリ回路とも呼ばれる-本明細書で区別なく使用される類似の用語)をさらに含み得るか、またはそれと通信し得る。一実施形態では、不揮発性ストレージまたはメモリは、1つ以上の不揮発性ストレージまたはメモリ媒体(1208)を含み得、それらには、ハードディスク、ROM、PROM、EPROM、EEPROM、フラッシュメモリ、MMC、SDメモリカード、メモリスティック、CBRAM、PRAM、FeRAM、NVRAM、MRAM、RRAM、SONOS、FJG RAM、ミリピードメモリ、レーストラックメモリなどが含まれるが、これらに限定されない。認識されるように、不揮発性ストレージまたはメモリ媒体は、データベース、データベースインスタンス、データベース管理システム、データ、アプリケーション、プログラム、プログラムモジュール、スクリプト、ソースコード、オブジェクトコード、バイトコード、コンパイル済みコード、インタープリット済みコード、マシンコード、実行可能命令などを記憶し得る。データベース、データベースインスタンス、及び/またはデータベース管理システムという用語(本明細書で区別なく使用される類似の用語)は、階層型データベースモデル、ネットワークモデル、リレーショナルモデル、エンティティリレーションシップモデル、オブジェクトモデル、文書モデル、意味モデル、グラフモデルなどの1つ以上のデータベースモデルを使用して、コンピュータ可読記憶媒体内に記憶されるレコードまたはデータの集合を指す場合がある。
【0114】
一実施形態では、管理コンピューティングエンティティ(1202)は、揮発性媒体(揮発性ストレージ、メモリ、メモリストレージ、メモリ、及び/または回路とも呼ばれる-本明細書で区別なく使用される類似の用語)をさらに含み得るか、またはそれらと通信し得る。一実施形態では、揮発性ストレージまたはメモリはまた、1つ以上の揮発性ストレージまたはメモリ媒体(1206)を含むこともでき、それらには、RAM、DRAM、SRAM、FPM DRAM、EDO DRAM、SDRAM、DDR SDRAM、DDR2 SDRAM、DDR3 SDRAM、RDRAM、TTRAM、T-RAM、Z-RAM、RIMM、DIMM、SIMM、VRAM、キャッシュメモリ、レジスタメモリなどが含まれるが、これらに限定されない。認識されるように、揮発性ストレージまたはメモリ媒体を使用して、例えば、処理要素(1204)によって実行されるデータベース、データベースインスタンス、データベース管理システム、データ、アプリケーション、プログラム、プログラムモジュール、スクリプト、ソースコード、オブジェクトコード、バイトコード、コンパイル済みコード、インタープリット済みコード、マシンコード、実行可能命令などのうちの少なくとも一部を記憶し得る。したがって、データベース、データベースインスタンス、データベース管理システム、データ、アプリケーション、プログラム、プログラムモジュール、スクリプト、ソースコード、オブジェクトコード、バイトコード、コンパイル済みコード、インタープリット済みコード、マシンコード、実行可能命令などを使用して、処理要素(1204)及びオペレーティングシステムの支援を伴って、管理コンピューティングエンティティ(1202)の動作の特定の態様を制御し得る。
【0115】
示されるように、一実施形態では、管理コンピューティングエンティティ(1202)はまた、送信、受信、動作、処理、表示、記憶などが可能なデータ、コンテンツ、及び/または情報(本明細書で区別なく使用される類似の用語)を伝達することなどによって、様々なコンピューティングエンティティと通信するための1つ以上の通信インターフェース(1210)を含み得る。そのような通信は、ファイバ分散データインターフェース(FDDI)、デジタル加入者回線(DSL)、イーサネット、非同期転送モード(ATM)、フレームリレー、データオーバケーブルサービスインターフェーススペシフィケーション(DOCSIS)、または任意の他の有線伝送プロトコルなどの有線データ伝送プロトコルを使用して実行され得る。同様に、管理コンピューティングエンティティ(1202)は、汎用パケット無線サービス(GPRS)、ユニバーサルモバイル電気通信システム(UMTS)、符号分割多重アクセス2000(CDMA2000)、CDMA20001X(1xRTT)、広帯域符号分割多重アクセス(WCDMA)、時分割同期符号分割多重アクセス(TD-SCDMA)、ロングタームエボリューション(LTE)、進化型ユニバーサル地上無線アクセスネットワーク(E-UTRAN)、進化型データ最適化(EVDO)、高速パケットアクセス(HSPA)、高速ダウンリンクパケットアクセス(HSDPA)、IEEE802.11(Wi-Fi)、Wi-Fiダイレクト、802.16(WiMAX)、ウルトラワイドバンド(UWB)、赤外線(IR)プロトコル、近距離無線通信(NFC)プロトコル、Wibree、Bluetoothプロトコル、無線ユニバーサルシリアルバス(USB)プロトコル、及び/または任意の他の無線プロトコルなどの様々なプロトコルのいずれかを使用して、無線外部通信ネットワークを介して通信するように構成され得る。
【0116】
図示されていないが、管理コンピューティングエンティティ(1202)は、キーボード入力、マウス入力、タッチスクリーン/ディスプレイ入力、運動入力、移動入力、オーディオ入力、ポインティングデバイス入力、ジョイスティック入力、キーパッド入力などの1つ以上の入力要素を含み得るか、またはそれらと通信し得る。管理コンピューティングエンティティ(1202)はまた、オーディオ出力、ビデオ出力、スクリーン/ディスプレイ出力、運動出力、移動出力などの1つ以上の出力要素(図示せず)を含み得るか、またはそれらと通信し得る。
【0117】
理解されるように、管理コンピューティングエンティティ(1202)のコンポーネントのうちの1つ以上は、分散システム内などの他の管理コンピューティングエンティティ(1202)コンポーネントから遠く離れて位置し得る。さらに、コンポーネントのうちの1つ以上が組み合わされ得、本明細書で説明される機能を実施する追加のコンポーネントが、管理コンピューティングエンティティ(1202)内に含まれ得る。したがって、管理コンピューティングエンティティ(1202)は、様々なニーズ及び状況を考慮するように適合することができる。認識されるように、これらのアーキテクチャ及び説明は、例示的な目的のみのために提供され、様々な実施形態を限定するものではない。
【0118】
例示的なユーザコンピューティングエンティティ
ユーザは、個人、会社、組織、団体、組織内の部署、組織の代表者、及び/または人などであり得る。
【0119】
図13は、本開示の実施形態と併せて使用することができるクライアント(ユーザコンピューティングエンティティ)(1302)を表す例解的な概略図を提供している。一般に、コンピューティングエンティティ、エンティティという用語、及び/または本明細書で区別なく使用される類似の単語は、例えば、1つ以上のコンピュータ、コンピューティングエンティティ、デスクトップ、携帯電話、タブレット、ファブレット、ノートブック、ラップトップ、分散システム、ゲーム機、腕時計、眼鏡、キーフォブ、無線周波数識別(RFID)タグ、イヤホーン、スキャナ、カメラ、リストバンド、キオスク、入力端末、サーバもしくはサーバネットワーク、ブレード、ゲートウェイ、スイッチ、処理デバイス、処理エンティティ、セットトップボックス、リレー、ルータ、ネットワークアクセスポイント、基地局など、及び/または、本明細書に説明される機能、動作、及び/またはプロセスを実施するように適合されたデバイスもしくはエンティティの任意の組み合わせを指す場合がある。ユーザコンピューティングエンティティ(1302)は、様々な当事者によって動作させることができる。
図13に示すように、ユーザコンピューティングエンティティ(1302)は、アンテナ(1304)、送信機(1308)(例えば、無線)、受信機(1310)(例えば、無線)、ならびに送信機(1308)及び受信機(1310)から、それぞれ、信号を提供及び受信する処理要素(1306)(例えば、CPLD、マイクロプロセッサ、マルチコアプロセッサ、コプロセシングエンティティ、ASIP、マイクロコントローラ、及び/またはコントローラ)を含むことができる。
【0120】
送信機(1308)及び受信機(1310)から、それぞれ、信号を提供及び受信された信号は、適用可能な無線システムのエアインターフェース標準規格に従って信号伝送情報を含み得る。この点について、ユーザコンピューティングエンティティ(1302)は、1つ以上のエアインターフェース標準規格、通信プロトコル、変調タイプ、及びアクセスタイプを用いて動作することが可能であり得る。より具体的には、ユーザコンピューティングエンティティ(1302)は、管理コンピューティングエンティティ(1202)に関して上で説明されるものなど、いくつかの無線通信標準規格及びプロトコルのいずれかに従って動作し得る。特定の実施形態では、ユーザコンピューティングエンティティ(1302)は、UMTS、CDMA2000、1xRTT、WCDMA、TD-SCDMA、LTE、E-UTRAN、EVDO、HSPA、HSDPA、Wi-Fi、Wi-Fiダイレクト、WiMAX、UWB、IR、NFC、Bluetooth、USBなどの、複数の無線通信標準規格及びプロトコルに従って動作し得る。同様に、ユーザコンピューティングエンティティ(1302)は、ネットワークインターフェース(1314)を介して、管理コンピューティングエンティティ(1202)に関して上で説明されるものなどの、複数の有線通信標準規格及びプロトコルに従って動作し得る。
【0121】
これらの通信標準規格及びプロトコルを介して、ユーザコンピューティングエンティティ(1302)は、非構造化付加サービスデータ(USSD)、ショートメッセージサービス(SMS)、マルチメディアメッセージングサービス(MMS)、デュアルトーンマルチフリーケンシーシグナリング(DTMF)、及び/または加入者識別モジュールダイヤラー(SIMダイヤラー)などの概念を使用して、様々な他のエンティティと通信することができる。ユーザコンピューティングエンティティ(1302)はまた、例えば、そのファームウェア、ソフトウェア(例えば、実行可能命令、アプリケーション、プログラムモジュールを含む)、及びオペレーティングシステムに対する変更、追加、及び更新をダウンロードすることもできる。
【0122】
一実施形態によれば、ユーザコンピューティングエンティティ(1302)は、本明細書で区別なく使用される、態様、デバイス、モジュール、機能、及び/または類似の単語を判定する場所を含み得る。例えば、ユーザコンピューティングエンティティ(1302)は、例えば、緯度、経度、標高、地理コード、コース、方向、進路、速度、世界時(UTC)、日付、及び/または様々な他の情報/データを取得するように適合された位置モジュールなどの屋外測位態様を含み得る。一実施形態では、位置モジュールは、視界に入る衛星の数、及びそれらの衛星の相対位置を識別することによって、場合によってはエフェメリスデータとして知られるデータを取得することができる。それらの衛星は、様々な異なる衛星であり得、低地球周回軌道(LEO)衛星システム、国防総省(DOD)衛星システム、欧州連合ガリレオ測位システム、中国コンパスナビゲーションシステム、インド地域ナビゲーション衛星システムなどが含まれる。代替的に、位置情報は、携帯電話タワー、Wi-Fiアクセスポイントなどを含む様々な他のシステムと関連して、ユーザコンピューティングエンティティ(1302)の位置を三角測量することによって判定することができる。同様に、ユーザコンピューティングエンティティ(1302)は、例えば、緯度、経度、標高、地理コード、コース、方向、進路、速度、時間、日付、及び/または様々な他の情報/データを取得するように適合された位置モジュールなどの屋内測位態様を含み得る。屋内システムのうちのいくつかは、RFIDタグ、屋内ビーコンもしくは送信機、Wi-Fiアクセスポイント、携帯電話タワー、すぐ近くのコンピューティングデバイス(例えば、スマートフォン、ラップトップ)などを含む様々な位置または場所技術を使用し得る。例えば、そのような技術には、iBeacon、ジンバル近接ビーコン、Bluetooth低エネルギー(BLE)送信機、NFC送信機などが含まれ得る。これらの屋内測位態様は、インチまたはセンチメートル以内の、誰かまたは何かの位置を判定するために、様々な設定で使用することができる。
【0123】
ユーザコンピューティングエンティティ(1302)はまた、(処理要素(1306)に結合されたディスプレイ(1312)を含み得る)ユーザインターフェース、及び/または(処理要素(1306)に結合された)ユーザ入力インターフェースを含み得る。例えば、ユーザインターフェースは、本明細書に説明されているように、管理コンピューティングエンティティ(1202)と対話し、及び/またはその管理コンピューティングエンティティからの情報を表示させるために、ユーザコンピューティングエンティティ(1302)上で実行し、及び/またはそのユーザコンピューティングエンティティを介してアクセス可能である、ユーザアプリケーション、ブラウザ、ユーザインターフェース、及び/または本明細書で区別なしに使用される類似の単語であり得る。ユーザ入力インターフェースは、ユーザコンピューティングエンティティ(1302)が、キーパッド(1316)(ハードまたはソフト)、タッチディスプレイ、音声/スピーチ、もしくは運動インターフェース、または他の入力デバイスなどのデータを受信することを可能にするいくつかのデバイスまたはインターフェースのうちのいずれかを含むことができる。キーパッド(1316)を含む実施形態では、キーパッド(1316)は、従来の数字キー(0~9)及び関連するキー(#、*)、ならびにユーザコンピューティングエンティティ(1302)を動作させるために使用される他のキーを含む(またはその表示を引き起こす)ことができ、英字キーのフルセット、または英数字キーのフルセットを提供するために作動させることができるキーのセットを含むことができる。入力を提供することに加えて、ユーザ入力インターフェースを使用して、例えば、スクリーンセーバー及び/またはスリープモードなどの特定の機能を作動または作動解除させることができる。
【0124】
ユーザコンピューティングエンティティ(1302)はまた、揮発性ストレージもしくはメモリ(1318)及び/または不揮発性ストレージもしくはメモリ(1320)を含むこともでき、これらは、組み込むことができ、及び/または取り外し可能であり得る。例えば、不揮発性メモリは、ROM、PROM、EPROM、EEPROM、フラッシュメモリ、MMC、SDメモリカード、メモリスティック、CBRAM、PRAM、FeRAM、NVRAM、MRAM、RRAM、SONOS、FJG RAM、ミリピードメモリ、レーストラックメモリなどであり得る。揮発性メモリは、RAM、DRAM、SRAM、FPM DRAM、EDO DRAM、SDRAM、DDR SDRAM、DDR2 SDRAM、DDR3 SDRAM、RDRAM、TTRAM、T-RAM、Z-RAM、RIMM、DIMM、SIMM、VRAM、キャッシュメモリ、レジスタメモリなどであり得る。揮発性及び不揮発性のストレージまたはメモリは、データベース、データベースインスタンス、データベース管理システム、データ、アプリケーション、プログラム、プログラムモジュール、スクリプト、ソースコード、オブジェクトコード、バイトコード、コンパイル済みコード、インタープリット済みコード、マシンコード、実行可能命令などを記憶して、ユーザコンピューティングエンティティ(1302)の機能を実装することができる。示されるように、これは、エンティティ上に常駐しているか、または、管理コンピューティングエンティティ(1202)及び/または様々な他のコンピューティングエンティティと通信するためのブラウザもしくは他のユーザインターフェースを介してアクセス可能であるユーザアプリケーションを含み得る。
【0125】
別の実施形態では、ユーザコンピューティングエンティティ(1302)は、上でさらに詳しく説明されたように、管理コンピューティングエンティティ(1202)のものと同じかまたは同様の1つ以上のコンポーネントまたは機能を含み得る。認識されるように、これらのアーキテクチャ及び説明は、例示的な目的のみのために提供され、様々な実施形態を限定するものではない。
【0126】
本発明は、クライアントサーバ環境で実装され得る。
図14は、クライアントサーバ環境における本発明の一実施形態を実装するための例解的なシステムアーキテクチャを示している。クライアント側のユーザデバイス(すなわち、画像取り込みデバイス)(1402)は、スマートフォン(1404)、ラップトップ(1406)、デスクトップPC(1408)、タブレット(1412)、または他のデバイスを含み得る。そのようなユーザデバイス(1402)は、インターネットなどのあるネットワーク接続(1410)を介して、システムサーバ(1414)のサービスにアクセスする。
【0127】
本発明のいくつかの実施形態では、システム全体は、いわゆるクラウド実装態様において、インターネットを介してエンドユーザ及びオペレータに対して実装及び提供することができる。ソフトウェアまたはハードウェアのローカルなインストールは、不要であり、エンドユーザ及びオペレータは、クライアント上のウェブブラウザかまたは同様のソフトウェアのいずれかを使用して、インターネットを介して本発明のシステムに直接アクセスすることが可能になり、そのクライアントは、デスクトップ、ラップトップ、モバイルデバイスなどであり得る。これにより、クライアント側での専用ソフトウェアのインストールのいかなる必要性も排除され、サービスの提供の柔軟性(サービスとしてのソフトウェア)が向上し、ユーザの満足度及び使いやすさが増大する。本発明のための様々なビジネスモデル、収益モデル、及び配信メカニズムが思い描かれ、それらは、すべて、本発明の範囲内にあるとみなされるべきである。
【0128】
追加の実装態様の詳細
例示的な処理システムが上記に説明されてきたが、本明細書に説明された主題及び機能動作の実装態様は、他のタイプのデジタル電子回路で、または、本明細書に開示された構造及びそれらの構造上の等価物を含む、コンピュータソフトウェア、ファームウェア、もしくはハードウェアで、あるいはそれらのうちの1つ以上の組み合わせで実装することができる。
【0129】
本明細書に説明された主題及び動作の実施形態は、この明細書に開示された構造、及びそれらの構造的等価物を含む、デジタル電子回路、またはコンピュータソフトウェア、ファームウェア、もしくはハードウェアで、あるいはそれらのうちの1つ以上の組み合わせで、実装することができる。本明細書に説明された主題の実施形態は、1つ以上のコンピュータプログラム、すなわち、情報/データ処理装置によって実行されるか、または情報/データ処理装置の動作を制御するために、コンピュータ記憶媒体上に符号化されたコンピュータプログラム命令の1つ以上のモジュールとして実装することができる。代替的に、または追加的に、プログラム命令は、人工的に生成された伝播信号、例えば、マシン生成された電気的、光学的、または電磁気的信号上に符号化することができ、その信号は、情報/データ処理装置によって実行されるために好適な受信機装置に送信するための情報/データを符号化するように生成される。コンピュータ記憶媒体は、コンピュータ可読記憶デバイス、コンピュータ可読記憶基板、ランダムアクセスメモリもしくはシリアルアクセスメモリのアレイもしくはデバイス、またはそれらのうちの1つ以上の組み合わせとすることができるか、またはそれらの中に含むことができる。さらに、コンピュータ記憶媒体は、伝播信号ではないが、コンピュータ記憶媒体は、人工的に生成された伝播信号内に符号化されたコンピュータプログラム命令のソースまたは宛先とすることができる。コンピュータ記憶媒体はまた、1つ以上の別個の物理コンポーネントまたは媒体(例えば、複数のCD、ディスク、または他の記憶デバイス)とすることもできるか、またはそれに含むこともできる。
【0130】
本明細書に説明された動作は、1つ以上のコンピュータ可読記憶デバイスに記憶されるか、または他のソースから受信された情報/データについて、情報/データ処理装置によって実施される動作として実装することができる。
【0131】
「データ処理装置」という用語は、データを処理するためのすべての種類の装置、デバイス、及びマシンを包含し、例として、プログラマブルプロセッサ、コンピュータ、チップ上のシステムもしくは複数のチップ上のシステム、または前述の組み合わせを含む。それらの装置は、特殊目的ロジック回路、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)を含むことができる。それらの装置はまた、ハードウェアに加えて、問題になっているコンピュータプログラムの実行環境を作成するコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、クロスプラットフォームの実行時間環境、仮想マシン、またはそれらのうちの1つ以上の組み合わせを構成するコードを含むこともできる。それらの装置及び実行環境は、ウェブサービス、分散コンピューティング、及びグリッドコンピューティングインフラストラクチャなどの様々な異なるコンピューティングモデルインフラストラクチャを実現することができる。
【0132】
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとしても知られる)は、コンパイル式言語またはインタープリット式言語、宣言型言語または手続き型言語を含む、任意の形式のプログラミング言語で記述することができ、そのコンピュータプログラムは、独立型プログラムとして、もしくはモジュール、コンポーネント、サブルーチン、オブジェクト、またはコンピューティング環境で使用するのに好適な他のユニットとして含まれる任意の形式で展開することができる。コンピュータプログラムは、ファイルシステムのファイルに対応し得るが、必ずしもそうである必要はない。プログラムは、他のプログラムまたは情報/データ(例えば、マークアップ言語文書に記憶された1つ以上のスクリプト)を保持するファイルの一部において、問題にしているプログラム専用の単一のファイルにおいて、または複数の共同作用できるファイル(例えば、1つ以上のモジュール、サブプログラム、またはコードの一部を記憶するファイル)において、記憶することができる。コンピュータプログラムは、1つのコンピュータ上で、または1つの場所に位置するかもしくは複数の場所にわたって分散され、通信ネットワークによって相互接続される複数のコンピュータ上で、実行されるように展開することができる。
【0133】
本明細書に説明されたプロセス及びロジックの流れは、1つ以上のコンピュータプログラムを実行する1つ以上のプログラム可能なプロセッサによって実施されて、入力情報/データに対して動作し、出力を生成することによって、動作を実施することができる。コンピュータプログラムの実行に好適なプロセッサは、例として、汎用マイクロプロセッサ及び専用マイクロプロセッサの両方、ならびに任意の種類のデジタルコンピュータの任意の1つ以上のプロセッサを含む。一般に、プロセッサは、読み取り専用メモリもしくはランダムアクセスメモリ、またはその両方から命令及び情報/データを受信することになる。コンピュータの重要な要素は、命令に従って動作を実施するためのプロセッサ、ならびに命令及びデータを記憶するための1つ以上のメモリデバイスである。一般に、コンピュータはまた、データを記憶するための1つ以上の大容量ストレージデバイス、例えば、磁気ディスク、光磁気ディスク、もしくは光ディスクを含むことになるか、あるいはそれらのディスクから情報/データを受信するか、もしくはそれらのディスクに情報/データを転送するか、またはその両方を行うように動作可能に結合されることにもなる。しかしながら、コンピュータは、そのようなデバイスを有する必要はない。コンピュータプログラム命令及び情報/データを記憶するために好適なデバイスは、不揮発性メモリ、媒体、及びメモリデバイスのすべての形態を含み、それらは、例として、半導体メモリデバイス、例えば、EPROM、EEPROM、及びフラッシュメモリデバイス;磁気ディスク、例えば、内蔵ハードディスクまたはリムーバブルディスク;光磁気ディスク;ならびにCD ROM及びDVD-ROMディスクを含む。プロセッサ及びメモリは、特殊目的ロジック回路によって補助され得るか、または特殊目的ロジック回路内に組み込まれ得る。
【0134】
ユーザとの対話を提供するために、本明細書に説明された主題の実施形態は、ユーザに情報/データを表示するためのディスプレイデバイス、例えば、CRT(陰極線管)またはLCD(液晶ディスプレイ)モニターと、ユーザがコンピュータに入力を与えることができるキーボード及びポインティングデバイス、例えば、マウスまたはトラックボールと、を有するコンピュータ上に実装することができる。他の種類のデバイスを使用して、同様にユーザとの対話を提供することができ、例えば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック、例えば、視覚フィードバック、聴覚フィードバック、または触覚フィードバックとすることができ、ユーザからの入力は、音響、音声、または触覚の入力を含む任意の形態で受信することができる。さらに、コンピュータは、ユーザが使用するデバイスに文書を送信すること、及びそのデバイスから文書を受信することによって、例えば、ウェブブラウザから受信された要求に応答して、ユーザのクライアントデバイス上のウェブブラウザにウェブページを送信することによって、ユーザと対話することができる。
【0135】
本明細書に説明された主題の実施形態は、例えば、情報/データサーバとしてバックエンドコンポーネントを含むか、または、ミドルウエアコンポーネント、例えば、アプリケーションサーバを含むか、または、フロントエンドコンポーネント、例えば、ユーザが本明細書に説明された主題の実装態様と対話することができるグラフィカルユーザインターフェースもしくはウェブブラウザを有するクライアントコンピュータを含むか、または、1つ以上のそのようなバックエンドコンポーネント、ミドルウエアコンポーネント、もしくはフロントエンドコンポーネントの任意の組み合わせである、コンピューティングシステム内に実装することができる。本システムのコンポーネントは、デジタル情報/データ通信の任意の形態または媒体、例えば、通信ネットワークによって相互接続することができる。通信ネットワークの例としては、ローカルエリアネットワーク(「LAN」)及びワイドエリアネットワーク(「WAN」)、相互接続ネットワーク(例えば、インターネット)、及びピアツーピアネットワーク(例えば、アドホックピアツーピアネットワーク)が挙げられる。
【0136】
コンピューティングシステムは、クライアントとサーバを含むことができる。クライアントとサーバは、概して互いに遠く離れており、典型的に通信ネットワークを通じてやりとりする。クライアントとサーバの関係は、それぞれのコンピュータ上で動作するコンピュータプログラムにより、及びクライアントとサーバの関係を互いに有することにより生じる。いくつかの実施形態では、サーバは、(例えば、情報/データをクライアントデバイスに表示し、クライアントデバイスと対話するユーザからユーザ入力を受信する目的で)情報/データ(例えば、HTMLページ)をクライアントデバイスに送信する。クライアントデバイスで生成された情報/データ(例えば、ユーザ対話の結果)は、クライアントデバイスからサーバにおいて受信され得る。
【0137】
本明細書は、多くの具体的な実装態様の詳細を含むが、これらは、任意の実施形態の範囲、または特許請求され得るものの範囲に対する限定として解釈されるべきではなく、特定の実施形態に特有の特徴の説明として解釈されるべきである。本明細書で個別の実施形態の文脈で説明されている特定の特徴はまた、単一の実施形態で組み合わせて実装することもできる。反対に、単一の実施形態の文脈で説明されている様々な特徴は、複数の実施形態で別個に、または任意の好適な副組み合わせで実装され得る。さらに、特徴は、特定の組み合わせで作用するものとして上記に説明され、さらに最初にそのように主張される場合もあるが、特許請求の範囲の組み合わせからの1つ以上の特徴は、場合によっては、組み合わせから切り出すことができ、特許請求の範囲の組み合わせは、副組み合わせ、または副組み合わせの変形を対象とし得る。
【0138】
同様に、動作が特定の順番で図面に図示されているが、これは、そのような動作が、示された特定の順番または順序で実施されるべきであること、またはすべての例解された動作が、所望の結果を達成するために実施されるべきであることを必要とするものとしては、理解されるべきではない。特定の状況では、マルチタスク及び並列処理が有利である可能性がある。さらに、上記に説明された実施形態の様々なシステムコンポーネントの分離は、すべての実施形態においてそのような分離を必要とするものとして理解されるべきではなく、説明されたプログラムコンポーネント及びシステムが、概して、単一ソフトウェア製品内にともに統合され得るか、または複数のソフトウェア製品にパッケージ化され得ることが理解されるべきである。
【0139】
したがって、主題の特定の実施形態が説明された。他の実施形態は、以下の特許請求の範囲の範囲内である。場合によっては、特許請求の範囲に列挙された作用は、異なる順番で実施され得、依然として所望の結果を達成することができる。さらに、添付図面に図示されたプロセスは、所望の結果を達成するために、示される特定の順番または順序を必ずしも必要としない。特定の実装態様では、マルチタスク及び並列処理が、有利であり得る。
【0140】
本発明のいくつかの実施形態では、システム全体を実装し、いわゆるクラウド実装態様において、インターネットを介してエンドユーザ及びオペレータに提供することができる。ソフトウェアまたはハードウェアのローカルインストールは必要とされず、エンドユーザ及びオペレータは、クライアント上のウェブブラウザまたは同様のソフトウェアのいずれかを使用して、インターネットを介して本発明のシステムに直接アクセスすることが可能であり、クライアントは、デスクトップ、ラップトップ、モバイルデバイスなどであり得る。これにより、クライアント側にカスタムソフトウェアをインストールする必要がなくなり、サービスの提供の柔軟性(サービスとしてのソフトウェア)が向上し、ユーザの満足度及び使いやすさが向上する。本発明のための様々なビジネスモデル、収益モデル、及び配信メカニズムが想定され、それらは、すべて本発明の範囲内にあるとみなされるべきである。
【0141】
一般に、本発明の実施形態を実装するために実行される方法は、「コンピュータプログラム(複数可)」または「コンピュータコード(複数可)」と呼ばれる、オペレーティングシステムもしくは特定のアプリケーション、コンポーネント、プログラム、オブジェクト、モジュール、または命令のシーケンスの一部として実装され得る。コンピュータプログラムは、典型的には、コンピュータ内の様々なメモリ及び記憶デバイスに様々な時間に設定された1つ以上の命令を含み、それらの命令は、コンピュータ内の1つ以上のプロセッサによって読み取られ、かつ実行されると、コンピュータに、本発明の様々な態様を含む要素を実行するために必要な動作を実施させる。さらに、本発明は、完全に機能するコンピュータ及びコンピュータシステムの文脈で説明されてきたが、当業者は、本発明の様々な実施形態が、様々な形態のプログラム製品として配布されることが可能であること、及び、本発明が、実際に配布を行うために使用される特定のタイプの機械またはコンピュータ可読媒体にかかわらず等しく適用されることを理解するであろう。コンピュータ可読媒体の例としては、揮発性及び不揮発性メモリデバイス、フロッピーディスク及び他のリムーバブルディスク、ハードディスクドライブ、コンパクトディスク読み取り専用メモリ(CD ROM)、デジタル多用途ディスク(DVD)などを含む光ディスク、ならびにデジタル及びアナログ通信媒体などの記録可能なタイプの媒体が挙げられるが、これらに限定されない。
【0142】
当業者は、使用ケース、構造、概略図、及びフロー図が他の順序または組み合わせで実施され得ることを知っているが、本発明の発明的概念は、本発明のより広い範囲から逸脱することなく残る。各実施形態は、本発明の方法を実践するために、独自であり得、方法/ステップは、短縮または延長され得、他の活動と重複し得、延期され得、遅延され得、かつ時間間隔後に継続され得る。
【0143】
結論
本明細書に記述された本開示の多くの修正及び他の実施形態は、これらの実施形態が前述の説明及び関連する図面に提示された教示の利益を有することに関連する当業者に想起されるであろう。したがって、実施形態が開示された特定の実施形態に限定されるべきでなく、修正及び他の実施形態が添付の特許請求の範囲内に含まれることが意図されることを理解されたい。本明細書では特定の用語が使用されているが、それらは一般的かつ説明的な意味でのみ使用されており、限定の目的では使用されていない。
【0144】
本発明は、具体的で例示的な実施形態を参照して説明されてきたが、本発明のより広い範囲から逸脱することなく、様々な修正及び変更がこれらの実施形態に対して行うことができることは明らかであろう。したがって、明細書及び図面は、制限的な意味ではなく、例解的な意味でみなされるべきである。また、上で説明される実施形態は、教示された個々の説明のいずれよりも大きな範囲を有し得る単一のより広範な発明の特定の例であることも、当業者には明らかであろう。本発明の範囲から逸脱することなく、説明に多くの変更が行われ得る。
【手続補正書】
【提出日】2023-01-20
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
ユーザの身体組成を予測するためのコンピュータ実装方法であって、前記方法が、
1つ以上のユーザ画像、及び1つ以上のユーザパラメータを受信することと、
前記1つ以上のユーザ画像に基づいて、1つ以上のキーポイントを生成することと、
身体組成深層学習ネットワーク(DLN)を使用して、前記1つ以上のキーポイント及び前記1つ以上のユーザパラメータに基づいて、前記ユーザの前記身体組成の予測を生成することと、を含み、前記身体組成が、前記身体の1つ以上の構成成分の定量的測定値であり、前記身体組成DLNが、前記身体の前記1つ以上の構成成分の前記定量的測定値の予測を生成するように訓練された、前記コンピュータ実装方法。
【請求項2】
1つ以上のキーポイントを前記生成することが、キーポイントDLNを使用することを含む、請求項1に記載のコンピュータ実装方法。
【請求項3】
前記身体組成DLNが、
前記ユーザの顔画像を受信するように、かつ顔特徴ベクトルを生成するように構成された顔画像DLNと、
前記1つ以上のユーザパラメータ、及び1つ以上のスケーリングされた外部身体特徴寸法のセットを受信するように、かつ身体特徴ベクトルを生成するように構成された身体特徴DLNと、
前記顔特徴ベクトル及び前記身体特徴ベクトルを受信するように、かつ前記ユーザの前記身体組成を生成するように構成された出力DLNと、を備える、請求項1に記載のコンピュータ実装方法。
【請求項4】
前記顔画像DLNが、畳み込みニューラルネットワーク(CNN)であり、前記身体特徴DLN及び前記出力DLNが、完全接続ニューラルネットワークである、請求項3に記載のコンピュータ実装方法。
【請求項5】
前記身体組成が、前記ユーザの筋肉、骨、含水量、または体脂肪の指標である、請求項1に記載のコンピュータ実装方法。
【請求項6】
前記身体組成が、除脂肪体重(LBM)、体脂肪体重(MBF)、軟質除脂肪体重(SLM)、及び体脂肪率(PBF)からなる群から選択される、請求項1に記載のコンピュータ実装方法。
【請求項7】
前記1つ以上のユーザパラメータが、身長、体重、性別、及び年齢からなる群から選択される、請求項1に記載のコンピュータ実装方法。
【請求項8】
前記1つ以上のユーザ画像から前記ユーザの頭部画像を抽出することであって、前記身体組成DLNを使用して前記身体組成を生成することが、前記頭部画像にさらに基づく、前記抽出すること、をさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項9】
前記頭部画像が、顔画像であり、前記顔画像が、顔抽出コンピュータビジョンモジュール及び顔抽出DLNのうちの1つを使用して抽出される、請求項8に記載のコンピュータ実装方法。
【請求項10】
前記1つ以上のユーザ画像が、少なくとも正面画像及び側面画像を含む、請求項1に記載のコンピュータ実装方法。
【請求項11】
前記1つ以上のユーザ画像が、完全に衣服を着用したユーザを表す、請求項1に記載のコンピュータ実装方法。
【請求項12】
前記1つ以上のユーザ画像から前記ユーザの身長を計算することと、
前記身長を前記ユーザパラメータのうちの1つとして利用することと、をさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項13】
前記1つ以上のユーザ画像から前記ユーザの体重を計算することと、
前記体重を前記ユーザパラメータのうちの1つとして利用することと、をさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項14】
前記1つ以上のキーポイントに基づいて、1つ以上のスケーリングされた外部身体特徴寸法のセットを生成することであって、前記身体組成DLNを使用して前記身体組成を生成することが、前記1つ以上のスケーリングされた外部身体特徴寸法のセットにさらに基づく、前記生成すること、をさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項15】
前記1つ以上のスケーリングされた外部身体特徴寸法のセットを前記生成することが、
前記1つ以上のキーポイントから1つ以上の外部身体特徴寸法のセットを生成することと、
前記1つ以上の外部身体特徴寸法のセットをスケーリングして、前記1つ以上のスケーリングされた外部身体特徴寸法のセットを生成することと、を含む、請求項14に記載のコンピュータ実装方法。
【請求項16】
前記1つ以上の外部身体特徴寸法が、身長、腹部深度、腹部長さ、腹部ウエスト、バスト回り、ヒップ回り、首回り、大腿部回り、アンダーバスト回り、上腕回り、ウエスト回り、及び手首回りからなる群から選択される、請求項15に記載のコンピュータ実装方法。
【請求項17】
ユーザの身体組成を予測するための、ハードウェアプロセッサによって実行可能なプログラムコードを記憶する、非一時的記憶媒体であって、前記プログラムコードが、
1つ以上のユーザ画像、及び1つ以上のユーザパラメータを受信することと、
前記1つ以上のユーザ画像に基づいて、1つ以上のキーポイントを生成することと、
身体組成深層学習ネットワーク(DLN)を使用して、前記1つ以上のキーポイント及び前記1つ以上のユーザパラメータに基づいて、前記ユーザの前記身体組成の予測を生成することと、を行うように構成されており、前記身体組成が、前記身体の1つ以上の構成成分の定量的測定値であり、前記身体組成DLNが、前記身体の前記1つ以上の構成成分の前記定量的測定値の予測を生成するように訓練された、前記非一時的記憶媒体。
【請求項18】
1つ以上のキーポイントを前記生成することが、キーポイントDLNを使用することを含む、請求項17に記載の非一時的記憶媒体。
【請求項19】
前記身体組成DLNが、
前記ユーザの顔画像を受信するように、かつ顔特徴ベクトルを生成するように構成された顔画像DLNと、
前記1つ以上のユーザパラメータ、及び1つ以上のスケーリングされた外部身体特徴寸法のセットを受信するように、かつ身体特徴ベクトルを生成するように構成された身体特徴DLNと、
前記顔特徴ベクトル及び前記身体特徴ベクトルを受信するように、かつ前記ユーザの前記身体組成を生成するように構成された出力DLNと、を備える、請求項17に記載の非一時的記憶媒体。
【請求項20】
ユーザの身体組成を予測するためのシステムであって、前記システムが、非一時的記憶媒体及びハードウェアプロセッサを備え、前記非一時的記憶媒体が、コンピュータ実行可能プログラムコードを記憶し、前記コンピュータ実行可能プログラムコードが、前記ハードウェアプロセッサによって実行されたときに、前記ハードウェアプロセッサに、
1つ以上のユーザ画像、及び1つ以上のユーザパラメータを受信することと、
前記1つ以上のユーザ画像に基づいて、1つ以上のキーポイントを生成することと、
身体組成深層学習ネットワーク(DLN)を使用して、前記1つ以上のキーポイント及び前記1つ以上のユーザパラメータに基づいて、前記ユーザの前記身体組成の予測を生成することと、を行うためのステップを実行させ、前記身体組成が、前記身体の1つ以上の構成成分の定量的測定値であり、前記身体組成DLNが、前記身体の前記1つ以上の構成成分の前記定量的測定値の予測を生成するように訓練された、前記システム。
【国際調査報告】