Controller, system, and method for generating thread coloring data of at least one thread based on digital representation

The controller generates thread coloring data to address the challenges of photographic embroidery, achieving high-resolution and accurate color transitions in inline thread coloring processes.

JP2025522551APending Publication Date: 2025-07-15COLOREEL INTERNATIONAL HOLDINGS LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2024575415
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-06-21
Filing Date
2023-06-15
Publication Date
2025-07-15

AI Technical Summary

Technical Problem

Existing technologies lack a method for performing photographic embroidery with inline thread coloring to accurately reproduce colors and achieve satisfactory resolution and manage transitional colors, stitches, and thread consumption variations.

Method used

A controller generates thread coloring data based on a digital representation by obtaining pattern data from pixels, determining thread arrays, and converting color values to resolution data, which includes calculating stitch lengths, directions, and connections, and managing transitions with color gradients.

Benefits of technology

The solution enables high-resolution, high-quality embroidery patterns with improved color depth and transition accuracy, effectively utilizing underlay stitches to hide errors and reduce thread consumption variations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025522551000001_ABST
    Figure 2025522551000001_ABST
Patent Text Reader

Abstract

A controller (200) is provided that is configured to generate yarn coloring data for yarns used in creating a decorative yarn pattern. The controller generates the yarn coloring data based on a digital representation to be generated as the decorative yarn pattern, by: obtaining pattern data from the digital representation (10), the pattern data including a plurality of pixels, each pixel being associated with a position (p) and a color value (cv) within the digital representation (10); generating resolution data by processing the pattern data, processing the pattern data including determining a yarn arrangement including a plurality of successive yarn portions, the entirety of the yarn arrangement corresponding to the digital representation to be generated; and generating yarn coloring data for the yarn (20) based at least on the resolution data.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a controller for generating thread coloring data for at least one thread based on a digital representation. The present invention also relates to related systems and methods. The present invention

Background Art

[0002] The concept of converting a photograph into an embroidery pattern, also known as photo embroidery, has been adopted in the prior art. Photo embroidery generally includes a first step of uploading a digital image to a controller, or taking out the digital image by some other means. The digital image may in fact be any type of digital reproduction of one or more physical or virtual objects, such as sculptures, themes, logos, people, animals, landscapes, etc. The digital image includes a plurality of pixels, and each pixel represents a specific color with respect to, for example, the RGB or CMYK color space. The photo embroidery method employed in the art further includes the step of extracting color data associated with the pixels. The color data is extracted by processing each pixel in the digital image and deriving a thread color corresponding to the color data associated with the pixel for each pixel. As an example, a pixel having RGB color values (0, 128, 128) may be selected. Thus, the thread color teal is selected to represent the pixel and, in some cases, also selected to represent some additional pixels in the vicinity of the selected pixel. To appropriately reproduce the digital image as an embroidery pattern, other types of information, such as information regarding color transitions and needle placement positions, are also extracted. When all the pixels in the digital image have been processed and a set of colored thread reels has been selected corresponding to the best image reproduction, the embroidery pattern is typically sewn onto the fabric by appropriately switching the reels of colored thread and changing the needle placement positions within the fabric.

[0003] Inline thread coloring is a technique applied to prior art systems. Inline thread coloring is advantageous in several aspects, one of which relates to the fact that only a single thread color is required to create advanced embroidery patterns. For inline thread coloring, a controller is typically coupled to a coloring device and adapted to control the coloring device to dispense one or more coloring substances onto the thread as it moves. The thread may then move, for example, to a thread consumption device operable to consume the inline thread colored thread to create an embroidery pattern.

[0004] The prior art does not include any solution for performing photographic embroidery in an inline thread coloring process. Therefore, a method for performing photographic embroidery with inline thread coloring to accurately reproduce the colors of the resulting embroidery pattern and obtain a satisfactory resolution and / or accurate transitional colors is not known. Further, methods for managing different types of stitches and stitch directions, managing sudden color changes in digital images, or managing inherent variations in thread consumption of related thread consumption devices are also not known.

[0005] The inventors have identified the above-mentioned drawbacks in the prior art and devised, with insight, a solution for photographic embroidery in an inline thread coloring process. SUMMARY OF THE INVENTION PROBLEMS TO BE SOLVED BY THE INVENTION

[0006] Accordingly, it is an object of the present invention to provide a solution to, or at least mitigate, one or more of the problems or drawbacks identified in the background art section above. MEANS FOR SOLVING THE PROBLEM

[0007] A controller is provided that is configured to generate thread coloring data for a thread used to create a decorative thread pattern. The controller generates the thread coloring data based on a digital representation to be generated as the decorative thread pattern, by obtaining pattern data from the digital representation, where the pattern data includes a plurality of pixels, each pixel being associated with a position and a color value within the digital representation, and generating resolution data by processing the pattern data, where processing the pattern data includes determining a thread array including a plurality of consecutive thread portions, the entire thread array corresponding to the digital representation to be generated.

[0008] In one embodiment, processing the pattern data further includes determining information regarding the length of the thread portion, the direction of the thread portion, and / or the type of connection used to connect one or more thread portions to each other.

[0009] In one embodiment, the step of generating the thread coloring data includes converting the color value to resolution data and extracting color data in the order of a generation path defined by the arrangement of the thread portions relative to each other from the converted color value.

[0010] In one embodiment, the step of generating resolution data includes selecting a first pixel from a plurality of pixels, where the position and the generation path direction of the first pixel represent a first pixel portion, and a plurality of rows are defined parallel to each other in the direction of the first pixel portion, calculating a first resolution as the maximum number of connections that fit into the corresponding row, calculating a second resolution as the maximum number of connections that fit into a column substantially perpendicular to the corresponding row, and the resolution data is defined by the first resolution and the second resolution.

[0011] In one embodiment, the step of generating resolution data includes selecting a first pixel from a plurality of pixels, wherein the position and generation path direction of the first pixel represent a first axis, and a plurality of rows are defined parallel to each other in the direction of the first axis, calculating a first resolution as the maximum number of connections that fit into the corresponding rows, and calculating a second resolution as the maximum number of connections that fit into columns perpendicular to the corresponding rows, and the resolution data is defined by the first resolution and the second resolution.

[0012] In one embodiment, the step of generating resolution data includes selecting a first pixel from a plurality of pixels, wherein the position and generation path direction of the first pixel represent a first pixel portion, and a plurality of rows are defined parallel to each other in the direction of the first pixel portion, calculating a first resolution as the maximum number of connections that fit into columns substantially perpendicular to the corresponding rows, and calculating a second resolution as the maximum number of connections that fit into the corresponding rows, and the resolution data is defined by the first resolution and the second resolution.

[0013] In one embodiment, the step of generating resolution data includes selecting a first pixel from a plurality of pixels, wherein the position and generation path direction of the first pixel represent a first axis, and a plurality of rows are defined parallel to each other in the direction of the first axis, calculating a first resolution as the maximum number of connections that fit into columns perpendicular to the corresponding rows, and calculating a second resolution as the maximum number of connections that fit into the corresponding rows, and the resolution data is defined by the first resolution and the second resolution.

[0014] In one embodiment, the controller further includes grouping connections according to the resolution data.

