BR112020025901A2 - Método de construção de banco de dados, método de posicionamento e dispositivo relacionado - Google Patents

Método de construção de banco de dados, método de posicionamento e dispositivo relacionado Download PDF

Info

Publication number
BR112020025901A2
BR112020025901A2 BR112020025901-2A BR112020025901A BR112020025901A2 BR 112020025901 A2 BR112020025901 A2 BR 112020025901A2 BR 112020025901 A BR112020025901 A BR 112020025901A BR 112020025901 A2 BR112020025901 A2 BR 112020025901A2
Authority
BR
Brazil
Prior art keywords
scenario
key point
information
database
predefined
Prior art date
Application number
BR112020025901-2A
Other languages
English (en)
Other versions
BR112020025901B1 (pt
Inventor
Xun Chai
Jun Wang
Jingwei ZHOU
Jiong Deng
Original Assignee
Huawei Technologies Co., Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co., Ltd. filed Critical Huawei Technologies Co., Ltd.
Publication of BR112020025901A2 publication Critical patent/BR112020025901A2/pt
Publication of BR112020025901B1 publication Critical patent/BR112020025901B1/pt

Links

Classifications

    • 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/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3859Differential updating map data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/51Indexing; Data structures therefor; Storage structures
    • 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/10Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
    • G01C21/12Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
    • G01C21/16Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
    • G01C21/165Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments
    • 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
    • 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/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3602Input other than that of destination using image analysis, e.g. detection of road signs, lanes, buildings, real preceding vehicles using a camera
    • 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/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3833Creation or updating of map data characterised by the source of data
    • G01C21/3848Data obtained from both position sensors and additional sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
    • G06V10/462Salient features, e.g. scale invariant feature transforms [SIFT]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/757Matching configurations of points or features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/761Proximity, similarity or dissimilarity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W64/00Locating users or terminals or network equipment for network management purposes, e.g. mobility management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W64/00Locating users or terminals or network equipment for network management purposes, e.g. mobility management
    • H04W64/003Locating users or terminals or network equipment for network management purposes, e.g. mobility management locating network equipment

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Automation & Control Theory (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Image Analysis (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

um método de construção de banco de dados é divulgado. o método usa uma tecnologia de visão computacional no campo da inteligência artificial e é usado para construir um banco de dados com base nas segundas informações de ponto-chave de cenário correspondentes às informações de condição natural alvo, para implementar um posicionamento mais preciso quando o banco de dados é usado para o posicionamento. o método inclui: determinar um conjunto de imagens alvo que satisfaz um requisito de grau de coincidência de imagem predefinido (501); obter um conjunto de informações de ponto-chave de cenário com base no conjunto de imagens alvo e informações de condição natural correspondentes a cada imagem (502); determinar, no conjunto de informações de ponto-chave de cenário, as primeiras informações de ponto-chave de cenário correspondentes a um ponto-chave de cenário cujo valor de vida em um único terminal móvel é maior do que um primeiro limiar de valor de vida predefinido (503); determinar, nas primeiras informações de ponto-chave de cenário, segundas informações de ponto-chave de cenário correspondentes a um ponto-chave de cenário cujo valor de vida em uma pluralidade de terminais móveis é maior do que um segundo limiar de valor de vida predefinido (504); e quando as segundas informações de ponto-chave de cenário não correspondem às informações de ponto-chave de cenário predefinidas em um banco de dados, construir o banco de dados com base nas segundas informações de ponto-chave de cenário (505).

Description

MÉTODO DE CONSTRUÇÃO DE BANCO DE DADOS, MÉTODO DE POSICIONAMENTO E DISPOSITIVO RELACIONADO CAMPO TÉCNICO
[001] Este pedido se refere ao campo das comunicações e, em particular, a um método de construção de dados, um método de posicionamento e um dispositivo relacionado.
FUNDAMENTOS
[002] Em uma tecnologia de condução não tripulada, o posicionamento do veículo é importante. Durante o funcionamento de um veículo, uma localização mais recente do veículo precisa ser obtida em tempo real e uma rota subsequente do veículo precisa ser planejada. Geralmente, o posicionamento pode ser realizado usando um sistema de posicionamento global (GPS), uma câmera, um radar a laser, um radar de ondas milimétricas e / ou uma unidade de medição inercial (inertial measurement unit, IMU). No entanto, a precisão de posicionamento é inevitavelmente imprecisa nessas maneiras de posicionamento.
[003] Atualmente, um método de posicionamento visual é proposto. Com base no princípio do método, um banco de dados é estabelecido e um ponto-chave de um cenário em tempo real e um ponto-chave de um mesmo cenário no banco de dados são identificados e combinados para implementar o posicionamento. O banco de dados armazena um quadro-chave de cenário e um ponto-chave de cenário. O quadro-chave é usado para representar uma imagem em um mundo real. O ponto-chave de cenário é um ponto-chave visual do cenário extraído do quadro-chave de cenário, e o ponto-chave de cenário pertence ao quadro-chave. O ponto-chave de cenário também possui um descritor que é usado para descrever o ponto-chave de cenário. Além disso, o ponto-chave de cenário possui diferentes informações de descritores para diferentes condições naturais.
[004] Quando um ambiente externo muda, as informações de descritor coletada em um quadro-chave de cenário real também mudam, causando uma mudança em um ponto-chave de cenário correspondente. Quando a correspondência de ponto-chave de cenário é realizada em um processo de posicionamento visual, alguns pontos-chave de cenário no quadro-chave de cenário real podem não corresponder aos pontos-chave de cenário no banco de dados, resultando finalmente em um posicionamento impreciso.
SUMÁRIO
[005] As modalidades deste pedido divulgam um método de construção de banco de dados, um método de posicionamento e um dispositivo relacionado, para construir um banco de dados com base nas segundas informações de ponto-chave de cenário correspondentes às informações de condição natural alvo, para garantir um posicionamento mais preciso quando o banco de dados é usado para posicionamento.
[006] Um primeiro aspecto deste pedido fornece um método de construção de banco de dados.
[007] Após obter um conjunto de imagens, um dispositivo de rede determina, a partir do conjunto de imagens, um conjunto de imagens alvo que satisfaz um requisito de grau de coincidência predefinido. Quando um dispositivo móvel vai reto, o conjunto de imagens é obtido com base em um espaçamento de distância predefinido e, em seguida, se um grau de coincidência de imagens obtidas com base no espaçamento de distância predefinido satisfaz um requisito é calculado. Quando um veículo vira, o conjunto de imagens é obtido com base em um espaçamento angular predefinido e, em seguida, se um grau de coincidência de imagens obtidas com base no espaçamento angular predefinido satisfaz um requisito é calculado.
[008] Nesta modalidade, a imagem é uma imagem do dispositivo móvel e um ambiente circundante do dispositivo móvel. A imagem pode ser obtida por uma câmera instalada no dispositivo móvel, ou pode ser obtida usando uma função de obtenção de imagem do dispositivo móvel. Isso não é especificamente limitado aqui.
[009] Nesta modalidade, o conjunto de imagens alvo inclui pelo menos uma imagem e cada imagem é fotografada em uma condição natural única. Portanto, cada imagem corresponde a um tipo de informações de condição natural.
[0010] Uma maneira de determinar as informações de condição natural é a seguinte: O dispositivo móvel obtém informações de localização do dispositivo móvel usando um sistema de posicionamento global GPS, um radar a laser, um radar de ondas milimétricas e / ou uma unidade de medição inercial IMU, e em seguida, envia as informações de localização para um servidor de clima para obter informações sobre as condições naturais de uma localização atual.
[0011] O dispositivo de rede analisa e processa o conjunto de imagens alvo para obter informações de ponto- chave de cenário. Cada imagem no conjunto de imagens alvo corresponde ao único tipo de informações de condição natural. O dispositivo de rede estabelece uma correspondência entre cada ponto-chave de cenário em um conjunto de pontos-chave de cenário e as informações de condição natural, para obter um conjunto de informações de ponto-chave de cenário. O conjunto de informações de ponto-chave de cenário inclui pelo menos uma parte das informações de ponto-chave de cenário. Cada parte das informações de ponto-chave de cenário inclui coordenadas 3D, coordenadas de pixel, um ID de quadro- chave e informações de descritor de um ponto-chave de cenário. Cada parte das informações de descritor inclui um tipo de informações de condição natural. As coordenadas 3D, coordenadas de pixel e ID de quadro-chave do ponto-chave de cenário são índices estáticos, e as informações de descritor é um índice dinâmico e varia com uma condição natural.
[0012] Um processo de posicionamento visual é um processo no qual os pontos-chave de cenário são comparados para determinar um mesmo ponto-chave de cenário e o posicionamento é realizado com base no mesmo ponto-chave de cenário. Um ponto-chave de cenário estático é geralmente usado como um ponto-chave de cenário para comparação e isso torna o posicionamento mais preciso. Para encontrar um ponto- chave de cenário estático representativo no conjunto de pontos chave do cenário, um valor de vida precisa ser calculado. Um valor de vida é usado para indicar uma probabilidade de que um ponto-chave de cenário seja um ponto- chave de cenário estático. Um valor de vida maior indica uma probabilidade maior de que o ponto-chave de cenário seja o ponto-chave estático e vice-versa.
[0013] Um mesmo ponto-chave de cenário pode ser fotografado por um único dispositivo móvel ou pode ser fotografado por uma pluralidade de dispositivos móveis. Em primeiro lugar, um ponto-chave de cenário cujo valor de vida é maior do que um primeiro limiar de valor de vida predefinido para o único dispositivo móvel, em outras palavras, quando o ponto-chave de cenário é observado por um dispositivo móvel, é determinado no conjunto de informações de ponto-chave de cenário. Então, um ponto-chave de cenário cujo valor de vida é maior do que um segundo limiar de valor de vida predefinido para a pluralidade de dispositivos móveis, em outras palavras, quando o ponto-chave de cenário é observado por dois ou mais dispositivos móveis, é determinado nas primeiras informações de ponto-chave de cenário. O ponto-chave de cenário é um segundo ponto-chave de cenário.
[0014] As segundas informações de ponto-chave de cenário obtida por meio de triagem na maneira anterior são comparadas com as informações de ponto-chave de cenário predefinida em um banco de dados. Quando as segundas informações de ponto-chave de cenário não correspondem às informações de ponto-chave de cenário predefinidas no banco de dados, as segundas informações de ponto-chave de cenário são atualizadas no banco de dados. Dessa forma, as informações de ponto-chave de cenário no banco de dados são mais completas.
[0015] Esta modalidade tem as seguintes vantagens: Após o conjunto de imagens alvo que satisfaz o requisito de grau de coincidência de imagem predefinido ser determinado, o conjunto de informações de ponto-chave de cenário é determinado com base no conjunto de imagens alvo e as informações de condição natural correspondentes a cada imagem no conjunto de imagens. Depois disso, as segundas informações de ponto-chave de cenário correspondentes ao ponto-chave de cenário cujo valor de vida no único dispositivo móvel é maior do que o primeiro limiar de valor de vida predefinido e cujo valor de vida na pluralidade de dispositivos móveis é maior do que o segundo limiar de valor de vida predefinido é determinado no conjunto de informações de ponto-chave de cenário. Quando as segundas informações de ponto-chave de cenário não correspondem às informações de ponto-chave de cenário predefinidas no banco de dados, o banco de dados é construído com base nas segundas informações de ponto-chave de cenário. Nesta modalidade, após as segundas informações de ponto-chave de cenário serem obtidas por meio de triagem na maneira anterior, quando as segundas informações de ponto-chave de cenário relacionadas a um tipo de informações de condição natural não existem no banco de dados, o banco de dados é construído com base nas segundas informações de ponto-chave de cenário. Isso garante um posicionamento mais preciso quando o banco de dados construído é usado para posicionamento.
[0016] De acordo com o primeiro aspecto, em uma primeira implementação do primeiro aspecto, especificamente, que as segundas informações de ponto-chave de cenário não correspondem às informações de ponto-chave de cenário predefinidas no banco de dados inclui: as segundas informações de ponto-chave de cenário não existem no banco de dados.
[0017] Quando o segundo ponto-chave de cenário não existe no banco de dados, aparentemente, as segundas informações de ponto-chave de cenário também não podem existir no banco de dados. Nesse caso, as segundas informações de ponto-chave de cenário são armazenadas no banco de dados. As segundas informações de ponto-chave de cenário armazenadas incluem coordenadas 3D, coordenadas de pixel, um ID de quadro-chave e informações de descritor do segundo ponto-chave de cenário.
[0018] Nesta modalidade, é descrito um caso em que o banco de dados é construído com base nas segundas informações de ponto-chave de cenário. Isso melhora a capacidade de implementação da solução.
[0019] De acordo com o primeiro aspecto, em uma segunda implementação do primeiro aspecto, especificamente, que as segundas informações de ponto-chave de cenário não correspondem às informações de ponto-chave de cenário predefinidas no banco de dados inclui: as segundas informações de ponto-chave de cenário existem no banco de dados, mas as segundas informações de ponto-chave de cenário não incluem informações de descritor alvo sobre as informações de condição natural alvo.
[0020] As segundas informações de ponto-chave de cenário existem no banco de dados. No entanto, as segundas informações de ponto-chave de cenário armazenadas no banco de dados são diferentes das segundas informações de ponto- chave de cenário determinadas a partir de uma imagem porque os índices dinâmicos, ou seja, as informações de descritor, das duas partes das segundas informações de ponto-chave de cenário mudam. Por exemplo, as segundas informações de ponto- chave de cenário no banco de dados são informações sobre coordenadas 3D, coordenadas de pixel, um ID de quadro-chave e um descritor 1 do segundo ponto-chave de cenário. As segundas informações de ponto-chave de cenário determinadas a partir da imagem são informações sobre as coordenadas 3D, as coordenadas de pixel, o ID de quadro-chave e um descritor
2 do segundo ponto-chave de cenário.
[0021] Neste caso, as informações de descritor alvo relacionadas às informações de condição natural alvo, ou seja, as informações sobre o descritor 2, precisam ser adicionadas ao segundo ponto-chave de cenário no banco de dados.
[0022] Nesta modalidade, outro caso em que o banco de dados é construído com base nas segundas informações de ponto-chave de cenário é descrito. Isso melhora a flexibilidade de implementação da solução.
[0023] De acordo com a primeira ou a segunda implementação do primeiro aspecto, em uma terceira implementação do primeiro aspecto, antes de adicionar as segundas informações de ponto-chave de cenário ao banco de dados, o método inclui adicionalmente: determinar as coordenadas 3D do segundo ponto-chave de cenário nas segundas informações de ponto-chave de cenário, onde as coordenadas 3D são determinadas de forma síncrona quando as informações de posicionamento da imagem à qual o segundo ponto-chave de cenário pertence são determinadas; e calcular uma diferença entre coordenadas 3D de cada ponto-chave de cenário predefinido no banco de dados e as coordenadas 3D do segundo ponto-chave de cenário, e determinar se a diferença é maior do que um primeiro limiar predefinido; e se a diferença for maior do que o primeiro limiar predefinido, determinar que as segundas informações de ponto-chave de cenário não existem no banco de dados; ou se uma diferença entre coordenadas 3D de qualquer ponto- chave de cenário predefinido no banco de dados e as coordenadas 3D do segundo ponto-chave de cenário for menor do que um primeiro limiar predefinido, determinar que tanto o segundo ponto-chave de cenário quanto as segundas informações de ponto-chave de cenário existem no banco de dados.
[0024] Nesta modalidade, é descrita uma maneira de determinar se o segundo ponto-chave de cenário existe no banco de dados. Isso melhora a capacidade de implementação da solução.
[0025] De acordo com a segunda implementação do primeiro aspecto, em uma quarta implementação do primeiro aspecto, antes de adicionar as informações de descritor alvo às segundas informações de ponto-chave de cenário predefinidas no banco de dados, o método inclui adicionalmente: quando as segundas informações de ponto-chave de cenário existem no banco de dados, determinar pelo menos um descritor das segundas informações de ponto-chave de cenário predefinidas no banco de dados, e determinar se pelo menos um descritor inclui um descritor, onde uma distância entre o descritor e um descritor correspondente às informações de descritor alvo na imagem é menor do que um limiar de distância predefinido; e se uma distância entre cada descritor predefinido no banco de dados e o descritor correspondente às informações de descritor alvo nas segundas informações de ponto-chave de cenário for maior do que um segundo limiar de distância predefinido, determinar que as segundas informações de ponto-chave de cenário predefinidas no banco de dados não incluem as informações de descritor alvo.
[0026] Nesta modalidade, é descrita uma maneira de determinar se as informações de descritor alvo existem no banco de dados. Isso melhora a capacidade de implementação da solução.
[0027] De acordo com o primeiro aspecto e a primeira e a segunda implementações do primeiro aspecto, em uma quinta implementação do primeiro aspecto, o valor de vida do ponto- chave de cenário no único dispositivo móvel é f, e uma ( ) fórmula de cálculo de f é: f= e . Na fórmula √ anterior, n representa uma quantidade de vezes que um ponto- chave de cenário é observado no único dispositivo móvel, e o único dispositivo móvel pode realizar uma pluralidade de experimentos para obter uma imagem. Portanto, um ponto-chave de cenário pode ser observado pelo único dispositivo móvel por uma pluralidade de vezes. n0 é um valor médio de uma quantidade de vezes que qualquer ponto-chave de cenário é observado por pelo menos um dispositivo móvel e que é obtido antecipadamente por meio de treinamento de modelo, e é uma variância que é da quantidade de vezes que qualquer ponto- chave de cenário é observado pelo pelo menos um dispositivo móvel e que é obtido antecipadamente por meio do treinamento de modelo.
[0028] Nesta modalidade, a fórmula de cálculo do valor de vida do ponto-chave de cenário no único dispositivo móvel é descrita. Isso melhora a capacidade de implementação da solução.
[0029] De acordo com a quinta implementação do primeiro aspecto, em uma sexta implementação do primeiro aspecto, um ponto-chave de cenário pode ser fotografado pela pluralidade de dispositivos móveis, um valor de vida do ponto-chave de cenário na pluralidade de dispositivos móveis é F, e uma fórmula de cálculo de F é: F = ∑ β f , onde f é um valor de vida do ponto-chave de cenário no único dispositivo móvel, B é um coeficiente de peso correspondente a cada um da pluralidade de dispositivos móveis, e um da pluralidade de dispositivos móveis corresponde a um coeficiente de peso. Por exemplo, um ponto-chave de cenário é fotografado por três dispositivos móveis, e cada um dos três dispositivos móveis corresponde a um coeficiente de peso. Nesse caso, um valor de vida do ponto-chave de cenário em um único dispositivo móvel é multiplicado por um coeficiente de peso do dispositivo móvel. Em seguida, uma operação de soma é realizada nos três dispositivos móveis para obter um valor de vida do ponto-chave de cenário quando o ponto-chave de cenário é observado pela pluralidade de dispositivos móveis.
[0030] Nesta modalidade, a pluralidade de dispositivos móveis representa pelo menos dois dispositivos móveis.
[0031] Nesta modalidade, a fórmula de cálculo do valor de vida do ponto-chave de cenário na pluralidade de dispositivos móveis é descrita. Isso melhora a capacidade de implementação da solução.
[0032] De acordo com a sexta implementação do primeiro aspecto, em uma sétima implementação do primeiro aspecto, uma fórmula de cálculo de βi é: βi = γt + γg + γc, onde γt é um índice de continuidade de tempo do ponto-chave de cenário observado na pluralidade de dispositivos móveis, γg é um índice de continuidade geométrica do ponto-chave de cenário observado na pluralidade de dispositivos móveis, e γc é um índice de consistência de descrição do ponto-chave de cenário observado na pluralidade de dispositivos móveis.
[0033] γt está relacionado a um intervalo de tempo para um mesmo ponto-chave de cenário observado por diferentes dispositivos móveis, o índice de continuidade geométrica γg está relacionado a uma distância Euclidiana para o mesmo ponto-chave de cenário observado pelos diferentes dispositivos móveis, e o índice de consistência de descrição γc está relacionado a uma distância de descritor para o mesmo ponto-chave de cenário observado pelos diferentes dispositivos móveis.
[0034] Nesta modalidade, a fórmula de cálculo do coeficiente de peso βi é descrita. Isso melhora a capacidade de implementação da solução.
[0035] De acordo com o primeiro aspecto e a primeira e a segunda implementações do primeiro aspecto, em uma oitava implementação do primeiro aspecto, a determinação de um conjunto de imagens alvo que satisfaz um requisito de grau de coincidência de imagem predefinido inclui o seguinte: quando o dispositivo móvel vai reto, a seleção da imagem é realizada primeiro com base no espaçamento de distância predefinido dk + 1. Quando uma diferença entre um grau de coincidência de imagens selecionadas e um limiar de grau de coincidência predefinido está dentro de um intervalo de precisão predefinido, as imagens selecionadas são determinadas como imagens alvo e, em seguida, a seleção de imagem é realizada com base no espaçamento de distância predefinido para obter o conjunto de imagens alvo; quando uma diferença entre um grau de coincidência de imagens selecionadas e um limiar de grau de coincidência predefinido não está dentro de um intervalo de precisão predefinido, um espaçamento de distância a ser aumentado ou diminuído com base no espaçamento de distância dk + 1 é obtido por meio de cálculo baseado em uma diferença entre um grau de coincidência de imagem correspondente ao espaçamento de distância dk + 1 e o limiar de grau de coincidência predefinido, para garantir que uma imagem selecionada satisfaça o requisito de grau de coincidência predefinido, para obter um espaçamento de distância dk + 2 para a seleção de imagem na próxima vez. Então, dk + 2 é usado como o espaçamento de distância para seleção de imagem, e o passo anterior é realizado novamente. Se uma imagem selecionada com base em dk + 2 satisfizer o requisito de grau de coincidência, o conjunto de imagens alvo é obtido por meio da seleção de imagem com base em dk + 2.
[0036] Nesta modalidade, a imagem que satisfaz o requisito de grau de coincidência é selecionada. Isso pode evitar uma quantidade de dados excessivamente grande durante o processamento de imagem devido à seleção de imagem cega, e também pode evitar uma quantidade de dados excessivamente grande durante a correspondência de informações de ponto- chave de cenário existentes no banco de dados.
[0037] De acordo com a oitava implementação do primeiro aspecto, em uma nona implementação do primeiro aspecto, o espaçamento de distância predefinido é dk + 1.
[0038] Uma fórmula de cálculo do espaçamento de distância predefinido é: dk + 1 = dk + dk (α* - α), onde α* é o limiar de grau de coincidência predefinido, dk é um espaçamento de distância para seleção de imagem em um momento anterior, e é um grau de coincidência, obtido por cálculo, das imagens quando as imagens são selecionadas com base no espaçamento dk.
[0039] Nesta modalidade, a fórmula de cálculo do espaçamento de distância predefinido é descrita. Isso melhora a integridade de solução.
[0040] De acordo com o primeiro aspecto e a primeira e a segunda implementações do primeiro aspecto, em uma décima implementação do primeiro aspecto, a determinação de um conjunto de imagens alvo que satisfaz um requisito de grau de coincidência de imagem predefinido inclui o seguinte: quando o dispositivo móvel gira, a seleção da imagem é realizada primeiro com base no espaçamento angular predefinido θk + 1. Quando uma diferença entre um grau de coincidência de imagens selecionadas e um limiar de grau de coincidência predefinido está dentro de um intervalo de precisão predefinido, as imagens selecionadas são determinadas como imagens alvo e, em seguida, a seleção de imagem é realizada novamente com base no espaçamento angular predefinido para obter o conjunto de imagens alvo; quando uma diferença entre um grau de coincidência de imagens selecionadas e um limiar de grau de coincidência predefinido não está dentro de um intervalo de precisão predefinido, um espaçamento angular a ser aumentado ou diminuído com base no espaçamento angular θk + 1 é obtido por meio de cálculo com base em uma diferença entre um grau de coincidência de imagem correspondente ao espaçamento angular θk + 1 e o limiar de grau de coincidência predefinido, para garantir que uma imagem selecionada satisfaça o requisito de grau de coincidência predefinido, para obter um espaçamento angular θk + 2 para a seleção de imagem na próxima vez. Então, θk + 2 é usado como o espaçamento angular para a seleção da imagem e o passo anterior é realizado novamente. Se uma imagem selecionada com base em θk + 2 satisfizer o requisito de grau de coincidência, o conjunto de imagens alvo será obtido por meio da seleção de imagem com base em θk + 2.
[0041] Nesta modalidade, a imagem que satisfaz o requisito de grau de coincidência é selecionada. Isso pode evitar uma quantidade de dados excessivamente grande durante o processamento de imagem devido à seleção de imagem cega e também pode evitar uma quantidade de dados excessivamente grande durante a correspondência de informações de ponto- chave de cenário existentes no banco de dados.
[0042] De acordo com a décima implementação do primeiro aspecto, em uma décima primeira implementação do primeiro aspecto, o espaçamento angular predefinido é θk + 1.
[0043] Uma fórmula de cálculo do espaçamento angular predefinido é: θk + 1 = θk + θk (α* - α), onde α* é o limiar de grau de coincidência predefinido, θk é um espaçamento angular para seleção de imagem em um momento, e é um grau de coincidência, obtido por cálculo, das imagens quando as imagens são selecionadas com base no espaçamento angular θk.
[0044] Nesta modalidade, a fórmula de cálculo do espaçamento angular predefinido é descrita. Isso melhora a integridade de solução.
[0045] De acordo com o primeiro aspecto e a primeira e a segunda implementações do primeiro aspecto, em uma décima segunda implementação do primeiro aspecto, as informações de ponto-chave de cenário incluem informações de descritor correspondentes às informações de condição natural e a obtenção de um conjunto de informações de ponto-chave de cenário com base no conjunto de imagens alvo e as informações de condição natural incluem: (1) processar, pelo dispositivo de rede, uma imagem alvo para obter um ponto-chave de cenário da imagem alvo; e (2) estabelecer uma correspondência entre o ponto- chave de cenário, a imagem alvo (ou um ID de quadro-chave do ponto-chave de cenário) ao qual o ponto-chave de cenário pertence, e as informações de condição natural correspondentes à imagem alvo, para constituir as informações de ponto-chave de cenário, onde as informações de ponto-chave de cenário incluem adicionalmente coordenadas 3D, coordenadas de pixel e semelhantes do ponto-chave de cenário.
[0046] O ponto-chave de cenário pode pertencer a uma pluralidade de imagens alvo, em outras palavras, cada uma da pluralidade de imagens alvo inclui o ponto-chave de cenário. Cada imagem alvo geralmente corresponde a diferentes informações de condição natural. Portanto, as informações de ponto-chave de cenário podem incluir uma pluralidade de informações de descritor. É possível que duas ou mais imagens alvo correspondam às mesmas informações de condição natural.
[0047] Os passos (1) e (2) são realizados novamente para concluir o processamento anterior em cada imagem, até que o conjunto de informações de ponto-chave de cenário seja constituído.
[0048] Nesta modalidade, uma maneira de determinar o conjunto de informações de ponto-chave de cenário é descrita. Isso melhora a integridade de solução.
[0049] De acordo com o primeiro aspecto e a primeira e a segunda implementações do primeiro aspecto, em uma décima terceira implementação do primeiro aspecto, após a construção do banco de dados com base nas segundas informações de ponto-chave de cenário, o método inclui adicionalmente: determinar as informações de ponto-chave de cenário no banco de dados construído, em que as informações de ponto- chave de cenário são as terceiras informações de ponto-chave de cenário; e quando uma pontuação de controle de número de recurso FNCS de um terceiro ponto-chave de cenário correspondente às terceiras informações de ponto-chave de cenário é menor do que um limiar de FNCS predefinido, excluir as terceiras informações de ponto-chave de cenário a partir do banco de dados, onde um valor da FNCS pode representar uma probabilidade que um ponto-chave de cenário é usado durante o posicionamento e uma quantidade de descritores incluídos nas informações de ponto-chave de cenário.
[0050] Nesta modalidade, a FNCS predefinida pode ser determinada antecipadamente com base em uma pluralidade de experimentos.
[0051] Nesta modalidade, é descrito o gerenciamento de ponto-chave de cenário após a construção do banco de dados. Um ponto-chave de cenário com um valor de FNCS baixo pode ser excluído, para facilitar o gerenciamento do banco de dados.
[0052] De acordo com a décima terceira implementação do primeiro aspecto, em uma décima quarta implementação do primeiro aspecto, uma fórmula de cálculo da pontuação de controle de número de recurso FNCS é: FNCS = log , onde mi / M é a probabilidade de que o ponto-chave de cenário seja usado durante o posicionamento, M é a quantidade total de vezes que o posicionamento é realizado em uma localização do ponto-chave de cenário, mi representa a quantidade de vezes que o ponto-chave de cenário é usado durante o posicionamento, e N / ni é uma porcentagem de uma quantidade de descritores do ponto-chave de cenário em uma quantidade total de descritores em uma imagem à qual o ponto-chave de cenário pertence.
[0053] Nesta modalidade, a fórmula de cálculo da pontuação de controle de número de recurso FNCS é descrita. Isso melhora a capacidade de implementação da solução.
[0054] Um segundo aspecto das modalidades deste pedido fornece um método de posicionamento, incluindo os seguintes passos: um dispositivo de rede obtém uma imagem em tempo real de um dispositivo móvel. Nesta modalidade, a imagem em tempo real é uma imagem do dispositivo móvel e um ambiente circundante do dispositivo móvel. A imagem em tempo real pode ser obtida por uma câmera instalada no dispositivo móvel, ou pode ser obtida usando uma função de obtenção de imagem do dispositivo móvel. Isso não é especificamente limitado aqui; depois de obter a imagem em tempo real, o dispositivo de rede analisa e processa a imagem em tempo real para determinar pelo menos uma parte das primeiras informações de descritor. As primeiras informações de descritor incluem informações de condição natural alvo de uma localização do dispositivo móvel quando o dispositivo móvel ou uma câmera externa do dispositivo móvel fotografa a imagem em tempo real. A imagem em tempo real inclui pelo menos uma parte de informações de ponto-chave. As informações de condição natural quando a imagem em tempo real é fotografada são fixas. Portanto, uma parte das informações de ponto-chave inclui apenas uma parte das informações de descritor. Além disso, pelo menos uma parte de informações de descritor da imagem em tempo real inclui as mesmas informações de condição natural alvo; as informações de condição natural alvo podem ser determinadas pelo dispositivo de rede, ou podem ser determinadas pelo dispositivo móvel e então enviadas para o dispositivo de rede. Uma maneira de determinar as informações de condição natural alvo é a seguinte: O dispositivo de rede ou o dispositivo móvel pode primeiro determinar, usando um sistema de posicionamento global GPS, um radar a laser, um radar de ondas milimétricas e / ou uma unidade de medição inercial IMU, informações de localização do dispositivo móvel quando a imagem em tempo real é fotografada e, em seguida, o dispositivo de rede ou o dispositivo móvel determina as informações de condição natural alvo com base nas informações de localização.
[0055] As informações de descritor predefinidas em um banco de dados são comparadas com pelo menos uma parte das primeiras informações de descritor para determinar as mesmas informações de descritor. Uma forma de comparação específica é: determinar uma parte de informações de descritor em pelo menos uma parte de informações de descritor; determinar se uma distância entre um descritor correspondente a uma parte de informações de descritor e um descritor correspondente a qualquer parte das informações de descritor predefinidas no banco de dados é menor que um limiar de distância predefinido; e se a distância entre o descritor correspondente a uma parte de informações de descritor e o descritor correspondente a qualquer parte das informações de descritor predefinidas no banco de dados for menor do que o limiar de distância predefinido, determinar que o descritor e o descritor com o espaçamento de distância longe do descritor menor do que o limiar de distância predefinido no banco de dados é um mesmo descritor, onde as informações de descritor correspondentes também são as mesmas; ou se a distância entre o descritor correspondente a uma parte de informações de descritor e o descritor correspondente a qualquer parte das informações de descritor predefinidas no banco de dados não for menor do que o limiar de distância predefinido, determinar que os dois descritores são diferentes, onde informações de descritor correspondentes também são diferentes.
[0056] Os passos anteriores são realizados novamente. Cada descritor em pelo menos uma parte das informações de descritor é comparado com um descritor predefinido no banco de dados para obter as mesmas informações de descritor por meio da determinação.
[0057] Nesta modalidade, as informações de descritor predefinidas no banco de dados são obtidas após a construção do banco de dados. Depois de determinar um conjunto de imagens alvo que satisfaz um requisito de grau de coincidência de imagem predefinido, o dispositivo de rede obtém um conjunto de informações de ponto-chave de cenário com base no conjunto de imagens alvo e informações de condição natural correspondentes a cada imagem no conjunto de imagens alvo, seleciona, a partir do conjunto de informações de ponto-chave de cenário, primeiras informações de ponto-chave de cenário correspondentes a um primeiro ponto-chave de cenário que satisfaz um requisito de valor de vida predefinido, determina as segundas informações de descritor que estão nas primeiras informações de ponto-chave de cenário e que correspondem às informações de condição natural alvo, e constrói o banco de dados com base nas segundas informações de descritor quando as segundas informações de descritor não correspondem às informações de descritor predefinidas no banco de dados.
[0058] Nesta modalidade, um processo específico para construir o banco de dados é semelhante ao processo para construir o banco de dados no primeiro aspecto deste pedido. Os detalhes não são descritos aqui novamente.
[0059] Depois que as mesmas informações de descritor são obtidas, a imagem em tempo real é visualmente posicionada com base nas mesmas informações de descritor.
[0060] Nesta modalidade, é descrito um processo de posicionamento após a construção do banco de dados. Isso melhora a praticidade da solução.
[0061] De acordo com o segundo aspecto, em uma primeira implementação do segundo aspecto, o posicionamento da imagem em tempo real usando as mesmas informações de descritor inclui: depois de determinar as mesmas informações de descritor na imagem em tempo real e no banco de dados, determinar as primeiras informações de ponto-chave de cenário às quais as mesmas informações de descritor pertencem no banco de dados, pesquisar o banco de dados para obter informações como coordenadas 3D e coordenadas de pixel de um primeiro ponto- chave de cenário, e obter, com base nas primeiras informações de ponto-chave de cenário e uma fórmula de cálculo de posicionamento, uma localização de um dispositivo móvel alvo quando a imagem em tempo real é fotografada.
[0062] Nesta modalidade, uma maneira específica de posicionar a imagem em tempo real é descrita. Isso melhora a capacidade de implementação da solução.
[0063] De acordo com a primeira implementação do segundo aspecto, em uma segunda implementação do segundo aspecto, a fórmula de cálculo de posicionamento da localização do dispositivo móvel alvo quando a imagem em tempo real é fotografada é: r T =∑ π T T (π ) p − p , onde piC são as coordenadas de pixel do primeiro ponto-chave de cenário na imagem em tempo real, πC é uma matriz de parâmetro intrínseca de uma câmera, πC é usada para converter coordenadas 3D em coordenadas de pixel, TDG é uma pose de uma imagem à qual um ponto-chave de cenário piD no banco de dados pertence em relação a um sistema de coordenadas mundial, piD são as coordenadas de pixel do primeiro ponto-chave de cenário no banco de dados, um valor de i varia de 1 a n, n é um número inteiro positivo, e o primeiro ponto-chave de cenário corresponde às primeiras informações de ponto-chave de cenário.
[0064] Há um total de n pontos-chave de cenário na imagem em tempo real que correspondem aos pontos-chave de cenário no banco de dados. As coordenadas 3D relativas ao veículo são obtidas realizando a conversão (πC)- 1 em piC, e então as coordenadas 3D relativas ao sistema de coordenadas mundial são obtidas realizando a conversão TVG nas coordenadas 3D obtidas relativas para o veículo. Em seguida, as coordenadas de pixel relativas ao banco de dados são obtidas realizando conversão πC(TDG)- 1 nas coordenadas 3D obtidas em relação ao sistema de coordenadas mundial. TDG é uma pose de um quadro-chave ao qual o ponto-chave de cenário piD no banco de dados pertence em relação ao sistema de coordenadas mundial. As coordenadas de pixel obtidas por meio da conversão são consistentes com as coordenadas de pixel piD de um ponto-chave de cenário correspondente no banco de dados, e as coordenadas de pixel são subtraídas para obter um modelo de erro de reprojeção. Finalmente, uma pose em tempo real TVG do veículo pode ser obtida minimizando um valor do modelo de erro de reprojeção usando um método de otimização.
[0065] Nesta modalidade, um algoritmo específico da fórmula de posicionamento é descrito. Isso melhora a integridade de solução.
[0066] De acordo com o segundo aspecto e a primeira e a segunda implementações do segundo aspecto, em uma terceira implementação do segundo aspecto, após a determinação de pelo menos uma parte das primeiras informações de descritor com base na imagem em tempo real, o método inclui adicionalmente: comparar as informações de descritor predefinidas no banco de dados com pelo menos uma parte das primeiras informações de descritor para determinar as diferentes informações de descritor.
[0067] Nesta modalidade, uma maneira de comparar as informações de descritor é semelhante à maneira anterior de comparar as informações de descritor no segundo aspecto. Os detalhes não são descritos aqui novamente.
[0068] Se informações de descritor diferentes daquelas no banco de dados existirem na imagem em tempo real, as informações de descritor de um descritor diferente serão adicionadas ao banco de dados. Isso garante um posicionamento mais preciso quando o banco de dados é usado para posicionamento.
[0069] Nesta modalidade, o banco de dados pode ser atualizado com base nas diferentes informações de descritor em um processo de posicionamento. Isso torna o banco de dados mais completo e garante um posicionamento mais preciso.
[0070] De acordo com a terceira implementação do segundo aspecto, em uma quarta implementação do segundo aspecto, quando as segundas informações de ponto-chave de cenário às quais as diferentes informações de descritor pertencem não existem no banco de dados, a construção do banco de dados com base nas diferentes informações de descritor inclui o seguinte: quando um segundo ponto-chave de cenário não existe no banco de dados, as segundas informações de ponto-chave de cenário não existem correspondentemente. O segundo ponto- chave de cenário é um ponto-chave de cenário ao qual o descritor diferente pertence. Nesse caso, as segundas informações de ponto-chave de cenário incluindo as diferentes informações de descritor, precisam ser adicionadas ao banco de dados. Nesta modalidade, pode haver uma pluralidade de informações de descritor diferentes, e uma parte de segundas informações de ponto-chave de cenário da imagem em tempo real pode incluir apenas um descritor diferente. Portanto, uma pluralidade de partes de segundas informações de ponto-chave de cenário precisa ser adicionada ao banco de dados.
[0071] Nesta modalidade, é descrito um caso em que o banco de dados é construído com base nas diferentes informações de descritor. Isso melhora a praticidade da solução.
[0072] De acordo com a terceira implementação do segundo aspecto, em uma quinta implementação do segundo aspecto, quando as segundas informações de ponto-chave de cenário às quais as diferentes informações de descritor pertencem existem no banco de dados, a construção do banco de dados com base nas diferentes informações de descritor inclui o seguinte: quando um segundo ponto-chave de cenário existe no banco de dados, as segundas informações de ponto-chave de cenário também existem no banco de dados. No entanto, as segundas informações de ponto-chave de cenário no banco de dados são diferentes daquelas na imagem em tempo real, ou seja, as segundas informações de ponto-chave de cenário não incluem as informações de descritor diferentes. Nesse caso, as diferentes informações de descritor precisam ser adicionadas às segundas informações de ponto-chave de cenário no banco de dados. Por exemplo, as segundas informações de ponto- chave de cenário no banco de dados são informações sobre coordenadas 3D, coordenadas de pixel, um ID de quadro-chave, e um descritor 1 do segundo ponto-chave de cenário. As segundas informações de ponto-chave de cenário determinadas na imagem em tempo real são informações sobre as coordenadas 3D, as coordenadas de pixel, o ID de quadro-chave e um descritor 2 do segundo ponto-chave de cenário. Nesse caso, as informações sobre o descritor 2 precisam ser adicionadas às segundas informações de ponto-chave de cenário no banco de dados.
[0073] Nesta modalidade, é descrito outro caso em que o banco de dados é construído com base nas diferentes informações de descritor. Isso melhora a integridade de solução.
[0074] De acordo com a terceira implementação do segundo aspecto, em uma sexta implementação do segundo aspecto, antes de construir o banco de dados com base nas diferentes informações de descritor, o método inclui adicionalmente: determinar coordenadas 3D de um segundo ponto-chave de cenário incluído nas segundas informações de ponto-chave de cenário, onde as coordenadas 3D são determinadas de forma síncrona quando as informações de posicionamento da imagem à qual o segundo ponto-chave de cenário pertence são determinadas; e calcular uma diferença entre coordenadas 3D de cada ponto-chave de cenário predefinido no banco de dados e as coordenadas 3D do segundo ponto-chave de cenário, e determinar se a diferença é maior do que um primeiro limiar predefinido; e se a diferença for maior do que o primeiro limiar predefinido, determinar que as segundas informações de ponto-chave de cenário não existem no banco de dados; ou se uma diferença entre coordenadas 3D de qualquer ponto- chave de cenário predefinido no banco de dados e as coordenadas 3D do segundo ponto-chave de cenário for menor do que um primeiro limiar predefinido, determinar que tanto o segundo ponto-chave de cenário quanto as segundas informações de ponto-chave de cenário existem no banco de dados.
[0075] Nesta modalidade, é descrita uma maneira de determinar se o segundo ponto-chave de cenário existe no banco de dados. Isso melhora a capacidade de implementação da solução.
[0076] Um terceiro aspecto deste pedido fornece um banco de dados. O banco de dados é implantado em um servidor.
[0077] O banco de dados é construído usando as segundas informações de ponto-chave de cenário que não correspondem às informações de ponto-chave de cenário predefinidas no banco de dados. As segundas informações de ponto-chave de cenário são as informações de ponto-chave de cenário que está nas primeiras informações de ponto-chave de cenário e que corresponde a um ponto-chave de cenário cujo valor de vida em uma pluralidade de dispositivos móveis é maior do que um segundo limiar de valor de vida predefinido. As primeiras informações de ponto-chave de cenário são as informações de ponto-chave de cenário que estão em um conjunto de informações de ponto-chave de cenário e que correspondem a um ponto-chave de cenário cujo valor de vida em um único dispositivo móvel é maior do que um primeiro limiar de valor de vida predefinido. O conjunto de informações de ponto-chave de cenário é obtido com base em um conjunto de imagens alvo e informações de condição natural correspondentes a cada imagem. O conjunto de pontos-chave de cenário inclui pelo menos uma parte de informações de ponto- chave de cenário. O conjunto de imagens alvo inclui pelo menos uma imagem que satisfaz um requisito de grau de coincidência de imagem predefinido e cada imagem corresponde a um tipo de informações de condição natural.
[0078] Nesta modalidade, um processo para construir o banco de dados é semelhante ao processo para construir o banco de dados no primeiro aspecto. Os detalhes não são descritos aqui novamente.
[0079] Nesta modalidade, é descrita uma maneira de construir o banco de dados. O banco de dados construído pode ser usado para posicionamento visual, para obter um posicionamento mais preciso.
[0080] De acordo com o terceiro aspecto, em uma primeira implementação do terceiro aspecto, o servidor inclui adicionalmente um processador.
[0081] As segundas informações de ponto-chave de cenário não correspondem às informações de ponto-chave de cenário predefinidas no banco de dados incluem: as segundas informações de ponto-chave de cenário não existem no banco de dados.
[0082] Que o banco de dados é construído usando as segundas informações de ponto-chave de cenário inclui: quando as segundas informações de ponto-chave de cenário não existem no banco de dados, as segundas informações de ponto-chave de cenário são adicionadas ao banco de dados, onde, desta forma, o banco de dados é construído pelo servidor adicionando as segundas informações de ponto-chave de cenário ao banco de dados, e as segundas informações de ponto-chave de cenário incluem informações de descritor alvo sobre as informações de condição natural alvo.
[0083] Nesta modalidade, uma maneira de construir o banco de dados com base em um segundo ponto-chave de cenário é descrita. Isso melhora a capacidade de implementação da solução.
[0084] De acordo com o terceiro aspecto, em uma segunda implementação do terceiro aspecto, o servidor inclui adicionalmente um processador.
[0085] As segundas informações de ponto-chave de cenário não correspondem às informações de ponto-chave de cenário predefinidas no banco de dados incluem: as segundas informações de ponto-chave de cenário existem no banco de dados, e as segundas informações de ponto-chave de cenário não incluem informações de descritor alvo sobre as informações de condição natural alvo.
[0086] Que o banco de dados é construído usando as segundas informações de ponto-chave de cenário inclui: quando as informações de ponto-chave de cenário predefinidas no banco de dados são as mesmas que as segundas informações de ponto-chave de cenário, mas as informações de ponto-chave de cenário predefinidas no banco de dados e as segundas informações de ponto-chave de cenário têm diferentes informações de descritor, as diferentes informações de descritor são adicionadas ao banco de dados e, portanto, o banco de dados é construído pelo servidor adicionando as informações de descritor alvo às segundas informações de ponto-chave de cenário predefinidas no banco de dados.
[0087] Nesta modalidade, outra maneira de construir o banco de dados com base em um segundo ponto-chave de cenário é descrita. Isso melhora a diversidade de implementação da solução.
[0088] Um quarto aspecto deste pedido fornece um dispositivo de rede, incluindo uma unidade de determinação, uma unidade de processamento e uma unidade de construção de banco de dados.
[0089] A unidade de determinação é configurada para determinar um conjunto de imagens alvo que satisfaz um requisito de grau de coincidência de imagem predefinido, em que o conjunto de imagens alvo inclui pelo menos uma imagem e cada imagem corresponde a um tipo de informações de condição natural.
[0090] A unidade de processamento é configurada para obter um conjunto de informações de ponto-chave de cenário com base no conjunto de imagens alvo e as informações de condição natural correspondentes a cada imagem, onde o conjunto de pontos-chave de cenário inclui pelo menos uma parte das informações de ponto-chave de cenário.
[0091] A unidade de determinação é adicionalmente configurada para determinar, no conjunto de informações de ponto-chave de cenário, primeiras informações de ponto-chave de cenário correspondentes a um ponto-chave de cenário cujo valor de vida em um único dispositivo móvel é maior do que um primeiro limiar de valor de vida predefinido, onde o valor de vida é usado para representar uma probabilidade de que o ponto-chave de cenário seja um ponto-chave de cenário estático.
[0092] A unidade de determinação é adicionalmente configurada para determinar, nas primeiras informações de ponto-chave de cenário, segundas informações de ponto-chave de cenário correspondentes a um ponto-chave de cenário cujo valor de vida em uma pluralidade de dispositivos móveis é maior do que um segundo limiar de valor de vida predefinido.
[0093] A unidade de construção de banco de dados é configurada para: quando as segundas informações de ponto- chave de cenário não correspondem às informações de ponto- chave de cenário predefinidas em um banco de dados, construir o banco de dados com base nas segundas informações de ponto- chave de cenário.
[0094] Nesta modalidade, após as segundas informações de ponto-chave de cenário serem obtidas por meio de triagem na maneira anterior, quando as segundas informações de ponto-chave de cenário relacionadas a um tipo de informações de condição natural não existem no banco de dados, o banco de dados é construído com base nas segundas informações de ponto-chave de cenário. Isso garante um posicionamento mais preciso quando o banco de dados construído é usado para posicionamento.
[0095] De acordo com o quarto aspecto, em uma primeira implementação do quarto aspecto, que as segundas informações de ponto-chave de cenário não correspondem às informações de ponto-chave de cenário predefinidas em um banco de dados inclui: as segundas informações de ponto-chave de cenário não existem no banco de dados; e a unidade de construção de banco de dados é configurada especificamente para adicionar as segundas informações de ponto-chave de cenário ao banco de dados, onde as segundas informações de ponto-chave de cenário incluem informações de descritor alvo sobre as informações de condição natural alvo.
[0096] Nesta modalidade, é descrito um caso em que o banco de dados é construído com base nas segundas informações de ponto-chave de cenário. Isso melhora a capacidade de implementação da solução.
[0097] De acordo com o quarto aspecto, em uma segunda implementação do quarto aspecto, que as segundas informações de ponto-chave de cenário não correspondem às informações de ponto-chave de cenário predefinidas em um banco de dados inclui: as segundas informações de ponto-chave de cenário existem no banco de dados, e as segundas informações de ponto-chave de cenário não incluem informações de descritor alvo sobre as informações de condição natural alvo; e a unidade de construção de banco de dados é configurada especificamente para adicionar as informações de descritor alvo às segundas informações de ponto-chave de cenário predefinidas no banco de dados.
[0098] Nesta modalidade, outro caso em que o banco de dados é construído com base nas segundas informações de ponto-chave de cenário é descrito. Isso melhora a flexibilidade de implementação da solução.
[0099] De acordo com a primeira ou a segunda implementação do quarto aspecto, em uma terceira implementação do quarto aspecto, a unidade de determinação é adicionalmente configurada para: determinar as coordenadas 3D do segundo ponto-chave de cenário correspondente às segundas informações de ponto-chave de cenário; e quando uma diferença entre coordenadas 3D de cada ponto- chave de cenário predefinido no banco de dados e as coordenadas 3D do segundo ponto-chave de cenário é maior do que um primeiro limiar predefinido, determinar que as segundas informações de ponto-chave de cenário não existem no banco de dados; ou quando uma diferença entre coordenadas 3D de qualquer ponto-chave de cenário predefinido no banco de dados e as coordenadas 3D do segundo ponto-chave de cenário é menor do que um primeiro limiar predefinido, determinar que as segundas informações de ponto-chave de cenário existem no banco de dados.
[00100] Nesta modalidade, é descrita uma maneira de determinar se o segundo ponto-chave de cenário existe no banco de dados. Isso melhora a capacidade de implementação da solução.
[00101] De acordo com a segunda implementação do quarto aspecto, em uma quarta implementação do quarto aspecto, a unidade de determinação é adicionalmente configurada para: determinar pelo menos uma parte de informações de descritor do segundo ponto-chave de cenário predefinido no banco de dados.
[00102] O dispositivo de rede inclui adicionalmente: uma unidade de julgamento, configurada para determinar se a pelo menos uma parte de informações de descritor inclui uma parte de informações de descritor, onde uma distância entre um descritor correspondente à uma parte de informações de descritor e um descritor correspondente às informações de descritor alvo é menor que um limiar de distância predefinido.
[00103] A unidade de determinação é adicionalmente configurada para: se pelo menos uma parte de informações de descritor não incluir a uma parte das informações de descritor, onde a distância entre o descritor correspondente à uma parte das informações de descritor e o descritor correspondente às informações de descritor alvo for menor que o limiar de distância predefinido, determinar que as segundas informações de ponto-chave de cenário predefinidas no banco de dados não incluem as informações de descritor alvo.
[00104] Nesta modalidade, é descrita uma maneira de determinar se as informações de descritor alvo existem no banco de dados. Isso melhora a capacidade de implementação da solução.
[00105] De acordo com o quarto aspecto e a primeira e a segunda implementações do quarto aspecto, em uma quinta implementação do quarto aspecto, o valor de vida do ponto- chave de cenário no único dispositivo móvel é f, e uma ( ) fórmula de cálculo de f é: f = e , onde n indica uma √ quantidade de vezes que o ponto-chave de cenário é observado no único dispositivo móvel, n é um valor médio predefinido de uma quantidade de vezes que um ponto-chave de cenário é observado, e é uma variância predefinida da quantidade de vezes que o ponto-chave de cenário é observado.
[00106] Nesta modalidade, a fórmula de cálculo do valor de vida do ponto-chave de cenário no único dispositivo móvel é descrita. Isso melhora a capacidade de implementação da solução.
[00107] De acordo com a quinta implementação do quarto aspecto, em uma sexta implementação do quarto aspecto, o valor de vida do ponto-chave de cenário na pluralidade de dispositivos móveis é F, e uma fórmula de cálculo de F é : F=∑ β f , onde f é o valor de vida do ponto-chave de cenário no único dispositivo móvel, B é um coeficiente de peso correspondente a cada dispositivo móvel, e um dentre a pluralidade de dispositivos móveis corresponde a um coeficiente de peso.
[00108] Nesta modalidade, a fórmula de cálculo do valor de vida do ponto-chave de cenário na pluralidade de dispositivos móveis é descrita. Isso melhora a capacidade de implementação da solução.
[00109] De acordo com a sexta implementação do quarto aspecto, em uma sétima implementação do quarto aspecto, uma fórmula de cálculo de β é: β = γ + γ + γ , onde γ é um índice de continuidade de tempo do ponto-chave de cenário observado na pluralidade de dispositivos móveis, γ é um índice de continuidade geométrica do ponto-chave de cenário observado na pluralidade de dispositivos móveis, e γ é um índice de consistência de descrição do ponto-chave de cenário observado na pluralidade de dispositivos móveis.
[00110] Nesta modalidade, a fórmula de cálculo do coeficiente de peso β é descrita. Isso melhora a capacidade de implementação da solução.
[00111] De acordo com o quarto aspecto e a primeira e a segunda implementações do quarto aspecto, em uma oitava implementação do quarto aspecto, a unidade de determinação é configurada especificamente para selecionar uma imagem com base em um espaçamento de distância predefinido; e quando uma diferença entre um grau de coincidência de imagens selecionadas e um limiar de grau de coincidência predefinido está dentro de um intervalo de precisão predefinido, determinar que as imagens selecionadas pertencem ao conjunto de imagens alvo.
[00112] Nesta modalidade, a imagem que satisfaz o requisito de grau de coincidência é selecionada. Isso pode evitar uma quantidade de dados excessivamente grande durante o processamento de imagem devido à seleção de imagem cega, e também pode evitar uma quantidade de dados excessivamente grande durante a correspondência subsequente de informações de ponto-chave de cenário existentes no banco de dados.
[00113] De acordo com a oitava implementação do quarto aspecto, em uma nona implementação do quarto aspecto, o espaçamento de distância predefinido é d .
[00114] Uma fórmula de cálculo do espaçamento de distância predefinido é: d = d + d (α∗ − α), onde α∗ é o limiar de grau de coincidência predefinido, d é um espaçamento de distância para a seleção de imagem em um momento anterior, e é um grau de coincidência de imagens quando as imagens são selecionadas com base no espaçamento de distância d .
[00115] Nesta modalidade, a fórmula de cálculo do espaçamento de distância predefinido é descrita. Isso melhora a integridade de solução.
[00116] De acordo com o quarto aspecto e a primeira e a segunda implementações do quarto aspecto, em uma décima implementação do quarto aspecto, a unidade de determinação é configurada especificamente para: selecionar uma imagem com base em um espaçamento angular predefinido; e quando uma diferença entre um grau de coincidência de imagens selecionadas e um limiar de grau de coincidência predefinido está dentro de um intervalo de precisão predefinido, determinar que as imagens selecionadas pertencem ao conjunto de imagens alvo.
[00117] Nesta modalidade, a imagem que satisfaz o requisito de grau de coincidência é selecionada. Isso pode evitar uma quantidade de dados excessivamente grande durante o processamento de imagem devido à seleção de imagem cega e também pode evitar uma quantidade de dados excessivamente grande durante a correspondência subsequente de informações de ponto-chave de cenário existentes no banco de dados.
[00118] De acordo com a décima implementação do quarto aspecto, em uma décima primeira implementação do quarto aspecto, o espaçamento angular predefinido é θ .
[00119] Uma fórmula de cálculo do espaçamento angular predefinido é: θ = θ + θ (α∗ − α), onde α∗ é o limiar de grau de coincidência predefinido, θ é um espaçamento angular para seleção de imagem em um momento anterior, e é um grau de coincidência de imagens quando as imagens são selecionadas com base no espaçamento angular θ .
[00120] Nesta modalidade, a fórmula de cálculo do espaçamento angular predefinido é descrita. Isso melhora a integridade de solução.
[00121] De acordo com o quarto aspecto e a primeira e a segunda implementações do quarto aspecto, em uma décima segunda implementação do quarto aspecto, as informações de ponto-chave de cenário incluem as informações de descritor correspondentes às informações de condição natural e a unidade de processamento é especificamente configurada para: (1) processar uma imagem alvo para obter um ponto-chave de cenário; (2) constituir as informações de ponto-chave de cenário usando o ponto-chave de cenário, a imagem alvo à qual o ponto-chave de cenário pertence, e as informações de condição natural correspondentes à imagem alvo; e realizar os passos (1) e (2) novamente até que o conjunto de informações de ponto-chave de cenário seja constituído.
[00122] Nesta modalidade, uma maneira de determinar o conjunto de informações de ponto-chave de cenário é descrita. Isso melhora a integridade de solução.
[00123] De acordo com o quarto aspecto e a primeira e a segunda implementações do quarto aspecto, em uma décima terceira implementação do quarto aspecto, a unidade de determinação é adicionalmente configurada para determinar as terceiras informações de ponto-chave de cenário no banco de dados construído.
[00124] A unidade de construção de banco de dados é adicionalmente configurada para: quando uma pontuação de controle de número de recurso FNCS de um terceiro ponto- chave de cenário correspondente às terceiras informações de ponto-chave de cenário for menor do que um limiar de FNCS predefinido, excluir as terceiras informações de ponto-chave de cenário a partir do banco de dados.
[00125] Nesta modalidade, é descrito o gerenciamento de ponto-chave de cenário após a construção do banco de dados. Um ponto-chave de cenário com um valor de FNCS baixo pode ser excluído, para facilitar o gerenciamento do banco de dados.
[00126] De acordo com a décima terceira implementação do quarto aspecto, em uma décima quarta implementação do quarto aspecto, uma fórmula de cálculo da pontuação de controle de número de recurso FNCS é: FNCS = log , onde é uma probabilidade de que o ponto-chave de cenário seja usado durante o posicionamento, e é uma porcentagem de uma quantidade de descritores do ponto-chave de cenário em uma quantidade total de descritores em uma imagem à qual o ponto-
chave de cenário pertence.
[00127] Nesta modalidade, a fórmula de cálculo da pontuação de controle de número de recurso FNCS é descrita. Isso melhora a capacidade de implementação da solução.
[00128] Um quinto aspecto deste pedido fornece um método de posicionamento. O método é aplicado a um sistema de posicionamento visual e o método inclui uma unidade de obtenção, uma unidade de determinação e uma unidade de posicionamento.
[00129] A unidade de obtenção é configurada para obter uma imagem em tempo real.
[00130] A unidade de determinação é configurada para determinar pelo menos uma parte das primeiras informações de descritor com base na imagem em tempo real, onde as primeiras informações de descritor incluem informações de condição natural alvo quando a imagem em tempo real é fotografada.
[00131] A unidade de determinação é adicionalmente configurada para comparar as informações de descritor predefinidas em um banco de dados com pelo menos uma parte das primeiras informações de descritor para determinar as mesmas informações de descritor, onde as informações de descritor predefinidas no banco de dados são obtidas por um dispositivo de rede pela determinação de um conjunto de imagens alvo que satisfaz um requisito de grau de coincidência de imagem predefinido, obter um conjunto de informações de ponto-chave de cenário com base no conjunto de imagens alvo e informações de condição natural correspondentes a cada imagem no conjunto de imagens alvo, selecionar, a partir do conjunto de informações de ponto- chave de cenário, primeiras informações de ponto-chave de cenário correspondentes a um primeiro ponto-chave de cenário que satisfaz um requisito de valor de vida predefinido e, em seguida, construir o banco de dados com base nas segundas informações de descritor que estão nas primeiras informações de ponto-chave de cenário e que correspondem às informações de condição natural alvo, as segundas informações de descritor não correspondem às informações de descritor predefinidas no banco de dados, e as informações de ponto- chave de cenário incluem informações de descritor correspondentes às informações de condição natural.
[00132] A unidade de posicionamento é configurada para posicionar a imagem em tempo real usando as mesmas informações de descritor.
[00133] Nesta modalidade, é descrito um processo de posicionamento após a construção do banco de dados. Isso melhora a praticidade da solução.
[00134] De acordo com o quinto aspecto, em uma primeira implementação do quinto aspecto, a unidade de posicionamento é configurada especificamente para: determinar as primeiras informações de ponto-chave de cenário correspondentes às mesmas informações de descritor no banco de dados; e obter, por meio de cálculo com base nas primeiras informações de ponto-chave de cenário e uma fórmula de cálculo de posicionamento, uma localização de um dispositivo móvel alvo quando a imagem em tempo real é fotografada.
[00135] Nesta modalidade, uma maneira específica de posicionar a imagem em tempo real é descrita. Isso melhora a capacidade de implementação e praticidade da solução.
[00136] De acordo com a primeira implementação do quinto aspecto, em uma segunda implementação do quinto aspecto, a fórmula de cálculo de posicionamento da localização do dispositivo móvel alvo quando a imagem em tempo real é fotografada é: 𝑟(𝑇 ) = ∑ 𝜋 (𝑇 ) 𝑇 (𝜋 ) 𝑝 − 𝑝 , onde são coordenadas de pixel do primeiro ponto-chave de cenário na imagem em tempo real, é uma matriz de parâmetro intrínseca de uma câmera, π é usada para converter coordenadas 3D em coordenadas de pixel, T é uma pose de uma imagem para a qual um ponto-chave de cenário p no banco de dados pertence em relação a um sistema de coordenadas mundial, p são coordenadas de pixel do primeiro ponto-chave de cenário no banco de dados, um valor de i varia de 1 a n, n é um número inteiro positivo, e o primeiro ponto-chave de cenário corresponde às primeiras informações de ponto-chave de cenário.
[00137] Nesta modalidade, um algoritmo específico da fórmula de posicionamento é descrito. Isso melhora a integridade de solução.
[00138] De acordo com o quinto aspecto e a primeira e a segunda implementações do quinto aspecto, em uma terceira implementação do quinto aspecto, a unidade de determinação é adicionalmente configurada para comparar as informações de descritor predefinidas no banco de dados com a pelo menos uma parte das primeiras informações de descritor, para determinar diferentes informações de descritor.
[00139] O dispositivo de rede inclui adicionalmente uma unidade de construção de banco de dados.
[00140] A unidade de construção de banco de dados é configurada especificamente para construir o banco de dados com base nas diferentes informações de descritor.
[00141] Nesta modalidade, o banco de dados pode ser atualizado com base nas diferentes informações de descritor em um processo de posicionamento. Isso torna o banco de dados mais completo e garante um posicionamento mais preciso.
[00142] De acordo com a terceira implementação do quinto aspecto, em uma quarta implementação do quinto aspecto, quando as segundas informações de ponto-chave de cenário às quais as diferentes informações de descritor pertencem não existem no banco de dados, a unidade de construção de banco de dados é especificamente configurada para adicionar as segundas informações de ponto-chave de cenário incluindo as diferentes informações de descritor para o banco de dados.
[00143] Nesta modalidade, é descrito um caso em que o banco de dados é construído com base nas diferentes informações de descritor. Isso melhora a praticidade da solução.
[00144] De acordo com a terceira implementação do quinto aspecto, em uma quinta implementação do quinto aspecto, quando as segundas informações de ponto-chave de cenário às quais as diferentes informações de descritor pertencem existem no banco de dados, a unidade de construção é especificamente configurada para adicionar as diferentes informações de descritor para as segundas informações de ponto-chave de cenário no banco de dados.
[00145] Nesta modalidade, é descrito outro caso em que o banco de dados é construído com base nas diferentes informações de descritor. Isso melhora a integridade de solução.
[00146] De acordo com a terceira implementação do quinto aspecto, em uma sexta implementação do quinto aspecto, a unidade de determinação é adicionalmente configurada para: determinar as coordenadas 3D do segundo ponto-chave de cenário correspondente às segundas informações de ponto- chave de cenário; e quando uma diferença entre coordenadas 3D de cada ponto- chave de cenário predefinido no banco de dados e as coordenadas 3D do segundo ponto-chave de cenário é maior do que um primeiro limiar predefinido, determinar que as segundas informações de ponto-chave de cenário não existem no banco de dados; ou quando uma diferença entre coordenadas 3D de qualquer ponto-chave de cenário predefinido no banco de dados e as coordenadas 3D do segundo ponto-chave de cenário é menor do que um primeiro limiar predefinido, determinar que as segundas informações de ponto-chave de cenário existem no banco de dados.
[00147] Nesta modalidade, é descrita uma maneira de determinar se o segundo ponto-chave de cenário existe no banco de dados. Isso melhora a capacidade de implementação da solução.
[00148] Um sexto aspecto deste pedido fornece um dispositivo de rede. O dispositivo de rede inclui uma memória, um transceptor, um processador e um sistema de barramento.
[00149] A memória é configurada para armazenar um programa.
[00150] O processador é configurado para executar o programa na memória, para realizar os seguintes passos:
determinar um conjunto de imagens alvo que satisfaz um requisito de grau de coincidência de imagem predefinido, em que o conjunto de imagens alvo inclui pelo menos uma imagem e cada imagem corresponde a um tipo de informações de condição natural; obter um conjunto de informações de ponto-chave de cenário com base no conjunto de imagens alvo e as informações de condição natural correspondentes a cada imagem, onde o conjunto de pontos-chave de cenário inclui pelo menos uma parte de informações de ponto-chave de cenário; determinar, no conjunto de informações de ponto-chave de cenário, primeiras informações de ponto-chave de cenário correspondentes a um ponto-chave de cenário cujo valor de vida em um único dispositivo móvel é maior do que um primeiro limiar de valor de vida predefinido, onde o valor de vida é usado para representar uma probabilidade de que o ponto- chave de cenário é um ponto-chave de cenário estático; determinar, nas primeiras informações de ponto-chave de cenário, segundas informações de ponto-chave de cenário correspondentes a um ponto-chave de cenário cujo valor de vida em uma pluralidade de dispositivos móveis é maior do que um segundo limiar de valor de vida predefinido; e quando as segundas informações de ponto-chave de cenário não correspondem às informações de ponto-chave de cenário predefinidas em um banco de dados, construir o banco de dados com base nas segundas informações de ponto-chave de cenário.
[00151] O sistema de barramento é configurado para conectar a memória e o processador, para permitir que a memória e o processador se comuniquem entre si.
[00152] Nesta modalidade, após as segundas informações de ponto-chave de cenário serem obtidas por meio de triagem na maneira anterior, quando as segundas informações de ponto-chave de cenário relacionadas a um tipo de informações de condição natural não existem no banco de dados, o banco de dados é construído com base nas segundas informações de ponto-chave de cenário. Isso garante um posicionamento mais preciso quando o banco de dados construído é usado para posicionamento.
[00153] De acordo com o sexto aspecto, em uma primeira implementação do sexto aspecto, que as segundas informações de ponto-chave de cenário não correspondem às informações de ponto-chave de cenário predefinidas em um banco de dados inclui: as segundas informações de ponto-chave de cenário não existem no banco de dados; e o processador é especificamente configurado para: adicionar as segundas informações de ponto-chave de cenário ao banco de dados, onde as segundas informações de ponto-chave de cenário incluem informações de descritor alvo sobre as informações de condição natural alvo.
[00154] Nesta modalidade, é descrito um caso em que o banco de dados é construído com base nas segundas informações de ponto-chave de cenário. Isso melhora a capacidade de implementação da solução.
[00155] De acordo com o sexto aspecto, em uma segunda implementação do sexto aspecto, as segundas informações de ponto-chave de cenário não correspondem às informações de ponto-chave de cenário predefinidas em um banco de dados inclui: as segundas informações de ponto-chave de cenário existem no banco de dados, e as segundas informações de ponto-chave de cenário não incluem informações de descritor alvo sobre as informações de condição natural alvo; e o processador é especificamente configurado para: adicionar as informações de descritor alvo às segundas informações de ponto-chave de cenário predefinidas no banco de dados.
[00156] Nesta modalidade, outro caso em que o banco de dados é construído com base nas segundas informações de ponto-chave de cenário é descrito. Isso melhora a flexibilidade de implementação da solução.
[00157] De acordo com a primeira ou a segunda implementação do sexto aspecto, em uma terceira implementação do sexto aspecto, o processador é adicionalmente configurado para: determinar coordenadas 3D do segundo ponto-chave de cenário correspondentes às segundas informações de ponto- chave de cenário; e quando uma diferença entre coordenadas 3D de cada ponto- chave de cenário predefinido no banco de dados e as coordenadas 3D do segundo ponto-chave de cenário é maior do que um primeiro limiar predefinido, determinar que as segundas informações de ponto-chave de cenário não existem no banco de dados; ou quando uma diferença entre coordenadas 3D de qualquer ponto-chave de cenário predefinido no banco de dados e as coordenadas 3D do segundo ponto-chave de cenário é menor do que um primeiro limiar predefinido, determinar que as segundas informações de ponto-chave de cenário existem no banco de dados.
[00158] Nesta modalidade, é descrita uma maneira de determinar se o segundo ponto-chave de cenário existe no banco de dados. Isso melhora a capacidade de implementação da solução.
[00159] De acordo com a segunda implementação do sexto aspecto, em uma quarta implementação do sexto aspecto, o processador é adicionalmente configurado para: determinar pelo menos uma parte de informações de descritor do segundo ponto-chave de cenário predefinido no banco de dados; determinar se pelo menos uma parte de informações de descritor inclui uma parte de informações de descritor, onde uma distância entre um descritor correspondente à uma parte de informações de descritor e um descritor correspondente às informações de descritor alvo é menor do que um limiar de distância predefinido; e se pelo menos uma parte das informações de descritor não incluir a uma parte das informações de descritor, determinar que as segundas informações de ponto-chave de cenário predefinidas no banco de dados não incluem as informações de descritor alvo.
[00160] Nesta modalidade, é descrita uma maneira de determinar se as informações de descritor alvo existem no banco de dados. Isso melhora a capacidade de implementação da solução.
[00161] De acordo com o sexto aspecto e a primeira e a segunda implementações do sexto aspecto, em uma quinta implementação do sexto aspecto, o valor de vida do ponto- chave de cenário no único dispositivo móvel é f, e uma ( ) fórmula de cálculo de f é: f = e , onde n indica uma √ quantidade de vezes que o ponto-chave de cenário é observado no único dispositivo móvel, n é um valor médio predefinido de uma quantidade de vezes que um ponto-chave de cenário é observado, e é uma variância predefinida da quantidade de vezes que o ponto-chave de cenário é observado.
[00162] Nesta modalidade, a fórmula de cálculo do valor de vida do ponto-chave de cenário no único dispositivo móvel é descrita. Isso melhora a capacidade de implementação da solução.
[00163] De acordo com a quinta implementação do sexto aspecto, em uma sexta implementação do sexto aspecto, o valor de vida do ponto-chave de cenário na pluralidade de dispositivos móveis é F, e uma fórmula de cálculo de F é: F=∑ β f , onde f é o valor de vida do ponto-chave de cenário no único dispositivo móvel, B é um coeficiente de peso correspondente a cada dispositivo móvel, e um da pluralidade de dispositivos móveis corresponde a um coeficiente de peso.
[00164] Nesta modalidade, a fórmula de cálculo do valor de vida do ponto-chave de cenário na pluralidade de dispositivos móveis é descrita. Isso melhora a capacidade de implementação da solução.
[00165] De acordo com a sexta implementação do sexto aspecto, em uma sétima implementação do sexto aspecto, uma fórmula de cálculo é: β = γ + γ + γ , onde γ é um índice de continuidade de tempo do ponto-chave de cenário observado na pluralidade de dispositivos móveis, γ é um índice de continuidade geométrica do ponto-chave de cenário observado na pluralidade de dispositivos móveis, e γ é um índice de consistência de descrição do ponto-chave de cenário observado na pluralidade de dispositivos móveis.
[00166] Nesta modalidade, a fórmula de cálculo do coeficiente de peso é descrita. Isso melhora a capacidade de implementação da solução.
[00167] De acordo com o sexto aspecto e a primeira e a segunda implementações do sexto aspecto, em uma oitava implementação do sexto aspecto, o processador é especificamente configurado para: selecionar uma imagem com base em um espaçamento de distância predefinido; e quando uma diferença entre um grau de coincidência de imagens selecionadas e um limiar de grau de coincidência predefinido está dentro de um intervalo de precisão predefinido, determinar que as imagens selecionadas pertencem ao conjunto de imagens alvo.
[00168] Nesta modalidade, a imagem que satisfaz o requisito de grau de coincidência é selecionada. Isso pode evitar uma quantidade de dados excessivamente grande durante o processamento de imagem devido à seleção de imagem cega e também pode evitar uma quantidade de dados excessivamente grande durante a correspondência subsequente de informações de ponto-chave de cenário existentes no banco de dados.
[00169] De acordo com a oitava implementação do sexto aspecto, em uma nona implementação do sexto aspecto, o espaçamento de distância predefinido é d .
[00170] Uma fórmula de cálculo do espaçamento de distância predefinido é: d = d + d (α∗ − α), onde α∗ é o limiar de grau de coincidência predefinido, d é um espaçamento de distância para a seleção de imagem em um momento anterior, e é um grau de coincidência de imagens quando as imagens são selecionadas com base no espaçamento de distância d .
[00171] Nesta modalidade, a fórmula de cálculo do espaçamento de distância predefinido é descrita. Isso melhora a integridade de solução.
[00172] De acordo com o sexto aspecto e a primeira e a segunda implementações do sexto aspecto, em uma décima implementação do sexto aspecto, o processador é especificamente configurado para: selecionar uma imagem com base em um espaçamento angular predefinido; e quando uma diferença entre um grau de coincidência de imagens selecionadas e um limiar de grau de coincidência predefinido está dentro de um intervalo de precisão predefinido, determinar que as imagens selecionadas pertencem ao conjunto de imagens alvo.
[00173] Nesta modalidade, a imagem que satisfaz o requisito de grau de coincidência é selecionada. Isso pode evitar uma quantidade de dados excessivamente grande durante o processamento de imagem devido à seleção de imagem cega e também pode evitar uma quantidade de dados excessivamente grande durante a correspondência subsequente de informações de ponto-chave de cenário existentes no banco de dados.
[00174] De acordo com a décima implementação do sexto aspecto, em uma décima primeira implementação do sexto aspecto, o espaçamento angular predefinido é θ .
[00175] Uma fórmula de cálculo do espaçamento angular predefinido é: θ = θ + θ (α∗ − α), onde α∗ é o limiar de grau de coincidência predefinido, θ é um espaçamento angular para seleção de imagem em um momento anterior, e é um grau de coincidência de imagens quando as imagens são selecionadas com base no espaçamento angular θ .
[00176] Nesta modalidade, a fórmula de cálculo do espaçamento angular predefinido é descrita. Isso melhora a integridade de solução.
[00177] De acordo com o sexto aspecto e a primeira e a segunda implementações do sexto aspecto, em uma décima segunda implementação do sexto aspecto, as informações de ponto-chave de cenário incluem informações de descritor correspondentes às informações de condição natural e o processador é especificamente configurado para: (1) processar uma imagem alvo para obter um ponto- chave de cenário; (2) constituir as informações de ponto-chave de cenário usando o ponto-chave de cenário, a imagem alvo à qual o ponto-chave de cenário pertence, e as informações de condição natural correspondentes à imagem alvo; e realizar os passos (1) e (2) novamente até que o conjunto de informações de ponto-chave de cenário seja constituído.
[00178] Nesta modalidade, uma maneira de determinar o conjunto de informações de ponto-chave de cenário é descrita. Isso melhora a integridade de solução.
[00179] De acordo com o sexto aspecto e a primeira e a segunda implementações do sexto aspecto, em uma décima terceira implementação do sexto aspecto, o processador é adicionalmente configurado para: determinar as terceiras informações de ponto-chave de cenário no banco de dados construído; e quando uma pontuação de controle de número de recurso FNCS de um terceiro ponto-chave de cenário correspondente às terceiras informações de ponto-chave de cenário é menor do que um limiar de FNCS predefinido, excluir as terceiras informações de ponto-chave de cenário do banco de dados.
[00180] Nesta modalidade, é descrito o gerenciamento de ponto-chave de cenário após a construção do banco de dados. Um ponto-chave de cenário com um valor de FNCS baixo pode ser excluído, para facilitar o gerenciamento do banco de dados.
[00181] De acordo com a décima terceira implementação do sexto aspecto, em uma décima quarta implementação do sexto aspecto, uma fórmula de cálculo da pontuação de controle de número de recurso FNCS é: FNCS = log , onde é uma probabilidade de que o ponto-chave de cenário seja usado durante o posicionamento, e é uma porcentagem de uma quantidade de descritores do ponto-chave de cenário em uma quantidade total de descritores em uma imagem à qual o ponto- chave de cenário pertence.
[00182] Nesta modalidade, a fórmula de cálculo da pontuação de controle de número de recurso FNCS é descrita. Isso melhora a capacidade de implementação da solução.
[00183] Um sétimo aspecto deste pedido fornece um dispositivo de rede. O dispositivo de rede pertence a um sistema de posicionamento visual, e o dispositivo de rede inclui uma memória, um transceptor, um processador e um sistema de barramento.
[00184] O transceptor é configurado para obter uma imagem em tempo real.
[00185] A memória é configurada para armazenar um programa.
[00186] O processador é configurado para executar o programa na memória, para realizar os seguintes passos:
determinar pelo menos uma parte das primeiras informações de descritor com base na imagem em tempo real, onde as primeiras informações de descritor incluem informações de condição natural alvo quando a imagem em tempo real é fotografada; comparar as informações de descritor predefinidas em um banco de dados com pelo menos uma parte das primeiras informações de descritor para determinar as mesmas informações de descritor, onde as informações de descritor predefinidas no banco de dados são obtidas pelo dispositivo de rede pela determinação de um conjunto de imagens alvo que satisfaz um requisito de grau de coincidência de imagem predefinido, obter um conjunto de informações de ponto-chave de cenário com base no conjunto de imagens alvo e informações de condição natural correspondentes a cada imagem no conjunto de imagens alvo, selecionar, a partir do conjunto de informações de ponto-chave de cenário, as primeiras informações de ponto-chave de cenário correspondentes a um primeiro ponto-chave de cenário que satisfaz um requisito de valor de vida predefinido e, em seguida, construir o banco de dados com base nas segundas informações de descritor que estão nas primeiras informações de ponto-chave de cenário e que correspondem às informações de condição natural alvo, as segundas informações de descritor não correspondem às informações de descritor predefinidas no banco de dados e as informações de ponto-chave de cenário incluem informações de descritor que correspondem às informações de condição natural; e posicionar a imagem em tempo real usando as mesmas informações de descritor.
[00187] O sistema de barramento é configurado para conectar a memória e o processador, para permitir que a memória e o processador se comuniquem entre si.
[00188] Nesta modalidade, é descrito um processo de posicionamento após a construção do banco de dados. Isso melhora a praticidade da solução.
[00189] De acordo com o sétimo aspecto, em uma primeira implementação do sétimo aspecto, o processador é especificamente configurado para: determinar as primeiras informações de ponto-chave de cenário correspondentes às mesmas informações de descritor no banco de dados; e obter, por meio de cálculo com base nas primeiras informações de ponto-chave de cenário e uma fórmula de cálculo de posicionamento, uma localização de um dispositivo móvel alvo quando a imagem em tempo real é fotografada.
[00190] Nesta modalidade, uma maneira específica de posicionar a imagem em tempo real é descrita. Isso melhora a capacidade de implementação da solução.
[00191] De acordo com a primeira implementação do sétimo aspecto, em uma segunda implementação do sétimo aspecto, a fórmula de cálculo de posicionamento da localização do dispositivo móvel alvo quando a imagem em tempo real é fotografada é: 𝑟(𝑇 ) = ∑ 𝜋 (𝑇 ) 𝑇 (𝜋 ) 𝑝 − 𝑝 , onde coordenadas de pixel do primeiro ponto-chave de cenário na imagem em tempo real, é uma matriz de parâmetro intrínseca de uma câmera, π é usada para converter coordenadas 3D em coordenadas de pixel, T é uma pose de uma imagem para a qual um ponto-chave de cenário p no banco de dados pertence em relação a um sistema de coordenadas mundial, p são coordenadas de pixel do primeiro ponto-chave de cenário no banco de dados, um valor de i varia de 1 a n, n é um número inteiro positivo, e o primeiro ponto-chave de cenário corresponde às primeiras informações de ponto-chave de cenário.
[00192] Nesta modalidade, um algoritmo específico da fórmula de posicionamento é descrito. Isso melhora a integridade de solução.
[00193] De acordo com o sétimo aspecto e a primeira e a segunda implementações do sétimo aspecto, em uma terceira implementação do sétimo aspecto, o processador é adicionalmente configurado para: comparar as informações de descritor predefinidas no banco de dados com pelo menos uma parte das primeiras informações de descritor para determinar as diferentes informações de descritor; e construir o banco de dados com base nas diferentes informações de descritor.
[00194] Nesta modalidade, o banco de dados pode ser atualizado com base nas diferentes informações de descritor em um processo de posicionamento. Isso torna o banco de dados mais completo e garante um posicionamento mais preciso.
[00195] De acordo com a terceira implementação do sétimo aspecto, em uma quarta implementação do sétimo aspecto, quando as segundas informações de ponto-chave de cenário às quais as diferentes informações de descritor pertencem não existem no banco de dados, o processador é especificamente configurado para: adicionar as segundas informações de ponto-chave de cenário incluindo as diferentes informações de descritor ao banco de dados.
[00196] Nesta modalidade, é descrito um caso em que o banco de dados é construído com base nas diferentes informações de descritor. Isso melhora a praticidade da solução.
[00197] De acordo com a terceira implementação do sétimo aspecto, em uma quinta implementação do sétimo aspecto, quando as segundas informações de ponto-chave de cenário às quais as diferentes informações de descritor pertencem existem no banco de dados, o processador é especificamente configurado para: adicionar as diferentes informações de descritor às segundas informações de ponto-chave de cenário no banco de dados.
[00198] Nesta modalidade, é descrito outro caso em que o banco de dados é construído com base nas diferentes informações de descritor. Isso melhora a integridade de solução.
[00199] De acordo com a terceira implementação do sétimo aspecto, em uma sexta implementação do sétimo aspecto, o processador é adicionalmente configurado para: determinar as coordenadas 3D do segundo ponto-chave de cenário correspondentes às segundas informações de ponto- chave de cenário; e quando uma diferença entre coordenadas 3D de cada ponto- chave de cenário predefinido no banco de dados e as coordenadas 3D do segundo ponto-chave de cenário é maior do que um primeiro limiar predefinido, determinar que as segundas informações de ponto-chave de cenário não existem no banco de dados; ou quando uma diferença entre coordenadas 3D de qualquer ponto-chave de cenário predefinido no banco de dados e as coordenadas 3D do segundo ponto-chave de cenário é menor do que um primeiro limiar predefinido, determinar que as segundas informações de ponto-chave de cenário existem no banco de dados.
[00200] Nesta modalidade, é descrita uma maneira de determinar se o segundo ponto-chave de cenário existe no banco de dados. Isso melhora a capacidade de implementação da solução.
[00201] Um oitavo aspecto deste pedido fornece um meio de armazenamento legível por computador. O meio de armazenamento legível por computador armazena uma instrução. Quando a instrução é executada em um computador, o computador é habilitado para realizar os métodos nos aspectos anteriores.
[00202] Um nono aspecto deste pedido fornece um produto de programa de computador incluindo uma instrução. Quando o produto de programa de computador é rodado em um computador, o computador é habilitado para realizar os métodos nos aspectos anteriores.
BREVE DESCRIÇÃO DOS DESENHOS
[00203] A Figura 1 é um diagrama esquemático de uma relação entre uma estrutura de dados e um tipo de dados em um banco de dados de imagem de acordo com este pedido; a Figura 2 é um diagrama esquemático da aplicação de uma modalidade deste pedido a um veículo; a Figura 3 é um diagrama estrutural esquemático de um sistema de posicionamento visual de acordo com este pedido;
a Figura 4 é outro diagrama estrutural esquemático de um sistema de posicionamento visual de acordo com este pedido; a Figura 5 é um diagrama esquemático de uma modalidade de um método de construção de banco de dados de acordo com este pedido; a Figura 6 é um diagrama esquemático de uma modalidade de seleção de um conjunto de imagens alvo de acordo com este pedido; a Figura 7 é um diagrama esquemático de uma modalidade de seleção de segundas informações de ponto-chave de cenário de acordo com este pedido; a Figura 8 é um diagrama esquemático de uma relação entre um valor de vida de um ponto-chave de cenário e uma quantidade de vezes que o ponto-chave de cenário é observado de acordo com este pedido; a Figura 9 é um diagrama esquemático de outra modalidade de um método de construção de banco de dados de acordo com este pedido; a Figura 10 é um diagrama esquemático de uma modalidade para determinar se um ponto-chave de cenário existe em um banco de dados de acordo com este pedido; a Figura 11 é um diagrama esquemático de uma modalidade de um método de posicionamento de acordo com este pedido; a Figura 12 (a) é um caso em que as informações de ponto- chave de cenário em uma imagem não correspondem às informações de ponto-chave de cenário predefinidas em um banco de dados de acordo com este pedido; a Figura 12 (b) é outro caso em que as informações de ponto-chave de cenário em uma imagem não correspondem às informações de ponto-chave de cenário predefinidas em um banco de dados de acordo com este pedido; a Figura 13 é um diagrama esquemático de outra modalidade de um método de posicionamento de acordo com este pedido; a Figura 14 é um diagrama estrutural esquemático de um dispositivo de rede de acordo com este pedido; a Figura 15 é outro diagrama estrutural esquemático de um dispositivo de rede de acordo com este pedido; e a Figura 16 é outro diagrama estrutural esquemático de um dispositivo de rede de acordo com este pedido.
DESCRIÇÃO DE MODALIDADES
[00204] Em modalidades deste pedido, como mostrado na Figura 1, um banco de dados armazena informações de quadro- chave de cenário, informações de ponto-chave de cenário e informações de descritor. Há uma relação de associação entre as informações de quadro-chave de cenário, as informações de ponto-chave de cenário e as informações de descritor. As informações de quadro-chave de cenário incluem uma imagem, uma localização e uma postura. Um quadro-chave de cenário tem pelo menos um ponto-chave de cenário. As informações de ponto-chave de cenário incluem coordenadas de pixel, coordenadas 3D e informações de descritor de um ponto-chave de cenário, e informações de ID de um quadro-chave de cenário ao qual o ponto-chave de cenário pertence. Um ponto-chave de cenário tem pelo menos um descritor. As informações de descritor incluem um descritor de um ponto-chave de cenário no campo visual convencional e um atributo de condição natural E de um cenário quando o ponto-chave de cenário é coletado. Quando o atributo de condição natural E muda, o descritor também muda. Por exemplo, quando uma mesma imagem é fotografada em um dia nublado e um dia ensolarado, os descritores das imagens fotografadas são diferentes. As coordenadas de pixel, as coordenadas 3D e as informações de ID de quadro-chave de cenário ao qual o ponto- chave de cenário pertence são atributos estáticos do ponto- chave de cenário, e não variam com um ambiente externo.
[00205] Nas modalidades deste pedido, diferentes condições naturais têm diferentes informações de descritor. As diferentes condições naturais são diferentes ângulos de visão e direções, diferentes condições climáticas e / ou diferentes condições de iluminação. As diferentes condições naturais podem ser outro caso. Isso não é especificamente limitado aqui.
[00206] As modalidades deste pedido são aplicadas principalmente a um sistema de posicionamento visual. Um princípio de posicionamento visual é o seguinte: Um ponto- chave de cenário de uma imagem fotografada é comparado com um ponto-chave de cenário em um banco de dados; se o ponto- chave de cenário da imagem fotografada corresponder a um ponto-chave de cenário correspondente no banco de dados, os pontos-chave de cenário são considerados como um mesmo ponto- chave de cenário; e então as coordenadas 3D do ponto-chave de cenário correspondido no banco de dados são usadas para o posicionamento. Este pedido pode ser aplicado ao posicionamento em um processo de movimentação de um dispositivo móvel, como um veículo aéreo não tripulado, um veículo V2X ou um telefone móvel.
[00207] Como mostrado na Figura 2, o posicionamento em tempo real de um veículo em um processo em execução é usado como exemplo. Em primeiro lugar, são determinadas as informações de imagem em tempo real do veículo A no processo em execução e as informações de posicionamento obtidas por meio do posicionamento de maneira não visual, como um GPS. Em seguida, o veículo A envia uma imagem em tempo real para o servidor. O veículo A pode enviar as informações de posicionamento para o servidor e, após receber as informações de posicionamento, o servidor determina as informações de condição natural de uma localização correspondente. Alternativamente, o veículo A determina as informações de condição natural com base nas informações de posicionamento e, em seguida, envia as informações de condição natural para o servidor. O servidor encontra uma pluralidade de informações de descritor sobre as informações de condição natural na imagem em tempo real e, em seguida, compara uma pluralidade de descritores determinados com descritores que são predefinidos e armazenados em um banco de dados. O banco de dados pertence ao servidor e é configurado para armazenar um quadro-chave de cenário e informações de ponto-chave de cenário do quadro-chave de cenário.
[00208] Quando o banco de dados inclui descritores que são iguais aos da imagem em tempo real, os mesmos descritores no banco de dados são encontrados, e a comparação do descritor é bem-sucedida. Isso prova que os pontos-chave de cenário aos quais os descritores pertencem são o mesmo ponto-chave de cenário. As coordenadas 3D do mesmo ponto- chave de cenário são encontradas e o veículo pode ser posicionado usando as coordenadas 3D do mesmo ponto-chave de cenário. Os descritores na imagem em tempo real podem ser completamente iguais aos do banco de dados. Neste caso, as coordenadas 3D do ponto-chave de cenário ao qual pertencem os mesmos descritores são utilizadas diretamente para o posicionamento. Se os descritores correspondentes no banco de dados puderem ser encontrados para apenas alguns descritores na imagem em tempo real, as coordenadas 3D de um ponto-chave de cenário ao qual os mesmos descritores pertencem são primeiro usadas para posicionamento. Após a conclusão do posicionamento, diferentes informações de descritor são obtidas e, em seguida, as diferentes informações de descritor são atualizadas no banco de dados, para otimizar o banco de dados. Desta forma, o banco de dados otimizado pode ser usado posteriormente para um posicionamento mais preciso.
[00209] Antes do posicionamento ser implementado neste cenário de aplicação, ainda há um processo de construção do banco de dados. No processo de construção do banco de dados, com base em uma grande quantidade de imagens, um ponto-chave de cenário em uma imagem é selecionado com base em um algoritmo de valor de vida, para obter uma grande quantidade de informações de ponto-chave de cenário. Em seguida, as informações de ponto-chave de cenário obtida são comparadas com as informações de ponto-chave de cenário existentes no banco de dados, para atualizar e otimizar o banco de dados, e as informações-chave de cenário que não existem no banco de dados são atualizadas no banco de dados. O algoritmo de valor de vida pode obter com precisão os pontos-chave de cenário representativos por meio de triagem, para que o banco de dados possa ser usado para um posicionamento visual mais preciso.
[00210] A Figura 3 mostra uma possível estrutura de um sistema de posicionamento visual. Um localizador é configurado para obter informações de posicionamento de um dispositivo móvel e, opcionalmente, pode ainda obter informações de postura. Um dispositivo de captura de imagem é configurado para capturar uma imagem do dispositivo móvel. O dispositivo móvel é configurado para receber a imagem enviada pelo dispositivo de captura de imagem e as informações de posicionamento enviadas pelo localizador e, em seguida, enviar a imagem e as informações de posicionamento para um dispositivo de rede. Alternativamente, o dispositivo de rede pode obter diretamente a imagem e as informações de posicionamento sem usar o dispositivo móvel, ou seja, o dispositivo de rede é conectado diretamente ao dispositivo de captura de imagem e ao localizador. Isso não é especificamente limitado aqui. O dispositivo de rede é configurado para: realizar, após receber a imagem, comparação de pontos-chave de cenário para implementar o posicionamento, e atualizar e gerenciar um banco de dados do dispositivo de rede.
[00211] Opcionalmente, em um caso possível, o dispositivo móvel envia as informações de posicionamento para o dispositivo de rede. Em outro caso possível, após determinar as informações de condição natural com base nas informações de posicionamento, o dispositivo móvel envia as informações de condição natural para o dispositivo de rede e não envia as informações de posicionamento. Isso não é especificamente limitado aqui.
[00212] Com base no sistema de posicionamento visual mostrado na Figura 3, uma possível estrutura de entidade é mostrada na Figura 4.
[00213] O localizador pode ser especificamente um sistema de posicionamento global, uma câmera, um radar a laser, um radar de ondas milimétricas ou uma unidade de medição inercial. A IMU pode obter as informações de posicionamento, e pode ainda obter uma postura do dispositivo móvel. O localizador pode ser um componente do dispositivo móvel, ou pode ser um dispositivo externo conectado ao dispositivo móvel. Isso não é especificamente limitado aqui.
[00214] O dispositivo móvel pode ser especificamente um veículo, um telefone móvel, um veículo aéreo não tripulado ou semelhantes.
[00215] O dispositivo de captura de imagem pode ser especificamente uma câmera. O dispositivo de captura de imagem pode ser um componente do dispositivo móvel ou pode ser um dispositivo externo conectado ao dispositivo móvel. Isso não é especificamente limitado aqui.
[00216] O dispositivo de rede pode ser especificamente um servidor em nuvem ou pode ser um dispositivo móvel com capacidade de processamento de dados. Isso não é especificamente limitado aqui. O banco de dados do dispositivo de rede tem um modelo de dados predefinido usado para posicionamento visual, como mostrado na Figura 1. O modelo de dados descreve uma relação entre um quadro-chave de cenário, um ponto-chave de cenário e um descritor.
[00217] Com base nas estruturas anteriores do dispositivo de rede e do dispositivo móvel, as modalidades deste pedido fornecem um método de construção de banco de dados e um método de posicionamento. Este pedido inclui duas partes. Uma parte é um processo de construção de banco de dados em um dispositivo de rede, com o objetivo de gerenciar adequadamente o banco de dados para melhor usar o banco de dados para posicionamento visual. A outra parte é um processo de posicionamento visual após a construção do banco de dados. O seguinte descreve separadamente as duas partes. O processo de construção do banco de dados é mostrado na Figura 5.
[00218] 501: Determinar um conjunto de imagens alvo que satisfaz um requisito de grau de coincidência de imagem predefinido.
[00219] Um dispositivo de rede obtém informações de dados. Nesta modalidade, as informações de dados podem ser informações de imagem, informações de localização, uma postura ou informações de condição natural. Isso não é especificamente limitado aqui.
[00220] Um método usado pelo dispositivo de rede para obter informações de imagem de um dispositivo móvel em um processo em execução é o seguinte: Uma câmera instalada no dispositivo móvel pode ser usada para obter uma imagem fotografada pela câmera; ou o dispositivo móvel pode ter uma função de obtenção de imagem e o dispositivo de rede obtém uma imagem fotografada pelo dispositivo móvel. No processo em execução, o dispositivo móvel fotografa uma imagem em um intervalo de duração específica. A imagem obtida é principalmente informações de imagem de um ambiente em um processo de movimentação do dispositivo móvel. A duração selecionada é definida manualmente e pode ser 0,01s, 0,001s ou semelhantes. Isso não é especificamente limitado aqui.
[00221] As informações de imagem incluem pelo menos uma imagem. A postura e as informações de localização em tempo real do dispositivo móvel são diferentes quando cada imagem é fotografada. A postura indica um ângulo de condução e uma direção de condução do dispositivo móvel. As informações de localização em tempo real do dispositivo móvel podem ser obtidas usando um sistema de posicionamento global GPS, um radar a laser, um radar de ondas milimétricas e / ou uma unidade de medição inercial IMU.
[00222] Nesta modalidade, cada imagem corresponde uma-a-uma a uma localização e uma postura do dispositivo móvel quando a imagem é fotografada. Para obter detalhes, consulte a Tabela 1. Tabela 1 Imagem Coordenadas 3D de uma Postura do localização do dispositivo dispositivo móvel móvel durante a fotografia durante a de imagem em relação a um fotografia de sistema de coordenadas imagem mundial (X1, Y1, Z1) 15 graus frente esquerda (X2, Y2, Z2) 30 graus frente esquerda (X3, Y3, Z3) 45 graus frente esquerda
[00223] Depois que as informações de imagem são obtidas, o conjunto de imagens alvo que satisfaz o requisito de grau de coincidência predefinido é selecionado com base nas informações de dados. Opcionalmente, um processo para determinar o conjunto de imagens alvo pode ser o seguinte: O dispositivo móvel pode primeiro realizar a triagem nas imagens obtidas com base no requisito de grau de coincidência predefinido e, em seguida, enviar um resultado de triagem para o dispositivo de rede. O processo de triagem de imagem alvo pode, alternativamente, ser realizado pelo dispositivo de rede. Para ser mais específico, o dispositivo de rede realiza a triagem após a obtenção das imagens, para obter o conjunto de imagens alvo. Isso não é especificamente limitado aqui.
[00224] Deve ser notado que, quando o dispositivo móvel segue em linha reta e vira, as bases para determinar o conjunto de imagens alvo são diferentes. Quando o veículo segue em frente, o conjunto de imagens alvo que satisfaz o requisito precisa ser determinado com base em um espaçamento de distância específico. Quando o veículo vira, o conjunto de imagens alvo que satisfaz os requisitos precisa ser determinado com base em um espaçamento angular específico. Passos específicos são mostrados na Figura 6.
[00225] A: Selecionar uma imagem com base em um espaçamento de distância (ou espaçamento angular) d .
[00226] Um espaçamento de distância ou um espaçamento angular é definido com antecedência, e uma imagem a ser selecionada é determinada com base no espaçamento. Por exemplo, em uma estrada reta, uma imagem é obtida cada vez que o veículo se desloca por 1 m. Alternativamente, em uma estrada curva, uma imagem é obtida cada vez que um ângulo de condução do veículo muda em 5 graus.
[00227] B: Determinar um grau de coincidência e imagens selecionadas com base no espaçamento de distância atual (ou espaçamento angular) d .
[00228] Depois que as imagens são selecionadas, um grau de coincidência de duas imagens adjacentes nas imagens selecionadas é calculado usando a seguinte fórmula: grau de coincidência de imagens = quantidade n de mesmos pontos-chave de cenário em uma imagem atual e uma imagem / quantidade adjacente n de pontos-chave de cenário diferente na imagem atual e na imagem adjacente, onde uma quantidade de pontos-chave de cenário na imagem atual é n , e n = n + n .
[00229] C: Determinar se uma diferença entre o grau de coincidência das imagens selecionadas e um limiar de grau de coincidência predefinido está dentro de um intervalo de precisão predefinido.
[00230] Uma fórmula de cálculo é |α∗ − α| < Δ .
[00231] Na fórmula anterior, α∗ é o limiar de coincidência predefinido, e α∗ geralmente é 1. Δ é um valor de precisão predefinido. Um intervalo de valores de Δ é de 0,1 a 0,2. α∗ e Δ podem, alternativamente, ser definidos para outros valores. Isso não é especificamente limitado aqui. O intervalo de precisão predefinido é de 0 a Δ .
[00232] D: Se a diferença entre o grau de coincidência das imagens selecionadas e o limiar de grau de coincidência predefinido não estiver dentro do intervalo de precisão predefinido, recalcular o espaçamento de distância (ou espaçamento angular).
[00233] Se a diferença entre o grau de coincidência das imagens selecionadas e o limiar de grau de coincidência predefinido não estiver dentro do intervalo de precisão predefinido, o espaçamento de distância para a seleção da imagem é redefinido. Primeiro, é determinado um espaçamento de distância (ou espaçamento angular) Δd que precisa ser aumentado.
[00234] Quando o dispositivo móvel vai reto , Δd = d (α∗ − α).
[00235] d é uma distância de espaçamento para seleção de imagem em um momento anterior, e d , α∗ , e foram obtidos nos passos anteriores.
[00236] Um novo espaçamento de distância para a seleção do quadro-chave de cenário é obtido, ou seja, d = d + Δd .
[00237] d é redeterminado como o espaçamento de distância para obter uma imagem de quadro-chave de cenário. O processo anterior, começando com o passo A, é realizado novamente, até que um espaçamento de distância d seja obtido, onde um grau de coincidência satisfaz uma condição predefinida quando uma imagem é selecionada com base no espaçamento de distância.
[00238] E: Se a diferença entre o grau de coincidência das imagens selecionadas e o limiar de grau de coincidência predefinido estiver dentro do intervalo de precisão predefinido, determinar que as imagens selecionadas pertencem ao conjunto de imagens alvo.
[00239] Se a diferença entre o grau de coincidência das imagens selecionadas e o limiar de grau de coincidência predefinido estiver dentro do intervalo de precisão predefinido, uma imagem selecionada com base no espaçamento de distância d é uma imagem alvo. O conjunto de imagens alvo é obtido selecionando uma pluralidade de imagens alvo com base em d .
[00240] Quando o dispositivo móvel gira, um espaçamento angular que satisfaça o requisito de grau de coincidência é primeiro determinado e, em seguida, a triagem de imagem é realizada. Um processo específico é semelhante a uma forma de triagem de imagem com base no espaçamento de distância. Os detalhes não são descritos aqui novamente.
[00241] 502: Obter um conjunto de informações de ponto-chave de cenário com base no conjunto de imagens alvo e informações de condição natural correspondentes a cada imagem.
[00242] O dispositivo de rede processa o conjunto de imagens alvo para obter um ponto-chave de cenário. O ponto- chave de cenário pode ser considerado como uma amostra cujo valor de escala de cinza é notavelmente diferente de um valor de escala de cinza de outra amostra na imagem alvo. Em seguida, o dispositivo de rede determina, com base em uma localização do dispositivo móvel quando cada imagem alvo é fotografada, informações de condição natural da localização, e estabelece uma correspondência entre um ponto-chave de cenário e as informações de condição natural, para obter informações de ponto-chave de cenário. Pode ser entendido que, além das informações de condição natural, as informações de ponto-chave de cenário incluem adicionalmente coordenadas 3D, coordenadas de pixel e informações de descritor do ponto- chave de cenário.
[00243] Nesta modalidade, uma pluralidade de imagens pode incluir um mesmo ponto-chave de cenário. Portanto, um ponto-chave de cenário pode corresponder um-a-um às informações de condição natural, ou um ponto-chave de cenário pode corresponder a uma pluralidade de tipos de informações de condição natural. As informações de descritor variam com as informações de condição natural. Portanto, uma parte de informações de ponto-chave de cenário pode incluir uma pluralidade de informações de descritor.
[00244] Por exemplo, o conjunto de imagens alvo inclui uma imagem alvo 1 e uma imagem alvo 2. A imagem alvo 1 é fotografada em um dia ensolarado com uma intensidade de iluminação de 400 lx. A imagem alvo 2 é fotografada em um dia nublado com uma intensidade de iluminação de 300 lx. A imagem alvo 1 inclui um ponto-chave de cenário 1 e um ponto- chave de cenário 2. A imagem alvo 2 inclui o ponto-chave de cenário 2 e um ponto-chave de cenário 3. O conjunto de imagens alvo é analisado para obter o ponto-chave de cenário 1, o ponto-chave de cenário 2 e o ponto-chave de cenário 3. O ponto-chave de cenário 1 tem um descritor que corresponde às informações de condição natural da imagem alvo 1. O ponto- chave de cenário 2 tem dois descritores que correspondem respectivamente às informações de condição natural da imagem alvo 1 e informações de condição natural da imagem alvo 2. O ponto-chave de cenário 3 tem um descritor que corresponde às informações de condição natural da imagem alvo 2.
[00245] Depois que um conjunto de pontos-chave de cenário é obtido, um ponto-chave de cenário representativo é selecionado. Pode ser entendido que o posicionamento realizado usando um objeto estático é mais preciso. Portanto, o ponto-chave de cenário representativo pode ser um ponto- chave de cenário relacionado a um objeto estático, como uma placa de sinalização, uma placa de sinalização rodoviária ou um edifício em uma estrada. Especificamente, o ponto-chave de cenário representativo é selecionado com base em um valor de vida do ponto-chave de cenário. O valor de vida pode indicar uma probabilidade de que o ponto-chave de cenário seja um ponto-chave de cenário estático. Um valor de vida maior indica uma probabilidade maior de que o ponto-chave de cenário seja o ponto-chave de cenário estático. Primeiro, o valor de vida do ponto-chave de cenário é calculado a partir da perspectiva de um único veículo e a triagem do ponto- chave de cenário primário é realizada. Em segundo lugar, porque um ponto-chave de cenário é geralmente observado por uma pluralidade de dispositivos móveis, um valor de vida de um ponto-chave de cenário obtido através da triagem primária precisa ser calculado a partir de uma perspectiva da pluralidade de dispositivos móveis e a triagem secundária é realizada. A pluralidade de dispositivos móveis significa pelo menos dois dispositivos móveis. Para obter detalhes, consulte os seguintes passos 503 e 504 nesta modalidade.
[00246] 503: Determinar, no conjunto de informações de ponto-chave de cenário, as primeiras informações de ponto- chave de cenário correspondentes a um ponto-chave de cenário cujo valor de vida em um único dispositivo móvel é maior do que um primeiro limiar de valor de vida predefinido.
[00247] Com referência à Figura 7, um processo de triagem do ponto-chave de cenário inclui os seguintes passos.
[00248] A: Calcular, com base em uma relação de modelo predefinida, um primeiro valor de vida do ponto-chave de cenário quando o ponto-chave de cenário é observado em um único veículo.
[00249] Em primeiro lugar, o treinamento de modelo é realizado para obter uma relação entre uma quantidade de vezes que o ponto-chave de cenário é observado e um valor de vida do ponto-chave de cenário, como mostrado na Figura 8. Pode-se aprender que uma curva normal é apresentada entre a quantidade n de vezes que o ponto-chave de cenário é observado e o valor de vida f do ponto-chave de cenário. Do ponto de vista do único dispositivo móvel, quando um ponto-
chave de cenário aparece apenas em alguns quadros, é muito provável que o ponto-chave de cenário seja ruído e precise ser descartado. Quando um ponto-chave de cenário aparece em uma quantidade relativamente grande de quadros, é muito provável que o ponto-chave de cenário seja uma imagem de outro dispositivo móvel que se move em sincronia com o dispositivo móvel nesta modalidade e também precisa ser descartado.
[00250] Um valor médio n e uma variância da quantidade de vezes que o ponto-chave de cenário é observado são determinados de acordo com a Figura 8. Em seguida, um primeiro valor de vida de cada ponto-chave de cenário no conjunto de pontos-chave de cenário é calculado separadamente. Uma fórmula de cálculo é: ( ) f= e √
[00251] Na fórmula anterior, n indica uma quantidade de vezes que um ponto-chave de cenário no conjunto de pontos- chave de cenário é observado em um único veículo.
[00252] B: Determinar se o primeiro valor de vida é maior que o primeiro limiar predefinido.
[00253] Quando um primeiro valor de vida de um ponto- chave de cenário é maior do que o primeiro limiar predefinido, o ponto-chave de cenário é um primeiro ponto- chave de cenário e, então, se o primeiro ponto-chave de cenário obtido após a triagem primária satisfizer um requisito de valor de vida é determinado a partir da perspectiva da pluralidade de dispositivos móveis.
[00254] Se um primeiro valor de vida de um ponto- chave de cenário for menor ou igual ao primeiro limiar predefinido, isso indica que o primeiro valor de vida do ponto-chave de cenário é excessivamente baixo e o ponto- chave de cenário é descartado.
[00255] 504: Determinar, nas primeiras informações de ponto-chave de cenário, segundas informações de ponto-chave de cenário correspondentes a um ponto-chave de cenário cujo valor de vida na pluralidade de dispositivos móveis é maior do que um segundo limiar de valor de vida predefinido.
[00256] C: Calcular um segundo valor de vida do ponto- chave de cenário quando o ponto-chave de cenário é observado na pluralidade de dispositivos móveis.
[00257] O primeiro ponto-chave de cenário obtido pela pluralidade de dispositivos móveis pode ser determinado com base em coordenadas 3D ou coordenadas de pixel do ponto- chave de cenário. Alternativamente, se os pontos-chave de cenário obtidos pela pluralidade de dispositivos móveis são um mesmo ponto-chave de cenário pode ser determinado de outra maneira. Isso não é especificamente limitado aqui. Por exemplo, nos pontos-chave de cenário obtidos pela pluralidade de dispositivos móveis, os pontos-chave de cenário cujas coordenadas 3D são iguais ou cuja diferença de coordenadas 3D está dentro de um intervalo de diferença predefinida são um mesmo ponto-chave de cenário.
[00258] Um segundo valor de vida do primeiro ponto- chave de cenário observado pela pluralidade de dispositivos móveis é calculado com base na seguinte fórmula:
[00259] Na fórmula anterior, f é o valor de vida do ponto-chave de cenário no único dispositivo móvel, e B é um coeficiente de peso correspondente a cada dispositivo móvel. Para um ponto-chave de cenário, um coeficiente de peso correspondente a cada um da pluralidade de dispositivos móveis é geralmente diferente. O coeficiente de peso β é calculado com base na seguinte fórmula: β = γ + γ + γ , onde γ é um índice de continuidade de tempo do ponto-chave de cenário observado na pluralidade de dispositivos móveis, γ é um índice de continuidade geométrica do ponto-chave de cenário observado na pluralidade de dispositivos móveis, γ é um índice de consistência de descrição do ponto-chave de cenário observado na pluralidade de dispositivos móveis, e 1 Δ ≤Δ γ = 1 + tanh + Δ <𝛥 <Δ 0 Δ ≥Δ
[00260] Δ é um intervalo de tempo para um mesmo ponto- chave observado por diferentes dispositivos móveis, Δ e Δ são valores predefinidos. Pode ser aprendido que o intervalo de tempo para o mesmo ponto-chave de cenário observado pelos diferentes dispositivos móveis está negativamente correlacionado a γ .
[00261] Os processos de cálculo de γ e γ são semelhantes a um processo de cálculo de γ . Os detalhes não são descritos aqui novamente. Deve ser notado que, quando o índice de continuidade geométrica γ é calculado, é definido como uma distância euclidiana para o mesmo ponto- chave de cenário observado pelos diferentes dispositivos móveis. Quando a consistência de descrição γ é calculada, é definido como uma distância de descritor para o mesmo ponto-chave de cenário observado pelos diferentes dispositivos móveis.
[00262] D: Determinar se o valor do segundo valor de vida é maior que o segundo limiar predefinido.
[00263] O primeiro ponto-chave de cenário cujo segundo valor de vida é maior ou igual ao segundo limiar predefinido é determinado como um segundo ponto-chave de cenário. O segundo ponto-chave de cenário é um ponto-chave de cenário maduro representativo e as informações sobre o segundo ponto-chave de cenário devem ser adicionadas a um banco de dados.
[00264] Se o valor de vida do primeiro ponto-chave de cenário for menor do que o segundo limiar de valor de vida predefinido, o primeiro ponto-chave de cenário é descartado.
[00265] 505: Quando as segundas informações de ponto- chave de cenário não correspondem às informações de ponto- chave de cenário predefinidas no banco de dados, construir o banco de dados com base nas segundas informações de ponto- chave de cenário.
[00266] Depois que as segundas informações de ponto- chave de cenário a serem adicionadas ao banco de dados são determinadas, se as segundas informações de ponto-chave de cenário existem no banco de dados ainda precisam ser determinadas, para evitar que as informações de ponto-chave de cenário sejam repetidamente adicionadas ao banco de dados.
[00267] As segundas informações de ponto-chave de cenário são comparadas com as informações de ponto-chave de cenário predefinidas no banco de dados. Se as segundas informações de ponto-chave de cenário não correspondem às informações de ponto-chave de cenário predefinidas no banco de dados, o banco de dados será construído com base nas segundas informações de ponto-chave de cenário.
[00268] Nesta modalidade, após as segundas informações de ponto-chave de cenário serem obtidas por meio de triagem na maneira anterior, quando as segundas informações de ponto-chave de cenário relacionadas a um tipo de informações de condição natural não existem no banco de dados, o banco de dados é construído com base nas segundas informações de ponto-chave de cenário. Isso garante um posicionamento mais preciso quando o banco de dados construído é usado para posicionamento.
[00269] Nesta modalidade, uma parte de informações de ponto-chave de cenário inclui coordenadas 3D, coordenadas de pixel, informações de descritor relacionadas à condição natural de um ponto-chave de cenário e um ID de um quadro- chave ao qual o ponto-chave de cenário pertence. As coordenadas 3D, as coordenadas de pixel e o ID de quadro- chave ao qual o ponto-chave de cenário pertence são índices estáticos do ponto-chave de cenário e geralmente são fixos. As informações de descritor são um índice dinâmico, e variam com uma condição natural. Portanto, um possível caso em que as informações de ponto-chave de cenário predefinidas no banco de dados não correspondem às segundas informações de ponto-chave de cenário é que as segundas informações de ponto-chave de cenário não existem no banco de dados, ou que as segundas informações de ponto-chave de cenário existem no banco de dados, mas as informações de descritor incluídas nas segundas informações de ponto-chave de cenário no banco de dados são diferentes daquelas incluídas nas segundas informações de ponto-chave de cenário determinadas na imagem. Com referência à Figura 9, o seguinte fornece uma descrição.
[00270] 901: Determinar um conjunto de imagens alvo que satisfaz um requisito de grau de coincidência de imagem predefinido.
[00271] 902: Obter um conjunto de informações de ponto-chave de cenário com base no conjunto de imagens alvo e informações de condição natural correspondentes a cada imagem.
[00272] 903: Determinar, no conjunto de informações de ponto-chave de cenário, as primeiras informações de ponto- chave de cenário correspondentes a um ponto-chave de cenário cujo valor de vida em um único dispositivo móvel é maior do que um primeiro limiar de valor de vida predefinido.
[00273] 904: Determinar, nas primeiras informações de ponto-chave de cenário, as segundas informações de ponto- chave de cenário correspondentes a um ponto-chave de cenário cujo valor de vida em uma pluralidade de dispositivos móveis é maior do que um segundo limiar de valor de vida predefinido.
[00274] 905: Quando as segundas informações de ponto- chave de cenário não existem em um banco de dados, adicionar as segundas informações de ponto-chave de cenário ao banco de dados.
[00275] É determinado se um segundo ponto-chave de cenário existe no banco de dados. Se o segundo ponto-chave de cenário não existir no banco de dados, as segundas informações de ponto-chave de cenário correspondentes também não existirão no banco de dados. As informações sobre o segundo ponto-chave de cenário são adicionadas ao banco de dados.
[00276] Com referência à Figura 10, determinar se um segundo ponto-chave de cenário existe em um banco de dados inclui especificamente os seguintes passos: A: Determinar as coordenadas 3D do segundo ponto-chave de cenário correspondentes às segundas informações de ponto- chave de cenário; primeiro, as coordenadas 3D do segundo ponto-chave de cenário correspondentes às segundas informações de ponto- chave de cenário são determinadas.
Um ponto-chave de cenário pode ser observado pela pluralidade de dispositivos móveis.
Portanto, quando um ponto-chave de cenário é observado pela pluralidade de dispositivos móveis, as coordenadas 3D do ponto-chave de cenário observado pela pluralidade de dispositivos móveis são primeiro obtidas e, em seguida, um valor médio p e um desvio padrão da pluralidade de coordenadas 3D são calculados.
As coordenadas 3D que são do ponto-chave de cenário e que são medidas por cada veículo são comparadas com o valor médio p.
Quando uma distância euclidiana entre as coordenadas 3D medidas e o valor médio é maior que 3σ, isso indica que um erro das coordenadas 3D medidas pelo veículo é relativamente grande e as coordenadas 3D são excluídas.
Em seguida, o valor médio p e o desvio padrão das coordenadas 3D do ponto-chave de cenário são recalculados usando as coordenadas 3D restantes, e se as distâncias euclidianas entre todas as coordenadas 3D e um valor médio recalculado p são menores do que 3σ é determinado.
Esta operação é repetida até que as distâncias euclidianas entre todas as coordenadas 3D restantes e um valor médio p sejam menores que 3σ, e o valor médio p das coordenadas neste momento seja emitido como as coordenadas 3D do ponto-chave de cenário; por exemplo, existem N veículos.
As coordenadas 3D de um mesmo ponto-chave de cenário observado pelos veículos N são 3D1, 3D2, 3D3,... e 3Dn, respectivamente.
Primeiro, (3D1 + 3D2 + 3D3 +... 3Dn) / n = / é obtido por meio de cálculo; se 3D1–p < 3𝜎, 3D2–p < 3𝜎, … , e 3Dn–p < 3𝜎 são determinados; se sim, p são as coordenadas 3D do ponto-chave de cenário.
Se uma distância euclidiana entre pelo menos uma das coordenadas 3D (por exemplo, 3D1) e p for maior que 3σ, 3D1 será excluído.
Depois disso, 3D2, 3D3,... e 3Dn são calculados para obter p e, em seguida, os passos anteriores são realizadas novamente.
Deve ser notado que 3σ é um valor fixo e é predefinido por um sistema.
Um valor de 3σ não é especificamente limitado aqui; B: Determinar, com base nas coordenadas 3D do segundo ponto-chave de cenário, se o segundo ponto-chave de cenário existe no banco de dados; depois que as coordenadas 3D do ponto-chave de cenário são obtidas por meio de cálculo, as coordenadas 3D do ponto- chave de cenário são comparadas com as coordenadas 3D de qualquer ponto-chave de cenário no banco de dados de imagem.
Quando uma distância euclidiana entre as coordenadas 3D do ponto-chave de cenário e as coordenadas 3D do ponto-chave de cenário no banco de dados de imagem é menor que σ , é determinado que o ponto-chave de cenário e o ponto-chave de cenário no banco de dados são o mesmo ponto-chave de cenário.
Quando uma distância euclidiana entre as coordenadas 3D de cada ponto-chave de cenário predefinido no banco de dados e as coordenadas 3D do ponto-chave de cenário é maior do que um primeiro limiar predefinido, é determinado que o ponto- chave de cenário é um novo ponto-chave de cenário, e novas informações de ponto-chave de cenário (em outras palavras, as segundas informações de ponto-chave de cenário) são adicionadas ao banco de dados.
Um valor específico de σ não está limitado aqui.
Além disso, nesta modalidade, uma quantidade de novos pontos-chave de cenário também não é limitada; as novas informações de ponto-chave de cenário adicionadas ao banco de dados incluem coordenadas de pixel, coordenadas 3D, um ID de quadro-chave e informações de descritor alvo do novo ponto-chave de cenário.
As novas informações de ponto-chave de cenário podem incluir ainda informações de descritor além das informações de descritor alvo.
Isso não é especificamente limitado aqui; com referência à Figura 12 (a), por exemplo, em comparação com uma imagem, o banco de dados não inclui um ponto-chave de cenário 4 e ainda não inclui um descritor 10 do ponto-chave de cenário 4. O descritor 10 é um descritor diferente nesta modalidade.
Neste caso, as segundas informações de ponto-chave de cenário incluindo o descritor diferente, nomeadamente, informações sobre o ponto-chave de cenário 4, são adicionadas ao banco de dados; alternativamente, 906: Quando as segundas informações de ponto-chave de cenário existem em um banco de dados e as segundas informações de ponto-chave de cenário não incluem informações de descritor alvo sobre as informações de condição natural alvo, adicionar as informações de descritor alvo às segundas informações de ponto-chave de cenário predefinidas no banco de dados; depois de se um segundo ponto-chave de cenário existe no banco de dados é determinado com base nos passos A e B no passo anterior 905 nesta modalidade, se as segundas informações de ponto-chave de cenário existirem no banco de dados, se o segundo ponto-chave de cenário inclui as informações de descritor alvo sobre as informações de condição natural alvo é determinado.
Detalhes a seguir: C: Determinar pelo menos uma parte das informações de descritor do segundo ponto-chave de cenário predefinido no banco de dados; quando o segundo ponto-chave de cenário existe no banco de dados, porque o segundo ponto-chave de cenário tem descritores diferentes para informações de condição natural diferentes, as segundas informações de ponto-chave de cenário predefinidas no banco de dados incluem pelo menos uma parte das informações de descritor; D: Determinar se pelo menos uma parte de informações de descritor inclui uma parte de informações de descritor, onde uma distância entre um descritor correspondente à uma parte de informações de descritor e um descritor correspondente às informações de descritor alvo é menor do que um limiar de distância predefinido; se a pelo menos uma parte de informações de descritor no banco de dados inclui a uma parte de informações de descritor é determinado, onde a distância entre o descritor correspondente a uma parte de informações de descritor e o descritor correspondente às informações de descritor alvo do segundo ponto-chave de cenário determinado na imagem é menor que o limiar de distância predefinido; nesta modalidade, as informações de descritor alvo são informações de descritor sobre as informações de condição natural alvo.
Em um caso possível, o descritor correspondente às informações de descritor alvo é um descritor que possui uma soma mínima de distâncias longe de outros descritores em todos os descritores do ponto-chave de cenário ao qual as informações de descritor alvo pertencem. Em outro caso possível, o descritor correspondente às informações de descritor alvo é qualquer um de todos os descritores do ponto-chave de cenário ao qual as informações de descritor alvo pertencem; quando uma distância entre um descritor alvo e cada um de pelo menos um descritor no banco de dados é maior do que o limiar de distância predefinido, é determinado que o descritor alvo é um novo descritor. Quando a distância entre um descritor alvo e um descritor no banco de dados é menor ou igual ao limiar de distância predefinido, é determinado que o descritor alvo e o descritor são o mesmo descritor. Se o descritor alvo for o novo descritor, as informações sobre o descritor alvo serão armazenadas no banco de dados. Se o descritor alvo e o descritor forem o mesmo descritor, nenhuma atualização será realizada. Nesta modalidade, uma quantidade de novos descritores não é limitada aqui.
[00277] Com referência à Figura 12 (b), por exemplo, o banco de dados inclui um ponto-chave de cenário 1, um ponto-chave de cenário 2 e um ponto-chave de cenário 3 que são iguais aos da imagem alvo, mas o ponto-chave de cenário 3 no banco de dados não inclui um descritor alvo, nomeadamente, um descritor 9, do ponto-chave de cenário 3 na imagem. Neste caso, as informações de descritor correspondentes ao descritor 9 diferente são adicionadas ao banco de dados.
[00278] Nesta modalidade, dois casos de correspondência de ponto-chave de cenário na imagem e no banco de dados são descritos. Dessa forma, quando as informações de banco de dados são atualizadas e aprimoradas, apenas uma parte diferente das informações de ponto-chave de cenário no banco de dados é atualizada. Isso evita um grande aumento da quantidade de dados no banco de dados e facilita o gerenciamento do banco de dados.
[00279] Além disso, após o ponto-chave de cenário ou o descritor ser atualizado, para otimizar o banco de dados e gerenciar o banco de dados mais facilmente, alguns pontos- chave de cenário podem ainda ser excluídos usando uma condição de triagem e apenas um ponto-chave de cenário que satisfaz um requisito é retido. O ponto-chave de cenário é mantido de acordo com duas regras: a. Reter ao máximo um ponto-chave de cenário que é frequentemente usado durante o posicionamento. Um índice MNI é usado para representação. MNI é calculado com base na seguinte fórmula: MNI = na fórmula anterior, M é uma quantidade total de vezes de posicionamento em uma localização de um ponto-chave de cenário e m indica uma quantidade de vezes que o ponto- chave de cenário é usado durante o posicionamento; b. Reter ao máximo um ponto-chave de cenário com poucas informações de descritor dinâmicas. Um índice FNI é usado para representação. FNI é calculado com base na seguinte fórmula: FNI = log na fórmula anterior, é uma porcentagem de uma quantidade de descritores de um ponto-chave de cenário em uma quantidade total de descritores em um quadro-chave de cenário ao qual o ponto-chave de cenário pertence.
[00280] De acordo com as duas regras anteriores, uma fórmula de cálculo da pontuação de controle de número de recurso FNCS é obtida: FNCS = log
[00281] Um valor de FNCS maior de um ponto-chave de cenário indica que o ponto-chave de cenário é usado com mais frequência e tem menos descritores, indicando que o ponto- chave de cenário se adapta de forma robusta a uma mudança de condição natural. Portanto, um ponto-chave de cenário com um FNCS baixo precisa ser excluído durante o gerenciamento de ponto-chave de cenário.
[00282] O anterior descreve o processo de construção do banco de dados. Com referência à Figura 11, o seguinte descreve o uso e a atualização síncrona do banco de dados durante o posicionamento.
[00283] 1101: Obter uma imagem em tempo real.
[00284] Em um processo em execução de um dispositivo móvel alvo, as informações de imagem do dispositivo móvel alvo são geralmente obtidas em tempo real por uma câmera instalada no dispositivo móvel alvo ou por uma câmera instalada em uma estrada com base em um espaçamento de distância específico. Pode-se entender que a imagem em tempo real obtida é uma imagem de uma estrada e um ambiente ao redor de um veículo em andamento.
[00285] Depois de fotografar a imagem em tempo real, a câmera pode enviar diretamente a imagem em tempo real para um dispositivo de rede ou pode enviar a imagem em tempo real para um dispositivo de rede usando o dispositivo móvel alvo. Isso não é especificamente limitado aqui. Além disso, o dispositivo móvel alvo também pode ter uma função de obtenção de imagem.
[00286] 1102: Determinar pelo menos uma parte das primeiras informações de descritor com base na imagem em tempo real.
[00287] O dispositivo de rede processa a imagem em tempo real para obter pelo menos uma parte das primeiras informações de descritor. As primeiras informações de descritor incluem informações de condição natural alvo quando a imagem em tempo real é fotografada. As informações de condição natural alvo podem ser determinadas pelo dispositivo de rede, ou podem ser determinadas pelo dispositivo móvel e então enviadas para o dispositivo de rede. Isso não é especificamente limitado aqui.
[00288] As informações de condição natural alvo quando a imagem em tempo real é fotografada são determinadas com base nas informações de posicionamento em tempo real do dispositivo móvel. As informações de posicionamento em tempo real do dispositivo móvel podem ser obtidas usando um sistema de posicionamento global GPS, um radar a laser e / ou um radar de ondas milimétricas ou podem ser obtidas usando uma unidade de medição inercial IMU. Isso não é especificamente limitado aqui. Depois que as informações de posicionamento em tempo real são obtidas, as informações de condição natural de uma localização correspondente são determinadas como as informações de condição natural alvo.
[00289] 1103: Comparar as informações de descritor predefinidas em um banco de dados com pelo menos uma parte das primeiras informações de descritor para determinar as mesmas informações de descritor.
[00290] Imagens de um mesmo cenário sob diferentes ângulos de visão, condições meteorológicas e condições de iluminação são diferentes. Por exemplo, os pixels ao redor de um ponto de canto de uma placa de sinalização na estrada em um dia ensolarado são notavelmente diferentes dos pixels ao redor do ponto de canto em um dia nublado. Para outro exemplo, os pixels em torno de um ponto do canto frontal da placa de sinalização também são notavelmente diferentes dos pixels em torno de um ponto de canto traseiro da placa de sinalização. Desta forma, os descritores de um ponto de canto de uma placa de sinalização em uma mesma localização variam muito com clima diferente, iluminação diferente e ângulos de visão diferentes. Portanto, pode ser entendido que a imagem em tempo real fotografada sob uma condição natural correspondente às informações de condição natural alvo tem uma condição natural única. Portanto, uma parte das informações de ponto-chave de cenário na imagem em tempo real inclui apenas um tipo de informações de descritor. No entanto, uma imagem em tempo real tem uma pluralidade de pontos-chave de cenário. Portanto, há pelo menos uma informação de descritor, incluindo as informações de condição natural alvo na imagem em tempo real. Em um caso possível, existem N partes de primeiras informações de descritor na imagem em tempo real e M partes de primeiras informações de descritor nas N partes de primeiras informações de descritor incluem as informações de condição natural alvo. Ambos N e M são números inteiros positivos e M é menor ou igual a N.
[00291] Cada uma das pelo menos uma parte das primeiras informações de descritor é comparada com as informações de descritor predefinidas no banco de dados, para determinar as mesmas informações de descritor. Por exemplo, a imagem em tempo real inclui um descritor 1, um descritor 2,... e um descritor N, que são comparados separadamente com os descritores no banco de dados. Verificou-se que o banco de dados inclui descritores que são iguais ao descritor 1, um descritor 5,..., um descritor N – 1 e o descritor N.
[00292] Uma maneira de determinar se um descritor é o mesmo que um descritor no banco de dados é semelhante a uma maneira de determinar se os descritores são os mesmos durante a construção do banco de dados, em outras palavras, a determinação é realizada com base na distância entre os descritores. Os detalhes não são descritos aqui novamente.
[00293] Nesta modalidade, as informações de descritor predefinidas no banco de dados são obtidas após o banco de dados ser construído de acordo com os passos 501 a 505 na modalidade anterior. Os detalhes não são descritos aqui novamente.
[00294] 1104: Posicionar a imagem em tempo real usando as mesmas informações de descritor.
[00295] Primeiro, um mesmo descritor é determinado, um ponto-chave de cenário ao qual o mesmo descritor pertence é pesquisado no banco de dados e as coordenadas 3D do ponto- chave de cenário são encontradas. Em seguida, as coordenadas 3D do ponto-chave de cenário são usadas para o posicionamento.
[00296] Por exemplo, na Figura 12 (a), a imagem em tempo real é comparada com o banco de dados, e verifica-se que os descritores correspondentes podem ser encontrados no banco de dados para o descritor 1 e um descritor 4. Portanto, é determinado que um ponto-chave de cenário 1 ao qual o descritor 1 pertence e um ponto-chave de cenário 1 ao qual o descritor 1 no banco de dados pertence são o mesmo ponto- chave de cenário, e um ponto-chave de cenário 4 ao qual o descritor 4 pertence e um ponto-chave de cenário 4 ao qual o descritor 4 no banco de dados pertence são um mesmo ponto- chave de cenário. As coordenadas 3D dos mesmos pontos-chave de cenário são encontradas: coordenadas 3D 1 e coordenadas 3D 2. Em seguida, o cálculo de posicionamento é realizado usando as coordenadas 3D 1 e as coordenadas 3D 2.
[00297] O dispositivo de rede realiza o cálculo de posicionamento usando as mesmas informações de ponto-chave de cenário. Depois que o mesmo ponto-chave de cenário no banco de dados é determinado, uma pose do dispositivo móvel é obtida com base em um algoritmo predefinido. Nesta modalidade, uma fórmula de cálculo de posicionamento é: 𝑟(𝑇 ) = ∑ 𝜋 (𝑇 ) 𝑇 (𝜋 ) 𝑝 − 𝑝
[00298] Na fórmula anterior, T é a pose a ser resolvida do dispositivo móvel; p são coordenadas de pixel de um ponto-chave de cenário na imagem em tempo real, e as coordenadas de pixel são coordenadas de pixel em relação à imagem em tempo real; p são coordenadas de pixel de um ponto-chave de cenário que correspondem p em um banco de dados de mapa, e as coordenadas de pixel são coordenadas de pixel relativas ao banco de dados. i varia de 1 a n, indicando que há um total de n pontos-chave de cenário na imagem em tempo real que correspondem aos pontos-chave de cenário no banco de dados. π é uma matriz de parâmetro intrínseca da câmera, e pode ser usada para converter coordenadas 3D em coordenadas de pixel. As coordenadas 3D relativas ao veículo são obtidas realizando a conversão (π ) em p e, em seguida, as coordenadas 3D relativas a um sistema de coordenadas mundial são obtidas realizando a conversão T nas coordenadas 3D obtidas em relação ao veículo. Então, as coordenadas de pixel relativas ao banco de dados são obtidas realizando a conversão π T nas coordenadas 3D obtidas em relação ao sistema de coordenadas mundial. T é uma pose de um quadro- chave ao qual o ponto-chave de cenário p no banco de dados pertence em relação ao sistema de coordenadas mundial. As coordenadas de pixel obtidas por meio da conversão são consistentes com as coordenadas de pixel p de um ponto- chave de cenário correspondente no banco de dados, e as coordenadas de pixel são subtraídas para obter um modelo de erro de reprojeção. Finalmente, uma pose em tempo real T do veículo pode ser obtida minimizando um valor do modelo de erro de reprojeção usando um método de otimização.
[00299] O dispositivo móvel realiza o posicionamento com base em um resultado de cálculo. Depois de obter um resultado de posicionamento por meio de cálculo, o dispositivo de rede retorna o resultado de posicionamento para o dispositivo móvel, para facilitar o dispositivo móvel na realização de uma operação de posicionamento.
[00300] Deve ser notado que o cálculo do posicionamento pode ser realizado alternativamente pelo dispositivo móvel. Depois de determinar o mesmo ponto-chave de cenário no banco de dados, o dispositivo de rede envia informações sobre o mesmo ponto-chave de cenário para o dispositivo móvel e o dispositivo móvel obtém informações de posicionamento com base no algoritmo predefinido e realiza a operação de posicionamento.
[00301] Nesta modalidade, as informações que são sobre o mesmo ponto-chave de cenário e que são enviadas pelo dispositivo de rede para o dispositivo móvel incluem especificamente coordenadas de pixel do ponto-chave de cenário e uma pose de um quadro-chave ao qual o ponto-chave de cenário pertence, e podem adicionalmente incluir coordenadas 3D do ponto-chave de cenário. Isso não é especificamente limitado aqui.
[00302] Nesta modalidade, é descrito um processo específico no qual o banco de dados construído é usado para posicionamento. Após a construção do banco de dados de acordo com a Figura 5, porque o banco de dados inclui mais informações de descritor de diferentes condições naturais, quando o banco de dados é usado para posicionamento, mais informações do mesmo descritor no banco de dados podem ser correspondidas para a imagem em tempo real. Isso torna o posicionamento mais preciso.
[00303] Ressalta-se que, no processo de posicionamento, o banco de dados pode adicionalmente ser atualizado com base em diferentes informações de descritor, tornando mais completas as informações armazenadas no banco de dados.
[00304] Depois que pelo menos uma parte das primeiras informações de descritor é determinada com base na imagem em tempo real, as informações de descritor predefinidas no banco de dados são ainda comparadas com a pelo menos uma parte das primeiras informações de descritor para determinar as diferentes informações de descritor, e o banco de dados é construído com base nas diferentes informações de descritor.
Especificamente, a construção do banco de dados com base nas diferentes informações de descritor inclui os dois casos a seguir:
1. As segundas informações de ponto-chave de cenário às quais as diferentes informações de descritor pertencem não existem no banco de dados; o dispositivo de rede determina se um segundo ponto- chave de cenário existe no banco de dados do dispositivo de rede. A maneira de determinar é semelhante a uma maneira de determinar se os pontos-chave de cenário são os mesmos durante a construção do banco de dados, em outras palavras, a determinação é realizada com base em coordenadas 3D. Os detalhes não são descritos aqui novamente. Se o segundo ponto-chave de cenário não existir no banco de dados, aparentemente, as segundas informações de ponto-chave de cenário também não existirão no banco de dados; com referência à Figura 12 (a), por exemplo, em comparação com a imagem em tempo real, o banco de dados não inclui um ponto-chave de cenário 4, e ainda não inclui um descritor 10 do ponto-chave de cenário 4. O descritor 10 é um descritor diferente nesta modalidade. Neste caso, as segundas informações de ponto-chave de cenário incluindo o descritor diferente, nomeadamente, informações sobre o ponto-chave de cenário 4, são adicionadas ao banco de dados;
2. As segundas informações de ponto-chave de cenário às quais o descritor diferente pertence existem no banco de dados, mas as segundas informações de ponto-chave de cenário no banco de dados não incluem as informações de descritor alvo; quando é determinado que as segundas informações de ponto-chave de cenário existem no banco de dados, neste caso, as segundas informações de ponto-chave de cenário não incluem as informações de descritor diferentes determinadas. Consulte a Figura 12 (b). Por exemplo, o banco de dados inclui um ponto-chave de cenário 1, um ponto-chave de cenário 2 e um ponto-chave de cenário 3 que são iguais aos da imagem em tempo real, mas as informações sobre o ponto-chave de cenário 3 no banco de dados não incluem um descritor alvo, ou seja, um descritor 9, do ponto-chave de cenário 3 na imagem em tempo real. Neste caso, as informações de descritor correspondentes ao descritor 9 diferente são adicionadas ao banco de dados.
[00305] Deve ser notado que, se um segundo ponto- chave de cenário ao qual pertence um descritor alvo precisar ser adicionado ao banco de dados, as coordenadas 3D do segundo ponto-chave de cenário precisam ser atualizadas de forma síncrona no banco de dados. Como as informações de imagem em tempo real incluem apenas informações de descritor e informações de coordenadas de pixel, e não incluem coordenadas 3D, neste caso, os descritores no banco de dados que são iguais aos da imagem em tempo real são usados primeiro para posicionamento e, em seguida, coordenadas 3D de diferentes pontos-chave de cenário são adicionadas ao banco de dados. Uma maneira de determinar coordenadas 3D dos diferentes pontos-chave de cenário é a seguinte: Após o mesmo descritor ser usado para realizar o posicionamento para obter o resultado do posicionamento da imagem em tempo real, as coordenadas 3D dos diferentes pontos-chave de cenário são determinadas usando uma câmera binocular, ou podem ser determinadas usando uma câmera monocular e a IMU. A maneira de determinar coordenadas 3D dos diferentes pontos-chave de cenário não é especificamente limitada neste documento.
[00306] Nesta modalidade, o banco de dados é atualizado e melhorado com base nas diferentes informações de descritor em um processo de posicionamento em tempo real. Desta forma, o banco de dados pode ser melhor utilizado para posicionamento.
[00307] Nesta modalidade, o processo de posicionamento em tempo real é um processo no qual o dispositivo móvel troca dados com o dispositivo de rede. Com referência à Figura 13, o seguinte fornece uma descrição.
[00308] 1301: Um dispositivo móvel envia uma imagem em tempo real para um dispositivo de rede.
[00309] Além da imagem em tempo real, o dispositivo móvel pode ainda enviar, para o dispositivo de rede, informações de localização do dispositivo móvel ou uma condição natural de uma localização do dispositivo móvel quando a imagem em tempo real é fotografada.
[00310] 1302: O dispositivo de rede determina pelo menos uma parte das primeiras informações de descritor com base na imagem em tempo real.
[00311] 1303: O dispositivo de rede compara as informações de descritor predefinidas em um banco de dados com pelo menos uma parte das primeiras informações de descritor para determinar as mesmas informações de descritor e diferentes informações de descritor.
[00312] 1304: O dispositivo de rede posiciona a imagem em tempo real usando as mesmas informações de descritor.
[00313] 1305: Enviar um resultado de posicionamento para o dispositivo móvel.
[00314] O dispositivo móvel realiza uma operação de posicionamento com base no resultado do cálculo de posicionamento determinado pelo dispositivo de rede. Nesta modalidade, a operação de cálculo de posicionamento pode, alternativamente, ser realizada pelo dispositivo de rede. Isso não é especificamente limitado aqui.
[00315] 1306: O dispositivo de rede constrói o banco de dados com base nas diferentes informações de descritor.
[00316] Nesta modalidade, os passos 1301 a 1306 nesta modalidade são semelhantes aos passos na modalidade mostrada na Figura 11. Os detalhes não são descritos aqui novamente.
[00317] O anterior descreve as modalidades deste pedido a partir das perspectivas do método de posicionamento e do método de construção de banco de dados. O seguinte descreve a estrutura de um dispositivo de rede nas modalidades deste pedido.
[00318] Com base no método de construção de banco de dados anterior, uma possível estrutura do dispositivo de rede é mostrada na Figura 14. O dispositivo de rede inclui uma unidade de determinação 1401, uma unidade de processamento 1402 e uma unidade de construção de banco de dados 1403.
[00319] A unidade de determinação 1401 é configurada para determinar um conjunto de imagens alvo que satisfaz um requisito de grau de coincidência de imagem predefinido, onde o conjunto de imagens alvo inclui pelo menos uma imagem e cada imagem corresponde a um tipo de informações de condição natural.
[00320] A unidade de processamento 1402 é configurada para obter um conjunto de informações de ponto-chave de cenário com base no conjunto de imagens alvo e as informações de condição natural correspondentes a cada imagem, onde o conjunto de pontos-chave de cenário inclui pelo menos uma parte de informações de ponto-chave de cenário.
[00321] A unidade de determinação 1401 é adicionalmente configurada para determinar, no conjunto de informações de ponto-chave de cenário, primeiras informações de ponto-chave de cenário correspondentes a um ponto-chave de cenário cujo valor de vida em um único dispositivo móvel é maior do que um primeiro limiar de valor de vida predefinido, onde o valor de vida é usado para representar uma probabilidade de que o ponto-chave de cenário seja um ponto-chave de cenário estático.
[00322] A unidade de determinação 1401 é adicionalmente configurada para determinar, nas primeiras informações de ponto-chave de cenário, as segundas informações de ponto-chave de cenário correspondentes a um ponto-chave de cenário cujo valor de vida em uma pluralidade de dispositivos móveis é maior do que um segundo limiar de valor de vida predefinido.
[00323] A unidade de construção de banco de dados 1403 é configurada para: quando as segundas informações de ponto- chave de cenário não correspondem às informações de ponto- chave de cenário predefinidas em um banco de dados, construir o banco de dados com base nas segundas informações de ponto- chave de cenário.
[00324] Opcionalmente, que as segundas informações de ponto-chave de cenário não correspondem às informações de ponto-chave de cenário predefinidas em um banco de dados inclui:
as segundas informações de ponto-chave de cenário não existem no banco de dados; e a unidade de construção de banco de dados 1403 é especificamente configurada para adicionar as segundas informações de ponto-chave de cenário ao banco de dados, onde as segundas informações de ponto-chave de cenário incluem informações de descritor alvo sobre as informações de condição natural alvo.
[00325] Opcionalmente, que as segundas informações de ponto-chave de cenário não correspondem às informações de ponto-chave de cenário predefinidas em um banco de dados inclui: as segundas informações de ponto-chave de cenário existem no banco de dados, e as segundas informações de ponto-chave de cenário não incluem informações de descritor alvo sobre as informações de condição natural alvo; e a unidade de construção de banco de dados 1403 é especificamente configurada para adicionar as informações de descritor alvo às segundas informações de ponto-chave de cenário predefinidas no banco de dados.
[00326] Opcionalmente, a unidade de determinação 1401 é adicionalmente configurada para: determinar as coordenadas 3D do segundo ponto-chave de cenário que correspondem às segundas informações de ponto-chave de cenário; e quando uma diferença entre coordenadas 3D de cada ponto- chave de cenário predefinido no banco de dados e as coordenadas 3D do segundo ponto-chave de cenário é maior do que um primeiro limiar predefinido, determinar que as segundas informações de ponto-chave de cenário não existem no banco de dados; ou quando uma diferença entre coordenadas 3D de qualquer ponto-chave de cenário predefinido no banco de dados e as coordenadas 3D do segundo ponto-chave de cenário é menor do que um primeiro limiar predefinido, determinar que as segundas informações de ponto-chave de cenário existem no banco de dados.
[00327] Opcionalmente, a unidade de determinação 1401 é adicionalmente configurada para determinar pelo menos uma parte de informações de descritor do segundo ponto-chave de cenário predefinido no banco de dados.
[00328] O dispositivo de rede inclui adicionalmente: uma unidade de julgamento 1404, configurada para determinar se a pelo menos uma parte de informações de descritor inclui uma parte de informações de descritor, onde uma distância entre um descritor correspondente à uma parte de informações de descritor e um descritor correspondente às informações de descritor alvo é menor que um limiar de distância predefinido.
[00329] A unidade de determinação 1401 é adicionalmente configurada para: se pelo menos uma parte de informações de descritor não incluir a uma parte das informações de descritor, onde a distância entre o descritor correspondente a uma parte de informações de descritor e o descritor correspondente às informações de descritor alvo é menor que o limiar de distância predefinido, determinar que as segundas informações de ponto-chave de cenário predefinidas no banco de dados não incluem as informações de descritor alvo.
[00330] Opcionalmente, em uma quinta implementação do quarto aspecto, o valor de vida do ponto-chave de cenário no único dispositivo móvel é f, e uma fórmula de cálculo de f ( ) é: f = e , onde n indica uma quantidade de vezes que √ o ponto-chave de cenário é observado no único dispositivo móvel, n é um valor médio predefinido de uma quantidade de vezes que um ponto-chave de cenário é observado e é uma variância predefinida da quantidade de vezes que o ponto- chave de cenário é observado.
[00331] Opcionalmente, o valor de vida do ponto-chave de cenário na pluralidade de dispositivos móveis é F, e uma fórmula de cálculo de F é: F = ∑ β f , onde f é o valor de vida do ponto-chave de cenário no único dispositivo móvel, B é um coeficiente de peso correspondendo a cada dispositivo móvel, e um da pluralidade de dispositivos móveis corresponde a um coeficiente de peso.
[00332] Opcionalmente, uma fórmula de cálculo de β é: β = γ + γ + γ , onde γ é um índice de continuidade de tempo do ponto-chave de cenário observado na pluralidade de dispositivos móveis, γ é um índice de continuidade geométrica do ponto-chave de cenário observado na pluralidade de dispositivos móveis, e γ é um índice de consistência de descrição do ponto-chave de cenário observado na pluralidade de dispositivos móveis.
[00333] Opcionalmente, a unidade de determinação 1401 é configurada especificamente para: selecionar uma imagem com base em um espaçamento de distância predefinido; e quando uma diferença entre um grau de coincidência de imagens selecionadas e um limiar de grau de coincidência predefinido está dentro de um intervalo de precisão predefinido, determinar que as imagens selecionadas pertencem ao conjunto de imagens alvo.
[00334] Opcionalmente, o espaçamento de distância predefinido é d .
[00335] Uma fórmula de cálculo do espaçamento de distância predefinido é: d = d + d (α∗ − α), onde α∗ é o limiar de grau de coincidência predefinido, d é um espaçamento de distância para a seleção de imagem em um momento anterior, e é um grau de coincidência de imagens quando as imagens são selecionadas com base no espaçamento de distância d .
[00336] Opcionalmente, a unidade de determinação 1401 é configurada especificamente para: selecionar uma imagem com base em um espaçamento angular predefinido; e quando uma diferença entre um grau de coincidência de imagens selecionadas e um limiar de grau de coincidência predefinido está dentro de um intervalo de precisão predefinido, determinar que as imagens selecionadas pertencem ao conjunto de imagens alvo.
[00337] Opcionalmente, o espaçamento angular predefinido é θ .
[00338] Uma fórmula de cálculo do espaçamento angular predefinido é: θ = θ + θ (α∗ − α), onde α∗ é o limiar de grau de coincidência predefinido, θ é um espaçamento angular para seleção de imagem em um momento anterior, e é um grau de coincidência de imagens quando as imagens são selecionadas com base no espaçamento angular θ .
[00339] Opcionalmente, as informações de ponto-chave de cenário incluem informações de descritor correspondentes às informações de condição natural. A unidade de processamento 1402 é configurada especificamente para: (1) processar uma imagem alvo para obter um ponto-chave de cenário; (2) constituir as informações de ponto-chave de cenário usando o ponto-chave de cenário, a imagem alvo à qual o ponto-chave de cenário pertence, e as informações de condição natural correspondentes à imagem alvo; e realizar os passos (1) e (2) novamente até que o conjunto de informações de ponto-chave de cenário seja constituído.
[00340] Opcionalmente, a unidade de determinação 1401 é adicionalmente configurada para determinar as terceiras informações de ponto-chave de cenário no banco de dados construído.
[00341] A unidade de construção de banco de dados 1403 é adicionalmente configurada para: quando uma pontuação de controle de número de recurso FNCS de um terceiro ponto- chave de cenário correspondente às terceiras informações de ponto-chave de cenário é menor do que um limiar de FNCS predefinido, excluir as terceiras informações de ponto-chave de cenário a partir do banco de dados.
[00342] Opcionalmente, uma fórmula de cálculo da pontuação de controle de número de recurso FNCS é: NCS = log , onde é uma probabilidade de que o ponto-chave de cenário seja usado durante o posicionamento e é uma porcentagem de uma quantidade de descritores do ponto-chave de cenário em uma quantidade total de descritores em uma imagem à qual o ponto-chave de cenário pertence.
[00343] Com base no método de posicionamento anterior, outra estrutura possível do dispositivo de rede é mostrada na Figura 15. O dispositivo de rede inclui uma unidade de obtenção 1501, uma unidade de determinação 1502 e uma unidade de posicionamento 1503.
[00344] A unidade de obtenção 1501 é configurada para obter uma imagem em tempo real.
[00345] A unidade de determinação 1502 é configurada para determinar pelo menos uma parte das primeiras informações de descritor com base na imagem em tempo real, onde as primeiras informações de descritor incluem informações de condição natural alvo quando a imagem em tempo real é fotografada.
[00346] A unidade de determinação 1502 é adicionalmente configurada para comparar as informações de descritor predefinidas em um banco de dados com pelo menos uma parte das primeiras informações de descritor para determinar as mesmas informações de descritor, onde as informações de descritor predefinidas no banco de dados são obtidas pelo dispositivo de rede pela determinação de um conjunto de imagens alvo que satisfaz um requisito de grau de coincidência de imagem predefinido, obter um conjunto de informações de ponto-chave de cenário com base no conjunto de imagens alvo e informações de condição natural correspondentes a cada imagem no conjunto de imagens alvo, selecionar, a partir do conjunto de informações de ponto- chave de cenário, as primeiras informações de ponto-chave de cenário correspondentes a um primeiro ponto-chave de cenário que satisfaz um requisito de valor de vida predefinido e, em seguida, construir o banco de dados com base nas segundas informações de descritor que estão nas primeiras informações de ponto-chave de cenário e que correspondem às informações de condição natural alvo, as segundas informações de descritor não correspondem às informações de descritor predefinidas no banco de dados, e as informações de ponto-
chave de cenário incluem informações de descritor que correspondem às informações de condição natural.
[00347] A unidade de posicionamento 1503 é configurada para posicionar a imagem em tempo real usando as mesmas informações de descritor.
[00348] Opcionalmente, a unidade de posicionamento 1503 é configurada especificamente para: determinar as primeiras informações de ponto-chave de cenário correspondentes às mesmas informações de descritor no banco de dados; e obter, por meio de cálculo com base nas primeiras informações de ponto-chave de cenário e uma fórmula de cálculo de posicionamento, uma localização de um dispositivo móvel alvo quando a imagem em tempo real é fotografada.
[00349] Opcionalmente, a fórmula de cálculo de posicionamento da localização do dispositivo móvel alvo quando a imagem em tempo real é fotografada é: 𝑟(𝑇 ) = ∑ 𝜋 (𝑇 ) 𝑇 (𝜋 ) 𝑝 − 𝑝 , onde são coordenadas de pixel do primeiro ponto-chave de cenário na imagem em tempo real, é uma matriz de parâmetro intrínseca de uma câmera, π é usada para converter coordenadas 3D em coordenadas de pixel, T é uma pose de uma imagem para a qual um ponto-chave de cenário p no banco de dados pertence em relação a um sistema de coordenadas mundial, p são coordenadas de pixel do primeiro ponto-chave de cenário no banco de dados, um valor de i varia de 1 a n, n é um número inteiro positivo, e o primeiro ponto-chave de cenário corresponde às primeiras informações de ponto-chave de cenário.
[00350] Opcionalmente, a unidade de determinação 1502 é adicionalmente configurada para comparar as informações de descritor predefinidas no banco de dados com pelo menos uma parte das primeiras informações de descritor para determinar as diferentes informações de descritor.
[00351] O dispositivo de rede inclui adicionalmente uma unidade de construção de banco de dados 1504.
[00352] A unidade de construção de banco de dados 1504 é especificamente configurada para construir o banco de dados com base nas diferentes informações de descritor.
[00353] Opcionalmente, quando as segundas informações de ponto-chave de cenário às quais as diferentes informações de descritor pertencem não existem no banco de dados, a unidade de construção de banco de dados 1504 é especificamente configurada para adicionar as segundas informações de ponto-chave de cenário incluindo as informações de descritor diferentes ao banco de dados.
[00354] Opcionalmente, quando as segundas informações de ponto-chave de cenário às quais as informações de descritor diferentes pertencem existem no banco de dados, a unidade de construção de banco de dados 1504 é especificamente configurada para adicionar as informações de descritor diferente às segundas informações de ponto-chave de cenário no banco de dados.
[00355] Opcionalmente, a unidade de determinação 1502 é adicionalmente configurada para: determinar as coordenadas 3D do segundo ponto-chave de cenário correspondentes às segundas informações de ponto-chave de cenário; e quando uma diferença entre coordenadas 3D de cada ponto- chave de cenário predefinido no banco de dados e as coordenadas 3D do segundo ponto-chave de cenário é maior do que um primeiro limiar predefinido, determinar que as segundas informações de ponto-chave de cenário não existem no banco de dados; ou quando uma diferença entre coordenadas 3D de qualquer ponto-chave de cenário predefinido no banco de dados e as coordenadas 3D do segundo ponto-chave de cenário é menor do que um primeiro limiar predefinido, determinar que as segundas informações de ponto-chave de cenário existem no banco de dados.
[00356] Deve ser notado que o conteúdo, como a troca de informações entre os módulos / unidades do aparelho anterior e os processos de execução dos mesmos, é baseado na mesma ideia que as modalidades de método deste pedido, e produz os mesmos efeitos técnicos que os das modalidades de método deste pedido. Para o conteúdo específico, consulte a descrição anterior nas modalidades de método deste pedido. Os detalhes não são descritos aqui novamente.
[00357] Uma modalidade deste pedido fornece ainda um meio de armazenamento de computador. O meio de armazenamento de computador armazena um programa. O programa é executado para realizar algumas ou todos os passos registrados nas modalidades de método anteriores.
[00358] O seguinte descreve outro dispositivo de rede fornecido em uma modalidade deste pedido. Com referência à Figura 16, um dispositivo de rede 1600 inclui: um receptor 1601, um transmissor 1602, um processador 1603 e uma memória 1604 (pode haver um ou mais processadores 1603 no dispositivo de rede 1600 e um exemplo em que há um processador é usado na Figura 16). Em algumas modalidades deste pedido, o receptor 1601, o transmissor 1602, o processador 1603 e a memória 1604 podem ser conectados usando um barramento ou de outra maneira, e uma conexão usando o barramento é usada como exemplo na Figura 16.
[00359] A memória 1604 pode incluir uma memória somente de leitura e uma memória de acesso aleatório e fornecer uma instrução e dados para o processador 1603. Uma parte da memória 1604 pode incluir ainda uma memória de acesso aleatório não volátil (nome completo em inglês: Non- Volatile Random Access Memory, NVRAM para abreviar). A memória 1604 armazena um sistema operacional e uma instrução de operação, um módulo executável ou uma estrutura de dados, um subconjunto dos mesmos ou um conjunto estendido dos mesmos. A instrução de operação pode incluir várias instruções de operação para realizar várias operações. O sistema operacional pode incluir vários programas de sistema, para implementar vários serviços básicos e processar tarefas baseadas em hardware.
[00360] O processador 1603 controla as operações do dispositivo de rede, e o processador 1603 também pode ser referido como uma unidade de processamento central (nome completo em inglês: Central Processing Unit, CPU para abreviar). Em uma aplicação específica, vários componentes do dispositivo de rede são acoplados usando um sistema de barramento. Além de um barramento de dados, o sistema de barramento inclui um barramento de potência, um barramento de controle, um barramento de sinal de status e semelhantes. No entanto, para uma descrição clara, vários tipos de barramentos na figura são marcados como o sistema de barramentos.
[00361] Os métodos divulgados nas modalidades anteriores deste pedido podem ser aplicados ao processador 1603 ou podem ser implementados pelo processador 1603. O processador 1603 pode ser um chip de circuito integrado e tem uma capacidade de processamento de sinal.
Em um processo de implementação, os passos nos métodos anteriores podem ser implementados usando um circuito lógico integrado de hardware no processador 1603 ou usando instruções na forma de software.
O processador 1603 pode ser um processador de propósito geral, um processador de sinal digital (nome completo em inglês: digital signal processing, DSP para abreviar), um circuito integrado de aplicação específica (nome completo em inglês: Application Specific Integrated Circuit, ASIC para abreviar), um arranjo de portas programáveis em campo (nome completo em inglês: Field- Programmable Gate Array, FPGA para abreviar) ou outro dispositivo lógico programável, uma porta discreta ou dispositivo lógico de transistor, ou um componente de hardware discreto.
O processador pode implementar ou realizar os métodos, os passos e os diagramas de blocos lógicos que são divulgados nas modalidades deste pedido.
O processador de propósito geral pode ser um microprocessador ou o processador pode ser qualquer processador convencional ou semelhantes.
Os passos dos métodos divulgados com referência às modalidades deste pedido podem ser executados diretamente e concluídos usando um processador de decodificação de hardware ou podem ser executados e concluídos usando uma combinação de módulos de hardware e software no processador de decodificação.
Um módulo de software pode estar localizado em um meio de armazenamento maduro na técnica, como uma memória de acesso aleatório, uma memória flash, uma memória somente de leitura, uma memória somente de leitura programável, uma memória programável apagável eletricamente ou um registrador. O meio de armazenamento está localizado na memória 1604 e o processador 1603 lê informações na memória 1604 e completa os passos dos métodos anteriores em combinação com o hardware do processador.
[00362] O receptor 1601 pode ser configurado para: receber entrada digital ou informações de caractere e gerar uma entrada de sinal relacionada a um controle de configuração e função relacionado do dispositivo de rede. O transmissor 1602 pode incluir um dispositivo de exibição, como uma tela de exibição, e o transmissor 1602 pode ser configurado para emitir informações digitais ou de caracteres usando uma interface externa.
[00363] Nesta modalidade deste pedido, o processador 1603 é configurado para realizar o método de construção de banco de dados e método de posicionamento anteriores.
[00364] Além disso, deve-se notar que as modalidades de aparelho descritas são meramente exemplos. As unidades descritas como partes separadas podem ou não ser fisicamente separadas, e as partes exibidas como unidades podem ou não ser unidades físicas, podem estar localizadas em uma posição ou podem ser distribuídas em uma pluralidade de unidades de rede. Alguns ou todos os módulos podem ser selecionados com base nas necessidades reais para atingir os objetivos das soluções das modalidades. Além disso, nos desenhos anexos das modalidades de aparelho fornecidas neste pedido, as relações de conexão entre os módulos indicam que os módulos têm conexões de comunicação entre si, que podem ser implementadas especificamente como um ou mais barramentos de comunicação ou cabos de sinal.
[00365] Com base na descrição das implementações anteriores, uma pessoa versada na técnica pode entender claramente que este pedido pode ser implementado por software além do hardware universal necessário, ou por hardware dedicado, incluindo um circuito integrado de aplicação específica, uma CPU dedicada, uma memória dedicada, um componente dedicado e semelhantes. Geralmente, quaisquer funções que podem ser realizadas por um programa de computador podem ser facilmente implementadas usando o hardware correspondente. Além disso, uma estrutura de hardware específica usada para atingir uma mesma função pode ser de várias formas, por exemplo, na forma de um circuito analógico, um circuito digital, um circuito dedicado ou semelhantes. No entanto, quanto a este pedido, a implementação do programa de software é uma implementação melhor na maioria dos casos. Com base em tal entendimento, as soluções técnicas deste pedido, essencialmente ou a parte que contribui para a técnica anterior, podem ser implementadas na forma de um produto de software. O produto de software de computador é armazenado em um meio de armazenamento legível, como um disquete, uma unidade flash USB, um disco rígido removível, uma memória somente de leitura (ROM, Read-Only Memory), uma memória de acesso aleatório (RAM, Random Access Memory), um disco magnético ou um disco ótico de um computador, e inclui várias instruções para instruir um dispositivo de computador (que pode ser um computador pessoal, um servidor, um dispositivo de rede ou semelhantes) para realizar os métodos descritos nas modalidades deste pedido.
[00366] Todas ou algumas das modalidades anteriores podem ser implementadas usando software, hardware, firmware ou qualquer combinação dos mesmos. Quando o software é usado para implementar as modalidades, as modalidades podem ser implementadas total ou parcialmente na forma de um produto de programa de computador.
[00367] O produto de programa de computador inclui uma ou mais instruções de computador. Quando as instruções do programa de computador são carregadas e executadas em um computador, os procedimentos ou funções de acordo com as modalidades deste pedido são gerados total ou parcialmente. O computador pode ser um computador de propósito geral, um computador dedicado, uma rede de computadores ou outro aparelho programável. As instruções de computador podem ser armazenadas em um meio de armazenamento legível por computador ou podem ser transmitidas de um meio de armazenamento legível por computador para outro meio de armazenamento legível por computador. Por exemplo, as instruções de computador podem ser transmitidas de um site, computador, servidor ou centro de dados para outro site, computador, servidor ou centro de dados em uma maneira com fio (por exemplo, um cabo coaxial, uma fibra ótica ou uma linha assinante digital (DSL)) ou sem fio (por exemplo, infravermelho, rádio ou micro-ondas). O meio de armazenamento legível por computador pode ser qualquer meio utilizável acessível por um computador ou um dispositivo de armazenamento de dados, como um servidor ou um centro de dados, integrando um ou mais meios utilizáveis. O meio utilizável pode ser um meio magnético (por exemplo, um disquete, um disco rígido ou uma fita magnética), um meio ótico (por exemplo, um DVD), um meio semicondutor (por exemplo, uma unidade de estado sólido Solid State Disk (SSD)) ou semelhantes.

Claims (26)

REIVINDICAÇÕES EMENDADAS
1. Método de construção de banco de dados, caracterizado pelo fato de que compreende: determinar (501) um conjunto de imagens alvo que satisfaz um requisito de grau de coincidência de imagem predefinido, em que o conjunto de imagens alvo compreende pelo menos uma imagem, e cada imagem corresponde a um tipo de informações de condição natural; obter (502) um conjunto de informações de ponto-chave de cenário com base no conjunto de imagens alvo e as informações de condição natural correspondentes a cada imagem, em que o conjunto de informações de ponto-chave de cenário compreendem pelo menos uma parte de informações de ponto- chave de cenário; determinar (503), no conjunto de informações de ponto- chave de cenário, primeiras informações de ponto-chave de cenário correspondentes a um ponto-chave de cenário cujo valor de vida em um único dispositivo móvel é maior do que um primeiro limiar de valor de vida predefinido, em que o valor de vida é usado para representar uma probabilidade de que o ponto-chave de cenário seja um ponto-chave de cenário estático; determinar (504), nas primeiras informações de ponto- chave de cenário, segundas informações de ponto-chave de cenário correspondentes a um ponto-chave de cenário cujo valor de vida em uma pluralidade de dispositivos móveis é maior do que um segundo limiar de valor de vida predefinido; e quando as segundas informações de ponto-chave de cenário não correspondem às informações de ponto-chave de cenário predefinidas em um banco de dados, construir (505) o banco de dados com base nas segundas informações de ponto-chave de cenário.
2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que as segundas informações de ponto-chave de cenário não correspondem às informações de ponto-chave de cenário predefinidas em um banco de dados compreende: as segundas informações de ponto-chave de cenário não existem no banco de dados; e a construção (505) do banco de dados com base nas segundas informações de ponto-chave de cenário compreende: adicionar (905) as segundas informações de ponto-chave de cenário ao banco de dados, em que as segundas informações de ponto-chave de cenário compreendem informações de descritor alvo sobre as informações de condição natural alvo.
3. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que as segundas informações de ponto-chave de cenário não correspondem às informações de ponto-chave de cenário predefinidas em um banco de dados compreende: as segundas informações de ponto-chave de cenário existem no banco de dados, e as segundas informações de ponto-chave de cenário não incluem informações de descritor alvo sobre as informações de condição natural alvo; e a construção (505) do banco de dados com base nas segundas informações de ponto-chave de cenário compreende: adicionar (906) as informações de descritor alvo às segundas informações de ponto-chave de cenário predefinidas no banco de dados.
4. Método, de acordo com a reivindicação 2 ou 3, caracterizado pelo fato de que antes de adicionar as segundas informações de ponto-chave de cenário ao banco de dados, o método compreende ainda: determinar coordenadas 3D de um segundo ponto-chave de cenário correspondente às segundas informações de ponto- chave de cenário; e quando uma diferença entre coordenadas 3D de cada ponto- chave de cenário predefinido no banco de dados e as coordenadas 3D do segundo ponto-chave de cenário é maior do que um primeiro limiar predefinido, determinar que as segundas informações de ponto-chave de cenário não existem no banco de dados; ou quando uma diferença entre coordenadas 3D de qualquer ponto-chave de cenário predefinido no banco de dados e as coordenadas 3D do segundo ponto-chave de cenário é menor do que um primeiro limiar predefinido, determinar que as segundas informações de ponto-chave de cenário existem no banco de dados.
5. Método, de acordo com a reivindicação 3, caracterizado pelo fato de que antes de adicionar (906) as informações de descritor alvo às segundas informações de ponto-chave de cenário predefinidas no banco de dados, o método compreende ainda: determinar pelo menos uma parte de informações de descritor de um segundo ponto-chave de cenário predefinido no banco de dados; determinar se pelo menos uma parte de informações de descritor compreende uma parte de informações de descritor, em que uma distância entre um descritor correspondente a uma parte de informações de descritor e um descritor correspondente às informações de descritor alvo é menor do que um limiar de distância predefinido; e se pelo menos uma parte de informações de descritor não compreende a uma parte das informações de descritor, determinar que as segundas informações de ponto-chave de cenário predefinidas no banco de dados não compreendem as informações de descritor alvo.
6. Método, de acordo com qualquer uma das reivindicações 1 a 3, caracterizado pelo fato de que o valor de vida do ponto-chave de cenário no único dispositivo móvel é f, e uma ( ) fórmula de cálculo de f é: f = e , em que n indica √ uma quantidade de vezes que o ponto-chave de cenário é observado no único dispositivo móvel, n é um valor médio predefinido de uma quantidade de vezes que um ponto-chave de cenário é observado, e σ é uma variância predefinida da quantidade de vezes que o ponto-chave de cenário é observado.
7. Método, de acordo com a reivindicação 6, caracterizado pelo fato de que o valor de vida do ponto-chave de cenário na pluralidade de dispositivos móveis é F, e uma fórmula de cálculo de F é : F = ∑ β f , em que f é o valor de vida do ponto-chave de cenário no único dispositivo móvel, B é um coeficiente de peso correspondente a cada dispositivo móvel, e um da pluralidade de dispositivos móveis corresponde a um coeficiente de peso.
8. Método, de acordo com a reivindicação 7, caracterizado pelo fato de que uma fórmula de cálculo de β é: β = γ + γ + γ , em que γ é um índice de continuidade tempo do ponto- chave de cenário observado na pluralidade de dispositivos móveis, γ é um índice de continuidade geométrica do ponto- chave de cenário observado na pluralidade de dispositivos móveis, e γ é um índice de consistência de descrição do ponto-chave de cenário observado na pluralidade de dispositivos móveis.
9. Método, de acordo com qualquer uma das reivindicações 1 a 3, caracterizado pelo fato de que a determinação (501) de um conjunto de imagens alvo que satisfaz um requisito de grau de coincidência de imagem predefinido compreende: selecionar uma imagem com base em um espaçamento de distância predefinido; e quando uma diferença entre um grau de coincidência de imagens selecionadas e um limiar de grau de coincidência predefinido está dentro de um intervalo de precisão predefinido, determinar que as imagens selecionadas pertencem ao conjunto de imagens alvo.
10. Método, de acordo com a reivindicação 9, caracterizado pelo fato de que o espaçamento de distância predefinido é d"# ; e uma fórmula de cálculo do espaçamento de distância predefinido é: d"# = d" + d" (α∗ − α), em que α∗ é o limiar de grau de coincidência predefinido, d" é um espaçamento de distância para seleção de imagem em um momento anterior, e α é um grau de coincidência de imagens quando as imagens são selecionadas com base no espaçamento de distância d" .
11. Método, de acordo com qualquer uma das reivindicações 1 a 3, caracterizado pelo fato de que determinar (501) um conjunto de imagens alvo que satisfaz um requisito de grau de coincidência de imagem predefinido compreende: selecionar uma imagem com base em um espaçamento angular predefinido; e quando uma diferença entre um grau de coincidência de imagens selecionadas e um limiar de grau de coincidência predefinido está dentro de um intervalo de precisão predefinido, determinar que as imagens selecionadas pertencem ao conjunto de imagens alvo.
12. Método, de acordo com a reivindicação 11, caracterizado pelo fato de que o espaçamento angular predefinido é θ"# ; e uma fórmula de cálculo do espaçamento angular predefinido é: θ"# = θ" + θ" (α∗ − α), em que α∗ é o limiar de grau de coincidência predefinido, θ" é um espaçamento angular para a seleção de imagem em um momento anterior, e α é um grau de coincidência de imagens quando as imagens são selecionadas com base no espaçamento angular θ" .
13. Método, de acordo com qualquer uma das reivindicações 1 a 3, caracterizado pelo fato de que as informações de ponto-chave de cenário compreendem informações de descritor correspondentes às informações de condição natural, e a obtenção (502) de um conjunto de informações de ponto-chave de cenário com base no conjunto de imagens alvo e as informações de condição natural compreende: (1) processar uma imagem alvo para obter um ponto-chave de cenário; (2) constituir as informações de ponto-chave de cenário usando o ponto-chave de cenário, a imagem alvo à qual o ponto-chave de cenário pertence, e as informações de condição natural correspondentes à imagem alvo; e realizar os passos (1) e (2) novamente até que o conjunto de informações de ponto-chave de cenário seja constituído.
14. Método, de acordo com qualquer uma das reivindicações 1 a 3, caracterizado pelo fato de que após a construção (505) do banco de dados com base nas segundas informações de ponto-
chave de cenário, o método compreende ainda: determinar as terceiras informações de ponto-chave de cenário no banco de dados construído; e quando uma pontuação de controle de número de recurso FNCS de um terceiro ponto-chave de cenário correspondente às terceiras informações de ponto-chave de cenário é menor do que um limiar de FNCS predefinido, excluir as terceiras informações de ponto-chave de cenário a partir do banco de dados.
15. Método, de acordo com a reivindicação 14, caracterizado pelo fato de que uma fórmula de cálculo da pontuação de controle de número de recurso FNCS é: FNCS = +, 1 +, - log , em que - é uma probabilidade de que o ponto-chave de , 1 cenário é usado durante o posicionamento, e é uma , porcentagem de uma quantidade de descritores do ponto-chave de cenário em uma quantidade total de descritores em uma imagem à qual o ponto-chave de cenário pertence.
16. Método de posicionamento, caracterizado pelo fato de que o método é aplicado a um sistema de posicionamento visual, e o método compreende: obter (1101, 1301) uma imagem em tempo real; determinar (1102, 1302) pelo menos uma parte das primeiras informações de descritor com base na imagem em tempo real, em que as primeiras informações de descritor compreendem as informações de condição natural alvo quando a imagem em tempo real é fotografada; comparar (1103, 1303) as informações de descritor predefinidas em um banco de dados com a pelo menos uma parte das primeiras informações de descritor para determinar as mesmas informações de descritor, em que as informações de descritor predefinidas no banco de dados são obtidas por um dispositivo de rede por determinar um conjunto de imagens alvo que satisfaz um requisito de grau de coincidência de imagem predefinido, obter um conjunto de informações de ponto-chave de cenário com base no conjunto de imagens alvo e informações de condição natural correspondentes a cada imagem no conjunto de imagens alvo, selecionar, a partir do conjunto de informações de ponto-chave de cenário, as primeiras informações de ponto-chave de cenário correspondentes a um primeiro ponto-chave de cenário que satisfaz um requisito de valor de vida predefinido e, em seguida, construir o banco de dados com base nas segundas informações de descritor que estão nas primeiras informações de ponto-chave de cenário e que correspondem às informações de condição natural alvo, as segundas informações de descritor não correspondem às informações de descritor predefinidas no banco de dados, e as informações de ponto- chave de cenário compreendem as informações de descritor correspondentes às informações de condição natural; e posicionar (1104, 1304) a imagem em tempo real usando as mesmas informações de descritor.
17. Método, de acordo com a reivindicação 16, caracterizado pelo fato de que o posicionamento (1104, 1304) da imagem em tempo real usando as mesmas informações de descritor compreende: determinar as primeiras informações de ponto-chave de cenário correspondentes às mesmas informações de descritor no banco de dados; e obter, por meio de cálculo com base nas primeiras informações de ponto-chave de cenário e uma fórmula de cálculo de posicionamento, uma localização de um dispositivo móvel alvo quando a imagem em tempo real é fotografada.
18. Método, de acordo com a reivindicação 17, caracterizado pelo fato de que a fórmula de cálculo de posicionamento da localização do dispositivo móvel alvo quando a imagem em tempo real é fotografada é: 2(345 ) = ∑=< 6789 (3:5 ) 345 (89 ) ;<9 − ;<: 76 , em que é coordenadas de pixel do primeiro ponto-chave de cenário na imagem em tempo real, é uma matriz de parâmetro intrínseca de uma câmera, π? é usado para converter as coordenadas 3D em coordenadas de pixel, TAB é uma pose de uma imagem para a qual um ponto-chave de cenário pA no banco de dados pertence em relação a um sistema de coordenadas mundial, pA são coordenadas de pixel do primeiro ponto-chave de cenário no banco de dados, um valor de i varia de 1 a n, n é um número inteiro positivo, e o primeiro ponto-chave de cenário corresponde às primeiras informações de ponto-chave de cenário.
19. Método, de acordo com qualquer uma das reivindicações 16 a 18, caracterizado pelo fato de que após a determinação (1102, 1302) de pelo menos uma parte de primeiras informações de descritor com base na imagem em tempo real, o método compreende ainda: comparar (1303) as informações de descritor predefinidas no banco de dados com a pelo menos uma parte das primeiras informações de descritor para determinar as diferentes informações de descritor; e construir (1306) o banco de dados com base nas diferentes informações de descritor.
20. Método, de acordo com a reivindicação 19,
caracterizado pelo fato de que quando as segundas informações de ponto-chave de cenário às quais as diferentes informações de descritor pertencem não existem no banco de dados, a construção (1306) do banco de dados com base nas diferentes informações de descritor compreende: adicionar ao banco de dados as segundas informações de ponto-chave de cenário compreendendo as diferentes informações de descritor.
21. Método, de acordo com a reivindicação 19, caracterizado pelo fato de que quando as segundas informações de ponto-chave de cenário às quais as diferentes informações de descritor pertencem existem no banco de dados, a construção (1306) do banco de dados com base nas diferentes informações de descritor compreende: adicionar as diferentes informações de descritor às segundas informações de ponto-chave de cenário no banco de dados.
22. Método, de acordo com a reivindicação 19, caracterizado pelo fato de que antes da construção (1306) do banco de dados com base nas diferentes informações de descritor, o método compreende ainda: determinar coordenadas 3D do segundo ponto-chave de cenário correspondente às segundas informações de ponto- chave de cenário; e quando uma diferença entre coordenadas 3D de cada ponto- chave de cenário predefinido no banco de dados e as coordenadas 3D do segundo ponto-chave de cenário é maior do que um primeiro limiar predefinido, determinar que as segundas informações de ponto-chave de cenário não existem no banco de dados; ou quando uma diferença entre coordenadas 3D de qualquer ponto-chave de cenário predefinido no banco de dados e as coordenadas 3D do segundo ponto-chave de cenário é menor do que um primeiro limiar predefinido, determinar que as segundas informações de ponto-chave de cenário existem no banco de dados.
23. Dispositivo de rede, caracterizado pelo fato de que o dispositivo de rede compreende uma memória, um transceptor, um processador e um sistema de barramento; a memória é configurada para armazenar um programa; o processador é configurado para executar o programa na memória, para realizar o método conforme definido em qualquer uma das reivindicações 1 a 15.
24. Dispositivo de rede, caracterizado pelo fato de que o dispositivo de rede pertence a um sistema de posicionamento visual, e o dispositivo de rede compreende uma memória, um transceptor, um processador e um sistema de barramento; o transceptor é configurado para obter uma imagem em tempo real; a memória é configurada para armazenar um programa; o processador é configurado para executar o programa na memória, para realizar o método conforme definido em qualquer uma das reivindicações 16 a 22.
25. Meio de armazenamento legível por computador, compreendendo uma instrução, caracterizado pelo fato de que quando a instrução é executada em um computador, o computador é habilitado para realizar o método conforme definido em qualquer uma das reivindicações 1 a 15.
26. Meio de armazenamento legível por computador, compreendendo uma instrução, caracterizado pelo fato de que quando a instrução é executada em um computador, o computador é habilitado para realizar o método conforme definido em qualquer uma das reivindicações 16 a 22.
BR112020025901-2A 2018-06-20 2019-04-17 Método de construção de banco de dados, método de posicionamento, dispositivo de rede e meio de armazenamento legível por computador BR112020025901B1 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201810642562.4A CN110688500B (zh) 2018-06-20 2018-06-20 一种数据库构建方法、一种定位方法及其相关设备
CN201810642562.4 2018-06-20
PCT/CN2019/082981 WO2019242392A1 (zh) 2018-06-20 2019-04-17 一种数据库构建方法、一种定位方法及其相关设备

Publications (2)

Publication Number Publication Date
BR112020025901A2 true BR112020025901A2 (pt) 2021-03-16
BR112020025901B1 BR112020025901B1 (pt) 2022-11-16

Family

ID=68983245

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112020025901-2A BR112020025901B1 (pt) 2018-06-20 2019-04-17 Método de construção de banco de dados, método de posicionamento, dispositivo de rede e meio de armazenamento legível por computador

Country Status (5)

Country Link
US (1) US11644339B2 (pt)
EP (1) EP3800443B1 (pt)
CN (2) CN113987228A (pt)
BR (1) BR112020025901B1 (pt)
WO (1) WO2019242392A1 (pt)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113987228A (zh) * 2018-06-20 2022-01-28 华为技术有限公司 一种数据库构建方法、一种定位方法及其相关设备
CN111238497B (zh) 2018-11-29 2022-05-06 华为技术有限公司 一种高精度地图的构建方法及装置
US11128539B1 (en) * 2020-05-05 2021-09-21 Ciena Corporation Utilizing images to evaluate the status of a network system

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101998136B (zh) * 2009-08-18 2013-01-16 华为技术有限公司 单应矩阵的获取方法、摄像设备的标定方法及装置
JP5062498B2 (ja) * 2010-03-31 2012-10-31 アイシン・エィ・ダブリュ株式会社 風景マッチング用参照データ生成システム及び位置測位システム
CN102707724B (zh) * 2012-06-05 2015-01-14 清华大学 一种无人机的视觉定位与避障方法及系统
EP3018448B1 (en) * 2014-11-04 2021-01-06 Volvo Car Corporation Methods and systems for enabling improved positioning of a vehicle
CN104715479A (zh) * 2015-03-06 2015-06-17 上海交通大学 基于增强虚拟的场景复现检测方法
US20160363647A1 (en) 2015-06-15 2016-12-15 GM Global Technology Operations LLC Vehicle positioning in intersection using visual cues, stationary objects, and gps
EP3398164B1 (en) * 2015-12-30 2020-04-01 Telecom Italia S.p.A. System for generating 3d images for image recognition based positioning
EP3461138B1 (en) * 2016-06-08 2021-09-22 Huawei Technologies Co., Ltd. Processing method and terminal
CN106295512B (zh) * 2016-07-27 2019-08-23 哈尔滨工业大学 基于标识的多纠正线室内视觉数据库构建方法以及室内定位方法
CN106447585A (zh) * 2016-09-21 2017-02-22 武汉大学 城市地区和室内高精度视觉定位系统及方法
US10339708B2 (en) * 2016-11-01 2019-07-02 Google Inc. Map summarization and localization
US9940729B1 (en) * 2016-11-18 2018-04-10 Here Global B.V. Detection of invariant features for localization
CN108121764B (zh) * 2016-11-26 2022-03-11 星克跃尔株式会社 图像处理装置、图像处理方法、电脑程序及电脑可读取记录介质
CN106851231B (zh) * 2017-04-06 2019-09-06 南京三宝弘正视觉科技有限公司 一种视频监控方法及系统
CN106931963A (zh) * 2017-04-13 2017-07-07 高域(北京)智能科技研究院有限公司 环境数据共享平台、无人飞行器、定位方法和定位系统
CN109325978B (zh) * 2017-07-31 2022-04-05 深圳市腾讯计算机系统有限公司 增强现实显示的方法、姿态信息的确定方法及装置
CN108615247B (zh) * 2018-04-27 2021-09-14 深圳市腾讯计算机系统有限公司 相机姿态追踪过程的重定位方法、装置、设备及存储介质
CN113987228A (zh) * 2018-06-20 2022-01-28 华为技术有限公司 一种数据库构建方法、一种定位方法及其相关设备
CN110660254B (zh) * 2018-06-29 2022-04-08 北京市商汤科技开发有限公司 交通信号灯检测及智能驾驶方法和装置、车辆、电子设备
CN111488773B (zh) * 2019-01-29 2021-06-11 广州市百果园信息技术有限公司 一种动作识别方法、装置、设备及存储介质
CN112348885A (zh) * 2019-08-09 2021-02-09 华为技术有限公司 视觉特征库的构建方法、视觉定位方法、装置和存储介质
CN112348886B (zh) * 2019-08-09 2024-05-14 华为技术有限公司 视觉定位方法、终端和服务器
WO2021121306A1 (zh) * 2019-12-18 2021-06-24 北京嘀嘀无限科技发展有限公司 视觉定位方法和系统

Also Published As

Publication number Publication date
WO2019242392A1 (zh) 2019-12-26
BR112020025901B1 (pt) 2022-11-16
CN113987228A (zh) 2022-01-28
EP3800443A1 (en) 2021-04-07
CN110688500A (zh) 2020-01-14
EP3800443A4 (en) 2021-10-27
CN110688500B (zh) 2021-09-14
EP3800443B1 (en) 2023-01-18
US20210103759A1 (en) 2021-04-08
US11644339B2 (en) 2023-05-09

Similar Documents

Publication Publication Date Title
US11105638B2 (en) Method, apparatus, and computer readable storage medium for updating electronic map
KR102266830B1 (ko) 차선 결정 방법, 디바이스 및 저장 매체
KR102340626B1 (ko) 타겟 트래킹 방법, 장치, 전자기기와 기억매체
WO2019233286A1 (zh) 视觉定位方法、装置、电子设备及系统
BR112020025901A2 (pt) Método de construção de banco de dados, método de posicionamento e dispositivo relacionado
CN108234927B (zh) 视频追踪方法和系统
WO2019161813A1 (zh) 动态场景的三维重建方法以及装置和系统、服务器、介质
WO2021073656A1 (zh) 图像数据自动标注方法及装置
CN108734120B (zh) 标注图像的方法、装置、设备和计算机可读存储介质
CN109029444B (zh) 一种基于图像匹配和空间定位的室内导航系统及导航方法
CN113989450B (zh) 图像处理方法、装置、电子设备和介质
US11625851B2 (en) Geographic object detection apparatus and geographic object detection method
CN110910493B (zh) 三维重建方法、装置及电子设备
CN108256439A (zh) 一种基于循环生成式对抗网络的行人图像生成方法及系统
CN111127524A (zh) 一种轨迹跟踪与三维重建方法、系统及装置
WO2022237821A1 (zh) 生成交通标志线地图的方法、设备和存储介质
US20220074743A1 (en) Aerial survey method, aircraft, and storage medium
CN114279433A (zh) 地图数据自动化生产方法、相关装置及计算机程序产品
CN113379748B (zh) 一种点云全景分割方法和装置
CN114565863A (zh) 无人机图像的正射影像实时生成方法、装置、介质及设备
CN108492334A (zh) 一种基于定位定向数据实现商用相机照片地理标定的方法
CN115248439A (zh) 基于几何信息和强度信息的激光雷达slam方法及系统
CN116858215B (zh) 一种ar导航地图生成方法及装置
WO2021170051A1 (zh) 一种数字摄影测量方法、电子设备及系统
CN112509135B (zh) 元素标注方法、装置、设备、存储介质及计算机程序产品

Legal Events

Date Code Title Description
B350 Update of information on the portal [chapter 15.35 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 17/04/2019, OBSERVADAS AS CONDICOES LEGAIS