(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-03-19
(54)【発明の名称】ニューラルネットワークで画像データを処理することによって、物理オブジェクトの特性を推定すること
(51)【国際特許分類】
G06T 7/00 20170101AFI20240312BHJP
【FI】
G06T7/00 350B
G06T7/00 610
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023560398
(86)(22)【出願日】2022-03-31
(85)【翻訳文提出日】2023-11-27
(86)【国際出願番号】 EP2022058723
(87)【国際公開番号】W WO2022207888
(87)【国際公開日】2022-10-06
(32)【優先日】2021-03-31
(33)【優先権主張国・地域又は機関】EP
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】508020155
【氏名又は名称】ビーエーエスエフ ソシエタス・ヨーロピア
【氏名又は名称原語表記】BASF SE
【住所又は居所原語表記】Carl-Bosch-Strasse 38, 67056 Ludwigshafen am Rhein, Germany
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】タネジャ,ラフル
(72)【発明者】
【氏名】シアル,カムラン
(72)【発明者】
【氏名】エッガース,ティル
(72)【発明者】
【氏名】コイパー,マルグレート
(72)【発明者】
【氏名】ナバラ・メストレ,ラモン
(72)【発明者】
【氏名】フィッシャー,セバスチャン
(72)【発明者】
【氏名】シャルナー,マイク
(72)【発明者】
【氏名】ロメロ・ロドリゲス,ハビエル
(72)【発明者】
【氏名】ポロ・ロペス,フランシソ・マヌエル
(72)【発明者】
【氏名】マルティン・パルマ,アンドレス
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096BA02
5L096BA03
5L096CA02
5L096DA02
5L096FA54
5L096GA51
5L096HA11
5L096KA04
(57)【要約】
本開示は、画像処理又はコンピュータビジョン技術に関する。物理オブジェクトの損傷状態を判定するためのコンピュータ実施方法であって、物理オブジェクトの表面画像を受信するステップと、受信した表面マップから特性値を導出するために事前訓練済み機械学習モデルを提供するステップであって、各特性値が、それぞれの位置における損傷インデックスを示し、特性値が、好ましくは、物理オブジェクトの生産プロセスをモニタリング及び/又は制御するために使用可能である、提供するステップと、を含む、方法が提供される。このようにして、局所的欠陥を確実に識別すること、及びそれが適当な量の化学製品を適用するのに十分正確であることを保証することが可能である。
【特許請求の範囲】
【請求項1】
物理オブジェクト(100)の損傷状態を判定するためのコンピュータ実施方法(400)であって、
- 前記物理オブジェクト(100)の表面画像(210)を受信するステップ(410)と、
- 事前訓練済み機械学習モデルを提供(420)して、受信した表面マップから特性値(V(X,Y))を導出するステップ(420)であって、各特性値が、それぞれの位置(X,Y)における損傷インデックスを示し、前記特性値が、好ましくは前記物理オブジェクトの生産プロセスをモニタリング及び/又は制御するために使用可能である、導出するステップ(420)と、
を含む、方法。
【請求項2】
生産プロセスを制御するための方法(700)であって、
- 物理的生産品の表面画像をキャプチャすること(710)と、
- 事前訓練済み機械学習モデルを提供(720)して、前記受信した表面マップから特性値(V(X,Y)を導出することであって、各特性値が、それぞれの位置(X,Y)における損傷インデックスを示す、導出することと、
- 導出された前記特性値に基づいて、損傷された位置を識別及び位置特定すること(730)と、
- 処置デバイスを制御して前記識別された位置に処置を適用するための命令を含む、制御データを生成すること(740)と、
を含む、方法。
【請求項3】
前記事前訓練済み機械モデルが、前記表面画像上に示された物理オブジェクトについての注釈付き表面特性値を有する表面画像を含む訓練セットに対して訓練されており、前記注釈付き表面特性値が、損傷されている前記物理オブジェクトの、撮像された表面領域のパーセンテージを含む、請求項1又は2に記載の方法。
【請求項4】
- 表面領域における前記損傷インデックスが閾値以上である場合に、前記表面領域が損傷された位置であると判定することをさらに含む、先行する請求項のいずれか1項に記載の方法。
【請求項5】
前記物理オブジェクトの1つ又は複数の前記表面領域の前記損傷インデックスが、損傷パーセンテージとして提供され、前記損傷パーセンテージが、好ましくは、前記1つ又は複数の表面領域に適用される処置の量を判定するために使用可能である、先行する請求項のいずれか1項に記載の方法。
【請求項6】
- 前記物理オブジェクトの前記1つ又は複数の表面領域の前記損傷インデックスに基づいて、前記物理オブジェクトの異なる表面領域上に適用されるべき前記処置の量の2次元空間分布を示す適用マップを生成することをさらに含む、請求項5に記載の方法。
【請求項7】
前記物理オブジェクト(100)が、圃場を含み、前記処置が、植物被害を処置するための製品の適用を含み、又は、
前記物理オブジェクト(100)が、工業製品を含み、前記処置が、前記1つ若しくは複数の表面領域の偏差を低減するための措置を含む、
先行する請求項のいずれか1項に記載の方法。
【請求項8】
物理オブジェクト(100)の損傷状態を判定するために使用可能な訓練済みニューラルネットワークを生成するためのコンピュータ実施方法(600)であって、
- 前記表面画像(215)上に示された物理オブジェクト(100)についての注釈付き表面特性値を有する表面画像(215)を含む訓練セットを提供することであって、前記注釈付き表面特性値が、損傷されている前記物理オブジェクトの、撮像された表面領域のパーセンテージを示す損傷インデックスを含む、前記提供することと、
- 提供された前記訓練セットで前記ニューラルネットワークを訓練することであって、前記訓練するプロセスにおいて、訓練表面画像(210)が、前記ニューラルネットワークの少なくとも1つの畳み込み層の入力に通信可能に結合され、前記特性値(V_train)が、前記少なくとも1つの畳み込み層の出力において前記特性マップ(270)のマップピクセルのグローバル平均を計算する、グローバル平均モジュール(G_AVG)に通信可能に結合される、前記訓練することと、
を含む、コンピュータ実施方法。
【請求項9】
前記物理オブジェクト(100)が、圃場を含み、前記損傷インデックスが、植物被害を示す、請求項8に記載のコンピュータ実施方法。
【請求項10】
前記物理オブジェクトが、工業製品を含み、前記損傷インデックスが、1つ又は複数の表面領域の標準からの偏差を示す、請求項8に記載のコンピュータ実施方法。
【請求項11】
前記特性値(V(X,Y))が実数であるか、又は前記特性値(V(X,Y))が分類子である、請求項8~10のいずれか1項に記載のコンピュータ実施方法。
【請求項12】
前記特性値が、標準に対する相対値であるか、又は前記表面特性値が、絶対値である、請求項8~11のいずれか1項に記載のコンピュータ実施方法。
【請求項13】
前記特性値(V(X,Y))が、前記表面画像のピクセル解像度に実質的に対応するピクセル解像度の2次元マップ(「ヒートマップ」、「マスク」)として提供される、請求項8~12のいずれか1項に記載のコンピュータ実施方法。
【請求項14】
ユーザによって前記ニューラルネットワークを提供するステップ及び/又は前記ユーザによって前記ニューラルネットワークを受信するステップをさらに含む、請求項8~13のいずれか1項に記載のコンピュータ実施方法。
【請求項15】
ユーザが前記表面画像及び前記注釈付き表面特性値を提供することを可能にする、ユーザインターフェースを提供するステップをさらに含む、請求項8~14のいずれか1項に記載のコンピュータ実施方法。
【請求項16】
物理オブジェクトの損傷状態を判定するために使用可能な訓練済みニューラルネットワークを生成するための装置であって、
- 前記表面画像(215)上に示された物理オブジェクト(100)についての注釈付き表面特性値を有する表面画像(215)を含む訓練セットを受信するように構成される、入力ユニットであって、前記注釈付き表面特性値が、前記物理オブジェクトの1つ又は複数の表面ポイント及び/又は領域の損傷インデックスを示す、入力ユニットと、
- 提供された前記訓練セットで前記ニューラルネットワークを訓練するように構成される、処理ユニットであって、前記訓練するプロセスにおいて、訓練表面画像(210)が、前記ニューラルネットワークの少なくとも1つの畳み込み層の入力に通信可能に結合され、前記特性値(V_train)が、前記少なくとも1つの畳み込み層の出力において前記特性マップ(270)のマップピクセルのグローバル平均を計算するように構成されたグローバル平均モジュールに通信可能に結合される、処理ユニットと、
- 前記訓練済みニューラルネットワークを提供するように構成される、出力ユニットであって、前記訓練済みニューラルネットワークが、好ましくは物理オブジェクトの損傷状態を判定するために使用可能である、出力ユニットと、
を備える、装置。
【請求項17】
物理オブジェクトの損傷状態を判定するための装置であって、
- 前記物理オブジェクト(100)の表面画像(210)を受信するように構成される、入力ユニットと、
- 事前訓練済み機械学習モデルを適用して、受信した表面マップから特性値(V(X,Y)を導出する(420)ように構成される、処理ユニットであって、各特性値が、それぞれの位置(X,Y)における損傷インデックスを示す、処理ユニットと、
- 前記特性値を提供するように構成される、出力ユニットであって、前記特性値が、好ましくは前記物理オブジェクトの生産プロセスをモニタリング及び/又は制御するために使用可能である、出力ユニットと、
を備える、装置。
【請求項18】
生産プロセスを制御するためのシステムであって、
- 物理オブジェクトの表面画像をキャプチャするように構成される、カメラと、
- 受信した表面マップから導出された特性値を提供するように構成される、請求項17に記載の装置であって、各特性値が、それぞれの位置(X,Y)における損傷インデックスを示す、装置と、
- 前記特性値に基づいて、前記物理オブジェクトの1つ又は複数の損傷された位置に作用する動作を実行するように構成される、オブジェクト修正器と、
を備える、システム。
【請求項19】
プログラムが処理ユニットによって実行されると、請求項1に記載の方法又は請求項8に記載の方法のステップを前記処理ユニットに実行させる命令を含む、コンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【0001】
技術分野
本開示は、概して、画像処理又はコンピュータビジョン技術に関する。より詳細には、本開示は、物理オブジェクトの損傷状態を判定するためのコンピュータ実施方法及び装置、物理オブジェクトの損傷状態を判定するために使用可能な訓練済みニューラルネットワークを生成するためのコンピュータ実施方法及び装置、生産プロセスを制御するための方法及びシステム、並びにコンピュータプログラム要素に関する。
【背景技術】
【0002】
背景
農業の技術分野において、農業経営又は農耕作業をより持続可能にするための着実な後押しが存在する。高精度の農業経営又は農業は、より良好な持続可能性及び環境影響の低減を達成するための方法の1つと見られる。これは、田畑での植物被害の信頼性の高い局所検出に依存している。生産環境では、画像に基づいて生産プロセスをモニタリング及び/又は制御することも、欠陥検出の信頼性及び欠陥の精密な位置特定に依存している。したがって、局所的な欠陥を確実に識別する必要がある。適当な量の化学製品を適用するのに十分正確であるように、コンピュータビジョン技術を改善する必要がある。さらに、生産環境に適用するために、コンピュータビジョンを改善する必要がある。
【発明の概要】
【課題を解決するための手段】
【0003】
発明の概要
本開示の一態様において、物理オブジェクトの損傷状態を判定するためのコンピュータ実施方法であって、
- 物理オブジェクトの表面画像を受信するステップと、
- 事前訓練済み機械学習モデルを提供して、受信した表面マップから特性値を導出するステップであって、各特性値が、それぞれの位置における損傷インデックスを示し、特性値が、好ましくは物理オブジェクトの生産プロセスをモニタリング及び/又は制御するために使用可能である、導出するステップと、
を含む、方法が提供される。
【0004】
本開示の別の態様において、生産プロセスを制御するための方法であって、
- 物理的生産品の表面画像をキャプチャすることと、
- 事前訓練済み機械学習モデルを提供して、受信した表面マップから特性値を導出することであって、各特性値が、それぞれの位置における損傷インデックスを示す、導出することと、
- 導出された特性値に基づいて、損傷された位置を識別及び位置特定することと、
- 処置デバイスを制御して識別された位置に処置を適用するための命令を含む、制御データを生成することと、
を含む、方法が提供される。
【0005】
本開示のさらなる態様において、物理オブジェクトの損傷状態を判定するために使用可能な訓練済みニューラルネットワークを生成するためのコンピュータ実施方法であって、
- 表面画像上に示された物理オブジェクトについての注釈付き表面特性値を有する表面画像を含む訓練セットを提供することであって、注釈付き表面特性値が、損傷されている物理オブジェクトの、撮像された表面領域のパーセンテージを示す損傷インデックスを含む、提供することと、
- 提供された訓練セットでニューラルネットワークを訓練することであって、訓練するプロセスにおいて、訓練表面画像が、ニューラルネットワークの少なくとも1つの畳み込み層の入力に通信可能に結合され、特性値が、少なくとも1つの畳み込み層の出力において特性マップのマップピクセルのグローバル平均を計算する、グローバル平均モジュールに通信可能に結合される、訓練することと、
を含む、コンピュータ実施方法が提供される。
【0006】
本開示のさらなる態様において、物理オブジェクトの損傷状態を判定するために使用可能な訓練済みニューラルネットワークを生成するための装置であって、
- 表面画像上に示された物理オブジェクトについての注釈付き表面特性値を有する表面画像を含む訓練セットを受信するように構成される、入力ユニットであって、注釈付き表面特性値が、物理オブジェクトの1つ又は複数の表面ポイント及び/又は領域の損傷インデックスを示す、入力ユニットと、
- 提供された訓練セットでニューラルネットワークを訓練するように構成される、処理ユニットであって、訓練するプロセスにおいて、訓練表面画像が、ニューラルネットワークの少なくとも1つの畳み込み層の入力に通信可能に結合され、特性値が、少なくとも1つの畳み込み層の出力において特性マップのマップピクセルのグローバル平均を計算するように構成されたグローバル平均モジュールに通信可能に結合される、処理ユニットと、
- 訓練済みニューラルネットワークを提供するように構成される、出力ユニットであって、訓練済みニューラルネットワークが、好ましくは物理オブジェクトの損傷状態を判定するために使用可能である、出力ユニットと、
を備える、装置が提供される。
【0007】
本開示のさらなる態様において、物理オブジェクトの損傷状態を判定するための装置であって、
- 物理オブジェクトの表面画像を受信するように構成される、入力ユニットと、
- 事前訓練済み機械学習モデルを適用して、受信した表面マップから特性値を導出するように構成される、処理ユニットであって、各特性値が、それぞれの位置における損傷インデックスを示す、処理ユニットと、
- 特性値を提供するように構成される、出力ユニットであって、特性値が、好ましくは物理オブジェクトの生産プロセスをモニタリング及び/又は制御するために使用可能である、出力ユニットと、
を備える、装置が提供される。
【0008】
本開示のさらなる態様において、生産プロセスを制御するためのシステムであって、
- 物理オブジェクトの表面画像をキャプチャするように構成される、カメラと、
- 受信した表面マップから導出された特性値を提供するように構成される装置であって、各特性値が、それぞれの位置における損傷インデックスを示す、装置と、
- 特性値に基づいて、物理オブジェクトの1つ又は複数の損傷された位置に作用する動作を実行するように構成される、オブジェクト修正器と、
を備える、システムが提供される。
【0009】
さらなる実施例では、プログラムが処理ユニットによって実行されると、本明細書に開示される方法のステップを処理ユニットに実行させる命令を含む、コンピュータプログラム製品が提供される。
【0010】
本明細書に記載されるいかなる開示及び実施形態も、上記で概説された方法、装置、システム、及びコンピュータプログラム要素に関し、その逆もまた同様である。有利なことに、実施形態及び実施例のいずれかによってもたらされる恩恵が、全ての他の実施形態及び実施例にも同様に当てはまり、その逆もまた同様である。
【0011】
本明細書で使用される「判定すること」は、「判定を開始すること又は判定させること」も含み、「生成すること」は、「生成を開始すること又は生成させること」も含み、「提供すること」は、「判定、生成、選択、送信、若しくは受信を開始すること、又は判定、生成、選択、送信、若しくは受信させること」も含む。
【0012】
農業及び工業において、物理オブジェクトは、それらの表面にわたって影響をもたらす。多くの場合、表面は、実質的に平坦である。例えば、物理オブジェクトは、農産物(作物を提供する田畑など)を提供してもよく、又は工業用途(断熱性を与えるゴムマットなど)を提供してもよい。影響は、均等ではないように表面全体に分散され得る。より多くの影響をもたらす表面領域もあり、より少ない影響をもたらす表面領域もある。理論上は、人間の観測者が、物理オブジェクトと相互作用して、影響をより均質に分散させ得る。しかしながら、観測者は、異なる表面領域についての特性を区別する必要がある。しかし、物理オブジェクトのサイズ(又はその位置)によって、人間の観測者がそれらの表面を目視で検査することができなくなることがある。物理オブジェクトは、単に観測者がオブジェクトの全ての部分の検査を完了するには大きすぎる場合があり、又は物理オブジェクトに到達するのが難しい場合がある。
【0013】
このために、物理オブジェクトの表面上の損傷を識別するための効率的で信頼性の高い方法を提供する、方法、システム、適用デバイス、及びコンピュータ要素が提供される。いくつかの実施例では、物理オブジェクトは、圃場であってもよく、損傷は、植物被害であってもよい。いくつかの実施例では、物理オブジェクトは、工業製品であってもよく、損傷は、1つ又は複数の表面領域の標準からの偏差であってもよい。特に、ニューラルネットワークを訓練するために、物理オブジェクトの表面画像が提供される。撮像された表面領域をカバーするグローバル値である注釈付き表面特性が提供され、例えば、示された領域の30%が損傷されている。この査定は、画像の目視検査によって専門家による目視検査に基づき実行され得る。しかしながら、専門家は、個々のピクセルに注釈を付ける必要はない。展開の間、訓練済みニューラルネットワークは、別の物理オブジェクトから取得された表面画像内の損傷された位置(例えば、領域)を識別することが可能である。したがって、損傷された位置の選択的処置が与えられ得る。2つの例示的な適用シナリオが、以下に説明される。
【0014】
第1のシナリオ
第1のシナリオでは、物理オブジェクトは、作物が生育する圃場である。植物の生育は、通常、全く理想的ではない。例えば、植物は、損傷を受けることがあり、又は病気に冒されることがある。第1の例では、植物は、病気により損傷を受けている。セプトリア(Septoria)は、物質を作り出す菌類であり、これらの物質が、作物の葉を損傷することがある。例えば、物質は、作物に対する毒物であることがある。損傷は、斑点病として視認できる場合があり、収量低下を引き起こし得る。第2の例では、昆虫又は他の動物が単に作物を食べてしまうために、損傷を引き起こすことがある。第3の例では、損傷は、生育不足である。
【0015】
観測者は、農場主であり、損傷固有の措置を適用することによって、物理オブジェクトと相互作用し得る。例えば、農場主は、(セプトリア又は他の菌類に対する)殺菌剤、(昆虫に対する)殺虫剤などの化学製品を(即ち、田畑の作物に)分散させて、(作物の生育を刺激するための)肥料などを適用し得る。そのような措置によって、作物が再び正常に生育することが期待される。
【0016】
化学製品は、適当な量を適用することが必要であるため、農場主は、通常、田畑を見るときに損傷の特質及び量を識別する。サンプリング手法では、農場主は、いくつかの個々の植物を目視で検査する。時間があれば、農場主は、田畑の複数の場所に行く。可能な限り、農場主は、製品の適用前後に田畑を見る。
【0017】
しかしながら、第1のシナリオ(第1の例)を用いて議論を続けると、病気(及び他の損傷)は、圃場に均等に影響を及ぼさない。田畑のいくつかの領域は、他の領域よりも少ない損傷又は多くの損傷を示すことがある。農場主は、いくつかの植物から田畑の実質的に全ての植物へと推定を行い得るが、それによって不適当な措置が引き出されることがある。
【0018】
農場主は、田畑の中で行くのが容易な場所で植物を検査する場合がある。農場主は、田畑の端にある植物を措置の基準として採用してもよいが、状況を誤解し、それによって潜在的に不適当な量の化学物質で措置を適用することがある。農場主は、化学製品のいくらかを浪費することさえあり、それにより環境を害することがある。
【0019】
コンピュータビジョン技術が、改良点であると思われる。カメラは、例えば無人航空機(UAV)、航空機などに搭載される場合に、田畑の画像を撮影することができる。
【0020】
しかしながら、田畑の現実世界は、画像の仮想世界とは異なる。農場主は、(現実世界において)個々の植物を見て、既に言及されている不十分さで、植物の生育状態を即座に理解(例えば、損傷を認識)し得る。しかしながら、画像が多くの植物を示しているとしても、画像を見ている農場主は、状態を認識していない場合がある。
【0021】
さらに、農場主が画像を解釈するのは非常に複雑である(又は不可能ですらある)。場合によっては、農場主は、有効な結論に達することがあるが、異なる農場主は、画像を異なるように解釈することがある。その結果、化学製品の適用は、それだけに等しくなくなる場合がある。
【0022】
本明細書に開示される方法、システム、適用デバイス、及び/又はコンピュータ要素を用いて、物理オブジェクトの表面上の損傷を効率的で信頼性の高い方法で識別することができる。このようにして、農場主は、田畑の不均一性を考慮に入れた、且つ適当な量の化学製品を適用するのに十分正確な粒度で、損傷を理解することができる。
【0023】
さらに、農業の技術分野において、農業経営又は農耕作業をより持続可能にするための着実な後押しが存在する。高精度の農業経営又は農業は、より良好な持続可能性及び環境影響の低減を達成するための方法の1つと見られる。これは、田畑での植物被害の信頼性の高い局所検出に依存している。本明細書に開示される方法、システム、適用デバイス、及び/又はコンピュータ要素を用いて、田畑において植物被害が発生する場所の識別によって、精密な局所的処置が可能となる。これによって、作物防疫製品の使用を減少させることが可能となる。これは、農業の環境負荷を低下させ、農業をより持続可能にする。
【0024】
第2のシナリオ
第2のシナリオでは、工業生産を考える。物理オブジェクトは、工業製品であり、少なくとも1つのその表面が、正常から(又は標準から)の偏差を示し得る。例えば、オブジェクトは、化学プロセスによって作られたマットであってもよく、オブジェクトは、その表面上が少なくとも部分的に損傷されていてもよい。
【0025】
ここでも、物理オブジェクトにおける正常からの偏差(損傷など)が、本明細書に開示される方法、システム、適用デバイス、及び/又はコンピュータ要素を用いて特定の表面領域の粒度で検出されると、状況は改善され得る。次いで、適当な措置が、表面に、及び/又はオブジェクト全体に適用され得る。
【0026】
本発明の目的は、圃場の作物を保護する効率的な方法を提供すること、又は工業製品の製品品質を改善することである。これらの及び他の目的は、以下の説明を読むと明らかになり、独立請求項の主題により解決される。従属請求項は、本発明の好ましい実施形態を指す。
【0027】
本明細書で用いられる「圃場」という用語は、処置されるべき圃場を指す。圃場は、農場、温室などの任意の植物又は作物栽培領域であってもよい。植物は、作物、雑草、自生植物、前の生育期からの作物、有用植物、又は圃場に存在する任意の他の植物であってもよい。圃場は、その地理的位置又はジオリファレンスされた位置データを通して識別され得る。基準座標、サイズ、及び/又は形状が、圃場をさらに特定するために使用され得る。
【0028】
本出願の文脈で使用される「損傷」という用語は、特性値の、標準特性値からの任意の偏差を含み得る。損傷の例には、植物被害及び工業製品の損傷が含まれ得る。
【0029】
本出願の文脈で使用される「植物被害」という用語は、以下によって引き起こされる植物病害(即ち、植物の正常な生理的機能からの逸脱)を含むがこれらに限定されない、植物に有害な植物の正常な生理的機能からの任意の逸脱を含み得る。
a)菌類(「菌類の植物病害」)、
b)細菌(「細菌の植物病害」)、
c)ウイルス(「ウイルスの植物病害」)、
d)昆虫食害、
e)植物栄養欠乏症
f)高温ストレス、例えば30℃を超える温度条件、
g)低温ストレス、例えば10℃未満の温度条件、
h)乾燥ストレス、
i)過度の日光への暴露、例えば変色の兆候、日焼け、若しくは同様の照射の兆候を生じさせる日光への暴露、
j)pH5より低いpH値及び/若しくはpH9より高いpH値を有する土壌の酸性又はアルカリ性のpH条件、
k)塩ストレス、例えば土壌塩分、
l)化学物質による汚染、例えば重金属類による汚染、並びに/又は
m)肥料又は作物防疫の有害作用、例えば、薬害、
n)破壊的な天候条件、例えば雹、霜、被害を与える風
本明細書で用いられる「画像」又は「画像データ」という用語は、この場合幅広く理解されるべきであり、1つのカメラ、1つの画像センサ、複数のカメラ、又は複数の画像センサによって取得又は生成され得る任意のデータ又は電磁放射画像を含む。画像データは、可視スペクトル範囲及び2次元性に限定されない。それにより、例えば、赤外線スペクトル範囲内の画像データを取得するカメラも、画像データの用語に含まれる。カメラのフレームレートは、0.3Hz~48Hzの範囲にあってもよいが、これに限定されない。
【0030】
適用デバイスとも呼ばれる、「処置デバイス」という用語は、この場合幅広く理解されるべきであり、被害を低減するための措置を実行するように構成されている任意のデバイスを含む。圃場の場合、処置デバイスは、圃場上に作物防疫製品を適用してもよい。適用デバイスは、圃場を横断するように構成されてもよい。適用デバイスは、地上又は空中の乗り物、例えば、トラクタ搭載車両、自走式噴霧機、軌条車両、ロボット、航空機、無人航空機(UAV)、ドローンなどであってもよい。
【0031】
入力及び出力
以下の開示は、物理オブジェクトの個々の表面ポイントの粒度で物理オブジェクトの特性を定量化するためのコンピュータ実施方法(並びにシステム及びコンピュータプログラム)を用いた手法について説明する。本明細書で使用される粒度は、空間における解像度を指す。
【0032】
簡潔に言えば、コンピュータは、表面に現れる(物理オブジェクトの)特性を定量化する。(物理オブジェクトの)表面は、画像を撮ることを可能にしなければならないため、表面が実質的に平坦であることが都合がよい。しかしながら、これは必須ではない。
【0033】
コンピュータは、ニューラルネットワーク(又は簡潔に言えば「ネットワーク」)のトポロジに配置された処理モジュールを有する。ネットワークは、表面画像を受信するための入力及び特性マップを提供するための出力を有する。
【0034】
表面画像は、(物理オブジェクトの)表面を示す画像である。画像は、ピクセルの集合であるため、表面画像は、観察者(ユーザ又は他のエンティティ)が表面をより小さな部分、即ち下記における「表面ポイント」に仮想的に分割することを可能にする。位置対応が適用され、表面ポイントの個々の位置(X,Y)が、表面画像内のピクセルの個々の位置データ(x,y)に対応する。
【0035】
(画像が現実世界に位置する物理オブジェクトを示すため、)表面画像内のピクセルは、現実世界データを有するデータチャネルを有する。現実データは、色データを含む。表面画像内の個々のピクセルは、特定の波長の光反射率に対応するチャネルを有する。チャネルの数は、カメラの種類に依存する。例えば、RGBカメラは、3つのチャネルを有する。
【0036】
表面画像の人間の観察者は、色情報を個々の表面ポイントに関連付け得る。しかしながら、これはまだ、いかなる量子化ももちろん、オブジェクト特性を示すものでもない。
【0037】
(ネットワークを有する)コンピュータは、特性マップにおいて量化子を提供し、ピクセルも有する。これらの特性ピクセルは、(特性値として)量化子を提供する。コンピュータは、位置対応を維持し、表面画像の個々のピクセル位置データ(x,y)は、特性マップの個々のピクセル位置データ(x,y)に対応する。同じ観測が、逆の視点にも当てはまり、特性マップの位置データは、表面画像内の位置データに一致する。
【0038】
したがって、表面ポイントの個々の位置(X,Y)は、特性マップの個々のピクセル位置データ(x,y)に対応する。言い換えると、(現実世界の)表面ポイントは、特性ピクセルに対応する。即ち、特性ピクセルは表面ポイントに一致し、したがって、特性値はポイント関連値である。
【0039】
この全単射関係(即ち、対応/一致)によって、特性マップを検査するユーザが、表面ポイントの粒度で物理オブジェクトと相互作用することが可能となる。
【0040】
その第1の例の上述した第1のシナリオにおいて、ユーザは、菌類の存在又は不存在に従って圃場の領域(即ち、一般表記では表面ポイント)を区別する特性マップを検査し得る。ユーザは、個々の領域への殺菌剤の適用をトリガし得る。
【0041】
ニューラルネットワーク
コンピュータは、特性ピクセルのチャネルにおいて特性マップ内に特性値を提供する。特性ピクセルは、単一チャネルを有し得る。特性値は、パーセンテージ若しくは絶対値などの(実数の形式の)数値であってもよく、又は特性値は、分類子(特定の特性の存在又は不存在を示す2値分類子、マルチクラス分類子)であってもよい。
【0042】
表面画像は、ネットワークの入力におけるピクセル寸法に対応するピクセル寸法を有する。ピクセル寸法は、ピクセル数で与えられたW(幅)及びH(高さ)を有する2D寸法である。
【0043】
ネットワークの出力における特性マップは、その2D寸法を維持する。全ての表面ポイントが特性マップ内にその対応するピクセル(表面画像及び特性マップの両方について同一のピクセル数及び同一のアスペクト比)を有する場合、位置粒度は最も高い。
【0044】
2つ以上の表面ポイントが、特性マップ内に対応する共通ピクセルを有する場合、及び/又はアスペクト比が変化する場合に、位置粒度は、依然として(ユーザが措置に関する決定を行うのに対して)許容可能である。
【0045】
任意選択で、コンピュータは、ネットワークの出力において特性マップをユーザに視覚的に提示し得る。コンピュータは、次いで、特性マップを(特定の表示色が特定の特性値に前もって割り当てられている)いわゆるヒートマップとして示す。
【0046】
任意選択で、コンピュータは、特性マップ全体についての集計値として(特性マップ内の)物理オブジェクトについての量化子を集計する。
【0047】
ニューラルネットワークにおいて、コンピュータは、処理モジュール(又は「層」)によってデータを処理する。ニューラルネットワークは、表面画像(即ち、ポイントピクセルを有する)を受信する入力層を有し、特性マップ(即ち、特性ピクセルを有する)を提供する出力層を有する。
【0048】
コンピュータは、訓練段階及びテスト段階において動作する。本明細書で用いられる「コンピュータ」という用語は、概してデータ処理の概念を表す。しかしながら、訓練及びテストは、別個の物理コンピュータによって実施され得る。
【0049】
入力層と出力層との間のネットワーク層の配置を考えると、ネットワークは2つ以上の中間層(いわゆる隠れ層)をさらに含む。したがって、ネットワークは、いわゆる「深層ネットワーク」である。入力層LAY(1)は、表面画像を受信し、第1の中間マップMAP(1)を提供する。出力層LAY(N)は、最後の中間マップMAP(N-1)を受信し、特性マップMAP(N)を提供する。LAY(1)とLAY(N)との間の(N-2)個の層は、隠れ層である。
【0050】
層によって実行されるデータ処理を考えると、層は、修正層及び(任意選択の)バイパス層である。
【0051】
概して、修正層は、チェーン又は処理シーケンスを形成する。修正層は、畳み込み動作(訓練によって取得されるフィルタ重みを伴う)、プーリング及びアップサンプリング動作(事前定義された、訓練されていないパラメータを伴う)、並びに他の動作(RELUなど)といった動作を適用する。
【0052】
したがって、修正層は、畳み込み層、プーリング層、アップサンプリング層、及びRELU層である。RELU層は、便宜上畳み込み層内に実装されてもよいが、それらは、別々に実装されてもよい。
【0053】
畳み込みの適用により、ネットワークは、畳み込みニューラルネットワーク(CNN)である。畳み込み層は、特徴マップを提供する。
【0054】
2つの制約
ネットワークは、表面画像を特性マップへと処理する層のシーケンスであるが、少なくとも以下の2つの精度の制約がある。
【0055】
第1に、プーリング及びアップサンプリング動作は、ピクセルの数を減少又は増加させることによって、特徴マップのピクセル寸法を固有に変更する。位置データの精度はプーリングの間に低下するが、アップサンプリングでは、精度が回復しない。
【0056】
特性マップについての位置データを表面画像の粒度まで復元する必要がある。
第2に、ネットワークはオブジェクトの特性を定量化するため、ネットワークは、サンプルオブジェクトについてのサンプル特性で訓練されなければならない。しかしながら、出力の粒度の訓練データ、即ち個々の表面ポイントに対する特性ピクセルは、概して利用可能でない。言い換えると、ポイント固有の注釈が欠落している。
【0057】
精度の制約は、ネットワークの2つの実施詳細によって対処される。(1)プーリング層及びアップサンプリング層が、位置データも同様に処理し、(2)訓練が、位置非依存の訓練データ(特性データでもあるが注釈付きである)と位置対応であるが集計された特性データとの間の損失を最小化する。
【0058】
実施詳細は、制約には別個に対処しないが、相乗的な方法で作用する。
プーリング層は、特徴マップ(即ち、畳み込み層の出力)の中の隣接ピクセルのグループを識別するが、グループのピクセルの中の極値データ値(最高データ値又は最低データ値など)でピクセルの位置データ(位置ではなくデータ)を維持する。アップサンプリング層は、アップサンプリングされたピクセルのグループを、マップピクセルを有する特性マップへの(維持された位置データによって識別される)位置に置く。
【0059】
ニューラルネットワークは、さらなる処理モジュールとしてアグリゲータを使用する。アグリゲータは、(出力としての画像又はマップではない)必ずしも上述した関数内の層ではなく、(アグリゲータ入力における)特性マップのチャネルデータを、表面関連値を意味する(アグリゲータ出力における)全体値へ処理するモジュールである。(「表面関連」という表記は、「オブジェクト関連」としても当てはまる)。代替として、アグリゲータは、中間マップからデータを受信し得る。
【0060】
実施形態では、アグリゲータは、特性マップのピクセルにわたるチャネルデータの平均を計算し、それは、いわゆる実数のグローバル平均である。即ち、アグリゲータは、両方の分類カテゴリについてのピクセルの割合を計算する。しかしながら、2つより多くの分類カテゴリ(例えば、「損傷なし」、「低損傷」、「高損傷」などのクラス)が存在し得る。
【0061】
上述の通り、特性マップのピクセルは、単一チャネルのみを有することができ、そのチャネルは、特性値を保持する。
【0062】
テスト段階では、コンピュータは、特性マップをヒートマップとして表示することができ、任意選択で表面関連値を表示することができ、アグリゲータの使用は、便利なアドオンである。
【0063】
訓練中の動作
訓練段階では、コンピュータは、表面画像である複数の訓練画像と、(少なくとも)表面関連粒度で訓練画像上に示されるオブジェクトについての特性を有する、対応する複数の注釈と、を含む訓練セットでニューラルネットワークを動作させる。
【0064】
注釈は、専門家によって便利に作成される。第1のシナリオの第1の例を考えると、専門家は、損傷パーセンテージ(例えば、健康な田畑の画像に対して0%、菌類が田畑の半分を破壊した田畑の画像に対して50%など)の注釈を付けてもよい。
【0065】
コンピュータは、入力層によって訓練表面画像を受信し、アグリゲータによって注釈(表面関連値)を受信する。
【0066】
テスト中の動作
コンピュータは、ニューラルネットワークを動作させることによって(ポイント関連値である)特性値を導出する。それは、(i)複数の畳み込み層の出力において特徴マップを提供し、(ii)特徴マップ内の隣接ピクセルのグループから、少なくとも1つのプーリング層によって特徴マップをプールマップにプールし、プーリング層は、グループ内の極値を有するピクセルの位置データを維持し、(iii)アップサンプリングされたピクセルのグループを、特性ピクセルを有する特性マップへの維持された位置に置く、少なくとも1つのアップサンプリング層によって、プールマップをアップサンプリングする。特性マップは、表面画像のピクセル寸法に対応するピクセル寸法を有する。
【0067】
物理オブジェクトの損傷状態を判定するためのコンピュータ実施方法によれば、又は生産プロセスを制御するための方法によれば、事前訓練済み機械モデルは、表面画像上に示される物理オブジェクトについての注釈付き表面特性値を有する表面画像を含む訓練セットに対して訓練されており、注釈付き表面特性値は、損傷されている物理オブジェクトの、撮像された表面領域のパーセンテージを含む。
【0068】
物理オブジェクトの損傷状態を判定するためのコンピュータ実施方法によれば、又は生産プロセスを制御するための方法によれば、表面領域における損傷インデックスが閾値以上である場合、表面領域が、損傷された位置であると判定される。
【0069】
物理オブジェクトの損傷状態を判定するためのコンピュータ実施方法によれば、又は生産プロセスを制御するための方法によれば、物理オブジェクトの1つ又は複数の表面領域の損傷インデックスが、損傷パーセンテージとして提供され、損傷パーセンテージは、好ましくは、1つ又は複数の表面領域に適用される処置の量を判定するために使用可能である。
【0070】
物理オブジェクトの損傷状態を判定するためのコンピュータ実施方法によれば、又は生産プロセスを制御するための方法によれば、物理オブジェクトの1つ又は複数の表面領域の損傷インデックスに基づいて、物理オブジェクトの異なる表面領域上に適用されるべき処置の量の2次元空間分布を示す適用マップが生成される。
【0071】
物理オブジェクトの損傷状態を判定するためのコンピュータ実施方法によれば、又は生産プロセスを制御するための方法によれば、物理オブジェクトは、圃場を含み、処置は、植物被害を処置するための製品の適用を含む。代替として、物理オブジェクトは、工業製品を含み、処置は、1つ又は複数の表面領域の偏差を低減するための措置を含む。
【0072】
物理オブジェクトの損傷状態を判定するために使用可能な訓練済みニューラルネットワークを生成するためのコンピュータ実施方法によれば、物理オブジェクトは、圃場を含み、損傷インデックスは、植物被害を示す。
【0073】
物理オブジェクトの損傷状態を判定するために使用可能な訓練済みニューラルネットワークを生成するためのコンピュータ実施方法によれば、物理オブジェクトは、工業製品を含み、損傷インデックスは、1つ又は複数の表面領域の標準からの偏差を示す。
【0074】
物理オブジェクトの損傷状態を判定するために使用可能な訓練済みニューラルネットワークを生成するためのコンピュータ実施方法によれば、特性値は、標準に対する相対値であり、又は表面特性値は、絶対値である。
【0075】
物理オブジェクトの損傷状態を判定するために使用可能な訓練済みニューラルネットワークを生成するためのコンピュータ実施方法によれば、特性値(V(X,Y))は、表面画像のピクセル解像度に実質的に対応するピクセル解像度の2次元マップ(「ヒートマップ」,「マスク」)として提供される。
【0076】
物理オブジェクトの損傷状態を判定するために使用可能な訓練済みニューラルネットワークを生成するためのコンピュータ実施方法によれば、方法は、ユーザによってニューラルネットワークを提供するステップ及び/又はユーザによってニューラルネットワークを受信するステップをさらに含む。
【0077】
物理オブジェクトの損傷状態を判定するために使用可能な訓練済みニューラルネットワークを生成するためのコンピュータ実施方法によれば、方法は、ユーザが表面画像及び注釈付き表面特性値を提供することを可能にする、ユーザインターフェースを提供するステップをさらに含む。
【0078】
以下に、さらなる実施形態が記載されている。
実施形態1によれば、物理オブジェクト(100)の個々の表面ポイント(120)の粒度で物理オブジェクト(100)の特性を定量化するためのコンピュータ実施方法(400)が提供され、方法(400)は、
チャネルデータ(Zk)及び位置データ(x,y)を有する物理オブジェクト(100)についての現実世界データを有する表面画像(210)を受信するステップ(410)であって、表面画像(210)内のピクセルの位置データ(x,y)は、物理オブジェクト(100)の中の表面ポイント(120)の位置(X,Y)と一致する、受信するステップ(410)と、
ニューラルネットワーク(370)を動作させることによって、ポイント関連値である特性値(V(X,Y)を導出するステップ(420)であって、ニューラルネットワーク(370)は、少なくとも1つの畳み込み層(Lay(1))の出力において少なくとも1つの特徴マップ(Map(1))を提供し、少なくとも1つの特徴マップは、表面画像のピクセル寸法(W,H)に対応するピクセル寸法(W,H)を有する特性マップ(270)である、導出するステップ(420)と、を含み、
ニューラルネットワーク(370)は、専門家の注釈付き特性値(V_train)を有する訓練表面画像(215)である、複数の注釈付き訓練画像(215)で前もって訓練されており、訓練表面画像(210)が、少なくとも1つの畳み込み層(Lay(1))の入力に通信可能に結合されており、専門家の注釈付き特性値(V_train)は、特性マップ(270)のマップピクセルのグローバル平均を計算したグローバル平均モジュール(G_AVG)に通信可能に結合されている。
【0079】
実施形態2によれば、実施形態2は、実施形態1の主題を含み、ニューラルネットワーク(370)は、複数の特徴マップ(Map(1)、Map(2)、Map(5))を出力において提供する、複数の畳み込み層(Lay(1)、Lay(2)、Lay(5))を有する。
【0080】
実施形態3によれば、実施形態3は、実施形態2の主題を含み、ニューラルネットワーク(370)は、特徴マップ(Map(2))の中の隣接ピクセルのグループ(250)から、少なくとも1つのプーリング層(Lay(4))によって特徴マップをプールマップ(Map(3))にプールし、プーリング層(Lay(3))は、グループ(250)内の極値を有するピクセルの位置データ(251)を維持し、アップサンプリングされたピクセルのグループ(260)を、マップピクセルを有する特性マップ(270)に維持された位置(262)に置く、少なくとも1つのアップサンプリング層(Lay(4))によって、プールマップ(Map(3))をアップサンプリングする。
【0081】
実施形態4によれば、実施形態4は、実施形態3の主題を含み、コンピュータ(350)は、最大プーリングを適用することによって、特徴マップをプールマップにプールする。
【0082】
実施形態5によれば、実施形態5は、実施形態1の主題を含み、コンピュータ(350)は、ニューラルネットワーク(370)の第1の層において表面画像をチャネルデータとして受信する。
【0083】
実施形態6によれば、実施形態6は、実施形態5の主題を含み、コンピュータ(350)は、表面画像(210)をRGBチャネルを有する画像として受信する。
【0084】
実施形態7によれば、実施形態7は、実施形態5の主題を含み、コンピュータ(350)は、赤外線色についての表面画像(210)も受信し、複数のチャネルが、物理オブジェクト(100)から放射された放射線の複数のスペクトル線に割り当てられる。
【0085】
実施形態8によれば、実施形態8は、実施形態6の主題を含み、コンピュータ(350)は、ハイパースペクトルカメラセンサを含むカメラ(310)から複数のチャネルで画像データを受信する。
【0086】
実施形態9によれば、実施形態9は、先行する実施形態のいずれか1つの主題を含み、コンピュータ(350)は、物理オブジェクト(100)の上を飛行する無人航空機(340)の機上カメラから表面画像(210)を受信する。
【0087】
実施形態10によれば、実施形態10は、実施形態1の主題を含み、ステップは、U-Net型のニューラルネットワーク(370)をコンピュータが実行することによって実行される。
【0088】
実施形態11によれば、実施形態11は、先行する実施形態のいずれか1つの主題を含み、特性値(V(X,Y))は実数であり、又は特性値(V(X,Y))は分類子である。
【0089】
実施形態12によれば、実施形態12は、先行する実施形態のいずれか1つの主題を含み、表面特性値は、標準に対する相対値であるか、又は表面特性値は、絶対値である。
【0090】
実施形態13によれば、実施形態13は、先行する実施形態のいずれか1つの主題を含み、物理オブジェクト(100)についての累積された特性値(V)を導出するようにさらに構成し、累積された値は、特性マップ(270)のピクセルの平均特性値として計算される。
【0091】
実施形態14によれば、実施形態14は、先行する実施形態のいずれか1つの主題を含み、表面画像(210)のピクセル解像度に実質的に対応するピクセル解像度で表面特性値(V(X,Y))を2次元マップ(「ヒートマップ」,「マスク」)として提供するようにさらに構成する。
【0092】
実施形態15によれば、実施形態15は、先行する実施形態のいずれか1つの主題を含み、物理オブジェクト(100)及び特性値は、圃場及び生育値である。
【0093】
実施形態16によれば、表面画像(215)上に示される物理オブジェクト(100)についての注釈付き表面特性値を有する表面画像(215)を含む訓練セットで、ニューラルネットワーク(370)を訓練するためのコンピュータ実施方法(600)が提供され、訓練表面画像(210)は、少なくとも1つの畳み込み層の入力に通信可能に結合されており、特性値(V_train)は、少なくとも1つの畳み込み層の出力において特性マップ(270)のマップピクセルのグローバル平均を計算するグローバル平均モジュール(G_AVG)に通信可能に結合されている。
【0094】
実施形態17によれば、実施形態17は、実施形態16の主題を含み、実施形態1~15のいずれかによる方法で動作するようにニューラルネットワーク(370)を訓練することによって特徴付けられる。
【0095】
実施形態18によれば、実施形態1~17のいずれか1つに従って、方法(400/600)のいずれかを実行するように適合されたコンピュータが提供される。
【0096】
実施形態19によれば、コンピュータのメモリ内にロードされ、且つコンピュータの少なくとも1つのプロセッサによって実行されると、実施形態1~18のいずれか1つによるコンピュータ実施方法のステップを実行する、コンピュータプログラム製品が提供される。
【0097】
実施形態20によれば、特性マップ(270)からポイント固有の特性値(V(x,y)を受信し、表面(110)のポイント固有位置に作用するポイント固有アクチュエータ(620)の動作をトリガする、オブジェクト修正器(610)によって、実施形態1~17のいずれかによる方法を実行することによって取得される物理オブジェクトの定量化された特性を使用することが提供される。
【図面の簡単な説明】
【0098】
【
図1】物理オブジェクトの特性を定量化するためのシステムを示す。
【
図2】オブジェクト表面から表面画像及び特性マップへの位置対応を示す。
【
図3】例として特性ピクセルを有する特性マップを示す。
【
図5】ネットワーク層並びにその入力及び出力マップと共に説明を分離して示す。
【
図6】位置情報を維持するプーリング層及び位置情報を取り出すアップサンプリング層を示す。
【
図7】ネットワークに対する簡略化された概要において互いに協調するネットワーク層を示す。
【
図9】
図1のシステムから取得された特性値に従って物理オブジェクトに作用するオブジェクト修正器を示す。
【
図10】物理オブジェクトの特性をオブジェクトの個々の表面ポイントの粒度で定量化するためのコンピュータ実施方法のフローチャートを示す。
【
図12】圃場の特性を定量化するための例示的システムを示す。
【
図13】ソフトウェアアプリケーションの例示的UIを示す。
【
図15】田畑管理のための方法を説明するフローチャートを示す。
【
図16】工業製品の特性を定量化するための例示的システムを示す。
【発明を実施するための形態】
【0099】
詳細な説明
規定
説明では、しばしば第1のシナリオを参照する。物理オブジェクトは、圃場である。読者は、工業生産における上述した第2のシナリオなどの他のシナリオに本開示を適用することができる。
【0100】
説明では、いくつかの規定を使用する。参照番号1**は、現実世界(物理世界)における物理オブジェクトを指す。参照番号2**は、データを指す。参照番号3**は、ハードウェア及びコンピュータ実施モジュールを指す。参照番号4**は、方法のステップを指す。
【0101】
機械学習(ML)が関係するため、ニューラルネットワークを訓練することが必要である(訓練段階)。以下の説明では、テスト段階における(即ち訓練が既に実行されているとき)ニューラルネットワークの動作を仮定する。しかしながら、説明では、最後に訓練の態様を簡単に説明する。
【0102】
便宜上、「ネットワークは計算する」又は「ネットワークは提供する」などの語句は、ネットワークを実施するコンピュータの動作を説明する短い記述である。
【0103】
説明では、例示のために簡略化された(X,Y)座標で表面位置を説明し、これも簡略化されたピクセル座標(x,y)によって画像及びマップ内の位置データを説明する。当業者は、座標を他のフォーマットで適用してもよい。
【0104】
システム概要
説明では、
図1~3を参照することにより概要を提供する。
【0105】
図1は、物理オブジェクト100(及びそれらの個々の表面ポイント)の特性を定量化するためのシステム300を示す。
図1は、左から右へ、表面110を有する物理オブジェクト100、(カメラ310によって表面110を撮影した)表面画像210、(表面画像210を特性マップ270へと処理するためのニューラルネットワーク370を有する)コンピュータ350、及び(オブジェクト100の)定量化された特性をユーザ190に提示し得る(任意選択の)ディスプレイ390を示す。
【0106】
いくつかの実施例では、損傷位置は、特性マップに基づいて識別されてもよく、好ましくは、損傷された位置における損傷を低減するためのポイント固有アクチュエータなどの処置デバイスを制御するために使用可能である制御ファイル395が、生成されてもよい。これは、以下で、特に
図9、
図14、及び
図15に示される例に関して、詳細に説明される。
【0107】
図2は、表面ポイント120、表面ピクセル220、及び特性ピクセル280をそれぞれ用いた、表面110から表面画像210へ、且つ特性マップ270への位置対応を示す。図面では、表面がそれによって仮想的に分割され得る複数の表面ポイントの例として表面ポイント120を示しており、図面では、特性ピクセルに同じ原理を適用している。
【0108】
図3は、例として特性ピクセル280を有する特性マップ270を示す。
図1は、左側に、表面110を有する物理オブジェクト100を示し、表面画像210を示す。
図1は、簡略化されたブロック図であるが、それはまた、物理オブジェクト100が圃場である第1のシナリオについての例を与える。
図1は、表面110が水平線として記号化された圃場の側面図を示す。
図1は、また、周囲の環境(例えば、特定の田畑と、より細い線のその近隣の田畑)を示す。表面110及び表面画像210は、
図2にも示されている。
【0109】
図1及び
図2の両方が、矢印「>」(ラベルC)で位置対応を示し、矢印「<」(ラベルM)で位置一致を示している。
【0110】
図2のように、位置対応(ここでは左から右へと示されている)によって、個々の特性ピクセル280のその位置データ(x,y)が、表面ポイント120の現実世界位置(X,Y)に(右から左へ)一致することが可能となる。表面ポイント120は、(現実世界)特性を有し、特性ピクセル280は、その特性についての推定を特性値として与える。
【実施例】
【0111】
実施例
例として、対象の田畑(即ち、オブジェクト100)の特性は、田畑の上で生育する植物101への損傷であるはずである。
図1において、表面110は、3つの植物101を有し、表面画像210には、3つの植物だけが示される。現実世界のシナリオでは、植物の数はもっと多い(潜在的には、田畑の上に数百の植物がある)。
【0112】
本出願の文脈で使用される「植物被害」という用語は、植物に有害な植物の正常な生理的機能からの任意の逸脱であり、a)菌類(「菌類の植物病害」)、b)細菌(「細菌の植物病害」)、c)ウイルス(「ウイルスの植物病害」)、d)昆虫食害、e)植物栄養欠乏症、f)高温ストレス、例えば30℃を超える温度条件、g)低温ストレス、例えば10℃未満の温度条件、h)乾燥ストレス、i)過度の日光への暴露、例えば変色の兆候、日焼け、若しくは同様の照射の兆候を生じさせる日光への暴露、j)pH5より低いpH値及び/若しくはpH9より高いpH値を有する土壌の酸性又はアルカリ性のpH条件、k)塩ストレス、例えば土壌塩分、又はl)破壊的な天候条件、例えば雹、霜、被害を与える風、によって引き起こされる植物病害(即ち、植物の正常な生理的機能からの逸脱)を含むがこれらに限定されない。
【0113】
概して、物理オブジェクト100の特性は、その表面110に影響を及ぼす。したがって、表面110の処理画像は、物理オブジェクト100の中に隠れていることがある特性を示し得る。トピックj)は、その一例である。土壌は、表面の一部ではないが、コンピュータは、表面画像を処理することによって損傷を定量化し得る。
【0114】
実施例では、カメラ310は、UAV340(又は「ドローン」)上に搭載されることによって示されている。UAV340は、カメラ310がカメラ画像を撮るように田畑の上を飛行する。破線は、(単一のカメラ画像に対応する)カメラ310の視界(FOV)を記号化している。UAV340は、カメラ310を保持するための他の配置のための便利な代替物である。
【0115】
補助プロセスにおいて、(カメラに関連付けられた)コンピュータ(図示せず)は、カメラ画像を表面画像210へ処理し得る。本明細書で使用されるように、カメラ310は、単一オブジェクトの単一の表面に対して単一の表面画像を撮る。このプロセスは、非常に簡略化されている。当業者が理解するように、カメラ310は、複数の画像を撮って、(いわゆるパノラマ写真を得るためなどの周知の技術を使用して)単一の表面画像210にそれらを結合し得る。或いは、カメラ310は、複数の表面を示すカメラ画像を撮って、(単一オブジェクトの単一表面をそれぞれ示す)表面画像にカメラ画像を分割し得る。当業者は、手法を組み合わせることができ、他の方法を進めることができる。
【0116】
カメラ310(及び/又はUAV340)は、(オブジェクトの地理的位置、タイムスタンプなどの)メタデータも収集し得る。
【0117】
UAVを使用して圃場の上にカメラを飛ばすことは、当技術分野において既知であるが、単に何らかのさらなる背景を読者に与えるために、以下の手法が便利であり得る。例えば、UAV340は、田畑の上を10~100メートルの高度で飛行し、そのカメラ310は、1280×960のピクセルセンサでカメラ画像をキャプチャする。UAV340は、(農場主が鋤を引くかのように)ジグザグパターンで飛行し、2又は3メートル毎にカメラ画像を撮る。UAV340は、地理的位置データ(高度、緯度、全地球測位システム又は他の衛星測位システムからのデータ)も記録するため、正確な距離は問題ではない。
【0118】
出願人は、いわゆる区画(plot)に分割されている大きな農業環境で実験を行った。区画は、約5×2メートルの長方形表面を有する田畑(即ち、オブジェクト100)である。隣接区画の間に約0.5メートルの区画間余白が存在した。このような手法は便利であるが、田畑には、目に見える余白などは必要ない。(そのような区画についての)表面画像210は、(W,H)=(330,80)ピクセルの例示的なピクセル寸法を有する。
【0119】
図3は、田畑上の異なる位置に対応する2つの個々の特性ピクセル280-1及び280-2を有する特性マップ270を示す。ピクセルは、特性値を有する。値V(x1,y1)は損傷0%を示し、値V(x2,y2)は損傷40%を示す。特性マップ270は、それが有するピクセルと同じ数(例えば、W×H)の値を有し得る。
【0120】
図3は、任意選択のヒートマップ270’及び270’’も(ディスプレイ390上に)示し、その中の特性値は、事前定義された表示色(又はグレースケール)に割り当てられる。色の選択は問題ではないが、天気予想マップのようなヒートマップを提供することが便利である。ヒートマップ270’の例では、比較的低い値0~20%には「青」、中程度の値21~60%には「緑」、比較的高い値61~100%には「赤」がある。「ヒートマップ」という用語は、比喩であり、温度を表示するものではない。
【0121】
コンピュータによる表面画像の処理
図1を参照すると、図面の中心部分に、物理オブジェクト100の特性を定量化するための(コンピュータ実施)方法を実行するコンピュータ350が示されている。第1のシナリオでは、これは、圃場内の植物被害を定量化するための方法である。
【0122】
当業者は、中央処理装置(CPU)を有し、且つ任意選択で1つ又は複数のグラフィック処理ユニット(GPU)を有する汎用コンピュータによりコンピュータ350を実施し得る。
【0123】
第1のステップの1つは、(コンピュータ350における)ニューラルネットワーク370の入力において表面画像210を受信することである。上述した位置対応を維持しながら、コンピュータ350は、次いで特性マップ270を提供する。
図1は、等しいサイズの長方形(例えば、等しいピクセル寸法(W,H))によって表面画像210及び特性マップ270を示すことにより、対応を記号化する。コンピュータの動作についての詳細は、
図4~
図8に関連して説明される。
【0124】
図面では、機能的用語でコンピュータ350を示すが、実施態様は変化してもよい。当業者は、異なる物理コンポーネントに機能を分散させてもよい。便利な実施例には、UAV340に設置されたコンピュータ、遠隔に設置されたコンピュータ(例えば、サービスとしてのソフトウェア、SaaS)、モバイルデバイスの不可欠な部分であるコンピュータなどが含まれる。
【0125】
コンピュータにより提供される特性マップ
図面の右側部分には、ニューラルネットワーク370が特性マップ270を提供すること、及びコンピュータ350が、任意選択で、特性マップ270をディスプレイ390に転送し得ることが示されている。
【0126】
ディスプレイ390は、田畑で作業する農場主であり得るユーザ190の手にあるモバイルデバイスのディスプレイであってもよい。ユーザ190は、オブジェクト特性を検査して、適当な(反対の)措置を識別し得る。ディスプレイ390による特性マップ270の(ヒートマップの形態での)可視化は必須ではないが、ユーザにとっては便利である。
【0127】
第1のシナリオの第1の例では、ユーザ190は、適当な量の殺菌剤を分散させることによって、措置を適用する。
【0128】
コンピュータは、物理オブジェクト100の個々の表面ポイントの粒度で物理オブジェクト100の特性を定量化するため、
図2は、個々の表面ポイント120を有する表面110を示し、特性ピクセル280を有する特性マップ270を示す。
【0129】
既に述べた通り、位置対応が存在する。(表面110)の個々の表面ポイント120の位置(X,Y)は、(表面画像210の中の)個々の表面ピクセル220の個々のピクセル位置データ(x,y)に対応する。コンピュータ350は、その位置対応を維持する。表面画像210の個々のピクセル位置データ(x,y)は、特性マップ270の個々の特性ピクセル280の個々のピクセル位置データ(x,y)に対応する。
【0130】
位置対応は、ピクセル寸法を維持することによって実施され得る。実施例では、表面画像210及び特性マップの両方が(W,H)=(300,200)ピクセルを有する。
特性値のモダリティ
コンピュータは、特性マップ270内の特性値V(x,y)を数値として提供して、実質的に各値ピクセルがピクセルに関連付けられている(ピクセル関連である)。数値V(x,y)は、特性ピクセルの単一チャネルにおいて利用可能である。
【0131】
特性値のモダリティに関して、特性値は実数(パーセンテージなど、
図3を参照)であってもよく、又は(特定の特性の存在若しくは不存在を示す)2値分類子であってもよい。
【0132】
第1のシナリオの第1の例を考えると、農場主は、ポイント毎に異なる理論で、損傷パーセンテージに応じて適当な量(例えば、殺菌剤の量)の化学製品を適用し得る。簡略化された手法では、コンピュータは、分類(生育/生育なし、損傷/損傷なし、など)を提供し、農場主は、殺菌剤の適用と非適用とを区別し得る。
【0133】
任意選択の表面関連値
任意選択では、コンピュータは、例えば、全ピクセルにわたるV(x,y)の平均を計算することによって、ピクセル関連特性値V(x,y)を表面関連値Vに集計し得る。そのような集計は、比較的少ない計算労力を必要とし、例えば、ディスプレイ390を制御するコンピュータによって実行可能である。
【0134】
平均計算は、また、ネットワーク370内のアグリゲータ(グローバル平均層、
図7を参照)によって実行可能である。コンピュータ250は訓練中にもアグリゲータを使用するため、相乗効果がある。
【0135】
当業者は、他の集計手法を適用してもよい。例えば、「損傷」分類における出力ピクセルの数が、事前定義された閾値(例えば、ピクセルの50%)を超える場合、コンピュータは、物理オブジェクト100を「損傷された」と分類し得る。
【0136】
機械学習の観点から見て、損傷推定は、予測である。
表面画像内のデータチャネル
図4は、データチャネルを有する表面画像210を示す。表面画像210は、幅W及び高さHで配置されたピクセルを有する。W×H個のピクセルがある。各ピクセルは、K個のチャネル(Z1、Z2、Z3、...、Zk、...ZK)を有するベクトルであるチャネルデータZ(x,y)を有する。チャネルの数は、「深さK」とも呼ばれ得る。図面では、別々の平面にチャネルZk(x,y)を示している。
【0137】
言い換えると、コンピュータ350は、チャネルデータZk(k=1~K)及び位置データ(x,y)を有する物理オブジェクト100についての現実世界データを有する表面画像210を受信する。
【0138】
カメラ310(及び/又はカメラに関連付けられたコンピュータ)は、適当な数のビットによってZkの値を符号化する。(R、G、B)カラー画像の場合、Z1は赤を、Z2は緑を、Z3は青を表し得る。
【0139】
不可視波長で光をキャプチャし(いわゆる、ハイパースペクトルカメラ)、そのような光についての画像データをさらなるチャネルに記憶するカメラを使用することが考えられる。そのような場合、Z=5チャネルが存在してもよく、Z4は赤外線の波長を表し、Z5は「レッドエッジ」を表す。
【0140】
他のカメラは、K=10チャネルを提供してもよく、又はK=271チャネルですら提供し得る。
【0141】
写真を撮るためのカメラは、フレームセンサ(若しくは「領域センサ」)又はラインセンサを有し得ることに留意されたい。
【0142】
フレームセンサカメラは、一度にカメラ画像を提供する。ラインセンサカメラは、表面の上で移動しているときに画像を提供する(UAVによる上記実施態様を参照)。ラインセンサカメラは、フラットベッドスキャナと同様に動作する。
【0143】
簡潔に
図1~
図3に戻ると、表面画像210は、カラー画像(R、G、B)であり、ヒートマップ270’も同様にカラー画像として表示され得る。
【0144】
(ニューラルネットワーク370による)畳み込みによって、表面画像210の複数ピクセルは、特性マップ270内の複数のピクセルをもたらす。例えば、表面画像内のいくつかのピクセルは、(「チェスボード」に類似した)黒-緑-黒-緑パターンを示し、ネットワーク370は、対応する表面ポイントを「損傷した」と分類し得る。ヒートマップは、次いで、表面110上の損傷した領域を「黒」として示す。
【0145】
チャネルの数Kは、ネットワーク370(
図1を参照)の入力層の、いわゆる深さに対応する。
【0146】
ネットワークの実施態様
図5は、ネットワーク層並びにその入力及び出力マップと共に説明を分離して示す。ネットワークは、層と呼ばれる処理モジュールによってデータを処理する。ネットワークを機械学習プラットフォーム(TensorFlowなど)上で、ニューラルネットワークに特化したコードライブラリ又はフレームワークを使用して実施することが便利である。そのようなライブラリの例は、コンピュータ言語PYTHON(登録商標)で書かれた、KERASである。
【0147】
例えば、いわゆる転置畳み込み層の動作を指定するために、当業者は、KERASでステートメント(例えば、「Conv2DTranspose(...)」)を書くことができる。ステートメントでは、丸括弧間のテキストは入力データ、出力データ、及び他のパラメータを示す。
【0148】
例示的なパラメータは、「kernel_size」、「strides」、「padding」、「activation」、「use_bias」などである。しかしながら、全てのパラメータを説明する必要はなく、KERASは、単なる実施態様の選択肢である。
【0149】
いくつかの修正層(即ち、畳み込み層)は、訓練によって取得された重みを有するフィルタとして動作し、KERAS又は他のフレームワークは、そのためのインフラストラクチャを提供する。
【0150】
図5は、長方形(幅W×高さH)により(特定の層Lay(n)のINPUT及び/又はOUTPUTである)データを示す。
図5の上の行は、複数のチャネルK(
図4を参照)についての複数の長方向によるデータも示しており、
図5の下の行は、簡略化されたW×H表記で同じデータを示している。
図5は、また、修正層を実線矢印によって示し、任意選択のバイパス層を破線矢印によって示すための規定を導入する。
【0151】
図5の修正層は、(中間)マップのピクセル寸法を変化しないままにするRELU動作であってもよく、又はピクセル寸法を修正するPOOL動作であってもよい。修正層は、また、選択されたパディングに応じて、ピクセル寸法を変更するか、又は維持し得る、畳み込み層CONVであってもよい。
【0152】
連結は、破線で示された任意選択のバイパス層の一態様である。バイパス層は、チャネル(例えば、入力のK個のチャネル)をコピーし、それらを修正層の出力の隣に置く。コピーされたチャネルは修正されない。隣の層(即ち、Lay(n+1)、図示せず)は次いで、特徴マップ(Map(n)、Lay(n)から)から、及び入力(Map(n-1))からのチャネルで中間マップを処理する。簡略化した例では、修正層Lay(n)によって、Map(n-1)と連結されているMap(n)のK=4チャネルへ処理されている、Map(n-1)のK=4のチャネルが存在する。バイパス層は、位置対応をサポートし得る。
【0153】
図6は、位置データ(x,y)を維持するプーリング層Lay(3)を示し、位置データを取り出すアップサンプリング層(Lay(4))を示す。データを維持することによって、位置対応/位置一致(
図1~
図2のC/Mの矢印を参照)がサポートされる。
【0154】
便宜上、
図6は、
図7のように基準Lay(3)及びLa(4)を使用するが、
図6は、そのような使用に限定されない。
【0155】
任意選択で、プーリング層「POOL」は、プーリングを提供する。最大プーリング(「max pooling」)の場合、層は、最大値(例えば、4ピクセルのうちの1ピクセル)を識別し、これをOUTPUTに引き継ぐ。プーリングは、ピクセル寸法を減少させる。例えば、4分の1プーリングは、幅をW/2に減少させ、高さをH/2に減少させる。
【0156】
実施例では、INPUTは、(x,y)位置(1,1)、(2,1)、(1,2)、及び(2,2)のそれぞれにおいてチャネル値「1」、「9」、「6」、及び「5」を有する。コンピュータが、最大値として「9」を位置(1,1)におけるOUTPUTに引継ぎ、最大値「9」がINPUTの座標の(2,1)に位置したという情報を維持する。
【0157】
例えば、(4ピクセルのうちの)平均値((1+9+6+5)/4)を取得するための、異なる手法が存在する。プーリングパラメータ2×2は、簡略化した例として採用されており、当業者は、任意の他のパラメータを適用し得る。さらなる例には、3×3、4×4、...、8×8などが含まれる。
【0158】
同様に、逆方向において、UP-SAMPLE層は、ピクセル寸法が(通常は2の倍数で)増加することによってアップサンプリングを提供する。同様に、ここでは例において位置(W,H)=(2,1)に、位置情報が維持される。
【0159】
図7は、ネットワーク370に対する簡略化された概要における互いに協調するネットワーク層を示す。
【0160】
CONV層は、いわゆるフィルタによって畳み込みを適用する。CONV層を動作させることによって、(W,H)は実質的に変化しないままとなる。訓練対象の重みが存在する。RELU層(rectified linear activation function:整流線形活性化関数)は、正のINPUTに対してOUTPUT=INPUT、そうでなければOUTPUT=0を与える。訓練対象の重みはない。
【0161】
グローバル平均プーリング(G_AVG)を用いたアグリゲータ375は、平均値(例えば、全ての(x,y)にわたるV(x,y)の平均)を計算する。
【0162】
簡略化した例として、
図7は、いくつかの層及びいくつかの中間画像のみを有するネットワーク370を示す。図面では、さらなる層を有する可能性のある実施態様を示すために、省略符号「...」を使用する。
【0163】
図7は、昇順インデックス(n)を用いた、左から右へのデータフローを示す。さらに、
図7は、第1のシナリオ(田畑の特性)についてのパラメータ(ピクセル、チャネル、フィルタの数など)を示す。説明は、修正層で始まる。
【0164】
ここでは(W,H,K)=(330,80,271)の例において、入力は、表面画像210(
図2を参照)を受信する。層Lay(1)は、CONV層及びRELU層である。実施例では、CONV層は、64のチャネルを生成する64のフィルタを適用する。
【0165】
Map(1)は、ピクセル寸法(W,H)=(330,80)を維持するが、K=64のチャネルを有する。
【0166】
層Lay(2)もまた、CONV層及びRELU層である。実施例では、CONV層は、128のさらなるチャネルを生成するフィルタを適用する。
【0167】
Map(2)は、ピクセル寸法(W,H)=(330,80)を維持するが、K=271+64+128のチャネルを有する。
【0168】
層Lay(3)は、ピクセル寸法を減少させるPOOL層(例えば、最大プーリング)である。上述した適合を考えると、層は、位置データを維持する(
図6を参照)。
【0169】
Map(3)は、減少したピクセル寸法を有する。それは、(
図6において説明したように)最大チャネル値を有するピクセルを含み、位置データを維持する。
【0170】
層Lay(4)は、アップサンプリングを提供し、位置情報を取り出す。
Map(4)は、最後の中間マップのうちの1つである。
【0171】
層Lay(5)は、特性マップ270(
図2を参照)である特性マップ270(又はMap(5))につながる、さらなるCONV/RELU層である。
【0172】
アグリゲータ375(ここではG_AVG)は、表面関連値を提供する。
より高い検索精度のための実施態様
図7は、第1のバイパス層をLay(1)と並列に示す。Map(2)は、(CONVフィルタからの)64のチャネル及び(表面画像からの)271のチャネルを含む。Lay(1)からLay(4)に並列な第2のバイパス層は、元のデータも転送し得る。
訓練
ニューラルネットワーク(又は、一般に機械学習ツール)の使用は、訓練(及び検証)を必要とする。非常に簡略化して、訓練中のネットワークは、(入力において)訓練データのセットを受信し、既知の値に対応するデータのセットを(出力において)計算するまで、繰り返し(
図5~6について説明したように)内部重みを更新する。
【0173】
計算された出力と既知の(又は予期した)出力との間の偏差は、最小になるはずである。当業者は、いわゆる損失関数によって偏差を処理し、損失関数が特定の挙動を示す(例えば、0に近づいている)と、繰り返しを停止する。
【0174】
図8は、ネットワーク370についての訓練プロセスを示す。プロセスは、2つの段階、(第1の)訓練セットを提供することと、(第2の)訓練セットをネットワークに適用することと、を有する。
【0175】
第1の段階において、人間の専門家195は、表面画像215-1~215-Mにそれぞれ、訓練値V_train_1~V_train_Mを注釈付けする(インデックスmは1~M)。説明の便宜上、表面画像215は、表面画像210(
図1~
図2を参照)と実質的に同一のピクセル寸法を有すると仮定する。しかしながら、これは必須ではない。
【0176】
表面画像215-1~215-Mの数及び対応する注釈の数は、Mである。例えば、M=1,000である。したがって、訓練セット295は、前もって注釈が付けられた訓練値を有する表面画像を含む。
【0177】
訓練値のモダリティは、(後で予測される)特性値のモダリティに適合する。実数(パーセンテージなど、
図3を参照)で訓練することは、実数である特性値につながり、(特定の特性の存在又は不存在を示す)2値分類子で訓練することは、バイナリ値である特性値につながる。
【0178】
訓練値の粒度は、表面関連値の粒度である。通常、既知の訓練値は、グランドトゥルース(即ち、経験的実証)に対応する。訓練についてのグランドトゥルース品質で、ポイント関連値が利用可能ではない(専門家ユーザ195がその粒度でポイント関連値を有しない)ため、したがって、訓練は、表面全体に適用可能な値で実行される。
【0179】
専門家ユーザ195が現実世界の特定の表面(例えば、田畑のポイント)を検査できないということが起こり得る。しかしながら、ユーザ195は、画像215-1~215-Mを見ることができる。
【0180】
異なる視点から見ると、それは、ピクセル毎に特性値を区別するが、注釈が全く「密」ではないため、ニューラルネットワーク370の出力(即ち、特性マップ270)は、「密」である。説明したように、注釈V_train_1~V_train_Mは、画像全体に適用可能である。
【0181】
第1のシナリオを考えると、専門家ユーザ195は、損傷パーセンテージ(即ち、田畑の損傷を表す実数)である訓練値を注釈付けする。実施例では、専門家ユーザ195は、0%(専門家ユーザ195が損傷を全く見ていない)~100%(専門家ユーザ195が完全に損傷した田畑から元への表面画像を理解する)の粒度でパーセンテージを割り当てる。5%のステップ間隔が好都合である。専門家ユーザ195は、損傷が発生するオブジェクト表面の中の領域を識別する必要はない。
【0182】
専門家ユーザ195は、フィールド生物学者の専門性を有する。専門家ユーザ195は、異なる人によって実行され得る役割として理解される。フィールド生物学者は、必ずしも農場主ユーザ(
図1のユーザ190)ではない。人間の専門家は、実験を行っていてもよく、それによって既知の損傷データを有する田畑の写真が撮られている。
【0183】
第1の変形態様では、注釈はクラス(例えば、損傷(DAMAGE)/損傷なし(NO-DAMAGE))であってもよく、出力も同様にクラスである。
【0184】
第2の変形態様では、注釈は、小(SMALL)/中(MEDIUM)/大(HEAVY)などの損傷範囲に対応する数値である。
【0185】
(以下に示される)第2の段階では、もはや専門家ユーザを必要としない。
表面画像215-1~215-Mは、(画像210によって記号化された)ネットワーク370の入力に(シーケンスで)供給され、訓練値(V_train_1~V_train_M)は、アグリゲータ375の出力において損失関数ブロックLFに供給される。簡略化のため、図面では、LFから層へのフィードバック接続などの周知のコンポーネントを省略する。
【0186】
M個の表面画像215全てを用いて訓練する間、ネットワーク370は、重みを適合して表面画像215-1~215-MについてのV1~VMを計算し、損失関数を適用して(注釈と比較した)誤差を計算する。
【0187】
関数は、特性値の定義に関連する。回帰の場合(特性値は実数である)、損失関数は、MAE(mean absolute error:平均絶対誤差)、MSE(mean square error:平均二乗誤差)、LogCosh(log hyperbolic cosine:対数ハイパボリックコサイン)のうちの1つである。2値分類子の場合、損失関数は、2値交差エントロピー、ヒンジ損失、2乗ヒンジ損失のうちの1つである。多クラス分類の場合、損失関数は、多クラス交差エントロピー損失、スパース多クラス交差エントロピー損失、又はカルバック・ライブラー情報量損失のうちの1つである。
【0188】
(他の重みを用いた)繰り返しで、ネットワーク370は、損失が最小になる重みを選択する。(ネットワーク370は、実数であるV(x,y)又は2値カテゴリ若しくは多クラスカテゴリで与えられたV(x,y)を用いた分類を予測するため、予測は回帰である)。
【0189】
言い換えると、ネットワーク370は、表面画像を受信し、専門家の注釈付き特性値V_trainを有する訓練表面画像215である、複数の注釈付き訓練画像215で前もって訓練されているニューラルネットワークであることにより(上述の通り)特性値を導出する。訓練表面画像215は、少なくとも1つの畳み込み層(
図7のLay(1)など)の入力に通信可能に結合されており、専門家の注釈付き特性値V_trainは、特性マップ270のマップピクセルのグローバル平均を計算したグローバル平均モジュール(
図7~
図8のG_AVGなど)に通信可能に結合されている。
【0190】
Ronneberger
当業者は、本明細書の記載に基づいて、Ronnebergerらによって説明されたU-Netなどの既知のネットワークを修正することによって、ニューラルネットワーク370を実施することが可能である。修正は、主に、プーリング及びアップサンプリング層における位置維持を実施することに関する。
【0191】
Ronnebergerらは572×572×1の画像を受信する入力層を使用するが、ネットワーク370は、異なる寸法(W×H×K)、例えば330×80×271の表面画像を受信する修正された入力層を使用する。上述の通り、チャネルの数Kは、比較的高くてもよく(K=271など)、ニューラルネットワーク370は、単にさらなる畳み込みへの入力をスケールする。全てのチャネルに関連データを含まれるわけではなく、それによって、特に不可視スペクトルのチャネルの場合、フィルタ重みが実質的に0になり得る。
【0192】
他のシナリオ
他のシナリオ(第2のシナリオなど)に関して、当業者は、必要であれば、UAVを異なるデバイスで容易に置換し得る。工業環境では、カメラは、橋型クレーンなどの上のトロリーに搭載され得る。そのようなカメラは、水平に配置された物理オブジェクトの画像を撮り得る。工業設定は、オブジェクトに正確に焦点を合わせたカメラの設置を可能にする。潜在的には、事前処理された画像(画像をカットすること、オーバラップを除去することなど)は、そのようなシナリオにおいて必須でなくてもよい。
【0193】
特性の使用
図9は、システム300(
図1を参照)から取得された特性値V(x,y)に従って物理オブジェクト110に作用するオブジェクト修正器610を示す。
【0194】
図9は、
図2から表面110、表面画像210、及び特性マップ270を引用している。
【0195】
左側に示されるように、オブジェクト修正器610は、物理オブジェクトの定量化された特性を入力情報として使用する。実施例では、修正器610は、システム300(
図1を参照)から特性値V(x,y)を受信する。特性値は、上述した一致(M)により、ポイント固有である。修正器610は、表面110のポイント固有位置に作用するポイント固有アクチュエータ620の動作をトリガする。
【0196】
第1のシナリオについての実施例を与えると、植物は、位置(X,Y)を有するポイントにおいて菌類により損傷されている。アクチュエータ620は、その位置に殺菌剤を適用する機械であってもよい。他の設定では、アクチュエータ620は、特定の位置から雑草を除去し、化学化合物を噴霧するなどを行う。
【0197】
第2のシナリオについての実施例を与えると、マットは、特定のポイントにおいて汚れている場合があり、したがって、アクチュエータ620(洗浄デバイスである)は、単に汚れた部分を洗浄する。
【0198】
アクチュエータ620の動作は、単一の特定のポイントに限定されず、そのオペレータは、特性マップから導出されたポイント固有の強度で、オブジェクトの実質的に全てのポイントに措置を適用し得る。
方法
図10は、物理オブジェクト100の特性を物理オブジェクト100の個々の表面ポイント120の粒度で定量化するためのコンピュータ実施方法400のフローチャートを示す。
【0199】
受信するステップ410において、コンピュータは、チャネルデータZk及び位置データ(x,y)を有する物理オブジェクト100についての現実世界データを有する表面画像210を受信し、表面画像210内のピクセルの位置データ(x,y)は、物理オブジェクト100の中の表面ポイント120の位置(X,Y)と一致する。
【0200】
導出するステップ420において、コンピュータは、ニューラルネットワーク370を動作させることによって、ポイント関連値である特性値V(X,Y)を導出し、ニューラルネットワーク370は、少なくとも1つの畳み込み層Lay(1)の出力において少なくとも1つの特徴マップMap(1)を提供し、少なくとも1つの特徴マップは、表面画像のピクセル寸法(W,H)に対応するピクセル寸法(W,H)を有する特性マップ270である。
【0201】
ニューラルネットワーク370は、専門家の注釈付き特性値V_trainを有する訓練表面画像215である、複数の注釈付き訓練画像215で前もって訓練されており、訓練表面画像210は、少なくとも1つの畳み込み層Lay(1)の入力に通信可能に結合されており、専門家の注釈付き特性値V_trainは、特性マップ270のマップピクセルのグローバル平均を計算したグローバル平均モジュールG_AVGに通信可能に結合されている。
【0202】
コンピュータシステム
図11は、汎用コンピュータデバイス900及び汎用モバイルコンピュータデバイス950の例を示し、それらは、本明細書に記載された技術で使用され得る。コンピューティングデバイス900は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、及び他の適当なコンピュータなどの様々な形態のデジタルコンピュータを表すように意図される。汎用コンピュータデバイス900は、
図1~
図2のコンピュータ201/202に対応し得る。コンピューティングデバイス950は、携帯情報端末、携帯電話、スマートフォン、及び他の類似のコンピューティングデバイスなどの様々な形態のモバイルデバイスを表すように意図される。例えば、コンピューティングデバイス950は、
図1に示されるデバイスのデータ記憶コンポーネント及び/又は処理コンポーネントを含み得る。ここに示されるコンポーネント、それらの接続及び関係、並びにそれらの機能は、単なる例示であることを意味するものであり、本文書において説明及び/又は特許請求される発明の実施態様を限定することを意味するものではない。
【0203】
コンピューティングデバイス900は、プロセッサ902、メモリ904、記憶デバイス906、メモリ904及び高速拡張ポート910に接続する高速インターフェース908、並びに低速バス914及び記憶デバイス906に接続する低速インターフェース912を含む。コンポーネント902、904、906、908、910、及び912のそれぞれが、様々なバスを用いて相互接続されており、共通のマザーボード上に、又は必要に応じて他の方式で搭載されてもよい。プロセッサ902は、メモリ904に、又は記憶デバイス906上に記憶された命令を含むコンピューティングデバイス900の中の実行用命令を処理して、高速インターフェース908に結合されたディスプレイ916などの外部入力/出力デバイス上にGUIのためのグラフィカル情報を表示し得る。他の実施態様において、複数のプロセッサ及び/又は複数のバスは、複数のメモリ及び複数種類のメモリと共に、必要に応じて使用され得る。さらに、複数のコンピューティングデバイス900は、(例えば、サーババンク、ブレードサーバのグループ、又はマルチプロセッサシステムとして)必要な動作の部分を提供する各デバイスに接続され得る。
【0204】
メモリ904は、コンピューティングデバイス900の中に情報を記憶する。一実施態様では、メモリ904は、1つ又は複数の揮発性メモリユニットである。別の実施態様では、メモリ904は、1つ又は複数の不揮発性メモリユニットである。メモリ904は、また、磁気又は光ディスクなどの別の形態のコンピュータ可読媒体であってもよい。
【0205】
記憶デバイス906は、コンピューティングデバイス900のための大規模ストレージを提供することが可能である。一実施態様において、記憶デバイス906は、フロッピー(登録商標)ディスクデバイス、ハードディスクデバイス、光ディスクデバイス、若しくはテープデバイス、フラッシュメモリ若しくは他の類似のソリッドステートメモリデバイス、又はデバイスのアレイなどのコンピュータ可読媒体であってもよく、又はコンピュータ可読媒体を含んでもよく、ストレージエリアネットワーク又は他の構成にデバイスを含む。コンピュータプログラム製品は、情報担体において有形に具現化され得る。コンピュータプログラム製品は、また、実行すると、上述した方法などの1つ又は複数の方法を実行する命令を含み得る。情報担体は、メモリ904、記憶デバイス906、又はプロセッサ902上のメモリなどのコンピュータ可読媒体又は機械可読媒体である。
【0206】
高速コントローラ908は、コンピューティングデバイス900のための帯域幅集約型動作を管理し、低速コントローラ912は、より低い帯域幅集約型動作を管理する。機能のそのような割り当ては、単なる例示である。一実施態様では、高速コントローラ908は、メモリ904、(例えば、グラフィックプロセッサ又はアクセラレータを通した)ディスプレイ916、及び高速拡張ポート910に結合され、それらは、様々な拡張カード(図示せず)を受け入れ得る。実施態様において、低速コントローラ912は、記憶デバイス906及び低速拡張ポート914に結合される。低速拡張ポートは、様々な通信ポート(例えば、USB、Bluetooth(登録商標)、イーサネット(登録商標)、無線イーサネット(登録商標))を含んでもよく、キーボード、ポインティングデバイス、スキャナ、又はスイッチ若しくはルータなどのネットワーキングデバイスといった1つ又は複数の入力/出力デバイスに、例えば、ネットワークアダプタを通して結合され得る。
【0207】
コンピューティングデバイス900は、図面に示されるいくつかの異なる形態で実施され得る。例えば、それは、標準サーバ920として又はそのようなサーバのグループ内で複数回、実施されてもよい。それは、また、ラックサーバシステム924の一部として実施されてもよい。加えて、それは、ラップトップコンピュータ922などのパーソナルコンピュータにおいて実施されてもよい。代替として、コンピューティングデバイス900からのコンポーネントは、デバイス950などのモバイルデバイス(図示せず)内の他のコンポーネントと組み合わされてもよい。そのようなデバイスのそれぞれが、コンピューティングデバイス900、950の1つ又は複数を含んでもよく、システム全体が、互いに通信する複数のコンピューティングデバイス900、950から構成されてもよい。
【0208】
コンピューティングデバイス950は、他のコンポーネントの中でも、プロセッサ952、メモリ964、ディスプレイ954などの入力/出力デバイス、通信インターフェース966、及び送受信機968を含む。デバイス950には、また、追加のストレージを提供するためにマイクロドライブ又は他のデバイスなどの記憶デバイスが設けられてもよい。コンポーネント950、952、964、954、966、及び968のそれぞれが、様々なバスを用いて相互接続されており、コンポーネントのうちのいくつかが、共通のマザーボード上に、又は必要に応じて他の方式で搭載されてもよい。
【0209】
プロセッサ952は、メモリ964に記憶された命令を含む、コンピューティングデバイス950の中の命令を実行し得る。プロセッサは、別個の且つ複数のアナログ及びデジタルプロセッサを含むチップのチップセットとして実施され得る。プロセッサは、例えば、ユーザインターフェースの制御などのデバイス950の他のコンポーネントの協調のために、デバイス950によるアプリケーション実行及びデバイス950による無線通信を提供し得る。
【0210】
プロセッサ952は、ディスプレイ954に結合された制御インターフェース958及びディスプレイインターフェース956を通してユーザと通信し得る。ディスプレイ954は、例えば、TFT LCD(Thin-Film-Transistor Liquid Crystal Display:薄膜トランジスタ液晶ディスプレイ)若しくはOLED(Organic Light Emitting Diode:有機発光ダイオード)ディスプレイ、又は他の適当なディスプレイ技術であってもよい。ディスプレイインターフェース956は、ディスプレイ954を駆動してグラフィカル及び他の情報をユーザに提示するための適当な回路を含み得る。制御インターフェース958は、ユーザからコマンドを受信し、それらをプロセッサ952への投入のために変換し得る。加えて、外部インターフェース962は、デバイス950の他のデバイスとの近距離通信を可能にするように、プロセッサ952との通信関係を提供し得る。外部インターフェース962は、例えば、いくつかの実施態様における有線通信、又は他の実施態様における無線通信を提供してもよく、複数のインターフェースも使用されてもよい。
【0211】
メモリ964は、コンピューティングデバイス950の中に情報を記憶する。メモリ964は、1つ若しくは複数のコンピュータ可読媒体、1つ若しくは複数の揮発性メモリユニット、又は1つ若しくは複数の不揮発性メモリユニットのうちの1つ又は複数として実施され得る。拡張メモリ984も提供されてもよく、拡張インターフェース982を通してデバイス950に接続されてもよく、拡張インターフェース982は、例えば、SIMM(Single In Line Memory Module:シングルインラインメモリモジュール)カードインターフェースを含んでもよい。そのような拡張メモリ984は、デバイス950のための余分な記憶空間を提供してもよく、又はデバイス950のためのアプリケーション若しくは他の情報を記憶してもよい。具体的には、拡張メモリ984は、上述したプロセスを実行又は補助するための命令を含んでもよく、セキュア情報も含んでもよい。したがって、例えば、拡張メモリ984は、デバイス950のためのセキュリティモジュールとして機能してもよく、デバイス950のセキュアな使用を可能にする命令でプログラムされてもよい。加えて、セキュアなアプリケーションが、SIMMカード上にハッキングできない方式で識別情報を置くなど、追加の情報と共にSIMMカードによって提供されてもよい。
【0212】
メモリは、後述するように、例えばフラッシュメモリ及び/又はNVRAMメモリを含んでもよい。一実施態様では、コンピュータプログラム製品は、情報担体において有形に具現化される。コンピュータプログラム製品は、実行すると、上述した方法などの1つ又は複数の方法を実行する命令を含む。情報担体は、例えば、送受信機968又は外部インターフェース962を経て受信され得る、メモリ964、拡張メモリ984、又はプロセッサ952上のメモリなどのコンピュータ可読媒体又は機械可読媒体である。
【0213】
デバイス950は、通信インターフェース966を通して無線で通信してもよく、通信インターフェース966は、必要であればデジタル信号処理回路を含んでもよい。通信インターフェース966は、中でも、GSM(登録商標)音声通話、SMS、EMS、又はMMSメッセージング、CDMA、TDMA、PDC、WCDMA(登録商標)、CDMA2000、又はGPRSなどの様々なモード又はプロトコルの下で通信を提供し得る。そのような通信は、例えば、無線周波数送受信機968を通して発生し得る。加えて、短距離通信が、Bluetooth(登録商標)、WiFi、又は他のそのような送受信機(図示せず)などを使用して生じ得る。加えて、GPS(Global Positioning System:全地球測位システム)受信機モジュール980は、追加のナビゲーション関連及び位置関連無線データをデバイス950に提供してもよく、それらのデータは、デバイス950上で実行するアプリケーションによって必要に応じて使用され得る。
【0214】
デバイス950は、また、音声コーデック960を使用して聴覚的に通信してもよく、音声コーデック960は、ユーザから口頭での情報を受信し、それを使用可能なデジタル情報に変換してもよい。音声コーデック960は、同様に、例えばデバイス950のハンドセットで、スピーカを通すなどしてユーザに対して可聴音を生成し得る。そのような音は、音声電話通話からの音を含んでもよく、記録された音(例えば、音声メッセージ、音楽ファイルなど)を含んでもよく、デバイス950上で動作するアプリケーションによって生成された音も含んでもよい。
【0215】
コンピューティングデバイス950は、図面に示されるいくつかの異なる形態で実施され得る。例えば、それは、携帯電話980として実施されてもよい。それはまた、スマートフォン982、携帯情報端末、又は他の類似のモバイルデバイスの一部として実施されてもよい。
【0216】
ここで説明されるシステム及び技術の様々な実施態様は、デジタル電子回路、集積回路、特別に設計されたASIC(application specific integrated circuit:特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はそれらの組み合わせで実現され得る。これらの様々な実施態様は、少なくとも1つのプログラマブルプロセッサを含む、プログラマブルシステム上で実行可能及び/又は解釈可能である1つ又は複数のコンピュータプログラムにおける実施態様を含んでもよく、少なくとも1つのプログラマブルプロセッサは、専用又は汎用であってもよく、記憶システム、少なくとも1つの入力デバイス、及び少なくとも1つの出力デバイスからデータ及び命令を受信し、且つそれらへデータ及び命令を送信するように結合されてもよい。
【0217】
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、又はコードとも呼ばれる)は、プログラマブルプロセッサのための機械命令を含み、高レベル手続き型プログラミング言語及び/若しくはオブジェクト指向プログラミング言語で、並びに/又はアセンブリ言語/機械言語で実装され得る。本明細書で使用される「機械可読媒体」及び「コンピュータ可読媒体」という用語は、機械命令及び/又はデータをプログラマブルプロセッサに提供するために使用される、任意のコンピュータプログラム製品、装置、及び/又はデバイス(例えば、磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス(PLD))を指し、機械命令を機械可読信号として受信する機械可読媒体を含む。「機械可読信号」という用語は、機械命令及び/又はデータをプログラマブルプロセッサに提供するために使用される任意の信号を指す。
【0218】
ユーザとの相互作用をもたらすために、本明細書に記載されるシステム及び技術は、情報をユーザに表示するためのディスプレイデバイス(例えば、CRT(cathode ray tube:陰極線管)又はLCD(liquid crystal display:液晶ディスプレイ)モニタ)並びにユーザが入力をコンピュータに提供し得るキーボード及びポインティングデバイス(例えば、マウス又はトラックボール)を有するコンピュータ上で実施され得る。他の種類のデバイスも、ユーザとの相互作用をもたらすために使用され得る。例えば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック(例えば、視覚フィードバック、聴覚フィードバック、又は触覚フィードバック)であってもよく、ユーザからの入力は、音響、発話、又は触覚入力を含む任意の形態で受信されてもよい。
【0219】
本明細書に記載されたシステム及び技術は、(例えば、データサーバとして)バックエンドコンポーネントを含む、又はミドルウェアコンポーネント(例えば、アプリケーションサーバ)を含む、又はフロントエンドコンポーネント(例えば、ユーザが本明細書に記載されたシステム及び技術の実施態様と相互作用し得るグラフィカルユーザインターフェース若しくはウェブブラウザを有するクライアントコンピュータ)を含む、又はそのようなバックエンド、ミドルウェア、若しくはフロントエンドコンポーネントの任意の組み合わせを含む、コンピューティングデバイスにおいて実施され得る。システムのコンポーネントは、デジタルデータ通信(例えば、通信ネットワーク)の任意の形態又は媒体によって相互接続され得る。通信ネットワークの実施例は、ローカルエリアネットワーク(「LAN」)、ワイドエリアネットワーク(「WAN」)、及びインターネットを含む。
【0220】
コンピューティングデバイスは、クライアント及びサーバを含み得る。クライアント及びサーバは、概して互いに遠隔であり、典型的には通信ネットワークを通して相互作用する。クライアント及びサーバの関係は、それぞれのコンピュータ上で実行し、且つ互いにクライアントサーバ関係を有する、コンピュータプログラムによって生じる。
【0221】
図12は、圃場の特性を定量化するための例示的システム200を示す。システム200は、データ管理システム20、田畑管理システム30、電子通信デバイス40、ネットワーク50、及び処置デバイス60を含む。この実施例では、装置10は、田畑管理システム30として、又は田畑管理システム30において具現化され、例えば、ソフトウェアとして田畑管理システム30内に存在する。さらに、装置10は、物理オブジェクトの損傷状態を判定するために使用可能な訓練済みニューラルネットワークを生成するように構成される。
【0222】
図示された実施例のデータ管理システム20は、データベース、アプリケーション、ローカルファイル、又はそれらの任意の組み合わせを記憶し得る。データ管理システム20は、1つ又は複数のデータソースから取得されたデータを含み得る。いくつかの実施例では、データ管理システム20は、ユーザデバイスから取得されたデータを含んでもよく、ユーザデバイスは、コンピュータ、スマートフォン、タブレット、スマートウォッチ、モニタ、データ記憶デバイス、又は任意の他のデバイスであってもよく、それによって、人間及びロボットを含むユーザが、データ管理システム20にデータを入力又は転送し得る。いくつかの実施例では、データ管理システム20は、1つ又は複数のセンサから取得されたデータを含み得る。「センサ」という用語は、現実世界情報を検出又は受信すること、及びこの現実世界情報を別のシステムに送信することが可能な任意の種類の物理的又は仮想的なデバイス、モジュール又は機械であると理解され、温度センサ、湿度センサ、水分センサ、pHセンサ、圧力センサ、土壌センサ、作物センサ、水センサ、カメラ、又はそれらの任意の組み合わせを含み得る。いくつかの実施例では、データ管理システム20は、1つ又は複数のデータベースを記憶してもよく、データベースは、任意の整理されたデータの集合であってもよく、コンピュータシステムから電子的に記憶及びアクセス可能であり、データが、そこからデータ管理システム20に入力又は転送され得る。いくつかの実施例では、データ管理システム20は、1つ又は複数の圃場100に関する情報を含み得る。例えば、データ管理システム20は、異なる圃場の田畑データを含み得る。田畑データは、異なる農業エリアのジオリファレンスされたデータ及び関連する処置マップを含み得る。田畑データは、田畑に存在する作物(例えば、作物IDで示される)、作物輪作、田畑の位置、田畑に対する以前の処置、播種期などの情報の1つ又は複数に関する情報を含み得る。
【0223】
図示された実施例の田畑管理システム30は、例えば電子通信デバイス40に、ウェブサービスを提供するサーバであってもよい。田畑管理システム30は、抽出されるべきデータ管理システム20内のデータを識別し、データ管理システム20からデータを検索し、検索されたデータを装置10に提供するように構成されたデータ抽出モジュール(図示せず)を含み得る。装置10は、本明細書に記載された方法に従って、抽出されたデータを処理する。装置10の処理されたデータ及び最終出力は、(例えば、データ管理システム20内の)出力データベースにおいて及び/又は(例えば、処置デバイス60を制御するための)制御ファイルとして、ユーザ出力デバイス(例えば、電子通信デバイス40)に提供されてもよい。「ユーザ出力デバイス」という用語は、コンピュータ、スマートフォン、タブレット、スマートウォッチ、モニタ、データ記憶デバイス、又は任意の他のデバイスであると理解され、それによって、人間及びロボットを含むユーザが、電子通信デバイス40などの田畑管理システムからデータを受信し得る。「出力データベース」という用語は、任意の整理されたデータの集合であると理解され、コンピュータシステムから電子的に記憶及びアクセス可能であり、田畑管理システム30から出力又は転送されたデータを受信可能である。例えば、出力データベースは、データ管理システム20に提供され得る。「制御ファイル」という用語は、構成ファイルとも呼ばれ、機械又はデバイス、例えば処置デバイス60を制御することに役立つ、任意のバイナリファイル、データ、信号、識別子、コード、画像、又は任意の他の機械可読要素若しくは機械検出可能要素であると理解される。いくつかの実施例では、装置10は、適用スキームを提供してもよく、適用スキームは、電子通信デバイス40に提供されて、農場主が適用スキームに従って処置デバイス60を構成することを可能にし得る。いくつかの実施例では、装置10は、構成プロファイルを提供してもよく、構成プロファイルは、処置デバイス60にロードされて、判定された適用タイミングに従って作物防疫製品を散布するように処置デバイス60を構成してもよい。
【0224】
図示された実施例の電子通信デバイス40は、デスクトップ、ノートブック、ラップトップ、携帯電話、スマートフォン、及び/又はPDAであってもよい。電子通信デバイス40は、田畑管理システム30によって提供されるウェブサービスとインターフェースするように構成されたアプリケーションを含み得る。アプリケーションは、ユーザが田畑管理システム30によってデータ管理システム20から抽出されたデータを操作し、個別のデータに対して実行されるべきアクションを選択及び指定することを可能にする、ソフトウェアアプリケーションであってもよい。例えば、アプリケーションは、デスクトップアプリケーション、モバイルアプリケーション、又はウェブベースアプリケーションであってもよい。アプリケーションは、GUI、キャラクターユーザインターフェース、及びタッチスクリーンインターフェースを含むが、これらに限定されない、対話型インターフェースなどのユーザインターフェースを含んでもよい。ソフトウェアアプリケーションを介して、ユーザは、処置デバイス60を構成するために使用可能な適用スキーム及び/又は構成ファイルを取得するために、例えばユーザ名及びパスワード認証を使用して、田畑管理システム30にアクセスしてもよい。適用スキーム及び/又は構成ファイルは、例えば1つ又は複数の作物防疫製品IDを有する、適用量マップを含み得る。
【0225】
図示された実施例の処置デバイス60は、損傷を低減するための措置を実行するように構成されている任意のデバイスを含み得る。圃場の場合、処置デバイスは、圃場上に作物防疫製品を適用してもよい。適用デバイスは、圃場を横断するように構成されてもよい。適用デバイスは、地上又は空中の乗り物、例えば、トラクタ搭載車両、自走式噴霧機、軌条車両、ロボット、航空機、無人航空機(UAV)、ドローンなどであってもよい。
図12の実施例では、処置デバイス60は、UAVであってもよい。処置デバイス60は、接続性システム(図示せず)を含み得る。接続性システムは、UAVをコンピューティング環境に通信可能に結合するように構成され得る。例えば、UAVは、田畑管理システム30又は電子通信デバイス40から構成ファイルを受信し、構成ファイルにおいて指定された適用量マップに従って、作物防疫製品を適用し得る。
【0226】
図示された実施例のネットワーク50は、データ管理システム20、田畑管理システム30、電子通信デバイス130、及び処置デバイス60を通信可能に結合する。いくつかの実施例では、ネットワーク50は、インターネットであってもよい。代替として、ネットワーク50は、任意の他の種類の、且つ任意の他の数のネットワークであってもよい。例えば、ネットワーク50は、ワイドエリアネットワークに接続されたいくつかのローカルエリアネットワークによって実施されてもよい。例えば、データ管理システム20は、第1のローカルエリアネットワークに関連付けられてもよく、田畑管理システム30は、第2のローカルエリアネットワークに関連付けられてもよく、電子通信デバイス40は、第3のローカルエリアネットワークに関連付けられてもよい。第1、第2、及び第3のローカルエリアネットワークは、ワイドエリアネットワークに接続されてもよい。当然ながら、任意の他の構成及びトポロジが、有線ネットワーク、無線ネットワーク、ワイドエリアネットワーク、ローカルエリアネットワークなどの任意の組み合わせを含む、ネットワーク50を実施するために利用されてもよい。
【0227】
図8に示されるネットワークのための訓練プロセスは、
図12に示されるシステムに関して以下で説明される。プロセスは、2つの段階、(第1の)訓練セットを提供することと、(第2の)訓練セットをネットワークに適用することと、を有する。
【0228】
第1の段階において、人間の専門家195は、電子通信デバイス40を使用して、表面画像215-1~215-Mにそれぞれ、訓練値V_train_1~V_train_Mを注釈付けし得る(インデックスmは1~M)。表面画像215-1~215-Mは、データ管理システム20から、又はUAV60から取得され得る。専門家ユーザ195は、損傷パーセンテージ(即ち、田畑の損傷を表す実数)である訓練値を注釈付けする。実施例では、専門家ユーザ195は、0%(専門家ユーザ195が損傷を全く見ていない)~100%(専門家ユーザ195が完全に損傷した田畑から元への表面画像を理解する)の粒度でパーセンテージを割り当てる。5%のステップ間隔が好都合である。専門家ユーザ195は、損傷が発生するオブジェクト表面の中の領域を識別する必要はない。
【0229】
ソフトウェアアプリケーションのUIを介して、人間の専門家195は、装置10においてニューラルネットワークを訓練するために、注釈付けされた訓練データを田畑管理システム30に提供し得る。いくつかの実施例では、注釈付きデータは、データ管理システム内の訓練データベースに提供され得る。装置10は、次いで、データ管理システム20に記憶された訓練データセットから訓練データを検索し得る。
【0230】
ソフトウェアアプリケーションの例示的なUIが、
図13に示されている。人間の専門家195は、画像名を「画像名」フィールドに、注釈付き訓練値を「画像のグローバル欠陥値」フィールドに入力し得る。上述したように、画像のグローバル欠陥値は、損傷パーセンテージ(即ち、田畑の損傷を表す実数)であってもよい。実施例では、専門家ユーザ195は、0%(専門家ユーザ195が損傷を全く見ていない)~100%(専門家ユーザ195が完全に損傷した田畑から元への表面画像を理解する)の粒度でパーセンテージを割り当てる。5%のステップ間隔が好都合である。
【0231】
第2の段階では、もはや専門家ユーザ195を必要としない。訓練データが準備できると、装置10は、本明細書に開示された方法に従って、ニューラルネットワークを訓練するように構成される。例示的な訓練方法が、
図8に説明されている。
【0232】
訓練後、訓練済みニューラルネットワークが、田畑管理のために展開され得る。
図14は、田畑管理のための例示的システム200を示す。
図14に示されるシステム200は、
図12に示されるシステム200と類似の構造を有し得る。差異は、装置20が訓練済みニューラルネットワークを含むということである。
図12及び
図14では、装置10及び装置20が、別個の装置として示されている。いくつかの実施例(図示せず)では、装置10及び装置20は、単一デバイスとして、又は単一デバイス内に具現化されてもよい。
【0233】
図15は、田畑管理のための方法700を説明するフローチャートを示し、それは、
図14に示されたシステム200に関連して説明される。
【0234】
ブロック710において開始して、圃場100の画像がカメラによって取得されてもよく、カメラは、
図14に示されるUAV60、航空機などの上に搭載されてもよい。UAVは、ユーザがUAVの制御をしなくとも自動的に個々の画像を撮ることが可能である。
【0235】
ブロック720において、取得された画像が、田畑管理システム30にアップロードされる。複数の画像が取得される場合、これらの画像は、撮られた画像を繋ぎ合わせるために田畑管理システム30に提供されてもよい。特に、個々の画像が撮られた後、又は全ての画像がグループとして撮られた後に、個々の画像がすぐに送信されてもよい。この点において、UAV60が、収集された画像を田畑管理システム30に直接的又は間接的に送信するように構成された、それぞれの通信インターフェースを含むことが好ましく、田畑管理システム30は、例えば、クラウドコンピューティングソリューション、集中型又は分散型コンピュータシステム、コンピュータセンタなどであってもよい。好ましくは、画像は、例えば、適当な無線通信インターフェース、例えば、モバイルインターフェース、長距離WLANなどを用いて収集する間にアップロードセンタ又はクラウド接続性によって、UAV60から田畑管理システム30に自動的に転送される。収集された画像が無線通信インターフェースを介して転送されることが好ましい場合であっても、UAV60がオンサイトデータ転送インターフェース、例えば、USBインターフェースを含むことも可能である。オンサイトデータ転送インターフェースから収集された画像は、手動の転送によって受信されてもよく、次いで、さらなる処理のためにそれぞれのコンピュータデバイスに転送される。
【0236】
ブロック730において、訓練済みニューラルネットワークを使用して、装置20は、画像内の欠陥を識別及び位置特定するように構成される。例えば、装置は、損傷を受けた植物、例えば、位置(X,Y)を有するポイントにおいて菌類により損傷を受けた植物を検出してもよい。
【0237】
ブロック740において、装置20又は田畑管理システム30は、識別された損傷位置に基づいて、制御ファイルを生成し得る。制御ファイルは、識別された位置に移動するため、及び処置を適用するための命令を含み得る。識別された位置は、位置データとして提供されてもよく、位置データは、測位データ、例えばGPS座標であってもよい。制御ファイルは、例えば、処置デバイスのための制御コマンドとして提供されてもよく、制御コマンドは、例えば、無線通信インターフェースを用いて、USBインターフェースなどによって、例えば、田畑の処置の前に処置デバイスのデータメモリ内に読み出されてもよい。この文脈では、制御ファイルが田畑のいくらか自動化された処置を可能にすること、即ち、例えば、ユーザが手動で介入しなくても、噴霧機がそれぞれの座標において所望の除草剤及び/又は殺虫剤を自動的に投与することが好ましい。制御ファイルが、田畑から出ていくための制御コマンドも含むことが、特に好ましい。本開示は、制御データの特定のコンテンツに限定されないが、処置デバイスを動作させるために必要な任意のデータを含み得ることを理解されたい。
【0238】
図16は、工業製品の特性を定量化するための例示的システム500を示す。システム500は、電子通信デバイス540、データベース520、装置10、オブジェクト修正器530、処置デバイス540、及びカメラ550を含み得る。
【0239】
一般に、装置10は、所与の設計パラメータセット又は性能制約セットに望ましいように、ハードウェアコンポーネント(例えば、コンピューティングデバイス、プロセッサ、論理デバイス)、様々なハードウェアコンポーネントによって実行される実行可能コンピュータプログラム命令(例えば、ファームウェア、ソフトウェア)、又はそれらの任意の組み合わせとして実施され得る、情報を通信及び操作するための様々な物理及び/又は論理コンポーネントを含み得る。
【0240】
いくつかの実施例では、
図16に示されるように、装置10は、1つ又は複数のマイクロプロセッサ又はコンピュータプロセッサを含んでもよく、それらは、適当なソフトウェアを実行する。ソフトウェアは、対応するメモリ、例えば、RAMなどの揮発性メモリ又はフラッシュなどの不揮発性メモリにダウンロード及び/又は記憶されていてもよい。ソフトウェアは、本明細書に記載された機能を実行するように1つ又は複数のプロセッサを構成する命令を含み得る。装置10は、プロセッサを採用して、又は採用することなく実施されてもよく、いくつかの機能を実行するための専用ハードウェア並びに他の機能を実行するためのプロセッサ(例えば、1つ又は複数のプログラムされたマイクロプロセッサ及び関連する回路)の組み合わせとしても実施されてもよいことに留意されたい。例えば、装置10の機能ユニット、例えば入力ユニット、1つ又は複数の処理ユニット、及び出力ユニットが、プログラマブルロジックの形態で、例えばフィールドプログラマブルゲートアレイ(FPGA)として、デバイス又は装置において実施されてもよい。概して、装置の各機能ユニットは、回路の形態で実施されてもよい。
【0241】
装置10は、ワークステーション又はサーバとして、又はその中に具現化されてもよい。装置10は、ウェブサービスを、例えば電子通信デバイス510に提供してもよい。
【0242】
図示された実施例の電子通信デバイス510は、デスクトップ、ノートブック、ラップトップ、携帯電話、スマートフォン、及び/又はPDAであってもよい。電子通信デバイス100は、装置10によって提供されるウェブサービスとインターフェースするように構成されたアプリケーションを含み得る。例えば、アプリケーションは、デスクトップアプリケーション、モバイルアプリケーション、又はウェブベースアプリケーションであってもよい。アプリケーションは、GUI、キャラクターユーザインターフェース、及びタッチスクリーンインターフェースを含むが、これらに限定されない、対話型インターフェースなどのユーザインターフェースを含んでもよい。アプリケーションは、ユーザが注釈付き訓練データを、例えばデータベース520に投入することを可能にするソフトウェアアプリケーションであってもよい。
【0243】
データベース520は、注釈付き訓練データ及びカメラ550によってキャプチャされた画像を記憶し得る。
【0244】
ソフトウェアアプリケーションの例示的なUIが、
図13に示されている。人間の専門家195は、画像名(例えば、215-m)を「画像名」フィールドに、注釈付き訓練値を「画像のグローバル欠陥値」フィールドに入力し得る。上述したように、画像のグローバル欠陥値は、損傷パーセンテージ(即ち、キャプチャされた画像の損傷を表す実数)であってもよい。実施例では、専門家ユーザ195は、0%(専門家ユーザ195が損傷を全く見ていない)~100%(専門家ユーザ195が完全に損傷した田畑から元への表面画像を理解する)の粒度でパーセンテージを割り当てる。5%のステップ間隔が好都合である。
【0245】
図8に示されるネットワークのための訓練プロセスは、
図16に示されるシステムに関して以下で説明される。プロセスは、2つの段階、(第1の)訓練セットを提供することと、(第2の)訓練セットをネットワークに適用することと、を有する。
【0246】
第1の段階において、人間の専門家195は、電子通信デバイス510を使用して、表面画像215-1~215-Mにそれぞれ、訓練値V_train_1~V_train_Mを注釈付けし得る(インデックスmは1~M)。表面画像215-1~215-Mは、データベース520から取得され得る。専門家ユーザ195は、損傷パーセンテージ(即ち、表面の損傷を表す実数)である訓練値を注釈付けする。実施例では、専門家ユーザ195は、0%(専門家ユーザ195が損傷を全く見ていない)~100%(専門家ユーザ195が完全に損傷した田畑から元への表面画像を理解する)の粒度でパーセンテージを割り当てる。5%のステップ間隔が好都合である。専門家ユーザ195は、損傷が発生するオブジェクト表面の中の領域を識別する必要はない。
【0247】
ソフトウェアアプリケーションのUI(例えば、
図13に示されるUI)を介して、人間の専門家195は、装置10においてニューラルネットワークを訓練するために、注釈付けされた訓練データを田畑管理システム30に提供し得る。いくつかの実施例では、注釈付きデータは、データベース520内の訓練データベースに提供され得る。装置10は、次いで、データベース520に記憶された訓練データセットから訓練データを検索し得る。
【0248】
第2の段階では、もはや専門家ユーザ195を必要としない。訓練データが準備できると、装置10は、本明細書に開示された方法に従って、ニューラルネットワークを訓練するように構成される。例示的な訓練方法が、
図8に説明されている。
【0249】
図9のニューラルネットワークの展開は、
図16に示されるシステムに関して以下で説明される。カメラ550は、コンベアベルト上の粒子の画像を撮ることができる。画像は、装置10に提供される。訓練済みニューラルネットワークを用いて、装置10は、損傷された位置を検出するように構成され、その場合にその表面は、正常から(又は標準から)の偏差を示し得る。オブジェクト修正器530は、損傷された位置の位置情報をオブジェクト修正器530から受信してもよく、表面の損傷された位置に作用するように処置デバイス540をトリガしてもよい。処置デバイス540の動作は、単一の特定のポイントに限定されず、そのオペレータは、特性マップから導出されたポイント固有の強度で、オブジェクトの実質的に全てのポイントに措置を適用し得る。例えば、
図16に示されるように、システムは、コンベアベルト上の欠陥粒子を検出するために使用され得る。1つ又は複数の欠陥粒子を1つ又は複数のポイントで検出した場合、処置デバイス(例えば、送風機)は、コンベアベルトから欠陥粒子を除去するようにオブジェクト修正器530によって制御され得る。
【0250】
いくつかの実施形態が説明されている。上記に関わらず、発明の思想及び範囲から逸脱することなく、様々な修正が行われ得ると理解されたい。
【0251】
加えて、図面に示した論理フローは、望ましい結果を達成するために、示された特定の順序、又はシーケンシャルな順序を必要としない。加えて、他のステップが提供されてもよく、又は説明されたフローからステップが除去されてもよく、説明されたシステムに他のコンポーネントが追加されてもよく、又は除去されてもよい。それに応じて、他の実施形態は、以下の特許請求の範囲内にある。
【国際調査報告】