(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2022-02-14
(45)【発行日】2022-02-22
(54)【発明の名称】情報処理装置、3Dシステム、及び情報処理方法
(51)【国際特許分類】
G06T 19/00 20110101AFI20220215BHJP
【FI】
G06T19/00 A
(21)【出願番号】P 2021536724
(86)(22)【出願日】2021-06-22
(86)【国際出願番号】 JP2021023541
【審査請求日】2021-06-22
【早期審査対象出願】
【前置審査】
(73)【特許権者】
【識別番号】316014722
【氏名又は名称】株式会社VRC
(74)【代理人】
【識別番号】110000752
【氏名又は名称】特許業務法人朝日特許事務所
(72)【発明者】
【氏名】謝 英弟
【審査官】永野 志保
(56)【参考文献】
【文献】特開2017-004464(JP,A)
【文献】特開2002-024319(JP,A)
【文献】特開2015-180987(JP,A)
【文献】特開2016-038813(JP,A)
【文献】特開2013-190974(JP,A)
【文献】特開2020-170394(JP,A)
【文献】特開2009-128997(JP,A)
【文献】特許第6804125(JP,B1)
【文献】特許第6631988(JP,B1)
【文献】特許第5605885(JP,B1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 19/00
(57)【特許請求の範囲】
【請求項1】
複数の衣服の各々について、当該衣服の3Dモデリングデータ、当該衣服を着せたインナーボディの3Dモデリングデータに所定の動きをさせたときの当該衣服の動きのシミュレーション結果が記録されたデータベースにアクセスするアクセス手段と、
ユーザ端末から、前記複数の衣服の中から衣服を検索するための検索キー及びユーザの体型に関する体型情報を取得する取得手段と、
前記データベースから、前記検索キーにより特定される衣服及び前記体型情報に対応するシミュレーション結果を抽出する抽出手段と、
前記抽出されたシミュレーション結果を、前記ユーザ端末に送信する送信手段と
を有
し、
前記所定の動きが、異なる複数の動きを含み、
前記検索キーにより特定される衣服に応じて前記複数の動きの中から少なくとも一部の動きを選択する選択手段を有し、
前記抽出手段は、前記データベースから、前記検索キーにより特定される衣服、前記体型情報、及び前記複数の動きの中から前記選択手段により選択された動きに対応するシミュレーション結果を抽出情報処理装置。
【請求項2】
複数の衣服の各々について、当該衣服の3Dモデリングデータ、当該衣服を着せたインナーボディの3Dモデリングデータに所定の動きをさせたときの当該衣服の動きのシミュレーション結果が記録されたデータベースにアクセスするアクセス手段と、
ユーザ端末から、前記複数の衣服の中から衣服を検索するための検索キー及びユーザの体型に関する体型情報を取得する取得手段と、
前記データベースから、前記検索キーにより特定される衣服及び前記体型情報に対応するシミュレーション結果を抽出する抽出手段と、
前記抽出されたシミュレーション結果を、前記ユーザ端末に送信する送信手段と
を有
し、
前記取得手段が、前記ユーザ端末から前記インナーボディにさせる新たな動きを記述した動き情報を取得し、
前記検索キーにより特定される一の衣服を着せた、前記体型情報に対応するインナーボディの3Dモデリングデータに前記動き情報により記述される前記新たな動きをさせたときの当該衣服の動きをシミュレーションするシミュレーション手段を有し、
前記シミュレーションが完了すると、前記送信手段が当該シミュレーションの結果を送信し、
前記シミュレーション手段は、前記新たな動きのシミュレーション結果が送信された後で、前記一の衣服と異なる別の衣服を着せた、前記体型情報に対応するインナーボディの3Dモデリングデータに前記動き情報により記述される前記新たな動きをさせたときの当該衣服の動きをシミュレーションする
情報処理装置。
【請求項3】
前記データベースにおいて、前記複数の衣服の各々について、当該衣服の3Dモデリングデータ、異なる体型を有する複数のインナーボディの3Dモデリングデータに当該衣服を着せて前記所定の動きをさせたときの当該衣服の動きのシミュレーション結果が記録され、
前記抽出手段は、前記データベースから、前記複数のインナーボディのうち前記体型情報により示される体型との差が最も小さい体型を有するインナーボディの3Dモデリングデータに当該衣服を着せて前記所定の動きをさせたときの当該衣服の動きのシミュレーション結果を抽出する
請求項1
又は2に記載の情報処理装置。
【請求項4】
前記シミュレーション結果が、前記衣服の形状の時間変化を含む
請求項1
乃至3のいずれか一項に記載の情報処理装置。
【請求項5】
前記シミュレーション結果が、前記衣服の所定の部位と前記ユーザの身体の所定の部位との相対的位置関係を含む
請求項1乃至
4のいずれか一項に記載の情報処理装置。
【請求項6】
前記取得手段が、前記複数の動きの中から少なくとも一部の動きを指定する識別情報を取得し、
前記抽出手段は、前記識別情報により指定される動きに対応するシミュレーション結果を抽出する
請求項
2に記載の情報処理装置。
【請求項7】
サーバと、
ユーザ端末と
を有し、
前記サーバは、
複数の衣服の各々について、当該衣服の3Dモデリングデータ、当該衣服を着せたインナーボディの3Dモデリングデータに所定の動きをさせたときの当該衣服の動きのシミュレーション結果が記録されたデータベースにアクセスするアクセス手段と、
前記ユーザ端末から、前記複数の衣服の中から衣服を検索するための検索キー及びユーザの体型に関する体型情報を取得する取得手段と、
前記データベースから、前記検索キーにより特定される衣服及び前記体型情報に対応するシミュレーション結果を抽出する抽出手段と、
前記抽出されたシミュレーション結果を、前記ユーザ端末に送信する送信手段と
を有し、
前記ユーザ端末は、
前記衣服の3Dモデリングデータ及び前記シミュレーション結果を用いて生成された、当該ユーザに当該衣服を着せた3Dモデルに前記所定の動きをさせる動画を表示する表示手段
を有
し、
前記所定の動きが、異なる複数の動きを含み、
前記サーバは、前記検索キーにより特定される衣服に応じて前記複数の動きの中から少なくとも一部の動きを選択する選択手段を有し、
前記抽出手段は、前記データベースから、前記検索キーにより特定される衣服、前記体型情報、及び前記複数の動きの中から前記選択手段により選択された動きに対応するシミュレーション結果を抽出する
3Dシステム。
【請求項8】
サーバと、
ユーザ端末と
を有し、
前記サーバは、
複数の衣服の各々について、当該衣服の3Dモデリングデータ、当該衣服を着せたインナーボディの3Dモデリングデータに所定の動きをさせたときの当該衣服の動きのシミュレーション結果が記録されたデータベースにアクセスするアクセス手段と、
前記ユーザ端末から、前記複数の衣服の中から衣服を検索するための検索キー及びユーザの体型に関する体型情報を取得する取得手段と、
前記データベースから、前記検索キーにより特定される衣服及び前記体型情報に対応するシミュレーション結果を抽出する抽出手段と、
前記抽出されたシミュレーション結果を、前記ユーザ端末に送信する送信手段と
を有し、
前記ユーザ端末は、
前記衣服の3Dモデリングデータ及び前記シミュレーション結果を用いて生成された、当該ユーザに当該衣服を着せた3Dモデルに前記所定の動きをさせる動画を表示する表示手段
を有
し、
前記取得手段が、前記ユーザ端末から前記インナーボディにさせる新たな動きを記述した動き情報を取得し、
前記サーバは、前記検索キーにより特定される一の衣服を着せた、前記体型情報に対応するインナーボディの3Dモデリングデータに前記動き情報により記述される前記新たな動きをさせたときの当該衣服の動きをシミュレーションするシミュレーション手段を有し、
前記シミュレーションが完了すると、前記送信手段が当該シミュレーションの結果を送信し、
前記シミュレーション手段は、前記新たな動きのシミュレーション結果が送信された後で、前記一の衣服と異なる別の衣服を着せた、前記体型情報に対応するインナーボディの3Dモデリングデータに前記動き情報により記述される前記新たな動きをさせたときの当該衣服の動きをシミュレーションする
3Dシステム。
【請求項9】
前記表示手段は、前記インナーボディの3Dモデリングデータと前記ユーザの3Dモデリングデータとの体型差に応じて変形された前記衣服の3Dモデリングデータ及び前記シミュレーション結果を用いて生成された、当該ユーザに当該衣服を着せた3Dモデルに前記所定の動きをさせる動画を表示する
請求項7
又は8に記載の3Dシステム。
【請求項10】
複数の衣服の各々について、当該衣服の3Dモデリングデータ、当該衣服を着せたインナーボディの3Dモデリングデータに所定の動きをさせたときの当該衣服の動きのシミュレーション結果が記録されたデータベースにアクセスするステップと、
ユーザ端末から、前記複数の衣服の中から衣服を検索するための検索キー及びユーザの体型に関する体型情報を取得するステップと、
前記データベースから、前記検索キーにより特定される衣服及び前記体型情報に対応するシミュレーション結果を抽出するステップと、
前記抽出されたシミュレーション結果を、前記ユーザ端末に送信するステップと
を有
し、
前記所定の動きが、異なる複数の動きを含み、
前記検索キーにより特定される衣服に応じて前記複数の動きの中から少なくとも一部の動きを選択するステップを有し、
前記抽出するステップにおいて、前記データベースから、前記検索キーにより特定される衣服、前記体型情報、及び前記複数の動きの中から前記選択された動きに対応するシミュレーション結果が抽出される
情報処理方法。
【請求項11】
複数の衣服の各々について、当該衣服の3Dモデリングデータ、当該衣服を着せたインナーボディの3Dモデリングデータに所定の動きをさせたときの当該衣服の動きのシミュレーション結果が記録されたデータベースにアクセスするステップと、
ユーザ端末から、前記複数の衣服の中から衣服を検索するための検索キー及びユーザの体型に関する体型情報を取得するステップと、
前記データベースから、前記検索キーにより特定される衣服及び前記体型情報に対応するシミュレーション結果を抽出するステップと、
前記抽出されたシミュレーション結果を、前記ユーザ端末に送信するステップと
を有
し、
前記取得するステップにおいて、前記ユーザ端末から前記インナーボディにさせる新たな動きを記述した動き情報が取得され、
前記検索キーにより特定される一の衣服を着せた、前記体型情報に対応するインナーボディの3Dモデリングデータに前記動き情報により記述される前記新たな動きをさせたときの当該衣服の動きをシミュレーションするステップを有し、
前記シミュレーションが完了すると、前記送信するステップにおいて当該シミュレーションの結果が送信され、
前記シミュレーションするステップにおいて、前記新たな動きのシミュレーション結果が送信された後で、前記一の衣服と異なる別の衣服を着せた、前記体型情報に対応するインナーボディの3Dモデリングデータに前記動き情報により記述される前記新たな動きをさせたときの当該衣服の動きがシミュレーションされる
情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ユーザの3Dモデルに衣服の3Dモデルを着せるシミュレーション結果を表示する技術に関する。
【背景技術】
【0002】
仮想空間で試着を行う仮想試着又はバーチャルフィッティングにおいて、人体の3Dモデルの動きに応じて、その人体が着ている衣服の3Dモデルの動き及びシワをシミュレーションすることで、よりリアルで自然な試着体験を提供することが可能となる。例えば特許文献1は、ユーザが様々な動きをしたときの着用効果をリアルタイムで確認する仮想試着システムを開示している。
【先行技術文献】
【特許文献】
【0003】
【文献】中国特許出願公開第107578323号明細書
【発明の概要】
【発明が解決しようとする課題】
【0004】
仮想試着のシミュレーション結果はスマートフォンなどの携帯端末で表示されることがあるが、一般に携帯端末は演算処理能力が低く、特許文献1に記載の技術において仮想試着のためのシミュレーションを携帯端末で行うには演算に多大なリソースを要するという課題があった。
【0005】
これに対し本発明は、ユーザの3Dモデルに衣服の3Dモデルを着せたシミュレーション結果を、より低い演算リソースを用いて表示する技術を提供する。
【課題を解決するための手段】
【0006】
本開示の一態様は、複数の衣服の各々について、当該衣服の3Dモデリングデータ、当該衣服を着せたインナーボディの3Dモデリングデータに所定の動きをさせたときの当該衣服の動きのシミュレーション結果が記録されたデータベースにアクセスするアクセス手段と、ユーザ端末から、前記複数の衣服の中から衣服を検索するための検索キー及びユーザの体型に関する体型情報を取得する取得手段と、前記データベースから、前記検索キーにより特定される衣服及び前記体型情報に対応するシミュレーション結果を抽出する抽出手段と、前記抽出されたシミュレーション結果を、前記ユーザ端末に送信する送信手段とを有する情報処理装置を提供する。
【0007】
前記データベースにおいて、前記複数の衣服の各々について、当該衣服の3Dモデリングデータ、異なる体型を有する複数のインナーボディの3Dモデリングデータに当該衣服を着せて前記所定の動きをさせたときの当該衣服の動きのシミュレーション結果が記録され、前記抽出手段は、前記データベースから、前記複数のインナーボディのうち前記体型情報により示される体型との差が最も小さい体型を有するインナーボディの3Dモデリングデータに当該衣服を着せて前記所定の動きをさせたときの当該衣服の動きのシミュレーション結果を抽出してもよい。
【0008】
前記シミュレーション結果が、前記衣服の形状の時間変化を含んでもよい。
【0009】
前記シミュレーション結果が、前記衣服の所定の部位と前記インナーボディの所定の部位との相対的位置関係を含んでもよい。
【0010】
前記所定の動きが、異なる複数の動きを含み、前記抽出手段は、前記データベースから、前記検索キーにより特定される衣服、前記体型情報、及び前記複数の動きの中から選択された動きに対応するシミュレーション結果を抽出してもよい。
【0011】
前記取得手段が、前記複数の動きの中から少なくとも一部の動きを指定する識別情報を取得し、前記抽出手段は、前記識別情報により指定される動きに対応するシミュレーション結果を抽出してもよい。
【0012】
この情報処理装置は、前記検索キーにより特定される衣服に応じて前記複数の動きの中から少なくとも一部の動きを選択する選択手段を有し、前記抽出手段は、前記選択手段により選択された動きに対応するシミュレーション結果を抽出してもよい。
【0013】
前記取得手段が、前記ユーザ端末から前記インナーボディにさせる新たな動きを記述した動き情報を含み、この情報処理装置は、前記検索キーにより特定される一の衣服を着せた、前記体型情報に対応するインナーボディの3Dモデリングデータに前記動き情報により記述される前記新たな動きをさせたときの当該衣服の動きをシミュレーションするシミュレーション手段を有し、前記シミュレーションが完了すると、前記送信手段が当該シミュレーションの結果を送信し、前記シミュレーション手段は、前記新たな動きのシミュレーション結果が送信された後で、前記一の衣服と異なる別の衣服を着せた、前記体型情報に対応するインナーボディの3Dモデリングデータに前記動き情報により記述される前記新たな動きをさせたときの当該衣服の動きをシミュレーションしてもよい。
【0014】
本開示の別の一態様は、サーバと、ユーザ端末とを有し、前記サーバは、複数の衣服の各々について、当該衣服の3Dモデリングデータ、当該衣服を着せたインナーボディの3Dモデリングデータに所定の動きをさせたときの当該衣服の動きのシミュレーション結果が記録されたデータベースにアクセスするアクセス手段と、前記ユーザ端末から、前記複数の衣服の中から衣服を検索するための検索キー及びユーザの体型に関する体型情報を取得する取得手段と、前記データベースから、前記検索キーにより特定される衣服及び前記体型情報に対応するシミュレーション結果を抽出する抽出手段と、前記抽出されたシミュレーション結果を、前記ユーザ端末に送信する送信手段とを有し、前記ユーザ端末は、前記衣服の3Dモデリングデータ及び前記シミュレーション結果を用いて生成された、当該ユーザに当該衣服を着せた3Dモデルに前記所定の動きをさせる動画を表示する表示手段を有する3Dシステムを提供する。
【0015】
前記表示手段は、前記インナーボディの3Dモデリングデータと前記ユーザの3Dモデリングデータとの体型差に応じて変形された前記衣服の3Dモデリングデータ及び前記シミュレーション結果を用いて生成された、当該ユーザに当該衣服を着せた3Dモデルに前記所定の動きをさせる動画を表示してもよい。
【0016】
本開示の別の一態様は、複数の衣服の各々について、当該衣服の3Dモデリングデータ、当該衣服を着せたインナーボディの3Dモデリングデータに所定の動きをさせたときの当該衣服の動きのシミュレーション結果が記録されたデータベースにアクセスするステップと、ユーザ端末から、前記複数の衣服の中から衣服を検索するための検索キー及びユーザの体型に関する体型情報を取得するステップと、前記データベースから、前記検索キーにより特定される衣服及び前記体型情報に対応するシミュレーション結果を抽出するステップと、前記抽出されたシミュレーション結果を、前記ユーザ端末に送信するステップとを有する情報処理方法を提供する。
【発明の効果】
【0017】
本発明によれば、ユーザの3Dモデルに衣服の3Dモデルを着せたシミュレーション結果を、より低い演算リソースを用いて表示することができる。
【図面の簡単な説明】
【0018】
【
図1】一実施形態に係る情報処理システム1の機能構成を例示する図。
【
図2】サーバ10のハードウェア構成を例示する図。
【
図3】情報処理システム1の動作を示すシーケンスチャート。
【
図4】データベース111に記録されるデータを例示する図。
【
図6】変形例に係るサーバ10の機能構成を例示する図。
【符号の説明】
【0019】
1…情報処理システム、10…サーバ、11…記憶手段、12…アクセス手段、13…取得手段、14…抽出手段、15…送信手段、18…シミュレーション手段、19…制御手段、20…ユーザ端末、21…記憶手段、22…UI手段、23…修正手段、24…表示手段、29…制御手段、101…CPU、102…メモリ、103…ストレージ、104…通信IF
【発明を実施するための形態】
【0020】
1.構成
図1は、一実施形態に係る情報処理システム1の機能構成を例示する図である。情報処理システム1は衣服に関する情報を提供するシステムであり、より詳細には、人体(インナーボディの一例)の3Dモデルに衣服の3Dモデルを着せたシミュレーションを行った結果に関する情報を出力するシステムである(3Dシステムの一例)。一例において、情報処理システム1は、ユーザが複数の衣服の中から自分の嗜好に合う衣服を検索する目的で用いられる。3Dモデルとは、仮想空間における対象物の形状を表現する立体的な仮想オブジェクトをいう。ここで、3Dモデルを表すデータを3Dモデリングデータ(又は3モデリングデータ)という。衣服の3Dモデリングデータとは、衣服の3Dモデルを表すデータをいう。ユーザの3Dモデリングデータとは、ユーザの人体の3Dモデルを表すデータをいう。
【0021】
情報処理システム1は、衣服検索サービスを提供する。情報処理システム1は、ハードウェアとしてはサーバ10及びユーザ端末20を有する。サーバ10は、衣服検索サービスにおけるサーバとして機能するコンピュータ装置(情報処理装置の一例)である。ユーザ端末20は、衣服検索サービスにおけるクライアントとして機能するコンピュータ装置である。
【0022】
情報処理システム1は、記憶手段11、アクセス手段12、取得手段13、抽出手段14、送信手段15、シミュレーション手段18、制御手段19、記憶手段21、UI手段22、修正手段23、表示手段24、及び制御手段29を有する。この例において、記憶手段11、アクセス手段12、取得手段13、抽出手段14、送信手段15、シミュレーション手段18、及び制御手段19はサーバ10に、記憶手段21、UI手段22、修正手段23、表示手段24、及び制御手段29はユーザ端末20に、それぞれ実装される。
【0023】
記憶手段11は、各種のデータを記憶する。記憶手段11が記憶するデータには、例えば、データベース111及びデータベース112が含まれる。データベース111は、複数の衣服の各々について、その衣服の3Dモデリングデータ、及びその衣服を着せたインナーボディの3Dモデリングデータに所定の動きをさせたときのその衣服の動きのシミュレーション結果が記録されたデータベースである。データベース112は、ユーザの属性情報が記録されたデータベースである。ユーザの属性情報は、例えば、ユーザの名前、年齢、性別、体型情報を含む。体型情報は、ユーザの体型を示す情報であり、一例においては、あらかじめ決められた複数の標準体型のうち、ユーザの体型に最も近い(すなわち、ユーザとの体系差が最も小さい)一の標準体型の識別情報である。あるいは、体型情報は、身体の複数の特定部位のサイズ(例えば、身長、胸囲、上腕の周囲、胴囲、太ももの周囲、及び脚の長さ)のセットを含んでもよい。
【0024】
アクセス手段12は、データベース111にアクセスする。取得手段13は、ユーザ端末20から、複数の衣服の中から衣服を検索するための検索キー及びユーザの体型に関する体型情報を取得する。抽出手段14は、データベースから、検索キーにより特定される衣服及び体型情報に対応するシミュレーション結果を抽出する。送信手段15は、抽出されたシミュレーション結果をユーザ端末20に送信する。シミュレーション手段18は、インナーボディの3Dモデルに衣服の3Dモデルを着せた状態におけるその衣服の動きをシミュレーションする。シミュレーション手段18は、シミュレーション結果をデータベース111に書き込む。制御手段19は各種の制御を行う。
【0025】
記憶手段21は各種のデータを記憶する。UI手段22は、ユーザインターフェースを提供する。修正手段23は、サーバ10から受信したシミュレーション結果のデータを、そのユーザの体型と標準体型との差に基づいて修正する。表示手段24は、修正されたシミュレーション結果を表示する。制御手段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.動作
2-1.基本動作
図3は、情報処理システム1の動作を示すシーケンスチャートである。
図3のシーケンスチャートの開始以前において、ユーザ端末20は、クライアントプログラムを実行している。情報処理システム1は例えば衣服のEコマースを提供するシステムである。ユーザは自信の3Dモデル(いわゆるアバター)に衣服の3Dモデルを着せる仮想試着を行い、購入する衣服を選択する。
【0030】
ステップS101において、ユーザ端末20は、シミュレーション結果の送信要求をサーバ10に送信する。詳細には以下のとおりである。まず、ユーザはユーザ端末20においてシミュレーションの対象となる一の衣服(以下「対象衣服」という)を特定する情報(例えば、ブランド、品番、及びサイズなど)を入力する。この入力に応じて、ユーザ端末20は対象衣服を特定する。あるいは、ユーザ端末20は、ここで入力された情報をサーバ10に送信する。サーバ10はこれらの情報から対象衣服を特定し、対象衣服の識別情報をユーザ端末20に送信する。ユーザ端末20は、シミュレーション結果の送信要求を生成する。この送信要求は、対象衣服の識別情報及びユーザ識別情報を含む。
【0031】
シミュレーション結果の送信要求を受信すると、サーバ10は、この送信要求に従って対象衣服を特定する(ステップS102)。対象衣服の母集団は、データベース111に記録されている衣服である。
【0032】
図4は、データベース111に記録されるデータを例示する図である。データベース111は、複数のレコードを含む。各レコードは、一の衣服について、衣服ID、属性情報、画像の所在情報、及び3Dモデルの所在情報を含む。衣服IDはその衣服を特定する識別情報である。属性情報はその衣服の属性を示す情報である。衣服の属性は、例えば、ブランド、デザイナー、種別(例えば、ジャケット、シャツ、パンツ、スカートの別等)、型番、価格帯、サイズ、素材、色、柄、及び説明文の少なくとも1種を含む。この例においては、同じデザインで複数のサイズ、色がある場合、これらに対して共通の衣服IDが与えられる。画像の所在情報は、衣服の画像データが記憶されているリソースを特定する情報、例えばURLである。3Dモデルの所在情報は、衣服の3Dモデリングデータが記憶されているリソースを特定する情報、例えばURLである。複数のサイズのそれぞれに対して画像が用意されている場合、画像の所在情報は、サイズ毎に異なるURLを含む。色及び柄についても同様である。3Dモデルについても同様である。
【0033】
データベース111は、さらに、その衣服を着せたインナーボディの3Dモデルに所定の動きをさせたときのその衣服の動きのシミュレーション結果を示すデータ又はそのデータの所在を示す情報を含む。シミュレーション結果のデータは、1以上のデータセットを含む。各データセットは、インナーボディの3Dモデリングデータの識別情報、動きの識別情報、及びそのインナーボディの3Dモデリングデータにその衣服を着せた状態でその動きをさせたときの衣服の動きのシミュレーション結果のデータ又はそのデータの所在情報を含む。データベース111には、複数の衣服の各々について、その衣服を異なる複数の体型のインナーボディの3Dモデルに着せた状態で所定の動きをさせたときのその衣服の動きを示すシミュレーション結果が記録される。
【0034】
図4においては具体的な例が示されている。データベース111には、SB[1]~SB[20]の20種類の3Dモデルが登録されている。3DモデルSB[1]~SB[20]を包括して3DモデルSBという。3DモデルSBは、標準体型のインナーボディの3Dモデルである。これら20種類のインナーボディのうち、サイズの制約上、衣服ID「12345」の衣服を着せることができるのはSB[1]~SB[10]の10種類のインナーボディのみである。SB[1]~SB[10]の10種類の標準体型は、インナーボディの胸囲が衣服のその胸囲よりも大きい等の理由により衣服ID「12345」の衣服を着せることができない。データベース111には、インナーボディの3DモデルSB[1]~SB[10]の各々に衣服ID「12345」の衣服を着せた状態でそのインナーボディに所定の動きをさせた、10種類のシミュレーション結果が記録される。
【0035】
なおこのシミュレーションは、所定のイベントをトリガとして実行される。シミュレーションのトリガとなるイベントは、例えば、新しい衣服がデータベース111に登録されたというイベントである。あるいは、このイベントは、まだシミュレーションが実行されていない衣服が所定数たまったというイベントである。さらにあるいは、このイベントは、サーバ10の演算リソースの稼働率が所定の条件(例えば稼働率がしきい値以下となった)を満たしたというイベントである。すなわちこれらの例においては、シミュレーションはユーザ端末20からの送信要求とは無関係に(又は送信要求によらずに)実行される。
【0036】
図5は、シミュレーション結果を例示する図である。一例において、シミュレーション結果は、インナーボディの3Dモデルに衣服を着せた状態でそのインナーボディに所定の動きをさせたときの、衣服の動きを示すデータを含む。衣服の3Dモデリングデータは、ポリゴンメッシュ及び3Dモデルを動かすための情報、例えばボーン情報を含む。ボーンは3Dモデルを動かすときの関節の役割をする情報である。ボーン情報は、ボーンの位置(相対位置又は絶対位置)及び向きを示す情報である。衣服の動きを示すデータは、例えばボーン情報及びポリゴンメッシュ(又はスキンメッシュ)の時間変化を示すデータである。所定の動きは、例えばインナーボディを歩かせる動きである。この例において、シミュレーション結果は、衣服を着せた状態でそのインナーボディを歩かせたときの、対象衣服のボーン情報及びポリゴンメッシュの時間変化を含む。すなわち、このシミュレーション結果は、対象衣服の形状の時間変化を含むと言える。
【0037】
再び
図3を参照する。ステップS103において、サーバ10は、ユーザの体型情報を取得する。この例において、サーバ10は、データベース112から、要求に含まれるユーザ識別情報に対応する体型情報を取得する。
【0038】
ステップS104において、サーバ10は、データベース111から、ユーザの体型情報に対応するインナーボディの3Dモデルに対象衣服を着せた状態で所定の動きをさせたときの対象衣服の動きのシミュレーション結果を抽出する。一例において体型情報はそのユーザの体型と最も近い標準体型の識別情報である。例えば体型情報がSB[3]を示す場合、サーバ10は、データベース111から、インナーボディの3DモデルSB[3]に対象衣服を着せた状態でインナーボディに所定の動きをさせたシミュレーション結果のデータを抽出する。
【0039】
ステップS105において、サーバ10は、抽出されたシミュレーション結果のデータを、要求の送信元であるユーザ端末20に送信する。
【0040】
ステップS106において、ユーザ端末20は、サーバ10から受信したデータを修正する。具体的には例えば以下の通りである。ユーザ端末20は、ユーザの体型データ及び標準体型データを取得する。ユーザの体型データは、そのユーザの体型を示すデータである。体型データは、そのユーザの3Dモデリングデータそのものであってもよいし、そのユーザの3Dモデルから抽出された、複数の身体部位におけるサイズのセットであってもよい。標準体型データは、シミュレーションに用いられたインナーボディの体型を示すデータであり、標準体型のインナーボディの3Dモデリングデータそのものであってもよいし、そのインナーボディの3Dモデルから抽出された、複数の身体部位におけるサイズのセットであってもよい。ユーザ端末20は、ユーザの体型データと標準体型データとの差分を計算する。一例においてこの差分は、人体における複数の特定部位におけるサイズの差のセットである。ユーザ端末20は、計算された差分、及び周知の計算手法(例えばdeformer)を用いて対象衣服の3Dモデリングデータ(例えばポリゴンメッシュ)を変形する。すなわち、対象衣服の3Dモデルにおいて、標準体型のインナーボディを用いてシミュレーションされた結果がユーザの体型に合わせて変形する。
【0041】
ステップS107において、ユーザ端末20は、ユーザの3Dモデルに対象衣服の3Dモデルを着せた(すなわち合成した)3Dモデルを生成する。ステップS108において、ユーザ端末20は、ユーザの3Dモデルに所定の動きをさせる動画を表示する。すなわち、ユーザ端末20は、ユーザの3Dモデルに対象衣服の3Dモデルを着せた状態でユーザの3Dモデルに所定の動きをさせるシミュレーションを自身で行わなくても、ユーザの3Dモデルに対象衣服の3Dモデルを着せて所定の動きをさせた動画を表示又は再生することができる。
【0042】
このように本実施形態によれは、例えば衣服のEコマースを提供するサービスにおいて、ユーザの3Dモデルに対象衣服の3Dモデルを着せた状態でユーザの3Dモデルに所定の動きをさせるシミュレーションをユーザ端末自身で行う場合と比較して、そのシミュレーション結果をより少ない演算リソースでより早く表示することができる。
【0043】
3.変形例
本発明は上述の実施形態に限定されるものではなく種々の変形実施が可能である。以下、変形例をいくつか説明する。以下の変形例に記載した事項のうち2つ以上のものが組み合わせて適用されてもよい。
【0044】
3-1.シミュレーション
標準体型のインナーボディの3Dモデルに対象衣服の3Dモデルを着せた状態で行われるシミュレーションの具体的内容は実施形態において例示したものに限定されない。すなわち、このシミュレーションは、対象衣服の3Dモデルを着せた状態で標準体型のインナーボディの3Dモデルに所定の動きをさせるものに限定されない。一例において、インナーボディの3Dモデルは所定のポーズで静止したままでもよい。インナーボディの3Dモデルが静止したままであっても、衣服はインナーボディによらず固定された形状であるわけではなく、インナーボディの形状にならって変形したり、重力に引かれて端部が垂れ下がったりしてシワができる。インナーボディが静止していても、シミュレーションによりシワのでき方又は端部の垂れ下がり方を視覚的に確認することができるので意義がある。なお、このように、衣服の3Dモデルの標準状態(インナーボディに着せていない状態)から静止状態のインナーボディに着せた状態にしたときに衣服の形状は変化するが、この変化は衣服の「動き」の一例である。
【0045】
別の例において、シミュレーションは、ユーザの3Dモデルに対象衣服を着せて所定のポーズを取らせた状態において、衣服の所定の部位とユーザの身体の所定の部位との相対的位置関係を示すものであってもよい。例えば、所定のポーズは椅子に座ったポーズであり、衣服の所定の部位はパンツの裾であり、ユーザの身体の所定の部位はくるぶしである。シミュレーション結果は、例えば3Dモデルにおけるこの部位の外観の拡大図(すなわち、ユーザのくるぶし付近の拡大図)である。あるいは、シミュレーション結果は、相対的位置関係を示す数値データ(すなわち、ユーザのくるぶしと対象衣服のパンツの裾の距離)であってもよい。
【0046】
3-2.インナーボディの動き及びポーズ
データベース111において、インナーボディの動きが複数、定義されていてもよい。例えば、データベース111において、歩く動き、走る動き、ジャンプする動き、腕を回す動き、及び椅子に座る動きが定義される。サーバ10はこれら複数の動きのそれぞれについてシミュレーションを行う。サーバ10は、これら複数の動きについてシミュレーション結果をデータベース111に記録する。ユーザ端末20からの送信要求に対し、サーバ10はこれら複数の動きのシミュレーション結果をユーザ端末20に送信する。あるいは、送信要求がこれら複数の動きの中から一部の動きを指定する識別情報を含み、サーバ10はこの識別情報により指定される動きのシミュレーション結果をユーザ端末20に送信してもよい。この識別情報は、動きを直接指定するものであってもよいし、間接的に指定するものであってもよい。動きを間接的に指定する識別情報とは、例えばユーザ識別情報である。この例においては、データベース112において各ユーザが好む動きの識別情報が記録される。サーバ10は、データベース112を参照して、送信要求に含まれるユーザ識別情報により示されるユーザが好む動きを特定する。サーバ10は、こうして特定した動きのシミュレーション結果をユーザ端末20に送信する。インナーボディが動かずに静止したポーズの状態でシミュレーションが行われる場合も同様で、データベース111において複数のポーズが定義される。
【0047】
別の例において、インナーボディの動きは、衣服毎に定義されてもよい。すなわち、各衣服に対して、シミュレーションに用いる動きが定義されてもよい。例えば、スポーツウェアに対してはシミュレーションに用いる動きとして走る動き及びジャンプする動きが定義され、スーツに対しては歩く動き及び椅子に座る動きが定義される。これらの動きは、衣服毎に独自のものが定義されてもよいし、あらかじめ用意された複数の動きの中からその衣服に適したものが選択されてもよい。これらはポーズについても同様である。
【0048】
さらに別の例において、サーバ10は、複数の動きの中から自動的に一部の動きを選択し、選択された動きを用いたシミュレーション結果をユーザ端末20に送信してもよい。
【0049】
図6は、この変形例に係るサーバ10の機能構成を例示する図である。サーバ10は、選択手段16を有する。選択手段16は、複数の動きの中から自動的に一部の動きを選択する。一例において、選択手段16は、いま処理の対象となっている送信要求を送信したユーザ端末20のユーザだけでなく、情報処理システム1の他の複数のユーザにおけるシミュレーション結果の閲覧履歴に基づいて動きを選択する。この場合において、サーバ10は、ユーザがシミュレーション結果を閲覧した履歴を記録する。サーバ10は、この閲覧履歴を用いて、対象衣服に対して好まれる動きを推定する。閲覧履歴を解析すれば、例えばスポーツウェアに対しては走る動き及びジャンプする動きのシミュレーション結果が閲覧される頻度が高く、スーツに対しては歩く動き及び椅子に座る動きのシミュレーション結果が閲覧される頻度が高い、といったことが分かる。これらの解析には機械学習が用いられてもよい。例えば、衣服の属性及び動きの識別情報を機械学習モデルの入力層に、その衣服及び動きのシミュレーション結果が閲覧された頻度のデータを出力層に、教師データとして与えて機械学習が行われる。サーバ10は、こうして学習された機械学習モデルを用いて、対象衣服においてユーザが好みそうな(閲覧頻度が高いことが期待される)動きを予測する。
【0050】
別の例において、選択手段16は、処理の対象となっている送信要求を送信したユーザ端末20のユーザの属性に基づいて動きを選択する。複数のユーザ全体の閲覧履歴を解析すれば、例えば若い女性のユーザは歩く動きのシミュレーション結果を閲覧する頻度が高く、中年の男性は椅子に座る動きのシミュレーション結果を閲覧する頻度が高い、といったことが分かる。これらの解析には機械学習が用いられてもよい。例えば、ユーザの属性及び動きの識別情報を機械学習モデルの入力層に、そのユーザがその動きのシミュレーション結果を閲覧した頻度のデータを出力層に、教師データとして与えて機械学習が行われる。サーバ10は、こうして学習された機械学習モデルを用いて、対象衣服においてそのユーザが好みそうな(閲覧頻度が高いことが期待される)動きを予測する。なお以上の事項はインナーボディのポーズについても同様である。
【0051】
3-3.シミュレーションのトリガ
シミュレーションのトリガは実施形態において例示したものに限定されない。例えば、サーバ10は、新たな動きが定義されたことを契機としてシミュレーションを行ってもよい。この例において、取得手段13は、インナーボディにさせるための新たな動きを記述した動き情報を取得する。一例において、取得手段13は、ユーザ端末20から動き情報を取得する。この例では、ユーザ端末20は人体の3Dモデルにさせるための動きを編集又は作成する機能を有し、ユーザの指示に応じて新たな動き情報を生成する。ユーザ端末20は、この新たな動き情報を含む送信要求をサーバ10に送信する。取得手段13が新たな動き情報を取得すると、シミュレーション手段18は、対象衣服を着た標準体型のインナーボディの3Dモデルにその新たな動きをさせるシミュレーションを行うよう、シミュレーション手段18に要求する。シミュレーション手段18は、この要求に従ってシミュレーションを行う。シミュレーションが完了すると、送信手段15は、シミュレーション結果をユーザ端末20に送信する。対象衣服について新たな動きのシミュレーションが完了すると、シミュレーション手段18は、別の衣服についてその新たな動きのシミュレーションを行う。対象衣服の次にシミュレーションを行う衣服は、例えばユーザ端末20のユーザにより指定される。あるいは、ユーザが次にシミュレーション結果を要求しそうな(すなわちユーザが次に選択しそうな)衣服をサーバ10が予測し、予測した衣服について新たな動きのシミュレーションを行ってもよい。
【0052】
3-4.他の実施形態
情報処理システム1のハードウェア構成は実施形態において例示したものに限定されない。要求される機能を実現できるものであれば、情報処理システム1はどのようはハードウェア構成を有していてもよい。例えば、物理的に複数の装置が協働してサーバ10として機能してもよい。サーバ10は物理サーバでもよいし、仮想サーバ(いわゆるクラウドを含む)であってもよい。また、機能要素とハードウェアとの対応関係は実施形態において例示したものに限定されない。例えば、実施形態においてサーバ10に実装されるものとして説明した機能の少なくとも一部がユーザ端末20に実装されてもよい。特に、データベース111及びデータベース112の少なくとも1つは、サーバ10とは別のサーバ装置に実装されてもよい。また、データベース111及びデータベース112は統合されてもよいし、その一部がさらに細分化されてもよい。さらに、
図2において例示した機能要素の一部が省略されてもよい。
【0053】
CPU110等によって実行されるプログラムは、インターネット等のネットワークを介したダウンロードにより提供されるものであってもよいし、DVD-ROM等のコンピュータ読み取り可能な非一時的記録媒体に記録された状態で提供されてもよい。
【要約】
情報処理装置は、複数の衣服の各々について、当該衣服の3Dモデリングデータ、当該衣服を着せたインナーボディの3Dモデリングデータに所定の動きをさせたときの当該衣服の動きのシミュレーション結果が記録されたデータベースにアクセスするアクセス手段と、ユーザ端末から、複数の衣服の中から衣服を検索するための検索キー及びユーザの体型に関する体型情報を取得する取得手段と、データベースから、検索キーにより特定される衣服及び体型情報に対応するシミュレーション結果を抽出する抽出手段と、抽出されたシミュレーション結果を、ユーザ端末に送信する送信手段とを有する。