(57)【要約】【課題】画面内での十字パターンの大きさや位置に制限を受けることなく、十字パターンの中心座標を検出することを可能にする。【解決手段】十字パターンの中心検出装置１は、入力画像データに対し、所定以上の輝度を有する高輝度画素の数が所定数に満たない列にマスク処理を施す第１のマスク処理手段４ａと、第１のマスク処理手段４ａでマスク処理を施した画像データに基づき、十字パターン１１の行方向の中心位置Ｘを算出する第１の演算手段４ｂと、入力画像データに対し、高輝度画素の数が所定数に満たない行にマスク処理を施す第２のマスク処理手段４ｃと、第２のマスク処理手段４ｃでマスク処理を施した画像データに基づき、十字パターン１１の列方向の中心位置Ｙを算出する第２の演算手段４ｄとを備え、行方向及び列方向の中心位置Ｘ、Ｙを用いて十字パターン１１の中心座標を求める。【選択図】図１
2011047674.tif 000002
【特許請求の範囲】
【請求項１】
十字パターンを含む領域を撮影して得られた入力画像データに基づき、画面内の十字パターンの中心位置を検出する中心検出装置であって、
前記入力画像データに対し、所定以上の輝度を有する高輝度画素の数が所定数に満たない列にマスク処理を施す第１のマスク処理手段と、
該第１のマスク処理手段でマスク処理を施した画像データに基づき、前記十字パターンの行方向の中心位置を算出する第１の演算手段と、
前記入力画像データに対し、前記高輝度画素の数が所定数に満たない行にマスク処理を施す第２のマスク処理手段と、
該第２のマスク処理手段でマスク処理を施した画像データに基づき、前記十字パターンの列方向の中心位置を算出する第２の演算手段とを備え、
前記第１及び第２の演算手段で算出した行方向及び列方向の中心位置を用いて前記十字パターンの中心座標を求めることを特徴とする十字パターンの中心検出装置。
【請求項２】
前記第１のマスク処理手段は、前記高輝度画素の数を列毎に計数するとともに、計数した各列の画素数のうちの最多の画素数を導き出し、前記高輝度画素の数が前記最多の画素数の所定比率未満となる列にマスク処理を施すことを特徴とする請求項１に記載の十字パターンの中心検出装置。
【請求項３】
前記第２のマスク処理手段は、前記高輝度画素の数を行毎に計数するとともに、計数した各行の画素数のうちの最多の画素数を導き出し、前記高輝度画素の数が前記最多の画素数の所定比率未満となる行にマスク処理を施すことを特徴とする請求項１又は２に記載の十字パターンの中心検出装置。
【請求項４】
前記入力画像データ上での最小の輝度値を画素が取り得る最小値にするとともに、該入力画像データ上での最大の輝度値を画素が取り得る最大値にするように、該入力画像データに対して輝度調整処理を施す輝度調整手段を備え、
前記第１及び第２のマスク処理手段は、輝度調整処理を施した画像データに対してマスク処理を施すことを特徴とする請求項１、２又は３に記載の十字パターンの中心検出装置。
【請求項５】
十字状の貫通孔が穿設されたスリット板に光を照射し、該スリット板の貫通孔を通過する十字光を撮影して前記入力画像データを得ることを特徴とする請求項１乃至４の何れかに記載の十字パターンの中心検出装置。
【請求項６】
十字パターンを含む領域を撮影して得られた入力画像データに基づき、画面内での十字パターンの中心位置を検出する中心検出方法であって、
前記入力画像データに対し、所定以上の輝度を有する高輝度画素の数が所定数に満たない列にマスク処理を施すステップと、
該列のマスク処理を施した画像データに基づき、前記十字パターンの行方向の中心位置を算出するステップと、
前記入力画像データに対し、前記高輝度画素の数が所定数に満たない行にマスク処理を施すステップと、
該行のマスク処理を施した画像データに基づき、前記十字パターンの列方向の中心位置を算出するステップと、
前記行方向及び列方向の中心位置を用いて前記十字パターンの中心座標を求めるステップとを備えることを特徴とする十字パターンの中心検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、十字パターンの中心を検出する装置及び方法に関し、特に、十字パターンを含む領域を撮影手段により撮影し、撮影画面内での十字パターンの中心位置を検出する装置等に関する。
【背景技術】
【０００２】
２物体間の位置を合わせたり、物体を正しい位置に設置させるための目印として、十字パターンが広く活用されている。物体の位置合わせに際しては、十字パターンを含む領域がカメラにより撮影されるとともに、その撮影画像における十字パターンの中心が検出され、物体の位置合わせに利用される。
【０００３】
十字パターンの中心を検出する方法としては、種々のものが提案されており、その一例が特許文献１に記載されている。この方法では、図９に示すように、先ず、十字パターン４１の各足が画面４２の四辺から突き出る状態で画像を撮影するとともに、画面４２の四辺に沿って帯状のウィンドウ４３ａ〜４３ｄを設定する。次いで、十字パターン４１とウィンドウ４３ａ〜４３ｄが重なる領域４４ａ〜４４ｄの中心４５ａ〜４５ｄを求め、その後、中心４５ａ−４５ｃを結ぶ直線４６と、中心４５ｂ−４５ｄを結ぶ直線４７との交点４８を求めて十字パターン４１の中心座標とする。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開昭６４−６９９０３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１に記載の検出方法においては、十字パターン４１の各足が画面４２の四辺から突き出る状態で画像を撮影する必要があるため、十字パターン４１を撮影する際に、画面４２内での十字パターン４１の大きさや位置に注意を払わなければならない。すなわち、十字パターン４１の各足が画面４２の各辺から突き出ない場合には、十字パターン４１とウィンドウ４３ａ〜４３ｄが重ならず、重なり領域４４ａ〜４４ｄの中心４５ａ〜４５ｄを定めることができないため、十字パターン４１の中心座標を求めることが不可能となる。
【０００６】
尚、特許文献１には、十字パターン４１の全体が画面４２内に収まる状態で撮影した場合に関して、図１０に示すように、十字パターン４１の各足の端部に合わせ、画面４２の四辺よりも内側にウィンドウ５１ａ〜５１ｄを設定する旨が記載されている。
【０００７】
しかし、このようなウィンドウ５１ａ〜５１ｄを設定するには、ウィンドウ５１ａ〜５１ｄの位置や幅を如何にして定めるのかに加え、設定後のウィンドウ５１ａ〜５１ｄにつき、何を基準して適否を判断するのかも検討する必要が生じる。このため、ウィンドウの位置や幅の調整が困難となり、結局のところ、十字パターン４１の各足が画面４２の四辺から突き出る状態で撮影せざるを得なくなる。
【０００８】
そこで、本発明は、上記従来の技術における問題点に鑑みてなされたものであって、画面内での十字パターンの大きさや位置に制限を受けることなく、十字パターンの中心座標を検出することが可能な中心検出装置等を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、本発明は、十字パターンを含む領域を撮影して得られた入力画像データに基づき、画面内の十字パターンの中心位置を検出する中心検出装置であって、前記入力画像データに対し、所定以上の輝度を有する高輝度画素の数が所定数に満たない列にマスク処理を施す第１のマスク処理手段と、該第１のマスク処理手段でマスク処理を施した画像データに基づき、前記十字パターンの行方向の中心位置を算出する第１の演算手段と、前記入力画像データに対し、前記高輝度画素の数が所定数に満たない行にマスク処理を施す第２のマスク処理手段と、該第２のマスク処理手段でマスク処理を施した画像データに基づき、前記十字パターンの列方向の中心位置を算出する第２の演算手段とを備え、前記第１及び第２の演算手段で算出した行方向及び列方向の中心位置を用いて前記十字パターンの中心座標を求めることを特徴とする。
【００１０】
そして、本発明によれば、列方向及び行方向の各々で、十字パターン以外の部分をマスキングし、行方向及び列方向の中心位置を求めるため、画面内での十字パターンの大きさや位置に制限を受けることなく、十字パターンの中心座標を検出することが可能になる。
【００１１】
上記十字パターンの中心検出装置において、前記第１のマスク処理手段が、前記高輝度画素の数を列毎に計数するとともに、計数した各列の画素数のうちの最多の画素数を導き出し、前記高輝度画素の数が前記最多の画素数の所定比率未満となる列にマスク処理を施すことができる。
【００１２】
上記十字パターンの中心検出装置において、前記第２のマスク処理手段が、前記高輝度画素の数を行毎に計数するとともに、計数した各行の画素数のうちの最多の画素数を導き出し、前記高輝度画素の数が前記最多の画素数の所定比率未満となる行にマスク処理を施すことができる。
【００１３】
上記十字パターンの中心検出装置において、前記入力画像データ上での最小の輝度値を画素が取り得る最小値にするとともに、該入力画像データ上での最大の輝度値を画素が取り得る最大値にするように、該入力画像データに対して輝度調整処理を施す輝度調整手段を備え、前記第１及び第２のマスク処理手段が、輝度調整処理を施した画像データに対してマスク処理を施すことができる。
【００１４】
上記十字パターンの中心検出装置において、十字状の貫通孔が穿設されたスリット板に光を照射し、該スリット板の貫通孔を通過する十字光を撮影して前記入力画像データを得ることができる。
【００１５】
また、本発明は、十字パターンを含む領域を撮影して得られた入力画像データに基づき、画面内での十字パターンの中心位置を検出する中心検出方法であって、前記入力画像データに対し、所定以上の輝度を有する高輝度画素の数が所定数に満たない列にマスク処理を施すステップと、該列のマスク処理を施した画像データに基づき、前記十字パターンの行方向の中心位置を算出するステップと、前記入力画像データに対し、前記高輝度画素の数が所定数に満たない行にマスク処理を施すステップと、該行のマスク処理を施した画像データに基づき、前記十字パターンの列方向の中心位置を算出するステップと、前記行方向及び列方向の中心位置を用いて前記十字パターンの中心座標を求めるステップとを備えることを特徴とする。
【発明の効果】
【００１６】
以上のように、本発明によれば、画面内での十字パターンの大きさや位置に制限を受けることなく、十字パターンの中心座標を検出することが可能になる。
【図面の簡単な説明】
【００１７】
【図１】本発明にかかる十字パターンの中心検出装置の第１の実施形態を示す構成図である。
【図２】（ａ）は、図１のスリット板の正面図であり、（ｂ）は、画像データの一例を示す図である。
【図３】十字パターンの中心検出方法を示すフローチャートである。
【図４】十字パターンの中心検出方法を説明するための図である。
【図５】図３の列方向のマスク処理を説明するための図である。
【図６】（ａ）は、十字パターンが小さい場合の一例を示し、（ｂ）は、十字パターンの位置に偏りがある場合の一例を示す図である。
【図７】本発明にかかる十字パターンの中心検出装置の第２の実施形態を示す構成図である。
【図８】十字パターンの中心の検出方法を示すフローチャートである。
【図９】従来の十字パターンの中心検出方法を示す図である。
【図１０】従来の十字パターンの中心検出方法を示す図である。
【発明を実施するための形態】
【００１８】
次に、発明を実施するための形態について、図面を参照しながら詳細に説明する。
【００１９】
図１は、本発明にかかる十字パターンの中心検出装置の第１の実施形態を示し、この中心検出装置１は、大別して、入力部２、記憶部３、データ処理部４及び出力部５から構成される。
【００２０】
入力部２は、光源６からの照射光を撮影して画像データを得るためのものであり、ＣＣＤカメラ及びＡ／Ｄ変換器等を備える。光源６と入力部２の間には、十字状の貫通孔７ａが穿設されたスリット板７（図２（ａ）参照）が配置され、入力部２のＣＣＤカメラには、スリット板７の貫通孔７ａを通過した十字状の光が入射される。このため、入力部２からは、図２（ｂ）に示すように、画面１０内に十字状の明るい部分（十字パターン）１１を含む画像データが出力される。
【００２１】
図１に戻り、記憶部３は、一時的にデータを記憶するための記憶媒体であり、入力部２で取得した画像データやデータ処理部４で生成したデータ等を記憶する。
【００２２】
データ処理部４は、十字パターン１１の縦方向（画面１０の列方向）の中心位置と、横方向（画面１０の行方向）の中心位置とを算出するために備えられ、プログラム制御により動作する。
【００２３】
このデータ処理部４は、記憶部３に記憶された画像データに基づき、列方向のマスク処理を実行する第１のマスク処理手段４ａと、第１のマスク処理手段４ａでマスク処理された画像データを用い、行方向の中心位置Ｘ（図２（ｂ）参照）を算出する第１の演算手段４ｂと、記憶部３に記憶された画像データに基づき、行方向のマスク処理を実行する第２のマスク処理手段４ｃと、第２のマスク処理手段４ｃでマスク処理された画像データを用い、列方向の中心位置Ｙ（図２（ｂ）参照）を算出する第２の演算手段４ｄとを備える。
【００２４】
出力部５は、１画面分の画像データにおける十字パターン１１の中心座標を出力するものであり、データ処理部４で算出した行方向の中心位置Ｘ、及び列方向の中心位置Ｙに基づいて十字パターン１１の中心座標を生成する。
【００２５】
次に、上記構成を有する中心検出装置１の動作について、図３〜図５を中心に参照しながら説明する。
【００２６】
先ず、図３に示すように、入力部２において、十字パターン１１を含む領域を撮影するとともに（ステップＳ１）、ＣＣＤカメラの出力信号をＡ／Ｄ変換し、各画素が０〜２５５のうちの何れかの値（輝度値）を有する画像データを生成する（ステップＳ２）。
【００２７】
これにより、図４（ａ）に示すように、十字パターン１１を含む１画面分の画像データが生成されるが、前述のように、入力部２にはスリット板７の貫通孔７ａを通過した光が入射されるため、十字パターン１１は、中心が最も明るく、縁に向けて徐々に暗くなるものとなる。
【００２８】
ここで、図中の１２〜１４は、各々、十字パターン１１の周縁部に生じる暗い領域、スリット板７の影となる領域、及び撮影時に生じたノイズであり、影領域１３が最も暗い領域となる。尚、ノイズは、通常、十字パターン１１の中心部と同程度の明るさを有することはないため、ここでは、十字パターン１１の縁部に生じる暗領域１２と同程度の明るさを有し、中間輝度（１２８）よりも輝度が低いものとする。
【００２９】
図３に戻り、生成した画像データを記憶部３に記憶すると（ステップＳ３）、第１のマスク処理手段４ａにおいて、記憶部３の画像データを読み出し、列方向のマスク処理を実行する（ステップＳ４）。
【００３０】
列方向のマスク処理にあたっては、図５に示すように、１画面分の画像データの各列（Ｃ１〜Ｃｎ）を順に参照し、１列毎に、画素値（輝度値）が１２８以上となる高輝度画素の数を計数する。その後、計数した各列の画素数のうちの最多の画素数ＬＰを導き出し、高輝度画素の数が最多の画素数ＬＰの５０％未満である列にマスク処理を施す。
【００３１】
例えば、図５の列Ｃｍにおいて、１２８以上の画素値を有する画素が２００個存在し、これが他の列の何れよりも多く、全ての列Ｃ１〜Ｃｎの中で最多であったとすると、１２８以上の画素値を有する画素の数が、２００個（最多の画素数ＬＰ）の５０％である１００個に満たない列を全てマスク処理の対象とする。
【００３２】
これにより、高輝度画素数の少ない列が選別されてマスキングされ、高輝度画素数の多い列が切り出される。この結果、図４（ｂ）に示すように、十字パターン１１の行方向成分１１ｂ、暗領域１２、影領域１３及びノイズ１４を被うようにマスク領域１５が設定され、十字パターン１１の列方向成分１１ａのみが非マスク領域となる。
【００３３】
尚、上記処理において、画素値のしきい値を１２８（０〜２５５の中間値）としたのは、迷光により入り込む光や撮影時に生じるノイズ１４の明るさを考慮したものであり、これらがマスク領域１５の対象外となるのを避けるためである。但し、迷光やノイズ１４の画素値が１２８を超えることが想定される場合には、しきい値を１２８より大きくする必要があるため、画素値のしきい値は変更可能とすることが好ましい。
【００３４】
また、画素数のしきい値の５０％は、十字パターン１１の行方向成分１１ｂをマスク領域１５に含ませるためのものであるが、行方向成分１１ｂの太さＨｄ（図５参照）によっては、５０％以外の数値とするのが好ましいこともあるため、画素値のしきい値の場合と同様、変更可能とすることが好ましい。
【００３５】
次に、図３に示すように、第１の演算手段４ｂにおいて、十字パターン１１の行方向の中心軸Ｘを算出する（ステップＳ５）。中心軸Ｘの算出は、図４（ｃ）に示すように、マスク処理された画像データを対象とし、下記の式１〜式４により非マスク領域（十字パターン１１の列方向成分１１ａ）の中心軸を算出することで行う。
【００３６】
【数１】
2011047674.tif 000003
【００３７】
【数２】
2011047674.tif 000004
【００３８】
【数３】
2011047674.tif 000005
【００３９】
【数４】
2011047674.tif 000006
【００４０】
ここで、式１の「ｗ」及び「ｈ」は、各々、画像の横幅及び縦幅であり（図４（ｂ）参照）、また、ｇ（ｉ，ｊ）は、各画素の画素値である。
【００４１】
中心軸Ｘの算出後、算出値を記憶部３に記憶し、次いで、第２のマスク処理手段４ｃにおいて、行方向のマスク処理を実行する（図３のステップＳ６）。この場合も、列方向のマスク処理の場合と同様、図４（ａ）に示す１画面分の画像データを対象として、画素値（輝度値）が１２８以上となる高輝度画素の数を行毎に計数し、その数が最多の画素数の５０％未満である行にマスク処理を施す（図４（ｄ）参照）。
【００４２】
次に、第２の演算手段４ｄにおいて、マスク領域１６が設定された画像データを対象とし、上記の式４及び下記の式５〜式７により列方向の中心軸Ｙを算出する（図３のステップＳ７：図４（ｅ）参照）。
【００４３】
【数５】
2011047674.tif 000007
【００４４】
【数６】
2011047674.tif 000008
【００４５】
【数７】
2011047674.tif 000009
【００４６】
最後に、出力部５において、行方向の中心軸Ｘと列方向の中心軸Ｙとの交点１７（図４（ｆ）参照）を求め（中心軸Ｘのｘ方向の位置をｘ座標とし、中心軸Ｙのｙ方向の位置をｙ座標とする座標を作成する）、十字パターン１１の中心座標を導き出す（図３のステップＳ８）。
【００４７】
以上のように、本実施の形態においては、十字パターン１１を含む画像データに対し、列方向及び行方向の各々で、所定以上の輝度を有する画素の数を計数し、所定数に満たないものにマスク処理を施す。このため、十字パターン１１以外の部分をマスキングした上で、列方向及び行方向の中心位置を求めることができる。
【００４８】
特に、本実施の形態では、マスク処理に際して、最多の画素数ＬＰを基準とし、これの５０％に満たない列及び行にマスク処理を施すため、撮影時の十字パターン１１の大きさへの配慮が不要となる。
【００４９】
すなわち、最多の画素数ＬＰは、画面１０内で占める十字パターン１１の大きさに従うため、十字パターン１１の大きさが変われば、それに伴って変化し、結果として、マスク処理判断の基準値が変化することになる。このため、例えば、図６（ａ）に示すように、十字パターン１１が極端に小さくなる場合でも、その大きさに応じた基準値でマスク処理の有無を判断することができ、十字パターン１１以外の領域を適切にマスキングすることができる。
【００５０】
また、本実施の形態においては、十字パターン１１の列方向成分１１ａ及び行方向成分１１ｂを独立して切り出し、列方向成分１１ａから行方向の中心位置Ｘを、行方向成分１１ｂから列方向の中心位置Ｙを求める。このため、図６（ｂ）に示すように、十字パターン１１の位置に偏りが生じて一部が欠けるような場合でも中心位置Ｘ、Ｙを求めることができ、十字パターン１１の位置を制限することなく、十字パターン１１の中心座標を求めることが可能になる。
【００５１】
尚、上記実施の形態においては、行方向の中心位置Ｘを求めた後に、列方向の中心位置Ｙを求めるが、これらは逆の順序で求めてもよい。
【００５２】
次に、本発明にかかる十字パターンの中心検出装置の第２の実施形態について、図７及び図８を参照しながら説明する。尚、これらの図において、図１〜図６と同一の構成要素については、同一の符号を付し、その説明を省略する。
【００５３】
図７に示すように、本実施の形態の中心検出装置２０は、入力部２から出力される画像データに対して輝度調整処理を施す輝度調整手段２１を備え、この点で、先の中心検出装置１と異なる。
【００５４】
中心検出装置２０では、図８に示すように、列方向及び行方向のマスク処理（ステップＳ４〜Ｓ７）に先立ち、下記の式８を用いて輝度調整処理を実行する（ステップＳ２１、Ｓ２２）。これにより、画面全体の明るさを伸張調整し、入力部２で取得した画像データ上の最小画素値を０（取り得る値の最小値）に引き下げるとともに、画像データ上の最大画素値を２５５（取り得る値の最大値）に押し上げる。
【００５５】
【数８】
2011047674.tif 000010
【００５６】
ここで、式８の「ＭＩＮ」は、入力部２で取得した画像データ上の最小画素値であり、「ＭＡＸ」は、入力部２で取得した画像データ上の最大画素値である。また、ｇ’（ｉ，ｊ）は、輝度調整後の各画素の画素値である。
【００５７】
その後は、算出したｇ’（ｉ、ｊ）を前述した式１、２、５、６のｇ（ｉ，ｊ）に当て嵌め、第１の実施形態の場合と同様にして十字パターン１１の中心座標を求める。
【００５８】
本実施の形態によれば、輝度調整処理によって画像の明暗を際立たせた後にマスク処理を実行するため、マスク処理に際して、十字パターン１１とそれ以外の領域とをより正確に区別することができる。このため、例えば、画面１０全体の画素値が低く、十字パターン１１の画素値が１２８に満たない場合でも、十字パターン１１が画面１０全体の画素値の半分以上の明るさを有すれば、十字パターン１１を特定することが可能となる。
【符号の説明】
【００５９】
１  十字パターンの中心検出装置
２  入力部
３  記憶部
４  データ処理部
４ａ  第１のマスク処理手段
４ｂ  第１の演算手段
４ｃ  第２のマスク処理手段
４ｄ  第２の演算手段
５  出力部
６  光源
７  スリット板
７ａ  貫通孔
１０  画面
１１  十字パターン
１１ａ  十字パターンの列方向成分
１１ｂ  十字パターンの行方向成分
１２  暗領域
１３  影領域
１４  ノイズ
１５、１６  マスク領域
１７  交点
２０  十字パターンの中心検出装置
２１  輝度調整手段
【図１】
2011047674.tif 000011
【図２】
2011047674.tif 000012
【図３】
2011047674.tif 000013
【図４】
2011047674.tif 000014
【図５】
2011047674.tif 000015
【図６】
2011047674.tif 000016
【図７】
2011047674.tif 000017
【図８】
2011047674.tif 000018
【図９】
2011047674.tif 000019
【図１０】
2011047674.tif 000020