WO2017090295A1 - 刺繍模様編集プログラム及び刺繍模様編集装置 - Google Patents

刺繍模様編集プログラム及び刺繍模様編集装置 Download PDF

Info

Publication number
WO2017090295A1
WO2017090295A1 PCT/JP2016/075798 JP2016075798W WO2017090295A1 WO 2017090295 A1 WO2017090295 A1 WO 2017090295A1 JP 2016075798 W JP2016075798 W JP 2016075798W WO 2017090295 A1 WO2017090295 A1 WO 2017090295A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
embroidery pattern
pattern
unit
embroidery
Prior art date
Application number
PCT/JP2016/075798
Other languages
English (en)
French (fr)
Inventor
裕太 上平
一輝 小嶋
Original Assignee
ブラザー工業株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ブラザー工業株式会社 filed Critical ブラザー工業株式会社
Publication of WO2017090295A1 publication Critical patent/WO2017090295A1/ja
Priority to US15/980,317 priority Critical patent/US10519581B2/en
Priority to US16/689,890 priority patent/US11479890B2/en
Priority to US17/929,509 priority patent/US11781255B2/en

Links

Images

Classifications

    • DTEXTILES; PAPER
    • D05SEWING; EMBROIDERING; TUFTING
    • D05BSEWING
    • D05B19/00Programme-controlled sewing machines
    • D05B19/02Sewing machines having electronic memory or microprocessor control unit
    • D05B19/12Sewing machines having electronic memory or microprocessor control unit characterised by control of operation of machine
    • DTEXTILES; PAPER
    • D05SEWING; EMBROIDERING; TUFTING
    • D05BSEWING
    • D05B19/00Programme-controlled sewing machines
    • D05B19/02Sewing machines having electronic memory or microprocessor control unit
    • D05B19/04Sewing machines having electronic memory or microprocessor control unit characterised by memory aspects
    • D05B19/08Arrangements for inputting stitch or pattern data to memory ; Editing stitch or pattern data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation

Definitions

  • the present invention relates to an embroidery pattern editing program and an embroidery pattern editing apparatus.
  • Patent Document 1 an image processing apparatus that displays a virtual object in association with a marker image in a photographed image is known (see, for example, Patent Document 1).
  • the device described in Patent Literature 1 captures a planned building location of a building and obtains a landscape image.
  • the apparatus identifies a marker included in a landscape image.
  • the apparatus aligns the building image with the landscape image with the identified marker as a reference, and displays the image superimposed on the landscape image.
  • An object of the present invention is to provide an embroidery pattern editing program and an embroidery pattern editing apparatus capable of confirming a finished image of an embroidery pattern when an embroidery pattern is arranged on a sewing product and the embroidery pattern is edited using an AR technology.
  • the purpose is to provide.
  • the photographing unit photographs the control unit of an embroidery pattern editing apparatus including a photographing unit, a display unit, an input unit, and a control unit.
  • a detection unit that detects a marker associated with an embroidery pattern to be placed in an augmented reality space from a real image that is an image of a real space; and the detection unit detects the marker from the real image when the marker is detected.
  • a pattern image representing the embroidery pattern associated with the marker is superimposed on the actual image and displayed on the display unit, and the embroidery pattern is edited via the input unit.
  • a receiving unit that receives the edited content of the embroidery pattern when the receiving unit receives an edit on the embroidery pattern; It is to include an indication.
  • An embroidery pattern editing apparatus includes an imaging unit, a display unit, an input unit, and a control unit, and the control unit is an image of a real space captured by the imaging unit.
  • a detection unit that detects a marker associated with an embroidery pattern arranged in an augmented reality space from a certain real image, and when the detection unit detects the marker, the detection unit associates the marker with the detected marker as a reference.
  • the display image is displayed on the display unit by superimposing the pattern image representing the embroidery pattern on the actual image captured by the photographing unit, and the editing for the embroidery pattern is accepted via the input unit.
  • the accepting unit and the accepting unit accept editing of the embroidery pattern
  • the accepting unit functions as a changing unit that reflects the received editing content on the pattern image being displayed on the display unit.
  • the user can confirm the finished image of the embroidery pattern when the embroidery pattern is arranged on the sewing product and the embroidery pattern is edited.
  • the user can imagine the finish of the embroidery pattern by referring to the actual image and the pattern image.
  • the user can edit the embroidery pattern while confirming the finish of the embroidery pattern.
  • FIG. 1 is a perspective view of a sewing machine 1 and an embroidery pattern editing device 3.
  • FIG. 4 is an explanatory diagram showing a configuration of a lower end portion of a head portion 14.
  • FIG. 2 is a block diagram showing an electrical configuration of the sewing machine 1 and an embroidery pattern editing device 3.
  • FIG. It is explanatory drawing of the marker storage area 68 which the flash memory 64 has, the embroidery data storage area 69, and the sewing area storage area 70. 4 is a flowchart of main processing executed by the embroidery pattern editing device 3. It is explanatory drawing of the real image 43.
  • FIG. It is explanatory drawing with the real image 43, the pattern image 46, and the range image 45 which were displayed on the display part 135 of the embroidery pattern editing apparatus 3.
  • FIG. 64 is an explanatory diagram of a screen 644 displayed on the display unit 135 of the embroidery pattern editing apparatus 3.
  • 3 is a flowchart of main processing executed by the sewing machine 1;
  • FIG. 1 A physical configuration of a sewing system 100 including a sewing machine 1 and an embroidery pattern editing device 3 (hereinafter simply referred to as “device 3”) will be described with reference to FIGS.
  • the vertical direction, lower right side, upper left side, lower left side, and upper right side of FIG. 1 are the vertical direction, front, rear, left, and right sides of the sewing machine 1 and the apparatus 3, respectively. That is, the surface on which a later-described liquid crystal display (hereinafter referred to as LCD) 15 is disposed is the front surface of the sewing machine 1.
  • the longitudinal direction of the bed portion 11 and the arm portion 13 is the left-right direction of the sewing machine 1.
  • the side on which the pedestal 12 is disposed is the right side.
  • the extending direction of the pedestal 12 is the vertical direction of the sewing machine 1.
  • image data to be processed by a computer is also simply referred to as “image”.
  • the sewing machine 1 includes a bed portion 11, a pedestal column portion 12, an arm portion 13, and a head portion 14.
  • the bed portion 11 is a base portion of the sewing machine 1 that extends in the left-right direction.
  • the pedestal 12 is erected upward from the right end of the bed 11.
  • the arm portion 13 faces the bed portion 11 and extends leftward from the upper end of the pedestal column portion 12.
  • the head 14 is a part that is connected to the left tip of the arm 13.
  • the bed portion 11 includes a needle plate 21 (see FIG. 2) on the upper surface thereof.
  • the needle plate 21 has a needle hole (not shown) through which a sewing needle 7 described later can be inserted.
  • a sewing product for example, a work cloth
  • the sewing machine 1 includes a feed dog, a feed mechanism, a shuttle mechanism, and the like (not shown) on the lower side of the needle plate 21, that is, in the bed portion 11.
  • the feed dog is driven by a feed mechanism during normal sewing that is not embroidery sewing, and moves the workpiece to be sewn by a predetermined amount of movement.
  • the shuttle mechanism entangles the upper thread (not shown) with the lower thread (not shown) below the needle plate 21.
  • the sewing machine 1 includes a moving mechanism 40.
  • the moving mechanism 40 is configured to be able to relatively move a sewing object C (photographed object) held in the embroidery frame 50 with respect to an image sensor 35 and a needle bar 6 described later.
  • the moving mechanism 40 includes a main body 41 and a carriage 42.
  • the carriage 42 includes a frame holder (not shown), a Y-axis moving mechanism (not shown), and a Y-axis motor 84 (see FIG. 3).
  • the frame holder is provided on the right side surface of the carriage 42.
  • One selected from a plurality of types of embroidery frames 50 having different sizes and shapes can be attached to and detached from the frame holder.
  • the Y-axis moving mechanism moves the frame holder in the front-rear direction (Y-axis direction).
  • the Y-axis motor 84 drives the Y-axis moving mechanism.
  • the embroidery frame 50 of the present embodiment includes a first frame member 51, a second frame member 52, and an attachment portion 55, and can hold the sewing product C with the first frame member 51 and the second frame member 52. is there.
  • the sewable area 54 set inside the embroidery frame 50 is an area where the sewing machine 1 can form a seam.
  • the attachment part 55 is a part attached to the frame holder.
  • the attachment portion 55 has a shape unique to the embroidery frame 50.
  • the main body 41 includes an X-axis moving mechanism (not shown) and an X-axis motor 83 (see FIG. 3).
  • the X-axis moving mechanism moves the carriage 42 in the left-right direction (X-axis direction).
  • the X-axis motor 83 drives the X-axis movement mechanism.
  • the moving mechanism 40 can move the embroidery frame 50 mounted on the carriage 42 (specifically, a frame holder) to a position indicated by a unique XY coordinate system (embroidery coordinate system).
  • a unique XY coordinate system embroidery coordinate system
  • the right side, the left side, the front side, and the rear side of the sewing machine 1 are the X plus direction, the X minus direction, the Y minus direction, and the Y plus direction.
  • An LCD 15 is provided on the front surface of the pedestal 12.
  • the LCD 15 displays an image including various items such as commands, illustrations, setting values, and messages.
  • a touch panel 26 capable of detecting the pressed position is provided on the front side of the LCD 15.
  • the CPU 61 (see FIG. 3) of the sewing machine 1 detects an item selected in the image based on the detected pressing position.
  • the pressing operation of the touch panel 26 by the user is referred to as a panel operation.
  • the user can select a pattern to be sewn and a command to be executed by operating the panel.
  • the pedestal 12 includes a sewing machine motor 81 (see FIG. 3).
  • FIG. 1 shows a state where the cover 16 is opened.
  • a thread accommodating portion 18 is provided below the cover 16 (that is, inside the arm portion 13).
  • the yarn accommodating portion 18 can accommodate the yarn spool 20 around which the upper yarn is wound.
  • a main shaft (not shown) extending in the left-right direction is provided inside the arm portion 13. The main shaft is rotationally driven by a sewing machine motor 81.
  • Various switches including a start / stop switch 29 are provided at the lower left part of the front surface of the arm unit 13.
  • the start / stop switch 29 starts or stops the operation of the sewing machine 1. That is, the start / stop switch 29 is used to input an instruction to start or stop sewing.
  • the head 14 is provided with a needle bar 6, a presser bar 8, a needle bar vertical movement mechanism 34, and the like.
  • a sewing needle 7 is detachably attached to the lower end of the needle bar 6.
  • a presser foot 9 is detachably attached to the lower end portion of the presser bar 8.
  • the needle bar 6 is provided at the lower end of the needle bar vertical movement mechanism 34.
  • the needle bar vertical movement mechanism 34 drives the needle bar 6 in the vertical direction by rotating the main shaft.
  • the image sensor 35 is, for example, a well-known CMOS (Complementary Metal Oxide Semiconductor) image sensor.
  • the image sensor 35 is a known area sensor in which a plurality of imaging elements 37 (for example, a plurality of CMOSs) arranged in the main scanning direction are arranged in a plurality of rows in the sub-scanning direction.
  • the main scanning direction and the sub-scanning direction correspond to the X-axis direction (left-right direction) and the Y-axis direction (front-back direction) of the sewing machine 1, respectively.
  • the image sensor 35 is arranged so as to be able to photograph an area including the lower part of the needle bar 6 and can generate image data.
  • the output image data is stored in a predetermined storage area of the RAM 63 (see FIG. 3).
  • An image coordinate system (hereinafter also referred to as “image coordinate system”) represented by image data generated by the image sensor 35 and a coordinate system of the entire space (hereinafter also referred to as “world coordinate system”) are used.
  • the parameters are associated in advance by parameters stored in the flash memory 64 (see FIG. 3).
  • the world coordinate system and the embroidery coordinate system are associated in advance by parameters stored in the flash memory 64. Therefore, the sewing machine 1 can execute processing for specifying the coordinates of the embroidery coordinate system based on the image data generated by the image sensor 35.
  • the physical configuration of the device 3 will be described with reference to FIG.
  • the device 3 in this example is a known tablet personal computer (PC).
  • the apparatus 3 includes an operation switch 131, a touch panel 132, and a display unit 135 on the upper surface.
  • the operation switch 131 is used when inputting various instructions to the apparatus 3.
  • the display unit 135 displays an image including various items such as commands, illustrations, setting values, and messages.
  • the touch panel 132 is provided on the front side of the display unit 135 and can detect the pressed position. When the user performs a pressing operation on the touch panel 132 using a finger or a dedicated touch pen, the pressed position is detected by the touch panel 132. An item selected in the image is detected based on the detected pressing position.
  • the apparatus 3 includes an image sensor 134 (see FIG. 3) on the bottom surface.
  • the image sensor 134 is, for example, a well-known CMOS image sensor.
  • the sewing machine 1 includes a CPU 61, a ROM 62, a RAM 63, a flash memory 64, an input / output interface (I / O) 66, and a communication I / F 67.
  • the CPU 61 is connected to a ROM 62, a RAM 63, a flash memory 64, an input / output I / O 66, and a communication I / F 67 via a bus 65.
  • the CPU 61 is in charge of main control of the sewing machine 1 and executes various calculations and processes related to photographing and sewing in accordance with various programs stored in the ROM 62.
  • the ROM 62 includes a plurality of storage areas including a program storage area. In the program storage area, various programs for operating the sewing machine 1 (for example, programs for executing main processing described later) are stored.
  • the RAM 63 is provided with a storage area for storing calculation results and the like calculated by the CPU 61.
  • the flash memory 64 includes a marker storage area 68, an embroidery data storage area 69, and a sewable area storage area 70, which will be described later with reference to FIG. Storage area.
  • Drive circuits 71 to 74, a touch panel 26, a start / stop switch 29, an image sensor 35, and a detector 36 are connected to the input / output I / O 66.
  • the detector 36 is configured to detect that the embroidery frame 50 is mounted on the moving mechanism 40 and output a detection result corresponding to the type of the embroidery frame 50.
  • a sewing machine motor 81 is connected to the drive circuit 71.
  • the drive circuit 71 drives the sewing machine motor 81 in accordance with a control signal from the CPU 61.
  • the needle bar vertical movement mechanism 34 (see FIG. 2) is driven via the main shaft (not shown) of the sewing machine 1, and the needle bar 6 moves up and down.
  • An X-axis motor 83 is connected to the drive circuit 72.
  • a Y-axis motor 84 is connected to the drive circuit 73.
  • the drive circuits 72 and 73 drive the X-axis motor 83 and the Y-axis motor 84, respectively, according to control signals from the CPU 61.
  • the drive circuit 74 displays an image on the LCD 15 by driving the LCD 15 in accordance with a control signal from the CPU 61.
  • the communication I / F 67 is an interface for connecting the sewing machine 1 to the network 10.
  • the CPU 61 can execute data transmission / reception with another device (for example, the device 3) connected to the network 10 via the communication I / F 67.
  • the sewing machine 1 will be briefly described.
  • the embroidery frame 50 is moved in the X-axis direction and the Y-axis direction by the moving mechanism 40, and the needle bar vertical movement mechanism 34 (see FIG. 2) and the shuttle mechanism (illustrated). (Omitted) is driven.
  • the embroidery pattern is sewn on the workpiece C held on the embroidery frame 50 by the sewing needle 7 attached to the needle bar 6.
  • the apparatus 3 includes a CPU 121, a ROM 122, a RAM 123, a flash memory 124, a communication I / F 125, and an input / output interface 128.
  • the CPU 121 controls the device 3.
  • the CPU 121 is electrically connected to the ROM 122, RAM 123, flash memory 124, communication I / F 125, and input / output interface 128 via the bus 127.
  • the ROM 122 stores a boot program, BIOS, and the like.
  • the RAM 123 stores temporary data.
  • the flash memory 124 stores various set values including a marker storage area 137 and a sewable area storage area 138 which will be described later with reference to FIG.
  • the communication I / F 125 is an interface for connecting the device 3 to the network 10.
  • the CPU 121 can execute data transmission / reception with another device (for example, the sewing machine 1) connected to the network 10 via the communication I / F 125.
  • the input / output interface 128 is connected to the operation switch 131, the touch panel 132, the image sensor 134, and the display unit 135.
  • the image sensor 134 generates image data obtained by shooting a predetermined shooting range.
  • the generated image data is stored in the RAM 123.
  • the display unit 135 is a liquid crystal display.
  • the marker storage area 68 stores data representing the marker 4 used when the embroidery pattern editing process is executed in the sewing system 100.
  • Data representing the marker 4 is used in a process of extracting the marker 4 from the images acquired from the image sensors 35 and 134.
  • the data representing the marker 4 may be, for example, image data representing the marker 4 or numerical data representing the size and shape of the marker 4.
  • the marker 4 in this example is a reference for the size and arrangement of the embroidery pattern 5 when the embroidery pattern to be sewn is edited by the device 3. Further, the marker 4 in this example is a reference when the embroidery pattern is arranged on the sewing machine 1 according to the editing contents of the apparatus 3 with the marker 4 as a reference.
  • the marker 4 is associated with an embroidery pattern to be sewn. Therefore, the marker 4 may be any marker that is photographed by both the apparatus 3 and the sewing machine 1 and that can detect the size and position of the marker 4 from the acquired image.
  • the marker 4 of this example includes a white thin sheet and a line drawing drawn in black on the surface of the sheet. A transparent adhesive is applied to the back surface of the sheet. The user can affix the sheet on the sewing product.
  • the line drawing drawn on the upper surface of the sheet includes a character pattern 47 and a graphic pattern 48.
  • the character pattern 47 is a pattern representing the capital letter K.
  • the graphic pattern 48 is a pattern representing a square.
  • Data indicating the marker in this example is image data representing the surface of the marker 4.
  • the left and right directions and the up and down directions in FIG. 4 correspond to the X and Y directions of the embroidery coordinate system, respectively.
  • the flash memory 124 of the apparatus 3 of this example has a marker storage area 137 similar to the marker storage area 68 and stores data representing the marker 4.
  • the embroidery data storage area 69 stores embroidery data that is data indicating an embroidery pattern for each of a plurality of embroidery patterns.
  • the embroidery data includes ID, sewing data, and pattern image data.
  • the ID is a unique identifier assigned to each of the plurality of embroidery patterns.
  • the ID in this example is a character string combining alphabets and numbers.
  • the sewing data includes coordinate data for each thread color data.
  • the thread color data is data indicating the color of the thread forming the stitch.
  • the coordinate data is data indicating the stitch formation position (needle drop position) included in the embroidery pattern in the coordinates of the embroidery coordinate system. That is, the sewing data includes data indicating the stitch formation position for each stitch color.
  • the pattern image data is data representing a pattern image representing the finish of the embroidery pattern.
  • the user sews an embroidery pattern using the sewing machine 1
  • the user selects a desired embroidery pattern from the plurality of embroidery patterns based on the plurality of embroidery data stored in the flash memory 64.
  • the embroidery data may be acquired from an external device connected via the communication I / F 67 or a storage device such as a memory card electrically connected to the sewing machine 1.
  • the embroidery pattern 5 described as an example is an embroidery pattern that is sewn with one color thread representing the capital letter A.
  • the left and right directions and the up and down directions in FIG. 4 correspond to the X and Y directions of the embroidery coordinate system, respectively.
  • the size of the embroidery pattern 5 is represented by the size of the minimum rectangle 56 that encloses the embroidery pattern 5.
  • the embroidery pattern 5 is associated with the marker 4.
  • the initial size and arrangement of the embroidery pattern 5 with respect to the marker 4 are determined as shown in FIG.
  • the initial size of the embroidery pattern 5 with respect to the marker 4 is such that the size of the embroidery pattern 5 in the Y direction is 1.7 times the size of the marker 4 in the Y direction.
  • the center of the marker 4 coincides with the center of the embroidery pattern 5.
  • the initial size and arrangement of the embroidery pattern 5 with respect to the marker 4 may be different for each embroidery pattern, or may be the same.
  • the initial size and arrangement of the embroidery pattern 5 with respect to the marker 4 may be set by the user.
  • the sewing area storage area 70 stores an ID indicating the type of embroidery frame and the size of the sewing area for the marker 4 in association with each other.
  • the ID in this example is a character string combining alphabets and numbers.
  • the left and right directions and the up and down directions in FIG. 4 correspond to the X and Y directions of the embroidery coordinate system, respectively.
  • the sewable area in this example is a rectangular area extending in the X direction and the Y direction.
  • the sewable area storage area 70 further stores the position of the sewable area with respect to the embroidery frame.
  • the flash memory 124 of the apparatus 3 of this example has a sewable area storage area 138 similar to the sewable area storage area 70, and corresponds to the ID indicating the type of the embroidery frame and the size of the sewable area for the marker 4. Then remember.
  • the flash memory 124 further stores an initial arrangement of the sewable area with respect to the marker 4.
  • the size and arrangement of the sewable area 54 with respect to the graphic pattern 48 of the marker 4 in the embroidery frame with ID W001, and the size and arrangement of the sewable area 154 with respect to the graphic pattern 48 of the marker 4 in the embroidery frame with ID W002. are different from each other.
  • the size and arrangement of the sewable area for the marker 4 are different for each type of embroidery frame.
  • Outline of embroidery pattern editing process An outline of the embroidery pattern editing process that can be executed by the sewing system 100 will be described.
  • the sewing system 100 the arrangement of the embroidery pattern sewn by the sewing machine 1 can be edited by the apparatus 3.
  • the sewing machine 1 of this example receives data indicating the selected embroidery pattern and data indicating the editable range.
  • the editable range is a range in which the apparatus 3 can edit the embroidery pattern 5 indicated by the data received in S1.
  • the editable range in this example is a range having the same size and shape as the sewable area.
  • the apparatus 3 receives data indicating the embroidery pattern transmitted from the sewing machine 1.
  • the user attaches the marker 4 to an object to be sewn (embroidery pattern) to sew an embroidery pattern, and uses the device 3 to shoot a real space including the marker 4 serving as a reference for the arrangement of the embroidery pattern.
  • the apparatus 3 detects the marker 4 from the real image obtained by photographing the real space, and superimposes the pattern image representing the embroidery pattern on the basis of the received data and the range image representing the editable range based on the detected marker 4. Displayed on the display unit 135.
  • the user edits the embroidery pattern while referring to the image displayed on the display unit.
  • the apparatus 3 transmits editing data to the sewing machine 1 via the communication I / F 125.
  • the edit data is data indicating edit contents of the embroidery pattern.
  • the user When the editing of the embroidery pattern in the apparatus 3 is completed, the user holds the pasted article to be sewn in the embroidery frame selected as the use schedule without the marker 4 being peeled off.
  • the user attaches the embroidery frame holding the sewing product to the sewing machine 1.
  • the sewing machine 1 shoots the sewing object on which the marker 4 is arranged, held in the embroidery frame, and detects the marker 4 from the generated image data.
  • the sewing machine 1 corrects the embroidery data (sewing data) of the embroidery pattern based on the editing data received from the apparatus 3 with the detected marker 4 as a reference.
  • the sewing machine 1 sews an embroidery pattern according to the corrected embroidery data.
  • the main process of the device 3 will be described with reference to FIGS.
  • the embroidery pattern selected by the sewing machine 1 is edited using the AR technology, and a process for confirming the editing content is executed.
  • a process for transmitting edit data to the sewing machine 1 is further executed.
  • the main process is executed when the user operates the apparatus 3 and inputs an instruction to start an application for executing the main process.
  • the CPU 121 of the apparatus 3 detects the instruction, it reads out an embroidery pattern editing program for executing main processing stored in the program storage area of the ROM 122 into the RAM 123.
  • the CPU 121 executes the following steps in accordance with instructions included in the embroidery pattern editing program read into the RAM 123.
  • the flash memory 124 Various parameters necessary for executing the main process are stored in the flash memory 124. Various data obtained in the course of the main process is stored in the RAM 123 as appropriate.
  • the embroidery pattern 5 is selected as the embroidery pattern to be sewn in the sewing machine 1 and the embroidery frame 50 is selected as the embroidery frame to be used when sewing the embroidery pattern before the main process starts. The case will be described.
  • the CPU 121 receives data indicating the embroidery pattern 5 associated with the marker 4 and data indicating the editable range transmitted from the sewing machine 1 (S1).
  • the data indicating the embroidery pattern in this example is pattern image data of the embroidery pattern 5 selected as a pattern to be sewn by the sewing machine 1.
  • Data indicating the editable range in this example is an ID of an embroidery frame used for sewing an embroidery pattern.
  • the ID of the embroidery frame is information for specifying the type of the embroidery frame.
  • Data representing the size and shape of the editable range may be acquired as data indicating the editable range.
  • the CPU 121 outputs an instruction to start photographing to image sensor 134 (S2).
  • the image sensor 134 starts processing for capturing an image and outputting image data based on an instruction from the CPU 121.
  • the CPU 121 acquires a real image represented by the image data output from the image sensor 134 (S3).
  • the CPU 121 acquires the actual image 43 shown in FIG.
  • the actual image 43 is an image representing a state where the marker 4 is pasted around the left chest of the white T-shirt 2.
  • the CPU 121 processes the image acquired in S3 and detects the marker 4 from the actual image 43 (S4).
  • the process of S4 is a process of detecting the marker 4 associated with the embroidery pattern placed in the augmented reality space from the actual image captured by the image sensor 134 unit.
  • the detection of the marker 4 and the specification of the coordinates are performed using a known method (for example, see Japanese Patent Application Laid-Open No. 2010-246885).
  • feature points are extracted from the actual image by known image processing.
  • the extracted feature point is compared with the feature point extracted from the data representing the marker 4 stored in the marker storage area 137 of the flash memory 124, and the feature point included in the marker 4 is detected.
  • two-dimensional coordinates in the image coordinate system are calculated using, for example, Hough transform processing.
  • the feature points included in the marker 4 are, for example, end points and intersections of the character pattern 47 and four corner points of the graphic pattern 48.
  • the two-dimensional coordinates in the image coordinate system of the feature points included in the marker 4 are converted into the three-dimensional coordinates in the world coordinate system. Since the embroidery coordinate system and the world coordinate system are associated with each other, the coordinates of the embroidery coordinate system are calculated based on the three-dimensional coordinates of the world coordinate system calculated by image processing.
  • the CPU 121 determines whether or not the marker 4 is detected by the image processing of S4 (S5). When the marker 4 is not detected (S5: NO), the CPU 121 executes a process of S20 described later. When the marker 4 is not detected (S5: NO), the CPU 121 may output an instruction to display the actual image 43 acquired in S3 to the display unit 135. In addition to the actual image 43, the CPU 121 may output an instruction to display a message such as “Please shoot a marker” to the display unit 135.
  • the size and arrangement of the pattern image are determined based on the size and arrangement of the detected marker 4 in the actual image (S6).
  • the CPU 121 of this example determines the initial size of the embroidery pattern 5 with respect to the marker 4 based on the pattern image data received at S1, and the size of the embroidery pattern 5 in the Y direction is 1 which is the size of the marker 4 in the Y direction. Set the size to 7 times.
  • the CPU 121 sets the initial arrangement of the embroidery pattern 5 with respect to the marker 4 at a position where the center of the marker 4 coincides with the center of the embroidery pattern 5.
  • the CPU 121 tilts the embroidery pattern 5 in accordance with the tilt of the marker 4.
  • the CPU 121 detects the contour of the object (sewing object) on which the marker 4 is arranged based on the actual image 43 acquired in S3 (S7).
  • the outline of the object (sewing object) can be obtained by providing the actual image 43 to a known filter such as a Previt filter or a Sobel filter, for example.
  • the outline 140 (see FIG. 7) of the T-shirt 2 is detected from the actual image 43 by the process of S7.
  • the CPU 121 may acquire the contour of the object based on data drawn by the user using the touch panel 132.
  • S7 when a part of the object does not fit in the real image, the outline of the part of the object that fits in the real image is detected.
  • the contour of the target detected based on the actual image in S7 may not match the actual contour of the target.
  • the CPU 121 determines whether or not the display position of the pattern image representing the embroidery pattern 5 falls within the closed region surrounded by the contour 140 detected in S7. Judgment is made (S8).
  • a range surrounded by the closed region including the marker 4 is a range in which the sewing product is extended.
  • the sewing machine 1 of the present example can sew an embroidery pattern on a sewing product that extends to an area smaller than the sewing area by attaching the sewing product to an adhesive core or the like. For this reason, in this example, the area where the embroidery pattern 5 can be arranged is set as an area within the editable range, and if it is within the editable range, a part of the embroidery pattern is arranged outside the closed area (sewing object).
  • the CPU 121 executes a deletion process of removing the region outside the contour 140 from the pattern image (S10). Then, an instruction to display a screen in which an area outside the contour 140 generated by the deletion process is removed from the pattern image is output to the display unit 135 (S11). Thereby, a part of the pattern image 46 is displayed so as to be superimposed on the actual image 43.
  • the CPU 121 When the embroidery pattern fits within the closed region (S8: YES), the CPU 121 outputs an instruction to display the pattern image 46 and the range image 45 to the display unit 135 so as to overlap the actual image 43 (S9). Based on the instruction from the CPU 121, the display unit 135 displays the pattern image 46 representing the embroidery pattern 5 associated with the marker 4 on the actual image 43 on the basis of the marker 4 detected in S ⁇ b> 4. The display unit 135 further displays a range image 45 representing the editable range of the embroidery pattern 5 on the actual image 43 in addition to the pattern image 46 based on the detected marker 4 based on the instruction from the CPU 121. The display unit 135 displays a screen 44 and a screen 90 as shown in FIG.
  • the screen 44 includes a real image 43, a range image 45, and a pattern image 46.
  • the real image 43 is the image acquired in S3.
  • the range image 45 is an image representing the editable range of the embroidery pattern 5.
  • the range image 45 represents the editable range with a dotted rectangle. In the range image 45, the area inside the dotted line is transmitted.
  • the CPU 121 displays a range image 45 corresponding to the type of the embroidery frame indicated by the ID of the embroidery frame so as to overlap the actual image 43.
  • the CPU 121 displays the range image 45 corresponding to the ID of the embroidery frame acquired in S ⁇ b> 1 with the size and initial arrangement with respect to the marker 4.
  • the pattern image 46 is displayed in the size and arrangement (position and angle) determined in S6 based on the pattern image data acquired in S1. In the pattern image 46, an area where no stitch is formed is transmitted.
  • the screen 90 is adjacent to the screen 44 and is arranged above the screen 44 in FIG.
  • Screen 90 includes input keys 91-94.
  • the input key 91 is a key for inputting a color change instruction for changing the thread color of the embroidery pattern 5.
  • a color palette indicating thread color candidates is displayed, and the user can specify the color of the embroidery pattern 5 after the change from the colors displayed on the color palette.
  • the thread color may be changeable for each partial pattern for each of a plurality of colors.
  • the input key 92 is a key for inputting an instruction to change the size of the embroidery pattern 5.
  • an input field for inputting the sizes of the embroidery pattern 5 in the X direction and the Y direction is displayed, and the user can input the changed embroidery pattern size in the displayed input field.
  • the input key 93 is a key for inputting an instruction to rotate the embroidery pattern.
  • an input field for inputting the rotation angle of the embroidery pattern 5 is displayed, and the user can input the angle of the changed embroidery pattern in the displayed input field.
  • the rotation angle in this example, the clockwise angle of the XY plane of the embroidery coordinate system is a positive angle.
  • the input key 94 is a key for inputting an instruction to finish editing the embroidery pattern 5 represented by the pattern image 46 displayed on the display unit 135.
  • the instruction to change the position of the embroidery pattern 5 is input by selecting the position of the embroidery pattern 5 after the movement while the pattern image 46 is selected.
  • the instruction to change the position of the editable range is input by selecting the position of the editable range after the movement with the range image 45 selected.
  • the position of the editable range with respect to the marker 4 can be changed within a range where the entire marker 4 is within the editable range.
  • the CPU 121 determines whether or not an instruction to move the editable range has been input (S12). In a state where the range image 45 is selected, the CPU 121 instructs to move the editable range when the position of the editable range after the movement is selected within the range where the entire marker 4 is within the editable range. Is input (S12: YES). That is, the CPU 121 accepts a change in the display position of the range image 45 within the range where the marker 4 is arranged within the editable range indicated by the range image 45. When the operation (1) in FIG. 8 for inputting an instruction to move the editable range to the right in FIG. 8 is executed from the state of the screen 44 (S12: YES), the CPU 121 acquires the movement amount of the editable range. (S13).
  • the CPU 121 calculates the movement amount from the difference between the current position of the editable range and the position of the selected editable range after the movement.
  • the amount of movement may be represented by a direction.
  • the direction representing the amount of movement may be a direction based on the vertical and horizontal directions of the marker 4.
  • the direction representing the amount of movement may be a coordinate from a representative point (for example, a center point) of the marker 4.
  • the movement amount may be the coordinates of the current editable range calculated from the actual image and the coordinates after the movement.
  • the CPU 121 displays an instruction to display a screen reflecting the change in the position of the editable range with respect to the marker 4 based on the movement amount acquired in S13.
  • the data is output to the unit 135 (S17).
  • the CPU 121 outputs, for example, an instruction to display the screen 144 on the display unit 135 to the display unit 135 in accordance with the execution of the operation (1).
  • the screen 144 includes a real image 43, a range image 45, and a pattern image 46.
  • the range image 45 is arranged on the right side of the range image 45 on the screen 44 in accordance with the movement amount acquired in S13.
  • the CPU 121 changes the range data indicating the position of the editable range with respect to the marker 4 based on the movement amount acquired in S13, and stores the changed range data in the flash memory 124 (S18). The CPU 121 returns the process to S3. If the embroidery pattern 5 does not fall within the editable range (S16: NO), the CPU 121 notifies an error (S19). For example, the CPU 121 outputs an instruction to the display unit 135 as an error message to display “Editing in which the embroidery pattern protrudes from the editable range is invalid”. The CPU 121 discards the movement amount acquired in S13 and returns the process to S3 without reflecting the movement of the editable range.
  • the CPU 121 determines whether an instruction to edit the embroidery pattern 5 has been received (S14). In S ⁇ b> 14, the CPU 121 accepts editing for the embroidery pattern 5 via the touch panel 132. The CPU 121 edits the embroidery pattern 5 when an instruction to change the position of the embroidery pattern 5 with respect to the marker 4 is input, or when any of the input keys 91 to 93 is selected and an editing instruction is input. It is determined that the instruction has been acquired. When the CPU 121 receives an instruction to edit the embroidery pattern 5 (S14: YES), the CPU 121 acquires an instruction indicating editing contents (S15).
  • the CPU 121 causes the thread of the embroidery pattern 5 to be displayed. An instruction to change the color to red is acquired (S15).
  • the CPU 121 displays the embroidery. An instruction to move the pattern 5 from the current position to the selected position is acquired (S15). In this case, the CPU 121 may acquire the movement amount of the embroidery pattern 5 as in the process of S13.
  • the CPU 121 determines whether the display range of the pattern image is within the editable range indicated by the range image 45 displayed on the display unit 135 when the pattern image is changed according to the editing content received in S14. (S16). When the display range of the pattern image does not fall within the editable range indicated by the range image (S16: NO), the CPU 121 notifies an error (S19). For example, the CPU 121 outputs an instruction to the display unit 135 as an error message to display “Editing in which the embroidery pattern protrudes from the editable range is invalid”. The CPU 121 invalidates the editing content acquired in S15 and returns the process to S3. When editing for the embroidery pattern 5 is accepted (S14: YES), only valid editing contents are reflected on the pattern image being displayed on the display unit 135. The CPU 121 may execute processing for enabling editing of the embroidery pattern 5 within a range in which the display range of the pattern image is within the editable range in S19.
  • the CPU 121 If it is determined that the embroidery pattern 5 falls within the editable range (S16: YES), the CPU 121 outputs an instruction to update the screen to the display unit 135 based on the editing content acquired in S15 (S17). In S ⁇ b> 17, the edited content accepted in S ⁇ b> 14 is reflected in the pattern image being displayed on the display unit 135. 8 is displayed (S14: YES), the display unit 135 displays the screen 244 based on an instruction from the CPU 121 (S17).
  • the screen 244 includes a real image 43, a range image 45, and a pattern image 146.
  • the pattern image 146 is an image representing the embroidery pattern 5 in which the thread color, that is, the color of the embroidery pattern 5 is changed to red.
  • the display unit 135 displays the screen 344 based on the instruction from the CPU 121 (S17).
  • the screen 344 includes a real image 43, a range image 45, and a pattern image 146.
  • the pattern image 146 on the screen 344 is arranged in the lower right direction in FIG. 9 by the amount of movement acquired in S15 as compared to the pattern image 146 on the screen 244.
  • the display unit 135 displays the screen 444 based on the instruction from the CPU 121 (S17).
  • the screen 444 includes a real image 43, a range image 45, and a pattern image 146. Compared with the pattern image 146 on the screen 344, the pattern image 146 on the screen 444 is rotated by the rotation amount acquired in S15.
  • the display unit 135 displays the screen 544 based on an instruction from the CPU 121 (S17).
  • the screen 544 includes a real image 43, a range image 45, and a pattern image 246.
  • the pattern image 246 on the screen 544 is an image obtained by enlarging the pattern image 146 on the screen 444 with the enlargement rate acquired in S15.
  • the CPU 121 changes the editing data indicating the size and arrangement of the embroidery pattern 5 with respect to the marker 4 and the color of the embroidery pattern 5 based on the editing content acquired in S15, and stores the changed editing data in the flash memory 124 ( S18).
  • the edit data when the above operation (2) is executed is data for changing the thread color to red.
  • the edit data when the above operation (3) is executed is data indicating the movement amount of the embroidery pattern 5 with respect to the marker 4.
  • the edit data when the above-described operation (4) is executed is the rotation amount of the embroidery pattern 5 with respect to the marker 4.
  • the editing data when the above operation (5) is executed is the enlargement ratio of the embroidery pattern 5. Following the process of S18, the CPU 121 returns the process to S3.
  • the CPU 121 determines the size and arrangement of the pattern image with respect to the marker 4 and the arrangement of the range image based on the editing data and the range data stored in the flash memory 124 in S18 (S6). .
  • the pattern image 246 is displayed so as to overlap the actual image 43 with the size and arrangement determined in S6, the pattern image 246 is not arranged in the closed region surrounded by the contour 140 detected in S7. (S8: NO).
  • the CPU 121 outputs to the display unit 135 an instruction to display a screen in which a portion outside the closed region surrounded by the contour 140 detected in S7 is deleted from the pattern image (S11).
  • the display unit 135 displays a screen 644 shown in FIG.
  • the screen 644 includes a real image 43, a range image 45, and a pattern image 346.
  • the pattern image 346 is an image obtained by deleting, from the pattern image 246 on the screen 544, a portion 141 outside the closed region surrounded by the contour 140 detected in S7. After S11, the CPU 121 executes the same process of S12 as described above.
  • the CPU 121 determines whether or not the input key 94 has been selected (S20). When the input key 94 is not selected (S20: NO), the CPU 121 returns the process to S3. When the input key 94 is selected (S20: YES), the CPU 121 executes a process of outputting edit data indicating the edit content acquired in S15 (S21, S22). Specifically, the CPU 121 outputs an instruction to display a screen representing the editing data and range data stored in S18 to the display unit 135 (S21).
  • the CPU 121 When the operations (1) to (5) are executed, the CPU 121 outputs an instruction to display the color, movement amount, rotation amount, and enlargement ratio of the embroidery pattern 5 to the display unit 135 as editing data. That is, the editing data of this example includes position information and size information.
  • the position information is information representing the position of the embroidery pattern 5 with respect to the position of the marker 4.
  • the size information is information for specifying the size of the embroidery pattern 5.
  • the CPU 121 displays the amount of movement of the sewable range with respect to the marker 4 as range data.
  • the CPU 121 transmits edit data and range data to the sewing machine 1 via the communication I / F 125 (S22).
  • the CPU 121 ends the main process.
  • the CPU 121 may end the main process when receiving a notification of reception completion from the sewing machine 1 for the data transmitted in S22.
  • the main process executed by the sewing machine 1 is executed when a start instruction is input from the user after selecting the embroidery pattern to be sewn and the type of embroidery frame to be used.
  • an embroidery pattern is arranged with respect to the arrangement of the marker 4 photographed by the sewing machine 1 according to the contents edited by the apparatus 3, and a process of sewing the embroidery pattern is executed.
  • the CPU 61 of the sewing machine 1 detects the instruction, it reads a program for executing the main process stored in the program storage area of the ROM 62 into the RAM 63.
  • the CPU 61 executes the following steps in accordance with instructions included in the program read into the RAM 63.
  • the flash memory 64 Various parameters necessary for executing the main process are stored in the flash memory 64. Various data obtained in the course of the main process is stored in the RAM 63 as appropriate.
  • the embroidery pattern 5 is selected as the embroidery pattern to be sewn in the sewing machine 1 and the embroidery frame 50 is selected as the embroidery frame to be used when sewing the embroidery pattern before the main process starts. The case where the embroidery pattern 5 is edited in the apparatus 3 in accordance with the main process of the apparatus 3 will be described.
  • the CPU 61 of the sewing machine 1 transmits data indicating the embroidery pattern to be sewn and data indicating the editable range to the apparatus 3 via the communication I / F 67 (S41).
  • the data indicating the editable range in this example is data indicating the type of the embroidery frame.
  • the pattern image data and the ID of the embroidery frame 50 are transmitted to the apparatus 3.
  • the CPU 61 determines whether data is received from the device 3 (S42).
  • the data of S42 is data transmitted from the device 3 in S22 of FIG. When data is not received (S42: NO), CPU61 waits until data is received.
  • the CPU 61 corrects the embroidery data of the embroidery pattern to be sewn based on the editing data received in S42 (S43).
  • the color thread data of the sewing data is changed to red based on the edit data.
  • the coordinate data of the sewing data is corrected based on the rotation amount and enlargement ratio of the embroidery pattern indicated by the edit data.
  • the CPU 61 notifies the mounting position indicating the marker 4 with respect to the embroidery frame 50 selected as the embroidery frame to be used (S44).
  • the CPU 61 determines the attachment position based on the position of the editable range with respect to the marker 4 indicated by the range data received in S41 and the position of the sewable area 54 with respect to the embroidery frame 50 stored in the sewable area storage area 70. To do.
  • the CPU 61 displays the screen 97 of FIG. 10 on the LCD 15 and displays the position of the marker 4 with respect to the embroidery frame 50. On the screen 97, the sewing area 54 may be displayed or may not be displayed.
  • the position of the sewable area 54 with respect to the marker 4 on the screen 97 is the same as the position of the editable range with respect to the marker 4 on the screen 644 of FIG.
  • the user holds the T-shirt 2 on the embroidery frame 50 while referring to the LCD 15.
  • the marker 4 photographed by the device 3 when editing the embroidery pattern 5 is pasted on the T-shirt 2 without being peeled off.
  • the user attaches the embroidery frame 50 holding the T-shirt 2 to the sewing machine 1.
  • the CPU 61 determines whether or not the embroidery frame 50 is mounted based on the output signal from the detector 36 (S45). When the embroidery frame 50 is not detected (S45: NO), the CPU 61 stands by until the embroidery frame 50 is detected.
  • the CPU 61 acquires the type of the embroidery frame based on the output signal from the detector 36 and specifies the ID of the embroidery frame 50 (S46).
  • the CPU 121 may output an instruction to display an error message to the display unit 135 when the ID of the embroidery frame specified in S46 is different from the ID of the embroidery frame transmitted in S41.
  • the CPU 61 outputs a shooting instruction to image sensor 35 (S47). Based on the instruction from the CPU 61, the image sensor 35 captures an image within the capturing range and starts a process of outputting image data to the control unit 60.
  • the CPU 61 acquires the image data output from the image sensor 35 (S48).
  • the CPU 61 may acquire image data representing the entire sewable area, or acquire image data representing a part of the sewable area 54 including the position of the marker 4 with respect to the sewable area 54 notified in S44. Also good.
  • the CPU 61 performs image processing on the image data acquired in S48, and detects the marker 4 included in the image by the same processing as S4 in FIG. 5 (S49).
  • the CPU61 judges whether marker 4 was detected by S49 (S50). When the marker 4 is not detected (S50: NO), the CPU 61 returns the process to S44. The CPU 61 may display an error message such as “No marker was detected. Please reattach the workpiece.” When the marker 4 is detected (S50: YES), the CPU 61 arranges the embroidery pattern 5 associated with the marker 4 in accordance with the marker 4 (S51). The CPU 61 sets the position of the embroidery pattern 5 with respect to the marker 4 to a position moved from the initial position by the movement amount included in the edit data. The CPU 61 tilts the embroidery pattern 5 in accordance with the tilt of the marker 4.
  • the CPU 61 determines whether or not the embroidery pattern fits within the sewable area 54 when the embroidery pattern is arranged in accordance with the marker 4 (S52).
  • the sewable area 54 is specified based on the type of the embroidery frame acquired in S46 and the correspondence between the embroidery frame type stored in the sewable area storage area 70 and the sewable area.
  • the CPU 61 returns the process to S44.
  • the CPU 61 determines whether or not an instruction to start sewing is input by pressing the start / stop switch 29 (S53).
  • the CPU 61 When the instruction to start sewing is not input (S53: NO), the CPU 61 stands by until an instruction to start sewing is input.
  • the CPU 61 sews an embroidery pattern in accordance with the arrangement set in S51 (S54). Specifically, the CPU 61 drives the X-axis motor 83 and the Y-axis motor 84 (see FIG. 3) according to the embroidery data corrected in S43, and moves the embroidery frame 50.
  • the CPU 61 drives the needle bar vertical movement mechanism 34 by the sewing machine motor 81 in conjunction with the movement of the embroidery frame 50 and moves the needle bar 6 on which the sewing needle 7 is attached to move the needle bar 6 up and down, thereby sewing the workpiece held by the embroidery frame 50.
  • the embroidery pattern 5 is sewn on the object C (T-shirt 2).
  • the CPU 61 ends the main process.
  • the embroidery pattern 5 may be a pattern from which the portion 141 is removed or a pattern including the portion 141.
  • the sewing product C in the specific example is a T-shirt 2, and the position of the end portion (ring portion) so that the entire embroidery pattern 5 can be sewn when the sewing product is held in the embroidery frame 50. Can be changed.
  • the sewing machine 1 or the apparatus 3 may allow the user to select whether or not to sew the entire embroidery pattern 5.
  • the device 3, the image sensor 134, the display unit 135, the touch panel 132, and the CPU 121 are examples of an embroidery pattern editing device, a photographing unit, a display unit, an input unit, and a control unit, respectively.
  • the CPU 121 that executes the process of S4 is an example of the detection means of the present invention.
  • the CPU 121 that executes the process of S9 is an example of the display control means of the present invention.
  • the CPU 121 that executes the process of S14 is an example of a receiving unit of the present invention.
  • the CPU 121 that executes the processes of S17 and S10 and S11 is an example of a changing unit of the present invention.
  • the CPU 121 that executes S21 and S22 is an example of the first output means and the second output means of the present invention.
  • the CPU 121 that executes S1 is an example of the type specifying means of the present invention.
  • the CPU 121 that executes S12 is an example of a first determination unit of the present invention.
  • the CPU 121 that executes the process of S12 is an example of a range change accepting unit of the present invention.
  • the CPU 121 that executes the process of S21 is an example of a second output unit of the present invention.
  • the CPU 121 that executes the process of S8 is an example of a second determination unit of the present invention.
  • the CPU 121 that executes the process of S1 is an example of a receiving unit of the present invention.
  • the CPU 121 that executes the process of S19 is an example of the edit control means of the present invention.
  • the CPU 121 that executes the process of S7 is an example of the contour detection means of the present invention.
  • the apparatus 3 detects the marker 4 associated with the embroidery pattern arranged in the augmented reality space from the actual image that is an image of the actual space captured by the image sensor 134 (S4).
  • the marker 4 is detected from the actual image 43 (S5: YES)
  • the pattern image 46 representing the embroidery pattern 5 associated with the marker 4 is superimposed on the actual image 43 with the detected marker 4 as a reference, and the display unit 135 is displayed (S9).
  • Editing for the embroidery pattern 5 is accepted via the touch panel 132 (S12, S14).
  • editing for the embroidery pattern is received (S12: YES, S14: YES)
  • the received editing content is reflected in the pattern image 46 being displayed on the display unit 135 (S17).
  • the user can confirm the finished image of the embroidery pattern when the embroidery pattern 5 is arranged on the sewing product and the embroidery pattern 5 is edited by referring to the display unit 135.
  • the user can imagine the finish of the embroidery pattern 5 by referring to the actual image 43 and the pattern image 46.
  • the user can edit the embroidery pattern 5 while confirming the finish of the embroidery pattern 5.
  • the device 3 outputs edit data indicating the edit contents to the embroidery pattern 5 (S22).
  • the user can sew the embroidery pattern 5 with the sewing machine 1 in accordance with the editing contents of the apparatus 3 based on the output editing data.
  • the sewing machine 1 of this example transmits editing data to the sewing machine 1 via the communication I / F 125 provided in the apparatus 3, so that it is possible to save the user from inputting editing data to the sewing machine 1. Since it is possible to prevent the user from erroneously inputting edit data, the user can sew the embroidery pattern 5 with the sewing machine 1 in accordance with the edit contents of the apparatus 3.
  • the apparatus 3 receives data indicating the embroidery pattern 5 associated with the marker from the sewing machine 1 via the communication I / F 125 (S1).
  • the apparatus 3 displays the pattern image 46 on the display unit 135 based on the data received from the sewing machine 1 (S9).
  • the device 3 does not need to store data indicating the embroidery pattern 5.
  • the editing data includes position information indicating the position of the embroidery pattern 5 with respect to the position of the marker 4.
  • the user can change the position of the embroidery pattern 5 with reference to the position of the marker 4 while confirming the finish of the embroidery pattern 5.
  • the edit data includes size information for specifying the size of the embroidery pattern 5.
  • the user can change the size of the embroidery pattern 5 while confirming the finish of the embroidery pattern 5.
  • the device 3 When the device 3 receives an edit to the embroidery pattern 5, the device 3 displays the edited content on the display unit 135 (S21). The user can confirm the edited content with reference to the display unit 135. The user can sew the embroidery pattern 5 with the sewing machine 1 in accordance with the editing contents of the apparatus 3 by inputting the editing contents displayed on the display unit 135 to the sewing machine 1.
  • the apparatus 3 adds the range image 45 representing the editable range of the embroidery pattern 5 in addition to the pattern image 46 with the detected marker 4 as a reference. Overlaid on the image 43, the image is displayed on the display unit 135. The user can check on the display unit 135 whether or not the embroidery pattern 5 is arranged in the editable range. It can suppress that the embroidery pattern 5 is edited in the range beyond the editable range. The user can determine whether or not the embroidery pattern 5 can be sewn with the sewing machine 1 in accordance with the editing contents of the apparatus 3.
  • the device 3 acquires information specifying the type of the embroidery frame 50 from the sewing machine 1 via the communication I / F 125 (S1). In addition to the pattern image 46, the device 3 displays a range image 45 corresponding to the type of the embroidery frame 50 so as to overlap the actual image 43.
  • the apparatus 3 can display a range image 45 corresponding to the type of the embroidery frame 50 attached to the sewing machine 1 so as to overlap the actual image 43. The user can grasp the editable range according to the type of the embroidery frame 50 attached to the sewing machine 1 without inputting the type of the embroidery frame 50 to the apparatus 3.
  • the apparatus 3 determines whether the display range of the pattern image 46 exceeds the editable range indicated by the range image 45 displayed on the display unit 135 when the pattern image 46 is changed according to the editing content ( S8). When it is determined that the display range of the pattern image exceeds the editable range, an error is displayed on the display unit 135 (S19). When the editing of the embroidery pattern 5 is accepted, the effective editing content is reflected on the pattern image 46 being displayed on the display unit 135 (S18). The device 3 can reliably suppress the embroidery pattern 5 from being edited in a range that exceeds the editable range.
  • the change of the display position of the range image 45 is accepted within the range where the marker 4 is arranged within the editable range indicated by the range image 45 (S12).
  • the apparatus 3 reflects the change of the display position when the change of the display position of the range image 45 is received (S17).
  • the user can change the editable range for the marker 4 within a range where the marker 4 is arranged within the editable range.
  • the device 3 outputs range data representing the position of the range image 45 with respect to the position of the marker 4 (S22).
  • the user can acquire the position of the range image 45 with respect to the position of the marker 4.
  • the apparatus 3 detects the contour 140 of the object on which the marker 4 is arranged from the actual image 43 (S7).
  • the device 3 determines whether or not the display position of the pattern image 46 falls within the closed region surrounded by the detected contour 140 (S8). If it is determined that the display range of the pattern image 46 does not fit within the closed region, the region outside the contour 140 is removed from the pattern image 46 and displayed on the display unit 135 (S11). The user can appropriately grasp the finish of the embroidery pattern 5 when a part of the embroidery pattern 5 is arranged beyond the outline 140 of the object.
  • the embroidery pattern editing program and the embroidery pattern editing apparatus of the present invention are not limited to the above-described embodiments, and various changes may be made without departing from the scope of the present invention. For example, the following modifications (A) to (C) may be added as appropriate.
  • the device 3 only needs to include an imaging unit, a display unit, an input unit, and a control unit, and the configuration of the device may be changed as appropriate.
  • Each of the imaging unit, the display unit, and the input unit may be appropriately changed from a known technique.
  • the input unit may be the operation switch 131.
  • the communication I / F 125 may be omitted from the device 3.
  • the device 3 may be a portable terminal such as a smartphone provided with a communication unit, or may be a personal computer.
  • the sewing machine 1 only needs to be able to sew an embroidery pattern, and the configuration of the sewing machine 1 may be changed as appropriate.
  • the sewing machine 1 may be an industrial sewing machine or a multi-needle sewing machine.
  • the moving unit of the sewing machine 1 only needs to move the object to be photographed relative to the photographing unit in the first direction and the direction intersecting the first direction.
  • the moving unit may be, for example, a feed dog that can move the subject in the front-rear direction and the left-right direction.
  • the moving direction (first direction, second direction) of the object to be photographed by the moving unit may be changed as appropriate.
  • the processing executed by the sewing machine 1 may be changed as appropriate.
  • the embroidery pattern changing program including a command for executing the main process (see FIG. 5) of the device 3 may be stored in the storage device of the device 3 until the CPU 121 executes the program. Accordingly, each of the program acquisition method, the acquisition route, and the device storing the program may be changed as appropriate.
  • the program executed by the CPU 121 may be received from another device via a cable or wireless communication, and stored in a storage device such as a flash memory.
  • Other devices include, for example, a PC and a server connected via a network.
  • Each step of the main process (see FIG. 5) of the apparatus 3 is not limited to the example executed by the CPU 121, and part or all of the steps may be executed by another electronic device (for example, ASIC).
  • Each step of the main process may be distributed by a plurality of electronic devices (for example, a plurality of CPUs).
  • Each step of the main process can be changed in order, omitted, or added as necessary.
  • a mode in which an operating system (OS) or the like running on the apparatus 3 performs part or all of the main processing based on a command from the CPU 121 is also included in the scope of the present disclosure.
  • OS operating system
  • the following changes (C-1) to (C-6) may be appropriately added to the main process.
  • the type of data indicating the embroidery pattern acquired in S1 and the acquisition method may be changed as appropriate.
  • the device 3 may store the embroidery data in the flash memory 124 or the like.
  • the CPU 121 may acquire the ID of the embroidery pattern from the sewing machine 1 as data indicating the embroidery pattern.
  • the sewing machine 1 does not need to be activated when the main process of the apparatus 3 is started.
  • the CPU 121 may acquire sewing data of the embroidery pattern as data indicating the embroidery pattern.
  • the CPU 121 may generate pattern image data based on the sewing data.
  • the CPU 121 may acquire data indicating an embroidery pattern via a communication unit or may be acquired via a storage device such as a memory card.
  • the CPU 121 may acquire the ID or the like of the embroidery pattern input by the user as data indicating the embroidery pattern.
  • the process for displaying the range image representing the editable range in accordance with the arrangement of the markers 4 in the actual image may be omitted as appropriate.
  • the device 3 does not need to transmit information specifying the type of the embroidery frame.
  • the CPU 121 may acquire data indicating the editable range by acquiring range image data representing the range image.
  • the CPU 121 may acquire data indicating the editable range by acquiring information specifying the size of the editable range.
  • the CPU 121 may appropriately change the data acquisition method indicating the editable range.
  • the CPU 121 may acquire the ID or the like of the embroidery frame input by the user as data indicating the editable range.
  • the CPU 121 may not receive an instruction to change the position of the editable range with respect to the marker 4 in the actual image.
  • the apparatus 3 does not need to store the initial arrangement of the editable range with respect to the marker 4 for each type of embroidery frame.
  • the device 3 may match the representative point of the marker 4 with the representative point of the editable range regardless of the type of the embroidery frame.
  • the representative points in this example are, for example, center points, vertices, intersections, bending points, and the like.
  • the editable range is the same size and shape range as the sewable area set according to the type of the embroidery frame.
  • the present invention is not limited to this.
  • a sewable area common to a plurality of types of embroidery patterns may be set as an editable range.
  • the editable range may be the same size and shape as the sewable region and a different size and shape.
  • (C-3) Editable items of the embroidery pattern in the apparatus 3 may be changed as appropriate.
  • the CPU 121 may be able to edit any of the position, angle, and size of the embroidery pattern with respect to the marker 4.
  • the CPU 121 does not have to accept the thread color change.
  • the edit data may be changed according to the content of editing the embroidery pattern.
  • the edit data may not include position information.
  • the edit data may not include size information.
  • the apparatus 3 may correct the sewing data in accordance with the editing content, and may transmit the corrected sewing data to the sewing machine 1 as editing data in S22.
  • the input method of the edit contents of the embroidery pattern may be changed as appropriate.
  • the output method of edit data and range data may be changed as appropriate, and the process of outputting at least one of edit data and range data may be omitted as necessary.
  • the device 3 includes a speaker
  • at least one of the editing data and the range data may be output as audio through the speaker.
  • the CPU 121 may omit the process of S22.
  • the user can sew the embroidery pattern on the sewing product C in accordance with the editing content of the apparatus 3 by inputting the editing data and the range data displayed on the display unit 135 in S21 to the sewing machine 1.
  • the device 3 may be able to identify each of the plurality of markers.
  • the apparatus 3 may store different embroidery patterns for each marker, and the CPU 121 may specify an embroidery pattern to be sewn based on the detected marker type.
  • the apparatus 3 may store the marker type and the pattern image data of the embroidery pattern in association with each other, and display the pattern image based on the pattern image data corresponding to the marker type. In this way, the device 3 does not need to acquire data for displaying a pattern image from the sewing machine 1.
  • the device 3 may select the embroidery pattern to be sewn.
  • the CPU 121 may omit the processes of S7, S8, S10, and S11.
  • the CPU 121 may accept movement of the editable range within the closed region surrounded by the contour detected in S7.
  • the apparatus 3 may be capable of correcting the embroidery data performed by the sewing machine 1 in S43.
  • the CPU 121 may omit the process of S19.
  • the CPU 121 may execute processing for enabling the editing of the embroidery pattern within a range where the display range of the pattern image representing the embroidery pattern is within the editable range.
  • Embroidery pattern editing device 121: CPU, 122: ROM, 123: RAM, 124: flash memory, 125: communication I / F, 132: touch panel, 134: image sensor, 135: display unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Textile Engineering (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Graphics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Architecture (AREA)
  • Sewing Machines And Sewing (AREA)

Abstract

AR技術を利用して、被縫製物に対する刺繍模様の配置及び刺繍模様の編集を行った場合の刺繍模様の仕上がりイメージを確認可能な、刺繍模様編集プログラム及び刺繍模様編集装置を提供すること。刺繍模様編集装置は、撮影部と、表示部と、入力部と、制御部とを備える。制御部は、撮影部が撮影している実空間の画像である実画像から、拡張現実空間内に配置する刺繍模様に関連付けられたマーカを検出する(S4)。制御部は、マーカが検出された場合、検出されたマーカを基準として、マーカに関連付けられた刺繍模様を表す模様画像を実画像に重ねて、表示部に表示する(S9)。制御部は、入力部を介し、刺繍模様に対する編集を受け付ける(S14)。制御部は、受け付けた編集内容を表示部に表示中の模様画像に反映させる(S17)。

Description

刺繍模様編集プログラム及び刺繍模様編集装置
 本発明は、刺繍模様編集プログラム及び刺繍模様編集装置に関する。
 従来、拡張現実(augmented reality:AR)技術として、撮影された画像におけるマーカの画像に対応付けて、仮想オブジェクトを表示させる画像処理装置が知られている(例えば、特許文献1参照)。特許文献1に記載の装置は、建物の建築予定場所を撮影し、風景画像を得る。該装置は、風景画像に含まれるマーカを識別する。該装置は、識別されたマーカを基準として、建物画像を風景画像に位置合わせし、風景画像に重ねて表示する。
特開2014-115957号公報
 AR技術を利用して被縫製物に対する刺繍模様の配置を決定する技術について、十分に検討されていない。
 本発明の目的は、AR技術を利用して、被縫製物に対する刺繍模様の配置及び刺繍模様の編集を行った場合の刺繍模様の仕上がりイメージを確認可能な、刺繍模様編集プログラム及び刺繍模様編集装置を提供することを目的とする。
 本発明の第一態様に係る刺繍模様編集プログラムは、撮影部と、表示部と、入力部と、制御部とを備えた刺繍模様編集装置の前記制御部を、前記撮影部が撮影している実空間の画像である実画像から、拡張現実空間内に配置する刺繍模様に関連付けられたマーカを検出する検出手段と、前記検出手段によって前記実画像から前記マーカが検出された場合、検出された前記マーカを基準として、当該マーカに関連付けられた前記刺繍模様を表す模様画像を前記実画像に重ねて、前記表示部に表示する表示制御手段と、前記入力部を介し、前記刺繍模様に対する編集を受け付ける受付手段と、前記受付手段が前記刺繍模様に対する編集を受け付けた場合、受け付けた編集内容を前記表示部に表示中の前記模様画像に反映させる変更手段として機能させる指示を含む。
 本発明の第二態様に係る刺繍模様編集装置は、撮影部と、表示部と、入力部と、制御部とを備え、前記制御部は、前記撮影部が撮影している実空間の画像である実画像から、拡張現実空間内に配置する刺繍模様に関連付けられたマーカを検出する検出手段と、前記検出手段によって前記マーカが検出された場合、検出された前記マーカを基準として当該マーカに関連付けられた前記刺繍模様を表す模様画像を、前記撮影部が撮影している前記実画像に重ねて、前記表示部に表示する表示制御手段と、前記入力部を介し、前記刺繍模様に対する編集を受け付ける受付手段と、前記受付手段が前記刺繍模様に対する編集を受け付けた場合、受け付けた編集内容を前記表示部に表示中の前記模様画像に反映させる変更手段として機能する。
 本発明の第一態様及び第二態様によれば、ユーザは被縫製物に対する刺繍模様の配置及び刺繍模様の編集を行った場合の刺繍模様の仕上がりイメージを確認できる。ユーザは実画像と模様画像とを参照することで、刺繍模様の仕上がりをイメージできる。ユーザは、刺繍模様の仕上がりを確認しながら、刺繍模様を編集できる。
ミシン1と刺繍模様編集装置3との斜視図である。 頭部14の下端部の構成を示す説明図である。 ミシン1と刺繍模様編集装置3との電気的構成を示すブロック図である。 フラッシュメモリ64が有するマーカ記憶エリア68、刺繍データ記憶エリア69及び縫製可能領域記憶エリア70の説明図である。 刺繍模様編集装置3で実行されるメイン処理のフローチャートである。 実画像43の説明図である。 刺繍模様編集装置3の表示部135に表示された、実画像43、模様画像46、及び範囲画像45との説明図である。 操作(1)から(5)による編集と、編集内容に応じて表示部135に表示される画面44、144、244、344、444及び544との説明図である。 刺繍模様編集装置3の表示部135に表示された、画面644の説明図である。 ミシン1で実行されるメイン処理のフローチャートである。
 本開示の実施形態を、図面を参照して説明する。図1及び図2を参照して、ミシン1と刺繍模様編集装置3(以下単に「装置3」という)とを備える縫製システム100の物理的構成を説明する。図1の上下方向、右下側、左上側、左下側、右上側が、各々、ミシン1及び装置3の上下方向、前方、後方、左方、右方である。つまり、後述の液晶ディスプレイ(以下、LCDと称す)15が配置された面がミシン1の前面である。ベッド部11及びアーム部13の長手方向がミシン1の左右方向である。脚柱部12が配置されている側が右側である。脚柱部12の伸長方向がミシン1の上下方向である。本明細書は、コンピュータの処理の対象となる、画像データを単に「画像」とも呼ぶ。
〈1.ミシン1と刺繍枠50の物理的構成〉
 図1に示すように、ミシン1は、ベッド部11、脚柱部12、アーム部13、及び頭部14を備える。ベッド部11は、左右方向に延びるミシン1の土台部である。脚柱部12は、ベッド部11の右端部から上方へ立設されている。アーム部13は、ベッド部11に対向して脚柱部12の上端から左方へ延びる。頭部14は、アーム部13の左先端部に連結する部位である。
 ベッド部11は、その上面に針板21(図2参照)を備える。針板21は、後述する縫針7が挿通可能な針穴(図示略)を有する。針板21の上面には、図示しない被縫製物(例えば、加工布)が載置される。ミシン1は、針板21の下側、つまり、ベッド部11内に、図示しない送り歯、送り機構、及び釜機構等を備える。送り歯は、刺繍縫製ではない通常の縫製時に、送り機構によって駆動され、被縫製物を所定の移動量で移動させる。釜機構は、針板21の下方において上糸(図示略)を下糸(図示略)に絡ませる。
 ミシン1は移動機構40を備える。移動機構40は、後述のイメージセンサ35及び針棒6に対して刺繍枠50に保持された被縫製物C(被撮影物)を相対的に移動可能に構成されている。移動機構40は、本体部41及びキャリッジ42を備える。キャリッジ42は、枠ホルダ(図示略)、Y軸移動機構(図示略)、及びY軸モータ84(図3参照)を備える。枠ホルダは、キャリッジ42の右側面に設けられている。枠ホルダには、大きさ及び形状が異なる複数種類の刺繍枠50の中から選択された1つを着脱可能である。Y軸移動機構は、枠ホルダを前後方向(Y軸方向)に移動させる。Y軸モータ84は、Y軸移動機構を駆動する。
 本実施形態の刺繍枠50は、第一枠部材51、第二枠部材52及び取付部55を有し、且つ第一枠部材51と第二枠部材52とで被縫製物Cを保持可能である。刺繍枠50の内側に設定される縫製可能領域54は、ミシン1が縫目を形成可能な領域である。取付部55は、枠ホルダに装着される部位である。取付部55は、刺繍枠50に固有の形状を有する。刺繍枠50が移動機構40の枠ホルダに装着された場合、ミシン1は後述の検出器36(図3参照)によって検出される取付部55の形状に基づき、刺繍枠50が取り付けられたこと及び刺繍枠50の種類を特定可能である。
 本体部41は、X軸移動機構(図示略)及びX軸モータ83(図3参照)を内部に備える。X軸移動機構は、キャリッジ42を左右方向(X軸方向)に移動させる。X軸モータ83は、X軸移動機構を駆動する。移動機構40は、キャリッジ42(詳細には、枠ホルダ)に装着された刺繍枠50を、固有のXY座標系(刺繍座標系)で示される位置に移動可能である。刺繍座標系では、例えば、ミシン1の右方、左方、前方、及び後方が、Xプラス方向、Xマイナス方向、Yマイナス方向、及びYプラス方向である。
 脚柱部12の前面には、LCD15が設けられている。LCD15には、コマンド、イラスト、設定値、及びメッセージ等の様々な項目を含む画像が表示される。LCD15の前面側には、押圧された位置を検知可能なタッチパネル26が設けられている。ユーザが、指又はスタイラスペン(図示略)を用いてタッチパネル26の押圧操作を行うと、タッチパネル26によって押圧位置が検知される。ミシン1のCPU61(図3参照)は、検知された押圧位置に基づき、画像中で選択された項目を検出する。以下、ユーザによるタッチパネル26の押圧操作を、パネル操作と言う。ユーザはパネル操作によって、縫製したい模様及び実行すべきコマンド等を選択できる。脚柱部12は、内部にミシンモータ81(図3参照)を備える。
 アーム部13の上部には、開閉可能なカバー16が設けられている。図1は、カバー16が開いた状態を示す。カバー16の下方(つまり、アーム部13の内部)には、糸収容部18が設けられている。糸収容部18は、上糸が巻回された糸駒20を収容可能である。アーム部13内部には、左右方向に延びる主軸(図示略)が設けられている。主軸は、ミシンモータ81により回転駆動される。アーム部13の前面左下部には、スタート/ストップスイッチ29を含む各種スイッチが設けられている。スタート/ストップスイッチ29は、ミシン1の運転を開始又は停止させる。即ち、スタート/ストップスイッチ29は、縫製開始又は縫製停止の指示を入力するのに使用される。
 図2に示すように、頭部14には、針棒6、押え棒8、及び針棒上下動機構34等が設けられている。針棒6の下端には、縫針7が着脱可能に装着される。押え棒8の下端部には、押え足9が着脱可能に取り付けられている。針棒6は、針棒上下動機構34の下端に設けられる。針棒上下動機構34は、主軸の回転により針棒6を上下方向に駆動させる。
 頭部14の内部には、所定の撮影範囲を有するイメージセンサ35が設けられる。イメージセンサ35は、例えば、周知のCMOS(Complementary Metal Oxide Semiconductor)イメージセンサである。イメージセンサ35は、主走査方向に並ぶ複数の撮像素子37(例えば、複数のCMOS)が、副走査方向に複数列で配置された公知のエリアセンサである。本実施形態では、主走査方向及び副走査方向は各々、ミシン1のX軸方向(左右方向)及びY軸方向(前後方向)に相当する。
 イメージセンサ35は、針棒6の下方を含む領域を撮影可能に配置され、画像データを生成可能である。出力された画像データはRAM63(図3参照)の所定記憶エリアに記憶される。イメージセンサ35が生成した画像データによって表される画像の座標系(以下、「画像座標系」ともいう。)と、空間全体の座標系(以下、「ワールド座標系」ともいう。)とは、フラッシュメモリ64(図3参照)に記憶されたパラメータによって予め関連づけられている。ワールド座標系と刺繍座標系とは、フラッシュメモリ64に記憶されたパラメータによって予め関連づけられている。このためミシン1は、イメージセンサ35が生成した画像データに基づき、刺繍座標系の座標を特定する処理を実行可能である。
〈2.装置3の物理的構成〉
 図1を参照して、装置3の物理的構成について説明する。本例の装置3は、周知のタブレット型のパーソナルコンピュータ(PC)である。装置3は、上面に、操作スイッチ131、タッチパネル132、及び表示部135を備える。操作スイッチ131は、装置3に各種指示を入力する際に利用される。表示部135には、コマンド、イラスト、設定値、及びメッセージ等の様々な項目を含む画像が表示される。タッチパネル132は、表示部135の前面側に設けられ、押圧された位置を検知可能である。ユーザが、指又は専用のタッチペンを用いてタッチパネル132の押圧操作を行うと、タッチパネル132によって、押圧された位置が検知される。検知された押圧位置に基づき、画像中で選択された項目が検出される。装置3は、底面にイメージセンサ134(図3参照)を備える。イメージセンサ134は、例えば、周知のCMOSイメージセンサである。
〈3.ミシン1の電気的構成〉
 図3を参照して、縫製システム100のミシン1及び装置3の電気的構成を順に説明する。図3に示すように、ミシン1は、CPU61、ROM62、RAM63、フラッシュメモリ64、入出力インターフェイス(I/O)66、及び通信I/F67を備えている。CPU61はバス65を介して、ROM62、RAM63、フラッシュメモリ64、入出力I/O66、及び通信I/F67と接続されている。
 CPU61は、ミシン1の主制御を司り、ROM62に記憶された各種プログラムに従って、撮影及び縫製に関わる各種演算及び処理を実行する。ROM62は、図示しないが、プログラム記憶エリアを含む複数の記憶エリアを備える。プログラム記憶エリアには、ミシン1を動作させるための各種プログラム(例えば、後述のメイン処理を実行させるためのプログラム)が記憶されている。
 RAM63には、CPU61が演算処理した演算結果等を収容する記憶エリアが設けられる。フラッシュメモリ64は、図4を参照して後述するマーカ記憶エリア68、刺繍データ記憶エリア69及び縫製可能領域記憶エリア70を含む、ミシン1が各種処理を実行するための各種パラメータ等を格納する複数の記憶エリアを備える。入出力I/O66には、駆動回路71から74、タッチパネル26、スタート/ストップスイッチ29、イメージセンサ35、及び検出器36が接続されている。検出器36は、刺繍枠50が移動機構40に装着されたことを検出し、刺繍枠50の種類に応じた検出結果を出力するよう構成されている。
 駆動回路71には、ミシンモータ81が接続されている。駆動回路71は、CPU61からの制御信号に従って、ミシンモータ81を駆動する。ミシンモータ81の駆動に伴い、ミシン1の主軸(図示略)を介して針棒上下動機構34(図2参照)が駆動され、針棒6が上下動する。駆動回路72には、X軸モータ83が接続されている。駆動回路73には、Y軸モータ84が接続されている。駆動回路72及び73は、各々、CPU61からの制御信号に従って、X軸モータ83及びY軸モータ84を駆動する。X軸モータ83及びY軸モータ84の駆動に伴い、制御信号に応じた移動量だけ、移動機構40に装着されている刺繍枠50が左右方向(X軸方向)及び前後方向(Y軸方向)に移動する。駆動回路74は、CPU61からの制御信号に従ってLCD15を駆動することで、LCD15に画像を表示する。通信I/F67は、ミシン1をネットワーク10に接続するためのインターフェイスである。CPU61は、通信I/F67を介して、ネットワーク10に接続する他の機器(例えば、装置3)とデータの送受信を実行できる。
 ミシン1の動作を簡単に説明する。刺繍枠50を用いた刺繍縫製時には、刺繍枠50が移動機構40によってX軸方向及びY軸方向に移動されるのと併せて、針棒上下動機構34(図2参照)及び釜機構(図示略)が駆動される。これにより、針棒6に装着された縫針7によって、刺繍枠50に保持された被縫製物Cに対して刺繍模様が縫製される。
〈4.装置3の電気的構成〉
 図3に示すように、装置3は、CPU121、ROM122、RAM123、フラッシュメモリ124、通信I/F125、及び入出力インターフェイス128を備える。CPU121は、装置3の制御を司る。CPU121は、バス127を介して、ROM122、RAM123、フラッシュメモリ124、通信I/F125、及び入出力インターフェイス128と電気的に接続する。ROM122には、ブートプログラム及びBIOS等が記憶される。RAM123には、一時的なデータが記憶される。フラッシュメモリ124には、図4を参照して後述するマーカ記憶エリア137、及び縫製可能領域記憶エリア138を含む、各種設定値が記憶される。通信I/F125は、装置3をネットワーク10に接続するためのインターフェイスである。CPU121は、通信I/F125を介して、ネットワーク10に接続する他の機器(例えば、ミシン1)とデータの送受信を実行できる。
 入出力インターフェイス128は、操作スイッチ131、タッチパネル132、イメージセンサ134、及び表示部135と接続されている。イメージセンサ134は、所定の撮影範囲を撮影した画像データを生成する。生成された画像データはRAM123に記憶される。表示部135は、液晶ディスプレイである。
〈5.フラッシュメモリ64、124の記憶エリア〉
 図4を参照して、ミシン1のフラッシュメモリ64が備える、マーカ記憶エリア68、刺繍データ記憶エリア69及び縫製可能領域記憶エリア70について順に説明する。マーカ記憶エリア68は、縫製システム100で刺繍模様編集処理が実行される場合に利用されるマーカ4を表すデータを記憶する。マーカ4を表すデータは、イメージセンサ35、134から取得した画像からマーカ4を抽出する処理で使用される。マーカ4を表すデータは、例えば、マーカ4を表す画像データであってもよいし、マーカ4の大きさ及び形状を表す数値データであってもよい。
 本例のマーカ4は、縫製予定の刺繍模様を装置3で編集する場合の、刺繍模様5の大きさ及び配置の基準となる。本例のマーカ4は更に、ミシン1において、装置3での編集内容に従って、マーカ4を基準として刺繍模様を配置する場合の基準となる。マーカ4は、縫製予定となる刺繍模様と関連づけられている。したがってマーカ4は、装置3及びミシン1の双方で撮影され、取得される画像からマーカ4の大きさ及び位置が検出可能なマーカであればよい。本例のマーカ4は、白色の薄板状のシートと、シートの表面に黒色で描かれた線画とを含む。シートの裏面には透明の粘着剤が塗着されている。ユーザはシートを被縫製物上に貼付できる。シートの上面に描かれた線画は、文字模様47と図形模様48とを含む。文字模様47は、大文字のアルファベットのKを表す模様である。図形模様48は、正方形を表す模様である。本例のマーカを示すデータは、マーカ4の表面を表す画像データである。図4の左右方向及び上下方向は各々、刺繍座標系のX方向及びY方向に対応する。本例の装置3のフラッシュメモリ124は、マーカ記憶エリア68と同様のマーカ記憶エリア137を有し、マーカ4を表すデータを記憶する。
 刺繍データ記憶エリア69は、複数の刺繍模様の各々について、刺繍模様を示すデータである刺繍データを格納する。刺繍データは、ID、縫製データ、及び模様画像データを含む。IDは、複数の刺繍模様の各々に付与された固有の識別子である。本例のIDは、アルファベットと数字を組み合わせた文字列である。縫製データは、糸色データ毎に、座標データを含む。糸色データは、縫目を形成する糸の色を示すデータである。座標データは、刺繍模様に含まれる縫目の形成位置(針落ち位置)を刺繍座標系の座標で示すデータである。つまり、縫製データは、縫目の色毎に縫目の形成位置を示すデータを含む。模様画像データは、刺繍模様の仕上がりを表す模様画像を表すデータである。ユーザは、ミシン1を用いて刺繍模様を縫製する場合、フラッシュメモリ64に記憶された複数の刺繍データに基づき、複数の刺繍模様の中から所望の刺繍模様を選択する。刺繍データは、通信I/F67を介して接続された外部装置又はミシン1に電気的に接続されたメモリカード等の記憶機器から取得されてもよい。
 一例として説明する刺繍模様5は、大文字のアルファベットのAを表す1色の糸で縫製される刺繍模様である。図4の左右方向及び上下方向は各々、刺繍座標系のX方向及びY方向に対応する。刺繍模様5の大きさは、刺繍模様5を内包する最小矩形56の大きさによって表される。本例では、刺繍模様5は、マーカ4と関連づけられている。具体的には、刺繍模様5は、マーカ4に対する刺繍模様5の初期の大きさ及び配置が、図4のように定められている。マーカ4に対する刺繍模様5の初期の大きさは、刺繍模様5のY方向の大きさがマーカ4のY方向の大きさの1.7倍となる大きさである。マーカ4に対する刺繍模様5の初期の配置は、マーカ4の中心が、刺繍模様5の中心と一致する。マーカ4に対する刺繍模様5の初期の大きさ及び配置は、刺繍模様毎に異なっていてもよいし、同じであってもよい。マーカ4に対する刺繍模様5の初期の大きさ及び配置は、ユーザが設定可能であってもよい。
 縫製可能領域記憶エリア70は、刺繍枠の種類を示すIDと、マーカ4に対する縫製可能領域の大きさとを対応づけて記憶する。本例のIDは、アルファベットと数字を組み合わせた文字列である。図4の左右方向及び上下方向は各々、刺繍座標系のX方向及びY方向に対応する。本例の縫製可能領域は、X方向とY方向とに延びる矩形領域である。縫製可能領域記憶エリア70は更に、刺繍枠に対する縫製可能領域の位置を記憶する。本例の装置3のフラッシュメモリ124は、縫製可能領域記憶エリア70と同様の縫製可能領域記憶エリア138を有し、刺繍枠の種類を示すIDと、マーカ4に対する縫製可能領域の大きさとを対応づけて記憶する。フラッシュメモリ124は更に、マーカ4に対する縫製可能領域の初期の配置を記憶する。IDがW001の刺繍枠における、マーカ4の図形模様48に対する縫製可能領域54の大きさ及び配置と、IDがW002の刺繍枠における、マーカ4の図形模様48に対する縫製可能領域154の大きさ及び配置とは互いに異なる。本例では刺繍枠の種類毎にマーカ4に対する縫製可能領域の大きさ及び配置が互いに異なる。
〈6.刺繍模様編集処理の概要〉
 縫製システム100で実行可能な刺繍模様編集処理の概要を説明する。縫製システム100では、ミシン1で縫製される刺繍模様の配置を、装置3で編集可能である。本例のミシン1は、縫製予定の刺繍模様と、縫製時に使用予定の刺繍枠の種類とが選択されると、選択された刺繍模様を示すデータと、編集可能範囲を示すデータとを装置3に送信する。編集可能範囲は、装置3において、S1で受信されたデータが示す刺繍模様5を編集可能な範囲である。本例の編集可能範囲は、縫製可能領域と同じ大きさ及び形状の範囲である。装置3は、ミシン1から送信された刺繍模様を示すデータを受信する。ユーザは、刺繍模様を縫製する予定の被縫製物(対象物)にマーカ4を貼り付け、装置3を用いて、刺繍模様の配置の基準となるマーカ4を含む実空間を撮影する。装置3は、実空間を撮影した実画像からマーカ4を検出し、検出されたマーカ4を基準として、受信したデータに基づき刺繍模様を表す模様画像と、編集可能範囲を表す範囲画像とを重ねて表示部135に表示する。ユーザは表示部に表示された画像を参照しながら、刺繍模様の編集を行う。装置3は、刺繍模様の編集を終了する指示を受け付けると、編集データを、通信I/F125を介してミシン1に送信する。編集データは、刺繍模様の編集内容を示すデータである。装置3での刺繍模様の編集が終了した場合、ユーザは、マーカ4が剥がされることなく、貼り付けられた被縫製物を、使用予定として選択した刺繍枠に保持させる。ユーザは被縫製物を保持した刺繍枠を、ミシン1に取り付ける。ミシン1は、刺繍枠に保持された、マーカ4が配置された被縫製物を撮影し、生成された画像データからマーカ4を検出する。ミシン1は、検出されたマーカ4を基準として、装置3から受信した編集データに基づき、刺繍模様の刺繍データ(縫製データ)を補正する。ミシン1は、補正後の刺繍データに従って、刺繍模様を縫製する。
〈7.装置3で実行される処理〉
 図5から図9を参照して、装置3のメイン処理を説明する。装置3のメイン処理では、AR技術を利用して、ミシン1で選択された刺繍模様の編集を行い、編集内容を確認するための処理が実行される。装置3のメイン処理では、更に、編集データをミシン1に送信する処理が実行される。メイン処理は、ユーザが、装置3を操作して、メイン処理を実行するためのアプリケーションを起動する指示を入力した場合に実行される。装置3のCPU121は指示を検知すると、ROM122のプログラム記憶エリアに記憶されたメイン処理を実行するための刺繍模様編集プログラムを、RAM123に読み出す。CPU121は、RAM123に読み出した刺繍模様編集プログラムに含まれる指示に従って、以下のステップを実行する。メイン処理を実行するのに必要な各種パラメータは、フラッシュメモリ124に記憶されている。メイン処理の過程で得られた各種データは、適宜RAM123に記憶される。以下では説明を簡単にするために、メイン処理の開始前に、ミシン1において、縫製予定の刺繍模様として刺繍模様5が選択され、刺繍模様の縫製時に使用される刺繍枠として刺繍枠50が選択された場合について説明する。
 図5に示すメイン処理では、CPU121は、ミシン1から送信される、マーカ4と関連づけられた刺繍模様5を示すデータ、及び編集可能範囲を示すデータを受信する(S1)。本例の刺繍模様を示すデータは、ミシン1で縫製予定の模様として選択された刺繍模様5の模様画像データである。本例の編集可能範囲を示すデータは、刺繍模様の縫製に使用される刺繍枠のIDである。刺繍枠のIDは、刺繍枠の種類を特定する情報である。編集可能範囲を示すデータとして、編集可能範囲の大きさ及び形状を表すデータが取得されてもよい。
 CPU121は、イメージセンサ134に撮影を開始する指示を出力する(S2)。イメージセンサ134は、CPU121からの指示に基づき、画像を撮影し、画像データを出力する処理を開始する。CPU121は、イメージセンサ134から出力される画像データが表す実画像を取得する(S3)。CPU121は、例えば、図6の実画像43を取得する。図6に示すように、実画像43は、白色のTシャツ2の左胸部周辺にマーカ4が貼り付けられた様子を表す画像である。
 CPU121は、S3で取得された画像を処理し、実画像43からマーカ4を検出する(S4)。S4の処理は、イメージセンサ134部が撮影している実画像から、拡張現実空間内に配置する刺繍模様に関連付けられたマーカ4を検出する処理である。マーカ4の検出及び座標の特定は、公知の方法(例えば、特開2010-246885号公報参照)を用いて実行される。具体的には、実画像から公知の画像処理により特徴点が抽出される。抽出された特徴点は、フラッシュメモリ124のマーカ記憶エリア137に記憶されたマーカ4を表すデータから抽出される特徴点と比較され、マーカ4に含まれる特徴点が検出される。マーカ4に含まれる特徴点について、例えばハフ変換処理を用いて、画像座標系における二次元座標が算出される。マーカ4に含まれる特徴点は、例えば、文字模様47の端点及び交点、図形模様48の四隅の点である。その後、マーカ4に含まれる特徴点の画像座標系の二次元座標がワールド座標系の三次元座標に変換される。刺繍座標系と、ワールド座標系とは対応付けられているので、画像処理によって算出されたワールド座標系の三次元座標に基づき、刺繍座標系の座標が算出される。
 CPU121は、S4の画像処理によってマーカ4が検出されたか否かを判断する(S5)。マーカ4が検出されていない場合(S5:NO)、CPU121は、後述のS20の処理を実行する。マーカ4が検出されていない場合(S5:NO)、CPU121は、S3で取得された実画像43を表示する指示を表示部135に出力してもよい。CPU121は、実画像43に加え、「マーカを撮影してください。」等のメッセージを表示する指示を表示部135に出力してもよい。
 マーカ4が検出された場合(S5:YES)、検出されたマーカ4の実画像中の大きさ及び配置に基づき、模様画像の大きさ及び配置を決定する(S6)。本例のCPU121は、S1で受信された模様画像データに基づき、マーカ4に対する刺繍模様5の初期の大きさを、刺繍模様5のY方向の大きさがマーカ4のY方向の大きさの1.7倍となる大きさに設定する。CPU121は、マーカ4に対する刺繍模様5の初期の配置を、マーカ4の中心が、刺繍模様5の中心と一致する位置に設定する。CPU121は、マーカ4の傾きに合わせて、刺繍模様5を傾ける。
 CPU121は、S3で取得された実画像43に基づき、マーカ4が配置された対象物(被縫製物)の輪郭を検出する(S7)。対象物(被縫製物)の輪郭は、例えば、プレヴィットフィルタ、及びソーベルフィルタ等の公知のフィルタに実画像43を供することで得られる。具体例では、S7の処理によって、実画像43からTシャツ2の輪郭140(図7参照)が検出される。CPU121は、ユーザがタッチパネル132を用いて描画したデータに基づき、対象物の輪郭を取得してもよい。S7では、対象物の一部が実画像に収まっていない場合には、実画像中に収まっている部分の対象物の輪郭が検出される。つまり、S7で実画像に基づき検出される対象物の輪郭は、実際の対象物の輪郭と一致しない場合がある。
 CPU121は、S6で決定された位置に刺繍模様5が配置された場合、刺繍模様5を表す模様画像の表示位置が、S7で検出された輪郭140で囲まれる閉領域内に収まるか否かを判断する(S8)。マーカ4を内包する閉領域で囲まれる範囲が、被縫製物が延設される範囲である。本例のミシン1は、被縫製物を接着芯等に貼り付けることにより、縫製可能領域よりも小さい領域に延びる被縫製物に刺繍模様を縫製可能である。このため、本例では、刺繍模様5を配置可能な領域を、編集可能範囲内の領域とし、編集可能範囲内であれば、刺繍模様の一部が閉領域(被縫製物)外に配置されことを許容する。本例では、模様画像の表示範囲が閉領域内に収まらないと判断された場合(S8:NO)、CPU121は、輪郭140の外側となる領域を模様画像から除く削除処理を実行し(S10)、削除処理で生成された輪郭140の外側となる領域を模様画像から除かれた画面を表示する指示を表示部135に出力する(S11)。これにより、模様画像46の一部が、実画像43に重ねて表示される。
 刺繍模様が閉領域内に収まる場合(S8:YES)、CPU121は、実画像43に重ねて、模様画像46と、範囲画像45とを表示する指示を表示部135に出力する(S9)。表示部135は、CPU121からの指示に基づき、S4で検出されたマーカ4を基準として、マーカ4に関連付けられた刺繍模様5を表す模様画像46を実画像43に重ねて表示する。表示部135は更に、CPU121からの指示に基づき、検出されたマーカ4を基準として模様画像46に加え、刺繍模様5の編集可能範囲を表す範囲画像45を、実画像43に重ねて表示する。表示部135は、図7に示すように画面44及び画面90を表示する。画面44は、実画像43、範囲画像45、及び模様画像46を含む。実画像43は、S3で取得された画像である。範囲画像45は、刺繍模様5の編集可能範囲を表す画像である。範囲画像45は、編集可能範囲を点線の矩形で表す。範囲画像45において、点線の内側の領域は透過されている。CPU121は、刺繍枠のIDで示される刺繍枠の種類に応じた範囲画像45を実画像43と重ねて表示させる。CPU121は、S1で取得された刺繍枠のIDに応じた範囲画像45を、マーカ4に対する大きさ及び初期配置で表示する。模様画像46は、S1で取得された模様画像データに基づき、S6で決定された大きさ及び配置(位置及び角度)で表示される。模様画像46において、縫目が形成されていない領域は透過されている。
 画面90は、画面44と隣接し、画面44よりも図7の上方に配置される。画面90は、入力キー91から94を含む。入力キー91は、刺繍模様5の糸色を変更する色替え指示を入力するキーである。入力キー91が選択されると、糸色の候補を示す色パレットが表示され、ユーザは色パレットに表示された色の中から、変更後の刺繍模様5の色を指定できる。複数色の縫目により形成される刺繍模様の場合、複数の色毎の部分模様毎に糸色を変更可能であってもよい。入力キー92は、刺繍模様5の大きさを変更する指示を入力するキーである。入力キー92が選択されると、刺繍模様5のX方向とY方向の大きさを入力する入力欄が表示され、ユーザは表示された入力欄に変更後の刺繍模様の大きさを入力できる。
 入力キー93は刺繍模様を回転する指示を入力するキーである。入力キー93が選択されると、刺繍模様5の回転角度を入力する入力欄が表示され、ユーザは表示された入力欄に変更後の刺繍模様の角度を入力できる。本例の回転角度は、刺繍座標系のXY平面の時計回りの角度をプラスの角度とする。入力キー94は、表示部135に表示された模様画像46が表す刺繍模様5の編集を終了する指示を入力するキーである。刺繍模様5の位置を変更する指示は、模様画像46が選択された状態で、移動後の刺繍模様5の位置を選択することで入力される。編集可能範囲の位置を変更する指示は、範囲画像45が選択された状態で、移動後の編集可能範囲の位置を選択することで入力される。本例では、マーカ4に対する編集可能範囲の位置は、編集可能範囲内にマーカ4の全体が収まる範囲内で変更可能である。
 CPU121は、編集可能範囲を移動する指示が入力されたか否かを判断する(S12)。CPU121は、範囲画像45が選択された状態で、編集可能範囲内にマーカ4の全体が収まる範囲内で、移動後の編集可能範囲の位置が選択された場合に、編集可能範囲を移動する指示が入力されたと判断する(S12:YES)。つまり、CPU121は、範囲画像45で示される編集可能範囲内にマーカ4が配置される範囲内で、範囲画像45の表示位置の変更を受け付ける。画面44の状態から編集可能範囲を図8の右方に移動する指示を入力する図8の操作(1)が実行された場合(S12:YES)、CPU121は、編集可能範囲の移動量を取得する(S13)。CPU121は、現在の編集可能範囲の位置と選択された移動後の編集可能範囲の位置との差分から、移動量を算出する。移動量は、方向で表されてもよい。移動量を表す方向は、マーカ4の上下左右方向を基準とする方向でもよい。移動量を表す方向は、マーカ4の代表点(例えば、中心点)からの座標でもよい。移動量は、実画像から算出される現在の編集可能範囲の座標及び移動後の座標でもよい。CPU121は、S13で取得された移動量だけ編集可能範囲を移動する場合、刺繍模様5が編集可能範囲内に収まるか否かを判断する(S16)。刺繍模様5が編集可能範囲内に収まる場合(S16:YES)、CPU121は、S13で取得された移動量に基づき、マーカ4に対する編集可能範囲の位置の変更を反映した画面を表示する指示を表示部135に出力する(S17)。具体例では、CPU121は、例えば、操作(1)の実行に応じて表示部135に画面144を表示する指示を表示部135に出力する。画面144は、実画像43、範囲画像45、及び模様画像46を含む。範囲画像45は、S13で取得された移動量に応じて、画面44の範囲画像45に比べ、右方に配置される。
 CPU121は、S13で取得された移動量に基づき、マーカ4に対する編集可能範囲の位置を示す範囲データを変更し、変更後の範囲データをフラッシュメモリ124に格納する(S18)。CPU121は処理をS3に戻す。刺繍模様5が編集可能範囲内に収まらない場合(S16:NO)、CPU121は、エラーを報知する(S19)。CPU121は、例えば、エラーメッセージとして、「編集可能範囲から刺繍模様がはみ出る編集は無効です。」を表示する指示を表示部135に出力する。CPU121は、S13で取得された移動量を破棄し、編集可能範囲の移動を反映することなく処理をS3に戻す。
 編集可能範囲を移動する指示が入力されていない場合(S12:NO)、CPU121は、刺繍模様5を編集する指示を受け付けたかを判断する(S14)。S14では、CPU121は、タッチパネル132を介して刺繍模様5に対する編集を受け付ける。CPU121は、マーカ4に対する刺繍模様5の位置を変更する指示が入力された場合、及び入力キー91から93の何れかが選択され、編集の指示が入力された場合に、刺繍模様5を編集する指示を取得したと判断する。CPU121は、刺繍模様5を編集する指示を受け付けた場合(S14:YES)、CPU121は、編集内容を示す指示を取得する(S15)。
 図8の画面144が表示された状態で、入力キー91が選択され、色パレットから赤色が選択される操作(2)が実行された場合(S14:YES)、CPU121は、刺繍模様5の糸色を赤に変更する指示を取得する(S15)。図8の画面244が表示された状態で、模様画像146が選択され、移動後の刺繍模様5の位置が選択される操作(3)が実行された場合(S14:YES)、CPU121は、刺繍模様5を現在の位置から選択された位置まで移動する指示を取得する(S15)。この場合CPU121は、S13の処理と同様に、刺繍模様5の移動量を取得してよい。図8の画面344が表示された状態で、入力キー93が選択され、回転角度に15度が入力される操作(4)が実行された場合(S14:YES)、CPU121は、刺繍模様5の回転角度に15度を設定する指示を取得する(S15)。図8の画面444が表示された状態で、入力キー92が選択され、刺繍模様5を1.7倍の大きさに拡大する操作(5)が実行された場合(S14:YES)、CPU121は、刺繍模様5を1.7倍拡大する指示を取得する(S15)。
 CPU121は、S14で受け付けられた編集内容に応じて模様画像が変更された場合に、模様画像の表示範囲が、表示部135に表示された範囲画像45で示される編集可能範囲に収まるかを判断する(S16)。模様画像の表示範囲が範囲画像で示される編集可能範囲に収まらない場合(S16:NO)、CPU121は、エラーを報知する(S19)。CPU121は、例えば、エラーメッセージとして、「編集可能範囲から刺繍模様がはみ出る編集は無効です。」を表示する指示を表示部135に出力する。CPU121は、S15で取得された編集内容を無効にし、処理をS3に戻す。刺繍模様5に対する編集を受け付けた場合(S14:YES)、有効な編集内容のみが、表示部135に表示中の模様画像に反映される。CPU121は、S19で模様画像の表示範囲が編集可能範囲に収まる範囲内の刺繍模様5の編集を有効にする処理を実行してもよい。
 刺繍模様5が編集可能範囲内に収まると判断される場合(S16:YES)、CPU121は、S15で取得した編集内容に基づき、画面を更新する指示を表示部135に出力する(S17)。S17では、S14で受け付けられた編集内容が、表示部135に表示中の模様画像に反映される。図8の画面144が表示された状態で、前述の操作(2)が実行された場合(S14:YES)、表示部135は、CPU121からの指示に基づき、画面244を表示する(S17)。画面244は、実画像43、範囲画像45、及び模様画像146を含む。模様画像146は、糸色、つまり刺繍模様5の色が赤色に変更された刺繍模様5を表す画像である。
 図8の画面244が表示された状態で、前述の操作(3)が実行された場合(S14:YES)、表示部135は、CPU121からの指示に基づき、画面344を表示する(S17)。画面344は、実画像43、範囲画像45、及び模様画像146を含む。画面344の模様画像146は、画面244の模様画像146に比べ、S15で取得された移動量だけ図9の右下方向に配置される。
 図8の画面344が表示された状態で、前述の操作(4)が実行された場合(S14:YES)、表示部135は、CPU121からの指示に基づき、画面444を表示する(S17)。画面444は、実画像43、範囲画像45、及び模様画像146を含む。画面444の模様画像146は、画面344の模様画像146に比べ、S15で取得された回転量だけ模様画像146が回転される。
 図8の画面444が表示された状態で、前述の操作(5)が実行された場合(S14:YES)、表示部135は、CPU121からの指示に基づき、画面544を表示する(S17)。画面544は、実画像43、範囲画像45、及び模様画像246を含む。画面544の模様画像246は、画面444の模様画像146をS15で取得された拡大率で拡大された画像である。
 CPU121はS15で取得された編集内容に基づき、マーカ4に対する刺繍模様5の大きさ及び配置並びに刺繍模様5の色を示す編集データを変更し、変更後の編集データをフラッシュメモリ124に格納する(S18)。前述の操作(2)が実行された場合の編集データは、糸色を赤色に変更するデータである。前述の操作(3)が実行された場合の編集データは、マーカ4に対する刺繍模様5の移動量を示すデータである。前述の操作(4)が実行された場合の編集データは、マーカ4に対する刺繍模様5の回転量である。前述の操作(5)が実行された場合の編集データは、刺繍模様5の拡大率である。S18の処理の次にCPU121は処理をS3に戻す。
 S3に戻った後のS6では、CPU121は、S18でフラッシュメモリ124に格納された編集データ及び範囲データに基づき、マーカ4に対する模様画像の大きさ及び配置並びに範囲画像の配置を決定する(S6)。画面544では、S6で決定された大きさ及び配置で模様画像246が実画像43と重ねて表示された場合に、S7で検出された輪郭140で囲まれる閉領域内に模様画像246が配置されない(S8:NO)。このような場合、CPU121は、S7で検出された輪郭140で囲まれる閉領域外となる部分を模様画像から削除した画面を表示する指示を表示部135に出力する(S11)。表示部135は、CPU121からの指示に従い、図7の画面44が表示される部分に、図9に示す画面644を表示する。画面644は、実画像43、範囲画像45、及び模様画像346を含む。模様画像346は、画面544の模様画像246から、S7で検出された輪郭140で囲まれる閉領域外となる部分141を削除した画像である。S11の次に、CPU121は、前述と同様のS12の処理を実行する。
 刺繍模様5を編集する指示が取得されない場合(S14:NO)、CPU121は、入力キー94が選択されたか否かを判断する(S20)。入力キー94が選択されていない場合(S20:NO)、CPU121は処理をS3に戻す。入力キー94が選択された場合(S20:YES)、CPU121は、S15で取得した編集内容を示す編集データを出力する処理を実行する(S21、S22)。具体的には、CPU121は、S18で格納された編集データ及び範囲データを表す画面を表示する指示を表示部135に出力する(S21)。CPU121は、操作(1)から(5)が実行された場合、編集データとして、刺繍模様5の色、移動量、回転量、及び拡大率を表示する指示を表示部135に出力する。つまり、本例の編集データは、位置情報及び大きさ情報を含む。位置情報は、マーカ4の位置を基準とした刺繍模様5の位置を表す情報である。大きさ情報は、刺繍模様5の大きさを特定する情報である。CPU121は、範囲データとして、マーカ4に対する縫製可能範囲の移動量を表示する。CPU121は、通信I/F125を介して、編集データ及び範囲データをミシン1に送信する(S22)。CPU121は、メイン処理を終了する。CPU121は、S22で送信したデータについて、ミシン1から受信完了の通知を受信した場合に、メイン処理を終了してもよい。
〈8.ミシン1で実行される処理〉
 図10を参照して、ミシン1で実行されるメイン処理について説明する。ミシン1のメイン処理は、縫製予定の刺繍模様と、使用予定の刺繍枠の種類の選択後にユーザから開始の指示が入力された場合に実行される。メイン処理では、装置3で編集された内容に応じて、ミシン1で撮影されたマーカ4の配置に対して、刺繍模様の配置を行い、刺繍模様を縫製する処理が実行される。ミシン1のCPU61は指示を検知すると、ROM62のプログラム記憶エリアに記憶されたメイン処理を実行するためのプログラムを、RAM63に読み出す。CPU61は、RAM63に読み出したプログラムに含まれる指示に従って、以下のステップを実行する。メイン処理を実行するのに必要な各種パラメータは、フラッシュメモリ64に記憶されている。メイン処理の過程で得られた各種データは、適宜RAM63に記憶される。以下では説明を簡単にするために、メイン処理の開始前に、ミシン1において、縫製予定の刺繍模様として刺繍模様5が選択され、刺繍模様の縫製時に使用される刺繍枠として刺繍枠50が選択され、装置3において前述の装置3のメイン処理に従って刺繍模様5が編集された場合について説明する。
 図10に示すように、ミシン1のCPU61は、縫製予定の刺繍模様を示すデータと編集可能範囲を示すデータとを通信I/F67を介して装置3に送信する(S41)。本例の編集可能範囲を示すデータは、刺繍枠の種類を示すデータである。S41では、模様画像データ及び刺繍枠50のIDを装置3に送信する。CPU61は、装置3からデータを受信したか否かを判断する(S42)。S42のデータは、図5のS22において装置3から送信されるデータである。データが受信されない場合(S42:NO)、CPU61は、データが受信されるまで待機する。データが受信された場合(S42:YES)、CPU61は、S42で受信された編集データに基づき、縫製予定の刺繍模様の刺繍データを補正する(S43)。具体例では、編集データに基づき、縫製データの色糸データが赤色に変更される。縫製データの座標データが、編集データが示す刺繍模様の回転量及び拡大率に基づき補正される。
 CPU61は、使用予定の刺繍枠として選択された刺繍枠50に対するマーカ4を示した取付位置を報知する(S44)。CPU61は、S41で受信された範囲データが示すマーカ4に対する編集可能範囲の位置と、縫製可能領域記憶エリア70に記憶された刺繍枠50に対する縫製可能領域54の位置とに基づき、取付位置を決定する。CPU61は、例えば、LCD15に図10の画面97を表示し、刺繍枠50に対するマーカ4の位置を表示する。画面97において、縫製可能領域54は表示されてもいいし、表示されなくてもいい。画面97におけるマーカ4に対する縫製可能領域54の位置は、図9の画面644におけるマーカ4に対する編集可能範囲の位置と同じである。ユーザはLCD15を参照しながら、刺繍枠50にTシャツ2を保持させる。Tシャツ2には、刺繍模様5の編集時に装置3で撮影されたマーカ4が、剥がされることなく、貼り付けられている。ユーザは、Tシャツ2を保持した刺繍枠50をミシン1に装着する。CPU61は、検出器36からの出力信号に基づき刺繍枠50が装着されたか否かを判断する(S45)。刺繍枠50が検出されていない場合(S45:NO)、CPU61は、刺繍枠50が検出されるまで待機する。
 刺繍枠50が検出された場合(S45:YES)、CPU61は、検出器36からの出力信号に基づき、刺繍枠の種類を取得し、刺繍枠50のIDを特定する(S46)。CPU121は、S46で特定された刺繍枠のIDが、S41で送信した刺繍枠のIDと異なる場合に、エラーメッセージを表示する指示を表示部135に出力してもよい。
 CPU61は、イメージセンサ35に撮影指示を出力する(S47)。イメージセンサ35は、CPU61からの指示に基づき、撮影範囲内の画像を撮影し、制御部60に画像データを出力する処理を開始する。CPU61は、イメージセンサ35から出力された画像データを取得する(S48)。CPU61は、縫製可能領域全体を表す画像データを取得してもよいし、S44で報知した縫製可能領域54に対するマーカ4の位置を含む、縫製可能領域54の一部を表す画像データを取得してもよい。CPU61は、S48で取得された画像データを画像処理し、図5のS4と同様の処理により画像に含まれるマーカ4を検出する(S49)。
 CPU61は、S49によって、マーカ4が検出されたか否かを判断する(S50)。マーカ4が検出されていない場合(S50:NO)、CPU61は、処理をS44に戻す。CPU61は、「マーカが検出されませんでした。被縫製物を取り付け直してください。」等のエラーメッセージを表示してもよい。マーカ4が検出された場合(S50:YES)、CPU61は、マーカ4に合わせて、マーカ4に関連づけられた刺繍模様5を配置する(S51)。CPU61は、マーカ4に対する刺繍模様5の位置を初期位置から編集データに含まれる移動量だけ移動した位置に設定する。CPU61は、マーカ4の傾きに合わせて、刺繍模様5を傾ける。
 CPU61は、マーカ4に合わせて刺繍模様を配置した場合に、刺繍模様が縫製可能領域54内に収まるか否かを判断する(S52)。縫製可能領域54は、S46で取得した刺繍枠の種類と、縫製可能領域記憶エリア70に記憶された刺繍枠の種類と縫製可能領域との対応とに基づき特定される。CPU61は、刺繍模様5が縫製可能領域54内に収まらない場合(S52:NO)、処理をS44に戻す。刺繍模様5が縫製可能領域54内に収まる場合(S52:YES)、CPU61は、スタート/ストップスイッチ29が押下されることで、縫製開始の指示が入力されたか否かを判断する(S53)。縫製開始の指示が入力されていない場合(S53:NO)、CPU61は縫製開始の指示が入力されるまで待機する。縫製開始の指示が入力された場合(S53:YES)、CPU61は、S51で設定された配置に従って、刺繍模様を縫製する(S54)。詳細には、CPU61は、S43で補正された刺繍データに従ってX軸モータ83及びY軸モータ84(図3参照)を駆動し、刺繍枠50を移動する。CPU61は、刺繍枠50の移動と併せてミシンモータ81によって針棒上下動機構34を駆動し、縫針7が装着された針棒6を上下動させることで、刺繍枠50に保持された被縫製物C(Tシャツ2)に刺繍模様5を縫製する。刺繍模様5の縫製が終了すると、CPU61は、以上でメイン処理を終了する。図9に示す画面644の編集内容に合わせて刺繍模様5が縫製される場合、刺繍模様5は、部分141が除かれた模様であってもよいし、部分141を含む模様であってもよい。具体的には、具体例の被縫製物CはTシャツ2で有り、刺繍枠50に被縫製物を保持する際に刺繍模様5の全体を縫製できるように端部(輪の部分)の位置を変更可能である。ミシン1又は装置3は、刺繍模様5全体を縫製するか否かをユーザに選択させてもよい。
 上記縫製システム100において、装置3、イメージセンサ134、表示部135、タッチパネル132、及びCPU121は各々、本発明の刺繍模様編集装置、撮影部、表示部、入力部、及び制御部の一例である。S4の処理を実行するCPU121は、本発明の検出手段の一例である。S9の処理を実行するCPU121は、本発明の表示制御手段の一例である。S14の処理を実行するCPU121は、本発明の受付手段の一例である。S17並びにS10及びS11の処理を実行するCPU121は、本発明の変更手段の一例である。S21、S22を実行するCPU121は、本発明の第一出力手段及び第二出力手段の一例である。S1を実行するCPU121は、本発明の種類特定手段の一例である。S12を実行するCPU121は、本発明の第一判断手段の一例である。S12の処理を実行するCPU121は、本発明の範囲変更受付手段の一例である。S21の処理を実行するCPU121は、本発明の第二出力手段の一例である。S8の処理を実行するCPU121は、本発明の第二判断手段の一例である。S1の処理を実行するCPU121は、本発明の受信手段の一例である。S19の処理を実行するCPU121は、本発明の編集制御手段の一例である。S7の処理を実行するCPU121は、本発明の輪郭検出手段の一例である。
 装置3は、イメージセンサ134が撮影している実空間の画像である実画像から、拡張現実空間内に配置する刺繍模様に関連付けられたマーカ4を検出する(S4)。実画像43からマーカ4が検出された場合(S5:YES)、検出されたマーカ4を基準として、マーカ4に関連付けられた刺繍模様5を表す模様画像46を実画像43に重ねて、表示部135に表示させる(S9)。タッチパネル132を介し、刺繍模様5に対する編集を受け付ける(S12、S14)。刺繍模様に対する編集を受け付けた場合(S12:YES、S14:YES)、受け付けた編集内容を表示部135に表示中の模様画像46に反映させる(S17)。
 ユーザは、被縫製物に対する刺繍模様5の配置及び刺繍模様5の編集を行った場合の刺繍模様の仕上がりイメージを、表示部135を参照することで確認できる。ユーザは実画像43と模様画像46とを参照することで、刺繍模様5の仕上がりをイメージできる。ユーザは、刺繍模様5の仕上がりを確認しながら、刺繍模様5を編集できる。
 装置3は、刺繍模様5への編集内容を示す編集データを出力する(S22)。ユーザは、出力された編集データに基づき、装置3での編集内容に合わせて刺繍模様5をミシン1で縫製できる。本例のミシン1は編集データを、装置3が備える通信I/F125を介してミシン1に送信するので、ユーザが編集データをミシン1に入力する手間が省ける。ユーザが編集データを誤入力することを回避できるので、ユーザは装置3での編集内容に合わせて刺繍模様5をミシン1で縫製できる。
 装置3は、通信I/F125を介し、ミシン1からマーカと関連づけられた刺繍模様5を示すデータを受信する(S1)。装置3は、ミシン1から受信したデータに基づいて、模様画像46を表示部135に表示させる(S9)。装置3は、刺繍模様5を示すデータを格納する必要が無い。
 編集データは、マーカ4の位置を基準とした刺繍模様5の位置を表す位置情報を含む。ユーザは、刺繍模様5の仕上がりを確認しながら、マーカ4の位置を基準として刺繍模様5の位置を変更できる。編集データは、刺繍模様5の大きさを特定する大きさ情報を含む。ユーザは、刺繍模様5の仕上がりを確認しながら、刺繍模様5の大きさを変更できる。
 装置3は、刺繍模様5に対する編集を受け付けた場合、編集内容を表示部135に表示させる(S21)。ユーザは、編集内容を表示部135を参照して確認できる。ユーザは表示部135に表示された編集内容をミシン1に入力することで、装置3での編集内容に合わせて刺繍模様5をミシン1で縫製できる。
 装置3は、実画像43からマーカ4が検出された場合(S5:YES)、検出されたマーカ4を基準として模様画像46に加え、刺繍模様5の編集可能範囲を表す範囲画像45を、実画像43に重ねて、表示部135に表示させる。ユーザは編集可能範囲に刺繍模様5が配置されるか否かを表示部135で確認できる。刺繍模様5が編集可能範囲を超えた範囲で編集されることを抑制できる。ユーザは装置3での編集内容に合わせて刺繍模様5をミシン1で縫製可能か否かを判断できる。
 装置3は、通信I/F125を介し、ミシン1から刺繍枠50の種類を特定する情報を取得する(S1)。装置3は、模様画像46に加え、刺繍枠50の種類に応じた範囲画像45を実画像43と重ねて表示する。装置3は、ミシン1に装着される刺繍枠50の種類に応じた範囲画像45を実画像43に重ねて表示できる。ユーザは、刺繍枠50の種類を装置3に入力することなく、ミシン1に装着される刺繍枠50の種類に合わせた編集可能範囲を把握できる。
 装置3は、編集内容に応じて模様画像46が変更された場合に、模様画像46の表示範囲が、表示部135に表示された範囲画像45で示される編集可能範囲を超えるかを判断する(S8)。模様画像の表示範囲が編集可能範囲を超えると判断された場合に、表示部135にエラー表示させる(S19)。刺繍模様5に対する編集を受け付けた場合、有効な編集内容を、表示部135に表示中の模様画像46に反映させる(S18)。装置3は、刺繍模様5が編集可能範囲を超えた範囲で編集されることを確実に抑制できる。
 範囲画像45で示される編集可能範囲内にマーカ4が配置される範囲内で、範囲画像45の表示位置の変更を受け付ける(S12)。装置3は、範囲画像45の表示位置の変更が受け付けられた場合に、表示位置の変更を反映する(S17)。ユーザは、編集可能範囲内にマーカ4が配置される範囲内で、マーカ4に対する編集可能範囲を変更できる。装置3は、マーカ4の位置に対する範囲画像45の位置を表す範囲データを出力する(S22)。ユーザは、マーカ4の位置に対する範囲画像45の位置を取得できる。
 装置3は、実画像43から、マーカ4が配置された対象物の輪郭140を検出する(S7)。装置3は、模様画像46の表示位置が、検出された輪郭140で囲まれる閉領域内に収まるか否かを判断する(S8)。模様画像46の表示範囲が閉領域内に収まらないと判断された場合、輪郭140の外側となる領域を模様画像46から除いて、表示部135に表示させる(S11)。ユーザは刺繍模様5の一部が対象物の輪郭140を超えて配置される場合の、刺繍模様5の仕上がりを適切に把握できる。
 本発明の刺繍模様編集プログラム及び刺繍模様編集装置は、上記した実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更が加えられてもよい。例えば、以下の(A)から(C)までの変形が適宜加えられてもよい。
 (A)装置3は、撮影部と、表示部と、入力部と、制御部とを備えていればよく、装置の構成は適宜変更されてよい。撮影部と、表示部と、入力部との各々は、公知の技術と適宜変更されてよい。例えば、入力部は操作スイッチ131であってもよい。例えば、装置3は、通信I/F125が省略されてもよい。装置3は、通信部を備えるスマートフォン等の携帯端末でもよいし、パーソナルコンピュータであってもよい。ミシン1は、刺繍模様を縫製可能であればよく、ミシン1の構成は適宜変更されてよい。ミシン1は、工業用ミシン及び多針ミシンであってもよい。ミシン1の移動部は、被撮影物を撮影部に対して相対的に第一方向と、第一方向に交差する方向に移動できればよい。移動部は、例えば、前後方向と左右方向に被撮影物を移動可能な送り歯でもよい。移動部による被撮影物の移動方向(第一方向、第二方向)は、適宜変更されてよい。ミシン1で実行される処理は適宜変更されてよい。
 (B)装置3のメイン処理(図5参照)を実行させるための指令を含む刺繍模様変更プログラムは、CPU121がプログラムを実行するまでに、装置3の記憶機器に記憶されればよい。従って、プログラムの取得方法、取得経路及びプログラムを記憶する機器の各々は、適宜変更してもよい。CPU121が実行するプログラムは、ケーブル又は無線通信を介して、他の装置から受信し、フラッシュメモリ等の記憶装置に記憶されてもよい。他の装置は、例えば、PC、及びネットワーク網を介して接続されるサーバを含む。
 (C)装置3のメイン処理(図5参照)の各ステップは、CPU121によって実行される例に限定されず、一部又は全部が他の電子機器(例えば、ASIC)によって実行されてもよい。メイン処理の各ステップは、複数の電子機器(例えば、複数のCPU)によって分散処理されてもよい。メイン処理の各ステップは、必要に応じて順序の変更、ステップの省略、及び追加が可能である。装置3上で稼動しているオペレーティングシステム(OS)等が、CPU121からの指令に基づきメイン処理の一部又は全部を行う態様も、本開示の範囲に含まれる。例えば、メイン処理に以下の(C-1)から(C-6)の変更が適宜加えられてもよい。
 (C-1)S1で取得される刺繍模様を示すデータの種類及び取得方法は適宜変更されてよい。例えば、装置3は、刺繍データをフラッシュメモリ124等に格納してもよい。この場合、CPU121は、刺繍模様を示すデータとして、ミシン1から刺繍模様のIDを取得してもよい。装置3のメイン処理を開始する時点で、ミシン1が起動される必要は無い。CPU121は、刺繍模様を示すデータとして刺繍模様の縫製データを取得してもよい。この場合CPU121は、縫製データに基づき、模様画像データを生成してもよい。
 CPU121は、刺繍模様を示すデータを、通信部を介して取得してもよいし、メモリカード等の記憶機器を介して取得してもよい。CPU121は、ユーザが入力した刺繍模様のID等を刺繍模様を示すデータとして取得してもよい。
 (C-2)実画像中のマーカ4の配置に合わせて編集可能範囲を表す範囲画像を表示するための処理は、適宜省略されてよい。範囲画像を表示する処理が省略される場合、装置3は、刺繍枠の種類を特定する情報を送信する必要が無い。CPU121は、範囲画像を表示するための処理が実行される場合、CPU121は、範囲画像を表す範囲画像データを取得することで、編集可能範囲を示すデータを取得してもよい。CPU121は、編集可能範囲の大きさを特定する情報を取得することで、編集可能範囲を示すデータを取得してもよい。CPU121は、編集可能範囲を示すデータの取得方法は適宜変更されてよい。CPU121は、ユーザが入力した刺繍枠のID等を、編集可能範囲を示すデータとして取得してもよい。CPU121は、実画像中のマーカ4に対する編集可能範囲の位置を変更する指示を受け付けなくてもよい。装置3は、マーカ4に対する編集可能範囲の初期配置を、刺繍枠の種類毎に記憶する必要はない。この場合装置3は、例えば、刺繍枠の種類によらず、マーカ4の代表点と編集可能範囲の代表点とを一致させてもよい。本例でいう代表点は、例えば、中心点、頂点、交点、屈曲点等をいう。
 本例では、刺繍枠の種類に応じて設定される縫製可能領域と同じ大きさ及び形状の範囲を編集可能範囲としていたが、これに限定されない。例えば、複数種類の刺繍模様に共通する縫製可能領域を編集可能範囲としてもよい。このようにすれば、刺繍枠の種類を識別せずに、編集可能範囲を設定できる。編集可能範囲は、縫製可能領域と同じ大きさ及び形状の範囲と異なる大きさ及び形状であってもよい。
 (C-3)装置3における、刺繍模様の編集可能な項目は、適宜変更されてよい。例えば、CPU121は、マーカ4に対する刺繍模様の位置、角度及び大きさの何れかを編集可能としてもよい。CPU121は、糸色の変更を受け付けなくてもよい。編集データは、刺繍模様を編集する内容に応じて変更されてよい。編集データは、位置情報を含まなくてもよい。編集データは、大きさ情報を含まなくてもよい。装置3は、編集内容に応じて縫製データを補正し、S22において、補正後の縫製データを編集データとしてミシン1に送信してもよい。刺繍模様の編集内容の入力方法は適宜変更されてよい。
 (C-4)編集データ及び範囲データの出力方法は適宜変更されてよいし、編集データ及び範囲データの少なくとも何れかを出力する処理は必要に応じて省略されてもよい。装置3がスピーカを備える場合、編集データ及び範囲データの少なくとも何れかはスピーカを介して音声出力されてよい。例えばCPU121は、S22の処理を省略してもよい。この場合ユーザは、S21で表示部135に表示された編集データ及び範囲データをミシン1に入力することで、装置3での編集内容に合わせて刺繍模様を被縫製物Cに縫製できる。
 (C-5)装置3は、複数のマーカの各々を識別可能であってもよい。この場合、装置3は、マーカ毎に異なる刺繍模様を対応づけて記憶してもよく、CPU121は検出されたマーカの種類に基づいて縫製予定の刺繍模様を特定してもよい。この場合、装置3は、マーカの種類と刺繍模様の模様画像データとを対応づけて記憶し、マーカの種類に応じた模様画像データに基づき模様画像を表示してもよい。このようにすれば、装置3は、ミシン1から模様画像を表示するためのデータを取得する必要がない。装置3は、刺繍模様の模様画像データを記憶する場合、縫製予定の刺繍模様の選択を装置3で実行してもよい。
 (C-6)CPU121は、S7、S8、S10、及びS11の処理を省略してもよい。CPU121は、S7で検出された輪郭で囲まれる閉領域内で、編集可能範囲の移動を受け付けてもよい。装置3は、ミシン1がS43で行った刺繍データの補正を実行可能であってもよい。CPU121は、S19の処理を省略してもよい。CPU121は、刺繍模様を表す模様画像の表示範囲が、編集可能範囲に収まる範囲内で、刺繍模様の編集を有効にする処理を実行してもよい。
3:刺繍模様編集装置、121:CPU、122:ROM、123:RAM、124:フラッシュメモリ、125:通信I/F、132:タッチパネル、134:イメージセンサ、135:表示部
 

Claims (14)

  1.  撮影部と、表示部と、入力部と、制御部とを備えた刺繍模様編集装置の前記制御部を、
     前記撮影部が撮影している実空間の画像である実画像から、拡張現実空間内に配置する刺繍模様に関連付けられたマーカを検出する検出手段と、
     前記検出手段によって前記実画像から前記マーカが検出された場合、検出された前記マーカを基準として、当該マーカに関連付けられた前記刺繍模様を表す模様画像を前記実画像に重ねて、前記表示部に表示する表示制御手段と、
     前記入力部を介し、前記刺繍模様に対する編集を受け付ける受付手段と、
     前記受付手段が前記刺繍模様に対する編集を受け付けた場合、受け付けた編集内容を前記表示部に表示中の前記模様画像に反映させる変更手段として機能させる指示を含むことを特徴とする刺繍模様編集プログラム。
  2.  前記受付手段が受け付けた前記編集内容を示す編集データを出力する第一出力手段として機能させる指示を含むことを特徴とする請求項1に記載の刺繍模様編集プログラム。
  3.  前記第一出力手段は、前記編集データを、前記刺繍模様編集装置が備える通信部を介してミシンに送信することを特徴とする請求項2に記載の刺繍模様編集プログラム。
  4.  前記刺繍模様編集装置が備える通信部を介し、ミシンから前記マーカと関連づけられた前記刺繍模様を示すデータを受信する受信手段として前記制御部を機能させる指示を更に含み、
     前記表示制御手段は、前記ミシンから受信したデータに基づいて、前記模様画像を前記表示部に表示することを特徴とする請求項1から3の何れかに記載の刺繍模様編集プログラム。
  5.  前記編集データは、前記マーカの位置を基準とした前記刺繍模様の位置を表す位置情報を含むことを特徴とする請求項2又は3に記載の刺繍模様編集プログラム。
  6.  前記編集データは、前記刺繍模様の大きさを特定する大きさ情報を含むことを特徴とする請求項2、3、及び5の何れかに記載の刺繍模様編集プログラム。
  7.  前記第一出力手段は、前記受付手段が前記刺繍模様に対する編集を受け付けた場合、前記編集内容を前記表示部に表示させることを特徴とする請求項2、3、5、及び6の何れかに記載の刺繍模様編集プログラム。
  8.  前記表示制御手段は、前記検出手段によって前記マーカが検出された場合、検出された前記マーカを基準として前記模様画像に加え、前記刺繍模様の編集可能範囲を表す範囲画像を、前記撮影部が撮影している前記実画像に重ねて、前記表示部に表示することを特徴とする請求項1から7の何れかに記載の刺繍模様編集プログラム。
  9.  前記刺繍模様編集装置が備える通信部を介し、ミシンから刺繍枠の種類を特定する情報を取得する種類特定手段として前記制御部を機能させる指示を更に含み、
     前記表示制御手段は、前記模様画像に加え、前記種類特定手段によって取得された前記刺繍枠の種類に応じた前記範囲画像を前記実画像と重ねて表示することを特徴とする請求項8に記載の刺繍模様編集プログラム。
  10.  前記受付手段によって受け付けた前記編集内容に応じて前記模様画像が変更された場合に、当該模様画像の表示範囲が、前記表示部に表示された前記範囲画像で示される前記編集可能範囲を超えるかを判断する第一判断手段と、 前記第一判断手段によって前記表示範囲が前記編集可能範囲を超えると判断された場合に、前記表示部にエラー表示する処理、及び前記表示範囲が前記編集可能範囲に収まる範囲内の前記刺繍模様の編集を有効にする処理の少なくとも何れかを実行する編集制御手段として前記制御部を機能させる指示を更に含み、
     前記変更手段は、前記受付手段が前記刺繍模様に対する編集を受け付けた場合、有効な前記編集内容を、前記表示部に表示中の前記模様画像に反映させることを特徴とする請求項8又は9に記載の刺繍模様編集プログラム。
  11.  前記範囲画像で示される前記編集可能範囲内に前記マーカが配置される範囲内で、前記範囲画像の表示位置の変更を受け付ける範囲変更受付手段として前記制御部を機能させる指示を更に含み、
     前記変更手段は、前記範囲変更受付手段によって、前記範囲画像の表示位置の変更が受け付けられた場合に、前記表示位置の変更を反映することを特徴とする請求項8から10の何れかに記載の刺繍模様編集プログラム。
  12.  前記マーカの位置に対する前記範囲画像の位置を表す範囲データを出力する第二出力手段として前記制御部を機能させる指示を更に含むことを特徴とする請求項8から11の何れかに記載の刺繍模様編集プログラム。
  13.  前記実画像から、前記マーカが配置された対象物の輪郭を検出する輪郭検出手段と、
     前記模様画像の表示位置が、前記輪郭検出手段によって検出された前記輪郭で囲まれる閉領域内に収まるか否かを判断する第二判断手段として前記制御部を機能させる指示を更に含み、
     前記変更手段は、前記第二判断手段によって前記模様画像の表示範囲が前記閉領域内に収まらないと判断された場合、前記輪郭の外側となる領域を前記模様画像から除いて、前記表示部に表示することを特徴とする請求項1から12の何れかに記載の刺繍模様編集プログラム。
  14.  撮影部と、
     表示部と、
     入力部と、
     制御部とを備え、
     前記制御部は、
      前記撮影部が撮影している実空間の画像である実画像から、拡張現実空間内に配置する刺繍模様に関連付けられたマーカを検出する検出手段と、
      前記検出手段によって前記マーカが検出された場合、検出された前記マーカを基準として当該マーカに関連付けられた前記刺繍模様を表す模様画像を、前記撮影部が撮影している前記実画像に重ねて、前記表示部に表示する表示制御手段と、
      前記入力部を介し、前記刺繍模様に対する編集を受け付ける受付手段と、
      前記受付手段が前記刺繍模様に対する編集を受け付けた場合、受け付けた編集内容を前記表示部に表示中の前記模様画像に反映させる変更手段として機能することを特徴とする刺繍模様編集装置。
     
PCT/JP2016/075798 2015-11-27 2016-09-02 刺繍模様編集プログラム及び刺繍模様編集装置 WO2017090295A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US15/980,317 US10519581B2 (en) 2015-11-27 2018-05-15 Non-transitory computer-readable storage medium and embroidery pattern editing device
US16/689,890 US11479890B2 (en) 2015-11-27 2019-11-20 Non-transitory computer-readable storage medium, embroidery pattern displaying device, and method
US17/929,509 US11781255B2 (en) 2015-11-27 2022-09-02 Non-transitory computer-readable storage medium, embroidery pattern displaying device, and method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015232182A JP6604171B2 (ja) 2015-11-27 2015-11-27 刺繍模様編集プログラム及び刺繍模様編集装置
JP2015-232182 2015-11-27

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/980,317 Continuation US10519581B2 (en) 2015-11-27 2018-05-15 Non-transitory computer-readable storage medium and embroidery pattern editing device

Publications (1)

Publication Number Publication Date
WO2017090295A1 true WO2017090295A1 (ja) 2017-06-01

Family

ID=58764266

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/075798 WO2017090295A1 (ja) 2015-11-27 2016-09-02 刺繍模様編集プログラム及び刺繍模様編集装置

Country Status (3)

Country Link
US (3) US10519581B2 (ja)
JP (1) JP6604171B2 (ja)
WO (1) WO2017090295A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6604171B2 (ja) * 2015-11-27 2019-11-13 ブラザー工業株式会社 刺繍模様編集プログラム及び刺繍模様編集装置
JP2018068722A (ja) * 2016-10-31 2018-05-10 ブラザー工業株式会社 ミシン及び保持部材
JP2019005500A (ja) * 2017-06-28 2019-01-17 ブラザー工業株式会社 縫製システム
WO2019215738A1 (en) * 2018-05-11 2019-11-14 Resight Ltd. A system and method for determining an approximate transformation between coordinate systems
JP2020162764A (ja) * 2019-03-28 2020-10-08 ブラザー工業株式会社 ミシン及び模様の位置合わせ方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005185297A (ja) * 2003-12-24 2005-07-14 Marks:Kk 刺繍ミシン
JP2013074971A (ja) * 2011-09-30 2013-04-25 Brother Ind Ltd ミシン
JP2015048537A (ja) * 2013-08-29 2015-03-16 ブラザー工業株式会社 ミシン
JP2016135163A (ja) * 2015-01-23 2016-07-28 蛇の目ミシン工業株式会社 刺繍模様配置システム、刺繍模様配置装置、刺繍模様配置装置の刺繍模様配置方法、刺繍模様配置装置のプログラム、ミシン

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2649540B2 (ja) * 1988-04-28 1997-09-03 蛇の目ミシン工業株式会社 刺しゅうミシン
SE0501249L (sv) * 2005-06-01 2006-04-25 Vsm Group Ab Positionering av broderi
US9702071B2 (en) * 2008-10-23 2017-07-11 Zazzle Inc. Embroidery system and method
JP5315705B2 (ja) * 2008-01-24 2013-10-16 ブラザー工業株式会社 ミシン
JP5141264B2 (ja) * 2008-01-24 2013-02-13 ブラザー工業株式会社 ミシン
JP4811508B2 (ja) 2009-03-27 2011-11-09 ブラザー工業株式会社 ミシン
JP2011234959A (ja) * 2010-05-12 2011-11-24 Brother Ind Ltd ミシン
JP2014115957A (ja) 2012-12-12 2014-06-26 Hiroaki Ishihara 拡張現実型建物シミュレーション装置
JP2014155580A (ja) * 2013-02-15 2014-08-28 Brother Ind Ltd ミシン、ミシンプログラム、及びミシンシステム
JP2015104442A (ja) * 2013-11-29 2015-06-08 ブラザー工業株式会社 ミシン
JP6636694B2 (ja) * 2014-12-07 2020-01-29 蛇の目ミシン工業株式会社 ボーダー模様の模様データ作成プログラム及びミシン
JP6604171B2 (ja) * 2015-11-27 2019-11-13 ブラザー工業株式会社 刺繍模様編集プログラム及び刺繍模様編集装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005185297A (ja) * 2003-12-24 2005-07-14 Marks:Kk 刺繍ミシン
JP2013074971A (ja) * 2011-09-30 2013-04-25 Brother Ind Ltd ミシン
JP2015048537A (ja) * 2013-08-29 2015-03-16 ブラザー工業株式会社 ミシン
JP2016135163A (ja) * 2015-01-23 2016-07-28 蛇の目ミシン工業株式会社 刺繍模様配置システム、刺繍模様配置装置、刺繍模様配置装置の刺繍模様配置方法、刺繍模様配置装置のプログラム、ミシン

Also Published As

Publication number Publication date
JP2017093990A (ja) 2017-06-01
JP6604171B2 (ja) 2019-11-13
US11479890B2 (en) 2022-10-25
US20200087827A1 (en) 2020-03-19
US20220411979A1 (en) 2022-12-29
US10519581B2 (en) 2019-12-31
US20180258569A1 (en) 2018-09-13
US11781255B2 (en) 2023-10-10

Similar Documents

Publication Publication Date Title
WO2017090295A1 (ja) 刺繍模様編集プログラム及び刺繍模様編集装置
JP6587390B2 (ja) 刺繍模様配置システム、刺繍模様配置装置、刺繍模様配置装置の刺繍模様配置方法、刺繍模様配置装置のプログラム、ミシン
JP5942389B2 (ja) ミシン
JP2014042706A (ja) ミシン
JP2014064660A (ja) ミシン
JP2013099455A (ja) ミシン
JP2014155578A (ja) 撮影装置のコントローラに実行させるためのプログラム、ミシンシステム及び刺繍枠
JP2009201704A (ja) ミシン
JP2014008073A (ja) ミシン
JP2014155580A (ja) ミシン、ミシンプログラム、及びミシンシステム
JP2014155579A (ja) ミシン、ミシンプログラム、及びミシンシステム
US10597806B2 (en) Sewing machine and non-transitory computer-readable storage medium
JP6770782B2 (ja) 縫製データ生成装置、縫製データ生成方法、プログラムおよび縫製システム
US9885131B2 (en) Sewing machine
JP6986333B2 (ja) 刺繍模様連結データ生成装置、刺繍模様連結データ生成方法、プログラムおよび縫製システム
JP2015223260A (ja) ミシン
JP2015008869A (ja) ミシン、縫製プログラム、及び縫製方法
WO2017110329A1 (ja) 縫製データ生成プログラム及び縫製データ生成装置
JP2009172122A (ja) ミシン
US10017888B2 (en) Sewing data generating apparatus, sewing data generating method, recording medium for storing program, and sewing system
JP6753688B2 (ja) 刺繍範囲検出装置、刺繍範囲検出方法、プログラムおよび刺繍模様配置システム
JP2015104442A (ja) ミシン
JP2019058411A (ja) ミシン
WO2021005840A1 (ja) 縫製システム及びミシン
JP2016144605A (ja) 切断装置及びアップリケ縫製方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16868244

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16868244

Country of ref document: EP

Kind code of ref document: A1