使用数字图像和机器学习模型对田地异常绘制地图的制作方法

文档序号:26006746发布日期:2021-07-23 21:25阅读:208来源:国知局
使用数字图像和机器学习模型对田地异常绘制地图的制作方法

权益要求

本申请根据美国法典第35章第119条要求作为2018年12月10日提交的临时申请62/777,748的非临时的权益,其全部内容出于所有目的通过引用并入本文,就像全部在本文中进行阐述一样。申请人由此撤销母申请或其起诉历史中对保护范围的任何免责声明,并告知美国专利商标局:本申请中的权利要求可能比母申请中的任何权利要求更宽泛。

版权说明

本专利文件的公开的一部分包含受版权保护的材料。版权所有者不反对任何人以专利商标局专利文件或记录中出现的形式复制专利文档或专利公开,但保留所有版权或权利。克莱米特公司(theclimatecorporation)。

本公开的一个技术领域是数字图像的计算机实现的分析。另一技术领域是农业田地的数字图像的计算机实现的解释和分析,通常是使用卫星、无人驾驶飞行器或者其他飞机从地面上方获得的图像。



背景技术:

本节中描述的方法是可以贯彻的方法,但不一定是先前已经被设想或者被贯彻的方法。因此,除非另外指出,否则不应仅由于将本节中所述的任何方法包括在本节中而认为其有资格作为现有技术。

精准农业的一项努力是准确地测量农业田地的异常面积的百分比。种植者常常渴望理解其田地中的倒伏和杂草的程度和严重性,以及这些异常对产量的影响。最近,已经研究了许多成像方法,特别是基于uav的成像方法,来检测田地中的倒伏和杂草。例如,chu等人(2017)基于由uav测量的冠层颜色和株高信息评估了玉米倒伏率。huang等人(2018)应用了高分辨率uav成像系统来评估田地中的杂草的分布。但是,没有系统性的方法可以以自动的方式准确并同时检测倒伏、裸土和杂草并且将其分类。

用于倒伏或装备损坏以及杂草检测的某些方法使用了昂贵的传感器(诸如lidar和高光谱传感器),或者复杂且耗时的后处理(诸如“来自运动的表面(数字表面模型)”)。这些方法的吞吐量常常是有限的,并且因此使其难以扩展到商业运营或多个田地。

基于前述,需要用于基于数字图像来确定农业田地中的异常的改进的并且有效的计算机实现的方法。



技术实现要素:

所附权利要求可以充当本公开的发明内容。

附图说明

在附图中:

图1图示了被配置为执行本文所述的功能的示例计算机系统,该示例计算机系统与该系统可以与之互操作的其他装置一起在田地环境种被示出。

图2图示了当示例移动应用被加载以供执行时在主存储器中的指令集的示例逻辑组织的两个视图。

图3图示了经编程的过程,农业智能计算机系统通过该过程使用由一个或多个数据源提供的农艺数据来生成一个或多个被预配置的农艺模型。

图4是图示可以在其上实现本发明的实施例的计算机系统的框图。

图5图示了数据条目的时间线视图的示例实施例。

图6图示了数据条目的电子表格视图的示例实施例。

图7图示了生成田地异常地图的使用机器学习模型对数字图像进行的示例处理。

图8图示了用以生成田地异常地图的使用机器学习模型对空中图像和uav图像进行的示例处理。

图9图示了用以生成田地异常地图的使用机器学习模型对地面图像进行的示例处理。

图10图示了用以生成田地异常地图的使用机器学习模型和边缘tpu对地面图像进行的示例处理。

图11图示了用于使用机器学习模型将图像分类以生成田地异常地图的示例机器学习方法。

图12图示了使用机器学习模型来生成田地异常地图的使用机器学习方法的示例图像分类。

图13图示了使用机器学习方法的图像分类的示例,该图像分类使用机器学习模型来生成田地异常地图。

图14图示了用于使用机器学习模型来生成田地异常地图的神经网络配置的示例。

图15图示了用于使用机器学习模型来处理空中图像和uav图像以生成田地异常地图的示例流程图。

图16图示了用于使用机器学习模型来处理地面图像以生成田地异常地图的示例流程图。

具体实施方式

在下面的描述中,出于解释的目的,阐述了许多具体细节以便提供对本公开的透彻理解。然而,将明显的是,可以在没有这些具体细节的情况下实践实施例。在其他实例中,以框图的形式示出了熟知的结构和设备,以避免不必要地模糊本公开。根据以下大纲,在各节中公开了实施例:

1.总体概述

2.示例农业智能计算机系统

2.1.结构概述

2.2.应用程序概述

2.3.计算机系统的数据摄取

2.4.过程概述—农艺模型训练

2.5.实现示例—硬件概述

3.数字图像处理方法

3.1.空中图像的数字图像处理

3.2.地面图像的数字图像处理

4.空中图像和uav图像的示例处理

5.地面图像的示例处理

6.地面图像处理的示例实现

6.1.示例边缘计算实现

6.2.示例边缘-tpu计算实现

7.示例机器学习方法

8.示例分类器

9.示例图像分类

10.示例神经网络配置

11.用于空中图像和uav图像处理的示例流程图

12.用于地面图像处理的示例流程图

13.某些实施例的益处

1.总体概述

在实施例中,提供了一种机器学习方法,该方法用于从诸如无人驾驶飞行器(uav)之类的飞机和/或地面车辆平台收集的彩色(红-绿-蓝)和近红外(nir)图像检测和绘制玉米田地中的倒伏、裸土和杂草小块。地面车辆可以包括收割机、联合收割机或在农业田地中操作的其他装置。在实施例中使用的数字图像可以包括具有红色像素、绿色像素、蓝色像素和nir像素或其他分量的多通道数据。

2.示例农业智能计算机系统

2.1结构概述

图1被配置为执行本文所述的功能的示例计算机系统,该示例计算机系统与该系统可以与之互操作的其他装置一起在田地环境种被示出。在一个实施例中,用户102拥有、操作或者支配在田地位置中或与田地位置相关联的田地管理者计算设备104,田地位置诸如是旨在用于农业活动的田地或用于一个或多个农业田地的管理位置。田地管理者计算机设备104被编程或者被配置为经由一个或多个网络109向农业智能计算机系统130提供田地数据106。

