(57)【特許請求の範囲】
【請求項１】
走行体に対して旋回可能な旋回体に設置されており前記走行体を撮影するカメラと、
前記カメラで撮影した画像を処理して、前記走行体の予め決められた部位のエッジを検出し、前記走行体に対する前記旋回体の相対角度を求める角度検出部とを備え、
前記角度検出部は、前記画像から得られるエッジ候補と予め設定される設定中心との距離に基づいて、前記エッジ候補中から前記エッジを選択する
ことを特徴とする建設機械の角度検出装置。 
【請求項２】
走行体に対して旋回可能な旋回体に設置されており前記走行体を撮影するカメラと、
前記カメラで撮影した画像を処理して、前記走行体の予め決められた部位のエッジを検出し、前記走行体に対する前記旋回体の相対角度を求める角度検出部とを備え、
前記カメラは、第一のカメラと第二のカメラとを有し、
前記第一のカメラは、前記旋回体の前方に設置されており、
前記第二のカメラは、前記旋回体の左右のいずれか一方に設置されている
ことを特徴とする建設機械の角度検出装置。
【請求項３】
前記角度検出部は、前記画像から得られるエッジ候補と予め設定される設定中心との距離に基づいて、前記エッジ候補中から前記エッジを選択する
ことを特徴とする請求項２に記載の建設機械の角度検出装置。
【請求項４】
前記設定中心は、前記走行体に対する前記旋回体の回転中心である
ことを特徴とする請求項１または３に記載の建設機械の角度検出装置。
【請求項５】
前記旋回体の前記走行体に対する相対角度を変えて前記カメラで撮影した前記走行体の前記部位の二つ以上の前記エッジに基づいて前記設定中心を設定する
ことを特徴とする請求項１または３に記載の建設機械の角度検出装置。
【請求項６】
前記角度検出部は、前記設定中心から前記部位までの距離に対して閾値を設定し、前記エッジ候補と前記設定中心との距離が閾値で設定される範囲内にある前記エッジ候補を前記エッジとして選択する
ことを特徴とする請求項１、３、４または５に記載の建設機械の角度検出装置。
【請求項７】
前記走行体は、クローラであり、
前記部位は、クローラの側縁とされている
ことを特徴とする請求項１から６のいずれか一項に記載の建設機械の角度検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、建設機械の角度検出装置の改良に関する。
【背景技術】
【０００２】
土木建設工事等に使用される建設機械は、クローラを備えて走行可能な走行体と、走行体に旋回可能に取り付けた旋回体と、旋回体に上下方向に揺動可能に連結されたブームと、ブームに上下方向に揺動可能に連結されるアームと、アームの先端に上下方向に揺動可能に連結されたアタッチメントを備えているものが知られている。
【０００３】
このような建設機械にあっては、走行体上に取り付けられた旋回体にオペレータが乗車し、オペレータは、ブーム、アームおよびアタッチメントの操作と同時に、旋回体の旋回操作および走行運転を行う。
【０００４】
オペレータは、前述したように旋回体に乗車しつつ走行運転を行うが、旋回体の旋回操作により方向感覚を失う場合があり、建設機械がオペレータの意図しない方向へ走行してしまう場合がある。
【０００５】
このような問題に対処するため、旋回体の左右および後方の三箇所に設けたカメラで建設機械の周囲を撮影し、建設機械の周囲を撮影した画像に移された樹木などの被写体の位置の時間的変化から、走行体に対する旋回体の角度を推定するモニタ装置が開発されている。
【０００６】
このモニタ装置では、オペレータが乗車する運転席に設けたモニタに前述のようにして得た角度情報を表示して、オペレータが角度を認識できるようにしている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１２−１０７３９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
従来のモニタ装置では、走行体に対する旋回体の角度を求められる点で有用であるが、連続して取得される画像に写っている被写体の位置の時間的変化によって角度を推定しているため、角度の推定には時系列に撮影される複数の画像が必要となる。よって、角度検出には時間がかかる問題がある。
【０００９】
また、たとえば、被写体が移動体で得られる画像中のうち角度検出に利用できる被写体が移動体のみの場合、移動体の移動による画像中の移動体の位置変化を旋回体の旋回によるものと認識し、誤った角度を検出してしまう可能性がある。
【００１０】
かといって、ポテンショメータなどのセンサを利用する場合、建設機械へ後付が困難であり、建設機械の振動などによって破損する可能性もある。
【００１１】
そこで、本願発明の目的は、後付が容易で故障の心配もなく、正確かつタイムリーに走行体に対する旋回体の相対角度を検知可能な建設機械の角度検出装置および角度検出方法の提供である。
【課題を解決するための手段】
【００１２】
上記目的を達成するために、本発明の建設機械の角度検出装置は、走行体に対して旋回可能な旋回体に設置され走行体を撮影するカメラで撮影した画像から走行体の予め決められた部位のエッジを検出し、走行体に対する旋回体の相対角度を求める。このように構成された角度検出装置は、カメラで撮影した連続画像からではなく、一つの画像から相対角度を検出できるので、時間をかけずにタイムリーに角度検出できる。また、このように構成された角度検出装置は、走行体の決められた部位のエッジを検出し、このエッジを利用して相対角度を検出するので、建設機械以外の被写体を用いないで角度検出でき、正確に相対角度を検出できる。さらに、角度検出装置は、センサ類を用いないので、センサ類の故障の心配もなく、建設機械に容易に後付で設置可能である。
【００１３】
また、角度検出装置にあっては、画像から得られるエッジ候補と予め設定される設定中心との距離に基づいて、エッジ候補中から角度検出に利用するエッジを選択する場合、正確に角度検出に利用する部位のエッジを選択できる。よって、このように構成された角度検出装置にあっては、走行体に対する旋回体の相対角度を精度よく検出できる。
【００１４】
さらに、角度検出装置にあっては、設定中心を走行体に対する旋回体の回転中心とする場合、設定中心を設定する作業を省略できる。
【００１５】
また、角度検出装置にあっては、旋回体の走行体に対する相対角度を変えてカメラで撮影した走行体の部位の三つ以上のエッジに基づいて設定中心を設定してもよい。このように角度検出装置が構成されると、設定中心をカメラ毎に角度検出に利用する部位毎に設定でき、キャリブレーションや各種演算誤差等を含んで最適な設定中心を設定できる。
【００１６】
そして、角度検出装置にあっては、設定中心から部位までの距離を中心として閾値を設定し、エッジ候補と設定中心との距離が閾値で設定される範囲内にあるエッジ候補をエッジとしてもよい。この場合、複数抽出されるエッジ候補の中から精度良く前記部位のエッジのみを選択できる。
【００１７】
また、角度検出装置にあっては、旋回体の前方に設置される第一のカメラと旋回体の左右いずれか一方に設置される第二のカメラを備える場合、走行体に対する旋回体の相対角度のうち検出できない相対角度範囲が発生せず、シームレスに相対角度を検出可能である。
【００１８】
また、角度検出装置にあっては、走行体がクローラであり、クローラの側縁のエッジを検出するようになっていてもよい。クローラの側縁のエッジは、長い直線であり、複数のエッジ候補が得られた場合でもクローラのエッジを認識しやすく、クローラのエッジを高確度で抽出できる。よって、請求項７の角度検出装置は、高精度の角度検出が可能となる。
【発明の効果】
【００２０】
本発明の角度検出装置は、後付が容易で故障の心配もなく、正確かつタイムリーに走行体に対する旋回体の相対角度を検知可能である。
【図面の簡単な説明】
【００２１】
【図１】一実施の形態における建設機械の角度検出装置のシステム構成の一例を示した図である。
【図２】一実施の形態における建設機械の角度検出装置のカメラの撮影範囲を示した図である。
【図３】一方のカメラが撮影した画像を示す図である。
【図４】他方のカメラが撮影した画像を示す図である。
【図５】一方のカメラが撮影した画像のエッジ画像処理後の画像を示す図である。
【図６】他方のカメラが撮影した画像のエッジ画像処理後の画像を示す図である。
【図７】一方のカメラが撮影した画像のエッジ候補抽出後の画像を示す図である。
【図８】他方のカメラが撮影した画像のエッジ候補抽出後の画像を示す図である。
【図９】図３の画像を座標変換処理した画像を示す図である。
【図１０】一方のカメラが撮影した画像の座標変換後処理後の画像を示す図である。
【図１１】他方のカメラが撮影した画像の座標変換処理後の画像を示す図である。
【図１２】設定中心とエッジとの関係を示す図である。
【図１３】エッジ候補からエッジを選択する処理を説明する図である。
【図１４】一方のカメラが撮影した画像のエッジから角度を求める処理を説明する図である。
【図１５】一方のカメラが撮影した画像から一方のカメラの旋回体に対する方位角を求める処理を説明する図である。
【図１６】他方のカメラが撮影した画像から他方のカメラの旋回体に対する方位角を求める処理を説明する図である。
【図１７】一実施の形態における建設機械の角度検出装置のハードウェア資源の構成例を示した図である。
【図１８】一実施の形態における建設機械の角度検出装置における角度検出の処理手順を示したフローチャートである。
【発明を実施するための形態】
【００２２】
以下、図に示した実施の形態に基づき、本発明を説明する。図１に示すように、
本実施の形態の建設機械Ｃの角度検出装置１は、走行体２に対し旋回可能な旋回体３に設置され走行体２を撮影するカメラ４，５と、カメラ４で撮影した画像を処理し走行体２に対する旋回体３の相対角度を求める角度検出部６とで構成される。なお、角度検出部６は、旋回体３に設けられている。
【００２３】
建設機械Ｃは、走行可能なクローラ２ａ，２ｂ（図２参照）を備えた走行体２と、走行体２の上方に旋回可能に連結される旋回体３と、旋回体３に上下方向に揺動可能に連結されるブーム７と、ブーム７に上下方向に揺動可能に連結されるアーム８と、アーム８に上下方向に揺動可能に連結されるアタッチメント９とを備えている。
そして、クローラ２ａ，２ｂの駆動により走行体２は、前進、後退および旋回できるようになっている。旋回体３は、図外の駆動源により走行体２に対して３６０度水平方向へ旋回できるようになっている。また、ブーム７、アーム８およびアタッチメント９は、それぞれ図示しない油圧シリンダによってそれぞれ駆動できるようになっている。なお、建設機械Ｃは、走行体と走行体に対して旋回する旋回体を備えていればよく、クレーン車等とされてもよい。
【００２４】
カメラ４，５は、ＣＣＤ（電荷結合素子、図示せず）とレンズ（図示せず）、焦点調節部（図示せず）を備えたＣＣＤカメラとして構成され、旋回体３の上方に撮影方向が異なるように設置されている。このカメラ４，５は、あらかじめ設定される撮影範囲をあらかじめ決められたフレームレートで常時撮影し続け、この撮影した画像を電気信号に変換して角度検出部６へ出力するようになっている。なお、カメラ４，５はＣＣＤカメラとして構成される以外にもＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ Ｍｅｔａｌ ＯｘｉｄｅＳｅｍｉｃｏｎｄｕｃｔｏｒ）を利用したカメラを使用できる。そして、図２に示すように、カメラ４は、本例では、第二のカメラとされ、旋回体３の上方左方に取り付けられ、下方へ向けられていて、その撮影範囲は、旋回体３の左方であって走行体２のクローラ２ａ，２ｂが撮影されるように設定されている（クローラ２ｂは、旋回体３が図２の状態から旋回した時に撮影される）。カメラ５は、本例では、第一のカメラとされ、旋回体３の上方前方に取り付けられて下方へ向けられていて、その撮影範囲は、旋回体３の前方であって走行体２のクローラ２ａ，２ｂが撮影されるように設定されている。また、そして、カメラ４とカメラ５の撮影範囲は、旋回体３の走行体２に対する旋回によっても、少なくとも、カメラ４，５が撮影する画像のうち一方には、クローラ２ａ，２ｂの一方が必ず撮影されるように設定されている。本例では、角度検出に利用する部位のエッジを前記のクローラ２ａ，２ｂの側縁としており、走行体２の二箇所を当該部位として指定している。なお、建設機械Ｃが走行体２の前方に揺動自在に設けられる排土板を備える場合、排土板の端縁のエッジを角度検出に利用する部位としてもよい。また、カメラ４，５は、旋回体３に設けられるキャビン（運転室）内に設けてもよく、その場合、カメラ４，５を建設機械Ｃの外部環境から保護できる。
【００２５】
角度検出部６は、カメラ４，５が撮影した画像のひずみを補正する補正部６１と、補正された画像をグレースケールの画像に変換後に二値化処理し、エッジ画像を取得するエッジ画像取得部６２と、二値化された画像からハフ変換してから走行体２のクローラ２ａ，２ｂのエッジである可能性がある直線のエッジでなるエッジ候補を抽出するエッジ候補抽出部６３と、エッジ候補抽出部６３が抽出したエッジ候補が含まれる画像の座標系をクローラ２ａ，２ｂを真上から見下ろす俯瞰画像の座標系へ変換する座標変換部６４と、座標変換部６４により変換されたエッジ候補群からクローラ２ａ，２ｂのエッジを選択するエッジ選択部６５と、エッジ選択部６５で選択されたエッジから走行体２に対する旋回体３の相対角度θを求める角度演算部６６と、モニタ６７を備えて構成されている。
【００２６】
補正部６１は、カメラ４，５が撮影した画像からカメラ４，５のレンズ歪等による歪をキャリブレーション処理によって取り除くようになっている。たとえば、白線Ｗ（図３参照）が引かれた路面上に建設機械Ｃがあり、カメラ４がクローラ２ａの側縁と白線Ｗを撮影し、カメラ５にはブーム７が撮影されているもののクローラ２ａ，２ｂの側縁が撮影されていない状況を例に説明する。すると、カメラ４，５が撮影した画像を補正部６１によって歪を補正すると、カメラ４が撮影した図３に示す画像とカメラ５が撮影した図４に示す画像が得られる。なお、補正部６１によるキャリブレーション処理は、カメラ４，５を旋回体３への取付位置、角度を変更しなければ毎回行う必要はない。
【００２７】
エッジ画像取得部６２は、歪を取り除いた後のカメラ４，５が撮影した画像をたとえば２５６階調の輝度値で表現されるグレースケールの画像に変換し、さらに、画像を二値化処理して二値化画像を得て、エッジ画像処理をしてエッジ画像を得る。カメラ４が撮影した図３に示した画像をエッジ画像取得部６２によって処理すると、図５中の白色の直線で示すエッジのみで表現される画像が得られる。カメラ５が撮影した図４に示した画像をエッジ画像取得部６２によって処理すると、図６に示すエッジのみで表現される画像が得られる。
【００２８】
エッジ候補抽出部６３は、カメラ４，５の画像から得られたエッジ画像をハフ変換により走行体２のクローラ２ａ，２ｂのエッジである可能性がある直線でなるエッジ候補を抽出する。本例では、走行体２の予め決められた部位をクローラ２ａ，２ｂとして、クローラ２ａ，２ｂの側縁の直線部分をエッジ候補とするため、ハフ変換により直線のエッジをエッジ候補として抽出する。エッジ候補抽出部６３は、クローラ２ａ，２ｂのエッジ以外にも直線のエッジがある場合、この直線のエッジもエッジ候補として抽出するので、複数の直線のエッジがエッジ候補として抽出される。エッジ候補抽出部６３は、エッジ候補を始点と終点の座標でなる情報として取得する。よって、エッジ候補抽出部６３は、エッジ候補を始点と終点の座標でなるエッジ情報として複数取得する。なお、このエッジ候補抽出部６３によってカメラ４が撮影した画像から得られる図５の画像を処理して抽出したエッジ候補を画像として表現すると、図７に示すように、抽出されたエッジ候補Ｅ１，Ｅ２，Ｅ３が描かれる画像となる。なお、エッジ画像では、エッジが白線で示される画像が得られるが、図中への符号や引き出し線を記載する関係で、説明の便宜上、図７中では実際とは画像を白黒反転として記載しており、以下、図８から図１６においても同様とする。なお、エッジ候補Ｅ１，Ｅ２は、カメラ４が撮影した予め決められた走行体２の部位であるクローラ２ａの側縁のエッジであり、エッジ候補Ｅ３は、白線Ｗの縁から得られたエッジである。エッジ候補Ｅ１，Ｅ２は、どちらも角度検出のために得たいクローラ２ａのエッジではあるが、検出精度によって途中で途切れている。このように、一つのクローラ２ａの側縁から画像処理によって途中で途切れて二つ以上のエッジ候補が得られる場合がある。また、エッジ候補抽出部６３によってカメラ５が撮影した画像から得られる図６の画像を処理して、エッジ候補を画像として表現すると、エッジ候補Ｅ４，Ｅ５が抽出された図８に示す画像となる。これらエッジ候補Ｅ４，Ｅ５は、カメラ５が撮影したブーム７の縁のエッジである。実際には、エッジ候補抽出部６３は、エッジ候補を直線と始点と終点の座標でなるエッジ情報として抽出するので、図７および図８に示す画像を取得する必要はないが、理解を容易にするために、便宜上、画像化した図を例に説明する。
【００２９】
座標変換部６４は、エッジ候補抽出部６３が抽出したエッジ候補Ｅ１，Ｅ２，Ｅ３の座標をカメラ４が撮影した画像の座標系からクローラ２ａ，２ｂを真上から見下ろす俯瞰画像の座標系へ変換する。また、座標変換部６４は、エッジ候補抽出部６３が抽出したエッジ候補Ｅ４，Ｅ５の座標をカメラ５が撮影した画像の座標系からクローラ２ａ，２ｂを真上から見下ろす俯瞰画像の座標系へ変換する。カメラ４，５の撮影方向が異なり、旋回体３に対して光軸の方位角、俯角、光軸周り角度といった取付角度が異なって取り付けられているので、座標変換部６４は、カメラ４，５の撮影した画像座標をそれぞれ異なる座標変換行列を用いて処理する。座標変換行列は、予めカメラ４に対応するものと、カメラ５に対応するものを算出しておき、座標変換部６４の処理で利用される。カメラ４，５は、クローラ２ａ，２ｂを斜め上方から撮影しているので、クローラ２ａの撮影画像は図３に示すような画像として取得される。座標変換部６４の処理では、エッジ抽出が行われてからエッジ候補の座標を変換するが、座標変換部６４の処理を図３の画像に施すと、図９に示すように、クローラ２ａを真上から見下ろした俯瞰画像が得られる。エッジ候補抽出部６３により抽出されたエッジ候補Ｅ１，Ｅ２，Ｅ３が表示された図７の画像を座標変換部６４による変換処理すると、座標変換されたエッジ候補Ｅ１’，Ｅ２’，Ｅ３’を含む図１０に示す画像が得られる。エッジ候補抽出部６３により抽出されたエッジ候補Ｅ４，Ｅ５が表示された図８の画像を座標変換部６４による変換処理すると、座標変換されたエッジ候補Ｅ４’，Ｅ５’を含む図１１に示す画像が得られる。実際には、この座標変換により、エッジ候補Ｅ１，Ｅ２，Ｅ３，Ｅ４，Ｅ５のエッジ情報における始点と終点の座標が俯瞰画像の座標に変換される。このように、エッジ候補抽出部６３は、エッジ候補を直線の始点と終点の座標でなるエッジ情報として取得するので、座標変換部６４の座標変換処理では、エッジ候補の始点と終点の座標を俯瞰画像の座標系に変換すればよく、変換後にエッジ候補Ｅ１’，Ｅ２’，Ｅ３’，Ｅ４’，Ｅ５’の位置と長さの情報を取得できればよい。
【００３０】
エッジ選択部６５は、図１０の画像に表示されるエッジ候補Ｅ１’，Ｅ２’，Ｅ３’および図１１の画像に表示されるエッジ候補Ｅ４’，Ｅ５’からクローラ２ａ，２ｂのエッジを選択する。つまり、エッジ選択部６５は、二つのカメラ４，５が撮影した画像毎に同様の処理を行ってクローラ２ａ，２ｂのエッジを選択する。具体的には、図１３に示すように、エッジ選択部６５は、予め設定される設定中心Ｏと各エッジ候補Ｅ１’，Ｅ２’，Ｅ３’，Ｅ４’，Ｅ５’までの距離が、設定中心Ｏからクローラ２ａ，２ｂのエッジまでの距離Ｈを中心として閾値αで設定される範囲Ｈ±α内にあるエッジ候補を選ぶ。さらに、エッジ選択部６５は、こうして選ばれたエッジ候補のうち一番長いエッジをクローラ２ａ，２ｂのエッジであるとして選択する。
【００３１】
クローラ２ａ或いはクローラ２ｂの側縁を選択したい部位とすると、旋回体３が走行体２に対して旋回する場合、前記部位は、カメラ４，５で撮影すると或る点を中心としてこの中心から一定の距離を保った位置に撮影されるはずである。
【００３２】
よって、カメラ４でクローラ２ａ，２ｂを撮影しつつ、走行体２に対して旋回体３を３６０度旋回させると、前記中心の座標からカメラ４が撮影したクローラ２ａ或いはクローラ２ｂの側縁までの距離は一定の値となる。これは、カメラ５についても同様である。そして、中心座標は、クローラ２ａの側縁の直線のエッジを走行体２に対する旋回体３の角度を違えて三つ得て求めればよい。なお、二つのエッジからでも中心座標を求められるが、精度向上のため、三つ以上のエッジから中心座標を求めるのが好ましい。図１２に示すように、旋回体３の角度を違えてクローラ２ａを撮影すれば三つのクローラ２ａの縁部の直線のエッジｅ１，ｅ２，ｅ３が分かる。そして、これらの直線のエッジｅ１，ｅ２，ｅ３の内接円Ｉの中心の座標を求めれば、この中心の座標が前述の中心座標となり、この中心座標を設定中心Ｏとする。内接円Ｉの特定には、三つ以上のエッジがあればよい。三つのクローラ２ａの側縁のエッジの抽出には、予め、カメラ４でクローラ２ａを撮影しつつ、走行体２に対して旋回体３を旋回させてクローラ２ａが撮影された画像を取得する。本例では、具体的には、旋回体３の走行体２に対する相対角度を変えて三つのクローラ２ａが撮影された画像を取得する。つづいて、三つのクローラ２ａが撮影された画像を俯瞰画像へ座標変換し、座標変換後の座標中での前記三つの側縁の直線の一次式を得ておき、これらの直線の内接円Ｉを求めて中心座標を得る。そして、このようにして得た中心座標を設定中心Ｏの座標として設定しておき、エッジ選択部６５において、カメラ４で撮影したクローラ２ａの側縁の直線のエッジを選択するための設定中心として利用する。カメラ４でクローラ２ｂを撮影した画像から、クローラ２ｂのエッジを選択する際に使用する設定中心Ｏも前述と同様の手順で予め取得する。また、カメラ５でクローラ２ａ，２ｂで撮影した画像からクローラ２ａ，２ｂのエッジをそれぞれ選択する際に使用する設定中心Ｏも前述と同様の手順で予め取得する。つまり、クローラ２ａ，２ｂのそれぞれについてカメラ４，５で撮影した画像から四つの設定中心Ｏが設定されるが、理論的には、これらの設定中心Ｏは旋回体３の回転中心に一致する。三つの直線から求めた設定中心Ｏが旋回体３の回転中心に対してずれがある場合には、必ずしも設定中心Ｏを旋回体３の回転中心からずれた位置に設定してもよい。ただし、設定中心Ｏの座標が旋回体３の回転中心の座標と大きく乖離するような場合には、カメラ４，５で画像を取得して設定中心Ｏの設定作業を再度行うようにしてもよい。
【００３３】
そして、設定中心Ｏからクローラ２ａ，２ｂまでの距離は、それぞれ内接円Ｉの半径となるので、設定中心Ｏから内接円Ｉの半径だけ離れた位置にある直線のエッジ候補は、クローラ２ａ，２ｂのエッジとなるのが分かる。つまり、この半径を設定中心Ｏからクローラ２ａ，２ｂの側縁まで距離Ｈとすれば、この距離Ｈだけ設定中心Ｏから離れたエッジ候補を選択すれば、選択されたエッジ候補はクローラ２ａ，２ｂのエッジとなるのである。
【００３４】
また、エッジ選択部６５は、この距離Ｈには閾値αが設定されて、閾値αによって設定される範囲、具体的には、Ｈ±αの範囲内に、設定中心Ｏからエッジ候補までの距離があるエッジ候補を選択するようになっている。つまり、エッジ選択部６５は、設定中心Ｏからカメラ４の画像を処理して得たエッジ候補Ｅ１’，Ｅ２’，Ｅ３’までの距離ｈ１，ｈ２，ｈ３を求める。さらに、エッジ選択部６５は、図１３に示すように、この距離ｈ１，ｈ２，ｈ３が図中破線で示す範囲Ｈ±α内にあるエッジ候補Ｅ１’，Ｅ２’を選択する。よって、この処理では、エッジ候補Ｅ３’が選択されずに捨てられる。エッジ選択部６５は、カメラ４で撮影した画像から得られたエッジ候補Ｅ１’，Ｅ２’，Ｅ３’がクローラ２ｂのエッジであるか否かの判断を前述の手順で行う。ここで、設定中心Ｏが旋回中心に一致しており、設定中心Ｏからクローラ２ｂの距離がクローラ２ａの距離が同じである場合、このクローラ２ｂのエッジか否かの判断でもエッジ候補Ｅ１’，Ｅ２’が選択される場合があるが重複して選択されてもよい。カメラ５が撮影した画像から得られたエッジ候補Ｅ４’，Ｅ５’に対してもエッジ選択部６５は同様の処理を行うが、エッジ候補Ｅ４’，Ｅ５’はブーム７のエッジであり設定中心Ｏからの距離が前述の範囲から逸脱するので選択されない。このように、エッジ選択部６５は、複数のエッジ候補Ｅ１’，Ｅ２’，Ｅ３’，Ｅ４’，Ｅ５’と設定中心Ｏとの距離に基づき、この距離が設定中心Ｏから距離Ｈにあるエッジ候補Ｅ１’，Ｅ２’をクローラ２ａ，２ｂのエッジとして選択する。よって、エッジ選択部６５は、複数のエッジ候補からクローラ２ａ，２ｂのエッジを正確に選択できる。また、本例では、設定中心Ｏからエッジ候補の距離が距離Ｈを中心として閾値αで設定される範囲Ｈ±α内にあるエッジ候補を選択している。建設機械Ｃの走行、旋回体３の旋回、ブーム７等の駆動中は、エンジンからの振動や地面の凹凸走行による振動によって、カメラ４，５自体も振動する。カメラ４，５が振動すると撮影画像を処理して得られたエッジ候補の座標も振動によってオフセットされてしまうため、設定中心Ｏからのエッジ候補までの距離と実際の距離との間に誤差が生じる。しなしながら、本例では、設定中心Ｏからエッジ候補の距離が距離Ｈを中心として閾値αで設定される範囲Ｈ±α内にあるエッジ候補を選択しており、閾値αで振動による誤差分を吸収してカメラ４，５が振動してもクローラ２ａ，２ｂのエッジを正確に選択できる。なお、距離Ｈは、カメラ４とカメラ５についてクローラ２ａとクローラ２ｂに対して別々に設定され、閾値αも、カメラ４とカメラ５についてクローラ２ａとクローラ２ｂに対して別々に設定されるので、それぞれ四つの距離Ｈと閾値αが設定される。
【００３５】
そして、エッジ選択部６５は、前述のように選択されたエッジ候補Ｅ１’，Ｅ２’のうち、一番長いものをエッジとして選択する。一番長いエッジ候補Ｅ１’をクローラ２ａ，２ｂのエッジとして選択すると、クローラ２ａ，２ｂのエッジの誤選択を防止でき、より確実にクローラ２ａ，２ｂのエッジの選択が可能となる。つまり、エッジ画像取得部６２、エッジ候補抽出部６３、座標変換部６４およびエッジ選択部６５の処理を行うと、角度検出に利用する部位であるクローラ２ａ，２ｂのエッジが検出されるのである。
【００３６】
つづいて、角度演算部６６は、エッジ選択部６５により選択されたエッジから走行体２に対する旋回体３の相対角度を検出する。具体的には、角度演算部６６は、図１４に示すように、画像の垂直軸Ｖから時計回りに見て選択されたエッジＥ１’までの間の角度θＡを求める。図１４中でエッジを延長すると延長されたエッジと画像の縁との交点によって、延長されたエッジの画像内での高さｘと幅ｙが求まるので、この高さｘと幅ｙからθＡ＝ｔａｎ−１（ｙ／ｘ）を演算してθＡが求まる。カメラ４を旋回体３に対して方位角を９０度として取り付ければ、つまり、旋回体３の中心から前方へ向けた仮想線に対してカメラ４の光軸が直交するようにカメラ４を旋回体３に配置して取り付ければ、求めたθＡ−９０度が走行体２に対する旋回体３の相対角度θとなる。
【００３７】
カメラ５によって撮影された画像に含まれるエッジ候補がエッジとして選択されて場合も同様に、エッジを延長して画像内での高さｘと幅ｙを利用してθＢをθＢ＝ｔａｎ−１（ｙ／ｘ）を演算して求め得る。カメラ５の場合、カメラ４と方位角が異なっているため、カメラ４とカメラ５の方位角にはθａｂだけずれがある。よって、θＢからθａｂを差し引けば、θＡが求められ、θＡから走行体２に対する旋回体３の相対角度θが求められる。
【００３８】
θａｂの求め方は、カメラ４，５でクローラ２ａの側縁を撮影し、撮影によって得られた画像を処理してクローラ２ａの側縁をエッジとし、図１５、図１６に示すように、画像中の垂直軸とエッジのなす角度θａ，θｂを求め、これらの角度差をθａｂとすればよい。つまり、θａｂ＝θｂ−θａを演算すればθａｂが求まる。なお、カメラ４の旋回体３に対する方位角が０度でない場合、旋回体３を走行体２に対して９０度旋回させて、カメラ４でクローラ２ａ或いはクローラ２ｂを撮影してクローラ２ａ或いはクローラ２ｂのエッジと垂直軸とのなす角度を求める。このようにして求めた角度から９０度を差し引いた角度がカメラ４の方位角となる。なお、カメラ５の方位角を求めてからカメラ４，５の角度差θａｂを求めてもよい。
【００３９】
また、本例では、角度演算部６６によって検出された相対角度θは、走行体２の前方の向きを矢印で示す等といった走行体２の前方の向きがオペレータに理解できる態様でモニタ６７の画面に表示されるようになっている。
【００４０】
本実施の形態における角度検出装置１のハードウェア資源の構成について説明すると、この角度検出装置１は、図１７に示すように、ハードウェアとしてはカメラ４，５と、モニタ６７と、カメラ４，５から入力される信号を増幅する増幅器とアナログ／デジタル変換器を含んで構成される画像インターフェース７０と、モニタ６７へ信号を出力するためのインターフェース７１と、角度検出部６における処理を実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）７２と、前述の角度検出部６における処理を行うためＣＰＵ７２が実行するアプリケーションやオペレーティングシステム等のプログラムを格納するＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）７３と、上記ＣＰＵ７２に記憶領域を提供するＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）７４とを備えて構成されている。なお、角度検出部６の各部における構成は、ＣＰＵ７２の角度検出部６の処理を行うためアプリケーションプログラムの実行により実現できる。
【００４１】
以上、建設機械Ｃの角度検出装置１の構成について説明したが、以下、角度検出装置１の角度検出処理手順を図１８のフローチャートの一例に基づいて説明する。
【００４２】
まず、角度検出装置１で相対角度θを得る準備のため、カメラ４，５で撮影される画像の歪を取り除くキャリブレーション処理を行う（ステップＳ１）。つづいて、カメラ４，５で撮影した画像の座標系を俯瞰画像の座標系へ変換するための座標変換行列を求める（ステップＳ２）。
【００４３】
つづいて、旋回体３を走行体２に対して旋回させて、カメラ４，５でクローラ２ａ，２ｂを撮影した画像を取得し、設定中心Ｏと、設定中心Ｏからクローラ２ａ，２ｂの側縁までの距離Ｈを求める（ステップＳ３）。
【００４４】
さらに、クローラ２ａ或いはクローラ２ｂを双方のカメラ４，５で同時に撮影し、クローラ２ａ或いはクローラ２ｂの側縁のエッジと画像の垂直軸とのなす角度を求め、カメラ４，５の方位角における角度差θａｂを求める（ステップＳ４）。
【００４５】
以上までの処理で、角度検出装置１で相対角度θを得る準備が終了し、これ以降の処理は、実際に角度検出を行う処理となる。角度検出のため、まず、カメラ４，５で撮影範囲を撮影し、クローラ２ａ，２ｂの画像を得る（ステップＳ５）。このステップＳ５のカメラ４，５で角度検出に利用する走行体２の部位を撮影する処理が撮影ステップとなる。
【００４６】
次に、カメラ４，５で撮影した画像からエッジ画像処理を行ってエッジを抽出する（ステップＳ６）。そして、得られたエッジから直線のエッジをクローラ２ａ，２ｂのエッジ候補とし、これらエッジ候補の始点と終点の座標でなるエッジ情報を取得する（ステップＳ７）。次に、エッジ候補の座標を俯瞰画像の座標系における座標へ変換する（ステップＳ８）。
【００４７】
さらに、座標変換後のエッジ候補と設定中心Ｏまでの距離を求め、この距離がＨ±αの範囲内にあるエッジをクローラ２ａ，２ｂのエッジとして選択する（ステップＳ９）。なお、この処理において、得られたエッジが複数ある場合は、これらエッジの中から一番長いエッジを選択する。
【００４８】
そして、カメラ４，５で撮影した画像をエッジ画像処理し、クローラ２ａ，２ｂのエッジの候補となるエッジ候補を抽出し、俯瞰画像への座標変換処理後、得られたエッジ候補からエッジを選択するまでの処理でクローラ２ａ，２ｂのエッジが検出され、これら一連の処理がエッジ検出ステップとなる。
【００４９】
そして、選択されたエッジと画像内において垂直軸となす角度を求め、相対角度θを求める（ステップＳ１０）。この処理において、エッジがカメラ４によって撮影された画像処理によって得られる場合、得られた角度θＡを走行体２に対する旋回体３の相対角度θとする。また、エッジがカメラ５によって撮影された画像処理によって得られる場合、得られた角度θＢからカメラ４，５の方位角度差θａｂを差し引いて得た角度を走行体２に対する旋回体３の相対角度θとする。このステップＳ１０の処理が角度検出ステップとなる。
【００５０】
以上、ステップＳ５からステップＳ１０までの処理を所定周期で繰り返し行って、相対角度θを連続して検出可能である。
【００５１】
このように構成された角度検出装置１は、走行体２に対して旋回可能な旋回体３に設置され走行体２を撮影するカメラ４，５で撮影した画像から走行体２の予め決められた部位のエッジを検出し、走行体２に対する旋回体３の相対角度θを求める。このように構成された角度検出装置１は、カメラ４，５で撮影した連続画像からではなく、一つの画像から相対角度θを検出できるので、時間をかけずにタイムリーに角度検出できる。また、このように構成された角度検出装置１は、走行体２の決められた部位のエッジを検出し、このエッジを利用して相対角度θを検出するので、建設機械Ｃ以外の被写体を用いないで角度検出でき、正確に相対角度θを検出できる。さらに、角度検出装置１は、センサ類を用いないので、センサ類の故障の心配もなく、建設機械Ｃに容易に後付で設置可能である。よって、本発明の角度検出装置１は、後付が容易で故障の心配もなく、正確かつタイムリーに走行体２に対する旋回体３の相対角度θを検知可能である。なお、角度検出に利用するエッジは、クローラ２ａ，２ｂの側縁に限られず、走行体２の前方に設置されるブレード（排土板）のように直線の縁を持つような部位を角度検出に利用してもよい。つまり、角度検出に利用する部位は、走行体２の各部のうち予め決めておけばよく、クローラ２ａ，２ｂ以外に前述のブレードその他の部分としてもよい。また、部位は、走行体２の一箇所だけでなく、本例のようにクローラ２ａ，２ｂの二箇所を角度検出に利用する部位として指定すると、カメラの設置台数を少なくできる。つまり、本例では、走行体２の両側に設けたクローラ２ａ，２ｂの二つの側縁を角度検出に利用する部位として決めているので、二つのカメラ４，５の設置で走行体２に対する旋回体３の相対角度θを全周３６０度の角度検出が可能である。なお、片方のクローラ２ａのみを部位として決定した場合、旋回体３に画角によるが四台のカメラの設置が必要となるので、走行体２の複数個所を部位として指定するとカメラ設置台数を少なくできる利点がある。
【００５２】
また、本例の角度検出装置１にあっては、画像から得られるエッジ候補と予め設定される設定中心Ｏとの距離に基づいて、エッジ候補中から角度検出に利用するエッジを選択するので、正確に角度検出に利用する部位のエッジを選択できる。よって、本例の角度検出装置１にあっては、走行体２に対する旋回体３の相対角度θを精度よく検出できる。
【００５３】
さらに、本例の角度検出装置１にあっては、設定中心Ｏを走行体２に対する旋回体３の回転中心とする場合、設定中心Ｏを設定する作業を省略できる。
【００５４】
また、本例の角度検出装置１にあっては、旋回体３の走行体２に対する相対角度を変えてカメラ４，５で撮影した走行体２の部位の三つ以上のエッジに基づいて設定中心Ｏを設定するようになっている。このように角度検出装置１が構成されると、設定中心Ｏをカメラ毎に角度検出に利用する部位毎に設定でき、キャリブレーションや各種演算誤差等を含んで最適な設定中心Ｏを設定できる。
【００５５】
そして、本例の角度検出装置１にあっては、設定中心Ｏから部位までの距離Ｈを中心として閾値αを設定し、エッジ候補と設定中心Ｏとの距離が閾値αで設定される範囲Ｈ±α内にあるエッジ候補をエッジとするようになっている。そのため、複数抽出されるエッジ候補の中から精度良く前記部位のエッジのみを選択できる。
【００５６】
また、本例の角度検出装置１にあっては、旋回体の前方に設置される第一のカメラ５と旋回体の左右いずれか一方に設置される第二のカメラ４を備えているので、走行体２に対する旋回体３の相対角度θのうち検出できない相対角度範囲が発生せず、シームレスに相対角度θを検出可能である。具体的には、シームレスに相対角度θを検出するには、走行体２に対して旋回体３を３６０度旋回させた場合に少なくとも一つのカメラが角度検出に利用する部位を撮影できるようにカメラを設置台数と旋回体３への設置個所を決定すればよい。
【００５７】
また、本例では、走行体２がクローラであり、クローラ２ａ，２ｂの側縁のエッジを検出するようになっている。クローラ２ａ，２ｂの側縁のエッジは、長い直線であり、複数のエッジ候補が得られた場合でもクローラ２ａ，２ｂのエッジを認識しやすく、クローラ２ａ，２ｂのエッジを高確度で抽出できる。よって、本例の角度検出装置では、高精度の角度検出が可能となる。
【００５８】
さらに、本例の角度検出方法にあっては、走行体２に対して旋回可能な旋回体３に設けたカメラ４，５で前記走行体を撮影する撮影ステップと、撮影ステップにより得られた画像を処理して走行体２の予め決められた部位のエッジを検出するエッジ検出ステップと、得られたエッジから走行体２に対する旋回体３の相対角度θを求める角度検出ステップとを備えている。このように構成された角度検出方法にあっては、カメラ４，５で撮影した連続画像からではなく、一つの画像から相対角度θを検出できるので、時間をかけずにタイムリーに角度検出できる。また、このように構成された角度検出方法は、走行体２の決められた部位のエッジを検出し、このエッジを利用して相対角度θを検出するので、建設機械Ｃ以外の被写体を用いないで角度検出でき、正確に相対角度θを検出できる。さらに、角度検出方法は、センサ類を用いないので、センサ類の故障の心配もなく、建設機械Ｃにカメラの後付設置で角度検出可能である。よって、本発明の角度検出方法は、建設機械Ｃへのカメラの後付設置による角度検出を可能とし、容易で故障の心配もなく、正確かつタイムリーに走行体２に対する旋回体３の相対角度θを検知できる。
【００５９】
以上で、本発明の実施の形態についての説明を終えるが、本発明の範囲は図示されまたは説明された詳細そのものには限定されないのは勿論である。
【符号の説明】
【００６０】
１・・・角度検出装置、２・・・走行体、２ａ，２ｂ・・・クローラ（部位）、３・・・旋回体、４，５・・・カメラ、６・・・角度検出部
【図１】
0006578170.tif 000002
【図２】
0006578170.tif 000003
【図３】
0006578170.tif 000004
【図４】
0006578170.tif 000005
【図５】
0006578170.tif 000006
【図６】
0006578170.tif 000007
【図７】
0006578170.tif 000008
【図８】
0006578170.tif 000009
【図９】
0006578170.tif 000010
【図１０】
0006578170.tif 000011
【図１１】
0006578170.tif 000012
【図１２】
0006578170.tif 000013
【図１３】
0006578170.tif 000014
【図１４】
0006578170.tif 000015
【図１５】
0006578170.tif 000016
【図１６】
0006578170.tif 000017
【図１７】
0006578170.tif 000018
【図１８】
0006578170.tif 000019