JP2011005180A - Sewing machine - Google Patents

Sewing machine Download PDF

Info

Publication number
JP2011005180A
JP2011005180A JP2009154023A JP2009154023A JP2011005180A JP 2011005180 A JP2011005180 A JP 2011005180A JP 2009154023 A JP2009154023 A JP 2009154023A JP 2009154023 A JP2009154023 A JP 2009154023A JP 2011005180 A JP2011005180 A JP 2011005180A
Authority
JP
Japan
Prior art keywords
coordinate system
image
coordinates
sewing machine
point
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP2009154023A
Other languages
Japanese (ja)
Inventor
Hitoshi Higashikura
仁 東倉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2009154023A priority Critical patent/JP2011005180A/en
Publication of JP2011005180A publication Critical patent/JP2011005180A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Sewing Machines And Sewing (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a sewing machine capable of correlating exactly the coordinates of moving means for an embroidery frame with the coordinates of imaging means.SOLUTION: Parameter calculation processing is executed while an object to be worked is held by a holding member. A working data is acquired in the parameter calculation processing (S10). The holding member is moved according to the working data (S30), and a plurality of feature points are formed in the object to be worked which is held by the holding member (S40). The object to be worked which is formed with the plurality of feature points is imaged therein (S70). The plurality of feature points is extracted from an image of the object to be worked, and feature point coordinates are calculated (S80). Coordinates acquired in S85 is correlated with the feature point coordinates (S90). A parameter for correlating the coordinates of the moving means with the coordinates of the imaging means is calculated based on a correlation result (S100).

Description

本発明は、ミシンに関するものであり、詳細には、撮像手段を備えたミシンに関するものである。   The present invention relates to a sewing machine, and more particularly, to a sewing machine including an imaging unit.

従来、撮像手段を備えたミシンが種々提案されている。例えば、特許文献1に記載のミシンは、撮像手段によって撮影された画像に基づき、基線上に基線の種類に応じた縫目が形成される。具体的には、加工布に描かれた基線が撮像手段によって撮像される。得られた撮像画像が解析され、加工布上の基線の位置と種類とが特定される。特定された基線の位置に刺繍枠が移動され、基線の種類に応じた縫目が基線の位置に形成される。   Conventionally, various sewing machines provided with an imaging means have been proposed. For example, in the sewing machine described in Patent Document 1, a stitch corresponding to the type of the base line is formed on the base line based on the image photographed by the imaging unit. Specifically, the base line drawn on the work cloth is imaged by the imaging means. The obtained captured image is analyzed, and the position and type of the base line on the work cloth are specified. The embroidery frame is moved to the specified base line position, and a stitch corresponding to the type of the base line is formed at the base line position.

一般的に、カメラで撮像された画像が解析され、撮像対象物の位置(座標)が取得される装置では、画像が解析される前に、カメラキャリブレーションが行われる。カメラキャリブレーションとは、内部パラメータと、外部パラメータとを算出することである。内部パラメータは、焦点距離や主点座標等のカメラ自身の構成によって決定される。外部パラメータは、カメラの撮像方向等のカメラの設置状態によって決定される。カメラキャリブレーションによって算出されたパラメータを用いることによって、三次元座標上の点(現実の撮像対象物)が二次元座標(撮像画像)上に投影されるべき位置を知ることができる。カメラキャリブレーション(パラメータの算出)の方法については、様々な研究が行われており、例えば、特許文献2に記載の視覚センサの自動キャリブレーション装置が提案されている。上記特許文献1においても、加工布に描かれた基線の位置や太さを正確に特定するためには、撮像手段のキャリブレーションが不可欠である。   In general, in an apparatus in which an image captured by a camera is analyzed and the position (coordinates) of the imaging target is acquired, camera calibration is performed before the image is analyzed. Camera calibration is to calculate internal parameters and external parameters. Internal parameters are determined by the configuration of the camera itself, such as focal length and principal point coordinates. The external parameter is determined by the installation state of the camera such as the imaging direction of the camera. By using the parameters calculated by the camera calibration, it is possible to know the position where the point on the three-dimensional coordinate (the actual imaging target) should be projected on the two-dimensional coordinate (the captured image). Various studies have been conducted on camera calibration (parameter calculation) methods. For example, an automatic calibration device for a visual sensor described in Patent Document 2 has been proposed. Also in Patent Document 1, calibration of the imaging means is indispensable in order to accurately specify the position and thickness of the base line drawn on the work cloth.

特開2007−289653号公報JP 2007-289653 A 特許第3138080号公報Japanese Patent No. 3138080

しかしながら、従来のミシンでは、撮像手段のキャリブレーションが的確に行われた場合であっても、刺繍枠を移動させる移動手段の座標系と、撮像手段の座標系との対応が的確にとれない場合がある。例えば、刺繍枠の装着不備等によって、移動手段の座標系の二次元座標軸が、撮像手段の座標系の二次元座標軸に対し、傾いてしまう場合がある。このような場合には、例えば、特許文献1に記載のミシンのように、撮像手段によって撮像された画像から、加工布に描かれた基線の位置が特定されても、基線が描かれた位置に刺繍枠を移動させることができない。したがって、ユーザがミシンを使用して、撮像手段で撮像された画像から特定した位置に縫目を形成させる場合に、所望の縫製結果が得られないという問題点があった。   However, with the conventional sewing machine, even when the calibration of the imaging unit is performed accurately, the correspondence between the coordinate system of the moving unit that moves the embroidery frame and the coordinate system of the imaging unit cannot be accurately performed. There is. For example, there may be a case where the two-dimensional coordinate axis of the coordinate system of the moving unit is inclined with respect to the two-dimensional coordinate axis of the coordinate system of the imaging unit due to imperfect mounting of the embroidery frame. In such a case, for example, the position where the base line is drawn even if the position of the base line drawn on the work cloth is specified from the image picked up by the image pickup unit like the sewing machine described in Patent Document 1. The embroidery frame cannot be moved. Therefore, there is a problem in that a desired sewing result cannot be obtained when the user uses a sewing machine to form a stitch at a position specified from an image picked up by the image pickup means.

本発明は、上述の問題点を解決するためになされたものであり、刺繍枠の移動手段の座標系と、撮像手段の座標系との対応が的確にとれたミシンを提供することを目的とする。   The present invention has been made to solve the above-described problems, and an object thereof is to provide a sewing machine in which the correspondence between the coordinate system of the embroidery frame moving means and the coordinate system of the imaging means can be accurately taken. To do.

請求項1に係るミシンは、被加工物を保持する保持部材と、前記保持部材を移動させる移動手段と、前記被加工物に複数の特徴点を形成することを指示する加工データを取得する加工データ取得手段と、前記加工データ取得手段によって取得された前記加工データに従って、前記移動手段によって前記保持部材を移動させ、前記保持部材に保持された前記被加工物に前記複数の特徴点を形成させる特徴点形成手段と、ミシンベッド上を撮像可能な位置に配置されるとともに、前記複数の特徴点が形成された前記被加工物を撮像する撮像手段と、前記撮像手段によって撮像された前記被加工物の画像から、前記複数の特徴点を抽出し、抽出された前記複数の特徴点のそれぞれについて、二次元座標を特徴点座標として算出する特徴点座標算出手段と、予め計測された前記複数の特徴点の三次元座標である基準座標を取得する基準座標取得手段と、前記基準座標取得手段によって取得された前記基準座標と、前記特徴点座標算出手段によって算出された前記特徴点座標とを対応付ける対応付け手段と、前記対応付け手段による対応付けの結果に基づいて、前記移動手段の座標系と前記撮像手段の座標系とを対応づけるパラメータを算出するパラメータ算出手段とを備えている。   The sewing machine according to claim 1 acquires a processing member that holds a workpiece, a moving unit that moves the holding member, and machining data that instructs to form a plurality of feature points on the workpiece. According to the processing data acquired by the data acquisition means and the processing data acquisition means, the moving member moves the holding member to form the plurality of feature points on the workpiece held by the holding member. A feature point forming unit, an imaging unit that is disposed at a position where the image can be captured on the sewing bed, and that images the workpiece on which the plurality of feature points are formed, and the workpiece that is imaged by the imaging unit A feature point coordinate calculator that extracts the plurality of feature points from an image of an object and calculates two-dimensional coordinates as feature point coordinates for each of the extracted feature points. A reference coordinate acquisition unit that acquires reference coordinates that are three-dimensional coordinates of the plurality of feature points measured in advance, the reference coordinates acquired by the reference coordinate acquisition unit, and the feature point coordinate calculation unit Parameter calculating means for associating the coordinated feature point coordinates with each other and a parameter for associating the coordinate system of the moving means and the coordinate system of the imaging means based on the result of the association by the associating means Means.

請求項2に係るミシンは、請求項1に記載の発明の構成に加え、下端部に縫針を装着した針棒を、前記加工データに従って上下方向に駆動させる針棒駆動手段を備え、前記特徴点形成手段は、前記加工データ取得手段によって取得された前記加工データに従って、前記移動手段によって前記保持部材を移動させるとともに、前記針棒駆動手段を駆動させて、前記縫針によって前記被加工物に複数の貫通孔を前記複数の特徴点として形成させる。   The sewing machine according to claim 2 includes needle bar driving means for driving a needle bar having a sewing needle attached to a lower end portion thereof in the vertical direction according to the processing data, in addition to the configuration of the invention according to claim 1, The forming means moves the holding member by the moving means and drives the needle bar driving means according to the machining data acquired by the machining data acquiring means, and drives the needle bar driving means to form a plurality of workpieces on the workpiece by the sewing needle. A through hole is formed as the plurality of feature points.

請求項3に係るミシンは、請求項1又は2に記載の発明の構成に加え、前記被加工物は白い紙である。   In the sewing machine according to claim 3, in addition to the configuration of the invention according to claim 1 or 2, the workpiece is white paper.

請求項4に係るミシンは、請求項1から3のいずれかに記載の発明の構成に加え、前記複数の特徴点は、前記撮像手段の撮像可能範囲内の前記被加工物に規則的に配列される。   A sewing machine according to a fourth aspect of the present invention is the sewing machine according to any one of the first to third aspects, wherein the plurality of feature points are regularly arranged on the workpiece within an imageable range of the imaging means. Is done.

請求項5に係るミシンは、請求項1から4のいずれかに記載の発明の構成に加え、前記パラメータ算出手段によって算出された前記パラメータを用いて、前記撮像手段によって撮像された画像を加工する画像加工手段を備えている。   A sewing machine according to a fifth aspect, in addition to the configuration of the invention according to any one of the first to fourth aspects, processes an image picked up by the image pickup means using the parameter calculated by the parameter calculation means. Image processing means is provided.

請求項6に係るミシンは、請求項1から5のいずれかに記載の発明の構成に加え、前記パラメータ算出手段によって算出された前記パラメータを用いて、前記撮像手段によって撮像された画像上の三次元座標を算出する三次元座標算出手段を備えている。   A sewing machine according to claim 6 is a tertiary on an image captured by the imaging unit using the parameter calculated by the parameter calculation unit in addition to the configuration of the invention according to any one of claims 1 to 5. Three-dimensional coordinate calculation means for calculating original coordinates is provided.

請求項7に係るミシンは、請求項1から6のいずれかに記載の発明の構成に加え、前記パラメータ算出手段によって算出された前記パラメータを用いて、三次元座標で示された点の座標を二次元座標系に投影した点の座標を算出する二次元座標算出手段を備えている。   According to a seventh aspect of the present invention, in addition to the configuration of the invention according to any one of the first to sixth aspects, the sewing machine according to the seventh aspect uses the parameter calculated by the parameter calculating means to calculate the coordinates of the point indicated by the three-dimensional coordinates. Two-dimensional coordinate calculation means for calculating the coordinates of the points projected on the two-dimensional coordinate system is provided.

請求項1に係るミシンでは、移動手段の座標系と撮像手段の座標系とを対応づけるパラメータを算出する。得られたパラメータを用いて、移動手段の座標系と撮像手段の座標系とを対応づけることによって、例えば、撮像手段によって撮像された画像(以下、「撮像画像」と言う。)に基づき特定した位置に縫目が形成されるように、保持部材を移動させることができる。したがって、ユーザがミシンを使用して、保持部材内の指示した位置に縫目を形成させたい場合に、所望の縫製結果が得られる。また、パラメータを算出するための特徴点は、特徴点形成手段によって被加工物に形成される。したがって、パラメータの算出に際しては、特徴点形成手段と被加工物とを用意するのみでよく、簡単にパラメータを算出することができる。   In the sewing machine according to the first aspect, a parameter for associating the coordinate system of the moving unit and the coordinate system of the imaging unit is calculated. By using the obtained parameters, the coordinate system of the moving unit and the coordinate system of the imaging unit are associated with each other, for example, based on an image captured by the imaging unit (hereinafter referred to as “captured image”). The holding member can be moved so that the seam is formed at the position. Therefore, when the user wants to form a stitch at the designated position in the holding member using the sewing machine, a desired sewing result can be obtained. Further, the feature points for calculating the parameters are formed on the workpiece by the feature point forming means. Therefore, when calculating the parameters, it is only necessary to prepare the feature point forming means and the workpiece, and the parameters can be calculated easily.

また、請求項2に係るミシンでは、縫針によって被加工物に形成した貫通孔を特徴点とする。即ち、特徴点は、移動手段によって保持部材が移動された位置における針落ち点を示す。このため、請求項1に記載の発明の効果に加え、移動手段の座標系と撮像手段の座標系とを対応づけるパラメータを精度良く算出することができる。また、パラメータを算出するための特徴点は、縫針によって形成される。したがって、パラメータの算出に際しては、ユーザは被加工物を用意するのみでよく、ミシンにパラメータを算出させるための準備が簡単である。   Further, in the sewing machine according to claim 2, the through hole formed in the workpiece by the sewing needle is a feature point. That is, the feature point indicates a needle drop point at a position where the holding member is moved by the moving unit. For this reason, in addition to the effect of the invention described in claim 1, it is possible to accurately calculate a parameter for associating the coordinate system of the moving means and the coordinate system of the imaging means. The feature points for calculating the parameters are formed by sewing needles. Therefore, when calculating the parameters, the user only needs to prepare the workpiece, and the preparation for causing the sewing machine to calculate the parameters is simple.

また、請求項3に係るミシンでは、被加工物が白い紙であるので、特徴点とのコントラストをとりやすい。したがって、請求項3に係るミシンは、請求項1又は2に記載の発明の効果に加え、被加工物に形成された特徴点を精度良く抽出することができる。   In the sewing machine according to the third aspect, since the workpiece is white paper, it is easy to obtain contrast with the feature points. Therefore, the sewing machine according to claim 3 can accurately extract the feature points formed on the workpiece in addition to the effects of the invention according to claim 1 or 2.

また、請求項4に係るミシンは、請求項1から3のいずれかに記載の発明の効果に加え、被加工物に規則的な位置に形成された特徴点から、移動手段の座標系と撮像手段の座標系とを対応づけるパラメータを精度良く算出することができる。   Further, in addition to the effect of the invention according to any one of claims 1 to 3, the sewing machine according to a fourth aspect includes a coordinate system of the moving means and an imaging from feature points formed at regular positions on the workpiece. A parameter for associating the coordinate system of the means can be calculated with high accuracy.

また、請求項5に係るミシンは、移動手段の座標系と撮像手段の座標系とを対応づけるパラメータを用いて、撮像画像を加工する。したがって、請求項5に係るミシンは、請求項1から4のいずれかに記載の発明の効果に加え、移動手段の座標系と撮像手段の座標系との対応がとれた画像を作成させることができる。これによって、請求項5に係るミシンは、例えば、加工布等の被加工物を撮像した撮像画像に基づき特定された位置に、縫目を形成させるための保持部材の移動量を容易に決定させることができる。   The sewing machine according to a fifth aspect processes a captured image using a parameter that associates the coordinate system of the moving unit with the coordinate system of the imaging unit. Therefore, in addition to the effect of the invention according to any one of claims 1 to 4, the sewing machine according to claim 5 can generate an image in which the coordinate system of the moving means and the coordinate system of the imaging means are taken. it can. Thus, for example, the sewing machine according to claim 5 easily determines the amount of movement of the holding member for forming the seam at a position specified based on a captured image obtained by imaging a workpiece such as a work cloth. be able to.

また、請求項6に係るミシンは、請求項1から5のいずれかに記載の発明の効果に加え、撮像手段に固有の特性や撮像手段の設置状態の影響を排除して、撮像画像上の点を三次元座標系の点に変換させることができる。請求項6に係るミシンは、取得された三次元座標を用いて、例えば、撮像画像の点の位置を把握したり、撮像画像の2点間の距離を把握したりすることができる。   In addition to the effect of the invention according to any one of claims 1 to 5, the sewing machine according to claim 6 eliminates the characteristic of the image pickup means and the influence of the installation state of the image pickup means. A point can be converted to a point in a three-dimensional coordinate system. For example, the sewing machine according to claim 6 can grasp the position of the point of the captured image or the distance between the two points of the captured image using the acquired three-dimensional coordinates.

また、請求項7に係るミシンは、請求項1から6のいずれかに記載の発明の効果に加え、撮像手段に固有の特性や撮像手段の設置状態の影響を排除して、三次元座標系の点を二次元座標系の座標に変換させることができる。請求項7に係るミシンは、取得された二次元座標を用いて、例えば、撮像画像上の所定の領域を特定したり、撮像画像上の所定の点を特定したりすることができる。     In addition to the effect of the invention according to any one of claims 1 to 6, the sewing machine according to claim 7 eliminates the characteristic of the image pickup means and the influence of the installation state of the image pickup means. Can be converted into coordinates in a two-dimensional coordinate system. The sewing machine according to claim 7 can specify, for example, a predetermined region on the captured image or a predetermined point on the captured image using the acquired two-dimensional coordinates.

ミシン1の斜視図である。1 is a perspective view of a sewing machine 1. FIG. 縫針7の近傍をミシン1の左側からみた図である。FIG. 3 is a view of the vicinity of the sewing needle 7 as viewed from the left side of the sewing machine 1. 刺繍枠32に平面図である。FIG. 4 is a plan view of the embroidery frame 32. ミシン1の電気的構成を示すブロック図である。2 is a block diagram showing an electrical configuration of the sewing machine 1. FIG. RAM63の記憶エリアの説明図である。4 is an explanatory diagram of a storage area of a RAM 63. FIG. 二次元座標記憶エリア632の説明図である。It is explanatory drawing of the two-dimensional coordinate storage area. EEPROM64の記憶エリアの説明図である。3 is an explanatory diagram of a storage area of an EEPROM 64. FIG. 基準座標記憶エリア641の説明図である。It is explanatory drawing of the reference coordinate storage area. 加工データが指示する特徴点の座標の説明図である。It is explanatory drawing of the coordinate of the feature point which process data instruct | indicates. パラメータ算出処理のフローチャートである。It is a flowchart of a parameter calculation process. 特徴点301が形成された被加工物34の平面図である。It is a top view of the to-be-processed object 34 in which the feature point 301 was formed. 刺繍模様形成処理のフローチャートである。It is a flowchart of an embroidery pattern formation process. 図12の刺繍模様形成処理で実行される、開始点取得処理のフローチャートである。13 is a flowchart of start point acquisition processing executed in the embroidery pattern formation processing of FIG. 12. 図13の開始点取得処理で実行される、二次元座標算出処理のフローチャートである。It is a flowchart of the two-dimensional coordinate calculation process performed by the starting point acquisition process of FIG. 図13の開始点取得処理で実行される、三次元座標算出処理のフローチャートである。It is a flowchart of the three-dimensional coordinate calculation process performed by the starting point acquisition process of FIG. 変形例の開始点取得処理のフローチャートである。It is a flowchart of the starting point acquisition process of a modification. 図16の開始点取得処理で実行される、画像加工処理のフローチャートである。It is a flowchart of the image processing process performed by the starting point acquisition process of FIG.

以下、本発明の第1及び第2の実施形態について、図面を参照して順に説明する。なお、これらの図面は、本発明が採用しうる技術的特徴を説明するために用いられるものであり、記載されている装置の構成、各種処理のフローチャート等は、それのみに限定する趣旨ではなく、単なる説明例である。   Hereinafter, first and second embodiments of the present invention will be described in order with reference to the drawings. These drawings are used for explaining the technical features that can be adopted by the present invention, and the configuration of the apparatus and the flowcharts of various processes described are not intended to be limited to the drawings. This is just an illustrative example.

まず、図1から図4を参照して、第1及び第2の実施形態に共通するミシン1の物理的構成及び電気的構成について説明する。図1において、矢印Xの方向を右方向、その反対方向を左方向、矢印Yの方向を前方向、その反対方向を後方向と言う。図1に示すように、ミシン1は、ミシンベッド2と、脚柱部3と、アーム部4とを備えている。ミシンベッド2は、左右方向に長く伸びている。脚柱部3は、ミシンベッド2の右端部から上方へ立設されている。アーム部4は、脚柱部3の上端から左方へ延びている。アーム部4の左先端部には、頭部5がある。脚柱部3の正面には、表面にタッチパネル16を備えた液晶ディスプレイ(以下、「LCD」と言う。)10が設けられている。LCD10には、縫製模様や縫製条件の入力キー等が表示される。LCD10に表示された入力キー等の位置に対応したタッチパネル16の箇所を、指や専用のタッチペンを用いて押圧操作すること(以下、この操作を「パネル操作」と言う。)によって、ユーザは縫製模様や縫製条件等を選択できる。   First, a physical configuration and an electrical configuration of the sewing machine 1 common to the first and second embodiments will be described with reference to FIGS. 1 to 4. In FIG. 1, the direction of the arrow X is the right direction, the opposite direction is the left direction, the direction of the arrow Y is the front direction, and the opposite direction is the rear direction. As shown in FIG. 1, the sewing machine 1 includes a sewing machine bed 2, a pedestal column portion 3, and an arm portion 4. The sewing machine bed 2 extends long in the left-right direction. The pedestal 3 is erected upward from the right end of the sewing machine bed 2. The arm portion 4 extends leftward from the upper end of the pedestal column portion 3. There is a head 5 at the left end of the arm 4. A liquid crystal display (hereinafter referred to as “LCD”) 10 having a touch panel 16 on the surface is provided on the front surface of the pedestal 3. The LCD 10 displays sewing patterns, input keys for sewing conditions, and the like. The user performs sewing by pressing the position of the touch panel 16 corresponding to the position of the input key or the like displayed on the LCD 10 with a finger or a dedicated touch pen (hereinafter, this operation is referred to as “panel operation”). Patterns and sewing conditions can be selected.

ミシンベッド2の内部には、送り歯前後動機構(図示せず)と、送り歯上下動機構(図示せず)と、送り量調整用パルスモータ78(図4参照)と、釜(図示せず)とが収納されている。送り歯前後動機構及び送り歯上下動機構は、送り歯(図示せず)を駆動させる。送り量調整用パルスモータ78は、送り歯による加工布(図示せず)の送り量を調整する。釜は下糸(図示せず)が巻回されたボビン(図示せず)を収納する。ミシンベッド2の左端には、刺繍装置30を装着されている。刺繍装置30を使用しない場合には、ミシンベッド2の左端に補助テーブル(図示せず)が装着される。刺繍装置30がミシンベッド2の左端に装着されると、刺繍装置30は、ミシン1に電気的に接続された状態となる。刺繍装置30の詳細については後述する。   Inside the sewing machine bed 2, a feed dog longitudinal movement mechanism (not shown), a feed dog vertical movement mechanism (not shown), a feed amount adjusting pulse motor 78 (see FIG. 4), and a shuttle (not shown). Are stored. The feed dog longitudinal movement mechanism and the feed dog vertical movement mechanism drive a feed dog (not shown). The feed amount adjusting pulse motor 78 adjusts the feed amount of a work cloth (not shown) by the feed dog. The hook stores a bobbin (not shown) around which a lower thread (not shown) is wound. An embroidery device 30 is attached to the left end of the sewing bed 2. When the embroidery device 30 is not used, an auxiliary table (not shown) is attached to the left end of the sewing machine bed 2. When the embroidery device 30 is mounted on the left end of the sewing machine bed 2, the embroidery device 30 is electrically connected to the sewing machine 1. Details of the embroidery device 30 will be described later.

脚柱部3とアーム部4との内部には、ミシンモータ79(図4参照)と、主軸(図示せず)と、針棒6(図2参照)と、針棒上下動機構(図示せず)と、針振り機構(図示せず)とが収納されている。図2に示すように、針棒6の下端部には、縫針7が装着される。針棒上下動機構は、ミシンモータ79を駆動源として針棒6を上下動させる。針振り機構は、針振り用パルスモータ77(図4参照)を駆動源として針棒6を左右方向に揺動させる。図2に示すように、針棒6の後ろ側には、上下方向に伸びる押え棒45がある。押え棒45の下端部には、押えホルダ46が固定されている。押えホルダ46には、加工布(図示せず)を押さえる押え足47が装着されている。   Inside the pedestal 3 and the arm 4, there are a sewing machine motor 79 (see FIG. 4), a main shaft (not shown), a needle bar 6 (see FIG. 2), and a needle bar vertical movement mechanism (not shown). And a needle swing mechanism (not shown). As shown in FIG. 2, a sewing needle 7 is attached to the lower end portion of the needle bar 6. The needle bar vertical movement mechanism moves the needle bar 6 up and down using the sewing machine motor 79 as a drive source. The needle swing mechanism swings the needle bar 6 in the left-right direction using a needle swing pulse motor 77 (see FIG. 4) as a drive source. As shown in FIG. 2, a presser bar 45 extending in the vertical direction is provided behind the needle bar 6. A presser holder 46 is fixed to the lower end portion of the presser bar 45. A presser foot 47 for holding a work cloth (not shown) is attached to the presser holder 46.

アーム部4には、開閉カバー21が取り付けられている。開閉カバー21は、アーム部4の長手方向に設けられ、アーム部4の上後端部に左右方向向きの軸回りに開閉可能に軸支されている。開閉カバー21を開けた状態の、アーム部4の上部中央近傍には、糸収容部23が設けられている。糸収容部23は、ミシン1に糸を供給する糸駒20を収容するための凹部である。糸収容部23の脚柱部3側の内壁面には、頭部5に向かって突出する糸立棒22が設けられている。糸駒20は、糸駒20が備える挿入孔(図示せず)が糸立棒22に挿入されて装着される。図示しないが、糸駒20の糸は、上糸として、頭部5に設けられた複数の糸掛部を経由して、針棒6に装着された縫針7(図2参照)に供給される。糸掛部として、例えば、糸調子器、糸取バネ、天秤が挙げられる。糸調子器及び糸取バネは、糸張力を調整する。天秤は、上下に往復駆動して上糸を引き上げる。   An opening / closing cover 21 is attached to the arm portion 4. The opening / closing cover 21 is provided in the longitudinal direction of the arm portion 4, and is pivotally supported by the upper rear end portion of the arm portion 4 so as to be openable and closable around a left-right axis. A thread accommodating portion 23 is provided in the vicinity of the upper center of the arm portion 4 with the opening / closing cover 21 opened. The thread accommodating portion 23 is a recess for accommodating the yarn spool 20 that supplies the sewing machine 1 with a yarn. On the inner wall surface of the thread accommodating portion 23 on the side of the pedestal portion 3, a thread stand bar 22 that protrudes toward the head 5 is provided. The thread spool 20 is mounted by inserting an insertion hole (not shown) provided in the thread spool 20 into the spool pin 22. Although not shown, the thread of the thread spool 20 is supplied as an upper thread to the sewing needle 7 (see FIG. 2) attached to the needle bar 6 via a plurality of thread hooks provided on the head 5. . Examples of the thread hook portion include a thread tension device, a thread take-up spring, and a balance. The thread tensioner and the thread take-up spring adjust the thread tension. The balance is reciprocated up and down to pull up the upper thread.

ミシン1の右側面には、プーリ(図示せず)が設けられている。プーリは、手動で主軸を回転させ、針棒6を上下動させる。頭部5及びアーム部4の正面には、正面カバー59が設けられている。正面カバー59には、縫製開始・停止スイッチ41,速度調整摘み43,及びその他の操作スイッチが設けられている。縫製開始・停止スイッチ41は、縫製の開始及び停止を指示するスイッチである。ミシン1の停止中に縫製開始・停止スイッチ41が押圧されるとミシン1の運転が開始され、ミシン1の運転中に縫製開始・停止スイッチ41が押圧されるとミシン1の運転が停止される。速度調整摘み43は、主軸(図示せず)の回転速度を調整する。正面カバー59の内部であって、縫針7からみて右斜め上方の位置には、イメージセンサ50(図2参照)が設置されている。イメージセンサ50の詳細については後述する。   A pulley (not shown) is provided on the right side surface of the sewing machine 1. The pulley manually rotates the main shaft and moves the needle bar 6 up and down. A front cover 59 is provided in front of the head 5 and the arm portion 4. The front cover 59 is provided with a sewing start / stop switch 41, a speed adjustment knob 43, and other operation switches. The sewing start / stop switch 41 is a switch for instructing the start and stop of sewing. When the sewing start / stop switch 41 is pressed while the sewing machine 1 is stopped, the operation of the sewing machine 1 is started. When the sewing start / stop switch 41 is pressed while the sewing machine 1 is operating, the operation of the sewing machine 1 is stopped. . The speed adjustment knob 43 adjusts the rotational speed of the main shaft (not shown). An image sensor 50 (see FIG. 2) is installed in the front cover 59 at a position obliquely upward to the right as viewed from the sewing needle 7. Details of the image sensor 50 will be described later.

次に、図2を参照して、イメージセンサ50について説明する。イメージセンサ50は、周知のCMOSイメージセンサであり、ミシンベッド2及びミシンベッド2上に設けられる針板80を撮像可能な位置に取り付けられる。本実施形態では、イメージセンサ50は、ミシン1のフレーム(図示せず)に取り付けられた支持フレーム51に取り付けられている。   Next, the image sensor 50 will be described with reference to FIG. The image sensor 50 is a well-known CMOS image sensor, and is attached to a position where the sewing bed 2 and the needle plate 80 provided on the sewing bed 2 can be imaged. In the present embodiment, the image sensor 50 is attached to a support frame 51 attached to a frame (not shown) of the sewing machine 1.

次に、図1及び図3を参照して、刺繍装置30について説明する。刺繍装置30は、キャリッジ(図示せず)と、キャリッジカバー33と、前後移動機構(図示せず)と、左右移動機構(図示せず)と、刺繍枠32とを備える。キャリッジは、刺繍枠32を着脱可能に保持する。キャリッジの右方には、刺繍枠32が装着される凹溝部(図示せず)が設けられている。凹溝部は、キャリッジの長手方向に沿って伸長している。キャリッジカバー33は、概略、前後方向に長い直方体状の形状を有し、キャリッジを収容する。キャリッジカバー33の内部には、前後移動機構(図示せず)が設けられている。前後移動機構は、Y軸モータ82(図4参照)を駆動源として、刺繍枠32が装着されたキャリッジを前後方向に移動させる。左右移動機構は、刺繍装置30の本体内に設けられている。左右移動機構は、X軸モータ81(図4参照)を駆動源として、刺繍枠32が装着されたキャリッジと、前後移動機構と、キャリッジカバー33とを左右方向に移動させる。Y軸モータ82及びX軸モータ81に対する駆動指令は、後述するCPU61(図4参照)によって出力される。   Next, the embroidery device 30 will be described with reference to FIGS. 1 and 3. The embroidery device 30 includes a carriage (not shown), a carriage cover 33, a forward / backward movement mechanism (not shown), a left / right movement mechanism (not shown), and an embroidery frame 32. The carriage holds the embroidery frame 32 in a detachable manner. A concave groove (not shown) in which the embroidery frame 32 is mounted is provided on the right side of the carriage. The concave groove extends along the longitudinal direction of the carriage. The carriage cover 33 generally has a rectangular parallelepiped shape that is long in the front-rear direction and accommodates the carriage. A forward / backward movement mechanism (not shown) is provided inside the carriage cover 33. The back-and-forth moving mechanism moves the carriage on which the embroidery frame 32 is mounted in the front-rear direction using a Y-axis motor 82 (see FIG. 4) as a drive source. The left / right moving mechanism is provided in the main body of the embroidery device 30. The left / right movement mechanism moves the carriage on which the embroidery frame 32 is mounted, the front / rear movement mechanism, and the carriage cover 33 in the left / right direction using an X-axis motor 81 (see FIG. 4) as a drive source. Driving commands for the Y-axis motor 82 and the X-axis motor 81 are output by a CPU 61 (see FIG. 4) described later.

図3を参照して、刺繍枠32について説明する。刺繍枠32は、ガイド321と、外枠322と、内枠323と、調整ネジ324とを備える。ガイド321は、平面視略長方形の形状を有する。ガイド321の下面の略中央には、長手方向に沿って伸長する突出部(図示せず)が設けられている。突出部を、刺繍装置30のキャリッジ(図示せず)に設けられた凹溝部(図示せず)に係合させて取り付けることによって、刺繍枠32はキャリッジに装着される。刺繍枠32はキャリッジに装着された状態では、キャリッジに設けられている弾性付勢バネ(図示せず)によって、突出部は凹溝部に押圧される方向に付勢される。このため、刺繍枠32とキャリッジとは、確実に嵌合した状態となり、刺繍枠32はキャリッジと一体的に移動する。外枠322の内側には、外周形状が外枠322の内周形状と略同形状に形成された内枠323が嵌め込まれる。外枠322と内枠323との間には、加工布等の被加工物34が挟まれる。外枠322に設けられた調整ネジ324が締められることによって、被加工物34は刺繍枠32に保持される。内枠323の内側には、矩形の縫製領域325が設定されている。刺繍模様は、縫製領域325内に形成される。なお、刺繍枠32は図1に示すサイズのものだけでなく、図示はしないが様々なサイズの刺繍枠が用意されている。   The embroidery frame 32 will be described with reference to FIG. The embroidery frame 32 includes a guide 321, an outer frame 322, an inner frame 323, and an adjustment screw 324. The guide 321 has a substantially rectangular shape in plan view. A projecting portion (not shown) extending along the longitudinal direction is provided substantially at the center of the lower surface of the guide 321. The embroidery frame 32 is mounted on the carriage by engaging the protrusion with a concave groove (not shown) provided on the carriage (not shown) of the embroidery device 30. When the embroidery frame 32 is mounted on the carriage, the protruding portion is urged in a direction to be pressed by the groove portion by an elastic urging spring (not shown) provided on the carriage. For this reason, the embroidery frame 32 and the carriage are securely engaged with each other, and the embroidery frame 32 moves integrally with the carriage. Inside the outer frame 322, an inner frame 323 whose outer peripheral shape is formed to be substantially the same as the inner peripheral shape of the outer frame 322 is fitted. A workpiece 34 such as a work cloth is sandwiched between the outer frame 322 and the inner frame 323. The work piece 34 is held by the embroidery frame 32 by tightening the adjustment screw 324 provided on the outer frame 322. A rectangular sewing area 325 is set inside the inner frame 323. The embroidery pattern is formed in the sewing area 325. The embroidery frame 32 is not limited to the size shown in FIG. 1, but various sizes of embroidery frames are prepared (not shown).

次に、図4を参照して、ミシン1の主な電気的構成について説明する。図4に示すように、ミシン1は、CPU61と、ROM62と、RAM63と、EEPROM64と、外部アクセスRAM68と、入力インターフェイス65と、出力インターフェイス66とを備え、これらはバス67によって相互に接続されている。   Next, the main electrical configuration of the sewing machine 1 will be described with reference to FIG. As shown in FIG. 4, the sewing machine 1 includes a CPU 61, a ROM 62, a RAM 63, an EEPROM 64, an external access RAM 68, an input interface 65, and an output interface 66, which are connected to each other by a bus 67. Yes.

CPU61は、ミシン1の主制御を司り、ROM62等に記憶されたプログラムに従って、各種演算及び処理を実行する。ROM62は、刺繍データ記憶エリア及びプログラム記憶エリアを含む複数の記憶エリアを備える。刺繍データ記憶エリアには、ミシン1で刺繍を行う際に使用される刺繍データが記憶される。プログラム記憶エリアには、CPU61によって実行されるパラメータ算出プログラムと、刺繍模様形成プログラムとを含む複数のプログラムが記憶されている。RAM63は、任意に読み書き可能な記憶素子である。RAM63の記憶エリアについては後述する。EEPROM64は、読み書き可能な記憶素子であり、プログラム記憶エリアに記憶されている各種プログラムが実行される際に使用される各種パラメータが記憶されている。EEPROM64の記憶エリアについては後述する。外部アクセスRAM68には、カードスロット17が接続されている。カードスロット17は、メモリカード18と接続可能である。カードスロット17とメモリカード18とを接続すれば、メモリカード18の情報の読み取りや書き込みを行うことができる。   The CPU 61 manages the main control of the sewing machine 1 and executes various calculations and processes according to programs stored in the ROM 62 and the like. The ROM 62 includes a plurality of storage areas including an embroidery data storage area and a program storage area. In the embroidery data storage area, embroidery data used when embroidery is performed by the sewing machine 1 is stored. In the program storage area, a plurality of programs including a parameter calculation program executed by the CPU 61 and an embroidery pattern formation program are stored. The RAM 63 is a storage element that can be arbitrarily read and written. The storage area of the RAM 63 will be described later. The EEPROM 64 is a readable / writable storage element, and stores various parameters used when various programs stored in the program storage area are executed. The storage area of the EEPROM 64 will be described later. A card slot 17 is connected to the external access RAM 68. The card slot 17 can be connected to the memory card 18. If the card slot 17 and the memory card 18 are connected, information in the memory card 18 can be read and written.

入力インターフェイス65には、縫製開始・停止スイッチ41と、速度調整摘み43と、タッチパネル16と、イメージセンサ50とが接続されている。出力インターフェイス66には、駆動回路70〜75が接続されている。駆動回路70は、針振り用パルスモータ77を駆動させる。針振り用パルスモータ77は、針振り機構(図示せず)の駆動源である。駆動回路71は、送り量調整用パルスモータ78を駆動させる。駆動回路72は、ミシンモータ79を駆動させる。ミシンモータ79は、主軸(図示せず)の駆動源である。駆動回路73は、X軸モータ81を駆動させる。駆動回路74は、Y軸モータ82を駆動させる。駆動回路75はLCD10を駆動させる。入力インターフェイス65及び出力インターフェイス66には、図示しない他の構成要素が適宜接続される。   To the input interface 65, a sewing start / stop switch 41, a speed adjustment knob 43, the touch panel 16, and an image sensor 50 are connected. Drive circuits 70 to 75 are connected to the output interface 66. The drive circuit 70 drives a needle swing pulse motor 77. The needle swing pulse motor 77 is a drive source of a needle swing mechanism (not shown). The drive circuit 71 drives the feed amount adjusting pulse motor 78. The drive circuit 72 drives the sewing machine motor 79. The sewing machine motor 79 is a drive source for a main shaft (not shown). The drive circuit 73 drives the X axis motor 81. The drive circuit 74 drives the Y-axis motor 82. The drive circuit 75 drives the LCD 10. Other components (not shown) are connected to the input interface 65 and the output interface 66 as appropriate.

次に、図5を参照して、RAM63の記憶エリアについて説明する。図5に示すように、RAM63は、撮像画像記憶エリア631と、二次元座標記憶エリア632と、その他の記憶エリア633とを備える。撮像画像記憶エリア631には、撮像画像が記憶される。図6に示すように、二次元座標記憶エリア632には、後述するパラメータ算出処理で撮像画像から抽出された複数の特徴点について、特徴点を区別するための番号と、イメージセンサ50で撮像された画像の座標系200(以下、「画像座標系200」と言う。)の二次元座標(u,v)とが対応付けられて記憶される。なお、画像座標系200は、撮像画像に設定される仮想的な座標系であり、図2では画像座標系200を模式的に示している。撮像画像から抽出される特徴点については、後述する。その他の記憶エリア633には、CPU61が演算処理した演算結果等が記憶される。 Next, the storage area of the RAM 63 will be described with reference to FIG. As shown in FIG. 5, the RAM 63 includes a captured image storage area 631, a two-dimensional coordinate storage area 632, and other storage areas 633. A captured image is stored in the captured image storage area 631. As shown in FIG. 6, in the two-dimensional coordinate storage area 632, a plurality of feature points extracted from a captured image in a parameter calculation process to be described later are imaged by the image sensor 50 and a number for distinguishing the feature points. The two-dimensional coordinates (u c , v c ) of the image coordinate system 200 (hereinafter referred to as “image coordinate system 200”) are stored in association with each other. The image coordinate system 200 is a virtual coordinate system set for the captured image, and FIG. 2 schematically shows the image coordinate system 200. The feature points extracted from the captured image will be described later. In the other storage area 633, calculation results and the like calculated by the CPU 61 are stored.

図7を参照して、EEPROM64の記憶エリアについて説明する。EEPROM64は、基準座標記憶エリア641と、内部パラメータ記憶エリア642と、外部パラメータ記憶エリア643と、移動条件記憶エリア644とを備えている。基準座標記憶エリア641には、ワールド座標系100における特徴点の既知の三次元座標が基準座標として記憶されている。ワールド座標系100は、空間全体を示す座標系であり、対象物の重心等の影響を受けることのない座標系である。一般に、ワールド座標系100は、空間内での物体の位置を示したり、異なる物体に対する座標を比較したりする際に用いられる。第1及び第2の実施形態では、以下のようにワールド座標系100が設定されている。図1に示すように、刺繍枠32に挟まれた被加工物34の上面をXY平面とする。ワールド座標系100では、ミシン1の左右方向にX軸が、前後方向にY軸が、上下方向にZ軸がそれぞれ設定されている。ワールド座標系100の原点(X,Y,Z)=(0,0,0)は、針落ち点とする。針落ち点とは、縫針7が被加工物34の上にある状態から針棒6を下方向に移動させた際に、縫針7が被加工物34に刺さる点である。   A storage area of the EEPROM 64 will be described with reference to FIG. The EEPROM 64 includes a reference coordinate storage area 641, an internal parameter storage area 642, an external parameter storage area 643, and a movement condition storage area 644. In the reference coordinate storage area 641, known three-dimensional coordinates of feature points in the world coordinate system 100 are stored as reference coordinates. The world coordinate system 100 is a coordinate system that indicates the entire space, and is a coordinate system that is not affected by the center of gravity of the object. In general, the world coordinate system 100 is used to indicate the position of an object in space or to compare coordinates for different objects. In the first and second embodiments, the world coordinate system 100 is set as follows. As shown in FIG. 1, the upper surface of the workpiece 34 sandwiched between the embroidery frames 32 is defined as an XY plane. In the world coordinate system 100, the X axis is set in the left-right direction of the sewing machine 1, the Y axis is set in the front-rear direction, and the Z axis is set in the up-down direction. The origin (X, Y, Z) = (0, 0, 0) of the world coordinate system 100 is a needle drop point. The needle drop point is a point at which the sewing needle 7 pierces the workpiece 34 when the needle bar 6 is moved downward from a state where the sewing needle 7 is on the workpiece 34.

図8を参照して、EEPROM64に設けられている基準座標記憶エリア641について詳細に説明する。図8に示すように、基準座標記憶エリア641には、番号と、加工データと、基準座標とがそれぞれ対応付けられて記憶されている。番号は、特徴点を区別するためのIDである。基準座標記憶エリア641の番号は、二次元座標記憶エリア632の番号と対応する。加工データは、番号に対応する特徴点の位置を指示するデータである。加工データに従って、刺繍枠32を移動させる際の、X軸モータ81及びY軸モータ82の駆動量が決定される。加工データは、例えば、ワールド座標系100(図1参照)で示される。基準座標は、例えば、後述する刺繍装置30の座標系300(図3参照)(以下、「刺繍座標系300」と言う。)と画像座標系200とがそれぞれ校正された状態で、後述するパラメータ算出処理が実行され、算出される。刺繍座標系300については、後述する。基準座標は、ワールド座標系100の三次元座標(Xw,Yw,Zw)である。基準座標は、後述するパラメータ算出処理で実行される、撮像画像に基づき算出された特徴点の座標と比較する処理において用いられる。   The reference coordinate storage area 641 provided in the EEPROM 64 will be described in detail with reference to FIG. As shown in FIG. 8, the reference coordinate storage area 641 stores a number, processed data, and reference coordinates in association with each other. The number is an ID for distinguishing feature points. The number of the reference coordinate storage area 641 corresponds to the number of the two-dimensional coordinate storage area 632. The processed data is data indicating the position of the feature point corresponding to the number. The drive amounts of the X-axis motor 81 and the Y-axis motor 82 when moving the embroidery frame 32 are determined according to the processing data. The processing data is indicated by, for example, the world coordinate system 100 (see FIG. 1). The reference coordinates are, for example, parameters described later in a state where a coordinate system 300 (see FIG. 3) (hereinafter referred to as “embroidery coordinate system 300”) of the embroidery device 30 described later and the image coordinate system 200 are calibrated. Calculation processing is executed and calculated. The embroidery coordinate system 300 will be described later. The reference coordinates are three-dimensional coordinates (Xw, Yw, Zw) of the world coordinate system 100. The reference coordinates are used in a process of comparing with feature point coordinates calculated based on a captured image, which is executed in a parameter calculation process described later.

次に、図8及び図9を参照して、基準座標記憶エリア641に記憶されている加工データについて説明する。図9では、加工データによって指示される特徴点が形成される位置が、点101で示されている。ワールド座標系100のX軸103,Y軸102の交点である原点110は、イメージセンサ50の撮像可能範囲104の中央に位置している。なお、原点110は、撮像可能範囲104の中央位置以外の位置としてもよい。点101は、刺繍枠32を後述する刺繍座標系300の原点の位置に移動させた状態における撮像可能範囲104内に、特徴点の密度(単位面積当たりの特徴点の数)がほぼ均一になるように、規則的に配置されている。より具体的には、本実施形態では、点101は、17×17マスの格子の頂点の位置に配置されている。   Next, machining data stored in the reference coordinate storage area 641 will be described with reference to FIGS. In FIG. 9, a position where a feature point indicated by the processing data is formed is indicated by a point 101. An origin 110 that is the intersection of the X axis 103 and the Y axis 102 of the world coordinate system 100 is located at the center of the imageable range 104 of the image sensor 50. The origin 110 may be a position other than the center position of the imageable range 104. In the point 101, the density of feature points (number of feature points per unit area) is substantially uniform within the imageable range 104 in a state where the embroidery frame 32 is moved to the origin position of the embroidery coordinate system 300 described later. So that they are regularly arranged. More specifically, in the present embodiment, the point 101 is arranged at the apex position of a 17 × 17 grid.

引き続き図7を参照して、EEPROM64の記憶エリアについて説明する。内部パラメータ記憶エリア642には、撮像された画像及び特徴点の三次元座標から算出された内部パラメータが記憶される。内部パラメータは、イメージセンサ50の特性に基づいて生じる焦点距離と、主点座標のずれと、撮像した画像の歪みとをそれぞれ補正するためのパラメータである。内部パラメータ記憶エリア642には、内部パラメータとして、X軸焦点距離と、Y軸焦点距離と、X軸主点座標と、Y軸主点座標と、第一歪み係数と、第二歪み係数とが記憶される。X軸焦点距離は、イメージセンサ50のX軸方向の焦点距離のずれを示す。Y軸焦点距離は、Y軸方向の焦点距離のずれを示す。X軸主点座標は、イメージセンサ50のX軸方向の主点のずれを示す。Y軸主点座標は、Y軸方向の主点のずれを示す。第一歪み係数と第二歪み係数とはそれぞれ、イメージセンサ50のレンズの傾きによる歪みを示す。内部パラメータは、例えば、ミシン1が撮像画像を正規化画像に変換する際に用いられる。正規化画像は、正規化カメラで撮像した画像である。正規化カメラとは、光学中心からスクリーン面までの距離が単位長であるようなカメラである。   The storage area of the EEPROM 64 will be described with reference to FIG. The internal parameter storage area 642 stores internal parameters calculated from the captured image and the three-dimensional coordinates of the feature points. The internal parameters are parameters for correcting the focal length, the deviation of the principal point coordinates, and the distortion of the captured image that are generated based on the characteristics of the image sensor 50, respectively. The internal parameter storage area 642 includes, as internal parameters, an X-axis focal length, a Y-axis focal length, an X-axis principal point coordinate, a Y-axis principal point coordinate, a first distortion coefficient, and a second distortion coefficient. Remembered. The X-axis focal length indicates a shift in the focal length of the image sensor 50 in the X-axis direction. The Y-axis focal length indicates a shift in focal length in the Y-axis direction. The X-axis principal point coordinates indicate the deviation of the principal point of the image sensor 50 in the X-axis direction. The Y-axis principal point coordinate indicates a deviation of the principal point in the Y-axis direction. Each of the first distortion coefficient and the second distortion coefficient indicates distortion due to the inclination of the lens of the image sensor 50. The internal parameters are used, for example, when the sewing machine 1 converts a captured image into a normalized image. A normalized image is an image captured by a normalized camera. A normalized camera is a camera whose unit length is the distance from the optical center to the screen surface.

外部パラメータ記憶エリア643には、撮像画像及び特徴点の三次元座標から算出された外部パラメータが記憶される。外部パラメータは、ワールド座標系100に対するイメージセンサ50の設置状態(位置及び向き)を示すパラメータである。つまり、外部パラメータとは、画像座標系200と、ワールド座標系100とのずれを示すパラメータである。外部パラメータ記憶エリア643には、外部パラメータとして、X軸回転ベクトルと、Y軸回転ベクトルと、Z軸回転ベクトルと、X軸並進ベクトルと、Y軸並進ベクトルと、Z軸並進ベクトルとが記憶される。X軸回転ベクトルは、画像座標系200のワールド座標系100に対するX軸周りの回転を示し、Y軸回転ベクトルは、Y軸周りの回転を示し、Z軸回転ベクトルは、Z軸周りの回転を示す。X軸回転ベクトルと、Y軸回転ベクトルと、Z軸回転ベクトルとは、ワールド座標系100から画像座標系200へ変換する転換行列や、画像座標系200からワールド座標系100へ変換する転換行列を決定する際に使用される。X軸並進ベクトルはワールド座標系100に対する画像座標系200のX軸方向のずれを示し、Y軸並進ベクトルはY軸方向のずれを示し,Z軸並進ベクトルはZ軸方向のずれを示す。X軸並進ベクトルと、Y軸並進ベクトルと、Z軸並進ベクトルとは、ミシン1がワールド座標系100から画像座標系200へ変換する並進ベクトルや、画像座標系200からワールド座標系100へ変換する並進ベクトルを決定する際に使用される。   The external parameter storage area 643 stores external parameters calculated from the captured image and the three-dimensional coordinates of the feature points. The external parameter is a parameter indicating the installation state (position and orientation) of the image sensor 50 with respect to the world coordinate system 100. That is, the external parameter is a parameter indicating a deviation between the image coordinate system 200 and the world coordinate system 100. The external parameter storage area 643 stores an X-axis rotation vector, a Y-axis rotation vector, a Z-axis rotation vector, an X-axis translation vector, a Y-axis translation vector, and a Z-axis translation vector as external parameters. The The X axis rotation vector indicates rotation around the X axis with respect to the world coordinate system 100 of the image coordinate system 200, the Y axis rotation vector indicates rotation around the Y axis, and the Z axis rotation vector indicates rotation around the Z axis. Show. The X-axis rotation vector, the Y-axis rotation vector, and the Z-axis rotation vector are a conversion matrix for converting from the world coordinate system 100 to the image coordinate system 200, and a conversion matrix for converting from the image coordinate system 200 to the world coordinate system 100. Used in making decisions. The X-axis translation vector indicates a shift in the X-axis direction of the image coordinate system 200 with respect to the world coordinate system 100, the Y-axis translation vector indicates a shift in the Y-axis direction, and the Z-axis translation vector indicates a shift in the Z-axis direction. The X-axis translation vector, the Y-axis translation vector, and the Z-axis translation vector are the translation vector that the sewing machine 1 converts from the world coordinate system 100 to the image coordinate system 200, or the image coordinate system 200 to the world coordinate system 100. Used in determining the translation vector.

移動条件記憶エリア644には、刺繍枠32の移動条件として、加工データ及び刺繍データ等のデータ(以下、「指示データ」と言う。)が指示する刺繍枠32の移動量と、X軸モータ81及びY軸モータ82(図4参照)の駆動量との対応関係が記憶されている。また、移動条件記憶エリア644には、刺繍座標系300の原点の座標が刺繍枠32の種類毎に記憶されている。移動条件は、指示データに従い刺繍枠32を移動させる処理に用いられる。刺繍座標系300は、指示データによって指示される移動量と、指示データに従って刺繍枠32を移動させた場合の実際の刺繍枠32の移動量とに基づき定められる座標系である。すなわち、刺繍座標系300は、刺繍枠32を移動させるX軸モータ81及びY軸モータ82の座標系である。刺繍座標系300は、ミシン1の左右方向がX軸方向であり、ミシン1の前後方向がY軸方向である。本実施形態では、刺繍座標系300は、刺繍枠32の縫製領域の中心が、針落ち点と一致する位置を原点(X,Y,Z)=(0,0,0)としている。なお、本実施形態の刺繍装置30は、刺繍枠32をZ方向(ミシン1の上下方向)には移動させないので、加工布等の被加工物34の厚みが無視できる範囲であれば、被加工物34の上面をZ=0としている。   In the movement condition storage area 644, as the movement condition of the embroidery frame 32, the movement amount of the embroidery frame 32 indicated by data such as processing data and embroidery data (hereinafter referred to as “instruction data”), and the X-axis motor 81 are displayed. The correspondence relationship with the drive amount of the Y-axis motor 82 (see FIG. 4) is stored. Further, the movement condition storage area 644 stores the coordinates of the origin of the embroidery coordinate system 300 for each type of the embroidery frame 32. The movement condition is used for processing for moving the embroidery frame 32 in accordance with the instruction data. The embroidery coordinate system 300 is a coordinate system determined based on the movement amount specified by the instruction data and the actual movement amount of the embroidery frame 32 when the embroidery frame 32 is moved according to the instruction data. That is, the embroidery coordinate system 300 is a coordinate system of the X-axis motor 81 and the Y-axis motor 82 that move the embroidery frame 32. In the embroidery coordinate system 300, the left-right direction of the sewing machine 1 is the X-axis direction, and the front-rear direction of the sewing machine 1 is the Y-axis direction. In the present embodiment, in the embroidery coordinate system 300, the origin (X, Y, Z) = (0, 0, 0) is the position where the center of the sewing area of the embroidery frame 32 coincides with the needle drop point. Note that the embroidery device 30 of the present embodiment does not move the embroidery frame 32 in the Z direction (the vertical direction of the sewing machine 1), so that the thickness of the workpiece 34 such as a work cloth is within a negligible range. The upper surface of the object 34 is set to Z = 0.

次に、図10のフローチャートを参照して、第1の実施形態のパラメータ算出処理について説明する。パラメータ算出処理では、画像座標系200と、刺繍座標系300とを対応付けるパラメータが算出される。第1の実施形態では、パラメータ算出処理において、被加工物34に形成された刺繍座標系300の座標を有する特徴点(貫通孔)を用いて、イメージセンサ50の内部パラメータ及び外部パラメータが算出される。図10に示すパラメータ算出処理は、ROM62に記憶されたパラメータ算出プログラムに従って、CPU61が実行する。パラメータ算出処理は、ユーザによって「パラメータ算出」の実施の指示が入力された際に実行される。実施の指示は、例えば、パネル操作によって入力される。また例えば、ミシン1がパラメータ算出を実行させる専用のボタンを備える場合には、ユーザによって専用ボタンが押下されることによって実施の指示が入力される。   Next, the parameter calculation processing of the first embodiment will be described with reference to the flowchart of FIG. In the parameter calculation process, a parameter for associating the image coordinate system 200 and the embroidery coordinate system 300 is calculated. In the first embodiment, in the parameter calculation process, internal parameters and external parameters of the image sensor 50 are calculated using feature points (through holes) having coordinates of the embroidery coordinate system 300 formed on the workpiece 34. The The parameter calculation process shown in FIG. 10 is executed by the CPU 61 according to the parameter calculation program stored in the ROM 62. The parameter calculation process is executed when an instruction to perform “parameter calculation” is input by the user. The execution instruction is input by, for example, a panel operation. For example, when the sewing machine 1 includes a dedicated button for executing parameter calculation, an execution instruction is input by pressing the dedicated button by the user.

図10に示すように、第1の実施形態のパラメータ算出処理では、まず、パラメータ算出処理を実行させる準備が完了したか否かが判断される(S5)。第1の実施形態では、パラメータ算出処理を実行させるにあたって、縫針7に糸(図示せず)がセットされている場合には、ユーザは、糸を取り外す。また、ユーザは刺繍枠32に被加工物34として白い紙を挟み、刺繍枠32を刺繍装置30に装着する。準備が完了したか否かは、例えば、パネル操作によって入力された指示に基づき判断される。準備が完了していない場合には(S5:No)、準備が完了するまで待機され、準備が完了した場合には(S5:Yes)、基準座標記憶エリア641に記憶された番号及び加工データが取得され、取得された加工データがRAM63に記憶される(S10)。   As shown in FIG. 10, in the parameter calculation process of the first embodiment, first, it is determined whether or not the preparation for executing the parameter calculation process is completed (S5). In the first embodiment, when executing a parameter calculation process, if a thread (not shown) is set on the sewing needle 7, the user removes the thread. Further, the user sandwiches white paper as the workpiece 34 in the embroidery frame 32 and attaches the embroidery frame 32 to the embroidery device 30. Whether or not the preparation is completed is determined based on, for example, an instruction input by a panel operation. If the preparation is not completed (S5: No), the process waits until the preparation is completed. If the preparation is completed (S5: Yes), the number and the machining data stored in the reference coordinate storage area 641 are stored. The acquired machining data is stored in the RAM 63 (S10).

次に、S10で取得された加工データのうち、番号iの加工データが読み出される(S20)。iの初期値は1であり、S20が繰り返し実行される際にインクリメントされる。次に、駆動回路73,74に駆動指示が出力され、S20で読み出された加工データによって指示される位置に刺繍枠32が移動される(S30)。S30において、縫針7は被加工物34の上にある。次に、駆動回路72に駆動指示が出力され、ミシンモータ79が駆動される。これによって、針棒6が上下に移動され、縫針7によって被加工物34に、特徴点として貫通孔が形成される(S40)。次に、S10で取得された加工データが、S20においてすべて読み出されたか否かが判断される(S50)。読み出されていない加工データがある場合には(S50:No)、インクリメントされたiがRAM63に記憶され、処理はS20に戻る。すべての加工データが読み出された場合には(S50:Yes)、駆動回路73,74に駆動指示が出力され、刺繍枠32が刺繍座標系300の原点の位置に移動される(S60)。S60において、縫針7は被加工物34の上にある。S10において、図9に示す位置に特徴点が形成されることを指示する加工データが取得された場合、被加工物34には図11に示す324個の特徴点301が形成される。刺繍枠32が刺繍座標系300の原点の位置にある場合、特徴点301はイメージセンサ50の撮像可能範囲104の内側にある。特徴点301は、特徴点の密度(単位面積当たりの特徴点の数)がほぼ均一になるように、規則的に配置されている。より具体的には、本実施形態では、特徴点301は、17×17マスの格子の頂点の位置に配置されている。   Next, the machining data of number i is read out of the machining data acquired in S10 (S20). The initial value of i is 1, and is incremented when S20 is repeatedly executed. Next, a drive instruction is output to the drive circuits 73 and 74, and the embroidery frame 32 is moved to the position indicated by the processing data read in S20 (S30). In S <b> 30, the sewing needle 7 is on the workpiece 34. Next, a drive instruction is output to the drive circuit 72, and the sewing machine motor 79 is driven. As a result, the needle bar 6 is moved up and down, and a through hole is formed as a feature point in the workpiece 34 by the sewing needle 7 (S40). Next, it is determined whether all the machining data acquired in S10 has been read in S20 (S50). If there is processed data that has not been read (S50: No), the incremented i is stored in the RAM 63, and the process returns to S20. When all the processing data has been read (S50: Yes), a drive instruction is output to the drive circuits 73 and 74, and the embroidery frame 32 is moved to the origin position of the embroidery coordinate system 300 (S60). In S 60, the sewing needle 7 is on the workpiece 34. In S10, when processing data instructing that feature points are formed at the positions shown in FIG. 9 is acquired, 324 feature points 301 shown in FIG. When the embroidery frame 32 is at the origin position of the embroidery coordinate system 300, the feature point 301 is inside the imageable range 104 of the image sensor 50. The feature points 301 are regularly arranged so that the density of feature points (the number of feature points per unit area) is substantially uniform. More specifically, in this embodiment, the feature points 301 are arranged at the positions of the vertices of a 17 × 17 grid.

次に、イメージセンサ50によって、特徴点301が形成された被加工物34が撮像され、撮像画像記憶エリア631に撮像画像が記憶される(S70)。図11に示す例では、撮像画像には、撮像可能範囲104の内側にある324個の特徴点301が写っている。次に、S70で撮像した撮像画像から特徴点301が抽出され、特徴点301の画像座標系200の二次元座標が特徴点座標として二次元座標記憶エリア632に記憶される(S80)。S80では、公知技術に基づいて撮像画像から特徴点が抽出される。例えば、撮像画像は、ハフ変換が施され、ハフ変換画像が作成される。次に、ハフ変換画像に対して非極大抑制処理が行われ、ハフ変換画像の局所的に(マスク内で)明るい点が抽出される。次に、抽出された明るい点のうち、所定の閾値よりも明るい点のみを抽出する閾値処理が行われ、特徴点が抽出される。なお、貫通孔の中心が特徴点として抽出され、特徴点座標が算出される。   Next, the workpiece 34 on which the feature point 301 is formed is imaged by the image sensor 50, and the captured image is stored in the captured image storage area 631 (S70). In the example illustrated in FIG. 11, 324 feature points 301 inside the imageable range 104 are shown in the captured image. Next, the feature point 301 is extracted from the captured image captured in S70, and the two-dimensional coordinates of the image coordinate system 200 of the feature point 301 are stored in the two-dimensional coordinate storage area 632 as the feature point coordinates (S80). In S80, feature points are extracted from the captured image based on a known technique. For example, the captured image is subjected to Hough transform, and a Hough transform image is created. Next, non-maximum suppression processing is performed on the Hough transform image, and a bright spot is extracted locally (within the mask) of the Hough transform image. Next, threshold processing for extracting only brighter points than the predetermined threshold among the extracted bright points is performed, and feature points are extracted. The center of the through hole is extracted as a feature point, and feature point coordinates are calculated.

次に、基準座標記憶エリア641に記憶されている基準座標が取得され、基準座標がRAM63に記憶される(S85)。次に、S80で算出された特徴点座標と、特徴点の番号とが対応付けられて、対応関係が二次元座標記憶エリア632に記憶される(S90)。特徴点の座標と、特徴点の番号との対応関係は、例えば、以下のように決定される。刺繍座標系300と画像座標系200(図2参照)とがそれぞれ校正された状態で、後述するパラメータ算出処理が実行され、算出された特徴点301の2次元座標が予め算出される。算出された二次元座標は、特徴点番号と対応付けられて、所定の記憶エリアに記憶されているものとする。所定の記憶エリアに記憶された既知の二次元座標と、S80で算出された特徴点座標とが比較され、S85で取得された番号nの既知の二次元座標に最も近い特徴点座標を有する特徴点301を、番号nと対応付ける特徴点とする。特徴点座標は、特徴点の番号によって、基準座標と対応付けられることになる。   Next, the reference coordinates stored in the reference coordinate storage area 641 are acquired, and the reference coordinates are stored in the RAM 63 (S85). Next, the feature point coordinates calculated in S80 are associated with the feature point numbers, and the correspondence is stored in the two-dimensional coordinate storage area 632 (S90). The correspondence between the feature point coordinates and the feature point numbers is determined, for example, as follows. In a state where the embroidery coordinate system 300 and the image coordinate system 200 (see FIG. 2) are calibrated, a parameter calculation process described later is executed, and the two-dimensional coordinates of the calculated feature points 301 are calculated in advance. It is assumed that the calculated two-dimensional coordinates are stored in a predetermined storage area in association with the feature point number. The feature having the feature point coordinate closest to the known two-dimensional coordinate of number n acquired in S85 is compared with the known two-dimensional coordinate stored in the predetermined storage area and the feature point coordinate calculated in S80. Let the point 301 be a feature point associated with the number n. The feature point coordinates are associated with the reference coordinates by the feature point number.

次に、パラメータが算出され、算出されたパラメータはEEPROM64の内部パラメータ記憶エリア642及び外部パラメータ記憶エリア643に記憶される(S100)。パラメータは、周知のカメラキャリブレーションのパラメータの算出方法を用いて算出される。パラメータの算出方法では、三次元座標が既知である特徴点を含む対象物(被加工物)が撮像され、撮像画像における特徴点の二次元座標が算出される。特徴点の既知の三次元座標と、算出された二次元座標とに基づいて射影行列が求められ、射影行列からパラメータが算出される。パラメータの算出方法については、公知の技術(例えば、特許第3138080号公報)が適宜用いられればよい。S100の次に、パラメータ算出処理は終了する。   Next, parameters are calculated, and the calculated parameters are stored in the internal parameter storage area 642 and the external parameter storage area 643 of the EEPROM 64 (S100). The parameters are calculated using a known camera calibration parameter calculation method. In the parameter calculation method, an object (workpiece) including a feature point whose three-dimensional coordinates are known is imaged, and the two-dimensional coordinates of the feature points in the captured image are calculated. A projection matrix is obtained based on the known three-dimensional coordinates of the feature points and the calculated two-dimensional coordinates, and parameters are calculated from the projection matrix. As for the parameter calculation method, a known technique (for example, Japanese Patent No. 3138080) may be appropriately used. Following S100, the parameter calculation process ends.

以上のようにして、第1の実施形態のパラメータ算出処理が実行される。なお、被加工物34を保持する刺繍枠32は、本発明の保持部材に相当する。駆動回路73,74に出力された駆動指示に基づき、刺繍枠32を移動させるX軸モータ81及びY軸モータ82は、本発明の移動手段として機能する。図10のパラメータ算出処理において、加工データを取得する(S10)CPU61は、本発明の加工データ取得手段として機能する。加工データを記憶するEEPROM64は、加工データ記憶手段に相当する。下端部に縫針7が装着された針棒6を、加工データに従って上下方向に駆動させるミシンモータ79は、本発明の針棒駆動手段として機能する。S10で取得された加工データに従って、駆動回路72〜74に駆動指示を出力し、刺繍枠32を移動させるとともに(S30)、針棒6を上下方向に駆動させる(S40)CPU61は、本発明の特徴点形成手段として機能する。イメージセンサ50は、本発明の撮像手段に相当する。パラメータ算出処理のS80において、撮像画像から、複数の特徴点を抽出し、二次元座標を特徴点座標として算出する(S80)CPU61は、本発明の特徴点座標算出手段として機能する。パラメータ算出処理のS85において、基準座標を取得するCPU61は、本発明の基準座標取得手段として機能する。基準座標を記憶するEEPROM64は、基準座標記憶手段に相当する。S85で取得された基準座標と、S80によって算出された特徴点座標とを対応付けるCPU61は、本発明の対応付け手段として機能する。S90の結果に基づいて、刺繍座標系300と画像座標系200とを対応づけるパラメータを算出する(S100)CPU61は、本発明のパラメータ算出手段として機能する。刺繍座標系300は、本発明の移動手段の座標系に対応する。画像座標系200は、本発明の撮像手段の座標系に相当する。   As described above, the parameter calculation process of the first embodiment is executed. The embroidery frame 32 that holds the workpiece 34 corresponds to the holding member of the present invention. Based on the drive instruction output to the drive circuits 73 and 74, the X-axis motor 81 and the Y-axis motor 82 that move the embroidery frame 32 function as the moving means of the present invention. In the parameter calculation process of FIG. 10, the machining data is acquired (S10). The CPU 61 functions as the machining data acquisition means of the present invention. The EEPROM 64 that stores the machining data corresponds to machining data storage means. The sewing machine motor 79 that drives the needle bar 6 with the sewing needle 7 attached to the lower end in the vertical direction according to the processing data functions as the needle bar driving means of the present invention. In accordance with the machining data acquired in S10, a driving instruction is output to the driving circuits 72 to 74, the embroidery frame 32 is moved (S30), and the needle bar 6 is driven in the vertical direction (S40). It functions as a feature point forming means. The image sensor 50 corresponds to the imaging unit of the present invention. In S80 of the parameter calculation process, a plurality of feature points are extracted from the captured image and two-dimensional coordinates are calculated as feature point coordinates (S80). The CPU 61 functions as a feature point coordinate calculation unit of the present invention. In S85 of the parameter calculation process, the CPU 61 that acquires the reference coordinates functions as a reference coordinate acquisition unit of the present invention. The EEPROM 64 that stores the reference coordinates corresponds to reference coordinate storage means. The CPU 61 that associates the reference coordinates acquired in S85 with the feature point coordinates calculated in S80 functions as an association unit of the present invention. Based on the result of S90, a parameter for associating the embroidery coordinate system 300 and the image coordinate system 200 is calculated (S100). The CPU 61 functions as a parameter calculation means of the present invention. The embroidery coordinate system 300 corresponds to the coordinate system of the moving means of the present invention. The image coordinate system 200 corresponds to the coordinate system of the imaging means of the present invention.

第1の実施形態のパラメータ算出処理では、刺繍座標系300と画像座標系200とを対応付けるパラメータとして、内部パラメータ及び外部パラメータを算出することができる。得られたパラメータによって、刺繍座標系300に基づき画像座標系200が設定される。すなわち、刺繍座標系300がワールド座標系100となる。また第1の実施形態では、白い紙を被加工物34とし、縫針7で被加工物34にあけた貫通孔を特徴点301としている。したがって、パラメータの算出に際しては、ユーザは被加工物34である白い紙を用意するのみでよく、ミシン1にパラメータを算出させる準備が簡単である。ミシン1は、白い紙を被加工物34としているので、白い紙は特徴点が形成されていない領域と特徴点との明暗の差が比較的大きい。したがって、パラメータ算出処理のS80において、特徴点が形成されていない領域と特徴点とで明暗の差が少ない場合に比べ、特徴点を精度良く抽出することができる。また、白い紙は汎用品であるため、ユーザは被加工物を容易に準備することができる。また、図11に示すように、特徴点301は、刺繍枠32を原点の位置に移動させた状態における撮像可能範囲104内に規則的に形成されている。したがって、特徴点301が撮像可能範囲104内の一部の領域に偏って形成されている場合に比べ、刺繍座標系300と画像座標系200とを対応づけるパラメータを精度良く算出することができる。なお、ミシン1では、撮像手段として小型且つ安価なCMOSセンサを使用したため、撮像手段をミシンに設置するスペースが小さくて済むとともに、撮影機器のコストを低く抑えることが可能となる。   In the parameter calculation process of the first embodiment, internal parameters and external parameters can be calculated as parameters for associating the embroidery coordinate system 300 with the image coordinate system 200. Based on the obtained parameters, the image coordinate system 200 is set based on the embroidery coordinate system 300. That is, the embroidery coordinate system 300 becomes the world coordinate system 100. In the first embodiment, white paper is used as the workpiece 34, and a through hole opened in the workpiece 34 with the sewing needle 7 is used as the feature point 301. Therefore, when calculating the parameters, the user only needs to prepare white paper as the workpiece 34, and preparation for causing the sewing machine 1 to calculate the parameters is simple. Since the sewing machine 1 uses white paper as the workpiece 34, the white paper has a relatively large difference in brightness between the area where the characteristic points are not formed and the characteristic points. Therefore, in S80 of the parameter calculation process, the feature points can be extracted with higher accuracy than in the case where there is little difference in brightness between the area where the feature points are not formed and the feature points. Further, since white paper is a general-purpose product, the user can easily prepare a workpiece. As shown in FIG. 11, the feature points 301 are regularly formed in the imageable range 104 in a state where the embroidery frame 32 is moved to the origin position. Therefore, compared with the case where the feature points 301 are formed so as to be biased toward a part of the area within the imageable range 104, the parameters for associating the embroidery coordinate system 300 with the image coordinate system 200 can be calculated with high accuracy. Since the sewing machine 1 uses a small and inexpensive CMOS sensor as the image pickup means, a space for installing the image pickup means in the sewing machine can be reduced, and the cost of the photographing apparatus can be kept low.

次に、第1の実施形態のパラメータ算出処理によって算出されたパラメータ(以下、「第1のパラメータ」と言う。)の使用例について説明する。第1のパラメータは、例えば、二次元座標算出処理と、三次元座標算出処理と、画像加工処理とに使用される。二次元座標算出処理は、ワールド座標系100の点の三次元座標を画像座標系200の撮像画像平面に投影した点の二次元座標に変換する処理である。三次元座標算出処理は、画像座標系200の撮像画像上の点の二次元座標をワールド座標系100の点の三次元座標に変換する処理である。画像加工処理は、イメージセンサ50で撮像された画像を加工する処理である。刺繍模様形成処理を例に、二次元座標算出処理と、三次元座標算出処理と、画像加工処理とを説明する。刺繍模様形成処理では、加工布等の被加工物上のユーザが指定する位置を開始点として刺繍模様が形成される。図12に示す刺繍模様形成処理は、ユーザによって「刺繍模様形成」の指示が入力された際に、ROM62に記憶された刺繍模様形成プログラムに従って、CPU61が実行する。   Next, a usage example of a parameter calculated by the parameter calculation process of the first embodiment (hereinafter referred to as “first parameter”) will be described. The first parameter is used for, for example, two-dimensional coordinate calculation processing, three-dimensional coordinate calculation processing, and image processing processing. The two-dimensional coordinate calculation process is a process of converting the three-dimensional coordinates of the points in the world coordinate system 100 into the two-dimensional coordinates of the points projected on the captured image plane of the image coordinate system 200. The three-dimensional coordinate calculation process is a process of converting the two-dimensional coordinates of the points on the captured image of the image coordinate system 200 into the three-dimensional coordinates of the points in the world coordinate system 100. The image processing process is a process for processing an image captured by the image sensor 50. Taking an embroidery pattern forming process as an example, a two-dimensional coordinate calculation process, a three-dimensional coordinate calculation process, and an image processing process will be described. In the embroidery pattern forming process, an embroidery pattern is formed starting from a position specified by a user on a workpiece such as a work cloth. The embroidery pattern forming process shown in FIG. 12 is executed by the CPU 61 according to the embroidery pattern forming program stored in the ROM 62 when an instruction of “embroidery pattern forming” is input by the user.

以下の説明において、画像座標系200の撮像画像上の点pの二次元座標をm(u,v)とし、画像座標系200の点pの三次元座標をM(X,Y,Z)とする。そして、点pがワールド座標系100に変換された点を点Pとし、点Pのワールド座標系100の三次元座標をM(X,Y,Z)とする。内部パラメータ記憶エリア642に記憶されている内部パラメータについて、X軸焦点距離をfx,Y軸焦点距離をfy,X軸主点座標をcx,Y軸主点座標をcy,第一歪み係数をk,第二歪み係数をkとする。外部パラメータ記憶エリア643に記憶されている外部パラメータについて、X軸回転ベクトルをr,Y軸回転ベクトルをr,Z軸回転ベクトルをr,X軸並進ベクトルをt,Y軸並進ベクトルをt,Z軸並進ベクトルをtとする。「Rw」を外部パラメータ(X軸回転ベクトルr,Y軸回転ベクトルr,Z軸回転ベクトルr)に基づいて決定される3×3の回転行列とし、「t」を外部パラメータ(X軸並進ベクトルt,Y軸並進ベクトルt,Z軸並進ベクトルt)に基づいて決定される3×1の並進ベクトルとする。 In the following description, the two-dimensional coordinate of the point p on the captured image in the image coordinate system 200 is m c (u c , v c ), and the three-dimensional coordinate of the point p in the image coordinate system 200 is M c (X c , Y c , Z c ). A point obtained by converting the point p into the world coordinate system 100 is defined as a point P, and a three-dimensional coordinate of the point P in the world coordinate system 100 is defined as M w (X w , Y w , Z w ). For the internal parameters stored in the internal parameter storage area 642, the X-axis focal length is fx, the Y-axis focal length is fy, the X-axis principal point coordinate is cx, the Y-axis principal point coordinate is cy, and the first distortion coefficient is k. 1, the second distortion coefficient is k 2. For the external parameters stored in the external parameter storage area 643, the X-axis rotation vector is r 1 , the Y-axis rotation vector is r 2 , the Z-axis rotation vector is r 3 , the X-axis translation vector is t 1 , and the Y-axis translation vector Is t 2 and the Z-axis translation vector is t 3 . “Rw” is a 3 × 3 rotation matrix determined based on external parameters (X-axis rotation vector r 1 , Y-axis rotation vector r 2 , Z-axis rotation vector r 3 ), and “t w ” is an external parameter ( A 3 × 1 translation vector determined based on the X-axis translation vector t 1 , the Y-axis translation vector t 2 , and the Z-axis translation vector t 3 ).

図12に示すように、刺繍模様形成処理では、まず、ROM62等の記憶エリアが参照され、刺繍データが取得されRAM63に記憶される(S110)。S110では、ユーザがパネル操作によって選択した刺繍模様の刺繍データが取得される。次に、開始点取得処理が実行される(S120)。開始点取得処理では、S110で取得した刺繍模様に従い刺繍模様の縫製を開始する位置が開始点として取得され、開始点のワールド座標系100の3次元座標がRAM63に記憶される。開始点取得処理の詳細は後述する。次に、S120で開始点が取得されたか否かが判断される(S130)。開始点が取得されていない場合には(S130:No)、エラーが報知され(S160)、刺繍模様形成処理は終了する。開始点が取得された場合には(S130:Yes)、駆動回路73,74に駆動指示が出力され、S120で取得された開始点が針落ち点となる位置に、刺繍枠32が移動される(S140)。次に、S110で取得した刺繍データに基づき、刺繍模様が形成される(S150)。S150では、S140で移動された位置において、刺繍模様の形成が開始される。刺繍模様を形成する処理は、通常の刺繍模様の縫製と同様である。次に、刺繍模様形成処理は終了する。   As shown in FIG. 12, in the embroidery pattern formation process, first, a storage area such as the ROM 62 is referred to, embroidery data is acquired and stored in the RAM 63 (S110). In S110, the embroidery data of the embroidery pattern selected by the user through the panel operation is acquired. Next, a start point acquisition process is executed (S120). In the start point acquisition process, the position at which sewing of the embroidery pattern starts according to the embroidery pattern acquired in S110 is acquired as the start point, and the three-dimensional coordinates of the start point world coordinate system 100 are stored in the RAM 63. Details of the start point acquisition process will be described later. Next, it is determined whether or not a starting point has been acquired in S120 (S130). If the start point has not been acquired (S130: No), an error is notified (S160), and the embroidery pattern formation process ends. When the start point is acquired (S130: Yes), a drive instruction is output to the drive circuits 73 and 74, and the embroidery frame 32 is moved to a position where the start point acquired in S120 becomes the needle drop point. (S140). Next, an embroidery pattern is formed based on the embroidery data acquired in S110 (S150). In S150, the formation of the embroidery pattern is started at the position moved in S140. The process for forming the embroidery pattern is the same as that for sewing a normal embroidery pattern. Next, the embroidery pattern forming process ends.

次に、刺繍模様形成処理で実行される開始点取得処理について、図13を参照して説明する。第1の実施形態の開始点取得処理では、刺繍枠32に挟まれた被加工物34に描かれた所定のマーク(例えば、×印等)を検出し、所定のマークが描かれた位置を開始点とする。ユーザが、刺繍模様形成処理を実行させる前に、被加工物34の開始点にチャコペン等で印を付けることが前提となる。   Next, the start point acquisition process executed in the embroidery pattern formation process will be described with reference to FIG. In the starting point acquisition process of the first embodiment, a predetermined mark (for example, an X mark) drawn on the workpiece 34 sandwiched between the embroidery frame 32 is detected, and the position where the predetermined mark is drawn is detected. This is the starting point. It is assumed that the user marks the starting point of the workpiece 34 with a chaco pen or the like before executing the embroidery pattern forming process.

図13に示すように、開始点取得処理ではまず、n番目の位置に刺繍枠32が移動される(S210)。S210の処理は、刺繍枠32の縫製領域をm回に分けて撮像するための処理である。nは、1からmまでの整数が順に設定される。次に、被加工物34が撮像され、撮像画像がRAM63に記憶される(S220)。次に、二次元座標算出処理が実行される(S230)。二次元座標算出処理では、縫製領域325の境界線のワールド座標系100の三次元座標が、画像座標系200の二次元座標に変換される。S230の処理は、S220で取得された撮像画像内の縫製領域を特定するために実行される。特定された縫製領域内において、開始点を指示するマークが検出される検出処理が実行される。二次元座標算出処理の詳細を、図14を参照して説明する。   As shown in FIG. 13, in the start point acquisition process, first, the embroidery frame 32 is moved to the nth position (S210). The process of S210 is a process for imaging the sewing area of the embroidery frame 32 in m times. For n, integers from 1 to m are set in order. Next, the workpiece 34 is imaged and the captured image is stored in the RAM 63 (S220). Next, a two-dimensional coordinate calculation process is executed (S230). In the two-dimensional coordinate calculation process, the three-dimensional coordinates of the world coordinate system 100 of the boundary line of the sewing area 325 are converted into the two-dimensional coordinates of the image coordinate system 200. The process of S230 is executed to specify the sewing area in the captured image acquired in S220. In the specified sewing area, a detection process for detecting a mark indicating the start point is executed. Details of the two-dimensional coordinate calculation processing will be described with reference to FIG.

図14に示す二次元座標算出処理では、EEPROM64に記憶されている刺繍枠32の縫製領域325の境界をなす点のワールド座標系100の三次元座標が、点Pとして順次読み出され以下の処理が実行される。まず、ワールド座標系100の点Pの三次元座標M(X,Y,Z)に基づき、点Pが画像座標系200の点pに変換された場合の三次元座標M(X,Y,Z)が算出され、三次元座標M(X,Y,Z)がRAM63に記憶される(S310)。三次元座標M(X,Y,Z)は、「M=R×M+t」によって算出される。次に、S310で算出された画像座標系200の点pの三次元座標に基づき、画像座標系200の正規化画像上の点pの二次元座標(x',y')が算出され、二次元座標(x',y')がRAM63に記憶される(S320)。画像座標系200の正規化画像上の点pの二次元座標は、「x'=X/Z」と、「y'=Y/Z」とによって算出される。 In the two-dimensional coordinate calculation process shown in FIG. 14, the three-dimensional coordinates of the world coordinate system 100 of the points forming the boundary of the sewing area 325 of the embroidery frame 32 stored in the EEPROM 64 are sequentially read as the points P and the following processing is performed. Is executed. First, the three-dimensional coordinates M w of P point in the world coordinate system 100 (X w, Y w, Z w) based on the three-dimensional coordinates M c when the point P is converted into point p of the image coordinate system 200 ( X c , Y c , Z c ) is calculated, and the three-dimensional coordinates M c (X c , Y c , Z c ) are stored in the RAM 63 (S310). The three-dimensional coordinates M c (X c , Y c , Z c ) are calculated by “M c = R w × M w + t w ”. Next, the two-dimensional coordinates (x ′, y ′) of the point p on the normalized image of the image coordinate system 200 are calculated based on the three-dimensional coordinates of the point p of the image coordinate system 200 calculated in S310. The dimension coordinates (x ′, y ′) are stored in the RAM 63 (S320). The two-dimensional coordinates of the point p on the normalized image of the image coordinate system 200 are calculated by “x ′ = X c / Z c ” and “y ′ = Y c / Z c ”.

次に、画像座標系200の正規化画像上の点pの二次元座標(x',y')に基づき、点pの正規化カメラに対してイメージセンサ50のレンズの歪みが加味された二次元座標(x",y")が算出される(S330)。二次元座標(x",y")の算出には、内部パラメータである第一歪み係数k及び第二歪み係数kが用いられる。具体的には、二次元座標(x",y")は、式「x"=x'×(1+k×r+k×r)」と、「y"=y'×(1+k×r+k×r)」とによって算出される。なお、「r=x'+y'」である。次に、画像座標系200の点pの撮像画像上の二次元座標(u,v)が算出され、二次元座標(u,v)がRAM63に記憶される(S340)。二次元座標(u,v)の算出には、二次元座標(x",y")と、内部パラメータであるX軸焦点距離fxと、Y軸焦点距離fyと、X軸主点座標cxと、Y軸主点座標cyとが用いられる。具体的には、式「u=fx×x"+cx」と、「v=fy×y"+cy」とによって算出される。以上の処理が、刺繍枠32の縫製領域325の境界線上の点を対象として実行され、縫製領域325の境界線の画像座標系200の二次元座標が得られる。次に、二次元座標算出処理は終了する。 Next, based on the two-dimensional coordinates (x ′, y ′) of the point p on the normalized image of the image coordinate system 200, the distortion of the lens of the image sensor 50 is added to the normalized camera at the point p. Dimensional coordinates (x ", y") are calculated (S330). For the calculation of the two-dimensional coordinates (x ″, y ″), the first distortion coefficient k 1 and the second distortion coefficient k 2 which are internal parameters are used. Specifically, the two-dimensional coordinates (x ″, y ″) are expressed by the expression “x ″ = x ′ × (1 + k 1 × r 2 + k 2 × r 4 )” and “y” = y ′ × (1 + k 1). × r 2 + k 2 × r 4 ) ”. Note that “r 2 = x ′ 2 + y ′ 2 ”. Next, two-dimensional coordinates (u c , v c ) on the captured image of the point p in the image coordinate system 200 are calculated, and the two-dimensional coordinates (u c , v c ) are stored in the RAM 63 (S340). For the calculation of the two-dimensional coordinates (u c , v c ), the two-dimensional coordinates (x ″, y ″), the internal parameters X-axis focal length fx, Y-axis focal length fy, and X-axis principal point coordinates cx and Y-axis principal point coordinates cy are used. Specifically, it is calculated by the equation “u c = fx × x” + cx ”and“ v c = fy × y ”+ cy”. The above processing is executed for points on the boundary line of the sewing area 325 of the embroidery frame 32, and the two-dimensional coordinates of the image coordinate system 200 of the boundary line of the sewing area 325 are obtained. Next, the two-dimensional coordinate calculation process ends.

引き続き図13を参照して開始点取得処理の説明をする。S230の次に、S220で撮像した画像のうち、S230で求めた縫製領域325内に、開始点を指示するマークがあるか否かが判断される(S240)。開始点がない場合には(S240:No)、縫製領域325の全範囲を撮像したか否かが判断される(S260)。全範囲が撮像されていない場合には(S260:No)、nがインクリメントされ、処理はS210に戻る。S240において、開始点がある場合には(S240:Yes)、三次元座標算出処理が実行される(S250)。三次元座標算出処理では、撮像画像上のマーク(開始点)の位置を点pとし、点pがワールド座標系100の点Pに変換された場合の三次元座標M(X,Y,Z)が算出される。三次元座標算出処理の詳細を、図15を参照して説明する。 The start point acquisition process will be described with reference to FIG. Next to S230, it is determined whether or not there is a mark indicating the start point in the sewing area 325 obtained in S230 among the images captured in S220 (S240). If there is no start point (S240: No), it is determined whether the entire range of the sewing area 325 has been imaged (S260). If the entire range has not been imaged (S260: No), n is incremented and the process returns to S210. In S240, when there is a start point (S240: Yes), a three-dimensional coordinate calculation process is performed (S250). In the three-dimensional coordinate calculation process, the position of the mark (starting point) on the captured image is set as a point p, and the three-dimensional coordinates M w (X w , Y w ) when the point p is converted to a point P in the world coordinate system 100. , Z w ) is calculated. Details of the three-dimensional coordinate calculation processing will be described with reference to FIG.

図15に示すように、三次元座標算出処理ではまず、画像座標系200の撮像画像上の点pの二次元座標(u,v)から、画像座標系200の正規化画像上の点pの二次元座標(x",y")が算出され、二次元座標(x",y")がRAM63に記憶される(S410)。二次元座標(x",y")は、「x"=(u−cx)/fx」と、「y"=(v−cy)/fy」とによって算出される。S210において算出される二次元座標(x",y")は、内部パラメータであるX軸焦点距離fxと、Y軸焦点距離fyと、X軸主点座標cxと、Y軸主点座標cyとが加味された座標である。次に、点pの二次元座標(x",y")に基づき、レンズの歪みが取り除かれた正規化画像上の点pの二次元座標(x',y')が算出され、二次元座標(x',y')はRAM63に記憶される(S420)。二次元座標(x',y')の算出には、内部パラメータである第一歪み係数k及び第二歪み係数kが用いられる。具体的には、式「x'=x"−x"×(1+k×r+k×r)」と、「y'=y"−y"×(1+k×r+k×r)」とによって算出される。 As shown in FIG. 15, in the three-dimensional coordinate calculation process, first, a point on the normalized image of the image coordinate system 200 is calculated from the two-dimensional coordinates (u c , v c ) of the point p on the captured image of the image coordinate system 200. The two-dimensional coordinates (x ″, y ″) of p are calculated, and the two-dimensional coordinates (x ″, y ″) are stored in the RAM 63 (S410). The two-dimensional coordinates (x ″, y ″) are calculated by “x ″ = (u−cx) / fx” and “y ″ = (v−cy) / fy”. The two-dimensional coordinates (x ″, y ″) calculated in S210 are the internal parameters X-axis focal length fx, Y-axis focal length fy, X-axis principal point coordinate cx, and Y-axis principal point coordinate cy. Is a coordinate that takes into account. Next, based on the two-dimensional coordinates (x ″, y ″) of the point p, the two-dimensional coordinates (x ′, y ′) of the point p on the normalized image from which the lens distortion has been removed are calculated, and the two-dimensional The coordinates (x ′, y ′) are stored in the RAM 63 (S420). For the calculation of the two-dimensional coordinates (x ′, y ′), the first distortion coefficient k 1 and the second distortion coefficient k 2 which are internal parameters are used. Specifically, the expression “x ′ = x” −x ”× (1 + k 1 × r 2 + k 2 × r 4 )” and “y ′ = y” −y ”× (1 + k 1 × r 2 + k 2 ×) r 4 ) ”.

次に、S420で算出された二次元座標(x',y')に基づき、画像座標系200の点pの三次元座標M(X,Y,Z)が算出され、三次元座標M(X,Y,Z)はRAM63に記憶される(S430)。三次元座標M(X,Y,Z)は以下の関係式を用いて算出される。X,Yは、「X=x'×Z」と、「Y=y'×Z」との関係が成り立つ。また、画像座標系200の三次元座標M(X,Y,Z)と、ワールド座標系100の三次元座標M(X,Y,Z)との間には、「M=R (M−t)」の関係が成り立つ。なお、R はRの転置行列である。ワールド座標系100のXY平面は刺繍枠32に挟まれた被加工物34の上面に設定されているので、ミシン1は、Z=0とし、「X=x'×Z」と、「Y=y'×Z」と、「M=R (M−t)」とを連立で解く。これによって、Zが算出され、X,Yが算出される。次に、画像座標系200の点pの三次元座標M(X,Y,Z)に基づき、点pがワールド座標系100の点Pに変換された場合の三次元座標M(X,Y,Z)が算出され、M(X,Y,Z)がRAM63に記憶される(S440)。ワールド座標系100の三次元座標M(X,Y,Z)は、「M=R (M−t)」によって算出される。次に、三次元座標算出処理は終了する。 Next, based on the two-dimensional coordinates (x ′, y ′) calculated in S420, the three-dimensional coordinates M c (X c , Y c , Z c ) of the point p in the image coordinate system 200 are calculated, and the three-dimensional The coordinates M c (X c , Y c , Z c ) are stored in the RAM 63 (S430). The three-dimensional coordinates M c (X c , Y c , Z c ) are calculated using the following relational expression. X c and Y c have a relationship of “X c = x ′ × Z c ” and “Y c = y ′ × Z c ”. Further, between the three-dimensional coordinates M c (X c , Y c , Z c ) of the image coordinate system 200 and the three-dimensional coordinates M w (X w , Y w , Z w ) of the world coordinate system 100, The relationship “M w = R w T (M c −t w )” is established. It should be noted that the R w T is a transposed matrix of R w. Since the XY plane of the world coordinate system 100 is set on the upper surface of the workpiece 34 sandwiched between the embroidery frames 32, the sewing machine 1 sets Z w = 0, “X c = x ′ × Z c ”, Solve “Y c = y ′ × Z c ” and “M w = R w T (M c −t w )” simultaneously. As a result, Zc is calculated, and Xc and Yc are calculated. Next, based on the three-dimensional coordinates M c (X c , Y c , Z c ) of the point p in the image coordinate system 200, the three-dimensional coordinates M w when the point p is converted to the point P in the world coordinate system 100. (X w , Y w , Z w ) is calculated, and M w (X w , Y w , Z w ) is stored in the RAM 63 (S440). The three-dimensional coordinates M w (X w , Y w , Z w ) of the world coordinate system 100 are calculated by “M w = R w T (M c −t w )”. Next, the three-dimensional coordinate calculation process ends.

引き続き図13を参照して開始点取得処理の説明をする。S260において、全範囲が撮像された場合(S260:Yes)、又はS250の次に、開始点取得処理は終了する。   The start point acquisition process will be described with reference to FIG. In S260, when the entire range is imaged (S260: Yes), or after S250, the start point acquisition process ends.

以上のようにして、刺繍模様形成処理を実行するミシン1は、第1のパラメータを用いて、ユーザが被加工物34に描いたマークの位置を開始点として、刺繍模様を形成させる。なお、図13の開始点取得処理のS230において、ワールド座標系100の三次元座標で示された縫製領域の境界線上の点Pに基づき、点Pが画像座標系200の点pに変換された場合の二次元座標を算出するCPU61は、本発明の二次元座標算出手段として機能する。開始点取得処理のS250において、画像座標系200の撮像画像上の点pの二次元座標に基づき、点pがワールド座標系100の点Pに変換された場合の三次元座標を算出するCPU61は、本発明の三次元座標算出手段として機能する。   As described above, the sewing machine 1 that executes the embroidery pattern forming process uses the first parameter to form an embroidery pattern starting from the position of the mark drawn on the workpiece 34 by the user. 13, the point P is converted to the point p of the image coordinate system 200 based on the point P on the boundary line of the sewing area indicated by the three-dimensional coordinates of the world coordinate system 100 in S230 of the start point acquisition process of FIG. The CPU 61 that calculates the two-dimensional coordinates of the case functions as the two-dimensional coordinate calculation means of the present invention. In S250 of the start point acquisition process, the CPU 61 that calculates the three-dimensional coordinates when the point p is converted into the point P of the world coordinate system 100 based on the two-dimensional coordinates of the point p on the captured image of the image coordinate system 200. It functions as the three-dimensional coordinate calculation means of the present invention.

刺繍模様形成処理では、開始点取得処理のS240において、第1のパラメータを用いて算出された画像座標系200の点pの二次元座標に基づき、撮像画像上の縫製領域325が特定される。ミシン1は、第1のパラメータを用いてイメージセンサ50の校正を行っているので、イメージセンサ50の固有の特性や、イメージセンサ50の設置状態の影響を考慮して、画像座標系200の点pの二次元座標を算出することができる。刺繍座標系300に基づき画像座標系200が設定されているので、ミシン1は、撮像画像上の縫製領域325を正確に特定することができる。さらに、図13のS240において、特定された縫製領域内の画素を対象として、開始点を指示するマークの検出処理が実行される。したがって、ミシン1は、撮像画像のすべての画素を対象として、上記検出処理が実行される場合に比べ、効率的にマークを検出することができる。   In the embroidery pattern formation process, the sewing area 325 on the captured image is specified based on the two-dimensional coordinates of the point p of the image coordinate system 200 calculated using the first parameter in S240 of the start point acquisition process. Since the sewing machine 1 calibrates the image sensor 50 using the first parameter, the points of the image coordinate system 200 are taken into consideration in consideration of the characteristic of the image sensor 50 and the influence of the installation state of the image sensor 50. The two-dimensional coordinates of p can be calculated. Since the image coordinate system 200 is set based on the embroidery coordinate system 300, the sewing machine 1 can accurately specify the sewing area 325 on the captured image. Further, in S240 of FIG. 13, a mark detection process for instructing the start point is executed for the pixels in the specified sewing area. Therefore, the sewing machine 1 can detect a mark more efficiently than when the detection process is performed on all pixels of the captured image.

また、刺繍模様形成処理では、図13の開始点取得処理のS250において、画像座標系200の撮像画像上の点の二次元座標をワールド座標系100の点の三次元座標に変換することができる。第1のパラメータは、イメージセンサ50の校正に用いるパラメータとしての機能を有している。したがって、ミシン1は、イメージセンサ50に固有の特性やイメージセンサ50の設置状態の影響を排除して、撮像された画像上の点を現実の三次元座標系(ワールド座標系100)の点として算出ことができる。第1の実施形態では、刺繍座標系300がワールド座標系100となるように、第1のパラメータが算出される。したがって、ミシン1は、三次元座標算出処理において算出された三次元座標を用いて、刺繍枠32に的確な移動指示を出すことができる。すなわち、ミシン1は、加工布等の被加工物34にユーザによって描かれたマークの位置が針落ち点となるように、刺繍枠32を的確に移動させることができる。   In the embroidery pattern formation process, the two-dimensional coordinates of the points on the captured image in the image coordinate system 200 can be converted into the three-dimensional coordinates of the points in the world coordinate system 100 in S250 of the start point acquisition process in FIG. . The first parameter has a function as a parameter used for calibration of the image sensor 50. Therefore, the sewing machine 1 eliminates the influence of the characteristic inherent to the image sensor 50 and the installation state of the image sensor 50, and uses the point on the captured image as a point in the actual three-dimensional coordinate system (world coordinate system 100). Can be calculated. In the first embodiment, the first parameter is calculated so that the embroidery coordinate system 300 becomes the world coordinate system 100. Therefore, the sewing machine 1 can issue an accurate movement instruction to the embroidery frame 32 using the three-dimensional coordinates calculated in the three-dimensional coordinate calculation process. That is, the sewing machine 1 can accurately move the embroidery frame 32 so that the position of the mark drawn by the user on the workpiece 34 such as a work cloth becomes a needle drop point.

第1の実施形態では、ユーザが被加工物34に描いたマークの位置を開始点としていたが、他の方法によって開始点が取得されてもよい。例えば、ミシン1は、被加工物を撮像した撮像画像をLCD10に表示させ、ユーザがパネル操作によって指定した撮像画像上の点を開始点として取得してもよい。変形例の開始点取得処理を、図16を参照して説明する。   In the first embodiment, the position of the mark drawn by the user on the workpiece 34 is set as the start point. However, the start point may be acquired by another method. For example, the sewing machine 1 may display a captured image obtained by imaging the workpiece on the LCD 10 and acquire a point on the captured image designated by the user through a panel operation as a start point. The start point acquisition process of a modification is demonstrated with reference to FIG.

図16に示すように、変形例の開始点取得処理ではまず、刺繍枠32に挟まれた被加工物34が撮像される(S205)。次に、視点移動の指示があるか否かが判断される(S215)。視点移動の指示は、撮像画像を任意の視点から見た仮想画像に変換して、LCD10に表示させることを指示する。図2に示すように、イメージセンサ50は、針板80を上部から撮像する位置に取り付けられている。つまり、針板80に対して、上(Z軸のマイナス方向)に視点がある。視点移動の指示は、この視点を、例えば針板80の右斜め上に変更し、右斜め上から被加工物34が撮像された視点変更画像に撮像画像を加工することを指示する。視点移動の指示は、例えば、変更後の視点とともに、パネル操作によって入力される。視点移動の指示がある場合には(S215:Yes)、画像加工処理が実行される(S225)。画像加工処理では、イメージセンサ50によって撮像された撮像画像を加工し、S215で指示された視点からの仮想画像に変換する処理が実行される。画像加工処理の詳細を、図17を参照して説明する。   As shown in FIG. 16, in the start point acquisition process of the modification, first, the workpiece 34 sandwiched between the embroidery frame 32 is imaged (S205). Next, it is determined whether there is an instruction to move the viewpoint (S215). The instruction to move the viewpoint instructs that the captured image is converted into a virtual image viewed from an arbitrary viewpoint and displayed on the LCD 10. As shown in FIG. 2, the image sensor 50 is attached at a position where the needle plate 80 is imaged from above. In other words, the viewpoint is on the needle plate 80 (in the negative direction of the Z axis). The instruction to move the viewpoint instructs to change the viewpoint to, for example, the upper right side of the needle plate 80 and to process the captured image into the viewpoint changed image in which the workpiece 34 is captured from the upper right side. The instruction to move the viewpoint is input by a panel operation together with the changed viewpoint, for example. If there is an instruction to move the viewpoint (S215: Yes), image processing is executed (S225). In the image processing process, a process is performed in which the captured image captured by the image sensor 50 is processed and converted into a virtual image from the viewpoint instructed in S215. Details of the image processing will be described with reference to FIG.

画像加工処理の説明において、移動させた視点の座標系(図示せず)(以下、「移動視点座標系」と言う。)の点p'の三次元座標をMcm(Xcm,Ycm,Zcm)とする。移動視点座標系の視点変更画像上の点p'の二次元座標を(ucm,vcm)とする。ワールド座標系の点Pの三次元座標M(X,Y,Z)を移動視点座標系の点p'の三次元座標Mcm(Xcm,Ycm,Zcm)に変換する際には、Rw2(3×3の回転行列),tw2(3×1の並進ベクトル)が用いられる。これらの行列式は、移動先の視点がワールド座標系100のどの点に該当するかに基づいて決定される。移動視点座標系の三次元座標Mcm(Xcm,Ycm,Zcm)を、画像座標系200の三次元座標M(X,Y,Z)に変換する行列式を、R21(3×3の回転行列),t21(3×1の並進ベクトル)とする。 In the description of the image processing, the three-dimensional coordinates of the point p ′ in the coordinate system (not shown) of the moved viewpoint (hereinafter referred to as “moving viewpoint coordinate system”) are represented by M cm (X cm , Y cm , Z cm ). Let the two-dimensional coordinates of the point p ′ on the viewpoint change image in the moving viewpoint coordinate system be (u cm , v cm ). The three-dimensional coordinates M w (X w , Y w , Z w ) of the point P in the world coordinate system are converted into the three-dimensional coordinates M cm (X cm , Y cm , Z cm ) of the point p ′ in the moving viewpoint coordinate system. In this case, R w2 (3 × 3 rotation matrix) and t w2 (3 × 1 translation vector) are used. These determinants are determined based on which point in the world coordinate system 100 the destination viewpoint corresponds to. A determinant for converting the three-dimensional coordinates M cm (X cm , Y cm , Z cm ) of the moving viewpoint coordinate system into the three-dimensional coordinates M c (X c , Y c , Z c ) of the image coordinate system 200 is R 21 (3 × 3 rotation matrix) and t 21 (3 × 1 translation vector).

図17に示すように、画像加工処理ではまず、行列式R21,t21が算出され、行列式R21,t21がRAM63に記憶される(S510)。Rと、Rw2と、R21と、tと、tw2と、t21とには、次の関係が成り立つ。「M=R×M+t(ワールド座標系100から画像座標系200へ)」と、「Mcm=Rw2×M+tw2(ワールド座標系100から移動視点座標系へ)」と、「M=R21×Mcm+t21(移動視点座標系から画像座標系200へ)」とである。これらの式から、「R21=R×Rw2 」と、「t21=−R×Rw2 ×tw2+t」とが得られる。Rと、Rw2と、tとtw2とはすでに算出された固定値であるので、R21,t21は一意的に決定される。 As shown in FIG. 17, in the image processing, first, determinants R 21 and t 21 are calculated, and the determinants R 21 and t 21 are stored in the RAM 63 (S510). And R w, and R w2, and R 21, and t w, and t w2, to and t 21, the following relationship is established. “M c = R w × M w + t w (from the world coordinate system 100 to the image coordinate system 200)” and “M cm = R w2 × M w + t w2 (from the world coordinate system 100 to the moving viewpoint coordinate system)” And “M c = R 21 × M cm + t 21 (from the moving viewpoint coordinate system to the image coordinate system 200)”. From these expressions, “R 21 = R w × R w2 T ” and “t 21 = −R w × R w2 T × t w2 + t w ” are obtained. And R w, and R w2, since the t w and t w2 is already fixed value calculated, R 21, t 21 is uniquely determined.