[0015] In one embodiment, generating yarn coloring data of the yarn includes generating a transition color of the underlay connection.

[0016] In one embodiment, generating the transition color for the underlay connection involves extracting color data from a first edge portion defined by the thread coloring data, where the first edge portion corresponds to a first row, and extracting color data from a second edge portion defined by the thread coloring data, where the second edge portion is on the opposite side of the first edge portion and corresponds to a parallel row next to the first row, generating a color gradient including a combination of the color data of the first edge portion and the second edge portion, replacing the color data of the first edge portion and the second edge portion with the color data of the color gradient, for each subsequent pair of edge portions defined by the thread coloring data, extracting color data from the edge portions, generating a color gradient including the combination of the extracted color data, and repeating the procedure of replacing the color data of the edge portions with the color gradient.

[0017] In one embodiment, the step of generating the transition color for the underlay connection includes extracting color data from a first edge defined by the thread coloring data, extracting color data from a second edge defined by the thread coloring data, generating a color gradient including a combination of the color data of the first edge and the second edge, and replacing the color data of the left and right edges with the color data of the color gradient.

[0018] In one embodiment, the step of generating the color gradient includes aligning the first edge and the second edge to follow each other in parallel, dividing the aligned edges into a plurality of portions, and combining the color data of each portion according to a color transition scheme.

[0019] In a second aspect, a system for treating a thread used in a decorative thread pattern is provided. The system further includes a treatment unit having at least one ejection device configured to dispense one or more coating substances onto the thread during operation, and a controller according to the first aspect. The controller may be further configured to control the dispensing from the ejection device onto the thread based on the thread coloring data.

[0020] In one embodiment, the system is for inline treatment of yarns, and the system is operably communicable with a yarn consuming unit configured to generate a decorative yarn pattern.

[0021] In a third aspect, a method of generating yarn coloring data for a yarn used in creating a decorative yarn pattern is provided. The method includes generating the yarn coloring data based on a digital representation to be generated as the decorative yarn pattern, the step of generating the yarn coloring data being, from the digital representation, obtaining pattern data including a plurality of pixels, each pixel being associated with a position and a color value within the digital representation, and generating resolution data by processing the pattern data, processing the pattern data including determining a yarn array including a plurality of consecutive yarn portions, the whole of the yarn array corresponding to the digital representation to be generated, and generating the yarn coloring data for the yarn based at least on the resolution data.

[0022] As used herein, the term "comprises / comprising" is to be interpreted as specifying the presence of the stated feature, integer, step, or component, but not precluding the presence or addition of one or more other features, integers, steps, components, or groups thereof. All terms used in the claims are to be interpreted according to their ordinary meaning in the technical field, unless explicitly defined otherwise herein. All references to "a / an / the [element, device, component, means, step, etc.]" are to be construed openly as referring to at least one instance of the element, device, component, means, step, etc., unless otherwise specified. The steps of any method disclosed herein need not be performed in the exact order disclosed, unless explicitly stated. BRIEF DESCRIPTION OF THE DRAWINGS

[0023] The above will become apparent from the following more specific description of the exemplary embodiments, as shown in the accompanying drawings. In the drawings, like reference symbols indicate like parts throughout different figures. The drawings are not necessarily to scale; instead, emphasis has been placed on illustrating the exemplary embodiments.

[0024]

Figure 1a

Figure 1b

Figure 2

Figure 3

Figure 4a

Figure 4b

Figure 4c

Figure 4d

Figure 4e

Figure 5a

Figure 5b

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

[0025] The systems described herein can be used for the treatment of yarns used in decorative yarn patterns. The system can be a system connected to a yarn consumption device or a stand - alone treatment system used to treat yarns for later use. The following examples are directed to systems for inline treatment of yarns. However, the invention described herein is applicable to other types of systems as well.

[0026] Referring to FIG. 1a, a schematic diagram of a system 300 for inline yarn coloring is shown. The system 300 includes a treatment unit 320. The treatment unit 320 may be a coloring unit adapted to dispense one or more coloring substances onto the yarn. The treatment unit 320 may include one or more dispensing devices. Each dispensing device includes a plurality of nozzles, such as inkjet nozzles, for example, and the plurality of nozzles are configured to dispense the coloring substance onto the yarn 20. The plurality of nozzles may be arranged at different longitudinal positions along the yarn 20 passing through the treatment unit during use. Each dispensing device is preferably formed as a series of inkjet print heads, and each print head has one or more nozzle arrays. Each nozzle array typically includes tens of thousands or more nozzles.

[0027] System 300 includes a controller 200 for use with at least one thread consumption device 310. In this context, the thread consumption device 310 is any device that consumes thread during use. This may be, for example, an embroidery machine, a loom, a sewing machine, a knitting machine, a tufting machine, a winding machine, or any other thread consumption device that may benefit from inline thread coloring of the associated thread.

[0028] In this context, a thread is a flexible, elongated member or substrate that is thin in the width and height directions and has a longitudinal extension that is significantly greater than the longitudinal extension of any part of the system described herein, as well as greater than its width and height dimensions. Typically, a thread may consist of a plurality of plies that are bundled or twisted together. Thus, the term thread includes various different materials such as glass fibers, wool, cotton, synthetic materials such as polymers, metals, or yarns, wires, strands, filaments, etc. made of, for example, a mixture of wool, cotton, polymer, or metal.

[0029] The controller 200 is configured to perform different functions related to controlling the generation of inline thread coloring data. The controller 200 may be implemented with any known controller technology and includes, but is not limited to, a microcontroller, a processor (e.g., PLC, CPU, DSP), an FPGA, an ASIC, or any other suitable digital and / or analog circuit capable of performing the intended functionality.

[0030] The controller 200 may be configured to receive digital content. The digital content may be a photograph captured by a camera unit, may be included within the system 300, or may be provided externally. Alternatively, the digital content may be virtually rendered by the controller 200 or some other type of device capable of rendering the digital content.

[0031] The controller 200 may be configured to communicate via a communication interface according to any known short - range or long - range communication standard known in the art. The short - range communication interface may include, for example, any other form of proximity - based wireless communication signals between devices such as IEEE802.11, IEEE802.15, ZigBee®, WirelessHART, WiFi, Bluetooth®, BLE, RFID, QR, WLAN, MQTT IoT, CoAP, DDS, NFC, AMQP, LoRaWAN, Z - Wave, Sigfox, Thread, EnOcean, mesh communication, or LTE Direct. The long - range communication interface may include, for example, W - CDMA / HSPA, GSM, UTRAN, or LTE.

[0032] The memory unit (not shown) may be associated with the controller 200, for example, may be resident therein, and may be implemented with any known memory technology including, but not limited to, E(E)PROM, S(D)RAM, or flash memory. The memory unit may alternatively be a cloud storage unit. The cloud storage unit may be deployed as an SQL data model such as MySQL®, PostgreSQL, or Oracle RDBMS. Alternatively, a deployment based on a NoSQL data model such as MongoDB, Amazon DynamoDB, Hadoop, or Apache Cassandra may be used. Alternatively, the memory unit may be resident in an external server configured with any type of client - server or peer - to - peer (P2P) computer architecture. The server configuration may include, for example, any combination, and some examples include, for example, any combination of a web server, a database server, an email server, a web proxy server, a DNS server, an FTP server, a file server, a DHCP server.

