BR112019027751A2 - sistema de controle, método para dirigir um veículo e dispositivo de computação - Google Patents

sistema de controle, método para dirigir um veículo e dispositivo de computação Download PDF

Info

Publication number
BR112019027751A2
BR112019027751A2 BR112019027751-0A BR112019027751A BR112019027751A2 BR 112019027751 A2 BR112019027751 A2 BR 112019027751A2 BR 112019027751 A BR112019027751 A BR 112019027751A BR 112019027751 A2 BR112019027751 A2 BR 112019027751A2
Authority
BR
Brazil
Prior art keywords
vehicle
data
line
lines
control system
Prior art date
Application number
BR112019027751-0A
Other languages
English (en)
Inventor
Tommy Ertboelle Madsen
Anant Sakharkar
Original Assignee
Agjunction Llc
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 Agjunction Llc filed Critical Agjunction Llc
Publication of BR112019027751A2 publication Critical patent/BR112019027751A2/pt

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • G05D1/0251Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means extracting 3D information from a plurality of images taken from different locations, e.g. stereo vision
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01BSOIL WORKING IN AGRICULTURE OR FORESTRY; PARTS, DETAILS, OR ACCESSORIES OF AGRICULTURAL MACHINES OR IMPLEMENTS, IN GENERAL
    • A01B69/00Steering of agricultural machines or implements; Guiding agricultural machines or implements on a desired track
    • A01B69/001Steering by means of optical assistance, e.g. television cameras
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01BSOIL WORKING IN AGRICULTURE OR FORESTRY; PARTS, DETAILS, OR ACCESSORIES OF AGRICULTURAL MACHINES OR IMPLEMENTS, IN GENERAL
    • A01B69/00Steering of agricultural machines or implements; Guiding agricultural machines or implements on a desired track
    • A01B69/007Steering or guiding of agricultural vehicles, e.g. steering of the tractor to keep the plough in the furrow
    • A01B69/008Steering or guiding of agricultural vehicles, e.g. steering of the tractor to keep the plough in the furrow automatic
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/28Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
    • G01C21/30Map- or contour-matching
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/38Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
    • G01S19/39Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/42Determining position
    • G01S19/45Determining position by combining measurements of signals from the satellite radio beacon positioning system with a supplementary measurement
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/0088Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • G05D1/0253Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means extracting relative motion information from a plurality of images taken successively, e.g. visual odometry, optical flow
    • G05D1/227
    • G05D1/24
    • G05D1/243
    • G05D1/2435

Abstract

UM SISTEMA DE CONTROLE USA DADOS DE ODOMETRIA VISUAL (VO) PARA IDENTIFICAR UMA POSIÇÃO DO VEÍCULO ENQUANTO SE MOVE AO LONGO DE UM CAMINHO PRÓXIMO À LINHA E PARA DETECTAR O VEÍCULO CHEGANDO AO FINAL DA LINHA. O SISTEMA DE CONTROLE TAMBÉM PODE USAR A IMAGEM DE VO PARA VIRAR O VEÍCULO EM TORNO DE UMA PRIMEIRA POSIÇÃO NO FINAL DA LINHA PARA UMA SEGUNDA POSIÇÃO NO INÍCIO DE OUTRA LINHA. O SISTEMA DE CONTROLE PODE DETECTAR UM FIM DE LINHA COM BASE EM DADOS DE IMAGEM 3D, DADOS DE VO E DADOS DE GNSS. O SISTEMA DE CONTROLE TAMBÉM PODE AJUSTAR OS DADOS DE VO PARA QUE O FINAL DA LINHA DETECTADO A PARTIR DOS DADOS DE VO CORRESPONDA AO LOCAL DO FINAL DA LINHA IDENTIFICADO COM OS DADOS DE GNSS.

Description

