IP Library › Granted Patent US 9,852,533
Granted Patent B2
US 9,852,533 · App. 15/232,592 · Granted Dec 26, 2017

System and method for digital markups of custom products

Inventor: Young Harvill (El Granada, CA)
Assignee: Zazzle Inc.
G06T11/60A41H3/007G06T3/005G06T11/001
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,852,533
App. No.
15/232,592
Filed
Aug 9, 2016
Granted
Dec 26, 2017
Kind
B2
Art Unit
2618
USPC
345/634
Abstract

Techniques for generating and using digital markups on digital images are presented. In an embodiment, a method comprises receiving, at an electronic device, a digital layout image that represents a form of a product for manufacturing a reference product; generating a digital markup layout by overlaying the digital markup image over the digital layout image; based on the digital markup layout, generating one or more manufacturing files comprising digital data for manufacturing the reference product; receiving a digital reference image of the reference product manufactured based on the one or more manufacturing files; identifying one or more found markup regions in the digital reference image; based on the found markup regions, generating a geometry map and an interactive asset image; based on, at least in part, the geometry map, generating a customized product image by applying a user pattern to the interactive asset image.

Claims (53)

1. A computer implemented method comprising:

receiving, at an electronic device, a digital markup image that has one or more reference markup regions, and is associated with a markup identifier;

receiving, at the electronic device, a digital layout image that represents a form of a product used to manufacture a reference product;

generating, using the electronic device, a digital markup layout by overlaying the digital markup image over the digital layout image;

based on, at least in part, the digital markup layout, generating one or more manufacturing files comprising digital data usable in manufacturing the reference product;

receiving, at the electronic device, a digital reference image of the reference product that has been manufactured based on, at least in part, the one or more manufacturing files;

identifying one or more found markup regions in the digital reference image;

determining a region mapping that maps one or more of the one or more reference markup regions to the one or more found markup regions;

based on, at least in part, the region mapping, generating a geometry map;

generating an interactive asset image by removing the one or more found markup regions from the digital reference image;

based on, at least in part, the region mapping and the geometry map, generating a customized product image by applying a user pattern to the interactive asset image;

causing the customized product image to be displayed on a display device.

2. The method of claim 1 , further comprising: determining a checksum for the digital markup image; generating a plurality of digital pattern images that have the checksum embedded in each digital pattern image; based on the plurality of digital pattern images, generating a plurality of rotated digital pattern images; selecting a subset of the plurality of rotated digital pattern images; generating the digital markup image based on the subset of the plurality of rotated digital pattern images; wherein no two patterns in the subset of the plurality of rotated digital pattern images are identical.

3. The method of claim 1 , further comprising: determining a checksum for the digital markup image; generating a digital pattern image that has the checksum embedded in the digital pattern image.

4. The method of claim 1 , further comprising: generating the markup identifier based on contents of the digital markup image; storing the digital markup image in an association with the markup identifier in a markup index data structure.

5. The method of claim 1 , further comprising: determining a plurality of distinct regions in the digital layout image; for each distinct region of the plurality of distinct regions, overlaying the digital markup image onto a distinct region.

6. The method of claim 1 , further comprising: segmenting the digital reference image into the one or more found markup regions by performing one or more of: applying a color shed approach to the digital reference image, determining distance values between color values in areas of interest in the digital reference image and color values in a reference photograph, generating a spatial frequency histogram for the digital reference image, or generating a bandpass histogram for the digital reference image.

7. The method of claim 6 , further comprising:

based on color characteristics, partitioning the digital reference image into a plurality of image regions by performing:

assigning a color difference value to each location of a plurality of locations within the digital reference image;

wherein a particular color difference value assigned to a particular location is determined based in part on the digital reference image and indicates how different a color of the particular location is from colors of other locations neighboring the particular location;

assigning each location of the plurality of locations to an image region of the plurality of image regions according to a particular order;

wherein the particular order is based at least in part on color difference values associated with the plurality of locations;

selecting a particular image region to be assigned to a location based on, at least in part, a color assigned to the location;

wherein the color assigned to the location is determined based on, at least in part, the digital reference image;

based on the partitioning, determining data representing at least a particular portion of a markup in the digital reference image.

8. The method of claim 1 , wherein the geometry map maps, for the one or more found markup regions, a reference point of a particular found markup region to a reference point of a particular reference markup region.