[0033] In some embodiments, the memory unit may be integrated with or internal to the controller 200. The memory unit may store program instructions for execution by the controller 200, as well as temporary and persistent data used by the controller 200. The program instructions and / or the temporary and persistent data relate to in-line thread coloring data and other data used by the controller 200 to generate the in-line thread coloring data. The stored in-line thread coloring data may be used directly (with at least some expected latency, as readily understood by those skilled in the art of computer networking) or at a later stage to color the thread.

[0034] The stored in-line thread coloring data may be transmitted and used in one or more other systems 300. Thus, the in-line thread coloring data generated in the controller 200 is not necessarily used in the same system 300 that includes the controller 200. In this sense, the in-line thread coloring data may be stored as a computer program product on a computer-readable medium.

[0035] Referring now to FIG. 1b, an exemplary embodiment of a system 300 for in-line yarn coloring is shown. The system 300 includes a yarn consumption device 310, which in this example is embodied as an embroidery machine, and more specifically as a single-head embroidery machine. The system 300 further includes a treatment unit 320 and a controller 200. The controller 200 is not limited to being arranged in accordance with FIG. 1b. In alternative embodiments, the controller 200 may be arranged anywhere within or outside the system 300. The yarn consumption device 310 includes a movable stage 312 that supports a fabric 40, or substantially any type of substrate. Yarn 20 is embroidered onto the fabric 40 to form an embroidery pattern 30. The embroidery pattern 30 may have any size, shape, form, dimension, pattern, figure, shape, letter, emblem, symbol, etc. The embroidery pattern 30 may be, for example, an embroidered logo or company name. The controller 200 may be configured to determine the above-described information regarding the embroidery pattern 30. During operation, the movable stage 312 is controlled to change its position in the X and Y directions (i.e., the horizontal plane).

[0036] The treatment unit 320 enables the yarn consumption device 310 to operate without providing the unique pre-colored yarns required by conventional embroidery machines. Thereby, the treatment unit 320 can color the yarn 20 in-line according to predetermined coloring data to generate a colored embroidery pattern 30. Thus, the treatment unit 320 replaces the individual yarn reels as present in prior art systems that do not use in-line yarn coloring. The process of generating the in-line yarn coloring data for the yarn 20 is coordinated by the controller 200.

[0037] Those skilled in the art should understand that the use of an embroidery machine to create the embroidery pattern 30 is just an example. The generated digital representation can be regarded as a thread arrangement including a plurality of continuous thread portions, and the whole thread arrangement corresponds to the digital representation to be generated. The generated pattern 30 is generated by arranging the thread portions in the generation path to form a decorative thread pattern.

[0038] In one embodiment, the decorative thread pattern is embroidery, the thread arrangement 22 is a stitch pattern, and the plurality of continuous thread portions 24 are a plurality of continuous stitches. In one embodiment, the decorative thread pattern is knitted fabric, the thread arrangement 22 is a stitch pattern, and the plurality of continuous thread portions 24 are a plurality of continuous stitches. In one embodiment, the decorative thread pattern is sewn fabric, the thread arrangement 22 is a stitch pattern, and the plurality of continuous thread portions 24 are a plurality of continuous stitches.

[0039] In one embodiment, the decorative thread pattern is woven fabric, the thread arrangement 22 is a weave pattern, and the plurality of continuous thread portions 24 are a plurality of continuous interlacings between the warp and weft threads.

[0040] In one embodiment, the decorative thread pattern is tufted fabric, the thread arrangement 22 is a tuft pattern, and the plurality of continuous thread portions 24 are a plurality of continuous tuft piles.

[0041] FIG. 2 is a schematic diagram of a method 100 for generating thread coloring data for thread 20 - based digital content according to an embodiment. The digital content may be a (2D) digital representation 10. The inline coloring thread 20 is sewn in this example to a fabric 40 (depicted as a shirt) for embroidering an embroidery pattern 30, but this should be regarded merely as an example of application. The digital representation 10 may be a digital image represented in a bitmap graphics format including, but not limited to, GIF, JPEG, PNG, TIFF, XBM, BMP, PCX, etc. in this example. As described above with reference to FIGS. 1a - b, the thread coloring data may alternatively be stored for future use in the same or another system. Hereinafter, the term digital image is used, but it should be noted that the concepts described are applicable to a broader digital representation as well.

[0042] The method 100 may include, as described with reference to FIGS. 1a - b, receiving the digital representation 10 via, for example, a camera unit or the like.

[0043] The method 100 may further include obtaining pattern data from the received digital representation 10. The pattern data includes information regarding pixels within the digital representation 10. Thus, the pattern data includes a plurality of pixels, and each pixel is associated with a position p and a color value cv within the digital image 10. In an example where the digital representation 10 is a digital image, the pattern data may be regarded as image data.

[0044] Since the digital representation 10 is two - dimensional, the position p indicates a two - dimensional position. As an example, a pixel located at the upper - left corner of the digital image 10 may have a position p=(0,0), and a pixel located at the lower - right corner of the digital image 10 may have a position p=(row max , col max ), where row max is the maximum number of pixel rows of the digital image 10, and col maxis the maximum number of pixel columns of the digital image 10. In this example, when the resolution of the digital representation is 1080p (1920x1080), the pixel located at the lower right corner of the digital image 10 has the position p = (1080, 1920). Similar pixel positions can be achieved for other image resolutions, such as 2K, 4K, 8K, etc.

[0045] For the sake of brevity, in this disclosure, the digital representation 10 is generally referred to as being in a square or rectangular shape. However, those skilled in the art will understand that this is purely by way of some examples. In other examples, the digital representation 10 may be associated with any suitable shape, such as circular, elliptical, triangular, pentagonal, hexagonal, octagonal, rhombic, trapezoidal, parallelogram, star, crescent, cross, arrow, etc., or in fact any substantially regular or irregular known shape that can be represented by the digital representation 10.

[0046] For this purpose, it should be understood that the terms "row" and "column" as used herein can be rows and columns in view of any of these other exemplary shapes. For this purpose, the terms "row" and "column" should not necessarily be interpreted as being straight lines horizontally or vertically, for example, in the context of a matrix. This is especially true for non-square or non-rectangular shapes such as circular. Therefore, the terms "row" and "column" as used in this disclosure refer rather to the relative arrangement of elements than the physical straightness of the line, that is, it should be understood that one stitch or pixel follows another stitch or pixel. In the context of this disclosure, rows and columns are sequences of elements arranged in a particular order. As an example, a substantially circular pattern may include a plurality of substantially circumferential rows or columns, while a substantially square pattern may include a plurality of substantially straight rows or columns.

[0047] The color value cv may be associated with any color space known in the art, such as the RGB or CMYK color space. Thus, when the color value cv of a pixel in the RGB color space is derived as (0, 0, 0), the color value cv represents black.

[0048] After obtaining the pattern data of the digital representation 10, method 100 further includes the step of generating resolution data. The resolution data is generated by processing the pattern data of the digital representation. During this procedure, information regarding a thread array including a plurality of consecutive thread portions of pattern 30 to be created / generated is determined. The processing of the pattern data may include determining information regarding the length 23 of the thread portion, the direction 24 of the thread portion, and / or the type 25 of connection used for consecutive thread portions.

[0049] In one embodiment, the pattern data includes a plurality of stitches to be embroidered. Thus, the information regarding the thread array including a plurality of consecutive thread portions can be regarded as information regarding stitches or stitch data. The processing step may then include deriving the stitch data of a plurality of interconnected stitches 22, and the stitch data includes a stitch length 23, a stitch direction 24, and a stitch type 25.

[0050] Method 100 further includes the step of generating thread coloring data of thread 20 based at least on the resolution data. The thread coloring data is stored, for example, in the memory unit of the controller or directly used to create pattern 30 as described with reference to FIGS. 1a - b.

[0051] Further details regarding the generation of the resolution data and the information regarding a plurality of consecutive thread portions are described herein according to two different embodiments respectively shown in FIGS. 3a - c and FIGS. 4a - e. In the following examples, the step of determining information regarding consecutive thread portions (such as the length 23 of the thread portion, the direction 24 of the thread portion, and the type 25 of connection used for consecutive thread portions, etc.) is referred to as stitch data for ease of reference. However, those skilled in the art should understand that the thread coloring data of the thread can be created to generate other types than stitches.

[0052] Figures 3a - c and 4a - e show embodiments for generating resolution data. Figures 3a - c and 4a - e show how stitch data is derived from a plurality of pixel portions, where each pixel portion includes a plurality of pixels each having a position p and a color value cv. As will be readily understood by those skilled in the art, the pixel portions may be columns, rows, a portion of a row, or a portion of a column of the digital image 10. The pixel portions may alternatively be interpreted as axes such as a substantially horizontal axis (x) or a substantially vertical axis (y). Thus, the resolution data disclosed herein is not limited to the stitch direction. This essentially means that, on the premise that the pattern 30 based on the digital image 10 can represent an exact replica of the digital image 10, it can be stitched from any direction.

[0053] Processing the pattern data includes deriving stitch data for a plurality of interconnected stitches 22. The term "interconnected" may be interpreted such that since the stitches provided by the thread 20 are interconnected, a pattern 30 based on the digital image 10 can be provided using a single thread 20. In other words, deriving stitch data for a plurality of interconnected stitches 22 does not require changing the thread reels containing different colored threads. This further involves that each subsequent stitch 22 is stitched from a start position 22a corresponding to the end position 22b of the previous stitch 22. Thus, the process of stitching the pattern 30 does not require abrupt stops and / or changes in the needle placement positions due to the digital image 10 having color changes. Thus, the resolution data includes information for each subsequent interconnected stitch 22.

[0054] In both of the embodiments shown in Figures 3a - c and 4a - e, the stitch data includes a stitch length 23, a stitch direction 24, and a stitch type 25.

[0055] The stitch direction 24 may be arbitrarily selected. Alternatively, the stitch direction may depend on any one or combination of the type of motif in the digital image 10, the level of detail in the digital image 10, the fabric for receiving the pattern 30, or any other suitable factor. In another embodiment, the determination of the stitch direction 24 may be performed by calculating a weighted direction value based on two or more of the above-described factors.

[0056] The stitch type 25 is a straight stitch in FIGS. 3b - c and a satin stitch in FIGS. 4b - e. However, the stitch type 25 is not limited to these stitches. Alternatively, the stitch type 25 may be selected from the group including straight stitch or reverse straight stitch, satin stitch or reverse satin stitch, tacking stitch, back stitch, catch stitch, slip stitch, blanket stitch, felting stitch, overcast stitch, whip stitch, stem stitch, split stitch, French knot stitch, chain stitch, feather stitch, lazy daisy stitch, herringbone stitch, seed stitch, frill stitch, detached chain stitch, couching stitch, weaving wheel stitch, bullion stitch, zigzag stitch, stretch stitch, edge stitch, rolled edge stitch, triple straight stitch, cover stitch, buttonhole stitch, blind hem stitch, scallop stitch, shell tuck stitch, overcasting stitch, insertion stitch, ladder stitch, multi-step zigzag stitch, overlock stitch, lock stitch and decorative stitch.

[0057] The stitch length 23 depends on the stitch type 25. The inventors conducted experiments to determine the shortest possible stitch length 23 for each stitch 22. Therefore, the stitch length 23 is derived as a fixed value according to the shortest stitch length 23 achievable with one coloring substance. The shorter the stitch length 23 that can be colored with a specific color, the higher the resolution of the pattern 30. However, due to multiple operational reasons such as the accuracy of the application of the coloring substance, the rotation of the thread, the speed of the thread, the smearing of the coloring substance, and other physical factors, it is clearly not possible to make the length of the stitch 22 colored with a specific color infinitely short. Furthermore, when the stitch length 23 is sufficiently short, the human eye does not perceive a color change.

[0058] In an alternative embodiment, the stitch data may include additional stitch data including information regarding the operating state such as the speed of the thread consumption unit and / or other signals, the material of the thread and / or the fabric, the movement of the movable stage 312, the maintenance of components, and the like.

[0059] Looking here at FIGS. 3b - c, a straight stitch is shown. The inventors determined the optimal stitch length 23 of the thread 20 to be approximately 1.50 mm in response to the above considerations. This value may vary slightly depending on, for example, the material of the thread and / or the fabric. Therefore, the stitch length 23 of the straight stitch may vary between approximately 1.40 mm and 1.60 mm. However, depending on the digital image 10, the stitch length is not necessarily the shortest possible stitch length 23. For example, the stitch length 23 may be longer for some digital images 10 that do not have a high color depth. Therefore, the stitch length 23 may depend on the motif of the digital image 10.

[0060] Here, with reference to FIGS. 3a - c, the generation of resolution data for a straight stitch will be described in detail. The exemplary resolution data generation scheme refers to a digital representation 10 that is substantially rectangular in shape, as discussed with reference to FIGS. 3a - 3c, but it should be noted that, as discussed above, other shapes can also be realized. Correspondingly, the rows and columns described with reference to FIGS. 3a - c are substantially straight lines, but this is for illustrative purposes only.

[0061] Resolution generation includes selecting a first pixel from among a plurality of pixels. This is shown in FIG. 3a. The first pixel may be selected as a pixel having a position p at one end point of the pixel portion. For example, p(x,y) = (nbr row ,0), (nbr row ,col max ), (0,nbr col ), or (row max ,nbr col ), where nbr row and nbr col are, respectively, any column or row numbers within the digital image 10. Similar end point positions of the pixel portion may be realized in the row portion and the column portion. Alternatively, the starting position may be any arbitrarily selected starting position p of a pixel within the digital image 10, for example, based on its motif and / or level of detail.

[0062] The position of the first pixel together with the stitch direction 24 represents the first pixel portion x, as seen in FIG. 3b. In the direction of the first pixel portion x, a plurality of rows are defined parallel to each other. This is seen in FIG. 3c, where the rows are represented as r1, r2,..., rn, and n is the number of rows.