SISTEMA DE CONTROLE, MÉTODO PARA DIRIGIR UM VEÍCULO E
DISPOSITIVO DE COMPUTAÇÃO O presente pedido reivindica prioridade ao Pedido Provisório de Patente dos EUA de No. de Série 62/523.667 depositado em 22 de junho de 2017, intitulado: 3-D CAMERA SYSTEM FOR VEHICLE CONTROL, que é incorporado por referência na sua totalidade.
CAMPO TÉCNICO
[0001] Uma ou mais implementações referem-se geralmente ao uso de um sistema de imagem para controlar um veículo.
ANTECEDENTES
[0002] Um sistema de direção automática pode dirigir um veículo ao longo de um caminho desejado. O sistema de direção pode usar giroscópios (gyros), acelerômetros e um sistema global de navegação por satélite (GNSS) para determinar a localização e a direção do veículo. Outro sistema de direção automática pode usar scanners a laser tridimensionais (3D), tal como o lidar e/ou câmeras estéreo para detectar linhas e outras obstruções em um campo. Outro tipo de câmera 3D que pode ser usada pode incluir uma câmera monocular.
[0003] O GNSS requer uma boa linha de visão para os satélites. Árvores, edifícios, moinhos de vento etc. podem degradar a posição do GPS a ponto de não estar mais disponível. Isso cria problemas para os agricultores que precisam de sistemas precisos de controle de veículos. Os produtos no mercado tentam resolver esse problema usando a odometria das rodas, os sistemas de navegação inercial (INS) e obtendo o melhor dos sinais GNSS disponíveis, mesmo que os sinais tenham se degradado, como a correção cinemática em tempo real (RTK) do flutuador RTK, etc.
[0004] Os sistemas de imagem também podem flutuar e ter precisão variável com base nos objetos identificados nas linhas do campo. Por exemplo, plantas podem se estender por linhas adjacentes ou formar lacunas nas linhas. Essas descontinuidades podem impedir que o sistema de imagem identifique com precisão o início, o fim, as linhas centrais entre as linhas ou a localização do veículo dentro da linha.
BREVE DESCRIÇÃO DOS DESENHOS
[0005] Os desenhos incluídos são para fins ilustrativos e servem para fornecer exemplos de possíveis estruturas e operações para os sistemas, aparelhos, métodos e meios de armazenamento legíveis por computador divulgados. Esses desenhos de forma alguma limitam quaisquer alterações na forma e nos detalhes que possam ser feitas por um versado na técnica sem se afastar do espírito e do escopo das implementações divulgadas.
[0006] A FIG. 1 é um diagrama de um veículo que inclui um sistema de controle que usa dados de imagem 3D, dados de odometria visual (VO) e sistema global de navegação por satélite (GNSS) para dirigir automaticamente um veículo.
[0007] A FIG. 2 mostra um campo de visão de sensores de imagem 3-D.
[0008] A FIG. 3 é um diagrama mais detalhado do sistema de controle da FIG. 1
[0009] A FIG. 4 mostra dados de imagem gerados a partir de linhas em um campo.
[0010] A FIG. 5 mostra dados de imagem identificando um fim de linha.
[0011] A FIG. 6 mostra um mapa simultâneo de localização e mapeamento (SLAM) gerado a partir dos dados de imagem nas FIGS. 4 e 5.
[0012] A FIG. 7 mostra um mapa com um caminho usado em conjunto com dados de VO para dirigir um veículo em torno de um campo.
[0013] A FIG. 8 mostra os dados de detecção de VO e de linha gerados em um primeiro estágio de uma curva de fim de linha do veículo.
[0014] A FIG. 9 mostra os dados de detecção de VO e de linha gerados em um segundo estágio da curva de fim de linha do veículo.
[0015] A FIG. 10 mostra os dados de detecção de VO e de linha gerados em um terceiro estágio da curva de fim de linha do veículo.
[0016] A FIG. 11 mostra como os dados de VO são localizados com os dados de GNSS.
[0017] A FIG. 12 mostra dados de imagem identificando obstruções em uma área de promontório.
[0018] A FIG. 13 mostra um mapa de ocupação gerado pelo sistema de controle para identificar obstruções.
[0019] A FIG. 14 mostra diferentes trajetos de curva usados pelo sistema de controle com base em obstruções identificadas e localizações da linha.
[0020] As FIGS. 15-18 mostram como o sistema de controle determina um fim de linha com base nas probabilidades de diferentes locais de fim de linha identificados por dados 3D, dados de VO e dados GNSS.
[0021] A FIG. 19 é um diagrama que mostra o sistema de controle da FIG. 1 em mais detalhes.
[0022] A FIG. 20 é um fluxograma que mostra um processo para usar dados de VO para virar um veículo no final de uma linha.
[0023] A FIG. 21 é um fluxograma que mostra um processo para usar diferentes tipos de dados para determinar um local de final de linha.
[0024] A FIG. 22 mostra um sistema de computador usado no sistema de controle da FIG. 1.
DESCRIÇÃO DETALHADA
[0025] A FIG. 1 é um diagrama de um veículo 100, como um veículo ou trator agrícola. O veículo 100 pode ser qualquer máquina que forneça direção automática. O veículo 100 inclui um ou mais sensores tridimensionais (3-D) 102, como uma câmera estéreo. Outro sensor 3-D 102 pode ser usado em combinação com, ou em vez de, a câmera estéreo 102. Para fins de explicação, os sensores 3-D 102 podem ser referidos abaixo como uma câmera 3- D, mas deve-se entender que qualquer outro tipo de sensor 3D pode ser usado, incluindo, entre outros, dispositivos de detecção e alcance de luz (LIDAR) e/ou radar.
[0026] Uma antena de sistema de satélite de navegação global (GNSS) 104 está tipicamente localizada no topo da cabine do veículo 100. A explicação abaixo pode referir-se a GNSS e sistemas de posicionamento global (GPS) indiferentemente e ambos se referem a qualquer sistema de localização, tal como um sistema de posicionamento por satélite ou celular, que fornece dados de latitude e longitude e/ou uma posição em relação ao verdadeiro norte. O GNSS pode incluir GPS (EUA), Galileu (União Europeia, proposto), GLONASS (Rússia), Beidou (China), Bússola (China,
proposto), IRNSS (Índia, proposto), QZSS (Japão, proposto) e outras correntes ou tecnologia de posicionamento futuro usando sinais de satélites, com ou sem aumento de fontes terrestres.
[0027] Um sistema de navegação inercial 106 (INS) pode incluir sensores giroscópicos (giroscópios), acelerômetros e tecnologias semelhantes para fornecer saídas correspondentes à inércia dos componentes móveis em todos os eixos, isto é, através de seis graus de liberdade (direções positiva e negativa) ao longo dos eixos transversal X, longitudinal Y e vertical Z. Guinada, inclinação e rotação referem-se à rotação do componente móvel em torno dos eixos Z, X e Y, respectivamente. Qualquer outra terminologia usada abaixo pode incluir as palavras mencionadas especificamente, suas derivadas e palavras com significado semelhante.
[0028] Um sistema de controle 108 pode incluir memória para armazenar um mapa eletrônico 109 de um campo. Por exemplo, a latitude e longitude das linhas no campo podem ser capturadas no mapa eletrônico 109 quando o mesmo veículo ou um veículo diferente 100 viaja sobre o campo. Por exemplo, o sistema de controle 108 pode gerar um mapa eletrônico 109 durante o plantio de sementes no campo. O mapa eletrônico 109 pode ser baseado em entradas de localização disponíveis do GNSS 104 e/ou câmara 3-D 102 e pode identificar quaisquer outros objetos localizados em ou em torno do campo. Alternativamente, o mapa eletrônico 109 pode ser gerado a partir de imagens de satélite, avião e/ou drone.
[0029] Um sistema de direção automática 110 controla a curvatura da direção do veículo 100, a velocidade e qualquer outra função relevante do veículo. O sistema de direção automática 110 pode interagir mecanicamente com a coluna de direção do veículo, que é fixada mecanicamente ao volante do veículo. As linhas de controle podem transmitir dados de orientação do sistema de controle 108 para o sistema de direção automática 110.
[0030] Um dispositivo de comunicação 114 pode se conectar e permitir que o sistema de controle 108 se comunique com um servidor central ou com outros veículos. Por exemplo, o dispositivo de comunicação 114 pode incluir um transceptor Wi- Fi, um rádio, ou outro dispositivo de compartilhamento de dados. Uma interface de usuário 116 se conecta ao sistema de controle 108 e pode exibir dados recebidos por qualquer um dos dispositivos 102-114 e permite que um operador controle a direção automática do veículo 100. A interface de usuário 116 pode incluir qualquer combinação de botões, alavancas, diodos emissores de luz (LEDs), tela sensível ao toque, teclado, tela de exibição etc. A interface do usuário também pode ser uma interface do usuário remota em um escritório ou em um dispositivo móvel.
[0031] O sistema de controle 108 usa o receptor GNSS 104, câmera 3-D 102 e INS 106 para controlar com mais precisão o movimento do veículo 100 através de um campo. Por exemplo, o sistema de controle 108 pode usar a câmera 3-D 102 quando o GNSS 104 não está disponível, como quando o veículo 100 se move sob árvores. O sistema de controle 108 também não precisa do GNSS 104 de alta precisão, uma vez que apenas uma posição aproximada do GNSS é necessária para inicializar o mapa eletrônico 109. O sistema de controle 108 pode então usar dados de imagem da câmera 3-D 102 para detectar e navegar pelas linhas do campo.
[0032] Em um exemplo, a câmera 3-D 102 é montada no centro superior dianteiro da cabine do veículo 100. A câmera 102 olha para a frente e tem um campo de visão relativamente amplo para características próximas ao veículo 100 e no horizonte. Em outros exemplos, a câmera 3-D 102 está localizada dentro da cabine do veículo e/ou em um capô dianteiro do veículo 100. Claramente, as câmeras 3-D 102 podem estar localizadas em qualquer outro local do veículo 100.
[0033] A FIG. 2 mostra uma vista superior do veículo 100 que inclui duas câmeras 3-D 102A e 102B alinhadas em direções opostas para aumentar um campo de visão 120 para o sistema de orientação
108. As câmeras 3-D 102 podem olhar para a frente, para os lados ou para trás do veículo 100. As câmeras 3-D 102 também podem operar como uma vista envolvente ou vista de 360 graus e também podem incluir câmeras omnidirecionais que capturam uma imagem de vista de 360 graus. Novamente, qualquer outro tipo de sensor 3- D também pode ser usado em combinação com ou em vez da câmera 3- D 102.
[0034] O veículo 100 pode incluir luzes para melhorar a qualidade da imagem das câmeras 3-D 102 à noite. Outros sensores podem estar localizados no veículo 100 e operar como um sistema de segurança redundante. Por exemplo, um para-choques ultrassônico e/ou flexível pode estar localizado no veículo 100 para detectar e evitar bater nos objetos. O veículo 100 pode não apenas considerar obstáculos no campo de visão, mas também pode mapear obstáculos à medida que passam fora do campo de visão. O sistema de controle 108 pode usar o mapa de obstáculos para planejar rotas que impedem o veículo 100, ou um reboque rebocado pelo veículo 100, de atingir obstáculos detectados anteriormente.
[0035] A FIG. 3 mostra em mais detalhes como o sistema de controle 108 é usado em conjunto com o sistema de direção automática 110. O sistema de controle 110 pode incluir um processador de orientação 6 que geralmente determina o caminho desejado para o veículo 100 percorrer um campo. O processador de orientação 6 é instalado no veículo 100 e se conecta à antena GNSS 104 via receptor GNSS 4, faz interface mecânica com o veículo 100 via sistema de direção automática 110 e recebe dados em 3D e dados de odometria visual (VO) da câmera 3-D 102 via um processador de imagem 105.
[0036] O receptor GNSS 4 pode incluir um conversor de RF (isto é, conversor descendente) 16, um dispositivo de rastreamento 18 e um elemento receptor RTK rover 20. O receptor GNSS 4 se comunica eletricamente com e fornece dados de posicionamento GNSS para o processador de orientação 6. O processador de orientação 6 também inclui interface gráfica do usuário (GUI) 116, um microprocessador 24 e um elemento de mídia 22, como uma unidade de armazenamento de memória.
[0037] O processador de imagem 105 processa as imagens 3-D da câmera 3-D 102 para identificar linhas em um campo e identificar quaisquer outros objetos que o processador de orientação 6 use para determinar um caminho para o veículo de direção 100. O processador de imagem 105 pode gerar mapas de imagem 2-D ou 3-D das imagens 3-D e gerar dados de VO e dados simultâneos de localização e mapeamento (SLAM) das imagens 3D, conforme descrito em mais detalhes abaixo.
[0038] O processador de orientação 6 se comunica eletricamente com e fornece dados de controle ao sistema de direção automática 110. O sistema de direção automática 110 inclui uma chave de detecção de movimento das rodas 28 e um codificador 30 para interpretar comandos de orientação e direção do processador de orientação (CPU) 6. O sistema de direção automática 110 pode interagir mecanicamente com a coluna de direção do veículo 34, que é mecanicamente fixada a um volante
32.
[0039] Um barramento de rede de área de controlador (CAN) 42 pode transmitir dados de orientação da CPU 6 para o sistema de direção automática 110. Um subsistema elétrico 44 alimenta as necessidades elétricas do veículo 100 e pode interagir diretamente com o sistema de direção automática 110 através de um cabo de energia 46. O subsistema de direção automática 110 pode ser montado na coluna de direção 34 perto do piso do veículo e na proximidade dos pedais de controle do veículo 36 ou em outros locais ao longo da coluna de direção 34.
[0040] O sistema de direção automática 110 aciona e dirige fisicamente o veículo 100 girando ativamente o volante 32 através da coluna de direção 34. Um motor 45 é alimentado pelo subsistema elétrico do veículo 44 e pode energizar um acionamento sem-fim que energiza uma engrenagem sem-fim afixada no sistema de direção automática 110. Esses componentes são de preferência fechados em um compartimento. Em outras concretizações, o sistema de autodireção 110 é integrado diretamente ao sistema de controle de acionamento do veículo, independentemente da coluna de direção 34.
Usando o odômetro visual para identificar a posição do veículo e executar curvas de linha
[0041] O sistema de controle 100 pode usar algoritmos de VO para calcular a pose e a trajetória do veículo 100 analisando cronologicamente as imagens em cenas ou quadros. Os algoritmos de VO processam as imagens capturadas em ordem cronológica e rastreiam os movimentos das imagens de um quadro para o próximo. Tanto a posição quanto a orientação do veículo 100 são determinadas com base no movimento rastreado das imagens ou em características esparsas nas imagens de imagem para imagem. O sistema de controle 100 usa os movimentos de imagem rastreados pela câmera 3-D 102 em combinação com dados GNSS do receptor GNSS 104 e taxas de giro e acelerações do INS 106 para determinar de maneira mais confiável o rumo e a posição do veículo 100 ao longo do caminho desejado.
[0042] Um algoritmo de exemplo utilizado para calcular a pose e trajetória do veículo 100 com base nos dados de VO é descrito na Patente dos EUA nº 8,155,870, a qual é incorporada por referência na sua totalidade. Os algoritmos que utilizam dados de VO para identificar a posição de um dispositivo são conhecidos dos versados na técnica e, portanto, não são explicados em mais detalhes.
[0043] A FIG. 4 mostra diferentes dados de imagem produzidos a partir da câmera 3-D 102 na FIG. 1. A câmera 3D 102 pode gerar uma sequência de múltiplas imagens 130 quando o veículo 100 viaja ao longo de um caminho 152 entre duas linhas 154A e 154B de árvores em um pomar. Os dados de imagem descritos abaixo podem ser gerados pelo processador de imagem 105 na FIG. 2 e usados pelo processador de orientação 6 na FIG. 2 para dirigir o veículo
100 ao longo do caminho desejado 152. No entanto, qualquer combinação do processador de imagem 105 e do processador de orientação 6 pode executar qualquer combinação das operações de processamento de imagem e operações de direção do veículo descritas abaixo. Por esse motivo, as operações de processamento de imagem e as operações de direção do veículo são descritas geralmente abaixo em relação ao sistema de controle 108.
[0044] O sistema de controle 108 gera um mapa de nuvem de pontos 3-D 132 a partir da série de imagens 130 geradas pela câmera 3-D 102. O sistema de controle 108 pode identificar os objetos 140A e 140B que estão a uma altura específica acima do solo, como árvores nas linhas 154A e 154B, respectivamente.
[0045] Por exemplo, o sistema de controle 108 pode adicionar pontos no mapa de nuvens de pontos 132 que estão a uma certa altura acima do nível do solo para criar um histograma de altura 2D. O sistema de controle 108 então detecta as linhas de árvore 154 no histograma 2D usando abordagens de ajuste de linha como Hough ou RANSAC. Outro método detecta as linhas das árvores 154 procurando cilindros verticais no mapa de nuvens de pontos 132. O sistema de controle 108 pode aumentar o mapa de nuvens de pontos 132 com outras informações de imagem, como descrições de características, que fornecem rastreamento mais robusto de imagem para imagem e também fornecem melhor relocalização.
[0046] O sistema de controle 108 gera linhas 146A e 146B em dados de imagem 2-D 134 que representam valores de pico de pixel nos objetos 140A e 140B e identificam a localização das linhas 154A e 154B, respectivamente. O sistema de controle 108 localiza uma linha central 144 entre as linhas 146A e 146B que representa a linha A-B ou o caminho desejado 152 para o veículo 100 viajar entre as linhas 154A e 154B.
[0047] O sistema de controle 108 também gera dados de VO 136 que identificam quanto o veículo 100 se move em relação aos melhores pontos de característica distintos 150 através dos quadros de imagem 130. Por exemplo, o sistema de controle 108 detecta diferentes características ou "cantos" 150 nos dados de imagem 130. O sistema de controle 108 identifica as mesmas características 150 nos quadros de imagem 3-D subsequentes 130. O sistema de controle 108 calcula quanto o veículo 100 se move com base na mudança de posição nas características 150. O sistema de controle 108 exibe a posição e o movimento do veículo 100 como linha de posição 148 nos dados de VO 136. Os pontos 146 representam as características anteriores e presentes 150 utilizadas pelo sistema de controle 108 para calcular a linha de posição 148. Como mostra a FIG. 4, a linha de posição 148 identifica uma localização e orientação do veículo 100.
[0048] O caminho 152 entre as linhas 154 pode não ser uma linha reta. O sistema de controle 108 pode identificar repetidamente novos pontos da linha central 142 enquanto viaja entre as linhas 154. Por exemplo, depois de atingir um dos pontos da linha central 142, o sistema de controle 108 calcula um próximo ponto da linha central 142 na frente do veículo 100 e depois direciona o veículo 100 para o próximo ponto da linha central 142 ao longo do caminho desejado 144.
[0049] A FIG. 5 mostra os dados de imagem 130 gerados no final das linhas 154. O sistema de controle 108 detecta o final das árvores de três pés ou mais nas linhas 154A e 154B e finaliza os objetos 140A e 140B no mapa de nuvens de pontos 132. O sistema de controle 108 também detecta um veículo 158 no final da linha 154B e gera um novo objeto 156 que se estende transversalmente na frente do objeto da linha 140B.
[0050] O final das linhas 154A e 154B faz com que o sistema de controle 108 pare de gerar as linhas 146 no mapa 2-D 134. Sem linhas de linha identificáveis, o sistema de controle 108 não gera mais o caminho da linha central 144 na FIG. 4. Por conseguinte, o sistema de controle 108 exibe uma linha vermelha ao longo do eixo vertical 160, indicando o fim das linhas 154. O sistema de controle 108 também pode gerar uma linha 2-D 162 representando o carro 158 que se desvia severamente da linha de centro anterior 144 na FIG. 4. O sistema de controle 108 também gera dados de VO 136 que incluem a linha de posição 148 que identifica a posição do veículo 100 ao longo do caminho 152.
[0051] O sistema de controle 108 pode detectar o final das linhas 154A e 154B com base nos dados de imagem na FIG. 5. Por exemplo, a localização do veículo 100 associada à linha de posição 148 nos dados de VO 136 pode corresponder a uma localização de fim de linha no mapa eletrônico armazenado 109 na FIG. 1. O sistema de controle 108 pode determinar a posição lat/long do veículo 100 no início de cada linha e derivar o comprimento de cada linha do mapa 109. A linha de posição 148 nos dados de VO 136 identifica a distância que o veículo 100 se moveu desde o início do local da linha. O sistema de controle 108 detecta o fim da linha quando o comprimento da linha de posição 148 atinge o comprimento da linha identificada no mapa
109.
[0052] A terminação das linhas 2-D 146 e da linha de centro 144 no mapa 3-D 134 também pode indicar um fim de linha. A descontinuidade criada pela linha angular 162 também pode indicar um objeto localizado no final da linha. O sistema de controle 108 também pode receber dados GNSS do receptor GNSS 104 na FIG. 1. O sistema de controle 108 também pode detectar o fim da linha quando os dados de lat/long do receptor GNSS 104 coincidem com a posição ou comprimento de lat/long armazenados no final da linha. Localização Simultânea e Mapeamento (SLAM)
[0053] A FIG. 6 mostra um mapa simultâneo de localização e mapeamento (SLAM) 166. O sistema de controle 108 cria o mapa SLAM 166 a partir das imagens 130A tiradas enquanto o veículo 100 viaja entre as linhas de um campo 164 e das imagens 130B tiradas enquanto o veículo 100 gira na área do promontório do campo 164. O sistema de controle 100 pode identificar a pose do veículo a partir de dados VO, dados SLAM, dados GNSS e/ou dados INS. Como mencionado acima, o cálculo da orientação e pose do veículo com base no VO e SLAM é conhecido pelos versados na técnica e, portanto, não é descrito em mais detalhes.
[0054] O mapa SLAM 166 pode incluir as seções relativamente retas 168, onde o veículo 100 viaja adjacente às linhas no campo 164 e seções de rotação 170 nas seções do promontório do campo 164, onde o veículo 100 vira para viajar ao lado de outra linha no campo 164. Os dados GNSS podem estar disponíveis fora da área 172 e indisponíveis dentro da área 172. Por exemplo, as árvores dentro da área 172 podem impedir o receptor GNSS 104 de receber dados de satélite GNSS de maneira confiável.
[0055] O sistema de controle 108 pode localizar geograficamente o mapa SLAM 166 com coordenadas GNSS quando disponível no receptor GNSS 104. O sistema de controle 108 pode armazenar o mapa SLAM 166 on-line para fácil atualização por diferentes veículos que trabalham no mesmo campo 164 e localiza o veículo 100 quando colocado no mapa 166.
[0056] O sistema de controle 108 pode dirigir o veículo 100 em torno do campo 164 pela primeira vez para criar o mapa SLAM
166. O sistema de controle 108 atualiza o mapa SLAM 180 a cada corrida subsequente no campo 164 para refletir as mudanças no ambiente. O sistema de controle 108 pode atualizar e otimizar continuamente o mapa SLAM 166 com base em novos dados de imagem recebidos do sensor 3-D 102 e dados GNSS recebidos do sensor GNSS 104. A integração de dados GNSS com o mapa SLAM 166 pode ser baseada na qualidade dos sinais GNSS e pode ser melhor em áreas de promontórios e outros locais fora da área 172. O sensor 104 GNSS tem uma visão clara do céu.
[0057] Sempre que um sinal GNSS forte é detectado, o sistema de controle 108 pode marcar essa posição no mapa SLAM 166 com a posição lat/long GNSS associada e a incerteza de posição estimada. O sistema de controle 108 compara a posição lat/long do GNSS com a posição VO indicada no mapa SLAM 166. O sistema de controle 108 pode então recalibrar as posições VO no mapa SLAM 166 para explicar levar em conta a flutuação e correlacionar com as posições lat/long do GNSS.
[0058] O mapa SLAM 166 é desejável para planear o percurso do veículo 100 em torno do campo 164 e pode proporcionar informação adicional que permite um desempenho mais robusto do sistema de controle 108. Contudo, o sistema de controle 108 pode realizar muitas tarefas sem mapa SLAM 166, ou qualquer outro mapa eletrônico, mas possivelmente com menos confiança e parada quando não puder mais descobrir como seguir em frente. Como os campos técnicos não são perfeitamente retangulares ou plantados, o mapa SLAM 164 pode ser aumentado com mais pontos 3D do sensor 3D para fornecer um mapa 3D mais denso do campo. Esse mapa 3D pode ser processado on-line/off-line para fornecer verificação adicional dos locais das linhas, distâncias das linhas, espaçamento entre árvores, altura das árvores, tipos de árvores etc.
[0059] Um drone ou outro tipo de dispositivo pode produzir um mapa do campo 164 do sistema de informações geográficas (GIS), como o utilizado pelo Google Maps®. Um operador pode identificar seções diferentes do campo 164 que requerem quantidade diferente de pulverização, como quantidades diferentes de fertilizantes ou pesticidas. O sistema de controle 108 determina quando o veículo 100 entra e sai das diferentes seções de campo com base nas posições de VO e GNSS como descrito acima. O sistema de controle 108 aplica as diferentes quantidades de material identificadas no mapa GIS, porque pode calcular a posição no mapa GIS mesmo quando o GNSS não está disponível com base em VO ou SLAM.
[0060] A FIG. 7 mostra um mapa GNSS ou sistema de informação geográfica (SIG) 109 do campo 164. O mapa 109 pode ser armazenado no sistema de controle 108 e pode incluir informações de latitude/longitude que identificam os limites do campo 164, comprimentos de linha, início dos locais de linha, final de localizações de linhas, linhas de árvores, dados espaciais, obstruções, etc. Quando houver cobertura GNSS suficiente, o sistema de controle 108 pode usar sinais GNSS para direcionar o veículo 100 ao longo de um caminho 180 para uma posição inicial da linha 182A. O início da linha 182A pode ser uma primeira linha com uma linha de árvore esquerda ou direita ou tipicamente com duas linhas de árvore, uma de cada lado do veículo 100.
[0061] Sem sinais GNSS, o veículo 100 pode ser direcionado manualmente para uma posição conhecida no mapa 109, onde o sistema de controle 108 pode reconhecer o início da linha. Se o inicio da linha não pode ser detectado, um início de linha pode ser inserido em uma descrição do trabalho indicando o veículo 100 começando na linha x, conduzindo na direção y, e em posição z metros a partir do início da linha que permite que a câmara 3- D 102 detecte a linha.
[0062] Isso é suficiente para o sistema de controle 108 dirigir o veículo 100 pelas linhas 182 sem dados GNSS ou um mapa SLAM gerado anteriormente. Como explicado acima, sem dados GNSS, o sistema de controle 108 pode usar dados de imagem 3D dos sensores 3D para identificar e dirigir o veículo 100 ao longo da linha central entre as linhas adjacentes 182A e 182B que formam a seção 180A do caminho 180. No entanto, o sistema de controle 108 também pode usar dados GNSS, quando disponíveis, juntamente com os dados de imagem para direcionar automaticamente o veículo 100 ao longo do caminho 180 entre as linhas 182A-182D.
[0063] O sistema de controle 108 usa os dados da nuvem de pontos 3D para detectar o final da linha 182A. O sistema de controle 108 pode usar vários métodos diferentes para executar uma curva 180B na área do promontório 186. Em um exemplo, o mapa 109 identifica a distância entre o final da seção de caminho 180A e o início de uma próxima seção de caminho 180C. O sistema de controle 108 pode executar uma curva 180B com um raio predeterminado que posiciona o veículo 100 no início da seção de caminho 180C e no início das linhas 182C e 182D.
[0064] O sistema de controle 108 pode executar a volta 180B com ou sem o benefício de dados GNSS. Se dados GNSS estiverem disponíveis, o sistema de controle 108 pode detectar continuamente a localização do veículo 100 ao longo da curva 180B até alcançar uma posição/orientação lat/long alinhada com o início das linhas 182C e 182D. Se os dados GNSS não estiverem disponíveis, o sistema de controle 108 pode usar dados de imagem 3D e dados de pose de VO associados para concluir a curva e detectar a linha inicial e central entre as linhas 182C e 182D.
[0065] Quando o mapa SLAM 166 está disponível, o sistema de controle 108 pode localizar em qualquer lugar do campo 176 com ou sem dados GNSS adicionais. Se direções de condução são alteradas, o sistema de controle 108 atualiza o mapa SLAM na FIG. 6 para adicionar características adicionais vistas nas novas direções da direção. Se grandes mudanças ocorrerem no campo 164, como folhas caindo no outono, o sistema de controle 108 pode falhar na localização com o mapa SLAM 166 e pode como padrão apenas usar o mapa 109.
[0066] As FIGS. 8-10 mostram em mais detalhes como o sistema de controle 108 executa a volta de fim de linha 180B. A FIG. 8 mostra a pose de VO 148 do veículo 100 após o início da curva 180B no final da linha 182A. O sistema de controle 108 executa a curva 180B para alcançar o início da próxima linha 182C. O sistema de controle 108 pode ter um ou mais caminhos pré- armazenados ou direções de condução para dirigir o veículo 100 a uma distância conhecida a partir da extremidade da linha 182A para o início da linha 182C. O sistema de controle 108 continua a gerar dados de imagem 130 e dados de VO associados 136 durante a volta 180B. Dados de imagem 130 na FIG. 8 mostram a área de promontório 186 nas extremidades de várias linhas diferentes 182C-182E.
[0067] A FIG. 9 mostra um estágio seguinte de volta 180B onde imagens 2-D 130 começam a capturar árvores na linha 182D e o mapa de nuvem de pontos 132 começa identificando uma linha 140A de objetos verticais associada com a linha 182D. O mapa de dados 2D 134 pode gerar uma linha 146A que identifica a localização da linha 182D. O sistema de controle 108 novamente pode exibir uma linha vermelha ao longo do eixo 160, indicando que uma linha central não foi detectada atualmente entre duas linhas adjacentes 182.
[0068] Dados VO 136 mapeiam continuamente a pose do veículo 100 durante a curva 180B. Como mencionado acima, se disponível, o sistema de controle 108 pode localizar a posição VO 148 com dados disponíveis de lat/long GNSS. Caso contrário, o sistema de controle 108 pode executar a curva 180B e armazenar os dados de VO associados 148 como mapa SLAM 166 sem assistência GNSS.
[0069] A FIG. 10 mostra um próximo estágio da curva 180B, em que os dados de imagem 3D 130 começam a capturar árvores nas linhas 182C e 182D. O sistema de controle 108 gera dados de nuvem de pontos 132 que identificam duas linhas de objetos verticais 140A e 140B associados às linhas 182D e 182C, respectivamente. O sistema de controle 108 gera o mapa de dados 2-D 134 que agora exibe a linha central 144 entre as linhas 146A e 146B representando as linhas 182D e 182C, respectivamente.
[0070] A linha central 144 não está alinhada com o eixo vertical 160, indicando que o veículo 100 ainda não está alinhado com o caminho 180C. O sistema de controle 108 continua a dirigir o veículo 100 para otimizar o caminho a partir de sua pose atual para conseguir dirigir ao longo da linha central. O sistema de controle 108 então inicia a direção do veículo 100 ao longo da linha central/caminho 180C desejado entre as linhas 182C e 182D. O sistema de controle 108 continua a armazenar dados de VO 148 para a conclusão da curva 180B e ao longo do caminho 180C que faz parte do mapa SLAM 166 na FIG. 6.
[0071] A FIG. 11 mostra um exemplo de como o sistema de controle 108 usa dados GNSS para localizar o mapa de VO/SLAM
166. Uma leitura GNSS 187A é feita antes do veículo 100 se mover entre as linhas 182A e 182B do campo 176. O sistema de controle 108 calcula uma primeira medição VO 188A quando o veículo 100 se move entre as linhas 182. Os círculos tracejados 189 representam incerteza relacionada à flutuação das posições VO 188.
[0072] Outra leitura GNSS 187B é tomada na posição VO 188N quando o veículo 100 existe nas linhas 182. Como explicado acima, o sistema de controle 108 determina a lat/long derivada de VO na posição VO 188N ao adicionar a posição VO 188N à posição GNSS anteriormente identificada 187A. A diferença entre o VO medido na posição lat/long 188N e o GNSS na posição 187B é o erro VO
190.
[0073] O sistema de controle 108 recalcula cada medição de VO armazenada 188 com base no erro de VO 190. Por exemplo, a distância latitudinal da posição VO 188N pode ser 100 metros e a distância latitudinal da posição GNSS 187B pode ser 102 metros. O sistema de controle 108 pode recalcular cada medição de posição VO 188 adicionando as observações válidas do GNSS nos cálculos do VO.
[0074] Por exemplo, o sistema de controle 108 pode armazenar quadros-chave em momentos diferentes e rastrear movimentos de características identificadas nos quadros-chave. O sistema de controle 108 pode recalcular como as características se movem em relação aos quadros-chave armazenados com base no uso de GNSS quando a qualidade é alta o suficiente, por exemplo, no promontório do campo. Por exemplo, o sistema de controle 108 pode usar uma abordagem de ajuste de feixe para calcular as poses da câmera. Ao adicionar o GNSS ao ajuste de feixe como pontos de controle, a trajetória das poses da câmera pode ser calculada para corresponder às observações GNSS conhecidas.
[0075] O sistema de controle 108 pode localizar os cálculos de VO sempre que dados GNSS confiáveis são recebidos. Por exemplo, um dossel formado por árvores pode se abrir no meio das linhas 182. O sistema de controle 108 pode calcular um erro entre a última medição de VO 188 e uma GNSS atual lendo e recalibrando as medições de VO subsequentes 188 na linha com base no erro. Detecção de Obstáculos
[0076] A FIG. 12 mostra como o sistema de controle 108 detecta obstáculos em diferentes áreas de um campo. Por exemplo, a câmera 3-D 102 captura imagens 130 da área do promontório no final de uma linha. A área do promontório inclui um carro 196, árvores 198 e uma área livre 200. O mapa de nuvens de pontos 132 identifica que os voxels no mundo 3D estão ocupados acima do nível do solo 192 e a localização desses voxels acima do solo é mapeada no mapa 2-D 136. O sistema de controle 108 gera um mapa da área ocupada 202 nos dados do mapa VO 136 representando as linhas no campo, árvores 198 e carro 196. Outras áreas de promontório 200 são identificadas como espaço livre 204 ou áreas não observadas 206. O sistema de controle 108 pode gerar um caminho para uma próxima linha que evita as obstruções 202.
[0077] A FIG. 13 mostra como sistema de controle 108 cria um mapa de ocupação 208 que inclui uma grade de ocupação e espaços livres preliminares correspondentes vazios 210. O sistema de controle 108 varre as áreas percorridas com a câmera 3-D 102. Quaisquer objetos da nuvem de pontos detectados acima do nível do solo são inseridos em uma célula da grade de ocupação associada como obstáculos 212. Todas as células entre o obstáculo e a posição atual do veículo são marcadas como espaço livre 216. Todas as outras células da grade são marcadas como desconhecidas
214. O sistema de controle 108 usa o mapa de ocupação 208 para traçar um percurso em torno dos obstáculos identificados 212.
[0078] A FIG. 14 mostra como o sistema de controle 108 seleciona um caminho do veículo que evita obstáculos. O sistema de controle 108 pode não detectar nenhum obstáculo dentro de uma área de promontório 220. Por conseguinte, o sistema de controle 108 pode selecionar um caminho de contorno 226 com base na localização das linhas 222 e no tamanho da área do promontório
220. Neste exemplo, o caminho 226 direciona o veículo 100 de volta para o mesmo caminho entre as linhas 222.
[0079] O veículo 100 pode sair das linhas 232A para uma área de promontório diferente 228. Desta vez, o sistema de controle 108 detecta um obstáculo 230 dentro da área de promontório 228. O sistema de controle 108 seleciona um caminho de contorno 234A com base no tamanho da área do promontório 228 e na localização da obstrução 230 que posiciona o veículo 100 no início de uma próxima linha 232B. O sistema de controle 108 também seleciona o caminho 234A, de modo que um caminho correspondente 234B para o implemento 224 também evita o obstáculo 230. Fusão do Sensor para Detectar o Fim das Linhas
[0080] As FIGS. 15-18 mostram como o sistema de controle 108 usa a fusão de sensor para detectar o fim de uma linha. O sistema de controle 108 pode fundir informações de distância do mapa com informações de distância medida, enquanto que leva em conta a flutuação VO e também considera posição do GNSS e a qualidade do sinal do GNSS. O sistema de controle 108 também pode levar em consideração os dados de posição identificados em um mapa SLAM, se disponíveis, e dados de imagem em 3D. A detecção fundida de fim de linha evita falsos positivos que podem virar o veículo 100 quando não houver área de promontório. A detecção fundida de fim de linha também evita falsos negativos, como dirigir o veículo 100 completamente em uma área de promontório não detectada.
[0081] A FIG. 15 mostra o veículo 100 antes de viajar entre as linhas 182 em um campo 240. Um mapa digital 246 pode identificar os locais e/ou comprimentos de cada linha 182. O sistema de controle 108 inicializa a odometria visual (VO)/SLAM e começa a capturar imagens no início do local da linha 252 a partir de uma origem de quadro de VO 250. Uma incerteza de fim de linha de VO (EOR) 260 corresponde à flutuação no local de VO enquanto o veículo 100 viaja ao longo das linhas 182.
[0082] O receptor GNSS 104 tem boa recepção GNSS fora da área 244, o que significa que os sinais GNSS atualmente têm uma incerteza relativamente pequena 248. Em outras palavras, há uma probabilidade relativamente alta de que os dados GNSS estejam fornecendo uma localização relativamente precisa do veículo. Uma incerteza de fim de linha (EOR) GNSS 258 também é relativamente pequena, uma vez que a incerteza atual GNSS 248 é baixa e a distância 242 até o final da linha 182 é conhecida no mapa 246.
[0083] A FIG. 16 mostra um próximo estado em que o sistema de controle 108 dirige o veículo 100 ao longo de uma linha central 256 entre a linha adjacente 182. Como explicado acima, o sistema de controle 108 gera um mapa 2-D com duas linhas que identificam a localização das duas linhas adjacentes 192. O sistema de controle 108, em seguida, identifica a linha central 256 entre as duas linhas e dirige o veículo 100 ao longo da linha central
256. Durante esse segundo estado, o sistema de controle 108 usa odômetro visual/SLAM (VO) para rastrear a posição do veículo 100 enquanto viaja entre as linhas 182. A marquise criada pelas árvores nas linhas 182 pode criar má recepção de GNSS. Por conseguinte, os sinais GNSS agora têm uma incerteza maior 248 e um fim de linha 258 associado maior.
[0084] A FIG. 17 mostra um próximo estado em que os dados 3D identificam incorretamente um final da linha 262. Por exemplo, pode haver uma ou mais lacunas 264 nas linhas 182 que os dados da imagem 3D identificam como final da linha 262. O sistema de controle 108 usa os dados 3D, dados VO e dados GPS para determinar se o local 262 do final da linha de dados 3D está incorreto.
[0085] O sistema de controle 108 usa um gráfico de probabilidade 268 que inclui um eixo horizontal que representa a distância de deslocamento e um eixo vertical que representa a probabilidade. O sistema de controle 108 pode determinar as probabilidades 270, 272 e 274 na FIG. 18 para localização de fim de linha 262 de dados 3D, localização de EOR de GNSS 258 e localização de EOR de VO 260. O sistema de controle 108 pode determinar as probabilidades 270, 272 e 274 com base na força do sinal de GPS, desvio do sinal de VO conhecido e outras distribuições de probabilidade derivadas baseadas em passagens repetidas pelas linhas 182.
[0086] O sistema de controle 108 determina que a localização do EOR dos dados 3D 262 é substancialmente mais curta que a localização do EOR de VO 260 e a localização do EOR de GNSS 258. A probabilidade dos dados 3D EOR 262 também está abaixo de um limite 278 que o sistema de controle 108 usa para determinar um fim de linha final. A probabilidade do EOR de VO 260 também é substancialmente a mesma que a probabilidade do EOR de GNSS 258. O sistema de controle 108 pode combinar as probabilidades 260 e 258 em uma probabilidade de EOR maior combinada 276. A probabilidade do EOR de 3-D 262 também é menor que a probabilidade combinada de fim de linha 276. Por conseguinte, o sistema de controle 108 ignora a detecção de EOR 262 a partir dos dados de imagem em 3D e continua dirigindo o veículo 100 ao longo da linha A-B 256.
[0087] A FIG. 18 mostra um estado em que os dados 3D, dados de VO e dados de GPS têm todos eles os locais de fim de linha sobrepostos. Os dados de EOR de GNSS 258, EOR de VO 260 e EOR de 3-D 262 também têm uma probabilidade combinada 276 que excede o limite 278 na localização 280. Por conseguinte, o sistema de controle 108 identifica a localização 280 no final das linhas
182.
[0088] Se faltarem árvores pouco antes do promontório, o final da linha poderá ser detectado muito cedo devido a uma indicação de EOR de dados 3D 262 e à incerteza de EOR de VO 260 e EOR de GNSS 258. Isso pode ser corrigido quando o veículo 100 entra no promontório e obtém dados GNSS com maior segurança. O sistema de controle 108 pode corrigir o local de EOR do caminho VO/SLAM e ajustar o caminho de contorno do veículo. Por exemplo, o sistema de controle 108 pode virar mais um metro para longe das linhas 182 antes de virar para a próxima linha.
[0089] O sistema de controle 108 também pode definir limites que param o veículo 100 e alerta um operador remoto para verificar o estado do sistema. Por exemplo, os dados do VO podem indicar que o veículo 100 passou do final da linha, mas os dados GNSS e os dados 3D indicam que o veículo 100 não passou do final da linha. O sistema de controle 108 pode enviar uma mensagem de notificação dos dados VO possivelmente errados.
[0090] A FIG. 19 é um diagrama que mostra o sistema de controle 108 em mais detalhes. O veículo 100 inclui um sensor de ângulo da roda (WAS) 516 que gera medições de curvatura 512 com base nos ângulos de direção das rodas no veículo 100. Um controlador VO/SLAM fundido 526 recebe taxas angulares do movimento do veículo 530 a partir de um sensor giroscópio de taxa de três eixos 518, dados de aceleração do veículo 532 de um acelerômetro de três eixos 520 e dados de bússola magnética do veículo 534 de uma bússola de três eixos 522. Todos dentre o sensor de giroscópio de taxa de três eixos 518, sensor de acelerômetro de três eixos 520, e sensor da bússola magnética 522 podem fazer parte do INS 106 descrito acima na FIG. 1.
[0091] O controlador VO/SLAM 526 também recebe dados de posição GPS 544 de um sensor de posição GNSS 104 e outros possíveis dados de rumo e VO 538 de um processador de imagem 524 que recebe dados de imagem em 2D e/ou 3D a partir de sensores de imagem 3-D 102 mostrados na FIG. 1.
[0092] O controlador de fusão VO/SLAM 526 gera dados de rumo 540 e dados de rotação e inclinação 542 para o veículo 100 com base em taxas angulares 530 dos sensores de giroscópio 518, dados de aceleração 532 de acelerômetros 520, dados magnéticos 534 da bússola 522, dados de posição GNSS de Sensor GNSS 104 e dados VO 538 do processador de imagem 524. Por exemplo, o controlador de fusão VO 526 pode ponderar os diferentes dados com base nas intensidades do nível de sinal, quantidade de tempo desde que os sensores foram recalibrados, condições ambientais, etc., por exemplo, usando um filtro Kalman estendido.
[0093] Em um exemplo, o processador de imagem 524 opera semelhante ao processador de imagem 105 na FIG. 2. O processador de imagem 524 pode identificar seis graus de liberdade para o veículo 100 com base em dados de VO/SLAM gerados a partir dos dados de imagem em 3D. O processador de imagem 524 detecta linhas de árvores e gera pontos de linha central na operação 525 e gera um mapa de grade de ocupação na operação 527, como descrito acima.
[0094] A memória no sistema de controle 108 pode armazenar dados de localização e orientação do sensor 551 que indicam as localizações e orientações de todos os sensores localizados no veículo 100. Os dados de localização e orientação 551 são utilizados pelo controlador VO/SLAM 526 e uma projeção de ponto de articulação e o controlador de fusão de pose 546 para ajustar os dados do sensor para um ponto central no veículo 100.
[0095] O controlador de projeção e fusão de pose do ponto de articulação 546 calcula uma posição do ponto de articulação 552 do veículo 100 com base no rumo do veículo 540, dados de rotação/inclinação do veículo 542 a partir do controlador 526, dados de posição do GPS 544 do sensor GNSS 104, e localização do sensor e dados de orientação 551. A posição do ponto de articulação 552 pode ser o ponto central atual do veículo 100, um ponto de articulação entre o veículo 100 e um implemento, ou qualquer outro ponto de referência no veículo 100 ou em um implemento conectado.
[0096] Um gerador de caminho 548 determina um caminho desejado 554 do veículo 100 com base em qualquer combinação de imagem 3D, dados de VO e dados GNSS como descrito acima. Por exemplo, o gerador de caminho 548 pode usar pontos da linha central entre duas linhas de árvores identificadas pelo processador de imagem 524 na operação 525 como o caminho desejado 554. Os pontos de linha central da linha são continuamente detectados pelo processador de imagem 524 e enviados ao gerador de caminho 548 para otimização do caminho contínuo e eliminação da flutuação na posição do VO para garantir que o veículo dirija com precisão em relação às árvores.
[0097] Um dispositivo de memória 550 pode armazenar um mapa 553 que o gerador de caminho 548 usa para direcionar o veículo através das linhas de um campo como descrito acima. Por exemplo, o gerador de caminho 548 pode usar o mapa 553 para gerar o caminho desejado 554 que direciona o veículo 100 para o início de uma linha. Como explicado acima, o mapa 553 pode incluir qualquer combinação de dados lat/long de GPS, dados VO/SLAM e/ou dados GIS.
[0098] O gerador de caminho 548 também pode identificar a extremidade da linha com base nos dados de imagem, dados VO, e/ou dados GNSS recebidos do processador de imagem 524 e do controlador de fusão de pose e projeção do ponto de articulação 546, tal como descrito acima.
[0099] O gerador de caminho 548 pode selecionar um caminho de contorno ou derivar o caminho de contorno, com base na distância e no local entre o final da linha atual e o início de uma linha próxima, conforme identificado no mapa 553. O gerador de caminho 548 usa o caminho de volta identificado como o caminho desejado
554. Como também explicado acima, o gerador de caminho 548 pode identificar obstruções identificadas no mapa de grade de ocupação 527 para derivar ou selecionar um caminho desejado 554 que evita as obstruções.
[0100] O sistema de controle 108 calcula um erro de faixa transversal (XTE) 500 entre o caminho desejado 554 e a posição do ponto de articulação do veículo 552 identificado pela projeção do ponto de articulação 546. O erro de faixa transversal 500 é a distância lateral entre o caminho desejado 554 e a posição atual do veículo 552. O sistema de controle 108 aplica um valor de ganho D3 ao erro de faixa transversal 500 para derivar um rumo 502 desejado. O sistema de controle 108 subtrai o rumo 502 desejado do rumo atual do veículo 540 determinado pelo controlador de fusão VO/SLAM 526.
[0101] O sistema de controle 108 aplica um ganho D2 ao erro de rumo 504 para derivar uma curvatura desejada (K) 506 e subtrai a curvatura desejada do veículo 506 da curvatura medida do veículo 512 para derivar um erro de curvatura 508. O sistema de controle 108 aplica um ganho D1 ao erro de curvatura 508 para derivar um comando de controle 510 que é aplicado às válvulas do atuador 514 para dirigir o veículo 100. O sistema de controle 108 usa os comandos de controle 510 para direcionar o veículo 100 para o início das linhas, através das linhas e ao redor das áreas do promontório até o início de uma próxima linha.
[0102] A descrição acima explica como um sistema de controle controla um veículo. Com referência à FIG. 20, o sistema de controle pode compreender um ou mais processadores de hardware configurados para receber dados de imagem para uma linha em um campo na operação 600A. Na operação 600B, o sistema de controle pode gerar dados de odometria visual (VO) a partir dos dados da imagem. Na operação 600C, o sistema de controle pode usar os dados de VO para identificar uma posição do veículo enquanto se move ao longo de um caminho próximo à linha. Na operação 600D, o sistema de controle pode usar os dados de VO para detectar o veículo que chega ao fim da linha. Na operação 600E, o sistema de controle pode usar os dados de VO para virar o veículo de uma primeira posição no final da linha para uma segunda posição no início de outra linha.
[0103] O sistema de controle pode detectar uma orientação do veículo no final da linha com base nos dados de VO e dados inerciais de um sistema de navegação inercial (INS); e planejar a curva do veículo com base na orientação do veículo.
[0104] O sistema de controle também pode monitorar os dados de imagem para detectar o fim da linha; monitorar os dados de VO para detectar o fim da linha; monitorar dados do sistema global de navegação por satélite (GNSS) recebidos de um receptor GNSS para detectar o fim da linha; e detectar o final da linha com base nos dados da imagem, dados de VO e dados de GNSS.
[0105] O sistema de controle também pode determinar uma primeira probabilidade para um primeiro local de fim de linha identificado a partir dos dados da imagem; determinar uma segunda probabilidade para um segundo local de fim de linha identificado a partir dos dados de VO; determinar uma terceira probabilidade para um terceiro local de fim de linha identificado a partir dos dados de GNSS; e determinar o fim da linha com base nas primeira, segunda e terceira probabilidades.
[0106] O sistema de controle pode desconsiderar o primeiro local de fim de linha quando a primeira probabilidade para o primeiro local de fim de linha não se sobrepõe à segunda ou à terceira probabilidade e está abaixo de um limite predeterminado.
[0107] O sistema de controle pode identificar o fim da linha quando qualquer combinação das probabilidades de primeiro, segundo e terceiro fins de linha exceder um limite predeterminado. O sistema de controle também pode identificar um dos primeiro, segundo e terceiro locais de final de linha precedendo ou excedendo os outros locais de final de linha por uma quantidade predeterminada; e enviar uma notificação identificando o local de fim de linha que precede ou excede os locais de fim de linha.
[0108] O sistema de controle pode receber dados do sistema global de navegação por satélite (GNSS) de um receptor GNSS identificando o local do fim da linha; e ajustar os dados de VO para que o final da linha detectado a partir dos dados de VO corresponda ao local do final da linha identificado com os dados de GNSS.
[0109] O sistema de controle pode gerar um mapa de nuvens de pontos a partir dos dados de imagem identificando duas linhas adjacentes no campo; gerar duas linhas correspondentes aos locais das duas linhas adjacentes; gerar uma linha central entre as duas linhas adjacentes indicando um caminho desejado para o veículo entre as duas linhas adjacentes; e dirigir o veículo ao longo da linha central.
[0110] Com referência à FIG. 21, um método para dirigir um veículo em um campo pode incluir o sistema de controle em operação 602A que recebe dados do sistema global de navegação por satélite (GNSS) a partir de um receptor GNSS localizado no veículo. Em operação 602B, o sistema de controle pode receber dados de imagem tridimensionais (3-D) a partir de um sensor de imagem 3-D localizado no veículo. Na operação 602C, o sistema de controle pode converter os dados de imagem 3D em dados de odometria visual (VO). Na operação 602D, o sistema de controle pode identificar um primeiro local possível de final de linha para uma ou mais linhas com base nos dados GNSS. Na operação 602E, o sistema de controle pode identificar um segundo local possível de final de linha com base em uma ou mais linhas nos dados 3D. Na operação 602F, o sistema de controle pode identificar um terceiro local possível de final de linha para uma ou mais linhas com base nos dados de VO. Na operação 602G, o sistema de controle pode determinar um local de fim de linha final com base nas primeira, segunda e terceira localizações possíveis de fim de linha.
[0111] O método pode incluir gerar um mapa de localização e mapeamento simultâneo (SLAM) a partir dos dados de VO, identificando um caminho do veículo em torno das linhas no campo; usar o mapa SLAM para dirigir o veículo em passes subsequentes pelo campo; e atualizar o mapa SLAM nas passagens subsequentes ao redor do campo para refletir alterações nas linhas do campo e alterações nas áreas ao redor do campo. O método também pode incluir a identificação de uma localização atual do veículo a partir dos dados de GNSS; e adicionar a localização atual do veículo a partir dos dados de GNSS a uma localização atual do veículo no mapa SLAM.
[0112] O método pode incluir a seleção de um caminho de contorno em uma área de promontório para dirigir o veículo a partir do local final de fim de linha até o início do local da próxima linha; usar os dados de VO para dirigir o veículo ao longo do caminho de contorno; e adicionar os dados de VO gerados enquanto dirige o veículo ao longo do caminho de contorno ao mapa SLAM.
[0113] O método pode incluir identificar obstruções na área do promontório a partir dos dados de imagem 3D; ajustar o caminho de contorno para que o veículo evite as obstruções; e usando os dados de VO para dirigir o veículo ao longo do caminho de contorno ajustado. O método pode incluir a geração de um mapa bidimensional (2D), incluindo linhas correspondentes aos locais de duas linhas adjacentes no campo; identificar uma linha central entre as linhas; e usar a linha central como um caminho desejado para dirigir o veículo entre as duas linhas adjacentes.
[0114] O método pode incluir estimar as posições do veículo a partir dos dados GNSS e VO; e enviar uma das posições estimadas mais precisas como mensagem da NMEA (National Marine Electronics Association) para um servidor ou outro veículo. O método também pode incluir armazenar um mapa do sistema de informações geográficas (SIG); identificar diferentes quantidades de material para pulverização em diferentes regiões no mapa GIS; identificar as diferentes regiões do mapa GIS em que o veículo está atualmente localizado com base nos dados de VO e nos dados de GNSS; e pulverizar as diferentes quantidades de material nas regiões onde o veículo está atualmente localizado.
[0115] Um dispositivo de computação para dirigir um veículo pode compreender um processador; e memória de armazenamento que armazena uma ou mais sequências de instruções armazenadas que, quando executadas pelo processador, fazem com que o processador: identifique um local inicial entre duas linhas em um campo; receba dados de imagem identificando as duas linhas no campo; gere linhas identificando os locais das duas linhas no campo; identifique uma linha central entre as duas linhas; use a linha central como um caminho desejado para dirigir o veículo entre as duas linhas no campo; gere dados de odometria visual (VO) a partir dos dados de imagem capturados enquanto dirige o veículo entre as duas linhas no campo; e use os dados de VO e o local de partida para identificar uma posição do veículo nas duas linhas do campo.
[0116] As instruções quando executadas pelo processador podem ainda fazer com que o processador identifique um local de final de linha a partir dos dados de VO; identifique um local de fim de linha a partir de dados do sistema global de navegação por satélite (GNSS) de um receptor GNSS localizado no veículo; e ajuste os dados de VO para que o local do final da linha dos dados de VO corresponda ao local do final de linha dos dados de GNSS.
[0117] As instruções, quando executadas pelo processador, fazem com que o processador selecione um caminho de contorno para guiar o veículo do final das duas linhas até o início de outras duas linhas; e use os dados de VO para identificar a posição do veículo enquanto dirige o veículo ao longo do caminho de contorno. Hardware e Software
[0118] A FIG. 22 mostra um dispositivo de computação 1000 que pode executar qualquer combinação dos processos discutidos acima. Por exemplo, o dispositivo de computação 1000 pode ser usado em qualquer parte do sistema de controle 108, processador de orientação 6 e/ou processador de imagem 105. O dispositivo de computação 1000 pode operar na capacidade de um servidor ou uma máquina de cliente em um ambiente de rede servidor-cliente, ou como uma máquina em um ambiente de rede ponto a ponto (ou distribuído). Em outros exemplos, o dispositivo de computação 1000 pode ser um computador pessoal (PC), um tablet, um Assistente Digital Pessoal (PDA), um telefone celular, um smartphone, um dispositivo da web ou qualquer outra máquina ou dispositivo capaz de executar as instruções 1006 (sequenciais ou não) que especificam ações a serem tomadas por essa máquina.
[0119] Embora apenas um único dispositivo de computação 1000 seja mostrado, o sistema de controle 108 acima pode incluir qualquer coleção de dispositivos ou circuitos que executem, individual ou conjuntamente, um conjunto (ou vários conjuntos) de instruções para executar qualquer uma ou mais das operações discutidas acima. O dispositivo de computação 1000 pode fazer parte de um sistema de controle integrado ou gerenciador de sistema, ou pode ser fornecido como um dispositivo eletrônico portátil configurado para interagir com um sistema em rede local ou remotamente via transmissão sem fio.
[0120] Os processadores 1004 podem compreender uma unidade central de processamento (CPU), uma unidade de processamento gráfico (GPU), dispositivos lógicos programáveis, sistemas de processadores dedicados, microcontroladores ou microprocessadores que podem executar algumas ou todas as operações descritas acima. Os processadores 1004 também podem incluir, entre outros, um processador analógico, um processador digital, um microprocessador, processador de vários núcleos, matriz de processadores, processador de rede, etc.
[0121] Algumas das operações descritas acima podem ser implementadas em software e outras operações podem ser implementadas em hardware. Uma ou mais das operações, processos ou métodos descritos aqui podem ser executados por um aparelho, dispositivo ou sistema semelhante aos descritos aqui e com referência às figuras ilustradas.
[0122] Os processadores 1004 podem executar instruções ou "código" 1006 armazenados em qualquer uma das memórias 1008, 1010 ou 1020. As memórias também podem armazenar dados. As instruções 1006 e os dados também podem ser transmitidos ou recebidos através de uma rede 1014 através de um dispositivo de interface de rede 1012 utilizando qualquer um de vários protocolos de transferência conhecidos.
[0123] As memórias 1008, 1010 e 1020 podem ser integradas em conjunto com o dispositivo de processamento 1000, por exemplo, memória RAM ou FLASH disposta dentro de um microprocessador de circuito integrado ou semelhante. Em outros exemplos, a memória pode compreender um dispositivo independente, como uma unidade de disco externa, matriz de armazenamento ou qualquer outro dispositivo de armazenamento usado em sistemas de banco de dados. Os dispositivos de memória e processamento podem ser acoplados operacionalmente ou em comunicação entre si, por exemplo, por uma porta de E/S, conexão de rede, etc., de modo que o dispositivo de processamento possa ler um arquivo armazenado na memória.
[0124] Algumas memórias podem ser "somente leitura" por design (ROM) devido às configurações de permissão ou não. Outros exemplos de memória podem incluir, mas podem não estar limitados a, WORM, EPROM, EEPROM, FLASH, etc., que podem ser implementados em dispositivos semicondutores de estado sólido. Outras memórias podem compreender partes móveis, como uma unidade de disco rotativa convencional. Todas essas memórias podem ser “legíveis por máquina”, pois podem ser legíveis por um dispositivo de processamento.
[0125] "Mídia de armazenamento legível por computador" (ou, alternativamente, "mídia de armazenamento legível por máquina") pode incluir todos os tipos de memória anteriores, bem como novas tecnologias que possam surgir no futuro, desde que sejam capazes de armazenar informações digitais na natureza de um programa de computador ou outros dados, pelo menos temporariamente, de maneira que as informações armazenadas possam ser "lidas" por um dispositivo de processamento apropriado. O termo “legível por computador” pode não se limitar ao uso histórico de “computador” para implicar um mainframe completo, minicomputador, desktop, dispositivo sem fio ou até um laptop. Em vez disso, "legível por computador" pode compreender um meio de armazenamento que pode ser legível por um processador, dispositivo de processamento ou qualquer sistema de computação. Essas mídias podem ser qualquer mídia disponível que possa ser acessada local e/ou remotamente por um computador ou processador e pode incluir mídia volátil e não volátil e mídia removível e não removível.
[0126] dispositivo de computação 1000 pode ainda incluir um visor de vídeo 1016, tal como um visor de cristal líquido (LCD) ou um tubo de raios catódicos (CRT) e uma interface de usuário 1018, tal como um teclado, mouse, tela sensível ao toque, etc. Todos os componentes do dispositivo de computação 1000 podem ser conectados juntos através de um barramento 1002 e/ou rede.
[0127] Por uma questão de conveniência, as operações podem ser descritas como vários blocos ou diagramas funcionais interconectados ou acoplados. No entanto, pode haver casos em que esses blocos ou diagramas funcionais possam ser equivalentemente agregados em um único dispositivo lógico, programa ou operação com limites pouco claros.
[0128] Tendo descrito e ilustrado os princípios de uma concretização preferida, deve ser aparente que as concretizações podem ser modificadas em arranjo e detalhes sem se afastar de tais princípios. É feita reivindicação a todas as modificações e variações dentro do espírito e do escopo das reivindicações a seguir.

