(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024137093
(43)【公開日】2024-10-07
(54)【発明の名称】作業機械の監視システム
(51)【国際特許分類】
E02F 9/26 20060101AFI20240927BHJP
G06V 20/58 20220101ALI20240927BHJP
G06V 10/778 20220101ALI20240927BHJP
【FI】
E02F9/26 B
G06V20/58
G06V10/778
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2023048467
(22)【出願日】2023-03-24
(71)【出願人】
【識別番号】000005522
【氏名又は名称】日立建機株式会社
(74)【代理人】
【識別番号】110002572
【氏名又は名称】弁理士法人平木国際特許事務所
(72)【発明者】
【氏名】太田 守飛
(72)【発明者】
【氏名】國松 聡美
(72)【発明者】
【氏名】泉 枝穂
【テーマコード(参考)】
2D015
5L096
【Fターム(参考)】
2D015HA03
2D015HB00
5L096CA02
5L096CA23
5L096CA27
5L096DA02
5L096FA02
5L096FA18
5L096FA64
5L096FA69
5L096HA03
5L096HA11
5L096JA11
5L096KA04
(57)【要約】
【課題】認識モデルの更新時に必要な学習用データを選別するために必要な知識のない人でも収集されたデータの中より適切な学習用データを容易に抽出することができ、学習用データを容易に作成することができ、認識モデルの更新を適切に行うことにより、物体の認識の精度の向上を図ることができる作業機械の監視システムを提供する。
【解決手段】教師データ作成装置(サーバ52)は、作業機械10の周囲画像にフラグ情報を付加し、フラグ情報に基づいて周囲画像に対応する機械学習の優先度を決定し、外部(外部端末70)からの入力によって選択された機械学習の優先度に対応する周囲画像を用いて物体認識モデルの教師データを作成し、学習装置53は、教師データ作成装置(サーバ52)で作成された教師データを用いて物体認識モデルの追加の機械学習を実行し、物体認識モデルを更新する。
【選択図】
図3
【特許請求の範囲】
【請求項1】
機械学習が行われた物体認識モデルを用いて作業機械の周囲を撮影した周囲画像を処理し、前記周囲画像から前記作業機械の周囲に存在する物体を検出する物体検出装置と、
前記周囲画像にフラグ情報を付加し、前記フラグ情報に基づいて前記周囲画像に対応する機械学習の優先度を決定し、外部からの入力によって選択された前記機械学習の優先度に対応する前記周囲画像を用いて前記物体認識モデルの教師データを作成する教師データ作成装置と、
前記教師データ作成装置で作成された前記教師データを用いて前記物体認識モデルの追加の機械学習を実行し、前記物体認識モデルを更新する学習装置と、を備えることを特徴とする作業機械の監視システム。
【請求項2】
請求項1に記載の作業機械の監視システムにおいて、
前記フラグ情報には、前記物体認識モデルの更新履歴に関する情報が含まれていることを特徴とする作業機械の監視システム。
【請求項3】
請求項1に記載の作業機械の監視システムにおいて、
前記フラグ情報には、前記周囲画像の撮影時点における前記作業機械の動作内容に関する情報が含まれることを特徴とする作業機械の監視システム。
【請求項4】
請求項1に記載の作業機械の監視システムにおいて、
前記フラグ情報には、前記物体認識モデルを用いて前記周囲画像を処理したときの物体検出結果に関する情報が含まれていることを特徴とする作業機械の監視システム。
【請求項5】
請求項1に記載の作業機械の監視システムにおいて、
前記作業機械の運転室には前記周囲画像に対して物体認識の結果のエラーを入力するための入力装置が備えられ、
前記フラグ情報には、前記周囲画像の撮影時点における前記入力装置の操作の有無に関する情報が含まれていることを特徴とする作業機械の監視システム。
【請求項6】
請求項1に記載の作業機械の監視システムにおいて、
前記教師データ作成装置は、前記作業機械の動作中に撮影した前記周囲画像に対応する機械学習の優先度を動作中以外に撮影した前記周囲画像に対応する機械学習の優先度よりも低く設定することを特徴とする作業機械の監視システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、作業機械の監視システムに関する。
【背景技術】
【0002】
特許文献1には、ショベル周囲の環境情報を取得する環境情報取得部と、環境情報取得部により取得された環境情報に基づいてショベル周囲の物体を判定する判定部と、を備えたショベル支援システムが記載されている。
【0003】
具体的には、判定部は、機械学習が行われた学習済みモデルを用いて、環境情報取得部により取得された環境情報に基づいてショベル周囲の物体を判定する。そして、学習部は、外部装置で環境情報取得部にて取得された環境情報から生成された教師情報に基づいて上記学習済みモデルと同一の学習済みモデルに追加学習を行い、追加学習済みモデルを更新する。判定部は、環境情報取得部により取得された環境情報に基づき、更新された追加学習済みモデルを用いて、ショベル周囲の物体を判定する。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
機械学習により物体の認識の精度を向上させるためには、実際に使用される環境で判定対象となる物体が存在する学習用データを収集し、物体の認識処理に必要な認識モデル(学習モデル)を更新することが有効である。
【0006】
しかしながら、学習用データの収集者は、認識モデルが使用環境に適用するにはどのようなデータが必要であるかを理解し、システム稼働時に収集される膨大な画像データより適切な画像データを抽出しなければならない。このため、学習用データの作成に手間がかかり、物体の認識の精度の向上に必要な認識モデルの更新の遅れや精度ばらつきが発生してしまうといった問題がある。
【0007】
本発明は、認識モデルの更新時に必要な学習用データを選別するために必要な知識のない人でも収集されたデータの中より適切な学習用データを容易に抽出することができ、学習用データを容易に作成することができ、認識モデルの更新を適切に行うことにより、物体の認識の精度の向上を図ることができる作業機械の監視システムを提供することを目的とする。
【課題を解決するための手段】
【0008】
上記課題を解決するため、本発明の一態様による作業機械の監視システムは、機械学習が行われた物体認識モデルを用いて作業機械の周囲を撮影した周囲画像を処理し、前記周囲画像から前記作業機械の周囲に存在する物体を検出する物体検出装置と、前記周囲画像にフラグ情報を付加し、前記フラグ情報に基づいて前記周囲画像に対応する機械学習の優先度を決定し、外部からの入力によって選択された前記機械学習の優先度に対応する前記周囲画像を用いて前記物体認識モデルの教師データを作成する教師データ作成装置と、前記教師データ作成装置で作成された前記教師データを用いて前記物体認識モデルの追加の機械学習を実行し、前記物体認識モデルを更新する学習装置と、を備えることを特徴とする。
【発明の効果】
【0009】
本発明によれば、監視システムの使用現場で撮影された画像データのうち、認識モデルの更新時に必要な学習用データを選別するために必要な知識なく、認識モデルの追加学習用データとして、使用現場への適用性の向上が可能な適切な画像データを容易に選出することができ、学習用データを容易に作成することができ、認識モデルの更新を適切に行うことにより、物体の認識の精度の向上を図ることができる作業機械の監視システムを提供することができる。
【0010】
上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【0011】
【
図1】本発明の一実施形態における作業機械の側面図である。
【
図2】本発明の一実施形態における監視システムのシステム構成図である。
【
図3】本発明の一実施形態における監視システムの回路図である。
【
図4】本発明の一実施形態における監視システムの表示画面例である。
【
図5】本発明の一実施形態におけるモデル変更履歴フラグ追加処理のフローチャートである。
【
図6】本発明の一実施形態における動作フラグ追加処理のフローチャートである。
【
図7】本発明の一実施形態における移動前エリア情報記録処理のフローチャートである。
【
図8】本発明の一実施形態におけるエリア移動フラグ追加処理のフローチャートである。
【
図9】本発明の一実施形態における物体検知フラグ追加処理及び動体検知フラグ追加処理のフローチャートである。
【
図10】本発明の一実施形態におけるエラーフラグ追加処理のフローチャートである。
【
図11】本発明の一実施形態における優先度設定処理のフローチャートである。
【
図12】本発明の一実施形態における第1の重み設定処理の設定例である。
【
図13】本発明の一実施形態における第2の重み設定処理の設定例である。
【
図14】本発明の一実施形態における第3の重み設定処理の設定例である。
【
図15】本発明の一実施形態における学習画像選択画面例である。
【
図16】本発明の一実施形態における画像確認画面例である。
【発明を実施するための形態】
【0012】
図面を参照して、本発明の実施形態に係る作業機械の監視システムについて説明する。作業機械は、土木作業、建設作業、解体作業等の各種作業に用いられる機械である。本実施形態では、作業機械が、クローラ式の油圧ショベルである例について説明する。
【0013】
<作業機械の構成>
図1は、本発明の一実施形態に係る作業機械10の側面図である。
図1に示すように、作業機械10は、作業部20で作業を行う機械であり、例えば油圧ショベルである。作業機械10は、下部走行体11と、上部旋回体12と、作業部20と、油圧シリンダ30と、を有している。
【0014】
下部走行体11は、作業機械10を走行させる部分であり、例えばクローラを備える。
【0015】
上部旋回体12は、下部走行体11の上部に旋回装置を介して旋回可能に取り付けられる。上部旋回体12の前部には、運転室13が設けられている。
【0016】
作業部20は、上部旋回体12に取り付けられる。作業部20は、ブーム21と、アーム22と、バケット23と、を備える。ブーム21は、上部旋回体12に回転自在(起伏自在)に取り付けられる。アーム22は、ブーム21に回転自在に取り付けられる。バケット23は、アーム22に回転自在に取り付けられる。バケット23は、作業対象(土砂など)の、掘削、ならし、すくい、などの作業を行う部分である。
【0017】
油圧シリンダ30は、作業部20を作動させる。油圧シリンダ30は、油圧式の伸縮シリンダである。油圧シリンダ30は、ブームシリンダ31と、アームシリンダ32と、バケットシリンダ33と、を備える。
【0018】
ブームシリンダ31は、上部旋回体12に対してブーム21を回転駆動させる。ブームシリンダ31の基端部は、上部旋回体12に回転自在に取り付けられる。ブームシリンダ31の先端部は、ブーム21に回転自在に取り付けられる。
【0019】
アームシリンダ32は、ブーム21に対してアーム22を回転駆動させる。アームシリンダ32の基端部は、ブーム21に回転自在に取り付けられる。アームシリンダ32の先端部は、アーム22に回転自在に取り付けられる。
【0020】
バケットシリンダ33は、アーム22に対してバケット23を回転駆動させる。バケットシリンダ33の基端部は、アーム22に回転自在に取り付けられる。バケットシリンダ33の先端部は、バケット23に回転自在に取り付けられたリンク部材24に、回転自在に取り付けられる。
【0021】
図1に示した作業機械10には、上部旋回体12の周囲をリアルタイムに撮影するカメラ40が備わっている。
図1に例示したカメラ40は、上部旋回体12の後端の上部に取り付けられ、作業機械10と同じ地面に立つ人間の身長よりも高い位置にあり、上部旋回体12の後方の領域を左右約180°の画角で斜めに見下ろすような姿勢で設置されている。同図には示していないが、カメラ40は、上部旋回体12の後部の他、上部旋回体12の左右や前部に設置される場合もあり、この場合には上部旋回体12の左方、右方、前方も撮影される。カメラ40には、CCDやCMOS等の撮像素子と広角レンズを備えた広角ビデオカメラ、特に耐久性や耐候性に優れたカメラが好ましく採用される。
【0022】
また、運転室13の内部には、作業機械10の各アクチュエータを操作するための操作装置であるレバー170(
図3)、及びカメラ40による撮影画像や各種情報を表示するモニタ(表示装置)190が設けられている。作業機械10の周囲に対象物体(例えば人間)が存在するとコントローラ100で判定された場合、コントローラ100からの入力データに基づいて周囲の対象物体の情報がモニタ190に表示される。本実施形態におけるモニタ190はタッチパネルであり、タッチ操作によりデータをコントローラ100に入力する入力装置180(
図3)を兼ねる。但し、入力装置180は、各種スイッチ等によりモニタ190とは別に設けても良い。
【0023】
<監視システムの構成>
図2は、本発明の一実施形態に係る監視システムの適用例を表した図である。
図2に示した監視システム5は、カメラ40で撮影された撮影画像(画像データ)により監視範囲内を監視するシステムであり、コントローラ100と、サーバ52と、学習装置53と、外部端末70とを含んで構成されている。監視範囲には、作業機械10に搭載されたカメラ40の視野の全部又は一部を設定することができ、例えば作業機械10から一定距離の領域を監視範囲に設定することもできる。
【0024】
コントローラ100は、作業機械10に搭載された車載コンピュータであり、サーバ52と、学習装置53は、管理センタ50に設置されたコンピュータである。外部端末70は、例えば、現場事務所60に設置された、タブレットPC、スマートフォン、ノート型PC、デスクトップPC等の通信機能を有する情報機器であり、例えば、作業機械10を使用する工事業者の管理者が施工データなどのデータの入力に使用する。
【0025】
監視システム5は、現場事務所60と、作業機械10と、管理センタ50に分散して設置される。管理センタ50は、作業機械10が稼働する作業現場から離れた場所に位置する。管理センタ50は、例えば、作業機械10の製造業者(メーカー)の本社、支社、工場等の施設、作業機械10のレンタル会社、サーバの運営を専門的に行うデータセンタ、作業機械10を所有するオーナーの施設等に設置される。管理センタ50に設置されたサーバ52により、作業機械10の状態が遠隔管理される。複数の作業機械10が1台のサーバ52の管理対象となる場合もある。
【0026】
また、作業機械10には、コントローラ100に接続する通信装置110(
図3)が備わっている。現場事務所60に設置された外部端末70は、通信装置710(
図3)を内蔵しており、通信装置710、通信装置110及びローカルネットワークを介してコントローラ100と双方向通信ができるように構成されている。例えば、作業現場に無線基地局(アクセスポイント)51を設置し、無線基地局51を介してコントローラ100と外部端末70との間でデータが授受される。
【0027】
また、サーバ52は、通信装置521(
図3)、通信装置531(
図3)及びローカルネットワークを介して学習装置53と双方向通信ができるように構成されている。
【0028】
なお、コントローラ100に接続する通信装置110は、Wi-Fi(登録商標)、ZigBee(登録商標)、Bluetooth(登録商標)等の通信方式で、サーバ52及び外部端末70と直接的又は間接的にデータを授受する構成とすることができる。
【0029】
コントローラ100及びサーバ52の間の通信方式とコントローラ100及び外部端末70の間の通信方式は異なっても良い。
【0030】
<監視システムの機能ブロック>
図3は、本発明の一実施形態に係る監視システムの機能ブロック図である。
【0031】
<コントローラ>
図3に示すように、コントローラ100には、カメラ40、モニタ190、通信装置110及び入力装置180が接続されている。このコントローラ100は、ROMやRAM、HDD、SSD等のメモリ120の他、CPU130、入出力インタフェース、その他の周辺回路を含んで構成されている。
【0032】
コントローラ100(サーバ52や外部端末70も同様)のROMは、EEPROM等の不揮発性メモリであり、各種演算が実行可能なプログラムを格納している。RAMは、揮発性メモリであり、CPU130との間で直接的にデータの入出力を行うワークメモリである。RAMは、CPU130がプログラムを実行している間、必要なデータを一時的に記憶する。不揮発性メモリには、基礎画像121、フラグ情報122及びモデル123が記憶される。基礎画像121、フラグ情報122及びモデル123は、単一の不揮発性メモリに記憶されるようにしても良いし、異なる不揮発性メモリに記憶されるようにしても良い。
【0033】
モデル123は、対象物体(人間その他の障害物)を認識するためのデータである。モデル123は、例えば畳み込みニューラルネットワーク(Convolutional Neural Network)の一種であるYOLO(You Only Look Once)モデルである。YOLOモデルは、ニューラルネットワークによる機械学習に基づく深層学習により作成される認識モデルであり、予めメモリに記憶されている。モデル123はまた、例えばサーバ52と学習装置53における追加の機械学習に基づき対象物体毎に生成されてメモリに蓄積又は更新される。
【0034】
コントローラ100(サーバ52や外部端末70も同様)の入出力インタフェースには、各種のセンサや機器からの信号が入力される。入出力インタフェースは、入力信号を必要に応じてCPU130で演算可能な形式に変換する。CPU130は、ROMに記憶されたプログラムをRAMに展開して実行する処理装置であり、プログラムに従って入出力インタフェース及びROM、RAMから入力したデータに基づいて所定の演算処理を行う。入出力インタフェースは、CPU130の演算結果を出力用のデータ形式に変換し、対応する機器に出力する。
【0035】
CPU130は、メモリ120に記憶されたプログラムに従い、記憶制御131、物体認識132、表示画像生成133の各処理を実行する。
【0036】
[記憶制御]
記憶制御131は、カメラ40で撮影された撮影画像から、対象物体のモデル123の機械学習用の基礎画像121を抽出し、メモリ120に記録する処理である。基礎画像121の抽出は、動画を構成する複数の静止画像から抜き出すことにより行われる。例えば、カメラ40で1秒間30枚の静止画像からなる動画が撮影される場合、1秒間で取得される30枚の撮影画像の多くは一般に類似している。そのため、記憶制御131の処理では、カメラ40の撮影画像を間引く(例えば0.2秒間隔で抜き出す)ことで、基礎画像121を抽出し、メモリ120に記録する。
【0037】
また、記憶制御131の処理では、作業機械10のレバー170が操作された操作情報と、作業機械10に搭載されたGPS160からのグローバル座標である位置情報(測位情報とも呼ぶ)と、作業機械10の運転手がモニタ190に表示された物体認識132の結果に間違いがある場合に(入力装置180から)入力された信号であるエラー信号と、をフラグ情報122として、前記基礎画像121と同期してメモリ120に記録する。
【0038】
これらの情報の他、カメラ40を搭載した作業機械10の識別番号、カメラ40の識別情報、基礎画像の撮影日時等の付加データが含まれる。カメラ40の識別情報としては、例えば作業機械10のローカル座標系のカメラ40の座標(作業機械10のどの部位に設置されているかの位置データ)を用いることができる。これら付加データを含めることで、基礎画像121がいつどこで撮影されたかが判別でき、基礎画像121に基づいて生成されるモデル123の更新用データがどのような場面で有効かが判断できる。
【0039】
[物体認識]
物体認識132は、カメラ40から入力される撮影画像(画像データ)を取得し、取得した撮影画像からモデル123に基づき監視範囲内の対象物体の存在を認識する処理である。具体的には、物体認識132において、CPU130は、撮影画像を対象とする認識処理で演算された信頼度が第1信頼度(設定値)以上であるかを判定する。信頼度が第1信頼度以上である場合、監視範囲内に対象物体が存在すると判定される。信頼度が第1信頼度未満である場合、監視範囲内に物体が存在するとは判定されない。
【0040】
撮影画像を対象とする認識処理で演算される信頼度は、物体認識132の処理で演算される評価値であり、モデル123で予め設定されている対象物体(例えば人間)のパラメータ群との一致度に相当する。仮にモデル123に完全一致する場合に、信頼度は100%となる。対象物体のパラメータ群とは、画像上の特徴(エッジ、カラー、位置等)であり、例えばYOLOv3の場合、72層の畳み込み層(特徴フィルタ)毎に機械学習で求めた設定値をパラメータという。第1信頼度は、監視範囲内の対象物体の有無を判定するために予め設定された閾値であり、例えば90%程度の値を設定することができる。物体認識132の処理では、監視範囲内に存在を認識された対象物体のデータとして、クラス、位置座標、大きさが生成される。クラスは、対象物体の種類(分類)のデータである。位置座標は、対象物体の撮影画像内の横軸方向の座標及び縦軸方向の座標のデータである。大きさは、対象物体の撮影画像上の大きさ(撮影画像上で対象物体を囲む四角形のフレームの横軸方向及び縦軸方向の長さ)のデータである。
【0041】
[表示画像生成]
表示画像生成133は、物体認識132により監視範囲内に存在すると判定された対象物体のデータ(位置座標及び大きさ)に基づいて、カメラ40によるリアルタイムの撮影画像に対象物体を囲うフレームを合成した表示画像を生成する処理である。表示画像生成133の処理で生成された表示画像のデータが、コントローラ100からモニタ190に出力されてモニタ190の画面に表示出力される。
【0042】
ここで、表示画像生成133の処理で生成されてモニタ190の画面に表示される画像の例を
図4に示す。同図に示した表示画像では、カメラ40によるリアルタイムの撮影画像191に対象物体192を囲うフレーム193が重ねて表示されている。
図4では、対象物体192としてカメラ40の近く(つまり作業機械10の後部付近)に立つ作業員(人間)が映った表示画像を例示している。この表示画像において、対象物体のクラスを表すテキストデータ(同図の場合は例えば「人間」)がフレーム193に沿って表示されるようにすることもできる。このように対象物体192を表示画像上においてフレーム193で囲って表示することにより、作業機械10のオペレータに、作業機械10の周囲に存在する対象物体の位置等を視覚的に知らせることができる。
【0043】
<通信装置>
通信装置110は、無線基地局51(
図2)との接続状況を確認し、通信装置110を介してサーバ52と通信可能な状態であるかを判定する。
【0044】
また、CPU130は、サーバ52と通信可能な状態であれば、通信装置110を介してメモリ120に記録されている基礎画像121及びフラグ情報122のデータをサーバ52に出力する(送信してアップロードする)。基礎画像121及びフラグ情報122のデータのアップロードが正常に完了すると、通信装置110を介してサーバ52から受信完了通知が送信される。通信装置110では、この受信完了通知を受信すると、アップロードが正常に行われた基礎画像121及びフラグ情報122について、メモリ120に記録されている基礎画像121及びフラグ情報122のデータに送信済みである旨のデータが付加される。送信済みの基礎画像121及びフラグ情報122のデータは、サーバ52に再送信されることはなく、定期的に消去されるか上書きされる。
【0045】
更に、通信装置110では、CPU130は、サーバ52と通信してサーバ52のメモリ56に記憶されているモデル123の情報(バージョンデータ)を取得する。その際、コントローラ100は、CPU130によりメモリ120に記憶されているモデル123よりもバージョンの新しいモデル123がサーバ52のメモリ56に記録されているかを判定する。サーバ52に新しいモデル123がある場合、モデル123の更新用データの送信を要求する信号がコントローラ100からサーバ52に送信される。要求信号を受信したサーバ52からモデル123の更新用データが送信されると、コントローラ100はこれを受信し、メモリ120に記録してあるモデル123を更新(バージョンアップ)する。つまり、メモリ120に記憶されているモデル123を構成するパラメータ群が更新される。
【0046】
<サーバ>
サーバ52には、通信装置(第2通信装置)521及びモニタ55、入力装置54が接続されている。モニタ55は液晶ディスプレイ装置等であり、入力装置54はキーボードやマウス等である。
【0047】
サーバ52は、作業機械10から稼働データや基礎画像121のデータ等を受信すると、それらのデータをメモリ56に記録し、入力装置54からの所定の操作入力に応じてメモリ56に記憶したデータをモニタ55に表示出力する。
【0048】
管理者は、所定の情報をモニタ55で閲覧することで、作業機械10の状態等を知ることができる。作業機械10のカメラ40による撮影画像(基礎画像121を含む)も、同様にモニタ55に表示させることができる。
【0049】
サーバ52も、コントローラ100と同じくコンピュータであり、ROM、RAM、HDD、SSD等のメモリ56(第2のメモリ)の他、CPU57(第2の処理装置)、入出力インタフェース、その他の周辺回路を含んで構成されている。
【0050】
メモリ56には、フラグ情報122を含む、管理される作業機械10でどのモデル123が使用されているかなどの車体情報560と、管理される作業機械10のモデル123であるモデル561と、基礎画像121及びモデル123を生成するための教師データを含む画像562が記憶されている。
【0051】
教師データには、作業機械10のコントローラ100から送られてくる基礎画像121のうち、対象物体(例えば人間)が映っていることが管理者の目視により確認された画像データを選択して用いることができる。この教師データには、画像データのみならず、対象物体の位置、大きさ、クラス等の付加データが含まれている。対象物体の位置データには、例えば画像内における対象物体の横軸方向及び縦軸方向の座標を用いることができる。対象物体の大きさのデータには、例えば対象物体を囲むフレーム193(
図4)の画像内の横軸方向及び縦軸方向の長さを用いることができる。対象物体のクラスとは、前述した通り対象物体の種類を表す分類情報(例えば人間)である。こうした付加データは、例えば管理者がモニタ55で画像を確認しながら入力装置54でデータ入力し、教師データとして選択した基礎画像121に対応付けてメモリ56に記録する作業(教師データ作成570)をすることにより作成することができる。
【0052】
CPU57は、メモリ56に格納されたプログラムに従って各種の処理を実行する。例えば、CPU57は、通信装置521を介してコントローラ100から基礎画像121のデータを受信すると、コントローラ100から受信した基礎画像121のデータをメモリ56に記録する。基礎画像121の記録を終えたら、CPU57は、基礎画像121の受信が正常に完了した旨を表す受信完了通知を、通信装置521を介して作業機械10のコントローラ100に送信する。CPU57はまた、入力装置54の所定の操作に応じて、基礎画像121をモニタ55に表示させる。
【0053】
更には、CPU57は、メモリ56に格納されたプログラムに従って、画像認識571、フラグ追加572、優先度設定573、学習画像選択574の各処理を実行する。CPU57は、コントローラ100から送信された基礎画像121に画像認識571を実行した画像認識情報と、コントローラ100から送信されたフラグ情報122と、を用いて、基礎画像121に対し、フラグ追加572を実行し、フラグ情報を追加する。また、優先度設定573を実行し、コントローラ100から送信された基礎画像121から、コントローラ100のメモリ120に記憶されたモデル123の更新用データの生成に使用する学習画像の優先度を設定する。また、外部端末70より通信装置710及び通信装置521を介して学習画像を選択できる学習画像選択574を実行する。
【0054】
また、学習画像選択574によって選択された学習画像と、学習画像の教師データとは、通信装置521及び通信装置531を介して、学習装置53のメモリ58の画像580に記憶される。
【0055】
<学習装置>
学習装置53も、コントローラ100と同じくコンピュータであり、ROM、RAM、HDD、SSD等のメモリ58(第3のメモリ)の他、CPU59(第3の処理装置)、入出力インタフェース、その他の周辺回路を含んで構成されている。
【0056】
学習装置53は、通信装置(第3通信装置)531及びモニタ(不図示)、入力装置(不図示)が接続されている。モニタは液晶ディスプレイ装置等であり、入力装置はキーボードやマウス等である。
【0057】
学習装置53は、サーバ52から学習画像、教師データ等を受信すると、それらのデータをメモリ58に記録し、入力装置からの所定の操作入力に応じてメモリ58に記憶したデータをモニタに表示出力する。
【0058】
メモリ58には、管理される作業機械10のコントローラ100のメモリ120に記憶されるモデル123であるモデル581と、サーバ52で選択された学習画像と、学習画像の教師データを含む画像580が記憶されている。
【0059】
CPU59は、サーバ52から送信された学習画像と、学習画像の教師データから、コントローラ100のメモリ120に記憶されたモデル123の更新用データを生成する処理(学習590)を実行する。学習590は、学習画像について、メモリ58に記憶された教師データに基づく機械学習(例えばYOLOv3を用いたニューラルネットワーク手法)により実行される。更新用データとは、コントローラ100のメモリ120に記録されたモデル123を新しいバージョンに更新する(機械学習で演算されたパラメータをメモリ120に記憶されているモデル123に適用する)ための更新プログラムである。
【0060】
なお、この更新用データは、更新プログラムに限定されず、新しいバージョンのモデル123そのものであっても良い。更新用データは、メモリ58に記録され、通信装置531及び通信装置521を介して、サーバ52に送信される。
【0061】
管理者は、所定の情報をモニタで閲覧することで、学習590の実行状態等を知ることができる。サーバ52から送信された学習画像と、学習画像の教師データも、同様にモニタに表示させることができる。
【0062】
<外部端末>
外部端末70は、ROM、RAM、HDD、SSD等のメモリ(不図示)やCPU740(第4の処理装置)の他、モニタ720、通信装置(第4通信装置)710及び入力装置730を含んで構成されている。モニタ720は液晶ディスプレイ装置等であり、入力装置730は代表的にはキーボードやマウスであり、タッチパネルやタッチパッド等を用いることもできる。
【0063】
この外部端末70は、通信装置710及び通信装置521を介して、管理される作業機械10のコントローラ100のメモリ120に記憶されるモデル123の更新用データ作成に使用する学習画像を基礎画像121より選択できる。例えば、外部端末70を使用する作業機械10の管理者が、作業機械10のコントローラ100のメモリ120に記憶されるモデル123の更新用データとして、サーバ52で優先度設定された学習画像及び学習画像の教師データを選択し、学習装置53で学習590を実行し、モデル123の更新用データを生成するように操作できる。
【0064】
<動作>
サーバ52のCPU57は、モデル123の更新用データの学習に使用する学習画像の優先度を決定する(優先度設定573)ため、サーバ52のCPU57で実行されるフラグ追加572において、基礎画像の撮影期間内に基礎画像が撮影された作業機械の物体認識モデルが変更された場合に、変更後に撮影された基礎画像に対し、フラグ情報を追加する。
図5は、その処理(モデル変更履歴フラグ追加処理)を示すフローチャートである。
【0065】
CPU57は、メモリ56に基礎画像及びフラグ情報が格納されると実行される。
【0066】
ステップS501において、CPU57は、メモリ56の画像562より基礎画像を取得し、ステップS502に手順を移す。
【0067】
ステップS502において、CPU57は、メモリ56の車体情報560より作業機械の基礎画像の撮影期間におけるモデルの変更履歴を確認し、ステップS503に手順を移す。
【0068】
ステップS503において、モデル変更履歴がない場合は、処理を終了し、モデル変更履歴があった場合は、ステップS504に手順を移す。
【0069】
ステップS504において、CPU57は、基礎画像よりモデル変更以降の画像に対し、モデル変更履歴ありを示す「モデル変更履歴フラグ」を追加する。
【0070】
本処理により、基礎画像が撮影された際のモデルが現行モデルか、旧モデルかを判断でき、現行モデル(変更履歴あり)の場合は、作業現場においてモデルを更新していることから既に学習された基礎画像の可能性が高く、未学習の基礎画像を学習するために現行モデル時に撮影された(変更履歴のない)基礎画像を学習対象とすることができる。
【0071】
ここで、変更履歴と記載しているが、モデルバージョン管理番号などで基礎画像が撮影された際のモデルが現行モデルか否かを判定してもよい。
【0072】
サーバ52のCPU57は、モデル123の更新用データの学習に使用する学習画像の優先度を決定する(優先度設定573)ため、サーバ52のCPU57で実行されるフラグ追加572において、基礎画像に対し、作業機械10のメモリ120に記録されたレバー170の操作情報であるフラグ情報122を用いて、操作情報に応じたフラグを追加する。
図6は、その処理(動作フラグ追加処理)を示すフローチャートである。CPU57は、メモリ56に基礎画像及びフラグ情報が格納されると実行され、基礎画像すべてが入力されるまで繰り返し実行される。
【0073】
ステップS601において、CPU57は、メモリ56の画像562より画像と、車体情報560より、画像と同期的に取得された操作情報を取得し、ステップS602に手順を移す。
【0074】
ステップS602において、CPU57は、取得した操作情報に基づき作業機械10の作業部20を動作させる「作業」、上部旋回体12を旋回させる「旋回」、及び下部走行体11を走行させる「走行」の操作がされたか否かを判定し、操作なしの場合はステップS608に、操作ありの場合はステップS603にそれぞれ手順を移す。
【0075】
ステップS603において、CPU57は、前フレーム画像で現画像と同じ操作情報があったか否かを判定し、あった場合はステップS605に、なかった場合はステップS604にそれぞれ手順を移す。
【0076】
ステップS604において、CPU57は、現画像より所定フレーム前のすべての画像に操作情報に応じた動作前フラグを追加し、ステップS605に手順を移す。動作前フラグは、例えば、操作情報が「旋回」の場合は「旋回前フラグ」を追加する。
【0077】
ステップS605において、CPU57は、次フレームの画像で現画像と同じ操作情報があったか否かを判定し、あった場合はステップS607に、なかった場合はステップS606にそれぞれ手順を移す。
【0078】
ステップS606において、CPU57は、現画像より所定フレーム先のすべての画像に操作情報に応じた動作後フラグを追加し、ステップS607に手順を移す。動作後フラグは、例えば、操作情報が「旋回」の場合は「旋回後フラグ」を追加する。
【0079】
ステップS607において、CPU57は、現画像に対し、動作中フラグを追加し、ステップS608に手順を移す。動作中フラグは、例えば、操作情報が「作業」の場合は「作業中フラグ」を追加する。
【0080】
ステップS608において、次フレームの画像がなければ、処理を終了し、次フレームの画像があれば、ステップS601に手順を移す。
【0081】
本処理により、作業機械10が「動作中」か、静止中の「動作前」、「動作後」、「動作前、動作後以外の静止中」か、の動作内容を判定する。作業機械10が動作中と判定することで、車体が振動しやすく基礎画像にブレが発生しやすい、また、作業中における土ほこりなどの画像が取得され、学習データとして適さない(たとえ人が映っていたとしても画像品質が悪い)ため、学習画像の優先度を低く設定できる。
【0082】
また、作業機械10が静止中かつ「動作後」と判定することで、旋回や移動により車体が元の場所から動いたことで基礎画像の背景が変化し、学習データのバリエーションが増える。同様に、作業部20を動かしたことにより掘削や放土などによっても基礎画像の背景は変化し、学習データのバリエーションが増える。よって、静止中かつ「動作後」の学習画像の優先度を高く設定できる。
【0083】
また、作業機械10が静止中かつ「動作前」と判定することで、動作によって基礎画像の背景が変化する前の基礎画像であることから、「動作前、動作後以外の静止中」に比べて、学習画像の優先度を高く設定できる。
【0084】
サーバ52のCPU57は、モデル123の更新用データの学習に使用する学習画像の優先度を決定する(優先度設定573)ため、サーバ52のCPU57で実行されるフラグ追加572において、基礎画像に対し、作業機械10のメモリ120に記録されたGPS160の測位情報であるフラグ情報122を用いて、測位情報に応じたフラグを追加する。
図7は、その処理(移動前エリア情報記録処理)を示すフローチャートである。CPU57は、フラグ追加572の動作前フラグ追加処理(
図6のS604)の後に実行される。
【0085】
ステップS701において、CPU57は、入力画像と同期的に取得された操作情報に基づき作業機械10の下部走行体11を走行させる「走行」の操作がされたか否かを判定し、操作されていない場合はステップS605(
図6)に、操作された場合はステップS702へそれぞれ手順を移す。
【0086】
ステップS702において、CPU57は、メモリ56の車体情報560より前フレーム(走行前)における測位情報を取得し、ステップS703に手順を移す。
【0087】
ステップS703において、CPU57は、取得した測位情報より移動前の地点があらかじめ決められたエリアのどのエリアに属するかを判定し、移動前のエリア情報を記録し、ステップS605(
図6)に手順を移す。
【0088】
サーバ52のCPU57は、モデル123の更新用データの学習に使用する学習画像の優先度を決定する(優先度設定573)ため、サーバ52のCPU57で実行されるフラグ追加572において、基礎画像に対し、作業機械10のメモリ120に記録されたGPS160の測位情報であるフラグ情報122を用いて、測位情報に応じたフラグを追加する。
図8は、その処理(エリア移動フラグ追加処理)を示すフローチャートである。CPU57は、フラグ追加572の動作後フラグ追加処理(
図6のS606)の後に実行される。
【0089】
ステップS801において、CPU57は、入力画像と同期的に取得された操作情報に基づき作業機械10の下部走行体11を走行させる「走行」の操作がされたか否かを判定し、操作されていない場合はステップS607(
図6)に、操作された場合はステップS802へそれぞれ手順を移す。
【0090】
ステップS802において、CPU57は、メモリ56の車体情報560より次フレーム(走行後)における測位情報を取得し、ステップS803に手順を移す。
【0091】
ステップS803において、CPU57は、S703(
図7)において記録された移動前のエリア情報と、取得した測位情報より、移動後の地点があらかじめ決められたエリアのどのエリアに属するかを判定し、移動後のエリアと比較して(エリア移動の有無を判定して)同じエリアの場合はステップS607(
図6)に、異なるエリアの場合はステップS804にそれぞれ手順を移す。
【0092】
ステップS804において、CPU57は、次フレーム以降の画像すべてにエリア移動ありを示す「エリア移動フラグ」を追加する。また、エリア移動が重複して起こる場合には、本処理実行時に現画像より前のフレームにおける「エリア移動フラグ」を削除する。これにより、作業機械10が最も直近で稼働しているエリアの画像に対し、フラグが追加される。
【0093】
図7では、車体が移動した場合の移動前のエリア情報を記録し、
図8では、車体が移動した場合に
図7のエリア情報と比較してエリアの移動があった場合にエリア移動フラグを追加する。エリア移動を判定することで、基本的に止まって掘削する作業機械が大きく移動する場合は作業場所が変わった可能性が高いため、エリアの移動を判定することで、現在作業しているエリアでの基礎画像の優先度を高く設定することができる。
【0094】
図9は、モデル123の更新用データの学習に使用する学習画像の優先度を決定する(優先度設定573)ため、サーバ52のCPU57が実行する、メモリ56に格納されたプログラムである画像認識571及びフラグ追加572の処理手順(物体検知フラグ追加処理及び動体検知フラグ追加処理)を表すフローチャートである。CPU57は、メモリ56に格納される基礎画像に対し、動作フラグ追加処理(
図6)実行後に実行され、基礎画像すべてが入力されるまで繰り返し実行される。
【0095】
ステップS901において、CPU57は、車体情報560から当該作業機械10の最新モデル情報を取得し、ステップS902に手順を移す。
【0096】
ステップS902において、CPU57は、画像認識571でモデル561(モデル記憶部)より最新モデルを取得し、物体認識が実行できるように設定し、ステップS903に手順を移す。ここでの物体認識は、コントローラ100のCPU130で実行される物体認識132と同等である。
【0097】
ステップS903において、CPU57は、画像562から画像データを取得し、ステップS904に手順を移す。
【0098】
ステップS904において、CPU57は、当該画像に対し、動作中フラグがあるか否かを判定し、動作中フラグがある場合はステップS907に、動作中フラグがない場合はステップS905にそれぞれ手順を移す。ここで動作中フラグとは、例えば、作業機械10の作業部20を動作させるようにレバー170が操作された場合は、操作情報に基づいて「作業中フラグ」となる。
【0099】
ステップS905において、CPU57は、ステップS902にて最新モデルが適用された物体認識を取得画像に実行し、検知結果が出力された場合に物体検知フラグとして「物体有フラグ」を追加する。また、検知結果数が1つの場合は物体検知フラグとして「物体1フラグ」を追加する。また、検知結果のうち、1つでもあらかじめ設定した所定の監視エリア内の場合は物体検知フラグとして「近傍有フラグ」を追加し、ステップS906に手順を移す。
【0100】
ステップS906において、CPU57は、取得画像と所定フレーム前の画像間における特徴点もしくは特徴領域のオプティカルフローより移動体を検知する。検知結果が出力された場合に動体検知フラグとして「動体有フラグ」を追加し、ステップS907に手順を移す。
【0101】
ステップS907において、次フレームの画像がなければ、処理を終了し、次フレームの画像があれば、ステップS903に手順を移す。
【0102】
本処理により、作業機械10が静止中における基礎画像に対し、最新のモデルによる物体検出により、人がいる可能性が高い基礎画像の優先度を高く設定することができる。さらに、動体検出も実施することで、移動物が存在する可能性が高い基礎画像の優先度を高く設定することができる。
【0103】
サーバ52のCPU57は、モデル123の更新用データの学習に使用する学習画像の優先度を決定する(優先度設定573)ため、サーバ52のCPU57で実行されるフラグ追加572において、基礎画像に対し、作業機械10のメモリ120に記録された入力装置180の入力情報(エラー情報)であるフラグ情報122を用いて、エラー情報に応じたフラグを追加する。
図10は、その処理(エラーフラグ追加処理)を示すフローチャートである。CPU57は、メモリ56に基礎画像及びフラグ情報が格納されると実行され、基礎画像すべてが入力されるまで繰り返し実行される。
【0104】
ステップS101において、CPU57は、メモリ56の画像562より画像と、車体情報560より、画像と同期的に取得されたエラー情報を取得し、ステップS102に手順を移す。
【0105】
ステップS102において、CPU57は、取得したエラー情報があるか否かを判定し、エラー情報なしの場合はステップS106に、エラー情報ありの場合はステップS103にそれぞれ手順を移す。
【0106】
ステップS103において、CPU57は、前フレーム画像で現画像と同様にエラー情報があるか否かを判定し、なかった場合はステップS105に、あった場合はステップS104にそれぞれ手順を移す。
【0107】
ステップS104において、CPU57は、現画像より所定フレーム前のすべての画像に「エラーフラグ」を追加し、ステップS105に手順を移す。ここで、所定フレーム前のすべての画像に「エラーフラグ」を追加することによって、運転手がエラーに気づいて入力装置180にエラー情報が入力される場合、既にエラーが発生している可能性が高いことから、エラー情報のあった画像より前のフレームの画像にも「エラーフラグ」を追加することで見落としを防ぐ。
【0108】
ステップS105において、CPU57は、現画像に対し、「エラーフラグ」を追加し、ステップS106に手順を移す。
【0109】
ステップS106において、次フレームの画像がなければ、処理を終了し、次フレームの画像があれば、ステップS101に手順を移す。
【0110】
本処理により、使用者はエラー(画像における物体の未検出や誤検出といった物体認識132の結果の間違い)が発生したと判断した基礎画像の優先度を高く設定することができる。
【0111】
図11は、前記フラグ情報を組み合わせてモデル123の更新用データの学習に使用する学習画像の優先度を設定する優先度設定処理を示すフローチャートである。本フローチャートについて
図12~
図14を用いて説明する。CPU57は、メモリ56に格納される基礎画像に対し、フラグ追加572及び画像認識571が実行され、各種フラグが追加された場合に実行され、基礎画像すべてが入力されるまで繰り返し実行される。
【0112】
ステップS111において、CPU57は、画像562から画像を取得し、メモリ56に格納されている画像に対する各種フラグを取得し、ステップS112に手順を移す。
【0113】
ステップS112において、CPU57は、「エラーフラグ」の有無と「モデル変更履歴フラグ」の有無より、
図12に示す各フラグの有無(〇が有、×が無)の組み合わせにより第1の重みを設定し、ステップS113に手順を移す。
【0114】
ここでは、「モデル変更履歴フラグ」が有の場合の重みが高く、次に「エラーフラグ」が有の場合の重みが高く設定される。
【0115】
ステップS113において、CPU57は、「動作中フラグ」、「動作前フラグ」、「動作後フラグ」、「エリア移動フラグ」のそれぞれの有無より、
図13に示す各フラグの有無(〇が有、×が無)の組み合わせにより第2の重みを設定し、ステップS114に手順を移す。
【0116】
ここでは、「動作後フラグ」が有かつ「エリア移動フラグ」が有の場合(そのほかのフラグは同時に有とならない)が最も重みが高く、次に「動作後フラグ」が有かつ「エリア移動フラグ」が無の場合の重みが高い。次に「動作前フラグ」が有の場合(そのほかのフラグは同時に有とならない)の重みが高い。最後に「動作中フラグ」が有の場合の重みとなる。
【0117】
ステップS114において、CPU57は、「動体検知フラグ」、「物体検知フラグ」のそれぞれの有無より、
図14に示す各フラグの有無(〇が有、×が無)の組み合わせにより第3の重みを設定し、ステップS115に手順を移す。
【0118】
ここでは、モデル561の最新モデルで検知できないにもかかわらず動体が検出されるために学習対象が存在する可能性が高いことから、「動体検知フラグ」が有の場合、かつ「物体検知フラグ」が無の場合の重みが高く設定される。次に「動体検知フラグ」が有の場合、かつ「物体検知フラグ」が有の場合の重みが高く設定される。次に学習対象が存在する可能性が高い「動体検知フラグ」が無の場合、かつ「物体検知フラグ」が有の場合の重みが高く設定される。
【0119】
ステップS115において、CPU57は、先に設定された第1の重みと第2の重みと第3の重みをそれぞれ乗算し、統合重みを算出し、算出した統合重み0~48に対し、優先度49~1(統合重み0は優先度49、統合重み48は優先度1)を設定し、ステップS116に手順を移す。ここで、第2の重みが0(「動作中フラグ」が有)の場合は、統合重みは必ず0となる。これは、作業機械10が動作中の場合に撮影される画像の品質が悪いために当該画像に対応する優先度を低く設定するためである。
【0120】
ステップS116において、次フレームの画像がなければ、処理を終了し、次フレームの画像があれば、ステップS111に手順を移す。
【0121】
サーバ52のCPU57は、外部端末70より(外部からの入力によって)、通信装置710及び通信装置521を介して、サーバ52に格納される基礎画像121から、学習装置53のCPU59にて実行される学習590に使用する学習画像を選択する。
図15は、そのサーバ52で表示される学習画像選択画面の一例である学習画像選択画面150を示す。
【0122】
学習画像選択画面150には、優先度選択チェックボックス151と、画像例表示152と、優先度遷移ボタン(前)153と、優先度遷移ボタン(次)154と、選択画像数表示155と、選択完了ボタン156が表示される。優先度選択チェックボックス151には、優先度と、その優先度における画像数が表示され、チェックボックスでクリックするとチェックが入力され、その優先度の画像が選択中の状態となる。画像例表示152には、対応する優先度の画像例が表示され、選択すると、
図16に示す画像確認画面に遷移する。
【0123】
図15の学習画像選択画面150では、優先度選択チェックボックス151と画像例表示152は5つ表示してもよい。優先度遷移ボタン(前)153と、優先度遷移ボタン(次)154は、クリックすると、優先度遷移ボタン(前)153の場合は優先度の高い優先度選択チェックボックス151と画像例表示152を表示する。優先度遷移ボタン(次)154の場合は優先度の低い優先度選択チェックボックス151と画像例表示152を表示する。選択画像数表示155と、選択完了ボタン156は、優先度遷移ボタン(前)153及び優先度遷移ボタン(次)154に関わらず表示される。選択画像数表示155は、優先度選択チェックボックス151でチェックされた優先度と画像数合計を表示する。すべての学習画像を選び終えた時点で選択完了ボタン156をクリックし、選択中状態の基礎画像を学習画像として確定する。この学習画像は、メモリ56に記録され、教師データ作成570にて教師データ作成用に選択して使用できる。
【0124】
図16の画像確認画面には、学習画像選択画面150の画像例表示152の選択された画像例の優先度に対応する基礎画像167が表示され、基礎画像固有の名称(撮影日時や固有カメラ番号、フレーム番号などを組み合わせた名称でもよい)である画像名163が表示される。「動体検知フラグ」もしくは「物体検知フラグ」が有の画像の場合には、対象161に対し、検知枠162を描画した状態で表示してもよい。同じ優先度における他の基礎画像は、画像送りボタン164、165をクリックすることで基礎画像を遷移させ、確認できる。閉じるボタン166をクリックすることで、画像例表示152の画像例選択前の学習画像選択画面150に戻る。
【0125】
(実施形態のまとめ)
以上説明したように、本実施形態の作業機械10の監視システム5は、機械学習が行われた物体認識モデルを用いて作業機械10の周囲を撮影した周囲画像を処理し、前記周囲画像から前記作業機械10の周囲に存在する物体を検出する物体検出装置(コントローラ100)と、前記周囲画像にフラグ情報を付加し(フラグ追加572)、前記フラグ情報に基づいて前記周囲画像に対応する機械学習の優先度を決定し(優先度設定573)、外部(外部端末70)からの入力によって選択(学習画像選択574)された前記機械学習の優先度に対応する前記周囲画像を用いて前記物体認識モデルの教師データを作成(教師データ作成570)する教師データ作成装置(サーバ52)と、前記教師データ作成装置(サーバ52)で作成された前記教師データを用いて前記物体認識モデルの追加の機械学習を実行し、前記物体認識モデルを更新する学習装置53と、を備える。
【0126】
前記フラグ情報には、前記物体認識モデルの更新履歴(変更履歴)に関する情報、前記周囲画像の撮影時点における前記作業機械10の動作内容に関する情報、前記物体認識モデルを用いて前記周囲画像を処理したときの物体検出結果に関する情報、前記周囲画像の撮影時点における前記入力装置180(前記周囲画像に対して物体認識の結果のエラーを入力するための入力装置180)の操作の有無に関する情報、が含まれている。
【0127】
(実施形態で得られる効果)
本実施形態の監視システム5を用いると、監視システム5の使用現場で撮影された画像データのうち、認識モデルの更新時に必要な(教師データを含む)学習用データを選別するために必要な知識なく、認識モデルの追加学習用データとして、使用現場への適用性の向上が可能な(認識モデルの性能向上に有効な)適切な画像データを容易に選出でき、学習用データを容易に作成することができ、認識モデルの更新を適切に行うことにより、物体の認識の精度の向上を図ることができる作業機械の監視システムを提供することができる。
【0128】
なお、本発明は上記した実施形態に限定されるものではなく、様々な変形形態が含まれる。例えば、上記した実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えることが可能であり、また、ある実施形態の構成に他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【0129】
また、上記した実施形態のコントローラの各機能は、それらの一部または全部を、例えば集積回路で設計することによりハードウェアで実現してもよい。また、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、コントローラ内の記憶装置の他に、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
【符号の説明】
【0130】
5…監視システム、10…作業機械、100…コントローラ(物体検出装置)、52…サーバ(教師データ作成装置)、53…学習装置、70…外部端末