[0063] In FIG. 3c, generating resolution data further includes calculating a first resolution as the maximum number of stitches 22 that fit into the corresponding rows r1 - n. Thus, the first resolution can be interpreted as the density of stitches in the "x" direction, i.e., the length of the row lr. The first resolution may be derived by calculating the length of the column lr and the number of stitch lengths that fit into the length of the column lr. As an example, if the length of the column lr is calculated as 30.0 cm (300.0 mm) and the stitch length is 1.50 mm, in this example, the number of stitches that fit into the said column is

Number

[0064] Generating resolution data further includes calculating a second resolution as the maximum number of stitches that fit into the columns c1 - n that are substantially perpendicular to the corresponding rows. The term "substantially perpendicular" refers, as described above, not to the physical straightness of the line, but to the concept of the relative arrangement of the elements. For this purpose, it should be understood that a sequence of elements arranged according to columns is substantially perpendicular to a sequence of elements arranged according to rows. In some examples, the columns are perpendicular to the corresponding rows. Thus, the second resolution can be interpreted as the density of stitches in the "y" direction. Similar to the first resolution, the number of stitches that fit into the column, in this example,

Number

[0065] The resolution data is defined by the first and second resolutions res(x), res(y), that is, the density of the stitches 22 in the "x" and "y" directions respectively. "Defined by" may be interpreted as a multiplicative relationship in this context. Therefore, the resolution res(e) is calculated according to res(e)=res(x)*res(y). Although the motif of the digital image can vary, the second resolution res(y) is higher than the first resolution res(x).

[0066] Looking at Figures 4b~e here, satin stitches are shown. The inventors determined that the optimal stitch length 23 of the thread 20 is approximately 3.0 mm for the above considerations. The stitch length 23 of the satin stitch is determined based on the formula: l s =s p (n o -1)+s o In the formula, l s is the stitch length 23, s p is the pixel size, n o is the number of overlapping rows, s ois the minimum repeat size. This value may vary slightly depending on, for example, the material of the thread 20 and / or the fabric that accepts the pattern. Thus, the stitch length 23 of the satin stitch may vary between approximately 2.80 mm and 3.20 mm. However, depending on the digital image 10, the stitch length is not necessarily the shortest possible stitch length 23. For example, the stitch length 23 may be longer for some digital images 10 that do not have a high color depth. Thus, the stitch length 23 may depend on the motif of the digital image 10.

[0067] Here, with reference to FIGS. 4a - e, the generation of resolution data for the satin stitch will be described in detail. The exemplary resolution data generation scheme refers to a digital representation 10 that is substantially rectangular in shape, as discussed with reference to FIGS. 4a - 4c, but it should be noted that, as discussed above, other shapes can also be realized. Correspondingly, the rows and columns described with reference to FIGS. 4a - 4c are substantially straight lines, but this is for illustrative purposes only. Resolution generation includes selecting a first pixel from among a plurality of pixels. This is shown in FIG. 4a. The first pixel may be selected in the same manner as how the first pixel was selected for the straight stitch as described with reference to FIG. 3a.

[0068] The position of the first pixel together with the stitch direction 24 represents the first pixel portion x, as seen in FIG. 4b. FIGS. 4c - d further show how the satin stitch is made. The construction of the satin stitch is itself known in the art and thus will not be described further herein. In the direction of the first pixel portion x, a plurality of rows are defined parallel to each other. This is seen in FIG. 4e, where the rows are represented as r1, r2, …, rn.

[0069] Referring to FIG. 4e, generating resolution data further includes calculating a first resolution as the maximum number of stitches 22 that fit into a column that is substantially perpendicular to the corresponding rows r1 - n. The term "substantially perpendicular" refers, as described above, not to the physical straightness of the line, but to the concept of the relative arrangement of elements. For this purpose, it should be understood that a sequence of elements arranged according to a column is substantially perpendicular to a sequence of elements arranged according to a row. In some examples, the column is perpendicular to the corresponding row. The columns are represented as c1, c2, …, cn. Thus, the first resolution can be interpreted as the density of stitches in the "y" direction. The first resolution can be derived by calculating the length of column lc and the number of stitch lengths that fit into the length of column lc. As an example, if the length of the column lc is calculated to be 30.0 cm (300.0 mm) and the stitch length is 3.0 mm, the number of stitches that fit into the row is, in this example,

Number

[0070] Generating resolution data further includes calculating a second resolution as the maximum number of stitches 22 that fit into the corresponding rows r1 - n. The second resolution can be interpreted as the density of stitches in the "x" direction. Similar to the first resolution, the number of stitches that fit into the row is, in this example,

Number

[0071] The resolution data is defined by the first and second resolutions res(x), res(y), that is, the density of the stitches 22 in the "x" and "y" directions respectively. "Defined by" may be interpreted as a multiplicative relationship. Therefore, the resolution res(e) may be calculated according to res(e)=res(x)*res(y). Although the motif of the digital image can change, the second resolution res(x) is higher than the first resolution res(y).

[0072] After the resolution data has been calculated according to the subject matter described with reference to, for example, FIGS. 3a - c or 4a - e, or alternatively, for any of the other stitch types as discussed herein, the portions of the stitches to be embroidered may be grouped. Thus, method 100 may further include a step of grouping the stitches according to the calculated resolution data. The grouping of the stitches to be embroidered can be useful for specific digital images having various levels of detail. For example, digital image 10 as seen in FIGS. 1b and 2 appears to have a generally higher level of detail in the central and lower portions of image 10 where a city and a forest are shown. In the upper portion of image 10 where sky and some clouds are shown, the level of detail is significantly lower. Thus, for the portions of digital image 10 representing low levels of detail, the resolution data may be low even though the number of pixels is large due to the small number of stitches. As a result of grouping the stitches, the perceived quality of pattern 30 remains the same, but the number of stitches required is reduced, and the complexity of generating the resolution data is effectively reduced.

[0073] Referring to FIGS. 5a - b, it is shown that in - line thread coloring data for thread 20 is generated based at least on the resolution data.

[0074] The step of generating the in - line thread coloring data may include converting the color value cv of pixels in digital image 10 to the calculated resolution data as shown in FIGS. 4a and 5a, and extracting (acquiring, retrieving, etc.) color data from the converted color values in the order of the production path defined by a plurality of interconnected stitches 22.

[0075] Converting the color value cv of a pixel in the digital image 10 into resolution data can be performed by constructing an updated bitmap of the digital image 10 and providing the resolution data as an input parameter to the creation of the bitmap. The bitmap is typically represented in the same format as the digital image 10 as described above in the present disclosure. Thus, the resulting bitmap contains color values converted according to the calculated resolution data. Thus, the conversion includes obtaining color data for the stitches to be embroidered corresponding to the color value cv of the pixel.

[0076] Extracting color data from the converted color values in the order of the generation path may be performed by taking out the color data cd representation for the converted color value of each pixel for each pixel in the updated bitmap of the digital image 10. The color data cd may be, for example, a color value in the RGB or CMYK color space as described above for the color value cv. Thus, this procedure includes taking out the color data cd of the converted color value in the updated bitmap of the digital image 10, and the updated bitmap is generated according to the resolution data.