Claims (20)

REIVINDICAÇÕES
1. Sistema de controle para controlar um veículo, caracterizado pelo fato de que compreende: um ou mais processadores de hardware configurados para: receber dados de imagem para uma linha em um campo; gerar dados de odometria visual (VO) a partir dos dados da imagem; usar os dados de VO para identificar uma posição do veículo enquanto se move ao longo de um caminho próximo à linha; usar os dados de VO para detectar o veículo alcançando o fim da linha; e usar os dados de VO para virar o veículo de uma primeira posição no final da linha para uma segunda posição no início de outra linha.
2. Sistema de controle de acordo com a reivindicação 1, caracterizado pelo fato de que o um ou mais processadores de hardware são ainda configurados para: detectar uma orientação do veículo no final da linha com base nos dados de VO; e planejar a curva do veículo com base na orientação do veículo.
3. Sistema de controle de acordo com a reivindicação 1, caracterizado pelo fato de que o um ou mais processadores de hardware são ainda configurados para: monitorar os dados de imagem para detectar o fim da linha; monitorar os dados de VO para detectar o fim da linha; monitorar dados do sistema global de navegação por satélite (GNSS) recebidos de um receptor GNSS para detectar o fim da linha; e detectar o final da linha com base em qualquer combinação dos dados de imagem, dados de VO e dados de GNSS.
4. Sistema de controle de acordo com a reivindicação 3, caracterizado pelo fato de que o um ou mais processadores de hardware são ainda configurados para: determinar uma primeira probabilidade para um primeiro local de fim de linha identificado a partir dos dados de imagem; determinar uma segunda probabilidade para um segundo local de fim de linha identificado a partir dos dados de VO; determinar uma terceira probabilidade para um terceiro local de fim de linha identificado a partir dos dados de GNSS; e determinar o fim da linha com base nas primeira, segunda e terceira probabilidades.
5. Sistema de controle de acordo com a reivindicação 4, caracterizado pelo fato de que o um ou mais processadores de hardware são ainda configurados para desconsiderar o primeiro local de fim de linha quando a primeira probabilidade para o primeiro local de fim de linha não se sobrepõe às segunda ou terceira probabilidades e está abaixo de um limiar predeterminado.
6. Sistema de controle de acordo com a reivindicação 4, caracterizado pelo fato de que o um ou mais processadores de hardware são ainda configurados para identificar o fim da linha quando qualquer combinação das probabilidades dos primeiro, segundo e terceiro fins da linha exceder um limite predeterminado.
7. Sistema de controle de acordo com a reivindicação 4, caracterizado pelo fato de que o um ou mais processadores de hardware são ainda configurados para: identificar um dos primeiro, segundo e terceiro locais de final de linha que precedem ou excedem os outros locais de final de linha por uma quantidade predeterminada; e enviar uma notificação identificando o local de fim de linha que precede ou excede um dos locais de fim de linha.
8. Sistema de controle de acordo com a reivindicação 1, caracterizado pelo fato de que o um ou mais processadores de hardware são ainda configurados para: receber dados do sistema global de navegação por satélite (GNSS) de um receptor GNSS identificando o local do final da linha; e ajustar os dados de VO para que o final de linha detectado a partir dos dados de VO corresponda ao local do final de linha identificado com os dados de GNSS.
9. Sistema de controle de acordo com a reivindicação 1, caracterizado pelo fato de que o um ou mais processadores de hardware são ainda configurados para: gerar um mapa de nuvem de pontos a partir dos dados da imagem identificando duas linhas adjacentes no campo; gerar duas linhas correspondentes aos locais das duas linhas adjacentes; gerar uma linha central entre as duas linhas adjacentes indicando um caminho desejado para o veículo entre as duas linhas adjacentes; e detectar o veículo que chega ao final da linha com base nos dados de VO e no mapa de nuvem de pontos.
10. Método para dirigir um veículo em um campo, caracterizado pelo fato de que compreende: receber dados do sistema global de navegação por satélite (GNSS) de um receptor GNSS localizado no veículo; receber dados de imagem tridimensionais (3-D) de um sensor de imagem 3-D localizado no veículo; converter os dados de imagem 3D em odometria visual (VO); identificar um primeiro local de final de linha possível para uma ou mais linhas com base nos dados de GNSS; identificar um segundo local de final de linha possível com base em uma ou mais linhas nos dados 3D; identificar um terceiro local de final de linha possível para a uma ou mais linhas com base nos dados de VO; e determinar um local final de fim de linha com base nos primeiro, segundo e terceiro locais possíveis de final de linha.
11. Método de acordo com a reivindicação 10, caracterizado pelo fato de que inclui: gerar um mapa simultâneo de localização e mapeamento (SLAM) a partir dos dados de VO, identificando um caminho do veículo em torno das linhas no campo; usar o mapa SLAM para dirigir o veículo em passagens subsequentes ao redor do campo; e atualizar o mapa SLAM nas passagens subsequentes ao redor do campo para refletir alterações nas linhas do campo e alterações nas áreas ao redor do campo.
12. Método de acordo com a reivindicação 11, caracterizado pelo fato de que inclui: identificar uma localização atual do veículo a partir dos dados de GNSS; e adicionar a localização atual do veículo a partir dos dados de GNSS a uma localização atual do veículo no mapa SLAM.
13. Método de acordo com a reivindicação 11, caracterizado pelo fato de que inclui: selecionar um caminho de resposta em uma área de promontório para dirigir o veículo do local final de fim de linha até o início do local da próxima linha; usar os dados de VO para dirigir o veículo ao longo do caminho de contorno; e adicionar os dados de VO gerados enquanto dirige o veículo ao longo do caminho de resposta ao mapa SLAM.
14. Método de acordo com a reivindicação 13, caracterizado pelo fato de que inclui: identificar obstruções na área do promontório a partir dos dados de imagem em 3D; ajustar o caminho de resposta para que o veículo evite as obstruções; e usar os dados de VO para dirigir o veículo ao longo do caminho de contorno ajustado.
15. Método de acordo com a reivindicação 10, caracterizado pelo fato de que inclui: gerar um mapa bidimensional (2-D) incluindo linhas correspondentes aos locais de duas linhas adjacentes no campo; identificar uma linha central entre as linhas; e usar a linha central como um caminho desejado para dirigir o veículo entre as duas linhas adjacentes.
16. Método de acordo com a reivindicação 10, caracterizado pelo fato de que inclui:
estimar as posições do veículo a partir dos dados de GNSS e de VO; e enviar uma das posições estimadas mais precisas como uma mensagem da NMEA (National Marine Electronics Association) para um servidor ou outro veículo.
17. Método de acordo com a reivindicação 10, caracterizado pelo fato de que inclui: armazenar um mapa do sistema de informações geográficas (GIS) do campo; identificar diferentes quantidades de material para pulverização em diferentes regiões no mapa GIS; identificar as diferentes regiões do mapa GIS em que o veículo está atualmente localizado com base nos dados de VO e nos dados de GNSS; e pulverizar as diferentes quantidades de material nas regiões onde o veículo está atualmente localizado.
18. Dispositivo de computação para dirigir um veículo, caracterizado pelo fato de que compreende: um processador; e armazenamento de memória que armazena uma ou mais sequências de instruções armazenadas que, quando executadas pelo processador, fazem com que o processador: identifique um local inicial entre duas linhas em um campo; receba dados de imagem identificando as duas linhas no campo; gere linhas identificando os locais das duas linhas no campo; identifique uma linha central entre as duas linhas;
use a linha central como um caminho desejado para dirigir o veículo entre as duas linhas no campo; gere dados de odometria visual (VO) a partir dos dados de imagem capturados enquanto dirige o veículo entre as duas linhas no campo; e use os dados de VO e o local de partida para identificar uma posição do veículo nas duas linhas do campo.
19. Dispositivo de computação de acordo com a reivindicação 18, caracterizado pelo fato de que as instruções quando executadas pelo processador, fazem com que o processador ainda: identifique um local de final de linha a partir dos dados de VO; identifique um local de fim de linha a partir de dados do sistema global de navegação por satélite (GNSS) a partir de um receptor GNSS localizado no veículo; e ajuste os dados de VO para que o local de fim de linha dos dados de VO corresponda ao local de fim de linha dos dados de GNSS.
20. Dispositivo de computação de acordo com a reivindicação 18, caracterizado pelo fato de que as instruções quando executadas pelo processador, fazem com que o processador ainda: selecione um caminho de contorno para dirigir o veículo desde o final das duas linhas até o início de duas outras linhas; e use os dados de VO para identificar a posição do veículo enquanto dirige o veículo ao longo do caminho de contorno.
BR112019027751-0A 2017-06-22 2018-06-19 sistema de controle, método para dirigir um veículo e dispositivo de computação BR112019027751A2 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201762523667P 2017-06-22 2017-06-22
US62/523,667 2017-06-22
PCT/US2018/038258 WO2018236853A1 (en) 2017-06-22 2018-06-19 3D IMAGE SYSTEM FOR VEHICLE CONTROL

