KR20230041461A - Computing device and method for estimating global location using external positioning device - Google Patents
Computing device and method for estimating global location using external positioning device Download PDFInfo
- Publication number
- KR20230041461A KR20230041461A KR1020210125119A KR20210125119A KR20230041461A KR 20230041461 A KR20230041461 A KR 20230041461A KR 1020210125119 A KR1020210125119 A KR 1020210125119A KR 20210125119 A KR20210125119 A KR 20210125119A KR 20230041461 A KR20230041461 A KR 20230041461A
- Authority
- KR
- South Korea
- Prior art keywords
- global
- computing device
- information
- positioning device
- location information
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 238000004891 communication Methods 0.000 claims description 53
- 239000003550 marker Substances 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 18
- 230000004044 response Effects 0.000 description 9
- 238000005259 measurement Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 238000005457 optimization Methods 0.000 description 6
- 230000002123 temporal effect Effects 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000014509 gene expression Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 238000011017 operating method Methods 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3833—Creation or updating of map data characterised by the source of data
- G01C21/3844—Data obtained from position sensors only, e.g. from inertial navigation
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C11/00—Photogrammetry or videogrammetry, e.g. stereogrammetry; Photographic surveying
- G01C11/02—Picture taking arrangements specially adapted for photogrammetry or photographic surveying, e.g. controlling overlapping of pictures
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C11/00—Photogrammetry or videogrammetry, e.g. stereogrammetry; Photographic surveying
- G01C11/04—Interpretation of pictures
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C15/00—Surveying instruments or accessories not provided for in groups G01C1/00 - G01C13/00
- G01C15/02—Means for marking measuring points
- G01C15/06—Surveyors' staffs; Movable markers
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO 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/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/02—Systems using the reflection of electromagnetic waves other than radio waves
- G01S17/06—Systems determining position data of a target
- G01S17/08—Systems determining position data of a target for measuring distance only
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO 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/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/87—Combinations of systems using electromagnetic waves other than radio waves
- G01S17/875—Combinations of systems using electromagnetic waves other than radio waves for determining attitude
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/03—Cooperating elements; Interaction or communication between different cooperating elements or between cooperating elements and receivers
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2218/00—Aspects of pattern recognition specially adapted for signal processing
- G06F2218/08—Feature extraction
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- General Physics & Mathematics (AREA)
- Electromagnetism (AREA)
- Computer Networks & Wireless Communication (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
Description
다양한 실시예들은 외부의 측위 장치를 이용하여 전역 위치를 추정하기 위한 컴퓨팅 장치 및 그의 방법에 관한 것이다. Various embodiments relate to a computing device and method for estimating a global position using an external positioning device.
일반적으로, 이동 로봇이나 자율 주행 차량과 같은 컴퓨팅 장치가 미지의 환경을 돌아다니면서 컴퓨팅 장치에 부착되어 있는 센서만으로 환경에 대한 지도를 작성하는 기술이 있다. 컴퓨팅 장치는 자신의 위치를 기반으로 하는 로컬 좌표계에서의 지도를 작성할 뿐이며, 전역 좌표계에서의 지도를 작성하지 않는다. 이러한 컴퓨팅 장치를 활용하여 전역 좌표계에서의 지도를 작성하기 위해서는, 컴퓨팅 장치에지엔에스에스(GNSS; global navigation satellite system) 모듈과 같은 측위 모듈이 장착되어야 한다. 그러나, 측위 모듈의 큰 부피, 무거운 무게, 복잡한 구조, 높은 가격 등으로 인해, 컴퓨팅 장치에 측위 모듈을 장착하는 데 제약이 있다. 아울러, 이러한 경우에, 기존에 측위 모듈 없이 제조된 컴퓨팅 장치는 더 이상 활용되지 못한다.In general, there is a technology in which a computing device such as a mobile robot or an autonomous vehicle moves around an unknown environment and creates a map of the environment using only a sensor attached to the computing device. A computing device creates a map only in a local coordinate system based on its own location, not in a global coordinate system. In order to create a map in the global coordinate system using such a computing device, a positioning module such as a global navigation satellite system (GNSS) module must be mounted on the computing device. However, due to the large volume, heavy weight, complex structure, and high price of the positioning module, there are limitations in mounting the positioning module in a computing device. In addition, in this case, a computing device previously manufactured without a positioning module is no longer utilized.
다양한 실시예들은, 외부의 측위 장치를 이용하여 전역 위치를 추정하기 위한 컴퓨팅 장치 및 그의 방법을 제공한다. Various embodiments provide a computing device and method for estimating a global position using an external positioning device.
다양한 실시예들은, 측위 모듈을 포함하지 않고도, 전역 좌표계에서의 지도를 생성할 수 있는 컴퓨팅 장치 및 그의 방법을 제공한다. Various embodiments provide a computing device and method capable of generating a map in a global coordinate system without including a positioning module.
다양한 실시예들에 따른 컴퓨팅 장치의 방법은, 전역 시간 정보 및 전역 위치 정보를 검출하고, 상기 전역 위치 정보를 나타내는 인공 표식을 포함하는 측위 장치에 인접하여 주행하면서, 상기 인공 표식을 식별하는 단계, 상기 인공 표식을 기반으로, 상기 측위 장치의 상기 전역 위치 정보 및 상기 전역 시간 정보를 확인하는 단계, 상기 인공 표식을 기반으로, 상기 측위 장치와 상기 컴퓨팅 장치의 상대 위치 정보를 결정하는 단계, 및 상기 상대 위치 정보 및 상기 전역 위치 정보를 기반으로, 상기 컴퓨팅 장치의 전역 위치 정보 및 전역 시간 정보를 결정하는 단계를 포함할 수 있다. A method of a computing device according to various embodiments includes detecting global time information and global location information, and identifying an artificial landmark while driving adjacent to a positioning device including an artificial landmark representing the global position information; determining the global location information and the global time information of the positioning device based on the artificial landmark; determining relative location information between the positioning device and the computing device based on the artificial landmark; The method may include determining global location information and global time information of the computing device based on the relative location information and the global location information.
다양한 실시예들에 따른 컴퓨팅 장치는, 메모리, 및 상기 메모리와 연결되고, 상기 메모리에 저장된 적어도 하나의 명령을 실행하도록 구성된 프로세서를 포함하고, 상기 프로세서는, 전역 시간 정보 및 전역 위치 정보를 검출하고, 상기 전역 위치 정보를 나타내는 인공 표식을 포함하는 측위 장치에 인접하여 주행하면서, 상기 인공 표식을 식별하고, 상기 인공 표식을 기반으로, 상기 측위 장치의 상기 전역 위치 정보 및 상기 전역 시간 정보를 확인하고, 상기 인공 표식을 기반으로, 상기 측위 장치와 상기 컴퓨팅 장치의 상대 위치 정보를 결정하고, 상기 상대 위치 정보 및 상기 전역 위치 정보를 기반으로, 상기 컴퓨팅 장치의 전역 위치 정보 및 전역 시간 정보를 결정하도록 구성될 수 있다. A computing device according to various embodiments includes a memory and a processor connected to the memory and configured to execute at least one instruction stored in the memory, wherein the processor detects global time information and global location information; , driving adjacent to a positioning device including an artificial landmark representing the global location information, identifying the artificial landmark, and checking the global location information and global time information of the positioning device based on the artificial landmark; , determine relative location information of the positioning device and the computing device based on the artificial landmark, and determine global location information and global time information of the computing device based on the relative location information and the global location information. can be configured.
다양한 실시예들에 따르면, 컴퓨팅 장치는 외부의 측위 장치를 이용하여 자신의 전역 위치를 추정할 수 있다. 이를 통해, 컴퓨팅 장치는 자신의 전역 위치를 기반으로, 전역 좌표계에서의 지도를 생성할 수 있다. 즉, 컴퓨팅 장치는 측위 모듈을 포함하지 않고도, 전역 좌표계에서의 지도를 생성할 수 있다. 이 때, 컴퓨팅 장치가 로컬 좌표계에서의 지도를 생성 가능하게 구현된 경우, 컴퓨팅 장치는 최적화를 통해 로컬 좌표계와 전역 좌표계를 조합하여, 최적화된 지도를 생성할 수 있다. 따라서, 컴퓨팅 장치를 제조하는 데 소요되는 비용이 절감되며, 나아가, 전역 좌표계에서의 지도를 생성하기 위한 컴퓨터 시스템을 구현하는 데 소요되는 비용이 절감될 수 있다. According to various embodiments, a computing device may estimate its global location using an external location device. Through this, the computing device may generate a map in the global coordinate system based on its global location. That is, the computing device may generate a map in the global coordinate system without including a positioning module. In this case, if the computing device is implemented to generate a map in the local coordinate system, the computing device may generate an optimized map by combining the local coordinate system and the global coordinate system through optimization. Accordingly, the cost required to manufacture the computing device can be reduced, and furthermore, the cost required to implement a computer system for generating a map in the global coordinate system can be reduced.
도 1은 다양한 실시예들에 따른 컴퓨팅 시스템의 구성을 도시하는 도면이다.
도 2는 다양한 실시예들에 따른 컴퓨팅 시스템에서의 신호 흐름을 도시하는 도면이다.
도 3 및 도 4는 다양한 실시예들에 따른 컴퓨팅 장치의 동작 특징을 설명하기 위한 도면들이다.
도 5는 다양한 실시예들에 따른 측위 장치의 내부 구성을 도시하는 도면이다.
도 6은 일 실시예에 따른 측위 장치의 동작 절차를 도시하는 도면이다.
도 7은 다른 실시예에 따른 측위 장치의 동작 절차를 도시하는 도면이다.
도 8은 다양한 실시예들에 따른 컴퓨팅 장치의 내부 구성을 도시하는 도면이다.
도 9는 도 8의 프로세서의 상세 구성을 도시하는 도면이다.
도 10은 일 실시예에 따른 컴퓨팅 장치의 동작 절차를 도시하는 도면이다.
도 11은 다른 실시예에 따른 컴퓨팅 장치의 동작 절차를 도시하는 도면이다. 1 is a diagram illustrating a configuration of a computing system according to various embodiments.
2 is a diagram illustrating signal flow in a computing system according to various embodiments.
3 and 4 are diagrams for describing operational characteristics of a computing device according to various embodiments.
5 is a diagram illustrating an internal configuration of a positioning device according to various embodiments.
6 is a diagram illustrating an operation procedure of a positioning device according to an embodiment.
7 is a diagram illustrating an operation procedure of a positioning device according to another embodiment.
8 is a diagram illustrating an internal configuration of a computing device according to various embodiments.
FIG. 9 is a diagram showing a detailed configuration of the processor of FIG. 8 .
10 is a diagram illustrating an operating procedure of a computing device according to an exemplary embodiment.
11 is a diagram illustrating an operating procedure of a computing device according to another embodiment.
이하, 본 개시의 실시를 위한 구체적인 내용을 첨부된 도면을 참조하여 상세히 설명한다. 다만, 이하의 설명에서는 본 개시의 요지를 불필요하게 흐릴 우려가 있는 경우, 널리 알려진 기능이나 구성에 관한 구체적 설명은 생략하기로 한다. Hereinafter, specific details for the implementation of the present disclosure will be described in detail with reference to the accompanying drawings. However, in the following description, if there is a risk of unnecessarily obscuring the gist of the present disclosure, detailed descriptions of well-known functions or configurations will be omitted.
첨부된 도면에서, 동일하거나 대응하는 구성요소에는 동일한 참조부호가 부여되어 있다. 또한, 이하의 실시예들의 설명에 있어서, 동일하거나 대응되는 구성요소를 중복하여 기술하는 것이 생략될 수 있다. 그러나, 구성요소에 관한 기술이 생략되어도, 그러한 구성요소가 어떤 실시예에 포함되지 않는 것으로 의도되지는 않는다. In the accompanying drawings, identical or corresponding elements are given the same reference numerals. In addition, in the description of the following embodiments, overlapping descriptions of the same or corresponding components may be omitted. However, omission of a description of a component does not intend that such a component is not included in an embodiment.
개시된 실시예들의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 개시는 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 개시가 완전하도록 하고, 본 개시가 통상의 기술자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것일 뿐이다. Advantages and features of the disclosed embodiments, and methods of achieving them, will become clear with reference to the following embodiments in conjunction with the accompanying drawings. However, the present disclosure is not limited to the embodiments disclosed below and may be implemented in various different forms, but only the present embodiments make the present disclosure complete, and the present disclosure does not extend the scope of the invention to those skilled in the art. It is provided only for complete information.
본 개시에서 사용되는 용어에 대해 간략히 설명하고, 개시된 실시예들에 대해 구체적으로 설명하기로 한다. 본 개시에서 사용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 관련 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서, 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다. Terms used in this disclosure will be briefly described, and the disclosed embodiments will be described in detail. The terminology used in the present disclosure has been selected from general terms that are currently widely used as much as possible while considering functions in the present disclosure, but they may vary depending on the intention or precedent of a person skilled in the related field, the emergence of new technologies, and the like. In addition, in a specific case, there is also a term arbitrarily selected by the applicant, and in this case, the meaning will be described in detail in the description of the invention. Therefore, the terms used in the present disclosure should be defined based on the meaning of the terms and the general content of the present disclosure, not simply the names of the terms.
본 개시에서의 단수의 표현은 문맥상 명백하게 단수인 것으로 특정하지 않는 한, 복수의 표현을 포함한다. 또한, 복수의 표현은 문맥상 명백하게 복수인 것으로 특정하지 않는 한, 단수의 표현을 포함한다. 명세서 전체에서 어떤 부분이 어떤 구성요소를 포함한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. Expressions in the singular number in this disclosure include plural expressions unless the context clearly dictates that they are singular. Also, plural expressions include singular expressions unless the context clearly specifies that they are plural. When it is said that a certain part includes a certain component in the entire specification, this means that it may further include other components without excluding other components unless otherwise stated.
또한, 본 개시에서 사용되는 '모듈' 또는 '부'라는 용어는 소프트웨어 또는 하드웨어 구성요소를 의미하며, '모듈' 또는 '부'는 어떤 역할들을 수행한 다. 그렇지만, '모듈' 또는 '부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '모듈' 또는 '부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서, '모듈' 또는 '부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성 요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 또는 변수들 중 적어도 하나를 포함할 수 있다. 구성요소들과 '모듈' 또는 '부'들은 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '모듈' 또는 '부'들로 결합되거나 추가적인 구성요소들과 '모듈' 또는 '부'들로 더 분리될 수 있다. Also, the terms 'module' or 'unit' used in the present disclosure mean a software or hardware component, and the 'module' or 'unit' performs certain roles. However, 'module' or 'unit' is not meant to be limited to software or hardware. A 'module' or 'unit' may be configured to reside in an addressable storage medium and may be configured to reproduce one or more processors. Thus, as an example, a 'module' or 'unit' refers to components such as software components, object-oriented software components, class components, and task components, processes, functions, and attributes. , procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, or variables. Functions provided within components and 'modules' or 'units' may be combined into a smaller number of components and 'modules' or 'units', or further components and 'modules' or 'units'. can be further separated.
본 개시에 따르면, '모듈' 또는 '부'는 프로세서 및 메 모리로 구현될 수 있다. '프로세서'는 범용 프로세서, 중앙 처리 장치(CPU), 마이 크로프로세서, 디지털 신호 프로세서(DSP), 제어기, 마이크로제어기, 상태 머신 등을 포함하도록 넓게 해석되어야 한다. 몇몇 환경에서, '프로세서'는 주문형 반도 체(ASIC), 프로그램가능 로직 디바이스(PLD), 필드 프로그램가능 게이트 어레이 (FPGA) 등을 지칭할 수도 있다. '프로세서'는, 예를 들어, DSP와 마이크로프로세서의 조합, 복수의 마이크로프로세서들의 조합, DSP 코어와 결합한 하나 이상의 마이크로프로세서들의 조합, 또는 임의의 다른 그러한 구성들의 조합과 같은 처리 디바이스들의 조합을 지칭할 수도 있다. 또한, '메모리'는 전자 정보를 저장 가능한 임의의 전자 컴포넌트를 포함하도록 넓게 해석되어야 한다. '메모리'는 임의 액세스 메모리(RAM), 판독-전용 메모리(ROM), 비-휘발성 임의 액세스 메모리(NVRAM), 프로그램가능 판독-전용 메모리(PROM), 소거-프로그램가능 판독 전용 메모리(EPROM), 전기적으로 소거가능 PROM(EEPROM), 플래쉬 메모리, 자기 또는 광학 데이터 저장장치, 레지스터들 등과 같은 프로세서-판독가능 매체의 다양한 유형들을 지칭할 수도 있다. 프로세서가 메모리로부터 정보를 판독하고/하거나 메모리에 정보를 기록할 수 있다면 메모리는 프로세서와 전자 통신 상태에 있다고 불린다. 프로세서에 집적된 메모리는 프로세서와 전자 통신 상태에 있다.According to the present disclosure, a 'module' or 'unit' may be implemented with a processor and a memory. 'Processor' should be interpreted broadly to include general-purpose processors, central processing units (CPUs), microprocessors, digital signal processors (DSPs), controllers, microcontrollers, state machines, and the like. In some circumstances, 'processor' may refer to an application specific integrated circuit (ASIC), programmable logic device (PLD), field programmable gate array (FPGA), or the like. 'Processor' refers to a combination of processing devices, such as, for example, a combination of a DSP and a microprocessor, a combination of a plurality of microprocessors, a combination of one or more microprocessors in conjunction with a DSP core, or a combination of any other such configurations. You may. Also, 'memory' should be interpreted broadly to include any electronic component capable of storing electronic information. 'Memory' includes random access memory (RAM), read-only memory (ROM), non-volatile random access memory (NVRAM), programmable read-only memory (PROM), erasable-programmable read-only memory (EPROM), It may also refer to various types of processor-readable media, such as electrically erasable PROM (EEPROM), flash memory, magnetic or optical data storage, registers, and the like. A memory is said to be in electronic communication with the processor if the processor can read information from and/or write information to the memory. Memory integrated with the processor is in electronic communication with the processor.
이하에서, '위치(position)'라는 용어는 '자세(pose)'라는 용어로도 지칭될 수 있으며, 3차원 공간 상의 좌표, 또는 배향(orientation)을 나타내는 회전(yaw) 및 기울기(pitch, roll) 중 적어도 하나를 포함할 수 있다. 예를 들어, 위치 또는 자세는 최대 6 자유도(degrees of freedom)로 표현되거나, 6 자유도 중 일부로 표현될 수 있다. Hereinafter, the term 'position' may also be referred to as the term 'pose', and rotation (yaw) and tilt (pitch, roll) representing coordinates or orientation in a 3D space ) may include at least one of For example, a position or posture may be expressed in a maximum of 6 degrees of freedom, or may be expressed in some of the 6 degrees of freedom.
도 1은 다양한 실시예들에 따른 컴퓨팅 시스템(100)의 구성을 도시하는 도면이다.1 is a diagram illustrating a configuration of a
도 1을 참조하면, 컴퓨터 시스템(100)은 측위 장치(110) 및 컴퓨팅 장치(120)를 포함하며, 컴퓨팅 장치(120)가 측위 장치(110)를 이용하여 컴퓨팅 장치(120)의 전역 위치를 추정하도록 구성될 수 있다. Referring to FIG. 1 , the
측위 장치(110)는 자신의 전역 위치 정보 및 전역 시간 정보를 검출하는 기능을 가질 수 있다. 예를 들면, 측위 장치(110)는 위성으로부터 지엔에스에스 정보를 수신하고, 지엔에스에스 정보로부터 전역 위치 정보 및 전역 시간 정보를 검출할 수 있다. 측위 장치(110)는 미리 정해진 장소에 고정되게 설치되거나, 이동 가능하게 구현될 수 있다. 그리고, 측위 장치(110)는 인공 표식(예: 도 3의 인공 표식(310))을 포함할 수 있다. 인공 표식은 측위 장치(110)의 전역 위치 정보를 나타낼 수 있다. 예를 들면, 인공 표식은 측위 장치(110)에 대한 식별 정보를 표현하기 위한 특정 패턴을 포함할 수 있다. 인공 표식은, 예컨대 기준 마커(fiducial marker), 비주얼 마커(visual marker), 또는 사이니지(signage) 중 적어도 하나를 포함할 수 있다. The positioning device 110 may have a function of detecting its global location information and global time information. For example, the positioning device 110 may receive GNS information from a satellite and detect global location information and global time information from the GNS information. The positioning device 110 may be fixedly installed at a predetermined location or movably implemented. Also, the positioning device 110 may include an artificial mark (eg, the
컴퓨팅 장치(120)는 측위 장치(110)를 이용하여, 자신의 전역 위치 정보 및 전역 시간 정보를 결정하는 기능을 가질 수 있다. 구체적으로, 컴퓨팅 장치(120)는 실외 환경 또는 실내 환경을 주행하면서, 측위 장치(110)의 인공 표식을 식별할 수 있다. 그리고, 컴퓨팅 장치(120)는 인공 표식을 기반으로, 측위 장치(110)의 전역 위치 정보를 확인하고, 측위 장치(110)와의 상대 위치 정보를 결정할 수 있다. 이를 통해, 컴퓨팅 장치(120)는 측위 장치(110)의 전역 위치 정보 및 측위 장치(110)와의 상대 위치 정보를 기반으로, 자신의 전역 위치 정보를 결정할 수 있다. 또한, 컴퓨팅 장치(120)는 측위 장치(110)에 대한 시간적 페어링(pairing)을 통해, 측위 장치(110)의 전역 시간 정보에 대응하여, 자신의 전역 시간 정보를 결정할 수 있다. 이에 따라, 컴퓨팅 장치(120)는 자신의 전역 위치 정보 및 전역 시간 정보를 이용하여, 전역 좌표계(월드 좌표계로도 지칭될 수 있음)에서의 지도를 생성할 수 있다. 예를 들면, 컴퓨팅 장치(120)는 증강현실(augmented reality; AR), 로보틱스, 자율주행 등과 같은 3차원 공간에서 특정 기능 또는 행위의 대상이 되는 객체일 수 있으나, 이에 제한되지 않는다. 컴퓨팅 장치(120)는, 예컨대 자율 주행이 가능한 이동 로봇(robot) 또는 차량, 또는 증강현실을 제공하는 휴대용 컴퓨터 또는 웨어러블 컴퓨터 중 적어도 하나를 포함할 수 있다. The
도 2는 다양한 실시예들에 따른 컴퓨팅 시스템(100)에서의 신호 흐름을 도시하는 도면이다. 도 3 및 도 4는 다양한 실시예들에 따른 컴퓨팅 장치(120)의 동작 특징을 설명하기 위한 도면들이다. 2 is a diagram illustrating signal flow in a
도 2를 참조하면, 측위 장치(110)는 210 단계에서 인공 표식(310)을 포함할 수 있다. 예를 들면, 인공 표식(310)은 측위 장치(110)에 대한 식별 정보를 표현하기 위한 특정 패턴을 포함할 수 있다. 일 예로, 도 3에 도시된 바와 같이, 패턴은 적어도 하나의 도형의 형태, 크기, 배치 등으로 정의될 수 있다. 다른 예로, 도시되지는 않았으나, 패턴은 적어도 하나의 문자로 이루어지는 텍스트로 정의될 수 있다. 그리고, 측위 장치(110)는 220 단계에서 자신의 전역 시간 정보 및 전역 위치 정보를 검출할 수 있다. 예를 들면, 측위 장치(110)는 위성으로부터 지엔에스에스 정보를 수신하고, 지엔에스에스 정보로부터 전역 위치 정보 및 전역 시간 정보를 검출할 수 있다. 여기서, 측위 장치(110)는 주기적으로 지엔에스에스 정보를 수신하고, 이로써 주기적으로 전역 위치 정보 및 전역 시간 정보를 검출할 수 있다.Referring to FIG. 2 , the positioning device 110 may include an
컴퓨팅 장치(120)는 230 단계에서 주행 중 측위 장치(110)의 인공 표식(310)을 식별할 수 있다. 구체적으로, 컴퓨팅 장치(120)는 인공 표식(310)을 촬영하여, 인공 표식(310)을 갖는 이미지를 획득하고, 이미지를 분석하여, 측위 장치(110)에 대한 식별 정보를 추출할 수 있다. 이 때, 컴퓨팅 장치(120)에서, 측위 장치(110)에 대한 시간적 페어링이 이루어질 수 있다. 일 실시예에 따르면, 컴퓨팅 장치(120)는 240 단계에서 측위 장치(110)로부터 측위 장치(110)의 전역 시간 정보를 수신할 수 있다. 다른 실시예에 따르면, 컴퓨팅 장치(120)는 측위 장치(110)의 전역 시간 정보에 부합하는 미리 정해진 전역 표준시를 기반으로, 이미지가 획득된 시간을 확인할 수 있다. 또 다른 실시예에 따르면, 컴퓨팅 장치(120)는 미리 정해진 시간 간격을 초과하도록 정지된 상태에서 이미지를 획득하고, 이미지가 획득된 시간을 확인할 수 있다. The
일 실시예에 따르면, 컴퓨팅 장치(120)는 도 3에 도시된 바와 같은 방식으로, 인공 표식(310)의 이미지로부터 식별 정보를 추출할 수 있다. 이 때, 컴퓨팅 장치(120)는 미리 정해진 알고리즘을 이용하여, 인공 표식(310)의 특징점들을 추출할 수 있다. 구체적으로, 컴퓨팅 장치(120)는 인공 표식(310)의 이미지를 가상 평면(320)에 매핑시킨 다음, 인공 표식(310)의 특징점들을 추출할 수 있다. 여기서, 가상 평면(320)은 컴퓨팅 장치(120)에 대해 정의되며, 인공 표식(310)에 대해 미리 정해진 포맷/규격에 의해 정해진 사각형의 평면을 나타낼 수 있다. 예를 들면, 특징점들은 코너 포인트들을 포함할 수 있으며, 코너 포인트들은 가상 평면(320) 상에서의 인공 표식(310)의 패턴에 포함된 도형의 꼭지점들을 나타낼 수 있다. 그리고, 컴퓨팅 장치(120)는 가상 평면(320) 상에서 특징점들의 좌표를 추출할 수 있다. 이를 통해, 컴퓨팅 장치(120)는 인공 표식(310)의 특징점들로부터 패턴을 인식할 수 있으며, 패턴에 대응하는 식별 정보를 추출할 수 있다. According to one embodiment, the
다음으로, 컴퓨팅 장치(120)는 250 단계에서 인공 표식(310)을 기반으로, 측위 장치(110)의 전역 시간 정보 및 전역 위치 정보를 확인할 수 있다. 이 때, 컴퓨팅 장치(120)는 측위 장치(110)에 대한 식별 정보를 이용하여, 내부에 미리 저장된 데이터베이스 또는 외부의 서버(도시되지 않음)에 저장된 데이터베이스로부터, 측위 장치(110)의 전역 위치 정보를 확인할 수 있다. 그리고, 컴퓨팅 장치(120)는 측위 장치(110)의 전역 위치 정보에 대응하여, 측위 장치(110)의 전역 시간 정보를 확인할 수 있다. 일 실시예에 따르면, 컴퓨팅 장치(120)는 240 단계에서 수신된 전역 시간 정보를 측위 장치(110)의 전역 시간 정보로 확인할 수 있다. 다른 실시예에 따르면, 컴퓨팅 장치(120)는 미리 정해진 전역 표준시를 기반으로, 이미지가 획득된 시간으로부터 측위 장치(110)의 전역 시간 정보를 확인할 수 있다. Next, the
다음으로, 컴퓨팅 장치(120)는 260 단계에서 측위 장치(110)와의 상대 위치 정보를 결정할 수 있다. 상대 위치 정보는 측위 장치(110)와 컴퓨팅 장치(120) 사이의 상대적인 거리, 또는 컴퓨팅 장치(120)에 대한 측위 장치(110)의 상대적인 자세 중 적어도 하나를 포함할 수 있다. 이 때, 컴퓨팅 장치(120)는 카메라 모듈 또는 라이다(LiDAR) 센서 중 적어도 하나를 이용하여, 상대 위치 정보를 결정할 수 있다. 일 예로, 컴퓨팅 장치(120)는 카메라 모듈(810)를 이용하여, 상대 위치 정보를 결정할 수 있다. 다른 예로, 컴퓨팅 장치(120)는 카메라 모듈(810) 및 라이다 센서를 이용하여, 상대 위치 정보를 결정할 수 있다.Next, the
일 실시예에 따르면, 컴퓨팅 장치(120)는 도 4에 도시된 바와 같은 방식으로, 컴퓨팅 장치(120)에 대한 인공 표식(310)의 상대적인 자세를 결정할 수 있다. 구체적으로, 컴퓨팅 장치(120)는 도 4의 (a)에 도시된 바와 같이, 인공 표식(310)의 이미지가 가상 평면(320)에 매핑되기 전의, 가상 평면(320)에 대한 인공 표식(310)의 이미지의 자세를 추출할 수 있다. 이 때, 컴퓨팅 장치(120)는 가상 평면(320)에 대한 인공 표식(310)의 이미지의 X축, Y축, 및 Z축의 각각의 배향을 추출할 수 있다. 그리고, 컴퓨팅 장치(120)는 도 4의 (b)에 도시된 바와 같이, 인공 표식(310)의 이미지가 가상 평면(320)에 매핑되기 위한 인공 표식(310)의 이미지의 자세 변화를 결정할 수 있다. 이 때, 컴퓨팅 장치(120)는 인공 표식(310)의 이미지의 X축, Y축, 및 Z축의 각각의 이동 거리, 각도 등을 결정할 수 있다. 이를 통해, 컴퓨팅 장치(120)는 인공 표식(310)의 이미지가 가상 평면(320)에 매핑되기 위한 인공 표식(310)의 이미지의 자세 변화로부터 인공 표식(310)의 상대적인 자세를 결정할 수 있다. According to one embodiment,
다음으로, 컴퓨팅 장치(120)는 270 단계에서 측위 장치(110)의 전역 시간 정보 및 전역 위치 정보, 및 상대 위치 정보를 기반으로, 자신의 전역 시간 정보 및 전역 위치 정보를 결정할 수 있다. 이 때, 컴퓨팅 장치(120)는 측위 장치(110)의 전역 위치 정보 및 상대 위치 정보를 조합하여, 자신의 전역 위치 정보를 결정할 수 있다. 그리고, 컴퓨팅 장치(120)는 측위 장치(110)의 전역 시간 정보로 자신의 전역 시간 정보를 결정할 수 있다. 일 실시예에 따르면, 컴퓨팅 장치(120)는 측위 장치(110)의 전역 시간 정보와 일치하도록, 자신의 전역 시간 정보를 결정할 수 있다. 다른 실시예에 따르면, 컴퓨팅 장치(120)는 측위 장치(110)의 전역 시간 정보에 대해 보간을 적용하여, 자신의 전역 시간 정보를 결정할 수 있다. Next, the
도 5는 다양한 실시예들에 따른 측위 장치(110)의 내부 구성을 도시하는 도면이다. 5 is a diagram illustrating an internal configuration of a positioning device 110 according to various embodiments.
도 5를 참조하면, 측위 장치(110)는 측위 모듈(510), 인공 표식(520), 통신 모듈(530), 메모리(540), 또는 프로세서(550) 중 적어도 하나를 포함할 수 있다. 어떤 실시예들에서, 측위 장치(110)의 구성 요소들 중 적어도 어느 하나(예: 통신 모듈(530))가 생략될 수 있으며, 적어도 하나의 다른 구성 요소가 추가될 수 있다. 어떤 실시예들에서, 측위 장치(110)의 구성 요소들 중 적어도 어느 두 개(예: 측위 모듈(510) 및 통신 모듈(530))가 하나의 통합된 회로로 구현될 수 있다. Referring to FIG. 5 , the positioning device 110 may include at least one of a
측위 모듈(510)은 측위 장치(110)에서 외부 장치로부터 측위 정보를 수신할 수 있다. 예를 들면, 외부 장치는 위성을 포함하며, 측위 정보는 지엔에스에스 정보를 포함할 수 있다. 즉, 측위 모듈(510)은 지엔에스에스 위성으로부터 지엔에스에스 정보를 수신할 수 있다. 여기서, 측위 모듈(510)은 주기적으로 지엔에스에스 정보를 수신할 수 있다. The
인공 표식(예: 도 3 및 도 4의 인공 표식(310))(520)은 측위 장치(110)의 전역 위치 정보를 나타낼 수 있다. 예를 들면, 인공 표식(520)은 측위 장치(110)에 대한 식별 정보를 표현하기 위한 특정 패턴을 포함할 수 있다. 일 예로, 패턴은 적어도 하나의 도형의 형태, 크기, 배치 등으로 정의될 수 있다. 다른 예로, 패턴은 적어도 하나의 문자로 이루어지는 텍스트로 정의될 수 있다. 인공 표식(520)은, 예컨대 기준 마커, 비주얼 마커, 또는 사이니지 중 적어도 하나를 포함할 수 있다. The artificial landmark (eg, the
통신 모듈(530)은 측위 장치(110)에서 외부 장치와 통신을 수행할 수 있다. 예를 들면, 외부 장치는 컴퓨팅 장치(120) 또는 서버(도시되지 않음) 중 적어도 하나를 포함할 수 있다. 통신 모듈(530)은 유선 통신 모듈 또는 무선 통신 모듈 중 적어도 하나를 포함할 수 있다. 유선 통신 모듈은 연결 단자(도시되지 않음)를 통해 외부 장치와 유선으로 연결되어, 외부 장치와 유선으로 통신할 수 있다. 무선 통신 모듈은 근거리 통신 모듈 또는 원거리 통신 모듈 중 적어도 어느 하나를 포함할 수 있다. 근거리 통신 모듈은 외부 장치와 근거리 통신 방식으로 통신할 수 있다. 예를 들면, 근거리 통신 방식은, 블루투스(Bluetooth), 와이파이 다이렉트(WiFi direct), 또는 적외선 통신(IrDA; infrared data association) 중 적어도 어느 하나를 포함할 수 있다. 원거리 통신 모듈은 외부 장치와 원거리 통신 방식으로 통신할 수 있다. 여기서, 원거리 통신 모듈은 네트워크를 통해 외부 장치와 통신할 수 있다. 예를 들면, 네트워크는 셀룰러 네트워크, 인터넷, 또는 LAN(local area network)이나 WAN(wide area network)과 같은 컴퓨터 네트워크 중 적어도 어느 하나를 포함할 수 있다.The communication module 530 may perform communication with an external device in the positioning device 110 . For example, the external device may include at least one of the
메모리(540)는 측위 장치(110)의 적어도 하나의 구성 요소에 의해 사용되는 다양한 데이터를 저장할 수 있다. 예를 들면, 메모리(540)는 휘발성 메모리 또는 비휘발성 메모리 중 적어도 어느 하나를 포함할 수 있다. 데이터는 적어도 하나의 프로그램 및 이와 관련된 입력 데이터 또는 출력 데이터를 포함할 수 있다. 프로그램은 메모리(540)에 적어도 하나의 명령을 포함하는 소프트웨어로서 저장될 수 있다. The memory 540 may store various data used by at least one component of the positioning device 110 . For example, the memory 540 may include at least one of volatile memory and non-volatile memory. The data may include at least one program and related input data or output data. The program may be stored as software including at least one instruction in the memory 540 .
프로세서(550)는 메모리(540)의 프로그램을 실행하여, 측위 장치(110)의 적어도 하나의 구성 요소를 제어할 수 있다. 이를 통해, 프로세서(550)는 데이터 처리 또는 연산을 수행할 수 있다. 이 때 프로세서(550)는 메모리(540)에 저장된 명령을 실행할 수 있다. The processor 550 may execute a program of the memory 540 to control at least one element of the positioning device 110 . Through this, the processor 550 may perform data processing or calculation. At this time, the processor 550 may execute instructions stored in the memory 540 .
다양한 실시예들에 따르면, 프로세서(550)는 측위 장치(110)의 전역 시간 정보 및 전역 위치 정보를 검출할 수 있다. 예를 들면, 프로세서(550)는 지엔에스에스 정보로부터 전역 위치 정보 및 전역 시간 정보를 검출할 수 있다. 여기서, 주기적으로 지엔에스에스 정보가 수신됨에 따라, 프로세서(550)는 주기적으로 전역 위치 정보 및 전역 시간 정보를 검출할 수 있다. According to various embodiments, the processor 550 may detect global time information and global location information of the positioning device 110 . For example, the processor 550 may detect global location information and global time information from GNS information. Here, as GNS information is periodically received, the processor 550 may periodically detect global location information and global time information.
도 6은 일 실시예에 따른 측위 장치(110)의 동작 절차를 도시하는 도면이다. 6 is a diagram illustrating an operation procedure of the positioning device 110 according to an embodiment.
도 6을 참조하면, 측위 장치(110)는 610 단계에서 인공 표식(520)을 포함할 수 있다. 인공 표식(520)은 측위 장치(110)의 전역 위치 정보를 나타낼 수 있다. 예를 들면, 인공 표식(520)은 측위 장치(110)에 대한 식별 정보를 표현하기 위한 특정 패턴을 포함할 수 있다. 일 예로, 패턴은 적어도 하나의 도형의 형태, 크기, 배치 등으로 정의될 수 있다. 다른 예로, 패턴은 적어도 하나의 문자로 이루어지는 텍스트로 정의될 수 있다. 인공 표식(520)은, 예컨대 기준 마커, 비주얼 마커, 또는 사이니지 중 적어도 하나를 포함할 수 있다.Referring to FIG. 6 , the positioning device 110 may include an artificial mark 520 in
다음으로, 측위 장치(110)는 620 단계에서 자신의 전역 시간 정보 및 전역 위치 정보를 검출할 수 있다. 프로세서(550)는 측위 장치(110)의 전역 시간 정보 및 전역 위치 정보를 검출할 수 있다. 예를 들면, 프로세서(550)는 지엔에스에스 정보로부터 전역 위치 정보 및 전역 시간 정보를 검출할 수 있다. 여기서, 주기적으로 지엔에스에스 정보가 수신됨에 따라, 프로세서(550)는 주기적으로 전역 위치 정보 및 전역 시간 정보를 검출할 수 있다. Next, the positioning device 110 may detect its own global time information and global location information in
일 실시예에 따르면, 측정 장치(110)가 미리 정해진 장소에 고정되게 설치되는 경우, 정해진 장소에 대응하는 전역 위치 정보가 검출될 것이다. 이러한 경우, 측정 장치(110)의 설치 시, 정해진 장소의 전역 위치 정보가 외부의 서버에 미리 등록될 수 있다. 이 때, 측정 장치(110)의 식별 정보에 대응하여, 정해진 장소의 전역 위치 정보가 등록될 수 있다.According to an embodiment, when the measurement device 110 is fixedly installed in a predetermined location, global location information corresponding to the predetermined location will be detected. In this case, when the measuring device 110 is installed, global location information of a predetermined place may be pre-registered in an external server. At this time, corresponding to the identification information of the measurement device 110, global location information of a predetermined place may be registered.
다른 실시예에 따르면, 측정 장치(110)가 이동 가능하게 구현되는 경우, 측정 장치(110)의 현재 위치에서의 전역 위치 정보가 검출될 것이다. 이러한 경우, 프로세서(550)는 위치가 변경될 때마다, 현재 위치에서의 전역 위치 정보를 외부의 서버에 등록할 수 있다. 이 때, 측정 장치(110)의 식별 정보에 대응하여, 측정 장치(110)의 전역 위치가 업데이트될 수 있다. According to another embodiment, if the measurement device 110 is implemented to be movable, global location information of the current location of the measurement device 110 will be detected. In this case, the processor 550 may register global location information in the current location to an external server whenever the location is changed. In this case, the global location of the measurement device 110 may be updated in response to the identification information of the measurement device 110 .
도 7은 다른 실시예에 따른 측위 장치(110)의 동작 절차를 도시하는 도면이다. 7 is a diagram illustrating an operation procedure of the positioning device 110 according to another embodiment.
도 7을 참조하면, 본 실시예의 710 단계 및 720 단계는 전술된 실시예의 610 단계 및 620 단계와 유사하므로, 상세한 설명을 생략한다. 다만, 본 실시예에서, 측위 장치(110)는 740 단계에서 전역 시간 정보를 전송할 수 있다. 일 예로, 측위 장치(110)는 근거리 통신 방식에 따라, 현재 위치에서의 전역 시간 정보를 주기적으로 방사할 수 있다. 이 때, 프로세서(550)는 통신 모듈(530)을 통해, 전역 시간 정보를 방사할 수 있다. 다른 예로, 측위 장치(110)는 730 단계에서 컴퓨팅 장치(120)로부터 시간 동기화 요청을 수신하고, 이에 응답하여, 740 단계에서 전역 시간 정보를 전송할 수 있다. 여기서, 프로세서(550)는 근거리 통신 방식에 따라, 시간 동기화 요청을 수신하고, 전역 시간 정보를 방사할 수 있다. 이 때, 프로세서(550)는 통신 모듈(530)을 통해, 컴퓨팅 장치(120)로부터의 시간 동기화 요청을 수신하고, 현재 위치에서의 전역 시간 정보를 방사할 수 있다.Referring to FIG. 7 ,
도 8은 다양한 실시예들에 따른 컴퓨팅 장치(120)의 내부 구성을 도시하는 도면이다. 도 9는 도 8의 프로세서(870)의 상세 구성을 도시하는 도면이다. 8 is a diagram illustrating an internal configuration of a
도 8을 참조하면, 컴퓨팅 장치(120)는 카메라 모듈(810), 센서 모듈(820), 통신 모듈(830), 입력 모듈(840), 출력 모듈(850), 메모리(860), 또는 프로세서(870) 중 적어도 하나를 포함할 수 있다. 어떤 실시예들에서, 컴퓨팅 장치(120)의 구성 요소들 중 적어도 어느 하나가 생략될 수 있으며, 적어도 하나의 다른 구성 요소가 추가될 수 있다. 어떤 실시예들에서, 컴퓨팅 장치(120)의 구성 요소들 중 적어도 어느 두 개가 하나의 통합된 회로로 구현될 수 있다. Referring to FIG. 8 , the
카메라 모듈(810)은 컴퓨팅 장치(120)의 주변 환경을 촬영하여, 그에 대한 영상을 획득할 수 있다. 예를 들면, 영상은 동영상 및 정지 이미지를 포함할 수 있다. 일 실시예에 따르면, 카메라 모듈(810)은 적어도 하나의 렌즈, 적어도 하나의 이미지 센서, 이미지 시그널 프로세서, 또는 플래시 중 적어도 하나를 포함할 수 있다. The
센서 모듈(820)은 컴퓨팅 장치(120)의 주변 환경의 상태를 감지하여, 그에 대한 전기 신호 또는 데이터 값을 생성할 수 있다. 센서 모듈(820)은, 예컨대 라이다 센서, 레이더(radar) 센서, 적외선(infrared; IR) 센서, 또는 거리 센서 중 적어도 하나를 포함할 수 있다. 추가적으로, 센서 모듈(820)은 컴퓨팅 장치(120)의 작동 상태를 감지하여, 그에 대한 전기 신호 또는 데이터 값을 생성할 수도 있다. 이러한 경우, 센서 모듈(820)은 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, 적외선 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서 중 적어도 하나를 더 포함할 수 있다. The
통신 모듈(830)은 컴퓨팅 장치(120)에서 외부 장치와 통신을 수행할 수 있다. 예를 들면, 외부 장치는 서버(도시되지 않음) 또는 측위 장치(110) 중 적어도 하나를 포함할 수 있다. 통신 모듈(830)은 유선 통신 모듈 또는 무선 통신 모듈 중 적어도 하나를 포함할 수 있다. 유선 통신 모듈은 연결 단자(도시되지 않음)를 통해 외부 장치와 유선으로 연결되어, 외부 장치와 유선으로 통신할 수 있다. 무선 통신 모듈은 근거리 통신 모듈 또는 원거리 통신 모듈 중 적어도 어느 하나를 포함할 수 있다. 근거리 통신 모듈은 외부 장치와 근거리 통신 방식으로 통신할 수 있다. 예를 들면, 근거리 통신 방식은, 블루투스, 와이파이 다이렉트, 또는 적외선 통신 중 적어도 어느 하나를 포함할 수 있다. 원거리 통신 모듈은 외부 장치와 원거리 통신 방식으로 통신할 수 있다. 여기서, 원거리 통신 모듈은 네트워크를 통해 외부 장치와 통신할 수 있다. 예를 들면, 네트워크는 셀룰러 네트워크, 인터넷, 또는 LAN이나 WAN과 같은 컴퓨터 네트워크 중 적어도 어느 하나를 포함할 수 있다.The communication module 830 may perform communication with an external device in the
입력 모듈(840)은 컴퓨팅 장치(120)의 적어도 하나의 구성 요소에 사용될 신호를 입력할 수 있다. 예를 들면, 입력 모듈(840)은 마이크로폰(microphone), 마우스(mouse), 또는 키보드(keyboard) 중 적어도 어느 하나를 포함할 수 있다. 어떤 실시예에서, 입력 모듈(840)은 터치를 감지하도록 설정된 터치 회로(touch circuitry), 또는 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 센서 회로 중 적어도 어느 하나를 포함할 수 있다. The
출력 모듈(850)은 컴퓨팅 장치(120)로부터의 정보를 출력할 수 있다. 이 때, 출력 모듈(850)은 정보를 시각적으로 표시하기 위한 표시 모듈, 또는 정보를 청각적으로 재생하기 위한 오디오 모듈 중 적어도 하나를 포함할 수 있다. 예를 들면, 표시 모듈은 디스플레이, 홀로그램 장치, 또는 프로젝터 중 적어도 어느 하나를 포함할 수 있다. 일 예로, 표시 모듈은 입력 모듈(840)의 터치 회로 또는 센서 회로 중 적어도 어느 하나와 조립되어, 터치 스크린으로 구현될 수 있다. 예를 들면, 오디오 모듈은 스피커, 리시버, 이어폰 또는 헤드폰 중 적어도 어느 하나를 포함할 수 있다.The
메모리(860)는 컴퓨팅 장치(120)의 적어도 하나의 구성 요소에 의해 사용되는 다양한 데이터를 저장할 수 있다. 예를 들면, 메모리(860)는 휘발성 메모리 또는 비휘발성 메모리 중 적어도 어느 하나를 포함할 수 있다. 데이터는 적어도 하나의 프로그램 및 이와 관련된 입력 데이터 또는 출력 데이터를 포함할 수 있다. 프로그램은 메모리(860)에 적어도 하나의 명령을 포함하는 소프트웨어로서 저장될 수 있다.The
프로세서(870)는 메모리(860)의 프로그램을 실행하여, 컴퓨팅 장치(120)의 적어도 하나의 구성 요소를 제어할 수 있다. 이를 통해, 프로세서(870)는 데이터 처리 또는 연산을 수행할 수 있다. 이 때 프로세서(870)는 메모리(860)에 저장된 명령을 실행할 수 있다.The
다양한 실시예들에 따르면, 프로세서(870)는 측위 장치(110)를 이용하여, 자신의 전역 위치 정보 및 전역 시간 정보를 결정하는 기능을 가질 수 있다. 어떤 실시예들에서, 프로세서(870)는 도 9에 도시된 바와 같이 인공 표식 식별부(971), 상대 위치 결정부(973), 절대 위치 결정부(975), 및 위치 최적화부(977)를 포함할 수 있다. 이는, 프로세서(870)의 기능을 구분하여 설명하기 위한 것일 뿐, 프로세서(870)가 반드시 물리적으로 구분되는 것을 의미하지 않는다. 바꿔 말하면, 프로세서(870)의 구성 요소들 중 적어도 어느 두 개가 하나의 통합된 회로로 구현될 수 있다. According to various embodiments, the
인공 표식 식별부(971)는, 컴퓨팅 장치(120)가 실외 환경 또는 실내 환경을 주행하는 중에, 측위 장치(110)의 인공 표식(520)을 식별할 수 있다. 구체적으로, 인공 표식 식별부(971)는 카메라 모듈(810)을 통해, 인공 표식(520)을 촬영하여, 인공 표식(520)을 갖는 이미지를 획득하고, 이미지를 분석하여, 측위 장치(110)에 대한 식별 정보를 추출할 수 있다. 이 때, 컴퓨팅 장치(120)에서, 측위 장치(110)에 대한 시간적 페어링이 이루어질 수 있다. The artificial
그리고, 인공 표식 식별부(971)는 인공 표식(520)을 기반으로, 측위 장치(110)의 전역 시간 정보 및 전역 위치 정보를 확인할 수 있다. 이 때, 컴퓨팅 장치(120)는 측위 장치(110)에 대한 식별 정보를 이용하여, 내부에 미리 저장된 데이터베이스 또는 외부의 서버에 저장된 데이터베이스로부터, 측위 장치(110)의 전역 위치 정보를 확인할 수 있다. 또한, 컴퓨팅 장치(120)는 측위 장치(110)의 전역 위치 정보에 대응하여, 측위 장치(110)의 전역 시간 정보를 확인할 수 있다.Also, the artificial
상대 위치 결정부(973)는 인공 표식(520)을 기반으로, 측위 장치(110)와의 상대 위치 정보를 결정할 수 있다. 상대 위치 정보는 측위 장치(110)와 컴퓨팅 장치(120) 사이의 상대적인 거리, 또는 컴퓨팅 장치(120)에 대한 측위 장치(110)의 상대적인 자세 중 적어도 하나를 포함할 수 있다. 이 때, 상대 위치 결정부(973)는 카메라 모듈(810) 또는 센서 모듈(820)의 라이다 센서 중 적어도 하나를 이용하여, 상대 위치 정보를 결정할 수 있다. 일 예로, 상대 위치 결정부(973)는 카메라 모듈(810)를 이용하여, 상대 위치 정보를 결정할 수 있다. 다른 예로, 상대 위치 결정부(973)는 카메라 모듈(810) 및 라이다 센서를 이용하여, 상대 위치 정보를 결정할 수 있다.The
절대 위치 결정부(975)는 측위 장치(110)의 전역 위치 정보 및 측위 장치(110)와의 상대 위치 정보를 기반으로, 컴퓨팅 장치(120)의 전역 위치 정보를 결정할 수 있다. 이 때, 절대 위치 결정부(975)는 측위 장치(110)의 전역 위치 정보 및 상대 위치 정보를 조합하여, 자신의 전역 위치 정보를 결정할 수 있다. 그리고, 절대 위치 결정부(975)는 측위 장치(110)에 대한 시간적 페어링을 통해, 측위 장치(110)의 전역 시간 정보에 대응하여, 컴퓨팅 장치(120)의 전역 시간 정보를 결정할 수 있다. The absolute
위치 최적화부(977)는 전역 좌표계에서의 컴퓨팅 장치(120)의 전역 위치를 최적화할 수 있다. 이 때, 위치 최적화부(977)는 컴퓨팅 장치(120)의 전역 위치 정보 및 전역 시간 정보를 이용하여, 전역 좌표계에서의 지도를 생성할 수 있다. 컴퓨팅 장치(120)가 로컬 좌표계에서의 지도를 생성 가능하게 구현된 경우, 위치 최적화부(977)는 최적화를 통해 로컬 좌표계와 전역 좌표계를 조합하여, 최적화된 지도를 생성할 수 있다. 여기서, 로컬 좌표계와 전역 좌표계 사이의 차이가 큰 경우, 위치 최적화부(977)는 로컬 좌표계와 전역 좌표계를 일치시키는 초기화 단계를 진행한 다음, 최적화된 지도를 생성할 수 있다. 일 예로, 위치 최적화부(977)는 SLAM(simultaneous localization and map-building; simultaneous localization and mapping) 알고리즘을 이용하여, 지도를 생성할 수 있다. The
도 10은 일 실시예에 따른 컴퓨팅 장치(120)의 동작 절차를 도시하는 도면이다. 10 is a diagram illustrating an operating procedure of the
도 10을 참조하면, 컴퓨팅 장치(120)는 1010 단계에서 주행 중 측위 장치(110)의 인공 표식(310)을 식별할 수 있다. 구체적으로, 컴퓨팅 장치(120)가 실외 환경 또는 실내 환경을 주행하는 중에, 프로세서(870)는 카메라 모듈(810)을 통해, 인공 표식(520)을 촬영하여, 인공 표식(520)을 갖는 이미지를 획득하고, 이미지를 분석하여, 측위 장치(110)에 대한 식별 정보를 추출할 수 있다. 이 때, 컴퓨팅 장치(120)에서, 측위 장치(110)에 대한 시간적 페어링이 이루어질 수 있다. 예를 들면, 프로세서(870)는 측위 장치(110)의 전역 시간 정보에 부합하는 미리 정해진 전역 표준시를 기반으로, 이미지가 획득된 시간을 확인할 수 있다. 여기서, 전역 표준시는 협정 세계시(coordinated universal time; UTC)일 수 있다. 일 예로, 컴퓨팅 장치(120)가 미리 정해진 시간 간격을 초과하도록 정지된 상태에서, 프로세서(870)는 이미지를 획득하고, 이미지가 획득된 시간을 확인할 수 있다. Referring to FIG. 10 , the
일 실시예에 따르면, 프로세서(870)는 도 3을 참조하여 전술된 바와 같이, 인공 표식(310, 520)의 이미지로부터 식별 정보를 추출할 수 있다. 이 때, 프로세서(870)는 미리 정해진 알고리즘을 이용하여, 인공 표식(310, 520)의 특징점들을 추출할 수 있다. 구체적으로, 프로세서(870)는 인공 표식(310, 520)의 이미지를 가상 평면(320)에 매핑시킨 다음, 인공 표식(310)의 특징점들을 추출할 수 있다. 여기서, 가상 평면(320)은 컴퓨팅 장치(120)에 대해 정의되며, 인공 표식(310, 520)에 대해 미리 정해진 포맷/규격에 의해 정해진 사각형의 평면을 나타낼 수 있다. 예를 들면, 특징점들은 코너 포인트들을 포함할 수 있으며, 코너 포인트들은 가상 평면(320) 상에서의 인공 표식(310, 520)의 패턴에 포함된 도형의 꼭지점들을 나타낼 수 있다. 그리고, 프로세서(870)는 가상 평면(320) 상에서 특징점들의 좌표를 추출할 수 있다. 이를 통해, 프로세서(870)는 인공 표식(310)의 특징점들로부터 패턴을 인식할 수 있으며, 패턴에 대응하는 식별 정보를 추출할 수 있다. According to an embodiment, the
다음으로, 컴퓨팅 장치(120)는 1020 단계에서 인공 표식(520)을 기반으로, 측위 장치(110)의 전역 시간 정보 및 전역 위치 정보를 확인할 수 있다. 이 때, 프로세서(870)는 측위 장치(110)에 대한 식별 정보를 이용하여, 내부에 미리 저장된 데이터베이스 또는 외부의 서버에 저장된 데이터베이스로부터, 측위 장치(110)의 전역 위치 정보를 확인할 수 있다. 일 예로, 프로세서(870)는 미리 저장된 데이터베이스를 검색하여, 측위 장치(110)에 대한 식별 정보에 대응하여 저장된 측위 장치(110)의 전역 위치 정보를 확인할 수 있다. 다른 예로, 프로세서(870)는 통신 모듈(830)을 통해 외부의 서버에 측위 장치(110)에 대한 식별 정보를 전송하고, 이에 응답하여, 서버로부터 측위 장치(110)의 전역 위치 정보를 수신할 수 있다. 그리고, 프로세서(870)는 측위 장치(110)의 전역 위치 정보에 대응하여, 측위 장치(110)의 전역 시간 정보를 확인할 수 있다. 예를 들면, 프로세서(870)는 미리 정해진 전역 표준시를 기반으로, 이미지가 획득된 시간으로부터 측위 장치(110)의 전역 시간 정보를 확인할 수 있다. 여기서, 전역 표준시는 협정 세계시(UTC)일 수 있다.Next, the
다음으로, 컴퓨팅 장치(120)는 1030 단계에서 측위 장치(110)와의 상대 위치 정보를 결정할 수 있다. 상대 위치 정보는 측위 장치(110)와 컴퓨팅 장치(120) 사이의 상대적인 거리, 또는 컴퓨팅 장치(120)에 대한 측위 장치(110)의 상대적인 자세 중 적어도 하나를 포함할 수 있다. 이 때, 프로세서(870)는 카메라 모듈(810) 또는 센서 모듈(820) 중 적어도 하나를 통해, 상대 위치 정보를 결정할 수 있다. 일 예로, 프로세서(870)는 카메라 모듈(810)를 이용하여, 상대 위치 정보를 결정할 수 있다. 다른 예로, 프로세서(870)는 카메라 모듈(810) 및 라이다 센서를 이용하여, 상대 위치 정보를 결정할 수 있다. 이러한 경우, 프로세서(870)는 카메라 모듈(810)을 이용하여, 상대 위치 정보를 결정하면서, 라이다 센서를 이용하여 검출되는 강도(intensity) 정보를 추가로 이용할 수 있다. Next, the
일 실시예에 따르면, 프로세서(870)는 도 4를 참조하여 전술된 바와 같이, 컴퓨팅 장치(120)에 대한 인공 표식(310, 520)의 상대적인 자세를 결정할 수 있다. 구체적으로, 프로세서(870)는 도 4의 (a)에 도시된 바와 같이, 인공 표식(310, 520)의 이미지가 가상 평면(320)에 매핑되기 전의, 가상 평면(320)에 대한 인공 표식(310, 520)의 이미지의 자세를 추출할 수 있다. 이 때, 프로세서(870)는 가상 평면(320)에 대한 인공 표식(310, 520)의 이미지의 X축, Y축, 및 Z축의 각각의 배향을 추출할 수 있다. 그리고, 프로세서(870)는 도 4의 (b)에 도시된 바와 같이, 인공 표식(310, 520)의 이미지가 가상 평면(320)에 매핑되기 위한 인공 표식(310, 520)의 이미지의 자세 변화를 결정할 수 있다. 이 때, 프로세서(870)는 인공 표식(310)의 이미지의 X축, Y축, 및 Z축의 각각의 이동 거리, 각도 등을 결정할 수 있다. 이를 통해, 프로세서(870)는 인공 표식(310, 520)의 이미지가 가상 평면(320)에 매핑되기 위한 인공 표식(310, 520)의 이미지의 자세 변화로부터 인공 표식(310, 520)의 상대적인 자세를 결정할 수 있다. According to one embodiment,
다음으로, 컴퓨팅 장치(120)는 1040 단계에서 측위 장치(110)의 전역 시간 정보 및 전역 위치 정보, 및 상대 위치 정보를 기반으로, 자신의 전역 시간 정보 및 전역 위치 정보를 결정할 수 있다. 이 때, 프로세서(870)는 측위 장치(110)의 전역 위치 정보 및 상대 위치 정보를 조합하여, 컴퓨팅 장치(120)의 전역 위치 정보를 결정할 수 있다. 그리고, 프로세서(870)는 측위 장치(110)의 전역 시간 정보로 컴퓨팅 장치(120)의 전역 시간 정보를 결정할 수 있다. 일 실시예에 따르면, 프로세서(870)는 측위 장치(110)의 전역 시간 정보와 일치하도록, 컴퓨팅 장치(120)의 전역 시간 정보를 결정할 수 있다. 다른 실시예에 따르면, 프로세서(870)는 측위 장치(110)의 전역 시간 정보에 대해 보간을 적용하여, 컴퓨팅 장치(120)의 전역 시간 정보를 결정할 수 있다. 예를 들면, 프로세서(870)는 하기 [수학식 1]과 같이 정의되는 에러 모델(error model; errGPS)을 기반으로, 컴퓨팅 장치(120)의 전역 시간 정보에서의 전역 위치 정보를 결정할 수 있다. Next, the
여기서, τ는 컴퓨팅 장치(120)의 전역 시간 정보를 나타내고, 는 4×4 변환 행렬(transformation matrix)로 표현되고, 는 컴퓨팅 장치(120)의 전역 위치 정보를 나타내고, 는 컴퓨팅 장치(120)에 대한 측위 장치(110), 즉 인공 표식(520)의 상대 위치 정보를 나타내고, 는 3×1 병진 벡터(translation vector)로 표현되고, 는 측위 장치(110)에서 인공 표식(520)과 측위 모듈(510) 사이의 간격을 나타내며, 는 측위 장치(110)의 전역 위치 정보를 나타낼 수 있다. Here, τ represents global time information of the
이를 통해, 컴퓨팅 장치(120)는 전역 좌표계에서의 컴퓨팅 장치(120)의 전역 위치를 최적화할 수 있다. 이 때, 프로세서(870)는 컴퓨팅 장치(120)의 전역 위치 정보 및 전역 시간 정보를 이용하여, 전역 좌표계에서의 지도를 생성할 수 있다. 컴퓨팅 장치(120)가 로컬 좌표계에서의 지도를 생성 가능하게 구현된 경우, 프로세서(870)는 최적화를 통해 로컬 좌표계와 전역 좌표계를 조합하여, 최적화된 지도를 생성할 수 있다. 예를 들면, 프로세서(870)는 상기 [수학식 1]과 같은 에러 모델(errGPS)에 의한 비용 함수를 로컬 좌표계에서의 지도를 생성하기 위한 비용 함수에 추가하여, 하기 [수학식 2]와 같은 최적화된 비용 함수()를 도출하고, 이를 기반으로, 최적화된 지도를 생성할 수 있다. 여기서, 로컬 좌표계와 전역 좌표계 사이의 차이가 큰 경우, 프로세서(870)는 로컬 좌표계와 전역 좌표계를 일치시키는 초기화 단계를 진행한 다음, 최적화된 지도를 생성할 수 있다. 예를 들면, 프로세서(870)는 닫힌 형태의 솔루션(closed-form solution)에 의해 초기화 단계를 진행할 수 있다. Through this, the
여기서, 첫 번째 항과 두 번째 항은 로컬 좌표계에서의 지도를 생성하기 위한 비용 함수들로서, 첫 번째 항은 라이다 센서 또는 거리 센서에 의한 비용 함수를 나타내고, 두 번째 항은 카메라 모듈(810)에 의해 획득되는 이미지에 의한 비용 함수를 나타내며, 세 번째 항은 상기 [수학식 1]과 같은 에러 모델(errGPS)에 의한 비용 함수를 나타낼 수 있다. 상세하게는, 는 컴퓨팅 장치(120)의 전역 위치 정보를 나타내고, 는 라이다 센서 또는 거리 센서, 또는 카메라 모듈(810) 등에서의 측정값을 나타내고, 는 컴퓨팅 장치(120)에서 카메라 모듈(810)과 컴퓨팅 장치(120)의 기준 위치 사이의 상대적인 자세를 나타내고, 는 공분산(covariance)을 나타내며, 는 이미지에 대한 투영 모델(projection model)을 나타낼 수 있다. 어떤 실시예들에서, 로컬 좌표계에서의 지도를 생성하는데, 라이다 센서 또는 거리 센서, 및 카메라 모듈(810) 이외에 관성 측정 장치(inertial measurement unit; IMU) 등의 다른 센서가 더 이용되는 경우, 상기 [수학식 2]에 다른 센서에 의한 비용 함수가 추가될 수도 있다. Here, the first term and the second term are cost functions for generating a map in the local coordinate system. represents a cost function based on an image obtained by , and the third term may represent a cost function based on an error model (err GPS ) as in [Equation 1] above. In detail, represents the global location information of the
도 11은 다른 실시예에 따른 컴퓨팅 장치(120)의 동작 절차를 도시하는 도면이다. 11 is a diagram illustrating an operating procedure of a
도 11을 참조하면, 본 실시예의 1110 단계는 전술된 실시예의 1010 단계와 유사하므로, 상세한 설명을 생략한다. 다만, 본 실시예에서, 컴퓨팅 장치(120)는 1110 단계에서 측위 장치(110)의 인공 표식(520)을 식별한 후에, 1117 단계에서 측위 장치(110)의 전역 시간 정보를 수신할 수 있다. 이 때, 컴퓨팅 장치(120)에서 측위 장치(110)에 대한 시간적 페어링이 이루어질 수 있도록, 프로세서(870)는 측위 장치(110)로부터 측위 장치(110)의 전역 시간 정보를 수신할 수 있다. 일 예로, 측위 장치(110)가 근거리 통신 방식에 따라, 현재 위치에서의 전역 시간 정보를 주기적으로 방사함에 따라, 프로세서(870)는 통신 모듈(830)을 통해, 측위 장치(110)의 전역 시간 정보를 수신할 수 있다. 다른 예로, 1110 단계에서 측위 장치(110)의 인공 표시(520)이 식별되면, 프로세서(870)가 1113 단계에서 시간 동기화 요청을 전송할 수 있다. 여기서, 프로세서(870)는 근거리 통신 방식에 따라, 통신 모듈(830)을 통해, 시간 동기화 요청을 방사할 수 있다. 이 후, 프로세서(870)는 1117 단계에서 시간 동기화 요청에 응답하여, 측위 장치(110)의 전역 시간 정보를 수신할 수 있다. 여기서, 프로세서(870)는 근거리 통신 방식에 따라, 통신 모듈(830)을 통해, 측위 장치(110)의 전역 시간 정보를 수신할 수 있다. Referring to FIG. 11 ,
다음으로, 컴퓨팅 장치(120)는 1120 단계에서 인공 표식(520)을 기반으로, 측위 장치(110)의 전역 시간 정보 및 전역 위치 정보를 확인할 수 있다. 이 때, 프로세서(870)는 측위 장치(110)에 대한 식별 정보를 이용하여, 내부에 미리 저장된 데이터베이스 또는 외부의 서버에 저장된 데이터베이스로부터, 측위 장치(110)의 전역 위치 정보를 확인할 수 있다. 일 예로, 프로세서(870)는 미리 저장된 데이터베이스를 검색하여, 측위 장치(110)에 대한 식별 정보에 대응하여 저장된 측위 장치(110)의 전역 위치 정보를 확인할 수 있다. 다른 예로, 프로세서(870)는 통신 모듈(830)을 통해 외부의 서버에 측위 장치(110)에 대한 식별 정보를 전송하고, 이에 응답하여, 서버로부터 측위 장치(110)의 전역 위치 정보를 수신할 수 있다. 그리고, 프로세서(870)는 측위 장치(110)의 전역 위치 정보에 대응하여, 측위 장치(110)의 전역 시간 정보를 확인할 수 있다. 예를 들면, 프로세서(870)는 1117 단계에서 수신된 전역 시간 정보를 측위 장치(110)의 전역 시간 정보로 확인할 수 있다. 다음으로, 컴퓨팅 장치(120)는 1130 단계로 진행하며, 본 실시예의 1130 단계 및 1140 단계는 전술된 실시예의 1030 단계 및 1040 단계와 유사하므로, 상세한 설명을 생략한다. Next, the
다양한 실시예들에 따르면, 컴퓨팅 장치(120)는 외부의 측위 장치(110)를 이용하여 자신의 전역 위치를 추정할 수 있다. 이를 통해, 컴퓨팅 장치(120)는 자신의 전역 위치를 기반으로, 전역 좌표계에서의 지도를 생성할 수 있다. 즉, 컴퓨팅 장치(120)는 측위 모듈을 포함하지 않고도, 전역 좌표계에서의 지도를 생성할 수 있다. 이 때, 컴퓨팅 장치(120)가 로컬 좌표계에서의 지도를 생성 가능하게 구현된 경우, 컴퓨팅 장치(120)는 최적화를 통해 로컬 좌표계와 전역 좌표계를 조합하여, 최적화된 지도를 생성할 수 있다. According to various embodiments, the
다양한 실시예들에 따르면, 컴퓨팅 장치(120)의 방법은, 전역 시간 정보 및 전역 위치 정보를 검출하고, 전역 위치 정보를 나타내는 인공 표식(310, 520)을 포함하는 측위 장치(110)에 인접하여 주행하면서, 인공 표식(310, 520)을 식별하는 단계(230 단계, 1010 단계, 1110 단계), 인공 표식(310, 520)을 기반으로, 측위 장치(110)의 전역 위치 정보 및 전역 시간 정보를 확인하는 단계(250 단계, 1020 단계, 1120 단계), 인공 표식(310, 520)을 기반으로, 측위 장치(110)와 컴퓨팅 장치(120)의 상대 위치 정보를 결정하는 단계(260 단계, 1030 단계, 1130 단계), 및 상대 위치 정보 및 전역 위치 정보를 기반으로, 컴퓨팅 장치(120)의 전역 위치 정보 및 전역 시간 정보를 결정하는 단계(270 단계, 1040 단계, 1140 단계)를 포함할 수 있다. According to various embodiments, a method of
다양한 실시예들에 따르면, 측위 장치(110)는, 지엔에스에스 위성으로부터 수신되는 지엔에스에스 정보를 기반으로, 전역 시간 정보 및 전역 위치 정보를 검출하도록 구성될 수 있다. According to various embodiments, the positioning device 110 may be configured to detect global time information and global location information based on GPS information received from GPS satellites.
다양한 실시예들에 따르면, 인공 표식(310, 520)을 식별하는 단계(230 단계, 1010 단계, 1110 단계)는, 인공 표식(310, 520)을 촬영하여, 인공 표식(310, 520)을 갖는 이미지를 획득하는 단계, 및 이미지를 분석하여, 측위 장치(110)에 대한 식별 정보를 추출하는 단계를 포함할 수 있다.According to various embodiments, the step of identifying the
다양한 실시예들에 따르면, 측위 장치(110)의 전역 위치 정보 및 전역 시간 정보를 확인하는 단계(250 단계, 1020 단계, 1120 단계)는, 식별 정보를 이용하여, 측위 장치(110)의 전역 위치 정보를 확인하는 단계, 및 측위 장치(110)의 전역 위치 정보에 대응하여, 측위 장치(110)의 전역 시간 정보를 확인하는 단계를 포함할 수 있다. According to various embodiments, the
다양한 실시예들에 따르면, 측위 장치(110)의 전역 시간 정보를 확인하는 단계는, 측위 장치(110)로부터 수신되는 전역 시간 정보를 확인하는 단계(240 단계, 1117 단계), 또는 미리 정해진 전역 표준시를 기반으로, 이미지가 획득된 시간으로부터 전역 시간 정보를 확인하는 단계를 포함할 수 있다. According to various embodiments, the checking of the global time information of the positioning device 110 may include checking the global time information received from the positioning device 110 (steps 240 and 1117) or a predetermined global standard time. Based on , checking global time information from a time when an image is acquired may be included.
다양한 실시예들에 따르면, 상대 위치 정보는, 측위 장치(110)와 컴퓨팅 장치(120) 사이의 상대적인 거리, 또는 컴퓨팅 장치(120)에 대한 측위 장치(110)의 상대적인 자세 중 적어도 하나를 포함할 수 있다. According to various embodiments, the relative position information may include at least one of a relative distance between the positioning device 110 and the
다양한 실시예들에 따르면, 상대 위치 정보를 결정하는 단계(260 단계, 1030 단계, 1130 단계)는, 카메라 모듈(810) 또는 라이다 센서 중 적어도 하나를 이용하여, 상대 위치 정보를 결정하는 단계를 포함할 수 있다. According to various embodiments, the steps of determining the relative location information (
다양한 실시예들에 따르면, 컴퓨팅 장치(120)의 전역 위치 정보 및 전역 시간 정보를 결정하는 단계(270 단계, 1040 단계, 1140 단계)는, 상대 위치 정보 및 측위 장치(110)의 전역 위치 정보를 조합하여, 컴퓨팅 장치(120)의 전역 위치 정보를 결정하는 단계, 및 컴퓨팅 장치(120)의 전역 위치 정보와 관련하여, 측위 장치(110)의 전역 시간 정보로 컴퓨팅 장치(120)의 전역 시간 정보를 결정하는 단계를 포함할 수 있다. According to various embodiments, the
다양한 실시예들에 따르면, 컴퓨팅 장치(120)의 전역 위치 정보 및 전역 시간 정보는, 전역 좌표계에서의 지도 데이터를 생성하는 데 이용될 수 있다. According to various embodiments, global location information and global time information of the
다양한 실시예들에 따르면, 컴퓨팅 장치(120)는, 메모리(860), 및 메모리(860)와 연결되고, 메모리(860)에 저장된 적어도 하나의 명령을 실행하도록 구성된 프로세서(870)를 포함하고, 프로세서(870)는, 전역 시간 정보 및 전역 위치 정보를 검출하고, 전역 위치 정보를 나타내는 인공 표식(310, 520)을 포함하는 측위 장치(110)에 인접하여 주행하면서, 인공 표식(310, 520)을 식별하고, 인공 표식(310, 520)을 기반으로, 측위 장치(110)의 전역 위치 정보 및 전역 시간 정보를 확인하고, 인공 표식(310, 520)을 기반으로, 측위 장치(110)와 컴퓨팅 장치(120)의 상대 위치 정보를 결정하고, 상대 위치 정보 및 전역 위치 정보를 기반으로, 컴퓨팅 장치(120)의 전역 위치 정보 및 전역 시간 정보를 결정하도록 구성될 수 있다. According to various embodiments, the
다양한 실시예들에 따르면, 측위 장치(110)는, 위성으로부터 지엔에스에스 정보를 수신하도록 구성되는 측위 모듈(510), 및 지엔에스에스 정보로부터 전역 시간 정보 및 전역 위치 정보를 검출하도록 구성되는 프로세서(550)를 더 포함할 수 있다. According to various embodiments, the positioning device 110 includes a
다양한 실시예들에 따르면, 컴퓨팅 장치(120)는, 프로세서(870)에 연결되는 카메라 모듈(810)을 더 포함하고, 프로세서(870)는, 카메라 모듈(810)을 통해, 인공 표식(310, 520)을 촬영하여, 인공 표식(310, 520)을 갖는 이미지를 획득하고, 이미지를 분석하여, 측위 장치(110)에 대한 식별 정보를 추출하도록 구성될 수 있다. According to various embodiments, the
다양한 실시예들에 따르면, 프로세서(870)는, 식별 정보를 이용하여, 측위 장치(110)의 전역 위치 정보를 확인하고, 측위 장치(110)의 전역 위치 정보에 대응하여, 측위 장치(110)의 전역 시간 정보를 확인하도록 구성될 수 있다. According to various embodiments, the
다양한 실시예들에 따르면, 컴퓨팅 장치(120)는, 프로세서(870)와 연결되는 통신 모듈(830)을 더 포함하고, 프로세서(870)는, 통신 모듈(830)을 통해, 측위 장치(110)로부터 전역 시간 정보를 수신하거나, 또는 미리 정해진 전역 표준시를 기반으로, 이미지가 획득된 시간으로부터 전역 시간 정보를 확인하도록 구성될 수 있다. According to various embodiments, the
다양한 실시예들에 따르면, 상대 위치 정보는, 측위 장치(110)와 컴퓨팅 장치(120) 사이의 상대적인 거리, 또는 컴퓨팅 장치(120)에 대한 측위 장치(110)의 상대적인 자세 중 적어도 하나를 포함할 수 있다. According to various embodiments, the relative position information may include at least one of a relative distance between the positioning device 110 and the
다양한 실시예들에 따르면, 컴퓨팅 장치(120)는, 프로세서(870)에 연결되는 카메라 모듈(810) 또는 라이다 센서 중 적어도 하나를 더 포함하고, 프로세서(870)는, 카메라 모듈(810) 또는 라이다 센서 중 적어도 하나를 이용하여 검출되는 점 군 데이터를 기반으로, 상대 위치 정보를 결정하도록 구성될 수 있다. According to various embodiments, the
다양한 실시예들에 따르면, 프로세서(870)는, 상대 위치 정보 및 측위 장치(110)의 전역 위치 정보를 조합하여, 컴퓨팅 장치(120)의 전역 위치 정보를 결정하고, 컴퓨팅 장치(120)의 전역 위치 정보와 관련하여, 측위 장치(110)의 전역 시간 정보로 컴퓨팅 장치(120)의 전역 시간 정보를 결정하도록 구성될 수 있다. According to various embodiments, the
다양한 실시예들에 따르면, 컴퓨팅 장치(120)의 전역 위치 정보 및 전역 시간 정보는, 전역 좌표계에서의 지도 데이터를 생성하는 데 이용될 수 있다. According to various embodiments, global location information and global time information of the
상술한 방법은 컴퓨터에서 실행하기 위해 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램으로 제공될 수 있다. 매체는 컴퓨터로 실행 가능 한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 수개 하드웨어가 결합된 형태의 다양한 기록 수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD 와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 애플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다. The above method may be provided as a computer program stored in a computer readable recording medium to be executed on a computer. The medium may continuously store a computer-executable program or temporarily store it for execution or download. In addition, the medium may be various recording means or storage means in the form of a single or combined hardware, but is not limited to a medium directly connected to a certain computer system, and may be distributed on a network. Examples of the medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical recording media such as CD-ROM and DVD, magneto-optical media such as floptical disks, and ROM, RAM, flash memory, etc. configured to store program instructions. In addition, examples of other media include recording media or storage media managed by an app store that distributes applications, a site that supplies or distributes various other software, and a server.
본 개시의 방법, 동작 또는 기법들은 다양한 수단에 의해 구현될 수도 있다. 예를 들어, 이러한 기법들은 하드웨어, 펌웨어, 소프트웨어, 또는 이들의 조합으로 구현될 수도 있다. 본원의 개시와 연계하여 설명된 다양한 예시적인 논리적 블록들, 모듈들, 회로들, 및 알고리즘 단계들은 전자 하드웨어, 컴퓨터 소프트웨어, 또는 양자의 조합들로 구현될 수도 있음을 통상의 기술자들은 이해할 것이다. 하드웨어 및 소프트웨어의 이러한 상호 대체를 명확하게 설명하기 위해, 다양한 예시적인 구성요소들, 블록들, 모듈들, 회로들, 및 단계들이 그들의 기능적 관점에서 일반적으로 위에서 설명되었다. 그러한 기능이 하드웨어로서 구현되는지 또는 소프트웨어로서 구현되는 지의 여부는, 특정 애플리케이션 및 전체 시스템에 부과되는 설계 요구사항들에 따라 달라진다. 통상의 기술자들은 각각의 특정 애플 리케이션을 위해 다양한 방식들로 설명된 기능을 구현할 수도 있으나, 그러한 구현들은 본 개시의 범위로부터 벗어나게 하는 것으로 해석되어서는 안된다. The methods, acts or techniques of this disclosure may be implemented by various means. For example, these techniques may be implemented in hardware, firmware, software, or combinations thereof. Those skilled in the art will appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the disclosure herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchange of hardware and software, various illustrative components, blocks, modules, 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 application and the design requirements imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementations should not be interpreted as causing a departure from the scope of the present disclosure.
하드웨어 구현에서, 기법들을 수행하는 데 이용되는 프로세싱 유닛들은, 하나 이상의 ASIC들, DSP들, 디지털 신호 프로세싱 디바이스들(digital signal processing devices; DSPD들), 프로그램가능 논리 디바이스들(programmable logic devices; PLD들), 필드 프로그램가능 게이트 어레이들(field programmable gate arrays; FPGA들), 프로세서들, 제어기들, 마이크로제어기들, 마이크로프로세서들, 전자 디바이스들, 본 개시에 설명된 기능들을 수행하도록 설계된 다른 전자 유닛들, 컴퓨터, 또는 이들의 조합 내에서 구현될 수도 있다. In a hardware implementation, the processing units used to perform the techniques may include one or more ASICs, DSPs, digital signal processing devices (DSPDs), programmable logic devices (PLDs) ), field programmable gate arrays (FPGAs), processors, controllers, microcontrollers, microprocessors, electronic devices, and other electronic units designed to perform the functions described in this disclosure. , a computer, or a combination thereof.
따라서, 본 개시와 연계하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 및 회로들은 범용 프로세서, DSP, ASIC, FPGA나 다른 프로그램 가능 논리 디바이스, 이산 게이트나 트랜지스터 로직, 이산 하드웨어 컴포넌트들, 또는 본원에 설명된 기능들을 수행하도록 설계된 것들의 임의의 조합으로 구현되거나 수행될 수도 있다. 범용 프로세서는 마이크로프로세서일 수도 있지만, 대안으로, 프로세서는 임의의 종래의 프로세서, 제어기, 마이크로제어기, 또는 상태 머신일 수도 있다. 프로세서는 또한, 컴퓨팅 디바이스들의 조합, 예를 들면, DSP와 마이크로프로세서, 복수의 마이크로프로세서들, DSP 코어와 연계한 하나 이상의 마이크로프로세서들, 또는 임의의 다른 구성의 조합으로서 구현될 수도 있다. Accordingly, the various illustrative logical blocks, modules, and circuits described in connection with this disclosure may be incorporated into a general-purpose processor, DSP, ASIC, FPGA or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or may be implemented or performed in any combination of those designed to perform the functions described in A general purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, eg, a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other configuration.
펌웨어 및/또는 소프트웨어 구현에 있어서, 기법들은 랜덤 액세스 메모리(random access memory; RAM), 판독 전용 메모리(read-only memory; ROM), 비휘발성 RAM(non-volatile random access memory; NVRAM), PROM(programmable read-only memory), EPROM(erasable programmable read-only memory), EEPROM(electrically erasable PROM), 플래시 메모리, 컴팩트 디스크(compact disc; CD), 자기 또는 광학 데이터 스토리지 디바이스 등과 같은 컴퓨터 판독가능 매체 상에 저장된 명령들로서 구현될 수도 있다. 명령들은 하나 이상의 프로세서들에 의해 실행 가능할 수도 있고, 프로세서(들)로 하여금 본 개시에 설명된 기능의 특정 양태들을 수행하게 할 수도 있다. In firmware and/or software implementation, the techniques include random access memory (RAM), read-only memory (ROM), non-volatile random access memory (NVRAM), PROM ( on a computer readable medium, such as programmable read-only memory (EPROM), erasable programmable read-only memory (EPROM), electrically erasable PROM (EEPROM), flash memory, compact disc (CD), magnetic or optical data storage device, or the like. It can also be implemented as stored instructions. Instructions may be executable by one or more processors and may cause the processor(s) to perform certain aspects of the functionality described in this disclosure.
이상 설명된 실시예들이 하나 이상의 독립형 컴퓨터 시스템에서 현재 개시된 주제의 양태들을 활용하는 것으로 기술되었으나, 본 개시는 이에 한정되 지 않고, 네트워크나 분산 컴퓨팅 환경과 같은 임의의 컴퓨팅 환경과 연계하여 구현될 수도 있다. 또 나아가, 본 개시에서 주제의 양상들은 복수의 프로세싱 칩들이나 장치들에서 구현될 수도 있고, 스토리지는 복수의 장치들에 걸쳐 유사하게 영향을 받게 될 수도 있다. 이러한 장치들은 PC들, 네트워크 서버들, 및 휴대용 장치들을 포함할 수도 있다. Although the embodiments described above have been described as utilizing aspects of the presently disclosed subject matter in one or more stand-alone computer systems, the disclosure is not limited thereto and may be implemented in conjunction with any computing environment, such as a network or distributed computing environment. there is. Further, aspects of the subject matter in this disclosure may be implemented in a plurality of processing chips or devices, and storage may be similarly affected across multiple devices. These devices may include PCs, network servers, and portable devices.
본 개시가 일부 실시예들과 관련하여 설명되었지만, 본 개시의 발명이 속하는 기술분야의 통상의 기술자가 이해할 수 있는 본 개시의 범위를 벗어나지 않는 범위에서 다양한 변형 및 변경이 이루어질 수 있다. 또한, 그러한 변형 및 변경은 본 명세서에 첨부된 특허청구의 범위 내에 속하는 것으로 생각되어야 한다.Although the present disclosure has been described with respect to some embodiments, various modifications and changes may be made without departing from the scope of the present disclosure that can be understood by those skilled in the art. Moreover, such modifications and variations are intended to fall within the scope of the claims appended hereto.
Claims (20)
전역 시간 정보 및 전역 위치 정보를 검출하고, 상기 전역 위치 정보를 나타내는 인공 표식을 포함하는 측위 장치에 인접하여 주행하면서, 상기 인공 표식을 식별하는 단계;
상기 인공 표식을 기반으로, 상기 측위 장치의 상기 전역 위치 정보 및 상기 전역 시간 정보를 확인하는 단계;
상기 인공 표식을 기반으로, 상기 측위 장치와 상기 컴퓨팅 장치의 상대 위치 정보를 결정하는 단계; 및
상기 상대 위치 정보 및 상기 전역 위치 정보를 기반으로, 상기 컴퓨팅 장치의 전역 위치 정보 및 전역 시간 정보를 결정하는 단계
를 포함하는,
방법.
In the method of computing device,
detecting global time information and global location information and identifying the artificial landmark while driving adjacent to a positioning device including an artificial landmark representing the global position information;
checking the global location information and global time information of the positioning device based on the artificial landmark;
determining relative position information between the positioning device and the computing device based on the artificial landmark; and
determining global location information and global time information of the computing device based on the relative location information and the global location information;
including,
method.
상기 측위 장치는,
위성으로부터 수신되는 지엔에스에스 정보를 기반으로, 상기 전역 시간 정보 및 전역 위치 정보를 검출하도록 구성되는
방법.
According to claim 1,
The positioning device,
Based on GNS information received from a satellite, configured to detect the global time information and global location information
method.
상기 인공 표식을 식별하는 단계는,
상기 인공 표식을 촬영하여, 상기 인공 표식을 갖는 이미지를 획득하는 단계; 및
상기 이미지를 분석하여, 상기 측위 장치에 대한 식별 정보를 추출하는 단계
를 포함하는,
방법.
According to claim 1,
Identifying the artificial marker comprises:
acquiring an image having the artificial landmark by photographing the artificial landmark; and
Analyzing the image to extract identification information about the positioning device
including,
method.
상기 측위 장치의 상기 전역 위치 정보 및 상기 전역 시간 정보를 확인하는 단계는,
상기 식별 정보를 이용하여, 상기 측위 장치의 상기 전역 위치 정보를 확인하는 단계; 및
상기 측위 장치의 상기 전역 위치 정보에 대응하여, 상기 측위 장치의 상기 전역 시간 정보를 확인하는 단계
를 포함하는,
방법.
According to claim 3,
Checking the global location information and the global time information of the positioning device includes:
checking the global location information of the positioning device using the identification information; and
checking the global time information of the positioning device in correspondence with the global location information of the positioning device;
including,
method.
상기 측위 장치의 상기 전역 시간 정보를 확인하는 단계는,
상기 측위 장치로부터 수신되는 상기 전역 시간 정보를 확인하는 단계; 또는
미리 정해진 전역 표준시를 기반으로, 상기 이미지가 획득된 시간으로부터 상기 전역 시간 정보를 확인하는 단계
를 포함하는,
방법.
According to claim 4,
The step of checking the global time information of the positioning device,
checking the global time information received from the positioning device; or
Checking global time information from a time when the image is acquired based on a predetermined global standard time
including,
method.
상기 상대 위치 정보는,
상기 측위 장치와 상기 컴퓨팅 장치 사이의 상대적인 거리, 또는
상기 컴퓨팅 장치에 대한 상기 측위 장치의 상대적인 자세
중 적어도 하나를 포함하는,
방법.
According to claim 1,
The relative location information is
the relative distance between the positioning device and the computing device; or
Relative attitude of the positioning device to the computing device
including at least one of
method.
상기 상대 위치 정보를 결정하는 단계는,
카메라 모듈 또는 라이다(LiDAR) 센서 중 적어도 하나를 이용하여, 상기 상대 위치 정보를 결정하는 단계
를 포함하는,
방법.
According to claim 1,
The step of determining the relative position information,
Determining the relative position information using at least one of a camera module and a LiDAR sensor
including,
method.
상기 컴퓨팅 장치의 상기 전역 위치 정보 및 상기 전역 시간 정보를 결정하는 단계는,
상기 상대 위치 정보 및 상기 측위 장치의 상기 전역 위치 정보를 조합하여, 상기 컴퓨팅 장치의 상기 전역 위치 정보를 결정하는 단계; 및
상기 컴퓨팅 장치의 상기 전역 위치 정보와 관련하여, 상기 측위 장치의 상기 전역 시간 정보로 상기 컴퓨팅 장치의 상기 전역 시간 정보를 결정하는 단계
를 포함하는,
방법.
According to claim 1,
Determining the global location information and the global time information of the computing device comprises:
combining the relative position information and the global position information of the positioning device to determine the global position information of the computing device; and
determining the global time information of the computing device with the global time information of the positioning device, in relation to the global location information of the computing device;
including,
method.
상기 컴퓨팅 장치의 상기 전역 위치 정보 및 상기 전역 시간 정보는,
전역 좌표계에서의 지도 데이터를 생성하는 데 이용되는,
방법.
According to claim 1,
The global location information and the global time information of the computing device,
used to generate map data in the global coordinate system,
method.
A computer program stored in a non-transitory computer-readable recording medium to execute the method of any one of claims 1 to 9 in the computing device.
A non-transitory computer-readable recording medium in which a program for executing the method of any one of claims 1 to 9 in the computing device is recorded.
메모리; 및
상기 메모리와 연결되고, 상기 메모리에 저장된 적어도 하나의 명령을 실행하도록 구성된 프로세서를 포함하고,
상기 프로세서는,
전역 시간 정보 및 전역 위치 정보를 검출하고, 상기 전역 위치 정보를 나타내는 인공 표식을 포함하는 측위 장치에 인접하여 주행하면서, 상기 인공 표식을 식별하고,
상기 인공 표식을 기반으로, 상기 측위 장치의 상기 전역 위치 정보 및 상기 전역 시간 정보를 확인하고,
상기 인공 표식을 기반으로, 상기 측위 장치와 상기 컴퓨팅 장치의 상대 위치 정보를 결정하고,
상기 상대 위치 정보 및 상기 전역 위치 정보를 기반으로, 상기 컴퓨팅 장치의 전역 위치 정보 및 전역 시간 정보를 결정하도록
구성되는,
컴퓨팅 장치.
In a computing device,
Memory; and
a processor coupled with the memory and configured to execute at least one instruction stored in the memory;
the processor,
detecting global time information and global positioning information and identifying the artificial landmark while driving adjacent to a positioning device comprising an artificial landmark representing the global positioning information;
Based on the artificial landmark, determine the global location information and global time information of the positioning device;
Based on the artificial landmark, determine relative position information between the positioning device and the computing device;
Determine global location information and global time information of the computing device based on the relative location information and the global location information.
made up,
computing device.
상기 측위 장치는,
위성으로부터 지엔에스에스 정보를 수신하도록 구성되는 측위 모듈; 및
상기 지엔에스에스 정보로부터 상기 전역 시간 정보 및 전역 위치 정보를 검출하도록 구성되는 프로세서
를 더 포함하는,
컴퓨팅 장치.
According to claim 12,
The positioning device,
a positioning module configured to receive GPS information from a satellite; and
A processor configured to detect the global time information and global location information from the GNS information
Including more,
computing device.
상기 프로세서에 연결되는 카메라 모듈
을 더 포함하고,
상기 프로세서는,
상기 카메라 모듈을 통해, 상기 인공 표식을 촬영하여, 상기 인공 표식을 갖는 이미지를 획득하고,
상기 이미지를 분석하여, 상기 측위 장치에 대한 식별 정보를 추출하도록
구성되는,
컴퓨팅 장치.
According to claim 12,
Camera module connected to the processor
Including more,
the processor,
Obtaining an image having the artificial landmark by photographing the artificial landmark through the camera module;
Analyze the image to extract identification information about the positioning device.
made up,
computing device.
상기 프로세서는,
상기 식별 정보를 이용하여, 상기 측위 장치의 상기 전역 위치 정보를 확인하고,
상기 측위 장치의 상기 전역 위치 정보에 대응하여, 상기 측위 장치의 상기 전역 시간 정보를 확인하도록
구성되는,
컴퓨팅 장치.
15. The method of claim 14,
the processor,
Checking the global location information of the positioning device using the identification information;
Corresponding to the global location information of the positioning device, check the global time information of the positioning device.
made up,
computing device.
상기 프로세서와 연결되는 통신 모듈
을 더 포함하고,
상기 프로세서는,
상기 통신 모듈을 통해, 상기 측위 장치로부터 상기 전역 시간 정보를 수신하거나, 또는
미리 정해진 전역 표준시를 기반으로, 상기 이미지가 획득된 시간으로부터 상기 전역 시간 정보를 확인하도록
구성되는,
컴퓨팅 장치.
According to claim 15,
Communication module connected to the processor
Including more,
the processor,
Receiving the global time information from the positioning device through the communication module; or
Based on a predetermined global standard time, to check the global time information from the time when the image was acquired.
made up,
computing device.
상기 상대 위치 정보는,
상기 측위 장치와 상기 컴퓨팅 장치 사이의 상대적인 거리, 또는
상기 컴퓨팅 장치에 대한 상기 측위 장치의 상대적인 자세
중 적어도 하나를 포함하는,
컴퓨팅 장치.
According to claim 12,
The relative location information is
the relative distance between the positioning device and the computing device; or
Relative attitude of the positioning device to the computing device
including at least one of
computing device.
상기 프로세서에 연결되는 카메라 모듈 또는 라이다 센서 중 적어도 하나
를 더 포함하고,
상기 프로세서는,
상기 카메라 모듈 또는 상기 라이다 센서 중 적어도 하나를 이용하여, 상기 상대 위치 정보를 결정하도록
구성되는,
컴퓨팅 장치.
According to claim 12,
At least one of a camera module or lidar sensor connected to the processor
Including more,
the processor,
To determine the relative position information using at least one of the camera module and the LIDAR sensor
made up,
computing device.
상기 프로세서는,
상기 상대 위치 정보 및 상기 측위 장치의 상기 전역 위치 정보를 조합하여, 상기 컴퓨팅 장치의 상기 전역 위치 정보를 결정하고,
상기 컴퓨팅 장치의 상기 전역 위치 정보와 관련하여, 상기 측위 장치의 상기 전역 시간 정보로 상기 컴퓨팅 장치의 상기 전역 시간 정보를 결정하도록
구성되는,
컴퓨팅 장치.
According to claim 12,
the processor,
combine the relative position information and the global position information of the positioning device to determine the global position information of the computing device;
With respect to the global location information of the computing device, determine the global time information of the computing device with the global time information of the positioning device.
made up,
computing device.
상기 컴퓨팅 장치의 상기 전역 위치 정보 및 상기 전역 시간 정보는,
전역 좌표계에서의 지도 데이터를 생성하는 데 이용되는,
컴퓨팅 장치. According to claim 12,
The global location information and the global time information of the computing device,
used to generate map data in the global coordinate system,
computing device.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210125119A KR20230041461A (en) | 2021-09-17 | 2021-09-17 | Computing device and method for estimating global location using external positioning device |
PCT/KR2022/012968 WO2023043092A1 (en) | 2021-09-17 | 2022-08-30 | Computing device for estimating global position by using external positioning device, and method therefor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210125119A KR20230041461A (en) | 2021-09-17 | 2021-09-17 | Computing device and method for estimating global location using external positioning device |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230041461A true KR20230041461A (en) | 2023-03-24 |
Family
ID=85603144
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210125119A KR20230041461A (en) | 2021-09-17 | 2021-09-17 | Computing device and method for estimating global location using external positioning device |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR20230041461A (en) |
WO (1) | WO2023043092A1 (en) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6708328B2 (en) * | 2016-07-05 | 2020-06-10 | 国立研究開発法人宇宙航空研究開発機構 | Satellite positioning system and satellite positioning method |
JP7061933B2 (en) * | 2018-06-08 | 2022-05-02 | 清水建設株式会社 | Mutual position acquisition system |
JP6501437B1 (en) * | 2018-07-10 | 2019-04-17 | 国立研究開発法人宇宙航空研究開発機構 | Satellite positioning system and satellite positioning method |
EP3598178A1 (en) * | 2018-07-20 | 2020-01-22 | Trimble Nantes S.A.S. | Portable positioning devices and methods for obtaining a geospatial position |
US11852751B2 (en) * | 2020-03-02 | 2023-12-26 | Beijing Baidu Netcom Science And Technology Co., Ltd. | Method, apparatus, computing device and computer-readable storage medium for positioning |
-
2021
- 2021-09-17 KR KR1020210125119A patent/KR20230041461A/en not_active Application Discontinuation
-
2022
- 2022-08-30 WO PCT/KR2022/012968 patent/WO2023043092A1/en unknown
Also Published As
Publication number | Publication date |
---|---|
WO2023043092A1 (en) | 2023-03-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11127203B2 (en) | Leveraging crowdsourced data for localization and mapping within an environment | |
CN110869700B (en) | System and method for determining vehicle position | |
JP6255085B2 (en) | Locating system and locating method | |
CN111108342B (en) | Visual range method and pair alignment for high definition map creation | |
US10949712B2 (en) | Information processing method and information processing device | |
CN112189218A (en) | Site-based augmented reality method and device | |
US11365974B2 (en) | Navigation system | |
KR101880185B1 (en) | Electronic apparatus for estimating pose of moving object and method thereof | |
KR102006291B1 (en) | Method for estimating pose of moving object of electronic apparatus | |
JP2015055534A (en) | Information processing apparatus, control program thereof, and control method thereof | |
CN110392908A (en) | For generating the electronic equipment and its operating method of map datum | |
CN104677350A (en) | Method and system for automatically generating location signatures for positioning using inertial sensors | |
JP7183085B2 (en) | Mobile behavior registration device, mobile behavior registration system, mobile behavior registration method, mobile behavior registration program, and mobile behavior determination device | |
US20210192781A1 (en) | Position estimation apparatus, tracker, position estimation method, and program | |
KR20190115982A (en) | Electronic apparatus and operating method for generating a map data | |
CN111026107A (en) | Method and system for determining the position of a movable object | |
US11674807B2 (en) | Systems and methods for GPS-based and sensor-based relocalization | |
KR102652232B1 (en) | Method for correcting a sensor and direction information obtained via the sensor based on another direction information obtained via the satellite positioning circuit and electronic device thereof | |
WO2017199369A1 (en) | Physical object recognition device, physical object recognition method, and program | |
JP2021047024A (en) | Estimation device, estimation method, and program | |
KR20230041461A (en) | Computing device and method for estimating global location using external positioning device | |
KR20200020200A (en) | Indoor 3D location estimating system and method using multiple sensors | |
US20210123746A1 (en) | Electronic device for detecting location and method thereof | |
US20230215092A1 (en) | Method and system for providing user interface for map target creation | |
KR102513036B1 (en) | Method and apparatus for determining plane for mapping object on three-dimensional space |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal |