[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN112889089B - 用于标识卫星影像中的云和云影的机器学习技术 - Google Patents

用于标识卫星影像中的云和云影的机器学习技术 Download PDF

Info

Publication number
CN112889089B
CN112889089B CN201980068622.9A CN201980068622A CN112889089B CN 112889089 B CN112889089 B CN 112889089B CN 201980068622 A CN201980068622 A CN 201980068622A CN 112889089 B CN112889089 B CN 112889089B
Authority
CN
China
Prior art keywords
cloud
images
pixels
locations
identifying
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201980068622.9A
Other languages
English (en)
Other versions
CN112889089A (zh
Inventor
佘颖
P·卡德卡
关伟
杨晓苑
D·德维西吉尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Clemet Co ltd
Original Assignee
Clemet Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Clemet Co ltd filed Critical Clemet Co ltd
Publication of CN112889089A publication Critical patent/CN112889089A/zh
Application granted granted Critical
Publication of CN112889089B publication Critical patent/CN112889089B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/77Retouching; Inpainting; Scratch removal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/067Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/02Agriculture; Fishing; Forestry; Mining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/60Image enhancement or restoration using machine learning, e.g. neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • G06V20/188Vegetation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10032Satellite or aerial image; Remote sensing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30181Earth observation
    • G06T2207/30188Vegetation; Agriculture

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Business, Economics & Management (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • General Engineering & Computer Science (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Economics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Tourism & Hospitality (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Algebra (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Operations Research (AREA)
  • Marine Sciences & Fisheries (AREA)
  • Quality & Reliability (AREA)
  • Educational Administration (AREA)
  • Development Economics (AREA)

Abstract

本文描述了用于标识卫星影像中的云和云影的系统和方法。在实施例中,系统接收使用一个或多个频带产生的农艺田地的多个图像。该系统还接收标识图像中云位置和云影位置的对应数据。该系统将图像用作输入并且将把像素标识为云像素或非云像素的至少数据用作输出来训练机器学习系统以标识至少云位置。当系统接收使用一个或多个频带产生的特定农艺田地的一个或多个特定图像时,系统将一个或多个特定图像用作到机器学习系统的输入,以将一个或多个特定图像中的多个像素标识为特定云位置。

Description

用于标识卫星影像中的云和云影的机器学习技术
版权声明
本专利文档的公开的一部分包含受到版权保护的材料。版权所有人不反对任何人对本专利文档或专利公开进行拓制,正如它出现在专利商标局专利文件或记录中一样,但版权所有人保留所有版权或其他权利。2015-2019The Climate Corporation.
技术领域
本公开的一个技术领域是使用机器学习技术的图像分类。
背景技术
在本部分中描述的方法是可以被采用的方法,但不一定是先前已经被构想出或采用过的方法。因此,除非另有说明,否则不应该假设在本部分中描述的任何方法仅仅由于被包括在本部分中就作为现有技术。
农艺田地的卫星影像在农艺建模方面会极其有用。例如,许多农艺产量模型基于来源于卫星影像的植被指数值来估计农作物的农艺产量。因此,田地的卫星影像是准确的这一点极其重要,因为即使是细微的值的差异都会负面地影响影像对于建模用途或显示的有用性。
在许多情况下,大气中的云部分地或全部地遮挡卫星传感器对地球表面的视野。云还可能会在地面上投下阴影,其中更少的阳光被反射到传感器。云和云的阴影都能负面影响到包含云和云影的图像的有用性。例如,如果其中一些像素由于云的阴影而变暗而其他像素由于阴影的覆盖而变亮,那么基于像素值对田地的平均植被指数值的计算将会不准确。
因此,在许多情况下,系统能够检测在卫星影像中的云和云影是必要的。分类技术已经被开发出来,其能够以相当高的准确度标识云和云影。例如,美国专利9,721,181,其全部内容通过引用并入本文,如同在本文中被完全描述,描述了一种三步过程,用于标识云像素和云影像素并且使用所标识的像素来创建远程感应图像的云掩模和阴影掩模。
通常,由于在云的边界附近或在更薄的云中的像素的不透明性是不同的,所以检测云边界或更薄的云可能很难。因此,图像中应该被移除或遮掩的像素可能会被错过。
因此,需要一种系统,利用关于图像中的周围像素的信息以便将像素标识为云或云影。
发明内容
所附权利要求可以用作本公开的发明内容。
附图说明
在附图中:
图1示出了被配置为执行在本文中描述的功能的示例计算机系统,该计算机系统与该系统可以交互的其他装置一起在田地环境中被示出。
图2示出了当示例移动应用被加载用于执行时在主存储器中的指令集的示例逻辑组织的两个视图。
图3示出了程序化过程,通过该程序化过程,农业智能计算机系统使用由一个或多个数据源提供的农艺数据生成一个或多个预配置的农艺模型。
图4是示出了本发明的实施例可以在其上被实现的计算机系统的框图。
图5描绘了针对数据键入的时间线视图的示例实施例。
图6描绘了针对数据键入的电子表格视图的示例实施例。
图7描绘了用于使用机器学习系统来将图像中的像素标识为云位置的示例方法。
图8描绘了示例卷积编码器-解码器机器学习系统。
图9描绘了使用第一机器学习系统来将图像中的像素标识为云位置并且使用第二机器学习系统来将图像中的像素标识为云影位置的方法。
图10描绘了包括基于卫星角度和云高度的不同假设而生成的云影位置的多个图像。
具体实施方式
在下面的描述中,出于解释的目的,阐述了许多特定细节以便提供对本公开的透彻理解。然而,显而易见的是,在没有这些特定细节的情况下,也可以实践实施例。在其他实例中,以框图的形式示出了众所周知的结构和设备,以便避免不必要地模糊本公开。根据以下提纲,分部分公开了实施例:
1.总体概述
2.示例农业智能计算机系统
2.1.结构概述
2.2.应用程序概述
2.3.对计算机系统的数据摄取
2.4.过程概述—农艺模型训练
2.5.实现示例—硬件概述
3.云和云影检测系统
3.1.所接收的数据
3.2.标识机器学习系统的云
3.3.云和云影分割
4.替换所标识的云像素
5.农艺建模
6.农艺地图显示
7.某些实施例的益处
*
1.总体概述
描述了使用机器学习系统的系统和方法,该机器学习系统利用关于周围像素的分类来标识图像中的云和云影。在实施例中,系统接收农艺田地的多个图像以及将像素标识为图像中的云或云影的数据。该系统将图像用作输入并且将把像素标识为云的数据用作输出来训练机器学习系统(诸如卷积编码器-解码器)。当系统接收到任何农艺田地的图像时,系统使用机器学习系统来将图像中的像素标识为云像素或非云像素,该机器学习系统已经基于周围像素值被训练来对像素进行分类。在实施例中,系统另外还使用几何技术来标识训练数据中的候选云影位置,并且将图像和候选云影位置用作输入并且将把像素标识为云影像素的数据用作输出来训练第二机器学习系统以标识云影像素。
在实施例中,一种计算机实现的方法包括:接收使用一个或多个频带产生的农艺田地的多个图像;接收标识图像中云位置和云影位置的对应数据;将图像用作输入并且将把像素标识为云像素或非云像素的至少数据用作输出来训练机器学习系统以标识至少云位置;接收使用一个或多个频带产生的特定农艺田地的一个或多个特定图像;将一个或多个特定图像用作到机器学习系统的输入,将一个或多个特定图像中的多个像素标识为特定云位置。
在实施例中,一种计算机实现的方法包括:接收使用一个或多个频带产生的农艺田地的多个图像;接收标识图像中云位置和云影位置的对应数据;将图像用作输入并且将把像素标识为云像素或非云像素的数据用作输出来训练第一机器学习系统以标识云位置;使用标识云位置的数据,标识多个候选云影位置;将图像和候选云影位置用作输入并且将把像素标识为云影像素或非云影像素的数据用作输出来训练第二机器学习系统以标识云影位置;接收使用一个或多个频带产生的特定农艺田地的一个或多个特定图像;将一个或多个特定图像用作到第一机器学习系统的输入,将一个或多个特定图像中的多个像素标识为特定云位置;使用特定云位置,标识多个特定候选云影位置;将一个或多个特定图像和多个特定候选云影位置用作到第二机器学习系统的输入,将一个或多个特定图像中的多个像素标识为特定云影位置。
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将外部数据110发送到农业智能计算机系统130。外部数据服务器计算机108可以作为农业智能计算机系统130被相同的法人或实体拥有或操作,或由不同的人或实体拥有或操作,诸如政府机构、非政府组织(NGO)和/或私人数据服务供应商。外部数据的示例包括天气数据、影像数据、土壤数据或与农作物产量相关的统计数据等。外部数据110可以由与田地数据106相同类型的信息组成。在一些实施例中,外部数据110由同一实体拥有的外部数据服务器108提供,该实体拥有和/或操作农业智能计算机系统130。例如,农业智能计算机系统130可以包括专门专注于可能从第三方来源获得的类型数据的数据服务器,诸如天气数据。在一些实施例中,外部数据服务器108实际上可以被并入系统130内。
农业装置111可以具有固定在其上的一个或多个远程传感器112,这些传感器经由农业装置111直接或间接地通信耦合到农业智能计算机系统130,并且被编程或被配置为将传感器数据发送到农业智能计算机系统130。农业装置111的示例包括拖拉机、联合收割机、收割机、种植机、卡车、肥料设备、包括无人驾驶飞行器的飞行器以及任何其他物理机械或硬件的项目,通常为移动机械,并且可以被用在与农业相关联的任务中。在一些实施例中,装置111的单个单元可以包括在装置上的网络中本地耦合的多个传感器112;控制器局域网(CAN)是可以被安装在联合收割机、收割机、喷雾器和中耕机中的这种网络的示例。应用控制器114经由(多个)网络109通信耦合到农业智能计算机系统130,并且被编程或被配置为接收一个或多个脚本,该脚本被用于控制农业车辆的操作参数或从农业智能计算机系统130实现。例如,控制器局域网(CAN)总线接口可以被用于启用从农业智能计算机系统130到农业装置111的通信,诸如可以从加利福尼亚旧金山的Climate Corporation获得的CLIMATE FIELDVIEW DRIVE如何被使用。传感器数据可以由与田地数据106相同类型的信息组成。在一些实施例中,远程传感器112可以不固定在农业装置111上,而是可以被远程放置在田地中,并且可以与网络109通信。
装置111可以包括用驾驶室应用编程的驾驶室计算机115,该驾驶室计算机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。在本文中,“层”是指电子数字接口电路、微控制器、固件(诸如驱动器)和/或计算机程序或其他软件元件的任何组合。
通信层132可以被编程或被配置为执行输入/输出接口功能,包括分别向田地管理器计算设备104、外部数据服务器计算机108和远程传感器112发送对田地数据、外部数据和传感器数据的请求。通信层132可以被编程或被配置为将所接收的数据发送到模型和田地数据存储库160以将其存储为田地数据106。
表示层134可以被编程或被配置为生成要在田地管理器计算设备104、驾驶室计算机115或通过网络109被耦合到系统130的其他计算机上显示的图形用户界面(GUI)。GUI可以包括用于输入要发送到农业智能计算机系统130的数据、生成对模型和/或推荐的请求和/或显示推荐、通知、模型和其他田地数据的控件。
数据管理层140可以被编程或被配置为管理涉及存储库160和系统的其他功能元件的读取操作和写入操作,包括在系统的功能元件与存储库之间传送的查询和结果集。数据管理层140的示例包括JDBC、SQL服务器接口代码和/或HADOOP接口代码等。储存库160可以包括数据库。如本文所使用的,术语“数据库”可以指数据主体、关系数据库管理系统(RDBMS)或两者。如本文所使用的,数据库可以包括数据的任何集合,包括分层数据库、关系数据库、平面文件数据库、对象关系数据库、面向对象的数据库、分布式数据库以及被存储在计算机系统中的记录或数据的任何其他结构化集合。RDBMS的示例包括但不限于MYSQL、/>SQL SERVER、/>和POSTGRESQL数据库。然而,启用本文描述的系统和方法的任何数据库都可以被使用。
当田地数据106没有经由与农业智能计算机系统交互的一个或多个农业机器或农业机器设备被直接提供给农业智能计算机系统时,可以经由(农业智能计算机系统所服务的)用户设备上的一个或多个用户界面提示用户输入这种信息。在示例实施例中,用户可以通过访问(农业智能计算机系统所服务的)用户设备上的地图并选择已经在地图上以图形方式被示出的特定CLU来指定标识数据。在备选实施例中,用户102可以通过访问(农业智能计算机系统130所服务的)用户设备上的地图并在该地图上绘制田地的边界来指定标识数据。这种CLU选择或地图绘制表示地理标识符。在备选实施例中,用户可以通过经由用户设备访问来自美国农业部农场服务局或其他来源的田地标识数据(被提供为形状文件或以类似格式被提供)来指定标识数据,并将这种田地标识数据提供给农业智能计算机系统。
在示例实施例中,农业智能计算机系统130被编程为生成并引起包括用于数据输入的数据管理器的图形用户界面的显示。在一个或多个田地已经使用上文描述的方法被标识之后,数据管理器可以提供一个或多个图形用户界面小部件,该图形用户界面小部件在被选择时可以标识田地、土壤、农作物、耕种或营养物实践的变化。数据管理器可以包括时间线视图、电子表格视图和/或一个或多个可编辑程序。
图5描绘了针对数据键入的时间线视图的示例实施例。使用图5中描绘的显示器,用户计算机可以输入针对事件添加的特定田地和特定日期的选择。在时间线顶部描绘的事件可以包括氮、种植、实践和土壤。为了添加氮施用事件,用户计算机可以提供输入以选择氮标签。然后,用户计算机可以针对特定田地选择时间线上的位置,以便指示氮在所选田地上的施用。响应于接收到针对特定田地在时间线上的位置的选择,数据管理器可以显示数据键入覆盖图,从而允许用户计算机输入与氮施用、种植过程、土壤施用、耕种过程、灌溉实践有关的数据或与特定田地相关的其他信息。例如,如果用户计算机选择时间线的一部分并指示氮的施用,则数据键入覆盖图可以包括用于输入氮施用量、施用日期、使用的肥料类型以及任何其他与氮的施用相关的信息的田地。
在实施例中,数据管理器提供用于创建一个或多个程序的界面。在本文中,“程序”是指与氮施用、种植过程、土壤施用、耕种过程、灌溉实践或可能与一个或多个田地相关的其他信息,并且该信息可以被存储在数字数据存储中以作为集合在其他操作中被重复使用。在程序已经被创建之后,该程序在概念上可以被应用于一个或多个田地,并且对该程序的引用可以被与标识田地的数据相关联地存储在数据存储中。因此,代替手动键入与针对多个不同田地的相同氮施用相关的相同数据,用户计算机可以创建指示氮的特定施用的程序并且然后将该程序应用于多个不同田地。例如,在图5的时间线视图中,顶部两个时间线具有所选择的“春天施用”程序,该程序包括在4月初150lbs N/ac的施用。数据管理器可以提供用于编辑程序的界面。在实施例中,当特定程序被编辑时,已经选择了该特定程序的每个田地都被编辑。例如,在图5中,如果“春天施用”程序被编辑以将氮的施用减少到130lbsN/ac,则顶部两个田地可以基于所编辑的程序以减少的氮的施用来更新。
在实施例中,响应于接收到对具有所选程序的田地的编辑,数据管理器移除该田地与所选程序的对应关系。例如,如果氮的施用被添加到图5的顶部田地中,则该界面可以更新以指示“春天施用”程序不再被应用于顶部田地。尽管4月初的氮施用可能会保留,但对“春天施用”程序的更新不会更改4月的氮施用。
图6描绘了针对数据键入的电子表格视图的示例实施例。使用图6中描绘的显示器,用户可以创建和编辑针对一个或多个田地的信息。数据管理器可以包括如图6中所描绘的用于输入关于氮、种植、实践和土壤的信息的电子表格。为了编辑特定条目,用户计算机可以选择电子表格中的特定条目并更新该值。例如,图6描绘了针对第二田地的目标产量值的进行中的更新。此外,用户计算机可以选择一个或多个田地以便应用一个或多个程序。响应于接收针对特定田地的程序的选择,数据管理器可以基于所选择的程序自动完成针对特定田地的条目。与时间线视图一样,数据管理器可以响应于接收对程序的更新来更新与特定程序相关联的每个田地的条目。此外,数据管理器可以响应于接收对田地的条目中的一个条目的编辑而移除所选择的程序与田地的对应关系。
在实施例中,模型和田地数据被存储在模型和田地数据存储库160中。模型数据包括针对一个或多个田地创建的数据模型。例如,农作物模型可以包括一个或多个田地上的农作物发育的数字构建模型。在本文中,“模型”是指彼此相关联的电子数字存储的一组可执行指令和数据值,这些可执行指令和数据值能够基于指定的输入值接收并响应于程序或其他数字呼叫、调用或解析请求,以产生一个或多个存储或计算的输出值,这些输出值可以用作计算机实现的推荐、输出数据显示或机器控制等的基础。本领域的技术人员发现使用数学方程式来表达模型是方便的,但是这种表达形式并不将本文所公开的模型局限于抽象概念;相反,本文中的每个模型都以使用计算机来实现模型的存储的可执行指令和数据的形式在计算机中具有实际应用。模型可以包括一个或多个田地上的过去事件的模型、一个或多个田地的当前状态的模型和/或一个或多个田地的预测事件的模型。模型和田地数据可以被存储在存储器中的数据结构中、数据库表中的行中、平面文件或电子表格中或其他形式的存储数字数据中。
在实施例中,云检测机器学习系统136、农艺建模指令137和农艺地图生成指令138中的每一个包括农业智能计算机系统130中的主存储器(诸如RAM)的一组一个或多个页面,可执行指令已经被加载到农业智能计算机系统130中,并且可执行指令在被执行时使农业智能计算机系统执行本文参考这些模块描述的功能或操作。例如,农艺建模指令137可以包括RAM中的一组页面,这些页面包含指令,这些指令在被执行时使得执行本文描述的农艺建模功能。指令可以是在CPU的指令集中的机器可执行代码中并且可能已经基于用JAVA、C、C++、OBJECTIVE-C或任何其他人类可读编程语言或环境,单独地或与JAVASCRIPT、其他脚本语言和其他编程源文本中的脚本组合写成的源代码被编译。术语“页面”旨在广泛地指主存储器内的任何区域,并且在系统中使用的特定术语可以取决于存储器架构或处理器架构而变化。在另一实施例中,云检测机器学习系统136、农艺建模指令137和农艺地图生成指令138中的每一个还可以表示被数字地存储在大容量存储设备(诸如非易失性RAM或磁盘存储)、农业智能计算机系统130或单独的存储库系统中的一个或多个文件或源代码项目,它们在被编译或解释时使得生成可执行指令,该可执行指令在被执行时使得农业智能计算机系统执行本文参考那些模块描述的功能或操作。换言之,附图可以表示程序员或软件开发者组织和布置源代码以便后来编译为可执行文件或解释为字节码或等同物,以便由农业智能计算机系统130执行的方式。
云检测机器学习系统136包括计算机可读指令,该计算机可读指令在被一个或多个处理器执行时,使得农业智能计算机系统130从计算上检测卫星影像中的云和/或云影像素。农艺建模指令137包括计算机可读指令,该计算机可读指令在被一个或多个处理器执行时,使得农业智能计算机系统130至少部分地基于来源于卫星影像的值来生成农艺田地的农艺模型。农艺地图生成指令138包括计算机可读指令,该计算机可读指令在被一个或多个处理器执行时,使得农业智能计算机系统130至少部分地基于卫星影像以及将卫星影像中的像素标识为云或云影像素的数据来生成农艺地图以进行显示。
硬件/虚拟化层150包括一个或多个中央处理单元(CPU)、存储器控制器以及计算机系统的其他设备、部件或元件,诸如易失性或非易失性存储器、非易失性存储(诸如磁盘)以及I/O设备或接口,例如结合图4所示和描述的。层150还可以包括程序化指令,这些程序化指令被配置为支持虚拟化、容器化或其他技术。
为了说明清楚的示例的目的,图1示出了某些功能元件的有限数目的实例。然而,在其他实施例中,可以存在任何数目的这种元件。例如,实施例可以使用数千或数百万个与不同用户相关联的不同移动计算设备104。此外,系统130和/或外部数据服务器计算机108可以使用两个或更多处理器、核心、集群或物理机器或虚拟机器的实例来实现,它们被配置在离散的位置或与其他元件一起位于数据中心,共用计算设施或云计算设施中。
2.2.应用程序概述
在实施例中,使用一个或多个计算机程序或其他软件元件的本文描述的功能的实现会使得通用计算机被配置为特定的机器或被配置为特别适用于执行本文描述的功能的计算机,一个或多个计算机程序或其他软件元件使用一个或多个通用计算机来加载并执行。此外,本文进一步描述的每个流程图可以单独地或与本文中的过程和功能的描述组合来用作算法、计划或方向,其可以被用于对计算机或逻辑进行编程以实现所描述的功能。换言之,本文的所有文本以及所有附图旨在结合具有适用于这种类型的发明和公开的技能水平的人的技能和知识,一起被用于提供算法、计划或方向的公开,该算法、计划或方向足以允许技术人员对计算机进行编程以执行本文描述的功能。
在实施例中,用户102使用田地管理器计算设备104与农业智能计算机系统130交互,该田地管理器计算设备104配置有操作系统以及一个或多个应用程序或app;田地管理器计算设备104还可以在程序控制或逻辑控制下独立地且自动地与农业智能计算机系统交互操作,并且直接用户交互并非始终被要求。田地管理器计算设备104广泛地表示智能电话、PDA、平板计算设备、膝上型计算机、台式计算机、工作站或能够发送和接收信息并执行本文描述的功能的任何其他计算设备中的一个或多个。田地管理器计算设备104可以使用被存储在田地管理器计算设备104上的移动应用经由网络进行通信,并且在一些实施例中,该设备可以使用电缆113或连接器被耦合到传感器112和/或控制器114。特定用户102每次可以结合系统130拥有、操作或持有和使用一个以上的田地管理器计算设备104。
移动应用可以经由到一个或多个移动计算设备的网络提供客户端侧的功能。在示例实施例中,田地管理器计算设备104可以经由网页浏览器或本地客户端应用或app访问移动应用。田地管理器计算设备104可以使用基于网页的协议或格式(诸如HTTP、XML和/或JSON)或app专用的协议向一个或多个前端服务器发送数据以及从一个或多个前端服务器接收数据。在示例实施例中,数据可以采用到移动计算设备中的请求和用户信息输入(诸如田地数据)的形式。在一些实施例中,移动应用与田地管理器计算设备104上的位置追踪硬件和软件交互,该位置追踪硬件和软件使用标准追踪技术(诸如无线电信号的多点定位、全球定位系统(GPS)、WiFi定位系统或其他移动定位方法)来确定田地管理器计算设备104的位置。在许多情况下,位置数据或与设备104、用户102和/或(多个)用户账户相关联的其他数据可以通过对设备的操作系统的查询或通过请求设备上的app从操作系统获得数据来获得。
在实施例中,田地管理器计算设备104向农业智能计算机系统130发送田地数据106,包括或包含,但不限于,表示以下一种或多种的数据值:一个或多个田地的地理位置、针对一个或多个田地的耕种信息、一个或多个田地中种植的农作物以及从一个或多个田地提取的土壤数据。田地管理器计算设备104可以响应于来自针对一个或多个田地指定数据值的用户102的用户输入而发送田地数据106。此外,当数据值中的一个或多个数据值变得对田地管理器计算设备104可用时,田地管理器计算设备104可以自动发送田地数据。例如,田地管理器计算设备104可以被通信地耦合到远程传感器112和/或应用控制器114(包括灌溉传感器和/或灌溉控制器)。响应于接收指示应用控制器114将水释放到一个或多个田地上的数据,田地管理器计算设备104可以向农业智能计算机系统130发送田地数据106,指示水被释放到一个或多个田地上。本公开中标识的田地数据106可以使用电子数字数据来输入和传送,该电子数字数据通过HTTP或另一合适的通信或消息协议使用参数化的URL而在计算设备之间被传送。
移动应用的商用示例是CLIMATE FIELDVIEW,可从加利福利亚旧金山的ClimateCorporation获得。CLIMATE FIELDVIEW应用或其他应用可以被修改、扩展或调整以包括在本公开的提交日期之前尚未被公开的特征、功能和编程。在一个实施例中,移动应用包括集成软件平台,该集成软件平台允许种植者针对其操作做出基于事实的决定,因为它将与种植者的田地有关的历史数据与种植者希望比较的任何其他数据相结合。结合和比较可以被实时执行并且是基于科学模型的,该科学模型提供潜在的场景以允许种植者做出更好、更明智的决定。
图2示出了当示例移动应用被加载用于执行时在主存储器中的指令集的示例逻辑组织的两个视图。在图2中,每个命名的元件表示RAM或其他主存储器的一个或多个页面的区域、或磁盘存储或其他非易失性存储的一个或多个块、以及在那些区域内的程序化指令。在一个实施例中,在视图(a)中,移动计算机应用200包括账户-田地-数据摄取-共享指令202、概述和警报指令204、数字地图册指令206、种子和种植指令208、氮指令210、天气指令212、田地健康指令214和性能指令216。
在一个实施例中,移动计算机应用200包括账户、田地、数据摄取、共享指令202,该指令被编程以经由手动上传或API从第三方系统接收、转变和摄取田地数据。数据类型可以包括田地边界、产量地图、种植地图、土壤测试结果、应用地图和/或管理区等。数据格式可以包括形状文件、第三方的本机数据格式和/或农场管理信息系统(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区、土壤测试特性或海拔等。编程的报告和分析可以包括产量可变性分析、处理效果估计、产量的基准测试以及基于从许多种植者收集的匿名数据或针对种子和种植的数据相较于其他种植者的其他指标等。
具有通过这种方式配置的指令的应用可以针对不同计算设备平台被实现,同时保留相同的通用用户界面外观。例如,移动应用可以被编程为在使用客户端计算机处的浏览器访问的平板电脑、智能手机或服务器计算机上执行。此外,针对平板计算机或智能手机配置的移动应用可以提供完整app体验或适合驾驶室计算机115的显示和处理能力的驾驶室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在田地中的位置来摄取、管理并向系统300提供基于位置的侦察观察结果的传输。
2.3.对计算机系统的数据摄取
在实施例中,外部数据服务器计算机108存储外部数据110,包括表示针对一个或多个田地的土壤组成的土壤数据和表示在一个或多个田地上的温度和降水的天气数据。天气数据可以包括过去的和当前的天气数据以及对未来天气数据的预报。在实施例中,外部数据服务器计算机108包括由不同实体托管的多个服务器。例如,第一服务器可以包含土壤组成数据而第二服务器可以包含天气数据。此外,土壤组成数据可以被存储在多个服务器中。例如,一个服务器可以存储表示土壤中沙、淤泥和粘土的百分比的数据而第二服务器可以存储表示土壤中有机物(OM)的百分比的数据。
在实施例中,远程传感器112包括被编程或被配置为产生一个或多个观察结果的一个或多个传感器。远程传感器112可以是无人空中传感器,诸如卫星、车辆传感器、种植机具传感器、耕种传感器、肥料或杀虫剂施用传感器、收割机传感器以及能够从一个或多个田地接收数据的任何其他器具。在实施例中,应用控制器114被编程或被配置为从农业智能计算机系统130接收指令。应用控制器114还可以被编程或被配置为控制农业车辆或器具的操作参数。例如,应用控制器可以被编程或被配置为控制车辆的操作参数,诸如拖拉机、种植机具、耕种机具、肥料或杀虫剂机具、收割机机具或诸如水阀之类的其他农场器具。其他实施例可以使用传感器和控制器的任何组合,以下仅是选择的示例。
系统130可以在用户102控制下大规模地从已经对共享数据库系统贡献过数据的大量种植者获得或摄取数据。这种获得数据的形式可以被称为“手动数据摄取”,因为一个或多个受用户控制的计算机操作被请求或触发以获得供系统130使用的数据。作为示例,CLIMATE FIELDVIEW应用,可从加利福利亚旧金山的Climate Corporation购得,可以被操作以将数据导出到系统130以便存储在存储库160中。
例如,种子监测系统既可以控制种植者装置部件也可以获得种植数据,包括经由信号线束来自种子传感器的信号,该信号线束包括用于登记和/或诊断的CAN主干和点对点连接。种子监测系统可以被编程或被配置为经由驾驶室计算机115或系统130内的其他设备向用户显示种子间距、种群和其他信息。示例在美国专利号8,738,243和美国专利公开20150094916中被公开,并且本公开假设知道那些其他专利公开。
同样,产量监测系统可以包含用于收割机装置的产量传感器,该产量传感器将产量测量数据发送给驾驶室计算机115或系统130内的其他设备。产量监测系统可以利用一个或多个远程传感器112来获得联合收割机或其他收割机中的谷物水分测量结果并且经由驾驶室计算机115或系统130内的其他设备将这些测量结果发送给用户。
在实施例中,可以被与本文其他地方描述的类型的任何移动车辆或装置一起使用的传感器112的示例包括运动传感器和位置传感器。运动传感器可以包括任何速度传感器,诸如雷达或轮速传感器、加速度计或陀螺仪。位置传感器可以包括GPS将接收器或收发器、或被编程为基于附近的WiFi热点来确定位置的基于WiFi的位置位置或映射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和美国专利号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还包括主存储器406,诸如随机存取存储器(RAM)或其他动态存储设备,该主存储器406被耦合到总线402,用于存储将由处理器404执行的信息和指令。主存储器406还可以被用于在要由处理器404执行的指令的执行期间存储临时变量或其他中间信息。当这种指令被存储在处理器404可访问的非暂时性存储介质中时,将计算机系统400渲染成专用于执行在指令中指定的操作的专用机器。
计算机系统400进一步包括被耦合到总线402的只读存储器(ROM)408或其他静态存储设备,用于存储静态信息和针对处理器404的指令。存储设备410,诸如磁盘、光盘或固态驱动器,被提供并被耦合到总线402以存储信息和指令。
计算机系统400可以经由总线402被耦合到显示器412,诸如阴极射线管(CRT),用于向计算机用户显示信息。输入设备414,包括字母数字键和其他键,被耦合到总线402,用于将信息和命令选择传送给处理器404。另一种类型的用户输入设备是光标控件416,诸如鼠标、轨迹球或光标方向键,用于将方向信息和命令选择传送给处理器404并控制显示器412上的光标移动。该输入设备通常在两个轴(第一轴(例如,x)和第二轴(例如,y))上具有两个自由度,这允许设备指定平面中的位置。
计算机系统400可以使用定制的硬连线逻辑、一个或多个ASIC或FPGA、固件和/或编程逻辑来实现本文描述的技术,这些逻辑与计算机系统组合使计算机系统400成为用途机或将计算机系统400编程为专用机器。根据一个实施例,本文的技术由计算机系统400响应于处理器404来执行,该处理器404执行在主存储器406中包含的一个或多个指令的一个或多个序列。这种指令可以从另一存储介质(诸如存储设备410)被读取到主存储器406中。主存储器406中包含的指令的序列的执行使处理器404执行本文描述的过程步骤。在备选实施例中,硬连线电路系统可以被用来代替软件指令或可以与软件指令组合使用。
如本文所使用的术语“存储介质”是指存储使机器以特定方式操作的数据和/或指令的任何非暂时性介质。这种存储介质可以包括非易失性介质和/或易失性介质。非易失性介质包括:例如,光盘、磁盘或固态驱动器,诸如存储设备410。易失性介质包括动态存储器,诸如主存储器406。存储介质的常见形式包括:例如,软盘、柔性盘、硬盘、固态驱动器、磁带或任何其他磁性数据存储介质、CD-ROM、任何其他光学数据存储介质、带孔图案的任何物理介质、RAM、PROM和EPROM、FLASH-EPROM、NVRAM、任何其他存储器芯片或盒式磁带。
存储介质不同于传输介质但可以与传输介质结合使用。传输介质参与传输存储介质之间的信息。例如,传输介质包括同轴电缆、铜导线和光纤,包括构成总线402的导线。传输介质还可以采用声波或光波的形式,诸如在无线电波和红外数据通信期间生成的声波或光波。
在将一个或多个指令的一个或多个序列携带到处理器404用于执行时,各种形式的介质都可能被涉及。例如,指令最初可以被携带在远程计算机的磁盘或固态驱动器上。远程计算机可以将指令加载到其动态存储器中,并使用调制解调器通过电话线发送指令。计算机系统400本地的调制解调器可以在电话线上接收数据,并使用红外发送器将数据转换为红外信号。红外检测器可以接收红外信号中携带的数据,并且适当的电路系统可以将数据放置在总线402上。总线402将数据携带到主存储器406,处理器404从该主存储器检索并执行指令。由主存储器406接收的指令可以可选地在处理器404的执行之前或之后被存储在存储设备410上。
计算机系统400还包括被耦合到总线402的通信接口418。通信接口418提供双向数据通信被耦合到网络链路420,该网络链路420被连接到本地网络422。例如,通信接口418可以是综合业务数字网络(ISDN)卡、电缆调制解调器、卫星调制解调器或提供与对应类型的电话线的数据通信连接的调制解调器。作为另一示例,通信接口418可以是局域网(LAN)卡,以提供到兼容LAN的数据通信连接。无线链路也可以被实现。在任何这种实现中,通信接口418发送和接收电信号、电磁信号或光学信号,这些信号携带表示各种类型的信息的数字数据流。
网络链路420通常通过一个或多个网络向其他数据设备提供数据通信。例如,网络链路420可以通过本地网络422提供到主机计算机424或由互联网服务供应商(ISP)426操作的数据设备的连接。ISP 426进而通过全球分组数据通信网络(现在通常称为“互联网”428)提供数据通信服务。本地网络422和互联网428都使用携带数字数据流的电信号、电磁信号或光学信号。通过各种网络的信号以及在网络链路420上并且通过通信接口418的信号(这些信号携带去往和来自计算机系统400的数字数据)是传输介质的示例形式。
计算机系统400可以通过(多个)网络、网络链路420和通信接口418发送消息并接收包括程序代码的数据。在互联网示例中,服务器430可能通过互联网428、ISP 426、本地网络422和通信接口418发送针对应用程序请求的代码。
所接收的代码可以在被接收时由处理器404执行,和/或可以被存储在存储设备410或其他非易失性存储中,以供以后执行。
3.云和云影检测系统
图7描绘了用于使用机器学习系统来将图像中的像素标识为云位置的示例方法。
3.1.所接收的数据
在步骤702中,使用一个或多个频带产生的农艺田地的图像被接收。农艺田地的图像可以由被配置为捕获多个频带中的图像的卫星产生。例如,由欧洲太空总署(EUROPEANSPACE AGENCY)操作的SENTINEL-2卫星在包括红色频带、蓝色频带、绿色频带、近红外频带和水蒸气频带的多个频带中产生图像。
农业智能计算机系统可以直接或间接地从卫星接收多个图像集合,其中每个图像集合包括在与相同位置对应的每个频带中的图像。该系统可以接收任何数目的上述频带和/或不同频带,以用于检测图像中的云和云影。数据可以被接收为针对每个频带的图像的一系列像素值,这些像素值对应于像素位置。在实施例中,图像集合中的每个图像具有与对应于重叠位置的像素相同的大小。例如,农艺田地的红色频带图像的第N个像素可以对应于与红色频带图像同一集合中的农艺田地的蓝色频带图像的第N个像素。
在步骤704中,标识图像中的云和云影位置的对应数据被接收。针对图像集合中的图像的每个像素,数据可以指示该像素是非云像素、云像素还是云影像素。例如,图像集合可以包括三个频带图像,每个频带图像包括300×300个像素,每个图像的第N个像素对应于农艺田地上的同一位置。因此,针对300x300像素图像的每个像素,对应的数据可以指示该像素是非云像素、云像素还是云影像素。因此,如果系统在三个频带中接收到农艺田地的300x300像素图像,则系统可以存储:三个300x300矩阵,每个矩阵对应于一个频带;以及第四个300x300矩阵,其中该矩阵的每个元素是三个值(诸如0、1和2)中的一个,这三个值对应于非云像素、云像素或云影像素。
尽管描述了所接收的数据在单个映射中指示云和云影两者的实施例,但是在机器学习系统仅被用于标识云位置的实施例中,系统可以存储仅指示云像素和非云像素的位置的矩阵,其中非云像素包括云影像素。对于第二机器学习系统被用于标识云影位置的实施例,系统可以存储仅指示云影像素和非云影像素的位置的矩阵,从而允许系统使用本文进一步描述的方法来分别标识云和云影。
3.2.标识机器学习系统的云
在步骤706中,系统训练机器学习系统将图像用作输入并且将标识云像素和非云像素的至少数据用作输出来标识至少云位置。机器学习系统可以包括能够接受一个或多个矩阵的值作为输入并生成一个或多个矩阵的值作为输出的任何机器学习系统,诸如卷积神经网络。
在实施例中,机器学习系统是用于像素分类的卷积编码器-解码器。例如,机器学习系统可以是GITHUB上可用的SegNet卷积编码器-解码器架构。为了捕获相邻像素之间的关系,机器学习系统可以包括夹杂着池化步骤的多个卷积编码步骤和夹杂着上采样步骤的多个卷积解码步骤。在一个实施例中,SegNet卷积编码器-解码器使用随机梯度下降优化器来配置,学习率为0.001,衰减为1e-6,动量为0.9,并且Nesterov被设置为“真”。
如本文所使用的,池化步骤包括减小表示的空间大小的步骤。例如,最大池化步骤可以包括通过在矩阵的每个2x2部分中选择最大值来减小矩阵大小的步骤。如本文所使用的,上采样步骤包括诸如通过将值插入矩阵中或在矩阵中复制值来增加表示的空间大小的步骤。如本文所使用的,softmax层包括softmax函数被应用于数据集的层,该softmax函数采用实数输入并将该输入归一化为概率分布。
图8描绘了示例卷积编码器-解码器机器学习系统。机器学习系统800包括编码器802和解码器808。编码器802包括卷积块804,然后是池化步骤806。在示例机器学习系统800中,编码器802的卷积块804包括数目增加的3x3滤波器,其中第一卷积块包括64个3x3滤波器,而最后的卷积块包括512个3x3滤波器。卷积块被用于生成特征图集合。池化步骤806被执行以在小空间移位上实现平移不变性。
解码器808包括卷积块810和上采样步骤812。解码器执行上采样步骤812,以使用来自对应池化步骤的存储的最大池索引来对特征输入图进行上采样,最终的池化步骤对应于初始上采样步骤。卷积块810也是卷积块804的镜像,其中第一块包括512个3x3滤波器,并且最后一块包括64个3x3滤波器,从而确保输出具有与输入相同的大小和分辨率。在实施例中,包括两级(云和非云)的1x1滤波器的卷积块在解码器之后被应用。softmax层可以作为最终分类层被添加,以选择最高概率输出。
在实施例中,系统使用机器学习系统,该机器学习系统能够在变化大小的图像上被训练并且能够产生具有不同大小的图像的输出。系统可以利用机器学习系统,该机器学习系统已经被修改以接受变化大小的输入。例如,SegNet卷积编码器-解码器传统上适合输入大小为360x480的图像,并且内置的重塑功能被用于在训练期间将SegNet卷积编码器-解码器的输出向量重塑为图像映射向量。为了使SegNet卷积编码器-解码器可以处理变化大小的图像,输入大小可以被指定为(无,无)。定制的机器学习层然后可以基于输出张量的符号形状来重塑向量的构建,从而允许模型在训练期间接受变化大小的图像,只要每个输入图像的大小与其对应的输出图像的大小匹配即可。
尽管以上方法允许机器学习系统利用变化大小的图像,但是由于像素的奇数数目,一些图像大小可能在池化步骤期间产生问题。例如,图8包括三个最大池化步骤,其有效地将图像的大小减小了八分之一。因此,系统可以被配置为确保输入和对应的输出针对宽度和高度都包括八个像素的倍数。例如,如果图像具有365x484个像素,则系统可以向输入图像和输出矩阵添加3行像素和4列像素(每个像素值均为0),从而确保机器学习系统的训练不会不适当地舍入像素值。此外,到机器学习系统的输入可以被类似地修改,以产生相同大小的输出图像。在输出被创建之后,机器学习系统可以移除任何添加的行或列。附加地或备选地,系统可以截断输入和对应的输出,以确保输入和对应的输出针对宽度和高度都包括八个像素的倍数,诸如通过移除用于训练的列和/或行。
在实施例中,机器学习系统将多个堆叠矩阵用作输入并且将标识云的位置的单个矩阵作为输出来训练。例如,如果机器学习系统在三个频带上被训练,则每个输入/输出配对将包括三个堆叠矩阵作为输入以及单个云标识矩阵作为输出。用于输入/输出配对的三个输入矩阵中的每个矩阵可以对应于不同的频带,并且包括针对该频带的像素值。输出单个云标识矩阵的示例是0s和1s的矩阵,其中0指示像素不对应于云位置,而1指示像素对应于云位置。
在实施例中,单个机器学习系统被训练以标识图像中的云和云影。机器学习系统可以被配置为分别标识云和云影。例如,代替仅包括0s和1s的输出矩阵,输出矩阵可以包括0s、1s和2s,其中0指示像素不对应于云位置,1指示像素对应于云位置,而2指示像素对应于云影位置。尽管出于移除和/或替换的目的同时标识了云和云影像素,但是系统能够通过训练具有三个输出而不是两个输出的机器学习系统来更有效地区分云/云影以及既不是云也不是云影的像素。
再次参考图7,在步骤708中,使用一个或多个频带产生的特定农艺田地的一个或多个特定图像被接收。农业智能计算机系统可以直接或间接地从卫星接收图像集合,其中图像集合包括在与相同位置对应的每个频带中的图像。在实施例中,所接收的图像集合包括用于训练机器学习系统的每个频带中的图像。例如,如果机器学习系统使用红色、蓝色和绿色频带来训练,则所接收的与相同位置相对应的图像集合可以包括在红色、蓝色和绿色频带中的每个频带中的至少一个图像。
在步骤710中,系统使用机器学习系统和一个或多个特定图像来将一个或多个特定图像中的多个像素标识为特定云位置。例如,农业智能计算机系统可以使用经过训练的机器学习系统为从一个或多个图像生成的一个或多个输入矩阵计算输出矩阵。针对每个像素,输出矩阵可以指示该像素是对应于云位置还是非云位置。在机器学习系统被配置为标识除了云之外的云影的实施例中,输出还指示像素是否是云影。在一些实施例中,输出指示像素是云、云影或两者都不是的可能性。附加地或备选地,softmax层可以被用于基于最高概率来选择分类。
3.3.云和影分割
在实施例中,服务器计算机分割云的标识和云影的标识。例如,系统可以利用第一机器学习系统来标识云的位置,并且使用所标识的云的位置来生成供第二机器学习系统用来计算云影的位置的附加输入。图9描绘了使用第一机器学习系统将图像中的像素标识为云位置并且使用第二机器学习系统将图像中的像素标识为云影位置的方法。
在步骤902中,使用一个或多个频带产生的农艺田地的图像被接收。农业智能计算机系统可以直接或间接地从卫星接收多组图像,其中每组图像包括在与相同位置对应的每个频带中的图像。在步骤904中,标识图像中的云和云影位置的对应数据被接收。针对图像集合中的图像的每个像素,数据可以指示该像素是非云/云影像素、云像素还是云影像素。
在实施例中,农业智能计算机系统另外接收与每个图像集合的捕获相关的元数据。元数据可以指示以下一项或多项:图像捕获时间、图像捕获时卫星的位置、图像捕获时卫星上的太阳角度、图像捕获时卫星的高度或卫星与图像所对应的位置之间的距离。
在步骤906中,系统将图像用作输入并且将把像素标识为云像素或非云像素的数据用作输出来训练第一机器学习系统以标识云位置。第一机器学习系统可以包括能够接受一个或多个矩阵的值作为输入并生成一个或多个矩阵的值作为输出的任何机器学习系统,诸如卷积神经网络。系统可以将表示一个或多个图像的矩阵用作输入并且将标识像素是云还是非云的数据用作输出来训练第一机器学习系统。因此,如果农业智能计算机系统接收到将每个像素标识为云、云影、或既不是云也不是云影的数据,则农业智能计算机系统可以将云影像素与其他非云像素分组在一起。
在步骤908中,使用标识云位置的数据,系统标识多个候选云影位置。例如,可以从具有变化的云高度和云大小的任何数目的角度获取有云悬停在其上的田地的二维图像。系统可以基于云的位置来标识针对图像中的云影的多个可能的位置。例如,系统可以对多个角度和高度进行迭代以确定云影的不同的可能的大小和位置。
在实施例中,系统在确定云影的位置时利用所接收的元数据来减少变量的数目。例如,元数据可以标识图像被捕获时的田地的位置、卫星的位置和角度以及太阳的角度。系统可以利用元数据相对于田地来固定卫星和太阳位置。系统然后可以使用图像中所标识的云位置来确定图像中捕获的云的不同可能位置。使用不同的云位置,系统可以标识多个云影位置。例如,云的阴影位置可以根据太阳位置以及云的位置和大小来计算。
在实施例中,针对所标识的云的多个所标识的位置中的每个位置,系统产生云影图。云影图包括指示像素是否是云影的多个像素值。在实施例中,云影图中的像素还指示该像素是否是云。
图10描绘了包括基于卫星角度和云高度的不同假设而生成的云影位置的多个图像。图10包括最大高度假设1000、最小高度假设1010和中间高度假设1020。
最大高度假设1000包括基于图像中的二维标识的云位置在预定最大高度处的三维云位置和大小的假设。例如,预定最大高度可以是10,000米。系统可以基于卫星的位置、图像中所标识的云的大小以及预定的最大高度来确定云1002的可能的大小和位置。基于所确定的云1002的可能大小和位置以及太阳的位置和角度,系统可以确定云影1004的可能位置。系统然后可以生成云影图1006,该云影图具有标识云影1004的位置的像素1008。例如,系统可以生成值为0或1的像素图,其中值为1的每个位置是系统已确定可能包含云影的位置,而值为0的每个位置对应于系统已确定不太可能包含云影的位置。
最小高度假设1010包括基于图像中的二维标识的云位置在预定最小高度处的三维云位置和大小的假设。例如,预定最小高度可以是2,000米。系统可以基于卫星的位置、图像中所标识的云的大小以及预定的最小高度来确定云1012的可能的大小和位置。基于所确定的云1012的可能大小和位置以及太阳的位置和角度,系统可以确定云影1014的可能位置。系统然后可以生成云影图1016,该云影图具有标识云影1014的位置的像素1018。
中间高度假设1020包括基于图像中的二维云位置在最大高度和最小高度之间的三维云位置和大小的多个中间假设。例如,系统可以为最小预定高度和最大预定高度之间的每2,000米高度生成新的中间假设。针对每个中间假设,系统可以基于卫星的位置、图像中所标识的云的大小以及中间假设中的云高度来确定云1022的可能位置。基于云1022的可能的大小和位置以及太阳的位置和角度,系统可以针对中间假设确定云影1024的可能的位置。系统然后可以生成云影图1026,该云影图具有标识云影1024的位置的像素1028。
尽管图10描绘了对一个变量(即,云的高度)进行迭代的示例,但是实施例可以包括对多个变量的迭代。例如,如果元数据包括太阳的角度,但不包括图像捕获时卫星的角度和/或位置,则系统可以对卫星角度和/或云的位置和高度进行迭代。因此,一个候选云影位置可以基于在最浅卫星角度处的最低云高度的假设而被生成,一个候选云影位置可以基于在最浅卫星角度处的最高云高度的假设而被生成,一个候选云影位置可以基于在最陡卫星角度处的最低云高度的假设而被生成,并且一个候选云影位置可以基于在最陡卫星角度处的最高云高度的假设而被生成。
再次参考图9,在步骤910中,系统将图像和候选云影位置用作输入并且将标识云影位置的数据用作输出来训练第二机器学习系统来标识云影位置。第二机器学习系统可以包括能够接受一个或多个矩阵的值作为输入并生成一个或多个矩阵的值作为输出的任何机器学习系统,诸如卷积神经网络。
系统可以将表示一个或多个图像的矩阵和表示所标识的候选云影位置的矩阵用作输入并且将标识像素是云影还是非云影的数据用作输出来训练第二机器学习系统。例如,如果针对每个训练数据集,将包括三个堆叠图像矩阵的训练数据集用作输入并且将表示云位置的矩阵用作输出来训练第一机器学习系统,则可以针对每个训练数据集将包括十个堆叠矩阵的训练数据集用作输入并且将表示云影位置的矩阵用作输出来训练第二机器学习系统,这十个堆叠矩阵包括三个堆叠图像矩阵和七个堆叠候选云位置矩阵。以这种方式,系统利用云和云影之间的关系来提高机器学习模型在检测云影中的功效。
在步骤912中,使用一个或多个频带产生的特定农艺田地的一个或多个特定图像被接收。农业智能计算机系统可以直接或间接地从卫星接收图像集合,其中图像集合包括在与相同位置对应的每个频带中的图像。在实施例中,所接收的图像集合包括用于训练机器学习系统的每个频带中的图像。例如,如果机器学习系统使用红色、蓝色和绿色频带来训练,则所接收的与相同位置相对应的图像集合可以至少包括在红色、蓝色和绿色频带中的每个频带中的图像。
在步骤914中,系统使用第一机器学习系统和一个或多个特定图像来将一个或多个特定图像中的多个像素标识为特定云位置。例如,农业智能计算机系统可以使用经过训练的第一机器学习系统为从一个或多个图像生成的输入矩阵计算输出矩阵。针对每个像素,输出矩阵可以指示该像素是对应于云位置还是非云位置。
在步骤916中,系统使用特定云位置来标识多个特定候选云影位置。例如,系统可以使用本文描述的技术基于特定云位置对多个不同的云高度和大小进行迭代以生成多个云影图,每个云影图包括基于从所标识的特定云位置生成的云高度和大小假设的一个或多个云影位置。
在步骤918中,系统使用第二机器学习系统、多个特定候选云影位置以及一个或多个特定图像来将一个或多个特定图像中的多个像素标识为特定云影位置。例如,农业智能计算机系统可以使用经过训练的第二机器学习系统为从一个或多个特定图像和云影图生成的输入矩阵计算输出矩阵。针对每个像素,输出矩阵可以指示该像素是对应于云影位置还是非云影位置。
4.替换所标识的云像素
在实施例中,系统利用本文描述的系统和方法来通过替换包括云或云影的像素来改善农艺田地的图像。例如,系统可以从图像中移除已经由云或云影标识的所有像素。系统然后可以将像素插入到像素已被移除的位置中。
在实施例中,系统使用农艺位置的附加图像来增强农艺田地的图像,其中包含云和云影的一个或多个像素被移除。例如,农业智能计算机系统可以接收在不同时间和/或日期捕获的位置的附加图像。系统可以使用本文描述的方法来标识附加图像中的云和云影以进行移除。系统然后可以在附加图像中标识与初始图像中的云或云影像素相同的物理位置相对应的非云和非云影像素。系统然后可以用来自附加图像的所标识的非云和非云影像素填充初始图像的空白点。
在实施例中,系统将来自图像中的非云和非云影位置的像素值插入到被移除的包含云或云影的像素。例如,系统可以使用一种或多种图像插值算法来基于图像中周围像素的图像像素值来确定被移除的像素的图像像素值。作为另一示例,系统可以利用将针对任何云和云影位置具有空值的图像用作输入并且将针对云和云影位置具有所标识的像素值的图像用作输出而训练过的机器学习系统来标识被移除的像素的像素值。
5.农艺建模
在实施例中,系统利用本文描述的系统和方法来改善在具有云和云影的图像中的农艺田地的农艺建模。例如,农艺产量模型可以被配置为根据田间的至少平均归一化差异植被指数(NDVI)值或其他指数值来对农作物的产量进行建模。由于指数值是从田地上的农作物的图像生成的,因此云和云影可能会负面影响田地的那些位置上的指数值。因此,当出于农艺建模的目的计算平均指数值时,系统可以忽略已经被标识为包含云或云影的像素。此外,系统可以被配置为将像素标识为田地的一部分,以用于其他目的,诸如总产量建模,但是没有像素值。因此,如果平均植被指数被应用于田地上的所有位置,则尽管像素未被用于平均植被指数值的计算,但是像素可以被赋予平均植被指数值。
在实施例中,系统基于标识云和云影的数据来过滤用于建模的图像。例如,系统可以移除包含云或云影的所有图像,并且出于建模的目的,仅使用没有云或云影的图像。移除包含云或云影的图像可以包括从田地的图像集合生成未被标识为包含云或云影的图像的严格子集。附加地或备选地,系统可以移除图像的特定部分包含云或云影的图像。例如,系统可以移除包含云或云影的像素百分比大于或等于百分之三十的所有图像。
通过移除包括云或云影的图像,系统减少了存储图像的存储器使用量,减少了所执行的计算的数目,并提高了使用剩余图像执行的建模的准确性。例如,如果系统在一段时间内接收到五十张图像以用于对农作物产量进行建模,则系统可以首先将这些图像中的二十张图像标识为包含超过阈值百分比的云或云影并移除所标识的图像。系统然后可以使用剩余的三十张图像执行建模技术,从而在提高模型准确性的同时降低建模的计算成本。
6.农艺地图显示
在实施例中,系统利用本文描述的系统和方法来生成改进的显示。例如,系统可以基于标识云和云影位置的数据来标识田地的理想图像,以便在计算设备上显示。作为实际示例,系统可以请求显示农艺田地的最新图像。系统可以标识不包含任何云或云影的田地的最新生成的图像,并引起所标识的图像的显示。附加地或备选地,系统可以标识包含小于阈值百分比的云或云影的田地的最新生成的图像,并引起所标识的图像的显示。
在实施例中,系统基于标识图像中的云和云影的数据生成图像的覆盖图。例如,系统可以针对尚未被标识为包括云或云影的田地上的每个位置计算指数值,诸如NDVI值。系统然后可以生成图像的覆盖图,该覆盖图标识不包括云或云影的位置的NDVI。因此,如果系统接收到显示具有NDVI值的田地的当前图像的请求,则系统可以使用本文描述的方法来标识云和云影位置并生成其余位置的覆盖图。系统然后可以在提出请求的客户端计算设备上引起具有覆盖图的图像的显示。
通过生成在具有云或云影的位置与没有云或云影的位置之间进行区分的覆盖图,系统能够提供改进的界面,该界面可以显示覆盖农艺田地的图像的有用数据。因此,系统可能能够显示一天或不同天中不同时间的图像,而不会由于云的存在而丢失信息或提供不正确的信息。例如,农业智能计算机系统可以接收在第一天在第一时间显示农艺田地的图像的请求,并且作为响应,显示具有标识没有云或云影的位置的植被指数值的覆盖图的图像。农业智能计算机系统然后可以接收在第二天在第二时间显示农艺田地的图像的第二请求,并且作为响应,显示由于云和云影的移位位置而具有不同覆盖图的图像。以这种方式,系统为每个图像中可计算的值的位置提供指数值,从而,尽管多个图像中都存在云,但仍允许田地管理者获得有关农艺田地的有用信息。
7.某些实施例的益处
本文描述的系统和方法提供了机器学习的实际应用,用于解决在将卫星影像用于农艺目的时出现的特定问题。通过利用机器学习算法,农业智能计算机系统能够通过标识图像中的云或云影来提高针对农艺目的的图像利用率。这允许农业智能计算机系统可以实际应用机器学习技术来解决卫星影像独有的问题。另外,本文描述的方法和技术允许农业智能计算机系统生成改进的图像、改进的农艺模型和改进的地图显示。
本文描述的系统和方法提高了计算机执行用于农艺建模目的的复杂计算的能力。通过从所接收的图像移除包括云和云影的像素,系统能够使用较少数目的图像进行准确的计算,从而减少计算机为了在结果中获得相同的准确性必须执行的计算的数目。此外,可以通过从存储中移除包含云和云影的图像或包含超过阈值百分比的云或云影的图像来改进计算机系统的存储器。

Claims (28)

1.一种系统,包括:
一个或多个处理器;
存储指令的存储器,当所述指令在被所述一个或多个处理器执行时引起以下的执行:
接收使用一个或多个频带产生的农艺田地的多个图像;
接收标识所述图像中云位置和云影位置的对应数据;
将所述图像用作输入并且将把像素标识为云像素或非云像素的至少数据用作输出来训练机器学习系统以标识至少云位置;
接收使用所述一个或多个频带产生的特定农艺田地的一个或多个特定图像;
将所述一个或多个特定图像用作到所述机器学习系统的输入,将所述一个或多个特定图像中的多个像素标识为特定云位置;
接收使用所述一个或多个频带产生的所述特定农艺田地的多个第二图像;
将所述多个第二图像用作到所述机器学习系统的输入,将所述多个第二图像中的多个像素标识为特定云位置;
接收显示所述特定农艺田地的图像的请求;
确定所述一个或多个特定图像包括比所述多个第二图像中的每个第二图像更少的被标识为特定云位置的像素,并且,作为响应,引起所述一个或多个特定图像的显示。
2.根据权利要求1所述的系统,其中所述机器学习系统是卷积编码器-解码器,所述卷积编码器-解码器包括夹杂着池化步骤的多个卷积编码步骤和夹杂着上采样步骤的多个卷积决定步骤。
3.根据权利要求1所述的系统,其中所述机器学习系统是卷积编码器-解码器,所述卷积编码器-解码器已经被定制为使用定制的机器学习层来接受不同类型的输入,所述定制的机器学习层基于输出张量的符号形状对向量的构造进行塑形。
4.根据权利要求1所述的系统,其中被用于训练所述机器学习系统的所述输入中的每个输入包括多个堆叠矩阵,所述多个堆叠矩阵中的每个堆叠矩阵是从使用不同频带捕获到的图像生成的。
5.根据权利要求1所述的系统,其中当所述指令在被所述一个或多个处理器执行时进一步引起以下的执行:从所述一个或多个特定图像移除被标识为特定云位置的所述多个像素中的每个像素。
6.根据权利要求5所述的系统,其中所述指令在被所述一个或多个处理器执行时进一步引起以下的执行:
接收使用所述一个或多个频带产生的所述特定农艺田地的一个或多个第二图像;
将所述一个或多个第二图像用作到所述机器学习系统的输入,将所述一个或多个第二图像中的多个像素标识为特定云位置;
标识被标识为所述一个或多个特定图像中的特定云位置的所述多个像素的子集,所述多个像素对应于未被标识为所述一个或多个第二图像中的特定云位置的多个像素;
用未被标识为所述一个或多个第二图像中的特定云位置的所述多个像素替换与被标识为所述一个或多个特定图像中的特定云位置的所述多个像素的所述标识的子集对应的已移除的像素。
7.一种系统,包括:
一个或多个处理器;
存储指令的存储器,所述指令在被所述一个或多个处理器执行时进一步引起以下的执行:
接收使用一个或多个频带产生的农艺田地的多个图像;
接收标识所述图像中云位置和云影位置的对应数据;
将所述图像用作输入并且将把像素标识为云像素或非云像素的数据用作输出来训练第一机器学习系统以标识云位置;
使用标识云位置的所述数据,针对所述多个图像中的每个图像标识多个候选云影位置;
其中针对所述多个图像中的每个图像,标识多个候选云位置包括:
接收元数据,所述元数据标识农艺田地在所述图像中的位置、在所述图像被捕获到的时间捕获所述图像的图像捕获设备的位置和角度、以及在所述图像被捕获到的所述时间的阳光角度和所述农艺田地的角度;
使用所述元数据和标识云位置的所述数据,标识与标识云位置的所述数据相对应的云的多个可能物理位置,所述可能物理位置包括所述云的不同大小和高度;
针对云的所述多个可能物理位置中的每个可能物理位置,使用所述阳光角度和所述可能物理位置来标识对应的云影位置;
将所述图像和所述候选云影位置用作输入并且将把像素标识为云影像素或非云影像素的数据用作输出来训练第二机器学习系统以标识云影位置;
接收使用所述一个或多个频带产生的特定农艺田地的一个或多个特定图像;
将所述一个或多个特定图像用作到所述第一机器学习系统的输入,将所述一个或多个特定图像中的多个像素标识为特定云位置;
使用所述特定云位置,标识多个特定候选云影位置;
将所述一个或多个特定图像和所述多个特定候选云影位置用作到所述第二机器学习系统的输入,将所述一个或多个特定图像中的多个像素标识为特定云影位置。
8.根据权利要求7所述的系统,其中标识与标识云位置的所述数据相对应的云的所述多个可能物理位置包括:
标识在预定最大高度处的云的第一可能物理位置;
标识在预定最小高度处的云的第二可能物理位置;
标识在所述预定最大高度与所述预定最小高度之间的一个或多个高度处的云的一个或多个中间可能物理位置。
9.根据权利要求7所述的系统,其中所述机器学习系统是卷积编码器-解码器,所述卷积编码器-解码器包括夹杂着池化步骤的多个卷积编码步骤和夹杂着上采样步骤的多个卷积决定步骤。
10.根据权利要求7所述的系统,其中所述机器学习系统是卷积编码器-解码器,所述卷积编码器-解码器已经被定制为使用定制的机器学习层来接受不同类型的输入,所述定制的机器学习层基于输出张量的符号形状对向量的构造进行塑形。
11.根据权利要求7所述的系统,其中被用于训练所述机器学习系统的所述输入中的每个输入包括多个堆叠矩阵,所述多个堆叠矩阵中的每个堆叠矩阵是从使用不同频带捕获到的图像生成的。
12.根据权利要求7所述的系统,进一步包括:从所述一个或多个特定图像移除被标识为特定云位置或特定云影位置的所述多个像素中的每个像素。
13.根据权利要求12所述的系统,其中所述指令在被所述一个或多个处理器执行时进一步引起以下的执行:
接收使用所述一个或多个频带产生的所述特定农艺田地的一个或多个第二图像;
将所述一个或多个第二图像用作到第一机器学习系统的输入,将所述一个或多个第二图像中的多个像素标识为第二云位置;
使用所述第二云位置,标识多个第二云影位置;
将所述一个或多个第二图像和所述多个第二候选云影位置用作到所述第二机器学习系统的输入,将所述一个或多个第二图像中的多个像素标识为第二云影位置;
标识被标识为所述一个或多个特定图像中的特定云位置或云影位置的所述多个像素的子集,所述多个像素对应于未被标识为所述一个或多个第二图像中的第二云位置或第二云影位置的多个像素;
用未被标识为所述一个或多个第二图像中的第二云位置或第二云影位置的所述多个像素替换与被标识为所述一个或多个特定图像中的特定云位置或特定云影位置的所标识的所述多个像素的所述子集对应的已移除的像素。
14.根据权利要求12所述的系统,其中所述指令在被所述一个或多个处理器执行时进一步引起以下的执行:
接收使用所述一个或多个频带产生的所述特定农艺田地的多个第二图像;
将所述多个第二图像用作到所述机器学习系统的输入,将所述多个第二图像中的多个像素标识为第二云位置;
使用所述第二云位置,标识多个第二云影位置;
将所述多个第二图像和所述多个第二候选云影位置用作到所述第二机器学习系统的输入,将所述多个第二图像中的多个像素标识为第二云影位置;
接收显示所述特定农艺田地的图像的请求;
确定所述一个或多个特定图像包括一定数目的被标识为特定云位置或特定云影位置的像素,所述数目小于所述多个第二图像中的每个第二图像中的被标识为第二云位置或第二云影位置的像素的数目,并且,作为响应,引起所述一个或多个特定图像的显示。
15.一种计算机实现的方法,包括:
接收使用一个或多个频带产生的农艺田地的多个图像;
接收标识所述图像中云位置和云影位置的对应数据;
将所述图像用作输入并且将把像素标识为云像素或非云像素的至少数据用作输出来训练机器学习系统以标识至少云位置;
接收使用所述一个或多个频带产生的特定农艺田地的一个或多个特定图像;
将所述一个或多个特定图像用作到所述机器学习系统的输入,将所述一个或多个特定图像中的多个像素标识为特定云位置;
接收使用所述一个或多个频带产生的所述特定农艺田地的多个第二图像;
将所述多个第二图像用作到所述机器学习系统的输入,将所述多个第二图像中的多个像素标识为特定云位置;
接收显示所述特定农艺田地的图像的请求;
确定所述一个或多个特定图像包括比所述多个第二图像中的每个第二图像更少的被标识为特定云位置的像素,并且,作为响应,引起所述一个或多个特定图像的显示。
16.根据权利要求15所述的计算机实现的方法,其中所述机器学习系统是卷积编码器-解码器,所述卷积编码器-解码器包括夹杂着池化步骤的多个卷积编码步骤和夹杂着上采样步骤的多个卷积决定步骤。
17.根据权利要求15所述的计算机实现的方法,其中所述机器学习系统是卷积编码器-解码器,所述卷积编码器-解码器已经被定制为使用定制的机器学习层来接受不同类型的输入,所述定制的机器学习层基于输出张量的符号形状对向量的构造进行塑形。
18.根据权利要求15所述的计算机实现的方法,其中被用于训练所述机器学习系统的所述输入中的每个输入包括多个堆叠矩阵,所述多个堆叠矩阵中的每个堆叠矩阵是从使用不同频带捕获到的图像生成的。
19.根据权利要求15所述的计算机实现的方法,进一步包括:从所述一个或多个特定图像移除被标识为特定云位置的所述多个像素中的每个像素。
20.根据权利要求19所述的计算机实现的方法,进一步包括:
接收使用所述一个或多个频带产生的所述特定农艺田地的一个或多个第二图像;
将所述一个或多个第二图像用作到所述机器学习系统的输入,将所述一个或多个第二图像中的多个像素标识为特定云位置;
标识被标识为所述一个或多个特定图像中的特定云位置的所述多个像素的子集,所述多个像素对应于未被标识为所述一个或多个第二图像中的特定云位置的多个像素;
用未被标识为所述一个或多个第二图像中的特定云位置的所述多个像素替换与被标识为所述一个或多个特定图像中的特定云位置的所述多个像素的所述标识的子集对应的已移除的像素。
21.一种计算机实现的方法,包括:
接收使用一个或多个频带产生的农艺田地的多个图像;
接收标识所述图像中云位置和云影位置的对应数据;
将所述图像用作输入并且将把像素标识为云像素或非云像素的数据用作输出来训练第一机器学习系统以标识云位置;
使用标识云位置的所述数据,针对所述多个图像中的每个图像标识多个候选云影位置;
其中针对所述多个图像中的每个图像,标识多个候选云位置包括:
接收元数据,所述元数据标识农艺田地在所述图像中的位置、在所述图像被捕获到的时间捕获所述图像的图像捕获设备的位置和角度、以及在所述图像被捕获到的所述时间的阳光角度和所述农艺田地的角度;
使用所述元数据和标识云位置的所述数据,标识与标识云位置的所述数据相对应的云的多个可能物理位置,所述可能物理位置包括所述云的不同大小和高度;
针对云的所述多个可能物理位置中的每个可能物理位置,使用所述阳光角度和所述可能物理位置来标识对应的云影位置;
将所述图像和所述候选云影位置用作输入并且将把像素标识为云影像素或非云影像素的数据用作输出来训练第二机器学习系统以标识云影位置;
接收使用所述一个或多个频带产生的特定农艺田地的一个或多个特定图像;
将所述一个或多个特定图像用作到所述第一机器学习系统的输入,将所述一个或多个特定图像中的多个像素标识为特定云位置;
使用所述特定云位置,标识多个特定候选云影位置;
将所述一个或多个特定图像和所述多个特定候选云影位置用作到所述第二机器学习系统的输入,将所述一个或多个特定图像中的多个像素标识为特定云影位置。
22.根据权利要求21所述的方法,其中标识与标识云位置的所述数据相对应的云的所述多个可能物理位置包括:
标识在预定最大高度处的云的第一可能物理位置;
标识在预定最小高度处的云的第二可能物理位置;
标识在所述预定最大高度与所述预定最小高度之间的一个或多个高度处的云的一个或多个中间可能物理位置。
23.根据权利要求21所述的计算机实现的方法,其中所述机器学习系统是卷积编码器-解码器,所述卷积编码器-解码器包括夹杂着池化步骤的多个卷积编码步骤和夹杂着上采样步骤的多个卷积决定步骤。
24.根据权利要求21所述的计算机实现的方法,其中所述机器学习系统是卷积编码器-解码器,所述卷积编码器-解码器已经被定制为使用定制的机器学习层来接受不同类型的输入,所述定制的机器学习层基于输出张量的符号形状对向量的构造进行塑形。
25.根据权利要求21所述的计算机实现的方法,其中被用于训练所述机器学习系统的所述输入中的每个输入包括多个堆叠矩阵,所述多个堆叠矩阵中的每个堆叠矩阵是从使用不同频带捕获到的图像生成的。
26.根据权利要求21所述的计算机实现的方法,进一步包括:从所述一个或多个特定图像移除被标识为特定云位置或特定云影位置的所述多个像素中的每个像素。
27.根据权利要求26所述的计算机实现的方法,进一步包括:
接收使用所述一个或多个频带产生的所述特定农艺田地的一个或多个第二图像;
将所述一个或多个第二图像用作到第一机器学习系统的输入,将所述一个或多个第二图像中的多个像素标识为第二云位置;
使用所述第二云位置,标识多个第二云影位置;
将所述一个或多个第二图像和所述多个第二候选云影位置用作到所述第二机器学习系统的输入,将所述一个或多个第二图像中的多个像素标识为第二云影位置;
标识被标识为所述一个或多个特定图像中的特定云位置或云影位置的所述多个像素的子集,所述多个像素对应于未被标识为所述一个或多个第二图像中的第二云位置或第二云影位置的多个像素;
用未被标识为所述一个或多个第二图像中的第二云位置或第二云影位置的所述多个像素替换与被标识为所述一个或多个特定图像中的特定云位置或特定云影位置的所标识的所述多个像素的所述子集对应的已移除像素。
28.根据权利要求22所述的计算机实现的方法,进一步包括:
接收使用所述一个或多个频带产生的所述特定农艺田地的多个第二图像;
将所述多个第二图像用作到所述机器学习系统的输入,将所述多个第二图像中的多个像素标识为第二云位置;
使用所述第二云位置,标识多个第二云影位置;
将所述多个第二图像和所述多个第二候选云影位置用作到所述第二机器学习系统的输入,将所述多个第二图像中的多个像素标识为第二云影位置;
接收显示所述特定农艺田地的图像的请求;
确定所述一个或多个特定图像包括一定数目的被标识为特定云位置或特定云影位置的像素,所述数目小于所述多个第二图像中的每个第二图像中的被标识为第二云位置或第二云影位置的像素的数目,并且,作为响应,引起所述一个或多个特定图像的显示。
CN201980068622.9A 2018-10-19 2019-10-18 用于标识卫星影像中的云和云影的机器学习技术 Active CN112889089B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862748293P 2018-10-19 2018-10-19
US62/748,293 2018-10-19
PCT/US2019/056895 WO2020081909A1 (en) 2018-10-19 2019-10-18 Machine learning techniques for identifying clouds and cloud shadows in satellite imagery

Publications (2)

Publication Number Publication Date
CN112889089A CN112889089A (zh) 2021-06-01
CN112889089B true CN112889089B (zh) 2024-03-05

Family

ID=70279659

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980068622.9A Active CN112889089B (zh) 2018-10-19 2019-10-18 用于标识卫星影像中的云和云影的机器学习技术

Country Status (9)

Country Link
US (3) US11256916B2 (zh)
EP (1) EP3867872B1 (zh)
CN (1) CN112889089B (zh)
AR (1) AR116766A1 (zh)
AU (1) AU2019362019B2 (zh)
BR (1) BR112021006133A2 (zh)
CA (1) CA3114956A1 (zh)
MX (1) MX2021004475A (zh)
WO (1) WO2020081909A1 (zh)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018176000A1 (en) 2017-03-23 2018-09-27 DeepScale, Inc. Data synthesis for autonomous control systems
US11157441B2 (en) 2017-07-24 2021-10-26 Tesla, Inc. Computational array microprocessor system using non-consecutive data formatting
US10671349B2 (en) 2017-07-24 2020-06-02 Tesla, Inc. Accelerated mathematical engine
US11893393B2 (en) 2017-07-24 2024-02-06 Tesla, Inc. Computational array microprocessor system with hardware arbiter managing memory requests
US11409692B2 (en) 2017-07-24 2022-08-09 Tesla, Inc. Vector computational unit
US11561791B2 (en) 2018-02-01 2023-01-24 Tesla, Inc. Vector computational unit receiving data elements in parallel from a last row of a computational array
US11215999B2 (en) 2018-06-20 2022-01-04 Tesla, Inc. Data pipeline and deep learning system for autonomous driving
US11361457B2 (en) 2018-07-20 2022-06-14 Tesla, Inc. Annotation cross-labeling for autonomous control systems
US11636333B2 (en) 2018-07-26 2023-04-25 Tesla, Inc. Optimizing neural network structures for embedded systems
US11562231B2 (en) 2018-09-03 2023-01-24 Tesla, Inc. Neural networks for embedded devices
CA3115784A1 (en) 2018-10-11 2020-04-16 Matthew John COOPER Systems and methods for training machine models with augmented data
CN112889089B (zh) 2018-10-19 2024-03-05 克莱米特有限责任公司 用于标识卫星影像中的云和云影的机器学习技术
US11196678B2 (en) 2018-10-25 2021-12-07 Tesla, Inc. QOS manager for system on a chip communications
US11816585B2 (en) 2018-12-03 2023-11-14 Tesla, Inc. Machine learning models operating at different frequencies for autonomous vehicles
US11537811B2 (en) 2018-12-04 2022-12-27 Tesla, Inc. Enhanced object detection for autonomous vehicles based on field view
US11610117B2 (en) 2018-12-27 2023-03-21 Tesla, Inc. System and method for adapting a neural network model on a hardware platform
US11150664B2 (en) 2019-02-01 2021-10-19 Tesla, Inc. Predicting three-dimensional features for autonomous driving
US10997461B2 (en) 2019-02-01 2021-05-04 Tesla, Inc. Generating ground truth for machine learning from time series elements
US11567514B2 (en) 2019-02-11 2023-01-31 Tesla, Inc. Autonomous and user controlled vehicle summon to a target
US10956755B2 (en) 2019-02-19 2021-03-23 Tesla, Inc. Estimating object properties using visual image data
US11010606B1 (en) * 2019-11-15 2021-05-18 Maxar Intelligence Inc. Cloud detection from satellite imagery
US11568320B2 (en) * 2021-01-21 2023-01-31 Snowflake Inc. Handling system-characteristics drift in machine learning applications
CN113516633A (zh) * 2021-05-28 2021-10-19 西安空间无线电技术研究所 一种卫星图像的云检测标识填充方法
US11934489B2 (en) * 2021-05-31 2024-03-19 Cibo Technologies, Inc. Method and apparatus for employing deep learning to infer implementation of regenerative irrigation practices
US11880430B2 (en) 2021-05-31 2024-01-23 Cibo Technologies, Inc. Method and apparatus for employing deep learning neural network to predict management zones
CN113570642B (zh) * 2021-06-10 2024-01-05 国家卫星气象中心(国家空间天气监测预警中心) 基于背景场资料和机器学习的静止轨道卫星对流初生预警方法
CN113625283B (zh) * 2021-07-28 2024-04-02 南京航空航天大学 基于残差卷积神经网络的双极化气象雷达水凝物粒子相态识别方法
EP4144199A1 (en) 2021-09-01 2023-03-08 YARA International ASA Method and system for providing a site-specific fertilizer recommendation
CN113936009B (zh) * 2021-09-14 2023-11-21 国家卫星气象中心(国家空间天气监测预警中心) 一种气象卫星洪涝监测的云阴影去除方法、装置及设备
CN114066755B (zh) * 2021-11-11 2023-02-14 南京航空航天大学 一种基于全波段特征融合的遥感影像薄云去除方法及系统
GB2614238B (en) * 2021-12-17 2024-04-17 Iceye Oy Angle-aware object classification
JP7127927B1 (ja) * 2022-03-15 2022-08-30 日本電気株式会社 水蒸気観測方法
JP7127928B1 (ja) * 2022-03-15 2022-08-30 日本電気株式会社 水蒸気観測方法
CN114862994B (zh) * 2022-03-25 2024-07-26 武汉大学 基于柏林噪声的静态云雾仿真生成方法
US11663753B1 (en) * 2022-11-16 2023-05-30 Eos Data Analytics, Inc. Generation of field productivity maps
CN116740569B (zh) * 2023-06-15 2024-01-16 安徽理工大学 一种基于深度学习的降雪区域云检测系统
CN117058557B (zh) * 2023-07-17 2024-10-29 北华航天工业学院 基于物理特征与深度学习模型的云和云阴影联合检测方法
CN117408949B (zh) * 2023-09-20 2024-07-09 宁波大学 一种季节性动态阈值的云及云阴影检测方法及装置
US11961172B1 (en) * 2023-10-17 2024-04-16 Royce Geospatial Consultants, Inc. Advanced image enhancements for accurate processing, exploitation, and dissemination
CN117522824B (zh) * 2023-11-16 2024-05-14 安徽大学 一种基于域知识库的多源域泛化的云和云阴影检测方法

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004052603B3 (de) * 2004-10-29 2006-05-24 Deutsches Zentrum für Luft- und Raumfahrt e.V. Verfahren zur Eliminierung von Schatteneffekten in Fernerkundungsdaten über Land
CN102509262A (zh) * 2011-10-17 2012-06-20 中煤地航测遥感局有限公司 一种遥感图像薄云去除方法
CN102750701A (zh) * 2012-06-15 2012-10-24 西安电子科技大学 针对Landsat TM和ETM图像的厚云及其阴影检测方法
CN103093241A (zh) * 2013-01-23 2013-05-08 北京理工大学 基于同质化处理的光学遥感图像非匀质云层判别方法
CN104573662A (zh) * 2015-01-14 2015-04-29 北京航天世景信息技术有限公司 一种云判方法和系统
CN104867139A (zh) * 2015-05-12 2015-08-26 中国科学院遥感与数字地球研究所 一种基于辐射场的遥感图像云及阴影检测方法
CN104966298A (zh) * 2015-06-17 2015-10-07 南京大学 一种基于微光云图数据的夜间低云大雾监测方法
CN105260729A (zh) * 2015-11-20 2016-01-20 武汉大学 一种基于随机森林的卫星遥感影像云量计算方法
CN106023098A (zh) * 2016-05-12 2016-10-12 西安电子科技大学 基于张量结构多字典学习与稀疏编码的图像修补方法
WO2017099951A1 (en) * 2015-12-07 2017-06-15 The Climate Corporation Cloud detection on remote sensing imagery
CN107766810A (zh) * 2017-10-10 2018-03-06 湖南省测绘科技研究所 一种云、影检测方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2627181T5 (es) 2007-01-08 2021-01-11 Climate Corp Sistema y método de monitorización de plantadora
US8712148B2 (en) 2008-06-06 2014-04-29 Monsanto Technology Llc Generating agricultural information products using remote sensing
US20100198420A1 (en) * 2009-02-03 2010-08-05 Optisolar, Inc. Dynamic management of power production in a power system subject to weather-related factors
US8477295B2 (en) 2009-05-07 2013-07-02 Solum, Inc. Automated soil measurement device
US8509476B2 (en) * 2011-09-13 2013-08-13 The United States Of America, As Represented By The Secretary Of The Navy Automated system and method for optical cloud shadow detection over water
EP3967121A1 (en) 2012-07-25 2022-03-16 Precision Planting LLC System for multi-row agricultural implement control and monitoring
EP3183697B1 (en) 2014-08-22 2022-01-12 The Climate Corporation Method for agronomic and agricultural monitoring using unmanned aerial system
US9519861B1 (en) 2014-09-12 2016-12-13 The Climate Corporation Generating digital models of nutrients available to a crop over the course of the crop's development based on weather and soil data
US10683305B2 (en) 2015-04-27 2020-06-16 Concert Pharmaceuticals, Inc. Deuterated OTX-015
WO2017035629A1 (en) * 2015-08-31 2017-03-09 Green Power Labs Inc. Method and system for solar power forecasting
JP2020510463A (ja) * 2017-01-27 2020-04-09 アーテリーズ インコーポレイテッド 全層畳み込みネットワークを利用する自動化されたセグメンテーション
US10274620B2 (en) * 2017-03-22 2019-04-30 Stellar Solutions, Inc. System and method for providing short-term earthquake forecasts
US10989839B1 (en) * 2017-08-29 2021-04-27 University Of Hawai'i Ground-based sky imaging and irradiance prediction system
WO2019049324A1 (en) * 2017-09-08 2019-03-14 Nec Corporation IMAGE PROCESSING DEVICE, IMAGE PROCESSING METHOD, AND STORAGE MEDIUM
US10423850B2 (en) * 2017-10-05 2019-09-24 The Climate Corporation Disease recognition from images having a large field of view
CN112889089B (zh) 2018-10-19 2024-03-05 克莱米特有限责任公司 用于标识卫星影像中的云和云影的机器学习技术

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004052603B3 (de) * 2004-10-29 2006-05-24 Deutsches Zentrum für Luft- und Raumfahrt e.V. Verfahren zur Eliminierung von Schatteneffekten in Fernerkundungsdaten über Land
CN102509262A (zh) * 2011-10-17 2012-06-20 中煤地航测遥感局有限公司 一种遥感图像薄云去除方法
CN102750701A (zh) * 2012-06-15 2012-10-24 西安电子科技大学 针对Landsat TM和ETM图像的厚云及其阴影检测方法
CN103093241A (zh) * 2013-01-23 2013-05-08 北京理工大学 基于同质化处理的光学遥感图像非匀质云层判别方法
CN104573662A (zh) * 2015-01-14 2015-04-29 北京航天世景信息技术有限公司 一种云判方法和系统
CN104867139A (zh) * 2015-05-12 2015-08-26 中国科学院遥感与数字地球研究所 一种基于辐射场的遥感图像云及阴影检测方法
CN104966298A (zh) * 2015-06-17 2015-10-07 南京大学 一种基于微光云图数据的夜间低云大雾监测方法
CN105260729A (zh) * 2015-11-20 2016-01-20 武汉大学 一种基于随机森林的卫星遥感影像云量计算方法
WO2017099951A1 (en) * 2015-12-07 2017-06-15 The Climate Corporation Cloud detection on remote sensing imagery
CN106023098A (zh) * 2016-05-12 2016-10-12 西安电子科技大学 基于张量结构多字典学习与稀疏编码的图像修补方法
CN107766810A (zh) * 2017-10-10 2018-03-06 湖南省测绘科技研究所 一种云、影检测方法

Also Published As

Publication number Publication date
EP3867872B1 (en) 2024-11-06
US12136201B2 (en) 2024-11-05
US11769232B2 (en) 2023-09-26
EP3867872A4 (en) 2022-08-03
MX2021004475A (es) 2021-06-04
WO2020081909A1 (en) 2020-04-23
CN112889089A (zh) 2021-06-01
AU2019362019A1 (en) 2021-05-20
AU2019362019B2 (en) 2024-06-27
US20220237911A1 (en) 2022-07-28
US11256916B2 (en) 2022-02-22
CA3114956A1 (en) 2020-04-23
US20200125844A1 (en) 2020-04-23
AR116766A1 (es) 2021-06-09
BR112021006133A2 (pt) 2021-06-29
EP3867872A1 (en) 2021-08-25
US20240013352A1 (en) 2024-01-11

Similar Documents

Publication Publication Date Title
CN112889089B (zh) 用于标识卫星影像中的云和云影的机器学习技术
CN113228047B (zh) 利用多阶段、多尺度深度学习的植物病害检测
US11557116B2 (en) Generating pixel maps from non-image data and difference metrics for pixel maps
CN113228055B (zh) 配置和利用卷积神经网络以识别植物病害的方法和介质
EP3452953B1 (en) Using digital images of a first type and a feature set dictionary to generate digital images of a second type
CN113196287A (zh) 应季田地级产量预报
CN113163710B (zh) 标识和利用农田中的测试地点的系统和方法
CN113038823A (zh) 自动化样本采集和跟踪系统
CN113228041B (zh) 利用改善的机器学习检测植物疾病的感染

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: Missouri, USA

Applicant after: Clemet Co.,Ltd.

Address before: California, USA

Applicant before: THE CLIMATE Corp.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant