BR122020015963A2 - método implementado por computador de determinação de um número de grãos a partir de uma imagem de um milho e meios de armazenamento não transitório - Google Patents

método implementado por computador de determinação de um número de grãos a partir de uma imagem de um milho e meios de armazenamento não transitório Download PDF

Info

Publication number
BR122020015963A2
BR122020015963A2 BR122020015963-4A BR122020015963A BR122020015963A2 BR 122020015963 A2 BR122020015963 A2 BR 122020015963A2 BR 122020015963 A BR122020015963 A BR 122020015963A BR 122020015963 A2 BR122020015963 A2 BR 122020015963A2
Authority
BR
Brazil
Prior art keywords
image
data
grains
fact
computer
Prior art date
Application number
BR122020015963-4A
Other languages
English (en)
Other versions
BR122020015963B1 (pt
Inventor
Juan Pablo Bedoya
Victor Stuber
Gerard Guillemette
Joost Kemink
Yaqi Chen
Daniel Williams
Ying She
Marian Farah
Julian Boshard
Wei Guan
Original Assignee
The Climate Corporation
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 The Climate Corporation filed Critical The Climate Corporation
Publication of BR122020015963A2 publication Critical patent/BR122020015963A2/pt
Publication of BR122020015963B1 publication Critical patent/BR122020015963B1/pt

Links

Images

Classifications

    • 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
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01BSOIL WORKING IN AGRICULTURE OR FORESTRY; PARTS, DETAILS, OR ACCESSORIES OF AGRICULTURAL MACHINES OR IMPLEMENTS, IN GENERAL
    • A01B79/00Methods for working soil
    • A01B79/005Precision agriculture
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01DHARVESTING; MOWING
    • A01D41/00Combines, i.e. harvesters or mowers combined with threshing devices
    • A01D41/12Details of combines
    • A01D41/127Control or measuring arrangements specially adapted for combines
    • A01D41/1271Control or measuring arrangements specially adapted for combines for measuring crop flow
    • A01D41/1272Control or measuring arrangements specially adapted for combines for measuring crop flow for measuring grain flow
    • A01D41/1273Control or measuring arrangements specially adapted for combines for measuring crop flow for measuring grain flow for measuring grain loss
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01GHORTICULTURE; CULTIVATION OF VEGETABLES, FLOWERS, RICE, FRUIT, VINES, HOPS OR SEAWEED; FORESTRY; WATERING
    • A01G7/00Botany in general
    • A01G7/06Treatment of growing trees or plants, e.g. for preventing decay of wood, for tingeing flowers or wood, for prolonging the life of plants
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01DMEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
    • G01D21/00Measuring or testing not otherwise provided for
    • G01D21/02Measuring two or more variables by means not covered by a single other subclass
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • G06V20/188Vegetation
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01DHARVESTING; MOWING
    • A01D91/00Methods for harvesting agricultural products
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01GHORTICULTURE; CULTIVATION OF VEGETABLES, FLOWERS, RICE, FRUIT, VINES, HOPS OR SEAWEED; FORESTRY; WATERING
    • A01G22/00Cultivation of specific crops or plants not otherwise provided for

Landscapes

  • Life Sciences & Earth Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Environmental Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Ecology (AREA)
  • Forests & Forestry (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Marine Sciences & Fisheries (AREA)
  • Mining & Mineral Resources (AREA)
  • Agronomy & Crop Science (AREA)
  • Animal Husbandry (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Wood Science & Technology (AREA)
  • Soil Sciences (AREA)
  • Botany (AREA)
  • Mechanical Engineering (AREA)
  • Multimedia (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Apparatus Associated With Microorganisms And Enzymes (AREA)
  • Investigating Or Analysing Biological Materials (AREA)
  • Image Processing (AREA)

Abstract

Em uma modalidade, é divulgado um método de reconhecimento de doença em tempo real em um campo de cultura. O método compreende fazer uma câmera capturar continuamente o ambiente para gerar múltiplas imagens. O método compreende ainda fazer um dispositivo de exibição exibir continuamente as múltiplas imagens à medida que as múltiplas imagens são geradas. Além disso, o método compreende processar cada uma de uma ou mais das múltiplas imagens. O processamento compreende identificar pelo menos uma de uma pluralidade de doenças e calcular pelo menos uma pontuação de doença associada à pelo menos uma doença para uma imagem particular; fazer o dispositivo de exibição exibir informações sobre a pelo menos uma doença e a pelo menos uma pontuação de doença em associação com uma imagem atualmente exibida; receber entrada especificando uma ou mais da pelo menos uma doença; e fazer o dispositivo de exibição mostrar dados adicionais sobre uma ou mais doenças, incluindo uma medida corretiva para uma ou mais doenças.

Description

MÉTODO IMPLEMENTADO POR COMPUTADOR DE DETERMINAÇÃO DE UM NÚMERO DE GRÃOS A PARTIR DE UMA IMAGEM DE UM MILHO E MEIOS DE ARMAZENAMENTO NÃO TRANSITÓRIO (Dividido do BR 1120200041157 de 27/08/2018) AVISO DE DIREITOS AUTORAIS
[001] Uma parte da divulgação deste documento de patente contém material que está sujeito à proteção de direitos autorais. O proprietário dos direitos autorais não tem objeções à reprodução fac-símile feita por qualquer pessoa do documento de patente ou da divulgação de patente, como aparece nos arquivos ou registros de patentes do Escritório de Patentes e Marcas Registradas, mas reserva todos os direitos autorais ou outros direitos. © 2018 The Climate Corporation.
CAMPO DA DIVULGAÇÃO
[002] A presente divulgação refere-se à avaliação de campo de cultura e, mais especificamente, à detecção de doenças de cultura e estimativa do rendimento de cultura.
FUNDAMENTOS
[003] As abordagens descritas nesta seção são abordagens que poderiam ser perseguidas, mas não necessariamente abordagens que foram previamente concebidas ou perseguidas. Portanto, salvo indicação em contrário, não se deve presumir que qualquer uma das abordagens descritas nesta seção se qualifique como técnica anterior meramente em virtude de sua inclusão nesta seção.
[004] Um produtor pode gerenciar vários campos de cultura. Dados os possíveis tamanhos dos campos e o número de plantas nesses campos, pode ser demorado e trabalhoso avaliar o status, manter a saúde, e maximizar o rendimento dos campos. Pode ser útil ter ferramentas que ajudem o produtor a descobrir a ocorrência de doenças de cultura ou a estimar o rendimento de cultura atual.
SUMÁRIO
[005] As reivindicações anexas podem servir como um sumário da divulgação.
BREVE DESCRIÇÃO DOS DESENHOS
[006] Nos desenhos:
a Figura 1 ilustra um exemplo de sistema de computador que é configurado para executar as funções descritas aqui, mostradas em um ambiente de campo com outros aparelhos com os quais o sistema pode interoperar;
a Figura 2 ilustra duas vistas de um exemplo de organização lógica de conjuntos de instruções na memória principal quando uma aplicação móvel de exemplo é carregada para execução;
a Figura 3 ilustra um processo programado pelo qual o sistema de computador de inteligência agrícola gera um ou mais modelos agronômicos pré-configurados utilizando dados agronômicos fornecidos por uma ou mais fontes de dados;
a Figura 4 é um diagrama de blocos que ilustra um sistema de computador, no qual uma modalidade da invenção pode ser implementada;
a Figura 5 representa uma modalidade exemplar de uma vista de linha do tempo para entrada de dados;
a Figura 6 representa uma modalidade exemplar de uma vista de planilha para entrada de dados;
a Figura 7 ilustra exemplos de componentes de um computador cliente;
a Figura 8 ilustra um exemplo de processo realizado por um computador cliente para gerenciar um processo de avaliação de campo;
a Figura 9 ilustra um exemplo de dispositivo de interação com computador mostrando uma interface gráfica de usuário ("GUI") sob controle de programa que permite ao usuário invocar a funcionalidade de reconhecimento de doença;
a Figura 10 ilustra um exemplo de dispositivo de interação com computador mostrando uma GUI sob controle de programa que pode fornecer um resumo ou um tutorial sobre como realizar a funcionalidade de reconhecimento de doença;
a Figura 11 ilustra um exemplo de dispositivo de interação com computador mostrando uma GUI sob controle de programa que pode exibir resultados da análise de imagens geradas e receber solicitações para analisar imagens geradas selecionadas;
a Figura 12 ilustra um exemplo de dispositivo de interação com computador mostrando uma GUI sob controle de programa que pode fornecer informações adicionais sobre doenças reconhecidas;
a Figura 13 ilustra um exemplo de dispositivo de interação com computador mostrando uma GUI sob controle de programa que pode permitir que um usuário armazene ou carregue uma imagem gerada ou forneça metadados para a imagem gerada;
a Figura 14 ilustra um exemplo de processo tipicamente realizado por um computador cliente para calcular o rendimento de uma cultura, como o número de grãos em uma espiga de milho (milho);
a Figura 15 ilustra uma imagem de exemplo que foi aprimorada em contraste e segmentada em um primeiro plano contendo uma espiga de milho e um fundo;
a Figura 16 ilustra um exemplo de dispositivo de interação com computador mostrando uma GUI sob controle de programa que pode fornecer um resumo ou um tutorial sobre como realizar a funcionalidade de estimativa de rendimento;
a Figura 17 ilustra um exemplo de dispositivo de interação com computador mostrando uma GUI sob controle de programa que pode exibir informações de rendimento.
DESCRIÇÃO DETALHADA
[007] Na descrição seguinte, para fins de explicação, numerosos detalhes específicos são estabelecidos a fim de fornecer uma compreensão completa da presente divulgação. Será evidente, no entanto, que as modalidades podem ser praticadas sem estes detalhes específicos. Em outros casos, estruturas e dispositivos bem conhecidos são mostrados em forma de diagrama de blocos, a fim de evitar obscurecer desnecessariamente a presente divulgação. As modalidades são divulgadas em seções de acordo com o seguinte esquema:
1. VISÃO GERAL
2. EXEMPLO DE SISTEMA DE COMPUTADOR DE INTELIGÊNCIA AGRÍCOLA
  • 2.1 VISÃO GERAL ESTRUTURAL
  • 2.2 VISÃO GERAL DE PROGRAMA DE APLICAÇÃO
  • 2.3 INGESTÃO DE DADOS PARA O SISTEMA DE COMPUTADOR
  • 2.4 VISÃO GERAL DE PROCESSO - TREINAMENTO DE MODELO AGRONÔMICO
  • 2.5 RECONHECIMENTO DE DOENÇA E ESTIMATIVA DE RENDIMENTO
  • 2.6 EXEMPLO DE IMPLEMENTAÇÃO - VISÃO GERAL DE HARDWARE
3. DESCRIÇÃO FUNCIONAL
  • 3.1 CONSTRUÇÃO DE UM PROGRAMA DE COMPUTADOR PARA GERENCIAR UM PROCESSO DE AVALIAÇÃO DE CAMPO
  • 3.1.1 RECONHECENDO DOENÇAS OU TIPOS DE CULTURA
  • 3.1.2 ESTIMANDO O RENDIMENTO DE CULTURA
  • 3.2 EXECUÇÃO DO PROGRAMA DE COMPUTADOR PARA GERENCIAR UM PROCESSO DE AVALIAÇÃO DE CAMPO
  • 3.2.1 RECONHECENDO DOENÇAS OU TIPOS DE CULTURA
  • 3.2.2 ESTIMANDO O RENDIMENTO DE CULTURA
1. VISÃO GERAL
[008] Um sistema de reconhecimento de doença e estimativa de rendimento e métodos relacionados são divulgados. Em algumas modalidades, o sistema inclui um servidor e um ou mais computadores clientes. O servidor pode ser programado ou configurado com estruturas de dados e/ou registros de banco de dados que são organizados para desenvolver modelos ou técnicas para identificar doenças ou tipos de cultura e estimar o rendimento de cultura. O servidor também pode ser configurado para criar um programa de computador que invoca os modelos ou técnicas e implantar o programa de computador em cada um dos computadores clientes. Cada computador cliente pode ser um dispositivo móvel, como um telefone celular ou um tablet, que pode ser usado por um produtor à medida que ele caminha por um dos campos de cultura. Ao executar o programa de computador, como uma aplicação móvel, o computador cliente pode ser programado ou configurado com estruturas de dados e/ou registros de banco de dados organizados para varrer continuamente as culturas no campo e reconhecer o tipo de uma cultura ou detectar uma ocorrência de uma doença em uma cultura em tempo real. Em resposta à detecção de uma ocorrência de uma doença, o computador cliente pode ser programado para apresentar informações exibidas sobre a ocorrência e dados adicionais sobre a doença, como possíveis causas e regimes de tratamento. Em resposta ao reconhecimento de milho, por exemplo, o computador cliente pode ser programado para causar a exibição de uma contagem de grão e informações adicionais, como um rendimento estimado de milho para o campo. Nesta divulgação, o termo "milho" ("corn") é equivalente a "milho" ("maize").
[009] O sistema de reconhecimento de doença e estimativa de rendimento e métodos relacionados produzem muitos benefícios técnicos. Primeiro, o sistema e os métodos aplicam técnicas robustas de classificação e processamento de imagem e produzem diagnóstico preciso da saúde das culturas e estimativa do rendimento de cultura. Segundo, o sistema e os métodos, gerenciam um processo de ponta a ponta, desde a entrada em um campo de cultura até a avaliação geral do crescimento de cultura, coordenando adequadamente a comunicação entre os diferentes componentes eletrônicos, como um processador, um dispositivo de captura de imagem e um dispositivo de exibição. Terceiro, o sistema e os métodos geralmente exigem um espaço relativamente pequeno, que permita a utilização eficiente dos recursos normalmente encontrados em um dispositivo móvel e, portanto, pode ser prontamente implementado por esse dispositivo, levando a redução de sobrecarga na comunicação digital e problemas de manuseio manual. Terceiro, o sistema e os métodos são projetados para lidar com fluxos de dados contínuos e alcançar alta taxa de transferência de processamento, oferecendo informações abrangentes quase em tempo real.
2. EXEMPLO DE SISTEMA DE COMPUTADOR DE INTELIGÊNCIA AGRÍCOLA 2.1 VISÃO GERAL ESTRUTURAL
[0010] A Figura 1 ilustra um exemplo de sistema de computador que é configurado para executar as funções descritas aqui, mostradas em um ambiente de campo com outros aparelhos com os quais o sistema pode interoperar. Em uma modalidade, um usuário 102 possui, opera ou tem a posse de um dispositivo de computação de gerenciador de campo 104 em uma localização de campo ou associado a uma localização de campo tal como um campo destinado a atividades agrícolas ou uma localização de gestão para um ou mais campos agrícolas. O dispositivo de computação de gerenciador de campo 104 é programado ou configurado para fornecer dados de campo 106 a um sistema de computador de inteligência agrícola 130 através de uma ou mais redes 109.
[0011] Exemplos de dados de campo 106 incluem (a) dados de identificação (por exemplo, área cultivada, nome de campo, identificadores de campo, identificadores geográficos, identificadores de fronteira, identificadores de cultura e quaisquer outros dados adequados que possam ser usados para identificar terras de fazenda, como uma unidade de terra comum (CLU), número de lote e bloco, um número de parte da propriedade, coordenadas geográficas e fronteiras, Número de Série de Fazenda (FSN), número de fazenda, número de área, número de campo, seção, município e/ou faixa), (b) dados de colheita (por exemplo, tipo de cultura, variedade de culturas, rotação de cultura, se a cultura é cultivada organicamente, data da colheita, Histórico Real de Produção (APH), rendimento esperado, rendimento, preço de cultura, receita de cultura, umidade dos grãos, preparo do solo e informação de estação de crescimento anterior), (c) dados do solo (por exemplo, tipo, composição, pH, matéria orgânica (OM), capacidade de troca de cátions (CEC)), (d) dados de plantio (por exemplo, data de plantio, tipo de semente (s), maturidade relativa (RM) da semente (s) plantada (s), população de sementes), (e) dados de fertilizantes (por exemplo, tipo de nutriente (nitrogênio, fósforo, potássio), tipo de aplicação, data de aplicação, quantidade, fonte, método), f) dados de pesticidas (por exemplo, pesticidas, herbicidas, fungicidas, outras substâncias ou misturas de substâncias destinadas a serem utilizadas como um regulador vegetal, desfolhante ou dessecante, data de aplicação, quantidade, fonte, método), (g) dados de irrigação (por exemplo, data de aplicação, quantidade, fonte, método), (h) dados meteorológicos (por exemplo, precipitação, taxa de chuva, precipitação prevista, região de taxa de escoamento de água, temperatura, vento, previsão, pressão, visibilidade, nuvens, índice de calor, ponto de orvalho, umidade, profundidade da neve, qualidade do ar, nascer do sol, pôr do sol), (i) dados de imagens (por exemplo, informação de espectro de imagens e luz de um sensor de aparelho agrícola, câmera, computador, smartphone, tablet, veículo aéreo não tripulado, aviões ou satélite), (j) observações de reconhecimento (fotos, vídeos, notas de forma livre, gravações de voz, transcrições de voz, condições climáticas (temperatura, precipitação (atual e ao longo do tempo), umidade do solo, estágio de crescimento de cultura, velocidade do vento, umidade relativa, ponto de orvalho, camada preta)), e k) solo, semente, fenologia de cultura, relatórios de pragas e doenças, e fontes de previsão e bancos de dados.
[0012] Um computador servidor de dados 108 é comunicativamente acoplado ao sistema de computador de inteligência agrícola 130 e é programado ou configurado para enviar dados externos 110 para o sistema de computador de inteligência agrícola 130 através da (s) rede (s) 109. O computador servidor de dados externo 108 pode ser possuído ou operado pela mesma pessoa jurídica ou entidade que o sistema de computador de inteligência agrícola 130, ou por uma pessoa ou entidade diferente, tal como uma agência governamental, organização não governamental (ONG) e/ou um fornecedor privado de serviços de dados. Exemplos de dados externos incluem dados meteorológicos, dados de imagens, dados de solo ou dados estatísticos relacionados ao rendimento de culturas, entre outros. Os dados externos 110 podem consistir no mesmo tipo de informação que os dados de campo 106. Em algumas modalidades, os dados externos 110 são fornecidos por um servidor de dados externo 108 pertencente à mesma entidade que possui e/ou opera o sistema de computador de inteligência agrícola 130. Por exemplo, o sistema de computador de inteligência agrícola 130 pode incluir um servidor de dados focado exclusivamente em um tipo de dados que poderiam, de outro modo, ser obtidos de fontes de terceiros, tais como dados meteorológicos. Em algumas modalidades, um servidor de dados externo 108 pode realmente ser incorporado dentro do sistema 130.
[0013] Um aparelho agrícola 111 pode ter um ou mais sensores remotos 112 nele fixados, sensores esses que são comunicativamente acoplados, direta ou indiretamente via aparelho agrícola 111 ao sistema de computador de inteligência agrícola 130 e são programados ou configurados para enviar dados de sensores ao sistema de computador de inteligência agrícola 130. Exemplos de aparelhos agrícolas 111 incluem tratores, ceifeiras, colheitadeiras, plantadores, caminhões, equipamento fertilizador, veículos aéreos não tripulados, e qualquer outro item de maquinaria física ou hardware, tipicamente maquinaria móvel, e que pode ser usado em tarefas associadas à agricultura. Em algumas modalidades, uma única unidade do aparelho 111 pode compreender uma pluralidade de sensores 112 que são acoplados localmente em uma rede no aparelho; rede de área de controlador (CAN) é um exemplo dessa rede que pode ser instalada em ceifeiras ou colheitadeiras. O controlador de aplicação 114 é acoplado de forma comunicativa ao sistema de computador de inteligência agrícola 130 através da (s) rede (s) 10 9 e é programado ou configurado para receber um ou mais scripts para controlar um parâmetro operacional de um veículo ou implemento agrícola a partir do sistema de computador de inteligência agrícola 130. Por exemplo, uma interface de barramento de rede de área de controlador (CAN) pode ser usada para permitir comunicações a partir do sistema de computador de inteligência agrícola 130 para o aparelho agrícola 111, tal como o modo CLIMATE FIELDVIEW DRIVE, disponibilizado pela The Climate Corporation, San Francisco, Califórnia, é usada. Os dados de sensor podem consistir no mesmo tipo de informação que os dados de campo 106. Em algumas modalidades, os sensores remotos 112 podem não ser fixados a um aparelho agrícola 111, mas podem estar localizados remotamente no campo e podem comunicar com a rede 109.
[0014] O aparelho 111 pode compreender um computador de cabine 115 que é programado com uma aplicação de cabine, que pode compreender uma versão ou variante da aplicação móvel para o dispositivo 104 que é descrita adicionalmente em outras seções aqui. Em uma modalidade, o computador da cabine 115 compreende um computador compacto, frequentemente um computador ou smartphone do tamanho de um tablet, com uma exibição gráfica, tal como uma exibição a cores, que é montada dentro da cabine de um operador 111. O computador de cabine 115 pode implementar algumas ou todas as operações e funções que são aqui descritas mais adiante para o dispositivo de computação móvel 104.
[0015] A (s) rede (s) 109 representa, em termos gerais, qualquer combinação de uma ou mais redes de comunicação de dados, incluindo redes de área local, redes de área ampla, redes internet ou internets, utilizando qualquer um de enlaces com ou sem fio, incluindo enlaces terrestres ou de satélite. A (s) rede (s) pode ser implementada por qualquer meio ou mecanismo que proporcione a troca de dados entre os vários elementos da Figura 1. Os vários elementos da Figura 1 também podem ter enlaces de comunicação diretos (com ou sem fio) . Os sensores 112, o controlador 114, o computador servidor de dados externo 108 e outros elementos do sistema compreendem, cada um, uma interface compatível com a (s) rede (s) 109 e são programados ou configurados para utilizar protocolos padronizados de comunicação através das redes, tais como TCP/IP, Bluetooth, Protocolo CAN e protocolos de camada superior, como HTTP, TLS, e semelhantes.
[0016] Sistema de computação de inteligência agrícola 130 é programado ou configurado para receber dados de campo 106 do dispositivo de computação de gerenciador de campo 104, dados externos 110 do computador servidor de dados externo 108, e dados de sensor do sensor remoto 112. O sistema de computador de inteligência agrícola 130 pode ser ainda configurado para hospedar, usar ou executar um ou mais programas de computador, outros elementos de software, lógica digitalmente programada, como FPGAs ou ASICs, ou qualquer combinação dos mesmos para realizar a conversão e armazenamento de valores de dados, construção de modelos digitais de uma ou mais culturas em um ou mais campos, geração de recomendações e notificações, e geração e envio de scripts para o controlador de aplicação 114, da maneira descrita mais adiante em outras seções desta divulgação.
[0017] Em uma modalidade, o sistema de computador de inteligência agrícola 130 é programado com ou compreende uma camada de comunicação 132, camada de apresentação 134, camada de gestão de dados 140, camada de hardware/virtualização 150, e repositório de dados de modelo e campo 160. "Camada", neste contexto, refere-se a qualquer combinação de circuitos de interface digital eletrônica, microcontroladores, firmware, como controladores e/ou programas de computador ou outros elementos de software.
[0018] A camada de comunicação 132 pode ser programada ou configurada para executar funções de interface de entrada/saída, incluindo solicitações de envio ao dispositivo de computação de gerenciador de campo 104, computador servidor de dados externo 108 e sensor remoto 112 para dados de campo, dados externos e dados de sensor respectivamente. A camada de comunicação 132 pode ser programada ou configurada para enviar os dados recebidos para o repositório de dados de modelo e campo 160 para serem armazenados como dados de campo 106.
[0019] A camada de apresentação 134 pode ser programada ou configurada para gerar uma interface gráfica de usuário (GUI) a ser exibida no dispositivo de computação de gerenciador de campo 104, computador de cabine 115 ou outros computadores que são acoplados ao sistema 130 através da rede 109. A GUI pode compreender controles para entrada de dados a serem enviados para o sistema de computador de inteligência agrícola 130, gerar pedidos de modelos e/ou recomendações, e/ou exibir recomendações, notificações, modelos e outros dados de campo.
[0020] A camada de gerenciamento de dados 140 pode ser programada ou configurada para gerenciar operações de leitura e operações de gravação envolvendo o repositório 160 e outros elementos funcionais do sistema, incluindo consultas e conjuntos de resultados comunicados entre os elementos funcionais do sistema e o repositório. Exemplos de camada de gerenciamento de dados 140 incluem JDBC, código de interface de servidor SQL e/ou código de interface HADOOP, entre outros. O repositório 160 pode compreender um banco de dados. Como usado aqui, o termo "banco de dados" pode referir-se a um corpo de dados, a um sistema de gestão de banco de dados relacional (RDBMS) ou a ambos. Como usado aqui, um banco de dados pode compreender qualquer coleção de dados incluindo bancos de dados hierárquicos, bancos de dados relacionais, bancos de dados de arquivos simples, bancos de dados de objeto-relacionais, bancos de dados orientados a objetos e qualquer outra coleção estruturada de registros ou dados que são armazenados em um sistema de computador. Exemplos de RDBMSs incluem, mas não são limitados a incluir, bancos de dados ORACLE, MYSQL, IBM® DB2, MICROSOFT® SQL SERVER, SYBASE® e POSTGRESQL. No entanto, qualquer banco de dados pode ser usado para habilitar os sistemas e métodos descritos aqui.
[0021] Quando os dados de campo 106 não são fornecidos diretamente ao sistema de computador de inteligência agrícola através de uma ou mais máquinas agrícolas ou dispositivos de máquinas agrícolas que interagem com o sistema de computador de inteligência agrícola, o usuário pode ser solicitado através de uma ou mais interfaces de usuário no dispositivo de usuário (servido pelo sistema de computador de inteligência agrícola) para introduzir essa informação. Em uma modalidade exemplar, o usuário pode especificar dados de identificação, acessando um mapa no dispositivo de usuário (servido pelo sistema de computador de inteligência agrícola) e selecionando CLUs específicas que foram mostradas graficamente no mapa. Em uma modalidade alternativa, o usuário 102 pode especificar dados de identificação por acessar um mapa no dispositivo de usuário (servido pelo sistema de computador de inteligência agrícola 130) e desenhando fronteiras do campo sobre o mapa. Tal seleção de CLU ou desenhos de mapa representam identificadores geográficos. Em modalidades alternativas, o usuário pode especificar dados de identificação acessando dados de identificação de campo (fornecidos como arquivos de forma ou em um formato similar) a partir da Agência de Serviços Agrícolas do Departamento de Agricultura dos EUA ou outra fonte via dispositivo de usuário e fornecendo esses dados de identificação de campo ao sistema de computador de inteligência agrícola.
[0022] Em uma modalidade exemplar, o sistema de computador de inteligência agrícola 130 é programado para gerar e causar a exibição de uma interface gráfica de usuário compreendendo um gerenciador de dados para entrada de dados. Depois de um ou mais campos terem sido identificados usando os métodos descritos acima, o gerenciador de dados pode fornecer um ou mais utensílios ("widgets") de interface gráfica de usuário que, quando selecionados, podem identificar alterações nas práticas de campo, solo, culturas, lavouras ou nutrientes. O gerenciador de dados pode incluir uma visualização de linha do tempo, uma visualização de planilha e/ou um ou mais programas editáveis.
[0023] A Figura 5 representa uma modalidade exemplar de uma vista de linha do tempo para entrada de dados. Utilizando a exibição representada na Figura 5, um computador de usuário pode inserir uma seleção de um campo específico e uma data específica para a adição de evento. Eventos descritos no topo da linha do tempo podem incluir Nitrogênio, Plantio, Práticas e Solo. Para adicionar um evento de aplicação de nitrogênio, um computador de usuário pode fornecer entrada para selecionar a aba de nitrogênio. O computador de usuário pode então selecionar uma localização na linha do tempo para um determinado campo a fim de indicar uma aplicação de nitrogênio no campo selecionado. Em resposta a receber uma seleção de uma localização na linha do tempo de um determinado campo, o gerenciador de dados pode exibir uma sobreposição de entrada de dados, permitindo que o computador de usuário insira dados referentes a aplicações de nitrogênio, procedimentos de plantio, aplicação de solo, procedimentos de lavoura, práticas de irrigação, ou outras informações relacionadas ao campo específico. Por exemplo, se um computador de usuário seleciona uma parte da linha do tempo e indica uma aplicação de nitrogênio, então a sobreposição de entrada de dados pode incluir campos para inserir uma quantidade de nitrogênio aplicada, uma data de aplicação, um tipo de fertilizante usado, e qualquer outra informação relacionada à aplicação de nitrogênio.
[0024] Em uma modalidade, o gerenciador de dados fornece uma interface para criar um ou mais programas. "Programa", neste contexto, refere-se a um conjunto de dados referentes a aplicações de nitrogênio, procedimentos de plantio, aplicação de solo, procedimentos de lavoura, práticas de irrigação ou outras informações que podem estar relacionadas a um ou mais campos e que podem ser armazenadas em armazenamento de dados digitais para reutilização como um conjunto em outras operações. Após a criação de um programa, ele pode ser aplicado conceitualmente a um ou mais campos e as referências ao programa podem ser armazenadas em armazenamento digital em associação com os dados que identificam os campos. Assim, em vez de inserir manualmente dados idênticos relacionados às mesmas aplicações de nitrogênio para vários campos diferentes, um computador de usuário pode criar um programa que indica uma aplicação particular de nitrogênio e depois aplicar o programa a vários campos diferentes. Por exemplo, na vista da linha do tempo da Figura 5, as duas linhas do tempo superiores têm o programa "Outono aplicado" selecionado, que inclui uma aplicação de 68,03 Kg N/ac (150 lbs N/ac) no início de abril. O gerenciador de dados pode fornecer uma interface para editar um programa. Em uma modalidade, quando um programa particular é editado, cada campo que selecionou o programa particular é editado. Por exemplo, na Figura 5, se o programa "Outono aplicado" for editado para reduzir a aplicação de nitrogênio para 58,96 Kg N/ac (130 lbs N/ac), os dois campos superiores podem ser atualizados com uma aplicação reduzida de nitrogênio com base no programa editado.
[0025] Em uma modalidade, em resposta ao recebimento de edições em um campo que tenha um programa selecionado, o gerenciador de dados remove a correspondência do campo para o programa selecionado. Por exemplo, se uma aplicação de nitrogênio é adicionada ao campo superior na Figura 5, a interface pode ser atualizada para indicar que o programa "Outono aplicado" não está mais sendo aplicado ao campo superior. Embora a aplicação de nitrogênio no início de abril possa permanecer, as atualizações do programa "Outono aplicado" não alterariam a aplicação de nitrogênio em abril.
[0026] A Figura 6 representa uma modalidade exemplar de uma vista de planilha para entrada de dados. Utilizando a exibição representada na Figura 6, um usuário pode criar e editar informação para um ou mais campos. O gerenciador de dados pode incluir planilhas para introduzir informação em relação a Nitrogênio, Plantio, Práticas e Solo, como representado na Figura 6. Para editar uma entrada específica, um computador de usuário pode selecionar a entrada específica na planilha e atualizar os valores. Por exemplo, a Figura 6 mostra uma atualização em andamento para um valor de rendimento alvo para o segundo campo. Além disso, um computador de usuário pode selecionar um ou mais campos para aplicar um ou mais programas. Em resposta à recepção de uma seleção de um programa para um campo específico, o gerenciador de dados pode preencher automaticamente as entradas para o campo específico com base no programa selecionado. Assim com a visualização de linha do tempo, o gerenciador de dados pode atualizar as entradas para cada campo associado a um programa específico em resposta a receber uma atualização para o programa. Além disso, o gerenciador de dados pode remover a correspondência do programa selecionado para o campo em resposta à recepção de uma edição em uma das entradas do campo.
[0027] Em uma modalidade, os dados de modelo e de campo são armazenados no repositório de dados de modelo e campo 160. Os dados de modelo compreendem modelos de dados criados para um ou mais campos. Por exemplo, um modelo de cultura pode incluir um modelo construído digitalmente do desenvolvimento de uma cultura em um ou mais campos. "Modelo", neste contexto, refere-se a um conjunto eletrônico digitalmente armazenado de instruções executáveis e valores de dados, associados uns aos outros, que são capazes de receber e responder a uma chamada programática ou outra chamada digital, invocação ou solicitação para resolução com base em valores de entrada especificados, para produzir um ou mais valores de saída armazenados que podem servir como base de recomendações implementadas por computador, exibições de dados de saída, ou controle de máquina, entre outras coisas. Pessoas habilitadas no campo acham conveniente expressar modelos usando equações matemáticas, mas essa forma de expressão não limita os modelos aqui divulgados a conceitos abstratos; em vez disso, cada modelo aqui tem uma aplicação prática em um computador na forma de instruções executáveis armazenadas e dados que implementam o modelo usando o computador. O modelo pode incluir um modelo de eventos passados em um ou mais campos, um modelo do estado atual do um ou mais campos, e/ou um modelo de eventos previstos em um ou mais campos. Dados de modelo e campo podem ser armazenados em estruturas de dados na memória, linhas em uma tabela de banco de dados, em arquivos simples ou planilhas, ou outras formas de dados digitais armazenados.
[0028] O servidor de reconhecimento de doença e estimativa de rendimento 170 ("o servidor") compreende um conjunto de uma ou mais páginas da memória principal, como RAM, no sistema de inteligência agrícola 130, no qual foram executadas instruções executáveis e quando executadas fazem com que o sistema de computação de inteligência agrícola execute as funções ou operações descritas aqui com referência a esses módulos. Por exemplo, o componente de gerenciamento de modelo 176 pode compreender um conjunto de páginas na RAM que contêm instruções que, quando executadas, causam a execução das funções de modelagem de nutrientes aqui descritas. As instruções podem estar no código executável por máquina no conjunto de instruções de uma CPU e podem ter sido compiladas com base no código fonte escrito em JAVA, C, C ++, OBJECTIVE-C ou em qualquer outra linguagem ou ambiente de programação legível por humanos, sozinho ou em combinação com scripts em JAVASCRIPT, outras linguagens de script e outro texto de fonte de programação. O termo "páginas" pretende se referir amplamente a qualquer região na memória principal e a terminologia específica usada em um sistema pode variar dependendo da arquitetura da memória ou da arquitetura do processador. Em outra modalidade, cada um dos componentes no servidor 170 também pode representar um ou mais arquivos ou projetos de código-fonte que são armazenados digitalmente em um dispositivo de armazenamento em massa, como RAM não volátil ou armazenamento em disco, no sistema de inteligência agrícola 130 ou um sistema de repositório separado, que quando compilados ou interpretados causam a geração de instruções executáveis que, quando executadas, fazem com que o sistema de computação de inteligência agrícola execute as funções ou operações descritas aqui com referência a esses módulos. Em outras palavras, a figura do desenho pode representar a maneira pela qual os programadores ou desenvolvedores de software organizam e arranjam o código-fonte para compilação posterior em um executável, ou interpretação no código de bytes ou equivalente, para execução pelo sistema de inteligência agrícola 130.
[0029] A camada de hardware/virtualização 150 compreende uma ou mais unidades de processamento central (CPUs), controladores de memória e outros dispositivos, componentes ou elementos de um sistema de computador, como memória volátil ou não volátil, armazenamento não volátil, como disco, e dispositivos de E/S ou interfaces como ilustrado e descrito, por exemplo, em conexão com a Figura 4. A camada 150 também pode compreender instruções programadas que são configuradas para suportar virtualização, conteinerização ou outras tecnologias.
[0030] Para fins de ilustração de um exemplo claro, a Figura 1 mostra um número limitado de instâncias de certos elementos funcionais. No entanto, em outras modalidades, pode haver qualquer número de tais elementos. Por exemplo, as modalidades podem usar milhares ou milhões de diferentes dispositivos de computação móveis 104 associados a diferentes usuários. Além disso, o sistema 130 e/ou o computador servidor de dados externo 108 podem ser implementados usando dois ou mais processadores, núcleos, agrupamentos ou instâncias de máquinas físicas ou máquinas virtuais, configurados em uma localização discreta ou colocalizados com outros elementos em um centro de dados, instalação de computação compartilhada ou instalação de computação em nuvem.
2.2. VISÃO GERAL DO PROGRAMA DE APLICAÇÃO
[0031] Em uma modalidade, a implementação das funções descritas aqui usando um ou mais programas de computador ou outros elementos de software que são carregados e executados usando um ou mais computadores de uso geral farão com que os computadores de uso geral sejam configurados como uma determinada máquina ou como um computador que é especialmente adaptado para executar as funções descritas aqui. Além disso, cada um dos fluxogramas que são descritos aqui pode servir, sozinho ou em combinação com as descrições de processos e funções em prosa aqui, como algoritmos, planos ou direções que podem ser usados para programar um computador ou lógica para implementar as funções que são descritas. Em outras palavras, todo o texto em prosa aqui, e todas as figuras, juntos pretendem fornecer a divulgação de algoritmos, planos ou direções que são suficientes para permitir que uma pessoa qualificada possa programar um computador para executar as funções descritas aqui, em combinação com a habilidade e conhecimento de tal pessoa, dado o nível de habilidade que é apropriado para invenções e divulgações deste tipo.
[0032] Em uma modalidade, o usuário 102 interage com o sistema de computador de inteligência agrícola 130 utilizando o dispositivo de computação de gerenciador de campo 104 configurado com um sistema operacional e um ou mais programas de aplicação ou aplicações; o dispositivo de computação de gerenciador de campo 104 também pode interoperar com o sistema de computador de inteligência agrícola independentemente e automaticamente sob o controle de programa ou controle lógico e a interação de usuário direta nem sempre é necessária. O dispositivo de computação de gerenciador de campo 104 representa, em geral, um ou mais de um smartphone, PDA, dispositivo de computação tablet, laptop, computador de mesa, estação de trabalho, ou qualquer outro dispositivo de computação capaz de transmitir e receber informação e executar as funções aqui descritas. O dispositivo de computação de gerenciador de campo 104 pode comunicar através de uma rede utilizando uma aplicação móvel armazenada no dispositivo de computação de gerenciador de campo 104, e em algumas modalidades, o dispositivo pode ser acoplado utilizando um cabo 113 ou conector 112 e/ou controlador 114. O usuário particular 102 pode possuir, operar ou ter a posse e utilizar, em conexão com o sistema 130, mais do que um dispositivo de computação de gerenciador de campo 104 de cada vez.
[0033] A aplicação móvel pode fornecer funcionalidade de lado de cliente, através da rede para um ou mais dispositivos de computação móveis. Em uma modalidade exemplar, o dispositivo de computação de gerenciador de campo 104 pode acessar a aplicação móvel através de um navegador Web ou de uma aplicação ou app de cliente local. O dispositivo de computação de gerenciador de campo 104 pode transmitir dados para, e receber dados de um ou mais servidores de terminal frontal ("front-end"), utilizar protocolos ou formatos baseados na web como HTTP, XML e/ou JSON, ou protocolos específicos de app. Em uma modalidade exemplar, os dados podem tomar a forma de solicitações e entrada de informação de usuário, como dados de campo, no dispositivo de computação móvel. Em algumas modalidades, a aplicação móvel interage com o hardware e software de rastreamento de localização no dispositivo de computação de gerenciador de campo 104 que determina a localização do dispositivo de computação de gerenciador de campo 104 usando técnicas de rastreamento padrão, como multilateração de sinais de rádio, o sistema de posicionamento global (GPS), sistemas de posicionamento por Wi-Fi, ou outros métodos de posicionamento móvel. Em alguns casos, os dados de localização ou outros dados associados ao dispositivo 104, usuário 102 e/ou conta (s) de usuário podem ser obtidos por meio de consultas a um sistema operacional do dispositivo ou solicitando que um app no dispositivo obtenha dados a partir do sistema operacional.
[0034] Em uma modalidade, dispositivo de computação de gerenciador de campo 104 envia dados de campo 106 para sistema de computador de inteligência agrícola 130 compreendendo ou incluindo, mas não limitado a valores de dados representando um ou mais de: uma localização geográfica do um ou mais campos, informação de lavoura para um ou mais campos, culturas plantadas no um ou mais campos, e dados de solo extraídos do um ou mais campos. O dispositivo de informação de gerenciador de campo 104 pode enviar dados de campo 106 em resposta à entrada de usuário a partir do usuário 102 especificando os valores de dados para o um ou mais campos. Adicionalmente, o dispositivo de computação de gerenciador de campo 104 pode enviar automaticamente dados de campo 106 quando um ou mais dos valores de dados ficam disponíveis para o dispositivo de computação de gerenciador de campo 104. Por exemplo, o dispositivo de computação de gerenciador de campo 104 pode ser comunicativamente acoplado ao sensor remoto 112 e/ou controlador de aplicação 114. Em resposta à recepção de dados indicando que o controlador de aplicação 114 liberou água para o um ou mais campos, o dispositivo de computação de gerenciador de campo 104 pode enviar dados de campo 106 ao sistema de computador de inteligência agrícola 130 indicando que a água foi liberada no um ou mais campos. Dados de campo 106 identificados nesta divulgação podem ser introduzidos e comunicados usando dados digitais eletrônicos que são comunicados entre dispositivos de computação usando URLs parametrizadas sobre HTTP, ou outro protocolo de comunicações ou de mensagem adequado.
[0035] Um exemplo comercial da aplicação móvel é CLIMATE FIELD VIEW, disponível comercialmente pela The Climate Corporation, São Francisco, Califórnia. A aplicação CLIMATE FIELD VIEW, ou outras aplicações, podem ser modificadas, estendidas ou adaptadas para incluir recursos, funções e programação que não tenham sido divulgados antes da data de apresentação desta divulgação. Em uma modalidade, a aplicação móvel compreende uma plataforma de software integrada que permite a um produtor tomar decisões baseadas em fatos para a sua operação porque combina dados históricos sobre os campos do produtor com quaisquer outros dados que o produtor deseje comparar. As combinações e comparações podem ser realizadas em tempo real e são baseadas em modelos científicos que fornecem cenários potenciais para permitir que o produtor tome decisões melhores e mais informadas.
[0036] A Figura 2 ilustra duas vistas de uma organização lógica de exemplo de conjuntos de instruções na memória principal quando uma aplicação móvel de exemplo é carregada para execução. Na Figura 2, cada elemento nomeado representa uma região de uma ou mais páginas de RAM ou outra memória principal, ou um ou mais blocos de armazenamento em disco ou outro armazenamento não volátil, e as instruções programadas dentro dessas regiões. Em uma modalidade, na vista (a), uma aplicação de computador móvel 200 compreende instruções de compartilhamento de ingestão de dados de campos de conta 202, instruções de visão geral e alerta 204, instruções de livro de mapa digitais 206, instruções de sementes e plantio 208, instruções de nitrogênio 210, instruções de condições meteorológicas 212, instruções de saúde de campo 214 e instruções de desempenho 216.
[0037] Em uma modalidade, uma aplicação de computador móvel 200 compreende instruções de compartilhamento de ingestão de dados de campos de conta 202 que são programadas para receber, traduzir e ingerir dados de campo a partir de sistemas de terceiros via carregamento manual ou APIs. Os tipos de dados podem incluir fronteiras de campo, mapas de rendimento, mapas como plantado, resultados de testes de solo, mapas como aplicado e/ou zonas de gerenciamento, entre outros. Os formatos de dados podem incluir arquivos de forma, formatos de dados nativos de terceiros, e/ou exportações de sistema de informação de gerenciamento de fazenda (FMIS), entre outros. A recepção de dados pode ocorrer por meio de carregamento manual, e-mail com anexo, APIs externas que enviam dados à aplicação móvel ou instruções que chamam APIs de sistemas externos para extrair dados para a aplicação móvel. Em uma modalidade, a aplicação de computador móvel 200 compreende uma caixa de entrada de dados. Em resposta à recepção de uma seleção da caixa de entrada de dados, a aplicação de computador móvel 200 pode exibir uma interface gráfica de usuário para fazer o carregamento manual de arquivos de dados e importar arquivos enviados para um gerenciador de dados.
[0038] Em uma modalidade, as instruções de livro de mapa digitais 206 compreendem camadas de dados de mapa de campo armazenadas na memória de dispositivo e são programadas com ferramentas de visualização de dados e notas de campo geoespaciais. Isso fornece aos produtores informação conveniente à mão para referência, registros e sugestões visuais para desempenho do campo. Em uma modalidade, instruções de visão geral e de alerta 204 são programadas para fornecer uma visão de toda a operação do que é importante para o produtor, e recomendações atempadas para agir ou focar em questões específicas. Isso permite que o produtor concentre o tempo no que precisa de atenção, para economizar tempo e preservar o rendimento durante toda a estação. Em uma modalidade, instruções de sementes e plantio 208 são programadas para fornecer ferramentas para seleção de sementes, colocação híbrida, e criação de script, incluindo criação de script de taxa variável (VR), com base em modelos científicos e dados empíricos. Isso permite que os produtores maximizem o rendimento ou o retorno do investimento por meio da compra, colocação e população de sementes otimizadas.
[0039] Em uma modalidade, as instruções de geração de script 205 são programadas para fornecer uma interface para gerar scripts, incluindo scripts de fertilidade de taxa variável (VR). A interface permite que os produtores criem scripts para implementos de campo, como aplicações de nutrientes, plantio e irrigação. Por exemplo, uma interface de script de plantio pode compreender ferramentas para identificar um tipo de semente para plantio. Ao receber uma seleção do tipo de semente, a aplicação de computador móvel 200 pode exibir um ou mais campos divididos em zonas de gerenciamento, como as camadas de dados de mapa de campo criadas como parte das instruções de livro de mapa digitais 206. Em uma modalidade, as zonas de gestão compreendem zonas de solo juntamente com um painel identificando cada zona de solo e um nome de solo, textura, drenagem para cada zona, ou outros dados de campo. A aplicação de computador móvel 200 também pode exibir ferramentas para edição ou criação de tais, como ferramentas gráficas para desenhar zonas de gerenciamento, como zonas de solo, sobre um mapa de um ou mais campos. Os procedimentos de plantio podem ser aplicados a todas as zonas de gerenciamento ou diferentes procedimentos de plantio podem ser aplicados a diferentes subconjuntos de zonas de gerenciamento. Quando um script é criado, a aplicação de computador móvel 200 pode disponibilizar o script para descarregamento em um formato legível por um controlador de aplicação, como um formato arquivado ou compactado. Adicionalmente e/ou alternativamente, um script pode ser enviado diretamente para o computador de cabine 115 a partir da aplicação de computador móvel 200 e/ou carregado para um ou mais servidores de dados e armazenado para uso adicional.
[0040] Em uma modalidade, as instruções de nitrogênio 210 são programadas para fornecer ferramentas para informar as decisões de nitrogênio visualizando a disponibilidade de nitrogênio nas culturas. Isso permite que os produtores maximizem o rendimento ou o retorno do investimento por meio da aplicação de nitrogênio otimizada durante a estação. Exemplos de funções programadas incluem a exibição de imagens como imagens SSURGO para permitir o desenho de zonas de aplicação e/ou imagens geradas a partir de dados de solo de subcampo, como dados obtidos de sensores, em alta resolução espacial (tão alta quanto 10 metros ou menor devido a sua proximidade para o solo); carregamento de zonas definidas pelo produtor existente; fornecer um gráfico de aplicação e/ou um mapa para permitir aplicação (ões) de sintonia de nitrogênio através de múltiplas zonas; saída de scripts para acionar máquinas; ferramentas para entrada e ajuste de dados em massa; e/ou mapas para visualização de dados, entre outros. "Entrada de dados em massa", neste contexto, pode significar inserir dados uma vez e, em seguida, aplicar os mesmos dados a vários campos que foram definidos no sistema; exemplos de dados podem incluir dados de aplicação de nitrogênio que são os mesmos para muitos campos do mesmo produtor, mas tal entrada de dados em massa se aplica à entrada de qualquer tipo de dados de campo na aplicação de computador móvel 200. Por exemplo, instruções de nitrogênio 210 podem ser programadas aceitar definições de programas de plantio e práticas de nitrogênio e aceitar entrada de usuário especificando para aplicar esses programas em vários campos. "Programas de plantio de nitrogênio", neste contexto, referem-se a um conjunto armazenado e nominado de dados que associa: um nome, código de cor ou outro identificador, uma ou mais datas de aplicação, tipos de material ou produto para cada uma das datas e quantidades, método de aplicação ou incorporação, tal como injetado ou facetado, e/ou quantidades ou taxas de aplicação para cada uma das datas, cultura ou híbrido que é o objeto do pedido, entre outros. "Programas de práticas de nitrogênio", neste contexto, referem-se a um conjunto armazenado e nominado de dados que associa: um nome de práticas; uma cultura anterior; um sistema de lavoura; uma data de principalmente lavoura; um ou mais sistemas de lavoura anteriores que foram usados; um ou mais indicadores do tipo de aplicação, como estrume, que foram usados. As instruções de nitrogênio 210 também podem ser programadas para gerar e causar a exibição de um gráfico de nitrogênio, o qual indica projeções de utilização de plantas do nitrogênio especificado e se é previsto um excedente ou déficit; em algumas modalidades, diferentes indicadores de cor podem sinalizar uma magnitude do excedente ou magnitude do déficit. Em uma modalidade, um gráfico de nitrogênio compreende uma exibição gráfica em um dispositivo de exibição de computador compreendendo uma pluralidade de linhas, cada linha associada e identificando um campo; dados especificando qual cultura é plantada no campo, o tamanho do campo, a localização do campo, e uma representação gráfica do perímetro do campo; em cada linha, uma linha do tempo por mês com indicadores gráficos especificando cada aplicação de nitrogênio e quantidade em pontos correlacionados aos nomes dos meses; e indicadores numéricos e/ou coloridos de excedentes ou déficits, nos quais a cor indica magnitude.
[0041] Em uma modalidade, o gráfico de nitrogênio pode incluir um ou mais recursos de entrada de usuário, como mostradores ou barras deslizantes, para alterar dinamicamente os programas de plantio e práticas de nitrogênio de modo que um usuário possa otimizar seu gráfico de nitrogênio. O usuário pode então usar seu gráfico de nitrogênio otimizado e os programas de plantio e práticas de nitrogênio relacionados para implementar um ou mais scripts, incluindo scripts de fertilidade de taxa variável (RV). As instruções de nitrogênio 210 também podem ser programadas para gerar e causar a exibição de um mapa de nitrogênio, o que indica projeções do uso de planta do nitrogênio especificado e, se um excedente ou déficit é previsto; em algumas modalidades, diferentes indicadores de cor podem sinalizar uma magnitude do excedente ou magnitude do déficit. O mapa de nitrogênio pode exibir projeções de uso de planta do nitrogênio especificado e, se um excedente ou déficit é previsto para diferentes tempos no passado e no futuro (como diário, semanal, mensal ou anual) usando indicadores numéricos e/ou coloridos de excedente ou déficit, em que a cor indica magnitude. Em uma modalidade, o mapa de nitrogênio pode incluir um ou mais recursos de entrada de usuário, como mostradores ou barras deslizantes, para alterar dinamicamente os programas de plantio e práticas de nitrogênio de modo que um usuário possa otimizar seu mapa de nitrogênio, bem como para obter uma quantidade preferida de excedente para déficit. O usuário pode então usar seu mapa de nitrogênio otimizado e os programas de plantio e práticas de nitrogênio relacionados para implementar um ou mais scripts, incluindo scripts de fertilidade de taxa variável (RV) . Em outras modalidades, instruções semelhantes às instruções de nitrogênio 210 podem ser utilizadas para aplicação de outros nutrientes (tais como fósforo e potássio) aplicação de pesticidas, e programas de irrigação.
[0042] Em uma modalidade, as instruções meteorológicas 212 são programadas para fornecer dados meteorológicos recentes específicos de campo e informações meteorológicas previstas. Isso permite que os produtores economizem tempo e tenham uma exibição integrada eficiente em relação às decisões operacionais diárias.
[0043] Em uma modalidade, as instruções de saúde de campo 214 são programadas para fornecer imagens de sensoriamento remoto atempadas destacando a variação de cultura na estação e preocupações potenciais. Exemplos de funções programadas incluem verificação de nuvens, para identificar possíveis nuvens ou sombras de nuvens; determinação de índices de nitrogênio com base em imagens de campo; visualização gráfica de camadas de reconhecimento, incluindo, por exemplo, aquelas relacionadas à saúde de campo, e visualização e/ou compartilhamento de notas de reconhecimento; e/ou descarregar imagens de satélite a partir de múltiplas fontes e priorizar as imagens para o produtor, entre outros.
[0044] Em uma modalidade, as instruções de desempenho 216 são programadas para fornecer relatórios, análise e ferramentas de sugestões usando dados na fazenda para avaliação, sugestões e decisões. Isso permite que o produtor busque melhores resultados para o próximo ano, por meio de conclusões baseadas em fatos sobre o motivo pelo qual o retorno sobre o investimento ocorreu em níveis anteriores, e uma sugestão para fatores limitantes do rendimento. As instruções de desempenho 216 podem ser programadas para comunicar através da (s) rede (s) 10 9 a programas analíticos de terminal posterior("back-end") executados no sistema de computador de inteligência agrícola 130 e/ou computador servidor de dados externo 108 e configurados para analisar métricas como rendimento, híbrido, população, SSURGO, testes de solo, ou elevação, entre outros. Relatórios e análises programados podem incluir análises de variabilidade de rendimento, avaliação comparativa de rendimento e outras métricas contra outros produtores com base em dados anônimos coletados a partir de muitos produtores, ou dados para sementes e plantio, entre outros.
[0045] Aplicações tendo instruções configuradas desta forma podem ser implementadas para diferentes plataformas de dispositivos de computação mantendo a mesma aparência de interface de usuário geral. Por exemplo, a aplicação móvel pode ser programada para execução em tablets, smartphones ou computadores servidores que são acessados usando navegadores em computadores clientes. Além disso, a aplicação móvel, conforme configurada para computadores tablet ou smartphones, pode fornecer uma experiência de app completa ou uma experiência de app de cabine que seja adequada para as capacidades de exibição e processamento do computador de cabine 115. Por exemplo, consulte agora a vista (b) da Figura 2, em uma modalidade, uma aplicação de computador de cabine 220 pode compreender instruções de cabine de mapas 222, instruções de visualização remota 224, instruções de coleta e transferência de dados 226, instruções de alertas de máquina 228, instruções de transferência de script 230, e instruções de cabine de reconhecimento 232. A base de código para as instruções de vista (b) pode ser a mesma que para vista (a) e executáveis implementando o código podem ser programados para detectar o tipo de plataforma na qual eles estão executando e expor, através de uma interface gráfica de usuário, apenas aquelas funções que são apropriados para uma plataforma de cabine ou plataforma completa. Essa abordagem permite que o sistema reconheça a experiência de usuário distintamente diferente que é apropriada para um ambiente dentro de cabine e o ambiente de tecnologia diferente da cabine. As instruções de cabine de mapas 222 podem ser programadas para fornecer vistas de mapa de campos, fazendas ou regiões que são úteis no direcionamento da operação de máquina. As instruções de visualização remota 224 podem ser programadas para ligar, gerenciar e fornecer visualizações da atividade da máquina em tempo real ou quase em tempo real para outros dispositivos de computação conectados ao sistema 130 por meio de redes sem fio, conectores ou adaptadores com fio, e semelhantes. As instruções de coleta e transferência de dados 226 podem ser programadas para ligar, gerir e fornecer a transferência de dados coletados nos sensores e controladores para o sistema 130 através de redes sem fio, conectores ou adaptadores com fio e semelhantes. As instruções de alerta de máquina 228 podem ser programadas para detectar problemas com as operações da máquina ou ferramentas que estão associadas à cabine e gerar alertas de operador. As instruções de transferência de script 230 podem ser configuradas para transferir para dentro scripts de instruções que são configurados para direcionar as operações de máquina ou a coleta de dados. As instruções de cabine de reconhecimento 230 podem ser programadas para exibir alertas com base em localização e informação recebida a partir do sistema 130 com base na localização do aparelho agrícola 111 ou sensores 112 no campo e ingerir, gerenciar e fornecer transferência de observações de reconhecimento com base em localização ao sistema 130 com base na localização do aparelho agrícola 111 ou sensores 112 no campo.
2.3. INGESTÃO DE DADOS DO SISTEMA DE COMPUTADOR
[0046] Em uma modalidade, o computador servidor de dados externo 108 armazena dados externos 110, incluindo dados de solo que representam a composição do solo para um ou mais campos e dados meteorológicos que representam temperatura e precipitação no um ou mais campos. Os dados meteorológicos podem incluir dados meteorológicos passados e presentes, bem como previsões para dados meteorológicos futuros. Em uma modalidade, o computador servidor de dados externo 108 compreende uma pluralidade de servidores hospedados por entidades diferentes. Por exemplo, um primeiro servidor pode conter dados de composição de solo, enquanto um segundo servidor pode incluir dados meteorológicos. Além disso, os dados de composição de solo podem ser armazenados em vários servidores. Por exemplo, um servidor pode armazenar dados representando a porcentagem de areia, silte e argila no solo, enquanto um segundo servidor pode armazenar dados representando a porcentagem de matéria orgânica (OM) no solo.
[0047] Em uma modalidade, o sensor remoto 112 compreende um ou mais sensores que são programados ou configurados para produzir uma ou mais observações. O sensor remoto 112 pode ser sensores aéreos, tais como satélites, sensores veiculares, sensores de equipamentos de plantio, sensores de lavoura, sensores de aplicação de fertilizantes ou inseticidas, sensores de colheitadeira e qualquer outro implemento capaz de receber dados de um ou mais campos. Em uma modalidade, o controlador de aplicação 114 é programado ou configurado para receber instruções a partir do sistema de computador de inteligência agrícola 130. O controlador de aplicação 114 pode também ser programado ou configurado para controlar um parâmetro operacional de um veículo ou implemento agrícola. Por exemplo, um controlador de aplicação pode ser programado ou configurado para controlar um parâmetro operacional de um veículo, como um trator, equipamento de plantio, equipamento de lavoura, equipamento fertilizante ou inseticida, equipamento de colheitadeira, ou outros implementos agrícolas, como uma válvula de água. Outras modalidades podem utilizar qualquer combinação de sensores e controladores, dos quais os seguintes são meramente exemplos selecionados.
[0048] O sistema 130 pode obter ou ingerir dados sob o controle do usuário 102, em uma base de massa de um grande número de produtores que contribuíram com dados para um sistema de banco de dados compartilhado. Essa forma de obtenção de dados pode ser denominada "ingestão de dados manual", pois uma ou mais operações de computador controladas pelo usuário são solicitadas ou acionadas para obter dados para uso pelo sistema 130. Como exemplo, a aplicação CLIMATE FIELDVIEW, disponível comercialmente pela The Climate Corporation, San Francisco, Califórnia, pode ser operada para exportar dados ao sistema 130 para armazenamento no repositório 160.
[0049] Por exemplo, os sistemas de monitoramento de sementes podem tanto controlar componentes de aparelho plantador quanto obter dados de plantio, incluindo sinais a partir de sensores de sementes via um cabeamento de sinal que compreende um backbone CAN e conexões ponto-a-ponto para registro e/ou diagnósticos. Os sistemas de monitor de sementes podem ser programados ou configurados para exibir espaçamento de sementes, população e outras informações ao usuário através do computador de cabine 115 ou outros dispositivos dentro do sistema 130. Os exemplos são divulgados na Patente dos EUA No. 8.738.243 e Publicação de Patente dos EUA No. 20150094916, e a presente divulgação pressupõe conhecimento dessas outras divulgações de patentes.
[0050] Da mesma forma, sistemas de monitor de rendimento podem conter sensores de rendimento para aparelhos de colheitadeira que enviam dados de medição de rendimento para o computador de cabine 115 ou outros dispositivos dentro do sistema 130. Os sistemas de monitor de rendimento podem utilizar um ou mais sensores remotos 112 para obter medições de umidade de grãos em uma ceifeira ou outra colheitadeira e transmitir estas medições para o usuário através de computador de cabine 115 ou outros dispositivos dentro do sistema 130.
[0051] Em uma modalidade, exemplos de sensores 112 que podem ser usados com qualquer veículo ou aparelho em movimento do tipo descrito em outro local incluem sensores cinemáticos e sensores de posição. Os sensores cinemáticos podem incluir qualquer um dos sensores de velocidade, como sensores de velocidade de roda ou radar, acelerômetros ou giroscópios. Os sensores de posição podem incluir receptores ou transceptores de GPS, ou apps de mapeamento ou posição baseados em Wi-Fi que são programados para determinar a localização com base em pontos de acesso Wi-Fi próximos, entre outros.
[0052] Em uma modalidade, exemplos de sensores 112 que podem ser usados com tratores ou outros veículos em movimento incluem sensores de velocidade de motor, sensores de consumo de combustível, contadores de área ou contadores de distância que interagem com sinais de GPS ou radar, sensores de velocidade de PTO (tomada de força), sensores hidráulicos de trator configurados para detectar parâmetros hidráulicos, como pressão ou fluxo, e/ou velocidade de bomba hidráulica, sensores de velocidade de roda ou sensores de deslizamento de roda. Em uma modalidade, exemplos de controladores 114 que podem ser usados com tratores incluem controladores direcionais hidráulicos, controladores de pressão, e/ou controladores de fluxo; controladores de velocidade de bomba hidráulica; controladores ou governadores de velocidade; controladores de posição de engate; ou controladores de posição de roda fornecem direcionamento automático.
[0053] Em uma modalidade, exemplos de sensores 112 que podem ser usados com equipamentos de plantio de sementes tais como plantadeiras, brocas ou semeadoras de ar incluem sensores de sementes, que podem ser sensores óticos, eletromagnéticos ou de impacto; sensores de força descendente, como pinos de carga, células de carga, sensores de pressão; sensores de propriedade de solo, como sensores de refletividade, sensores de umidade, sensores de condutividade elétrica, sensores de resíduos óticos ou sensores de temperatura; sensores de critérios operacionais de componentes, tais como sensores de profundidade de plantio, sensores de pressão de cilindro de força descendente, sensores de velocidade de disco de sementes, codificadores de motor de acionamento de sementes, sensores de velocidade de sistema de transportador de sementes ou sensores de nível de vácuo; ou sensores de aplicação de pesticidas, como sensores óticos ou outros sensores eletromagnéticos, ou sensores de impacto. Em uma modalidade, exemplos de controladores 114 que podem ser usados com tal equipamento de plantio de sementes incluem: controladores de dobra de barra de ferramentas ("toolbar fold"), tais como controladores para válvulas associadas com cilindros hidráulicos; controladores de força descendente, como controladores para válvulas associadas a cilindros pneumáticos, airbags ou cilindros hidráulicos, e programados para aplicar força descendente a unidades de linha individuais ou uma estrutura de plantadeira inteira; controladores de profundidade de plantio, como atuadores lineares; controladores de medição, tais como motores de acionamento de medidor de sementes elétricos, motores de acionamento de medidor de sementes hidráulicos, ou embreagens de controle de faixa; controladores de seleção híbridos, tais como motores de acionamento de medidor de sementes, ou outros atuadores programados para permitir ou impedir seletivamente que a semente ou uma mistura de ar-semente distribua sementes para ou a partir de medidores de sementes ou tremonhas a granel centrais; controladores de medição, tais como motores de acionamento de medidor de sementes elétricos ou motores de acionamento de medidor de sementes hidráulicos; controladores de sistema de transportador de sementes, tais como controladores para um motor de transportador de entrega de sementes de correia; controladores de marcadores, como um controlador para um atuador pneumático ou hidráulico; ou controladores de taxa de aplicação de pesticidas, como controladores de acionamento de medição, controladores de tamanho ou posição de orifício.
[0054] Em uma modalidade, exemplos de sensores 112 que podem ser usados com equipamento de lavoura incluem sensores de posição para ferramentas tais como hastes ou discos; sensores de posição de ferramenta para tais ferramentas que são configurados para detectar profundidade, ângulo de gangue ou espaçamento lateral; sensores de força descendente; ou sensores de força de tração. Em uma modalidade, exemplos de controladores 114 que podem ser usados com equipamento de lavoura incluem controladores de força descendente ou controladores de posição de ferramenta, tais como controladores configurados para controlar a profundidade da ferramenta, ângulo de gangue ou espaçamento lateral.
[0055] Em uma modalidade, exemplos de sensores 112 que podem ser utilizados em relação a aparelhos para aplicação de fertilizantes, inseticidas, fungicidas e semelhantes, tais como sistemas de fertilizante de iniciador na plantadeira, aplicadores de fertilizantes de subsolo, ou pulverizadores de fertilizantes, incluem: sensores de critérios de sistema de fluido, como sensores de fluxo ou sensores de pressão; sensores que indicam quais as válvulas de cabeça de pulverização ou válvulas de linha de fluido estão abertas; sensores associados a tanques, como sensores de nível de enchimento; sensores de linha de abastecimento seccionais ou em todo o sistema, ou sensores de linha de abastecimento específicos de linha; ou sensores cinemáticos, como acelerômetros dispostos em barras de pulverização. Em uma modalidade, exemplos de controladores 114 que podem ser utilizados com esse aparelho incluem controladores de velocidade da bomba; controladores de válvulas que são programados para controlar a pressão, fluxo, direção, PWM e semelhantes; ou atuadores de posição, como a altura de barra, profundidade de subsolador, ou a posição de barra.
[0056] Em uma modalidade, exemplos de sensores 112 que podem ser usados com colheitadeiras incluem monitores de rendimento, tais como medidores de tensão de placa de impacto ou sensores de posição, sensores de fluxo capacitivos, sensores de carga, sensores de peso, ou sensores de torque associados a elevadores ou trados, ou sensores óticos de altura de grãos ou outros eletromagnéticos; sensores de umidade de grãos, como sensores capacitivos; sensores de perda de grãos, incluindo sensores de impacto, óticos ou capacitivos; sensores de critérios de operação de travessão, como altura de travessão, tipo de travessão, distância de placa de deck, velocidade de alimentador e sensores de velocidade de bobina; sensores de critérios de operação de separador, como a folga côncava, a velocidade de rotor, a folga de sapata ou os sensores de folga de amortecedor; sensores de trado para posição, operação, ou velocidade; ou sensores de velocidade de motor. Em uma modalidade, exemplos de controladores 114 que podem ser utilizados com colheitadeiras incluem controladores de critérios operacionais de travessão para elementos tais como altura de travessão, tipo de travessão, lacuna de placa de plataforma, velocidade de alimentador ou velocidade de bobina; controladores de critérios de operação de separador para recursos como folga côncava, velocidade de rotor, folga de sapata ou folga amortecedor; ou controladores para posição, operação ou velocidade de trado.
[0057] Em uma modalidade, exemplos de sensores 112 que podem ser usados com carrinhos de grãos incluem sensores de peso, ou sensores para posição, operação ou velocidade de trado. Em uma modalidade, exemplos de controladores 114 que podem ser usados com carrinhos de grãos incluem controladores para posição, operação ou velocidade de trado.
[0058] Em uma modalidade, exemplos de sensores 112 e controladores 114 podem ser instalados em aparelhos de veículos aéreos não tripulados (UAV) ou "drones". Tais sensores podem incluir câmaras com detectores eficazes para qualquer intervalo do espectro eletromagnético incluindo luz visível, infravermelha, ultravioleta, quase infravermelha (NIR) e semelhantes; acelerômetros; altímetros; sensores de temperatura; sensores de umidade; sensores de tubo de pitot ou outros sensores de velocidade ou velocidade de ar; sensores de vida de bateria; ou emissores de radar e aparelhos de detecção de energia de radar refletida. Tais controladores podem incluir aparelhos de orientação ou controle de motor, controladores de superfície de controle, controladores de câmera, ou controladores programados para ligar, operar, obter dados, gerenciar e configurar qualquer um dos sensores anteriores. Exemplos são divulgados no Pedido de Patente dos EUA No. 14/831.165 e a presente divulgação assume o conhecimento dessa outra divulgação de patente.
[0059] Em uma modalidade, os sensores 112 e controladores 114 podem ser afixados ao aparelho de amostragem e medição de solo que é configurado ou programado para amostrar o solo e realizar testes químicos do solo, testes de umidade de solo, e outros testes relativos ao solo. Por exemplo, o aparelho divulgado na Patente dos EUA No. 8.767.194 e Patente dos EUA No. 8.712.148 pode ser usado, e a presente divulgação pressupõe conhecimento dessas divulgações de patente.
[0060] Em uma modalidade, os sensores 112 e controladores 114 podem compreender dispositivos climáticos para monitorar as condições climáticas dos campos. Por exemplo, o aparelho divulgado no Pedido Provisório dos EUA 62/154.207, depositado em 29 de abril de 2015, Pedido Provisório dos EUA 62/175.160, depositado em 12 de junho de 2015, Pedido Provisório dos EUA 62/198.060, depositado em 28 de julho de 2015, e o Pedido Provisório dos EUA No. 62/220.852, depositado em 18 de setembro de 2015, podem ser utilizados, e a presente divulgação pressupõe conhecimento dessas divulgações de patentes.
2.4 VISÃO GERAL DO PROCESSO - TREINAMENTO DE MODELO AGRONÔMICO
[0061] Em uma modalidade, o sistema de computador de inteligência agrícola 130 é programado ou configurado para criar um modelo agronômico. Neste contexto, um modelo agronômico é uma estrutura de dados em memória do sistema de computador de inteligência agrícola 130 que compreende dados de campo 106, tais como dados de identificação e dados de colheita para um ou mais campos. O modelo agronômico pode também compreender propriedades agronômicas calculadas que descrevem ou condições que podem afetar o crescimento de uma ou mais culturas em um campo, ou propriedades da uma ou mais culturas, ou ambas. Além disso, um modelo agronômico pode incluir recomendações baseadas em fatores agronômicos, como recomendações de culturas, recomendações de irrigação, recomendações de plantio e recomendações de colheita. Os fatores agronômicos também podem ser usados para estimar um ou mais resultados relacionados a cultura tal como rendimento agronômico. O rendimento agronômico de uma cultura é uma estimativa da quantidade da cultura que é produzida ou, em alguns exemplos, a receita ou lucro obtido a partir da cultura produzida.
[0062] Em uma modalidade, o sistema de computador de inteligência agrícola 130 pode usar um modelo agronômico pré-configurado para calcular as propriedades agronômicas relacionadas com a localização atualmente recebida e informação de cultura para um ou mais campos. O modelo agronômico pré-configurado é baseado em dados de campo previamente processados, incluindo, mas não se limitando a, dados de identificação, dados de colheita, dados de fertilizantes, e dados meteorológicos. O modelo agronômico pré-configurado pode ter sido validado transversalmente para garantir a precisão do modelo. A validação cruzada pode incluir a comparação com a realidade do solo que compara resultados previstos com resultados reais em um campo, tal como uma comparação da estimativa de precipitação com um pluviômetro ou sensor fornecendo dados meteorológicos no mesmo local ou próximo ou uma estimativa do conteúdo de nitrogênio com uma medição de amostra de solo.
[0063] A Figura 3 ilustra um processo programado através do qual o sistema de computador de inteligência agrícola gera um ou mais modelos agronômicos pré-configurados utilizando dados de campo fornecidos por uma ou mais fontes de dados. A Figura 3 pode servir como um algoritmo ou instruções para programar os elementos funcionais do sistema de computador de inteligência agrícola 130 para realizar as operações que são agora descritas.
[0064] No bloco 305, o sistema de computador de inteligência agrícola 130 é configurado ou programado para implementar pré-processamento de dados agronômicos de dados de campo recebidos de uma ou mais fontes de dados. Os dados de campo recebidos de uma ou mais fontes de dados podem ser pré-processados com a finalidade de remover o ruído e efeitos de distorção dentro dos dados agronômicos incluindo discrepâncias medidas que distorceriam os valores de dados de campo recebidos. Modalidades de pré-processamento de dados agronômicos podem incluir, mas não estão limitadas a remover valores de dados comumente associados a valores de dados de discrepância, pontos de dados medidos específicos que são conhecidos por distorcer desnecessariamente outros valores de dados, técnicas de suavização de dados usadas para remover ou reduzir efeitos aditivos ou multiplicativos a partir de ruído, e outras técnicas de filtragem ou derivação de dados usadas para fornecer distinções claras entre entradas de dados positivas e negativas.
[0065] No bloco 310, o sistema de computador de inteligência agrícola 130 é configurado ou programado para realizar a seleção de subconjunto de dados usando os dados de campo pré-processados a fim de identificar conjuntos de dados úteis para a geração de modelo agronômico inicial. O sistema de computador de inteligência agrícola 130 pode implementar técnicas de seleção de subconjuntos de dados incluindo, mas não limitado a um método de algoritmo genético, um método de modelos de todos os subconjuntos, um método de pesquisa sequencial, um método de regressão escalonado, um método de otimização de enxame de partículas e um método de otimização de colônia de formigas. Por exemplo, uma técnica de seleção de algoritmo genético usa um algoritmo de busca heurística adaptativa, com base em princípios evolutivos de seleção natural e genética, para determinar e avaliar conjuntos de dados dentro dos dados agronômicos pré-processados.
[0066] No bloco 315, o sistema de computador de inteligência agrícola 130 é configurado ou programado para implementar a avaliação de conjunto de dados de campo. Em uma modalidade, um conjunto de dados de campo específico é avaliado através da criação de um modelo agronômico e utilizando limiares de qualidade específicos para o modelo agronômico criado. Modelos agronômicos podem ser comparados usando técnicas de validação cruzada incluindo, mas não se limitando a, erro quadrático médio de validação cruzada de deixar-um-fora (RMSECV), erro absoluto médio, e erro percentual médio. Por exemplo, RMSECV pode realizar validação cruzada de modelos agronômicos comparando valores de propriedades agronômicas preditos criados pelo modelo agronômico com os valores de propriedades agronômicas de histórico coletados e analisados. Em uma modalidade, a lógica de avaliação de conjunto de dados agronômicos é utilizada como um circuito de retorno em que conjuntos de dados agronômicos que não atendem a limiares de qualidade configurados são usados durante etapas de seleção de subconjunto de dados futuros (bloco 310).
[0067] No bloco 320, o sistema de computador de inteligência agrícola 130 é configurado ou programado para implementar a criação de modelos agronômicos com base nos conjuntos de dados agronômicos com validação cruzada. Em uma modalidade, a criação de modelos agronômicos pode implementar técnicas de regressão multivariadas para criar modelos de dados agronômicos pré-configurados.
[0068] No bloco 325, o sistema de computador de inteligência agrícola 130 é configurado ou programado para armazenar os modelos de dados agronômicos pré-configurados para avaliação futura de dados de campo.
2.5 RECONHECIMENTO DE DOENÇA E ESTIMATIVA DE RENDIMENTO
[0069] Em algumas modalidades, o sistema de computador de inteligência agrícola 130 inclui um servidor de reconhecimento de doença e estimativa de rendimento ("o servidor") 170. O servidor 170 compreende um componente de gerenciamento de conta 172, uma interface de dispositivo móvel 174, um componente de gerenciamento de modelo 176 e um componente de gerenciamento de aplicação 178.
[0070] Em algumas modalidades, o componente de gerenciamento de conta 172 é programado para manter contas correspondentes a usuários ou computadores clientes. Os dados gerados pelo servidor ou por um computador cliente para uma conta podem ser armazenados na conta e disponibilizados a qualquer usuário que tenha acesso à conta. O componente de gerenciamento de modelo 176 é programado para criar e atualizar um primeiro modelo ou técnica para reconhecer doenças e tipos de culturas como conjuntos de instruções executáveis por computador. O primeiro modelo geralmente aceita uma imagem como entrada e produz uma identificação de uma doença ou tipo de cultura e informações relacionadas como saída. O componente de gerenciamento de modelo 176 também é programado para criar e atualizar um segundo modelo ou técnica para estimar o rendimento de uma cultura e de um campo de cultura como conjuntos de instruções executáveis por computador. O segundo modelo geralmente aceita uma imagem como entrada e produz uma quantidade de rendimento para a colheita e uma quantidade de rendimento correspondente para um campo de cultura.
[0071] Em algumas modalidades, o componente de gerenciamento de aplicação 178 é programado para criar e atualizar um programa de computador com instruções executáveis por computador, como uma aplicação móvel, que permite que um computador cliente gerencie um processo de avaliação de campo de cultura. O programa de computador pode gerenciar uma interface gráfica de usuário ("GUI") acoplada a um mecanismo de terminal posterior para processar dados de entrada e saída associados à GUI. O mecanismo de terminal posterior poderia invocar o primeiro modelo para reconhecer doenças e tipos de culturas ou o segundo modelo para estimar o rendimento de uma cultura. A interface de dispositivo móvel 174 é configurada para se comunicar com um computador cliente através de uma rede de comunicação, através da camada de comunicação 132. A comunicação pode incluir receber uma solicitação para o programa de computador de um computador cliente, transmitir o programa para um computador cliente, receber dados de conta a partir de um computador cliente, ou enviar dados de conta para um computador cliente. Os dados de conta podem incluir dados fornecidos por um usuário de um computador cliente ou gerados automaticamente por um computador cliente.
[0072] A Figura 7 ilustra exemplos de componentes de um computador cliente. O computador cliente 700 pode ser um dispositivo de computação de gerenciador de campo 104, um computador de cabine 115 ou qualquer outro dispositivo móvel. O computador cliente 700 pode ser um dispositivo integrado que inclui um dispositivo de captura de imagem, como uma câmera, ou um dispositivo de exibição, como uma tela. O computador cliente também pode se comunicar com dispositivos externos de captura ou exibição de imagens por meio de seus recursos de rede.
[0073] Em algumas modalidades, o computador cliente 700 pode armazenar uma aplicação de análise de cultura 710, que pode ser o programa de computador desenvolvido e recebido a partir do servidor. O computador cliente ou a aplicação de análise de cultura 710 pode compreender uma interface de servidor 702, um componente de gerenciamento de doença 704, um componente de estimativa de rendimento 706 e uma interface de usuário 708. A interface de servidor 702 é programada para se comunicar com o servidor através de uma rede de comunicação, como uma rede celular. A comunicação pode incluir o envio de uma solicitação para um programa de computador que permita ao computador cliente gerenciar um processo de avaliação de campo de cultura para o servidor, receber o programa de computador do servidor, enviar dados de conta, como dados fornecidos por um usuário ou gerados automaticamente pelo computador cliente, para o servidor, ou receber dados de conta, como dados fornecidos anteriormente por um usuário, a partir do servidor. A interface de usuário 7 08 é programada para gerenciar uma GUI que permite ao usuário capturar o ambiente em um fluxo de imagens, coordenar com o componente de gerenciamento de doença 704 e o componente de estimativa de rendimento 706 que analisa as imagens e exibe os resultados da análise. O componente de gerenciamento de doença 704 é configurado para reconhecer doenças predeterminadas ou tipos de culturas a partir das imagens. O componente de estimativa de rendimento 706 é programado para calcular um rendimento de uma cultura, como uma contagem de grãos para uma espiga de milho e calcular ainda um rendimento de colheita em um campo de cultura.
[0074] Em algumas modalidades, o computador cliente 700 pode ainda compreender um armazenamento de dados de aplicação 750, incluindo um banco de dados 720, para armazenar dados associados à aplicação de análise de cultura 710. Os dados armazenados no armazenamento de aplicação 750 podem incluir alguns dados originalmente armazenados no repositório de dados de campo de dados de modelo 160 e transmitidos pelo servidor, como o número de culturas em um campo ou a densidade de cultura em um campo. Informações sobre doenças específicas das culturas, em termos de categorias, causas, sintomas ou tratamentos, também podem ser armazenadas no armazenamento de aplicação 750. Além disso, as imagens analisadas através da aplicação de análise de cultura 710 e os resultados da análise podem ser armazenados no armazenamento de aplicação 750.
[0075] Em algumas modalidades, o computador cliente 700 pode ainda compreender um sistema operacional 740 que oferece serviços de SO 742. Por exemplo, o iOS suporta AVCam-iOS como um conjunto de interfaces de programação de aplicação para trabalhar com muitos tipos de fotos e imagens. Tais SO primitivos ou de serviços podem ser utilizados para executar a aplicação de análise de cultura 710 com eficiência.
[0076] A Figura 1 e Figura 7 ilustram apenas exemplos e o sistema de computador de inteligência agrícola 130 e o computador cliente podem compreender menos ou mais componentes funcionais ou de armazenamento. Cada um dos componentes funcionais pode ser implementado como componentes de software, componentes de hardware de propósito geral ou específico, componentes de firmware ou qualquer combinação dos mesmos. Um componente de armazenamento pode ser implementado usando qualquer um dos bancos de dados relacionais, bancos de dados de objetos, sistemas de arquivos simples, ou repositórios JSON. Um componente de armazenamento pode ser conectado aos componentes funcionais localmente ou através das redes usando chamadas programáticas, recursos de chamada de procedimento remoto (RPC) ou um barramento de mensagens. Um componente pode ou não ser independente. Dependendo de considerações específicas da implementação ou outras considerações, os componentes podem ser centralizados ou distribuídos funcional ou fisicamente. Alguns dos componentes que residem no servidor nesses exemplos podem residir no computador cliente e vice-versa.
2.6 EXEMPLO DE IMPLEMENTAÇÃO - VISÃO GERAL DE HARDWARE
[0077] De acordo com uma modalidade, as técnicas aqui descritas são implementadas por um ou mais dispositivos de computação de propósito especial. Os dispositivos de computação de propósito especial podem ser conectados fisicamente para executar as técnicas ou podem incluir dispositivos eletrônicos digitais, como um ou mais circuitos integrados de aplicação específica (ASICs) ou arranjo de portas em campo programável (FPGAs) que são programados persistentemente para executar técnicas, ou podem incluir um ou mais processadores de hardware de propósito geral programados para executar as técnicas de acordo com as instruções de programa em firmware, memória, outro armazenamento ou uma combinação. Esses dispositivos de computação de propósito especial também podem combinar lógica customizada por cabo, ASICs ou FPGAs com programação personalizada para realizar as técnicas. Os dispositivos de computação de propósito especial podem ser sistemas de computadores de mesa, sistemas de computadores portáteis, dispositivos portáteis, dispositivos de rede ou qualquer outro dispositivo que incorpora lógica de hardware e/ou programa para implementar as técnicas.
[0078] Por exemplo, a Figura 4 é um diagrama de blocos que ilustra um sistema de computador 400, no qual uma modalidade da invenção pode ser implementada. O sistema de computador 400 inclui um barramento 402 ou outro mecanismo de comunicação para comunicar informação, e um processador de hardware 404 acoplado com o barramento 402 para processamento de informação. O processador de hardware 404 pode ser, por exemplo, um microprocessador de propósito geral.
[0079] O sistema de computador 400 também inclui uma memória principal 406, tal como uma memória de acesso aleatório (RAM) ou outro dispositivo de armazenamento dinâmico, acoplado ao barramento 402 para armazenar informações e instruções a serem executadas pelo processador 404. A memória principal 406 também pode ser usada para armazenar variáveis temporárias ou outras informações intermediárias durante a execução de instruções a serem executadas pelo processador 404. Tais instruções, quando armazenadas em meio de armazenamento não transitório acessível por processador 404, tornam o sistema de computador 400 em uma máquina de propósito especial que é personalizada para executar as operações especificadas nas instruções.
[0080] O sistema de computador 400 inclui ainda uma memória somente de leitura (ROM) 408 ou outro dispositivo de armazenamento estático acoplado ao barramento 402 para armazenar informações estáticas e instruções para o processador 404. Um dispositivo de armazenamento 410, tal como um disco magnético, disco ótico ou unidade de estado sólido, é fornecido e acoplado ao barramento 402 para armazenar informações e instruções.
[0081] Sistema de computador 400 pode ser acoplado via barramento 402 para uma exibição 412, tal como um tubo de raios catódicos (CRT), para exibir informação para um usuário de computador. Um dispositivo de entrada 414, incluindo teclas alfanuméricas e outras, é acoplado ao barramento 402 para comunicar informação e seleções de comandos para o processador 404. Outro tipo de dispositivo de entrada de usuário é o controle de cursor 416, como um mouse, uma trackball ou teclas de direção de cursor para comunicar informação de direção e selecionar comandos para o processador 404 e para controlar o movimento do cursor na exibição 412. Este dispositivo de entrada tem tipicamente dois graus de liberdade em dois eixos, um primeiro eixo (por exemplo, x) e um segundo eixo (por exemplo, y) permite que o dispositivo especifique posições em um plano.
[0082] O sistema de computador 400 pode implementar as técnicas descritas aqui usando lógica com fio personalizada, um ou mais ASICs ou FPGAs, firmware e/ou lógica de programa que em combinação com o sistema de computador faz ou programa o sistema de computador 400 para ser uma máquina de propósito especial. De acordo com uma modalidade, as técnicas são executadas pelo sistema de computador 400 em resposta ao processador 404 executando uma ou mais sequências de uma ou mais instruções contidas na memória principal 406. Tais instruções podem ser lidas na memória principal 406 a partir de outro meio de armazenamento, como dispositivo de armazenamento 410. A execução das sequências de instruções contidas na memória principal 406 faz com que o processador 404 execute as etapas de processo aqui descritos. Em modalidades alternativas, podem ser usados circuitos com fio em vez de ou em combinação com instruções de software.
[0083] O termo "meio de armazenamento", como usado aqui, refere-se a qualquer meio não transitório que armazena dados e/ou instruções que fazem com que uma máquina opere de uma maneira específica. Esses meios de armazenamento podem compreender meios não voláteis e/ou meios voláteis. O meio não volátil inclui, por exemplo, discos óticos, discos magnéticos ou unidades de estado sólido, como dispositivo de armazenamento 410. Meio volátil inclui memória dinâmica, como a memória principal 406. Formas comuns de meio de armazenamento incluem, por exemplo, um disquete, um disco flexível, disco rígido, unidade de estado sólido, fita magnética ou qualquer outro meio de armazenamento de dados magnético, um CD-ROM, qualquer outro meio de armazenamento de dados ótico, qualquer meio físico com padrões de furos, uma RAM, uma PROM e EPROM, uma FLASH-EPROM, NVRAM, qualquer outro chip ou cartucho de memória.
[0084] O meio de armazenamento é distinto, mas pode ser usado em conjunto com o meio de transmissão. O meio de transmissão participa da transferência de informação entre o meio de armazenamento. Por exemplo, o meio de transmissão inclui cabos coaxiais, fios de cobre e fibras óticas, incluindo os fios que compõem o barramento 402. O meio de transmissão também pode assumir a forma de ondas acústicas ou de luz, como aquelas geradas durante comunicações de dados por ondas de rádio e infravermelho.
[0085] Várias formas de meio podem estar envolvidas no transporte de uma ou mais sequências de uma ou mais instruções para o processador 404 para execução. Por exemplo, as instruções podem inicialmente ser transportadas em um disco magnético ou em uma unidade de estado sólido de um computador remoto. O computador remoto pode carregar as instruções em sua memória dinâmica e enviar as instruções por uma linha telefônica usando um modem. Um modem local para o sistema de computador 400 pode receber os dados na linha telefônica e usar um transmissor de infravermelho para converter os dados em um sinal de infravermelho. Um detector de infravermelho pode receber os dados transportados no sinal de infravermelho e circuitos apropriados podem colocar os dados no barramento 402. O barramento 402 transporta os dados para a memória principal 406, a partir da qual o processador 404 recupera e executa as instruções. As instruções recebidas pela memória principal 406 podem, opcionalmente, ser armazenadas no dispositivo de armazenamento 410 antes ou após a execução pelo processador 404.
[0086] O sistema de computador 400 também inclui uma interface de comunicação 418 acoplada ao barramento 402. A interface de comunicação 418 fornece um acoplamento de comunicação de dados bidirecional a um enlace de rede 420 que está conectado a uma rede local 422. Por exemplo, a interface de comunicação 418 pode ser uma placa de rede digital de serviços integrados (ISDN), modem a cabo, modem via satélite, ou um modem para fornecer uma conexão de comunicação de dados a um tipo correspondente de linha telefônica. Como outro exemplo, a interface de comunicação 418 pode ser uma placa de rede de área local (LAN) para fornecer uma conexão de comunicação de dados para uma LAN compatível. Enlaces sem fio também podem ser implementados. Em qualquer implementação deste tipo, a interface de comunicação 418 envia e recebe sinais elétricos, eletromagnéticos ou óticos que transportam fluxos de dados digitais representando vários tipos de informação.
[0087] O enlace de rede 420 fornece tipicamente comunicação de dados através de uma ou mais redes para outros dispositivos de dados. Por exemplo, o enlace de rede 420 pode fornecer uma conexão através da rede local 422 para um computador hospedeiro 424 ou para um equipamento de dados operado por um Provedor de Serviços de Internet (ISP) 426. O ISP 426, por sua vez, fornece serviços de comunicação de dados através da rede de comunicação de dados por pacotes mundial, agora comumente chamada de "Internet" 428. A rede local 422 e a Internet 428 usam sinais elétricos, eletromagnéticos ou óticos que transportam fluxos de dados digitais. Os sinais através das várias redes e os sinais no enlace de rede 420 e através da interface de comunicação 418, que transportam os dados digitais de e para o sistema de computador 400, são formas de exemplo de meios de transmissão.
[0088] O sistema de computador 400 pode enviar mensagens e receber dados, incluindo código de programa, através da (s) rede (s), enlace de rede 420 e interface de comunicação 418. No exemplo da Internet, um servidor 430 pode transmitir um código solicitado para um programa de aplicação através da Internet 428, ISP 426, rede local 422 e interface de comunicação 418.
[0089] O código recebido pode ser executado pelo processador 404 à medida que é recebido, e/ou armazenado no dispositivo de armazenamento 410, ou outro armazenamento não volátil para execução posterior.
3. DESCRIÇÃO FUNCIONAL 3.1 CONSTRUÇÃO DE UM PROGRAMA DE COMPUTADOR PARA GERENCIAR UM PROCESSO DE AVALIAÇÃO DE CAMPO
[0090] Em algumas modalidades, o servidor é programado para reunir imagens de treinamento para cada um de um grupo de doenças predeterminadas. O grupo de doenças pode incluir manchas cinzas nas folhas ("GLS"), ocular ("EYE"), queima das folhas do norte ("NLB"), Murcha de Stewart, ou ferrugem comum. Cada imagem de treinamento, de preferência, seria capturada em campos de cultura reais e verificada por especialistas como representando uma única cultura infectada com uma ou mais das doenças. Cada imagem tem, de preferência, pelo menos 400 pixels por 400 pixels de tamanho. Também é preferido um grupo de pelo menos 1.000 imagens para cada doença. Imagens de amostra podem ser obtidas no Plant Village, hospedado pela Pennsylvania State University, Faculdade de Ciências Agrícolas, por exemplo.
3.1.1 RECONHECER DOENÇA OU TIPOS DE CULTURA
[0091] Em algumas modalidades, o servidor é programado para construir um primeiro modelo ou técnica como um conjunto de instruções executáveis por computador para reconhecer uma ou mais doenças em uma imagem de entrada com base nas imagens de treinamento. Um exemplo do primeiro modelo é uma rede neural convolucional ("CNN"). Qualquer implementação de rede neural existente, como o Keras compatível com Python 2.7-3.5, pode ser usada para implementar operações relacionadas à CNN. A CNN pode ser construída ajustando um modelo existente com um conjunto de dados adicional, como o grupo de pelo menos 1.000 imagens para cada uma das doenças mencionadas acima. O ajuste fino pode incluir truncar a última camada do modelo existente, usando uma taxa de aprendizado menor ou outras abordagens. Por exemplo, com o Keras, um modelo Inception-v3 pode ser facilmente ajustado. Especificamente, para alterar a taxa de aprendizado, a função sgd pode ser usada com lr definido como 0,01, decaimento definido como 0,0005, momento definido como 0,9 e nesterov definido como Verdadeiro. Além disso, para executar o treinamento do modelo em várias iterações, a função de ajuste pode ser chamada com batch_size definido como 64 e épocas definidas como 50. Com uma CNN completa, o primeiro modelo pode gerar, para cada grupo de doenças, uma probabilidade que o objeto representado na imagem fornecida está infectado com essa doença.
[0092] Em algumas modalidades, um tipo de cultura pode ser inferido a partir de uma doença. Por exemplo, sabe-se que o GLS afeta milho ("maize") ou milho ("corn") e, portanto, o tipo de cultura de milho pode ser inferido a partir de uma doença de GLS. Portanto, o primeiro modelo também pode ser usado para reconhecer tipos de culturas. Como alternativa, um modelo separado pode ser construído de maneira semelhante para reconhecer especificamente tipos de culturas com base em imagens de treinamento de diferentes tipos de culturas.
[0093] Em algumas modalidades, outras técnicas de aprendizagem conhecidas por alguém versado na técnica podem ser usadas para construir o primeiro modelo, como florestas de decisão e regressão logística. Os metadados das imagens também podem ser usados para caracterizar cada doença, como o local em que a imagem foi criada e o horário em que a imagem foi criada.
3.2 ESTIMANDO O RENDIMENTO DE CULTURA
[0094] Em algumas modalidades, o servidor é programado para construir um segundo modelo ou técnica como um conjunto de instruções executáveis por computador para calcular o rendimento de cultura por planta e para um campo de cultura. Uma cultura pode compreender um grupo de componentes. Por exemplo, uma espiga de milho pode conter um grupo de grãos e uma árvore cítrica pode conter um grupo de laranjas. O número de componentes nesse grupo pode ser um indicador do rendimento da planta. O tamanho da cultura ou o peso total do grupo de componentes pode ser outro indicador do rendimento. Por exemplo, uma medida convencional de rendimento para um campo de milho é o número de grãos por acre vezes o peso por grão à umidade padrão dividido por 0,001049 Kg/m2 (56 libras por alqueire) para produzir alqueires por acre.
[0095] Em algumas modalidades, para estimar o tamanho do grupo ou o número de componentes de uma imagem gerada, o segundo modelo pode compreender certas operações de processamento de imagem. Qualquer implementação de processamento de imagem existente, como a biblioteca OpenCV (versão 3.2), pode ser usada para implementar uma ou mais operações de processamento de imagem do segundo modelo. A Figura 14 ilustra um exemplo de processo tipicamente executado por um computador cliente para calcular o rendimento de uma cultura, como o número de grãos na espiga de um milho. O processo pode ser realizado através da execução do segundo modelo.
[0096] Na etapa 1402, uma imagem em escala de cinza é recebida como entrada. Na etapa 1404, a imagem é aprimorada em contraste, como por meio da equalização de histograma adaptativo limitada (CLAHE). Por exemplo, a função createCLAHE no OpenCV pode ser usada com clipLimit definido como 2 e tileGridSize definido como (8, 8). Outros algoritmos de aprimoramento de contraste conhecidos por alguém versado na técnica podem ser usados, como muitas variantes de equalização de histograma, outros métodos de contraste não lineares e métodos de contraste lineares.
[0097] Na etapa 1406, a imagem aprimorada é segmentada em um primeiro plano que provavelmente representa uma cultura, como uma espiga de milho e vários grãos, e um plano de fundo. A segmentação pode ser baseada no desempenho de um ou mais métodos de limiar. Um primeiro método de limiar pode ser o limiar de Otsu. Por exemplo, a função de limiar no OpenCV pode ser usada com thresh definido como 0, maxVal definido como 255 e thresholdType definido como THRESH_BINARY_INV ou THRESH_OTSU. Um segundo método de limiar pode ser um método de limiar adaptativo. Por exemplo, a função adaptiveThreshold no OpenCV pode ser usada com maxVal definido como 255, adaptiveMethod definido como ADAPTIVE_THRESH_GAUSSIAN_C, blockSize definido como 11 e constante C definido como 2. A segmentação pode então atribuir um pixel da imagem ao primeiro plano quando pelo menos um dos métodos de limiar retorna uma determinação acima do limiar para o pixel. Podem ser aplicados outros métodos de limiar ou outros tipos de métodos de limiar combinados conhecidos por alguém versado na técnica. Outros métodos de segmentação ou classificação conhecidos por alguém versado na técnica também podem ser aplicados.
[0098] A Figura 15 ilustra uma imagem de exemplo que foi aprimorada em contraste e segmentada em um primeiro plano representando uma espiga de milho e um fundo. A espiga de milho 1502 com um ou mais grãos únicos e aglomerados de múltiplos grãos constitui o primeiro plano, e o restante da imagem em preto constitui o plano de fundo.
[0099] Na etapa 1408, a imagem segmentada é atualizada para remover pixels de ruído resultantes do limiar, como por meio de operações morfológicas. Por exemplo, a função morphologyEx no OpenCV pode ser usada com o grão (elemento estruturador em operações morfológicas) definido como um elemento 1 por 1, op definido como MORPH_OPEN e iterações definidas como 2. Essa operação de abertura geralmente é útil para remover objetos pequenos a partir de uma imagem. Quando a imagem mostra uma espiga de milho, por exemplo, a operação de abertura pode ajudar a remover a área levemente conectada entre os grãos em um agrupamento com vários grãos, assim desconectando os agrupamentos com vários grãos em grãos únicos. Podem ser utilizados outros métodos para suavizar os resultados de limiar, remover discrepantes, ou limpar imagens conhecidas de alguém versado na técnica.
[00100] Nas etapas 1410 e 1412, a imagem atualizada é ainda analisada para calcular o tamanho do grupo de componentes incluídos na cultura, como o número de grãos em uma espiga de milho. O tamanho do grupo pode ser estimado a partir do tamanho de um componente representativo no grupo. A determinação do tamanho de um componente representativo pode depender do tipo de cultura.
[00101] Em algumas modalidades, para uma espiga de milho, o tamanho de um grão representativo pode ser determinado pela identificação primeiro de áreas na imagem em primeiro plano que correspondem a grãos isolados. Os grãos que crescem em posições adjacentes podem ser identificados como grãos isolados após o processamento de imagem nas etapas anteriores manifestar a separação dos grãos. Além disso, pode haver um conjunto diminuído de grão devido ao estresse causado pela seca, alimentação de insetos, dessecação de pólen, variação de temperatura, aborto de grão ou outros motivos. Além disso, alguns grãos podem ter caído da espiga ao serem capturados na imagem. Nesses casos, como na etapa 1410, o primeiro plano pode ser dividido em áreas conectadas e uma área conectada pode ser considerada como correspondendo a um agrupamento com vários grãos quando o tamanho da área conectada estiver acima de um primeiro limiar predeterminado, como 500 pixels. Além disso, uma área conectada pode ser considerada como correspondendo a um único grão quando o tamanho da área conectada não excede o primeiro limiar predeterminado e também não cai abaixo de um segundo limiar predeterminado, como 5 pixels.
[00102] Na etapa 1412, os tamanhos das áreas conectadas consideradas correspondentes a grãos únicos podem ser agregados. Os tamanhos das áreas conectadas consideradas correspondentes a agrupamentos com vários grãos e o tamanho agregado das áreas conectadas consideradas como grãos únicos podem ser usados para calcular o número de grãos em cada agrupamento com vários grãos. Como a imagem normalmente mostra metade ou menos de uma espiga de milho, o número total de grãos pode ser aproximadamente o dobro do número total de grãos representados na imagem.
[00103] Em algumas modalidades, um tamanho de grão padrão pode ser usado. Como alternativa, a orientação do milho, conforme ilustrado na imagem, pode ser determinada, e a classificação de uma área conectada em um único grão ou em um agrupamento de vários grãos pode depender da localização da área conectada. Por exemplo, os grãos próximos à ponta da espiga podem ser menores. O mesmo método ou um método semelhante pode ser aplicado a outro tipo de cultura que pode conter um grupo de componentes agrupados, mas componentes distinguíveis e componentes isolados, como uma ervilha.
[00104] Quando o número de culturas em um campo é conhecido, o rendimento para o campo pode ser estimado multiplicando o rendimento de uma cultura pelo número de culturas no campo. Como alternativa, o rendimento do campo pode ser estimado com base em uma pequena amostra do campo que pode servir como um representante melhor do campo do que uma única cultura.
[00105] Em algumas modalidades, para estimar o tamanho ou volume de uma cultura, o segundo modelo pode compreender certas operações de processamento de imagem com base em dados específicos. Como um exemplo, o segundo modelo pode assumir que um objeto de fundo de tamanho conhecido, como um pedaço de pano azul a ser contrastado com um milho amarelo, também seja representado em uma imagem gerada. Como outro exemplo, o segundo modelo pode assumir que as informações de profundidade de câmera associadas à imagem gerada estão disponíveis. O volume estimado de uma cultura pode ser usado para estimar o número de culturas no campo, dado o tamanho do campo. O volume estimado da cultura também pode ser usado para estimar o peso da cultura, que pode ser combinado com a contagem de grãos da cultura para fornecer uma caracterização precisa do rendimento da cultura, que pode ser estendido ao rendimento da cultura.
[00106] Em algumas modalidades, o servidor é programado para preparar um programa de computador com um conjunto de instruções executáveis por computador que permitem que um computador cliente gerencie um processo de avaliação de campo de cultura. O programa de computador pode coordenar a comunicação com vários componentes eletrônicos, como um dispositivo de captura de imagem e um dispositivo de exibição, que pode ser integrado ou acessível por um computador cliente. Além disso, o programa de computador pode se comunicar com um sistema operacional que é executado em um computador cliente para manipular com eficiência determinadas operações baseadas em imagem em coordenação com esses componentes eletrônicos. Além disso, o programa de computador pode gerenciar uma GUI acoplada a um mecanismo de terminal posterior para processar dados de entrada e saída associados à GUI. O mecanismo de terminal posterior poderia invocar o primeiro modelo para reconhecer doenças e tipos de culturas ou o segundo modelo para estimar o rendimento de uma cultura. Em geral, o programa de computador ou o primeiro e o segundo modelos são relativamente compactos e podem ser facilmente empacotados em uma aplicação móvel para execução em um dispositivo móvel típico.
[00107] Em algumas modalidades, o servidor é configurado para transmitir o programa de computador e os modelos juntos ou separadamente para um computador cliente através de uma rede de comunicação. A transmissão pode ser em resposta a uma solicitação de um computador cliente ou automaticamente de acordo com uma programação predeterminada, como periodicamente ou assim que o programa de computador for atualizado. O servidor também é programado para receber imagens geradas por um computador cliente e dados relacionados, como resultados da aplicação dos modelos às imagens ou notas do usuário, incluindo a entrada de especialistas nessas imagens. O servidor pode ser programado para incorporar essas imagens e dados relacionados na atualização dos modelos.
3.2 EXECUÇÃO DO PROGRAMA DE COMPUTADOR PARA GERENCIAR UM PROCESSO DE AVALIAÇÃO DE CAMPO
[00108] Em algumas modalidades, um computador cliente é programado ou configurado para enviar uma solicitação ao servidor para o programa de computador que permite ao computador cliente gerenciar um processo de avaliação de campo, o primeiro modelo para reconhecer doenças e tipos de cultura e o segundo modelo para estimar o rendimento de uma cultura. O computador cliente também pode ser configurado para solicitar o primeiro modelo ou o segundo modelo separadamente. O recibo pode ser uma resposta a uma instrução do usuário ou uma transmissão automática pelo servidor.
[00109] Em algumas modalidades, executando o programa de computador, um computador cliente é configurado para gerenciar um processo de avaliação de campo como descrito na Figura 8. A execução pode ser em resposta a uma instrução de usuário. A Figura 8 ilustra um exemplo de processo realizado por um computador cliente, como um dispositivo móvel, para gerenciar um processo de avaliação de campo, como reconhecimento e diagnóstico de doenças. Na etapa 802, o computador cliente é programado para causar a captura contínua do ambiente e a geração de imagens correspondentes por meio de um dispositivo de captura de imagem integrado ou separado, como uma câmera. As imagens geradas têm preferencialmente pelo menos a mesma resolução que as imagens de treinamento. Na etapa 804, o computador cliente é programado para causar a exibição contínua das imagens geradas em tempo real - assim que as imagens são geradas -através de um dispositivo de exibição integrado ou separado, como uma tela. Normalmente, a taxa de exibição é comparável à taxa de geração; nesse caso, todas as imagens geradas podem ser exibidas em ordem e em tempo real.
[00110] Na etapa 808, o computador cliente é configurado para processar continuamente as imagens geradas. Quando a taxa de processamento é menor que a taxa de geração, o computador cliente pode ser configurado para enfileirar as imagens geradas e processá-las em ordem ou seletivamente. Por exemplo, o computador cliente pode ser configurado para processar apenas a imagem mais recente na parte superior da fila e remover o restante das imagens da fila. A etapa 808 é dividido nas etapas 810, 812, 814 e 816, que ilustram especificamente o reconhecimento e o diagnóstico da doença. O processamento também pode ser uma estimativa do rendimento de cultura.
3.2.1 RECONHECENDO DOENÇAS OU TIPOS DE CULTURA
[00111] Na etapa 810, o computador cliente é configurado para executar o primeiro modelo para reconhecer doenças ou tipos de cultura na imagem que está sendo processada. A execução pode ocorrer em resposta à recepção de uma imagem para processamento ou uma instrução de usuário. Para cada imagem sendo processada, o primeiro modelo produz uma distribuição de probabilidades na pluralidade de doenças predeterminadas. Para cada uma das pluralidades de doenças predeterminadas, o computador cliente pode ser configurado para exibir a probabilidade correspondente como uma pontuação de confiança da doença de que a imagem representa uma ocorrência da doença. Como alternativa, o computador cliente pode enviar uma solicitação incluindo a imagem que está sendo processada para o servidor para execução do primeiro modelo na imagem pelo servidor e receber os resultados de execução do modelo a partir do servidor.
[00112] Na etapa 812, o computador cliente é configurado para fazer o dispositivo de exibição exibir informações sobre qualquer doença reconhecida, a pontuação de confiança associada ou outros dados relevantes. As informações podem ser sobrepostas na imagem atualmente sendo exibida. Como qualquer atraso no processamento é tipicamente suficientemente pequeno nesse caso, a diferença entre a imagem processada e a imagem atualmente exibida pode não ser visível aos olhos humanos.
[00113] Em resposta às informações sobre doenças reconhecidas e outros dados relevantes, o usuário pode optar por receber mais informações sobre uma das doenças reconhecidas. Na etapa 814, o computador cliente é assim programado para receber uma especificação de uma ou mais das doenças reconhecidas.
[00114] Na etapa 816, o computador cliente é programado para fazer com que o dispositivo de exibição mostre dados adicionais em resposta à especificação. Os dados adicionais também podem ser sobrepostos em uma imagem atualmente exibida ou simplesmente substituir a imagem atualmente exibida na tela. Os dados adicionais podem incluir descrições de causas conhecidas, sintomas ou medidas corretivas para o conjunto de doenças ou fotos semelhantes para o conjunto de doenças.
[00115] Em algumas modalidades, o computador cliente pode ser programado para gerar um alerta quando uma pontuação de confiança calculada associada a uma doença reconhecida está acima de um limiar predeterminado. Este alerta tem como objetivo chamar a atenção de um produtor ou de qualquer outra parte relevante para a possível ocorrência de uma doença em uma cultura. O alerta pode estar na forma de um sinal de áudio ou ênfase visual, como exibir o nome da doença e a pontuação de confiança em negrito ou itálico, em uma fonte maior ou em flash contínuo. O alerta também pode estar na forma de transmitir uma mensagem para um dispositivo remoto.
[00116] Em algumas modalidades, o computador cliente pode ser programado para causar exibição de direções para alcançar a localização geográfica específica onde a imagem que recebe uma pontuação de confiança acima do limiar predeterminado foi obtida. As instruções têm como objetivo direcionar a atenção de um produtor ou de qualquer outra parte relevante para uma cultura específica que foi potencialmente infectada por uma doença. O computador cliente pode monitorar continuamente sua localização geográfica por meio de um GPS ou dispositivo similar e fazer com que o dispositivo de exibição sobreponha continuamente as direções nas imagens exibidas atualmente até que a localização geográfica do computador cliente esteja de acordo com a localização geográfica específica.
[00117] Em algumas modalidades, um usuário pode estar interessado em receber mais informações sobre uma das imagens exibidas. O computador cliente pode ser configurado para receber uma seleção de uma imagem atualmente exibida. Em resposta, o computador cliente pode ser programado para interromper o processamento contínuo das imagens geradas e focar no processamento da imagem selecionada. O computador cliente pode ainda ser programado para fazer com que o dispositivo de exibição congele a tela até que os resultados do processamento fiquem disponíveis e, em seguida, sobreponha os resultados do processamento na próxima imagem gerada. Nesse ponto, a exibição contínua original e o processamento das imagens geradas podem ser retomados.
[00118] Em algumas modalidades, o computador cliente é programado para receber retorno a partir de produtores, patologistas, agrônomos ou outras partes sobre as imagens geradas e os resultados da execução dos modelos nas imagens geradas. Como exemplo, um produtor como usuário do computador cliente pode indicar um acordo ou desacordo com uma doença reconhecida ou a pontuação de confiança associada, e o computador cliente pode enviar a imagem, o resultado da execução do modelo e o retorno do usuário de volta ao servidor para aprimorar os modelos. Como outro exemplo, o computador cliente pode ser programado para transmitir a imagem e o resultado da execução do modelo para um dispositivo remoto de um patologista. O computador cliente pode ainda ser programado para receber de forma semelhante um acordo ou desacordo com a doença reconhecida ou a pontuação de confiança associada e transmitir a imagem, o resultado da execução do modelo e o retorno do usuário para o servidor. O computador cliente também pode ser configurado para enviar as imagens e os resultados da execução do modelo sem nenhum retorno do usuário de volta ao servidor quando as imagens atendem a determinados critérios predeterminados, como estarem associadas a pontuações de confiança acima do limiar predeterminado. Em geral, o computador cliente não precisa armazenar as imagens de treinamento ou as imagens geradas pela câmera, mantendo assim uma pegada relativamente pequena.
[00119] Em algumas modalidades, o computador cliente não está sendo transportado por um campo de cultura por um usuário. A discussão acima continua a se aplicar principalmente. O computador cliente pode ser integrado a um UAV. Nesse caso, um produtor pode estar operando o UAV remotamente através de um dispositivo remoto. O dispositivo de exibição pode então ser separado do computador cliente e, em vez disso, ser integrado ao dispositivo remoto. Qualquer atraso na exibição pode ser tratado de maneira semelhante a qualquer atraso no processamento mencionado acima. Como alternativa, o computador cliente pode permanecer em um local remoto e contar com um UAV como dispositivo de captura de imagem. Em vez de causar a exibição das instruções para uma localização geográfica específica onde a imagem foi tirada, o computador cliente pode ser configurado para enviar as instruções ao UAV de acordo com o programa de computador recebido a partir do servidor.
[00120] A Figura 9, a Figura 10, a Figura 11, a Figura 12 e a Figura 13 ilustram uma GUI gerenciada por um computador cliente através de dispositivos de entrada e saída em relação ao reconhecimento e diagnóstico de doenças. A GUI pode fazer parte do programa de computador recebido a partir do servidor, como uma aplicação móvel, conforme discutido acima. Cada diagrama de um exemplo de GUI nesta divulgação compreende um exemplo de saída que um ou mais computadores podem renderizar em resposta a instruções do servidor ou contidas no programa de computador. As instruções podem estar em uma linguagem de marcação ou em chamadas programáticas para funções da biblioteca que são executadas no servidor ou nos outros computadores. O tamanho das áreas, regiões ou painéis pode variar em diferentes modalidades e não é mostrado em escala, ou em qualquer formato ou arranjo específico necessário. Da mesma forma, cores, bordas, tipos de letra e outros elementos gráficos podem ser diferentes em outras modalidades e podem ser especificados usando dados de configuração, parâmetros de chamadas, ou nas instruções.
[00121] A Figura 9 ilustra um exemplo de dispositivo de interação com computador, mostrando uma GUI gerada sob controle de programa que permite que um usuário chame a funcionalidade de reconhecimento de doença. Em uma modalidade, uma área de interação 900 compreende um painel de cabeçalho 904, painel de título 905 e painel de aviso de imagem 918. Em uma modalidade, o painel de cabeçalho 904 exibe um título de uma função da aplicação associada que, no exemplo da Figura 9, indica que o dispositivo de interação está atualmente aceitando dados relacionados a uma localização de pino dentro de um campo. Em uma modalidade, selecionar um ícone Salvar 906 faz com que a aplicação salve os dados exibidos no momento no armazenamento de aplicação ou armazenamento em rede e selecionar um ícone Fechar 908 causa a alteração do controle de programa para um estado anterior a partir do qual a função de pino de campo foi atingida. Em uma modalidade, o painel de título 905 compreende um campo de título 910, campo de nota 912, ícone de foto 914 e botão de opções avançadas 916. Em uma modalidade, a seleção do campo de título 910 faz com que a aplicação solicite ao usuário uma entrada que especifique um título, o que é exibido novamente no painel de título 905 e armazenado na memória. Normalmente, o título é um nome do pino no campo; um exemplo pode ser "amostra central de milho". Em uma modalidade, a seleção do campo de nota 912 faz com que a aplicação receba entrada especificando uma nota sobre o pino de campo associado. Em uma modalidade, a seleção do ícone de foto 914 faz com que a aplicação acesse programaticamente uma câmera do dispositivo de computação móvel chamando um sistema operacional primitivo ou serviço e então aguarda a captura de uma imagem digital a partir da câmera; a imagem capturada pode ser exibida novamente. Em uma modalidade, a entrada selecionando o botão de opções avançadas 916 faz com que o painel de solicitação de imagem 918 seja exibido, o que de outra forma não é visível. Em uma modalidade, o painel de solicitação de imagem 918 é uma primeira exibição em uma sucessão de exibições e avisos que permitem acessar funções de análise de imagem relacionadas à imagem que foi capturada ou outras imagens. Ao clicar no botão Iniciar 902, o usuário pode chamar a funcionalidade de reconhecimento de doença, por exemplo. O programa de computador também pode ser configurado para que o reconhecimento da doença inicie imediatamente após o seu lançamento.
[00122] A Figura 10 ilustra um exemplo de dispositivo de interação com computador, mostrando uma GUI gerada sob controle de programa que pode fornecer um resumo ou um tutorial sobre como realizar a funcionalidade de reconhecimento de doença. Em uma modalidade, uma área de interação 1000 compreende um campo de imagem 1002, um campo de texto 1004, um indicador de estágio 1010, um botão Continuar 1006 e um ícone Cancelar 1008. O campo de texto 1004 e o campo de imagem 1002 fornecem instruções para operar uma câmera, como uma integrada ao computador cliente, para varrer continuamente o ambiente e gerar uma série de imagens representando o ambiente. O campo de imagem 1002 pode exibir uma foto de uma cultura real. Selecionar o ícone Cancelar 1008 causa a alteração do controle de programa para um estado anterior a partir do qual a área de interação 1000 foi atingida. O indicador de estágio 1010 mostra o estágio atual no resumo ou tutorial, como a segunda página de três páginas. Selecionar o botão Continuar 1006 causa a alteração do controle de programa para o próximo estágio do resumo ou tutorial, como a terceira página das três páginas.
[00123] A Figura 11 ilustra um exemplo de dispositivo de interação com computador mostrando uma GUI gerada sob controle de programa que pode exibir resultados da análise de imagens geradas e receber solicitações para analisar imagens geradas selecionadas. Em uma modalidade, uma área de interação 1100 compreende uma área de imagem da doença 1108, um ícone de Dicas 1110 e uma área de captura de imagem 1106. Como a série de imagens é gerada a uma alta taxa de geração, a série de imagens pode ser exibida em uma taxa de exibição semelhantemente alta em tempo real, que se pareceria com um vídeo contínuo. O dispositivo de interação com computador pode mostrar cada imagem gerada na área de imagem da doença 1108 em tempo real. À medida que as séries de imagens são geradas, as séries de imagens também podem ser processadas para reconhecimento da doença em ordem ou seletivamente em tempo real. O dispositivo de interação com computador pode então mostrar os resultados do processamento, como informações sobre uma ou mais doenças reconhecidas em uma área de classificação de doença 1102 e os correspondentes uma ou mais pontuações de confiança em uma área de pontuação de confiança 1104, em cima da imagem atualmente exibida. Os resultados do processamento geralmente indicam que qualquer cultura representada na imagem processada pode estar infectada com uma ou mais doenças para as respectivas pontuações de confiança ou probabilidades de infecção. Neste exemplo, a imagem exibida atualmente representa uma folha de milho, a imagem processada atualmente provavelmente representa a mesma folha e é provável que essa folha tenha sido infectada com NLB por uma probabilidade de 68%, e EYE por uma probabilidade de 17%, e com GLS por uma probabilidade de 12%.
[00124] Em uma modalidade, o dispositivo de interação com computador também pode permitir que um usuário selecione a imagem atualmente exibida, como através de um botão de captura na área de captura de imagem 1106, para interromper o processamento contínuo das imagens geradas e processar imediatamente a imagem selecionada. Como alternativa, a funcionalidade de reconhecimento de doença não envolve o processamento automático da série de imagens geradas, mas pode-se contar apenas com o usuário para clicar no botão de captura de imagem, por exemplo, para selecionar uma imagem para processamento. A seleção do ícone Dicas 1110 pode causar a exibição de informações adicionais, como atributos mais básicos da cultura representada na imagem atualmente exibida, um resumo de como interpretar as informações exibidas sobre as doenças reconhecidas e as pontuações de confiança ou um resumo de como receber informações de reconhecimento de doença para a imagem atualmente exibida.
[00125] A Figura 12 ilustra um exemplo de dispositivo de interação com computador mostrando uma GUI gerada sob controle de programa que pode fornecer informações adicionais sobre doenças reconhecidas. Em uma modalidade, uma área de interação 1200 compreende um painel de cabeçalho 1214, uma área de imagem de doença 12 02, uma área de classificação de doença 1204, uma área de pontuação de confiança 1206, um painel de sintomas 1208, um painel de patógenos 1210 e uma área de retorno 1212. Em uma modalidade, o painel de cabeçalho 1214 exibe um título de uma função da aplicação associada que, no exemplo da Figura 12, indica que o dispositivo de interação está exibindo dados referentes a uma doença infectada por uma cultura no campo. Em resposta a uma especificação de uma das doenças reconhecidas, que pode resultar de uma seleção de informações exibidas sobre a doença especificada sobreposta a uma imagem que representa a doença especificada, o dispositivo de interação com computador pode exibir novamente a imagem ou talvez uma parte da imagem que descreve claramente a doença reconhecida na área de imagem de doença 1202. O dispositivo de interação com computador pode sobrepor ainda mais as informações sobre a doença especificada na área de classificação de doença 1204 e a pontuação de confiança correspondente na área de pontuação de confiança 1206 na representação da doença especificada. Além disso, o dispositivo de interação com computador pode exibir dados adicionais sobre a doença especificada, como uma lista de sintomas na área de sintomas 1208 ou uma lista de patógenos envolvidos na área de patógeno 1210 .
[00126] Em uma modalidade, o dispositivo de interação com computador também pode permitir que um usuário forneça retorno sobre a análise automática, como informações sobre as doenças reconhecidas e as pontuações de confiança calculadas. Ao clicar em SIM ou NÃO na área de retorno 1212, o usuário pode indicar um acordo ou desacordo com a análise automática. O dispositivo de interação com computador também pode permitir que um usuário corrija os resultados da análise ou forneça notas ou dados adicionais para os resultados da análise.
[00127] A Figura 13 ilustra um exemplo de dispositivo de interação com computador mostrando uma GUI gerada sob controle de programa que pode permitir que um usuário armazene ou carregue uma imagem gerada ou forneça metadados para a imagem gerada. Em uma modalidade, uma área de interação 1300 compreende um painel de cabeçalho 1312, uma área de imagem de doença 1302, um painel de título 1316, um painel de tipos 1322, um painel de cores 1324, um painel de localização 1326 e um painel de ameaças 1310. Em uma modalidade, o painel de cabeçalho 1312 exibe um título de uma função da aplicação associada que, no exemplo da Figura 13, indica que o dispositivo de interação está atualmente aceitando dados relacionados a uma localização de pinos dentro de um campo. Em uma modalidade, selecionar um ícone Salvar 1308 faz com que a aplicação salve os dados exibidos no momento no armazenamento ou armazenamento em rede e selecionar um ícone Fechar 1314 faz com que o controle de programa seja alterado para um estado anterior a partir do qual a função de pino de campo foi atingida. Em uma modalidade, em resposta a uma seleção de uma imagem exibida anteriormente pelo dispositivo de interação com computador e análise subsequente da imagem selecionada, o dispositivo de interação com computador pode exibir novamente a imagem selecionada ou uma parte da imagem que representa claramente uma doença reconhecida na área de imagem de doença 1302.
[00128] Em uma modalidade, o painel de título 1316 mostra um título e compreende um campo de nota 1318, um ícone de foto 1320 e um ícone de carregamento 1300. Tipicamente, o título é um nome do pino no campo ou o objeto da imagem exibida na área de imagem de doença 1302; um exemplo pode ser "amostra central de milho". Em uma modalidade, a seleção de um ícone de carregamento 1306 pode fazer com que o computador cliente transmita a imagem para o servidor. Em uma modalidade, selecionar o campo de nota 1318 faz com que a aplicação receba entrada especificando uma nota sobre o pino de campo associado. Em uma modalidade, a seleção do ícone de foto 1320 faz com que a aplicação acesse programaticamente uma câmera do computador cliente chamando um sistema operacional primitivo ou serviço, e aguarde a captura de uma imagem digital da câmera; a imagem capturada pode ser exibida novamente.
[00129] Em uma modalidade, o painel de tipos 1322 pode indicar um tipo de doença, como sazonal ou permanente, que foi determinado a partir da análise da imagem. O painel de tipos 1322 também pode permitir a substituição do tipo de doença indicado ou uma nova seleção de uma lista predeterminada de tipos usando os botões de opção 1332, caixas de seleção ou outros componentes. O painel de cores 1324 pode indicar uma cor da cultura representada na imagem, como verde ou amarelo, que foi determinada a partir da análise da imagem. O painel de cores 1324 também pode permitir a substituição da cor indicada da cultura ou uma nova seleção de uma lista predeterminada de cores usando os botões de opção 1336, caixas de seleção ou outros componentes. O painel de localização 1326 pode indicar uma localização geográfica onde a imagem foi tirada, em termos de coordenadas GPS, por exemplo. O painel de localização 1326 também pode aceitar uma seleção do campo de configuração 1340 que faz com que a localização geográfica seja definida como a localização atual, medida por um GPS integrado no computador cliente. Além disso, o painel de ameaças 1310 pode exibir informações adicionais sobre a imagem, como informações que identificam a doença reconhecida.
3.2.2 ESTIMANDO O RENDIMENTO DE CULTURA
[00130] Voltando à Figura 8, a etapa 808 pode igualmente ser dividido em várias etapas para estimativa do rendimento de cultura. O computador cliente pode ser configurado para executar o segundo modelo para estimar o rendimento de cultura na imagem que está sendo processada. Especificamente, quando a execução do primeiro modelo leva à determinação de um tipo de cultura, o tipo de cultura pode ser uma entrada para o segundo modelo para selecionar uma técnica específica para o tipo de cultura. Para cada imagem sendo processada, o segundo modelo pode produzir um rendimento estimado para uma cultura ou para um campo de cultura ou outros dados relacionados. Os dados relacionados podem incluir uma identificação das diferentes áreas de uma cultura, como a ponta de uma espiga de milho, o restante da espiga, grãos individuais ou cada agrupamento de grãos. Como alternativa, o computador cliente pode enviar uma solicitação incluindo a imagem que está sendo processada para o servidor para execução do segundo modelo na imagem pelo servidor e receber os resultados de execução do modelo a partir do servidor. O computador cliente pode então ser configurado para fazer com que o dispositivo de exibição sobreponha as informações de rendimento ou outros dados relacionados na imagem que está sendo exibida no momento.
[00131] A Figura 16 e Figura 17 ilustram uma interface gráfica de usuário gerenciada por um computador cliente através de dispositivos de entrada e saída em relação à estimativa de rendimento de cultura. A Figura 16 ilustra um exemplo de dispositivo de interação com computador mostrando uma GUI gerada sob controle de programa que pode fornecer um resumo ou um tutorial sobre como realizar a funcionalidade de estimativa de rendimento. Em uma modalidade, semelhante à área de interação ilustrada na Figura 10, uma área de interação 1600 inclui um campo de imagem 1602, um campo de texto 1604, um indicador de estágio 1608, um botão "Continuar" 1606 e um ícone "Cancelar". O campo de texto 1604 e o campo de imagem 1602 fornecem instruções para operar uma câmera, como uma integrada no computador cliente, para direcionar a câmera para uma cultura, como um milho, para gerar uma imagem da cultura para processamento. O campo de imagem 1602 pode exibir uma foto de uma cultura real. Quando a funcionalidade de estimativa de rendimento é invocada em resposta ao reconhecimento de um tipo de cultura, uma imagem da cultura a partir de outra perspectiva já pode estar disponível. Por exemplo, quando a cultura é milho, uma imagem do milho coberto de casca pode ter sido gerada, e essa GUI pode direcionar o usuário a remover a casca para mostrar a espiga e os grãos e gerar outra imagem do milho. O indicador de estágio 1608 mostra o estágio atual no resumo ou tutorial, como a terceira página de três páginas. Selecionar o botão Continuar 1006 causa a alteração do controle de programa para o próximo estágio do resumo ou tutorial, como a terceira página das três páginas.
[00132] A Figura 17 ilustra um exemplo de dispositivo de interação com computador mostrando uma GUI gerada sob controle de programa que pode exibir informações de rendimento. Em uma modalidade, uma área de interação 1700 compreende um painel de cabeçalho 1710 e uma área de imagem de cultura 1702. Em uma modalidade, o painel de cabeçalho exibe um título de uma função da aplicação associada que, no exemplo da Figura 17, indica que o dispositivo de interação está exibindo dados referentes ao rendimento de uma cultura ou de um campo no qual a cultura está localizada. A seleção de um botão Usar 1716 faz com que a aplicação gere um relatório de rendimento com base na imagem já capturada e atualmente exibida na área de imagem de cultura 1702. A seleção de um botão Recaptura 1714 faz com que a aplicação permita a recaptura de uma foto e a geração de uma imagem correspondente para substituir a imagem atualmente exibida.
[00133] Em uma modalidade, em resposta à geração de uma imagem e estimativa de rendimento subsequente, o dispositivo de interação com computador pode exibir novamente a imagem na área 1702. O dispositivo de interação com computador pode exibir ainda os dados de estimativa de rendimento em uma área de informação de rendimento 1720 como uma sobreposição. Neste exemplo, a imagem gerada descreve o milho, e o dispositivo de interação com computador é exibido como dados de estimativa de rendimento, incluindo a contagem de grãos 1706 do milho, dados de volume do milho 1708, incluindo a largura, o comprimento e o tamanho total, e a estimativa de rendimento de um campo em que o milho está localizado em 1704 em termos de alqueires por acre. A área de informações de rendimento 1702 também pode incluir um botão de solicitação de informações 1712 que permite ao usuário solicitar mais informações sobre rendimento.

Claims (20)

  1. Método implementado por computador de determinação de um número de grãos a partir de uma imagem de um milho, caracterizado pelo fato de que compreende:
    receber, por um processador (404), uma imagem digital que é codificada em escala de cor ou de cinza;
    segmentar a imagem de dados de primeiro plano associados a um milho compreendendo um grupo de grãos cultivados em uma espiga de milho e dados de segundo plano para criar uma imagem atualizada;
    identificar, por um processador, agrupamentos de um ou mais pixels conectados nos dados de primeiro plano;
    realizar limiar em um tamanho de cada um dos agrupamentos, aqui classificando os dados de primeiro plano em uma ou mais áreas de grão único e separar uma ou mais áreas de grão múltiplos baseadas em um tamanho de cada um dos agrupamentos sem segmentar adicionalmente qualquer dos agrupamentos,
    cada uma ou mais áreas de grão único correspondentes a um grão único,
    cada uma ou mais áreas de grão múltiplos correspondentes a grãos múltiplos;
    determinar um número total de grãos com base em um ou mais tamanhos de uma ou mais áreas de grão único e uma ou mais tamanhos de uma ou mais áreas de grão múltiplo;
    causar uma exibição do número total de grãos.
  2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que segmentar compreende:
    aprimorar a imagem em contraste para criar uma imagem aprimorada;
    dividir a imagem aprimorada em dados de primeiro plano e dados de segundo plano, para criar uma imagem dividida;
    atualizar a imagem segmentada removendo os valores de ruído para criar uma imagem atualizada.
  3. Método, de acordo com a reivindicação 2, caracterizado pelo fato de que aprimorar a imagem compreende realizar equalização de histograma adaptativo limitada por contraste (CLAHE).
  4. Método, de acordo com a reivindicação 2, caracterizado pelo fato de que dividir a imagem aprimorada compreende realizar um método de limiar constante e um método de limiar adaptativo.
  5. Método, de acordo com a reivindicação 4, caracterizado pelo fato de que o método de limiar constante é limiar de Otsu e o método de limiar adaptativo é baseado em uma soma ponderada de valores de vizinhança com pesos formando uma janela Gaussiana.
  6. Método, de acordo com a reivindicação 4, caracterizado pelo fato de que dividir a imagem aprimorada compreende ainda classificar cada pixel como dados de primeiro plano quando o método de limiar constante ou o método de limiar adaptativo retorna uma determinação acima do limiar.
  7. Método, de acordo com a reivindicação 2, caracterizado pelo fato de que atualizar a imagem dividida compreende realizar transformações morfológicas.
  8. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que realizar compreende classificar um agrupamento dos agrupamentos como uma ou mais áreas de grão único, quando um tamanho do agrupamento não estiver acima de um limiar certo e classificar o agrupamento como uma área de grãos múltiplos, quando o tamanho do agrupamento estiver acima do limiar certo.
  9. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que realizar compreende ainda identificar uma orientação do milho na imagem e uma localização dentro do milho de cada um dos agrupamentos.
  10. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que determinar compreende:
    computar um tamanho agregado de uma ou mais áreas de grãos múltiplos;
    dividir um tamanho de cada área de grãos múltiplos de uma ou mais áreas pelo tamanho agregado.
  11. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende ainda estimar um rendimento de cultura para um determinado campo de cultura com base no número total de grãos e um número de culturas no determinado campo de cultura.
  12. Método, de acordo com a reivindicação 11, caracterizado pelo fato de que a estimativa é ainda baseada em um volume ou peso estimado do grão.
  13. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende ainda determinar um número alqueires por acre com base no número total de grãos, um número de culturas por acre, e um peso por grão à umidade padrão.
  14. Um ou mais meios de armazenamento não transitório armazenando instruções que, quando executadas por um ou mais dispositivos de computação, causam desempenho de um método de determinação de um número de grãos a partir de uma imagem de um milho, o método caracterizado pelo fato de que compreende:
    receber uma imagem digital que é codificada em escala de cor ou de cinza;
    segmentar a imagem de dados de primeiro plano associados a um milho compreendendo um grupo de grãos cultivados em uma espiga de milho e dados de segundo plano para criar uma imagem atualizada;
    identificar agrupamentos de um ou mais pixels conectados nos dados de primeiro plano;
    realizar limiar em um tamanho de cada um dos agrupamentos, aqui classificando os dados de primeiro plano em uma ou mais áreas de grão único e separar uma ou mais áreas de grão múltiplos baseadas em um tamanho de cada um dos agrupamentos sem segmentar adicionalmente qualquer dos agrupamentos,
    cada uma ou mais áreas de grão único correspondentes a um grão único,
    cada uma ou mais áreas de grão múltiplos correspondentes a grãos múltiplos;
    determinar um número total de grãos com base em um ou mais tamanhos de uma ou mais áreas de grão único e uma ou mais tamanhos de uma ou mais áreas de grão múltiplo;
    fazer uma exibição do número total de grãos.
  15. Meios de armazenamento não transitório, de acordo com a reivindicação 14, caracterizado pelo fato de que segmentar compreende:
    aprimorar a imagem em contraste para criar uma imagem aprimorada;
    dividir a imagem aprimorada em dados de primeiro plano e dados de segundo plano, para criar uma imagem dividida;
    atualizar a imagem dividida removendo os valores de ruído para criar uma imagem atualizada.
  16. Meios de armazenamento não transitório, de acordo com a reivindicação 14, caracterizado pelo fato de que realizar compreende ainda identificar uma orientação do milho na imagem e uma localização dentro do milho de cada um dos agrupamentos.
  17. Meios de armazenamento não transitório, de acordo com a reivindicação 14, caracterizado pelo fato de que determinar compreende:
    computar um tamanho agregado de uma ou mais áreas de grãos múltiplos;
    dividir um tamanho de cada área de grãos múltiplos de uma ou mais áreas pelo tamanho agregado.
  18. Meios de armazenamento não transitório, de acordo com a reivindicação 14, caracterizado pelo fato de que compreende ainda estimar um rendimento de cultura para um determinado campo de cultura com base no tamanho do grupo de componentes e um número de culturas no campo de cultura determinado.
  19. Meios de armazenamento não transitório, de acordo com a reivindicação 18, caracterizado pelo fato de que a estimativa é ainda baseada em um volume ou peso estimado da cultura.
  20. Meios de armazenamento não transitório, de acordo com a reivindicação 14, caracterizado pelo fato de que o método compreende ainda determinar um número de alqueires por acre com base no número total de grãos, um número de culturas por acre, e um peso por grão à umidade padrão.
BR122020015963-4A 2017-08-28 2018-08-27 Método implementado por computador de determinação de um número de grãos a partir de uma imagem de um milho e meios de armazenamento não transitório BR122020015963B1 (pt)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US15/688,567 US10438302B2 (en) 2017-08-28 2017-08-28 Crop disease recognition and yield estimation
US15/688,567 2017-08-28
BR112020004115-7 2018-08-27
PCT/US2018/048169 WO2019046203A1 (en) 2017-08-28 2018-08-27 RECOGNITION OF CROP DISEASES AND ESTIMATED YIELD
BR112020004115-7A BR112020004115A2 (pt) 2017-08-28 2018-08-27 meio de armazenamento não transitório, método implementado por computador de reconhecimento de doença em tempo real em um campo de cultura e método implementado por computador de determinação de um número de grãos a partir de uma imagem de um milho

Publications (2)

Publication Number Publication Date
BR122020015963A2 true BR122020015963A2 (pt) 2020-11-10
BR122020015963B1 BR122020015963B1 (pt) 2022-06-14

Family

ID=65435220

Family Applications (2)

Application Number Title Priority Date Filing Date
BR112020004115-7A BR112020004115A2 (pt) 2017-08-28 2018-08-27 meio de armazenamento não transitório, método implementado por computador de reconhecimento de doença em tempo real em um campo de cultura e método implementado por computador de determinação de um número de grãos a partir de uma imagem de um milho
BR122020015963-4A BR122020015963B1 (pt) 2017-08-28 2018-08-27 Método implementado por computador de determinação de um número de grãos a partir de uma imagem de um milho e meios de armazenamento não transitório

Family Applications Before (1)

Application Number Title Priority Date Filing Date
BR112020004115-7A BR112020004115A2 (pt) 2017-08-28 2018-08-27 meio de armazenamento não transitório, método implementado por computador de reconhecimento de doença em tempo real em um campo de cultura e método implementado por computador de determinação de um número de grãos a partir de uma imagem de um milho

Country Status (7)

Country Link
US (2) US10438302B2 (pt)
EP (1) EP3676789A4 (pt)
AR (1) AR112881A1 (pt)
BR (2) BR112020004115A2 (pt)
CA (2) CA3152675A1 (pt)
WO (1) WO2019046203A1 (pt)
ZA (2) ZA202001608B (pt)

Families Citing this family (83)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11212962B2 (en) * 2013-02-20 2022-01-04 Deere & Company Field condition determination
US10664702B2 (en) 2016-12-30 2020-05-26 International Business Machines Corporation Method and system for crop recognition and boundary delineation
US10586105B2 (en) * 2016-12-30 2020-03-10 International Business Machines Corporation Method and system for crop type identification using satellite observation and weather data
US10445877B2 (en) 2016-12-30 2019-10-15 International Business Machines Corporation Method and system for crop recognition and boundary delineation
DE102017207347A1 (de) * 2017-05-02 2018-11-08 Deere & Company Verfahren und Anordnung zur Kontrolle der Geschwindigkeit einer Ballenpresse
US9984455B1 (en) * 2017-06-05 2018-05-29 Hana Resources, Inc. Organism growth prediction system using drone-captured images
US10438302B2 (en) 2017-08-28 2019-10-08 The Climate Corporation Crop disease recognition and yield estimation
US11593897B2 (en) * 2017-09-29 2023-02-28 Basf Se System and method for optimization of crop protection
US10423850B2 (en) 2017-10-05 2019-09-24 The Climate Corporation Disease recognition from images having a large field of view
US11235874B2 (en) 2018-03-30 2022-02-01 Greensight Agronomics, Inc. Automated drone-based spraying system
US11116145B2 (en) * 2018-03-30 2021-09-14 Greensight Argonomics, Inc. Automated optimization of agricultural treatments based on raster image data system
US10929664B2 (en) * 2018-03-30 2021-02-23 Iunu, Inc. Visual observer of unmanned aerial vehicle for monitoring horticultural grow operations
US11205073B2 (en) 2018-03-30 2021-12-21 Greensight Agronomics, Inc. System to automatically detect and report changes over time in a large imaging data set
US11483981B1 (en) * 2018-05-14 2022-11-01 Crop One Holdings, Inc. Systems and methods for providing a low energy use farm
US10748042B2 (en) * 2018-06-22 2020-08-18 Cnh Industrial Canada, Ltd. Measuring crop residue from imagery using a machine-learned convolutional neural network
US20210398190A1 (en) * 2018-10-19 2021-12-23 Basf Se Computer system and computer-implemented method for optimization of crop protection
JP7357674B2 (ja) * 2018-10-24 2023-10-06 クライメイト、リミテッド、ライアビリティー、カンパニー 改良された機械学習による植物病害の感染検出
US10713542B2 (en) * 2018-10-24 2020-07-14 The Climate Corporation Detection of plant diseases with multi-stage, multi-scale deep learning
US11240961B2 (en) 2018-10-26 2022-02-08 Deere & Company Controlling a harvesting machine based on a geo-spatial representation indicating where the harvesting machine is likely to reach capacity
US11589509B2 (en) 2018-10-26 2023-02-28 Deere & Company Predictive machine characteristic map generation and control system
US11467605B2 (en) 2019-04-10 2022-10-11 Deere & Company Zonal machine control
US11641800B2 (en) 2020-02-06 2023-05-09 Deere & Company Agricultural harvesting machine with pre-emergence weed detection and mitigation system
US11079725B2 (en) 2019-04-10 2021-08-03 Deere & Company Machine control using real-time model
US11957072B2 (en) 2020-02-06 2024-04-16 Deere & Company Pre-emergence weed detection and mitigation system
US11178818B2 (en) 2018-10-26 2021-11-23 Deere & Company Harvesting machine control system with fill level processing based on yield data
US11653588B2 (en) 2018-10-26 2023-05-23 Deere & Company Yield map generation and control system
US11672203B2 (en) 2018-10-26 2023-06-13 Deere & Company Predictive map generation and control
US11744168B2 (en) 2019-11-29 2023-09-05 Soilmetrix, Inc. Enhanced management zones for precision agriculture
US11120552B2 (en) * 2019-02-27 2021-09-14 International Business Machines Corporation Crop grading via deep learning
CN110009043B (zh) * 2019-04-09 2021-08-17 广东省智能制造研究所 一种基于深度卷积神经网络的病虫害检测方法
CN110021430A (zh) * 2019-04-09 2019-07-16 科大讯飞股份有限公司 一种病灶的属性信息预测方法及装置
US11778945B2 (en) 2019-04-10 2023-10-10 Deere & Company Machine control using real-time model
US11234366B2 (en) 2019-04-10 2022-02-01 Deere & Company Image selection for machine control
US11212954B2 (en) * 2019-05-08 2022-01-04 Deere & Company Apparatus and methods for field operations based on historical field operation data
US11290212B2 (en) * 2019-06-18 2022-03-29 The Government Of The United States Of America, As Represented By The Secretary Of The Navy Methods, apparatuses and systems for time delay estimation
EP4027771A1 (en) * 2019-09-10 2022-07-20 Signify Holding B.V. Rendering images stored with grow protocol along with conditions per growth stage
CN112990239A (zh) * 2019-12-13 2021-06-18 中移(成都)信息通信科技有限公司 识别模型训练方法、辣椒疮痂病识别方法及装置
CN113011220A (zh) * 2019-12-19 2021-06-22 广州极飞科技股份有限公司 穗数识别方法、装置、存储介质及处理器
US11477940B2 (en) 2020-03-26 2022-10-25 Deere & Company Mobile work machine control based on zone parameter modification
GB202009146D0 (en) * 2020-06-16 2020-07-29 Dark Horse Tech Ltd System and method for crop monitoring
CN111918030B (zh) * 2020-07-22 2022-07-01 南京科沃云计算信息技术有限公司 一种基于边缘计算的农作物病虫害识别系统及其识别方法
CN111727785A (zh) * 2020-07-27 2020-10-02 贵州省烟草科学研究院 一种烟草青枯病始发期的预报方法
CN111915096B (zh) * 2020-08-14 2021-03-09 中国科学院地理科学与资源研究所 基于作物模型、遥感数据和气候预测信息的作物产量早期预报技术
WO2022049190A1 (en) * 2020-09-04 2022-03-10 Basf Se System and method for enhancing a plant image database for improved damage identification on plants
CN112100419B (zh) * 2020-09-15 2024-02-06 贵州迅畅科技有限公司 一种基于图像检索的单幅天气图像识别方法及系统
US11849671B2 (en) 2020-10-09 2023-12-26 Deere & Company Crop state map generation and control system
US11727680B2 (en) 2020-10-09 2023-08-15 Deere & Company Predictive map generation based on seeding characteristics and control
US11864483B2 (en) 2020-10-09 2024-01-09 Deere & Company Predictive map generation and control system
US11474523B2 (en) 2020-10-09 2022-10-18 Deere & Company Machine control using a predictive speed map
US11650587B2 (en) 2020-10-09 2023-05-16 Deere & Company Predictive power map generation and control system
US11711995B2 (en) 2020-10-09 2023-08-01 Deere & Company Machine control using a predictive map
US11889788B2 (en) 2020-10-09 2024-02-06 Deere & Company Predictive biomass map generation and control
US11849672B2 (en) 2020-10-09 2023-12-26 Deere & Company Machine control using a predictive map
US11825768B2 (en) 2020-10-09 2023-11-28 Deere & Company Machine control using a predictive map
US11635765B2 (en) 2020-10-09 2023-04-25 Deere & Company Crop state map generation and control system
US11874669B2 (en) 2020-10-09 2024-01-16 Deere & Company Map generation and control system
US11927459B2 (en) 2020-10-09 2024-03-12 Deere & Company Machine control using a predictive map
US11592822B2 (en) 2020-10-09 2023-02-28 Deere & Company Machine control using a predictive map
US11675354B2 (en) 2020-10-09 2023-06-13 Deere & Company Machine control using a predictive map
US11895948B2 (en) 2020-10-09 2024-02-13 Deere & Company Predictive map generation and control based on soil properties
US11844311B2 (en) 2020-10-09 2023-12-19 Deere & Company Machine control using a predictive map
US11871697B2 (en) 2020-10-09 2024-01-16 Deere & Company Crop moisture map generation and control system
US11845449B2 (en) 2020-10-09 2023-12-19 Deere & Company Map generation and control system
US11983009B2 (en) 2020-10-09 2024-05-14 Deere & Company Map generation and control system
US11946747B2 (en) 2020-10-09 2024-04-02 Deere & Company Crop constituent map generation and control system
US11889787B2 (en) 2020-10-09 2024-02-06 Deere & Company Predictive speed map generation and control system
US11783576B2 (en) * 2020-10-29 2023-10-10 Deere & Company Method and system for optical yield measurement of a standing crop in a field
US11741589B2 (en) * 2020-10-29 2023-08-29 Deere & Company Method and system for optical yield measurement of a standing crop in a field
CN112560644B (zh) * 2020-12-11 2021-09-28 四川大学 一种适应田野的农作物病虫害自动识别方法
CN112749675A (zh) * 2021-01-20 2021-05-04 云南农业大学 一种基于卷积神经网络的马铃薯病害识别方法
GB2604130A (en) * 2021-02-25 2022-08-31 Pci Tech Investments Ltd Systems and methods for smart farming
CA3117042A1 (en) 2021-05-03 2022-11-03 AIRM Consulting Ltd. Computer vision system and method for agriculture
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
WO2023095041A1 (en) * 2021-11-24 2023-06-01 Upl Limited Method and system for automatically identifying crop infestation
WO2023105030A1 (en) * 2021-12-10 2023-06-15 Basf Agro Trademarks Gmbh Method and system for predicting a crop disease in agriculture
EP4245135A1 (de) 2022-03-16 2023-09-20 Bayer AG Durchführen und dokumentieren einer applikation von pflanzenschutzmittel
US11688169B1 (en) * 2022-08-29 2023-06-27 Bnsf Railway Company Drone based automated yard check
EP4364547A1 (en) * 2022-11-03 2024-05-08 Agco Corporation Geographically-linked farming images and the generation thereof
CN116206202A (zh) * 2023-02-21 2023-06-02 北京甲板智慧科技有限公司 基于ai自动识别的林业病虫害智能监测管理系统
CN116343201B (zh) * 2023-05-29 2023-09-19 安徽高哲信息技术有限公司 谷粒类别识别方法、装置及计算机设备
CN116823949B (zh) * 2023-06-13 2023-12-01 武汉天进科技有限公司 一种小型化无人机机载实时图像处理装置
CN116584472B (zh) * 2023-07-13 2023-10-27 四川省农业机械科学研究院 一种基于多级控制的脆李喷药方法和系统

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL122258A (en) * 1997-11-20 2002-08-14 Israel Aircraft Ind Ltd Method and system for determining temperature and/or emissivity function of objects by remote sensing
US6654506B1 (en) 2000-01-25 2003-11-25 Eastman Kodak Company Method for automatically creating cropped and zoomed versions of photographic images
JP2004530875A (ja) * 2001-04-13 2004-10-07 カーギル、インコーポレイテッド 農業および/または食品の原料の評価方法、その適用および製品
US7054496B2 (en) 2002-06-27 2006-05-30 Seiko Epson Corporation Method and apparatus for displaying arbitrarily magnified high resolution images using compressed domain processing
US20080304710A1 (en) * 2007-06-08 2008-12-11 Lijie Xu Method and apparatus for processing image of at least one seedling
US8538966B2 (en) 2008-11-21 2013-09-17 Randall Reese Machine, program product, and computer-implemented method for file management, storage, and access utilizing a user-selected trigger event
BRPI0905641A2 (pt) * 2009-07-08 2011-03-29 Basf Se sistema para diagnóstico de anomalias de plantas
CN103443820B (zh) * 2011-03-15 2017-11-10 富士通株式会社 便携式装置、操作辅助程序、信息提供方法以及信息提供程序
US20150206255A1 (en) * 2011-05-13 2015-07-23 HydroBio, Inc Method and system to prescribe variable seeding density across a cultivated field using remotely sensed data
US8493460B2 (en) 2011-09-15 2013-07-23 DigitalOptics Corporation Europe Limited Registration of differently scaled images
TWI435234B (zh) * 2011-11-24 2014-04-21 Inst Information Industry Plant disease identification method, system and record media
EP2788958B1 (en) * 2011-12-05 2019-09-18 Commonwealth Scientific and Industrial Research Organisation Method and system for characterising plant phenotype
US9355317B2 (en) * 2011-12-14 2016-05-31 Nec Corporation Video processing system, video processing method, video processing device for mobile terminal or server and control method and control program thereof
US20130169834A1 (en) 2011-12-30 2013-07-04 Advanced Micro Devices, Inc. Photo extraction from video
US10520482B2 (en) * 2012-06-01 2019-12-31 Agerpoint, Inc. Systems and methods for monitoring agricultural products
CA2879220A1 (en) 2012-07-23 2014-01-30 Dow Agrosciences Llc Kernel counter
US9113590B2 (en) * 2012-08-06 2015-08-25 Superior Edge, Inc. Methods, apparatus, and systems for determining in-season crop status in an agricultural crop and alerting users
JP6049767B2 (ja) * 2013-02-01 2016-12-21 株式会社ブリリアントサービス 栽培システム、栽培プログラム、および栽培方法
US9147110B2 (en) * 2013-04-05 2015-09-29 Pioneer Hi-Bred International, Inc. Field and crop evaluation tool and methods of use
US10571667B2 (en) * 2013-12-10 2020-02-25 Arvalis Institut Du Vegetal Device and method for imaging an object by arranging a reflective optical surface or reflective optical system around the object
US10068354B2 (en) * 2014-01-02 2018-09-04 Deere & Company Obtaining and displaying agricultural data
US10212911B2 (en) * 2014-06-26 2019-02-26 Indigo Agriculture, Inc. Endophytes, associated compositions, and methods of use thereof
US10568316B2 (en) 2014-08-15 2020-02-25 Monsanto Technology Llc Apparatus and methods for in-field data collection and sampling
US10186029B2 (en) * 2014-09-26 2019-01-22 Wisconsin Alumni Research Foundation Object characterization
US9734400B2 (en) * 2015-01-30 2017-08-15 AgriSight, Inc. System and method for field variance determination
US10349584B2 (en) 2014-11-24 2019-07-16 Prospera Technologies, Ltd. System and method for plant monitoring
IL236606B (en) 2015-01-11 2020-09-30 Gornik Amihay Standards and methods for agricultural monitoring
US9792557B2 (en) * 2015-01-14 2017-10-17 Accenture Global Services Limited Precision agriculture system
WO2016123525A1 (en) * 2015-01-30 2016-08-04 Raytheon Company Apparatus and methods for classifying and counting corn kernels
US9638678B2 (en) * 2015-01-30 2017-05-02 AgriSight, Inc. System and method for crop health monitoring
US10157472B2 (en) * 2015-03-12 2018-12-18 Raytheon Company Apparatus and processes for corn moisture analysis and prediction of optimum harvest date
US20160309646A1 (en) * 2015-04-24 2016-10-27 360 Yield Center, Llc Agronomic systems, methods and apparatuses
US10019631B2 (en) 2015-11-05 2018-07-10 Qualcomm Incorporated Adapting to appearance variations when tracking a target object in video sequence
US10491879B2 (en) * 2016-01-15 2019-11-26 Blue River Technology Inc. Plant feature detection using captured images
US10713768B2 (en) * 2017-07-14 2020-07-14 Pioneer Hi-Bred International, Inc. Methods of yield assessment with crop photometry
US10438302B2 (en) 2017-08-28 2019-10-08 The Climate Corporation Crop disease recognition and yield estimation
US10423850B2 (en) 2017-10-05 2019-09-24 The Climate Corporation Disease recognition from images having a large field of view

Also Published As

Publication number Publication date
US20200051180A1 (en) 2020-02-13
AR112881A1 (es) 2019-12-26
WO2019046203A1 (en) 2019-03-07
ZA202001608B (en) 2022-06-29
CA3074217A1 (en) 2019-03-07
CA3152675A1 (en) 2019-03-07
US20190066234A1 (en) 2019-02-28
CA3074217C (en) 2022-05-10
ZA202105953B (en) 2023-01-25
US11176623B2 (en) 2021-11-16
EP3676789A4 (en) 2020-08-05
BR122020015963B1 (pt) 2022-06-14
US10438302B2 (en) 2019-10-08
EP3676789A1 (en) 2020-07-08
BR112020004115A2 (pt) 2020-08-18

Similar Documents

Publication Publication Date Title
US11176623B2 (en) Crop component count
US10755129B2 (en) Disease recognition from images having a large field of view
US11615276B2 (en) Detection of plant diseases with multi-stage, multi-scale deep learning
US11852618B2 (en) Detecting infection of plant diseases by classifying plant photos
BR112021006133A2 (pt) técnicas de aprendizado de máquina para identificar nuvens e sombras de nuvem em imagística por satélite
BR112020009202A2 (pt) seleção de sementes híbridas e otimização de portfólio de sementes por campo
BR112020022715A2 (pt) análise e apresentação de dados agrícolas
BR112019009999A2 (pt) identificação de zonas de gerenciamento em campos agrícolas e geração de planos de plantio para as zonas
BR112017026437B1 (pt) Sistema de computador e método implantado por computador para monitorar operações de um ou mais campos
BR112020009205A2 (pt) seleção de sementes híbridas e otimização de portfólio de sementes por campo
BR112019018057B1 (pt) Método implementado por computador para selecionar localizações em um campo para amostragem de tratamento
BR112021001667A2 (pt) previsão automática de rendimentos e recomendação de taxas de semeadura com base em dados meteorológicos
BR112021006110A2 (pt) sistemas e métodos para identificar e utilizar locais de teste em campos agrícolas
BR112021010115A2 (pt) Utilizando modelos estatísticos espaciais para implementar ensaios agronômicos

Legal Events

Date Code Title Description
B03A Publication of a patent application or of a certificate of addition of invention [chapter 3.1 patent gazette]
B07A Application suspended after technical examination (opinion) [chapter 7.1 patent gazette]
B07B Technical examination (opinion): publication cancelled [chapter 7.2 patent gazette]

Free format text: ANULADA A PUBLICACAO CODIGO 7.1 NA RPI NO 2604 DE 01/12/2020 POR TER SIDO INDEVIDA.

B07A Application suspended after technical examination (opinion) [chapter 7.1 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B25D Requested change of name of applicant approved

Owner name: CLIMATE LLC (US)

B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 27/08/2018, OBSERVADAS AS CONDICOES LEGAIS

B25G Requested change of headquarter approved

Owner name: CLIMATE LLC (US)