次に、視点変更画像上の点p'の二次元座標(ucm,vcm)に基づき、点p'が撮像画像上の点pに変換された場合の二次元座標(u,v)が算出され、二次元座標(ucm,vcm)と二次元座標(u,v)との対応がRAM63に記憶される(S520)。S520の処理は、視点変更画像のすべての画素について実施され、撮像画像の画素(u,v)と、視点変更画像の画素(ucm,vcm)との対応関係がRAM63に記憶される。具体的には、まず、視点変更画像上の点p'の二次元座標(ucm,vcm)に基づき、移動視点座標系の正規化画像上の点p'の二次元座標(x",y")が算出される。二次元座標(x",y")の算出には、内部パラメータであるX軸焦点距離fxと、Y軸焦点距離fyと、X軸主点座標cxと、Y軸主点座標cyとが用いられる。具体的には、二次元座標(x",y")は、「x"=(ucm−cx)/fx」と、「y"=(vcm−cy)/fy」とによって算出される。次に、移動視点座標系の正規化画像上の点p'の二次元座標(x",y")にレンズの歪みを加味した二次元座標(x',y')が算出され、二次元座標(x',y')がRAM63に記憶される。二次元座標(x',y')の算出には、内部パラメータである第一歪み係数k及び第二歪み係数kが用いられる。具体的には、二次元座標(x',y')は、「x'=x"−x"×(1+k×r+k×r)」と、「y'=y"−y"×(1+k×r+k×r)」とによって算出される。なお、「r=x'+y'」である。 Next, based on the two-dimensional coordinates (u cm , v cm ) of the point p ′ on the viewpoint change image, the two-dimensional coordinates (u c , v c ) when the point p ′ is converted to the point p on the captured image. ) Is calculated, and the correspondence between the two-dimensional coordinates (u cm , v cm ) and the two-dimensional coordinates (u c , v c ) is stored in the RAM 63 (S520). The process of S520 is performed for all the pixels of the viewpoint change image, and the correspondence relationship between the pixel (u c , v c ) of the captured image and the pixel (u cm , v cm ) of the viewpoint change image is stored in the RAM 63. The Specifically, first, based on the two-dimensional coordinates (u cm , v cm ) of the point p ′ on the viewpoint change image, the two-dimensional coordinates (x 2 ”of the point p ′ on the normalized image of the moving viewpoint coordinate system are used. , Y 2 ″) is calculated. For the calculation of the two-dimensional coordinates (x 2 ″, y 2 ″), the X-axis focal length fx, the Y-axis focal length fy, the X-axis principal point coordinate cx, and the Y-axis principal point coordinate cy are internal parameters. Is used. Specifically, the two-dimensional coordinates (x 2 ″, y 2 ″) are “x 2 ” = (u cm −cx) / fx ”and“ y 2 ”= (v cm −cy) / fy”. Is calculated by Next, two-dimensional coordinates (x 2 ′, y 2 ′) are calculated by adding lens distortion to the two-dimensional coordinates (x 2 ″, y 2 ″) of the point p ′ on the normalized image in the moving viewpoint coordinate system. Then, the two-dimensional coordinates (x 2 ′, y 2 ′) are stored in the RAM 63. For calculation of the two-dimensional coordinates (x 2 ′, y 2 ′), the first distortion coefficient k 1 and the second distortion coefficient k 2 that are internal parameters are used. Specifically, the two-dimensional coordinates (x 2 ′, y 2 ′) are “x 2 ′ = x 2 ” −x 2 ”× (1 + k 1 × r 2 + k 2 × r 4 )” and “y 2 '= Y 2 "-y 2 " × (1 + k 1 × r 2 + k 2 × r 4 ) ”. Note that “r 2 = x 22 + y 22 ”.

次に、移動視点座標系の正規化画像上の点p'の二次元座標(x',y')から移動視点座標系の点p'の三次元座標Mcm(Xcm,Ycm,Zcm)が算出され、三次元座標Mcm(Xcm,Ycm,Zcm)がRAM63に記憶される。三次元座標Mcm(Xcm,Ycm,Zcm)は、次の関係式を用いて算出される。Xcm,Ycmについて、「Xcm=x'×Zcm」,「Ycm=y'×Zcm」である。さらに、ミシンベッド2の上面をワールド座標系100のXY平面としているので、「Mcm=Rw2×M+tw2」においてZ=0とする。そして、連立方程式の解が算出されることによって、移動視点座標系の点p'の三次元座標Mcm(Xcm,Ycm,Zcm)が算出される。 Next, the three-dimensional coordinates M cm (X cm , Y cm ) of the point p ′ of the moving viewpoint coordinate system from the two-dimensional coordinates (x 2 ′, y 2 ′) of the point p ′ on the normalized image of the moving viewpoint coordinate system. , Z cm ) and the three-dimensional coordinates M cm (X cm , Y cm , Z cm ) are stored in the RAM 63. The three-dimensional coordinates M cm (X cm , Y cm , Z cm ) are calculated using the following relational expression. Regarding X cm and Y cm, they are “X cm = x 2 ′ × Z cm ” and “Y cm = y 2 ′ × Z cm ”. Furthermore, since the upper surface of the sewing machine bed 2 is the XY plane of the world coordinate system 100, Z w = 0 in “M cm = R w2 × M w + t w2 ”. Then, by calculating the solution of the simultaneous equations, the three-dimensional coordinates M cm (X cm , Y cm , Z cm ) of the point p ′ in the moving viewpoint coordinate system are calculated.

次に、移動視点座標系の点p'の三次元座標Mcm(Xcm,Ycm,Zcm)に基づき、点p'が画像座標系200の点pに変換された場合の三次元座標M(X,Y,Z)が算出され、三次元座標M(X,Y,Z)がRAM63に記憶される。三次元座標M(X,Y,Z)は、式「M=R21×Mcm+t21」にMcm(Xcm,Ycm,Zcm)が代入され算出される。次に、画像座標系200の点pの三次元座標M(X,Y,Z)に基づき、画像座標系200の正規化画像上の点pの二次元座標(x',y')が算出され、三次元座標Mcm(Xcm,Ycm,Zcm)はRAM63に記憶される。二次元座標(x',y')は、「x'=x/z」と、「y'=y/z」とによって算出される。次に、レンズの歪みが加味された二次元座標(x",y")が算出され、二次元座標(x",y")はRAM63に記憶される。二次元座標(x",y")は、「x"=x'×(1+k×r+k×r)」と、「y"=y'×(1+k×r+k×r)」とによって算出される。なお、「r=x'+y'」である。次に、画像座標系200の正規化画像上の点pの二次元座標(x",y")に基づき、画像座標系200の撮像画像上の点pの二次元座標(u,v)が算出され、二次元座標(u,v)はRAM63に記憶される。二次元座標(u,v)は、「u=fx×x"+cx」と、「v=fy×y"+cy」とによって算出される。 Next, the three-dimensional coordinates when the point p ′ is converted to the point p of the image coordinate system 200 based on the three-dimensional coordinates M cm (X cm , Y cm , Z cm ) of the point p ′ of the moving viewpoint coordinate system. M c (X c , Y c , Z c ) is calculated, and the three-dimensional coordinates M c (X c , Y c , Z c ) are stored in the RAM 63. The three-dimensional coordinates M c (X c , Y c , Z c ) are calculated by substituting M cm (X cm , Y cm , Z cm ) into the formula “M c = R 21 × M cm + t 21 ”. Next, based on the three-dimensional coordinates M c (X c , Y c , Z c ) of the point p in the image coordinate system 200, the two-dimensional coordinates (x 1 ′, x y 1 ′) is calculated, and the three-dimensional coordinates M cm (X cm , Y cm , Z cm ) are stored in the RAM 63. The two-dimensional coordinates (x 1 ′, y 1 ′) are calculated by “x 1 ′ = x 1 / z 1 ” and “y 1 ′ = y 1 / z 1 ”. Then, the two-dimensional coordinates which lens distortion is taken into account (x 1 ", y 1" ) is calculated, two-dimensional coordinates (x 1 ", y 1" ) is stored in the RAM 63. The two-dimensional coordinates (x 1 ″, y 1 ″) are “x 1 ” = x 1 ′ × (1 + k 1 × r 2 + k 2 × r 4 ) ”and“ y 1 ”= y 1 ′ × (1 + k 1). × r 2 + k 2 × r 4 ) ”. Note that “r 2 = x 12 + y 12 ”. Next, based on the two-dimensional coordinates (x 1 ″, y 1 ″) of the point p on the normalized image of the image coordinate system 200, the two-dimensional coordinates (u c , v c ) is calculated, and the two-dimensional coordinates (u c , v c ) are stored in the RAM 63. The two-dimensional coordinates (u c , v c ) are calculated by “u c = fx × x 1 ” + cx ”and“ v c = fy × y 1 ”+ cy”.

次に、RAM63に記憶された、撮像画像の画素(u,v)と、視点変更画像の画素(ucm,vcm)との対応関係に基づき、撮像画像から視点変更画像が作成され、作成された視点変更画像がRAM63に記憶される(S530)。次に、画像加工処理は終了する。 Next, a viewpoint change image is created from the captured image based on the correspondence relationship between the pixel (u c , v c ) of the captured image and the pixel (u cm , v cm ) of the viewpoint changed image stored in the RAM 63. The generated viewpoint change image is stored in the RAM 63 (S530). Next, the image processing process ends.

引き続き、図16を参照して変形例の開始点取得処理について説明する。S215において、視点移動の指示がない場合(S215:No)、又はS225の次に、S205で撮像された撮像画像又はS225で作成された視点変更画像がLCD10に表示される(S235)。次に、開始点を指定する指示があるか否かが判断される(S245)。LCD10に表示された撮像画像又は視点変更画像上の点が、パネル操作によって選択された場合に、開始点を指定する指示があると判断される。指示がない場合には指示があるまで待機される(S245:No)。指示がある場合には(S245:Yes)、三次元座標算出処理が実行される(S250)。三次元座標算出処理では、S245で指示された開始点のワールド座標系100の三次元座標が算出される。S235で視点変更画像が表示された場合には、S225で求められた撮像画像の画素(u,v)と、視点変更画像の画素(ucm,vcm)との対応関係に基づき、画像座標系200の二次元座標を特定した後、三次元座標算出処理が実行される。三次元座標算出処理は、第1の実施形態と同様であるので説明を省略する。次に、開始点取得処理は終了する。 Next, the start point acquisition process of the modification will be described with reference to FIG. In S215, when there is no instruction to move the viewpoint (S215: No), or after S225, the captured image captured in S205 or the viewpoint change image created in S225 is displayed on the LCD 10 (S235). Next, it is determined whether or not there is an instruction to specify a start point (S245). When a point on the captured image or viewpoint change image displayed on the LCD 10 is selected by a panel operation, it is determined that there is an instruction to specify the start point. If there is no instruction, the process waits until there is an instruction (S245: No). If there is an instruction (S245: Yes), a three-dimensional coordinate calculation process is executed (S250). In the three-dimensional coordinate calculation process, the three-dimensional coordinates of the world coordinate system 100 at the start point specified in S245 are calculated. When the viewpoint change image is displayed in S235, based on the correspondence between the pixel (u c , v c ) of the captured image obtained in S225 and the pixel (u cm , v cm ) of the viewpoint change image, After specifying the two-dimensional coordinates of the image coordinate system 200, a three-dimensional coordinate calculation process is executed. Since the three-dimensional coordinate calculation process is the same as that of the first embodiment, the description thereof is omitted. Next, the start point acquisition process ends.

以上のように、変形例の開始点取得処理が実行される。変形例の開始点取得処理のS225において、第1のパラメータを用いて、撮像画像を加工して視点変更画像を作成するCPU61は、本発明の画像加工手段として機能する。   As described above, the start point acquisition process of the modification is executed. In S225 of the start point acquisition process of the modification, the CPU 61 that processes the captured image to create the viewpoint change image using the first parameter functions as the image processing unit of the present invention.

ミシン1は、第1のパラメータを用いて、イメージセンサ50で撮像された画像を加工し、視点変更画像を作成することができる。画像加工処理では、撮像画像に基づき、イメージセンサ50に固有の特性やイメージセンサ50の設置状態の影響を排除した視点変更画像が作成される。ミシン1が、視点変更画像上の点の三次元座標を求める際には、撮像画像の画素と、視点変更画像の画素との対応関係に基づき、画像座標系200の二次元座標を特定した後、三次元座標算出処理が実行される。三次元座標算出処理では、第1のパラメータを用いて、ワールド座標系100(刺繍座標系300)の三次元座標が算出される。したがって、ミシン1は、変形例の開始点取得処理によって算出されたワールド座標系100の三次元座標に基づき、刺繍枠32をユーザが指示した位置に移動させることができる。   The sewing machine 1 can process the image picked up by the image sensor 50 using the first parameter to create a viewpoint change image. In the image processing, a viewpoint-changed image is created that excludes the characteristics inherent to the image sensor 50 and the influence of the installation state of the image sensor 50 based on the captured image. When the sewing machine 1 obtains the three-dimensional coordinates of the point on the viewpoint change image, after specifying the two-dimensional coordinates of the image coordinate system 200 based on the correspondence between the pixel of the captured image and the pixel of the viewpoint change image. The three-dimensional coordinate calculation process is executed. In the three-dimensional coordinate calculation process, the three-dimensional coordinates of the world coordinate system 100 (embroidery coordinate system 300) are calculated using the first parameter. Therefore, the sewing machine 1 can move the embroidery frame 32 to the position designated by the user based on the three-dimensional coordinates of the world coordinate system 100 calculated by the start point acquisition process of the modification.

ところで、第1の実施形態のパラメータ算出処理では、ミシン1は、刺繍座標系300をワールド座標系100とする第1のパラメータを算出していた。しかし、例えば、移動条件記憶エリア644に記憶されている移動条件が適切に設定されていない等の場合には、刺繍枠32は、指示データによって指示される量だけ移動しない。より具体的には、加工データによって、刺繍枠32を(X,Y)=(5,0)移動させることが指示されても、実際には、刺繍枠32が(X,Y)=(4.5,0)移動される場合がある。このような場合、刺繍座標系300に基づき画像座標系200が設定されると、例えば、撮像画像上の2点間の現実の距離が的確に算出されないという問題が生じる。このような場合、例えば、第2の実施形態のように、刺繍座標系300とワールド座標系100とはそれぞれ別に設定されていてもよい。   By the way, in the parameter calculation process of the first embodiment, the sewing machine 1 calculates the first parameter with the embroidery coordinate system 300 as the world coordinate system 100. However, for example, when the movement condition stored in the movement condition storage area 644 is not set appropriately, the embroidery frame 32 does not move by the amount indicated by the instruction data. More specifically, even if it is instructed to move the embroidery frame 32 by (X, Y) = (5, 0) by the processing data, the embroidery frame 32 is actually (X, Y) = (4 .5,0) May be moved. In such a case, when the image coordinate system 200 is set based on the embroidery coordinate system 300, for example, there arises a problem that the actual distance between two points on the captured image cannot be accurately calculated. In such a case, for example, as in the second embodiment, the embroidery coordinate system 300 and the world coordinate system 100 may be set separately.

第2の実施形態では、画像座標系200とワールド座標系100とを対応付ける処理は、公知の校正処理に従って別途実行される。一方、画像座標系200と刺繍座標系300とを対応付ける第2のパラメータは、第1の実施形態の実施形態と同様な処理によって算出される。第2のパラメータは、第1のパラメータと同様に算出されるが、画像座標系200又はワールド座標系100の座標を刺繍座標系300の座標に変換する処理にのみ用いられる。すなわち、第2のパラメータは、画像座標系200の座標をワールド座標系100の座標に変換する処理、及びワールド座標系100の座標を画像座標系200の座標に変換する処理には用いられない。例えば、ワールド座標系100の座標で示された加工データによって、刺繍枠32を所定量移動させることが指示されている場合に、ミシン1は、第2のパラメータを用いて、加工データを一旦刺繍座標系300のデータに変換させる。そして、ミシン1は、刺繍座標系300に変換された加工データに基づき、刺繍枠32を移動させる。このようにすれば、移動条件記憶エリア644に記憶されている移動条件が適切に設定されていない場合にも、ミシン1は、刺繍枠32をユーザが意図する位置に移動させることができる。第2の実施形態において、第2のパラメータを算出するCPU61は、本発明のパラメータ算出手段として機能する。   In the second embodiment, the process of associating the image coordinate system 200 and the world coordinate system 100 is performed separately according to a known calibration process. On the other hand, the second parameter for associating the image coordinate system 200 and the embroidery coordinate system 300 is calculated by the same process as that of the first embodiment. The second parameter is calculated in the same manner as the first parameter, but is used only for processing for converting the coordinates of the image coordinate system 200 or the world coordinate system 100 into the coordinates of the embroidery coordinate system 300. That is, the second parameter is not used for the process of converting the coordinates of the image coordinate system 200 into the coordinates of the world coordinate system 100 and the process of converting the coordinates of the world coordinate system 100 into the coordinates of the image coordinate system 200. For example, when it is instructed to move the embroidery frame 32 by a predetermined amount according to the processing data indicated by the coordinates of the world coordinate system 100, the sewing machine 1 temporarily embroiderys the processing data using the second parameter. It is converted into data of the coordinate system 300. The sewing machine 1 moves the embroidery frame 32 based on the processing data converted into the embroidery coordinate system 300. In this way, the sewing machine 1 can move the embroidery frame 32 to a position intended by the user even when the movement conditions stored in the movement condition storage area 644 are not appropriately set. In the second embodiment, the CPU 61 that calculates the second parameter functions as a parameter calculation unit of the present invention.

なお、本発明の刺繍データ作成装置は、上記した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加えてもよい。例えば、以下の(A)〜(I)の変形を適宜加えてもよい。   The embroidery data creation device of the present invention is not limited to the above-described embodiment, and various modifications may be made without departing from the gist of the present invention. For example, the following modifications (A) to (I) may be added as appropriate.

(A)ミシン1が備える撮像手段は、CCDカメラであってもよいし、他の撮像素子であってもよい。撮像手段としてのイメージセンサ50は、ミシンベッド2上を撮像可能であればよく、その取り付け位置は、適宜変更可能である。   (A) The image pickup means provided in the sewing machine 1 may be a CCD camera or another image pickup device. The image sensor 50 as the imaging means may be any as long as it can capture the image on the sewing bed 2, and the mounting position thereof can be changed as appropriate.

(B)特徴点が形成される被加工物は、白色の紙の他、例えば、白色以外の色の紙であってもよい。また例えば、特徴点が形成される被加工物は、樹脂や加工布であってもよい。   (B) The workpiece on which the feature points are formed may be paper other than white, for example, in addition to white paper. For example, the workpiece on which the feature points are formed may be a resin or a work cloth.

