IP Library Granted Patent US 9,200,397
Granted Patent B2
US 9,200,397 · App. 14/011,452 · Granted Dec 1, 2015

Automatically generating embroidery designs

Inventor: David A. Goldman (Vestal, NY)
Assignee: CIMPRESS SCHWEIZ GMBH
D05C5/02D05B19/08F21V9/00
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,200,397
App. No.
14/011,452
Granted
Dec 1, 2015
Kind
B2
Abstract

A method and system are disclosed for automatically generating embroidery designs. A described method includes identifying vertices in a set of chain-code points defining an edge of a first object to be embroidered; filtering the vertices by: determining whether a height of a first triangle defined by a first one of the vertices and ones of the vertices that neighbor the first one of the vertices is at least a threshold; and when the height is less than the threshold, eliminating the first one of the vertices from the vertices; and generating embroidery data based on the filtered vertices.

Claims (39)

1. A method to automatically generate embroidery data from image data, comprising:

identifying vertices in a set of chain-code points defining an edge of a first object to be embroidered;

filtering the vertices by:

determining whether a height of a first triangle defined by a first one of the vertices and ones of the vertices that neighbor the first one of the vertices is at least a threshold; and

when the height is less than the threshold, eliminating the first one of the vertices from the vertices; and

generating embroidery data based on the filtered vertices.

2. The method of claim 1 , wherein the set of chain-code points comprises differential chain-code points.

3. The method of claim 1 , wherein identifying the vertices comprises identifying ones of the set of chain-code points having a different chain-code than an immediately preceding chain-code point.

4. The method of claim 1 , further comprising placing a fixed vertex at an outer edge of the set of chain-code points when a second object adjacent to the set of chain-code points has changed.

5. The method of claim 1 , further comprising determining that a second triangle associated with a second vertex in a second set of chain-code points has a same height as the height of the first triangle, and removing the first one of the vertices and not removing the second vertex when the first one of the vertices is closer to a reference point.

6. The method of claim 1 , wherein generating the embroidery data comprises determining a stitch angle and separating the object into fragments based on the filtered vertices.

7. An apparatus, comprising:

a processor; and

a memory storing instructions which, when executed by the processor, cause the processor to at least:

identify vertices in a set of chain-code points defining an edge of a first object to be embroidered;

filter the vertices by:

determining whether a height of a first triangle defined by a first one of the vertices and ones of the vertices that neighbor the first one of the vertices is at least a threshold; and

when the height is less than the threshold, eliminating the first one of the vertices from the vertices; and

generating embroidery data based on the filtered vertices.

8. The apparatus of claim 7 , wherein the set of chain-code points comprises differential chain-code points.

9. The apparatus of claim 7 , wherein the instructions are to cause the processor to identify the vertices by identifying ones of the set of chain-code points having a different chain-code than an immediately preceding chain-code point.

10. The apparatus of claim 7 , wherein the instructions are further to cause the processor to place a fixed vertex at an outer edge of the set of chain-code points when a second object adjacent to the set of chain-code points has changed.

11. The apparatus of claim 7 , wherein the instructions are further to cause the processor to:

determine that a second triangle associated with a second vertex in a second set of chain-code points has a same height as the height of the first triangle, and

remove the first one of the vertices and not removing the second vertex when the first one of the vertices is closer to a reference point.

12. The apparatus of claim 7 , wherein the instructions are to cause the processor to generate the embroidery data by determining a stitch angle and separating the object into fragments based on the filtered vertices.

13. A tangible computer readable storage device comprising computer readable instructions which, when executed by a processor, cause the processor to at least:

identify vertices in a set of chain-code points defining an edge of a first object to be embroidered;

filter the vertices by:

determining whether a height of a first triangle defined by a first one of the vertices and ones of the vertices that neighbor the first one of the vertices is at least a threshold; and

when the height is less than the threshold, eliminating the first one of the vertices from the vertices; and

generating embroidery data based on the filtered vertices.

14. The storage device of claim 13 , wherein the set of chain-code points comprises differential chain-code points.

15. The storage device of claim 13 , wherein the instructions are to cause the processor to identify the vertices by identifying ones of the set of chain-code points having a different chain-code than an immediately preceding chain-code point.

16. The storage device of claim 13 , wherein the instructions are further to cause the processor to place a fixed vertex at an outer edge of the set of chain-code points when a second object adjacent to the set of chain-code points has changed.

17. The storage device of claim 13 , wherein the instructions are further to cause the processor to:

determine that a second triangle associated with a second vertex in a second set of chain-code points has a same height as the height of the first triangle, and

remove the first one of the vertices and not removing the second vertex when the first one of the vertices is closer to a reference point.

18. The storage device of claim 13 , wherein the instructions are to cause the processor to generate the embroidery data by determining a stitch angle and separating the object into fragments based on the filtered vertices.

Assignments (7)
CHANGE OF NAME Recorded Jul 7, 2015
From: VISTAPRINT SCHWEIZ GMBH
To: CIMPRESS SCHWEIZ GMBH
Reel/Frame 036074/0329 →
MERGER Recorded Oct 3, 2014
From: SOFT SIGHT, INC., A NEW YORK CORPORATION
To: SOFT SIGHT, INC., A DELAWARE CORPORATION
Reel/Frame 033884/0186 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 3, 2014
From: SOFT SIGHT, INC., A DELAWARE CORPORATION
To: VISTAPRINT TECHNOLOGIES LIMITED
Reel/Frame 033884/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 3, 2014
From: GOLDMAN, DAVID A.
To: SOFT SIGHT INC.
Reel/Frame 033884/0144 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 10, 2013
From: VISTAPRINT LIMITED
To: VISTAPRINT SCHWEIZ GMBH
Reel/Frame 031394/0742 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 9, 2013
From: VISTAPRINT TECHNOLOGIES LIMITED
To: VISTAPRINT LIMITED
Reel/Frame 031394/0311 →
SECURITY AGREEMENT Recorded Oct 7, 2013
From: VISTAPRINT SCHWEIZ GMBH
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 031371/0384 →
Continuity (6)
Continuation 13490194 · Jun 6, 2012
Continuation 12507588 · Jul 22, 2009
Continuation 10806880 · Mar 23, 2004
Continuation 09950521 · Sep 10, 2001
Continuation 09134981 · Aug 17, 1998
Related Publication 20140094952A1 · Apr 3, 2014