以下、本実施の形態について、図面を参照して説明する。
[第1の実施の形態]
図1は、第1の実施の形態の情報処理装置を示す図である。情報処理装置1は、衣類を着用する対象の身体の各部位の採寸を支援する。衣類を着用する対象は、人物でもよいし、動物でもよい。
情報処理装置1は、表示装置2及び入力装置3と接続されている。表示装置2は、GUI(Graphical User Interface)を表示するディスプレイである。入力装置3は、GUIに対するユーザの操作入力を受け付ける。入力装置3は、例えば、タッチパネルやマウスなどのポインティングデバイスである。情報処理装置1は、表示装置2や入力装置3を内蔵してもよい。例えば、情報処理装置1は、表示装置2及び入力装置3を内蔵したスマートフォンやタブレット端末などのスマートデバイスでもよい。情報処理装置1は、衣類を着用する対象の画像を撮像する撮像装置を有してもよい。
情報処理装置1は、記憶部1a及び演算部1bを有する。記憶部1aは、RAM(Random Access Memory)などの揮発性記憶装置でもよいし、フラッシュメモリなどの不揮発性記憶装置でもよい。演算部1bは、CPU(Central Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)などを含み得る。演算部1bはプログラムを実行するプロセッサでもよい。「プロセッサ」は、複数のプロセッサの集合(マルチプロセッサ)も含み得る。情報処理装置1は、「コンピュータ」と呼ばれてもよい。
記憶部1aは、衣類の指定情報に対応づけて、表示部品を表示させる位置を記憶する。表示部品は、ユーザによる操作入力を受け付けるために画面上に表示される部品であり、ユーザによる操作入力に応じて、少なくとも長さを調整可能である。表示部品は、ユーザによる操作入力に応じて、位置を調整可能でもよい。表示部品は、例えば、ユーザによる操作入力に応じて長さを変えることができる線分や棒状の画像である。
例えば、記憶部1aは、表示部品を表示させる位置を管理するため、テーブル4を記憶する。テーブル4は、衣類の指定情報と表示部品を表示させる位置との対応関係を示す情報である。衣類の指定情報は、衣類の識別情報ともいえる。一例として、衣類の指定情報は、「衣類ID(IDentifier)」と呼ばれる番号であるとする。表示部品を表示させる位置は、採寸対象となる特定の部位(例えば、対象が人物であれば肩幅、バスト、ウエスト、ヒップ、股下など)に対応する。
テーブル4の例では、衣類IDに対して部位X,Y,Zのうちのいずれの位置に表示部品を表示させるかを示す情報が登録される。“true”は、該当の部位に対応する位置に表示部品を表示させることを示す。“false”は、該当の部位に対応する位置に表示部品を表示させないことを示す。
テーブル4の例によれば、衣類ID#1の衣類に対して、部位Xが“true”、部位Yが“true”、部位Zが“false”である。これは、衣類ID#1の衣類では、部位X,Yに対応する位置に表示部品を表示させ、部位Zに対応する位置に表示部品を表示させないことを示す。すなわち、衣類ID#1の衣類では、部位X,Yを採寸対象とし、部位Zを採寸対象としない。
また、テーブル4の例によれば、衣類ID#2の衣類に対して、部位Xが“true”、部位Yが“false”、部位Zが“false”である。これは、衣類ID#2の衣類では、部位Xに対応する位置に表示部品を表示させ、部位Y,Zに対応する位置に表示部品を表示させないことを示す。すなわち、衣類ID#2の衣類では、部位Xを採寸対象とし、部位Y,Zを採寸対象としない。
更に、テーブル4の例によれば、衣類ID#3の衣類に対して、部位Xが“true”、部位Yが“true”、部位Zが“true”である。これは、衣類ID#3の衣類では、部位X,Y,Zに対応する位置に表示部品を表示させることを示す。すなわち、衣類ID#3の衣類では、部位X,Y,Zの全てを採寸対象とする。ここで、以下に示す例では、衣類を着用する対象として、人物を想定する。ただし、動物の場合も同様の処理となる。
演算部1bは、衣類の指定情報を取得する。例えば、演算部1bは、衣類の一覧の画面5を表示装置2により表示させる。演算部1bは、ユーザによる入力装置3を用いた、いずれかの衣類の選択入力を許容する。そして、演算部1bは、ユーザにより選択された衣類の指定情報(衣類ID)を取得する。演算部1bは、選択された衣類の衣類IDを、ネットワークを介して、他の情報処理装置(図1では図示を省略している)に問い合わせてもよい。あるいは、演算部1bは、ユーザにより選択された衣類の衣類IDを記憶部1aに保持された情報によって特定できることもある。例えば、衣類の一覧を表示するための情報に各衣類の衣類IDが含まれる場合である。その場合、演算部1bは、当該情報を基に、選択された衣類の衣類IDを取得してもよい。例えば、演算部1bは、衣類の指定情報として、衣類ID#1を取得したとする。
演算部1bは、対象を含む撮像画像を表示させるとともに、撮像画像上であって、取得した衣類の指定情報に対応する位置に表示部品を表示させる。撮像画像は、情報処理装置1の撮像機能を用いて撮像された画像でもよいし、記憶部1aに予め記憶された画像(例えば、情報処理装置1以外の装置により取得された画像)でもよい。
画面6は、演算部1bが表示装置2に表示させる画面の一例である。例えば、演算部1bは、記憶部1aに記憶されたテーブル4を参照して、衣類ID#1に対応する部位X,Yの位置に表示部品を表示させると決定する。このため、画面6は、部位Xに関するサブ画面6a、及び、部位Yに関するサブ画面6bを含む。
演算部1bは、サブ画面6aにおいて、人物を含む撮像画像f1を表示させるとともに、撮像画像f1であって衣類ID#1に対応する部位X(例えば、肩幅)の位置に表示部品a1を表示させる。また、演算部1bは、サブ画面6bにおいて、人物を含む撮像画像f2を表示させるとともに、撮像画像f2であって衣類ID#1に対応する部位Y(例えば、バスト)の位置に表示部品a2を表示させる。ここで、撮像画像f1,f2は、同じ人物を同じタイミングで撮像した同じ撮像画像である。表示部品a1,a2は、両端に矢印形状が付された線分の画像として例示されている。
演算部1bは、人物を撮像する際に、画面上の固定位置に配置された所定形状(例えば人型)の枠に合うように人物を撮像させることで、部位Xに対応する撮像画像f1上の所定の位置(例えば、肩幅の位置)を特定し、表示部品a1を表示させることができる。あるいは、演算部1bは、撮像画像f1に含まれる人物の輪郭の縁に、所定形状(例えば人型)の枠を当てはめるユーザの操作を受け付け、当てはめられた枠を基に、表示部品a1の表示位置(例えば、肩幅の位置)を特定してもよい。表示部品a2についても同様である。
演算部1bは、撮像画像f1に重ねて表示された表示部品a1の長さや位置のユーザによる調整を許容する。ユーザは、入力装置3を用いて、表示部品a1の長さや位置を調整できる。ユーザは、撮像画像f1の部位Xに相当する箇所の幅に、表示部品a1の長さを合わせることができる。同様に、演算部1bは、撮像画像f2に重ねて表示された表示部品a2の長さや位置のユーザによる調整を許容する。ユーザは、入力装置3を用いて、撮像画像f2の部位Yに相当する箇所の幅に、表示部品a2の長さを合わせることができる。
ここで、演算部1bは、画面6の表示領域が許せば画面6上にサブ画面6a,6bの両方を表示させてもよいし、スクロール操作などによってサブ画面6a,6bの表示を切り替え可能としてもよい。あるいは、演算部1bは、サブ画面6a,6bを順番に表示させて、表示部品a1,a2の長さや位置の調整を受け付けてもよい。
演算部1bは、対象の長さの情報と、ユーザによる表示部品の長さ及び/又は位置の調整量とに応じて、対象の特定の部位のサイズを推定する。対象の長さの情報は、例えば、対象が人物であれば人物の身長の情報である。また、対象が動物であれば動物の地面から頭頂までの高さや動物の体長などである。
例えば、演算部1bは、該当の人物の身長L0(実際の長さ)の情報を予め取得しておく。演算部1bは、撮像画像f1の頭頂に相当する位置から、足の裏に相当する位置までの縦方向のサブ画面6a上の長さl0を得る。そして、演算部1bは、入力された身長L0の長さl0に対する比(L0/l0)と、調整後の表示部品a1の画面上の長さl1(=元の長さ+調整量)との積により、該当の人物の部位XのサイズL1を推定する。演算部1bは、該当の人物の部位YのサイズL2も同様に推定する。
バストやウエストのように周の長さを推定する場合、演算部1bは、異なる複数の方向(例えば、正面及び側面)から人物を撮像した複数の撮像画像それぞれの表示部品に対する同じ部位に関する表示部品の長さから当該周の長さを算出する。例えば、演算部1bは、表示部品の長い方の長さを長径(長軸の長さ)、短い方の長さを短径(短軸の長さ)とした楕円の円周と、上記比(L0/l0)とからバストなどの周の長さを算出する。
演算部1bは、位置の調整量に応じて、サイズL1,L2を推定することも考えられる。例えば、演算部1bは、長さの調整量に応じて求めたサイズを位置の調整量に応じて補正して、サイズL1,L2を推定してもよい。より具体的には、表示部品a1の位置の調整量が比較的大きい(例えば、閾値よりも大きい)場合に、長さの調整量に応じて求めたサイズを所定の割合だけ大きくしたり、小さくしたりする補正を行ってもよい。
演算部1bは、サイズの推定結果を含む画面7を表示装置2により表示させ、ユーザに提示してもよい。
このように、情報処理装置1によれば、人物や動物などの身体の各部位の適切なサイズの把握を支援できる。
ここで、例えば、顧客(ユーザ)は、衣類の通信販売のサービスを利用する際に、衣類を着用する対象(人物や動物など)の身体における各部位のサイズに合うサイズの衣類を選択できる。しかし、顧客は対象の各部位のサイズを適切に把握しているとは限らない。例えば、衣類の選択に際し、顧客自身により巻尺や定規などを用いて、各部位の採寸を行わせることが考えられる。しかし、顧客に煩雑な作業を強いることになる。また、顧客が採寸の技能を有しているとは限らず、適切なサイズを得られないおそれがある。
そこで、情報処理装置1は、対象の撮像画像に重ねて表示部品を表示させ、ユーザによる表示部品の長さや位置の調整を受け付け、当該調整の調整量に応じて、各部位のサイズを推定することで、各部位の適切なサイズをユーザに提示できる。また、ユーザは、巻尺や定規などを用いて各部位の採寸を行うよりも簡便に、各部位の採寸を行える。特に、表示部品の長さや位置の調整量に応じて各部位のサイズを推定することで、各部位のサイズの推定の精度を高められる。
このとき、採寸候補となり得る全ての部位について、採寸を行うことも考えられる。しかし、衣類によっては一部の部位の採寸でよい場合もある。例えば、上半身の衣類であれば、下半身の部位のサイズとは無関係にサイズが用意されていることが多い。このため、情報処理装置1は、衣類に応じた位置に絞って、表示部品を表示させ、ユーザの調整を受け付けることで、該当の衣類のサイズ選択に利用されない部位の採寸を省け、採寸の処理を効率化できる。例えば、該当の衣類に関係のない部位を含めて採寸を行うよりも、採寸の所要時間を短縮できる。また、該当の衣類に関係のない部位を含めて採寸を行うよりもユーザによる採寸の作業を省力化できる。そして、このように、各部位の適切なサイズをユーザに提供することで、ユーザによる衣類の選択を支援できる。
以下では、情報処理装置1の機能を、電子商取引(EC:Electronic Commerce)のサービスに適用する場合を例示して、当該機能を更に詳細に説明する。
[第2の実施の形態]
図2は、第2の実施の形態の情報処理システムの例を示す図である。第2の実施の形態の情報処理システムは、ECによる衣類の通信販売のサービスを提供する。第2の実施の形態の情報処理システムは、端末装置100及びサーバ200を含む。サーバ200は、ネットワーク10に接続されている。端末装置100は、アクセスポイント11を介してネットワーク10に接続され、サーバ200と通信する。
ネットワーク10は、例えば、インターネットやWAN(Wide Area Network)である。アクセスポイント11は、無線LAN(Local Area Network)のアクセスポイントでもよいし、ネットワーク10に接続された移動通信ネットワークと接続する基地局でもよい。
端末装置100は、ユーザにより利用されるクライアントコンピュータである。端末装置100は、スマートフォンやタブレット端末などのスマートデバイスでもよい。端末装置100は、第1の実施の形態の情報処理装置1の一例である。
サーバ200は、Webサーバとして機能し、衣類のECサイト(衣類を販売するWebサイト)を提供するサーバコンピュータである。サーバ200は、ユーザにより選択された衣類の販売処理も行う。ここで、サーバ200が提供するECサイトで販売される衣類は、人物によって着用される衣類であるとする。ただし、後述するように、サーバ200が提供するECサイトで販売される衣類は、動物によって着用される衣類でもよい。なお、衣類は装着物と呼ばれてもよい。
図3は、端末装置のハードウェア例を示す図である。端末装置100は、プロセッサ101、RAM102、フラッシュメモリ103、カメラ104、画像信号処理部105、ディスプレイ105a、入力信号処理部106、タッチパネル106a、媒体リーダ107及び通信インタフェース108を有する。各ユニットは端末装置100のバスに接続されている。
プロセッサ101は、端末装置100の情報処理を制御する。プロセッサ101は、マルチプロセッサであってもよい。プロセッサ101は、例えばCPU、DSP、ASIC又はFPGAなどである。プロセッサ101は、CPU、DSP、ASIC、FPGAなどのうちの2以上の要素の組み合わせであってもよい。
RAM102は、端末装置100の主記憶装置である。RAM102は、プロセッサ101に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部を一時的に記憶する。また、RAM102は、プロセッサ101による処理に用いる各種データを記憶する。
フラッシュメモリ103は、端末装置100の補助記憶装置である。フラッシュメモリ103は、OSのプログラム、アプリケーションプログラム、及び各種データを記憶する。
カメラ104は、端末装置100に搭載された撮像装置である。カメラ104は、CCD(Charge-Coupled Device)やCMOS(Complementary Metal Oxide Semiconductor)などの撮像素子を備える。カメラ104は、プロセッサ101からの命令に従って、カメラ104のレンズを向けた先にある光景の静止画や動画のデータを生成する。ここで、カメラ104が撮像素子を用いて画像のデータを生成する処理を「撮像」と称し、撮像により生成された画像情報を「撮像画像」と称する。また、ユーザが端末装置100を操作してカメラ104に撮像を行わせる行為を、「撮影」と称する。
画像信号処理部105は、プロセッサ101からの命令に従って、ディスプレイ105aに画像を出力する。ディスプレイ105aには、例えば、液晶ディスプレイを用いることができる。
入力信号処理部106は、端末装置100に接続されたタッチパネル106aから入力信号を取得し、プロセッサ101に出力する。タッチパネル106aは、ユーザによりタッチ操作された位置をプロセッサ101に出力するポインティングデバイスである。タッチパネル106aは、ディスプレイ105aの表示領域に重ねて設けられる。ユーザは、ディスプレイ105aによる表示を視認しながら、タッチパネル106aによるタッチ操作を行える。
媒体リーダ107は、記録媒体12に記録されたプログラムやデータを読み取る装置である。記録媒体12として、例えば、フラッシュメモリカードを使用できる。媒体リーダ107は、例えば、プロセッサ101からの命令に従って、記録媒体12から読み取ったプログラムやデータをRAM102又はフラッシュメモリ103に格納する。
通信インタフェース108は、アクセスポイント11と無線リンクを確立し、アクセスポイント11及びネットワーク10を介してサーバ200を含む他の装置と通信を行う無線通信インタフェースである。ただし、通信インタフェース108は、ネットワーク10と有線で接続する有線通信インタフェースでもよい。
図4は、サーバのハードウェア例を示す図である。サーバ200は、プロセッサ201、RAM202、HDD(Hard Disk Drive)203、画像信号処理部204、入力信号処理部205、媒体リーダ206及び通信インタフェース207を有する。各ユニットはサーバ200のバスに接続されている。
プロセッサ201は、サーバ200の情報処理を制御する。プロセッサ201は、マルチプロセッサであってもよい。プロセッサ201は、例えばCPU、DSP、ASIC又はFPGAなどである。プロセッサ201は、CPU、DSP、ASIC、FPGAなどのうちの2以上の要素の組み合わせであってもよい。
RAM202は、サーバ200の主記憶装置である。RAM202は、プロセッサ201に実行させるOSのプログラムやアプリケーションプログラムの少なくとも一部を一時的に記憶する。また、RAM202は、プロセッサ201による処理に用いる各種データを記憶する。
HDD203は、サーバ200の補助記憶装置である。HDD203は、内蔵した磁気ディスクに対して、磁気的にデータの書き込み及び読み出しを行う。HDD203は、OSのプログラム、アプリケーションプログラム、及び各種データを記憶する。サーバ200は、フラッシュメモリやSSD(Solid State Drive)などの他の種類の補助記憶装置を備えてもよく、複数の補助記憶装置を備えてもよい。
画像信号処理部204は、プロセッサ201からの命令に従って、サーバ200に接続されたディスプレイ21に画像を出力する。ディスプレイ21としては、CRT(Cathode Ray Tube)ディスプレイや液晶ディスプレイなどを用いることができる。
入力信号処理部205は、サーバ200に接続された入力デバイス22から入力信号を取得し、プロセッサ201に出力する。入力デバイス22としては、例えば、マウスやタッチパネルなどのポインティングデバイス、キーボードなどを用いることができる。
媒体リーダ206は、記録媒体23に記録されたプログラムやデータを読み取る装置である。記録媒体23として、例えば、フレキシブルディスク(FD:Flexible Disk)やHDDなどの磁気ディスク、CD(Compact Disc)やDVD(Digital Versatile Disc)などの光ディスク、光磁気ディスク(MO:Magneto-Optical disk)を使用できる。また、記録媒体23として、例えば、フラッシュメモリカードなどの不揮発性の半導体メモリを使用することもできる。媒体リーダ206は、例えば、プロセッサ201からの命令に従って、記録媒体23から読み取ったプログラムやデータをRAM202又はHDD203に格納する。
通信インタフェース207は、ネットワーク10を介して端末装置100を含む他の装置と通信を行う。通信インタフェース207は、有線通信インタフェースでもよいし、無線通信インタフェースでもよい。
図5は、情報処理システムの機能例を示す図である。端末装置100は、マスタ記憶部110、ブラウザ120、サイズ推定部130及び推奨サイズ検索部140を有する。マスタ記憶部110は、RAM102やフラッシュメモリ103に確保された記憶領域として実現される。ブラウザ120、サイズ推定部130及び推奨サイズ検索部140は、RAM102に記憶されたプログラムをプロセッサ101が実行することで実現される。
ブラウザ120、サイズ推定部130及び推奨サイズ検索部140は、1つのアプリケーションとして実装されてもよい。あるいは、ブラウザ120の機能を提供するアプリケーションと、サイズ推定部130及び推奨サイズ検索部140の機能を提供するアプリケーションとは別個でもよい。
マスタ記憶部110は、サーバ200からダウンロードされたマスタ情報を記憶する。マスタ情報は、商品マスタ、サイズマスタ、採寸パターンマスタ及びレコメンド優先度マスタを含む。
商品マスタは、商品である衣類の基本情報が登録されたテーブルである。衣類の基本情報は、衣類に対して、採寸対象とする部位を示す位置情報を含む。サイズマスタは、衣類のサイズの基本情報が登録されたテーブルである。採寸パターンマスタは、衣類のサイズに対応する人物の特定の部位のサイズを対応づけたテーブルである。レコメンド優先度マスタは、ユーザに対して衣類のサイズを提示する際に、サイズ選択に用いる部位の組み合わせを、商品及び優先度に対して定めたテーブルである。
また、マスタ記憶部110は、レコメンドテーブル及びユーザテーブルを記憶する。レコメンドテーブルは、ユーザに対して提示した推奨サイズが、ユーザアカウント及び商品毎に記録されたテーブルである。ユーザテーブルは、ユーザアカウントに対して、ユーザの身体情報が記録されたテーブルである。
ブラウザ120は、サーバ200により提供されるECサイトのGUIを、ディスプレイ105aを用いて表示する。ブラウザ120は、ディスプレイ105aに表示されたGUIに対する、タッチパネル106aを用いたユーザの操作入力(例えば、衣類の選択や衣類の注文など)を受け付ける。例えば、ブラウザ120は、HTTP(Hypertext Transfer Protocol)又はHTTPS(Hypertext Transfer Protocol Secure)を用いてサーバ200と通信し、ECサイトのGUIに対応する表示情報を取得する。表示情報は、例えば、HTML(HyperText Markup Language)やjavaスクリプト(登録商標)による記述を含むHTMLデータである。
また、ブラウザ120は、サーバ200からマスタ情報をダウンロードし、マスタ記憶部110に格納する。更に、ブラウザ120は、推奨サイズ検索部140による衣類の推奨サイズの検索を実行させ、検索結果をディスプレイ105aにより表示させることで、ユーザによる衣類のサイズの選択を補助する。
サイズ推定部130は、人物の各部位のサイズを推定する。サイズ推定部130は、人物の各部位の採寸を行うともいえる。サイズ推定部130は、ブラウザ120により表示されたGUIに対する採寸開始の操作入力によって呼び出され、実行される。サイズ推定部130は、カメラ104による人物の撮像を制御し、カメラ104により生成された人物の撮像画像を取得する。このとき、サイズ推定部130は、ユーザによる人物の撮影を補助する画面をディスプレイ105aに表示させる。
サイズ推定部130は、取得した撮像画像と、該当の人物の身長の情報とに基づいて、人物の各部位のサイズを推定する。このとき、サイズ推定部130は、サイズの推定対象とする部位を、マスタ記憶部110に記憶された商品マスタに基づいて選択する。また、サイズ推定部130は、推定した各部位のサイズを、ユーザアカウントに対応づけて、マスタ記憶部110に記憶されたユーザテーブルに記録する。
推奨サイズ検索部140は、サイズ推定部130により推定された人物の各部位のサイズを取得し、マスタ記憶部110に記憶されたマスタ情報を参照して、取得したサイズに対応する衣類の推奨サイズを検索し、検索結果をブラウザ120に提供する。
サーバ200は、マスタ記憶部210、Webサーバ220及び注文処理部230を有する。マスタ記憶部210は、RAM202やHDD203に確保された記憶領域として実現される。Webサーバ220及び注文処理部230は、RAM202に記憶されたプログラムをプロセッサ201が実行することで実現される。
マスタ記憶部210は、端末装置100に送信されるマスタ情報を記憶する。マスタ記憶部210に記憶されるマスタ情報は、商品マスタ、サイズマスタ、採寸パターンマスタ及びレコメンド優先度マスタを含む。また、マスタ記憶部210は、ユーザから受けた商品の注文に関する情報を記憶する。
Webサーバ220は、ECサイトのGUIを端末装置100に提供する。Webサーバ220は、注文処理部230と連携して、ユーザによる商品購入を支援する。また、Webサーバ220は、ブラウザ120に対してマスタ記憶部210に記憶されたマスタ情報を提供する。
更に、Webサーバ220は、ECサイトの管理者向けに、マスタ情報をメンテナンスするためのGUIを提供し、管理者によるマスタ情報のメンテナンス操作を受け付け、マスタ記憶部210に記憶されたマスタ情報を更新する。
注文処理部230は、ユーザにより選択された衣類の販売処理を行う。注文処理部230は、ユーザアカウントに対応づけて、ユーザにより注文された商品の識別情報(商品ID)、サイズ及び数量などをマスタ記憶部210に登録する。
図6は、商品マスタの例を示す図である。商品マスタ111は、ブラウザ120によりサーバ200からダウンロードされて、マスタ記憶部110に格納される。商品マスタ111と同じ情報は、マスタ記憶部210にも記憶される。商品マスタ111は、商品ID、ブランドID、商品名、商品詳細、商品画像格納先、性別区分及び採寸利用有無区分の項目を含む。
商品IDの項目には、商品(衣類)の商品IDが登録される。ブランドIDの項目には、商品のブランドのブランドIDが登録される。商品名の項目には、商品名が登録される。商品詳細の項目には、商品の説明文が登録される。商品画像格納先の項目には、該当の商品の画像を格納したローカルの、又は、サーバ200上のディレクトリを示すパス(URL(Uniform Resource Locator)でもよい)が登録される。性別区分の項目には、該当の商品が男性向け、女性向け、男女兼用のいずれであるかを示す情報が登録される。例えば、性別区分“0”は、男性向けを示す。性別区分“1”は、女性向けを示す。性別区分“2”は、男女兼用を示す。
採寸利用有無区分の項目には、該当の商品に対して、採寸対象とする部位を指定する情報が登録される。例えば、採寸対象の候補部位は、身長、肩幅、バスト、ウエスト、ヒップ、袖丈及び股下である。採寸利用有無区分“0”は、採寸対象でないことを示す。採寸利用有無区分“1”は、採寸対象であることを示す。
例えば、商品マスタ111には、商品IDが“A1”、ブランドIDが“A”、商品名が“アウタージャケット”、商品詳細が“・・・”、商品画像格納先が“PATH1”、性別区分が“0”、採寸利用有無区分について身長が“1”、肩幅が“1”、バストが“1”、ウエストが“0”、ヒップが“0”、袖丈が“1”、股下が“0”というレコードが登録される。
このレコードは、商品ID“A1”で示される商品が、ブランドID“A”で示されるブランドの商品であることを示す。また、該当の商品の商品名が“アウタージャケット”であり、商品詳細の説明文が“・・・”であり、商品画像格納先が“PATH1”で示されるパスであり、男性向け(性別区分“0”)の商品であることを示す。更に、該当の商品では、採寸に利用する部位が、身長、肩幅、バスト、袖丈であることを示す。
商品マスタ111では、他の商品のレコードについても同様に各項目の情報が登録されている。
なお、商品マスタは、商品のメーカーのメーカーIDを含んでもよい。また、採寸利用有無区分をブランドIDやメーカーIDに対応づけて管理する他のマスタ(例えば、メーカーマスタ)を別途用意し、ブランドやメーカー単位に採寸利用区分を管理してもよい。その場合、ブランドやメーカー単位に採寸対象の部位を絞り込むこともできる。
また、ECサイトが提供するGUI(あるいは、GUIを提供するアプリケーション)を、ブランドやメーカー毎に分けることも考えられる。その場合、ブラウザ120は、サーバ200に対して該当のブランドあるいはメーカーのIDを送信し(あるいは、該当のブランドあるいはメーカーのURLにアクセスし)、当該ブランドなどのレコードのみをダウンロードしてもよい(以下の説明でも同様)。
更に、採寸候補となる部位は、肩幅、バスト、ウエスト、ヒップ、股下、袖丈以外の部位でもよい。例えば、頭囲、首周り、着丈、上腕長さ、腕周り、手首周り、腿周りなど、他の部位を採寸候補とすることも考えられる。
図7は、サイズマスタの例を示す図である。サイズマスタ112は、ブラウザ120によりサーバ200からダウンロードされて、マスタ記憶部110に格納される。サイズマスタ112と同じ情報がマスタ記憶部210にも記憶される。サイズマスタ112は、商品ID、サイズID、サイズ名、サイズ順、商品単価及びサイズ画像格納先の項目を含む。
商品IDの項目には、商品IDが登録される。サイズIDの項目には、サイズIDが登録される。サイズ名の項目には、サイズ名が登録される。サイズ順の項目には、サイズIDで示されるサイズの大小関係を表す数値が登録される。サイズ順の数値は、値が大きいほど大きなサイズを示す。商品単価の項目には、商品の単価が登録される(例えば、単位は円)。サイズ画像格納先の項目には、サイズ名を画面表示する際に用いるアイコン画像の格納先のディレクトリのパス(URLでもよい)が登録される。
例えば、サイズマスタ112には、商品IDが“A1”、サイズIDが“A1−S”、サイズ名が“S”、サイズ順が“1”、商品単価が“5000”、サイズ画像格納先が“・・・”というレコードが登録される。このレコードは、商品ID“A1”の商品に対して、サイズID“A1−S”、サイズ名“S”、サイズ順“1”で表されるサイズがあり、当該サイズの商品の単価が“5000”円、サイズ画像格納先が“・・・”のパスであることを示す。
また、サイズマスタ112によれば、商品ID“A1”に対して、サイズID“A1−M”(サイズ名“M”)、“A1−L”(サイズ名“L”)、“A1−XL”(サイズ名“XL”)、“A1−XXL”(サイズ名“XXL”)、“A1−P”(サイズ名“P”)に対応するレコードが登録される。すなわち、商品ID“A1”の商品には、全部で6つのサイズが登録されていることになる。このうち、サイズID“A1−P”(サイズ名“P”)は、別寸を示す。別寸とは、“S”、“M”などの既製のサイズでは合わない場合に、該当の人物に合った特注のオーダーを受け付け可能であることを示す。
更に、商品ID“A1”では、サイズID“A1−S”のサイズ順が“1”、同“A1−M”のサイズ順が“2”、同“A1−L”のサイズ順が“3”、同“A1−XL”のサイズ順が“4”、同“A1−XXL”のサイズ順が“5”である。すなわち、サイズID“A1−S”、“A1−M”、“A1−L”、“A1−XL”、“A1−XXL”の順に、サイズが大きくなることを示す(サイズID“A1−S”のサイズが最小で、サイズID“A1−XXL”のサイズが最大である)。サイズID“A1−P”は別注のサイズなので、サイズ順や商品単価は設定なし“−”(ハイフン記号)となる。
サイズマスタ112には、他の商品についても同様にして、サイズIDやサイズ名などを含むレコードが登録される。
図8は、採寸パターンマスタの例を示す図である。採寸パターンマスタ113は、ブラウザ120によりサーバ200からダウンロードされて、マスタ記憶部110に格納される。採寸パターンマスタ113と同じ情報がマスタ記憶部210にも記憶される。採寸パターンマスタ113は、採寸ID、商品ID、サイズID、身長、肩幅、バスト、ウエスト、ヒップ、袖丈及び股下の項目を含む。
採寸IDの項目には、採寸IDが登録される。商品IDの項目には、商品IDが登録される。サイズIDの項目には、サイズIDが登録される。身長の項目には、該当のサイズIDに対応する身長の範囲の最小値(図中、最小と表記)と最大値(図中、最大と表記)とが登録される。肩幅の項目には、該当のサイズIDに対応する肩幅の範囲の最小値と最大値とが登録される。バストの項目には、該当のサイズIDに対応するバストの範囲の最小値と最大値とが登録される。ウエストの項目には、該当のサイズIDに対応するウエストの範囲の最小値と最大値とが登録される。ヒップの項目には、該当のサイズIDに対応するヒップの範囲の最小値と最大値とが登録される。袖丈の項目には、該当のサイズIDに対応する袖丈の範囲の最小値と最大値とが登録される。股下の項目には、該当のサイズIDに対応する股下の範囲の最小値と最大値とが登録される。ただし、身長、肩幅、バスト、ウエスト、ヒップ、袖丈及び股下の項目には、商品によっては、設定なしとなる項目もあり得る。また、各項目の最小値及び最大値の単位は、センチメートル(cm:Centimeters)である。
例えば、採寸パターンマスタ113には、採寸IDが“A1−1”、商品IDが“A1”、サイズIDが“A1−S”のレコードが登録される。このレコードでは、身長の最小値が“150”、同最大値が“160”、肩幅の最小値が“40”、同最大値が“45”、バストの最小値が“80”、同最大値が“86”、袖丈の最小値が“55”、同最大値が“58”である。また、このレコードでは、ウエスト、ヒップ及び股下が範囲の設定なし(最小値、最大値の何れも“−”)である。
すなわち、このレコードは、採寸ID“A1−1”で識別され、商品ID“A1”の商品のサイズID“A1−S”のサイズ(サイズ名“S”に相当)に対する各部位の適合サイズを表している。具体的には、身長の範囲は、150〜160cmである。肩幅の範囲は、40〜45cmである。バストの範囲は、80〜86cmである。袖丈の範囲は、55〜58cmである。ウエスト、ヒップ及び股下についてはサイズ不問である。
採寸パターンマスタ113には、商品ID“A1”の他のサイズや、他の商品IDの各サイズについても同様に、サイズ範囲が登録される。例えば、商品ID“A2”は“トレッキングパンツ”であり、ウエスト、ヒップ及び股下の各サイズに対して、当該商品の各サイズも用意されている。また、例えば、商品ID“C1”の“ワンピース”のように、身長、肩幅、バスト、ウエスト、ヒップ、股下の各サイズに対して、当該商品の各サイズが用意されていることもある。
図9は、レコメンド優先度マスタの例を示す図である。レコメンド優先度マスタ114は、ブラウザ120によりサーバ200からダウンロードされて、マスタ記憶部110に格納される。レコメンド優先度マスタ114と同じ情報がマスタ記憶部210にも記憶される。レコメンド優先度マスタ114は、ブランドID、商品ID、優先度及び利用区分の項目を含む。
ブランドIDの項目には、ブランドIDが登録される。商品IDの項目には、商品IDが登録される。優先度の項目には、優先度が登録される。優先度は、数値で表され、数値が小さいほど、サイズ選択の際に優先される度合は高い。利用区分の項目には、各部位のサイズを、推奨サイズの提示(レコメンド)に利用するか否かを示す利用区分が登録される。利用区分“0”は、利用しないことを示す。利用区分“1”は、利用することを示す。
例えば、レコメンド優先度マスタ114には、ブランドIDが“A”、商品IDが“A1”、優先度が“1”、利用区分について、身長が“1”、肩幅が“1”、バストが“1”、ウエストが“0”、ヒップが“0”、袖丈が“0”、股下が“0”というレコードが登録される。このレコードは、ブランドID“A”の商品ID“A1”で示される商品に対する優先度“1”の各部位の組み合わせを示している。優先度“1”の組み合わせは、身長、肩幅及びバストの組み合わせである。
レコメンド優先度マスタ114には、ブランドID“A”の商品ID“A1”に対して各部位の優先度“2”の組み合わせも登録されている。優先度“2”の組み合わせは、身長、バスト及び袖丈の組み合わせである。
例えば、推奨サイズ検索部140は、商品マスタ111、採寸パターンマスタ113及びレコメンド優先度マスタ114に基づいて、ある人物に対し、次のように商品ID“A1”の商品の推奨サイズを検索することができる。商品マスタ111によれば、商品ID“A1”の商品では、身長、肩幅、バスト及び袖丈がサイズ推定部130により採寸されることになる。まず、推奨サイズ検索部140は、採寸パターンマスタ113を参照して、商品ID“A1”の商品において、身長、肩幅、バスト及び袖丈が、採寸されたサイズに適合するサイズを検索する。
ここで検索できなかった場合、次に、推奨サイズ検索部140は、レコメンド優先度マスタ114を参照して、商品ID“A1”の商品について、優先度“1”の組み合わせ(身長、肩幅及びバスト)で適合するサイズを検索する。それでも検索できなかった場合、次に、推奨サイズ検索部140は、レコメンド優先度マスタ114を参照して、商品ID“A1”の商品について、優先度“2”の組み合わせ(身長、バスト及び袖丈)で適合するサイズを検索する。このように、推奨サイズ検索部140は、レコメンド優先度マスタ114により、サイズ検索に用いる利用区分を商品に応じて変更しながら、推奨サイズを検索する。
なお、レコメンド優先度マスタ114における優先度及び利用区分は、商品ID毎に定められてもよいし、ブランドID毎に定められてもよい。レコメンド優先度マスタ114では、ブランドID“D”に対して、優先度及び利用区分が対応づけられる例も示されている。また、レコメンド優先度マスタ114における優先度及び利用区分は、衣類の種別(例えば、Tシャツ、Yシャツ、パンツなどの分類)に応じて定められてもよい。
図10は、レコメンドテーブルの例を示す図である。レコメンドテーブル115は、マスタ記憶部110に格納される。レコメンドテーブル115は、ユーザID、商品ID、サイズID(ジャスト)、サイズID(ゆったり)及びサイズID(大きめ)の項目を含む。
ユーザIDの項目には、ユーザID(ユーザアカウントの識別情報)が登録される。商品IDの項目には、商品IDが登録される。サイズID(ジャスト)の項目には、該当の人物の各部位のサイズに対して、採寸パターンマスタ113から抽出された適合サイズ(採寸パターンマスタ113における各部位のサイズ範囲に合致する衣類サイズ)のサイズIDが登録される。ここで、適合サイズの判定には、ある商品に対して採寸パターンマスタ113に登録された全ての部位のサイズ範囲が用いられることもあるし、一部の部位のサイズ範囲のみが用いられることもある。サイズID(ゆったり)の項目には、サイズID(ジャスト)で示されるサイズIDよりも1段階大きなサイズのサイズIDが登録される。サイズID(大きめ)の項目には、サイズID(ゆったり)で示されるサイズIDよりも1段階大きなサイズ(サイズID(ジャスト)で示されるサイズIDよりも2段階大きなサイズ)のサイズIDが登録される。
ここで、サイズID(ジャスト)の項目に登録されたサイズIDで示されるサイズを、「ジャストサイズ」と称する。また、サイズID(ゆったり)の項目に登録されたサイズIDで示されるサイズを、「ゆったりサイズ」と称する。更に、サイズID(大きめ)の項目に登録されたサイズIDで示されるサイズを、「大きめサイズ」と称する。
例えば、レコメンドテーブル115には、ユーザIDが“USER1”、商品IDが“A1”、サイズID(ジャスト)が“A1−L”、サイズID(ゆったり)が“A1−XL”、サイズID(大きめ)が“A1−XXL”というレコードが登録される。これは、ユーザID“USER1”で示されるユーザに対し、商品ID“A1”では、サイズID“A1−L”(サイズ名“L”)がジャストサイズであることを示す。また、サイズID“A1−XL”(サイズ名“XL”)がゆったりサイズであることを示す。更に、サイズID“A1−XXL”(サイズ名“XXL”)が大きめサイズであることを示す。
レコメンドテーブル115には、ユーザID“USER1”に対し、複数の商品IDに関する推奨サイズのレコードが登録され得る。
また、端末装置100を用いて、複数のユーザがECサイトにログインして、サービスを利用する場合、レコメンドテーブル115には、他のユーザに対する推奨サイズのレコードが登録されてもよい。
更に、レコメンドテーブル115では、ジャストサイズよりも小さいサイズを管理してもよい。例えば、推奨サイズは、ジャストサイズよりも1段階小さいサイズを含んでもよい。
図11は、ユーザテーブルの例を示す図である。ユーザテーブル116は、マスタ記憶部110に格納される。ユーザテーブル116は、ユーザID、性別、撮像画像格納先及びサイズの項目を含む。
ユーザIDの項目には、ユーザIDが登録される。性別の項目には、ユーザの性別を示す区分が登録される。例えば、性別“0”は男性である。また、性別“1”は女性である。撮像画像格納先の項目には、人物を撮像して生成された撮像画像の格納先ディレクトリを示すパスが登録される。後述するように、撮像画像は、人物の正面及び側面の2種類取得され得る。このため、撮像画像格納先の項目には、当該2種類の画像に対するパスが登録され得る。例えば、正面の撮像画像及び側面の撮像画像はパスにより区別される。また、撮像画像に含まれる人物は、ユーザ本人でもよいし、本人以外のユーザ(例えば、家族など)でもよい。サイズの項目には、サイズ推定部130により推定されたユーザの各部位のサイズが登録される。具体的な部位は、身長、肩幅、バスト、ウエスト、ヒップ、袖丈及び股下である。サイズを取得済の部位に対しては、該当の部位のサイズを示す数値(単位はcm)が登録される。また、サイズを未取得の部位は、設定なし(“−”)となる。
例えば、ユーザテーブル116には、ユーザIDが“USER1”、性別が“0”、撮像画像格納先が“PATHx”というレコードが登録される。このレコードでは、サイズについて、身長が“170”、肩幅が“43”、バストが“86”、ウエストが“−”、ヒップが“−”、袖丈が“60”、股下が“−”という情報が登録されている。
すなわち、このレコードは、ユーザID“USER1”で示されるユーザの性別が男性であり、当該ユーザの撮像画像の格納先のパスが“PATHx”であることを示す。また、当該ユーザについて、身長“170”cm、肩幅“43”cm、バスト“86”cm、袖丈“60”cmを取得済であり、ウエスト、ヒップ、股下のサイズを未取得であることを示す。
なお、端末装置100を用いて、複数のユーザがECサイトにログインして、サービスを利用する場合、ユーザテーブル116には、他のユーザの身体情報が登録されてもよい。また、ユーザテーブル116には、1つのユーザアカウントに対して、複数の人物(
本人及びその家族など)の撮像画像や身体情報を登録可能としてもよい。
次に、ブラウザ120がディスプレイ105aに表示させるGUIの画面の例を説明する。ブラウザ120は、表示情報(例えば、HTMLデータ)をサーバ200から取得して、ディスプレイ105aに各画面を表示させる。
図12は、商品表示用画面の例を示す図である。図12(A)は、商品表示に用いられる商品一覧画面300を例示している。図12(B)は、商品表示に用いられる商品詳細画面310を例示している。
商品一覧画面300は、ユーザによるECサイトへのログイン完了後に、ブラウザ120により表示される。商品一覧画面300は、商品画像301,302,303を含む。例えば、商品画像301は、アウタージャケットのサムネイル画像である。商品画像302は、トレッキングパンツのサムネイル画像である。商品画像303は、Tシャツのサムネイル画像である。また、商品一覧画面300は、商品画像301,302,303の価格を示す文字列も含む。ユーザは、タッチパネル106aをタッチ操作(例えば、タップ)することで、所望の商品画像を選択できる。例えば、ブラウザ120は、選択された商品の商品詳細画面310の表示情報をサーバ200から取得し、ディスプレイ105aに表示させる。例えば、商品画像301に対応する商品が選択されたとする。
商品詳細画面310は、商品画像301で選択された商品の詳細を表示するための画面である。商品詳細画面310は、商品画像311、商品詳細欄312、サイズ一覧313及び採寸開始ボタン314を含む。
商品画像311は、商品一覧画面300で選択された商品の拡大された画像である。商品詳細欄312は、商品に関する説明文を表示する欄である。サイズ一覧313は、該当の商品に対して選択可能なサイズの一覧を表示する領域である。採寸開始ボタン314は、端末装置100を用いた採寸を開始するためのボタンである。例えば、ユーザは、採寸開始ボタン314が表示されている位置をタッチパネル106aによりタッチ操作することで、端末装置100に対して採寸開始の操作入力を行える。
なお、商品詳細画面310には、商品一覧画面300に戻るためのボタンや採寸を行わずに注文を行うためのボタンなどが設けられてもよい。
図13は、サイズ入力画面の例を示す図である。ブラウザ120は、商品詳細画面310において採寸開始ボタン314に対する操作入力を受け付けると、サイズ入力画面320の表示情報をサーバ200から取得し、ディスプレイ105aに表示させる。サイズ入力画面320は、入力フォーム321,322,323,324,325及び次へボタン326を含む。
入力フォーム321,322,323,324,325は、プルダウン式の入力フォームである。入力フォーム321は、身長の入力を受け付ける。入力フォーム322は、性別の入力を受け付ける。入力フォーム323は、肩幅の入力を受け付ける。入力フォーム324は、バストの入力を受け付ける。入力フォーム325は、袖丈の入力を受け付ける。入力フォーム323,324,325では、ユーザは「カメラで採寸」という内容を選択することができる。「カメラで採寸」が選択された項目のサイズは、カメラ104を用いて、サイズ推定部130の機能により採寸されることになる。また、身長及び性別の入力フォーム321,322には、ユーザが衣類を着用する人物に関する情報を入力する。
ここで、サイズ入力画面320には、商品マスタ111における採寸利用有無区分に応じた部位に対応する入力フォームが表示される。例えば、サイズ推定部130は、ユーザにより選択された衣類に応じて、いずれの部位に対する入力フォームを表示させるかを商品マスタ111に基づいてブラウザ120に指示してもよい。具体的には、サイズ推定部130は、採寸利用有無区分が“1”の部位に対応する入力フォームを表示させると判断する。一方、サイズ推定部130は、採寸利用有無区分が“0”の部位に対応する入力フォームを表示させないと判断する。あるいは、ブラウザ120が、ユーザにより選択された衣類に応じて、いずれの部位に対する入力フォームを表示させるかを商品マスタ111に基づいて判断してもよい。
次へボタン326は、次の画面に進むための操作入力を受け付けるためのボタンである。ブラウザ120により次へボタン326に対する操作入力を受け付けると、サイズ推定部130は、ユーザによる人物の撮影を補助する撮影補助画面を、ディスプレイ105aに表示させる。サイズ推定部130は、カメラ104を起動させ、カメラ104による撮像を開始させる。すなわち、サイズ推定部130は、カメラ104を撮像モードに移行させる。撮影補助画面には、人物の正面の撮影を補助する画面と、人物の側面の撮影を補助する画面との2つのパターンがある。まず、サイズ推定部130は、人物の正面の撮影を補助する。
図14は、撮影補助画面(正面)の例を示す図である。図14(A)は、人物が写り込んでいない状態の撮影補助画面330を例示している。図14(B)は、人物が写り込んでいる状態の撮影補助画面330aを例示している。
撮影補助画面330は、人物の正面の撮影を補助する画面である。撮影補助画面330の画面上部には、「枠線に合わせて正面を向いて撮影してください。」というメッセージが表示される。撮影補助画面330の背景には、カメラ104により現在撮像されている映像が重ねて表示される。
撮影補助画面330は、人型画像331、上辺332、下辺333、撮影ボタン334及び戻るボタン335を有する(撮影補助画面330aも同様である)。
人型画像331は、人物の輪郭をはめ込むための人型の枠である。人型画像331は、人物の正面の撮影を補助するため、人物を正面から見たときの輪郭を表している。
上辺332は、人物の頭頂部を合わせるための線分である。上辺332は、人型画像331の頭頂部に接し、撮影補助画面330の横方向に延びる線分である。上辺332には、「頭の天辺をここに合わせてください。」というメッセージが添えられる。
下辺333は、人物のつま先を合わせるための線分である。下辺333は、人型画像331の足裏部に接し、撮影補助画面330の横方向に延びる線分である。下辺333には、「つま先をここに合わせてください。」というメッセージが添えられる。
撮影ボタン334は、カメラ104による撮像の実行を指示するための操作入力を受け付けるボタンである。戻るボタン335は、サイズ入力画面320に戻るための操作入力を受け付けるボタンである。
ユーザは、カメラ104を対象の人物に向けることで、当該人物を撮影できる(ユーザ自身を撮影したい場合、他のユーザに撮影してもらう)。撮影補助画面330aは、撮影補助画面330において、カメラ104により撮像された人物の正面の人物画像336を含む。
ユーザは、カメラ104と被写体の人物との間の距離を適切に取ったり、カメラ104により撮像されている背景の映像を拡大/縮小したりして、人物画像336の輪郭を人型画像331に合わせることができる。ユーザは、人物画像336を人型画像331に合わせ、人物画像336の頭頂を上辺332に、人物画像336のつま先を下辺333に合わせると、撮影ボタン334をタッチ操作する。
カメラ104は、撮影ボタン334に対するタッチ操作に応じて、現在撮像されている人物画像336を含む撮像画像(静止画)を、RAM102又はフラッシュメモリ103の所定の記憶領域に保存する。
サイズ推定部130は、正面の人物画像336を含む撮像画像を取得すると、次に、人物の側面の撮影補助画面をディスプレイ105aに表示させる。
図15は、撮影補助画面(側面)の例を示す図である。図15(A)は、人物が写り込んでいない状態の撮影補助画面340を例示している。図15(B)は、人物が写り込んでいる状態の撮影補助画面340aを例示している。
撮影補助画面340は、人物の側面の撮影を補助する画面である。撮影補助画面340の上部には、「枠線に合わせて横を向いて撮影してください。」というメッセージが表示される。撮影補助画面340の背景には、カメラ104により現在撮像されている映像が重ねて表示される。
撮影補助画面340は、人型画像341、上辺342、下辺343、撮影ボタン344及び戻るボタン345を有する(撮影補助画面340aも同様)。
人型画像341は、人物の輪郭をはめ込むための人型の枠である。人型画像341は、人物の側面の撮影を補助するため、人物を横から見たときの輪郭を表している。
上辺342は、人物の頭頂部を合わせるための線分である。上辺342は、人型画像341の頭頂部に接し、撮影補助画面340の横方向に延びる線分である。上辺342には、「頭の天辺をここに合わせてください。」というメッセージが添えられる。
下辺343は、人物のつま先を合わせるための線分である。下辺343は、人型画像341の足裏部に接し、撮影補助画面340の横方向に延びる線分である。下辺343には、「つま先をここに合わせてください。」というメッセージが添えられる。
撮影ボタン344は、カメラ104による撮像の実行を指示するための操作入力を受け付けるボタンである。戻るボタン345は、撮影補助画面330に戻るための操作入力を受け付けるボタンである。
ユーザは、カメラ104を対象の人物に向けることで、当該人物を撮影できる(ユーザ自身を撮影したい場合、他のユーザに撮影してもらう)。撮影補助画面340aは、撮影補助画面340において、カメラ104により撮像された人物の側面の人物画像346を含む。
ユーザは、カメラ104と被写体の人物との間の距離を適切に取ったり、カメラ104により撮像されている背景の映像を拡大/縮小したりして、人物画像346の輪郭を人型画像341に合わせることができる。ユーザは、人物画像346を人型画像341に合わせ、人物画像346の頭頂を上辺342に、人物画像346のつま先を下辺343に合わせると、撮影ボタン344をタッチ操作する。
カメラ104は、撮影ボタン344に対するタッチ操作に応じて、現在撮像されている人物画像346を含む撮像画像(静止画)を、RAM102又はフラッシュメモリ103の所定の記憶領域に保存する。
こうして、サイズ推定部130は、人物の正面の撮像画像と、人物の側面の撮像画像とを取得する。ここで、人物の正面を、人物を第1の方向から見た面ということができる。また、人物の側面を、人物を第1の方向とは異なる第2の方向から見た面ということができる。すなわち、撮像画像は、異なる方向から人物を撮像した複数の撮像画像を含むといえる。
サイズ推定部130は、側面の人物画像346を含む撮像画像を取得すると、採寸用の補助線(表示部品)に対する、ユーザの調整を受け付けるための画面(「調整受付画面」と称する)をディスプレイ105aに表示させる。このとき、サイズ推定部130は、商品マスタ111を参照して、選択された商品に対する採寸対象の部位を特定する。そして、サイズ推定部130は、採寸対象の部位に対して採寸用の補助線の調整を受け付ける。次に、採寸用の補助線の調整例を説明する。なお、以下では、採寸用の補助線を、「矢印オブジェクト」と称する。
図16は、バスト(側面)の長さ/位置の調整例を示す図である。調整受付画面350は、ディスプレイ105aに表示される画面の例であり、対象部位の一例としてバストを例示している。ここで、バスト、ウエスト、ヒップのように、該当の部位の体の周囲の長さを測る場合、人物の正面及び側面から見て計測した長さを用いる。図16の例では、人物を側面から見たときのバストに対する矢印オブジェクトの長さ/位置の調整例である。
調整受付画面350は、拡大画像351、矢印オブジェクト352、伸ばすボタン353、縮めるボタン354、決定ボタン355、戻るボタン356、メッセージ表示領域357を含む。
拡大画像351は、人物画像346におけるバスト位置を拡大した画像である。ここで、調整受付画面350では、バストの側面側の調整を受け付けるため、拡大元の画像として、人物の側面に対する撮像画像(人物画像346を含む撮像画像)が用いられる。一方、正面側の調整を受け付ける場合は、拡大元の画像として、人物の正面に対する撮像画像(人物画像336を含む撮像画像)が用いられることになる。
また、マスタ記憶部110は、人型画像341のバスト位置の情報を予め記憶する(他の部位や人型画像331についても同様)。サイズ推定部130は、マスタ記憶部110に記憶された当該情報を参照することで、バスト位置に対して人物画像346の拡大させる箇所を特定することができる。
矢印オブジェクト352は、採寸用の補助線(線分)であり、両端に矢印が付されている。矢印オブジェクト352は、調整受付画面350において、上下左右に移動可能に表示される。矢印オブジェクト352は、ユーザによる所定のタッチ操作によって移動や長さの調整が可能である。矢印オブジェクト352のデフォルトの長さ及び表示位置は、各部位に応じて予め定められている。
伸ばすボタン353は、矢印オブジェクト352の長さを伸ばす操作入力を受け付けるボタンである。例えば、サイズ推定部130は、伸ばすボタン353が一回押下される(一回タップされる)たびに、矢印オブジェクト352の長さを所定量だけ増やす。あるいは、サイズ推定部130は、伸ばすボタン353が一回押下されるたびに、矢印オブジェクト352を左右対称に、所定倍率だけ拡大する。
縮めるボタン354は、矢印オブジェクト352の長さを縮める操作入力を受け付けるボタンである。例えば、サイズ推定部130は、縮めるボタン354が一回押下されるたびに、矢印オブジェクト352の長さを所定量だけ減らす。あるいは、サイズ推定部130は、縮めるボタン354が一回押下されるたびに、矢印オブジェクト352を左右対称に、所定倍率だけ縮小する。
決定ボタン355は、矢印オブジェクト352の調整の完了を受け付けるためのボタンである。サイズ推定部130は、決定ボタン355に対するタッチ操作を受け付けると、矢印オブジェクト352に対する長さや位置の調整量(デフォルトの長さ及び位置に対する調整量)を取得する。
戻るボタン356は、1つ前の画面に戻るための操作入力を受け付けるボタンである。
メッセージ表示領域357は、調整受付画面350の説明文を表示する領域である。例えば、メッセージ表示領域357は、「矢印位置をバストの位置に合わせてください。」という説明文の表示を含む。
前述のように、矢印オブジェクト352は、ユーザにより長さや位置を調整可能である。例えば、ユーザは、矢印オブジェクト352を1本の指でタッチしながらスライドさせることで、矢印オブジェクト352の位置を、人物側面の拡大画像351のバスト位置に合わせることができる。なお、サイズ推定部130は、上下左右方向への移動を受け付けるためのボタン(例えば、上移動用ボタン、下移動用ボタン、左移動用ボタン、右移動用ボタン)を調整受付画面350に含めて、当該ボタンによるユーザの移動操作を受け付けてもよい。
サイズ推定部130は、ユーザによる位置調整の操作入力に応じて、矢印オブジェクト352の表示位置を変更する。調整受付画面350aは、矢印オブジェクト352に対する位置調整後の矢印オブジェクト352aの表示例を示している。
また、ユーザは、伸ばすボタン353を押下操作することで、矢印オブジェクト352の長さを増やせる。あるいは、ユーザは、矢印オブジェクト352の付近を2本の指でタッチしながらピンチアウト操作することで、矢印オブジェクト352の長さを増やすこともできる。更に、ユーザは、縮めるボタン354を押下操作することで、矢印オブジェクト352の長さを減らせる。あるいは、ユーザは、矢印オブジェクト352の付近を2本の指でタッチしながらピンチイン操作することで、矢印オブジェクト352の長さを減らすこともできる。こうして、ユーザは、矢印オブジェクト352の両端を、拡大画像351における人物のバストの輪郭の縁に合わせることができる。
サイズ推定部130は、ユーザによる長さ調整の操作入力に応じて、矢印オブジェクト352aの長さを変更する。調整受付画面350bは、矢印オブジェクト352aに対する長さ調整後の矢印オブジェクト352bの表示例を示している。なお、サイズ推定部130は、矢印オブジェクト352に対する長さ及び位置の調整の操作入力を任意の順序で受け付けることができる。
サイズ推定部130は、採寸対象の各部位に対して、調整受付画面350と同様の調整受付画面を表示する。次に、調整受付画面における、他の部位に対する矢印オブジェクトの表示方法を例示する。
図17は、各部位に対する矢印オブジェクトの表示例(その1)を示す図である。図17(A)は、肩幅に対する矢印オブジェクトの表示例である。図17(B)は、バスト(正面)に対する矢印オブジェクトの表示例である。図17(C)は、ウエスト(正面)に対する矢印オブジェクトの表示例である。図17(D)は、ヒップ(正面)に対する矢印オブジェクトの表示例である。
図18は、各部位に対する矢印オブジェクトの表示例(その2)を示す図である。図18(A)は、股下に対する矢印オブジェクトの表示例である。股下に対する矢印オブジェクトは、正面の人物画像336の股下部を拡大した画像に重ねて表示される。図18(B)は、袖丈に対する矢印オブジェクトの表示例である。袖丈に対する矢印オブジェクトは、側面の人物画像346の腕部を拡大した画像に重ねて表示される。図18(C)は、ウエスト(側面)に対する矢印オブジェクトの表示例である。図18(D)は、ヒップ(側面)に対する矢印オブジェクトの表示例である。
ここで、サイズ推定部130による矢印オブジェクト(表示部品)の表示は、撮像画像に人型画像を重畳表示させている際に受け付けた入力操作に応じて、人型画像を重畳表示させていない撮像画像上に表示させる処理であるといえる。
また、商品の商品ID(衣類の指定情報)に対応づけて記憶された位置は複数の位置(複数の部位に対応する位置)を含むといえる。図16〜図18で例示したように、矢印オブジェクト(表示部品)は複数の位置のそれぞれにおいて表示される。
更に、図16〜図18の例では、矢印オブジェクトに対するユーザによる調整を受け付けるものとしたが、サイズ推定部130が人物画像336(あるいは人物画像346)を用いて、自動的に矢印オブジェクトの長さや位置を調整してもよい。例えば、サイズ推定部130は、矢印オブジェクトを表示させる部位に応じた人物画像336の輪郭に合わせて、矢印オブジェクトの長さを調整して、調整受付画面に表示させることも考えられる。この場合、サイズ推定部130による調整後の矢印オブジェクトに対して、ユーザによる追加の調整を許容することも考えられる。
図19は、サイズ推定の例を示す図である。図19(A)は、部位の一例として股下を挙げ、股下のサイズの推定方法の例を示している。例えば、ある人物に対して入力された身長(入力身長)がH0であるとする。また、身長に対応する撮影補助画面330aの画面上の長さ(上辺332と下辺333との間の長さ)をh0とする。この場合、入力身長H0の、画面上の長さh0に対する比は、H0/h0である。
一方、調整受付画面による股下に対する矢印オブジェクトの調整後の画面上の長さをh1とする。ここで、長さh1は、調整受付画面における矢印オブジェクトの調整後の長さ(デフォルトの長さ+調整量)を、撮影補助画面330aにおける長さに換算した値である(調整受付画面における調整後の長さを、調整受付画面に表示した股下部の拡大率で割った値)。この場合、サイズ推定部130は、股下推定サイズH1を、H1=h1×(H0/h0)と算出する。
ここで、矢印オブジェクトのデフォルトの長さは、予め定まっているため、サイズ推定部130は、入力された身長と矢印オブジェクトの長さの調整量に応じて、股下のサイズを推定しているといえる。サイズ推定部130は、肩幅及び袖丈についても、股下と同様にしてサイズを推定する。
図19(B)は、部位の一例として、ウエストを挙げ、ウエストのサイズの推定方法の例を示している。例えば、サイズ推定部130は、図19(A)で例示した方法と同様にして、正面から見たウエストの長さ、及び、側面から見たウエストの長さを算出する。そして、サイズ推定部130は、正面から見たウエストの長さを長径(長軸の長さ)、側面から見たウエストの長さを短径(短軸の長さ)とした楕円の円周を、ウエストのサイズとする。このように、サイズ推定部130は、入力された身長と矢印オブジェクトの長さの調整に応じて、ウエストのサイズの推定を行える。サイズ推定部130は、バスト及びヒップについても、ウエストと同様にしてサイズを推定する。
ここで、サイズ推定部130は、位置の調整量によって、各部位のサイズを補正してもよい。例えば、サイズ推定部130は、長さの調整量に応じて求めたサイズを位置の調整量に応じて補正して、各部位のサイズを推定してもよい。
より具体的には、サイズ推定部130は、矢印オブジェクトの位置の調整量が比較的大きい(例えば、閾値よりも大きい)場合に、長さの調整量に応じて求めたサイズを所定の割合だけ大きくしたり、小さくしたりする補正を行うことが考えられる。例えば、股下に対して、矢印オブジェクトの位置がデフォルト位置に対して閾値よりも大きく下側に変更される場合、該当の人物の股の位置は、比較的低い位置にあると考えられる。この場合、サイズ推定部130は、長さの調整量によって求めた股下サイズを、更に所定割合だけ小さくする補正を行うことが考えられる。逆に、股下に対して矢印オブジェクトの位置がデフォルト位置に対して閾値よりも大きく上側に変更される場合、該当の人物の股の位置は、比較的高い位置にあると考えられる。この場合、サイズ推定部130は、長さの調整量によって求めた股下サイズを、更に所定割合だけ大きくする補正を行うことが考えられる。
あるいは、サイズ推定部130は、位置の調整量のみによって特定の部位のサイズ推定を行うことも考えられる。例えば、身長に対して、股下のデフォルトの長さをマスタ記憶部110に予め記憶しておく。そして、矢印オブジェクトの位置がデフォルト位置に対して閾値よりも大きく下側に変更される場合、サイズ推定部130は、デフォルトの長さを所定割合だけ小さくした長さを該当の人物の股下サイズとしてもよい。また、矢印オブジェクトの位置がデフォルト位置に対して閾値よりも大きく上側に変更される場合、サイズ推定部130は、デフォルトの長さを所定割合だけ大きくした長さを該当の人物の股下サイズとしてもよい。
こうして、サイズ推定部130は、人物の身長の情報と、矢印オブジェクトの長さ及び/又は位置の調整量とに応じて、人物の特定の部位のサイズを推定する。
図20は、サイズ入力画面(推定サイズ入力後)の例を示す図である。サイズ入力画面320aは、サイズ入力画面320に対して、肩幅、バスト及び袖丈の推定サイズを、サイズ推定部130の機能により入力した状態を例示している。身長に対する入力フォーム321及び性別に対する入力フォーム322の入力内容は、サイズ入力画面320と同じである。
一方、肩幅に対する入力フォーム323には、“48cm”という文字列が表示されている。バストに対する入力フォーム324には、“86cm”という文字列が表示されている。袖丈に対する入力フォーム325には、“60cm”という文字列が表示されている。肩幅の48cm、バストの86cm、及び、袖丈の60cmというサイズは、サイズ推定部130による推定結果である。
ブラウザ120は、全ての入力フォームに対してサイズ又は性別が入力された状態で次へボタン326のタッチ操作を受け付けると、推奨サイズ検索部140と連携して、サイズレコメンド画面をディスプレイ105aに表示させる。
例えば、商品ID“A1”の商品に対して、上記の各部位の推定結果が得られた場合を考える。この場合、採寸パターンマスタ113によれば、該当の人物の身長170cm、肩幅48cm、バスト86cm、袖丈60cmの条件に適合する商品ID“A1”のサイズIDは、“A1−L”である。よって、ジャストサイズは、サイズID“A1−L”のサイズ名“L”のサイズである。なお、推奨サイズ検索部140は、身長、肩幅、バスト、袖丈の全ての条件に適合するサイズを検索できないこともある。この場合にも、推奨サイズ検索部140は、レコメンド優先度マスタ114に基づいて、身長、肩幅、バスト、袖丈の一部の部位に関する条件に適合するサイズを検索することで、ジャストサイズを特定できる。
また、サイズマスタ112によれば、サイズ名“L”のサイズよりも1つ大きいサイズ(ゆったりサイズ)は、サイズ名“XL”のサイズである。更に、サイズマスタ112によれば、サイズ名“L”のサイズよりも2つ大きいサイズ(大きめサイズ)は、サイズ名“XXL”のサイズである。
図21は、サイズレコメンド画面の例を示す図である。サイズレコメンド画面360は、選択された商品のユーザに対する推奨サイズを表示する画面である。サイズレコメンド画面360は、メッセージ表示領域361、推奨サイズ表示領域362、戻るボタン366及び次へボタン367を有する。
メッセージ表示領域361は、サイズレコメンド画面360の説明文を表示する領域である。例えば、メッセージ表示領域361は、「サイズレコメンドの結果を表示いたします。次へボタンでお進みください。」というメッセージを含む。
推奨サイズ表示領域362は、推奨サイズ検索部140により検索された推奨サイズを表示する領域である。例えば、推奨サイズ表示領域362は、ユーザにより選択された商品の画像に加えて、推奨サイズを示す画像363,364,365を含む。画像363は、ジャストサイズがサイズ名“L”のサイズであることを示す画像である。画像364は、ゆったりサイズがサイズ名“XL”のサイズであることを示す画像である。画像365は、大きめサイズがサイズ名“XXL”のサイズであることを示す画像である。
戻るボタン366は、サイズ入力画面320aに戻るための操作入力を受け付けるボタンである。次へボタン367は、注文情報登録画面に進むための操作入力を受け付けるボタンである。ブラウザ120は、次へボタン367に対する操作入力を受け付けると、注文情報登録画面をディスプレイ105aに表示させる。
図22は、注文情報登録画面の例を示す図である。注文情報登録画面370は、画像371,372,373,374、商品詳細欄375、サイズ一覧376、数量選択フォーム377、注文ボタン378及び別の商品の選択に移る選択ボタン379を有する。
画像371は、商品の画像である。
画像372,373,374は、推奨サイズを表す画像である。例えば、画像372は、ジャストサイズ(サイズ名“L”)を表す。画像373は、ゆったりサイズ(サイズ名“XL”)を表す。画像374は、大きめサイズ(サイズ名“XXL”)を表す。
商品詳細欄375は、商品の説明文を表示する欄である。
サイズ一覧376は、選択可能なサイズの一覧を表示する領域である。例えば、サイズ一覧376には、現在の商品“アウタージャケット”に対して、選択可能なサイズのサイズ名“S”、“M”、“L”、“XL”、“XXL”及び“P”のアイコンが表示されている。ユーザは、推奨サイズとして提示された画像372,373,374を確認して、いずれかのアイコンをタッチ操作することで、注文したいサイズを選択できる。
数量選択フォーム377は、注文する商品の数を入力するための入力フォームである。
注文ボタン378は、サイズ一覧376で選択されたサイズ及び数量選択フォーム377で選択された数の商品の注文を受け付けるためのボタンである。ブラウザ120は、注文ボタン378に対する操作入力を受け付けると、注文情報登録確認画面をディスプレイ105aに表示させる。
選択ボタン379は、現在の商品の選択を解除して、別の商品の選択に移るためのボタンである。例えば、ブラウザ120は、選択ボタン379に対する操作入力を受け付けると、商品一覧画面300をディスプレイ105aに表示させる。
図23は、注文確認用画面の例を示す図である。図23(A)は、注文内容の確認に用いられる注文情報登録確認画面380を例示している。図23(B)は、注文登録が完了したことの確認に用いられる注文情報登録完了画面390を例示している。
注文情報登録確認画面380は、商品追加ボタン381、注文明細382、注文情報変更ボタン383、合計金額表示欄384、注文候補の商品を保存したカートを空にするための空ボタン385及び注文ボタン386を有する。
商品追加ボタン381は、現在の注文内容に対して更に商品を追加する操作入力を受け付けるボタンである。例えば、ブラウザ120は、商品追加ボタン381に対する操作入力を受け付けると、商品一覧画面300をディスプレイ105aに表示させる。
注文明細382は、現在の注文内容の明細である。例えば、注文明細382は、商品の画像、商品のサイズ、数量、単価、当該商品の注文のための金額(数量と単価との積)を含む。
注文情報変更ボタン383は、注文明細に表示されている商品に対するサイズや数量などの変更を受け付けるためのボタンである。
合計金額表示欄384は、現在カートに保存されている商品の合計金額を表示する欄である。例えば、複数の商品がカートに保存されている場合、複数の商品に関する合計金額が表示される。ここで、カートは、ショッピングカートに相当し、注文する候補の商品の情報を格納するRAM102上の所定の記憶領域である。
空ボタン385は、カートに保存された商品の情報を全て削除するための操作入力を受け付けるボタンである。例えば、ブラウザ120は、空ボタン385に対する操作入力を受け付けると、カートに保存された商品の情報を全て削除して、カートに保存された商品の情報を全て削除した旨のメッセージをディスプレイ105aに表示させる。その後は、例えば、ブラウザ120は、商品一覧画面300をディスプレイ105aに表示させる。
注文ボタン386は、注文情報登録確認画面380に表示された内容での注文の確定を受け付けるボタンである。ブラウザ120は、注文ボタン386に対する操作入力を受け付けると、サーバ200に受け付けた商品の販売処理を依頼し、注文情報登録完了画面390をディスプレイ105aに表示させる。
注文情報登録完了画面390は、注文情報登録が完了した(販売処理の依頼がサーバ200により適切に受け付けられた)旨をユーザに通知するための画面である。注文情報登録完了画面390は、トップボタン391を有する。トップボタン391は、トップ画面(例えば、商品一覧画面300の先頭)に戻るための操作入力を受け付けるボタンである。例えば、ブラウザ120は、トップボタン391に対する操作入力を受け付けると、商品一覧画面300をディスプレイ105aに表示させる。
次に、以上の機能を有する端末装置100の処理手順を説明する。
図24は、端末装置の処理例を示すフローチャートである。以下、図24に示す処理をステップ番号に沿って説明する。
(S1)ブラウザ120は、サーバ200により提供されるECサイトに対するログインを実行する。例えば、ブラウザ120は、ユーザID及びパスワードの入力画面をディスプレイ105aに表示させ、ユーザにより入力されたユーザID及びパスワードをサーバ200に送信し、サーバ200による認証を受ける。認証に成功すると、ブラウザ120は、処理をステップS2に進める。
(S2)ブラウザ120は、コンテンツデータの更新があるか否かを判定する。コンテンツデータの更新がある場合、ブラウザ120は、処理をステップS3に進める。コンテンツデータの更新がない場合、ブラウザ120は、処理をステップS4に進める。ここで、コンテンツデータは、前述のマスタ情報に相当するデータである。例えば、ブラウザ120は、マスタ記憶部110に記憶されたマスタ情報に付されたバージョンよりも新しいバージョンのマスタ情報があるかをサーバ200に問い合わせる。そして、新しいバージョンのマスタ情報がある旨の応答をサーバ200から受け付けると、ブラウザ120は、コンテンツデータに更新があると判定する。新しいバージョンのマスタ情報がない旨の応答をサーバ200から受け付けると、ブラウザ120は、コンテンツデータに更新がないと判定する。
(S3)ブラウザ120は、最新のバージョンのコンテンツデータをサーバ200からダウンロードし、マスタ記憶部110に記憶されたコンテンツデータを更新する。
(S4)ブラウザ120は、ECサイトのトップ画面をディスプレイ105aに表示させる。例えば、ECサイトのトップ画面は、商品一覧画面300の先頭である。ブラウザ120は、商品一覧画面300にてユーザによる商品の選択を受け付けると、該当の商品の商品詳細画面310をディスプレイ105aに表示させる。
(S5)ブラウザ120は、商品詳細画面310において、採寸開始ボタン314に対する操作入力を受け付けると、サイズ推定部130を呼び出し、ユーザによる商品選択を支援する。処理の詳細は後述される。
(S6)ブラウザ120は、注文情報登録画面370及び注文情報登録確認画面380に対するユーザの所定の操作入力により、注文する商品の確定を受け付ける。
(S7)ブラウザ120は、注文された商品の販売処理をサーバ200に依頼する。ブラウザ120は、販売処理を適切に受け付けた旨の応答をサーバ200から受信する。ブラウザ120は、注文情報登録完了画面390をディスプレイ105aに表示させ、注文情報が適切に登録されたことをユーザに通知する。
次に、上記のステップS5における商品選択支援の手順を説明する。
図25は、商品選択支援の例を示すフローチャートである。以下、図25に示す処理をステップ番号に沿って説明する。以下に示す手順は、図24のステップS5に相当する。
(S11)サイズ推定部130は、ユーザにより選択された商品の指定情報(商品ID)をブラウザ120から取得する。
(S12)サイズ推定部130は、マスタ記憶部110に記憶された商品マスタ111を参照して、選択された商品に応じた採寸位置を取得する。例えば、選択された商品の商品IDが“A1”の場合を考える。商品マスタ111の例によれば、商品ID“A1”に対して、採寸利用有無区分“1”が設定されているのは、身長、肩幅、バスト、袖丈である。したがって、この場合、サイズ推定部130は、身長、肩幅、バスト、袖丈を採寸位置として取得する。
(S13)サイズ推定部130は、ユーザにより入力された身長及び性別の情報を取得する。具体的には、サイズ推定部130は、取得した採寸位置の情報をブラウザ120に提供する。ブラウザ120は、サイズ入力画面320をディスプレイ105aに表示させる。ブラウザ120は、サイズ入力画面320を用いてユーザにより入力された身長及び性別の情報をサイズ推定部130に提供する。ここで入力される情報は、商品を着用する対象の人物の情報である(ユーザ本人の情報でもよいし、他のユーザ(ユーザの家族など)の情報でもよい)。身長以外の部位(例えば、肩幅、バスト、袖丈)については、未取得の状態(“カメラで採寸”が選択された状態)である。ここで、サイズ推定部130は、商品マスタ111を参照して、入力された性別が選択された商品の性別区分に適合しない場合に、その旨のメッセージをディスプレイ105aに表示させて、ユーザに通知してもよい。
(S14)サイズ推定部130は、サイズ入力画面320において、次へボタン326に対する操作入力を受け付けると、カメラ104による撮像を開始させ、人型画像331を含む撮影補助画面330(人物正面の撮影用)をディスプレイ105aに表示させる。ユーザは、人型画像331で示される枠に人物画像336を合わせる。
(S15)サイズ推定部130は、ユーザによる撮影ボタン334に対する操作入力を受け付けると、カメラ104により撮像された人物画像336を含む撮像画像を取得する。
(S16)サイズ推定部130は、人型画像341を含む撮影補助画面340(人物側面の撮影用)をディスプレイ105aに表示させる。ユーザは、人型画像341で示される枠に人物画像346を合わせる。
(S17)サイズ推定部130は、ユーザによる撮影ボタン344に対する操作入力を受け付けると、カメラ104により撮像された人物画像346を含む撮像画像を取得する。
(S18)サイズ推定部130は、ステップS12で取得した採寸位置に対する調整受付画面をディスプレイ105aに表示させ、各部位に対する矢印オブジェクトの長さ/位置の調整量を取得する。処理の詳細は後述される。
(S19)サイズ推定部130は、ステップS18で取得した調整量に基づいて、撮像された対象の人物の各部位のサイズを推定する。サイズ推定部130は、推定したサイズをブラウザ120に提供する。ブラウザ120は、推定サイズ入力後のサイズ入力画面320aをディスプレイ105aに表示させる。
(S20)ブラウザ120は、サイズ入力画面320aにおいて、各部位のサイズが入力された状態で次へボタン326に対するユーザの操作入力を受け付けると、推奨サイズ検索部140と連携して選択された商品の推奨サイズをユーザに提示する。処理の詳細は後述される。
ここで、ステップS19において、サイズ推定部130は、推定したサイズを、ユーザIDに対応づけて、マスタ記憶部110に記憶されたユーザテーブル116に登録する。また、サイズ推定部130は、ステップS13で取得した身長や性別の情報も、ユーザIDに対応づけてユーザテーブル116に登録する。更に、サイズ推定部130は、ステップS15,S17で取得した各撮像画像のパスも、ユーザIDに対応づけてユーザテーブル116に登録する(ユーザ本人や家族の名前などに対応づけて登録可能としてもよい)。
次に、ステップS18における長さ/位置の調整量取得の手順を説明する。
図26は、調整量取得の例を示すフローチャートである。以下、図26に示す処理をステップ番号に沿って説明する。以下に示す手順は、図25のステップS18に相当する。
(S21)サイズ推定部130は、商品マスタ111を参照して、選択された商品の指定情報(商品ID)に応じて次に調整を受け付ける部位を特定する。例えば、サイズ推定部130は、肩幅(正面)、バスト(正面)、ウエスト(正面)、ヒップ(正面)、股下、バスト(側面)、ウエスト(側面)、ヒップ(側面)、袖丈の順に、調整を受け付ける部位を特定する。この場合に、サイズ推定部130は、選択された商品に応じて、採寸の対象外の部位をスキップする。
(S22)サイズ推定部130は、ステップS21で特定した該当部位をディスプレイ105aにより拡大表示させ、該当部位に対応する所定位置に矢印オブジェクトを表示させる。この処理は、該当部位に対する調整受付画面をディスプレイ105aに表示させる処理に相当する。
(S23)サイズ推定部130は、調整受付画面における矢印オブジェクトの長さ/位置の調整量の入力を受け付ける。例えば、ユーザは、矢印オブジェクトの長さ/位置を、図16で例示した方法により調整する。そして、サイズ推定部130は、ユーザによる矢印オブジェクトの長さ/位置の調整を受け付けると、調整に応じた長さや位置の初期状態(最初に表示されたときの長さや位置)からの変更分を、長さ/位置の調整量として取得する。
(S24)サイズ推定部130は、選択された商品に対して採寸の対象の全ての部位の調整を受け付けたか否かを判定する。対象の全ての部位の調整を受け付けた場合、サイズ推定部130は、処理を終了する。対象の全ての部位の調整を受け付けていない場合、サイズ推定部130は、処理をステップS21に進める(次の部位に移る)。
次に、図25のステップS20における推奨サイズ提示の手順を説明する。
図27は、推奨サイズ提示の例を示すフローチャートである。以下、図27に示す処理をステップ番号に沿って説明する。以下に示す手順は、図25のステップS20に相当する。
(S31)推奨サイズ検索部140は、商品マスタ111を参照して、選択された商品の指定情報(商品ID)に応じた採寸利用箇所の組を取得する。採寸利用箇所は、採寸利用区分に“1”が設定された部位である。
(S32)推奨サイズ検索部140は、次の優先度に応じたレコメンド利用箇所の組を選択する。ここで、今回の推奨サイズ提示の手順においてステップS32を最初に実行する場合、推奨サイズ検索部140は、ステップS31で取得した採寸利用箇所の組を、レコメンド利用箇所の組(最高優先度の組に相当)とする。一方、ステップS32を2回目以降に実行する場合、推奨サイズ検索部140は、マスタ記憶部110に記憶されたレコメンド優先度マスタ114を参照して、選択された商品に対するレコメンド利用箇所の組を選択する。この場合、レコメンド利用箇所は、レコメンド優先度マスタ114における利用区分に“1”が設定された部位である。また、レコメンド優先度マスタ114からレコメンド利用箇所の組を選択する場合、推奨サイズ検索部140は、優先度の値の小さい順に(すなわち、優先度の高い方から順に)選択する。
(S33)推奨サイズ検索部140は、マスタ記憶部110に記憶された採寸パターンマスタ113を参照して、選択された商品について、サイズ推定部130により推定された各部位のサイズの条件を満たすサイズがあるか否かを判定する。条件を満たすサイズがある場合、推奨サイズ検索部140は、処理をステップS34に進める。条件を満たすサイズがない場合、推奨サイズ検索部140は、処理をステップS35に進める。
ここで、推奨サイズ検索部140により採寸パターンマスタ113の各サイズ範囲と照合される部位は、ステップS32で取得されたレコメンド利用箇所の組に属する部位である。例えば、商品ID“A1”の商品に対し、ステップS32において、レコメンド利用箇所として、身長、肩幅、バストの組が取得されている場合を考える。この場合、推奨サイズ検索部140は、身長、肩幅、バストについて、推定されたサイズと、採寸パターンマスタ113に登録されたサイズとの照合を行えばよい。採寸パターンマスタ113に登録された商品ID“A1”のある部位のサイズ範囲が、当該部位の推定されたサイズを含む場合、当該部位については条件を満たすことになる。例えば、照合対象の部位が3つの場合は、3つの部位について条件を満たすサイズがある場合に、レコメンド利用箇所の組に対して条件を満たすサイズがあることになる。一方、3つのうちの少なくとも1つの部位について条件を満たすサイズがない場合に、レコメンド利用箇所の組に対して条件を満たすサイズがないことになる。
(S34)推奨サイズ検索部140は、ステップS33において、採寸パターンマスタ113から検索したサイズをジャストサイズとする。ここで、例えば、推奨サイズ検索部140は、条件を満たすサイズが複数ある場合には、大きい方のサイズをジャストサイズとする。また、推奨サイズ検索部140は、マスタ記憶部110に記憶されたサイズマスタ112を参照して、ジャストサイズよりも1段階大きいサイズをゆったりサイズ、ジャストサイズよりも2段階大きいサイズを大きめサイズとする。推奨サイズ検索部140は、サイズマスタ112に登録されたサイズ順により、サイズの大小関係を把握する。推奨サイズ検索部140は、該当のユーザに対して提示した商品の推奨サイズを、マスタ記憶部110に記憶されたレコメンドテーブル115に記録する。推奨サイズ検索部140は、ジャストサイズ、ゆったりサイズ及び大きめサイズのサイズIDをブラウザ120に通知する。ブラウザ120は、通知されたサイズIDに応じて、サイズレコメンド画面360を生成し、ディスプレイ105aに表示させる。ブラウザ120は、当該サイズIDに応じた推奨サイズを注文情報登録画面370に表示させることもできる。そして、推奨サイズ検索部140は、処理を終了する。
(S35)推奨サイズ検索部140は、レコメンド優先度マスタ114を参照して、該当の商品に対して次の優先度があるか否かを判定する。次の優先度がある場合、処理をステップS32に進める。次の優先度がない場合、処理をステップS36に進める。
(S36)推奨サイズ検索部140は、サイズマスタ112を参照して、該当の商品に対して別寸(例えば、サイズ名“P”のサイズ)があるか否かを判定する。別寸がある場合、処理をステップS37に進める。別寸がない場合、処理をステップS38に進める。
(S37)推奨サイズ検索部140は、該当の商品について別寸がある旨をブラウザ120に通知する。ブラウザ120は、該当の商品について別寸がある旨のメッセージ(別寸ありメッセージ)をディスプレイ105aに表示させる。ブラウザ120は、別寸ありメッセージに、該当の商品を販売する店舗への連絡先などを含めてもよい。また、サイズ推定部130によるサイズ推定の結果を、別寸による衣類の制作のために用いてもよい(例えば、ブラウザ120により別寸による注文用フォームを表示し、注文用フォームにサイズ推定結果を入力するなど)。そして、推奨サイズ検索部140は、処理を終了する。
(S38)推奨サイズ検索部140は、該当の商品について対象の人物に適合するサイズがない旨をブラウザ120に通知する。ブラウザ120は該当の商品についてユーザに適合するサイズがない旨のメッセージ(サイズなしメッセージ)をディスプレイ105aに表示させる。そして、推奨サイズ検索部140は、処理を終了する。
このように、採寸対象の特定の部位は、複数の部位を含み、複数の部位のそれぞれのサイズに応じて、1又は複数の推奨サイズが提示される。また、複数の部位は、優先度が設定され、複数の部位のそれぞれのサイズと優先度とに応じて、1又は複数の推奨サイズが提示される。更に、マスタ記憶部110に記憶された採寸パターンマスタ113において、各サイズに対応する身体のサイズは、幅を有する身体のサイズである。そして、算出した身体のサイズが幅を有する身体のサイズのいずれに含まれるかに応じて、推奨サイズが出力される。
なお、ステップS32において、推奨サイズ検索部140は、商品マスタ111の設定を用いずに、レコメンド優先度マスタ114のみを用いて、レコメンド利用箇所の組を選択してもよい(この場合、ステップS31をスキップしてよい)。
また、ステップS34において、ブラウザ120は、推奨サイズ検索部140により検索されたサイズIDをサーバ200に送信することで、推奨サイズ(例えば、ジャストサイズ)が予め選択された状態の注文情報登録画面370の表示情報をサーバ200から取得してもよい。この場合、ブラウザ120は、当該表示情報を用いて、推奨サイズが予め選択された状態で、注文情報登録画面370を表示させることができる。
また、ステップS34において、推奨サイズ検索部140は、ゆったりサイズ及び大きめサイズだけでなく、ジャストサイズよりも小さめのサイズを推奨サイズとしてユーザに提示してもよい。例えば、推奨サイズ検索部140は、ジャストサイズよりも1段階小さいサイズと、ゆったりサイズ(ジャストサイズよりも1段階大きいサイズ)とを推奨サイズとすることも考えられる。あるいは、推奨サイズ検索部140は、ジャストサイズとジャストサイズよりも小さいサイズとを推奨サイズとして、ジャストサイズよりも大きいサイズを推奨サイズとしないことも考えられる。
更に、推奨サイズ検索部140は、レコメンドテーブル115に記録した内容により、推奨サイズ検索の処理を省略することもできる。例えば、過去のあるユーザに対して提示したある商品の推奨サイズが、レコメンドテーブル115に登録されていれば、推奨サイズ検索部140は、当該登録内容を読み出して、ブラウザ120に通知し、推奨サイズ検索の一連の処理を省略してもよい。
ここで、前述のように、レコメンド優先度マスタ114には、商品単位の他、商品種別(衣類の種類)単位及びブランド単位に、レコメンド優先度が登録され得る。推奨サイズ検索部140は、商品種別単位やブランド単位にレコメンド優先度が登録されている場合にも、上記の手順と同様に、レコメンド利用箇所を取得して、推奨サイズを提示することができる。
ところで、サイズ推定部130は、ユーザテーブル116の記録内容に応じて、図25で例示した商品選択支援の手順を簡略化できることもある。そこで、商品選択支援の他の例を説明する。
図28は、商品選択支援の他の例を示すフローチャートである。以下、図28に示す処理をステップ番号に沿って説明する。以下に示す処理は、図24のステップS5に相当する。ここで、図28の手順では、ステップS13の後に、ステップS13a,S13bを実行し、ステップS13bの分岐に応じて、ステップS14又はステップS13cを実行する点が図25の手順と異なる。そこで、以下では、ステップS13a,S13b,S13cを主に説明し、他の手順の説明を省略する。
(S13a)サイズ推定部130は、マスタ記憶部110に記憶されたユーザテーブル116を参照して、該当のユーザについて、ステップS12で取得した各採寸位置のサイズを全て取得済であるか否かを判定する。全て取得済の場合、処理をステップS20に進める。全て取得済でない場合、処理をステップS13bに進める。
(S13b)サイズ推定部130は、ユーザテーブル116に登録された既存の画像でサイズ推定を行うか否かを判定する。既存の画像でサイズ推定を行う場合、サイズ推定部130は、処理をステップS13cに進める。既存の画像でサイズ推定を行わない場合、サイズ推定部130は、処理をステップS14に進める。例えば、サイズ推定部130は、新たな撮像画像を取得するか否かのユーザによる選択を許容し、ユーザによる選択に応じて、当該判定を行ってもよい。
(S13c)サイズ推定部130は、ユーザテーブル116に登録された正面の人物画像を含む撮像画像に対して、人型画像を重ね合わせた画像をディスプレイ105aに表示させる。そして、サイズ推定部130は、人型画像を既存の人物画像へ合わせ込むユーザの操作入力を受け付ける。例えば、サイズ推定部130は、図14(B)や図15(B)で例示したケースとは逆に、ユーザの操作入力に応じて人型画像の方を拡大又は縮小して、人物画像の輪郭に合わせ込めるようにしてもよい。そして、サイズ推定部130は、処理をステップS18に進める。
こうして、端末装置100は、特定のユーザアカウントに対応する商品の選択を受け付ける。端末装置100は、ユーザテーブル116において特定のユーザアカウントに対応づけられた身体情報又は画像情報と、商品に対応づけられたサイズ情報とに基づいて、身体情報又は画像情報に対応する商品の推奨サイズを特定する。そして、端末装置100は、特定した推奨サイズを、選択された商品の取引画面に表示する。
このように、サイズ推定部130は、ユーザテーブル116に各採寸位置のサイズが登録済の場合、矢印オブジェクトによる各部位の長さ/位置の調整量の取得を省略してもよい。また、サイズ推定部130は、ユーザアカウントに対応づけて、ユーザテーブル116に撮像画像のパスが登録済の場合、カメラ104による撮像を省略し、ユーザテーブル116に登録済の画像を、サイズ推定に利用してもよい。更に、この場合、サイズ推定部130は、ユーザテーブル116に推定したサイズが未設定である部位に限定して、サイズ推定を行ってもよい。これにより、サイズ推定の処理を一層効率化できる。
なお、ステップS13では、サイズ推定部130は、該当のユーザアカウントに対し、ユーザテーブル116に登録済の身長や性別を取得してもよい。また、ステップS13の後において、該当のユーザに対し、複数の人物に対する撮像画像がユーザテーブル116に登録されている場合に、サイズ推定部130は、いずれの人物の撮像画像を用いて採寸を行うかのユーザによる選択を許容してもよい。更に、サイズ推定部130は、端末装置100などに保存された任意の撮像画像のユーザによる選択を受け付けて、当該撮像画像によりサイズ推定を行ってもよい。
図29は、端末装置の処理の流れの例を示す図である。図29では、以上で説明した端末装置100による処理の流れを例示している。まず、端末装置100は、カメラ104により撮像した撮像画像により、選択された商品に応じた部位のサイズ推定を行う(ステップST1)。
具体的には、端末装置100は、撮像画像の採寸対象の部位に対応する位置に矢印オブジェクトを表示し、ユーザによる矢印オブジェクトの長さや位置の調整を受け付ける。そして、端末装置100は、矢印オブジェクトに対する長さや位置の調整量に応じて、該当の部位のサイズを推定する。これにより、各部位のサイズの推定の精度を高められる。
このとき、採寸候補となり得る全ての部位について、採寸を行うことも考えられる。しかし、商品によっては一部の部位の採寸でよい場合もある。例えば、上半身の衣類であれば、下半身の部位のサイズとは無関係にサイズが用意されていることが多い。このため、端末装置100は、衣類に応じた位置に絞って、矢印オブジェクトを表示させ、ユーザの調整を受け付けることで、該当の衣類のサイズ選択に利用されない部位の採寸を省け、採寸の処理を効率化できる。例えば、採寸の所要時間を短縮できる。また、全ての部位の採寸を行うよりもユーザによる採寸の作業を省力化できる。
次に、端末装置100は、推定したサイズに対し、選択された商品の推奨サイズの提示を行う(ステップST2)。このとき、端末装置100は、選択された商品に対して採寸した全ての部位のサイズに合う商品サイズがなくても、一部の部位のサイズに合う商品サイズがあれば、当該商品サイズを推奨サイズとしてユーザに提示する。いずれの部位の組み合わせを優先して推奨サイズを検索するかは、商品毎(衣類毎)、及び/又は、商品種別毎(衣類の種類毎)、及び/又は、商品(衣類)のブランド毎に設定される。端末装置100は、ジャストサイズだけでなく、ゆったりサイズ、大きめサイズあるいは小さめのサイズを、推奨サイズとして提示することができる。また、端末装置100は、推奨サイズをユーザに提示して、ユーザによるサイズ選択を促す際に、商品の取引画面に含まれるサイズ選択欄において推奨サイズ(例えば、ジャストサイズ)を予め選択した状態としてもよい。こうして、ユーザに対し、商品の適切なサイズを提供でき、ユーザの商品選択を適切に支援できる。
そして、端末装置100は、推奨サイズに応じた商品の注文を受け付ける(ステップST3)。ユーザは、端末装置100に表示された推奨サイズを確認しながら、取引画面において所望のサイズを選択し、注文することができる。ユーザによる適切なサイズの選択を支援することで、誤ったサイズが選択される可能性を低減でき、返品の頻度の低減を図ることもできる。
なお、以上の説明では、ECサイトで扱われる商品として、主に人物により着用される衣類(装着物)を例示した。ただし、ECサイトで扱われる商品は、ペットなどの動物により着用される衣類(装着物)でもよい。また、対象は、無生物(人形など)でもよい。次に、動物を対象とする例を説明する。
図30は、動物を対象としたサイズ推定の流れの例を示す図である。端末装置100は、動物に着用させる衣類のユーザによる選択を受け付けると、サイズ入力画面を表示する(ステップST11)。動物を対象とする場合、人物の身長に相当する長さとして、例えば、地面から動物の頭頂までの長さや、動物の体長などが考えられる。図30では、地面から頭頂までの長さをユーザに入力させる例を示している。また、動物の身体において採寸対象とする各部位としては、例えば、胴の長さ、首周りの長さ、前足の長さなどが考えられる。この場合も、端末装置100は、選択された衣類に応じて、採寸対象の部位を選択する。
端末装置100は、対象の動物の正面の動物画像を含む撮像画像、及び、対象の動物の横向き(側面)の動物画像を含む撮像画像を取得する(ステップST12)。この場合、端末装置100は、動物の形に合った枠(動物型画像)を撮影補助画面に含めて表示する。図30では、動物として犬を想定し、犬型画像を撮影補助画面に含める例(横向きの場合)を示している。また、撮影補助画面は、人物の撮影を補助する場合と同様に、犬の頭頂を合わせる上辺及び犬の足先(足の地面の接する面)を合わせる下辺を含む。ユーザは、端末装置100により表示されている撮像画像を確認しながら、犬型画像に、犬画像を合わせ、撮影ボタンをタッチ操作する。端末装置100は、撮影ボタンに対するタッチ操作に応じて、現在の犬画像を含む撮像画像を取得する。
端末装置100は、動物における各部位のサイズ調整(矢印オブジェクトの長さ/位置の調整)を受け付ける(ステップST13)。例えば、上記の犬の例の場合、調整を受け付ける部位は、胴の長さ、首周りの長さ、及び、前足の長さである。このため、端末装置100は、撮像画像における、犬型画像の胴、首、及び、前足に対応する位置を順次拡大表示して、矢印オブジェクトによるユーザの調整を受け付ける。図30では、前足のサイズ調整を受け付ける例を示している。なお、端末装置100は、首について、正面及び側面のそれぞれに対し、該当位置を拡大表示する(図19(B)で例示した方法により首周りのサイズを推定するため)。
端末装置100は、各部位のサイズを推定し、サイズの推定結果をユーザに提示する(ステップST14)。例えば、端末装置100は、図19で例示した方法により、胴の長さ、首周りの長さ及び前足の長さを算出し、サイズ入力画面に反映させる。その後は、端末装置100は、人物の場合と同様にして、対象の動物に適したサイズの衣類を検索し、ユーザに提示する。
こうして、端末装置100は、動物に対する衣類のユーザによる選択を支援することもできる。このとき、動物の各部位のサイズの適切な把握を支援できる。また、対象の動物に対して適切な衣類のサイズの選択を支援できる。
なお、第1の実施の形態の情報処理は、演算部1bにプログラムを実行させることで実現できる。また、第2の実施の形態の情報処理は、プロセッサ101にプログラムを実行させることで実現できる。プログラムは、コンピュータ読み取り可能な記録媒体12,23に記録できる。
例えば、プログラムを記録した記録媒体12,23を配布することで、プログラムを流通させることができる。また、プログラムを他のコンピュータ(例えば、サーバ200)に格納しておき、ネットワーク経由でプログラムを配布してもよい。コンピュータは、例えば、記録媒体12,23に記録されたプログラム又は他のコンピュータから受信したプログラムを、RAM102やHDD103などの記憶装置に格納し(インストールし)、当該記憶装置からプログラムを読み込んで実行してもよい。