(57)【要約】【課題】作業効率が高く、精度良く線状物体を検出し、曲がった線状物体にも適用でき、線状物体に対して良好な作業を行うことのできる物体検出方法を提供する。【解決手段】任意の空間中に配置された線状の物体を検出する物体検出方法であって、線状の物体に関する距離データを取得し、距離データを複数の微小領域に分割し、微小領域に分割された個々の前記距離データを平面に射影し、射影された個々の距離データを平面形状に近似し、近似して演算された個々の平面形状の中心点を接続して線状の物体の中心線を作成し、線状の物体の位置と姿勢を求めるようにする物体検出方法。【選択図】　　図１
2004005061.tif 000002
【特許請求の範囲】
【請求項１】
任意の空間中に配置された線状の物体を検出する物体検出方法であって、前記線状の物体に関する距離データを取得し、前記距離データを複数の微小領域に分割し、前記微小領域に分割された個々の前記距離データを平面に射影し、射影された個々の前記距離データを平面形状に近似し、近似して演算された個々の前記平面形状の中心点を接続して前記線状の物体の中心線を作成し、前記線状の物体の位置と姿勢を求めることを特徴とする物体検出方法。
【請求項２】
前記平面形状を、円または長方形とすることを特徴とする請求項１記載の物体検出方法。
【請求項３】
請求項１記載の前記微小領域に分割された個々の前記距離データを平面に射影する際に、前記微小領域に分割された個々の前記距離データの重心を演算し、前記個々の重心間のベクトルを演算し、前記個々の重心間のベクトルに垂直な平面に前記微小領域に分割された個々の前記距離データを射影することを特徴とする請求項１または２記載の物体検出方法。
【請求項４】
請求項１記載の前記距離データを複数の微小領域に分割する際に、前記線状の物体に関する距離データの主軸を演算し、前記主軸に垂直な複数の平面で前記線状の物体に関する距離データを分割することを特徴とする請求項１から３までのいずれか１つに記載の物体検出方法。
【請求項５】
請求項１記載の近似して演算された個々の前記平面形状の中心点を接続して前記線状の物体の中心線を作成する際に、前記線状の物体に関する距離データの端点を演算し、個々の前記平面形状の中心点と前記端点とを接続して前記線状の物体の中心線を作成することを特徴とする請求項１から４までのいずれか１つに記載の物体検出方法。
【請求項６】
請求項１記載の近似して演算された個々の前記平面形状の中心点を接続して前記線状の物体の中心線を作成した後に、前記中心線上での位置を人の指示により決定し、決定された前記位置における前記中心線上でのベクトルを演算して前記線状の物体の位置と姿勢を求めることを特徴とする請求項１から５までのいずれか１つに記載の物体検出方法。
【請求項７】
請求項６記載の前記中心線上での位置を決定する際に、前記中心線上付近の位置を人の指示により指定し、指定された前記位置と前記中心線との距離を演算して最短距離を取る前記中心線上の位置を求め、求められた前記中心線上の位置を前記線状の物体の位置とすることを特徴とする請求項１から６までのいずれか１つに記載の物体検出方法。
【請求項８】
請求項６記載の前記中心線上での位置を決定する際に、前記線状の物体の端点からの前記中心線上での距離を人の指示により、あるいは予め決められた前記距離で指定し、指定された前記距離をもとに前記端点からの前記中心線上の位置を求め、求められた前記中心線上の位置を前記線状の物体の位置とすることを特徴とする請求項１から７までのいずれか１つに記載の物体検出方法。
【請求項９】
請求項６記載の前記中心線上での位置を決定する際に、前記中心線の距離の総和に対する割合を人の指示により、あるいは予め決められた前記割合で指定し、前記中心線の距離の総和を演算し、前記割合と前記距離の総和とから前記線状の物体の端点からの前記中心線上での距離を決定し、決定された前記距離をもとに前記端点からの前記中心線上の位置を求め、求められた前記中心線上の位置を前記線状の物体の位置とすることを特徴とする請求項１から８までのいずれか１つに記載の物体検出方法。
【請求項１０】
請求項１記載の前記距離データを複数の微小領域に分割する際に、前記線状の物体を含む距離データのエッジを抽出し、前記エッジでない複数の領域に各々ラベルを付し（ラベリング処理）、前記ラベルの付された複数の領域から線状である領域を抽出して、前記線状である領域の距離データを複数の微小領域に分割することを特徴とする請求項１から９までのいずれか１つに記載の物体検出方法。
【請求項１１】
請求項１０記載の前記ラベルの付された複数の領域から線状である領域を抽出する際に、前記ラベルの付された複数の領域の内、比較的面積の小さい領域を削除し、残された領域から線状である領域を抽出することを特徴とする請求項１から１０までのいずれか１つに記載の物体検出方法。
【請求項１２】
請求項１０記載の前記ラベルの付された複数の領域から線状である領域を抽出する際に、前記ラベルの付された複数の領域の主軸と前記主軸に垂直な軸（非主軸）とを演算し、前記主軸方向の領域の大きさと前記主軸に垂直な軸方向の領域の大きさとから領域の線状程度（線状率）を演算し、前記線状率の大きい領域を線状領域とすることを特徴とする請求項１から１１までのいずれか１つに記載の物体検出方法。
【請求項１３】
請求項１０記載の前記線状の物体を含む距離データのエッジを抽出する際に、前記線状の物体を含む距離データから前記線状の物体より背景側または手前側の領域を削除し、削除された領域の距離データのエッジを抽出することを特徴とする請求項１から１２までのいずれか１つに記載の物体検出方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、任意の空間中に配置された物体、特に電線などの線状である物体を検出する方法に関する。
【０００２】
【従来の技術】
任意の空間中に配置された線状の物体を検出する方法として特開平９−２２５８８４「配電工事用マニピュレータの電線位置測定方法」がある。前記公報では、線状の物体である電線の位置を測定する方法が記載されている。前記公報の概略構成図を図１９に示す。図１９において、Ｊ０１は線状物体で、前記公報では電線に相当する。Ｊ０２は線状物体Ｊ０１の映像情報を取得する撮像装置であり、前記公報ではＴＶカメラ、レーザ投光器に相当する。Ｊ０３は画像処理装置で、撮像装置Ｊ０２からの映像情報を処理して線状物体Ｊ０１の位置と姿勢を演算する。
【０００３】
以下、図１９から図２１までを用いて、画像処理装置Ｊ０３内で行っている従来の技術を前記公報を例に２つ説明する。
【０００４】
図２０は従来の第１の技術を表すフローチャートであり、Ｋ０１からＫ０４まではそのフローチャートの各ステップである。第１の従来の技術では、撮像装置Ｊ０２はＴＶカメラ２台であり、２台のＴＶカメラから得られた画像を画像処理装置Ｊ０３で処理し、線状物体Ｊ０１の位置と姿勢を求める。ステップＫ０１では、ＴＶカメラから得られた画像内の電線上の１点を人により指示する。その点を中心とした線状物体Ｊ０１の一部を含む画像を基準パターンとして作成する。ステップＫ０２では、ステップＫ０１で指示した点の位置の左右で基準パターンを利用した相関演算を行い、相関の高い位置を求める。ステップＫ０２の処理内容を繰り返し、相関の高い位置を多数集める。ステップＫ０３では、ステップＫ０２で集められた多数の相関の高い位置から最小自乗法によって直線の方程式を算出する。ステップＫ０４では、求められた直線の方程式を出力し、線状物体Ｊ０１の位置と姿勢とする。
【０００５】
図２１は従来の第２の技術を表すフローチャートであり、Ｌ０１からＬ０５まではそのフローチャートの各ステップである。第２の従来の技術では、撮像装置Ｊ０２はＴＶカメラ２台とレーザ投光器３台であり、２台のＴＶカメラから得られた画像から画像処理装置Ｊ０３で、レーザ光反射位置を抽出しその反射位置から三角測量の原理を用いて線状物体Ｊ０１の位置と姿勢を求める。ステップＬ０１では、３台のレーザ投光器を点滅させてレーザ光を線状物体Ｊ０１に照射し、この画像をＴＶカメラにより画像処理装置Ｊ０３に入力する。レーザ光を照射している時の画像とレーザ光を照射していない時の画像の差を取り、この差画像を積算する（差画像積算方式）。この処理を繰り返すことにより線状物体Ｊ０１に照射している３つのレーザ光のみが画像上で抽出される。ステップＬ０２では、レンズ歪を補正する処理を行う。ＴＶカメラに広角のレンズを利用している場合には、取得される画像が歪むため、抽出された３つのレーザ光の位置精度を向上させるために行う処理である。ステップＬ０３では、３つのレーザ光が抽出され、レンズ歪みが補正された２つの画像から三角測量の原理を用いて３次元の３点位置を算出する。ステップＬ０４では、ステップＬ０３で算出された３点の位置から３次元の直線の方程式を算出する。ステップＬ０５では、求められた直線の方程式を出力し、線状物体Ｊ０１の位置と姿勢とする。
【０００６】
【発明が解決しようとする課題】
従来の第１の技術では、ステップＫ０１で画像内の電線上の１点を人により指示するが、この指示に厳密さを欠いた場合、基準パターンが正しく作成されず、ステップＫ０２で行う相関演算の結果、線状物体Ｊ０１とは異なる位置を集めてしまうことになる。その結果、ステップＫ０３で算出する直線の方程式が線状物体Ｊ０１とは異なるものとなる。従って、ステップＫ０１で行う人による指示は、厳密に行う必要があり、手間を要して作業効率が悪いという問題がある。また、ステップＫ０２では線状物体の一部を含む画像を基準パターンとして相関演算を行うが、画像上で線状物体以外に、基準パターンと似た濃度分布が存在する場合には、線状物体Ｊ０１とは異なる位置を集める場合がある。この場合、ステップＫ０３で算出する直線の方程式が線状物体Ｊ０１とは異なるものとなる、あるいは、算出する直線の方程式の精度が低くなる。従って、ステップＫ０２で行う相関演算では、求める線状物体Ｊ０１の位置と姿勢が異なってしまう、あるいは、位置と姿勢の精度が低くなってしまうという問題がある。
【０００７】
従来の第１と第２の技術では、ステップＫ０３とステップＬ０４で線状物体Ｊ０１の位置と姿勢を直線の方程式としている。一般に電線等の線状物体Ｊ０１は剛体でないため厳密には直線状でない。例えば、切断した電線をロボットのグリッパで把持する作業を想定すると、切断した電線は曲がって下方に垂れるため、直線に近似した場合には、良好な把持を実施することが困難となる。従って、ステップＫ０３とステップＬ０４で行う線状物体Ｊ０１の直線近似は、曲がった線状物体Ｊ０１には対応できないという問題がある。また、ステップＫ０３とステップＬ０４で線状物体Ｊ０１の直線の方程式を求めているが、これは、線状物体Ｊ０１表面のものである。例えば、電線をロボットのグリッパで把持する作業を想定すると、電線表面の位置ではなく電線の中心の位置が求まっていなければ良好な把持を実施することが困難となる。従って、ステップＫ０３とステップＬ０４で行う線状物体Ｊ０１の直線近似は、線状物体Ｊ０１の中心線を求めることができず、線状物体Ｊ０１に対して良好な作業が行えないという問題がある。
【０００８】
そこで、本発明は、これらの問題を解決するため、作業効率が高く、精度良く線状物体を検出し、曲がった線状物体にも適用でき、線状物体に対して良好な作業を行うことのできる物体検出方法を提供することを目的とする。
【０００９】
【課題を解決するための手段】
上記問題を解決するため、本発明の請求項１記載の物体検出方法は、任意の空間中に配置された線状の物体を検出する物体検出方法であって、前記線状の物体に関する距離データを取得し、前記距離データを複数の微小領域に分割し、前記微小領域に分割された個々の前記距離データを平面に射影し、射影された個々の前記距離データを平面形状に近似し、近似して演算された個々の前記平面形状の中心点を接続して前記線状の物体の中心線を作成し、前記線状の物体の位置と姿勢を求めるようにするものである。
【００１０】
本発明の請求項２記載の物体検出方法は、前記平面形状を、円または長方形とするようにするものである。
【００１１】
これら請求項１及び２記載の物体検出方法によれば、線状の物体の中心線を自動で求めることができるので、人によって指示する必要がなく、手間が省けて作業効率を向上させることができるという効果がある。また、従来の技術とは異なり、線状の物体の中心線を求めるので、線状の物体の位置と姿勢を高精度に求めることができ、曲がった線状の物体にも対応できるという効果がある。また、その結果、線状の物体に対する作業を良好に行うことができるという効果がある。
【００１２】
本発明の請求項３記載の物体検出方法は、請求項１記載の前記微小領域に分割された個々の前記距離データを平面に射影する際に、前記微小領域に分割された個々の前記距離データの重心を演算し、前記個々の重心間のベクトルを演算し、前記個々の重心間のベクトルに垂直な平面に前記微小領域に分割された個々の前記距離データを射影するようにするものである。
【００１３】
この請求項３記載の物体検出方法によれば、線状の物体の方向に対して垂直な平面に微小領域の距離データを射影することができ、射影した距離データの広がりを小さくすることができる。その結果、平面形状近似（円近似）、中心点の接続で求めた線状の物体の中心線を正確に求めることができるという効果がある。
【００１４】
本発明の請求項４記載の物体検出方法は、請求項１記載の前記距離データを複数の微小領域に分割する際に、前記線状の物体に関する距離データの主軸を演算し、前記主軸に垂直な複数の平面で前記線状の物体に関する距離データを分割するようにするものである。
【００１５】
この請求項４記載の物体検出方法によれば、分割に用いる平面を予め決める必要がなく、自動的に求めることができる。その結果、手間が省けて作業効率を向上させることができるという効果がある。
【００１６】
本発明の請求項５記載の物体検出方法は、請求項１記載の近似して演算された個々の前記平面形状の中心点を接続して前記線状の物体の中心線を作成する際に、前記線状の物体に関する距離データの端点を演算し、個々の前記平面形状の中心点と前記端点とを接続して前記線状の物体の中心線を作成するようにするものである。
【００１７】
この請求項５記載の物体検出方法によれば、線状の物体の端点を演算するため、切断された線状の物体にも対応できるという効果がある。
【００１８】
本発明の請求項６記載の物体検出方法は、請求項１記載の近似して演算された個々の前記平面形状の中心点を接続して前記線状の物体の中心線を作成した後に、前記中心線上での位置を人の指示により決定し、決定された前記位置における前記中心線上でのベクトルを演算して前記線状の物体の位置と姿勢を求めるようにするものである。
【００１９】
この請求項６記載の物体検出方法によれば、線状の物体の位置と姿勢として中心線上の位置と中心線上の位置でのベクトルを求めるため、線状の物体を把持させる等の作業を実行することができるという効果がある。
【００２０】
本発明の請求項７記載の物体検出方法は、請求項６記載の前記中心線上での位置を決定する際に、前記中心線上付近の位置を人の指示により指定し、指定された前記位置と前記中心線との距離を演算して最短距離を取る前記中心線上の位置を求め、求められた前記中心線上の位置を前記線状の物体の位置とするようにするものである。
【００２１】
この請求項７記載の物体検出方法によれば、中心線上の位置の指定がラフで済み、手間が省けて作業効率を向上させることができるという効果がある。
【００２２】
本発明の請求項８記載の物体検出方法は、請求項６記載の前記中心線上での位置を決定する際に、前記線状の物体の端点からの前記中心線上での距離を人の指示により、あるいは予め決められた前記距離で指定し、指定された前記距離をもとに前記端点からの前記中心線上の位置を求め、求められた前記中心線上の位置を前記線状の物体の位置とするようにするものである。
【００２３】
この請求項８記載の物体検出方法によれば、中心線上の位置の指示が不要であり、手間が省けて作業効率を向上させることができるという効果がある。また、線状の物体の端点あるいは画面上の端からの距離を定量的に指定することができるので、正確に中心線上の位置を決定することができるという効果がある。
【００２４】
本発明の請求項９記載の物体検出方法は、請求項６記載の前記中心線上での位置を決定する際に、前記中心線の距離の総和に対する割合を人の指示により、あるいは予め決められた前記割合で指定し、前記中心線の距離の総和を演算し、前記割合と前記距離の総和とから前記線状の物体の端点からの前記中心線上での距離を決定し、決定された前記距離をもとに前記端点からの前記中心線上の位置を求め、求められた前記中心線上の位置を前記線状の物体の位置とするようにするものである。
【００２５】
この請求項９記載の物体検出方法によれば、中心線上の位置の指示が不要であり、手間が省けて作業効率を向上させることができるという効果がある。また、線状の物体の端点あるいは画面上の端からの割合を定量的に指定することができるので、正確に中心線上の位置を決定することができるという効果がある。
【００２６】
本発明の請求項１０記載の物体検出方法は、請求項１記載の前記距離データを複数の微小領域に分割する際に、前記線状の物体を含む距離データのエッジを抽出し、前記エッジでない複数の領域に各々ラベルを付し（ラベリング処理）、前記ラベルの付された複数の領域から線状である領域を抽出して、前記線状である領域の距離データを複数の微小領域に分割するようにするものである。
【００２７】
この請求項１０記載の物体検出方法によれば、線状の物体の距離データ以外の距離データが存在する場合でも線状の物体の距離データだけを抽出することができ、結果として、より多くのケースで適用することができるという効果がある。
【００２８】
本発明の請求項１１記載の物体検出方法は、請求項１０記載の前記ラベルの付された複数の領域から線状である領域を抽出する際に、前記ラベルの付された複数の領域の内、比較的面積の小さい領域を削除し、残された領域から線状である領域を抽出するようにするものである。
【００２９】
この請求項１１記載の物体検出方法によれば、線状の割合が高く、比較的小さい領域が存在する場合でも線状の物体の距離データだけを抽出することができ、結果として、より多くのケースで適用することができるという効果がある。
【００３０】
本発明の請求項１２記載の物体検出方法は、請求項１０記載の前記ラベルの付された複数の領域から線状である領域を抽出する際に、前記ラベルの付された複数の領域の主軸と前記主軸に垂直な軸（非主軸）とを演算し、前記主軸方向の領域の大きさと前記主軸に垂直な軸方向の領域の大きさとから領域の線状程度（線状率）を演算し、前記線状率の大きい領域を線状領域とするようにするものである。
【００３１】
この請求項１２記載の物体検出方法によれば、線状であるか否かの判定が正確に行え、より正確に線状の物体の距離データだけを抽出することができ、結果として、より多くのケースで適用することができるという効果がある。
【００３２】
本発明の請求項１３記載の物体検出方法は、請求項１０記載の前記線状の物体を含む距離データのエッジを抽出する際に、前記線状の物体を含む距離データから前記線状の物体より背景側または手前側の領域を削除し、削除された領域の距離データのエッジを抽出するようにするものである。
【００３３】
この請求項１３記載の物体検出方法によれば、線状の物体の距離データの抽出をより正確に行うことができ、結果として、より多くのケースで適用することができるという効果がある。
【００３４】
【発明の実施の形態】
本発明の物体検出方法に関する実施の形態について図を用いて説明する。本発明は、発明が解決しようとする課題でも述べたとおり、作業効率が高く、精度良く線状物体を検出し、曲がった線状物体にも適用でき、線状物体に対して良好な作業を行うことのできる物体検出方法を提供することを目的としているが、求める情報は線状物体の位置と姿勢である。
【００３５】
図１３に線状物体のモデル図を示す。図１３において、Ｄ０１が線状物体Ｊ０１の中心線であり、これが線状物体Ｊ０１の位置と姿勢を表す。また、Ｄ０２が中心線Ｄ０１上の位置、Ｄ０３が中心線上の位置Ｄ０２でのベクトルで、それぞれ、線状物体Ｊ０１の指定した位置、指定した箇所での姿勢に相当する。線状物体Ｊ０１を、例えばロボットのグリッパで把持する作業を想定すると、把持位置とその位置における姿勢が必要となる。その位置と姿勢とが、それぞれ、中心線上の位置Ｄ０２と中心線上の位置でのベクトルＤ０３とに相当する。すなわち、本発明で求める情報は、中心線Ｄ０１と、中心線上の位置Ｄ０２と中心線上の位置でのベクトルＤ０３となる。図１３に示すように、本発明の実施の形態では、線状物体Ｊ０１として断面形状が円であるものを扱う。但し、本発明はこれに限るものではなく、断面形状が長方形等であるものを対象としても良い。
【００３６】
また、本発明の物体検出方法に関する実施の形態における概略構成は、図１９を用いて説明した従来の技術と同様である。但し、本発明の実施の形態の場合、撮像装置Ｊ０２は距離計測装置となる。距離計測装置は、線状物体Ｊ０１に関する距離データ（一般には距離画像とも呼ぶ）を取得する。距離計測装置は、一般に市販されているレーザレンジファインダを利用しても良いし、ＴＶカメラを複数個利用して両眼立体視を行う広く知られた手法を用いた構成にしても良い。本発明の実施の形態では、撮像装置Ｊ０２である距離計測装置から線状物体Ｊ０１を含む距離データを取得し、この距離データを画像処理装置Ｊ０３にて処理し、線状物体Ｊ０１の中心線Ｄ０１と、中心線上の位置Ｄ０２と中心線上の位置でのベクトルＤ０３を出力することとなる。
【００３７】
以下、画像処理装置Ｊ０３内で行っている本発明の実施の形態を、図を用いて説明する。
【００３８】
（１）第１の実施の形態
本発明の第１の実施の形態の物体検出方法について、図１、図１３、図１４、図１６、図１７を用いて説明する。本実施の形態は、請求項１及び２記載の例に相当する。図１は本発明の第１の実施の形態を表すフローチャートであり、（ａ）が請求項１に関するフローチャート、（ｂ）が請求項２に関するフローチャートである。１０１から１０６まではそれらフローチャートの各ステップである。
【００３９】
ステップ１０１では、線状物体Ｊ０１に関する距離データを取得する。距離データは例えば、図１４に示すようになる。図１４において、Ｅ０１は線状物体Ｊ０１の距離データであり、各点がＸＹＺ座標値を持っている。この座標値は、ここでは座標系Ｅ０２に基づいているものとする。座標系Ｅ０２は、図１４の紙面右方向をＸ軸、上方向をＹ軸、手前方向をＺ軸とする。
【００４０】
ステップ１０２では、線状物体の距離データＥ０１を複数の微小領域に分割する。この分割には、例えば、ＹＺ平面に平行な平面を複数用いる。例えば、Ｘ値の異なるＹＺ平面に平行な平面を９つ利用した場合、線状物体の距離データＥ０１は１０個の微小領域に分割される。
【００４１】
ステップ１０３では、ステップ１０２で分割に利用した平面に微小領域の距離データを射影する。この場合、微小領域の数より平面の数が１つ少ないので、射影用に１つ余分に準備すれば良い。射影には、例えば、ＸＹＺ座標値を持つ線状物体の距離データＥ０１のＸ座標値を無視する方法を用いる。射影した距離データは例えば、図１６に示すようになる。図１６において、Ｇ０１はある微小領域の距離データを、ある１つの平面に射影した距離データである。線状物体Ｊ０１の断面形状が円であるものを対象としているが、一般にレーザレンジファインダ等の撮像装置Ｊ０２で取得した距離データは誤差を含むので、図１６に示すようにぴったり円周上にデータが分布することはまずない。
【００４２】
ステップ１０４では、射影距離データＧ０１を平面形状に近似する。平面形状を円とした時、本発明の請求項２に関するフローチャート（ｂ）のステップ１０６を用いる。ステップ１０６の円近似には、例えば、最小自乗法を用いて円をフィッティングさせる方法を用いる。円近似の様子を図１７に示す。図１７において、Ｈ０１は射影距離データＧ０１を近似した円であり、Ｈ０２はその円の中心点である。
【００４３】
ステップ１０５では、複数の円の中心点Ｈ０２を接続する。これによって図１３に示す線状物体Ｊ０１の中心線Ｄ０１を求めることができ、これが線状物体Ｊ０１の位置と姿勢となる。
【００４４】
以上説明したように、本発明の第１の実施の形態（請求項１及び２記載の例）は、線状物体の距離データＥ０１を複数の微小領域に分割し、微小領域の距離データを平面に射影し、射影距離データＧ０１を平面形状（円）に近似し、平面形状の中心点（円の中心点Ｈ０２）を求め、平面形状の中心点（円の中心点Ｈ０２）を接続して線状物体Ｊ０１の中心線Ｄ０１を自動で求めることができるので、人によって指示する必要がなく、手間が省けて作業効率を向上させることができるという効果がある。また、従来の第１の技術で行う相関演算を用いずに線状物体Ｊ０１の中心線Ｄ０１を求めるので、線状物体Ｊ０１の位置と姿勢を高精度に求めることができるという効果がある。
【００４５】
また、従来の第１と第２の技術で行う直線近似を用いず線状物体Ｊ０１の中心線Ｄ０１を求めるので、曲がった線状物体Ｊ０１にも対応できるという効果がある。また、従来の第１と第２の技術では線状物体Ｊ０１表面の位置と姿勢を求めているが、本発明の第１の実施の形態は線状物体Ｊ０１の中心線Ｄ０１を求めるので、線状物体Ｊ０１の位置と姿勢を高精度に求めることができ、線状物体Ｊ０１に対する作業を良好に行うことができるという効果がある。
【００４６】
なお、本実施の形態では、ステップ１０２で、ＹＺ平面に平行な平面を用いて線状物体の距離データＥ０１を微小領域に分割したが、本発明はこれに限るものではなく、例えば、線状物体Ｊ０１が鉛直方向に配置されていた場合にはＸＺ平面に平行な平面を用いても良い。
【００４７】
（２）第２の実施の形態
本発明の第２の実施の形態の物体検出方法について、図２、図１３、図１４、図１６、図１７を用いて説明する。本実施の形態は、請求項３記載の例に相当する。図２は本発明の第２の実施の形態を表すフローチャートであり、２０１から２０２まではそのフローチャートの各ステップである。なお、前出の図を用いて説明した構成要素については、同一の符号を付して説明を割愛する。
【００４８】
本実施の形態と第１の実施の形態との相違は、ステップ２０１とステップ２０２とが加わっている点である。ステップ２０１の前段までは、ステップ１０１とステップ１０２によって線状物体の距離データＥ０１が複数の微小領域に分割されている。
【００４９】
ステップ２０１では、微小領域の距離データの重心を演算する。重心の演算には、例えば、距離データの各座標値の総和を個数で割る方法を用いる。
【００５０】
ステップ２０２では、演算された個々の重心間のベクトルを演算し、ベクトルに垂直な平面を求める。
【００５１】
ステップ１０３では、求めた平面に微小領域の距離データを射影する。以後のステップは第１の実施の形態で説明した内容と同じである。
【００５２】
先に説明した第１の実施の形態では、ステップ１０３でＹＺ平面に平行な平面に微小領域の距離データを射影した。この時、線状物体Ｊ０１がＹＺ平面に平行な平面に対して垂直な方向にないと、図１６に示す射影距離データＧ０１が広がりのあるものとなってしまう。従って、ステップ１０６で行う円近似に誤差が生じ、ステップ１０５で求める、円の中心点Ｈ０２を接続した線状物体Ｊ０１の中心線Ｄ０１に誤差を含むことになる。一方、本実施の形態は、ステップ２０１で微小領域の距離データの重心を演算し、ステップ２０２で個々の重心間のベクトルを求め、ステップ１０３ではそのベクトルに垂直な平面に微小領域の距離データを射影するため、線状物体Ｊ０１の方向に対して垂直な平面に微小領域の距離データを射影することができ、図１６に示す射影距離データＧ０１の広がりを極めて小さくすることができる。従って、ステップ１０６、ステップ１０５で求める線状物体Ｊ０１の中心線Ｄ０１の誤差を極めて小さくすることができる。
【００５３】
以上説明したように、本発明の第２の実施の形態（請求項３記載の例）は、微小領域の距離データの重心を演算し、個々の重心間のベクトルを演算し、そのベクトルに垂直な平面に微小領域の距離データを射影するため、線状物体Ｊ０１の方向に対して垂直な平面に微小領域の距離データを射影することができ、射影距離データＧ０１の広がりを小さくすることができる。その結果、平面形状近似（円近似）、中心点Ｈ０２の接続で求めた、線状物体Ｊ０１の中心線Ｄ０１を正確に求めることができるという効果がある。
【００５４】
（３）第３の実施の形態
本発明の第３の実施の形態の物体検出方法について、図３、図１４を用いて説明する。本実施の形態は、請求項４記載の例に相当する。図３は本発明の第３の実施の形態を表すフローチャートであり、３０１はそのフローチャートのステップである。なお、前出の図を用いて説明した構成要素については、同一の符号を付して説明を割愛する。
【００５５】
本実施の形態と第２の実施の形態との相違は、ステップ３０１が加わっている点である。ステップ３０１の前段までは、ステップ１０１によって線状物体Ｊ０１に関する距離データが取得されている。
【００５６】
ステップ３０１では、線状物体の距離データＥ０１の主軸を求める。主軸の演算には、例えば、線状物体の距離データＥ０１のＺ座標値を無視し、ＸＹ平面上で直線の方程式を仮定し、線状物体の距離データＥ０１と直線との距離の総和が最小になる直線の方程式を最小自乗法によって求め、その直線を主軸とする方法を用いる。
【００５７】
ステップ１０２では、求めた主軸に垂直な平面を複数用いて、線状物体の距離データＥ０１を複数の微小領域に分割する。以後のステップは第２の実施の形態で説明した内容と同じである。
【００５８】
先に説明した第１及び第２の実施の形態では、ステップ１０２で行う線状物体の距離データＥ０１の微小領域への分割では、ＹＺ平面に平行な平面を用いた。この時、線状物体の距離データＥ０１の分割に用いる平面を、ＹＺ平面やＸＺ平面に平行と言ったように決める必要があった。一方、本実施の形態は、ステップ３０１で線状物体の距離データＥ０１の主軸を求め、ステップ１０２でその主軸に垂直な平面を複数用いて線状物体の距離データＥ０１を複数の微小領域に分割するため、分割に用いる平面を予め決める必要がなく、自動的に求めることができる。
【００５９】
以上説明したように、本発明の第３の実施の形態（請求項４記載の例）は、線状物体の距離データＥ０１の主軸を演算し、その主軸に垂直な平面を複数用いて線状物体の距離データＥ０１を複数の微小領域に分割するため、分割に用いる平面を予め決める必要がなく、自動的に求めることができる。その結果、手間が省けて作業効率を向上させることができるという効果がある。
【００６０】
（４）第４の実施の形態
本発明の第４の実施の形態の物体検出方法について、図４、図１３、図１４、図１６から図１８までを用いて説明する。本実施の形態は、請求項５記載の例に相当する。図４は本発明の第４の実施の形態を表すフローチャートであり、４０１はそのフローチャートのステップである。なお、前出の図を用いて説明した構成要素については、同一の符号を付して説明を割愛する。
【００６１】
本実施の形態と第３の実施の形態との相違は、ステップ４０１が加わっている点である。ステップ４０１の前段までは、ステップ１０１からステップ１０６までによって射影距離データＧ０１が近似円Ｈ０１に近似され、円の中心点Ｈ０２が複数求められている。
【００６２】
ステップ４０１では、線状物体Ｊ０１の端点の位置を求める。端点の位置を求める方法を図１８を用いて説明する。なお、前出の図を用いて説明した構成要素については、同一の符号を付して説明を割愛する。図１８では、線状物体Ｊ０１が切断されている状態での左端を表示している。ステップ４０１の前段までは、円の中心点Ｈ０２が求められており、これが、図１８ではＩ０２の第１の中心点、Ｉ０３の第２の中心点に相当する。ここで求めたいのは、Ｉ０１の線状物体Ｊ０１の端点（Ｐｔ）である。第１の中心点と第２の中心点の位置ベクトルをそれぞれＧ１、Ｇ２とする。Ｉ０４はＧ１−Ｇ２を正規化したベクトルでＶ２とする。線状物体の距離データＥ０１の内、第１の中心点Ｉ０２より端点Ｉ０１側にある距離データｉがＩ０５でありＰｉとする（ｉは１〜ｎ：ｎは第１の中心点Ｉ０２より端点Ｉ０１側にある距離データの個数）。端点Ｉ０１を求めるためにまず、次式の演算を行う。
【００６３】
Ｌｉ＝Ｖ２・（Ｐｉ−Ｇ１）
ここで・は内積を表す。次に第１の中心点Ｉ０２より端点Ｉ０１側にある距離データの個数分上記の式の演算を行い、Ｌｉの最大値を求めこれをＬｍａｘとする。そして次式を演算し、端点Ｉ０１とする。
【００６４】
Ｐｔ＝Ｇ１＋ＬｍａｘＶ２
ステップ１０５では、ステップ１０６で求めた円の中心点Ｈ０２と、ステップ４０１で求めた端点Ｉ０１を接続し、それを中心線Ｄ０１とする。先に説明した第１から第３までの実施の形態では、ステップ１０５で行う円の中心点Ｈ０２の接続は端点Ｉ０１を含んでいなかった。従って、線状物体Ｊ０１が切断されていてその端点Ｉ０１を求めたい場合に対応できなかった。一方、本実施の形態は、ステップ４０１で線状物体Ｊ０１の端点Ｉ０１を求めるため、線状物体Ｊ０１が切断されていても対応することができる。
【００６５】
以上説明したように、本発明の第４の実施の形態（請求項５記載の例）は、線状物体Ｊ０１の端点Ｉ０１を演算するため、切断された線状物体Ｊ０１にも対応できるという効果がある。
【００６６】
（５）第５の実施の形態
本発明の第５の実施の形態の物体検出方法について、図５、図１３、図１７を用いて説明する。本実施の形態は、請求項６記載の例に相当する。図５は本発明の第５の実施の形態を表すフローチャートであり、５０１から５０２まではそのフローチャートの各ステップである。なお、前出の図を用いて説明した構成要素については、同一の符号を付して説明を割愛する。
【００６７】
本実施の形態と第４の実施の形態との相違は、ステップ５０１とステップ５０２とが加わっている点である。ステップ５０１の前段までは、ステップ１０１からステップ１０５までによって線状物体Ｊ０１の中心線Ｄ０１が求められている。
【００６８】
ステップ５０１では、図１３の中心線上の位置Ｄ０２を決める。中心線上の位置Ｄ０２は、例えば、人が指示して決める方法を用いる。ステップ５０２では、決められた中心線上の位置Ｄ０２を用いて中心線上の位置でのベクトルＤ０３を求める。このベクトルは、例えば、中心線上の位置Ｄ０２付近の中心線Ｄ０１上の円の中心点Ｈ０２をいくつか集めて、それら円の中心点Ｈ０２間のベクトルを平均化することによって求める方法を用いる。先に説明した第１から第４までの実施の形態では、線状物体Ｊ０１の位置と姿勢を中心線Ｄ０１としていたが、例えば線状物体Ｊ０１をロボットのグリッパで把持する作業を想定すると、把持位置とその位置における姿勢が必要となる。一方、本実施の形態は、ステップ５０１で中心線上の位置Ｄ０２を決め、ステップ５０２で中心線上の位置でのベクトルＤ０３を求めるため、それぞれを位置、姿勢とすることで、グリッパで把持する等の作業を実行することができる。
【００６９】
以上説明したように、本発明の第５の実施の形態（請求項６記載の例）は、線状物体Ｊ０１の位置と姿勢として中心線上の位置Ｄ０２と中心線上の位置でのベクトルＤ０３を求めるため、線状物体Ｊ０１を把持させる等の作業を実行することができるという効果がある。
【００７０】
（６）第６の実施の形態
本発明の第６の実施の形態の物体検出方法について、図６、図１３を用いて説明する。本実施の形態は、請求項７記載の例に相当する。図６は本発明の第６の実施の形態を表すフローチャートであり、６０１から６０２まではそのフローチャートの各ステップである。なお、前出の図を用いて説明した構成要素については、同一の符号を付して説明を割愛する。
【００７１】
本実施の形態と第５の実施の形態との相違は、ステップ６０１とステップ６０２とが加わっている点である。ステップ６０１の前段までは、ステップ１０１からステップ１０５までによって線状物体Ｊ０１の中心線Ｄ０１が求められている。
【００７２】
ステップ６０１では、図１３の中心線上の位置Ｄ０２付近を指定する。中心線上の位置Ｄ０２付近の指定は、例えば、人が指示する方法を用いる。
【００７３】
ステップ６０２では、指定した位置と中心線Ｄ０１との距離を演算し、その距離の最小のものを求め、距離の最小値を取る中心線Ｄ０１上の位置を求める。
【００７４】
ステップ５０１では、求めた位置を中心線上の位置Ｄ０２と決定する。以後のステップは第５の実施の形態で説明した内容と同じである。先に説明した第５の実施の形態では、ステップ５０１で人が中心線上の位置Ｄ０２を厳密に指示する必要がある。また、従来の第１の技術で行う人による指示も厳密に行う必要がある。一方、本実施の形態は、ステップ６０１で中心線上の位置Ｄ０２付近を指定し、ステップ６０２でその指定した位置と中心線Ｄ０１との距離を演算し、その距離の最小のものを求め、距離の最小値を取る中心線Ｄ０１上の位置を求め、その位置を中心線上の位置Ｄ０２とするため、中心線上の位置Ｄ０２の指示がラフで済む。
【００７５】
以上説明したように、本発明の第６の実施の形態（請求項７記載の例）は、中心線上の位置Ｄ０２付近を指定し、その指定した位置と中心線Ｄ０１との距離を演算し、その距離の最小のものを求め、距離の最小値を取る中心線Ｄ０１上の位置を求め、その位置を中心線上の位置Ｄ０２とするため、中心線上の位置Ｄ０２の指示がラフで済み、手間が省けて作業効率を向上させることができるという効果がある。
【００７６】
（７）第７の実施の形態
本発明の第７の実施の形態の物体検出方法について、図７、図１３、図１８を用いて説明する。本実施の形態は、請求項８記載の例に相当する。図７は本発明の第７の実施の形態を表すフローチャートであり、７０１から７０２まではそのフローチャートの各ステップである。なお、前出の図を用いて説明した構成要素については、同一の符号を付して説明を割愛する。
【００７７】
本実施の形態と第５の実施の形態との相違は、ステップ７０１とステップ７０２とが加わっている点である。ステップ７０１の前段までは、ステップ１０１からステップ１０５までによって線状物体Ｊ０１の中心線Ｄ０１が求められている。
【００７８】
ステップ７０１では、線状物体Ｊ０１の端点Ｉ０１あるいは画面上の端からの中心線Ｄ０１上の距離を指定する。中心線Ｄ０１上の距離の指定は、例えば、人が線状物体Ｊ０１の端点Ｉ０１の左端からの距離を入力する。
【００７９】
ステップ７０２では、端点Ｉ０１の左端からの中心線Ｄ０１上の距離を演算し、ステップ７０１で指定した距離と等しくなる点を見つける。
【００８０】
ステップ５０１では、見つけた点を中心線上の位置Ｄ０２と決定する。以後のステップは第５の実施の形態で説明した内容と同じである。先に説明した第５の実施の形態では、ステップ５０１で人が中心線上の位置Ｄ０２を厳密に指示する必要がある。また、従来の第１の技術で行う人による指示も厳密に行う必要がある。一方、本実施の形態は、ステップ７０１で線状物体Ｊ０１の端点Ｉ０１あるいは画面上の端からの中心線Ｄ０１上の距離を指定し、ステップ７０２で端点Ｉ０１の左端からの中心線Ｄ０１上の距離を演算し、ステップ７０１で指定した距離と等しくなる点を見つけ、その点を中心線上の位置Ｄ０２とするため、中心線上の位置Ｄ０２の指示が不要である。
【００８１】
以上説明したように、本発明の第７の実施の形態（請求項８記載の例）は、線状物体Ｊ０１の端点Ｉ０１あるいは画面上の端からの中心線Ｄ０１上の距離を指定し、端点Ｉ０１からの中心線Ｄ０１上の距離を演算し、指定した距離と等しくなる点を見つけ、その点を中心線上の位置Ｄ０２とするため、中心線上の位置Ｄ０２の指示が不要であり、手間が省けて作業効率を向上させることができるという効果がある。また、線状物体Ｊ０１の端点Ｉ０１あるいは画面上の端からの距離を定量的に指定することができるので、正確に中心線上の位置Ｄ０２を決定することができるという効果がある。
【００８２】
（８）第８の実施の形態
本発明の第８の実施の形態の物体検出方法について、図８、図１３、図１８を用いて説明する。本実施の形態は、請求項９記載の例に相当する。図８は本発明の第８の実施の形態を表すフローチャートであり、８０１から８０３まではそのフローチャートの各ステップである。なお、前出の図を用いて説明した構成要素については、同一の符号を付して説明を割愛する。
【００８３】
本実施の形態と第５の実施の形態との相違は、ステップ８０１からステップ８０３とステップ７０２とが加わっている点である。ステップ８０１の前段までは、ステップ１０１からステップ１０５までによって線状物体Ｊ０１の中心線Ｄ０１が求められている。
【００８４】
ステップ８０１では、線状物体Ｊ０１の中心線Ｄ０１の距離の総和に対する割合を指定する。割合の指定は、例えば、人が線状物体Ｊ０１の端点Ｉ０１の左端からの割合を入力する。ステップ８０２では、線状物体Ｊ０１の中心線Ｄ０１の距離の総和を演算する。ステップ８０３では、演算した線状物体Ｊ０１の中心線Ｄ０１の距離の総和と、ステップ８０１で指定した割合とから、端点Ｉ０１の左端からの中心線Ｄ０１上の距離を演算する。以後のステップは第７の実施の形態で説明した内容と同じである。先に説明した第５の実施の形態では、ステップ５０１で人が中心線上の位置Ｄ０２を厳密に指示する必要がある。また、従来の第１の技術で行う人による指示も厳密に行う必要がある。一方、本実施の形態は、ステップ８０１で線状物体Ｊ０１の中心線Ｄ０１の距離の総和に対する割合を指定し、ステップ８０２で線状物体Ｊ０１の中心線Ｄ０１の距離の総和を演算し、ステップ８０３で演算した線状物体Ｊ０１の中心線Ｄ０１の距離の総和と、ステップ８０１で指定した割合とから、端点Ｉ０１の左端からの中心線Ｄ０１上の距離を演算し、その距離に相当する中心線Ｄ０１上の点を中心線上の位置Ｄ０２とするため、中心線上の位置Ｄ０２の指示が不要である。
【００８５】
以上説明したように、本発明の第８の実施の形態（請求項９記載の例）は、線状物体Ｊ０１の中心線Ｄ０１の距離の総和に対する割合を指定し、線状物体Ｊ０１の中心線Ｄ０１の距離の総和を演算し、演算した線状物体Ｊ０１の中心線Ｄ０１の距離の総和と、指定した割合とから、端点Ｉ０１からの中心線Ｄ０１上の距離を演算し、その距離に相当する中心線Ｄ０１上の点を中心線上の位置Ｄ０２とするため、中心線上の位置Ｄ０２の指示が不要であり、手間が省けて作業効率を向上させることができるという効果がある。また、線状物体Ｊ０１の端点Ｉ０１あるいは画面上の端からの割合を定量的に指定することができるので、正確に中心線上の位置Ｄ０２を決定することができるという効果がある。
【００８６】
（９）第９の実施の形態
本発明の第９の実施の形態の物体検出方法について、図９、図１３から図１５までを用いて説明する。本実施の形態は、請求項１０記載の例に相当する。図９は本発明の第９の実施の形態を表すフローチャートであり、９０１から９０３まではそのフローチャートの各ステップである。なお、前出の図を用いて説明した構成要素については、同一の符号を付して説明を割愛する。
【００８７】
本実施の形態と第１の実施の形態との相違は、ステップ９０１からステップ９０３が加わっている点である。ステップ９０１の前段までは、ステップ１０１によって線状物体Ｊ０１に関する距離データが取得されている。
【００８８】
ところで、第１から第８までの実施の形態では、距離データとして図１４を扱った。実際に距離計測装置から線状物体Ｊ０１を含む距離データを取得する場合、線状物体の距離データＥ０１以外の距離データが取得されることがある。これは、線状物体Ｊ０１以外の物体が存在する場合や、線状物体の距離データＥ０１にノイズがある場合である。この場合、距離データは例えば、図１５に示すようになる。図１５において、Ｆ０１は第１の線状物体以外の距離データ、Ｆ０２は第２の線状物体以外の距離データ、Ｆ０３は第３の線状物体以外の距離データであり、これらは、線状物体の距離データＥ０１と同時に取得されている。ここでの目的は、図１５に示すように距離データが取得されている状態で、線状物体の距離データＥ０１だけを抽出することである。図１５に示すような場合は、距離データの個数が多いものを抽出することで線状物体の距離データＥ０１だけを抽出することができるが、線状物体Ｊ０１以外の距離データの個数が全て線状物体の距離データＥ０１より少ない保証はない。従って、本実施の形態では以下に示すステップ９０１からステップ９０３までを用いて線状物体の距離データＥ０１だけを抽出する。
【００８９】
ステップ９０１では、線状物体Ｊ０１を含む距離データからエッジを抽出する。エッジの抽出には、例えば、脇迫仁、鎌田清一郎、河口英二、”距離画像処理による３次元物体検出システム”、電子情報通信学会論文誌Ｄ−ＩＩ、Ｊ７７−Ｄ−ＩＩ巻、第７号、１２８２−１２９２ページ、１９９４に記載されている、近傍領域の平面近似の残差によるエッジ検出、曲率によるエッジ検出等の方法を用いる。
【００９０】
ステップ９０２では、ステップ９０１で抽出したエッジでない領域にラベリング処理を行って各領域にラベルを付す。ラベリングには、例えば、画像処理の分野で広く用いられる４連結成分をラベル付けする方法を用いる。
【００９１】
ステップ９０３では、ラベルが付された領域から線状である領域を抽出する。線状である領域の抽出には、例えば、外接四角形を求めてその長辺と短辺の比から抽出する方法を用いる。
【００９２】
ところで、図１５に示した距離データであれば、既に各領域が分離されている状態であり、ステップ９０１からステップ９０２までで行う処理は必要ない。しかし、線状物体の距離データＥ０１に線状物体Ｊ０１以外の距離データが重なってしまわないという保証はない。従って、本実施の形態のようにステップ９０１からステップ９０３までで行う処理を用いて、線状物体の距離データＥ０１だけを抽出する必要がある。ステップ９０３までの処理で線状物体の距離データＥ０１が抽出できているので、以後のステップは第１の実施の形態で説明した内容と同じである。
【００９３】
先に説明した第１から第８までの実施の形態は、線状物体の距離データＥ０１だけが存在している状態で線状物体Ｊ０１の位置と姿勢を求めた。一方、本実施の形態は、ステップ９０１で線状物体Ｊ０１を含む距離データからエッジを抽出し、ステップ９０２で抽出したエッジでない領域にラベリング処理を行って各領域にラベルを付し、ステップ９０３でラベルが付された領域から線状である領域を抽出するため、線状物体の距離データＥ０１以外の距離データが存在する場合でも線状物体の距離データＥ０１だけを抽出することができる。
【００９４】
以上説明したように、本発明の第９の実施の形態（請求項１０記載の例）は、線状物体Ｊ０１を含む距離データからエッジを抽出し、抽出したエッジでない領域にラベリング処理を行って各領域にラベルを付し、ラベルが付された領域から線状である領域を抽出するため、線状物体の距離データＥ０１以外の距離データが存在する場合でも線状物体の距離データＥ０１だけを抽出することができ、結果として、より多くのケースで適用することができるという効果がある。
【００９５】
（１０）第１０の実施の形態
本発明の第１０の実施の形態の物体検出方法について、図１０、図１５を用いて説明する。本実施の形態は、請求項１１記載の例に相当する。図１０は本発明の第１０の実施の形態を表すフローチャートであり、Ａ０１はそのフローチャートのステップである。なお、前出の図を用いて説明した構成要素については、同一の符号を付して説明を割愛する。
【００９６】
本実施の形態と第９の実施の形態との相違は、ステップＡ０１が加わっている点である。ステップＡ０１の前段までは、ステップ１０１からステップ９０２までによって距離データの各領域にラベルが付されている。
【００９７】
ステップＡ０１では、ラベルが付された各領域で距離データの個数が少ない領域を削除する。これは、後のステップ９０３で行う、ラベルが付された領域から線状である領域を抽出する際に、小さい領域でも線状の割合が高いと判定され、線状物体の距離データＥ０１以外の領域を抽出してしまう可能性を回避するために行うものである。図１５に示した距離データの場合、例えば、第２の線状物体以外の距離データＦ０２を抽出してしまう可能性を回避するためのものである。以後のステップは第９の実施の形態で説明した内容と同じである。先に説明した第９の実施の形態は、ステップ９０２で距離データの各領域にラベルを付し、ステップ９０３で線状である領域を抽出した。一方、本実施の形態は、ステップＡ０１でラベルが付された各領域で距離データの個数が少ない領域を削除するため、線状の割合が高く小さい領域が存在する場合でも線状物体の距離データＥ０１だけを抽出することができる。
【００９８】
以上説明したように、本発明の第１０の実施の形態（請求項１１記載の例）は、ラベルが付された各領域で距離データの個数が少ない領域を削除するため、線状の割合が高く小さい領域が存在する場合でも線状物体の距離データＥ０１だけを抽出することができ、結果として、より多くのケースで適用することができるという効果がある。
【００９９】
（１１）第１１の実施の形態
本発明の第１１の実施の形態の物体検出方法について、図１１、図１５を用いて説明する。本実施の形態は、請求項１２記載の例に相当する。図１１は本発明の第１１の実施の形態を表すフローチャートであり、Ｂ０１からＢ０２まではそのフローチャートの各ステップである。なお、前出の図を用いて説明した構成要素については、同一の符号を付して説明を割愛する。
【０１００】
本実施の形態と第１０の実施の形態との相違は、ステップＢ０１とステップＢ０２とが加わっている点である。ステップＢ０１の前段までは、ステップ１０１からステップＡ０１までによって距離データの各領域にラベルが付され、ラベルが付された各領域で距離データの個数が少ない領域が削除されている。図１５に示した距離データの場合、線状物体の距離データＥ０１と第１の線状物体以外の距離データＦ０１とが残されているとする。
【０１０１】
ステップＢ０１では、ラベルが付された各領域の主軸と主軸に垂直な軸とを演算する。ここでは、主軸に垂直な軸を非主軸と呼ぶ。主軸の演算には、例えば、第３の実施の形態のステップ３０１と同様、距離データのＺ座標値を無視し、ＸＹ平面上で直線の方程式を仮定し、距離データと直線との距離の総和が最小になる直線の方程式を最小自乗法によって求め、その直線を主軸とする方法を用いる。非主軸は、主軸と垂直な軸を演算する。ここで、主軸を表す単位ベクトルをＶＳとし、非主軸を表す単位ベクトルをＶＴとする。
【０１０２】
ステップＢ０２では、各領域の距離データ、すなわち、線状物体の距離データＥ０１と第１の線状物体以外の距離データＦ０１の線状率を演算する。線状率を求めるためにまず、次式の演算を行う。
【０１０３】
Ｓｉ＝ＶＳ・Ｐｉ
Ｔｉ＝ＶＴ・Ｐｉ
ここで・は内積を表す。また、Ｐｉは距離データｉのＸＹ座標値である（ｉは１〜ｎ：ｎは各領域の距離データの個数）。次にＳｉ、Ｔｉの最大値と最小値を求め、それぞれ、Ｓｍａｘ、Ｓｍｉｎ、Ｔｍａｘ、Ｔｍｉｎとする。そして次式を演算し、それを線状率Ｒとする。
【０１０４】
Ｒ＝（Ｓｍａｘ−Ｓｍｉｎ）／（Ｔｍａｘ−Ｔｍｉｎ）
線状率Ｒが大きければより線状であると見なす。ステップ９０３では、この線状率Ｒが大きい領域を抽出する。以後のステップは第９の実施の形態で説明した内容と同じである。先に説明した第９及び第１０の実施の形態は、ステップ９０３で外接四角形を求めてその長辺と短辺の比から抽出する方法を用いて線状である領域を抽出した。一方、本実施の形態は、ステップＢ０１でラベルが付された各領域の主軸と非主軸とを演算し、ステップＢ０２で各領域の距離データの線状率Ｒを演算し、ステップ９０３でその線状率Ｒの大きい領域を抽出するため、線状であるか否かの判定が正確に行え、より正確に線状物体の距離データＥ０１だけを抽出することができる。
【０１０５】
以上説明したように、本発明の第１１の実施の形態（請求項１２記載の例）は、ラベルが付された各領域の主軸と非主軸とを演算し、各領域の距離データの線状率Ｒを演算し、その線状率Ｒの大きい領域を抽出するため、線状であるか否かの判定が正確に行え、より正確に線状物体の距離データＥ０１だけを抽出することができ、結果として、より多くのケースで適用することができるという効果がある。
【０１０６】
（１２）第１２の実施の形態
本発明の第１２の実施の形態の物体検出方法について、図１２、図１３、図１５を用いて説明する。本実施の形態は、請求項１３記載の例に相当する。図１２は本発明の第１２の実施の形態を表すフローチャートであり、Ｃ０１はそのフローチャートのステップである。なお、前出の図を用いて説明した構成要素については、同一の符号を付して説明を割愛する。
【０１０７】
本実施の形態と第１１の実施の形態との相違は、ステップＣ０１が加わっている点である。ステップＣ０１の前段までは、ステップ１０１によって線状物体Ｊ０１に関する距離データが取得されている。
【０１０８】
ステップＣ０１では、線状物体Ｊ０１を含む距離データから線状物体Ｊ０１より背景側または手前側の領域を削除する。これは、線状物体Ｊ０１までの距離がおおよそ既知である場合に、その距離以外の領域を削除しておけば、その後の線状物体の距離データＥ０１の抽出がより正確に行えるために行うものである。図１５に示した距離データの場合、例えば、第３の線状物体以外の距離データＦ０３が線状物体の距離データＥ０１より背景側にあるとする。この時、Ｚ座標値に関するある閾値で背景を容易に削除することができる。以後のステップは第１１の実施の形態で説明した内容と同じである。先に説明した第９から第１１までの実施の形態は、ステップ１０１で線状物体Ｊ０１に関する距離データを取得し、それを元に線状物体の距離データＥ０１を抽出した。一方、本実施の形態は、ステップＣ０１で線状物体Ｊ０１を含む距離データから線状物体Ｊ０１より背景側または手前側の領域を削除するため、線状物体の距離データＥ０１の抽出をより正確に行うことができる。
【０１０９】
以上説明したように、本発明の第１２の実施の形態（請求項１３記載の例）は、線状物体Ｊ０１を含む距離データから線状物体Ｊ０１より背景側または手前側の領域を削除するため、線状物体の距離データＥ０１の抽出をより正確に行うことができ、結果として、より多くのケースで適用することができるという効果がある。
【０１１０】
以上、全ての実施の形態を、各ステップを順に説明したが、本発明はこのステップの順序に限るものではなく、部分的にステップの順序が変更になっても対応することができる。
【０１１１】
【発明の効果】
以上説明したように、本発明の請求項１及び２記載の物体検出方法によれば、線状物体の距離データを複数の微小領域に分割し、微小領域の距離データを平面に射影し、射影距離データを平面形状（円）に近似し、平面形状の中心点（円の中心点）を求め、平面形状の中心点（円の中心点）を接続して線状物体の中心線を自動で求めることができるので、人によって指示する必要がなく、手間が省けて作業効率を向上させることができるという効果がある。また、従来の技術で行う相関演算を用いず線状物体の中心線を求めるので、線状物体の位置と姿勢を高精度に求めることができるという効果がある。また、従来の技術で行う直線近似を用いず線状物体の中心線を求めるので、曲がった線状物体にも対応できるという効果がある。また、従来の技術では線状物体表面の位置と姿勢を求めているが、本発明の請求項１及び２記載の方法は、線状物体の中心線を求めるので、線状物体の位置と姿勢を高精度に求めることができ、線状物体に対する作業を良好に行うことができるという効果がある。
【０１１２】
本発明の請求項３記載の物体検出方法によれば、微小領域の距離データの重心を演算し、個々の重心間のベクトルを演算し、そのベクトルに垂直な平面に微小領域の距離データを射影するため、線状物体の方向に対して垂直な平面に微小領域の距離データを射影することができ、射影距離データの広がりを小さくすることができる。その結果、平面形状近似（円近似）、中心点の接続で求めた、線状物体の中心線を正確に求めることができるという効果がある。
【０１１３】
本発明の請求項４記載の物体検出方法によれば、線状物体の距離データの主軸を演算し、その主軸に垂直な平面を複数用いて線状物体の距離データを複数の微小領域に分割するため、分割に用いる平面を予め決める必要がなく、自動的に求めることができる。その結果、手間が省けて作業効率を向上させることができるという効果がある。
【０１１４】
本発明の請求項５記載の物体検出方法によれば、線状物体の端点を演算するため、切断された線状物体にも対応できるという効果がある。
【０１１５】
本発明の請求項６記載の物体検出方法によれば、線状物体の位置と姿勢として中心線上の位置と中心線上の位置でのベクトルを求めるため、線状物体を把持させる等の作業を実行することができるという効果がある。
【０１１６】
本発明の請求項７記載の物体検出方法によれば、中心線上の位置付近を指定し、中心線上の位置付近を指定し、その指定した位置と中心線との距離を演算し、その距離の最小のものを求め、距離の最小値を取る中心線上の位置を求め、その位置を中心線上の位置とするため、中心線上の位置の指示がラフで済み、手間が省けて作業効率を向上させることができるという効果がある。
【０１１７】
本発明の請求項８記載の物体検出方法によれば、線状物体の端点あるいは画面上の端からの中心線上の距離を指定し、端点からの中心線上の距離を演算し、指定した距離と等しくなる点を見つけ、その点を中心線上の位置とするため、中心線上の位置の指示が不要であり、手間が省けて作業効率を向上させることができるという効果がある。また、線状物体の端点あるいは画面上の端からの距離を定量的に指定することができるので、正確に中心線上の位置を決定することができるという効果がある。
【０１１８】
本発明の請求項９記載の物体検出方法によれば、線状物体の中心線の距離の総和に対する割合を指定し、線状物体の中心線の距離の総和を演算し、演算した線状物体の中心線の距離の総和と、指定した割合とから、端点からの中心線上の距離を演算し、その距離に相当する中心線上の点を中心線上の位置とするため、中心線上の位置の指示が不要であり、手間が省けて作業効率を向上させることができるという効果がある。また、線状物体の端点あるいは画面上の端からの割合を定量的に指定することができるので、正確に中心線上の位置を決定することができるという効果がある。
【０１１９】
本発明の請求項１０記載の物体検出方法によれば、線状物体を含む距離データからエッジを抽出し、抽出したエッジでない領域にラベリング処理を行って各領域にラベルを付し、ラベルが付された領域から線状である領域を抽出するため、線状物体の距離データ以外の距離データが存在する場合でも線状物体の距離データだけを抽出することができ、結果として、より多くのケースで適用することができるという効果がある。
【０１２０】
本発明の請求項１１記載の物体検出方法によれば、ラベルが付された各領域で距離データの個数が少ない領域を削除するため、線状の割合が高く小さい領域が存在する場合でも線状物体の距離データだけを抽出することができ、結果として、より多くのケースで適用することができるという効果がある。
【０１２１】
本発明の請求項１２記載の物体検出方法によれば、ラベルが付された各領域の主軸と非主軸とを演算し、各領域の距離データの線状率を演算し、その線状率の大きい領域を抽出するため、線状であるか否かの判定が正確に行え、より正確に線状物体の距離データだけを抽出することができ、結果として、より多くのケースで適用することができるという効果がある。
【０１２２】
本発明の請求項１３記載の物体検出方法によれば、線状物体を含む距離データから線状物体より背景側または手前側の領域を削除するため、線状物体の距離データの抽出をより正確に行うことができ、結果として、より多くのケースで適用することができるという効果がある。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態を表すフローチャートである。
【図２】本発明の第２の実施の形態を表すフローチャートである。
【図３】本発明の第３の実施の形態を表すフローチャートである。
【図４】本発明の第４の実施の形態を表すフローチャートである。
【図５】本発明の第５の実施の形態を表すフローチャートである。
【図６】本発明の第６の実施の形態を表すフローチャートである。
【図７】本発明の第７の実施の形態を表すフローチャートである。
【図８】本発明の第８の実施の形態を表すフローチャートである。
【図９】本発明の第９の実施の形態を表すフローチャートである。
【図１０】本発明の第１０の実施の形態を表すフローチャートである。
【図１１】本発明の第１１の実施の形態を表すフローチャートである。
【図１２】本発明の第１２の実施の形態を表すフローチャートである。
【図１３】本発明の実施の形態に関わる線状物体のモデル図である。
【図１４】本発明の実施の形態に関わる距離データの第１例である。
【図１５】本発明の実施の形態に関わる距離データの第２例である。
【図１６】本発明の実施の形態に関わる射影した距離データを表す図である。
【図１７】本発明の実施の形態に関わる円近似の様子を表す図である。
【図１８】本発明の実施の形態に関わる端点を求める方法を表す図である。
【図１９】従来の物体検出方法の概略構成図である。
【図２０】従来の第１の技術を表すフローチャートである。
【図２１】従来の第２の技術を表すフローチャートである。
【符号の説明】
１０１〜１０６　本発明の第１の実施の形態を表すフローチャートの各ステップ
２０１〜２０２　本発明の第２の実施の形態を表すフローチャートの各ステップ
３０１　　　　　本発明の第３の実施の形態を表すフローチャートのステップ
４０１　　　　　本発明の第４の実施の形態を表すフローチャートのステップ
５０１〜５０２　本発明の第５の実施の形態を表すフローチャートの各ステップ
６０１〜６０２　本発明の第６の実施の形態を表すフローチャートの各ステップ
７０１〜７０２　本発明の第７の実施の形態を表すフローチャートの各ステップ
８０１〜８０３　本発明の第８の実施の形態を表すフローチャートの各ステップ
９０１〜９０３　本発明の第９の実施の形態を表すフローチャートの各ステップ
Ａ０１　　　　　本発明の第１０の実施の形態を表すフローチャートのステップ
Ｂ０１〜Ｂ０２　本発明の第１１の実施の形態を表すフローチャートの各ステップ
Ｃ０１　　　　　本発明の第１２の実施の形態を表すフローチャートのステップ
Ｄ０１　　　　　中心線
Ｄ０２　　　　　中心線上の位置
Ｄ０３　　　　　中心線上の位置でのベクトル
Ｅ０１　　　　　線状物体の距離データ
Ｅ０２　　　　　座標系
Ｆ０１　　　　　第１の線状物体以外の距離データ
Ｆ０２　　　　　第２の線状物体以外の距離データ
Ｆ０３　　　　　第３の線状物体以外の距離データ
Ｇ０１　　　　　射影距離データ
Ｈ０１　　　　　近似円
Ｈ０２　　　　　円の中心点
Ｉ０１　　　　　端点
Ｉ０２　　　　　第１の中心点
Ｉ０３　　　　　第２の中心点
Ｉ０４　　　　　正規化ベクトル
Ｉ０５　　　　　距離データｉ
Ｊ０１　　　　　線状物体
Ｊ０２　　　　　撮像装置
Ｊ０３　　　　　画像処理装置
Ｋ０１〜Ｋ０４　従来の第１の技術を表すフローチャートの各ステップ
Ｌ０１〜Ｌ０５　従来の第２の技術を表すフローチャートの各ステップ
【図１】
2004005061.tif 000003
【図２】
2004005061.tif 000004
【図３】
2004005061.tif 000005
【図４】
2004005061.tif 000006
【図５】
2004005061.tif 000007
【図６】
2004005061.tif 000008
【図７】
2004005061.tif 000009
【図８】
2004005061.tif 000010
【図９】
2004005061.tif 000011
【図１０】
2004005061.tif 000012
【図１１】
2004005061.tif 000013
【図１２】
2004005061.tif 000014
【図１３】
2004005061.tif 000015
【図１４】
2004005061.tif 000016
【図１５】
2004005061.tif 000017
【図１６】
2004005061.tif 000018
【図１７】
2004005061.tif 000019
【図１８】
2004005061.tif 000020
【図１９】
2004005061.tif 000021
【図２０】
2004005061.tif 000022
【図２１】
2004005061.tif 000023