(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2022-03-11
(45)【発行日】2022-03-22
(54)【発明の名称】情報処理装置、情報処理方法、及びプログラム
(51)【国際特許分類】
G06T 19/00 20110101AFI20220314BHJP
【FI】
G06T19/00 A
(21)【出願番号】P 2021528832
(86)(22)【出願日】2021-05-20
(86)【国際出願番号】 JP2021019159
【審査請求日】2021-05-20
【早期審査対象出願】
(73)【特許権者】
【識別番号】316014722
【氏名又は名称】株式会社VRC
(74)【代理人】
【識別番号】110000752
【氏名又は名称】特許業務法人朝日特許事務所
(72)【発明者】
【氏名】謝 英弟
(72)【発明者】
【氏名】張 彦鵬
(72)【発明者】
【氏名】李 在龍
【審査官】村松 貴士
(56)【参考文献】
【文献】国際公開第2020/203656(WO,A1)
【文献】特開2000-339355(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 19/00 - 19/20
G06F 30/00 - 30/28
G06Q 50/00 - 50/34
(57)【特許請求の範囲】
【請求項1】
複数の衣服の3Dモデルを示す3Dデータが記憶されたデータベースにアクセスするアクセス手段と、
ユーザの3Dモデルを示す3Dデータを取得する取得手段と、
前記複数の衣服の中から、前記取得手段により取得された3Dデータにより示されるユーザの3Dモデルに当該衣服の3Dモデルを着せた状態でのシミュレーション結果に基づいて衣服を抽出する抽出手段と、
前記抽出手段により抽出された衣服を特定する情報を出力する出力手段と
を有し、
前記シミュレーション結果が、前記衣服の3Dモデルを着せた前記ユーザの3Dモデルを動かすシミュレーションの結果を含み、
前記衣服の3Dモデルを着せた前記ユーザの3Dモデルを動かした動画を当該ユーザに提示する提示手段と、
前記動画を視聴した前記ユーザから前記衣服に対する嗜好の入力を受け付ける受け付け手段と、
前記受け付け手段が受け付けた嗜好を前記データベースに書き込む書き込み手段と
を有する
情報処理装置。
【請求項2】
前記シミュレーション結果が、前記ユーザの3Dモデルの所定部位と前記衣服の3Dモデルの所定部位とのずれ、当該ユーザの3Dモデルにかかる圧力、及び当該衣服の3Dモデルにかかる張力の少なくとも1種を含む
請求項1に記載の情報処理装置。
【請求項3】
複数の衣服の3Dモデルを示す3Dデータが記憶されたデータベースにアクセスするアクセス手段と、
ユーザの3Dモデルを示す3Dデータを取得する取得手段と、
前記複数の衣服の中から、前記取得手段により取得された3Dデータにより示されるユーザの3Dモデルに当該衣服の3Dモデルを着せた状態でのシミュレーション結果に基づいて衣服を抽出する抽出手段と、
前記抽出手段により抽出された衣服を特定する情報を出力する出力手段と
を有し、
前記データベースが、前記複数の衣服の各々について、当該衣服に対応する標準体型の人体の3Dモデルを示す3Dデータを含み、
前記シミュレーション結果が、前記ユーザの3Dモデルの所定部位と前記衣服の3Dモデルの所定部位とのずれ、当該ユーザの3Dモデルにかかる圧力、及び当該衣服の3Dモデルにかかる張力の少なくとも1種を含み、
前記標準体型の人体の3Dモデルと前記取得手段により取得された3Dデータにより示されるユーザの3Dモデルとの対比結果に基づいて前記ずれ、前記圧力、又は前記張力を計算する計算手段を有する
情報処理装置。
【請求項4】
前記抽出手段は、前記ユーザの3Dモデルにかかる圧力の分布を示すプレッシャーマップ及び前記衣服の3Dモデルにかかる張力の分布を示すテンションマップの少なくとも一方に基づいて衣服を抽出する
請求項3に記載の情報処理装置。
【請求項5】
前記抽出手段は、ユーザ毎に特定される身体の部位における前記プレッシャーマップにより示される圧力又は前記テンションマップにより示される張力がしきい値以下となる衣服を抽出する
請求項4に記載の情報処理装置。
【請求項6】
ユーザ毎の衣服の購買履歴又は使用履歴から前記身体の部位及び前記しきい値を推定する推定手段
を有する請求項5に記載の情報処理装置。
【請求項7】
前記3Dモデルを動かす際の動きが、ユーザ毎に定義される
請求項1乃至6のいずれか一項に記載の情報処理装置。
【請求項8】
前記衣服を購入した前記ユーザから、当該衣服を使用した後の当該衣服に対する嗜好の入力を受け付ける受け付け手段と、
前記受け付け手段が受け付けた嗜好を前記データベースに書き込む書き込み手段と
を有する請求項1乃至7のいずれか一項に記載の情報処理装置。
【請求項9】
複数の衣服の3Dモデルを示す3Dデータが記憶されたデータベースにアクセスするステップと、
ユーザの3Dモデルを示す3Dデータを取得するステップと、
前記複数の衣服の中から、前記取得された3Dデータにより示されるユーザの3Dモデルに当該衣服の3Dモデルを着せた状態でのシミュレーション結果に基づいて衣服を抽出するステップと、
前記抽出された衣服を特定する情報を出力するステップと
を有し、
前記シミュレーション結果が、前記衣服の3Dモデルを着せた前記ユーザの3Dモデルを動かすシミュレーションの結果を含み、
前記衣服の3Dモデルを着せた前記ユーザの3Dモデルを動かした動画を当該ユーザに提示するステップと、
前記動画を視聴した前記ユーザから前記衣服に対する嗜好の入力を受け付けるステップと、
前記受け付けた嗜好を前記データベースに書き込むステップと
を有する情報処理方法。
【請求項10】
複数の衣服の3Dモデルを示す3Dデータが記憶されたデータベースにアクセスするステップと、
ユーザの3Dモデルを示す3Dデータを取得するステップと、
前記複数の衣服の中から、前記取得された3Dデータにより示されるユーザの3Dモデルに当該衣服の3Dモデルを着せた状態でのシミュレーション結果に基づいて衣服を抽出するステップと、
前記抽出された衣服を特定する情報を出力するステップと
を有し、
前記データベースが、前記複数の衣服の各々について、当該衣服に対応する標準体型の人体の3Dモデルを示す3Dデータを含み、
前記シミュレーション結果が、前記ユーザの3Dモデルの所定部位と前記衣服の3Dモデルの所定部位とのずれ、当該ユーザの3Dモデルにかかる圧力、及び当該衣服の3Dモデルにかかる張力の少なくとも1種を含み、
前記標準体型の人体の3Dモデルと前記取得された3Dデータにより示されるユーザの3Dモデルとの対比結果に基づいて前記ずれ、前記圧力、又は前記張力を計算するステップ
を有する情報処理方法。
【請求項11】
コンピュータに、
複数の衣服の3Dモデルを示す3Dデータが記憶されたデータベースにアクセスするステップと、
ユーザの3Dモデルを示す3Dデータを取得するステップと、
前記複数の衣服の中から、前記取得された3Dデータにより示されるユーザの3Dモデルに当該衣服の3Dモデルを着せた状態でのシミュレーション結果に基づいて衣服を抽出するステップと、
前記抽出された衣服を特定する情報を出力するステップと
を実行させるためのプログラムであって、
前記シミュレーション結果が、前記衣服の3Dモデルを着せた前記ユーザの3Dモデルを動かすシミュレーションの結果を含み、
前記衣服の3Dモデルを着せた前記ユーザの3Dモデルを動かした動画を当該ユーザに提示するステップと、
前記動画を視聴した前記ユーザから前記衣服に対する嗜好の入力を受け付けるステップと、
前記受け付けた嗜好を前記データベースに書き込むステップと
を実行させるためのプログラム。
【請求項12】
コンピュータに、
複数の衣服の3Dモデルを示す3Dデータが記憶されたデータベースにアクセスするステップと、
ユーザの3Dモデルを示す3Dデータを取得するステップと、
前記複数の衣服の中から、前記取得された3Dデータにより示されるユーザの3Dモデルに当該衣服の3Dモデルを着せた状態でのシミュレーション結果に基づいて衣服を抽出するステップと、
前記抽出された衣服を特定する情報を出力するステップと
を実行させるためのプログラムであって、
前記データベースが、前記複数の衣服の各々について、当該衣服に対応する標準体型の人体の3Dモデルを示す3Dデータを含み、
前記シミュレーション結果が、前記ユーザの3Dモデルの所定部位と前記衣服の3Dモデルの所定部位とのずれ、当該ユーザの3Dモデルにかかる圧力、及び当該衣服の3Dモデルにかかる張力の少なくとも1種を含み、
前記標準体型の人体の3Dモデルと前記取得された3Dデータにより示されるユーザの3Dモデルとの対比結果に基づいて前記ずれ、前記圧力、又は前記張力を計算するステップ
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数の衣服の中からユーザの嗜好に適合した衣服を選択する技術に関する。
【背景技術】
【0002】
オンライン上で衣服の試着を行う、仮想試着の技術が知られている。例えば特許文献1は、ユーザが様々な動きをしたときの着用効果をリアルタイムで確認する仮想試着システムを開示している。
【先行技術文献】
【特許文献】
【0003】
【文献】中国特許出願公開第107578323号明細書
【発明の概要】
【発明が解決しようとする課題】
【0004】
従来、仮想試着ではその衣服を着用したときの着用感(例えばサイズ感又は素材感)が分かりづらく、ユーザが自分の嗜好に合う衣服を選択するのが困難であった。
【0005】
これに対し本発明は、ユーザが自分の嗜好に合う衣服をより容易に選択することができる技術を提供する。
【課題を解決するための手段】
【0006】
本開示の一態様は、複数の衣服の3Dモデルを示す3Dデータが記憶されたデータベースにアクセスするアクセス手段と、ユーザの3Dモデルを示す3Dデータを取得する取得手段と、前記複数の衣服の中から、前記取得手段により取得された3Dデータにより示されるユーザの3Dモデルに当該衣服の3Dモデルを着せた状態でのシミュレーション結果に基づいて衣服を抽出する抽出手段と、前記抽出手段により抽出された衣服を特定する情報を出力する出力手段とを有する情報処理装置を提供する。
【0007】
前記シミュレーション結果が、前記ユーザの3Dモデルの所定部位と前記衣服の3Dモデルの所定部位とのずれ、当該ユーザの3Dモデルにかかる圧力、及び当該衣服の3Dモデルにかかる張力の少なくとも1種を含んでもよい。
【0008】
前記抽出手段は、前記ユーザの3Dモデルにかかる圧力の分布を示すプレッシャーマップ及び前記衣服の3Dモデルにかかる張力の分布を示すテンションマップの少なくとも一方に基づいて衣服を抽出してもよい。
【0009】
前記抽出手段は、ユーザ毎に特定される身体の部位における前記プレッシャーマップにより示される圧力又は前記テンションマップにより示される張力がしきい値以下となる衣服を抽出してもよい。
【0010】
この情報処理装置は、ユーザ毎の衣服の購買履歴又は使用履歴から前記身体の部位及び前記しきい値を推定する推定手段を有してもよい。
【0011】
前記シミュレーション結果が、前記衣服の3Dモデルを着せた前記ユーザの3Dモデルを動かすシミュレーションの結果を含んでもよい。
【0012】
前記3Dモデルを動かす際の動きが、ユーザ毎に定義されてもよい。
【0013】
この情報処理装置は、前記衣服の3Dモデルを着せた前記ユーザの3Dモデルを動かした動画を当該ユーザに提示する提示手段と、前記動画を視聴した前記ユーザから前記衣服に対する嗜好の入力を受け付ける受け付け手段と、前記受け付け手段が受け付けた嗜好を前記データベースに書き込む書き込み手段とを有してもよい。
【0014】
この情報処理装置は、前記衣服を購入した前記ユーザから、当該衣服を使用した後の当該衣服に対する嗜好の入力を受け付ける受け付け手段と、前記受け付け手段が受け付けた嗜好を前記データベースに書き込む書き込み手段とを有してもよい。
【0015】
前記データベースが、前記複数の衣服の各々について、当該衣服の寸法及び形状にフィットする最適な人体の3Dモデルを示す3Dデータを含み、前記最適な人体の3Dモデルと前記取得手段により取得された3Dデータにより示されるユーザの3Dモデルとの対比結果に基づいて前記ずれ、前記圧力、又は前記張力を計算する計算手段を有してもよい。
【0016】
本開示の別の一態様は、複数の衣服の3Dモデルを示す3Dデータが記憶されたデータベースにアクセスするステップと、ユーザの3Dモデルを示す3Dデータを取得するステップと、前記複数の衣服の中から、前記取得された3Dデータにより示されるユーザの3Dモデルに当該衣服の3Dモデルを着せた状態でのシミュレーション結果に基づいて衣服を抽出するステップと、前記抽出された衣服を特定する情報を出力するステップとを有する情報処理方法を提供する。
【0017】
本開示のさらに別の一態様は、コンピュータに、複数の衣服の3Dモデルを示す3Dデータが記憶されたデータベースにアクセスするステップと、ユーザの3Dモデルを示す3Dデータを取得するステップと、前記複数の衣服の中から、前記取得された3Dデータにより示されるユーザの3Dモデルに当該衣服の3Dモデルを着せた状態でのシミュレーション結果に基づいて衣服を抽出するステップと、前記抽出された衣服を特定する情報を出力するステップとを実行させるためのプログラムを提供する。
【発明の効果】
【0018】
本発明によれば、ユーザが自分の嗜好に合う衣服をより容易に選択することができる。
【図面の簡単な説明】
【0019】
【
図1】一実施形態に係る情報処理システム1の機能構成を例示する図。
【
図2】サーバ10のハードウェア構成を例示する図。
【
図4】情報処理システム1のユースケースを例示するシーケンスチャート。
【
図5】ステップS203におけるUI画面を例示する図。
【
図7】情報処理システム1の別のユースケースを例示するシーケンスチャート。
【符号の説明】
【0020】
1…情報処理システム、10…サーバ、101…CPU、102…メモリ、103…ストレージ、111…データベース、112…データベース、113…データベース、11…記憶手段、12…アクセス手段、13…取得手段、14…抽出手段、15…出力手段、19…制御手段、20…ユーザ端末、21…記憶手段、22…UI手段
【発明を実施するための形態】
【0021】
1.構成
図1は、一実施形態に係る情報処理システム1の機能構成を例示する図である。情報処理システム1は衣服に関する情報を提供するシステムであり、より詳細には、人体の3Dモデルに衣服の3Dモデルを着せたシミュレーションを行った結果に関する情報を出力するシステムである。一例において、情報処理システム1は、ユーザが複数の衣服の中から自分の嗜好に合う衣服を検索する目的で用いられる。3Dモデルとは、仮想空間における対象物の形状を表現する立体的な仮想オブジェクトをいう。ここで、3Dモデルを表すデータを3Dデータ(又は3モデリングデータ)という。衣服の3Dデータとは、衣服の3Dモデルを表すデータをいう。ユーザの3Dデータとは、ユーザの人体の3Dモデルを表すデータをいう。
【0022】
情報処理システム1は、衣服検索サービスを提供する。情報処理システム1は、ハードウェアとしてはサーバ10及びユーザ端末20を有する。サーバ10は、衣服検索サービスにおけるサーバとして機能するコンピュータ装置である。ユーザ端末20は、衣服検索サービスにおけるクライアントとして機能するコンピュータ装置である。
【0023】
情報処理システム1は、記憶手段11、アクセス手段12、取得手段13、抽出手段14、出力手段15、制御手段19、記憶手段21、UI手段22、及び制御手段29を有する。この例において、記憶手段11、アクセス手段12、取得手段13、抽出手段14、出力手段15、及び制御手段19はサーバ10に、記憶手段21、UI手段22、及び制御手段29はユーザ端末20に、それぞれ実装される。
【0024】
記憶手段11は、各種のデータを記憶する。記憶手段11が記憶するデータには、例えば、データベース111、データベース112、及びデータベース113が含まれる。データベース111は、複数の衣服の3Dデータが記録されたデータベース(すなわち衣服データベース)である。データベース112は、複数の人体の3Dデータが記録されたデータベース(すなわち人体データベース)である。データベース113は、ユーザに関する情報が記録されたデータベース(すなわちユーザデータベース)である。アクセス手段12は、データベース111、データベース112、及びデータベース113にアクセスする。取得手段13は、ユーザの3Dデータを取得する。抽出手段14は、複数の衣服の中から、ユーザの3Dモデルに当該衣服の3Dモデルを着せた状態でのシミュレーション結果に基づいて衣服を抽出する。この例において、シミュレーション結果は、ユーザの3Dモデルの所定部位と衣服の3Dモデルの所定部位とのずれ、ユーザの3Dモデルにかかる圧力、及び衣服の3Dモデルにかかる張力の少なくとも1種を含む。出力手段15は、抽出手段14により抽出された衣服を特定する情報を出力する。制御手段19は各種の制御を行う。
【0025】
記憶手段21は各種のデータを記憶する。UI手段22は、ユーザインターフェースを提供する。制御手段29は各種の制御を行う。
【0026】
図2は、サーバ10のハードウェア構成を例示する図である。サーバ10は、CPU101、メモリ102、ストレージ103、通信IF104を有するコンピュータ装置である。CPU101は、プログラムに従って各種の演算を行う処理装置である。メモリ102は、CPU101がプログラムを実行する際のワークエリアとして機能する主記憶装置であり、例えばRAMを含む。ストレージ103は、各種のデータを記憶する補助記憶装置であり、例えばSSD又はHDDを含む。通信IF104は所定の規格(例えばイーサネット)に従って他の装置と通信する装置であり、例えばNICを含む。
【0027】
この例において、ストレージ103が記憶するプログラムには、コンピュータ装置を情報処理システム1におけるサーバ10として機能させるためのプログラム(以下「サーバプログラム」という)が含まれる。CPU101がサーバプログラムを実行している状態において、メモリ102及びストレージ103の少なくとも一方が記憶手段11の一例である。CPU101がアクセス手段12、取得手段13、抽出手段14、及び制御手段19の一例である。通信IF104が出力手段15の一例である。
【0028】
ハードウェア構成の詳細な説明は省略するが、ユーザ端末20は汎用のコンピュータ装置、例えばスマートフォン又はパーソナルコンピュータである。ユーザ端末20には、コンピュータ装置を情報処理システム1におけるユーザ端末20として機能させるためのプログラム(以下「クライアントプログラム」という)がインストールされている。クライアントプログラムは、情報処理システム1専用のアプリケーションプログラム又は汎用のウェブブラウザである。
【0029】
2.動作
情報処理システム1の動作を説明する。以下ではまず、サーバ10の基本動作について説明する。その後、具体的なユースケースに基づく動作をいくつか説明する。
【0030】
2-1.基本動作
図3は、サーバ10の動作を示すフローチャートである。ステップS101において、サーバ10は、シミュレーションの対象となる衣服群を特定する。この衣服群の母集団は、データベース111に記録されている衣服である。データベース111は、複数のレコードを含む。各レコードは、一の衣服について、衣服ID、属性情報、画像の所在情報、及び3Dモデルの所在情報を含む。衣服IDはその衣服を特定する識別情報である。属性情報はその衣服の属性を示す情報である。衣服の属性は、例えば、ブランド、デザイナー、種別(例えば、ジャケット、シャツ、パンツ、スカートの別等)、型番、価格帯、サイズ、素材、色、柄、及び説明文の少なくとも1種を含む。この例においては、同じデザインで複数のサイズ、色がある場合、これらに対して共通の衣服IDが与えられる。画像の所在情報は、衣服の画像データが記憶されているリソースを特定する情報、例えばURLである。3Dモデルの所在情報は、衣服の3Dデータが記憶されているリソースを特定する情報、例えばURLである。複数のサイズのそれぞれに対して画像が用意されている場合、画像の所在情報は、サイズ毎に異なるURLを含む。色及び柄についても同様である。3Dモデルについても同様である。
【0031】
サーバ10は、データベース111に記録されている衣服の中から、その属性に基づいて衣服群を特定する。例えば、特定のブランドが指定された場合、サーバ10は、データベース111に記録されている衣服の中から、そのブランドの衣服群を特定する。
【0032】
ステップS102において、サーバ10は、指定された人体(以下「指定人体」という)の3Dデータを取得する。指定人体は、例えばサーバ10にログインしているユーザの人体である。この例において、サーバ10は、データベース112から3Dデータを取得する。データベース112は、複数のレコードを含む。各レコードは、一のユーザ(すなわち人間)について、3DモデルID、ユーザID、3Dデータ、及び3Dデータの属性情報を含む。3DモデルIDはその3Dモデルを特定する識別情報である。ユーザIDはそのユーザを特定する識別情報である。3Dデータの属性情報は、3Dモデルの属性を示す情報、例えば生成日時及び生成者を示す情報を含む。3Dデータの属性情報は、その人体の3Dモデルにさせる動き又は動作を示す動き情報を含んでもよい。
【0033】
ステップS103において、サーバ10は、人体の3Dモデルに衣服の3Dモデルを着せた状態で行われるシミュレーションの際にその人体の3Dモデルに行わせる動き(以下「指定動作」という)を特定する。一例において、指定動作はあらかじめ決められている。別の例において、指定動作はユーザによって指定される。さらに別の例において、指定動作はユーザの属性に応じてサーバ10により自動的に決定される。
【0034】
ステップS104において、サーバ10は、特定された衣服群の中から対象となる一の衣服(以下「対象衣服」という)を特定する。サーバ10は、衣服群に含まれる複数の衣服の各々について所定の基準に従って優先順位を与える。サーバ10は、この優先順位に従って対象衣服を特定する。あるいは、対象衣服はユーザ端末20により指定されてもよい。
【0035】
ステップS105において、サーバ10は、指定人体の3Dモデルに対象衣服の3Dモデルを着せた状態で指定動作を行わせるシミュレーションを行う。このシミュレーションは、例えば以下の(ア)~(オ)の処理のうち少なくとも一種を含む。シミュレーション自体には、例えば公知の技術が用いられる。以下の(ア)~(オ)のうちどの処理が行われるかは、例えばユーザに応じて決められる。
【0036】
(ア)指定人体の3Dモデルの特定部位と対象衣服の3Dモデルの特定部位との寸法の比較。指定人体の特定部位及び対象衣服の特定部位はいずれも任意指定であり、例えば、いずれも太ももである。通常衣服のサイズについては、胸囲及び胴囲といったあらかじめ決められた限定された部位のサイズしか表示されてないので、標準的な体型と比較すると太ももが太いといった特徴のある人は、胸囲及び胴囲だけを見ても本当にその衣服を着ることができるのか判断することができない。しかしこのシミュレーションによれば任意の部位の寸法を比較することができるので、各ユーザが自分の体型でもその衣服を着ることができるかどうか容易に判断することができる。
【0037】
(イ)指定人体の3Dモデルが対象衣服の3Dモデルを着た状態で指定動作を行う動画の生成。このシミュレーションは、指定人体に指定動作を行わせたときに、人体の動きによって衣服にシワができたり、衣服の裾がはためいたり、重力によって裾が垂れ下がったりする様子を可視化することを含む。例えば、指定動作は歩く動きであり、指定人体が歩く動きをするのに伴って対象衣服にできるシワが変化したり、スカートの裾がヒラヒラとはためいたり、重力によって裾が垂れ下がったりする様子が可視化される。
【0038】
(ウ)指定人体の3Dモデルが対象衣服の3Dモデルを着た状態で指定動作を行わせたときの、指定人体の所定部位と対象衣服の所定部位とのずれの測定。例えば、指定動作は椅子に座る動きであり、指定人体の所定部位はくるぶしであり、対象衣服の所定部位はズボンの裾である。指定人体が対象衣服を着た状態で椅子に座ったときにくるぶしとズボンの裾とがどれくらいずれるのか(すなわちくるぶしから何センチ上にズボンの裾がくるのか)が可視化される。
【0039】
(エ)指定人体の3Dモデルが対象衣服の3Dモデルを着た状態で指定動作を行わせたときの、指定人体において特定部位が受ける圧力、又は指定人体の3Dモデルにおける圧力を示す圧力マップ(プレッシャーマップ)の作成。圧力マップとは、人体が衣服から受ける圧力の分布を可視化した情報をいう。人体の表面が複数の領域に区分され(例えばメッシュで分けられ)、各領域における圧力値が視覚的に(例えば異なる色で)マッピングされる。例えば、指定動作は歩く動きであり、指定人体が歩く動きをするのに伴って対象衣服から受ける圧力が変わる。例えば右腕を上げたときに右の肩甲骨にどれくらいの圧力を受けるのか、その圧力が右腕を上げる動作に伴ってどう変化するのかが可視化される。
【0040】
(オ)指定人体の3Dモデルが対象衣服の3Dモデルを着た状態で指定動作を行わせたときの、対象衣服において特定部位に生じる張力、又は対象衣服の3Dモデル全体における張力マップ(テンションマップ)の作成。張力マップとは、人体が衣服を着た状態でその衣服において発生する張力の分布を可視化した情報をいう。人体の表面が複数の領域に区分され(例えばメッシュで分けられ)、各領域における圧力値が視覚的に(例えば異なる色で)マッピングされる。例えば、指定動作は歩く動きであり、指定人体が歩く動きをするのに伴って対象衣服において発生する圧力が変わる。例えば右腕を上げたときに対象衣服の右の肩甲骨に相当する部位にどれくらいの聴力が発生するのかが可視化される。
【0041】
ステップS106において、サーバ10は、対象衣服を更新する。すなわち、サーバ10は、その時点の対象衣服の次の優先順位を有する衣服を新たな対象衣服として更新する。対象衣服を更新すると、サーバ10は、処理を再びステップS103に移行する。ステップS101において特定された衣服群に属する全ての衣服について処理が完了した場合、サーバ10は、処理をステップS107に移行する。
【0042】
ステップS107において、サーバ10は、衣服群の中からシミュレーション結果に基づいて衣服を抽出する。より具体的には、サーバ10は、衣服群の中からシミュレーション結果が所定の条件を満たす衣服を抽出する。シミュレーションの内容が上記の(ア)~(オ)の場合、所定の条件としては例えば以下の条件が用いられる。
(ア)対象衣服の3Dモデルの特定部位と指定人体の3Dモデルの特定部位との寸法差がしきい値以上である(対象衣服の3Dモデルの特定部位の方が大きい)。
(イ)指定人体の3Dモデルが対象衣服の3Dモデルを着た状態で指定動作を行うときに対象衣服の3Dモデルに生じるシワの最大寸法がしきい値以下である。
(ウ)指定人体の3Dモデルが対象衣服の3Dモデルを着た状態で指定動作を行わせたときの、指定人体の所定部位と対象衣服の所定部位とのずれがしきい値以下である。
(エ)指定人体の3Dモデルが対象衣服の3Dモデルを着た状態で指定動作を行わせたときの、指定人体において特定部位が受ける圧力又は圧力マップにおける圧力の最大値がしきい値以下である。
(オ)指定人体の3Dモデルが対象衣服の3Dモデルを着た状態で指定動作を行わせたときの、対象衣服において特定部位に生じる張力又は張力マップにおける張力の最大値がしきい値以下である。
【0043】
ステップS108において、サーバ10は、抽出された衣服に関連する衣服情報を出力する。衣服情報は衣服に関連する情報であり、例えば衣服の属性情報の少なくとも一部を含む。抽出された衣服が複数ある場合、サーバ10は、複数の抽出された衣服の各々について衣服情報を出力する。衣服情報の出力先は、例えばユーザ端末20である。
【0044】
2-2.ユースケース
2-2-1.Eコマース
図4は、情報処理システム1のユースケースを例示するシーケンスチャートである。この例において、情報処理システム1はEコマース(すなわちウェブ販売)に用いられる。サーバ10は、様々なブランドの衣服を販売するECサービスを消費者に対して提供する。ユーザ端末20のユーザは、ECサービスにおいて衣服を購入しようとするユーザである。情報処理システム1は、ユーザに仮想試着を提供する。すなわちユーザは、衣服の購入前に自身の3Dモデルにその衣服の3Dモデルを着せたシミュレーション結果を視覚的に確認することができる。
【0045】
ステップS201において、ユーザ端末20は、ECサービスのサイト(すなわちサーバ10)にアクセスする。サーバ10は、アクセスしてきたユーザ端末20に対しECサービスのUI画面のデータを送信する(ステップS202)。ユーザ端末20は、このUI画面を表示する(ステップS203)。このUI画面は、ユーザに検索条件を入力させるためのUIオブジェクトを含む。
【0046】
図5は、ステップS203におけるUI画面を例示する図である。この例においては、検索条件を入力させるためのUIオブジェクトとして、項目名及び入力欄が示されている。ユーザは、このUI画面において検索条件を入力する。項目名は、データベース111における衣服の属性情報に対応している。この図では、項目名として、ブランド、デザイナー、種別、型番、価格帯、サイズ、素材、色、柄、及び説明文が設定されている。これらの項目のうち一部(例えば、ブランド、種別、価格帯、サイズ、及び色)はプルダウンメニュー形式であり、他の一部は自由入力形式である。検索条件を入力すると、ユーザは、検索ボタンを押す。
【0047】
再び
図4を参照する。検索ボタンが押されると、ユーザ端末20は、サーバ10に検索要求を送信する(ステップS204)。この検索要求は、例えば、ユーザ端末20にログインしているユーザのユーザID及び
図5のUI画面において入力された検索条件(すなわち検索キー)を含む。ユーザ端末20から検索要求を受信すると、サーバ10は、この検索要求に従って衣服を検索する(ステップS205)。例えば。検索要求が特定のブランド名及び種別として「ジャケット」を含んでいる場合、データベース111の中からそのブランドのジャケットのデータが全て抽出される。こうして抽出されたジャケットに係るデータが、サーバ10の基本動作のステップS101における衣服群に相当する。
【0048】
ステップS206において、サーバ10は、データベース112から人体の3Dデータを取得する。ここで取得される3Dデータは、検索要求に含まれるユーザIDに対応する3Dデータである。すなわち、ユーザ端末20にログインしているユーザの人体が、サーバ10の基本動作のステップS102における指定人体である。
【0049】
ステップS207において、サーバ10は、検索要求に含まれるユーザIDに対応する動き情報をデータベース112から取得する。ここで取得される動きデータにより示される動きは、サーバ10の基本動作のステップS103における指定動作である。この例においてユーザは、仮想試着において自身の人体の3Dモデルにさせる動きを定義し、この動きを示す動き情報をあらかじめデータベース112に記録している。一例において、サーバ10が定型の動き情報を複数記憶しており、ユーザはこれら複数の動き情報の中から自身の3Dモデルに行わせたい動きを選択する。データベース112には、ユーザにより選択された動き情報の識別情報が記録されている。
【0050】
ステップS208において、サーバ10は、ステップS205において抽出された衣服群に含まれる衣服の各々に対し優先順位を与える。例えば、サーバ10は、ステップS205において抽出された衣服群に含まれる衣服の各々と、そのユーザが過去に購入した衣服との類似度を計算する。そのユーザが過去に購入した衣服の購買情報はデータベース113に記録されており、サーバ10はデータベース113を参照して類似度を計算する。サーバ10は、計算された類似度が高いものから順に高い優先順位を与える。
【0051】
ステップS209において、サーバ10は、まだシミュレーションが終了していない衣服のうち優先順位が最も高い衣服を対象衣服として特定する。ステップS210において、サーバ10は、ユーザの人体(すなわち指定人体)に対象衣服を着せて指定動作を行わせるシミュレーションを行う。このシミュレーションは、(ア)指定人体の3Dモデルの特定部位と対象衣服の3Dモデルの特定部位との寸法の比較、(イ)指定人体の3Dモデルが対象衣服の3Dモデルを着た状態で指定動作を行う動画の生成、(ウ)指定人体の所定部位と対象衣服の所定部位とのずれの測定、及び(エ)圧力マップの作成を含む。このシミュレーションに関し、(ア)の特定部位及び(ウ)の特定部位は、指定人体に応じて(すなわちユーザに応じて)特定される。ユーザは、衣服を着る際に寸法が気になる部位をあらかじめ指定する。例えば、標準体型よりも首が太めで首回りの寸法が気になるユーザは、寸法を比較する部位として首回りをあらかじめ指定する。サーバ10は、この部位を示す情報を、このユーザの寸法比較に関する特定部位の識別情報としてデータベース113に記録する。また、ユーザは、衣服を着て特定のポーズを取ったときに衣服の特定部位との相対的位置関係が気になる自身の身体の特定部位(例えば右手の手首)及び比較される衣服の特定部位(例えば右手の袖先)をあらかじめ指定する。サーバ10は、これらの特定部位を示す情報を、このユーザのずれに関する特定部位の識別情報としてデータベース113に記録する。サーバ10は、データベース113を参照して(ア)及び(ウ)の部位を特定する。サーバ10は、こうしてユーザ毎に特定された部位に関して(ア)及び(ウ)のシミュレーションを行う。なお多くの場合、対象衣服は全身の一部のみに着用するものである。例えば対象衣服がジャケットである場合、裸のユーザの3Dモデルにジャケットだけを着せても試着の用をなさないことがある。そこで、対象衣服以外の衣服(対象衣服がジャケットである場合には、シャツ、パンツ、靴下、及び靴)も一緒に着せた状態でシミュレーションが行われてもよい。この場合において、対象衣服と一緒に着せる服は、ユーザにより指定されてもよいし、サーバ10が対象衣服に合わせて自動的に選択してもよい。
【0052】
ステップS211において、サーバ10は、シミュレーション結果がユーザの嗜好に適合するか判断する。ユーザの嗜好はあらかじめ定義されており、データベース113に記録されている。例えば、(ウ)のシミュレーションに関し「両手を下ろして直立した姿勢を取ったときの人体の右手首の位置と衣服の右手の袖先との位置の差が1~2cm」という条件が、ユーザの嗜好を示す情報としてあらかじめデータベース113に登録されている。また、(エ)のシミュレーションに関し、「圧力マップにおける圧力の最大値が1N/m2以下である」という条件が、ユーザの嗜好を示す情報としてあらかじめデータベース113に登録されている。サーバ10は、シミュレーション結果がこれらの条件を満たすか判断する。シミュレーション結果がこれらの条件を満たすと判断された場合、サーバ10は、その衣服がユーザの嗜好を満たすことを示すフラグを記録する。ステップS205において抽出された衣服群に含まれる全ての衣服について判断が終了するまで、サーバ10はステップS209及びS210の処理を繰り返し実行する。
【0053】
全ての衣服について判断が完了すると、サーバ10は、嗜好を満たすと判断された衣服の一覧をユーザ端末20に送信する(ステップS212)。ユーザ端末20は、この一覧を表示する(ステップS213)。この一覧において、複数の衣服は、指定された順番(又はランキング)で並べられる。衣服に順番を与える項目は、例えば、シミュレーション結果に関する項目(例えば圧力マップにおける最大圧力が低い順)、過去に購入した衣服との類似度(例えば類似度が高い順)、又は衣服の属性に関する項目(例えば価格が安い順)である。一覧においては衣服のサムネイル画像が表示される。このサムネイル画像は、データベース111に記録されている画像(すなわち静止画)のサムネイル画像である。
【0054】
この例によれば、ユーザは自身の嗜好に適合する衣服をより容易に発見することができる。また、従来は実際にその衣服を試着してみないと分からなかった情報(例えば、首回りのタイト感及び右腕を上げたときに肩甲骨にかかる圧力)をオンラインの仮想試着により知ることができる。例えば、ある商品について自分にはMサイズが合っているのかLサイズが合っているのか分からないような場合でも、どちらのサイズを選べばよいのかより容易に判断をすることができる。一覧表示画面においてユーザが一の衣服を選択すると、ユーザ端末20は選択された衣服の詳細画面を表示する。
【0055】
図6は、詳細画面を例示する図である。この詳細画面は、領域91、領域92、及び領域93を有する。領域91において、その衣服の3Dモデルを着せたユーザの3Dモデルに指定動作をさせた動画が再生される。ボタン911は圧力マップの表示有無を切り替えるUIオブジェクトである。圧力マップの表示が「有」に設定されていると、この動画においてユーザの動きに合わせて圧力マップが(ユーザの3Dモデル上に)表示される。圧力マップの表示が「無」に設定されていると、圧力マップは表示されず、その衣服の3Dモデルを着せたユーザの3Dモデルに指定動作をさせた動画が再生される。ボタン912は注目点を拡大表示するUIオブジェクトである。ボタン912が押されると、この動画においてユーザがあらかじめ登録した注目点(例えば右袖)が拡大して表示される。領域92にはその衣服の属性情報が表示される。領域93にはボタン931が表示される。ボタン931はその商品の購入指示を受け付けるUIオブジェクトである。ユーザは、仮想試着を確認しながらその衣服を購入することができる。
【0056】
このユースケースは例えば以下のような変形実施が可能である。以下の例の少なくとも一部を、他の一部又は上記のユースケースの例と組み合わせて適用してもよい。
【0057】
(1)シミュレーション結果の表示
シミュレーション結果を表示する際、サーバ10は、そのユーザにとって問題となりそうな部分を強調して表示してもよい。強調は、例えば、その部分の拡大、その部分にアノテーション付与、又はそのタイミングでのスローモーションである。例えばユーザの3Dモデルに腕を振って歩く動作をさせるとき、腕を上げたときに肘の部分の圧力が基準より高くなるのであれば、圧力が基準より高くなるときに肘が拡大される、又は肘が丸い図形で囲まれる。あるいは、圧力が基準より高くなるときに動画の再生速度が遅くなる。この例によれば、ユーザに対しどの部分に問題がありそうなのか強調して表示をすることができる。
【0058】
(2)シミュレーション結果に対する嗜好の受け付け
サーバ10は、シミュレーション結果をユーザに提示した後で、そのシミュレーション結果に対するユーザの嗜好(評価又はフィードバック)の入力を受け付けてもよい。この例において、サーバ10は、シミュレーション結果をユーザに提示する提示手段と、そのシミュレーション結果に対するユーザの嗜好の入力を受け付ける受け付け手段を有するといえる。ユーザの嗜好とは、そのシミュレーション結果を見たユーザが、その衣服を購入したい又は着たいと思うかどうかの評価をいう。例えば首回りのタイト感が気になるユーザは、シミュレーション結果において首回りの寸法又は圧力を見て、この衣服を着たり買ったりすることはないと判断することがある。サーバ10は、入力された嗜好のデータをデータベース113に記録する(すなわちサーバ10は、ユーザの嗜好をデータベース113に書き込む書き込み手段を有すると言える)。サーバ10は、このデータを参照してユーザの嗜好(例えば特定部位に関するしきい値の設定)を学習することができる。
【0059】
(3)ユーザの嗜好を推定
サーバ10は、ユーザの過去の購買履歴及びその衣服に対する評価から、ユーザの嗜好を推定する推定手段を有してもよい。すなわちサーバ10は、ユーザの嗜好を特定する情報を自動的に生成してもよい。ユーザの嗜好を特定する情報は、注目点となる身体の部位又は衣服の部位及びその部位に関するしきい値を含む。この例において、サーバ10は、ユーザが購入した衣服のシミュレーション結果をデータベース113に記録する。さらに、ユーザは購入した衣服について、その評価(又は嗜好若しくはフィードバック)を情報処理システム1に入力する(すなわちサーバ10は、その衣服を購入後、実際に使用又は着用したユーザの、その衣服に対する嗜好を受け付ける受け付け手段を有すると言える)。例えばユーザは注目点として「首回りの寸法」、「袖先の位置」、及び「肩甲骨の圧力」をあらかじめ登録している。衣服の購入後の所定のタイミング(例えば1週間後)において、サーバ10は、その衣服を着用した感想として、「首回りの寸法」、「袖先の位置」、及び「肩甲骨の圧力」の満足度(例えば5段階評価)を入力するよう、ユーザに促す。サーバ10は、ユーザが入力した評価をデータベース113に記録する(すなわちサーバ10は、ユーザの嗜好又は評価をデータベース113に書き込む書き込み手段を有すると言える)。所定のタイミング(例えば、評価した服の数がしきい値を超えた、又はユーザ登録からの日数がしきい値を超えた)において、サーバ10は、データベース113に記録されている評価から、ユーザの嗜好を特定する情報を自動的に生成する。サーバ10は、その衣服の3Dデータをユーザの3Dデータに着せたシミュレーション結果及び実際に着用した後の評価から、「首回りの寸法」、「袖先の位置」、及び「肩甲骨の圧力」の、そのユーザにとっての最適値又は最適範囲を計算する。
【0060】
サーバ10は、注目点となる身体の部位又は衣服の部位に関するしきい値だけでなく、注目点となる部位そのものを推定してもよい。この例において、サーバ10は、注目点候補を特定する。具体的には、サーバ10は、データベース113において注目点として登録されている部位を集計し、その全部又は一部(例えば注目点としての登録例が基準より多い部位)を注目点候補として特定する。サーバ10は、この注目点候補の中から例えば機械学習の手法を用いて注目点を推定する。サーバ10は、まず機械学習モデルを準備する。この機械学習モデルは、特定の1人のユーザに関し、これらの複数の注目点候補に関する数値(位置ずれ量、圧力、及び張力等)を入力層に、その衣服に対するそのユーザの総合評価(例えば5段階の総合評価)を出力層に、教師データとして与えて機械学習をさせたモデルである。サーバ10は、この機械学習モデルにおいて、総合評価との相関が基準より高い注目点候補を特定する。ここで特定された注目点候補が、推定された注目点である。
【0061】
ユーザの嗜好はシミュレーション結果に関する嗜好だけではなく、衣服の属性に関する嗜好を含んでもよい。例えば、サーバ10は、ブランド、デザイナー、価格帯、素材、色、及び柄の少なくとも1種について、ユーザの過去の購買履歴からユーザの嗜好を特定してもよい。この場合、サーバ10は、シミュレーション結果及び衣服の属性の各々に対し重みを与え、この重みを用いて衣服群に与える優先順位を計算してもよい。
【0062】
また、サーバ10は、ユーザの嗜好を推定する際に衣服の購買履歴に代えて、又は加えて衣服の使用履歴を参照してもよい。この場合、データベース113は複数のユーザの各々について、衣服の使用履歴を含む。ユーザは衣服を使用する度に(すなわちその衣服を着る度に)、その衣服を使用したことをユーザ端末20に入力する。ユーザ端末20は、サーバ10に対し使用履歴の記録を要求する。サーバ10は、データベース113に使用履歴を記録する。使用履歴は、複数のレコードを含む。各レコードは、衣服ID及び使用日時を含む。サーバ10は、購入履歴におけるユーザ評価に代えて又は加えて、使用履歴における使用回数又は使用頻度を用いることができる。
【0063】
(4)購買履歴
サーバ10は、ユーザの購買履歴をデータベース113に記録してもよい。サーバ10は、購買履歴に、そのユーザの3Dモデルにその衣服の3Dモデルを着せたシミュレーション結果(の少なくとも一部)を含めてもよい。サーバ10は、例えば、そのユーザの注目点に関するシミュレーション結果をデータベース113に記録する(すなわち、サーバ10は、そのユーザの3Dモデルにその衣服の3Dモデルを着せたシミュレーション結果を、その衣服の購買履歴とともにデータベースに書き込む書き込み手段を有すると言える)。この情報は、ユーザの嗜好の推定に用いることができる。さらに、サーバ10は、購買履歴に、ユーザが購入を決める直前に表示していたシミュレーション結果又は動きの情報を記録してもよい。これらの情報も、ユーザの嗜好の推定に用いることができる。
【0064】
(5)注目部位
シミュレーションの際の注目点はそのユーザによって事前に登録されたものに限定されない。サーバ10は、そのユーザにより事前に登録された注目点に加えて、又は代えて、その衣服を実際に購入した他のユーザが入力した評価に基づいて特定される部位を注目点として設定してもよい。例えば検索要求をしているユーザが「首回りの寸法」、「袖先の位置」、及び「肩甲骨の圧力」を注目点として登録しているが「肘の圧力」は注目点として登録していない場合において、その衣服を実際に購入した他のユーザのうち基準を超える数のユーザが「肘のきつさ」について否定的な評価をしているときは、サーバ10は、「肘の圧力」を注目点として加えてそのユーザに対するシミュレーションを行ってもよい。この例によれば、そのユーザが普段は気にしていない点であっても、その衣服を実際に購入した他のユーザが気になった点についてユーザに警告をすることができる。
【0065】
(6)購買履歴から似た着用感の衣服を提示
サーバ10は、ユーザの購買履歴の中から、指定された注目点に関するシミュレーション結果が指定衣服と類似した衣服を抽出してユーザに提示してもよい。この例において、データベース113には、先の例と同様、ユーザが購入した衣服のシミュレーション結果が記録されている。例えば
図6の詳細画面においてユーザが首回りを指定すると、サーバ10は、データベース113に記録されているシミュレーション結果において首回りの寸法が対象衣服と最も近い衣服(そのユーザが過去に購入した衣服)を抽出し、そのデータ(例えば画像)をユーザに提示する。ユーザは過去に自分が購入した衣服との対比において、対象衣服を着用した感覚を知ることができる。例えば、「あのとき買ったあの服と同じくらいの首回りのフィット感か」、「腕を上げたときの背中のきつさはあの服と同じくらいか」といった感覚を知ることができる。
【0066】
(7)シミュレーション結果に基づくお薦めの提示
サーバ10は、ユーザにより指定された検索条件に当てはまらない衣服(例えば、ユーザにより指定されたブランド以外のブランド)の衣服の中から、ユーザの嗜好に適合する服を抽出し、これをお薦めとしてユーザに提示してもよい。この例によれば、例えばユーザがこれまで知らなかったブランドの衣服でも、その着用感に基づいてユーザの嗜好に合う衣服を推薦することができる。
【0067】
(8)メーカーへのフィードバック
ある衣服を購入したユーザが複数(又は多数)いる場合、サーバ10がこれら複数のユーザからの評価を分析することにより、その衣服を製造又は販売するメーカーへのフィードバックをすることができる。情報処理システム1によれば、ある衣服を実際に購入したユーザが100人いて、これらのユーザの注目点は多い方から順に肘の圧力、胸回りの寸法、及び背中の圧力であり、実際に購入したユーザのうち40人が肘の圧力がきつすぎると評価している、といったデータを得ることができる。サーバ10は、このデータをメーカーへのフィードバックとして送信する。メーカーはこのフィードバックを受けて、その商品のデザインを改良したり、次期製品の開発に反映したりすることができる。あるいは、このフィードバックは特定の衣服に対するものではなく、複数の衣服全体を対象とするものであってもよい。
【0068】
(9)人体の3Dデータ
シミュレーションに用いられる人体の3Dデータは、検索要求をしたユーザの人体の3Dデータでなくてもよい。この例において、サーバ10は、複数の標準体型の人体の3Dデータを記憶している。サーバ10は、これら標準体型の3Dデータの中から、検索要求をしたユーザの体型に最も近い(そのユーザの3Dモデルとの類似度が最も高い)標準体型の3Dデータを選択し、これを指定人体の3Dデータとする。標準体型の3Dデータはあらかじめ用意されているので、サーバ10はその人体の3Dデータに衣服の3Dデータを着せたシミュレーションを事前に行い、その結果をデータベースに記録しておくことができる。サーバ10はユーザ毎にシミュレーションを行う必要がなくなり、既に実行済のシミュレーション結果の中からそのユーザの体型に最も近い標準体型のシミュレーション結果をデータベースから取得してユーザ端末20に送信する。この例によればシミュレーションをリアルタイムで行わなくてもよいため、ユーザにシミュレーション結果を提供する時間を短縮することができる。
【0069】
また、標準体型のデータを用いる場合において、サーバ10又はユーザ端末20が、そのユーザの3Dモデルと標準体型の3Dモデルとの対比結果(又は体型差)に基づいてシミュレーション結果を修正(又は補正)してもよい。この場合、サーバ10は、標準体型の人体の3Dモデルとユーザの3Dモデルとの対比結果に基づいてずれ、圧力、又は張力等を計算する計算手段を有するといえる。例えば、標準体型の3Dデータを用いて得られた圧力マップにおいて、そのユーザの3Dモデルの寸法が標準体型よりも大きい部位は圧力が高く、標準体型よりも小さい部位は圧力が低く、修正される。
【0070】
2-2-2.オンラインカスタムメイド
図7は、情報処理システム1の別のユースケースを例示するシーケンスチャートである。この例において、情報処理システム1はカスタムメイド又はオーダーメイド(いわゆるパターンオーダー)の衣服販売に用いられる。ユーザ端末20のユーザは、カスタムメイドのサービスにおいて衣服を購入しようとするユーザである。情報処理システム1は、ユーザに仮想試着を提供する。すなわちユーザは、衣服の購入前に自身の3Dモデルにその衣服の3Dモデルを着せたシミュレーション結果を視覚的に確認することができる。
【0071】
ステップS301において、ユーザ端末20は、カスタムメイドサービスのサイト(すなわちサーバ10)にアクセスする。サーバ10は、アクセスしてきたユーザ端末20に対しカスタムメイドサービスのUI画面のデータを送信する(ステップS302)。ユーザ端末20は、このUI画面を表示する(ステップS303)。このUI画面は、ユーザにカスタムメイドの条件を入力させるためのUIオブジェクトを含む。カスタムメイドの条件は、素材及びデザインに区分されている。素材及びデザインは、さらに複数の項目に細分化され、項目毎にユーザがその設定を入力する(ステップS304)。例えば、ジャケットに関し、素材は本体の生地、裏地の生地、及びボタンに区分されている。ユーザは、本体生地、裏地生地、及びボタンをそれぞれ所定の選択肢の中から選択する。デザインについても、全体形状(2つボタン及び3つボタンの別)、襟の形、及びポケットの形等に区分されている。ユーザは、全体形状、襟の形、及びポケットの形をそれぞれ所定の選択肢の中から選択する。さらにこのUI画面は、オーダーに際して着用感が気になる部分を指定するためのUIオブジェクトを含む。例えば過去の経験から太もものフィット感が気になるユーザは、着用感が気になる部位として太ももを指定する。このUI画面には仮想試着の開始を指示するボタンが含まれている。ユーザがこのボタンを押すと、ユーザ端末20は、サーバ10にシミュレーション要求を送信する(ステップS304)。
【0072】
ユーザ端末20からシミュレーション要求を受信すると、サーバ10は、データベース111においシミュレーションの対象となる衣服群を特定する(ステップS305)。この例においてデータベース111には、選択肢の組み合わせに応じた複数の衣服の3Dデータが記録されている。さらに、データベース111には、種々の部位の寸法を何パターンか変化させた(すなわち型紙が調整された)複数の3Dモデルが記録されている。サーバ10は、着用感が気になる部位として指定された部位の寸法を何パターンか変化させた(例えば、既にオーダーしたことのあるユーザであれば前回のオーダー時の寸法から1cm刻みで±3cmの範囲まで、新規ユーザであればそのユーザの3Dモデルの当該部位のサイズに対応する基準寸法から1cm刻みで±3cmの範囲まで)複数の3Dモデルを取得する。これらの型紙が異なる衣服をシミュレーションの対象となる衣服群として特定する(ステップS306)。
【0073】
ステップS307において、サーバ10は、データベース112から人体の3Dデータを取得する。ここで取得される3Dデータは、情報処理システム1にアクセスしているユーザIDに対応する3Dデータである。すなわち、ユーザ端末20にログインしているユーザの人体が、サーバ10の基本動作のステップS102における指定人体である。
【0074】
ステップS308において、サーバ10は、検索要求に含まれるユーザIDに対応する動き情報をデータベース112から取得する。ここで取得される動きデータにより示される動きは、サーバ10の基本動作のステップS103における指定動作である。この例においてユーザは、仮想試着において自身の人体の3Dモデルにさせる動きを定義し、この動きを示す動き情報をあらかじめデータベース112に記録している。
【0075】
ステップS309において、サーバ10は、ステップS306において抽出された衣服群に含まれる衣服の各々に対し優先順位を与える。例えば、サーバ10は、そのユーザが過去に購入した衣服と寸法が近い衣服に高い優先順位を与える。ステップS310において、サーバ10は、まだシミュレーションが終了していない衣服のうち優先順位が最も高い衣服を対象衣服として特定する。ステップS311において、サーバ10は、ユーザの人体(すなわち指定人体)に対象衣服を着せて指定動作を行わせるシミュレーションを行う。シミュレーションについては先のユースケースで説明したものと同様である。
【0076】
全ての衣服について判断が完了すると、サーバ10は、シミュレーション結果の一覧をユーザ端末20に送信する(ステップS312)。ここではシミュレーションが行われた全ての衣服(すなわち寸法)の結果がユーザ端末20に送信される(すなわちシミュレーションが行われた全ての衣服が抽出される)。ユーザ端末20は、この一覧を表示する(ステップS313)。この一覧において、複数の衣服は、指定された順番(又はランキング)で並べられる。衣服に順番を与える項目は、例えば、シミュレーション結果に関する項目(例えば圧力マップにおける最大圧力が低い順)である。
【0077】
この例によれば、衣服のカスタムメイドをする際に、ユーザは自身の嗜好に適合する寸法をより容易に発見することができる。また、従来は実際にその衣服を試着してみないと分からなかった情報(例えば、首回りのタイト感及び右腕を上げたときに肩甲骨にかかる圧力)をオンラインの仮想試着により知ることができる。例えば、カスタムメイドのパンツの太ももの寸法を何cmにすればよいか分からないような場合でも、どうすればよいのかより容易に判断をすることができる。一覧表示画面においてユーザが一の衣服を選択すると、ユーザ端末20は選択された衣服(寸法)の詳細画面を表示する。ユーザは、詳細画面においてその衣服の発注をすることができる。
【0078】
3.変形例
本発明は上述の実施形態に限定されるものではなく種々の変形実施が可能である。以下、変形例をいくつか説明する。以下の変形例のうち2つ以上のものが組み合わせて用いられてもよい。
【0079】
指定人体に対象衣服を着せた状態でのシミュレーションは、人体の3Dモデルを動かすものに限定されない。このシミュレーションは、人体の3Dモデルが静止した(固定された)ポーズを取っている状態において、その人体の3Dモデルに衣服の3Dモデルを着せるものであってもよい。衣服は多くの場合やわらかい素材でできているので、衣服自身で形状を保つことはできない。衣服を人体に着せると重力によって下方に垂れたり、人体の形状に沿ってならってシワができたりする。シミュレーションでは衣服の、この重力及び人体によって端が垂れたりするシワができたりする状態が計算される。
【0080】
情報処理システム1のハードウェア構成は実施形態において例示したものに限定されない。要求される機能を実現できるものであれば、情報処理システム1はどのようはハードウェア構成を有していてもよい。例えば、物理的に複数の装置が協働してサーバ10として機能してもよい。サーバ10は物理サーバでもよいし、仮想サーバ(いわゆるクラウドを含む)であってもよい。また、機能要素とハードウェアとの対応関係は実施形態において例示したものに限定されない。例えば、実施形態においてサーバ10に実装されるものとして説明した機能の少なくとも一部がユーザ端末20に実装されてもよい。特に、データベース111、データベース112、及びデータベース113の少なくとも1つは、サーバ10とは別のサーバ装置に実装されてもよい。また、データベース111、データベース112、及びデータベース113は統合されてもよいし、その一部がさらに細分化されてもよい。さらに、
図2において例示した機能要素の一部が省略されてもよい。
【0081】
CPU110等によって実行されるプログラムは、インターネット等のネットワークを介したダウンロードにより提供されるものであってもよいし、DVD-ROM等のコンピュータ読み取り可能な非一時的記録媒体に記録された状態で提供されてもよい。
【要約】
情報処理装置は、複数の衣服の3Dモデルを示す3Dデータが記憶されたデータベースにアクセスするアクセス手段と、ユーザの3Dモデルを示す3Dデータを取得する取得手段と、前記複数の衣服の中から、前記取得手段により取得された3Dデータにより示されるユーザの3Dモデルに当該衣服の3Dモデルを着せた状態でのシミュレーション結果に基づいて衣服を抽出する抽出手段と、前記抽出手段により抽出された衣服を特定する情報を出力する出力手段とを有する。