(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-10-06
(45)【発行日】2023-10-17
(54)【発明の名称】植物の写真を分類することにより植物病の感染を検出すること
(51)【国際特許分類】
G06Q 50/02 20120101AFI20231010BHJP
G06T 7/00 20170101ALI20231010BHJP
【FI】
G06Q50/02
G06T7/00 350C
(21)【出願番号】P 2021547040
(86)(22)【出願日】2019-10-18
(86)【国際出願番号】 US2019057066
(87)【国際公開番号】W WO2020082024
(87)【国際公開日】2020-04-23
【審査請求日】2022-10-12
(32)【優先日】2018-10-19
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】521165688
【氏名又は名称】クライメイト、リミテッド、ライアビリティー、カンパニー
【氏名又は名称原語表記】CLIMATE LLC
(74)【代理人】
【識別番号】100091487
【氏名又は名称】中村 行孝
(74)【代理人】
【識別番号】100120031
【氏名又は名称】宮嶋 学
(74)【代理人】
【識別番号】100126099
【氏名又は名称】反町 洋
(74)【代理人】
【識別番号】100141830
【氏名又は名称】村田 卓久
(74)【代理人】
【識別番号】100124372
【氏名又は名称】山ノ井 傑
(72)【発明者】
【氏名】イチュアン、コイ
(72)【発明者】
【氏名】ウェイ、コアン
【審査官】新里 太郎
(56)【参考文献】
【文献】特開2016-168046(JP,A)
【文献】特開2015-204788(JP,A)
【文献】特開2013-172698(JP,A)
【文献】特表2020-504358(JP,A)
【文献】国際公開第2016/178268(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
G06T 1/00-19/20
(57)【特許請求の範囲】
【請求項1】
植物病を認識するための畳み込みニューラルネットワークを構成して利用するコンピュータ実装方法であって、
複数の病気に感染している植物の写真のセットをプロセッサによって受信することであって、
前記写真のセットは、複数のアスペクト比を有する複数のマーキングされた領域を有する葉を示しており、各々のマーキングされた領域は、前記複数の病気のうちの1つの病気のラベルと関連付けられ、前記病気によって引き起こされる少なくとも1つの病変を示し、
前記写真のセットのうちの特定の写真は、複数の病変を示す特定のマーキングされた領域を有する特定の葉を示し、
前記複数の病変の合計サイズは、前記特定のマーキングされた領域のサイズの所定の割合よりも大きい、
受信することと、
シングルショットマルチボックス検出器(SSD)の一連の畳み込み層ごとに、前記複数のマーキングされた領域からアンカーボックスのグループを前記プロセッサによって決定することであって、
前記SSDは、画像を受信して、前記画像の1つ以上のエリアの各々を、前記複数の病気に対応する複数のクラスのうちの少なくとも1つに割り当てるように構成され、
前記アンカーボックスのグループは、異なるアスペクト比を有し、前記複数のクラスの様々な特徴に対応している、
決定することと、
前記複数のマーキングされた領域の各々を、前記アンカーボックスのグループのうちの1つにマッピングすることと、
前記アンカーボックスのグループ、前記複数のマーキングされた領域を有する前記写真のセット、前記関連付けられた複数のラベル、および前記関連付けられた複数のマッピングから前記SSDを構築することと、
クライアントデバイスから新しい画像を受信することと、
前記SSDを前記新しい画像に適用して、前記新しい画像の1つ以上のエリア内の1つ以上の病気の症状を識別することと、
前記新しい画像の前記1つ以上の病気、または1つ以上のエリアに関するデータを、前記クライアントデバイスに伝送することと、
を含むコンピュータ実装方法。
【請求項2】
実行させると1つ以上のプロセッサに植物病を認識するための畳み込みニューラルネットワークを構成して利用する方法を実行させる1つ以上の命令のシーケンスを格納する1つ以上の非一過性コンピュータ可読媒体であって、前記方法は、
複数の病気に感染している植物の写真のセットを受信することであって、
前記写真のセットは、複数のアスペクト比を有する複数のマーキングされた領域を有する葉を示しており、各々のマーキングされた領域は、前記複数の病気のうちの1つの病気のラベルと関連付けられ、前記病気によって引き起こされる少なくとも1つの病変を示し、
前記写真のセットのうちの特定の写真は、複数の病変を示す特定のマーキングされた領域を有する特定の葉を示し、
前記複数の病変の合計サイズは、前記特定のマーキングされた領域のサイズの所定の割合よりも大きい、
受信することと、
シングルショットマルチボックス検出器(SSD)の一連の畳み込み層ごとに、前記複数のマーキングされた領域からアンカーボックスのグループを決定することであって、
前記SSDは、画像を受信して、前記画像の1つ以上のエリアの各々を、前記複数の病気に対応する複数のクラスのうちの少なくとも1つに割り当てるように構成され、
前記アンカーボックスのグループは、異なるアスペクト比を有し、前記複数のクラスの様々な特徴に対応している、
決定することと、
前記複数のマーキングされた領域の各々を、前記アンカーボックスのグループのうちの1つにマッピングすることと、
前記アンカーボックスのグループ、前記複数のマーキングされた領域を有する前記写真のセット、前記関連付けられた複数のラベル、および前記関連付けられた複数のマッピングから前記SSDを構築することと、
クライアントデバイスから新しい画像を受信することと、
前記SSDを前記新しい画像に適用して、前記新しい画像の1つ以上のエリア内の1つ以上の病気の症状を識別することと、
前記新しい画像の前記1つ以上の病気、または1つ以上のエリアに関するデータを、前記クライアントデバイスに伝送することと、
を含む1つ以上の非一過性コンピュータ可読媒体。
【発明の詳細な説明】
【著作権表示】
【0001】
本特許文献の開示の一部には、著作権の保護の対象となる資料が含まれている。著作権の所有者は、特許商標庁の特許ファイルまたは記録に掲載されているような特許文書または特許開示の、何人によるファクシミリでの複製に対して異議を唱えないが、それ以外の点においては一切の全ての著作権または権利を留保する。著作権 2015~2019 The Climate Corporation
【技術分野】
【0002】
本開示は、植物病の検出および機械学習の技術領域に関する。本開示はまた、植物病を認識するための機械学習モデルの構成および訓練を向上させる技術領域に関する。
【背景技術】
【0003】
本項に記載されるアプローチは、追求することが可能なアプローチではあるが、必ずしも既に想像されてきた、または追求されてきたアプローチではない。従って、特に指示しない限り、本項に記載されるアプローチのいずれかが、単に本項に包含されているという理由だけで先行技術として認められると見なすべきではない。
【0004】
植物病の検出は、農業において重要なことである。現在、自動化されたアプローチとしては、多くの場合、植物の写真を分類することを含むが、このことは複数の畳み込み層を有する畳み込みニューラルネットワーク(CNN)を適用することで実現することができる。あるCNNでは、2段階のアプローチで連携し、第1のCNNを使用して所与の画像内の関心領域を提案し、次に第2のCNNを使用して各々の提案された領域を分類する。あるCNNでは、全ての画像が固定サイズであることが必要とされる。様々なサイズの画像を撮影し、ワンショットでの関心領域を提案して分類することができ、優れた性能を備えたCNNがある。植物病は症状が異なることを考慮すると、植物の健康と成長とを促進するために、植物の写真を分類して植物病の感染を検出するためのこのようなCNNを特に構成して訓練することは有益であろう。
【発明の概要】
【0005】
添付の特許請求の範囲は、本開示の発明の概要としての役割を果たし得る。
【図面の簡単な説明】
【0006】
図面は次の通りである。
【0007】
【
図1】システムが相互運用できる他の装置と共にフィールド環境内に示された、本明細書に記載される機能を実行するように構成された例示的なコンピュータシステムを図示する。
【0008】
【
図2】実行するために例示的なモバイルアプリケーションがロードされる場合の、メインメモリ内の命令セットの2つの例示的な論理組織の図を図示する。
【0009】
【
図3】農業用インテリジェンスコンピュータシステムが、1つ以上(one or more)のデータソースによって提供される耕種学的データを用いて、1つ以上の事前構成された耕種学的モデルを生成する、プログラムされたプロセスを図示する。
【0010】
【
図4】本発明の実施形態を実装することができるコンピュータシステムを例示するブロック図である。
【0011】
【
図5】データ入力用のタイムライン表示の例示的な実施形態を示す。
【0012】
【
図6】データ入力用のスプレッドシート表示の例示的な実施形態を示す。
【0013】
【
図7A】各々が1つの病気の症状を有するトウモロコシの葉の例示的な写真を含む。
【0014】
【
図7B】複数の病気の症状を有するトウモロコシの葉の例示的な写真を含む。
【0015】
【
図8】初期の分類結果を最終的な分類結果に精緻化するために非最大抑制を適用する、例示的なプロセスを図示する。
【0016】
【
図9】植物病を検出するために、畳み込みニューラルネットワークを構成して利用するようにプログラムされたサーバコンピュータによって実行される、例示的な方法を図示する。
【発明を実施するための形態】
【0017】
以下の明細書において、本開示の完全な理解をもたらすために多くの具体的な詳細が説明のために記載されている。しかしながら、これらの具体的な詳細を伴わずに実施形態を実行することができるということは明白であろう。他の場合では、本開示を不必要に曖昧にすることを避けるために、周知の構造体および図案がブロック図の形態で示される。実施形態は、以下の概略に従った項において記載される。
1. 総括
2. 例示的な農業用インテリジェンスコンピュータシステム
2.1.構造的概要
2.2.アプリケーションプログラムの概要
2.3.コンピュータシステムへのデータの取り込み
2.4.プロセスの概要-耕種学的モデルの訓練
2.5.実装例-ハードウェアの概要
3. 機能説明
3.1 植物病の検出
3.2 デジタルモデルの構成
3.3 訓練セットおよびデジタルモデルの構築
3.4 デジタルモデルの実行
3.5 例示的なプロセス
4. 拡張および代替
【0018】
1.総括
【0019】
植物病を認識するための畳み込みニューラルネットワーク(CNN)を構成して利用するためのシステムおよび処理方法を開示する。いくつかの実施形態では、システムは、感染した病気の症状を示す領域がマーキングされた、感染した植物または葉の写真を収集するようにプログラムされる。各々の写真は、複数のマーキングされた領域を有し得る。症状がどれくらい大きいのか、またはクラスタを形成しているのかに応じて、あるマーキングされた領域には1つの病気によって生じた1つの病変だけを含み得るが、一方で、別のマーキングされた領域には1つの病気によって生じた複数の近接して離間した病変を含み得る。システムは、これらのマーキングされた領域から、シングルショットマルチボックス検出器(SSD)の畳み込み層ごとに、異なるアスペクト比を有するアンカーボックス(デフォルトボックス)を決定するようにプログラムされる。特定の種類の植物では、一般的な病気でアスペクト比が比較的大きくなり、いくつかは比較的極端な値を有する。次に、システムはマーキングされた領域とアンカーボックスとを使用してSSDを訓練するようにプログラムされ、SSDを新しい写真に適用して病気にかかった植物を識別する。
【0020】
いくつかの実施形態では、システムは、マーキングされたトウモロコシの葉の写真を収集するようにプログラムされる。各々の写真は、1つ以上のマーキングされた領域(グラウンドトゥルースボックス)を有し得る。各々のマーキングされた領域は、複数のトウモロコシの病気のうちの1つによって引き起こされる1つ以上の病変を有し得、1つのトウモロコシの病気でラベル付けされる。マーキングされた領域を更に処理するように、システムをプログラムすることができる。具体的には、写真の中の病変に対応する領域がどれくらい大きいのか、またはクラスタを形成しているのかに基づいて、マーキングされた領域を複数に分割したり、またはいくつかのマーキングされた領域を1つに結合したりするようにシステムをプログラムすることができる。例えば、専門家は、南方さび病によって生じる大きいクラスタの病変を2箇所、写真の中でマーキングしている可能性がある。クラスタ内の途切れた病変に対応する領域が互いに接近して離間しており、クラスタが葉の大部分を覆っているため、この2箇所を、クラスタ全体を覆う1つのマーキングされた領域に統合して拡張するようにシステムをプログラムすることができる。
【0021】
いくつかの実施形態では、システムは、結果として得られたマーキングされた領域から、SSDの一連の畳み込み層ごとにアンカーボックスを決定するようにプログラムされる。Liu W. et al. (2016) SSD: Single Shot MultiBox Detector. In: Leibe B., Matas J., Sebe N., Welling M. (eds) Computer Vision - ECCV 2016, pp21-37. Lecture Notes in Computer Science, vol 9905. Springer, Chamを参照されたい。アンカーボックスを定義するために、マーキングされた領域を正規化してクラスタ化し、クラスタごとの集合を計算するようにシステムをプログラムすることができる。このように、各アンカーボックスは、一般的なトウモロコシの病気の症状を示すマーキングされた領域のサブセットを表す、明確なスケールとアスペクト比とを有することができる。いくつかのトウモロコシの病気では、アスペクト比は1/7~7の範囲であり得る。
【0022】
いくつかの実施形態では、システムは、マーキングされた領域の形状に基づいて、各々のマーキングされた領域をアンカーボックスにマッピングするようにプログラムされる。具体的には、アンカーボックスの重ね合わせがマーキングされた領域の所定の割合以上をカバーできた場合に、マッピングが成功したと判断を下すようにシステムを構成することができる。システムは次に、マーキングされた領域、対応するラベル、アンカーボックス、およびマッピングを有する画像でSSDを訓練するようにプログラムされる。
【0023】
いくつかの実施形態では、システムは、クライアントデバイスからトウモロコシの葉の新しい写真を受信し、新しい写真にSSDを適用して、写真内の複数の領域の初期識別と、複数の領域ごとのトウモロコシの病気のうちの1つへの分類とを、対応する信頼度スコアと共に受信するようにプログラムされる。同一の領域が複数のトウモロコシの病気に分類された場合は、比較的低い信頼度スコアと関連付けられたいくつかの分類を除去することができる。システムは次に、分類結果をクライアントデバイスに伝送するようにプログラムされる。
【0024】
このシステムによって、様々な技術的利点が生じる。SSDは、類似のCNNよりもより優れた性能を実現しており、従来のシングルショット検出器よりも高速であり、かつまたより精度が高く、実際には明確な領域提案およびプーリングを実行するより低速の技術と同等の精度であることが示されている。システムは、植物病の症状などの特定の種類の物体を分類するのに特に好適なSSDを構成し、訓練するためのアプローチを提供する。これらの症状には特定の様式のサイズおよび位置にある病変が含まれ、システムにより提供されるアプローチによってその特異性を捕らえることにより、SSDの植物病の症状を分類する性能が更に向上する。このような向上により、結果として作物のより良い健康と生育とがもたらされる。
【0025】
実施形態の他の態様および特徴は、本開示の他の項により明らかになるであろう。
【0026】
2.例示的な農業用インテリジェンスコンピュータシステム
【0027】
2.1.構造的概要
【0028】
図1は、システムが相互運用できる他の装置と共にフィールド環境内に示された、本明細書に記載される機能を実行するように構成された例示的なコンピュータシステムを図示する。一実施形態では、ユーザ102は、農業活動を目的とした圃場、または1つ以上の農業用圃場のための管理場所などの圃場の場所または圃場の場所に関連する場所で、圃場管理者コンピューティングデバイス104を所有、操作、または所持している。圃場管理者コンピュータデバイス104は、圃場データ106を1つ以上のネットワーク109を介して農業用インテリジェンスコンピュータシステム130に提供するようにプログラムまたは構成されている。
【0029】
圃場データ106の例としては、(a)識別データ(例えば、エーカー数、圃場名称、圃場識別子、地理識別子、境界識別子、作物識別子、ならびに共通土地単位(CLU)、ロット番号およびブロック番号、地番、地理座標および境界、農場シリアル番号(FSN)、農地番号、地域番号、圃場番号、区間、郡区および/または範囲などの農地を識別するために使用することができる任意の他の好適なデータ)、(b)収穫データ(例えば、作物の種類、作物の品種、輪作、作物が有機栽培されているかどうか、収穫日、実績生産履歴(APH)、予想収量、収量、作物価格、作物収益、穀物水分、耕耘の実施、および以前の生育期情報)、(c)土壌データ(例えば、種類、組成、pH、有機物質(OM)、陽イオン交換容量(CEC))、(d)植え付けデータ(例えば、植え付け日、種子の種類、植え付けた種子の相対的成熟度(RM)、種子個体数)、(e)肥料データ(例えば、栄養素の種類(窒素、リン、カリウム)、施用種類、施用日、量、供給源、方法)、(f)化学薬品施用データ(例えば、農薬、除草剤、殺真菌剤、他の物質、または植物生長調節物質、枯葉剤、もしくは乾燥剤として使用することを目的とした物質の混合物、施用日、量、供給源、方法)、(g)灌漑データ(例えば、施用日、量、供給源、方法)、(h)気象データ(例えば、降水量、降雨率、予測雨量、流水率領域、温度、風、天気予報、気圧、可視性、雲、熱指数、露点温度、湿度、積雪深、空気質、日の出、日没)、(i)画像データ(例えば、農業用装置のセンサ、カメラ、コンピュータ、スマートフォン、タブレット、無人航空機、飛行機または衛星からの画像および光スペクトル情報)、(j)偵察観測値(写真、ビデオ、フリーフォームのメモ、音声録音、音声トランスクリプション、気象条件(温度、降水量(現在および経時的な)、土壌水分、作物の生育段階、風速、相対湿度、露点温度、ブラックレイヤー))、ならびに(k)土壌、種子、作物のフェノロジー、害虫および病害報告、ならびに予測ソースおよびデータベースが挙げられる。
【0030】
データサーバコンピュータ108は、農業用インテリジェンスコンピュータシステム130に通信可能に結合されており、ネットワーク109を介して外部データ110を農業用インテリジェンスコンピュータシステム130に送信するようにプログラムまたは構成されている。外部データサーバコンピュータ108は、農業用インテリジェンスコンピュータシステム130と同一の法人もしくは事業体によって所有または運営されてもよく、または政府機関、非政府組織(NGO)、および/もしくは民間のデータサービスプロバイダなどの異なる個人もしくは事業体によって所有もしくは運営されてもよい。外部データの例としては、特に、気象データ、画像データ、土壌データ、または作物収量に関する統計データが挙げられる。外部データ110は、圃場データ106と同じ種類の情報からなっていてもよい。いくつかの実施形態では、外部データ110は、農業用インテリジェンスコンピュータシステム130を所有および/または運用する同一の事業体によって所有されている外部データサーバ108により提供される。例えば、農業用インテリジェンスコンピュータシステム130は、気象データなどの通常は第三者ソースから取得することのできる種類のデータに独占的にフォーカスしたデータサーバを含み得る。いくつかの実施形態では、外部データサーバ108は、実際にはシステム130内に組み込まれていてもよい。
【0031】
農業用装置111は、そこに固定された1つ以上の遠隔センサ112を有してもよく、このセンサは、農業用装置111を介して農業用インテリジェンスコンピュータシステム130に直接または間接のいずれかで通信可能に結合され、センサデータを農業用インテリジェンスコンピュータシステム130に送信するようにプログラムまたは構成されている。農業用装置111の例としては、トラクタ、コンバイン、収穫機、播種機、トラック、肥料装置、無人航空機を含む航空機、および物理的機械またはハードウェアの任意の他の品目、典型的には移動機械が挙げられ、これらは農業に関連する作業に使用することができる。いくつかの実施形態では、単一ユニットの装置111は、装置のネットワークにローカルに結合された複数のセンサ112を含んでいてもよく、コントローラエリアネットワーク(CAN)は、コンバイン、収穫機、噴霧機、および耕作機に設置することが可能なこのようなネットワークの例である。アプリケーションコントローラ114は、ネットワーク109を介して農業用インテリジェンスコンピュータシステム130に通信可能に結合されており、農業用車両または機具の運転パラメータを制御するように使用される1つ以上のスクリプトを農業用インテリジェンスコンピュータシステム130から受信するようにプログラムまたは構成されている。例えば、Climate Corporation(サンフランシスコ、カリフォルニア州)から入手可能なCLIMATE FIELDVIEW DRIVEを用いる方法などのような、コントローラエリアネットワーク(CAN)バスインタフェースを使用して、農業用インテリジェンスコンピュータシステム130から農業用装置111への通信ができるようにしてもよい。センサデータは、圃場データ106と同一の種類の情報からなっていてもよい。いくつかの実施形態では、遠隔センサ112は、農業用装置111に固定されていなくてもよいが、圃場内に離れて配置されていてもよく、ネットワーク109と通信してもよい。
【0032】
装置111は、本明細書の他の項で更に説明されるデバイス104用のモバイルアプリケーションのバージョンまたはバリアントを含み得る、キャビンアプリケーションによってプログラムされたキャビンコンピュータ115を含んでもよい。一実施形態では、キャビンコンピュータ115は、装置111のオペレータのキャビン内に搭載されるカラーディスプレイなどのグラフィックスクリーンティスプレイを備えるコンパクトなコンピュータ、多くの場合タブレットサイズのコンピュータまたはスマートフォンを含む。キャビンコンピュータ115は、モバイルコンピュータデバイス104について本明細書で更に記載される動作および機能のいくつかまたは全てを実装してもよい。
【0033】
ネットワーク109は、ローカルエリアネットワーク、ワイドエリアネットワーク、インターネットワークまたはインターネットを含む、1つ以上のデータ通信ネットワークの任意の組み合わせを広義に示すものであり、地上または衛星リンクを含む有線または無線リンクのいずれかを使用する。ネットワークは、
図1の様々な要素間でデータの交換を提供する任意の媒体または機構によって実装することができる。
図1の様々な要素はまた、ダイレクト(有線または無線)通信リンクを有してもよい。センサ112、コントローラ114、外部データサーバコンピュータ108、およびシステムの他の要素は各々、ネットワーク109と互換性のあるインタフェースを含み、TCP/IP、Bluetooth、CANプロトコル、およびHTTP、TLS等などの上位層プロトコルなどのネットワークを横断する通信のための標準化されたプロトコルを使用するようにプログラムまたは構成されている。
【0034】
農業用インテリジェンスコンピュータシステム130は、圃場管理者コンピューティングデバイス104からの圃場データ106、外部データサーバコンピュータ108からの外部データ110、および遠隔センサ112からのセンサデータを受信するようにプログラムまたは構成されている。農業用インテリジェンスコンピュータシステム130は、本開示の他の項で更に説明されている方法で、データ値の変換および保存、1つ以上の圃場における1つ以上の作物のデジタルモデルの構築、推奨および通知の生成、ならびにスクリプトの生成およびアプリケーションコントローラ114への送信を実行するために、1つ以上のコンピュータプログラム、他のソフトウェア要素、FPGAもしくはASICなどのデジタルでプログラム化された論理、またはそれらの任意の組み合わせをホスト、使用、または実行するように更に構成されていてもよい。
【0035】
一実施形態では、農業用インテリジェンスコンピュータシステム130は、通信層132、プレゼンテーション層134、データ管理層140、ハードウェア/仮想化層150、ならびにモデルおよび圃場データリポジトリ160でプログラムされているか、またはこれらを含む。この文脈での「層」とは、電子デジタルインタフェース回路、マイクロコントローラ、ドライバなどのファームウェア、および/またはコンピュータプログラムもしくは他のソフトウェア要素の任意の組み合わせを意味する。
【0036】
通信層132は、圃場データ、外部データ、およびセンサデータに関して、圃場管理者コンピューティングデバイス104、外部データサーバコンピュータ108、および遠隔センサ112に要求をそれぞれ送信することを含む、入力/出力インタフェース機能を実行するようにプログラムまたは構成されてもよい。通信層132は、受信したデータをモデルおよび圃場データリポジトリ160に送信して、圃場データ106として格納するようにプログラムまたは構成されてもよい。
【0037】
プレゼンテーション層134は、ネットワーク109を介してシステム130に結合されている圃場管理者コンピューティングデバイス104、キャビンコンピュータ115、または他のコンピュータ上に表示するためのグラフィカルユーザインタフェース(GUI)を生成するようにプログラムまたは構成されてもよい。GUIは、農業用インテリジェンスコンピュータシステム130に送信されるデータの入力、モデルへの要求および/もしくは推奨の生成、ならびに/または推奨、通知、モデル、および他の圃場データを表示するためのコントロールを含んでもよい。
【0038】
データ管理層140は、システムの機能要素とリポジトリとの間で通信されるクエリおよび結果セットを含む、リポジトリ160およびシステムの他の機能要素に関連する読み取り動作および書き込み動作を管理するようにプログラムまたは構成されてもよい。データ管理層140の例としては、特に、JDBC、SQLサーバインタフェースコード、および/またはHADOOPインタフェースコードが挙げられる。リポジトリ160は、データベースを含んでもよい。本明細書で使用するとき、「データベース」という用語は、データ本体、リレーショナルデータベース管理システム(RDBMS)のいずれか、またはその両方を意味し得る。本明細書で使用するとき、データベースとは、階層型データベース、リレーショナルデータベース、フラットファイルデータベース、オブジェクトリレーショナルデータベース、オブジェクト指向データベース、分散型データベース、およびコンピュータシステムに格納されたレコードまたはデータの任意の他の構造化されたコレクションを含む、あらゆるデータのコレクションを含み得る。RDBMSの例としては、ORACLE(登録商標)、MYSQL、IBM(登録商標)DB2、MICROSOFT(登録商標) SQL SERVER、SYBASE(登録商標)、およびPOSTGRESQLデータベースを含むことが挙げられるが、これらに限定されない。しかしながら、本明細書で記載されるシステムおよび方法を可能にする、任意のデータベースを使用してもよい。
【0039】
圃場データ106が、農業用インテリジェンスコンピュータシステムと相互作用する1つ以上の農業用機械または農業用機械デバイスを介して農業用インテリジェンスコンピュータシステムに直接提供されない場合は、ユーザデバイス上の(農業用インテリジェンスコンピュータシステムによって提供される)1つ以上のユーザインタフェースを介して、このような情報を入力するようにユーザを促してもよい。例示的な実施形態では、ユーザは、(農業用インテリジェンスコンピュータシステムによって提供される)ユーザデバイス上のマップにアクセスし、マップ上にグラフィカル表示されている特定のCLUを選択することによって識別データを特定してもよい。代替的実施形態では、ユーザ102は、(農業用インテリジェンスコンピュータシステム130によって提供される)ユーザデバイス上のマップにアクセスし、マップ上に圃場の境界線を引くことによって識別データを特定してもよい。このようにCLUを選択したり、またはマップ上に線を引いたりすることによって、地理識別子が示される。代替的実施形態では、ユーザは、米国農務省農場サービス局または他のソースから、ユーザデバイスを介して(シェープファイルとして、または同様のフォーマットで提供される)圃場識別データにアクセスし、そのような圃場識別データを農業用インテリジェンスコンピュータシステムに提供することによって識別データを特定することができる。
【0040】
例示的な実施形態では、農業用インテリジェンスコンピュータシステム130は、データ入力のためのデータマネージャを含むグラフィカルユーザインタフェースを生成し、表示させるようにプログラムされている。上記に記載した方法を用いて1つ以上の圃場を識別した後、データマネージャは、1つ以上のグラフィカルユーザインタフェースウィジェットを提供してもよく、それらが選択されると、圃場、土壌、作物、耕耘、または栄養素の実施に対する変更を認識することができる。データマネージャには、タイムライン表示、スプレッドシート表示、および/または1つ以上の編集可能なプログラムが含まれてもよい。
【0041】
図5は、データ入力用のタイムライン表示の例示的な実施形態を示す。
図5に示されたディスプレイを使用することによって、ユーザコンピュータは、イベントを追加するために特定の圃場と特定の日付とを選択したものを入力することができる。タイムラインの上部に示されるイベントは、「窒素」「植え付け」「実施」、および「土壌」を含み得る。窒素施用イベントを追加するために、ユーザコンピュータが窒素のタブを選択するためのインプットを提供してもよい。次に、ユーザコンピュータは、選択された圃場に窒素を施用することを指示するために、特定の圃場のタイムライン上の位置を選択してもよい。特定の圃場のタイムライン上の位置の選択を受信したことに応答して、データマネージャは、データ入力オーバーレイを表示して、窒素施用、植え付け手順、土壌施用、耕耘手順、灌漑の実施、または特定の圃場に関する他の情報に関連するデータをユーザコンピュータによって入力できるようにしてもよい。例えば、ユーザコンピュータがタイムラインの一部を選択して窒素施用を指示した場合、次に、データ入力オーバーレイには、施用される窒素量、施用日、用いられる肥料の種類、および窒素施用に関連する任意の他の情報を入力するためのフィールドが含まれてもよい。
【0042】
一実施形態では、データマネージャは、1つ以上のプログラムを作成するためのインタフェースを提供する。この文脈での「プログラム」とは、1つ以上の圃場に関連する可能性があり、他の動作においてセットとして再利用するためにデジタルデータストレージに格納することが可能な、窒素施用、植え付け手順、土壌施用、耕耘手順、灌漑の実施、または他の情報に関するデータのセットを意味する。プログラムが作成された後、これを1つ以上の圃場に概念的に適用してもよく、圃場を識別するデータに関連付けて、このプログラムへのレファレンスをデジタルストレージに保存してもよい。このように、同一の窒素施用に関する同一のデータを複数の異なる圃場に対して手作業で入力するのではなく、ユーザコンピュータが特定の窒素施用を指示するプログラムを作成し、次にそのプログラムを複数の異なる圃場に適用することができる。例えば、
図5のタイムライン表示では、上部2つのタイムラインには選択された「春施用」プログラムがあり、このプログラムには4月上旬にエーカー当たり窒素150ポンドの施用が含まれている。データマネージャは、プログラムを編集するためのインタフェースを提供してもよい。一実施形態では、特定のプログラムを編集すると、特定のプログラムを選択した各々の圃場が編集される。例えば、
図5では、「春施用」プログラムを編集して窒素施用をエーカー当たり窒素130ポンドに減少させた場合、上部2つの圃場は、編集されたプログラムに基づいて窒素施用を減少させた状態で更新される。
【0043】
一実施形態では、選択されたプログラムを有する圃場に対する編集を受信したことに応答して、データマネージャは、圃場の選択されたプログラムへの対応関係を消去する。例えば、
図5の上部の圃場に窒素施用が追加される場合、「春施用」プログラムが上部の圃場にもはや適用されないことを示すようにインタフェースを更新してもよい。4月上旬での窒素施用は保持され得る一方で、「春施用」プログラムに対する更新によって4月の窒素施用が変更されることはない。
【0044】
図6は、データ入力用のスプレッドシート表示の例示的な実施形態を示す。ユーザは、
図6に示されるディスプレイを使用して、1つ以上の圃場の情報を作成および編集することができる。データマネージャには、
図6に示すように、窒素、植え付け、実施、および土壌に関する情報を入力するためのスプレッドシートが含まれてもよい。特定のエントリを編集するために、ユーザコンピュータは、スプレッドシート内の特定のエントリを選択して値を更新してもよい。例えば、
図6は、実行中の2番目の圃場の目標収量値に対する更新を示している。加えて、ユーザコンピュータは、1つ以上のプログラムを適用するために、1つ以上の圃場を選択してもよい。特定の圃場のプログラムの選択を受信することに応答して、データマネージャは、選択されたプログラムに基づいて、特定の圃場のエントリを自動的に全て記入してもよい。タイムライン表示と同様に、データマネージャは、プログラムに対する更新を受信したことに応答して、特定のプログラムと関連付けられた圃場ごとにエントリを更新してもよい。加えて、データマネージャは、圃場のエントリのうちの1つに対する編集を受信したことに応答して、圃場に対する選択されたプログラムの対応関係を消去してもよい。
【0045】
一実施形態では、モデルおよび圃場データは、モデルおよび圃場データリポジトリ160内に格納されている。モデルデータは、1つ以上の圃場のために作成されたデータモデルを含む。例えば、作物モデルは、1つ以上の圃場における作物の発育についてのデジタルに構築されたモデルを含み得る。この文脈での「モデル」とは、電子的にデジタル的に格納された、互いに関連付けられた実行可能命令およびデータ値のセットを意味し、これにより、指定された入力値に基づいてプログラムもしくは他のデジタルの呼び出し、起動、または解決のための要求を受信、応答し、特にコンピュータで実装される推奨、出力データの表示、または機械制御に基づいて機能を果たすことができる、1つ以上の格納または計算された出力値を得ることができる。当分野の当業者には、数式を用いてモデルを表現するのが便利だと思われるが、この表現形式は本明細書に開示されるモデルを抽象的な概念に限定するものではなく、その代わりに、本明細書の各々のモデルは、コンピュータを使用してモデルを実装する格納された実行可能命令およびデータの形態で、コンピュータ内において実用的な用途を有する。モデルには、1つ以上の圃場における過去のイベントのモデル、1つ以上の圃場の現在のステータスのモデル、および/または1つ以上の圃場における予測されるイベントのモデルが含まれてもよい。モデルおよび圃場データは、メモリ内のデータ構造、データベーステーブルの列、フラットファイル、もしくはスプレッドシート、または他の形態の格納されたデジタルデータ内に格納されていてもよい。
【0046】
一実施形態では、農業用インテリジェンスコンピュータシステム130は、分類モデル管理サーバコンピュータ(サーバ)170を含むようにプログラムされている。サーバ170は更に、モデル構成命令172、モデル構築命令174、モデル実行命令176、およびユーザインタフェース命令178を含むように構成されている。
【0047】
いくつかの実施形態では、モデル構成命令172は、初期画像データを収集し、初期画像データから植物病を認識するためのデジタルモデルの特定のパラメータの値を決定するためのコンピュータ実行可能命令を提供する。デジタルモデルがSSDである場合、初期画像データは、植物病の識別子で各々ラベル付けされた、マーキングされた領域を含む植物の写真であってよい。SSDの訓練セットを構築する際に、マーキングされた領域を、画像全体に対して更に処理してもよい。初期画像データはまた、単に対応するラベルを有するマーキングされた領域であってよい。SSDの関連パラメータには、アンカーボックスのグループが含まれる。モデル構成命令172は、植物病の症状を示すアンカーボックスを具体的に構築するためのコンピュータ実行可能命令を提供する。
【0048】
いくつかの実施形態では、モデル構築命令174は、訓練セットを構築し、この訓練セットでデジタルモデルを訓練するためのコンピュータ実行可能命令を提供する。訓練セットは、マーキングされた領域および対応するラベルを有する特定のサイズの画像、または同等のマーキングされた領域および対応するラベルを有する画像のトリミング、パディング、またはスケーリングされたバージョンを含むことができる。デジタルモデルがSSDである場合、訓練セットには、アンカーボックスにマーキングされた領域をマッピングすることも含まれる。
【0049】
いくつかの実施形態では、モデル実行命令176は、分類のためにデジタルモデルを新しい画像に適用するためのコンピュータ実行可能命令を提供する。新しい画像とは、1つ以上の領域において1つ以上の植物病の症状を示す、新しい植物の写真のことであり得る。新しい画像は、デジタルモデルに供給される前に、同様にトリミング、パディング、またはスケールリングすることが必要とされ得る。デジタルモデルがSSDである場合、デジタルモデルを適用することで、1つ以上の領域ごとに、特定の植物病への少なくとも1つの分類を作成することが予期される。
【0050】
いくつかの実施形態では、ユーザインタフェース命令178は、他のデバイスとの通信を管理するためのコンピュータ実行可能命令を提供する。通信には、画像ソースからラベルを含む初期画像データを受信すること、クライアントデバイスから分類のための新しい写真を受信すること、新しい写真の分類結果をクライアントデバイスに送信すること、またはSSDを表すデジタルデータを別のクライアントデバイスに送信することが含まれ得る。
【0051】
サーバ170の各構成要素は、実行可能命令がロードされており、実行されると農業用インテリジェンスコンピューティングシステムにそれらのモジュールを参照して本明細書に記載された機能または動作を実行させる、農業用インテリジェンスコンピュータシステム130内のRAMなどのメインメモリの1つ以上のページのセットを含んでいる。例えば、モデル構成モジュール172は、実行されると本明細書に記載されている場所選択機能を実行させる命令を含む、RAM内のページのセットを含んでもよい。命令は、CPUの命令セット内の機械実行可能コードであってもよく、JAVA、C、C++、OBJECTIVE-C、または任意の他の人間が読み取れるプログラミング言語もしくは環境で書き込まれたソースコードに基づいて、単独で、またはJAVASCRIPT、他のスクリプト言語、および他のプログラミングソーステキストのスクリプトと組み合わせてコンパイルされていてもよい。「ページ」という用語は、メインメモリ内の任意の領域を広義に意味することが意図され、システムにおいて使用される特定の用語は、メモリアーキテクチャまたはプロセッサアーキテクチャに応じて変更され得る。別の実施形態では、サーバ170の各構成要素はまた、農業用インテリジェンスコンピュータシステム130または別個のリポジトリシステムの不揮発性RAMまたはディスクストレージなどの大容量ストレージデバイス内にデジタル的に格納されているソースコードの1つ以上のファイルまたはプロジェクトを表すものであってもよく、これらは、コンパイルまたは翻訳されると実行可能命令を生成させるが、この命令は、実行されるとそれらのモジュールを参照して本明細書に記載されている機能または動作を農業用インテリジェンスコンピューティングシステムに実行させる。換言すれば、プログラマまたはソフトウェア開発者が、実行可能形式への後のコンパイル、または農業用インテリジェンスコンピュータシステム130によって実行するためのバイトコードもしくは等価物への翻訳のためにソースコードを編成し構成する方式を、作図によって提示してもよい。
【0052】
ハードウェア/仮想化層150は、1つ以上の中央演算処理装置(CPU)、メモリコントローラ、および揮発性もしくは揮発性メモリ、ディスクなどの不揮発性ストレージ、例えば、
図4に関連して図示および記載されるようなI/Oデバイスまたはインタフェースなどのコンピュータシステムの他のデバイス、構成要素、または要素を含む。また、層150は、仮想化、コンテナ化、またはその他の技術をサポートするように構成された、プログラムされた命令を含んでもよい。
【0053】
明確な例を図示するために、
図1では、特定の機能要素の限られた数のインスタンスを示している。しかしながら、他の実施形態では、このような要素は任意の数で存在していてもよい。例えば、実施形態は、異なるユーザと関連付けられた、数千の、または数百万の異なるモバイルコンピューティングデバイス104を使用してもよい。更に、システム130および/または外部データサーバコンピュータ108は、物理マシンまたは仮想マシンの2つ以上のプロセッサ、コア、クラスタ、またはインスタンスを使用して実装され、データセンタ、共有コンピューティング施設、またはクラウドコンピューティング施設において離散的な場所に構成されても、または他の要素と同じ場所に設置されてもよい。
【0054】
2.2.アプリケーションプログラムの概要
【0055】
一実施形態では、1つ以上の汎用コンピュータを用いてロードされ実行される、1つ以上のコンピュータプログラムまたは他のソフトウェア要素を用いて本明細書に記載される機能を実装することにより、汎用コンピュータを特定の機械として、または本明細書に記載される機能を実行するのに特別に適応したコンピュータとして構成させることになる。更に、本明細書で更に記載されるフロー図の各々は、記載されている機能を実装するためにコンピュータまたは論理をプログラムするのに使用することができるアルゴリズム、計画または指示として、単独で、または散文で本明細書のプロセスおよび機能の説明と組み合わせて提供することができる。換言すれば、本明細書の全ての散文テキストと全ての図面とは共に、この種の発明および開示に適した技術レベルを有する当業者の技術と知識とを組み合わせて、当業者が本明細書に記載される機能を実行するようにコンピュータをプログラムすることができるのに十分なアルゴリズム、計画、または指示の開示を提供することを意図している。
【0056】
一実施形態では、ユーザ102は、オペレーティングシステムおよび1つ以上のアプリケーションプログラムまたはアプリで構成されている圃場管理者コンピューティングデバイス104を使用して、農業用インテリジェンスコンピュータシステム130と相互作用する。圃場管理者コンピューティングデバイス104はまた、プログラム制御または論理制御下で、独立して自動的に農業用インテリジェンスコンピュータシステムと相互運用してもよく、直接的なユーザ相互作用は必ずしも必要ではない。圃場管理者コンピューティングデバイス104は、スマートフォン、PDA、タブレットコンピューティングデバイス、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、または情報を伝送および受信し、本明細書に記載される機能を実行することができる任意の他のコンピューティングデバイスのうちの1つ以上を広義に表している。圃場管理者コンピューティングデバイス104は、圃場管理者コンピューティングデバイス104に格納されたモバイルアプリケーションを使用して、ネットワークを介して通信することができ、いくつかの実施形態では、このデバイスは、ケーブル113またはコネクタを使用してセンサ112および/またはコントローラ114に結合されていてもよい。特定のユーザ102は、システム130に関連して、2つ以上の圃場管理者コンピューティングデバイス104を一度に所有、操作、または所持および使用することができる。
【0057】
モバイルアプリケーションは、ネットワークを介して、1つ以上のモバイルコンピューティングデバイスにクライアント側の機能を提供してもよい。例示的な実施形態では、圃場管理者コンピューティングデバイス104は、ウェブブラウザまたはローカルクライアントアプリケーションまたはアプリを介して、モバイルアプリケーションにアクセスしてもよい。圃場管理者コンピューティングデバイス104は、HTTP、XMLおよび/もしくはJSON、またはアプリ固有のプロトコルなどのウェブベースのプロトコルまたはフォーマットを使用して、1つ以上のフロントエンドサーバにデータを伝送し、そこからデータを受信してもよい。例示的な実施形態では、データは、モバイルコンピューティングデバイスに入力される要求、および圃場データなどのユーザ情報の形態を取っていてもよい。いくつかの実施形態では、モバイルアプリケーションは、無線信号のマルチラテレーション、全地球測位システム(GPS)、WiFi測位システム、または他のモバイル測位方法などの標準的な追跡技術を使用して圃場管理者コンピューティングデバイス104の位置を決定する、圃場管理者コンピューティングデバイス104の位置追跡ハードウェアおよびソフトウェアと相互作用する。場合によっては、位置データ、またはデバイス104、ユーザ102、および/もしくはユーザアカウントと関連する他のデータは、デバイスのオペレーティングシステムに対するクエリによって、またはデバイス上のアプリにオペレーティングシステムからデータを取得するように要求することによって取得することができる。
【0058】
一実施形態では、圃場管理者コンピューティングデバイス104は、限定するものではないが、1つ以上の圃場の地理的位置、1つ以上の圃場に関する耕耘情報、1つ以上の圃場に植え付けられた作物、および1つ以上の圃場から抽出された土壌データのうちの1つ以上を表すデータ値からなるか、またはこれらを含む圃場データ106を農業用インテリジェンスコンピュータシステム130に送信する。圃場管理者コンピューティングデバイス104は、1つ以上の圃場のデータ値を指定するユーザ102からのユーザ入力に応答して、圃場データ106を送信してもよい。加えて、圃場管理者コンピューティングデバイス104は、データ値のうちの1つ以上が圃場管理者コンピューティングデバイス104に利用できるようになる場合、圃場データ106を自動的に送信してもよい。例えば、圃場管理者コンピューティングデバイス104は、灌漑センサおよび/または灌漑コントローラを含む遠隔センサ112および/またはアプリケーションコントローラ114に通信可能に結合されていてもよい。アプリケーションコントローラ114が1つ以上の圃場に水を放出したことを示すデータを受信したことに応答して、圃場管理者コンピューティングデバイス104は、圃場データ106を農業用インテリジェンスコンピュータシステム130に送信して、1つ以上の圃場に水が放出されたことを示してもよい。本開示で識別される圃場データ106は、HTTP、または別の適切な通信もしくはメッセージングプロトコル上のパラメータ化されたURLを使用してコンピューティングデバイス間で通信される電子デジタルデータを使用して入力および通信されてもよい。
【0059】
モバイルアプリケーションの市販例は、Climate Corporation(サンフランシスコ、カリフォルニア州)から市販されているCLIMATE FIELDVIEWである。CLIMATE FIELDVIEWアプリケーションまたは他のアプリケーションは、本開示の出願日以前に開示されていない特徴、機能およびプログラミングを含むように修正、拡張、または適応してもよい。一実施形態では、モバイルアプリケーションは統合ソフトウェアプラットフォームを含んでおり、これにより、栽培者の圃場に関する履歴データと栽培者が比較したいと望む任意の他のデータとが組み合わされるため、栽培者は、彼らの運用に対して事実に基づいた決定をすることが可能となる。この組み合わせおよび比較はリアルタイムで行われ、潜在的なシナリオを提供する科学的モデルに基づいて、栽培者がより良好に、より情報に基づいた意思決定を下すことを可能にする。
【0060】
図2は、実行するために例示的なモバイルアプリケーションがロードされる場合の、メインメモリ内の命令セットの2つの例示的な論理組織の図を図示する。
図2において、各々の名前の付いた要素は、RAMもしくは他のメインメモリの1つ以上のページの領域、または1つ以上のディスクストレージもしくは他の不揮発性ストレージのブロック、およびそれらの領域内のプログラムされた命令を示している。一実施形態では、図(a)において、モバイルコンピュータアプリケーション200は、アカウント-圃場-データ取り込み-共有命令202、概要およびアラート命令204、デジタルマップブック命令206、種子および植え付け命令208、窒素命令210、気象命令212、圃場保全命令214、および性能命令216を含む。
【0061】
一実施形態では、モバイルコンピュータアプリケーション200は、手動でアップロードすることによって、またはAPIを介して第三者のシステムから圃場データを受信、変換、取り込みを行うようにプログラムされる、アカウント、圃場、データ取り込み、共有命令202を含む。データの種類としては、特に、圃場の境界、収量マップ、植え付け時のマップ、土壌試験結果、施用時のマップ、および/または管理ゾーンを挙げることができる。データフォーマットとしては、特に、シェープファイル、第三者のネイティブデータフォーマット、および/または農場管理情報システム(FMIS)のエクスポートを挙げることができる。データの受信は、手動でのアップロード、添付ファイル付きの電子メール、モバイルアプリケーションにデータをプッシュする外部API、またはモバイルアプリケーションにデータをプルするために外部システムのAPIを呼び出す命令によって生じ得る。一実施形態では、モバイルコンピュータアプリケーション200は、データ受信箱を含む。データ受信箱の選択を受信したことに応答して、モバイルコンピュータアプリケーション200は、データファイルを手動でアップロードし、アップロードされたファイルをデータマネージャにインポートするためのグラフィカルユーザインタフェースを表示してもよい。
【0062】
一実施形態では、デジタルマップブック命令206は、デバイスメモリに格納された圃場マップデータ層を含み、データ可視化ツールおよび地理空間圃場ノートでプログラムされている。これにより、圃場のパフォーマンスを参照、記録、および視覚的に考察をするために、すぐ手の届く所に便利な情報が栽培者に提供される。一実施形態では、概要およびアラート命令204は、栽培者にとって重要なことに関する運用全体にわたる図、および特定の問題に対して行動を起こしたり、またはそれにフォーカスするためのタイミングのよい推奨を提供するようにプログラムされている。これにより、栽培者は注意を必要とすることに時間を充てることができ、季節を通して時間を節約し、収量を維持することができる。一実施形態では、種子および植え付け命令208は、科学的モデルおよび経験的データに基づいて、選種、交配種の配置のためのツール、および可変レート(VR)スクリプト作成を含むスクリプト作成を提供するようにプログラムされている。これにより、栽培者は、種子の購入、配置、および個体数を最適化することで、収量または投資収益を最大化することができる。
【0063】
一実施形態では、スクリプト生成命令205は、可変レート(VR)の肥沃度スクリプトを含むスクリプトを生成するためのインタフェースを提供するようにプログラムされている。このインタフェースにより、栽培者は、栄養素の施用、植え付け、および灌漑などの、圃場に対して実行するためのスクリプトを作成することができる。例えば、植え付け用のスクリプトインタフェースは、植え付けのための種子の種類を特定するためのツールを含んでもよい。種子の種類の選択を受信すると、モバイルコンピュータアプリケーション200は、デジタルマップブック命令206の一部として作成された圃場マップデータ層などの管理ゾーンに分割された1つ以上の圃場を表示することができる。一実施形態では、管理ゾーンは、各土壌ゾーンおよび土壌の名称、質感、ゾーンごとの排水路、または他の圃場データを識別するパネルを伴う土壌ゾーンを含む。モバイルコンピュータアプリケーション200は、1つ以上の圃場のマップ上に、土壌ゾーンなどの管理ゾーンを描画するためのグラフィカルツールなどの、そのような編集または作成のためのツールを表示することもできる。全ての管理ゾーンに植え付け手順を適用してもよく、または管理ゾーンの異なるサブセットに異なる植え付け手順を適用してもよい。スクリプトが作成されると、モバイルコンピュータアプリケーション200は、アーカイブ形式または圧縮形式などの、アプリケーションコントローラによって読み取り可能な形式で、スクリプトをダウンロード可能にしてもよい。加えて、および/またはその代わりに、スクリプトは、モバイルコンピュータアプリケーション200から直接キャビンコンピュータ115に送信されてもよく、および/または1つ以上のデータサーバにアップロードされて、更なる使用のために格納されてもよい。
【0064】
一実施形態では、窒素命令210は、作物への窒素の可用性を視覚化することにより、窒素に関する決定を通知するためのツールを提供するようにプログラムされている。これにより、栽培者は、季節を通じて窒素施用を最適化することで、収量または投資収益を最大化することができる。例示的なプログラムされた機能としては、特に、施肥ゾーンおよび/もしくは(センサの近接度と解像度とに応じてミリメートルかそれ以下と同程度に精密となる)高い空間分解能でセンサから取得されるデータなどのサブフィールドの土壌データから生成される画像を描画することができるSSURGO画像などの画像を表示すること;現在の栽培者が定義するゾーンのアップロード;植物の栄養素の可用性グラフおよび/もしくは複数のゾーンにわたって窒素施用を調整することができるマップを提供すること;機械を駆動するためのスクリプトの出力;マスデータ入力および調整のためのツール;ならびに/またはデータを可視化するためのマップが挙げられる。この文脈の「マスデータ入力」とは、データを一度入力し、次に同じデータをシステム内で定義されている複数の圃場および/またはゾーンに適用することを意味し得る。例示的なデータとしては、同一の栽培者の多くの圃場および/またはゾーンに対して同一である窒素施用データが挙げられるが、このようなマスデータ入力は、あらゆる種類の圃場データをモバイルコンピュータアプリケーション200に入力することに適用される。例えば、窒素命令210は、窒素施用および実施プログラムの定義を受け入れ、それらのプログラムを複数の圃場にわたって適用することを指定するユーザ入力を受け入れるようにプログラムされてもよい。この文脈の「窒素施用プログラム」とは、特に、名称、カラーコード、もしくは他の識別子、1つ以上の施用日、日付および量ごとの材料もしくは製品の種類、注入もしくは散布などの施用もしくは混入方法、ならびに/または日付ごとの施用量もしくは施用率、施用の対象である作物もしくは交配種に関する、格納され、名前の付いたデータのセットを意味する。この文脈の「窒素実施プログラム」とは、実施名;以前の作物;耕耘システム;主要な耕耘日;用いられた1つ以上の以前の耕耘システム;用いられた肥料などの施用種類の1つ以上の指標に関する、格納され、名前の付いたデータのセットを意味する。窒素命令210はまた、指定された窒素を使用した植物についての予測、および余剰または不足が予測されるかどうかを示す窒素グラフを生成して表示させるようにプログラムされてもよく、いくつかの実施形態では、異なる色のインジケータによって余剰の大きさまたは不足の大きさを通知してもよい。一実施形態では、窒素グラフは、複数の行を含むコンピュータディスプレイデバイス内のグラフィックディスプレイであって、各々の行が関連付けられ、圃場を識別するグラフィックディスプレイと;どのような作物が圃場に植え付けられているか、圃場のサイズ、圃場の位置、および圃場周辺のグラフィック表示を指定するデータと;各行に、月名に関連させた点で各々の窒素施用および窒素量を指定するグラフィックインジケータを有する、月ごとのタイムラインと;余剰または不足に関する数字および/または色付きのインジケータであって、色によって大きさが示されるインジケータとを含む。
【0065】
一実施形態では、窒素グラフには、ユーザが自身の窒素グラフを最適化できるように、植え付けのための窒素および実施プログラムを動的に変更するための、ダイヤルまたはスライダバーなどの1つ以上のユーザ入力機構が含まれていてもよい。ユーザは次に、最適化された窒素グラフと、関連する植え付けのための窒素および実施プログラムとを使用して、可変レート(VR)肥沃度スクリプトを含む1つ以上のスクリプトを実行してもよい。窒素命令210はまた、指定された窒素を使用した植物についての予測、および余剰または不足が予測されるかどうかを示す窒素マップを生成して表示させるようにプログラムされてもよく、いくつかの実施形態では、異なる色のインジケータによって余剰の大きさまたは不足の大きさを通知してもよい。窒素マップは、指定された窒素を使用した植物についての予測、ならびに過去および将来の異なる時期(毎日、毎週、毎月、または毎年などの)に余剰または不足が予測されるかどうかを、余剰または不足についての数字のインジケータ、および/または色によって大きさが示される色付きのインジケータを使用して表示することができる。一実施形態では、窒素マップには、ユーザが余剰から不足までの好ましい量を取得するなどして、自身の窒素マップを最適化できるように、ダイヤルまたはスライダバーなどの1つ以上のユーザ入力機構が含まれ、植え付けのための窒素および実施プログラムを動的に変更してもよい。ユーザは次に、自身の最適化された窒素マップと、関連する植え付けのための窒素および実施プログラムとを使用して、可変レート(VR)肥沃度スクリプトを含む1つ以上のスクリプトを実行してもよい。他の実施形態では、窒素命令210に対する同様の命令を、(リンおよびカリウムなどの)他の栄養素の施用、農薬の施用、および灌漑プログラムに対して使用することができる。
【0066】
一実施形態では、気象命令212は、圃場に特有の最近の気象データ、および予報された気象情報を提供するようにプログラムされている。このことにより、栽培者は時間を節約することができ、毎日の運用上の決定に関する効率的な統合ディスプレイを有することが可能になる。
【0067】
一実施形態では、圃場保全命令214は、旬の作物のバリエーションおよび潜在的な懸念を強調する遠隔センシング画像をタイミングよく提供するようにプログラムされている。例示的なプログラムされた機能としては、特に、発生し得る雲もしくは雲の陰を認識するための雲の調査;圃場画像に基づいて窒素の指数を決定すること;例えば、圃場の保全に関連するもの、ならびに偵察ノートの表示および/もしくは共有を含む偵察層のグラフィカルな可視化;ならびに/または複数のソースから衛星画像をダウンロードし、栽培者のために画像に優先順位を付けることが含まれる。
【0068】
一実施形態では、性能命令216は、評価、考察、および決定するための農場におけるデータを使用して、ツールの報告、分析、および考察を提供するようにプログラムされている。これにより、栽培者は、なぜ投資収益が前回の水準にあったのかを事実に基づいて判断を下し、収量を制限している要因を考察することで、翌年に向けて改善された成果を追求することができる。性能命令216は、農業用インテリジェンスコンピュータシステム130および/または外部データサーバコンピュータ108において実行されるバックエンドの解析プログラムにネットワーク109を介して通信するようにプログラムされていてもよく、特に、収量、収量差、交配種、個体数、SSURGOゾーン、土壌試験特性、または標高などの測定値を分析するために構成されていてもよい。プログラムされた報告および分析には、特に、収量変動解析、処置効果の評価、多数の栽培者から収集した匿名化されたデータに基づく他の栽培者に対する収量および他の測定値のベンチマーキング、または種子および植え付けのためのデータが含まれていてもよい。
【0069】
このように構成された命令を有するアプリケーションを、同一の一般的なユーザインタフェースの外観を保ちながら、異なるコンピューティングデバイスプラットフォームに実装してもよい。例えば、モバイルアプリケーションは、タブレット、スマートフォン、またはクライアントコンピュータのブラウザを使用してアクセスされるサーバコンピュータ上で実行するためにプログラムされていてもよい。更に、タブレットコンピュータまたはスマートフォン用に構成されたモバイルアプリケーションは、キャビンコンピュータ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への転送を取り込み、管理、提供するようにプログラムされていてもよい。
【0070】
2.3.コンピュータシステムへのデータの取り込み
【0071】
一実施形態では、外部データサーバコンピュータ108は、1つ以上の圃場の土壌の組成を示す土壌データ、および1つ以上の圃場の温度ならびに降水量を示す気象データを含む外部データ110を格納している。気象データは、過去および現在の気象データだけでなく、将来の気象データに関する予報を含み得る。一実施形態では、外部データサーバコンピュータ108は、異なるエンティティによってホストされる複数のサーバを含んでいる。例えば、1台目のサーバは土壌組成データを含み得るが、2台目のサーバは気象データを含み得る。加えて、土壌組成データは、複数のサーバに格納されていてもよい。例えば、あるサーバでは土壌中の砂、沈泥および粘土の割合を示すデータを格納していてもよく、2台目のサーバでは土壌中の有機物質(OM)の割合を示すデータを格納していてもよい。
【0072】
一実施形態では、遠隔センサ112は、1つ以上の観測結果を生成するようにプログラムまたは構成された、1つ以上のセンサを含む。遠隔センサ112は、衛星などの空中センサ、車両センサ、植え付け装置センサ、耕耘センサ、肥料または殺虫剤施用センサ、収穫機センサ、および1つ以上の圃場からデータを受信することができる任意の他の機具であってよい。一実施形態では、アプリケーションコントローラ114は、農業用インテリジェンスコンピュータシステム130からの命令を受信するようにプログラムまたは構成されている。アプリケーションコントローラ114はまた、農業用車両または機具の運転パラメータを制御するようにプログラムまたは構成されていてもよい。例えば、アプリケーションコントローラは、トラクタ、植え付け装置、耕耘装置、肥料もしくは殺虫剤用装置、収穫機などの車両の運転パラメータ、または送水バルブなどの他の農機具を制御するようにプログラムまたは構成されていてもよい。他の実施形態では、センサおよびコントローラを任意に組み合わせて使用してもよいが、以下のものは単に例として選択されたに過ぎない。
【0073】
システム130は、ユーザ102の制御下で、共有データベースシステムにデータを投稿した多数の栽培者から、大容量ベースでデータを取得または取り込んでもよい。このデータ取得の形態は、システム130によって使用するためのデータを取得するために、1つ以上のユーザ制御のコンピュータ操作が要求またはトリガーされることから、「手動データの取り込み」と称することができる。一例として、Climate Corporation(サンフランシスコ、カリフォルニア州)から市販されているCLIMATE FIELDVIEWアプリケーションを動作させ、リポジトリ160に格納するためにデータをシステム130にエクスポートしてもよい。
【0074】
例えば、種子モニタシステムは、登録および/または診断を行うために、CANバックボーンおよび二地点間接続を含む信号ハーネスを介して、播種装置の構成部品を制御することも、種子センサからの信号を含む植え付けデータを取得することもできる。種子モニタシステムは、キャビンコンピュータ115、またはシステム130内の他のデバイスを介して、種子の間隔、個体数、および他の情報をユーザに表示するようにプログラムまたは構成することができる。米国特許第8,738,243号明細書、および米国特許出願公開第20150094916号明細書に例が記載されており、本開示は、それらの他の特許開示についての知識を前提とするものである。
【0075】
同様に、収量モニタシステムには、収量測定データをキャビンコンピュータ115、またはシステム130内の他のデバイスに送信する、収穫装置用の収量センサが含まれていてもよい。収量モニタシステムは、1つ以上の遠隔センサ112を利用して、コンバインまたは他の収穫機内の穀物の水分測定値を取得し、これらの測定値をキャビンコンピュータ115またはシステム130内の他のデバイスを介してユーザに伝送してもよい。
【0076】
一実施形態では、本明細書の他の箇所で記載されている種類の任意の移動車両または装置と共に使用することができるセンサ112の例としては、運動センサおよび位置センサが挙げられる。運動センサは、レーダまたは車輪速度センサ、加速度計、またはジャイロなどの速度センサのいずれかを含み得る。位置センサは、特に、GPSレシーバもしくはトランシーバ、または近くのWiFiホットスポットに基づいて位置を決定するようにプログラムされた、WiFiベースの位置アプリまたはマッピングアプリを含み得る。
【0077】
一実施形態では、トラクタまたは他の移動車両と共に使用することができるセンサ112の例としては、エンジン速度センサ、燃料消費量センサ、GPSもしくはレーダ信号と相互作用する領域カウンタもしくは距離カウンタ、PTO(パワーテイクオフ)速度センサ、圧力もしくは流量などの油圧パラメータを検出するために構成されるトラクタ用油圧センサ、および/または油圧ポンプ速度、車輪速度センサ、または車輪スリップセンサが挙げられる。一実施形態では、トラクタと共に使用することができるコントローラ114の例としては、油圧方向コントローラ、圧力コントローラ、および/もしくは流量コントローラ;油圧ポンプ速度コントローラ;速度コントローラもしくは調速機;連結位置コントローラ;または自動操舵を提供する車輪位置コントローラが挙げられる。
【0078】
一実施形態では、播種機、すじ播き機、またはエアシーダーなどの種子の植え付け装置と共に使用することができるセンサ112の例としては、光学、電磁、もしくは衝撃センサであってもよい種子センサ;ロードピン、ロードセル、圧力センサなどのダウンフォースセンサ;反射率センサ、水分センサ、導電率センサ、光学残量センサ、もしくは温度センサなどの土壌特性センサ;植え付け深度センサ、ダウンフォース筒内圧センサ、種子ディスク速度センサ、種子駆動モータエンコーダ、種子コンベアシステム用速度センサ、もしくは真空レベルセンサなどの基準センサを作動させる構成要素;または光学もしくは他の電磁センサ、もしくは衝撃センサなどの農薬施用センサが挙げられる。一実施形態では、このような種子植え付け装置と共に使用することができるコントローラ114の例としては、油圧シリンダと関連する弁のためのコントローラなどのツールバーフォールドコントローラ;空気圧シリンダ、エアバッグ、もしくは油圧シリンダと関連し、ダウンフォースを個々の行単位もしくは播種機のフレーム全体に適用するためにプログラムされた弁のためのコントローラなどのダウンフォースコントローラ;線形アクチュエータなどの植え付け深度コントローラ;電気式種子メーター用駆動モータ、油圧式種子メーター用駆動モータ、もしくは刈幅制御クラッチなどの計測コントローラ;種子もしくは空気と種子の混合物を、種子メーターもしくは中央のバルクホッパーに、あるいはそれらから種子を分配するのを選択的に可能にするか、もしくは防止するためにプログラムされた種子メーター用駆動モータ、もしくは他のアクチュエータなどの複合選択コントローラ;電気式種子メーター用駆動モータ、もしくは油圧式種子メーター用駆動モータなどの計測コントローラ;ベルト式種子送達コンベアモータのためのコントローラなどの種子コンベアシステムコントローラ;空気もしくは油圧アクチュエータのためのコントローラなどのマーカーコントローラ;または計測駆動コントローラ、オリフィスのサイズ、もしくは位置コントローラなどの農薬施用流量コントローラが挙げられる。
【0079】
一実施形態では、耕耘装置と共に使用することができるセンサ112の例としては、シャンクもしくはディスクなどの工具用の位置センサ;深度、ギャング角、もしくは側方間隔を検出するために構成された、このような工具用の工具位置センサ;ダウンフォースセンサ;または通風力センサが挙げられる。一実施形態では、耕耘装置と共に使用することができるコントローラ114の例としては、工具の深度、ギャング角、または側方間隔を制御するように構成されるコントローラなどのダウンフォースコントローラまたは工具位置コントローラが挙げられる。
【0080】
一実施形態では、播種機上のスタータ肥料システム、心土用施肥機、または肥料噴霧機などの肥料、殺虫剤、殺真菌剤等を施用するための装置に関連して使用することのできるセンサ112の例としては、流量センサもしくは圧力センサなどの流体システム基準センサ;噴霧ヘッド弁もしくは流体ライン弁が開いているかどうかを示すセンサ;充填レベルセンサなどのタンクと関連するセンサ;一部もしくはシステム全体にわたる供給ラインセンサ、あるいは行を指定した供給ラインセンサ;または噴霧機ブームに配置される加速度計などの運動センサが挙げられる。一実施形態では、このような装置と共に使用することができるコントローラ114の例としては、ポンプ速度コントローラ;圧力、流量、方向、PWM等を制御するようにプログラムされる弁コントローラ;またはブームの高さ、心土用耕耘機の深度、もしくはブーム位置のためなどの位置アクチュエータが挙げられる。
【0081】
一実施形態では、収穫機と共に使用することができるセンサ112の例としては、衝撃プレートのひずみゲージもしくは位置センサ、容量式流量センサ、ロードセンサ、重量センサ、あるいはエレベータもしくはオーガと関連するトルクセンサ、あるいは光学式もしくは他の電磁式穀物高さセンサなどの収量モニタ;容量センサなどの穀物水分センサ;衝撃、光学、もしくは容量センサを含む穀物損失センサ;ヘッダーの高さ、ヘッダー種類、デッキプレートのギャップ、フィーダ速度、およびリール速度センサなどのヘッダー操作基準センサ;凹部クリアランス、ロータ速度、シュークリアランス、もしくはチェーファークリアランスセンサなどの分離装置操作基準センサ;位置、操作、もしくは速度用オーガセンサ;またはエンジン速度センサが挙げられる。一実施形態では、収穫機と共に使用することができるコントローラ114の例としては、ヘッダーの高さ、ヘッダー種類、デッキプレートのギャップ、フィーダ速度、もしくはリール速度センサなどの要素のためのヘッダー操作基準コントローラ;凹部クリアランス、ロータ速度、シュークリアランス、もしくはチェーファークリアランスセンサなどの機構のための分離装置操作基準コントローラ;またはオーガ位置、操作、もしくは速度用コントローラが挙げられる。
【0082】
一実施形態では、穀物カートと共に使用することができるセンサ112の例としては、重量センサ、またはオーガ位置、操作、もしくは速度用センサが挙げられる。一実施形態では、穀物カートと共に使用することができるコントローラ114の例としては、オーガ位置、操作、または速度用コントローラが挙げられる。
【0083】
一実施形態では、センサ112およびコントローラ114の例は、無人航空機(UAV)装置または「ドローン」に設置されていてもよい。このようなセンサとしては、可視光線、赤外線、紫外線、近赤外線(NIR)等を含む、あらゆる範囲の電磁スペクトルに有効な検出器を備えたカメラ;加速度計;高度計;温度センサ;湿度センサ;ピトー管センサ、あるいは他の対気速度センサもしくは風速センサ;バッテリー寿命センサ;またはレーダエミッタおよび反射されたレーダのエネルギー検出装置;他の電磁放射線エミッタおよび反射された電磁放射線の検出装置を挙げてもよい。このようなコントローラとしては、誘導装置もしくはモータ制御装置、コントロールサーフェスコントローラ、カメラコントローラ、または前述のセンサのいずれかから管理され構成されるデータを有効にし、操作、取得するようにプログラムされたコントローラを挙げてもよい。米国特許出願第14/831,165号明細書に例が記載されており、本開示は、この他の特許開示についての知識を前提とするものである。
【0084】
一実施形態では、センサ112およびコントローラ114は、土壌をサンプル採取し、土壌化学試験、土壌水分試験、および土壌に関する他の試験を実行するように構成またはプログラムされた土壌サンプリング装置、および測定装置に固定されていてもよい。例えば、2017年8月16日に出願された米国特許出願第15/551,582号明細書で開示される装置を使用してもよく、本開示は、これらの特許開示についての知識を前提とするものである。
【0085】
一実施形態では、センサ112およびコントローラ114は、圃場の気象状況をモニタするための気象デバイスを含み得る。例えば、2015年4月29日に出願された米国仮特許出願第62/154,207号明細書、2015年6月12日に出願された米国仮特許出願第62/175,160号明細書、2015年7月28日に出願された米国仮特許出願第62/198,060号明細書、および2015年9月18日に出願された米国仮特許出願第62/220,852号明細書で開示される装置を使用してもよく、本開示は、これらの特許開示についての知識を前提とするものである。
【0086】
2.4.プロセスの概要-耕種学的モデルの訓練
【0087】
一実施形態では、農業用インテリジェンスコンピュータシステム130は、耕種学的モデルを生成するようにプログラムまたは構成されている。この文脈での耕種学的モデルとは、1つ以上の圃場の識別データおよび収穫データなどの圃場データ106を含む、農業用インテリジェンスコンピュータシステム130のメモリ内のデータ構造のことである。耕種学的モデルはまた、圃場上の1つ以上の作物の発育に影響を及ぼし得る条件、または1つ以上の作物の特性のいずれかまたは両方を記述する算出された耕種学的特性を含み得る。加えて、耕種学的モデルは、作物の推奨、灌漑の推奨、植え付けの推奨、肥料の推奨、殺真菌剤の推奨、農薬の推奨、収穫の推奨、および他の作物管理に関する推奨などの耕種学的因子に基づいた推奨を含み得る。耕種学的因子はまた、耕種学的収量などの、1つ以上の作物に関連する結果を推定するために使用してもよい。作物の耕種学的収量とは、生産される作物量の推定値のことであり、または、いくつかの実施例では、生産された作物から得られた収入または利益のことである。
【0088】
一実施形態では、農業用インテリジェンスコンピュータシステム130は、事前構成された耕種学的モデルを使用して、現在受信された位置および1つ以上の圃場の作物情報に関する耕種学的特性を算出してもよい。事前構成された耕種学的モデルは、以前処理した圃場データを基準としており、限定はしないが、識別データ、収穫データ、肥料データ、および気象データが含まれる。事前構成された耕種学的モデルは、モデルの精度を確保するために、交差検証されていてもよい。公差検証は、同一もしくは近くの位置で気象データを提供する雨量計もしくはセンサによる降水量評価の比較、または土壌サンプル測定値による窒素含量の評価などの、圃場における実際の結果と予測した結果を比較する、グラウンドトゥルースとの比較を含み得る。
【0089】
図3は、農業用インテリジェンスコンピュータシステムが、1つ以上のデータソースによって提供される圃場データを用いて、1つ以上の事前構成された耕種学的モデルを生成する、プログラムされたプロセスを図示する。
図3は、これから記載される動作を実行するための、農業用インテリジェンスコンピュータシステム130の機能要素をプログラムするためのアルゴリズムまたは命令として機能することができる。
【0090】
ブロック305において、農業用インテリジェンスコンピュータシステム130は、1つ以上のデータソースから受信された圃場データの耕種学的データの前処理を実行するように構成またはプログラムされている。1つ以上のデータソースから受信された圃場データは、受信された圃場データ値に悪影響を及ぼす可能性のある、測定された異常値を含む耕種学的データ内のノイズ、歪曲効果、および交絡因子を除去するために前処理してもよい。耕種学的データの前処理の実施形態としては、異常データ値、他のデータ値を不必要に歪曲することが知られている特定の測定されたデータ点と一般的に関連するデータ値を除去すること、ノイズから相加効果または相乗効果を除去または低減するのに使用されるデータ平滑化、データ集計またはデータサンプリング手法、および正のデータ入力と負のデータ入力との間に明白な区別をもたらすために使用される他のフィルタリングまたはデータ導出手法を挙げてもよいが、これらに限定されない。
【0091】
ブロック310において、農業用インテリジェンスコンピュータシステム130は、初期耕種学的モデルを生成するのに有用なデータセットを識別するために、前処理された圃場データを使用して、データサブセットの選択を実行するように構成またはプログラムされている。農業用インテリジェンスコンピュータシステム130は、遺伝的アルゴリズム法、全サブセットモデル法、逐次検索法、ステップワイズ回帰法、粒子群最適化法、および蟻コロニー最適化法を含むが、これらに限定されないデータサブセット選択手法を実行してもよい。例えば、遺伝的アルゴリズム選択手法は、自然選択および遺伝の進化原理に基づいた適応ヒューリスティック探索アルゴリズムを使用して、前処理した耕種学的データ内のデータセットを決定および評価する。
【0092】
ブロック315において、農業用インテリジェンスコンピュータシステム130は、圃場データセットの評価を実行するように構成またはプログラムされている。一実施形態では、耕種学的モデルを生成し、生成された耕種学的モデルに特定の品質閾値を用いることによって、特定の圃場データセットを評価する。一個抜き交差検証の二乗平均平方根誤差(RMSECV)、平均絶対誤差、および平均パーセント誤差などであるが、これらに限定されない1つ以上の比較手法を用いて、耕種学的モデルを比較および/または検証してもよい。例えば、RMSECVは、耕種学的モデルによって生成された予測された耕種学的特性値を、収集および分析された過去の耕種学的特性値と比較することによって、耕種学的モデルを交差検証することができる。一実施形態では、耕種学的データセットの評価論理はフィードバックループとして使用されるが、この場合、構成された品質閾値を満たさない耕種学的データセットは、将来のデータサブセット選択工程(ブロック310)の際に使用される。
【0093】
ブロック320において、農業用インテリジェンスコンピュータシステム130は、交差検証された耕種学的データセットを基準として耕種学的モデルの生成を実行するように構成またはプログラムされている。一実施形態では、耕種学的モデルの生成は、多変量回帰手法を実行して事前構成された耕種学的データモデルを生成してもよい。
【0094】
ブロック325において、農業用インテリジェンスコンピュータシステム130は、将来の圃場データを評価するために、事前構成された耕種学的データモデルを格納するように構成またはプログラムされている。
【0095】
2.5.実装例-ハードウェアの概要
【0096】
一実施形態によれば、本明細書に記載される技術は、1つ以上の特殊用途のコンピューティングデバイスによって実装される。特殊用途のコンピューティングデバイスは、この技術を実行するために配線接続されてもよく、またはこの技術を実行するために永続的にプログラムされた、1つ以上の特定用途向け集積回路(ASIC)もしくはフィールドプログラマブルゲートアレイ(FPGA)などのデジタル電子デバイスを含んでもよく、またはファームウェア、メモリ、他のストレージ、もしくは組み合わせにおいてプログラム命令に従ってこの技術を実行するようにプログラムされた、1つ以上の汎用ハードウェアプロセッサを含んでもよい。このような特殊用途のコンピューティングデバイスはまた、この技術を達成するために、カスタムの配線論理、ASIC、またはFPGAを、カスタムのプログラミングと組み合わせてもよい。特殊用途のコンピューティングデバイスは、デスクトップコンピュータシステム、ポータブルコンピュータシステム、携帯用デバイス、ネットワーキングデバイス、またはこの技術を実装するための配線論理および/もしくはプログラム論理を組み込んだ任意の他のデバイスであってよい。
【0097】
例えば、
図4は、本発明の実施形態を実装することができるコンピュータシステム400を例示するブロック図である。コンピュータシステム400は、バス402または情報を通信するための他の通信機構、および情報を処理するためにバス402に結合されたハードウェアプロセッサ404を含む。ハードウェアプロセッサ404は、例えば、汎用マイクロプロセッサであってよい。
【0098】
コンピュータシステム400はまた、情報およびプロセッサ404によって実行される命令を格納するための、バス402に結合されたランダムアクセスメモリ(RAM)、または他の動的ストレージデバイスなどのメインメモリ406を含む。メインメモリ406はまた、プロセッサ404によって実行される命令を実行する間に、一時変数または他の中間情報を格納するために使用することができる。このような命令がプロセッサ404にアクセス可能な非一過性ストレージ媒体に格納されると、コンピュータシステム400が、命令で指定した動作を実行するためにカスタマイズされた特殊用途の機械となる。
【0099】
コンピュータシステム400は、プロセッサ404用に静的情報および命令を格納するための、バス402に結合された読み取り専用メモリ(ROM)408、または他の静的ストレージデバイスを更に含む。情報および命令を格納するために、磁気ディスク、光ディスク、またはソリッドステートドライブなどのストレージデバイス410が提供され、バス402に結合される。
【0100】
コンピュータシステム400は、コンピュータユーザに情報を表示するための陰極線管(CRT)などのディスプレイ412にバス402を介して結合されてもよい。英数字および他のキーを含む入力デバイス414は、情報およびコマンド選択をプロセッサ404に通信するためにバス402に結合されている。別の種類のユーザ入力デバイスは、方向情報ならびにコマンド選択をプロセッサ404に通信するため、およびディスプレイ412上のカーソル移動を制御するための、マウス、トラックボール、またはカーソル方向キーなどのカーソルコントロール416である。この入力デバイスは典型的に、2つの軸である第1の軸(例えばx)と第2の軸(例えばy)とで2つの自由度を有しており、これにより、デバイスが平面内で位置を指定することができる。
【0101】
コンピュータシステム400は、コンピュータシステムと組み合わせてコンピュータシステム400を特殊用途の機械にするか、またはそのようにプログラムする、カスタマイズされた配線論理、1つ以上のASICもしくはFPGA、ファームウェア、および/またはプログラム論理を使用して、本明細書で記載される技術を実装してもよい。一実施形態によれば、本明細書の技術は、メインメモリ406内に収容された1つ以上の命令の1つ以上のシーケンスを実行するプロセッサ404に応答して、コンピュータシステム400によって実行される。このような命令は、ストレージデバイス410などの別のストレージ媒体からメインメモリ406に読み込まれてもよい。メインメモリ406内に収容された命令のシーケンスを実行することにより、プロセッサ404に本明細書に記載されるプロセス工程を実行させる。代替的な実施形態では、ソフトウェア命令の代わりに、またはソフトウェア命令と組み合わせて配線回路を使用してもよい。
【0102】
本明細書で使用するとき、「ストレージ媒体」という用語は、特定の方法で機械を作動させるデータおよび/または命令を格納する、あらゆる非一過性媒体を意味する。このようなストレージ媒体は、不揮発性媒体および/または揮発性媒体を含んでもよい。不揮発性媒体としては、例えば、ストレージデバイス410などの光ディスク、磁気ディスク、またはソリッドステートドライブが挙げられる。揮発性媒体としては、メインメモリ406などの動的メモリが挙げられる。ストレージ媒体の一般的な形態としては、例えば、フロッピーディスク、フレキシブルディスク、ハードディスク、ソリッドステートドライブ、磁気テープ、または任意の他の磁気データストレージ媒体、CD-ROM、任意の他の光学データストレージ媒体、孔のパターンを有する任意の物理的媒体、RAM、PROMおよびEPROM、FLASH-EPROM、NVRAM、任意の他のメモリチップまたはカートリッジが挙げられる。
【0103】
ストレージ媒体は、伝送媒体とは異なるが、これと連動して使用してもよい。伝送媒体は、ストレージ媒体間の情報を転送することに関係する。例えば、伝送媒体としては、バス402を含む電線を含んだ同軸ケーブル、銅線、および光ファイバが挙げられる。伝送媒体は、電波および赤外線データ通信の際に生成されるものなどの、音波または光波の形態を取ることもできる。
【0104】
媒体の様々な形態は、実行するために1つ以上の命令の1つ以上のシーケンスをプロセッサ404に伝えることに関与し得る。例えば、命令は、遠隔コンピュータの磁気ディスクまたはソリッドステートドライブ上に最初に伝えられ得る。遠隔コンピュータは、命令をその動的メモリにロードし、モデムを使用して電話回線を通じて命令を送信することができる。コンピュータシステム400に対してローカルなモデムにより、電話回線上でデータを受信し、赤外線送信器を使用してこのデータを赤外線信号に変換することができる。赤外線検出器は、赤外線信号において伝えられたデータを受信することができ、適切な回路によってバス402にデータを置くことができる。バス402は、メインメモリ406にデータを伝え、そこからプロセッサ404が命令を引き出して実行する。メインメモリ406によって受信された命令は、所望によりプロセッサ404によって実行される前または後のいずれかにおいてストレージデバイス410に格納されてもよい。
【0105】
コンピュータシステム400はまた、バス402に結合された通信インタフェース418を含む。通信インタフェース418は、ローカルネットワーク422に接続されたネットワークリンク420に結合され、2方向データ通信を提供する。例えば、通信インタフェース418は、総合サービスデジタル網(ISDN)カード、ケーブルモデム、衛星モデム、または対応する電話回線の種類にデータ通信接続を提供するためのモデムであってもよい。別の例として、通信インタフェース418は、互換性があるLANにデータ通信接続を提供するためのローカルエリアネットワーク(LAN)カードであってもよい。また、無線リンクを実装してもよい。任意のこのような実装において、通信インタフェース418は、様々な種類の情報を表すデジタルデータストリームを伝える電気信号、電磁信号、または光信号を送受信する。
【0106】
ネットワークリンク420は典型的に、1つ以上のネットワークを介して他のデータデバイスにデータ通信を提供する。例えば、ネットワークリンク420は、ホストコンピュータ424、またはインターネットサービスプロバイダ(ISP)426によって運用されるデータ装置への接続を、ローカルネットワーク422を介して提供してもよい。ISP426は次に、現在では一般的に「インターネット」428と称される、世界規模のパケットデータ通信ネットワークを介してデータ通信サービスを提供する。ローカルネットワーク422とインターネット428とは共に、デジタルデータストリームを伝える電気信号、電磁信号、または光信号を使用する。デジタルデータをコンピュータシステム400に、かつコンピュータシステム400からデジタルデータを伝える様々なネットワークを介した信号、およびネットワークリンク420上ならびに通信インタフェース418を介した信号は、伝送媒体の例示的な形態である。
【0107】
コンピュータシステム400は、ネットワーク、ネットワークリンク420、および通信インタフェース418を介してメッセージを送付し、プログラムコードを含むデータを受信することができる。インターネットの例では、サーバ430は、インターネット428、ISP426、ローカルネットワーク422、および通信インタフェース418を介して、アプリケーションプログラムに要求されたコードを伝送することができる。
【0108】
受信されたコードは、受信されるとプロセッサ404によって実行されてもよく、および/または、後に実行するためにストレージデバイス410もしくは他の不揮発性ストレージ内に格納されてもよい。
【0109】
3.機能説明
【0110】
3.1植物病の検出
【0111】
今日では、画像解析に基づいた様々な分類方法が利用可能である。これらの分類方法を使用して、植物の写真を分析し、写真を所与の病気のクラスまたは健康なクラスに分類し、これによって対応する病気による潜在的な植物の感染を検出することができる。これらの分類方法のいくつかには、SSDを含むCNNが含まれる。
【0112】
SSDは一般に、異なるスケールの受容野に対応する一連の畳み込み層を含む、ベースとなるCNNから開始される。SSDは続いて、最後の畳み込み層だけでなく、他の畳み込み層によって生成された特徴マップを使用して分類を実行する。より具体的には、SSDは、ベースとなるCNN内のそれらの畳み込み層ごとに、所定のクラスの様々な特徴に対応する、異なるサイズおよびアスペクト比を典型的に有するユーザ定義のアンカーボックスのセットを利用する。SSDは続いて、4+cの小さい(例えば、3×3)フィルタのセットをアンカーボックスごとに(いわゆる畳み込み特徴層において)取り入れるが、4はアンカーボックスの4つの側面に対応し、cは畳み込み層ごとのクラスの数である。これらの小さなフィルタを、クラスの各々に既知の特徴のグラウンドトゥルース画像で訓練する。これらのグラウンドトゥルース画像は、様々なサイズおよびアスペクト比を有してもよく、各画像はクラスおよびアンカーボックスと関連付けられている。続いて、これらの小さなフィルタを使用して、対応する畳み込み層によって生成された特徴マップ内のアンカーボックスのうちの1つによって区切られたエリアがクラスのうちの1つの特徴と一致するかどうかを判断することができる。
【0113】
上記で説明したように、SSDは、1つ以上の画像内に様々なスケールおよびアスペクト比を有するクラスの様々な特徴を認識し、画像内の特徴を探し出すための、初期の、個別の一連の領域の提案を必要とせずに、シングルショットでそれに応じて関連する信頼度スコアを有するクラスに画像の一部を分類することができる。SSDは、最初に画像の領域を複数のクラスに分類することができる。非最大抑制(NMS)を適用して、最終的な分類として複数のクラスのうちの1つを選択することができる。SSDは、これまでのシングルショット検出器よりも高速で、かつまたより正確であり、実際に、明確な領域提案およびプーリングを実行するより低速の技術と同等の精度であることが示されている。KerasライブラリおよびPythonを使用してSSDに関連する機能を実行する第三者ライブラリがGitHubプラットフォームで利用可能であり、これらは、例えばベースとなるCNNとしてVGG16を使用することができる。
【0114】
3.2デジタルモデルの構成
【0115】
いくつかの実施形態では、サーバ170は、SSDを使用して植物の写真から植物病の感染を検出するためのデジタルモデルを構築するようにプログラムされている。トウモロコシの一般的な植物病としては、炭疽病(ALB)、さび病(CR)、眼状斑点病(EYE)、斑点病(GLS)、ゴス萎凋病(GW)、煤紋病(NLB)、北方斑点病(NLS)、ごま葉枯病(SLB)、および南方さび病(SR)が挙げられる。デジタルモデルは、一定数のこのような植物病に対応する一定数のクラスに画像を分類するように設計することができる。サーバ170は、病気の症状のマーキングされた領域、またはこのような病気の症状の特徴を直接有し得る、トウモロコシの葉の写真などの画像のセットを最初に受信するようにプログラムされている。
【0116】
図7Aは、各々が1つの病気の症状を有するトウモロコシの葉の例示的な写真を含む。画像720では、(マーキングされた領域を画定している)ボックス704、およびボックス706内においてGLSの症状が示されている。「GLS」でラベル付けされたボックス704には1つの病変が含まれ、一方では、同様に「GLS」でラベル付けされたボックス706には途切れてはいるが近接して位置する病変が含まれているが、これは珍しいものではない。ボックス704およびボックス706は、異なるサイズを有し、似てはいるが異なるアスペクト比を有している。複数のボックスではなく、単一のボックス706を途切れた病変ごとに有することにより、デジタルモデルを訓練および実行する際の効率を向上させることができる。画像722では、ボックス708内においてSRの症状が示されており、よくあることではあるが、病変の散らばった大きなクラスタが含まれている。ボックス708もまた、異なるサイズおよびアスペクト比を有する。
【0117】
図7Bは、複数の病気の症状を有するトウモロコシの葉の例示的な写真を含む。画像724では、ボックス710内においてGLSの症状が示されている。画像724は、ボックス712内においてCRの症状も示されており、多数に散らばった病変が含まれている。「GLS」でラベル付けされたボックス710と「CR」でラベル付けされたボックス712とは、各々異なるサイズおよびアスペクト比を有する。ボックス712には複数の病気の病変が含まれているものの、CRに由来する病変が優勢であるため、ボックス712に対応するこのマーキングされた領域は、なおCRのための良いサンプルとしての役割を果たし得る。
【0118】
いくつかの実施形態では、サーバ170は、マーキングされた領域を有する各画像を特定のルールに従って処理するようにプログラムされており、これによってマーキングを完璧なものにするか、または強化することができる。サーバ170は、マーキングされた領域のサイズ、病変のクラスタの密度、またはクラスタと葉との間のサイズの比率に対する制約に従って、各々のマーキングされた領域を複数のものに分割するか、または複数のマーキングされた領域を1つに組み合わせるように構成することができる。例えば、ボックス712をマーキングするのではなく、画像724が個々のCRの病変のために小さくマーキングされた領域を単に有していてもよい。サーバ170は、近くの病変を検出し、葉のサイズに対して病変のクラスタの合計サイズを決定することによって、このマーキングされた領域をボックス712に自動的に拡張するようにプログラムすることができる。加えて、サーバ170は、各画像内のマーキングされた領域の数を6つ以下などに制限し、SSDの訓練プロセスを単純化するように構成することができる。例えば、サーバ170は、最も小さいサイズを有するかまたは別のマーキングされた領域と同様のアスペクト比を有するマーキングされた領域を解除することによって、画像724内のマーキングされた領域の数を現在の7つから6つに自動的に低減させるようにプログラムすることができる。
【0119】
いくつかの実施形態では、サーバ170は、SSDの畳み込み層のためのアンカーボックスを定義するようにプログラムされている。各アンカーボックスは、単位長さ、アスペクト比、およびスケーリング因子の観点から定義することができる。例えば、単位長さが10画素であってよく、高さに対する幅のアスペクト比が1.0であってよく、スケーリング因子が1であってよいとすると、幅が10画素、および長さが10画素のアンカーボックスとすることができる。その代わりに、アスペクト比が2.0であってよいと、幅が20画素、および長さが10画素のアンカーボックスとすることができる。その代わりに、スケーリング因子が2.0であってよいと、幅が20画素、および長さが20画素のアンカーボックスとすることができる。サーバ170は、ボックス704、706、708、710または712に対応するようなものなどのマーキングされた領域を使用して、アンカーボックスの定義を導くようにプログラムされてもよい。サーバ170は、(例えば、カメラおよび植物間の固定された距離、ならびに固定されたカメラの解像度に対して)マーキングされた領域を正規化し、同様のサイズのものを1つのクラスタにグループ化し、スケーリング因子およびアスペクト比を決定するために、集合サイズおよびアスペクト比をクラスタごとに計算するようにプログラムされてもよい。ベースとなるCNNの一連の畳み込み層は典型的に、次第に大きくなる受容野に対応するため、サーバは、次第に大きくなるスケーリング因子を一連の畳み込み層に割り当てるようにプログラムされてもよい。サーバはまた、特定のトウモロコシの病気によって生じる非常に小さい病変、または他の非常に小さい病症を識別するのに役立つように、SSDの典型的な実装形態で使用されるスケーリング因子よりも小さい0.1などのスケーリング因子を利用するようにプログラムされてもよい。例えば、一連の6つの畳み込み層に対し、スケーリング因子は[0.1、0.2、0.37、0.54、0.71、0.88、1.05]であってよく、全てのアンカーボックスに対して1つのスケーリング因子が1つの畳み込み層に割り当てられる。トウモロコシの病気に関する一般的なアスペクト比としては、1.0/7.0、1.0/5.0、1.0/3.0、0.5、1.0、2.0、3.0、5.0、または7.0が挙げられる。
【0120】
3.3訓練セットおよびデジタルモデルの構築
【0121】
いくつかの実施形態では、サーバ170は、画像をスケーリング、パディング、または別様に処理して、訓練セットのための最終的な画像を生成するようにプログラムされている。例えば、GitHubプラットフォームで利用可能なmax_crop_and_resize関数およびrandom_pad_and_resize関数を適応して、原画像のバリエーションを生成することができる。サーバ170は、各バリエーションを、原画像におけるようにマーキングされた領域および対応するラベルと関連付けるようにプログラムされている。植物病を検出するために、クラスは植物病に対応しており、各ラベルは植物病のうちの1つを識別する。対称なアスペクト比がアンカーボックスに使用される場合は、訓練セット用の追加の画像を生成するために画像を回転させる必要がない。トウモロコシの病気の感染を検出するために、マーキングされた領域の数は、トウモロコシの病気ごとに少なくとも100個とすることができる。
【0122】
いくつかの実施形態では、サーバ170は、SSDの構築に必要となるように、画像の訓練セットをアンカーボックスにマッチングさせるようにプログラムされている。例えば、GitHubプラットフォームで利用可能なSSDBoxEncoderは、pos_iou_thresholdを0.5に設定し、neg_iou_thresholdを0.2に設定することによって、このようなマッチングに原画像のバリエーションも参照するように適応させることができる。サーバ170は続いて、マーキングされた領域を有する画像またはそれらのバリエーション、関連するクラスラベル、およびアンカーボックスに関連付けられたマッチングを含むバウンディングボックスおよび訓練セットから、トウモロコシの病気を認識するためのデジタルモデルを構築するようにプログラムされる。例えば、lr_scheduleを0.001に設定したKerasライブラリのmodel.fit_generator関数を使用することができる。
【0123】
3.4デジタルモデルの実行
【0124】
いくつかの実施形態では、サーバ170は、トウモロコシの植物の写真などの新しい画像を受信して、新しい画像にデジタルモデルを適用するようにプログラムされている。サーバ170は、必要に応じて新しい画像を正方形の画像に変換するようにプログラムされている。情報を失う原因となるトリミングを新しい画像に行う代わりに、サーバ170は、パディングを提供して、各々の辺が新しい画像の長辺と同じ長さとなる更新された画像を作成するように構成することができる。サーバ170は更に、更新された画像において新しい画像をセンタリングし、この結果をスケーリングして最終的な入力画像を取得するように構成することができる。
【0125】
いくつかの実施形態では、サーバ170は、続いて最終的な入力画像にデジタルモデルを実行するようにプログラムされる。例えば、GitHubプラットフォームで利用可能なdecode_y関数を使用して、confidence_threshを0.8に設定し、iou_thresholdを0.5に設定することにより、NMSの実行を実装することができる。
【0126】
図8は、初期の分類結果を最終的な分類結果に精緻化するためにNMSを適用する、例示的なプロセスを図示する。画像802は、トウモロコシの葉の一部の写真である。上記で説明したように、SSDは、最初に画像の領域を複数のクラスに分類することができる。本実施例では、ボックス804とボックス808とを含むボックスの各々は、トウモロコシの病気に対応するクラスのうちの1つに分類される画像のエリアを示している。具体的には、ボックス808は、画素806または周囲領域を覆っている一連のボックスの中にある。NMSを適用する前に、関連する信頼度スコアがconfidence_threshなどの特定の閾値より低いそれらのボックスを除去することができる。本実施例では、ボックス804の分類は低い信頼度と関連しているため、除去することができる。NMSによって、最も大きなスコアを有するボックスが続いて選択され、iou_thresholdなどの特定の閾値よりも大きいボックスと重なっている全ての他のボックスが続いて除去され、これ以上ボックスを除去することができなくなるまでプロセスが続けられる。本実施例では、ボックス808が残された唯一のボックスであり、従ってボックス808に基づいて画素806が分類される。
【0127】
3.5例示的なプロセス
【0128】
図9は、植物病を検出するために、CNNを構成して利用するようにプログラムされたサーバコンピュータによって実行される例示的な方法を図示する。
図9により、実行されると本明細書に記載される機能性向上および技術的進歩を遂行させる、1つ以上のコンピュータプログラムまたは他のソフトウェア要素を実装するために使用することができるアルゴリズム、計画、または概要を開示することが意図される。更に、本明細書のフロー図は、コーディングまたは実装することを予定しているソフトウェアプログラムの基礎を形成するアルゴリズム、計画、または仕様についてを、当業者らが蓄積された技術および知識を使用して互いにコミュニケーションするのに通常使用されるものと同じレベルの詳細さで記載される。
【0129】
いくつかの実施形態では、工程902において、サーバ170は、複数の病気に感染している植物の写真のセットを受信するようにプログラムまたは構成されている。具体的には、写真のセットには、複数のアスペクト比を有する複数のマーキングされた領域を有する葉が示されている。各々のマーキングされた領域は、複数の病気のうちの1つのラベルと関連付けられ、1つの病気によって引き起こされる少なくとも1つの病変を示している。写真のセットには、複数の病変を示す特定のマーキングされた領域を有する特定の葉を示している特定の写真が含まれる。任意のこのような特定の写真の場合、複数の病変の合計サイズは、特定のマーキングされた領域のサイズの、第1の所定の割合よりも大きくなる。加えて、特定のマーキングされた領域のサイズは、特定の葉のサイズの、第2の所定の割合よりも大きくなる。例えば、写真のセットが感染したトウモロコシの葉を示しており、その写真のうちの1枚が、病変が互いに近接して位置し、葉の大部分を占めるトウモロコシの病気のうちの1つの病変のクラスタを有する葉を示している。
【0130】
いくつかの実施形態では、工程904において、サーバ170は、SSDの一連の畳み込み層ごとに、複数のマーキングされた領域からアンカーボックスのグループを決定するようにプログラムまたは構成されている。アンカーボックスのグループの各々は一般に、1つの病気の類似した症状に対応することができる、少なくとも複数のマーキングされた領域のサブセットを表す異なるアスペクト比を有する。トウモロコシのアスペクト比は、7:1と同じ大きさであってよい。一連の畳み込み層は、次第に大きくなる受容野を有する傾向があるため、サーバ170は、より大きいアンカーボックスを後の畳み込み層に割り当てるようにプログラムされてもよい。
【0131】
いくつかの実施形態では、工程906において、サーバ170は、アンカーボックスのグループを決定した後に、複数のマーキングされた領域の各々をアンカーボックスのグループのうちの1つに更にマッピングするようにプログラムされてもよい。サーバ170は、マーキングされた領域の和集合に対する共通部分と、和集合に対するアンカーボックスとのサイズの割合が特定の閾値より大きい場合、マーキングされた領域をアンカーボックスにマッチングさせるように構成されてもよい。
【0132】
いくつかの実施形態では、工程908において、サーバ170は、アンカーボックスのグループ、複数のマーキングされた領域を有する写真のセット、関連付けられた複数の病気のラベル、およびアンカーボックスに関連付けられた複数のマッピングからSSDを構築するようにプログラムまたは構成される。訓練のために、元の写真にトリミング、パディング、リサイズ、または別の画像処理操作を行うことから得られるバリエーションによって、元の写真のセットを強化することができる。バリエーションは、元の写真におけるものと同等のマーキングされた領域および対応するラベルに関連付けられる。このような画像処理操作を行ったとしても、マーキングされた領域のアスペクト比は保持され、元の写真におけるものと同一のアンカーボックスへのマッピングに関連付けられる。
【0133】
いくつかの実施形態では、工程910において、サーバ170は、クライアントデバイスから新しい画像を受信するようにプログラムまたは構成されている。新しい画像とは、1つ以上の領域において1つ以上の病気の症状を示す、植物の写真のことであり得る。工程912において、サーバ170は、SSDを新しい画像に適用して、新しい画像の1つ以上の領域内における、それらの1つ以上の病気の症状を識別するようにプログラムまたは構成されている。
【0134】
いくつかの実施形態では、工程914において、サーバ170は、1つ以上の病気、または1つ以上の領域に関するデータをクライアントデバイスに伝送するようにプログラムまたは設定されている。データは、1つ以上の領域の各々、およびその領域の1つ以上の分類を識別することができる。データはまた、植物病の1つへの1つ以上の分類ごとの信頼度スコアも含むことができる。
【0135】
4.拡張および代替
【0136】
前述の明細書において、実装形態ごとに変化する可能性のある、多数の特定の詳細を参照しながら本発明の実施形態を説明してきた。それに応じて、明細書および図面は、限定的な意味というよりもむしろ、例示的な意味として考慮されるべきである。本発明の範囲の唯一かつ排他的な指標、および出願人によって本発明の範囲であると意図されるものは、このような請求項から生じる特定の形式において、本出願から生じる請求項の組の文言および均等範囲であり、任意のそれ以後の修正を含む。