Publications (1)

Publication Number Publication Date
BR112019027751A2 true BR112019027751A2 (pt) 2020-07-07

Family

ID=62873606

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112019027751-0A BR112019027751A2 (pt) 2017-06-22 2018-06-19 sistema de controle, método para dirigir um veículo e dispositivo de computação

Country Status (5)

Country Link
US (2) US11269346B2 (pt)
EP (1) EP3642683B1 (pt)
BR (1) BR112019027751A2 (pt)
CA (1) CA3066764A1 (pt)
WO (1) WO2018236853A1 (pt)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11269346B2 (en) 2017-06-22 2022-03-08 Agjunction Llc 3-d image system for vehicle control
US20210026368A1 (en) * 2018-03-26 2021-01-28 Jabil Inc. Apparatus, system, and method of using depth assessment for autonomous robot navigation
US10726563B2 (en) * 2018-06-29 2020-07-28 Intel Corporation Visual odometry device for 3D vehicle motion estimation and visual odometry method for 3D vehicle motion estimation
US10753752B2 (en) * 2018-07-26 2020-08-25 Trimble Inc. Vehicle manual guidance systems with steering wheel angle sensors and road wheel angle sensors
JP7034860B2 (ja) * 2018-08-03 2022-03-14 ヤンマーパワーテクノロジー株式会社 領域登録システム
US11449705B2 (en) 2019-01-08 2022-09-20 Motional Ad Llc Field theory based perception for autonomous vehicles
CN109885060B (zh) * 2019-01-18 2020-06-26 丰疆智能科技研究院(常州)有限公司 路径管理系统及其管理方法
CN110134120A (zh) * 2019-04-11 2019-08-16 广东工业大学 一种非结构路面下基于多线激光雷达的路径规划方法
JP2020174599A (ja) * 2019-04-19 2020-10-29 株式会社Ihiアグリテック Gisツールから作成したマップのキャリブレーションシステム
JP2020197467A (ja) * 2019-06-04 2020-12-10 俊雄 小泉 Slamによる自律飛行機能を備えた無人機を用いた構造物の検査方法
US11347234B2 (en) 2019-10-30 2022-05-31 Deere & Company Path selection
US20210243941A1 (en) * 2020-02-07 2021-08-12 Ag Leader Technology Planter Obstruction Monitoring And Associated Devices And Methods
DE102021112349A1 (de) 2020-05-12 2021-11-18 Motional Ad Llc Fahrzeugbetrieb unter verwendung eines dynamischen belegungsrasters
JP2022146457A (ja) * 2021-03-22 2022-10-05 国立大学法人京都大学 自動走行システム
DE102021111360A1 (de) * 2021-05-03 2022-11-03 Maschinenfabrik Bernard Krone GmbH & Co. KG Lenkverfahren für eine landmaschine
GB202107499D0 (en) * 2021-05-26 2021-07-07 Agco Int Gmbh Material detection and handling of material irregularities
CN113703446B (zh) * 2021-08-17 2023-11-07 泉州装备制造研究所 一种基于磁钉的导引车导航方法及调度系统
CN113899363B (zh) * 2021-09-29 2022-10-21 北京百度网讯科技有限公司 车辆的定位方法、装置及自动驾驶车辆
US20230094371A1 (en) * 2021-09-30 2023-03-30 Zimeno, Inc. Dba Monarch Tractor Vehicle row follow system

