(57)【要約】【課題】刺繍枠の移動手段の座標系と、撮像手段の座標系との対応が的確にとれたミシンを提供すること。【解決手段】被加工物を保持部材に保持させた状態で、パラメータ算出処理が実行される。パラメータ算出処理では、加工データが取得される（Ｓ１０）。加工データに従って、保持部材が移動され（Ｓ３０）、保持部材に保持された被加工物に複数の特徴点が形成される（Ｓ４０）。複数の特徴点が形成された被加工物が撮像される（Ｓ７０）。被加工物の画像から、複数の特徴点が抽出され、特徴点座標が算出される（Ｓ８０）。Ｓ８５で取得された基準座標と、特徴点座標とが対応付けられる（Ｓ９０）。対応付けの結果に基づいて、移動手段の座標系と撮像手段の座標系とを対応づけるパラメータが算出される（Ｓ１００）。【選択図】図１０
2011005180.tif 000002
【特許請求の範囲】
【請求項１】
被加工物を保持する保持部材と、
前記保持部材を移動させる移動手段と、
前記被加工物に複数の特徴点を形成することを指示する加工データを取得する加工データ取得手段と、
前記加工データ取得手段によって取得された前記加工データに従って、前記移動手段によって前記保持部材を移動させ、前記保持部材に保持された前記被加工物に前記複数の特徴点を形成させる特徴点形成手段と、
ミシンベッド上を撮像可能な位置に配置されるとともに、前記複数の特徴点が形成された前記被加工物を撮像する撮像手段と、
前記撮像手段によって撮像された前記被加工物の画像から、前記複数の特徴点を抽出し、抽出された前記複数の特徴点のそれぞれについて、二次元座標を特徴点座標として算出する特徴点座標算出手段と、
予め計測された前記複数の特徴点の三次元座標である基準座標を取得する基準座標取得手段と、
前記基準座標取得手段によって取得された前記基準座標と、前記特徴点座標算出手段によって算出された前記特徴点座標とを対応付ける対応付け手段と、
前記対応付け手段による対応付けの結果に基づいて、前記移動手段の座標系と前記撮像手段の座標系とを対応づけるパラメータを算出するパラメータ算出手段と
を備えることを特徴とするミシン。
【請求項２】
下端部に縫針を装着した針棒を、前記加工データに従って上下方向に駆動させる針棒駆動手段を備え、
前記特徴点形成手段は、
前記加工データ取得手段によって取得された前記加工データに従って、前記移動手段によって前記保持部材を移動させるとともに、前記針棒駆動手段を駆動させて、
前記縫針によって前記被加工物に複数の貫通孔を前記複数の特徴点として形成させることを特徴とする請求項１に記載のミシン。
【請求項３】
前記被加工物は白い紙であることを特徴とする請求項１又は２に記載のミシン。
【請求項４】
前記複数の特徴点は、前記撮像手段の撮像可能範囲内の前記被加工物に規則的に配列されることを特徴とする請求項１から３のいずれかに記載のミシン。
【請求項５】
前記パラメータ算出手段によって算出された前記パラメータを用いて、前記撮像手段によって撮像された画像を加工する画像加工手段を備えたことを特徴とする請求項１から４のいずれかに記載のミシン。
【請求項６】
前記パラメータ算出手段によって算出された前記パラメータを用いて、前記撮像手段によって撮像された画像上の三次元座標を算出する三次元座標算出手段を備えたことを特徴とする請求項１から５のいずれかに記載のミシン。
【請求項７】
前記パラメータ算出手段によって算出された前記パラメータを用いて、三次元座標で示された点の座標を二次元座標系に投影した点の座標を算出する二次元座標算出手段を備えたことを特徴とする請求項１から６のいずれかに記載のミシン。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ミシンに関するものであり、詳細には、撮像手段を備えたミシンに関するものである。
【背景技術】
【０００２】
従来、撮像手段を備えたミシンが種々提案されている。例えば、特許文献１に記載のミシンは、撮像手段によって撮影された画像に基づき、基線上に基線の種類に応じた縫目が形成される。具体的には、加工布に描かれた基線が撮像手段によって撮像される。得られた撮像画像が解析され、加工布上の基線の位置と種類とが特定される。特定された基線の位置に刺繍枠が移動され、基線の種類に応じた縫目が基線の位置に形成される。
【０００３】
一般的に、カメラで撮像された画像が解析され、撮像対象物の位置（座標）が取得される装置では、画像が解析される前に、カメラキャリブレーションが行われる。カメラキャリブレーションとは、内部パラメータと、外部パラメータとを算出することである。内部パラメータは、焦点距離や主点座標等のカメラ自身の構成によって決定される。外部パラメータは、カメラの撮像方向等のカメラの設置状態によって決定される。カメラキャリブレーションによって算出されたパラメータを用いることによって、三次元座標上の点（現実の撮像対象物）が二次元座標（撮像画像）上に投影されるべき位置を知ることができる。カメラキャリブレーション（パラメータの算出）の方法については、様々な研究が行われており、例えば、特許文献２に記載の視覚センサの自動キャリブレーション装置が提案されている。上記特許文献１においても、加工布に描かれた基線の位置や太さを正確に特定するためには、撮像手段のキャリブレーションが不可欠である。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−２８９６５３号公報
【特許文献２】特許第３１３８０８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来のミシンでは、撮像手段のキャリブレーションが的確に行われた場合であっても、刺繍枠を移動させる移動手段の座標系と、撮像手段の座標系との対応が的確にとれない場合がある。例えば、刺繍枠の装着不備等によって、移動手段の座標系の二次元座標軸が、撮像手段の座標系の二次元座標軸に対し、傾いてしまう場合がある。このような場合には、例えば、特許文献１に記載のミシンのように、撮像手段によって撮像された画像から、加工布に描かれた基線の位置が特定されても、基線が描かれた位置に刺繍枠を移動させることができない。したがって、ユーザがミシンを使用して、撮像手段で撮像された画像から特定した位置に縫目を形成させる場合に、所望の縫製結果が得られないという問題点があった。
【０００６】
本発明は、上述の問題点を解決するためになされたものであり、刺繍枠の移動手段の座標系と、撮像手段の座標系との対応が的確にとれたミシンを提供することを目的とする。
【課題を解決するための手段】
【０００７】
請求項１に係るミシンは、被加工物を保持する保持部材と、前記保持部材を移動させる移動手段と、前記被加工物に複数の特徴点を形成することを指示する加工データを取得する加工データ取得手段と、前記加工データ取得手段によって取得された前記加工データに従って、前記移動手段によって前記保持部材を移動させ、前記保持部材に保持された前記被加工物に前記複数の特徴点を形成させる特徴点形成手段と、ミシンベッド上を撮像可能な位置に配置されるとともに、前記複数の特徴点が形成された前記被加工物を撮像する撮像手段と、前記撮像手段によって撮像された前記被加工物の画像から、前記複数の特徴点を抽出し、抽出された前記複数の特徴点のそれぞれについて、二次元座標を特徴点座標として算出する特徴点座標算出手段と、予め計測された前記複数の特徴点の三次元座標である基準座標を取得する基準座標取得手段と、前記基準座標取得手段によって取得された前記基準座標と、前記特徴点座標算出手段によって算出された前記特徴点座標とを対応付ける対応付け手段と、前記対応付け手段による対応付けの結果に基づいて、前記移動手段の座標系と前記撮像手段の座標系とを対応づけるパラメータを算出するパラメータ算出手段とを備えている。
【０００８】
請求項２に係るミシンは、請求項１に記載の発明の構成に加え、下端部に縫針を装着した針棒を、前記加工データに従って上下方向に駆動させる針棒駆動手段を備え、前記特徴点形成手段は、前記加工データ取得手段によって取得された前記加工データに従って、前記移動手段によって前記保持部材を移動させるとともに、前記針棒駆動手段を駆動させて、前記縫針によって前記被加工物に複数の貫通孔を前記複数の特徴点として形成させる。
【０００９】
請求項３に係るミシンは、請求項１又は２に記載の発明の構成に加え、前記被加工物は白い紙である。
【００１０】
請求項４に係るミシンは、請求項１から３のいずれかに記載の発明の構成に加え、前記複数の特徴点は、前記撮像手段の撮像可能範囲内の前記被加工物に規則的に配列される。
【００１１】
請求項５に係るミシンは、請求項１から４のいずれかに記載の発明の構成に加え、前記パラメータ算出手段によって算出された前記パラメータを用いて、前記撮像手段によって撮像された画像を加工する画像加工手段を備えている。
【００１２】
請求項６に係るミシンは、請求項１から５のいずれかに記載の発明の構成に加え、前記パラメータ算出手段によって算出された前記パラメータを用いて、前記撮像手段によって撮像された画像上の三次元座標を算出する三次元座標算出手段を備えている。
【００１３】
請求項７に係るミシンは、請求項１から６のいずれかに記載の発明の構成に加え、前記パラメータ算出手段によって算出された前記パラメータを用いて、三次元座標で示された点の座標を二次元座標系に投影した点の座標を算出する二次元座標算出手段を備えている。
【発明の効果】
【００１４】
請求項１に係るミシンでは、移動手段の座標系と撮像手段の座標系とを対応づけるパラメータを算出する。得られたパラメータを用いて、移動手段の座標系と撮像手段の座標系とを対応づけることによって、例えば、撮像手段によって撮像された画像（以下、「撮像画像」と言う。）に基づき特定した位置に縫目が形成されるように、保持部材を移動させることができる。したがって、ユーザがミシンを使用して、保持部材内の指示した位置に縫目を形成させたい場合に、所望の縫製結果が得られる。また、パラメータを算出するための特徴点は、特徴点形成手段によって被加工物に形成される。したがって、パラメータの算出に際しては、特徴点形成手段と被加工物とを用意するのみでよく、簡単にパラメータを算出することができる。
【００１５】
また、請求項２に係るミシンでは、縫針によって被加工物に形成した貫通孔を特徴点とする。即ち、特徴点は、移動手段によって保持部材が移動された位置における針落ち点を示す。このため、請求項１に記載の発明の効果に加え、移動手段の座標系と撮像手段の座標系とを対応づけるパラメータを精度良く算出することができる。また、パラメータを算出するための特徴点は、縫針によって形成される。したがって、パラメータの算出に際しては、ユーザは被加工物を用意するのみでよく、ミシンにパラメータを算出させるための準備が簡単である。
【００１６】
また、請求項３に係るミシンでは、被加工物が白い紙であるので、特徴点とのコントラストをとりやすい。したがって、請求項３に係るミシンは、請求項１又は２に記載の発明の効果に加え、被加工物に形成された特徴点を精度良く抽出することができる。
【００１７】
また、請求項４に係るミシンは、請求項１から３のいずれかに記載の発明の効果に加え、被加工物に規則的な位置に形成された特徴点から、移動手段の座標系と撮像手段の座標系とを対応づけるパラメータを精度良く算出することができる。
【００１８】
また、請求項５に係るミシンは、移動手段の座標系と撮像手段の座標系とを対応づけるパラメータを用いて、撮像画像を加工する。したがって、請求項５に係るミシンは、請求項１から４のいずれかに記載の発明の効果に加え、移動手段の座標系と撮像手段の座標系との対応がとれた画像を作成させることができる。これによって、請求項５に係るミシンは、例えば、加工布等の被加工物を撮像した撮像画像に基づき特定された位置に、縫目を形成させるための保持部材の移動量を容易に決定させることができる。
【００１９】
また、請求項６に係るミシンは、請求項１から５のいずれかに記載の発明の効果に加え、撮像手段に固有の特性や撮像手段の設置状態の影響を排除して、撮像画像上の点を三次元座標系の点に変換させることができる。請求項６に係るミシンは、取得された三次元座標を用いて、例えば、撮像画像の点の位置を把握したり、撮像画像の２点間の距離を把握したりすることができる。
【００２０】
また、請求項７に係るミシンは、請求項１から６のいずれかに記載の発明の効果に加え、撮像手段に固有の特性や撮像手段の設置状態の影響を排除して、三次元座標系の点を二次元座標系の座標に変換させることができる。請求項７に係るミシンは、取得された二次元座標を用いて、例えば、撮像画像上の所定の領域を特定したり、撮像画像上の所定の点を特定したりすることができる。
【図面の簡単な説明】
【００２１】
【図１】ミシン１の斜視図である。
【図２】縫針７の近傍をミシン１の左側からみた図である。
【図３】刺繍枠３２に平面図である。
【図４】ミシン１の電気的構成を示すブロック図である。
【図５】ＲＡＭ６３の記憶エリアの説明図である。
【図６】二次元座標記憶エリア６３２の説明図である。
【図７】ＥＥＰＲＯＭ６４の記憶エリアの説明図である。
【図８】基準座標記憶エリア６４１の説明図である。
【図９】加工データが指示する特徴点の座標の説明図である。
【図１０】パラメータ算出処理のフローチャートである。
【図１１】特徴点３０１が形成された被加工物３４の平面図である。
【図１２】刺繍模様形成処理のフローチャートである。
【図１３】図１２の刺繍模様形成処理で実行される、開始点取得処理のフローチャートである。
【図１４】図１３の開始点取得処理で実行される、二次元座標算出処理のフローチャートである。
【図１５】図１３の開始点取得処理で実行される、三次元座標算出処理のフローチャートである。
【図１６】変形例の開始点取得処理のフローチャートである。
【図１７】図１６の開始点取得処理で実行される、画像加工処理のフローチャートである。
【発明を実施するための形態】
【００２２】
以下、本発明の第１及び第２の実施形態について、図面を参照して順に説明する。なお、これらの図面は、本発明が採用しうる技術的特徴を説明するために用いられるものであり、記載されている装置の構成、各種処理のフローチャート等は、それのみに限定する趣旨ではなく、単なる説明例である。
【００２３】
まず、図１から図４を参照して、第１及び第２の実施形態に共通するミシン１の物理的構成及び電気的構成について説明する。図１において、矢印Ｘの方向を右方向、その反対方向を左方向、矢印Ｙの方向を前方向、その反対方向を後方向と言う。図１に示すように、ミシン１は、ミシンベッド２と、脚柱部３と、アーム部４とを備えている。ミシンベッド２は、左右方向に長く伸びている。脚柱部３は、ミシンベッド２の右端部から上方へ立設されている。アーム部４は、脚柱部３の上端から左方へ延びている。アーム部４の左先端部には、頭部５がある。脚柱部３の正面には、表面にタッチパネル１６を備えた液晶ディスプレイ（以下、「ＬＣＤ」と言う。）１０が設けられている。ＬＣＤ１０には、縫製模様や縫製条件の入力キー等が表示される。ＬＣＤ１０に表示された入力キー等の位置に対応したタッチパネル１６の箇所を、指や専用のタッチペンを用いて押圧操作すること（以下、この操作を「パネル操作」と言う。）によって、ユーザは縫製模様や縫製条件等を選択できる。
【００２４】
ミシンベッド２の内部には、送り歯前後動機構（図示せず）と、送り歯上下動機構（図示せず）と、送り量調整用パルスモータ７８（図４参照）と、釜（図示せず）とが収納されている。送り歯前後動機構及び送り歯上下動機構は、送り歯（図示せず）を駆動させる。送り量調整用パルスモータ７８は、送り歯による加工布（図示せず）の送り量を調整する。釜は下糸（図示せず）が巻回されたボビン（図示せず）を収納する。ミシンベッド２の左端には、刺繍装置３０を装着されている。刺繍装置３０を使用しない場合には、ミシンベッド２の左端に補助テーブル（図示せず）が装着される。刺繍装置３０がミシンベッド２の左端に装着されると、刺繍装置３０は、ミシン１に電気的に接続された状態となる。刺繍装置３０の詳細については後述する。
【００２５】
脚柱部３とアーム部４との内部には、ミシンモータ７９（図４参照）と、主軸（図示せず）と、針棒６（図２参照）と、針棒上下動機構（図示せず）と、針振り機構（図示せず）とが収納されている。図２に示すように、針棒６の下端部には、縫針７が装着される。針棒上下動機構は、ミシンモータ７９を駆動源として針棒６を上下動させる。針振り機構は、針振り用パルスモータ７７（図４参照）を駆動源として針棒６を左右方向に揺動させる。図２に示すように、針棒６の後ろ側には、上下方向に伸びる押え棒４５がある。押え棒４５の下端部には、押えホルダ４６が固定されている。押えホルダ４６には、加工布（図示せず）を押さえる押え足４７が装着されている。
【００２６】
アーム部４には、開閉カバー２１が取り付けられている。開閉カバー２１は、アーム部４の長手方向に設けられ、アーム部４の上後端部に左右方向向きの軸回りに開閉可能に軸支されている。開閉カバー２１を開けた状態の、アーム部４の上部中央近傍には、糸収容部２３が設けられている。糸収容部２３は、ミシン１に糸を供給する糸駒２０を収容するための凹部である。糸収容部２３の脚柱部３側の内壁面には、頭部５に向かって突出する糸立棒２２が設けられている。糸駒２０は、糸駒２０が備える挿入孔（図示せず）が糸立棒２２に挿入されて装着される。図示しないが、糸駒２０の糸は、上糸として、頭部５に設けられた複数の糸掛部を経由して、針棒６に装着された縫針７（図２参照）に供給される。糸掛部として、例えば、糸調子器、糸取バネ、天秤が挙げられる。糸調子器及び糸取バネは、糸張力を調整する。天秤は、上下に往復駆動して上糸を引き上げる。
【００２７】
ミシン１の右側面には、プーリ（図示せず）が設けられている。プーリは、手動で主軸を回転させ、針棒６を上下動させる。頭部５及びアーム部４の正面には、正面カバー５９が設けられている。正面カバー５９には、縫製開始・停止スイッチ４１，速度調整摘み４３，及びその他の操作スイッチが設けられている。縫製開始・停止スイッチ４１は、縫製の開始及び停止を指示するスイッチである。ミシン１の停止中に縫製開始・停止スイッチ４１が押圧されるとミシン１の運転が開始され、ミシン１の運転中に縫製開始・停止スイッチ４１が押圧されるとミシン１の運転が停止される。速度調整摘み４３は、主軸（図示せず）の回転速度を調整する。正面カバー５９の内部であって、縫針７からみて右斜め上方の位置には、イメージセンサ５０（図２参照）が設置されている。イメージセンサ５０の詳細については後述する。
【００２８】
次に、図２を参照して、イメージセンサ５０について説明する。イメージセンサ５０は、周知のＣＭＯＳイメージセンサであり、ミシンベッド２及びミシンベッド２上に設けられる針板８０を撮像可能な位置に取り付けられる。本実施形態では、イメージセンサ５０は、ミシン１のフレーム（図示せず）に取り付けられた支持フレーム５１に取り付けられている。
【００２９】
次に、図１及び図３を参照して、刺繍装置３０について説明する。刺繍装置３０は、キャリッジ（図示せず）と、キャリッジカバー３３と、前後移動機構（図示せず）と、左右移動機構（図示せず）と、刺繍枠３２とを備える。キャリッジは、刺繍枠３２を着脱可能に保持する。キャリッジの右方には、刺繍枠３２が装着される凹溝部（図示せず）が設けられている。凹溝部は、キャリッジの長手方向に沿って伸長している。キャリッジカバー３３は、概略、前後方向に長い直方体状の形状を有し、キャリッジを収容する。キャリッジカバー３３の内部には、前後移動機構（図示せず）が設けられている。前後移動機構は、Ｙ軸モータ８２（図４参照）を駆動源として、刺繍枠３２が装着されたキャリッジを前後方向に移動させる。左右移動機構は、刺繍装置３０の本体内に設けられている。左右移動機構は、Ｘ軸モータ８１（図４参照）を駆動源として、刺繍枠３２が装着されたキャリッジと、前後移動機構と、キャリッジカバー３３とを左右方向に移動させる。Ｙ軸モータ８２及びＸ軸モータ８１に対する駆動指令は、後述するＣＰＵ６１（図４参照）によって出力される。
【００３０】
図３を参照して、刺繍枠３２について説明する。刺繍枠３２は、ガイド３２１と、外枠３２２と、内枠３２３と、調整ネジ３２４とを備える。ガイド３２１は、平面視略長方形の形状を有する。ガイド３２１の下面の略中央には、長手方向に沿って伸長する突出部（図示せず）が設けられている。突出部を、刺繍装置３０のキャリッジ（図示せず）に設けられた凹溝部（図示せず）に係合させて取り付けることによって、刺繍枠３２はキャリッジに装着される。刺繍枠３２はキャリッジに装着された状態では、キャリッジに設けられている弾性付勢バネ（図示せず）によって、突出部は凹溝部に押圧される方向に付勢される。このため、刺繍枠３２とキャリッジとは、確実に嵌合した状態となり、刺繍枠３２はキャリッジと一体的に移動する。外枠３２２の内側には、外周形状が外枠３２２の内周形状と略同形状に形成された内枠３２３が嵌め込まれる。外枠３２２と内枠３２３との間には、加工布等の被加工物３４が挟まれる。外枠３２２に設けられた調整ネジ３２４が締められることによって、被加工物３４は刺繍枠３２に保持される。内枠３２３の内側には、矩形の縫製領域３２５が設定されている。刺繍模様は、縫製領域３２５内に形成される。なお、刺繍枠３２は図１に示すサイズのものだけでなく、図示はしないが様々なサイズの刺繍枠が用意されている。
【００３１】
次に、図４を参照して、ミシン１の主な電気的構成について説明する。図４に示すように、ミシン１は、ＣＰＵ６１と、ＲＯＭ６２と、ＲＡＭ６３と、ＥＥＰＲＯＭ６４と、外部アクセスＲＡＭ６８と、入力インターフェイス６５と、出力インターフェイス６６とを備え、これらはバス６７によって相互に接続されている。
【００３２】
ＣＰＵ６１は、ミシン１の主制御を司り、ＲＯＭ６２等に記憶されたプログラムに従って、各種演算及び処理を実行する。ＲＯＭ６２は、刺繍データ記憶エリア及びプログラム記憶エリアを含む複数の記憶エリアを備える。刺繍データ記憶エリアには、ミシン１で刺繍を行う際に使用される刺繍データが記憶される。プログラム記憶エリアには、ＣＰＵ６１によって実行されるパラメータ算出プログラムと、刺繍模様形成プログラムとを含む複数のプログラムが記憶されている。ＲＡＭ６３は、任意に読み書き可能な記憶素子である。ＲＡＭ６３の記憶エリアについては後述する。ＥＥＰＲＯＭ６４は、読み書き可能な記憶素子であり、プログラム記憶エリアに記憶されている各種プログラムが実行される際に使用される各種パラメータが記憶されている。ＥＥＰＲＯＭ６４の記憶エリアについては後述する。外部アクセスＲＡＭ６８には、カードスロット１７が接続されている。カードスロット１７は、メモリカード１８と接続可能である。カードスロット１７とメモリカード１８とを接続すれば、メモリカード１８の情報の読み取りや書き込みを行うことができる。
【００３３】
入力インターフェイス６５には、縫製開始・停止スイッチ４１と、速度調整摘み４３と、タッチパネル１６と、イメージセンサ５０とが接続されている。出力インターフェイス６６には、駆動回路７０〜７５が接続されている。駆動回路７０は、針振り用パルスモータ７７を駆動させる。針振り用パルスモータ７７は、針振り機構（図示せず）の駆動源である。駆動回路７１は、送り量調整用パルスモータ７８を駆動させる。駆動回路７２は、ミシンモータ７９を駆動させる。ミシンモータ７９は、主軸（図示せず）の駆動源である。駆動回路７３は、Ｘ軸モータ８１を駆動させる。駆動回路７４は、Ｙ軸モータ８２を駆動させる。駆動回路７５はＬＣＤ１０を駆動させる。入力インターフェイス６５及び出力インターフェイス６６には、図示しない他の構成要素が適宜接続される。
【００３４】
次に、図５を参照して、ＲＡＭ６３の記憶エリアについて説明する。図５に示すように、ＲＡＭ６３は、撮像画像記憶エリア６３１と、二次元座標記憶エリア６３２と、その他の記憶エリア６３３とを備える。撮像画像記憶エリア６３１には、撮像画像が記憶される。図６に示すように、二次元座標記憶エリア６３２には、後述するパラメータ算出処理で撮像画像から抽出された複数の特徴点について、特徴点を区別するための番号と、イメージセンサ５０で撮像された画像の座標系２００（以下、「画像座標系２００」と言う。）の二次元座標（ｕｃ，ｖｃ）とが対応付けられて記憶される。なお、画像座標系２００は、撮像画像に設定される仮想的な座標系であり、図２では画像座標系２００を模式的に示している。撮像画像から抽出される特徴点については、後述する。その他の記憶エリア６３３には、ＣＰＵ６１が演算処理した演算結果等が記憶される。
【００３５】
図７を参照して、ＥＥＰＲＯＭ６４の記憶エリアについて説明する。ＥＥＰＲＯＭ６４は、基準座標記憶エリア６４１と、内部パラメータ記憶エリア６４２と、外部パラメータ記憶エリア６４３と、移動条件記憶エリア６４４とを備えている。基準座標記憶エリア６４１には、ワールド座標系１００における特徴点の既知の三次元座標が基準座標として記憶されている。ワールド座標系１００は、空間全体を示す座標系であり、対象物の重心等の影響を受けることのない座標系である。一般に、ワールド座標系１００は、空間内での物体の位置を示したり、異なる物体に対する座標を比較したりする際に用いられる。第１及び第２の実施形態では、以下のようにワールド座標系１００が設定されている。図１に示すように、刺繍枠３２に挟まれた被加工物３４の上面をＸＹ平面とする。ワールド座標系１００では、ミシン１の左右方向にＸ軸が、前後方向にＹ軸が、上下方向にＺ軸がそれぞれ設定されている。ワールド座標系１００の原点（Ｘ，Ｙ，Ｚ）＝（０，０，０）は、針落ち点とする。針落ち点とは、縫針７が被加工物３４の上にある状態から針棒６を下方向に移動させた際に、縫針７が被加工物３４に刺さる点である。
【００３６】
図８を参照して、ＥＥＰＲＯＭ６４に設けられている基準座標記憶エリア６４１について詳細に説明する。図８に示すように、基準座標記憶エリア６４１には、番号と、加工データと、基準座標とがそれぞれ対応付けられて記憶されている。番号は、特徴点を区別するためのＩＤである。基準座標記憶エリア６４１の番号は、二次元座標記憶エリア６３２の番号と対応する。加工データは、番号に対応する特徴点の位置を指示するデータである。加工データに従って、刺繍枠３２を移動させる際の、Ｘ軸モータ８１及びＹ軸モータ８２の駆動量が決定される。加工データは、例えば、ワールド座標系１００（図１参照）で示される。基準座標は、例えば、後述する刺繍装置３０の座標系３００（図３参照）（以下、「刺繍座標系３００」と言う。）と画像座標系２００とがそれぞれ校正された状態で、後述するパラメータ算出処理が実行され、算出される。刺繍座標系３００については、後述する。基準座標は、ワールド座標系１００の三次元座標（Ｘｗ，Ｙｗ，Ｚｗ）である。基準座標は、後述するパラメータ算出処理で実行される、撮像画像に基づき算出された特徴点の座標と比較する処理において用いられる。
【００３７】
次に、図８及び図９を参照して、基準座標記憶エリア６４１に記憶されている加工データについて説明する。図９では、加工データによって指示される特徴点が形成される位置が、点１０１で示されている。ワールド座標系１００のＸ軸１０３，Ｙ軸１０２の交点である原点１１０は、イメージセンサ５０の撮像可能範囲１０４の中央に位置している。なお、原点１１０は、撮像可能範囲１０４の中央位置以外の位置としてもよい。点１０１は、刺繍枠３２を後述する刺繍座標系３００の原点の位置に移動させた状態における撮像可能範囲１０４内に、特徴点の密度（単位面積当たりの特徴点の数）がほぼ均一になるように、規則的に配置されている。より具体的には、本実施形態では、点１０１は、１７×１７マスの格子の頂点の位置に配置されている。
【００３８】
引き続き図７を参照して、ＥＥＰＲＯＭ６４の記憶エリアについて説明する。内部パラメータ記憶エリア６４２には、撮像された画像及び特徴点の三次元座標から算出された内部パラメータが記憶される。内部パラメータは、イメージセンサ５０の特性に基づいて生じる焦点距離と、主点座標のずれと、撮像した画像の歪みとをそれぞれ補正するためのパラメータである。内部パラメータ記憶エリア６４２には、内部パラメータとして、Ｘ軸焦点距離と、Ｙ軸焦点距離と、Ｘ軸主点座標と、Ｙ軸主点座標と、第一歪み係数と、第二歪み係数とが記憶される。Ｘ軸焦点距離は、イメージセンサ５０のＸ軸方向の焦点距離のずれを示す。Ｙ軸焦点距離は、Ｙ軸方向の焦点距離のずれを示す。Ｘ軸主点座標は、イメージセンサ５０のＸ軸方向の主点のずれを示す。Ｙ軸主点座標は、Ｙ軸方向の主点のずれを示す。第一歪み係数と第二歪み係数とはそれぞれ、イメージセンサ５０のレンズの傾きによる歪みを示す。内部パラメータは、例えば、ミシン１が撮像画像を正規化画像に変換する際に用いられる。正規化画像は、正規化カメラで撮像した画像である。正規化カメラとは、光学中心からスクリーン面までの距離が単位長であるようなカメラである。
【００３９】
外部パラメータ記憶エリア６４３には、撮像画像及び特徴点の三次元座標から算出された外部パラメータが記憶される。外部パラメータは、ワールド座標系１００に対するイメージセンサ５０の設置状態（位置及び向き）を示すパラメータである。つまり、外部パラメータとは、画像座標系２００と、ワールド座標系１００とのずれを示すパラメータである。外部パラメータ記憶エリア６４３には、外部パラメータとして、Ｘ軸回転ベクトルと、Ｙ軸回転ベクトルと、Ｚ軸回転ベクトルと、Ｘ軸並進ベクトルと、Ｙ軸並進ベクトルと、Ｚ軸並進ベクトルとが記憶される。Ｘ軸回転ベクトルは、画像座標系２００のワールド座標系１００に対するＸ軸周りの回転を示し、Ｙ軸回転ベクトルは、Ｙ軸周りの回転を示し、Ｚ軸回転ベクトルは、Ｚ軸周りの回転を示す。Ｘ軸回転ベクトルと、Ｙ軸回転ベクトルと、Ｚ軸回転ベクトルとは、ワールド座標系１００から画像座標系２００へ変換する転換行列や、画像座標系２００からワールド座標系１００へ変換する転換行列を決定する際に使用される。Ｘ軸並進ベクトルはワールド座標系１００に対する画像座標系２００のＸ軸方向のずれを示し、Ｙ軸並進ベクトルはＹ軸方向のずれを示し，Ｚ軸並進ベクトルはＺ軸方向のずれを示す。Ｘ軸並進ベクトルと、Ｙ軸並進ベクトルと、Ｚ軸並進ベクトルとは、ミシン１がワールド座標系１００から画像座標系２００へ変換する並進ベクトルや、画像座標系２００からワールド座標系１００へ変換する並進ベクトルを決定する際に使用される。
【００４０】
移動条件記憶エリア６４４には、刺繍枠３２の移動条件として、加工データ及び刺繍データ等のデータ（以下、「指示データ」と言う。）が指示する刺繍枠３２の移動量と、Ｘ軸モータ８１及びＹ軸モータ８２（図４参照）の駆動量との対応関係が記憶されている。また、移動条件記憶エリア６４４には、刺繍座標系３００の原点の座標が刺繍枠３２の種類毎に記憶されている。移動条件は、指示データに従い刺繍枠３２を移動させる処理に用いられる。刺繍座標系３００は、指示データによって指示される移動量と、指示データに従って刺繍枠３２を移動させた場合の実際の刺繍枠３２の移動量とに基づき定められる座標系である。すなわち、刺繍座標系３００は、刺繍枠３２を移動させるＸ軸モータ８１及びＹ軸モータ８２の座標系である。刺繍座標系３００は、ミシン１の左右方向がＸ軸方向であり、ミシン１の前後方向がＹ軸方向である。本実施形態では、刺繍座標系３００は、刺繍枠３２の縫製領域の中心が、針落ち点と一致する位置を原点（Ｘ，Ｙ，Ｚ）＝（０，０，０）としている。なお、本実施形態の刺繍装置３０は、刺繍枠３２をＺ方向（ミシン１の上下方向）には移動させないので、加工布等の被加工物３４の厚みが無視できる範囲であれば、被加工物３４の上面をＺ＝０としている。
【００４１】
次に、図１０のフローチャートを参照して、第１の実施形態のパラメータ算出処理について説明する。パラメータ算出処理では、画像座標系２００と、刺繍座標系３００とを対応付けるパラメータが算出される。第１の実施形態では、パラメータ算出処理において、被加工物３４に形成された刺繍座標系３００の座標を有する特徴点（貫通孔）を用いて、イメージセンサ５０の内部パラメータ及び外部パラメータが算出される。図１０に示すパラメータ算出処理は、ＲＯＭ６２に記憶されたパラメータ算出プログラムに従って、ＣＰＵ６１が実行する。パラメータ算出処理は、ユーザによって「パラメータ算出」の実施の指示が入力された際に実行される。実施の指示は、例えば、パネル操作によって入力される。また例えば、ミシン１がパラメータ算出を実行させる専用のボタンを備える場合には、ユーザによって専用ボタンが押下されることによって実施の指示が入力される。
【００４２】
図１０に示すように、第１の実施形態のパラメータ算出処理では、まず、パラメータ算出処理を実行させる準備が完了したか否かが判断される（Ｓ５）。第１の実施形態では、パラメータ算出処理を実行させるにあたって、縫針７に糸（図示せず）がセットされている場合には、ユーザは、糸を取り外す。また、ユーザは刺繍枠３２に被加工物３４として白い紙を挟み、刺繍枠３２を刺繍装置３０に装着する。準備が完了したか否かは、例えば、パネル操作によって入力された指示に基づき判断される。準備が完了していない場合には（Ｓ５：Ｎｏ）、準備が完了するまで待機され、準備が完了した場合には（Ｓ５：Ｙｅｓ）、基準座標記憶エリア６４１に記憶された番号及び加工データが取得され、取得された加工データがＲＡＭ６３に記憶される（Ｓ１０）。
【００４３】
次に、Ｓ１０で取得された加工データのうち、番号ｉの加工データが読み出される（Ｓ２０）。ｉの初期値は１であり、Ｓ２０が繰り返し実行される際にインクリメントされる。次に、駆動回路７３，７４に駆動指示が出力され、Ｓ２０で読み出された加工データによって指示される位置に刺繍枠３２が移動される（Ｓ３０）。Ｓ３０において、縫針７は被加工物３４の上にある。次に、駆動回路７２に駆動指示が出力され、ミシンモータ７９が駆動される。これによって、針棒６が上下に移動され、縫針７によって被加工物３４に、特徴点として貫通孔が形成される（Ｓ４０）。次に、Ｓ１０で取得された加工データが、Ｓ２０においてすべて読み出されたか否かが判断される（Ｓ５０）。読み出されていない加工データがある場合には（Ｓ５０：Ｎｏ）、インクリメントされたｉがＲＡＭ６３に記憶され、処理はＳ２０に戻る。すべての加工データが読み出された場合には（Ｓ５０：Ｙｅｓ）、駆動回路７３，７４に駆動指示が出力され、刺繍枠３２が刺繍座標系３００の原点の位置に移動される（Ｓ６０）。Ｓ６０において、縫針７は被加工物３４の上にある。Ｓ１０において、図９に示す位置に特徴点が形成されることを指示する加工データが取得された場合、被加工物３４には図１１に示す３２４個の特徴点３０１が形成される。刺繍枠３２が刺繍座標系３００の原点の位置にある場合、特徴点３０１はイメージセンサ５０の撮像可能範囲１０４の内側にある。特徴点３０１は、特徴点の密度（単位面積当たりの特徴点の数）がほぼ均一になるように、規則的に配置されている。より具体的には、本実施形態では、特徴点３０１は、１７×１７マスの格子の頂点の位置に配置されている。
【００４４】
次に、イメージセンサ５０によって、特徴点３０１が形成された被加工物３４が撮像され、撮像画像記憶エリア６３１に撮像画像が記憶される（Ｓ７０）。図１１に示す例では、撮像画像には、撮像可能範囲１０４の内側にある３２４個の特徴点３０１が写っている。次に、Ｓ７０で撮像した撮像画像から特徴点３０１が抽出され、特徴点３０１の画像座標系２００の二次元座標が特徴点座標として二次元座標記憶エリア６３２に記憶される（Ｓ８０）。Ｓ８０では、公知技術に基づいて撮像画像から特徴点が抽出される。例えば、撮像画像は、ハフ変換が施され、ハフ変換画像が作成される。次に、ハフ変換画像に対して非極大抑制処理が行われ、ハフ変換画像の局所的に（マスク内で）明るい点が抽出される。次に、抽出された明るい点のうち、所定の閾値よりも明るい点のみを抽出する閾値処理が行われ、特徴点が抽出される。なお、貫通孔の中心が特徴点として抽出され、特徴点座標が算出される。
【００４５】
次に、基準座標記憶エリア６４１に記憶されている基準座標が取得され、基準座標がＲＡＭ６３に記憶される（Ｓ８５）。次に、Ｓ８０で算出された特徴点座標と、特徴点の番号とが対応付けられて、対応関係が二次元座標記憶エリア６３２に記憶される（Ｓ９０）。特徴点の座標と、特徴点の番号との対応関係は、例えば、以下のように決定される。刺繍座標系３００と画像座標系２００（図２参照）とがそれぞれ校正された状態で、後述するパラメータ算出処理が実行され、算出された特徴点３０１の２次元座標が予め算出される。算出された二次元座標は、特徴点番号と対応付けられて、所定の記憶エリアに記憶されているものとする。所定の記憶エリアに記憶された既知の二次元座標と、Ｓ８０で算出された特徴点座標とが比較され、Ｓ８５で取得された番号ｎの既知の二次元座標に最も近い特徴点座標を有する特徴点３０１を、番号ｎと対応付ける特徴点とする。特徴点座標は、特徴点の番号によって、基準座標と対応付けられることになる。
【００４６】
次に、パラメータが算出され、算出されたパラメータはＥＥＰＲＯＭ６４の内部パラメータ記憶エリア６４２及び外部パラメータ記憶エリア６４３に記憶される（Ｓ１００）。パラメータは、周知のカメラキャリブレーションのパラメータの算出方法を用いて算出される。パラメータの算出方法では、三次元座標が既知である特徴点を含む対象物（被加工物）が撮像され、撮像画像における特徴点の二次元座標が算出される。特徴点の既知の三次元座標と、算出された二次元座標とに基づいて射影行列が求められ、射影行列からパラメータが算出される。パラメータの算出方法については、公知の技術（例えば、特許第３１３８０８０号公報）が適宜用いられればよい。Ｓ１００の次に、パラメータ算出処理は終了する。
【００４７】
以上のようにして、第１の実施形態のパラメータ算出処理が実行される。なお、被加工物３４を保持する刺繍枠３２は、本発明の保持部材に相当する。駆動回路７３，７４に出力された駆動指示に基づき、刺繍枠３２を移動させるＸ軸モータ８１及びＹ軸モータ８２は、本発明の移動手段として機能する。図１０のパラメータ算出処理において、加工データを取得する（Ｓ１０）ＣＰＵ６１は、本発明の加工データ取得手段として機能する。加工データを記憶するＥＥＰＲＯＭ６４は、加工データ記憶手段に相当する。下端部に縫針７が装着された針棒６を、加工データに従って上下方向に駆動させるミシンモータ７９は、本発明の針棒駆動手段として機能する。Ｓ１０で取得された加工データに従って、駆動回路７２〜７４に駆動指示を出力し、刺繍枠３２を移動させるとともに（Ｓ３０）、針棒６を上下方向に駆動させる（Ｓ４０）ＣＰＵ６１は、本発明の特徴点形成手段として機能する。イメージセンサ５０は、本発明の撮像手段に相当する。パラメータ算出処理のＳ８０において、撮像画像から、複数の特徴点を抽出し、二次元座標を特徴点座標として算出する（Ｓ８０）ＣＰＵ６１は、本発明の特徴点座標算出手段として機能する。パラメータ算出処理のＳ８５において、基準座標を取得するＣＰＵ６１は、本発明の基準座標取得手段として機能する。基準座標を記憶するＥＥＰＲＯＭ６４は、基準座標記憶手段に相当する。Ｓ８５で取得された基準座標と、Ｓ８０によって算出された特徴点座標とを対応付けるＣＰＵ６１は、本発明の対応付け手段として機能する。Ｓ９０の結果に基づいて、刺繍座標系３００と画像座標系２００とを対応づけるパラメータを算出する（Ｓ１００）ＣＰＵ６１は、本発明のパラメータ算出手段として機能する。刺繍座標系３００は、本発明の移動手段の座標系に対応する。画像座標系２００は、本発明の撮像手段の座標系に相当する。
【００４８】
第１の実施形態のパラメータ算出処理では、刺繍座標系３００と画像座標系２００とを対応付けるパラメータとして、内部パラメータ及び外部パラメータを算出することができる。得られたパラメータによって、刺繍座標系３００に基づき画像座標系２００が設定される。すなわち、刺繍座標系３００がワールド座標系１００となる。また第１の実施形態では、白い紙を被加工物３４とし、縫針７で被加工物３４にあけた貫通孔を特徴点３０１としている。したがって、パラメータの算出に際しては、ユーザは被加工物３４である白い紙を用意するのみでよく、ミシン１にパラメータを算出させる準備が簡単である。ミシン１は、白い紙を被加工物３４としているので、白い紙は特徴点が形成されていない領域と特徴点との明暗の差が比較的大きい。したがって、パラメータ算出処理のＳ８０において、特徴点が形成されていない領域と特徴点とで明暗の差が少ない場合に比べ、特徴点を精度良く抽出することができる。また、白い紙は汎用品であるため、ユーザは被加工物を容易に準備することができる。また、図１１に示すように、特徴点３０１は、刺繍枠３２を原点の位置に移動させた状態における撮像可能範囲１０４内に規則的に形成されている。したがって、特徴点３０１が撮像可能範囲１０４内の一部の領域に偏って形成されている場合に比べ、刺繍座標系３００と画像座標系２００とを対応づけるパラメータを精度良く算出することができる。なお、ミシン１では、撮像手段として小型且つ安価なＣＭＯＳセンサを使用したため、撮像手段をミシンに設置するスペースが小さくて済むとともに、撮影機器のコストを低く抑えることが可能となる。
【００４９】
次に、第１の実施形態のパラメータ算出処理によって算出されたパラメータ（以下、「第１のパラメータ」と言う。）の使用例について説明する。第１のパラメータは、例えば、二次元座標算出処理と、三次元座標算出処理と、画像加工処理とに使用される。二次元座標算出処理は、ワールド座標系１００の点の三次元座標を画像座標系２００の撮像画像平面に投影した点の二次元座標に変換する処理である。三次元座標算出処理は、画像座標系２００の撮像画像上の点の二次元座標をワールド座標系１００の点の三次元座標に変換する処理である。画像加工処理は、イメージセンサ５０で撮像された画像を加工する処理である。刺繍模様形成処理を例に、二次元座標算出処理と、三次元座標算出処理と、画像加工処理とを説明する。刺繍模様形成処理では、加工布等の被加工物上のユーザが指定する位置を開始点として刺繍模様が形成される。図１２に示す刺繍模様形成処理は、ユーザによって「刺繍模様形成」の指示が入力された際に、ＲＯＭ６２に記憶された刺繍模様形成プログラムに従って、ＣＰＵ６１が実行する。
【００５０】
以下の説明において、画像座標系２００の撮像画像上の点ｐの二次元座標をｍｃ（ｕｃ，ｖｃ）とし、画像座標系２００の点ｐの三次元座標をＭｃ（Ｘｃ，Ｙｃ，Ｚｃ）とする。そして、点ｐがワールド座標系１００に変換された点を点Ｐとし、点Ｐのワールド座標系１００の三次元座標をＭｗ（Ｘｗ，Ｙｗ，Ｚｗ）とする。内部パラメータ記憶エリア６４２に記憶されている内部パラメータについて、Ｘ軸焦点距離をｆｘ，Ｙ軸焦点距離をｆｙ，Ｘ軸主点座標をｃｘ，Ｙ軸主点座標をｃｙ，第一歪み係数をｋ１，第二歪み係数をｋ２とする。外部パラメータ記憶エリア６４３に記憶されている外部パラメータについて、Ｘ軸回転ベクトルをｒ１，Ｙ軸回転ベクトルをｒ２，Ｚ軸回転ベクトルをｒ３，Ｘ軸並進ベクトルをｔ１，Ｙ軸並進ベクトルをｔ２，Ｚ軸並進ベクトルをｔ３とする。「Ｒｗ」を外部パラメータ（Ｘ軸回転ベクトルｒ１，Ｙ軸回転ベクトルｒ２，Ｚ軸回転ベクトルｒ３）に基づいて決定される３×３の回転行列とし、「ｔｗ」を外部パラメータ（Ｘ軸並進ベクトルｔ１，Ｙ軸並進ベクトルｔ２，Ｚ軸並進ベクトルｔ３）に基づいて決定される３×１の並進ベクトルとする。
【００５１】
図１２に示すように、刺繍模様形成処理では、まず、ＲＯＭ６２等の記憶エリアが参照され、刺繍データが取得されＲＡＭ６３に記憶される（Ｓ１１０）。Ｓ１１０では、ユーザがパネル操作によって選択した刺繍模様の刺繍データが取得される。次に、開始点取得処理が実行される（Ｓ１２０）。開始点取得処理では、Ｓ１１０で取得した刺繍模様に従い刺繍模様の縫製を開始する位置が開始点として取得され、開始点のワールド座標系１００の３次元座標がＲＡＭ６３に記憶される。開始点取得処理の詳細は後述する。次に、Ｓ１２０で開始点が取得されたか否かが判断される（Ｓ１３０）。開始点が取得されていない場合には（Ｓ１３０：Ｎｏ）、エラーが報知され（Ｓ１６０）、刺繍模様形成処理は終了する。開始点が取得された場合には（Ｓ１３０：Ｙｅｓ）、駆動回路７３，７４に駆動指示が出力され、Ｓ１２０で取得された開始点が針落ち点となる位置に、刺繍枠３２が移動される（Ｓ１４０）。次に、Ｓ１１０で取得した刺繍データに基づき、刺繍模様が形成される（Ｓ１５０）。Ｓ１５０では、Ｓ１４０で移動された位置において、刺繍模様の形成が開始される。刺繍模様を形成する処理は、通常の刺繍模様の縫製と同様である。次に、刺繍模様形成処理は終了する。
【００５２】
次に、刺繍模様形成処理で実行される開始点取得処理について、図１３を参照して説明する。第１の実施形態の開始点取得処理では、刺繍枠３２に挟まれた被加工物３４に描かれた所定のマーク（例えば、×印等）を検出し、所定のマークが描かれた位置を開始点とする。ユーザが、刺繍模様形成処理を実行させる前に、被加工物３４の開始点にチャコペン等で印を付けることが前提となる。
【００５３】
図１３に示すように、開始点取得処理ではまず、ｎ番目の位置に刺繍枠３２が移動される（Ｓ２１０）。Ｓ２１０の処理は、刺繍枠３２の縫製領域をｍ回に分けて撮像するための処理である。ｎは、１からｍまでの整数が順に設定される。次に、被加工物３４が撮像され、撮像画像がＲＡＭ６３に記憶される（Ｓ２２０）。次に、二次元座標算出処理が実行される（Ｓ２３０）。二次元座標算出処理では、縫製領域３２５の境界線のワールド座標系１００の三次元座標が、画像座標系２００の二次元座標に変換される。Ｓ２３０の処理は、Ｓ２２０で取得された撮像画像内の縫製領域を特定するために実行される。特定された縫製領域内において、開始点を指示するマークが検出される検出処理が実行される。二次元座標算出処理の詳細を、図１４を参照して説明する。
【００５４】
図１４に示す二次元座標算出処理では、ＥＥＰＲＯＭ６４に記憶されている刺繍枠３２の縫製領域３２５の境界をなす点のワールド座標系１００の三次元座標が、点Ｐとして順次読み出され以下の処理が実行される。まず、ワールド座標系１００の点Ｐの三次元座標Ｍｗ（Ｘｗ，Ｙｗ，Ｚｗ）に基づき、点Ｐが画像座標系２００の点ｐに変換された場合の三次元座標Ｍｃ（Ｘｃ，Ｙｃ，Ｚｃ）が算出され、三次元座標Ｍｃ（Ｘｃ，Ｙｃ，Ｚｃ）がＲＡＭ６３に記憶される（Ｓ３１０）。三次元座標Ｍｃ（Ｘｃ，Ｙｃ，Ｚｃ）は、「Ｍｃ＝Ｒｗ×Ｍｗ＋ｔｗ」によって算出される。次に、Ｓ３１０で算出された画像座標系２００の点ｐの三次元座標に基づき、画像座標系２００の正規化画像上の点ｐの二次元座標（ｘ'，ｙ'）が算出され、二次元座標（ｘ'，ｙ'）がＲＡＭ６３に記憶される（Ｓ３２０）。画像座標系２００の正規化画像上の点ｐの二次元座標は、「ｘ'＝Ｘｃ／Ｚｃ」と、「ｙ'＝Ｙｃ／Ｚｃ」とによって算出される。
【００５５】
次に、画像座標系２００の正規化画像上の点ｐの二次元座標（ｘ'，ｙ'）に基づき、点ｐの正規化カメラに対してイメージセンサ５０のレンズの歪みが加味された二次元座標（ｘ"，ｙ"）が算出される（Ｓ３３０）。二次元座標（ｘ"，ｙ"）の算出には、内部パラメータである第一歪み係数ｋ１及び第二歪み係数ｋ２が用いられる。具体的には、二次元座標（ｘ"，ｙ"）は、式「ｘ"＝ｘ'×（１＋ｋ１×ｒ２＋ｋ２×ｒ４）」と、「ｙ"＝ｙ'×（１＋ｋ１×ｒ２＋ｋ２×ｒ４）」とによって算出される。なお、「ｒ２＝ｘ'２＋ｙ'２」である。次に、画像座標系２００の点ｐの撮像画像上の二次元座標（ｕｃ，ｖｃ）が算出され、二次元座標（ｕｃ，ｖｃ）がＲＡＭ６３に記憶される（Ｓ３４０）。二次元座標（ｕｃ，ｖｃ）の算出には、二次元座標（ｘ"，ｙ"）と、内部パラメータであるＸ軸焦点距離ｆｘと、Ｙ軸焦点距離ｆｙと、Ｘ軸主点座標ｃｘと、Ｙ軸主点座標ｃｙとが用いられる。具体的には、式「ｕｃ＝ｆｘ×ｘ"＋ｃｘ」と、「ｖｃ＝ｆｙ×ｙ"＋ｃｙ」とによって算出される。以上の処理が、刺繍枠３２の縫製領域３２５の境界線上の点を対象として実行され、縫製領域３２５の境界線の画像座標系２００の二次元座標が得られる。次に、二次元座標算出処理は終了する。
【００５６】
引き続き図１３を参照して開始点取得処理の説明をする。Ｓ２３０の次に、Ｓ２２０で撮像した画像のうち、Ｓ２３０で求めた縫製領域３２５内に、開始点を指示するマークがあるか否かが判断される（Ｓ２４０）。開始点がない場合には（Ｓ２４０：Ｎｏ）、縫製領域３２５の全範囲を撮像したか否かが判断される（Ｓ２６０）。全範囲が撮像されていない場合には（Ｓ２６０：Ｎｏ）、ｎがインクリメントされ、処理はＳ２１０に戻る。Ｓ２４０において、開始点がある場合には（Ｓ２４０：Ｙｅｓ）、三次元座標算出処理が実行される（Ｓ２５０）。三次元座標算出処理では、撮像画像上のマーク（開始点）の位置を点ｐとし、点ｐがワールド座標系１００の点Ｐに変換された場合の三次元座標Ｍｗ（Ｘｗ，Ｙｗ，Ｚｗ）が算出される。三次元座標算出処理の詳細を、図１５を参照して説明する。
【００５７】
図１５に示すように、三次元座標算出処理ではまず、画像座標系２００の撮像画像上の点ｐの二次元座標（ｕｃ，ｖｃ）から、画像座標系２００の正規化画像上の点ｐの二次元座標（ｘ"，ｙ"）が算出され、二次元座標（ｘ"，ｙ"）がＲＡＭ６３に記憶される（Ｓ４１０）。二次元座標（ｘ"，ｙ"）は、「ｘ"＝（ｕ−ｃｘ）／ｆｘ」と、「ｙ"＝（ｖ−ｃｙ）／ｆｙ」とによって算出される。Ｓ２１０において算出される二次元座標（ｘ"，ｙ"）は、内部パラメータであるＸ軸焦点距離ｆｘと、Ｙ軸焦点距離ｆｙと、Ｘ軸主点座標ｃｘと、Ｙ軸主点座標ｃｙとが加味された座標である。次に、点ｐの二次元座標（ｘ"，ｙ"）に基づき、レンズの歪みが取り除かれた正規化画像上の点ｐの二次元座標（ｘ'，ｙ'）が算出され、二次元座標（ｘ'，ｙ'）はＲＡＭ６３に記憶される（Ｓ４２０）。二次元座標（ｘ'，ｙ'）の算出には、内部パラメータである第一歪み係数ｋ１及び第二歪み係数ｋ２が用いられる。具体的には、式「ｘ'＝ｘ"−ｘ"×（１＋ｋ１×ｒ２＋ｋ２×ｒ４）」と、「ｙ'＝ｙ"−ｙ"×（１＋ｋ１×ｒ２＋ｋ２×ｒ４）」とによって算出される。
【００５８】
次に、Ｓ４２０で算出された二次元座標（ｘ'，ｙ'）に基づき、画像座標系２００の点ｐの三次元座標Ｍｃ（Ｘｃ，Ｙｃ，Ｚｃ）が算出され、三次元座標Ｍｃ（Ｘｃ，Ｙｃ，Ｚｃ）はＲＡＭ６３に記憶される（Ｓ４３０）。三次元座標Ｍｃ（Ｘｃ，Ｙｃ，Ｚｃ）は以下の関係式を用いて算出される。Ｘｃ，Ｙｃは、「Ｘｃ＝ｘ'×Ｚｃ」と、「Ｙｃ＝ｙ'×Ｚｃ」との関係が成り立つ。また、画像座標系２００の三次元座標Ｍｃ（Ｘｃ，Ｙｃ，Ｚｃ）と、ワールド座標系１００の三次元座標Ｍｗ（Ｘｗ，Ｙｗ，Ｚｗ）との間には、「Ｍｗ＝ＲｗＴ（Ｍｃ−ｔｗ）」の関係が成り立つ。なお、ＲｗＴはＲｗの転置行列である。ワールド座標系１００のＸＹ平面は刺繍枠３２に挟まれた被加工物３４の上面に設定されているので、ミシン１は、Ｚｗ＝０とし、「Ｘｃ＝ｘ'×Ｚｃ」と、「Ｙｃ＝ｙ'×Ｚｃ」と、「Ｍｗ＝ＲｗＴ（Ｍｃ−ｔｗ）」とを連立で解く。これによって、Ｚｃが算出され、Ｘｃ，Ｙｃが算出される。次に、画像座標系２００の点ｐの三次元座標Ｍｃ（Ｘｃ，Ｙｃ，Ｚｃ）に基づき、点ｐがワールド座標系１００の点Ｐに変換された場合の三次元座標Ｍｗ（Ｘｗ，Ｙｗ，Ｚｗ）が算出され、Ｍｗ（Ｘｗ，Ｙｗ，Ｚｗ）がＲＡＭ６３に記憶される（Ｓ４４０）。ワールド座標系１００の三次元座標Ｍｗ（Ｘｗ，Ｙｗ，Ｚｗ）は、「Ｍｗ＝ＲｗＴ（Ｍｃ−ｔｗ）」によって算出される。次に、三次元座標算出処理は終了する。
【００５９】
引き続き図１３を参照して開始点取得処理の説明をする。Ｓ２６０において、全範囲が撮像された場合（Ｓ２６０：Ｙｅｓ）、又はＳ２５０の次に、開始点取得処理は終了する。
【００６０】
以上のようにして、刺繍模様形成処理を実行するミシン１は、第１のパラメータを用いて、ユーザが被加工物３４に描いたマークの位置を開始点として、刺繍模様を形成させる。なお、図１３の開始点取得処理のＳ２３０において、ワールド座標系１００の三次元座標で示された縫製領域の境界線上の点Ｐに基づき、点Ｐが画像座標系２００の点ｐに変換された場合の二次元座標を算出するＣＰＵ６１は、本発明の二次元座標算出手段として機能する。開始点取得処理のＳ２５０において、画像座標系２００の撮像画像上の点ｐの二次元座標に基づき、点ｐがワールド座標系１００の点Ｐに変換された場合の三次元座標を算出するＣＰＵ６１は、本発明の三次元座標算出手段として機能する。
【００６１】
刺繍模様形成処理では、開始点取得処理のＳ２４０において、第１のパラメータを用いて算出された画像座標系２００の点ｐの二次元座標に基づき、撮像画像上の縫製領域３２５が特定される。ミシン１は、第１のパラメータを用いてイメージセンサ５０の校正を行っているので、イメージセンサ５０の固有の特性や、イメージセンサ５０の設置状態の影響を考慮して、画像座標系２００の点ｐの二次元座標を算出することができる。刺繍座標系３００に基づき画像座標系２００が設定されているので、ミシン１は、撮像画像上の縫製領域３２５を正確に特定することができる。さらに、図１３のＳ２４０において、特定された縫製領域内の画素を対象として、開始点を指示するマークの検出処理が実行される。したがって、ミシン１は、撮像画像のすべての画素を対象として、上記検出処理が実行される場合に比べ、効率的にマークを検出することができる。
【００６２】
また、刺繍模様形成処理では、図１３の開始点取得処理のＳ２５０において、画像座標系２００の撮像画像上の点の二次元座標をワールド座標系１００の点の三次元座標に変換することができる。第１のパラメータは、イメージセンサ５０の校正に用いるパラメータとしての機能を有している。したがって、ミシン１は、イメージセンサ５０に固有の特性やイメージセンサ５０の設置状態の影響を排除して、撮像された画像上の点を現実の三次元座標系（ワールド座標系１００）の点として算出ことができる。第１の実施形態では、刺繍座標系３００がワールド座標系１００となるように、第１のパラメータが算出される。したがって、ミシン１は、三次元座標算出処理において算出された三次元座標を用いて、刺繍枠３２に的確な移動指示を出すことができる。すなわち、ミシン１は、加工布等の被加工物３４にユーザによって描かれたマークの位置が針落ち点となるように、刺繍枠３２を的確に移動させることができる。
【００６３】
第１の実施形態では、ユーザが被加工物３４に描いたマークの位置を開始点としていたが、他の方法によって開始点が取得されてもよい。例えば、ミシン１は、被加工物を撮像した撮像画像をＬＣＤ１０に表示させ、ユーザがパネル操作によって指定した撮像画像上の点を開始点として取得してもよい。変形例の開始点取得処理を、図１６を参照して説明する。
【００６４】
図１６に示すように、変形例の開始点取得処理ではまず、刺繍枠３２に挟まれた被加工物３４が撮像される（Ｓ２０５）。次に、視点移動の指示があるか否かが判断される（Ｓ２１５）。視点移動の指示は、撮像画像を任意の視点から見た仮想画像に変換して、ＬＣＤ１０に表示させることを指示する。図２に示すように、イメージセンサ５０は、針板８０を上部から撮像する位置に取り付けられている。つまり、針板８０に対して、上（Ｚ軸のマイナス方向）に視点がある。視点移動の指示は、この視点を、例えば針板８０の右斜め上に変更し、右斜め上から被加工物３４が撮像された視点変更画像に撮像画像を加工することを指示する。視点移動の指示は、例えば、変更後の視点とともに、パネル操作によって入力される。視点移動の指示がある場合には（Ｓ２１５：Ｙｅｓ）、画像加工処理が実行される（Ｓ２２５）。画像加工処理では、イメージセンサ５０によって撮像された撮像画像を加工し、Ｓ２１５で指示された視点からの仮想画像に変換する処理が実行される。画像加工処理の詳細を、図１７を参照して説明する。
【００６５】
画像加工処理の説明において、移動させた視点の座標系（図示せず）（以下、「移動視点座標系」と言う。）の点ｐ'の三次元座標をＭｃｍ（Ｘｃｍ，Ｙｃｍ，Ｚｃｍ）とする。移動視点座標系の視点変更画像上の点ｐ'の二次元座標を（ｕｃｍ，ｖｃｍ）とする。ワールド座標系の点Ｐの三次元座標Ｍｗ（Ｘｗ，Ｙｗ，Ｚｗ）を移動視点座標系の点ｐ'の三次元座標Ｍｃｍ（Ｘｃｍ，Ｙｃｍ，Ｚｃｍ）に変換する際には、Ｒｗ２（３×３の回転行列），ｔｗ２（３×１の並進ベクトル）が用いられる。これらの行列式は、移動先の視点がワールド座標系１００のどの点に該当するかに基づいて決定される。移動視点座標系の三次元座標Ｍｃｍ（Ｘｃｍ，Ｙｃｍ，Ｚｃｍ）を、画像座標系２００の三次元座標Ｍｃ（Ｘｃ，Ｙｃ，Ｚｃ）に変換する行列式を、Ｒ２１（３×３の回転行列），ｔ２１（３×１の並進ベクトル）とする。
【００６６】
図１７に示すように、画像加工処理ではまず、行列式Ｒ２１，ｔ２１が算出され、行列式Ｒ２１，ｔ２１がＲＡＭ６３に記憶される（Ｓ５１０）。Ｒｗと、Ｒｗ２と、Ｒ２１と、ｔｗと、ｔｗ２と、ｔ２１とには、次の関係が成り立つ。「Ｍｃ＝Ｒｗ×Ｍｗ＋ｔｗ（ワールド座標系１００から画像座標系２００へ）」と、「Ｍｃｍ＝Ｒｗ２×Ｍｗ＋ｔｗ２（ワールド座標系１００から移動視点座標系へ）」と、「Ｍｃ＝Ｒ２１×Ｍｃｍ＋ｔ２１（移動視点座標系から画像座標系２００へ）」とである。これらの式から、「Ｒ２１＝Ｒｗ×Ｒｗ２Ｔ」と、「ｔ２１＝−Ｒｗ×Ｒｗ２Ｔ×ｔｗ２＋ｔｗ」とが得られる。Ｒｗと、Ｒｗ２と、ｔｗとｔｗ２とはすでに算出された固定値であるので、Ｒ２１，ｔ２１は一意的に決定される。
【００６７】
次に、視点変更画像上の点ｐ'の二次元座標（ｕｃｍ，ｖｃｍ）に基づき、点ｐ'が撮像画像上の点ｐに変換された場合の二次元座標（ｕｃ，ｖｃ）が算出され、二次元座標（ｕｃｍ，ｖｃｍ）と二次元座標（ｕｃ，ｖｃ）との対応がＲＡＭ６３に記憶される（Ｓ５２０）。Ｓ５２０の処理は、視点変更画像のすべての画素について実施され、撮像画像の画素（ｕｃ，ｖｃ）と、視点変更画像の画素（ｕｃｍ，ｖｃｍ）との対応関係がＲＡＭ６３に記憶される。具体的には、まず、視点変更画像上の点ｐ'の二次元座標（ｕｃｍ，ｖｃｍ）に基づき、移動視点座標系の正規化画像上の点ｐ'の二次元座標（ｘ２"，ｙ２"）が算出される。二次元座標（ｘ２"，ｙ２"）の算出には、内部パラメータであるＸ軸焦点距離ｆｘと、Ｙ軸焦点距離ｆｙと、Ｘ軸主点座標ｃｘと、Ｙ軸主点座標ｃｙとが用いられる。具体的には、二次元座標（ｘ２"，ｙ２"）は、「ｘ２"＝（ｕｃｍ−ｃｘ）／ｆｘ」と、「ｙ２"＝（ｖｃｍ−ｃｙ）／ｆｙ」とによって算出される。次に、移動視点座標系の正規化画像上の点ｐ'の二次元座標（ｘ２"，ｙ２"）にレンズの歪みを加味した二次元座標（ｘ２'，ｙ２'）が算出され、二次元座標（ｘ２'，ｙ２'）がＲＡＭ６３に記憶される。二次元座標（ｘ２'，ｙ２'）の算出には、内部パラメータである第一歪み係数ｋ１及び第二歪み係数ｋ２が用いられる。具体的には、二次元座標（ｘ２'，ｙ２'）は、「ｘ２'＝ｘ２"−ｘ２"×（１＋ｋ１×ｒ２＋ｋ２×ｒ４）」と、「ｙ２'＝ｙ２"−ｙ２"×（１＋ｋ１×ｒ２＋ｋ２×ｒ４）」とによって算出される。なお、「ｒ２＝ｘ２'２＋ｙ２'２」である。
【００６８】
次に、移動視点座標系の正規化画像上の点ｐ'の二次元座標（ｘ２'，ｙ２'）から移動視点座標系の点ｐ'の三次元座標Ｍｃｍ（Ｘｃｍ，Ｙｃｍ，Ｚｃｍ）が算出され、三次元座標Ｍｃｍ（Ｘｃｍ，Ｙｃｍ，Ｚｃｍ）がＲＡＭ６３に記憶される。三次元座標Ｍｃｍ（Ｘｃｍ，Ｙｃｍ，Ｚｃｍ）は、次の関係式を用いて算出される。Ｘｃｍ，Ｙｃｍについて、「Ｘｃｍ＝ｘ２'×Ｚｃｍ」，「Ｙｃｍ＝ｙ２'×Ｚｃｍ」である。さらに、ミシンベッド２の上面をワールド座標系１００のＸＹ平面としているので、「Ｍｃｍ＝Ｒｗ２×Ｍｗ＋ｔｗ２」においてＺｗ＝０とする。そして、連立方程式の解が算出されることによって、移動視点座標系の点ｐ'の三次元座標Ｍｃｍ（Ｘｃｍ，Ｙｃｍ，Ｚｃｍ）が算出される。
【００６９】
次に、移動視点座標系の点ｐ'の三次元座標Ｍｃｍ（Ｘｃｍ，Ｙｃｍ，Ｚｃｍ）に基づき、点ｐ'が画像座標系２００の点ｐに変換された場合の三次元座標Ｍｃ（Ｘｃ，Ｙｃ，Ｚｃ）が算出され、三次元座標Ｍｃ（Ｘｃ，Ｙｃ，Ｚｃ）がＲＡＭ６３に記憶される。三次元座標Ｍｃ（Ｘｃ，Ｙｃ，Ｚｃ）は、式「Ｍｃ＝Ｒ２１×Ｍｃｍ＋ｔ２１」にＭｃｍ（Ｘｃｍ，Ｙｃｍ，Ｚｃｍ）が代入され算出される。次に、画像座標系２００の点ｐの三次元座標Ｍｃ（Ｘｃ，Ｙｃ，Ｚｃ）に基づき、画像座標系２００の正規化画像上の点ｐの二次元座標（ｘ１'，ｙ１'）が算出され、三次元座標Ｍｃｍ（Ｘｃｍ，Ｙｃｍ，Ｚｃｍ）はＲＡＭ６３に記憶される。二次元座標（ｘ１'，ｙ１'）は、「ｘ１'＝ｘ１／ｚ１」と、「ｙ１'＝ｙ１／ｚ１」とによって算出される。次に、レンズの歪みが加味された二次元座標（ｘ１"，ｙ１"）が算出され、二次元座標（ｘ１"，ｙ１"）はＲＡＭ６３に記憶される。二次元座標（ｘ１"，ｙ１"）は、「ｘ１"＝ｘ１'×（１＋ｋ１×ｒ２＋ｋ２×ｒ４）」と、「ｙ１"＝ｙ１'×（１＋ｋ１×ｒ２＋ｋ２×ｒ４）」とによって算出される。なお、「ｒ２＝ｘ１'２＋ｙ１'２」である。次に、画像座標系２００の正規化画像上の点ｐの二次元座標（ｘ１"，ｙ１"）に基づき、画像座標系２００の撮像画像上の点ｐの二次元座標（ｕｃ，ｖｃ）が算出され、二次元座標（ｕｃ，ｖｃ）はＲＡＭ６３に記憶される。二次元座標（ｕｃ，ｖｃ）は、「ｕｃ＝ｆｘ×ｘ１"＋ｃｘ」と、「ｖｃ＝ｆｙ×ｙ１"＋ｃｙ」とによって算出される。
【００７０】
次に、ＲＡＭ６３に記憶された、撮像画像の画素（ｕｃ，ｖｃ）と、視点変更画像の画素（ｕｃｍ，ｖｃｍ）との対応関係に基づき、撮像画像から視点変更画像が作成され、作成された視点変更画像がＲＡＭ６３に記憶される（Ｓ５３０）。次に、画像加工処理は終了する。
【００７１】
引き続き、図１６を参照して変形例の開始点取得処理について説明する。Ｓ２１５において、視点移動の指示がない場合（Ｓ２１５：Ｎｏ）、又はＳ２２５の次に、Ｓ２０５で撮像された撮像画像又はＳ２２５で作成された視点変更画像がＬＣＤ１０に表示される（Ｓ２３５）。次に、開始点を指定する指示があるか否かが判断される（Ｓ２４５）。ＬＣＤ１０に表示された撮像画像又は視点変更画像上の点が、パネル操作によって選択された場合に、開始点を指定する指示があると判断される。指示がない場合には指示があるまで待機される（Ｓ２４５：Ｎｏ）。指示がある場合には（Ｓ２４５：Ｙｅｓ）、三次元座標算出処理が実行される（Ｓ２５０）。三次元座標算出処理では、Ｓ２４５で指示された開始点のワールド座標系１００の三次元座標が算出される。Ｓ２３５で視点変更画像が表示された場合には、Ｓ２２５で求められた撮像画像の画素（ｕｃ，ｖｃ）と、視点変更画像の画素（ｕｃｍ，ｖｃｍ）との対応関係に基づき、画像座標系２００の二次元座標を特定した後、三次元座標算出処理が実行される。三次元座標算出処理は、第１の実施形態と同様であるので説明を省略する。次に、開始点取得処理は終了する。
【００７２】
以上のように、変形例の開始点取得処理が実行される。変形例の開始点取得処理のＳ２２５において、第１のパラメータを用いて、撮像画像を加工して視点変更画像を作成するＣＰＵ６１は、本発明の画像加工手段として機能する。
【００７３】
ミシン１は、第１のパラメータを用いて、イメージセンサ５０で撮像された画像を加工し、視点変更画像を作成することができる。画像加工処理では、撮像画像に基づき、イメージセンサ５０に固有の特性やイメージセンサ５０の設置状態の影響を排除した視点変更画像が作成される。ミシン１が、視点変更画像上の点の三次元座標を求める際には、撮像画像の画素と、視点変更画像の画素との対応関係に基づき、画像座標系２００の二次元座標を特定した後、三次元座標算出処理が実行される。三次元座標算出処理では、第１のパラメータを用いて、ワールド座標系１００（刺繍座標系３００）の三次元座標が算出される。したがって、ミシン１は、変形例の開始点取得処理によって算出されたワールド座標系１００の三次元座標に基づき、刺繍枠３２をユーザが指示した位置に移動させることができる。
【００７４】
ところで、第１の実施形態のパラメータ算出処理では、ミシン１は、刺繍座標系３００をワールド座標系１００とする第１のパラメータを算出していた。しかし、例えば、移動条件記憶エリア６４４に記憶されている移動条件が適切に設定されていない等の場合には、刺繍枠３２は、指示データによって指示される量だけ移動しない。より具体的には、加工データによって、刺繍枠３２を（Ｘ，Ｙ）＝（５，０）移動させることが指示されても、実際には、刺繍枠３２が（Ｘ，Ｙ）＝（４．５，０）移動される場合がある。このような場合、刺繍座標系３００に基づき画像座標系２００が設定されると、例えば、撮像画像上の２点間の現実の距離が的確に算出されないという問題が生じる。このような場合、例えば、第２の実施形態のように、刺繍座標系３００とワールド座標系１００とはそれぞれ別に設定されていてもよい。
【００７５】
第２の実施形態では、画像座標系２００とワールド座標系１００とを対応付ける処理は、公知の校正処理に従って別途実行される。一方、画像座標系２００と刺繍座標系３００とを対応付ける第２のパラメータは、第１の実施形態の実施形態と同様な処理によって算出される。第２のパラメータは、第１のパラメータと同様に算出されるが、画像座標系２００又はワールド座標系１００の座標を刺繍座標系３００の座標に変換する処理にのみ用いられる。すなわち、第２のパラメータは、画像座標系２００の座標をワールド座標系１００の座標に変換する処理、及びワールド座標系１００の座標を画像座標系２００の座標に変換する処理には用いられない。例えば、ワールド座標系１００の座標で示された加工データによって、刺繍枠３２を所定量移動させることが指示されている場合に、ミシン１は、第２のパラメータを用いて、加工データを一旦刺繍座標系３００のデータに変換させる。そして、ミシン１は、刺繍座標系３００に変換された加工データに基づき、刺繍枠３２を移動させる。このようにすれば、移動条件記憶エリア６４４に記憶されている移動条件が適切に設定されていない場合にも、ミシン１は、刺繍枠３２をユーザが意図する位置に移動させることができる。第２の実施形態において、第２のパラメータを算出するＣＰＵ６１は、本発明のパラメータ算出手段として機能する。
【００７６】
なお、本発明の刺繍データ作成装置は、上記した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加えてもよい。例えば、以下の（Ａ）〜（Ｉ）の変形を適宜加えてもよい。
【００７７】
（Ａ）ミシン１が備える撮像手段は、ＣＣＤカメラであってもよいし、他の撮像素子であってもよい。撮像手段としてのイメージセンサ５０は、ミシンベッド２上を撮像可能であればよく、その取り付け位置は、適宜変更可能である。
【００７８】
（Ｂ）特徴点が形成される被加工物は、白色の紙の他、例えば、白色以外の色の紙であってもよい。また例えば、特徴点が形成される被加工物は、樹脂や加工布であってもよい。
【００７９】
（Ｃ）被加工物に形成される特徴点３０１は、上記実施形態で例示した縫針７によって形成される貫通孔に限定されない。例えば、被加工物に形成される特徴点は、マーカーで描いた点であってもよい。この場合、マーカーは、針棒６の下端に固定される。マーカーの上下方向の取り付け位置は、針棒６が最下端に移動したときに、マーカーのペン先が被加工物に接触する位置とする。このようにすれば、ミシン１は針棒６を上下動させることによって、針落ち点に対応した特徴点を描くことができる。特徴点を精度良く抽出する観点から、マーカーの色は、被加工物とのコントラストがある色が好ましい。他の例では、被加工物に形成される特徴点は、縫目であってもよい。被加工物を刺繍模様を形成する加工布と同じ種類の加工布とし、特徴点を、刺繍模様を形成するのに用いる糸で形成された縫目とした場合、変形例のミシンは、布の厚さや縮み量と考慮してパラメータを求めることができる。また、特徴点として被加工物に貫通孔を形成させる場合、被加工物が撮像される際に、被加工物の下部に、被加工物との明暗の差が比較的大きいシート状の部材を配置してもよい。このようにすれば、撮像画像には、貫通孔が形成されている部分にはシート状の部材が写る。このため、撮像画像中の被加工物と貫通孔との明暗の差を大きくすることができる。
【００８０】
（Ｄ）上記実施形態では、特徴点３０１はイメージセンサ５０の撮像可能範囲１０４内に規則的に形成されていた。しかし、特徴点の配列は、適宜変更可能である。特徴点が撮像可能範囲内に規則的に配置される他の例としては、例えば、特徴点は撮像可能範囲１０４内に、放射線状に配置されていてもよい。また例えば、特徴点３０１は、不規則に形成されていてもよい。ただし、パラメータを精度良く算出する観点から、特徴点３０１は、図１０のＳ６０において刺繍枠３２を移動させた状態の撮像可能範囲内に、５つ以上設けられることが好ましい。
【００８１】
（Ｅ）ミシン１は、第２のパラメータを用いて、刺繍座標系３００を校正してもよい。具体的には、ミシン１は、第２のパラメータを用い、刺繍座標系３００がワールド座標系１００と一致するように、移動条件記憶エリア６４４に記憶されている移動条件を修正してもよい。このようにした場合には、第１の実施形態と同様に、刺繍座標系３００に基づき画像座標系２００が設定されることになる。したがって、変形例（Ｅ）のミシン１は、刺繍枠３２をユーザが意図した位置に移動させることができる。
【００８２】
（Ｆ）第１又は第２のパラメータを算出する手順については、適宜変更可能である。例えば、ミシン１は、図１０のＳ８０において、ハフ変換を用いて特徴点の抽出を実行していたが、他の手法を用いて特徴点を抽出してもよい。ミシン１は、図１０のＳ９０において、既知の二次元座標とＳ８０で算出した二次元座標とを用いて、特徴点座標と、基準座標とを対応付けていたが、他の方法を用いてもよい。例えば、ミシン１は、形状が互いに異なる特徴点（例えば、丸と四角など）を複数形成する場合には、特徴点の形状に応じて特徴点座標と基準座標とを対応付ける処理を実行してもよい。既知の二次元座標及び基準座標はパラメータ算出処理が実行される前に決定されていればよく、既知の二次元座標及び基準座標の算出方法は適宜変更可能である。
【００８３】
（Ｇ）刺繍座標系と画像座標系とは、パラメータ算出処理によって算出されたパラメータによって対応付けられていればよく、各座標系の設定方法は適宜変更可能である。例えば、ミシン１の上下方向の上側がＺ軸のプラスとなるように、刺繍座標系が設定されてもよい。
【００８４】
（Ｈ）刺繍装置３０は、移動手段としてＸ軸モータ８１及びＹ軸モータ８２を備えていたが、いずれかであってもよい。また、刺繍装置３０は、Ｘ軸モータ８１及びＹ軸モータ８２の少なくともいずれかに加え、Ｚ軸方向に刺繍枠３２を移動させるＺ軸モータを備えていてもよい。また、刺繍装置３０は、保持部材として刺繍枠３２を備えていたが、他の保持部材を備えてもよい。
【００８５】
（Ｉ）第１又は第２のパラメータの利用する処理として、二次元座標算出処理と、三次元座標算出処理と、画像加工処理とを例示したが、その他の処理にパラメータが用いられてもよい。また、二次元座標算出処理と、三次元座標算出処理と、画像加工処理とのそれぞれは、必要に応じて処理を簡略化したり、公知の他の技術を利用したりして実行されてもよい。
【符号の説明】
【００８６】
１    ミシン
３０    刺繍装置
３２    刺繍枠
３４    被加工物
５０    イメージセンサ
６１    ＣＰＵ
７９    ミシンモータ
８１    Ｘ軸モータ
８２    Ｙ軸モータ
１０４    撮像可能範囲
２００    画像座標系
３００    刺繍座標系
３０１    特徴点
【図１】
2011005180.tif 000003
【図２】
2011005180.tif 000004
【図３】
2011005180.tif 000005
【図４】
2011005180.tif 000006
【図５】
2011005180.tif 000007
【図６】
2011005180.tif 000008
【図７】
2011005180.tif 000009
【図８】
2011005180.tif 000010
【図９】
2011005180.tif 000011
【図１０】
2011005180.tif 000012
【図１１】
2011005180.tif 000013
【図１２】
2011005180.tif 000014
【図１３】
2011005180.tif 000015
【図１４】
2011005180.tif 000016
【図１５】
2011005180.tif 000017
【図１６】
2011005180.tif 000018
【図１７】
2011005180.tif 000019