[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

KR20220054582A - 시각 포지셔닝 방법 및 관련 장치, 기기와 컴퓨터 판독 가능한 저장 매체 - Google Patents

시각 포지셔닝 방법 및 관련 장치, 기기와 컴퓨터 판독 가능한 저장 매체 Download PDF

Info

Publication number
KR20220054582A
KR20220054582A KR1020227003202A KR20227003202A KR20220054582A KR 20220054582 A KR20220054582 A KR 20220054582A KR 1020227003202 A KR1020227003202 A KR 1020227003202A KR 20227003202 A KR20227003202 A KR 20227003202A KR 20220054582 A KR20220054582 A KR 20220054582A
Authority
KR
South Korea
Prior art keywords
image
parameter
camera
processed
current image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
KR1020227003202A
Other languages
English (en)
Inventor
카이 후앙
구오펭 장
후준 바오
난 왕
시앙치안 수
Original Assignee
저지앙 센스타임 테크놀로지 디벨롭먼트 컴퍼니 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 저지앙 센스타임 테크놀로지 디벨롭먼트 컴퍼니 리미티드 filed Critical 저지앙 센스타임 테크놀로지 디벨롭먼트 컴퍼니 리미티드
Publication of KR20220054582A publication Critical patent/KR20220054582A/ko
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Algebra (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Analysis (AREA)
  • Automatic Disk Changers (AREA)
  • Manufacturing Optical Record Carriers (AREA)
  • Optical Recording Or Reproduction (AREA)

Abstract

본 발명은 시각 포지셔닝 방법 및 관련 장치, 기기와 컴퓨터 판독 가능한 저장 매체를 개시하고, 여기서, 시각 포지셔닝 방법은, 카메라의 중력 정보를 획득하는 단계; 중력 정보를 이용하여, 카메라가 기설정된 운동 상태에서 촬영한 현재 이미지의 카메라 포즈 파라미터를 획득하는 단계; 및 현재 이미지의 카메라 포즈 파라미터에 기반하여, 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득하는 단계를 포함한다. 상기 방안에서, 시각 포지셔닝 기술의 사용 비용을 줄이고, 시각 포지셔닝 기술의 사용 범위를 확대한다.

Description

시각 포지셔닝 방법 및 관련 장치, 기기와 컴퓨터 판독 가능한 저장 매체
[관련 출원의 상호 참조]
본 발명은 출원 번호가 202011148780.6이고, 출원일이 2020년 10월 23일인 중국 특허 출원에 기반하여 제출한 것이며, 상기 중국 특허 출원의 우선권을 주장하는바, 상기 중국 특허 출원의 모든 내용은 참조로서 본 발명에 인용된다.
본 발명은 컴퓨터 시각 기술 분야에 관한 것이고, 특히 시각 포지셔닝 방법 및 관련 장치, 기기와 컴퓨터 판독 가능한 저장 매체에 관한 것이다.
전자 정보 기술의 발전에 따라, SLAM(Simultaneous Localization And Mapping, 실시간 포지셔닝과 지도 구축)등 시각 포지셔닝 기술은 점차 자율 주행, 실내 내비게이션, AR(Augmented Reality, 증강 현실), VR(Virtual Reality, 가상 현실) 등 분야에 응용되고 있다.
SLAM 등 시각 포지셔닝 기술은 모바일 기기의 카메라 포즈 획득을 통해, 모바일 기기의 자율 포지셔닝, 내비게이션 등 작업을 완성하며, 시각 포지셔닝 기술은 본질적으로 복잡한 수학 문제이다. 현재, SLAM등 시각 포지셔닝 기술은 하드웨어에서 센서에 의지하고, 통상적으로 카메라, 가속도계, 중력계, IMU(Inertial Measurement Unit, 관성 측정 유닛) 등 센서가 수요된다. 그러나, 실제 응용에서, 일반적으로 중고급형 모바일 기기에만 상기의 센서가 완전하게 구성되어 있다. 저급형 모바일 기기에 구성된 센서는 일반적으로 적으며, 보통 IMU를 구성하지 않음으로써, 현존하는 시각 포지셔닝 기술의 사용 비용이 높고, 사용 범위가 좁은 문제를 초래하였다. 이를 감안하여, 시각 포지셔닝 기술의 사용 비용을 줄이고, 시각 포지셔닝 기술의 사용 범위를 확대하는 방법은 해결해야 할 문제로 되었다.
본 발명은 시각 포지셔닝 방법 및 관련 장치, 기기와 컴퓨터 판독 가능한 저장 매체를 제공한다.
본 발명의 제1 측면에서 시각 포지셔닝 방법을 제공하고, 카메라의 중력 정보를 획득하는 단계; 중력 정보를 이용하여, 카메라가 기설정된 운동 상태에서 촬영한 현재 이미지의 카메라 포즈 파라미터를 획득하는 단계; 및 현재 이미지의 카메라 포즈 파라미터에 기반하여, 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득하는 단계를 포함한다.
따라서, 카메라의 중력 정보를 획득하는 것을 통해, 중력 정보를 이용하여, 카메라가 기설정된 운동 상태에서 촬영한 현재 이미지의 카메라 포즈 파라미터를 획득하고, 현재 이미지의 카메라 포즈 파라미터에 기반하여, 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득함으로써, 카메라와 중력 정보에만 의지하여 시각 포지셔닝을 수행할 수 있어, 시각 포지셔닝 기술의 사용 비용을 줄이고, 시각 포지셔닝 기술의 사용 범위를 확대할 수 있다.
여기서, 중력 정보는 중력 방향 정보를 포함하고, 현재 이미지의 카메라 포즈 파라미터에 기반하여, 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득하기 전에, 또한, 현재 이미지에서의 특징 포인트의 특징 방향 정보를 획득하는 단계; 특징 포인트의 특징 방향 정보와 중력 방향 정보를 이용하여, 현재 이미지에서의 특징 포인트의 깊이 정보를 얻는 단계를 포함하고; 현재 이미지의 카메라 포즈 파라미터에 기반하여, 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득하는 단계는, 현재 이미지에서의 특징 포인트의 깊이 정보와 현재 이미지의 카메라 포즈 파라미터에 기반하여, 현재 이미지 이후의 처리될 이미지에서의 특징 포인트의 깊이 정보와 처리될 이미지의 카메라 포즈 파라미터를 획득하는 단계를 포함한다.
따라서, 현재 이미지에서 특징 포인트의 특징 방향 정보를 획득하는 것을 통하고, 특징 포인트의 특징 방향 정보와 중력 정보가 포함하는 중력 방향 정보를 이용하여, 현재 이미지에서의 특징 포인트의 깊이 정보를 얻어, 현재 이미지에만 기반하여 현재 이미지에서의 특징 포인트의 깊이 정보와 현재 이미지의 카메라 포즈 파라미터를 초기화할 수 있고, 현재 이미지에서의 특징 포인트의 깊이 정보와 현재 이미지의 카메라 포즈 파라미터에 기반하여, 현재 이미지 이후의 처리될 이미지에서의 특징 포인트의 깊이 정보와 처리될 이미지의 카메라 포즈 파라미터를 획득할 수 있고, 복수 프레임 이미지를 스캔하여 초기화 작업을 수행할 필요가 없음으로써, 시각 포지셔닝의 응답 속도를 향상할 수 있다.
여기서, 특징 방향 정보는 특징 포인트의 방향 벡터를 포함하고, 중력 방향 정보는 중력 벡터를 포함하고, 깊이 정보는 특징 포인트의 깊이 값을 포함하며; 특징 포인트의 특징 방향 정보와 중력 방향 정보를 이용하여, 현재 이미지에서의 특징 포인트의 깊이 정보를 얻는 단계는, 특징 포인트의 방향 벡터와 중력 벡터에 대해 제1 기설정된 연산을 수행하여, 특징 포인트의 방향 벡터와 중력 벡터 사이의 협각을 얻는 단계; 및 카메라의 기설정된 높이와 협각에 대해 제2 기설정된 연산을 수행하여, 특징 포인트의 깊이 값을 얻는 단계를 포함한다.
따라서, 특징 방향 정보는 특징 포인트의 방향 벡터를 포함하도록 설정되고, 중력 방향 정보는 중력 벡터를 포함하도록 설정되고, 깊이 정보는 특징 포인트의 깊이 값을 포함하도록 설정됨으로써, 특징 포인트의 방향 벡터와 중력 벡터에 대해 제1 기설정된 연산을 수행하여, 특징 포인트의 방향 벡터와 중력 벡터 사이의 협각을 얻음으로써, 카메라의 기설정된 높이와 협각에 대해 제2 기설정된 연산을 수행하여, 특징 포인트의 깊이 값을 얻으므로, 특징 포인트 깊이 값을 획득하는 계산 복잡도를 줄이는 데 유리할 수 있다.
여기서, 제1 기설정된 연산은 내적 연산을 포함하고, 및/ 또는, 제2 기설정된 연산은 기설정된 높이를 협각의 코사인으로 나누는 것 중 적어도 하나를 포함한다.
따라서, 제1 기설정된 연산을 내적 연산을 포함하도록 설정하여, 방향 벡터와 중력 벡터 사이 협각을 획득하는 복잡도를 줄이는 데 유리할 수 있고, 제2 기설정된 연산을 기설정된 높이를 협각의 코사인으로 나누는 것을 포함하도록 설정하여, 깊이 값을 획득하는 복잡도를 줄이는 데 유리할 수 있다.
여기서, 현재 이미지에서의 특징 포인트의 깊이 정보와 현재 이미지의 카메라 포즈 파라미터에 기반하여, 현재 이미지 이후의 처리될 이미지에서의 특징 포인트의 깊이 정보와 처리될 이미지의 카메라 포즈 파라미터를 획득하는 단계는, 기설정된 포즈 추적 방식을 이용하여 현재 이미지에서 특징 포인트의 깊이 정보, 및 현재 이미지의 카메라 포즈 파라미터에 대해 추적 처리를 수행하여, 현재 이미지의 다음 프레임 이미지에서의 특징 포인트의 깊이 정보와 다음 프레임 이미지의 카메라 포즈 파라미터를 얻는 단계; 및 다음 프레임 이미지를 현재 이미지로 사용하고, 기설정된 포즈 추적 방식을 이용하여 현재 이미지에서 특징 포인트의 깊이 정보, 및 현재 이미지의 카메라 포즈 파라미터에 대해 추적 처리를 수행하는 단계 및 후속 단계 다시 실행하는 단계를 포함한다.
따라서, 기설정된 포즈 추적 방식을 이용하여 현재 이미지에서 특징 포인트의 깊이 정보, 및 현재 이미지의 카메라 포즈 파라미터에 대해 추적 처리를 수행하여, 현재 이미지의 다음 프레임 이미지에서의 특징 포인트의 깊이 정보와 다음 프레임 이미지의 카메라 포즈 파라미터를 얻음으로써, 다음 프레임 이미지를 현재 이미지로 사용하고, 기설정된 포즈 추적 방식을 이용하여 현재 이미지에서 특징 포인트의 깊이 정보, 및 현재 이미지의 카메라 포즈 파라미터에 대해 추적 처리를 수행하는 단계 및 후속 단계를 다시 실행함으로써, 카메라 포즈 파라미터를 프레임 별로 계산할 수 있고, 카메라 포즈 파라미터의 누적 오차를 줄이는 데 유리하다.
여기서, 기설정된 포즈 추적 방식을 이용하여 현재 이미지에서 특징 포인트의 깊이 정보, 및 현재 이미지의 카메라 포즈 파라미터에 대해 추적 처리를 수행하여, 현재 이미지의 다음 프레임 이미지에서의 특징 포인트의 깊이 정보와 다음 프레임 이미지의 카메라 포즈 파라미터를 얻는 단계는, 현재 이미지에서의 특징 포인트의 깊이 정보를 이용하여, 특징 포인트가 다음 프레임 이미지에서의 투영점을 결정하고, 특징 포인트가 현재 이미지에서의 로컬 영역의 픽셀 값과 투영점이 다음 프레임 이미지에서의 로컬 영역의 픽셀 값 사이의 차이에 기반하여, 현재 이미지와 다음 프레임 이미지 사이의 포즈 변환 파라미터를 얻고, 포즈 변환 파라미터와 현재 이미지의 카메라 포즈 파라미터를 이용하여, 다음 프레임 이미지의 카메라 포즈 파라미터를 얻으며, 수렴된 3차원 포인트를 이용하여, 다음 프레임 이미지의 카메라 포즈 파라미터를 최적화하여, 특징 포인트의 깊이 정보의 확률 분포를 획득하고, 확률 분포를 이용하여, 다음 프레임 이미지에서 특징 포인트의 깊이 정보를 얻는 단계를 포함한다.
따라서, 현재 이미지에서의 특징 포인트의 깊이 정보를 이용하는 것을 통해, 특징 포인트가 다음 프레임 이미지에서의 투영점을 결정함으로써, 특징 포인트가 현재 이미지에서의 로컬 영역의 픽셀 값과 투영점이 다음 프레임 이미지에서의 로컬 영역의 픽셀 값 사이의 차이에 기반하여, 현재 이미지와 다음 프레임 이미지 사이의 포즈 변환 파라미터를 얻고, 포즈 변환 파라미터와 현재 이미지의 카메라 포즈 파라미터를 이용하여, 다음 프레임 이미지의 카메라 포즈 파라미터를 얻으며, 수렴된 3차원 포인트를 이용하여, 다음 프레임 이미지의 카메라 포즈 파라미터를 최적화함으로써, 카메라 포즈 파라미터에 대해 더욱 최적화를 수행할 수 있어, 카메라 포즈 파라미터의 정확성을 향상하는 데 유리하고; 특징 포인트의 깊이 정보의 확률 분포를 획득하는 것을 통하고, 확률 분포를 이용하여, 다음 프레임 이미지에서 특징 포인트의 깊이 정보를 얻음으로써, 깊이 정보의 분포 확률에 기반하여, 촬영 과정에서 깊이 정보에 대해 최적화를 수행하고; 여기서, 카메라 포즈 파라미터를 깊이 정보와 별도로 최적화를 수행하여, 최적화 계산량을 감소한다.
여기서, 카메라 포즈 파라미터는 회전 파라미터와 변위 파라미터를 포함하고; 현재 이미지의 카메라 포즈 파라미터에 기반하여, 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득한 후, 방법은 또한, 처리될 이미지의 카메라 포즈 파라미터가 기설정된 안정 상태 조건을 만족하지 않는 것에 응답하여, 처리될 이미지의 변위 파라미터를 획득할 수 없는 것을 결정하는 단계; 및, 처리될 이미지의 이전 프레임 이미지의 픽셀 값과 이전 프레임 이미지의 카메라 포즈 파라미터를 이용하여, 처리될 이미지의 회전 파라미터를 얻는 단계를 포함한다.
따라서, 카메라 포즈 파라미터는 회전 파라미터와 변위 파라미터를 포함하도록 설정되고, 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득한 후, 처리될 이미지의 카메라 포즈 파라미터가 기설정된 안정 상태 조건을 만족하지 않는 것에 응답하여, 처리될 이미지의 변위 파라미터를 획득할 수 없는 것을 결정함으로써, 처리될 이미지의 이전 프레임 이미지의 픽셀 값과 이전 프레임 이미지의 카메라 포즈 파라미터를 이용하여, 처리될 이미지의 회전 파라미터를 얻고, 카메라 포즈 파라미터가 정확하지 않을 시, 직접 이미지 픽셀을 이용하여, 회전 파라미터를 추정할 수 있고, 회전 파라미터를 업데이트할 수 없는 것으로 인해 가상 현실에서 가상 물체가 화면에 달라붙는 것과 같은 문제 발생의 확률을 줄이는 데 유리하다.
여기서, 처리될 이미지의 이전 프레임 이미지의 픽셀 값과 이전 프레임 이미지의 카메라 포즈 파라미터를 이용하여, 처리될 이미지의 회전 파라미터를 얻는 단계는, 처리될 이미지와 이전 프레임 이미지 사이의 포즈 변환 파라미터를 이용하여 이전 프레임 이미지에서의 적어두 부분 픽셀 포인트에 대해 투영 변환을 수행하여, 적어도 부분 픽셀 포인트가 처리될 이미지에서의 투영점을 얻는 단계; 적어도 부분 픽셀 포인트가 이전 프레임 이미지에서의 픽셀 값과 적어도 부분 픽셀 포인트에 대응되는 투영점이 처리될 이미지에서의 픽셀 값의 차이를 이용하여, 포즈 변환 파라미터에 관련된 목표 함수를 구축하는 단계; 및 목표 함수를 풀어 얻은 포즈 변환 파라미터를 이용하여 이전 프레임 이미지의 카메라 포즈 파라미터에 대해 변환 처리를 수행하여, 처리될 이미지의 회전 파라미터를 얻는 단계를 포함한다.
따라서, 처리될 이미지와 이전 프레임 이미지 사이의 포즈 변환 파라미터를 이용하여 이전 프레임 이미지에서의 적어도 부분 픽셀 포인트에 대해 투영 변환을 수행하여, 적어도 부분 픽셀 포인트가 처리될 이미지에서의 투영점을 얻고, 적어도 부분 픽셀 포인트가 이전 프레임 이미지에서의 픽셀 값과 적어도 부분 픽셀 포인트에 대응되는 투영점이 처리될 이미지에서의 픽셀 값의 차이를 이용하여, 포즈 변환 파라미터에 관련된 목표 함수를 구축함으로써, 목표 함수를 풀어 얻은 포즈 변환 파라미터를 이용하여 이전 프레임 이미지의 카메라 포즈 파라미터에 대해 변환 처리를 수행하여, 처리될 이미지의 회전 파라미터를 얻으므로, 적어도 부분 픽셀 포인트에 기반하여 회전 파라미터를 얻을 수 있고, 회전 파라미터의 계산량을 줄이는 데 유리할 수 있다.
여기서, 처리될 이미지와 이전 프레임 이미지 사이의 포즈 변환 파라미터를 이용하여 이전 프레임 이미지에서의 적어도 부분 픽셀 포인트에 대해 투영 변환을 수행하여, 적어도 부분 픽셀 포인트가 처리될 이미지에서의 투영점을 얻기 전에, 방법은 또한, 이전 프레임 이미지에 대해 다운 샘플링 처리를 수행하여, 이전 프레임 이미지의 축약 이미지를 얻는 단계를 포함하고; 처리될 이미지와 이전 프레임 이미지 사이의 포즈 변환 파라미터를 이용하여 처리될 이미지에서의 적어도 부분 픽셀 포인트에 대해 투영 변환 처리를 수행하여, 적어도 부분 픽셀 포인트가 처리될 이미지에서의 투영점을 얻는 단계는, 처리될 이미지와 이전 프레임 이미지 사이의 포즈 변환 파라미터를 이용하여 축약 이미지에서의 픽셀 포인트에 대해 투영 변환을 수행하여, 축약 이미지에서의 픽셀 포인트가 처리될 이미지에서의 투영점을 얻는 단계를 포함한다.
따라서, 이전 프레임 이미지에 대해 다운 샘플링 처리를 수행하는 것을 통해, 이전 프레임 이미지의 축약 이미지를 얻음으로써, 처리될 이미지의 이전 프레임 이미지 사이의 포즈 변환 파라미터를 이용하여 축약 이미지에서의 픽셀 포인트에 대해 투영 변환을 수행하여, 축약 이미지에서의 픽셀 포인트가 처리될 이미지에서의 투영점을 얻어, 후속의 목표 함수 구성 및 풀이를 수행하여, 회전 파라미터를 계산하는 계산량을 줄이는 데 유리할 수 있다.
여기서, 처리될 이미지의 이전 프레임 이미지의 픽셀 값과 이전 프레임 이미지의 카메라 포즈 파라미터를 이용하여, 처리될 이미지의 회전 파라미터를 얻은 후, 방법은 또한, 카메라의 현재 가속도 정보를 검출하고, 가속도 정보가 기설정된 운동 상태에 위치하였는 지를 판단하는 단계; 만약 기설정된 운동 상태에 위치하였다면, 카메라의 중력 정보를 획득하는 단계 및 후속 단계를 다시 실행하고; 만약 기설정된 운동 상태에 위치하지 않았다면, 카메라의 현재의 가속도 정보를 검출 하는 단계 및 후속 단계를 다시 실행한다.
따라서, 처리될 이미지의 회전 파라미터를 얻은 후, 카메라의 현재의 가속도 정보를 검출하고, 가속도 정보가 기설정된 운동 상태에 위치하였는 지를 판단함으로써, 기설정된 운동 상태에 위치한 상황에서, 카메라의 중력 정보를 획득하는 단계 및 후속 단계를 다시 실행하고, 기설정된 운동 상태에 위치하지 않은 상황에서, 카메라의 현재의 가속도 정보를 검출하는 단계 및 후속 단계를 다시 실행함으로써, 시각 포지셔닝의 로버스트를 향상하는 데 유리하다.
여기서, 중력 정보는 중력 방향 정보를 포함하고, 카메라 포즈 파라미터는 회전 파라미터와 변위 파라미터를 포함하며, 중력 정보를 이용하여, 카메라가 기설정된 운동 상태에서 촬영한 현재 이미지의 카메라 포즈 파라미터를 획득하는 단계는, 중력 방향 정보를 이용하여, 각각 세계 좌표계의 x 좌표 축, y 좌표 축과 z 좌표 축에 대한 카메라의 회전 각도를 획득하는 단계 - 카메라가 회전 각도에 따라 회전한 후의 중력 방향은 z 좌표 축의 반대 방향과 같음 - ; 및 회전 각도를 이용하여, 회전 파라미터를 얻고, 변위 파라미터를 기설정된 수치로 설정하는 단계를 포함한다.
따라서, 중력 방향 정보를 이용하는 것을 통해, 각각 세계 좌표계의 x 좌표 축, y 좌표 축과 z 좌표 축에 대한 카메라의 회전 각도를 획득하고, 카메라가 회전 각도에 따라 회전한 후의 중력 방향은 z 좌표 축의 반대 방향과 같으며, 회전 파라미터를 얻고, 변위 파라미터를 기설정된 수치로 설정하고, 중력 정렬을 통해 회전 파라미터를 얻을 수 있음으로, 카메라 포즈 파라미터를 초기화하여, 카메라 포즈 파라미터 초기화의 계산량을 줄이는 데 유리하다.
여기서, 세계 좌표계의 원점은 카메라가 현재 이미지를 촬영할 때 위치한 위치이고, 기설정된 수치는 0이다.
따라서, 세계 좌표계의 원점을 카메라가 현재 이미지를 촬영할 때 위치한 위치로 설정하고, 기설정된 수치는 0으로 설정하여, 변위 파라미터 초기화의 복잡도를 줄이는 데 유리하다.
여기서, 기설정된 운동 상태는 정지 상태 또는 등속 운동 상태이고; 및/ 또는, 중력 정보는 카메라가 기설정된 상태에서의 가속도 정보를 이용하여 얻은 것이다.
따라서, 기설정된 운동 상태를 정지 상태 또는 등속 운동 상태로 설정하여, 현재 이미지를 초기화하는 카메라 포즈 파라미터의 정확성을 향상하는 데 유리할 수 있고; 카메라가 기설정된 상태에서의 가속도 정보를 이용해 얻은 중력 정보는, 가속도계만을 이용하여 중력 정보를 얻을 수 있음으로써, 시각 포지셔닝 기술의 사용 비용을 더욱 줄이고, 시각 포지셔닝 기술의 사용 범위를 확대하는 데 유리할 수 있다.
본 발명의 제2 측면에서 시각 포지셔닝 장치를 제공하고, 중력 정보 획득 부분, 제1 포즈 획득 부분과 제2 포즈 획득 부분을 포함하며, 중력 정보 획득 부분은 카메라의 중력 정보를 획득하도록 구성되고; 제1 포즈 획득 부분은 중력 정보를 이용하여, 카메라가 기설정된 운동 상태에서 촬영한 현재 이미지의 카메라 포즈 파라미터를 획득하도록 구성되며; 제2 포즈 획득 부분은 현재 이미지의 카메라 포즈 파라미터에 기반하여, 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득하도록 구성된다.
본 발명의 제3 측면에서 전자 기기를 제공하고, 상호 결합되는 메모리와 프 로세서를 포함하고,프로세서는 메모리에 저장된 프로그램 명령어를 실행하여, 상기 제1 측면에서의 시각 포지셔닝 방법을 구현하기 위한 것이다.
본 발명의 제4 측면에서 컴퓨터 판독 가능한 저장 매체를 제공하며, 프로그램 명령어가 프로세서에 의해 실행될 때 상기 제1 측면에서의 시각 포지셔닝 방법을 구현한다.
본 발명의 제5 측면에서 컴퓨터 판독 가능한 코드를 포함한 컴퓨터 프로그램을 제공하고, 상기 컴퓨터 판독 가능한 코드가 전자 기기에서 작동될 때, 상기 전가 기기에서의 프로세서에 의해 실행되는 상황에서, 상기 제1 측면에서의 시각 포지셔닝 방법을 구현한다.
상기 방안에서, 카메라의 중력 정보를 획득하는 것을 통함으로써, 중력 정보를 이용하여, 카메라가 기설정된 운동 상태에서 촬영한 현재 이미지의 카메라 포즈 파라미터를 획득하고, 현재 이미지의 카메라 포즈 파라미터에 기반하여, 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득함으로써, 카메라와 중력 정보에만 의지하여 시각 포지셔닝을 수행할 수 있으며, 시각 포지셔닝 기술의 사용 비용을 줄이고, 시각 포지셔닝 기술의 사용 범위를 확대할 수 있다.
도 1은 본 발명의 시각 포지셔닝 방법 일 실시예의 흐름 예시도이고;
도 2는 깊이 정보를 획득하는 일 실시예의 예시도이고;
도 3은 도 1에서 단계 S13의 일 실시예의 흐름 예시도이고;
도 4는 본 발명의 시각 추적 방법의 다른 실시예의 흐름 예시도이고;
도 5는 도 4에서 단계 S45의 일 실시예의 흐름 예시도이고;
도 6은 본 발명의 시각 포지셔닝 장치 일 실시예의 프레임워크 예시도이며;
도 7은 본 발명의 전자 기기 일 실시예의 프레임워크 예시도이며;
도 8은 본 발명의 컴퓨터 판독 가능한 저장 매체 일 실시예의 프레임워크 예시도이다.
아래에 명세서 도면을 결합하여, 본 발명의 실시예의 방안을 상세하게 설명한다.
아래의 설명은 설명을 위한 것이지 한정하려는 것은 아니며, 특정 시스템 구조, 인터페이스, 기술과 같은 세부 사항은 본 발명을 완전히 이해하기 위해 제공된다.
본문에서의 용어 “시스템”과 “네트워크”는 본문에서 흔히 서로 교환되어 사용될 수 있다. 본 명세서에서 용어 “ 및 /또는”은 다만 관련 대상의 상관 관계를 설명하기 위한 것일 뿐, 세 가지의 관계가 존재함을 나타내며, 예를 들어, A 및/또는 B는, A가 단독적으로 존재, A 및 B가 동시에 존재, B가 단독적으로 존재하는 세 가지 상황을 나타낸다. 이 밖에, 본문에서의 부호 “/”는 일반적으로 전후 연관 대상이 “또는”의 관계임을 의미한다. 또한, 본 문에서의 “복수”는 두 개 또는 두 개 이상을 나타낸다.
도 1을 참조하면, 도 1은 본 발명의 시각 포지셔닝 방법 일 실시예의 흐름 예시도이다. 시각 포지셔닝 방법은 아래와 같은 단계를 포함할 수 있다.
단계 S11에 있어서, 카메라의 중력 정보를 획득한다.
본 발명의 실시예에서, 시각 포지셔닝 방법의 실행 주체는 시각 포지셔닝 장치일 수 있고, 예를 들어, 시각 포지셔닝 방법은 단말 기기 또는 서버 또는 다른 처리 기기에 의해 실행될 수 있고, 여기서, 단말 기기는 사용자 기기 (User Equipment, UE), 모바일 기기, 사용자 단말, 단말, 셀룰러 폰, 무선 전화, 개인용 정보 단말기(Personal Digital Assistant, PDA), 핸드 헬드 기기, 컴퓨팅 기기, 차량용 기기, 웨어러블 기기 등일 수 있다. 일부 가능한 구현 방식에 있어서, 상기 시각 포지셔닝 방은 프로세서가 메모리에 저장된 컴퓨터 판독 가능한 명령어를 호출하는 방식을 통해 구현될 수 있다.
본 발명의 실시예에서, 카메라는 모바일 기기에 통합될 수 있고; 모바일 기기는 핸드폰, 테블릿pc, 로봇 등을 포함할 수 있지만 이에 한정되지 않는다. 여기서, 본 발명의 실시예 및 아래의 개시 실시예에서의 단계는 모바일 기기에 의해 실행되고, 모바일 기기에는 시각 포지셔닝 장치가 설치되어 있다. 또한, 모바일 기기에는 기타 센서가 통합될 수도 있으며, 예를 들어, 가속도계, 중력계, IMU 등이 통합될 수 있으며, 이에 대해, 실제 응용 시나리오에 따라 설치할 수 있으며, 여기서 한정하지 않는다. 예를 들어, 비용의 제약으로, 저가형 모바일 기기는 카메라와 가속도계만 통합하거나; 또는, 카메라와 중려계도 통합할 수 있으며, 이외, 중고급형 모바일 기기는 카메라, 가속도계, IMU 등도 통합할 수 있으며, 여기서 더이상 한정하지 않는다.
실시 시나리오에서, 중력 정보는 카메라가 기설정된 운동 상태에서의 가속도 정보를 이용하여 얻은 것일 수 있음으로써, IMU없이, 가속도계에만 의존하여 중력 정보를 얻을 수 있다. 여기서, 기설정된 운동 상태는 정지 상태 또는 등속 운동 상태이다. 예를 들어, 기설정된 운동 상태에서 검출하여 얻은 카메라 가속도와 중력 가속도 사이의 차이는 기설정된 범위 내에 있고, 예를 들어, 중력 가속도는 9.8m/s2이고, 기설정된 범위는 0~1m/s2이며, 검출하여 얻은 카메라 가속도가 10m/s2인 상황에서, 카메라가 기설정된 운동 상태라고 볼 수 있고, 기설정된 범위는 실제 응용에 따라 설정을 수행할 수 있으며, 여기서 한정하지 않는다. 이외, 모바일 기기에 중력계가 통합된 상황에서, IMU없이, 직접 중력계를 통해 중력 정보를 획득할 수도 있다.
실시 시나리오에서, 모바일 기기는 또한, 검출하여 얻은 카메라 가속도에 따라 정지 상태 또는 등속 운동 상태에 있는지를 판단할 수 있고, 예를 들어, 검출하여 얻은 카메라 가속도가 중력 가속도에 가까운 상황에서, 정지 상태 또는 등속 운동 상태에 있다고 볼 수 있다. 여기서, 가속도계가 설정된 상황에서, 가속도계가 세축에서의 가속도 구성 요소(예를 들어,
Figure pct00001
)의 제곱합의 루트를 계산 할 수 있고, 카메라 가속도를
Figure pct00002
로 사용하며, 즉
Figure pct00003
이다.
다른 실시 시나리오에서, 카메라가 기설정된 운동 상태에 위치하지 않은 것을 검출한 상황에서, 모바일 기기는 카메라가 기설정된 운동 상태에 위치한 것을 검출할 때까지 다시 검출을 수행할 수 있다. 여기서, 검출된 빈도는 카메라의 촬영 빈도와 일치할 수 있고, 예를 들어, 카메라가 매초 25장의 이미지를 촬영한다면, 이와 상응하게 매초 25회 기설정된 운동 상태에 위치하였는 지를 검출할 수 있고, 이에 대해, 실제 응용의 수요에 따라 설정을 수행할 수 있고, 여기서 한정하지 않는다.
실시 시나리오에서, 카메라의 중력 정보는 중력 방향 정보를 포함할 수 있고; 여기서, 중력 방향 정보는 중력 벡터를 포함할 수 있다. 실시 시나리오에서, 가속도계가 설치되어 있는 상황에서, 가속도계가 세축에서의 가속도 구성 요소의 벡터 합을 계산할 수 있고(즉
Figure pct00004
),벡터의 합을 중력 벡터로 사용하며, 또는, 벡터 합과 같은 방향의 단위 벡터를 중력 벡터로 사용할 수 있고, 중력 벡터에 대해, 실제 응용의 수요에 따라 설정을 수행할 수 있으며, 여기서 한정하지 않는다.
단계 S12에 있어서, 중력 정보를 이용하여, 카메라가 기설정된 운동 상태에서 촬영한 현재 이미지의 카메라 포즈 파라미터를 획득한다.
실시 시나리오에서, 카메라 포즈 파라미터는 변위 파라미터와 회전 파라미터를 포함할 수 있음으로써, 중력 방향 정보를 이용하여, 각각 세계 좌표계의 x 좌표 축, y 좌표 축과 z 좌표 축에 대한 카메라의 회전 각도를 획득하고, 카메라가 회전 각도에 따라 회전한 후의 중력 방향은 z 좌표 축의 반대 방향과 같으며, 회전 파라미터를 얻고, 변위 파라미터를 기설정된 수치로 설정하고, 중력 정렬을 통해 현재 이미지의 카메라 포즈 파라미터 초기화를 간략화하여, 계산량을 줄일 수 있다.
실시 시나리오에서, x 좌표축에 대한 카메라의 회전 각도는
Figure pct00005
로 표시할 수 있고, 카메라 좌표축에 대한 카메라의 회전 각도는
Figure pct00006
로 표시할 수 있으며, z 좌표축에 대한 카메라 회전 각도는
Figure pct00007
로 표시할 수 있음으로, 세계 좌표계 x 좌표축에 대한 카메라의 회전 파라미터
Figure pct00008
,세계 좌표계 y 좌표축에 대한 카메라 회전 파라미터
Figure pct00009
,세계 좌표계 z 좌표축에 대한 카메라의 회전 파라미터
Figure pct00010
는 각각,
Figure pct00011
,
Figure pct00012
,
Figure pct00013
……(1)로 표시할 수 있다.
회전 파라미터
Figure pct00014
은 세계 좌표계 x 좌표축에 대한 회전 파라미터
Figure pct00015
,세계 좌표계 y 좌표축에 대한 회전 파라미터
Figure pct00016
,세계 좌표계 z 좌표축에 대한 회전 파라미터
Figure pct00017
에 의해 얻을 수 있고; 여기서, 상기 회전 파라미터
Figure pct00018
,회전 파라미터
Figure pct00019
와 회전 파라미터
Figure pct00020
의 곱을 회전 파라미터를
Figure pct00021
로 사용할 수 있고, 즉 회전 파라미터
Figure pct00022
은,
Figure pct00023
……(2)로 표시할 수 있다.
다른 실시 시나리오에서, 모바일 기기는 세계 좌표계의 원점을 카메라가 현재 이미지를 촬영할 때 위치한 위치로 사용할 수 있고, 즉 x 좌표축, y 좌표축, z 좌표축을 대하여 카메라의 변위는 모두 0이므로, 기설정된 수치를 0으로 설정할 수 있고, 즉 변위 파라미터는 0으로 설정할 수 있다.
단계 S13에 있어서, 현재 이미지의 카메라 포즈 파라미터에 기반하여, 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득한다.
실시 시나리오에서, 모바일 기기는 스캔하여 복수 프레임 이미지를 얻을 수 있고, 삼각 측량 방식을 이용하여 현재 이미지와 현재 이미지의 인접 이미지에서 매칭되는 특징 포인트에 대해 처리를 수행하여, 매칭되는 특징 포인트의 깊이 정보를 얻고; 여기서, 깊이 정보는 특징 포인트의 깊이 값을 포함할 수 있음으로써, 계산하여 얻은 깊이 값을 이용하여, 특징 포인트가 세계 좌표계에서의 3차원 좌표를 얻을 수 있으며; 현재 이미지의 다음 프레임 이미지와 현재 이미지 사이의 포즈 변환 파라미터를 이용하여, 특징 포인트의 3차원 좌표를 다음 프레임 이미지에 투영하여, 다음 프레임 이미지에서의 투영점을 얻음으로써; 투영점이 다음 프레임 이미지에서의 픽셀 값 및 대응되는 특징 포인트가 현재 이미지에서의 픽셀 값 사이의 차이를 이용하여, 포즈 변환 파라미터에 관련된 목표 함수를 구축하고; 상기 목표 함수의 최소화를 통해, 포즈 변환 파라미터를 구할 수 있고, 포즈 변환 파라미터와 현재 이미지의 카메라 포즈 파라미터를 이용하여, 다음 프레임 이미지의 카메라 포즈 파라미터를 얻을 수 있으며; 마찬가지로, 모바일 기기는 프레임 별로 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득할 수 있다. 실시 시나리오에서, 삼각 측량 방식은 상이한 위치에서 동일한 한 개의 3차원 포인트를 관찰하고, 상이한 위치에서 관찰한 3차원 포인트의 2차원 투영점을 알고, 삼각형 관계를 이용하여, 3차원 포인트의 깊이 정보를 복구하는 것을 나타내며, 여기서 더이상 설명하지 않는다.
다른 실시 시나리오에서, 복수 프레임 이미지 스캔으로 발생하는 추가 응답 시간을 줄이고, 시각 포지셔닝의 응답 속도를 향상하기 위해, 모바일 기기는 또한, 현재 이미지에서 특징 포인트의 특징 방향 정보와 중력 방향 정보를 통해, 현재 이미지에서의 특징 포인트의 깊이 정보를 얻음으로써, 현재 이미지에서의 특징 포인트의 깊이 정보와 현재 이미지의 카메라 포즈 파라미터에 기반하여, 현재 이미지 이후의 처리될 이미지에서의 특징 포인트의 깊이 정보와 처리될 이미지의 카메라 포즈 파라미터를 획득하고, 현재 이미지로만 깊이 정보를 초기화할 수 있고, 복수 프레임 이미지를 스캔하는 것을 피면할 수 있어, 시각 포지셔닝의 응답 속도를 향상하는 데 유리하다.
실시 시나리오에서, 특징 방향 정보는 특징 포인트의 방향 벡터를 포함할 수 있고, 중력 방향 정보는 중력 벡터를 포함하며; 여기서, 방향 벡터와 중력 벡터는 단위 벡터일 수 있고, 깊이 정보는 특징 포인트의 깊이 값을 포함하고; 특징 포인트는 이미지 특징을 설명하는 픽셀 포인트를 포함할 수 있으며, 예를 들어, 이미지의 윤곽선 픽셀 포인트, 픽셀 값이 급격하게 변하는 픽셀 포인트 등등을 포함할 수 있고; 여기서, 특징 포인트에 대해, 실제 응용에 따라 설정을 수행할 수 있으며, 여기서 한정하지 않는다. 예를 들어, FAST(Features from Accelerated Segment Test, 가속 세그먼트 테스트의 특징 ), BRIEF(Binary Robust Independent Elementary Features, 2진법 로버스트 독립 특징 묘사자), SIFT(Scale Invariant Feature Transform, 척도 불변 특징 변환), ORB등 검출 방식을 통해, 특징 포인트 및 특징 포인트의 방향 벡터를 얻고, 이에 대해, 실제 응용에 따라 특징 포인트 검출 방식을 선택할 필요가 있으며, 여기서 한정하지 않는다.
다른 실시 시나리오에서, 도 2를 결부하여, 도 2는 깊이 정보를 획득하는 일 실시예의 예시도이고, 모바일 기기는 특징 포인트의 방향 벡터와 중력 벡터에 대해 제1 기설정된 연산을 수행하여, 특징 포인트의 방향 벡터와 중력 벡터 사이의 협각을 얻을 수 있고, 제1 기설정된 연산은 내적 연산을 포함할 수 있으며, 즉 방향 벡터
Figure pct00024
와 중력 벡터
Figure pct00025
사이의 협각
Figure pct00026
은,
Figure pct00027
……(3)로 표시할 수 있다.
협각
Figure pct00028
을 얻은 후, 카메라의 기설정된 높이
Figure pct00029
와 협각
Figure pct00030
에 대해 제2 기설정된 연산을 수행하여, 특징 포인트의 깊이 값
Figure pct00031
을 얻을 수 있고, 제2 기설정된 연산은 기설정된 높이를 협각의 코사인으로 나누는 것을 포함하고, 기설정된 높이
Figure pct00032
는 실제 응용 상황에 따라 설정을 수행할 수 있으며, AR 응용을 예로 들면, 가상 물체의 크기에 따라 설정을 수행할 수 있고, 예를 들어, 가상 물체가 일반 체형의 고양이, 강아지 등 애완 동물이라면, 기설정된 높이를 0.5미터~1미터로 설정할 수 있고, 기타 응용 상황에서는 실제 상황에 따라 설정을 수행하며, 여기서 더이상 예를 들지 않는다. 여기서, 깊이 값
Figure pct00033
는,
Figure pct00034
……(4)로 표시할 수 있다.
실시 시나리오에서, 본 발명의 실시예 및 하기 개시 실시예에서의 단계는 모바일 기기가 작동하는 실내 내비게이션, 자율 주행, AR, VR등 애플리케이션, 웹페이지에 통합될 수 있고, 이에 대해, 실제 응용 수요에 따라 설정을 수행하며, 여기서 한정하지 않는다.
상기 방안에서, 모바일 기기는 카메라의 중력 정보를 획득하는 것을 통함으로써, 중력 정보를 이용하여, 카메라가 기설정된 운동 상태에서 촬영한 현재 이미지의 카메라 포즈 파라미터를 획득하고, 현재 이미지의 카메라 포즈 파라미터에 기반하여, 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득함으로써, 카메라와 중력 정보에만 의지하여 시각 포지셔닝을 수행할 수 있으며, 시각 포지셔닝 기술의 사용 비용을 줄이고, 시각 포지셔닝 기술의 사용 범위를 확대할 수 있다.
도 3를 참조하면, 도 3은 도 1에서 단계 S13의 일 실시예의 흐름 예시도이다. 도 3은 현재 이미지에서의 특징 포인트의 깊이 정보와 현재 이미지의 카메라 포즈 파라미터에 기반하여, 현재 이미지 이후의 처리될 이미지에서의 특징 포인트의 깊이 정보와 처리될 이미지의 카메라 포즈 파라미터를 획득하는 일 실시예의 흐름 예시도이다. 여기서, S13은 아래의 단계를 포함할 수 있다.
단계 S131에 있어서, 기설정된 포즈 추적 방식을 이용하여 현재 이미지에서 특징 포인트의 깊이 정보, 및 현재 이미지의 카메라 포즈 파라미터에 대해 추적 처리를 수행하여, 현재 이미지의 다음 프레임 이미지에서의 특징 포인트의 깊이 정보와 다음 프레임 이미지의 카메라 포즈 파라미터를 얻는다.
기설정된 포즈 추적 방식은 실제 응용의 수요에 따라 설정을 수행할 수 있다. 본 발명의 실시예에서, 기설정된 포즈 추적 방식은 희소 이미지 정렬, 특징 포인트 정렬, 포즈 최적화 등 단계를 포함할 수 있으므로, 상기 단계 처리를 통해 다음 프레임 이미지의 카메라 포즈 파라미터를 얻고, 이외, 기설정된 포즈 추적 방식은 또한, 맵 포인트 최적화 단계를 포함할 수 있으므로, 맵 포인트 최적화 등 단계 처리를 통해 다음 프레임 이미지에서 특징 포인트의 깊이 정보를 얻는다.
실시 시나리오에서, 모바일 기기가 희소 이미지 정렬을 수행할 때, 먼저 상기 현재 이미지에서의 상기 특징 포인트의 깊이 정보를 이용하여, 상기 특징 포인트가 상기 다음 프레임 이미지에서의 투영점을 결정하는 단계는, 2차원에서 3차원으로의 역 투영 함수
Figure pct00035
를 이용하여, 특징 포인트 좌표
Figure pct00036
와 특징 포인트 깊이 값
Figure pct00037
을 포함하는 제1 좌표 정보
Figure pct00038
를 3차원 공간에 역 투영하여, 특징 포인트의 3차원 좌표
Figure pct00039
를 얻고, 현재 이미지
Figure pct00040
와 다음 프레임 이미지 사이의 포즈 변환 파라미터
Figure pct00041
와 3차원에서 2차원으로의 투영 함수
Figure pct00042
를 이용하여 현재 이미지 특징 포인트의 3차원 좌표
Figure pct00043
를 다음 프레임 이미지
Figure pct00044
에 투영하여, 특징 포인트가 다음 프레임 이미지
Figure pct00045
에서의 투영점
Figure pct00046
을 얻음으로써; 투영점이 다음 프레임 이미지
Figure pct00047
에서의 로컬 영역의 픽셀 값
Figure pct00048
및 현재 이미지
Figure pct00049
에 대응하는 특징 포인트 로컬 영역의 픽셀 값
Figure pct00050
사이의 존재하는 차이를 얻음으로; 상기 차이에 기반하여, 현재 이미지
Figure pct00051
와 다음 프레임 이미지 사이의 포즈 변환 파라미터를 얻을 수 있는 것을 포함할 수 있다. 여기서, 로컬 영역은 특징 포인트(또는 투영점)를 중심으로 한 하나의 직사각형 영역(예를 들어, 3*3영역, 4*4영역, 8*8영역 등등)일 수 있고, 아래의 식에 도시된 바와 같다.
Figure pct00052
……(5)
설명해야할 것은, 특징 포인트의 수량은 일반적으로 복수 개임으로, 복수 개 특징 포인트에 대해 상기 차이를 계산할 수 있고, 합을 구하는 것을 수행하여, 목표 함수를 구축하고, 아래의 식에 도시된 바와 같다.
Figure pct00053
……(6)
상기 공식(6)에서,
Figure pct00054
는 목표 함수를 나타내고, 여기서,
Figure pct00055
는 로버스트 함수를 나타내며, 소음의 영향을 줄이기 위해 사용되고,
Figure pct00056
은 놈(norm) 연산을 나타내고,
Figure pct00057
는 포즈 변환 파라미터
Figure pct00058
를 최적화 대상으로 하여 목표 함수를 최소화하는 것을 나타내고,
Figure pct00059
는 목표 함수를 풀어 얻은 포즈 변환 파라미터를 나타낸다.
포즈 변환 파라미터
Figure pct00060
를 계산하여 얻은 후, 모바일 기기는 포즈 변환 파라미터
Figure pct00061
와 현재 이미지
Figure pct00062
의 카메라 포즈 파라미터
Figure pct00063
를 이용하여, 다음 프레임 이미지의 카메라 포즈 파라미터
Figure pct00064
를 얻을 수 있다. 여기서, 포즈 변환 파라미터
Figure pct00065
를 현재 이미지
Figure pct00066
의 카메라 포즈 파라미터
Figure pct00067
와 곱하여, 다음 프레임 이미지의 카메라 포즈 파라미터
Figure pct00068
를 얻을 수 있다.
이외, 희소 이미지 정렬의 계산 복잡도를 줄이기 위해, 모바일 기기는 또한, 현재 이미지
Figure pct00069
와 다음 프레임 이미지
Figure pct00070
에 대해 다운 샘플링 처리를 수행하여, 현재 이미지
Figure pct00071
와 다음 프레임 이미지
Figure pct00072
의 피라미드 이미지를 얻고, 피라미드 이미지에서 해상도가 기설정된 해상도의 하나의 계층 이미지 또는 복수 계층 이미지를 선택하여 상기 희소 이미지 정렬의 처리를 수행함으로써, 계산 복잡도를 줄일 수 있다.
실시 시나리오에서, 상기 희소 이미지 정렬의 작업은 누적된 오차가 불가피함으로써, 획득한 다음 프레임 이미지의 카메라 포즈 파라미터
Figure pct00073
정확도가 낮은 문제를 초래한다. 정확도를 향상하기 위해, 모바일 기기는 수렴된 3차원 포인트(예를 들어, 3차원 모델에서 3차원 포인트)를 사용하여, 다음 프레임 이미지의 카메라 포즈 파라미터
Figure pct00074
를 최적화한다. 여기서, 이미 수렴된 3차원 포인트를 이용하여 매칭 정렬을 수행하여 투영점을 얻을 수 있고, 투영점을 이용하여 상기 희소 이미지를 정렬하여 얻은 다음 프레임 이미지의 카메라 포즈 파라미터
Figure pct00075
에 대해 특징 포인트 정렬 최적화를 수행하는 단계는, 이미 수렴된 3차원 포인트에서 다음 프레임 이미지
Figure pct00076
에 투영할 수 있는 3차원 포인트를 선택하여, 타깃 3차원 포인트로 사용하고, 이미 촬영된 이미지에서 타깃 3차원 포인트가 투영될 수 있는 이미지에서, 제일 처음 촬영한 이미지를 선택하여, 참고 이미지로 사용하고, 타깃 3차원 포인트가 참고 이미지에서의 로컬 영역 픽셀 값
Figure pct00077
을 획득하고, 상기 대략적으로 가늠한 다음 프레임 이미지의 카메라 포즈 파라미터
Figure pct00078
를 이용하여 타깃 3차원 포인트를 다음 프레임 이미지에 투영하여, 타깃 3차원 포인트가 다음 프레임 이미지에서의 투영점
Figure pct00079
을 얻음으로써, 투영점
Figure pct00080
이 다음 프레임 이미지에서의 로컬 영역 픽셀 값
Figure pct00081
을 획득하고, 로컬 영역 픽셀 값
Figure pct00082
과 로컬 영역 픽셀 값
Figure pct00083
을 이용하여, 투영점
Figure pct00084
에 관한 목표 함수를 구축하는 것을 포함할 수 있고, 아래의 식을 참고한다.
Figure pct00085
……(7)
상기 공식(7)에서,
Figure pct00086
는 목표 함수를 나타내고, 여기서,
Figure pct00087
는 놈 연산을 나타내고,
Figure pct00088
는 아핀 변환 행렬을 나타내고, 상이한 시각으로 인한 이미지 왜곡 보상에 사용되고,
Figure pct00089
는 투영점
Figure pct00090
의 위치를 최적화 대상으로 하여 목표 함수를 최소화하는 것을 나타낸다.
투영점
Figure pct00091
을 얻은 후, 모바일 기기는 상기 특징 포인트 정렬로 얻은 투영점
Figure pct00092
에 기반하여 상기 희소 이미지 정렬로 얻은 다음 프레임 이미지의 카메라 포즈 파라미터
Figure pct00093
에 대해 최적화를 수행할 수 있고, 최종적으로 최적화하여 다음 프레임 이미지의 카메라 포즈 파라미터
Figure pct00094
를 얻는다. 포즈 최적화의 단계는, 다음 프레임 이미지의 카메라 포즈 파라미터
Figure pct00095
와 3차원에서 2차원으로의 투영 함수
Figure pct00096
를 이용하여 타깃 3차원 포인트
Figure pct00097
를 다음 프레임 이미지
Figure pct00098
에 중첩 투영하여, 투영점
Figure pct00099
을 얻고, 투영점
Figure pct00100
과 특징 포인트 정렬 단계에서 최적화하여 얻은 다음 프레임 이미지의 투영점
Figure pct00101
사이의 위치 차이를 이용하여, 카메라 포즈 파라미터
Figure pct00102
와 관련된 목표 함수를 구축하는 것을 포함할 수 있고, 아래의 식을 참고한다.
Figure pct00103
……(8)
상기 공식(8)에서,
Figure pct00104
는 목표 함수를 나타내고, 여기서,
Figure pct00105
는 로버스트 함수를 나타내고, 소음의 영향을 줄이기 위해 사용되고,
Figure pct00106
는 놈 연산을 나타내며,
Figure pct00107
Figure pct00108
을 최적화 대상으로 하여 목표 함수를 최소화하는 것을 나타낸다.
공식(8) 풀이하여 나타낸 목표 함수를 통해, 최종적으로 다음 프레임 이미지의 카메라 포즈 파라미터
Figure pct00109
를 얻을 수 있다.
실시 시나리오에서, 맵 포인트 최적화의 본질은 3차원 포인트가 처음 관찰되는 참고 이미지에서 대응하는 위치의 역 깊이(즉 깊이 값의 역수)에 대해 최적화하는 것이다. 여기서, 특징 포인트의 깊이 정보의 확률 분포를 획득할 수 있고, 특징 포인트의 내부 포인트 확률
Figure pct00110
과 역 깊이 값
Figure pct00111
은, 베타와 가우시안의 혼합 모델 분포(Beta Gaussian Mixture Model Distribution)에 대략 부합되며, 아래의 식을 참고한다.
Figure pct00112
……(9)
여기서, 상기 공식(9)은 특정된 한 개의 특징 포인트
Figure pct00113
의 k 번째 관찰 후의 확률 분포를 나타내고,
Figure pct00114
는 베타 분포의 파라미터를 나타내며,
Figure pct00115
는 역 깊이 가우시안 분포의 평균값과 분산을 나타낸다. 확률 분포를 얻은 후, 모바일 기기는 획득한 확률 분포를 이용하여, 다음 프레임 이미지에서 특징 포인트의 깊이 정보를 얻을 수 있다. 예를 들어, 역 깊이 가우시안 분포의 분산
Figure pct00116
이 일 기설정된 깊이 범위(예를 들어, 1/200)보다 작을 때, 깊이 값은 수렴한다고 볼 수 있으며, 이때의 역 깊이 가우시안 분포의 평균값
Figure pct00117
의 역수를 특징 포인트의 깊이 값으로 취함으로써, 촬영 과정에서, 특징 포인트의 깊이 값에 대해 지속적으로 최적화를 수행할 수 있다.
단계 S132에 있어서, 다음 프레임 이미지를 현재 이미지로 사용한다.
다음 프레임 이미지의 카메라 포즈 파라미터와 특징 포인트의 깊이 정보를 얻은 후, 모바일 기기는 다음 프레임 이미지를 현재 이미지로 사용할 수 있고, 상기 단계 S131 및 후속 단계를 다시 실행함으로써, 이미지의 카메라 포즈 파라미터와 이미지에서의 특징 포인트의 깊이 정보를 프레임 별로 계산할 수 있다.
단계 S133에 있어서, 단계 S131 및 후속 단계를 다시 실행한다.
이전 실시예와 다른 점은, 모바일 기기는 기설정된 포즈 추적 방식을 이용하여 현재 이미지에서 특징 포인트의 깊이 정보, 및 현재 이미지의 카메라 포즈 파라미터에 대해 추적 처리를 수행하여, 현재 이미지의 다음 프레임 이미지에서의 특징 포인트의 깊이 정보와 다음 프레임 이미지의 카메라 포즈 파라미터를 얻음으로써; 다음 프레임 이미지를 현재 이미지로 사용하고, 기설정된 포즈 추적 방식을 이용하여 현재 이미지에서 특징 포인트의 깊이 정보, 및 현재 이미지의 카메라 포즈 파라미터에 대해 추적 처리를 수행하는 단계 및 후속 단계를 다시 실행하여, 카메라 포즈 파라미터를 프레임 별로 계산할 수 있고, 카메라 포즈 파라미터의 누적 오차를 줄이는 데 유리하다.
도 4를 참조하면, 도 4는 본 발명의 시각 추적 방법의 다른 실시예의 흐름 예시도이고, 시각 추적 방법은 아래의 단계를 포함할 수 있다.
단계 S41에 있어서, 카메라의 중력 정보를 획득한다.
이전 실시예에서의 관련 단계를 참조하기 바란다.
단계 S42에 있어서, 중력 정보를 이용하여, 카메라가 기설정된 운동 상태에서 촬영한 현재 이미지의 카메라 포즈 파라미터를 획득한다.
이전 실시예에서의 관련 단계를 참조하기 바란다.
단계 S43에 있어서, 현재 이미지의 카메라 포즈 파라미터에 기반하여, 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득한다.
이전 실시예에서의 관련 단계를 참조하기 바란다.
단계 S44에 있어서, 처리될 이미지의 카메라 포즈 파라미터가 기설정된 안정 상태 조건을 만족하는 지를 판단하고, 만약 만족하지 않는다면, 단계 S45를 실행하고, 만족한다면, 단계 S46을 실행한다.
기설정된 안정 상태 조건은 아래의, 카메라 포즈 파라미터 비정상 값, 처리될 이미지의 카메라 포즈 파라미터와 처리될 이미지 이전 프레임 카메라 포즈 파라미터 사이의 차이가 기설정된 범위 내에 있는 조건 중 적어도 하나를 포함할 수 있다. 실시 시나리오에서, 비정상 값은 변위 임계값보다 큰 변위 파라미터, 회전 임계값보다 큰 회전 파라미터를 포함할 수 있고; 여기서, 변위 임계값, 회전 임계값과 기설정된 범위는 실제 응용의 수요에 따라 설정을 수행할 수 있으며, 여기서 더이상 한정하지 않는다.
단계 S45에 있어서, 처리될 이미지의 변위 파라미터를 획득할 수 없는 것을 결정하고, 처리될 이미지의 이전 프레임 이미지의 픽셀 값과 이전 프레임 이미지의 카메라 포즈 파라미터를 이용하여, 처리될 이미지의 회전 파라미터를 얻는다.
실제 응용 과정에서, 쾌속 운동, 조명 조건의 급격한 변화 등 요인은 카메라 포즈 파라미터가 정확하지 않은 문제를 초래함으로써, 시각 포지셔닝이 정확하지 않는 문제를 초래하며, 시각 포지셔닝의 로버스트를 향상하기 위해, 이미지의 카메라 포즈 파라미터를 판단 처리할 때 기설정된 안정 상태 조건을 만족하지 않는 상황에서, 모바일 기기는 상기 단계를 통해 얻은 카메라 포즈 파라미터의 부정확성을 결정하며, 특히 변위 파라미터의 부정확성을 결정한다. 그러므로, 회전 파라미터 업데이트 실패로 가상 물체가 화면에 달라붙는 것과 같은 문제를 줄이기 위해, 모바일 기기는 처리될 이미지의 이전 프레임 이미지의 픽셀 값과 이전 프레임 이미지의 카메라 포즈 파라미터를 이용하여, 처리될 이미지의 회전 파라미터를 얻음으로써, 회전 파라미터에 대한 업데이트를 유지한다.
실시 시나리오에서, 도 5 참조를 결부하여, 도 5는 도 4에서 단계 S45의 일 실시예의 흐름 예시도이다. 여기서, S45는 아래의 단계를 포함할 수 있다.
단계 S451에 있어서, 처리될 이미지와 이전 프레임 이미지 사이의 포즈 변환 파라미터를 이용하여 이전 프레임 이미지에서의 적어도 부분 픽셀 포인트에 대해 투영 변환을 수행하여, 적어도 부분 픽셀 포인트가 처리될 이미지에서의 투영점을 얻는다.
편리한 설명을 위해, 처리될 이미지를
Figure pct00118
로 나타낼 수 있고, 이전 프레임 이미지를
Figure pct00119
로 나타내고, 포즈 변환 파라미터를
Figure pct00120
로 나타내고, 이전 프레임 이미지에서의 적어도 부분 픽셀 포인트의 2차원 좌표를
Figure pct00121
로 나타내고, 적어도 부분 픽셀 포인트의 깊이 값을
Figure pct00122
로 나타내고, 2차원에서 3차원으로의 역투영 함수를
Figure pct00123
로 나타낼 수 있고, 3차원에서 2차원의 투영 함수를
Figure pct00124
로 나타낼 수 있고, 투영점은
Figure pct00125
로 나타낼 수 있으며, 여기서, 이전 실시예에서의 관련 단계를 참조할 수 있고, 여기서 더이상 설명하지 않는다.
실시 시나리오에서, 연산 복잡도를 줄이기 위해, 모바일 기기는 또한 이전 프레임 이미지에 대해 다운 샘플링을 수행하여, 이전 프레임 이미지의 축약 이미지(예를 들어, 40*30또는 더 작은 이미지)를 얻음으로써, 처리될 이미지와 이전 프레임 이미지 사이의 포즈 변환 파라미터를 이용하여 축약 이미지에서의 픽셀 포인트에 대해 투영 변환을 수행하여, 축약 이미지에서의 픽셀 포인트가 처리될 이미지에서의 투영점을 얻는다. 다른 실시 시나리오에서, 연산 복잡도를 줄이기 위해, 모바일 기기는 또한 축약 이미지에서의 픽셀 포인트를 유닛볼에 투영할 수 있고, 즉 축약 이미지에서의 픽셀 포인트의 깊이 값을 통일적으로 1로 설정할 수 있고, 이외, 실제 응용의 수요에 따라 깊이 값을 통일적으로 다른 수치로 설정할 수 있으며, 여기서 한정하지 않는다.
단계 S452에 있어서, 적어도 부분 픽셀 포인트가 이전 프레임 이미지에서의 픽셀 값과 적어도 부분 픽셀 포인트에 대응되는 투영점이 처리될 이미지에서의 픽셀 값의 차이를 이용하여, 포즈 변환 파라미터와 관련된 목표 함수를 구축한다.
실시 시나리오에서, 모바일 기기는 적어도 부분 픽셀 포인트가 이전 프레임 이미지에서의 로컬 영역 픽셀 값
Figure pct00126
,및 적어도 부분 픽셀 포인트에 대응되는 투영점
Figure pct00127
이 처리될 이미지에서의 로컬 영역 픽셀 값
Figure pct00128
의 차이를 이용하여, 포즈 변환 파라미터와 관련된 목표 함수를 구축할 수 있다.
다른 실시 시나리오에서, 이전 프레임 이미지에 대해 다운 샘플링을 수행하는 상황에서, 모바일 기기는 축약 이미지에서 픽셀 포인트의 픽셀 값과 이러한 픽셀 값에 대응되는 투영점이 처리될 이미지에서의 픽셀 값의 차이를 이용하여, 포즈 변환 파라미터와 관련된 목표 함수를 구축할 수 있다.
여기서, 목표 함수는 이전 실시예에서의 관련 단계를 참고할 수 있으며, 여기서 더이상 설명하지 않는다.
단계 S453에 있어서, 목표 함수 풀이로 얻은 포즈 변환 파라미터를 이용하여 이전 프레임 이미지의 카메라 포즈 파라미터에 대해 변환 처리를 수행하여, 처리될 이미지의 회전 파라미터를 얻는다.
상기 목표 함수에 대해 풀이 최적화를 수행하고, 풀이 최적화 과정에서, 모바일 기기는 회전 파라미터만 최적화할 수 있음으로써, 풀이하여 얻은 포즈 변환 파라미터를 이용하여 이전 프레임 이미지의 카메라 포즈 파라미터에 대해 변환 처리를 수행하여, 처리될 이미지의 카메라 포즈 파라미터를 얻고, 카메라 포즈 파라미터에서의 회전 파라미터를 추출하여, 처리될 이미지의 회전 파라미터로 사용한다.
실시 시나리오에서, 시각 포지셔닝의 로버스트를 향상하기 위해, 모바일 기기는 처리될 이미지의 회전 파라미터를 얻은 후, 카메라 현재의 가속도 정보를 계속 검출할 수 있고, 가속도 정보가 기설정된 운동 상태에 위치하였는 지를 판단하며, 가속도 정보 획득 및 가속도 정보가 기설정된 운동 상태에 위치하였는 지를 판단하는 단계는 이전 개시 실시예에서의 관련 단계를 참조할 수 있고, 여기서 더이상 설명하지 않는다. 만약 기설정된 운동 상태에 있다면, 이때의 카메라가 정지 상태 또는 등속 운동 상태에 있다고 볼 수 있으며, 카메라의 중력 정보를 획득하는 단계 및 후속 단계를 다시 실행할 수 있고, 만약 기설정된 운동 상태에 있지 않다면, 이때의 카메라가 여전히 격렬한 운동의 상태에 있다고 볼 수 있으며, 카메라 현재의 가속도 정보를 검출하는 단계 및 후속 단계를 다시 실행할 수 있다. 시각 포지셔닝이 정확하지 않은 상황에서, 카메라 현재의 가속 도정보를 중복 검출하고, 가속도 정보가 기설정된 운동 상태에 위치하였는 지를 판단하며, 기설정된 운동 상태에 위치한 상황에서, 카메라의 중력 정보를 획득하는 단계 및 후속 단계를 다시 실행하는 것을 통해, 시각 포지셔닝의 로버스트를 향상할 수 있다.
단계 S46에 있어서, 처리될 이미지를 현재 이미지로 사용한다.
처리될 이미지의 회전 파라미터를 얻은 후, 모바일 기기는 처리될 이미지를 현재 이미지로 사용할 수 있고, 상기 현재 이미지의 카메라 포즈 파라미터에 기반하여, 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득하는 단계 및 후속 단계를 다시 실행하여, 격렬한 운동 또는 조명 조건의 급격한 변화하는 상황에서, 여전히 회전 파라미터 업데이트를 지속할 수 있다.
단계 S47에 있어서, 단계 S43 및 후속 단계를 다시 실행한다.
이전 실시예와의 차이점은, 카메라 포즈 파라미터는 회전 파라미터와 변위 파라미터를 포함하도록 설정되고, 모바일 기기가 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득한 후, 처리될 이미지의 카메라 포즈 파라미터가 기설정된 안정 상태 조건을 만족하지 않는 것에 응답하여, 처리될 이미지의 변위 파라미터를 획득할 수 없는 것을 결정함으로써, 처리될 이미지의 이전 프레임 이미지의 픽셀 값과 이전 프레임 이미지의 카메라 포즈 파라미터를 이용하여, 처리될 이미지의 회전 파라미터를 얻고, 카메라 포즈 파라미터가 정확하지 않는 상황에서, 직접 이미지 픽셀을 이용하여, 회전 파라미터를 가늠할 수 있고, 회전 파라미터를 업데이트할 수 없는 것으로 인한 가상 현실에서 가상 물체가 화면에 달라붙는 것과 같은 문제의 초래를 피면하는 데 유리할 수 있다.
도 6을 참조하면, 도 6은 본 발명의 시각 포지셔닝 장치(60)의 일 실시예의 프레임워크 예시도이다. 시각 포지셔닝 장치(60)는 중력 정보 획득 부분(61), 제1 포즈 획득 부분(62)과 제2 포즈 획득 부분(63)을 포함하고, 중력 정보 획득 부분(61)은 카메라의 중력 정보를 획득하는 데 사용되고; 제1 포즈 획득 부분(62)은 중력 정보를 이용하여, 카메라가 기설정된 운동 상태에서 촬영한 현재 이미지의 카메라 포즈 파라미터를 획득하도록 구성되며; 제2 포즈 획득 부분(63)은 현재 이미지의 카메라 포즈 파라미터에 기반하여, 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득하도록 구성된다.
상기 방안에서, 카메라의 중력 정보를 획득하는 것을 통함으로써, 중력 정보를 이용하여, 카메라가 기설정된 운동 상태에서 촬영한 현재 이미지의 카메라 포즈 파라미터를 획득하고, 현재 이미지의 카메라 포즈 파라미터에 기반하여, 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득함으로써, 카메라와 중력 정보에만 의지하여 시각 포지셔닝을 수행할 수 있으며, 시각 포지셔닝 기술의 사용 비용을 줄이고, 시각 포지셔닝 기술의 사용 범위를 확대할 수 있다.
일부 개시 실시예에서, 중력 정보는 중력 방향 정보를 포함하고, 시각 포지셔닝 장치(60)는 또한 특징 방향 획득 부분을 포함하며, 현재 이미지에서의 특징 포인트의 특징 방향 정보를 획득하도록 구성되고, 시각 포지셔닝 장치(60)는 또한 깊이 정보 획득 부분을 포함하며, 깊이 정보 획득 부분은 특징 포인트의 특징 방향 정보와 중력 방향 정보를 이용하여, 현재 이미지에서의 특징 포인트의 깊이 정보를 얻도록 구성되며, 제2 포즈 획득 부분(63)은 또한 현재 이미지에서의 특징 포인트의 깊이 정보와 현재 이미지의 카메라 포즈 파라미터에 기반하여, 현재 이미지 이후의 처리될 이미지에서의 특징 포인트의 깊이 정보와 처리될 이미지의 카메라 포즈 파라미터를 획득하도록 구성된다.
이전 실시예와의 차이점은, 현재 이미지에서 특징 포인트의 특징 방향 정보를 획득하는 것을 통하고, 특징 포인트의 특징 방향 정보와 중력 정보가 포함하는 중력 방향 정보를 이용하여, 현재 이미지에서의 특징 포인트의 깊이 정보를 얻는 단계는, 현재 이미지에만 기반하여 현재 이미지에서의 특징 포인트의 깊이 정보와 현재 이미지의 카메라 포즈 파라미터를 초기화할 수 있고, 현재 이미지에서의 특징 포인트의 깊이 정보와 현재 이미지의 카메라 포즈 파라미터에 기반하여, 현재 이미지 이후의 처리될 이미지에서의 특징 포인트의 깊이 정보와 처리될 이미지의 카메라 포즈 파라미터를 획득할 수 있고, 복수 프레임 이미지를 스캔하여 초기화 작업을 수행할 필요가 없음으로, 시각 포지셔닝의 응답 속도를 향상할 수 있다.
일부 개시 실시예에서, 특징 방향 정보는 특징 포인트의 방향 벡터를 포함하고, 중력 방향 정보는 중력 벡터를 포함하고, 깊이 정보는 특징 포인트의 깊이 값을 포함하며, 깊이 정보 획득 부분은 제1 연산 서브 부분을 포함하고, 제1 연산 서브 부분은 특징 포인트의 방향 벡터와 중력 벡터에 대해 제1 기설정된 연산을 수행하여, 특징 포인트의 방향 벡터와 중력 벡터 사이의 협각을 얻도록 구성되고, 깊이 정보 획득 부분 제2 연산 서브 부분은, 카메라의 기설정된 높이와 협각에 대해 제2 기설정된 연산을 수행하여, 특징 포인트의 깊이 값을 얻도록 구성된다.
이전 실시예와의 차이점은, 특징 방향 정보는 특징 포인트의 방향 벡터를 포함하도록 설정되고, 중력 방향 정보는 중력 벡터를 포함하도록 설정되고, 깊이 정보는 특징 포인트의 깊이 값을 포함하도록 설정되어, 특징 포인트의 방향 벡터와 중력 벡터에 대해 제1 기설정된 연산을 수행하여, 특징 포인트의 방향 벡터와 중력 벡터 사이의 협각을 얻음으로써, 카메라의 기설정된 높이와 협각에 대해 제2 기설정된 연산을 수행하여, 특징 포인트의 깊이 값을 얻으므로, 특징 포인트 깊이 값을 획득하는 계산 복잡도를 줄이는 데 유리할 수 있다.
일부 개시 실시예에서, 제1 기설정된 연산은 내적 연산을 포함하고, 및/ 또는, 제2 기설정된 연산은 기설정된 높이를 협각의 코사인으로 나눈 것을 포함한다
이전 실시예와의 차이점은, 제1 기설정된 연산을 내적 연산을 포함하도록 설정하여, 방향 벡터와 중력 벡터 사이 협각을 획득하는 복잡도를 줄이는 데 유리할 수 있고, 제2 기설정된 연산을 기설정된 높이를 협각의 코사인으로 나눈 것을 포함하도록 설정하여, 깊이 값을 획득하는 복잡도를 줄이는 데 유리할 수 있다.
일부 개시 실시예에서, 제2 포즈 획득 부분(63)은 포즈 추적 서브 부분을 포함하고, 포즈 추적 서브 부분은 기설정된 포즈 추적 방식을 이용하여 현재 이미지에서 특징 포인트의 깊이 정보, 및 현재 이미지의 카메라 포즈 파라미터에 대해 추적 처리를 수행하여, 현재 이미지의 다음 프레임 이미지에서의 특징 포인트의 깊이 정보와 다음 프레임 이미지의 카메라 포즈 파라미터를 얻도록 구성되고, 제2 포즈 획득 부분(63)은 중복 실행 서브 부분을 포함하며, 중복 실행 부분은 다음 프레임 이미지를 현재 이미지로 사용하고, 기설정된 포즈 추적 방식을 이용하여 현재 이미지에서 특징 포인트의 깊이 정보, 및 현재 이미지의 카메라 포즈 파라미터에 대해 추적 처리를 수행하는 단계 및 후속 단계를 다시 실행하도록 구성된다.
이전 실시예와 다른 점은, 기설정된 포즈 추적 방식을 이용하여 현재 이미지에서 특징 포인트의 깊이 정보, 및 현재 이미지의 카메라 포즈 파라미터에 대해 추적 처리를 수행하여, 현재 이미지의 다음 프레임 이미지에서의 특징 포인트의 깊이 정보와 다음 프레임 이미지의 카메라 포즈 파라미터를 얻음으로써, 다음 프레임 이미지를 현재 이미지로 사용하고, 기설정된 포즈 추적 방식을 이용하여 현재 이미지에서 특징 포인트의 깊이 정보, 및 현재 이미지의 카메라 포즈 파라미터에 대해 추적 처리를 수행하는 단계 및 후속 단계를 다시 실행함으로써, 카메라 포즈 파라미터를 프레임 별로 계산할 수 있고, 카메라 포즈 파라미터의 누적 오차를 줄이는 데 유리하다.
일부 개시 실시예에서, 포즈 추적 서브 부분은, 현재 이미지에서의 특징 포인트의 깊이 정보를 이용하여, 특징 포인트가 다음 프레임 이미지에서의 투영점을 결정하도록 구성된 특징 포인트 투영 부분; 특징 포인트가 현재 이미지에서의 로컬 영역의 픽셀 값과 투영점이 다음 프레임 이미지에서의 로컬 영역의 픽셀 값 사이의 차이에 기반하여, 현재 이미지와 다음 프레임 이미지 사이의 포즈 변환 파라미터를 얻도록 구성된 포즈 변환 파라미터 계산 부분; 포즈 변환 파라미터와 현재 이미지의 카메라 포즈 파라미터를 이용하여, 다음 프레임 이미지의 카메라 포즈 파라미터를 얻도록 구성된 카메라 포즈 파라미터 계산 부분; 이미 수렴된 3차원 포인트를 이용하여, 다음 프레임 이미지의 카메라 포즈 파라미터를 최적화하도록 구성된 카메라 포즈 파라미터 최적화 부분; 및 특징 포인트의 깊이 정보의 확률 분포를 획득하고, 확률 분포를 이용하여, 다음 프레임 이미지에서 특징 포인트의 깊이 정보를 얻도록 구성된 깊이 정보 획득 부분을 포함한다.
이전 실시예와의 차이점은, 현재 이미지에서의 특징 포인트의 깊이 정보를 이용하는 것을 통해, 특징 포인트가 다음 프레임 이미지에서의 투영점을 결정함으로써, 특징 포인트가 현재 이미지에서의 로컬 영역 의 픽셀 값과 투영점이 다음 프레임 이미지에서의 로컬 영역의 픽셀 값 사이의 차이에 기반하여, 현재 이미지와 다음 프레임 이미지 사이의 포즈 변환 파라미터를 얻고, 포즈 변환 파라미터와 현재 이미지의 카메라 포즈 파라미터를 이용하여, 다음 프레임 이미지의 카메라 포즈 파라미터를 얻고, 이미 수렴된 3차원 포인트를 이용하여, 다음 프레임 이미지의 카메라 포즈 파라미터를 최적화함으로써, 카메라 포즈 파라미터에 대해 더욱 최적화를 수행할 수 있어, 카메라 포즈 파라미터의 정확성을 향상하는 데 유리하고; 특징 포인트의 깊이 정보의 확률 분포 획득하는 것을 통하고, 확률 분포를 이용하여, 다음 프레임 이미지에서 특징 포인트의 깊이 정보를 얻음으로써, 깊이 정보의 분포 확율에 기반하여, 촬영 과정에서 깊이 정보에 대해 최적화를 수행할 수 있다.
일부 개시 실시예에서, 카메라 포즈 파라미터는 회전 파라미터와 변위 파라미터를 포함하고, 시각 포지셔닝 장치(60)는 또한 카메라 포즈 검출 부분을 포함하며, 카메라 포즈 검출 부분은 처리될 이미지의 카메라 포즈 파라미터가 기설정된 안정 상태 조건을 만족하지 않는 것에 응답하여, 처리될 이미지의 변위 파라미터를 획득할 수 없는 것을 결정하도록 구성되고, 시각 포지셔닝 장치(60)은 또한 회전 파라미터 업데이트 부분을 포함하며, 회전 파라미터 업데이트 부분은 처리될 이미지의 이전 프레임 이미지의 픽셀 값과 이전 프레임 이미지의 카메라 포즈 파라미터를 이용하여, 처리될 이미지의 회전 파라미터를 얻도록 구성된다.
이전 실시예와의 차이점은, 카메라 포즈 파라미터는 회전 파라미터와 변위 파라미터를 포함하도록 설정되고, 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득한 후, 처리될 이미지의 카메라 포즈 파라미터가 기설정된 안정 상태 조건을 만족하지 않는 것에 응답하여, 처리될 이미지의 변위 파라미터를 획득할 수 없는 것을 결정함으로써, 처리될 이미지의 이전 프레임 이미지의 픽셀 값과 이전 프레임 이미지의 카메라 포즈 파라미터를 이용하여, 처리될 이미지의 회전 파라미터를 얻고, 카메라 포즈 파라미터가 정확하지 않는 상황에서, 직접 이미지 픽셀을 이용하여, 회전 파라미터를 가늠할 수 있고, 회전 파라미터를 업데이트할 수 없는 것으로 인한 가상 현실에서 가상 물체가 화면에 달라붙는 것과 같은 문제의 초래를 피면하는 데 유리할 수 있다.
일부 개시 실시예에서, 회전 파라미터 업데이트 부분은 투영 변환 서브 부분을 포함하고, 투영 변환 서브 부분은 처리될 이미지와 이전 프레임 이미지 사이의 포즈 변환 파라미터를 이요하여 이전 프레임 이미지에서의 적어도 부분 픽셀 포인트에 대해 투영 변환을 수행하여, 적어도 부분 픽셀 포인트가 처리될 이미지에서의 투영점을 얻도록 구성되고, 회전 파라미터 업데이트 부분은 함수 구성 서브 부분을 포함하고, 함수 구성 서브 부분은 적어도 부분 픽셀 포인트가 이전 프레임 이미지에서의 픽셀 값과 적어도 부분 픽셀 포인트에 대응되는 투영점이 처리될 이미지에서의 픽셀 값의 차이를 이용하여, 포즈 변환 파라미터에 관련된 목표 함수를 구축하도록 구성되고, 회전 파라미터 업데이트 부분은 파라미터 획득 서브 부분을 포함하며, 파라미터 획득 서브 부분은 목표 함수를 풀어 얻은 포즈 변환 파라미터를 이용하여 이전 프레임 이미지의 카메라 포즈 파라미터에 대해 변환 처리를 수행하여, 처리될 이미지의 회전 파라미터를 얻도록 구성된다.
이전 실시예와의 차이점은, 처리될 이미지와 이전 프레임 이미지 사이의 포즈 변환 파라미터를 이용하여 이전 프레임 이미지에서의 적어도 부분 픽셀 포인트에 대해 투영 변환을 수행하여, 적어도 부분 픽셀 포인트가 처리될 이미지에서의 투영점을 얻고, 적어도 부분 픽셀 포인트가 이전 프레임 이미지에서의 픽셀 값과 적어도 부분 픽셀 포인트에 대응되는 투영점이 처리될 이미지에서의 픽셀 값의 차이를 이용하여, 포즈 변환 파라미터에 관련된 목표 함수를 구축함으로써, 목표 함수를 풀어 얻은 포즈 변환 파라미터를 이용하여 이전 프레임 이미지의 카메라 포즈 파라미터에 대해 변환 처리를 수행하여, 처리될 이미지의 회전 파라미터를 얻어, 적어도 부분 픽셀 포인트에 기반하여 회전 파라미터를 얻을 수 있고, 회전 파라미터의 계산량을 줄이는 데 유리할 수 있다.
일부 개시 실시예에서, 회전 파라미터 업데이트 부분은 다운 샘플링 서브 부분을 포함하고, 다운 샘플링 서브 부분은 이전 프레임 이미지에 대해 다운 샘플링 처리를 수행하여, 이전 프레임 이미지의 축약 이미지를 얻도록 구성되고, 투영 변환 서브 부분은 또한 처리될 이미지와 이전 프레임 이미지 사이의 포즈 변환 파라미터를 이용하여 축약 이미지에서의 픽셀 포인트에 대해 투영 변환을 수행하여, 축약 이미지에서의 픽셀 포인트가 처리될 이미지에서의 투영점을 얻도록 구성된다.
이전 실시예와의 차이점은, 이전 프레임 이미지에 대해 다운 샘플링 처리를 수행하는 것을 통해, 이전 프레임 이미지의 축약 이미지를 얻음으로써, 처리될 이미지의 이전 프레임 이미지 사이의 포즈 변환 파라미터를 이용하여 축약 이미지에서의 픽셀 포인트에 대해 투영 변환을 수행하여, 축약 이미지에서의 픽셀 포인트가 처리될 이미지에서의 투영점을 얻어, 후속의 목표 함수 구축 및 풀이를 수행하여, 회전 파라미터를 계산하는 계산량을 줄이는 데 유리할 수 있다.
일부 개시 실시예에서, 시각 포지셔닝 장치(60)는 또한 가속도 검출 부분을 포함하고, 가속도 검출 부분은 카메라 현재의 가속도 정보를 검출하고, 가속도 정보가 기설정된 운동 상태에 위치하였는 지를 판단하도록 구성되고, 중력 정보 획득 부분(61), 제1 포즈 획득 부분(62) 및 제2 포즈 획득 부분(63)은 또한 가속도 정보가 기설정된 운동 상태에 위치한 결과인 상황에서 카메라의 중력 정보를 획득하는 단계 및 후속 단계를 다시 실행하도록 구성되고, 가속도 검출 부분은 또한 가속도 정보가 기설정된 운동 상태에 위치하지 않은 상황에서, 카메라 현재의 가속도 정보를 검출하는 단계 및 후속 단계를 다시 실행하도록 구성된다.
이전 실시예와의 차이점은, 처리될 이미지의 회전 파라미터를 얻은 후, 카메라의 현재의 가속도 정보를 검출하고, 가속도 정보가 기설정된 운동 상태에 위치하였는 지를 판단함으로써, 기설정된 운동 상태에 위치한 상황에서, 카메라의 중력 정보를 획득하는 단계 및 후속 단계를 다시 실행하고, 기설정된 운동 상태에 위치하지 않은 상황에서, 카메라의 현재의 가속도 정보를 검출하는 단계 및 후속 단계를 다시 실행함으로써, 시각 포지셔닝의 로버스트를 향상하는 데 유리하다.
일부 개시 실시예에서, 중력 정보는 중력 방향 정보를 포함하고, 카메라 포즈 파라미터는 회전 파라미터와 변위 파라미터를 포함하며, 제1 포즈 획득 부분(62)은 회전 각도 획득 서브 부분을 포함하며, 회전 각도 획득 서브 부분은 중력 방향 정보를 이용하여, 각각 세계 좌표계의 x 좌표 축, y 좌표 축과 z 좌표 축에 대한 카메라의 회전 각도를 획득하도록 구성되고; 카메라가 회전 각도에 따라 회전한 후의 중력 방향은 z 좌표 축의 반대 방향과 같으며, 제1 포즈 획득 부분(62)은 파라미터 초기화 서브 부분을 포함하고, 파라미터 초기화 서브 부분은 회전 각도를 이용하여, 회전 파라미터를 얻고, 변위 파라미터 기설정된 수치로 설정하도록 구성된다.
본 발명의 실시예 및 기타 실시예에 있어서, "부분"은 부분 회로, 부분 프로세서, 부분 프로그램 또는 소프트웨어 등일 수 있으며, 물론 유닛일 수도 있고, 모듈 방식 또는 비모듈 방식일수도 있다는 것이다.
이전 실시예와의 차이점은, 중력 방향 정보를 이용하는 것을 통해, 각각 세계 좌표계의 x 좌표 축, y 좌표 축과 z 좌표 축에 대한 카메라의 회전 각도를 획득하고, 카메라가 회전 각도에 따라 회전한 후의 중력 방향은 z 좌표 축의 반대 방향과 같으며, 회전 파라미터를 얻고, 변위 파라미터를 기설정된 수치로 설정하고, 중력 정렬을 통해 회전 파라미터를 얻을 수 있음으로, 카메라 포즈 파라미터를 초기화하여, 카메라 포즈 파라미터 초기화의 계산량을 줄이는 데 유리하다.
일부 개시 실시예에서, 세계 좌표계의 원점은 카메라가 현재 이미지를 촬영할 때 위치한 위치이고, 기설정된 수치는 0이다.
이전 실시예와의 차이점은, 세계 좌표계의 원점을 카메라가 현재 이미지를 촬영할 때 위치한 위치로 설정하고, 기설정된 수치는 0으로 설정하여, 변위 파라미터 초기화의 복잡도를 줄이는 데 유리하다.
일부 개시 실시예에서, 기설정된 운동 상태는 정지 상태 또는 등속 운동 상태이고; 및/ 또는, 중력 정보는 카메라가 기설정된 상태에서의 가속도 정보를 이용하여 얻은 것이다.
이전 실시예와의 차이점은, 기설정된 운동 상태를 정지 상태 또는 등속 운동 상태로 설정하여, 현재 이미지를 초기화하는 카메라 포즈 파라미터의 정확성을 향상하는 데 유리할 수 있고; 카메라가 기설정된 상태에서의 가속도 정보를 이용해 얻은 중력 정보는, 가속도계만을 이용하여 중력 정보를 얻을 수 있음으로써, 시각 포지셔닝 기술의 사용 비용을 더욱 줄이고, 시각 포지셔닝 기술의 사용 범위를 확대하는 데 유리할 수 있다.
도 7을 참조하면, 도 7은 본 발명의 전자 기기(70)의 일 실시예의 프레임워크 예시도이다. 전자 기기(70)는 상호 커플링된 메모리(71) 및 프로세서(72)를 포함하고, 프로세서(72)는 메모리(71)에 저장된 프로그램 명령어를 실행하여, 상기 시각 포지셔닝 방법 실시예의 단계를 구현하기 위한 것이다. 하나의 실시 장면에서, 전자 기기(70)는 휴대폰, 테블릿pc, 로봇 등 모바일 기기를 포함할 수 있으며, 여기서 한정하지 않는다.
본 발명의 실시예에서, 프로세서(72)는 자신 및 메모리(71)를 제어하여 상기 어느 한 시각 포지셔닝 방법 실시예의 단계를 구현하기 위한 것이다. 프로세서(72)는 또한 CPU(Central Processing Unit, 중앙처리장치)로 지칭될 수 있다. 프로세서(72)는 신호 처리 능력을 구비하는 집적 회로 칩일 수 있다. 프로세서(72)는 또한 범용 프로세서, 디지털 신호 프로세서(Digital Signal Processor, DSP), 전용 집적 회로(Application Specific Integrated Circuit, ASIC), 현장 프로그래머블 게이트 어레이(Field Programmable Gate Array, FPGA) 또는 다른 프로그래머블 논리 소자, 개별 게이트 또는 트랜지스터 논리 소자, 개별 하드웨어 어셈블리 등일 수 있다. 범용 프로세서는 마이크로 프로세서 또는 임의의 일반적인 프로세서 등일 수도 있다. 또한, 프로세서(72)는 집적 회로 칩에 의해 공동으로 구현될 수 있다.
상기 방안에서, 시각 포지셔닝 기술의 사용 비용을 감소하고, 시각 포지셔닝 기술의 사용 범위를 확대할 수 있다.
도 8를 참조하면, 도 8는 본 발명의 컴퓨터 판독 가능한 저장 매체(80) 일 실시예의 프레임워크 예시도이다. 컴퓨터 판독 가능한 저장 매체(80)는 프로세서에 의해 작동 가능한 프로그램 명령어(801)를 저장하고, 프로그램 명령어(801)는 상기 어느 한 시각 포지셔닝 방법의 실시예의 단계를 구현하기 위한 것이다.
상기 방안에서, 시각 포지셔닝 기술의 사용 비용을 줄이고, 시각 포지셔닝 기술의 사용 범위를 확대할 수 있다.
본 발명에서 제공된 몇 개의 실시예에 있어서, 개시된 방법 및 장치는 다른 방식으로 구현될 수 있음을 이해해야 한다. 예를 들어, 전술된 장치 실시형태는 다만 예시적이며, 예를 들어, 모듈 또는 유닛에 대한 분할은 다만 논리적 기능 분할이고, 실제로 구현될 경우 다른 분할 방식이 있을 수 있으며, 예를 들어 유닛 또는 컴포넌트는 다른 시스템에 결합되거나 통합될 수 있거나, 일부 특징을 무시하거나 실행하지 않을 수 있다. 또한, 나타내거나 논의된 상호간의 결합 또는 직접 결합 또는 통신 연결은, 일부 인터페이스를 통해 구현되며, 장치 또는 유닛을 통한 간접 결합 또는 통신 연결은, 전기, 기계 또는 다른 형태일 수 있다.
분리 부재로서 설명된 유닛은, 물리적으로 분리된 것이거나 아닐 수 있고, 유닛으로서 나타낸 부재는 물리적 유닛이거나 아닐 수 있고, 즉 한 곳에 위치할 수 있거나, 네트워크 유닛에 분포될 수도 있다. 실제 필요에 따라 유닛의 일부 또는 전부를 선택하여 본 실시형태 방안의 목적을 구현할 수 있다.
또한, 본 발명의 각 실시예에서의 각 기능 유닛은 하나의 처리 유닛에 통합될 수 있고, 각 유닛이 독립적인 물리적 존재일 수도 있고, 두 개 또는 두 개 이상의 유닛이 한 유닛에 통합될 수도 있다. 상기 통합된 유닛은 하드웨어의 형태를 사용하여 구현될 수 있고, 소프트웨어 기능 유닛의 형태를 사용하여 구현될 수도 있다.
통합된 유닛이 소프트웨어 기능 유닛의 형태로 구현되고 독립적인 제품으로 판매되거나 사용되는 경우 컴퓨터 판독 가능 저장 매체에 저장될 수 있다. 이러한 이해에 기반하여, 본 발명의 기술 방안, 즉 종래 기술에 기여하는 부분 또는 상기 기술 방안의 전부 또는 일부는 소프트웨어 제품의 형태로 구현될 수 있고, 상기 컴퓨터 소프트웨어 제품은 하나의 저장 매체에 저장되며, 하나의 컴퓨터 기기(개인용 컴퓨터, 서버 또는 네트워크 기기 등일 수 있음) 또는 프로세서(processor)로 하여금 본 발명의 각 실시 방식의 방법의 전부 또는 일부 단계를 실행하는데 사용되는 복수 개의 명령어를 포함한다. 전술한 저장 매체는 U 디스크, 이동식 하드 디스크, 롬(Read-Only Memory, ROM), 램(Random Access Memory, RAM), 자기 디스크 또는 광 디스크 등 프로그램 코드를 저장할 수 있는 다양한 매체를 포함한다.
본 발명의 실시예에서, 카메라의 중력 정보를 획득하는 것을 통함으로써, 중력 정보를 이용하여, 카메라가 기설정된 운동 상태에서 촬영한 현재 이미지의 카메라 포즈 파라미터를 획득하고, 현재 이미지의 카메라 포즈 파라미터에 기반하여, 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득함으로써, 카메라와 중력 정보에만 의지하여 시각 포지셔닝을 수행할 수 있으며, 시각 포지셔닝 기술의 사용 비용을 줄이고, 시각 포지셔닝 기술의 사용 범위를 확대할 수 있다.

Claims (17)

  1. 시각 포지셔닝 방법으로서,
    카메라의 중력 정보를 획득하는 단계;
    상기 중력 정보를 이용하여, 상기 카메라가 기설정된 운동 상태에서 촬영한 현재 이미지의 카메라 포즈 파라미터를 획득하는 단계; 및
    상기 현재 이미지의 카메라 포즈 파라미터에 기반하여, 상기 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득하는 단계를 포함하는 것을 특징으로 하는 시각 포지셔닝 방법.
  2. 제1항에 있어서,
    상기 중력 정보는 중력 방향 정보을 포함하고, 상기 현재 이미지의 카메라 포즈 파라미터에 기반하여, 상기 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득하기 전에, 상기 방법은 또한,
    상기 현재 이미지에서의 특징 포인트의 특징 방향 정보를 획득하는 단계;
    상기 특징 포인트의 특징 방향 정보와 상기 중력 방향 정보를 이용하여, 상기 현재 이미지에서의 상기 특징 포인트의 깊이 정보를 얻는 단계를 포함하고;
    상기 현재 이미지의 카메라 포즈 파라미터에 기반하여, 상기 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득하는 단계는,
    상기 현재 이미지에서의 상기 특징 포인트의 깊이 정보와 상기 현재 이미지의 카메라 포즈 파라미터에 기반하여, 상기 현재 이미지 이후의 처리될 이미지에서 상기 특징 포인트의 깊이 정보와 상기 처리될 이미지의 카메라 포즈 파라미터를 획득하는 단계를 포함하는 것을 특징으로 하는 시각 포지셔닝 방법.
  3. 제2항에 있어서,
    상기 특징 방향 정보는 상기 특징 포인트의 방향 벡터를 포함하고, 상기 중력 방향 정보는 중력 벡터를 포함하며, 상기 깊이 정보는 상기 특징 포인트의 깊이 값을 포함하고;
    상기 특징 포인트의 특징 방향 정보와 상기 중력 방향 정보를 이용하여, 상기 현재 이미지에서의 상기 특징 포인트의 깊이 정보를 얻는 단계는,
    상기 특징 포인트의 상기 방향 벡터와 상기 중력 벡터에 대해 제1 기설정된 연산을 수행하여, 상기 특징 포인트의 상기 방향 벡터와 상기 중력 벡터 사이의 협각을 얻는 단계; 및
    상기 카메라의 기설정된 높이와 상기 협각에 대해 제2 기설정된 연산을 수행하여, 상기 특징 포인트의 깊이 값을 얻는 단계를 포함하는 것을 특징으로 하는 시각 포지셔닝 방법.
  4. 제3항에 있어서,
    상기 제1 기설정된 연산은 내적 연산을 포함하는 것; 및
    상기 제2 기설정된 연산은 상기 기설정된 높이를 상기 협각의 코사인으로 나눈 것; 중 적어도 하나를 포함하는 것을 특징으로 하는 시각 포지셔닝 방법.
  5. 제2항에 있어서,
    상기 현재 이미지에서의 상기 특징 포인트의 깊이 정보와 상기 현재 이미지의 카메라 포즈 파라미터에 기반하여, 상기 현재 이미지 이후의 처리될 이미지에서 상기 특징 포인트의 깊이 정보와 상기 처리될 이미지의 카메라 포즈 파라미터를 획득하는 단계는,
    기설정된 포즈 추적 방식을 이용하여 상기 현재 이미지에서의 상기 특징 포인트의 깊이 정보, 및 상기 현재 이미지의 카메라 포즈 파라미터에 대해 추적 처리를 수행하여, 상기 현재 이미지의 다음 프레임 이미지에서의 상기 특징 포인트의 깊이 정보와 상기 다음 프레임 이미지의 카메라 포즈 파라미터를 얻는 단계; 및
    상기 다음 프레임 이미지를 상기 현재 이미지로 사용하고, 상기 기설정된 포즈 추적 방식을 이용하여 상기 현재 이미지에서의 상기 특징 포인트의 깊이 정보, 및 상기 현재 이미지의 카메라 포즈 파라미터에 대해 추적 처리를 수행하는 단계 및 후속 단계를 다시 실행하는 단계를 포함하는 것을 특징으로 하는 시각 포지셔닝 방법.
  6. 제5항에 있어서,
    상기 기설정된 포즈 추적 방식을 이용하여 상기 현재 이미지에서의 상기 특징 포인트의 깊이 정보, 및 상기 현재 이미지의 카메라 포즈 파라미터에 대해 추적 처리를 수행하여, 상기 현재 이미지의 다음 프레임 이미지에서의 상기 특징 포인트의 깊이 정보와 상기 다음 프레임 이미지의 카메라 포즈 파라미터를 얻는 단계는,
    상기 현재 이미지에서의 상기 특징 포인트의 깊이 정보를 이용하여, 상기 특징 포인트가 상기 다음 프레임 이미지에서의 투영점을 결정하는 단계;
    상기 특징 포인트가 상기 현재 이미지에서의 로컬 영역의 픽셀 값과 상기 투영점이 상기 다음 프레임 이미지에서의 로컬 영역의 픽셀 값 사이의 차이에 기반하여, 상기 현재 이미지와 상기 다음 프레임 이미지 사이의 포즈 변환 파라미터를 얻는 단계;
    상기 포즈 변환 파라미터와 상기 현재 이미지의 카메라 포즈 파라미터를 이용하여, 상기 다음 프레임 이미지의 카메라 포즈 파라미터를 얻는 단계;
    이미 수렴된 3차원 포인트를 이용하여, 상기 다음 프레임 이미지의 카메라 포즈 파라미터를 최적화하는 단계; 및
    상기 특징 포인트의 깊이 정보의 확률 분포를 획득하고, 상기 확률 분포를 이용하여, 다음 프레임 이미지에서의 상기 특징 포인트의 깊이 정보를 얻는 단계를 포함하는 것을 특징으로 하는 시각 포지셔닝 방법.
  7. 제1항에 있어서,
    상기 카메라 포즈 파라미터는 회전 파라미터와 변위 파라미터를 포함하고;
    상기 현재 이미지의 카메라 포즈 파라미터에 기반하여, 상기 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득한 후, 상기 방법은 또한,
    상기 처리될 이미지의 카메라 포즈 파라미터가 기설정된 안정 상태 조건을 만족하지 않는 상황에 응답하여, 상기 처리될 이미지의 변위 파라미터를 획득 불가능한 것을 결정하는 단계; 및
    상기 처리될 이미지의 이전 프레임 이미지의 픽셀 값과 상기 이전 프레임 이미지의 카메라 포즈 파라미터를 이용하여, 상기 처리될 이미지의 회전 파라미터를 얻는 단계를 포함하는 것을 특징으로 하는 시각 포지셔닝 방법.
  8. 제7항에 있어서,
    상기 처리될 이미지의 이전 프레임 이미지의 픽셀 값과 상기 이전 프레임 이미지의 카메라 포즈 파라미터를 이용하여, 상기 처리될 이미지의 회전 파라미터를 얻는 단계는,
    상기 처리될 이미지와 상기 이전 프레임 이미지 사이의 포즈 변환 파라미터를 이용하여 상기 이전 프레임 이미지에서의 적어도 부분 픽셀 포인트에 대해 투영 변환을 처리하여, 상기 적어도 부분 픽셀 포인트가 상기 처리될 이미지에서의 투영점을 얻는 단계;
    상기 적어도 부분 픽셀 포인트가 상기 이전 프레임 이미지에서의 픽셀 값과 상기 적어도 부분 픽셀 포인트에 대응되는 상기 투영점이 상기 처리될 이미지에서의 픽셀 값과의 차이를 이용하여, 상기 포즈 변환 파라미터에 관한 목표 함수를 구축하는 단계; 및
    상기 목표 함수 풀이로 얻은 상기 포즈 변환 파라미터를 이용하여 상기 이전 프레임 이미지의 카메라 포즈 파라미터에 대해 변환 처리를 수행하여, 상기 처리될 이미지의 회전 파라미터를 얻는 단계를 포함하는 것을 특징으로 하는 시각 포지셔닝 방법.
  9. 제8항에 있어서,
    상기 처리될 이미지와 상기 이전 프레임 이미지 사이의 포즈 변환 파라미터를 이용하여 상기 이전 프레임 이미지에서의 적어도 부분 픽셀 포인트에 대해 투영 변환을 수행하여, 상기 적어도 부분 픽셀 포인트가 상기 처리될 이미지에서의 투영점을 얻기 전, 상기 방법은 또한,
    상기 이전 프레임 이미지에 대해 다운 샘플링 처리를 수행하여, 상기 이전 프레임 이미지의 축약 이미지를 얻는 단계를 포함하고;
    상기 처리될 이미지와 상기 이전 프레임 이미지 사이의 포즈 변환 파라미터를 이용하여 상기 처리될 이미지에서의 적어도 부분 픽셀 포인트에 대해 투영 변환을 수행하여, 상기 적어도 부분 픽셀 포인트가 상기 처리될 이미지에서의 투영점을 얻는 단계는,
    상기 처리될 이미지와 상기 이전 프레임 이미지 사이의 포즈 변환 파라미터를 이용하여 상기 축약 이미지에서의 픽셀 포인트에 대해 투영 변환을 수행하여, 상기 축약 이미지에서의 픽셀 포인트가 상기 처리될 이미지에서의 투영점을 얻는 단계를 포함하는 것을 특징으로 하는 시각 포지셔닝 방법.
  10. 제7항에 있어서,
    상기 처리될 이미지의 이전 프레임 이미지의 픽셀 값과 상기 이전 프레임 이미지의 카메라 포즈 파라미터를 이용하여, 상기 처리될 이미지의 회전 파라미터를 얻은 후, 상기 방법은 또한,
    상기 카메라 현재의 가속도 정보를 검출하고, 상기 가속도 정보가 상기 기설정된 운동 상태에 있는 지를 판단하는 단계;
    만약 상기 가속도 정보가 상기 기설정된 운동 상태에 있다면, 상기 카메라의 중력 정보를 획득하는 단계 및 후속 단계를 다시 실행하는 단계; 및
    만약 상기 가속도 정보가 상기 기설정된 운동 상태에 있지 않다면, 상기 카메라 현재의 가속도 정보를 검출하는 단계 및 후속 단계를 다시 실행하는 단계를 포함하는 것을 특징으로 하는 시각 포지셔닝 방법.
  11. 제1항에 있어서,
    상기 중력 정보는 중력 방향 정보를 포함하고, 상기 카메라 포즈 파라미터는 회전 파라미터와 변위 파라미터를 포함하며, 상기 중력 정보를 이용하여, 상기 카메라가 기설정된 운동 상태에서 촬영한 현재 이미지의 카메라 포즈 파라미터를 획득하는 단계는,
    상기 중력 방향 정보를 이용하여, 각각 세계 좌표계의 x 좌표 축, y 좌표 축과 z 좌표 축에 대한 카메라의 회전 각도를 획득하는 단계 - 상기 카메라가 회전 각도에 따라 회전한 후의 중력 방향은 상기 z 좌표 축의 반대 방향과 같음 - ; 및
    상기 회전 각도를 이용하여, 상기 회전 파라미터를 얻고, 상기 변위 파라미터를 기설정된 수치로 설정하는 단계를 포함하는 것을 특징으로 하는 시각 포지셔닝 방법.
  12. 제11항에 있어서,
    상기 세계 좌표계의 원점은 상기 카메라가 상기 현재 이미지를 촬영할 때 위치한 위치이고, 상기 기설정된 수치는 0인 것을 포함하는 것을 특징으로 하는 시각 포지셔닝 방법.
  13. 제1항 내지 제12항 중 어느 한 항에 있어서,
    상기 기설정된 운동 상태는 정지 상태 또는 등속 운동 상태인 것; 및
    상기 중력 정보는 상기 카메라가 상기 기설정된 운동 상태에서의 가속도 정보를 이용하여 얻은 것; 중 적어도 하나인 것을 포함하는 시각 포지셔닝 방법.
  14. 시각 포지셔닝 장치로서,
    카메라의 중력 정보를 획득하도록 구성된 중력 정보 획득 부분;
    상기 중력 정보를 이용하여, 상기 카메라가 기설정된 운동 상태에서 촬영한 현재 이미지의 카메라 포즈 파라미터를 획득하도록 구성된 제1 포즈 획득 부분; 및
    상기 현재 이미지의 카메라 포즈 파라미터에 기반하여, 상기 현재 이미지 이후의 처리될 이미지의 카메라 포즈 파라미터를 획득하도록 구성된 제2 포즈 획득 부분을 포함하는 것을 특징으로 하는 시각 포지셔닝 장치.
  15. 전자 기기로서,
    상호 결합되는 메모리와 프로세서를 포함하고, 상기 프로세서는 상기 메모리에 저장된 프로그램 명령어를 실행하여, 제1항 내지 제13항 중 어느 한 항에 따른 시각 포지셔닝 방법을 구현하기 위한 것을 특징으로 하는 전자 기기.
  16. 컴퓨터 판독 가능한 저장 매체로서,
    프로그램 명령어를 포함하고, 상기 프로그램 명령어가 프로세서에 의해 실행될 때 제1항 내지 제13중 어느 한 항에 따른 시각 포지셔닝 방법을 구현하는 것읕 특징으로 하는 컴퓨터 판독 가능한 매체.
  17. 컴퓨터 프로그램으로서,
    컴퓨터 판독 가능한 코드를 포함하고, 상기 컴퓨터 판독 가능한 코드가 전자 기기에서 작동되어, 상기 전자 기기에서의 프로세서에 의해 실행될 경우, 제1항 내지 제13항 중 어느 한 항에 따른 시각 포지셔닝 방법을 구현하는 것을 특징으로 하는 컴퓨터 프로그램.
KR1020227003202A 2020-10-23 2021-02-19 시각 포지셔닝 방법 및 관련 장치, 기기와 컴퓨터 판독 가능한 저장 매체 Ceased KR20220054582A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN202011148780.6A CN112348889B (zh) 2020-10-23 2020-10-23 视觉定位方法及相关装置、设备
CN202011148780.6 2020-10-23
PCT/CN2021/076957 WO2022083038A1 (zh) 2020-10-23 2021-02-19 视觉定位方法及相关装置、设备和计算机可读存储介质

Publications (1)

Publication Number Publication Date
KR20220054582A true KR20220054582A (ko) 2022-05-03

Family

ID=74360141

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227003202A Ceased KR20220054582A (ko) 2020-10-23 2021-02-19 시각 포지셔닝 방법 및 관련 장치, 기기와 컴퓨터 판독 가능한 저장 매체

Country Status (5)

Country Link
JP (1) JP7280385B2 (ko)
KR (1) KR20220054582A (ko)
CN (1) CN112348889B (ko)
TW (1) TWI795885B (ko)
WO (1) WO2022083038A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102711526B1 (ko) * 2024-02-28 2024-09-30 고려대학교 산학협력단 실내 환경에서의 bim 기반 카메라 트래킹 방법 및 장치

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112348889B (zh) * 2020-10-23 2024-06-07 浙江商汤科技开发有限公司 视觉定位方法及相关装置、设备
CN112884840A (zh) * 2021-03-29 2021-06-01 湖南国科微电子股份有限公司 一种视觉定位方法、装置、设备及存储介质
CN116503483A (zh) * 2022-09-23 2023-07-28 腾讯科技(深圳)有限公司 姿态标定方法、装置、设备、存储介质及计算机程序产品
CN115641648B (zh) * 2022-12-26 2023-08-18 苏州飞蝶虚拟现实科技有限公司 基于视觉对重复动作分析过滤的3d远程互动处理系统
CN116429094B (zh) * 2023-06-15 2023-09-26 小米汽车科技有限公司 定位方法、装置、电子设备及存储介质
CN117058209B (zh) * 2023-10-11 2024-01-23 山东欧龙电子科技有限公司 一种基于三维地图的飞行汽车视觉图像深度信息计算方法
CN118961731B (zh) * 2024-10-16 2025-03-07 宁波杰盈电器科技有限公司 一种继电器外壳的检测方法及继电器

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2014105775A (ru) * 2011-08-24 2015-08-27 Сони Корпорейшн Устройство обработки информации, способ обработки информации и программа
JP2017108370A (ja) * 2015-07-06 2017-06-15 セイコーエプソン株式会社 頭部装着型表示装置およびコンピュータープログラム
US10664993B1 (en) * 2017-03-13 2020-05-26 Occipital, Inc. System for determining a pose of an object
CN108305317B (zh) * 2017-08-04 2020-03-17 腾讯科技(深圳)有限公司 一种图像处理方法、装置及存储介质
US11092812B2 (en) * 2018-06-08 2021-08-17 Magic Leap, Inc. Augmented reality viewer with automated surface selection placement and content orientation placement
CN110720113A (zh) * 2018-08-01 2020-01-21 深圳市大疆创新科技有限公司 一种参数处理方法、装置及摄像设备、飞行器
JP2020042575A (ja) * 2018-09-11 2020-03-19 富士通株式会社 情報処理装置、位置合わせ方法、及びプログラム
JP7107166B2 (ja) * 2018-10-26 2022-07-27 富士通株式会社 床面検出プログラム、床面検出方法及び端末装置
CN110349213B (zh) * 2019-06-28 2023-12-12 Oppo广东移动通信有限公司 基于深度信息的位姿确定方法、装置、介质与电子设备
CN110335316B (zh) * 2019-06-28 2023-04-18 Oppo广东移动通信有限公司 基于深度信息的位姿确定方法、装置、介质与电子设备
CN111210463B (zh) * 2020-01-15 2022-07-15 上海交通大学 基于特征点辅助匹配的虚拟宽视角视觉里程计方法及系统
CN111709984B (zh) * 2020-06-08 2024-02-06 亮风台(上海)信息科技有限公司 位姿深度预测方法、视觉里程计方法、装置、设备及介质
CN111696162B (zh) * 2020-06-11 2022-02-22 中国科学院地理科学与资源研究所 一种双目立体视觉精细地形测量系统及方法
CN112348889B (zh) * 2020-10-23 2024-06-07 浙江商汤科技开发有限公司 视觉定位方法及相关装置、设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102711526B1 (ko) * 2024-02-28 2024-09-30 고려대학교 산학협력단 실내 환경에서의 bim 기반 카메라 트래킹 방법 및 장치

Also Published As

Publication number Publication date
JP7280385B2 (ja) 2023-05-23
CN112348889B (zh) 2024-06-07
TW202217755A (zh) 2022-05-01
TWI795885B (zh) 2023-03-11
JP2023502192A (ja) 2023-01-23
CN112348889A (zh) 2021-02-09
WO2022083038A1 (zh) 2022-04-28

Similar Documents

Publication Publication Date Title
KR20220054582A (ko) 시각 포지셔닝 방법 및 관련 장치, 기기와 컴퓨터 판독 가능한 저장 매체
US20210190497A1 (en) Simultaneous location and mapping (slam) using dual event cameras
CN105469405B (zh) 基于视觉测程的同时定位与地图构建方法
CN107990899B (zh) 一种基于slam的定位方法和系统
US10659768B2 (en) System and method for virtually-augmented visual simultaneous localization and mapping
US12062210B2 (en) Data processing method and apparatus
CN112219087A (zh) 位姿预测方法、地图构建方法、可移动平台及存储介质
CN110211151B (zh) 一种运动物体的追踪方法和装置
WO2013111229A1 (ja) カメラ校正装置、カメラ校正方法およびカメラ校正用プログラム
WO2016199605A1 (ja) 画像処理装置および方法、並びにプログラム
CN113256718B (zh) 定位方法和装置、设备及存储介质
CN110111388A (zh) 三维物体位姿参数估计方法及视觉设备
JP7351892B2 (ja) 障害物検出方法、電子機器、路側機器、及びクラウド制御プラットフォーム
CN113361365B (zh) 定位方法和装置、设备及存储介质
JP6922348B2 (ja) 情報処理装置、方法、及びプログラム
JP2019020778A (ja) 情報処理装置、情報処理方法
JP2022132063A (ja) 拡張現実提供装置のポーズ決定方法及び装置
Huttunen et al. A monocular camera gyroscope
CN119131335B (zh) 目标定位方法、装置、设备以及存储介质
CN111489376A (zh) 跟踪交互设备的方法、装置、终端设备及存储介质
HK40036460A (en) Visual positioning method and related device and equipment
CN114119885A (zh) 图像特征点匹配方法、装置及系统、地图构建方法及系统
CN119879863B (zh) 一种空间距离测量方法及装置
Ruotsalainen et al. Overview of methods for visual-aided pedestrian navigation
JP2024097690A (ja) 情報処理装置、情報処理方法、及びプログラム

Legal Events

Date Code Title Description
PA0105 International application

Patent event date: 20220127

Patent event code: PA01051R01D

Comment text: International Patent Application

PA0201 Request for examination
PG1501 Laying open of application
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20250121

Patent event code: PE09021S01D

E601 Decision to refuse application
PE0601 Decision on rejection of patent

Patent event date: 20250408

Comment text: Decision to Refuse Application

Patent event code: PE06012S01D