Family Cites Families (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5663879A (en) 1987-11-20 1997-09-02 North American Philips Corporation Method and apparatus for smooth control of a vehicle with automatic recovery for interference
US5438517A (en) 1990-02-05 1995-08-01 Caterpillar Inc. Vehicle position determination system and method
US5194851A (en) 1991-02-21 1993-03-16 Case Corporation Steering controller
FI942218A0 (fi) 1994-05-13 1994-05-13 Modulaire Oy Automatiskt styrningssystem foer obemannat fordon
US6070673A (en) 1996-11-22 2000-06-06 Case Corporation Location based tractor control
WO1998043372A1 (en) 1997-03-21 1998-10-01 The Board Of Trustees Of The Leland Stanford Junior University A system using leo satellites for centimeter-level navigation
US6052647A (en) 1997-06-20 2000-04-18 Stanford University Method and system for automatic control of vehicles based on carrier phase differential GPS
DE19943410B4 (de) 1998-09-11 2011-08-18 Honda Giken Kogyo K.K. Lenksteuersystem für ein Fahrzeug
AUPP679598A0 (en) 1998-10-27 1998-11-19 Agsystems Pty Ltd A vehicle navigation apparatus
US6445983B1 (en) 2000-07-07 2002-09-03 Case Corporation Sensor-fusion navigator for automated guidance of off-road vehicles
US6377889B1 (en) 2000-10-13 2002-04-23 Trimble Navigation Limited Non-linear method of guiding to arbitrary curves with adaptive feedback
US6711501B2 (en) 2000-12-08 2004-03-23 Satloc, Llc Vehicle navigation system and method for swathing applications
US6539303B2 (en) 2000-12-08 2003-03-25 Mcclure John A. GPS derived swathing guidance system
US6819780B2 (en) 2001-02-02 2004-11-16 Cnh America Llc Method and apparatus for automatically steering a vehicle in an agricultural field using a plurality of fuzzy logic membership functions
AUPR430301A0 (en) 2001-04-09 2001-05-17 Agsystems Pty Ltd Soil-cultivation implement control apparatus and method
AUPR733701A0 (en) 2001-08-29 2001-09-20 Beeline Technologies Apparatus and method for assisted navigation of a land vehicle
US6865465B2 (en) 2002-05-06 2005-03-08 Csi Wireless, Inc. Method and system for implement steering for agricultural vehicles
KR100498987B1 (ko) * 2002-10-11 2005-07-01 엘지전자 주식회사 Gps 위치 데이터 수신 불량 지역에서의 이동체 위치예측 방법
US7142956B2 (en) 2004-03-19 2006-11-28 Hemisphere Gps Llc Automatic steering system and method
US7885745B2 (en) 2002-12-11 2011-02-08 Hemisphere Gps Llc GNSS control system and method
US7689354B2 (en) 2003-03-20 2010-03-30 Hemisphere Gps Llc Adaptive guidance system and method
US7437230B2 (en) 2003-03-20 2008-10-14 Hemisphere Gps Llc Satellite based vehicle guidance control in straight and contour modes
US7162348B2 (en) 2002-12-11 2007-01-09 Hemisphere Gps Llc Articulated equipment position control system and method
US7400956B1 (en) 2003-03-20 2008-07-15 Hemisphere Gps Inc. Satellite position and heading sensor for vehicle steering control
US8634993B2 (en) 2003-03-20 2014-01-21 Agjunction Llc GNSS based control for dispensing material from vehicle
US8214111B2 (en) 2005-07-19 2012-07-03 Hemisphere Gps Llc Adaptive machine control system and method
US8190337B2 (en) 2003-03-20 2012-05-29 Hemisphere GPS, LLC Satellite based vehicle guidance control in straight and contour modes
US8639416B2 (en) 2003-03-20 2014-01-28 Agjunction Llc GNSS guidance and machine control
US9002565B2 (en) 2003-03-20 2015-04-07 Agjunction Llc GNSS and optical guidance and machine control
US8594879B2 (en) 2003-03-20 2013-11-26 Agjunction Llc GNSS guidance and machine control
US6789014B1 (en) 2003-05-09 2004-09-07 Deere & Company Direct modification of DGPS information with inertial measurement data
JP3931879B2 (ja) * 2003-11-28 2007-06-20 株式会社デンソー センサフュージョンシステム及びそれを用いた車両制御装置
US8583315B2 (en) 2004-03-19 2013-11-12 Agjunction Llc Multi-antenna GNSS control system and method
US7293400B2 (en) * 2004-09-30 2007-11-13 General Electric Company System and method for sensor validation and fusion
US20060167600A1 (en) 2005-01-27 2006-07-27 Raven Industries, Inc. Architecturally partitioned automatic steering system and method
NZ538796A (en) * 2005-03-10 2007-05-31 Brunswick New Technologies Asi Vehicle location and navigation system
US8768558B2 (en) 2007-01-05 2014-07-01 Agjunction Llc Optical tracking vehicle control system and method
US7835832B2 (en) 2007-01-05 2010-11-16 Hemisphere Gps Llc Vehicle control system
US8311696B2 (en) 2009-07-17 2012-11-13 Hemisphere Gps Llc Optical tracking vehicle control system and method
US9002566B2 (en) 2008-02-10 2015-04-07 AgJunction, LLC Visual, GNSS and gyro autosteering control
US8018376B2 (en) 2008-04-08 2011-09-13 Hemisphere Gps Llc GNSS-based mobile communication system and method
EP2135498B1 (en) 2008-06-20 2012-06-20 AGROCOM GmbH & Co. Agrarsystem KG A method of navigating an agricultural vehicle and an agricultural vehicle
US8386129B2 (en) 2009-01-17 2013-02-26 Hemipshere GPS, LLC Raster-based contour swathing for guidance and variable-rate chemical application
US8126620B2 (en) 2009-04-28 2012-02-28 Cnh America Llc Grain transfer control system and method
US8401704B2 (en) 2009-07-22 2013-03-19 Hemisphere GPS, LLC GNSS control system and method for irrigation and related applications
US8649930B2 (en) 2009-09-17 2014-02-11 Agjunction Llc GNSS integrated multi-sensor control system and method
US8548649B2 (en) 2009-10-19 2013-10-01 Agjunction Llc GNSS optimized aircraft control system and method
US9173337B2 (en) 2009-10-19 2015-11-03 Efc Systems, Inc. GNSS optimized control system and method
US8583326B2 (en) 2010-02-09 2013-11-12 Agjunction Llc GNSS contour guidance path selection
US8924152B2 (en) 2010-05-28 2014-12-30 Agjunction Llc Remote management system for equipment
US8489291B2 (en) 2010-07-12 2013-07-16 Hemisphere Gps Llc System and method for collecting soil samples
US8803735B2 (en) 2010-11-19 2014-08-12 Agjunction Llc Portable base station network for local differential GNSS corrections
US8589013B2 (en) 2011-10-25 2013-11-19 Jaybridge Robotics, Inc. Method and system for dynamically positioning a vehicle relative to another vehicle in motion
US8781685B2 (en) 2012-07-17 2014-07-15 Agjunction Llc System and method for integrating automatic electrical steering with GNSS guidance
US10131376B2 (en) 2013-01-30 2018-11-20 Agjunction Llc Steering controller for precision farming
US9162703B2 (en) 2013-01-30 2015-10-20 AgJunction, LLC Steering controller for precision farming
US9945957B2 (en) 2013-03-14 2018-04-17 Agjunction Llc Machine control system and method
US9223314B2 (en) 2013-03-14 2015-12-29 Aglunction, LLC Hovering control for helicopters using a GNSS vector
US9781915B2 (en) 2013-03-14 2017-10-10 Agjunction Llc Implement and boom height control system and method
US20140266877A1 (en) 2013-03-15 2014-09-18 Agjunction Llc Precision accuracy global navigation satellite system (gnss) with smart devices
US20150157414A1 (en) 2013-12-10 2015-06-11 Greg Van Curen Personal healthcare device
US9733643B2 (en) 2013-12-20 2017-08-15 Agjunction Llc Hydraulic interrupter safety system and method
CN103954275B (zh) * 2014-04-01 2017-02-08 西安交通大学 基于车道线检测和gis地图信息开发的视觉导航方法
US10165722B2 (en) 2014-12-05 2019-01-01 Deere & Company Scouting systems
US9678210B2 (en) * 2014-12-19 2017-06-13 Caterpillar Inc. Error estimation in real-time visual odometry system
US9857478B2 (en) 2015-01-27 2018-01-02 Agjunction Llc Apparatus and method to mount steering actuator
EP3365631A4 (en) * 2015-10-19 2019-06-26 Nokia Technologies OY NAVIGATION DEVICE AND RELATED METHODS
US10266201B2 (en) * 2015-11-19 2019-04-23 Agjunction Llc K-turn path controller
CN105719284B (zh) * 2016-01-18 2018-11-06 腾讯科技(深圳)有限公司 一种数据处理方法、装置及终端
US10025317B2 (en) * 2016-09-30 2018-07-17 Faraday&Future Inc. Methods and systems for camera-based autonomous parking
US20180299893A1 (en) * 2017-04-18 2018-10-18 nuTonomy Inc. Automatically perceiving travel signals
US11269346B2 (en) 2017-06-22 2022-03-08 Agjunction Llc 3-d image system for vehicle control

Also Published As

Publication number Publication date
EP3642683A1 (en) 2020-04-29
US11269346B2 (en) 2022-03-08
WO2018236853A8 (en) 2019-08-22
EP3642683B1 (en) 2022-12-14
US20220155794A1 (en) 2022-05-19
US20180373264A1 (en) 2018-12-27
WO2018236853A1 (en) 2018-12-27
CA3066764A1 (en) 2018-12-27
US11960295B2 (en) 2024-04-16

Similar Documents

Publication Publication Date Title
BR112019027751A2 (pt) sistema de controle, método para dirigir um veículo e dispositivo de computação
US11747822B2 (en) Mobile robot system and method for autonomous localization using straight lines extracted from visual images
US20220124303A1 (en) Methods and systems for selective sensor fusion
US9898821B2 (en) Determination of object data by template-based UAV control
EP3507572B1 (en) Apparatus and method for providing vehicular positioning
US9367067B2 (en) Digital tethering for tracking with autonomous aerial robot
JP6138326B1 (ja) 移動体、移動体の制御方法、移動体を制御するプログラム、制御システム、及び情報処理装置
JP2020529002A (ja) 地図データ、レーザ、およびカメラからのヨー誤差の確定
JP5105596B2 (ja) 自律走行移動体の走行経路決定用地図作成装置及び走行経路決定用地図作成方法
KR20160147016A (ko) 디지털 지도에 대한 위치를 판별하기 위한 방법 및 시스템
KR102260975B1 (ko) 3차원 격자지도를 이용한 자율 주행 제어 장치 및 방법
US20200089222A1 (en) Virtual Path Guidance System
US20240092485A1 (en) Method and algorithm for flight, movement, autonomy, in gps, communication, degraded, denied, obstructed non optimal environment
KR20130002834A (ko) 자율 이동 방법 및 그 장치
JP7265269B2 (ja) マップデータの修正方法及び修正プログラム
WO2022027159A1 (en) Systems and methods for constructing high-definition map with its confidence determined based on crowdsourcing
KR20220031574A (ko) 3차원 측위 및 지도작성 시스템 및 방법
JP2021169989A (ja) 自己位置測定システム、車両、及び、自己位置測定方法
KR20200145410A (ko) 차량의 카메라 위치 정보 획득 장치 및 방법
JP2020095435A (ja) 移動体
CN111615616A (zh) 位置推定装置、位置推定方法、程序以及记录介质
Nagai Hybrid positioning and sensor integration

Legal Events

Date Code Title Description
B350 Update of information on the portal [chapter 15.35 patent gazette]
B06W Patent application suspended after preliminary examination (for patents with searches from other patent authorities) chapter 6.23 patent gazette]
B07A Application suspended after technical examination (opinion) [chapter 7.1 patent gazette]