[0077] Figures 5a - b show two embodiments of in - line thread coloring data generation. Figure 5a corresponds to in - line thread coloring data generation for straight stitches, and Figure 5b corresponds to the same for satin stitches. The exemplary in - line thread coloring data generation scheme refers to a digital representation 10 that is substantially rectangular in shape, as discussed with reference to Figures 5a - b, but it should be noted that, as discussed above, other shapes can also be realized. Correspondingly, the rows and columns described with reference to Figures 5a - b are substantially straight, but this is for illustrative purposes only. In the figure shown in Figure 5a, it can be seen that each stitch 22 is associated with color data cd1 - 4. Although not explicitly shown, a similar color data representation can also be realized for the figure shown in Figure 5b. The color data representations cd1 - 4 are extracted in the order of the generation path defined by a plurality of interconnected stitches 22. The generation path includes a first stitch s1, a plurality of subsequent stitches 22 following it, and a last stitch sn. Each of the stitches s1, 22, sn is interconnected according to the two examples shown. Further examples can be realized for alternative digital images 10, patterns 30, and / or stitch types. Thus, for each interconnected stitch 22 in the generation path, color data cd1 - 4 is extracted.

[0078] Referring to Figures 6a - b, 7, and 8a - d, different embodiments for generating transition colors for underlay stitches are shown. Underlay stitches have at least two functions in the creation of in - line thread coloring data for thread 20. The first function is to act as a transport between the end position of the first stitch and the start position of the subsequent stitch. The second function is to hide errors at the edges of the pattern to be generated, caused by changes in the level of thread consumption in the thread - consuming machine. Thus, by coloring the underlay stitches, the transition between the first edge and the second edge of the embroidery pattern can be made more consistently accurate.

[0079] Figures 6a and 6b show problems that can occur when several digital images 10 are converted into in-line thread coloring data of an embroidery pattern 30 and satin stitches are used for the embroidery pattern 30. This figure shows that a part of the digital image 10 is converted into in-line thread coloring data for two embroidery rows r1, r2, but the general idea applies to the entire digital image / embroidery pattern 10 / 30. Figure 6a represents a part of the digital image 10, and Figure 6b represents the in-line thread coloring data of the embroidery pattern 30 based on a part of the digital image 10. In Figure 6b, the in-line thread coloring data has not been determined for the underlay stitches. As can be seen from the figure, the color data representation of the edge part r1e1 is not accurately reproduced. This problem is caused by a sudden change in color values when the generation path moves through underlay stitches from the upper right edge r1e2 to the upper left edge r1e1 (as seen in Figure 4c for example). Due to the variation in thread consumption, the upper left edge r1e1 has come to exhibit a color data representation similar to that of the upper right edge r1e2. In other words, due to the change in thread consumption, the color conversion in the first row r1 is delayed so that the upper left edge r1e1 receives a color representation similar to that of the upper right edge r1e2. Furthermore, the opposite has occurred for the edges r2e1 and r2e2. By generating transition colors for the underlay stitches, as shown in Figure 6b, the error in the color data representation can be resolved.

[0080] Referring to Figure 7, the in-line thread coloring data of the embroidery pattern is shown, and transition colors are generated for the underlay stitches according to one embodiment. In the illustrated embodiment, a color gradient is generated from the color data of the upper left edge r1e1 to the color data of the lower right edge r2e2. Therefore, the sudden change in color data as shown in Figure 6b is at least partially alleviated.

[0081] This procedure involves extracting color data from a first edge portion r1e1 defined by the in-line thread coloring data, where the first edge portion r1e1 corresponds to the first embroidery row r1. The color data is included in the in-line thread coloring data for each stitch to be embroidered. This procedure similarly involves extracting color data from a second edge portion r2e2, which is on the opposite side of the first edge portion r1e1 and is selected from an embroidery row r2 parallel to and following the first embroidery row r1. "Opposite side" means the other end of the embroidery row as defined by the in-line thread coloring data.

[0082] The procedure further includes generating a color gradient that includes the combination of the color data of the first edge portion r1e1 and the second edge portion r2e2, and replacing the color data of the original edge portions r1e1, r2e2 with the color data of the color gradient. For simplicity, FIG. 7 shows only two rows r1, r2. Although not explicitly shown, the procedure further includes repeating, for each subsequent pair of edge portions defined by the in-line thread coloring data, extracting color data from the edge portions, generating a color gradient that includes the combination of the extracted color data, and replacing the color data of the edge portions with the color gradient. This type of gradient may be suitable for some digital images 10 that are not too detailed. However, for some other digital images 10, the inventors have described a further improved procedure, which will be described with reference to FIGS. 8a - e, where another type of gradient is shown.

[0083] FIGS. 8a - e show the in-line thread coloring data of the embroidery pattern, and the transition colors are generated for the underlay stitches according to one embodiment.

[0084] In FIG. 8a, color data is taken from the first and second edges e1, e2 respectively, as defined by the in-line thread coloring data. Comparing with the embodiment described with reference to FIG. 7, this procedure includes taking color data from the edges e1, e2 of the entire embroidery pattern to be embroidered as defined by the in-line thread coloring data, that is, not just a pair of rows (edge portions). Subsequently, a color gradient is generated from the combination of the color data of the first edge e1 and the color data of the second edge e2.

[0085] In one embodiment shown in FIG. 8b, the generation of the color gradient may be performed by aligning the first edge e1 and the second edge e2 to follow each other in parallel. Thus, the first and second edges e1, e2 are interpreted as embroidery rows defined by the in-line thread coloring data, where the first row is e2 in the figure and the second row is e1. The embodiment further includes dividing the aligned edges e1, e2 into a plurality of parts e1p1-n, e2p1-n, where n is the number of parts. In the illustrated example, n = 5, but the edges e1, e2 may be divided into any number of parts p1~n. Alternatively, the edges e1, e2 may have various numbers of edges, for example, such that two or more parts of the first edge e1 are aligned with a single part of the second edge 2.

[0086] The embodiment further includes combining the color data of each part e1p1~5, e2p1~5 according to a color transition scheme cts. An example of the color transition scheme cts is shown in FIG. 8b. It is shown that the aligned parts can be combined by combining 100% of the color data of part e2p1 and 0% of the color data of part e1p1. Thus, in the combined color data, the color data of part e2p1 is dominant. Further, the color transition scheme cts decreases from 100% to 0% for the second edge e2 and at the same time increases from 0% to 100% for the first edge e1. As a result, the combined parts will have various ranges of color data from the parts e1p1~5 of the first edge e1 and the parts e2p1~5 of the second edge e2.

[0087] The color transition scheme cts is not limited to the scheme shown in FIG. 8b (i.e., 100% to 0% and 0% to 100% respectively). The color transition scheme cts may have any suitable percentage-based distribution, for example, 20% to 80% and 80% to 20% respectively, 40% to 100% and 80% to 0% respectively, or any other distribution such that the sum of the color contributions of each pair of portions adds up to 100%. The difference in the color transition scheme cts may depend, for example, on the level of detail or resolution of the digital image to be converted into an embroidery pattern.

[0088] FIG. 8c shows the color gradient generated from the procedure described above with reference to FIG. 8b.

[0089] In FIG. 8d, the color data in the color gradient is replaced with the original color data from the edges e1, e2, thereby effectively alleviating color errors caused, for example, by the inherent changes in thread consumption.

