CN101933048A - 产品建模系统和方法 - Google Patents

产品建模系统和方法 Download PDF

Info

Publication number
CN101933048A
CN101933048A CN2008801229862A CN200880122986A CN101933048A CN 101933048 A CN101933048 A CN 101933048A CN 2008801229862 A CN2008801229862 A CN 2008801229862A CN 200880122986 A CN200880122986 A CN 200880122986A CN 101933048 A CN101933048 A CN 101933048A
Authority
CN
China
Prior art keywords
product
design
mark
surface profile
visual representation
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
CN2008801229862A
Other languages
English (en)
Other versions
CN101933048B (zh
Inventor
H·扬
M·戴
R·I·比弗二世
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 CN101933048A publication Critical patent/CN101933048A/zh
Application granted granted Critical
Publication of CN101933048B publication Critical patent/CN101933048B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/20Linear translation of a whole image or part thereof, e.g. panning
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T5/94
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/08Indexing scheme for image data processing or generation, in general involving all processing steps from image acquisition to 3D model generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20092Interactive image processing based on input by user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/16Cloth

Abstract

提供产品建模系统和方法。在一个实施例中,该产品建模系统被用来建模具有设计的服饰件诸如衬衫,其中具有该设计的模型被用来向消费者显示具有该设计的该服饰件。

Description

产品建模系统和方法
附录
附录A(2页)包含用于找出产品上的标记集的伪代码的示例;
附录B(1页)包含用于使用归一化有序(ordinal)色彩分布来重映射图像色彩的代码的示例;
附录C(4页)包含用于以归一化直方图顺序建立色彩图(其中具有来自匹配色彩空间的索引)的代码的示例;
附录D(2页)包含用于建立查找表以把色彩从源球重映射到目的地球的代码的示例;以及
附录E(3页)包含用于将具有源球色彩图的源图像的色彩重映射到具有球色彩对象(object)的色彩图的目的地图像的代码的示例。
附录A-E形成说明书的一部分并且通过引用方式并入本文。
技术领域
本发明大体上涉及用于建模服饰件(piece of apparel)的系统和方法。
背景技术
电子商务(E商务)是其中使用电子商务站点向多个消费者销售各种不同产品和服务的繁荣产业。电子商务站点可包括网站,该网站允许多个消费者使用网络(诸如因特网)获得对该网站的访问。该网站可具有多个网页,其中这些网页具有消费者可购买的多个不同产品的图像。包含在该多个网页中的图像是二维图像。该网站也可包括安全商务部分,其允许消费者选择一个或多个项目(item)、把那些项目放置在电子购物车中并且当完成购物时使用各种支付服务(诸如PayPal或信用卡)为保留在电子购物车中的项目结帐和付款。
这些典型电子商务系统的一个限制是在网站上可获得的产品(诸如衬衫)可由人体模型(human model)建模以示出该产品及其设计,但作为“平坦”图像向消费者示出,因为其是在由消费者使用的计算机的显示器上向消费者示出的。因而,产品的实际设计以及该产品在实际生活中看起来如何往往难以从那些图像中确定。这可能导致消费者不购买不期望的产品。
这些典型电子商务系统的另一个限制是在网站上可获得的产品(诸如衬衫)不能由消费者用该产品上的设计来定制。因而,消费者不能看到用该设计定制的产品并且这也可能导致消费者不购买不期望的产品。因而,期望的是提供一种提供产品的更好模型的系统和方法并且本系统和方法正是针对于此的。
附图说明
图1是图解产品建模系统的示例性实施方式的框图;
图2图解产品建模方法的示例性实施方式;
图3图解产品建模方法的示例性实施方式的进一步细节;
图4A和4B图解产品建模方法中的用于标记产品的过程的进一步细节;
图5A和5B图解产品建模方法中的用于生成产品图像的过程的进一步细节;
图6A-6D图解产品建模方法中的用于预处理该模型的过程的进一步细节;
图7A-7C图解产品建模方法中的后处理过程的进一步细节;
图8A图解要放置在服饰件上的设计的示例;
图8B图解典型系统中具有设计的服饰件的典型图像;
图8C-8D图解产品建模系统中的服饰件上的设计;
图8E图解用于把设计放置在模型上的过程;以及
图9A-9C图解用于改变在产品建模系统中显示具有设计的该服饰件所对照的背景的过程。
具体实施方式
该系统和方法可特别应用于在计算机上以软件实施的用于建模衬衫的系统和方法并且正是在这样的背景下图解和描述该系统和方法。然而要明白,该系统和方法可以用于各种产品,其中产品可包括其中期望提供产品的更好模型的其它产品和其它服饰。例如,该系统可用于任何类型的服装或服饰件、可以被人类或宠物穿戴或使用的任何物品(item)(诸如帽子、背包、狗毛衣等等)和/或任何其中期望能够在模型上显示产品的其它产品。另外,该系统可与任何其中期望能够显示其上具有设计的产品(具有不规则表面)的产品(诸如滑板、鞋)一起使用。另外,该系统可用来显示具有不规则表面的任何物品(诸如墙壁、汽车体、铅笔等)上的设计。而且,该系统可用来识别视频中的产品/物品,其中设计可以被插入到视频中的产品/物品中。另外,该系统和方法可以软件(在图解的实施方式中示出)、硬件或硬件和软件的组合来实施,并且也可被实施在独立式计算设备(在图解的实施方式中示出)、web服务器、终端、对等系统等上以便该系统和方法不限于该系统或方法的特定实施方式。
图1是图解产品建模系统100的示例性实施方式的框图。在这种实施方式中,该系统被实施在独立式计算设备(诸如个人计算机)上并且产品建模系统被实施为包括多行计算机代码的一件或多件软件,所述计算机代码由计算设备中的处理单元执行以实施产品建模系统。然而,产品建模系统也可以被实施在其它计算设备和计算系统上,诸如联网计算系统、客户端/服务器系统、对等系统、ASP模型类型系统、膝上型计算机、移动设备、移动蜂窝电话或任何其它具有足够处理能力、存储器和连接性以实施如下面所描述的产品建模系统和方法的计算设备。
该系统的示例性实施方式可包括:显示设备102,用以允许消费者查看具有由产品建模系统生成的设计的产品;机箱(chassis)104;以及一个或多个输入/输出设备105,诸如键盘和鼠标,其允许消费者与计算设备和产品建模系统对接。机箱104可容纳处理单元106(诸如Intel处理器)、永久性存储设备108(诸如硬盘驱动器)、以及存储器110,其中存储器可存储正由处理单元执行的软件模块/应用。当产品建模系统正被实施在计算设备上时,计算设备也可包括产品建模储存器112,诸如软件实施的数据库,并且存储器可存储操作系统114,该操作系统114控制计算设备和具有多行计算机代码的产品建模模块116的操作,其中该多行计算机代码由处理单元执行以实施如下面所描述的产品建模系统和方法。
为了图解产品建模系统和方法的目的,下面描述用于具有设计的服饰件(诸如T恤)的产品建模方法。然而,产品建模系统也可用于其它产品,诸如其它服饰和其中期望提供产品的更好模型的其它产品。例如,该系统可用于任何类型的服装或服饰件、可以被人类或宠物穿戴或使用的任何物品(诸如帽子、背包、狗毛衣等等)和/或任何其中期望能够在模型上显示产品的其它产品。另外,该系统可与任何其中期望能够显示其上具有设计的产品(具有不规则表面)的产品(诸如滑板、鞋)一起使用。另外,该系统可用来显示具有不规则表面的任何物品(诸如墙壁、汽车体、铅笔等)上的设计。而且,该系统可用来识别视频中的产品/物品,其中设计可以被插入到视频中的产品/物品中。产品建模方法的输出(产品上示出设计的产品的图像)可用于各种目的。例如,该输出可用来在允许消费者看到产品的网站上生成具有设计的多个产品显示。下面描述的示例是其中产品建模系统与产品销售和营销公司有联系的系统,其中产品销售和营销公司控制产品建模系统的图像和模型。在产品建模系统的另一种实施方式/实施例中,该系统可允许消费者提供其自己的图像/模型,诸如实际消费者的模型,以便消费者可以上传图像到服务并然后将选择的设计显示在实际消费者的模型上,其中该服务提供:1)模型部件(以创建模型形式);2)用于向该服务上传/修改模型图像的工具;以及3)用于向消费者显示具有设计的模型的工具。
图2图解显示模型的产品建模方法120的示例性实施方式,其中在该模型上具有设计,其中该模型是穿有服饰件的人员的现实表示,该服饰件在该服饰件上具有设计。图2和3所示的方法(下面描述的过程)可由上面描述的产品建模模块116执行。消费者可选择诸如图8A所示的设计之类的设计(122),并且可以执行弯曲(warp)过程(124)以生成弯曲设计(128)。消费者也可选择模型的背景(126)诸如图9A-9C所示的背景。一旦消费者选择了背景和设计,该设计就被弯曲并且然后执行表面着色(shading)(130)和表面镜面(specular)过程(132)。一旦完成了这些过程,模型被创建成具有该设计(134),其中具有设计的模型被示出给消费者。在一个实施例中,具有设计的模型被显示给消费者以辅助消费者在消费者诸如通过电子商务网站购买具有设计的产品之前预览具有设计的产品。现在更详细地描述产品建模方法。
图3图解在与服饰件一起使用时的产品建模方法140的示例性实施方式的进一步细节。产品建模方法(和下面阐述的过程)在一个实施例和实施方式中被实施为多行计算机代码,所述计算机代码是产品建模模块的一部分,其由作为产品建模系统的一部分的处理单元106执行。在该方法中,服饰件被创建成具有多个标记(142),所述标记用来捕获当该服饰件由人体模型穿戴时关于该服饰件的信息。所述多个标记可为标记图案,该标记图案在二维中编码柔性基底,当柔性基底被放置在复杂的三维表面上时可检测到该标记图案,其中标记图案的覆盖区域基本不遮蔽其编码的基底。例如,所述多个标记可覆盖该服饰件的预定百分比(比如50%),这允许系统捕获当该服饰件由人体模型穿戴时关于该服饰件的信息。在一种实施方式中,所述多个标记可形成网格。更详细地,在平坦表面(当标记被适当地定位在该服饰件上时在表面上平坦的该服饰件)上形成网格的标记可用来映射到非平坦表面(在被穿到人体模型上时的该服饰件)上的标记网格。如图4A所示,平坦表面上的标记网格186被映射到其中相同标记在非平坦表面上的相同位置的网格187以便确定平坦表面上的网格和非平坦表面上的网格之间的映射。该系统可内插标记位置以生成从所述多个标记到平坦表面上的网格的映射并且然后可存储该映射以避免每次重新计算该映射。在一个实施例中,标记可为形成网格的许多不可见线。在另一个实施例中,标记可为多个光学标记190,光学标记190可附着到服饰件192,如图4B所示,这允许给该服饰件加上光学标签以映射该服饰件在由人体模型穿戴时的表面。光学标记可由反射性材料、彩色材料或衍射图案制成。反射性材料可为逆向反光(retroreflective)材料。彩色材料可为颜料(pigmented)材料。标记可具有各种形状(包括图4B所示的圆点形状)和大小,并且该方法不限于标记的任何特定形状。在一个实施例中,所述多个标记可为膜材料,该膜材料具有特定形状的逆向反光材料。在又一个实施例中,标记可为形成网格的标记集,其中通过电子方式或通过其它手段将这些标记放置到该服饰件上。在其中产品建模系统由销售服饰的商业实体使用的一个实施例中,每个服饰件被放置到不同形状和/或尺寸的多个人体模型上(如图5A和5B所示)以便消费者然后可以选择最接近该服饰件的预计穿戴者的该服饰件的模型。在其中每个消费者可为服饰件创建其自己模型的另一个实施例中,向消费者提供标记(电子地或作为物理标记)以便消费者可以把标记附着到服饰件并然后执行下面描述的其它过程。在又一个实施例中,产品建模系统可允许多个用户(诸如用户团体)生成多个模型,所述多个模型然后可被上传到产品建模系统。
一旦一件或多件服饰被制备有标记,每个服饰件在每个不同人体模型上的图像可诸如通过使用照相机来拍摄由人体模型穿戴的该服饰件的图片而生成(150)。在拍摄人体模型上的具有标记的该服饰件的图像之前,确定用于拍摄该图像的照明。当用户/消费者生成模型时,产品建模系统可提供指令以诸如使用闪光、使用特定曝光等等来拍摄该服饰件的图像。在产品建模系统的一种实施方式中,产品建模系统可把代码段直接下载到用户/消费者的照相机(诸如数字照相机)以正确地设置照相机从而拍摄产品或物品的图像。特别地,确定每个服饰件的表面模型和光照模型,这也允许准确地确定图像的色彩和照明。
一旦拍摄了处于多个不同姿态的多个人体模型上的该服饰件的图像,处于特定姿态的特定模型上的该服饰件的模型由产品建模系统预处理(160)。在预处理期间,产品建模系统可检测该服饰件图像上的所述多个标记、从该服饰件的图像中移除标记图像并然后生成当由人体模型穿戴时该服饰件的表面的表示。
在一种实施方式中,可通过标记的区别特征(光谱差别、反射差别、纹理差别和/或时间差别)来检测标记,通过匹配图案的几何属性(局部图案寻找)来精细化并通过匹配已知图案(局部图案被组装成已知完整图案)来重构所述标记。所重构的图案然后可用来建模柔性基底的形状。产品建模系统可具有原始未标记基底的多个局部样本以便可以使用未标记基底的纹理作为产生适合于商业显示的未标记图像的示例来替换标记图案。
在图6A-6C中示出预处理过程,其中图6A图解具有标记的该服饰件的图像,图6B图解在该服饰件上识别的所述多个标记,而图6C图解标记被移除的该服饰件的图像。通过引用方式并入本文的附录A(2页)包含用于在产品建模系统的一种实施方式中识别产品上的标记的伪代码的示例。在附录A中阐述一种实施方式的标记识别过程的步骤。在一种实施方式中,通过可视检测来检测标记。在系统的另一种实施方式中,可通过时间过程来检测标记,其中红外辐射可用来在若干不同时间对标记成像并且然后基于在若干不同时间的标记图像来检测标记的图案。
在标记的识别期间,产品建模系统可使用各种技术。例如,边缘检测可用来识别每个标记和这些标记之间的间距,所识别的每个标记和这些标记之间的间距然后可以用来生成当该服饰件穿戴在人体模型上时在该服饰件的表面上的标记的网格,所述标记的网格因而允许准确地确定处于特定姿态的特定人体模型上的该服饰件的表面。可选地,该系统可基于色彩校准以白色为阈值(threshold at the white color)并且然后定位阈值之上的元素并然后还识别背景,所述背景包括人体模型的元素,诸如珠宝、眼睛或人体模型后面的背景。该系统也可使用直方图来识别标记和背景。
标记图像(一旦被识别)可通过各种过程从该服饰件的图像中被移除(如图6C所示)。例如,可通过针对每个标记位置识别邻近标记的纹理并然后用邻近区域中的纹理填充标记的位置,来移除标记。可选地,该系统可使用图像相干(image coherence)并合成图像以移除图像中的标记。
为生成该服饰件在由处于特定姿态的特定人体模型穿戴时的表面轮廓的表示,该系统把如图6D所示的标记190的相对于彼此的位置映射成轮廓曲线集194,所述轮廓曲线集表示该服饰件在由处于特定姿态的特定人体模型穿戴时的表面。由于该系统具有关于标记和它们在平坦表面上形成的如图4A所示的网格的信息,该系统能够确定该服饰件在由处于特定姿态的特定人体模型穿戴时的表面的轮廓。
一旦确定表面的轮廓并完成该预处理,可根据需要修饰(162)该服饰件在由处于特定姿态的特定人体模型穿戴时的模型。然后,由产品模型系统对模型进行后处理(170)。在后处理过程期间,产品模型系统使用作为产品模型系统的一部分的色彩映射模块来色彩化该模型。该色彩化允许处于特定姿态的特定人体模型上的每个服饰件的每个模型把该服饰件转换成任何色彩,诸如图7A和7B所示的两种不同色彩。如图7C所示,该系统可对每个工作阶段(session)使用具有已知光谱响应的色彩校准卡来校准相同工作阶段的图像。为改变该服饰件的色彩,织物可被缠绕到如7C所示的球上,其然后被映射到模型以改变模型的色彩。
通过引用方式并入本文的附录B-E针对产品建模系统的特定实施方式说明了用于如下的代码:1)使用归一化有序色彩分布来重映射图像的色彩;2)按归一化直方图顺序建立色彩图,其中具有来自匹配色彩空间的索引;3)建立查找表以把色彩从源球重映射到目的地球;以及4)将具有源球色彩图的源图像的色彩重映射到具有球色彩对象的色彩图的目的地图像。使用这些附录中阐述的代码(和这些附录中描述的过程步骤),色彩映射过程:1)通过使用球建立直方图以及然后建立分类表,而为源图像建立色彩图(附录C中的BuildMap代码);2)建立重映射表(附录D中的BuildReMap表代码);3)把图像色彩(附录B和E中的代码)重映射到产品上。该系统也可将色彩和纹理分层以便处于特定姿态的特定人体模型上的特定服饰件的色彩化模型更准确地模仿不同织物和/或织物线,这例如导致准确模仿在具有特定类型织物的该服饰件上的设计的印刷墨。
一旦完成了色彩化,处于特定姿态的特定人体模型上的特定服饰件的模型被集成到诸如网站的服务(180)中,该服务将具有特定设计的服饰件出售给消费者。
当该模型被集成到服务中时,产品建模系统可对由消费者选择的设计执行弯曲映射(182)并且允许用户选择特定背景(184)。图8A示出示例设计。图8B示出具有平坦图像的典型系统中的服饰件上示出的示例性设计。使用产品建模系统,设计图像和处于特定姿态的特定人体模型上的特定服饰件的模型的表面轮廓(例如见图8D)之间的映射被完成,使得以更现实的三维方式在图8E所示的模型上示出该设计。
在弯曲映射(其可为双三次图像弯曲)期间,设计200的网格被映射到表面轮廓网格202,表面轮廓网格202然后被放置到该服饰件上以生成具有该设计的该服饰件的更现实模型,如图8D所示。在映射过程中,设计中的点被映射到表面轮廓网格,表面轮廓网格进而被映射到该服饰件上。图像背景可以由产品建模系统容易地调换,如图9A-9C所示。
尽管本文提供的示例是针对人类穿戴的服饰件(衬衫),但是产品建模系统可用于具有各种不同模型(人体模型、动物模型、无生命模型诸如机器人或时装模特儿(mannequin))且具有任何数量的不同模型姿态的各种不同产品(其它服饰件、其它服装、帽子、鞋、宠物衣服、诸如杯子的无生命对象),因为上面的示例仅仅是说明性的。
虽然前面已参考了本发明的特定实施例,但是本领域的技术人员要明白可在不偏离本发明的原理和精神的情况下对这个实施例做出改变,本发明的范围由所附权利要求书限定。
附录A
用于定位标记的示例代码
/**************************************************************************
*程序:
*     FindAndSynthMarkera
*
*描述:
*     找出照片中的标记图案,
*     把标记阵列保存到文件,
*     使用多频纹理合成来填充所找出的标记。
*     找出背景α通道
*************************************************************************/
void ModelShot::FindAndSynthMarkers(
                                             Image     *aSrcImage,
                                             Image     *aDstImage,)
{
       //找出标记
       //保存RGB图像到目的地
       CopyRGBChannels(SrcImage,DstImage);
       //基于衬衫色彩选择单色定标器
       ChooseMonochomeScalers(SKU_COLOR,aMonochromeScaler);
       //以良好的对比度将源图像转换成单色
       ConvcrtSourceImageToMonoChrome(aMonochromcScaler,SrcImage,aMonoImage);
       //应用高斯差分带通滤波器以提高标记对比度
       ApplyBandPassFilter(aMonoImage,LowMarkerSize,HighMarkerSize);
       //从满亮度中找出第一直方图最小值,这是标记阈值
       MarkerThreshold=FindHistogramMinima(aMonoImage,1);
       //通过阈值化来产生标记图像
       ApplyThreshold(aMonoImage,MarkerImage,MarkerThreshold);
       //通过填充每个找出的区域并且对像素位置进行平均来建立标记阵列。
       BuildMarkerArray(MarkerImage,aMarkerArray);
       SavcMarkerArray(aMarkerArray,aMarkerArrayFilc)
       //将找出的标记保存为通道;
       CopyChannel(MarkerImage,DstImage,MarkerChannel);
       //找出背景
       //从满亮度中找出第二直方图最小值,这是背景阈值
       BackgroundThrcabold=FindHistogramMinima(DstImage,2);
       //通过阈值化来产生背景α
       ApplyThreshold(DstImage,MarkerImage,MarkerThreshold);
       //将找出的背景α保存为通道;
       CopyChannel(MarkerImage,DstImage,backgroundCahnnel);
       //填充标记
       //分离高频图像分量
       HighPassFilten(DstImage,HighPasImage,2.0)
       //分离低频分量,下采样以提高纹理合成速度。
       DownaampleImgage(DstImage,LowPassImage,2.0)
       //提高标记的大小以覆盖来自图像浮散(bloom)的色彩伪影。
       ExpandAlpha(DstImage,MarkerChannel,HighSynthSelecticn,BloomDist);
       //下采样低频分量的选择。
       DownsampleImage(HighSynthSelection,LowSynthSelection,2.0)
       //用来自局部11×11邻域的纹理示例
       //填充LowPassImage标记。
       LocalTextureSynthesis(LowPassImage,LowSynthSelection,11,11);
       //用来自局部5×5邻域的纹理示例
       //填充HighPassImage标记。
       LocalTextureSynthesis(HighPassImage,HighSynthSolection,5,5);
}
附录B
用于重映射图像色彩的示例代码
/**************************************************************************
*程序:
*     RemapImageColor
*
*描述:
*     使用类似的源和目的地色彩参考照片的归一化有序色彩
*分布来重映射图像色彩。参考照片不需要被对准,仅具有按
*比例照射的色彩区域。
*
*
*************************************************************************/
void ModelShot::RemapImgeColor(
                                          Image     *aSrcImage,
                                          Image     *aSrcColorReference,
                                          Image     *aDstImage,
                                          Image     *aDstColorReference
                                          )
{
       //制成源色彩图
       SphereColor*aSrcMap=SphereColor∷NewL(iSorvice);
       aSrcMap→BuildMap(aSrcColorReference,3,0x00007fff);
       //制成目的地色彩图
       SphercColor*aDstMap=SphercColor∷NewL(iService);
       aDstMap→BuildMap(aDstColorRoference,3,0x00007fff);
       aDstMap→RemapImageCompoaite(aSrcImage,aSrcMap,aDstImage);
}
附录C
用于建立图的示例代码
/**************************************************************************
*程序:
*    BuildMap
*
*描述:
*     以归一化直方图顺序建立色彩图,其中具有
*从匹配色彩空间映射的索引。
*    使用这些步骤:
*          1.找出使这个色彩样本的分辨率最大化的图像的
*            单色标度。
*          2.根据这个单色值为用每个面元的平均色彩注释
*            的图像建立直方图。
*          3.建立归一化到在参考图像中找出的每个亮度量的
*            色彩的图。
*4.建立从参考色彩空间变到归一化图空间的查找。
*
*************************************************************************/
BOOL SphereColor::BuildMap(Image*aSphereImage,
                                            INT32aMapChannel,
                                            INT32aMapThreshold)
{
       INT32anEntryCount=1<<SPHERE_COLOR_SHIFT;
       UINT16*aBuffcr=(UINT16*)aSphereImage->image_ptr,
       INT32anImageSize=aSphereImage->width*aSphereImage->height;
       INT64anAccumColor[3];
       INT32aFoundPixelCount=0;
       sphereHistoAccum*aTempColorEntries;
       INT32i;
       BOOLaReult=FALSE;
       iService->AllocL(anEntryCount*sizeof(sphereHistoAccum),′cet’);
       aTempColorEntries=(sphereHistoAccum*)iService->GetAlloc();
       iService->PushAllocL(aTempColorEntries);
       memset(aTempColorEntries,0,anEnryCount*sizenf(sphereHistoAccum));
       anAccumColor[0]=0;
       anAccumColor[1]=0;
       anAccumColor[2]=0;
       for(i=0;i<anImageSize;i++)
{
       if(aBuffer[aMapChannel]>aMapThreahold)
       {
                     anAccumColor[0]+=aBuffer[0];
                     anAccumColor[1]+=aBuffer[1];
                     anAccumColor[2]+=aBuffer[2];
                     aFoundPixclCount++;
              }
              aBuffer+=aSphereImage->channels;
       }
       if(aFoundPixelCount>0)
       {
              anAccumColor[0]=anAccumColor[0]/aFoundPixelCount;
              anAccumColor[1]=anAccumColor[1]/aFoundPixclCount;
              anAccumColor[2]=anAccumColor[2]/aFoundPixelCount;
              CalcMonoScalers(anAccumColor);
              aBuffer=(UINT16*)aSphereImage->image_ptr;
              for(i=0;i<anImageSize;i++)
              {
                     if(aBuffer[aMapChannel]>aMapThreahold)
                     {
                           UINT32 aLuminance=
                                      ((aBuffer[0]*(UINT32)iMonoScaler[0])>>16)+
                                      ((aBuffer[1]*(UTNT32)iMonoScaler[1])>>16)+
                                      ((aBuffer[2]*(UINT32)iMonoScaler[2])>>16);
                           INT32aLumIndcx=aLuminamce>>(16-
SPHERE_COLOR_SHIFT);
              aTempColorEntries[aLumIndex].shaColorCount++;
              aTempColorEntries[aLumIndex].shaAverageColor[0]+=aBuffer[0];
              aTempColorEntries[aLumIndex].shaAverageColor[1]+=aBuffcr[1];
              aTempColorEntries[aLumIndex].shaAverageColor[2]+=aBuffcr[2];
                   aTempColorEntries[aLumIndex].shaLuminance=aLuminance;
              }
              aBuffer+=aSphereImage->channels;
       }
       if(aFoundPixelCount>256)
       {
              double anIncrcmcnt =(REAL)aFoundPixclCount/(REAL)anEntryCount;
              double aRunningCount=0;
              UINT32j;
              aResult=TRUE;
              if(this->iHisto==NULL)
              {
                            iServic->AllocL(anEntryCount*sizeof(sphereHistoEntry),′hist′);
                            this->=(sphereHistoEntry*)iService->GetAlloc();
                     }
                     memset(iHisto,0,anEntryCount*sizeof(sphereHistoEntry));
                     for(i=0;i<anEntryCount;i++)
                     {
                            INT32 aColorCount=aTempColorEntries[i].shaColorCount;
                            if(aColorCount!=0)
                            {
                            aTempColorEntries[i].shaAverageColor[0]/=aColorCount;
                            aTempColorEntries[i].shaAverageColor[1]/=aColorCount;
                            aTempColorEntries[i].shaAverageColor[2]/=aColorCount;
                            }
                     }
                     for(i=0;i<anEntryCount;i++)
                     {
                     double aNeextCount=aRunningCount+
aTempColorEntries[i].shaColorCount;
                     double aHistoValue=(aRunningCount/anIncrement);
                     UINT32aRunStart=(UINT32)floor(aHistoValue);
                     UINT32aRnEnd=(UINT32)ceil(aNextCount/anIncrement);
                     UINT32aRunDiFF;
                     INT32aLumShift=(16-SPHERE_COLOR_SHIFT);
                     INT32aLumIncrement=1<<aLumShift;
                     if(aRunStart>(UINT32)anEntryCount-1)
                           aRunStart=(UINT32)anEntryCount-1;
                     if(aRunEnd>(UINT32)anEtryCount
                           aRunEnd=(UINT32)anEntryCount;
                     aRunDiff=aRunEnd-aRunStart;
                     iHiSTO[i].shaIndex=aRunStart;
                     iHisto[i].shaHistoFract=(UINT16)((aHisto Value-aRunStart)*
0x0000FFFF);
                     if(iHisto[i].shaHistoFract>0x00000ffff)
                     iHisto[i].shaHistoFract=0x0000ffff;
                     if(aRunDiff)
                     {
                           UINT32aRunScaler=0x0010000/aRunDiff;
                           for(j=aRunStart;j<aRunEnd;j++)
                                {
                                       INT32 aFract=((j-aRunStart)*aRunScaler);
                                       this->iHisto[j].shaLuminance=(i<<aLumShift);
                                       this->iHisto[j].shaLuminance+=(aLumIncrcmcnt*
aFract>>16;
                                       INT32 aColorScaler=0;
                                       if(aTempColorEntries[i].shaLuminance>0)
                                       {
                                               aColorScaler=(this-
>iHisto[j].shaLuminance<<16)/
                                                aTempColorEntries[i].shaLuminance;
                                        }
                                        this->iHisto[j].shaColor[0]=
(UINT16)((aTempColorEntries[i].shaAverageColor[0]
             *aColorScaler>>16);
                                        thia->iHisto[j].shaColor[1]=
(UINT16)((aTempColorEntries[i].shaAverageColor[1]
             *aColorSealer)>>16;
                                       this->iHisto[j].aColor[2]=
(UINT16)((aTempColorEntries[i].shaAverageColor[2]
             *aColorScaler)>>16);
                               }
                          }
                          aRunningCount=aNextCount;
                   }
                   this->iHisto[anEntryCount-1].shaColor[0]=this->iHisto[anEntryCount-
2].shaColor[0];   this->iHisto[anEntryCount-1].shaColor[1]=this->iHisto[anEntryCount-
2].shaColor[1];   this->iHisto[anEntryCount-1].shaColor[2]=this->iHisto[anEntryCount-
2].shaColor[2];
               }
       }
       iService->PopAndDestroyAlloc(aTempColorEntries);
       return(aResult);
}
附录D
用于建立重映射表的示例代码
/**************************************************************************
*程序:
*     BuildRemapTable
*
*描述:
*     建立查找表以把色彩从源球重映射到目的地球。
*
*     这个函数建立基于亮度的查找。
*对于每个亮度条目,完成这些事情:
*          1.查找从这个亮度到归一化色彩参考空间中的索引。
*
*          2.使用这个亮度的分数权重而在参考图中的两个条目
*            之间内插。
*          3.把内插值存储在这个亮度的条目中。
*
*************************************************************************/
void SphereColor::BuildRemapTable(SphereColor*aSourceSphere)
{
       INT32anEntryCount=1<<SPHERE_COLOR_SHIFT;
       UINT16*aDstColor;
       INT32aLumShift=(16-SPHERE_COLOR_SHIFT;
       INT32i;
       if(iRemap==NULL)
       {
              iService->AllocL(anEntryCount*aizeof(UINT16)*3,′rmap′);
              this->iRemap=(UINT16*)iService->GetAlloc();
       }
       aDstColor=this->iRemap;
       for(i=0;i<anEntryCount;i++)
       {
            //对于表中的每个条目...
            //从亮度映射到归一化直方图顺序中
            INT32aHistoIndex0=aSourceSphere->iHisto[i].shaIndex;
            //如果这不是最后条目...
            if((i+1)<anEntryCount)
            {
                   //在这个和下个条目之间内插以进行平滑
                   UINT32 sHistoBlend1=aSourceSphere->iHisto[i+1].shaHistoFract;
                   UINT32aHiatoBlend0=0x0000ffff=aHistoBlend1;
                   INT32aHistolndex1=aSourceSphere->iHisto[i+1].shaIndex;
                   UINT16*aDstColor0=this->iHisto[aHistoIndex0].shaColor;
                   UINT16*aDatColor1=this->iHisto[aHistoIndex1].shaColor;
                   aDstColor[0]=(UINT16)(((aDstColor0[0]*aHistoBlend0)>>*16+
aHistoBlend1)>>16));
                   aDstColor[1]=(UINT16)(((aDstColor0[1]*aHistoBlend0)>>16+
aHistoBlend1)>>16));
                   aDstColor[2]=(UINT16)(((aDatColor0[2]*aHistoBlend0)>>*16)+
aHistoBlend1)>>16));
             }
             else
             {
                   //最后条目,不内插
                   UINT16*aHistoColor=this->iHisto[aHistoIndex0].shaColor;
                   aDstColor[0]=aHistoColor[0];
                   aDstColor[1]=aHistoColor[1];
                   aDstColor[2]=aHistoColor[2];
             }
             aDstColor+=3;
      }
}
附录E
用于重映射图像组成的示例代码
/**************************************************************************
*程序:
*     RcmapImagcCompositc
*
*描述:
*     把具有aSourceSphere色彩图的aSourceImage的色彩重映射
*到具有这个SphereColor对象的色彩图的aDestImage。
*aMapChannel是α通道的索引,其中以白色指示要重映射的区域。
*重映射的色彩然后被混合到图像中。
*
*    这个函数完成以下:
*           建立从源色彩空间变到目的地色彩空间的remapTable。
*
*    使用源色彩空间的单色定标器,找出每个像素的亮度。
*
*    使用该亮度在重映射表中查找新色彩值。
*    将新色彩值组成目的地图像。
*************************************************************************/
void SphereColor::RemapImageConposite(Image*aSourceImage,
                                                              Sphereolor
*aSourceSphere,                                              Image*aDestImage,
                                                              INT32aMapChanncl)
{
       if(aSourceImage&&aSourcere&&aDeatImage)
       {
              if(aSourceImage->iElemType==elem16bit &&
                     aDestImage->iElemType==elem16bit)
              {
                     if(aSourceImage->height==aDcstImage->hcight &&
                            aSourceImage->width==aDestImage->width &&
                            aSoourceImage->chennels>aMapChannel &&
                            aDestImge->channels>3)
                     {
                            if(iHisto &&aSoourceSphere->iHisto)
                            {
                                    INT32 aPixelCount=aSourceImage->beight*
aSourceImage->width;  
                                    UINT16*aSrcBuffer=(UINT16*)aSourceImage-
>image_ptr,                        
                                    UINT16*aDstBuffer=(UINT16*)aDestImage-
>image_ptr;                       
                                    UINT32*srcMonoScaler=aSoourceSphcre->iMonoScalcr;
                            INT32anEntryCount=1<<SPHERE_COLOR_SHIFT;
                            UINT16*aDstColor;
                            INT32aLumShift=(16-SPHERE_COLOR_SHIFT);
                            BuildRemapTable(aSourceSpheere);
                            INT32i;
                            for(i=0;i<aPixelCount;i++)
                            {
                                    //对于图像中的每个像素...
                                    if(aSrcBuffer[aMapChannel]>0x000000ff)
                                    {
                                          //取得混合值以进行α着色
                                          UINT32anAlphaBlend0=
aSrcBuffer[aMapChanne];                  UINT32anAlphaBlend1=0x0000ffff-
anAlphaBlend0;
                                          //使用这个色彩空间的单色定标器
                                          //来计算亮度。
                                          UINT32aLuminance*
                                                   ((aSrcBiuffer[0]*
(UINT32)srcMonoscaler[0])>>16+
                                                   ((aSrcBiuffer[1]*
(UINT32)srcMonoScaler[1])>>16)+
                                                   ((aSrcBiuffer[2]*
(UINT32)srcMonoScaler[2])>>16);
                                          //将亮度值转换成用于查找的索引
                                          INT32aLumlndex=aLuminance>>
aLumShift;                               //查找用于混合的替换色彩。
                                          UINT16*aBlendColor=iRemap+
(aLumIndcx*3);
                                          //把色彩α混合到目的地图像中。
                                          aDatBuffer[0]=
(UINT16)(((aBlendColor[0]*anAlphaBlend0)>>16)+
((aDstBuffer[0]*anAlphaBlcndl)>>16));
                                           aDatBuffer[1]=
(UINT16)(((aBlendColor[1]*anAlphaBlend0)>>16+
((aDatBuffer[1]*anAlphaBlend1)>>16));
                                           aDatBuffer[2]=
(UINT16)(((aBlendColor[2]*anAlphaBlend0)>>16+
((aDatBuffer[2]*anAlphaBlend1)>>16));
                                     }
                                     INT32aSum=aDstBuffer[3];
                                     aSum+=aSrcBuffer[aMapChannwl];
                                     if(aSum>0x0000ffff)
                                           aSum=0x0000ffff;
                                     aDatBuffer[3]=aSum;
                                     aSrcBuffer+=aSoureeImage->channels;
                                     aDstBuffer+=aDestImage->channels;
                             }
                       }
                  }
             }
       }
}

Claims (34)

1.一种用于建模产品的装置,包括:
多个标记,其能够在所述产品上形成不遮蔽该产品的表面的标记图案;
成像设备,其能够拍摄所述多个标记和该产品的图像;以及
计算设备,其基于所成像的产品捕获当该产品在对象上时该产品的表面轮廓,将设计施加到该产品并且使用所捕获的所述对象上的产品的表面轮廓来生成在所述对象上时产品上的设计的视觉表示。
2.权利要求1的装置,其中该计算设备生成网页,其在网页上向消费者显示具有设计的产品的视觉表示。
3.权利要求2的装置,其中对象还包括人体模型、时装模特儿或动物。
4.权利要求1的装置,其中每个标记还包括颜料片。
5.权利要求1的装置,其中每个标记还包括反射性材料片。
6.权利要求5的装置,其中该反射性材料片还包括逆向反光材料片。
7.权利要求1的装置,其中每个标记还包括圆形标记。
8.权利要求1的装置,其中所述多个标记还包括产品上的对人不可见的线的网格。
9.权利要求1的装置,其中产品还包括服饰件、服装、由人类穿戴的物品或者由动物穿戴的物品。
10.权利要求1的装置,其中计算设备把设计上的一个或多个点映射到对象上的产品的表面轮廓上的一个或多个点。
11.权利要求1的装置,其中计算设备在生成产品上的设计的视觉表示之前色彩化对象上的产品的表面轮廓。
12.权利要求11的装置,其中计算设备在生成产品上的设计的视觉表示之前纹理化对象上的产品的表面轮廓。
13.权利要求1的装置,其中成像设备还包括照相机。
14.权利要求1的装置,其中计算设备还包括联网计算系统、客户端/服务器系统、对等系统、ASP模型类型系统、膝上型计算机、移动设备或移动蜂窝电话。
15.权利要求1的装置,其中标记图案还包括产品上的标记的网格。
16.一种用于产品建模的方法,包括:
使用在产品上形成不遮蔽该产品的表面的标记图案的多个标记,提供通过成像对象上的该产品所生成的所述对象上的该产品的表面轮廓;
把设计施加到该产品;以及
使用所捕获的该对象上的所述产品的表面轮廓,生成在所述对象上时该产品上的设计的视觉表示。
17.权利要求16的方法,其中提供三维表面还包括在产品上放置多个标记以创建网格、成像具有该网格的对象上的产品以生成成像的产品以及基于成像的产品来捕获当产品在对象上时产品的表面轮廓。
18.权利要求17的方法,还包括在网页上向消费者显示具有设计的产品的视觉表示。
19.权利要求17的方法,其中对象还包括人体模型、时装模特儿或动物。
20.权利要求17的方法,其中把所述多个标记放置在产品上还包括把多个标记附着到实体产品。
21.权利要求17的方法,其中把所述多个标记放置在产品上还包括把多个标记电子地附着到实体产品的图像。
22.权利要求17的方法,其中每个标记还包括颜料片。
23.权利要求17的方法,其中每个标记还包括反射性材料片。
24.权利要求23的方法,其中该反射性材料片还包括逆向反光材料片。
25.权利要求17的方法,其中每个标记还包括圆形标记。
26.权利要求17的方法,其中把多个标记放置在产品上还包括把对人不可见的线的网格放置在产品上。
27.权利要求16的方法,其中产品还包括服饰件、服装、由人类穿戴的物品或者由动物穿戴的物品。
28.权利要求16的方法,其中生成产品上的设计的视觉表示还包括把设计上的一个或多个点映射到对象上的产品的表面轮廓上的一个或多个点。
29.权利要求28的方法,其中映射一个或多个点还包括使用弯曲映射。
30.权利要求28的方法,其中弯曲映射还包括使用双三次图像弯曲。
31.权利要求16的方法,其中生成产品上的设计的视觉表示还包括在生成产品上的设计的视觉表示之前色彩化对象上的产品的表面轮廓。
32.权利要求31的方法,其中色彩化产品的表面轮廓还包括使用色彩校准卡。
33.权利要求31的方法,其中生成产品上的设计的视觉表示还包括在生成产品上的设计的视觉表示之前纹理化对象上的产品的表面轮廓。
34.权利要求16的方法,其中标记图案还包括产品上的标记的网格。
CN200880122986.2A 2007-10-26 2008-10-24 产品建模系统和方法 Active CN101933048B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/925716 2007-10-26
US11/925,716 US8174521B2 (en) 2007-10-26 2007-10-26 Product modeling system and method
PCT/US2008/081215 WO2009055738A1 (en) 2007-10-26 2008-10-24 Product modeling system and method

Publications (2)

Publication Number Publication Date
CN101933048A true CN101933048A (zh) 2010-12-29
CN101933048B CN101933048B (zh) 2015-04-01

Family

ID=40580071

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200880122986.2A Active CN101933048B (zh) 2007-10-26 2008-10-24 产品建模系统和方法

Country Status (8)

Country Link
US (4) US8174521B2 (zh)
EP (1) EP2215603A4 (zh)
JP (1) JP4951709B2 (zh)
KR (1) KR101243429B1 (zh)
CN (1) CN101933048B (zh)
AU (1) AU2008316632B2 (zh)
CA (1) CA2706699C (zh)
WO (1) WO2009055738A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101925928B (zh) * 2008-01-28 2013-12-11 威仕达品特技术有限公司 呈现将印刷在三维产品的曲面上的平面设计
CN103914851A (zh) * 2013-01-08 2014-07-09 彩滋公司 使用红外成像产生数字图像以用于产品定制
CN110709883A (zh) * 2017-05-31 2020-01-17 耐克创新有限合伙公司 用于服饰物品的反射材料的选择性沉积
CN113050545A (zh) * 2015-03-16 2021-06-29 彩滋公司 制备切割热粘合膜中的自动计算机辅助设计

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10127480B1 (en) 2007-03-09 2018-11-13 R. B. III Associates, Inc. System for automated decoration
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
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
US9087355B2 (en) * 2008-08-22 2015-07-21 Zazzle Inc. Product customization system and method
US8947455B2 (en) * 2010-02-22 2015-02-03 Nike, Inc. Augmented reality design system
CN102339023B (zh) * 2010-07-16 2013-11-13 华宝通讯股份有限公司 机械装置控制系统
US9110673B2 (en) * 2010-08-31 2015-08-18 Daniel Reuven Ostroff System and method of creating and remotely editing interactive generic configurator programs
US8516392B2 (en) * 2010-08-31 2013-08-20 Daniel Reuven Ostroff Interactive generic configurator program
US8711175B2 (en) * 2010-11-24 2014-04-29 Modiface Inc. Method and system for simulating superimposition of a non-linearly stretchable object upon a base object using representative images
US9111306B2 (en) 2011-01-10 2015-08-18 Fujifilm North America Corporation System and method for providing products from multiple websites
JP2014531637A (ja) * 2011-08-31 2014-11-27 ザズル インコーポレイテッド 製品オプションフレームワークおよびアクセサリー
US20130090894A1 (en) * 2011-10-11 2013-04-11 Tomer DIKERMAN System and method for computer-aided user-specific design
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
US8851173B2 (en) 2012-03-09 2014-10-07 Halliburton Energy Services, Inc. Set-delayed cement compositions comprising pumice and associated methods
US9212534B2 (en) * 2012-03-09 2015-12-15 Halliburton Energy Services, Inc. Plugging and abandoning a well using a set-delayed cement composition comprising pumice
US9227872B2 (en) 2012-03-09 2016-01-05 Halliburton Energy Services, Inc. Cement set activators for set-delayed cement compositions and associated methods
US9505972B2 (en) 2012-03-09 2016-11-29 Halliburton Energy Services, Inc. Lost circulation treatment fluids comprising pumice and associated methods
US9796904B2 (en) 2012-03-09 2017-10-24 Halliburton Energy Services, Inc. Use of MEMS in set-delayed cement compositions comprising pumice
US9371712B2 (en) 2012-03-09 2016-06-21 Halliburton Energy Services, Inc. Cement set activators for set-delayed cement compositions and associated methods
US9580638B2 (en) 2012-03-09 2017-02-28 Halliburton Energy Services, Inc. Use of synthetic smectite in set-delayed cement compositions
US9790132B2 (en) 2012-03-09 2017-10-17 Halliburton Energy Services, Inc. Set-delayed cement compositions comprising pumice and associated methods
US9328281B2 (en) 2012-03-09 2016-05-03 Halliburton Energy Services, Inc. Foaming of set-delayed cement compositions comprising pumice and hydrated lime
US9255454B2 (en) 2012-03-09 2016-02-09 Halliburton Energy Services, Inc. Set-delayed cement compositions comprising pumice and associated methods
US9328583B2 (en) 2012-03-09 2016-05-03 Halliburton Energy Services, Inc. Set-delayed cement compositions comprising pumice and associated methods
US9534165B2 (en) 2012-03-09 2017-01-03 Halliburton Energy Services, Inc. Settable compositions and methods of use
US10202751B2 (en) 2012-03-09 2019-02-12 Halliburton Energy Services, Inc. Set-delayed cement compositions comprising pumice and associated methods
US9856167B2 (en) 2012-03-09 2018-01-02 Halliburton Energy Services, Inc. Mitigation of contamination effects in set-delayed cement compositions comprising pumice and hydrated lime
US10082001B2 (en) 2012-03-09 2018-09-25 Halliburton Energy Services, Inc. Cement set activators for cement compositions and associated methods
US10195764B2 (en) 2012-03-09 2019-02-05 Halliburton Energy Services, Inc. Set-delayed cement compositions comprising pumice and associated methods
US9255031B2 (en) 2012-03-09 2016-02-09 Halliburton Energy Services, Inc. Two-part set-delayed cement compositions
US9665981B2 (en) * 2013-01-07 2017-05-30 R.B. Iii Associates Inc System and method for generating 3-D models from 2-D views
CN102864566B (zh) * 2012-09-29 2014-02-12 加宝利服装有限公司 织物制备方法、制备控制方法、制备控制装置和制备系统
US20140201023A1 (en) * 2013-01-11 2014-07-17 Xiaofan Tang System and Method for Virtual Fitting and Consumer Interaction
US8712566B1 (en) 2013-03-14 2014-04-29 Zazzle Inc. Segmentation of a product markup image based on color and color differences
US9704296B2 (en) 2013-07-22 2017-07-11 Trupik, Inc. Image morphing processing using confidence levels based on captured images
US8958663B1 (en) * 2013-09-24 2015-02-17 Zazzle Inc. Automated imaging of customizable products
US20160168363A1 (en) * 2014-06-27 2016-06-16 Api Intellectual Property Holdings, Llc Nanocellulose-polymer composites, and processes for producing them
US9734631B2 (en) 2014-07-22 2017-08-15 Trupik, Inc. Systems and methods for image generation and modeling of complex three-dimensional objects
GB201420090D0 (en) * 2014-11-12 2014-12-24 Knyttan Ltd Image to item mapping
ES2765277T3 (es) 2014-12-22 2020-06-08 Reactive Reality Gmbh Método y sistema para generar datos de modelo de prenda
CN113693325B (zh) * 2015-08-10 2022-07-08 彩滋公司 用于定制产品数字标记的系统和方法
US10176636B1 (en) * 2015-12-11 2019-01-08 A9.Com, Inc. Augmented reality fashion
US10192346B2 (en) * 2016-09-28 2019-01-29 Pixar Generating UV maps for modified meshes
JP6915629B2 (ja) * 2016-12-27 2021-08-04 ソニーグループ株式会社 製品デザインシステムおよびデザイン画像修正装置
EP3582642A4 (en) 2017-02-20 2021-01-13 3M Innovative Properties Company OPTICAL ARTICLES AND INTERACTING SYSTEMS
US10679539B2 (en) * 2017-08-10 2020-06-09 Outward, Inc. Two-dimensional compositing
WO2019064108A1 (en) 2017-09-27 2019-04-04 3M Innovative Properties Company PERSONAL PROTECTIVE EQUIPMENT MANAGEMENT SYSTEM USING OPTICAL PATTERNS FOR EQUIPMENT AND SECURITY MONITORING
CN112262363A (zh) * 2018-02-27 2021-01-22 利惠商业有限公司 激光整理设计工具
US20190272663A1 (en) * 2018-03-05 2019-09-05 Vida & Co. Simulating display of a 2d design on an image of a 3d object
US10650584B2 (en) * 2018-03-30 2020-05-12 Konica Minolta Laboratory U.S.A., Inc. Three-dimensional modeling scanner
CN114667530A (zh) 2019-08-29 2022-06-24 利惠商业有限公司 具有服装和精加工的虚拟预览的数字陈列室
CN113487727B (zh) * 2021-07-14 2022-09-02 广西民族大学 一种三维建模系统、装置及方法
KR102536525B1 (ko) * 2022-06-29 2023-05-26 주식회사 쓰리디뱅크 마커가 구비된 특수 마네킹을 이용한 3d 스캔용 촬영장치

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040236455A1 (en) * 2003-05-22 2004-11-25 Kimberly-Clark Worldwide, Inc. Method of designing a product in a virtual environment
CN1828671A (zh) * 2006-04-14 2006-09-06 浙江大学 基于图像的服装虚拟展示系统中的网格纹理映射方法
CN1877629A (zh) * 2006-06-20 2006-12-13 东华大学 一种纺织面料网上展示方法

Family Cites Families (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6280891B2 (en) 1994-05-04 2001-08-28 Hologram Industries S.A. Multi-layer assembly and method for marking articles and resulting marked articles
JPH0944556A (ja) * 1995-08-03 1997-02-14 Sanyo Electric Co Ltd 試着シミュレーション方法
US5850222A (en) * 1995-09-13 1998-12-15 Pixel Dust, Inc. Method and system for displaying a graphic image of a person modeling a garment
JPH09204478A (ja) * 1996-01-25 1997-08-05 Topcon Corp 商品情報システム
JPH09273017A (ja) * 1996-04-02 1997-10-21 Toray Ind Inc 衣服の着用状態表示方法、衣服の製造方法および衣服の製造支援装置
JPH1153427A (ja) * 1997-06-06 1999-02-26 Toray Ind Inc 画像の色柄設定方法および装置
US6310627B1 (en) 1998-01-20 2001-10-30 Toyo Boseki Kabushiki Kaisha Method and system for generating a stereoscopic image of a garment
US6097310A (en) * 1998-02-03 2000-08-01 Baker Hughes Incorporated Method and apparatus for mud pulse telemetry in underbalanced drilling systems
US6173211B1 (en) 1998-04-15 2001-01-09 Gerber Technology, Inc. Apparatus and method for fabric printing of nested
US6836695B1 (en) 1998-08-17 2004-12-28 Soft Sight Inc. Automatically generating embroidery designs from a scanned image
US20050131571A1 (en) 1998-11-23 2005-06-16 Darryl Costin Internet customization of apparel
JP4438971B2 (ja) * 1999-10-20 2010-03-24 グンゼ株式会社 データ立体化装置及びデータ立体化プログラムを記録したコンピュータ読み取り可能な記録媒体
JP2001160095A (ja) * 1999-12-03 2001-06-12 Soft Ryutsu Kk 電子モールシステム、電子モールシステムにおける商品情報送信方法、電子モールシステムを実現するためのコンピュータプログラムを記録した記録媒体、および、電子モールシステムにアクセスした外部コンピュータで商品を表示するためのコンピュータプログラムを記録した記録媒体
US7302114B2 (en) 2000-01-18 2007-11-27 Branders.Com, Inc. Methods and apparatuses for generating composite images
US6196146B1 (en) 2000-03-23 2001-03-06 Pulse Microsystems Ltd. Web based embroidery system and method
JP2001273446A (ja) * 2000-03-28 2001-10-05 Akesesu:Kk 商品試着システム
US7149665B2 (en) 2000-04-03 2006-12-12 Browzwear International Ltd System and method for simulation of virtual wear articles on virtual models
US7216092B1 (en) 2000-04-14 2007-05-08 Deluxe Corporation Intelligent personalization system and method
US6968075B1 (en) * 2000-05-09 2005-11-22 Chang Kurt C System and method for three-dimensional shape and size measurement
US20020099524A1 (en) 2000-05-31 2002-07-25 3M Innovative Properties Company Process and system for designing a customized artistic element package
US6546309B1 (en) * 2000-06-29 2003-04-08 Kinney & Lange, P.A. Virtual fitting room
JP2002058045A (ja) * 2000-08-08 2002-02-22 Komatsu Ltd 現実の物体をバーチャル3次元空間に登場させるためのシステム及び方法
AU2001278318A1 (en) 2000-07-24 2002-02-05 Jean Nicholson Prudent Modeling human beings by symbol manipulation
US6473671B1 (en) 2000-09-11 2002-10-29 He Yan 3-D modeling of prototype garments
US7918808B2 (en) 2000-09-20 2011-04-05 Simmons John C Assistive clothing
BE1013816A6 (nl) 2000-10-30 2002-09-03 Douelou Nv Order-productie-en distributie-systeem voor kleding en confectie en methodiek.
JP2002140578A (ja) * 2000-10-31 2002-05-17 Fujitsu Ltd 販売支援方法、販売支援装置及び記録媒体
US6564118B1 (en) 2000-12-28 2003-05-13 Priscilla Swab System for creating customized patterns for apparel
GB0101371D0 (en) * 2001-01-19 2001-03-07 Virtual Mirrors Ltd Production and visualisation of garments
US6842532B2 (en) 2001-02-08 2005-01-11 The Hong Kong Polytechnic University Three dimensional measurement, evaluation and grading system for fabric/textile structure/garment appearance
FI20011814A (fi) 2001-09-14 2003-03-15 Jari Ruuttu Menetelmä tietyn tuotteen hankkimiseksi julkisen tietoverkon, kuten Internetin, kautta
US7479956B2 (en) * 2001-10-19 2009-01-20 Unique Solutions Design Ltd. Method of virtual garment fitting, selection, and processing
US20030168148A1 (en) 2002-01-30 2003-09-11 Gerber Scientific Products, Inc. Apparatus and method for printing and cutting customized wall decorations
US20030182402A1 (en) 2002-03-25 2003-09-25 Goodman David John Method and apparatus for creating an image production file for a custom imprinted article
JP2004086662A (ja) * 2002-08-28 2004-03-18 Univ Waseda 服試着サービス提供方法および服試着システム、利用者端末装置、プログラム、携帯電話機搭載用プログラム、並びに管理サーバ
ES2211357B1 (es) 2002-12-31 2005-10-16 Reyes Infografica, S.L. Metodo asistido por ordenador para diseñar prendas de vestir.
JP4246516B2 (ja) * 2003-02-14 2009-04-02 独立行政法人科学技術振興機構 人物動画像生成システム
US20040194344A1 (en) 2003-04-05 2004-10-07 Tadin Anthony G. User-customizable insoles for footwear and method of customizing insoles
US20040227752A1 (en) * 2003-05-12 2004-11-18 Mccartha Bland Apparatus, system, and method for generating a three-dimensional model to represent a user for fitting garments
US20050177453A1 (en) 2003-12-02 2005-08-11 Anton John T. Method and system for customization of consumer products
JP2005236888A (ja) * 2004-02-23 2005-09-02 Hitachi Software Eng Co Ltd 写真シール自販機および画像編集方法
US20060020486A1 (en) 2004-04-02 2006-01-26 Kurzweil Raymond C Machine and method to assist user in selecting clothing
US7260445B2 (en) 2004-06-24 2007-08-21 Basf Aktiengesellschaft System and method for customized industrial textile coloration
JP4473754B2 (ja) * 2005-03-11 2010-06-02 株式会社東芝 仮想試着装置
JP2007011543A (ja) * 2005-06-29 2007-01-18 Dainippon Printing Co Ltd 商品着用シミュレーションシステム、商品着用シミュレーション方法等
US7881818B2 (en) 2005-10-07 2011-02-01 Esko Ip Nv Flexible packaging incorporating two-dimensional graphics
FR2894783B1 (fr) * 2005-12-19 2011-06-10 Lectra Sa Dispositif et procede de conception d'un vetement
US20070208633A1 (en) 2006-03-06 2007-09-06 Ranjie Singh Display article customization system and method of use
US7920939B2 (en) 2006-09-30 2011-04-05 Vistaprint Technologies Limited Method and system for creating and manipulating embroidery designs over a wide area network
US7996756B2 (en) 2007-09-12 2011-08-09 Vistaprint Technologies Limited System and methods for displaying user modifiable server-rendered images
JP5237378B2 (ja) 2007-10-04 2013-07-17 ナイキ インターナショナル リミテッド 注文生産されるアイテムのためのディスプレイカードおよび方法
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
CA2705304A1 (en) 2007-11-07 2009-05-14 Skinit Customizing print content
US8170367B2 (en) 2008-01-28 2012-05-01 Vistaprint Technologies Limited Representing flat designs to be printed on curves of a 3-dimensional product
US20100169185A1 (en) 2008-06-18 2010-07-01 Keith Cottingham Self-Designed Maquettes Using Rapid Prototyping
US8411090B2 (en) * 2008-08-27 2013-04-02 The Chinese University Of Hong Kong Methods for flattening a 3D surface into a 2D piece
US9213920B2 (en) * 2010-05-28 2015-12-15 Zazzle.Com, Inc. Using infrared imaging to create digital images for use in product customization
US8516392B2 (en) * 2010-08-31 2013-08-20 Daniel Reuven Ostroff Interactive generic configurator program
US8711175B2 (en) * 2010-11-24 2014-04-29 Modiface Inc. Method and system for simulating superimposition of a non-linearly stretchable object upon a base object using representative images
US8712566B1 (en) * 2013-03-14 2014-04-29 Zazzle Inc. Segmentation of a product markup image based on color and color differences

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040236455A1 (en) * 2003-05-22 2004-11-25 Kimberly-Clark Worldwide, Inc. Method of designing a product in a virtual environment
CN1828671A (zh) * 2006-04-14 2006-09-06 浙江大学 基于图像的服装虚拟展示系统中的网格纹理映射方法
CN1877629A (zh) * 2006-06-20 2006-12-13 东华大学 一种纺织面料网上展示方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JUN EHARA ET.AL.: "Texture Overlay onto Deformable Surface for Virtual Clothing", 《ACM INTERNATIONAL CONFERENCE PROCEEDING SERIES-PROCEEDINGS OF THE 2005 INTERNATIONAL CONFERENCE ON AUGMENTED TELE-EXISTENCE,ICAT ’05 2005 ASSOCIATION FOR COMPUTING MACHINERY USA》 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101925928B (zh) * 2008-01-28 2013-12-11 威仕达品特技术有限公司 呈现将印刷在三维产品的曲面上的平面设计
CN103914851A (zh) * 2013-01-08 2014-07-09 彩滋公司 使用红外成像产生数字图像以用于产品定制
CN103914851B (zh) * 2013-01-08 2018-06-29 彩滋公司 使用红外成像产生数字图像以用于产品定制
CN108986102A (zh) * 2013-01-08 2018-12-11 彩滋公司 使用红外成像产生数字图像以用于产品定制
CN108986102B (zh) * 2013-01-08 2022-06-24 彩滋公司 使用红外成像产生数字图像以用于产品定制
CN113050545A (zh) * 2015-03-16 2021-06-29 彩滋公司 制备切割热粘合膜中的自动计算机辅助设计
CN113050545B (zh) * 2015-03-16 2023-08-15 彩滋公司 制备切割热粘合膜中的自动计算机辅助设计
CN110709883A (zh) * 2017-05-31 2020-01-17 耐克创新有限合伙公司 用于服饰物品的反射材料的选择性沉积

Also Published As

Publication number Publication date
US8878850B2 (en) 2014-11-04
WO2009055738A1 (en) 2009-04-30
JP4951709B2 (ja) 2012-06-13
US20130328877A1 (en) 2013-12-12
CA2706699C (en) 2013-10-01
US9947076B2 (en) 2018-04-17
US20150054849A1 (en) 2015-02-26
US20090109214A1 (en) 2009-04-30
JP2011501326A (ja) 2011-01-06
CN101933048B (zh) 2015-04-01
EP2215603A4 (en) 2010-12-08
US8174521B2 (en) 2012-05-08
KR101243429B1 (ko) 2013-03-13
CA2706699A1 (en) 2009-04-30
US20120249552A1 (en) 2012-10-04
AU2008316632B2 (en) 2012-02-09
AU2008316632A1 (en) 2009-04-30
US8514220B2 (en) 2013-08-20
EP2215603A1 (en) 2010-08-11
KR20100112112A (ko) 2010-10-18

Similar Documents

Publication Publication Date Title
CN101933048B (zh) 产品建模系统和方法
US11244223B2 (en) Online garment design and collaboration system and method
US11640672B2 (en) Method and system for wireless ultra-low footprint body scanning
Haindl et al. Visual texture: Accurate material appearance measurement, representation and modeling
CN112513913A (zh) 服装的数字阵列室
US20190035149A1 (en) Methods of generating personalized 3d head models or 3d body models
US20090144173A1 (en) Method for converting 2d image into pseudo 3d image and user-adapted total coordination method in use artificial intelligence, and service business method thereof
CN107924555A (zh) 用于定制产品数字标记的系统和方法
US10445856B2 (en) Generating and displaying an actual sized interactive object
WO2006071006A1 (en) Method for converting 2d image into pseudo 3d image and user-adapted total coordination method in use artificial intelligence, and service business method thereof
CN110494864A (zh) 3d模型的集成
WO2020104990A1 (en) Virtually trying cloths &amp; accessories on body model
Gerl et al. Interactive example-based hatching
CN107305699A (zh) 基于二维图像信息足部三维重建方法及其足-鞋匹配系统
Thalmann et al. Modeling of populations
Thalmann et al. Virtual clothes, hair and skin for beautiful top models
US11948057B2 (en) Online garment design and collaboration system and method
US20220036421A1 (en) Sales system using apparel modeling system and method
US10366470B2 (en) Object separation for scanned assets
More Virtual Garment Imposition using ACGPN
Bùi Build a Virtual Dressing Room using Deep Learning
Ruzanka et al. There's an app for that shirt! Evaluation of augmented reality tracking methods on deformable surfaces for fashion design
Wu From dense photometric stereo to interactive three-dimensional markup
Divivier et al. Virtual try-on

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant