BR112016025867B1 - Sistema de identificação de objeto em ambiente de mundo real e tempo real e sistema de processamento de tubulação para uso no mesmo - Google Patents

Sistema de identificação de objeto em ambiente de mundo real e tempo real e sistema de processamento de tubulação para uso no mesmo Download PDF

Info

Publication number
BR112016025867B1
BR112016025867B1 BR112016025867-3A BR112016025867A BR112016025867B1 BR 112016025867 B1 BR112016025867 B1 BR 112016025867B1 BR 112016025867 A BR112016025867 A BR 112016025867A BR 112016025867 B1 BR112016025867 B1 BR 112016025867B1
Authority
BR
Brazil
Prior art keywords
image
central processing
processing unit
segmentation
object identification
Prior art date
Application number
BR112016025867-3A
Other languages
English (en)
Other versions
BR112016025867A8 (pt
BR112016025867A2 (pt
Inventor
Steven Rees
Original Assignee
Horticulture Innovation Australia Limited
University Of Southern Queensland
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 Horticulture Innovation Australia Limited, University Of Southern Queensland filed Critical Horticulture Innovation Australia Limited
Publication of BR112016025867A2 publication Critical patent/BR112016025867A2/pt
Publication of BR112016025867A8 publication Critical patent/BR112016025867A8/pt
Publication of BR112016025867B1 publication Critical patent/BR112016025867B1/pt

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B05SPRAYING OR ATOMISING IN GENERAL; APPLYING FLUENT MATERIALS TO SURFACES, IN GENERAL
    • B05BSPRAYING APPARATUS; ATOMISING APPARATUS; NOZZLES
    • B05B12/00Arrangements for controlling delivery; Arrangements for controlling the spray area
    • B05B12/02Arrangements for controlling delivery; Arrangements for controlling the spray area for controlling time, or sequence, of delivery
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B05SPRAYING OR ATOMISING IN GENERAL; APPLYING FLUENT MATERIALS TO SURFACES, IN GENERAL
    • B05BSPRAYING APPARATUS; ATOMISING APPARATUS; NOZZLES
    • B05B12/00Arrangements for controlling delivery; Arrangements for controlling the spray area
    • B05B12/08Arrangements for controlling delivery; Arrangements for controlling the spray area responsive to condition of liquid or other fluent material to be discharged, of ambient medium or of target ; responsive to condition of spray devices or of supply means, e.g. pipes, pumps or their drive means
    • B05B12/12Arrangements for controlling delivery; Arrangements for controlling the spray area responsive to condition of liquid or other fluent material to be discharged, of ambient medium or of target ; responsive to condition of spray devices or of supply means, e.g. pipes, pumps or their drive means responsive to conditions of ambient medium or target, e.g. humidity, temperature position or movement of the target relative to the spray apparatus
    • B05B12/122Arrangements for controlling delivery; Arrangements for controlling the spray area responsive to condition of liquid or other fluent material to be discharged, of ambient medium or of target ; responsive to condition of spray devices or of supply means, e.g. pipes, pumps or their drive means responsive to conditions of ambient medium or target, e.g. humidity, temperature position or movement of the target relative to the spray apparatus responsive to presence or shape of target
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/94Hardware or software architectures specially adapted for image or video understanding
    • G06V10/955Hardware or software architectures specially adapted for image or video understanding using specific electronic processors
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01MCATCHING, TRAPPING OR SCARING OF ANIMALS; APPARATUS FOR THE DESTRUCTION OF NOXIOUS ANIMALS OR NOXIOUS PLANTS
    • A01M21/00Apparatus for the destruction of unwanted vegetation, e.g. weeds
    • A01M21/04Apparatus for destruction by steam, chemicals, burning, or electricity
    • A01M21/043Apparatus for destruction by steam, chemicals, burning, or electricity by chemicals
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01MCATCHING, TRAPPING OR SCARING OF ANIMALS; APPARATUS FOR THE DESTRUCTION OF NOXIOUS ANIMALS OR NOXIOUS PLANTS
    • A01M7/00Special adaptations or arrangements of liquid-spraying apparatus for purposes covered by this subclass
    • A01M7/0089Regulating or controlling systems
    • G06K9/627
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/42Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation

Landscapes

  • Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Environmental Sciences (AREA)
  • Zoology (AREA)
  • Wood Science & Technology (AREA)
  • Pest Control & Pesticides (AREA)
  • Insects & Arthropods (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Toxicology (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Catching Or Destruction (AREA)
  • Measuring Or Testing Involving Enzymes Or Micro-Organisms (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

MÉTODOS, SISTEMAS, E DISPOSITIVOS RELACIONADOS A IDENTIFICAÇÃO DE OBJETO EM TEMPO REAL. As várias modalidades divulgadas aqui dizem respeito a identificação de um ou mais objetos específicos dentre vários outros objetos. Certas implementações exemplares dizem respeito a sistemas, métodos, e dispositivos para identificação de uma ou mais espécies de plantas específicas dentre várias plantas diferentes, especialmente identificação em tempo real de espécies de plantas de sementes em um ambiente de mundo real tal como um campo de cultivo. Outras modalidades dizem respeito a sistemas de identificação, métodos, ou dispositivos em combinação com componentes de ação, tais como um sistema de pulverização para pulverizar as plantas de semente identificadas em tempo real.

Description

Referência Cruzada a Pedidos Relacionados
[001]Este pedido reivindica prioridade sobre o Pedido Provisório dos EUA 61/988,541, apresentado a 5 de maio de 2014 e intitulado "Métodos, Sistemas e Dispositivos Relativos a Identificação de Objeto em Tempo Real", que é aqui incorpo-rado por referência na sua totalidade.
Campo da Invenção
[002]As várias modalidades aqui divulgadas se referem a sistemas e métodos para a identificação de objeto, incluindo a identificação de objeto em tempo real. Algumas modalidades específicas incluem sistemas e métodos para a identificação de planta. Outras implementações se referem a identificação e aplicação de tratamento seletivo de plantas em tempo real para as plantas alvo. Alguns dos sistemas têm um processo de segmentação que é baseado na profundidade e na cor. Outras implementações são configuradas para executar várias análises em paralelo, permitindo assim que o sistema identifique e trate seletivamente as plantas em tempo real.
Antecedentes da Invenção
[003]Assim como as práticas agrícolas mudaram, também os métodos de controle de ervas daninhas. A crescente adoção de práticas de agricultura de conservação - incluindo mínimo de plantio direto e de práticas de plantio direto - tem visto um aumento da utilização do herbicida (e outros tipos de pesticidas) para o controle de ervas daninhas, e este aumento na utilização está causando reprodução seletiva de características de tolerância (também conhecido como "resistência" na indústria da agricultura) ao herbicida em gerações sucessivas. Atualmente, a técnica padrão para quebrar a tolerância é a utilização de um herbicida com uma ação de morte diferente (que é muitas vezes mais caro do que os herbicidas já utilizados) e/ou o cultivo mecânico. Geralmente, o herbicida é aplicado com uma lança de pulverização que, por um lado, pulveriza o herbicida de uma maneira difundida quer nas ervas daninhas quer na plantação, e por outro lado, se focaliza de modo que o herbicida é aplicado somente na área entre as fileiras da plantação. Em qualquer método, o herbicida é pulverizado continuamente através do campo.
[004]Uma alternativa económica à "ação específica" ou aos herbicidas "seletivos" - mais dispendiosa - é através da pulverização localizada automática das ervas daninhas. No entanto, as atuais tecnologias de pulverização localizada comerciais só são capazes de reconhecer a presença de vegetação (distinguindo as plantas do fundo, tal como solo ou restolho) - as tecnologias não têm a capacidade de identi-ficar a vegetação específica e, portanto, não é possível distinguir plantas daninhas das plantas de cultura. Além disso, tecnologias experimentais adicionais têm sido desenvolvidas para condições controladas e, consequentemente, não são adequadas para alcançar uma solução comercial viável.
[003]Existe uma necessidade na técnica para sistemas e métodos melhorados para a identificação de objeto em tempo real, incluindo a identificação de espécies de plantas em tempo real.
Breve Resumo da Invenção
[006]Aqui discutidos são vários sistemas e métodos de identificação de objeto em ambiente de mundo real e em tempo real. Além disso, aqui discutidos são diferentes sistemas e métodos de processamento de tubulações.
[007]No Exemplo 1, um sistema de identificação de objeto em ambiente de mundo real e em tempo real compreende um componente controlador central compreendendo um processador, um sistema de visão acoplado operativamente ao componente controlador central e um módulo de segmentação associado com o componente controlador central. O sistema de visão está configurado para capturar pelo menos uma imagem de uma área alvo, e a pelo menos uma imagem compre- ende uma pluralidade de pixels compreendendo dados de profundidade e dados espectrais. O módulo de segmentação está configurado para identificar objetos na área alvo. Além disso, o módulo de segmentação está configurado para varrer os dados de profundidade e os dados espectrais, a fim de identificar pixels de captura de objetos com conectividade de profundidade e conectividade espectral.
[008]O Exemplo 2 se refere ao sistema de identificação de objeto em tempo real de acordo com o Exemplo 1, compreendendo ainda um módulo de ação associado com o componente controlador central, o módulo de ação configurado para causar o componente controlador a acionar uma ação com base na informação do módulo de segmentação.
[009]O Exemplo 3 se refere ao sistema de identificação de objeto em tempo real de acordo com o Exemplo 2, em que a ação compreende salvar uma imagem ou alvejar, pelo menos, um dos objetos.
[010]O Exemplo 4 se refere ao sistema de identificação de objeto em tempo real de acordo com o Exemplo 1, em que o módulo de segmentação está ainda configurado para utilizar funções selecionáveis durante a varredura dos dados de pro-fundidade e espectrais, a fim de identificar os objetos na, pelo menos uma, imagem, e reter ou deletar a, pelo menos uma, imagem dos objetos com base na comparação dos objetos com as características predeterminadas dos objetos. O Exemplo 5 se refere ao sistema de identificação de objeto em tempo real de acordo com o Exemplo 4, compreendendo ainda um módulo de extração associado com o componente controlador central, um módulo de classificação associado com o componente con-trolador central e um módulo de ação associado com o componente controlador central. O módulo de extração está configurado para extrair características de uma imagem retida, em que as características compreendem a textura, o tamanho, a forma ou a altura. O módulo de classificação está configurado para comparar as características extraídas com as características conhecidas de um objeto conhecido, pelo qual cada caraterística extraída é classificada. O módulo de ação está ainda configurado para causar o componente controlador a acionar uma ação com base na informação do módulo de classificação.
[011]O Exemplo 6 se refere ao sistema de identificação de objeto em tempo real de acordo com o Exemplo 5, em que o sistema de identificação de objeto é um sistema de identificação de planta, compreendendo ainda um sistema de pulverização. O sistema de pulverização compreende um reservatório configurado para receber uma composição pesticida, e uma lança compreendendo uma pluralidade de bocais configurados para pulverizar a composição pesticida. A ação compreende acionar um bocal selecionado da pluralidade de bocais para pulverizar com base na informação do módulo de classificação.
[012]O Exemplo 7 se refere ao sistema de identificação de objeto em tempo real de acordo com o Exemplo 4, em que as funções selecionáveis compreendem bandeiras.
[013]No Exemplo 8, um sistema de processamento de tubulação compreende um componente controlador central. O componente controlador central compreende uma primeira unidade de processamento central, uma segunda unidade de processamento central, uma terceira unidade de processamento central, uma quarta unidade de processamento central e uma quinta unidade de processamento central. Uma primeira função é permanentemente atribuída à, pelo menos, primeira unidade de processamento central. Uma segunda função é permanentemente atribuída à, pelo menos, segunda unidade de processamento central. Uma terceira função é permanentemente atribuída à, pelo menos, terceira unidade de processamento central. Uma quarta função é permanentemente atribuída à, pelo menos, quarta unidade de processamento central. Uma quinta função é permanentemente atribuída à, pelo menos, quinta unidade de processamento central.
[014]O Exemplo 9 se refere ao sistema de processamento de tubulação de acordo com o Exemplo 8, em que a primeira, segunda, terceira, quarta e quinta funções são sincronizadas por um acionador ou um temporizador.
[015]O Exemplo 10 se refere ao sistema de processamento de tubulação de acordo com o Exemplo 8, em que o sistema de processamento de tubulação compreende um sistema de identificação de objeto. A primeira função compreende a aquisição de imagem. A segunda função compreende a segmentação de profundidade. A terceira função compreende a extração. A quarta função compreende a classificação. A quinta função compreende acionar uma ação com base na classificação.
[016]O Exemplo 11 se refere ao sistema de processamento de tubulação de acordo com o Exemplo 10, em que, em um primeiro período de tempo, a primeira unidade de processamento central aciona a aquisição de uma primeira imagem.
[017]O Exemplo 12 se refere ao sistema de processamento de tubulação de acordo com o Exemplo 11, em que, em um segundo período de tempo, a segunda unidade de processamento central executa uma análise de profundidade na primeira imagem, e a primeira unidade de processamento central aciona a aquisição de uma segunda imagem.
[018]O Exemplo 13 se refere ao sistema de processamento de tubulação de acordo com o Exemplo 12, em que, em um terceiro período de tempo, as terceiras unidades de processamento central executam uma extração de características na primeira imagem, a segunda unidade de processamento central executa a análise de profundidade na segunda imagem, e a primeira unidade de processamento central aciona a aquisição de uma terceira imagem.
[019]O Exemplo 14 se refere ao sistema de processamento de tubulação de acordo com o Exemplo 13, em que, em um quarto período de tempo, a quarta unidade de processamento central executa uma classificação da primeira imagem, as terceiras unidades de processamento central executam a extração de características da segunda imagem, a segunda unidade de processamento central executa a análi- se de profundidade da terceira imagem, e a primeira unidade de processamento central aciona a aquisição de uma quarta imagem.
[020]O Exemplo 15 se refere ao sistema de processamento de tubulação de acordo com o Exemplo 14, em que, em um quinto período de tempo, a quinta unidade de processamento central aciona seletivamente uma ação com base na classificação da primeira imagem, a quarta unidade de processamento central executa a classificação da segunda imagem, as terceiras unidades de processamento central executam a extração de características na terceira imagem, a segunda unidade de processamento central executa a análise de profundidade da quarta imagem, e a primeira unidade de processamento central aciona a aquisição de uma quinta imagem.
[021]O Exemplo 16 se refere ao sistema de processamento de tubulação de acordo com o Exemplo 15, em que o sistema de identificação de objeto é um sistema de identificação de planta, compreendendo ainda um sistema de pulverização. O sistema de pulverização compreende um reservatório configurado para receber uma composição pesticida, e uma lança compreendendo uma pluralidade de bocais configurados para pulverizar a composição pesticida. A ação compreende acionar um bocal selecionado da pluralidade de bocais para a pulverização.
[022]O Exemplo 17 se refere ao sistema de processamento de tubulação de acordo com o Exemplo 8, compreendendo ainda pelo menos uma sexta unidade de processamento central, em que, pelo menos, uma sexta função é atribuída permanentemente à, pelo menos, sexta unidade de processamento central.
[023]O Exemplo 18 se refere ao sistema de processamento de tubulação de acordo com o Exemplo 8, em que qualquer uma de entre a primeira, segunda, terceira, quarta ou quinta funções é atribuída permanentemente a, pelo menos, duas de entre a primeira, segunda, terceira, quarta e quinta unidades de processamento central.
[024]No Exemplo 19, um sistema de identificação e pulverização seletiva de plantas compreende um sistema de pulverização e um sistema de identificação de planta. O sistema de pulverização compreende um reservatório configurado para receber uma composição pesticida, e uma lança compreendendo uma pluralidade de bocais configurados para pulverizar a composição pesticida. O sistema de identificação de planta compreende um componente controlador central compreendendo um processador, um sistema de visão acoplado operativamente ao componente controlador central e um módulo de segmentação associado com o componente controla-dor central. O sistema de visão está configurado para capturar pelo menos uma imagem de uma área alvo. A, pelo menos, uma imagem compreende uma pluralidade de pixels compreendendo dados de profundidade e dados de cor. O módulo de segmentação está configurado para identificar objetos na área alvo. O módulo de segmentação está configurado para varrer os dados de profundidade, a fim de identificar pixels de captura de objetos de profundidade semelhante, varrer os dados de cor, a fim de analisar a cor dos pixels e utilizar funções selecionáveis durante a varredura dos dados de profundidade e de cor, a fim de identificar os objetos na, pelo menos, uma imagem.
[025]O Exemplo 20 se refere ao sistema de identificação e pulverização seletiva de plantas de acordo com o Exemplo 19, em que o módulo de segmentação está ainda configurado para filtrar os objetos na, pelo menos, uma imagem. O módulo está configurado para reter ou deletar as imagens com base nas características predeterminadas dos objetos.
[026]O Exemplo 21 se refere ao sistema de identificação e pulverização seletiva de plantas de acordo com o Exemplo 20, compreendendo ainda um módulo de extração associado com o componente controlador central, um módulo de classificação associado com o componente controlador central e um módulo de ação associado com o componente controlador central. O módulo de extração está configurado para extrair características de uma imagem retida, em que as características compreendem a textura, o tamanho, a forma ou a altura. O módulo de classificação está configurado para comparar as características extraídas com as características conhecidas de uma planta conhecida, pelo qual cada caraterística extraída é classificada. O módulo de ação está configurado para causar o componente controlador a acionar um bocal selecionado para pulverizar com base na informação do módulo de classificação.
[027]O Exemplo 22 se refere ao sistema de identificação e pulverização seletiva de plantas de acordo com o Exemplo 19, em que a, pelo menos, uma imagem compreende, pelo menos, duas imagens. As, pelo menos, duas imagens compreendem uma imagem de profundidade compreendendo os dados de profundidade, e uma imagem de cor compreendendo os dados de cor.
[028]O Exemplo 23 se refere ao sistema de identificação e pulverização seletiva de plantas de acordo com o Exemplo 19, em que as funções selecionáveis compreendem bandeiras.
[029]No Exemplo 24, um sistema de identificação e pulverização seletiva de plantas compreende um sistema de pulverização e um sistema de identificação de planta. O sistema de pulverização compreende um reservatório configurado para receber uma composição pesticida, e uma lança compreendendo uma pluralidade de bocais configurados para pulverizar a composição pesticida. O sistema de identificação de planta compreende um componente controlador central. O componente controlador central compreende uma primeira unidade de processamento central configurada para controlar a aquisição de imagem, uma segunda unidade de processamento central configurada para controlar a segmentação de profundidade, uma terceira unidade de processamento central configurada para controlar a extração de características, uma quarta unidade de processamento central configurada para também controlar a extração de características, uma quinta unidade de processa- mento central configurada para controlar a classificação e uma sexta unidade de processamento central configurada para acionar seletivamente um da pluralidade de bocais para pulverizar com base na classificação.
[030]O Exemplo 25 se refere ao sistema de identificação e pulverização seletiva de plantas de acordo com o Exemplo 24, em que, em um primeiro período de tempo, a primeira unidade de processamento central aciona a aquisição de uma primeira imagem.
[031]O Exemplo 26 se refere ao sistema de identificação e pulverização seletiva de plantas de acordo com o Exemplo 25, em que, em um segundo período de tempo, a segunda unidade de processamento central executa uma análise de profundidade da primeira imagem, e a primeira unidade de processamento central aciona a aquisição de uma segunda imagem.
[032]O Exemplo 27 se refere ao sistema de identificação e pulverização seletiva de plantas de acordo com o Exemplo 26, em que, em um terceiro período de tempo, a terceira e a quarta unidades de processamento central executam uma ex-tração de características da primeira imagem, a segunda unidade de processamento central realiza a análise de profundidade da segunda imagem, e a primeira unidade de processamento central aciona a aquisição de uma terceira imagem.
[034] O Exemplo 28 se refere ao sistema de identificação e pulverização seletiva de plantas de acordo com o Exemplo 27, em que, em um quarto período de tempo, a quinta unidade de processamento central executa uma classificação da primeira imagem, a terceira e a quarta unidades de processamento central executam a extração de características da segunda imagem, a segunda unidade de processamento central executa a análise de profundidade da terceira imagem, e a primeira unidade de processamento central aciona a aquisição de uma quarta imagem.
[034]O Exemplo 29 se refere ao sistema de identificação e pulverização seletiva de plantas de acordo com o Exemplo 28, em que, em um quinto período de tempo, a sexta unidade de processamento central aciona seletivamente um da pluralidade de bocais de pulverização com base na classificação da primeira imagem, a quinta unidade de processamento central executa a classificação da segunda ima-gem, a terceira e a quarta unidades de processamento central executam a extração de características da terceira imagem, a segunda unidade de processamento central executa a análise de profundidade da quarta imagem, e a primeira unidade de pro-cessamento central aciona a aquisição de uma quinta imagem.
[035]No Exemplo 30, um sistema de identificação e pulverização seletiva de plantas compreende um sistema de aplicação compreendendo uma lança compreendendo uma pluralidade de aplicadores configurados para aplicar um tratamento, e um sistema de identificação de planta. O sistema de identificação de planta compreende um componente controlador central compreendendo, pelo menos, primeira, segunda, terceira, quarta, quinta e sexta unidades de processamento central. O sistema de identificação de planta compreende ainda um sistema de visão acoplado operativamente à primeira unidade de processamento central, em que o sistema de visão está configurado para capturar, pelo menos, duas imagens de uma área alvo. As, pelo menos, duas imagens compreendem uma imagem de profundidade e uma imagem de cor. O sistema de identificação de planta compreende ainda um módulo de segmentação associado à segunda unidade de processamento central. O módulo de segmentação está configurado para identificar objetos na área alvo e varrer a imagem de profundidade, a fim de identificar pixels de captura de objetos de profundidade semelhante, varrer a imagem de cor, a fim de analisar a cor dos pixels, utilizar funções selecionáveis durante a varredura das imagens de profundidade e cor, a fim de identificar os objetos nas imagens e filtrar os objetos nas imagens ao reter ou deletar as imagens com base em características predeterminadas dos objetos. O sistema de identificação de planta compreende ainda um módulo de extração de características associado à terceira e à quarta unidades de processamento central. O módulo de extração de características está configurado para extrair características de uma imagem retida, em que as características compreendem a textura, o tamanho, a forma ou a altura. O sistema de identificação de planta compreende ainda um módulo de classificação associado à quinta unidade de processamento central. O módulo de classificação está configurado para comparar as características extraídas com as características conhecidas de uma planta conhecida, pelo qual cada caraterística extraída é classificada. O sistema de identificação de planta compreende ainda um módulo de ação associado à sexta unidade de processamento central. O módulo de ação está configurado para causar a sexta unidade de processamento central a acionar um aplicador selecionado para aplicar o tratamento com base na informação do módulo de classificação.
[036]O Exemplo 31 se refere a um sistema de identificação e pulverização seletiva de plantas de acordo com o Exemplo 30, em que as funções selecionáveis compreendem bandeiras.
[037]No Exemplo 32, um método de processamento de tubulação compreende acionar uma primeira função em um primeiro período de tempo, executar os passos em um segundo período de tempo, executar os passos em um terceiro período de tempo, executar os passos em um quarto período de tempo, executar os passos em um quinto período de tempo. Os passos no segundo período de tempo são de execução de uma segunda função e de execução da primeira função. Os passos no terceiro período de tempo são de execução de uma terceira função, de execução da segunda função e de execução da primeira função. Os passos no quarto período de tempo são de execução de uma quarta função, de execução da terceira função, de execução da segunda função e de execução da primeira função. Os passos no quinto período de tempo são de execução de uma quinta função, de execução da quarta função, de execução da terceira função, de execução da segunda função e de execução da primeira função. Os passos são sincronizados por um aci- onador ou um temporizador.
[038]O Exemplo 33 se refere ao método de processamento de tubulação de acordo com o Exemplo 32, em que o método compreende a identificação de espécies de plantas específicas.
[039]O Exemplo 34 se refere ao método de processamento de tubulação de acordo com o Exemplo 33, em que a primeira função compreende a aquisição de uma imagem, a segunda função compreende a análise de profundidade da imagem, a terceira função compreende uma extração de características da imagem, a quarta função compreende uma classificação da imagem e a quinta função compreende uma ação com base na classificação da imagem.
[040]No Exemplo 35, um método de identificação de espécies de plantas específicas compreende o acionamento, com uma primeira unidade de processamento central, da aquisição de uma primeira imagem em um primeiro período de tempo; a execução, com uma segunda unidade de processamento central, de uma análise de profundidade na primeira imagem em um segundo período de tempo; o acionamento, com a primeira unidade de processamento central, da aquisição de uma segunda imagem no segundo período de tempo; a execução, com uma terceira unidade de processamento central, de uma extração de características na primeira imagem em um terceiro período de tempo; a execução, com a segunda unidade de processamento central, da análise de profundidade na segunda imagem no terceiro período de tempo; o acionamento, com a primeira unidade de processamento central, da aquisição de uma terceira imagem no terceiro período de tempo; a execução, com uma quarta unidade de processamento central, de uma classificação na primeira imagem em um quarto período de tempo; a execução, com a terceira unidade de processamento central, da extração de características na segunda imagem no quarto período de tempo; a execução, com a segunda unidade de processamento central, da análise de profundidade na terceira imagem no quarto período de tempo; o acionamento, com a primeira unidade de processamento central, da aquisição de uma quarta imagem no quarto período de tempo; o acionamento seletivamente, com uma quinta unidade de processamento central, de uma ação baseada na classificação da primeira imagem em um quinto período de tempo; a execução, com a quarta unidade de processamento central, da classificação na segunda imagem no quinto período de tempo; a execução, com a terceira unidade de processamento central, da extração de características na terceira imagem no quinto período de tempo; a execução, com a segunda unidade de processamento central, da análise de profundidade na quarta imagem no quinto período de tempo; e o acionamento, com a primeira unidade de processamento central, da aquisição de uma quinta imagem no quinto período de tempo.
[041]Embora várias modalidades sejam divulgadas, ainda outras modalidades da presente invenção irão se tornar evidentes para os peritos na técnica a partir da descrição detalhada que se segue, que mostra e descreve modalidades ilustrativas da invenção. Como será percebido, a invenção é capaz de modificações em vários aspetos óbvios, sem nunca se afastar do espírito e do âmbito da presente invenção. Consequentemente, os desenhos e descrição pormenorizada devem ser considerados como ilustrativos por natureza e não restritivos. Breve descrição dos Desenhos
[042]A FIG. 1 é um diagrama de fluxo de um método para a identificação em tempo real de uma planta daninha e a aplicação seletiva de pesticidas nessa planta, de acordo com uma modalidade.
[043]A FIG. 2A é uma representação esquemática de um sistema de pulverizador tendo um sistema de identificação e pulverização seletiva de plantas, de acordo com uma modalidade.
[044]A FIG. 2B é uma representação esquemática de outro sistema de pulverizador tendo um sistema de identificação e pulverização seletiva de plantas, de acordo com uma outra modalidade.
[045]A FIG. 2C é uma representação esquemática de ainda outro sistema de pulverizador tendo um sistema de identificação e pulverização seletiva de plantas, de acordo com outra modalidade.
[046]A FIG. 3 ilustra um fluxograma de um método para a identificação de vegetação por visão mecânica, de acordo com uma modalidade.
[047]A FIG. 4 é um fluxograma de um processo de segmentação, de acordo com uma modalidade.
[048]A FIG. 5 é uma representação esquemática da varredura de uma imagem de profundidade, de acordo com uma modalidade.
[049]A FIG. 6 é um fluxograma de um processo de varredura e avaliação, de acordo com uma modalidade.
[050]A FIG. 7A é um diagrama de representação de um processo de varredura de pixels em conectividade de 4 vias, de acordo com uma modalidade.
[051]A FIG. 7B é um diagrama de representação de um processo de varredura de pixels em conectividade de 8 vias, de acordo com outra modalidade.
[052]A FIG. 8 é uma representação gráfica de dois parâmetros de altura predeterminados que são utilizados nos processos de varrimento e filtragem, de acordo com uma modalidade.
[053]A FIG. 9 é um fluxograma de representação de um processo de filtragem, de acordo com uma modalidade.
[054]A FIG. 10 é uma representação esquemática de um processo sequencial conhecido em sistemas de identificação de imagem conhecidos.
[055]A FIG. 11 é um diagrama esquemático de um processo de análise de imagem utilizando um processador multinúcleo, de acordo com uma modalidade.
[056]A FIG. 12 é uma representação esquemática do processo sequencial utilizado em um sistema tendo um processamento multinúcleo, de acordo com uma modalidade.
Descrição Detalhada
[057]As várias modalidades aqui divulgadas se referem a sistemas em tempo real para a identificação de objeto específicos entre os vários objetos diferentes em ambientes reais. Algumas modalidades específicas se referem à identificação de espécies de plantas específicas entre várias espécies de plantas. Certas implementações exemplares incluem sistemas em tempo real para a identificação de plantas daninhas entre plantas de cultura em um campo de cultivo e, em algumas implementações, a pulverização seletivamente dessas plantas daninhas com um pesticida (tal como, por exemplo, um herbicida). A identificação automática de uma ou mais espécies de plantas específicas entre outras utiliza a tecnologia de visão mecânica. Para os fins desse pedido, "visão mecânica" é a análise de imagens para extrair dados a fim de controlar um processo ou atividade - ela pode ser utilizada para automatizar tarefas normalmente executadas por inspeção visual humana. Nas várias implementações aqui, a tecnologia de visão mecânica está configurada para identificar espécies de plantas específicas (como, por exemplo, espécies de plantas daninhas específicas) em tempo real através de análise das características morfológicas da planta.
[058]Certas modalidades de sistema, método e dispositivo descritas e contempladas aqui se referem à identificação em tempo real de plantas daninhas entre plantas de cultura e à pulverização seletivamente das s daninhas com um pesticida em condições de mundo real (em oposição a testes ou laboratório). Modalidades alternativas se referem a eliminar seletivamente essas plantas daninhas por quaisquer outros meios conhecidos. Outras implementações se referem à incorporação dos vários sistemas, métodos e dispositivos divulgados e contemplados aqui em outras plataformas, quer terrestres quer aéreas. Para os fins deste pedido, o termo "em tempo real" descreve um sistema que produz um resultado correto dentro de um tempo especificado, e mais especificamente, para os fins deste pedido, descreve um sistema de visão mecânica para a identificação de ervas daninhas que é capaz de identificar uma planta daninha enquanto o sistema progride através do campo a uma velocidade de trabalho efetiva. Os sistemas, dispositivos e métodos podem ser utilizados em condições de mundo real que incluem uma miríade de variações no campo, tal como um campo de cultivo, incluindo variações nas coberturas de restolho, plantas em diferentes estágios de crescimento, diferentes níveis de saúde das plantas e qualquer número de variações adicionais.
[059]As modalidades aqui não estão limitadas à aplicação de herbicidas líquidos nas ervas daninhas. Isto é, os vários sistemas e dispositivos descritos ou contemplados aqui podem ser utilizados para aplicar qualquer pesticida ou combinação de pesticidas sob qualquer forma. Para os fins deste pedido, se entende que “pesticida” significa qualquer composição ou substância que pode ser aplicada a uma planta para eliminar essa planta. Assim, "pesticida" inclui qualquer herbicida, fungicida, inseticida e semelhantes. Além disso, como mencionado acima e em outros lugares, as modalidades do sistema desta invenção podem incluir outras ações para eliminar plantas específicas, tais como mecanismos ou meios mecânicos. Outras implementações aqui contempladas se referem à identificação em tempo real de espécies de plantas daninhas entre plantas de cultura em condições de mundo real e ao mapeamento da localização dessas plantas daninhas. Alternativamente, a tecnologia de identificação em tempo real pode ser utilizada para identificar uma ou mais espécies de plantas específicas para estudos de biodiversidade. Outros exemplos incluem a utilização da tecnologia de identificação para a orientação da fileira de cultura ou para analisar a qualidade do solo ou a nutrição do solo. Se entende também que os vários sistemas, métodos e modalidades divulgados e contemplados aqui podem ser utilizados para qualquer fim que se refere à identificação de uma ou mais espécies de plantas entre as plantas de uma ou mais outras espécies. De forma mais ampla, é também entendido que os vários sistemas, métodos e modalida- des descritos e contemplados aqui podem ser utilizados para qualquer fim que se refere à identificação de um ou mais objetos específicos entre os vários objetos diferentes. Várias outras implementações de identificação incluem aplicações médicas, tais como a identificação de objeto específicos em uma imagem de ressonância magnética ("IRM") para fins de diagnóstico ou outras aplicações desse tipo. Alternativamente, outras aplicações exemplares incluem qualquer tipo de triagem de objeto, incluindo a triagem de objeto de alta velocidade, tal como o tipo de triagem necessário para operações baseadas em transportadores relativos à mineração, produção de alimentos, ou no embalamento ou transporte de pacotes.
[060]Sistemas de controle de plantas daninhas conhecidos não têm sistemas de detecção de plantas daninhas robustos. Além disso, a maioria dos sistemas da técnica anterior foram testados ou operados somente em condições ideais, e não em condições de mundo real. Um dos problemas mais comuns para esses sistemas era a oclusão de outras plantas (que é discutido em mais detalhe abaixo), e uma grande variação na aparência da folha das mesmas espécies. Outro problema para sistemas conhecidos é o tempo de processamento. Em um sistema em tempo real, todas as funções de processamento devem ocorrer dentro de um tempo especificado, de modo a que o sistema seja capaz de identificar tanto as plantas daninhas entre as plantas de cultura como de pulverizar seletivamente as plantas daninhas.
[061]As várias modalidades descritas e contempladas aqui se referem a sistemas, dispositivos e métodos que têm sistemas de detecção de objetos robustos que podem operar em tempo real e em condições de mundo real, a fim de identificar com êxito os objetos alvo entre os vários objetos e, em seguida, agir seletivamente com base nessa identificação. Certas modalidades específicas se referem a sistemas, dispositivos e métodos que têm sistemas de detecção de ervas daninhas robustos que podem operar em tempo real e em condições de mundo real, a fim de identificar com sucesso as plantas daninhas entre outras plantas (incluindo, por exemplo, plantas de cultura) e, em seguida, seletivamente pulverizar ou de outro modo eliminar ou remover essas plantas. Certas implementações incorporam um processo de segmentação único que combina quer a segmentação de profundidade quer a de cor, enquanto outras implementações têm um método de processamento em tempo real único. Se entende que o processo de segmentação único pode ser utilizado em um sistema de identificação de objeto com qualquer método de processamento em tempo real conhecido (e não apenas o método de processamento em tempo real único aqui descrito), e é também entendido que o método de processamento em tempo real único pode ser utilizado em um sistema de identificação de objeto com qualquer tecnologia de visão mecânica conhecida (não apenas o processo de segmentação único divulgado aqui). Outras modalidades incorporam tanto o processo de segmentação único como o método de processamento em tempo real único.
[062]A FIG. 1 mostra um método para a identificação em tempo real de um objeto (neste exemplo específico, uma planta daninha) e a ação seletiva (neste caso, a aplicação de um pesticida nessa planta), de acordo com uma modalidade. Como se mostra, o método nesta implementação inclui os seguintes passos: a aquisição, a segmentação, a extração de características, a classificação da imagem, e a ação/administração. O processo de análise e identificação da imagem da planta inclui os passos de segmentação, extração de características e classificação. Em contraste, os passos de aquisição de imagem e ação/administração não fazem parte do processo de análise e identificação da imagem da planta. Em vez disso, tal como será explicado em maior detalhe abaixo, os passos de aquisição de imagem e ação/administração asseguram a aplicação em tempo real dos sistemas e métodos aqui divulgados.
[063]Em certas implementações alternativas, o método pode incluir apenas a aquisição, a segmentação da imagem, e a ação/administração. Nessas implementa- ções, o processo de análise e identificação da imagem inclui apenas a segmentação.
[064]Se entende que as várias modalidades divulgadas e contempladas aqui podem ser incorporadas no equipamento de pulverização agrícola para utilização em campos de cultivo. As várias modalidades podem ser incorporadas em qualquer nú-mero de diferentes sistemas de pulverização conhecidos. As FIGS. 2A-2C representam três sistemas diferentes de pulverizador em que as várias modalidades aqui divulgadas podem ser incorporadas.
[065] A Fig. 2A representa um sistema de pulverizador 10, de acordo com uma implementação, incorporando o equipamento necessário para realizar as várias modalidades dos métodos aqui divulgados. Como mostrado na figura, o sistema 10 tem um motor principal 12, um reservatório de pulverização 14 e uma lança de pulverização 16 tendo múltiplas cúpulas de pulverização 18 que estão posicionadas entre as fileiras de cultura 20. Cada cúpula de pulverização 18 contém um componente de visão mecânica e iluminação 22, de acordo com qualquer uma das implementações aqui divulgadas, juntamente com um bocal de pulverização 24 acoplado operativamente ao sistema 10. O motor principal 10 nessa modalidade e qualquer outra modalidade divulgada ou contemplada aqui pode ser qualquer tipo de dispositivo ou sistema de autopropulsão, incluindo qualquer sistema de pulverizador de au- topropulsão ou por trator conhecido.
[066]A FIG. 2B mostra um outro sistema de pulverizador 30, de acordo com uma modalidade alternativa. Nessa implementação, o sistema 30 tem um motor principal 32, um reservatório de pulverização 34 e uma lança de pulverização 36 tendo múltiplos bocais de pulverização 38 posicionados ao longo da lança, com cada bocal de pulverização 38 acoplado operativamente a um sistema de visão mecânica 40 posicionado em uma montagem 42.
[067]A FIG. 2C representa um outro sistema de pulverizador 50, de acordo com uma outra implementação alternativa. Este sistema 50 tem um motor principal 52, um reservatório de pulverização 54 e uma cúpula de difusão de luz 56 que corre o comprimento de ou constitui uma parte da lança de pulverização (não mostrado). A cúpula de difusão de luz 56 se destina a bloquear ou reduzir a quantidade de luz ambiente ou luz solar que atinge a área de visualização do sistema de visão mecânica. Nessa modalidade, a cúpula 56 tem múltiplos sistemas de câmera e iluminação 58, cada um acoplado operativamente a um bocal de pulverização 60.
[068]É ainda entendido que as várias implementações divulgadas e contempladas aqui não estão limitadas à utilização em ou com equipamento de pulverização agrícola. Em vez disso, estas várias implementações podem ser utilizadas com ou incorporadas em qualquer tipo de aplicação seletiva para plantas. Por exemplo, as modalidades aqui podem ser incorporadas em equipamentos de aplicação não tripulada ou robótica. Alternativamente, estes sistemas podem ser utilizados para quaisquer aplicações não químicas, tais como, por exemplo, aplicação de microondas, laser, vapor, luz UV, de ação mecânica ou qualquer outra aplicação conhecida não química. Se entende também, conforme mencionado acima, que as várias implementações não estão limitadas à identificação de planta. Em vez disso, elas podem ser utilizadas para a identificação de objeto, em uma variedade de diferentes plataformas, incluindo plataformas não relacionadas com plantas ou agricultura.
[069]Voltando à FIG. 1, aquisição de imagem é a captura de uma ou mais imagens do objeto alvo - neste exemplo, uma planta. De acordo com uma modalidade, a imagem é capturada em formato digital. Alternativamente, a imagem é capturada em qualquer formato e, em seguida, convertida para um formato digital. Este passo se refere à coleta real da imagem a ser analisada. Em certas implementações, o passo de aquisição de imagem também inclui pré-processamento da imagem.
[070]No passo de aquisição de imagem, as imagens podem ser adquiridas por uma ou mais câmeras. Nos exemplos específicos relacionados com a pulverização de plantas daninhas, as câmeras são posicionadas estrategicamente no pulveri- zador (tais como os pulverizadores nas FIGS. 2A-2C, acima, por exemplo), em combinação com o software assíncrono e/ou um dispositivo de hardware. Em conformidade com uma implementação, o passo de aquisição de imagem é executado por uma ou mais câmeras, em combinação com um computador pessoal com um sistema operativo. Nesta modalidade, depois de uma câmera capturar a imagem, os dados são enviados desde a câmera para o computador e são tratados pelos controladores de hardware (por exemplo, o controlador USB). Uma vez que uma nova imagem foi adquirida e entregue, o controlador de hardware interrompe o sistema (através de uma função de revogação, por exemplo) para fornecer notificação de que a nova imagem está pronta e, em seguida, executa uma ação predeterminada em relação à nova imagem.
[071]De acordo com outra modalidade, o passo de aquisição de imagem é realizado por um dispositivo de hardware, tal como um dispositivo integrado. Na modalidade representada nas FIGS. 2A-2C, o dispositivo é um dispositivo integrado sob a forma do sistema de visão mecânica situado na lança de pulverização como representado em cada figura. Nesta implementação, depois de a câmera captar a imagem, os dados da imagem são enviados desde a câmera para um controlador de hardware, que pode ser o microprocessador ou um dispositivo lógico, e armazenados em um bloco de memória. Em certas implementações, os sinais provenientes da câmera também acionam uma interrupção de hardware quando a transferência dos dados de imagem está concluída. Esta interrupção leva o software a reagir de forma semelhante a uma revogação (tal como a revogação descrita acima) e a agir sobre a imagem. O tempo de reação do software é variável, dependendo da configuração de prioridade de interrupção do microprocessador e da prioridade dada à tarefa de análise de imagem no corpo do processo global. Uma vantagem de um dispositivo integrado é que ele pode controlar o processo de forma síncrona ao eleger a câmera para uma imagem, receber a imagem e armazená-la a uma taxa de quadros aceitá- vel para um sistema em tempo real (por exemplo, 30 quadros por segundo).
[072]O controlador de hardware, em uma modalidade, é um componente controlador central (que pode ter ou ser um processador central). O controlador pode estar situado em qualquer lugar no sistema. No exemplo específico de um sistema de identificação e pulverização de plantas daninhas, o controlador pode estar situado em qualquer lugar do equipamento pulverizador, inclusive na cabina do trator ou pulverizador, na lança, em algum lugar central, ou em qualquer outro lugar. Nestas modalidades em que o controlador está posicionado na cabina ou noutro lugar longe da lança, o dispositivo do sistema de visão mecânica integrado pode estar situado com ou ser integral com o controlador, e um cabo de rede ou outro tipo de ligação de dados pode se estender desde o dispositivo integrado até às câmeras na lança.
[073] Como mencionado acima, em certas modalidades, o passo de aquisição de imagem também inclui pré-tratamento, que inclui o melhoramento da imagem antes da análise mais completa do processo de análise e identificação de imagem. As funções de pré-tratamento padrão podem incluir a remoção de ruído da imagem, a remoção de manchas, o mascaramento de áreas da imagem e/ou a normalização dos dados da imagem.
[074] Por exemplo, o pré-tratamento pode incluir o redimensionamento de zonas de interesse em uma imagem para uma melhor resolução. Mais especificamente, em uma modalidade do sistema, as zonas de interesse em cada imagem são redimensionadas para uma resolução de 100 x 30 pixels. Em outro exemplo de pré- tratamento, duas ou mais imagens capturadas utilizando estereovisão são equiparadas. Mais especificamente, uma imagem de profundidade e uma imagem de cor são equiparadas. Em uma implementação, o processo de equiparação é um processo conhecido padrão envolvendo (1) correção da distorção na qual as imagens são corrigidas para quaisquer distorções, (2) retificação da imagem na qual as imagens são transformadas em um plano de imagem comum e (3) translação na qual as duas imagens são alinhadas.
[075]O passo de segmentação (tal como o passo de segmentação representado na FIG. 1) é o primeiro passo do processo de identificação de imagem e envolve dividir a imagem em zonas. Mais especificamente, a "segmentação de imagem" é definida para fins deste pedido como a separação dos pixels de uma imagem em segmentos ou grupos de pixels que são semelhantes, com a finalidade de reduzir a complexidade dos dados de imagem para análise posterior. Um uso padrão da segmentação de imagem é o de localizar objetos em uma imagem. Por exemplo, se o requisito era localizar uma bola vermelha em uma imagem, então o passo de segmentação envolveria a separação de todos os pixels vermelhos a partir de todos os outros pixels de qualquer outra cor, de modo que apenas os pixels vermelhos possam ser de novo analisados.
[076]Em conformidade com uma modalidade do sistema utilizado para a identificação de planta, os segmentos de segmentação são "planta" e "não planta." Isto é, qualquer parte da imagem que capturou uma planta ou uma parte da mesma será designada como "planta", enquanto qualquer outra parte será designada como "não planta". Em certas implementações, se houver mais do que uma planta na imagem, essas plantas serão separadas para análise. Como descrito abaixo em mais pormenor, a designação é baseada, pelo menos em parte, em um atributo de cor. Em certas modalidades de identificação de planta como divulgadas e contempladas aqui, a designação "planta" ou "não planta" se baseia, pelo menos em parte, em se o objeto que está sendo analisado é verde. No entanto, o atributo de cor nestes sistemas de identificação não está limitado ao verde. Nestas implementações alternativas, em que o objeto sendo analisado é algo diferente de uma planta, a designação é baseada em qualquer atributo de cor apropriado. De acordo com algumas modalidades, o processo de identificação de planta está concluído após a conclusão do passo de segmentação.
[077]Em outras implementações, a extração de características (por exemplo, o passo de extração de características ilustrado na FIG. 1) é um segundo passo op-cional do processo de identificação de imagem e, em certas modalidades, se refere à extração de características significativas/únicas da planta a partir de partes da planta da imagem. Estas características são aquelas particularidades que distinguem a planta de outras plantas. Em modalidades alternativas relativas à identificação de outros objetos (não planta), as características seriam aquelas que distinguem o objeto alvo de outros objetos.
[078]Como mostrado na FIG. 1, o próximo passo opcional é o de classificação, que é o último passo do processo de identificação de imagem e se refere à classificação das características extraídas no passo anterior em diferentes categorias de plantas.
[079]Em certas modalidades, o passo final é a ação/administração, como mostrado na FIG. 1. Tal como o passo de aquisição de imagem, este passo não é parte do processo de identificação de imagem. Em vez disso, nas implementações relativas à identificação e pulverização de ervas daninhas, neste passo, o sistema utiliza a informação a partir do processo de identificação de imagem da planta para controlar um sistema de aplicação seletiva configurado para aplicar seletivamente pesticidas a essas plantas identificadas como plantas daninhas. Alternativamente, em sistemas não relacionados com a pulverização de plantas daninhas, o sistema utiliza a informação a partir do processo de identificação de imagem do objeto para ativar e/ou controlar um sistema configurado para executar alguma ação com base na identificação do objeto alvo.
[080]Voltando ao processo de identificação de planta (tal como o processo como representado na FIG. 1), de acordo com uma modalidade, o processo de identificação está geralmente configurado para identificar uma planta através de um processo de identificação de vegetação por visão mecânica, tal como, por exemplo, o processo estabelecido na árvore de decisão representado na FIG. 3. A árvore de decisão tem critérios em cada ponto de decisão com base em atributos de imagem (que são obtidos utilizando a segmentação, e, opcionalmente, utilizando a extração e a classificação de características, como explicado em outras partes desse documento).
[081]Se entende que, antes da utilização do sistema, é desenvolvido um banco de dados contendo perfis de várias plantas alvo que requerem a identificação de uma determinada cultura, campo ou situação. Cada perfil de espécie é predefini- do com base nos atributos de imagem e contém dados relativos às diferentes características únicas das espécies, tais como a cor, o tamanho, a forma, a textura, a altura e o tipo de folha (grama ou folha larga), etc. Uma vez que os perfis desejados são salvos no banco de dados, o sistema pode usar o processo de identificação tal como estabelecido na árvore de decisão da FIG. 3 para identificar uma planta específica. Ou seja, o perfil da espécie fornece os critérios a serem cumpridos em cada ponto de decisão na árvore de decisão.
[082]Em uma modalidade exemplar, a identificação de um Erigeron em estado de crescimento de rosácea ocorreria como se segue usando a árvore de decisão na FIG. 3. Neste exemplo, tal como apresentado na figura, os processos de identificação e de ação ocorrem utilizando os seguintes critérios na árvore de decisão para o Erigeron: (1) zonas verdes na imagem; (2) identificação por profundidade; (3) zonas dentro do intervalo de profundidade; (4) zonas de não linha (de folha larga); (5) zonas isoladas; (6) identificar por forma de folha; e (7) pulverização ou mapeamento. Cada um destes pontos de decisão na árvore são parte de um processo de identificação em tempo real, tal como o processo mostrado na FIG. 1, e outros podem ser identificados como parte de um dos passos do processo. Por exemplo, os pontos de decisão 1 a 3 deste exemplo tal como estabelecido acima fazem parte do passo de segmentação. Além disso, os pontos de decisão 4 e 5 fazem parte do passo de ex- tração de características opcional, enquanto o ponto de decisão 6 faz parte do passo de classificação opcional e o ponto de decisão 7 é a ação/administração.
[083]As partes destacadas na FIG. 3 são as etapas do processo em que pode ocorrer uma "ação", se necessário. Por exemplo, se o sistema determina que uma planta específica é uma erva daninha, em resultado do processo descrito no fluxograma da FIG. 3, o sistema será acionado para pulverizar a erva daninha com um pesticida. Alternativamente, uma outra ação é a de "mapear" a planta. A ação de "mapear" se refere ao armazenamento da posição de GPS da planta (com coordenadas GPS) para utilização posterior.
[084]De acordo com uma modalidade exemplificativa alternativa, a identificação de um Xanthium italiano (Xanthium italicum) em estado de crescimento de dois meses ocorreria como se segue utilizando a árvore de decisão na FIG. 3. Neste exemplo, conforme estabelecido na figura, os processos de identificação e de ação ocorrem utilizando os seguintes critérios na árvore de decisão para o Xanthium italiano: (1) zonas verdes na imagem; (2) identificação por profundidade; (2A) zonas fora do intervalo de profundidade; e (2B) pulverização ou mapeamento. Cada um destes pontos de decisão na árvore faz parte de um processo de identificação em tempo real, tal como o processo mostrado na FIG. 1, e adicionalmente pode ser identificado como parte de um destes passos do processo. Assim, neste exemplo, os pontos de decisão 1 e 2 deste exemplo, como estabelecido acima fazem parte do passo de segmentação. Além disso, o ponto de decisão 2A se refere ao processo de filtragem associado à segmentação como discutido abaixo em mais pormenor, enquanto o ponto de decisão 2B se refere à ação/administração.
[085]Uma implementação do processo de segmentação (tal como o passo de segmentação como definido na modalidade representada na FIG. 1) será agora examinada em detalhe. De acordo com certas modalidades, o processo de segmentação é um processo de segmentação em tempo real que pode rapidamente seg- mentar e isolar plantas daninhas das plantas de cultura ou em pousio, com um alto nível de tolerância à oclusão em situações tradicionais e de plantio direto. Pode ser utilizado em campos contendo plantas de cultura em diferentes estados de crescimento (ou seja, diferentes formas, alturas ou cores de folhas) para distinguir essas plantas de cultura de plantas daninhas, restolho e em situações de pousio.
[086]De acordo com uma modalidade como se mostra melhor na FIG. 4, o processo de segmentação 70 envolve a escolha ou a predefinição de funções selecionáveis (bloco 72), a varredura de uma imagem de profundidade para identificar um componente (bloco 74), a repetição do processo de varredura para identificar outros componentes (bloco 76), a filtragem dos componentes ou imagens identificadas pelo processo de varredura (bloco 78), e o processamento de cada componente ou imagem com base no processo de filtragem (bloco 80). Estes vários passos serão discutidos em mais detalhe abaixo.
[087]Um dos principais obstáculos - e fontes de erro na identificação de plantas daninhas - encontrados pelas tecnologias de identificação de plantas daninhas existentes em ambientes reais (em oposição a controlados ou de laboratório) é a oclusão. De forma mais ampla "oclusão" é a sobreposição de partes de diferentes objetos a partir de um determinado ponto de vista de linha de visão, tornando assim a identificação do(s) objeto(s) alvo mais difícil. No contexto da identificação de planta, "oclusão" é a sobreposição de partes de diferentes plantas e/ou restolho a partir de um determinado ponto de vista de linha de visão. Em tecnologias conhecidas, as oclusões criam erros de segmentação, ao alterar a aparência global da forma da planta na imagem (tornando-a maior ou menor, por exemplo), bem como mudar a aparência de textura global. Assim, técnicas de segmentação conhecidas são prejudicadas pela oclusão e não foram bem-sucedidas em experimentos em ambientes reais.
[088]Em contraste, o processo de segmentação de acordo com várias moda- lidades aqui (por exemplo, o processo 70 descrito acima e representado na FIG. 4) está configurado para operar em qualquer tipo de ambiente, incluindo um ambiente real, ao identificar objetos específicos, tais como plantas daninhas, e distinguir aqueles objetos específicos (plantas) de outros objetos - neste caso, plantas de cultura - mesmo quando há oclusões. Esta análise é única porque é uma análise tridimensional que analisa a profundidade e a cor como descrito em pormenor a seguir. Isto é, o processo de varredura (bloco 74) envolve a avaliação dos pixels da imagem com base na profundidade e na cor. Este processo de segmentação é conseguido por uma aplicação de software (também aqui referido como um "algoritmo" ou "módulo"), que tem configurações de funções flexíveis para extração de informação a fim de segmentar e isolar plantas dentro de uma imagem usando uma análise de enchimento (floodfill) rápido modificado. Como é entendido na técnica, uma análise de algoritmo de enchimento determina a conectividade ou afinidade de pixels semelhantes dentro de uma imagem.
[089]Se entende que, para os fins deste pedido, o termo "ambiente real" significa qualquer ambiente que não é uma configuração controlada como um laboratório ou outra configuração que envolve o teste em um ambiente controlado. Ao contrário dos sistemas da técnica anterior, as várias implementações divulgadas e contempladas aqui podem funcionar eficazmente em ambientes reais. É claro, é ainda entendido que as várias modalidades aqui divulgadas irão funcionar em todos os tipos de ambientes - controlados e não controlados.
[090]De acordo com certas modalidades, o módulo de segmentação tem funções selecionáveis que podem ser escolhidas ou predefinidas (bloco 72) como parte do processo de segmentação de acordo com a modalidade representada na FIG. 4. A seletividade das funções permite o refinamento do processo de segmentação, melhorando assim a capacidade do processo para detectar objetos particulares (tais como as espécies de plantas específicas, por exemplo). Isto é, o processo de segmentação se refere à avaliação de um conjunto de atributos de imagem (com base na informação de cor e de profundidade). O processo utiliza um conjunto padrão ou universal de atributos. No entanto, a segmentação pode ser feita mais direcionada para um uso específico (ou seja, com mais sucesso na detecção de objetos particulares, tais como tipos de plantas, por exemplo) ao selecionar a partir do conjunto padrão de atributos de imagem aqueles atributos que são necessários ou tornam o processo mais eficaz para a identificação do objeto específico que está a ser identificado.
[091]De acordo com uma modalidade específica, a seletividade funcional do módulo é baseada em um conjunto de "bandeiras". Isto é, o módulo é impulsionado por "bandeira". Nesta modalidade, o estado de se um atributo de imagem particular é necessário ou desejável para atingir um objetivo particular de uma imagem pode ser representado como uma "bandeira". Assim, o módulo irá aplicar certas funções para a análise dependendo de determinadas bandeiras relativas às funções a ativar ou desativar.
[092]Alternativamente, a seletividade das funções no módulo (conforme definido no bloco 72 da FIG. 4) pode ser feita de outras maneiras diferentes conhecidas, ao invés de bandeiras.
[093]Em uma modalidade, conforme estabelecido no bloco 72 da FIG. 4, em que a seletividade do módulo se manifesta com bandeiras, as bandeiras podem ser predefinidas no sistema antes da venda do sistema ao usuário. Alternativamente, as bandeiras podem ser definidas uma vez, durante a configuração do sistema, quer pelo fabricante ou pelo usuário. Alternativamente, as bandeiras podem ser selecionadas ou modificadas em tempo real pelo usuário enquanto o sistema está a ser operado. Em uma outra alternativa, as bandeiras podem ser configuradas para ser "dinamicamente adaptáveis", o que significa que as bandeiras estão configuradas para se adaptar automaticamente em tempo real a diferentes condições de campo e de imagem. Por exemplo, não há necessidade de verificar se um objeto alto é verde em situações onde não há restolho, e um módulo dinamicamente adaptável pode ser configurado para definir automaticamente a bandeira de "verificação de verde" (discutido em detalhe abaixo) para "desligado" nessa situação.
[094]Por outro lado, em outras modalidades alternativas, o módulo não tem de ser selecionável. Em várias implementações alternativas, o módulo tem funções definidas não selecionáveis.
[095]Como mencionado acima, o processo de segmentação de acordo com as várias modalidades aqui funciona para dividir a imagem em componentes separados (plantas) dentro da imagem, com base na conectividade espectral (incluindo a cor, por exemplo) e de profundidade. Em uma modalidade, na modalidade 2D, uma função de algoritmo de enchimento é utilizada em uma imagem espectral ou de profundidade. Mais especificamente, a função de algoritmo de enchimento é utilizada para marcar e ligar pixels de intensidades semelhantes ou dentro de uma variação de conjunto em formas contíguas (componente).
[096]De acordo com uma modalidade, as imagens analisadas no passo de varrimento do processo de segmentação (tal como o passo de varrimento no bloco 74 da FIG. 4, por exemplo) são analisadas com base quer em dados de profundida-de quer em dados espectrais nas imagens. Esta análise dos resultados quer de dados de profundidade quer de dados espectrais resulta na identificação mais eficaz do(s) objeto(s) alvo(s), em comparação com a análise apenas da profundidade ou espectral. Esta análise quer dos dados de profundidade quer dos dados espectrais pode ser realizada utilizando imagens tendo dados de profundidade e dados espec-trais. De acordo com certas modalidades, os dados espectrais são os dados de cor. Alternativamente, os dados espectrais podem ser RGB, monocromáticos, ou dados multiespectrais.
[097]Alternativamente, a análise de profundidade e espectral pode ser reali- zada utilizando duas imagens da mesma cena: uma imagem de profundidade e uma imagem espectral (neste exemplo, uma imagem de cor). Em uma modalidade específica, a imagem de profundidade é uma imagem de 3 canais que representa a profundidade pela intensidade de pixels. Todos os canais de um pixel mantêm o mesmo valor e quanto maior for a intensidade do pixel, mais próxima está a imagem da câmera. Como um exemplo, para uma imagem de 24 bits (um formato padrão), os valores de intensidade de pixel estão no intervalo de 0 a 255.
[098]Continuando com o exemplo no qual a imagem espectral é uma imagem de cor, a imagem de cor da mesma cena é combinada com a imagem de profundidade com os pixels das duas imagens (imagens de cor e de profundidade) mapeados em conjunto (isto é, a cena em uma das duas imagens se sobrepõe à outra).
[099]Como mostrado na FIG. 5, em uma modalidade na qual a imagem espectral é uma imagem de cor e a análise de segmentação está a ser aplicada a imagens de cor e de profundidade, a análise começa com a varredura da imagem de profundidade (bloco 74 da FIG. 4). A FIG. 5 é uma representação visual da imagem de profundidade, o que, para efeitos da presente modalidade exemplificativa, tem um tamanho de imagem de largura (l) = 640 pixels (eixo X) e altura (a) = 480 (eixo Y) pixels. Além disso, esta imagem exemplar específica tem 8 bits de dados. A varredura (bloco 74 da FIG. 4) e a análise ocorre da seguinte forma: o sistema varre o eixo y e incrementa o eixo x. Isto é, com referência à FIG. 5, o sistema varre a imagem de profundidade do topo (0 no eixo y) à base (a - 1 no eixo y) a partir da posição 0 no eixo x e repetindo a varredura no eixo y, aumentando ao mesmo tempo a posição do eixo x até atingir l - 1. Alternativamente, o sentido da varredura pode ser revertido (ou seja, o sistema pode varrer ao longo do eixo x aumentando ao mesmo tempo o eixo y), e o tamanho da imagem pode ser qualquer tamanho conhecido sem afetar o funcionamento do processo.
[0100]Em uma modalidade, o processo de varredura 74 é apresentado na FIG. 6. De acordo com esta implementação, o primeiro passo do processo é a varredura da imagem de profundidade para a finalidade de procura de um "ponto de semente" (bloco 90). Isto é, o algoritmo de enchimento (também conhecido como "enchimento de sementes" ou "componentes ligados") começa com a varredura da imagem de profundidade para uma posição de "semente" ou ponto de "semente” (ponto de partida), identificando o ponto de semente com base nas particularidades predeterminadas (bloco 92), e, em seguida, avaliando os pixels em torno do pixel da se-mente (bloco 94). Esta avaliação de pixel também tem lugar na imagem de cor correspondente (bloco 96). Os pixels em torno do pixel de semente que se encaixam nas tolerâncias indicadas são marcados (ou "coloridos") de igual forma que o pixel de semente (bloco 98). A análise então desloca a sua posição de semente para um dos novos pixels marcados (bloco 100) e repete este processo até que não haja novos pixels adicionados ao rótulo (ou seja, não haja pixels adicionais que circundem os pixels de semente que cumprem as tolerâncias predeterminadas) (bloco 102). Com esta avaliação concluída, os pixels rotulados resultantes constituem agora um componente individual. Tal como mostrado nos diagramas de conectividade nas FIGS. 7A e 7B, a conectividade de uma análise de algoritmo de enchimento pode ser quer uma "conectividade de 4 vias" (FIG. 7A) quer uma "conectividade de 8 vias" (FIG. 7B). Ambas as duas “conectividades” são conhecidas na técnica. Na abordagem de conectividade de quatro vias apresentada na FIG. 7A, a análise avalia os pixels numerados de 1 a 4 individualmente contra o valor do pixel de semente. Na abordagem de conectividade de oito vias representada na FIG. 7B, a análise avalia os pixels numerados de 1 a 8 individualmente contra o valor do pixel de semente. De acordo com uma modalidade, o sistema pode ser configurado para permitir a seleção de qualquer conectividade de 4 ou 8 vias, de tal modo que o sistema tem ambas as opções disponíveis. No entanto, em uma implementação, um usuário não pode mudar de uma para a outra durante a utilização.
[0101]Se entende que outras implementações de algoritmo de enchimento disponíveis em bibliotecas de visão mecânica de fonte aberta (como opencv, por exemplo) poderiam ser utilizadas em qualquer uma das modalidades descritas ou contempladas aqui.
[0102] Nesta implementação, o sistema inicialmente seleciona como o ponto de semente um pixel que tem uma altura acima de uma altura predeterminada, definida pelo usuário. Na FIG. 8, a altura predeterminada exemplar é a altura a2. Quan-do um pixel acima desta altura é encontrado durante o processo de varredura acima descrito, o sistema rotula o pixel com um identificador único.
[0103] Uma vez que o pixel é identificado de forma única, o sistema segue a estrutura de conectividade de 4 vias mostrada na FIG. 7A (e discutida acima) para encontrar pixels de intensidade semelhante (ou dentro de uma gama predeterminada de intensidade) e esses pixels são similarmente rotulados. Conforme descrito anteriormente, de acordo com uma modalidade do processo, os pixels rotulados são utilizados como pixels de semente para procurar pixels vizinhos que possuem uma intensidade dentro de um valor limiar predeterminado X da intensidade do pixel de semente. Por exemplo, se X é definido para 3, então um pixel vizinho seria aceite como "ligado" ao pixel de semente se tiver um valor igual ao valor de semente ± X. Pixels ligados são considerados parte do mesmo componente e re-rotulados para uma nova cor (da mesma cor que todos os pixels nesse componente) de modo que não é adicionado novamente. Se o valor do pixel vizinho está fora de ± X, então se considera estar em uma borda e não faz parte do mesmo componente. Cada pixel identificado como parte do componente é então utilizado sequencialmente como um novo pixel de semente para identificar novos pixels vizinhos para adicionar ao com-ponente.
[0104] Este processo é repetido até que nenhum novo pixel seja encontrado para adicionar ao componente. Após isto, a varredura da imagem continua e repete o processo de formação de novos componentes para cada pixel de semente não atribuído. Isto é, uma vez que o sistema varreu toda a imagem de profundidade e identificou todos os pixels que cumprem os critérios predeterminados (como, por exemplo, a identificação de todos os pixels que capturam uma imagem de um objeto tendo altura superior a a2), uma segunda varredura é iniciada. A segunda varredura procura os pixels que permanecem sem rótulo e não são atribuídos ao ruído. O "ruído" é indicado por um valor de pixel de 0 ou 255 a partir do pré-tratamento. Os restantes pixels sem rótulo pertencerão aos componentes que não cumprem os critérios predeterminados. Por exemplo, para os critérios de altura, todos os pixels que cumprem os critérios a2 são identificados na varredura 1, deixando assim os pixels sem rótulo que não cumprem os critérios de altura a2. Quando a varredura 2 é concluída, todos os pixels estão rotulados.
[0105] Um exemplo do processo de varredura completo é realizado da seguinte maneira, de acordo com uma modalidade. Neste exemplo, a primeira varredura através da imagem está em busca de pixels com um valor maior do que a altura 2. Quando ele encontra um pixel com um valor superior à altura 2, ele utiliza esse pixel como um pixel de "semente" e executa o algoritmo de enchimento modificado descrito acima. Uma vez que todos os pixels com um valor superior à altura 2 foram encontrados, a varredura se reinicializa para o topo da imagem para estabelecer uma segunda varredura através da imagem de profundidade para encontrar pixels de "semente". A segunda varredura está em busca de pixels que ainda não tenham sido rotulados na primeira varredura (e, portanto, são todos os pixels que NÃO são a2). Como antes, na segunda varredura, quando um pixel não rotulado é encontrado, ele usa esse pixel como um pixel de "semente" e novamente realiza o algoritmo de enchimento modificado descrito acima. Quando a segunda varredura é concluída, todos os pixels foram rotulados.
[0106] Durante este processo de varredura da imagem, as várias "bandeiras" integradas no processo podem ajudar a determinar quais ações são tomadas durante o processo. Por exemplo, bandeiras exemplares podem incluir uma bandeira de "maxlength", uma bandeira de "greencheck", uma bandeira de "colorstats", uma bandeira de "depthstats" e uma bandeira de "statsegment". Alternativamente, diversas outras "bandeiras" podem ser utilizadas também. Cada uma dessas bandeiras pode ser ativada (definida como "verdadeira") ou desativada por um usuário antes da utilização do sistema com base nas metas específicas para o sistema ou a utilização específica das mesmas. Em outras palavras, essas "bandeiras" são variáveis incorporadas ao sistema de tal modo que o usuário pode ajustar o sistema por meio de bandeiras.
[0107] Um exemplo é a bandeira de "maxlength", que é um valor de Y que impõe um limite sobre a variação absoluta que a intensidade de um pixel vizinho pode ficar longe do primeiro (original) valor de pixel de semente ± Y. Em outras palavras, esta é a quantidade máxima de variação permitida em um componente. Isso vai impedir que qualquer componente para o qual esta bandeira é ativada, de se expandir para além deste valor (ou seja, a intensidade de semente original ± Y). Assim, durante o processo de varredura, se esta bandeira é ativada, nenhum pixel com uma intensidade superior ou inferior que Y será rotulado como parte do componente em questão.
[0108] Um outro exemplo é a bandeira de "greencheck", que é uma bandeira que requer, durante o processo de varredura da imagem de profundidade acima, que a imagem de cor também seja analisada, ao verificar a posição de cada pixel na imagem de cor (a qual é equiparada com a imagem de profundidade no pré- tratamento, como descrito acima). Em outras palavras, para cada pixel analisado na imagem de profundidade, tal como descrito acima, para determinar a que componente o pixel pertence, o pixel correspondente na imagem de cor também é analisado ao mesmo tempo quando esta bandeira é ativada. Mais especificamente, o pixel da imagem de cor correspondente é analisado para determinar se ele é verde. Mais especificamente, o algoritmo é caracterizado como verde> vermelho e verde> azul, o que força o sistema a determinar se o pixel é mais verde do que vermelho e também mais verde do que azul. Se é determinado com base na análise que o pixel não é verde, então o pixel é rejeitado (não incluído no componente ou qualquer componen-te), porque é restolho ou um objeto estranho, não uma planta.
[0109] Um outro exemplo é a bandeira de "colorstats", que é uma bandeira que leva o sistema a calcular as estatísticas de cor do componente. Isto pode incluir, por exemplo, estatísticas tais como matiz máximo, matiz mínimo, matiz médio e variância de matiz. Alternativamente, qualquer estatística de cor conhecida de interesse pode ser calculada (tal como, por exemplo, a saturação, etc.).
[0110] Um outro exemplo é a bandeira de "depthstats", que é uma bandeira que leva o sistema a calcular as estatísticas de profundidade do componente. Isto pode incluir, por exemplo, estatísticas tais como altura máxima, altura mínima e altura média. Alternativamente, quaisquer estatísticas de profundidade conhecidas de interesse podem ser calculadas (tal como, por exemplo, a variância, etc.).
[0111] Ainda outro exemplo é a bandeira de "statsegment", que é uma bandeira e um segundo valor de altura inferior, o qual é utilizado para filtrar ("segmentar") os componentes em imagens "retidas" ou "deletadas" (como descrito em maior detalhe abaixo) utilizando as estatísticas de cor e/ou altura acima.
[0112] Como outro passo opcional no processo de segmentação, uma vez identificados os vários componentes utilizando o processo descrito acima, o sistema pode então filtrar esses componentes. Mais especificamente, cada um dos componentes é salvo em uma imagem retida (ou componente retido), uma imagem deleta- da (ou componente deletado) ou uma imagem de depuração, e, em seguida processada de acordo. Mais especificamente, qualquer imagem salvada na imagem ou componente retido é um componente que é utilizado adicionalmente no processo de análise, enquanto qualquer imagem ou componente deletado é um componente que não é necessário para posterior análise. Alternativamente, os dados segmentados não necessitam de ser salvos em uma imagem retida. Em vez disso, se entende que os dados segmentados podem ser armazenados em outros formatos, tais como, por exemplo, um "vetor". Além disso, qualquer imagem definida como uma imagem de depuração aciona o sistema para manter todos os componentes para fins de depuração. De acordo com uma implementação, a imagem de depuração é utilizada quando o sistema está em desenvolvimento e permite ao desenvolvedor visualizar todos os componentes rotulados. Esta avaliação visual permite ao desenvolvedor comparar a filtragem dos componentes em imagens retidas e deletadas pelo sistema com as expectativas do desenvolvedor, permitindo ao desenvolvedor identificar e corrigir problemas ou "bugs" no sistema.
[0113] Um exemplo de um processo de filtragem opcional, de acordo com uma modalidade, é apresentado na FIG. 9, que é um fluxograma descrevendo os passos específicos do processo. Neste processo, as imagens são filtradas com base em três alturas, conforme definido na FIG. 8 BAIXA (abaixo de a1), MÉDIA (entre a1 e a2) e ALTA (acima de a2). Além disso, o processo de filtragem também leva em conta as estatísticas do componente e a cor do componente. Através deste processo de filtragem, as imagens são designadas como imagens retidas ou imagens deleta- das dependendo das alturas que foram predeterminadas para reter ou deletar.
[0114] Mais especificamente, o fluxograma da FIG. 9 descreve o seguinte pseudocódigo:
[0115]1. Se a profundidade máxima do componente é maior ou igual a a2 e a bandeira de suporte ALTA é definida (VERDADEIRO), então manter o componente.
[0116] 2. além disso, se a profundidade máxima do componente é maior ou igual a a2 e a bandeira de suporte ALTA não está definida (FALSO), então deletar o componente.
[0117] 3. além disso, se o tamanho do componente (no total de pixels) é menor do que o tamanho definido pelo usuário, então deletar o componente.
[0118] 4. além disso, se o número de pixels "verdes" no componente é menor do que a percentagem definida pelo usuário e a bandeira de GREENCHECK está definida (VERDADEIRO), então deletar o componente.
[0119] 5. além disso, se a bandeira de reduzir funções é definida (VERDADEIRO), então correr as funções de linha de redução no componente.
[0120] 6. além disso, se a profundidade média do componente é menor ou igual a a1 e a bandeira de suporte BAIXA é definida (VERDADEIRO), então reter o componente.
[0121] 7. além disso, se a profundidade média do componente é menor ou igual a a1 e a bandeira de suporte BAIXA não está definida (FALSO), então deletar o componente.
[0122] 8. além disso, se a profundidade máxima é menor ou igual a a2 e a profundidade média é maior ou igual a a1 e a bandeira de suporte MÉDIA é definida (VERDADEIRO), então reter o componente.
[0123] 9. além disso, se a profundidade máxima é menor ou igual a a2 e a profundidade média é maior ou igual a a1 e a bandeira de suporte MÉDIA não é definida (FALSO), então deletar o componente.
[0124]Se entende que outros processos de filtragem podem ser utilizados nas várias modalidades descritas e contempladas aqui. Isto é, outros processos de filtragem podem ser utilizados que incluem estatísticas e várias outras métricas não incluídas na modalidade descrita acima (tais como, por exemplo, desvio padrão do matiz e da profundidade).
[0125] Uma das inovações do processo de segmentação como discutido acima é a análise combinada da cor e da profundidade, que fornece tolerância a erros criados pela oclusão, restolho, objetos estranhos e fraca altura de rendição. Se a profundidade sozinha é considerada aquando da identificação de componentes, um componente que é ligado à terra (por exemplo, folhas de relva, caules de plantas e trevos) pode rotulado com o solo como um objeto contíguo. A adição de um critério que requer que um pixel seja verde para que ele seja adicionado ao componente vai evitar que o solo seja agrupado com uma folha e, portanto, irá corretamente segmentar o componente. Utilizar unicamente a análise de profundidade para segmentar restolho e objetos estranhos pode resultar em erros, mas a adição de um critério de cor exigindo que um pixel seja verde impede a má rotulação de um componente como material de planta se não for verde. Utilizar unicamente a segmentação de cor para segmentar plantas e folhas oclusas pode também resultar em erros, mas a adição de um critério de profundidade que exige que o componente seja contíguo no plano de profundidade bem como de cor permite que as plantas individuais sejam segmentadas, como na maior parte dos casos em que existe uma diferença de altura entre as plantas e as folhas.
[0126]Em uma modalidade alternativa, a segmentação de profundidade e cor pode ser utilizada em combinação com um processo de calibração de cor adaptativa. Ao utilizar a cor como uma característica para análise, se entende que a cor de plantas daninhas e de cultura pode variar dependendo de variáveis como tipo de solo, níveis de umidade do solo e níveis de nutrientes do solo. Uma maneira de superar isso é calibrar o sistema para a cor das culturas quando o sistema começa em um campo particular. No entanto, isso nem sempre é eficaz, porque a cor pode frequentemente variar dentro de um campo.
[0127]Em uma modalidade, esta questão da variação de cor pode ser abordada utilizando um sistema de calibração de cor adaptativa em combinação com o processo de segmentação de profundidade e cor. Durante a segmentação, o sistema está configurado para determinar o histograma de matiz dos componentes segmentados que têm uma altura máxima acima de altura2 (ou seja, o topo da cultura, não as ervas daninhas) e, separadamente, os componentes segmentados abaixo de altu- ra2. Se os histogramas dos dois grupos diferem por um limiar definido pelo usuário, isso aciona uma notificação ao sistema da presença de uma planta com cor diferente (ou seja, ervas daninhas que são de um tom de verde diferente em comparação com a cultura mais alta). Este cálculo pode ser conseguido quando a análise de algoritmo de enchimento está a ser realizada como descrito acima, o que significa que esta análise de histograma é muito rápida.
[0128] Em uma modalidade alternativa, há várias comparações de matiz que podem ser utilizadas neste processo. Por exemplo, o sistema pode determinar o matiz médio dos componentes acima da altura2 e o matiz médio de todos os componentes e os comparar. Alternativamente, quaisquer outras comparações conhecidas de matiz podem ser utilizadas.
[0129] Uma vez que os componentes foram isolados e sobrepostos com a informação de cor no processo de segmentação como descrito acima, o processo de extração de características opcional pode ser realizado (tal como o passo de extração de características como estabelecido na FIG. 1). Isto é, os componentes podem então continuar a ser avaliados por terem características tais como a textura, o tamanho, a forma e/ou a altura extraída para comparação com o perfil predeterminado da planta. Características de textura podem incluir características estatísticas, tais como as derivadas de Gray Level Co-occurrence Matrix's (GLCM) ou Local Binary Patterns (LBP). As características de tamanho e forma podem incluir várias técnicas de extração opcionais conhecidas. Um exemplo específico é uma técnica opcional de detecção de linha descrita nos seguintes artigos: McCarthy, C, Rees, S e Baillie, C (2012), “Preliminary evaluation of shape and colour image sensing for automated weed identification in sugarcane,” 34a Annual Conference of the Australian Society of Sugar Cane Technologists (ASSCT 2012), 1-4 de maio de 2012, Cairns, Austrália (o algoritmo de detecção de linha aplicado à discriminação de folha de grama); McCar thy, CL, Hancock, NH e Raine, SR (2009), “Automated internode length measurement of cotton plants under field conditions,” Transactions of the American Society of Agricultural Engineers, 52 (6). pp. 2093-2103 (o algoritmo de detecção de linha aplicado aos caules de algodão); Frangi, AF, Niessen WJ, Vincken KL, Viergever MA (1998), “Multiscale vessel enhancement filtering,” Lecture Notes in Computer Science 1496, pp. 130-137 (o algoritmo de detecção de linha, com aplicação à imagiogo- logia médica); e Steger, C (1996), “Extracting curvilinear structures: A differential geometric approach,” Lecture Notes in Computer Science 1064, pp. 630-641 (o algoritmo de detecção de linha, com aplicação a imagens aéreas de estradas); todos os quais são aqui incorporados por referência na sua totalidade.
[0130] Uma vez que a extração está concluída, o passo seguinte em certas modalidades é a classificação (tal como o passo de classificação conforme estabelecido na FIG. 1). Isto é, as características extraídas são então comparadas com as mesmas características dos perfis de plantas predeterminados. Esta comparação então classifica as características atuais, quer como as mesmas ou não do conjunto identificado. Várias técnicas de classificação conhecidas podem ser utilizadas, incluindo, por exemplo, Bayes, k-NN, Support Vector Machines e Neural Networks, bem como soluções personalizadas.
[0131] Uma vez que os componentes foram classificados, a seguir vem o passo de ação e/ou administrativo (tal como o passo de ação/administração na FIG. 1). Isto é, uma vez que os componentes foram classificados, esses componentes exigem uma atuação, quer ao ligar um bocal de pulverização para dosar esses componentes com pesticidas quer ao armazenar a sua localização para posterior avaliação. Características administrativas podem incluir a verificação de erros da câmera, a funcionalidade das luzes e do solenoide, bem como cronometrar as funções para que o bocal seja ativado no momento correto, de modo a minimizar o excesso de pulverização e ficar sincronizado com a velocidade de deslocação.
[0132] Em algumas implementações, alguns sistemas de identificação de objeto em tempo real podem ter processamento em tempo real. Por exemplo, certos sistemas para identificação e pulverização seletiva de ervas daninhas exigem a aplicação local de pesticidas ou algum outro produto químico, enquanto se deslocam a velocidades de até 15 quilómetros por hora ou mais. Assim, o sistema de pulveriza-ção seletiva deve ser capaz de adquirir os dados de imagem, analisar os dados e efetuar a decisão muito rapidamente. Em um exemplo em que o equipamento se desloque a 15 quilómetros por hora, todo o processo tem de ser realizado em 32 milissegundos. Do mesmo modo, se entende que outras modalidades de identificação e ação (com exceção de plantas e/ou pulverização) podem também beneficiar da atuação em tempo real da ação necessária após a identificação do(s) objeto(s) alvo. Além disso, é também entendido que qualquer sistema de computação multi- núcleo pode também beneficiar do processamento em tempo real divulgado ou contemplado aqui.
[0133] Para os fins deste pedido, o termo "sistema de identificação e pulverização seletiva em tempo real" ou "sistema em tempo real" ou uma variação razoável do mesmo irá significar um sistema que produz um resultado correto em um prazo que permite a análise e uma ação com base nas informações recolhidas em tempo real. Em certas modalidades específicas, a informação coletada é a área capturada por um sensor, enquanto se desloca sobre uma área alvo a uma velocidade desejada.
[0134] A maioria dos sistemas conhecidos de identificação de plantas daninhas usa métodos de computação sequencial em tempo real. A computação sequencial em tempo real envolve o processamento de tarefas sequencialmente: um após o outro. Nestes sistemas, alguns processos que devem agir de acordo com uma entrada externa operam em "interrupções" onde levam o processador a parar o que está fazendo e fazer o que é necessário antes de voltar para a tarefa anterior. A preocupação com esta abordagem é que a tarefa de interrupção irá estender o tempo de processamento da tarefa anterior e, assim, tornar mais difícil o cumprimento de um prazo “rígido”.
[0135] Assim, a maior parte dos sistemas sequenciais conhecidos não são rápidos o suficiente para realizar todo o processo apresentado na FIG. 1 em tempo real. Isto é, o sistema não consegue acompanhar a velocidade do equipamento de pulverização, porque o sistema não pode executar todos os passos necessários da análise no tempo em que o equipamento ainda está a passar através da área, e, assim, a análise não pode ser feita a tempo de seletivamente pulverizar as ervas daninhas enquanto o equipamento passa por cima.
[0136] Mais especificamente, nestes sistemas conhecidos, a análise de cada imagem ultrapassa o tempo previsto de tal forma que o sistema, eventualmente, perde um quadro, porque não há tempo suficiente para processar o quadro em algum ponto (a frequência de quadros ignorados vai ser determinada pelo comprimento excedido). Ver, por exemplo, a FIG. 10, que mostra um processo exemplar, que é geralmente realizado por sistemas sequenciais conhecidos. A parte superior do esquema mostra a aquisição de imagem, e cada imagem é capturada sequencialmente e identificada por um número de quadros separados (com base em uma velocidade de equipamento assumida de 30 fps). A parte inferior representa o número do quadro enquanto o quadro é carregado no sistema, em que o sistema está obrigado a processar uma nova imagem a cada 45 milissegundos. No entanto, esta figura mostra que 45 milissegundos para o processamento não é rápido o suficiente, porque as imagens estão sendo adquiridas em menos de 45 milissegundos. Deste modo, o sistema, em última análise, é forçado a saltar uma imagem. No exemplo apresentado na FIG. 10, a quarta imagem é perdida.
[0137] A maioria dos sistemas conhecidos tem tempos de análise que excedem o exemplo acima. Para aqueles sistemas conhecidos sendo testados que não excedam esse período, eles não podem ser utilizados em situações reais. Isto é porque eles não incluem serviços fundamentais de supervisão de que o sistema precisaria para fazer isso, como aquisição de imagem e qualquer pré-tratamento e acionamento de um resultado. Além disso, os sistemas mais recentes com maior precisão têm incorporado imagens 3D ou outras novas tecnologias que vêm com um custo de mais tempo de processamento e supervisão que podem tornar os sistemas ineficazes para aplicação em tempo real.
[0138] O processamento paralelo aumentou as velocidades do sistema. No processamento paralelo, a tarefa executada pelo sistema é dividida entre vários núcleos (processadores) que são executados ao mesmo tempo. Um dos benefícios do processamento paralelo é o aumento da velocidade resultante de espalhar a carga de processamento por vários núcleos. O advento do processador multinúcleo trouxe o processamento paralelo para o assunto principal. No entanto, uma desvantagem é que os sistemas operativos de processamento paralelo conhecidos, comercialmente disponíveis, trabalham de forma assíncrona e não podem garantir tempos de execução nesses sistemas com limitações de tempo "rígidas", porque os tempos de execução não podem ser garantidos, uma vez que o sistema operativo não consegue prever quando uma “revogação” deve ser acionada, o que irá adicionar ao tempo de processamento e poderia tornar o tempo de processamento global superior ao prazo permitido para um resultado.
[0139] Um método de processamento de tubulação conhecido em um sistema multinúcleo na técnica anterior se concentra na alocação de trabalho. Isto é, para processar uma aplicação, a aplicação pode ser dividida em duas ou mais etapas e executada etapa a etapa. O processador multinúcleo recolhe informações de correlação entre as etapas e aloca novos trabalhos aos núcleos com base nas informações coletadas. Uma desvantagem deste método específico é a falta de sincronização entre os núcleos: a alocação de trabalho muda com base na execução dos tra- balhos anteriormente alocados (isto é, os núcleos são atualizados em alguns intervalos e a alocação dos trabalhos aos núcleos é modificada para se adaptar).
[0140] A FIG. 11 fornece uma representação esquemática de uma nova técnica de processamento única, que pode ser incorporada em sistemas de computador multinúcleo, incluindo os vários sistemas de identificação de objeto aqui divulgados, de acordo com uma modalidade. Como mencionado acima, é também entendido que esta técnica de processamento também pode ser utilizada com outros sistemas de identificação conhecidos. A nova técnica incorpora metodologias de computação paralelas tradicionais e canalização de hardware do processo de análise de imagem descrito acima para estender o tempo de processamento disponível. A canalização de hardware, em uma modalidade, utiliza dispositivos tais como Field Programmable Gate Arrays (FPGA). Além disso, a tecnologia de processamento em certas imple-mentações utiliza arquiteturas multinúcleo comercialmente disponíveis a partir de empresas como a Intel. Além disso, as implementações dos sistemas aqui descritas podem utilizar qualquer dispositivo multinúcleo, tal como uma unidade de processamento gráfico (GPU) ou DSP múltipla. Se entende que enquanto a modalidade exemplar específica discutida em detalhe aqui tem seis núcleos, as várias modalidades divulgadas e contempladas aqui não são limitadas a um número específico de núcleos. Isto é, em adição à modalidade de 6 núcleos, discutida abaixo, o sistema pode ter sete, oito, nove, dez ou qualquer outro número de núcleos.
[0141] Tal como apresentado na FIG. 11, de acordo com uma implementação, todas as funções associadas a cada etapa do processamento são atribuídas a um núcleo individual e sincronizadas pelo quadro de entrada (N). Em uma modalidade, a atribuição é uma atribuição fixa que não permite ajustes em tempo real da atribuição de uma função. Por exemplo, em um exemplo, a aquisição de imagem é atribuída ao Núcleo P0, a segmentação de profundidade é atribuída ao Núcleo P1, a extração de características é atribuída aos Núcleos P2 e P3, a classificação é atribu- ída ao Núcleo P4 e as funções de administração são atribuídas ao Núcleo P5. Alternativamente, se entende que as atribuições podem se relacionar a outras atividades para outras modalidades que não envolvam a identificação de objeto.
[0142] De acordo com esta modalidade específica, os Núcleos P0 e P5 são operados de forma assíncrona enquanto eles executam as funções assíncronas do sistema operativo, tal como a aquisição de imagens e o controlo de I/O. Como tal, estes dois núcleos correm em um temporizador de hardware síncrono de modo que eles não podem ultrapassar o prazo atribuído e saltar quadros.
[0143] De acordo com uma implementação, os Núcleos P2, P3 e P4 operam sequencialmente e são sincronizados pela imagem de entrada. A execução destes núcleos é sincronizada de modo que, em um cenário de pior caso, os núcleos ainda não vão ultrapassar o período de tempo atribuído determinado pela taxa de quadros. Alternativamente, os núcleos podem ser sincronizados por um temporizador ou por qualquer outro acionador semelhante ao da imagem de entrada. Em uma outra alternativa, se entende em outras modalidades para além da identificação do objeto que os núcleos P2, P3 e P4 podem operar sequencialmente e são sincronizados por qualquer primeira entrada ou por qualquer outro acionador ou um temporizador.
[0144] A FIG. 12 é um diagrama de temporização da nova técnica de processamento, de acordo com uma modalidade. Como se mostra na figura, períodos de tempo de processamento consecutivos são apresentados na horizontal através do diagrama, enquanto as etapas (1 a 5) são apresentadas verticalmente para baixo ao longo do diagrama. No primeiro período de tempo (período de tempo de processamento 1), a única ação é a aquisição do quadro número 1 na Etapa 1. Como mostrado na figura, existe uma passagem de tempo (igual a períodos de tempo de 1 a 4) entre o momento em que o quadro número 1 entra no sistema na Etapa 1 e o momento em que o quadro número 1 é acionado na última etapa (Etapa 5). Nesta modalidade, pode ser visto na FIG. 12 que nenhum quadro é perdido. Em vez disso, os quadros são unicamente retardados. Em contraste, na abordagem sequencial conhecida, representada na FIG. 10, os quadros são perdidos (como descrito acima). Se entende que os passos em cada uma destas etapas irião diferir de outros sistemas não relacionados com a identificação de objeto.
[0145] Na modalidade mostrada na FIG. 12, existem cinco quadros de valor de aquisição e tempo de processamento disponíveis, o que pode ser visto pelas cinco etapas mostradas verticalmente na figura. Em modalidades alternativas, um tempo de processamento adicional pode ser obtido através da utilização de um processador de núcleo mais elevado da mesma forma. Por exemplo, um processador de oito núcleos poderia proporcionar sete quadros de valor de aquisição e tempo de processamento (a administração do sistema operativo leva um núcleo). Quanto maior for o número de núcleos, maior o número de quadros de valor de aquisição e tempo de processamento.
[0146] Com referência a ambas as FIGS. 9 e 10, o sistema, em determinadas modalidades, tem o seguinte fluxo para certas modalidades de identificação de objeto:
[0147] Período de tempo 1 - No período de tempo 1, na Etapa 1 da tubulação, o quadro da imagem número 1 é adquirido e pré-tratado antes de ser disponibilizado para a Etapa 2. Além disso, em uma modalidade, a análise de base para a identificação de ervas daninhas entre as fileiras também pode ser realizada nesta etapa. Esta análise de base se refere à segmentação das zonas de vegetação do solo e restolho entre as fileiras e também à determinação do tamanho das zonas de vegetação. Se o tamanho for superior a um limite definido pelo usuário, a área é considerada suficientemente grande para pulverizar e um pedido de pulverização (acionador) é enviado para o componente de administração para atuar sobre, e o resultado passado à administração. Alternativamente, a análise de base não precisa de ser realizada nesta etapa, e, em vez disso, pode ser realizada em ou por um sis- tema separado.
[0148] Período de Tempo 2 - Na Etapa 2, o quadro de imagem pré-tratado número 1 é recebido pelo sistema de análise de profundidade, analisado e o resultado preparado para a Etapa 3. Enquanto isso, a Etapa 1 é repetida, com o quadro de imagem número 2 a ser adquirido e pré-tratado.
[0149] Período de Tempo 3 - O resultado da Etapa 2 para o quadro de imagem número 1 é processado na Etapa 3, que inclui dois algoritmos de extração de características correndo em paralelo em diferentes núcleos (como mostrado na FIG. 11), com resultados disponibilizados para a Etapa 4. Em uma modalidade alternativa, os algoritmos de extração de características adicionais podem ser executados, nesta etapa, se implementados em um processador com uma contagem de núcleos mais elevada. Ao mesmo tempo, a Etapa 1 e 2 está sendo repetida como descrito acima, com a Etapa 1 a adquirir o quadro de imagem número 3 e a Etapa 2 envolvendo a análise de profundidade do quadro de imagem número 2.
[0150] Período de Tempo 4 - Na Etapa 4, os resultados da Etapa 3 para o quadro de imagem número 1 são classificados e o resultado disponibilizado para a Etapa 5 (administração). Enquanto isso, a Etapa 1 envolve a aquisição de quadro de imagem número 4, a Etapa 2 envolve a segmentação do quadro de imagem número 3 e a Etapa 3 envolve o desempenho de um algoritmo de extração no quadro de imagem número 2.
[0151] Período de Tempo 5 - Na Etapa 5, alguma ação é tomada com base no quadro de imagem número 1. Ao mesmo tempo, o quadro de imagem número 2 está em processo de classificação da Etapa 4, o quadro de imagem número 3 está no processo de extração de características da Etapa 3, o quadro de imagem número 4 está no processo de segmentação da Etapa 2 e o quadro de imagem número 5 está sendo adquirido e pré-tratado na Etapa 1.
[0152] Este processo se repete indefinidamente enquanto novos números de quadros continuam a ser adquiridos. Em modalidades alternativas de identificação de não objetos, este processo envolveria outras funções ou trabalhos em cada etapa.
[0153] Em uma modalidade, o fluxo de resultados de etapa a etapa é temporizado quer por qualquer um temporizador de hardware configurado para ser sincronizado com a taxa de quadros de imagens de entrada ou a própria nova imagem de entrada. O processamento na Etapa 1 é 90% sequencial com o tempo de processamento global possível incluindo a função assíncrona sendo inferior ao período de taxa de quadros da imagem de entrada. O processamento dentro das Etapas 2, 3 e 4 é 100% sequencial e o tempo de execução é fixo. A administração (Etapa 5) é assíncrona, uma vez que as funções realizadas nesta etapa não precisam de ser tão determinísticas como este ponto. As funções que são executadas na Etapa 5 têm o seu agendamento manipulado programaticamente para influenciar as atribuições de tempo dos sistemas operativos ao alterar as configurações de prioridade, colocar mais ênfase em algumas tarefas e menos ênfase em outras.
Exemplos
[0154]Exemplo 1
[0155]Em um exemplo, uma modalidade do sistema foi utilizada para pulverizar seletivamente ervas daninhas em um campo de piretro. Mais especificamente, o requisito era identificar as plantas de piretro e pulverizar tudo o que era não uma planta de piretro. As plantas de piretro permanecem dormentes, a uma altura de aproximadamente 30 cm, com um diâmetro mínimo de aproximadamente 20 cm. Além disso, as plantas de piretro têm uma textura específica que é bastante áspera. Assim, a imagem retida predeterminada era plantas com alturas entre altura1 e altu- ra2, capturando plantas de aproximadamente 20 cm (altura1) a 45 cm (altura2).
[0156] Os seguintes critérios foram então aplicados. Os componentes de vegetação segmentados (plantas) na imagem RGB são então analisados com a posi- ção correspondente na imagem de altura. Se o componente tinha uma maioria de pixels de altura abaixo da altura 1 e/ou acima da altura 2, o sistema aciona o bocal de pulverização, porque o componente não se ajusta aos critérios de altura. Se os componentes de vegetação segmentados tinham uma maioria de altura na posição correspondente na imagem de altura, entre estas duas alturas e o tamanho do componente era inferior ao diâmetro de piretro mínimo, o sistema aciona o bocal de pul-verização, porque o componente não se ajusta aos critérios de tamanho. Se o sistema não acionou por este tempo as plantas na imagem RGB que tinham uma maioria de altura na posição correspondente na imagem de altura, entre estas duas alturas foram ainda de novo avaliada por um método de análise de textura.
[0157] Exemplo 2
[0158]Em um outro exemplo, uma modalidade do sistema foi utilizada para pulverizar seletivamente ervas daninhas gramíneas altas de um campo de piretro. O pireto cresce em tufos com menos de 40 cm de altura em comparação com as ervas daninhas gramíneas altas que podem crescer até 1 m de altura. Neste cenário, as características predeterminadas da imagem retida seriam as seguintes: a altura máxima da planta cai abaixo da altura2; a planta é verde; a planta está acima de um limiar de tamanho; e a planta não é longa nem fina (determinado pela caixa delimitadora e a relação total de pixels). Isto elimina as folhas mais elevadas que estão as-sociadas às ervas daninhas gramíneas altas e as coloca na imagem deletada.
[0159] A imagem retida é então corrida através de um processo para determinar se o componente é uma linha básica (a "função de redução de linhas” mencionada no pseudocódigo acima). As folhas altas que são linhas são adicionadas à imagem deletada. A imagem retida é uma imagem que destaca onde os componentes estão localizados espacialmente na imagem, mas não tem nenhuma informação de cor para permitir uma análise mais aprofundada. A imagem retida é então sobre-posta com a imagem RGB de modo que a informação de cor correspondendo à po- sição de cada componente é conhecida. Uma análise adicional, tal como a análise com base na cor, forma, textura, altura ou uma combinação das mesmas, pode ser realizada aos componentes individuais para extrair características de plantas e os classificar como piretro ou uma planta daninha.
[0160] Exemplo 3
[0161] Em outra modalidade exemplar, a identificação de um Xanthium italiano (Xanthium italicum) em estado de crescimento de dois meses ocorreria como se segue utilizando a árvore de decisão na FIG. 3. Neste exemplo, conforme estabelecido na figura, os processos de identificação e de ação ocorrem utilizando os seguintes critérios na árvore de decisão para o Xanthium italiano (Xanthium italicum): (1) zonas verdes na imagem; (2) identificação por profundidade; (2A) zonas fora do in-tervalo de profundidade e (2B) pulverização ou mapeamento. Cada um destes pontos de decisão na árvore faz parte de um processo de identificação em tempo real, tal como o processo mostrado na FIG. 1, e adicionalmente pode ser identificado como parte de um destes passos do processo. Por exemplo, os pontos de decisão 1 e 2 deste exemplo, como estabelecido acima, fazem parte do passo de segmentação. Além disso, o ponto de decisão 2A é a filtragem associada à segmentação destacada no parágrafo [56] e 2B é a ação/administração.
[0162] Embora a presente invenção tenha sido descrita com referência a modalidades preferidas, as pessoas peritas na técnica reconhecerão que podem ser feitas alterações na forma e no detalhe sem se afastar do espírito e âmbito da invenção.

Claims (20)

1. Sistema de identificação de objeto em ambiente de mundo real e tempo real, o sistema CARACTERIZADO pelo fato de que compreende: (a) um componente controlador central compreendendo um sistema de processamento de tubulação incluindo um processador de tubulação compreendendo: (I) uma primeira unidade de processamento central recebendo a saída de pelo menos um sensor de imagem, em que uma primeira função é permanentemente alocada a pelo menos a primeira unidade de processamento central; (II) uma segunda unidade de processamento central, em que uma segunda função é permanentemente alocada a pelo menos a segunda unidade de processamento central; e (III) uma terceira unidade de processamento central, em que uma terceira função é permanentemente alocada a pelo menos a terceira unidade de processamento central; as primeira, segunda e terceira funções incluindo aquisição de imagem, segmentação, extração, classificação e/ou acionar seletivamente um bocal de pulverização; em que o sistema de identificação de objeto é um sistema de identificação de planta compreendendo ainda um sistema de pulverização incluindo: (a) um tanque configurado para receber uma composição de pesticida; e (b) uma barra de pulverização (boom) compreendendo uma pluralidade de bocais configurados para pulverizar a composição pesticida, em que a ação compreende acionar um bocal selecionado da pluralidade de bocais para pulverizar; em que a análise de segmentação compreende análise de profundidade; (b) um sistema de visão operacionalmente acoplado ao componente contro- lador central, o sistema de visão configurado para capturar pelo menos uma imagem de uma área alvo, a pelo menos uma imagem compreendendo uma pluralidade de pixels compreendendo: (i) dados de profundidade; e (ii) dados espectrais; e em que a segunda unidade de processamento central inclui um módulo de segmentação configurado para realizar como parte da segunda função, identificar objetos na área alvo, o módulo configurado para varrer os dados de profundidade e os dados espectrais para identificar pixels capturando objetos com conectividade de profundidade e conectividade espectral.
2. Sistema de identificação de objeto em ambiente de mundo real e tempo real, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que o módulo de segmentação é ainda configurado para: (i) usar funções selecionáveis durante a varredura dos dados espectrais e de profundidade para identificar os objetos na pelo menos uma imagem; e (ii) reter ou deletar a pelo menos uma imagem dos objetos com base na comparação dos objetos a características predeterminadas dos objetos.
3. Sistema de identificação de objeto em ambiente de mundo real e tempo real, de acordo com a reivindicação 2, CARACTERIZADO pelo fato de que a segunda central de processamento também inclui: (a) um módulo de extração configurado para extrair características de uma imagem retida, em que as características compreendem textura, tamanho, forma ou altura; (b) um modulo de classificação configurado para comparar as características extraídas com características conhecidas de um objeto conhecido, por onde cada característica extraída é classificada.
4. Sistema de identificação de objeto em ambiente de mundo real e tempo real, de acordo com a reivindicação 2, CARACTERIZADO pelo fato de que as funções selecionáveis compreendem indicadores.
5. Sistema de identificação de objeto em ambiente de mundo real e tempo real, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que a dita segunda função utiliza uma árvore de decisão.
6. Sistema de identificação de objeto em ambiente de mundo real e tempo real, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que as ditas primeira, segunda e terceira funções são executadas em paralelo, porém, dados de uma única imagem são sequencialmente passados da primeira para a segunda para terceira função.
7. Sistema de processamento de tubulação para uso em um sistema de identificação de objeto, CARACTERIZADO pelo fato de que é transladado através de uma área a ser tratada a uma velocidade de trabalho conhecida e incluindo pelo menos um sensor de imagem amostrando a área a ser tratada a uma taxa de amostragem conhecida e um fornecedor de tratamento tendo pelo menos um dispositivo de tratamento para tratar um objeto de interesse percorrendo um caminho comum, o sensor de imagem e o fornecedor de tratamento sendo deslocados entre si em uma direção de translação para estabelecerem um atraso de tempo de translação não zero entre a detecção de um objeto de interesse pelo dito sensor de imagem e tratamento seletivo do objeto pelo fornecedor de tratamento, o sistema de processa-mento de tubulação recebendo uma saída do sensor de imagem e acionando seletivamente o fornecedor de tratamento, o sistema de processamento compreendendo: (a) um controlador central compreendendo: (i) uma primeira unidade de processamento central recebendo a saída de pelo menos um sensor de imagem, em que uma primeira função é permanentemente alocada a pelo menos a primeira unidade de processamento central; (ii) uma segunda unidade de processamento central, em que uma segunda função é permanentemente alocada a pelo menos a segunda unidade de processamento central; e (iii) uma terceira unidade de processamento central, em que uma terceira função é permanentemente alocada a pelo menos a terceira unidade de processamento central; as primeira, segunda e terceira funções incluindo aquisição de imagem, segmentação, extração, classificação e/ou acionar seletivamente o fornecedor de tratamento; o processador de tubulação realizando as primeira, segunda e terceira funções em sequência para processar a saída do sensor de imagem, em que o tempo de processamento total para processar pelo processador de tubulação não é maior do que o atraso de tempo de translação, dessa forma, permitindo as primeira, segunda e terceira funções de serem realizadas de modo que quando um objeto é detectado, em que o sistema de tubulação compreende um sistema de identificação de objeto, e ainda em que: (a) a primeira função compreende aquisição de imagem; (b) a segunda função compreende segmentação, extração e classificação; e (c) a terceira função compreende acionar uma ação com base na classificação; em que a dita função de segmentação é adaptativa e pode ser modificada, ajustando indicadores para alterar a execução de segmentação para melhorar a aplicabilidade para um objeto alvo específico; e em que o processamento dos dados da imagem por cada uma das ditas unidade de processamento ocorre em um período não superior do que a taxa de amostragem do sensor de imagem.
8. Sistema de processamento de tubulação para uso em um sistema de identificação de objeto, de acordo com a reivindicação 7, CARACTERIZADO pelo fato de que o processamento das primeira, segunda e terceira funções é sincronizado em um período não superior do que a taxa de amostragem do sensor de imagem por um acionador ou um temporizador.
9. Sistema de processamento de tubulação para uso em um sistema de identificação de objeto, de acordo com a reivindicação 7, CARACTERIZADO pelo fato de que: em um primeiro período de tempo, a primeira unidade de processamento central aciona aquisição de uma primeira imagem; em que, em um segundo período de tempo: a segunda unidade central de processamento realiza uma análise de segmentação na primeira imagem; e a primeira unidade central de processamento aciona a aquisição de uma segunda imagem; em que, em um terceiro período de tempo: a segunda unidade central de processamento também realiza uma extração de característica na primeira imagem; a segunda unidade central de processamento realiza também a análise de segmentação na segunda imagem; e a primeira unidade central de processamento aciona a aquisição de uma terceira imagem; em que, em um quarto período de tempo: a segunda unidade central de processamento realiza ainda uma classificação na primeira imagem; a segunda unidade central de processamento realiza também a extração de característica na segunda imagem; e a segunda unidade central de processamento realiza a análise de segmentação na terceira imagem; e a primeira unidade central de processamento aciona a aquisição de uma quarta imagem; e em que, em um quinto período de tempo: a terceira unidade central de processamento seletivamente aciona a ação baseada na classificação da primeira imagem; a segunda unidade central de processamento realiza a classificação na segunda imagem; a segunda unidade central de processamento realiza ainda a extração de característica na terceira imagem; a segunda unidade central de processamento realiza também a análise de segmentação na quarta imagem; e a primeira unidade central de processamento aciona uma aquisição de uma quinta imagem.
10. Sistema de processamento de tubulação para uso em um sistema de identificação de objeto, de acordo com a reivindicação 9, CARACTERIZADO pelo fato de que o sistema de identificação de objeto é um sistema de identificação de planta ainda compreendendo um sistema de pulverização, compreendendo: (a) um tanque configurado para receber uma composição de pesticida; e (b) uma barra de pulverização (boom) compreendendo uma pluralidade de bocais configurada para pulverizar a composição pesticida, em que a ação compreende acionar um bocal selecionado dentre a pluralidade de bocais para pulverizar.
11. Sistema de processamento de tubulação para uso em um sistema de identificação de objeto, de acordo com a reivindicação 7, CARACTERIZADO pelo fato de que qualquer uma dentre as primeira, segunda ou terceira funções é perma-nentemente alocada a pelo menos duas dentre as primeira, segunda e terceira uni- dades de processamento central.
12. Sistema de processamento de tubulação para uso em um sistema de identificação de objeto, de acordo com a reivindicação 10, CARACTERIZADO pelo fato de que a análise de segmentação compreende análise de profundidade.
13. Sistema de processamento de tubulação para uso em um sistema de identificação de objeto, de acordo com a reivindicação 7, CARACTERIZADO pelo fato de que a dita segunda função utiliza uma árvore de decisão.
14. Sistema de processamento de tubulação para uso em um sistema de identificação de objeto, de acordo com a reivindicação 13, CARACTERIZADO pelo fato de que a função de segmentação usa altura de imagem para alcançar a segmentação.
15. Sistema de processamento de tubulação para uso em um sistema de identificação de objeto, de acordo com a reivindicação 14, CARACTERIZADO pelo fato de que a função de segmentação também usa cor para realizar a segmentação.
16. Sistema de processamento de tubulação para uso em um sistema de identificação de objeto, de acordo com a reivindicação 15, CARACTERIZADO pelo fato de que a função de segmentação usa uma análise de enchimento modificado rápido.
17. Sistema de processamento de tubulação para uso em um sistema de identificação de objeto, de acordo com a reivindicação 13, CARACTERIZADO pelo fato de que a dita função de segmentação usa cor para realizar a segmentação.
18. Sistema de processamento de tubulação para uso em um sistema de identificação de objeto, de acordo com a reivindicação 13, CARACTERIZADO pelo fato de que o sistema é um anexo para um trator agrícola e em que o controlador central é parte do anexo ou montado em uma cabine do trator.
19. Sistema de processamento de tubulação para uso em um sistema de identificação de objeto, de acordo com a reivindicação 7, CARACTERIZADO pelo fato de que a dita função de segmentação distingue entre plantas com base na forma da folha.
20. Sistema de processamento de tubulação para uso em um sistema de identificação de objeto, de acordo com a reivindicação 7, CARACTERIZADO pelo fato de que os ditos indicadores são dinamicamente adaptativos e adaptáveis ao usuário.
BR112016025867-3A 2014-05-05 2015-05-05 Sistema de identificação de objeto em ambiente de mundo real e tempo real e sistema de processamento de tubulação para uso no mesmo BR112016025867B1 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201461988541P 2014-05-05 2014-05-05
US61/988,541 2014-05-05
PCT/IB2015/001604 WO2015181642A2 (en) 2014-05-05 2015-05-05 Methods, systems, and devices relating to real-time object identification

Publications (3)

Publication Number Publication Date
BR112016025867A2 BR112016025867A2 (pt) 2017-08-15
BR112016025867A8 BR112016025867A8 (pt) 2022-12-13
BR112016025867B1 true BR112016025867B1 (pt) 2023-02-07

Family

ID=54699990

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112016025867-3A BR112016025867B1 (pt) 2014-05-05 2015-05-05 Sistema de identificação de objeto em ambiente de mundo real e tempo real e sistema de processamento de tubulação para uso no mesmo

Country Status (6)

Country Link
US (1) US10405535B2 (pt)
EP (1) EP3140812A4 (pt)
AU (1) AU2015265625B2 (pt)
BR (1) BR112016025867B1 (pt)
CA (1) CA2947817C (pt)
WO (1) WO2015181642A2 (pt)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10405535B2 (en) * 2014-05-05 2019-09-10 University Of Southern Queensland Methods, systems and devices relating to real-time object identification
WO2016144795A1 (en) 2015-03-06 2016-09-15 Blue River Technology Inc. Modular precision agriculture system
EP3349184A1 (en) * 2017-01-16 2018-07-18 Keygene N.V. Monitoring plants
ES2922250T3 (es) * 2017-02-06 2022-09-12 Bilberry Sas Pulverizador agrícola
EP3358525B1 (en) * 2017-02-06 2020-09-16 Bilberry Sas Weeding systems and methods, railway weeding vehicles
CN107552289B (zh) * 2017-10-16 2019-09-03 佛山沃顿装备技术股份有限公司 一种视觉识别喷漆机器人***及其运作方法
WO2019081375A1 (en) * 2017-10-27 2019-05-02 Basf Se PLANT MANAGEMENT APPARATUS
US11147258B2 (en) * 2018-02-12 2021-10-19 Capstan Ag Systems, Inc. Systems and methods for spraying an agricultural fluid on foliage
WO2019173606A1 (en) * 2018-03-07 2019-09-12 Emerald Metrics Methods, systems, and components thereof relating to using multi-spectral imaging for improved cultivation of cannabis and other crops
DE102018203758A1 (de) * 2018-03-13 2019-09-19 Robert Bosch Gmbh Verfahren zum Einstellen einer Wirkmittelmenge und/oder einer Spritzdüsenposition in einer landwirtschaftlichen Spritzvorrichtung
US10713484B2 (en) * 2018-05-24 2020-07-14 Blue River Technology Inc. Semantic segmentation to identify and treat plants in a field and verify the plant treatments
US10891482B2 (en) * 2018-07-10 2021-01-12 Adroit Robotics Systems, devices, and methods for in-field diagnosis of growth stage and crop yield estimation in a plant area
CN108935413B (zh) * 2018-08-24 2023-08-11 浙江大学 一种基于植物空间处方图的叶面药喷施的装置及方法
US11310954B2 (en) * 2018-09-12 2022-04-26 Deere & Company Methods and apparatus for efficient material application
US11995875B2 (en) 2019-01-31 2024-05-28 University Of Southern Queensland Boom mounted agricultural machine vision perspective correction
BR112021017179A2 (pt) * 2019-03-29 2021-11-09 Basf Agro Trademarks Gmbh Método para o tratamento de uma plantação de campo, sistema de gerenciamento de campo, dispositivo de tratamento e sistema de tratamento
WO2020201046A1 (en) * 2019-03-29 2020-10-08 Basf Agro Trademarks Gmbh Targeted weed control with chemical and mechanical means
US11457621B2 (en) 2019-07-12 2022-10-04 Deere & Company Agricultural sprayer system and method
DE102019123328A1 (de) 2019-08-30 2021-03-04 Amazonen-Werke H. Dreyer Gmbh & Co. Kg Vorrichtung und Verfahren zur bedarfsgerechten Pflanzenbehandlung
CN110775596A (zh) * 2019-10-17 2020-02-11 苏州星点点信息科技有限公司 餐品的分拣方法、装置、计算机设备及存储介质
CN111523908B (zh) * 2020-03-31 2023-04-07 云南省烟草质量监督检测站 一种鉴别卷烟真伪的包装机型溯源方法、装置及***
US11738362B2 (en) 2020-04-03 2023-08-29 Cnh Industrial America Llc System and method for monitoring agricultural sprayer operation using spray fan shape
WO2022079176A1 (en) * 2020-10-14 2022-04-21 Basf Agro Trademarks Gmbh Treatment system for weed specific treatment
US11425852B2 (en) 2020-10-16 2022-08-30 Verdant Robotics, Inc. Autonomous detection and control of vegetation
US11694434B2 (en) 2020-10-16 2023-07-04 Verdant Robotics, Inc. Precision agricultural treatment based on growth stage in real time
US11406097B2 (en) * 2020-10-16 2022-08-09 Verdant Robotics, Inc. Autonomous detection and treatment of agricultural objects via precision treatment delivery system
US11944087B2 (en) 2020-12-21 2024-04-02 Deere & Company Agricultural sprayer with real-time, on-machine target sensor
US11832609B2 (en) * 2020-12-21 2023-12-05 Deere & Company Agricultural sprayer with real-time, on-machine target sensor
CN113678809A (zh) * 2021-09-18 2021-11-23 江苏省农业科学院泰州农科所 一种防治芋疫病的龙香芋喷药设备及其防治方法
US11399531B1 (en) 2021-10-20 2022-08-02 Verdant Robotics, Inc. Precision detection and control of vegetation with real time pose estimation
US20230281987A1 (en) * 2022-03-03 2023-09-07 Blue River Technology Inc. Compensating for occlusions in a detection system of a farming machine

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2203774A1 (en) * 1994-10-25 1996-05-02 James Ian Rees Controller for agricultural sprayers
EP1025546A1 (en) * 1996-11-21 2000-08-09 Morphometrix Technologies Inc. Pipeline processor for medical and biological image analysis
IE990949A1 (en) * 1998-11-16 2001-01-24 Daniel Mcloughlin Image Processing
US6919959B2 (en) * 1999-06-30 2005-07-19 Masten Opto-Diagnostics Co. Digital spectral identifier-controller and related methods
US7076682B2 (en) * 2004-05-04 2006-07-11 International Business Machines Corp. Synchronous pipeline with normally transparent pipeline stages
HU3056U (en) * 2005-04-29 2006-03-28 G & G Noevenyvedelmi Es Keresk Construction for making weed map
US8532100B2 (en) * 2010-10-19 2013-09-10 Cisco Technology, Inc. System and method for data exchange in a heterogeneous multiprocessor system
US8488874B2 (en) * 2011-01-31 2013-07-16 Dalhouse University Variable rate sprayer system and method of variably applying agrochemicals
WO2012122988A1 (en) 2011-03-16 2012-09-20 Syddansk Universitet Spray boom for selectively spraying a herbicidal composition onto dicots
CA2858166C (en) * 2011-12-05 2020-10-20 Commonwealth Scientific And Industrial Research Organisation Method and system for characterising plant phenotype
US9135516B2 (en) * 2013-03-08 2015-09-15 Microsoft Technology Licensing, Llc User body angle, curvature and average extremity positions extraction using depth images
US20160295792A1 (en) * 2013-11-25 2016-10-13 Agco Corporation Particulate delivery system with multiple particulate meters
US10405535B2 (en) * 2014-05-05 2019-09-10 University Of Southern Queensland Methods, systems and devices relating to real-time object identification
US10188037B2 (en) * 2015-09-24 2019-01-29 Deere & Company Yield estimation

Also Published As

Publication number Publication date
AU2015265625A2 (en) 2016-12-22
CA2947817C (en) 2022-05-24
BR112016025867A8 (pt) 2022-12-13
WO2015181642A3 (en) 2016-03-31
AU2015265625B2 (en) 2020-10-08
US10405535B2 (en) 2019-09-10
US20170071188A1 (en) 2017-03-16
EP3140812A2 (en) 2017-03-15
EP3140812A4 (en) 2018-01-31
AU2015265625A1 (en) 2016-12-08
CA2947817A1 (en) 2015-12-03
WO2015181642A2 (en) 2015-12-03
BR112016025867A2 (pt) 2017-08-15

Similar Documents

Publication Publication Date Title
BR112016025867B1 (pt) Sistema de identificação de objeto em ambiente de mundo real e tempo real e sistema de processamento de tubulação para uso no mesmo
Oberti et al. Selective spraying of grapevines for disease control using a modular agricultural robot
Amatya et al. Detection of cherry tree branches with full foliage in planar architecture for automated sweet-cherry harvesting
Fu et al. A novel image processing algorithm to separate linearly clustered kiwifruits
Karkee et al. Identification of pruning branches in tall spindle apple trees for automated pruning
US10740610B2 (en) Methods, systems, and devices relating to shadow detection for real-time object identification
Lippi et al. A yolo-based pest detection system for precision agriculture
Bac et al. Stem localization of sweet-pepper plants using the support wire as a visual cue
Oppenheim et al. Detecting tomato flowers in greenhouses using computer vision
Wang et al. DeepPhenology: Estimation of apple flower phenology distributions based on deep learning
Fu et al. Fast detection of banana bunches and stalks in the natural environment based on deep learning
US10719709B2 (en) Augmented reality for plant stand management
Majeed et al. Estimating the trajectories of vine cordons in full foliage canopies for automated green shoot thinning in vineyards
US9477899B2 (en) System and method for differentiating type of vegetation from remotely sensed data
Majeed et al. Development and performance evaluation of a machine vision system and an integrated prototype for automated green shoot thinning in vineyards
Singh et al. Image processing algorithms for in-field cotton boll detection in natural lighting conditions
Li et al. An automatic approach for detecting seedlings per hill of machine-transplanted hybrid rice utilizing machine vision
Jin et al. Detection method for table grape ears and stems based on a far-close-range combined vision system and hand-eye-coordinated picking test
Zhang et al. Automatic flower cluster estimation in apple orchards using aerial and ground based point clouds
ES2929076T3 (es) Rociador de control de plagas basado en cámara
Lippi et al. A data-driven monitoring system for the early pest detection in the precision agriculture of hazelnut orchards
CN112541383B (zh) 杂草区域的识别方法和装置
Liu et al. Development of a proximal machine vision system for off-season weed mapping in broadacre no-tillage fallows
CN117274674A (zh) 对靶施药方法、电子设备、存储介质及***
James et al. Citdet: A benchmark dataset for citrus fruit detection

Legal Events

Date Code Title Description
B06U Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette]
B350 Update of information on the portal [chapter 15.35 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B15K Others concerning applications: alteration of classification

Free format text: A CLASSIFICACAO ANTERIOR ERA: G06T 7/00

Ipc: G06V 10/42 (2022.01), G06K 9/62 (2006.01), G06T 1/

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 05/05/2015, OBSERVADAS AS CONDICOES LEGAIS