(C)被加工物に形成される特徴点301は、上記実施形態で例示した縫針7によって形成される貫通孔に限定されない。例えば、被加工物に形成される特徴点は、マーカーで描いた点であってもよい。この場合、マーカーは、針棒6の下端に固定される。マーカーの上下方向の取り付け位置は、針棒6が最下端に移動したときに、マーカーのペン先が被加工物に接触する位置とする。このようにすれば、ミシン1は針棒6を上下動させることによって、針落ち点に対応した特徴点を描くことができる。特徴点を精度良く抽出する観点から、マーカーの色は、被加工物とのコントラストがある色が好ましい。他の例では、被加工物に形成される特徴点は、縫目であってもよい。被加工物を刺繍模様を形成する加工布と同じ種類の加工布とし、特徴点を、刺繍模様を形成するのに用いる糸で形成された縫目とした場合、変形例のミシンは、布の厚さや縮み量と考慮してパラメータを求めることができる。また、特徴点として被加工物に貫通孔を形成させる場合、被加工物が撮像される際に、被加工物の下部に、被加工物との明暗の差が比較的大きいシート状の部材を配置してもよい。このようにすれば、撮像画像には、貫通孔が形成されている部分にはシート状の部材が写る。このため、撮像画像中の被加工物と貫通孔との明暗の差を大きくすることができる。   (C) The feature point 301 formed on the workpiece is not limited to the through hole formed by the sewing needle 7 exemplified in the above embodiment. For example, the feature point formed on the workpiece may be a point drawn with a marker. In this case, the marker is fixed to the lower end of the needle bar 6. The attachment position of the marker in the vertical direction is a position where the pen tip of the marker contacts the workpiece when the needle bar 6 moves to the lowest end. In this way, the sewing machine 1 can draw feature points corresponding to the needle drop points by moving the needle bar 6 up and down. From the viewpoint of accurately extracting feature points, the color of the marker is preferably a color having a contrast with the workpiece. In another example, the feature point formed on the workpiece may be a stitch. When the workpiece is a work cloth of the same type as the work cloth that forms the embroidery pattern, and the feature point is a stitch formed by the thread used to form the embroidery pattern, the sewing machine of the modified example has The parameter can be obtained in consideration of the thickness and the amount of shrinkage. In addition, when forming a through-hole in the work piece as a feature point, when the work piece is imaged, a sheet-like member having a relatively large difference in brightness from the work piece is provided below the work piece. You may arrange. If it does in this way, a sheet-like member will be reflected in a portion in which a penetration hole is formed in a picked-up image. For this reason, the difference in brightness between the workpiece and the through hole in the captured image can be increased.

(D)上記実施形態では、特徴点301はイメージセンサ50の撮像可能範囲104内に規則的に形成されていた。しかし、特徴点の配列は、適宜変更可能である。特徴点が撮像可能範囲内に規則的に配置される他の例としては、例えば、特徴点は撮像可能範囲104内に、放射線状に配置されていてもよい。また例えば、特徴点301は、不規則に形成されていてもよい。ただし、パラメータを精度良く算出する観点から、特徴点301は、図10のS60において刺繍枠32を移動させた状態の撮像可能範囲内に、5つ以上設けられることが好ましい。   (D) In the above embodiment, the feature points 301 are regularly formed within the imageable range 104 of the image sensor 50. However, the arrangement of the feature points can be changed as appropriate. As another example in which the feature points are regularly arranged within the imageable range, for example, the feature points may be arranged radially within the imageable range 104. For example, the feature points 301 may be irregularly formed. However, from the viewpoint of calculating the parameters with high accuracy, it is preferable that five or more feature points 301 are provided within the imageable range when the embroidery frame 32 is moved in S60 of FIG.

(E)ミシン1は、第2のパラメータを用いて、刺繍座標系300を校正してもよい。具体的には、ミシン1は、第2のパラメータを用い、刺繍座標系300がワールド座標系100と一致するように、移動条件記憶エリア644に記憶されている移動条件を修正してもよい。このようにした場合には、第1の実施形態と同様に、刺繍座標系300に基づき画像座標系200が設定されることになる。したがって、変形例(E)のミシン1は、刺繍枠32をユーザが意図した位置に移動させることができる。   (E) The sewing machine 1 may calibrate the embroidery coordinate system 300 using the second parameter. Specifically, the sewing machine 1 may correct the movement condition stored in the movement condition storage area 644 so that the embroidery coordinate system 300 matches the world coordinate system 100 using the second parameter. In this case, the image coordinate system 200 is set based on the embroidery coordinate system 300 as in the first embodiment. Therefore, the sewing machine 1 of the modified example (E) can move the embroidery frame 32 to a position intended by the user.

(F)第1又は第2のパラメータを算出する手順については、適宜変更可能である。例えば、ミシン1は、図10のS80において、ハフ変換を用いて特徴点の抽出を実行していたが、他の手法を用いて特徴点を抽出してもよい。ミシン1は、図10のS90において、既知の二次元座標とS80で算出した二次元座標とを用いて、特徴点座標と、基準座標とを対応付けていたが、他の方法を用いてもよい。例えば、ミシン1は、形状が互いに異なる特徴点(例えば、丸と四角など)を複数形成する場合には、特徴点の形状に応じて特徴点座標と基準座標とを対応付ける処理を実行してもよい。既知の二次元座標及び基準座標はパラメータ算出処理が実行される前に決定されていればよく、既知の二次元座標及び基準座標の算出方法は適宜変更可能である。   (F) The procedure for calculating the first or second parameter can be changed as appropriate. For example, although the sewing machine 1 has extracted feature points using Hough transform in S80 of FIG. 10, the feature points may be extracted using other methods. The sewing machine 1 associates the feature point coordinates and the reference coordinates using the known two-dimensional coordinates and the two-dimensional coordinates calculated in S80 in S90 of FIG. 10, but other methods may be used. Good. For example, when forming a plurality of feature points having different shapes (for example, a circle and a square), the sewing machine 1 may execute a process of associating the feature point coordinates with the reference coordinates according to the shape of the feature points. Good. The known two-dimensional coordinates and reference coordinates need only be determined before the parameter calculation process is executed, and the known two-dimensional coordinates and reference coordinates calculation method can be changed as appropriate.

(G)刺繍座標系と画像座標系とは、パラメータ算出処理によって算出されたパラメータによって対応付けられていればよく、各座標系の設定方法は適宜変更可能である。例えば、ミシン1の上下方向の上側がZ軸のプラスとなるように、刺繍座標系が設定されてもよい。   (G) The embroidery coordinate system and the image coordinate system only need to be associated with each other by the parameter calculated by the parameter calculation process, and the setting method of each coordinate system can be changed as appropriate. For example, the embroidery coordinate system may be set so that the upper side in the vertical direction of the sewing machine 1 is positive on the Z axis.

(H)刺繍装置30は、移動手段としてX軸モータ81及びY軸モータ82を備えていたが、いずれかであってもよい。また、刺繍装置30は、X軸モータ81及びY軸モータ82の少なくともいずれかに加え、Z軸方向に刺繍枠32を移動させるZ軸モータを備えていてもよい。また、刺繍装置30は、保持部材として刺繍枠32を備えていたが、他の保持部材を備えてもよい。   (H) Although the embroidery device 30 includes the X-axis motor 81 and the Y-axis motor 82 as moving means, any one of them may be used. The embroidery device 30 may include a Z-axis motor that moves the embroidery frame 32 in the Z-axis direction in addition to at least one of the X-axis motor 81 and the Y-axis motor 82. The embroidery device 30 includes the embroidery frame 32 as a holding member, but may include other holding members.

(I)第1又は第2のパラメータの利用する処理として、二次元座標算出処理と、三次元座標算出処理と、画像加工処理とを例示したが、その他の処理にパラメータが用いられてもよい。また、二次元座標算出処理と、三次元座標算出処理と、画像加工処理とのそれぞれは、必要に応じて処理を簡略化したり、公知の他の技術を利用したりして実行されてもよい。   (I) Although the two-dimensional coordinate calculation process, the three-dimensional coordinate calculation process, and the image processing process are exemplified as the process used by the first or second parameter, the parameter may be used for other processes. . In addition, each of the two-dimensional coordinate calculation process, the three-dimensional coordinate calculation process, and the image processing process may be executed by simplifying the process or using another known technique as necessary. .

1 ミシン
30 刺繍装置
32 刺繍枠
34 被加工物
50 イメージセンサ
61 CPU
79 ミシンモータ
81 X軸モータ
82 Y軸モータ
104 撮像可能範囲
200 画像座標系
300 刺繍座標系
301 特徴点
1 sewing machine 30 embroidery device 32 embroidery frame 34 work piece 50 image sensor 61 CPU
79 Sewing machine motor 81 X-axis motor 82 Y-axis motor 104 Imageable range 200 Image coordinate system 300 Embroidery coordinate system 301 Features

Claims (7)

被加工物を保持する保持部材と、
前記保持部材を移動させる移動手段と、
前記被加工物に複数の特徴点を形成することを指示する加工データを取得する加工データ取得手段と、
前記加工データ取得手段によって取得された前記加工データに従って、前記移動手段によって前記保持部材を移動させ、前記保持部材に保持された前記被加工物に前記複数の特徴点を形成させる特徴点形成手段と、
ミシンベッド上を撮像可能な位置に配置されるとともに、前記複数の特徴点が形成された前記被加工物を撮像する撮像手段と、
前記撮像手段によって撮像された前記被加工物の画像から、前記複数の特徴点を抽出し、抽出された前記複数の特徴点のそれぞれについて、二次元座標を特徴点座標として算出する特徴点座標算出手段と、
予め計測された前記複数の特徴点の三次元座標である基準座標を取得する基準座標取得手段と、
前記基準座標取得手段によって取得された前記基準座標と、前記特徴点座標算出手段によって算出された前記特徴点座標とを対応付ける対応付け手段と、
前記対応付け手段による対応付けの結果に基づいて、前記移動手段の座標系と前記撮像手段の座標系とを対応づけるパラメータを算出するパラメータ算出手段と
を備えることを特徴とするミシン。
A holding member for holding a workpiece;
Moving means for moving the holding member;
Processing data acquisition means for acquiring processing data for instructing to form a plurality of feature points on the workpiece;
Feature point forming means for moving the holding member by the moving means according to the processing data acquired by the processing data acquiring means and forming the plurality of feature points on the workpiece held by the holding member; ,
An image pickup unit that is arranged at a position where an image can be picked up on the sewing bed and that picks up an image of the workpiece on which the plurality of feature points are formed,
Feature point coordinate calculation for extracting the plurality of feature points from the image of the workpiece imaged by the imaging means and calculating two-dimensional coordinates as feature point coordinates for each of the extracted feature points Means,
Reference coordinate acquisition means for acquiring reference coordinates which are three-dimensional coordinates of the plurality of feature points measured in advance;
Associating means for associating the reference coordinates acquired by the reference coordinate acquiring means with the feature point coordinates calculated by the feature point coordinate calculating means;
A sewing machine comprising: parameter calculation means for calculating a parameter for associating the coordinate system of the moving means and the coordinate system of the imaging means based on a result of the association by the association means.
下端部に縫針を装着した針棒を、前記加工データに従って上下方向に駆動させる針棒駆動手段を備え、
前記特徴点形成手段は、
前記加工データ取得手段によって取得された前記加工データに従って、前記移動手段によって前記保持部材を移動させるとともに、前記針棒駆動手段を駆動させて、
前記縫針によって前記被加工物に複数の貫通孔を前記複数の特徴点として形成させることを特徴とする請求項1に記載のミシン。
Needle bar driving means for driving a needle bar with a sewing needle attached to the lower end in the vertical direction according to the processing data;
The feature point forming means includes:
In accordance with the processing data acquired by the processing data acquisition means, the holding member is moved by the moving means and the needle bar driving means is driven,
The sewing machine according to claim 1, wherein a plurality of through holes are formed as the plurality of characteristic points in the workpiece by the sewing needle.
前記被加工物は白い紙であることを特徴とする請求項1又は2に記載のミシン。   The sewing machine according to claim 1 or 2, wherein the workpiece is white paper. 前記複数の特徴点は、前記撮像手段の撮像可能範囲内の前記被加工物に規則的に配列されることを特徴とする請求項1から3のいずれかに記載のミシン。   The sewing machine according to any one of claims 1 to 3, wherein the plurality of feature points are regularly arranged on the workpiece within an imageable range of the imaging unit. 前記パラメータ算出手段によって算出された前記パラメータを用いて、前記撮像手段によって撮像された画像を加工する画像加工手段を備えたことを特徴とする請求項1から4のいずれかに記載のミシン。   The sewing machine according to any one of claims 1 to 4, further comprising an image processing unit that processes an image captured by the imaging unit using the parameter calculated by the parameter calculation unit. 前記パラメータ算出手段によって算出された前記パラメータを用いて、前記撮像手段によって撮像された画像上の三次元座標を算出する三次元座標算出手段を備えたことを特徴とする請求項1から5のいずれかに記載のミシン。   6. The apparatus according to claim 1, further comprising: a three-dimensional coordinate calculation unit that calculates a three-dimensional coordinate on an image captured by the imaging unit using the parameter calculated by the parameter calculation unit. The sewing machine according to Crab. 前記パラメータ算出手段によって算出された前記パラメータを用いて、三次元座標で示された点の座標を二次元座標系に投影した点の座標を算出する二次元座標算出手段を備えたことを特徴とする請求項1から6のいずれかに記載のミシン。   Using two-dimensional coordinate calculation means for calculating the coordinates of a point obtained by projecting the coordinates of the point indicated by the three-dimensional coordinates on the two-dimensional coordinate system using the parameter calculated by the parameter calculation means; The sewing machine according to any one of claims 1 to 6.
JP2009154023A 2009-06-29 2009-06-29 Sewing machine Pending JP2011005180A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009154023A JP2011005180A (en) 2009-06-29 2009-06-29 Sewing machine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009154023A JP2011005180A (en) 2009-06-29 2009-06-29 Sewing machine

Publications (1)

Publication Number Publication Date
JP2011005180A true JP2011005180A (en) 2011-01-13

Family

ID=43562554

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009154023A Pending JP2011005180A (en) 2009-06-29 2009-06-29 Sewing machine

Country Status (1)

Country Link
JP (1) JP2011005180A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9885131B2 (en) 2013-11-13 2018-02-06 Brother Kogyo Kabushiki Kaisha Sewing machine
JP2019217010A (en) * 2018-06-20 2019-12-26 Juki株式会社 Sewing machine and sewing method
CN112779680A (en) * 2019-11-06 2021-05-11 Juki株式会社 Image processing device, sewing machine, and image processing method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08110807A (en) * 1995-09-04 1996-04-30 Omron Corp Method and device for automatic calibration
JP2004066323A (en) * 2002-08-08 2004-03-04 Matsushita Electric Ind Co Ltd Positioning working method and positioning working apparatus
JP2007289653A (en) * 2006-03-28 2007-11-08 Brother Ind Ltd Sewing machine and sewing machine capable of embroidery sewing
JP2008073782A (en) * 2006-09-19 2008-04-03 Shibuya Kogyo Co Ltd Apparatus and method for correcting positional shift of machining unit

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08110807A (en) * 1995-09-04 1996-04-30 Omron Corp Method and device for automatic calibration
JP2004066323A (en) * 2002-08-08 2004-03-04 Matsushita Electric Ind Co Ltd Positioning working method and positioning working apparatus
JP2007289653A (en) * 2006-03-28 2007-11-08 Brother Ind Ltd Sewing machine and sewing machine capable of embroidery sewing
JP2008073782A (en) * 2006-09-19 2008-04-03 Shibuya Kogyo Co Ltd Apparatus and method for correcting positional shift of machining unit

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9885131B2 (en) 2013-11-13 2018-02-06 Brother Kogyo Kabushiki Kaisha Sewing machine
JP2019217010A (en) * 2018-06-20 2019-12-26 Juki株式会社 Sewing machine and sewing method
JP7156833B2 (en) 2018-06-20 2022-10-19 Juki株式会社 Sewing machine and sewing method
CN112779680A (en) * 2019-11-06 2021-05-11 Juki株式会社 Image processing device, sewing machine, and image processing method
CN112779680B (en) * 2019-11-06 2023-07-11 Juki株式会社 Image processing device, sewing machine, and image processing method

Similar Documents

Publication Publication Date Title
JP5315705B2 (en) sewing machine
US8091493B2 (en) Sewing machine, and computer-readable storage medium storing sewing machine control program
EP2366824B1 (en) Sewing machine and sewing machine control program
JP2011194042A (en) Sewing machine
JP5141299B2 (en) sewing machine
US8594829B2 (en) Sewing machine and computer program product stored on non-transitory computer-readable medium
JP2014042706A (en) Sewing machine
JP2011161087A (en) Sewing machine
US10597806B2 (en) Sewing machine and non-transitory computer-readable storage medium
US20110282479A1 (en) Sewing machine and non-transitory computer-readable medium storing sewing machine control program
US8594830B2 (en) Computer controlled embroidery sewing machine with image capturing
US9885131B2 (en) Sewing machine
WO2018078958A1 (en) Sewing machine and holding member
JP2015173774A (en) sewing machine
JP2011005180A (en) Sewing machine
JP2009297190A (en) Sewing machine
US10947654B2 (en) Sewing machine
US11286597B2 (en) Sewing machine and sewing method
WO2016129491A1 (en) Cutting device and appliqué sewing method
TW201805502A (en) Sewing machine, embroidery frame distinguishing method, and program
WO2019116603A1 (en) Sewing machine
JP2012192156A (en) Sewing machine
JP2022145797A (en) Sewing machine and sewing method
JP2020156831A (en) Sewing data processing device and sewing machine

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120208

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120214

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120717