以下、本発明を図面に示す実施形態により説明する。
図1および図2は本発明に係るボタン表裏判定装置の実施形態を示すものであり、図1は要部のブロック図、図2は図1の撮像手段の模式図である。
本実施形態のボタン表裏判定装置は、従来公知のボタン付けミシンにおけるボタンの供給経路に設置されるものを例示している。
図1に示すように、本実施形態のボタン表裏判定装置1は、表裏の判定に供するボタンBの画像データを得るための撮像手段2と、各部の動作の制御を司るための制御手段3とを有している。
前記撮像手段2は、ボタンBをその上方で光学的に読み取って撮像し、そのボタンBの画像を画像データに変換して制御手段3に送出するカメラ4と、このカメラ4によるボタンBの撮像時に、ボタンBの照明を行う照明装置5とを有している。
前記カメラ4は、例えば、CCDイメージセンサあるいはCMOSイメージセンサなどの撮像素子と撮像レンズ(共に図示せず。)を主として構成されている。このカメラ4としては、ボタンBを撮像することのできるものであればよく、アナログおよびデジタルのいずれでもよい。
本実施形態のカメラ4としては、後述する異なる波長(色)の照明による画像を一度に撮像することができるカラーカメラが用いられている。
なお、カメラ4としてモノクロカメラを用いることもできる。この場合、後述する照明装置5による各波長(色)の照明について個別に撮像することになる。すなわち、照明に用いる波長の種類の数と等しい撮像回数が必要になる。
また、カメラ4としてアナログカメラを用いた場合には、カメラ4により撮像された画像データは、A/D変換器を介して制御手段3に送出されることになる。
前記カメラ4は、図示しないボタン付けミシンにおけるボタンBの供給経路に上方から臨むように配置されている。そして、図示しないボタン供給機構によって搬送されるボタンBは、カメラ4の下方に設けられた撮像位置で停止可能に構成されている。
なお、撮像位置には、ボタンBの画像の背景とするために、ボタンBのサイズより大きい所定の色の背景パネルPが配置されている(図2)。
前記カメラ4は、図示しない駆動ドライバを介して制御手段3と電気的に接続されており、制御手段3から送出される制御指令により、撮像タイミングなどの動作制御がなされるようになっている。
本実施形態の照明装置5は、落射照明ユニット6と、斜光照明ユニット7とを有している。
前記落射照明ユニット6は、ボタンBの撮像面の平坦部分の模様(印字あるいは刻印された文字および符号を含む。)を鮮明に映し出すためのものであり、ボタンBに落射光La(同軸落射光)、すなわち、図1の上下方向に示すボタンBの中心線に沿って平行な光を照射することができるように構成されている。この落射照明ユニット6は、カメラ4の下方に隣位するように配置されている。
本実施形態の落射照明ユニット6は、光の3原色を構成する赤(R)、緑(G)および青(B)のそれぞれの色(波長)の光を発生できるように、赤色光源6aR、緑色光源6aGおよび青色光源6aBの3つの光源6a(符号6aは、赤色光源6aR、緑色光源6aGおよび青色光源6aBを総称する。)を備えている。また、落射照明ユニット6は、カメラ4の下方に配置されたハーフミラー6bを有しており、各光源6aから水平方向に沿って出射されてハーフミラー6bに入射した光を鉛直方向に沿って下方に反射してボタンBを上方から照射することができるとともに、ボタンBで反射してハーフミラー6bに入射する反射光をカメラ4に向かって透過させることができるようになっている。
なお、ボタンBの表裏の判定に用いる落射光Laの色としては、モノカラーであればよく、この場合、赤、緑および青のいずれかを用いることが好ましい。本実施形態においては、緑が用いられている。すなわち、表裏の判定時には、緑色光源6aGを点灯するようになっている。
また、落射照明ユニット6の光源6aとしては、LED、電球および蛍光ランプなどを挙げることができる。
前記斜光照明ユニット7は、ボタンBの撮像面の凹凸(刻印による凹凸を含む。)を鮮明に映し出すためのものであり、図2に示すように、上方からボタンBに向かって斜めに照らす光線である斜光Lbを照射することができるように構成されている。この斜光照明ユニット7は、図2に示すように、カメラ4の下方において上下方向に沿って2つ配置されている。そして、図2の上方に示す一方は、ボタンBに対する照射角度の大きい斜光Lbaを照射する高角度照明ユニット8とされており、ボタンBの急な角度の凹凸を映し出すことができるようになっている。また、図2の下方に示す他方は、ボタンBに対する照射角度の小さい斜光Lbbを照射する低角度照明ユニット9とされており、ボタンBのなだらかな角度の凹凸を映し出すことができるようになっている。
ここで、ボタンBに対する照射角度とは、ボタンBを水平面上に設置した場合に、水平面と光軸とのなす角度をいう。なお、落射光Laの照射角度は90度になる。
前記斜光照明ユニット7の数としては、単数であってもよい。
本実施形態の高角度照明ユニット8は、落射照明ユニット6と同様に、光の3原色を構成する赤、緑および青のそれぞれの色の光を発生できるように、赤色光源8aR、緑色光源8aGおよび青色光源8aBの3つの光源8a(符号8aは、赤色光源8aR、緑色光源8aGおよび青色光源8aBを総称する。)を備えている。また、これら3つの光源8aは、それぞれ環状に形成されており、その中心がボタンBの中心の延長線上に位置するように配置されている。さらに、高角度照明ユニット8の光源8aとしては、LED、電球および蛍光ランプなどを挙げることができる。
本実施形態の低角度照明ユニット9は、高角度照明ユニット8と同様に、光の3原色を構成する赤、緑および青のそれぞれの色の光を発生できるように、赤色光源9aR、緑色光源9aGおよび青色光源9aBの3つの光源9a(符号9aは、赤色光源9aR、緑色光源9aGおよび青色光源9aBを総称する。)を備えている。また、これら3つの光源9aは、それぞれ環状に形成されており、その中心がボタンBの中心の延長線上に位置するように配置されている。さらに、3つの光源9aの内径は、高角度照明ユニット8の3つの光源8aの内径より大きく形成されている。さらにまた、低角度照明ユニット9の光源9aとしては、LED、電球および蛍光ランプなどを挙げることができる。
前記斜光Lbの色としては、モノカラーであればよく、この場合、赤、GおよびBのいずれかを用いることが好ましい。但し、落射光Laと斜光Lbとが相互に色の異なる光線であり、さらに、照射角度の異なる複数の斜光照明ユニット7を設けた場合には、複数の斜光Lbの相互間でさらに異なる色の光線を用いることが肝要である。
本実施形態においては、高角度照明ユニット8の斜光Lbaの色として赤が用いられており、低角度照明ユニット9の斜光Lbbの色として青が用いられている。
すなわち、本実施形態におけるボタンBの撮像には、図2に示すように、落射照明ユニット6による緑の落射光La、高角度照明ユニット8による赤の斜光Lba、低角度照明ユニット9による青の斜光Lbbとの3色の光線による照明がボタンBになされるようになっている。
したがって、本実施形態のボタン表裏判定装置1によれば、ボタンBに対する各照射光の波長が照射方向毎に異なるため、ボタンB表面の凹凸形状による各照射光の反射角度に応じてカメラ4に入射する各照射光からの反射光の割合、すなわち、色相が異なることになる。
よって、本実施形態のボタン表裏判定装置1の撮像手段2は、上述した照明下でボタンBの画像をカメラ4で撮像して検出画像データを取得するから、この検出画像データは、ボタンBの形状およびボタンBの表面に形成された色、模様、文字等の図柄に基づく画像情報に加えて、ボタンB表面の凹凸に応じて色相の異なる色相情報が付加されたものとなる。
なお、本実施形態の照明装置5における落射照明ユニット6および斜光照明ユニット7の光源6a、8a、9aとして、光の3原色のそれぞれの色を用いているので、3原色のそれぞれの光源6a、8a、9aの光量を調節することにより、無段階で異なる波長の光線を生成することができる。このように、無段階で異なる波長の光線を生成することができるということにより、ボタンBの色に合わせてボタンBの凹凸および模様を鮮明に映し出すための照射光の色を容易かつ確実に得ることができる。
図1に戻って、照明装置5は、照明制御部10を介して制御手段3と電気的に接続されており、制御手段3から送出される制御指令により、点灯および消灯のタイミング、照明の色などの動作制御がなされるようになっている。
なお、照明制御部10としては、落射照明ユニット6を制御する落射照明制御部11、高角度照明ユニット8を制御する高角度照明制御部12および低角度照明ユニット9を制御する低角度照明制御部13が設けられている。
前記制御手段3は、各種の演算処理を行う演算部として機能するCPU21と、プログラムやデータを記憶する記憶部として機能するメモリ22とを主として形成されている。また、メモリ22は、適宜な容量のROM、RAMおよび電気的にデータの消去と書き込みとを行うことのできるEEPROMやフラッシュメモリなどの不揮発性メモリなどにより形成されている。なお、不揮発性メモリとしては、着脱可能なものであってもよい。
前記メモリ22には、少なくとも画像メモリ23、テンプレートメモリ24、画像処理部25、ワークメモリ26および基準画像データ作成処理部27が設けられている。
前記画像メモリ23は、カメラ4により撮像された表裏の判定に供するボタンBの検出画像データを記憶するためのものであり、検出画像データは、カメラ4によりボタンBを撮像する毎に更新されるようになっている。この画像メモリ23には、不揮発性メモリが割り当てられる。
前記テンプレートメモリ24は、ボタンBの表裏の判定に用いる基準となる基準画像データを記憶するためのものであり、基準画像データが予め記憶されるようになっている。このテンプレートメモリ24には、不揮発性メモリが割り当てられる。なお、テンプレートメモリ24には、予め各種のボタンBの基準画像データを記憶し、使用するボタンBの種類のものを読み出して用いるようにしてもよい。
前記画像処理部25は、相互に色の異なる落射光Laおよび斜光LbをボタンBに照射し、この状態でボタンBを撮像することにより、ボタンBに形成された図柄に基づく画像情報に加えて、ボタンB表面の凹凸などのボタンB表面の形状に応じて色相の異なる色相情報が付加されたフルカラーからなる検出画像データを得、この検出画像データを画像処理してボタンBの表裏を判定するためのプログラムおよびデータを記憶するためのものであり、少なくとも照明装置5およびカメラ4の動作制御を行う動作制御プログラムおよびデータと、画像処理を行う画像処理プログラムおよびデータとが予め記憶されている。
本実施形態の画像処理としては、検出画像データと、基準となる基準画像データとの照合(マッチング)が用いられている。また、画像処理部25には、ROMが割り当てられる。なお、照合については従来公知のものが用いられているので、その詳しい説明については省略する。
前記ワークメモリ26は、少なくともCPU21による演算データおよび中間データなどを記憶するためのものであり、CPU21による処理動作を行う際には、必要なプログラムやデータを読み込んで記憶するようになっている。このワークメモリ26には、RAMが割り当てられる。
前記基準画像データ作成処理部27は、照明装置5による基準照明を設定する工程、基準照明の光量を変動させての複数のサンプルテンプレートを作成する工程、および、複数のサンプルテンプレートから最適のサンプルテンプレートを選択して基準画像データとする工程を有する基準画像データ作成処理を行なうためのプログラムおよびデータを記憶するためのものであり、少なくとも照明装置5およびカメラ4の動作制御を行う動作制御プログラムおよびデータと、基準画像データ作成処理プログラムおよびデータとが予め記憶されている。なお、基準画像データ作成処理プログラムおよびデータは、画像処理部25に記憶するようにしてもよい。
本実施形態の制御手段3は、ボタン付けミシン全体の動作制御を行う制御手段から独立させて個別に設けられている。このため、制御手段3は、ボタン付けミシンのミシン制御部31と電気的に接続されており、ミシン制御部31は、制御手段3によるボタンBの表裏の判定結果に基づいて各部の動作制御、例えば、ボタン供給装置を駆動してボタンBを縫製位置に供給したり、あるいはボタンを供給経路から排除するエラー処理をしたりするようになっている。
なお、制御手段3は、ボタン付けミシン全体の動作制御を行うミシン制御部31の機能の一部を借りて実現してもよい。
また、撮像手段2を構成するカメラ4および照明装置5ならびにミシン制御制御部28は、それぞれ図示しないインターフェースを介して制御手段3と接続されている。
さらに、メモリ22には、オペレーティングシステム、デバイスドライバ、ボタン表裏判定装置1の初期設定動作を行うプログラムおよびそのデータなども記憶されている。
つぎに、前述した構成からなる本実施形態の作用について本発明のボタン表裏判定方法の実施形態とともに説明する。
本実施形態のボタン表裏判定方法は、前述した図1に示す本実施形態のボタン表裏判定装置1を用いて実施する。
本実施形態のボタン表裏判定動作の概略は、CPU21が画像処理部25から動作制御プログラムおよびデータを読み出し、各照明制御部10から照明装置5に制御情報を出力し、表裏の判定に供するボタンBに合わせた照明を作りだし、カメラ4で撮像する。このカメラ4により撮像された画像は、デジタル化されて色相と明るさとを有するフルカラーからなる検出画像データとして画像メモリ23に記憶される。さらに、CPU21は、画像処理部25から画像処理プログラムを読み出し、ボタンBの表裏の判定および形状計測を行う。ここで、ワークメモリ26は、これらの処理のためのテンポラリなデータの格納場所として使用される。また、テンプレートメモリ24は、表裏判定のための照合処理の正解データである基準画像データの格納場所として使用される。そして、CPU21は、表裏判定および形状計測が終了したならば、図示しないI/Fを介してその結果をミシン制御部31に送る。このような表裏判定の結果を受けたミシン制御部31は、ボタンBが裏向きであれば、ボタンBを廃棄し、つぎのボタンBをセットする。また、ボタンBが表向きであれば、ボタン表裏判定装置1の制御手段3が出力した糸通し孔Baの位置情報をもとにしてボタンBの姿勢を補正して縫製位置に供給し、縫製物にボタンBを縫い付ける縫製を行う。
なお、ボタンが表向きであるとは、例えば背景パネルPのような所定の載置面にボタンが載置された際に、ボタンのデザイン面(衣服に縫い付けられた際に外部から見えるようにデザインされたボタンの一方の面)が、載置面の対向方向から見えるように表向きに載置されている状態を示しており、ボタンが裏向きであるとは、ボタンのデザイン面の裏側の面が見えるように載置されている状態を示している。さらに、本明細書においては、デザイン面を単にボタンの表側、デザイン面の裏側の面を単にボタンの裏側とも称する。
つぎに、本実施形態のボタン表裏判定動作についてさらに説明する。
図3は、本発明に係るボタンの表裏判定方法の実施形態の要部を示すフローチャートである。
図3に示すように、本実施形態のボタン表裏判定方法は、照明設定(S1)、画像取得(S2)、ボタン計測処理(S3)および表裏判定処理(S4)をこの順に行う。なお、ボタン計測処理と表裏判定処理との順序を逆にしてもよい。
前記照明設定(図3の符号S1)についてさらに説明する。
本実施形態のボタン表裏判定装置1において、CPU21は、画像処理プログラムを読み出し、照明制御部10を介して照明装置5を制御する。そして、照明装置5を構成する各照明ユニット6、8、9は、ボタンBの色に合わせて相互に異なる波長を生成するように、それぞれの3つの光源6a、8a、9aの光量を制御する。例えば、ボタンBが白色であれば3つの照射方向の光の色はそれぞれ赤、緑、青とするとよい。
本実施形態では、落射照明による落射光Laを緑、高角度照明による斜光Laaを赤、低角度照明による斜光Labを青としてある。
なお、ボタンBの色は、生産時の付加データとしてユーザがあらかじめ設定する。また、基準画像データを作成する際に、ボタン表裏判定装置1(システム)が照明装置5を構成する各照明ユニット6、8、9の波長を自動取得しておくこともできる。なお、各照明ユニット6、8、9の波長の自動取得、すなわち、基準照明設定処理については後述する(図9および図10参照。)。
ついで、落射照明ユニット6の3つの光源6aのすべてを点灯させ、白色光を照射する。そして、背景色か否かで領域分割を行い、ボタンBの領域を抽出する。また、ボタンBの領域の境界部、中央部、その中間の3つの同心円の領域に分割し、それぞれの平均色情報、すなわち、平均色相および平均濃度を取得する。なお、落射光LaでボタンBの輪郭が正しく抽出できない場合、黒、もしくは透明体であると判定する。
ここで、光の3原色は、赤、緑、青(R、G、B)であり、色の3原色は、シアン、マゼンタ、イエロー(C、M、Y)である。この光の3原色と色の3原色とは相互に補色関係にある。赤の波長の光だけを吸収して他の波長の光を反射する物質の色がシアンであり、シアンの色は白色光から赤の波長成分だけを除いた緑と青の波長成分が含まれる色になる。
この関係を利用し、あらかじめ設定しておいた3つの照射方向の照明が映し出すボタンBの表面部分の色についてコントラストが得られる波長になるような照射光を赤、緑、青の光源の光量を制御し、作り出す。例えば、白色光からボタンBの3つの表面色の成分を除いた波長領域を3つに分けてそれぞれの照射角度に割り当てればよい。
ここで、波長が短い青色の光は散乱されやすく、波長の長い赤色は散乱率が低いという特徴があるので、ボタンBの表面状態や縁部における凹凸が波長の短い青色光や紫外光では敏感に反映される。そこで、表面の凹凸状態を映し出そうとする照射角度の照明には波長が短い光を割り当てるとよい。例えば、黒や透明体などのボタンBは、より3次元形状の相違を強調するために、波長の短い光を用いるとよい。
前記画像取得(図3の符号S2)についてさらに説明する。
前記CPU21は、カメラ4を制御し、判定に供するボタンBの撮像を行う。カメラ4により撮像された画像はデジタル化され、画像メモリ23に検出画像データとして記憶される。
図4は、照明装置におけるボタンに対する照明の照射方向とボタンの表面形状と反射方向の関係を示す模式図である。また、図5は、ボタンBの撮像画像の例を示す模式図である。図5(a)は判定に供するボタンBの表側の白色光下での画像である。図5(b)〜(d)はボタンBの表側に落射照明ユニット6、高角度照明ユニット8および低角度照明ユニット9の各照明ユニットによる照射光をそれぞれ単独に照射したときにカメラ4により撮像される画像の模式図である。なお、これら図5(b)〜(d)は、本発明を説明するための図であり、実際には、各照射ユニット6、8、9による照射光は同時照射されるので図5(b)〜(d)の各画像が単独でカメラ4により撮像されることはない。さらに、図5(e)は、ボタンBに落射照明ユニット6、高角度照明ユニット8および低角度照明ユニット9の各照明ユニットによる照射光を同時に照射した際にカメラ4により撮像されるフルカラー画像である。
図4に示すように、落射照明ユニット6による落射光(照射光)Laは、表面(表側)が平坦であれば反射光の多くを占める正反射(鏡面反射)成分のほとんどがカメラ4に入射し、ボタンBの平坦部分(図5(b)のb1部分)が明るく写るが、凹凸があると反射光に含まれる拡散反射(乱反射)成分の一部のみがカメラ4に入射されるため凹凸部分(図5(b)のb2およびb3部分)は、暗く写る。また、高角度照明ユニット8による斜光(照射光)Lbaは、ボタンBのなだらかな凹凸部分からの反射光の正反射成分がカメラ4に入射するように、照射角度を設定する。これにより、なだらかな凹凸部分(図5(c)のc2部分)が明るく写り、平坦部分や急な凹凸部分(図5(c)のc1およびc3部分)は暗く写る。さらに、低角度照明ユニット9による斜光(照射光)Lbbは、ボタンBの急な凹凸部分の反射光の正反射成分がカメラ4に入射するように、照射角度を設定する。これにより、急な凹凸部分(図5(d)のd3部分)が明るく写り、なだらかな凹凸部分(図5(d)のd2部分)は暗く写り、平坦部分(図5(d)のd1部分)はほとんど写らない。
図5(b)〜(d)に示すように、ボタンBの表面の凹凸に合わせて、各照明ユニットによる反射光の明るさが異なっているのが分かる。そして、これら各照明ユニットによる照射光を同時に照射しても、ボタンB表面の各部位からはボタンB表面の凹凸形状に合わせて各照明ユニット6、8、9による反射光が反射されるから、カメラ4に入射するボタンBからの反射光は、ボタンB表面の凹凸の形状に応じて各照射光の割合が異なることになる。よって、各照明ユニット6、8、9による照射光La、Lba、Lbbを同時に照射した状態でカメラ4により撮像されるボタンBの撮像画像は、図5(e)に示すようにボタンB表面の凹凸形状に応じて異なる色彩を有することになり、この撮像画像から得られた検出画像データが表裏の判定に用いられることになる。また、各照明ユニット6、8、9による照射光La、Lba、Lbbを同時に照射した状態で撮像されるボタンBの撮像画像である図5(e)の画像は、ボタンBの平坦部分には、これら各照明ユニット6、8、9による照射光が合成された白色光が照射されるから、ボタンBに形成された図柄に基づく通常の画像情報が取得されることになる。
なお、検出画像データと同様にして、あらかじめ判定対象である表裏の判定に供するボタンBと同種のボタンBを照明してカメラ4で撮像して得られた画像データが、基準画像データとしてテンプレートメモリ24に記憶されることになる。この基準画像データ作成については後に詳しく述べる。
前記ボタン計測処理(図3の符号S3)について図6のフローチャートによりさらに説明する。
図6は、図3のボタン計測処理の実施形態を示すフローチャートである。
前記ボタン計測処理は、撮像したボタンBの画像を2値化してラベリング処理し、背景からボタンB、さらに糸通し孔Baを抽出し、ボタン外径、糸通し孔数、糸通し孔径、ボタン中心、糸通し孔中心などを計測する処理である。
本実施形態では、1回に撮像されるボタンBの数は1つであるが、処理としては複数のボタンBがカメラ4の撮像範囲内である1つの画像内にあっても対応可能である。
前記画像取得において取得された検出画像データは、画像メモリ23に記憶されている。
図6に示すように、ボタン計測処理は、まず、画像メモリ23に記憶されている検出画像データについて、しきい値を設定し、2値化処理を行う(S11)。この2値化処理により形成された2値画像データは、ワークメモリ26に出力される。
つぎに、2値画像データについて、ノイズ除去を行う(S12)。このノイズ除去は、オープニング処理とクロージング処理を用いて、細かなノイズ成分や線の途切れや穴埋めを行う。
つぎに、ボタン外形輪郭抽出(背景抽出:S13)でボタンBの外径が正常に抽出できたかの判定を行う(S14)。そして、輪郭として閉領域が抽出できない場合(S14N)、処理を打ち切って不図示の表示装置等によりエラー表示を行う。
前記ボタン外形輪郭抽出は、ノイズ除去した2値画像についてラベリング処理を行い、背景ラベルを抽出する。この背景ラベルについて境界線追跡を行うことで、ボタン外形輪郭を得ることができる。仮に、閉領域を捉えた場合でも、円形かどうか、捉えた輪郭線が急峻なエッジ上の点なのかを調べ、ボタンBの正しい輪郭線かどうかを詳細に検査するとよい。
前記ボタン外径輪郭が正常に抽出できたなら(S14Y)、糸通し孔輪郭抽出を行う(S15)。
前記糸通し孔輪郭抽出は、背景ラベルを排除し、再びラベリング処理を行い、検出ラベルについて境界線追跡を行うことで抽出することができる。
ついで、検出した数のボタンBについて、ボタン外径・中心の取得(S17)、糸通し孔数の取得(S18)を行って、取得した数のすべての糸通し孔Baについて糸通し孔外径・中心の取得(S19、S20)を行う。そして、すべてのボタンBの計測が終了したら(S16Y)、ボタン計測処理を終了する。
前記表裏判定処理(図3の符号S4)について図7のフローチャートにより説明する。
図7は、図3の表裏判定処理の実施形態を示すフローチャートである。
図7に示すように、表裏判定処理は、まず、ボタン傾き・中心を取得する(S51)。
前記ボタン傾きは、糸通し孔中心より求める。例えば、糸通し孔Baが2つの場合は、2つの糸通し孔Baのそれぞれの中心を結ぶ直線の傾きとする。また、糸通し孔Baが3つ(正三角形)の場合は、いづれかの糸通し孔Baの中心を通り、その他2つの糸通し孔Baを結ぶ直線に垂直な直線の傾きとする。さらに、糸通し孔Baが4つ(矩形)の場合は、いづれかの糸通し孔Baを選択し、一番近くの糸通し孔Baと結ぶ直線の傾きを基準とする。そして、これに合わせて格子上の残る3直線の傾きを加味して平均をとる。
ここで、ボタン傾きとは、ボタンBの中心に対する糸通し孔Baの傾斜角度θである。例えば、予め設定されている角度と同じときにボタン傾きである傾斜角度θは0度(θ=0°)となる。例えば、4つの糸通し孔Baを具備するボタン傾きが0度の状態を図8(a)、45度の状態を図8(b)に示す。
前記ボタン中心は、ボタン外形輪郭の重心とする。
ついで、ボタン中心を回転中心とし、ボタン傾きの分、基準画像データ(検出画像データであってもよい。)を回転させて、検出画像データの画像処理、すなわち、検出画像データと基準画像データとの照合を行う(S53)。
ここで、同じ波長、すなわち同一方向からの照射光の照射におけるボタンBの凹凸形状による表面角度の差異は濃度差として検出画像データに記録されている。
本実施形態では、大きな表面角度の差異は色相差で、細かな表面角度の差異は濃度差で捉えている。そのため、画像処理における照合は、例えば赤、緑、青の明るさである濃度値をそれぞれ8ビットで保持していたとすれば、すべてのプレーンの値を加味した24ビットの値で行う。
また、ボタンBの色に合わせて、各プレーンの重みを変動させることで、照合の感度を増幅することができる。例えば、黒や透明体のボタンBでは同軸落射照明については反応が鈍くなる。同軸落射照明の重みを下げれば、照合の感度は増幅する。この照合は、糸通し孔Baを基準に最低必要回数のみ行う。そして、照合の回数は糸通し孔Baの数によって異なるので、照合を行う前に、糸通し孔数を取得する(S52)。
すなわち、表裏の判定に供するボタンBとして糸通し孔数が2つの場合には、基準画像データ(検出画像データであってもよい。)を180°回転させて、総計2回の照合を行う(S53aa、S53ab、S53ac)。
また、表裏の判定に供するボタンBとして糸通し孔数が3つの場合には、基準画像データ(検出画像データであってもよい。)を120°単位で回転させて、総計3回の照合を行う(S53ba、S53bb、S53bc)。
さらに、表裏の判定に供するボタンBとして糸通し孔Baの数が4つの場合には、基準画像データ(検出画像データであってもよい。)を90°単位で回転させて、総計4回の照合を行う(S53ca、S53cb、S53cc)。
したがって、対応する糸通し孔数のボタンBについて、糸通し孔数と同じ数の相関値が得られる。そこで、照合により得られた相関値(相関係数)のうちの最大値(1に近い値)を表裏判定に供するボタンBの評価値とする(S54)。なお、ここでは、各画素毎の基準画像データに対する色相値を相関値とする。この相関値は、予め後述する基準画像データを取得する際の相関値に対応して設定される。
ついで、得られた評価値を予め設定された閾値と比較し(S55)、基準画像データとして表のデータを記憶していたのであれば、相関値が閾値より大きければ表(S56)、小さければ裏(S57)と判定することにより、判定対象となるボタンBの表裏判定処理は終了する。
ここで、判定されるボタンBの表裏は、カメラ4と対向する面である。すなわち、ボタンBの表裏を「表」と判定した場合には、ボタンBの表側がカメラ4と対向する上向きとなり、「裏」と判定した場合には、ボタンBの表側がカメラ4と反対の下を向いた下向きとなっている。
なお、判定対象となるボタンBの表裏の判定が終了すると、画像メモリ23に記憶した検出画像データはクリアする。
また、ボタンBの表裏の判定結果に連動して、ボタン付けミシンにおけるボタンBの供給動作が制御される。
一般的に、ボタン付けミシンにおいては、表側(デザイン面)を上向きにしてボタンBを供給するように構成されている。そこで、ボタン表裏判定装置1により、判定対象のボタンBが表面が上向きの表と判定された場合には、そのボタンBをミシン本体に供給する供給処理が実行され、ボタンBが表面が下向きの裏と判定された場合には、ボタンBの供給経路からボタンBを取り除くエラー処理が実行されることになる。
そこで、本実施形態においては、ボタン表裏判定装置1によるボタンBの表裏判定結果をミシン制御部31に出力すると(S58)、表裏判定処理を終了する。
なお、表裏判定結果を受けたミシン制御部31は、ボタンBが「裏」であればボタンBを廃棄(供給経路から排除)し、ボタンBが「表」であれば、計測結果を検査して、糸通し孔Baの位置がずれているものや、糸通し孔径が小さいものなどの異常なボタンBは廃棄(供給経路から排除)し、正常なボタンBであれば計測結果をもとにボタン傾きを補正して、縫製動作を行うようにボタン付けミシンの各部を制御する。
ここで、本実施形態のボタン表裏判定方法における基準画像データ作成処理について図9のフローチャートにより説明する。
図9は本発明に係るボタン表裏判定装置における基準画像データ作成処理の実施形態を示すフローチャートである。
図9に示すように、本実施形態における基準画像データ作成処理は、まず、表向きのボタンBをボタン供給装置にセットする(S71)。
ついで、本実施形態のボタン表裏判定装置1において、CPU21は、図示しないインターフェースを介してボタン供給装置に制御指令を送出し、ボタン供給装置は、表向きのボタンBを撮像ステージの撮像位置に設けられた背景パネルPに供給する(S72)。
ついで、CPU21は、基準画像データ作成処理プログラムを読み出し、照明制御部10を介して照明装置5に制御データを出力し、所望の波長の照明を作りだしボタンBを照射し、この状態でボタンBをカメラ4で撮像する。そして、カメラ4により撮像されたボタンBの画像はデジタル化され、仮の基準画像データとして記憶される(S73)。
ついで、CPU21は、さらに基準画像データ作成処理プログラムを読み出し、ステップS73で記憶された仮の基準画像データからボタンBの局所的な色情報を取得し、最適な照明制御データを自動的に作成する。すなわち、基準照明設定処理としての照明制御データを作成する(S74)。この基準照明制御データ作成については、後に詳しく説明する。
ついで、CPU21は、上述した基準照明制御データで作成された全ての照明制御データに対して後述する照明変動処理が終了したか否かを判定する(S75)。全ての照明変動処理が終了していない場合(S75N)は、作成した照明制御データを基準として各照明ユニット6、8、9のそれぞれの光源6a、8a、9aの光量を予め設定された幅で変動させるように、照明装置5に対して制御データを出力して照明変動を行う(S76)。そして、照明設定が異なる状態、すなわち基準照明の光量を変動させた状態でボタンBを撮像し(S77)、サンプルテンプレートとしてのサンプルテンプレートデータを作成する(S78)。
このとき、撮像に用いた照明制御データはサンプルテンプレートデータに付帯属性として付加する。
また、これらの処理(S76、S77、S78)のテンポラリーなデータの格納場所としてワークメモリ26が使用され、作成した各サンプルテンプレートデータは、テンプレートメモリ24に記憶される。
そして、すべての照明変動が終了したら(S75Y)、オペレータは、同一種類の複数のボタンを上面が表向きと裏向きとに交互に供給されるようにそれぞれ所定数だけ供給されるようにボタン供給装置にセットする(S79)。
ついで、CPU21は、ボタン供給装置を介して、上述した上面が表向きのボタンを表向きのボタンBfとして、上面が裏向きのボタンを裏向きのボタンBrとして、交互に背景パネルP上に供給して表向きのボタンBのサンプルテンプレートデータに付加されている照明制御データを用いて照明設定を行って背景パネル上のボタンの画像を撮像し、撮像されたボタンのサンプルテンプレートデータを取得し、この取得されたボタンのサンプルテンプレートデータと当該照明制御データに対応する表向きのボタンBのサンプルテンプレートデータとの照合処理(マッチング)を行う(S80)。この照合処理は、詳しくは、後述するが、各サンプルテンプレートデータ毎に背景パネルP上の実際のボタンに対して正しく表裏判定ができる否かを複数のボタンBf、Brに対して実行して、サンプルテンプレートデータ毎の相関値を取得する処理である。
ついで、CPU21は、上述した照合処理の結果を集計し(S81)、その集計結果から最適なサンプルテンプレートデータを選択して基準画像データとする(S82)。これら、集計処理(S81)およびサンプルテンプレートデータ選択処理(S82)についても、さらに、後述する。
したがって、本実施形態の表裏判定装置1における基準画像データ作成処理は、照明装置5による基準照明を設定する工程、基準照明の光量を変動させて複数のサンプルテンプレートを作成し、複数のサンプルテンプレートから最適のサンプルテンプレートを選択して基準画像データとする工程を有している。
つぎに、ステップS74の照明制御データ作成について図10から図13によりさらに説明する。
図10は図9の基準照明設定処理の実施形態を示すフローチャート、図11は色相環図、図12は散乱率による波長設定例、図13は補色による波長設定例を示す。
本実施形態における基準照明設定処理としての照明制御データ作成は、図10に示すように、CPU21が基準画像データ作成処理プログラムを読み出すことにより開始する。そして、CPU21は、基準画像データ作成処理プログラムを読み出して、照明制御部10を介して照明装置5を制御し、照明装置5の各照明ユニット6、8、9のそれぞれのすべての光源6a、8a、9aを点灯させて白色光を照射した状態でカメラ4により背景パネルP上に供されたボタンBを撮像する(S101)。
ついで、カメラ4により撮像したフルカラーの画像データの各画素について、背景色、具体的には本実施形態における背景パネルPの色である黒色か否かにより領域分割を行ってボタン領域を抽出する(S102)。
ついで、ボタン領域の境界部、中央部、これらの中間部の3つの同心円の領域に分割し、それぞれの平均色情報、すなわち、平均色相および平均濃度を算出する(S103)。
ここで、輪郭が正しく抽出できない場合、ボタンBが黒(背景パネルPと同色)あるは透明体と判定する(S104)。そして、ボタンB黒あるいは透明体の場合、照明は以下に示すように散乱率による波長設定を行う。
前述したように、波長が短い青色の光は散乱されやすく、波長の長い赤色は散乱率が低いという特徴があり、ボタンBの表面状態や縁部における凹凸(面の粗さ)が波長の短い青色光や紫外光では敏感に反映される。そこで、表面の凹凸状態を映し出そうとする照射角度の照明には波長が短い光を割り当てるとよい。
したがって、黒や透明体などのボタンBは、より3次元形状の相違を強調するために、波長の短い光を用いるとよい。カメラ4の軸線に対してより角度が大きい低角度照明ユニット9による斜光Lbb、高角度照明ユニット8による斜光Lba、および、落射照明ユニット6による落射光Laの順に、波長の短い順の光を割り当てる(S105)。
すなわち、低角度照明ユニット9による斜光Lbbに最も波長の短い光を割り当て、落射照明ユニット6による落射光Laに最も波長の長い光を割り当てる。
例えば、図11に示す色相環図に基づいて光の波長を選択する。具体的には、低角度照明ユニット9による斜光Lbbとして青を選択した場合、図12に示すように、高角度照明ユニット8による斜光Lbaとして緑青、落射照明ユニット6による落射光Laとして緑を割り当てる。
黒や透明体でないボタンBの場合、照明は補色による波長設定を行う。
前述したように、光の3原色は、赤、緑、青(R、G、B)であり、色の3原色は、シアン、マゼンタ、イエロー(C、M、Y)である。この光の3原色と色の3原色とは相互に補色関係にある。例えば、赤の波長の光だけを吸収して他の波長の光を反射する物質の色がシアンであり、シアンの色は白色光から赤の波長成分だけを除いた緑と青の波長成分が含まれる色になる。
この関係を利用し、ボタンBの表面部分の色についてコントラストが得られる波長になるような照射光を赤、緑、青の光源の光量を制御し、作り出す。ボタンBの表面色と同系色成分の光を照射した場合、反射光がカメラ4に入射し、照明光の色が記録される。また、補色成分の光を照射した場合、照射光は吸収され、その部分は黒く記録される。そこで、まず、表面色と同系色の色を選択し、他の2色は先に選んだ色の位置を基準に補色領域を除いた波長領域の両端を求め、割り当てる(S106)。
例えば、ボタンBの表面色が赤の場合、補色領域として緑を中心とした黄から青の領域を設定し、これを除外、同系色領域の両端である紫と橙を選択する。
ボタン領域の境界部、中央部、その中間の3つの同心円の領域で明らかな色相の違いがあればそれぞれの照明色は独立して決定すればよいが、大抵の場合において同系色となる。
具体的には、図13に示すように、低角度照明ユニット9による斜光Lbbとして橙、高角度照明ユニット8による斜光Lbaとして赤、落射照明ユニット6による落射光Laとして紫を割り当てる。
しかしながら、ボタンBに刻印や印字、模様がある場合は、その領域のコントラストを優先させたほうが表裏判定しやすくなる。これらがどこにあるか予め分からない場合は、すべての組み合わせの照明設定で実際にサンプルテンプレートデータを作成して一番いいものを選択するようにしてもよい。
ついで、照明制御データ(波長設定:S105、S106)を基準としてそれぞれの照明の光量を予め設定した幅で決定される回数分だけ変動させて対応する照明制御データを作成し終了する(S107、S108)。
なお、CPU21は、図9に示すように、照明制御データ作成で作成したデータ数分だけ作成されたデータに基づいて照明を制御し、ボタンBの撮像を行い、照合のためのサンプルテンプレートデータを作成する。また、照明制御データは、作成されたサンプルテンプレートデータに付加する。
つぎに、ステップS80の照合処理について図14のフローチャートによりさらに説明する。
本実施形態における照合処理において、まず、CPU21は、ボタン供給装置を介して、ボタン供給装置に予めセットされている最初のボタンである表向きのボタンBfを背景パネルPの上に供給する(S200)。ついで、最初のボタンBfに対して全てのサンプルテンプレートデータについての照合処理が終了したか否かを判定する(S201)。全てのサンプルテンプレートデータについての処理が終了していない場合(S201N)、サンプルテンプレートデータに付加されている照明制御データを取得する(S202)。
ついで、CPU21は、基準画像データ作成処理プログラムを読み出し、照明制御部10を介して各照明ユニット6、8、9の照明を照明制御データにより制御し、各照明を点灯する(S203)。
ついで、ボタンBfを撮像し(S204)、撮像したフルカラー画像データと作成済みの照合のためのサンプルテンプレートデータとを照合し(S205)、この照合で相関値(C)を算出して表向きボタンに対する相関値としてワークメモリ26に記憶する。なお、ここでの相関値(C)は、例えば、ステップS77で撮像された撮像画像全体を複数の画素領域に分割し、分割された領域における各画素の色相に対応する数値データの合計値をサンプルテンプレートデータの基準値として記憶し、S204で撮像されたフルカラー画像データから得られる各分割領域毎の色相に対応する数値データの合計値のサンプルテンプレートデータの基準値に対する割合を相関値として求める。
ついで、つぎのサンプルテンプレートデータに切り換えて(S206)、各処理(S202〜S206)を繰り返す。
そして、すべてのサンプルテンプレートデータの処理が終了したら(S201Y)、ボタン供給装置に予めセットされているつぎのボタンである裏向きのボタンBrを背景パネルPの上に供給し(S207)、ボタン供給装置に予めセットされている全数のボタンに対して照合処理が行われたか否かを判断し、全数終了していない場合(S208N)は、裏向きのボタンBrに対して各処理(S202〜S206)を繰り返す。但し、S205で求められた相関値(C)は、ここでは、裏向きボタンBrに対する相関値としてワークメモリ26に記憶する。
そして、ボタン供給装置に予めセットされている全数のボタンに対して照合処理が終了したと判断した場合(S208Y)は、照合処理を終了する。以上の照合処理により、すべてのサンプルテンプレートデータに対する相関値が表向きおよび裏向きのそれぞれのボタンBf、Brに対して複数取得される。
照合処理終了後のS81の集計処理およびS82のサンプルテンプレート選択処理について、ここで、さらに詳述する。
CPU21は、S81の集計処理において、それぞれのサンプルテンプレートデータに対して記憶されている相関値(C)に基づいて、下記数式(1)により真値との残差平均Aを各サンプルテンプレートデータ毎に求める。
具体的には、表向きのボタンBfの場合は、1から相関値Cを減算し、裏向きのボタンBrの場合は、相関値Cをそのまま使用する。そして、複数個のボタンBについての結果の平均(相関値の平均)を求めて、各サンプルテンプレートデータ毎に集計する。なお、上記数式(1)におけるn1は、照合処理で相関値を取得した表向きボタンBfの数、n2は、裏向きボタンBrの数である。
ついで、CPU21は、S82で真値との残差平均Aが最小のサンプルテンプレートデータを選択する。すなわち、正解に対する誤差の最も少ないサンプルテンプレートデータを選択する。この選択したサンプルテンプレートデータを基準画像データとする。
なお、テンプレートメモリ24から選択されたサンプルテンプレートデータ以外の不要なサンプルテンプレートデータを削除することにより、表裏の判定に供する基準画像データが確定することになる。
このように、本実施形態のボタン表裏判定方法によれば、ボタンBの表面をカメラ4で撮像して表裏の判定を行うので、刻印および模様の有無あるいは差異により表裏の判定ができる。また、ボタンBを撮像する際の照明として落射光Laおよび斜光Lbを用いるとともに、それぞれの波長を変えることにより、ボタンBの撮像面の凹凸を色相の相違として映し出すことができる。その結果、ボタン表面の図柄に表裏差異のあるボタンBに加えて、ボタン表面の凹凸形状に表裏差異の有るボタンBの表裏を容易かつ確実に判定することができる。また、凹凸形状の表裏差異に有るボタンBにおいても、従来より高いレベルでの表裏判定を行うことができる。さらに、カメラ4としてカラーカメラを用いて、3つの照射方向の波長を赤、緑、青で割り付けることにより、1回の撮像で、検出画像データを取得することができる。
すなわち、本実施形態のボタン表裏判定方法によれば、相互に色の異なる落射光Laおよび斜光LbをボタンBに照射し、この状態でボタンBを撮像することにより、ボタンBの撮像面の凹凸に応じて色相の異なる検出画像データを得、この検出画像データを画像処理してボタンBの表裏を判定するから、ボタン表面の図柄に表裏差異のあるボタンBに加えて、ボタン表面の凹凸形状に表裏差異の有るボタンBの表裏を容易かつ確実に判定することができる。
したがって、本実施形態のボタン表裏判定方法によれば、多種多様のボタンBの表裏を判定することのできる汎用性に優れたものとなる。
また、本実施形態のボタン表裏判定方法によれば、画像処理が、検出画像データと基準となる基準画像データとの照合であるから、ボタンBの表裏をより確実かつ容易に判定することができる。
またさらに、本実施形態のボタン表裏判定装置1によれば、撮像手段2のカメラ4は、撮像したボタンBの画像を画像データに変換して制御手段3に送出することができる。さらに、撮像手段2の照明装置5は、ボタンBに落射光Laを照射する落射照明ユニット6と、ボタンBに落射光Laと異なる色の斜光Lbを照射する少なくとも1つの斜光照明ユニット7とを有しているから、ボタンBの凹凸を色相の相違を以て映し出すことができる。さらにまた、制御手段3は、落射照明ユニット6および斜光照明ユニット7により落射光Laおよび斜光LbをボタンBに照射し、この状態でカメラ4によりボタンBを撮像してボタンB表面の凹凸形状に応じた色相を有する画像データからなる検出画像データを得、この検出画像データを画像処理してボタンBの表裏を判定することができる。
したがって、本実施形態のボタン表裏判定装置1によれば、本発明のボタン表裏判定方法、すなわち、縫製物に縫い付けられるボタンBの表裏を判定するボタン表裏判定方法において、相互に色の異なる落射光Laおよび斜光LbをボタンBに照射し、この状態でボタンBを撮像することにより、ボタンに形成された図柄に基づく画像情報に加えて、ボタン表面の凹凸形状に応じえ色相の異なる色相情報が付加されたフルカラー画像データからなる検出画像データを得、この検出画像データを画像処理してボタンの表裏を判定するボタン表裏判定方法を簡便な構成で容易に実施することができる。その結果、ボタン表面の図柄に表裏差異のあるボタンBに加えて、ボタン表面の凹凸形状に表裏差異の有るボタンBの表裏を容易かつ確実に判定することができるので、多種多様のボタンBの表裏を判定することのできる汎用性に優れたものとなる。
また、本実施形態のボタン表裏判定装置1によれば、画像処理が、検出画像データと基準となる基準画像データとの照合であるから、本発明のボタン表裏判定方法、すなわち、画像処理が、検出画像データと基準となる基準画像データとの照合であるボタン表裏判定方法を簡便な構成で容易に実施することができる。
さらに、本実施形態のボタン表裏判定方法によれば、前記落射光および斜光の光量を変動させて複数のサンプルテンプレートとしてのサンプルテンプレートデータを作成する工程と、複数のサンプルテンプレートから最適のサンプルテンプレートを選択して基準画像データとする工程とを有するから、種々の色や形状のボタンBに対しての照明設定を確実に行うことができるし、画像処理、すなわち表裏の判定に供する適正な基準画像データを確実に得ることができる。その結果、より安定した表裏判定を行うことができる。
なお、本発明は、前述した実施形態に限定されるものではなく、必要に応じて種々の変更が可能である。
例えば、上記実施の形態では、照合処理(S80)では、撮像画像の各分割領域の画素の色相に対応する数値データの合計値を相関値として用いているが、各サンプルテンプレートデータのボタンの表裏判定に対する評価が可能な相関値であれば、種々適用可能である。
また、上記実施の形態では、各照明ユニット6、8、9の光源として、RGBの光の3原色のそれぞれの色を用いているが、類似の効果を奏することができる他の色の光源を用いても良い。
さらに、上記実施の形態では、図4において一方の面が凹状のボタンBを例に説明したが、本発明は、一方の面が凸状のボタンなど、表裏の形状が異なるボタンであれば適用可能である。