田地数据106的示例包括(a)标识数据(例如,种植面积、田地名称、田地标识符、地理标识符、边界标识符、作物标识符,以及可以被用来标识农场土地的任何其他合适的数据,诸如公共土地单位(clu)、地段和块编号、宗地编号、地理坐标和边界、农场序列号(fsn)、农场编号、地带编号、田地编号、地区、乡镇、和/或范围),(b)收获数据(例如,作物类型、作物品种、作物轮换、是否以有机方式种植作物、收获日期、实际生产历史(aph)、预期产量、产量、作物价格、作物收入、谷物水分、耕作实践,以及先前的生长季节信息),(c)土壤数据(例如,类型、组成、ph、有机物(om)、阳离子交换容量(cec)),(d)种植数据(例如,种植日期、(多个)种子类型、(多种)所播种的种子的相对成熟度(rm)、种子种群,(e)肥料数据(例如:养分类型(氮、磷、钾)、施用类型、施用日期、量、来源、方法),(f)化学施用数据(例如,农药、除草剂、杀真菌剂,旨在用作植物调节剂的其他物质或物质混合物、脱叶剂、或干燥剂、施用日期、量、来源、方法),(g)灌溉数据(例如,施用日期、量、来源、方法),(h)天气数据(例如,降水、降雨率、预测降雨、水径流率区域、温度、风、预报、压力、能见度、云、热指数、露点、湿度、雪深度、空气质量、日出、日落),(i)图像数据(例如,来自农业装置传感器、相机、计算机、智能电话、平板、无人驾驶飞行器、飞机或卫星的图像和光谱信息;(j)侦察观测(照片、视频、自由形式的注释、语音记录、语音转录、天气条件(温度、降水(当前和长期)、土壤水分、作物生长阶段、风速、相对湿度、露点、黑层)),以及(k)土壤、种子、作物物候、病虫害报告以及预测源和数据库。

数据服务器计算机108通信地耦合到农业智能计算机系统130,并且被编程或者被配置为经由(多个)网络109向农业智能计算机系统130发送外部数据110。外部数据服务器计算机108可以由与农业智能计算机系统130的法人或实体相同的法人或实体拥有或操作,或者由诸如政府机关、非政府组织(ngo)和/或私人数据服务提供方的不同的人或实体拥有或操作。外部数据的示例包括天气数据、图像数据、土壤数据、或与作物产量有关的统计数据等。外部数据110可以由与田地数据106相同类型的信息组成。在一些实施例中,外部数据110由拥有和/或操作农业智能计算机系统130的同一实体拥有的外部数据服务器108提供。例如,农业智能计算机系统130可以包括专门专注于可能以其他方式从第三方源所获得的数据类型(诸如天气数据)的数据服务器。在一些实施例中,外部数据服务器108实际上可以被并入系统130内。

农业装置111可以具有被固定在其上的一个或多个远程传感器112,这些传感器经由农业装置111直接或间接地通信地耦合到农业智能计算机系统130,并且被编程或者被配置为向农业智能计算机系统130发送传感器数据。农业装置111的示例包括拖拉机、联合收割机、收割机、播种机、卡车、施肥设备、包括无人驾驶飞行器的飞行器、以及通常为移动机械并且可以被用于与农业相关联的任务的任何其他项的物理机械或硬件。在一些实施例中,装置111的单个单元可以包括在装置上的网络中本地耦合的多个传感器112;控制器局域网(can)是可以被安装在联合收割机、收割机、喷雾机和中耕机中的这样的网络的示例。应用控制器114经由(多个)网络109通信地耦合到农业智能计算机系统130,并且被编程或者被配置为从农业智能计算机系统130接收被用来控制农业车辆或器具的操作参数的一个或多个脚本。例如,控制器局域网(can)总线接口可以被用来支持从农业智能计算机系统130到农业装置111的通信,诸如从加利福利亚的旧金山的克莱米特公司可获得的climatefieldviewdrive如何被使用的那样。传感器数据可以由与田地数据106类型相同的类型的信息组成。在一些实施例中,远程传感器112可以不被固定到农业装置111,而是可以远程位于田地中并且可以与网络109通信。

装置111可以包括用被编程为具有驾驶室应用的驾驶室计算机115,驾驶室应用可以包括用于设备104的移动应用的版本或变体,其在本文的其他节中被进一步描述。在一个实施例中,驾驶室计算机115包括紧凑型计算机,通常是平板大小的计算机或智能电话,具有被安装在装置111的操作员驾驶室内的图形屏幕显示器(诸如彩色显示器)。驾驶室计算机115可以实现本文中针对移动计算机设备104所进一步描述的操作和功能中的一些或全部操作或功能。

(多个)网络109宽泛地表示包括局域网、广域网、互连网络或互联网的一个或多个数据通信网络的任何组合,该一个或多个数据通信网络使用包括地面链路或卫星链路的有线或无线链路中的任何链路。(多个)网络可以由提供图1的各种元件之间的数据交换的任何介质或机制来实现。图1的各种元件还可以具有直接(有线或无线)通信链路。传感器112、控制器114、外部数据服务器计算机108和系统的其他元件每个都包括与(多个)网络109兼容的接口,并且被编程或者被配置为使用标准化协议(诸如tcp/ip、蓝牙、can协议,以及诸如http、tls的更高层协议等)来跨网络通信。

农业智能计算机系统130被编程或者被配置为从田地管理者计算设备104接收田地数据106,从外部数据服务器计算机108接收外部数据110,以及从远程传感器112接收传感器数据。农业智能计算机系统130还可以被配置为托管、使用或者执行一个或多个计算机程序、其他软件元件、数字地被编程的逻辑(诸如fpga或asic)或其任意组合,以使用在本公开其他节中进一步描述的方式执行对数据值的转换和存储、一个或多个田地上的一种或多种作物的数字模型构建、建议和通知的生成、以及脚本的生成和脚本向应用控制器114的发送。

在一个实施例中,农业智能计算机系统130被编程为具有或者包括通信层132、表示层134、数据管理层140、硬件/虚拟化层150、模型和田地数据储存库160以及代码指令180。在该上下文中,“层”是指电子数字接口电路、微控制器、诸如驱动程序之类的固件、和/或计算机程序或其他软件元素的任何组合。

通信层132可以被编程或者被配置为执行输入/输出接口功能,包括分别向田地管理者计算设备104、外部数据服务器计算机108和远程传感器112发送针对田地数据、外部数据和传感器数据的请求。通信层132可以被编程或者被配置为向模型和田地数据储存库160发送接收到的数据以存储为田地数据106。

代码指令180可以包括一组编程代码指令,当这些编程代码指令由一个或多个计算机处理器执行时,使处理器执行用于使用数字图像和机器学习模型来生成改进的田地异常地图的方法。在一个实施例中,代码指令180包括图像校准指令136、图像拼接指令137、网格生成指令138和图像分类指令139。

图像校准指令136可以被配置为执行原始图像(诸如空中原始图像、uav原始图像、地面原始图像等)的图像校准。图像校准可以包括增强或校正图像颜色、亮度、饱和度等。它还可能包括图像的伽玛校正和对图像中看起来不正确或不一致的像素的像素校正。

图像拼接指令137可以被配置为将多个图像拼接或连接成大图像。拼接可以包括:确定多个图像中的每个图像的边缘;如果需要则校正边缘,以执行准确的拼接;并且将图像连接成连贯的大图像。

网格生成指令138可以被配置为生成用于图像(诸如经拼接的图像)的网格模板。在一个实施例中,网格可以包括以行和列所排序的多个矩形以遍历整个图像。在另一实施例中,网格可以包括覆盖整个图像的多个六边形或其他形状。

图像分类指令139可以被配置为向图像应用一个或多个图像分类器。图像分类器可以是描绘例如异常的样本的图像或缩略图图像。异常的示例包括裸土异常、倒伏异常、杂草异常、积水异常等。

表示层134可以被编程或者被配置为生成要在田地管理者计算设备104、驾驶室计算机115或者通过网络109耦合到系统130的其他计算机上被显示的图形用户界面(gui)。gui可以包括控件,该控件用于输入要被发送到农业智能计算机系统130的数据,生成针对模型和/或建议的请求,和/或显示建议、通知、模型以及其他田地数据。

数据管理层140可以被编程或者被配置为管理涉及储存库160和系统的其他功能元件的读操作和写操作,包括在系统的功能元件和储存库之间被传送的查询和结果集。数据管理层140的示例包括jdbc、sql服务器接口代码和/或hadoop接口代码等。储存库160可以包括数据库。如本文所使用的,术语“数据库”可以是指数据体、关系数据库管理系统(rdbms)或者是指这两者。如本文所使用的,数据库可以包括数据的任何集合,包括分层数据库,关系数据库、平面文件数据库、对象关系数据库、面向对象的数据库、分布式数据库、以及被存储在计算机系统中的记录或数据的任何其他结构化集合。rdbms的示例包括但不限于mysql、sqlserver、和postgresql数据库。然而,可以使用支持本文所描述的系统和方法的任何数据库。

当田地数据106没有经由与农业智能计算机系统交互的一个或多个农业机器或农业机器设备直接被提供给农业智能计算机系统时,可以经由(由农业智能计算机系统服务的)用户设备上的一个或多个用户界面提示用户输入这样的信息。在示例实施例中,用户可以通过访问(由农业智能计算机系统服务的)用户设备上的地图并且选择已经在该地图上以图形方式示出的特定clu来指定标识数据。在备选实施例中,用户102可以通过访问(由农业智能计算机系统130服务的)用户设备上的地图并且在该地图之上绘制田地边界来指定标识数据。这样的clu选择或地图绘制表示地理标识符。在备选实施例中,用户可以通过经由用户设备访问来自美国农业部农场服务局或其他源的(以形状文件或类似格式所提供的)田地标识数据来指定标识数据,并且向农业智能计算机系统提供这样的田地标识数据。

在示例实施例中,农业智能计算机系统130被编程为生成并且引起显示包括用于数据输入的数据管理器的图形用户界面。在一个或多个田地已经使用上文描述的方法被标识之后,数据管理器可以提供一个或多个图形用户界面小部件,该小部件在被选择时可以标识对田地、土壤、作物、耕作、或养分实践的改变。数据管理器可以包括时间线视图、电子表格视图和/或一个或多个可编辑程序。

图5图示了数据条目的时间线视图的示例实施例。使用图5中所描绘的显示,用户计算机可以输入对特定田地的选择和用于事件添加的特定日期。在时间线顶部所描述的事件可以包括氮、种植、实践和土壤。为了添加氮施用事件,用户计算机可以提供输入来选择氮标签。然后,用户计算机可以在时间线上选择针对特定田地的位置,以便指示在所选择田地上的氮施用。响应于接收到在时间线上针对特定田地的位置的选择,数据管理器可以显示数据条目叠加,从而允许用户计算机输入关于氮施用、种植过程、土壤施用、耕作程序、灌溉实践、或者与特定田地有关的其他信息的数据。例如,如果用户计算机选择时间线的部分并指示氮施用,则数据条目叠加可以包括用于输入所施用的氮的量、施用日期、所使用的肥料类型、以及与氮施用有关的任何其他信息的栏。

在一个实施例中,数据管理器提供用于创建一个或多个程序的界面。在此上下文中,“程序”是指关于氮施用、种植过程、土壤施用、耕作过程、灌溉实践、或者可能与一个或多个田地有关的其他信息的数据的集合,这些数据可以被存储在数字数据储存装置中以供在操作中作为集合重使。在程序已经被创建之后,其可以在概念上被应用到一个或多个田地,并且该程序的引用可以与标识这些田地的数据相关联地被存储在数字储存装置中。因此,替代于手动录入与针对多个不同田地的相同氮施用有关的完全相同的数据,用户计算机可以创建指示氮的特定施用的程序,并且然后向多个不同田地施用该程序。例如,在图5的时间线视图中,顶部的两条时间线选择了“春季施用”程序,该程序包括在四月初每英亩施用150磅氮(150lbsn/ac)。数据管理器可以提供界面用于编辑程序。在一个实施例中,当程序被编辑时,已经选择该特定程序的每个田地被编辑。例如,在图5中,如果“春季施用”程序被编辑以将氮施用减少到每英亩130磅氮,则基于所编辑的程序,顶部的两个田地可以被更新为具有减少的氮施用。

在一个实施例中,响应于接收到对已经选择了程序的田地的编辑,数据管理器移除该田地与所选择的程序的对应。例如,如果氮施用被添加到图5顶部的田地,则该界面可以更新以指示“春季施用”程序不再被应用于该顶部的田地。尽管四月初的氮施用可能保留,但是对“春季施用”程序的更新不会更改四月的氮施用。

图6图示了数据条目的电子表格视图的示例实施例。使用图6中所描绘的显示,用户可以创建和编辑针对一个或多个田地的信息。如图6中所描绘,数据管理器可以包括电子表格,该电子表格用于输入关于氮、种植、实践和土壤的信息。为了编辑特定的条目,用户计算机可以在电子表格中选择特定条目并且更新值。例如,图6图示了正在进行的针对第二田地的目标产量值的更新。另外,用户计算机可以选择一个或多个田地以便应用一个或多个程序。响应于接收到针对特定田地的程序选择,数据管理器可以基于所选择的程序自动完成针对特定田地的条目。与时间线视图一样,响应于接收到对特定程序的更新,数据管理器可以更新针对与该程序相关联的每个田地的条目。另外,响应于接收到针对田地的条目中的一个条目的编辑,数据管理器可以移除所选择的程序与该田地的对应。

在一个实施例中,模型和田地数据被存储在模型和田地数据储存库160中。模型数据包括针对一个或多个田地所创建的数据模型。例如,作物模型可以包括一个或多个田地上的作物发育的数字构建的模型。在此上下文中,“模型”是指彼此相关联的可执行指令和数据值的电子数字存储的集合,它们能够接收程序的或其他数字的调用(call)、调用(invocation)或解析请求并且基于指定输入值来响应该程序的或其他数字的调用、调用或解析请求,以产生一个或多个被存储或被计算的输出值,这些输出值可以充当计算机实现的建议、输出数据显示、或机器控制等的基础。本领域技术人员发现使用数学方程式来表达模型是方便的,但是这种表达形式并不将本文公开的模型局限为抽象概念;而是,本文中的每个模型都以被存储的可执行指令和数据的形式在计算机中具有实际应用,该被存储的可执行指令和数据使用计算机来实现模型。模型可以包括一个或多个田地上的过去事件的模型,一个或多个田地的当前状态的模型和/或一个或多个田地的预测事件的模型。模型和田地数据可以被存储在存储器中的数据结构中,被存储在数据库表中的行中,被存储在平面文件或电子表格中,或者被存储在其他形式的被存储的数字数据中。

在一个实施例中,数字图像处理指令135包括农业智能计算机系统130中主存储器(诸如ram)的一个或多个页面的集合,可执行指令已经被加载到该页面的集合中,并且该页面的集合在被执行时使农业智能计算机系统执行参考那些模块在本文描述的功能或操作。指令可以在cpu的指令集中的机器可执行代码中并且可以基于源代码而被编译,源代码单独或者与javascript中的脚本、其他脚本语言和其他编程源文本结合地以java、c、c++、objective-c或任何其他人类可读编程语言或环境编写术语“页面”旨在宽泛地指代主存储器内的任何区域,并且在系统中使用的特定术语可以取决于存储器架构或处理器架构而变化。在另一实施例中,数字图像处理指令135还可以表示源代码的一个或多个文件或项目,其被数字地存储在诸如非易失性ram或磁盘存储装置的大容量存储设备中,存储在农业智能计算机系统130或分离的储存库系统中,当其被编译或被解释时使生成可执行指令,该可执行指令在被执行时使农业智能计算机系统执行参考那些模块在本文中描述的功能或操作。换句话说,附图可以表示程序员或软件开发人员组织和布置源代码用于稍后将其编译成可执行文件、或者解释成字节码或等效体以供农业智能计算机系统130执行的方式。

硬件/虚拟化层150包括一个或多个中央处理单元(cpu)、存储器控制器,以及计算机系统的其他设备、组件或元件,诸如易失性或非易失性存储器、诸如磁盘的非易失性储存装置,以及例如结合图4所图示和描述的i/o设备或接口。层150还可以包括被配置为支持虚拟化、容器化或者其他技术的被编程指令。

出于图示清楚的示例的目的,图1示出了某些功能元件的有限数目的实例。然而,在其他实施例中,可以有任何数目的这样的元件。例如,实施例可以使用与不同用户相关联的数千或数百万个不同的移动计算设备104。此外,系统130和/或外部数据服务器计算机108可以使用两个或更多个的处理器、核心、集群、或者物理机或虚拟机的实例而被实现,被配置在离散位置或者与其他元件被共置在数据中心、共享计算设施或者云计算设施中。

2.2.应用程序概述

在一个实施例中,使用被加载到一个或多个通用计算机中、并且使用一个或多个通用计算机而被执行的一个或多个计算机程序或其他软件元件在本文中描述的功能的实现将得通用计算机被配置为特别被适配以执行本文所述功能的机器或计算机。此外,本文进一步描述的流程图中的每个流程图可以单独地或者与本文所述的过程和功能的描述结合地充当算法、计划或方向,这些算法、计划或方向可以被用来对计算机或逻辑进行编程以实现所描述的功能。换句话说,本文中的所有散文文本以及所有附图一起旨在,与具有适合这类发明和公开的技能水平的人员的技能和知识相结合来提供算法、计划或方向的公开,该公开足以允许技术人员对计算机进行编程以执行本文中所描述的功能。

在一个实施例中,用户102使用配置有操作系统和一个或多个应用程序或app的田地管理者计算设备104与农业智能计算机系统130交互;田地管理者计算设备104还可以在程序控制或逻辑控制下独立并且自动地与农业智能计算机系统互操作,并且并不总是要求直接的用户交互。田地管理者计算设备104宽泛地表示一个或多个智能电话、pda、平板计算设备、膝上型计算机、台式计算机、工作站、或者能够传输和接收信息并且执行本文所描述的功能的任何其他计算设备。田地管理者计算设备104可以使用被存储在田地管理者计算设备104上的移动应用经由网络通信,并且在一些实施例中,该设备可以使用电缆113或连接器耦合到传感器112和/或控制器114。用户102可以结合系统130一次拥有、操作或者支配和使用多于一个的田地管理者计算设备104。

移动应用可以经由网络向一个或多个移动计算设备提供客户端侧功能性。在一个示例实施例中,田地管理者计算设备104可以经由web浏览器或者本地客户端应用或app来访问移动应用。田地管理者计算设备104可以使用基于网络的协议或格式(诸如http、xml和/或json)或者app特定的协议来向一个或多个前端服务器传输数据并且从一个或多个前端服务器接收数据。在一个示例实施例中,数据可以采取到移动计算设备中的请求和用户信息输入(诸如田地数据)的形式。在一些实施例中,移动应用与田地管理者计算设备104上的位置跟踪硬件和软件进行交互,该位置跟踪硬件合软件使用诸如无线电信号的多边定位、全球定位系统(gps)、wi-fi定位系统或者其他移动定位方法的标准跟踪技术来确定田地管理者计算设备104的位置。在一些情况下,通过查询设备的操作系统、或者请求设备上的app从操作系统获得数据,可以获得与设备104、用户102和/或(多个)用户账户相关联的位置数据或者其他数据。

在一个实施例中,田地管理者计算设备104向农业智能计算机系统130发送田地数据106,田地数据106包括或包含但不限于表示下列一项或多项的数据值:一个或多个田地的地理位置、一个或多个田地的耕作信息、一个或多个田地中所种植的作物,以及从一个或多个田地所提取的土壤数据。田地管理者计算设备104可以响应于来自用户102的用户输入来发送田地数据106,用户输入102指定针对一个或多个田地的数据值。另外,当数据值中的一个或多个数据值变得对田地管理者计算设备104可用时,田地管理者计算设备104可以自动发送田地数据106。例如,田地管理者计算设备104可以通信地耦合到远程传感器112和/或应用控制器114,包括灌溉传感器和/或灌溉控制器。响应于接收到指示应用控制器114放水到一个或多个田地上的数据,田地管理者计算设备104可以向农业智能计算机系统130发送田地数据106,田地数据106指示已经在一个或多个田地上放水。可以使用电子数字数据来输入和传送在本公开中所标识的田地数据106,该电子数字数据使用http之上的参数化url或另一种合适的通信或消息收发协议而在计算设备之间被传送。

移动应用的商业示例是climatefieldview,从加利福尼亚州旧金山的克莱米特公司可商购。climatefieldview应用或者其他应用可以被修改、被扩展或者被适配,以包括尚未在本公开的申请日之前被公开的特征、功能和编程。在一个实施例中,移动应用包括集成的软件平台,该集成的软件平台允许种植者对其操作做出基于事实的决策,因为该平台组合了有关种植者田地的历史数据与种植者希望比较的任何其他数据。组合和比较可以实时并且基于科学模型被执行,该科学模型提供潜在场景以允许种植者做出更好、更明智的决策。

图2图示出了当示例移动应用被加载以供执行时主存储器中指令集的示例逻辑组织的两个视图。在图2中,每个命名的元素表示ram或其他主存储器的一个或多个页面的区域或者磁盘储存装置或其他非易失性储存装置的一个或多个块的区域,以及这些区域内的被编程指令。在一个实施例中,在视图(a)中,移动计算机应用200包括账户田地数据摄取共享指令202、概述和警报指令204、数字地图簿指令206、种子和种植指令208、氮指令210、天气指令212、田地健康指令214和性能指令216。

在一个实施例中,移动计算机应用200包括账户、田地、数据摄取、共享指令202,它们被编程为经由手动上传或api从第三方系统接收、转换和摄取田地数据。数据类型可以包括田地边界、产量地图、种植地图、土壤测试结果、施用地图和/或管理区等。数据格式可以包括形状文件(shapefile)、第三方的本机数据格式、和/或农场管理信息系统(fmis)导出等。接收数据可以经由手动上传、具有附件的电子邮件、向移动应用推送数据的外部api、或者调用外部系统的api来将数据拉取到移动应用中的指令而发生。在一个实施例中,移动计算机应用200包括数据收件箱。响应于接收到对数据收件箱的选择,移动计算机应用200可以显示图形用户界面用于手动上传数据文件并且将上传的文件导入数据管理器。

在一个实施例中,数字地图簿指令206包括被存储在设备存储器中的田地地图数据层并且被编程为具有数据可视化工具和地理空间田地注释。这为种植者提供了触手可得的方便信息用于对田地性能进行参考、倒伏和视觉洞察。在一个实施例中,概述和警报指令204被编程为提供对种植者重要的内容的操作范围视图,并且提供采取行动或集中于特定问题的及时建议。这允许种植者将时间集中在需要注意的地方,以节省时间并在整个季节保持产量。在一个实施例中,种子和种植指令208被编程为提供用于基于科学模型和经验数据来进行种子选择、混合布局和脚本创建(包括可变速率(vr)脚本创建)的工具。这使种植者能够通过优化的种子购买、布局和种群来最大化产量或投资回报。

在一个实施例中,脚本生成指令205被编程为提供用于生成包括可变速率(vr)肥力脚本的脚本的界面。该界面使种植者能够创建用于田间器具(诸如养分施用、种植和灌溉)的脚本。例如,种植脚本界面可以包括用于标识用于种植的种子类型的工具。响应于接收到对种子类型的选择,移动计算机应用200可以显示被划分成管理区的一个或多个田地,诸如作为数字地图簿指令206的一部分而被创建的田地地图数据层。在一个实施例中,管理区包括土壤区以及标识每个土壤区的面板以及针对每个区的土壤名称、质地、排水或者其他田地数据。移动计算机应用200还可以在一个或多个田地的地图之上显示用于编辑或创建这样的工具,诸如用于绘制管理区(诸如土壤区)的图形工具。种植过程可以被应用到所有管理区,或者不同的种植过程可以被应用到管理区的不同子集。当脚本被创建时,移动计算机应用200可以使该脚本可用于以由应用控制器可读的格式(诸如存档或压缩格式)。附加地和/或备选地,脚本可以从移动计算机应用200直接被发送到驾驶室计算机115和/或被上传到一个或多个数据服务器并且被存储以供未来使用。

在一个实施例中,氮指令210被编程为提供通过可视化氮对作物的可用性来通知氮决策的工具。这使种植者能够通过季节期间优化的氮施用来最大化产量或投资回报。示例的被编程功能包括显示图像(诸如ssurgo图像),以使得能够以高空间分辨率(取决于传感器的接近度和分辨率,精细到毫米或更小),来绘制肥料施用区和/或从子田地土壤数据(诸如从传感器获得的数据)生成的图像;上传现有的种植者定义的区;提供植物养分可用性的图表和/或使得能够调节跨多个区的(多个)氮施用的地图;输出脚本以驱动机械;用于海量数据录入和调整的工具;和/或用于数据可视化的地图等。在此上下文中,“海量数据录入”可以意味着录入数据一次,然后将相同的数据应用到系统中已定义的多个田地和/或区;示例数据可以包括对于相同种植者的许多田地和/或区都相同的氮施用数据,但是这样的海量数据录入适用于将任何类型的田地数据录入到移动计算机应用200中。例如,氮指令210可以被编程为接受氮施用程序和氮实践程序的定义,并且接受指定跨多个田地应用那些程序的用户输入。在此上下文中,“氮施用程序”是指关联以下项的被存储的数据的命名集合:名称、颜色代码或其他标识符、一个或多个施用日期、用于日期和量中的每个日期和量的材料或产品的类型、施用或掺入方法(诸如注入或播撒)、和/或针对日期中的每个日期的施用量或施用速率、作为施用对象的作物或混合等。在此上下文中,“氮实践程序”是指关联以下项的被存储的数据的命名集合:实践名称;先前的作物;耕作系统;主要耕作日期;被使用过的一个或多个先前的耕作系统;被使用过的施用类型(诸如有机肥)的一个或多个指示符。氮指令210还可以被编程为生成并且引起显示氮图,氮图指示植物对指定氮的使用的规划以及是否预测了盈余或短缺;例如,在一些实施例中,不同的颜色指示符可以标志盈余的量级或短缺的量级。在一个实施例中,氮图包括计算机显示设备中的图形显示,包括:多个行,每个行与田地相关联并且标识该田地;数据,其指定什么作物在田地中被种植、田地大小、田地位置和田地周界的图形表示;在每个行中,具有图形指示符的按月时间线,其指定在与月份名称相关的点处的每个氮施用和量;以及数字和/或彩色的盈余或短缺指示符,其中颜色指示量级。

在一个实施例中,氮图可以包括一个或多个用户输入特征(诸如刻度盘或滑动条),以动态地改变氮种植和实践程序,使得用户可以优化其氮图。然后,用户可以使用其优化的氮图以及相关的氮种植和实践程序来实现一个或多个脚本,包括可变速率(vr)肥力脚本。氮指令210也可以被编程为生成并且引起显示氮地图,该氮地图指示植物对指定氮的使用规划以及是否预测了盈余或短缺;在一些实施例中,不同颜色的指示符可以标志盈余的量级或短缺的量级。使用数字和/或彩色的盈余或短缺指示符,氮图可以显示植物对指定氮的使用的预测,以及针对过去和未来的不同时间(诸如每天、每周、每月或每年)是否预测了盈余或短缺,其中颜色指示量级。在一个实施例中,氮地图可以包括一个或多个用户输入特征(诸如刻度盘或滑动条),以动态地改变氮种植和实践程序,使得用户可以优化其氮地图,诸如以获得优选量的盈余到短缺。然后,用户可以使用其优化的氮地图以及相关的氮种植和实践程序来实现一个或多个脚本,包括可变速率(vr)肥力脚本。在其他实施例中,与氮指令210类似的指令可以被用于其他养分(诸如磷和钾)的施用、农药的施用以及灌溉程序。

在一个实施例中,天气指令212被编程为提供田地特定的最近天气数据和预报得天气信息。这使种植者能够节省时间,并且具有关于日常操作性决策得有效率的集成显示。

在一个实施例中,田地健康指令214被编程为提供及时的遥感图像,以突出显示应季的作物变化和潜在问题。示例被编程功能包括:云检查,以标识可能的云或云阴影;基于田地图像确定氮指数;侦察层的图形可视化以及查看和/或共享侦察笔记,侦察层包括例如与田地健康有关的层;和/或从多个源下载卫星图像,并且为种植者确定图像的优先级等。

在一个实施例中,性能指令216被编程为提供使用农场数据进行评估、洞察和决策的报告、分析和洞察工具。这使种植者能够通过关于为何对投资的回报处于先前水平的基于事实的结论以及对产量限制因素的洞察来寻求来年的改进结果。性能指令216可以被编程为经由(多个)网络109向后端分析程序通信,该后端分析程序在农业智能计算机系统130和/或外部数据服务器计算机108处被执行并且被配置为分析诸如产量、产量差异、混合、种群、ssurgo区、土壤测试属性或海拔等的度量。被编程的报告和分析可以包括产量可变性分析、处理效果估计、基于从许多种植者所收集的匿名数据进行针对其他种植者的产量和其他度量的标杆分析、或者针对种子和种植的数据等。

具有以这种方式配置的指令的应用可以针对不同的计算设备平台而被实现,同时保持相同的通用用户界面外观。例如,移动应用可以被编程,以供在平板、智能电话、或者使用客户端计算机处的浏览器所访问的服务器计算机上执行。此外,被配置为用于平板计算机或智能电话的移动应用可以提供适合用于驾驶室计算机115的显示和处理能力的完整的app体验或驾驶室app体验。例如,现在参考图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传送这些基于位置的侦察观测结果。

2.3.计算机系统的数据摄取

在一个实施例中,外部数据服务器计算机108存储外部数据110,包括表示针对一个或多个田地的土壤组成的土壤数据和表示一个或多个田地上的温度和降水的天气数据。天气数据可以包括过去和当前的天气数据以及对未来天气数据的预报。在一个实施例中,外部数据服务器计算机108包括由不同实体托管的多个服务器。例如,第一服务器可以包含土壤组成数据,而第二服务器可以包括天气数据。另外,土壤组成数据可以被存储在多个服务器中。例如,一个服务器可以存储表示土壤中的沙子、淤泥和粘土的百分比的数据,而第二个服务器可以存储表示土壤中的有机物质(om)的百分比的数据。

在一个实施例中,远程传感器112包括被编程或者被配置为产生一个或多个观测结果的一个或多个传感器。远程传感器112可以是诸如卫星的空中传感器、车辆传感器、种植装备传感器、耕作传感器、肥料或杀虫剂施用传感器、收割机传感器,以及能够从一个或多个田地接收数据的任何其他器具。在一个实施例中,应用控制器114被编程或者被配置为从农业智能计算机系统130接收指令。应用控制器114还可以被编程或者被配置为控制农业车辆或器具的操作参数。例如,应用控制器可以被编程或者被配置为控制车辆(诸如拖拉机)、种植装备、耕作装备、肥料或杀虫剂装备、收割机装备或者其他农场器具(诸如水阀)的操作参数。其他实施例可以使用传感器和控制器的任何组合,以下仅仅是其被选择的示例。

系统130可以在用户102的控制下海量地从已经将数据贡献给共享数据库系统的大量种植者那里或者摄取数据。当一个或多个用户控制的计算机操作被请求或者被触发以获得供系统130使用的数据时,这种获得数据的形式可以被称为“手动数据摄取”。例如,从加利福尼亚州旧金山的克莱米特公司可商购的climatefieldview应用可以被操作将数据导出到系统130,以供存储在储存库160中。

例如,种子监视器系统既可以控制播种机装置组件也可以获得种植数据,包括经由信号线束来自种子传感器的信号,该信号线束包括can主干网和用于注册和/或诊断的点对点连接。种子监视器系统可以被编程或者被配置为经由驾驶室计算机115或者系统130内的其他设备向用户显示种子间距、种群和其他信息。在美国专利号8,738,243和美国专利公开20150094916中公开了示例,并且本公开假定了解那些其他专利公开。

同样,产量监视器系统可以包含用于收割机装置的产量传感器,该产量监视器系统向驾驶室计算机115或系统130内的其他设备发送产量测量数据。产量监视器系统可以利用一个或多个远程传感器112来获得联合收割机或其他收割机中的谷物水分测量结果,并且经由驾驶室计算机115或系统130内的其他设备向用户传输这些测量结果。

在一个实施例中,可以与在本文其他地方描述的类型的任何移动车辆或装置一起使用的传感器112的示例包括运动学传感器和定位传感器。运动学传感器可以包括任何速度传感器,诸如雷达或车轮速度传感器、加速度计、或陀螺仪。定位传感器可以包括gps接收器或收发器、或者被编程为基于附近的wi-fi热点来确定位置的基于wi-fi的定位或地图制作app等。

在一个实施例中,可以与拖拉机或其他移动车辆一起使用的传感器112的示例包括引擎速度传感器、燃料消耗传感器、与gps或雷达信号交互的面积计数器或距离计数器、pto(动力输出装置)速度传感器,被配置为检测液压参数(诸如压力或流量)和/或液压泵速度的拖拉机液压传感器、轮速传感器或轮滑传感器。在一个实施例中,可以与拖拉机一起使用的控制器114的示例包括:液压方向控制器、压力控制器、和/或流量控制器;液压泵速度控制器;速度控制器或调速器;挂钩定位控制器;或提供自动转向的车轮定位控制器。

在一个实施例中,可以与诸如播种机、条播机或空气播种机的种子种植设备一起使用的传感器112的示例包括:种子传感器,其可以是光学、电磁或冲击传感器;下压力传感器,诸如负载销、负载传感器、压力传感器;土壤属性传感器,诸如反射率传感器、水分传感器、电导率传感器、光学残留传感器或者温度传感器;组件操作标准传感器,诸如种植深度传感器、下压力缸压力传感器、种子盘速度传感器、种子驱动电机编码器、种子输送机系统速度传感器或者真空度传感器;或者农药施用传感器,诸如光学或其他电磁传感器、或者冲击传感器。在一个实施例中,可以与这样的种子种植装备一起使用的控制器114的示例包括:工具栏折叠控制器,诸如用于与液压缸相关联的阀的控制器;下压力控制器,诸如与气压缸、安全气囊或者液压缸相关联的阀的控制器,该控制器被编程用于将下压力施用到个体的行单元或整个播种机框架上;种植深度控制器,诸如线性致动器;计量控制器,诸如电动排种器驱动马达、液压排种器驱动马达或者刈幅控制离合器;混合选择控制器,诸如排种器驱动马达,或者被编程用于选择性地允许或阻止种子或空气种子混合物向排种器或中央散装料斗运送种子或者从排种器或中央散装料斗运送种子;计量控制器,诸如电动排种器驱动马达或者液压排种器驱动马达;种子输送机系统控制器,诸如用于带式种子运送输送机马达的控制器;标记控制器,诸如用于气动或液压致动器的控制器;或者农药施用速率控制器,诸如计量驱动控制器、孔口尺寸或定位控制器。

在一个实施例中,可以与耕作设备一起使用的传感器112的示例包括:用于诸如柄或盘的工具的定位传感器;用于这种工具的工具定位传感器,该定位传感器被配置为检测深度、耙组角或者横向间距;下压力传感器;或者牵引力传感器。在一个实施例中,可以与耕作设备一起使用的控制器114的示例包括下压力控制器或工具定位控制器,诸如被配置为控制工具深度、耙组角或者横向间距的控制器。

在一个实施例中,可以与用于施用肥料、杀虫剂、杀真菌剂等的装置(诸如播种机上启动肥系统、底土肥料施用器、或肥料喷雾机)相关联使用的传感器112的示例包括:流体系统标准传感器,诸如流量传感器或压力传感器;指示哪个喷头阀或流体管线阀为打开的传感器;与罐相关联的传感器,诸如液位传感器;分段或系统范围的供应线传感器,或行专用的供应线传感器;或运动学传感器,诸如被安置在喷雾机喷杆上的加速度计。在一个实施例中,可以与这种装置一起使用的控制器114的示例包括:泵速度控制器;被编程以控制压力、流量、方向、pwm等的阀控制器;或定位致动器,诸如针对喷杆高度、底土层深度或动臂定位。

在一个实施例中,可以与收割机一起使用的传感器112的示例包括:产量监视器,诸如冲击板应变仪或定位传感器、电容式流量传感器、负载传感器、重量传感器、或者与升降机或螺旋钻相关联的扭矩传感器、或光学或其他电磁谷物高度传感器;谷物水分传感器,诸如电容式传感器;谷物损失传感器,包括冲击、光学或电容式传感器;割台操作标准传感器,诸如割台高度传感器、割台类型传感器、台面板间隙传感器、进料器速度和拨禾轮速度传感器;分离器操作标准传感器,诸如凹板间隙、转子速度、闸瓦间隙或颖壳筛间隙传感器;针对定位、操作或速度的螺旋钻传感器;或者引擎转速传感器。在一个实施例中,可以与收割机一起使用的控制器114的示例包括:针对诸如割台高度、割台类型、台面板间隙、进料器速度或拨禾轮速度等元素的割台操作标准控制器;以及针对诸如凹板间隙、转子速度、闸瓦间隙或颖壳筛间隙的特征的分离器操作标准控制器;或者针对定位、操作或速度的螺旋钻控制器。

在实施例中,可以与谷物推车一起使用的传感器112的示例包括重量传感器、或者针对螺旋钻定位、操作或速度的传感器。在一个实施例中,可以与谷物推车一起使用的控制器114的示例包括针对螺旋钻定位、操作或速度的控制器。

在实施例中,传感器112和控制器114的示例可以被安装在无人驾驶飞行器(uav)装置或“无人机”中。这样的传感器可以包括具有检测器的相机,该检测器对包括可见光、红外、紫外线、近红外(nir)等在内的电磁频谱的任何范围都有效;加速度计;高度计;温度传感器;湿度传感器;皮托管传感器或者其他空速或风速传感器;电池寿命传感器;或者雷达发射器和反射雷达能量检测装置;其他电磁辐射发射器和反射电磁辐射检测装置。这样的控制器可以包括引导或马达控制装置、控制表面控制器、相机控制器,或者被编程为打开任何前述传感器、操作任何前述传感器、从任何前述传感器获得数据、管理和配置任何前述传感器的控制器。。在美国专利申请号14/831,165中公开了示例,并且本公开假定了解其他专利公开。

在一个实施例中,传感器112和控制器114可以被贴附到土壤采样和测量装置,该装置被配置或者被编程为对土壤采样并且执行土壤化学测试、土壤水分测试,以及其他与土壤有关的测试。例如,可以使用在美国专利号美国专利号8,767,194和美国专利号no.8,712,148中披露的装置,并且本公开假定了解那些专利公开。

在一个实施例中,传感器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中所公开的装置可以被使用,并且本公开假定了解那些专利公开。

2.4.过程概述-农艺模型训练

在一个实施例中,农业智能计算机系统130被编程或者被配置为创建农艺模型。在此上下文中,农艺模型是农业智能计算机系统130的存储器中包括田地数据106的数据结构,诸如针对一个或多个田地的标识数据和收获数据。农艺模型还可以包括计算出的农艺属性,农艺属性描述可能影响田间一种或多种作物生长的条件或一种或多种作物的特性,或其描述两者。另外,农艺模型可以包括基于农艺因素的建议,诸如作物建议、灌溉建议、种植建议、肥料建议、杀真菌剂建议、农药建议、收割建议,以及其他作物管理建议。农艺因素还可以被用来估计与一种或多种作物有关的结果,诸如农艺产量。作物的农艺产量是对所生产作物的数量的估计,或者在某些示例中是从所生产作物获得的收入或利润。

在一个实施例中,农业智能计算机系统130可以使用预配置的农艺模型来计算与当前接收到的一个或多个田地的位置和作物信息有关的农艺属性。预配置的农艺模型基于先前所处理的田地数据,包括但不限于标识数据、收获数据、肥料数据和天气数据。预配置的农艺模型可能已经被交叉验证,以确保模型的准确度。交叉验证可以包括与地面实况的比较,该比较将预测结果与田地上的实际结果相比较,诸如将降雨估计与提供相同或附近位置的天气数据的雨量计或传感器相比较,或者将氮含量的估计与土壤样本测量相比较。

图3图示出了被编程的过程,农业智能计算机系统通过该过程使用由一个或多个数据源提供的田地数据来生成一个或多个预配置的农艺模型。图3可以充当用于将农业智能计算机系统130的功能元件编程为执行现在所描述的操作的算法或指令。

在框305处,农业智能计算机系统130被配置或者被编程为实现对从一个或多个数据源所接收的田地数据的农艺数据预处理。出去去除噪声、失真影响以及农艺数据内的混杂因素的目的,可以对从一个或多个数据源所接收的田地数据进行预处理,这些混杂银租包括可能对接收到的田地数据值产生不利影响的测量离群值。农艺数据预处理的实施例可以包括但不限于:去除通常与离群值数据值相关联的数据值、已知不必要地使其他数据值倾斜的特定测量数据点,被用来去除或降低来自噪声的加性或乘性效应的数据平滑、聚合或采样技术,以及被用来提供正数据输入和负数据输入之间的清楚区别的其他滤波或数据推导技术。

在框310处,农业智能计算机系统130被配置或者被编程为使用经预处理的田地数据来执行数据子集选择,以便标识对初始的农艺模型生成有用的数据集。农业智能计算机系统130可以实现数据子集选择技术,包括但不限于遗传算法方法、所有子集模型方法、顺序搜索方法、逐步回归方法、粒子群优化方法,以及蚁群优化方法。例如,基于自然选择和遗传学的进化原理,遗传算法选择技术使用自适应启发式搜索算法来确定和评估经预处理的农艺数据内的数据集。

在框315处,农业智能计算机系统130被配置或者被编程为实现田地数据集评估。在一个实施例中,通过创建农艺模型并且使用针对所创建的农艺模型的特定质量阈值来评估特定的田地数据集。可以使用一种或多种比较技术来比较和/或验证农艺模型,诸如但不限于留一交叉验证均方根误差(rmsecv)、平均绝对误差和平均百分比误差。例如,rmsecv可以通过比较由农艺模型创建的预测农艺属性值与被收集并且被分析的历史农艺属性值来对农艺模型进行交叉验证。在一个实施例中,农艺数据集评估逻辑被用作反馈回路,其中不满足所配置的质量阈值的农艺数据集在未来的数据子集选择步骤期间被使用(框310)。

在框320处,农业智能计算机系统130被配置或者被编程为基于经交叉验证的农艺数据集来实现农艺模型创建。在一个实施例中,农艺模型创建可以实现多变量回归技术以创建预配置的农艺数据模型。

在框325处,农业智能计算机系统130被配置或者被编程为存储预配置的农艺数据模型,以用于未来的田地数据评估。

2.5.实现示例-硬件概述

根据一个实施例,本文描述的技术由一个或多个专用计算设备实现。专用计算设备可以被硬连线以执行这些技术,或者可以包括数字电子设备,诸如一个或多个经过永久编程以执行这些技术的专用集成电路(asic)或现场可编程门阵列(fpga),或者可以包括一个或多个通用硬件处理器,该一个或多个硬件处理器被编程为以固件、存储器、其他储存装置或者组合来根据程序指令执行这些技术。这样的专用计算设备还可以将定制的硬连线逻辑、asic或者fpga与定制的编程相结合来达成这些该技术。专用计算设备可以是台式计算机系统、便携式计算机系统、手持式设备、联网设备,或者是并入硬连线和/或程序逻辑以实现这些技术的任何其他设备。

例如,图4是图示出可以在其上实现本发明的实施例的计算机系统400的框图。计算机系统400包括总线402或者用于传送信息的其他通信机制,以及与总线402耦合用于处理信息的硬件处理器404。硬件处理器404可以是例如通用微处理器。

计算机系统400还包括耦合到总线402的主存储器406(诸如随机存取存储器(ram)或其他动态存储设备),用于存储信息和要由处理器404执行的指令。主存储器406还可以被用于在执行要由处理器404执行的指令期间存储临时变量或其他中间信息。当这样的指令被存储在处理器404可访问的非瞬态存储介质中时,将计算机系统400渲染成被定制为执行指令中所指定的操作的专用机器。

计算机系统400还包括耦合到总线402的只读存储器(rom)408或其他静态存储设备,用于存储静态信息和用于处理器404的指令。诸如磁盘、光盘、固态驱动器的存储设备410被提供并耦合到总线402以存储信息和指令。

计算机系统400可以经由总线402耦合到诸如阴极射线管(crt)之的显示器412,用于向计算机用户显示信息。包括字母数字键和其他键的输入设备414耦合到总线402,用于向处理器404传送信息和命令选择。另一类型的用户输入设备是光标控件416,诸如鼠标、轨迹球或光标方向键,用于向处理器404传送方向信息和命令选择以及用于控制显示器412上的光标移动。该输入设备通常在两个轴线(第一轴线(例如x)和第二轴线(例如y))上具有两个自由度,这允许设备指定平面中的定位。

计算机系统400可以使用定制的硬连线逻辑、一个或多个asic或fpga、固件和/或程序逻辑来实现本文所述的技术,它们与计算机系统结合使计算机系统400成为专用机器或者将计算机系统400编程为专用机器。根据一个实施例,本文的技术由计算机系统400响应于处理器404执行主存储器406中所包含的一个或多个指令的一个或多个序列来执行。这样的指令可以从另一存储介质(诸如存储设备410)被读取到主存储器406中。执行主存储器406中所包含的指令的序列使处理器404执行本文所描述的处理步骤。在备选实施例中,可以使用硬连线电路装置来代替软件指令或者与软件指令结合使用硬连线电路。

本文所使用的术语“存储介质”是指存储使得机器以特定方式操作的数据和/或指令任何非瞬态介质。这样的存储介质可以包括非易失性介质和/或易失性介质。非易失性介质包括例如光盘、磁盘或固态驱动器,诸如存储设备410。易失性介质包括动态存储器,诸如主存储器406。存储介质的常见形式包括例如软盘、软磁盘、硬盘、固态驱动器、磁带或任何其他磁性数据存储介质、cd-rom、任何其他光学数据存储介质、具有有孔图案的任何物理介质、ram、prom和eprom、flash-eprom、nvram、任何其他存储器芯片或盒式磁带。

存储介质不同于传输介质,但是可以与传输介质结合使用。传输介质参与存储介质之间的信息传送。例如,传输介质包括同轴电缆、铜线和光纤,包括构成总线402的导线。传输介质还可以采取声波或光波的形式,诸如在无线电波和红外数据通信期间所生成的那些声波或光波。

各种形式的介质可以参与将一个或多个指令的一个或多个序列携带到处理器404以供执行。例如,指令最初可以被承载在远程计算机的磁盘或固态驱动器上。远程计算机可以将指令加载到其动态存储器中,并且使用调制解调器通过电话线来发送指令。在计算机系统400本地的调制解调器可以在电话线上接收数据,并且使用红外发射器将数据转换为红外信号。红外检测器可以接收红外信号中承载的数据,并且适当的电路装置可以将数据置于总线402上。总线402将数据承载到主存储器406,处理器404从主存储器406取回并且执行指令。由主存储器406接收的指令可以可选地在处理器404执行之前或之后被存储在存储设备410上。

计算机系统400还包括耦合到总线402的通信接口418。通信接口418提供耦合到网络链路420的双向数据通信,网络链路420连接到局域网422。例如,通信接口418可以是集成服务数字网络(isdn)卡、电缆调制解调器、卫星调制解调器,或者提供到对应类型的电话线的数据通信连接的调制解调器。作为另一示例,通信接口418可以是提供到兼容的lan的数据通信连接的局域网(lan)卡。无线链路也可以被实现。在任何这样的实现中,通信接口418发送和接收电信号、电磁信号或者光信号,这些信号承载表示各类信息的数字数据流。

网络链路420通常向其他数据设备提供通过一个或多个网络的数据通信。例如,网络链路420可以向主机计算机424或者向由互联网服务提供商(isp)426操作的数据设备提供通过本地网络422的连接。isp426转而通过现在通常称为“互联网”428的全球分组数据通信网络来提供数据通信服务。局域网422和互联网428两者都使用承载数字数据流的电信号、电磁信号或者光信号。通过各种网络的信号和在网络链路420上并且通过通信接口418的信号是传输介质的示例形式,这些信号承载去往和来自计算机系统400的数字数据。

计算机系统400可以通过(多个)网络、网络链路420和通信接口418来发送消息并且接收包括程序代码的数据。在互联网示例中,服务器430可以通过互联网428、isp426、本地网络422和通信接口418来传输所请求的针对应用程序的代码。

所接收的代码可以在其被接收时由处理器404执行,和/或被存储在存储设备410或者其他非易失性存储器中以供稍后执行。

3.数字图像处理方法

描述了提供用于农业田地图像的数字图像处理的计算机实现的方法的实施例,这些数字图像处理用于压力检测、异常检测以及产量数据的预测或校正。当在作物覆盖和杂草覆盖在空中图像中可察觉时,实施例在生长季节的后期阶段和后期作物发育最为有用。然而,本文的技术也可以被使用在生长季节的任何阶段。

在一些实施例中,农业田地的大量数字图像被获得以用于训练机器学习模型,该机器学习模型然后可以被用来将在生长季节期间从农业田地捕获的特定图像分类。图像质量控制和预处理可以被实现以生成用于在训练机器学习模型中使用的地面实况数据。基于融合分类器输出和植被指标数据(诸如ndvi或cci数据)的模型可以被使用。结果,田地中的异常的数字图形或视觉地图可以被生成。图像可以被与在收获之后的实际产量数据相关,以进行进一步的验证或校准。本文中的方法可以被集成到用于云存储或结果发布的更大的数据处理工作流中,并且可以与诸如产量预测模型的其他模型集成。

所提出的方法基于在经选择的成像硬件和在计算机程序中实现的创新图像处理算法的组合。利用这种方法,使用从机载平台、无人驾驶飞行器(uav)和地面车载相机接收到的高分辨率图像来标识空间和光谱图像特征。图像可以包括彩色图像(诸如rgb图像)和/或多光谱图像(诸如近红外图像)。在此上下文中,高分辨率可能意味着每像素覆盖小于1厘米。机器学习模型可以在特征数据上执行,以区分完好的玉米行与上述的田地异常,并且产出分类输出。

经分类的图像和图像小块可以被用来生成农业田地的完好面积和非完好面积的经地理矫正的地图。可以使用与不同类型的田地异常对应的颜色对地图进行颜色编码。一个地图可以描绘一种或多种异常。使用这些方法所生成的高分辨率异常地图可以使布局试验、并排田地试验、作物保护试验、装备问题检测、风或滞水损害标识、产量数据调整以及量化子田地级别的环境影响受益。所提出的方法允许检测和计算在针对田地所生成的每个瓦片(tile)/地块(plot)/网格内的所有异常以及其百分比。

3.1.空中图像的数字图像处理

图7图示了用以生成田地异常地图的使用机器学习模型对数字图像进行的示例处理。在图7中,诸如边界数据、种植数据、产量数据等的田地数据信息可以被存储在数据库702中。该数据库可以被组织为关系数据库或另一类型的数据库。数据库可以被布置为分布式数据库系统或者独立服务器数据库系统。

描述图7中使用元素704所描绘的田地边界和所有其他信息的田地元数据可以被提供给飞行器(诸如直升机、农业飞机)、管理直升机和飞机的路线的控制中心等。信息可以被用来导航无人机或者任何其他无人飞行器,并且指导它们从田地收集空中图像。

响应于接收到田地边界信息,当飞行器706穿越该田地时,飞行器706可以开始捕获各种图像。空中图像还可以从卫星或任何其他飞行器被获得。

所捕获的图像708在本文中被称为空中/uav图像。这些图像可以作为输入被提供给机器学习模型712。机器学习模型712可以执行图像校准、图像处理和图像分类。机器学习模型712还可以基于图像708生成示出田地异常的地图。

来自模型712的输出可以包括一个或多个异常地图714。异常地图可以包括经颜色编码的区域,其中每个颜色代码扩大为不同的分类。分类的示例包括例如被玉米杆覆盖的面积、被示出为裸土的面积、被杂草覆盖的面积、被道路覆盖的面积等。

在一个实施例中,基于地图714,形状文件地图716被生成。形状文件716可以包括被标识为具有异常的一个或多个面积的边界的地理坐标。地图716可以被提供给地面系统。

3.2.地面图像的数字图像处理

在一个实施例中,地面系统可以使用地图716来控制地面上的(on-ground)相机以收集使用地图716中包括的边界所标识的一个或多个地块的地面图像。地面系统可以使用所收集的地块的地面图像来生成针对该地块的地块异常的改进的地图。地块异常的改进的地图相比基于上述空中图像所生成的异常地图714以更高的细节级别描绘了异常细节。

地面系统可以包括诸如相机718的各种相机、诸如传感器/相机720的各种传感器、不同的图像捕获装置722、放大器726以及被配置为捕获图像的其他处理软件/硬件工具。在图7中软件和硬件工具被称为元件724。

地面上的传感器和相机可以被用来根据形状文件716中所提供的形状文件边界来收集地面图像。形状文件可以包括指定农业地块的边界的地理坐标。因此,例如在联合收割机的一个手臂上安装有相机的联合收割机可以根据形状文件中所提供的坐标来穿越农业地块,并且当联合收割机穿越该地块时,联合收割机可以从该地块收集地面图像。

在一个实施例中,地面图像被校准、预处理和拼接以形成结果图像728。图像728可以包括对被玉米、一些杂草、一些裸土等覆盖的地块的描绘。

可以将一组图像728移植为对模型730的输入。模型730可以被实现为机器学习模型,并且可以执行不同的功能,诸如由地面上的系统提供的所有图像的收集、图像的校准。这可以包括例如边界的调整、颜色的调整、色调、伽马分量的调整等。模型730也可以处理那些图像。这可以包括将在后面描述的拼接和其他处理。

得到的图像可以被处理以确定图像的个体区域的分类。分类允许确定田地的哪些面积或部分被玉米秆覆盖,哪些面积被杂草覆盖,哪些面积被土壤、裸土覆盖等。如稍后将描述的,输出图像可以包括一组异常地图,并且每个地图可以描绘个体异常,诸如裸土、杂草等。这些地图也可以被提供给数据库702。

4.空中图像和uav图像的示例处理

航测是一种使用被安装在飞机、直升机、uav、气球和其他移动设备上的数据收集仪器来收集测绘数据的方法。测绘数据的示例可以包括空中图像、lidar数据、表示电磁频谱的各种可见和不可见波段的图像、地球物理数据等。航测还可以指的是对地理区域的图表或地图的分析。航测通常提供比例如由卫星提供的数据更高分辨率的数据。

所提出的方法包括图像获取阶段和机器学习阶段。在图像获取阶段中,在一个实施例中,对于基于地面的成像平台,包括树莓派处理器、相机和gps接收器的定制计算机系统在收割操作或其他农业田地操作期间自动获取地理参考(geo-reference)的rgb数字图像。在此上下文种,地理参考意指:在捕获和存储时与地理位置元数据(即形状文件)相关联地存储每个数字图像。元数据可以包括从被安装在具有相机和处理器的装置上的gps接收器所获得的纬度值和经度值。检索地理位置数据并且将位置元数据与图像一起存储,允许稍后重建田地的完整图像和/或基于使用所收集的图像来执行机器学习阶段而生成数字地图。

附加地或备选地,对于基于uav的成像平台,高分辨率彩色相机(例如sonyrx1r-ii)或多光谱相机被与商用无人机平台(例如microdronesmd4-1000或djim600)集成,其可以被编程为自动勘测预定义的面积并且收集高分辨率的彩色和多光谱图像。

这些类型的移动发现成像平台的使用使得能够在每次经过田地时收集数据和图像。可以在完成的图像中标识子田地区以供高准确性的成像和感测。例如,如果在图像捕获时在计算机存储器中有区地图可用,则子田地区元数据可以在图像被收集时被添加到图像。从gps接收器获得的gps数据可以被用来将区地图与正在捕获图像的uav或收割机的当时当前位置相关。此外,本文提出的硬件布置可以减少用于扩大成像能力的成本和开发时间。

图8图示了用以生成田地异常地图的使用机器学习模型对空中图像和uav图像进行的示例处理。图8图示出了用以生成田地异常地图的使用机器学习模型对空中图像和uav图像进行的示例处理。在图8中,一个或多个空中uav图像802被提供给校准单元804。该校准可以包括颜色校正、色调校正、分辨率校正、伽马颜色校正等。经校准和经预处理的图像被提供给拼接器806,该拼接器806在田地级别执行对经校准的图像的拼接。

田地级别的地图是指覆盖具有例如40到100英亩的典型us农业田地的图像。田地级别的地图通常由其边界来定义。与之形成鲜明对比的是,地块级别的地图是指田地内的小矩形面积,其可以具有例如2作物行的宽度和20英尺长的长度。

通常,数百个原始图像或者经处理的图像被拼接为田地级别图像,该田地级别图像通常为大的正射马赛克图像。正射马赛克图像的示例是图像808。

在一个实施例中,图像808被提供给网格生成器,该网格生成器将正射马赛克图像划分成小空间网格的网格。每个网格可以具有例如64×64像素,以覆盖10英尺×10英尺的正方形面积。这些细节仅出于说明目的而被提供,并且不应以任何方式被认为是限制性的。实际的空间网格可以更大或更小。这取决于实现。田地网格810或者一组小空间网格成为小瓦片812的图像网格。

在下一步骤中,小瓦片812被提供给分类单元,并且图像可以包括例如图像814、图像816等。

分类和后处理单元818可以利用机器学习模型,诸如图7中所描述的模型712。

模型818的输出可以包括一个或多个异常地图。这些地图可以包括地图822。可以根据图例824来示出地图822的内容,图例824描述了被指派给不同的、经分类的区域的不同颜色。一个区域可能对应于例如玉米秆,而其他图像则可能示出杂草或裸土等。

在一个实施例中,基于图像、模型818,所谓的形状文件被生成。形状文件的示例是形状文件820。形状文件820可以包括例如针对不同区域、针对不同网格或小瓦片的地理坐标,其包括经分类的特性。

5.地面图像的示例处理

本文的技术还可以被用来通过使用被安装在田地中的固定位置(诸如在杆上)的相机计算机装置以不同的定距离间隔的时间重复地捕获田地的图像来实现田地的延时成像。在一个实施例中,细长杆被固定在田地中的地面,并且太阳能电池阵列和计算机机箱被固定该杆。机箱被固定在抬高的位置,以使得装置中的相机可以从抬高的高度具有对田地的清楚视野。太阳能电池阵列耦合到计算机机箱以用作电源。计算机机箱包括pi相机、树莓派2b处理器、太阳能面板控制器和lte调制解调器。处理器可以被编程为发信号通知相机每小时捕获图像,并且激励lte调制解调器周期性地向云数据存储上传图像。

图9图示了用以生成田地异常地图的使用机器学习模型对地面图像进行的示例处理。图9是地面处理的详细示例。假设将形状文件916提供给配备有相机的地面上的车辆(诸如联合收割机、收割机和拖拉机之),该相机被配置为收集图像(诸如田地的地面图像)。图像可以比空中/uav图像更详细。

在一个实施例中,地面图像可以由诸如可以被安装在联合收割机、拖拉机、播种机等上的相机718的相机来捕获。其他相机可以包括可以被安装在杆、栅栏等上的相机720、722、724。

在一个实施例中,地面上的处理包括由例如放大器728或者任何其他处理元件726执行放大地面图像。

地面图像可以被提供给模型730,模型730被配置为收集图像、校准图像并且处理图像。处理可以包括执行图像分类以确定图像是否描绘了田地中的任何异常。

来自模型730的输出732可以包括一个或多个异常地图734。如前所述,这些地图可以被组织为一组地图,并且这些地图中的每个地图可以指示单独异常或者个体异常。例如,一个地图可以示出杂草,另一个地图可以示出裸土,等等。地图可以被存储在数据库702中。

备选地地或附加地,地图可以被使用或者被传输到地面上的车辆和地面上的农业机器,以控制车辆和机器执行各种农业操作。例如,如果异常地图中的一个异常地图指示农业田地的被裸土覆盖、但是应当被种植上种子的面积,则该地图可以被发送给播种机,以指令播种机向该面积播种种子。

6.地面图像处理的示例实现

在一个实施例中,计算机相机装置被固定到联合收割机或收割机的臂上。该装置可以包括树莓派处理器、pi相机、u-bloxgps板和wi-fi适配器。在该实施例中,处理器被编程为当移动联合收割机或收割机的通过从gps板读取位置数据所确定的当时当前地理位置与用于图像捕获的规定匹配时发信号通知相机捕获图像。用于图像捕获的规定或程序可以指定在收割机经过空间中的特定点时、或者在收割机穿越田地时使用指定的间隔距离、或者根据其他方案来捕获图像。

在一个实施例中,使用以前述方式从联合收割机捕获的图像,大约300个个体图像被手动标记;约230个图像被标记为指示没有损害、具有良好作物状况和可见田垄的正常地块,而约70个图像被标记为指示缺口和倒伏。使用tensorflow和domino中的inceptionv.3开发了cnn迁移学习模型。该模型在n=35的情况下达到了91%的预测准确性。在附图和/或规范幻灯片中示出了正常地块和异常地块的示例。

在一个实施例中,基于gps或者从树莓派处理器被传输到相机的距离触发信号,使用被安装在联合收割机上的相机来捕获作物图像。缩略图图像被产生,并且以geotiff格式图像被无线地传输到被安装在联合收割机上的网关计算机。网关使用无线传输向云存储传输图像数据,并且还被编程为从云存储检索形状文件以及经由与树莓派处理器的微型usb连接来加载形状文件。trimblegps接收器提供地理位置数据并且生成地理位置日志,该地理位置日志被上传到云存储。地理位置数据与图像数据组合经受图像拼接,以组合在联合收割机移动时在田地中的邻接定位处所捕获的图像,并且经受后处理以去除伪像、调整垂直取向等。得到的经处理图像然后被用于本文所述的模型开发、训练、验证和分类。

在另一实施例中,使用装配有ubloxgps接收器和树莓派2b相机的无线电控制的地面穿越漫游机器人或者其他无人地面车辆来捕获图像。该装置能够穿越田地并且捕获田地内的图像,主要用于标识患病植物或作物损害位置。

在另一实施例中,冠层下疾病成像系统被使用,该冠层下疾病成像系统由被安装在田地中的短杆上并且耦合到具有防风雨外壳的nvidiatx1计算机的zed立体相机组成。zed是一款能够以每秒30帧的速度捕获2kuhd图像的彩色立体相机。tx1计算机由锂电池供电并且包括第二个相机。chcrtxgps接收器被分开安装在另一杆上并且可以通信地耦合到计算机。该装置能够捕获超过8,000个goss枯萎病、灰叶斑病和常见锈病的图像。

在又一实施例中,velodynevlp-1616通道lidar装置被安装在移动联合收割机上,并且能够对玉米田地中的倒伏进行成像。倒伏值严重影响了作物产量,但是获得人类视觉评级是劳动密集的并且很慢。当被配备在联合收割机上时,数字成像可以提高吞吐量,并且在处理实验或比较期间测量所有试验地块。在一个实施例中,该装置被编程为对联合收割机左侧上的四(4)个玉米行进行成像。garmingps通信地耦合到lidar,其允许向基于云的服务器传输lidar图像数据。

6.1.示例边缘计算实现

边缘计算常常是指在数据源附近发生的数据计算和处理。在成像应用中,边缘计算设备通常被部署在被定位成紧邻相机和传感器的成像收集平台上,而不是被部署在云中的集中式计算服务器上。边缘计算通常帮助成像系统减少系统与中央数据库或云之间不必要的数据业务,并且提供实时图像处理能力。

“ai加速器”或“神经网络加速器”是被设计为支持人工神经网络、机器视觉系统和机器学习系统的专用集成电路(asic)。已开发其自己的ai加速器的供应商示例包括基于intel的nervana神经网络处理器(nnp)、基于google的张量处理单元(tpu)和基于nvidia的图形处理单元(gpu)。例如,边缘tpu是google开发的解决方案,其被用来结合边缘计算和ai加速器两者的优势。换句话说,边缘tpu是一种低功耗并且大小适中的解决方案,其可以被部署在由例如电池或发电机供电的成像设备上。边缘tpu可以帮助成像系统增强ai计算能力,并且提供用于伪实时地执行机器学习/ai模型的平台。

在一个实施例中,使用边缘计算技术实现了一种用于使用数字图像和机器学习模型来将田地异常绘制地图的方法。上面已经描述了边缘计算技术的示例。这样的技术中的一种技术包括边缘tpu技术。但是,所提出的方法不限于边缘tpu实现。实际上,也可以实现其他方法。

图10图示了用于生成田地异常地图的使用机器学习模型和边缘tpu对地面图像进行的示例处理。图10图示了图9中所示的过程的特定实现。形状文件1012被提供给地面上的系统,并且地面上的系统使用形状文件1012来确定田地的边界并且控制地面上的相机从田地收集地面上的图像。随后,使用例如与通信网关1024通信的边缘tpu硬件单元1006,所收集的地面上的图像被处理。

在一个实施例中,地面上的系统1016可以使用树莓派2处理器1018和基于形状文件1012所生成的gps触发。该触发被发送到被安装在地面上的车辆上的相机,以指令相机拍摄田地的某些面积的原始图像1014。

由被安装在地面上的机械或车辆上的相机所捕获的图像1014可以作为jpeg图像被发送到边缘tpu1006以供处理。边缘tpu1006可以向图像应用一个或多个分类器以执行图像分类。图像可以经由以太网而被发送或者经由usb2.0设备(例如作为缩略图tiff图像1022)而被提供给网关1024。图像1022还可以从网关1024被发送(1020)到处理器1018以供附加处理。

网关1024可以被实现为服务器或计算机处理器,并且可以例如以tiff格式将经分类的图像作为缩略图1026向云系统1004发送。被存储在云系统1004中的tiff图像还可以被存储在数据库1010中。

7.示例机器学习方法

在机器学习阶段中,在一个实施例中,基于imagenet预训练的卷积神经网络模型(inceptionv3)的被编程的深度(迁移)学习模型被编程为将数字图像分类在多个类别中。在一个实施例中,第一类别是完好的作物(诸如玉米等)行。第二类别是由于倒伏、杂草和/或裸土而出现的非完好的玉米行。模型的输出被用来生成田地的已成像面积的地图,其中每个图像都被分类为完好的玉米、倒伏、杂草和裸土。虽然出于提供清楚示例的目的而在本文中标识倒伏或作物损害、杂草和裸土,但是其他实施例可以基于已经被选择并且被用于训练解决其他异常(诸如燃烧、动物损害、热损害等)的cnn的一个或多个训练数据集来针对那些异常将图像分类。

图11图示了用于使用机器学习模型将图像分类以生成田地异常地图的示例机器学习方法。在图11中,诸如图像1102的输入图像被提供给机器学习模型1104,该机器学习模型1104执行图像分类等。分类可以包括使用多种分类器。

在实施例中,分类器可以包括描绘已知异常的多个各种图像样本。异常的示例可以包括行间损害、杂草、积水等。针对每个类型的异常,可以提供一个或多个分类器。在图11中,分类器描绘了行间损害,并且包括行间图像#1、行间图像#2等。针对相同异常的图像可以包括相同异常的不同图像,并且每个图像可以示出例如异常的不同视图、异常的不同子类型、被用来描述异常的不同颜色方案等。

分类过程可以使用图像来允许确定地面上的图像是否图示了异常,诸如杂草、树木等。为了执行图像分类,分类过程可以使用各种分类器图像,诸如行间损害图像#1、行间损害图像#2、杂草图像#1、杂草图像#2、杂草图像#2等。所有图像可以是不同的。

因此,当输入图像1102经受分类过程1104时,分类器被应用于输入图像1102的网格瓦片,以确定图像1102是否与分类器中的任何分类器匹配。该决策被称为输出1106,并且可以包括有关图像1102是否与分类器中的任何分类器匹配的详细信息,并且如果匹配,则所匹配的分类器是否是行间损害图像#1、行间损害图像#2、杂草图像#1、杂草图像#2、杂草图像#2等。

8.示例分类器

在一个实施例中,5,000至6,000个图像的清单被获得并且被分类以训练机器学习模型。分类标签可以包括玉米、行间损害、道路、土壤、大豆、树木、水、杂草、阴影、建筑物,但是,基于图像清单的内容,其他标签也可以被使用在其他实施例中。

在一个实施例中,从空中装备所捕获的数字图像以编程方式被提供给校准阶段,在该校准阶段中,例如,图像伪影可以被去除,像素大小被归一化并且其他预处理被执行。接下来,图像可以被划分成1级网格,1级网格例如由每个为640×640像素的瓦片组成。每个瓦片可以是源图像的一部分的多像素阵列。在一个实施例中,接下来,选择多次以进行训练或验证。可以使用每个为64×64像素的瓦片来应用2级网格化。其他实施例可以使用具有不同像素尺寸的网格化。

在一个实施例中,经2级网格化瓦片经受土壤、杂草、行间缺口和其他特征的手动标记。然后,这些被标记的瓦片训练卷积神经网络以用于分类,或者以其他方式被用于模型的开发和实现。

此后,经训练的模型可以被用来单独地或者与诸如ndvi数据的植被指标数据相组合地对从空中装备或其他装备获得的其他原始数字图像文件执行分类。当使用组合时,针对特定田地的植被指标数据与同一田地的数字图像的分类输出被融合或者被融合(blend),并且以编程的方式被处理以生成该田地的异常地图。

图12图示出了使用机器学习模型来生成田地异常地图的示例图像分类。在该示例中,输入图像1202包括瓦片的网格,并且它们中的每一个表示玉米、土壤或杂草等。通过将一组分类器1204应用于图像以确定输出图像1206,图像1202被处理。图像1206可以包括瓦片分类,并且每个瓦片可以具有关联的分类器标识符,该分类器标识符指示瓦片是对应于作物还是对应于特定异常。因此,图像1206可以被分类为例如玉米、道路、土壤、杂草、树木、水等。不同类型的异常被示出为元素1204。

9.示例图像分类

图13图示出了使用机器学习方法的图像分类的示例,该图像分类使用机器学习模型来生成田地异常地图。在所描绘的示例中,不同的输入图像1300被移植到校准和预处理处理器中,并且然后在步骤1320中使用机器学习模型使经预处理和经校准的图像经受分类处理。

例如,图像1302至图像1310可以被提供给校准和预处理系统1320,并且一旦图像被校准和被预处理,就使用先前附图中所描述的方法将图像分类。

机器学习模型可以生成包括经分类的图像的输出1350。在图13中,经分类的数字图像包括杂草地图1352、裸土地图1354、倒伏地图1356和行间损害地图1358。还可以生成其他异常地图。不同类型的异常取决于田地的具体特性。

10.示例神经网络配置

图14图示了用于使用机器学习模型来生成田地异常地图的神经网络配置的示例。在所描绘的示例中,伪机器代码1402定义了模型的层、输入变量、块等的组织。所提供的示例仅被用于说明目的,并且神经网络配置的实际内容取决于特定的实现和田地特性。

在所描绘的示例中,以这样的方式来组织代码1402,以使得报头1404包括对层、层的类型、输出形状和参数数目的描述的方式来组织代码1402。例如,层中的一个层可以是输入层(inputlayer)1406,其包括不同形状参数如64乘以64和3,并且这里的参数数目为零。

神经网络配置的另一个元素可以包括块1408,并且其他元素可以包括块1410。取决于实现,针对不同的模型和不同的实现,神经网络配置可以是不同的。

通常,网络配置包括概述,诸如示出参数总计数的概要1420。配置还可以包括可训练参数计数1422和不可训练参数计数1424。

11.用于空中和uav图像处理的示例流程图

图15图示了用于使用机器学习模型来处理空中图像和uav图像以生成田地异常地图的示例流程图。图15中描述的步骤可以由在云中或者在服务器上所实现的分布式计算系统执行,或者可以由被配置为收集、处理和分类图像的任何其他处理系统执行。

在步骤1502中,处理器接收针对田地的空中/uav原始图像。图像可以由卫星、直升机、无人机或者被配置为收集图像的任何其他飞行器来提供。

在步骤1504中,处理器校准、调整和/或预处理图像。如前所述,这可以包括调整图像上的颜色,调整颜色饱和度,调整分辨率、图像的格式,执行伽玛校准,以及改进原始图像质量所需要的任何其他类型的处理。

在步骤1506中,经校准、调整和预处理的图像被拼接以创建田地级别的地图。拼接通常包括对大量图像执行拼接操作以生成大的正射马赛克图像。该图像可能会规模很大,因为它们可能覆盖大的地面面积。

在步骤1508中,基于田地级别的地图,处理器生成网格地图。生成网格通常涉及将大的正射马赛克图像划分成小的空间网格的网格,小的空间网格可以例如是64乘以64像素,并且例如覆盖田地的10乘以10英尺区域。这些数字可以变化,并且可以取决于实现。

在步骤1510中,网格被划分成多个小瓦片,并且如前面所提及,瓦片中的每个瓦片可以覆盖例如10乘以10英尺面积。在步骤1512中,使用机器学习模型,网格的小瓦片中的每个小瓦片被分类,以确定该瓦片是否图示了被一些异常(诸如杂草、水、裸土等)覆盖的田地面积。可以基于上述分类器来执行分类过程。

在步骤1514中,经分类的图像中的每个经分类的图像被后处理,并且该后处理可以包括确定分类正确的概率并且创建示出经分类的瓦片的一个或多个地图。例如,如先前的附图中所示,经分类的图像可以被用来生成示出杂草在田地中的位置的地图。经分类的图像还可以被用来生成另一地图,并且该地图可以示出正好被裸土覆盖的面积。还可以生成另一地图以仅示出被树所覆盖的面积。

在步骤1516中,基于由机器学习模型生成的输出,处理器生成形状文件。形状文件包括地理坐标(纬度值和经度值),以参考田地中的经分类的瓦片或经分类的区域。例如,如果基于经分类的图像确定了杂草地图,则这样的地图图示了被杂草覆盖的面积。基于该地图,形状文件可以被生成。形状文件可以提供或者包括地理坐标,该地理坐标创建了被杂草覆盖的面积的一个或多个边界。

12.用于地面图像处理的示例流程图

图16图示出了用于使用机器学习模型处理地面图像以生成田地异常地图的示例流程图。图16中所描述的步骤通常由地面上的系统执行,并且可以利用先进的硬件技术,诸如边缘tpu。地面上的处理系统可以被实现为分布式系统、云上的系统、虚拟系统或者一组独立服务器。

在步骤1601中,处理器接收形状文件,该形状文件包括参考田地中的不同面积的地理坐标。如在图15中所描述的,形状文件可以包括例如被杂草覆盖的区域的地理坐标,或者形状文件可以包括被树木覆盖的区域的地理坐标,等等。

在备选的实施例中,形状文件可以包括所有异常的边界,而不管其类型如何。例如,形状文件可以包括封闭区域的坐标,并且这些区域中的一个区域可以被杂草覆盖,另一个区域可以被裸土覆盖,等等。

在步骤1602中,处理器接收针对田地的地面原始图像。图像可以从由地理坐标定义的面积被收集。如前所述,形状文件可以被发送到地面上的车辆,诸如收割机、联合收割机、拖拉机等。备选地或者附加地,形状文件可以被发送到地面上的控制器和/或相机,这些控制器和/或相机被附接到贯穿田地被布局的物理杆。相机可以被触发或者被指令来从不同区域捕获图像。指令可以提供特定区域的地理坐标,并且可以在形状文件中提供地理坐标。地面原始图像可以例如在拖拉机穿越田地时由拖拉机收集,并且遵循形状文件中所提供的边界。

在步骤1604中,处理器校准、调整和预处理原始图像。这可以包括校准颜色,调整颜色和色调、饱和度,伽玛校正,改变图像的格式,等等。

在步骤1606中,经校准、调整和预处理的图像被拼接以创建地块级别的大地图。地块级别的地图是指田地内的小矩形面积。该小面积可以具有例如2作物行的宽度和20英尺长的长度以覆盖例如0.002英亩。对照而言,田地级别的地图是指覆盖具有例如40至100英亩的典型大农业田地的图像。

在步骤1608中,基于地块级别的地图,处理器生成网格地图。由于网格在地块级别被生成,因此网格可能不会覆盖比针对空中图像和uav图像所生成的网格更小的面积。例如,对于地面成像处理,可以基于五到八个图像来生成地块级别,并且它们被拼接成一个覆盖例如0.002英亩的图像。对照而言,在空中/uav图像处理中,拼接包括将数百个图像合并成覆盖例如公顷的大的正射马赛克图像。

在步骤1610中,地图根据网格被划分成多个小瓦片。

在步骤1612中,使用机器学习模型,网格的小瓦片中的每个小瓦片被分类。分类过程已经在先前的附图中被描述,并且可以包括将瓦片的图像与分类器的图像匹配。可以存在一大组不同的分类器。如果在某个可接受的概率内找到匹配,则网格的瓦片基于匹配的分类器图像被分类。

在步骤1614中,经分类的图像中的每个经分类的图像被后处理以例如校正或者填充缺失的信息,和/或如果概率太低则校正分类。这还可以包括将瓦片图像重新分类或者再次执行分类。

经后处理的经分类的图像可以被用来生成示出经分类的瓦片的地图。类似地,如在图15的步骤1514中的空中/uav图像处理中那样,在图16的步骤1614中,图像可以被用来生成单独的地图,其中每个地图针对单独的异常。例如,可以针对与杂草对应的异常创建一个地图,可以针对与树木对应的异常创建另一个地图,等等。

在图16的步骤1614中所生成的地图与在图15的步骤1514中所生成的地图之间的一个差异是:在步骤1614中所生成的地图具有比在步骤1514中所生成的地图高的准确性和粒度的级别,并且针对更小的面积。在步骤1614中所生成的地图比在图15的步骤1514中基于卫星图像和空中图像所生成的地图更具体、精确和准确。

在步骤1616中,经后处理的经分类的图像或地图被存储在数据库中。这可以包括将图像存储在可以在不同行业之间所共享的全球和/或国际数据存储库中。图像也可以在研究实验室和机构之间被共享。图像也可以在作物种植者、农民以及负责制造种子、作物、肥料和农业机械的行业之间被共享。

13.某些实施例的益处

实施例提供了使用利用普通彩色成像传感器和多光谱成像传感器的高通量图像来标识作物田地中的特定异常并且将作物田地中的特定异常绘制地图的能力,并且通过地面上的车辆上的低成本传感器来适时地将具有产量损失的田地的面积绘制地图。在本文所提出的方法中,低成本传感器与机器学习模型的组合使用提供了可扩大到典型商业田地的对若干异常源的高质量和高精度地图。

实施例假设使用田地的数字图像的大型集合作为训练集来训练卷积神经网络,以标识已知表示作物覆盖、裸土、作物损害和杂草的图像特征。利用对图像含义的手动标记,可以使用图像训练模型,这些图像以不同比例示出了作物、裸土、受损作物和杂草。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1