(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-09-28
(45)【発行日】2023-10-06
(54)【発明の名称】マルチステージでマルチスケールの深層学習による植物病害の検出
(51)【国際特許分類】
G06T 7/00 20170101AFI20230929BHJP
G06N 20/00 20190101ALI20230929BHJP
G06Q 50/02 20120101ALI20230929BHJP
【FI】
G06T7/00 350B
G06N20/00
G06Q50/02
(21)【出願番号】P 2021522397
(86)(22)【出願日】2019-10-24
(86)【国際出願番号】 US2019057819
(87)【国際公開番号】W WO2020086818
(87)【国際公開日】2020-04-30
【審査請求日】2022-10-13
(32)【優先日】2018-10-24
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】521165688
【氏名又は名称】クライメイト、リミテッド、ライアビリティー、カンパニー
【氏名又は名称原語表記】CLIMATE LLC
(74)【代理人】
【識別番号】100091487
【氏名又は名称】中村 行孝
(74)【代理人】
【識別番号】100120031
【氏名又は名称】宮嶋 学
(74)【代理人】
【識別番号】100126099
【氏名又は名称】反町 洋
(74)【代理人】
【識別番号】100141830
【氏名又は名称】村田 卓久
(74)【代理人】
【識別番号】100124372
【氏名又は名称】山ノ井 傑
(72)【発明者】
【氏名】イチュアン、コイ
(72)【発明者】
【氏名】ウェイ、コアン
【審査官】佐藤 実
(56)【参考文献】
【文献】Ghazaala Yasmin et al.,A Hierarchical Stratagem for Rice Leaf Disease Distinction,2017 International Conference on Intelligent Computing, Instrumentation and Control Technologies (ICICICT),IEEE,2017年,pp.1177-1183,https://ieeexplore.ieee.org/document/8342737
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00
G06N 20/00
G06Q 50/02
(57)【特許請求の範囲】
【請求項1】
植物画像から複数のサイズの症状を有した植物病害を認識するコンピュータ実装方法であって、
プロセッサによって、少なくとも、第1の複数の植物病害のうちの1つの植物病害に関する第1症状を写している第1写真と、無症状を写している第2写真と、第2の複数の植物病害のうちの1つの植物病害に関する部分的な第2症状を写している第3写真とから、第1訓練セットを取得することであり、
前記第1症状は、前記第2症状よりも小さく、
前記第1、第2、および第3写真は、同様のサイズの視野に対応している、
取得することと、
前記プロセッサによって、前記第1の複数の植物病害に対応した第1クラスセットのうちの1つのクラスへと、または、健全状態に対応したクラスへと、または、前記第2の複数の植物病害どうしの組合せに対応したクラスへと、画像を分類するための第1デジタルモデルを、前記第1訓練セットから構築することと、
第2訓練セットを、少なくとも、前記第2症状を写している第4写真から取得することと、
前記第2の複数の植物病害に対応した第2クラスセットのうちの1つのクラスへと、画像を分類するための第2デジタルモデルを、前記第2訓練セットから構築することと、
新たな画像をユーザデバイスから受領することと、
複数の分類を得るように、前記第1デジタルモデルを、前記新たな画像内の複数の第1領域に対して適用することと、
1つ以上の分類を得るように、前記第2デジタルモデルを、前記複数の第1領域の中の複数の第1領域どうしの組合せに各々が対応している1つ以上の第2領域に対して適用することであり、
前記複数の第1領域は、前記第2の複数の植物病害どうしの組合せに対応したクラスへと分類される、
適用することと、
前記第1の複数の植物病害のうちの1つの植物病害に対応したクラスへのまたは前記健全状態に対応したクラスへの前記複数の分類に関連した分類データと、前記1つ以上の分類に関連した分類データとを、前記ユーザデバイスに対して送信することと、
を含むコンピュータ実装方法。
【請求項2】
前記第1デジタルモデルまたは前記第2デジタルモデルは、畳み込みニューラルネットワーク(CNN)または決定木である、請求項1に記載のコンピュータ実装方法。
【請求項3】
前記第1の複数の植物病害は、一般的なさび病、斑点病、南方さび病、または初期の灰色葉斑点を含み、
前記第2の複数の植物病害は、ゴス萎凋病、すす紋病、または後期の灰色葉斑点を含む、請求項1に記載のコンピュータ実装方法。
【請求項4】
前記第1訓練セットの前記取得は、
スライディングウィンドウのサイズを特定することと、
第1倍率を決定することと、
前記スライディングウィンドウの前記サイズおよび前記第1倍率に基づいて、第1画像サイズを決定することと、
第1サイズ変更済み写真、第2サイズ変更済み写真、または第3サイズ変更済み写真を取得するように、前記第1画像サイズに従って、前記第1写真、前記第2写真、または前記第3写真をサイズ変更することと、
を含む請求項1に記載のコンピュータ実装方法。
【請求項5】
前記第2訓練セットの前記取得は、
前記前記第1倍率よりも小さな第2倍率を決定することと、
前記スライディングウィンドウの前記サイズおよび前記第2倍率に基づいて、第2画像サイズを決定することと、
第4サイズ変更済み写真を取得するように、前記第2画像サイズに従って、前記第4写真をサイズ変更することと、
を含む請求項4に記載のコンピュータ実装方法。
【請求項6】
第1ストライドと、前記第1ストライドよりも小さな第2ストライドとを決定することをさらに含み、
前記第1訓練セットの前記取得は、前記第1ストライドを有した前記スライディングウィンドウを使用して、前記第1サイズ変更済み写真、前記第2サイズ変更済み写真、または前記第3サイズ変更済み写真から、第1領域セットを抽出することをさらに含み、
前記第2訓練セットの前記取得は、前記第2ストライドを有した前記スライディングウィンドウを使用して、前記第4サイズ変更済み写真から、第2領域セットを抽出することをさらに含む、請求項5に記載のコンピュータ実装方法。
【請求項7】
前記第1訓練セットの前記取得は、前記第1クラスセットのうちの1つのクラスに関するラベルを前記第1領域セットの各領域に対して割り当てることをさらに含み、
前記第1デジタルモデルの前記構築は、前記第1領域セットに対して割り当てられた前記ラベルからなるセットに基づいてさらに実行され、
前記前記第2訓練セットの前記取得は、前記第2クラスセットのうちの1つのクラスに関するラベルを前記第2領域セットの各領域に対して割り当てることをさらに含み、
前記第2デジタルモデルの前記構築は、前記第2領域セットに対して割り当てられた前記ラベルからなるセットに基づいてさらに実行される、請求項6に記載のコンピュータ実装方法。
【請求項8】
前記前記第1デジタルモデルの前記適用は、
第1更新済み画像を取得するように、前記第1画像サイズに従って、前記新たな画像をサイズ変更することと、
前記第1ストライドを有した前記スライディングウィンドウを使用して、前記第1更新済み画像から前記複数の第1領域を抽出することと、
を含む請求項6に記載のコンピュータ実装方法。
【請求項9】
前記第2デジタルモデルの前記適用は、
マスク済み画像を取得するように、前記新たな画像内において、前記第1の複数の植物病害のうちの1つの植物病害に対応したクラスへと分類されたまたは健全状態に対応したクラスへと分類された前記複数の第1領域の各々をマスクすることと、
第2更新済み画像を取得するように、前記第2画像サイズに従って、前記マスク済み画像をサイズ変更することと、
前記第2ストライドを有した前記スライディングウィンドウを使用して、前記第2更新済み画像から前記1つ以上の第2領域を抽出することと、
を含む請求項8に記載のコンピュータ実装方法。
【請求項10】
前記第2デジタルモデルの前記適用は、前記1つの第2領域を取得するように、前記複数の第1領域の中の複数の第1領域どうしの組合せの一部をサイズ変更することを含む、請求項1に記載のコンピュータ実装方法。
【請求項11】
前記第1訓練セットは、前記第1の複数の植物病害のうちの1つの植物病害に関する第3症状と、前記第2の複数の植物病害のうちの1つの植物病害に関する第4症状と、を写している特定の写真からさらに取得され、前記第4症状は、前記第3症状とオーバーラップしている、請求項1に記載のコンピュータ実装方法。
【請求項12】
前記第1クラスセットへと分類された前記複数の第1領域に関する合計サイズと、前記第2クラスセットへと分類された前記1つ以上の第2領域に関する合計サイズと、を計算することと、
前記複数の第1領域に関する前記合計サイズと、前記1つ以上の第2領域に関する前記合計サイズと、のうちの最大である方が、前記第1クラスセットおよび前記第2クラスセットのうちの支配的なクラスとして分類されるように、前記支配的なクラスを決定することと、
をさらに含み、
前記分類データは、前記支配的なクラスに関する情報を含む、請求項1に記載のコンピュータ実装方法。
【請求項13】
実行されたときには、1つ以上のプロセッサに、植物画像から複数のサイズの症状を有した植物病害を認識する方法を実行させる1つ以上の命令シーケンスを格納した1つ以上の非一時的コンピュータ可読媒体であって、
前記方法は、
少なくとも、第1の複数の植物病害のうちの1つの植物病害に関する第1症状を写している第1写真と、無症状を写している第2写真と、第2の複数の植物病害のうちの1つの植物病害に関する部分的な第2症状を写している第3写真とから、第1訓練セットを取得することであり、
前記第1症状は、前記第2症状よりも小さく、
前記第1、第2、および第3写真は、同様のサイズの視野に対応しており、
取得することと、
前記第1の複数の植物病害に対応した第1クラスセットのうちの1つのクラスへと、または、健全状態に対応したクラスへと、または、前記第2の複数の植物病害どうしの組合せに対応したクラスへと、画像を分類するための第1デジタルモデルを、前記第1訓練セットから構築することと、
第2訓練セットを、少なくとも、前記第2症状を写している第4写真から取得することと、
前記第2の複数の植物病害に対応した第2クラスセットのうちの1つのクラスへと、画像を分類するための第2デジタルモデルを、前記第2訓練セットから構築することと、
新たな画像をユーザデバイスから受領することと、
複数の分類を得るように、前記第1デジタルモデルを、前記新たな画像内の複数の第1領域に対して適用することと、
1つ以上の分類を得るように、前記第2デジタルモデルを、前記複数の第1領域の中の複数の第1領域どうしの組合せに各々が対応している1つ以上の第2領域に対して適用することであり、
前記複数の第1領域は、前記第2の複数の植物病害どうしの組合せに対応したクラスへと分類される、
適用することと、
前記第1の複数の植物病害のうちの1つの植物病害に対応したクラスへのまたは前記健全状態に対応したクラスへの前記複数の分類に関連した分類データと、前記1つ以上の分類に関連した分類データとを、前記ユーザデバイスに対して送信することと、
を含む1つ以上の非一時的コンピュータ可読媒体。
【請求項14】
前記第1訓練セットの前記取得は、
スライディングウィンドウのサイズを特定することと、
第1倍率を決定することと、
前記サイズおよび前記第1倍率に基づいて、第1画像サイズを決定することと、
第1サイズ変更済み写真、第2サイズ変更済み写真、または第3サイズ変更済み写真を取得するように、前記第1画像サイズに従って、前記第1写真、前記第2写真、または前記第3写真をサイズ変更することと、
を含む請求項13に記載の1つ以上の非一時的コンピュータ可読媒体。
【請求項15】
前記第2訓練セットの前記取得は、
前記前記第1倍率よりも小さな第2倍率を決定することと、
前記スライディングウィンドウの前記サイズおよび前記第2倍率に基づいて、第2画像サイズを決定することと、
第4サイズ変更済み写真を取得するように、前記第2画像サイズに従って、前記第4写真をサイズ変更することと、
を含む請求項14に記載の1つ以上の非一時的コンピュータ可読媒体。
【請求項16】
前記方法は、第1ストライドと、前記第1ストライドよりも小さな第2ストライドとを決定することをさらに含み、
前記第1訓練セットの前記取得は、前記第1ストライドを有した前記スライディングウィンドウを使用して、前記第1サイズ変更済み写真、前記第2サイズ変更済み写真、または前記第3サイズ変更済み写真から、第1領域セットを抽出することをさらに含み、
前記第2訓練セットの前記取得は、前記第2ストライドを有した前記スライディングウィンドウを使用して、前記第4サイズ変更済み写真から、第2領域セットを抽出することをさらに含む、請求項15に記載の1つ以上の非一時的コンピュータ可読媒体。
【請求項17】
前記第1訓練セットの前記取得は、前記第1クラスセットのうちの1つのクラスに関するラベルを前記第1領域セットの各領域に対して割り当てることをさらに含み、
前記第1デジタルモデルの前記構築は、前記第1領域セットに対して割り当てられた前記ラベルからなるセットに基づいてさらに実行され、
前記前記第2訓練セットの前記取得は、前記第2クラスセットのうちの1つのクラスに関するラベルを前記第2領域セットの各領域に対して割り当てることをさらに含み、
前記第2デジタルモデルの前記構築は、前記第2領域セットに対して割り当てられた前記ラベルからなるセットに基づいてさらに実行される、請求項16に記載の1つ以上の非一時的コンピュータ可読媒体。
【請求項18】
前記前記第1デジタルモデルの前記適用は、
第1更新済み画像を取得するように、前記第1画像サイズに従って、前記新たな画像をサイズ変更することと、
前記第1ストライドを有した前記スライディングウィンドウを使用して、前記第1更新済み画像から前記複数の第1領域を抽出することと、
を含む請求項16に記載の1つ以上の非一時的コンピュータ可読媒体。
【請求項19】
前記第2デジタルモデルの前記適用は、
マスク済み画像を取得するように、前記新たな画像内において、前記第1の複数の植物病害のうちの1つの植物病害に対応したクラスへと分類されたまたは健全状態に対応したクラスへと分類された前記複数の第1領域の各々をマスクすることと、
第2更新済み画像を取得するように、前記第2画像サイズに従って、前記マスク済み画像をサイズ変更することと、
前記第2ストライドを有した前記スライディングウィンドウを使用して、前記第2更新済み画像から前記1つ以上の第2領域を抽出することと、
を含む請求項18に記載の1つ以上の非一時的コンピュータ可読媒体。
【請求項20】
前記第2デジタルモデルの前記適用は、前記1つの第2領域を取得するように、前記複数の第1領域の中の複数の第1領域どうしの組合せの一部をサイズ変更することを含む、請求項13に記載の1つ以上の非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【著作権通告】
【0001】
この特許文書の開示の一部には、著作権保護の対象となる資料が含まれている。著作権所有者は、特許商標庁の書類または記録に現れる特許文書または特許開示を何人がファクシミリで複製することに対して何らの異議も申し立てないけれども、それ以外に関しては、すべての著作権または権利を保有するものである。著作権 2015~2019 The Climate Corporation。
【技術分野】
【0002】
本開示は、植物病害の検出および機械学習の技術領域に関する。本開示は、また、異なるサイズの症状を有した病害を認識するために異なるスケールで画像を処理する技術領域に関する。
【背景技術】
【0003】
本項で説明するアプローチは、追求し得るアプローチであるが、必ずしも以前に考案されたり追求されたりしたアプローチではない。したがって、特段に明記しない限り、本項で説明するいずれのアプローチも、本項に含まれているという理由だけで、従来技術として適格であると想定されるべきではない。
【0004】
植物病害の検出は、農業において重要である。今日、自動化されたアプローチでは、サンプル写真から学習することにより、植物の写真を分類することが多い。各々の写真は、病害症状を有した葉を写したものとすることができる。それらの症状は、複数の病害によって引き起こされることがある。それらの症状は、サイズが相違していることがあり、また、互いにオーバーラップしていることもある。それら植物病害の様々な症状を写している多数の写真をサンプルとして必要とすることなく、そのような写真から、葉が感染している植物病害を効率的にかつ正確に認識するアプローチが存在すれば、有用であろう。
【発明の概要】
【0005】
添付の特許請求の範囲は、本開示の要約として機能し得る。
【0006】
図面は、以下の通りである。
【図面の簡単な説明】
【0007】
【
図1】
図1は、本明細書において説明する機能を実行するように構成された例示的なコンピュータシステムを、システムが相互運用し得る他の装置と共にフィールド環境内で示している。
【0008】
【
図2】
図2は、例示的なモバイルアプリケーションが実行のためにロードされるときの、メインメモリ内の命令セットに関する例示的なロジック編成を示す2つの図である。
【0009】
【
図3】
図3は、農業インテリジェンスコンピュータシステムが、1つ以上のデータソースによって提供された農学的データを使用して、1つ以上の事前構成された農学的モデルを生成するプログラムプロセスを示している。
【0010】
【
図4】
図4は、本発明の一実施形態が実装され得るコンピュータシステムを示すブロック図である。
【0011】
【
図5】
図5は、データ入力のための予定表ビューに関する例示的な実施形態を図示している。
【0012】
【
図6】
図6は、データ入力のための計算表ビューに関する例示的な実施形態を図示している。
【0013】
【
図7A】
図7Aは、比較的小さな植物病害症状を写している写真から、サンプル画像を抽出する例示的なアプローチを示している。
【0014】
【
図7B】
図7Bは、比較的大きな植物病害症状を写している写真から、サンプル画像を抽出する例示的なアプローチを示している。
【0015】
【
図8】
図8は、複数のデジタルモデルを使用して、植物画像から複数のサイズの症状を有した植物病害を認識する例示的なプロセスを示している。
【0016】
【
図9A】
図9Aは、比較的小さな症状を有した植物病害を認識するために、第1デジタルモデルを植物画像に対して適用した結果を示す例示的な予測マップを示している。
【0017】
【
図9B】
図9Bは、比較的大きな症状を有した植物病害を認識するために、第2デジタルモデルを植物画像に対して適用した結果を示す例示的な予測マップを示している。
【0018】
【
図10】
図10は、植物画像から複数のサイズの症状を有した植物病害を認識するようにプログラムされたサーバコンピュータによって実行される例示的な方法を示している。
【発明を実施するための形態】
【0019】
以下の説明では、説明の目的のため、本開示の完全な理解を提供するために、多数の具体的な詳細について記載している。しかしながら、実施形態が、これらの具体的な詳細がなくても実施し得ることは明らかであろう。他の実例では、本開示を無用に不明瞭とすることを回避するよう、周知の構造およびデバイスをブロック図の形態で図示している。実施形態は、以下の概要に従って項ごとに開示される。
1.全体的な概要
2.例示的な農業インテリジェンスコンピュータシステム
2.1.構造的な概要
2.2.アプリケーションプログラムの概要
2.3.コンピュータシステムへのデータ取り込み
2.4.プロセスの概要-農学的モデルの訓練
2.5.実装例-ハードウェアの概要
3.機能の説明
3.1 訓練セットおよびデジタルモデルの構築
3.2 デジタルモデルの実行
3.3 例示的なプロセス
4.拡張機能および代替手段
*
【0020】
1.全体的な概要
【0021】
植物の写真から複数のサイズの症状を生じた植物病害を認識するシステムが開示される。いくつかの実施形態では、システムは、同様のサイズの症状を有した植物病害を各々認識するための複数のデジタルモデルを、複数の訓練セットから、構築するようにプログラムされる。各デジタルモデルは、複数のクラスのうちの1つのクラスへと画像を分類する、畳み込みニューラルネットワーク(CNN)などの、深層学習アーキテクチャによって実装することができる。よって、各訓練セットに関して、システムは、同様のサイズを有した1つ以上の植物病害に関する症状を写している画像を収集するようにプログラムされる。その後、これらの画像は、複数の病害クラスへと割り当てられる。複数の訓練セットのうちの、第1デジタルモデルを構築するために使用される最初の訓練セットに関して、システムは、また、健全状態に対応した画像と、他のサイズを有した症状の画像と、を含むようにプログラムされる。その後、これらの画像は、無病害クラスと包括クラスとに割り当てられる。ユーザデバイスから新たな画像が与えられると、システムは、まず第1デジタルモデルを適用するようにプログラムされる。新たな画像のうちの、少なくとも第1デジタルモデルによって包括クラスへと分類された部分に関して、システムは、次に、別のデジタルモデルを適用するようにプログラムされる。システムは、最終的に、新たな画像の各部分が、植物病害に対応したクラスへとまたは植物無病害に対応したクラスへとどのように分類されたかを示す分類データを、ユーザデバイスに対して送信するようにプログラムされる。
【0022】
いくつかの実施形態では、植物はトウモロコシである。各画像は、デジタル画像とすることができ、典型的には、1つ以上の病害に感染したトウモロコシの葉を写している写真である。システムは、2つのデジタルモデルを構築するようにプログラムすることができ、第1のデジタルモデルは、比較的小さな症状を生じたトウモロコシ病害を認識するためのものであり、第2のデジタルモデルは、比較的大きな症状を生じたトウモロコシ病害を認識するためのものである。
【0023】
いくつかの実施形態では、第1デジタルモデルを構築するための第1訓練セットに関して、システムは、比較的小さな症状を有したそれら病害の主要な症状を写している写真を含むように構成することができる。よって、これらの写真は、比較的小さなサイズを有することになる。これに代えて、システムは、元の写真と同様の視野に対応するがサイズが固定されているこれらの写真の拡大縮小バージョンを含むように構成することができる。システムは、また、同様の視野に対応する写真であっても、症状を写していないもの、あるいは、比較的大きな症状を有した病害症状を写しているもの、を含むように構成することができる。したがって、第1デジタルモデルは、トウモロコシの画像を、比較的小さな症状を有したトウモロコシ病害の1つに対応したクラスへと、または、健全状態に対応したクラスへと、または、比較的大きな症状を有したトウモロコシ病害の組合せに対応した包括クラスへと、分類するように設計されている。
【0024】
いくつかの実施形態では、第2デジタルモデルを構築するための第2訓練セットに関して、システムは、比較的大きな症状を有した病害の主要な症状を写している写真を含むように構成することができる。よって、これらの写真は、比較的大きなサイズを有することになる。これに代えて、システムは、元の写真と同様の視野に対応するがサイズが固定されているこれらの写真の拡大縮小バージョンを含むように構成することができる。したがって、第2デジタルモデルは、トウモロコシの画像を、比較的大きな症状を有したトウモロコシ病害の1つに対応したクラスへと分類するように設計されている。システムは、第1訓練セットおよび第2訓練セットから、第1デジタルモデルおよび第2デジタルモデルを各々CNNsとして構築するようにプログラムすることができる。
【0025】
いくつかの実施形態では、システムは、感染したトウモロコシの葉に関する新たな写真などの新たな画像を、ユーザデバイスから受領するように、そして、デジタルモデルを新たな画像に対して適用するように、プログラムされる。具体的には、システムは、まず、第1デジタルモデルを新たな画像に対して適用することにより、新たな画像内の各第1領域を、比較的小さな症状を有したトウモロコシ病害に対応したクラス、または健全状態に対応したクラス、あるいは比較的大きな症状を有したトウモロコシ病害の組合せに対応したクラス、のいずれかへと分類するように、プログラムされる。システムは、次に、第2デジタルモデルを、包括クラスへと分類された第1領域の組合せ内の各第2領域に対して適用することにより、比較的大きな症状を有したトウモロコシ病害に対応した複数のクラスのうちの1つのクラスへと分類するように、プログラムされる。第2領域は、典型的には、第1領域よりも大きく、より大きな症状あるいはより大きな視野に対応している。システムは、その後、各第1領域または各第2領域が、トウモロコシ病害に対応したクラスまたは健全状態に対応したクラスのいずれかへとどのように分類されたかに関連した分類データを、ユーザデバイスに対して送信するように、プログラムすることができる。
【0026】
システムは、様々な技術的利点を生成する。システムは、1つの植物画像から、複数の植物病害を検出することを可能とする。システムは、また、比較的小さな症状を有した1つの植物病害が、別の植物病害の比較的大きな症状とオーバーラップしている場合であっても、その比較的小さな症状を検出することを可能とする。加えて、1つの植物画像から、複数のサイズの症状を有した植物病害を検出することを可能とする。より具体的には、システムは、病害症状のサイズが異なる場合であっても、植物内の複数の領域の各々を、複数の植物病害クラスまたは健全クラスのいずれかへと関連付けることができる。さらに、異なる症状群を識別するように設計された異なるデジタルモデルを順次的に適用するマルチステージアプローチは、異なる症状群を一度に検出する単一ステージアプローチと比較して、比較的少ないサンプル画像しか必要としなくても、高精度を達成する。特に、マルチステージアプローチは、単一ステージアプローチの訓練に使用された複数の症状群を示している画像から抽出された複数の画像であって単一の症状群を示している複数の画像を利用することができる。
【0027】
実施形態に関する他の態様および特徴点は、本開示の他の項から明瞭となるであろう。
【0028】
2.例示的な農業インテリジェンスコンピュータシステム
【0029】
2.1 構造的な概要
【0030】
図1は、本明細書において説明する機能を実行するように構成された例示的なコンピュータシステムを、システムが相互運用し得る他の装置と共にフィールド環境内で示している。一実施形態では、ユーザ102は、農業活動を目的としたフィールドなどの、あるいは、1つ以上の農業フィールドに関する管理位置などの、フィールド位置において、あるいはフィールド位置に関連して、フィールド管理コンピュータデバイス104を、所有または操作または所持している。フィールド管理コンピュータデバイス104は、フィールドデータ106を、1つ以上のネットワーク109を介して、農業インテリジェンスコンピュータシステム130に対して提供するように、プログラムまたは構成されている。
【0031】
フィールドデータ106の例は、(a)識別データ(例えば、エーカー数、フィールド名、フィールド識別子、地理的識別子、境界識別子、作物識別子、ならびに、農地を識別するために使用し得る他の適切なデータ、例えば共有地ユニット(CLU)、ロットおよびブロック番号、地番、地理的な座標および境界、農場シリアル番号(FSN)、農場番号、区画番号、フィールド番号、セクション、タウンシップ、および/または範囲などの、他の適切なデータ)、(b)収穫データ(例えば、作物のタイプ、作物の品種、輪作、作物が有機栽培されているかどうか、収穫日、実際の生産履歴(APH)、予想収穫量、収穫量、作物価格、作物収益、穀粒水分、耕耘慣行、ならびに、前の栽培シーズンの情報)、(c)土壌データ(例えば、タイプ、組成、pH、有機物(OM)、陽イオン交換容量(CEC))、(d)播種データ(例えば、播種日、種子のタイプ、播種した種子の相対的な成熟度(RM)、種子の個体数)、(e)肥料データ(例えば、栄養分のタイプ(窒素、リン、カリウム)、施肥のタイプ、施肥日、量、供給源、方法)、(f)化学物質の散布データ(例えば、農薬、除草剤、殺菌剤、植物調節剤や枯葉剤や乾燥剤として使用することを目的とした他の物質または物質混合物、散布日、量、供給源、方法)、(g)灌漑データ(例えば、適用日、量、供給源、方法)、(h)気象データ(例えば、降水量、降雨率、予測降雨量、水流出率地域、気温、風、予報、気圧、視界、雲、熱指数、露点、湿度、積雪深さ、大気の品質、日の出、日没)、(i)画像データ(例えば、農業装置のセンサ、カメラ、コンピュータ、スマートフォン、タブレット、無人航空機、飛行機、または衛星、からの画像および光スペクトル情報)、(j)偵察観測(写真、ビデオ、自由書式のメモ、音声記録、音声文字起こし、気象条件(気温、降水量(現在および過去)、土壌水分、作物の成長段階、風速、相対湿度、露点、黒色層)、ならびに、(k)土壌、種子、作物季節学、害虫および病害の報告、ならびに、予測源およびデータベース、を含む。
【0032】
データサーバコンピュータ108は、農業インテリジェンスコンピュータシステム130に対して通信可能に結合されており、1つ以上のネットワーク109を介して農業インテリジェンスコンピュータシステム130に対して外部データ110を送信するようにプログラムまたは構成されている。外部データサーバコンピュータ108は、農業インテリジェンスコンピュータシステム130と同じ法人または同じ事業体によって所有または操作されてもよく、あるいは、政府機関、非政府組織(NGO)、および/または民間のデータサービスプロバイダ、などの異なる法人または異なる事業体によって所有または操作されてもよい。外部データの例は、とりわけ、気象データ、画像データ、土壌データ、あるいは、作物の収穫量に関連する統計データ、を含む。外部データ110は、フィールドデータ106と同じタイプの情報から構成されてもよい。いくつかの実施形態では、外部データ110は、農業インテリジェンスコンピュータシステム130を所有および/または操作するのと同じ事業体が所有する外部データサーバ108によって提供される。例えば、農業インテリジェンスコンピュータシステム130は、気象データなどの、第三者の情報源から入手し得るタイプのデータに排他的にフォーカスしたデータサーバを含んでもよい。いくつかの実施形態では、外部データサーバ108は、システム130内に実際に組み込まれてもよい。
【0033】
農業装置111は、その上に固定された1つ以上の遠隔センサ112を有してもよく、センサは、農業装置111を介して農業インテリジェンスコンピュータシステム130に対して直接的にまたは間接的に通信可能に結合されているとともに、農業インテリジェンスコンピュータシステム130に対してセンサデータを送信するようにプログラムまたは構成されている。農業装置111の例は、トラクタ、コンバイン、ハーベスタ、播種機、トラック、施肥設備、無人航空機を含む航空機、ならびに、物理的な機械またはハードウェアからなる任意の他の物品であって、典型的には移動式機械であり、農業に関連するタスクにおいて使用され得る任意の他の物品、を含む。いくつかの実施形態では、装置111からなる単一ユニットは、装置上のネットワーク内において局所的に結合された複数のセンサ112を含んでもよく、コントローラエリアネットワーク(CAN)は、コンバイン、ハーベスタ、噴霧機、および耕耘機、に設置し得るこのようなネットワークの一例である。アプリケーションコントローラ114は、1つ以上のネットワーク109を介して農業インテリジェンスコンピュータシステム130に対して通信可能に結合されているとともに、農業車両または農業機器の動作パラメータを制御するために使用される1つ以上のスクリプトを、農業インテリジェンスコンピュータシステム130から受領するようにプログラムまたは構成されている。例えば、カリフォルニア州サンフランシスコのThe Climate Corporationから入手可能なCLIMATE FIELDVIEW DRIVEをどのようにして使用するかなどのように、農業インテリジェンスコンピュータシステム130から農業装置111への通信を可能とするために、コントローラエリアネットワーク(CAN)バスインターフェースを使用してもよい。センサデータは、フィールドデータ106と同じタイプの情報から構成されてもよい。いくつかの実施形態では、遠隔センサ112は、農業装置111に対して固定されなくてもよく、その場合、フィールド内に遠隔的に配置されることで、ネットワーク109と通信してもよい。
【0034】
装置111は、キャブアプリケーションによってプログラムされたキャブコンピュータ115を含んでもよく、キャブアプリケーションは、本明細書の他の項でさらに説明するデバイス104のためのモバイルアプリケーションのバージョンまたは変形を含んでもよい。一実施形態では、キャブコンピュータ115は、装置111の操作室内に設置された、カラーディスプレイなどのグラフィック画面ディスプレイを有したコンパクトなコンピュータであって、多くの場合、タブレットサイズのコンピュータまたはスマートフォンとされるコンパクトなコンピュータを含む。キャブコンピュータ115は、モバイルコンピュータデバイス104に関して本明細書においてさらに説明する操作および機能の、一部または全部を実装してもよい。
【0035】
1つ以上のネットワーク109とは、地上または衛星リンクを含む任意の有線リンクまたは無線リンクを使用した、ローカルエリアネットワークやワイドエリアネットワークやインターネットワークやインターネットを含む1つ以上のデータ通信ネットワークの任意の組合せを、広義的に表している。1つ以上のネットワークは、
図1の様々な構成要素どうしの間にわたってのデータ交換を提供する任意の媒体または機構によって実装されてもよい。
図1の様々な構成要素は、また、直接的な(有線または無線の)通信リンクを有していてもよい。センサ112、コントローラ114、外部データサーバコンピュータ108、ならびに、システムの他の構成要素は、各々、1つ以上のネットワーク109と互換的なインターフェースを含み、TCP/IP、Bluetooth(登録商標)、CANプロトコル、ならびに、HTTPやTLSや同種のものといった上位層プロトコル、などの、ネットワークを介した通信のための標準化されたプロトコルを使用するようにプログラムまたは構成される。
【0036】
農業インテリジェンスコンピュータシステム130は、フィールド管理コンピューティングデバイス104からのフィールドデータ106と、外部データサーバコンピュータ108からの外部データ110と、遠隔センサ112からのセンサデータと、を受領するようにプログラムまたは構成されている。農業インテリジェンスコンピュータシステム130は、本開示の他の項でさらに説明する態様で、データ値の変換および保存、1つ以上のフィールド上における1つ以上の作物に関するデジタルモデルの構築、推奨および通知の生成、ならびにアプリケーションコントローラ114に対してのスクリプトの生成および送信、を実行するために、1つ以上のコンピュータプログラムを、あるいは、他のソフトウェア要素を、あるいは、FPGAsまたはASICsなどのデジタル的にプログラムされたロジックを、あるいは、これらの任意の組合せを、ホストまたは使用または実行するようにさらに構成されてもよい。
【0037】
一実施形態では、農業インテリジェンスコンピュータシステム130は、通信層132と、提示層134と、データ管理層140と、ハードウェア/仮想化層150と、モデルデータフィールドデータリポジトリ160と、を使用してプログラムされる、あるいは、これらを含む。「層」とは、この文脈では、電子デジタルインターフェース回路、マイクロコントローラ、ドライバなどのファームウェア、および/または、コンピュータプログラムまたは他のソフトウェア要素、からなる任意の組合せを指す。
【0038】
通信層132は、フィールドデータ、外部データ、およびセンサデータ、に関して、各々対応する、フィールド管理コンピューティングデバイス104、外部データサーバコンピュータ108、および遠隔センサ112、に対して要求を送信することを含めて、入力/出力インターフェース機能を実行するようにプログラムまたは構成されてもよい。通信層132は、受領したデータを、モデルデータフィールドデータリポジトリ160に対して送信してフィールドデータ106として記憶させるようにプログラムまたは構成されてもよい。
【0039】
提示層134は、フィールド管理コンピューティングデバイス104、キャブコンピュータ115、あるいは、ネットワーク109を介してシステム130に対して結合されている他のコンピュータ、上に表示されるべきグラフィカルユーザインターフェース(GUI)を生成するようにプログラムまたは構成されてもよい。GUIは、農業インテリジェンスコンピュータシステム130に対して送信するデータを入力するための、および/または、モデルおよび/または推奨に関する要求を生成するための、および/または、推奨や通知やモデルや他のフィールドデータを表示するための、制御手段を含んでもよい。
【0040】
データ管理層140は、システムの機能要素とリポジトリとの間において通信される質問および結果セットを含めた、リポジトリ160およびシステムの他の機能要素が関与する読み取り操作および書き込み操作を管理するようにプログラムまたは構成されてもよい。データ管理層140の例は、とりわけ、JDBC、SQLサーバインターフェースコード、および/または、HADOOPインターフェースコード、を含む。リポジトリ160は、データベースを含んでもよい。本明細書で使用する際には、「データベース」という用語は、データの本体と、リレーショナルデータベース管理システム(RDBMS)と、のうちのいずれかを、あるいはそれらの両方を、指してもよい。本明細書で使用する際には、データベースは、階層データベース、リレーショナルデータベース、フラットファイルデータベース、オブジェクトリレーショナルデータベース、オブジェクト指向データベース、分散データベース、および、コンピュータシステム内に格納される記録またはデータに関する任意の他の構造化された収集を含めた、データに関する任意の収集を含んでもよい。RDBMSの例には、ORACLE(登録商標)データベース、MYSQLデータベース、IBM(登録商標)DB2データベース、MICROSOFT(登録商標)SQL SERVERデータベース、SYBASE(登録商標)データベース、および、POSTGRESQLデータベース、を含むが、これらに限定されるものではない。しかしながら、本明細書において説明するシステムおよび方法を可能とする任意のデータベースを使用してもよい。
【0041】
フィールドデータ106が、農業インテリジェンスコンピュータシステムと相互作用する1つ以上の農業機械または農業機械デバイスを介して農業インテリジェンスコンピュータシステムに対して直接的に提供されない場合には、ユーザは、(農業インテリジェンスコンピュータシステムによって提供される)ユーザデバイス上の1つ以上のユーザインターフェースを介して、そのような情報を入力するように促されてもよい。例示的な実施形態では、ユーザは、(農業インテリジェンスコンピュータシステムによって提供される)ユーザデバイス上のマップに対してアクセスすることにより、そして、マップ上にグラフィック的に表示された特定のCLUsを選択することによって、識別データを指定してもよい。代替可能な実施形態では、ユーザ102は、(農業インテリジェンスコンピュータシステム130によって提供される)ユーザデバイス上のマップに対してアクセスすることにより、そして、マップ上においてフィールドの境界を描画することによって、識別データを指定してもよい。そのようなCLU選択あるいはマップ描画は、地理的な識別子を表す。代替可能な実施形態では、ユーザは、ユーザデバイスを介して米国農務省ファームサービス局または他の情報源から、フィールド識別データ(形状ファイルとして提供されるあるいは同様のフォーマットで提供される)に対してアクセスすることにより、そして、そのようなフィールド識別データを農業インテリジェンスコンピュータシステムに対して提供することにより、識別データを指定してもよい。
【0042】
例示的な実施形態では、農業インテリジェンスコンピュータシステム130は、データ入力のためのデータ管理手段を含むグラフィカルユーザインターフェースを生成して、それを表示させるようにプログラムされる。上述した方法を使用して1つ以上のフィールドが識別された後に、データ管理手段は、選択されたときにはフィールドや土壌や作物や耕耘や養分の慣行に対する変化を識別し得る1つ以上のグラフィカルユーザインターフェースウィジェットを提供してもよい。データ管理手段は、予定表ビュー、計算表ビュー、および/または、1つ以上の編集可能なプログラム、を含んでもよい。
【0043】
図5は、データ入力のための予定表ビューに関する例示的な実施形態を図示している。
図5に図示されたディスプレイを使用して、ユーザコンピュータは、イベントの追加のために、特定のフィールドおよび特定の日付に関する選択を入力することができる。予定表の上部に表示されるイベントは、窒素、播種、慣行、土壌、を含んでもよい。窒素散布イベントを追加するために、ユーザコンピュータは、窒素タブを選択する入力を提供してもよい。ユーザコンピュータは、その後、選択されたフィールドへの窒素散布を表示するために、特定のフィールドに関し、予定表上における位置を選択してもよい。特定のフィールドに関し、予定表上における位置の選択を受領したことに応答して、データ管理手段は、データ入力オーバーレイを表示してもよく、これにより、ユーザコンピュータが、窒素の散布、播種手順、土壌適用、耕耘手順、灌漑の慣行、あるいは、特定のフィールドに関連する他の情報、に関連したデータを入力できるようにする。例えば、ユーザコンピュータが、予定表の一部を選択して、窒素の散布を表示した場合、データ入力オーバーレイは、散布される窒素の量、散布日、使用された肥料のタイプ、および、窒素の散布に関連する他の情報、を入力するためのフィールドを含むことができる。
【0044】
一実施形態では、データ管理手段は、1つ以上のプログラムを作成するためのインターフェースを提供する。「プログラム」とは、この文脈では、窒素散布、播種手順、土壌適用、耕耘手順、灌漑慣行、あるいは、1つ以上のフィールドに関連し得る他の情報、に関連するデータセットであり、他の操作においてセットとして再利用するためにデジタルデータストレージ内に格納され得るデータセットを指す。プログラムを作成した後に、そのプログラムを、1つ以上のフィールドに対して概念的に適用してもよく、そのプログラムへの参照を、フィールドを識別するデータと関連付けてデジタルストレージ内に格納してもよい。よって、複数の異なるフィールドに対して同じ窒素散布に関する同一データを手動で入力することに代えて、ユーザコンピュータは、特定の窒素散布を示すプログラムを作成してもよく、その後、そのプログラムを、複数の異なるフィールドに対して適用してもよい。例えば、
図5の予定表ビューでは、上の2つの予定表は、「春に散布する」プログラムが選択されており、これは、4月上旬における150ポンド/acでの窒素散布を含む。データ管理手段は、プログラムを編集するためのインターフェースを提供してもよい。一実施形態では、特定のプログラムが編集されたときには、特定のプログラムを選択した各フィールドが編集される。例えば、
図5では、「春に散布する」プログラムが、窒素散布を130ポンド/acへと低減するように編集された場合には、上の2つのフィールドは、編集されたプログラムに基づいて、低減された窒素散布によって更新されてもよい。
【0045】
一実施形態では、プログラムが選択されているフィールドに対しての編集を受領したことに応答して、データ管理手段は、選択されたプログラムに対するフィールドの対応関係を削除する。例えば、
図5の上部フィールドに対して窒素散布が追加された場合には、インターフェースは、「春に散布する」プログラムがもはや上部フィールドに対して適用されていないことを示すように、更新してもよい。4月上旬における窒素散布は残り得るけれども、「春に散布する」プログラムへの更新は、4月における窒素散布を変更しないこととなる。
【0046】
図6は、データ入力のための計算表ビューに関する例示的な実施形態を図示している。
図6に図示された表示を使用して、ユーザは、1つ以上のフィールドに関する情報を作成して編集することができる。データ管理手段は、
図6に示すように、窒素、播種、慣行、および土壌に関する情報を入力するための計算表を含んでもよい。特定のアイテムを編集するために、ユーザコンピュータは、計算表内において特定の入力を選択してもよく、その値を更新してもよい。例えば、
図6は、第2フィールドに関する目標収穫量の更新が進行中であることを図示している。加えて、ユーザコンピュータは、1つ以上のプログラムを適用するために、1つ以上のフィールドを選択してもよい。特定のフィールドに関するプログラムの選択を受領したことに応答して、データ管理手段は、選択されたプログラムに基づいて、特定のフィールドに対する入力を自動的に完了させてもよい。予定表ビューの場合と同様に、データ管理手段は、プログラムの更新を受領したことに応答して、特定のプログラムに関連する各フィールドの入力を更新してもよい。加えて、データ管理手段は、フィールドに関する1つの入力に対して編集を受領したことに応答して、そのフィールドに対しての選択されたプログラムの対応関係を削除してもよい。
【0047】
一実施形態では、モデルデータおよびフィールドデータは、モデルデータフィールドデータリポジトリ160内に格納される。モデルデータは、1つ以上のフィールドに対して作成されたデータモデルを含む。例えば、作物モデルは、1つ以上のフィールド上における作物の開発に関してデジタル的に構築されたモデルを含んでもよい。「モデル」とは、この文脈では、互いに関連付けられた実行可能な命令およびデータ値の電子的なデジタル保存されたセットを指し、これらの命令およびデータ値は、指定された入力値に基づく解決のために、プログラム的なまたは他のデジタル的な要請や呼び出しや要求を受領して応答することができ、これにより、とりわけ、コンピュータ実装された推奨、出力データ表示、または機械制御の基礎となる1つ以上の保存されたまたは計算された出力値をもたらすことができる。当業者であれば、数式を使用してモデルを表現することが便利だと考えるけれども、そのような表現形式は、本明細書で開示するモデルを抽象的な概念に限定するものではなく、その代わりに、本明細書における各モデルは、コンピュータを使用してモデルを実装する保存された実行可能な命令およびデータの形式で、コンピュータ内に実用的なアプリケーションを有している。モデルは、1つ以上のフィールド上における過去のイベントに関するモデル、1つ以上のフィールドの現在の状態に関するモデル、および/または、1つ以上のフィールド上における予測されるイベントに関するモデル、を含んでもよい。モデルデータおよびフィールドデータは、メモリ内におけるデータ構造として、データベーステーブル内内における行として、フラットファイルまたは計算表として、あるいは、他の形式の格納されたデジタルデータとして、格納されてもよい。
【0048】
一実施形態では、農業インテリジェンスコンピュータシステム130は、分類モデル管理サーバコンピュータ(サーバ)170を含むようにプログラムされる。サーバ170は、モデル構築命令174、モデル実行命令176、および、ユーザインターフェース命令178、を含むようにさらに構成される。
【0049】
いくつかの実施形態では、モデル構築命令174は、植物画像から複数のサイズの症状を有した植物病害を認識するために、訓練セットを組み立てるとともに、それら訓練セットからデジタルモデルを構築するための、コンピュータ実行可能な命令を提供する。各デジタルモデルは、同様のサイズの症状を有した植物病害を認識するように設計されている。したがって、各訓練セットは、植物の葉内において、明確な視野に対応したあるいは明確なサイズの領域に対応した画像を含む。モデル構成命令172は、スライディングウィンドウを使用して、所与の画像を、訓練セットのための個々の領域へと、具体的に分割するためのコンピュータ実行可能な命令を提供する。各デジタルモデルは、新たな画像を、植物病害に対応したクラスまたは健全状態に対応したクラスあるいは複数の植物病害のキャッチコール組合せに対応したクラスという複数のクラスのうちの1つのクラスへと分類する深層学習アーキテクチャを使用して、実装することができる。
【0050】
いくつかの実施形態では、モデル実行命令176は、分類のためにデジタルモデルを新たな画像に対して適用するためのコンピュータ実行可能な命令を提供する。新たな画像の各々は、1つ以上の植物病害に関する複数のサイズの症状を写している新たな植物写真とすることができる。明確な第1範囲のサイズの症状を有した第1病害群を認識するための第1デジタルモデルが、新たな画像に対して適用される。より具体的には、新たな画像を、必要に応じて拡大縮小することができ、新たな画像の異なる第1領域を、第1デジタルモデルを使用して、第1群をなす複数の植物病害のうちの1つに対応したクラスへとまたは健全状態クラスへとあるいは他のすべての植物病害に関する包括クラスへと、分類することができる。各第1領域のサイズは、明確な第1範囲のサイズと相関することとなる。次に、明確な第2範囲のサイズの症状を有した第2病害群を認識するための第2デジタルモデルが、包括クラスへと分類された第1領域の組合せに対して適用される。第1デジタルモデルに関連する残りのプロセスは、同様に、新たな画像のすべての領域が植物病害の1つに対応した少なくとも1つのクラスへと分類されるまで、第2デジタルモデルを使用してあるいは追加的なデジタルモデルを使用して、実行することができる。
【0051】
いくつかの実施形態では、ユーザインターフェース命令178は、他のデバイスとの通信を管理するためのコンピュータ実行可能な命令を提供する。通信は、画像ソースから訓練目的の初期画像データを受領することと、ユーザデバイスから分類のための新たな写真を受領することと、新たな写真に関する分類結果をユーザデバイスに対して送信することあるいは他のコンピューティングデバイスに対してデジタルモデルを送信することと、を含んでもよい。
【0052】
サーバ170の各構成要素は、農業インテリジェンスコンピュータシステム130内の、RAMなどの、メインメモリの1つ以上のページセットであり、実行可能な命令が内部へとロードされるとともに、実行されたときには、農業インテリジェンスコンピューティングシステムに、それらモジュールを参照して本明細書において説明する機能または操作を実行させる、メインメモリの1つ以上のページセットを含む。例えば、モデル構築モジュール174は、実行されたときには、本明細書において説明する位置選択機能を実行させる命令を含む、RAM内のページセットを含んでもよい。命令は、CPUの命令セット内の機械実行可能コードであってもよく、JAVA、C、C++、OBJECTIVE-C、あるいは、任意の他の人間が読み取り可能なプログラミング言語もしくは環境、で書かれたソースコードに基づいて、JAVASCRIPTや他のスクリプト言語によるスクリプトと一緒に、および他のプログラミングソーステキストと一緒に、単独であるいは組み合わせて、コンパイルされてもよい。「ページ」という用語は、メインメモリ内の任意の領域を広義に指すことを意図しており、システム内で使用される特定の用語は、メモリアーキテクチャまたはプロセッサアーキテクチャに応じて相違してもよい。別の実施形態では、サーバ170の各構成要素は、また、農業インテリジェンスコンピュータシステム130内のあるいは別のリポジトリシステム内の、不揮発性RAMまたはディスクストレージなどの大容量ストレージデバイス内にデジタル的に格納されている、ソースコードからなる1つ以上のファイルまたはプロジェクトを表してもよく、これらのファイルまたはプロジェクトは、コンパイルされたときにはあるいは解釈されたときには、実行可能な命令を生成し、この命令は、実行されたときには、農業インテリジェンスコンピューティングシステムに、それらのモジュールを参照して本明細書において説明する機能または操作を実行させる。言い換えれば、図示した図は、プログラマまたはソフトウェア開発者が、農業インテリジェンスコンピュータシステム130による実行のために、実行ファイルへのその後のコンパイル、またはバイトコードもしくはそれに相当するものへの解釈のために、ソースコードを編成および配置する態様を表してもよい。
【0053】
ハードウェア/仮想化層150は、例えば
図4に関連して図示して説明するように、1つ以上の中央処理装置(CPUs)、メモリコントローラ、ならびに、揮発性または不揮発性メモリや、ディスクなどの不揮発性ストレージや、I/Oデバイスまたはインターフェースなどのコンピュータシステムの他のデバイスや構成要素や構成部材、を含む。この層150は、また、仮想化、コンテナ化、または他の技術、をサポートするように構成されたプログラムされた命令を含んでもよい。
【0054】
明確な例を図示する目的で、
図1は、特定の機能要素の限られた数の実例を示している。しかしながら、他の実施形態では、任意の数のそのような要素が存在してもよい。例えば、実施形態では、異なるユーザに関連付けられた数千個のまたは数百万個の異なるモバイルコンピューティングデバイス104を使用してもよい。さらに、システム130および/または外部データサーバコンピュータ108は、物理機械または仮想機械の、2つ以上のプロセッサ、コア、クラスタ、またはインスタンスを使用して実装されてもよく、離散的な位置で構成される、あるいは、データセンタや共有コンピューティング施設やクラウドコンピューティング施設内において他の構成要素と一緒に配置される。
【0055】
2.2.アプリケーションプログラムの概要
【0056】
一実施形態では、1つ以上の汎用コンピュータ内へとロードされてその1つ以上の汎用コンピュータを使用して実行される1つ以上のコンピュータプログラムまたは他のソフトウェア要素を使用して、本明細書において説明する機能を実装することにより、その汎用コンピュータを、特定の機械として、あるいは、本明細書において説明する機能を実行するように特別に構成されたコンピュータとして、構成することとなる。さらに、本明細書でさらに説明するフロー図の各々は、単独であるいは本明細書の散文におけるプロセスおよび機能の説明と組み合わせて、説明する機能を実行するためにコンピュータまたはロジックをプログラムするために使用され得るアルゴリズムや計画やまたは指示として、機能してもよい。言い換えれば、本明細書におけるすべての散文テキストと、すべての図面の図示とは、一緒になって、このタイプの発明および開示に適した技術レベルを与えられた当業者の技術および知識と組み合わせて、本明細書において説明する機能を実行するように当業者がコンピュータをプログラムすることを可能とするのに充分なアルゴリズムや計画やまたは指示に関する開示を提供することを意図している。
【0057】
一実施形態では、ユーザ102は、オペレーティングシステムと1つ以上のアプリケーションプログラムすなわちアプリとによって構成されたフィールド管理コンピューティングデバイス104を使用して、農業インテリジェンスコンピュータシステム130と対話し、その場合、フィールド管理コンピューティングデバイス104は、また、プログラム制御またはロジック制御の下で独立的かつ自動的に農業インテリジェンスコンピュータシステムと相互運用してもよく、直接的なユーザ対話は、常に必要ではない。フィールド管理コンピューティングデバイス104とは、スマートフォン、PDA、タブレットコンピューティングデバイス、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、あるいは、情報を送受信し得るとともに本明細書において説明する機能を実行し得る任意の他のコンピューティングデバイス、のうちの1つ以上のものを広義的に表す。フィールド管理コンピューティングデバイス104は、フィールド管理コンピューティングデバイス104上に格納されたモバイルアプリケーションを使用してネットワークを介して通信してもよく、いくつかの実施形態では、このデバイスは、ケーブル113またはコネクタを使用して、センサ112および/またはコントローラ114に対して結合されてもよい。特定のユーザ102は、一度に2つ以上のフィールド管理コンピューティングデバイス104を、所有または操作または所持してもよく、それらフィールド管理コンピューティングデバイス104を、システム130に関連して使用してもよい。
【0058】
モバイルアプリケーションは、ネットワークを介して、1つ以上のモバイルコンピューティングデバイスに対して、クライアント側の機能を提供してもよい。例示的な実施形態では、フィールド管理コンピューティングデバイス104は、ウェブブラウザまたはローカルクライアントアプリケーションまたはアプリを介して、モバイルアプリケーションに対してアクセスしてもよい。フィールド管理コンピューティングデバイス104は、HTTP、XML、および/またはJSON、などのウェブベースのプロトコルまたはフォーマットを使用して、もしくはアプリ固有のプロトコルを使用して、1つ以上のフロントエンドサーバに対してデータを送信してもよく、また、1つ以上のフロントエンドサーバからデータを受信してもよい。例示的な実施形態では、データは、モバイルコンピューティングデバイス内へと入力された、フィールドデータなどの、要求およびユーザ情報の形態をとってもよい。いくつかの実施形態では、モバイルアプリケーションは、フィールド管理コンピューティングデバイス104上における、無線信号のマルチラテレーション、全地球測位システム(GPS)、WiFi測位システム、またはモバイル測位の他の方法、などの標準的な追跡技法を使用してフィールド管理コンピューティングデバイス104の位置を決定する位置追跡用のハードウェアおよびソフトウェアと相互作用する。いくつかの場合では、デバイス104および/またはユーザ102および/または1つ以上のユーザアカウントに関連する位置データまたは他のデータは、デバイスのオペレーティングシステムへの質問によって取得されてもよく、もしくは、デバイス上のアプリに、オペレーティングシステムからデータを取得するように要求することによって、取得されてもよい。
【0059】
一実施形態では、フィールド管理コンピューティングデバイス104は、限定するものではないが、1つ以上のフィールドの地理的位置、1つ以上のフィールドに関する耕耘情報、1つ以上のフィールド内に播種された作物、および1つ以上のフィールドから抽出された土壌データ、のうちの1つ以上を表すデータ値を含むフィールドデータ106を、農業インテリジェンスコンピュータシステム130に対して送信する。フィールド管理コンピューティングデバイス104は、1つ以上のフィールドのデータ値を指定するユーザ102からのユーザ入力に応答して、フィールドデータ106を送信してもよい。加えて、フィールド管理コンピューティングデバイス104は、1つ以上のデータ値がフィールド管理コンピューティングデバイス104に対して利用可能になったときには、フィールドデータ106を自動的に送信してもよい。例えば、フィールド管理コンピューティングデバイス104は、灌漑センサおよび/または灌漑コントローラを含む遠隔センサ112および/またはアプリケーションコントローラ114に対して通信可能に結合されてもよい。アプリケーションコントローラ114が1つ以上のフィールド上へと水を放出したことを示すデータを受領したことに応答して、フィールド管理コンピューティングデバイス104は、1つ以上のフィールド上へと水が放出されたことを示すフィールドデータ106を、農業インテリジェンスコンピュータシステム130に対して送信してもよい。本開示で識別されるフィールドデータ106は、HTTP上のパラメータ化されたURLを使用して、もしくは別の適切な通信プロトコルまたはメッセージングプロトコルを使用して、コンピューティングデバイスどうしの間で通信される電子デジタルデータを使用して入力および通信されてもよい。
【0060】
モバイルアプリケーションの商業的な一例は、カリフォルニア州サンフランシスコのThe Climate Corporationから市販されているCLIMATE FIELDVIEWである。CLIMATE FIELDVIEWアプリケーションは、あるいは他のアプリケーションは、本開示の出願日よりも前に開示されていなかった特徴量、機能、およびプログラミングを含むように改変または拡張または適応されてもよい。一実施形態では、モバイルアプリケーションは、統合されたソフトウェアプラットフォームを含み、栽培者のフィールドに関する過去データを、栽培者が比較を希望する任意の他のデータに対して組み合わせることのために、栽培者が、自分の操作に関して事実に基づいた決定を可能とする。組合せおよび比較は、リアルタイムで実行されてもよく、科学的なモデルに基づいているために、可能性のあるシナリオを提供して、栽培者は、より良好でかつより情報に基づいた意思決定を行うことができる。
【0061】
図2は、例示的なモバイルアプリケーションが実行のためにロードされたときの、メインメモリ内の命令セットに関する例示的なロジック編成を示す2つの図である。
図2では、名称が付された各要素は、RAMまたは他のメインメモリの1つ以上のページにおける、あるいは、ディスクストレージまたは他の不揮発性ストレージの1つ以上のブロックにおける、フィールドと、それらフィールド内におけるプログラム命令を示している。一実施形態では、ビュー(a)において、モバイルコンピュータアプリケーション200は、アカウント-フィールド-データ取り込み-共有命令202と、概要および警報命令204と、デジタルマップブック命令206と、種子および播種命令208と、窒素命令210と、気象命令212と、フィールド衛生命令214と、性能命令216と、を含む。
【0062】
一実施形態では、モバイルコンピュータアプリケーション200は、手動アップロードまたはAPIsを介してサードパーティシステムからフィールドデータを受領して変換しさらに取り込むようにプログラムされた、アカウント、フィールド、データ取り込み、共有命令202を含む。データタイプは、とりわけ、フィールドの境界、収穫量マップ、播種時のマップ、土壌テストの結果、散布時のマップ、および/または、管理ゾーン、を含んでもよい。データフォーマットは、とりわけ、形状ファイル、サードパーティのネイティブデータフォーマット、および/または、農場管理情報システム(FMIS)からのエクスポート、を含んでもよい。データの受領は、手動アップロードを介して、または、添付ファイル付き電子メールを介して、または、モバイルアプリケーションに対してデータを押し込む外部APIsを介して、または、モバイルアプリケーション内へとデータを取り込むために外部システムのAPIsを呼び出す命令を介して、行われてもよい。一実施形態では、モバイルコンピュータアプリケーション200は、データ受信ボックスを含む。データ受信ボックスの選択を受領したことに応答して、モバイルコンピュータアプリケーション200は、手動でデータファイルをアップロードするとともにアップロードされたファイルをデータ管理手段へとインポートするためのグラフィカルユーザインターフェースを表示してもよい。
【0063】
一実施形態では、デジタルマップブック命令206は、デバイスメモリ内に格納されたフィールドマップデータ層を含み、データ可視化ツールおよび地理空間フィールドノートを使用してプログラムされる。これにより、栽培者に対して、参照、記録、およびフィールド性能の視覚的洞察のために、手元にある便利な情報が提供される。一実施形態では、概要および警報命令204は、栽培者にとって何が重要であるかについての操作全体のビュー、ならびに、行動を起こすためのあるいは特定の問題にフォーカスするためのタイムリーな推奨、を提供するようにプログラムされる。これにより、栽培者は、注意が必要なものに時間を集中することができ、時間を節約して、シーズンを通して収穫量を維持することができる。一実施形態では、種子および播種命令208は、科学的モデルおよび経験的データに基づいて、種子選択、ハイブリッド配置、および、可変レート(VR)スクリプト作成を含むスクリプト作成、のためのツールを提供するようにプログラムされる。これにより、栽培者は、最適化された種子の購入、配置、および個体数を通して、収穫量または投資収益率を最大化することができる。
【0064】
一実施形態では、スクリプト生成命令205は、可変レート(VR)肥沃度スクリプトを含むスクリプトを生成するためのインターフェースを提供するようにプログラムされる。このインターフェースにより、栽培者は、栄養剤の散布、播種、および灌漑、などのフィールド実装のためのスクリプトを作成することができる。例えば、播種スクリプトインターフェースは、播種用の種子タイプを特定するためのツールを含んでもよい。種子タイプの選択を受領したときには、モバイルコンピュータアプリケーション200は、デジタルマップブック命令206の一部として作成されたフィールドマップデータ層などの複数の管理ゾーンへと分割された1つ以上のフィールドを表示してもよい。一実施形態では、管理ゾーンは、土壌ゾーンと、加えて、各土壌ゾーンを識別するパネルと、各土壌に関しての土壌名やテクスチャや排水と、あるいは他のフィールドデータと、を含む。モバイルコンピュータアプリケーション200は、また、1つ以上のフィールドのマップ上に、土壌ゾーン等の管理ゾーンを描画するためのグラフィックツールなど、それらを編集したりまたは作成したりするためのツールを表示してもよい。播種手順は、すべての管理ゾーンに対して適用されてもよく、また、異なる播種手順が、管理ゾーンの異なるサブセットに対して適用されてもよい。スクリプトが作成されるときには、モバイルコンピュータアプリケーション200は、スクリプトを、アーカイブまたは圧縮されたフォーマットなど、アプリケーションコントローラによって読み取り可能なフォーマットでダウンロードできるようにしてもよい。追加的におよび/または代替的に、スクリプトは、モバイルコンピュータアプリケーション200からキャブコンピュータ115に対して直接的に送信されてもよく、および/または、1つ以上のデータサーバに対してアップロードされ、更なる使用のために保存されてもよい。
【0065】
一実施形態では、窒素命令210は、作物に対しての窒素の利用可能性を可視化することによって、窒素決定を通知するツールを提供するようにプログラムされる。これにより、栽培者は、シーズン中に最適化された窒素散布を通して、収穫量または投資収益率を最大化することができる。例示的なプログラム機能は、とりわけ、施肥ゾーンの描画を可能とするSSURGO画像などの画像、および/または、センサから取得したデータなどのサブフィールド土壌データから生成された画像を、大きな空間解像度(センサの近接性および解像度に応じてミリメートル以下の細かさ)で表示すること、既存の栽培者が規定したゾーンをアップロードすること、植物の栄養素の利用可能性のグラフを、および/または複数のゾーンにわたって窒素散布を調整できるようにするためのマップを、提供すること、機械を駆動するためのスクリプトを出力すること、大量のデータを入力および調整するためのツール、ならびに/もしくは、データを可視化するためのマップ、を含む。「大量のデータ入力」とは、この文脈では、データを一度入力し、その後、システム内で規定された複数のフィールドおよび/またはゾーンに関して同じデータを適用することを意味してもよく、例示的なデータは、同じ栽培者の多くのフィールドおよび/またはゾーンに関して同じである窒素散布データを含んでもよいが、このような大量のデータ入力は、任意のタイプのフィールドデータを、モバイルコンピュータアプリケーション200内へと入力することに対して適用される。例えば、窒素命令210は、窒素散布プログラムおよび窒素慣行プログラムの規定を受け入れるように、そして、それらプログラムを複数のフィールドにわたって適用することを指定するユーザ入力を受け入れるようにプログラムされてもよい。「窒素散布プログラム」とは、この文脈では、とりわけ、名前、カラーコードまたは他の識別子、1つ以上の散布日、各散布日に関しての材料または製品のタイプおよび量、注入またはブロードキャストなどの散布または組み込みの方法、および/または、散布対象である散布日ごとのまたは作物ごとのまたはハイブリッドごとの散布量または散布率、を関連付ける、保存された名前付きのデータセットを指す。「窒素慣行プログラム」とは、この文脈では、慣行名、以前の作物、耕耘システム、主要な耕耘日、使用された1つ以上の以前の耕耘システム、使用された肥料などの散布タイプに関する1つ以上の指標、を関連付ける、保存された名前付きのデータセットを指す。窒素命令210は、また、指定された窒素の植物使用の予測を示すとともに余剰または不足が予測されるかどうかを示す窒素グラフを生成して表示させるようにプログラムされてもよく、いくつかの実施形態では、異なる色のインジケータでもって、余剰度合いまたは不足度合いを知らせてもよい。一実施形態では、窒素グラフは、複数の行を含むコンピュータディスプレイデバイス内のグラフィックディスプレイを含み、各行は、フィールドに関連付けられていて、フィールドを識別しており、データは、フィールドにどのような作物が播種されているか、フィールドサイズ、フィールドの位置、およびフィールドの周囲のグラフィック表現を指定し、各行内には、月名に相関したポイントでの各窒素散布および量を指定するグラフィックインジケータを有した月別の予定表と、色が度合いを示す余剰または不足に関する数値的なおよび/または色付きのインジケータと、を含む。
【0066】
一実施形態では、窒素グラフは、ユーザが自身の窒素グラフを最適化できるように、窒素プログラムや播種プログラムや慣行プログラムを動的に変更するための、ダイヤルまたはスライダバーなどの1つ以上のユーザ入力特徴物を含んでもよい。その後、ユーザは、最適化された窒素グラフおよび関連する窒素プログラムや播種プログラムや慣行プログラムを使用して、可変レート(VR)肥沃度スクリプトを含む1つ以上のスクリプトを実装してもよい。窒素命令210は、また、指定された窒素の植物使用の予測を示すとともに余剰または不足が予測されるかどうかを示す窒素マップを生成して表示させるようにプログラムされてもよく、いくつかの実施形態では、異なる色のインジケータが、余剰度合いまたは不足度合いを知らせてもよい。窒素マップは、指定された窒素の植物使用の予測、および余剰または不足が予測されるかどうかを、過去および未来の異なる時間(日ごと、週ごと、月ごと、または年ごと、など)について、余剰または不足に関して、数値的な指標を使用して、および/または、色が度合いを示すようにして色付きの指標を使用して、表示してもよい。一実施形態では、窒素マップは、ダイヤルまたはスライダバーなどの1つ以上のユーザ入力特徴物を含み、これにより、窒素プログラムや播種プログラムや慣行プログラムを動的に変更することができ、これにより、ユーザは、不足に対する余剰の好ましい量を取得するなどのように、自身の窒素マップを最適化することができる。その後、ユーザは、自身の最適化された窒素マップおよび関連する窒素プログラムや播種プログラムや慣行プログラムを使用して、可変レート(VR)肥沃度スクリプトを含む1つ以上のスクリプトを実装してもよい。他の実施形態では、窒素命令210と同様の命令を、他の栄養素(リンおよびカリウムなど)の散布プログラム、農薬の散布プログラム、および灌漑プログラムプログラムに関して、使用することができる。
【0067】
一実施形態では、気象命令212は、フィールド固有の最新の気象データおよび予測された気象情報を提供するようにプログラムされる。これにより、栽培者は、時間を節約し得るとともに、日々の操作上の決定に関して効率的な統合表示を行うことができる。
【0068】
一実施形態では、フィールド衛生命令214は、シーズン内の作物の変動および潜在的な懸念を強調する遠隔センシング画像をタイムリーに提供するようにプログラムされる。例示的なプログラム機能は、とりわけ、可能性のある雲または雲の影を識別するための雲チェック、フィールド画像に基づく窒素指数の決定、例えばフィールド衛生やビューや偵察メモの共有に関連したものを含めた偵察層のグラフィック的可視化、ならびに/もしくは、複数の情報源からの衛星画像のダウンロードおよび栽培者のための画像の優先ランク付け、を含む。
【0069】
一実施形態では、性能命令216は、評価、洞察、および決定のために、農場でのデータを使用した、報告ツール、分析ツール、および洞察ツール、を提供するようにプログラムされる。これにより、栽培者は、投資利益率が以前のレベルであった理由についての事実に基づく結論を通して、また、収穫量制限要因についての洞察を通して、次年度の改良された成果を追求することができる。性能命令216は、1つ以上のネットワーク109を介して、農業インテリジェンスコンピュータシステム130および/または外部データサーバコンピュータ108で実行されるバックエンド分析プログラムに対して通信するようにプログラムされてもよく、とりわけ、収穫量、収穫量差、ハイブリッド、個体数、SSURGOゾーン、土壌試験特性、または標高、などの指標を分析するように構成される。プログラムされた報告および分析は、とりわけ、収穫量変動の分析、処理効果の推定、多数の栽培者から収集した匿名データに基づく他の栽培者に対する収穫量およびその他の指標のベンチマーク、あるいは、種子および播種に関するデータ、を含んでもよい。
【0070】
このように構成された命令を有したアプリケーションは、同じ一般的なユーザインターフェースの外観を維持しながら、異なるコンピューティングデバイスプラットフォーム向けに実装されてもよい。例えば、モバイルアプリケーションは、タブレット上で、または、スマートフォン上で、または、クライアントコンピュータでブラウザを使用してアクセスされるサーバコンピュータ上で、実行するようにプログラムされてもよい。さらに、タブレットコンピュータまたはスマートフォン用に構成されたモバイルアプリケーションは、キャブコンピュータ115の表示および処理能力に適したフルアプリ経験またはキャブアプリ経験を提供してもよい。例えば、ここで
図2のビュー(b)を参照すると、一実施形態では、キャブコンピュータアプリケーション220は、マップ-キャブ命令222と、遠隔ビュー命令224と、データ収集および転送命令226と、機械警報命令228と、スクリプト転送命令230と、偵察-キャブ命令232と、を含んでもよい。ビュー(b)の命令に関するコードベースは、ビュー(a)の場合と同じであってもよく、コードを実装する実行ファイルは、それらが実行されているプラットフォームのタイプを検出するように、そして、グラフィカルユーザインターフェースを介して、キャブプラットフォームまたはフルプラットフォームに適した機能のみを公開するように、プログラムされてもよい。このアプローチにより、システムは、キャブ内の環境とキャブの異なる技術環境とに適した、明確に異なるユーザ経験を認識することができる。マップ-キャブ命令222は、機械操作を指示するのに有用なフィールドや農場や地域のマップビューを提供するようにプログラムされてもよい。遠隔ビュー命令224は、無線ネットワーク、有線コネクタまたはアダプタ、および同種のものを介してシステム130に対して接続された他のコンピューティングデバイスに対して、リアルタイムでまたはほぼリアルタイムで、機械活動のビューを、オンとする、管理する、および提供するようにプログラムされてもよい。データ収集および転送命令226は、センサおよびコントローラで収集されたデータの転送を、無線ネットワーク、有線コネクタまたはアダプタ、および同種のものを介してシステム130に対して、オンとする、管理する、および提供するようにプログラムされてもよい。機械警報命令228は、キャブに対して関連付けられた機械またはツールの操作に関する問題点を検出するように、そして、オペレータ警報を生成するように、プログラムされてもよい。スクリプト転送命令230は、機械の操作またはデータ収集を指示するように構成された命令のスクリプトを転送するように構成されてもよい。偵察キャブ命令232は、フィールド内におけるフィールド管理コンピューティングデバイス104の位置または農業装置111の位置またはセンサ112の位置に基づいて、システム130から受領した位置ベースの警報および情報を表示するように、そして、フィールド内の農業装置111の位置またはセンサ112の位置に基づいて、システム130へと、位置ベースの偵察観測の転送を、取り込むように、管理するように、および提供するように、プログラムされてもよい。
【0071】
2.3.コンピュータシステムへのデータ取り込み
【0072】
一実施形態では、外部データサーバコンピュータ108は、1つ以上のフィールドに関する土壌組成を表す土壌データと、1つ以上のフィールド上における温度および降水量を表す気象データと、を含む外部データ110を格納する。気象データは、過去および現在の気象データと、将来の気象データの予測と、を含んでもよい。一実施形態では、外部データサーバコンピュータ108は、異なる事業体によってホストされる複数のサーバを含む。例えば、第1サーバは、土壌組成データを含有してもよく、第2サーバは、気象データを含んでもよい。これに加えて、土壌組成データは、複数のサーバ内に格納されてもよい。例えば、1つのサーバは、土壌中の砂、泥、および粘土の割合を表すデータを格納してもよく、第2サーバは、土壌中の有機物(OM)の割合を表すデータを格納してもよい。
【0073】
一実施形態では、遠隔センサ112は、1つ以上の観測値を生成するようにプログラムまたは構成された1つ以上のセンサを含む。遠隔センサ112は、人工衛星などの空中センサ、車両センサ、播種機器センサ、耕耘センサ、肥料または殺虫剤散布センサ、ハーベスタセンサ、ならびに、1つ以上のフィールドからデータを受領し得る任意の他の実装物、であってもよい。一実施形態では、アプリケーションコントローラ114は、農業インテリジェンスコンピュータシステム130から命令を受領するようにプログラムまたは構成される。アプリケーションコントローラ114は、また、農業用車両または農業用実装物の動作パラメータを制御するようにプログラムまたは構成されてもよい。例えば、アプリケーションコントローラは、トラクタ、播種機器、耕耘機器、肥料または殺虫剤機器、ハーベスタ機器、あるいは、水バルブなどの他の農場実装物、などの車両の動作パラメータを制御するようにプログラムまたは構成されてもよい。他の実施形態は、センサとコントローラとの任意の組合せを使用してもよく、その中で、以下のものは、選択された例にすぎない。
【0074】
システム130は、共有データベースシステムに対してデータを提供した多数の栽培者から、大量に、ユーザ102の制御において、データを取得または取り込んでもよい。データを取得するこの形態は、1つ以上のユーザ制御下でのコンピュータ操作が、システム130による使用のためにデータを取得するように要求またはトリガされることのために、「手動データ取り込み」と称されてもよい。一例として、カリフォルニア州サンフランシスコのThe Climate Corporationから市販されているCLIMATE FIELDVIEWアプリケーションを操作することにより、リポジトリ160内に格納するために、データをシステム130へとエクスポートしてもよい。
【0075】
例えば、種子モニタシステムは、播種装置の構成要素を制御し得るとともに、登録および/または診断のためのCANバックボーンおよびポイントツーポイント接続を含む信号ハーネスを介して、種子センサからの信号を含む播種データを取得することができる。種子モニタシステムは、キャブコンピュータ115を介してあるいはシステム130内の他のデバイスを介して、種子の間隔や個体数や他の情報をユーザに対して表示するようにプログラムまたは構成することができる。例は、米国特許第8,738,243号明細書および米国特許公開第20150094916号明細書に開示されており、本開示は、これらの他の特許開示の知識を前提としている。
【0076】
同様に、収穫量モニタシステムは、収穫量測定データをキャブコンピュータ115に対してまたはシステム130内の他のデバイスに対して送信するハーベスタ装置の収穫量センサを含んでもよい。収穫量モニタシステムは、コンバインまたは他のハーベスタ内における穀物水分測定値を取得するために、そして、これらの測定値を、キャブコンピュータ115を介してまたはシステム130内の他のデバイスを介してユーザに対して送信するために、1つ以上の遠隔センサ112を利用してもよい。
【0077】
一実施形態では、本明細書の他の場所で説明するタイプの任意の移動車両または移動装置と共に使用され得るセンサ112の例は、運動学的センサおよび位置センサを含む。運動学的センサは、レーダーまたは車輪速度センサなどの速度センサ、加速度計、またはジャイロ、のいずれかを含んでもよい。位置センサは、GPSレシーバまたはトランシーバ、あるいは、とりわけ近くのWiFiホットスポットに基づいて位置を決定するようにプログラムされたWiFiベースの位置アプリまたはマッピングアプリ、を含んでもよい。
【0078】
一実施形態では、トラクタまたは他の移動車両と共に使用され得るセンサ112の例は、エンジン速度センサ、燃料消費センサ、GPSまたはレーダー信号と相互作用するエリアカウンタまたは距離カウンタ、PTO(パワーテイクオフ)速度センサ、圧力または流量などの油圧パラメータを検出するように構成されたトラクタ油圧センサ、および/または、油圧ポンプ速度センサや車輪速度センサや車輪スリップセンサ、を含む。一実施形態では、トラクタと共に使用され得るコントローラ114の例は、油圧方向コントローラおよび/または圧力コントローラおよび/または流量コントローラ、油圧ポンプ速度コントローラ、速度コントローラまたはガバナ、ヒッチ位置コントローラ、あるいは、自動操舵を提供する車輪位置コントローラ、を含む。
【0079】
一実施形態では、播種機、ドリル、または空気式播種機、などの種子播種機器と共に使用され得るセンサ112の例には、光学式センサや電磁式センサや衝撃センサとされ得る種子センサ、荷重ピンや荷重セルや圧力センサなどのダウンフォースセンサ、反射率センサや水分センサや電気伝導率センサや光学式残留物センサや温度センサなどの土壌特性センサ、播種深さセンサやダウンフォースシリンダ圧力センサやシードディスク速度センサやシード駆動モータエンコーダやシードコンベアシステム速度センサや真空レベルセンサなどの構成部材動作基準センサ、あるいは、光学式センサまたは他の電磁式センサまたは衝撃センサなどの農薬散布センサ、を含む。一実施形態では、そのような種子播種機器と共に使用され得るコントローラ114の例は、油圧シリンダに関連したバルブのためのコントローラなどのツールバーフォールドコントローラ、空気圧シリンダやエアバッグや油圧シリンダに関連したバルブのためのコントローラなどのダウンフォースコントローラであり、個々の列ユニットに対してまたは播種機フレーム全体に対してダウンフォースを適用するようにプログラムされたダウンフォースコントローラ、リニアアクチュエータなどの播種深さコントローラ、電気式シードメータ駆動モータや油圧式シードメータ駆動モータやスワス制御クラッチなどの計量コントローラ、種子メータ駆動モータなどのあるいは種子メータや中央バルクホッパーに対してのまたはそこからの種子または空気種子混合物の送出を選択的に許可または防止するようにプログラムされた他のアクチュエータなどのハイブリッド選択コントローラ、電気種子メータ駆動モータや油圧種子メータ駆動モータなどの計量コントローラ、ベルト種子送出コンベアモータのためのコントローラなどの種子コンベアシステムコントローラ、空気圧アクチュエータまたは油圧アクチュエータのためのコントローラなどのマーカコントローラ、もしくは、計量駆動コントローラやオリフィスサイズコントローラやオリフィス位置コントローラなどの農薬散布量コントローラ、を含む。
【0080】
一実施形態では、耕耘機器と共に使用され得るセンサ112の例は、シャンクまたはディスクなどのツールのための位置センサ、深さやギャング角度や横方向間隔を検出するように構成されたそのようなツールのためのツール位置センサ、ダウンフォースセンサ、あるいは、牽引力センサ、を含む。一実施形態では、耕耘機器と共に使用され得るコントローラ114の例は、ツールの深さやギャング角度や横方向間隔を制御するように構成されたコントローラなどのダウンフォースコントローラまたはツール位置コントローラを含む。
【0081】
一実施形態では、播種機上のスターター肥料システムや土壌中肥料散布機や肥料噴霧機などの、肥料や殺虫剤や殺菌剤や同種のものを散布する装置に関連して使用され得るセンサ112の例は、流量センサまたは圧力センサなどの流体システム基準センサ、どのスプレーヘッドバルブまたはどの流体ラインバルブが開放されているかを示すセンサ、充填レベルセンサなどの、タンクに関連したセンサ、部分的なまたはシステム全体に関する供給ラインセンサあるいは行固有の供給ラインセンサ、もしくは、噴霧機のブーム上に配置された加速度計などの運動学的センサ、を含む。一実施形態では、そのような装置と共に使用され得るコントローラ114の例は、ポンプ速度コントローラ、圧力や流量や方向やPWMや同種のものを制御するようにプログラムされたバルブコントローラ、もしくは、ブーム高さやサブソイラ深さやブーム位置などのための位置アクチュエータ、を含む。
【0082】
一実施形態では、ハーベスタと共に使用され得るセンサ112の例は、衝撃プレート歪みまたは位置センサや、静電容量式流量センサや、エレベータまたはオーガに関連した荷重センサや重量センサやトルクセンサや、光学式または他の電磁式の穀物高さセンサ、などの収穫量モニタ、静電容量式センサなどの穀物水分センサ、衝撃センサや光学式センサや静電容量式センサなどの穀物損失センサ、ヘッダ高さセンサやヘッダタイプセンサやデッキプレートギャップセンサやフィーダ速度センサやリール速度センサなどのヘッダ動作基準センサ、凹状クリアランスセンサやロータ速度センサやシュークリアランスセンサやシャファークリアランスセンサなどのセパレータ動作基準センサ、位置や動作や速度に関するオーガセンサ、あるいは、エンジン速度センサ、を含む。一実施形態では、ハーベスタと共に使用され得るコントローラ114の例は、ヘッダ高さやヘッダタイプやデッキプレートギャップやフィーダ速度やリール速度などの、構成部材に関するヘッダ動作基準コントローラ、凹状クリアランスやロータ速度やシュークリアランスやシャファークリアランスなどの特徴物のためのセパレータ動作基準コントローラ、あるいは、オーガの位置や動作や速度のためのコントローラ、を含む。
【0083】
一実施形態では、穀物カートと共に使用され得るセンサ112の例は、重量センサ、あるいは、オーガの位置や動作や速度のためのセンサ、を含む。一実施形態では、穀物カートと共に使用され得るコントローラ114の例は、オーガの位置や動作や速度のためのコントローラを含む。
【0084】
一実施形態では、センサ112およびコントローラ114の例は、無人航空機(UAV)装置または「ドローン」に設置されてもよい。そのようなセンサは、可視光や赤外や紫外や近赤外(NIR)や同種のものを含む電磁スペクトルの任意の範囲に有効な検出器を有したカメラ、加速度計、高度計、温度センサ、湿度センサ、ピトー管センサまたは他の対気速度センサまたは風速センサ、バッテリ寿命センサ、レーダーエミッタおよび反射レーダーエネルギー検出装置、他の電磁放射エミッタおよび反射電磁放射検出装置、を含んでもよい。そのようなコントローラは、誘導制御装置またはモータ制御装置、制御面コントローラ、カメラコントローラ、あるいは、上記のセンサのいずれかを起動したり操作したりそこからデータを取得したり管理したり構成したりするようにプログラムされたコントローラ、を含んでもよい。例は、米国特許出願第14/831,165号明細書に開示されており、本開示は、この他の特許開示の知識を前提としている。
【0085】
一実施形態では、センサ112およびコントローラ114は、土壌をサンプリングするとともに土壌化学試験と土壌水分試験と土壌に関連した他の試験とを実行するように構成またはプログラムされた土壌サンプリング測定装置に対して固定されてもよい。例えば、米国特許第8,767,194号明細書および米国特許第8,712,148号明細書に開示されている装置を使用してもよく、本開示は、これらの特許開示の知識を前提としている。
【0086】
一実施形態では、センサ112およびコントローラ114は、フィールドの気象条件を監視するための気象デバイスを含んでもよい。例えば、2017年8月16日付けで出願された米国特許出願第15/551,582号明細書に開示された装置を使用してもよく、本開示は、これらの特許開示の知識を前提としている。
【0087】
2.4.プロセスの概要-農学的モデルの訓練
【0088】
一実施形態では、農業インテリジェンスコンピュータシステム130は、農学的モデルを作成するようにプログラムまたは構成される。この文脈では、農学的モデルは、農業インテリジェンスコンピュータシステム130のメモリ内のデータ構造であり、1つ以上のフィールドに関する識別データおよび収穫データなどのフィールドデータ106を含む。農学的モデルは、また、フィールド上において1つ以上の作物の生育に影響を与え得る条件、または、1つ以上の作物の特性、のうちの、一方または双方を記述する、計算された農学的特性を含んでもよい。加えて、農学的モデルは、作物の推奨、灌漑の推奨、播種の推奨、肥料の推奨、殺菌剤の推奨、農薬の推奨、収穫の推奨、および、他の作物管理の推奨などの、農学的要因に基づく推奨を含んでもよい。農学的要因は、また、農学的収穫量などの、1つ以上の作物に関連した結果を推定するために使用されてもよい。作物の農学的収穫量は、生産される作物の量に関しての推定値であり、いくつかの例では、生産された作物から得られる収入または利益の推定値である。
【0089】
一実施形態では、農業インテリジェンスコンピュータシステム130は、事前構成された農学的モデルを使用することにより、1つ以上のフィールドに関して現在受領している位置情報および作物情報に関連した農学的特性を計算してもよい。事前構成された農学的モデルは、識別データ、収穫データ、肥料データ、および気象データを含むがこれらに限定されない、以前に処理されたフィールドデータに基づいている。事前構成された農学的モデルは、モデルの精度を確保するために、交差検証されてもよい。交差検証は、同じ場所においてまたは近くの場所において、降水量の推定値を、気象データを提供している雨量計またはセンサと比較したり、あるいは、窒素含有量の推定値を土壌サンプルの測定値と比較したり、するなどの、予測された結果を、フィールド上の実際の結果と比較する、グランドトゥルースとの比較を含んでもよい。
【0090】
図3は、農業インテリジェンスコンピュータシステムが、1つ以上のデータソースによって提供されたフィールドデータを使用して、1つ以上の事前構成された農学的モデルを生成するプログラムプロセスを示している。
図3は、これから説明する動作を実行するために農業インテリジェンスコンピュータシステム130の機能的構成要素をプログラミングするためのアルゴリズムまたは命令として機能してもよい。
【0091】
ブロック305において、農業インテリジェンスコンピュータシステム130は、1つ以上のデータソースから受領したフィールドデータに関して農学的データの前処理を実装するように構成またはプログラムされる。1つ以上のデータソースから受領したフィールドデータは、受領したフィールドデータ値に悪影響を及ぼし得る測定された外れ値を含む農学的データ内において、ノイズ、歪曲効果、および交絡因子を除去する目的で、前処理されてもよい。農学的データの前処理の実施形態は、外れデータ値と一般的に関連したデータ値の除去、他のデータ値を不必要に歪ませることが知られている特定の測定データポイントの除去、ノイズからの加算効果または乗算効果を除去または低減するために使用されるデータの平滑化技法または集約技法またはサンプリング技法、ならびに、正のデータ入力と負のデータ入力とを明確に区別するために使用される他のフィルタリング技法またはデータ導出技法、を含んでもよいけれども、これらに限定されない。
【0092】
ブロック310において、農業インテリジェンスコンピュータシステム130は、初期的な農学的モデル生成のために有効なデータセットを識別するために、前処理されたフィールドデータを使用してデータサブセットの選択を実行するように構成またはプログラムされる。農業インテリジェンスコンピュータシステム130は、遺伝的アルゴリズム法、全サブセットモデル法、逐次検索法、ステップワイズ回帰法、粒子群最適化法、およびアントコロニー最適化法、を含むがこれらに限定されない、データサブセット選択技法を実装してもよい。例えば、遺伝的アルゴリズム選択技法は、自然淘汰および遺伝学の進化原理に基づく適応型ヒューリスティック検索アルゴリズムを使用することにより、前処理された農学的データ内においてデータセットを決定して評価する。
【0093】
ブロック315において、農業インテリジェンスコンピュータシステム130は、フィールドデータセットの評価を実装するように構成またはプログラムされる。一実施形態では、特定のフィールドデータセットは、農学的モデルを作成し、作成された農学的モデルに対して特定の品質しきい値を使用することにより、評価される。農学的モデルは、限定するものではないが、リーブワンアウト交差検証を使用した二乗平均平方根誤差(RMSECV)、平均絶対誤差、および平均パーセンテージ誤差、などの1つ以上の比較技法を使用して、比較および/または検証を行ってもよい。例えば、RMSECVは、農学的モデルによって作成された予測された農学的特性値を、収集および分析された過去の農学的特性値と比較することによって、農学的モデルを交差検証することができる。一実施形態では、農学的データセットの評価ロジックは、構成された品質しきい値を満たさない農学的データセットが、将来のデータサブセット選択ステップ(ブロック310)時に使用されるフィードバックループとして使用される。
【0094】
ブロック320において、農業インテリジェンスコンピュータシステム130は、交差検証された農学的データセットに基づいて農学的モデルの作成を実装するように構成またはプログラムされる。一実施形態では、農学的モデルの作成は、事前構成された農学的データモデルを作成するために多変量回帰技法を実装してもよい。
【0095】
ブロック325において、農業インテリジェンスコンピュータシステム130は、将来のフィールドデータ評価のために、事前構成された農学的データモデルを格納するように構成またはプログラムされる。
【0096】
2.5.実装例-ハードウェアの概要
【0097】
一実施形態によると、本明細書において説明する技法は、1つ以上の特別目的コンピューティングデバイスによって実装される。特別目的コンピューティングデバイスは、技法を実行するように配線されてもよく、あるいは、技法を実行するように持続的にプログラムされた1つ以上の特定用途向け集積回路(ASICs)またはフィールドプログラマブルゲートアレイ(FPGAs)などのデジタル電子デバイスを含んでもよく、あるいは、ファームウェアやメモリや他のストレージやまたはこれらの組合せにおけるプログラム命令に従って技法を実行するようにプログラムされた1つ以上の汎用ハードウェアプロセッサを含んでもよい。このような特別目的コンピューティングデバイスは、また、技法を実現するために、カスタムハードワイヤードロジックまたはASICsまたはFPGAsを、カスタムプログラミングと組み合わせてもよい。特別目的コンピューティングデバイスは、デスクトップコンピュータシステム、ポータブルコンピュータシステム、ハンドヘルドデバイス、ネットワークデバイス、あるいは、技法を実現するためにハードワイヤードロジックおよび/またはプログラムロジックを組み込んだ他のデバイス、であってもよい。
【0098】
例えば、
図4は、本発明の一実施形態が実装され得るコンピュータシステム400を示すブロック図である。コンピュータシステム400は、情報を通信するためのバス402または他の通信機構と、情報を処理するためにバス402と結合されたハードウェアプロセッサ404と、を含む。ハードウェアプロセッサ404は、例えば、汎用マイクロプロセッサであってもよい。
【0099】
コンピュータシステム400は、また、情報を記憶するためにならびにプロセッサ404によって実行されるべき命令を記憶するために、バス402に対して結合された、ランダムアクセスメモリ(RAM)または他の動的ストレージなどのメインメモリ406を含む。メインメモリ406は、また、プロセッサ404によって実行されるべき命令の実行時に一時的な変数または他の中間情報を格納するために使用されてもよい。そのような命令は、プロセッサ404に対してアクセス可能な非一時的なストレージ媒体内に記憶されるときには、コンピュータシステム400を、命令で指定された操作を実行するようにカスタマイズされた特別目的の機械とする。
【0100】
コンピュータシステム400は、プロセッサ404のための静的な情報および命令を記憶するために、バス402に対して結合された読み取り専用メモリ(ROM)408または他の静的なストレージをさらに含む。磁気ディスク、光ディスク、またはソリッドステートドライブなどのストレージデバイス410が設けられ、情報および命令を格納するためにバス402に対して結合される。
【0101】
コンピュータシステム400は、コンピュータユーザに対して情報を表示するために、陰極線管(CRT)などのディスプレイ412に対してバス402を介して結合されてもよい。英数字キーおよび他のキーを含む入力デバイス414が、情報選択およびコマンド選択をプロセッサ404に対して伝達するために、バス402に対して結合される。ユーザ入力デバイスの別のタイプは、方向情報およびコマンド選択をプロセッサ404に対して通信するための、ならびに、ディスプレイ412上のカーソル移動を制御するための、マウスまたはトラックボールまたはカーソル方向キーなどのカーソル制御手段416である。この入力デバイスは、典型的には、第1軸(例えば、x)および第2軸(例えば、y)という2つの軸でもって2つの自由度を有し、デバイスが平面内の位置を指定することを可能とする。
【0102】
コンピュータシステム400は、カスタマイズされたハードワイヤードロジック、1つ以上のASICsまたはFPGAs、ファームウェアおよび/またはプログラムロジックを使用して、本明細書において説明する技法を実装してもよく、これらは、コンピュータシステムとの組合せにより、コンピュータシステム400を特殊目的機械とするあるいはそのようにプログラムする。一実施形態によれば、本明細書の技法は、プロセッサ404が、メインメモリ406に含まれる1つ以上の命令のうちの、1つ以上のシーケンスを実行したことに応答して、コンピュータシステム400によって実行される。そのような命令は、ストレージデバイス410などの別のストレージ媒体から、メインメモリ406内へと読み込まれてもよい。メインメモリ406に含まれる命令シーケンスの実行は、プロセッサ404に、本明細書において説明するプロセスステップを実行させる。代替可能な実施形態では、ソフトウェア命令に代えてあるいはソフトウェア命令と組み合わせて、ハードワイヤード回路を使用してもよい。
【0103】
本明細書で使用する際には、「ストレージ媒体」という用語は、機械を特定の態様で動作させるデータおよび/または命令を格納する任意の非一時的媒体を指す。このようなストレージ媒体は、不揮発性媒体および/または揮発性媒体を含んでもよい。不揮発性媒体は、例えば、光ディスク、磁気ディスク、または、ストレージデバイス410などのソリッドステートドライブ、を含む。揮発性媒体は、メインメモリ406などのダイナミックメモリを含む。ストレージ媒体の一般的な形態は、例えば、フロッピーディスク、フレキシブルディスク、ハードディスク、ソリッドステートドライブ、磁気テープまたは他の任意の磁気データストレージ媒体、CD-ROM、任意の他の光学的データストレージ媒体、複数の穴からなるパターンを有した任意の物理的媒体、RAM、PROM、EPROM、FLASH-EPROM、NVRAM、任意の他のメモリチップまたはカートリッジ、を含む。
【0104】
ストレージ媒体は、伝送媒体とは異なるものの、伝送媒体と組み合わせて使用してもよい。伝送媒体は、ストレージ媒体どうしの間の情報転送に関与する。例えば、伝送媒体は、バス402を構成するワイヤを含めて、同軸ケーブル、銅線、および光ファイバ、を含む。伝送媒体は、また、ラジオ波および赤外線によるデータ通信時に生成されるものなどの、音響波または光波の形態をとることもできる。
【0105】
様々な形態の媒体が、1つ以上の命令のうちの1つ以上のシーケンスを実行のためにプロセッサ404に対して伝送することに関与してもよい。例えば、命令は、初期的には、遠隔コンピュータの磁気ディスクまたはソリッドステートドライブ上へと伝送されてもよい。遠隔コンピュータは、命令をそのダイナミックメモリ内にロードし得るとともに、モデムを使用して電話回線を介して命令を送信することができる。コンピュータシステム400に対してローカルなモデムは、電話回線上のデータを受領し得るとともに、赤外線送信機を使用してデータを赤外線信号へと変換することができる。赤外線検出器は、赤外線信号として伝送されたデータを受領することができ、適切な回路は、データを、バス402上に配置することができる。バス402は、データをメインメモリ406へと伝送し、そこからプロセッサ404が命令を取り出して実行する。メインメモリ406が受領した命令は、任意選択的に、プロセッサ404による実行の前または後のいずれかで、ストレージデバイス410上に記憶されてもよい。
【0106】
コンピュータシステム400は、また、バス402に対して結合された通信インターフェース418を含む。通信インターフェース418は、ローカルネットワーク422に対して接続されているネットワークリンク420に対して、双方向のデータ通信結合を提供する。例えば、通信インターフェース418は、統合サービスデジタルネットワーク(ISDN)カード、ケーブルモデム、衛星モデム、あるいは、対応するタイプの電話回線に対してのデータ通信接続を提供するためのモデム、であってもよい。別の例として、通信インターフェース418は、互換性のあるLANに対してのデータ通信接続を提供するためのローカルエリアネットワーク(LAN)カードであってもよい。また、無線リンクを実装してもよい。任意のそのような実装において、通信インターフェース418は、様々なタイプの情報を表すデジタルデータストリームを伝送する電気信号または電磁信号または光信号を送受信する。
【0107】
ネットワークリンク420は、典型的には、1つ以上のネットワークを介して他のデータデバイスに対してデータ通信を提供する。例えば、ネットワークリンク420は、ローカルネットワーク422を介して、ホストコンピュータ424に対しての接続、またはインターネットサービスプロバイダ(ISP)426が運営するデータ機器に対しての接続、を提供してもよい。ISP426は、次に、現在一般的に「インターネット」428と称されている世界的なパケットデータ通信ネットワークを介してデータ通信サービスを提供する。ローカルネットワーク422およびインターネット428は、共に、デジタルデータストリームを伝送する電気信号または電磁信号または光信号を使用する。様々なネットワークを介した信号、ならびに、コンピュータシステム400との間でデジタルデータを伝送するネットワークリンク420上の信号および通信インターフェース418を介した信号は、伝送媒体の例示的な形態である。
【0108】
コンピュータシステム400は、1つ以上のネットワーク、ネットワークリンク420、および通信インターフェース418を介して、メッセージを送信し得るとともに、プログラムコードを含むデータを受信することができる。インターネットの例では、サーバ430が、アプリケーションプログラムのための要求されたコードを、インターネット428、ISP426、ローカルネットワーク422、および通信インターフェース418を通して、送信することができる。
【0109】
受領したコードは、受領時にプロセッサ404によって実行されてもよく、および/または、後で実行するために、ストレージデバイス410または他の不揮発性ストレージ内に記憶されてもよい。
【0110】
3.機能の説明
【0111】
3.1 訓練セットおよびデジタルモデルの構築
【0112】
いくつかの実施形態では、サーバ170は、植物病害を認識するためのデジタルモデルを訓練するために、複数の画像からなる1つ以上の訓練セットを収集するようにプログラムされる。トウモロコシの場合、複数の画像からなる1つ以上の訓練セットは、トウモロコシの葉の写真を含んでもよい。各写真は、好ましくは、オーバーラップしていない病害症状を写している。一般的なトウモロコシ病害は、炭疽病葉枯病(ALB)、一般的なさび病(CR)、斑点病(EYE)、灰色葉斑点(GLS)、ゴス萎凋病(GW)、すす紋病(NLB)、北方斑点病(NLS)、ごま葉枯病(SLB)、および、南方さび病(SR)、を含む。異なる病害症状は、異なるように見える傾向がある。例えば、初期のCR、EYE、SR、GLS(初期GLS)は、点状のあるいはやや細長い比較的小さな病斑を生成する傾向があり、他方、後期のGW、NLB、GLS(後期GLS)は、帯状のあるいは大きく延びた比較的大きな病斑を生成する傾向がある。したがって、少なくとも2つの訓練セットを、少なくとも2つのデジタルモデルを訓練するために、構築することができ、その場合、各デジタルモデルは、入力画像を、同様のサイズの症状を有した1つ以上の植物病害に対応した1つ以上のクラスへと分類するように設計されている。
【0113】
いくつかの実施形態では、特定の画像が与えられると、サーバ170は、まず、特定の画像を標準サイズへとサイズ変更するように、次に、特定のストライド(入力画像上でスライディングウィンドウをシフトさせるピクセル数)を有したスライディングウィンドウを使用して、訓練セットのためのサイズ変更済み画像から画像を抽出するように、プログラムすることができる。サーバ170は、抽出された画像の各々に、上述した1つ以上のクラスのうちの1つのクラスに関するクラスラベルをさらに割り当てるようにプログラムすることができる。具体的には、サーバ170は、クラスラベルを専門家から受領するように、あるいは、既知の病害症状の画像に基づいてクラスラベルを自動的に決定するように、プログラムすることができる。例えば、適切な解像度での既知の病害症状の画像は、当業者には公知の任意のマッチング技法を使用して、抽出された画像と一致させることができ、一致が成功したときには、抽出された画像に対して、既知の病害に対応したクラスラベルを割り当てることができる。
【0114】
図7Aは、比較的小さな植物病害症状を写している写真から、サンプル画像を抽出する例示的なアプローチを示している。いくつかの実施形態では、所与の画像は、SRの症状を有したトウモロコシの葉に関する写真である。サーバ170は、当業者には公知のサイズ変更技法を使用して、所与の画像を、固定サイズのスライディングウィンドウに対しての第1倍率によって、第1サイズの画像702へとサイズ変更するようにプログラムすることができ、例えば、3,000ピクセル×4,000ピクセルから、224ピクセル×224ピクセルのサイズを有したスライディングウィンドウに対しての5という第1倍率によって、1,120(224×5)ピクセル×1,493ピクセルへと、などのようにして、サイズ変更するようにプログラムすることができる。画像720は、領域710内における病変などの、SRの比較的小さな症状を依然として示している。サーバ170は、その後、スライディングウィンドウの次の位置が現在の位置に対してどこにあるかを決定する特定のストライドで、行ごとにまたは列ごとに、比較的小さなスライディングウィンドウを画像702に対して適用するようにプログラムされる。例えば、224ピクセル×224ピクセルというサイズのスライディングウィンドウでは、ストライドを、224ピクセルとすることができ、これにより、次の位置と現在の位置とをオーバーラップさせないものとすることができ、画像702が1,120ピクセル×1,493ピクセルを有している場合には、合計で30個の画像を抽出することができる。したがって、スライディングウィンドウの初期位置704から、同じ行の次の位置は、706となり、同じ列の次の位置は、708となる。スライディングウィンドウの各位置に対応した画像702の部分を、抽出することができ、クラスラベルを割り当てることができる。この例では、位置704に対応した部分には、SR病変の存在を考慮して、SR病害クラスに関する「SR」というラベルを割り当てることができ、また、位置706に対応した部分には、同様に「SR」というラベルを割り当てることができ、そして、位置706に対応した部分には、健全状態を表すすなわち病害症状が無いことを表す、無病害(ND)クラスに関するラベルを割り当てることができる。
【0115】
図7Bは、比較的大きな植物病害症状を写している写真から、サンプル画像を抽出する例示的なアプローチを示している。いくつかの実施形態では、画像は、GWの症状を有したトウモロコシの葉に関する写真とすることができる。サーバ170は、当業者には公知のサイズ変更技法を使用して、所与の画像を、第1倍率よりも小さな第2倍率によって画像712へとサイズ変更するようにプログラムすることができ、例えば、3,000ピクセル×4,000ピクセルから、2という第2倍率によって、448(224×2)ピクセル×597ピクセルへと、などのようにして、サイズ変更するようにプログラムすることができる。画像712は、領域718内における病変などの、GWの比較的大きな症状を依然として示している。サーバ170は、その後、スライディングウィンドウの次の位置が現在の位置に対してどこにあるかを決定する特定のストライドで、行ごとにまたは列ごとに、比較的大きなスライディングウィンドウを画像712に対して適用するようにプログラムされる。例えば、224ピクセル×224ピクセルというサイズのスライディングウィンドウでは、ストライドを、112ピクセルとすることができ、これにより、次の位置と現在の位置との間において半分をオーバーラップさせることができ、画像712が448ピクセル×597ピクセルを有している場合には、合計で12個の画像を抽出することができる。したがって、スライディングウィンドウの初期位置714から、同じ行の次の位置は、716となる。スライディングウィンドウの各位置に対応した画像712の部分を、抽出することができ、クラスラベルを割り当てることができる。この例では、位置714に対応した部分には、GW病変の存在を考慮して、GW病害クラスに関する「GW」というラベルを割り当てることができ、そして、位置716に対応した部分にも、同様に、「GW」というラベルを割り当てることができる。
【0116】
いくつかの実施形態では、サーバ170は、多数の画像を処理することにより、植物病害の各々に関して充分なサンプル画像を抽出するように、プログラムされる。画像は、画像サーバから、あるいは、ユーザデバイスから、取得することができる。画像は、好ましくは、異なる照明条件に起因して、植物のライフサイクル内の異なる時点でなどのように異なる条件下で、各植物病害症状を示す、あるいは、異なる形状やサイズやスケールを有した各植物病害症状を示す。デジタルモデルの幅をさらに広げるために、サーバ170は、比較的大きな症状を有した植物病害と比較的小さな症状を有した植物病害とのオーバーラップ症状を示しているより多くの画像を含むようにプログラムすることができ、これにより、比較的小さな症状の検出を向上させることができる。例えば、これらの画像は、後期GLS(大)およびCR(小)のオーバーラップ症状、GW(大)およびCRのオーバーラップ症状、GWおよびSR(小)のオーバーラップ症状、NLB(大)およびCRのオーバーラップ症状、もしくは、NLBおよびSRのオーバーラップ症状、を示すことができる。サーバ170は、これらの画像の1つから抽出された各画像を、抽出された画像内における各病害症状によって覆われた総面積に基づいて、支配的な病害に対応したクラスへと、さらに割り当てるようにプログラムすることができる。
【0117】
いくつかの実施形態では、サーバ170は、訓練セットを補強するために、抽出された画像の変形例を生成するようにプログラムされる。より具体的には、サーバ170は、抽出された画像を回転させたり、さらに拡大縮小したり、するように構成することができる。トウモロコシに関しては、健全状態と各トウモロコシ病害とについて、少なくとも200個の画像が存在することができ、その中には、オーバーラップ症状を示す10%未満の画像を含む。2つのデジタルモデルを構築することができる、すなわち、比較的小さな症状を有したトウモロコシ病害を検出するための第1デジタルモデルと、比較的大きな症状を有したトウモロコシ病害を検出するための第2デジタルモデルと、を構築することができる。したがって、
図7Aおよび
図7Bに示すように、第1デジタルモデルおよび第2デジタルモデルに対して、第1訓練セットおよび第2訓練セットを、各々適切に構築することができる。各訓練セットは、対応するデジタルモデルによって検出されるべきトウモロコシ病害症状を示す画像を含むことができる。デジタルモデルがテスト画像に対して適用される方法に応じて、各訓練セットは、追加的な画像を含むことができる。第1デジタルモデルおよび第2デジタルモデルが順次的に適用される場合には、後述するように、第1訓練セットは、第2デジタルモデルが検出するように設計された病害症状を示す追加的な画像であり、かつ、それらすべての病害に関する包括クラスを表す共通ラベルが割り当てられた追加的な画像、を含むことができる。これら追加的な画像は、第2訓練セットに関して使用される元画像を、第1訓練セットに関して使用される元画像として処理することにより(特定の視野を取得するために拡大縮小すること、等)、生成することができる。
【0118】
いくつかの実施形態では、サーバ170は、訓練セットから植物病害を認識するためのデジタルモデルを構築するようにプログラムされる。デジタルモデルは、決定木またはCNNなどの、当業者には公知の任意の分類モデルとすることができる。トウモロコシに関しては、サーバ170は、上述したように、2つの訓練セットから2つのデジタルモデルを構築するようにプログラムすることができる。第1デジタルモデルは、CRやEYEやSRや初期GLSなどの比較的小さな症状を有したトウモロコシ病害を認識するために使用され、第2デジタルモデルは、GWやNLBや後期GLSなどの比較的大きな症状を有したトウモロコシ病害を認識するために使用される。各デジタルモデルをCNNとして実装するには、GitHubプラットフォーム上において利用可能なResNet-50パッケージなどのパブリックライブラリを使用することができる。
【0119】
3.2 デジタルモデルの実行
【0120】
いくつかの実施形態では、サーバ170は、分類されるべき新たな画像をユーザデバイスから受領するように、そして、デジタルモデルをその新たな画像に対して適用することにより分類を得るように、プログラムされる。トウモロコシに関しては、サーバ170は、2つのデジタルモデルを順次的に適用することにより、まず、比較的小さな症状を有したトウモロコシ病害を検出するように、その後、比較的大きな症状を有したトウモロコシ病害を検出するように、プログラムすることができる。
【0121】
図8は、複数のデジタルモデルを使用して、植物画像から複数のサイズの症状を有した植物病害を認識する例示的なプロセスを示している。いくつかの実施形態では、植物は、トウモロコシであり、植物画像は、トウモロコシの葉に関する写真である。分類されるべき新たな画像802が与えられると、サーバ170は、まず、比較的小さな症状を有したトウモロコシ病害を認識するための第1デジタルモデルを適用するようにプログラムされる。具体的には、サーバ170は、上述の第1倍率によって同様に新たな画像802をサイズ変更済み画像へとサイズ変更するようにプログラムすることができ、例えば、3,000ピクセル×4,000ピクセルから、5という第1倍率によって1,120(224×5)ピクセル×1,493ピクセルへと、などのようにして、サイズ変更するようにプログラムすることができる。サーバ170は、その後、スライディングウィンドウの次の位置が現在の位置に対してどこにあるかを決定する特定のストライドで、行ごとまたは列ごとに、比較的小さなスライディングウィンドウをサイズ変更済み画像に対して適用するように、プログラムされる。スライディングウィンドウのサイズは、一般に、第1デジタルモデルを構築するために使用されたサンプル画像(抽出された画像)のサイズに等しいものである。例えば、スライディングウィンドウは、224ピクセル×224ピクセルというサイズを有することができ、ストライドは、224ピクセルとすることができる。スライディングウィンドウの各位置に関しては、サーバ170は、第1デジタルモデル804を、スライディングウィンドウ内のサイズ変更済み画像の部分に対して適用することにより、健全状態に対応した分類、または、比較的小さな症状を有したトウモロコシ病害の1つに対応した分類、または、比較的大きな症状を有したトウモロコシ病害の集合体に対応した分類、を得るようにプログラムすることができる。例えば、部分806は、CR、EYE、SR、初期GLS、またはNDへと分類され、部分812は、他の病害(OD)クラスへと分類される。
【0122】
いくつかの実施形態では、サーバ170は、スライディングウィンドウによって抽出されたサイズ変更済み画像の各部分を、新たな画像802の領域へとマッピングして戻すようにプログラムすることができる。サーバ170は、マッピングされた各領域が、対応する分類のインジケータを有して示されている新たな画像802に関する予測マップをさらに準備するようにプログラムされる。
【0123】
図9Aは、比較的小さな症状を有した植物病害を認識するために、第1デジタルモデルを植物画像に対して適用した結果を示す例示的な予測マップを示している。いくつかの実施形態では、スライディングウィンドウのサイズと新たな画像のサイズとの間のスケールが与えられると、本質的に比較的小さなスライディングウィンドウが、新たな画像920内における、位置902を含む様々な位置を通して移動する。そして、新たな画像920のうちの、スライディングウィンドウの位置に対応した各領域(第1領域)は、凡例906に従って、予測マップ922内の対応した分類によってラベル付けされる。例えば、領域912は、比較的大きな症状を有したトウモロコシ病害の組合せを表すODクラスへと分類されている。
【0124】
図8に戻って参照すると、いくつかの実施形態では、サイズ変更済み画像のうちの、比較的大きな症状を有したトウモロコシ病害の集合体に対応したODクラスへと分類された部分に関して、サーバ170は、比較的大きな症状を有したトウモロコシ病害を認識するための第2デジタルモデル808を適用するようにプログラムされる。
図9Aに戻って参照すると、領域912へとマッピングされたものなどの各部分は、比較的小さな視野に対応しており、よって、典型的には、領域932に示すように、比較的大きな症状の一部にすぎない。したがって、サーバ170は、第2デジタルモデル808を、複数のそのような部分に対して一度に適用するようにプログラムされる。より具体的には、各々のそのような部分に関して、サーバ170は、第2デジタルモデルを構築するために使用した視野にほぼ一致するように、各方向における特定数の周囲部分または周囲部分の特定割合をも考慮するように、構成することができる。例えば、224ピクセル×224ピクセルの各々のそのような部分は、各方向における1つの周囲部分と一緒に考慮することができ、これにより、672(224×3)ピクセル×672ピクセルの組合せ部分が生成される。サーバ170は、組合せ部分を、第2デジタルモデルのための入力画像のサイズへと、さらにサイズ変更するように構成することができ、結果として、5/3の倍率をもたらす。サーバ170は、その後、第2デジタルモデルを、サイズ変更済み組合せ部分に対して適用することにより、比較的大きな症状を有したトウモロコシ病害の1つに対応した分類を得るように構成することができる。
図8に戻って参照すると、サイズ変更済み組合せ部分810は、GW、NLB、または初期GLSへと、分類される。
【0125】
いくつかの実施形態では、NDクラスへと分類されていない隣接部分を組合せ部分に含めることに代えて、サーバ170は、新たな画像802のうちの、第1の複数の植物病害の1つに対応したクラスへと分類されたあるいは健全状態に対応したクラスへと分類された複数の第1領域の各々を、マスクする(例えば、ゼロ値によって)ように、プログラムすることができる。いくつかの実施形態では、サーバ170は、上述の第2倍率によって同様にマスクされた部分を有した新たな画像802を、例えば、224ピクセル×224ピクセルから、2という第1倍率によって448(224×2)ピクセル×448ピクセルへと、などのようにして、サイズ変更済み画像へとサイズ変更するようにプログラムすることができる。サーバ170は、その後、特定のストライドで、行ごとまたは列ごとに、比較的大きなスライディングウィンドウをサイズ変更済み画像に対して適用するように、プログラムすることができる。スライディングウィンドウのサイズは、一般に、第2デジタルモデルを訓練するために使用したサンプル画像(抽出された画像)のサイズに等しいものである。例えば、スライディングウィンドウは、224ピクセル×224ピクセルというサイズを有することができ、ストライドは、112ピクセルまたは224ピクセルとすることができる。スライディングウィンドウの各位置に関して、サーバ170は、その後、第2デジタルモデル804を、サイズ変更済み画像の部分に対して、あるいは、スライディングウィンドウ内のODクラスへと分類された組合せ部分に対応した部分に対して、適用することにより、比較的大きな症状を有したトウモロコシ病害の1つに対応した分類を得るように、プログラムすることができる。他の実施形態では、サーバ170は、第2訓練セット内に、包括クラスに対応した画像のみを含むように、そして、第1デジタルモデルを新たな画像に対して適用する前に、第2デジタルモデルを適用するように、プログラムされる。
【0126】
図8に戻って参照すると、いくつかの実施形態では、サーバ170は、第2デジタルモデルによって分類された各部分を、画像802の領域へと同様にマッピングして戻すようにプログラムすることができる。サーバ170は、新たにマッピングされた各領域が、対応する分類のインジケータを有して示されている画像802に関する予測マップをさらに更新するようにプログラムされる。サーバ170は、その後、更新済み予測マップに関連した分類データを、ユーザデバイスに対して送信するようにプログラムすることができる。
【0127】
図9Bは、比較的大きな症状を有した植物病害を認識するために、第2デジタルモデルを植物画像に対して適用した結果を示す例示的な予測マップを示している。いくつかの実施形態では、スライディングウィンドウのサイズと新たな画像のサイズとの間のスケールを考慮して、本質的に比較的大きなスライディングウィンドウが、新たな画像920内の様々な位置を通して、あるいは、位置910を含めて、第1デジタルモデルによってODクラスへと分類された部分内のみを通して、移動する。その後、新たな画像920のうちの、スライディングウィンドウの位置に対応した各領域(第2領域)が、既存の値を上書きして、予測マップ922内の対応した分類によってラベル付けされる。例えば、
図9Aに図示した、ODクラスへと分類された領域912は、ここでは、後期GLSに対応したクラスへと分類された領域908の下にある。したがって、新たな画像920は、SRおよび後期GLSのオーバーラップ症状を示しているけれども、双方の病害は、新たな画像920の異なる領域から検出される。
【0128】
いくつかの実施形態では、サーバ170は、更新済み予測マップをさらに処理するようにプログラムされる。サーバ170は、クラスの各々へと分類された総面積を計算するように、そして、最大の総面積を有したクラスに対応した病害が、新たな画像で撮影された植物における支配的な病害であると結論付けるように、構成することができる。例えば、更新済み予測マップ922は、SRおよび後期GLSの症状が各々新たな画像920の約半分を占めていることを示しており、よって、新たな画像920で撮影された特定のトウモロコシに関する支配的な病害であると考えることができる。サーバ170は、支配的な病害に関連した支配情報を、ユーザデバイスに対してさらに送信するように構成することができる。
【0129】
3.3 例示的なプロセス
【0130】
図10は、植物画像から複数のサイズの症状を有した植物病害を認識するようにプログラムされたサーバコンピュータによって実行される例示的な方法を示している。
図10は、実行されたときには本明細書において説明する機能的改良および技術的進歩を実行する1つ以上のコンピュータプログラムまたは他のソフトウェア要素を実装するために使用し得るアルゴリズムまたは計画または概要を開示することを意図している。さらに、本明細書のフロー図は、当業者が、蓄積された技術および知識を使用してコード化または実装することを計画しているソフトウェアプログラムの基礎を形成するアルゴリズムまたは計画または仕様について互いに通信するために通常的に使用するのと同じレベルの詳細さで記述されている。
【0131】
いくつかの実施形態では、ステップ1002において、サーバ170は、第1の複数の植物病害のうちの1つの植物病害に関する第1症状を写している第1写真と、無症状を写している第2写真と、第2の複数の植物病害のうちの1つの植物病害に関する部分的な第2症状を写している第3写真と、を含む第1訓練セットを取得するようにプログラムまたは構成される。第1の複数の植物病害は、第1範囲内のサイズを有した症状を生じさせる。第2の複数の植物病害は、第2範囲内のサイズを有した症状を生じさせる。第1症状は、第2症状よりも小さく、第1写真と、第2写真と、第3写真とは、共通のサイズの視野に対応している。サーバ170は、第1の複数の植物病害に関する個々の症状を捕捉するのに適したスライディングウィンドウを使用することにより、複数のサイズの病害症状を写している写真から第1訓練セットを生成するように、構成することができる。
【0132】
いくつかの実施形態では、ステップ1004において、サーバ170は、画像を、第1の複数の植物病害のうちの1つの植物病害に対応したクラスへと、または、健全状態に対応したクラスへと、または、第2の複数の植物病害どうしの組合せに対応したクラスへと、分類するために、第1訓練セットから第1CNNを構築するように、プログラムまたは構成される。したがって、第1CNNが、k個の病害に関する症状を認識するように構成されている場合には、第1CNNは、画像を、k+2個のクラスのうちの1つのクラスへと分類するように構成される。また、無病害クラスを、包括クラスへと一括りにすることも可能であり、画像を無病害クラスへと分類するために第2CNNを構成することができる。
【0133】
いくつかの実施形態では、ステップ1006において、サーバ170は、第2症状を写している写真を含む第2訓練セットを取得するようにプログラムまたは構成される。サーバ170は、同様に、第2の複数の植物病害の個々の症状を捕捉するのに適したスライディングウィンドウを使用することにより、複数のサイズの病害症状を写しているあるいは単に複数の病害症状を写している写真から、第2訓練セットを生成するように構成することができる。
【0134】
いくつかの実施形態では、サーバ170は、画像を、第2の複数の植物病害のうちの1つの植物病害に対応したクラスへと分類するために、第2訓練セットから第2CNNを構築するように、プログラムまたは構成される。サーバ170は、第1CNNおよび第2CNNを別のコンピューティングデバイスに対して送信するように構成することができ、そのコンピューティングデバイスは、感染した植物に関する新たな写真を分類するために2つのCNNsを適用するように構成することができる。
【0135】
いくつかの実施形態では、ステップ1008において、サーバ170は、ユーザデバイスから新たな画像を受領するようにプログラムまたは構成される。新たな画像は、複数のサイズの症状を写している感染した植物の写真とすることができる。
【0136】
いくつかの実施形態では、ステップ1010において、サーバ170は、第1CNNを、新たな画像内の複数の第1領域に対して適用することにより、複数の分類を得るように、プログラムまたは構成される。第1領域の各々のサイズは、第1の複数の植物病害に関する個々の症状を表すのに適している。
【0137】
いくつかの実施形態では、ステップ1012において、サーバ170は、第2CNNを、第2の複数の植物病害どうしの組合せに対応したクラスへと分類された第1領域どうしの組合せ内の1つ以上の第2領域に対して適用することにより、1つ以上の分類を得るように、プログラムまたは構成されており、複数の第1領域の各々は、1つの第2領域よりも小さい。第2領域の各々のサイズは、第2の複数の植物病害に関する個々の症状を表すのに適している。
【0138】
いくつかの実施形態では、ステップ1014において、サーバ170は、第1の複数の植物病害のうちの1つの植物病害に対応したクラスへのまたは健全状態に対応したクラスへの複数の分類に関連した分類データと、1つ以上の分類に関連した分類データとを、ユーザデバイスに対して送信するように、プログラムまたは構成される。分類データは、新たな画像の1つ以上の領域に関して、領域のサイズと、対応した分類と、を含んでもよい。サーバ170は、新たな画像の最大領域が分類された病害などの、新たな画像に関して支配的な病害を識別するように、そして、分類データの一部としてその支配的な病害に関する情報を送信するように、さらに構成することができる。
【0139】
4.拡張機能および代替手段
【0140】
上述した本明細書では、本発明の実施形態について、実装ごとに相違し得る多数の具体的な詳細を参照して説明した。したがって、本明細書および図面は、限定的な意味ではなく例示的な意味で見なされるべきである。本発明の範囲に関する唯一のかつ排他的な指標であって、本出願人が本発明の範囲であることを意図しているものは、その後のあらゆる修正も含めて請求項が生じる特定の形態での、本出願から生じる請求項のセットに関する文字通りの範囲ならびに同等の範囲である。