9. The method of claim 1 , wherein the geometry map comprises a plurality of polygons; wherein each polygon of the plurality of polygons includes a plurality of vertices describing a relation between a particular found markup region and a particular reference markup region.

10. The method of claim 1 , further comprising: generating a list of markups for the one or more found markup regions.

11. An image processing computing system comprising:

a layout manager configured to: receive a digital markup image that has one or more reference markup regions, and is associated with a markup identifier; receive a digital layout image that represents a form of a product used to manufacture a reference product; generate a digital markup layout by overlaying the digital markup image over the digital layout image;

a manufacturing file generator configured to: based on, at least in part, the digital markup layout, generate one or more manufacturing files comprising digital data usable in manufacturing the reference product;

a reference product manager configured to: receive a digital reference image of the reference product that has been manufactured based on, at least in part, the one or more manufacturing files;

a markup regions generator configured to: identify one or more found markup regions in the digital reference image; determine a region mapping that maps one or more of the one or more reference markup regions to the one or more found markup regions;

a geometry map builder configured to: based on, at least in part, the region mapping, generate a geometry map;

an interactive asset builder configured to: generate an interactive asset image by removing the one or more found markup regions from the digital reference image; based on, at least in part, the region mapping and the geometry map, generate a customized product image by applying a user pattern to the interactive asset image; cause the customized product image to be displayed on a display device.

12. The image processing computing system of claim 11 , further comprising a digital markup generator configured to: determine a checksum for the digital markup image; generate a plurality of digital pattern images that have the checksum embedded in each digital pattern image; based on the plurality of digital pattern images, generate a plurality of rotated digital pattern images; select a subset of the plurality of rotated digital pattern images; generate the digital markup image based on the subset of the plurality of rotated digital pattern images; wherein no two patterns in the subset of the plurality of rotated digital pattern images are identical.

13. The image processing computing system of claim 12 , wherein the digital markup generator is further configured to: determine a checksum for the digital markup image; generate a digital pattern image that has the checksum embedded in the digital pattern image.

14. The image processing computing system of claim 12 , wherein the digital markup generator is further configured to: generate the markup identifier based on contents of the digital markup image; store the digital markup image in an association with the markup identifier in a markup index data structure.

15. The image processing computing system of claim 12 , further comprising a markup segmenting unit configured to: determine a plurality of distinct regions in the digital layout image; for each distinct region of the plurality of distinct regions, overlay the digital markup image onto a distinct region.

16. The image processing computing system of claim 15 , wherein the markup segmenting unit is further configured to: segment the digital reference image into the one or more found markup regions by performing one or more of: applying a color shed approach to the digital reference image, determining distance values between color values in areas of interest in the digital reference image and color values in a reference photograph, generating a spatial frequency histogram for the digital reference image, or generating a bandpass histogram for the digital reference image.

17. The image processing computing system of claim 16 , wherein the markup regions generator is further configured to:

based on color characteristics, partition the digital reference image into a plurality of image regions by performing:

assign a color difference value to each location of a plurality of locations within the digital reference image;

wherein a particular color difference value assigned to a particular location is determined based in part on the digital reference image and indicates how different a color of the particular location is from colors of other locations neighboring the particular location;

assign each location of the plurality of locations to an image region of the plurality of image regions according to a particular order;

wherein the particular order is based at least in part on color difference values associated with the plurality of locations;

select a particular image region to be assigned to a location based on, at least in part, a color assigned to the location;

wherein the color assigned to the location is determined based on, at least in part, the digital reference image;

based on the partitioning, determine data representing at least a particular portion of a markup in the digital reference image.

18. The image processing computing system of claim 12 , wherein the geometry map maps, for the one or more found markup regions, a reference point of a particular found markup region to a reference point of a particular reference markup region.

19. The image processing computing system of claim 12 , wherein the geometry map comprises a plurality of polygons; wherein each polygon of the plurality of polygons includes a plurality of vertices describing a relation between a particular found markup region and a particular reference markup region.

20. The image processing computing system of claim 12 , wherein the markup regions generator is further configured to: generate a list of markups for the one or more found markup regions.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 9, 2016
From: HARVILL, YOUNG
To: ZAZZLE INC.
Reel/Frame 039388/0095 →
Continuity (2)
Provisional Application 62203026 · Aug 10, 2015
Related Publication 20170046862A1 · Feb 16, 2017