Computerized embroidery: Difference between revisions

The educational technology and digital learning wiki
Jump to navigation Jump to search
Line 85: Line 85:
* [http://www.robison-anton.com/ssr8colorchart.html Robinson-Anton] (RA)
* [http://www.robison-anton.com/ssr8colorchart.html Robinson-Anton] (RA)
* ....
* ....
== File formats ==
There are several kinds of formats, and each contains different abilities and features. Some formats do have different versions, with increased features.
=== Information that may be found ===
# Stitch Information.
## Direct commands go to x/y, add stitch, go to x/y, cut, change threads etc.
## Explicit location of the points for the segment list.
# Vector Information
## Shape Data, Rectangle, Circle, Path etc.
## How these shapes should be filled. For example:
### Angle of the fill
### Start and stop formation
### Pattern for the needle impacts.
### Randomization of edge.
# Font Information
## Text and font, how it should be applied.
# Design information.
## Design name.
## Number of Stitches.
## Number of jumps.
## Size of embroidery.
# Hoop Information.
## Specific custom hoop information.
# Thread Information.
## Color data from a preselected list.
## Custom color data for thread.
## Thread Metadata, manufacturer, pantone approximate, etc.
## Thread Width.
# 2D Bitmap information, simulated view of the sewout.
## Bitmap representation for project.
## Bitmap representation for each color.
# Control information for the typical editor of that format.
## Color of background.
## Scaling information
=== Internal structure of some formats ===
* .DST file, contains a header of 512 bytes which contains design information statistics. Then a series of direct commands. This is all that is required to run the machine.
* .PES file, contains several different layers of information. After the header #PES00XX which determines the version of the file, it contains the position in the file containing the PEC block. The PEC block is information intended for the machine. This some information about the design, name, number of stitches, size, location of graphics information, followed by blanks equalling up to 512 bytes. And a series of direct commands for the design. This is followed by 1 bit graphic bitmaps. All of which are intended for the machine to run. Regardless of the version of the file. The program simply needs to read the location of the pec block, jump forward 512 bytes and read the direct commands. Or jump forward 22 bytes, read the graphics location, and then seek to that location and read the graphics to be displayed on the embroidery machine's screen. Different versions contain different information in the various blocks within the file that are jumped over. These include vector information and design specific instructions that are able to rebuild the stitch data from scratch. So an alteration can allow regeneration of the stitch data.
* .EXP file, contains only direct commands.
* .INF file, contains only color information like a thread chart.
* .ART file, contains a Compound File Binary Format, of a series of files. They have different classes of file according to whether it contains the design information. Different files within the format contain the summary information, the Design Information, contents (the compressed stitch data, zlib 4 bytes in), the Design Icon, a bitmap of the what the design should look like. Each class denotes how much information is in the .ART file. So having the contents means it can sew, but without the design information, edits would only be possible at the stitch information. This is very similar to the .emb format and they share a common code base.
Embroidery files are used both for stitching and editing. They need to be read by the machine doing the embroidery to process the series of commands. Since most machine embroidery is rendered from shapes and fills applied to those shapes, saving only data needed to stitch would be lossy. So many formats have a hybrid of this and store easy to read stitch data and higher level objects sometimes protected with encryption and compressed (.hus, .art, .emb). With the higher level the embroidery program can reproduce the lower level stitch commands. For most programs that read this data, they often have their own higher level objects and can read only the stitch data from other formats. When they also write these formats, they very often produce the minimum acceptable version of the file that will not crash the program reading the file. So converting from Wilcom's emb to PES will produce a PES with only stitches even if the Wilcom had access to the higher level objects and the saved version of .pes also those forms available.
=== Kinds of available formats ===
* All sorts of 2D bitmap and vector formats for the drawings, i.e. formats that are not specifically made for embroidery
* Embroidery file formats that work on a range of machines and also can be used as exchange formats. These are sometimes called '''commercial''' formats.
* Embroidery file formats that are mostly brand or even type specific
* Both so-called commercial file formats and more brand-specific formats come in two forms: Some '''only have stitching''' information, others keep '''information that makes them''' easily editable. The latter could be called '''worker''' files.
It seems that there are about 30 different formats. It is not clear to me what different formats can do. Also, I don't know ''how'' formats are supported by various vendors. Some formats seem to be barely editable since they only contain stitching instructions like "go to x/y" and "add a stitch from x1/1y to x2/y2" or "change thread". Others may include precise information about the shape and kind of a design part and keep stitching information apart, i.e. an area is not just defined in terms of stitches. The latter are more easily editable. Other formats (like JEF) may keep just some information, e.g. colors.
It is sometimes difficult to find out what formats a specific machine from various Brands can read. E.g. Bernina's feature their own brand-specific editable *.art formats, but it seems that the high-end machines directly can read *.exp which is a commercial  format, if I understood right. When I bought an Elna 8300, '''no''' information about formats was included in the documentation (or I couldn't find it) ...
To make the situation worse, some formats have different subtypes. E.g. the popular .PES comes in ''eight'' (actually it's no fewer than 12, but most settings in the program that edits them rather than important information) different versions :( - I once thought that the situation was really bad for video codecs, video containers or 3D vector formats, but embroidery beats anything else I am aware of in terms of obscurity and diversity.
Vendors include conversion software that can translate to their (and other's) machine readable CNC formats from a series of other low-level and also from more high-level formats. The most popular exchange formats seem to be DST and EXP, but these are not necessarily the best. As little as we know of today (after few hours spent on exploration) a good format (e.g. EMB) includes a vector description of each design part and attaches abstract stitching information to that object. This way it can be transformed without deforming stitches. Less powerful formats are directly stitch-based. The most popular rather machine-specific format seems to be *.pes (Brother) since it also includes worker information.
{| class="wikitable"
|+ Embroidery file formats
! extension !! Machine manufacturer !! software range !! Contents
|-
| ART || Bernina|| brand-specific || worker + stitch
|-
| CND || Melco || professional programs || worker + stitch
|-
| CSD || Singer, POEM|| brand-specific ||
|-
| [[Embroidery format DST|DST]] || Tajima|| most programs || stitch + stops
|-
| DSG || Sierra|| Stitch Era software || worker + stitch
|-
| EMB || Wilcom|| most high-end programs || worker + stitch
|-
| [[Embroidery format EXP|EXP]] || Melco, Bernina (high-end models)|| most programs || stitch
|-
| FDR || Barudan|| ? || ?
|-
| HUS || Husqvarna Viking|| brand-specific, many programs || stitch
|-
| [[Embroidery format JEF|JEF]] || Janome, Elna|| brand-specific, many programs || stitch + color
|-
| PCQ,PCD,PCM, PCS  || Pfaff || Brand-specific || stitch
|-
| [[Embroidery format PEC|PEC]] || Bernina ?|| brand-specific || stitch + color
|-
| [[Embroidery format PES|PES]] || Brother || popular, most programs || worker (?) + stitch + color
|-
| SEW || Janome, Elna, Kenmore|| most programs || stitch
|-
| SHV || Husqvarna Viking|| brand-specific || stitch
|-
| VIP || Pfaff (older), Husqvarna|| brand-specific || stitch
|-
| VP3 || Pfaff (newer)|| brand-specific || stitch
|-
| XXX || Singer, Compucon|| brand-specific || stitch
|}
Other lists:
* [http://www.ggcreations.com.au/althea/formats.html Embroidery File Formats supported in Embird]
* [http://www.embroideryarts.com/resource/files/faq/formats_supported.php Formats Supported] at embroideryarts.com
* [http://www.needlework.ru/page/embroidery.html Need other embroidery format?] Good list about popular embroidery formats (from Russia).


== Links ==
== Links ==

Revision as of 20:09, 25 June 2018

Machine embroidery
to improve
2018/06/25


  • Quality: to improve


Notice: In July 2018, this page was split into several sub pages, in particular: embroidery machine, embroidery software and embroidery format.

Introduction

Computer-controlled embroidery also called machine embroidery is a kind of Computer-aided design and manufacturing (CAD/CAM).

In this short article, we shall introduce some basic principles. More technical information about computerized embroidery is available in other articles available indexed in the computerized embroidery category. see the Machine embroidery article for a list of contributions.

Computerized embroidery machines are specialized machines that can create embroidery from computerized designs. Such machines exist for the home market, for the small independent professional and for mass production. Many home sewing machines can be turned into an embroidery machine by adding a hardware module.

Embroidery design software exists in various form, either as special-purpose tools for various design stages or as complete design suites. Embroidery designs can be stored in a multitude of proprietary design formats, that can be exported to proprietary machine formats (now often sold over the Internet). Free "open source" designs files are difficult to find. Converter software between various machine formats exists. Most design formats cannot be translated.

See also:

History

It can be argued that computer-controlled embroidery machines are older than computers. In the beginning of the 19th century, Jacquard invented looms controlled by a "chain of cards". However, embroidery machines controlled in real-time by a "puncher" through pantographs dominated the market in the 19th century and lasted until the 1970's we believe. Models made between the two WWs used punched tapes for control, i.e. software driven embroidery machines became important. In the 1980 the first computer-controlled machines for the home market appeared (Wikipedia, retrieved May 2018).

According to Wikipedia and other sources, the first modern day computer controlled sewing machine was built by Orisol in 1987 for making shoes, i.e. much later than embroidery machines.

Stitching and design steps

More or less according to Wikipedia, the basic steps for creating an embroidery are as follows:

  • [Optional] Get or create a digitized embroidery design file in some kind of editable format. Typical formats are .emb, .exe, .dst, .cnd and .fdr. Each software manufacturer has its own proprietary format.
  • [Optional] Combine it with other designs, e.g. add some custom lettering (optional)
  • Translate the design to machine executable code (or get a file that is executable). Typical formats are .art, .pes, .jef, .sew and .hus (see below)
  • Load this "stitch" file into the embroidery machine
  • Stabilize and hoop the fabric and attach the hoop to the machine
  • Start and monitor the embroidery machine, i.e. change the thread if needed.

Creating a digitized embroidery file itself includes at least two steps:

  • (Optional) Create a drawing in an editable vector format. It is also possible to vectorize (traced) raster images, but this can be very time consuming.
  • Digitize (translate, punch) the vector drawing to a (preferably) editable embroidery design format. A stitchable design includes embroidery-specific information like stitches and thread color. Good software rather defines "stitch objects", e.g. lines and fills (columns and areas) that are parameterized with stitching information such as the filling patterns, density, stitch density, pull compensation, stitch direction, etc..
  • Export to machine-specific formats.

Typical paradigm

While some more modern machines perform actions like dropping a sequin to be sewn in place, most modern embroidery consists is entirely of the same looped interlock stitch that have been the mainstay of sewing machines since their inception. Computerized embroidery formats ultimately contain instructions for the embroidery machine to perform. Move to a new location in two different directions, move but block the needle-bar (jump), cut the thread, drop the needle, switch to the next thread. These are all the actions that a sewing machine can take, usually in increments of 1/10th a millimeter. The goal then within design software is often how to pattern these stitches in useful ways for the person using the software. These patterns result in a lot of the underlying concepts within embroidery software. Stitches like zig-zag, satin, flat fill, bean stitch, and others are simply straight stitches in particular patterns, and the methods used to generate these are not explicit to the media.

Typically modern embroidery software uses vector shapes with fills applied to the objects. This allows the users for editing of the objects and thus the fills those objects create and adjustments to the density, direction, or any other property used to generate the resulting stitches. The advantages to this is that embroidery can be done quickly. A lot of stitches in recognizable patterns can be applied quickly with skilled users getting the results they expect. The software then stores the vector object and the fill properties to generate the underlying stitches. When the underlying stitches are edited by the user, regenerating the stitches would lose those modifications.

While vectors are a key aspect of this paradigm, it's not the case that you could go from vector to embroidery without some additional information about the type of fill being applied to that object. While software could take a vector as the answer of where to fill, they don't answer the question of how to fill. There's also a considerable amount of things that are technically permitted of a series of short line-segments (and thus embroidery) but are not easily accomplished through the dominant paradigm.

This seems to be the reason there are so many different formats, basically a different one for each type of embroidery. And different versions of formats add more such features to the software. If you wish to edit a design later, you need to have all the objects the file used to generate the stitches. Often software suites develop different methods for filling various objects or different features and these are unique to that particular brand. It's also the reason why, even when some formats have vector information (say PES files), these are not loaded by other software (eg. Wilcom Trusizer) in a manner that could be resized beyond about 10% without noticeable loss of coverage for the fill. Other software that can load a format, will often only load the actual stitches themselves (since that's what, all embroidery files must have to be sewn), which prevents any editing of the shapes used to generate them initially.

A straight stitch or running stitch is the typical name for a stitch that is generally not in the pattern of one of the other types of stitches. Technically all stitches are the same and they are all running stitches. They can't be anything else.

Fill stitches, also called tatami stitch are montone fills of particularly defined areas. These tend to be a sort of flood fill done with stitches. Most modern embroidery software executes this by using vector objects which then have a fill applied to them.

Mathematically the objects being filled must be monotone or broken into different parts. Monotone geometric objects can be filled with an unbroken scanline starting from the top to the bottom without changing directions. Since some objects being filled will lack this property, the objects are converted into monotone objects by clipping off the non-monotone parts. These are then underpathed (a straight stitch to the other merge/split node occurring such that it will be covered) and filled, and merged with the current fill. There is a lot of differences in how this algorithm is implemented between different software suites.

Sometimes even monotone objects are broken in this manner to allow for a start and stop location to be predefined. If you are filling a circle from the top to bottom, but want to start from the left, the algorithm will need to underpath to the top, then fill to the bottom. If an exit location is needed, it will stop at the level of the exit-node, underpath to the bottom, then fill up to the exit position.

Satin stitches are so-called because they have a soft satiny look. They are geometrically sweep fills of sweepable objects. A sweepable object is one that can be completely filled by a sweepline that transverses the object and is permitted to change directions. By definition if an object is sweepable it is monotone, as it does not need to change directions. Satin stitches are usually done with areas small enough that a single stitch can fill the objects.

This covers most of the conceptual design aspects within embroidery software. Some popular tools like Wilcom B, generally work by creating the vector object and fill direction and fill information at the same time. Which is a step away from the paradigm of vector + fill -> embroidery.

Thread colors

Thread colors (not surprisingly) are not standardized. Each major thread company has its own with different gamuts, and different sales packs and additions and discontinuations etc. The biggest manufacturer is Madeira others include Janome, Robison-Anton, Isacord, Mettler, and Sulky. None of these will overlap their naming conventions. The only significant stabilizing force is Pantone™ which is a private company, well known and regarded throughout the garment and color industries. However, here, unlike with most of computerized embroidery questions about Color Distance (how similar will an average human eye see these particular colors) and the algorithms utilized in determining those are well established, and largely standardized with a rich firm scientific history. The best results being LAB-Delta E00, as well as progressively less powerful algorithms with notable speed advantages. The emphasis with thread colors is that they be consistent with themselves rather than consistent with threads offered by other companies or with the named gamuts released by Pantone (though many companies will release Pantone conversion charts which give the thread color to nearest Pantone color within some amount of error).

There are also a number of other considerable elements within the realm of thread, such as specialty threads like glow-in-the-dark, various metallics, color changing when exposed to sunlight, and considerations like the Matte finish on the thread. With companies like Madeira offering a popular "frosted matt" thread set which offer heavily reduced shine. Or companies noting which threads they have which are fire resistant.

There's also thread weight to consider which is namely how much does 1000 meters of the thread weigh, which taken as meaning how thin or thick is the thread. Standardly most thread used is 60wt.

Also, from experience most thread company data to establish some RGB values for the color of the thread is bad. Well understood properties like different lighting and different white balances can often greatly bias a color. To get the RGB value to a very precise degree (which I've had to do) the best method is buy thread charts from the company (with actual fabric swatches of the thread) and put them into a flatbed scanner which has a known and well established white balance and take the average color over many pixels within the scanned swatch. Which will work for anything without strong fluorescent properties. Usually for a lot of projects good enough colors are sufficient and in those cases the color charts from various sources may be perfectly acceptable. However, even the numbers the companies use internally are known to be quite flawed.

See:

Brand-specific

Links

General links

Sewing and embroidery websites (unsorted)
  • k2g2 “is an open platform that is spearheading the brains and crafts movement of the 21st century, taking a hacker's perspective on everything from handicraft to crafting machines”. This website includes good "portals" for machine knitting and machine embroidery. Best resource for open source projects, but doesn't show much activity over the years.
  • Embroidery Machine Encyclopedia (Wiki, 148 articles as of May 2017). As of Jan 2018, the site is full of spam (>20'000 pages) but still includes the useful information.
  • Sewing.org has free sew, quilt and craft projects
  • Sewing & Craft Alliance provides educational information and creative resources to the sewing and crafting enthusiast
  • SewReview, includes a blog with entries on various topics plus buying guides and reviews
  • eHow includes entries about sewing, embroidery, etc.
  • rumblr includes a few entries about sewing etc.
  • The Embroiderers' Guild of America (EGA). A few interesting links.
  • patternreview Popular site for sharing patterns and advise (including computerized stuff)
  • Embroidery. Nice traditional embroidery website for junior stitchters, textile students and teachers.
In other languages
Blogs
Other links of links
  • Embroidermodder has some good links (including broken ones, last update was 2004)

Introductions

(Retrieved April 2011, unless otherwise stated)

Introductions to traditional embroidery
  • Embroidery (Wikipedia). Follow-up the various Wikipedia links at the bottom.
Introductions to computerized embroidery
Introductions to computerized sewing machine
Introductions to normal sewing machine
Specialized tutorials

Software links

(see our own links to software packages in the software section above)

Useful websites
Comparisons

The best table we found is Wikipedia's Comparison of embroidery software. However, it does not really choosing a good software.

A (good) 2013 comparison of software by Floriani (a software producer) is kept in the wayback machine

File formats

Hardware links

In other languages
Do it yourself

Free design repositories

There don't seem to be many truly free and easy to use websites. Most commercial web sites offer some free designs. In addition, some of the free open source or close source software packages include free designs (see above).

  • Thingiverse. Search for em broidery. As of 1/2018 only a few designs....
  • You could search for embroidery patterns on Flickr. Some are free (but you then need to digitize these or find another version)

Fablab work, open source, etc.

(more needed)

Bibliography and journals

Introductory books for machine embroidery

(I don't have any of these, and therefore can't recommend any - DKS June 2011)

  • C&T Publishing (2004), All About Machine Arts, ISBN 9781571202277.
  • Betty Barnden (Author) (2003). The Embroidery Stitch Bible, Krause Publications, ISBN 9780873495103.
  • Deb Menz (2004). Color Works, Interweave Press, ISBN 1931499470 (This book address color for crafters).
  • Deborah Jones, Machine Embroidery on Difficult Materials (Book & CD Rom), Krause Publications, ISBN 0896896544.
  • Jeanine Twigg (2001). Embroidery Machine Essentials: How to Stabilize, Hoop and Stitch Decorative Designs, Krause Publications, ISBN 9780873419994 (There are several companion books from the same author).
  • Linda Turner Griepentrog, Rebecca Kemp Brent (2006). Machine Embroidery Wild & Wacky, Krause Publications.
  • John Deer (2007)., Digitizing Made Easy: Create Custom Embroidery Designs Like a Pro, Krause Publications. ISBN 0896894924
  • Linda Miller (2010). Creative Machine Embroidery, A&C Black. ISBN 1408103982.
  • Van Holmes (2008). Encyclopedia of Machine Embroidery, Anova Batsford, ISBN 9781906388188.
Academic Journals (may contain articles about embroidery)
Trade journals
  • Impressions, information for apparel (screen printing, embroidery, heat-applied graphics and digital decorating).