(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-12
(45)【発行日】2024-06-20
(54)【発明の名称】学習済みの作業分類推定モデルの製造方法、コンピュータによって実行される方法、および作業機械を含むシステム
(51)【国際特許分類】
E02F 9/20 20060101AFI20240613BHJP
G06T 7/00 20170101ALI20240613BHJP
【FI】
E02F9/20 Q
G06T7/00 350C
(21)【出願番号】P 2019123018
(22)【出願日】2019-07-01
【審査請求日】2022-03-31
【前置審査】
(73)【特許権者】
【識別番号】000001236
【氏名又は名称】株式会社小松製作所
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】新田目 啓敬
【審査官】湯本 照基
(56)【参考文献】
【文献】国際公開第2019/093152(WO,A1)
【文献】国際公開第2018/216075(WO,A1)
【文献】村井 浩一 KOICHI MURAI,製造現場の作業分析結果を利用したカメラと深層学習による作業手順のリアルタイム監視システム Real-time work procedure monitoring system by deep learning and web camera using results of work analysis at manufacturing,情報処理学会 研究報告 コンシューマ・デバイス&システム(CDS) 2019-CDS-026 [online] ,日本,情報処理学会
(58)【調査した分野】(Int.Cl.,DB名)
E02F 9/20
G06T 7/00
(57)【特許請求の範囲】
【請求項1】
学習済みの作業分類推定モデルの製造方法であって、
作業機械の作業中の立体形状を示す3次元モデルを特定の視点位置から見た2次元画像と、前記2次元画像に対してラベル付けされた、前記作業機械の動作の内容を示す作業分類と、を含む学習用データを取得することと、
前記学習用データにより前記作業分類推定モデルを学習させることと、を備える、製造方法。
【請求項2】
前記作業機械は、作業機械本体と、前記作業機械本体に取り付けられた作業機とを有し、
前記作業機械本体に対する前記作業機の姿勢を示す姿勢データを取得することと、
前記姿勢データに基づいて前記3次元モデルを作成することと、をさらに備える、請求項1に記載の製造方法。
【請求項3】
前記作業機は、前記作業機械本体に連結されたブームと、前記ブームに連結されたアタッチメントとを含む、請求項2に記載の製造方法。
【請求項4】
前記姿勢データは、前記作業機械本体に対する前記ブームの角度と、前記ブームに対する前記アタッチメントの角度とを含む、請求項3に記載の製造方法。
【請求項5】
前記学習用データは、前記作業機械の動作に関する操作データをさらに含む、請求項1~4のいずれか1項に記載の製造方法。
【請求項6】
前記操作データは、前記作業機械の走行に関するデータを含む、請求項5に記載の製造方法。
【請求項7】
前記学習させることは、
前記作業分類推定モデルを用いて、前記2次元画像から、前記作業分類を推定した推定作業分類を求めることと、
前記推定作業分類が前記作業分類と一致しているか否かを判定することと、
前記判定の結果に基づいて、前記作業分類推定モデルを更新することと、を含む、請求項1~6のいずれか1項に記載の製造方法。
【請求項8】
コンピュータによって実行される方法であって、
作業機械を表示する画像データを取得することと、
請求項1~6のいずれか1項に記載の製造方法によって製造された学習済みの前記作業分類推定モデルに、前記画像データを入力して、前記作業分類を推定することと、
を備える方法。
【請求項9】
作業機械と、
コンピュータとを備え、
前記コンピュータは、請求項1~6のいずれか1項に記載の製造方法によって製造された学習済みの作業分類推定モデルを有し、
前記コンピュータは、前記作業機械を表示する画像データを取得し、前記作業分類推定モデルを用いて前記画像データから前記作業分類を推定した推定作業分類を出力する、作業機械を含むシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、学習済みの作業分類推定モデルの製造方法、コンピュータによって実行される方法、および作業機械を含むシステムに関する。
【背景技術】
【0002】
ホイールローダは、上下方向に移動可能なブームの先端に、ブームに対して回転可能なバケットを備えている。ホイールローダの掘削作業においては、車両を前進させることによりバケットを土砂の山に押し込むと共に、ブームを上昇させる。これにより、土砂がバケット上に掬い取られる。
【0003】
従来、水平方向に対するブームの傾斜角を検出するためのセンサと、ブームに対するバケットの傾斜角を検出するためのセンサとを備える、ホイールローダが提案されている(たとえば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
ホイールローダの場合、作業機の姿勢を検出するセンサが搭載されており、センサで検出した作業機の姿勢から作業分類を達成できる構成とされている。一方、小型機種などの販売価格が安い機種にはセンサが搭載されておらず、センサで作業機の姿勢を検出することができない。
【0006】
ホイールローダは、様々な対象物に対して移動しながら作業を行なうため、外乱が多く、画像処理による作業分類を精度よく行なうことが困難である。
【0007】
本開示では、高精度の作業分類を可能とする、学習済みの作業分類推定モデルの製造方法、コンピュータによって実行される方法、および作業機械を含むシステムが提供される。
【課題を解決するための手段】
【0008】
本開示のある局面に従うと、学習済みの作業分類推定モデルの製造方法が提供される。製造方法は、以下の処理を備えている。第1の処理は、作業機械の作業中の立体形状を示す3次元モデルを特定の視点位置から見た2次元画像と、2次元画像に対してラベル付けされた、作業機械の動作の内容を示す作業分類と、を含む、学習用データを取得することである。第2の処理は、学習用データにより作業分類推定モデルを学習させることである。
【0009】
本開示のある局面に従うと、作業機械の作業分類を求める作業分類推定モデルを学習させるための学習用データが提供される。学習用データは、作業機械の作業中の立体形状を示す3次元モデルを特定の視点位置から見た2次元画像と、2次元画像に対してラベル付けされた、作業機械の動作の内容を示す作業分類と、を含んでいる。
【0010】
本開示のある局面に従うと、作業機械の作業分類を求める作業分類推定モデルを学習させるための学習用データが提供される。学習用データは、作業機械の作業中の立体形状を示す3次元モデルと、3次元モデルを仮想的に見る視点の位置を示す視点位置と、3次元モデルおよび視点位置に対してラベル付けされた、作業機械の動作の内容を示す作業分類と、を含んでいる。
【0011】
本開示のある局面に従うと、コンピュータによって実行される方法が提供される。当該方法は、以下の処理を備えている。第1の処理は、作業機械を表示する画像データを取得することである。第2の処理は、上記の製造方法によって製造された学習済みの作業分類推定モデルに、画像データを入力して、作業分類を推定することである。
【0012】
本開示のある局面に従うと、作業機械と、コンピュータとを備える、作業機械を含むシステムが提供される。コンピュータは、上記の製造方法によって製造された学習済みの作業分類推定モデルを有している。コンピュータは、作業機械を表示する画像データを取得し、作業分類推定モデルを用いて画像データから作業分類を推定した推定作業分類を出力する。
【発明の効果】
【0013】
本開示に従えば、作業分類を高精度に行なうことができる。
【図面の簡単な説明】
【0014】
【
図1】作業機械の一例としてのホイールローダの側面図である。
【
図2】ホイールローダを含む全体システムの構成を示す概略ブロック図である。
【
図3】ホイールローダの掘削積込作業中の動作を説明する模式図である。
【
図4】ホイールローダの掘削積込作業中の動作の判別方法を示すテーブルである。
【
図5】作業機械を含むシステムに含まれる、コンピュータの構成を示す模式図である。
【
図6】出荷前のホイールローダのシステム構成を示すブロック図である。
【
図7】学習済みの作業分類推定モデルの製造方法を示すフローチャートである。
【
図8】作業分類推定モデルを学習させるための処理を示す第1の概略図である。
【
図9】作業分類推定モデルを学習させるための処理を示す第2の概略図である。
【
図10】工場出荷されるホイールローダのシステム構成を示すブロック図である。
【
図11】工場出荷後に作業分類を推定するためにコンピュータによって実行される処理を示すフローチャートである。
【
図12】作業分類推定モデルの学習に関する変形例を示す概略図である。
【発明を実施するための形態】
【0015】
以下、実施形態について図に基づいて説明する。以下の説明では、同一部品には、同一の符号を付している。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
【0016】
<全体構成>
実施形態においては、作業機械の一例としてホイールローダ1について説明する。
図1は、実施形態に基づく作業機械の一例としてのホイールローダ1の側面図である。
【0017】
図1に示されるように、ホイールローダ1は、車体フレーム2と、作業機3と、走行装置4と、キャブ5とを備えている。車体フレーム2、キャブ5などからホイールローダ1の車体(作業機械本体)が構成されている。ホイールローダ1の車体には、作業機3および走行装置4が取り付けられている。
【0018】
走行装置4は、ホイールローダ1の車体を走行させるものであり、走行輪4a、4bを含んでいる。ホイールローダ1は、走行輪4a、4bが回転駆動されることにより自走可能であり、作業機3を用いて所望の作業を行うことができる。
【0019】
車体フレーム2は、前フレーム2aと後フレーム2bとを含んでいる。前フレーム2aと後フレーム2bとは、互いに左右方向に揺動可能に取り付けられている。前フレーム2aと後フレーム2bとに亘って、一対のステアリングシリンダ11が取り付けられている。ステアリングシリンダ11は、油圧シリンダである。ステアリングシリンダ11がステアリングポンプ(図示せず)からの作動油によって伸縮することによって、ホイールローダ1の進行方向が左右に変更される。
【0020】
本明細書中において、ホイールローダ1が直進走行する方向を、ホイールローダ1の前後方向という。ホイールローダ1の前後方向において、車体フレーム2に対して作業機3が配置されている側を前方向とし、前方向と反対側を後方向とする。ホイールローダ1の左右方向とは、平面視において前後方向と直交する方向である。前方向を見て左右方向の右側、左側が、それぞれ右方向、左方向である。ホイールローダ1の上下方向とは、前後方向および左右方向によって定められる平面に直交する方向である。上下方向において地面のある側が下側、空のある側が上側である。
【0021】
前フレーム2aには、作業機3および一対の走行輪(前輪)4aが取り付けられている。作業機3は、車体の前方に配設されている。作業機3は、作業機ポンプ25(
図2参照)からの作動油によって駆動される。作業機ポンプ25は、エンジン20により駆動され、吐出する作動油によって作業機3を作動させる油圧ポンプである。作業機3は、ブーム14と、作業具であるバケット6とを含んでいる。バケット6は、作業機3の先端に配置されている。バケット6は、ブーム14の先端に着脱可能に装着されたアタッチメントの一例である。作業の種類に応じて、アタッチメントが、グラップル、フォーク、またはプラウなどに付け替えられる。
【0022】
ブーム14の基端部は、ブームピン9によって前フレーム2aに回転自在に取付けられている。バケット6は、ブーム14の先端に位置するバケットピン17によって、回転自在にブーム14に取付けられている。
【0023】
前フレーム2aとブーム14とは、一対のブームシリンダ16により連結されている。ブームシリンダ16は、油圧シリンダである。ブームシリンダ16の基端は、前フレーム2aに取り付けられている。ブームシリンダ16の先端は、ブーム14に取り付けられている。ブームシリンダ16が作業機ポンプ25(
図2参照)からの作動油によって伸縮することによって、ブーム14が昇降する。ブームシリンダ16は、ブーム14を、ブームピン9を中心として上下に回転駆動する。
【0024】
作業機3は、ベルクランク18と、バケットシリンダ19と、リンク15とをさらに含んでいる。ベルクランク18は、ブーム14のほぼ中央に位置する支持ピン18aによって、ブーム14に回転自在に支持されている。バケットシリンダ19は、ベルクランク18と前フレーム2aとを連結している。リンク15は、ベルクランク18の先端部に設けられた連結ピン18cに連結されている。リンク15は、ベルクランク18とバケット6とを連結している。
【0025】
バケットシリンダ19は、油圧シリンダであり作業具シリンダである。バケットシリンダ19の基端は、前フレーム2aに取り付けられている。バケットシリンダ19の先端は、ベルクランク18の基端部に設けられた連結ピン18bに取り付けられている。バケットシリンダ19が作業機ポンプ25(
図2参照)からの作動油によって伸縮することによって、バケット6が上下に回動する。バケットシリンダ19は、バケット6を、バケットピン17を中心として回転駆動する。
【0026】
後フレーム2bには、キャブ5および一対の走行輪(後輪)4bが取り付けられている。キャブ5は、ブーム14の後方に配置されている。キャブ5は、車体フレーム2上に載置されている。キャブ5内には、オペレータが着座するシートおよび後述する操作装置などが配置されている。
【0027】
キャブ5の屋根部には、位置検出センサ64が配置されている。位置検出センサ64は、GNSSアンテナと、グローバル座標演算器とを含む。GNSSアンテナは、全地球航法衛星システム(RTK-GNSS(Real Time Kinematic - Global Navigation Satellite Systems)用のアンテナである。
【0028】
キャブ5の屋根部にはまた、撮像装置65が搭載されている。実施形態の撮像装置65は、単眼カメラである。撮像装置65は、キャブ5の屋根部の前端部分に配置されている。撮像装置65は、キャブ5の前方を撮像する。撮像装置65は、作業機3を撮像する。撮像装置65による撮像画像は、作業機3の少なくとも一部を含んでいる。
【0029】
キャブ5内には、IMU(Inertial Measurement Unit)66が配置されている。IMU66は、車体フレーム2の傾きを検出する。IMU66は、車体フレーム2の前後方向および左右方向に対する傾斜角を検出する。
【0030】
図2は、実施形態に従うホイールローダ1を含む全体システムの構成を示す概略ブロック図である。
図2を参照して、実施形態に従う全体システムは、ホイールローダ1と、ホイールローダ1と無線通信または有線通信により通信可能に設けられた第2処理装置70とを含む。
【0031】
ホイールローダ1は、エンジン20、動力取り出し部22、動力伝達機構23、シリンダ駆動部24、第1角度検出器29、第2角度検出器48、回動機構60および第1処理装置30(コントローラ)を備えている。
【0032】
エンジン20は、たとえばディーゼルエンジンである。エンジン20の出力は、エンジン20のシリンダ内に噴射する燃料量を調整することにより制御される。エンジン20には、温度センサ31が設けられている。温度センサ31は、温度を示す検出信号を第1処理装置30に出力する。
【0033】
動力取り出し部22は、エンジン20の出力を、動力伝達機構23とシリンダ駆動部24とに振り分ける装置である。動力伝達機構23は、エンジン20からの駆動力を前輪4aおよび後輪4bに伝達する機構であり、たとえばトランスミッションである。動力伝達機構23は、入力軸21の回転を変速して出力軸23aに出力する。動力伝達機構23の出力軸23aには、ホイールローダ1の車速を検出するための車速検出部27が取り付けられている。ホイールローダ1は、車速検出部27を含んでいる。
【0034】
車速検出部27はたとえば車速センサである。車速検出部27は、出力軸23aの回転速度を検出することにより、走行装置4(
図1)によるホイールローダ1の移動速度を検出する。車速検出部27は、出力軸23aの回転速度を検出するための回転センサとして機能する。車速検出部27は、走行装置4による移動を検出する移動検出器として機能する。車速検出部27は、ホイールローダ1の車速を示す検出信号を第1処理装置30に出力する。
【0035】
シリンダ駆動部24は、作業機ポンプ25および制御弁26を有している。エンジン20の出力は、動力取り出し部22を介して、作業機ポンプ25に伝達される。作業機ポンプ25から吐出された作動油は、制御弁26を介して、ブームシリンダ16およびバケットシリンダ19に供給される。
【0036】
ブームシリンダ16には、ブームシリンダ16の油室内の油圧を検出するための第1油圧検出器28a、28bが取り付けられている。ホイールローダ1は、第1油圧検出器28a、28bを含んでいる。第1油圧検出器28a、28bは、たとえばヘッド圧検出用の圧力センサ28aと、ボトム圧検出用の圧力センサ28bとを有している。
【0037】
圧力センサ28aは、ブームシリンダ16のヘッド側に取り付けられている。圧力センサ28aは、ブームシリンダ16のシリンダヘッド側油室内の作動油の圧力(ヘッド圧)を検出することができる。圧力センサ28aは、ブームシリンダ16のヘッド圧を示す検出信号を第1処理装置30に出力する。圧力センサ28bは、ブームシリンダ16のボトム側に取り付けられている。圧力センサ28bは、ブームシリンダ16のシリンダボトム側油室内の作動油の圧力(ボトム圧)を検出することができる。圧力センサ28bは、ブームシリンダ16のボトム圧を示す検出信号を第1処理装置30に出力する。
【0038】
第1角度検出器29は、たとえば、ブームピン9に取り付けられたポテンショメータである。第1角度検出器29は、ブーム14の持ち上がり角度(チルト角度)を表すブーム角度を検出する。第1角度検出器29は、ブーム角度を示す検出信号を第1処理装置30に出力する。
【0039】
具体的には、
図1に示すように、ブーム基準線Aは、ブームピン9の中心とバケットピン17の中心とを通る直線である。ブーム角度θ1は、ブームピン9の中心から前方に延びる水平線Hと、ブーム基準線Aとの成す角度である。ブーム基準線Aが水平である場合をブーム角度θ1=0°と定義する。ブーム基準線Aが水平線Hよりも上方にある場合にブーム角度θ1を正とする。ブーム基準線Aが水平線Hよりも下方にある場合にブーム角度θ1を負とする。
【0040】
第2角度検出器48は、たとえば、支持ピン18aに取り付けられたポテンショメータである。第2角度検出器48は、ブーム14に対するバケット6のチルト角度を表すバケット角度を検出する。第2角度検出器48は、バケット角度を示す検出信号を第1処理装置30に出力する。
【0041】
具体的には、
図1に示すように、バケット基準線Bは、バケットピン17の中心とバケット6の刃先6aとを通る直線である。バケット角度θ2は、ブーム基準線Aとバケット基準線Bとの成す角度である。バケット6を接地した状態でバケット6の刃先6aが地上において水平となる場合をバケット角度θ2=0°と定義する。バケット6を掘削方向(上向き)に移動した場合にバケット角度θ2を正とする。バケット6をダンプ方向(下向き)に移動した場合にバケット角度θ2を負とする。
【0042】
第2角度検出器48は、ブーム14に対するベルクランク18の角度(ベルクランク角度)を検出することにより、バケット角度θ2を検出してもよい。ベルクランク角度は、支持ピン18aの中心と連結ピン18bの中心とを通る直線と、ブーム基準線Aとの成す角度である。第2角度検出器48は、バケットピン17に取り付けられたポテンショメータまたは近接スイッチであってもよい。または第2角度検出器48は、バケットシリンダ19に配置されたストロークセンサであってもよい。
【0043】
回動機構60は、前フレーム2aと後フレーム2bとを回動可能に連結している。後フレーム2bに対する前フレーム2aの回動は、前フレーム2aと後フレーム2bとの間に連結されたアーティキュレートシリンダを伸縮させることで行われる。そして、前フレーム2aを後フレーム2bに対して屈曲させる(アーティキュレートさせる)ことで、ホイールローダの旋回時の旋回半径をより小さくすること、および、オフセット走行による溝掘や法切作業が可能である。回動機構60には、アーティキュレート角度センサ61が設けられている。アーティキュレート角度センサ61は、アーティキュレート角度を検出する。アーティキュレート角度センサ61は、アーティキュレート角度を示す検出信号を第1処理装置30に出力する。
【0044】
位置検出センサ64は、ホイールローダ1の位置を示す検出信号を第1処理装置30に出力する。撮像装置65は、撮像装置65が撮像した撮像画像を第1処理装置30に出力する。IMU66は、ホイールローダ1の傾斜角を示す検出信号を第1処理装置30に出力する。
【0045】
図2に示されるように、ホイールローダ1は、キャブ5内に、オペレータによって操作される操作装置を備えている。操作装置は、前後進切換装置49、アクセル操作装置51、ブーム操作装置52、変速操作装置53、バケット操作装置54、およびブレーキ操作装置58を含んでいる。
【0046】
前後進切換装置49は、前後進切換操作部材49aと、前後進切換検出センサ49bとを含んでいる。前後進切換操作部材49aは、車両の前進および後進の切り換えを指示するためにオペレータによって操作される。前後進切換操作部材49aは、前進(F)、中立(N)、および後進(R)の各位置に切り換えられることができる。前後進切換検出センサ49bは、前後進切換操作部材49aの位置を検出する。前後進切換検出センサ49bは、前後進切換操作部材49aの位置によって表される前後進指令の検出信号(前進、中立、後進)を第1処理装置30に出力する。前後進切換装置49は、前進(F)、中立(N)および後進(R)を切り換え可能なFNR切換レバーを含む。
【0047】
アクセル操作装置51は、アクセル操作部材51aと、アクセル操作検出部51bとを含んでいる。アクセル操作部材51aは、エンジン20の目標回転速度を設定するためにオペレータによって操作される。アクセル操作検出部51bは、アクセル操作部材51aの操作量(アクセル操作量)を検出する。アクセル操作検出部51bは、アクセル操作量を示す検出信号を第1処理装置30に出力する。
【0048】
ブレーキ操作装置58は、ブレーキ操作部材58aと、ブレーキ操作検出部58bとを含んでいる。ブレーキ操作部材58aは、ホイールローダ1の減速力を操作するために、オペレータによって操作される。ブレーキ操作検出部58bは、ブレーキ操作部材58aの操作量(ブレーキ操作量)を検出する。ブレーキ操作検出部58bは、ブレーキ操作量を示す検出信号を第1処理装置30に出力する。ブレーキ操作量としてブレーキオイルの圧力が用いられてもよい。
【0049】
ブーム操作装置52は、ブーム操作部材52aと、ブーム操作検出部52bとを含んでいる。ブーム操作部材52aは、ブーム14を上げ動作または下げ動作させるためにオペレータによって操作される。ブーム操作検出部52bは、ブーム操作部材52aの位置を検出する。ブーム操作検出部52bは、ブーム操作部材52aの位置によって表されるブーム14の上げ指令または下げ指令の検出信号を、第1処理装置30に出力する。
【0050】
変速操作装置53は、変速操作部材53aと、変速操作検出部53bとを含んでいる。変速操作部材53aは、動力伝達機構23における入力軸21から出力軸23aへの変速を制御するためにオペレータによって操作される。変速操作検出部53bは、変速操作部材53aの位置を検出する。変速操作検出部53bは、変速操作部材53aの位置によって表される変速の検出指令を、第1処理装置30に出力する。
【0051】
バケット操作装置54は、バケット操作部材54aと、バケット操作検出部54bとを含んでいる。バケット操作部材54aは、バケット6を掘削動作またはダンプ動作させるためにオペレータによって操作される。バケット操作検出部54bは、バケット操作部材54aの位置を検出する。バケット操作検出部54bは、バケット操作部材54aの位置によって表されるバケット6のチルトバック方向またはダンプ方向への操作指令の検出信号を、第1処理装置30に出力する。
【0052】
アーティキュレート操作装置55は、アーティキュレート操作部材55aと、アーティキュレート操作検出部55bとを含んでいる。アーティキュレート操作部材55aは、回動機構60を介して前フレーム2aを後フレーム2bに対して屈曲させる(アーティキュレートさせる)ためにオペレータによって操作される。アーティキュレート操作検出部55bは、アーティキュレート操作部材55aの位置を検出する。アーティキュレート操作検出部55bは、アーティキュレート操作部材55aの位置によって表される左方向に対する屈曲指令または右方向に対する屈曲指令の検出信号を、第1処理装置30に出力する。
【0053】
第1処理装置30は、RAM(Random Access Memory)、ROM(Read Only Memory)などの記憶装置と、CPU(Central Processing Unit)などの演算装置を含むマイクロコンピュータで構成されている。第1処理装置30は、エンジン20、作業機3(ブームシリンダ16、バケットシリンダ19など)、動力伝達機構23などの動作を制御する、ホイールローダ1のコントローラの機能の一部として実現されてもよい。第1処理装置30には、前後進切換装置49によって検出される前後進指令の信号と、車速検出部27によって検出されるホイールローダ1の車速の信号と、第1角度検出器29によって検出されるブーム角度の信号と、圧力センサ28aによって検出されるブームシリンダ16のヘッド圧の信号と、圧力センサ28bによって検出されるブームシリンダ16のボトム圧の信号とが主に入力される。
【0054】
ホイールローダ1は、表示部40および出力部45をさらに有している。表示部40は、キャブ5に配置された、オペレータが視認するモニタである。
【0055】
出力部45は、ホイールローダ1の外部に設置されたサーバ(第2処理装置70)に、ホイールローダ1の動作情報を含む作業機械動作情報を出力する。出力部45は、所定期間毎にホイールローダ1の動作情報を含む作業機械動作情報を出力しても良いし、または、複数の期間における作業機械動作情報を一括して出力してもよい。出力部45は、たとえば、無線通信などの通信機能を有し、第2処理装置70と通信してもよい。または、出力部45は、たとえば、第2処理装置70がアクセス可能な携帯記憶装置(メモリカードなど)のインタフェースであってもよい。第2処理装置70は、モニタ機能にあたる表示部を有しており、出力部45から出力された作業機械動作情報に基づく動作画像を表示することができる。第2処理装置70は、ホイールローダ1と異なる位置に設けられており、一例として遠隔地において表示部によりホイールローダ1の作業中の動作画像を認識することが可能である。
【0056】
<ホイールローダ1の動作、および作業分類>
本実施形態のホイールローダ1は、土砂などの掘削対象物100をバケット6に掬い取る掘削動作と、バケット6内の荷(掘削対象物100)をダンプトラック110などの運搬機械に積み込む積込動作とを実行する。
【0057】
図3は、実施形態に基づくホイールローダ1の掘削積込作業中の動作を説明する模式図である。ホイールローダ1は、次のような複数の動作を順次に行うことを繰り返して、掘削対象物100を掘削し、ダンプトラック110などの運搬機械に掘削対象物100を積み込んでいる。
【0058】
図3(A)に示されるように、ホイールローダ1は、掘削対象物100に向かって前進する。この空荷前進動作において、オペレータは、ブームシリンダ16およびバケットシリンダ19を操作して、作業機3をブーム14の先端が低い位置にありバケット6が水平を向いた掘削姿勢にして、ホイールローダ1を掘削対象物100に向けて前進させる。
【0059】
図3(B)に示されるように、バケット6の刃先6aが掘削対象物100に食い込むまで、オペレータはホイールローダ1を前進させる。この掘削(突込み)動作において、バケット6の刃先6aが掘削対象物100に食い込む。
【0060】
図3(C)に示されるように、その後オペレータは、ブームシリンダ16を操作してバケット6を上昇させるとともに、バケットシリンダ19を操作してバケット6をチルトバックさせる。この掘削(掬込み)動作により、図中の曲線矢印のようにバケット軌跡Lに沿ってバケット6が上昇し、バケット6内に掘削対象物100が掬い込まれる。これにより、掘削対象物100を掬い取る掘削作業が実行される。
【0061】
掘削対象物100の種類によって、バケット6を1回チルトバックさせるだけで掬込み動作が完了する場合がある。または、掬込み動作において、バケット6をチルトバックさせ、中立にし、再びチルトバックさせるという動作を繰り返す場合もある。
【0062】
図3(D)に示されるように、バケット6に掘削対象物100が掬い込まれた後、オペレータは、積荷後進動作にて、ホイールローダ1を後進させる。オペレータは、後退しながらブーム上げをしてもよく、
図3(E)にて前進しながらブーム上げをしてもよい。
【0063】
図3(E)に示されるように、オペレータは、バケット6を上昇させた状態を維持しながら、またはバケット6を上昇させながら、ホイールローダ1を前進させてダンプトラック110に接近させる。この積荷前進動作により、バケット6はダンプトラック110の荷台のほぼ真上に位置する。
【0064】
図3(F)に示されるように、オペレータは、所定位置でバケット6をダンプして、バケット6内の荷(掘削対象物)をダンプトラック110の荷台上に積み込む。この動作は、いわゆる排土動作である。この後、オペレータは、ホイールローダ1を後進させながらブーム14を下げ、バケット6を掘削姿勢に戻す。この動作は、後進・ブーム下げ動作である。以上が、掘削積込作業の1サイクルをなす典型的な各動作である。
【0065】
図4は、ホイールローダ1の掘削積込作業中の動作の判別方法を示すテーブルである。
図4に示したテーブルにおいて、一番上の「動作」の行には、
図3(A)~
図3(F)に示した各動作の名称が示されている。
【0066】
「前後進切換レバー」、「作業機操作」および「作業機シリンダ圧力」の行には、ホイールローダ1の現在の動作が、
図3(A)~
図3(F)に示した各動作のうちどの動作であるかを判定するために第1処理装置30(
図2)が使用する、各種の判断条件が示されている。ここで、本明細書では、掘削積込作業中のホイールローダ1の現在の動作がどの動作であるかの判定を、作業分類と称する。作業分類は、掘削積込作業中のホイールローダ1の動作の内容を示すものである。
【0067】
より詳細には、「前後進切換レバー」の行には、前後進切換レバーについての判定条件が丸印で示されている。
【0068】
「作業機操作」の行には、作業機3に対するオペレータの操作についての判定条件が丸印で示されている。より詳細には、「ブーム」の行にはブーム14に対する操作に関する判定条件が示されており、「バケット」の行にはバケット6に対する操作に関する判定条件が示されている。
【0069】
「作業機シリンダ圧力」の行には、作業機3のシリンダの現在の油圧、たとえばブームシリンダ16のシリンダボトム室の油圧、についての判定条件が示されている。ここで、油圧に関して、4つの基準値A、B、C、Pが予め設定され、これら基準値A、B、C、Pにより複数の圧力範囲(基準値P未満の範囲、基準値AからCの範囲、基準値BからPの範囲、基準値C未満の範囲)が定義され、これらの圧力範囲が上記判断条件として設定されている。4つの基準値A、B、C、Pの大きさは、A>B>C>Pとなっている。
【0070】
各動作に対応する「前後進切換レバー」、「ブーム」、「バケット」および「作業機シリンダ圧力」の判定条件の組み合わせを用いることにより、第1処理装置30は、ホイールローダ1の現在の動作が、どの動作であるのかを判別可能である。
【0071】
図4に示した制御を行う場合の第1処理装置30の具体的動作を以下に説明する。
図4に示した各作業工程に対応する「前後進切換レバー」、「ブーム」、「バケット」および「作業機シリンダ圧力」の判定条件の組み合わせが、記憶部30j(
図2)に予め格納されている。第1処理装置30は、前後進切換装置49からの信号に基づいて、現在選択されている前後進切換レバー(F、N、R)を把握する。第1処理装置30は、ブーム操作検出部52bからの信号に基づいて、ブーム14に対する現在の操作の種類(下げ、中立または上げ)を把握する。第1処理装置30は、バケット操作検出部54bからの信号に基づいて、バケット6に対する現在の操作の種類(ダンプ、中立またはチルトバック)を把握する。さらに、第1処理装置30は、
図2に示した圧力センサ28bからの信号に基づいて、ブームシリンダ16のシリンダボトム室の現在の油圧を把握する。
【0072】
第1処理装置30は、把握された現在の前後進切換レバー、ブーム操作種類、バケット操作種類およびリフトシリンダ油圧の組み合わせ(つまり現在の作業状態)を、予め記憶してある各動作に対応する「前後進切換レバー」、「ブーム」、「バケット」および「作業機シリンダ圧力」の判定条件の組み合わせと対照する。この対照する処理の結果として、第1処理装置30は、現在の作業状態に最も良く一致する判定条件の組み合わせがどの動作に対応するのかを判定する。
【0073】
ここで、
図4に示す掘削積込作業の各動作に対応する判定条件の組み合わせは、一例として次のとおりである。
【0074】
空荷前進動作においては、前後進切換レバーがFであり、ブーム操作とバケット操作とがともに中立であり、作業機シリンダ圧力が基準値P未満である。掘削(突込み)動作においては、前後進切換レバーがF、ブーム操作とバケット操作とが共に中立、作業機シリンダ圧力が基準値AからCの範囲である。掘削(掬込み)動作においては、前後進切換レバーがFまたはR、ブーム操作が上げまたは中立、バケット操作がチルトバック、作業機シリンダ圧力が基準値AからCの範囲である。バケット操作については、チルトバックと中立とが交互に繰り返される判定条件をさらに追加してもよい。掘削対象物の状態によっては、バケット6をチルトバックさせ、中立にし、再びチルトバックさせるという動作を繰り返す場合があるからである。
【0075】
積荷後進動作においては、前後進切換レバーがR、ブーム操作が中立または上げ、バケット操作が中立、作業機シリンダ圧力が基準値BからPの範囲である。積荷前進動作においては、前後進切換レバーがF、ブーム操作が上げまたは中立、バケット操作が中立、作業機シリンダ圧力が基準値BからPの範囲である。排土動作においては、前後進切換レバーがF、ブーム操作が上げまたは中立、バケット操作がダンプ、作業機シリンダ圧力が基準値BからPの範囲である。
【0076】
後進・ブーム下げ動作においては、前後進切換レバーがR、ブーム操作が下げ、バケット操作がチルトバック、作業機シリンダ圧力が基準値P未満である。
【0077】
図4にはさらに、ホイールローダ1が単純に走行する単純走行動作が示されている。単純走行動作では、オペレータはブーム14を低い位置にしてホイールローダ1を前進させる。バケット6に荷を積んで荷を運搬する場合もあるし、バケット6に荷を積まずに走行する場合もある。単純走行動作においては、前後進切換レバーがF、ブーム操作とバケット操作とが共に中立、作業機シリンダ圧力が基準値C未満である。
【0078】
第1処理装置30で判定されたホイールローダ1の動作に関する情報は、作業機械動作情報の一部として、出力部45を介して第2処理装置70に出力される。
【0079】
<コンピュータ102Aの詳細構成>
図5は、作業機械を含むシステムに含まれる、コンピュータ102Aの構成を示す模式図である。実施形態に係るシステムは、
図4を参照して説明したテーブルによらずに、ホイールローダ1による掘削積込作業中の作業分類を実行するためのシステムである。
図5に示されるコンピュータ102Aは、
図2に示される第1処理装置30の一部構成を成すものである。コンピュータ102Aは、実施形態に係るシステム用に専用に設計されたものであってもよく、または汎用のPC(Personal Computer)であってもよい。
【0080】
コンピュータ102Aは、プロセッサ103と、記憶装置104と、通信インタフェース105と、I/Oインタフェース106とを有している。プロセッサ103は、たとえばCPUである。
【0081】
記憶装置104は、記憶されたプログラムおよびデータなどの情報をプロセッサ103が読み取り可能なように記憶する媒体を含んでいる。記憶装置104は、RAM(Random Access Memory)、またはROM(Read Only Memory)などのシステムメモリと、補助記憶装置とを含んでいる。補助記憶装置は、たとえばハードディスクなどの磁気的記録媒体、CD(Compact Disc)、DVD(Digital Versatile Disc)などの光学的記録媒体、またはフラッシュメモリなどの半導体メモリであってもよい。記憶装置104は、コンピュータ102Aに内蔵されてもよい。記憶装置104は、コンピュータ102Aに着脱可能に接続される外部記録媒体109を含んでもよい。外部記録媒体109は、CD-ROMであってもよい。
【0082】
通信インタフェース105は、たとえば有線LAN(Local Area Network)モジュール、または無線LANモジュールなどであり、通信ネットワークを介した通信を行うためのインタフェースである。I/Oインタフェース106は、たとえばUSB(Universal Serial Bus)ポートなどであり、外部装置と接続するためのインタフェースである。
【0083】
コンピュータ102Aは、I/Oインタフェース106を介して、入力装置107、および出力装置108と接続される。入力装置107は、ユーザがコンピュータ102Aへの入力を行うための装置である。入力装置107は、たとえば、マウス、またはトラックボールなどのポインティングデバイスを含んでいる。入力装置107は、キーボードなどの文字入力のための装置を含んでもよい。出力装置108は、たとえば、ディスプレイ(表示部40、
図2)を含んでいる。
【0084】
図6は、出荷前のホイールローダ1のシステム構成を示すブロック図である。
図6に示されるプロセッサ103および記憶装置104は、
図5に示されるコンピュータ102Aの一部構成をなすものである。プロセッサ103は、操作データ生成部161を有している。
【0085】
操作データ生成部161は、第1油圧検出器28a、28bから、ブームシリンダ16の油室内の作動油の圧力を検出した検出信号の入力を受ける。操作データ生成部161は、アクセル操作検出部51bから、アクセル操作量を検出した検出信号の入力を受ける。操作データ生成部161は、車速検出部27から、ホイールローダ1の車速を検出した検出信号の入力を受ける。車速検出部27が出力軸23aの回転速度を検出した検出信号を操作データ生成部161に出力し、この検出信号に基づいて操作データ生成部161がホイールローダ1の車速を算出してもよい。
【0086】
プロセッサ103は、タイマ162を有している。操作データ生成部161は、タイマ162から現在時刻を読み出し、ホイールローダ1が掘削作業を実行しているときの、掘削作業開始からの経過時間を演算する。
【0087】
掘削作業が開始したこと、すなわちホイールローダ1の動作が空荷前進動作から掘削(突込み)動作へと移ったことは、バケット6の刃先6aが掘削対象物100に突っ込みバケット6に掘削対象物100の負荷が作用し始めるときにブームシリンダ16の油室内の油圧が増加することを検出すること、および作業機3が掘削作業を始める姿勢にあるかをブーム角度θ1とバケット角度θ2とにより確認することで、判定される。作業においてブームシリンダ16が受ける負荷を基に、作業開始時点が判定されてもよい。作業開始は、ホイールローダ1の周辺を撮像装置65で撮影した撮像データを基に判定してもよい。
【0088】
ブームシリンダ16の油圧、アクセル操作量、車速、および掘削作業開始からの経過時間は、ホイールローダ1の動作に関する操作データに含まれる。操作データは、アクセル操作量および車速などの、ホイールローダ1の走行に関するデータを含んでいる。
【0089】
プロセッサ103は、姿勢データ生成部163を有している。姿勢データ生成部163は、第1角度検出器29から、ブーム角度θ1を検出した検出信号の入力を受ける。姿勢データ生成部163は、第2角度検出器48から、バケット角度θ2を検出した検出信号の入力を受ける。ブーム角度θ1およびバケット角度θ2は、作業機械本体(車体)に対する作業機3の姿勢を示す姿勢データを構成している。
【0090】
プロセッサ103は、作業分類判別部164を有している。作業分類判別部164は、前後進切換検出センサ49bから、前後進指令の検出信号の入力を受ける。作業分類判別部164は、ブーム操作検出部52bから、ブーム14の上げ指令または下げ指令の検出信号の入力を受ける。作業分類判別部164は、バケット操作検出部54bから、バケット6のチルトバック方向またはダンプ方向への操作指令の検出信号の入力を受ける。作業分類判別部164はまた、第1油圧検出器28bから、ブームシリンダ16のシリンダボトム室の油圧を検出した検出信号の入力を受ける。
【0091】
作業分類判別部164は、入力されたこれらの検出信号に基づいて、
図4に示されるテーブルを参照して、ホイールローダ1の現在の動作がどの動作であるかの判定(すなわち、作業分類)を実行する。
【0092】
プロセッサ103は、動作状態画像生成部165を有している。動作状態画像生成部165は、姿勢データ生成部163で生成した姿勢データに基づいて、動作状態画像データを生成する。動作状態画像データは、作業中のホイールローダ1の立体形状を示す3次元モデル形状データを含む。3次元モデル形状データは、ホイールローダ1を構成する作業機3、車体、走行輪4a、4bなどのデータを含む。
【0093】
プロセッサ103は、特定視点画像生成部166を有している。特定視点画像生成部166は、動作状態画像生成部165で生成した3次元モデルと、その3次元モデルを仮想的に見る視点の位置を示す視点位置とから、3次元モデルを特定の視点位置から見た2次元画像を生成する。視点位置は、任意の位置に設定することが可能である。視点位置を調整することにより、3次元モデルを任意の方向から見た2次元画像の生成および表示が可能である。
【0094】
プロセッサ103は、作業分類推定部167を有している。記憶装置104には、作業分類推定モデル180が保存されている。
【0095】
作業分類推定モデル180は、一連の掘削積込作業中のホイールローダ1の現在の動作がどの動作であるかを推定するための人工知能モデルである。作業分類推定モデル180は、特定視点画像生成部166で生成した2次元画像から、ホイールローダ1の現在の動作がどの動作であるかを推定するように構成されている。コンピュータ102Aは、人工知能の作業分類推定モデル180を用いることで、掘削積込作業中のホイールローダ1の動作を推定する。作業分類推定部167は、作業分類推定モデル180を用いて、ホイールローダ1の3次元モデルを特定の視点位置から見た2次元画像から作業分類を推定した推定作業分類を出力する。
【0096】
より具体的には、作業分類推定部167は、記憶装置104から作業分類推定モデル180を読み出し、特定視点画像生成部166で生成した2次元画像を作業分類推定モデル180に入力することで、作業分類の推定結果の出力を得る。作業分類推定部167は、操作データ生成部161で生成した操作データを作業分類推定モデル180に入力してもよい。2次元画像に加えて操作データを作業分類推定モデル180に入力することで、作業分類の推定の精度が高められる。
【0097】
作業分類推定モデル180は、ニューラルネットワークを含んでいる。作業分類推定モデル180は、たとえば、畳み込みニューラルネットワーク(CNN)などのディープニューラルネットワークを含んでいる。
【0098】
実施形態におけるモデルは、ハードウェア、ハードウェア上で実行可能なソフトウェア、ファームウェア、またそれらの組合せに実装されていてもよい。モデルは、プロセッサ103によって実行されるプログラム、アルゴリズム、およびデータを含んでもよい。モデルの機能は、単一のモジュールによって実行されてもよく、または複数のモジュールに分散して実行されてもよい。モデルは、複数のコンピュータに分散して配置されてもよい。
【0099】
プロセッサ103は、判定部168を有している。判定部168は、作業分類推定部167によって推定された作業分類の推定結果と、作業分類判別部164で実行された作業分類の結果とを比較する。判定部168は、作業分類推定部167より出力された推定作業分類が、作業分類判別部164による作業分類の結果と一致しているか否かを判定する。
【0100】
プロセッサ103は、調整部169を有している。調整部169は、判定部168が判定した推定作業分類と作業分類との比較結果に基づいて、作業分類推定モデル180を更新する。このようにして、作業分類推定モデル180の学習が行なわれる。作業分類推定モデル180の学習は、ホイールローダ1の出荷前に、工場で行なわれる。
【0101】
<学習済みの作業分類推定モデル180の製造方法>
図7は、学習済みの作業分類推定モデル180の製造方法を示すフローチャートである。
図8および
図9は、作業分類推定モデル180を学習させるための処理を示す概略図である。
図6について説明した内容と一部重複もあるが、
図7~9を参照して、作業分類を推定する作業分類推定モデル180を学習させるための処理について、以下に説明する。
【0102】
図7に示されるように、まずステップS101において、操作データ201を生成する。ステップS102において、姿勢データ203を生成する。
【0103】
コンピュータ102A、より詳しくは操作データ生成部161は、掘削作業中のある時刻における掘削作業開始からの経過時間を演算する。操作データ生成部161は、第1油圧検出器28a,28b、アクセル操作検出部51b、および車速検出部27を含む各種のセンサの検出結果に基づいて、当該時刻における操作データ201(
図8)を生成する。コンピュータ102A、より詳しくは姿勢データ生成部163は、第1角度検出器29および第2角度検出器48の検出結果に基づいて、当該時刻におけるブーム角度θ1およびバケット角度θ2を検出して、姿勢データ203(
図8)を生成する。
【0104】
次にステップS103において、ホイールローダ1の動作を判別する。コンピュータ102A、より詳しくは作業分類判別部164は、前後進切換検出センサ49b、ブーム操作検出部52b、バケット操作検出部54b、および第1油圧検出器28bを含む各種のセンサの検出結果に基づいて、
図4に示されるテーブルを参照して、ホイールローダ1の現在の動作の判別、すなわち作業分類を行ない、作業分類結果204(
図8)を生成する。
【0105】
次にステップS104において、動作状態画像を生成する。コンピュータ102A、より詳しくは動作状態画像生成部165は、姿勢データ203に基づいて、ホイールローダ1の立体形状を示す3次元モデルを生成する。
図8に示す動作状態画像205は、作業中のホイールローダ1を含んでいる。動作状態画像205には、ホイールローダ1を構成する作業機3、車体、走行輪4a、4bなどが表示されている。
【0106】
次にステップS105において、特定視点画像を生成する。コンピュータ102A、より詳しくは特定視点画像生成部166は、ステップS104で生成された動作状態画像205と、動作状態画像205に含まれる3次元モデルを仮想的に見る視点の位置を示す視点位置とから、3次元モデルを特定の視点位置から見た2次元画像である特定視点画像206(
図8,9)を生成する。特定視点画像206は、3次元モデルを視点位置から仮想カメラにより撮像した仮想撮像画像であるともいえる。
【0107】
図8に示される特定視点画像206は、左側方から見たホイールローダ1を含んでいる。この場合の視点位置は、ホイールローダ1の左側方の位置である。
図9に示される特定視点画像206は、右側方から見たホイールローダ1を含んでいる。この場合の視点位置は、ホイールローダ1の右側方の位置である。視点位置は、任意の位置に設定することが可能である。視点位置を変えることにより、1つの動作状態画像205から、複数の特定視点画像206が生成される。1つの動作状態画像205を任意の視点位置から撮像した複数の特定視点画像206の生成が可能である。
【0108】
図8に示される学習用データ188Aは、操作データ201、特定視点画像206、および作業分類結果204を含んでいる。
図9に示される学習用データ188Bも同様に、操作データ201、特定視点画像206、および作業分類結果204を含んでいる。作業分類結果204は、操作データ201および特定視点画像206に対してラベル付けされている。作業分類結果204は、特定視点画像206を作成する元データである、動作状態画像205および視点位置に対してラベル付けされている。作業分類結果204は、動作状態画像205を作成するための元データである姿勢データ203に対してラベル付けされている。
【0109】
学習用データ188A,188Bにおいて、操作データ201および作業分類結果204は同一時刻のホイールローダ1に対して生成されたものであるため同一であり、特定視点画像206が異なる。視点位置を変えることにより、1つの動作状態画像205から、複数の学習用データ188A,188Bが作成される。これにより、作業分類推定モデル180を学習させるための学習用データの数が増加されている。
【0110】
ステップS101~ステップS105の処理は、必ずしもこの順序で行われなくてもよい。ステップS101,S102およびS103の処理が同時に行なわれてもよく、ステップS102,S104およびS105の処理がこの順で行なわれた後にステップS101,S103の処理が行なわれてもよい。
【0111】
次にステップS106において、作業分類を推定する。コンピュータ102A、より詳しくは作業分類推定部167は、記憶装置104から作業分類推定モデル180を読み出す。作業分類推定モデル180は、
図8,9に示されるニューラルネットワークを含んでいる。ニューラルネットワークは、入力層181と、中間層(隠れ層)182と、出力層183とを含んでいる。中間層182は多層化されている。入力層181、中間層182および出力層183は、1または複数のユニット(ニューロン)を有している。入力層181、中間層182および出力層183のユニットの数は、適宜設定することができる。
【0112】
隣り合う層のユニット同士は結合されており、各結合には重みが設定されている。各ユニットにはバイアスが設定されている。各ユニットには閾値が設定されている。各ユニットへの入力値と重みとの積の総和にバイアスを加算した値が閾値を超えているか否かによって、各ユニットの出力値が決定される。
【0113】
作業分類推定モデル180は、作業中のホイールローダ1の立体形状を示す3次元モデルを特定の視点位置から見た2次元画像と、ホイールローダ1の動作に関する操作データとから、作業分類を推定した推定作業分類を出力するように学習される。学習によって調整された作業分類推定モデル180のパラメータは、記憶装置104に記憶されている。作業分類推定モデル180のパラメータは、たとえば、ニューラルネットワークの層数、各層におけるユニットの個数、ユニット同士の結合関係、各ユニット間の結合の重み、各ユニットに紐付けられているバイアス、および各ユニットの閾値を含んでいる。
【0114】
作業分類推定部167は、特定視点画像生成部166で生成した2次元画像である特定視点画像206と、操作データ生成部161で生成した操作データ201とを、入力層181に入力する。出力層183から、推定作業分類を示す出力値が出力される。たとえば、コンピュータ102Aは、特定視点画像206および操作データ201を入力層181の入力として用いて、作業分類推定モデル180のニューラルネットワークの順方向伝播の演算処理を行なう。これにより、コンピュータ102Aは、ニューラルネットワークの出力層183から出力される出力値として、作業分類を推定した推定作業分類を得る。
【0115】
次にステップS107において、推定作業分類の判定を行なう。コンピュータ102A、より詳しくは判定部168は、作業分類推定モデル180の出力層183から出力された、作業分類を推定した推定作業分類と、学習用データ188A,188Bに含まれる作業分類結果204とを比較して、推定作業分類が作業分類結果204と一致しているか否かを判定する。
【0116】
コンピュータ102Aは、掘削作業中のある時刻における操作データ201と、当該時刻におけるホイールローダ1の立体形状を示す3次元モデルを特定の視点位置から見た特定視点画像206とを入力データとし、当該時刻における作業分類結果204を教師データとして、作業分類推定モデル180の学習を行なう。コンピュータ102Aは、推定作業分類と作業分類結果204とを比較した判定の結果から、バックプロパゲーションにより、各ユニット間の結合の重み、各ユニットのバイアス、および各ユニットの閾値のそれぞれの誤差を算出する。
【0117】
次にステップS108において、作業分類推定モデル180のパラメータを調整する。コンピュータ102A、より詳しくは調整部169は、判定部168による推定作業分類と作業分類結果204とを比較した判定の結果に基づいて、各ユニット間の結合の重み、各ユニットのバイアス、および各ユニットの閾値などの、作業分類推定モデル180のパラメータを調整する。このようにして、作業分類推定モデル180が更新される。そして、同じ操作データ201および特定視点画像206が入力層181に入力されたならば、教師データである作業分類結果204と一致する推定作業分類を出力する確率が高まるようにする。更新された作業分類推定モデル180のパラメータは、記憶装置104に記憶される。
【0118】
次回に作業分類を推定するときには、更新された作業分類推定モデル180に操作データ201および特定視点画像206を入力して、推定作業分類の出力を得る。コンピュータ102Aは、作業分類推定モデル180が出力する推定作業分類が、操作データ201と、特定視点画像206の基となる姿勢データ203とを取得した時点での作業分類結果204と一致するようになるまで、ステップS101からステップS108までの処理を繰り返す。このようにして、作業分類推定モデル180のパラメータが最適化され、作業分類推定モデル180の学習が行われる。
【0119】
作業分類推定モデル180が十分に学習を積み重ねた結果、十分に精度の高い推定作業分類が得られるようになると、コンピュータ102Aは作業分類推定モデル180の学習を終える。このようにして、学習済みの作業分類推定モデル180が作成される。そして、処理を終了する(エンド)。
【0120】
なお、作業分類推定モデル180の各種のパラメータの初期値は、テンプレートにより与えられてもよい。またはパラメータの初期値は、人間の入力により手動で与えられてもよい。作業分類推定モデル180の再学習を行うときには、コンピュータ102Aは、再学習を行う対象となる作業分類推定モデル180のパラメータとして記憶装置104に記憶されている値に基づいて、パラメータの初期値を用意してもよい。
【0121】
以上説明したように、実施形態に係る学習済みの作業分類推定モデル180の製造方法では、作業中のホイールローダ1の立体形状を示す3次元モデルを特定の視点位置から見た2次元画像である特定視点画像206と、特定視点画像206に対してラベル付けされた作業分類結果204とを含む学習用データ188A,188Bが取得される。そして、学習用データ188A,188Bにより、作業分類推定モデル180の学習がなされる。
【0122】
作業分類推定モデル180を学習させる段階で、ホイールローダ1を実際に撮像した撮像画像を教師データとする場合、教師データを増やすためには、複数台の撮像装置およびセンサ類を準備して多数の撮像画像を作成する必要があり、多大な労力を必要とする。
【0123】
図8,9に示されるように、3次元モデルの動作状態画像205を教師データにし、視点位置を変えて3次元モデルを見る方向を自在に変更することで、作業分類推定モデル180の学習のための教師データの数を簡単に増やすことができる。多数の教師データによって作業分類推定モデル180を学習させることによって、学習済みの作業分類推定モデル180を用いた作業分類の推定の精度を向上できるので、作業分類を高精度に行なうことが可能になる。
【0124】
図6~9に示されるように、作業機3の姿勢を示す姿勢データ203に基づいて、ホイールローダ1の3次元モデルが作成される。作業機械本体に対するブーム14の角度であるブーム角度θ1と、ブーム14に対するバケット6の角度であるバケット角度θ2との検出結果を用いてホイールローダ1の3次元モデルを作成することで、高精度の3次元モデルを得ることができる。
【0125】
図8,9に示されるように、学習用データ188A,188Bは、ホイールローダ1の動作に関する操作データ201をさらに含んでいる。作業分類推定モデル180を学習させるための学習用データ188A,188Bとして操作データ201が追加されていることで、作業分類の推定の精度をさらに向上することができる。
【0126】
図7に示されるように、作業分類推定モデル180を学習させるための処理は、作業分類推定モデル180を用いて、特定視点画像206から作業分類を推定した推定作業分類を求めるステップ(ステップS106)と、学習用データ188A,188Bに含まれる作業分類結果204に推定作業分類が一致しているか否かを判定するステップ(ステップS107)と、この判定の結果に基づいて、作業分類推定モデル180を更新するステップ(ステップS108)とを含んでいる。このようにすることで、工場出荷前の作業分類推定モデル180の学習段階で、作業分類推定モデル180を十分に学習させて、精度の高い作業分類推定モデル180を作成することができる。
【0127】
<学習済みの作業分類推定モデル180を用いた作業分類の推定>
図10は、工場出荷されるホイールローダ1のシステム構成を示すブロック図である。工場出荷されるホイールローダ1は、
図6に示されるコンピュータ102Aに替えて、コンピュータ102Bを備えている。コンピュータ102Bは、プロセッサ103と記憶装置104とを有している。
【0128】
プロセッサ103は、
図6と同様の、操作データ生成部161、タイマ162、動作状態画像生成部165、特定視点画像生成部166および作業分類推定部167を有している。プロセッサ103はまた、画像処理部171を有している。プロセッサ103は、
図6に示される作業分類判別部164、判定部168および調整部169を有していない。記憶装置104は、学習済みの作業分類推定モデル180を有している。
【0129】
図11は、工場出荷後に作業分類を推定するためにコンピュータ102Bによって実行される処理を示すフローチャートである。
図10,11を参照して、工場出荷後のホイールローダ1の掘削作業中の作業分類を推定する処理について、以下に説明する。
【0130】
まずステップS201において、操作データ201を生成する。コンピュータ102B、より詳しくは操作データ生成部161は、掘削作業中のある時刻における掘削作業開始からの経過時間を演算する。操作データ生成部161は、第1油圧検出器28a,28b、アクセル操作検出部51b、および車速検出部27を含む各種のセンサの検出結果に基づいて、当該時刻における操作データを生成する。
【0131】
次にステップS202において、撮像画像を取得する。コンピュータ102B、より詳しくは画像処理部171は、撮像装置(カメラ)65により撮像された撮像画像を、撮像装置65から取得する。この撮像画像には、ホイールローダ1が表示されている。典型的には、撮像画像には、作業機3の少なくとも一部が表示されている。
【0132】
次にステップS203において、姿勢データを生成する。コンピュータ102B、より詳しくは姿勢データ生成部163は、撮像装置65が撮像した撮像画像から、姿勢データ、具体的にはブーム角度θ1およびバケット角度θ2を出力する。姿勢データ生成部163は、作業機3に設定した特徴点の撮像画像内における位置を求めることにより、姿勢データを生成してもよい。または姿勢データ生成部163は、人工知能の学習済み姿勢推定モデルを利用して、姿勢データを生成してもよい。
【0133】
次にステップS204において、動作状態画像を生成する。コンピュータ102B、より詳しくは動作状態画像生成部165は、ステップS203で生成された姿勢データに基づいて、ホイールローダ1の立体形状を示す3次元モデルを生成する。
【0134】
次にステップS205において、特定視点画像を生成する。コンピュータ102B、より詳しくは特定視点画像生成部166は、ステップS204で生成された動作状態画像と、視点位置とから、3次元モデルを特定の視点位置から見た2次元画像である特定視点画像を生成する。
【0135】
次にステップS206において、作業分類を推定する。コンピュータ102B、より詳しくは作業分類推定部167は、作業分類推定モデル180および学習済みのパラメータの最適値を記憶装置104から読み出すことで、学習済みの作業分類推定モデル180を取得する。
【0136】
作業分類推定部167は、ステップS201で生成された操作データと、ステップS205で生成された特定視点画像とを、作業分類推定モデル180への入力データとして用いる。作業分類推定部167は、操作データおよび特定視点画像を、学習済みの作業分類推定モデル180の入力層181に含まれる各ユニットに入力する。学習済みの作業分類推定モデル180の出力層183から、掘削作業中のホイールローダ1の現在の動作を推定した推定作業分類177(
図10)が出力される。
【0137】
最後に、ステップS207において、コンピュータ102Bは、作業分類を含む管理データを生成する。コンピュータ102Bは、管理データを記憶装置104に記録する。そして、処理を終了する(エンド)。
【0138】
図10,11を参照して説明した実施形態では、3次元モデルから生成された特定視点画像を作業分類推定モデル180に入力して推定作業分類177を求める例について説明した。この例に限られず、撮像装置65により撮像された撮像画像を、3次元モデル化することなく、実画像のまま作業分類推定モデル180に入力して推定作業分類177を求めてもよい。
【0139】
<作業分類推定モデル180の学習に関する変形例>
図12は、作業分類推定モデル180の学習に関する変形例を示す概略図である。
図6~9の説明においては、ホイールローダ1の工場出荷前に作業分類推定モデル180を学習させる例について説明した。作業分類推定モデル180を学習させるための学習用データは、複数のホイールローダ1から収集されてもよい。
【0140】
図12に示される、第1のホイールローダ1(ホイールローダ1A)と、第2のホイールローダ1(ホイールローダ1B)と、第3のホイールローダ1(ホイールローダ1C)とは、同じ機種である。ホイールローダ1A,1B,1Cは、工場出荷後であり、作業現場にある。
【0141】
コンピュータ102Aは、各ホイールローダ1A,1B,1Cから、操作データ201と、姿勢データ203とを取得する。コンピュータ102Aは、姿勢データ203に基づいて、動作状態画像205を生成し、さらに特定視点画像206を生成する。コンピュータ102Aはまた、作業分類結果204を、姿勢データ203に対応付けて取得する。これらの学習用データを用いて、コンピュータ102Aは、特定視点画像206および操作データ201から作業分類を推定した推定作業分類を求めることができるように、作業分類推定モデル180を学習させる。
【0142】
コンピュータ102Aは、通信インタフェース105(
図5)を介して、各ホイールローダ1A,1B,1Cから、操作データ201、姿勢データ203、および作業分類結果204を取得してもよい。またはコンピュータ102Aは、外部記録媒体109を介して、各ホイールローダ1A,1B,1Cから、操作データ201、姿勢データ203、および作業分類結果204を取得してもよい。
【0143】
コンピュータ102Aは、ホイールローダ1A,1B,1Cと同じ作業現場に配置されていてもよい。またはコンピュータ102Aは、作業現場から離れた遠隔地、たとえば管理センターに配置されていてもよい。ホイールローダ1A,1B,1Cは、同じ作業現場にあってもよく、別々の作業現場にあってもよい。
【0144】
学習済みの作業分類推定モデル180は、通信インタフェース105または外部記録媒体109などを介して、各ホイールローダ1A,1B,1Cへ提供される。このようにして、各ホイールローダ1A,1B,1Cは、学習済みの作業分類推定モデル180を備えるものとされる。
【0145】
各ホイールローダ1A,1B,1Cに既に作業分類推定モデル180が保存されている場合には、保存されている作業分類推定モデル180が書き換えられる。上述した学習用データの収集と作業分類推定モデル180の学習とを定期的に実行することで、作業分類推定モデル180の書き換えが定期的に行なわれるようにしてもよい。作業分類推定モデル180のパラメータの最新の更新値は、記憶装置104にその都度記憶されている。
【0146】
学習済みの作業分類推定モデル180は、第4のホイールローダ1(ホイールローダ1D)にも提供される。学習用データを提供するホイールローダ1A,1B,1Cと、学習用データを提供しないホイールローダ1Dとの両方に、作業分類推定モデル180が提供される。ホイールローダ1Dは、ホイールローダ1A,1B,1Cのいずれかと同じ作業現場にあってもよく、ホイールローダ1A,1B,1Cとは異なる作業現場にあってもよい。ホイールローダ1Dは、工場出荷前であってもよい。
【0147】
ホイールローダ1Dは、ホイールローダ1A,1B,1Cとは異なる機種であってもよい。たとえば、ホイールローダ1A,1B,1Cは中型以上の機種であり、ホイールローダ1Dは小型機種であってもよい。ホイールローダの場合、車体の大小にかかわらず、作業機械本体に対する作業機の比率は大きくは変わらない。センサが搭載されている中型以上の機種で姿勢データを取得し、作業機の姿勢に対する作業分類の対応付けの学習がなされた作業分類推定モデル180を、センサを有しない小型機種であるホイールローダ1Dに適用することができる。このようにすれば、小型機種においても作業分類を精度よく推定することができる。
【0148】
上記実施形態では、作業分類推定モデル180はニューラルネットワークを含んでいる。これに限られず、作業分類推定モデル180は、たとえばサポートベクターマシン、決定木など、機械学習を用いて特定視点画像から作業分類を精度よく推定できるモデルであってもよい。
【0149】
実施形態においては、第1処理装置30で作業分類を推定する例について説明したが、特にこれに限られず、第2処理装置70で作業分類を推定するようにしてもよい。
【0150】
今回開示された実施形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0151】
1,1A,1B,1C,1D ホイールローダ、2 車体フレーム、2a 前フレーム、2b 後フレーム、3 作業機、4 走行装置、5 キャブ、6 バケット、6a 刃先、9 ブームピン、14 ブーム、16 ブームシリンダ、17 バケットピン、19 バケットシリンダ、27 車速検出部、28a,28b 第1油圧検出器、29 第1角度検出器、30 第1処理装置、30j 記憶部、45 出力部、48 第2角度検出器、49 前後進切換装置、51 アクセル操作装置、52 ブーム操作装置、53 変速操作装置、54 バケット操作装置、55 アーティキュレート操作装置、58 ブレーキ操作装置、65 撮像装置、70 第2処理装置、100 掘削対象物、102A,102B コンピュータ、103 プロセッサ、104 記憶装置、110 ダンプトラック、161 操作データ生成部、162 タイマ、163 姿勢データ生成部、164 作業分類判別部、165 動作状態画像生成部、166 特定視点画像生成部、167 作業分類推定部、168 判定部、169 調整部、171 画像処理部、177 推定作業分類、180 作業分類推定モデル、181 入力層、182 中間層、183 出力層、188A,188B 学習用データ、201 操作データ、203 姿勢データ、204 作業分類結果、205 動作状態画像、206 特定視点画像。