BR112015023345B1 - IN SITU CREATION OF TARGETED NATURAL RESOURCE PLANS - Google Patents
IN SITU CREATION OF TARGETED NATURAL RESOURCE PLANS Download PDFInfo
- Publication number
- BR112015023345B1 BR112015023345B1 BR112015023345-7A BR112015023345A BR112015023345B1 BR 112015023345 B1 BR112015023345 B1 BR 112015023345B1 BR 112015023345 A BR112015023345 A BR 112015023345A BR 112015023345 B1 BR112015023345 B1 BR 112015023345B1
- Authority
- BR
- Brazil
- Prior art keywords
- reference image
- flat target
- image
- target
- subsequent
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
- G06T7/74—Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Graphics (AREA)
- Image Analysis (AREA)
- Processing Or Creating Images (AREA)
- User Interface Of Digital Computer (AREA)
- Apparatus For Radiation Diagnosis (AREA)
Abstract
CRIAÇÃO IN SITU DE ALVOS PLANOS DE RECURSO NATURAL Trata-se de um sistema, aparelho e método para criação in situ de alvos planos de recurso natural. Em uma modalidade, um alvo plano é inicializado a partir de uma primeira imagem de referência única em que uma ou mais imagens subsequentes são processadas. Em uma modalidade, o alvo plano é rastreado em seis graus de liberdade mediante o processamento das uma ou mais imagens subsequentes e uma segunda imagem de referência é selecionada a partir das uma ou mais imagens subsequentes processadas. Em uma modalidade, mediante a seleção da segunda imagem de referência, o alvo plano é refinado para um alvo plano mais preciso.IN SITU CREATION OF NATURAL RESOURCE PLAN TARGETS This is a system, apparatus and method for in situ creation of natural resource plan targets. In one embodiment, a flat target is initialized from a first single reference image where one or more subsequent images are processed. In one embodiment, the flat target is tracked in six degrees of freedom by processing the one or more subsequent images and a second reference image is selected from the one or more subsequent processed images. In one embodiment, upon selection of the second reference image, the flat target is refined to a more accurate flat target.
Description
[0001] Este pedido reivindica o benefício e prioridade para o Pedido de Patente no U.S. 13/802.834, intitulado “In Situ Creation of Planar Natural Feature Targets”, depositado em 14 de março de 2013, que é cedido à cessionária do mesmo e incorporado a título de referência, em sua totalidade, no presente documento.[0001] This application claims benefit and priority to the U.S. Patent Application. 13/802,834, entitled “In Situ Creation of Planar Natural Feature Targets”, filed on March 14, 2013, which is assigned to the assignee thereof and incorporated by reference, in its entirety, in this document.
[0002] A matéria revelada no presente documento refere-se geralmente à criação e rastreamento de alvo plano.[0002] Matter disclosed in this document generally pertains to flat target creation and tracking.
[0003] Imagens ou dados de sensor de câmera podem ser usados como entrada para construir um mapa em 3D de um ambiente. Em um sistema de realidade aumentada (AR), objetos virtuais podem ser inseridos em um visor de dispositivo, sendo que os objetos virtuais interagem com objetos do mundo físico/real ou substituem os mesmos. Um sistema de AR pode incluir entrada a partir de um sensor de câmera para registrar objetos do mundo real como imagens ou vídeo e exibir uma vista em AR no visor de dispositivo.[0003] Images or camera sensor data can be used as input to build a 3D map of an environment. In an augmented reality (AR) system, virtual objects can be inserted into a device viewer, with the virtual objects interacting with or replacing physical/real world objects. An AR system may include input from a camera sensor to record real-world objects such as images or video and display an AR view on the device display.
[0004] Os sistemas de AR podem implantar um sistema de rastreamento para estimar a posição e orientação (pose) do usuário em relação a uma referência. Os sistemas de rastreamento tradicionais são limitados pelo tipo de referência rastreada assim como por procedimentos de inicialização usados para iniciar o rastreamento. Por exemplo, em sistemas de rastreamento tradicionais, uma referência adquirida previamente ou um marcador artificial pode ser usado para inicializar o rastreamento de um modelo tridimensional (3D) de um ambiente. De outro modo, sem a referência conhecida previamente, objetos podem aparecer na localização errada ou flutuar pelo mapa do ambiente.[0004] AR systems can deploy a tracking system to estimate the user's position and orientation (pose) relative to a reference. Traditional tracking systems are limited by the type of reference tracked as well as the startup procedures used to initiate tracking. For example, in traditional tracking systems, a previously acquired reference or artificial marker can be used to initiate tracking of a three-dimensional (3D) model of an environment. Otherwise, without the previously known reference, objects may appear in the wrong location or float around the environment map.
[0005] Um sistema de rastreamento que utiliza uma única câmera também pode depender da inicialização de um mapa em 3D a partir de duas imagens de referência subsequentes capturadas pela única câmera. Criar um mapa em 3D através do uso de técnicas tradicionais com base nas duas imagens de referência somente é possível se o movimento de câmera entre as duas imagens de referência for apropriado, e também mantém sobreposição suficiente entre as cenas em ambas as imagens.[0005] A tracking system using a single camera may also rely on initializing a 3D map from two subsequent reference images captured by the single camera. Creating a 3D map using traditional techniques based on the two reference images is only possible if the camera movement between the two reference images is appropriate, and it also maintains sufficient overlap between the scenes in both images.
[0006] As implantações de rastreamento tradicionais também podem depender da entrada de usuário direta para selecionar as duas imagens de referência ou podem fornecer um alvo visual adicional para registrar movimento de câmera de 6 graus de liberdade (6DoF) antes de um mapa em 3D poder ser inicializado.[0006] Traditional tracking deployments may also rely on direct user input to select the two reference images or may provide an additional visual target to record 6 degrees of freedom (6DoF) camera movement before a 3D map can be initialized.
[0007] Por exemplo, alguns métodos de rastreamento exigem que o usuário realize uma sequência de movimento não intuitivo específica sem retroalimentação visual de modo que métodos de reconstrução 3D possam ser usados para encontrar um plano real do alvo.[0007] For example, some tracking methods require the user to perform a specific non-intuitive motion sequence without visual feedback so that 3D reconstruction methods can be used to find an actual plane of the target.
[0008] Como resultado das limitações acima de métodos tradicionais de tecnologias de rastreamento, a experiência atual de usuário de realidade aumentada pode parecer não natural. Além disso, a maioria dos usuários provavelmente não sabe ou compreende os movimentos necessários para a inicialização de rastreamento tradicional através do uso de duas imagens de referência. Os usuários típicos também ficam frequentemente confusos em relação ao motivo de precisarem realizar os movimentos específicos antes de um sistema de realidade aumentada poder exibir atualizações de rastreamento para uma cena.[0008] As a result of the above limitations of traditional methods of tracking technologies, the current augmented reality user experience may seem unnatural. Also, most users probably don't know or understand the movements needed to start traditional tracking through the use of two reference images. Typical users are also often confused as to why they need to perform the specific moves before an augmented reality system can display tracking updates for a scene.
[0009] Consequentemente, a inicialização e o rastreamento de ambiente 3D amigáveis ao usuário e aprimorados são desejados.[0009] Consequently, user-friendly and improved 3D environment startup and tracing is desired.
[0010] As modalidades reveladas no presente documento podem se referir a um método para criação e rastreamento de alvo plano. O método inclui inicializar um alvo tridimensional a partir de uma primeira imagem de referência única e anterior ao processamento de uma imagem subsequente. O método inclui adicionalmente processar uma ou mais imagens subsequentes, e rastrear o alvo plano em seis graus de liberdade (6DoF) mediante o processamento das uma ou mais imagens subsequentes. O método inclui adicionalmente selecionar uma segunda imagem de referência a partir das uma ou mais imagens processadas subsequentes e refinar o alvo plano para um alvo plano mais preciso.[0010] The modalities disclosed in this document may refer to a method for creating and tracking a flat target. The method includes initializing a three-dimensional target from a first single reference image and prior to processing a subsequent image. The method further includes processing one or more subsequent images, and tracking the flat target in six degrees of freedom (6DoF) by processing the one or more subsequent images. The method further includes selecting a second reference image from the one or more subsequent processed images and refining the flat target to a more accurate flat target.
[0011] As modalidades reveladas no presente documento também podem se referir a um meio de armazenamento não transitório legível por computador com instruções para realizar a criação e o rastreamento de alvo plano. O meio inclui inicializar um alvo tridimensional a partir de uma primeira imagem de referência única e anterior ao processamento de uma imagem subsequente. O meio inclui adicionalmente processar uma ou mais imagens subsequentes e rastrear o alvo plano em 6DoF mediante o processamento das uma ou mais imagens subsequentes. O meio inclui adicionalmente selecionar uma segunda imagem de referência a partir das uma ou mais imagens processadas subsequentes e refinar o alvo plano para um alvo plano mais preciso.[0011] The modalities disclosed herein may also refer to a non-transient computer-readable storage medium with instructions for performing flat target creation and tracking. The means includes initializing a three-dimensional target from a first single reference image and prior to processing a subsequent image. The means further includes processing one or more subsequent images and tracking the flat target in 6DoF by processing the one or more subsequent images. The means further includes selecting a second reference image from the one or more subsequent processed images and refining the flat target to a more accurate flat target.
[0012] As modalidades reveladas no presente documento também podem se referir a um aparelho que inclui meios para inicializar um alvo tridimensional a partir de uma primeira imagem de referência única e anterior ao processamento de uma imagem subsequente. O aparelho inclui adicionalmente meios para processar uma ou mais imagens subsequentes e meios para rastreamento do alvo plano em 6DoF mediante o processamento das uma ou mais imagens subsequentes. O aparelho inclui adicionalmente meios para selecionar uma segunda imagem de referência a partir das uma ou mais imagens processadas subsequentes e meios para refinar o alvo plano para um alvo plano mais preciso.[0012] The embodiments disclosed herein may also refer to an apparatus that includes means for initializing a three-dimensional target from a first single reference image and prior to processing a subsequent image. The apparatus further includes means for processing one or more subsequent images and means for tracking the flat target in 6DoF upon processing the one or more subsequent images. The apparatus further includes means for selecting a second reference image from the one or more subsequent processed images and means for refining the flat target to a more accurate flat target.
[0013] As modalidades reveladas no presente documento podem se relacionar adicionalmente a um sistema de processamento de dados que inclui um processador e um dispositivo de armazenamento configurável para armazenar instruções para realizar a criação e o rastreamento de alvo plano. As instruções fazem com que o processador inicialize um alvo tridimensional a partir de uma primeira imagem de referência única e anterior ao processamento de uma imagem subsequente. As instruções adicionalmente fazem com que o processador processe uma ou mais imagens subsequentes, selecione uma segunda imagem de referência a partir das uma ou mais imagens processadas subsequentes e rastreie o alvo plano em 6D0F, e refine o alvo plano para um alvo plano mais preciso.[0013] The embodiments disclosed herein may further relate to a data processing system that includes a processor and a configurable storage device to store instructions for performing flat target creation and tracking. The instructions cause the processor to initialize a three-dimensional target from a first single reference image and prior to processing a subsequent image. The instructions additionally cause the processor to process one or more subsequent images, select a second reference image from the one or more subsequent processed images, and track the flat target in 6D0F, and refine the flat target to a more accurate flat target.
[0014] Em outras modalidades, o alvo plano é presumido como inicializado a partir de uma vista paralela frontal e toda a imagem de referência é usada para inicializar o alvo plano.[0014] In other embodiments, the flat target is assumed to be initialized from a parallel front view and the entire reference image is used to initialize the flat target.
[0015] Outros recursos e vantagens se tornarão aparentes a partir dos desenhos em anexo e a partir da descrição detalhada.[0015] Other features and advantages will become apparent from the attached drawings and from the detailed description.
[0016] A Figura 1 é um diagrama de blocos de uma modalidade de um sistema com capacidade de realizar os métodos revelados;[0016] Figure 1 is a block diagram of an embodiment of a system capable of performing the disclosed methods;
[0017] A Figura 2 ilustra um fluxograma de uma modalidade de um método para criação de alvo in situ;[0017] Figure 2 illustrates a flowchart of an embodiment of a method for in situ targeting;
[0018] A Figura 3 ilustra um alvo exemplificador que é paralelo frontal ao plano de câmera;[0018] Figure 3 illustrates an example target that is frontal parallel to the camera plane;
[0019] A Figura 4 ilustra um primeiro ponto de vista a partir de um dispositivo posicionado aproximadamente em frente a um alvo plano;[0019] Figure 4 illustrates a first point of view from a device positioned approximately in front of a flat target;
[0020] A Figura 5 ilustra um segundo ponto de vista a partir de um dispositivo posicionado em frente a um alvo plano;[0020] Figure 5 illustrates a second point of view from a device positioned in front of a flat target;
[0021] A Figura 6 e a Figura 7 ilustram os mesmos pontos de vista de dispositivo da Figura 4 e da Figura 5, respectivamente, sendo que as representações de alvo respectivas têm planos alvo estimados corretamente, em uma modalidade; e[0021] Figure 6 and Figure 7 illustrate the same device views as Figure 4 and Figure 5, respectively, with the respective target representations having correctly estimated target planes, in one embodiment; and
[0022] A Figura 8 ilustra um fluxograma de uma outra modalidade de um método para criação de alvo in situ.[0022] Figure 8 illustrates a flowchart of another embodiment of an in situ targeting method.
[0023] A palavra “exemplificador” ou “exemplo” é usada no presente documento para significar “que serve como um exemplo, instância ou ilustração”. Qualquer aspecto ou modalidade descrito no presente documento como “exemplificador” ou como um “exemplo” não deve necessariamente ser interpretado como preferencial ou vantajoso sobre outros aspectos ou modalidades.[0023] The word “exemplifier” or “example” is used in this document to mean “which serves as an example, instance or illustration”. Any aspect or embodiment described herein as an "exemplary" or as an "example" should not necessarily be interpreted as preferring or advantageous over other aspects or embodiments.
[0024] A Figura 1 é um diagrama de blocos que ilustra um sistema em que modalidades da invenção podem ser praticadas. O sistema pode ser um dispositivo 100, que pode incluir um processador de uso geral 161, um processador de imagem 166, um processador de pose 168, um mecanismo gráfico 167 e uma memória 164. O dispositivo 100 também pode incluir vários sensores de dispositivo acoplados a um ou mais barramentos 177 ou linhas de sinal adicionalmente acopladas a pelo menos um dos processadores 161, 166 e 168. O dispositivo 100 pode ser um: dispositivo móvel, dispositivo sem fio, telefone celular, assistente pessoal digital, dispositivo do tipo para vestir (por exemplo, óculos, relógio, adereço de cabeça ou um dispositivo fixado ao corpo similar), computador móvel, computador do tipo tablet, computador pessoal, computador do tipo laptop ou qualquer tipo de dispositivo que tenha capacidades de processamento.[0024] Figure 1 is a block diagram illustrating a system in which embodiments of the invention may be practiced. The system may be a
[0025] Em uma modalidade, o dispositivo 100 pode ser uma plataforma móvel/portátil. O dispositivo 100 pode incluir um meio para capturar uma imagem, tal como a(s) câmera(s) 114 e/ou os sensores de CMOS (não mostrado) e pode opcionalmente incluir os sensores de movimento 111, tais como acelerômetros, giroscópios, bússola eletrônica ou outros elementos de captação de movimento similares. O dispositivo 100 também pode capturar imagens em uma câmera frontal e/ou traseira (por exemplo, as câmeras 114). O dispositivo 100 pode incluir adicionalmente uma interface de usuário 150 que inclui um meio para exibir uma imagem em realidade aumentada, tal como o visor 112. A interface de usuário 150 também pode incluir um teclado, miniteclado 152, ou outro dispositivo de entrada através do qual o usuário pode inserir informações no dispositivo 100. Caso seja desejado, integrar um miniteclado virtual no visor 112 com um sensor/tela sensível ao toque pode neutralizar o teclado ou miniteclado 152. A interface de usuário 150 também pode incluir um microfone 154 e um alto-falante 156, por exemplo, se o dispositivo 100 for uma plataforma móvel tal como um telefone celular. O dispositivo 100 pode incluir vários outros elementos, tal como um sistema receptor de posição por satélite, dispositivo de alimentação (por exemplo, uma bateria), assim como outros componentes tipicamente associados a dispositivos eletrônicos portáteis e não portáteis.[0025] In one embodiment, the
[0026] O dispositivo 100 pode funcionar como um dispositivo móvel ou sem fio e pode se comunicar através de um ou mais enlaces de comunicação sem fio através de uma rede sem fio que têm base em ou, de outro modo, suportam qualquer tecnologia de comunicação sem fio adequada. Por exemplo, em alguns aspectos, o dispositivo 100 pode ser um cliente ou servidor e pode se associar a uma rede sem fio. Em alguns aspectos a rede pode compreender uma rede de área corporal ou uma rede de área pessoal (por exemplo, uma rede de banda ultra larga). Em alguns aspectos a rede pode compreender uma rede de área local ou uma rede de área ampla. Um dispositivo sem fio pode suportar ou, de outro modo, usar uma ou mais dentre uma variedade de tecnologias de comunicação sem fio, protocolos, ou padrões tais como, por exemplo, CDMA, TDMA, OFDM, OFDMA, WiMAX e Wi-Fi. De modo similar, um dispositivo sem fio pode suportar ou, de outro modo, usar uma ou mais dentre uma variedade de esquemas de modulação ou multiplexação correspondentes. Um dispositivo móvel sem fio pode se comunicar de forma sem fio com outros dispositivos móveis, telefones celulares, outros computadores com e sem fio, sites da web da Internet, etc.[0026]
[0027] Em uma modalidade, um módulo de criação de alvo in situ (ITC), conforme descrito no presente documento, pode inicializar um alvo plano instantaneamente a partir de uma única imagem de referência. O termo módulo é usado para se referir a hardware, firmware, software, ou alguma combinação dos mesmos que tem capacidade de realizar as funções citadas. Por exemplo, um ITC pode receber imagens ou vídeo a partir de uma única câmera 114 ou entrada visual monocular. A inicialização de alvo plano pode ocorrer mediante o processamento da única imagem de referência e anterior a quaisquer outras imagens serem processadas. O ITC pode processar a única imagem de referência (por exemplo, extrair pontos de recurso associados a um alvo) e pode estimar uma posição e orientação (pose) de câmera de 6 graus de liberdade a partir de um conjunto de correspondências de ponto (por exemplo, recursos a partir de duas ou mais imagens). Conforme usado no presente documento, a detecção de pontos de recurso e a estimativa da pose de câmera de 6DoF para os pontos de recurso são conjuntamente chamados de “rastreamento” do alvo. O ITC pode inicializar o alvo plano sem conhecimento anterior do ambiente do usuário (por exemplo, sem um mapa pré-populado, modelo de CAD, marcadores na cena ou descritor de alvo predefinido similar) e sem o uso de duas imagens de referência precisas diferentes. Em algumas modalidades, o ITC pode fornecer retroalimentação visual (por exemplo, ajuste de alvo exibido) durante a inicialização.[0027] In one embodiment, an in situ target creation (ITC) module, as described herein, can initialize a flat target instantly from a single reference image. The term module is used to refer to hardware, firmware, software, or some combination thereof, which is capable of performing the aforementioned functions. For example, an ITC may receive images or video from a
[0028] O ITC pode emitir ou exibir uma representação em realidade aumentada (AR) das imagens de entrada ou vídeo após receber a entrada de imagens ou vídeo. Em algumas modalidades, o ITC pode exibir a representação de AR (por exemplo, uma modificação ou adição de um objeto virtual em uma cena do mundo real) do alvo em tempo real, próximo a tempo real, dentro de uma janela de curto período de tempo, ou instantaneamente mediante a inicialização do alvo a partir de uma única imagem que depende das capacidades do dispositivo 100. Em algumas modalidades, o módulo de ITC pode inicializar e exibir a representação de AR sem qualquer entrada de sensor adicional (por exemplo, sem o auxílio de um acelerômetro, telêmetro a laser, giroscópio, GPS, ou outros sensores usados para determinar posição). Portanto, sistemas de matriz de múltiplas câmeras dispendiosos e complexos podem ser minimizados e o ITC pode ser acoplado a sensores de câmera comumente disponíveis. Por exemplo, o ITC pode ser acoplado a um dispositivo móvel de única câmera, tal como um telefone inteligente, ou um dispositivo do tipo para vestir tal como os óculos AR.[0028] The ITC may emit or display an augmented reality (AR) representation of the input images or video after receiving the images or video input. In some embodiments, the ITC can display the AR representation (e.g., a modification or addition of a virtual object to a real-world scene) of the target in real-time, close to real-time, within a short period of time. time, or instantly upon initialization of the target from a single image depending on the capabilities of the
[0029] Em uma modalidade, o ITC pode inicializar o alvo plano tratando-se (por exemplo, passando-se um parâmetro/configuração de ponto de vista durante a inicialização) toda a imagem de câmera capturada (por exemplo, a única imagem de referência) como uma vista paralela frontal de um objeto alvo. Em outras modalidades, o ITC pode inicializar o alvo plano com uma porção ou subseção da imagem de câmera completa. O ITC pode criar um conjunto de dados preciso para o rastreamento de recurso natural de alvo plano sem quaisquer marcadores ou rótulos predeterminados.[0029] In one embodiment, the ITC can initialize the flat target by treating (e.g., passing a viewpoint parameter/setting during initialization) the entire captured camera image (e.g., the single camera image). reference) as a front parallel view of a target object. In other embodiments, the ITC may initialize the flat target with a portion or subsection of the complete camera image. ITC can create an accurate dataset for flat target natural feature tracking without any predetermined markers or labels.
[0030] Devido ao fato de que o ITC pode inicializar plenamente um alvo plano a partir de uma única imagem de referência, nenhum movimento ou entrada de câmera específico adicional é usado antes de o rastreamento poder iniciar. Em algumas modalidades, o ITC pode rastrear uma cena ou objeto imediatamente, em tempo real, próximo a tempo real, ou dentro de uma janela de curto período de tempo de receber a imagem de referência e pode fornecer concomitantemente atualizações de AR em tempo real para o visor (por exemplo, um aumento do alvo). Através da habilitação de rastreamento de alvo a partir da inicialização de uma única imagem de referência inicial, usuários são naturalmente (isto é, sem solicitação ou instruções específicas) encorajados a continuar a mover/reposicionar a câmera e explorar um alvo ou cena com a câmera. Uma maior exploração de uma cena em diferentes ângulos e pontos de vista permite que o ITC colete imagens subsequentes adicionais que podem ser testadas para uma translação suficiente a partir da primeira imagem de referência. Uma vez que uma imagem com translação suficiente é detectada, a imagem pode ser atribuída como uma segunda imagem de referência para ser usada na triangulação ou refinamento adicional do mapa, alvo e pose de câmera.[0030] Due to the fact that the ITC can fully initialize a flat target from a single reference image, no additional specific camera movement or input is used before tracking can start. In some embodiments, the ITC can track a scene or object immediately, in real-time, close to real-time, or within a short time window of receiving the reference image and can concurrently provide real-time AR updates for the viewfinder (for example, a target magnification). By enabling target tracking from initialization of a single initial reference image, users are naturally (i.e. without prompts or specific instructions) encouraged to continue to move/reposition the camera and explore a target or scene with the camera . Further exploration of a scene from different angles and viewpoints allows ITC to collect additional subsequent images that can be tested for sufficient translation from the first reference image. Once an image with sufficient translation is detected, the image can be assigned as a second reference image to be used for triangulation or further refinement of the map, target and camera pose.
[0031] A Figura 2 ilustra um fluxograma de uma modalidade de criação de alvo in situ. No bloco 205, o ITC pode inicializar um alvo plano a partir de uma imagem capturada (por exemplo, como uma única imagem de referência) e anterior ao processamento de quaisquer outras/subsequentes imagens. Em algumas modalidades, a inicialização pode ocorrer imediatamente, em tempo real, próximo a tempo real ou dentro de uma janela de curto período de tempo da captura de imagem de referência. O ITC pode criar o alvo plano com base no processamento da única imagem de referência. Conforme usado no presente documento, plano é usado para descrever objetos aproximadamente achatados com uma superfície bidimensional. Por exemplo, processar uma imagem capturada (por exemplo, uma imagem de inicialização capturada a partir da câmera 114) pode incluir calcular um conjunto de recursos ou pontos de recurso extraídos e tratar a única imagem de referência como uma vista paralela frontal de um alvo. A inicialização do alvo plano é descrita em maiores detalhes abaixo.[0031] Figure 2 illustrates a flowchart of an in situ targeting modality. At
[0032] No bloco 210, o ITC pode processar uma ou mais imagens subsequentes. O processamento pode incluir determinar um conjunto de recursos dentro da imagem subsequente. O conjunto de recursos pode ser os mesmos recursos determinados após o processamento da única imagem de referência, entretanto, a localização de recurso de referência para um ou mais recursos pode ser diferente na imagem subsequente se a pose da câmera tiver mudado desde o processamento da única imagem de referência.[0032] At
[0033] No bloco 215, o ITC pode rastrear o alvo plano (por exemplo, um recurso natural alvo plano) em seis graus de liberdade mediante o processamento das uma ou mais imagens subsequentes. Em algumas modalidades, o rastreamento de ITC pode ocorrer imediatamente, instantaneamente, em tempo real, próximo a tempo real, ou dentro de um curto período de tempo que segue o recebimento pelo ITC da única imagem de referência. O rastreamento do alvo pode incluir comparar localizações de cada ponto de recurso a partir da única imagem de referência com recursos correspondentes em imagem(ns) subsequente(s) e determinar uma mudança na localização de um ou mais dentre os mesmos pontos de recurso encontrados em ambas as imagens. Para cada imagem subsequente (por exemplo, uma imagem capturada e processada após a imagem de referência inicial) o ITC pode atualizar as localizações de recurso de referência para fornecer uma pose de câmera atualizada.[0033] At
[0034] O ITC pode continuar o rastreamento de um alvo (por exemplo, cena, objeto ou mapa) com base em processamento de uma ou mais imagens subsequentes (por exemplo, uma ou mais imagens capturadas em um ponto mais à frente no tempo a partir da captura da única imagem de referência). Em algumas modalidades, o ITC também pode fazer com que o visor de dispositivo emita uma representação em realidade aumentada do alvo imediatamente, em tempo real, próximo a tempo real ou dentro de uma janela de curto período de tempo da inicialização do alvo plano.[0034] The ITC may continue tracking a target (e.g. scene, object or map) based on processing one or more subsequent images (e.g. one or more images captured at a point further in time than from capturing the single reference image). In some embodiments, the ITC can also cause the device display to emit an augmented reality representation of the target immediately, in real-time, close to real-time, or within a short time window of flat target initialization.
[0035] No bloco 216, o ITC pode selecionar uma segunda imagem de referência a partir das uma ou mais imagens processadas subsequentes. Por exemplo, uma segunda imagem de referência pode ser selecionada mediante a determinação do ITC de que a translação da segunda imagem de referência em relação à primeira imagem de referência atende um limiar de translação.[0035] At block 216, the ITC may select a second reference image from the one or more subsequent processed images. For example, a second reference image can be selected by determining the ITC that the translation of the second reference image relative to the first reference image meets a translation threshold.
[0036] No bloco 220, o ITC pode adicionalmente refinar o alvo plano para um alvo plano mais preciso. Por exemplo, o ITC pode otimizar a câmera e modelo (alvo) com base no(s) recurso(s) acumulado(s) a partir de uma imagem subsequente que atende(m) um limiar de translação. Detalhes adicionais sobre o refinamento do alvo plano são descritos abaixo.[0036] In
[0037] Em algumas modalidades, o ITC pode inicializar um alvo plano imediatamente, em tempo real, próximo a tempo real ou dentro de uma janela de curto período de tempo de recebimento de uma imagem capturada (isto é, única imagem de referência) e anterior ao processamento de quaisquer imagens subsequentes. Em algumas modalidades, o ITC pode criar um alvo completamente plano com base inteiramente no processamento da única imagem de referência.[0037] In some embodiments, the ITC can initialize a flat target immediately, in real-time, close to real-time, or within a short time window of receiving a captured image (i.e., single reference image) and prior to processing any subsequent images. In some embodiments, the ITC can create a completely flat target based entirely on processing the single reference image.
[0038] Adicionalmente, em algumas modalidades, o ITC pode não ter acesso a e pode não solicitar entrada pertencente a informações predeterminadas sobre um alvo tal como objeto ou marcadores de cena, mapa, medidas de dados de sensor alternado ou outras informações de alvo coletadas antes de uma imagem capturada inicial.[0038] Additionally, in some embodiments, the ITC may not have access to and may not request input pertaining to predetermined information about a target such as object or scene markers, map, alternate sensor data measurements, or other target information collected beforehand. of an initial captured image.
[0039] Em algumas modalidades, um dispositivo (por exemplo, o dispositivo 100) pode automaticamente iniciar, executar ou rodar o ITC (por exemplo, através do uso do processador 161) sem qualquer interação de usuário direta ou manual. Em algumas modalidades, o dispositivo pode capturar uma primeira imagem a partir de uma câmera (por exemplo, câmera 114) e enviar a imagem para o ITC para inicialização de alvo plano, rastreamento e/ou processamento de realidade aumentada. Alternativamente, em algumas modalidades, o ITC pode fazer com que o dispositivo solicite que um usuário comece a inicialização e rastreamento de um alvo através do toque em uma tela sensível ao toque, pressionando-se um botão ou entrada similar. O ITC também pode ser integrado em uma aplicação ou programa, e a aplicação ou programa pode capturar a única imagem de referência e acionar o ITC.[0039] In some embodiments, a device (eg, device 100) may automatically start, run, or run the ITC (eg, through the use of processor 161) without any direct or manual user interaction. In some embodiments, the device may capture a first image from a camera (eg, camera 114) and send the image to the ITC for flat target initialization, tracking, and/or augmented reality processing. Alternatively, in some embodiments, the ITC may have the device prompt a user to begin booting and tracking a target by touching a touchscreen, pressing a button, or similar input. The ITC can also be integrated into an application or program, and the application or program can capture the single reference image and trigger the ITC.
[0040] Em algumas modalidades, a imagem capturada pode ser recebida a partir de uma alimentação de imagem no dispositivo ou um usuário pode iniciar a captura da imagem capturada. A única imagem de referência pode ser automaticamente capturada pela câmera 114 quando uma movimentação ou movimento da câmera é detectado. As imagens capturadas podem ser imagens estáticas da câmera ou quadros a partir de uma alimentação de vídeo.[0040] In some embodiments, the captured image can be received from an image feed on the device or a user can initiate capture of the captured image. The single reference image can be automatically captured by
[0041] Um recurso (por exemplo, ponto de recurso ou ponto de interesse) conforme usado no presente documento é como uma parte interessante ou notável de uma imagem. Os recursos extraídos a partir da imagem podem representar pontos distintos ao longo de espaço tridimensional (por exemplo, coordenadas em eixos X, Y e Z) e todo ponto de recurso pode ter uma localização de recurso associada. A única imagem de referência pode ter recursos de referência que são usadas para comparação para recursos encontrados em imagens subsequentes. Os recursos em imagens subsequentes tanto se correlacionam como falham em se correlacionar (isto é, são iguais) como os recursos de referência da única imagem de referência. A detecção de recurso pode ser uma operação de processamento de imagem para examinar todo pixel para determinar se um recurso existe em um pixel em particular. A detecção de recurso pode processar uma imagem inteira ou, alternativamente certas porções ou partes da imagem.[0041] A feature (eg feature point or point of interest) as used in this document is like an interesting or notable part of an image. Features extracted from the image can represent distinct points along three-dimensional space (eg coordinates in X, Y and Z axes) and every feature point can have an associated feature location. The single reference image can have reference features that are used for comparison to features found in subsequent images. Features in subsequent images either correlate or fail to correlate (ie, are the same) as the reference features of the single reference image. Feature detection can be an image processing operation to examine every pixel to determine if a feature exists in a particular pixel. Feature detection can process an entire image or alternatively certain portions or parts of the image.
[0042] Para cada imagem capturada ou quadro de vídeo, uma vez que recursos tenham sido detectados, um patch de imagem local ao redor do recurso pode ser extraído. Os recursos podem ser extraídos através do uso de uma técnica bem conhecida, tal como Transformação de Recurso Invariável em Escala (SIFT), que localiza recursos e gera as descrições dos mesmos. Caso seja desejado, outras técnicas, tal como Recursos Robustos de Aumento de Velocidade (SURF), histograma de Orientação de Localização Gradiente (GLOH), Correlação Cruzada Normalizada (NCC) ou outras técnicas comparáveis podem ser usadas. Quando o número de recursos extraídos para uma imagem é determinado como excedendo um limiar (por exemplo, recursos de 100 pontos ou outro número de pontos) a imagem pode ser salva como a única imagem de referência e os recursos extraídos podem ser definidos como recursos/pontos de referência (ou pontos de recurso extraídos) de um alvo.[0042] For each captured image or video frame, once features have been detected, a local image patch around the feature can be extracted. Features can be extracted using a well-known technique such as Scale Invariant Feature Transformation (SIFT), which locates features and generates descriptions of them. If desired, other techniques, such as Robust Speed Increase Features (SURF), Gradient Location Guidance Histogram (GLOH), Normalized Cross Correlation (NCC) or other comparable techniques can be used. When the number of features extracted for an image is determined to exceed a threshold (e.g. 100-point features or other number of points) the image can be saved as the only reference image and the extracted features can be defined as features/ landmarks (or extracted feature points) of a target.
[0043] Um alvo, conforme usado no presente documento, pode incluir recursos extraídos a partir de um único objeto isolado dentro de uma imagem, ou múltiplos objetos. Por exemplo, toda uma cena capturada em uma imagem pode incluir múltiplos objetos e cada objeto pode ter um ou mais recursos extraídos. Um grupo de objetos dentro de uma imagem ou cena também pode ter um conjunto de recursos coletivos combinados associado a todo o grupo.[0043] A target, as used herein, may include features extracted from a single isolated object within an image, or multiple objects. For example, an entire scene captured in an image can include multiple objects and each object can have one or more extracted features. A group of objects within an image or scene can also have a combined collective resource set associated with the entire group.
[0044] O ITC pode usar recursos a partir de toda a imagem de referência única para criar o alvo plano. Para determinar o alvo, o ITC pode fazer uma pressuposição inicial de que todos os recursos se encontram em um plano paralelo ao plano de câmera (recursos de referência podem ser inicializados em uma mesma distância/profundidade a partir da câmera perpendicular para a direção de observação).[0044] ITC can use resources from the entire single reference image to create the flat target. To determine the target, the ITC can make an initial assumption that all features lie in a plane parallel to the camera plane (reference features can be initialized at the same distance/depth from the camera perpendicular to the observation direction ).
[0045] O alvo plano inicializado pode ser armazenado em memória (por exemplo, na memória 164) e associado a um ou mais recursos extraídos ou calculados a partir da única imagem de referência.[0045] The initialized flat target may be stored in memory (eg in memory 164) and associated with one or more features extracted or calculated from the single reference image.
[0046] Em uma modalidade, o ITC pode habilitar rastreamento de alvo imediatamente, em tempo real, próximo a tempo real ou dentro de uma janela de curto período de tempo de inicialização do alvo plano. Em algumas modalidades, o ITC pode fornecer o rastreamento de câmera imediato, em tempo real, ou próximo a tempo real a partir da única imagem de referência para imagens capturadas subsequentemente. Em algumas modalidades, os métodos de rastreamento delineados no presente documento podem facilitar o rastreamento de ITC de alvos parcialmente oclusos. Além disso, os métodos revelados podem facilitar o rastreamento de ITC de alvos independentes de uma rotação em particular do objeto (por exemplo, objetos horizontal ou verticalmente alinhados são igualmente viáveis para o rastreamento de ITC).[0046] In one embodiment, the ITC can enable target tracking immediately, in real-time, close to real-time or within a short time window of flat target initialization. In some embodiments, the ITC can provide immediate, real-time, or near real-time camera tracking from the single reference image to subsequently captured images. In some embodiments, the tracking methods outlined in this document may facilitate ITC tracking of partially occluded targets. Furthermore, the disclosed methods may facilitate ITC tracking of targets independent of a particular rotation of the object (eg horizontally or vertically aligned objects are equally viable for ITC tracking).
[0047] Em uma modalidade, conforme o dispositivo se move em relação ao alvo (por exemplo, um ou mais objetos ou a cena dentro da imagem de referência), a câmera pode continuar para capturar e processar imagens adicionais subsequentes do alvo a partir dos pontos de vista diferentes. O ITC pode emitir uma representação de AR associada às imagens processadas para o visor de dispositivo (por exemplo, o visor 112). Em uma modalidade, a criação de alvo in situ fornece retroalimentação em tempo real e pode fornecer exibição instantânea, em tempo real ou próximo a tempo real de quaisquer erros de rastreamento de tal modo que um usuário seja encorajado a fornecer movimento adicional de câmera. O movimento de câmera adicional pode fornecer referências de imagem adicionais úteis para refinar adicionalmente o alvo. Por exemplo, mesmo com erros de rastreamento iniciais, o ITC pode fornecer uma representação de alvo precisa o suficiente para promover a exploração de cena adicional pelo usuário até que uma segunda imagem de referência seja descoberta. Uma segunda imagem de referência pode ser usada para reduzir adicionalmente quaisquer erros e refinar o alvo. Em uma modalidade, erros de rastreamento de alvo preliminarmente iniciais são reduzidos quando a primeira imagem de referência está próxima/aproximada de uma vista paralela frontal em relação ao alvo que é rastreado.[0047] In one embodiment, as the device moves relative to the target (e.g., one or more objects or the scene within the reference image), the camera may proceed to capture and process additional subsequent images of the target from the different points of view. The ITC may output an AR representation associated with the processed images to the device display (e.g., display 112). In one embodiment, in-situ targeting provides real-time feedback and can provide instant, real-time, or near-real-time display of any tracking errors such that a user is encouraged to provide additional camera movement. Additional camera movement can provide additional image references useful to further refine the target. For example, even with initial tracking errors, ITC can provide a target representation accurate enough to promote further scene exploration by the user until a second reference image is discovered. A second reference image can be used to further reduce any errors and refine the target. In one embodiment, preliminarily initial target tracking errors are reduced when the first reference image is close/close to a parallel front view of the target being tracked.
[0048] A Figura 3 ilustra um alvo que está paralelo frontal ao plano de câmera. A Figura 3 ilustra quatro objetos circulares 360, 365, 360 e 375 em um alvo plano 310. Os quatro objetos se encontram ao longo do mesmo plano de tal modo que cada objeto tenha a mesma coordenada Z e profundidade igual a partir do plano de câmera/dispositivo. O dispositivo 100 pode exibir (por exemplo, através do visor de dispositivo 112) uma representação 330 do objeto de mundo real 310. A representação 330 do objeto de mundo real 310 pode incluir realidade aumentada conforme descrito em maiores detalhes abaixo.[0048] Figure 3 illustrates a target that is frontally parallel to the camera plane. Figure 3 illustrates four
[0049] Em geral, o ITC pode operar em imagens que estão aproximadamente paralelas frontais para obter uma imagem de referência e não é limitado para captura e processamento de alvo exatamente paralelo frontal. O ITC pode atribuir toda a primeira imagem de referência 430 como o alvo e pressupor uma vista paralela frontal em casos onde o plano de câmera não está exatamente paralelo frontal ao alvo.[0049] In general, the ITC can operate on images that are approximately frontal parallel to obtain a reference image and is not limited to capture and processing of exactly frontal parallel target. The ITC can assign the entire first 430 reference image as the target and assume a front parallel view in cases where the camera plane is not exactly front parallel to the target.
[0050] A Figura 4 ilustra um primeiro ponto de vista a partir de um dispositivo posicionado aproximadamente em frente a um alvo plano, em uma modalidade. A Figura 4 ilustra um ponto de vista aproximadamente paralelo frontal de um alvo 405 (por exemplo, uma pintura) a partir da perspectiva do dispositivo 100. O dispositivo 100 pode exibir (por exemplo, através do visor de dispositivo 112) uma representação 425 do objeto de mundo real 405. A representação 425 do objeto de mundo real 405 pode incluir realidade aumentada conforme descrito em maiores detalhes abaixo. O primeiro ponto de vista exemplificador 400 ilustra a criação de um alvo 430 com base em toda a imagem no visor 112. A Figura 4 ilustra que os cantos 410 e 415 (recursos) podem se encontrar em uma coordenada Z diferente e podem ter diferentes profundidades em relação ao plano da câmera 114.[0050] Figure 4 illustrates a first point of view from a device positioned approximately in front of a flat target, in one embodiment. Figure 4 illustrates an approximately parallel front view of a target 405 (e.g., a painting) from the perspective of
[0051] A Figura 5 ilustra um segundo ponto de vista a partir do dispositivo 100 posicionado aproximadamente em frente a um alvo plano, em uma modalidade. A Figura 5 ilustra uma forte distorção 515 devido ao alvo de rastreamento (isto é, toda a primeira imagem de referência 430) a partir do primeiro ponto de vista. A distorção 515 da imagem de referência 430 também pode gerar uma representação A distorcida. Por exemplo, embora a pressuposição inicial de uso de toda a imagem de referência 420 possa ser aproximada, o rastreamento pode ser preciso o suficiente para encorajar uma interação de usuário adicional. O usuário, mediante a visualização da representação do alvo (por exemplo, o AR distorcido exibido no visor de dispositivo 112) pode naturalmente tentar reposicionar o dispositivo 100 e capturar um ângulo alternativo do alvo. Após as imagens de referência subsequentes serem processadas (por exemplo, uma segunda imagem de referência é determinada para ter translação suficiente) o ITC pode triangular precisamente os recursos de alvo para calcular a área coberta pelo alvo plano na primeira e na segunda imagem de referência e o verdadeiro plano normal do alvo plano na primeira e na segunda imagem de referência.[0051] Figure 5 illustrates a second point of view from
[0052] A Figura 6 e a Figura 7 ilustram os mesmos pontos de vista do dispositivo da Figura 4 e da Figura 5, respectivamente, exceto com as representações de alvo respectivas 610 e 710 que têm planos alvo estimados corretamente, em uma modalidade. Por exemplo, o ITC inicializa com toda a primeira imagem de referência como o alvo plano na Figura 4, e mediante a determinação de uma segunda imagem de referência com suficiente linha de base ou translação, o ITC pode corretamente estimar o alvo conforme ilustrado na Figura 6 e na Figura 7.[0052] Figure 6 and Figure 7 illustrate the same device views of Figure 4 and Figure 5, respectively, except with the
[0053] A Figura 6 e a Figura 7 têm um arqueamento correto (por exemplo, após a triangulação do primeiro e do segundo quadro de referência) e pode precisamente aumentar uma representação do objeto de mundo real quando usado em um sistema de AR. Por exemplo, as áreas sombreadas da Figura 6 e da Figura 7 podem ser substituídas ou sobrepostas por um objeto diferente que não a pintura original 405 (por exemplo, inserir uma nova pintura, anúncio comercial, imagem selecionada por usuário, vídeo ou algum outro objeto de AR como uma substituição).[0053] Figure 6 and Figure 7 have correct camber (eg after triangulating the first and second frames of reference) and can accurately augment a representation of the real world object when used in an AR system. For example, the shaded areas in Figure 6 and Figure 7 can be replaced or superimposed by a different object than the original 405 painting (e.g. inserting a new painting, commercial, user-selected image, video, or some other object of AR as a replacement).
[0054] Em uma modalidade, o ITC identifica o alvo em uma imagem e determina a posição e orientação do alvo em relação a um sistema de coordenada e/ou em relação a um plano de câmera. Essas informações podem ser usadas, por exemplo, para permitir que um usuário use um dispositivo como um sistema de AR ou podem ser usadas por um robô para navegar por um ambiente desconhecido. A posição e a orientação (pose) de câmera podem ser descritas por meio de uma transformação de rotação e translação, que traz o objeto a partir de uma pose de referência para a pose observada. Essa transformação de rotação pode ser representada em modos diferentes (por exemplo, como uma matriz de rotação, um quaternião ou outra representação).[0054] In one embodiment, the ITC identifies the target in an image and determines the position and orientation of the target in relation to a coordinate system and/or in relation to a camera plane. This information can be used, for example, to allow a user to use a device such as an AR system, or it can be used by a robot to navigate an unfamiliar environment. Camera position and orientation (pose) can be described through a rotation and translation transformation, which brings the object from a reference pose to the observed pose. This rotation transformation can be represented in different ways (for example, as a rotation matrix, a quaternion, or other representation).
[0055] Em uma modalidade, o ITC seleciona automaticamente as partes (por exemplo, pontos de recurso extraídos) de uma cena que podem ser atualizadas dado o movimento da câmera 114 observado. Em uma modalidade, o ITC pode automaticamente selecionar, a partir de imagens capturadas enquanto a câmera 114 está em movimento e registrando imagens, uma segunda imagem de referência para usar para uma inicialização completa de mapa em 3D. Além disso, o ITC pode estimar o movimento da câmera 114 a partir do alvo plano inicial e fornecer rastreamento de câmera instantâneo antes de um segundo quadro de imagem ser recebido ou processado. Em uma modalidade, o ITC pode operar sem entrada de usuário, e sem depender de quaisquer outros métodos de rastreamento externos.[0055] In one embodiment, the ITC automatically selects the parts (eg extracted feature points) of a scene that can be updated given observed
[0056] Conforme descrito acima, o dispositivo 100 pode ser um dispositivo eletrônico portátil (por exemplo, telefone inteligente, dispositivo de realidade aumentada (AR) dedicado, dispositivo de jogo, dispositivo do tipo para vestir tal como óculos, ou outro dispositivo com processamento de AR e capacidades de exibição). O dispositivo que implanta o sistema de AR descrito no presente documento pode ser usado em uma variedade de ambientes, tais como centros de compras, ruas, ambientes fechados, ou em qualquer lugar que um usuário possa levar um dispositivo portátil. Em um contexto de AR, um usuário pode usar o dispositivo 100 para visualizar uma representação do mundo real através do visor do dispositivo dos mesmos. Um usuário pode interagir com o dispositivo com capacidade de AR do mesmo através do uso da câmera do dispositivo dos mesmos para receber imagens/vídeo do mundo real e aplicar ou sobrepor informações adicionais ou alternativas nas imagens/vídeo do mundo real exibidas no dispositivo. Conforme um usuário visualiza uma implantação de AR no dispositivo do mesmo, os objetos ou cenas do mundo real podem ser substituídos ou alterados em tempo real no visor de dispositivo. Os objetos virtuais (por exemplo, texto, imagens, vídeo) podem ser inseridos na representação de uma cena retratada em um visor de dispositivo.[0056] As described above,
[0057] Em uma modalidade, a experiência de usuário de um dispositivo de AR pode ser altamente aprimorada através da atualização automática da AR exibida no dispositivo conforme o usuário move o dispositivo e sem conhecimento anterior do ambiente do usuário. Por exemplo, em algumas modalidades, o ITC pode operar sem um mapa, modelo de CAD, marcadores na cena ou similar. O ITC também pode aprimorar a experiência do usuário através do fornecimento de retroalimentação visual (por exemplo, atualizações de AR para o alvo representado no visor 112) sem múltiplas capturas de imagem diferentes e precisas. Em algumas modalidades, as atualizações visuais para o sistema de AR podem ser fornecidas para o visor e o usuário em tempo real, próximo a tempo real, quase que instantaneamente ou dentro de uma janela de curto período de tempo de captura da primeira imagem de referência.[0057] In one embodiment, the user experience of an AR device can be highly enhanced by automatically updating the AR displayed on the device as the user moves the device and without prior knowledge of the user's environment. For example, in some embodiments, ITC can operate without a map, CAD model, scene markers, or similar. The ITC can also enhance the user experience by providing visual feedback (eg AR updates for the target represented in the display 112) without multiple different and accurate image captures. In some embodiments, visual updates to the AR system can be provided to the viewer and user in real-time, near real-time, near-instantaneously, or within a short time window of capturing the first reference image. .
[0058] O movimento do dispositivo 100 e/ou da câmera 114 pode fazer com que o visor atualize, em tempo real, ou próximo a tempo real, um aumento do alvo (por exemplo, um ou mais objetos ou cenas) que está sendo rastreado. Com o movimento do dispositivo para longe de uma posição de imagem de referência inicial, o dispositivo pode capturar imagens adicionais a partir de vistas alternativas. Conforme as vistas alternativas são exibidas, o aumento de cena pode se tornar mais preciso enquanto o ITC processa as imagens adicionais. Em uma modalidade, quando a câmera 114 move e a pose de câmera muda (por exemplo, através de movimento iniciado por usuário ou robô) o ITC pode selecionar uma imagem apropriada para ser usada como uma segunda imagem de referência. A segunda imagem de referência pode ser selecionada a partir de uma alimentação ou transmissão de imagem. Em uma modalidade, mediante a constatação de uma imagem com translação suficiente a partir de uma imagem de referência inicial, a imagem constatada pode ser automaticamente atribuída como uma segunda imagem de referência. Os recursos a partir da segunda imagem de referência podem ser extraídos e triangulados com recursos a partir do primeiro quadro de imagem para refinar o alvo e aumentar a precisão de rastreamento. Após extrair recursos e triangular a partir da segunda imagem de referência, uma precisão elevada do aumento pode ser alcançada (por exemplo, bordas ao redor de um objeto podem se encaixar de forma mais precisa, a representação do objeto na cena aparecerá mais realística, e a alocação de alvo pode ser mais precisa em relação à pose da câmera 114).[0058] Movement of
[0059] Em uma modalidade, um objeto ou gráfico pode ser inserido ou integrado em uma transmissão de vídeo (ou imagem) capturada pela câmera 114 e exibida no visor 112. Em algumas modalidades, o ITC pode opcionalmente solicitar ao usuário informações adicionais para aumentar o alvo. Por exemplo, o usuário pode ter a possibilidade de adicionar conteúdo de usuário para aumentar a representação do alvo. O conteúdo de usuário pode ser uma imagem, objeto em 3D, vídeo, texto ou outro tipo de conteúdo que pode ser integrado com, ou sobreposto com, ou substituir uma representação do alvo.[0059] In one embodiment, an object or graphic may be inserted into or integrated into a video stream (or image) captured by
[0060] O visor pode atualizar em tempo real com rastreamento direto a partir da cena original. Por exemplo, o texto em uma placa pode ser substituído com um texto alternativo, ou um objeto em 3D pode ser estrategicamente posto na cena e exibido no dispositivo 100. Quando o usuário muda a posição e orientação da câmera 114, o gráfico ou objeto pode ser ajustado ou aumentado para correlacionar o movimento relativo da câmera 114. Por exemplo, se um objeto virtual é inserido em um visor de realidade aumentada, o movimento de câmera para longe do objeto virtual pode reduzir o tamanho do objeto virtual em relação à distância percorrida pela câmera 114. Por exemplo, dar quatro passos para trás a partir de um objeto virtual deveria causar uma redução maior em tamanho do objeto virtual em comparação a dar meio passo para trás a partir do objeto virtual, todas as outras variáveis sendo iguais. Os gráficos de movimento ou animações podem ser animados dentro da cena representada pelo ITC. Por exemplo, um objeto animado pode “se mover” dentro de uma cena retratada no visor de realidade aumentada.[0060] The viewfinder can update in real-time with direct tracking from the original scene. For example, text on a sign can be replaced with alternative text, or a 3D object can be strategically placed in the scene and displayed on
[0061] Um indivíduo versado na técnica reconhecerá que as modalidades descritas no presente documento podem ser implantadas em modos diferentes do AR (por exemplo, posicionamento por robô ou outra implantação para utilizar a criação in situ de alvos planos de recurso natural).[0061] One skilled in the art will recognize that the modalities described herein may be deployed in modes other than AR (eg robot positioning or other deployment to utilize in situ creation of flat natural resource targets).
[0062] A Figura 8 é um fluxograma que ilustra uma modalidade de criação de alvo in situ. No bloco 810, o ITC pode criar ou inicializar um alvo plano a partir de uma primeira imagem de referência conforme descrito acima.[0062] Figure 8 is a flowchart illustrating an in situ targeting modality. At
[0063] No bloco 815, o ITC pode iniciar o rastreamento do alvo. Em uma modalidade, o rastreamento de alvo inicial é iniciado quando a câmera 114 se move (por exemplo, em 6DoF) em qualquer direção. Em uma modalidade, o ITC rastreia o alvo em 6D0F enquanto a câmera ou sensor de imagem mantém o ponto de vista menos parcial (isto é, não inteiramente ocluso) para o alvo.[0063] At
[0064] No bloco 820, o ITC pode determinar se um limiar de translação ou linha de base é atendido antes da seleção da imagem capturada atual como a segunda imagem de referência a ser usada para o refinamento do alvo. Por exemplo, o limiar de translação pode ser com base na quantidade de movimento ou mudança em pose de câmera a partir de uma primeira pose de câmera da primeira imagem de referência (por exemplo, a pose de câmera no momento em que primeira imagem de referência foi capturada), para a segunda pose de câmera da segunda imagem de referência (por exemplo, a pose de câmera no momento em que a segunda imagem de referência foi capturada). O movimento de câmera resulta na formação de um ângulo entre a direção de observação a partir da primeira posição de câmera para a segunda (isto é, atual) posição de câmera. Quando o ângulo é grande o suficiente (isto é, um valor de limiar predeterminado é alcançado) para um número suficiente de recursos, o ITC pode executar a triangulação robusta através do uso da primeira imagem de referência e da segunda imagem de referência.[0064] At
[0065] Em uma modalidade, quando uma translação de limiar ocorre, o ITC pode atribuir a imagem associada a atender o limiar de translação (por exemplo, uma imagem capturada/subsequente) como uma segunda imagem de referência e continuar para o bloco 825. De outro modo, o ITC pode continuar a rastrear o alvo plano inicial no bloco 815. Em uma modalidade, o ITC pode iterar através de múltiplas imagens (por exemplo, a partir de uma série de quadros capturados a partir da câmera 114) o processamento de cada imagem para determinar se o limiar de translação é atendido.[0065] In one embodiment, when a threshold translation occurs, the ITC may assign the image associated with meeting the translation threshold (e.g. a captured/subsequent image) as a second reference image and proceed to block 825. Otherwise, the ITC may continue to track the initial flat target at
[0066] No bloco 825, o ITC pode correlacionar um ou mais recursos extraídos/calculados (por exemplo, pontos de recurso, ou recursos de referência) a partir da primeira imagem de referência com a segunda imagem de referência.[0066] At
[0067] No bloco 830, o ITC pode triangular recursos correlacionados com base na primeira e na segunda imagem de referência e os recursos respectivos das mesmas. O ITC pode processar duas imagens que retratam a mesma seção de um objeto ou cena a partir de diferentes direções de observação. O ITC pode encontrar correspondências (isto é, pontos de recurso da mesma cena encontrados tanto na primeira quanto na segunda imagens). O ITC pode calcular a estrutura em 3D desses pontos de recurso correspondentes em conjunto com o movimento que moveu a câmera a partir da primeira imagem de referência para a segunda imagem de referência.[0067] At
[0068] No bloco 835, o ITC pode realizar um ajuste de agrupamento para estimar mais precisamente os pontos de recurso e pose de câmera relativos (por exemplo, coordenadas de recurso 3D). Os pontos de recurso podem representar uma posição de um ou mais pontos em espaço tridimensional, cada ponto descrito por três coordenadas Cartesianas. Dado um conjunto de imagens que retrata um número de pontos de recurso a partir de pontos de vista diferentes, o ajuste de agrupamento pode ser definido como refinando simultaneamente as coordenadas 3D que descrevem a geometria da cena assim como os parâmetros do movimento relativo e características ópticas da câmera empregada para adquirir a imagem. Em algumas modalidades, o ajuste de agrupamento pode ajudar a minimizar o erro de reprojeção entre localizações de imagem observadas e pontos de imagem previstos. O ajuste de agrupamento pode levar em consideração os parâmetros de visualização (por exemplo, pose de câmera, calibragem intrínseca e distorção radial) de modo a obter uma reconstrução ideal em relação ao ruído relacionado aos recursos de imagem observados.[0068] In
[0069] No bloco 840, o ITC pode reter os recursos em plano. Em uma modalidade, o ITC pode reduzir o conjunto de todos os recursos àqueles que se encontram em um plano e criar um novo conjunto de dados alvo através do uso (por exemplo, seleção) tanto da única imagem de referência (isto é, a primeira imagem de referência) como da segunda imagem de referência, dependendo de qual imagem de referência é mais adequada para representar o plano estimado. Em uma modalidade, o ITC pode destorcer a primeira ou a segunda imagem de referência para criar um alvo a partir de uma vista retificada caso nem a primeira nem a segunda imagem de referência estejam próximas o suficiente de um limiar paralelo frontal.[0069] At
[0070] No bloco 845, o ITC pode adicionalmente otimizar a câmera e o modelo (alvo) com base em recurso(s) acumulado(s) a partir de imagens adicionais de referência. Em uma modalidade, o ITC otimiza a câmera e o modelo com base em movimentos registrados (por exemplo, movimento subsequente à imagem de referência inicial) da câmera. Conforme a câmera se move (por exemplo, movimento iniciado por usuário ou movimento robótico), o visor pode atualizar em tempo real. Receber retroalimentação em tempo real pode encorajar um usuário a continuar a mover a câmera. Um movimento de câmera adicional pode fornecer refinamento adicional do modelo e maior precisão em rastreamento. Por exemplo, em um contexto de realidade aumentada, o dispositivo exibe um gráfico integrado ou objeto na cena e o gráfico ou objeto é posicionado na cena de tal modo que quando a câmera é movida (por exemplo, o movimento em um ou mais 6DoF) o gráfico ou objeto mantenha a posição relativa do mesmo em relação a outros objetos ou ao ambiente (em relação à posição e orientação determinada a partir da primeira imagem de referência).[0070] In
[0071] No bloco 850, o ITC pode continuar a rastrear o alvo refinado e opcionalmente fornecer uma representação aumentada do alvo para o visor. O ITC pode emitir o alvo refinado para um outro módulo para rastreamento continuado e visor de AR.[0071] At
[0072] Os ensinamentos no presente documento podem ser incorporados em (por exemplo, implantado dentro de ou realizado por) uma variedade de aparelhos (por exemplo, dispositivos). Em uma modalidade, o ITC pode ser implantado como um mecanismo executado por um processador para receber imagens ou vídeo como entrada. Um ou mais aspectos ensinados no presente documento podem ser incorporados em um telefone (por exemplo, um telefone celular), um assistente de dados pessoais (“PDA”), um computador do tipo tablet, um computador móvel, um computador do tipo laptop, um computador do tipo tablet, um dispositivo de entretenimento (por exemplo, um dispositivo de música ou vídeo), um conjunto de cabeça (por exemplo, fones de ouvido, um fone auricular, etc.), um dispositivo medico (por exemplo, um sensor biométrico, um monitor de frequência cardíaca, um pedômetro, um dispositivo de EKG, etc.), um dispositivo de I/O de usuário, um computador, um servidor, um dispositivo de ponto de venda, um dispositivo de entretenimento, um decodificador, ou qualquer outro dispositivo adequado. Esses dispositivos podem ter exigências de dados e potência diferentes e podem resultar em perfis de potência diferentes gerados para cada recurso ou conjunto de recursos.[0072] The teachings herein may be incorporated into (eg, implanted within or carried by) a variety of apparatus (eg, devices). In one embodiment, the ITC may be deployed as a mechanism executed by a processor to receive images or video as input. One or more aspects taught herein may be incorporated into a telephone (e.g., a cell phone), a personal data assistant (“PDA”), a tablet-type computer, a mobile computer, a laptop-type computer, a tablet computer, an entertainment device (e.g. a music or video device), a headset (e.g. headphones, a headset, etc.), a medical device (e.g. a biometric sensor, a heart rate monitor, a pedometer, an EKG device, etc.), a user I/O device, a computer, a server, a point-of-sale device, an entertainment device, a set-top box , or any other suitable device. These devices may have different data and power requirements and may result in different power profiles generated for each resource or set of resources.
[0073] Em alguns aspectos, um dispositivo sem fio pode compreender um dispositivo de acesso (por exemplo, um ponto de acesso Wi-Fi) para um sistema de comunicação. Tal dispositivo de acesso pode fornecer, por exemplo, conectividade a outra rede através do transceptor 140 (por exemplo, uma rede de área ampla tal como a Internet ou uma rede de celular) através de um enlace de comunicação com ou sem fio. Consequentemente, o dispositivo de acesso pode habilitar um outro dispositivo (por exemplo, uma estação Wi-Fi) para acessar a outra rede ou alguma outra funcionalidade. Além disso, deve-se compreender que um ou ambos os dispositivos podem ser portáteis ou, em alguns casos, relativamente não portáteis.[0073] In some aspects, a wireless device may comprise an access device (eg, a Wi-Fi access point) to a communication system. Such an access device may provide, for example, connectivity to another network through transceiver 140 (e.g., a wide area network such as the Internet or a cellular network) over a wired or wireless communication link. Consequently, the access device may enable another device (eg, a Wi-Fi station) to access the other network or some other functionality. In addition, it should be understood that one or both of these devices may be portable or, in some cases, relatively non-portable.
[0074] Um indivíduo de habilidade comum na técnica compreenderia que informações e sinais podem ser representados através do uso de qualquer de uma variedade de diferentes tecnologias e técnicas. Por exemplo, dados, instruções, comandos, informações, sinais, bits, símbolos e circuitos integrados que podem ser referenciados por toda a descrição acima podem ser representados por tensões, correntes, ondas eletromagnéticas, partículas ou campos magnéticos, partículas ou campos ópticos ou qualquer combinação dos mesmos.[0074] An individual of ordinary skill in the art would understand that information and signals can be represented through the use of any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols and integrated circuits that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, particles or magnetic fields, particles or optical fields, or any combination thereof.
[0075] Aqueles versados na técnica iriam adicionalmente compreender que os vários blocos lógicos ilustrativos, módulos, mecanismos, circuitos e etapas de algoritmos descritos em conexão com as modalidades reveladas no presente documento podem ser implantados como hardware eletrônico, software de computador ou combinações de ambos. Para ilustrar claramente essa intercambialidade de hardware e software, vários componentes, blocos, módulos, mecanismos, circuitos e etapas ilustrativos foram descritos acima geralmente em termos de funcionalidade dos mesmos. Se tal funcionalidade é implantada como hardware ou software depende das restrições de projeto e aplicação particular impostas ao sistema geral. Versados na técnica podem implantar a funcionalidade descrita em modos variáveis para cada aplicação em particular, porém tais decisões de implantação não deveriam ser interpretadas como se afastando do escopo da presente invenção.[0075] Those skilled in the art would further understand that the various illustrative logic blocks, modules, mechanisms, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. . To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, mechanisms, circuits and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends on the particular design and application constraints imposed on the overall system. Those skilled in the art can implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as departing from the scope of the present invention.
[0076] Os vários circuitos, módulos e blocos lógicos ilustrativos descritos em conexão com as modalidades reveladas no presente documento podem ser implantados ou realizados com um processador de uso geral, um processador de sinal digital (DSP), um circuito integrado de aplicação específica (ASIC), uma arranjo de portas programável em campo (FPGA) ou outro dispositivo de lógica programável, lógica de transistor ou porta discreta, componentes de hardware discretos ou qualquer combinação dos mesmos projetada para realizar as funções descritas no presente documento. Um processador de uso geral pode ser um microprocessador, porém na alternativa, o processador pode ser qualquer processador, controlador, microcontrolador ou máquina de estado convencional. Um processador também pode ser implantado como uma combinação de dispositivos de computação, por exemplo, uma combinação de um DSP e um microprocessador, uma pluralidade de microprocessadores, um ou mais microprocessadores em conjunto com um DSP núcleo ou qualquer outra tal configuração.[0076] The various illustrative circuits, modules and logic blocks described in connection with the embodiments disclosed herein may be implemented or realized with a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit ( ASIC), a field programmable gate array (FPGA) or other programmable logic device, transistor or discrete gate logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor can be a microprocessor, but alternatively, the processor can be any processor, controller, microcontroller, or conventional state machine. A processor may also be deployed as a combination of computing devices, for example, a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors together with a core DSP, or any other such configuration.
[0077] As etapas de um método descritas em conexão com as modalidades presente documento podem ser incorporadas diretamente em hardware, em um módulo de software executado por um processador, ou em uma combinação dos dois. Um módulo de software pode residir em memória RAM, memória flash, memória ROM, memória EPROM, memória EEPROM, registros, disco rígido, um disco removível, um CD-ROM, ou qualquer outra forma de meio de armazenamento conhecida na técnica. Um meio de armazenamento exemplificador é acoplado ao processador de modo que o processador possa ler informações a partir do meio de armazenamento e gravar informações ao mesmo. Na alternativa, o meio de armazenamento pode ser integral com o processador. O processador e o meio de armazenamento podem residir em um ASIC. O ASIC pode residir em um terminal de usuário. Na alternativa, o processador e o meio de armazenamento podem residir como componentes discretos em um terminal de usuário.[0077] The steps of a method described in connection with the modalities in this document may be incorporated directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An example storage medium is coupled to the processor so that the processor can read information from the storage medium and write information thereto. Alternatively, the storage medium may be integral with the processor. The processor and storage medium can reside in an ASIC. The ASIC can reside on a user terminal. In the alternative, the processor and storage medium may reside as discrete components on a user terminal.
[0078] Em uma ou mais modalidades exemplificadoras, as funções ou módulos descritos podem ser implantados em hardware (por exemplo, no hardware 162), em software (por exemplo, no software 165), em firmware (por exemplo, no firmware 163) ou em qualquer combinação dos mesmos. Caso implantado em software como um produto de programa de computador, as funções ou módulos podem ser armazenadas em, ou transmitidas como, uma ou mais instruções ou código em um meio legível por computador não transitório. Meios legíveis por computador podem incluir tanto o meio de armazenamento de computador como o meio de comunicação que inclui qualquer meio que facilita a transferência de um programa de computador a partir de um local para outro. Um meio de armazenamento pode ser qualquer meio disponível que pode ser acessado por um computador. A título de exemplo e sem limitação, tais meios legíveis por computador não transitórios podem compreender RAM, ROM, EEPROM, CD-ROM ou outro armazenamento de disco óptico, armazenamento de disco magnético ou outros dispositivos de armazenamento magnético ou qualquer outro meio que pode ser usado para carregar ou armazenar código de programa desejado na forma de instruções ou estruturas de dados e que pode ser acessado por um computador ou processador. Além disso, qualquer conexão é propriamente denominada um meio legível por computador. Por exemplo, se o software for transmitido a partir de um site da web, servidor ou outra fonte remota com o uso de um cabo coaxial, cabo de fibra óptica, par trançado, linha de inscrição digital (DSL) ou tecnologias sem fio como infravermelho, rádio e micro-onda, então, o cabo coaxial, o cabo de fibra óptica, o par trançado, a DSL ou as tecnologias sem fio como infravermelho, rádio e micro-onda estão incluídos na definição de mídia. Disco magnético e disco óptico, conforme usado no presente documento, incluem disco compacto (CD), disco laser, disco óptico, disco versátil digital (DVD), disquete e disco blu-ray em que discos magnéticos normalmente reproduzem dados magneticamente, enquanto discos ópticos reproduzem dados opticamente com lasers. As combinações dos supracitados também devem ser abrangidas pelo escopo de meios legíveis por computador não transitórios.[0078] In one or more exemplifying modalities, the functions or modules described can be implemented in hardware (for example, in hardware 162), in software (for example, in software 165), in firmware (for example, in firmware 163) or any combination thereof. If implemented in software such as a computer program product, the functions or modules may be stored in, or transmitted as, one or more instructions or code on a non-transient computer-readable medium. Computer readable media may include both the computer storage medium and the communication medium which includes any medium that facilitates the transfer of a computer program from one location to another. A storage medium can be any available medium that can be accessed by a computer. By way of example and without limitation, such non-transient computer readable media may comprise RAM, ROM, EEPROM, CD-ROM or other optical disc storage, magnetic disk storage or other magnetic storage devices or any other media that may be used to load or store desired program code in the form of instructions or data structures that can be accessed by a computer or processor. Furthermore, any connection is properly termed a computer-readable medium. For example, if the software is transmitted from a website, server, or other remote source using coaxial cable, fiber optic cable, twisted pair, digital subscription line (DSL), or wireless technologies such as infrared , radio and microwave, then coaxial cable, fiber optic cable, twisted pair, DSL or wireless technologies such as infrared, radio and microwave are included in the definition of media. Magnetic disc and optical disc, as used herein, include compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disc and blu-ray disc where magnetic discs normally reproduce data magnetically, while optical discs reproduce data optically with lasers. Combinations of the above should also fall within the scope of non-transient computer-readable media.
[0079] A descrição anterior das modalidades reveladas é fornecida para possibilitar que qualquer indivíduo versado na técnica produza ou use a presente invenção. Diversas modificações em tais modalidades ficarão prontamente evidentes para os elementos versados na técnica e os princípios genéricos definidos neste documento podem ser aplicados a outras modalidades sem que se afaste do espírito ou escopo da invenção. Desse modo, a presente invenção não se destina a ser limitada às modalidades mostradas neste documento, mas deve ser compatível com o mais amplo escopo consistente com os princípios e recursos inovadores revelados neste documento.[0079] The foregoing description of the disclosed embodiments is provided to enable any person skilled in the art to produce or use the present invention. Various modifications to such embodiments will be readily apparent to those skilled in the art and the generic principles defined herein can be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein, but should be compatible with the broadest scope consistent with the innovative principles and features disclosed herein.
Claims (12)
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/802,834 US10733798B2 (en) | 2013-03-14 | 2013-03-14 | In situ creation of planar natural feature targets |
US13/802,834 | 2013-03-14 | ||
PCT/US2014/018787 WO2014158620A1 (en) | 2013-03-14 | 2014-02-26 | In situ creation of planar natural feature targets |
Publications (2)
Publication Number | Publication Date |
---|---|
BR112015023345A2 BR112015023345A2 (en) | 2017-07-18 |
BR112015023345B1 true BR112015023345B1 (en) | 2022-08-09 |
Family
ID=50382554
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BR112015023345-7A BR112015023345B1 (en) | 2013-03-14 | 2014-02-26 | IN SITU CREATION OF TARGETED NATURAL RESOURCE PLANS |
Country Status (7)
Country | Link |
---|---|
US (2) | US10733798B2 (en) |
EP (2) | EP3640889A1 (en) |
JP (1) | JP6456347B2 (en) |
KR (1) | KR102169492B1 (en) |
CN (2) | CN105074776B (en) |
BR (1) | BR112015023345B1 (en) |
WO (1) | WO2014158620A1 (en) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140270477A1 (en) * | 2013-03-14 | 2014-09-18 | Jonathan Coon | Systems and methods for displaying a three-dimensional model from a photogrammetric scan |
US10733798B2 (en) * | 2013-03-14 | 2020-08-04 | Qualcomm Incorporated | In situ creation of planar natural feature targets |
US9595125B2 (en) * | 2013-08-30 | 2017-03-14 | Qualcomm Incorporated | Expanding a digital representation of a physical plane |
US20150206343A1 (en) * | 2014-01-17 | 2015-07-23 | Nokia Corporation | Method and apparatus for evaluating environmental structures for in-situ content augmentation |
JP6476657B2 (en) * | 2014-08-27 | 2019-03-06 | 株式会社リコー | Image processing apparatus, image processing method, and program |
US9754416B2 (en) * | 2014-12-23 | 2017-09-05 | Intel Corporation | Systems and methods for contextually augmented video creation and sharing |
US10152825B2 (en) | 2015-10-16 | 2018-12-11 | Fyusion, Inc. | Augmenting multi-view image data with synthetic objects using IMU and image data |
RU2613734C1 (en) * | 2015-10-22 | 2017-03-21 | Общество с ограниченной ответственностью "Аби Девелопмент" | Video capture in data input scenario |
US10796477B2 (en) * | 2017-06-20 | 2020-10-06 | Edx Technologies, Inc. | Methods, devices, and systems for determining field of view and producing augmented reality |
WO2019045728A1 (en) * | 2017-08-31 | 2019-03-07 | Sony Mobile Communications Inc. | Electronic devices, methods, and computer program products for controlling 3d modeling operations based on pose metrics |
US10706561B2 (en) * | 2017-12-21 | 2020-07-07 | 612 Authentic Media | Systems and methods to track objects in video |
CN113498530A (en) * | 2018-12-20 | 2021-10-12 | 艾奎菲股份有限公司 | Object size marking system and method based on local visual information |
US11532093B2 (en) | 2019-10-10 | 2022-12-20 | Intermap Technologies, Inc. | First floor height estimation from optical images |
US11370124B2 (en) * | 2020-04-23 | 2022-06-28 | Abb Schweiz Ag | Method and system for object tracking in robotic vision guidance |
US11551366B2 (en) * | 2021-03-05 | 2023-01-10 | Intermap Technologies, Inc. | System and methods for correcting terrain elevations under forest canopy |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2411532B (en) * | 2004-02-11 | 2010-04-28 | British Broadcasting Corp | Position determination |
US7356165B2 (en) * | 2004-03-09 | 2008-04-08 | Matsushita Electric Industrial Co., Ltd. | Imaging apparatus performing a high reliability data analysis |
CN1957373A (en) | 2004-03-12 | 2007-05-02 | 布拉科成像S.P.A.公司 | Accuracy evaluation of video-based augmented reality enhanced surgical navigation systems |
CN100397411C (en) * | 2006-08-21 | 2008-06-25 | 北京中星微电子有限公司 | People face track display method and system for real-time robust |
WO2008032375A1 (en) * | 2006-09-13 | 2008-03-20 | Pioneer Corporation | Image correcting device and method, and computer program |
FR2911707B1 (en) * | 2007-01-22 | 2009-07-10 | Total Immersion Sa | METHOD AND DEVICES FOR INCREASED REALITY USING REAL - TIME AUTOMATIC TRACKING OF TEXTURED, MARKER - FREE PLANAR GEOMETRIC OBJECTS IN A VIDEO STREAM. |
US8126260B2 (en) * | 2007-05-29 | 2012-02-28 | Cognex Corporation | System and method for locating a three-dimensional object using machine vision |
US8446468B1 (en) * | 2007-06-19 | 2013-05-21 | University Of Southern California | Moving object detection using a mobile infrared camera |
US8401276B1 (en) * | 2008-05-20 | 2013-03-19 | University Of Southern California | 3-D reconstruction and registration |
US8970690B2 (en) * | 2009-02-13 | 2015-03-03 | Metaio Gmbh | Methods and systems for determining the pose of a camera with respect to at least one object of a real environment |
US8379130B2 (en) * | 2009-08-07 | 2013-02-19 | Qualcomm Incorporated | Apparatus and method of processing images based on an adjusted value of an image processing parameter |
FR2951565B1 (en) * | 2009-10-20 | 2016-01-01 | Total Immersion | METHOD, COMPUTER PROGRAM AND REAL-TIME OBJECT REPRESENTATION HYBRID TRACKING DEVICE IN IMAGE SEQUENCE |
KR101100784B1 (en) * | 2009-11-10 | 2012-01-02 | 광운대학교 산학협력단 | Method and apparatus for recognizing object |
US8509482B2 (en) | 2009-12-21 | 2013-08-13 | Canon Kabushiki Kaisha | Subject tracking apparatus, subject region extraction apparatus, and control methods therefor |
EP2339537B1 (en) * | 2009-12-23 | 2016-02-24 | Metaio GmbH | Method of determining reference features for use in an optical object initialization tracking process and object initialization tracking method |
KR101080375B1 (en) | 2010-04-23 | 2011-11-04 | 광주과학기술원 | Method for learning object, and method for tracking object using method for tracking object, and system for learning and tracking object |
KR101657120B1 (en) * | 2010-05-06 | 2016-09-13 | 엘지전자 주식회사 | Mobile terminal and Method for displaying image thereof |
EP2395478A1 (en) | 2010-06-12 | 2011-12-14 | Toyota Motor Europe NV/SA | Monocular 3D pose estimation and tracking by detection |
US9013550B2 (en) | 2010-09-09 | 2015-04-21 | Qualcomm Incorporated | Online reference generation and tracking for multi-user augmented reality |
US9262002B2 (en) | 2010-11-03 | 2016-02-16 | Qualcomm Incorporated | Force sensing touch screen |
US20120120113A1 (en) | 2010-11-15 | 2012-05-17 | Eduardo Hueso | Method and apparatus for visualizing 2D product images integrated in a real-world environment |
JP5781682B2 (en) * | 2011-03-23 | 2015-09-24 | メタイオ ゲゼルシャフト ミット ベシュレンクテル ハフツングmetaio GmbH | Method for aligning at least a portion of a first image and at least a portion of a second image using a collinear transform warp function |
US8638986B2 (en) | 2011-04-20 | 2014-01-28 | Qualcomm Incorporated | Online reference patch generation and pose estimation for augmented reality |
US9020187B2 (en) | 2011-05-27 | 2015-04-28 | Qualcomm Incorporated | Planar mapping and tracking for mobile devices |
US9342610B2 (en) * | 2011-08-25 | 2016-05-17 | Microsoft Technology Licensing, Llc | Portals: registered objects as virtualized, personalized displays |
US9305361B2 (en) * | 2011-09-12 | 2016-04-05 | Qualcomm Incorporated | Resolving homography decomposition ambiguity based on orientation sensors |
GB2506338A (en) * | 2012-07-30 | 2014-04-02 | Sony Comp Entertainment Europe | A method of localisation and mapping |
US10733798B2 (en) * | 2013-03-14 | 2020-08-04 | Qualcomm Incorporated | In situ creation of planar natural feature targets |
-
2013
- 2013-03-14 US US13/802,834 patent/US10733798B2/en active Active
-
2014
- 2014-02-26 CN CN201480013489.4A patent/CN105074776B/en active Active
- 2014-02-26 WO PCT/US2014/018787 patent/WO2014158620A1/en active Application Filing
- 2014-02-26 KR KR1020157028697A patent/KR102169492B1/en active IP Right Grant
- 2014-02-26 CN CN201910659586.5A patent/CN110458865B/en active Active
- 2014-02-26 EP EP19211717.4A patent/EP3640889A1/en active Pending
- 2014-02-26 BR BR112015023345-7A patent/BR112015023345B1/en active IP Right Grant
- 2014-02-26 JP JP2016500443A patent/JP6456347B2/en active Active
- 2014-02-26 EP EP14712814.4A patent/EP2973395A1/en not_active Ceased
-
2020
- 2020-07-01 US US16/918,277 patent/US11481982B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
KR20150130483A (en) | 2015-11-23 |
CN110458865B (en) | 2023-08-29 |
JP2016530581A (en) | 2016-09-29 |
US20140267397A1 (en) | 2014-09-18 |
CN105074776B (en) | 2019-08-16 |
BR112015023345A2 (en) | 2017-07-18 |
JP6456347B2 (en) | 2019-01-23 |
US20200334913A1 (en) | 2020-10-22 |
CN110458865A (en) | 2019-11-15 |
EP2973395A1 (en) | 2016-01-20 |
EP3640889A1 (en) | 2020-04-22 |
US11481982B2 (en) | 2022-10-25 |
KR102169492B1 (en) | 2020-10-23 |
CN105074776A (en) | 2015-11-18 |
WO2014158620A1 (en) | 2014-10-02 |
US10733798B2 (en) | 2020-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11481982B2 (en) | In situ creation of planar natural feature targets | |
JP6258953B2 (en) | Fast initialization for monocular visual SLAM | |
JP6348574B2 (en) | Monocular visual SLAM using global camera movement and panoramic camera movement | |
JP6228320B2 (en) | Sensor-based camera motion detection for unconstrained SLAM | |
US9667873B2 (en) | Methods for facilitating computer vision application initialization | |
EP3095092B1 (en) | Method and apparatus for visualization of geo-located media contents in 3d rendering applications | |
JP7355821B2 (en) | System and method for presenting digital assets within a synthetic environment via loosely coupled relocalization and asset management services | |
US20130293686A1 (en) | 3d reconstruction of human subject using a mobile device | |
US20140369557A1 (en) | Systems and Methods for Feature-Based Tracking | |
KR20150013709A (en) | A system for mixing or compositing in real-time, computer generated 3d objects and a video feed from a film camera | |
JP6393000B2 (en) | Hypothetical line mapping and validation for 3D maps |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
B06F | Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette] | ||
B06U | Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette] | ||
B07A | Application suspended after technical examination (opinion) [chapter 7.1 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 26/02/2014, OBSERVADAS AS CONDICOES LEGAIS |