(57)【要約】【課題】対象物を保持する保持装置の座標系と、対象物を撮影した撮影画像の座標系とを精度良く対応付けることが可能な制御装置、及び制御方法を提供する。【解決手段】ＰＣは、布を保持してミシンに受け渡す吸着機構と、第一基準線Ｌ１と第二基準線Ｌ２とを有し且つ交差点で互いに交差するチャートを撮影する撮影部とを備えた移動機構に接続し、画像座標系と装置座標系を対応付ける制御を行う。ＰＣは、第一基準線Ｌ１、第二基準線Ｌ２の夫々の複数の位置の夫々における左右方向の中点である第一中点、第二中点を特定する。ＰＣは、特定した第一中点、第二中点の夫々の位置の平均位置を算出する。ＰＣは、平均位置を通過する第一直線、第二直線を特定し、第一直線と第二直線の交差点の座標を決定する。ＰＣは、決定した交差点の座標に基づき、画像座標系と装置座標系を対応付ける。【選択図】図１７
2019012040.tif 000002
【特許請求の範囲】
【請求項１】
対象物を保持して加工装置に受け渡す保持部と、
第一方向に延びる第一基準線と、前記第一方向と交差する第二方向に延びる第二基準線とを有し、且つ、前記第一基準線と前記第二基準線とが交差点で交差するチャートを、前記保持部により保持した状態で撮影する撮影部と
を備えた保持装置に接続し、前記撮影部が撮影した撮影画像と前記保持部との夫々の座標系を対応付ける制御を行う制御装置であって、
前記撮影画像を解析して前記交差点の座標を決定する決定手段と、
前記チャートを保持した前記保持部が複数の位置にある状態の夫々で、前記決定手段により決定した前記交差点の座標と、前記保持部の位置を示す座標とに基づき、前記撮影画像と前記保持部との夫々の座標系を対応付ける制御手段と
を備え、
前記決定手段は、
前記撮影画像に含まれる前記第一基準線上の複数の位置の夫々における、前記第一方向と直交する方向の中点である複数の第一中点を特定する第一特定手段と、
前記第一特定手段により特定した前記複数の第一中点の位置の夫々の、前記第一方向と直交する方向における第一平均位置を算出する第一平均算出手段と、
前記第一方向に延び、前記第一平均算出手段により算出した前記第一平均位置を通過する第一直線を特定する第二特定手段と、
前記撮影画像に含まれる前記第二基準線上の複数の位置の夫々における、前記第二方向と直交する方向の中点である複数の第二中点を特定する第三特定手段と、
前記第三特定手段により特定した前記複数の第二中点の位置の夫々の、前記第二方向と直交する方向における第二平均位置を算出する第二平均算出手段と、
前記第二方向に延び、前記第二平均算出手段により算出した前記第二平均位置を通過する第二直線を特定する第四特定手段と、
前記第二特定手段により特定した前記第一直線と、前記第四特定手段により特定した前記第二直線との交点の座標を、前記交差点の座標として決定する座標決定手段と、
を備えたことを特徴とする制御装置。
【請求項２】
前記制御手段は、
前記チャートを保持した前記保持部が第一基準位置にある状態で、前記撮影部により撮影した前記撮影画像に基づき前記決定手段が決定した第一交差点座標、
前記チャートを保持した前記保持部が第二基準位置にある状態で、前記撮影部により撮影した前記撮影画像に基づき前記決定手段が決定した第二交差点座標、
前記第一基準位置にある時の前記保持部の位置を示す第一保持部座標、及び、
前記第二基準位置にある時の前記保持部の位置を示す第二保持部座標に基づき、前記撮影画像と前記保持部との夫々の座標系を対応付けることを特徴とする請求項１に記載の制御装置。
【請求項３】
前記第一方向と前記第二方向とは直交し、
前記チャートは、前記第一基準線及び前記第二基準線を囲む四角形の４つの頂点のうち対角に位置する２つの頂点の位置の夫々にマークを有し、
前記決定手段は、
２つの前記マークを検出する検出手段を更に有し、
前記撮影部により撮影した前記撮影画像のうち、前記検出手段により検出した前記２つのマークの夫々の位置を対角の頂点として有する四角形で囲まれた領域を解析して前記交差点の座標を決定することを特徴とする請求項１又は２に記載の制御装置。
【請求項４】
前記マークは、
円環状の曲線を有し、且つ、
前記曲線の径方向の長さと、前記曲線で囲まれた内部の径方向の長さの比が所定条件を満たし、
前記検出手段は、
前記撮影画像を前記第一方向と前記第二方向とに沿って逐次解析することにより、前記曲線の長さと、前記曲線で囲まれた内部の長さとの比が、前記第一方向と前記第二方向との何れにおいても前記所定条件を満たす場合に前記マークを検出することを特徴とする請求項３に記載の制御装置。
【請求項５】
対象物を保持して加工装置に受け渡す保持部と、
第一方向に延びる第一基準線と、前記第一方向と交差する第二方向に延びる第二基準線とを有し、且つ、前記第一基準線と前記第二基準線とが交差点で交差するチャートを、前記保持部により保持した状態で撮影する撮影部と
を備えた保持装置に接続し、前記撮影部が撮影した撮影画像と前記保持部との夫々の座標系を対応付ける制御を行う制御装置によって実行される制御方法であって、
前記撮影画像を解析して前記交差点の座標を決定する決定ステップと、
前記チャートを保持した前記保持部が複数の位置にある状態の夫々で、前記決定ステップにより決定した前記交差点の座標と、前記保持部の位置を示す座標とに基づき、前記撮影画像と前記保持部との夫々の座標系を対応付ける制御ステップと
を備え、
前記決定ステップは、
前記撮影画像に含まれる前記第一基準線上の複数の位置の夫々における、前記第一方向と直交する方向の中点である複数の第一中点を特定する第一特定ステップと、
前記第一特定ステップで特定した前記複数の第一中点の位置の夫々の、前記第一方向と直交する方向における第一平均位置を算出する第一平均算出ステップと、
前記第一方向に延び、前記第一平均算出ステップで算出した前記第一平均位置を通過する第一直線を特定する第二特定ステップと、
前記撮影画像に含まれる前記第二基準線上の複数の位置の夫々における、前記第二方向と直交する方向の中点である複数の第二中点を特定する第三特定ステップと、
前記第三特定ステップで特定した前記複数の第二中点の位置の夫々の、前記第二方向と直交する方向における第二平均位置を算出する第二平均算出ステップと、
前記第二方向に延び、前記第二平均算出ステップで算出した前記第二平均位置を通過する第二直線を特定する第四特定ステップと、
前記第二特定ステップで特定した前記第一直線と、前記第四特定ステップで特定した前記第二直線との交点の座標を、前記交差点の座標として決定する座標決定ステップと、
を備えたことを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、対象物を保持する保持装置の座標系と、対象物を撮影した撮影画像の座標系とを対応付ける制御を行う制御装置、及び制御方法に関する。
【背景技術】
【０００２】
特許文献１は、基板とマスクとを精度良く重ね合わせるアライメント装置を開示する。アライメント装置は、基板に付した基板マーク及び基板角度マークと、マスクに付したマスクマークとを、カメラにより撮影する。アライメント装置は、撮影した夫々の画像から、明部と暗部との境界のデータを微分二値化処理して各マークのエッジ点を特定する。アライメント装置は、特定したエッジ点の座標データから各マークの中心点の座標値を求める。アライメント装置は、求めた各マークの中心点の座標値に基づき、各座標値をカメラ座標系から基板座標系に変換する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−７８１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
画像の位置をエッジ点に基づいて特定する時、ノッチの発生によりエッジ点の位置が不安定になり、画像の位置を精度良く特定できない時がある。故に、保持部により対象物を保持する保持装置において、対象物を撮影した撮影画像の座標系を保持装置の座標系に対応付ける時、精度が低下する可能性がある。
【０００５】
本発明の目的は、対象物を保持する保持装置の座標系と、対象物を撮影した撮影画像の座標系とを精度良く対応付けることが可能な制御装置、及び制御方法を提供することである。
【課題を解決するための手段】
【０００６】
本発明の第一態様に係る制御装置は、対象物を保持して加工装置に受け渡す保持部と、第一方向に延びる第一基準線と、前記第一方向と交差する第二方向に延びる第二基準線とを有し、且つ、前記第一基準線と前記第二基準線とが交差点で交差するチャートを、前記保持部により保持した状態で撮影する撮影部とを備えた保持装置に接続し、前記撮影部が撮影した撮影画像と前記保持部との夫々の座標系を対応付ける制御を行う制御装置であって、前記撮影画像を解析して前記交差点の座標を決定する決定手段と、前記チャートを保持した前記保持部が複数の位置にある状態の夫々で、前記決定手段により決定した前記交差点の座標と、前記保持部の位置を示す座標とに基づき、前記撮影画像と前記保持部との夫々の座標系を対応付ける制御手段とを備え、前記決定手段は、前記撮影画像に含まれる前記第一基準線上の複数の位置の夫々における、前記第一方向と直交する方向の中点である複数の第一中点を特定する第一特定手段と、前記第一特定手段により特定した前記複数の第一中点の位置の夫々の、前記第一方向と直交する方向における第一平均位置を算出する第一平均算出手段と、前記第一方向に延び、前記第一平均算出手段により算出した前記第一平均位置を通過する第一直線を特定する第二特定手段と、前記撮影画像に含まれる前記第二基準線上の複数の位置の夫々における、前記第二方向と直交する方向の中点である複数の第二中点を特定する第三特定手段と、前記第三特定手段により特定した前記複数の第二中点の位置の夫々の、前記第二方向と直交する方向における第二平均位置を算出する第二平均算出手段と、前記第二方向に延び、前記第二平均算出手段により算出した前記第二平均位置を通過する第二直線を特定する第四特定手段と、前記第二特定手段により特定した前記第一直線と、前記第四特定手段により特定した前記第二直線との交点の座標を、前記交差点の座標として決定する座標決定手段と、を備えたことを特徴とする。
【０００７】
制御装置は、チャートを撮影した撮影画像の第一基準線の中点の第一平均位置を通過する第一直線と、第二基準線の中点の第二平均位置を通過する第二直線との交点の座標を、交差点の座標として特定する。制御装置は、特定した交差点の座標と、保持部によるチャートの移動量とに基づき、撮影画像と保持部との夫々の座標系を対応付ける。これによって、制御装置は、第一基準線と第二基準線とをエッジ検出により検出して交差点の座標を特定する時よりも、交差点の座標を精度よく決定できる。故に、制御装置は、対象物を保持する保持装置の座標系と、対象物を撮影する撮影画像の座標系とを精度良く対応付けることができる。
【０００８】
第一態様において、前記制御手段は、前記チャートを保持した前記保持部が第一基準位置にある状態で、前記撮影部により撮影した前記撮影画像に基づき前記決定手段が決定した第一交差点座標、前記チャートを保持した前記保持部が第二基準位置にある状態で、前記撮影部により撮影した前記撮影画像に基づき前記決定手段が決定した第二交差点座標、前記第一基準位置にある時の前記保持部の位置を示す第一保持部座標、及び、前記第二基準位置にある時の前記保持部の位置を示す第二保持部座標に基づき、前記撮影画像と前記保持部との夫々の座標系を対応付けてもよい。制御装置は、保持部によりチャートを移動する前と後の夫々の位置で撮影画像により撮影した撮影画像に基づき、夫々の位置における交差点の座標（第一交差点座標、第二交差点座標）を決定する。制御装置は、決定した交差点の座標と、保持部の移動前と移動後の夫々の位置を示す座標（第一保持部座標、第二保持部座標）とに基づき、撮影画像と保持部との夫々の座標系を対応付ける。故に、制御部は、交差点と保持部との夫の移動量に基づき、撮影画像と保持部との夫々の座標系を対応付けることができる。
【０００９】
第一態様において、前記第一方向と前記第二方向とは直交し、前記チャートは、前記第一基準線及び前記第二基準線を囲む四角形の４つの頂点のうち対角に位置する２つの頂点の位置の夫々にマークを有し、前記決定手段は、２つの前記マークを検出する検出手段を更に有し、前記撮影部により撮影した前記撮影画像のうち、前記検出手段により検出した前記２つのマークの夫々の位置を対角の頂点として有する四角形で囲まれた領域を解析して前記交差点の座標を決定してもよい。制御装置は、交差点座標を決定する時に解析対象とする撮影画像の領域を制限できる。故に、制御部は、交差点の座標を決定する為に必要な処理の負荷を軽減できる。
【００１０】
第一態様において、前記マークは、円環状の曲線を有し、且つ、前記曲線の径方向の長さと、前記曲線で囲まれた内部の径方向の長さの比が所定条件を満たし、前記検出手段は、前記撮影画像を前記第一方向と前記第二方向とに沿って逐次解析することにより、前記曲線の長さと、前記曲線で囲まれた内部の長さとの比が、前記第一方向と前記第二方向との何れにおいても前記所定条件を満たす場合に前記マークを検出してもよい。該時、制御装置は、交差点を決定する為に解析の対象とする撮影画像の領域を、簡易且つ精度良く特定できる。
【００１１】
本発明の第二態様に係る制御方法は、対象物を保持して加工装置に受け渡す保持部と、第一方向に延びる第一基準線と、前記第一方向と交差する第二方向に延びる第二基準線とを有し、且つ、前記第一基準線と前記第二基準線とが交差点で交差するチャートを、前記保持部により保持した状態で撮影する撮影部とを備えた保持装置に接続し、前記撮影部が撮影した撮影画像と前記保持部との夫々の座標系を対応付ける制御を行う制御装置によって実行される制御方法であって、前記撮影画像を解析して前記交差点の座標を決定する決定ステップと、前記チャートを保持した前記保持部が複数の位置にある状態の夫々で、前記決定ステップにより決定した前記交差点の座標と、前記保持部の位置を示す座標とに基づき、前記撮影画像と前記保持部との夫々の座標系を対応付ける制御ステップとを備え、前記決定ステップは、前記撮影画像に含まれる前記第一基準線上の複数の位置の夫々における、前記第一方向と直交する方向の中点である複数の第一中点を特定する第一特定ステップと、前記第一特定ステップで特定した前記複数の第一中点の位置の夫々の、前記第一方向と直交する方向における第一平均位置を算出する第一平均算出ステップと、前記第一方向に延び、前記第一平均算出ステップで算出した前記第一平均位置を通過する第一直線を特定する第二特定ステップと、前記撮影画像に含まれる前記第二基準線上の複数の位置の夫々における、前記第二方向と直交する方向の中点である複数の第二中点を特定する第三特定ステップと、前記第三特定ステップで特定した前記複数の第二中点の位置の夫々の、前記第二方向と直交する方向における第二平均位置を算出する第二平均算出ステップと、前記第二方向に延び、前記第二平均算出ステップで算出した前記第二平均位置を通過する第二直線を特定する第四特定ステップと、前記第二特定ステップで特定した前記第一直線と、前記第四特定ステップで特定した前記第二直線との交点の座標を、前記交差点の座標として決定する座標決定ステップと、を備えたことを特徴とする。第二態様によれば、第一態様と同様の効果を奏することができる。
【図面の簡単な説明】
【００１２】
【図１】縫製システム３００の斜視図。
【図２】ミシン１の斜視図。
【図３】水平動機構６の斜視図。
【図４】移動装置１００の斜視図。
【図５】布把持装置１５０の正面図。
【図６】ＰＣ２００の電気的構成を示すブロック図。
【図７】ミシン１の電気的構成を示すブロック図。
【図８】移動装置１００の電気的構成を示すブロック図。
【図９】窓部１０１、流通板１４２の平面図。
【図１０】チャートＳを示す図。
【図１１】メイン処理を示す流れ図。
【図１２】座標取得処理を示す流れ図。
【図１３】マーク位置検出処理を示す流れ図。
【図１４】候補判定処理を示す流れ図。
【図１５】直線検出処理を示す流れ図。
【図１６】マークＭの検出方法を説明する為の図。
【図１７】第一中点の特定方法を説明する為の図。
【図１８】第一直線Ｆ１の特定方法を説明する為の図。
【図１９】第二中点の特定方法を説明する為の図。
【図２０】第二直線Ｆ２の特定方法を説明する為の図。
【図２１】第一交差点Ｃ１と第二交差点Ｃ２を説明する為の図。
【発明を実施するための形態】
【００１３】
図面を参照し本発明の一実施形態を説明する。以下説明は、図中に矢印で示す左右、前後、上下を使用する。
【００１４】
＜縫製システム３００の概要＞
図１を参照し、縫製システム３００の概略構成を説明する。縫製システム３００は、フレーム３０１、ミシン１、移動装置１００、パーソナルコンピュータ（「ＰＣ」と称す）２００を備える。フレーム３０１は、鉄又はアルミ製の棒材を矩形に組んだ構造体である。フレーム３０１は、中段に棚板３０５を設け、下段に棚板３０８を設ける。ミシン１は棚板３０５上に固定する。移動装置１００はミシン１の右方に設ける。ＰＣ２００は棚板３０８上に配置したノート型のＰＣであり、ミシン１と移動装置１００の動作を制御する。ＰＣ２００は、ミシン１の制御部５０（図７参照）と移動装置１００の制御部１１０（図８参照）の夫々に電気的に接続する。制御部５０、１１０は、棚板３０５の下部に設けた制御箱３０７に収容する。
【００１５】
後述するミシン１の補助板５は、布箱１０２、窓部１０１、流通板１４２を備える。布箱１０２は、ミシン１の右前方に設け、ミシン１の縫製対象物である布１０５（図９参照）を積み重ねて収容する。本実施形態において、布１０５はシャツの前身頃である。窓部１０１は、布箱１０２の右後方に設ける。窓部１０１は、円形の強化ガラス又は透明なアクリル板である。流通板１４２は布箱１０２後方に設ける。流通板１４２は、上下方向に開口した複数の孔である通気孔を備える。移動装置１００は、布箱１０２に収容した布１０５を一枚ずつ移動して窓部１０１の何れかの位置に載置した後、更に布１０５を移動して流通板１４２の何れかの位置に載置する。以下、布箱１０２に収容した布１０５の位置を「第一位置」（図９参照）と称す。窓部１０１において布１０５を載置する位置を「第二位置」（図９参照）と称す。流通板１４２において布１０５を載置する位置を「第三位置」（図９参照）と称す。撮影部１１７は、移動装置１００が第二位置から第三位置に布１０５を移動する時、布１０５を撮影する。ミシン１は、第三位置にある布１０５を受け取り、縫製する。
【００１６】
＜ミシン１＞
図２、図３を参照しミシン１の機械的構成を説明する。ミシン１はベッド部２、脚柱部３、アーム部４、縫製機構８を備える。ベッド部２は、棚板３０５（図１参照）上に配置する。ベッド部２は前後方向に延びる。脚柱部３は、ベッド部２後側から上方に延びる。アーム部４は、脚柱部３上端からベッド部２の上面に対向して前方に延び、前端に前端部７を備える。縫製機構８は、ミシンモータ３１（図７参照）、主軸、針棒駆動機構、針棒１０、垂直釜を備える。ミシンモータ３１は脚柱部３内部に設ける。主軸と針棒駆動機構はアーム部４内部に設ける。主軸は前後方向に延びる。主軸の後端部はミシンモータ３１に連結し、主軸の前端部は針棒駆動機構に連結する。針棒駆動機構は針棒１０と連結する。針棒１０は前端部７の下端から下方へ延びる。縫針１１は針棒１０の下端に装着する。垂直釜は、ベッド部２内部に設ける。垂直釜は、ベッド部２と脚柱部３の内部に設けた連結機構を介して、ミシンモータ３１と連結する。
【００１７】
ミシン１は、ベッド部２の上方に補助板５と水平動機構６を備える。補助板５は針棒１０よりも下方に位置し、水平方向に延びる上面を有する。補助板５は針板１２を備える。針板１２上面と補助板５上面は略同じ高さである。針板１２は垂直釜の真上にある。針板１２は、縫針１１が挿通可能な針穴１３を有する。
【００１８】
水平動機構６は、Ｘ軸移動機構、Ｘ軸モータ３２（図７参照）、Ｘ移動板、押え腕６５、Ｙ移動腕６６、Ｙ軸移動機構（図示略）、Ｙ軸モータ３４（図７参照）、保持体７０を備える。Ｘ軸移動機構はベッド部２内部に設ける。Ｘ軸モータ３２はＸ軸移動機構と連結するパルスモータである。Ｘ軸移動機構は、Ｘ軸モータ３２を駆動源としてＸ移動板をＸ軸方向（左右方向）へ移動する。Ｘ移動板の上面は、前後方向に延びるレール（図示略）を備える。レールは、押え腕６５を前後方向に移動可能に支持する。押え腕６５は、補助板５よりも上方にある。押え腕６５は、Ｘ移動板と共にＸ軸方向へ移動する。押え腕６５は、左右方向に並ぶ一対のエアシリンダ６９を備える。
【００１９】
Ｙ移動腕６６は、支持部６７と腕部６８を備える。支持部６７は左右方向に延びる。支持部６７は、押え腕６５の後部をＸ軸方向に移動可能に支持する。腕部６８は支持部６７後側に連結し、前後方向に延びる。腕部６８は、ベッド部２内に設けたＹ軸移動機構に接続する。Ｙ軸モータ３４はＹ軸移動機構に連結するパルスモータである。Ｙ軸移動機構はＹ軸モータ３４（図７参照）を駆動源として腕部６８をＹ軸方向（前後方向）へ移動する。支持部６７は、腕部６８の移動に伴いＹ軸方向へ移動する。押え腕６５は、Ｙ移動腕６６と共にＹ軸方向へ移動する。
【００２０】
保持体７０は押え腕６５の前端部に取り付ける。保持体７０は、昇降板７１、エアシリンダ７２、押え足７３、レール７５、スライダ７６、押え板７４を備える。昇降板７１は、一対のエアシリンダ６９の夫々のロッドに連結する。昇降板７１は、エアシリンダ６９の駆動によって上下動する。エアシリンダ７２は、左右方向に延び、昇降板７１に固定する。押え足７３は側面視Ｌ字状であり、エアシリンダ７２のロッドの左端部に連結する。押え足７３はエアシリンダ７２の駆動によって左右動する。レール７５は左右に延び、押え足７３の後面に固定する。スライダ７６はレール７５に係合し、押え足７３を左右動可能に支持する。押え板７４は押え足７３の下端部に固定する。押え板７４は水平方向に配置した板部材であり、平面視矩形状の開口を有する。
【００２１】
押え板７４は昇降板７１と共に上下動する。押え板７４は、移動範囲の下端に位置した時、補助板５との間に布１０５を上下から挟んで保持する。押え板７４は、移動範囲の上端に位置した時、補助板５から上方に離れ、布１０５の保持を解除する。押え足７３は、エアシリンダ７２の駆動により左右方向に移動する。図３では、移動範囲の右端に位置する押え足７３を実線で図示し、移動範囲の左端に位置する押え足７３を二点鎖線で示す。押え腕６５は、押え板７４と補助板５との間に布１０５を挟んだ状態でＸ軸モータ３２とＹ軸モータ３４の駆動により移動し、第三位置にある布１０５を、針板１２上の針穴１３上方に移動する。以下、針板１２上の針穴１３上方に布１０５が配置する位置を「第四位置」と称す。
【００２２】
＜移動装置１００＞
図４、図５を参照し移動装置１００の機械的構成を説明する。移動装置１００は、布把持装置１５０、移動機構１２０、吸着機構１３０、撮影部１１７、吸引機構１４０を備える。布把持装置１５０は、布箱１０２で積み重なった複数の布１０５から一枚の布１０５を取り出して、第一位置から第二位置迄移動する（図９参照）。布把持装置１５０は回動機構１６０、上下エアシリンダ１７０、把持機構１８０を備える。回動機構１６０は台座部１６１、エアシリンダ１６２、支柱１６３、回動腕１６４を備える。台座部１６１は補助板５上に固定し、上下方向に延びる棒状の支柱１６３を回動可能に支持する。支柱１６３の下端部は台座部１６１内に配置する。エアシリンダ１６２は台座部１６１の側部に設ける。エアシリンダ１６２のロッド１６５は台座部１６１内に配置し、支柱１６３の前方で左右方向に伸縮する。支柱１６３の下端部はピニオンギア（図示略）を備える。エアシリンダ１６２のロッド１６５はラックギア（図示略）を備える。ラックギアはピニオンギアと噛み合う。支柱１６３は、エアシリンダ１６２の駆動により回動する。回動腕１６４は支柱１６３の上端部から水平方向に延びる。回動腕１６４は上下エアシリンダ１７０を支持する。
【００２３】
上下エアシリンダ１７０は角形であり、下方に伸縮する二本のロッド１７１を備える。把持機構１８０は、二本のロッド１７１の下端に接続する。上下エアシリンダ１７０は、把持機構１８０を上下動する。把持機構１８０は、エアシリンダ１６２の駆動により、上下エアシリンダ１７０と共に移動する。図４では、上側から見て最も反時計回り方向に移動した把持機構１８０の位置を実線で示す。該時、把持機構１８０は平面視で布箱１０２上方に位置する。図４では、上側から見て最も時計回り方向に移動した把持機構１８０の位置を二点鎖線で示す。該時、把持機構１８０は平面視で窓部１０１上方に位置する。
【００２４】
把持機構１８０は、支持部１８１、作動部１８７Ａ、１８７Ｂ（総称して「作動部１８７」と称す）を備える。支持部１８１は左右方向に延び、ロッド１７１下端に連結する。作動部１８７Ａは支持部１８１の左部に設け、作動部１８７Ｂは支持部１８１の右部に設ける。作動部１８７Ａ、１８７Ｂの構成は左右対称である。
【００２５】
作動部１８７は、脚部１８２、保持機構、軸棒１８５、把持部１８４、捩りバネを備える。脚部１８２は、側面視Ｕ字状に曲げ加工した板状の部材である。脚部１８２は、前後方向に対向する板状の部分の夫々に、上下方向に延びる一対の長穴１７３を有する。支持部１８１は、前後方向に対向する部分の外側面に、板状の一対の突部１５９を固定する。突部１５９は、上下方向に長い長円形状である。支持部１８１は一対の長穴１７３に一対の突部１５９を係合し、脚部１８２を長穴１７３の範囲内で上下動可能に支持する。脚部１８２は、支持部１８１に対して相対的に上下動する。脚部１８２は下端部に足部１８３を有する。足部１８３下端部は把持部１８４側に向けて突出する。図５では、移動範囲の上端に位置した脚部１８２の位置を二点鎖線で示す。図５では、移動範囲の下端に位置した脚部１８２の位置を実線で図示する。保持機構は公知のノック機構と同様の構成を有する。保持機構は、脚部１８２を上方に付勢する力が作用する度に、脚部１８２を保持する位置を、支持部１８１に対して上側に相対移動した位置又は下側に相対移動した位置に切り替える。軸棒１８５は、支持部１８１の前壁と後壁とに支持した前後方向に沿う軸である。軸棒１８５は把持部１８４を回動可能に支持する。捩りバネは、軸棒１８５に設け、把持部１８４の先端部１８８が足部１８３から離隔する向きに把持部１８４を付勢する。図５では、先端部１８８が足部１８３に近接する向きに回動した把持部１８４の位置を二点鎖線で示す。該時、把持部１８４は足部１８３との間に布１０５を挟む。図５では、先端部１８８が足部１８３から離隔する向きに回動した把持部１８４の位置を実線で示す。
【００２６】
移動機構１２０は、第二位置にある布１０５を第三位置迄移動する（図９参照）。移動機構１２０は、支柱部１３１、第一駆動モータ１２１（図８参照）、第一腕部１３２、第二腕部１３３、第二駆動モータ１２２（図８参照）、第三駆動モータ１２３（図８参照）、カバー１３４を有する。支柱部１３１は上下方向に延びる円筒状であり、下端部を棚板３０５上に固定する。第一駆動モータ１２１は支柱部１３１内部にて支持したパルスモータである。第一駆動モータ１２１の出力軸は第一軸部１２５である。第一軸部１２５は、上下方向を軸方向とし、支柱部１３１から上方に突出する。第一腕部１３２は、支柱部１３１よりも上側に設け、水平方向に延びる。第一腕部１３２の一端部は、第一軸部１２５に固定し、水平方向に延びる。第一腕部１３２は、第一駆動モータ１２１の駆動により、第一軸部１２５を中心に回動可能である。
【００２７】
第一腕部１３２の他端部は第二軸部１０８を備える。第二軸部１０８は、上下方向に延び、第一腕部１３２から上方に突出する。第二腕部１３３は、第一腕部１３２よりも上側に設ける。第二軸部１０８は、第二腕部１３３の一端部を回動可能に支持する。第二腕部１３３は、第二軸部１０８から水平方向に延びる。第二駆動モータ１２２（図８参照）は第二腕部１３３の一端部内に設けたパルスモータである。第二駆動モータ１２２は第二軸部１０８に連結する。第二腕部１３３は、第二駆動モータ１２２の駆動により、第二軸部１０８を中心として第一腕部１３２に対して相対的に回動する。
【００２８】
第三駆動モータ１２３（図８参照）は、第二腕部１３３の他端部内に設けたパルスモータである。カバー１３４は筒状であり、第二腕部１３３の他端部から上方に延びる。カバー１３４は、内部に螺子軸１３７を備える。螺子軸１３７は、上下方向に延び、第二腕部１３３の他端部にて回動可能に支持する。螺子軸１３７は第三駆動モータ１２３と連結する。螺子軸１３７は、第三駆動モータ１２３の駆動により、螺子軸１３７を中心に回動しながら上下動する。
【００２９】
吸着機構１３０は、布１０５を吸着して保持する。吸着機構１３０は、螺子軸１３７の下端部に連結する。吸着機構１３０は取付台１２４と帯電装置１３５を備える。取付台１２４は平面視略矩形状の板部材である。帯電装置１３５は平面視略矩形の板状であり、取付台１２４の下部に固定する。帯電装置１３５は下面に吸着面１３６を有する。帯電装置１３５が駆動することで、吸着面１３６は静電気を帯び、布１０５を吸着できる。
【００３０】
第一駆動モータ１２１、第二駆動モータ１２２の駆動により、吸着機構１３０の吸着面１３６は、流通板１４２の上方に位置する状態と、窓部１０１の上方に位置する状態（図９参照）との間で移動する。第三駆動モータ１２３の駆動により、吸着機構１３０は上下方向に移動する。吸着機構１３０が移動範囲の上端に位置する時、吸着面１３６は、補助板５から上方に離れる。吸着機構１３０が移動範囲の下端に位置する時、吸着面１３６は、第二位置にある布１０５を内側に吸着可能である。撮影部１１７は、窓部１０１の下方に固定する。撮影部１１７は、窓部１０１側の所定の領域（「撮影領域」と称す）を撮影する。
【００３１】
吸引機構１４０は、布箱１０２の後方で補助板５に設ける。吸引機構１４０は、流通板１４２、吸引バルブ１４５（図８参照）を備える。流通板１４２は、補助板５に固定し、上下方向に開口する通気孔を複数有する。流通板１４２の上面と補助板５の上面は略同じ高さである。エアは、流通板１４２の通気孔を通過可能である。吸引バルブ１４５は流通板１４２下方に固定する。吸引バルブ１４５がエアを吸引することで、エアは通気孔を介して吸引バルブ１４５に流れる。該時、吸引機構１４０は、第三位置にある布１０５を流通板１４２側に吸引して保持する。
【００３２】
ミシン１のエアシリンダ６９、７２、移動装置１００のエアシリンダ１６２、上下エアシリンダ１７０、吸引バルブ１４５は、夫々、エアチューブを介してエアコンプレッサ（図示略）に接続する。
【００３３】
＜ＰＣ２００の電気的構成＞
図６を参照し、ＰＣ２００の電気的構成を説明する。ＰＣ２００はＣＰＵ２０１を備える。ＣＰＵ２０１はＰＣ２００の制御を司る。ＣＰＵ２０１は、チップセット２０４を介してＲＯＭ２０２、ＲＡＭ２０３、表示制御部２０８と電気的に接続する。チップセット２０４は、ＣＰＵ２０１と、ＲＯＭ２０２、ＲＡＭ２０３との間でデータの送受信を管理する一連の回路群である。ＲＯＭ２０２はＢＩＯＳ等を記憶する。ＲＡＭ２０３は、種々の一時データを記憶する。
【００３４】
チップセット２０４はチップセット２０５と接続する。ＣＰＵ２０１は、チップセット２０５を介し、記憶装置２０６、入力部２０７、表示制御部２８、通信Ｉ／Ｆ２１０と電気的に接続する。チップセット２０５は、ＣＰＵ２０１と、記憶装置２０６、入力部２０７、表示制御部２８、通信Ｉ／Ｆ２１０との間でデータの送受信を管理する一連の回路群である。記憶装置２０６は、例えばハードディスクドライブ（ＨＤＤ）、ソリッドステートドライブ（ＳＳＤ）等、不揮発性の記憶装置である。記憶装置２０６は、ＯＳ、プログラム、データ等を記憶する。記憶装置２０６は、ＰＣ２００に対して着脱可能なメモリカードであってもよい。入力部２０７は、例えばキーボード、マウス等であり、作業者からの各種指示を検出する。入力部２０７は、検出した各種指示をＣＰＵ２０１に出力する。表示制御部２０８は、ディスプレイ２０９への映像の表示を制御する。通信Ｉ／Ｆ２１０は、例えばシリアル通信用のインターフェースである。通信Ｉ／Ｆ２１０は、ミシン１、移動装置１００に接続する。
【００３５】
＜ミシン１の電気的構成＞
図７を参照しミシン１の電気的構成を説明する。ミシン１の制御部５０は、ＣＰＵ５１、ＲＯＭ５２、ＲＡＭ５３、記憶装置５４、通信Ｉ／Ｆ５５、入出力Ｉ／Ｆ５６、駆動回路５７〜５９を備える。ＣＰＵ５１、ＲＯＭ５２、ＲＡＭ５３、記憶装置５４は、バスを介して入出力Ｉ／Ｆ５６と電気的に接続する。ＣＰＵ５１はミシン１の制御を司り、ＲＯＭ５２が記憶する各種プログラムに従い縫製に関わる各種演算と処理を実行する。ＲＯＭ５２は各種プログラム、各種初期設定パラメータ等を記憶する。ＲＡＭ５３はＣＰＵ５１の演算結果、ポインタ、カウンタ等を一時的に記憶する。記憶装置５４は、不揮発性であり、各種設定情報等を記憶する。
【００３６】
通信Ｉ／Ｆ５５は入出力Ｉ／Ｆ５６と電気的に接続する。通信Ｉ／Ｆ５５は、例えばシリアル通信用のインターフェースである。通信Ｉ／Ｆ５５はＰＣ２００の通信Ｉ／Ｆ２１０に接続する。駆動回路５７〜５９は入出力Ｉ／Ｆ５６と電気的に接続する。駆動回路５７はミシンモータ３１と電気的に接続する。ＣＰＵ５１は駆動回路５７を制御することで、ミシンモータ３１を駆動制御する。駆動回路５８はＸ軸モータ３２と電気的に接続する。駆動回路５９はＹ軸モータ３４と電気的に接続する。入出力Ｉ／Ｆ５６は、電磁弁３８、３９と電気的に接続する。電磁弁３８は、エアコンプレッサがエアシリンダ６９へ供給するエアの供給経路に設ける。ＣＰＵ５１は電磁弁３８の開閉によってエアシリンダ６９を駆動制御し、押え板７４を上下動する。電磁弁３９は、エアコンプレッサが保持体７０のエアシリンダ７２へ供給するエアの供給経路に設ける。ＣＰＵ５１は電磁弁３９の開閉によってエアシリンダ７２を駆動制御し、押え板７４を左右に移動する。
【００３７】
＜移動装置１００の電気的構成＞
図８を参照し移動装置１００の電気的構成を説明する。移動装置１００の制御部１１０は、ＣＰＵ１１１、ＲＯＭ１１２、ＲＡＭ１１３、記憶装置１１９、通信Ｉ／Ｆ１１４、入出力Ｉ／Ｆ１１５、駆動回路１６６〜１６８を備える。ＣＰＵ１１１、ＲＯＭ１１２、ＲＡＭ１１３はバスを介して入出力Ｉ／Ｆ１１５と電気的に接続する。ＣＰＵ１１１は移動装置１００の制御を司り、ＲＯＭ１１２が記憶する各種プログラムに従い処理を実行する。ＲＯＭ１１２は各種プログラム、各種初期設定パラメータ等を記憶する。ＲＡＭ１１３はＣＰＵ１１１の演算結果、各種データ等を一時的に記憶する。記憶装置１１９は、不揮発性である。通信Ｉ／Ｆ１１４は入出力Ｉ／Ｆ１１５と電気的に接続する。通信Ｉ／Ｆ１１４は例えばシリアル通信用のインターフェースである。通信Ｉ／Ｆ１１４はＰＣ２００の通信Ｉ／Ｆ２１０に接続する。
【００３８】
駆動回路１６６〜１６８は入出力Ｉ／Ｆ１１５と電気的に接続する。駆動回路１６６〜１６８は夫々、第一駆動モータ１２１、第二駆動モータ１２２、第三駆動モータ１２３に接続する。入出力Ｉ／Ｆ１１５は、帯電装置１３５、撮影部１１７、電磁弁１１８、１５１、１５２と電気的に接続する。ＣＰＵ２０１は、帯電装置１３５、撮影部１１７、電磁弁１１８、１５１、１５２を駆動する。撮影部１１７は、吸着機構１３０の吸着面１３６と吸着面１３６に吸着した布１０５を含む撮影領域を、吸着面１３６側から撮影する。撮影部１１７は、撮影画像のデータを生成し、ＣＰＵ１１１に出力する。
【００３９】
電磁弁１１８は、エアコンプレッサが吸引バルブ１４５へ供給するエアの供給経路に設ける。ＣＰＵ１１１は電磁弁１１８を開閉し、吸引バルブ１４５を駆動制御する。電磁弁１５１は、エアコンプレッサがエアシリンダ１６２へ供給するエアの供給経路に設ける。ＣＰＵ１１１は電磁弁１５１を開閉し、エアシリンダ１６２を駆動制御する。電磁弁１５２は、エアコンプレッサが上下エアシリンダ１７０へ供給するエアの供給経路に設ける。ＣＰＵ１１１は電磁弁１５２を開閉し、上下エアシリンダ１７０を駆動制御する。
【００４０】
＜動作概要（布１０５の第一位置から第二位置への移動）＞
図４、図５、図９を参照し、布把持装置１５０により布１０５を第一位置から第二位置に移動する動作を説明する。布把持装置１５０は、布箱１０２に積み重なる布１０５を一枚ずつ把持して移動する。把持機構１８０は上下エアシリンダ１７０の駆動により、移動範囲の上端から下端に移動する。脚部１８２は、足部１８３が布１０５に当接した時の力により、支持部１８１に対して上側に相対移動する。把持部１８４は、布１０５に先端部１８８が当接した時の力により、捩りバネの付勢力に抗して回動する。該時、把持部１８４の先端部１８８は足部１８３に近接し、布１０５の一部分を足部１８３との間に挟む。保持機構は、脚部１８２を保持する位置を、支持部１８１に対して上側に相対移動した位置に切り替える。次に、把持機構１８０は上下エアシリンダ１７０の駆動により、移動範囲の下端から上端に移動する。以上により、布把持装置１５０は布１０５を布箱１０２から取り出す。
【００４１】
把持機構１８０はエアシリンダ１６２の駆動により、上側から見て時計回り方向に移動する。次に、把持機構１８０は上下エアシリンダ１７０の駆動により、移動範囲の上端から下端に移動する。把持機構１８０が移動範囲の下端に到達した時、足部１８３は布１０５を介して窓部１０１と接触する。該時、保持機構は、脚部１８２を保持する位置を、支持部１８１に対して下端に相対移動した位置に切り替える。次に、把持機構１８０はエアシリンダ１６２の駆動により、移動範囲の下端から上端に移動する。該時、把持部１８４の先端部１８８は、捩りバネの付勢力に応じて足部１８３から離隔し、布１０５を離す。布１０５は窓部１０１の第二位置に載置する。以上により、布１０５の第一位置から第二位置迄の移動が完了する。
【００４２】
＜動作概要（布１０５の第二位置から第三位置への移動、撮影部１１７による撮影）＞
図４、図９を参照し、移動機構１２０と吸着機構１３０により、布１０５を第二位置から第三位置に移動してミシン１に受け渡す動作を説明する。第一腕部１３２と第二腕部１３３は、第一駆動モータ１２１と第二駆動モータ１２２の駆動により回動する。該時、吸着機構１３０の吸着面１３６は窓部１０１上方に移動する。次に、吸着面１３６は第三駆動モータ１２３の駆動により、移動範囲の下端に移動する。吸着面１３６は、帯電装置１３５の駆動により静電気を帯びる。第二位置にある布１０５は吸着面１３６に吸着する。吸着面１３６は第三駆動モータ１２３の駆動により、布１０５を吸着した状態で移動範囲の上端に移動する。
【００４３】
移動装置１００の撮影部１１７は窓部１０１を介して、吸着面１３６に吸着した布１０５を撮影する。ＰＣ２００のＣＰＵ２０１は、撮影部１１７により撮影した撮影画像のデータを取得し、吸着面１３６に吸着した布１０５の位置を検出する。ＣＰＵ２０１は、検出した布１０５の位置に応じ、流通板１４２の第三位置に布１０５を載置する為に必要な第一駆動モータ１２１と第二駆動モータ１２２の駆動条件を算出する。第一駆動モータ１２１と第二駆動モータ１２２は、ＰＣ２００が算出した駆動条件で駆動し、第一腕部１３２と第二腕部１３３を回動する。これにより、吸着面１３６は第三位置の上方位置迄移動する。次に、吸着面１３６は第三駆動モータ１２３の駆動により、布１０５を吸着した状態で移動範囲の下端に移動する。次に、帯電装置１３５は駆動を停止する。布１０５は吸着面１３６から離れ、ＰＣ２００により特定した第三位置に載置する。吸引バルブ１４５は吸引機構１４０の駆動により、エアを吸引する。該時、第三位置に載置した布１０５は流通板１４２に保持する。
【００４４】
＜動作概要（布１０５の第三位置から第四位置への移動、ミシン１による縫製動作）＞
図２、図３を参照し、ミシン１の縫製動作の概要を説明する。吸引バルブ１４５は吸引機構１４０の駆動により、エアの吸引を停止する。該時、第三位置に載置した布１０５は移動可能となる。押え板７４はエアシリンダ７２の駆動により、移動範囲の左端から右端に移動する。次に、押え板７４はエアシリンダ６９の駆動により、移動範囲の下端に移動する。押え板７４は、第三位置にある布１０５を流通板１４２との間に挟み保持する。次に、押え腕６５は、Ｘ軸モータ３２とＹ軸モータ３４の駆動により、第三位置から針穴１３上の第四位置に布１０５を移動する。次に、ミシンモータ３１、Ｘ軸モータ３２、Ｙ軸モータ３４は夫々駆動する。水平動機構６は布１０５を前後方向と左右方向とに移動し、針棒１０と垂直釜は同期駆動する。縫製機構８は縫針１１で布１０５に縫製する。ミシン１は布１０５に所定の縫目を形成する。縫目が布１０５に形成した後、押え板７４はエアシリンダ７２の駆動により、移動範囲の左端に移動する。押え板７４はエアシリンダ６９の駆動により、移動範囲の上端に移動して布１０５から離れる。以上により、ミシン１の縫製動作は終了する。
【００４５】
＜動作概要（キャリブレーション）＞
上述のように、ＰＣ２００のＣＰＵ２０１は、撮影画像から特定した布１０５の位置に基づいて、第二位置から第三位置迄布１０５を移動する為の移動装置１００（第一駆動モータ１２１、第二駆動モータ１２２）の駆動条件を算出する。該時、ＣＰＵ２０１は、撮影画像の座標系（「画像座標系」と称す）と移動装置１００の座標系（「装置座標系」と称す）を予め対応付けておく必要がある。該理由は、画像座標系と装置座標系との対応付けがない時、ＣＰＵ２０１は、布１０５を第二位置から第三位置迄移動する時の画像座標系における移動量を撮影画像に基づいて特定できても、該移動量を、装置座標系における移動量に変換できない為である。本実施形態において、ＣＰＵ２０１は、後述するメイン処理を実行することにより、画像座標系と装置座標系との対応付けを行う。
【００４６】
図１０は、画像座標系と装置座標系との対応付けの過程で使用するチャートＳを示す。図１０の上側、下側、左側、右側を、夫々、チャートＳの上側、下側、左側、右側と定義する。チャートＳは、表面に線画を描写した白色の台紙Ｄである。台紙Ｄは矩形状を有する。チャートＳは、第一基準線Ｌ１、第二基準線Ｌ２、第一マークＭ１、第二マークＭ２を有する。第一基準線Ｌ１は、台紙Ｄの左端部近傍を上下方向に延びる直線である。第二基準線Ｌ２は、台紙Ｄの下端部近傍を左右方向に延びる直線である。第一基準線Ｌ１と第二基準線Ｌ２とは直交する。第一基準線Ｌ１の下端と第二基準線Ｌ２の左端は、交差点Ｃで交差する。
【００４７】
第一マークＭ１は、台紙Ｄの左上の隅近傍、より詳細には、左右方向において第一基準線Ｌ１よりも左側、且つ、上下方向において第一基準線Ｌ１の上端よりも上側に配置する。第二マークＭ２は、台紙Ｄの右下の隅近傍、より詳細には、左右方向において第二基準線Ｌ２よりも右側、且つ、上下方向において第二基準線Ｌ２の下端よりも下側に配置する。第一マークＭ１と第二マークＭ２は夫々、円環状の曲線を有する。第一マークＭ１と第二マークＭ２を総称して「マークＭ」と称す。マークＭを形成する曲線の径方向の長さ、即ち、該曲線の太さｒ２は、該曲線で囲まれた内部の径方向の長さ、即ち、曲線で囲まれた内部の円形部分の半径ｒ１と等しい。該為、半径ｒ１と太さｒ２の比は、１：１となる。故に、マークＭの中心の位置（「中心位置ｍ」と称す）を通ってマークＭを横切る線分を定義した時、該線分のうちマークＭの曲線と重なる２つの部分ａ１、ａ３のそれぞれの長さと、マークＭの曲線で囲まれた部分と重なる部分ａ２の長さとの比ａ１：ａ２：ａ３は、１：２：１となる。
【００４８】
第一マークＭ１の中心位置ｍ１から右側に延びる仮想線分Ｑ１と、第二マークＭ２の中心位置ｍ２から上側に延びる仮想線分Ｑ２は、位置ｍ３で交差する。第一マークＭ１の中心位置ｍ１から下側に延びる仮想線分Ｑ４と、第二マークＭ２の中心位置ｍ２から左側に延びる仮想線分Ｑ３は、位置ｍ４で交差する。仮想線分Ｑ１〜Ｑ４は、中心位置ｍ１、ｍ２、位置ｍ３、ｍ４を頂点とする仮想的な正方形を形成する。該正方形は、第一基準線Ｌ１と第二基準線Ｌ２を外側から囲む。仮想線分Ｑ１〜Ｑ４で囲む領域を、「解析領域Ｑ」と称す。第一マークＭ１と第二マークＭ２は、解析領域Ｑの４つの頂点のうち左上と右下の対角に位置する。 
【００４９】
＜メイン処理＞
図１１から図２１を参照し、メイン処理を説明する。使用者は画像座標系と装置座標系との対応付けを行う時、吸着機構１３０の吸着面１３６にチャートＳを接触した状態で、ＰＣ２００の入力部２０７に入力操作を行う。ＣＰＵ２０１は入力操作を受け付けた時、記憶装置２０６に記憶したプログラムを実行することでメイン処理を開始する。
【００５０】
図１１に示すように、ＣＰＵ２０１は、吸着機構１３０によりチャートＳを吸着面１３６に吸着する吸着指示を、移動装置１００に出力する。移動装置１００のＣＰＵ１１１は吸着指示を受信した時、帯電装置１３５を駆動する。吸着面１３６は静電気を帯び、チャートＳを吸着面１３６に吸着する（Ｓ１）。ＣＰＵ２０１は、窓部１０１上方の所定位置（「第一基準位置」と称す）迄吸着機構１３０を移動する第一移動指示を、移動装置１００に出力する。移動装置１００のＣＰＵ１１１は第一移動指示を受信した時、第一駆動モータ１２１、第二駆動モータ１２２の駆動により、吸着機構１３０を第一基準位置に移動する（Ｓ１１）。該時、チャートＳを第一基準位置に配置した状態と称す。
【００５１】
ＣＰＵ２０１は、撮影部１１７による撮影を実行する撮影指示を、移動装置１００に出力する。移動装置１００のＣＰＵ１１１は撮影指示を受信した時、撮影部１１７を制御して撮影を開始する（Ｓ１３）。撮影部１１７は、第一基準位置に配置した状態のチャートＳを撮影し、撮影画像のデータを生成する。移動装置１００は、撮影部１１７が生成した撮影画像のデータを取得し、ＰＣ２００に出力する。ＰＣ２００のＣＰＵ２０１は撮影画像Ｇのデータを受信する。図１６（Ａ）は、撮影画像Ｇの一例を示す。撮影画像Ｇは、チャートＳの第一基準線Ｌ１、第二基準線Ｌ２、第一マークＭ１、第二マークＭ２を含む。図１６（Ａ）の上側、下側、左側、右側を、夫々、撮影画像Ｇの上側、下側、左側、右側と定義する。撮影画像Ｇの左右方向を「水平方向」と称し、撮影画像Ｇの上下方向を「垂直方向」と称す。図１１に示すように、ＣＰＵ２０１は、撮影画像Ｇに基づいて第一交差点Ｃ１の位置を示す座標を取得する為、座標取得処理（図１２参照）を実行する（Ｓ１５）。
【００５２】
図１２を参照し、座標取得処理を説明する。ＣＰＵ２０１は、撮影画像Ｇを二値化する（Ｓ３１）。ＣＰＵ２０１は、二値化した撮影画像Ｇに基づきマークＭの位置を検出する為、マーク位置検出処理（図１３参照）を実行する（Ｓ３３）。以下記載において、二値化後の撮影画像Ｇを単に撮影画像Ｇと称す。
【００５３】
図１３を参照し、マーク位置検出処理を説明する。ＣＰＵ２０１は、撮影画像Ｇの複数の画素を、水平方向に一列分ずつ取得する。撮影画像Ｇの複数の画素のうち水平方向の一列分を「水平画素列」と称す。ＣＰＵ２０１は、取得した水平画素列を連長圧縮（ランレングス圧縮）し、水平方向に対応するラン情報（「水平ラン情報」と称す）を生成する（Ｓ５１）。ラン情報は、黒色の画素又は白色画素の一列毎の連続数を含む。例えば図１６（Ｂ）に示すように、第二マークＭ２を含む水平画素列ｈｐにおいて、左側から右側に向けて、白色の画素（数字「０」で示す）がＮ（Ｎは任意の整数）回連続し、黒色の画素（数字「１」で示す）が３回連続し、白色の画素が６回連続し、黒の画素が３回連続し、白色の画素がＮ回連続する。該時、ＣＰＵ２０１は連長圧縮により、水平画素列ｈｐの水平ラン情報として「０／Ｎ、１／３、０／６、１／３、０／Ｎ」を生成する。ラン情報のうち「／」の左側の数字「０」は白色を示し、数字「１」は黒色を示す。「／」の右側の数字は、「／」の左側の数字で示す色（白色「０」又は黒色「１」）の画素の連続数を示す。以下、ラン情報における各連続数を「要素」と称す。ラン情報のうち左からｉ（ｉは１以上の整数）番目の要素を、「要素（ｉ）」と称す。
【００５４】
図１３に示すように、ＣＰＵ２０１は、撮影画像Ｇの複数の画素を、垂直方向に一列分ずつ取得する。撮影画像Ｇの複数の画素のうち垂直方向の一列分を「垂直画素列」と称す。ＣＰＵ２０１は取得した垂直画素列を連長圧縮し、垂直方向に対応するラン情報（「垂直ラン情報」と称す）を生成する（Ｓ５１）。ＣＰＵ２０１は、全ての水平画素列に対応する水平ラン情報、及び、全ての垂直画素列に対応する垂直ラン情報を生成した時、生成した水平ラン情報及び垂直ラン情報をＲＡＭ２０３に記憶する。
【００５５】
ＣＰＵ２０１は、撮影画像Ｇから水平画素列を１つ選択し、対応する水平ラン情報を記憶装置２０６から取得する（Ｓ５３）。ＣＰＵ２０１は、取得した水平ラン情報に基づいて候補判定処理（図１４参照）を実行する（Ｓ５５）。
【００５６】
図１４を参照し、候補判定処理を説明する。ＣＰＵ２０１は、ＲＡＭ２０３に記憶した変数ｉに「１」を設定して初期化する。ＣＰＵ２０１は、Ｓ５３の処理により取得した水平ラン情報から要素（ｉ）を取得する（Ｓ７１）。ＣＰＵ２０１は、取得した要素（ｉ）に基づき、黒色の画素の連続数が２以上か判定する（Ｓ７３）。ＣＰＵ２０１は、黒色の画素の連続数が１の時、又は、取得した要素が白色の連続数を示す時、黒色の画素の連続数が２以上連続しないと判定する（Ｓ７３：ＮＯ）。該時、ＣＰＵ２０１は処理をＳ８５に進める。ＣＰＵ２０１は、黒色の画素の連続数が２以上と判定した時（Ｓ７３：ＹＥＳ）、処理をＳ７５に進める。
【００５７】
ＣＰＵ２０１は、ＲＡＭ２０３に記憶した水平ラン情報から要素（ｉ＋１）を取得し（Ｓ７５）、要素（ｉ＋２）を取得する（Ｓ７７）。要素（ｉ）は黒色の画素の連続数を示す為、要素（ｉ＋１）は白色の画素の連続数を示し、要素（ｉ＋２）は黒色の画素の連続数を示す（図１６（Ｂ）参照）。ＣＰＵ２０１は、要素（ｉ）、要素（ｉ＋１）、要素（ｉ＋２）の比（黒色：白色：黒色）が略１：２：１か判定する（Ｓ７９）。尚、図１０に示すように、マークＭの中心位置ｍを通ってマークＭを横切る線分を定義した時、部分ａ１、ａ２、ａ３のそれぞれの長さの比ａ１：ａ２：ａ３は、１：２：１となる。故に、図１６（Ｂ）に示すように、マークＭの中心位置ｍ近傍を通過する水平画素列の水平ラン情報は、マークＭ近傍で、要素（ｉ）、要素（ｉ＋１）、要素（ｉ＋２）の比（黒色：白色：黒色）が略１：２：１となる。図１４に示すように、ＣＰＵ２０１は、要素（ｉ）、要素（ｉ＋１）、要素（ｉ＋２）の比が略１：２：１と判定した時（Ｓ７９：ＹＥＳ）、マークＭの中心位置ｍの水平方向の座標を決定する（Ｓ８１）。より詳細には、ＣＰＵ２０１は、以下の式（１）に基づき、撮影画像Ｇの左端から中心位置ｍまでの間の水平方向の長さＪを、中心位置ｍの水平方向の座標Ｊとして算出する。但し、１画素の単位長さをｐと表記する。
Ｊ＝（要素（１）＋要素（２）＋・・・＋（要素（ｉ＋１）／２）×ｐ・・・（１）
【００５８】
ＣＰＵ２０１は、マークＭの候補を検出したことを示す為、算出した中心位置ｍの水平方向の座標ＪをＲＡＭ２０３に記憶する（Ｓ８３）。ＣＰＵ２０１は処理をＳ８５に進める。一方、ＣＰＵ２０１は、要素（ｉ）、要素（ｉ＋１）、要素（ｉ＋２）の比が略１：２：１でないと判定した時（Ｓ７９：ＮＯ）、処理をＳ８５に進める。
【００５９】
ＣＰＵ２０１は、Ｓ５３の処理により取得した水平ラン情報から要素を全て取得したか判定する（Ｓ８５）。ＣＰＵ２０１は、取得していない要素が残存すると判定した時（Ｓ８５：ＮＯ）、処理をＳ８７に進める。ＣＰＵ２０１は、変数ｉに１を加算して更新する（Ｓ８７）。ＣＰＵ２０１は、処理をＳ７１に戻す。ＣＰＵ２０１は、更新したｉに基づき、要素（ｉ）を取得し（Ｓ７１）、Ｓ７３〜Ｓ８３の処理を繰り返す。ＣＰＵ２０１は、Ｓ５３の処理により取得した水平ラン情報から要素を全て取得したと判定した時（Ｓ８５：ＹＥＳ）、候補判定処理を終了し、処理をマーク位置検出処理（図１３参照）に戻す。
【００６０】
図１３に示すように、ＣＰＵ２０１は、水平ラン情報に基づく候補判定処理（Ｓ５５）の終了後、候補判定処理によりマークＭの候補を検出したか判定する（Ｓ５７）。ＣＰＵ２０１は、マークＭの中心位置ｍに対応する水平方向の座標ＪをＲＡＭ２０３に記憶していない時、マークＭの候補を検出していないと判定する（Ｓ５７：ＮＯ）。該時、ＣＰＵ２０１は処理をＳ６７に進める。ＣＰＵ２０１は、Ｓ５３の処理により、撮影画像Ｇから水平画素列を全て選択し、全ての水平ラン情報を取得したか判定する（Ｓ６７）。ＣＰＵ２０１は、選択していない水平画素列が残存し、水平ラン情報を全て取得していないと判定した時（Ｓ６７：ＮＯ）、処理をＳ５３に戻す。ＣＰＵ２０１は、選択していない水平画素列の何れか１つを選択し、対応する水平ラン情報を取得する（Ｓ５３）。ＣＰＵ２０１は、Ｓ５５〜Ｓ６５の処理を繰り返す。
【００６１】
例えばＣＰＵ２０１は、図１６（Ａ）に示す撮影画像Ｇに基づき、水平画素列Ｇ１１を選択して水平ラン情報を取得し（Ｓ５３）、候補判定処理を実行する（Ｓ５５）。該時、ＣＰＵ２０１は、第一マークＭ１の中心位置ｍ１に対応する水平方向の座標Ｊ１を算出してＲＡＭ２０３に記憶する（Ｓ８３）。例えばＣＰＵ２０１は、図１６（Ａ）に示す撮影画像Ｇに基づき、水平画素列Ｇ１２を選択して水平ラン情報を取得し（Ｓ５３）、候補判定処理を実行する（Ｓ５５）。該時、ＣＰＵ２０１は、第二マークＭ２の中心位置ｍ２に対応する水平方向の座標Ｊ２を算出してＲＡＭ２０３に記憶する。
【００６２】
ＣＰＵ２０１は、マークＭの中心位置ｍに対応する水平方向の座標ＪをＲＡＭ２０３に記憶した時、候補判定処理によりマークＭの候補を判定したと判定する（Ｓ５７：ＹＥＳ）。該時、ＣＰＵ２０１は処理をＳ５９に進める。ＣＰＵ２０１は、撮影画像Ｇのうち、ＲＡＭ２０３に記憶した座標Ｊの位置を通って垂直方向に延びる垂直画素列を選択し、対応する垂直ラン情報を記憶装置２０６から取得する（Ｓ５９）。ＣＰＵ２０１は、取得した垂直ラン情報に基づいて候補判定処理（図１４参照）を実行する（Ｓ６１）。
【００６３】
Ｓ６１の処理で実行する候補判定処理は、Ｓ５５の処理で実行する候補判定処理と略同一である。Ｓ５５の処理で実行する候補判定処理と異なる点は、基準とする方向を水平方向に代えて垂直方向とする点である。図１４に示すように、ＣＰＵ２０１は、要素（ｉ）、要素（ｉ＋１）、要素（ｉ＋２）の比が略１：２：１と判定した時（Ｓ７９：ＹＥＳ）、マークＭの中心位置ｍの垂直方向の座標を決定する（Ｓ８１）。より詳細には、ＣＰＵ２０１は、以下の式（２）に基づき、撮影画像Ｇの上端から中心位置ｍまでの間の垂直方向の長さＫを、中心位置ｍの垂直方向の座標Ｋとして算出する。
Ｋ＝（要素（１）＋要素（２）＋・・・（要素（ｉ＋１）／２）×ｐ・・・（２）
ＣＰＵ２０１は、マークＭの候補を検出したことを示す為、中心位置ｍの垂直方向の座標ＫをＲＡＭ２０３に記憶する（Ｓ８３）。
【００６４】
例えばＣＰＵ２０１は、候補判定処理により座標Ｊ１をＲＡＭ２０３に記憶した時、図１６（Ａ）に示す撮影画像Ｇのうち水平方向の座標Ｊ１を通る垂直画素列Ｇ２１を選択して垂直ラン情報を取得し、候補判定処理（図１４参照）を実行する（Ｓ６１）。該時、ＣＰＵ２０１は、第一マークＭ１の中心位置ｍ１に対応する垂直方向の座標Ｋ１を算出してＲＡＭ２０３に記憶する（Ｓ８３）。例えばＣＰＵ２０１は、候補判定処理により座標Ｊ２をＲＡＭ２０３に記憶した時、図１６（Ａ）に示す撮影画像Ｇのうち水平方向の座標Ｊ２を通る垂直画素列Ｇ２２を選択して垂直ラン情報を取得し、候補判定処理（図１４参照）を実行する（Ｓ６１）。該時、ＣＰＵ２０１は、第二マークＭ２の中心位置ｍ２に対応する垂直方向の座標Ｋ２を算出してＲＡＭ２０３に記憶する（Ｓ８３）。
【００６５】
図１３に示すように、ＣＰＵ２０１は、垂直ラン情報に基づく候補判定処理（Ｓ６１）の終了後、候補判定処理によりマークＭの候補を検出したか判定する（Ｓ６３）。ＣＰＵ２０１は、マークＭの中心位置ｍに対応する垂直方向の座標ＫをＲＡＭ２０３に記憶していない時、マークＭの候補を検出していないと判定する（Ｓ６３：ＮＯ）。該時、ＣＰＵ２０１は処理をＳ６７に進める。ＣＰＵ２０１は、マークＭの中心位置ｍに対応する垂直方向の座標ＫをＲＡＭ２０３に記憶した時、候補判定処理によりマークＭの候補を検出したと判定する（Ｓ６３：ＹＥＳ）。該時、ＣＰＵ２０１は処理をＳ６５に進める。
【００６６】
ＣＰＵ２０１は、Ｓ８３（図１４参照）の処理によりＲＡＭ２０３に記憶した座標（Ｊ，Ｋ）を、マークＭの中心位置ｍの座標として特定する（Ｓ６５）。該座標（Ｊ，Ｋ）の基準座標（０，０）は、撮影画像Ｇの左上の隅である。ＣＰＵ２０１は処理をＳ６７に進める。例えばＣＰＵ２０１は、図１６（Ａ）に示す撮影画像Ｇに基づき、水平方向の座標Ｊ１及び垂直方向の座標Ｋ１をＲＡＭ２０３に記憶した時（Ｓ５７：ＹＥＳ、Ｓ６３：ＹＥＳ）、第一マークＭ１の中心位置ｍ１の座標として（Ｊ１，Ｋ１）を特定する（Ｓ６５）。ＣＰＵ２０１は、水平方向の座標Ｊ２及び垂直方向の座標Ｋ２をＲＡＭ２０３に記憶した時（Ｓ５７：ＹＥＳ、Ｓ６３：ＹＥＳ）、第二マークＭ２の中心位置ｍ２の座標として（Ｊ２，Ｋ２）を特定する（Ｓ６５）。
【００６７】
図１３に示すように、ＣＰＵ２０１は、Ｓ５３の処理により、撮影画像Ｇから水平画素列を全て選択し、全ての水平ラン情報を取得したか判定する（Ｓ６７）。ＣＰＵ２０１は、水平画素列を全て選択し、全ての水平ラン情報を取得したと判定した時（Ｓ６７：ＹＥＳ）、マーク位置検出処理を終了し、処理を座標取得処理（図１２参照）に戻す。
【００６８】
図１２に示すように、ＣＰＵ２０１は、マーク位置検出処理（Ｓ３３）の終了後、ＲＡＭ２０３に記憶した中心位置ｍ１の座標（Ｊ１，Ｋ１）（図１６（Ａ）参照）と中心位置ｍ２の座標（Ｊ２，Ｋ２）（図１６（Ａ）参照）を取得する。ＣＰＵ２０１は、中心位置ｍ１、ｍ２を対角の頂点として有する正方形（図１０参照）が囲む解析領域Ｑを特定する（Ｓ３５）。図１０に示すように解析領域Ｑは、第一基準線Ｌ１及び第二基準線Ｌ２を含む。図１２に示すように、ＣＰＵ２０１は、撮影画像Ｇのうち解析領域Ｑから第一基準線Ｌ１、第一直線Ｆ１（後述）を検出する為、直線検出処理（図１５参照）を実行する（Ｓ３７）。
【００６９】
図１５を参照し、直線検出処理を説明する。ＣＰＵ２０１は、撮影画像Ｇのうち解析領域Ｑから水平画素列を一列分ずつ取得する。ＣＰＵ２０１は取得した水平画素列を連長圧縮し、水平ラン情報を生成する（Ｓ９１）。以下、解析領域から生成した水平ラン情報を、「解析水平ラン情報」と称す。ＣＰＵ２０１は、生成した解析水平ラン情報をＲＡＭ２０３に記憶する。
【００７０】
ＣＰＵ２０１は、撮影画像Ｇのうち解析領域Ｑの左端に対応する仮想線分Ｑ４（図１７（Ａ）参照）に定義する第一開始点の数を決定する（Ｓ９３）。図１７（Ａ）に示すように、本実施形態においてＣＰＵ２０１は、第一開始点の数として「４」（第一開始点Ｐｓ１、Ｐｓ２、Ｐｓ３、Ｐｓ４）を決定する。尚、第一開始点の数は４つに限定されず、２、３、５つ以上であってもよい。図１５に示すように、ＣＰＵ２０１は、第一開始点の数「４」の決定後、仮想線分Ｑ４を５（＝４＋１）等分する各位置を、第一開始点Ｐｓ１、Ｐｓ２、Ｐｓ３、Ｐｓ４（図１７（Ａ）参照）として決定する（Ｓ９５）。ＣＰＵ２０１は、第一開始点Ｐｓ１、Ｐｓ２、Ｐｓ３、Ｐｓ４から右方に延びる線分Ｒ１、Ｒ２、Ｒ３、Ｒ４（図１７（Ａ）参照）を定義し、更に、定義した線分Ｒ１、Ｒ２、Ｒ３、Ｒ４と、撮影画像Ｇのうち解析領域Ｑの右端に対応する仮想線分Ｑ２との交点を、第一終了点Ｐｅ１、Ｐｅ２、Ｐｅ３、Ｐｅ４（図１７（Ａ）参照）として決定する（Ｓ９７）。尚、図１７（Ａ）に示すように、線分Ｒ１〜Ｒ４は何れも第一基準線Ｌ１と交差する。
【００７１】
図１５に示すように、ＣＰＵ２０１は、線分Ｒ１〜Ｒ４の何れかを選択する（Ｓ９９）。ＣＰＵ２０１は、選択した線分Ｒ１〜Ｒ４と重なる位置にある水平画素列に対応する解析水平ラン情報を、記憶装置２０６から取得する（Ｓ１０１）。ＣＰＵ２０１は、取得した解析水平ラン情報の要素を、第一開始点から第一終了点に向けて順番に探索し、黒色の画素の連続数を示す要素を特定する。
【００７２】
例えば図１７（Ｂ）に示すように、線分Ｒ１〜Ｒ４と重なる位置にある水平画素列は、第一基準線Ｌ１と交差する。該水平画素列では、左側から右側に向けて、白色の画素（数字「０」で示す）がＮ回連続し、黒色の画素（数字「１」で示す）が５回連続し、白色の画素がＮ回連続する。対応する解析水平ラン情報は、「０／Ｎ、１／５、０／Ｎ」となる。該時、ＣＰＵ２０１は、黒色の画素の連続数「５」を示す要素（２）を特定する。尚、解析領域Ｑの黒色の画素は、常に、第一基準線Ｌ１又は第二基準線Ｌ２を示す。即ち、解析水平ラン情報において、要素（１）は常に白色の画素の連続数を示し、要素（２）は常に黒色の画素の連続数を示し、要素（３）は常に白色の画素の連続数を示す。故に、ＣＰＵ２０１は、取得した解析水平ラン情報の要素（２）を、黒色の画素の連続数を示す要素として特定する。
【００７３】
図１５に示すように、ＣＰＵ２０１は、特定した要素に基づき、Ｓ９９の処理により選択した線分Ｒ１〜Ｒ４の位置における第一基準線Ｌ１の水平方向の中点（「第一中点」と称す。）の座標を特定する（Ｓ１０３）。より詳細には、ＣＰＵ２０１は、以下の式（３）に基づき、解析領域Ｑの左端に対応する仮想線分Ｑ４から、第一中点までの間の水平方向の長さＶ（図１７（Ｂ）参照）を、第一中点の水平方向の座標Ｖとして特定する。
Ｖ＝（要素（１）＋要素（２）／２）×ｐ・・・（３）
ＣＰＵ２０１は、特定した第一中点の水平方向の座標Ｖを、ＲＡＭ２０３に記憶する。ＣＰＵ２０１は処理をＳ１０５に進める。ＣＰＵ２０１は、Ｓ９９の処理で線分Ｒ１〜Ｒ４の全てを選択したか判定する（Ｓ１０５）。ＣＰＵ２０１は、選択していない線分が残存すると判定した時（Ｓ１０５：ＮＯ）、処理をＳ９９に戻す。ＣＰＵ２０１は、選択していない線分Ｒ１〜Ｒ４の何れかを選択し（Ｓ９９）、Ｓ１０１、Ｓ１０３の処理を繰り返す。ＣＰＵ２０１は、線分Ｒ１〜Ｒ４の全てを選択したと判定した時（Ｓ１０５：ＹＥＳ）、処理をＳ１０７に進める。
【００７４】
例えば図１７（Ａ）に示す例の場合、ＣＰＵ２０１は、線分Ｒ１〜Ｒ４を順番に選択し（Ｓ９９）、対応する解析水平ラン情報を記憶装置２０６から取得する（Ｓ１０１）。取得した解析水平ラン情報に基づき、黒色の画素の連続数を示す要素として要素（２）を特定する。ＣＰＵ２０１は、選択した線分Ｒの位置における第一基準線Ｌ１の第一中点の水平方向の座標Ｖを特定する（Ｓ１０３）。以下、線分Ｒ１〜Ｒ４を選択した時に特定した第一中点の水平方向の座標Ｖを、夫々、Ｖ１、Ｖ２、Ｖ３、Ｖ４と称す。ＣＰＵ２０１は、特定した第一中点の水平方向の座標Ｖ１〜Ｖ４を、ＲＡＭ２０３に記憶する。
【００７５】
図１５に示すように、ＣＰＵ２０１は、ＲＡＭ２０３に記憶した第一中点の水平方向の座標Ｖの平均値を算出する（Ｓ１０７）。例えば図１７（Ａ）に示す例の場合、座標Ｖ１〜Ｖ４の平均値を、以下の式（４）に基づき算出する（Ｓ１０７）。算出する値を、第一平均長Ｈ１と称す。
Ｈ１＝（Ｖ１＋Ｖ２＋Ｖ３＋Ｖ４）／４・・・（４）
【００７６】
ＣＰＵ２０１は、仮想線分Ｑ４（図１８参照）を４等分する３つの位置を決定する。ＣＰＵ２０１は、決定した３つの位置のうち上端側の位置を第一特定点Ｐｒ１（図１８参照）として決定し、下端側の位置を第一特定点Ｐｒ２（図１８参照）として決定する（Ｓ１０９）。図１８に示すように、第一特定点Ｐｒ１の座標を（ｐｘ（１），ｐｙ（１））とし、第一特定点Ｐｒ２の座標を（ｐｘ（２），ｐｙ（２））とする。ＣＰＵ２０１は、第一特定点Ｐｒ１から右方に延びる線分Ｔ１を定義し、第一特定点Ｐｒ２から右方に延びる線分Ｔ２を定義する。ＣＰＵ２０１は、線分Ｔ１に沿って第一特定点Ｐｒ１から第一平均長Ｈ１離隔した位置にある点を、第一平均位置Ｐｆ１として特定する。ＣＰＵ２０１は、線分Ｔ２に沿って仮想線分Ｑ４から第一平均長Ｈ１離隔した位置にある点を、第一平均位置Ｐｆ２として特定する（Ｓ１１１、図１５参照）。第一平均位置Ｐｆ１の座標は（ｐｘ（１）＋Ｈ１，ｐｙ（１））であり、第一平均位置Ｐｆ２の座標は（ｐｘ（２）＋Ｈ１，ｐｙ（２））である。
【００７７】
図１５に示すように、ＣＰＵ２０１は、特定した第一平均位置Ｐｆ１、Ｐｆ２を通過して垂直方向に延びる第一直線Ｆ１を示す関数ｙ＝Ａ（１）ｘ＋Ｂ（１）（Ａ（１）、Ｂ（１）は夫々定数）を特定する（Ｓ１１３）。より詳細には、ＣＰＵ２０１は、ｙ＝Ａ（１）ｘ＋Ｂ（１）の（ｘ，ｙ）に、第一平均位置Ｐｆ１、Ｐｆ２の夫々の座標（ｐｘ（１）＋Ｈ１，ｐｙ（１））、（ｐｘ（２）＋Ｈ１，ｐｙ（２））を代入し、二次連立方程式を解く。ＣＰＵ２０１は、算出した変数Ａ（１），Ｂ（１）に基づき、第一直線Ｆ１を示すｙ＝Ａ（１）ｘ＋Ｂ（１）を特定する。ＣＰＵ２０１は直線検出処理を終了し、処理を座標取得処理（図１２参照）に処理を戻す。
【００７８】
図１２に示すように、直線検出処理（Ｓ３７）の実行により第一基準線Ｌ１、第一直線Ｆ１を検出した後、撮影画像Ｇのうち解析領域Ｑから第二基準線Ｌ２、第二直線Ｆ２（後述）を検出する為、直線検出処理（図１５参照）を実行する（Ｓ３９）。
【００７９】
Ｓ３９の処理で実行する直線検出処理は、Ｓ３７の処理で実行する直線検出処理と略同一である。Ｓ３７の処理で実行する直線検出処理と異なる点は、基準とする方向を水平方向に代えて垂直方向とする点である。図１５に示すように、ＣＰＵ２０１は、撮影画像Ｇのうち解析領域Ｑから垂直画素列を一列分ずつ取得する。ＣＰＵ２０１は取得した垂直画素列を連長圧縮し、垂直ラン情報を生成する（Ｓ９１）。以下、解析領域から生成した垂直ラン情報を、「解析垂直ラン情報」と称す。ＣＰＵ２０１は、生成した解析垂直ラン情報をＲＡＭ２０３に記憶する。
【００８０】
ＣＰＵ２０１は、撮影画像Ｇのうち解析領域Ｑの左端に対応する仮想線分Ｑ１（図１９参照）に定義する第二開始点の数を決定する（Ｓ９３）。図１９に示すように、本実施形態においてＣＰＵ２０１は、第二開始点の数として「４」（第二開始点Ｐｓ５、Ｐｓ６、Ｐｓ７、Ｐｓ８）を決定する。尚、第二開始点の数は４つに限定されず、２、３、５つ以上であってもよい。図１５に示すように、ＣＰＵ２０１は、第二開始点の数「４」の決定後、仮想線分Ｑ１を５（＝４＋１）等分する各位置を、第二開始点Ｐｓ５、Ｐｓ６、Ｐｓ７、Ｐｓ８（図１９参照）として決定する（Ｓ９５）。ＣＰＵ２０１は、第二開始点Ｐｓ５、Ｐｓ６、Ｐｓ７、Ｐｓ８から下方に延びる線分Ｒ５、Ｒ６、Ｒ７、Ｒ８（図１９参照）を定義し、更に、定義した線分Ｒ５、Ｒ６、Ｒ７、Ｒ８と、撮影画像Ｇのうち解析領域Ｑの下端に対応する仮想線分Ｑ３との交点を、第二終了点Ｐｅ５、Ｐｅ６、Ｐｅ７、Ｐｅ８（図１９参照）として決定する（Ｓ９７）。尚、図１９に示すように、線分Ｒ５〜Ｒ８は何れも第二基準線Ｌ２と交差する。
【００８１】
図１５に示すように、ＣＰＵ２０１は、線分Ｒ５〜Ｒ８の何れかを選択する（Ｓ９９）。ＣＰＵ２０１は、選択した線分Ｒ５〜Ｒ８と重なる位置にある垂直画素列に対応する解析垂直ラン情報を、記憶装置２０６から取得する（Ｓ１０１）。ＣＰＵ２０１は、取得した解析垂直ラン情報の要素を、第二開始点から第二終了点に向けて順番に探索し、黒色の画素の連続数を示す要素（２）を特定する。ＣＰＵ２０１は、特定した要素（２）に基づき、Ｓ９９の処理により選択した線分Ｒ５〜Ｒ８の位置における第二基準線Ｌ２の垂直方向の中点（「第二中点」と称す。）の座標を特定する（Ｓ１０３）。より詳細には、ＣＰＵ２０１は、以下の式（５）に基づき、解析領域Ｑの上端に対応する仮想線分Ｑ１から、第二中点までの間の垂直向の長さＷ（図１９参照）を、第二中点の垂直方向の座標Ｗとして特定する。
Ｗ＝（要素（１）＋要素（２）／２）×ｐ・・・（５）
ＣＰＵ２０１は、特定した第二中点の垂直方向の座標Ｗを、ＲＡＭ２０３に記憶する。ＣＰＵ２０１は処理をＳ１０５に進める。ＣＰＵ２０１は、Ｓ９９の処理で線分Ｒ５〜Ｒ８の全てを選択したか判定する（Ｓ１０５）。ＣＰＵ２０１は、選択していない線分が残存すると判定した時（Ｓ１０５：ＮＯ）、処理をＳ９９に戻す。ＣＰＵ２０１は、選択していない線分Ｒ５〜Ｒ８の何れかを選択し（Ｓ９９）、Ｓ１０１、Ｓ１０３の処理を繰り返す。ＣＰＵ２０１は、線分Ｒ５〜Ｒ８の全てを選択したと判定した時（Ｓ１０５：ＹＥＳ）、処理をＳ１０７に進める。
【００８２】
例えば図１９に示す例の場合、ＣＰＵ２０１は、線分Ｒ５〜Ｒ８を順番に選択し（Ｓ９９）、対応する解析垂直ラン情報を記憶装置２０６から取得する（Ｓ１０１）。取得した解析垂直ラン情報に基づき、黒色の画素の連続数を示す要素として要素（２）を特定する。ＣＰＵ２０１は、選択した線分Ｒ５〜Ｒ８の何れかの位置における第二基準線Ｌ２の第二中点の垂直方向の座標Ｗを特定する（Ｓ１０３）。以下、線分Ｒ５〜Ｒ８を選択した時に特定した第二中点の垂直方向の座標Ｗを、夫々、Ｗ１、Ｗ２、Ｗ３、Ｗ４と称す。ＣＰＵ２０１は、特定した第二中点の垂直方向の座標Ｗ１〜Ｗ４を、ＲＡＭ２０３に記憶する。
【００８３】
図１５に示すように、ＣＰＵ２０１は、ＲＡＭ２０３に記憶した第二中点の垂直方向の座標Ｗの平均値を算出する（Ｓ１０７）。例えば図１９に示す例の場合、座標Ｗ１〜Ｗ４の平均値を、以下の式（６）に基づき算出する（Ｓ１０７）。算出する値を、第二平均長Ｈ２と称す。
Ｈ２＝（Ｗ１＋Ｗ２＋Ｗ３＋Ｗ４）／４・・・（６）
【００８４】
ＣＰＵ２０１は、仮想線分Ｑ１（図２０参照）を４等分する３つの位置を決定する。ＣＰＵ２０１は、決定した３つの位置のうち左端側の位置を第二特定点Ｐｒ３（図２０参照）として決定し、右端側の位置を第二特定点Ｐｒ４（図２０参照）として決定する（Ｓ１０９）。図２０に示すように、第二特定点Ｐｒ３の座標を（ｐｘ（３），ｐｙ（３））とし、第二特定点Ｐｒ４の座標を（ｐｘ（４），ｐｙ（４））とする。ＣＰＵ２０１は、第二特定点Ｐｒ３から下方に延びる線分Ｔ３を定義し、第二特定点Ｐｒ４から下方に延びる線分Ｔ４を定義する。ＣＰＵ２０１は、線分Ｔ３に沿って第二特定点Ｐｒ３から第二平均長Ｈ２離隔した位置にある点を、第二平均位置Ｐｆ３として特定する。ＣＰＵ２０１は、線分Ｔ４に沿って第二特定点Ｐｒ４から第二平均長Ｈ２離隔した位置にある点を、第二平均位置Ｐｆ４として特定する（Ｓ１１１、図１５参照）。第二平均位置Ｐｆ３の座標は（ｐｘ（３），ｐｙ（３）＋Ｈ２）であり、第二平均位置Ｐｆ４の座標は（ｐｘ（４），ｐｙ（４）＋Ｈ２）である。
【００８５】
ＣＰＵ２０１は、特定した第二平均位置Ｐｆ３、Ｐｆ４を通過して水平方向に延びる第二直線Ｆ２を示す関数ｙ＝Ａ（２）ｘ＋Ｂ（２）（Ａ（２）、Ｂ（２）は定数）を特定する（Ｓ１１３）。より詳細には、ＣＰＵ２０１は、ｙ＝Ａ（２）ｘ＋Ｂ（２）の（ｘ，ｙ）に、第二平均位置Ｐｆ３、Ｐｆ４の夫々の座標（ｐｘ（３），ｐｙ（３）＋Ｈ２）、（ｐｘ（４），ｐｙ（４）＋Ｈ２）を代入し、二次連立方程式を解く。ＣＰＵ２０１は、算出した変数Ａ（２），Ｂ（２）に基づき、第二直線Ｆ２を示すｙ＝Ａ（２）ｘ＋Ｂ（２）を特定する。ＣＰＵ２０１は直線検出処理を終了し、処理を座標取得処理（図１２参照）に処理を戻す。
【００８６】
図１２に示すように、ＣＰＵ２０１は、Ｓ３７の直線検出処理により第一直線Ｆ１（ｙ＝Ａ（１）ｘ＋Ｂ（１））（図１８参照）を特定し、Ｓ３９の直線検出処理により第二直線Ｆ２（ｙ＝Ａ（２）ｘ＋Ｂ（２））（図２０参照）を特定する。ＣＰＵ２０１は、第一直線Ｆ１と第二直線Ｆ２が交差する点の座標を、チャートＳを第一基準位置に配置した状態で第一基準線Ｌ１と第二基準線Ｌ２が交差する第一交差点Ｃ１（図２１（Ａ）参照）の座標（「第一交差点座標」と称す。）として決定する（Ｓ４１）。ＣＰＵ２０１は、座標取得処理を終了し、処理をメイン処理（図１１参照）に戻す。
【００８７】
図１１に示すように、ＣＰＵ２０１は、Ｓ１５の処理により第一交差点座標を算出した後、窓部１０１上方の所定位置であって第一基準位置と異なる第二基準位置迄吸着機構１３０を移動する第二移動指示を、移動装置１００に出力する。移動装置１００のＣＰＵ１１１は第二移動指示を受信した時、第一駆動モータ１２１、第二駆動モータ１２２の駆動により、吸着機構１３０を第二基準位置に移動する（Ｓ１７）。該時、チャートＳを第二基準位置に配置した状態と称す。
【００８８】
ＣＰＵ２０１は、撮影部１１７による撮影を実行する撮影指示を、移動装置１００に出力する。移動装置１００のＣＰＵ１１１は撮影指示を受信した時、撮影部１１７を制御して撮影を開始する（Ｓ１９）。撮影部１１７は、第二基準位置に配置した状態のチャートＳを撮影し、撮影画像のデータを生成する。移動装置１００は、撮影部１１７が生成した撮影画像のデータを取得し、ＰＣ２００に出力する。ＰＣ２００のＣＰＵ２０１は撮影画像Ｇのデータを受信する。ＣＰＵ２０１は、撮影画像Ｇに基づいて第二交差点Ｃ２の位置を示す座標を取得する為、座標取得処理（図１２参照）を実行する（Ｓ２１）。ＣＰＵ２０１は、Ｓ１５と同一の処理を実行することにより、チャートＳを第二基準位置に配置した状態で第一基準線Ｌ１と第二基準線Ｌ２が交差する第二交差点Ｃ２（図２１（Ｂ）参照）の座標（「第二交差点座標」と称す）を決定する（Ｓ４１、図１２参照）。
【００８９】
ＣＰＵ２０１は、第一基準位置に配置した吸着機構１３０の位置を装置座標系で示す座標（「第一装置座標」と称す）と、第二基準位置に配置した吸着機構１３０の位置を装置座標系で示す座標（「第二装置座標」と称す）を、記憶装置２０６から読み出す。ＣＰＵ２０１は、第一装置座標から第二装置座標に向かう装置ベクトルＺ１（図２１参照）を算出する。装置ベクトルＺ１は、第一装置座標から第二装置座標迄吸着機構１３０を移動した時のチャートＳの装置座標系における移動量を示す。ＣＰＵ２０１は、第一交差点座標から第二交差点座標に向かう交差点ベクトルＺ２（図２１参照）を算出する。交差点ベクトルＺ２は、第一交差点座標から第二交差点座標迄交差点を移動した時の画像座標系における移動量を示す。ＣＰＵ２０１は、交差点ベクトルＺ２を装置ベクトルＺ１に変化する為の変換行列を算出する。これにより、ＣＰＵ２０１は、装置座標系と画像座標系とを対応付ける（Ｓ２３）。ＣＰＵ２０１はメイン処理を終了する。
【００９０】
尚、メイン処理の終了後、移動装置１００が吸着機構１３０により布１０５を第二位置から第三位置に移動する時、撮影部１１７は、第二位置にある布１０５を窓部１０１を介して撮影する。ＰＣ２００のＣＰＵ２０１は、撮影部１１７により撮影した撮影画像のデータを取得し、吸着面１３６に吸着した布１０５の位置を検出する。ＣＰＵ２０１は、検出した布１０５の位置に応じ、布１０５を第二位置から第三位置迄移動する時の画像座標系における移動量を特定する。ＣＰＵ２０１は、算出した変換行列に基づき、画像座標系における移動量を、装置座標系における移動量に変換する。ＣＰＵ２０１は、変換した装置座標系における移動量に基づき、第二位置から第三位置迄布１０５を移動する為に必要な第一駆動モータ１２１と第二駆動モータ１２２の駆動条件を算出する。第一駆動モータ１２１と第二駆動モータ１２２は、ＰＣ２００が算出した駆動条件で駆動し、第一腕部１３２と第二腕部１３３を回動する。これにより、吸着機構１３０の吸着面１３６は第三位置迄移動する。次に、吸着面１３６は第三駆動モータ１２３の駆動により、布１０５を吸着した状態で移動範囲の下端に移動する。次に、帯電装置１３５は駆動を停止する。布１０５は吸着面１３６から離れ、ＰＣ２００により特定した第三位置に載置する。
【００９１】
＜本実施形態の主たる作用、効果＞
ＰＣ２００のＣＰＵ２０１は、チャートＳを撮影した撮影画像Ｇの第一基準線Ｌ１の第一中点の第一平均位置を通過する第一直線Ｆ１と、第二基準線Ｌ２の第二中点の第二平均位置を通過する第二直線Ｆ２とを特定する（Ｓ１１３）。ＣＰＵ２０１は、特定した第一直線Ｆ１と第二直線Ｆ２が交差する交差点Ｃを特定する（Ｓ４１）。これによりＣＰＵ２０１は、第一基準線Ｌ１と第二基準線Ｌ２をエッジ検出により検出して交差点Ｃの座標を特定する時よりも、交差点Ｃの座標を精度よく決定できる。該理由は、エッジ検出に基づいて交差点Ｃの座標を特定する時、ノッチの発生により精度が低下する可能性がある為である。
【００９２】
ＣＰＵ２０１は、第一中点の第一平均位置を通過する第一直線Ｆ１と、第二基準線Ｌ２の第二中点の第二平均位置を通過する第二直線Ｆ２とに基づいて交差点Ｃを特定することで、１画素の単位長さよりも短い単位で交差点Ｃの座標を特定できる。故に、ＣＰＵ２０１は、交差点Ｃの座標を精度よく決定できる。
【００９３】
ＣＰＵ２０１は、第一基準位置に吸着機構１３０を配置した時に特定した第一交差点Ｃ１の第一交差点座標から、第二基準位置に吸着機構１３０を配置した時に特定した第二交差点Ｃ２の第二交差点座標に向かう交差点ベクトルＺ２を算出する。交差点ベクトルＺ２は、第一交差点座標から第二交差点座標迄交差点を移動した時の画像座標系における移動量を示す。ＣＰＵ２０１は、第一基準位置から第二基準位置迄吸着機構１３０を移動した時のチャートＳの移動量を示す装置ベクトルＺ１を算出する。装置ベクトルＺ１は、第一装置座標から第二装置座標迄吸着機構１３０を移動した時のチャートＳの装置座標系における移動量を示す。ＣＰＵ２０１は、装置ベクトルＺ１と交差点ベクトルＺ２に基づいて変換行列を算出し、画像座標系と装置座標系とを対応付ける（Ｓ２３）。故に、ＣＰＵ２０１は、布１０５を吸着する吸着機構１３０の座標系（装置座標系）と撮影画像Ｇの座標系（画像座標系）とを精度良く対応付けることができる。ＣＰＵ２０１は、画像座標系における第一交差点座標と第二交差点座標との間の移動と、装置座標系における第一装着座標と第二装着座標との間の移動量に基づき、装着座標系と画像座標系とを変換行列によって対応付けることができる。
【００９４】
ＣＰＵ２０１は、マーク位置検出処理（Ｓ３３）を実行し、解析領域Ｑを特定する（Ｓ３５）。ＣＰＵ２０１は、撮影画像Ｇのうち解析領域Ｑを解析し、交差点Ｃを決定する（Ｓ４１）。該時、ＣＰＵ２０１は、交差点Ｃを決定する時に解析対象とする撮影画像Ｇの領域を制限できる。故に、ＣＰＵ２０１は、第一交差点座標及び第二交差点座標を決定する為に必要な処理の負荷を軽減できる。
【００９５】
マークＭの中心位置ｍを通ってマークＭを横切る線分を定義した時、該線分のうちマークＭの曲線と重なる２つの部分ａ１、ａ３のそれぞれの長さと、マークＭの曲線で囲まれた部分と重なる部分ａ２の長さとの比ａ１：ａ２：ａ３は、１：２：１となる。ＣＰＵ２０１は、該比に基づき、マークＭの中心位置ｍの座標を決定する（Ｓ８１）。該時、ＣＰＵ２０１は、交差点Ｃを決定する為に解析の対象とする解析領域Ｑを、簡易に特定できる。又、撮影部１１７とチャートＳとの間の距離の変化に応じ、撮影画像Ｇ中のマークＭの大きさが変化した時も、ａ１：ａ２：ａ３の比は変化しない。故に、ＣＰＵ２０１は、撮影部１１７とチャートＳとの間の距離が変化した時も、マークＭを精度良く検出できる。
【００９６】
＜変形例＞
本発明は上記実施形態に限らない。上記メイン処理は、移動装置１００のＣＰＵ１１１により実行されてもよい。ミシン１のＣＰＵ５１、移動装置１００のＣＰＵ１１１、ＰＣ２００のＣＰＵ２０１の代わりに、縫製システム３００が備える共通のＣＰＵを設けてもよい。ＣＰＵ５１、１１１、２０１が実行する各処理を、共通のＣＰＵが実行してもよい。吸着機構１３０により第三位置に載置された布１０５を、ミシン１以外の機器により加工してもよい。該時、ミシン１の代わりに布１０５を加工する加工装置を設けてもよい。加工装置の具体例として、布を貼り合わせる接着装置、布を切断する切断装置等がある。吸着機構１３０は、静電気以外の力で吸着面１３６に布１０５を吸着してもよい。例えば吸着機構１３０は、吸着面１３６に設けた孔からエアを吸引することで、吸着面１３６に布１０５を吸着してもよい。又例えば吸着機構１３０は、一時的な接着が可能な接着剤により吸着面１３６に布１０５を吸着してもよい。
【００９７】
ＣＰＵ２０１は、吸着機構１３０を第一基準位置と第二基準位置との夫々に配置した時にチャートＳを撮影し、第一交差点座標及び第二交差点座標を算出した。ＣＰＵ２０１は、異なる３つ以上の位置に配置したチャートＳを撮影し、交差点座標を算出してもよい。ＣＰＵ２０１は、算出した３つ以上の交差点座標に基づき、交差点ベクトルを装置ベクトルに変化する為の変換行列を算出し、装置座標系と画像座標系とを対応付けてもよい。
【００９８】
チャートＳの第一基準線Ｌ１と第二基準線Ｌ２は直交する時に限らない。即ち、第一基準線Ｌ１と第二基準線Ｌ２のなす角度は９０度以外でもよい。マークＭの数は２つに限らない。例えばチャートＳは、解析領域Ｑの四隅の夫々にマークＭを有していてもよい。マークＭの中心位置ｍを通ってマークＭを横切る線分を定義した時、該線分のうちマークＭの曲線と重なる２つの部分ａ１、ａ３のそれぞれの長さと、マークＭの曲線で囲まれた部分と重なる部分ａ２の長さとの比ａ１：ａ２：ａ３は、１：２：１に限らず、他の値であってもよいことは言うまでもない。
【００９９】
ＣＰＵ２０１は、周知のパターンマッチング技術を適用することで、マークＭを検出してもよい。ＣＰＵ２０１は、検出したマークＭの大きさが所定範囲内の時、検出したマークＭに基づいて解析領域Ｑを検出し、所定範囲外の時、解析領域Ｑを検出しなくてもよい。ＣＰＵ２０１は、撮影画像Ｇ全体を解析することで交差点Ｃを決定してもよい。該時、チャートＳはマークＭを有さなくてもよい。
【０１００】
ＣＰＵ２０１は、Ｓ９５の処理で第一開始点、第二開始点を決定する時、仮想線分Ｑ１、Ｑ４を開始点の数に応じて等分しなくてもよい。ＣＰＵ２０１は、Ｓ１０９の処理で第一特定点、第二特定点を決定する時、仮想線分Ｑ１、Ｑ４を４等分する３つの位置に基づき決定しなくてもよい。
【０１０１】
＜その他＞
ＰＣ２００は本発明の「制御装置」の一例である。吸着機構１３０は本発明の「保持部」の一例である。吸着面１３６は本発明の「保持面」の一例である。布１０５は本発明の「対象物」の一例である。ミシン１は本発明の「加工装置」の一例である。移動装置１００は本発明の「保持装置」の一例である。上下方向は本発明の「第一方向」の一例である。左右方向は本発明の「第二方向」の一例である。Ｓ１５、Ｓ２１の処理を行うＣＰＵ２０１は本発明の「決定手段」の一例である。Ｓ２３の処理を行うＣＰＵ２０１は本発明の「制御手段」の一例である。Ｓ１０３の処理を行うＣＰＵ２０１は本発明の「第一特定手段」「第三特定手段」の一例である。Ｓ１０７の処理を行うＣＰＵ２０１は本発明の「第一平均算出手段」「第二平均算出手段」の一例である。Ｓ１０９の処理を行うＣＰＵ２０１は本発明の「第二特定手段」「第四特定手段」の一例である。Ｓ４１の処理を行うＣＰＵ２０１は本発明の「座標決定手段」の一例である。Ｓ３３の処理を行うＣＰＵ２０１は本発明の「検出手段」の一例である。Ｓ１５、Ｓ２１の処理は本発明の「決定ステップ」の一例である。Ｓ２３の処理は本発明の「制御ステップ」の一例である。Ｓ１０３の処理は本発明の「第一特定ステップ」「第三特定ステップ」の一例である。Ｓ１０７の処理は本発明の「第一平均算出ステップ」「第二平均算出ステップ」の一例である。Ｓ１０９の処理は本発明の「第二特定ステップ」「第四特定ステップ」の一例である。Ｓ４１の処理は本発明の「座標決定手段ステップ」の一例である。
【符号の説明】
【０１０２】
１        ：ミシン
１００    ：移動装置
１０５    ：布
１１７    ：撮影部
１３０    ：吸着機構
２００    ：ＰＣ
２０１    ：ＣＰＵ
Ｃ        ：交差点
Ｃ１      ：第一交差点
Ｃ２      ：第二交差点
Ｆ１      ：第一直線
Ｆ２      ：第二直線
Ｇ        ：撮影画像
Ｍ        ：マーク
Ｍ１      ：第一マーク
Ｍ２      ：第二マーク
Ｓ        ：チャート
【図１】
2019012040.tif 000003
【図２】
2019012040.tif 000004
【図３】
2019012040.tif 000005
【図４】
2019012040.tif 000006
【図５】
2019012040.tif 000007
【図６】
2019012040.tif 000008
【図７】
2019012040.tif 000009
【図８】
2019012040.tif 000010
【図９】
2019012040.tif 000011
【図１０】
2019012040.tif 000012
【図１１】
2019012040.tif 000013
【図１２】
2019012040.tif 000014
【図１３】
2019012040.tif 000015
【図１４】
2019012040.tif 000016
【図１５】
2019012040.tif 000017
【図１６】
2019012040.tif 000018
【図１７】
2019012040.tif 000019
【図１８】
2019012040.tif 000020
【図１９】
2019012040.tif 000021
【図２０】
2019012040.tif 000022
【図２１】
2019012040.tif 000023