JP2014179090A - 色および色差値に基づいた画像の分割 - Google Patents

色および色差値に基づいた画像の分割 Download PDF

Info

Publication number
JP2014179090A
JP2014179090A JP2014049897A JP2014049897A JP2014179090A JP 2014179090 A JP2014179090 A JP 2014179090A JP 2014049897 A JP2014049897 A JP 2014049897A JP 2014049897 A JP2014049897 A JP 2014049897A JP 2014179090 A JP2014179090 A JP 2014179090A
Authority
JP
Japan
Prior art keywords
image
area
value
region
color
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014049897A
Other languages
English (en)
Other versions
JP2014179090A5 (ja
JP6382538B2 (ja
Inventor
Young Harvill
ハーヴィル ヤング
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zazzle Inc
Original Assignee
Zazzle Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zazzle Inc filed Critical Zazzle Inc
Publication of JP2014179090A publication Critical patent/JP2014179090A/ja
Publication of JP2014179090A5 publication Critical patent/JP2014179090A5/ja
Application granted granted Critical
Publication of JP6382538B2 publication Critical patent/JP6382538B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0621Item configuration or customization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0641Shopping interfaces
    • G06Q30/0643Graphical representation of items or shoppers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/187Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/40Analysis of texture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/56Extraction of image or video features relating to colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Strategic Management (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Multimedia (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)
  • Color Image Communication Systems (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Processing Or Creating Images (AREA)

Abstract

【課題】
マークが付けられた製品の画像中の画像区画の認識性能を向上させる。
【解決手段】
マークアップを構成するカスタマイズ可能な製品の入力画像が、色または色差に基づいて、異なる領域に分けられる。分割処理は、入力画像内の複数の位置に色差値を割り当てる。さらに、分割処理は、複数の位置のそれぞれに複数の画像領域のうち1つの画像領域を割り当て、割り当ては特定の順番で行われる。特定の順番は、複数の位置に関連する色差値の少なくとも一部に基づくものである。分割処理に基づいて、入力画像のマークアップの特定の少なくとも一部を表すデータが特定される。マークアップの特定の少なくとも一部を表すデータがカスタマイズ可能な製品を視覚化するためや、カスタマイズ可能な製品に関する製造制御を行うために用いられる。
【選択図】 図4

Description

本開示は、製品のマークアップ画像を、色および複数の色間の違いに基づいて領域に分ける技術に関連する。
この項目に記述されている手法は、達成することが可能であるが、必ずしも以前に着想または達成された手法ではない。したがって、別段の指定がない限り、この項目で記述されている手法のうちのいずれかが、この項目に含まれていることで単に先行技術であると仮定されるべきではない。
デジタル画像中の特定のオブジェクトの位置や形などのデジタル画像に関する情報は、デジタル画像に対してセグメンテーションを行うことにより抽出することができる。画像セグメンテーションは、デジタル画像を複数の異なる領域に分ける処理である。例えば、Zazzle社などのカスタマイズ製品の製造業者や提供者は、身に付けた時の衣類やアクセサリーなどのカスタマイズする製品の形状を理解するために、製品に付けられたマークアップの位置と形を抽出したいと思っている。
画像分割に関する一手法では、画像がフルカラーで表されたものを、各ピクセルの濃淡がオリジナル画像のピクセルの輝度値を表す白黒の輝度画像に変換する。領域の区画は、画像内のピクセルの輝度に基づいて決定される。しかし、このような手法は、正確に領域の区画を決定するために必要な色情報のいくつかが白黒の輝度画像に変換する際に失われるので、しばしば結果が不正確になる。マークが付けられた製品の画像中の画像区画の認識を向上させる手法が必要とされている。
添付のクレームが本発明の要約となる。
図について
複数の画像領域に分けた入力画像の一例を示す。 分割処理に従って決定された領域情報を利用するカスタマイズ画像レンダリングシステムの一例を示す。 図2に示すカスタマイズ画像レンダリングシステムのようなカスタマイズ画像レンダリングシステムに実装される処理の一例を示す。 画像を領域に分割し分割処理の結果決定された領域情報を利用する処理の一例を示す。 入力画像を色と色差の一部に基づいて複数の画像領域に分ける処理の一例を示す。 中心位置に対する色差値を決定するために分析される色の位置を表す図の一例を示す。 各位置に関連する色差値に基づいて位置をソートするために用いられる色差データの一例と、ソートリストおよびソート処理から結果を得るために用いられる色差配列の一例を示す。 色差値に基づいた画像位置をソートする処理の一例を示す。 図8に示す処理に従って、色差配列に記憶された色差値に基づいて一部にデータが設定されたソートリストと連結領域配列の内容を示す。 領域に対して画像位置を割り当てる処理の一例を示す。画像処理システム204によって処理が実行される。 分割処理の結果決定された領域情報の一例を示す。 図1に描かれた入力画像を分割することによって特定された領域情報の一部に基づいて決定されたマークアップのグリッド画像を描画したものである。 ここに記載の技術を実装したコンピューターシステムを示すブロック図である。
以下の記載は、例示を目的とし、多数の詳細な形態は本発明を十分に理解するために提供される。しかしながら、本発明は、このような詳細な形態でなくとも実施されることは明らかである。他の例では、本発明を必要以上に不明瞭にしないために、既知の構成と装置がブロック図に示されている。
以下の概要に従って、実施形態をここに記載する。
1.総括
2.構成と機能の概要
2.1 カスタマイズ画像レンダリングシステムの例
2.2 領域情報利用処理の例
2.3 マークアップ画像の分割処理の例
2.4 他の形態および拡張
3.実装の仕組み―ハードウェアの概要
4.分割命令の一例
1.総括
色と色差に基づいた製品のマークアップ画像のセグメンテーション技術について記載されている。本開示の読み手は米国特許出願第13/736,844号明細書についての知識があり理解しているものとみなされる。一実施形態では、製品マークアップ画像はマークアップを構成するカスタマイズ可能な製品の画像である。製品画像は一部分の色差に基づいて、異なる領域に分けられてもよい。特に、製品のマークアップ画像入力画像の各位置は、色の観点で近傍の位置からその位置がどのくらい違うかの指標となる色差値が割り当てられてもよい。各位置は複数の画像領域の1つの画像領域に割り当てられ、少なくとも一部はピクセルに割り当てられた色差値に基づいた順番に従って、複数の位置が領域の割当について検討されてもよい。例えば、色差値の小さい位置が色差値の大きい位置より前に領域が割り当てられてもよい。
画像処理システムは、カスタマイズ可能な製品を視覚化、または、カスタマイズ可能な製品に関する製造の制御に、決定された領域情報を利用するようにしてもよい。例えば、画像処理システムは、領域情報に基づいて特定のマークアップ部分の位置を決定するようにしてもよい。決定された位置情報に基づいて、画像処理システムは、コンピューターでカスタマイズされた製品を視覚化するレンダリング命令で構成されるカスタマイズ画像レンダリングアセットを決定してもよい。領域情報は、カスタマイズされた製品が製造された後に、カスタマイズされた製品の品質を確かめるためにも利用されてもよい。
2.構成と機能の概要
2.1 カスタマイズ画像レンダリングシステムの例
図1に複数の画像領域に分けた入力画像の一例を示す。シャツ104は、注文したテキストまたは画像が付けられるカスタマイズ可能な製品である。マークアップ102は、無地の四角で構成された2色の市松模様であり、各四角が単一の色で、それぞれ隣接した四角は反対色になる。ここに記載された処理は、少なくとも入力画像のマークアップの部分を1組の領域群に分け、領域群のそれぞれがマークアップの中の対応する四角の1つを表す。他の実施形態では、マークアップは異なるパターン、形状、または色で構成されてもよい。
画像分割処理は、例えば、見つけられた各領域に対して、その領域が属する画像位置、各領域の範囲、および/または、領域の代表色などを特定する領域情報を結果として得る。ある実施形態では、各画像位置は離れたピクセルである。他の実施形態では、各画像位置はピクセル群である。
一実施形態では、結果として得られた領域情報は、顧客が提供したパラメータに従ってカスタマイズされた注文(カスタマイズ)製品を自動的に視覚化するために用いられる。図2に、分割処理に従って決定された領域を利用するカスタマイズ画像生成およびレンダリングシステムの一例を示す。
1以上のカメラ202が、マークアップが刷られた(imprinted)あるいは他の方法で付けられた(embellished)カスタマイズ可能な製品の写真を取得する。画像処理システム204はカメラ202から生のデジタル画像206を受け取って記憶する。画像処理システム204は、1以上の記憶されたコンピュータープログラム、スクリプト、または他のソフトウェア要素として実装されたカスタマイズ画像レンダリングアセット生成命令208を備える。画像処理システム204の1以上の処理が、カスタマイズ画像レンダリングアセット生成命令208を実行して、カスタマイズ画像レンダリング命令を生成するようにしてもよい。カスタマイズ画像レンダリングアセット生成命令208には、入力画像を分析して分割された画像領域を特定して、領域の代表色、領域の範囲、および領域に含まれる1組の画像位置群などの画像領域について情報を集めるマークアップ領域特定命令210が含まれる。カスタマイズ画像レンダリングアセット命令の生成は、領域情報に基づいてカスタマイズ画像のレンダリングを生成するための命令を決定することで行われる。カスタマイズ画像レンダリングアセットには、コンピューターで生成したカスタマイズ製品を視覚化したカスタマイズ画像をレンダリングするための命令が含まれる。
画像処理システム204は、生成されたカスタマイズ画像レンダリングアセットを、カスタマイズ画像レンダリングアセット214を記憶して利用するウェッブサーバ212などのウェッブサーバ212に送信する。ウェッブサーバ212は、カスタマイズ画像レンダリングアセット214などの1以上のカスタマイズ画像レンダリングアセットを受信し記憶する。また、ウェッブサーバ212は、HTMLおよび/または他のウェッブページコンテンツを決定するウェッブページ生成部216で構成される。ウェッブサーバ212は、ユーザシステム220などのユーザシステムからウェッブページの要求を受け取る。それに応じて、ウェッブサーバ212は、ユーザシステムで表示するためにウェッブページを送信し、カスタマイズ画像レンダリングアセットに含まれる命令を実行して生成されたカスタマイズ画像がウェッブサーバ212におかれる。ウェッブサーバ212は、オンライン小売店ウェッブサイトを生成するために、オンライン小売店によって操作される。
ユーザシステム220は、顧客がオンライン小売店のウェッブサイトを閲覧し、カスタマイズする製品を選択し、製品をどのようにカスタマイズするかを特定して、カスタマイズ画像を受信するためのシステムである。ユーザシステム220は、ネットワーク218(World Wide Web(WWW)であってもよい)を介して、ウェッブサーバ212からウェッブページとウェッブコンテンツを要求する。
図2に示すシステムは、カスタマイズ画像レンダリングシステムの一例を示したに過ぎない。他の実施形態のシステムでは、図2に示すコンポーネントおよびサブコンポーネントのそれぞれを含めないようにしてもよい。さらに、例を明確に説明するために、図2は上記の様々な機能要素の個々の例を示すが、様々な実施形態において、各機能要素は、1以上のローカルなまたは分散したコンピューター、プロセッサ、ソフトウェア要素、あるいは他のロジックとして組み込まれてもよい。
2.2 領域情報利用処理の例
図3に、図2に示すカスタマイズ画像レンダリングシステムのようなカスタマイズ画像レンダリングシステムに実装される処理の一例を示す。図3に従うと、カスタマイズ画像を生成するための命令を含むカスタマイズ画像レンダリングアセットが、分割処理に従って決定された領域情報の一部に基づいて決定される。図3の処理は、画像処理システム204によって実行される。
ブロック302で、製品の写真が撮影される。撮影された製品は視覚的に見えるようにマークアップが刷られる、あるいは、他の方法で付けられる。ある実施形態では、撮影される製品は、人や動物がモデルになって撮影される。写真は、カメラ102のような1以上のカメラで撮影される。ブロック304で、図2の写真収集および処理システム204のような写真収集および処理システムが、製品を撮影した写真を受信する。ブロック306で、写真収集および処理システムでカスタマイズ画像レンダリングアセット生成命令が実行される。カスタマイズ画像レンダリングアセット生成命令が実行されると、カスタマイズ画像レンダリングアセットが生成される。
ブロック308で、カスタマイズ画像レンダリングアセットが、ウェッブサーバに送信される。複数の製品が個々に写真に取られ、写真収集および処理システムで、様々なカスタマイズ画像レンダリングアセットが複数の製品のそれぞれに対して生成されて、各カスタマイズ画像レンダリングアセットがウェッブサーバに送信される。
ブロック310で、カスタマイズ画像レンダリングアセットが、ウェッブサーバ112などのウェッブサーバで受信されて記憶される。ウェッブサーバは、様々なカスタマイズ画像レンダリングアセットを記憶する。ブロック312で、ウェッブサーバは、顧客のカスタマイズ仕様を受信する。顧客は、ユーザシステムで表示されたウェッブページ上にあるグラフィカルインターフェースを用いてインタラクティブに仕様を設定する。ユーザのカスタマイズ仕様は、カスタマイズ可能な製品に付ける(imprint)ユーザ向けのデザイン、特定のカスタマイズを入れる位置を特定する位置情報、縁飾りの色などの製品の細部の色、製品全体の色、および、他のカスタマイズ仕様の情報が含まれる。
ブロック314で、特定のカスタマイズ画像レンダリングアセットの命令が実行される。ウェッブサーバは、各カスタマイズ可能な製品に対するカスタマイズ画像レンダリングアセットを記憶する。ウェッブサーバは、受信したカスタマイズ仕様に基づいて、カスタマイズ画像レンダリングアセットの命令を実行するために、自動的に特定のカスタマイズ画像レンダリングアセットを選択する。例えば、顧客が特定のカスタマイズ可能な製品をカスタマイズするための選択を決定したのに応じて、ウェッブサーバは、特定のカスタマイズ可能な製品に対応する特定のカスタマイズ画像レンダリングアセットを選択する。情報はユーザによって設定され、受信したユーザのカスタマイズ仕様が含まれ、カスタマイズ画像レンダリングアセットに対する入力を自動的に決定するために用いられる。例えば、顧客が特定のシャツの色を選択して、カスタマイズ画像レンダリングアセットの命令が実行されると、選択された色(または選択された色に対応する色曲線)が、カスタマイズ画像レンダリングアセット命令の入力として与えられる。カスタマイズ画像レンダリングアセットの命令が実行されると、顧客の仕様に従ってカスタマイズした顧客が選択した製品を描いたカスタマイズ画像が得られる。
ブロック316で、ウェッブサーバはカスタマイズ仕様を提供するウェッブページをユーザシステム(ユーザシステム120であってもよい)に送信する。カスタマイズ画像レンダリングアセットの命令が実行された結果として決定された画像、または、その画像の変形バージョンが、ウェッブページのコンテンツに含められる。ブロック320で、受信したカスタマイズ画像を含むウェッブページがユーザシステムで表示される。
図3は、カスタマイズ画像レンダリングシステムに組み込まれる処理の一例を示したに過ぎない。他の実施形態では、異なるステップが実行されても、ステップの順番が変えられても、所定のステップがなくてもよく、あるいは、図3に示すステップに加えて追加のステップがあってもよい。
図4に、カスタマイズ可能な製品の視覚化において、分割処理の結果決定された領域情報を利用する処理の一例を示す。図4の処理は、画像処理システム204によって実行される。ブロック402で、マークアップを構成するカスタマイズ可能な製品の入力画像を受信する。画像処理システム204は、改良されたセグメンテーションを行う分割処理を開始する前に、入力画像を変形する。例えば、画像処理システム204は分割を行う前に入力画像から輝度情報を除くようにしてもよい。
ブロック404で、入力画像を色と色差の一部に基づいて複数の画像領域に分ける。図5に、入力画像を色と色差の一部に基づいて複数の画像領域に分ける処理の一例を示す。
図11に、分割処理の結果、決定された領域情報の一例を示す。領域リスト1108には決定された各領域の領域レコードが含まれる。各領域に対して、領域リスト1108は、領域に割り当てられた画像の位置である位置ID1110、画像領域の代表色(領域の平均色、または、その領域に割り当てられた最初の位置の色であってもよい)である領域の色値1112、および、領域の範囲である領域範囲の値1114を特定するものである。別の実施形態では、領域レコードには、領域のエッジ上の位置であるエッジ位置が領域内に含まれる位置の数などの追加のあるいは異なるタイプの情報が含まれてもよい。特定の領域に対応するIDは、領域リスト中の特定の領域に対応する枠(項目)の位置に基づいて決定される。例えば、領域リスト1108の最初の項目は、領域ID「1」で識別される領域に対応する。
領域リスト1108は、複数のデータ構造の何れであってもよく、これに限定するものではないが、連結リスト、配列、あるいは、連結リストの配列が含まれる。
連結領域配列1102に、一実施形態に従う連結された領域の配列の最終的な形式の一例を示す。連結領域配列1102の各連結領域配列項目では、領域IDフィールドが、連結領域配列の項目に対応する位置に割り当てられた領域を示し、次の位置フィールドが、連結領域配列の項目に対する位置と同じ領域に割り当てられた入力画像の次の位置を示す。例えば、領域IDフィールド1104は、入力画像の2番目の位置に対応し、領域IDフィールド1104に含まれる値「7」は、入力画像の2番目の位置に領域7が割当てられることを示す。次の位置フィールド1106も入力画像の2番目の位置に対応し、次の位置フィールドに設定されている値「3」は、入力画像の3番目の位置が入力画像の2番目と同じ領域が割り当てられていることを示す。
ブロック406で、分割に基づいて、少なくとも入力画像のマークアップの特定の部分を表すデータが特定される。マークアップの複数の部分を表すデータは、マークアップの特定の部分内にある1組の画像位置群である。連結領域配列1102や領域リスト1108などの決定された領域情報に基づいて、データが決定される。
画像処理システム204は、領域リスト1108に含まれる領域レコード情報に基づいて、特定の部分に対応する特定の画像領域を特定する。例えば、マークアップが黄と紫の市松模様であれば、画像処理システム204は、領域の色が黄色に近い全ての領域を特定し、それらの領域が配置される位置を特定して、効率よくマークアップの黄色の部分の位置を全て見つける。画像処理システム204は、領域リストに表された各領域の色差値を計算することで、領域の色の値が黄色に近い全ての領域を特定する。ここで、領域の色差値は、領域リスト1108に示されるように、領域の代表色が黄色からどのくらい違うかを示す。領域に対応する色差値が閾値の量よりも小さい各領域が、黄色の領域として特定され、その領域が属する各位置が黄色であると判定される。
特定の領域に属する全ての組みの画像位置群が、領域リスト1108の対応する位置IDフィールドにある最初の位置の位置IDを探すことで効率的に決定され、残りの位置が、領域リスト1108に設定された位置IDが指す位置にある次の位置フィールドから始めて、連結領域配列1102の次の位置フィールドを辿っていくこと(traversing)で決定される。例えば、領域7が属する各位置は、領域リスト1108の位置ID1110の値を見つけることで決められ、その値は「2」である。領域7が属する次の領域は、2番目の画像位置に対する次の位置フィールドを見つけることで決められ、次の位置フィールド1106は、その値は「3」である。領域7が属する次の領域は、3番目の画像位置に対する次の位置フィールドを見つけることで決められ、次の位置フィールド1106は、その値が「0」である。一実施形態では、「0」のような値は、領域が属する追加の画像位置がないことを示すために用いられる。
少なくとも特定の部分を表すデータが、入力画像中のマークアップパターンの特定の部分の色などの他の情報を示す。例えば、一旦、画像処理システム204は、マークアップの特定の部分に属する入力画像の位置を決定し、画像処理システム204は、決定された位置の色情報を決定するためにオリジナルの入力画像にアクセスするようにしてもよい。
ブロック408で、マークアップの少なくとも一部を表すデータを用いて、カスタマイズ可能な製品の視覚化や、カスタマイズ可能な製品に関する製造制御が行われる。カスタマイズ可能な製品を視覚化する際にマークアップの少なくとも一部を表すデータを用いるようにすることは、データに基づいてカスタマイズ画像をレンダリングする命令を構成するカスタマイズ画像レンダリングアセットを決定することで行われる。ここで、カスタマイズ画像レンダリングアセットは、続いてウェッブサーバで使用されるために、ウェッブサーバへ送られる。カスタマイズ可能な製品を視覚化する際にマークアップの少なくとも一部を表すデータを用いるようにすることには、データに基づいてカスタマイズ画像を決定することも含まれる。
一実施形態では、カスタマイズ画像レンダリングアセット214は、使用されるとカスタマイズされた製品を自然な輪郭や形になるように視覚化したカスタマイズ画像をレンダリングする。例えば、カスタマイズ画像のカスタマイズされた製品の色および/または形は、カスタマイズされた製品をモデルが着用したときに折り目や輪郭が自然になるように描く。画像処理システム204は、図1に描かれた入力画像などの入力画像の分析に基づいて、カスタマイズ画像などを生成するカスタマイズ画像レンダリングアセットを決定する。
画像処理システム204は、入力画像の特定の部分と同じマークアップが描かれたサンプルの参照画像の同じ特定の部分が、色または位置に関してどのように違うのかを決定するために、分割処理によって決定された領域の情報を利用する。例えば、サンプルの参照画像では、マークアップ102の各四角の線は、真直ぐで互いに平行に現れるが、カスタマイズ可能な製品が捻じれたり折れたりしているような区間では、入力画像の中の区間で傾いたり分離したりして現れている。サンプルの参照画像は、平面画像である点を除くと、入力画像に描かれたものと同じマークアップが描かれている。画像処理システム204は、サンプルの参照画像中の位置を入力画像の位置にマッピングして、2つの画像で2箇所の位置と色がどのように違うかを比較する。画像処理システム204は、入力画像とサンプルの参照画像がどのように違うかを分析した結果に基づいてカスタマイズ画像レンダリングアセット214を生成する。
カスタマイズ画像レンダリングアセット214は、カスタマイズ可能な製品に適用されるカスタマイズを描いた平面のカスタマイズ仕様画像に基づいて、カスタマイズ画像をレンダリングする。カスタマイズ仕様は、カスタマイズ可能な製品に付けるために顧客がアップロードした画像、デザイン、またはテキストである。カスタマイズ画像レンダリングアセット214は、入力画像に描かれた折り目や輪郭を描くためにカスタマイズ仕様の画像を変形することによって、一部にカスタマイズ画像を生成する。
一実施形態では、画像処理システム204は、領域情報に基づいてマークアップのグリッド画像を決定する。ここで、マークアップのグリッド画像は異なるマークアップ部分間のエッジを特定するものである。例えば、画像処理システム204は、入力画像を分割することによって特定された領域情報の一部に基づいてマークアップのグリッド画像を決定する。図12は、図1に描かれた入力画像を分割することによって特定された領域情報の一部に基づいて決定されたマークアップのグリッド画像を描画したものである。画像処理システム204は、マークアップのグリッド画像の一部に基づいて、カスタマイズ画像レンダリングアセット214を決定する。
カスタマイズ画像レンダリングアセットを決定するためにマークアップのグリッド画像を利用する処理の例が、米国特許出願第13/736,844号、米国特許出願第13/342,103号、米国特許出願第12/790,711号と、米国特許第8,174,521号、米国特許第8,175,931号、米国特許第8,090,461号の各明細書に、さらに記載されているが、他の処理が異なる実施形態で用いられる。この段落に記載された全ての特許出願および特許の内容が参照されて、ここに説明されたものとして、あらゆる目的のために、そのまま援用される。
マークアップのグリッドの線は、色分け画像のマークアップの四角間の境の形状に対応する。マークアップの線の形状がデザイン領域の製品の形状を示している。例えば、斜めになった線は、対応する位置で製品が傾いていることを示す。このような情報は、注文したデザインが カスタマイズ可能な製品のデザイン領域にプリントしたときにどのように現れるかを示すものである。一実施形態では、複数のデザイン領域があれば、デザインの形状情報が、各デザイン領域に対して決定される。図12のマークアップのグリッド画像は、粗い平行線であるが、他の実施形態では、マークアップのグリッド画像は、マークアップに基づいて決定されたものであれば、様々な異なる形状および/またはパターンであってもよい。一実施形態では、平面のデザイン画像に基づいて決定されたグリッドを、マークアップのグリッド画像に基づいて、決定されたグリッドにマッピングして、画像の様々な位置で、2つの画像で位置および/または色がどのように異なるかを比較する命令を決定する。
図12のマークアップのグリッド画像を分析して、カスタマイズ画像レンダリングアセットを決定する。カスタマイズ画像レンダリングアセットは、ユーザの仕様に従ってカスタマイズした製品を描いた画像をレンダリングするための命令で構成される。ユーザが製品に付けるユーザの画像を提供すると、カスタマイズ画像レンダリングアセットが、製品に付けられる画像が製品にどのように現れるのかを描く。カスタマイズ画像レンダリングアセットによって生成されたカスタマイズ画像に、入力画像の例と同じ形状と輪郭が描かれる。例えば、カスタマイズ画像は、入力画像の例に描かれたように同じ位置に折り目があるシャツが描かれるかもしれない。
図4は、領域情報を特定して利用する処理の一例を示したに過ぎない。一実施形態では、異なるステップが実行されても、ステップの順番が変えられても、所定のステップがなくてもよく、あるいは、図4に示すステップに加えて追加のステップがあってもよい。
他の実施形態では、決定された領域情報がカスタマイズされた製品の製造の制御に利用されてもよい。ここで、用いられる「製造」は、製造される前の製品上に特定のカスタマイズを付けることをいう。例えば、領域情報は、カスタマイズされた製品の特定のカスタマイズ部分の位置を決定し、特定のカスタマイズ部分の色と位置が期待される範囲内の色と位置になるために利用される。
他の例では、注文用の製品の提供者は、注文用の製品に顧客が指定した仕様でカスタマイズした製品を製造するメーカーに提供する。注文されたインプリント用に新しい製品を取り入れる際、メーカーは製品のインプリントのレイアウトを特定する。ここで、インプリントのレイアウトとは、デザインを付ける製品の位置を特定するものである。例えば、携帯電話ケースのメーカーは、携帯電話ケースのカメラ穴に対応する携帯電話のケースの特定の領域には、注文されたデザインが入らない領域であることを指定する。インプリントのレイアウトでは、カメラの穴より下が注文されたデザインを入れる領域として指定される。
メーカーから製品に付けるレイアウトを受信すると、提供者は注文用の製品にマークアップ画像を付けるためにメーカーに送信する。メーカーは、製品にマークアップ画像を付けて、カスタマイズされた製品を提供者に送信する。提供者は、製品の特徴に対して注文用のデザインを付けて見た目がよいかを確認するために、注文したインプリントされた製品を目で見て検査する。提供者は、検査結果に応じて付けられたレイアウトを調整するようにしてもよい。例えば、メーカーは、注文されたデザインを携帯電話のカメラの穴に対応する位置には付けないように指定したにもかかわらず失敗することがある。注文したインプリントされた製品を受信したときに、提供者は、デザインの一部がカメラの穴にかかるところにあるようなデザイン部分はよくないので、携帯電話のケースのデザインの配置は見た目がよくないと判断する。提供者はカメラの穴の領域にデザイン領域がかからないようにサイズを変えたり、カメラの他の場所にデザイン領域を移動させたりする。一実施形態では、提供者は、メーカーによる検討および承認のために別のインプリントのレイアウトをメーカーに提案するようにしてもよい。
2.3 マークアップ画像分割処理の例
図5に画像分割処理の一例を示す。図5の処理は、画像処理システム204によって実行される。ブロック502で、色差値は入力画像内の複数の位置の各位置に割当てられる。ある実施形態では、各位置は、入力画像の別個のピクセルであり、入力画像の各ピクセルに色差値が割り当てられる。色差値は対応する位置の色が隣接した位置の色とどのくらい違うかを示すものである。
一実施形態では、特定の位置の色差値は、特定の位置の色と2,4,および6個分位置が離れている位置の色を比較して決定される。色差値は、それぞれの距離に応じて計算され、3つの色値(それぞれが異なる距離の関連する)が平均されて、最終的な色差値を決定する。色差値の平均をとることには、距離が近い色差値より距離が離れている色差値の重みを大きくする重み付けが含まれてもよい。中心のピクセルの色と、ある距離離れたところにある異なる位置でサンプリングされた色の平均値がどのくらい違うかを決定することで、距離に対する色差値が計算される。2つの位置の色差値は、2つの色間の違いの内積を計算することで算出される。
図6に、中心位置に対する色差値を決定するために分析される色の位置を表す図の一例を示す。一実施形態では、中心位置602に対する色差値を、式1を用いて計算する。
他の実施形態では、色差値の決定は、より多くまたはより少ない位置でサンプリングしたもの、異なる距離の位置でサンプリングしたもの、および/または、決定された色差値に対して異なる重みを割り当てたもので構成してもよい。
ブロック504で、色差値間の変動が減少するように色差値を平滑化する。一実施形態では、相対的に高い色差値および相対的に低い色差値がそれぞれ、より低くおよびより高くなるように変える。例えば、最も高い色差値の上位10パーセント、または、最も低い色差値の10パーセントにある色差値のみが変更される。一実施形態では、モノクロ画像が入力画像に基づいて生成され、各ピクセルの色はそのピクセルの色差値を表す。色差値の平滑化には、モノクロの色差値画像に対してガウシアンフィルターを適用する手法が含まれる。領域を割り当てる前に色差値の平滑化を行うことで、入力画像を必要以上に分割しないようにすることができる。
ブロック506で、位置をその位置に関する色差値に基づいてソートする。ソートには、その位置に関する色差値に基づいて、画像位置を異なるグループに分けることが含まれてもよい。図8に、色差値に基づいて画像位置をソートする処理の一例を示す。ブロック508で、位置が領域に割り当てられ、領域に対する位置の割り当てが、少なくとも一部はソート順に基づいて発生する。図10に、領域に対して画像位置を割り当てる処理の一例を示す。
画像処理システム204は、分析して入力画像の一部を領域に分けたり、分析して全ての入力画像を複数の画像領域に分けたりする。画像処理システム204は分析して入力画像の一部を領域に分ける実施形態では、色差値と領域割り当てが、入力画像の領域の一部分の位置に対してのみ決定される。
図5は、画像分割処理の一例を示したに過ぎない。他の実施形態では、異なるステップが実行されても、ステップの順番が変えられても、所定のステップがなくてもよく、あるいは、図5に示すステップに加えて追加のステップがあってもよい。
図7に、それぞれの位置に関連する色差値に基づいて位置をソートするために用いられる色差データの一例と、ソート処理の結果を得るために用いられるソートリストおよび色差配列の一例を示す。ソートリスト712と連結領域配列706は、色差配列702に基づいてデータが設定される。
色差配列702は、入力画像の各位置に対して決定された色差値を示す。色差配列702の各枠(項目)は入力画像の特定の位置に対応し、枠(項目)の値が入力画像の対応する位置の色差値を示す。
ソートリスト712には、色差配列702に含まれる各色差値の大きさに応じた項目を設ける。例えば、色差配列702の色差値が1−5の範囲であれば、ソートリスト712は5つの項目で構成される。一実施形態では、ソートリスト712に全てデータが設定されると、ソートリスト712の各項目は、特定の大きさに関連づけられ、(1)特定の色差値の画像位置、および/または、特定の色差値の画像位置に対応する連結領域配列の項目を指す値、または、(2)入力画像に特定の大きさの色差値の位置がないことを示す値(例えば、値が「0」)、のどちらかが含まれる。例えば、ソートリスト712の最初の項目であるソートリストの項目714に色差値の大きさ「1」に関連付けられる。ソートリストの項目714に「12」が設定されていると、それは、入力画像の12番目の位置だけでなく、連結領域配列706の12番目の位置(連結領域配列の項目712)を指す。色差値704の値「1」によって示されるように、入力画像の12番目の位置が、色差値704が「1」であることに関連付けられる。
連結領域配列706には、入力画像の各位置に対して項目が設けられ、各項目は特定の位置に対応する。各項目は領域IDフィールドと次の位置フィールドで構成される。連結領域配列706の領域IDフィールドに全てデータが設定されると、各領域IDフィールドには、対応する位置に割当られた領域を示す値が設定される。例えば、領域IDフィールド708は入力画像の2番目の位置に対応し、領域IDフィールド708に設定されている値「7」は、入力画像の2番目の位置が領域7に割り当てられたことを示している。領域割当処理が起動されるまでは、連結領域配列706の領域IDフィールドが空のままで残っていたり、0や他の値で初期化されていたりする。
ソート処理に従って連結領域配列706の次の位置フィールドに全てデータが設定された後、特定の次の位置フィールドの値は、(1)特定の「次の位置」に関連する入力画像の位置と同じ色差値に関する他の画像位置を指す、および/または 特定の次の位置フィールドに関連する入力画像の位置と同じ色差値に関する他の位置に対応する他の連結領域配列の項目を指す、または、(2)特定の次の位置フィールドに対応する入力画像位置と同じ色差値を持つ画像位置に対応する連結領域の項目がこれ以上ないことを示す。
一実施形態では、画像処理システム204は、各画像位置に対して、入力画像の位置に対応する連結領域配列の項目と色差配列の項目を特定するためのマッピングを保持する。他の実施形態では、単一の位置IDが色差配列702の特定の色差配列項目、連結領域配列706の特定の連結領域配列項目、および、特定の画像位置を指すように、連結領域配列706と色差配列702におけるデータの並び順が画像位置の並び順に対応する。例えば、ソートリストの項目714の値「12」は、色差配列702の12番目の項目と、連結領域配列706の12番目の項目の両方を指し、両方が入力画像の12番目の位置に対応する。ソートリストの項目714の値「12」は、入力画像の12番目の位置も指す。
ソートリスト712と連結領域配列706が、領域割当処理を行っているときに用いられ、特定の色差値および/またはそれに対応する連結領域配列の項目に関連する全ての画像位置を効率的に配置する。同じ色差値を持つ画像位置に対応する様々な連結領域配列の項目が、連結領域配列の次の位置フィールドを介して連結される。色差値に対応する画像位置を指すソートリスト712の中から特定の色差値に対応するソートリストの項目を最初に検索することで、特定の色差値に関連する各位置が効率的に特定される。特定の色差値に関連付けられる残りの画像位置は、続く連結領域配列706の次の位置フィールドによって特定され、連結領域配列のそれぞれは特定の色差値に関連付けられる次の画像位置、または、特定の色差値に関連付けられる次の画像位置に対応する次の連結領域配列の位置を指す。
例えば、色差値「1」に対応する各入力画像の位置が、値「1」に対応するソートリストの項目(ソートリスト712の最初の項目であるソートリストの項目714)にアクセスすることで特定される。ソートリストの項目714は、色差値「1」の最初の画像位置を特定する。ソートリストの項目714の値には「12」が設定されているので、画像処理システム204は、入力画像の12番目の位置が色差値「1」に関連付けられていると判定する。色差値「1」に関連付けられる次の画像位置は、連結領域配列706の12番目の位置に対する「次の位置フィールド」である次の位置フィールド710にアクセスすることによって決められる。次の位置フィールド710には、色差値「1」に関連付けられるそれ以上の位置がないことを示す「0」などの値が設定されている。他の実施形態では、12番目の位置に対する次の位置フィールドが、色差値「1」に関連付けられる他の画像位置、または色差値「1」に関連付けられる画像位置に対応した他の連結領域配列の項目を指すようにしてもよい。
図8に、色差値に基づく画像位置のソート処理の一例を示す。処理は、色差値に基づいて、ソートリストと連結領域配列にデータを設定するように構成する。処理は、画像処理システム204によって実行される。画像処理システム204は、対応する画像位置にそれぞれ関連付けられた色差配列の値の初めから終わりまで繰り返し処理を行い、ソートリストまたは連結領域配列のどちらかに、対応する画像位置を示す位置識別子を記憶する。ソートには、例えば、特定の位置の位置識別子を同じ色差値の他の位置を示す位置識別子のリストに追加することで、同じ色差値を持つ画像位置のグループにまとめることが含まれる。
図9に、図8に示す処理に従って、色差配列702に記憶された色差値に基づいて一部にデータが設定されたソートリストと連結領域配列の内容を示す。ソートリスト902A、902Bと連結領域配列906A、906Bは、同じソートリストと連結領域配列の異なる状態を示しているが、図8の処理に従って、色差配列702に基づいてデータが設定される。ソートリスト902Aと連結領域配列906Aは、図8に示す処理を1回だけ行った時のソートリストと連結領域配列を示す。ソートリスト902Bと連結領域配列906Bは、図8の処理を2回繰り返した時のソートリストと連結領域配列を示す。図8の処理を開始する前は、ソートリスト902Aと連結領域配列は初期値のみが入っている。例えば、ソートリスト902Aと連結領域配列906Aは図4の処理が開始する前は、値は何も入っていない、あるいは、全てに値「0」が入っていてもよい。
ブロック802で、画像処理システム204は現在位置の色差値を決定する。処理の開始時は、現在位置は入力画像の最初の位置である。現在位置の色差値は、現在位置に対応する色差配列の項目の値にアクセスして決定する。ある実施形態では、色差配列の色差値は、色差値に対応する位置の順にしたがって並べられる。例えば、最初の画像位置に対する色差値が、色差配列の最初の項目の値になる。
次のブロック804で、画像処理システム204は、決定された色差値に対応するソートリストの項目に既に位置IDが設定されているかを判定する。決定された色差値に対応するソートリストの項目に位置IDが設定されているかの判定は、ソートリストの項目に初期値とは異なる色差値が設定されているかを判定することで行われる。例えば、ソートリスト902Aは「0」の値で初期化され、決定された色差値に対応するソートリストの項目に位置ID設定されているかの判定は、ソートリストの項目に「0」以外の値が設定されているかを判定することで行われる。
画像処理システム204が、決定された色差値に対応するソートリストの項目に位置IDが設定されていないと判定した時は、処理はブロック806に進んで、決定された色差値に対応するソートリストの項目に現在位置の位置IDが記憶される。ソートリストと連結領域配列のデータ設定処理が行われている間に、以前に現在位置と同じ色差値を持つ位置が検討されていなければ、ソートリストには位置IDが設定されない。例えば、1回目の処理が行われると、画像処理システム204は、色差配列702の最初の値(その値が「4」である)を捜して、最初の画像位置の色差値を決定する。これに応じて、ソートリスト902Aの4番目の項目であるソートリスト項目904Aを更新して、最初の画像の位置IDの値「1」を記録する。ソートリスト904Aは、前もって「0」または他の初期値が設定されている。
ブロック812で、画像処理システム204は、現在位置が入力画像の最後の位置であるかを判定する。現在位置が入力画像の最後の位置でなければ、処理はブロック814に進み、現在位置を入力画像の次の位置まで増やす。例えば、1回目の処理が完了した後で、現在位置を入力画像の2番目の位置に増やして、入力画像の2番目の位置を入力画像の現在位置として、図8の処理が繰り返される。
ブロック802で、新たな現在位置の色差値が、色差配列702の色差値716を探して「4」に決定される。ブロック804で、処理は、決定された色差値に対応するソートリストの項目に位置IDが既に設定されているかを判定する。値「4」に対応するソートリストの項目、ソートリスト項目904Aには、位置ID「1」が設定されている。このように、決定された色差値に対応するソートリストの項目に位置IDが既に設定されていれば、処理がブロック808に進められる。
ブロック808で、ソートリストの項目に既に記録された位置IDを、連結領域リストの現在位置に対する次の位置フィールドに移動する。例えば、ソートリストの項目904Aに記録された値「1」を、連結領域配列906Bの2番目の画像位置に対する次の位置フィールドである次の位置フィールド908Bに移動する。ブロック810で、現在位置の位置IDを、ソートリストの配列のうち決定された色差値に対応するソートリストの項目に記憶する。例えば、入力画像の2番目の位置の位置IDの値「2」を、色差値「4」に対応するソートリストの項目であるソートリストの項目、ソートリスト項目904Bに記録する。
ブロック812で、画像処理システム204は、現在位置が入力画像の最後の位置であるかを判定する。現在位置が入力画像の最後の位置である場合は、ブロック816で処理は終了する。現在位置が入力画像の最後の位置でない場合は、処理はブロック814に進み、現在位置が入力画像の次の位置まで増やされる。分析する画像位置がなくなるまで、各位置で処理が繰り返される。図8の処理が完了すると、ソートリストと連結領域配列の次の位置フィールドの全てに入力画像の各位置の位置IDが入れられる。
各位置の情報を辿って領域割当処理が行われている間は、連結領域配列とソートリストが用いられ、位置の色差値に基づいた順番にしたがってその位置が検討される。一実施形態では、色差値が小さい位置、すなわち、その位置の近くの位置の色がとても似ているような位置が、色差値が大きい位置より先に領域が割り当てられる。例えば、決定された色差値の範囲が1−5の画像に対して、画像処理システム204は、最初に色差値が1の各位置に領域が割り当てられ、続いて色差値が2の各画像位置に対して領域が割り当てられ、全ての位置に領域が割り当てられるまで続けられる。
一実施形態では、画像位置に割り当てられた領域が比較的少ない場合は、他の画像位置が割り当てられていない新しい領域が、画像位置に割り当てられる可能性が高い。例えば、検討中の入力画像の位置に隣接する1以上の画像位置に領域が既に割り当てられている場合は、検討中の入力画像の位置に対する領域は隣接する領域の1つから選択される。検討中の入力画像の位置に、領域が割り当てられてない画像位置だけが隣接している場合には、入力画像の位置に、画像位置が割り当てられてない新しい画像領域が割り当てられる。このような処理に従って、最初に領域の割り当てが検討された入力画像の位置は、決定された領域の中心にあり、他の領域との境界の位置では無い可能性が高い。つまり、その色差値に基づいて位置に領域を割り当てることにより、色差値が小さい位置(すなわち、その周囲にある位置ととても似ている位置)は、決定された領域の中心、または、他の領域との境界ではない位置にある可能性が高い。このような画像分割手法の結果として、他の手法に従って決定された領域よりさらに均一な色の領域に分けられた分割画像が得られる。
図8は、色差値に基づいて画像位置の並び替えを行う処理の一例を示したに過ぎない。他の実施形態では、異なるステップが実行されても、ステップの順番が変えられても、所定のステップがなくてもよく、あるいは、図8に示すステップに加えて追加のステップがあってもよい。
図10は、画像位置を領域に割り当てる処理の一例である。処理は、画像処理システム204で実行される。ブロック1002で、入力画像の位置が現在の位置として選択される。一実施形態では、現在位置の決定は、最初または次の画像位置を決定するためにソートリストの項目または連結領域配列の項目のいずれかにアクセスすることで行われる。図10の処理が1回行われる間に、色差値が見つけられた全ての中で最も色差値の大きさが小さいものに対応するソートリストの項目にアクセスして、最初の現在位置を決定する。ソートリストの項目に設定された値は、入力画像の中の最も小さい色差値を持つ画像位置を指す。例えば、ソートリスト712のソートリストの項目714にアクセスして、最初の現在位置を決定する。ソートリストの項目714に設定された位置ID「12」に基づいて、画像処理システム204は入力画像の12番目の位置を、最初の現在位置として決定する。
ブロック1004で、現在位置に隣接する領域群が特定される。現在位置に隣接する領域群には、現在位置に隣接している1つ以上の位置が割り当てられた領域が全て含まれる。例えば、1つの位置が4つの他の位置に隣接し、そのうちの1つに領域「1」が割り当てられ、そのうちの2つに領域「2」が割り当てられる場合、現在位置に隣接する領域群には「1」と「2」が含まれる。隣接する位置として検討される特定の位置は、様々な実施形態に従って変えてもよい。例えば、隣接している位置には、現在位置の直ぐ上、下、左側、右側の4つの位置を全て含むようにしてもよい。他の実施形態では、隣接する位置は、さらに、現在位置の斜めに隣接する4つの位置を含むようにしてもよい。
次に、ブロック1006で、画像処理システム204は異なる隣接領域の数が0に等しいか判定する。その場合は、画像処理システム204は、ブロック1008の動作を実行し、他の位置が割り当てられていない新しい領域を現在位置に割り当てる。画像処理システム204は、異なる隣接領域の数が0でない場合は、ブロック1010で、画像処理システム204は異なる隣接領域の数が1に等しいか判定する。その場合は、ブロック1012で、画像処理システム204は、1つだけの隣接領域を現在位置に割り当てる。
画像処理システム204は、異なる隣接領域の数が0でも1でもない場合には、画像処理システム204は、ブロック1014で、異なる隣接領域の数が2に等しいか判定する。その場合は、ブロック1016で、画像処理システム204は、2つの隣接領域が十分に類似していて併合することができるか判定する。2つの隣接領域が十分に類似していて併合することができるかの判定は、一方の領域の代表色と他方の領域の代表色を比較することで行われる。
一実施形態に従えば、2つの色の差の内積が特定の差分量の閾値よりも小さい場合には、2つの色が十分に類似していて併合することができる。例えば、2つの領域の代表色が(A,B,C)と(X,Y,Z)であるとすると、下の表記1が真であれば併合することができる。
[表記1]
((A-X),(B-Y),(C-Z))・((A-X),(B-Y),(C-Z)) < 閾値
ある実施形態では、画像の色は3次元で表される。例えば、色は3つの色値で構成されるRGBモデルを用いて表される。他の実施形態では、画像の色が別の数の次元で表されてもよい。例えば、色が4次元のCMYK色モデルで表されてもよい。つまり、ここに記載される処理は、特定の次元の色で表される画像に限定される必要はない。
様々な実施形態によれば、代表色は、これまでの領域に割り当てられた位置の色の平均であってもよく、領域に割り当てられた最初の位置の色であってもよい。領域の代表色は、新しい位置を領域に追加するたびに更新される領域の領域レコードにアクセスすることによって決定される。
画像処理システム204は、2つの領域が十分に類似しているので併合できると判定すると、ブロック1022で、画像処理システム204は、2つの領域の一方の領域を2つの領域の他方の領域へ併合する。一実施形態では、2つのうち後で見つけた領域を、2つのうちの先に見つけた領域に併合する。
一実施形態では、位置を領域に割り当てるということは、その位置に対応する領域リストの項目にその領域を示す値を記憶することである。領域が割り当てられた最初の領域は、領域ID「1」の領域に割り当てられる。次にくる位置は、以前にどの位置にも割り当てられたことがない新しい領域に割り当てられ、新しい領域の領域IDとして領域ID「2」が選択される。つまり、新たに割り当てられる各領域は、既に1以上の位置に割り当てられた領域よりも大きい数値が割り当てられる。この手法に従うと、2つの領域の領域IDを比較することで、2つの領域のうち新しい領域が特定される。
一実施形態では、2つのうちの後に見つけられた領域が、常に2つのうちの先に見つけられた領域に入れられ、併合する2つの領域を特定する領域IDの値を比較して併合した後に、特定の領域がその領域IDを維持する領域として選択される。小さい数値の領域IDを持っている領域が、その領域IDを維持する領域として選択される。選択された領域を指す領域IDで置き換えられた領域リスト中の領域IDの各インスタンスによって、他の領域が選択された領域に「併合される」。
例えば、2つの領域が併合され、1番目の領域が領域ID「10」に関連付けられ、他の領域が領域ID「14」に関連付けられている場合は、領域ID「14」に対応する領域が領域ID「10」に対応する領域に併合される。領域リストの値「14」が発生する度に、値「10」に置き換えられる。
他の実施形態では、新しい領域のそれぞれに番号を増やしながら割り当てられ、より大きい番号の領域IDを持つ領域が他の領域に併合される領域として選択される。
一実施形態では、1つの隣接位置の領域を他の隣接位置の領域に併合することが決定したのに応じて、他の領域を併合するために選択された領域(「選択領域」)を現在の位置に割り当てる。ある実施形態では、位置に領域を割り当てるということは、領域を示す値をその位置に対応する領域リストの項目に記憶することであり、選択領域を示す値が、現在位置に対応する項目に記憶される。一実施形態では、2つの領域の併合が決定したのに応じて、領域リスト内の選択領域でないことを示す他の値が全て、選択領域を指す値に即座に置き換えられる。この文脈で「即座」とは、値が更新されるまで、他の値が領域を割り当てるために検討されることがないことをいう。
他の実施形態では、現在位置に対応する項目だけが、決定に応じて即座に更新される。他の領域に併合される領域がどれであるかの印が記録され、画像中の各位置に領域IDが割り当てられた後に、選択領域でないことを示す領域IDが入っている領域リストの残りの項目が更新され、選択領域を指す領域IDを設定する。
一実施形態では、領域IDの値が大きい領域は、領域IDの値が小さい領域の領域IDを一貫して採用する、あるいは、一貫して逆であってもよい。併合された領域の領域IDの更新は、各位置の領域IDが記憶されているリストを1回辿ることで完了する。
ブロック1024で、2つの領域が併合されると、他の領域が併合された領域に現在の位置が割り当てられる。
画像処理システム204は2つの領域が併合できるほど十分に類似していないと判断した時は、ブロック1018で、画像処理システム204は、現在位置の色と隣接する領域の代表色を比較して、現在位置に色が最も類似している領域に現在位置を割り当てる。一実施形態では、2つの色差の量、現在位置の色と1つの領域の代表色とを比較した1つの色差の量と、現在位置の色と他の領域の代表色とを比較した他の色差の量とが、計算される。2つの色を比較した色差の量は、2つの色の差の内積を計算することにより決定される。色に関して現在位置とは違いが最も少ない領域が、選択領域として特定される。
画像処理システム204が隣接する領域の数が0,1,または2と等しくないと判定したときは、画像処理システム204はブロック1020に進む。この場合、現在位置が少なくとも3つの異なる領域に隣接する。ブロック1020で、画像処理システム204が、隣接する領域群のうち現在位置の色に最も似ている代表色をもつ領域に現在位置を割り当てる。そのような領域は、3つの領域それぞれについて色差値を計算することで特定され、領域のダイバージェンス(divergence)値が領域の代表色が現在位置の色とどのくらい違うかを示す。色差値が最も小さい領域が現在位置に割り当てられる割当領域として選択される。
領域が現在位置に割り当てられると、ブロック1026で、画像処理システム204は、現在位置に割り当てられた領域の領域レコードを更新する。1つの領域に対して保持される領域レコードは、領域に割り当てられた最初の色、領域に割り当てられた色の平均値、および/または領域の範囲を特定する。
ブロック1028で、検討する位置がさらにある場合は、現在位置を次のソートされた位置まで増やす。現在位置に対する次の位置にアクセスすることによって、少なくとも一部では次のソートされた位置が特定される。例えば、現在位置が入力画像の12番目の位置である場合は、入力画像の12番目の位置に対応する次の位置フィールドは、次のソート位置を指す。入力画像に現在位置と同じ色差値の他のすべての位置に既に領域に割り当てられていれば、次の位置フィールドは0のような初期値が設定される。この場合、次のソートされた位置が、色差値の大きさが次に大きいソートリストの項目にアクセスすることによって決定される。例えば、ソートリストの項目718は色差値の大きさ「2」に対応し、値「7」が設定されている。従って、次のソート位置は入力画像の7番目の位置である。例えば、現在位置の色差値が「1」であれば、色差値が「2」のソートリストの項目にアクセスすることによって、次の位置を決定する。ソートリストに検討されていない項目がない場合には、さらに検討する位置はなく、図10の処理には終了する。
図10は、画像位置を領域に割り当てる処理の一例を示したに過ぎない。他の実施形態では、異なるステップが実行されても、ステップの順番が変えられても、所定のステップがなくてもよく、あるいは、図10に示すステップに加えて追加のステップがあってもよい。
一実施形態では、領域割当処理が完了した後に、連結領域配列706の次の位置フィールドに設定された位置IDの少なくともいくつかが、別の位置IDに置き換えられる。置き換え前は、特定の画像位置に対応する次の位置フィールドに記憶された位置IDが他の画像位置、または、他の画像位置に対応する連結領域配列の項目を示すが、他の画像位置は、特定の位置と同じ色差値に関連するものである。置き換え後は、特定の画像位置に対応する次の位置フィールドに記憶されている位置IDは、他の画像位置、または他の画像位置に対応する連結領域配列の項目を指すが、他の画像位置は、特定の位置と同じ領域に割り当てられたものになる。つまり、置き換え後、連結領域配列の次の位置フィールドが、同じ色差値に関連する他の位置に変わって同じ領域の他の位置につながる。連結領域配列1102は変更後の連結領域配列に記録された値を示す連結領域配列の一例である。
2.4 他の形態および拡張
明確に例を示すために、上記のように、図7、9、および11に個々のデータ構造を示す。しかし、様々な実施形態において、各データ構造が複数のデータ構造で構成されていてもよい。さらに、他の実施形態では、ここに記載の色差値、次の位置情報、領域ID、および位置IDなどのデータのそれぞれは、どのような種類のデータ構造で記憶されていてもよく、配列や連結されたリストに限定されるものではない。
前記の記載のあらゆる場所に、および、実施形態の内容を理解するのに最も容易にする位置に、別の実施形態が記載されている。さらに、発明は、それらの特定の実施形態を参照しながら記載される。しかしながら、より広い発明の概念から離れることなく、様々な修正や変更が発明に入れられることは明らかであろう。従って、明細書および図面は、それに応じて、限定的する趣旨ではなく実例として見なされる。
さらに、この記載において、いくつかの処理ステップが、特定の順番、アルファベットの順番で説明され、英数字のラベルがいくつかのステップを特定するために用いられる。記載中に特に決められてない場合は、そのようなステップを実行する特定の順番に実施形態を限定する必要はない。特に、ラベルは便宜上ステップを特定するために用いられるだけであって、そのようなステップを実行する特定の順番を特定し、あるいは要求することを意図するものではない。
ここに記載された様々な実施形態の関数の実装は、ハードウェア、ソフトウェア、ファームウェア、および/または、利用可能な他の機能部品または構成要素で、同等に組み込まれる。特定の装置またはプログラムの順番に限定されることを意図するものではない。他の変更や実施形態が、上記の技術に照らして利用可能である。
3.実装の仕組み―ハードウェアの概要
一実施形態に従えば、ここに記載の技術は、1以上の専用コンピューター装置によって実施される。専用コンピューター装置は、この技術を実行するハードウェアであっても、または、この技術を実行するためのプログラムを永久的に記憶する1以上の特定用途向け集積回路(ASIC)やFPGA(field programmable gate arrays)などのデジタル電子装置を設けるようにしても、または、ファームウェア、メモリ、他の記憶部、あるいは、これらの組み合わせに記憶されたプログラム命令に従って、この技術を実行するようにプログラムされた汎用のハードウェアの処理部を設けるようにしてもよい。このような専用コンピューター装置は、技術を達成するために、カスタマイズされたハードウェアロジック、ASIC、または、プログラムをカスタマイズしたFPGAを組み合わせたものであってもよい。専用コンピューター装置は、デスクトップコンピューターシステム、ポータブルコンピュータシステム、ハンドヘルド装置、ネットワークデバイス、または、技術を実装するためのハードウェア論理回路および/またはプログラム論理回路が組み込まれた他の装置であってもよい。
例えば、図13は、本発明の実施形態を実装したコンピューターシステム1300を示すブロック図である。コンピューターシステム1300には、情報を通信するためのバス1302、または、他の通信機構と、情報を処理するためにバス1302に接続されたハードウェアプロセッサ1304とを備える。ハードウェアプロセッサ1304は、例えば、汎用のマイクロプロセッサであってもよい。
コンピューターシステム1300には、ランダムアクセスメモリ(RAM)または動的記憶装置などのメインメモリ1306を備え、情報、および、プロセッサ1304で実行される命令を格納するためにバス1302に接続される。メインメモリ1306は、プロセッサ1304で実行される命令の実行中は、一時的な変数や他の中間情報を記憶するためにも用いられる。このような命令がプロセッサ1304でアクセス可能な記憶媒体に格納されると、コンピューターシステム1300が、命令で特定されたオペレーションを実行してカスタマイズされた専用マシンとして機能する。
コンピューターシステム1300はさらに読み出し専用メモリ(ROM)1308またはバス1302に接続された他の静的記憶装置が設けられ、静的な情報とプロセッサ1304の命令が格納される。磁気ディスクや光ディスクのような記憶装置1310が提供され、情報と命令とを格納するためにバス1302に接続される。
コンピューターシステム1300は、コンピューターユーザに情報を表示するために、陰極線管(CRT)などディスプレイ1312がバス1302を介して接続される。入力装置1314は、アルファベットキー、数字キー、および他のキーが設けられ、情報とコマンドの選択をプロセッサ1304に通信するためにバス1302に接続される。他のタイプのユーザ入力装置は、マウス、トラックボール、または、カーソル方向キーなどの方向の情報とコマンドの選択をプロセッサに伝えるカーソル制御装置1316であり、ディスプレイ1312上のカーソルの動きを制御する。この入力装置は、通常、第1軸(例えば、X)と第2軸(例えば、Y)の2軸の2自由度があり、この装置で平面上の位置を指定する。
コンピューターシステム1300は、カスタマイズしたハードウェア論理回路、1以上のASICまたはFPGA、ファームウェアおよび/またはプログラム論理回路を用いて、コンピューターシステム1300を専用機として機能させるために、これらをコンピューターシステムと組み合わせて、または、コンピューターシステム1300をプログラムすることで、ここに記載された技術を実装する。一実施形態に従えば、メインメモリ1306に含まれる1以上の命令の1以上のシーケンスをプロセッサ1304が実行することで、ここに記載された技術がコンピューターシステム1300によって機能する。このような命令が、記憶装置1310などの他の記憶媒体からメインメモリ1306に読み込まれる。メインメモリ1306に組み込まれた命令のシーケンスの実行することで、プロセッサでここに記載された処理ステップを実行する。他の実施形態では、ハードウェア回路が、ソフトウェア命令の代わりに、または、ソフトウェア命令と組み合わせて用いられる。
ここで用いられる「記憶媒体」は、機械を特定の手法で操作するデータおよび/または命令を格納するあらゆる媒体を指す。このような記憶媒体は、不揮発性媒体および/または揮発性媒体で構成される。不揮発性媒体には、例えば、記憶装置1310のような光ディスクまたは磁気ディスクが含まれる。揮発性媒体には、メインメモリ1306などのダイナミックメモリが含まれる。記憶媒体の通常の形式には、例えば、フロッピーディスク(登録商標)、フレキシブル(登録商標)ディスク、ハードディスク、ソリッドステートドライブ、磁気テープ、または他の磁気データ記憶装置や、CD−ROMまたは他の光データ記憶装置や、あらゆる穴のパターンがある物理的な媒体や、RAM、PROM、EPROM、FLASH−EPROM、NVRAM、他のメモリチップ、またはメモリカートリッジが含まれる。
記憶媒体は、伝送媒体とは別のものであるが、伝送媒体と一緒に用いられてもよい。伝送媒体は、記憶媒体間の情報の転送に関するものである。例えば、伝送媒体には、同軸ケーブル、銅線、および、光ファイバーであり、バス1302を構成する線が含まれる。また、伝送媒体には、電波や赤外線のデータ通信中に生成される音波または光波の形式をとるものがある。
媒体の様々な形式には、プロセッサ1304で実行される1以上の命令の1以上のシーケンスを搬送するものが含まれる。例えば、命令は、開始時に、離れて置かれるコンピューターの磁気ディスクやソリッドステートドライブ上に運ばれる。離れて置かれたコンピューターはダイナミックメモリ上に命令をロードして、モデムを用いた電話回線で命令を送信する。コンピューターシステム1300にローカル接続されたモデムで電話回線からデータを受信することができ、データを赤外線信号に変換するために赤外線送信器を用いる。赤外線検出器は赤外線信号で運ばれたデータを受信し、適切な回路でデータをバス1302に載せることができる。バス1302は、メインメモリ1306にデータを運び、プロセッサ1304がメインメモリから命令を取り出して実行する。メインメモリ1306で受信された命令は、プロセッサ1304で実行する前または実行した後に記憶装置1310に任意に格納してもよい。
コンピューターシステム1300は、バス1302に接続された通信インターフェース1318を備える。通信インターフェース1318は、ローカルネットワーク1322に接続するネットワーク回線1320に接続している双方向のデータ通信を提供する。例えば、通信インターフェース1318は、サービス総合デジタル網(ISDN)カード、ケーブルモデム、衛星モデム、またはモデムであってもよく、電話回線のタイプに対応したデータ通信接続を提供する。他の一例として、通信インターフェース1318はローカルエリアネットワーク(LAN)カードであってもよく、互換性のあるLANにデータ通信接続を提供する。また、無線回線が実装されてもよい。このようなあらゆる実装において、通信インターフェース1318は、様々なタイプの情報を表すデータの流れを運ぶ電気信号、電磁気信号、または光信号を送受信する。
ネットワーク回線1320は、通常は、1以上のネットワークを通じて他の装置とのデータ通信を提供する。例えば、ネットワーク回線1320は、ローカルネットワークを通じてホストコンピュータ1324、または、インターネットサービスプロバイダー(ISP)1326によって操作されるデータ機器に対する接続を提供する。同様に、ISP1326は、一般的には「インターネット」1328といわれるワールド ワイドパケットデータ通信ネットワークを介したデータ通信サービスを提供する。ローカルネットワーク1322とインターネット1328の両方は、デジタルデータの流れを運ぶ電気信号、電磁気信号、光信号を用いる。様々なネットワークを介した信号と、ネットワーク回線1320上の通信インターフェース1318を介した信号は、デジタルデータをコンピューターシステム1300とやり取りするものであり、伝送媒体の形態の一例である。
コンピューターシステム1300は、ネットワーク、ネットワーク回線1320、および通信インターフェース1318を介して、プログラムコードを含むメッセージを送信したり、データを受信したりする。インターネットの例では、サーバ1330がインターネット1328、ISP1326、ローカルネットワーク1322、および通信インターフェース1318を介して、アプリケーションプログラムに要求コードを転送する。
受信したコードは、受信されると、プロセッサ1304で実行され、後で実行するために、記憶装置1310あるいは他の不揮発性記憶に記憶される。
前述の明細書において、本発明の実施形態が、実装から実装へと変わる様々な多数の詳細な形態を参照しながら記載された。従って、明細書と図面は、これに限定されることなく実際の例としてみなされるべきである。本発明の範囲の唯一かつ排他的な指標は、出願人が意図する本発明の範囲であって、本出願で公表された請求項の文言およびその均等物の範囲であり、あらゆる後の補正も含まれる。
4.分割処理の命令の一例
以下は、画像を複数の領域に分割する命令の一例である。命令の少なくとも一部が、マークアップ領域特定命令210の一実施形態において含まれる。
Initialization
Take the ColorImageInput, BucketSortList, LinkedRegionImage and ColorDistanceThreshold as inputs.
Allocate output Objects
aRegionList = new RegionList();
aRegionList.Init()
Allocate temporary variables
Uint32 array pointer LinkedPixelBuffer
Uint16 array pointer ColorPixelBuffer
Uint32 currentPixelIndex
Uint32 array pointer CurrentLinkedPixel
Uint16array pointer CurrentColorPixel
Uint32 currentRegionID.
Uint32 nextRegionID.
Uint32 aRegionFound
Uint32 currentRegionFoundCount.
Uint64 minDifference
Uint64 currentDifference
Set LinkedPixelBuffer = AddressOf(LinkedRegionImage[0][0])
Set ColorPixelBuffer = AddressOff(ColorImageInput[0][0]))
Allocate temporary static arrays
tempRegionRecord Array
Neighborhood Array
FoundRegions
FoundCount
Number of regions found
Fields
Uint32 RegionID
Size
Neighborhood.Size
For each non zero value, n, in the BucketSortList // traverse the bucket sort list
Set currentPixelIndex = n
While currentPixelIndex != 0 // traverse the linked list in LinkedPixelBuffer
Set CurrentLinkedPixel to LinkedPixelBuffer+ currentPixelIndex
Set CurrentColorPixel to ColorPixelBuffer + (currentPixelIndex*2)
Set FoundRegions. FoundCount = 0
Set aRegionFound = 0
For each element, k, of the NeighboorHood Array
Set currentRegionID = CurrentLinkedPixel[NeighboorHood[k]-1]
If currentRegionID != 0)
currentRegionID = tempRegionRecord[currentRegionID]. RegionTag
For each element, j, of the FoundRegions Array where (j < FoundRegions .FoundCount)
If currentRegionID = FoundRegions[k]. RegionID
Set aRegionFound = currentRegionID
If aRegionFound != 0
Set FoundRegions[FoundRegions .FoundCount] . RegionID = aRegionFound
Increment FoundRegions .FoundCount
If FoundRegions.FoundCount = 0
Set currentRegionID = tempRegionRecord.RegionCount
Copy CurrentColorPixel to tempRegionRecord[currentRegionID].AccumulatedColor
Set tempRegionRecord[currentRegionID].RegionArea = 1
Set tempRegionRecord[currentRegionID].CalcAverageDone = FALSE
Copy CurrentColorPixel to tempRegionRecord[currentRegionID].FirstFoundColor
Set tempRegionRecord[currentRegionID].RegionTag = currentRegionID
Increment tempRegionRecord.RegionCount
Set CurrentLinkedPixel[-1] = currentRegionID.
if FoundRegions.FoundCount = 1
Set currentRegionID = FoundRegions[0]. RegionID
Add CurrentColorPixel to tempRegionRecord[currentRegionID].AccumulatedColor
Increment tempRegionRecord[tempRegionRecord.RegionCount].RegionArea.
Set tempRegionRecord[currentRegionID].CalcAverageDone = FALSE
Set CurrentLinkedPixel[-1] = currentRegionID.
If FoundRegions.FoundCount = 2
Set currentRegionID = FoundRegions[0]. RegionID
Set nextRegionID = FoundRegions[1]. RegionID
If currentRegionID > nextRegionID
Swap currentRegionID, nextRegionID
UpdateAverageColor(currentRegionID)
UpdateAverageColor(nextRegionID)
If ColorDifference(tempRegionRecord[currentRegionID].averageColor, tempRegionRecord[nextRegionID].averageColor) < ColorDistanceThreshold
tempRegionRecord[nextRegionID]. RegionTag = currentRegionID.
Add tempRegionRecord[nextRegionID].AccumulatedColor to tempRegionRecord[currentRegionID].AccumulatedColor
Add tempRegionRecord[nextRegionID].RegionArea to tempRegionRecord[currentRegionID].RegionArea
Set tempRegionRecord[currentRegionID].CalcAverageDone = FALSE
Set CurrentLinkedPixel[-1] = currentRegionID.
Else (set CurrentLinkedPixel region to closest Match)
If (ColorDifference(tempRegionRecord[currentRegionID].averageColor, CurrentColorPixel ) < ColorDifference(tempRegionRecord[nextRegionID].averageColor, CurrentColorPixel)
Set CurrentLinkedPixel[-1] = currentRegionID.
Else
Set CurrentLinkedPixel[-1] = nextRegionID.
If FoundRegions.FoundCount > 2
Set minDifference to hex 0x7fffffffffffffff
Set currentRegionID = 0
For (j = 0, j < FoundRegions.FoundCount, j = j+1)
currentDifference = ColorDifference(tempRegionRecord[j].averageColor, CurrentColorPixel)
if (currentDifference < minDifference)
Set minDifference = currentDifference
Set currentRegionID = j
If (currentRegionID != 0)
Set CurrentLinkedPixel[-1] = currentRegionID
Set currentPixelIndex = CurrentLinkedPixel[0]
For each record, n, in tempRegionRecord, where n is Less than tempRegionRecord.RegionCount
If tempRegionRecord[n].RegionTag = n // this region is the root of the merged regions
tempRegionRecord[n].RegionTag = aRegionList.AddElement(tempRegionRecord[n].FirstFoundColor, tempRegionRecord[n]. RegionArea, 0) // create an output region for this one
Else // this is not a root region
tempRegionRecord[n].RegionTag = tempRegionRecord[tempRegionRecord[n].RegionTag]. RegionTag // set tag to the output region index
For Each Pixel, CurrentLinkedPixel, in LinkedPixelBuffer
Increment currentPixelIndex to the offset for CurrentLinkedPixel
currentRegionID = tempRegionRecord[CurrentLinkedPixel.regionLabelIndex].RegionTag
CurrentLinkedPixel.regionLabelIndex = currentRegionID // set tag to the output region index
CurrentLinkedPixel.nextSortIndex = aRegionList [currentRegionID].pixelListOffset
aRegionList [currentRegionID].pixelListOffset = currentPixelIndex+1
Output the modified LinkedRegionImage and aRegionList,

Claims (30)

  1. コンピューター実装方法において、
    1以上のコンピューター装置で実行する方法であり、
    入力画像を受信するステップと、
    コンピューターを用いて、前記入力画像を色に基づいて複数の画像領域に分割処理を行なうステップと、
    前記入力画像の項目に関する情報を決定するために分割処理に基づいて決定された情報を用いるステップと、
    を備え、
    前記分割処理が、
    特定の位置に割り当てられる特定の色差値が前記入力画像の一部に基づいて決定されるとともに、該特定の色差値が前記特定の位置の色が前記特定の位置に近くにある他の位置の色とどの程度違うかを表すものである色差値を、前記入力画像の複数の位置のそれぞれに割り当てるステップと、
    前記複数の位置に関連する少なくとも一部の色差値に対応する特定の順番に従って、前記複数の位置の各位置を前記複数の画像領域のうちの1つの画像領域に割り当てるステップと、
    前記入力画像の少なくとも一部に基づいて決定された前記特定の位置の色の少なくとも一部に基づいて、特定の位置に割り当てられる画像領域を選択するステップと、
    を有することを特徴とするコンピューター実装方法。
  2. 前記複数の位置のうち所定の位置の近傍にある位置にいずれの領域を割り当てるかを決定するステップと、
    前記決定の少なくとも一部に基づいて、前記所定の位置を前記複数の画像領域のうちの1つの所定の画像領域に割り当てるステップと、
    をさらに備えたことを特徴とする請求項1記載のコンピューター実装方法。
  3. 所定の位置の近傍にある位置にいずれの領域が関連するかの決定には、前記所定の位置の近傍の前記位置に関連する領域がないことを決定することを含むことを特徴とする請求項2に記載のコンピューター実装方法。
  4. 所定の位置に隣接する第1の位置に第1の領域を割り当て、前記所定の位置に隣接する第2の位置に第2の領域を割り当てることを決定するステップと、
    前記第1の領域と前記第2の領域のうち選択されていない領域を代表する色よりも選択された色を代表する色が前記所定の位置の色により類似していると判定されると、前記所定の位置に、前記第1の領域と前記第2の領域のうち前記選択した領域を割り当てるステップと、
    をさらに備えることを特徴とする請求項1記載のコンピューター実装方法。
  5. 所定の近傍位置を、所定の位置の近傍の位置であって領域が割り当てられた複数の位置のうちの1つの位置に決定するステップと、
    前記決定に応じて、前記所定の位置に前記所定の近傍位置に割り当てられた領域を割り当てるステップと、
    をさらに備えることを特徴とする請求項1記載のコンピューター実装方法。
  6. 所定の位置に隣接する第1の位置に第1の領域を割り当て、所定の位置に隣接する第2の位置に前記第1の領域とは異なる第2の領域を割り当てることを決定するステップと、
    前記第1の領域と前記第2の領域を併合するか否かを決定するステップと、
    をさらに備え、
    前記第1の領域を代表する色と前記第2の領域を代表する色を比較することにより前記第1の領域と前記第2の領域を併合するか否かを決定することを特徴とする請求項1記載のコンピューター実装方法。
  7. 前記入力画像は、マークアップが付されたカスタマイズ可能な製品のデジタル写真画像であることを特徴とする請求項1記載のコンピューター実装方法。
  8. 複数の分かれたデータ構造で、前記複数の画像領域を記述した情報を記憶するステップをさらに備え、
    前記複数のデータ構造は、前記複数の画像領域の各画像領域について、
    (a)前記画像領域を代表する色を示す代表色の値
    (b)前記画像領域の大きさ、および
    (c)前記画像領域に割り当てられた1つの位置
    を特定する第1のデータ構造を有することを特徴とする請求項1記載のコンピューター実装方法。
  9. 前記複数の分かれたデータ構造は、複数の項目を備える第2のデータ構造を有し、
    該複数の項目のうちの各項目は、前記複数の位置のうちの1つの対応位置を表し、
    前記対応位置に関連して対応する次の位置であって、前記対応位置とは異なる位置であり、該対応位置と同じ画像領域に割り当てられる対応する次の位置、または
    前記対応位置に関連する次の位置がないことを示す値、
    のいずれかを特定することを特徴とする請求項8記載のコンピューター実装方法。
  10. 前記分割処理に基づいて、前記入力画像のマークアップの少なくとも特定の部分を表すデータを特定するステップと、
    前記データに基づいて、カスタマイズ可能な製品の視覚化を行うための命令を決定するステップ、または
    前記カスタマイズ可能な製品の前記視覚化を行なうための命令をウェッブサーバに送信するステップ、
    をさらに備えたコンピューター実装方法。
  11. 前記入力画像に基づいて、値に応じて前記画像の位置の色を示す値を色値配列に設定するステップと、
    前記色値配列を1回辿って、前記入力画像の各位置に色差値を割り当てるステップと、
    をさらに備えたことを特徴とする請求項1記載のコンピューター実装方法。
  12. 第1の位置に割り当てる第1の画像領域を選択するステップと、
    所定の位置に対応する領域リストの項目に、前記第1の画像領域を示す第1の値を記憶するステップと、
    前記第1の画像領域に関する色と第2画像領域に関する色との比較に基づいて、前記第1の画像領域と前記第2の画像領域を併合することを決定するステップと、
    前記第1の画像領域と前記第2の画像領域を併合することが決定すると、前記領域リストの前記項目の前記第1の値を前記第2の画像領域を表す第2の値に更新するステップと、
    をさらに備えたことを特徴とする請求項1記載のコンピューター実装方法。
  13. 前記第1の値と前記第2の値を比較するステップをさらに備え、
    前記第1の値と第2の値は、数値であり、
    前記第1の値と前記第2の値の比較に応じて、前記領域リストの項目の前記第1の値を前記第2の値に更新することを特徴とする請求項12記載のコンピューター実装方法。
  14. 前記第1の値が前記第2の値より小さいと少なくとも判定されたことに基づいて、前記第1の値が前記第2の値に更新されることを特徴とする請求項13記載のコンピューター実装方法。
  15. 前記入力画像の各位置を対応する画像領域に割り当てた後に、前記第1の値が設定されている前記領域リストの1以上の項目を特定するステップと、
    前記第1の値が設定されている前記領域リストの1以上の項目のうち各特定の項目に対して、前記特定の項目の前記第1の値を前記第2の値に更新するステップと、
    をさらに備えたことを特徴とする請求項12記載のコンピューター実装方法。
  16. 1以上のプロセッサにより実行されることにより、1以上の処理を実行させる1以上の命令が記憶された非一時的なコンピューター読み取り可能な記録媒体を備えたコンピューターシステムであって、
    入力画像を受信するステップと、
    コンピューターを用いて、前記入力画像を色に基づいて複数の画像領域に分割処理を行なうステップと、
    前記入力画像の項目に関する情報を決定するために分割処理に基づいて決定された情報を用いるステップと、
    を実行するコンピューターシステムであり、
    前記分割処理が、
    特定の位置に割り当てられる特定の色差値が前記入力画像の一部に基づいて決定されるとともに、該特定の色差値が前記特定の位置の色が前記特定の位置に近くにある他の位置の色とどの程度違うかを表すものである色差値を、前記入力画像の複数の位置のそれぞれに割り当てるステップと、
    前記複数の位置に関連する少なくとも一部の色差値に対応する特定の順番に従って、前記複数の位置の各位置を前記複数の画像領域のうちの1つの画像領域に割り当てるステップと、
    前記入力画像の少なくとも一部に基づいて決定された前記特定の位置の色の少なくとも一部に基づいて、特定の位置に割り当てられる画像領域を選択するステップと、
    を有することを特徴とするコンピューターシステム。
  17. 前記記録媒体に、一連の命令であって、1以上のプロセッサにより実行されると、該1以上のプロセッサに、
    前記複数の位置のうち所定の位置の近傍にある位置にいずれの領域を割り当てるかを決定するステップと、
    前記決定の少なくとも一部に基づいて、前記所定の位置を前記複数の画像領域のうちの1つの所定の画像領域に割り当てるステップと、
    をさらに実行させる一連の命令が記憶されたことを特徴とする請求項16記載のコンピューターシステム。
  18. 前記記録媒体に、一連の命令であって、1以上のプロセッサにより実行されると、所定の位置の近傍にある位置にどの領域が関連するかを、該所定の位置の近傍の該位置に関連する領域がないことを決定することによって決定する一連の命令が記憶されたことを特徴とする請求項17記載のコンピューターシステム。
  19. 前記記録媒体に、一連の命令であって、1以上のプロセッサにより実行されると、該1以上のプロセッサに、
    所定の位置に隣接する第1の位置に第1の領域を割り当て、前記所定の位置に隣接する第2の位置に第2の領域を割り当てることを決定するステップと、
    前記第1の領域と前記第2の領域のうち選択されていない領域を代表する色よりも選択された色を代表する色が前記所定の位置の色により類似していると判定されると、前記所定の位置に、前記第1の領域と前記第2の領域のうち前記選択した領域を割り当てるステップと、
    をさらに実行させる一連の命令が記憶されたことを特徴とする請求項16記載のコンピューターシステム。
  20. 前記記録媒体に、一連の命令であって、1以上のプロセッサにより実行されると、該1以上のプロセッサに、
    所定の近傍位置を、所定の位置の近傍の位置であって領域が割り当てられた複数の位置のうちの1つの位置に決定するステップと、
    前記決定に応じて、前記所定の位置に前記所定の近傍位置に割り当てられた領域を割り当てるステップと、
    をさらに実行させる一連の命令が記憶されたことを特徴とする請求項16記載のコンピューターシステム。
  21. 前記記録媒体に、一連の命令であって、1以上のプロセッサにより実行されると、
    所定の位置に隣接する第1の位置に第1の領域を割り当て、所定の位置に隣接する第2の位置に前記第1の領域とは異なる第2の領域を割り当てることを決定するステップと、
    前記第1の領域と前記第2の領域を併合するか否かを決定するステップであって、前記第1の領域を代表する色と前記第2の領域を代表する色を比較することを含むステップと、
    をさらに実行させる一連の命令が記憶されたことを特徴とする請求項16記載のコンピューターシステム。
  22. 前記入力画像は、マークアップが付されたカスタマイズ可能な製品のデジタル写真画像であることを特徴とする請求項16記載のコンピューターシステム。
  23. 前記記録媒体に、一連の命令であって、1以上のプロセッサにより実行されると、該1以上のプロセッサに、
    複数の分かれたデータ構造で、前記複数の画像領域を記述した情報を記憶するステップをさらに実行させる一連の命令が記憶されており、
    前記複数のデータ構造は、前記複数の画像領域の各画像領域について、
    (a)前記画像領域を代表する色を示す代表色の値
    (b)前記画像領域の大きさ、および
    (c)前記画像領域に割り当てられた1つの位置
    を特定する第1のデータ構造を有することを特徴とする請求項16記載のコンピューターシステム。
  24. 前記複数の分かれたデータ構造は、複数の項目を備える第2のデータ構造を有し、
    該複数の項目のうちの各項目は、前記複数の位置のうちの1つの対応位置を表し、
    前記対応位置に関連して対応する次の位置であって、前記対応位置とは異なる位置であり、該対応位置と同じ画像領域に割り当てられる対応する次の位置、または
    前記対応位置に関連する次の位置がないことを示す値、
    のいずれかを特定することを特徴とする請求項16記載のコンピューターシステム。
  25. 前記記録媒体に、一連の命令であって、1以上のプロセッサにより実行されると、該1以上のプロセッサに、
    前記分割処理に基づいて、前記入力画像のマークアップの少なくとも特定の部分を表すデータを特定するステップと、
    前記データに基づいて、カスタマイズ可能な製品の視覚化を行うための命令を決定するステップ、または
    前記カスタマイズ可能な製品の前記視覚化を行なうための命令をウェッブサーバに送信するステップ、
    をさらに実行させる一連の命令が記憶されたことを特徴とする請求項16記載のコンピューターシステム。
  26. 前記記録媒体に、一連の命令であって、1以上のプロセッサにより実行されると、該1以上のプロセッサに、
    前記入力画像に基づいて、値に応じて前記画像の位置の色を示す値を色値配列に設定するステップと、
    前記色値配列を1回辿って、前記入力画像の各位置に色差値を割り当てるステップと、
    をさらに実行させる一連の命令が記憶されたことを特徴とする請求項16記載のコンピューターシステム。
  27. 前記記録媒体に、一連の命令であって、1以上のプロセッサにより実行されると、該1以上のプロセッサに、
    第1の位置に割り当てる第1の画像領域を選択するステップと、
    所定の位置に対応する領域リストの項目に、前記第1の画像領域を示す第1の値を記憶するステップと、
    前記第1の画像領域に関する色と第2画像領域に関する色との比較に基づいて、前記第1の画像領域と前記第2の画像領域を併合することを決定するステップと、
    前記第1の画像領域と前記第2の画像領域を併合することが決定すると、前記領域リストの前記項目の前記第1の値を前記第2の画像領域を表す第2の値に更新するステップと、
    をさらに実行させる一連の命令が記憶されたことを特徴とする請求項16記載のコンピューターシステム。
  28. 前記記録媒体に、一連の命令であって、1以上のプロセッサにより実行されると、該1以上のプロセッサに、
    前記第1の値と前記第2の値を比較するステップ、
    をさらに実行させる一連の命令が記憶されており、
    前記第1の値と第2の値は、数値であり、
    前記第1の値と前記第2の値の比較に応じて、前記領域リストの項目の前記第1の値を前記第2の値に更新することを特徴とする請求項27記載のコンピューターシステム。
  29. 前記第1の値が前記第2の値より小さいと少なくとも判定されたことに基づいて、前記第1の値が前記第2の値に更新されることを特徴とする請求項28記載のコンピューターシステム。
  30. 前記記録媒体に、一連の命令であって、1以上のプロセッサにより実行されると、該1以上のプロセッサに、
    前記入力画像の各位置を対応する画像領域に割り当てた後に、前記第1の値が設定されている前記領域リストの1以上の項目を特定するステップと、
    前記第1の値が設定されている前記領域リストの1以上の項目のうち各特定の項目に対して、前記特定の項目の前記第1の値を前記第2の値に更新するステップと、
    をさらに実行させる一連の命令が記憶されたことを特徴とする請求項27記載のコンピューターシステム。
JP2014049897A 2013-03-14 2014-03-13 色および色差値に基づいた画像の分割 Active JP6382538B2 (ja)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201361785533P 2013-03-14 2013-03-14
US61/785,533 2013-03-14
US201361787532P 2013-03-15 2013-03-15
US61/787,532 2013-03-15
US14/050,281 2013-10-09
US14/050,281 US8712566B1 (en) 2013-03-14 2013-10-09 Segmentation of a product markup image based on color and color differences

Publications (3)

Publication Number Publication Date
JP2014179090A true JP2014179090A (ja) 2014-09-25
JP2014179090A5 JP2014179090A5 (ja) 2017-04-27
JP6382538B2 JP6382538B2 (ja) 2018-08-29

Family

ID=50514311

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014049897A Active JP6382538B2 (ja) 2013-03-14 2014-03-13 色および色差値に基づいた画像の分割

Country Status (6)

Country Link
US (5) US8712566B1 (ja)
EP (2) EP3660784B1 (ja)
JP (1) JP6382538B2 (ja)
CN (1) CN104050657A (ja)
AU (2) AU2014201404B2 (ja)
BR (1) BR102014005996A2 (ja)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8917424B2 (en) 2007-10-26 2014-12-23 Zazzle.Com, Inc. Screen printing techniques
US9147213B2 (en) 2007-10-26 2015-09-29 Zazzle Inc. Visualizing a custom product in situ
US8174521B2 (en) * 2007-10-26 2012-05-08 Zazzle.Com Product modeling system and method
US11157977B1 (en) 2007-10-26 2021-10-26 Zazzle Inc. Sales system using apparel modeling system and method
US10719862B2 (en) 2008-07-29 2020-07-21 Zazzle Inc. System and method for intake of manufacturing patterns and applying them to the automated production of interactive, customizable product
US9213920B2 (en) 2010-05-28 2015-12-15 Zazzle.Com, Inc. Using infrared imaging to create digital images for use in product customization
US10969743B2 (en) 2011-12-29 2021-04-06 Zazzle Inc. System and method for the efficient recording of large aperture wave fronts of visible and near visible light
US8712566B1 (en) 2013-03-14 2014-04-29 Zazzle Inc. Segmentation of a product markup image based on color and color differences
US10242395B1 (en) * 2015-04-30 2019-03-26 Amazon Technologies, Inc. Providing shopping links to items on a network page
US9542766B1 (en) * 2015-06-26 2017-01-10 Microsoft Technology Licensing, Llc Intelligent configuration of data visualizations
US9852533B2 (en) * 2015-08-10 2017-12-26 Zazzle Inc. System and method for digital markups of custom products
CN107038707B (zh) * 2016-02-02 2020-06-05 杭州海康威视数字技术股份有限公司 一种图像分割方法及装置
CA3041791C (en) * 2016-10-28 2023-12-12 Zazzle Inc. Process for defining, capturing, assembling, and displaying customized video content
US20180182171A1 (en) * 2016-12-26 2018-06-28 Drawsta, Inc. Systems and Methods for Real-time Multimedia Augmented Reality
TWI678680B (zh) * 2018-04-20 2019-12-01 宏碁股份有限公司 影像合成方法及智慧型裝置
TWI674558B (zh) * 2018-06-12 2019-10-11 財團法人工業技術研究院 數值陣列資料影像處理裝置、數值陣列資料影像處理方法及色碼表產生方法
CN111845098B (zh) * 2019-04-26 2021-06-18 深圳市汉森软件有限公司 打印机墨量调整方法、装置、设备及介质
US11429663B2 (en) 2020-06-02 2022-08-30 Western Digital Technologies, Inc. Storage system and method for host-assisted memory block color coding for faster media search
WO2022231705A1 (en) 2021-04-26 2022-11-03 Zazzle Inc. Generating customized products in collaboration with live designers and agents
US11915199B2 (en) 2021-06-03 2024-02-27 Zazzle Inc. Moment-based gifts and designs generated using a digital product collaboration platform
US11915200B2 (en) 2021-07-29 2024-02-27 Zazzle Inc. Collaborative video chat screen sharing using a digital product collaboration platform
US20230125873A1 (en) 2021-10-21 2023-04-27 Zazzle Inc. Interfacing with third party platforms via collaboration sessions
CN114445554B (zh) * 2021-12-24 2023-02-10 广东时谛智能科技有限公司 一种鞋体专属定制方法、装置、电子设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007080087A (ja) * 2005-09-15 2007-03-29 Matsushita Electric Works Ltd 顔部品抽出方法及び顔認証装置

Family Cites Families (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5039132A (en) * 1990-01-25 1991-08-13 Minnesota Mining And Manufacturing Company Method and form used for ordering custom printed products
US5084727A (en) * 1990-12-21 1992-01-28 Eastman Kodak Company Method and apparatus for photographic exposure using an LCD pad
US5615123A (en) * 1991-04-02 1997-03-25 Creatacard, Inc. System for creating and producing custom card products
JP2772504B2 (ja) * 1993-03-26 1998-07-02 大日本スクリーン製造株式会社 網角度が変更可能な網目版画像生成装置
KR0183795B1 (ko) * 1995-12-28 1999-05-01 김광호 색상 조정 방법 및 장치
GB9707704D0 (en) 1997-04-16 1997-06-04 British Telecomm Display terminal
JP2000215317A (ja) 1998-11-16 2000-08-04 Sony Corp 画像処理方法及び画像処理装置
US6608700B1 (en) * 1999-11-24 2003-08-19 Xerox Corporation Removal of error diffusion artifacts with alternating distribution weights
US20010034668A1 (en) 2000-01-29 2001-10-25 Whitworth Brian L. Virtual picture hanging via the internet
US7262778B1 (en) * 2000-02-11 2007-08-28 Sony Corporation Automatic color adjustment of a template design
DE10034122A1 (de) * 2000-07-13 2002-01-24 Hed Gmbh Haftetikettendruck Set zum Erstellen von Etiketten
GB2370438A (en) * 2000-12-22 2002-06-26 Hewlett Packard Co Automated image cropping using selected compositional rules.
US7274380B2 (en) 2001-10-04 2007-09-25 Siemens Corporate Research, Inc. Augmented reality system
JP2003264740A (ja) 2002-03-08 2003-09-19 Cad Center:Kk 展望鏡
GB0225789D0 (en) * 2002-03-25 2002-12-11 Makemyphone Ltd Method and apparatus for creating image production file for a custom imprinted article
JP3962642B2 (ja) 2002-07-08 2007-08-22 キヤノン株式会社 画像処理装置およびその方法
JP3944024B2 (ja) 2002-08-20 2007-07-11 株式会社東芝 画像処理方法、半導体装置の製造方法、パターン検査装置およびプログラム
US7724956B2 (en) 2003-02-28 2010-05-25 Gannon Technologies Group Llc Systems and methods for identifying characters and words in a document
JP2004282708A (ja) * 2003-02-28 2004-10-07 Fuji Photo Film Co Ltd 印刷物生成装置および方法、情報検出装置および方法並びにプログラム
US20050226498A1 (en) 2004-03-31 2005-10-13 Lee David L Prepress workflow process employing frequency modulation (FM) screening techniques
WO2005104662A2 (en) * 2004-05-05 2005-11-10 Yissum Research Development Company Of The Hebrew University Of Jerusalem Colorization method and apparatus
US7474318B2 (en) 2004-05-28 2009-01-06 National University Of Singapore Interactive system and method
JP4794847B2 (ja) * 2004-10-29 2011-10-19 キヤノン株式会社 2次元コードおよび情報処理方法
US8982109B2 (en) 2005-03-01 2015-03-17 Eyesmatch Ltd Devices, systems and methods of capturing and displaying appearances
US8023746B2 (en) * 2005-10-14 2011-09-20 Disney Enterprises, Inc. Systems and methods for decoding an image to determine a digital identifier
US7769236B2 (en) 2005-10-31 2010-08-03 National Research Council Of Canada Marker and method for detecting said marker
JP2007257176A (ja) 2006-03-22 2007-10-04 Fujitsu Ltd 情報処理方法、情報処理装置、および情報処理プログラム
JP4926817B2 (ja) 2006-08-11 2012-05-09 キヤノン株式会社 指標配置情報計測装置および方法
US7847830B2 (en) 2006-11-21 2010-12-07 Sony Ericsson Mobile Communications Ab System and method for camera metering based on flesh tone detection
JP4861924B2 (ja) * 2007-07-31 2012-01-25 キヤノン株式会社 画像処理装置、その制御方法、そのプログラム、その記憶媒体
CN101286199A (zh) * 2007-09-14 2008-10-15 西北工业大学 一种基于区域生长和蚁群聚类的图像分割方法
US20090080773A1 (en) * 2007-09-20 2009-03-26 Mark Shaw Image segmentation using dynamic color gradient threshold, texture, and multimodal-merging
DE102007045834B4 (de) 2007-09-25 2012-01-26 Metaio Gmbh Verfahren und Vorrichtung zum Darstellen eines virtuellen Objekts in einer realen Umgebung
US20090080688A1 (en) * 2007-09-25 2009-03-26 The Hong Kong University Of Science And Technology Digital watermarking for few-color images
JP2009088614A (ja) * 2007-09-27 2009-04-23 Toshiba Corp 画像処理方法および画像処理装置
US9147213B2 (en) 2007-10-26 2015-09-29 Zazzle Inc. Visualizing a custom product in situ
US8917424B2 (en) 2007-10-26 2014-12-23 Zazzle.Com, Inc. Screen printing techniques
US8174521B2 (en) 2007-10-26 2012-05-08 Zazzle.Com Product modeling system and method
CN101889275A (zh) 2007-11-07 2010-11-17 斯金尼特公司 定制打印内容
KR100927009B1 (ko) 2008-02-04 2009-11-16 광주과학기술원 증강 현실에서의 햅틱 상호 작용 방법 및 그 시스템
US8233722B2 (en) 2008-06-27 2012-07-31 Palo Alto Research Center Incorporated Method and system for finding a document image in a document collection using localized two-dimensional visual fingerprints
CN102177525A (zh) 2008-07-29 2011-09-07 彩滋网站公司 产品定制系统和方法
US20100048290A1 (en) 2008-08-19 2010-02-25 Sony Computer Entertainment Europe Ltd. Image combining method, system and apparatus
US8520979B2 (en) 2008-08-19 2013-08-27 Digimarc Corporation Methods and systems for content processing
KR20110058834A (ko) 2008-08-22 2011-06-01 재즐.콤, 인코포레이티드 제품 주문 제작 시스템 및 방법
US8320674B2 (en) * 2008-09-03 2012-11-27 Sony Corporation Text localization for image and video OCR
US20100066750A1 (en) 2008-09-16 2010-03-18 Motorola, Inc. Mobile virtual and augmented reality system
WO2010045271A1 (en) 2008-10-14 2010-04-22 Joshua Victor Aller Target and method of detecting, identifying, and determining 3-d pose of the target
JP2010117870A (ja) 2008-11-12 2010-05-27 B-Core Inc 包含型コードシンボル及びその読み出し方法、並びに閉領域包含型コードシンボル及びその読み出し方法、並びに、包含型コードシンボルが付された物品及び閉領域包含型コードシンボルが付された物品。
US8515171B2 (en) * 2009-01-09 2013-08-20 Rochester Institute Of Technology Methods for adaptive and progressive gradient-based multi-resolution color image segmentation and systems thereof
US8606657B2 (en) 2009-01-21 2013-12-10 Edgenet, Inc. Augmented reality method and system for designing environments and buying/selling goods
WO2010087886A1 (en) 2009-01-27 2010-08-05 Gannon Technologies Group Llc Systems and methods for graph-based pattern recognition technology applied to the automated identification of fingerprints
US9171361B2 (en) 2010-04-23 2015-10-27 Flir Systems Ab Infrared resolution and contrast enhancement with fusion
US8681145B2 (en) 2009-03-20 2014-03-25 Disney Enterprises, Inc. Attribute transfer between computer models including identifying isomorphic regions in polygonal meshes
JP5466418B2 (ja) 2009-03-27 2014-04-09 株式会社成基総研 判定装置、判定方法、およびプログラム
JP2010287174A (ja) 2009-06-15 2010-12-24 Dainippon Printing Co Ltd 家具シミュレーション方法、装置、プログラム、記録媒体
US8345974B2 (en) * 2009-07-14 2013-01-01 Hewlett-Packard Development Company, L.P. Hierarchical recursive image segmentation
EP2395474A3 (en) 2010-06-11 2014-03-26 Nintendo Co., Ltd. Storage medium having image recognition program stored therein, image recognition apparatus, image recognition system, and image recognition method
TWI411853B (zh) 2010-07-23 2013-10-11 Innolux Corp 背光模組與液晶顯示裝置
JP5697487B2 (ja) 2011-02-25 2015-04-08 任天堂株式会社 画像処理システム、画像処理方法、画像処理装置、および画像処理用プログラム
CN102214355B (zh) * 2011-05-20 2013-04-03 西安工程大学 一种服装展示素材的抠图方法
US8787707B1 (en) 2011-06-29 2014-07-22 Amazon Technologies, Inc. Identification of product attributes
US8750613B2 (en) * 2011-12-13 2014-06-10 The Nielsen Company (Us), Llc Detecting objects in images using color histograms
CN102903127B (zh) * 2012-09-05 2016-04-06 天津光电高斯通信工程技术股份有限公司 一种基于自适应种子选取的货运图像分割算法
US8712566B1 (en) * 2013-03-14 2014-04-29 Zazzle Inc. Segmentation of a product markup image based on color and color differences

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007080087A (ja) * 2005-09-15 2007-03-29 Matsushita Electric Works Ltd 顔部品抽出方法及び顔認証装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ALAIN TREMEAU ET AL.: "A region growing and merging algorithm to color segmentation", PATTERN RECOGNITION, vol. 30, no. 7, JPN6018016723, 31 July 1997 (1997-07-31), NL, pages 1191 - 1203 *
高橋 裕樹、中嶋 正之: ""領域特徴を用いたカラー画像セグメンテーション"", 映像情報メディア学会技術報告, vol. 25, no. 64, JPN6018016725, 18 October 2001 (2001-10-18), JP, pages 59 - 64 *

Also Published As

Publication number Publication date
US8958633B2 (en) 2015-02-17
EP3660784B1 (en) 2023-08-23
US20140270506A1 (en) 2014-09-18
AU2014201404B2 (en) 2018-11-22
CN104050657A (zh) 2014-09-17
US9530217B2 (en) 2016-12-27
US20150262371A1 (en) 2015-09-17
EP2779094A3 (en) 2014-10-29
US10083517B2 (en) 2018-09-25
EP3660784A1 (en) 2020-06-03
JP6382538B2 (ja) 2018-08-29
US20170103539A1 (en) 2017-04-13
EP2779094A2 (en) 2014-09-17
BR102014005996A2 (pt) 2016-12-13
US9905012B2 (en) 2018-02-27
US20180182104A1 (en) 2018-06-28
AU2014201404A1 (en) 2014-10-02
AU2019201268B2 (en) 2020-03-12
US8712566B1 (en) 2014-04-29
AU2019201268A1 (en) 2019-03-14

Similar Documents

Publication Publication Date Title
JP6382538B2 (ja) 色および色差値に基づいた画像の分割
US9741137B2 (en) Image-based color palette generation
US9396560B2 (en) Image-based color palette generation
US9552656B2 (en) Image-based color palette generation
US9311889B1 (en) Image-based color palette generation
US9836856B2 (en) Color name generation from images and color palettes
US9135719B1 (en) Color name generation from images and color palettes
JP5229744B2 (ja) 画像分類装置および画像分類プログラム
US20150178317A1 (en) Searching of Images Based Upon Visual Similarity
JP4948607B2 (ja) 画像検索装置、画像分類装置及び方法並びにプログラム
US20180096052A1 (en) Systems and methods for management of multi-perspective customer segments
Guada et al. A novel edge detection algorithm based on a hierarchical graph-partition approach
CA2845601A1 (en) Segmentation of an image based on color and color differences
JP4074791B2 (ja) 住宅間取り検索プログラム及び住宅外構検索プログラム
JP5818202B2 (ja) 画像解析装置、画像解析方法、画像検索システムおよびプログラム
US20160378763A1 (en) Method and system for assigning published subjects
EP4083913A1 (en) Computer-implemented conversion of technical drawing data representing a map and object detection based thereupon
CN118095231A (zh) 一种图表构建方法及相关设备

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170310

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170310

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180515

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180619

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180703

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180802

R150 Certificate of patent or registration of utility model

Ref document number: 6382538

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250