[0090] FIG. 9 shows a method 100 for generating in-line coloring data for the thread 20 based on the digital image 10 according to an embodiment. The method 100 includes a step 110 of obtaining pattern data from the digital image 10, the pattern data including a plurality of pixels, each pixel being associated with a position p and a color value cv within the digital image 10. The method further includes a step 120 of generating resolution data by processing the pattern data. The method further includes a step 130 of generating in-line thread coloring data for the thread 20 based at least on the resolution data.

[0091] FIG. 10 shows a controller 200 according to an embodiment. The controller 200 may be the controller 200 described with reference to FIGS. 1a - b. The controller is configured to implement method 100. The controller 200 may include an image receiving unit 210 configured to receive a digital image 10 and obtain its pattern data. The controller 200 may include a processing unit 220 configured to process the pattern data to generate resolution data. The controller 200 may include a coloring data generation unit 230 configured to generate in - line coloring data for the yarn based at least on the resolution data.

[0092] In one embodiment, the step of generating resolution data includes selecting a first pixel from among a plurality of pixels, wherein the position and generation path direction of the first pixel represent a first axis, and a plurality of rows are defined parallel to each other in the direction of the first axis, calculating a first resolution as the maximum number of connections fitting a corresponding row, and calculating a second resolution as the maximum number of connections fitting a column perpendicular to the corresponding row, wherein the resolution data is defined by the first and second resolutions.

[0093] In one embodiment, the step of generating resolution data includes selecting a first pixel from among a plurality of pixels, wherein the position and generation path direction of the first pixel represent a first axis, and a plurality of rows are defined parallel to each other in the direction of the first axis, calculating a first resolution as the maximum number of connections fitting a column perpendicular to the corresponding row, and calculating a second resolution as the maximum number of connections fitting a corresponding row, wherein the resolution data is defined by the first and second resolutions.

[0094] In one embodiment, a method for generating in-line thread coloring data for a thread based on a digital image is provided. The method includes obtaining image data from the digital image, where the image data includes a plurality of pixels, and each pixel is associated with a position and a color value in the digital image, and generating embroidery resolution data by processing the image data, and generating in-line thread coloring data for the thread based at least on the embroidery resolution data.

[0095] In one embodiment, the step of processing the image data includes deriving stitch data for a plurality of interconnected stitches, where the stitch data includes a stitch length, a stitch direction, and a stitch type.

[0096] In one embodiment, the step of generating in-line thread coloring data for the thread includes converting the color values into embroidery resolution data, and extracting color data from the converted color values in an order of a generation path defined by a plurality of interconnected stitches. The stitch type may be selected from the group including a satin stitch and a straight stitch. The stitch length may be derived as a fixed value.

[0097] In one embodiment, the stitch type is a straight stitch, and the step of generating embroidery resolution data includes selecting a first pixel from a plurality of pixels, where the position and the stitch direction of the first pixel represent a first embroidery axis, and a plurality of embroidery rows are defined parallel to each other in a direction of the first embroidery axis, and calculating a first resolution as a maximum number of stitches that fit the corresponding embroidery row, and calculating a second resolution as a maximum number of stitches that fit an embroidery column perpendicular to the corresponding embroidery column, and the embroidery resolution data is defined by the first and second resolutions.

[0098] In one embodiment, the stitch type is a satin stitch, and the step of generating embroidery resolution data includes selecting a first pixel from a plurality of pixels, wherein the position and stitch direction of the first pixel represent a first embroidery axis, and a plurality of embroidery rows are defined parallel to each other in the direction of the first embroidery axis. The method further includes calculating a first resolution as the maximum number of stitches that fit into an embroidery row perpendicular to the corresponding embroidery column, and calculating a second resolution as the maximum number of stitches that fit into the corresponding embroidery column. The embroidery resolution data is defined by the first and second resolutions.

[0099] Generating in-line thread coloring data for the thread may include generating a transition color for an underlay stitch. In one embodiment, the step of generating the transition color includes extracting color data from a first edge portion defined by the in-line thread coloring data, where the first edge portion corresponds to a first embroidery row, and extracting color data from a second edge portion defined by the in-line thread coloring data, where the second edge portion is on the opposite side of the first edge portion and corresponds to a parallel embroidery row next to the first embroidery row. The method further includes generating a color gradient including a combination of the color data of the first edge portion and the second edge portion, replacing the color data of the first edge portion and the second edge portion with the color data of the color gradient, and repeating the steps of extracting color data from edge portions, generating a color gradient including the combination of the extracted color data, and replacing the color data of the edge portions with the color gradient for each subsequent pair of edge portions defined by the in-line thread coloring data.

[0100] In one embodiment, the step of generating a transition color for an underlay stitch includes extracting color data from a first edge defined by the in-line thread coloring data, extracting color data from a second edge defined by the in-line thread coloring data, generating a color gradient including a combination of the color data of the first edge and the second edge, and replacing the color data of the left and right edges with the color data of the color gradient.

[0101] In one embodiment, the step of generating a color gradient includes aligning a first edge and a second edge to follow each other in parallel, partitioning the aligned edges into a plurality of portions, and combining the color data of each portion according to a color transition scheme.

[0102] In one embodiment, the method further includes the step of grouping stitches according to embroidery resolution data.

[0103] The method may further include the step of performing inline thread coloring of the thread based on inline thread coloring data, and stitching an embroidery pattern using the colored thread.

[0104] In one embodiment, a controller is provided for controlling the generation of inline thread coloring data of a thread based on a digital image. The controller is configured to implement a method according to a first aspect.

[0105] In one embodiment, a system is provided for use with a thread-consuming device. The system includes a controller configured to control the generation of inline thread coloring data of a thread based on a digital image according to a second aspect, and a treatment unit configured to dispense one or more coloring substances onto the thread according to the inline thread coloring data during operation.

[0106] In one embodiment, the system further includes a thread-consuming device that is an embroidery machine, a sewing machine, a knitting machine, a loom, a tufting machine, a thread winding machine, or any combination thereof.

[0107] The advantages of the concepts of the present invention as described by the above embodiments are the higher resolution of the patterns based on digital images with in-line thread coloring. The patterns have better color depth and are of high quality and more easily reproducible. Further, another advantage is the improvement in the achieved transitional colors. Further, the present invention provides a more effective use of utilizing underlay stitches to hide unwanted portions. Such unwanted portions can be transitional colors, stitches of incorrect colors, or other "ugly portions".

[0108] Throughout this disclosure, terms such as pixels, stitches, digital images, and embroidery patterns are discussed. In particular, when processing digital images with higher resolution, it is readily understood that pixels do not necessarily correspond to stitches. In contrast, when generating in-line thread coloring data for the threads, it is understood that the stitches used in the embroidery pattern typically correspond to a plurality of pixels. Thus, in most cases, the number of stitches in an embroidery pattern based on a digital image is significantly less than the number of pixels in the digital image. A natural consequence of this is that the color data of a stitch typically corresponds to the color values of a plurality of pixels, i.e., a certain type of average value of the color values of a plurality of pixels is used to represent the color data of a particular stitch. This applies to both cases when generating embroidery resolution data and in-line thread coloring data. The examples presented and described in this disclosure directed to rectangular embroidery patterns are simply rectangular because the description of the shape is relatively easy. However, since digital images or embroidery patterns can be arbitrarily shaped, this does not limit this disclosure in any way.

