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

KR102585821B1 - 증강 현실 장치 및 위치 설정 방법 - Google Patents

증강 현실 장치 및 위치 설정 방법 Download PDF

Info

Publication number
KR102585821B1
KR102585821B1 KR1020200182939A KR20200182939A KR102585821B1 KR 102585821 B1 KR102585821 B1 KR 102585821B1 KR 1020200182939 A KR1020200182939 A KR 1020200182939A KR 20200182939 A KR20200182939 A KR 20200182939A KR 102585821 B1 KR102585821 B1 KR 102585821B1
Authority
KR
South Korea
Prior art keywords
point cloud
point
points
eigenvalues
reading
Prior art date
Application number
KR1020200182939A
Other languages
English (en)
Other versions
KR20210083198A (ko
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 KR20210083198A publication Critical patent/KR20210083198A/ko
Application granted granted Critical
Publication of KR102585821B1 publication Critical patent/KR102585821B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/10Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
    • G01C21/12Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
    • G01C21/16Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
    • G01C21/165Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments
    • G01C21/1652Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments with ranging devices, e.g. LIDAR or RADAR
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/86Combinations of lidar systems with systems other than lidar, radar or sonar, e.g. with direction finders
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/89Lidar systems specially adapted for specific applications for mapping or imaging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/64Analysis of geometric attributes of convexity or concavity
    • 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
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • 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)
  • Theoretical Computer Science (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Geometry (AREA)
  • Human Computer Interaction (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Electromagnetism (AREA)
  • Length Measuring Devices With Unspecified Measuring Means (AREA)
  • Position Fixing By Use Of Radio Waves (AREA)
  • Navigation (AREA)

Abstract

깊이 센서와 관성 측정 장치(IMU)를 포함하는 전기 장치에 대한 위치 설정 방법이 제공된다. 상기 위치 설정 방법은 IMU 신호에 따라 전기 장치의 초기 위치 및 초기 방향을 계산하는 단계; 데이터베이스로부터 환경 포인트 클라우드를 획득하고, 상기 초기 위치 및 상기 초기 방향에 따라 부분 환경 포인트 클라우드를 획득하는 단계; 상기 깊이 센서에 의해 판독 포인트 클라우드를 획득하는 단계; 및 상기 전기 장치의 업데이트된 위치 및 업데이트된 방향을 계산하여 상기 판독 포인트 클라우드와 부분 환경 포인트 클라우드를 일치시키는 단계를 포함한다.

Description

증강 현실 장치 및 위치 설정 방법 {AUGMENTED REALITY DEVICE AND POSITIONING METHOD}
본 발명은 증강 현실 장치 또는 범용 전기 장치에 응용될 수 있는 위치 설정 방법에 관한 것이다.
공간 위치 및 자세의 인식은 컴퓨팅 요소들이 실제 공간과 결합되는 상황에서 사용된다. 종래에, 공간 위치 및 자세의 획득은 주로 관성 측정 장치를 사용함으로써 수행된다. 하지만, 관성 측정 장치는 장기간 사용에서 위치 정보의 결핍 및 적분 표류를 가질 수 있다. 전지구 위치 설정 정보 시스템(Global Positioning information System, GPS)이 위치 정보를 획득하기 위해 야외 현장에서 사용될 수 있지만, 실내 현장에서는 신뢰가능하지 않다. 위치 측정 및 동시 지도화(Simultaneous Localization And Mapping, SLAM)가 GPS 없이 실내 현장에서 공간 위치 및 자세를 획득하기 위해 사용된다. 하지만, 직원이 끊임없이 영역들 간을 움직이는 경우 SLAM이 지도 데이터 오류를 유발할 수도 있는 산업 응용에 대한 고정된 공간 현장에서 연속 현장 모델 업데이트는 중복적이고 많은 컴퓨팅 자원을 소비한다.
본 개시내용의 실시예들은 깊이 센서 및 관성 측정 장치를 포함하는 전기 장치에 대한 위치 설정 방법을 제공한다. 이러한 위치 설정 방법은: 관성 측정 장치로부터 획득된 신호들에 따라 전기 장치의 초기 위치 및 초기 방향을 계산하는 단계; 데이터베이스로부터 환경 포인트 클라우드를 획득하고, 초기 위치 및 초기 방향에 따라 환경 포인트 클라우드로부터 부분 환경 포인트 클라우드를 획득하는 단계; 깊이 센서에 의해 판독 포인트 클라우드를 획득하는 단계; 그리고 전기 장치의 업데이트된 위치 및 업데이트된 방향을 계산하여 판독 포인트 클라우드와 부분 환경 포인트 클라우드를 매칭시키는 단계를 포함한다.
일부 실시예들에서, 판독 포인트 클라우드와 부분 환경 포인트 클라우드를 매칭시키는 단계는 다음의 수학식 (1)을 푸는 단계를 포함한다.
…(1)
수학식 (1)에서, 는 판독 포인트 클라우드의 i번째 포인트이고, 는 부분 환경 포인트 클라우드의 i번째 포인트이고, 포인트 는 포인트 에 매칭되고, 는 포인트 및 포인트 에 대응하는 가중치이고, 은 이동 행렬이고, 는 시프트 벡터이고, N은 판독 포인트 클라우드의 포인트들의 수이다.
일부 실시예들에서, 가중치 는 포인트 간의 거리에 역으로 상관된다.
일부 실시예들에서, 포인트 및 포인트 각각은 X 좌표, Y 좌표, Z 좌표, 및 법선 벡터를 포함한다.
일부 실시예들에서, 위치 설정 방법은 또한: 판독 포인트 클라우드로부터 포인트 및 복수의 이웃 포인트들을 획득하는 단계; 그리고 복수의 고유값들 및 복수의 주성분들을 획득하기 위해 포인트 및 이웃 포인트들에 대한 주성분 분석을 수행하고, 고유값들 중 최소 고유값에 대응하는 주성분을 포인트 의 법선 벡터로서 설정하는 단계를 포함한다.
일부 실시예들에서, 포인트 및 포인트 각각은 곡률 인자를 더 포함한다. 위치 설정 방법은: 곡률 인자를 계산하기 위해 고유값들 중 최소 고유값을 고유값들의 합으로 나누는 단계를 더 포함한다.
다른 양태로부터, 본 개시내용의 실시예들은 관성 측정 장치, 깊이 센서, 및 프로세서를 포함하는 증강 현실 장치를 제공한다. 프로세서는: 관성 측정 장치로부터 획득된 신호들에 따라 증강 현실 장치의 초기 위치 및 초기 방향을 계산하는 단계; 데이터베이스로부터 환경 포인트 클라우드를 획득하고, 초기 위치 및 초기 방향에 따라 환경 포인트 클라우드로부터 부분 환경 포인트 클라우드를 획득하는 단계; 깊이 센서에 의해 판독 포인트 클라우드를 획득하는 단계; 그리고 전기 장치의 업데이트된 위치 및 업데이트된 방향을 계산하기 위해 판독 포인트 클라우드와 부분 환경 포인트 클라우드를 매칭시키는 단계를 수행하도록 구성된다.
앞에서 설명된 장치 및 방법에서는, 대략적인 위치가 관성 측정 장치에 따라 결정되고, 그 다음에 해당 위치는 포인트 클라우드 정합에 의해 업데이트된다. 이에 따라, 정밀한 위치가 제공되고, 포인트 클라우드 정합의 계산이 감소된다.
본 발명은 다음과 같은 수반되는 도면들을 참조하여 실시예의 다음과 같은 상세한 설명을 읽음으로써 더 충분히 이해될 수 있다.
도 1은 실시예에 따른 증강 현실 장치의 응용 상황이다.
도 2는 실시예에 따른 증강 현실의 개략적 블록도이다.
도 3은 실시예에 따른 증강 현실 장치의 응용 상황의 정상 관측도이다.
도 4는 실시예에 따른 위치 설정 방법의 흐름도이다.
도 5는 실시예에 따른 반복 근접점 알고리즘의 개략적 흐름도이다.
도 6은 실시예에 따른 법선 벡터를 계산하는 개략도이다.
도 7은 실시예에 따른 위치 설정 방법의 개략적 흐름도이다.
본 발명의 특정 실시예들이, 수반되는 도면들을 참조하여 아래에서 상세히 더 설명되지만, 설명되는 이러한 실시예들은 본 발명을 한정하도록 의도된 것이 아니며, 동작의 설명이 구현의 순서를 한정하도록 의도된 것도 아니다. 더욱이, 요소들의 재결합에 의해 형성되는 구조로부터 생성되는 등가의 기능들을 갖는 임의의 장치는 본 발명의 범위 내에 있게 될 것이다. 추가적으로, 도면들은 단지 예시일 뿐이며 실제 크기에 따라 그려진 것이 아니다.
본 명세서에서 "제1", "제2", "제3", 등의 사용은 동일한 용어에 의해 설명되는 유닛들 또는 데이터를 식별시키기 위한 것으로 이해되어야 하며, 특정 순서 또는 차례에 따라 언급된 것이 아니다.
본 개시내용의 위치 설정 방법은 포인트 클라우드, 관성 측정 장치(Inertial Measurement Unit, IMU), 및 포인트 클라우드 정합(Point Cloud Registration, PCR)의 기술들을 채택한다. 공간의 포인트 클라우드는 깊이 센서에 의해 추출되고, 포인트 클라우드는 공간 내의 위치 및 방향을 결정하기 위해 IMU 및 PCR과 결합된다. 위치 설정 기술은 컴퓨터 프로그램들과 산업 응용에서의 실제 환경 간의 가상과 실제 관계를 연결하기 위해 사용될 수 있다. 반면, 직원은 증강 현실(Augmented Reality, AR) 장치 객체 설계에 의해 특정 현장에서 임무를 완료하도록 인도받는다. 종래에, 단일 IMU를 이용한 공간 위치 설정은 위치를 정확하게 측정할 수 없는 단점을 가지며, 장-기간 사용시 오류를 누적시키는 단점을 갖는다. 제안되는 방법은, 포인트 클라우드를 스캔하는 것, 알려진 환경 내에서 포인트 클라우드의 대략적 위치를 IMU를 통해 제공하는 것, 그리고 스캔된 포인트 클라우드와 환경의 3D 모델의 포인트 클라우드를 PCR 알고리즘에 의해 매칭시키는 것을 수행함으로써 정밀한 위치 및 방향을 계산한다. 이에 따라, 제안되는 방법은 정확한 공간 위치 설정 정보를 얻을 수 있고 AR의 혼합 현실 설계의 신뢰도를 증가시킬 수 있다.
도 1은 실시예에 따른 증강 현실 장치의 응용 상황이다. AR 장치(100)는 도 1의 실시예에서 스마트 안경이지만, 마스크, 스마트폰, 태블릿, 등일 수 있다. AR 장치(100)의 외관은 본 개시내용에서 제한되지 않는다. 사용자는 실내에서, 예를 들어, 하나 이상의 공작 기계(110)가 배치된 산업 환경에서 움직이기 위해 AR 장치(100)를 착용할 수 있다. 공작 기계(110)의 포인트 클라우드는 알려져 있고, 이에 따라 AR 장치(100)는 AR 장치(100)의 위치를 획득하기 위해 공작 기계(110)의 포인트 클라우드를 식별할 수 있다.
도 2는 실시예에 따른 증강 현실 장치의 개략적 블록도이다. 도 2를 참조하면, AR 장치(100)는 프로세서(210), 관성 측정 장치(220), 깊이 센서(230), 통신 모듈(240), 및 디스플레이(250)를 포함한다. 프로세서(210)는 중앙 처리 장치, 마이크로프로세서, 마이크로제어기, 디지털 신호 프로세서, 이미지 처리 칩, 주문형 집적 회로, 등일 수 있다. 관성 측정 장치(220)는 가속도 센서, 각속도 센서, 자력계, 등을 포함할 수 있다. 깊이 센서(230)는 적외선 방출기, 적외선 센서, 듀얼 카메라들, 구조화 광 감지 장치, 또는 필드의 깊이를 검출할 수 있는 임의의 장치를 포함할 수 있다. 통신 모듈(240)은 인터넷, 근거리 네트워크(Local Area Network, LAN)들, 광역 네트워크(Wide Area Network, WAN)들, 셀룰러 네트워크들, 근접장 통신(Near Field Communications, NFC), 적외선(InfraRed, IR), 블루투스, 와이파이(WiFi)와 같은 통신 수단을 제공할 수 있는 회로일 수 있다. 디스플레이(250)는 유기 발광 다이오드(Organic Light Emitting Diode, OLED) 디스플레이, 액정 디스플레이, 또는 임의의 적절한 디스플레이를 포함할 수 있다. 간결함을 위해, AR 장치(100)의 모든 구성요소들이 도 2에서 도시되지 않았다.
도 3은 실시예에 따른 증강 현실 장치의 응용 상황의 정상 관측도이다. 도 4는 실시예에 따른 위치 설정 방법의 흐름도이다. 도 3 및 도 4의 실시예에서, AR 장치(100)는 실내 환경(300) 내에서 움직인다. 아래에서 설명되는 방법의 각각의 단계는 AR 장치(100)의 프로세서(210)에 의해 수행되거나 또는 AR 장치(100)로부터 필요한 데이터를 수신하고 그 다음에 계산 결과를 AR 장치(100)에 전송하는 클라우드 서버(미도시)에 의해 수행된다.
단계 420에서, 초기 위치 및 초기 방향(301)이 관성 측정 장치(220)로부터 획득된 신호들에 따라 계산된다. 예를 들어, 관성 측정 장치(220)에 의해 측정된 가속도 값들은 속도 값들을 획득하기 위해 적분되고, 이러한 속도 값들은 초기 위치를 획득하기 위해 적분되며, 그리고 초기 방향(301)은 각가속도 및 자력의 방향에 따라 획득된다.
단계 430에서, 포인트들을 스캔하는 것이, 복수의 포인트들을 포함하는 (포인트들의 집합으로서 지칭될 수 있는) 행렬 로서 표현되는 포인트 클라우드를 얻기 위해 깊이 센서(230)에 의해 수행되는데, 여기서 i번째 포인트는 벡터 로서 표현된다. M, N,i는 양의 정수들이다. N은 행렬 P 내의 포인트들의 수이다. M은 각각의 벡터 의 길이이다. 세부적으로, 깊이 센서(230)는 환경 객체(예컨대, 공작 기계(110))를 스캔하여 환경 객체의 각각의 포인트와 AR 장치(100) 사이의 거리를 얻는다. AR 장치(100)의 위치 및 방향 그리고 거리에 따라 포인트들의 좌표들이 계산된다. 따라서, 각각의 벡터 는 적어도 X 좌표, Y 좌표, 및 Z 좌표를 포함한다. 일부 실시예들에서, 각각의 벡터 는 또한 법선 벡터 및 곡률 인자를 포함한다(이것은 아래에서 설명될 것임). 벡터 는 일반적인 설명을 위해 예로서 취해진다. 깊이 센서(230)에 의해 발생된 포인트 클라우드는 판독 포인트 클라우드로서 지칭된다.
단계 440에서, 데이터베이스(450)로부터 환경 포인트 클라우드가 획득된다. 환경 포인트 클라우드는 실내 환경(300) 내의 하나 이상의 공작 기계(110)의 포인트 클라우드들을 포함한다. 환경 포인트 클라우드는 행렬 로서 표현된다. 유사하게, 환경 포인트 클라우드는 복수의 포인트들을 포함하고, 여기서 i번째 포인트는 벡터 로서 표현된다. 환경 포인트 클라우드는 미리 생성될 수 있다. 예를 들어, 3D 파일이 포인트 클라우드로 변환될 수 있다. 3D 파일은 오토캐드, 솔리드워크, 또는 카티아와 같은 다양한 소프트웨어에 의해 생성될 수 있다. 실시예들에서, 깊이 센서(230)는 스티칭, 노이즈 필터링, 선명화, 격자화, 등의 처리에 의해 3D 파일 없이 환경 포인트 클라우드를 생성할 수 있다. 일부 실시예들에서, 환경 포인트 클라우드는 다른 컴퓨터 시스템에 의해 제공된다.
초기 추측이 단계 440에서 또한 수행된다. 환경 포인트 클라우드는 실내 환경 내의 모든 객체들의 포인트들을 포함하고, 그리고 만약 모든 객체들이 판독 포인트 클라우드에 매칭된다면 중복되는 계산이 있을 것이다. 일부 실시예들에서, 깊이 센서(230)는 초기 위치 및 초기 방향을 이용해 시계(310)를 계산하기 위해서 사용되는 시야각을 갖는다. 단지 시계(310) 내의 포인트들만이 부분 환경 포인트 클라우드(간결함을 위해 여전히 Q 로서 표현됨)로서 환경 포인트 클라우드로부터 추출된다. 부분 환경 포인트 클라우드는 계산을 감소시키기 위해 판독 포인트 클라우드에 매칭된다. 일부 실시예들에서, 판독 포인트 클라우드와 부분 환경 포인트 클라우드 간의 이동 및 시프트의 변환이 존재한다. 변환은 다음과 같은 수학식 (1)로서 쓰여진다.
(1)
R 의 크기를 갖는 이동 행렬이고, t M의 길이를 갖는 시프트 벡터이다. 일부 실시예들에서, 이동 행렬 R 및 시프트 벡터 t 는 단계 420에서 계산된 초기 방향 및 초기 위치에 의해 초기화된다. 일부 실시예들에서, 이동 행렬 R 및 시프트 벡터 t 는 무작위로 초기화된다.
단계 460에서, 포인트 클라우드 정합(PCR) 알고리즘이 수행된다. 반복 근접점(Iterative Closest Point, ICP) 알고리즘이 실시예에서 채택되지만, 다른 정합 알고리즘들이 다른 실시예들에서 채택될 수 있다. 도 5는 실시예에 따른 ICP 알고리즘의 개략적 흐름도이다. 도 5를 참조하면, 단계 510에서, 포인트 로 변환된다.
단계 520에서, KD 트리가 포인트 를 빠르게 검색하기 위해 부분 환경 포인트 클라우드 Q 에 따라 생성된다. BSP 트리, KDB 트리, R 트리, R+ 트리 셀 트리, 쿼드 트리, 및 옥트리와 같은 다른 데이터 구조들이 다른 실시예들에서 채택될 수 있다.
단계 530에서, 판독 포인트 클라우드 P 가 부분 환경 포인트 클라우드 Q 에 매칭되는데, 즉, 각각의 포인트 에 대한 최근접점 가 쌍 를 형성하기 위해 검색된다. 최근접점을 검색할 때 포인트 와 변환된 포인트 간의 거리가 계산됨에 유의해야 한다. 포인트 간의 거리는 유클리드 거리(즉, 차이 벡터의 L2-노름) 또는 다른 적절한 거리일 수 있다.
단계 540에서, 가중치 가 각각의 쌍 에 대해 계산된다. 가중치 는 포인트 간의 거리에 역으로 상관되고, 거리는 여기서 실수 d로서 표현된다. 예를 들어, 만약 실수 d가 임계치보다 크다면, 가중치 는 0이 되도록 설정된다. 만약 실수 d가 임계치보다 작거나 같다면, 가중치 는 실수 d의 역 또는 감소 함수가 되도록 설정된다. 감소 함수는 e -d 등일 수 있다. 가중치 는 포인트 클라우드의 이상치(예컨대, 배경)를 제거하는 데 사용된다. 이러한 방식으로, 배경은 매칭 결과에 영향을 미치지 않게 된다.
단계 550에서, 다음과 같은 수학식 (2)로서 쓰여지는 최적화 알고리즘이 행렬 R 및 벡터 t 를 계산하기 위해 수행된다.
…(2)
상기 최적화 알고리즘은 본 개시내용에서 제한되지 않는 검색 방법(예컨대, 유전 알고리즘)에 의해 또는 공식들에 의해 풀릴 수 있다. 예를 들어, 공식들은 다음과 같은 수학식들 (3) 내지 (5)를 포함할 수 있다.
…(3)
…(4)
…(5)
다음으로, 행렬 S 가 다음과 같은 수학식 (6)에 따라 생성된다. 특이값 분해(Singular Value Decomposition, SVD)가 수학식 (7)에서 쓰여지는 바와 같이 행렬 S 에 대해 수행된다. 이동 행렬 R은 행렬 U 및 행렬 V 에 근거하여 다음과 같은 수학식 (8)로서 계산된다.
…(6)
…(7)
…(8)
단계 560에서, 업데이트가 수렴하는지 여부가 결정된다. 예를 들어, 만약 이동 행렬 R 및 시프트 벡터 t 의 변경의 크기가 사전결정된 값보다 작다면, 업데이트가 수렴한다고 결정된다. 일부 실시예들에서는, 만약 특정 수의 반복들이 수행되었다면 업데이트가 수렴한다고 결정된다. 만약 업데이트가 수렴하지 않는다면, 다시 단계 510로 되돌아가 새로운 이동 행렬 R 및 새로운 시프트 벡터 t 에 근거하여 포인트 를 변환한다.
도 3 및 도 4를 참조하면, 업데이트된 위치 및 업데이트된 방향이 단계 470에서 계산된다. 정확히 말하자면, 판독 포인트 클라우드와 부분 환경 포인트 클라우드가 매칭된 이후, 만약 일부 매칭된 포인트들 가 공작 기계(110)에 속한다면, 이것은 공작 기계(110)가 AR 장치(100)의 시계(310) 내에 있음을 의미한다. 추가적으로, 공작 기계(110)에 대한 AR 장치(100)의 거리 및 방향이 쌍 에 근거하여 획득될 수 있고, 이에 따라, 공작 기계(110)의 위치가 알려져 있기 때문에, AR 장치(100)의 업데이트된 위치 및 업데이트된 방향이 계산될 수 있다. 단계 420에서 계산된 초기 방향 및 초기 위치는 업데이트된 위치 및 업데이트된 방향으로 대체되게 된다. 일부 실시예들에서, 업데이트된 위치 및 업데이트된 방향은 또한, 디스플레이(250) 상에 어떤 정보가 보여지는지를 결정하기 위해 프로세서(210)에 의해 실행되는 증강 현실 모듈(410)로 전송된다.
일부 실시예들에서, 추가적인 법선 벡터 및 곡률 인자가 포인트 클라우드의 각각의 포인트에 대해 계산된다. 따라서, 포인트 및 포인트 각각은 7의 길이를 갖는 벡터(x,y,z,u,v,w,c)로서 표현될 수 있다. (x,y,z)의 요소들은 각각 X 좌표, Y 좌표, 및 Z 좌표이다. (u,v,w)의 요소들은 법선 벡터를 구성하고, c는 곡률 인자이다. 도 6은 실시예에 따른 법선 벡터를 계산하는 개략도이다. 도 6을 참조하면, 예로서 포인트 (x,y,z)를 취하는 경우, 작은 영역 내의 포인트 의 이웃 포인트들(610)(또는 사전결정된 수의 이웃 포인트들)이 획득된다. 주성분 분석(Principle Component Analyze, PCA) 알고리즘이 고유값들 및 주성분들을 얻기 위해 포인트 및 이웃 포인트들(610)에 대해 수행된다. 고유값들 은 내림 차순으로 정렬된다. 본 발명의 기술분야에 있는 사람들은 PCA 알고리즘을 이해할 수 있어야 하고, 따라서 PCA 알고리즘은 상세히 설명되지 않을 것이다. 각각의 고유값은 주성분들 중 하나에 대응한다. 각각의 주성분은 3의 길이를 갖는 벡터이다. 최대 고유값 에 대응하는 주성분은 포인트 및 이웃 포인트들(610)을 최대로 표현할 수 있는 기준이다. 및 이웃 포인트들(610)이 대략 두 개의 기준들에 의해 걸쳐 있는 2-차원 표면 상에 있기 때문에, 세 번째 기준들은 표면의 법선 벡터를 나타내야 한다. 달리 말하면, 최소 고유값 에 대응하는 주성분은 포인트 의 법선 벡터 (u,v,w)가 되도록 설정된다. 더욱이, 만약 표면이 평평하다면 고유값 은 상대적으로 작아야 하고, 만약 표면이 곡선이라면 고유값 은 상대적으로 커야 한다. 따라서, 고유값 은 곡률 인자 c를 계산하는 데 사용될 수 있다. 일부 실시예들에서, 최소 고유값은 다음과 같은 수학식 (9)에서 쓰여지는 바와 같이 곡률 인자 c를 계산하기 위해 세 개의 고유값들의 합으로 나누어진다.
…(9)
앞서 언급된 동작은 판독 포인트 클라우드 및 부분 환경 포인트 클라우드의 각각의 포인트에 대해 수행될 수 있고, 본래의 벡터들 (x,y,z)는 벡터들 (x,y,z,u,v,w,c)로 대체되게 된다. 이러한 실시예에서 각각의 포인트는 더 기술적인데, 왜냐하면 법선 벡터 및 곡률 인자가, 매칭된 쌍 를 향상시킬 ICP 알고리즘의 매칭에 추가되기 때문이다.
도 7은 실시예에 따른 위치 설정 방법의 개략적 흐름도이다. 도 7을 참조하면, 단계 710에서, 전기 장치의 초기 위치 및 초기 방향이 관성 측정 장치로부터 획득된 신호에 따라 계산된다. 단계 720에서, 환경 포인트 클라우드가 데이터베이스로부터 획득되고, 부분 환경 포인트 클라우드가 초기 위치 및 초기 방향에 따라 환경 포인트 클라우드로부터 획득된다. 단계 730에서, 판독 포인트 클라우드가 깊이 센서에 의해 획득된다. 단계 740에서, 전기 장치의 업데이트된 위치 및 업데이트된 방향을 계산하기 위해 판독 포인트 클라우드가 부분 환경 포인트 클라우드에 매칭된다. 하지만, 도 7에서의 모든 단계들은 앞에서 상세히 설명되었고, 따라서 설명은 되풀이되지 않을 것이다. 도 7에서의 단계들이 프로그램 코드 또는 회로로서 구현될 수 있고, 그 개시내용은 이에 한정되지 않음에 유의해야 한다. 추가적으로, 도 7에서의 방법은 AR 장치(100)에 응용될 수 있거나, 또는 스마트폰, 태블릿, 또는 임의의 적절한 웨어러블 장치와 같은 범용 전기 장치에 응용될 수 있다. 전기 장치는 적어도 프로세서, 깊이 센서, 및 관성 측정 장치를 포함한다.
앞서-언급된 위치 설정 방법 및 AR 장치에서, SLAM 및 IMU가 실내에서 위치 및 배향 정보를 정확하게 제공할 수 없는 문제는 포인트 클라우드 정보, IMU 및 PCR 기술을 결합함으로써 해결된다. 본 발명은 또한 IMU가 오랜 시간 동안 오류를 누적하는 문제를 해결한다. 이러한 위치 설정 방법은 CAD 소프트웨어에 의해 설계된 공작 기계를 갖는 내부 공간 또는 공장 영역과 같은 실내 현장 또는 3D 모델을 갖는 임의의 실내 환경에 응용될 수 있다.
비록 본 발명이 그 특정 실시예들을 참조하여 상당히 상세히 설명되었지만, 다른 실시예들도 가능하다. 따라서, 첨부되는 청구항들의 사상 및 범위는 본 명세서에 포함된 실시예들의 설명으로 한정되어서는 안 된다. 본 발명의 범위 또는 사상으로부터 벗어남이 없이 본 발명의 구조에 대한 다양한 수정 및 변경이 행해질 수 있음이 본 발명의 기술분야에서 숙련된 기술을 가진 자들에게 명백할 것이다. 앞서의 설명을 고려할 때, 본 발명은 이러한 발명의 수정 및 변형이 다음과 같은 청구항들의 범위 내에 있다면 이들을 포괄하도록 의도된 것이다.

Claims (10)

  1. 깊이 센서 및 관성 측정 장치를 포함하는 전기 장치에 대한 위치 설정 방법으로서,
    상기 관성 측정 장치로부터 획득된 신호에 따라 상기 전기 장치의 초기 위치 및 초기 방향을 계산하는 단계;
    데이터베이스로부터 환경 포인트 클라우드를 획득하고, 상기 초기 위치 및 상기 초기 방향에 따라 상기 환경 포인트 클라우드로부터 부분 환경 포인트 클라우드를 획득하는 단계;
    상기 깊이 센서에 의해 판독 포인트 클라우드를 획득하는 단계;
    상기 전기 장치의 업데이트된 위치 및 업데이트된 방향을 계산하여 상기 판독 포인트 클라우드와 상기 부분 환경 포인트 클라우드를 매칭시키는 단계로서, 다음의 수학식 (1)을 푸는 단계를 포함하고,
    …(1)
    상기 수학식에서 는 상기 판독 포인트 클라우드의 i번째 포인트이고, 는 상기 부분 환경 포인트 클라우드의 i번째 포인트이고, 포인트 는 포인트 에 매칭되고, 는 포인트 및 포인트 에 대응하는 가중치이고, 은 이동 행렬이고, t 는 시프트 벡터이고, N은 상기 판독 포인트 클라우드의 포인트들의 수이고,
    상기 가중치 은 포인트 간의 거리에 역으로 상관되고,
    포인트 및 포인트 각각은 X 좌표, Y 좌표, Z 좌표, 법선 벡터 및 곡률 인자를 포함하는, 상기 판독 포인트 클라우드와 상기 부분 환경 포인트 클라우드를 매칭시키는 단계;
    상기 판독 포인트 클라우드로부터 포인트 및 상기 포인트의 복수의 이웃 포인트들을 획득하는 단계;
    복수의 고유값들 및 복수의 주성분들을 획득하기 위해 포인트 및 상기 이웃 포인트들에 대한 주성분 분석을 수행하고, 고유값들 중 최소 고유값에 대응하는 주성분을 포인트 의 법선 벡터로서 설정하는 단계; 및
    상기 곡률 인자를 계산하기 위해 상기 고유값들 중 최소 고유값을 상기 고유값들의 합으로 나누는 단계; 를 포함하는, 위치 설정 방법.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 증강 현실 장치로서,
    관성 측정 장치;
    깊이 센서; 및
    복수의 단계들을 수행하도록 구성된 프로세서를 포함하고, 상기 복수의 단계들은:
    상기 관성 측정 장치로부터 획득된 신호에 따라 상기 증강 현실 장치의 초기 위치 및 초기 방향을 계산하는 단계;
    데이터베이스로부터 환경 포인트 클라우드를 획득하고, 상기 초기 위치 및 상기 초기 방향에 따라 상기 환경 포인트 클라우드로부터 부분 환경 포인트 클라우드를 획득하는 단계;
    상기 깊이 센서에 의해 판독 포인트 클라우드를 획득하는 단계; 및
    전기 장치의 업데이트된 위치 및 업데이트된 방향을 계산하기 위해 상기 판독 포인트 클라우드와 상기 부분 환경 포인트 클라우드를 매칭시키는 단계로서, 다음의 수학식 (1)을 푸는 단계를 포함하고,
    …(1)
    상기 수학식에서 는 상기 판독 포인트 클라우드의 i번째 포인트이고, 는 상기 부분 환경 포인트 클라우드의 i번째 포인트이고, 포인트 는 포인트 에 매칭되고, 는 포인트 및 포인트 에 대응하는 가중치이고, 은 이동 행렬이고, t 는 시프트 벡터이고, N은 상기 판독 포인트 클라우드의 포인트들의 수이고, 상기 가중치 는 포인트 간의 거리에 역으로 상관되고,
    포인트 및 포인트 각각은 X 좌표, Y 좌표, Z 좌표, 법선 벡터 및 곡률 인자를 포함하는, 상기 판독 포인트 클라우드와 상기 부분 환경 포인트 클라우드를 매칭시키는 단계;
    상기 판독 포인트 클라우드로부터 포인트 및 상기 포인트의 복수의 이웃 포인트들을 획득하는 단계;
    복수의 고유값들 및 복수의 주성분들을 획득하기 위해 포인트 및 상기 이웃 포인트들에 대한 주성분 분석을 수행하고, 고유값들 중 최소 고유값에 대응하는 주성분을 포인트 의 법선 벡터로서 설정하는 단계; 및
    상기 곡률 인자를 계산하기 위해 상기 고유값들 중 최소 고유값을 상기 고유값들의 합으로 나누는 단계를 포함하는, 증강 현실 장치.
  8. 삭제
  9. 삭제
  10. 삭제
KR1020200182939A 2019-12-25 2020-12-24 증강 현실 장치 및 위치 설정 방법 KR102585821B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
TW108147692A TWI722738B (zh) 2019-12-25 2019-12-25 擴增實境裝置與定位方法
TW108147692 2019-12-25

Publications (2)

Publication Number Publication Date
KR20210083198A KR20210083198A (ko) 2021-07-06
KR102585821B1 true KR102585821B1 (ko) 2023-10-10

Family

ID=71616102

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200182939A KR102585821B1 (ko) 2019-12-25 2020-12-24 증강 현실 장치 및 위치 설정 방법

Country Status (6)

Country Link
US (1) US11158081B2 (ko)
JP (1) JP7114686B2 (ko)
KR (1) KR102585821B1 (ko)
GB (1) GB2590745B (ko)
NL (1) NL2025743B1 (ko)
TW (1) TWI722738B (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI795764B (zh) * 2021-04-22 2023-03-11 政威資訊顧問有限公司 基於擴增實境視景的呈現設施物件定位方法及伺服端
CN113345023B (zh) * 2021-07-05 2024-03-01 北京京东乾石科技有限公司 箱体的定位方法、装置、介质和电子设备
CN113566829A (zh) * 2021-07-19 2021-10-29 上海极赫信息技术有限公司 基于高精度定位技术的混合现实的导览方法、系统及mr设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070031064A1 (en) * 2004-06-10 2007-02-08 Wenyi Zhao Method and apparatus for aligning video to three-dimensional point clouds
JP2019101694A (ja) * 2017-11-30 2019-06-24 大成建設株式会社 位置特定装置、位置特定プログラム及び位置特定方法、並びに、撮影画像登録装置、撮影画像登録プログラム及び撮影画像登録方法
WO2019155719A1 (ja) * 2018-02-09 2019-08-15 ソニー株式会社 キャリブレーション装置とキャリブレーション方法およびプログラム

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2961264B1 (ja) 1998-09-21 1999-10-12 工業技術院長 3次元物体モデル生成方法及び3次元物体モデル生成プログラムを記録したコンピュータ読み取り可能な記録媒体
TW201447235A (zh) * 2011-11-22 2014-12-16 Core Wireless Licensing Sarl 用於決定位置偏移資訊之方法、設備和電腦可讀儲存媒體
TWI475191B (zh) * 2012-04-03 2015-03-01 Wistron Corp 用於實景導航之定位方法、定位系統及電腦可讀取儲存媒體
CN103047981B (zh) * 2012-12-22 2017-03-15 江苏车视杰电子有限公司 电子装置及其导航定位方法和系统
KR20230044041A (ko) * 2013-03-11 2023-03-31 매직 립, 인코포레이티드 증강 및 가상 현실을 위한 시스템 및 방법
US9582516B2 (en) * 2013-10-17 2017-02-28 Nant Holdings Ip, Llc Wide area augmented reality location-based services
EP3094806B1 (en) * 2014-01-14 2019-07-24 Sandvik Mining and Construction Oy Mine vehicle and method of initiating mine work task
JP2015184056A (ja) 2014-03-20 2015-10-22 株式会社東芝 計測装置、方法及びプログラム
US10180734B2 (en) * 2015-03-05 2019-01-15 Magic Leap, Inc. Systems and methods for augmented reality
TWI616829B (zh) * 2015-08-21 2018-03-01 緯創資通股份有限公司 物品定位追蹤的方法及其系統與電腦可讀取記錄媒體
US9984499B1 (en) * 2015-11-30 2018-05-29 Snap Inc. Image and point cloud based tracking and in augmented reality systems
US9918204B1 (en) * 2015-12-08 2018-03-13 Bentley Systems, Incorporated High accuracy indoor tracking
JP6643170B2 (ja) 2016-04-11 2020-02-12 株式会社日立製作所 作業支援システム及び方法
US11297346B2 (en) * 2016-05-28 2022-04-05 Microsoft Technology Licensing, Llc Motion-compensated compression of dynamic voxelized point clouds
TWI597513B (zh) * 2016-06-02 2017-09-01 財團法人工業技術研究院 定位系統、車載定位裝置及其定位方法
US9906885B2 (en) * 2016-07-15 2018-02-27 Qualcomm Incorporated Methods and systems for inserting virtual sounds into an environment
US11037369B2 (en) * 2017-05-01 2021-06-15 Zimmer Us, Inc. Virtual or augmented reality rehabilitation
EP3710863A4 (en) * 2017-11-17 2021-01-20 Thales Canada Inc. EXTRACTION OF RAIL ASSETS FROM POINT CLOUD DATA
KR102098929B1 (ko) * 2018-02-26 2020-04-08 성균관대학교산학협력단 수술용 내비게이션의 표면 정합 방법 및 장치
JP2019168976A (ja) 2018-03-23 2019-10-03 株式会社ジオ技術研究所 3次元モデル生成装置
US11294060B2 (en) 2018-04-18 2022-04-05 Faraday & Future Inc. System and method for lidar-based vehicular localization relating to autonomous navigation
JP6632656B2 (ja) 2018-05-14 2020-01-22 キヤノン株式会社 干渉判定装置、干渉判定方法、コンピュータプログラム
TWM598411U (zh) * 2019-12-25 2020-07-11 亞達科技股份有限公司 擴增實境裝置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070031064A1 (en) * 2004-06-10 2007-02-08 Wenyi Zhao Method and apparatus for aligning video to three-dimensional point clouds
JP2019101694A (ja) * 2017-11-30 2019-06-24 大成建設株式会社 位置特定装置、位置特定プログラム及び位置特定方法、並びに、撮影画像登録装置、撮影画像登録プログラム及び撮影画像登録方法
WO2019155719A1 (ja) * 2018-02-09 2019-08-15 ソニー株式会社 キャリブレーション装置とキャリブレーション方法およびプログラム

Also Published As

Publication number Publication date
GB2590745A (en) 2021-07-07
US11158081B2 (en) 2021-10-26
TW202124917A (zh) 2021-07-01
GB2590745B (en) 2022-01-05
JP2021103168A (ja) 2021-07-15
JP7114686B2 (ja) 2022-08-08
TWI722738B (zh) 2021-03-21
GB202008424D0 (en) 2020-07-22
NL2025743B1 (en) 2021-09-09
US20210201525A1 (en) 2021-07-01
KR20210083198A (ko) 2021-07-06

Similar Documents

Publication Publication Date Title
CN111199564B (zh) 智能移动终端的室内定位方法、装置与电子设备
KR102585821B1 (ko) 증강 현실 장치 및 위치 설정 방법
CN104574386B (zh) 一种基于三维环境模型匹配的室内定位方法
Sona et al. Experimental analysis of different software packages for orientation and digital surface modelling from UAV images
US10534870B2 (en) Methods, apparatuses and computer program products for automatic, non-parametric, non-iterative three dimensional geographic modeling
JP5920352B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP2020030204A (ja) 距離測定方法、プログラム、距離測定システム、および可動物体
JP5627325B2 (ja) 位置姿勢計測装置、位置姿勢計測方法、およびプログラム
JP6853156B2 (ja) 姿勢推定システム、姿勢推定装置、及び距離画像カメラ
KR102130687B1 (ko) 다중 센서 플랫폼 간 정보 융합을 위한 시스템
CN111709988B (zh) 一种物体的特征信息的确定方法、装置、电子设备及存储介质
JP2012128661A (ja) 情報処理装置、情報処理方法及びプログラム
CN111459269B (zh) 一种增强现实显示方法、系统及计算机可读存储介质
CN111735439A (zh) 地图构建方法、装置和计算机可读存储介质
CN113048980A (zh) 位姿优化方法、装置、电子设备及存储介质
Jin et al. An Indoor Location‐Based Positioning System Using Stereo Vision with the Drone Camera
CN110926478B (zh) 一种ar导航路线纠偏方法、系统及计算机可读存储介质
Masiero et al. Toward the use of smartphones for mobile mapping
CN113960614A (zh) 一种基于帧-地图匹配的高程图构建方法
Jiang et al. Indoor localization with a signal tree
CN115797256A (zh) 基于无人机的隧道岩体结构面信息的处理方法以及装置
US20240159857A1 (en) Method for constructing indoor map and related apparatus
JP2023503750A (ja) ロボットの位置決め方法及び装置、機器、記憶媒体
TWM598411U (zh) 擴增實境裝置
JP6281938B2 (ja) データ処理装置、データ処理方法、及びデータ処理プログラム

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right