(57)【要約】【課題】  光源からの光でレンズの球面収差により形成される光のリング像の大きさが十分でない場合であっても、リング像の中心位置を算出することができる位置演算システム、位置演算装置および位置演算方法を提供する。【解決手段】  位置演算システムは、光源１〜４と、光源からの光で球面収差により光のリング像１１を形成するレンズ１２と、リング像を撮像するイメージセンサ１３と、撮像素子による撮像画像に対して連結成分解析を行って演算対象領域を設定し、この演算対象領域の輝度分布に基づいて算出したリング像の中心位置を用いて光源位置の演算を行う演算装置１４とを備える。リング像の中心位置は、例えば演算対象領域の輝度分布において輝度値を二値化することにより抽出したリング像のエッジ点に基づいて算出することができる。【選択図】  図１
2008224328.tif 000002
【特許請求の範囲】
【請求項１】
光源と、前記光源からの光で球面収差により光のリング像を形成するレンズと、前記リング像を撮像する撮像素子と、前記撮像素子による撮像画像に対して連結成分解析を行い、該連結成分解析により得られる前記撮像画像に含まれる複数の連結成分領域の中から該リング像に対応する連結成分領域を検出するとともに、前記撮像画像において該リング像に対応する連結成分領域を含む演算対象領域を設定し、前記演算対象領域の輝度の分布に基づいて該リング像の中心位置を算出し、該中心位置を用いて前記光源の位置を演算する演算装置とを備えた位置演算システム。
【請求項２】
前記リング像の中心位置が、前記演算対象領域の輝度の分布において輝度値を二値化することにより抽出した前記リング像の前記二値の境界位置に基づいて算出されることを特徴とする請求項１記載の位置演算システム。
【請求項３】
前記二値化のしきい値として、前記演算対象領域の輝度分布において、輝度の分布を所定単位面積からなる単位画素の２次元配列で表現したときに、画素数が極大を示す２つの輝度値の間の値を用いることを特徴とする請求項２記載の位置演算システム。
【請求項４】
前記二値化のしきい値として、前記演算対象領域の画素の平均輝度値を用いることを特徴とする請求項２記載の位置演算システム。
【請求項５】
前記リング像の中心位置が、前記演算対象領域の輝度の分布において画素数が極大を示す２つの輝度値のうち高輝度側の輝度値に対応する画素位置から算出されることを特徴とする請求項１記載の位置演算システム。
【請求項６】
前記連結成分解析が、前記撮像画像より低解像度の画像に対して行う第１の連結成分解析と、前記第１の連結成分解析から得られた連結成分領域に対応する前記撮像画像領域に対して行う第２の連結成分解析とを含むことを特徴とする請求項１〜５のいずれかに記載の位置演算システム。
【請求項７】
前記演算対象領域が、前記リング像外周の接線で構成される領域であることを特徴とする請求項１〜６のいずれかに記載の位置演算システム。
【請求項８】
光源からの光でレンズの球面収差により形成した光のリング像の撮像画像に対して連結成分解析を行い、該連結成分解析により得られる前記撮像画像に含まれる複数の連結成分領域の中から該リング像に対応する連結成分領域を検出するとともに、前記撮像画像において該リング像に対応する連結成分領域を含む演算対象領域を設定し、前記演算対象領域の輝度の分布に基づいて該リング像の中心位置を算出し、該中心位置を用いて前記光源の位置を演算することを特徴とする位置演算装置。
【請求項９】
前記連結成分解析が、前記撮像画像より低解像度の画像に対して行う第１の連結成分解析と、前記第１の連結成分解析から得られた連結成分領域に対応する前記撮像画像領域に対して行う第２の連結成分解析とを含むことを特徴とする請求項８記載の位置演算装置。
【請求項１０】
光源からの光でレンズの球面収差により形成した光のリング像の撮像画像に対して連結成分解析を行い、該連結成分解析により得られる前記撮像画像に含まれる複数の連結成分領域の中から該リング像に対応する連結成分領域を検出するとともに、前記撮像画像において該リング像に対応する連結成分領域を含む演算対象領域を設定し、前記演算対象領域の輝度の分布に基づいて該リング像の中心位置を算出し、該中心位置を用いて前記光源の位置を演算することを特徴とする位置演算方法。
【請求項１１】
コンピュータに、
光源からの光でレンズの球面収差により形成した光のリング像の撮像画像を入力する手順と、
前記撮像画像に対して連結成分解析を行い、該連結成分解析により得られる前記撮像画像に含まれる複数の連結成分領域の中から該リング像に対応する連結成分領域を検出するとともに、前記撮像画像において該リング像に対応する連結成分領域を含む演算対象領域を設定し、前記演算対象領域の輝度分布に基づいて該リング像の中心位置を算出し、該中心位置を用いて前記光源の位置を演算する手順
を実行させるための位置演算プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は位置演算システム、位置演算装置および位置演算方法に関するものである。
【背景技術】
【０００２】
従来から、発光体（あるいは輝度の高い対象物）の３次元位置を計測する手段としては、デジタルカメラ２台で発光体を撮影し、カメラ２台間の距離を基線とした三角測量の原理で発光体の座標を算出する方法がよく知られている。また、発光体の位置計測を高精度に行う方法として光干渉法がよく知られている。代表的な光干渉法としては、レーザ光源から出た光をビームスプリッターなどを用いて２つに分割し、その一方を対象物に照射し、他方を参照光としてミラーに照射して元の光路に戻し、対象物からの反射光と参照光とを重ね合わせて干渉させる方法がある。
【０００３】
また、光の干渉を用いた別の技術として特許文献１に記載のものがある。特許文献１には、ＬＥＤ光源を一つのカメラで撮像することにより、その３次元位置を計測する技術が開示されている。この技術は、レンズの球面収差を利用して、点光源を光のリング像に変換し、そのリング像のサイズから光源までの距離を計測し、リング像の中心位置から光源が存在する方向を決定することで、光源の３次元座標を計測するものである。
【特許文献１】特開２００４−２１２３２８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明の目的は、光源からの光でレンズの球面収差により形成される光のリング像の大きさが十分でない場合であっても、リング像の中心位置を算出することができる位置演算システム、位置演算装置および位置演算方法を提供することにある。
【課題を解決するための手段】
【０００５】
本発明は、上記目的を達成するため、以下の位置演算システム、位置演算装置および位置演算方法を提供する。
＜１＞  光源と、前記光源からの光で球面収差により光のリング像を形成するレンズと、前記リング像を撮像する撮像素子と、前記撮像素子による撮像画像に対して連結成分解析を行い、該連結成分解析により得られる前記撮像画像に含まれる複数の連結成分領域の中から該リング像に対応する連結成分領域を検出するとともに、前記撮像画像において該リング像に対応する連結成分領域を含む演算対象領域を設定し、前記演算対象領域の輝度の分布に基づいて該リング像の中心位置を算出し、該中心位置を用いて前記光源の位置を演算する演算装置とを備えた位置演算システム。
＜２＞前記リング像の中心位置が、前記演算対象領域の輝度の分布において輝度値を二値化することにより抽出した前記リング像の前記二値の境界位置に基づいて算出されることを特徴とする上記＜１＞記載の位置演算システム。
＜３＞  前記二値化のしきい値として、前記演算対象領域の輝度分布において、輝度の分布を所定単位面積からなる単位画素の２次元配列で表現したときに、画素数が極大を示す２つの輝度値の間の値を用いることを特徴とする上記＜２＞記載の位置演算システム。
＜４＞  前記二値化のしきい値として、前記演算対象領域の画素の平均輝度値を用いることを特徴とする上記＜２＞記載の位置演算システム。
＜５＞  前記リング像の中心位置が、前記演算対象領域の輝度の分布において画素数が極大を示す２つの輝度値のうち高輝度側の輝度値に対応する画素位置から算出されることを特徴とする上記＜１＞記載の位置演算システム。
＜６＞  前記連結成分解析が、前記撮像画像より低解像度の画像に対して行う第１の連結成分解析と、前記第１の連結成分解析から得られた連結成分領域に対応する前記撮像画像領域に対して行う第２の連結成分解析とを含むことを特徴とする上記＜１＞〜＜５＞のいずれかに記載の位置演算システム。
＜７＞  前記演算対象領域が、前記リング像外周の接線で構成される領域であることを特徴とする上記＜１＞〜＜６＞のいずれかに記載の位置演算システム。
【０００６】
＜８＞  光源からの光でレンズの球面収差により形成した光のリング像の撮像画像に対して連結成分解析を行い、該連結成分解析により得られる前記撮像画像に含まれる複数の連結成分領域の中から該リング像に対応する連結成分領域を検出するとともに、前記撮像画像において該リング像に対応する連結成分領域を含む演算対象領域を設定し、前記演算対象領域の輝度の分布に基づいて該リング像の中心位置を算出し、該中心位置を用いて前記光源の位置を演算することを特徴とする位置演算装置。
＜９＞  前記連結成分解析が、前記撮像画像より低解像度の画像に対して行う第１の連結成分解析と、前記第１の連結成分解析から得られた連結成分領域に対応する前記撮像画像領域に対して行う第２の連結成分解析とを含むことを特徴とする上記＜８＞記載の位置演算装置。
【０００７】
＜１０＞  光源からの光でレンズの球面収差により形成した光のリング像の撮像画像に対して連結成分解析を行い、該連結成分解析により得られる前記撮像画像に含まれる複数の連結成分領域の中から該リング像に対応する連結成分領域を検出するとともに、前記撮像画像において該リング像に対応する連結成分領域を含む演算対象領域を設定し、前記演算対象領域の輝度の分布に基づいて該リング像の中心位置を算出し、該中心位置を用いて前記光源の位置を演算することを特徴とする位置演算方法。
【０００８】
＜１１＞  コンピュータに、
光源からの光でレンズの球面収差により形成した光のリング像の撮像画像を入力する手順と、
前記撮像画像に対して連結成分解析を行い、該連結成分解析により得られる前記撮像画像に含まれる複数の連結成分領域の中から該リング像に対応する連結成分領域を検出するとともに、前記撮像画像において該リング像に対応する連結成分領域を含む演算対象領域を設定し、前記演算対象領域の輝度分布に基づいて該リング像の中心位置を算出し、該中心位置を用いて前記光源の位置を演算する手順
を実行させるための位置演算プログラム。
【発明の効果】
【０００９】
請求項１に係る位置演算システムによれば、本発明を利用しない場合に比べて、光源からの光でレンズの球面収差により形成される光のリング像の大きさにかかわらず、リング像の中心位置を算出することができる。
請求項２に係る位置演算システムによれば、二値化することによって、二値化しない場合に比べて画像が単純化されるため、演算のためのアルゴリズムも単純化できる。
請求項３に係る位置演算システムによれば、本発明を用いない場合に比べて、リング像を含む領域全体の画素数のバランスを考慮した上でしきい値が設定でき、リング像の輝度が十分でない場合であっても、リング像の中心位置を算出することができる。
請求項４に係る位置演算システムによれば、本発明を用いない場合に比べて、リング像を含む領域全体の輝度値の大きさを考慮した上でしきい値が設定でき、リング像の輝度が十分でない場合であっても、リング像の中心位置を算出することができる。
請求項５に係る位置演算システムによれば、二値化した場合、極大を示す２つの輝度値のうち高輝度側がリング像に対応するため、リング像を含む領域をより適切に検出することができる。
請求項６に係る位置演算システムによれば、予め解像度が低い画像について解析するため、処理が早くなる。
請求項７に係る位置演算システムによれば、本発明を適用しない場合に比べて、リング像を含む領域として不要な情報を少なくすることができる。
【００１０】
請求項８に係る位置演算装置によれば、本発明を利用しない場合に比べて、光源からの光でレンズの球面収差により形成される光のリング像の大きさにかかわらず、リング像の中心位置を安定して算出することができる。
請求項９に係る位置演算装置によれば、予め解像度が低い画像について解析するため、処理が早くなる。
【００１１】
請求項１０に係る位置演算方法によれば、本発明を利用しない場合に比べて、光源からの光でレンズの球面収差により形成される光のリング像の大きさにかかわらず、リング像の中心位置を安定して算出することができる。
【００１２】
請求項１１に係る位置演算プログラムによれば、本発明を利用しない場合に比べて、光源からの光でレンズの球面収差により形成される光のリング像の大きさにかかわらず、リング像の中心位置を安定して算出することができる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の実施例を図面にしたがって説明する。
図１は本発明に係る位置演算システムの一実施例を示す図で、（ａ）はシステム構成図、（ｂ）は撮像された光のリング像の概念図ある。図１（ａ）に示すように、本位置演算システムは、互いの位置関係が判明している４個のＬＥＤ光源１〜４と、光源からの光を透過して球面収差により光のリング像１１を形成するレンズ１２と、リング像１１を撮像する撮像素子としてのイメージセンサ１３と、イメージセンサ１３による撮像画像（元画像）に対して連結成分解析を行い、撮像画像に含まれる複数の連結成分領域の中からリング像１１に対応する連結成分領域を検出するとともに、撮像画像においてリング像１１に対応する連結成分領域を含む演算対象領域を設定し、演算対象領域の輝度の分布（以下、単に「輝度分布」と記す）に基づいてそれぞれのリング像１１の中心位置を算出し、その中心位置を用いて光源位置（３次元座標）を演算する演算装置１４とを備える。
【００１４】
本例では、ＬＥＤ光源１〜４はそれぞれ発光波長が例えば９００ｎｍであり、同一平面上に存在し、矩形部材としてのカード５の４つの頂点位置に配置される。カード５は、例えば一辺の長さ５〜１０ｃｍの正方形であるが、長方形でもよい。ＬＥＤ光源１〜４は、カード５に搭載した図示しない発光制御装置により発光が制御される。
【００１５】
光源１〜４の位置Ｍ１〜Ｍ４は、図示のようにカード上における座標系（以下、マーカー座標系と記載する）（Ｘｍ，Ｙｍ，Ｚｍ）の原点をｐ０として、それぞれ（Ｘｍ１，Ｙｍ１，Ｚｍ１）、（Ｘｍ２，Ｙｍ２，Ｚｍ２）、（Ｘｍ３，Ｙｍ３，Ｚｍ３）、（Ｘｍ４，Ｙｍ４，Ｚｍ４）で示される。レンズ１２は、図示のように、球面側を向かい合わせに配置した２つの半球レンズを備えるが、これに限定されることなく、例えば１つの半球レンズで構成することもでき、またこれ以外のレンズを用いてもよい。このように本願における「レンズ」は１つまたは複数の光学レンズを含むものとして用いられる。イメージセンサ１３はＣＣＤやＣＭＯＳ等で構成することができる。カメラ１０は、レンズ１２とイメージセンサ１３を含んで構成される。カメラ座標系は図示のように（Ｘｃ，Ｙｃ，Ｚｃ）、センサ座標系は（ｕ，ｖ）で示される。演算装置１４は、例えばパソコン（ＰＣ）等のコンピュータを用いることができる。
【００１６】
カメラ１０は、見かけ上は通常のカメラと同じようであるが、レンズとイメージセンサの位置に工夫がある。レンズ１２には球面収差の大きなレンズとして、半径２２ｍｍの半球レンズ２個を互いに球面側を向かい合わせた構造のレンズを使用した。イメージセンサ１３はレンズ１２の焦点位置よりもレンズ側（光源側）に配置した。また、イメージセンサ１３には１２ｍｍ×１４ｍｍサイズのＣＭＯＳセンサ（１２８０画素×９６０画素）を使用した。イメージセンサ１３の前面には８５０ｎｍより長波長だけを透過するフィルター（図示しない）を設置した。このようにして、光源からの光でレンズ１２の球面収差により形成されたリング像１１をイメージセンサ１３で撮像する。撮像されたリング像は、図１（ｂ）に示すように、光源１〜４に対応して４つできる。次に光のリング像の形成原理について説明する。
【００１７】
図２は、レンズによる光のリング像の形成の様子を示す図であり、（ａ）、（ｂ）は球面側を向かい合わせに配置した２つの半球レンズを用いる場合、（ｃ）、（ｄ）は１つの半球レンズを用いる場合を示す。
【００１８】
２つの半球レンズを用いる場合、図２（ａ）に示すように、ＬＥＤ光源２０から発せられた光線は、球面側を向かい合わせに配置した２つの半球レンズ１２ａ，１２ｂを備えたレンズ１２によって集光され、イメージセンサ１３上に図２（ｂ）に示すような光のリング像１１を形成する。その原理は次のとおりである。図２（ａ）において、光源２０から放射された光は、図の光線の軌跡に示すように半球レンズ１２ａの第１面である平面に入射する。ここで光はスネルの法則に従って屈折する。次に光は半球レンズ１２ａの球面形状の第２面に到達し、屈折する。続いて光は半球レンズ１２ｂの球面形状の第１面に入射し、屈折する。さらに光は半球レンズ１２ｂの第２面である平面に到達し、屈折する。このようにして半球レンズ１２ａ，１２ｂを通過した光は、イメージセンサ１３上において、図２（ｂ）に示すような光密度が高い光集中領域であるリング像１１を形成する。リング像１１は例えば円形状または楕円形状を有する。
【００１９】
１つの半球レンズを用いる場合、図２（ｃ）に示すように、ＬＥＤ光源２０から発せられた光線は、１つの半球レンズ１２ｃを備えたレンズ１２によって集光され、イメージセンサ１３上に図２（ｄ）に示すような光のリング像１１を形成する。その原理は上記の場合と同様に次のとおりである。図２（ｃ）において、光源２０から放射された光は、図の光線の軌跡に示すように半球レンズ１２ｃの第１面である平面に入射する。ここで光はスネルの法則に従って屈折する。次に光は半球レンズ１２ｃの球面形状の第２面に到達し、屈折する。このようにして半球レンズ１２ｃを通過した光は、イメージセンサ１３上において、図２（ｄ）に示すような光密度が高い光集中領域であるリング像１１を形成する。
以上の原理の詳細は前述の特許文献１に記載のとおりである。
【００２０】
図３は、リング像の撮像画像から光源の位置（３次元座標）を演算するための方法の一例を示すフロー図である。本例では、図１の演算装置１４において、イメージセンサ１３による撮像画像（元画像）に対して連結成分解析を行い、撮像画像に含まれる複数の連結成分領域の中からリング像１１に対応する連結成分領域を検出するとともに、撮像画像においてリング像１１に対応する連結成分領域を含む演算対象領域を設定し、演算対象領域の輝度分布に基づいてそれぞれのリング像１１の中心位置を算出し、その中心位置を用いてそれぞれの光源の３次元座標を演算する。まず、図示のように、ステップ３１にて、イメージセンサ１３で撮像した元画像を入力する。本例においては、撮像画像は、演算処理に適するように、所定単位面積の単位画素を２次元状に配置して表現した、画素マトリックス画像として表現されている。次に、ステップ３２にて、この元画像に対して連結成分解析を行い、連結されている成分を解析する。
【００２１】
連結成分解析（connected component analysis）は、画像の中の同じクラスの画素からなるクラスタを識別する方法として知られている。具体的には、隣接するデータ要素を解析し、それが連結成分の一部を構成しているか否かを判定し、さらにセグメント化する場合も含む。例えば本願の光のリング像のように囲みを形成している画素はすべて連結されており、したがって連結成分を構成していると判定する。本例において、連結成分解析は例えば次のようにして行われる。まず、画像をあるしきい値で二値化し、１と０の白黒画像にする。画像の左上から横方向（右）に各画素の輝度（白黒）値をスキャンし、１の値を持つピクセルに対し番号を割り当てていく。１行が終わると次の行に移動し、同様に左から右方向にスキャンする。画素に番号を割り付ける場合に、その画素の左と上の値を参照し、それらがある番号を持っている場合には、その番号を割り付ける。右下まで番号を割り付けた後、再度左上から横方向にスキャンし、各画素において、前後左右の画素の番号を参照し、異なる番号を有する場合には同一番号を付与し、その領域が統一された番号を持つようにする。これにより、画像の連続した白領域に同一番号を付与する。これにより連結されている成分が検出される。そして、撮像画像においてリング像１１に対応する連結成分領域を含む演算対象領域を設定する。。
【００２２】
この連結成分解析は段階的に行うことができ、例えば、所望する解像度より小さい解像度の画像（例えば元画像の縮小画像）に対して行う第１の連結成分解析と、第１の連結成分解析から得られた連結成分領域に対応する元画像領域に対して行う第２の連結成分解析とを含むことができる。ここで、第１の連結成分解析における縮小画像は元画像の数分の一画像（例えば１／４画像）とすることができる。
【００２３】
また、演算対象領域は、例えば図４（ａ）に示すようにリング像を含む最小矩形領域４１とすることができるが、これに限定されず、例えば図４（ｂ）に示すようにリング像外周の接線で構成される領域４２とすることができる。図４（ａ）、（ｂ）の例はリング像が３つの場合であるが、それ以外の数の場合も同様に適用可能である。
【００２４】
次に、図３に戻って、ステップ３３にて、演算対象領域を１つ選択する。そして、ステップ３４にて、この演算対象領域の輝度分布において各画素の輝度値を二値化し、リング像のエッジ点（二値化したときの境界位置）を抽出する。図５（ａ）、（ｂ）は、演算対象領域の各画素値を二値化する場合のしきい値の選び方を説明するための図である。まず、図５（ａ）は、横軸を輝度値（輝度レベル）、縦軸を画素数として作成した、最小矩形領域（演算対象領域）５１についての輝度分布（輝度ヒストグラム）を示す図である。図５（ｂ）は、横軸を画素位置、縦軸を輝度値として作成した、最小矩形領域（演算対象領域）５１についての輝度分布を示す図である。二値化のためのしきい値は、例えば図５（ａ）に示すように、演算対象領域の輝度分布（輝度ヒストグラム）において画素数の第１ピーク（極大）（高輝度側）および第２ピーク（極大）（低輝度側）の２つの輝度値の間の値とすることができる。また、このしきい値は、例えば図５（ｂ）に示すように、演算対象領域の画素の平均輝度値とすることができる。
【００２５】
続いて、ステップ３５にて、抽出したリング像のエッジ点に対しハフ変換を行うことによりリング像の中心位置を算出する。これを図６（ａ）、（ｂ）を用いて説明する。まず、ハフ変換による円パラメータを検出するため、図６（ａ）に示すように、円の最外周のエッジ点から３点（ｎ１，ｎ２，ｎ３）を選び、円中心（ｘ、ｙ）と半径ｒを計算する。その値をある値で割って、図６（ｂ）に示す投票空間ボックスＸ，Ｙ，Ｒを算出する。エッジ点３点から得られるＸ，Ｙ，Ｒがすでに存在している場合には、そこへの投票数に１を加える。同じＸ，Ｙ，Ｒが存在しない場合には図６（ｂ）のテーブルの末尾にＸ，Ｙ，Ｒを追加し、投票数に１を加える。最大投票数を獲得した円をその領域で検出される円パラメータとする。本例では、図６（ｂ）におけるリストＮｏ．２のＸ，Ｙ，Ｒが相当する。このようにしてリング像の中心位置を決定する。
エッジの３点（ｎ１、ｎ２、ｎ３）は、ｎ１、ｎ２、ｎ３がこの順に並んでいたとすると、弧ｎ１ｎ２がｍ以上、弧ｎ２ｎ３がｍ以上、弧ｎ１ｎ２ｎ３が３ｍ以下になるように選定することが好ましい。このような選定方法により、円を決定する上で、近すぎず遠すぎない適当な距離を持ったエッジ点３点を抽出することができる。これにより重なった円であっても各円を抽出でき、かつ適切な精度を得ることができる。
上記３点の１組から円中心位置と半径を計算し、その結果を図６（ｂ）のようなテーブル形式で表現された（Ｘ，Ｙ，Ｒ）の場所に投票する。その際、投票するボックスサイズを画素サイズそのものである（ｘ，ｙ，ｒ）とすると投票される数が少なくなり最多得票ボックスを決定することが難しくなる場合があるので、これを適当な大きなのボックスとするために、（ｘ，ｙ，ｒ）をボックスサイズで割り算した。この場合、Ｘ＝ｒｏｕｎｄ（ｘ／ｓｉｚｅＸ），Ｙ＝ｒｏｕｎｄ（ｙ／ｓｉｚｅＹ），Ｒ＝ｒｏｕｎｄ（ｒ／ｓｉｚｅＲ）である。これにより、最多得票数の値を容易に決定できるようになる。
【００２６】
リング像の中心位置の算出はハフ変換によるものに限定されない。例えば、演算対象領域の輝度分布において画素数がピークを示す高輝度側の輝度値に対応する画素位置からリング像の中心位置を計算することでもよい。
【００２７】
次に、ステップ３６にて、リング像を検出しない場合は後述のステップ３８に移行し、リング像を検出した場合は、ステップ３７にて、それを消去して前述のステップ３５に戻る。ステップ３８では、他の連結成分があるかどうかをみて、ある場合は前述のステップ３３に戻り、ない場合は次のステップ３９に移行する。ステップ３９では、上記で算出したリング像の中心位置を用いて光源の位置（３次元座標）を演算する。
【００２８】
光源の位置の演算方法は例えば次のようにして行われる。いま、図１（ａ）において、ＬＥＤ光源１〜４を搭載した一辺の長さａの正方形カード５について考える。図示のように、カード５はその中心ｐ０のマーカー座標系（Ｘｍ，Ｙｍ，Ｚｍ）で表され、この場合、光源１の位置Ｍ１（Ｘｍ１，Ｙｍ１，Ｚｍ１）、光源２の位置Ｍ２（Ｘｍ２，Ｙｍ２，Ｚｍ２）、光源３の位置Ｍ３（Ｘｍ３，Ｙｍ３，Ｚｍ３）、光源４の位置Ｍ４（Ｘｍ４，Ｙｍ４，Ｚｍ４）である。カメラ１０側をセンサ座標系（ｕ，ｖ）、カメラ座標系（Ｘｃ，Ｙｃ，Ｚｃ）で表す。カメラ座標における空間点（Ｘｃ，Ｙｃ，Ｚｃ）を次式（１）のように規格化射影する。
【００２９】
【数１】
2008224328.tif 000003
カメラのレンズ歪みの補正を加えると、次式（２）となる。
【００３０】
【数２】
2008224328.tif 000004
ここで、ｒ２＝ｕｎ２＋ｖｎ２、ｋｉ，ｌｉは係数である。カメラの内部パラメータから、実際に撮像される画像点のセンサ座標が次式（３）のように得られる。
【００３１】
【数３】
2008224328.tif 000005
マーカー座標とセンサ座標との関係は射影行列Ｐを用いて次式（４）となる。
【００３２】
【数４】
2008224328.tif 000006
上式において右辺は定数λ倍の不定性があるので、Ｐ３３＝１とおける。未知数は８個である。マーカー座標Ｘｍ，Ｙｍなどと、これに対応する画像点のセンサ座標（ｕ，ｖ）を代入すると光源１個につき、次式（５）が得られる。
【００３３】
【数５】
2008224328.tif 000007
光源４個から得た式を次式（６）のように変形すると、射影行列Ｐが求められる。
【００３４】
【数６】
2008224328.tif 000008
射影行列Ｐは次式（７）のようにカメラ内部行列と外部行列（回転Ｒ、並進ｔ）の積で表される。
【００３５】
【数７】
2008224328.tif 000009
【００３６】
式（６）からＰ１１〜Ｐ３２が求められる。これを式（７）に代入する。右辺第１項は既知なので、右辺第２項［Ｒ１  Ｒ２  Ｔ］が得られる。右辺第２項はカメラの外部行列で、ＬＥＤカードに対するカメラの回転角度と並進距離を表している。カメラ側から考えると、ＬＥＤカードの角度を位置を表しており、これから個々の光源の３次元位置を算出することができる。回転角度Ｒ１、Ｒ２と並進Ｔを求め、Ｒ３＝Ｒ１×Ｒ２から３つの回転角度を得る。回転と並進がＬＥＤカードの位置と角度を与える。さらに精度を上げるために、ＬＥＤカードの回転と並進の６自由度を変化させて、センサに射影される光源座標（ｕｐ，ｖｐ）を計算し、実際に得たリング像の中心位置（ｕｃ，ｖｃ）と最も近くなる位置を求める。これを最適解とする。例えば、次式（８）に示す誤差関数を最小にする最適解を求める。
【００３７】
【数８】
2008224328.tif 000010
【００３８】
なお、複数のＬＥＤ光源搭載のカードが複数存在し、画像入力時に多数のリング像が抽出される場合はリング像のグループ分けを行うことができる。この場合、各グループ内でリング像の番号付けを行い、リング像の番号と発光点の３次元位置関係の対応付をして、発光点カードの３次元位置と３軸角度を変化させてその画像の位置を算出し、実際に撮像したリング像の位置に最も近い３次元位置と３軸角度を求めることができる。
【００３９】
上述の方法はコンピュータプログラムとして提供することができる。すなわち、この位置演算プログラムは、コンピュータに、光源からの光でレンズの球面収差により形成した光のリング像の撮像画像を入力する手順と、前記撮像画像に対して連結成分解析を行い、該連結成分解析により得られる前記撮像画像に含まれる複数の連結成分領域の中から該リング像に対応する連結成分領域を検出するとともに、前記撮像画像において該リング像に対応する連結成分領域を含む演算対象領域を設定し、前記演算対象領域の輝度分布に基づいて該リング像の中心位置を算出し、該中心位置を用いて前記光源の位置を演算する手順を実行させるためのものである。また、この位置演算プログラムは、これを記録したコンピュータ読み取り可能な記録媒体として提供することもできる。
【図面の簡単な説明】
【００４０】
【図１】本発明に係る位置演算システムの一実施例を示す図で、（ａ）はシステム構成図、（ｂ）は撮像された光のリング像の概念図ある。
【図２】レンズによる光のリング像の形成の様子を示す図であり、（ａ）、（ｂ）は球面側を向かい合わせに配置した２つの半球レンズを用いる場合、（ｃ）、（ｄ）は１つの半球レンズを用いる場合を示す。
【図３】リング像の撮像画像から光源の位置（３次元座標）を演算するための方法の一例を示すフロー図である。
【図４】（ａ）、（ｂ）は、連結成分解析により検出する演算対象領域の構成例を示す図である。
【図５】（ａ）、（ｂ）は、演算対象領域を二値化する場合のしきい値の選び方を説明するための図である。
【図６】（ａ）、（ｂ）は、抽出したリング像のエッジ点に対し行うハフ変換を説明するための図である。
【符号の説明】
【００４１】
１〜４  光源
５  カード
１０  カメラ
１１  リング像
１２  レンズ
１３  イメージセンサ
１４  演算装置
【図１】
2008224328.tif 000011
【図２】
2008224328.tif 000012
【図３】
2008224328.tif 000013
【図４】
2008224328.tif 000014
【図５】
2008224328.tif 000015
【図６】
2008224328.tif 000016