[0109] Throughout the present disclosure, digital images and embroidery patterns are described. It will be readily understood that the subject matter of the present disclosure is not limited to actually creating an embroidery pattern. Thus, in-line coloring data can be generated without necessarily sewing the embroidery pattern. In this sense, when it is stated that something is "defined" by the in-line thread coloring data, for example, a row, column, or edge with respect to the embroidery pattern, it refers to the row, column, or edge that may potentially be embroidered in the future.

[0110] The invention has been described above with reference to specific embodiments, but it is not intended to be limited to the specific forms described herein. Rather, the invention is limited only by the appended claims.

[0111] In the claims, the terms "comprises / comprising" do not exclude the presence of other elements or steps. Further, individual features may be included in different claims, and these may perhaps be advantageously combined, and being included in different claims does not mean that a combination of features is not feasible and / or advantageous. Further, references to the singular do not exclude the plural. Terms such as "a and an", "first", "second", etc. do not exclude a plurality. Reference signs in the claims are provided merely as illustrative examples and should in no way be construed as limiting the scope of the claims.

Claims

1. A controller (200) configured to generate thread coloring data for a thread used to create a decorative thread pattern, wherein the controller (200) generates the thread coloring data based on a digital representation to be generated as the decorative thread pattern, obtaining pattern data from the digital representation (10), the pattern data including a plurality of pixels, each pixel being associated with a position (p) and a color value (cv) within the digital representation (10), generating resolution data by processing the pattern data, the processing of the pattern data including determining a thread arrangement including a plurality of consecutive thread portions, the whole of the thread arrangement corresponding to the digital representation to be generated, generating thread coloring data for the thread (20) based at least on the resolution data, A controller (200) configured to perform by.

2. The processing of the pattern data further includes determining information regarding the length (23) of the thread portion, the direction (24) of the thread portion, and the type (25) of connection used to connect one or more thread portions to each other. The controller (200) according to claim 1.

3. Generating the coloring data of the thread converting the color value (cv) into the resolution data, extracting color data in the order of the generation path defined by the arrangement of the thread portions relative to each other from the converted color value, The controller (200) according to claim 2, including.

4. The step of generating the resolution data selecting a first pixel from the plurality of pixels, the position and the generation path direction of the first pixel representing a first pixel portion (x), and a plurality of rows being defined parallel to each other in the direction of the first pixel portion (x), calculating a first resolution as the maximum number (22) of connections that fit into the corresponding row, calculating a second resolution as the maximum number (22) of connections that fit into a column substantially perpendicular to the corresponding row, including, The resolution data is defined by the first resolution and the second resolution. The controller (200) according to any one of claims 1 to 3.

5. The step of generating the resolution data Selecting a first pixel from the plurality of pixels, wherein the position of the first pixel and the direction of the generation path represent a first pixel portion (x), and a plurality of rows are defined parallel to each other in the direction of the first pixel portion (x). Calculating a first resolution as the maximum number (22) of connections adapted to columns substantially perpendicular to the corresponding rows. Calculating a second resolution as the maximum number (22) of connections adapted to the corresponding rows. Including The resolution data is defined by the first resolution and the second resolution. The controller (200) according to any one of claims 1 to 3.

6. The controller (200) according to any one of claims 1 to 5, further comprising grouping connections according to the resolution data.

7. The step of generating the thread coloring data of the thread (20) includes Generating a transition color for the underlay connection The controller (200) according to any one of claims 1 to 6.

8. Generating the transition color for the underlay connection includes Extracting color data from a first edge portion defined by the thread coloring data, wherein the first edge portion corresponds to a first row. Extracting color data from a second edge portion defined by the thread coloring data, wherein the second edge portion is on the opposite side of the first edge portion and corresponds to a parallel row next to the first row. Generating a color gradient including the combination of the color data of the first edge portion and the second edge portion. Replacing the color data of the first edge portion and the second edge portion with the color data of the color gradient. For each subsequent pair of edge portions defined by the thread coloring data, repeating the steps of extracting color data from the edge portion, generating a color gradient including the combination of the extracted color data, and replacing the color data of the edge portion with the color gradient. The controller (200) according to claim 7.

9. Generating a transition color for the underlay connection includes Extracting color data from a first edge defined by the thread coloring data. Extracting color data from a second edge defined by the thread coloring data. Generating a color gradient including the combination of the color data of the first edge and the second edge; Replacing the color data of the left and right edges with the color data of the color gradient, the controller (200) according to claims 7 and 8.

10. Generating the color gradient includes: Aligning the first edge and the second edge so as to follow each other in parallel; Dividing the aligned edges into a plurality of parts; Combining the color data of each part according to a color transition scheme; The controller (200) according to claim 9, including.

11. A system (10) for treating a thread (20) used in a decorative thread pattern, comprising a controller (200) according to any one of claims 1 to 10, and further comprising a treatment unit (320) having at least one discharge device (150) configured to dispense one or more coating substances onto the thread (20) during operation.

12. The system (10) according to claim 11, wherein the controller (200) is further configured to control the dispensing from the discharge device (150) to the thread (20) based on the thread coloring data.

13. The system is for in-line treatment of the thread (20), and the system is operably communicable with a thread consumption unit (310) configured to generate the decorative thread pattern, the system (10) according to claim 11 or 12.

14. The decorative thread pattern is embroidery, the thread arrangement (22) is a stitch pattern, and the plurality of continuous thread portions (24) are a plurality of continuous stitches, the system according to any one of claims 11 to 13.

15. The decorative thread pattern is a knitted fabric, the thread arrangement (22) is a stitch pattern, and the plurality of continuous thread portions (24) are a plurality of continuous stitches, the system according to any one of claims 11 to 13.

16. The decorative thread pattern is a woven fabric, the thread arrangement (22) is a weaving pattern, and the plurality of continuous thread portions (24) are a plurality of continuous interlacings between warp and weft, the system according to any one of claims 11 to 13.

17. The decorative thread pattern is a sewn fabric, the thread arrangement (22) is a stitch pattern, and the plurality of continuous thread portions (24) are a plurality of continuous stitches. The system according to any one of claims 11 to 13.

18. The decorative thread pattern is a tufted fabric, the thread arrangement (22) is a tuft pattern, and the plurality of continuous thread portions (24) are a plurality of continuous tuft piles. The system according to any one of claims 11 to 13.

19. A method for generating thread coloring data of a thread used for creating a decorative thread pattern, generating the thread coloring data based on a digital representation to be generated as the decorative thread pattern including, and the step of generating the thread coloring data is a step of obtaining pattern data from the digital representation (10), the pattern data includes a plurality of pixels, and each pixel is associated with a position (p) and a color value (cv) within the digital representation (10), generating resolution data by processing the pattern data, where processing the pattern data includes determining a thread arrangement including a plurality of continuous thread portions, and the whole of the thread arrangement corresponds to the digital representation to be generated, generating the thread coloring data of the thread (20) based on at least the resolution data, performed by, a method.