特許第6780117号(P6780117)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ アマゾン テクノロジーズ インコーポレイテッドの特許一覧

特許6780117画像のインテリジェント自動クロッピング
<>
  • 特許6780117-画像のインテリジェント自動クロッピング 図000002
  • 特許6780117-画像のインテリジェント自動クロッピング 図000003
  • 特許6780117-画像のインテリジェント自動クロッピング 図000004
  • 特許6780117-画像のインテリジェント自動クロッピング 図000005
  • 特許6780117-画像のインテリジェント自動クロッピング 図000006
  • 特許6780117-画像のインテリジェント自動クロッピング 図000007
  • 特許6780117-画像のインテリジェント自動クロッピング 図000008
  • 特許6780117-画像のインテリジェント自動クロッピング 図000009
  • 特許6780117-画像のインテリジェント自動クロッピング 図000010
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6780117
(24)【登録日】2020年10月16日
(45)【発行日】2020年11月4日
(54)【発明の名称】画像のインテリジェント自動クロッピング
(51)【国際特許分類】
   G06T 7/194 20170101AFI20201026BHJP
【FI】
   G06T7/194
【請求項の数】14
【全頁数】25
(21)【出願番号】特願2019-531642(P2019-531642)
(86)(22)【出願日】2017年12月18日
(65)【公表番号】特表2020-502662(P2020-502662A)
(43)【公表日】2020年1月23日
(86)【国際出願番号】US2017067110
(87)【国際公開番号】WO2018118813
(87)【国際公開日】20180628
【審査請求日】2019年7月31日
(31)【優先権主張番号】15/385,249
(32)【優先日】2016年12月20日
(33)【優先権主張国】US
【早期審査対象出願】
(73)【特許権者】
【識別番号】506329306
【氏名又は名称】アマゾン テクノロジーズ インコーポレイテッド
(74)【代理人】
【識別番号】100137969
【弁理士】
【氏名又は名称】岡部 憲昭
(74)【代理人】
【識別番号】100104824
【弁理士】
【氏名又は名称】穐場 仁
(74)【代理人】
【識別番号】100121463
【弁理士】
【氏名又は名称】矢口 哲也
(72)【発明者】
【氏名】アグラワル,アミット クマール
(72)【発明者】
【氏名】デヴィッドソン,アレクサンダー エイドリアン ヒュー
(72)【発明者】
【氏名】ラム,プラカシュ
【審査官】 山田 辰美
(56)【参考文献】
【文献】 特開平11−261888(JP,A)
【文献】 米国特許出願公開第2013/0069980(US,A1)
【文献】 国際公開第2012/015730(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00−7/90
(57)【特許請求の範囲】
【請求項1】
コンピュータ実施方法であって、
画像取込装置によって取り込まれた画像内のユーザのマスク画像を含む第1の画像マスク、および前記画像の前景内にあるものとして前記画像内の領域の第1のサブセットを識別する第1のメタデータを、コンピュータシステムによって前記画像取込装置から受信するステップと、
前記画像取込装置によって取り込まれた前記画像内の前記ユーザに関連するフロア領域の表現を含む第2の画像マスクであって、前記ユーザに関連する前記フロア領域は、前記画像内の前記ユーザとフロアが交差する領域を含む、第2の画像マスク、および前記画像の前記前景として前記画像内の領域の第2のサブセットを識別する第2のメタデータを、前記コンピュータシステムによって前記画像取込装置から受信するステップと、
前記コンピュータシステムによって前記画像取込装置から前記ユーザのカラー画像を受信するステップと、
前記第1の画像マスク、前記第2の画像マスク、前記第1のメタデータ、および前記第2のメタデータに少なくとも部分的に基づき、前記コンピュータシステムによって、前記ユーザの前記カラー画像から前記ユーザの表現および前記ユーザに関連する前記フロア領域を抽出するステップと、
前記第1の画像マスクおよび前記第2の画像マスクに少なくとも部分的に基づいて、前記コンピュータシステムによって、前記ユーザの前記抽出された表現および前記ユーザに関連する前記フロア領域に関して前記ユーザの前記カラー画像の第1の領域をクロップし、それによって前記カラー画像の第2の領域を生成するステップであって、前記第1の領域は前記ユーザの前記抽出された表現および前記ユーザに関連する前記フロア領域を含み、前記第2の領域は前記第1の領域としてクロップされた前記カラー画像の領域である、ステップと、
前記第1のメタデータおよび前記第2のメタデータに少なくとも部分的に基づき、前記コンピュータシステムによって、前記クロップされたカラー画像の第3の領域を隠し、それによって、前記ユーザの前記抽出された表現と前記ユーザに関連する前記フロア領域との結合を含む前記ユーザの修正カラー画像を生成するステップであって、前記第3の領域は前記カラー画像の前記第2の領域以外の領域を含む、ステップと
を含む、コンピュータ実施方法。
【請求項2】
前記ユーザの複数のクロップされたカラー画像を維持することを更に含む、請求項1に記載のコンピュータ実施方法。
【請求項3】
商品認識アルゴリズムおよび商品カタログに少なくとも部分的に基づいて、前記ユーザの前記画像に含まれる複数の商品を識別することを更に含む、請求項1に記載のコンピュータ実施方法。
【請求項4】
前記画像に含まれる前記識別された複数の商品を提供するための1つ以上の商品リストウェブページを生成することを更に含む、請求項3に記載のコンピュータ実施方法。
【請求項5】
前記ユーザの前記カラー画像を受信することは、前記画像内の領域の第3のサブセットを前記画像の背景として識別する第3のメタデータを受信することを含む、請求項1に記載のコンピュータ実施方法。
【請求項6】
前記第1のメタデータ、前記第2のメタデータ、および前記第3のメタデータは、前記画像取込装置によって取り込まれた前記画像内の各画素についてそれぞれの深度測定値を更に識別する、請求項5に記載のコンピュータ実施方法。
【請求項7】
前記画像取込装置は、前記ユーザの三次元(3D)画像を取り込むための深度センサを備え、前記ユーザの前記カラー画像を使用して、前記ユーザの前記3D画像を前記ユーザの前記マスク画像に変換するように更に構成された、請求項1に記載のコンピュータ実施方法。
【請求項8】
コンピュータシステムであって、
コンピュータ実行可能命令を記憶するメモリと、
オブジェクトの三次元(3D)画像を取り込むように構成された第1のセンサと、
前記オブジェクトのカラー画像を取り込むように構成された第2のセンサと、
少なくとも1つのプロセッサであって、前記メモリにアクセスし、前記コンピュータ実行可能命令を実行して、全体として、
前記第1のセンサによって取り込まれた画像の3D画像に少なくとも部分的に基づき、前記第1のセンサによって取り込まれた前記画像内のユーザのマスク画像と、前記画像内の領域の第1のサブセットを前記画像の前景内にあるものとして識別する第1のメタデータとを含む第1の画像マスクを取得し、
前記第1のセンサによって取り込まれた前記画像内の前記ユーザに関連するフロア領域の表現と、前記画像内の領域の第2のサブセットを前記画像の前記前景として識別する第2のメタデータとを含む第2の画像マスクを取得し、前記ユーザに関連する前記フロア領域は、前記画像内の前記ユーザとフロアが交差する領域を含み、
前記第2のセンサから前記ユーザの前記カラー画像を取得し、
前記第1の画像マスク、前記第2の画像マスク、前記第1のメタデータ、および前記第2のメタデータに少なくとも部分的に基づき、前記ユーザの前記カラー画像から前記ユーザの表現と前記ユーザに関連する前記フロア領域とを抽出し、
前記第1の画像マスクおよび前記第2の画像マスクに少なくとも部分的に基づき、前記ユーザの前記抽出された表現および前記ユーザに関連する前記フロア領域に関して前記ユーザの前記カラー画像の第1の領域を除去し、それによって前記カラー画像の第2の領域が生成され、前記第1の領域は前記カラー画像の前記第2の領域以外の領域を含み、前記第2の領域は前記ユーザの前記抽出された表現および前記ユーザに関連する前記フロア領域を含む
ように構成された前記少なくとも1つのプロセッサと
を備える、コンピュータシステム。
【請求項9】
前記少なくとも1つのプロセッサは、前記ユーザの前記抽出された表現と前記カラー画像の前記第2の領域内の前記ユーザに関連する前記フロア領域との結合を含む、前記ユーザの修正画像を表示するように更に構成される、請求項8に記載のコンピュータシステム。
【請求項10】
前記少なくとも1つのプロセッサは、前記第1のメタデータおよび前記第2のメタデータに少なくとも部分的に基づいて、前記カラー画像の第3の領域を隠すように更に構成される、請求項8に記載のコンピュータシステム。
【請求項11】
前記第1の画像マスクを取得することは、前記ユーザの前記3D画像を前記ユーザの2D画像に変換することを含む、請求項8に記載のコンピュータシステム。
【請求項12】
前記少なくとも1つのプロセッサは、商品認識アルゴリズムに少なくとも部分的に基づいて、前記画像内の1つ以上のオブジェクトを識別するように更に構成される、請求項8に記載のコンピュータシステム。
【請求項13】
前記少なくとも1つのプロセッサは、前記識別された1つ以上のオブジェクトを前記画像内の領域の前記第1のサブセットから除去するための命令を前記ユーザに送信するように更に構成される、請求項12に記載のコンピュータシステム。
【請求項14】
前記少なくとも1つのプロセッサは、前記識別された1つ以上のオブジェクトが前記画像内の領域の前記第1のサブセットから除去されたという指示に応えて、前記ユーザの別の画像を取り込むための命令を前記ユーザに送信するように更に構成される、請求項12に記載のコンピュータシステム。
【発明の詳細な説明】
【背景技術】
【0001】
[0001]人々は、ネットワーク対応デバイスにより、以前は多数の別々のデバイスによってのみ実行されていた様々な機能を実行することが可能になる。例えば、ネットワーク対応デバイスを使用すると、ユーザは、音楽や映画などのメディアをストリーミングしたり、商品やサービスをオンラインで購入したり、ビデオゲームをしたり、以前はラジオ、テレビ、個人ショッピング、またはビデオゲーム機のそれぞれを使用する必要があった活動をすることができる。今日、ユーザは、技術的により進歩したデバイスを活用して、ソーシャルメディアサイトでより積極的になることによって、より大きなソーシャルオンラインプレゼンスを有することなど、多くの目標を達成することができる。例えば、ユーザは、自分たちがいるところ、自分たちがしていること、または自身の画像に関する情報を投稿または提供することができる。ユーザがより多くの情報を共有するにつれて、ユーザは、自分たちがどのように見えるか、または自分たちが着ているものについて、より自意識を強くする可能性がある。しかしながら、今日の慌ただしい世界では、ある衣服がどのように見えたか、特定の衣服がいつ着られたか、および特定の外観やスタイルを再現したい場合に特定の衣服を構成するのは何かを、ユーザが正確に判断することは困難である。現在の技術は、ユーザが特定の外観またはスタイルを再現するのを可能にする能力の点で制限されており、このことはユーザの情報共有およびユーザの社会的活動に悪影響を及ぼす可能性がある。
【0002】
[0002]本開示による様々な実施形態を、図面を参照して説明する。
【図面の簡単な説明】
【0003】
図1】少なくとも1つの実施形態による、自動クロップサービス機能のための例示的なワークフローを示す。
図2】少なくとも1つの実施形態による、画像取込装置によって中央を外れて取り込まれたマスク画像およびカラー画像の例を示す。
図3】少なくとも1つの実施形態による、より中央に配置されかつユーザにとって有用な画像を生成するために、本明細書に記載の自動クロップ機能によって自動クロップされたマスク画像およびカラー画像の例を示す。
図4】従来の画像処理アプリケーションによって実行される中央クロップ操作と、少なくとも1つの実施形態による本明細書に記載の自動クロップ機能によって実施される自動クロップ操作の例を示す。
図5】少なくとも1つの実施形態による、前景オブジェクトおよび背景オブジェクトを識別する例示的なマスクを示す。
図6】少なくとも1つの実施形態による、自動クロップサービス機能のための例示的なフローチャートを示す。
図7】少なくとも1つの実施形態による、自動クロップサービス機能のための例示的なフローチャートを示す。
図8】少なくとも1つの実施形態による、少なくともユーザ装置、画像取込装置、および1つ以上のサービスプロバイダコンピュータを含む自動クロップサービス機能を実施するための例示的アーキテクチャを示す。
図9】様々な実施形態を実施することができる環境を示す。
【発明を実施するための形態】
【0004】
[0012]以下の説明では、様々な実施形態について説明する。説明の目的上、実施形態の十分な理解を得るために特定の構成および詳細について述べる。しかしながら、当業者には明らかであるように、実施形態はこの特定の詳細を伴わずに実施してもよい。更に、説明している実施形態が不明瞭にならないように、よく知られた特徴は省略または単純化する場合がある。
【0005】
[0013]本明細書に記載の技術は、自動クロップ機能を提供しており、当該自動クロップ機能は、画像取込装置によって取り込まれたユーザ(または任意の商品、被写体など)のマスクおよびカラー画像を利用して、画像内のユーザの周囲の無関係な領域を知的かつ正確にクロップ(すなわち、除去)し、画像に再び焦点を合わせるので、修正画像または結果として得られる画像におけるユーザの表現は、前景内にあり、中央に配置され、かつ背景などの画像内の他のオブジェクトよりも明瞭さを増して提示される。いくつかの例では、「自動クロッピング」は、画像のコンテンツをサイズ変更するかまたは再度フィットさせるコンピュータ実施操作として説明することができる。本明細書で使用されるとき、「クロップ」または「クロッピング」は、画像の1つ以上の領域を除去することを含む。実施形態では、自動クロッピングは、画像の無関係な領域をクロップまたは除去することを含み、画像自体の中のユーザの表現にフィットするように構図をよりうまくフィットさせる、またはサイズ変更することができ、画像のアスペクト比を調整することを含んでもよい。少なくとも1つの実施形態によると、画像取込装置から情報を受信し、画像を正確に自動クロップし、画像の構図内に適切にサイズ設定し、かつ中央に配置されたユーザ画像を提示する、ユーザのコンピュータデバイス(すなわち、携帯電話、ラップトップ、タブレットコンピュータ、ビデオゲームデバイスなど)に自動クロップ機能をネイティブアプリケーションによって実装してもよい。いくつかの実施形態では、コンピュータデバイスを画像取込装置と関連付けてもよいし、本明細書に記載の自動クロップ機能を利用するように構成してもよく、この場合、画像を自動クロップするために必要な関連情報は別個の画像取込装置によって受信されるのではなく、得られることになる。例えば、自動クロップ機能を実装するアプリケーションを利用するように構成されたユーザ装置は、ユーザのマスク画像およびカラー画像を取り込み取得するために、深度センサおよびカラーセンサを利用するように構成することもできる。
【0006】
[0014]非限定的な例では、ユーザは、自身を画像取込装置の前に配置し、自身および自身が現在着ている衣服の画像を取り込むことができる。本明細書に記載の通り、画像取込装置は、深度センサを用いてユーザの深度画像を取り込み、カラーセンサを用いてユーザのカラー画像を取り込み、画像の一部を前景、背景、足またはフロアの領域として識別するメタデータを生成することができる。無線ネットワークなどの利用可能なネットワークを介して、マスク、カラー画像、およびメタデータをユーザの携帯電話に送信することができる。携帯電話のアプリケーションは、受信した情報を解釈し、画像のある特定の部分を除去し、画像の除去されていない部分の構図内で、ユーザの表現およびフロア領域または足領域を自動クロップまたはフィットさせることができる。次いで、携帯電話のユーザインタフェースを介して、結果として得られたまたは修正画像をユーザに表示してもよい。本明細書に記載の通り、ユーザはユーザインタフェースと対話し、様々な衣服を着て自身の自動クロップ画像を複数表示し、衣服内に含まれる商品を注文もしくは再注文する、または比較する目的で、画像の一部を結合して新しい衣服を生成してもよい。
【0007】
[0015]実施形態では、画像取込装置は、少なくとも深度情報またはユーザの深度画像を取り込むように構成された深度センサと、ユーザのカラー画像を取り込むように構成されたカラーセンサとを含めてもよい。画像取込装置の一例としては、ユーザの三次元(3D)画像を取り込むための深度センサ、ユーザのカラー画像を取り込むための赤、緑、青(RGB)カメラを利用するように構成されたIntel(登録商標)SR300センサを含めてもよい。画像取込装置は、1つ以上のソフトウェアアプリケーションまたはソフトウェアアルゴリズムによって実施されるアルゴリズムを利用するように構成してもよく、深度画像内のユーザの3D画像を二次元(2D)マスクまたはマスク画像に変換または転換し、各画素の相対的な深度、前景または背景の特定、および画像取込装置によって取り込まれた画像の各画素の色を識別するメタデータを生成する。少なくとも1つの実施形態によると、画像取込装置は、基準としてカラー画像を使用して、またカラー画像からユーザの表現を抽出するために背景オブジェクトに対して前景オブジェクトの検出を使用して、3D深度画像を2Dマスク画像に変換することができる。画像取込装置は、2Dマスク画像、カラー画像、およびメタデータをユーザのコンピュータデバイスに送信するように構成してもよいし、ネイティブアプリケーションが、2Dマスク画像を利用して本明細書に記載の自動クロッピングおよびクロッピング機能を実行してもよい。いくつかの実施形態では、画像取込装置および関連するソフトウェアアプリケーションまたはアルゴリズムは、カラー画像を使用してマスクを生成することができる。
【0008】
[0016]少なくとも1つの実施形態によると、画像取込装置は、メタデータ内の画像のある特定の部分をフロア領域またはユーザの足領域としてマークすることによって、ユーザの足領域を識別または近似するように構成されてもよい。深度センサは、しばしば、ユーザの足と部屋のフロアが交差する場所など、交差する平面の近くの前景および背景のオブジェクトを識別するのに問題がある。実施形態では、画像取込装置は、メタデータに含めることができる交差する平面(例えば、「ユーザの足領域」)内にある画素に固有値を割り当てるように構成される。自動クロップ機能を実施するアプリケーションは、メタデータを解釈し、画像内のユーザの表現の他の部分(すなわち、ユーザの頭と体の領域)を画像の足またはフロアの領域と知的に結合し、修正画像内にユーザの正確な前景表現を作成することができる。本明細書に記載された自動クロップ機能サービスは、修正されかつ自動クロップされたユーザ画像を、関連するユーザ装置を介して、ユーザに提示または表示することを含んでいてもよい。
【0009】
[0017]画像取込装置から受信したメタデータによって識別されるように背景としてマークが付けられたオブジェクトまたは画素に対して、ぼかし操作または他の適切な隠し操作を実行するように、ユーザ装置のアプリケーションを構成してもよい。したがって、ユーザには、知的かつ正確に自動クロップされた自身の画像が提示され、当該画像は、より鮮明で、画像の構図に正確にフィットまたはサイズ設定され、また背景オブジェクトはぼかされたり除去されたりしている。ユーザに提示される修正画像を利用して、以前に取り込まれた他の画像および自動クロップされた画像を比較することによって、ユーザが以前に着た衣服を比較してもよい。実施形態では、アプリケーションによって実施される自動クロップ機能は、衣服を比較する際に使用するために、ユーザの取込画像および自動クロップ画像の履歴カタログを維持し、ユーザのワードローブのカタログとして機能し、画像内のユーザの一部を除去することおよびそれを他の自動クロップされた画像の他の部分と置き換えることによって、衣服をうまく組み合わせることができる。例えば、ユーザは、ユーザインタフェースと対話して、自分の体の脚部領域を除去し、取り込んで記憶されている別の画像の脚部領域とそれを置き換え、ある特定のシャツまたはブラウスを身に付けた状態で、パンツまたはスカートがどのように違って見えるかを比較してもよい。少なくとも1つの実施形態によると、自動クロップ機能を実施するアプリケーションは、商品認識アルゴリズムを用いてユーザの画像に含まれる1つ以上の商品、例えば、ユーザが着ているシャツ、ブラウス、ズボン、スカート、帽子、靴などを識別するように構成されてもよい。
【0010】
[0018]ネイティブアプリケーションは、商品認識アルゴリズムと共に電子市場によって維持されている商品カタログを活用してもよく、画像内の商品を識別して選択肢を提示するか、またはユーザが電子市場から前記商品を購入できることが可能になる。いくつかの実施形態では、自動クロップ機能サービスは、オンライン市場すなわち電子市場を介して商品を提供するために、画像内の商品を検出するとすぐに商品ウェブページリストを自動的に生成してもよい。適切な商品認識アルゴリズムは、画像に含まれる商品に関連するバーコードまたはラベルを分析することを含んでもよい。画像内に含まれるバーコードまたはラベルは、バーコードまたはラベルデータベースと照合し、画像内の商品を識別してもよい。いくつかの実施形態では、画像に含まれる各商品の画像特性を決定するために、アルゴリズムを介して画像を分析してもよい。光学式文字認識を利用して、画像内の商品に関連するラベルまたはタグを処理し、商品カタログ内に維持されている他の商品のラベルまたはタグと照合することができる。実施形態では、画像処理アルゴリズムは、写真を複数の部分に断片化し、各部分を個別に処理して画像に含まれる商品を識別することができる。いくつかの実施形態では、ユーザは、アルゴリズムが画像に含まれる商品を識別できるようにするために、画像に含まれる領域または商品を個々に識別またはタグ付けしてもよい。
【0011】
[0019]図1は、少なくとも1つの実施形態による、自動クロップサービス機能のための例示的なワークフローを示す。図1のワークフロー100は、マスク画像106を生成するために利用できるユーザの深度画像と、ユーザ110のカラー画像108とを、(破線で示すように)取り込む104画像取込装置102を含む。ユーザは、ユーザ装置112と対話して、画像取込装置102による画像取込プロセスを開始してもよく、または画像取込装置102と直接対話してユーザ110の画像の取込を開始してもよい。少なくとも1つの実施形態によると、画像取込装置102は深度センサ114とカラーセンサ116を含んでもよい。実施形態では、深度センサ114は、ソフトウェアアプリケーションおよび/または画像取込装置102のアルゴリズムを用いて、マスク画像106を生成するために用いることができるユーザ110の3D深度画像または深度情報を取り込むように構成されてもよい。カラーセンサ116は、ユーザ110のカラー画像またはRGB画像(108)を取り込むように構成されてもよい。実施形態では、画像取込装置は、カラー画像108に含まれる各画素について深度を決定し、カラー画像108の前景内または背景内にある画素を識別し、取り込まれた画像106および108から各画素の深度、前景/背景の判定、および色などを示すメタデータを生成するように構成されてもよい。画像取込装置102は、メタデータによって示されるように、カラー画像108および各画素の深度、ならびに前景オブジェクト対背景オブジェクトの識別を利用して、ユーザ110の3D深度画像または深度情報を2Dマスク画像(106)に変換するように構成されてもよい。
【0012】
[0020]ワークフロー100では、ユーザのカラー画像108、マスク画像106、およびメタデータが、ネットワーク118を介してユーザ装置112に送信される。ユーザ装置112上で動作するように構成されたアプリケーションは、本明細書に記載の自動クロップ機能を実施することができる。いくつかの実施形態では、ユーザのカラー画像108、マスク画像106、およびメタデータは、ネットワーク118を介して、ユーザ装置112上のアプリケーションと同様に処理するために、1つ以上のサービスプロバイダコンピュータ120に送信される。本明細書に記載の通り、ユーザ装置112のアプリケーションは、カラー画像108から、ユーザの表現、ユーザに関連するフロア領域を抽出し、カラー画像108の1つ以上の領域を除去し、抽出されたユーザの表現とフロア領域とを結合し、結果として得られたる画像の構図内でよりうまくフィットさせるために、除去されていない領域内で自動クロップし、サイズ変更し、またはフィットさせ、メタデータに基づいて、前景として示されていない残りの領域(すなわち背景)をぼかすことができる。ワークフロー100は、無関係な領域を除去し、より中央に配置されるようにユーザの表現の構図を変え、122でユーザを正確に表現するように自動クロップされたカラー画像108およびマスク画像106の一例を示す。ユーザ装置112は、ユーザインタフェースを介して、修正画像122をユーザ110に表示してもよい。いくつかの実施形態では、124で、ユーザの自動クロップ画像の収集履歴を維持するために、ネットワーク118を介して、修正画像122を1つ以上のサービスプロバイダコンピュータ120に送信してもよい。
【0013】
[0021]少なくとも1つの実施形態によると、ユーザ110は、ユーザ装置112と対話して、自身の他の複数の自動クロップ画像をスクロールまたはブラウズして、ある特定の衣服を着たときに、ある特定の衣服を着たユーザがどのように見えたかを見ることができ、または画像の一部を切断して別の画像に貼り付けることによって、衣服をうまく組み合わせることができる(例えば、シャツを除去し、別の自動クロップ画像からのシャツと交換するなど)。実施形態では、ネットワーク118を介した通信が不要となるように、ユーザ装置112および画像取込装置102を互いに関連付けてもよいし、または互いのコンポーネントを含めてもよい。少なくとも1つの実施形態によると、サービスプロバイダコンピュータ120またはユーザ装置112は、自動クロップ画像122内のオブジェクトまたは商品を識別し、識別された商品またはオブジェクトを他のユーザに提示するためにユーザ110が購入、再注文、または一覧表示することができるように構成されてもよい。
【0014】
[0022]図2は、少なくとも1つの実施形態による、中央から外れている、画像取込装置によって取り込まれたマスク画像およびカラー画像の例を示す。図2は、画像取込装置(図1の102)によって202で取り込まれたユーザの最初のカラー画像、および画像取込装置によって同時に取り込まれた深度画像または深度情報を用いて生成されたユーザのマスク画像204の例を示す。図2に示されるように、ユーザの取り込まれた最初のカラー画像202は、中央から外れており、不要な背景の領域を含み、ユーザは画像の中央でもなく明確なオブジェクトでもない。図2はまた、ユーザの近似された足領域206を示す。本明細書に記載の通り、マスク画像204は、足やフロアなどの交差する平面の深度画像が取り込まれるときの交差平面に関連する問題を、ユーザの足の周りの領域を近似すること、および当該領域を足領域として示しかつ前景として含めるべき領域を示す近似領域内の画素に特定の値を割り当てることによって補償する。実施形態では、自動クロップ機能を実施するアプリケーションは、マスク画像204を使用して抽出されたユーザの表現と、カラー画像202から抽出されたユーザの近似された足領域206とを、知的かつ正確に結合することができる。この抽出されたユーザの表現と足領域の結合を利用して、最初のカラー画像202を自動クロップして、画像の構図内で画像をよりうまくフィットさせ、サイズ変更し、より中央に配置された有用なユーザ画像を生成することができる。
【0015】
[0023]図3は、少なくとも1つの実施形態による、より中央に配置されており、かつユーザにとって有用な画像を生成するために、本明細書に記載の自動クロップ機能によって自動クロップされたマスク画像およびカラー画像の例を示す。図3は、ユーザの自動クロップ画像302と、マスク画像内でユーザと足領域を自動クロップして結合した画像304とを含む。図1および再度図3に示されるように、ユーザ306の表現は、図2の初期カラー画像202からある特定の領域が除去され、302で、画像の領域の構図内によりうまくフィットするように自動クロップされている。図3はまた、304で、近似された足領域とユーザの表現とを結合したマスク画像を示す。本明細書に記載の通り、ユーザの好みに応じて、自動クロップ画像302の他の部分はぼやけていてもよい。マスク画像304により、画像内のユーザの表現の周りでよりぴったりとフィットさせることができ、したがってより多くの無関係な領域やぼやけた背景詳細を除去できるより正確な自動クロップが可能になり、より鮮明なユーザ画像がユーザ装置を介して提示される。
【0016】
[0024]図4は、従来の画像処理アプリケーションによって実行される中央クロップ操作と、少なくとも1つの実施形態による本明細書に記載の自動クロップ機能によって実施される自動クロップ操作の例を示す。図4は、402で鈍感な中央寄せ操作を実行する従来の自動クロップのような機能の一例を示す。中央クロップ操作が実行されたマスク画像402に示すように、衣服を比較するために、またはユーザである画像の主たる被写体にビューアの目を引き付けるためには役立たたない現実に中心から外れたユーザのビューまたは表現をもたらす、大きな不要領域404が存在している。比較のために、図4の右側のマスク画像406は、本明細書に記載され実行された自動クロップ機能を表す。図4に示すように、マスク画像406では、ユーザ410の表現の両側にある空きスペースまたは不要スペース408が少ない。自動クロップ画像406は、不要なオブジェクトおよび商品を両側から除去すると同時に、ユーザである画像の被写体にビューアの目を引き付けており、その結果、図2の画像202など最初に取り込まれた画像の構図の範囲内で真に中央に配置されたユーザの画像が得られる。実施形態では、マスク画像406は、画像取込装置の深度センサによって取り込まれた深度情報を用いて、画像取込装置によって生成されてもよい。
【0017】
[0025]図5は、少なくとも1つの実施形態による、前景オブジェクトおよび背景オブジェクトを識別する例示的なマスク画像を示す。本明細書で使用されるマスク画像または画像マスクは、画像取込装置の深度センサによって取り込まれた深度情報を用いて画像取込装置によって生成されるマスク、画像取込装置によって同様に取り込まれたカラー画像からユーザの表現を抽出するために用いられるマスクを指すことができる。画像マスクまたはマスク画像は、関連するソフトウェアアプリケーションまたは画像変換アルゴリズムを用いて、画像取込装置によって取り込まれた3D深度画像から変換される2D画像マスクを含んでもよい。図5は、本明細書に記載の通り、画像取込装置によって取り込まれた初期画像(例えば、図2の画像202)に実行された自動クロップ操作を含む。修正画像500は、例えば、ユーザの近似された足領域502、ユーザのマスク画像表現504、画像のぼやけた背景506、および前景オブジェクト508(例えば、図1のユーザ110)など画像の様々な領域を示した画像マスクの一例である。少なくとも1つの実施形態によると、画像取込装置は、ユーザのマスク画像表現504と図1の画像取込装置102との間に1つ以上のオブジェクトを取り込み識別することができる。このような場合、問題となっているオブジェクト/商品を除去してそれら自体の画像を再取り込みする命令を、ユーザ装置112を介して、ユーザに提供してもよい。いくつかの実施形態では、ユーザの一部が隠されている場合、自分自身の画像を再取り込みする命令をユーザに提供してもよい。
【0018】
[0026]図6および図7は、実施形態による、自動クロップ機能のための例示的なフローを示す。これらのプロセスは論理フロー図として示されており、その各操作はハードウェア、コンピュータ命令、またはそれらの組合せで実施することができる一連の操作を表す。コンピュータ命令との関連で、操作は、1つ以上のプロセッサによって実行されるとき、列挙された操作を実行する1つ以上のコンピュータ可読記憶媒体に記憶されたコンピュータ実行可能命令を意味する。一般に、コンピュータ実行可能命令は、特定の機能を実行するかまたは特定のデータタイプを実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。操作の記載順序が限定として解釈されることを意図しておらず、記載された操作のうちの任意の数の操作を、任意の順序でおよび/または並列に組み合わせてプロセスを実施することができる。
【0019】
[0027]更に、いくつかの(some)、任意の(any)、または全ての(all)プロセス(または、本明細書に記載の他の任意のプロセス、あるいはそれらの変形および/または組合せ)は、実行可能命令で構成された1つ以上のコンピュータシステムの制御下で実行することができ、ハードウェアまたはそれらの組合せによって、1つ以上のプロセッサ上で集合的に実行するコード(例えば、実行可能命令、1つ以上のコンピュータプログラムまたは1つ以上のアプリケーション)として実行することができる。上記の通り、コードは、例えば1つ以上のプロセッサによって実行可能な複数の命令を含むコンピュータプログラムの形で、コンピュータ可読記憶媒体に記憶することができる。コンピュータ可読記憶媒体は、非一過性であってもよい。
【0020】
[0028]いくつかの例では、図1および図8に示される少なくとも自動クロップモジュール832を用いる1つ以上のサービスプロバイダコンピュータ(1つ以上のサービスプロバイダコンピュータ120および816)および/またはユーザ装置112および804は、図6および図7のプロセス600および700を実行してもよい。図6において、プロセス600は、602で、画像取込装置から、ユーザ画像の第1の画像マスク、画像、および画像に関するメタデータを受信することを含んでもよい。実施形態において、第1の画像マスクは深度画像マスクの一例であってもよい。少なくとも1つの実施形態によると、メタデータは画像に含まれる1つ以上の部分について複数の固有値を示してもよく、画像取込装置はユーザのマスク画像とユーザのカラー画像を取り込むように構成されてもよい。ユーザのマスク画像は、画像取込装置によって取り込まれた画像の背景に関してユーザの深度およびユーザの前景位置を識別するために、画像取込装置で使用されるユーザの3D表現を含んでもよい。カラー画像はユーザのRGB画像を含んでもよく、第1の画像マスクはマスク画像とカラー画像とを含んでもよい。
【0021】
[0029]プロセス600は、604で、第1の画像マスクおよびメタデータに基づいて、ユーザの表現およびユーザに関連するフロア領域の表現を画像から抽出することを含んでもよい。実施形態では、ユーザの表現は、画像に含まれる複数の部分のうちの一部分の第1のサブセットを含んでもよく、フロア領域の表現は、画像に含まれる複数の部分のうちの一部分の第2のサブセットを含んでもよい。プロセス600は、第1の画像マスクおよびメタデータに基づいて、画像内の抽出されたユーザの表現に関して画像の第1の領域を除去することを含んでもよく、それによって606で画像の第2の領域を生成してもよい。例えば、本明細書に記載の自動クロップ機能を実施するアプリケーションは、画像内の既知のユーザ位置とメタデータによって示される背景オブジェクト領域を識別することとを用いて、画像の1つ以上の領域を除去するように構成されてもよい。
【0022】
[0030]プロセス600は、608で、第1の画像マスクおよびメタデータに基づいて、画像の第2の領域に関して、抽出されたユーザの表現を画像のフロア領域と結合させることを含んでもよい。本明細書に記載の通り、抽出されたユーザの表現と画像のフロア領域とを結合させることは、交差する平面で深度または画像を取り込もうと試みる問題であって、歴史的に深度画像に関連した問題を解決するのを支援することができる。ユーザとフロア領域をよりぴったりフィットさせることは、フロア領域としてマークが付けられた領域を利用してユーザに関連付けられた領域を結合すること、および無関係な領域を除去した後に残った領域の構図内で、ユーザの表現とフロア領域の結合部にフィットさせ自動クロップすることによって実現できる。プロセス600は、610で、抽出されたユーザの表現および画像の第2の領域内に含まれる画像のフロア領域との結合部を含むユーザの修正画像を、ユーザインタフェースを介して表示することによって終了してもよい。いくつかの実施形態では、修正画像の表示は、画像や細部を背景から逸らすことなく、ユーザのより鮮明な画像を生成するように、ユーザではない画像の他の領域(すなわち、背景)をぼかす、または他の方法で隠すことを含む。
【0023】
[0031]プロセス700は、702で、画像取込装置から、画像内のユーザの2D表現および第1のメタデータを含む第1の画像マスクを受信することを含んでもよい。実施形態では、第1のメタデータは、画像の前景内にあるものとして画像内の領域の第1のサブセットを識別してもよい。プロセス700は、704で、画像内のユーザに関連するフロア領域の表現および第2のメタデータを含む第2の画像マスクを、画像取込装置から受信することを含んでもよい。実施形態では、第2のメタデータは、画像内の領域の第2のサブセットを画像の前景として識別してもよい。プロセス700は、706で、画像取込装置から、ユーザのカラー画像を受信することを含んでもよい。実施形態では、第1の画像マスクおよび第2の画像マスクを画像取込装置の深度センサによって取り込んでもよく、ユーザのカラー画像を画像取込装置のカラーセンサによって取り込んでもよい。プロセス700は、708で、第1の画像マスク、第2の画像マスク、第1のメタデータ、および第2のメタデータに基づいて、ユーザのカラー画像からユーザの表現およびユーザに関連するフロア領域を抽出することを含んでもよい。本明細書に記載の通り、抽出プロセスは、画像マスクおよびメタデータを用いて、クロッピングおよび自動クロッピングのために抽出し使用する領域とユーザの表現およびフロア領域の周りの領域とをよりぴったりフィットさせてもよい。
【0024】
[0032]プロセス700は、第1の画像マスクおよび第2の画像マスクに基づいて、抽出されたユーザの表現およびユーザに関連するフロア領域に関してユーザのカラー画像の第1の領域をクロップすることを含み、それによって、710でカラー画像の第2の領域を生成してもよい。少なくとも1つの実施形態によると、自動クロップ機能を実施するように構成されたアプリケーションを、特定のアスペクト比のユーザ画像を提示するには不要な1つ以上の画像領域(例えば、画像の無関係な領域)を除去するように構成してもよい。実施形態では、アプリケーションは、画像内のユーザの表現と画像自体内の問題の領域および閾値との間の距離を計算することによって、無関係な領域を識別してもよい。例えば、ユーザの表現を含む画素からある特定の数の画素だけ離れている領域は無関係と見なされ、ユーザの自動クロップ修正画像から除去またはクロップされてもよい。プロセス700は、712で、第1のメタデータおよび第2のメタデータに基づいて、クロップされたカラー画像の第3の領域を隠すことによって終了してもよい。実施形態では、他の全ての部分(すなわち第3の領域)は隠されているが、抽出されたユーザの表現およびユーザに関連するフロア領域は、生成されたカラー画像の第2の領域の構図内にフィットするように、結合され、フィットされ、またはサイズ変更されてもよい。実施形態では、1つ以上のユーザの部分が存在しないかまたは画像取込装置から遮られている場合、ユーザに画像取込装置間の介在物を除去するか、自身の別の画像を取り込むように命令してもよい。命令は、ユーザ装置のアプリケーションによって送信され、そのアプリケーションによって提示されてもよい。
【0025】
[0033]図8は、少なくとも1つの実施形態による、少なくともユーザ装置、画像取込装置、および1つ以上のサービスプロバイダコンピュータを含む自動クロップサービス機能を実施するための例示的アーキテクチャを示す。アーキテクチャ800では、1人以上のユーザ802(例えば、顧客、ユーザなど)は、ユーザコンピューティング装置804(1)〜(N)(集合的に、ユーザ装置804)を用いて、ブラウザアプリケーション806またはブラウザアプリケーション806を介してアクセス可能なユーザインタフェース(UI)にアクセスし、1つ以上のネットワーク808を介して、マスク画像、カラー画像、メタデータ、その他の適切な情報などの情報を、画像取込装置810との間で受信しまたは通信し、画像取込装置810によって取り込まれたユーザの自動クロップ画像を生成し、ユーザ装置804を介して修正画像をユーザ802に提示してもよい。「ブラウザアプリケーション」806は、コンテンツの提示またはユーザ装置804によって表示される画像との対話を可能にするために、ネイティブソフトウェアアプリケーション用のUIなどのネットワークページまたは他の情報にアクセスして表示することができる、任意のブラウザコントロールまたはユーザ装置804のネイティブアプリケーションとすることができる。ネイティブソフトウェアアプリケーションは、特定のプラットフォーム(オペレーティングシステムなど)または特定のデバイス(特定の種類のモバイルデバイスまたはユーザ装置804など)で使用するために開発されたアプリケーションまたはプログラムを含んでもよい。実施形態では、画像取込装置810は、ユーザ802の深度画像およびカラー画像を取り込むための1つ以上のコンポーネント(例えば、深度センサ、カラーセンサ、カメラ、ビデオレコーダ、ビデオストリーム取込装置など)を含んでもよい。
【0026】
[0034]ユーザ装置804は、少なくとも1つのメモリ812および1つ以上の処理装置またはプロセッサ(複数可)814を含んでもよい。メモリ812は、プロセッサ(複数可)814にロード可能かつ実行可能であるプログラム命令、ならびにこれらのプログラムの実行中に生成されるデータを記憶することができる。ユーザ装置804の構成および種類に応じて、メモリ812は、揮発性(例えば、ランダムアクセスメモリ(RAM))および/または不揮発性(例えば、リードオンリメモリ(ROM)、フラッシュメモリなど)であってもよい。ユーザ装置804はまた、これらに限定されることなく、磁気記憶装置、光ディスク、および/またはテープ記憶装置を含む追加のリムーバブル記憶装置および/または非リムーバブル記憶装置を含んでもよい。ディスクドライブおよびそれらの関連する非一過性コンピュータ可読媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、および他のユーザ装置804用データの不揮発性記憶装置を提供することができる。いくつかの実装形態では、メモリ812は、例えば、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、またはROMなどの、複数の異なる種類のメモリを含んでもよい。
【0027】
[0035]メモリ812のコンテンツをより詳細に見ると、メモリ812は、本明細書に開示された機能を実施するためのオペレーティングシステムおよび1つ以上のアプリケーションプログラムまたはサービスを含んでもよい。更に、メモリ812は、自動クロップモジュール832を含め本明細書に記載の機能を実施するための1つ以上のモジュールを含んでもよい。
【0028】
[0036]アーキテクチャ800はまた、いくつかの例では、例えば、これらに限定されないが、クライアントエンティティ、低遅延データストレージ、耐久性データストレージ、データアクセス、管理、仮想化、ホスト型コンピューティング環境すなわち「クラウドベース」ソリューション、電子コンテンツパフォーマンス管理などの、コンピューティングリソースを提供する1つ以上のサービスプロバイダコンピュータ816を含んでもよい。1つ以上のサービスプロバイダコンピュータ816は、図1のサービスプロバイダコンピュータ(複数可)1XXを実装してもよいし、その一例であってもよい。1つ以上のサービスプロバイダコンピュータ816はまた、サイトホスティング、コンピュータアプリケーション開発、および/または実装プラットフォーム、これらの組合せなどを、1人以上のユーザ802に提供するように動作可能であってもよい。
【0029】
[0037]いくつかの例では、ネットワーク808は、例えば、ケーブルネットワーク、インターネット、無線ネットワーク、セルラーネットワーク、および他のプライベートネットワークおよび/またはパブリックネットワークなどの、多くの異なる種類のネットワークのうちの任意の1つまたはそれらの組合せを含んでもよい。図示の例は、ネットワーク808を介して画像取込装置810およびサービスプロバイダコンピュータ816と通信しているユーザ802を示しているが、ユーザ802が、固定電話を通じて、キオスクを介して、または任意の他の方法で、1つ以上のユーザ装置804を介して画像取込装置810または1つ以上のサービスプロバイダコンピュータ816と対話する場合には、記載された技術を同様に適用してもよい。記載された技術は、他のクライアント/サーバ構成(例えば、セットトップボックスなど)、ならびに非クライアント/サーバ構成(例えば、ローカルに保存されたアプリケーション、ピアツーピア配置など)に適用できることにも留意すべきである。
【0030】
[0038]1つ以上のサービスプロバイダコンピュータ816は、例えば、携帯電話、スマートフォン、携帯情報端末(PDA)、ラップトップコンピュータ、デスクトップコンピュータ、サーバコンピュータ、シンクライアントデバイス、タブレットPCなどの、任意の種類のコンピューティングデバイスとしてもよいが、これらに限定されない。更に、いくつかの実施形態では、1つ以上のサービスプロバイダコンピュータ816は、ホスト型コンピューティング環境内に実装された1つ以上の仮想マシンによって実行されてもよいことに留意すべきである。ホスト型コンピューティング環境は、1つ以上の迅速にプロビジョニングされリリースされるコンピューティングリソースを含んでもよく、コンピューティングリソースはコンピューティングデバイス、ネットワーキングデバイス、および/または記憶装置を含んでもよい。ホスト型コンピューティング環境はまた、クラウドコンピューティング環境または分散コンピューティング環境と呼ばれる場合もある。いくつかの例では、1つ以上のサービスプロバイダコンピュータ816は、ネットワーク808を介して、または他のネットワーク接続を介して、ユーザ装置804および画像取込装置810と通信することができる。1つ以上のサービスプロバイダコンピュータ816は、おそらくクラスタ内に配置された、または互いに関連付けられていない個別のサーバとして配置された、1つ以上のサーバを含んでもよい。
【0031】
[0039]例示的一構成では、1つ以上のサービスプロバイダコンピュータ816は、少なくとも1つのメモリ818および1つ以上の処理装置またはプロセッサ(複数可)820を含んでもよい。プロセッサ(複数可)820は、ハードウェア、コンピュータ実行可能命令、ファームウェア、またはそれらの組合せにおいて必要に応じて実装されてもよい。プロセッサ(複数可)820のコンピュータ実行可能命令またはファームウェアの実装は、プロセッサなどのハードウェアコンピューティングデバイスによって実行されるとき、記載された様々な機能を実行するために、任意の適切なプログラミング言語で書かれたコンピュータ実行可能命令または機械実行可能命令を含んでもよい。メモリ818は、プロセッサ(複数可)820にロード可能かつ実行可能なプログラム命令、ならびにこれらのプログラムの実行中に生成されたデータを記憶することができる。1つ以上のサービスプロバイダコンピュータ816の構成および種類に応じて、メモリ818は、揮発性(例えば、RAM)および/または不揮発性(例えば、ROM、フラッシュメモリなど)であってもよい。1つ以上のサービスプロバイダコンピュータ816またはサーバはまた、リムーバブル記憶装置および/または非リムーバブル記憶装置を含む、追加の記憶装置822を含んでもよい。追加の記憶装置822は、磁気記憶装置、光ディスクおよび/またはテープ記憶装置を含んでもよいが、これらに限定されない。ディスクドライブおよびそれらの関連するコンピュータ可読媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、および他のコンピューティングデバイス用データの不揮発性記憶装置を提供することができる。いくつかの実装では、メモリ818は、SRAM、DRAM、またはROMなどの複数の異なる種類のメモリを含んでもよい。
【0032】
[0040]メモリ818、追加の記憶装置822は、リムーバブルおよび非リムーバブルの両方で、全て非一過性コンピュータ可読記憶媒体の例である。例えば、コンピュータ可読記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報を記憶するための任意の方法または技術で実装された揮発性または不揮発性、リムーバブルまたは非リムーバブルな媒体を含んでもよい。メモリ818および追加の記憶装置822は全て、非一過性コンピュータ記憶媒体の例である。1つ以上のサービスプロバイダコンピュータ816に存在し得る追加の種類の非一過性コンピュータ記憶媒体は、PRAM、SRAM、DRAM、RAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、CD−ROM、DVDまたは他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置または他の磁気記憶装置、または所望の情報を記憶するために使用することができ1つ以上のサービスプロバイダコンピュータ816によってアクセスすることができる任意の他の媒体を含んでもよいが、これらに限定されない。上記のいずれかの組合せもまた、非一過性コンピュータ可読媒体の範囲内に含まれるべきである。
【0033】
[0041]1つ以上のサービスプロバイダコンピュータ816はまた、1つ以上のサービスプロバイダコンピュータ816が、データストア、別のコンピューティングデバイスまたはサーバ、ユーザ端末および/またはネットワーク808上の他のデバイスと通信することができる通信接続インタフェース(複数可)824を含んでもよい。1つ以上のサービスプロバイダコンピュータ816はまた、キーボード、マウス、ペン、音声入力装置、タッチ入力装置、ディスプレイ、スピーカ、プリンタなどのI/O装置(複数可)826を含んでもよい。
【0034】
[0042]メモリ818のコンテンツを更により詳細に見ると、メモリ818は、オペレーティングシステム828、1つ以上のデータストア830、および/または自動クロップモジュール832を含め本明細書に開示された機能を実施するための1つ以上のアプリケーションプログラムまたはサービスを含んでもよい。少なくとも1つの実施形態によると、自動クロップモジュール832は、取込画像810からマスク画像、カラー画像、およびメタデータを少なくとも送受信し、マスク画像とメタデータを用いてカラー画像からユーザ802の表現を抽出し、ユーザの表現のユーザ領域と画像のフロア領域または足領域とを結合し、無関係な画像部分を除去またはクロップし、ユーザ装置804を介してユーザ802に提示するために、画像の構図内でユーザの表現を自動クロップする、またはフィットさせることができるように構成されてもよい。画像を分析して、ユーザが着ているTシャツまたはズボンなどの画像に含まれるオブジェクトまたは商品を識別することができる。自動クロップモジュール832は、識別された商品を注文するためまたは商品を電子市場で販売するために、商品提供ウェブページを生成するためのオプションを生成し、ユーザ装置804を介して、ユーザ802に提示するように構成されてもよい。
【0035】
[0043]画像取込装置810は、少なくとも1つのメモリ834および1つ以上の処理ユニットまたはプロセッサ(複数可)836を含んでもよい。メモリ834は、プロセッサ(複数可)836にロード可能かつ実行可能であるプログラム命令、ならびにこれらのプログラムの実行中に生成されたデータを記憶することができる。ユーザ装置810の構成および種類に応じて、メモリ834は、揮発性(例えば、ランダムアクセスメモリ(RAM))および/または不揮発性(例えば、リードオンリメモリ(ROM)、フラッシュメモリなど)であってもよい。画像取込装置810はまた、磁気記憶装置、光ディスク、および/またはテープ記憶装置を含むがこれらに限定されず、追加のリムーバブル記憶装置および/または非リムーバブル記憶装置を含んでもよい。ディスクドライブおよびそれらの関連する非一過性コンピュータ可読媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、および他の画像取込装置810用データの不揮発性記憶装置を提供することができる。いくつかの実装形態では、メモリ834は、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、またはROMなど、複数の異なる種類のメモリを含んでもよい。
【0036】
[0044]メモリ834のコンテンツをより詳細に見ると、メモリ834は、本明細書に開示された機能を実施するためのオペレーティングシステムおよび/またはファームウェアを含むことができる。更に、メモリ834は、画像取込装置モジュール838を含め本明細書に記載の機能を実施するための1つ以上のモジュールを含んでもよい。実施形態では、画像取込装置モジュール838は、ユーザ802に関する深度画像または深度情報およびユーザ802のカラー画像を取り込み、画像の画素を前景、背景、ユーザの一部、フロア領域または足領域の一部、ならびにメタデータとして記憶されている深度および色として識別する固有値を生成するように構成されてもよい。画像取込装置モジュール838は、ユーザ802の3D深度画像を2D画像マスクに変換するか、画像取込装置810によって取り込まれたユーザ802の深度画像または深度情報を使用して画像マスクを生成するように構成されてもよい。画像取込装置モジュール838は、ネットワーク808および/またはサービスプロバイダコンピュータ816を介して、マスク画像、カラー画像、およびメタデータをユーザ装置804に通信してもよい。
【0037】
[0045]図9は、様々な実施形態による態様を実施するための例示的環境900の態様を示す。理解される通り、説明の目的でウェブベースの環境が使用されているが、様々な実施形態を実施するために、必要に応じて、異なる環境を使用してもよい。環境は、電子クライアントデバイス902を含み、電子クライアントデバイス902には、適切なネットワーク904を通じて、リクエスト、メッセージ、または情報を送受信し、情報をデバイスのユーザに返信するように動作可能な任意の適切なデバイスを含めることができる。当該のクライアントデバイスの例には、パーソナルコンピュータ、携帯電話、ハンドヘルドメッセージングデバイス、ラップトップコンピュータ、セットトップボックス、パーソナルデータアシスタント、電子ブックリーダなどがある。ネットワークは、イントラネット、インターネット、セルラーネットワーク、ローカルエリアネットワーク、または任意の他のこのようなネットワークもしくはこれらの組合せを含む任意の適切なネットワークを含むことができる。当該のシステムに使用されるコンポーネントは、選択されたネットワークの種類および/または環境に少なくとも部分的に依存する可能性がある。当該のネットワークを介して通信するためのプロトコルおよびコンポーネントはよく知られており、本明細書では詳細には議論しない。ネットワークを介した通信を有線または無線の接続およびそれらの組合せによって可能にすることができる。この例において、ネットワークにインターネットが含まれているのは、リクエストを受信してそれに応じてコンテンツを提供するためのウェブサーバ906が環境に含まれているからで、他のネットワークの場合に同様の目的を満たす代替的なデバイスを使用できるのは、当業者であれば明らかである。
【0038】
[0046]例示的な環境は、少なくとも1つのアプリケーションサーバ908とデータストア910とを含む。いくつかのアプリケーションサーバ、レイヤ、その他の要素、プロセス、または連鎖されていてもよいしそうでなければ構成されていてもよいコンポーネントが存在することができ、これらは適切なデータストアからデータを取得することなどのタスクを実行するために対話できると理解すべきである。本明細書で用いる場合、用語「データストア」は、データを記憶し、アクセスし、および検索することができる任意のデバイスまたはデバイスの組合せを指しており、任意の標準的な、分散された、またはクラスタ化された環境において、任意の組合せおよび任意の数のデータサーバ、データベース、データ記憶装置、およびデータ記憶媒体を含んでいてもよい。アプリケーションサーバには、必要に応じてデータストアと統合してクライアントデバイス用の1つ以上のアプリケーションの態様を実行するために、アプリケーションに対するデータアクセスおよびビジネスロジックの大部分を取り扱う、任意の適切なハードウェアおよびソフトウェアを含めることができる。アプリケーションサーバは、データストアと連携してアクセス制御サービスを提供し、そしてユーザに転送すべきテキスト、グラフィック、オーディオ、および/またはビデオなどのコンテンツを生成することができ、これらは、ハイパーテキストマークアップ言語(「HTML」)、拡張マークアップ言語(「XML」)、またはこの例では他の適切な構造化言語の形式で、ウェブサーバによってユーザに提供されてもよい。ウェブサーバは、全てのリクエストと回答の取扱いおよびクライアントデバイス902とアプリケーションサーバ908との間でのコンテンツ配信を処理することができる。本明細書で議論される構造化コードは、本明細書の他の部分で議論されたように任意の適切なデバイスまたはホストマシン上で実行することができるので、ウェブサーバおよびアプリケーションサーバは必要ではなく、単なるコンポーネント例であることを理解すべきである。
【0039】
[0047]データストア910には、いくつかの別個のデータテーブル、データベース、または他のデータストレージメカニズム、および特定の態様に関するデータを記憶するための媒体を含めることができる。例えば、図示したデータストアには、サービスの各特定ユーザ用の自動クロップ画像912およびユーザ情報916を記憶するためのメカニズムが含まれてもよく、生産側にコンテンツを提供するために、および/またはユーザが利用する商品や衣服を推奨するために使用できる。データストアはまた、過去の衣服の組合せを記憶するためのメカニズム914を含むことが示されており、過去の衣服の組合せは、報告、分析、または、衣服、注文商品、または利用サービスの推奨など、その他の当該の目的のために使用できる。必要に応じて、上で列記したメカニズムのいずれかにまたはデータストア910内の追加のメカニズムに記憶させることができるページ画像情報や正しい情報にアクセスするためのものなど、データストアに記憶させる必要の可能性がある他の多くの態様が存在し得ることを理解すべきである。データストア910は、それに関連する論理を通して、アプリケーションサーバ908から命令を受信し、それに応じてデータを取得し、更新し、または他の方法で処理するように動作可能である。一例では、ユーザは、ある特定の種類の商品に対する検索リクエストを提出する可能性がある。この場合、データストアは、ユーザ情報にアクセスしてユーザの身元を検証する可能性があり、またカタログ詳細情報にアクセスしてその種類の商品に関する情報を取得することができる。次いで、ユーザがユーザ装置902上でブラウザを介して閲覧することができるウェブページ上での結果一覧などで、情報をユーザに戻すことができる。関心のある特定の商品に関する情報を、ブラウザの専用ページまたはウィンドウで閲覧することができる。
【0040】
[0048]各サーバには、通常、そのサーバの一般管理および操作のための実行可能プログラム命令を提供するオペレーティングシステムが含まれ、また、通常、コンピュータ可読記憶媒体(例えば、ハードディスク、ランダムアクセスメモリ、リードオンリメモリなど)が含まれ、サーバに記憶された命令がサーバのプロセッサによって実行されるとサーバはその意図された機能を実行することができる。オペレーティングシステムおよびサーバの一般的な機能に対する適切な実装は、よく知られているかまたは市販されており、特に本明細書の開示内容に照らして、当業者によって容易に実装される。
【0041】
[0049]一実施形態では、環境は、分散コンピューティング環境であって、1つ以上のコンピュータネットワークまたは直接接続を使用し、通信リンクを介して相互接続されたいくつかのコンピュータシステムおよびコンポーネントを利用する分散コンピューティング環境である。しかしながら、当業者であればわかるように、このようなシステムは、図9に例示したものよりコンポーネントの数が少ないか、または多いシステムにおいても、同様に良好に動作することができる。したがって、図9のシステム900の表現は、性質上例示的であり、本開示の範囲を限定するものではないと解釈すべきである。
【0042】
[0050]様々な実施形態を多岐にわたる動作環境内で更に実施することができ、当該の動作環境には、場合によっては、1つ以上のユーザコンピュータ、コンピューティングデバイスまたは処理装置であって、多くのアプリケーションのうちのいずれかを動作させるために使用することができるものを含めることができる。ユーザ装置またはクライアントデバイスには、多くの汎用パーソナルコンピュータ、例えば、標準的なオペレーティングシステムを実行するデスクトップまたはラップトップコンピュータ、ならびに携帯電話ソフトウェアを実行し多くのネットワーキングおよびメッセージングプロトコルをサポートすることができるセルラー、無線機器、およびハンドヘルドデバイスなどのうちのいずれかを含めることができる。当該のシステムはまた、開発およびデータベース管理などの目的のために、様々な市販のオペレーティングシステムおよび他の既知のアプリケーションのうちのいずれかを実行する多くのワークステーションを含むことができる。これらのデバイスにはまた、他の電子デバイス、例えば、ダミー端末、シンクライアント、ゲームシステム、および他のデバイスであって、ネットワークを介して通信可能であるものを含めることができる。
【0043】
[0051]ほとんどの実施形態では、様々な市販のプロトコルのうちのいずれかを使用した通信をサポートするために、当業者にはよく知られている少なくとも1つのネットワークが利用されており、様々な市販のプロトコルとは、例えば、トランスミッションコントロールプロトコル/インターネットプロトコル(「TCP/IP」)、開放型システム間相互接続(「OSI」)、ファイル転送プロトコル(「FTP」)、ユニバーサルプラグアンドプレイ(「UpnP」)、ネットワークファイルシステム(「NFS」)、コモンインターネットファイルシステム(「CIFS」)、アップルトーク(AppleTalk)(登録商標)である。ネットワークは、例えば、ローカルエリアネットワーク、ワイドエリアネットワーク、仮想プライベートネットワーク、インターネット、イントラネット、エクストラネット、公衆交換電話網、赤外線ネットワーク、無線ネットワーク、およびそれらの任意の組合せとすることができる。
【0044】
[0052]ウェブサーバを用いる実施形態では、ウェブサーバは、ハイパーテキスト転送プロトコル(「HTTP」)サーバ、FTPサーバ、コモンゲートウェイインタフェース(「CGI」)サーバ、データサーバ、ジャバサーバ、およびビジネスアプリケーションサーバを含めて、様々なサーバまたはミッドティアアプリケーションのうちのいずれかを実行することができる。サーバ(複数可)はまた、ユーザ装置からのリクエストに応じてプログラムまたはスクリプトを実行することができ、これは、例えば、ジャバ(登録商標)、C、C#、またはC++などの任意のプログラミング言語、またはパール、パイソン、またはTCLなどのスクリプト言語、ならびにこれらの組合せで書かれた1つ以上のスクリプトまたはプログラムとして実装してもよい1つ以上のウェブアプリケーションを実行することによって実行してもよい。サーバ(複数可)には、データベースサーバが含まれてもよく、限定することなく、オラクル(登録商標)、マイクロソフト(登録商標)、サイベース(登録商標)、およびIBM(登録商標)から市販されているものである。
【0045】
[0053]環境には、上記の通り、様々なデータストアならびに他のメモリおよび記憶媒体を含めることができる。これらは、様々な場所に存在することができる、例えば、コンピュータのうちの1つ以上に対してローカルな(および/またはそこに常駐する)記憶媒体、またはネットワークを介してコンピュータの一部または全部からリモートにある記憶媒体である。ある特定のセットの実施形態では、情報は、当業者によく知られているストレージエリアネットワーク(「SAN」)内に存在することができる。同様に、コンピュータ、サーバ、または他のネットワークデバイスに起因する機能を実行するための任意の必要なファイルを、必要に応じて、ローカルおよび/またはリモートに記憶してもよい。システムにコンピュータ化されたデバイスが含まれている場合、当該の各デバイスには、バスを介して電気的に結合できるハードウェア要素を含めることができ、当該要素には、例えば、少なくとも1つの中央演算処理装置(「CPU」)、少なくとも1つの入力デバイス(例えば、マウス、キーボード、コントローラ、タッチスクリーン、またはキーパッド)、および少なくとも1つの出力装置(例えば、ディスプレイデバイス、プリンタまたはスピーカ)が含まれる。当該のシステムにはまた、例えばディスクドライブ、光学記憶装置、およびランダムアクセスメモリ(「RAM」)またはリードオンリ―メモリ(「ROM」)、ならびにリムーバブルメディアデバイス、メモリカード、フラッシュカードなどのソリッドステート記憶装置など、1つ以上の記憶装置が含まれていてもよい。
【0046】
[0054]当該のデバイスにはまた、上記の通り、コンピュータ可読記憶媒体リーダ、通信装置(例えば、モデム、ネットワークカード(無線または有線)、赤外線通信装置など)およびワーキングメモリを含めることができる。コンピュータ可読記憶媒体リーダをコンピュータ可読記憶媒体と接続するか、またはこれを受け入れるように構成して、コンピュータ可読情報を一時的および/またはより永続的に収容し、記憶し、送信し、ならびに検索するためのリモート、ローカル、固定および/またはリムーバブル記憶装置、ならびに記憶媒体を表すことができる。システムおよび様々なデバイスにはまた、通常、少なくとも1つのワーキングメモリデバイス内に配置された多くのソフトウェアアプリケーション、モジュール、サービス、または他の要素が含まれ、これらには、オペレーティングシステムおよび、例えば、クライアントアプリケーションまたはウェブブラウザなどのアプリケーションプログラムが含まれる。代替的な実施形態は、上記の実施形態からの多くの変形形態を有していてもよいことを理解すべきである。例えば、カスタマイズされたハードウェアを用いる可能性もあり、および/または特定の要素をハードウェア、ソフトウェア(例えば、アプレットなどポータブルソフトウェアを含む)もしくは両方で実装する可能性がある。更に、他のコンピューティング装置、例えばネットワーク入力/出力装置などへの接続を用いてもよい。
【0047】
[0055]コードまたはコードの一部を含むための記憶媒体コンピュータ可読媒体は、当該技術分野で知られているかまたは用いられている任意の適切な媒体を含むことができ、これら媒体には、記憶媒体および通信媒体、例えば、限定することなく、揮発性および不揮発性、リムーバブルおよび非リムーバブル媒体であって、例えば、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報を記憶および/または送信するための任意の方法または技術で実装されるものが含まれ、これには、RAM、ROM、電気的消去可能プログラマブルリードオンリーメモリ(「EEPROM」)、フラッシュメモリまたは他のメモリ技術、コンパクト・ディスクリードオンリーメモリ(「CD−ROM」)、デジタル多用途ディスク(DVD)または他の光記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置、または他の磁気記憶装置もしくは他の任意の媒体であって、所望の情報を記憶するために用いることができ、システムデバイスによってアクセス可能な媒体が含まれる。本明細書で提示した開示内容および教示に基づいて、当業者であれば、様々な実施形態を実施する他の手段および/または方法を理解するであろう。
【0048】
[0056]したがって、明細書および図面は限定的な意味ではなく例示的な意味で考えるべきである。しかしながら、請求項で述べる本開示のより広い趣旨および範囲から逸脱することなく、様々な変更および変形を施してもよいことは明らかである。
【0049】
[0057]他の変形形態は本開示の趣旨の範囲内にある。したがって、開示した技術は様々な変更および代替的な創出を受け入れることができるが、その例示されたある特定の実施形態を図面に示し、上記で詳細に説明している。しかしながら、本開示を開示した特定の形態に限定する意図はなく、それどころか、その意図は、添付の請求項に規定された本開示の趣旨および範囲内に含まれる全ての変更形態、代替的創出、および均等物に及ぶことであることを理解すべきである。
【0050】
[0058]用語「一つの(a)」および「一つの(an)」および「前記の(the)」および同様の指示物を、開示された実施形態を説明する文脈において(特に以下の請求項の文脈において)用いることは、本明細書において特に断りのない限りまたは文脈と明らかに矛盾しない限り、単数および複数の両方に及ぶと解釈すべきである。用語「備える(comprising)」「有する(having)」「含む(including)」および「含有する(containing)」は、特に断らない限り、オープンエンド用語(すなわち、「含むがこれらに限定されない」ことを意味する)と解釈すべきである。用語「接続される(connected)」は、たとえ何かが介在していても、それに部分的もしくは全体的に含まれるか、それに取り付けられるか、またはそれと互いに結合されると解釈すべきである。本明細書において特に断りのない限り、本明細書における数値の範囲の説明は、単に、範囲に含まれる各別個の数値を個別に参照する簡単な方法として役立つことが意図されており、各別個の数値は、まるで本明細書において個別に説明されているかのように、明細書に取り込まれている。本明細書に記載の全ての方法は、本明細書において特に断りのない限りまたは文脈と明らかに矛盾しない限り、任意の適切な順序で実行することができる。本明細書で提供されるありとあらゆる例、または例示的な言葉(例えば、「など(such as)」)を用いることは、別段の請求がない限り、単に本開示の実施形態を更によく明らかにすることを意図しており、本開示の範囲を限定するものではない。本明細書中のどんな言葉も、本開示の実施に不可欠な何らかの非請求の要素を示すものと解釈すべきではない。
【0051】
[0059]句「X、Y、Zのうちの少なくとも1つ」などの離接的な言語は、特に明記しない限り、概して、物品、用語などが、X、Y、もしくはZ、またはその任意の組合せ(例えば、X、Y、および/またはZ)のどちらかであってよいことを提示するために一般に使用されるとして、文脈内で理解されることを意図している。したがって、このような離接的な言語は、一般的に、ある特定の実施形態がXのうちの少なくとも1つ、Yのうちの少なくとも1つ、およびZのうちの少なくとも1つ、がそれぞれ存在する必要があることを示唆することを意図しておらず、また意図すべきではない。
【0052】
[0060]本明細書には、本開示を実施するための本発明者等に知られたベストモードを含めて、本開示の好ましい実施形態が説明されている。前述の説明を読むことで、これらの好ましい実施形態の変形形態が当業者に明らかになってもよい。本発明者らは当業者がこのような変形形態を適切なものとして用いることを予期しており、本発明者らは本明細書で具体的に記載された以外の方法で本開示が実施されることを意図している。したがって、本開示は、適用可能な法律によって許可された場合、本明細書に添付の請求項に記載された主題の全ての変更形態および均等物を含む。また、本明細書において特に断りのない限りまたは文脈と明らかに矛盾しない限り、全ての可能な変形形態における上記の要素の任意の組合せは本開示に包含される。
【0053】
[0061]本明細書に引用された、出版物を含む全ての参考文献、特許出願、および特許は、あたかも各文献が個別にかつ具体的に参照により組み込まれるように示され、その全体が本明細書に記載されているかのように同程度に、参照により本明細書に組み込まれる。
【0054】
[0062]本開示の実施形態の例を以下の条項の点から説明することができる。
【0055】
[0063]1.コンピュータ実施方法であって、
ユーザの画像の第1の画像マスク、前記画像、および前記画像に関するメタデータをコンピュータシステムによっておよび画像取込装置から受信するステップであって、前記メタデータは前記画像に含まれる1つ以上の部分に対する複数の固有値を示し、前記画像取込装置は、前記ユーザの深度画像と前記ユーザのカラーマスク画像とを取り込むように構成され、前記ユーザの前記深度画像は、前記画像取込装置によって取り込まれた前記画像の背景に関して前記ユーザの深度および前記ユーザの前景位置を識別するために、前記画像取込装置によって使用される前記ユーザの三次元(3D)表現を含み、前記カラーマスク画像は、前記ユーザの赤、緑、および青(RGB)画像を含み、前記第1の画像マスクは、前記深度画像および前記カラーマスク画像を含むステップと、
前記コンピュータシステムによって、前記第1の画像マスクおよび前記メタデータに少なくとも部分的に基づいて、前記ユーザの表現および前記ユーザの前記表現に関連するフロア領域の表現を前記画像から抽出するステップであって、前記ユーザの前記表現は、前記画像に含まれる1つ以上の部分の一部の第1のサブセットからなり、前記フロア領域の前記表現は、前記画像に含まれる1つ以上の部分の一部の第2のサブセットからなるステップと、
前記コンピュータシステムによって、前記第1の画像マスクおよび前記メタデータに少なくとも部分的に基づいて、前記画像内の前記ユーザの前記抽出された表現に関して前記画像の第1の領域を除去し、それによって前記画像の第2の領域を生成するステップと、
前記コンピュータシステムによって、前記第1の画像マスクおよび前記メタデータに少なくとも部分的に基づいて、前記画像の前記第2の領域に関して前記ユーザの前記抽出された表現を前記画像の前記フロア領域と結合するステップと、
前記コンピュータシステムによって、前記コンピュータシステムのユーザインタフェースを介して前記ユーザの修正画像を表示するステップであって、前記ユーザの前記修正画像は、前記ユーザの前記抽出された表現と前記画像の前記第2の領域内に含まれる前記画像の前記フロア領域との結合部を含むステップと
を含む、コンピュータ実施方法。
【0056】
[0064]2.前記メタデータによって示される前記複数の固有値のうちの1つ以上により、前記画像内の画素が前記画像の前記背景内にあるものとして識別される、条項1に記載のコンピュータ実施方法。
【0057】
[0065]3.前記メタデータに少なくとも部分的に基づいて、前記画像の前記1つ以上の部分の一部を隠すことを更に含む、条項1に記載のコンピュータ実施方法。
【0058】
[0066]4.電子市場によって維持される商品認識アルゴリズムおよび商品カタログに少なくとも部分的に基づいて、前記画像に含まれる商品を識別することを更に含む、条項1に記載のコンピュータ実施方法。
【0059】
[0067]5.前記コンピュータシステムの前記ユーザインタフェースを介して、前記画像に含まれる前記商品の注文を可能にするように構成された対話可能オブジェクトを表示することを更に含む、条項4に記載のコンピュータ実施方法。
【0060】
[0068]6.前記コンピュータシステムによって維持される前記ユーザの別の修正画像のある特定の部分を用いて、前記ユーザの前記修正画像を更新することを更に含む、条項1に記載のコンピュータ実施方法。
【0061】
[0069]7.コンピュータ実施方法であって、
前記画像取込装置によって取り込まれた画像内のユーザの二次元(2D)表現を含む第1の画像マスクおよび前記画像の前景内にあるものとして前記画像内の領域の第1のサブセットを識別する第1のメタデータを、コンピュータシステムによっておよび画像取込装置から受信するステップと、
前記画像取込装置によって取り込まれた前記画像内の前記ユーザに関連するフロア領域の表現を含む第2の画像マスクおよび前記画像の前記前景として前記画像内の領域の第2のサブセットを識別する第2のメタデータを、前記コンピュータシステムによっておよび前記画像取込装置から受信するステップと、
前記コンピュータシステムによっておよび前記画像取込装置から前記ユーザのカラー画像を受信するステップと、
前記第1の画像マスク、前記第2の画像マスク、前記第1のメタデータ、および前記第2のメタデータに少なくとも部分的に基づき、前記コンピュータシステムによって前記ユーザの前記カラー画像から前記ユーザの前記表現および前記ユーザに関連する前記フロア領域を抽出するステップと、
前記第1の画像マスクおよび前記第2の画像マスクに少なくとも部分的に基づいて、前記コンピュータシステムによって、前記ユーザの前記抽出された表現および前記ユーザに関連する前記フロア領域に関して前記ユーザの前記カラー画像の第1の領域をクロップし、それによってカラー画像の第2の領域を生成するステップと、
前記第1のメタデータおよび前記第2のメタデータに少なくとも部分的に基づき、前記コンピュータシステムによって、前記クロップされたカラー画像の第3の領域を隠し、それによって、前記ユーザの前記抽出された表現と前記ユーザに関連する前記フロア領域との結合部を含む前記ユーザの修正カラー画像を生成するステップと
を含む、コンピュータ実施方法。
【0062】
[0070]8.前記ユーザの複数のクロップされたカラー画像を維持することを更に含む、条項7に記載のコンピュータ実施方法。
【0063】
[0071]9.商品認識アルゴリズムおよび商品カタログに少なくとも部分的に基づいて、前記ユーザの前記画像に含まれる複数の商品を識別することを更に含む、条項7に記載のコンピュータ実施方法。
【0064】
[0072]10.前記画像に含まれる前記識別された複数の商品を提供するための1つ以上の商品リストウェブページを生成することを更に含む、条項9に記載のコンピュータ実施方法。
【0065】
[0073]11.前記ユーザの前記カラー画像を受信することは、前記画像内の領域の第3のサブセットを前記画像の背景として識別する第3のメタデータを受信することを含む、条項7に記載のコンピュータ実施方法。
【0066】
[0074]12.前記第1のメタデータ、前記第2のメタデータ、および前記第3のメタデータは、前記画像取込装置によって取り込まれた前記画像内の各画素についてそれぞれの深度測定値を更に識別する、条項11に記載のコンピュータ実施方法。
【0067】
[0075]13.前記画像取込装置は、前記ユーザの三次元(3D)画像を取り込むための深度センサを備え、前記ユーザの前記カラー画像を使用して、前記ユーザの前記3D画像を前記ユーザの前記2D表現に変換するように更に構成された、条項7に記載のコンピュータ実施方法。
【0068】
[0076]14.コンピュータシステムであって、
コンピュータ実行可能命令を記憶するメモリと、
オブジェクトの三次元(3D)画像を取り込むように構成された第1のセンサと、
前記オブジェクトのカラー画像を取り込むように構成された第2のセンサと、
少なくとも1つのプロセッサであって、前記メモリにアクセスし、前記コンピュータ実行可能命令を実行して、全体として少なくとも、
前記第1のセンサによって取り込まれた前記画像の3D画像に少なくとも部分的に基づき、前記第1のセンサによって取り込まれた画像内のユーザの二次元(2D)表現と、前記画像内の領域の第1のサブセットを前記画像の前景内にあるものとして識別する第1のメタデータとを含む第1の画像マスクを取得し、
前記第1のセンサによって取り込まれた前記画像内の前記ユーザに関連するフロア領域の表現と、前記画像内の領域の第2のサブセットを前記画像の前記前景として識別する第2のメタデータとを含む第2の画像マスクを取得し、
前記第2のセンサから前記ユーザの前記カラー画像を取得し、
前記第1の画像マスク、前記第2の画像マスク、前記第1のメタデータ、および前記第2のメタデータに少なくとも部分的に基づき、前記ユーザの前記カラー画像から、前記ユーザの前記表現と前記ユーザに関連する前記フロア領域とを抽出し、
前記第1の画像マスクおよび前記第2の画像マスクに少なくとも部分的に基づき、前記ユーザの前記抽出された表現および前記ユーザに関連する前記フロア領域に関して前記ユーザの前記カラー画像の第1の領域を除去し、それによって前記カラー画像の第2の領域が生成される
ように構成された前記少なくとも1つのプロセッサと
を備える、コンピュータシステム。
【0069】
[0077]15.前記少なくとも1つのプロセッサは、前記ユーザの前記抽出された表現と前記カラー画像の前記第2の領域内の前記ユーザに関連する前記フロア領域との結合部を含む、前記ユーザの修正画像を表示するように更に構成される、条項14に記載のコンピュータシステム。
【0070】
[0078]16.前記少なくとも1つのプロセッサは、前記第1のメタデータおよび前記第2のメタデータに少なくとも部分的に基づいて、前記カラー画像の第3の領域を隠すように更に構成される、条項14に記載のコンピュータシステム。
【0071】
[0079]17.前記第1の画像マスクを取得することは、前記ユーザの前記3D画像を前記ユーザの前記2D画像に変換することを含む、条項14に記載のコンピュータシステム。
【0072】
[0080]18.前記少なくとも1つのプロセッサは、商品認識アルゴリズムに少なくとも部分的に基づいて、前記画像内の1つ以上のオブジェクトを識別するように更に構成される、条項14に記載のコンピュータシステム。
【0073】
[0081]19.前記少なくとも1つのプロセッサは、前記識別された1つ以上のオブジェクトを前記画像内の領域の前記第1のサブセットから除去するための命令を前記ユーザに送信するように更に構成される、条項18に記載のコンピュータシステム。
【0074】
[0082]20.前記少なくとも1つのプロセッサは、前記識別された1つ以上のオブジェクトが前記画像内の領域の前記第1のサブセットから除去されたという指示に応えて、前記ユーザの別の画像を取り込むための命令を前記ユーザに送信するように更に構成される、条項18に記載のコンピュータシステム。
図1
図2
図3
図4
図5
図6
図7
図8
図9