以下、本発明に係る実施形態について図面を参照しながら説明するが、本発明はこれに限定されない。以下で説明する実施形態の構成要素は適宜組み合わせることができる。また、一部の構成要素を用いない場合もある。
以下の説明においては、三次元の現場座標系(Xg,Yg,Zg)、三次元の車体座標系(Xm,Ym,Zm)、及び三次元の撮像装置座標系(Xs,Ys,Zs)を規定して、各部の位置関係について説明する。
現場座標系は、地球に固定された原点を基準とする座標系である。現場座標系は、GNSS(Global Navigation Satellite System)によって規定される座標系である。GNSSとは、全地球航法衛星システムをいう。全地球航法衛星システムの一例として、GPS(Global Positioning System)が挙げられる。
現場座標系は、水平面のXg軸と、Xg軸と直交する水平面のYg軸と、Xg軸及びYg軸と直交するZg軸とによって規定される。Xg軸を中心とする回転又は傾斜方向をθXg方向とし、Yg軸を中心とする回転又は傾斜方向をθYg方向とし、Zg軸を中心とする回転又は傾斜方向をθZg方向とする。Zg軸方向は鉛直方向である。
車体座標系は、作業機械の車体に規定された原点を基準とする第1所定面のXm軸と、Xm軸と直交する第1所定面のYm軸と、Xm軸及びYm軸と直交するZm軸とによって規定される。Xm軸を中心とする回転又は傾斜方向をθXm方向とし、Ym軸を中心とする回転又は傾斜方向をθYm方向とし、Zm軸を中心とする回転又は傾斜方向をθZm方向とする。Xm軸方向は作業機械の前後方向であり、Ym軸方向は作業機械の車幅方向であり、Zm軸方向は作業機械の上下方向である。
撮像装置座標系は、撮像装置に規定された原点を基準とする第2所定面のXs軸と、Xs軸と直交する第2所定面のYs軸と、Xs軸及びYs軸と直交するZs軸とによって規定される。Xs軸を中心とする回転又は傾斜方向をθXs方向とし、Ys軸を中心とする回転又は傾斜方向をθYs方向とし、Zs軸を中心とする回転又は傾斜方向をθZs方向とする。Xs軸方向は撮像装置の上下方向であり、Ys軸方向は撮像装置の幅方向であり、Zs軸方向は撮像装置の前後方向である。Zs軸方向は撮像装置の光学系の光軸と平行である。
現場座標系における位置と、車体座標系における位置と、撮像装置座標系における位置とは、相互に変換可能である。
第1実施形態.
[作業機械]
図1は、本実施形態に係る作業機械1の一例を示す斜視図である。本実施形態においては、作業機械1が油圧ショベルである例について説明する。以下の説明においては、作業機械1を適宜、油圧ショベル1、と称する。
図1に示すように、油圧ショベル1は、車体1Bと、作業機2とを有する。車体1Bは、旋回体3と、旋回体3を旋回可能に支持する走行体5とを有する。
旋回体3は、運転室4を有する。油圧ポンプ及び内燃機関が旋回体3に配置される。旋回体3は、旋回軸Zrを中心に旋回可能である。旋回軸Zrは、車体座標系のZm軸と平行である。車体座標系の原点は、例えば旋回体3のスイングサークルの中心に規定される。スイングサークルの中心は、旋回体3の旋回軸Zrに位置する。
走行体5は、履帯5A,5Bを有する。履帯5A,5Bが回転することにより、油圧ショベル1が走行する。車体座標系のZm軸は、履帯5A,5Bの接地面と直交する。車体座標系の上方(+Zm方向)は、履帯5A,5Bの接地面から離れる方向であり、車体座標系の下方(−Zm方向)は、車体座標系の上方とは反対の方向である。
作業機2は、旋回体3に連結される。車体座標系において、作業機2の少なくとも一部は、旋回体3よりも前方に配置される。車体座標系の前方(+Xm方向)は、旋回体3を基準として作業機2が存在する方向であり、車体座標系の後方(−Xm方向)は、車体座標系の前方とは反対の方向である。
作業機2は、旋回体3に連結されるブーム6と、ブーム6に連結されるアーム7と、アーム7に連結されるバケット8と、ブーム6を駆動するブームシリンダ10と、アーム7を駆動するアームシリンダ11と、バケット8を駆動するバケットシリンダ12とを有する。ブームシリンダ10、アームシリンダ11、及びバケットシリンダ12はそれぞれ、油圧によって駆動される油圧シリンダである。
また、油圧ショベル1は、旋回体3の位置を検出する位置検出装置23と、旋回体3の姿勢を検出する姿勢検出装置24と、制御装置40とを有する。
位置検出装置23は、現場座標系における旋回体3の位置を検出する。位置検出装置23は、油圧ショベル1の位置を検出する位置検出部として機能する。旋回体3の位置は、Xg軸方向の座標、Yg軸方向の座標、及びZg軸方向の座標を含む。位置検出装置23は、GPS受信機を含む。位置検出装置23は、旋回体3に設けられる。
GPSアンテナ21が旋回体3に設けられる。GPSアンテナ21は、例えば車体座標系のYm軸方向に2つ配置される。GPSアンテナ21は、GPS衛星から電波を受信して、受信した電波に基づいて生成した信号を位置検出装置23に出力する。位置検出装置23は、GPSアンテナ21からの信号に基づいて、現場座標系におけるGPSアンテナ21の位置を検出する。
位置検出装置23は、2つのGPSアンテナ21の位置の少なくとも一方に基づいて演算処理を実施して、旋回体3の位置を算出する。旋回体3の位置は、一方のGPSアンテナ21の位置でもよいし、一方のGPSアンテナ21の位置と他方のGPSアンテナ21の位置との間の位置でもよい。
姿勢検出装置24は、現場座標系における旋回体3の姿勢を検出する。姿勢検出装置24は、油圧ショベル1の姿勢を検出する姿勢検出部として機能する。旋回体3の姿勢は、Xm軸を中心とする回転方向における旋回体3の傾斜角度を示すロール角と、Ym軸を中心とする回転方向における旋回体3の傾斜角度を示すピッチ角と、Zm軸と中心とする回転方向における旋回体3の傾斜角度を示す方位角とを含む。姿勢検出装置24は、慣性計測装置(IMU:Inertial Measurement Unit)を含む。姿勢検出装置24は、旋回体3に設けられる。なお、姿勢検出装置24としてジャイロセンサが旋回体3に搭載されてもよい。
姿勢検出装置24は、姿勢検出装置24に作用する加速度及び角速度を検出する。姿勢検出装置24に作用する加速度及び角速度が検出されることにより、旋回体3に作用する加速度及び角速度が検出される。姿勢検出装置24は、旋回体3に作用する加速度及び角速度に基づいて演算処理を実施して、ロール角、ピッチ角、及び方位角を含む旋回体3の姿勢を算出する。
なお、位置検出装置23の検出データに基づいて方位角が算出されてもよい。位置検出装置23は、一方のGPSアンテナ21の位置と他方のGPSアンテナ21の位置とに基づいて、現場座標系における基準方位に対する旋回体3の方位角を算出することができる。基準方位は、例えば北である。位置検出装置23は、一方のGPSアンテナ21の位置と他方のGPSアンテナ21の位置とを結ぶ直線を算出し、算出した直線と基準方位とがなす角度に基づいて、基準方位に対する旋回体3の方位角を算出することができる。
次に、本実施形態に係るステレオカメラ300について説明する。図2は、本実施形態に係る油圧ショベル1の一部を示す斜視図である。図2に示すように、油圧ショベル1は、ステレオカメラ300を有する。ステレオカメラ300とは、施工対象SBを複数の方向から同時に撮影して視差データを生成することにより、施工対象SBまでの距離を計測可能なカメラをいう。
ステレオカメラ300は、油圧ショベル1の周辺の施工対象SBを撮影する。施工対象SBは、油圧ショベル1の作業機2で掘削される掘削対象を含む。なお、施工対象SBは、油圧ショベル1とは別の作業機械によって施工される施工対象でもよいし、作業者によって施工される施工対象でもよい。また、施工対象SBは、施工前の施工対象、施工中の施工対象、及び施工後の施工対象を含む概念である。
ステレオカメラ300は、旋回体3に搭載される。ステレオカメラ300は、運転室4に設けられる。ステレオカメラ300は、運転室4の前方(+Xm方向)かつ上方(+Zm方向)に配置される。ステレオカメラ300は、油圧ショベル1の前方の施工対象SBを撮影する。
ステレオカメラ300は、複数の撮像装置30を有する。撮像装置30は、旋回体3に搭載される。撮像装置30は、光学系と、イメージセンサとを有する。イメージセンサは、CCD(Couple Charged Device)イメージセンサ又はCMOS(Complementary Metal Oxide Semiconductor)イメージセンサを含む。本実施形態において、撮像装置30は、4つの撮像装置30A,30B,30C,30Dを含む。
一対の撮像装置30によってステレオカメラ300が構成される。ステレオカメラ300は、一対の撮像装置30A,30Bによって構成される第1ステレオカメラ301と、一対の撮像装置30C,30Dによって構成される第2ステレオカメラ302とを含む。
撮像装置30A,30Cは、撮像装置30B,30Dよりも+Ym側(作業機2側)に配置される。撮像装置30Aと撮像装置30Bとは、Ym軸方向に間隔をあけて配置される。撮像装置30Cと撮像装置30Dとは、Ym軸方向に間隔をあけて配置される。撮像装置30A,30Bは、撮像装置30C,30Dよりも+Zm側に配置される。Zm軸方向において、撮像装置30Aと撮像装置30Bとは、実質的に同一の位置に配置される。Zm軸方向において、撮像装置30Cと撮像装置30Dとは、実質的に同一の位置に配置される。
撮像装置30A,30Bは、上方(+Zm方向)を向く。撮像装置30C,30Dは、下方(−Zm方向)を向く。また、撮像装置30A,30Cは、前方(+Xm方向)を向く。撮像装置30B,30Dは、前方よりも僅かに+Ym側(作業機2側)を向く。すなわち、撮像装置30A,30Cは、旋回体3の正面を向き、撮像装置30B,30Dは、撮像装置30A,30C側を向く。なお、撮像装置30B,30Dが旋回体3の正面を向き、撮像装置30A,30Cが撮像装置30B,30D側を向いてもよい。
撮像装置30は、旋回体3の前方に存在する施工対象SBを撮影する。一対の撮像装置30が撮影した一対の画像が制御装置40においてステレオ処理されることにより、施工対象SBの三次元形状を示す三次元データが算出される。制御装置40は、撮像装置座標系における施工対象SBの三次元データを現場座標系における施工対象SBの三次元データに変換する。三次元データは、施工対象SBの三次元位置を示す。施工対象SBの三次元位置は、施工対象SBの表面の複数の部位のそれぞれの三次元座標を含む。
複数の撮像装置30のそれぞれに撮像装置座標系が規定される。撮像装置座標系は、撮像装置30に固定された原点を基準とする座標系である。撮像装置座標系のZs軸は、撮像装置30の光学系の光軸と一致する。
なお、本実施形態においては、旋回体3に2組のステレオカメラ(第1ステレオカメラ301及び第2ステレオカメラ302)が搭載されることとするが、1組のステレオカメラが搭載されてもよいし、3組以上のステレオカメラが搭載されてもよい。
また、図2に示すように、油圧ショベル1は、運転席4Sと、入力装置32と、操作装置35とを有する。運転席4S、入力装置32、及び操作装置35は、運転室4に配置される。油圧ショベル1の運転者は、運転席4Sに着座する。
入力装置32は、撮像装置30による撮影の開始又は終了のために運転者に操作される。入力装置32は、運転席4Sの近傍に設けられる。入力装置32が操作されることにより、撮像装置30による撮影が開始又は終了する。
操作装置35は、作業機2の駆動又は駆動停止、旋回体3の旋回又は旋回停止、及び走行体5の走行又は走行停止のために運転者に操作される。操作装置35は、作業機2及び旋回体3を操作するための右操作レバー35R及び左操作レバー35Lを含む。また、操作装置35は、走行体5を操作するための右走行レバー及び左走行レバー(不図示)を含む。操作装置35が操作されることにより、作業機2の駆動又は駆動停止、旋回体3の旋回又は旋回停止、及び走行体5の走行又は走行停止が実施される。
[計測システム]
次に、本実施形態に係る計測システム50について説明する。図3は、本実施形態に係る計測システム50の一例を示す機能ブロック図である。計測システム50は、油圧ショベル1に設けられる。
計測システム50は、制御装置40と、第1ステレオカメラ301及び第2ステレオカメラ302を含むステレオカメラ300と、位置検出装置23と、姿勢検出装置24と、操作装置35の操作量を検出する操作量センサ36と、入力装置32とを備える。
制御装置40は、油圧ショベル1の旋回体3に設けられる。制御装置40は、コンピュータシステムを含む。制御装置40は、CPU(Central Processing Unit)のようなプロセッサを含む演算処理装置41と、RAM(Random Access Memory)のような揮発性メモリ及びROM(Read Only Memory)のような不揮発性メモリを含む記憶装置42と、入出力インターフェース43とを有する。
演算処理装置41は、画像取得部410と、信号取得部411と、画像処理部412と、共通部分抽出部413と、撮像位置算出部416と、三次元位置算出部417と、判定部418とを有する。
画像取得部410は、油圧ショベル1の動作中に旋回体3に搭載された撮像装置30によって撮影された施工対象SBの複数の画像PCを取得する。また、画像取得部410は、油圧ショベル1が動作停止状態、すなわち走行も旋回も停止した状態において撮像装置30によって撮影された施工対象SBの画像PCを取得する。
油圧ショベル1が動作中とは、旋回体3が旋回中であること及び走行体5が走行中であることの一方又は両方を含む。油圧ショベル1が動作停止中とは、旋回体3が旋回停止中であること及び走行体5が走行停止中であることを含む。
画像取得部410は、走行体5が走行停止中であり旋回体3が旋回中に撮像装置30によって撮影された対象SBの複数の画像PCを取得する。また、画像取得部410は、走行体5が走行停止中であり旋回体3が旋回停止中において撮像装置30によって撮影された対象SBの画像PCを取得する。
信号取得部411は、入力装置32が操作されることにより生成された指令信号を取得する。入力装置32は、撮像装置30による撮影の開始又は終了のために操作される。指令信号は、撮影開始指令信号及び撮影終了指令信号を含む。演算処理装置41は、信号取得部411に取得された撮影開始指令信号に基づいて、撮像装置30に撮影を開始させる制御信号を出力する。また、演算処理装置41は、信号取得部411に取得された撮影終了指令信号に基づいて、撮像装置30に撮影を終了させる制御信号を出力する。
なお、信号取得部411が撮影開始指令信号を取得した時点と撮影終了指令信号を取得した時点との期間に撮影された画像PCが記憶装置42に記憶され、その記憶装置42に記憶されている画像PCがステレオ処理に使用されてもよい。
画像処理部412は、画像取得部410に取得された画像PCのコントラスト分布を補正する。画像処理部412は、ヒストグラム補正方法の一種であるヒストグラム平坦化アルゴリズム(Histogram Equalization Algorithm)に基づいて画像PCのコントラスト分布を補正する。ヒストグラム平坦化とは、画像PCのそれぞれの画素の階調と頻度との関係を示すヒストグラムが階調の全域に亘って均等に分布するように画像PCを変換する処理をいう。画像処理部412は、ヒストグラム平坦化アルゴリズムに基づいて画像処理を実施して、コントラストが改善された画像PCを生成する。画像処理部412は、画像PCのそれぞれの画素の輝度(Luminance)を補正して、画像PCのコントラストを向上させる。
共通部分抽出部413は、油圧ショベル1の旋回体3の旋回中において撮像装置30によって撮影された複数の画像PCの共通部分KSを抽出する。共通部分KSについては後述する。
撮像位置算出部416は、撮影時の撮像装置30の位置P及び姿勢を算出する。旋回体3が旋回中である場合、撮影時の撮像装置30の位置Pは、旋回方向RDの撮像装置30の位置を含む。走行体5が走行状態である場合、撮影時の撮像装置30の位置Pは、走行方向MDの撮像装置30の位置を含む。また、撮像位置算出部416は、旋回体3の旋回角度θを算出する。撮像位置算出部416は、位置検出装置23により検出された油圧ショベル1の位置データ、姿勢検出装置24により検出された油圧ショベル1の姿勢データ、及び共通部分抽出部413に抽出された共通部分KSに基づいて、画像PCが撮影された時点における撮影装置30の位置P及び姿勢を算出する。
三次元位置算出部417は、一対の撮像装置30によって撮影された一対の画像PCをステレオ処理することにより、撮像装置座標系における施工対象SBの三次元位置を算出する。三次元位置算出部417は、撮像位置算出部416に算出された撮像装置30の位置P及び姿勢に基づいて、撮像装置座標系における施工対象SBの三次元位置を現場座標系における施工対象SBの三次元位置に変換する。
記憶装置42は、画像記憶部423を有する。画像記憶部423は、撮像装置30によって撮影された複数の画像PCを順次記憶する。
入出力インターフェース43は、演算処理装置41及び記憶装置42と外部機器とを接続するインターフェース回路を含む。入出力インターフェース43には、ハブ31、位置検出装置23、姿勢検出装置24、操作量センサ36、入力装置32が接続される。
複数の撮像装置30(30A,30B,30C,30D)は、ハブ31を介して演算処理装置41と接続される。撮像装置30は、信号取得部411からの撮影開始指令信号に基づいて、施工対象SBの画像PCを撮影する。撮像装置30が撮影した施工対象SBの画像PCは、ハブ31及び入出力インターフェース43を介して演算処理装置41及び記憶装置42のそれぞれに入力される。画像取得部410及び画像記憶部423のそれぞれは、撮像装置30が撮影した施工対象SBの画像PCを、ハブ31及び入出力インターフェース43を介して取得する。なお、ハブ31は省略されてもよい。
入力装置32は、撮像装置30による撮影の開始又は終了のために操作される。入力装置32が操作されることにより、撮影開始指令信号又は撮影終了指令信号が生成される。入力装置32として、操作スイッチ、操作ボタン、タッチパネル、音声入力、及びキーボードの少なくとも一つが例示される。
[旋回地形計測]
次に、本実施形態に係る油圧ショベル1の動作の一例について説明する。図4は、本実施形態に係る油圧ショベル1の動作の一例を模式的に示す図である。計測システム50は、旋回体3が旋回中において撮像装置30によって油圧ショベル1の周辺の施工対象SBの画像PCを連続撮影する。撮像装置30は、旋回体3が旋回中において、所定の周期で施工対象SBの画像PCを順次撮影する。
撮像装置30は、旋回体3に搭載されている。旋回体3が旋回することにより、撮像装置30の撮影領域FMは、旋回方向RDに移動する。旋回体3が旋回中において撮像装置30が施工対象SBの画像PCを連続撮影することによって、撮像装置30は、施工対象SBの複数の領域のそれぞれの画像PCを取得することができる。三次元位置算出部417は、一対の撮像装置30で撮影された一対の画像PCをステレオ処理することにより、油圧ショベル1の周辺の施工対象SBの三次元位置を算出することができる。
ステレオ処理により算出された施工対象SBの三次元位置は、撮像装置座標系において規定される。三次元位置算出部417は、撮像装置座標系における三次元位置を現場座標系における三次元位置に変換する。撮像装置座標系における三次元位置を現場座標系における三次元位置に変換するため、現場座標系における旋回体3の位置及び姿勢が必要となる。現場座標系における旋回体3の位置及び姿勢は、位置検出装置23及び姿勢検出装置24によって検出可能である。
油圧ショベル1が旋回中において、油圧ショベル1に搭載されている位置検出装置23及び姿勢検出装置24のそれぞれは変位する。動いている状態の位置検出装置23及び姿勢検出装置24のそれぞれから出力される検出データは、不安定であったり検出精度が低下したりする可能性がある。
位置検出装置23は、所定の周期で検出データを出力する。そのため、油圧ショベル1が旋回中において位置検出装置23による位置の検出と撮像装置30による撮影とが並行して実施される場合、位置検出装置23が動いていると、撮像装置30が画像を撮影するタイミングと位置検出装置23が位置を検出するタイミングとが同期しない可能性がある。撮影のタイミングとは異なるタイミングで検出された位置検出装置23の検出データに基づいて施工対象SBの三次元位置が座標変換されると、三次元位置の計測精度が低下する可能性がある。
本実施形態において、計測システム50は、後述する方法に基づいて、旋回体3が旋回中において撮像装置30によって画像PCが撮影された時点における旋回体3の位置及び姿勢を高精度に算出する。これにより、計測システム50は、現場座標系における施工対象SBの三次元位置を高精度に算出することができる。
撮像位置算出部416は、油圧ショベル1が動作停止状態において検出された位置検出装置23及び姿勢検出装置24のそれぞれの検出データを取得する。油圧ショベル1が動作停止状態において位置検出装置23及び姿勢検出装置24によって検出された検出データは安定している可能性が高い。撮像位置算出部416は、旋回体3の旋回開始前及び旋回終了後のそれぞれの動作停止状態において検出された検出データを取得する。撮像装置30は、旋回体3の旋回開始前及び旋回終了後のそれぞれの動作停止状態において施工対象SBの画像PCを撮影する。撮像位置算出部416は、油圧ショベル1が動作停止状態において取得された位置検出装置23及び姿勢検出装置24のそれぞれの検出データに基づいて、油圧ショベル1が動作停止状態において撮影された画像PCから算出された撮像装置座標系における施工対象SBの三次元位置を現場座標系における三次元位置に変換する。
一方、撮像位置算出部416は、旋回体3が旋回中において撮像装置30によって施工対象SBの画像PCが撮影された場合、後述する方法に基づいて、旋回体3が旋回中において撮像装置30によって画像PCが撮影した時点における旋回体3の位置及び姿勢を算出する。撮像位置算出部416は、算出された旋回体3の位置及び姿勢に基づいて、撮影された画像PCから算出された撮像装置座標系における三次元位置を現場座標系における三次元位置に変換する。
図5は、本実施形態に係る計測システム50の動作の一例を模式的に示す図である。図5は、旋回体3が旋回中において撮像装置30が施工対象SBを撮影することを説明するための模式図である。
以下の説明においては、走行体5が走行停止状態であることとする。図5に示すように、旋回体3が旋回することにより、旋回体3に搭載されている撮像装置30及び撮像装置30の撮影領域FMは、旋回方向RDに移動する。撮像装置30の撮影領域FMは、撮像装置30の光学系の視野に基づいて規定される。撮像装置30は、撮影領域FMに配置される施工対象SBの画像PCを取得する。旋回体3の旋回により、撮像装置30の撮影領域FMは、旋回体3の旋回方向RDに移動する。撮像装置30は、移動する撮影領域FMに順次配置される施工対象SBの画像PCを撮影する。
図5は、旋回体3の旋回により、撮影領域FMが旋回方向RDに、撮影領域FM1、撮影領域FM2、及び撮影領域FM3の順に移動する例を示す。撮影領域FM1は、旋回方向RDにおける第1位置PJ1に規定される。撮影領域FM2は、旋回方向RDにおける第2位置PJ2に規定される。撮影領域FM3は、旋回方向RDにおける第3位置PJ3に規定される。第2位置PJ2は、第1位置PJ1から旋回角度Δθ1だけ旋回した位置である。第3位置PJ3は、第2位置PJ2から旋回角度Δθ2だけ旋回した位置である。撮像装置30は、撮影領域FM1に配置された施工対象SBの画像PC1、撮影領域FM2に配置された施工対象SBの画像PC2、及び撮影領域FM3に配置された施工対象SBの画像PC3のそれぞれを撮影する。画像PC1、画像PC2、画像PC3は、同一の撮像装置30(図5に示す例では撮像装置30C)により撮像された画像である。
撮像装置30は、隣り合う撮影領域FMに重複領域OBが設けられるように、所定のタイミングで撮影する。図5は、撮影領域FM1と撮影領域FM2とに重複領域OB1が設けられ、撮影領域FM2と撮影領域FM3との間に重複領域OB2が設けられる例を示す。重複領域OB1は、画像PC1と画像PC2の一部とが重複する重複領域OBである。重複領域OB2は、画像PC2と画像PC3の一部とが重複する重複領域OBである。
重複領域OBに画像PCの共通部分KSが存在する。重複領域OB1に存在する共通部分KS1は、画像PC1と画像PC2との共通部分KSである。重複領域OB2に存在する共通部分KS2は、画像PC2と画像PC3との共通部分KSである。共通部分抽出部413は、撮像装置30によって撮影された複数の二次元の画像PCの共通部分KSを抽出する。
図6は、本実施形態に係る計測システム50の処理の一例を説明するための模式図である。図6は、旋回体3が旋回中において撮影された画像PC(PC1,PC2)の一例を示す図である。共通部分抽出部413は、画像PCから共通部分KSを抽出する。
図6に示すように、共通部分抽出部413は、撮影領域FM1に配置された施工対象SBの画像PC1と、撮影領域FM2に配置された施工対象SBの画像PC2とから、画像PC1と画像PC2との共通部分KS1を抽出する。撮像位置算出部416は、共通部分抽出部413で抽出された共通部分KS1に基づいて、旋回体3の推定角度θs(図5においてはΔθ1)を算出する。また、撮像位置算出部416は、推定角度θsに基づいて、撮影時の撮像装置30の推定位置Ps(図5においてはPJ2)を算出する。
共通部分KSは、画像PCにおける特徴点である。共通部分抽出部413は、例えばORB(Oriented FAST and Rotated BRIEF)又はHarrisコーナー検出のような既知の特徴点検出アルゴリズムに基づいて、共通部分KSを抽出する。共通部分抽出部413は、複数の画像PCのそれぞれから複数の特徴点を抽出し、抽出した複数の特徴点から類似する特徴点を探索することによって、共通部分KSを抽出する。共通部分抽出部413は、共通部分KSを複数点抽出してもよい。共通部分抽出部413は、例えば画像PCにおける施工対象SBの角部を特徴点として抽出する。
旋回体3の旋回により撮像装置30の撮影領域FMが旋回方向RDに移動し、撮影領域FMの移動により、画像PCにおける共通部分KSが変位する。図6に示す例では、共通部分KSは、画像PC1においては画素位置PX1に存在し、画像PC2においては画素位置PX2に存在する。画像PC1と画像PC2とにおいて、共通部分KSが存在する位置が異なる。すなわち、共通部分KS1は、画像PC1と画像PC2との間において変位したことになる。撮像位置算出部416は、複数の画像PCにおける共通部分KSの位置に基づいて、位置PJ1から位置PJ2までの旋回角度Δθ1を算出することができる。
図7は、本実施形態に係る計測システム50の処理の一例を説明するための模式図である。図7は、旋回体3が旋回することにより撮像装置座標系(Xs,Ys,Zs)が移動することを説明する図である。図7に示すように、旋回体3は、車体座標系のXm−Ym平面内において旋回軸Zrを中心に旋回する。旋回体3が旋回軸Zrを中心に旋回角度Δθだけ旋回すると、撮像装置座標系(Xs,Ys,Zs)が旋回軸Zrを中心に旋回角度Δθだけ移動する。撮像位置算出部416は、旋回体3が旋回軸Zrを中心に旋回することを拘束条件として、旋回前角度θraから旋回角度Δθだけ旋回したときの旋回体3の推定角度θs及び撮像装置30の推定位置Psを算出することができる。
[推定角度の算出]
図8は、本実施形態に係る計測システム50の処理の一例を説明するための模式図である。図8は、旋回体3の旋回角度θ及び撮像装置30の位置Pを算出する例を示す模式図である。図8は、車体座標系における旋回体3の旋回角度θ及び撮像装置30の位置Pを示す。
図8に示す例において、旋回体3は、旋回前角度θra、第1推定角度θs1、第2推定角度θs2、第3推定角度θs3、及び旋回後角度θrbの順に、旋回方向RDに旋回する。撮像装置30は、旋回体3の旋回により、旋回前位置Pra、第1推定位置Ps1、第2推定位置Ps2、第3推定位置Ps3、及び旋回後位置Prbの順に移動する。撮像装置30の撮影領域FMは、旋回方向RDの撮像装置30の移動により、撮影領域FMra、撮影領域FMs1、撮影領域FMs2、撮影領域FMs3、及び撮影領域FMrbの順に移動する。
旋回前角度θra及び旋回後角度θrbのとき、旋回体3は旋回停止状態である。旋回前角度θraにおいて旋回停止状態の旋回体3は、第1推定角度θs1、第2推定角度θs2、及び第3推定角度θs3を経由して、旋回後角度θrbに到達するように、旋回前角度θraから旋回後角度θrbまで旋回する。
撮像装置30は、旋回前位置Praに配置されている状態で、撮影領域FMraに配置される施工対象SBの画像PCraを取得する。撮像装置30は、第1推定位置Ps1に配置されている状態で、撮影領域FMs1に配置される施工対象SBの画像PCs1を取得する。撮像装置30は、第2推定位置Ps2に配置されている状態で、撮影領域FMs2に配置される施工対象SBの画像PCs2を取得する。撮像装置30は、第3推定位置Ps3に配置されている状態で、撮影領域FMs3に配置される施工対象SBの画像PCs3を取得する。撮像装置30は、旋回後位置Prbに配置されている状態で、撮影領域FMrbに配置される施工対象SBの画像PCrbを取得する。
上述のように、撮像位置算出部416は、旋回体3が旋回開始前の旋回停止状態において位置検出装置23及び姿勢検出装置24によって検出された旋回体3の位置及び姿勢に基づいて、旋回前角度θraを算出する。また、撮像位置算出部416は、旋回体3が旋回終了後の旋回停止状態において位置検出装置23及び姿勢検出装置24によって検出された旋回体3の位置及び姿勢に基づいて、旋回後角度θrbを算出する。また、撮像位置算出部416は、旋回前角度θraに基づいて、旋回前位置Praを算出する。また、撮像位置算出部416は、旋回後角度θrbに基づいて、旋回後位置Prbを算出する。
旋回前角度θra、旋回後角度θrb、旋回前位置Pra、及び旋回後位置Prbは、位置検出装置23の検出データ及び姿勢検出装置24の検出データに基づいて、高精度に算出される。
上述のように、撮像位置算出部416は、旋回体3が旋回中において撮影された複数の画像PCの共通部分KSに基づいて、推定角度θs(第1推定角度θs1、第2推定角度θs2、及び第3推定角度θs3)を算出する。また、撮像位置算出部416は、推定角度θsに基づいて、推定位置Ps(第1推定位置Ps1、第2推定位置Ps2、及び第3推定位置Ps3)を算出する。
共通部分抽出部413は、画像PCraと画像PCs1との共通部分KS1を抽出する。撮像位置算出部416は、旋回体3が旋回軸Zrを中心に旋回することを拘束条件として、旋回体3の旋回前角度θraと、画像PCraと画像PCs1との共通部分KS1に基づいて、旋回角度Δθ1を算出する。第1推定角度θs1は、旋回前正解角度θraと旋回角度Δθ1との和である(θs1=θra+Δθ1)。
同様に、共通部分抽出部413は、旋回角度Δθ2、旋回角度Δθ3、及び旋回角度Δθ4を算出することができ、撮像位置算出部416は、第2推定角度θs2(θs2=θra+Δθ1+Δθ2)、第3推定角度θs3(θs3=θra+Δθ1+Δθ2+Δθ3)、第4推定角度θs4(θs4=θra+Δθ1+Δθ2+Δθ3+Δθ4)を算出することができる。
このように、撮像位置算出部416は、旋回体3が旋回中において撮像装置30が撮影時の旋回体3の推定角度θs(θs1、θs2、θs3、θs4)を段階的に算出することができる。また、旋回体3の推定角度θsが算出されることにより、撮像位置算出部416は、推定角度θsに基づいて、旋回体3が旋回中における撮像装置30の推定位置Ps(Ps1,Ps2,Ps3,Ps4)を算出することができる。
また、撮像位置算出部416は、複数の画像PC(PCra,PCs1,PCs2,PCs3,PCs4,PCrb)のそれぞれが撮影された時点を示す時点データを撮像装置30から取得する。撮像装置416は、複数の画像PCのそれぞれが撮影された時点と、旋回角度Δθ(Δθ1,Δθ2,Δθ3,Δθ4)とに基づいて、旋回速度Vを算出することができる。例えば、画像PCs1が撮影された時点から画像PCs2が撮影された時点までの時間と、画像PCs1が撮影されたときの推定角度θs1から推定角度θs2までの移動量とに基づいて、旋回体3が推定角度θs1から推定角度θs2まで旋回するときの旋回角度Vを算出することができる。また、撮像装置416は、複数の画像PCのそれぞれが撮影された時点と旋回角度Δθとに基づいて、旋回方向Rを算出することができる。
このように、本実施形態においては、撮像位置算出部416は、複数の画像PCの共通部分KSに基づいて、旋回角度θを算出することができる。
[推定角度の補正]
旋回後角度θrbは、位置検出装置23の検出データ及び姿勢検出装置24の検出データに基づいて高精度に算出される。一方、推定角度θs4は、共通部分KSの変位量に基づいて算出される。共通部分KSを使って算出された推定角度θs4及び推定位置Ps4が正確であれば、推定角度θs4と旋回後角度θrbとの差は小さく、推定位置Ps4と旋回後位置Prbとの差は小さい。
一方、例えば共通部分KSの変位量の累積誤差などに起因して、共通部分KSを使って算出された推定角度θs4及び推定位置Ps4の誤差が大きくなる可能性がある。推定角度θs4及び推定位置Ps4の誤差が大きいと、推定角度θs4と旋回後角度θrbとの差は大きくなり、推定位置Ps4と旋回後位置Prbとの差は大きくなる。
撮像位置算出部416は、推定角度θs4と旋回後角度θrbとに差があるとき、旋回停止状態における旋回角度θである角度θr(旋回前角度θra及び旋回後角度θrb)に基づいて、旋回中における旋回角度θである推定角度θs(第1推定角度θs1、第2推定角度θs2、第3推定角度θs3、及び第4推定角度θs4)を補正する。また、撮像位置算出部416は、補正後の推定角度θsに基づいて、推定位置Psを補正する。
撮像位置算出部416は、補正後の推定角度θs1’に基づいて、画像PCs1を撮影時の撮像装置30の推定位置Ps1を精度良く算出することができる。同様に、撮像位置算出部416は、補正後の推定角度θs2’に基づいて、画像PCs2を撮影時の撮像装置30の推定位置Ps2を精度良く算出することができ、補正後の推定角度θs3’に基づいて、画像PCs3を撮影時の撮像装置30の推定位置Ps3を高精度に算出することができる。したがって、三次元位置算出部417は、高精度に算出された撮影時の撮像装置30の推定位置Psとその撮像装置30に撮影された画像PCsとに基づいて、現場座標系の施工対象SBの三次元位置を高精度に算出することができる。
[抽出対象領域の分割及びヒストグラム平坦化]
次に、抽出対象領域WDの分割について説明する。図6においては、共通部分抽出部413は、画像PC全体から共通部分KSを抽出する例について説明した。共通部分抽出部413は、例えば画像PCの一部に共通部分KSを抽出するための抽出対象領域WDを設定し、その抽出対象領域WDから共通部分KSを抽出してもよい。以下、画像PCにおける中央部分に抽出対象領域WDを設定した場合を想定して説明する。共通部分抽出部413は、画像PCの中央部分に設定した抽出対象領域WDを複数の分割領域に分割し、複数の分割領域のそれぞれから共通部分KSを抽出することができる。
図9は、画像PCに抽出対象領域WDが1つ設定されている状態を模式的に示す図である。図9は、例えば下方向を向く撮像装置30Cによって撮像された画像PCである。上述のORBのような特徴点検出アルゴリズムによって特徴点(共通部分KS)が抽出される場合、施工対象SBの形状又は画像PCの撮影条件によっては、図9に示すように、抽出対象領域WDにおいて共通部分KSが分散されずに特定の領域に集中する可能性がある。共通部分KSが特定の領域に集中する原因として、特徴点検出アルゴリズムによっては、特徴の度合い(特徴量)が高い点から順に共通部分KSが抽出されることが挙げられる。そのため、画像PCにコントラストが高い部位が存在する場合、例えば、施工対象SBに人工的な直線部、角部、及び円弧部等が存在する場合には、その部分に共通部分KSが集中してしまう。例えば、図9のように、施工対象SBが油圧ショベル1のバケットによって掘削され、施工対象SBに穴HLが形成された場合、画像PCにおいて穴HLの内側は暗部となり、穴HLの周囲は明部となる。暗部と明部との境界である穴HLの縁は、画像PCにおいてコントラストが高い部位であるため、穴HLの縁に集中するように共通部分KSが抽出される可能性が高い。また、穴HLの内側である暗部は、コントラストが低いため、共通部分KSが抽出され難い。
特徴点である共通部分KSが画像PCの特定の領域に集中すると、その共通部分KSに基づいて算出される推定角度θs及び推定位置Psの精度が低下する可能性がある。一方、特徴点である共通部分KSが画像PC又は抽出対象領域WDにおいて分散されることにより、その共通部分KSに基づいて算出される推定角度θs及び推定位置Psの精度が向上する。
そこで、共通部分抽出部413は、画像PCの抽出対象領域WDを複数の分割領域に分割して、複数の分割領域のそれぞれから共通部分KSを抽出する。これにより、画像PCにおいて抽出される共通部分KSは分散される。例えば、特徴点検出アルゴリズムに基づいて特徴量が高い点から順に100点の共通部分KSを抽出する場合、抽出対象領域WDが分割されないと、図9に示すように、穴HLの縁に100点の共通部分KSが集中してしまう。一方、抽出対象領域WDが例えば4分割されることにより、4分割された分割領域のそれぞれにおいて特徴量が高い点から順に25点の共通部分KSが抽出される。そのため、画像PCにおいて抽出される共通部分KSは分散される。撮像位置算出部416は、分散された共通部分KSに基づいて、推定角度θs及び推定位置Psを高精度に算出することができる。
図10は、本実施形態に係る画像PCの抽出対象領域WDの一例を示す図である。図10に示すように、共通部分抽出部413は、画像PCの抽出対象領域WDを複数の分割領域WD1,WD2,WD3,WD4に分割して、複数の分割領域WD1,WD2,WD3,WD4のそれぞれから、複数の画像PCの共通部分KSを抽出する。撮像位置算出部416は、複数の分割領域WD1,WD2,WD3,WD4のそれぞれから抽出された共通部分KS1、KS2,KS3,KS4に基づいて、撮影時の推定角度θs及び推定位置Psを取得する。
共通部分抽出部413は、複数の分割領域WD1,WD2,WD3,WD4のそれぞれから、共通部分KSを少なくとも1つ抽出する。共通部分抽出部413は、複数の分割領域WD1,WD2,WD3,WD4のそれぞれから、共通部分KSを規定数以上抽出する。図10は、複数の分割領域WD1,WD2,WD3,WD4のそれぞれから、共通部分KS(KS1,KS2,KS3,KS4)が少なくとも6つ抽出されている例を示す。これにより、画像PCにおいて抽出される共通部分KSは分散される。
本実施形態において、抽出対象領域WDは、長方形状である。旋回方向RDにおける抽出対象領域WDの中心が第1の分割線によって分割され、旋回方向RDと直交する縦方向における抽出対象領域WDの中心が第2の分割線によって分割される。分割領域WD1,WD2,WD3,WD4の外形及び面積は、同一である。
なお、抽出対象領域WD及び分割領域WD1,WD2,WD3,WD4の形状は、任意に定めることができる。抽出対象領域WDは、長方形状でなくてもよく、正方形状でもよいし、円形状でもよい。また、分割領域WD1,WD2,WD3,WD4の外形及び面積は、同一でもよいし異なってもよい。また、分割領域の数は、4つに限定されず、任意の複数に定めることができる。
上述のように、穴HLの内側のような暗部はコントラストが低いため、共通部分KSが抽出され難い。そのため、抽出対象領域WDを複数の分割領域に分割した場合、施工対象SBのうちコントラストの低い部位が分割領域に配置されると、その分割領域における暗部において共通部分KSを抽出することが困難となる。
そこで、画像処理部412は、画像PCのコントラスト分布を補正する。画像処理部412は、例えばヒストグラム平坦化アルゴリズムに基づいて、画像PCのコントラスト分布を補正する。共通部分抽出部413は、コントラスト分布が補正された画像PCの抽出対象領域WDから複数の画像PCの共通部分KSを抽出する。これにより、コントラストが低い部位が分割領域に存在しても、その分割領域のコントラストが高くなるように、コントラスト分布が補正される。分割領域のコントラストが高くなることにより、共通部分抽出部413は、分割領域から共通部分KSを抽出することができる。
図11は、ヒストグラム平坦化アルゴリズムにより各分割領域のコントラスト分布を補正した画像PCにおいて共通部分KSを抽出した図である。ヒストグラム平坦化とは、画像PCのそれぞれの画素の階調と頻度との関係を示すヒストグラムが階調の全域に亘って均等に分布するように画像PCを変換する処理をいう。
図11では、画像処理部412が分割領域のそれぞれの画素の輝度を補正して画像PCのコントラストを向上させることにより、共通部分抽出部412は、各分割領域WD1,WD2,WD3,WD4における穴HLにおいて共通部分KSを抽出することができる。
図9に示すように、抽出対象領域WDは、画像PCの中央部に規定される。画像PCにおいて、抽出対象領域WDの周囲には、枠状の非対象領域WEが規定される。
抽出対象領域WDが、旋回方向RDにおける画像PCの中央部に規定されているので、旋回体3が右旋回又は左旋回したとき、抽出対象領域WDにおいて抽出された共通部分KSは、抽出対象領域WDの左側又は右側の非対象領域WEに移動する。すなわち、旋回体3が旋回したとき、抽出対象領域WDにおいて抽出された共通部分KSは、画像PCから直ちに無くならずに、非対象領域WEに移動するため、継続的に共通部分KSを抽出することができ、精度良く旋回角度θを推定することができる。
また、抽出対象領域WDは、画像PCにおいて走行体5が抽出対象領域WDの外側に位置するように、換言すれば、走行体5の画像が抽出対象領域WDに入り込まないように、縦方向における画像PCの中央部に規定される。これにより、走行体5の特徴点が抽出されることが抑制され、共通部分抽出部413は、より多くの施工対象SBの特徴点を抽出することができる。
なお、画像処理部412は、複数の分割領域WD1,WD2,WD3,WD4毎にコントラスト分布を補正してもよいし、分割されていない抽出対象領域WD全体のコントラスト分布を補正してもよいし、画像PCにおいてコントラスト分布を補正してもよい。
なお、抽出対象領域WDは、画像PCの中央部からずれた位置に設定されてもよい。また、非対象領域WEを設けずに、画像PCの全域が抽出対象領域WDに設定されてもよい。
[入力装置]
本実施形態において、入力装置32は、旋回連続撮影モードの開始を指令する撮影開始指令信号及び旋回連続撮影モードの終了を指令する撮影終了指令信号を生成可能な旋回連続撮影スイッチ32Aを有する。
[計測方法]
図12は、本実施形態に係る計測方法の一例を示すフローチャートである。図13は、本実施形態に係る計測方法のタイミングチャートである。
油圧ショベル1の運転者は、撮像装置30が施工対象SBの計測開始位置を向くように、操作装置35を操作して旋回体3を旋回させる。旋回体3の旋回を含む油圧ショベル1の作動が停止した時点t0から予め規定された時間が経過して時点t1になったとき、判定部418は、位置検出装置23及び姿勢検出装置24のそれぞれが検出データを安定して出力できる静定状態であると判定する。
油圧ショベル1が動作停止状態であり、位置検出装置32及び姿勢検出装置24が静定状態において、撮影開始指令信号を取得すると、撮像位置算出部416は、位置検出装置23から旋回体3の位置を示す検出データを取得し、姿勢検出装置24から旋回体3の姿勢を示す検出データを取得する(ステップS10)。
撮像位置算出部416は、旋回前角度θra、及び旋回前位置Praを取得する。
位置検出装置23の検出データ及び姿勢検出装置24の検出データは、一時的に記憶装置42に記憶される。
旋回連続撮影モードを開始する場合、油圧ショベル1の運転者は、旋回連続撮影スイッチ32Aを操作(押下)する。図13に示す例では、時点t2において旋回連続撮影スイッチ32Aが操作される。旋回連続撮影スイッチ32Aが操作されることにより生成された撮影開始指令信号は、演算処理装置41に出力される。信号取得部411は、撮影開始指令信号を取得する(ステップS20)。
また、旋回連続撮影スイッチ32Aが操作され、撮影開始指令信号を取得すると、演算処理装置41は、撮像装置30の撮像を開始する(ステップS30)。画像取得部410は、油圧ショベル1が動作開始前の動作停止状態において撮像装置30によって撮影された対象SBの画像PCraを取得する。また、画像記憶部423は、画像PCraを記憶する。
運転者は、操作装置35を操作して、走行体5の走行を停止した状態で、旋回体3の旋回を開始する(ステップS40)。運転者は、撮像装置30が対象SBの計測開始位置を向いている旋回開始位置から、撮像装置30が対象SBの計測終了位置を踏む旋回終了位置まで旋回するように、操作装置35を操作して、旋回体3の旋回を開始する。
図13に示す例では、時点t3において操作装置35が操作され、旋回体3の旋回が開始される。複数の撮像装置30(30A,30B,30C,30D)のそれぞれは、旋回体3が旋回状態において時間の間隔をあけて対象SBの画像PCsを複数回撮影する。
画像取得部410は、旋回体3が旋回中において撮像装置30によって撮影された施工対象SBの複数の画像PCsを順次取得する。また、画像記憶部423は、複数の画像PCsを順次記憶する。
旋回体3が旋回終了位置に到達すると、運転者は、操作装置35の操作を解除し、旋回体3の旋回を終了する(ステップS60)。図13に示す例では、時点t4において操作装置35の操作が解除され、旋回体3の旋回が終了される。
旋回体3の旋回が停止した時点t4から予め規定された時間が経過して時点t5になったとき、判定部418は、位置検出装置23及び姿勢検出装置24のそれぞれが検出データを安定して出力できる静定状態であると判定する。
油圧ショベル1が動作停止状態であり、位置検出装置32及び姿勢検出装置24が静定状態において、撮影位置算出部416は、位置検出装置23から旋回体3の位置を示す検出データを取得し、姿勢検出装置24から旋回体3の姿勢を示す検出データを取得する(ステップS70)。
撮像位置算出部416は、旋回後角度θrb、及び旋回後位置Prbを取得する。
位置検出装置23の検出データ及び姿勢検出装置24の検出データは、一時的に記憶装置42に記憶される。
また、画像取得部410は、油圧ショベル1が動作終了後の動作停止状態において撮像装置30によって撮影された施工対象SBの画像PCrbを取得する。また、画像記憶部423は、画像PCrbを記憶する。
旋回連続撮影モードを終了する場合、油圧ショベル1の運転者は、旋回連続撮影スイッチ32Aを操作(押下)する。図13に示す例では、時点t6において旋回連続撮影スイッチ32Aが操作される。旋回連続撮影スイッチ32Aが操作されることにより生成された撮影終了指令信号は、演算処理装置41に出力される。信号取得部411は、撮影終了指令信号を取得する(ステップS80)。
撮影終了信号が取得されることにより、撮像装置30の撮影が終了する(ステップS90)。撮像装置30は、撮影不可状態に遷移する。
共通部分抽出部413は、画像記憶部423に記憶されている複数の画像PCのそれぞれから共通部分KSを抽出する(ステップS120)。
共通部分抽出部413は、旋回体3が旋回停止中及び旋回中において撮像装置30によって撮影された少なくとも2つの画像PCからそれら2つの画像PCの共通部分KSを抽出する。共通部分KSの抽出は、旋回体3の旋回方向Rにおいて、旋回体3の旋回が開始されてから終了するまでに取得された全ての画像PCについて実施されてもよいし、所定のルールに基づいて選定された画像PCについて実施されてもよい。
図10を参照して説明したように、共通部分抽出部413は、画像PCの抽出対象領域WDを複数の分割領域WD1,WD2,WD3,WD4に分割して、複数の分割領域WD1,WD2,WD3,WD4のそれぞれから規定数以上の共通部分KSを抽出する。
また、図11を参照して説明したように、共通部分抽出部413は、ヒストグラム平坦化アルゴリズムを用いて、画像PCのコントラスト分布を補正することができる。共通部分抽出部413は、コントラスト分布が補正された画像PCの抽出対象領域WDから共通部分KSを抽出することができる。
次に、撮像位置算出部416は、複数の画像PCの共通部分KSに基づいて、旋回体3の推定角度θsを推定する(ステップS140)。撮像位置算出部416は、複数の画像PCにおける共通部分KSの位置に基づいて、旋回角度Δθを算出して、推定角度θsを推定することができる。
撮像位置算出部416は、旋回終了後の推定角度θsと旋回後角度θrbとの差が規定値未満であるとき、角度θr(旋回前角度θra、旋回後角度θrb)に基づいて、旋回中における推定角度θsを補正する。また、撮像位置算出部416は、補正後の推定角度θsに基づいて、旋回中における撮像装置30の推定位置Psを補正する。撮像位置算出部416は、上述した手順に基づいて、推定角度θsの補正を実施することができる。
三次元位置算出部417は、撮影時の画像PCをステレオ処理して、複数の施工対象SBの撮像装置座標系における三次元位置を算出する(ステップS160)。また、三次元位置算出部417は、撮像装置座標系における三次元位置を現場座標系における三次元位置に変換する。
[効果]
以上説明したように、本実施形態によれば、複数の画像PCで共通する特徴点である共通部分KSに基づいて撮影装置30の位置を取得するとき、共通部分KSを抽出する抽出対象領域WDが複数の分割領域WD1,WD2,WD3,WD4に分割される。共通部分抽出部413は、複数の分割領域WD1,WD2,WD3,WD4のそれぞれから共通部分KSを抽出する。これにより、画像PCにおいて抽出される共通部分KSは分散される。そのため、撮像位置算出部416は、分散された共通部分KSに基づいて、撮像装置30の推定位置Psを高精度に算出することができる。したがって、対象SBの三次元形状の計測精度の低下が抑制される。
また、本実施形態においては、画像処理部412によって画像PCのコントラスト分布が補正される。これにより、コントラストが低い部位が抽出対象領域WDに存在しても、その抽出対象領域WDのコントラストが高くなるようにコントラスト分布が補正される。抽出対象領域WDのコントラストが高くなることにより、共通部分抽出部413は、抽出対象領域WDから共通部分KSを抽出することができる。そのため、撮像位置算出部416は、抽出された共通部分KSに基づいて、撮像装置30の推定位置Psを高精度に算出することができる。
第2実施形態.
第2実施形態について説明する。以下の説明において、上述の実施形態と同一又は同等の構成要素については同一の符号を付し、その説明を簡略又は省略する。
図14は、本実施形態に係る計測システム30の処理の一例を説明するための模式図である。上述の実施形態においては、油圧ショベル1が動作中であることとは、走行体5が走行停止中であり旋回体3が旋回中であることとした。油圧ショベル1が動作中であるとは、旋回体3が旋回停止中であり走行体5が走行中であることでもよいし、旋回体3が旋回中であり走行体5が走行中であることでもよい。
図14に示すように、走行体5が走行方向MDに走行することによって、撮像装置30及び撮像装置30の撮影領域FMが走行方向MDに移動する。撮影装置30は、撮影領域FM1と撮影領域FM2とに重複領域が設けられ、撮影領域FM1と撮影領域FM2とに重複領域が設けられるように、対象SBを撮影する。撮影装置30は、撮影領域FM1,FM2,FM3のそれぞれに配置された対象SBの画像PC1,PC2,PC3を撮影する。
共通部分抽出部413は、画像PC1と画像PC2との共通部分KS1、及び画像PC2と画像PC3との共通部分KS2を抽出することができる。
撮像位置算出部416は、共通部分KS1の変位量に基づいて、撮像装置30の移動量ΔD1を算出する。また、撮像位置算出部416は、共通部分KS2の変位量に基づいて、撮像装置30の移動量ΔD2を算出する。撮像位置算出部416は、撮像装置30の移動量Δ(ΔD1,ΔD2)に基づいて、走行体5が走行中における撮影時の撮像装置30の位置を取得する。上述の実施形態においては、撮像位置算出部416は、旋回角度θを算出したが、本実施形態においては、撮像装置30の位置として、X軸方向の位置、Y軸方向の位置、Z軸方向の位置、ロール角、ピッチ角、及びヨー角の6変数を算出する。三次元位置算出部417は、撮影時の撮像装置30の位置と撮像装置30が撮影した画像PCとに基づいて対象SBの三次元位置を算出する。
なお、上述の実施形態においては、油圧ショベル1が旋回中においては、撮像装置30の位置が共通部分KSに基づいて算出されることとしたが、その実施形態に限られない。例えば、油圧ショベル1が旋回中における撮像装置30の位置が、位置検出装置23の検出データ及び姿勢検出装置24の検出データに基づいて算出されてもよい。
なお、上述の実施形態において、撮像位置算出部416は、旋回軸Zrを拘束条件として、変数を旋回角度θのみとして撮影位置を算出したが、旋回軸Zrを拘束条件とすることなく、撮像装置30の位置及び姿勢を、X軸方向の位置、Y軸方向の位置、Z軸方向の位置、ロール角、ピッチ角、及びヨー角の6変数に基づいて算出してもよい。
なお、上述の実施形態において、入力装置32は、例えば操作装置35の右操作レバー35R及び左操作レバー35Lの少なくとも一方に取り付けられていてもよいし、運転室4に配置されるモニタパネルに設けられていてもよいし、携帯端末装置に設けられてもよい。また、入力装置32が油圧ショベル1の外部に設けられ、撮像装置30の撮影の開始又は終了が遠隔操作されてもよい。
なお、上述の実施形態においては、撮像位置算出部416が共通部分KSに基づいて旋回角度を算出したが、撮像位置算出部416は、検出装置の検出結果に基づいて旋回角度を算出してもよい。例えば、撮像位置算出部416は、位置検出装置23の検出データまたは姿勢検出装置24の検出データに基づいて、旋回体3の旋回角度θを算出してもよいし、操作量センサ36の検出データに基づいて旋回角度θを算出してもよいし、旋回体3の旋回角度を検出可能な角度センサ、例えばロータリーエンコーダの検出データに基づいて旋回角度θを算出してもよい。この場合、演算処理装置41は、角度検出センサの検出値である旋回角度θを角度検出センサから取得するタイミングと、少なくとも一対の撮像装置30が施工対象SBを撮影するタイミングとを同期させる。このようにして、少なくとも一対の撮像装置30によって画像PCが撮影されたタイミングと、そのタイミングにおける旋回体3の旋回角度θとが対応付けられる。
なお、上述の実施形態においては、演算処理装置41が少なくとも一対の撮像装置30によって撮像された画像PCをステレオ処理して三次元計測を実現したが、このようなものには限定されない。例えば、少なくとも一対の撮像装置30によって撮像された油圧ショベル1の周囲の掘削対象SBの画像PCと、位置検出装置23及び姿勢検出装置24によって求められた油圧ショベル1の静止時における位置及び姿勢とが、例えば油圧ショベル1の外部の管理装置(携帯端末、サーバ装置等)に送信される。そして、外部の管理装置が油圧ショベル1の周囲の掘削対象SBの画像PCをステレオ処理するとともに、旋回体3の旋回時における旋回角度θ、油圧ショベル1の位置及び姿勢を求め、得られた結果を用いて旋回時における油圧ショベル1の周囲の掘削対象SBの三次元位置を求めてもよい。この場合、油圧ショベル1の外部の管理装置が、演算処理装置41に相当する。すなわち、他の実施形態において、計測システム50は、油圧ショベル1のみにおいてすべての機能を実現する必要はなく、外部の管理装置が一部の機能、例えば演算処理装置41の機能を備えていてもよい。
上述の実施形態において、撮像装置は少なくとも一対の撮像装置30を含むステレオカメラである。ステレオカメラで撮影する際には、各カメラの撮影タイミングを同期させる。撮像装置は1つのカメラによりステレオ撮影可能なものであってもよい。すなわち、1つのカメラにより撮影タイミングの異なる2つの画像に基づいてステレオ処理可能な撮像装置であってもよい。撮像装置はステレオカメラに限定されない。撮像装置は、例えば、TOF(Time Of Flight)カメラのような、画像と三次元データとの両方が得られるセンサであってもよい。撮像装置は一つのカメラにより三次元データが得られる撮像装置であってもよい。撮像装置は一つのカメラによりステレオ計測可能な撮像装置であってもよい。撮像装置は、レーザスキャナであってもよい。
なお、上述の実施形態においては、作業機械1が旋回体3を有する油圧ショベル1であることとした。作業機械1は、旋回体を有しない作業機械でもよい。例えば、作業機械は、ブルドーザ、ホイールローダ、ダンプトラック、及びモーターグレーダの少なくとも一つでもよい。