KR102579579B1 - A method and system for calibrating indoor positioning using mobile devices located in a proximity zone - Google Patents

A method and system for calibrating indoor positioning using mobile devices located in a proximity zone Download PDF

Info

Publication number
KR102579579B1
KR102579579B1 KR1020230041182A KR20230041182A KR102579579B1 KR 102579579 B1 KR102579579 B1 KR 102579579B1 KR 1020230041182 A KR1020230041182 A KR 1020230041182A KR 20230041182 A KR20230041182 A KR 20230041182A KR 102579579 B1 KR102579579 B1 KR 102579579B1
Authority
KR
South Korea
Prior art keywords
location
electronic device
data
user device
positioning
Prior art date
Application number
KR1020230041182A
Other languages
Korean (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 주식회사 프리그로우
Application granted granted Critical
Publication of KR102579579B1 publication Critical patent/KR102579579B1/en

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • G01C21/206Instruments for performing navigational calculations specially adapted for indoor navigation
    • 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/14Navigation; 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 recording the course traversed by the object
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/10Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
    • G01C21/12Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
    • G01C21/16Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
    • G01C21/165Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3807Creation or updating of map data characterised by the type of data
    • G01C21/383Indoor data
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3833Creation or updating of map data characterised by the source of data
    • G01C21/3844Data obtained from position sensors only, e.g. from inertial navigation
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C25/00Manufacturing, calibrating, cleaning, or repairing instruments or devices referred to in the other groups of this subclass
    • 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
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/02Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
    • G01S5/0205Details
    • G01S5/021Calibration, monitoring or correction
    • 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
    • G01S2205/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S2205/01Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations specially adapted for specific applications
    • G01S2205/02Indoor

Abstract

본 개시의 일 실시예에 따르면, 실내 공간에 위치하는 적어도 하나의 사용자 디바이스의 위치를 추정하기 위한 전자 장치로서, 메모리 및 상기 메모리에 전자적으로 연결되는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 목적지 위치가 동일한 제1 사용자 디바이스 및 제2 사용자 디바이스를 식별하고, 제1 위치로 식별된 제1 사용자 디바이스의 위치가 제1 시점에 제1 앵커 위치에 대응되는 제1 보정 위치로 결정하고, 제2 위치로 식별된 제2 사용자 디바이스의 위치가 상기 제1 시점에 대응되는 제2 시점에 상기 제1 앵커 위치에 대응되는 제2 보정 위치로 결정하고, 상기 제1 사용자 디바이스의 위치가 제3 시점에 제2 앵커 위치에 대응되는 제3 보정 위치로 결정되는 경우, 상기 제2 사용자 디바이스의 위치를 상기 제3 시점에 대응되는 제4 시점에 상기 제3 보정 위치로 결정하도록 설정되고, 상기 제1 위치 및 상기 제1 보정 위치 사이의 제1 거리가 상기 제2 위치 및 상기 제2 보정 위치 사이의 제2 거리 보다 작은 것을 특징으로 하는 전자 장치가 제공될 수 있다. According to an embodiment of the present disclosure, an electronic device for estimating the location of at least one user device located in an indoor space, comprising a memory and at least one processor electronically connected to the memory, the at least one The processor identifies a first user device and a second user device that have the same destination location, and determines the location of the first user device identified as the first location to be a first correction location that corresponds to the first anchor location at the first time point. And, the location of the second user device identified as the second location is determined as the second correction position corresponding to the first anchor position at the second time point corresponding to the first time point, and the location of the first user device is determined to be the second correction position. When the third correction position corresponding to the second anchor position is determined at a third time point, the location of the second user device is set to be determined as the third correction position at a fourth time point corresponding to the third time point, An electronic device may be provided, wherein a first distance between the first position and the first correction position is smaller than a second distance between the second position and the second correction position.

Description

근접 영역에 위치하는 모바일 디바이스를 이용한 실내 위치 보정 방법 및 시스템{A METHOD AND SYSTEM FOR CALIBRATING INDOOR POSITIONING USING MOBILE DEVICES LOCATED IN A PROXIMITY ZONE}Indoor position correction method and system using mobile devices located in the proximity area {A METHOD AND SYSTEM FOR CALIBRATING INDOOR POSITIONING USING MOBILE DEVICES LOCATED IN A PROXIMITY ZONE}

본 개시는, 실내 측위 기능을 제공하는 전자 장치에 대한 것이다. 보다 자세하게는, 실내 지도 데이터 및 측위 데이터를 이용하여 실내 측위 기능 및 실내 지도 서비스를 제공하는 전자 장치에 관한 것이다.This disclosure relates to an electronic device that provides an indoor positioning function. More specifically, it relates to an electronic device that provides an indoor positioning function and an indoor map service using indoor map data and positioning data.

핑거프린팅(Fingerprinting) 기반 실내 측위 기술은 실내에서 모바일 기기나 IoT 기기 등의 위치를 정확하게 파악하기 위해 사용되고 있다. 구체적으로, 실내 위치를 측정하기 위해, 실내에 설치된 와이파이 액세스 포인트(AP)나 블루투스 비콘 등의 기기들이 발신하는 신호를 수집함으로써 지도 데이터베이스를 만든 뒤, 위치를 파악하려는 모바일 기기나 IoT 기기 등의 기기로부터 수신된 신호를 데이터베이스와 비교하여 기기의 위치를 파악할 수 있다. Fingerprinting-based indoor positioning technology is used to accurately determine the location of mobile devices and IoT devices indoors. Specifically, to measure indoor location, a map database is created by collecting signals emitted by devices such as Wi-Fi access points (APs) or Bluetooth beacons installed indoors, and then devices such as mobile devices or IoT devices that want to determine the location are used. The location of the device can be determined by comparing the signal received from the database.

상술한 실내 측위 기술은 위치 파악에 높은 정확도를 보이기 때문에 실내에서 정확한 위치 파악이 필요한 스마트홈, 로봇, 증강현실, 산업용 자동화 등의 분야에서 활용되고 있다. Since the indoor positioning technology described above shows high accuracy in determining location, it is used in fields such as smart home, robots, augmented reality, and industrial automation that require accurate location information indoors.

다만, 핑거프린팅 기반 실내 측위 기술은 환경 변화에 민감하기 때문에, 실내 환경에 변화가 발생하는 경우(예: 실내 구조물의 위치 변화, 입점 업체의 변경 등), 측위 정확도가 매우 떨어지는 문제가 있다. However, because fingerprint-based indoor positioning technology is sensitive to environmental changes, there is a problem in that positioning accuracy is very low when changes occur in the indoor environment (e.g., change in location of indoor structure, change in store location, etc.).

또한, 핑거프린팅 기반 실내 측위 기술은 지도 데이터베이스를 구축하는 데 필요한 기 비용과 노력이 크다는 문제가 있다. 와이파이 AP나 블루투스 비콘의 위치와 신호 세기를 수집하여 지도 데이터베이스를 만들기 위해서는 실내 공간을 다니며 직접 데이터를 수집해야되기 때문에, 데이터베이스를 구축하는 데에 비용과 노력이 발생할 수밖에 없다. In addition, fingerprint-based indoor positioning technology has the problem of the high cost and effort required to build a map database. In order to create a map database by collecting the location and signal strength of Wi-Fi APs or Bluetooth beacons, it is necessary to travel indoors and collect data directly, so it is inevitable that cost and effort will be incurred in building the database.

본 개시의 일 과제는, 실내 환경의 변화를 반영하여 실내 지도 및 측위 데이터를 자동으로 업데이트하는 방법을 제공하는 것이다. One object of the present disclosure is to provide a method for automatically updating indoor maps and positioning data by reflecting changes in the indoor environment.

본 개시의 다른 일 과제는, 사용자의 이용 환경을 고려하여 지도 어플리케이션을 제어하는 방법을 제공하는 것이다.Another task of the present disclosure is to provide a method of controlling a map application in consideration of the user's usage environment.

본 개시의 또 다른 일 과제는, 실내 공간에 위치하는 사용자 장치들의 실내 위치 정확도를 향상시키는 것이다. Another task of the present disclosure is to improve indoor location accuracy of user devices located in indoor spaces.

한편, 본 개시에서 해결하고자 하는 과제가 상술한 과제로 제한되는 것은 아니며, 언급되지 아니한 과제들은 본 명세서 및 첨부된 도면으로부터 본 개시에 포함된 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.Meanwhile, the problem to be solved in this disclosure is not limited to the above-mentioned problems, and problems not mentioned are clear to those skilled in the art from this specification and the attached drawings. It will be understandable.

본 개시의 일 실시예에 따르면, 복수의 사용자 디바이스들에 지도 서비스를 제공하기 위한 전자 장치로서, 메모리 및 상기 메모리에 전자적으로 연결되는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 적어도 하나의 관심 지점을 포함하는 제1 장소 내에 위치하는 적어도 하나의 사용자 디바이스로부터 제1 데이터 셋을 수신하고, 상기 제1 데이터 셋, 상기 제1 장소에 대응되는 제1 실내 지도 데이터(indoor map data) - 이때, 상기 제1 실내 지도 데이터는 관심 지점에 대응되는 영역을 나타내는 풋프린트(footprint)를 포함함 - 및 상기 제1 실내 지도 데이터에 대응되는 제1 측위 데이터- 이때, 상기 제1 측위 데이터는 상기 제1 실내 지도 데이터에 대응되는 복수의 측위점들을 포함하는 제1 측위점 셋을 포함함 - 중 적어도 하나를 기초로 상기 적어도 하나의 사용자 디바이스의 위치를 식별하고, 식별된 상기 적어도 하나의 사용자 디바이스의 위치를 반영하는 제2 데이터 셋을 상기 메모리에 저장하고, 상기 제2 데이터 셋 및 미리 저장된 제1 이동 가능 경로 데이터 - 이때, 상기 제1 이동 가능 경로 데이터는 상기 제1 측위 데이터에 포함되는 복수의 측위점들 중 적어도 일부를 기초로 설정되거나 상기 적어도 하나의 관심 지점의 풋프린트 및 상기 제1 장소에 포함되는 적어도 하나의 고정물(fixture)의 위치를 고려하여 설정됨 - 를 기초로, 조정 대상 구역을 식별하도록 설정되는 전자 장치가 제공될 수 있다. According to an embodiment of the present disclosure, an electronic device for providing a map service to a plurality of user devices includes a memory and at least one processor electronically connected to the memory, wherein the at least one processor includes at least Receiving a first data set from at least one user device located in a first place including one point of interest, the first data set, first indoor map data corresponding to the first place - At this time, the first indoor map data includes a footprint indicating an area corresponding to the point of interest - and first positioning data corresponding to the first indoor map data - At this time, the first positioning data is Identifying the location of the at least one user device based on at least one of the first location point set including a plurality of location points corresponding to the first indoor map data, and identifying the at least one user identified A second data set reflecting the location of the device is stored in the memory, and the second data set and first movable path data are stored in advance - at this time, the first movable path data is included in the first positioning data. Set based on at least some of a plurality of positioning points or set in consideration of the footprint of the at least one point of interest and the location of at least one fixture included in the first location - Adjustment based on An electronic device configured to identify the target area may be provided.

또한, 본 개시의 일 실시예에 따르면, 복수의 사용자 디바이스들에 지도 서비스를 제공하기 위한 전자 장치로서, 메모리 및 상기 메모리에 전자적으로 연결되는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 적어도 하나의 관심 지점을 포함하는 제1 장소 내에 위치하는 적어도 하나의 사용자 디바이스로부터 제1 데이터 셋을 수신하고, 상기 제1 데이터 셋을 기초로 상기 제1 장소에 대응되는 제1 실내 지도 데이터(indoor map data)에 대응되는 제1 측위 데이터- 이때, 상기 제1 측위 데이터는 상기 제1 실내 지도 데이터에 대응되는 복수의 측위점들을 포함하는 제1 측위점 셋을 포함함 -의 적어도 하나의 속성을 조정하여 제2 측위점 셋을 포함하는 제2 측위 데이터를 획득하고, 상기 제2 측위 데이터를 기초로 상기 제1 실내 지도 데이터에 포함되는 제1 대상 구역을 식별하고, 상기 제1 실내 지도 데이터를 기초로, 상기 제1 대상 구역에 연관된 적어도 하나의 파라미터를 조정하여 제2 실내 지도 데이터를 획득하도록 설정되는 전자 장치가 제공될 수 있다. Additionally, according to an embodiment of the present disclosure, an electronic device for providing a map service to a plurality of user devices includes a memory and at least one processor electronically connected to the memory, wherein the at least one processor , receiving a first data set from at least one user device located in a first place including at least one point of interest, and first indoor map data corresponding to the first place based on the first data set ( At least one attribute of first positioning data corresponding to (indoor map data) - where the first positioning data includes a first positioning point set including a plurality of positioning points corresponding to the first indoor map data. Adjust to obtain second positioning data including a second positioning point set, identify a first target area included in the first indoor map data based on the second positioning data, and identify the first target area included in the first indoor map data. Based on , an electronic device configured to obtain second indoor map data by adjusting at least one parameter related to the first target area may be provided.

또한, 본 개시의 일 실시예에 따르면, 복수의 사용자 디바이스들에 지도 서비스를 제공하기 위한 전자 장치로서, 메모리 및 상기 메모리에 전자적으로 연결되는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 적어도 하나의 관심 지점을 포함하는 제1 장소 내에 위치하는 적어도 하나의 사용자 디바이스에 상기 제1 장소에 대응되는 제1 실내 지도를 제공하고, 상기 적어도 하나의 사용자 디바이스로부터 제1 데이터 셋- 상기 제1 데이터 셋은 상기 사용자 디바이스에 포함되는 제1 센서에 의해 수집된 제1 센서 데이터 및 제2 센서에 의해 수집된 제2 센서 데이터를 포함함 - 을 수신하고, 상기 제1 센서 데이터를 기초로 상기 적어도 하나의 사용자 디바이스의 층간 이동을 식별하고, 상기 층간 이동의 식별 동작에 대응하여, 상기 제2 센서 데이터를 기초로 미리 저장된 복수의 층간 이동 수단들 중 층간 이동에 연관되는 층간 이동 수단을 나타내는 층간 이동 수단 정보를 획득하고, 상기 층간 이동 수단 정보를 반영한 제2 실내 지도를 상기 제1 장소 내에 위치하는 복수의 사용자 디바이스들에 제공하도록 설정되는 전자 장치가 제공될 수 있다. Additionally, according to an embodiment of the present disclosure, an electronic device for providing a map service to a plurality of user devices includes a memory and at least one processor electronically connected to the memory, wherein the at least one processor , providing a first indoor map corresponding to the first place to at least one user device located in a first place including at least one point of interest, and providing a first data set from the at least one user device - the first 1 data set includes first sensor data collected by a first sensor included in the user device and second sensor data collected by a second sensor, and based on the first sensor data, the An inter-floor device that identifies inter-floor movement of at least one user device and, in response to the identification operation of the inter-floor movement, indicates an inter-floor movement means associated with inter-floor movement among a plurality of inter-floor movement means pre-stored based on the second sensor data. An electronic device may be provided that is configured to obtain information on means of transportation and provide a second indoor map reflecting the information on means of transportation between floors to a plurality of user devices located in the first location.

또한, 본 개시의 일 실시예에 따르면, 지도 어플리케이션을 제어하는 전자 장치에 있어서, 적어도 하나의 센서, 메모리 및 상기 메모리에 전자적으로 연결되는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 제1 동작 모드에 따라 어플리케이션을 구동하여 실내 진입 여부를 식별하고, 실내 진입 식별 동작에 대응하여, 상기 전자 장치의 이동 패턴이 제1 이동 패턴인 경우, 제2 동작 모드에 따라 어플리케이션을 제어하고, 실내 진입 식별 동작에 대응하여, 상기 전자 장치의 이동 패턴이 제1 이동 패턴인 경우, 제3 동작 모드에 따라 어플리케이션을 제어하되, 상기 제2 동작 모드에 따른 동작은, 상기 적어도 하나의 프로세서에 의해, 상기 적어도 하나의 센서를 이용하여 획득된 AP(access point) 데이터 및 제1 가속도 데이터를 기초로 상기 전자 장치의 위치에 대응되는 제1 위치 데이터를 획득하는 동작을 포함하고, 상기 제3 동작 모드에 따른 동작은, 상기 적어도 하나의 프로세서에 의해, 상기 적어도 하나의 센서를 이용하여 획득된 제2 가속도 데이터를 기초로 상기 전자 장치의 위치에 대응되는 제2 위치 데이터를 획득하는 동작 및 상기 제2 위치 데이터를 기초로 상기 전자 장치의 이동 패턴이 상기 제2 이동 패턴에서 상기 제1 이동 패턴으로 변경되는 제1 시간 구간을 식별하여, 상기 제1 시간 구간에 대응되는 제3 위치 데이터를 상기 메모리에 저장하는 동작을 포함하는 전자 장치가 제공될 수 있다. Additionally, according to an embodiment of the present disclosure, an electronic device for controlling a map application includes at least one sensor, a memory, and at least one processor electronically connected to the memory, wherein the at least one processor includes, Running an application according to a first operation mode to identify whether indoor entry has occurred, and in response to the indoor entry identification operation, if the movement pattern of the electronic device is the first movement pattern, controlling the application according to a second operation mode, In response to an indoor entry identification operation, when the movement pattern of the electronic device is a first movement pattern, the application is controlled according to a third operation mode, and the operation according to the second operation mode is performed by the at least one processor. , an operation of acquiring first location data corresponding to the location of the electronic device based on access point (AP) data and first acceleration data obtained using the at least one sensor, and the third operation mode. The operation according to this includes acquiring, by the at least one processor, second location data corresponding to the location of the electronic device based on second acceleration data acquired using the at least one sensor, and the second location data corresponding to the location of the electronic device. Based on the location data, a first time period in which the movement pattern of the electronic device changes from the second movement pattern to the first movement pattern is identified, and third location data corresponding to the first time period is stored in the memory. An electronic device including a storage operation may be provided.

또한, 본 개시의 일 실시예에 따르면, 실내 공간에 위치하는 적어도 하나의 사용자 디바이스의 위치를 추정하기 위한 전자 장치로서, 메모리 및 상기 메모리에 전자적으로 연결되는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 목적지 위치가 동일한 제1 사용자 디바이스 및 제2 사용자 디바이스를 식별하고, 제1 위치로 식별된 제1 사용자 디바이스의 위치가 제1 시점에 제1 앵커 위치에 대응되는 제1 보정 위치로 결정하고, 제2 위치로 식별된 제2 사용자 디바이스의 위치가 상기 제1 시점에 대응되는 제2 시점에 상기 제1 앵커 위치에 대응되는 제2 보정 위치로 결정하고, 상기 제1 사용자 디바이스의 위치가 제3 시점에 제2 앵커 위치에 대응되는 제3 보정 위치로 결정되는 경우, 상기 제2 사용자 디바이스의 위치를 상기 제3 시점에 대응되는 제4 시점에 상기 제3 보정 위치로 결정하도록 설정되고, 상기 제1 위치 및 상기 제1 보정 위치 사이의 제1 거리가 상기 제2 위치 및 상기 제2 보정 위치 사이의 제2 거리 보다 작은 것을 특징으로 하는 전자 장치가 제공될 수 있다.Additionally, according to an embodiment of the present disclosure, an electronic device for estimating the location of at least one user device located in an indoor space includes a memory and at least one processor electronically connected to the memory, and the at least one One processor identifies a first user device and a second user device that have the same destination location, and wherein the location of the first user device identified as the first location is configured to generate a first correction location that corresponds to the first anchor location at the first time point. and determine the location of the second user device identified as the second location to be a second correction position corresponding to the first anchor position at a second time point corresponding to the first time point, and If the location is determined to be a third correction position corresponding to the second anchor position at a third time point, the location of the second user device is set to be determined as the third correction position at a fourth time point corresponding to the third time point. An electronic device may be provided, wherein a first distance between the first position and the first correction position is smaller than a second distance between the second position and the second correction position.

다양한 실시예들에 따른, 과제의 해결 수단이 상술한 해결 수단들로 제한되는 것은 아니며, 언급되지 아니한 해결 수단들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The means for solving the problem according to various embodiments are not limited to the above-mentioned solution means, and the solution methods not mentioned may be understood by those skilled in the art from this specification and the attached drawings. You will be able to understand it clearly.

다양한 실시예들에 따르면, 본 개시의 전자 장치를 이용하여, 실내 지도 및 측위 데이터를 자동으로 업데이트하여, 실내 측위를 위한 데이터베이스를 효율적으로 구축할 수 있다. According to various embodiments, a database for indoor positioning can be efficiently built by automatically updating indoor maps and positioning data using the electronic device of the present disclosure.

또한, 다양한 실시예들에 따르면, 본 개시의 전자 장치를 이용하여, 사용자의 이용 환경을 고려하여 지도 어플리케이션을 제어하여, 이용 환경 별로 최적화된 기능을 사용자에게 제공할 수 있다.Additionally, according to various embodiments, using the electronic device of the present disclosure, a map application can be controlled in consideration of the user's usage environment, and functions optimized for each usage environment can be provided to the user.

또한, 다양한 실시예들에 따르면, 본 개시의 전자 장치를 이용하여, 실내 공간에 위치하는 사용자 장치들의 실내 위치 정확도를 향상할 수 있다. Additionally, according to various embodiments, the indoor location accuracy of user devices located in an indoor space can be improved using the electronic device of the present disclosure.

본 개시에 포함된 실시예들에 따른 효과들이 상술한 효과들로 제한되는 것은 아니며, 언급되지 아니한 효과들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The effects according to the embodiments included in the present disclosure are not limited to the above-mentioned effects, and effects not mentioned are clearly apparent to those skilled in the art from the present specification and the attached drawings. It will be understandable.

도 1은, 다양한 실시예들에 따른, 실내 지도 정보를 제공하고, 실내 위치를 추정하고, 실내 경로를 제공하기 위한 예시적인 시스템(1)을 설명하기 위한 도면이다.
도 2는, 다양한 실시예들에 따른, 도 1의 예시적인 시스템(1)에 포함되는 전자 장치의 구성을 도시한 도면이다.
도 3은, 다양한 실시예들에 따른, 실내 지도 데이터를 기반으로 지도 서비스를 제공하는 전자 장치의 상세 구성을 도시한 도면이다.
도 4는, 다양한 실시예들에 따른, 전자 장치가 포함하는 실내 지도 데이터를 설명하기 위한 도면이다.
도 5는, 다양한 실시예들에 따른, 전자 장치가 포함하는 제1 장소에 대응되는 실내 측위 데이터 셋을 설명하기 위한 도면이다.
도 6은, 다양한 실시예들에 따른, 전자 장치가 측위 데이터 셋을 구축하는 방법을 나타내는 도면이다.
도 7은, 다양한 실시예들에 따른, 전자 장치가 실내 측위 데이터 셋을 이용하여 사용자 디바이스의 위치를 측정하기 위한 방법을 도시한 흐름도이다.
도 8은, 다양한 실시예들에 따른, 전자 장치에 의해 수행되는 다양한 종류의 측위 알고리즘들에 대해 설명하기 위한 도면이다.
도 9는, 다양한 실시예들에 따른, 전자 장치가 실내 지도 데이터를 업데이트하기 위한 일 예시를 도시한 도면이다.
도 10은, 다양한 실시예들에 따른, 전자 장치가 실내 지도 데이터를 업데이트 하기 위한 일 예시를 도시한 흐름도이다.
도 11은, 다양한 실시예들에 따른, 전자 장치가 조정 대상 구역을 식별하는 구체적인 방법을 도시한 도면이다.
도 12는, 다양한 실시예들에 따른, 전자 장치가 조정 대상 구역 식별 동작에 대응하여 수행할 수 있는 동작을 설명하기 위한 도면이다.
도 13은, 다양한 실시예들에 따른, 전자 장치가 실내 측위 데이터 셋을 업데이트 하기 위한 다른 일 예시를 도시한 흐름도이다.
도 14는, 다양한 실시예들에 따른, 전자 장치가 측위 데이터를 업데이트하기 위한 일 예시를 도시한 도면이다.
도 15는, 다양한 실시예들에 따른, 전자 장치가 측위 데이터를 업데이트하기 위한 다른 일 예시를 도시한 도면이다.
도 16은, 다양한 실시예들에 따른, 전자 장치가 측위 데이터를 업데이트하기 위한 또 다른 일 예시를 도시한 도면이다.
도 17은, 다양한 실시예들에 따른, 전자 장치가 실내 지도 데이터를 업데이트하는 일 예시를 도시한 도면이다.
도 18은, 다양한 실시예들에 따른, 전자 장치가 실내 측위 데이터 셋을 업데이트하기 위한 또 다른 일 예시를 도시한 도면이다.
도 19는, 다양한 실시예에 따른, 전자 장치가 실내 지도를 업데이트하는 또 다른 일 예시를 도시한 도면이다.
도 20은, 다양한 실시예에 따른, 전자 장치가 실내 지도를 업데이트하는 또 다른 일 예시를 도시한 흐름도이다.
도 21은, 다양한 실시예들에 따른, 전자 장치가 층간 이동 수단 정보를 획득하는 방법을 도시한 도면이다.
도 22는, 다양한 실시예들에 따른, 전자 장치가 층간 이동 수단 정보를 반영하여 제2 실내 지도를 제공하는 방법을 도시한 도면이다.
도 23은, 다양한 실시예들에 따른, 전자 장치가 층간 이동 수단을 반영하여 실내 지도를 업데이트하는 다른 일 예시를 도시한 흐름도이다.
도 24는, 다양한 실시예들에 따른, 다양한 층간 이동 수단을 이용하는 상황에 획득되는 기압 데이터를 나타낸 도면이다.
도 25는, 다양한 실시예에 따른, 전자 장치가 실내 진입 여부에 따라 어플리케이션을 제어하는 방법을 도시한 도면이다.
도 26은, 다양한 실시예에 따른, 전자 장치가 실외에서 실내로 진입하는 다양한 상황들을 설명하기 위한 도면이다.
도 27은, 다양한 실시예들에 따른, 전자 장치가 이동 패턴을 기초로 어플리케이션의 실행을 제어하는 방법을 도시한 도면이다.
도 28은, 다양한 실시예들에 따른, 전자 장치가 동작 모드를 전환하는 동작을 설명하기 위한 도면이다.
도 29는, 다양한 실시예들에 따른, 전자 장치가 층 정보를 식별하기 위한 방법을 설명하기 위한 도면이다.
도 30은, 다양한 실시예들에 따른, 전자 장치 및 서버가 층 정보를 획득하기 위한 구체적인 방법을 설명하기 위한 도면이다.
도 31은, 다양한 실시예들에 따른, 전자 장치가 복수의 사용자 디바이스들의 측위 결과를 이용하여 위치를 보정하는 방법의 일 예시를 도시한 도면이다.
도 32는, 다양한 실시예들에 따른, 전자 장치가 사용자 디바이스의 위치 정보를 보정하기 위한 방법의 일 예시를 도시한 도면이다.
도 33은, 다양한 실시예들에 따른, 전자 장치가 사용자 디바이스의 경로를 기초로 위치를 보정하는 방법의 일 예시를 도시한 도면이다.
도 34는, 다양한 실시예들에 따른, 전자 장치가 사용자 디바이스의 경로를 기초로 위치를 보정하는 방법의 일 예시를 도시한 흐름도이다.
도 35는, 다양한 실시예들에 따른, 동행하는 것으로 판단되는 복수의 사용자 디바이스들의 스캔 주기 차이에 따른 위치 보정 방법 설명하기 위한 도면이다.
1 is a diagram illustrating an example system 1 for providing indoor map information, estimating an indoor location, and providing an indoor route, according to various embodiments.
FIG. 2 is a diagram illustrating the configuration of an electronic device included in the example system 1 of FIG. 1 according to various embodiments.
FIG. 3 is a diagram illustrating a detailed configuration of an electronic device that provides a map service based on indoor map data, according to various embodiments.
FIG. 4 is a diagram for explaining indoor map data included in an electronic device, according to various embodiments.
FIG. 5 is a diagram illustrating an indoor positioning data set corresponding to a first location included in an electronic device, according to various embodiments.
FIG. 6 is a diagram illustrating a method by which an electronic device builds a positioning data set, according to various embodiments.
FIG. 7 is a flowchart illustrating a method for an electronic device to measure the location of a user device using an indoor positioning data set, according to various embodiments.
FIG. 8 is a diagram for explaining various types of positioning algorithms performed by an electronic device according to various embodiments.
FIG. 9 is a diagram illustrating an example of an electronic device updating indoor map data, according to various embodiments.
FIG. 10 is a flowchart illustrating an example of an electronic device updating indoor map data, according to various embodiments.
FIG. 11 is a diagram illustrating a specific method for an electronic device to identify a zone to be adjusted, according to various embodiments.
FIG. 12 is a diagram illustrating operations that an electronic device can perform in response to an operation to identify an area to be adjusted, according to various embodiments.
FIG. 13 is a flowchart illustrating another example of an electronic device updating an indoor positioning data set, according to various embodiments.
FIG. 14 is a diagram illustrating an example of an electronic device updating positioning data, according to various embodiments.
FIG. 15 is a diagram illustrating another example of an electronic device updating positioning data, according to various embodiments.
FIG. 16 is a diagram illustrating another example of an electronic device updating positioning data, according to various embodiments.
FIG. 17 is a diagram illustrating an example of an electronic device updating indoor map data, according to various embodiments.
FIG. 18 is a diagram illustrating another example of an electronic device updating an indoor positioning data set, according to various embodiments.
FIG. 19 is a diagram illustrating another example of an electronic device updating an indoor map, according to various embodiments.
FIG. 20 is a flowchart illustrating another example of an electronic device updating an indoor map, according to various embodiments.
FIG. 21 is a diagram illustrating a method by which an electronic device obtains inter-floor movement means information, according to various embodiments.
FIG. 22 is a diagram illustrating a method in which an electronic device provides a second indoor map by reflecting information on means of transportation between floors, according to various embodiments.
FIG. 23 is a flowchart illustrating another example in which an electronic device updates an indoor map by reflecting a means of moving between floors, according to various embodiments.
FIG. 24 is a diagram illustrating air pressure data obtained in situations where various means of moving between floors are used, according to various embodiments.
FIG. 25 is a diagram illustrating a method of controlling an application depending on whether an electronic device enters a room, according to various embodiments.
FIG. 26 is a diagram for explaining various situations in which an electronic device enters an indoor environment from outdoors, according to various embodiments.
FIG. 27 is a diagram illustrating a method by which an electronic device controls the execution of an application based on a movement pattern, according to various embodiments.
FIG. 28 is a diagram for explaining an operation of an electronic device switching an operation mode, according to various embodiments.
FIG. 29 is a diagram illustrating a method for an electronic device to identify floor information, according to various embodiments.
FIG. 30 is a diagram illustrating a specific method for an electronic device and a server to obtain floor information, according to various embodiments.
FIG. 31 is a diagram illustrating an example of a method by which an electronic device corrects its location using positioning results of a plurality of user devices, according to various embodiments.
FIG. 32 is a diagram illustrating an example of a method for an electronic device to correct location information of a user device, according to various embodiments.
FIG. 33 is a diagram illustrating an example of a method by which an electronic device corrects a location based on a path of a user device, according to various embodiments.
FIG. 34 is a flowchart illustrating an example of a method by which an electronic device corrects a location based on a path of a user device, according to various embodiments.
FIG. 35 is a diagram illustrating a method for correcting positions according to differences in scan cycles of a plurality of user devices that are determined to be traveling together, according to various embodiments.

이하, 본 개시의 실시예를 첨부의 도면을 참조하여 상세하게 설명한다. 실시예를 설명함에 있어서 본 개시가 속하는 기술 분야에 익히 알려져 있고 본 개시와 직접적으로 관련이 없는 기술 내용에 대해서는 설명을 생략한다. 이는 불필요한 설명을 생략함으로써 본 개시의 요지를 흐리지 않고 더욱 명확히 전달하기 위함이다.Hereinafter, embodiments of the present disclosure will be described in detail with reference to the attached drawings. In describing the embodiments, description of technical content that is well known in the technical field to which this disclosure belongs and that is not directly related to this disclosure will be omitted. This is to convey the gist of the present disclosure more clearly without obscuring it by omitting unnecessary explanation.

본 명세서에 기재된 실시예는 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 본 발명의 사상을 명확히 설명하기 위한 것이므로, 본 발명이 본 명세서에 기재된 실시예에 한정되는 것은 아니며, 본 발명의 범위는 본 발명의 사상을 벗어나지 아니하는 수정예 또는 변형예를 포함하는 것으로 해석되어야 한다.The embodiments described in this specification are intended to clearly explain the idea of the present invention to those skilled in the art to which the present invention pertains, and the present invention is not limited to the embodiments described in this specification, and the present invention is not limited to the embodiments described in this specification. The scope should be construed to include modifications or variations that do not depart from the spirit of the present invention.

본 명세서에서 사용되는 용어는 본 발명에서의 기능을 고려하여 가능한 현재 널리 사용되고 있는 일반적인 용어를 선택하였으나 이는 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자의 의도, 판례 또는 새로운 기술의 출현 등에 따라 달라질 수 있다. 다만, 이와 달리 특정한 용어를 임의의 의미로 정의하여 사용하는 경우에는 그 용어의 의미에 관하여 별도로 기재할 것이다. 따라서 본 명세서에서 사용되는 용어는 단순한 용어의 명칭이 아닌 그 용어가 가진 실질적인 의미와 본 명세서의 전반에 걸친 내용을 토대로 해석되어야 한다.The terms used in this specification are general terms that are currently widely used as much as possible in consideration of their function in the present invention, but this may vary depending on the intention of those skilled in the art, precedents, or the emergence of new technology in the technical field to which the present invention belongs. You can. However, if a specific term is defined and used with an arbitrary meaning, the meaning of the term will be described separately. Therefore, the terms used in this specification should be interpreted based on the actual meaning of the term and the overall content of this specification, not just the name of the term.

본 명세서에 첨부된 도면은 본 발명을 용이하게 설명하기 위한 것으로 도면에 도시된 형상은 본 발명의 이해를 돕기 위하여 필요에 따라 과장되어 표시된 것일 수 있으므로 본 발명이 도면에 의해 한정되는 것은 아니다.The drawings attached to this specification are intended to easily explain the present invention, and the shapes shown in the drawings may be exaggerated as necessary to aid understanding of the present invention, so the present invention is not limited by the drawings.

본 명세서에서, "A 또는 B", "A 및 B 중 적어도 하나", "A 또는 B 중 적어도 하나", "A, B 또는 C", "A, B 및 C 중 적어도 하나", 및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다.As used herein, “A or B”, “at least one of A and B”, “at least one of A or B”, “A, B or C”, “at least one of A, B and C”, and “A Each of phrases such as “at least one of , B, or C” may include any one of the items listed together in the corresponding phrase, or any possible combination thereof.

본 명세서에서 본 발명에 관련된 공지의 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에 이에 관한 자세한 설명은 필요에 따라 생략하기로 한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.In this specification, if it is determined that a detailed description of a known configuration or function related to the present invention may obscure the gist of the present invention, the detailed description thereof will be omitted as necessary. In addition, numbers (eg, first, second, etc.) used in the description of this specification are merely identifiers to distinguish one component from another component.

또한, 이하의 설명에서 사용되는 구성요소에 대한 접미사 "부분" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. In addition, the suffixes "part" and "part" for components used in the following description are given or used interchangeably only considering the ease of writing the specification, and do not have distinct meanings or roles in themselves.

즉, 본 개시의 실시예들은 본 개시가 완전하도록 하고, 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 본 개시의 범주를 알려주기 위해 제공되는 것이며, 본 개시의 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.In other words, the embodiments of the present disclosure are provided to ensure that the present disclosure is complete and to inform those skilled in the art of the present disclosure of the scope of the present disclosure, and that the invention of the present disclosure is within the scope of the claims. It is only defined by Like reference numerals refer to like elements throughout the specification.

“제1” 및/또는 “제2” 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 개시의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.Terms such as “first” and/or “second” may be used to describe various components, but the components should not be limited by the terms. The above terms are used only for the purpose of distinguishing one component from another component, for example, without departing from the scope of rights according to the concept of the present disclosure, a first component may be named a second component, and similarly The second component may also be referred to as the first component.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다. When a component is said to be "connected" or "connected" to another component, it is understood that it may be directly connected to or connected to the other component, but that other components may exist in between. It should be. On the other hand, when it is mentioned that a component is “directly connected” or “directly connected” to another component, it should be understood that there are no other components in between. Other expressions that describe the relationship between components, such as "between" and "immediately between" or "neighboring" and "directly adjacent to" should be interpreted similarly.

도면에서 처리 흐름도 도면들의 각 블록과 흐름도 도면들의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 흐름도 블록(들)에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 흐름도 블록(들)에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능할 수 있다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 흐름도 블록(들)에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능할 수 있다.In the drawings, each block of the processing flow diagrams and combinations of the flow diagram diagrams may be performed by computer program instructions. These computer program instructions can be mounted on a processor of a general-purpose computer, special-purpose computer, or other programmable data processing equipment, so that the instructions performed through the processor of the computer or other programmable data processing equipment are described in the flow chart block(s). It creates the means to perform functions. These computer program instructions may also be stored in computer-usable or computer-readable memory that can be directed to a computer or other programmable data processing equipment to implement a function in a particular manner, so that the computer-usable or computer-readable memory The instructions stored in may also be capable of producing manufactured items containing instruction means to perform the functions described in the flow diagram block(s). Computer program instructions can also be mounted on a computer or other programmable data processing equipment, so that a series of operational steps are performed on the computer or other programmable data processing equipment to create a process that is executed by the computer, thereby generating a process that is executed by the computer or other programmable data processing equipment. Instructions that perform processing equipment may also provide steps for executing the functions described in the flow diagram block(s).

또한, 기기로 읽을 수 있는 저장 매체는, 비일시적(non-transitory) 저장 매체의 형태로 제공될 수 있다. 여기서, ‘비일시적’은 저장 매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장 매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.Additionally, device-readable storage media may be provided in the form of non-transitory storage media. Here, 'non-transitory' only means that the storage medium is a tangible device and does not contain signals (e.g. electromagnetic waves), and this term refers to cases where data is semi-permanently stored in the storage medium. There is no distinction between temporary storage cases.

또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실행 예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다. 예를 들어, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.Additionally, each block may represent a module, segment, or portion of code that includes one or more executable instructions for executing specified logical function(s). Additionally, it should be noted that in some alternative execution examples it is possible for the functions mentioned in the blocks to occur out of order. For example, it is possible for two blocks shown in succession to be performed substantially at the same time, or it is possible for the blocks to be performed in reverse order depending on the corresponding function. For example, the operations performed by a module, program, or other component may be executed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations may be executed in a different order, omitted, or One or more other operations may be added.

본 개시에서 사용되는 '~부(unit)'라는 용어는 소프트웨어 또는 FPGA(Field Programmable Gate Array) 또는 ASIC(Application Specific Integrated Circuit)과 같은 하드웨어 구성요소를 의미한다. '~부'는 특정한 역할들을 수행하지만 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일부 실시예에 따르면 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다. 또한 본 개시의 다양한 실시예에 따르면, '~부'는 하나 이상의 프로세서를 포함할 수 있다. The term 'unit' used in this disclosure refers to software or hardware components such as FPGA (Field Programmable Gate Array) or ASIC (Application Specific Integrated Circuit). '~part' performs specific roles, but is not limited to software or hardware. The '~ part' may be configured to reside in an addressable storage medium and may be configured to reproduce on one or more processors. Therefore, according to some embodiments, '~ part' refers to components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, and processes. Includes scissors, subroutines, segments of program code, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and variables. The functions provided within the components and 'parts' may be combined into a smaller number of components and 'parts' or may be further separated into additional components and 'parts'. Additionally, components and 'parts' may be implemented to regenerate one or more CPUs within a device or a secure multimedia card. Additionally, according to various embodiments of the present disclosure, '˜unit' may include one or more processors.

이하 첨부된 도면을 참조하여 본 개시의 동작 원리를 상세히 설명한다. 하기에서 본 개시를 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 개시의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 개시에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.Hereinafter, the operating principle of the present disclosure will be described in detail with reference to the attached drawings. In the following description of the present disclosure, if a detailed description of a related known function or configuration is determined to unnecessarily obscure the gist of the present disclosure, the detailed description will be omitted. In addition, the terms described below are terms defined in consideration of the functions in the present disclosure, and may vary depending on the intention or custom of the user or operator. Therefore, the definition should be made based on the contents throughout this specification.

다양한 실시예들에 따르면, 실내 공간에 위치하는 적어도 하나의 사용자 디바이스의 위치를 추정하기 위한 전자 장치로서, 메모리; 및 상기 메모리에 전자적으로 연결되는 적어도 하나의 프로세서;를 포함하고, 상기 적어도 하나의 프로세서는, 목적지 위치가 동일한 제1 사용자 디바이스 및 제2 사용자 디바이스를 식별하고, 제1 위치로 식별된 제1 사용자 디바이스의 위치가 제1 시점에 제1 앵커 위치에 대응되는 제1 보정 위치로 결정하고, 제2 위치로 식별된 제2 사용자 디바이스의 위치가 상기 제1 시점에 대응되는 제2 시점에 상기 제1 앵커 위치에 대응되는 제2 보정 위치로 결정하고, 상기 제1 사용자 디바이스의 위치가 제3 시점에 제2 앵커 위치에 대응되는 제3 보정 위치로 결정되는 경우, 상기 제2 사용자 디바이스의 위치를 상기 제3 시점에 대응되는 제4 시점에 상기 제3 보정 위치로 결정하도록 설정되고, 상기 제1 위치 및 상기 제1 보정 위치 사이의 제1 거리가 상기 제2 위치 및 상기 제2 보정 위치 사이의 제2 거리 보다 작은 것을 특징으로 하는 전자 장치가 제공될 수 있다. According to various embodiments, an electronic device for estimating the location of at least one user device located in an indoor space, comprising: a memory; and at least one processor electronically connected to the memory, wherein the at least one processor identifies a first user device and a second user device that have the same destination location, and identifies the first user device identified by the first location. The location of the device is determined to be a first correction position corresponding to the first anchor position at a first point in time, and the location of the second user device identified as the second location is determined to be the first correction position at a second point in time corresponding to the first point in time. If the second correction position is determined to be the anchor position, and the location of the first user device is determined to be the third correction position corresponding to the second anchor location at the third time point, the location of the second user device is determined as the second correction position. is set to determine the third correction position at a fourth time point corresponding to the third time point, and the first distance between the first position and the first correction position is the second distance between the second position and the second correction position. An electronic device may be provided featuring a distance of less than 2.

상기 적어도 하나의 프로세서는 상기 제1 사용자 디바이스에 제1 경로를 제공하고 상기 제2 사용자 디바이스에 제2 경로를 제공하도록 더 설정되고, 상기 제1 경로의 목적지 위치 및 상기 제2 경로의 목적지 위치는 동일할 수 있다. The at least one processor is further configured to provide a first route to the first user device and a second route to the second user device, wherein the destination location of the first route and the destination location of the second route are: may be the same.

상기 제1 보정 위치 및 상기 제2 보정 위치 사이의 거리는 미리 정해진 임계치 이하일 수 있다. The distance between the first correction position and the second correction position may be less than or equal to a predetermined threshold.

상기 제1 앵커 위치 및 상기 제2 앵커 위치는 상기 메모리에 미리 저장된 앵커 위치 정보에 포함되고, 상기 적어도 하나의 프로세서는 상기 실내 공간에 포함된 복수의 지점들 중 위치 정확도를 기준으로 식별된 적어도 일부의 지점들을 기초로 상기 앵커 위치 정보를 획득하도록 설정될 수 있다. The first anchor location and the second anchor location are included in anchor location information pre-stored in the memory, and the at least one processor selects at least some of the plurality of points included in the indoor space based on location accuracy. It can be set to obtain the anchor location information based on the points.

상기 적어도 하나의 프로세서는 상기 실내 공간 상의 복수의 지점들에 대응되는 복수의 측위점들을 기초로 상기 적어도 하나의 사용자 디바이스의 위치를 식별하도록 더 설정되고, 상기 제1 위치는 제1 측위점의 위치를 기초로 결정되고, 상기 제2 위치는 제2 측위점의 위치를 기초로 결정될 수 있다. The at least one processor is further configured to identify the location of the at least one user device based on a plurality of location points corresponding to a plurality of points in the indoor space, and the first location is the location of the first location point. and the second location may be determined based on the location of the second positioning point.

상기 적어도 하나의 프로세서는 상기 제1 거리를 기초로 상기 제1 위치에 대응되는 제1 위치 정확도를 산출하고, 상기 제2 거리를 기초로 상기 제2 위치에 대응되는 제2 위치 정확도를 산출하도록 더 설정되고, 상기 제1 위치 정확도는 상기 제2 위치 정확도 보다 클 수 있다. The at least one processor is further configured to calculate a first location accuracy corresponding to the first location based on the first distance and calculate a second location accuracy corresponding to the second location based on the second distance. is set, and the first location accuracy may be greater than the second location accuracy.

상기 적어도 하나의 프로세서는 상기 제1 사용자 디바이스의 위치를 제1 연산 모드에 따라 추정하되, 상기 제2 사용자 디바이스의 위치는 상기 제1 연산 모드보다 연산량이 적게 설정된 제2 연산 모드에 따라 추정할 수 있다. The at least one processor may estimate the location of the first user device according to a first operation mode, but may estimate the location of the second user device according to a second operation mode in which the amount of operation is set to be smaller than that of the first operation mode. there is.

상기 제1 연산 모드에 따라, 상기 제1 사용자 디바이스로부터 수신된 AP 데이터 및 가속도 데이터를 기초로 상기 제1 사용자 디바이스의 위치를 추정하도록 설정되고, 상기 제2 연산 모드에 따라, 상기 제2 사용자 디바이스로부터 수신된 AP 데이터 또는 가속도 데이터 중 하나를 기초로 상기 제2 사용자 디바이스의 위치를 추정하도록 더 설정될 수 있다.According to the first calculation mode, the location of the first user device is set to be estimated based on AP data and acceleration data received from the first user device, and according to the second calculation mode, the second user device It may be further configured to estimate the location of the second user device based on one of AP data or acceleration data received from.

상기 적어도 하나의 프로세서는, 상기 제2 연산 모드에 따라, 상기 제2 사용자 디바이스로부터 수신된 상기 가속도 데이터를 기초로 상기 제2 사용자 디바이스의 위치를 추정하도록 설정되되, 상기 제1 사용자 디바이스로부터 수신한 AP 데이터를 기초로 추정된 위치를 기초로 상기 제2 사용자 디바이스의 위치를 보정하도록 더 설정될 수 있다.The at least one processor is set to estimate the location of the second user device based on the acceleration data received from the second user device according to the second operation mode, wherein the at least one processor is configured to estimate the location of the second user device based on the acceleration data received from the first user device. It may be further configured to correct the location of the second user device based on the location estimated based on AP data.

상기 적어도 하나의 프로세서는 미리 설정된 조건이 달성되는 경우, 상기 제2 연산 모드를 상기 제1 연산 모드로 전환하도록 더 설정될 수 있다.The at least one processor may be further configured to switch the second operation mode to the first operation mode when a preset condition is achieved.

상기 제1 시점 및 상기 제3 시점 사이의 시간 구간은 상기 제1 사용자 디바이스의 AP 신호 스캔 주기의 N(N=자연수)배 일 수 있다.The time interval between the first time point and the third time point may be N (N = natural number) times the AP signal scan period of the first user device.

다양한 실시예들에 따르면, 실내 공간에 위치하는 적어도 하나의 사용자 디바이스의 위치를 추정하기 위한 전자 장치의 동작 방법으로, 상기 전자 장치에 포함되는 적어도 하나의 프로세서에 의해, 목적지 위치가 동일한 제1 사용자 디바이스 및 제2 사용자 디바이스를 식별하는 단계; 제1 위치로 식별된 제1 사용자 디바이스의 위치가 제1 시점에 제1 앵커 위치에 대응되는 제1 보정 위치로 결정하는 단계; 제2 위치로 식별된 제2 사용자 디바이스의 위치가 상기 제1 시점에 대응되는 제2 시점에 상기 제1 앵커 위치에 대응되는 제2 보정 위치로 결정하는 단계; 및 상기 제1 사용자 디바이스의 위치가 제3 시점에 제2 앵커 위치에 대응되는 제3 보정 위치로 결정되는 경우, 상기 제2 사용자 디바이스의 위치를 상기 제3 시점에 대응되는 제4 시점에 상기 제3 보정 위치로 결정하는 단계;를 포함하고, 상기 제1 위치 및 상기 제1 보정 위치 사이의 제1 거리가 상기 제2 위치 및 상기 제2 보정 위치 사이의 제2 거리 보다 작은 것을 특징으로 하는 전자 장치의 동작 방법이 제공될 수 있다. According to various embodiments, a method of operating an electronic device for estimating the location of at least one user device located in an indoor space, wherein the first user whose destination location is the same is operated by at least one processor included in the electronic device. identifying a device and a second user device; determining the location of the first user device identified as the first location as a first correction location corresponding to the first anchor location at the first time; determining the location of the second user device identified as the second location as a second correction position corresponding to the first anchor location at a second time point corresponding to the first time point; and when the location of the first user device is determined to be a third correction position corresponding to the second anchor position at a third time point, the location of the second user device is determined as the third correction position at a fourth time point corresponding to the third time point. 3 determining a correction position; wherein the first distance between the first position and the first correction position is smaller than the second distance between the second position and the second correction position. A method of operating the device may be provided.

다양한 실시예들에 따르면, 실내 공간에 위치하는 사용자 디바이스; 및 상기 사용자 디바이스의 실내 공간 상의 위치를 추정하기 위한 전자 장치;를 포함하는 시스템이 제공될 수 있다. According to various embodiments, a user device located in an indoor space; and an electronic device for estimating the location of the user device in an indoor space.

[SYSTEM][SYSTEM]

도 1은, 다양한 실시예들에 따른, 실내 지도 정보를 제공하고, 실내 위치를 추정하고, 실내 경로를 제공하기 위한 예시적인 시스템(1)을 설명하기 위한 도면이다. 1 is a diagram illustrating an example system 1 for providing indoor map information, estimating an indoor location, and providing an indoor route, according to various embodiments.

도 1을 참조하면, 시스템(1)은 실내 지도를 기반으로 실내 위치 및 경로를 제공하기 위한 전자 장치(100, 예: 서버 장치, 이하 "전자 장치"라 함.) 및 전자 장치에 의해 제공되는 네비게이션 서비스를 이용하는 복수의 사용자 디바이스들(101)을 포함할 수 있다. 예를 들어, 전자 장치(100)는 지도(예: 네비게이션) 서비스 제공자와 연관된 컴퓨팅 디바이스 또는 복수의 컴퓨팅 디바이스들을 나타낼 수 있다. 전자 장치(100)는 서버 하드웨어 아키텍쳐에 대응될 수 있으며, 지도 및/또는 네비게이션 서비스를 제공하기 위한 적어도 하나의 프로세서를 포함할 수 있다. 전자 장치(100)의 상세 구성에 대한 설명은 도 3에 관한 개시에서 설명한다. Referring to FIG. 1, the system 1 includes an electronic device (100, e.g., a server device, hereinafter referred to as “electronic device”) to provide an indoor location and route based on an indoor map, and an electronic device provided by the electronic device. It may include a plurality of user devices 101 that use a navigation service. For example, the electronic device 100 may represent a computing device or a plurality of computing devices associated with a map (eg, navigation) service provider. The electronic device 100 may correspond to a server hardware architecture and may include at least one processor for providing map and/or navigation services. The detailed configuration of the electronic device 100 is described in the disclosure regarding FIG. 3 .

본 개시의 일 실시예에 따르면, 전자 장치(100)는 실내 지도 환경을 제공할 수 있다. 이때, 실내 지도 환경은 지도 서비스 제공자를 위한 백엔드 프로세싱을 제공하는 지도 소프트웨어 서버에 의해 제공될 수 있다. 예를 들어, 소프트웨어 서버는 지도 데이터베이스로부터 지도 데이터(예를 들어, 지도 이미지, 실내 지도 데이터, 관심 지점, 네비게이션 및/또는 경로 정보)를 획득하고, 사용자 디바이스들(101)이 사용자 디바이스들(101)의 이용자들에게 지도 및/또는 네비게이션 정보를 제공하도록 지도 데이터를 복수의 사용자 디바이스들로 전송할 수 있다. 예를 들어, 지도 소프트웨어 서버는 사용자 디바이스가 네트워크(예: 인터넷 등)를 통해 전자 장치(100)에 연결되어 있는 동안 지도 데이터를 사용자 디바이스로 전송할 수 있다. 사용자 디바이스는 사용자 디바이스 상의 지도 또는 네비게이션 어플리케이션을 사용하여 이용자에게 지도 데이터를 제공할 수 있다. According to an embodiment of the present disclosure, the electronic device 100 can provide an indoor map environment. At this time, the indoor map environment may be provided by a map software server that provides backend processing for the map service provider. For example, the software server obtains map data (e.g., map images, indoor map data, points of interest, navigation and/or route information) from a map database, and allows user devices 101 to configure user devices 101 ) Map data can be transmitted to a plurality of user devices to provide maps and/or navigation information to users. For example, the map software server may transmit map data to the user device while the user device is connected to the electronic device 100 through a network (e.g., the Internet, etc.). The user device may provide map data to the user using a map or navigation application on the user device.

복수의 사용자 디바이스들(101)은 전자 장치(100)에 의해 제공되는 지도 서비스(110)를 이용하기 위한 이용자 단말들을 나타낼 수 있다. 예를 들어, 복수의 사용자 디바이스들(101)은 노트북 컴퓨터, 스마트폰, 태블릿 등과 같은 컴퓨팅 디바이스일 수 있다. 또한, 예를 들어, 복수의 사용자 디바이스들(101)은 스마트 워치, 스마트 글래스, 스마트 안경 등과 같은 웨어러블 디바이스일 수 있다. 또한, 예를 들어, 복수의 사용자 디바이스들(101)은 스트리밍 미디어 디바이스, 미디어 플레이어, 자동차 엔터테인먼트 시스템 등과 같은 미디어 디바이스일 수도 있다. 즉, 복수의 사용자 디바이스들(101)은 본 개시의 다양한 실시예들에 따른 지도 데이터를 획득하기 위해 네트워크에 접속하는 디바이스일 수 있다.The plurality of user devices 101 may represent user terminals for using the map service 110 provided by the electronic device 100. For example, the plurality of user devices 101 may be computing devices such as laptop computers, smartphones, tablets, etc. Additionally, for example, the plurality of user devices 101 may be wearable devices such as smart watches, smart glasses, smart glasses, etc. Also, for example, the plurality of user devices 101 may be media devices such as streaming media devices, media players, car entertainment systems, etc. That is, the plurality of user devices 101 may be devices that connect to the network to obtain map data according to various embodiments of the present disclosure.

복수의 사용자 디바이스들(101) 각각은 어플리케이션을 이용하는 이용자 아이디에 대응되는 사용자 디바이스들로 구성될 수 있다. 예를 들어, 복수의 사용자 디바이스들(101)은 제1 이용자 아이디에 대응되는 제1 사용자 디바이스(101a), 제2 이용자 아이디에 대응되는 제2 사용자 디바이스(101b), 제3 이용자 아이디에 대응되는 제3 사용자 디바이스(101c) 등을 포함할 수 있다. Each of the plurality of user devices 101 may be composed of user devices corresponding to a user ID using an application. For example, the plurality of user devices 101 include a first user device 101a corresponding to the first user ID, a second user device 101b corresponding to the second user ID, and a third user device corresponding to the third user ID. It may include a third user device 101c, etc.

[전자 장치의 구성][Configuration of electronic devices]

도 2는, 다양한 실시예들에 따른, 도 1의 예시적인 시스템(1)에 포함되는 전자 장치의 구성을 도시한 도면이다. FIG. 2 is a diagram illustrating the configuration of an electronic device included in the example system 1 of FIG. 1 according to various embodiments.

도 2를 참조하면, 일 실시예에 따른 전자 장치(예: 사용자 디바이스 또는 전자 장치, 이하 "전자 장치"라 함)(200)는 프로세서(210), 메모리(220), 통신 회로(230) 센서(240) 및 디스플레이(250)를 포함할 수 있다. 여기서, 전자 장치(200)는 도 1의 사용자 디바이스로 구현되는 전자 장치 및 서버 장치로 구현되는 전자 장치를 모두 포함하는 개념일 수 있다. 전자 장치(200)의 구성이 도 2에 도시된 구성이나 상술한 구성에 한정되는 것은 아니고, 일반적인 컴퓨팅 장치 또는 모바일 디바이스에 포함되는 하드웨어 또는 소프트웨어 구성을 더 포함할 수 있음은 물론이다.Referring to FIG. 2, an electronic device (e.g., a user device or electronic device, hereinafter referred to as “electronic device”) 200 according to an embodiment includes a processor 210, a memory 220, a communication circuit 230, and a sensor. It may include 240 and a display 250. Here, the electronic device 200 may be a concept that includes both an electronic device implemented as a user device of FIG. 1 and an electronic device implemented as a server device. The configuration of the electronic device 200 is not limited to the configuration shown in FIG. 2 or the configuration described above, and of course may further include hardware or software configurations included in a general computing device or mobile device.

프로세서(210)는 적어도 일부가 서로 다른 기능을 제공하도록 구현되는 적어도 하나의 프로세서를 포함할 수 있다. 예를 들면, 소프트웨어(예: 프로그램)를 실행하여 프로세서(210)에 연결된 전자 장치(200)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일 실시예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(210)는 다른 구성요소로부터 수신된 명령 또는 데이터를 메모리(220)(예: 휘발성 메모리)에 저장하고, 휘발성 메모리에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리에 저장할 수 있다. 일 실시예에 따르면, 프로세서(210)는 메인 프로세서(예: 중앙 처리 장치 또는 어플리케이션 프로세서) 또는 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(예: 그래픽 처리 장치, 신경망 처리 장치(NPU: neural processing unit), 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 예를 들어, 전자 장치(200)가 메인 프로세서 및 보조 프로세서를 포함하는 경우, 보조 프로세서는 메인 프로세서보다 저전력을 사용하거나, 지정된 기능에 특화되도록 설정될 수 있다. 보조 프로세서는 메인 프로세서와 별개로, 또는 그 일부로서 구현될 수 있다. 보조 프로세서는, 예를 들면, 메인 프로세서가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서를 대신하여, 또는 메인 프로세서가 액티브(예: 어플리케이션 실행) 상태에 있는 동안 메인 프로세서와 함께, 전자 장치(200)의 구성요소들 중 적어도 하나의 구성요소(예: 디스플레이(250), 또는 통신 회로(230))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일 실시예에 따르면, 보조 프로세서(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성요소(예: 통신 회로(230))의 일부로서 구현될 수 있다. 일 실시예에 따르면, 보조 프로세서(예: 신경망 처리 장치)는 인공지능 모델의 처리에 특화된 하드웨어 구조를 포함할 수 있다. 인공지능 모델은 기계 학습을 통해 생성될 수 있다. 이러한 학습은, 예를 들어, 인공지능 모델이 수행되는 전자 장치(200) 자체에서 수행될 수 있고, 별도의 서버를 통해 수행될 수도 있다. 학습 알고리즘은, 예를 들어, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)을 포함할 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은, 복수의 인공 신경망 레이어들을 포함할 수 있다. 인공 신경망은 심층 신경망(DNN: deep neural network), CNN(convolutional neural network), RNN(recurrent neural network), RBM(restricted boltzmann machine), DBN(deep belief network), BRDNN(bidirectional recurrent deep neural network), 심층 Q-네트워크(deep Q-networks) 또는 상기 중 둘 이상의 조합 중 하나일 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은 하드웨어 구조 이외에, 추가적으로 또는 대체적으로, 소프트웨어 구조를 포함할 수 있다. 한편, 이하에서 기술되는 전자 장치(200)의 동작은, 프로세서(210)의 동작으로 이해될 수 있다.The processor 210 may include at least one processor, at least some of which are implemented to provide different functions. For example, software (e.g., a program) may be executed to control at least one other component (e.g., a hardware or software component) of the electronic device 200 connected to the processor 210, perform various data processing or Calculations can be performed. According to one embodiment, as at least part of data processing or computation, processor 210 stores instructions or data received from other components in memory 220 (e.g., volatile memory), and stores instructions or data stored in the volatile memory. Data can be processed and the resulting data can be stored in non-volatile memory. According to one embodiment, the processor 210 is a main processor (e.g., a central processing unit or an application processor) or an auxiliary processor that can operate independently or together (e.g., a graphics processing unit, a neural processing unit (NPU)). , an image signal processor, a sensor hub processor, or a communication processor). For example, when the electronic device 200 includes a main processor and a auxiliary processor, the auxiliary processor may be set to use less power than the main processor or to specialize in a designated function. The auxiliary processor may be implemented separately from the main processor or as part of it. A coprocessor may, for example, act on behalf of the main processor while the main processor is in an inactive (e.g. sleep) state, or together with the main processor while the main processor is in an active (e.g. application execution) state, in an electronic device. At least some of the functions or states related to at least one of the components of 200 (eg, the display 250 or the communication circuit 230) may be controlled. According to one embodiment, an auxiliary processor (e.g., an image signal processor or a communication processor) may be implemented as part of another functionally related component (e.g., communication circuitry 230). According to one embodiment, an auxiliary processor (eg, neural network processing unit) may include a hardware structure specialized for processing artificial intelligence models. Artificial intelligence models can be created through machine learning. For example, such learning may be performed in the electronic device 200 itself on which the artificial intelligence model is performed, or may be performed through a separate server. Learning algorithms may include, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but It is not limited. An artificial intelligence model may include multiple artificial neural network layers. Artificial neural networks include deep neural network (DNN), convolutional neural network (CNN), recurrent neural network (RNN), restricted boltzmann machine (RBM), belief deep network (DBN), bidirectional recurrent deep neural network (BRDNN), It may be one of deep Q-networks or a combination of two or more of the above, but is not limited to the examples described above. In addition to hardware structures, artificial intelligence models may additionally or alternatively include software structures. Meanwhile, the operation of the electronic device 200 described below may be understood as the operation of the processor 210.

다양한 실시예들에 따르면, 메모리(220)는 적어도 일부가 서로 다른 기능을 제공하도록 구현되는 적어도 하나의 메모리를 포함할 수 있다. 메모리(220)는 전자 장치(200)의 적어도 하나의 구성요소(예: 프로세서(210))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 프로그램) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(220)는, 휘발성 메모리 또는 비휘발성 메모리를 포함할 수 있다. 메모리(220)는 운영 체제, 미들웨어 또는 어플리케이션, 및/또는 전술한 인공지능 모델을 저장하도록 구현될 수 있다. According to various embodiments, the memory 220 may include at least one memory, at least some of which are implemented to provide different functions. The memory 220 may store various data used by at least one component (eg, the processor 210) of the electronic device 200. Data may include, for example, input data or output data for software (e.g., a program) and instructions related thereto. Memory 220 may include volatile memory or non-volatile memory. Memory 220 may be implemented to store an operating system, middleware or applications, and/or the artificial intelligence model described above.

예를 들어, 메모리(220)는 지도 서비스(110)에 접근(access)하기 위한 지도 어플리케이션을 포함할 수 있다. 지도 어플리케이션은 사용자가 목적지를 검색 및/또는 지정할 수 있는 기능을 제공할 수 있다. 일 실시예에서, 지도 애플리케이션은 사용자가 사용자 디바이스에 근접한 특정 장소 및/또는 특정 장소 내의 특정 장소 및/또는 항목을 검색할 수 있도록 구현될 수 있다. 지도 어플리케이션은 사용자가 사용자의 현재 위치에 대응하는 지도, 검색 결과 또는 다른 관심 지점과 연관된 위치에 대응하는 지도, 및/또는 사용자가 선택한 목적지 위치 또는 지리적 영역에 대응하는 지도의 표현을 볼 수 있도록 하는 기능을 제공할 수 있다. 지도 어플리케이션은 목적지까지의 경로를 요청하는 사용자 입력을 수신할 수 있고, 지도 어플리케이션은 시작 위치(예를 들어, 사용자 디바이스의 현재 위치, 사용자 지정 위치 등)로부터 지정된 목적지까지의 경로를 제공할 수 있다.For example, the memory 220 may include a map application to access the map service 110. A map application may provide a function that allows a user to search for and/or specify a destination. In one embodiment, a map application may be implemented to allow a user to search for a specific place and/or item within a specific location and/or in proximity to the user device. A maps application allows a user to view a map that corresponds to the user's current location, a map that corresponds to a location associated with search results or other points of interest, and/or a representation of a map that corresponds to a destination location or geographic area selected by the user. function can be provided. The maps application may receive user input requesting directions to a destination, and the maps application may provide directions from a starting location (e.g., the current location of the user's device, a user-specified location, etc.) to a specified destination. .

또한, 지도 어플리케이션은 장소(예: 복합 쇼핑몰, 공항, 공사장 또는 지하 주차장 등)의 물리적 구조의 표현을 제공할 수 있다. 또한, 아래에서 논의되는 바와 같이, 지도 어플리케이션은 장소 구조의 물리적 레이아웃 및 기하학적 구조 뿐만 아니라 장소 내의 관심 지점(예: 상점, 레스토랑, 보안 검색대, 화장실)의 위치, 구조 및 레이아웃을 포함하는 장소 내부의 뷰를 제공할 수 있다. 사용자가 행사장을 확대하여 관심 지점을 표시하면 뷰가 더욱 상세해질 수 있다. 일부 실시예에서, 장소 내부의 뷰는 일부 유형의 장소에 포함되는 야외 산책 공간 또는 안뜰을 포함할 수 있다.Additionally, a map application can provide a representation of the physical structure of a location (e.g., a shopping mall complex, an airport, a construction site, or an underground parking lot, etc.). Additionally, as discussed below, a map application may provide information about the location of a venue, including the physical layout and geometry of the venue structure, as well as the location, structure, and layout of points of interest within the venue (e.g., stores, restaurants, security checkpoints, restrooms). A view can be provided. The view can become more detailed as the user zooms in on the venue to mark points of interest. In some embodiments, views inside a venue may include an outdoor walking area or courtyard included in some types of venues.

또한, 예를 들어, 메모리(220)는 지도 서비스(110)에 의해 제공되는 기능들을 구현하기 위한 프로세서(210)의 동작들을 지시하는 복수의 지시 사항들(Instructions)을 포함할 수 있다. Additionally, for example, the memory 220 may include a plurality of instructions that direct operations of the processor 210 to implement functions provided by the map service 110.

이때, 프로세서(210)는 메모리(220)에 저장된 복수의 지시 사항들을 기초로 지도 서비스(110)에 의해 제공되는 기능들을 실행하는 지도 소프트웨어 서버를 포함할 수 있다. At this time, the processor 210 may include a map software server that executes functions provided by the map service 110 based on a plurality of instructions stored in the memory 220.

지도 소프트웨어 서버는 실내 지도 데이터 구축(building) 기능을 제공할 수 있다. 지도 소프트웨어 서버는 장소의 물리적 구조물들을 폴리 라인(poly-line) 및 대응되는 다양한 정보를 이용하여 정의한 실내 지도 데이터를 구축하도록 설정될 수 있다. The map software server may provide indoor map data building functions. The map software server can be configured to construct indoor map data that defines the physical structures of a place using poly-lines and various corresponding information.

또, 지도 소프트웨어 서버는 실내 지도 데이터에 대응되는 측위 데이터 구축 기능을 제공할 수 있다. 구체적으로, 지도 소프트웨어 서버는 센서(240)를 이용하여 획득되는 센서 데이터를 기초로 실내 지도 데이터에 대응되는 측위 데이터를 구축하도록 설정될 수 있다. Additionally, the map software server can provide a function to build positioning data corresponding to indoor map data. Specifically, the map software server may be set to construct positioning data corresponding to indoor map data based on sensor data acquired using the sensor 240.

또, 지도 소프트웨어 서버는 실내 지도 데이터 및 측위 데이터로 구성되는 측위 데이터 셋의 업데이트 기능을 제공할 수 있다. Additionally, the map software server may provide an update function for a positioning data set consisting of indoor map data and positioning data.

또, 지도 소프트웨어 서버는 실내 위치 보정 기능을 제공할 수 있다.Additionally, the map software server can provide an indoor location correction function.

지도 소프트웨어 서버에 의해 제공되는 기능들에 대한 상세한 내용은 아래에서 자세히 설명한다. Details of the functions provided by the map software server are described in detail below.

다양한 실시예들에 따르면, 통신 회로(230)는 전자 장치(200)와 외부 전자 장치(예: 내시경 장치) 간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 회로(230)는 프로세서(210)(예: 프로그램 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서(예: 통신 칩)를 포함할 수 있다. 일 실시예에 따르면, 통신 회로(230)는 무선 통신 모듈(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. 이들 통신 모듈 중 해당하는 통신 모듈은 제1 네트워크(예: 블루투스, WiFi(wireless fidelity) direct 또는 IrDA(infrared data association)와 같은 근거리 통신 네트워크) 또는 제2 네트워크(예: 레거시 셀룰러 네트워크, 5G 네트워크, 차세대 통신 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부의 전자 장치와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성요소(예: 단일 칩)로 통합되거나, 또는 서로 별도의 복수의 구성요소들(예: 복수 칩들)로 구현될 수 있다. 무선 통신 모듈은 가입자 식별 모듈에 저장된 가입자 정보(예: 국제 모바일 가입자 식별자(IMSI))를 이용하여 제1 네트워크 또는 제2 네트워크와 같은 통신 네트워크 내에서 전자 장치(100)를 확인 또는 인증할 수 있다. 무선 통신 모듈은 4G 네트워크 이후의 5G 네트워크 및 차세대 통신 기술, 예를 들어, NR 접속 기술(new radio access technology)을 지원할 수 있다. NR 접속 기술은 고용량 데이터의 고속 전송(eMBB(enhanced mobile broadband)), 단말 전력 최소화와 다수 단말의 접속(mMTC(massive machine type communications)), 또는 고신뢰도와 저지연(URLLC(ultra-reliable and low-latency communications))을 지원할 수 있다. 무선 통신 모듈은, 예를 들어, 높은 데이터 전송률 달성을 위해, 고주파 대역(예: mmWave 대역)을 지원할 수 있다. 무선 통신 모듈은 고주파 대역에서의 성능 확보를 위한 다양한 기술들, 예를 들어, 빔포밍(beamforming), 거대 배열 다중 입출력(massive MIMO(multiple-input and multiple-output)), 전차원 다중입출력(FD-MIMO: full dimensional MIMO), 어레이 안테나(array antenna), 아날로그 빔형성(analog beam-forming), 또는 대규모 안테나(large scale antenna)와 같은 기술들을 지원할 수 있다. 무선 통신 모듈은 전자 장치(200), 내시경 장치 또는 네트워크 시스템에 규정되는 다양한 요구사항을 지원할 수 있다. 일 실시예에 따르면, 무선 통신 모듈은 eMBB 실현을 위한 Peak data rate(예: 20Gbps 이상), mMTC 실현을 위한 손실 Coverage(예: 164dB 이하), 또는 URLLC 실현을 위한 U-plane latency(예: 다운링크(DL) 및 업링크(UL) 각각 0.5ms 이하, 또는 라운드 트립 1ms 이하)를 지원할 수 있다.According to various embodiments, the communication circuit 230 establishes a direct (e.g., wired) or wireless communication channel between the electronic device 200 and an external electronic device (e.g., an endoscope device), and maintains the established communication channel. It can support communication through Communication circuitry 230 operates independently of processor 210 (e.g., a program processor) and may include one or more communication processors (e.g., communication chips) that support direct (e.g., wired) communication or wireless communication. . According to one embodiment, the communication circuit 230 is a wireless communication module (e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module (e.g., a local area network (LAN) ) may include a communication module, or a power line communication module). Among these communication modules, the corresponding communication module is a first network (e.g., a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct, or infrared data association (IrDA)) or a second network (e.g., a legacy cellular network, 5G network, It can communicate with external electronic devices through a next-generation communication network, the Internet, or a telecommunication network such as a computer network (e.g., LAN or WAN). These various types of communication modules may be integrated into one component (e.g., a single chip) or may be implemented as a plurality of separate components (e.g., multiple chips). The wireless communication module may identify or authenticate the electronic device 100 within a communication network, such as a first network or a second network, using subscriber information (e.g., International Mobile Subscriber Identifier (IMSI)) stored in the subscriber identification module. . The wireless communication module may support 5G networks after the 4G network and next-generation communication technologies, for example, NR access technology (new radio access technology). NR access technology provides high-speed transmission of high-capacity data (eMBB (enhanced mobile broadband)), minimization of terminal power and access to multiple terminals (mMTC (massive machine type communications)), or high reliability and low latency (URLLC (ultra-reliable and low latency). -latency communications)) can be supported. The wireless communication module may support high frequency bands (e.g., mmWave bands), for example, to achieve high data rates. Wireless communication modules use various technologies to secure performance in high frequency bands, such as beamforming, massive MIMO (multiple-input and multiple-output), and full-dimensional multiple input/output (FD). -It can support technologies such as full dimensional MIMO (MIMO), array antenna, analog beam-forming, or large scale antenna. The wireless communication module can support various requirements specified in the electronic device 200, endoscopic device, or network system. According to one embodiment, the wireless communication module has Peak data rate (e.g., 20Gbps or more) for realizing eMBB, loss coverage (e.g., 164dB or less) for realizing mMTC, or U-plane latency (e.g., downtime) for realizing URLLC. Link (DL) and uplink (UL) each of 0.5 ms or less, or round trip 1 ms or less) can be supported.

다양한 실시예들에 따르면, 센서(240)는 적어도 일부가 서로 다른 기능을 제공하도록 구현되는 적어도 하나의 센서를 포함할 수 있다. 예를 들어, 센서(240)는 무선 통신 센서(예: WiFi 센서, 블루투스(BLE) 센서 등), 자기장 센서, 관성 센서, 가속도 센서, 자이로스코프, 지자기 센서, 기압계 또는 압력 센서 등을 포함할 수 있다. According to various embodiments, the sensor 240 may include at least one sensor, at least some of which are implemented to provide different functions. For example, the sensor 240 may include a wireless communication sensor (e.g., a WiFi sensor, a Bluetooth (BLE) sensor, etc.), a magnetic field sensor, an inertial sensor, an acceleration sensor, a gyroscope, a geomagnetic sensor, a barometer, or a pressure sensor. there is.

이때, 프로세서(210)는 센서(240)로부터 획득된 전기적 신호를 기초로 센서 데이터를 생성할 수 있다. At this time, the processor 210 may generate sensor data based on the electrical signal obtained from the sensor 240.

일 예로, 프로세서(210)는 무선 통신 센서(예: WiFi 센서, 블루투스(BLE) 센서 등)를 이용하여 복수의 AP(access point)들 중 적어도 하나로부터 출력되는 무선 통신 신호를 스캔함으로써 적어도 하나의 신호 강도 값(RSS)을 획득할 수 있다. 또한, 프로세서(210)는 적어도 하나의 신호 강도 값을 기초로 무선 통신 세기 데이터를 생성할 수 있다. 이때, 무선 통신 센서는 통신 회로(230)에 포함된 무선 통신 칩을 포함하는 개념일 수 있다. As an example, the processor 210 uses a wireless communication sensor (e.g., WiFi sensor, Bluetooth (BLE) sensor, etc.) to scan a wireless communication signal output from at least one of a plurality of access points (APs) to detect at least one A signal strength value (RSS) can be obtained. Additionally, the processor 210 may generate wireless communication strength data based on at least one signal strength value. At this time, the wireless communication sensor may be a concept that includes a wireless communication chip included in the communication circuit 230.

다른 예로, 프로세서(210)는 자기장 센서를 이용하여 장소 내부에서 발생하는 자기장들의 세기를 식별함으로써 위치 별 자기장 세기 값들을 획득할 수 있다. 또한, 프로세서(210)는 위치 별 자기장 세기 값들을 기초로 자기장 데이터를 생성할 수 있다. As another example, the processor 210 may obtain magnetic field intensity values for each location by identifying the intensity of magnetic fields occurring inside the location using a magnetic field sensor. Additionally, the processor 210 may generate magnetic field data based on magnetic field intensity values for each location.

또 다른 예로, 프로세서(210)는 가속도 센서를 이용하여 전자 장치의 가속도 값을 식별함으로써 가속도 데이터를 생성할 수 있다. As another example, the processor 210 may generate acceleration data by identifying the acceleration value of the electronic device using an acceleration sensor.

또 다른 예로, 프로세서(210)는 기압계를 이용하여 측정된 기압 값을 기초로 기압 데이터를 생성할 수 있다. As another example, the processor 210 may generate barometric pressure data based on barometric pressure values measured using a barometer.

다양한 실시예들에 따르면, 디스플레이(250)는 정보(예를 들어, 시각 정보, 소리 데이터를 이용한 청각 정보. 진동을 이용한 촉각 정보 등)를 제공하기 위한 구성일 수 있다. 예를 들어, 디스플레이(250)는 디스플레이 장치(예: 모니터, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로)를 포함할 수 있다. 일 실시예에 따르면, 디스플레이는 터치를 감지하도록 설정된 터치 센서, 또는 상기 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 압력 센서를 포함할 수 있다.According to various embodiments, the display 250 may be configured to provide information (eg, visual information, auditory information using sound data, tactile information using vibration, etc.). For example, the display 250 may include a display device (eg, a monitor, a hologram device, or a projector and a control circuit for controlling the device). According to one embodiment, the display may include a touch sensor configured to detect a touch, or a pressure sensor configured to measure the intensity of force generated by the touch.

프로세서(210)는 디스플레이(250)를 이용하여 입출력 인터페이스를 제공하도록 구현될 수 있다. 예를 들어, 프로세서(210)는 디스플레이(250)를 이용하여 미리 저장된 그래픽 유저 인터페이스(GUI)를 제공하도록 구현될 수 있다. The processor 210 may be implemented to provide an input/output interface using the display 250. For example, the processor 210 may be implemented to provide a pre-stored graphical user interface (GUI) using the display 250.

전자 장치(200)는 상술한 구성들(프로세서, 통신 회로, 메모리, 센서, 디스플레이) 중 적어도 일부만 포함하도록 구현될 수 있다. 예를 들어, 사용자 디바이스는 프로세서, 통신 회로, 메모리, 센서 및 디스플레이를 포함하도록 구현될 수 있다. 또한, 예를 들어, 서버 장치는 프로세서, 통신 회로 및 메모리를 포함하도록 구현될 수 있다. The electronic device 200 may be implemented to include at least some of the above-described components (processor, communication circuit, memory, sensor, display). For example, a user device may be implemented to include a processor, communication circuitry, memory, sensors, and a display. Additionally, for example, a server device may be implemented to include a processor, communication circuitry, and memory.

도 3은, 다양한 실시예들에 따른, 실내 지도 데이터를 기반으로 지도 서비스를 제공하는 전자 장치의 상세 구성을 도시한 도면이다. FIG. 3 is a diagram illustrating a detailed configuration of an electronic device that provides a map service based on indoor map data, according to various embodiments.

도 3을 참조하면, 전자 장치(300)는 프로세서(310) 및 메모리(320)를 포함할 수 있다. 전자 장치(100)의 프로세서(310)는 지도 서비스(110)에 수반되는 다양한 종류의 데이터를 메모리(320)에 저장할 수 있다. 구체적으로, 프로세서(310)는 메모리(320)에 저장된 복수의 지시 사항들(Instructions)에 의해 지시되는 동작을 기초로 동작할 수 있다. 이에 따라, 프로세서(310)는 동작에 수반되는 데이터들 중 적어도 일부를 메모리(320)에 저장할 수 있다. Referring to FIG. 3 , the electronic device 300 may include a processor 310 and a memory 320. The processor 310 of the electronic device 100 may store various types of data accompanying the map service 110 in the memory 320. Specifically, the processor 310 may operate based on operations indicated by a plurality of instructions stored in the memory 320. Accordingly, the processor 310 may store at least some of the data accompanying the operation in the memory 320.

전자 장치(300)는 실내 지도 데이터(330)를 메모리(320)에 저장할 수 있다. 본 개시에서의 실내 지도 데이터(330)는 실내 지도 이미지 파일 또는 컴퓨터 코드를 기초로 정의된 실내 지도 데이터 등을 모두 포함하는 개념이며, 실내 공간(또는, 장소(venue))에 대한 정보를 나타내는 데이터일 수 있다. 또한, 실내 지도 데이터(330)는 복수의 실내 공간들에 각각 대응되는 복수의 실내 지도 데이터로 구성될 수 있다. 예를 들어, 실내 지도 데이터(330)는 제1 장소에 대응되는 제1 실내 지도 데이터(331) 및 제2 장소에 대응되는 제2 실내 지도 데이터(332)를 포함할 수 있으나, 이에 한정되지 않는다. The electronic device 300 may store the indoor map data 330 in the memory 320 . The indoor map data 330 in the present disclosure is a concept that includes all indoor map image files or indoor map data defined based on computer code, and is data representing information about an indoor space (or venue). It can be. Additionally, the indoor map data 330 may be composed of a plurality of indoor map data each corresponding to a plurality of indoor spaces. For example, the indoor map data 330 may include first indoor map data 331 corresponding to a first location and second indoor map data 332 corresponding to a second location, but is not limited thereto. .

전자 장치(300)는 측위 데이터(340)를 메모리(320)에 저장할 수 있다. 본 개시에서의 측위 데이터(340)는 사용자 디바이스의 실내 위치 추적을 위해 구축된 데이터베이스를 의미하며, 위치 데이터베이스, 센싱 데이터, 센싱 지도, 위치 지문(location fingerprint), Access Point fingerprint 또는 와이파이 핑거프린트 등으로 표현될 수도 있다. 또한, 측위 데이터(340)는 복수의 실내 공간들에 각각 대응되는 복수의 측위 데이터로 구성될 수 있다. 예를 들어, 측위 데이터(340)는 제1 장소에 대응되는 제1 측위 데이터(341) 및 제2 장소에 대응되는 제2 측위 데이터(342)를 포함할 수 있으나, 이에 한정되지 않는다. The electronic device 300 may store the positioning data 340 in the memory 320 . Positioning data 340 in the present disclosure refers to a database built to track the indoor location of a user device, and can be used as a location database, sensing data, sensing map, location fingerprint, Access Point fingerprint, or Wi-Fi fingerprint, etc. It can also be expressed. Additionally, the positioning data 340 may be composed of a plurality of positioning data respectively corresponding to a plurality of indoor spaces. For example, the positioning data 340 may include first positioning data 341 corresponding to a first place and second positioning data 342 corresponding to a second place, but is not limited thereto.

전자 장치(300)는 동일한 장소에 대응되는 실내 지도 데이터(330) 및 측위 데이터(340)를 연관지어 메모리(320)에 저장할 수 있다. 본 개시에서는 서로 연관된 실내 지도 데이터 및 측위 데이터를 "실내 측위 데이터 셋(Indoor Positioning Dataset)"으로 표현할 수 있으나, 용어 자체로 구성을 한정하려는 것은 아니다. 또한, 프로세서(310)는 서로 연관된 실내 지도 데이터(330) 및 측위 데이터(340)를 기초로 사용자 디바이스의 실내 위치를 측정(또는 포지셔닝)할 수 있다. The electronic device 300 may associate indoor map data 330 and positioning data 340 corresponding to the same location and store them in the memory 320 . In the present disclosure, indoor map data and positioning data that are related to each other may be expressed as an “indoor positioning data set,” but the term itself is not intended to limit the configuration. Additionally, the processor 310 may measure (or position) the indoor location of the user device based on the indoor map data 330 and positioning data 340 that are associated with each other.

프로세서(310)가 실내 지도 데이터(330) 및 측위 데이터(340)를 구축하고, 실내 위치를 예측하는 방법에 대한 구체적인 내용은 아래(도 4 내지 도 8)에서 설명한다. Details of how the processor 310 builds the indoor map data 330 and the positioning data 340 and predicts the indoor location will be described below (FIGS. 4 to 8).

전자 장치(300)는 사용자 데이터(350)를 메모리(320)에 저장할 수 있다. 본 개시에서의 사용자 데이터(350)는 사용자 디바이스들로부터 수신한 데이터 및 사용자 디바이스들로부터 수신한 데이터에 기반한 데이터 등 사용자 디바이스에 의해 획득된 데이터를 의미한다. 예를 들어, 사용자 데이터(350)는 사용자 디바이스들로부터 수신한 제1 사용자 데이터(351)를 포함할 수 있다. 구체적인 예로, 제1 사용자 데이터(351)는 복수의 사용자 디바이스들에 의해 수집된 센서 데이터로 구성될 수 있다. 본 개시에서 이러한 유형의 데이터를 제1 사용자 데이터, 사용자 센싱 데이터, 사용자 수집 데이터 또는 수집 데이터(harvest data) 등의 용어로 표현될 수 있다. 또한, 예를 들어, 사용자 데이터(350)는 사용자 디바이스들로부터 수신한 데이터를 기초로 생성된 제2 사용자 데이터(352)를 포함할 수 있다. 구체적인 예로, 제2 사용자 데이터(352)는 복수의 사용자 디바이스들에 의해 수집된 센서 데이터를 기초로 생성된 위치 데이터(또는 경로 데이터)로 구성될 수 있다. 본 개시에서 이러한 유형의 데이터를 제2 사용자 데이터, (사용자) 위치 데이터, (사용자) 경로 데이터 또는 흔적(trace) 데이터 등으로 표현될 수 있다. The electronic device 300 may store user data 350 in the memory 320 . User data 350 in this disclosure refers to data acquired by user devices, such as data received from user devices and data based on data received from user devices. For example, the user data 350 may include first user data 351 received from user devices. As a specific example, the first user data 351 may consist of sensor data collected by a plurality of user devices. In the present disclosure, this type of data may be expressed in terms such as first user data, user sensing data, user collection data, or harvest data. Additionally, for example, the user data 350 may include second user data 352 generated based on data received from user devices. As a specific example, the second user data 352 may be composed of location data (or route data) generated based on sensor data collected by a plurality of user devices. In the present disclosure, this type of data may be expressed as second user data, (user) location data, (user) route data, or trace data, etc.

전자 장치(300)는 실외 지도 데이터(360)를 메모리(320)에 저장할 수 있다. 이때, 실외 지도 데이터(360)는 실외 공간에 대한 정보를 나타내는 지도 데이터일 수 있다. 이때, 전자 장치(300)는 외부(예: API, 소스 코드, 어플리케이션 등)로부터 실외 지도 데이터(360)를 획득할 수 있다. The electronic device 300 may store the outdoor map data 360 in the memory 320 . At this time, the outdoor map data 360 may be map data representing information about the outdoor space. At this time, the electronic device 300 may acquire outdoor map data 360 from an external source (e.g., API, source code, application, etc.).

전자 장치(300)는 사용자 정보(370)를 메모리(320)에 저장할 수 있다. 본 개시에서의 사용자 정보(370)는 사용자 디바이스들에 대한 정보로서, 사용자 디바이스들 각각의 이용자 아이디(ID) 정보 등 사용자 디바이스를 구분할 수 있는 정보를 의미한다. The electronic device 300 may store user information 370 in memory 320 . The user information 370 in the present disclosure refers to information about user devices and refers to information that can distinguish user devices, such as user ID information for each user device.

[실내 측위 데이터 셋의 구축 방법][Method of constructing indoor positioning data set]

도 4는, 다양한 실시예들에 따른, 전자 장치가 포함하는 실내 지도 데이터를 설명하기 위한 도면이다. FIG. 4 is a diagram for explaining indoor map data included in an electronic device, according to various embodiments.

도 4를 참조하면, 전자 장치는 복수의 장소 지도들에 대응되는 복수의 실내 지도들을 포함하는 실내 지도 데이터를 제공할 수 있다. 이때, 실내 지도 데이터는 실외 지도 상의 적어도 일부에 포함된 복수의 장소들에 대응되는 실내 지도일 수 있다. 예를 들어, 전자 장치는 특정 영역에 위치하는 제1 장소에 대한 제1 실내 지도 데이터(400)를 포함할 수 있다. Referring to FIG. 4, an electronic device may provide indoor map data including a plurality of indoor maps corresponding to a plurality of place maps. At this time, the indoor map data may be an indoor map corresponding to a plurality of places included in at least part of the outdoor map. For example, the electronic device may include first indoor map data 400 for a first place located in a specific area.

제1 실내 지도 데이터(400)는 제1 장소와 연관된 다양한 정보를 포함할 수 있다. The first indoor map data 400 may include various information related to the first place.

제1 실내 지도 데이터(400)는 제1 장소의 층(레벨(level) 또는 플로어(floor)) 별로 포함된 물리적 구조물들을 나타내는 층 지도 정보(floor map information, 410)를 포함할 수 있다. 예를 들어, 층 지도 정보(410)는 제1 장소의 1층에 위치하는 물리적 구조물들을 나타내는 제1 층 지도(410a), 제1 장소의 2층에 위치하는 물리적 구조물들을 나타내는 제2 층 지도(410b) 등을 포함할 수 있으나, 이에 한정되지 않는다. The first indoor map data 400 may include floor map information (floor map information) 410 indicating physical structures included in each floor (level or floor) of the first location. For example, the floor map information 410 includes a first floor map 410a indicating physical structures located on the first floor of the first location, and a second floor map indicating physical structures located on the second floor of the first location ( 410b), etc., but is not limited thereto.

제1 실내 지도 데이터(400)는 제1 장소에 포함되는 복수의 관심 지점(POI, position of interest)에 대한 정보를 나타내는 관심 지점 정보(420)를 포함할 수 있다. 관심 지점 정보(420)는 복수의 관심 지점들 각각이 위치하는 층을 나타내는 층 정보 및 복수의 관심 지점들 각각의 위치 정보, 복수의 관심 지점들 각각의 상세(detail) 정보, 또는 복수의 관심 지점들 각각이 차지하는 영역(또는 풋프린트(footprint)) 정보를 포함할 수 있으나, 이에 한정되지 않는다. 예를 들어, 관심 지점의 상세 정보는 관심 지점의 상호, 관심 지점의 종류(category), 관심 지점의 상태(예: 출입 가능 여부 등) 또는 관심 지점의 이벤트(예: 판매자로부터 업로드된 정보) 등을 나타내는 정보일 수 있다. The first indoor map data 400 may include point of interest information 420 indicating information about a plurality of points of interest (POI) included in the first location. The point of interest information 420 includes floor information indicating the floor on which each of the plurality of points of interest is located, location information of each of the plurality of points of interest, detailed information of each of the plurality of points of interest, or a plurality of points of interest. It may include information on the area (or footprint) each occupies, but is not limited to this. For example, the detailed information of a point of interest may include the name of the point of interest, the type of point of interest (category), the status of the point of interest (e.g., whether access is possible, etc.), or the event of the point of interest (e.g., information uploaded by the seller), etc. It may be information representing .

제1 실내 지도 데이터(400)는 제1 장소에 포함되는 복수의 고정물(fixture)들에 대한 정보를 나타내는 고정물 정보(430)를 포함할 수 있다. 고정물 정보(430)는 제1 장소에 포함되는 복수의 고정물들 각각의 위치 정보, 또는 복수의 고정물들 각각이 차지하는 영역(또는 풋프린트(footprint)) 정보를 포함할 수 있으나, 이에 한정되지 않는다. The first indoor map data 400 may include fixture information 430 indicating information about a plurality of fixtures included in the first location. The fixture information 430 may include location information of each of a plurality of fixtures included in the first location, or area (or footprint) information occupied by each of the plurality of fixtures, but is not limited thereto.

제1 실내 지도 데이터(400)는 제1 장소에 포함되는 이동 수단들에 대한 정보를 나타내는 이동 수단 정보(440)를 포함할 수 있다. 이때, 이동 수단 정보(440)는 제1 장소 내의 층 간 이동을 위한 층간 이동 수단들(예: 에스컬레이터, 엘리베이터, 계단 등)에 대한 정보를 포함할 수 있다. 예를 들어, 이동 수단 정보(440)는 이동 수단의 종류가 각각 상이한 제1 층간 이동 수단 정보(440a), 제2 층간 이동 수단 정보(440b) 및 제3 층간 이동 수단 정보(440c)를 포함할 수 있으나, 이에 한정되지 않는다. 또한, 이동 수단 정보(440)는 제1 장소에 포함되는 복수의 이동 수단들 각각의 위치 정보, 또는 복수의 이동 수단들 각각이 차지하는 영역(또는 풋프린트(footprint)) 정보를 포함할 수 있으나, 이에 한정되지 않는다.The first indoor map data 400 may include means of transportation information 440 indicating information about means of transportation included in the first location. At this time, the transportation means information 440 may include information about inter-floor transportation means (eg, escalator, elevator, stairs, etc.) for moving between floors in the first location. For example, the transportation means information 440 may include first inter-floor transportation information 440a, second inter-floor transportation information 440b, and third inter-floor transportation information 440c, each of which has different types of transportation means. However, it is not limited to this. Additionally, the transportation means information 440 may include location information for each of a plurality of transportation devices included in the first location, or information on the area (or footprint) occupied by each of the plurality of transportation devices. It is not limited to this.

도 4에는 도시되어 있지 않지만, 제1 실내 지도 데이터(400)는 상술한 정보 외에 제1 장소에 대한 추가적인 정보를 더 포함할 수 있다. 예를 들어, 제1 실내 지도 데이터(400)는 제1 장소에 위치한 복수의 출입구들의 위치를 나타내는 출입구 정보, 제1 장소에 포함된 적어도 두 개의 지도 요소들 사이에 물리적 또는 개념적 연결을 정의하는 관계(relationship) 정보, 제1 장소 내에서 높은 위치 예측 정확도를 가지는 위치를 나타내는 앵커(anchor) 정보 등을 더 포함할 수 있다. Although not shown in FIG. 4 , the first indoor map data 400 may further include additional information about the first place in addition to the above-described information. For example, the first indoor map data 400 includes entrance information indicating the location of a plurality of entrances located in the first location, and a relationship defining a physical or conceptual connection between at least two map elements included in the first location. It may further include relationship information, anchor information indicating a location with high location prediction accuracy within the first location, etc.

제1 실내 지도 데이터(400)가 포함하는 정보에 대한 내용은 아래에서 자세히 설명한다. The information included in the first indoor map data 400 will be described in detail below.

전자 장치는 제1 실내 지도 데이터(400)를 사용자 디바이스에 제공할 수 있다. 구체적으로, 사용자 디바이스는 어플리케이션을 이용하여 제1 실내 지도 데이터(400)를 디스플레이에 출력할 수 있다. 또한, 제1 실내 지도 데이터(400)는 3D 도면 형태로 나타날 수 있으나, 이에 한정되지 않고, 2D 도면 형태로 나타날 수도 있다. 이 경우, 사용자 디바이스에 의해 입력되는 사용자 입력에 의해 3D 도면 및 2D 도면이 서로 전환되어 표시될 수도 있다. The electronic device may provide first indoor map data 400 to the user device. Specifically, the user device may output the first indoor map data 400 to the display using an application. Additionally, the first indoor map data 400 may appear in the form of a 3D drawing, but is not limited to this and may also appear in the form of a 2D drawing. In this case, the 3D drawing and the 2D drawing may be switched and displayed depending on the user input input by the user device.

도 5는, 다양한 실시예들에 따른, 전자 장치가 포함하는 제1 장소에 대응되는 실내 측위 데이터 셋을 설명하기 위한 도면이다. FIG. 5 is a diagram illustrating an indoor positioning data set corresponding to a first location included in an electronic device, according to various embodiments.

도 5의 (a)는 실내 측위 데이터 셋을 구성하는 실내 지도 데이터(500)의 일 예시를 도시한다. 설명의 편의를 위해, 도 5의 (a)는 실내 지도 데이터를 2D 도면을 이용하여 표현하였지만, 도면에 도시된 사항으로 한정되는 것은 아니고, 실내 지도 데이터(500)는 실내 지도 이미지 또는 컴퓨터 코드를 기초로 정의된 복수의 폴리 라인들로 구성되는 다차원의 데이터일 수 있다. Figure 5(a) shows an example of indoor map data 500 constituting an indoor positioning data set. For convenience of explanation, (a) in FIG. 5 represents indoor map data using a 2D drawing, but it is not limited to what is shown in the drawing, and indoor map data 500 includes an indoor map image or computer code. It may be multidimensional data consisting of a plurality of polylines defined as a basis.

도 5의 (b)는 실내 측위 데이터 셋을 구성하는 측위 데이터(550)의 일 예시를 도시한다. 설명의 편의를 위해, 도 5의 (b)는 측위 데이터를 2D 도면 상에 나타나는 것처럼 표현하였지만, 도면에 도시된 사항으로 한정되는 것은 아니고, 측위 데이터(550)는 특정 도메인에 정의된 데이터 값(value)들을 포함하는 데이터베이스일 수 있다. 예를 들어, 측위 데이터(550)는 실내 지도 데이터에 대응되는 위치 좌표 및 위치 좌표에 대응되는 적어도 하나의 특징 값으로 구성될 수 있다. Figure 5(b) shows an example of positioning data 550 constituting an indoor positioning data set. For convenience of explanation, (b) in FIG. 5 expresses the positioning data as if it appears on a 2D drawing, but it is not limited to what is shown in the drawing, and the positioning data 550 is a data value defined in a specific domain ( It may be a database containing values. For example, the positioning data 550 may be composed of location coordinates corresponding to indoor map data and at least one feature value corresponding to the location coordinates.

도 5의 (a) 및 도 5의 (b)를 참조하면, 전자 장치는 실내 지도 데이터(500)에 대응되는 측위 데이터(550)를 생성할 수 있다. 전자 장치는 제1 장소에 포함되는 복수의 지점들의 위치에 대응되는 센서 데이터(sensor data 또는 센싱 데이터(sensing data) 또는 감지 데이터(sensed data))를 획득함으로써 측위 데이터(550)를 생성할 수 있다. 이때, 측위 데이터(550)는 실내 지도 데이터(500)의 각 지점들의 위치에 대응되는 복수의 측위점들(positioning points 또는 레퍼런스 지점(reference point) 또는 노드(node))을 포함할 수 있다. 또한, 측위 데이터(550)는 복수의 격자들을 포함하고, 복수의 격자들의 교차점에 대응되는 복수의 노드들을 포함할 수 있다. 이때, 복수의 측위점들 각각은 대응되는 실내 지도 데이터 상의 위치 좌표 및 위치 좌표에 대응되는 적어도 하나의 특징 값(예: 적어도 하나의 access point에 대응되는 신호 강도 등)을 포함할 수 있으나, 이에 한정되지 않는다. Referring to Figures 5(a) and 5(b), the electronic device may generate positioning data 550 corresponding to indoor map data 500. The electronic device may generate positioning data 550 by acquiring sensor data (sensor data or sensed data) corresponding to the positions of a plurality of points included in the first location. . At this time, the positioning data 550 may include a plurality of positioning points (positioning points or reference points or nodes) corresponding to the positions of each point of the indoor map data 500. Additionally, the positioning data 550 may include a plurality of grids and a plurality of nodes corresponding to intersections of the plurality of grids. At this time, each of the plurality of positioning points may include location coordinates on the corresponding indoor map data and at least one feature value (e.g., signal strength corresponding to at least one access point, etc.) corresponding to the location coordinates. It is not limited.

전자 장치는 복수의 센서들을 이용하여 복수의 지점들의 위치에 대응되는 센서 데이터를 획득할 수 있고, 획득된 센서 데이터를 기초로 복수의 측위점들을 포함하는 측위 데이터(550)를 획득할 수 있다. The electronic device can acquire sensor data corresponding to the positions of a plurality of points using a plurality of sensors, and can obtain positioning data 550 including a plurality of positioning points based on the acquired sensor data.

일 예로, 전자 장치는 제1 지점(501)에서 무선 통신 센서(예: WiFi 센서 또는 BLE 센서 등)를 이용하여 복수의 AP(access point, 여기서, AP는 무선 통신 신호(예: 무선 로컬 영역 네트워크(WLAN))를 출력하는 장치를 의미할 수 있다. 예를 들어, AP는 WIFi 신호를 출력하는 이더넷 공유기, 블루투스 신호를 출력하는 비콘(beacon). UWB(ultra-wideband) 기반 단거리 무선 통신 프로토콜 등을 포함할 수 있다.)들 중 적어도 하나로부터 출력되는 무선 통신 신호를 스캔함으로써 적어도 하나의 신호 강도 값(RSS, Received Signal Strength)을 획득할 수 있다. 이때, 전자 장치는 적어도 하나의 AP에 의해 출력되는 무선 통신 신호를 스캔하여 식별되는 적어도 하나의 신호 강도 값을 기초로 제1 측위점(551)을 생성할 수 있다. 구체적인 예로, 제1 측위점(551)은 제1 AP(AP1)로부터 출력되는 무선 통신 신호를 스캔하여 식별되는 제1 신호 강도 값, 제2 AP(AP2)로부터 출력되는 무선 통신 신호를 스캔하여 식별되는 제2 신호 강도 값 및 제3 AP(AP3)로부터 출력되는 무선 통신 신호를 스캔하여 식별되는 제3 신호 강도 값을 기초로 생성될 수 있다. As an example, the electronic device uses a wireless communication sensor (e.g., a WiFi sensor or a BLE sensor, etc.) at the first point 501 to use a plurality of access points (APs), where the AP is a wireless communication signal (e.g., a wireless local area network (WLAN)). For example, an AP is an Ethernet router that outputs a WiFi signal, a beacon that outputs a Bluetooth signal, a UWB (ultra-wideband) based short-range wireless communication protocol, etc. At least one signal strength value (RSS, Received Signal Strength) can be obtained by scanning a wireless communication signal output from at least one of the. At this time, the electronic device may generate a first location point 551 based on at least one signal strength value identified by scanning a wireless communication signal output by at least one AP. As a specific example, the first positioning point 551 is identified by scanning the wireless communication signal output from the first AP (AP1) and the first signal strength value identified by scanning the wireless communication signal output from the second AP (AP2). It may be generated based on the second signal strength value and the third signal strength value identified by scanning the wireless communication signal output from the third AP (AP3).

다른 예로, 전자 장치는 제1 지점(501)에서 자기장 센서를 이용하여 제1 장소 내부에서 발생하는 자기장들의 세기를 식별함으로써 제1 지점(501)에서의 자기장 세기 값을 획득할 수 있다. 이때, 전자 장치는 제1 지점(501)에서의 자기장 세기 값을 기초로 제1 측위점(551)을 생성할 수 있다. As another example, the electronic device may obtain the magnetic field intensity value at the first point 501 by identifying the strength of magnetic fields occurring inside the first location using a magnetic field sensor. At this time, the electronic device may generate the first positioning point 551 based on the magnetic field intensity value at the first point 501.

본 개시의 일 실시예에 따르면, 전자 장치는 제1 장소 내부의 지점들을 이동하면서 센서 데이터를 획득함으로써 측위 데이터(550)를 구축할 수 있다. 이때, 전자 장치는 가속도 센서(또는 관성 센서, 자이로스코프 등)를 이용하여 측위 데이터(550)에 포함되는 측위점들 사이의 간격을 설정할 수 있다. 구체적으로, 전자 장치는 가속도 데이터를 이용하여 획득된 전자 장치의 이동에 연관된 속성(예: 이동 거리, 이동 방향, 이동 속도 등)을 기초로 측위점들 사이의 간격을 설정할 수 있다. 예를 들어, 전자 장치는 가속도 데이터를 기초로 걸음 수를 추정할 수 있고, 걸음 수를 기초로 측위점들 사이의 간격을 설정할 수 있다. 물론, 이에 한정되는 것은 아니고, 복수의 측위점들 사이의 간격은 임의로 설정될 수 있다. 즉, 제1 측위점 및 제2 측위점 사이의 간격은 제3 측위점 및 제4 측위점 사이의 간격과 상이할 수 있다. According to an embodiment of the present disclosure, the electronic device may construct positioning data 550 by acquiring sensor data while moving points within the first location. At this time, the electronic device may set the interval between positioning points included in the positioning data 550 using an acceleration sensor (or inertial sensor, gyroscope, etc.). Specifically, the electronic device may set the interval between location points based on properties related to the movement of the electronic device (e.g., movement distance, movement direction, movement speed, etc.) obtained using acceleration data. For example, the electronic device can estimate the number of steps based on acceleration data and set the interval between location points based on the number of steps. Of course, it is not limited to this, and the interval between a plurality of positioning points can be arbitrarily set. That is, the spacing between the first positioning point and the second positioning point may be different from the spacing between the third positioning point and the fourth positioning point.

측위 데이터(550)가 포함하는 복수의 측위점들은 사용자 디바이스가 위치할 수 있는 기준 위치를 정의할 수 있다. 구체적으로, 전자 장치는 실내 지도 데이터(500) 상에서 사용자가 위치 가능한 지점에 대한 정보를 반영하여 측위 데이터(550)를 생성할 수 있다. 전자 장치는 실내 지도 데이터(500) 상에서 사용자가 이동 가능한 경로에 대한 정보를 반영하여 측위 데이터(550)를 생성할 수 있다. 전자 장치는 실내 지도 데이터(500)에 포함된 복수의 물리적 구조물(physical structures)들 중 적어도 일부를 고려하여 측위 데이터(550)를 생성할 수 있다. A plurality of positioning points included in the positioning data 550 may define a reference position where the user device can be located. Specifically, the electronic device may generate positioning data 550 by reflecting information about a point where the user can be located on the indoor map data 500. The electronic device may generate positioning data 550 by reflecting information about a possible path for the user to move on the indoor map data 500. The electronic device may generate positioning data 550 by considering at least some of the plurality of physical structures included in the indoor map data 500.

전자 장치는 실내 지도 데이터(500)에 포함되는 관심 지점(POI) 정보를 반영하여 측위 데이터(550)를 획득할 수 있다. 측위 데이터(550)는 복수의 관심 지점들의 위치 정보, 복수의 관심 지점들이 차지하는 영역 정보 또는 복수의 관심 지점들의 상세 정보 중 적어도 하나를 반영한 복수의 측위점들을 포함할 수 있다. 복수의 측위점들의 위치는 복수의 관심 지점들의 위치 정보, 복수의 관심 지점들이 차지하는 영역 정보 또는 복수의 관심 지점들의 상세 정보 중 적어도 하나를 고려하여 결정될 수 있다. The electronic device may acquire positioning data 550 by reflecting point of interest (POI) information included in the indoor map data 500. The positioning data 550 may include a plurality of positioning points reflecting at least one of location information of a plurality of points of interest, area information occupied by the plurality of points of interest, or detailed information of the plurality of points of interest. The positions of the plurality of positioning points may be determined by considering at least one of location information of the plurality of points of interest, area information occupied by the plurality of points of interest, or detailed information of the plurality of points of interest.

예를 들어, 전자 장치는 제1 관심 지점(510)이 차지하는 영역을 나타내는 제1 관심 지점의 풋프린트(footprint. 511)를 기초로 측위점을 생성할 수 있다. 이때, 제1 관심 지점의 풋프린트(511)는 제1 관심 지점의 위치에 연관된 폴리곤(polygon) 영역을 나타낼 수 있으나, 이에 한정되지 않는다. 구체적으로, 전자 장치는 제1 관심 지점(510)의 풋프린트의 경계를 포함하는 소정 영역에는 측위점이 위치하지 않도록 측위 데이터(550)를 생성할 수 있다. For example, the electronic device may generate a location point based on the footprint 511 of the first point of interest 511, which indicates the area occupied by the first point of interest 510. At this time, the footprint 511 of the first point of interest may represent a polygon area related to the location of the first point of interest, but is not limited thereto. Specifically, the electronic device may generate the positioning data 550 so that the positioning point is not located in a predetermined area including the boundary of the footprint of the first point of interest 510.

또한, 예를 들어, 전자 장치는 제2 관심 지점(520)의 상세 정보를 기초로 제2 관심 지점(520)의 접근 가능 여부를 식별할 수 있다. 이 경우, 전자 장치는 제2 관심 지점(520)의 접근 가능 여부를 기초로 측위점을 생성할 수 있다. 구체적으로, 전자 장치는 일반인의 접근이 불가능한 제2 관심 지점(520)의 내부 영역(521)에는 측위점이 위치하지 않도록 측위 데이터(550)를 생성할 수 있다. 이때, 제2 관심 지점의 내부 영역(521)은 제2 관심 지점의 풋프린트의 경계를 기초로 정의되는 영역일 수 있다. Additionally, for example, the electronic device may identify whether the second point of interest 520 is accessible based on detailed information about the second point of interest 520 . In this case, the electronic device may generate a location point based on whether the second point of interest 520 is accessible. Specifically, the electronic device may generate positioning data 550 so that the positioning point is not located in the inner area 521 of the second point of interest 520 that is inaccessible to the general public. At this time, the inner area 521 of the second point of interest may be an area defined based on the boundary of the footprint of the second point of interest.

전자 장치는 실내 지도 데이터(500)에 포함되는 고정물(fixture, 예를 들어, 벽(wall) 또는 기둥(pillar) 등) 정보를 반영하여 측위 데이터(550)를 획득할 수 있다. 측위 데이터(550)는 복수의 고정물들의 위치 정보(또는 복수의 고정물들이 차지하는 영역 정보)를 반영한 복수의 측위점들을 포함할 수 있다. 복수의 측위점들의 위치는 복수의 고정물들의 위치 정보(또는 복수의 고정물들이 차지하는 영역 정보)를 고려하여 결정될 수 있다. The electronic device may acquire positioning data 550 by reflecting information about fixtures (eg, walls, pillars, etc.) included in the indoor map data 500. The positioning data 550 may include a plurality of positioning points reflecting the location information of a plurality of fixtures (or information on the area occupied by the plurality of fixtures). The positions of the plurality of positioning points may be determined by considering the position information of the plurality of fixtures (or information on the area occupied by the plurality of fixtures).

예를 들어, 전자 장치는 제1 고정물(530)의 위치 또는 제1 고정물(530)이 차지하는 영역(531)을 기초로 측위점을 생성할 수 있다. 구체적으로, 전자 장치는 제1 고정물(530)의 위치에 대응되는 영역에는 측위점이 위치하지 않도록 측위 데이터(550)를 생성할 수 있다. For example, the electronic device may generate a positioning point based on the location of the first fixture 530 or the area 531 occupied by the first fixture 530. Specifically, the electronic device may generate positioning data 550 so that the positioning point is not located in the area corresponding to the position of the first fixture 530.

전자 장치는 실내 지도 데이터(500)에 포함되는 구역(section) 정보를 반영하여 측위 데이터(550)를 획득할 수 있다. 여기서, 구역 정보는 실내 지도 데이터(500)에의 특정 구역에 대한 정보를 의미할 수 있다. 측위 데이터(550)는 복수의 구역들이 차지하는 영역 정보를 반영한 복수의 측위점들을 포함할 수 있다. 복수의 측위점들의 위치는 복수의 구역들이 차지하는 영역 정보를 고려하여 결정될 수 있다. The electronic device may acquire positioning data 550 by reflecting section information included in the indoor map data 500. Here, zone information may mean information about a specific zone in the indoor map data 500. Positioning data 550 may include a plurality of positioning points reflecting area information occupied by a plurality of zones. The positions of the plurality of positioning points may be determined by considering area information occupied by the plurality of areas.

예를 들어, 전자 장치는 제1 구역(535)이 차지하는 영역(536)을 기초로 측위점을 생성할 수 있다. 이때, 제1 구역(535)은 복수의 고정물들(예: 기둥)을 포함하는 영역을 나타낼 수 있고, 실내 지도 데이터(500)에 제1 구역에 대한 정보가 저장되어 있을 수 있다. 구체적으로, 전자 장치는 제1 구역이 차지하는 영역(536) 내부에는 측위점이 위치하지 않도록 측위 데이터(550)를 생성할 수 있다. For example, the electronic device may generate a positioning point based on the area 536 occupied by the first area 535. At this time, the first zone 535 may represent an area including a plurality of fixtures (eg, pillars), and information about the first zone may be stored in the indoor map data 500. Specifically, the electronic device may generate positioning data 550 so that the positioning point is not located inside the area 536 occupied by the first zone.

전자 장치는 실내 지도 데이터(500)에 포함되는 이동 가능한 객체(예: 책상, 의자, 어메니티(amenity) 등)에 대한 정보를 반영하지 않고 측위 데이터(550)를 획득할 수 있다. 측위 데이터(550)는 복수의 이동 가능한 객체들의 위치 정보(또는 복수의 이동 가능한 객체들이 차지하는 영역 정보)를 무시한 복수의 측위점들을 포함할 수 있다. 복수의 측위점들의 위치는 복수의 이동 가능한 객체들의 위치 정보(또는 복수의 이동 가능한 객체들이 차지하는 영역 정보)를 고려하지 않고 결정될 수 있다. The electronic device may acquire the positioning data 550 without reflecting information about movable objects (e.g., desks, chairs, amenities, etc.) included in the indoor map data 500. The positioning data 550 may include a plurality of positioning points ignoring the location information of the plurality of movable objects (or information on the area occupied by the plurality of movable objects). The positions of the plurality of positioning points may be determined without considering the position information of the plurality of movable objects (or information on the area occupied by the plurality of movable objects).

예를 들어, 전자 장치는 제1 객체(540)의 위치 또는 제1 객체(540)가 차지하는 영역을 고려하지 않고 측위점을 생성할 수 있다. 구체적으로, 전자 장치는 제1 객체(540)의 위치에 대응되는 영역에 측위점이 위치하도록 측위 데이터(550)를 생성할 수 있다. For example, the electronic device may generate a positioning point without considering the location of the first object 540 or the area occupied by the first object 540. Specifically, the electronic device may generate positioning data 550 so that the positioning point is located in an area corresponding to the position of the first object 540.

다만, 이에 한정되는 것은 아니고, 전자 장치는 이동 가능한 객체에 대한 정보를 고려하여 측위점을 생성할 수도 있다. 이 경우, 전자 장치는 이동 가능한 객체의 위치에 대응되는 영역에 측위점이 위치하지 않도록 측위 데이터를 생성할 수 있다. However, it is not limited to this, and the electronic device may generate a positioning point by considering information about a movable object. In this case, the electronic device may generate positioning data so that the positioning point is not located in an area corresponding to the position of the movable object.

전자 장치에 의해 생성되는 측위 데이터(550)는 실내 지도 데이터(500) 상의 적어도 일부 영역에 대응되는 측위점이 포함되지 않을 수 있다. 이는, 해당 영역에서 센서 데이터가 획득되지 않았기 때문일 수 있다. 이 경우, 전자 장치는 사용자 디바이스에 의해 해당 영역에서의 센서 데이터가 수신되는 경우, 수신한 센서 데이터를 기초로 측위점을 생성하여 측위 데이터를 갱신할 수 있다. 전자 장치의 측위 데이터의 업데이트 방법에 대한 구체적인 내용은 아래에서 설명하기로 한다. The positioning data 550 generated by the electronic device may not include positioning points corresponding to at least some areas on the indoor map data 500. This may be because sensor data was not acquired in that area. In this case, when sensor data in the corresponding area is received by the user device, the electronic device may update the positioning data by creating a positioning point based on the received sensor data. Details on how to update positioning data of an electronic device will be described below.

도 6은, 다양한 실시예들에 따른, 전자 장치가 측위 데이터 셋을 구축하는 방법을 나타내는 도면이다. FIG. 6 is a diagram illustrating a method by which an electronic device builds a positioning data set, according to various embodiments.

도 6의 (a)를 참조하면, 전자 장치는 실내 지도 데이터를 획득(S601)하고, 획득된 실내 지도 데이터를 기초로 측위 데이터를 구축(S602)할 수 있다. 이 경우, 전자 장치는 외부로부터 실내 지도 이미지를 수신함으로써 실내 지도 데이터를 획득할 수 있다. 또한, 전자 장치는 실내 지도 데이터에 포함되는 복수의 지점들에서 획득된 센서 데이터를 기초로 측위 데이터를 구축할 수 있다. Referring to (a) of FIG. 6, the electronic device may acquire indoor map data (S601) and construct positioning data based on the acquired indoor map data (S602). In this case, the electronic device can obtain indoor map data by receiving an indoor map image from outside. Additionally, the electronic device may construct positioning data based on sensor data acquired from a plurality of points included in indoor map data.

도 6의 (b)를 참조하면, 전자 장치는 실내 지도 데이터를 구축(S603)하고, 구축된 실내 지도 데이터를 기초로 측위 데이터를 구축(S604)할 수 있다. 이 경우, 전자 장치는 장소의 실내 지도를 복수의 폴리 라인들을 이용하여 생성함으로써 실내 지도 데이터를 획득할 수 있다. 또한, 전자 장치는 실내 지도 데이터에 포함되는 복수의 지점들에서 획득된 센서 데이터를 기초로 측위 데이터를 구축할 수 있다.Referring to (b) of FIG. 6, the electronic device may construct indoor map data (S603) and positioning data based on the constructed indoor map data (S604). In this case, the electronic device can obtain indoor map data by generating an indoor map of the place using a plurality of polylines. Additionally, the electronic device may construct positioning data based on sensor data acquired from a plurality of points included in indoor map data.

도 6의 (c)를 참조하면, 전자 장치는 실내 지도 데이터를 구축할 수 있다(S605). 또한, 전자 장치는 측위 데이터를 구축할 수 있다(S606). 이 경우, 전자 장치는 구축된 실내 지도 데이터를 기초로 측위 데이터를 구축할 수 있다. 또는, 전자 장치는 구축된 측위 데이터를 기초로 실내 지도 데이터를 구축할 수 있다. 보다 구체적으로, 전자 장치는 복수의 폴리 라인들을 이용하여 장소의 실내 지도를 생성함으로써 실내 지도 데이터를 구축할 수 있고, 구축된 실내 지도 데이터에 포함된 복수의 지점들에서 획득된 센서 데이터를 기초로 측위 데이터를 구축할 수 있다. 또는 전자 장치는 사용자 디바이스에 의해 획득되는 센서 데이터를 기반으로, 측위 데이터를 구축할 수 있고, 구축된 측위 데이터를 기초로 폴리 라인들을 생성하여 실내 지도 데이터를 구축할 수 있다. Referring to (c) of FIG. 6, the electronic device can construct indoor map data (S605). Additionally, the electronic device can construct positioning data (S606). In this case, the electronic device can construct positioning data based on the constructed indoor map data. Alternatively, the electronic device may construct indoor map data based on the established positioning data. More specifically, the electronic device can construct indoor map data by generating an indoor map of a place using a plurality of polylines, and based on sensor data acquired from a plurality of points included in the constructed indoor map data. Positioning data can be constructed. Alternatively, the electronic device may construct positioning data based on sensor data acquired by the user device, and may construct indoor map data by generating polylines based on the established positioning data.

본 개시의 상술한 기술적 사상들에 입각하여, 전자 장치는 서비스 제공자가 직접 측위 데이터를 구축하지 않더라도 사용자 디바이스로부터 획득된 데이터를 활용하여 자동으로 실내 지도 데이터 및 측위 데이터를 구축함으로써 실내 위치 서비스를 제공할 수 있다. Based on the above-described technical ideas of the present disclosure, the electronic device provides indoor location service by automatically constructing indoor map data and positioning data using data acquired from the user device even if the service provider does not directly establish positioning data. can do.

[실내 측위 알고리즘][Indoor positioning algorithm]

도 7은, 다양한 실시예들에 따른, 전자 장치가 실내 측위 데이터 셋을 이용하여 사용자 디바이스의 위치를 측정하기 위한 방법을 도시한 흐름도이다. FIG. 7 is a flowchart illustrating a method for an electronic device to measure the location of a user device using an indoor positioning data set, according to various embodiments.

도 7을 참조하면, 전자 장치는 실내 지도 데이터 및 측위 데이터를 포함하는 측위 데이터 셋을 획득할 수 있다(S701). 전자 장치는 사용자 디바이스의 어플리케이션 실행 동작에 대응하여 메모리로부터 측위 데이터 셋을 불러올 수 있다. Referring to FIG. 7, the electronic device can acquire a positioning data set including indoor map data and positioning data (S701). The electronic device may load a positioning data set from memory in response to an application execution operation of the user device.

또한, 전자 장치는 사용자 디바이스로부터 적어도 하나의 센서를 이용하여 획득된 제1 데이터 셋을 수신할 수 있다(S703). 예를 들어, 전자 장치는 무선 통신 센서를 이용하여 획득된 AP(access point) 데이터(및 BLE 데이터), 가속도 센서를 이용하여 획득된 가속도 데이터, 기압계를 이용하여 획득된 기압 데이터 또는 자기장 센서를 이용하여 획득된 자기장 데이터 중 적어도 하나를 포함하는 제1 데이터 셋을 수신할 수 있다. Additionally, the electronic device may receive a first data set obtained using at least one sensor from the user device (S703). For example, the electronic device uses access point (AP) data (and BLE data) acquired using a wireless communication sensor, acceleration data acquired using an acceleration sensor, barometric pressure data acquired using a barometer, or a magnetic field sensor. Thus, a first data set including at least one of the acquired magnetic field data can be received.

또한, 전자 장치는 측위 데이터 셋 및 제1 데이터 셋 중 적어도 하나를 기초로 적어도 하나의 위치 예측 값을 산출할 수 있다(S705). Additionally, the electronic device may calculate at least one location prediction value based on at least one of the positioning data set and the first data set (S705).

또한, 전자 장치는 적어도 하나의 위치 예측 값을 기초로 사용자 디바이스의 위치를 식별할 수 있다(S707)Additionally, the electronic device may identify the location of the user device based on at least one location prediction value (S707)

단계 S703 내지 단계 S707에 수반되는 상세 측위 알고리즘들에 대한 내용은 도 8에 대한 기재에서 상세히 설명한다. The detailed positioning algorithms involved in steps S703 to S707 are described in detail in the description of FIG. 8.

도 8은, 다양한 실시예들에 따른, 전자 장치에 의해 수행되는 다양한 종류의 측위 알고리즘들에 대해 설명하기 위한 도면이다. FIG. 8 is a diagram for explaining various types of positioning algorithms performed by an electronic device according to various embodiments.

도 8을 참조하면, 전자 장치는 복수의 측위 알고리즘들 중 적어도 일부를 이용하여 사용자 디바이스의 위치를 측정할 수 있다. 구체적으로, 전자 장치는 측위 알고리즘에 의해 산출된 예측 값을 기반으로 사용자 디바이스의 위치를 측정하거나, 복수의 측위 알고리즘들에 의해 산출된 예측 값들을 기초로 최종 예측 값을 산출하여 사용자 디바이스의 위치를 측정할 수 있다.Referring to FIG. 8, the electronic device may measure the location of the user device using at least some of a plurality of positioning algorithms. Specifically, the electronic device measures the location of the user device based on the predicted value calculated by a positioning algorithm, or calculates the final predicted value based on the predicted values calculated by a plurality of positioning algorithms to determine the location of the user device. It can be measured.

전자 장치는 AP 데이터를 제1 알고리즘(810)을 기초로 처리하여 제1 예측 값을 산출할 수 있다. 이때, AP 데이터는 사용자 디바이스로부터 수신함으로써 획득할 수 있다. 이때, AP 데이터는 통신 신호 강도(RSSI) 데이터, AP 위치 데이터(예: AP의 위치(gps) 좌표), AP의 MAC 주소 정보 또는 AP의 식별 정보 중 적어도 하나를 포함할 수 있다. 구체적으로, 전자 장치는 AP 데이터 및 미리 저장된 제1 측위 데이터(이때, 제1 측위 데이터는 복수의 측위점들을 포함함)를 기초로 제1 예측 값을 산출할 수 있다. 예를 들어, 전자 장치는 AP 데이터에 의해 식별되는 통신 신호 세기 값을 제1 측위 데이터와 비교함으로써 제1 예측 값을 산출할 수 있다. 이때, 전자 장치는 측위 데이터에 포함되는 복수의 측위점들 중 하나의 측위점의 위치를 기초로 제1 예측 값을 산출할 수 있다. The electronic device may calculate the first prediction value by processing the AP data based on the first algorithm 810. At this time, AP data can be obtained by receiving it from the user device. At this time, the AP data may include at least one of communication signal strength (RSSI) data, AP location data (e.g., location (gps) coordinates of the AP), MAC address information of the AP, or identification information of the AP. Specifically, the electronic device may calculate the first prediction value based on AP data and pre-stored first positioning data (here, the first positioning data includes a plurality of positioning points). For example, the electronic device may calculate the first prediction value by comparing the communication signal strength value identified by the AP data with the first positioning data. At this time, the electronic device may calculate the first prediction value based on the location of one positioning point among the plurality of positioning points included in the positioning data.

또한, 전자 장치는 자기장 데이터를 제2 알고리즘(820)을 기초로 처리하여 제2 예측 값을 산출할 수 있다. 구체적으로, 전자 장치는 사용자 디바이스로부터 수신한 자기장 데이터 및 미리 저장된 제2 측위 데이터를 기초로 제2 예측 값을 산출할 수 있다. Additionally, the electronic device may calculate the second prediction value by processing the magnetic field data based on the second algorithm 820. Specifically, the electronic device may calculate the second prediction value based on magnetic field data received from the user device and pre-stored second positioning data.

또한, 이에 한정되지 않고, 전자 장치는 제1 예측 값 및 자기장 데이터를 제2 알고리즘(820)을 기초로 처리하여 제2 예측 값을 산출할 수 있다. 구체적으로, 전자 장치는 AP 데이터를 이용하여 산출된 제1 예측 값을 자기장 데이터를 기초로 보정하여 보정된 제2 예측 값을 산출할 수 있다. Additionally, the electronic device is not limited to this, and may process the first prediction value and magnetic field data based on the second algorithm 820 to calculate the second prediction value. Specifically, the electronic device may calculate a corrected second prediction value by correcting the first prediction value calculated using AP data based on magnetic field data.

또한, 전자 장치는 가속도 데이터를 제3 알고리즘(830)을 기초로 처리하여 제3 예측 값을 산출할 수 있다. 이때, 제3 알고리즘(830)은 PDR 알고리즘을 포함할 수 있다. 본 개시에서 가속도 데이터를 처리하기 위해 구현되는 PDR 알고리즘은 당업자에게 공지된 일반적인 PDR 알고리즘의 기술적 특징이 그대로 적용될 수 있으므로, 상세한 내용은 생략하기로 한다. 또한, 전자 장치는 기압 데이터를 더 이용하여 제3 예측 값을 산출할 수 있다. 이 경우, 전자 장치는 층 정보를 포함하는 위치 예측 정보를 획득할 수 있다. Additionally, the electronic device may calculate a third prediction value by processing acceleration data based on the third algorithm 830. At this time, the third algorithm 830 may include a PDR algorithm. Since the technical features of general PDR algorithms known to those skilled in the art can be applied to the PDR algorithm implemented to process acceleration data in the present disclosure, detailed information will be omitted. Additionally, the electronic device may calculate a third prediction value by further using atmospheric pressure data. In this case, the electronic device can obtain location prediction information including floor information.

또한, 전자 장치는 궤적 데이터를 제4 알고리즘(840)을 기초로 처리하여 제4 예측 값을 산출할 수 있다. 이때, 궤적 데이터는 시간에 따른 사용자의 위치 데이터에 의해 나타나는 사용자의 궤적을 나타낼 수 있다. 예를 들어, 궤적 데이터는 소정의 시간 구간 동안 획득된 위치 데이터 셋을 포함할 수 있다. 전자 장치는 궤적 데이터를 미리 저장된 이동 가능 경로 데이터와 비교함으로써 제4 예측 값을 산출할 수 있다. 이때, 이동 가능 경로 데이터는 실내 지도 데이터 상에서 사용자가 이동이 가능한 경로를 나타낼 수 있다. 구체적으로, 이동 가능 경로 데이터는 실내 지도 데이터에 대응되는 측위 데이터에 포함된 복수의 측위점들 중 적어도 일부를 포함할 수 있다. 또한, 전자 장치는 실내 지도 데이터에 포함되는 복수의 물리적 구조물들을 고려하여 이동 가능 경로 데이터를 생성할 수 있다. Additionally, the electronic device may calculate the fourth prediction value by processing the trajectory data based on the fourth algorithm 840. At this time, the trajectory data may represent the user's trajectory indicated by the user's location data over time. For example, trajectory data may include a set of location data acquired over a predetermined time period. The electronic device may calculate the fourth prediction value by comparing trajectory data with pre-stored movable path data. At this time, the movable path data may indicate a path that the user can move on the indoor map data. Specifically, the movable path data may include at least some of a plurality of positioning points included in positioning data corresponding to indoor map data. Additionally, the electronic device may generate movable path data by considering a plurality of physical structures included in the indoor map data.

구체적인 예로, 전자 장치는 복수의 노드 및 링크로 구성된 이동 가능 경로 데이터를 획득할 수 있다. 또한, 전자 장치는 가속도 센서(또는 관성 센서 또는 자이로스코프)를 이용하여 궤적(trajectory) 데이터를 획득할 수 있다. 이 경우, 전자 장치는 궤적 데이터 및 이동 가능 경로 사이의 매칭 싱크로율을 기초로 사용자 디바이스의 위치 정보를 획득할 수 있다. As a specific example, the electronic device may acquire movable path data consisting of a plurality of nodes and links. Additionally, the electronic device may acquire trajectory data using an acceleration sensor (or inertial sensor or gyroscope). In this case, the electronic device may obtain location information of the user device based on the matching synchronization rate between the trajectory data and the possible movement path.

전자 장치는 제4 측위 알고리즘에 따른 위치 추정 동작이 수행하기 위한 조건이 설정되어 있을 수 있다. 구체적으로, 전자 장치는 특정 사용자 디바이스의 위치 데이터가 미리 정해진 볼륨 이상 획득된 경우, 제4 측위 알고리즘에 따라 위치 예측 값을 산출할 수 있다. 이는, 궤적 데이터를 획득하기 위해서는, 특정 사용자 디바이스의 위치 데이터가 소정 볼륨 이상 누적될 필요가 있기 때문이다.The electronic device may set conditions for performing a position estimation operation according to the fourth positioning algorithm. Specifically, when the location data of a specific user device is acquired more than a predetermined volume, the electronic device may calculate a location prediction value according to the fourth positioning algorithm. This is because, in order to obtain trajectory data, the location data of a specific user device needs to be accumulated over a certain volume.

또한, 전자 장치는 복수의 측위 알고리즘들을 이용하여 획득된 복수의 예측 값들을 가중 모델(850)을 기초로 처리하여 제5 예측 값을 산출할 수 있다. 이때, 가중 모델(850)은 복수의 예측 값들에 미리 정해진 가중치를 할당하도록 구현될 수 있다. 구체적으로, 전자 장치는 가중 모델(850)을 이용하여 복수의 예측 값들을 기초로 가중 합계(weighted sum)를 계산함으로써 제5 예측 값을 산출할 수 있다. Additionally, the electronic device may calculate a fifth prediction value by processing a plurality of prediction values obtained using a plurality of positioning algorithms based on the weighting model 850. At this time, the weighting model 850 may be implemented to assign predetermined weights to a plurality of prediction values. Specifically, the electronic device may calculate the fifth prediction value by calculating a weighted sum based on a plurality of prediction values using the weighting model 850.

이때, 복수의 예측 값들에 할당되는 가중치는 위치 예측에 대한 정확도(accuracy)를 기초로 설정될 수 있다. 예를 들어, 전자 장치는 AP 데이터를 기초로 획득된 제1 예측 값에 가장 높은 가중치를 할당할 수 있다. 이는, 무선 통신 세기를 기반으로 측정한 위치의 예측 정확도가 가장 높기 때문이다. 다만, 도 8에 명시적으로 도시되지는 않았지만, 전자 장치가 BLE 신호를 기반으로 위치 예측을 수행하는 경우, BLE 기반 예측 값에 가장 낮은 가중치를 할당할 수 있다. 이는, BLE 신호 세기를 기반으로 측정한 위치의 예측 정확도가 가장 낮기 때문이다. At this time, the weights assigned to the plurality of prediction values may be set based on the accuracy of the location prediction. For example, the electronic device may assign the highest weight to the first prediction value obtained based on AP data. This is because the prediction accuracy of the location measured based on wireless communication strength is the highest. However, although not explicitly shown in FIG. 8, when an electronic device performs location prediction based on a BLE signal, the lowest weight may be assigned to the BLE-based prediction value. This is because the prediction accuracy of the location measured based on BLE signal strength is the lowest.

또한, 전자 장치는 복수의 예측 값들에 할당되는 가중치를 조정할 수 있다. 구체적으로, 전자 장치는 복수의 예측 값들 중 정확도가 높은 예측 값에 높은 가중치가 할당되도록 가중치를 조정할 수 있다. Additionally, the electronic device may adjust weights assigned to a plurality of prediction values. Specifically, the electronic device may adjust the weight so that a higher weight is assigned to a prediction value with higher accuracy among a plurality of prediction values.

또한, 상술한 바와 같이 전자 장치가 측위 알고리즘을 이용하여 위치 측정을 수행할 수 있을 뿐만 아니라, 사용자 디바이스의 자체 프로세서에 의해 식별되는 위치 예측 값을 수신함으로써 위치 측정을 수행할 수 있다. Additionally, as described above, an electronic device can not only perform location measurement using a positioning algorithm, but also perform location measurement by receiving a location prediction value identified by the user device's own processor.

또한, 복수의 측위 알고리즘들 중 적어도 일부의 예측 값 산출 주기는 각각 상이하거나, 프로세서에 의해 상이하게 설정될 수 있다.Additionally, the prediction value calculation period of at least some of the plurality of positioning algorithms may be different from each other or may be set differently by the processor.

예를 들어, 전자 장치는 WiFi 신호를 스캔하여 획득된 Wifi 데이터를 기반으로 제1 주기로 예측 값을 산출할 경우, 전자 장치는 BLE 신호를 스캔하여 획득된 BLE 데이터를 기반으로 제1 주기보다 작은 제2 주기로 예측 값을 산출할 수 있다. 또한, 이 경우, 전자 장치는 가속도 데이터를 기반으로 제2 주기 보다 작은 제3 주기로 예측 값을 산출하도록 구현될 수 있다. 또한, 이 경우, 전자 장치는 자기장 데이터를 기반으로 제2 주기보다 작은 제4 주기로 예측 값을 산출할 수 있다. 또한, 이 경우, 전자 장치는 가속도 데이터 및/또는 기압 데이터를 기반으로 제2 주기보다 작은 제5 주기로 예측 값을 산출하도록 구현될 있다. 또한, 이 경우, 전자 장치는 궤적 데이터 및 이동 가능 경로 데이터를 기반으로 제2 주기보다 작은 제6 주기로 예측 값을 산출하도록 구현될 수 있다. For example, when the electronic device calculates a prediction value in a first period based on Wifi data acquired by scanning a WiFi signal, the electronic device calculates a prediction value in a first period smaller than the first period based on BLE data acquired by scanning a BLE signal. The predicted value can be calculated in 2 cycles. Additionally, in this case, the electronic device may be implemented to calculate the predicted value in a third period that is smaller than the second period based on acceleration data. Additionally, in this case, the electronic device may calculate the predicted value with a fourth period that is smaller than the second period based on the magnetic field data. Additionally, in this case, the electronic device may be implemented to calculate the predicted value in a fifth period that is smaller than the second period based on acceleration data and/or barometric pressure data. Additionally, in this case, the electronic device may be implemented to calculate the prediction value in a sixth period smaller than the second period based on trajectory data and possible movement path data.

[실내 측위 데이터 셋의 업데이트 방법][How to update indoor positioning data set]

본 개시의 일 실시예에 따른 전자 장치는 실내 측위 데이터 셋을 업데이트할 수 있다. 구체적으로, 전자 장치는 실내 환경의 변화를 식별함으로써 실내 측위 데이터 셋을 업데이트할 수 있다. 예를 들어, 전자 장치는 장소 내부의 물리적 구조물의 위치 변화를 식별함으로써 실내 측위 데이터 셋을 업데이트할 수 있다. 또한, 예를 들어, 전자 장치는 장소 내부의 적어도 하나의 관심 지점에 연관된 정보의 변화를 식별함으로써 실내 측위 데이터 셋을 업데이트할 수 있다. 또한, 예를 들어, 전자 장치는 실내 지도 데이터에 포함되지 않은 적어도 하나의 물리적 구조물을 식별함으로써 실내 측위 데이터 셋을 업데이트할 수 있다. An electronic device according to an embodiment of the present disclosure can update an indoor positioning data set. Specifically, the electronic device can update the indoor positioning data set by identifying changes in the indoor environment. For example, an electronic device can update an indoor localization data set by identifying changes in the positions of physical structures within a venue. Additionally, for example, the electronic device may update the indoor localization data set by identifying changes in information associated with at least one point of interest within the location. Additionally, for example, the electronic device may update the indoor positioning data set by identifying at least one physical structure that is not included in the indoor map data.

전자 장치는 실내 지도 데이터를 업데이트할 수 있다. 이 경우, 전자 장치는 실내 지도 데이터 상에서 업데이트가 필요한 조정 대상 구역을 식별할 수 있다. The electronic device may update indoor map data. In this case, the electronic device can identify an adjustment target area that needs to be updated on indoor map data.

또한, 전자 장치는 장소 내부에서 획득되는 데이터를 기반으로 측위 데이터 셋을 업데이트할 수 있다. Additionally, the electronic device can update the positioning data set based on data acquired inside the location.

도 9는, 다양한 실시예들에 따른, 전자 장치가 실내 지도 데이터를 업데이트하기 위한 일 예시를 도시한 도면이다. FIG. 9 is a diagram illustrating an example of an electronic device updating indoor map data, according to various embodiments.

도 9의 (a) 및 도 9의 (b)를 참조하면, 전자 장치는 제1 실내 지도 데이터(900a)를 업데이트함으로써 제2 실내 지도 데이터(900b)를 획득할 수 있다. Referring to Figures 9(a) and 9(b), the electronic device may obtain second indoor map data 900b by updating the first indoor map data 900a.

구체적으로, 전자 장치는 미리 저장된 이동 가능 경로 데이터와 적어도 하나의 사용자 디바이스의 실제 경로를 기초로 실내 지도 데이터를 업데이트할 수 있다. 이때, 이동 가능 경로 데이터는 실내 지도 데이터 내의 이동 가능한 경로를 나타낼 수 있다. 예를 들어, 제1 이동 가능 경로 데이터(910)는 제1 실내 지도 데이터(900a) 내에서 사용자 디바이스가 이동할 수 있는 복수의 경로들을 포함할 수 있다. Specifically, the electronic device may update indoor map data based on pre-stored movable route data and the actual route of at least one user device. At this time, the movable path data may indicate a movable path within indoor map data. For example, the first possible path data 910 may include a plurality of paths along which the user device can move within the first indoor map data 900a.

이동 가능 경로 데이터는 실내 지도 데이터에 포함되는 물리적 구조물들을 기초로 설정될 수 있다. 구체적으로, 전자 장치는 실내 지도 데이터에 포함되는 적어도 하나의 관심 지점을 기초로 이동 가능 경로 데이터를 생성할 수 있다. 전자 장치는 적어도 하나의 관심 지점이 차지하는 영역을 나타내는 적어도 하나의 관심 영역의 풋프린트(footprint)를 고려하여 이동 가능 경로 데이터를 생성할 수 있다. 보다 구체적으로, 전자 장치는 적어도 하나의 관심 지점의 풋프린트에 의해 정의되는 영역 내에 이동 경로가 연관되지 않도록 이동 가능 경로를 생성할 수 있다. 또한, 전자 장치는 적어도 하나의 관심 지점의 풋프린트의 경계로부터 소정 간격 이격되도록 이동 가능 경로 데이터(910)를 생성할 수 있다. 예를 들어, 전자 장치는 제1 관심 지점(940)의 풋프린트를 고려하여 제1 이동 가능 경로 데이터(910)를 생성할 수 있으나, 이에 한정되지 않는다. The movable path data may be set based on physical structures included in the indoor map data. Specifically, the electronic device may generate movable route data based on at least one point of interest included in indoor map data. The electronic device may generate movable path data by considering the footprint of at least one area of interest indicating the area occupied by at least one point of interest. More specifically, the electronic device may generate a movable path such that the movable path is not associated with an area defined by the footprint of at least one point of interest. Additionally, the electronic device may generate movable path data 910 to be spaced a predetermined distance from the boundary of the footprint of at least one point of interest. For example, the electronic device may generate the first possible movement path data 910 by considering the footprint of the first point of interest 940, but the present invention is not limited to this.

또한, 이동 가능 경로 데이터는 실내 지도 데이터에 대응되는 측위 데이터를 기초로 설정될 수 있다. 구체적으로, 전자 장치는 측위 데이터에 포함되는 복수의 측위점들 중 적어도 일부를 기초로 이동 가능 경로 데이터를 생성할 수 있다. 보다 구체적으로, 전자 장치는 복수의 측위점들 사이를 연결하는 복수의 링크들을 생성할 수 있고, 복수의 링크들을 기초로 이동 가능 경로 데이터를 생성할 수 있다. 예를 들어, 전자 장치는 제1 실내 지도 데이터(900a)에 대응되는 측위 데이터에 포함되는 복수의 측위점들(미도시) 중 적어도 일부를 기초로 제1 이동 가능 경로 데이터(910)를 생성할 수 있다. Additionally, movable path data may be set based on positioning data corresponding to indoor map data. Specifically, the electronic device may generate movable path data based on at least some of the plurality of positioning points included in the positioning data. More specifically, the electronic device may generate a plurality of links connecting a plurality of location points and generate movable path data based on the plurality of links. For example, the electronic device may generate the first movable path data 910 based on at least some of the plurality of positioning points (not shown) included in the positioning data corresponding to the first indoor map data 900a. You can.

적어도 하나의 사용자 디바이스의 실제 경로는 적어도 하나의 사용자 디바이스로부터 수신된 제1 데이터 셋을 기초로 식별될 수 있다. 이때, 제1 데이터 셋은 사용자 디바이스에 포함된 적어도 하나의 센서를 이용하여 획득된 센서 데이터 및 사용자 디바이스로부터 생성되는 위치 데이터를 포함할 수 있다. 예를 들어, 제1 데이터 셋은 사용자 디바이스로부터 수집된 AP(access point) 데이터, 가속도 데이터, 자기장 데이터, 기압 데이터 및 사용자 디바이스로부터 생성된 위치 데이터를 포함할 수 있으나, 이에 한정되지 않는다. The actual path of at least one user device may be identified based on a first data set received from the at least one user device. At this time, the first data set may include sensor data acquired using at least one sensor included in the user device and location data generated from the user device. For example, the first data set may include, but is not limited to, access point (AP) data collected from the user device, acceleration data, magnetic field data, barometric pressure data, and location data generated from the user device.

또한, 전자 장치는 제1 데이터 셋을 기초로 적어도 하나의 사용자 디바이스의 위치를 측정함으로써 적어도 하나의 사용자 디바이스의 실제 경로를 식별할 수 있다. 구체적으로, 전자 장치는 제1 데이터 셋, 제1 실내 지도 데이터 및 제1 실내 지도 데이터에 대응되는 제1 측위 데이터 중 적어도 하나를 기초로 적어도 하나의 사용자 디바이스의 위치를 식별할 수 있다. Additionally, the electronic device may identify the actual path of at least one user device by measuring the location of at least one user device based on the first data set. Specifically, the electronic device may identify the location of at least one user device based on at least one of the first data set, first indoor map data, and first positioning data corresponding to the first indoor map data.

또한, 전자 장치는 식별된 적어도 하나의 사용자 디바이스의 위치를 반영하는 제2 데이터 셋을 획득할 수 있다. 이때, 제2 데이터 셋은 적어도 하나의 사용자 디바이스의 위치 데이터로 구성된 트레이스 데이터 셋(trace data set)일 수 있다. 또는 제2 데이터 셋은 적어도 하나의 사용자 디바이스의 위치 데이터를 기초로 나타나는 궤적 데이터 셋(trajectory data set)일 수 있다. 이 경우, 전자 장치는 제2 데이터 셋을 기초로 적어도 하나의 사용자 디바이스의 실제 경로를 획득할 수 있다. 예를 들어, 전자 장치는 제1 실내 지도 데이터(900a) 상에서의 적어도 하나의 사용자 디바이스의 위치를 반영하는 제2 데이터 셋을 기초로 제1 실제 경로(920)를 획득할 수 있다. Additionally, the electronic device may obtain a second data set reflecting the location of at least one identified user device. At this time, the second data set may be a trace data set consisting of location data of at least one user device. Alternatively, the second data set may be a trajectory data set based on location data of at least one user device. In this case, the electronic device may obtain the actual path of at least one user device based on the second data set. For example, the electronic device may obtain the first actual path 920 based on a second data set reflecting the location of at least one user device on the first indoor map data 900a.

또한, 전자 장치는 미리 저장된 이동 가능 경로 데이터와 실제 경로를 비교함으로써 실내 지도 데이터 상에서 업데이트가 필요한 조정 대상 구역을 식별할 수 있다. 예를 들어, 전자 장치는 제1 실내 지도 데이터(900a) 상에서 미리 저장된 이동 가능 경로 데이터(910) 및 적어도 하나의 사용자 디바이스의 제1 실제 경로(920)를 비교함으로써 조정 대상 구역(930)을 식별할 수 있다. Additionally, the electronic device can identify an adjustment target area that needs to be updated on the indoor map data by comparing the pre-stored movable route data with the actual route. For example, the electronic device identifies the adjustment target area 930 by comparing the pre-stored movable route data 910 and the first actual route 920 of at least one user device on the first indoor map data 900a. can do.

일 예로, 전자 장치는 이동 가능 경로 데이터(910) 및 제1 실제 경로(920)를 구성하는 제2 데이터 셋 사이의 차이를 기초로 조정 대상 구역(930)을 식별할 수 있다. 구체적으로, 전자 장치는 이동 가능 경로 데이터(910)에 대응되는 위치 좌표 및 제1 실제 경로(920)에 대응되는 위치 좌표의 차이가 특정 영역에서 미리 정해진 임계치 이상인 경우, 상기 특정 영역을 조정 대상 구역(930)으로 결정할 수 있다. As an example, the electronic device may identify the adjustment target area 930 based on the difference between the movable path data 910 and the second data set constituting the first actual path 920. Specifically, when the difference between the position coordinates corresponding to the movable path data 910 and the position coordinates corresponding to the first actual path 920 is greater than a predetermined threshold in a specific area, the electronic device selects the specific area as an adjustment target area. It can be determined as (930).

이때, 전자 장치는 조정 대상 구역(930)을 식별하기 위한 시간적 조건을 설정할 수 있다. 구체적으로, 전자 장치는 이동 가능 경로 데이터(910) 및 제2 데이터 셋의 차이가 소정 시간 이상 지속되는 경우, 차이가 발생한 영역을 조정 대상 구역으로 지정할 수 있다. 반대로, 전자 장치는 이동 가능 경로 데이터(910) 및 제2 데이터 셋의 차이가 소정 시간 이후에 식별되지 않는 경우, 일시적인 변화로 판단하고 조정 대상 구역을 지정하지 않을 수 있다. At this time, the electronic device can set temporal conditions for identifying the adjustment target area 930. Specifically, when the difference between the movable path data 910 and the second data set persists for more than a predetermined time, the electronic device may designate the area where the difference occurs as the adjustment target area. Conversely, if the difference between the movable path data 910 and the second data set is not identified after a predetermined time, the electronic device may determine it to be a temporary change and not designate an adjustment target area.

조정 대상 구역을 식별하는 추가적인 방법에 대해서는 도 11의 기재를 통해 설명한다. Additional methods for identifying the adjustment target area will be explained through the description of FIG. 11.

또한, 전자 장치는 조정 대상 구역(930)에 연관된 적어도 하나의 파라미터를 조정함으로써 제1 실내 지도 데이터(900a)를 업데이트할 수 있고, 이에 따라, 제2 실내 지도 데이터(900b)를 획득할 수 있다. 이때, 적어도 하나의 파라미터는 실내 지도 데이터의 물리적 구조물에 연관된 특징(feature)을 포함할 수 있다. 예를 들어, 적어도 하나의 파라미터는 실내 지도 데이터의 폴리라인(poly-line)을 조정하기 위한 제1 파라미터, 실내 지도 데이터의 풋프린트(footprint)를 조정하기 위한 제2 파라미터, 실내 지도 데이터의 고정물(fixture)을 조정하기 위한 제3 파라미터, 실내 지도 데이터의 관심 지점 정보를 조정하기 위한 제4 파라미터 등을 포함할 수 있으나, 이에 한정되지 않는다. Additionally, the electronic device may update the first indoor map data 900a by adjusting at least one parameter related to the adjustment target area 930, and thereby obtain the second indoor map data 900b. . At this time, at least one parameter may include a feature related to the physical structure of the indoor map data. For example, the at least one parameter may include a first parameter for adjusting a poly-line of the indoor map data, a second parameter for adjusting the footprint of the indoor map data, and a fixture of the indoor map data. It may include a third parameter for adjusting the fixture, a fourth parameter for adjusting point of interest information of indoor map data, etc., but is not limited thereto.

일 예로, 전자 장치는 조정 대상 구역(930)에 포함된 복수의 폴리 라인(poly-line)들 중 적어도 일부를 조정함으로써 실내 지도 데이터를 업데이트할 수 있다. 다른 예로, 전자 장치는 조정 대상 구역(930)에 연관된 적어도 하나의 관심 지점에 대한 정보를 수정함으로써 실내 지도 데이터를 업데이트할 수 있다. As an example, the electronic device may update indoor map data by adjusting at least some of the plurality of poly-lines included in the adjustment target area 930. As another example, the electronic device may update indoor map data by modifying information about at least one point of interest associated with the adjustment target area 930.

전자 장치가 조정 대상 구역을 식별한 뒤 수행하는 추가적인 동작에 대한 내용은 도 12의 개시를 통해 설명한다. Additional operations performed by the electronic device after identifying the adjustment target area will be described with reference to FIG. 12 .

도 10은, 다양한 실시예들에 따른, 전자 장치가 실내 지도 데이터를 업데이트 하기 위한 일 예시를 도시한 흐름도이다. FIG. 10 is a flowchart illustrating an example of an electronic device updating indoor map data, according to various embodiments.

도 10을 참조하면, 전자 장치는 적어도 하나의 관심 지점을 포함하는 제1 장소 내에 위치하는 적어도 하나의 사용자 디바이스로부터 제1 데이터 셋을 수신할 수 있다(S1001). 이때, 제1 데이터 셋은 적어도 하나의 사용자 디바이스로부터 수집된 AP(access point) 데이터를 포함할 수 있다. 이때, AP 데이터는 적어도 하나의AP로부터 출력된 무선 통신 신호에 대응되는 적어도 하나의 세기 값을 나타낼 수 있으나, 이에 한정되지 않는다. 또한, 제1 데이터 셋은 적어도 하나의 사용자 디바이스로부터 생성된 위치 데이터를 포함할 수 있다. 또한, 제1 데이터 셋은 적어도 하나의 사용자 디바이스에 포함된 가속도 센서를 이용하여 획득된 가속도 데이터를 포함할 수 있다. Referring to FIG. 10, the electronic device may receive a first data set from at least one user device located in a first location including at least one point of interest (S1001). At this time, the first data set may include access point (AP) data collected from at least one user device. At this time, the AP data may represent at least one intensity value corresponding to a wireless communication signal output from at least one AP, but is not limited to this. Additionally, the first data set may include location data generated from at least one user device. Additionally, the first data set may include acceleration data obtained using an acceleration sensor included in at least one user device.

또한, 전자 장치는 제1 데이터 셋, 제1 장소에 대응되는 제1 실내 지도 데이터(indoor map data) 및 상기 제1 실내 지도 데이터에 대응되는 제1 측위 데이터 중 적어도 하나를 기초로 적어도 하나의 사용자 디바이스의 위치를 식별할 수 있다(S1002). 이때, 제1 실내 지도 데이터는 관심 지점에 대응되는 영역을 나타내는 풋프린트(footprint)를 포함할 수 있다. 또한, 제1 측위 데이터는 제1 실내 지도 데이터에 대응되는 복수의 측위점들을 포함하는 제1 측위점 셋을 포함할 수 있다. In addition, the electronic device may detect at least one user based on at least one of a first data set, first indoor map data corresponding to a first location, and first positioning data corresponding to the first indoor map data. The location of the device can be identified (S1002). At this time, the first indoor map data may include a footprint indicating an area corresponding to the point of interest. Additionally, the first positioning data may include a first positioning point set including a plurality of positioning points corresponding to the first indoor map data.

예를 들어, 전자 장치는 제1 데이터 셋에 포함된 위치 데이터를 기초로 적어도 하나의 사용자 디바이스의 제1 실내 지도 데이터 상에서의 위치를 식별할 수 있다. 또한, 예를 들어, 전자 장치는 제1 데이터 셋 및 상기 제1 측위 데이터를 비교함으로써 적어도 하나의 사용자 디바이스의 제1 실내 지도 데이터 상에서의 위치를 식별할 수 있다. 또한, 예를 들어, 전자 장치는 제1 데이터 셋 및 상기 제1 측위 데이터를 비교함으로써 상기 적어도 하나의 사용자 디바이스의 제1 실내 지도 데이터 상에서의 위치를 식별할 수 있다. For example, the electronic device may identify the location of at least one user device on the first indoor map data based on location data included in the first data set. Additionally, for example, the electronic device may identify the location of at least one user device on the first indoor map data by comparing the first data set and the first positioning data. Additionally, for example, the electronic device may identify the location of the at least one user device on the first indoor map data by comparing the first data set and the first positioning data.

또한, 전자 장치는 식별된 상기 적어도 하나의 사용자 디바이스의 위치를 반영하는 제2 데이터 셋을 메모리에 저장할 수 있다(S1003). 여기서, 제2 데이터 셋은 흔적 데이터 셋(trace data set) 또는 궤적 데이터 셋(trajectory data set) 등으로 표현될 수 있다. Additionally, the electronic device may store a second data set reflecting the location of the at least one identified user device in the memory (S1003). Here, the second data set may be expressed as a trace data set or a trajectory data set.

이때, 제2 데이터 셋은 적어도 하나의 사용자 디바이스의 제1 장소 내에서의 궤적을 기초로 획득될 수 있다. 보다 구체적으로, 전자 장치는 미리 정해진 시간 구간에 획득된 위치 예측 데이터를 기초로 적어도 하나의 사용자 디바이스의 궤적을 식별할 수 있고, 식별된 궤적을 기초로 제2 데이터 셋을 획득할 수 있다. 예를 들어, 전자 장치는 적어도 하나의 사용자 디바이스가 실내에 진입한 시점으로부터 현재 시점까지의 위치 예측 데이터를 기초로 제2 데이터 셋을 획득할 수 있다. 또는, 전자 장치는 적어도 하나의 사용자 디바이스가 현재 시점으로부터 제1 미리 정해진 시간 구간 전의 시점으로부터 현재 시점까지의 위치 예측 데이터를 기초로 제2 데이터 셋을 획득할 수 있다. At this time, the second data set may be obtained based on the trajectory of at least one user device within the first location. More specifically, the electronic device may identify the trajectory of at least one user device based on location prediction data acquired in a predetermined time period and obtain a second data set based on the identified trajectory. For example, the electronic device may obtain a second data set based on location prediction data from the time at least one user device enters the room to the current time. Alternatively, the electronic device may acquire a second data set based on location prediction data of at least one user device from a time point before the first predetermined time interval from the current time point to the current time point.

또한, 전자 장치는 제2 데이터 셋 및 미리 저장된 제1 이동 가능 경로 데이터를 기초로, 조정 대상 구역을 식별할 수 있다(S1004). 이때, 제1 이동 가능 경로 데이터는 제1 측위 데이터에 포함되는 복수의 측위점들 중 적어도 일부를 기초로 설정되거나 적어도 하나의 관심 지점의 풋프린트 및 제1 장소에 포함되는 적어도 하나의 고정물(fixture)의 위치를 고려하여 설정될 수 있다. 구체적으로, 전자 장치는 복수의 측위점들 중 일부를 서로 연결하는 복수의 링크를 생성함으로써 이동 가능 경로 데이터를 생성할 수 있다. 이 경우, 전자 장치는 측위점 사이를 연결하는 링크가 적어도 하나의 관심 지점의 풋프린트에 연관되지 않도록(예를 들어, 링크가 풋프린트 내부 영역을 통과하지 않도록 설정됨) 이동 가능 경로 데이터를 생성할 수 있다. 또한, 전자 장치는 측위점 사이를 연결하는 링크가 제1 장소에 포함되는 적어도 하나의 고정물에 연관되지 않도록(예를 들어, 링크가 고정물의 위치가 포함된 영역을 통과하지 않도록 설정됨) 이동 가능 경로 데이터를 생성할 수 있다. 즉, 이동 가능 경로 데이터는 제1 장소 내에서 적어도 하나의 사용자 디바이스에게 제공 가능한 복수의 경로들을 포함할 수 있다. Additionally, the electronic device may identify the area to be adjusted based on the second data set and the first movable path data stored in advance (S1004). At this time, the first possible movement path data is set based on at least some of the plurality of positioning points included in the first positioning data, or is set based on the footprint of at least one point of interest and at least one fixture included in the first location. ) can be set considering the location of. Specifically, the electronic device may generate movable path data by creating a plurality of links connecting some of the plurality of positioning points. In this case, the electronic device generates traversable path data such that the links connecting the positioning points are not associated with the footprint of at least one point of interest (e.g., the link is set not to pass through an area inside the footprint). can do. Additionally, the electronic device may be moved so that the link connecting the positioning points is not associated with at least one fixture included in the first location (for example, the link is set not to pass through an area containing the location of the fixture). Path data can be generated. That is, the movable path data may include a plurality of paths that can be provided to at least one user device within the first location.

도 11은, 다양한 실시예들에 따른, 전자 장치가 조정 대상 구역을 식별하는 구체적인 방법을 도시한 도면이다. FIG. 11 is a diagram illustrating a specific method for an electronic device to identify a zone to be adjusted, according to various embodiments.

도 11을 참조하면, 전자 장치는 제2 데이터 셋 및 이동 가능 경로 데이터 사이의 차이를 기초로 조정 대상 구역을 식별할 수 있다. 구체적으로, 전자 장치는 제2 데이터 셋 및 제1 이동 가능 경로 데이터 사이의 차이가 미리 정해진 기준을 만족하는 경우, 상기 미리 정해진 기준을 만족하는 제1 실내 지도 데이터 상의 적어도 일부 영역을 조정 대상 구역으로 식별할 수 있다(S1101).Referring to FIG. 11, the electronic device may identify an area to be adjusted based on the difference between the second data set and the movable path data. Specifically, when the difference between the second data set and the first possible movement path data satisfies a predetermined standard, the electronic device selects at least a portion of the area on the first indoor map data that satisfies the predetermined standard as an adjustment target area. Can be identified (S1101).

또한, 예를 들어, 전자 장치는 제2 데이터 셋에 포함되는 적어도 하나의 사용자 디바이스의 위치가 제1 관심 지점에 대응되는 제1 풋프린트 영역에 대응되는 경우, 상기 제1 관심 지점을 포함하는 영역을 조정 대상 구역으로 식별할 수 있다(S1102).Additionally, for example, if the location of at least one user device included in the second data set corresponds to a first footprint area corresponding to the first point of interest, the electronic device may select an area including the first point of interest. can be identified as the adjustment target area (S1102).

또한, 예를 들어, 전자 장치는 제2 데이터 셋에는 대응되지만, 제1 이동 가능 경로 데이터에는 대응되지 않는 제2 관심 지점을 포함하는 영역을 조정 대상 구역으로 식별할 수 있다(S1103).Additionally, for example, the electronic device may identify an area including a second point of interest that corresponds to the second data set but does not correspond to the first possible movement path data as the adjustment target area (S1103).

또한, 예를 들어, 전자 장치는 제2 데이터 셋에는 포함되지만 제1 이동 가능 경로 데이터에는 포함되지 않는 적어도 일부 영역을 상기 조정 대상 구역으로 식별할 수 있다(S1104).Additionally, for example, the electronic device may identify at least some areas included in the second data set but not included in the first movable path data as the adjustment target area (S1104).

도 12는, 다양한 실시예들에 따른, 전자 장치가 조정 대상 구역 식별 동작에 대응하여 수행할 수 있는 동작을 설명하기 위한 도면이다. FIG. 12 is a diagram illustrating operations that an electronic device can perform in response to an operation to identify an area to be adjusted, according to various embodiments.

도 12를 참조하면, 전자 장치는 조정 대상 구역의 식별 동작(S1004)에 대응하여, 제2 데이터 셋을 기초로 제1 측위 데이터에 포함된 복수의 측위점들 중 적어도 일부가 변경된 제2 측위 데이터를 획득할 수 있다(S1201).Referring to FIG. 12, in response to the identification operation (S1004) of the area to be adjusted, the electronic device generates second positioning data in which at least some of the plurality of positioning points included in the first positioning data have been changed based on the second data set. can be obtained (S1201).

또한, 전자 장치는 조정 대상 구역의 식별 동작(S1004)에 대응하여, 조정 대상 구역에 포함되는 적어도 하나의 폴리라인을 삭제함으로써 제2 실내 지도 데이터를 획득할 수 있다(S1202).Additionally, the electronic device may obtain second indoor map data by deleting at least one polyline included in the adjustment target area in response to the identification operation of the adjustment target area (S1004) (S1202).

또한, 전자 장치는 조정 대상 구역의 식별 동작(S1004)에 대응하여, 조정 대상 구역에 적어도 하나의 폴리 라인을 추가함으로써 제3 실내 지도 데이터를 획득할 수 있다(S1203).Additionally, the electronic device may acquire third indoor map data by adding at least one poly line to the adjustment target area in response to the identification operation of the adjustment target zone (S1004) (S1203).

또한, 전자 장치는 조정 대상 구역의 식별 동작(S1004)에 대응하여, 상기 제2 데이터 셋을 기초로 상기 제1 이동 가능 데이터의 적어도 일부가 조정된 제2 이동 가능 경로 데이터를 획득할 수 있다(S1204).Additionally, the electronic device may acquire second movable path data in which at least a portion of the first movable data is adjusted based on the second data set in response to the identification operation (S1004) of the adjustment target area (S1004). S1204).

또한, 전자 장치는 조정 대상 구역의 식별 동작(S1004)에 대응하여, 조정 대상 구역에 대한 정보를 적어도 하나의 사용자 디바이스에 제공할 수 있다(S1205).Additionally, the electronic device may provide information about the adjustment target zone to at least one user device in response to the identification operation of the adjustment target zone (S1004) (S1205).

본 개시의 일 실시예에 따른 전자 장치는 실내 위치 추정을 위한 측위 데이터를 복수의 사용자 디바이스들(예: API 사용 유저)에 배포한 뒤에도, 측위 데이터를 지속적으로 업데이트할 수 있다. The electronic device according to an embodiment of the present disclosure may continuously update the positioning data even after distributing the positioning data for indoor location estimation to a plurality of user devices (eg, users using API).

보다 구체적으로, 전자 장치는 실내 공간을 이용하는 복수의 사용자 디바이스들로부터 획득되는 센서 데이터를 수집할 수 있고, 수집된 센서 데이터의 변화량을 감지하여 측위 데이터를 업데이트할 사항을 통계적으로 검출할 수 있다. More specifically, the electronic device can collect sensor data obtained from a plurality of user devices using an indoor space, and can detect changes in the collected sensor data to statistically detect updates to the positioning data.

이에 따라, 전자 장치는 업데이트된 최신 실내 측위 데이터 복수의 사용자 디바이스들에게 자동 배포할 수 있다.Accordingly, the electronic device can automatically distribute the updated and latest indoor positioning data to a plurality of user devices.

도 13은, 다양한 실시예들에 따른, 전자 장치가 실내 측위 데이터 셋을 업데이트 하기 위한 다른 일 예시를 도시한 흐름도이다. FIG. 13 is a flowchart illustrating another example of an electronic device updating an indoor positioning data set, according to various embodiments.

도 13을 참조하면, 전자 장치는 적어도 하나의 관심 지점을 포함하는 제1 장소 내에 위치하는 적어도 하나의 사용자 디바이스로부터 제1 데이터 셋을 수신할 수 있다(S1301). 이때, 제1 데이터 셋은 적어도 하나의 사용자 디바이스로부터 수집된 AP데이터, 적어도 하나의 사용자 디바이스로부터 생성된 위치 데이터 및 적어도 하나의 사용자 디바이스로부터 획득된 가속도 데이터 등을 포함할 수 있으나, 이에 한정되지 않는다. Referring to FIG. 13, the electronic device may receive a first data set from at least one user device located in a first location including at least one point of interest (S1301). At this time, the first data set may include, but is not limited to, AP data collected from at least one user device, location data generated from at least one user device, and acceleration data obtained from at least one user device. .

제1 데이터 셋은 복수의 사용자 디바이스들 각각으로부터 수신된 복수의 서브 데이터 셋들을 포함하는 수집 데이터 셋(harvest dataset)으로 구성될 수 있다. 예를 들어, 전자 장치는 제1 사용자 디바이스로부터 수신된 제1 서브 데이터 셋, 제2 사용자 디바이스로부터 수신된 제2 서브 데이터 셋 및 제3 사용자 디바이스로부터 수신된 제3 서브 데이터 셋을 포함할 수 있으나, 이에 한정되지 않는다. The first data set may be comprised of a harvest dataset including a plurality of sub-data sets received from each of a plurality of user devices. For example, the electronic device may include a first sub-data set received from a first user device, a second sub-data set received from a second user device, and a third sub-data set received from a third user device. , but is not limited to this.

또한, 전자 장치는 제1 데이터 셋을 기초로 제1 장소에 대응되는 제1 실내 지도 데이터(indoor map data)에 대응되는 제1 측위 데이터의 적어도 하나의 속성을 조정하여 제2 측위 데이터를 획득할 수 있다(S1302). 이때, 제1 실내 지도 데이터는 복수의 폴리 라인들을 포함할 수 있다. 구체적으로, 제1 실내 지도 데이터는 복수의 폴리 라인들을 기초로 정의된 적어도 하나의 관심 지점의 풋프린트를 포함할 수 있다. 또한, 제1 측위 데이터는 제1 실내 지도 데이터에 대응되는 복수의 측위점들을 포함하는 제1 측위점 셋을 포함할 수 있다. In addition, the electronic device may obtain second positioning data by adjusting at least one attribute of the first positioning data corresponding to the first indoor map data corresponding to the first place based on the first data set. (S1302). At this time, the first indoor map data may include a plurality of polylines. Specifically, the first indoor map data may include a footprint of at least one point of interest defined based on a plurality of polylines. Additionally, the first positioning data may include a first positioning point set including a plurality of positioning points corresponding to the first indoor map data.

측위 데이터의 적어도 하나의 속성은 측위 데이터에 포함된 측위점의 수, 측위 데이터의 위치 속성(또는 측위점의 위치 속성) 또는 측위 데이터의 강도 속성(또는 측위점의 강도 속성)을 포함할 수 있으나, 이에 한정되지 않는다. 구체적으로, 측위 데이터의 위치 속성은 측위 데이터에 포함되는 복수의 측위점들 각각이 실내 지도 데이터 상에서 대응되는 위치를 의미할 수 있다. 또한, 측위 데이터의 강도 속성은 측위 데이터에 포함되는 복수의 측위점들 각각에 대응되는 무선 통신 신호 강도(RSS)를 의미할 수 있다. At least one attribute of the positioning data may include the number of positioning points included in the positioning data, a location attribute of the positioning data (or a position attribute of the positioning point), or an intensity attribute of the positioning data (or an intensity attribute of the positioning point). , but is not limited to this. Specifically, the location attribute of the positioning data may mean the location where each of a plurality of positioning points included in the positioning data corresponds to the indoor map data. Additionally, the strength attribute of the positioning data may mean the wireless communication signal strength (RSS) corresponding to each of a plurality of positioning points included in the positioning data.

이 경우, 전자 장치는 상기 제1 데이터 셋을 미리 정해진 조건에 따라 필터링할 수 있다. 구체적으로, 전자 장치는 적어도 하나의 사용자 디바이스로부터 수신된 제1 데이터 셋에서 노이즈 데이터를 제거함으로써 필터링된 제1 데이터 셋을 획득할 수 있다. 또한, 전자 장치는 필터링된 제1 데이터 셋을 이용하여 제1 측위 데이터를 업데이트하도록 설정될 수 있다. In this case, the electronic device may filter the first data set according to predetermined conditions. Specifically, the electronic device may obtain a filtered first data set by removing noise data from the first data set received from at least one user device. Additionally, the electronic device may be set to update the first positioning data using the filtered first data set.

또한, 전자 장치는 제1 실내 지도 데이터의 업데이트 필요 여부를 확인할 수 있다. 이는, 측위 데이터가 업데이트되더라도 실내 지도 데이터가 업데이트될 필요가 없는 상황이 있을 수 있기 때문이다. 구체적으로, 전자 장치는 측위 데이터의 업데이트로 인해 장소 내부의 물리적 구조물의 변화가 야기되었는지 여부를 기초로 실내 지도 업데이트 필요 여부를 확인할 수 있다. 예를 들어, 전자 장치는 단계 S1302의 동작을 수행한 이후에 실내 지도 데이터의 업데이트가 불필요하다고 판단되는 경우, 단계 S1301의 동작을 다시 수행할 수 있다. Additionally, the electronic device can check whether the first indoor map data needs to be updated. This is because there may be a situation where indoor map data does not need to be updated even if the positioning data is updated. Specifically, the electronic device can determine whether an indoor map update is necessary based on whether the update of the positioning data has caused a change in the physical structure inside the place. For example, if the electronic device determines that updating the indoor map data is unnecessary after performing the operation of step S1302, the electronic device may perform the operation of step S1301 again.

또한, 전자 장치는 제2 측위 데이터를 기초로 제1 실내 지도 데이터에서 수정이 필요한 제1 대상 구역을 식별할 수 있다(S1303).Additionally, the electronic device may identify the first target area that requires correction in the first indoor map data based on the second positioning data (S1303).

또한, 전자 장치는 제1 실내 지도 데이터를 기초로, 제1 대상 구역에 연관된 적어도 하나의 파라미터를 조정하여 제2 실내 지도 데이터 획득할 수 있다(S1304). Additionally, the electronic device may acquire second indoor map data by adjusting at least one parameter related to the first target area based on the first indoor map data (S1304).

도 14는, 다양한 실시예들에 따른, 전자 장치가 측위 데이터를 업데이트하기 위한 일 예시를 도시한 도면이다. 도 14의 (a) 및 도 14의 (b)를 참조하면, 전자 장치는 제1 측위 데이터(1400a)를 업데이트함으로써 제2 측위 데이터(1400b)를 획득할 수 있다. FIG. 14 is a diagram illustrating an example of an electronic device updating positioning data, according to various embodiments. Referring to Figures 14(a) and 14(b), the electronic device may obtain second positioning data 1400b by updating the first positioning data 1400a.

전자 장치는 적어도 하나의 사용자 디바이스의 위치를 기초로 측위 데이터를 업데이트할 수 있다. 전자 장치가 적어도 하나의 사용자 디바이스의 위치를 예측하는 방법은 상술하였으므로 생략하기로 한다. 이 경우, 전자 장치는 식별된 적어도 하나의 사용자 디바이스의 위치를 기초로 제1 측위 데이터(1400a)의 적어도 하나의 속성을 조정하여 제2 측위 데이터(1400b)를 획득할 수 있다.The electronic device may update positioning data based on the location of at least one user device. Since the method for an electronic device to predict the location of at least one user device has been described above, it will be omitted. In this case, the electronic device may acquire second positioning data 1400b by adjusting at least one attribute of the first positioning data 1400a based on the location of at least one identified user device.

도 14의 (a) 및 도 14의 (b)를 참조하면, 전자 장치는 적어도 하나의 사용자 디바이스로부터 수신한 데이터 셋을 기초로 적어도 하나의 사용자 디바이스의 위치를 나타내는 위치 데이터 셋(1410)을 획득할 수 있다. 예를 들어, 위치 데이터 셋(1410)은 제1 사용자 디바이스의 위치를 나타내는 제1 위치 데이터 및 제2 사용자 디바이스의 위치를 나타내는 제2 위치 데이터를 포함할 수 있으나, 이에 한정되지 않는다. Referring to FIGS. 14(a) and 14(b), the electronic device acquires a location data set 1410 indicating the location of at least one user device based on a data set received from at least one user device. can do. For example, the location data set 1410 may include, but is not limited to, first location data indicating the location of a first user device and second location data indicating the location of a second user device.

이때, 위치 데이터 셋(1410)은 측위점이 존재하지 않는 제1 영역(1420)에 대응될 수 있다. At this time, the location data set 1410 may correspond to the first area 1420 where no positioning point exists.

이 경우, 전자 장치는 위치 데이터 셋(1410)을 기초로 제1 측위 데이터(1400a)의 측위점 수와 연관된 속성을 조정하여 제2 측위 데이터(1400b)를 획득할 수 있다. 전자 장치는 위치 데이터 셋(1410)을 기초로 측위점이 존재하지 않는 제1 영역(1410)에 측위점을 추가함으로써 제2 측위 데이터(1400b)를 획득할 수 있다. 구체적으로, 전자 장치는 상기 제1 영역(1410) 내부에 위치하는 적어도 하나의 사용자 디바이스로부터 AP 데이터를 수신할 수 있고, 수신된 AP 데이터를 기초로 상기 제1 영역(1410) 내부에 적어도 하나의 측위점(1430)을 생성하여 제2 측위 데이터(1400b)를 획득할 수 있다. 이때, 제2 측위 데이터(1400b)에 포함된 복수의 측위점들의 수는 제1 측위 데이터(1400a)에 포함된 복수의 측위점들의 수 보다 클 수 있다.In this case, the electronic device may obtain the second positioning data 1400b by adjusting the attributes associated with the number of positioning points of the first positioning data 1400a based on the position data set 1410. The electronic device may acquire second positioning data 1400b by adding a positioning point to the first area 1410 where no positioning point exists based on the position data set 1410. Specifically, the electronic device may receive AP data from at least one user device located inside the first area 1410, and at least one user device located inside the first area 1410 based on the received AP data. Second positioning data 1400b can be obtained by creating a positioning point 1430. At this time, the number of positioning points included in the second positioning data 1400b may be greater than the number of positioning points included in the first positioning data 1400a.

이때, 제1 영역(1420)은 제1 관심 지점(1420)에 연관될 수 있다. 예를 들어, 제1 영역(1420)은 제1 관심 지점(1420) 내부 영역에 포함될 수 있다. At this time, the first area 1420 may be related to the first point of interest 1420. For example, the first area 1420 may be included in an area inside the first point of interest 1420.

이 경우, 전자 장치는 제1 관심 지점(1420)에 대응되는 영역 내부에 위치하는 적어도 하나의 사용자 디바이스로부터 AP 데이터를 수신할 수 있고, 수신된 AP 데이터를 기초로 상기 제1 관심 지점(1420)에 대응되는 영역 내부에 적어도 하나의 측위점(1430)을 생성하여 제2 측위 데이터(1400b)를 획득할 수 있다. In this case, the electronic device may receive AP data from at least one user device located inside an area corresponding to the first point of interest 1420, and determine the first point of interest 1420 based on the received AP data. Second positioning data 1400b can be obtained by creating at least one positioning point 1430 inside the area corresponding to .

이를 통해, 전자 장치는 사용자로부터 획득한 데이터를 기반으로 측위점이 구축되지 않은 영역에 데이터를 보충하여 보다 정확한 측위 데이터를 구축할 수 있다. 또는, 전자 장치는 사용자 디바이스로부터 획득한 데이터를 기반으로 출입이 통제되어 있던 관심 지점이 출입이 가능해진 것으로 판단하여 관심 지점에 대한 정보를 자동으로 업데이트할 수 있다. Through this, the electronic device can build more accurate positioning data by supplementing data in areas where positioning points have not been established based on data obtained from the user. Alternatively, the electronic device may determine that a point of interest whose access was restricted has become accessible based on data obtained from the user device and automatically update information about the point of interest.

전자 장치는 제2 측위 데이터(1400b)를 기초로 실내 지도 데이터를 업데이트할 수 있다. 구체적으로, 전자 장치는 측위 데이터가 제2 측위 데이터(1400b)로 업데이트됨에 따라 실내 공간에 연관된 정보가 변화된 경우, 실내 지도 데이터를 업데이트할 수 있다. The electronic device may update indoor map data based on the second positioning data 1400b. Specifically, the electronic device may update indoor map data when information related to the indoor space changes as the positioning data is updated with the second positioning data 1400b.

예를 들어, 전자 장치는 제1 관심 지점(1420) 내부 영역에 적어도 하나의 측위점(1430)이 생성된 경우, 상기 제1 관심 지점(1420)에 대응되는 영역을 대상 구역으로 식별할 수 있다. 또한, 전자 장치는 상기 대상 구역으로 식별된 제1 관심 지점(1420)에 대한 정보를 업데이트함으로써 실내 지도 데이터를 업데이트할 수 있다. 구체적인 예로, 전자 장치는 출입이 통제된 상태로 지정된 제1 관심 지점(1420)을 출입이 가능한 상태로 업데이트할 수 있다. 또는, 전자 장치는 공사 중인 상태로 지정된 제1 관심 지점(1420)을 공사가 완료된 상태로 업데이트할 수 있다. For example, when at least one positioning point 1430 is created in an area inside the first point of interest 1420, the electronic device may identify the area corresponding to the first point of interest 1420 as the target area. . Additionally, the electronic device may update indoor map data by updating information about the first point of interest 1420 identified as the target area. As a specific example, the electronic device may update the first point of interest 1420, which is designated as access-controlled, to a state where access is possible. Alternatively, the electronic device may update the first point of interest 1420, which is designated as under construction, to a state where construction is completed.

도 15는, 다양한 실시예들에 따른, 전자 장치가 측위 데이터를 업데이트하기 위한 다른 일 예시를 도시한 도면이다. 도 15의 (a) 및 도 15의 (b)를 참조하면, 전자 장치는 제1 측위 데이터(1500a)를 업데이트함으로써 제2 측위 데이터(1500b)를 획득할 수 있다. FIG. 15 is a diagram illustrating another example of an electronic device updating positioning data, according to various embodiments. Referring to Figures 15(a) and 15(b), the electronic device may obtain second positioning data 1500b by updating the first positioning data 1500a.

전자 장치는 상술한 방식에 따라 식별된 위치가 보정되어 보정된 위치 데이터를 획득하는 경우, 보정된 위치 데이터를 기초로 측위 데이터를 업데이트할 수 있다. When the identified location is corrected according to the method described above and corrected location data is obtained, the electronic device may update the positioning data based on the corrected location data.

일 예로, 전자 장치는 적어도 하나의 측위 알고리즘을 이용하여 보정된 위치 데이터를 획득할 수 있다. 측위 알고리즘에 대한 구체적인 내용은 상술하였으므로 생략하기로 한다. 예를 들어, 전자 장치는 제1 측위 알고리즘을 이용하여 제1 위치 데이터(1510)를 획득한 뒤, 제1 측위 알고리즘 보다 정확도가 높은 제2 측위 알고리즘을 이용하여 제2 위치 데이터를 획득하는 경우, 제2 위치 데이터를 기초로 제1 위치 데이터를 보정하여 보정된 위치 데이터(1520)를 획득할 수 있다. As an example, the electronic device may acquire corrected location data using at least one positioning algorithm. Since the specific details of the positioning algorithm have been described above, they will be omitted. For example, when the electronic device acquires first position data 1510 using a first positioning algorithm and then acquires second position data using a second positioning algorithm with higher accuracy than the first positioning algorithm, Corrected location data 1520 may be obtained by correcting the first location data based on the second location data.

다른 예로, 전자 장치는 미리 정해진 위치 보정 알고리즘을 이용하여 보정된 위치 데이터를 획득할 수 있다. 보정 알고리즘에 대한 구체적인 내용은 아래(도 31 내지 도 35)에서 설명하기로 한다. 예를 들어, 전자 장치는 위치 정확도가 높은 다른 사용자 디바이스의 위치 데이터를 기초로 보정된 위치 데이터(1520)를 획득할 수 있다. As another example, the electronic device may obtain corrected position data using a predetermined position correction algorithm. Specific details about the correction algorithm will be described below (FIGS. 31 to 35). For example, the electronic device may obtain corrected location data 1520 based on location data of another user device with high location accuracy.

또 다른 예로, 전자 장치는 적어도 하나의 사용자 디바이스로부터 위치 보정 입력을 수신함으로써 보정된 위치 데이터를 획득할 수 있다. As another example, the electronic device may obtain corrected location data by receiving a location correction input from at least one user device.

이때, 전자 장치는 제1 측위 데이터(1500a)에 포함되는 복수의 측위점들 중 보정된 위치 데이터(1520)에 대응되는 영역(1530)에 포함되는 적어도 하나의 측위점의 적어도 하나의 속성을 조정하여 제2 측위 데이터(1500b)를 획득할 수 있다. 구체적으로, 전자 장치는 보정된 위치 데이터(1520)에 대응되는 영역(1530)에 포함되는 적어도 하나의 측위점의 강도 속성을 조정하여 제2 측위 데이터(1500b)를 획득할 수 있다. At this time, the electronic device adjusts at least one attribute of at least one positioning point included in the area 1530 corresponding to the corrected positioning data 1520 among the plurality of positioning points included in the first positioning data 1500a. Thus, second positioning data 1500b can be obtained. Specifically, the electronic device may acquire second positioning data 1500b by adjusting the intensity properties of at least one positioning point included in the area 1530 corresponding to the corrected positioning data 1520.

전자 장치는 보정된 위치 데이터(1520)에 대응되는 영역(1530)에 위치하는 적어도 하나의 사용자 디바이스로부터 AP 데이터를 수신할 수 있고, 수신된 AP 데이터를 기초로 상기 영역(1530) 내부의 적어도 하나의 측위 점의 강도 속성을 조정할 수 있다. 여기서, 전자 장치는 측위점이 포함하는 적어도 하나의 AP에 대응되는 통신 신호 강도 정보를 수정함으로써 측위점의 강도 속성을 조정할 수 있다. The electronic device may receive AP data from at least one user device located in the area 1530 corresponding to the corrected location data 1520, and at least one user device within the area 1530 based on the received AP data. The strength properties of the positioning point can be adjusted. Here, the electronic device can adjust the strength properties of the positioning point by modifying communication signal strength information corresponding to at least one AP included in the positioning point.

이는, 전자 장치가 위치 보정에 의해 해당 영역(1530)에서의 위치 정확도가 떨어지는 것을 인지함에 따라 위치 정확도를 높이기 위해 측위점의 강도 속성을 조정하는 것이다. 이를 통해, 측위 데이터를 이용한 위치 예측의 정확도를 계속해서 확보할 수 있는 것이다. This means that the electronic device recognizes that the location accuracy in the corresponding area 1530 is reduced due to location correction and adjusts the intensity properties of the location point to increase location accuracy. Through this, the accuracy of location prediction using positioning data can be continuously secured.

또한, 전자 장치는 보정된 위치 데이터에 대응되는 영역(1530)을 실내 지도 데이터의 업데이트가 필요한 제1 대상 구역으로 설정할 수 있다. 이 경우, 전자 장치는 실내 지도 데이터 상에서 제1 대상 구역에 대응되는 영역의 적어도 하나의 파라미터를 조정함으로써 실내 지도 데이터를 업데이트할 수 있다. 이때, 적어도 하나의 파라미터는 실내 지도 데이터의 물리적 구조물에 연관된 특징(feature)을 포함할 수 있다. 예를 들어, 적어도 하나의 파라미터는 실내 지도 데이터의 폴리라인(poly-line)을 조정하기 위한 제1 파라미터, 실내 지도 데이터의 풋프린트(footprint)를 조정하기 위한 제2 파라미터, 실내 지도 데이터의 고정물(fixture)을 조정하기 위한 제3 파라미터, 실내 지도 데이터의 관심 지점 정보를 조정하기 위한 제4 파라미터 등을 포함할 수 있으나, 이에 한정되지 않는다. Additionally, the electronic device may set the area 1530 corresponding to the corrected location data as the first target area where indoor map data needs to be updated. In this case, the electronic device may update the indoor map data by adjusting at least one parameter of an area corresponding to the first target area on the indoor map data. At this time, at least one parameter may include a feature related to the physical structure of the indoor map data. For example, the at least one parameter may include a first parameter for adjusting a poly-line of the indoor map data, a second parameter for adjusting the footprint of the indoor map data, and a fixture of the indoor map data. It may include a third parameter for adjusting the fixture, a fourth parameter for adjusting point of interest information of indoor map data, etc., but is not limited thereto.

도 16은, 다양한 실시예들에 따른, 전자 장치가 측위 데이터를 업데이트하기 위한 또 다른 일 예시를 도시한 도면이다. 도 16의 (a) 및 도 16의 (b)를 참조하면, 전자 장치는 제1 측위 데이터(1600a)를 업데이트함으로써 제2 측위 데이터(1600b)를 획득할 수 있다. FIG. 16 is a diagram illustrating another example of an electronic device updating positioning data, according to various embodiments. Referring to Figures 16(a) and 16(b), the electronic device may obtain second positioning data 1600b by updating the first positioning data 1600a.

전자 장치는 제1 측위 데이터(1600a)에 포함되는 복수의 측위점들 중 적어도 일부의 위치 속성이 조정됨에 따라 제2 측위 데이터(1600b)를 획득할 수 있다. 구체적으로, 전자 장치는 실내 공간에 존재하는 복수의 사용자 디바이스들로부터 수집 데이터 셋(harvest dataset)을 획득할 수 있고, 수집 데이터 셋을 기초로 측위 데이터 셋을 업데이트할 수 있다. 이때, 측위 데이터 셋에 포함되는 적어도 일부의 측위점들의 실내 지도 데이터 상에서의 대응되는 위치가 상이해질 수 있다. The electronic device may acquire the second positioning data 1600b as the location properties of at least some of the plurality of positioning points included in the first positioning data 1600a are adjusted. Specifically, the electronic device can acquire a harvest dataset from a plurality of user devices existing in an indoor space, and update the positioning data set based on the harvest dataset. At this time, the corresponding positions of at least some of the positioning points included in the positioning data set on the indoor map data may be different.

예를 들어, 제1 측위 데이터(1600a)는 특정 영역(1610) 내부에 대응되는 적어도 하나의 측위점을 포함할 수 있다. 이때, 특정 영역(1610) 내부에 대응되는 적어도 하나의 측위점의 위치 속성이 조정됨에 따라, 제2 측위 데이터(1600b)는 상기 특정 영역(1610) 내부에 대응되는 측위점을 포함하지 않을 수 있다. For example, the first positioning data 1600a may include at least one positioning point corresponding to the inside of the specific area 1610. At this time, as the location properties of at least one positioning point corresponding to the inside of the specific area 1610 are adjusted, the second positioning data 1600b may not include the positioning point corresponding to the inside of the specific area 1610. .

또는 전자 장치는 제1 측위 데이터에 포함되는 복수의 측위점들 중 적어도 일부가 삭제됨에 따라 제2 측위 데이터를 획득할 수 있다. 예를 들어, 전자 장치는 특정 영역(1610) 내부에 대응되는 적어도 하나의 측위점이 삭제됨에 따라 제2 측위 데이터를 획득할 수 있다. 이 경우, 제1 측위 데이터에 포함되는 측위점의 수는 제2 측위 데이터에 포함되는 측위점의 수 보다 클 수 있다. Alternatively, the electronic device may acquire second positioning data as at least some of the plurality of positioning points included in the first positioning data are deleted. For example, the electronic device may acquire second positioning data as at least one positioning point corresponding to the inside of the specific area 1610 is deleted. In this case, the number of positioning points included in the first positioning data may be greater than the number of positioning points included in the second positioning data.

이는, 특정 영역(1610)에 대응되는 실내 공간 상에 물리적 구조물(예: 고정물 등)이 배치되어 특정 영역(1610)에 대응되는 위치에 사용자가 위치할 수 없기 때문일 수 있다. 즉, 특정 영역(1610)에 대응되는 위치에서 사용자 디바이스로부터 데이터가 수신되지 않음에 따라, 전자 장치는 특정 영역(1610)에 대응되는 위치에 물리적 구조물의 존재를 판단할 수 있는 것이다. This may be because physical structures (eg, fixtures, etc.) are placed in the indoor space corresponding to the specific area 1610, making it impossible for the user to be located at the location corresponding to the specific area 1610. That is, as data is not received from the user device at a location corresponding to the specific area 1610, the electronic device can determine the presence of a physical structure at a location corresponding to the specific area 1610.

도 17은, 다양한 실시예들에 따른, 전자 장치가 실내 지도 데이터를 업데이트하는 일 예시를 도시한 도면이다. 도 17의 (a) 및 도 17의 (b)를 참조하면, 전자 장치는 도 16의(a)의 제1 측위 데이터(1600a) 대응되는 제1 실내 지도 데이터(1700a)를 기초로 도 16의 (b)의 제2 측위 데이터(1600b)에 대응되는 제2 실내 지도 데이터(1700b)를 획득할 수 있다.FIG. 17 is a diagram illustrating an example of an electronic device updating indoor map data, according to various embodiments. Referring to FIGS. 17(a) and 17(b), the electronic device determines the location of FIG. 16 based on the first indoor map data 1700a corresponding to the first positioning data 1600a of FIG. 16(a). Second indoor map data 1700b corresponding to the second positioning data 1600b in (b) can be obtained.

전자 장치는 속성이 조정된 적어도 일부의 측위점들을 포함하는 특정 영역을 기초로 실내지도 데이터의 수정이 필요한 제1 대상 구역(1710)을 식별할 수 있다. The electronic device may identify a first target area 1710 in which indoor map data needs to be modified based on a specific area including at least some location points whose properties have been adjusted.

전자 장치는 제1 실내 지도 데이터(1700a)의 대상 구역(1710)에 대응되는 적어도 하나의 파라미터를 조정함으로써 제2 실내 지도 데이터(1700b)를 획득할 수 있다. 예를 들어, 전자 장치는 대상 구역(1710)에 적어도 하나의 폴리 라인을 추가하도록 적어도 하나의 파라미터를 조정할 수 있다. 구체적으로, 전자 장치는 대상 구역(1710)에 적어도 하나의 폴리라인을 추가함으로써 풋프린트(1720)를 생성할 수 있다. 또한, 이 경우, 전자 장치는 풋프린트(1720)에 대응되는 관심 지점에 대한 정보를 생성함으로써 제2 실내 지도 데이터(1700b)를 획득할 수 있다. 이때, 관심 지점에 대한 정보는 적어도 하나의 사용자 디바이스로부터 수신할 수 있다. The electronic device may obtain the second indoor map data 1700b by adjusting at least one parameter corresponding to the target area 1710 of the first indoor map data 1700a. For example, the electronic device may adjust at least one parameter to add at least one polyline to the target area 1710. Specifically, the electronic device may generate the footprint 1720 by adding at least one polyline to the target area 1710. Additionally, in this case, the electronic device may obtain the second indoor map data 1700b by generating information about the point of interest corresponding to the footprint 1720. At this time, information about the point of interest may be received from at least one user device.

전자 장치는 대상 구역(1710)에 대응되는 적어도 하나의 측위점의 위치 속성을 기초로 풋프린트(1720)를 생성할 수 있다. 구체적으로, 전자 장치는 풋프린트(1720) 내부 영역에 측위점이 포함되지 않도록 풋프린트(1720)를 생성할 수 있다. 예를 들어, 도 16의 (b)를 다시 참조하면, 전자 장치는 적어도 하나의 측위점에 의해 둘러싸인 특정 영역(1620)에 대응되는 형상으로 풋프린트(1720)를 생성할 수 있다. The electronic device may generate the footprint 1720 based on the location properties of at least one location point corresponding to the target area 1710. Specifically, the electronic device may generate the footprint 1720 so that the internal area of the footprint 1720 does not include a location point. For example, referring again to (b) of FIG. 16 , the electronic device may generate a footprint 1720 in a shape corresponding to a specific area 1620 surrounded by at least one location point.

즉, 전자 장치는 측위 데이터의 위치 분포를 기반으로 실내 지도 데이터에 포함되는 물리적 구조물들의 특징을 식별할 수 있다. 이를 통해, 전자 장치는 측위 데이터가 업데이트되는 경우, 이를 기반으로 실내 지도 데이터를 자동으로 업데이트할 수 있다. That is, the electronic device can identify the characteristics of physical structures included in the indoor map data based on the location distribution of the positioning data. Through this, when the positioning data is updated, the electronic device can automatically update the indoor map data based on it.

도 18은, 다양한 실시예들에 따른, 전자 장치가 실내 측위 데이터 셋을 업데이트하기 위한 또 다른 일 예시를 도시한 도면이다. 도 18의 (a) 및 도 18의 (b)를 참조하면, 전자 장치는 측위 데이터(1800)를 기초로 실내 지도 데이터(1850)를 업데이트할 수 있다. FIG. 18 is a diagram illustrating another example of an electronic device updating an indoor positioning data set, according to various embodiments. Referring to FIGS. 18(a) and 18(b) , the electronic device may update indoor map data 1850 based on the positioning data 1800.

전자 장치는 측위 데이터에 포함되는 복수의 측위점들 중 적어도 일부의 강도 속성이 조정됨에 따라 갱신된 측위 데이터(1800)를 획득할 수 있다. 구체적으로, 전자 장치는 적어도 일부의 측위점들에 연관되는 적어도 하나의 AP에 대응되는 통신 신호 강도가 조정됨에 따라 갱신된 측위 데이터(1800)를 획득할 수 있다. The electronic device may obtain updated positioning data 1800 as the intensity properties of at least some of the plurality of positioning points included in the positioning data are adjusted. Specifically, the electronic device may obtain updated positioning data 1800 as the communication signal strength corresponding to at least one AP associated with at least some of the positioning points is adjusted.

이때, 전자 장치는 강도 속성이 조정된 적어도 하나의 측위점을 포함하는 특정 영역(1810)을 식별함으로써 실내 지도 데이터 상에서 업데이트할 대상 구역(1860)을 식별할 수 있다. At this time, the electronic device may identify a target area 1860 to be updated on the indoor map data by identifying a specific area 1810 including at least one location point whose intensity properties have been adjusted.

예를 들어, 전자 장치는 특정 영역(1810)이 제1 관심 지점에 연관되는 경우, 제1 관심 지점에 대응되는 영역을 대상 구역(1860)으로 결정할 수 있다. 구체적으로, 전자 장치는 특정 영역(1810)이 제1 관심 지점에 대응되는 영역에 포함되는 경우, 제1 관심 지점에 대응되는 영역을 대상 구역(1860)으로 결정할 수 있다. 또한, 전자 장치는 특정 영역(1810)이 제1 관심 지점에 대응되는 영역과 미리 정해진 임계 기준 이상 겹치는 경우, 제1 관심 지점에 대응되는 영역을 대상 구역(1860)으로 결정할 수 있다. For example, when the specific area 1810 is related to the first point of interest, the electronic device may determine the area corresponding to the first point of interest as the target area 1860. Specifically, when the specific area 1810 is included in the area corresponding to the first point of interest, the electronic device may determine the area corresponding to the first point of interest as the target area 1860. Additionally, when the specific area 1810 overlaps the area corresponding to the first point of interest by more than a predetermined threshold, the electronic device may determine the area corresponding to the first point of interest as the target area 1860.

또한, 예를 들어, 전자 장치는 특정 영역(1810)에 포함된 적어도 일부의 측위점들의 강도 속성이 미리 정해진 임계치 이상 조정된 경우, 특정 영역(1810)을 포함하는 영역을 대상 구역(1860)으로 결정할 수 있다. 이때, 미리 정해진 임계치는 측위점의 강도 속성의 조정이 물리적 구조물의 변경을 수반했는지 여부를 판단하기 위해 설정될 수 있다. 전자 장치는 특정 영역(1810)에 포함된 적어도 일부의 측위점들의 강도 속성을 기초로 특정 영역(1810)에 대응되는 위치의 물리적 구조물의 변경 여부를 판단할 수 있다. In addition, for example, when the intensity properties of at least some of the location points included in the specific area 1810 are adjusted to more than a predetermined threshold, the electronic device selects the area including the specific area 1810 as the target area 1860. You can decide. At this time, a predetermined threshold may be set to determine whether the adjustment of the intensity properties of the location point was accompanied by a change in the physical structure. The electronic device may determine whether the physical structure at a location corresponding to the specific area 1810 has changed based on the intensity properties of at least some location points included in the specific area 1810.

전자 장치는 특정 영역(1810)을 기초로 식별된 대상 구역(1860)에 포함되는 위치에서의 적어도 하나의 파라미터를 조정함으로써 갱신된 실내 지도 데이터(1850)를 획득할 수 있다. 예를 들어, 전자 장치는 실내 지도 데이터에 배치된 AP(1865) 정보를 변경함으로써 갱신된 실내 지도 데이터(1850)를 획득할 수 있다. 구체적인 예로, 전자 장치는 대상 구역(1860) 내에 배치된 AP(1865)의 주소 정보를 변경할 수 있다. The electronic device may obtain updated indoor map data 1850 by adjusting at least one parameter at a location included in the target area 1860 identified based on the specific area 1810. For example, the electronic device may obtain updated indoor map data 1850 by changing AP 1865 information placed in the indoor map data. As a specific example, the electronic device may change the address information of the AP (1865) placed within the target area (1860).

또한, 전자 장치는 대상 구역(1860)에 대응되는 관심 지점에 대한 정보를 수정함으로써 갱신된 실내 지도 데이터(1850)를 획득할 수 있다. 예를 들어, 전자 장치는 AP(1865) 정보가 변경된 관심 지점에 대한 정보를 수정할 수 있으나, 이에 한정되지 않는다. Additionally, the electronic device may obtain updated indoor map data 1850 by modifying information about the point of interest corresponding to the target area 1860. For example, the electronic device may modify information about a point of interest where the AP 1865 information has changed, but is not limited to this.

이를 통해, 전자 장치는 장소 내에 위치하는 특정 가게가 다른 가게로 변경되었을 경우, 이를 반영하여 자동으로 실내 지도 데이터를 업데이트할 수 있다. Through this, the electronic device can automatically update the indoor map data to reflect this when a specific store located in the location is changed to another store.

도 19는, 다양한 실시예에 따른, 전자 장치가 실내 지도를 업데이트하는 또 다른 일 예시를 도시한 도면이다. 도 19의 (a) 및 도 19의 (b)를 참조하면, 전자 장치는 제1 실내 지도(1900a)를 업데이트함으로써 제2 실내 지도(1900b)를 획득할 수 있다. FIG. 19 is a diagram illustrating another example of an electronic device updating an indoor map, according to various embodiments. Referring to Figures 19(a) and 19(b), the electronic device may obtain the second indoor map 1900b by updating the first indoor map 1900a.

전자 장치는 적어도 하나의 관심 지점을 포함하는 제1 장소 내에 위치하는 적어도 하나의 사용자 디바이스로부터 획득한 센서 데이터를 기초로 실내 지도를 업데이트할 수 있다. 구체적으로, 전자 장치는 적어도 하나의 사용자 디바이스에 포함되는 적어도 하나의 센서를 이용하여 획득한 데이터 셋을 기초로 실내 지도 데이터를 업데이트할 수 있다. The electronic device may update the indoor map based on sensor data acquired from at least one user device located within the first location including at least one point of interest. Specifically, the electronic device may update indoor map data based on a data set acquired using at least one sensor included in at least one user device.

또한, 전자 장치는 적어도 하나의 사용자 디바이스로부터 획득한 센서 데이터를 기초로 적어도 하나의 사용자 디바이스의 층 이동에 연관된 정보를 획득할 수 있다. Additionally, the electronic device may obtain information related to floor movement of at least one user device based on sensor data acquired from the at least one user device.

구체적으로, 전자 장치는 제1 센서 데이터를 기초로 층 이동 여부를 식별할 수 있다. 이때, 제1 센서 데이터는 기압 데이터를 포함할 수 있으나, 이에 한정되지 않는다. 예를 들어, 전자 장치는 제1 센서 데이터의 변화량을 기초로 층 이동을 식별할 수 있다. 전자 장치는 특정 시간 구간 동안 기압이 증가하는 경우, 적어도 하나의 사용자 디바이스가 아래층으로 이동하는 것으로 판단할 수 있다. 또한, 전자 장치는 특정 시간 구간 동안 기압이 감소하는 경우, 적어도 하나의 사용자 디바이스가 위층으로 이동하는 것으로 판단할 수 있다. Specifically, the electronic device can identify whether the floor is moving based on the first sensor data. At this time, the first sensor data may include atmospheric pressure data, but is not limited thereto. For example, the electronic device may identify floor movement based on the amount of change in the first sensor data. When the air pressure increases during a specific time period, the electronic device may determine that at least one user device is moving downstairs. Additionally, when the air pressure decreases during a specific time period, the electronic device may determine that at least one user device is moving upstairs.

또한, 전자 장치는 층 이동의 식별 동작에 대응하여, 층 이동에 연관된 위치 정보를 획득할 수 있다. 구체적으로, 전자 장치는 층 이동이 수반되는 특정 시간 구간에 대응되는 위치 데이터를 기초로 층 이동에 연관된 위치 정보를 획득할 수 있다. 예를 들어, 전자 장치는 제1 실내 지도(1900a) 상의 제1 영역(1910)을 층 이동에 연관된 위치로 결정할 수 있다. Additionally, the electronic device may acquire location information related to floor movement in response to the identification operation of floor movement. Specifically, the electronic device may obtain location information related to floor movement based on location data corresponding to a specific time period involving floor movement. For example, the electronic device may determine the first area 1910 on the first indoor map 1900a as a location related to floor movement.

또한, 전자 장치는 적어도 하나의 사용자 디바이스로부터 획득된 센서 데이터를 기초로 층 이동에 수반된 층간 이동 수단을 식별할 수 있다. 구체적으로, 전자 장치는 제2 센서 데이터를 기초로 층간 이동 수단을 식별할 수 있다. 이때, 제2 센서 데이터는 가속도 데이터를 포함할 수 있으나, 이에 한정되지 않는다. 예를 들어, 전자 장치는 제2 센서 데이터의 변화율을 기초로 층 이동에 수반된 층간 이동 수단을 식별할 수 있다. 전자 장치는 층 이동이 수반된 특정 시간 구간에 대응되는 제2 센서 데이터의 데이터 윈도우를 기초로 층간 이동 수단을 식별할 수 있다. 전자 장치는 상기 제2 센서 데이터의 데이터 윈도우의 패턴을 기초로 층간 이동 수단을 식별할 수 있다. Additionally, the electronic device may identify an inter-floor movement means involved in floor movement based on sensor data acquired from at least one user device. Specifically, the electronic device may identify a means of moving between floors based on the second sensor data. At this time, the second sensor data may include acceleration data, but is not limited thereto. For example, the electronic device may identify the inter-floor movement means involved in floor movement based on the change rate of the second sensor data. The electronic device may identify a means of moving between floors based on a data window of second sensor data corresponding to a specific time period involving floor movement. The electronic device may identify the means for moving between floors based on the pattern of the data window of the second sensor data.

예를 들어, 전자 장치는 특정 시간 구간의 시작점에 대응되는 시간 구간 및 종료점에 대응되는 시간 구간에서 가속도 값이 급격히 변하는 경우, 층간 이동 수단을 엘리베이터로 결정할 수 있다. For example, when the acceleration value changes rapidly in the time section corresponding to the start point and the end point of a specific time section, the electronic device may determine the means of moving between floors to be an elevator.

또한, 예를 들어, 전자 장치는 제2 센서 데이터의 데이터 윈도우를 기초로 보폭 수를 추정함으로써 층간 이동 수단을 에스컬레이터 및 계단 중 하나로 선택할 수 있다. 구체적으로, 전자 장치는 상기 데이터 윈도우를 기초로 판단된 보폭 수가 미리 정해진 임계치 이하인 경우, 층간 이동 수단을 에스컬레이터로 결정할 수 있고, 보폭 수가 미리 정해진 임계치 이상인 경우, 층간 이동 수단을 계단으로 결정할 수 있다. Additionally, for example, the electronic device may select one of the escalator and stairs as a means of moving between floors by estimating the number of steps based on the data window of the second sensor data. Specifically, when the number of steps determined based on the data window is less than or equal to a predetermined threshold, the electronic device may determine the means of moving between floors to be an escalator, and if the number of steps is greater than or equal to a predetermined threshold, the electronic device may determine the means of moving between floors to be stairs.

이는, 에스컬레이터를 이용한 층 이동에 수반되는 보폭 수가 계단을 이용한 층 이동에 수반되는 보폭 수 보다 작기 때문이다. This is because the number of steps required for moving between floors using an escalator is smaller than the number of steps required for moving between floors using stairs.

또한, 전자 장치는 제1 실내 지도(1900a)에 층간 이동 수단 정보를 반영함으로써 제2 실내 지도(1900b)를 업데이트할 수 있다. Additionally, the electronic device may update the second indoor map 1900b by reflecting inter-floor transportation means information in the first indoor map 1900a.

이때, 전자 장치는 적어도 하나의 사용자 디바이스로부터 획득된 데이터 셋을 기초로 제1 실내 지도(1900a) 상에서 층간 이동이 수반된 위치를 식별할 수 있다. At this time, the electronic device may identify a location involving movement between floors on the first indoor map 1900a based on a data set acquired from at least one user device.

전자 장치는 식별된 위치에 층간 이동 수단에 연관되는 적어도 하나의 특징(feature)을 생성함으로써 층간 이동 수단 정보를 반영할 수 있다. 구체적으로, 전자 장치는 층간 이동 수단의 종류를 나타내는 인디케이터(1920, 또는 마커 또는 아이콘)를 추가함으로써 제2 실내 지도(1900b)를 획득할 수 있다. The electronic device may reflect inter-floor transportation means information by creating at least one feature associated with the inter-floor transportation means at the identified location. Specifically, the electronic device can obtain the second indoor map 1900b by adding an indicator 1920 (or marker or icon) indicating the type of means of moving between floors.

이때, 층간 이동 수단 정보는 이동 수단의 구동 방향 또는 구동 시간을 나타내는 관계(relationship) 정보를 포함할 수 있다. 구체적으로, 전자 장치는 층간 이동 수단이 구동되는 방향성(예: 단방향 또는 양방향)을 정의하는 파라미터를 생성함으로써 관계 정보를 생성할 수 있다. 또는, 전자 장치는 층간 이동 수단이 구동되는 시간(예: 오전 7시 ~ 오후 7시)을 정의하는 파라미터를 생성함으로써 관계 정보를 생성할 수 있다. At this time, the inter-floor transportation means information may include relationship information indicating the driving direction or driving time of the moving means. Specifically, the electronic device may generate relationship information by generating a parameter that defines the direction in which the inter-floor movement means is driven (eg, unidirectional or bidirectional). Alternatively, the electronic device may generate relationship information by creating a parameter that defines the time at which the inter-floor movement means is driven (eg, 7 a.m. to 7 p.m.).

전자 장치는 실내 지도에 포함되는 관계 정보를 기초로 실내 경로를 생성할 수 있다. 구체적으로, 전자 장치는 실내 지도에 포함되는 적어도 하나의 물리적 구조물들의 관계 정보를 반영하여 실내 경로를 생성할 수 있다. The electronic device may generate an indoor route based on relationship information included in the indoor map. Specifically, the electronic device may generate an indoor route by reflecting relationship information of at least one physical structure included in the indoor map.

일 예로, 전자 장치는 실내 지도에 포함되는 적어도 하나의 출입구의 관계 정보를 기초로 실내 경로를 생성할 수 있다. 구체적으로, 전자 장치는 실내 지도가 단방향으로의 이동만 가능한 출입구를 포함하는 경우, 상기 출입구를 이용한 이동 방향을 고려하여 실내 경로를 생성할 수 있다. As an example, the electronic device may generate an indoor route based on relationship information of at least one entrance included in the indoor map. Specifically, when the indoor map includes an entrance that only allows movement in one direction, the electronic device may generate an indoor route by considering the direction of movement using the entrance.

다른 예로, 전자 장치는 실내 지도에 포함되는 층간 이동 수단의 관계 정보를 기초로 실내 경로를 생성할 수 있다. 구체적으로, 전자 장치는 실내 지도가 특정 시간(예: 오전 7시 ~ 오후7시)에만 구동되는 층간 이동 수단(예: 엘리베이터)을 포함하는 경우, 상기 층간 이동 수단의 구동 시간을 고려하여 실내 경로를 생성할 수 있다. 예를 들어, 전자 장치는 상기 특정 시간 이외의 시간에 경로가 생성되는 경우, 상기 층간 이동 수단에 연관되지 않도록 실내 경로를 생성할 수 있다.As another example, the electronic device may generate an indoor route based on relationship information of inter-floor movement means included in the indoor map. Specifically, when the indoor map includes a means of moving between floors (e.g., an elevator) that operates only at specific times (e.g., 7:00 a.m. to 7:00 p.m.), the electronic device determines an indoor route by considering the operating time of the means of moving between floors. can be created. For example, if a route is created at a time other than the specific time, the electronic device may create an indoor route so that it is not associated with the means of moving between floors.

도 20은, 다양한 실시예에 따른, 전자 장치가 실내 지도를 업데이트하는 또 다른 일 예시를 도시한 흐름도이다. FIG. 20 is a flowchart illustrating another example of an electronic device updating an indoor map, according to various embodiments.

도 20을 참조하면, 전자 장치는 적어도 하나의 관심 지점을 포함하는 제1 장소 내에 위치하는 적어도 하나의 사용자 디바이스에 상기 제1 장소에 대응되는 제1 실내 지도를 제공할 수 있다(S2001). 또한, 전자 장치는 상기 적어도 하나의 사용자 디바이스로부터 제1 센서 데이터 및 제2 센서 데이터를 포함하는 제1 데이터 셋을 수신할 수 있다(S2002). 또한, 전자 장치는 상기 제1 센서 데이터를 기초로 상기 적어도 하나의 사용자 디바이스의 층간 이동을 식별할 수 있다(S2003). 또한, 전자 장치는 상기 층간 이동의 식별 동작에 대응하여, 상기 제2 센서 데이터를 기초로 미리 저장된 복수의 층간 이동 수단들 중 층간 이동에 연관되는 층간 이동 수단을 나타내는 층간 이동 수단 정보를 획득할 수 있다(S2004). 이때, 복수의 층간 이동 수단들은 에스컬레이터, 계단 및 엘리베이터를 포함할 수 있으나, 이에 한정되지 않는다. 또한, 전자 장치는 층간 이동 수단 정보를 반영한 제2 실내 지도를 복수의 사용자 디바이스들에 제공할 수 있다(S2005).Referring to FIG. 20, the electronic device may provide a first indoor map corresponding to the first place to at least one user device located in a first place including at least one point of interest (S2001). Additionally, the electronic device may receive a first data set including first sensor data and second sensor data from the at least one user device (S2002). Additionally, the electronic device may identify inter-floor movement of the at least one user device based on the first sensor data (S2003). Additionally, in response to the identification operation of the inter-floor movement, the electronic device may acquire inter-floor movement means information indicating an inter-floor movement means related to inter-floor movement among a plurality of pre-stored inter-floor movement means based on the second sensor data. There is (S2004). At this time, the plurality of means of moving between floors may include, but is not limited to, escalators, stairs, and elevators. Additionally, the electronic device may provide a second indoor map reflecting information on means of transportation between floors to a plurality of user devices (S2005).

도 21은, 다양한 실시예들에 따른, 전자 장치가 층간 이동 수단 정보를 획득하는 방법을 도시한 도면이다. 도 21을 참조하면, 전자 장치의 단계 S2004의 동작은 복수의 동작들을 포함할 수 있다. FIG. 21 is a diagram illustrating a method by which an electronic device obtains inter-floor movement means information, according to various embodiments. Referring to FIG. 21, the operation of step S2004 of the electronic device may include a plurality of operations.

전자 장치는 제1 센서 데이터를 기초로 층간 이동에 연관되는 적어도 하나의 시간 구간을 식별할 수 있다(S2101). 이때, 적어도 하나의 시간 구간은 제1 센서 데이터의 변화량이 임계치 이상인 적어도 두 개 이상의 시점들을 포함할 수 있다. 전자 장치는 제1 센서 데이터의 크기가 미리 정해진 크기 이상 변하는 적어도 하나의 시간 구간을 식별함으로써 적어도 하나의 사용자 디바이스의 층간 이동을 식별할 수 있다. The electronic device may identify at least one time section related to inter-floor movement based on the first sensor data (S2101). At this time, at least one time section may include at least two or more time points where the amount of change in the first sensor data is greater than or equal to a threshold. The electronic device may identify inter-floor movement of at least one user device by identifying at least one time interval in which the size of the first sensor data changes by more than a predetermined amount.

또한, 전자 장치는 상기 제2 센서 데이터 중 상기 적어도 하나의 시간 구간에 대응되는 적어도 하나의 데이터 윈도우를 식별할 수 있다(S2102). Additionally, the electronic device may identify at least one data window corresponding to the at least one time section among the second sensor data (S2102).

또한, 전자 장치는 적어도 하나의 데이터 윈도우를 기초로 층간 이동 수단 정보를 획득할 수 있다(S2103).Additionally, the electronic device may obtain inter-floor movement means information based on at least one data window (S2103).

도 22는, 다양한 실시예들에 따른, 전자 장치가 층간 이동 수단 정보를 반영하여 제2 실내 지도를 제공하는 방법을 도시한 도면이다. FIG. 22 is a diagram illustrating a method in which an electronic device provides a second indoor map by reflecting information on means of transportation between floors, according to various embodiments.

도 22를 참조하면, 전자 장치는 제1 센서 데이터를 기초로 층간 이동에 연관되는 적어도 하나의 시간 구간을 식별할 수 있다(S2201). 또한, 전자 장치는 상기 제2 센서 데이터 중 상기 적어도 하나의 시간 구간에 대응되는 적어도 하나의 데이터 윈도우를 식별할 수 있다(S2202).Referring to FIG. 22, the electronic device may identify at least one time section related to inter-floor movement based on the first sensor data (S2201). Additionally, the electronic device may identify at least one data window corresponding to the at least one time section among the second sensor data (S2202).

또한, 전자 장치는 적어도 하나의 데이터 윈도우를 기초로 적어도 하나의 사용자 디바이스의 제1 실내 지도 상의 위치를 식별할 수 있다(S2203). 예를 들어, 적어도 하나의 사용자 디바이스의 가속도 데이터를 기초로 적어도 하나의 사용자 디바이스의 위치를 예측할 수 있으나, 이에 한정되지 않는다. Additionally, the electronic device may identify the location of at least one user device on the first indoor map based on at least one data window (S2203). For example, the location of at least one user device may be predicted based on acceleration data of at least one user device, but the method is not limited to this.

또한, 전자 장치는 식별된 제1 실내 지도 상의 위치에 층간 이동 수단에 연관된 특징(feature)들을 생성할 수 있다(S2204). 이때, 층간 이동 수단에 연관된 특징은 층간 이동 수단의 종류를 나타내는 적어도 하나의 인디케이터(indicator)를 포함할 수 있다. Additionally, the electronic device may generate features associated with the means of moving between floors at a location on the identified first indoor map (S2204). At this time, the feature related to the inter-floor movement means may include at least one indicator indicating the type of the inter-floor movement means.

또한, 전자 장치는 층간 이동 수단 정보를 반영한 제2 실내 지도를 복수의 사용자 디바이스들에 제공할 수 있다(S2205).Additionally, the electronic device may provide a second indoor map reflecting information on means of transportation between floors to a plurality of user devices (S2205).

도 23은, 다양한 실시예들에 따른, 전자 장치가 층간 이동 수단을 반영하여 실내 지도를 업데이트하는 다른 일 예시를 도시한 흐름도이다. FIG. 23 is a flowchart illustrating another example in which an electronic device updates an indoor map by reflecting a means of moving between floors, according to various embodiments.

도 23을 참조하면, 전자 장치는 적어도 하나의 관심 지점을 포함하는 제1 장소 내에 위치하는 적어도 하나의 사용자 디바이스에 상기 제1 장소에 대응되는 제1 실내 지도를 제공할 수 있다(S2301). 또한, 전자 장치는 적어도 하나의 사용자 디바이스로부터 제1 센서 데이터를 포함하는 제1 데이터 셋을 수신할 수 있다(S2302). 이때, 제1 센서 데이터는 기압 데이터를 포함할 수 있으나, 이에 한정되지 않는다. Referring to FIG. 23, the electronic device may provide a first indoor map corresponding to the first place to at least one user device located in a first place including at least one point of interest (S2301). Additionally, the electronic device may receive a first data set including first sensor data from at least one user device (S2302). At this time, the first sensor data may include atmospheric pressure data, but is not limited thereto.

또한, 전자 장치는 제1 센서 데이터를 기초로 상기 적어도 하나의 사용자 디바이스의 층간 이동이 수반되는 적어도 하나의 시간 구간을 식별할 수 있다(S2303).Additionally, the electronic device may identify at least one time section in which the at least one user device moves between floors based on the first sensor data (S2303).

또한, 전자 장치는 적어도 하나의 시간 구간의 길이를 기초로 층간 이동에 수반되는 층간 이동 수단을 결정할 수 있다(S2304). 전자 장치가 적어도 하나의 시간 구간의 길이를 기초로 층간 이동에 수반되는 층간 이동 수단을 결정하는 방법은 도 24에 대한 개시에서 자세히 설명한다. Additionally, the electronic device may determine an inter-floor movement means accompanying inter-floor movement based on the length of at least one time section (S2304). The method by which the electronic device determines the inter-floor movement means involved in inter-floor movement based on the length of at least one time interval is described in detail in the disclosure with respect to FIG. 24.

또한, 전자 장치는 층간 이동 수단에 대한 정보를 반영한 제2 실내 지도를 복수의 사용자 디바이스들에 제공할 수 있다(S2305). Additionally, the electronic device may provide a second indoor map reflecting information about means of transportation between floors to a plurality of user devices (S2305).

도 24는, 다양한 실시예들에 따른, 다양한 층간 이동 수단을 이용하는 상황에 획득되는 기압 데이터를 나타낸 도면이다. FIG. 24 is a diagram illustrating air pressure data obtained in situations where various means of moving between floors are used, according to various embodiments.

도 24의 (a), 도 24의 (b) 및 도 24의 (c)를 참조하면, 전자 장치는 제1 기압 데이터(2400a)를 기초로 계단을 이용한 층 이동을 식별할 수 있고, 제2 기압 데이터(2400b)를 기초로 에스컬레이터를 이용한 층 이동을 식별할 수 있고, 제3 기압 데이터(2400c)를 기초로 엘리베이터를 이용한 층 이동을 식별할 수 있다. Referring to FIGS. 24(a), 24(b), and 24(c), the electronic device may identify floor movement using stairs based on the first air pressure data 2400a, and the second air pressure data 2400a. Floor movement using an escalator can be identified based on the air pressure data 2400b, and floor movement using an elevator can be identified based on the third air pressure data 2400c.

전자 장치는 기압 데이터에 포함되는 층 이동에 연관되는 적어도 하나의 시간 구간의 길이가 미리 정해진 길이 이상인 경우, 층간 이동에 수반되는 층간 이동 수단을 에스컬레이터 또는 계단으로 결정할 수 있고, 층이 동에 연관되는 시간 구간의 길이가 미리 정해진 길이 이하인 경우, 층간 이동에 수반되는 층간 이동 수단을 엘리베이터로 결정할 수 있다. If the length of at least one time section associated with floor movement included in the air pressure data is greater than or equal to a predetermined length, the electronic device may determine the means of inter-floor movement accompanying the inter-floor movement as an escalator or stairs, and the floor is associated with the building. If the length of the time section is less than or equal to a predetermined length, the inter-floor movement means used for inter-floor movement may be determined to be an elevator.

일 예로, 전자 장치는 제1 기압 데이터(2400a)의 제1 시간 구간(interval1)에 대응되는 제1 데이터 윈도우(2401)를 기초로 계단을 이용한 층 이동을 식별할 수 있다. As an example, the electronic device may identify floor movement using stairs based on the first data window 2401 corresponding to the first time interval (interval1) of the first atmospheric pressure data 2400a.

전자 장치는 제1 기압 데이터(2400a)를 기초로 층 이동에 연관되는 제1 시간 구간(interval1)을 식별할 수 있다. 또한, 전자 장치는 제1 시간 구간(interval1)의 길이를 기초로 층간 이동 수단을 식별할 수 있다. 구체적으로, 전자 장치는 제1 시간 구간(interval1)이 제1 미리 정해진 길이 이상인 경우, 제1 데이터 윈도우(2401)에 대응되는 층간 이동 수단을 계단으로 결정할 수 있다.The electronic device may identify the first time interval (interval1) associated with floor movement based on the first atmospheric pressure data 2400a. Additionally, the electronic device may identify the means for moving between floors based on the length of the first time interval (interval1). Specifically, when the first time interval (interval1) is longer than or equal to the first predetermined length, the electronic device may determine that the means of moving between floors corresponding to the first data window 2401 is stairs.

다른 예로, 전자 장치는 제2 기압 데이터(2400b)의 제2 시간 구간(interval2)에 대응되는 제2 데이터 윈도우(2402)를 기초로 에스컬레이터를 이용한 층 이동을 식별할 수 있다. As another example, the electronic device may identify floor movement using an escalator based on the second data window 2402 corresponding to the second time interval (interval2) of the second air pressure data 2400b.

전자 장치는 제2 기압 데이터(2400b)를 기초로 층 이동에 연관되는 제2 시간 구간(interval2)을 식별할 수 있다. 또한, 전자 장치는 제2 시간 구간(interval 2)의 길이를 기초로 층간 이동 수단을 식별할 수 있다. 구체적으로, 전자 장치는 제2 시간 구간(interval2)이 상기 제1 미리 정해진 길이 이하이고, 제2 미리 정해진 길이 이상인 경우, 제2 데이터 윈도우(2402)에 대응되는 층간 이동 수단을 에스컬레이터로 결정할 수 있다. The electronic device may identify a second time interval (interval2) related to floor movement based on the second air pressure data 2400b. Additionally, the electronic device may identify the inter-floor movement means based on the length of the second time interval (interval 2). Specifically, when the second time interval (interval2) is less than or equal to the first predetermined length and greater than or equal to the second predetermined length, the electronic device may determine the inter-floor movement means corresponding to the second data window 2402 to be an escalator. .

여기서, 제1 미리 정해진 길이는 계단을 이용한 층 이동에 소요되는 최소 시간 및 에스컬레이터를 이용한 층 이동에 소요되는 최대 시간을 고려하여 설정될 수 있다. 또한, 제2 미리 정해진 길이는 에스컬레이터를 이용한 층 이동에 소요되는 최소 시간 및 엘리베이터를 이용한 층 이동에 소요되는 최대 시간을 고려하여 설정될 수 있다. Here, the first predetermined length may be set in consideration of the minimum time required to move to a floor using stairs and the maximum time required to move to a floor using an escalator. Additionally, the second predetermined length may be set in consideration of the minimum time required to move between floors using an escalator and the maximum time required to move between floors using an elevator.

또한, 제2 시간 구간(interval2)은 제1 시간 구간(interval1) 보다 작을 수 있다. 이는, 에스컬레이터를 이용한 층 이동에 소요되는 시간이 계단을 이용한 층 이동에 소요되는 시간 보다 통상적으로 짧기 때문이다. Additionally, the second time interval (interval2) may be smaller than the first time interval (interval1). This is because the time required to move between floors using an escalator is usually shorter than the time required to move between floors using stairs.

또 다른 예로, 전자 장치는 제3 기압 데이터(2400c)의 제3 시간 구간(interval3)에 대응되는 제3 데이터 윈도우(2403) 및 제4 시간 구간(interval4)에 대응되는 제4 데이터 윈도우(2404)를 기초로 엘리베이터를 이용한 층 이동을 식별할 수 있다. As another example, the electronic device includes a third data window 2403 corresponding to the third time interval (interval3) and a fourth data window 2404 corresponding to the fourth time interval (interval4) of the third atmospheric pressure data 2400c. Based on this, floor movement using the elevator can be identified.

전자 장치는 제3 기압 데이터(2400c)를 기초로 층 이동에 연관되는 제3 시간 구간(interval3) 및 제4 시간 구간(interval4)을 식별할 수 있다. 또한, 전자 장치는 제3 시간 구간(interval3) 및 제4 시간 구간(interval4)의 길이를 기초로 층간 이동 수단을 식별할 수 있다. 구체적으로, 전자 장치는 제3 시간 구간(interval3) 및 제4 시간 구간(interval4)의 길이가 상기 제2 미리 정해진 길이 이하인 경우, 제3 데이터 윈도우(2403) 및 제4 데이터 윈도우(2404)에 대응되는 층간 이동 수단을 엘리베이터로 결정할 수 있다. The electronic device may identify a third time interval (interval3) and a fourth time interval (interval4) related to floor movement based on the third atmospheric pressure data 2400c. Additionally, the electronic device may identify the means for moving between floors based on the lengths of the third time interval (interval3) and the fourth time interval (interval4). Specifically, when the length of the third time interval (interval3) and the fourth time interval (interval4) is less than or equal to the second predetermined length, the electronic device corresponds to the third data window 2403 and the fourth data window 2404. The method of transportation between floors can be determined to be an elevator.

또한, 전자 장치는 시간 구간의 개수를 기초로 층간 이동 수단을 식별할 수 있다. 구체적으로, 전자 장치는 시간 구간의 개수가 미리 정해진 개수(예: 2개) 이상인 경우, 제3 데이터 윈도우(2403) 및 제4 데이터 윈도우(2404)에 대응되는 층간 이동 수단을 엘리베이터로 결정할 수 있다. Additionally, the electronic device can identify a means of moving between floors based on the number of time sections. Specifically, when the number of time sections is more than a predetermined number (e.g., 2), the electronic device may determine the inter-floor movement means corresponding to the third data window 2403 and the fourth data window 2404 to be an elevator. .

엘리베이터를 이용한 층 이동에 연관되는 시간 구간이 복수의 시간 구간으로 식별되는 것은, 사용자가 엘리베이터를 이용하여 여러 층을 이동할 때 중간에 정지하는 층이 존재할 수 있기 때문이다.The reason that the time section related to floor movement using an elevator is identified as a plurality of time sections is because when a user moves between multiple floors using an elevator, there may be floors that stop in between.

또한, 여기서, 제4 시간 구간(interval4)은 제3 시간 구간(interval3) 보다 작을 수 있다. 이는, 사용자 디바이스가 엘리베이터를 이용하여 층 이동을 하는 경우, 한 번에 정지하지 않고 이동하는 층수가 다를 수 있기 때문이다.Also, here, the fourth time interval (interval4) may be smaller than the third time interval (interval3). This is because when the user device moves between floors using an elevator, the number of floors it moves to without stopping at a time may be different.

[어플리케이션 제어 방법][Application control method]

지도 서비스를 이용하는 사용자 디바이스(또는 모바일 디바이스 또는 전자 장치, 이하 "전자 장치"라 함)는 gps 좌표를 획득할 수 없는 공간(예: 실내 공간)에 진입하는 경우, 본 개시의 일 실시예에 따른 서버는 전자 장치에 의해 획득되는 다양한 데이터를 기반으로 전자 장치의 실내 위치를 추정할 수 있다. 이때, 서버는 전자 장치가 실내에 진입한 시점부터 실내 위치를 추적함으로써 높은 위치 추정 정확도를 달성할 수 있다. When a user device (or mobile device or electronic device, hereinafter referred to as “electronic device”) using a map service enters a space (e.g., indoor space) where GPS coordinates cannot be obtained, according to an embodiment of the present disclosure The server may estimate the indoor location of the electronic device based on various data acquired by the electronic device. At this time, the server can achieve high location estimation accuracy by tracking the indoor location from the time the electronic device enters the room.

이를 위해, 전자 장치에 포함되는 적어도 하나의 프로세서는 실내에 진입한 시점부터 어플리케이션을 제어하여 실내 위치가 측정되도록 설정될 수 있다. To this end, at least one processor included in the electronic device may be set to measure the indoor location by controlling the application from the time of entering the room.

도 25는, 다양한 실시예에 따른, 전자 장치가 실내 진입 여부에 따라 어플리케이션을 제어하는 방법을 도시한 도면이다. FIG. 25 is a diagram illustrating a method of controlling an application depending on whether an electronic device enters a room, according to various embodiments.

도 25를 참조하면, 전자 장치에 포함되는 적어도 하나의 프로세서는 실내 진입 여부를 감지하기 위한 제1 동작 모드로 동작할 수 있다(S2501). 구체적으로, 적어도 하나의 프로세서는 어플리케이션을 모바일 디바이스의 백그라운드 환경에서 실행하여 최소한의 기능만 구현되도록 제어할 수 있다. 예를 들어, 적어도 하나의 프로세서는 실내 진입 여부를 감지하기 위한 기능만 구현되도록 어플리케이션을 제1 동작 모드로 실행할 수 있으나, 이에 한정되지 않는다. Referring to FIG. 25, at least one processor included in the electronic device may operate in a first operation mode to detect whether or not one has entered the room (S2501). Specifically, at least one processor may control the application to be executed in the background environment of the mobile device so that only minimal functions are implemented. For example, at least one processor may execute the application in a first operation mode so that only the function for detecting whether or not the user has entered the room is implemented, but the application is not limited to this.

또한, 적어도 하나의 프로세서는 미리 정해진 제1 조건이 달성되었는지 여부를 확인할 수 있다(S2502). 이때, 미리 정해진 제1 조건은 실내 진입 여부를 확인하기 위해 설정된 조건일 수 있다. Additionally, at least one processor may check whether a predetermined first condition has been achieved (S2502). At this time, the predetermined first condition may be a condition set to check whether or not to enter the room.

적어도 하나의 프로세서는 GPS 데이터를 기초로 실내 진입 여부를 감지할 수 있다. 구체적으로, 적어도 하나의 프로세서는 전자 장치에 포함되는 GPS 센서가 GPS 데이터를 획득하지 못하는 시점을 실내 진입 시점으로 결정할 수 있다. 또한, 적어도 하나의 프로세서는 GPS 데이터를 획득하지 못하는 시점에 무선 통신 신호를 스캔하는 경우, 실내에 진입한 것으로 판단할 수 있다. At least one processor may detect whether or not the device has entered the room based on GPS data. Specifically, at least one processor may determine the time at which the GPS sensor included in the electronic device fails to acquire GPS data as the indoor entry point. Additionally, when at least one processor scans a wireless communication signal at a time when GPS data cannot be obtained, it may determine that the device has entered the room.

또한, 적어도 하나의 프로세서는 실내 진입을 나타내는 통신 신호를 수신하는 동작을 기초로 실내 진입 여부를 감지할 수 있다. 구체적으로, 적어도 하나의 프로세서는 차량이 주차장 입구를 통과함에 따라 주차 관제 시스템으로부터 통신 신호를 수신할 수 있고, 상기 수신 동작을 기초로 실내 진입을 식별할 수 있다. Additionally, at least one processor may detect whether or not the device has entered the room based on an operation of receiving a communication signal indicating entry into the room. Specifically, at least one processor may receive a communication signal from the parking control system as the vehicle passes through the parking lot entrance, and may identify indoor entry based on the reception operation.

또한, 적어도 하나의 프로세서는 목적지 도착 여부를 기초로 실내 진입 여부를 감지할 수 있다. 구체적으로, 적어도 하나의 프로세서가 특정 장소로 길 안내 기능을 제공하는 경우, 상기 특정 장소에 도착한 것으로 판단된 시점을 실내 진입 시점으로 결정할 수 있다. Additionally, at least one processor may detect whether or not the device has entered the room based on whether or not the destination has arrived. Specifically, when at least one processor provides a route guidance function to a specific place, the time when it is determined that the specific place has been arrived may be determined as the indoor entry point.

또한, 이에 한정되지 않고, 적어도 하나의 프로세서는 온도 정보, 조도 정보 또는 AP 정보를 기초로 실내 진입 여부를 감지할 수 있다. Additionally, the present invention is not limited to this, and at least one processor may detect whether or not the user has entered the room based on temperature information, illumination information, or AP information.

또한, 적어도 하나의 프로세서는 제1 조건이 달성되지 않은 경우(예: 실외 공간에 위치하는 경우) 어플리케이션을 제1 동작 모드로 유지할 수 있다. Additionally, at least one processor may maintain the application in the first operation mode when the first condition is not achieved (eg, when located in an outdoor space).

또한, 적어도 하나의 프로세서는, 제1 조건이 달성된 경우(예: 실내에 진입한 것으로 판단되는 경우) 전자 장치의 실내에서의 위치를 추정하기 위한 제2 동작 모드로 동작할 수 있다(S2503). Additionally, the at least one processor may operate in a second operation mode for estimating the indoor location of the electronic device when the first condition is achieved (e.g., when it is determined that the electronic device has entered the room) (S2503). .

도 26은, 다양한 실시예에 따른, 전자 장치가 실외에서 실내로 진입하는 다양한 상황들을 설명하기 위한 도면이다. FIG. 26 is a diagram for explaining various situations in which an electronic device enters an indoor environment from outdoors, according to various embodiments.

예를 들어, 도 26의 (a)를 참조하면, 전자 장치는 사용자의 보행 이동을 통해 실내 공간에 진입할 수 있다. 또한, 예를 들어, 도 26의 (b)를 참조하면, 전자 장치는 사용자의 차량 이동을 통해 실내 공간에 진입할 수 있다. For example, referring to (a) of FIG. 26, an electronic device may enter an indoor space through the user's walking movement. Additionally, for example, referring to (b) of FIG. 26, the electronic device may enter the indoor space through the user's vehicle movement.

전자 장치는, 실내 공간에 진입하는 방식에 따라 어플리케이션을 상이하게 제어할 수 있다. Electronic devices can control applications differently depending on the method of entering an indoor space.

예를 들어, 전자 장치는 사용자의 보행 이동을 통해 실내 공간에 진입하는 경우에는 실내 위치 추정 기능을 실행하도록 어플리케이션을 제어할 수 있지만, 사용자의 차량 이동을 통해 실내 공간에 진입하는 경우, 차량의 주차 위치를 식별할 필요가 있기 때문에, 실내 위치 추정 기능과 함께 주차 위치 추적 기능을 함께 실행하도록 어플리케이션을 제어할 필요가 있다. For example, when the user enters an indoor space through walking movement, the electronic device may control the application to execute an indoor location estimation function, but when the user enters the indoor space through vehicle movement, the electronic device may control the application to execute the indoor location estimation function. Because it is necessary to identify the location, it is necessary to control the application to execute the parking location tracking function together with the indoor location estimation function.

도 27은, 다양한 실시예들에 따른, 전자 장치가 이동 패턴을 기초로 어플리케이션의 실행을 제어하는 방법을 도시한 도면이다. FIG. 27 is a diagram illustrating a method by which an electronic device controls the execution of an application based on a movement pattern, according to various embodiments.

도 28은, 다양한 실시예들에 따른, 전자 장치가 동작 모드를 전환하는 동작을 설명하기 위한 도면이다. FIG. 28 is a diagram for explaining an operation of an electronic device switching an operation mode, according to various embodiments.

도 27을 참조하면, 전자 장치에 포함된 적어도 하나의 프로세서는 제1 동작 모드에 따라 어플리케이션을 구동하여 상기 전자 장치의 실내 진입 여부를 식별할 수 있다(S2710). 적어도 하나의 프로세서가 실내 진입 여부를 식별하는 구체적인 방법은 상술하였으므로 생략하기로 한다. Referring to FIG. 27, at least one processor included in the electronic device can drive an application according to the first operation mode to identify whether the electronic device has entered the room (S2710). Since the specific method for identifying whether at least one processor enters the room has been described above, it will be omitted.

적어도 하나의 프로세서는 실내 진입 식별 동작에 대응하여, 전자 장치의 이동 패턴을 기초로 동작 모드가 설정될 수 있다. 예를 들어, 전자 장치의 이동 패턴은 보행 이동을 나타내는 제1 이동 패턴 및 차량 이동을 나타내는 제2 이동 패턴을 포함할 수 있으나, 이에 한정되지 않는다. At least one processor may set an operation mode based on the movement pattern of the electronic device in response to the indoor entry identification operation. For example, the movement pattern of the electronic device may include, but is not limited to, a first movement pattern indicating walking movement and a second movement pattern indicating vehicle movement.

구체적으로, 적어도 하나의 프로세서는 실내 진입 식별 동작에 대응하여, 상기 전자 장치의 이동 패턴이 제1 이동 패턴인 경우, 제2 동작 모드에 따라 어플리케이션을 제어할 수 있다(S2720). 이때, 제2 동작 모드는 실내 위치 추정 기능을 활성화한 어플리케이션 제어 동작을 포함할 수 있다. Specifically, in response to an indoor entry identification operation, at least one processor may control an application according to a second operation mode when the movement pattern of the electronic device is the first movement pattern (S2720). At this time, the second operation mode may include an application control operation that activates the indoor location estimation function.

또한, 전자 장치는 실내 진입 식별 동작에 대응하여, 상기 전자 장치의 이동 패턴이 제2 이동 패턴인 경우, 제3 동작 모드에 따라 어플리케이션을 제어할 수 있다(S2730). 이때, 제3 동작 모드는 실내 위치 추정 기능 및 주차 위치 추적 기능을 활성화한 어플리케이션 제어 동작을 포함할 수 있다. 또한, 실내 위치 추정 기능은 제3 동작 모드 및 제2 동작 모드에서 각각 상이하게 구현될 수 있다. Additionally, in response to the indoor entry identification operation, the electronic device may control the application according to the third operation mode when the movement pattern of the electronic device is the second movement pattern (S2730). At this time, the third operation mode may include an application control operation that activates the indoor location estimation function and the parking location tracking function. Additionally, the indoor location estimation function may be implemented differently in the third operation mode and the second operation mode.

적어도 하나의 프로세서의 상기 제2 동작 모드에 따른 동작은, 상기 전자 장치에 의해 수집된 AP 데이터 및 제1 가속도 데이터를 기초로 상기 전자 장치의 위치에 대응되는 제1 위치 데이터를 획득하는 동작(S2721)을 포함할 수 있다. 이 경우, 적어도 하나의 프로세서는 제2 동작 모드에 따른 실내 위치 추정을 위해, AP 데이터 및 가속도 데이터를 이용할 수 있다. AP 데이터 및 가속도 데이터를 이용한 실내 위치 추정 방법은 상술하였으므로 생략하기로 한다. 물론, 이에 한정되는 것은 아니고, 적어도 하나의 프로세서는 자기장 데이터를 더 이용하여 실내 위치를 추정할 수도 있다. The operation according to the second operation mode of at least one processor includes acquiring first location data corresponding to the location of the electronic device based on AP data and first acceleration data collected by the electronic device (S2721) ) may include. In this case, at least one processor may use AP data and acceleration data for indoor location estimation according to the second operation mode. Since the indoor location estimation method using AP data and acceleration data has been described above, it will be omitted. Of course, the present invention is not limited to this, and at least one processor may further use magnetic field data to estimate the indoor location.

또한, 적어도 하나의 프로세서의 상기 제2 동작 모드에 따른 동작은, 상기 적어도 하나의 센서를 이용하여 획득된 기압 데이터를 기초로 상기 전자 장치가 위치하는 층을 나타내는 층 정보를 획득하는 동작을 더 포함할 수 있다. 구체적으로, 적어도 하나의 프로세서는 기압 데이터 및 층 별 기압 데이터의 분포를 나타내는 기압 데이터 셋을 기초로 층 정보를 획득할 수 있다. 층 정보를 획득하는 동작 방법에 대한 구체적인 내용은 아래(도 29 및 도30)에서 설명한다. In addition, the operation according to the second operation mode of the at least one processor further includes acquiring floor information indicating the floor on which the electronic device is located based on air pressure data obtained using the at least one sensor. can do. Specifically, at least one processor may obtain floor information based on barometric pressure data and a barometric pressure data set indicating the distribution of barometric pressure data for each floor. Details of the operation method for acquiring floor information are described below (FIGS. 29 and 30).

또한, 적어도 하나의 프로세서의 제3 동작 모드에 따른 동작은, 상기 전자 장치에 의해 수집된 제2 가속도 데이터를 기초로 상기 전자 장치의 위치에 대응되는 제2 위치 데이터를 획득하는 동작(S2731)을 포함할 수 있다. 이 경우, 적어도 하나의 프로세서는 제3 동작 모드에 따른 실내 위치 추정을 위해, 가속도 데이터를 이용할 수 있다. 즉, 제3 동작 모드에 따른 실내 위치 추정 기능에는 AP 데이터가 이용되지 않을 수 있으나, 이에 한정되지 않는다. Additionally, the operation according to the third operation mode of the at least one processor includes an operation (S2731) of acquiring second location data corresponding to the location of the electronic device based on second acceleration data collected by the electronic device. It can be included. In this case, at least one processor may use acceleration data to estimate indoor position according to the third operation mode. That is, AP data may not be used for the indoor location estimation function according to the third operation mode, but the method is not limited to this.

또한, 제3 동작 모드에 따른 동작은, 적어도 하나의 센서를 이용하여 획득된 자기장 데이터를 기초로 상기 제2 위치 데이터를 보정하는 동작을 더 포함할 수 있다. Additionally, the operation according to the third operation mode may further include correcting the second location data based on magnetic field data obtained using at least one sensor.

또한, 제3 동작 모드에 따른 동작은, 전자 장치의 궤적 데이터 및 이동 가능 경로를 기초로 실내 위치를 추정하는 동작을 더 포함할 수 있다. 이때, 궤적 데이터는 특정 시간 구간 동안의 전자 장치의 위치 데이터를 포함할 수 있다. 궤적 데이터 및 이동 가능 경로를 기초로 실내 위치를 추정하는 방법에 대한 구체적인 설명은 상술하였으므로 생략하기로 한다. Additionally, the operation according to the third operation mode may further include estimating the indoor location based on trajectory data and a possible movement path of the electronic device. At this time, the trajectory data may include location data of the electronic device during a specific time period. Since the detailed description of the method for estimating indoor location based on trajectory data and possible movement paths has been described above, it will be omitted.

또한, 제3 동작 모드에 따른 동작은, 상기 제2 위치 데이터를 기초로, 전자 장치의 이동 패턴이 상기 제2 이동 패턴에서 상기 제1 이동 패턴으로 변경되는 제1 시간 구간을 식별하여 제1 시간 구간에 대응되는 제3 위치 데이터를 메모리에 저장하는 동작(S2732)을 더 포함할 수 있다. 구체적으로, 적어도 하나의 프로세서는 이동 패턴의 변화를 기초로 차량의 주차 위치를 식별할 수 있다. 예를 들어, 적어도 하나의 프로세서는 이동 패턴이 차량 이동에서 보행(도보) 이동으로 변하는 상기 제1 시간 구간을 식별할 수 있고, 상기 제1 시간 구간에 대응되는 제3 위치 데이터를 기초로 주차 위치를 결정할 수 있다. In addition, the operation according to the third operation mode is performed by identifying a first time period in which the movement pattern of the electronic device changes from the second movement pattern to the first movement pattern based on the second location data and An operation (S2732) of storing third location data corresponding to the section in the memory may be further included. Specifically, at least one processor may identify the parking location of the vehicle based on a change in movement pattern. For example, the at least one processor may identify the first time interval in which the movement pattern changes from vehicular movement to pedestrian (walking) movement, and determine the parking location based on third location data corresponding to the first time interval. can be decided.

적어도 하나의 프로세서의 주차 위치 식별 방법이 상술한 기재에 한정되는 것은 아니고, 적어도 하나의 프로세서는 또 다른 실시예를 기초로 주차 위치를 식별할 수 있다. The method of identifying the parking position of the at least one processor is not limited to the above-described description, and the at least one processor may identify the parking position based on another embodiment.

예를 들어, 적어도 하나의 프로세서는 전자 장치와 차량의 통신 연결이 해제되는 시점의 위치 데이터를 기초로 주차 위치를 식별할 수 있다. For example, at least one processor may identify the parking location based on location data at the time the communication connection between the electronic device and the vehicle is disconnected.

또한, 예를 들어, 적어도 하나의 프로세서는 전자 장치의 실외 네비게이션 어플리케이션의 실행이 종료되는 시점의 위치 데이터를 기초로 주차 위치를 식별할 수 있다. Additionally, for example, at least one processor may identify the parking location based on location data at the time when execution of the outdoor navigation application of the electronic device ends.

적어도 하나의 프로세서는 제1 시간 구간 및 제3 위치 데이터를 기초로 주차 정보를 생성하여 메모리에 저장할 수 있다. 이때, 주차 정보는 제3 위치 데이터를 기초로 생성된 주차 위치 정보 및 제1 시간 구간을 기초로 생성된 주차 시간 정보를 포함할 수 있다. At least one processor may generate parking information based on the first time period and the third location data and store it in the memory. At this time, the parking information may include parking location information generated based on the third location data and parking time information generated based on the first time section.

이에 따라, 전자 장치는 주차 경과 시간 정보를 사용자에게 제공할 수 있고, 이에 따른 주차 요금에 대한 정보를 더 제공할 수 있다. Accordingly, the electronic device can provide information on elapsed parking time to the user and further provide information on parking fees accordingly.

또한, 도 28을 참조하면, 적어도 하나의 프로세서는 제3 위치 데이터를 메모리에 저장하는 동작을 수행한 후에, 제3 동작 모드를 제2 동작 모드로 전환할 수 있다(S2740). 구체적으로, 적어도 하나의 프로세서는 제3 위치 데이터를 저장한 이후에, 주차 위치 추적 기능을 비활성화하고 실내 위치 추정 기능만 활성화하도록 어플리케이션을 제어할 수 있다. Additionally, referring to FIG. 28, after performing an operation of storing third position data in memory, at least one processor may switch the third operation mode to the second operation mode (S2740). Specifically, after storing the third location data, at least one processor may control the application to disable the parking location tracking function and activate only the indoor location estimation function.

또한, 적어도 하나의 프로세서는 사용자로부터 주차 위치 안내를 요청하는 입력이 수신되는 경우, 메모리에 저장된 제3 위치 데이터를 기초로 주차 위치 정보를 사용자에게 제공할 수 있다. 또한, 적어도 하나의 프로세서는 사용자로부터 주차 위치로 경로 안내를 요청하는 입력이 수신되는 경우, 상기 주차 위치까지의 경로를 생성하여 사용자에게 제공할 수 있다. Additionally, when an input requesting parking location guidance is received from the user, at least one processor may provide parking location information to the user based on third location data stored in the memory. Additionally, when an input requesting route guidance to the parking location is received from the user, at least one processor may generate a route to the parking location and provide the route to the user.

도 29는, 다양한 실시예들에 따른, 전자 장치가 층 정보를 식별하기 위한 방법을 설명하기 위한 도면이다. FIG. 29 is a diagram illustrating a method for an electronic device to identify floor information, according to various embodiments.

도 29를 참조하면, 전자 장치에 포함된 적어도 하나의 프로세서는 어플리케이션을 실행할 수 있다(S2910). 적어도 하나의 프로세서는 전자 장치가 위치하는 층을 나타내는 층 정보를 획득할 수 있다(S2920). 또한, 적어도 하나의 프로세서는 전자 장치의 실내 위치를 나타내는 실내 위치 정보를 획득할 수 있다(S2930).Referring to FIG. 29, at least one processor included in the electronic device may execute an application (S2910). At least one processor may obtain floor information indicating the floor on which the electronic device is located (S2920). Additionally, at least one processor may obtain indoor location information indicating the indoor location of the electronic device (S2930).

이때, 적어도 하나의 프로세서는 현재 위치하는 층 및 현재 위치를 나타내는 사용자 입력을 기초로 층 정보 및/또는 실내 위치 정보를 획득할 수 있다. At this time, at least one processor may obtain floor information and/or indoor location information based on the current floor and user input indicating the current location.

예를 들어, 적어도 하나의 프로세서는 사용자로부터 입력된 주변 관심 지점에 대한 정보를 기초로 층 정보 및 실내 위치 정보를 획득할 수 있다. 구체적으로, 적어도 하나의 프로세서는 사용자로부터 주변 상점의 명칭에 대한 입력을 수신한 경우, 상기 상점의 위치를 기초 층 정보 및 실내 위치 정보를 획득할 수 있다. For example, at least one processor may obtain floor information and indoor location information based on information about surrounding points of interest input from the user. Specifically, when receiving an input for the name of a nearby store from a user, at least one processor may obtain basic floor information and indoor location information regarding the location of the store.

또한, 예를 들어, 적어도 하나의 프로세서는 사용자로부터 현재 층에 대한 입력 및 현재 위치에 대한 입력을 수신함으로써 층 정보 및 실내 위치 정보를 획득할 수 있다. Additionally, for example, at least one processor may obtain floor information and indoor location information by receiving an input about the current floor and an input about the current location from the user.

또한, 적어도 하나의 프로세서는 전자 장치에 포함되는 시각 센서(예: 카메라 장치, 라이다 장치 등)에 의해 획득되는 시각 정보를 기초로 층 정보 및 실내 위치 정보를 획득할 수 있다. 예를 들어, 적어도 하나의 프로세서는 주변 관심 지점에 대한 시각 정보를 기초로 층 정보 및 실내 위치 정보를 획득할 수 있다. Additionally, at least one processor may obtain floor information and indoor location information based on visual information acquired by a visual sensor (e.g., camera device, lidar device, etc.) included in the electronic device. For example, at least one processor may obtain floor information and indoor location information based on visual information about surrounding points of interest.

도 30은, 다양한 실시예들에 따른, 전자 장치 및 서버가 층 정보를 획득하기 위한 구체적인 방법을 설명하기 위한 도면이다. FIG. 30 is a diagram illustrating a specific method for an electronic device and a server to obtain floor information, according to various embodiments.

도 30을 참조하면, 서버는 복수의 사용자 단말로부터 기압 데이터를 수신할 수 있다(S3001). 이때, 기압 데이터는 복수의 사용자 단말들에 포함된 기압계에 의해 획득될 수 있다. Referring to FIG. 30, the server may receive atmospheric pressure data from a plurality of user terminals (S3001). At this time, barometric pressure data may be obtained by a barometer included in a plurality of user terminals.

또한, 서버는 기압 데이터를 복수의 층 별로 그룹핑함으로써 층 별 기압 데이터의 분포를 나타내는 기압 데이터 셋을 획득할 수 있다(S3002). 구체적으로, 서버는 복수의 층들에 위치한 사용자 디바이스들로부터 획득한 기압 데이터를 대응되는 층에 매칭함으로써 기압 데이터 셋을 구축할 수 있다. 예를 들어, 서버는 제1 층에 대응되는 제1 서브 기압 데이터 셋, 제2 층에 대응되는 제2 서브 기압 데이터 셋 및 제3 층에 대응되는 제3 서브 기압 데이터 셋을 포함하는 기압 데이터 셋을 구축할 수 있으나, 이에 한정되지 않는다. Additionally, the server can obtain an air pressure data set representing the distribution of air pressure data for each floor by grouping the air pressure data into a plurality of layers (S3002). Specifically, the server may construct an atmospheric pressure data set by matching atmospheric pressure data obtained from user devices located on a plurality of floors to the corresponding floor. For example, the server may include a first sub-atmospheric pressure data set corresponding to the first layer, a second sub-atmospheric pressure data set corresponding to the second layer, and a third sub-atmospheric pressure data set corresponding to the third layer. can be built, but is not limited to this.

이때, 서버는 미리 정해진 시간 구간 동안 획득한 기압 데이터를 기초로 상기 기압 데이터 셋을 구축하도록 설정될 수 있다. 구체적으로, 서버는 디바이스의 층 정보를 추정하기 위한 기압 데이터 셋을 구축하기 위해 미리 정해진 시간 구간 동안 기압 데이터를 수집할 수 있다. 예를 들어, 서버는 복합 쇼핑몰이 일반 고객에게 오픈되기 전인 일정 시간 구간 동안 획득된 기압 데이터를 기초로 기압 데이터 셋을 구축할 수 있다. 또는 서버는 복합 쇼핑몰이 일반 고객에게 영업이 종료된 이후의 일정 시간 구간 동안 획득된 기압 데이터를 기초로 기압 데이터 셋을 구축할 수 있다. At this time, the server may be set to construct the barometric pressure data set based on barometric pressure data acquired during a predetermined time period. Specifically, the server may collect barometric pressure data for a predetermined time period to build a barometric pressure data set for estimating floor information of the device. For example, the server may construct an atmospheric pressure data set based on atmospheric pressure data acquired during a certain period of time before the complex shopping mall is opened to general customers. Alternatively, the server may construct an atmospheric pressure data set based on atmospheric pressure data acquired during a certain period of time after the complex shopping mall is closed to general customers.

전자 장치는 서버에 의해 구축된 기압 데이터 셋을 기초로 전자 장치가 위치하는 층을 나타내는 층 정보를 획득할 수 있다. 구체적으로, The electronic device may obtain floor information indicating the floor on which the electronic device is located based on the barometric pressure data set constructed by the server. Specifically,

구체적으로, 전자 장치는 기압계를 이용하여 획득된 기압 데이터를 서버에 전송할 수 있다(S3003). Specifically, the electronic device may transmit barometric pressure data obtained using a barometer to the server (S3003).

이때, 서버는 기압 데이터 및 기구축된 기압 데이터 셋을 기초로 전자 장치에 대응되는 층 정보를 획득할 수 있다(S3004). 구체적으로, 서버는 수신된 기압 데이터 및 기압 데이터 셋을 비교함으로써 전자 장치가 위치하는 층을 추정할 수 있다. 예를 들어, 서버는 기압 데이터 셋 중 수신된 기압 값에 대응되는 값을 식별할 수 있고, 상기 값에 대응되는 층을 식별함으로써 층 정보를 획득할 수 있다. At this time, the server may obtain floor information corresponding to the electronic device based on the barometric pressure data and the previously constructed barometric pressure data set (S3004). Specifically, the server may estimate the floor on which the electronic device is located by comparing the received barometric pressure data and the barometric pressure data set. For example, the server can identify a value corresponding to the received barometric pressure value among the barometric pressure data set, and obtain floor information by identifying the floor corresponding to the value.

또한, 서버는 획득된 층 정보를 전자 장치에 제공할 수 있다(S3005).Additionally, the server may provide the obtained floor information to the electronic device (S3005).

[주변 디바이스를 이용한 실내 위치 보정 방법][Indoor position correction method using nearby devices]

지도 서비스를 제공하는 서버 장치(또는 컴퓨팅 장치 또는 전자 장치, 이하 "전자 장치"라 함)는 상기 지도 서비스를 이용하는 복수의 사용자 디바이스들로부터 데이터를 수신하고, 복수의 사용자 디바이스들의 위치를 측정할 수 있다. A server device (or computing device or electronic device, hereinafter referred to as “electronic device”) that provides a map service can receive data from a plurality of user devices that use the map service and measure the positions of the plurality of user devices. there is.

복수의 사용자 디바이스들 사이의 기술적 차이(예: 사용자 디바이스의 스펙 차이, 사용자 디바이스의 기종 차이 등)로 인해, 복수의 사용자 디바이스의 실내 위치 추정 정확도는 서로 상이할 수 있다. Due to technical differences (e.g., differences in user device specifications, differences in user device models, etc.) between the plurality of user devices, the indoor location estimation accuracy of the plurality of user devices may be different.

이에 따라, 전자 장치는 복수의 사용자 디바이스들의 위치 측정 값들 중 정확도가 높은 측정 값을 이용하여 다른 사용자 디바이스의 위치 측정 값을 보정할 수 있다. Accordingly, the electronic device can correct the location measurement value of another user device using a measurement value with high accuracy among the location measurement values of a plurality of user devices.

도 31은, 다양한 실시예들에 따른, 전자 장치가 복수의 사용자 디바이스들의 측위 결과를 이용하여 위치를 보정하는 방법의 일 예시를 도시한 도면이다. FIG. 31 is a diagram illustrating an example of a method by which an electronic device corrects its location using positioning results of a plurality of user devices, according to various embodiments.

도 31을 참조하면, 전자 장치는 복수의 사용자 디바이스들 각각에 대응되는 위치 예측 값들을 획득할 수 있다(S3101). 구체적으로, 전자 장치는 복수의 사용자 디바이스들로부터 수신한 데이터(예: 위치 데이터, AP 데이터, 가속도 데이터, 자기장 데이터, 기압 데이터 등)를 기초로 복수의 사용자 디바이스들의 위치를 측정함으로써 상기 위치 예측 값들을 획득할 수 있다. 전자 장치가 위치를 측정하는 방법에 대한 설명은 상술하였으므로 생략하기로 한다. Referring to FIG. 31, the electronic device may obtain location prediction values corresponding to each of a plurality of user devices (S3101). Specifically, the electronic device measures the positions of a plurality of user devices based on data received from the plurality of user devices (e.g., location data, AP data, acceleration data, magnetic field data, barometric pressure data, etc.) to obtain the location prediction value. can be obtained. Since the description of how the electronic device measures its position has been described above, it will be omitted.

또한, 전자 장치는 복수의 사용자 디바이스들 중 적어도 일부가 미리 정해진 보정 조건을 만족하는 경우, 적어도 일부의 사용자 디바이스들의 위치 예측 값을 보정할 수 있다(S3102).Additionally, when at least some of the plurality of user devices satisfy a predetermined correction condition, the electronic device may correct the location prediction values of at least some of the user devices (S3102).

전자 장치는 메모리에 미리 정해진 보정 조건을 저장할 수 있다. The electronic device may store predetermined correction conditions in memory.

이때, 미리 정해진 보정 조건은 위치 예측 정확도, 디바이스 사이의 거리 또는 디바이스 사이의 통신 상태 중 적어도 하나를 기초로 설정될 수 있다. At this time, the predetermined correction condition may be set based on at least one of location prediction accuracy, distance between devices, or communication status between devices.

전자 장치는 특정 사용자 디바이스의 위치를 예측한 후, 상기 특정 사용자 디바이스의 위치 정확도(accuracy)를 산출할 수 있다. 여기서, 위치 정확도(accuracy)는 적어도 하나의 측위 알고리즘에 따라 출력된 위치 예측 값의 신뢰도를 의미할 수 있다. 이때, 위치 정확도는 위치 측정 알고리즘의 출력 값으로서 산출될 수 있다. 보다 구체적으로, 전자 장치는 특정 사용자 디바이스로부터 수신한 데이터를 기초로 특정 사용자 디바이스의 위치 예측 값 및 위치 예측 정확도를 출력할 수 있으나, 이에 한정되지 않는다. The electronic device may predict the location of a specific user device and then calculate the location accuracy of the specific user device. Here, location accuracy may refer to the reliability of the location prediction value output according to at least one positioning algorithm. At this time, location accuracy can be calculated as an output value of the location measurement algorithm. More specifically, the electronic device may output the location prediction value and location prediction accuracy of a specific user device based on data received from the specific user device, but is not limited to this.

예를 들어, 전자 장치는 제1 사용자 디바이스로부터 수신한 데이터를 기초로 제1 사용자 디바이스의 위치를 측정하여 제1 위치 예측 값을 출력할 수 있고, 제2 사용자 디바이스로부터 수신한 데이터를 기초로 제2 사용자 디바이스의 위치를 측정하여 제2 위치 예측 값을 출력할 수 있다. For example, the electronic device may measure the location of the first user device based on data received from the first user device and output a first location prediction value, and may output a first location prediction value based on data received from the second user device. 2 The location of the user device may be measured and a second location prediction value may be output.

전자 장치는 적어도 두개의 사용자 디바이스들의 위치 예측 값을 정확도가 높은 위치 예측 값을 기초로 보정할 수 있다. The electronic device may correct the location prediction values of at least two user devices based on a highly accurate location prediction value.

예를 들어, 제2 위치 예측 값의 정확도가 제1 위치 예측 값의 정확도 보다 높은 경우, 전자 장치는 제1 사용자 디바이스의 제1 위치 예측 값을 제2 사용자 디바이스의 제2 위치 예측 값을 기초로 보정할 수 있다. 구체적으로, 전자 장치는 제1 사용자 디바이스의 위치 예측 값을 상기 제2 위치 예측 값으로 보정할 수 있다. 또는 전자 장치는 제1 사용자 디바이스의 위치 예측 값을 상기 제1 위치 예측 값 및 제2 위치 예측 값을 정확도를 기반으로 보간한 값으로 보정할 수 있다.For example, if the accuracy of the second location prediction value is higher than the accuracy of the first location prediction value, the electronic device may use the first location prediction value of the first user device based on the second location prediction value of the second user device. It can be corrected. Specifically, the electronic device may correct the location prediction value of the first user device to the second location prediction value. Alternatively, the electronic device may correct the location prediction value of the first user device to a value obtained by interpolating the first location prediction value and the second location prediction value based on accuracy.

또한, 예를 들어, 전자 장치는 제1 사용자 디바이스 및 제2 사용자 디바이스 사이의 거리가 임계 값 이내인 경우, 상기 제1 사용자 디바이스의 위치 예측 값 및 상기 제2 사용자 디바이스의 위치 예측 값 중 적어도 하나를 보정할 수 있다. Additionally, for example, if the distance between the first user device and the second user device is within a threshold, the electronic device may provide at least one of the location prediction value of the first user device and the location prediction value of the second user device. can be corrected.

또한, 예를 들어, 전자 장치는 제1 사용자 디바이스 및 제2 사용자 디바이스가 무선 통신 연결이 가능한 상태(예: 블루투스 신호가 스캔되는 상태)인 경우, 상기 제1 사용자 디바이스의 위치 예측 값 및 상기 제2 사용자 디바이스의 위치 예측 값 중 적어도 하나를 보정할 수 있다.In addition, for example, when the first user device and the second user device are in a state in which a wireless communication connection is possible (e.g., a state in which a Bluetooth signal is being scanned), the electronic device may store the location prediction value of the first user device and the second user device. 2 At least one of the location prediction values of the user device can be corrected.

또한, 예를 들어, 전자 장치는 제1 사용자 디바이스가 측위 정확도가 상대적으로 높은 제1 기종이고, 제2 사용자 디바이스가 측위 정확도가 상대적으로 낮은 제2 기종인 경우, 상기 제1 사용자 디바이스의 위치 예측 값을 기초로 상기 제2 사용자 디바이스의 위치 예측 값을 보정할 수 있다. 예를 들어, 제1 기종은 제2 기종에 비해 사양이 높은 기종(예: uwb 센서가 포함된 기종)일 수 있으나, 이에 한정되지 않는다. In addition, for example, when the first user device is a first type with relatively high positioning accuracy and the second user device is a second type with relatively low positioning accuracy, the electronic device predicts the location of the first user device. The location prediction value of the second user device may be corrected based on the value. For example, the first model may be a model with higher specifications than the second model (e.g., a model including a uwb sensor), but is not limited to this.

도 32는, 다양한 실시예들에 따른, 전자 장치가 사용자 디바이스의 위치 정보를 보정하기 위한 방법의 일 예시를 도시한 도면이다. FIG. 32 is a diagram illustrating an example of a method for an electronic device to correct location information of a user device, according to various embodiments.

도 32를 참조하면, 전자 장치는 제1 사용자 디바이스에 대응되는 제1 예상 위치 정보 및 제2 사용자 디바이스에 대응되는 제2 예상 위치 정보를 획득할 수 있다(S3201). 이때, 예상 위치 정보는 위치 예측(또는 추정) 값 및 위치 예측에 대한 정확도(accuracy) 정보를 포함할 수 있다. 이때, 정확도 정보는 위치 예측 오차 값을 기초로 나타날 수 있고, 위치 예측 오차 값에 따라 정의되는 정확도 레벨(또는 accuracy radius)을 포함할 수 있다. 예시적으로, 제1 사용자 디바이스의 위치 정확도는 제2 사용자 디바이스의 위치 정확도 보다 높을 수 있다. Referring to FIG. 32, the electronic device may obtain first expected location information corresponding to the first user device and second expected location information corresponding to the second user device (S3201). At this time, the expected location information may include a location prediction (or estimate) value and accuracy information about the location prediction. At this time, the accuracy information may appear based on the position prediction error value and may include an accuracy level (or accuracy radius) defined according to the position prediction error value. Illustratively, the location accuracy of the first user device may be higher than that of the second user device.

또한, 전자 장치는 제1 사용자 디바이스 및 제2 사용자 디바이스 사이의 예상 거리 정보 획득할 수 있다(S3202). 구체적으로, 전자 장치는 제1 사용자 디바이스 및 제2 사용자 디바이스 사이의 무선 통신 상태를 기초로 예상 거리 정보를 획득할 수 있다. Additionally, the electronic device may obtain expected distance information between the first user device and the second user device (S3202). Specifically, the electronic device may obtain expected distance information based on the wireless communication state between the first user device and the second user device.

예를 들어, 전자 장치는 제1 사용자 디바이스로부터 스캔되는 제2 사용자 디바이스의 무선 통신 신호의 강도를 기초로 예상 거리 정보를 획득할 수 있다. 구체적으로, 제1 사용자 디바이스 및 제2 사용자 디바이스 사이의 거리가 가까울수록 제1 사용자 디바이스에서 스캔되는 제2 사용자 디바이스의 무선 통신 신호의 강도가 세질 수 있다. For example, the electronic device may obtain expected distance information based on the strength of a wireless communication signal of the second user device scanned from the first user device. Specifically, the closer the distance between the first user device and the second user device, the stronger the wireless communication signal of the second user device scanned by the first user device.

또한, 예를 들어, 전자 장치는 제1 사용자 디바이스 및 제2 사용자 디바이스 사이의 무선 통신 연결이 최초로 가능해지는 시점을 기초로 예상 거리 정보를 획득할 수 있다. 구체적으로, 전자 장치는 사용자 디바이스 사이에 무선 통신 연결이 가능해지는 최대 거리를 미리 저장할 수 있고, 제1 사용자 디바이스와 제2 사용자 디바이스의 통신 연결이 최초로 가능해진 시점에 대응되는 미리 저장된 거리를 기초로 예상 거리 정보를 획득할 수 있다. Additionally, for example, the electronic device may obtain expected distance information based on the time when a wireless communication connection between the first user device and the second user device is first enabled. Specifically, the electronic device may store in advance the maximum distance at which a wireless communication connection between user devices is possible, and based on the pre-stored distance corresponding to the time when a communication connection between the first user device and the second user device is first possible, Expected distance information can be obtained.

또한, 전자 장치는 제1 사용자 디바이스 또는 제2 사용자 디바이스 중 적어도 하나로부터 무선 통신 상태에 대한 정보를 수신할 수 있고, 이를 기초로 예상 거리 정보를 획득할 수 있다. Additionally, the electronic device may receive information about the wireless communication status from at least one of the first user device or the second user device and obtain expected distance information based on this.

또한, 전자 장치는 제1 예상 위치 정보에 포함되는 제1 정확도 정보 및 예상 거리 정보를 기초로 보정 파라미터를 결정할 수 있다(S3203). 구체적으로, 전자 장치는 제1 사용자 디바이스의 위치 예측 오차 및 제2 사용자 디바이스까지의 예상 거리를 기초로 보정 파라미터를 결정할 수 있다. 또한, 전자 장치는 상기 보정 파라미터를 기초로 상기 제2 예상 위치 정보에 포함되는 위치 추정 값을 보정할 수 있다(S3203). Additionally, the electronic device may determine a correction parameter based on the first accuracy information and expected distance information included in the first expected location information (S3203). Specifically, the electronic device may determine a correction parameter based on the location prediction error of the first user device and the expected distance to the second user device. Additionally, the electronic device may correct the location estimate value included in the second expected location information based on the correction parameter (S3203).

도 33은, 다양한 실시예들에 따른, 전자 장치가 사용자 디바이스의 경로를 기초로 위치를 보정하는 방법의 일 예시를 도시한 도면이다. FIG. 33 is a diagram illustrating an example of a method by which an electronic device corrects a location based on a path of a user device, according to various embodiments.

도 33을 참조하면, 대응되는 경로에 따라 이동하는 적어도 두 개의 사용자 디바이스들을 식별할 수 있다. 예를 들어, 전자 장치는 제1 경로(3301)에 따라 이동하는 제1 사용자 디바이스 및 상기 제1 경로(3301)에 대응되는 제2 경로(3302)에 따라 이동하는 제2 사용자 디바이스를 식별할 수 있다. 이때, 제1 경로(3301)는 제1 사용자 디바이스의 시간에 따른 위치를 기초로 정의될 수 있고, 제2 경로(3302)는 제2 사용자 디바이스의 시간에 따른 위치를 기초로 정의될 수 있다. Referring to FIG. 33, at least two user devices moving along a corresponding path can be identified. For example, the electronic device may identify a first user device moving along a first path 3301 and a second user device moving along a second path 3302 corresponding to the first path 3301. there is. At this time, the first path 3301 may be defined based on the location of the first user device over time, and the second path 3302 may be defined based on the location over time of the second user device.

제1 경로(3301) 및 제2 경로(3302)는 전자 장치에 의해 생성되어 사용자 디바이스에 제공된 경로일 수 있다. 예를 들어, 전자 장치는 제1 사용자 디바이스에 제1 경로(3301)를 제공하고, 제2 사용자 디바이스에 제2 경로(3302)를 제공할 수 있다. 이때, 제1 경로(3301) 및 제2 경로(3302)는 동일할 수 있다. The first path 3301 and the second path 3302 may be paths created by an electronic device and provided to the user device. For example, the electronic device may provide a first path 3301 to a first user device and a second path 3302 to a second user device. At this time, the first path 3301 and the second path 3302 may be the same.

또한, 이에 한정되지 않고, 전자 장치는 대응되는 목적지 위치로 이동하는 적어도 두 개의 사용자 디바이스들을 식별할 수 있다. 이때, 상기 목적지 위치는 전자 장치에 의해 사용자 디바이스에 제공되는 경로에 포함된 목적지 위치일 수 있다. 예를 들어, 전자 장치는 제1 목적지 위치가 설정된 제1 사용자 디바이스 및 상기 제1 목적지 위치가 설정된 제2 사용자 디바이스를 식별할 수 있다. Additionally, the electronic device is not limited to this and can identify at least two user devices moving to the corresponding destination location. At this time, the destination location may be a destination location included in the route provided to the user device by the electronic device. For example, the electronic device may identify a first user device to which the first destination location is set and a second user device to which the first destination location is set.

전자 장치는 사용자 디바이스에 제공된 경로와 관계없이, 사용자 디바이스의 위치를 예측할 수 있다. 예를 들어, 전자 장치는 제1 사용자 디바이스의 위치를 제1 위치(3310)로 결정할 수 있고, 제2 사용자 디바이스의 위치를 제2 위치(3320)로 결정할 수 있다. 이때, 전자 장치는 실내 공간 상의 복수의 지점들에 대응되는 복수의 측위점들(또는 복수의 측위점들을 포함하는 측위 데이터)을 기초로 적어도 하나의 사용자 디바이스의 위치를 식별하도록 설정될 수 있다. The electronic device can predict the location of the user device, regardless of the path provided to the user device. For example, the electronic device may determine the location of the first user device as the first location 3310 and determine the location of the second user device as the second location 3320. At this time, the electronic device may be set to identify the location of at least one user device based on a plurality of positioning points (or positioning data including a plurality of positioning points) corresponding to a plurality of points in the indoor space.

또한, 전자 장치는 식별된 위치를 적어도 하나의 앵커(anchor) 위치를 기초로 보정할 수 있다. 이때, 앵커 위치는 위치 정확도가 높은 위치를 의미할 수 있다. 구체적으로, 전자 장치는 위치 예측의 정확도가 미리 정해진 임계치 이상인 위치를 앵커 위치로 설정할 수 있다. Additionally, the electronic device may correct the identified location based on the location of at least one anchor. At this time, the anchor location may mean a location with high location accuracy. Specifically, the electronic device may set a location where the accuracy of location prediction is greater than or equal to a predetermined threshold as the anchor location.

예를 들어, 전자 장치는 측위 데이터에 포함된 복수의 측위점들 중 적어도 하나의 측위점의 위치를 기초로 사용자 디바이스의 위치를 결정할 수 있다. 결정된 사용자 디바이스의 위치 정확도가 미리 정해진 임계치 이상이 경우, 상기 적어도 하나의 측위점에 대응되는 위치를 앵커 위치로 설정할 수 있다. For example, the electronic device may determine the location of the user device based on the location of at least one location point among a plurality of location points included in the location data. If the determined location accuracy of the user device is greater than or equal to a predetermined threshold, the location corresponding to the at least one location point may be set as the anchor location.

또한, 전자 장치는 실내 공간에 포함되는 복수의 지점들 중 위치 정확도가 높은 적어도 일부의 지점들을 기초로 앵커 위치 정보를 획득할 수 있다. 예를 들어, 앵커 위치 정보는 제1 앵커 위치(3330) 및 제2 앵커 위치(3340)를 포함할 수 있으나, 이에 한정되지 않는다. Additionally, the electronic device may obtain anchor location information based on at least some points with high location accuracy among a plurality of points included in the indoor space. For example, the anchor location information may include a first anchor location 3330 and a second anchor location 3340, but is not limited thereto.

전자 장치는 대응되는 시점에 대응되는 앵커 위치로 식별된 적어도 두 개의 사용자 디바이스들을 식별할 수 있다. 또한, 이 경우, 전자 장치는 식별된 적어도 두 개의 사용자 디바이스들의 위치를 위치 예측 정확도를 기초로 보정할 수 있다. 또한, 전자 장치는 목적지 위치가 동일한 적어도 두 개의 사용자 디바이스들의 위치 예측 정확도를 기초로 적어도 하나의 사용자 디바이스의 위치를 보정할 수 있다. The electronic device may identify at least two user devices identified by the anchor location corresponding to the corresponding viewpoint. Additionally, in this case, the electronic device may correct the locations of at least two identified user devices based on location prediction accuracy. Additionally, the electronic device may correct the location of at least one user device based on the location prediction accuracy of at least two user devices that have the same destination location.

이때, 위치 예측 정확도는 위치가 보정된 거리를 기초로 결정될 수 있다. At this time, the location prediction accuracy can be determined based on the distance at which the location has been corrected.

구체적으로, 전자 장치는 기존에 식별된 위치로부터 앵커 위치로 보정되는 거리를 기초로 위치 예측 정확도를 결정할 수 있다. 구체적으로, 전자 장치는 적어도 하나의 사용자 디바이스의 식별된 위치의 보정된 거리가 작을수록 상기 식별된 위치의 정확도가 높은 것으로 판단할 수 있다. Specifically, the electronic device may determine the location prediction accuracy based on the distance corrected from the previously identified location to the anchor location. Specifically, the electronic device may determine that the smaller the corrected distance of the identified location of at least one user device, the higher the accuracy of the identified location.

일 예로, 전자 장치는 제1 위치(3310)로 식별된 제1 사용자 디바이스의 위치를 제1 앵커 위치(3330)에 대응되는 제1 보정 위치(3315)로 결정할 수 있다. 이때, 상기 제1 보정 위치(3315) 및 상기 제1 위치(3310) 사이의 거리는 제1 거리(d1)일 수 있다. As an example, the electronic device may determine the location of the first user device identified as the first location 3310 as the first correction location 3315 corresponding to the first anchor location 3330. At this time, the distance between the first correction position 3315 and the first position 3310 may be a first distance d1.

또한, 전자 장치는 제2 위치(3320)로 식별된 제2 사용자 디바이스의 위치를 상기 제1 앵커 위치(3330)에 대응되는 제2 보정 위치(3325)로 결정할 수 있다. 이때, 상기 제2 보정 위치(3325) 및 상기 제2 위치(3320) 사이의 거리는 제2 거리(d2)일 수 있다. 또한, 제2 보정 위치(3325) 및 제1 보정 위치(3315) 사이의 거리는 미리 정해진 임계치 이하일 수 있다. Additionally, the electronic device may determine the location of the second user device identified as the second location 3320 as the second correction location 3325 corresponding to the first anchor location 3330. At this time, the distance between the second correction position 3325 and the second position 3320 may be a second distance d2. Additionally, the distance between the second correction position 3325 and the first correction position 3315 may be less than or equal to a predetermined threshold.

전자 장치는 상기 제1 거리(d1)가 상기 제2 거리(d2)보다 작으므로 제1 사용자 디바이스의 위치 예측 정확도가 제2 사용자 디바이스의 위치 예측 정확도 보다 높은 것으로 판단할 수 있다. Since the first distance d1 is smaller than the second distance d2, the electronic device may determine that the location prediction accuracy of the first user device is higher than the location prediction accuracy of the second user device.

전자 장치는 목적지 위치가 동일한 적어도 두 개의 사용자 디바이스들이 대응되는 시점에 대응되는 위치로 식별되는 경우, 상기 두 개의 사용자 디바이스들이 동행하는 것으로 판단할 수 있다. If at least two user devices with the same destination location are identified as corresponding locations at corresponding times, the electronic device may determine that the two user devices are traveling together.

이 경우, 전자 장치는 적어도 두 개의 사용자 디바이스들의 위치 중 위치 예측 정확도가 높은 사용자 디바이스의 위치를 상기 적어도 두 개의 사용자 디바이스들의 위치로 결정할 수 있다. In this case, the electronic device may determine the location of the user device with the highest location prediction accuracy among the locations of the at least two user devices.

예시적으로, 전자 장치는 상기 제1 시점 및 상기 제2 시점 이후의 시간부터, 상기 제2 사용자 디바이스의 위치를 상기 제1 사용자 디바이스의 위치와 동일하게 결정할 수 있다. 구체적으로, 제1 사용자 디바이스 및 제2 사용자 디바이스가 목적지 위치가 동일하고 대응되는 시점(제1 시점 및 제2 시점)에 대응되는 위치(제1 보정 위치 및 제2 보정 위치)로 식별됨에 따라, 전자 장치는 상기 제1 사용자 디바이스 및 상기 제2 사용자 디바이스가 동행하는 것으로 판단하여, 제1 사용자 디바이스 및 제2 사용자 디바이스 중 하나의 위치만 연산하도록 설정될 수 있다. Exemplarily, the electronic device may determine the location of the second user device to be the same as the location of the first user device from the time after the first time point and the second time point. Specifically, as the first user device and the second user device have the same destination location and are identified as locations (first correction location and second correction location) corresponding to corresponding time points (first time point and second time point), The electronic device may be set to determine that the first user device and the second user device are traveling together and calculate the location of only one of the first user device and the second user device.

예를 들어, 전자 장치는 제1 사용자 디바이스의 위치가 제3 시점에 제2 앵커 위치(3340)에 대응되는 제3 보정 위치(3350)로 결정되는 경우, 제2 사용자 디바이스의 위치를 상기 제3 시점에 대응되는(또는 동일한) 제4 시점에 상기 제3 보정 위치(3350)에 대응되는 제4 보정 위치(3360)로 결정할 수 있다. 바람직하게는, 상기 제4 보정 위치(3360)는 제3 보정 위치(3350)와 동일하게 설정될 수 있다. For example, if the location of the first user device is determined to be the third correction position 3350 corresponding to the second anchor position 3340 at a third time, the electronic device may change the location of the second user device to the third correction position. The fourth correction position 3360 corresponding to the third correction position 3350 may be determined at a fourth viewpoint corresponding to (or the same as) the viewpoint. Preferably, the fourth correction position 3360 may be set to be the same as the third correction position 3350.

또한, 전자 장치는 상기 두 개의 사용자 디바이스들의 연산 모드를 상이하게 설정할 수 있다. 구체적으로, 전자 장치는 상기 두 개의 사용자 디바이스들 중 위치 예측 정확도가 높은 사용자 디바이스는 높은 연산량을 기초로 정확한 위치를 산출하고, 위치 예측 정확도가 낮은 사용자 디바이스는 낮은 연산량을 기초로 대략적인 위치를 산출할 수 있다. Additionally, the electronic device may set the operation modes of the two user devices to be different. Specifically, among the two user devices, the user device with high location prediction accuracy calculates an accurate location based on a high computation amount, and the user device with low location prediction accuracy calculates an approximate location based on a low computation amount. can do.

이를 통해, 전자 장치는 동행하는 복수의 사용자 디바이스들 중 위치 예측 정확도가 높은 사용자 디바이스의 위치만을 기초로 복수의 사용자 디바이스들의 위치를 예측함에 따라, 불필요한 연산량을 감소시킬 수 있다. Through this, the electronic device can reduce the amount of unnecessary calculations by predicting the locations of a plurality of user devices based only on the location of a user device with high location prediction accuracy among the plurality of accompanying user devices.

예시적으로, 전자 장치는 제1 연산 모드에 따라 제1 사용자 디바이스의 위치를 추정할 수 있고, 상기 제1 연산 모드보다 연산량이 작은 제2 연산 모드에 따라 제2 사용자 디바이스의 위치를 추정할 수 있다. 실시예에 따라, 전자 장치는 제2 사용자 디바이스의 위치를 추정하지 않을 수도 있다. As an example, the electronic device may estimate the location of the first user device according to a first operation mode, and may estimate the location of the second user device according to a second operation mode with a smaller calculation amount than the first operation mode. there is. Depending on the embodiment, the electronic device may not estimate the location of the second user device.

전자 장치는 위치 추정에 이용되는 데이터의 볼륨을 기초로 적어도 하나의 연산 모드를 설정할 수 있다. The electronic device may set at least one calculation mode based on the volume of data used for location estimation.

예를 들어, 전자 장치는 제1 연산 모드에 따라, 제1 사용자 디바이스로부터 수집된 AP 데이터 및 가속도 데이터를 이용하여 상기 제1 사용자 디바이스의 위치를 추정하도록 설정될 수 있다. For example, the electronic device may be set to estimate the location of the first user device using AP data and acceleration data collected from the first user device according to the first operation mode.

또한, 이 경우, 전자 장치는 상기 제1 연산 모드보다 연산량이 작도록 설정된 제2 연산 모드에 따라, 제2 사용자 디바이스로부터 수집된 AP 데이터 또는 가속도 데이터 중 하나를 이용하여 상기 제2 사용자 디바이스의 위치를 추정하도록 설정될 수 있다. 예를 들어, 전자 장치는 제2 사용자 디바이스로부터 수신한 가속도 데이터를 기초로 제2 사용자 디바이스의 위치를 갱신하되, 상기 제1 사용자 디바이스로부터 수신된 AP 데이터를 기초로 제2 사용자 디바이스의 위치를 보정하도록 설정될 수 있다. Additionally, in this case, the electronic device determines the location of the second user device using one of AP data or acceleration data collected from the second user device according to a second calculation mode set to have a smaller calculation amount than the first calculation mode. Can be set to estimate. For example, the electronic device updates the location of the second user device based on acceleration data received from the second user device, but corrects the location of the second user device based on AP data received from the first user device. It can be set to do so.

전자 장치는 미리 설정된 조건이 달성되는 경우, 연산 모드를 전환할 수 있다. 구체적으로, 전자 장치는 제2 사용자 디바이스가 제1 사용자 디바이스와 동행하지 않는 것으로 판단되는 경우, 제2 연산 모드를 제1 연산 모드로 전환하여 제2 사용자 디바이스의 위치를 예측할 수 있다. The electronic device can switch operation modes when a preset condition is achieved. Specifically, when it is determined that the second user device is not accompanying the first user device, the electronic device may predict the location of the second user device by switching the second calculation mode to the first calculation mode.

구체적으로, 제2 연산 모드에 따라 예측된 제2 사용자 디바이스의 위치와 제1 사용자 디바이스의 위치에 따라 보정된 제2 사용자 디바이스의 위치가 미리 정해진 임계치 이상 차이나는 경우, 전자 장치는 제2 연산 모드를 제1 연산 모드로 전환하도록 설정될 수 있다. Specifically, when the location of the second user device predicted according to the second operation mode and the location of the second user device corrected according to the location of the first user device differ by more than a predetermined threshold, the electronic device operates in the second operation mode. Can be set to switch to the first operation mode.

도 34는, 다양한 실시예들에 따른, 전자 장치가 사용자 디바이스의 경로를 기초로 위치를 보정하는 방법의 일 예시를 도시한 흐름도이다. FIG. 34 is a flowchart illustrating an example of a method by which an electronic device corrects a location based on a path of a user device, according to various embodiments.

도 34를 참조하면, 전자 장치는 목적지 위치가 동일한 제1 사용자 디바이스 및 제2 사용자 디바이스를 식별할 수 있다(S3401).Referring to FIG. 34, the electronic device can identify a first user device and a second user device that have the same destination location (S3401).

또한, 전자 장치는 제1 위치로 식별된 제1 사용자 디바이스의 위치가 제1 시점에 제1 앵커 위치에 대응되는 제1 보정 위치로 결정할 수 있다(S3402).Additionally, the electronic device may determine that the location of the first user device identified as the first location is the first correction location corresponding to the first anchor location at the first time point (S3402).

또한, 전자 장치는 제2 위치로 식별된 제2 사용자 디바이스의 위치가 상기 제1 시점에 대응되는 제2 시점에 상기 제1 앵커 위치에 대응되는 제2 보정 위치로 결정할 수 있다(S3401).Additionally, the electronic device may determine the location of the second user device identified as the second location as the second correction position corresponding to the first anchor position at the second time point corresponding to the first time point (S3401).

또한, 전자 장치는 제1 사용자 디바이스의 위치가 제3 시점에 제2 앵커 위치에 대응되는 제3 보정 위치로 결정되는 경우, 제3 사용자 디바이스의 위치를 제3 시점에 대응되는 제4 시점에 제3 보정 위치로 결정할 수 있다(S3401).Additionally, when the location of the first user device is determined to be the third correction position corresponding to the second anchor position at the third time point, the electronic device adjusts the location of the third user device to the fourth time point corresponding to the third time point. 3 It can be determined by the correction position (S3401).

도 35는, 다양한 실시예들에 따른, 동행하는 것으로 판단되는 복수의 사용자 디바이스들의 스캔 주기 차이에 따른 위치 보정 방법 설명하기 위한 도면이다. FIG. 35 is a diagram illustrating a method for correcting positions according to differences in scan cycles of a plurality of user devices that are determined to be traveling together, according to various embodiments.

도 35의 (a)는 제1 사용자 디바이스의 AP 데이터 스캔 주기에 따른 제1 사용자 디바이스의 위치를 도시한 도면이다. 도 35의 (b)는 제2 사용자 디바이스의 AP 데이터 스캔 주기에 따른 제2 사용자 디바이스의 위치를 도시한 도면이다. Figure 35(a) is a diagram showing the location of the first user device according to the AP data scan cycle of the first user device. Figure 35(b) is a diagram showing the location of the second user device according to the AP data scan cycle of the second user device.

전자 장치는 사용자 디바이스로부터 수집된 AP 데이터를 기초로 사용자 디바이스의 위치를 예측할 수 있다. The electronic device can predict the location of the user device based on AP data collected from the user device.

예를 들어, 도 35의 (a)를 참조하면, 제1 사용자 디바이스는 제1 스캔 주기(3501)에 따라 AP 데이터를 수집할 수 있다. 또한, 전자 장치는 제1 사용자 디바이스로부터 수신된 AP 데이터를 기초로 제1 사용자 디바이스의 위치를 예측할 수 있다. 예를 들어, 전자 장치는 제1 사용자 디바이스의 제1 스캔(scan1)에 따라 제1 사용자 디바이스의 위치를 P11로 결정할 수 있다. 또한, 도 35의 (b)를 참조하면, 전자 장치는 제2 사용자 디바이스의 제1 스캔(scan1)에 따라 제2 사용자 디바이스의 위치를 P21로 결정할 수 있다. For example, referring to (a) of FIG. 35, the first user device may collect AP data according to the first scan cycle 3501. Additionally, the electronic device may predict the location of the first user device based on AP data received from the first user device. For example, the electronic device may determine the location of the first user device as P11 according to the first scan (scan1) of the first user device. Additionally, referring to (b) of FIG. 35, the electronic device may determine the location of the second user device as P21 according to the first scan (scan1) of the second user device.

또한, 전자 장치는 제1 사용자 디바이스의 위치를 갱신할 수 있다(3510). 구체적으로, 전자 장치는 제1 사용자 디바이스로부터 수신한 위치 데이터, 자기장 데이터, 가속도 데이터 중 적어도 하나 또는 궤적 데이터를 기초로 제1 사용자 디바이스의 위치를 갱신할 수 있다(3510).Additionally, the electronic device may update the location of the first user device (3510). Specifically, the electronic device may update the location of the first user device based on at least one of location data, magnetic field data, acceleration data, or trajectory data received from the first user device (3510).

또한, 전자 장치는 적어도 두 개의 사용자 디바이스들이 동행하는 것으로 판단하는 경우, 도 33 및 도 34에 개시된 사항에 따라 위치를 보정하도록 설정될 수 있다. Additionally, when the electronic device determines that at least two user devices are traveling together, the electronic device may be set to correct its location according to the information disclosed in FIGS. 33 and 34.

예를 들어, 특정 시점(t0)에 제1 사용자 디바이스 및 제2 사용자 디바이스가 동행하는 것으로 판단되는 경우, 제2 사용자 디바이스의 보정 위치를 제1 사용자 디바이스의 보정 위치를 기초로 결정할 수 있다. 또한, 이 경우, 전자 장치는 상기 특정 시점(t0) 전후로 제2 사용자 디바이스의 위치를 추정하기 위한 연산 모드를 전환할 수 있다. 예를 들어, 전자 장치는 상기 특정 시점(t0) 이전에는 제1 연산 모드에 따라, 제2 사용자 디바이스로부터 수집된 AP 데이터 및 가속도 데이터를 기초로 제2 사용자 디바이스의 위치를 예측할 수 있다. 이때, 전자 장치는 특정 시점(t0) 이후에는 제2 연산 모드로 전환하여, 제2 사용자 디바이스로부터 획득된 가속도 데이터를 기초로 제2 사용자 디바이스의 위치를 예측하고, 제1 사용자 디바이스의 위치를 기초로 제2 사용자 다비이스의 위치를 보정할 수 있다. For example, when it is determined that the first user device and the second user device are traveling together at a specific time t0, the corrected position of the second user device may be determined based on the corrected position of the first user device. Additionally, in this case, the electronic device may switch the calculation mode for estimating the location of the second user device before and after the specific time t0. For example, before the specific time t0, the electronic device may predict the location of the second user device based on AP data and acceleration data collected from the second user device according to the first calculation mode. At this time, the electronic device switches to the second calculation mode after a specific point in time (t0), predicts the location of the second user device based on acceleration data obtained from the second user device, and predicts the location of the first user device based on the location of the first user device. The position of the second user device can be corrected.

또한, 전자 장치는, 사용자 디바이스가 앵커 위치에 대응되는 위치에서 AP 데이터를 스캔하는 경우, 앵커링 이벤트(Anchoring event, AE)가 발생한 것으로 판단하고, 사용자 디바이스의 위치를 앵커 위치를 기초로 보정할 수 있다. Additionally, when the user device scans AP data at a location corresponding to the anchor location, the electronic device may determine that an anchoring event (AE) has occurred and correct the location of the user device based on the anchor location. there is.

예를 들어, 제1 앵커 위치에 대응되는 위치에서의 제1 사용자 디바이스의 제2 스캔(scan2)에 따라 제1 앵커링 이벤트(AE1)가 발생한 경우, 제1 사용자 디바이스의 위치를 제1 앵커 위치에 대응되는 제1 보정 위치로 결정할 수 있다. For example, when the first anchoring event (AE1) occurs according to the second scan (scan2) of the first user device at a location corresponding to the first anchor location, the location of the first user device is changed to the first anchor location. It can be determined by the corresponding first correction position.

이에 따라, 전자 장치는 제1 사용자 디바이스의 위치 보정을 기초로 제2 사용자 디바이스의 위치를 보정할 수 있다. 구체적으로, 전자 장치는 제1 앵커링 이벤트(AE1)가 발생한 시점에 대응되는 제1 시점(t1)에 제2 사용자 디바이스의 위치를 상기 제1 보정 위치로 결정할 수 있다. Accordingly, the electronic device can correct the position of the second user device based on the position correction of the first user device. Specifically, the electronic device may determine the location of the second user device as the first correction position at a first time point (t1) corresponding to the time point at which the first anchoring event (AE1) occurs.

전자 장치는, 상술한 연산 모드에 의존하여 사용자 디바이스의 위치를 예측할 수 있다. The electronic device can predict the location of the user device depending on the above-described calculation mode.

예를 들어, 전자 장치가 제2 사용자 디바이스의 위치를 제2 연산 모드로 예측함에 따라, 제2 사용자 디바이스가 AP 데이터를 스캔(scan2)하는 경우, 전자 장치는 스캔된 AP 데이터에 대응되는 위치를 산출하지 않을 수 있다. 이와 반대로, 전자 장치는 제1 사용자 디바이스의 위치를 제1 연산 모드로 예측함에 따라, 제1 사용자 디바이스의 제3 스캔(scan3)에 따라 획득된 AP 데이터를 기초로 제1 사용자 디바이스의 위치를 P13으로 결정할 수 있다. For example, as the electronic device predicts the location of the second user device in the second calculation mode, when the second user device scans AP data (scan2), the electronic device determines the location corresponding to the scanned AP data. It may not be calculated. On the contrary, as the electronic device predicts the location of the first user device in the first calculation mode, the location of the first user device is P13 based on the AP data obtained according to the third scan (scan3) of the first user device. can be decided.

또한, 제2 앵커 위치에 대응되는 위치에서의 제1 사용자 디바이스의 제4 스캔(scan4)에 따라 제2 앵커링 이벤트(AE2)가 발생한 경우, 제1 사용자 디바이스의 위치를 제2 앵커 위치에 대응되는 제2 보정 위치로 결정할 수 있다. In addition, when the second anchoring event (AE2) occurs according to the fourth scan (scan4) of the first user device at a position corresponding to the second anchor position, the position of the first user device is changed to the second anchor position. It can be determined as the second correction position.

또한, 이 경우, 전자 장치는 제2 앵커링 이벤트(AE2)가 발생한 시점에 대응되는 제2 시점(t2)에 제2 사용자 디바이스의 위치를 상기 제2 보정 위치로 결정할 수 있다. Additionally, in this case, the electronic device may determine the location of the second user device as the second correction position at a second time point (t2) corresponding to the time when the second anchoring event (AE2) occurs.

이때, 앵커링 이벤트의 발생에 따른 제1 사용자 디바이스의 위치 보정 간격(3502)은 제1 사용자 디바이스의 스캔 주기(3501)에 연관될 수 있다. 이는, 제1 사용자 디바이스가 앵커 위치 주변에서 AP 데이터를 스캔하는 경우 앵커링 이벤트가 발생하고, 이에 따라 제1 사용자 디바이스의 위치가 보정되기 때문이다. At this time, the position correction interval 3502 of the first user device according to the occurrence of the anchoring event may be related to the scan cycle 3501 of the first user device. This is because an anchoring event occurs when the first user device scans AP data around the anchor location, and the location of the first user device is corrected accordingly.

예를 들어, 제1 사용자 디바이스의 위치 보정 간격(3502)은 제1 사용자 디바이스의 스캔 주기(3501)의 N(이때, N은 자연수)배일 수 있다. For example, the position correction interval 3502 of the first user device may be N (where N is a natural number) times the scan period 3501 of the first user device.

또한, 제2 사용자 디바이스의 위치 보정 간격(3552)은 제2 사용자 디바이스의 스캔 주기(3551)와 연관되지 않을 수 있다. 이는, 제2 사용자 디바이스의 위치 보정은 제1 사용자 디바이스의 위치 보정에 의존하여 수행되기 때문이다. Additionally, the position correction interval 3552 of the second user device may not be associated with the scan period 3551 of the second user device. This is because the position correction of the second user device is performed depending on the position correction of the first user device.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described with limited examples and drawings, various modifications and variations can be made by those skilled in the art from the above description. For example, the described techniques are performed in a different order than the described method, and/or components of the described system, structure, device, circuit, etc. are combined or combined in a different form than the described method, or other components are used. Alternatively, appropriate results may be achieved even if substituted or substituted by an equivalent.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents of the claims also fall within the scope of the claims described below.

Claims (20)

실내 공간에 위치하는 적어도 하나의 사용자 디바이스의 위치를 추정하기 위한 전자 장치로서,
메모리; 및
상기 메모리에 전자적으로 연결되는 적어도 하나의 프로세서;를 포함하고,
상기 적어도 하나의 프로세서는,
목적지 위치가 동일한 제1 사용자 디바이스 및 제2 사용자 디바이스를 식별하고,
제1 위치로 식별된 제1 사용자 디바이스의 위치를 제1 시점에 제1 앵커 위치에 대응되는 제1 보정 위치로 결정하고,
제2 위치로 식별된 제2 사용자 디바이스의 위치를 상기 제1 시점에 대응되는 제2 시점에 상기 제1 앵커 위치에 대응되는 제2 보정 위치로 결정하고,
상기 제1 사용자 디바이스의 위치가 제3 시점에 제2 앵커 위치에 대응되는 제3 보정 위치로 결정되는 경우, 상기 제2 사용자 디바이스의 위치를 상기 제3 시점에 대응되는 제4 시점에 상기 제3 보정 위치로 결정하도록 설정되고,
상기 제1 위치 및 상기 제1 보정 위치 사이의 제1 거리가 상기 제2 위치 및 상기 제2 보정 위치 사이의 제2 거리 보다 작은 것을 특징으로 하는 전자 장치.
An electronic device for estimating the location of at least one user device located in an indoor space, comprising:
Memory; and
At least one processor electronically connected to the memory,
The at least one processor,
Identifying a first user device and a second user device having the same destination location,
Determine the location of the first user device identified as the first location as a first correction location corresponding to the first anchor location at the first time point,
determining the location of the second user device identified as the second location as a second correction position corresponding to the first anchor location at a second time point corresponding to the first time point;
When the location of the first user device is determined to be a third correction position corresponding to the second anchor position at a third time point, the location of the second user device is determined to be the third correction position at a fourth time point corresponding to the third time point. is set to determine the correction position,
The electronic device, wherein a first distance between the first position and the first correction position is smaller than a second distance between the second position and the second correction position.
제1항에 있어서,
상기 적어도 하나의 프로세서는 상기 제1 사용자 디바이스에 제1 경로를 제공하고 상기 제2 사용자 디바이스에 제2 경로를 제공하도록 더 설정되고,
상기 제1 경로의 목적지 위치 및 상기 제2 경로의 목적지 위치는 동일한 것을 특징으로 하는 전자 장치.
According to paragraph 1,
the at least one processor is further configured to provide a first path to the first user device and a second path to the second user device,
An electronic device, wherein the destination location of the first route and the destination location of the second route are the same.
제1항에 있어서,
상기 제1 보정 위치 및 상기 제2 보정 위치 사이의 거리는 미리 정해진 임계치 이하인 것을 특징으로 하는 전자 장치.
According to paragraph 1,
An electronic device, wherein the distance between the first correction position and the second correction position is less than or equal to a predetermined threshold.
제1항에 있어서,
상기 제1 앵커 위치 및 상기 제2 앵커 위치는 상기 메모리에 미리 저장된 앵커 위치 정보에 포함되고,
상기 적어도 하나의 프로세서는 상기 실내 공간에 포함된 복수의 지점들 중 위치 정확도를 기준으로 식별된 적어도 일부의 지점들을 기초로 상기 앵커 위치 정보를 획득하도록 설정되는 전자 장치.
According to paragraph 1,
The first anchor position and the second anchor position are included in anchor position information pre-stored in the memory,
The at least one processor is configured to obtain the anchor location information based on at least some points identified based on location accuracy among a plurality of points included in the indoor space.
제1항에 있어서,
상기 적어도 하나의 프로세서는 상기 실내 공간 상의 복수의 지점들에 대응되는 복수의 측위점들을 기초로 상기 적어도 하나의 사용자 디바이스의 위치를 식별하도록 더 설정되고,
상기 제1 위치는 제1 측위점의 위치를 기초로 결정되고, 상기 제2 위치는 제2 측위점의 위치를 기초로 결정되는 것을 특징으로 하는 전자 장치.
According to paragraph 1,
The at least one processor is further configured to identify the location of the at least one user device based on a plurality of positioning points corresponding to a plurality of points in the indoor space,
The first location is determined based on the location of the first location point, and the second location is determined based on the location of the second location point.
제1항에 있어서,
상기 적어도 하나의 프로세서는 상기 제1 거리를 기초로 상기 제1 위치에 대응되는 제1 위치 정확도를 산출하고, 상기 제2 거리를 기초로 상기 제2 위치에 대응되는 제2 위치 정확도를 산출하도록 더 설정되고,
상기 제1 위치 정확도는 상기 제2 위치 정확도 보다 큰 것을 특징으로 하는 전자 장치.
According to paragraph 1,
The at least one processor is further configured to calculate a first location accuracy corresponding to the first location based on the first distance and calculate a second location accuracy corresponding to the second location based on the second distance. is set,
The first location accuracy is greater than the second location accuracy.
제1항에 있어서,
상기 적어도 하나의 프로세서는 상기 제1 사용자 디바이스의 위치를 제1 연산 모드에 따라 추정하되, 상기 제2 사용자 디바이스의 위치는 상기 제1 연산 모드보다 연산량이 적게 설정된 제2 연산 모드에 따라 추정하도록 더 설정되는 전자 장치.
According to paragraph 1,
The at least one processor estimates the location of the first user device according to a first operation mode, and estimates the location of the second user device according to a second operation mode in which the amount of calculation is set to be smaller than the first operation mode. Electronic device being set up.
제7항에 있어서,
상기 적어도 하나의 프로세서는,
상기 제1 연산 모드에 따라, 상기 제1 사용자 디바이스로부터 수신된 AP 데이터 및 가속도 데이터를 기초로 상기 제1 사용자 디바이스의 위치를 추정하도록 설정되고,
상기 제2 연산 모드에 따라, 상기 제2 사용자 디바이스로부터 수신된 AP 데이터 또는 가속도 데이터 중 하나를 기초로 상기 제2 사용자 디바이스의 위치를 추정하도록 더 설정되는 전자 장치.
In clause 7,
The at least one processor,
According to the first calculation mode, the location of the first user device is estimated based on AP data and acceleration data received from the first user device,
According to the second calculation mode, the electronic device is further configured to estimate the location of the second user device based on one of AP data or acceleration data received from the second user device.
제8항에 있어서,
상기 적어도 하나의 프로세서는,
상기 제2 연산 모드에 따라, 상기 제2 사용자 디바이스로부터 수신된 상기 가속도 데이터를 기초로 상기 제2 사용자 디바이스의 위치를 추정하도록 설정되되,
상기 제1 사용자 디바이스로부터 수신한 AP 데이터를 기초로 추정된 위치를 기초로 상기 제2 사용자 디바이스의 위치를 보정하도록 더 설정되는 전자 장치.
According to clause 8,
The at least one processor,
According to the second calculation mode, the location of the second user device is set to be estimated based on the acceleration data received from the second user device,
The electronic device is further configured to correct the location of the second user device based on the location estimated based on AP data received from the first user device.
제7항에 있어서,
상기 적어도 하나의 프로세서는 미리 설정된 조건이 달성되는 경우, 상기 제2 연산 모드를 상기 제1 연산 모드로 전환하도록 더 설정되는 전자 장치.
In clause 7,
The electronic device is further configured to switch the second operation mode to the first operation mode when a preset condition is achieved.
제1항에 있어서,
상기 제1 시점 및 상기 제3 시점 사이의 시간 구간은 상기 제1 사용자 디바이스의 AP 신호 스캔 주기의 N(N=자연수)배 인 것을 특징으로 하는 전자 장치.
According to paragraph 1,
The time interval between the first time point and the third time point is N (N = natural number) times the AP signal scan period of the first user device.
실내 공간에 위치하는 적어도 하나의 사용자 디바이스의 위치를 추정하기 위한 전자 장치의 동작 방법으로, 상기 전자 장치에 포함되는 적어도 하나의 프로세서에 의해,
목적지 위치가 동일한 제1 사용자 디바이스 및 제2 사용자 디바이스를 식별하는 단계;
제1 위치로 식별된 제1 사용자 디바이스의 위치가 제1 시점에 제1 앵커 위치에 대응되는 제1 보정 위치로 결정하는 단계;
제2 위치로 식별된 제2 사용자 디바이스의 위치가 상기 제1 시점에 대응되는 제2 시점에 상기 제1 앵커 위치에 대응되는 제2 보정 위치로 결정하는 단계; 및
상기 제1 사용자 디바이스의 위치가 제3 시점에 제2 앵커 위치에 대응되는 제3 보정 위치로 결정되는 경우, 상기 제2 사용자 디바이스의 위치를 상기 제3 시점에 대응되는 제4 시점에 상기 제3 보정 위치로 결정하는 단계;를 포함하고,
상기 제1 위치 및 상기 제1 보정 위치 사이의 제1 거리가 상기 제2 위치 및 상기 제2 보정 위치 사이의 제2 거리 보다 작은 것을 특징으로 하는 전자 장치의 동작 방법.
A method of operating an electronic device for estimating the location of at least one user device located in an indoor space, using at least one processor included in the electronic device, the method comprising:
identifying a first user device and a second user device having the same destination location;
determining the location of the first user device identified as the first location as a first correction location corresponding to the first anchor location at the first time;
determining the location of the second user device identified as the second location as a second correction position corresponding to the first anchor location at a second time point corresponding to the first time point; and
When the location of the first user device is determined to be a third correction position corresponding to the second anchor position at a third time point, the location of the second user device is determined to be the third correction position at a fourth time point corresponding to the third time point. Including determining a correction position,
A method of operating an electronic device, wherein a first distance between the first position and the first correction position is smaller than a second distance between the second position and the second correction position.
제12항에 있어서,
상기 제1 보정 위치 및 상기 제2 보정 위치 사이의 거리는 미리 정해진 임계치 이하인 것을 특징으로 하는 전자 장치의 동작 방법.
According to clause 12,
A method of operating an electronic device, characterized in that the distance between the first correction position and the second correction position is less than or equal to a predetermined threshold.
제12항에 있어서,
상기 제1 앵커 위치 및 상기 제2 앵커 위치는 메모리에 미리 저장된 앵커 위치 정보에 포함되고,
상기 전자 장치의 동작 방법은,
상기 실내 공간에 포함된 복수의 지점들 중 위치 정확도를 기준으로 식별된 적어도 일부의 지점들을 기초로 상기 앵커 위치 정보를 획득하는 단계;를 더 포함하는 전자 장치의 동작 방법.
According to clause 12,
The first anchor position and the second anchor position are included in anchor position information previously stored in a memory,
The method of operating the electronic device is,
A method of operating an electronic device further comprising: acquiring the anchor location information based on at least some points identified based on location accuracy among a plurality of points included in the indoor space.
제12항에 있어서,
상기 실내 공간 상의 복수의 지점들에 대응되는 복수의 측위점들을 기초로 상기 적어도 하나의 사용자 디바이스의 위치를 식별하는 단계;를 더 포함하고,
상기 제1 위치는 제1 측위점의 위치를 기초로 결정되고, 상기 제2 위치는 제2 측위점의 위치를 기초로 결정되는 것을 특징으로 하는 전자 장치의 동작 방법.
According to clause 12,
Further comprising: identifying the location of the at least one user device based on a plurality of positioning points corresponding to a plurality of points in the indoor space,
The first position is determined based on the position of the first positioning point, and the second position is determined based on the position of the second positioning point.
제12항에 있어서,
상기 제1 거리를 기초로 상기 제1 위치에 대응되는 제1 위치 정확도를 산출하고, 상기 제2 거리를 기초로 상기 제2 위치에 대응되는 제2 위치 정확도를 산출하는 단계;를 더 포함하고,
상기 제1 위치 정확도는 상기 제2 위치 정확도 보다 큰 것을 특징으로 하는 전자 장치의 동작 방법.
According to clause 12,
Calculating a first location accuracy corresponding to the first location based on the first distance, and calculating a second location accuracy corresponding to the second location based on the second distance,
A method of operating an electronic device, characterized in that the first location accuracy is greater than the second location accuracy.
제12항에 있어서,
상기 적어도 하나의 프로세서에 의해, 상기 제1 사용자 디바이스의 위치를 제1 연산 모드에 따라 추정하는 단계; 및
상기 제2 사용자 디바이스의 위치는 상기 제1 연산 모드보다 연산량이 적게 설정된 제2 연산 모드에 따라 추정하는 단계;를 더 포함하는 전자 장치의 동작 방법.
According to clause 12,
estimating, by the at least one processor, a location of the first user device according to a first operation mode; and
A method of operating an electronic device further comprising estimating the location of the second user device according to a second calculation mode in which a calculation amount is set to be smaller than that of the first calculation mode.
제17항에 있어서,
상기 제1 연산 모드에 따라 추정하는 단계는, 상기 제1 사용자 디바이스로부터 수신된 AP 데이터 및 가속도 데이터를 기초로 상기 제1 사용자 디바이스의 위치를 추정하는 단계를 포함하고,
상기 제2 연산 모드에 따라 추정하는 단계는, 상기 제2 사용자 디바이스로부터 수신된 AP 데이터 또는 가속도 데이터 중 하나를 기초로 상기 제2 사용자 디바이스의 위치를 추정하는 단계를 포함하는 전자 장치의 동작 방법.
According to clause 17,
The estimating step according to the first calculation mode includes estimating the location of the first user device based on AP data and acceleration data received from the first user device,
The estimating step according to the second calculation mode includes estimating the location of the second user device based on one of AP data or acceleration data received from the second user device.
제12항에 있어서,
상기 제1 시점 및 상기 제3 시점 사이의 시간 구간은 상기 제1 사용자 디바이스의 AP 신호 스캔 주기의 N(N=자연수)배 인 것을 특징으로 하는 전자 장치의 동작 방법.
According to clause 12,
A method of operating an electronic device, characterized in that the time interval between the first time point and the third time point is N (N = natural number) times the AP signal scan period of the first user device.
실내 공간에 위치하는 사용자 디바이스; 및
상기 사용자 디바이스의 실내 공간 상의 위치를 추정하기 위한 제1항에 따른 전자 장치;를 포함하는 시스템.
A user device located in an indoor space; and
A system comprising: an electronic device according to claim 1 for estimating a location of the user device in an indoor space.
KR1020230041182A 2022-10-26 2023-03-29 A method and system for calibrating indoor positioning using mobile devices located in a proximity zone KR102579579B1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR1020220139071 2022-10-26
KR1020220139070 2022-10-26
KR20220139070 2022-10-26
KR20220139071 2022-10-26

Publications (1)

Publication Number Publication Date
KR102579579B1 true KR102579579B1 (en) 2023-09-18

Family

ID=88196283

Family Applications (4)

Application Number Title Priority Date Filing Date
KR1020230041179A KR102611202B1 (en) 2022-10-26 2023-03-29 A method and system for updating an indoor map using a mobile device implemented to sense the surrounding environment
KR1020230041178A KR102611199B1 (en) 2022-10-26 2023-03-29 A method and system for updating indoor maps to reflect the movement of mobile device
KR1020230041182A KR102579579B1 (en) 2022-10-26 2023-03-29 A method and system for calibrating indoor positioning using mobile devices located in a proximity zone
KR1020230041181A KR102611204B1 (en) 2022-10-26 2023-03-29 A method and system for controlling an indoor map application based on movement patterns of a mobile device

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020230041179A KR102611202B1 (en) 2022-10-26 2023-03-29 A method and system for updating an indoor map using a mobile device implemented to sense the surrounding environment
KR1020230041178A KR102611199B1 (en) 2022-10-26 2023-03-29 A method and system for updating indoor maps to reflect the movement of mobile device

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020230041181A KR102611204B1 (en) 2022-10-26 2023-03-29 A method and system for controlling an indoor map application based on movement patterns of a mobile device

Country Status (1)

Country Link
KR (4) KR102611202B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010183262A (en) * 2009-02-04 2010-08-19 Kddi Corp Position estimation method using evaluation value for estimated position, mobile station and program

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100929892B1 (en) * 2008-03-31 2009-12-04 (주)성경기술공사 How to edit a digital map
KR101143503B1 (en) * 2010-02-22 2012-05-09 현대엠엔소프트 주식회사 Method and apparatus for providing path using map information indoor
KR101178041B1 (en) * 2010-07-21 2012-08-30 한국과학기술원 Location based service system and method for performing indoor navigation
KR102121525B1 (en) * 2011-12-13 2020-06-18 삼성전자주식회사 System and method for providing navigation information based on operation mode
US9970757B2 (en) * 2014-01-08 2018-05-15 Qualcomm Incorporated Method and apparatus for positioning with always on barometer
KR20160094021A (en) * 2015-01-30 2016-08-09 한국과학기술연구원 Map-matching device and method for pedestrian indoor navigation
KR101751731B1 (en) * 2015-08-10 2017-06-29 숭실대학교산학협력단 Location tracking system and method
KR20170081884A (en) * 2016-01-05 2017-07-13 한국전자통신연구원 System for providing indoor route and method thereof
KR20180110392A (en) * 2017-03-29 2018-10-10 현대엘리베이터주식회사 Hybrid location positioning method for indoor location measurement based on smart device
KR102079061B1 (en) * 2017-10-27 2020-02-19 동명대학교 산학협력단 Apparatus for guiding indoor route for visually impaired and method by using the same
KR102129258B1 (en) * 2018-08-02 2020-07-02 주식회사 다비오 Apparatus and method for producing map
EP3678112A4 (en) * 2019-02-21 2021-03-31 LG Electronics Inc. Method and device for recording parking location

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010183262A (en) * 2009-02-04 2010-08-19 Kddi Corp Position estimation method using evaluation value for estimated position, mobile station and program

Also Published As

Publication number Publication date
KR102611202B1 (en) 2023-12-07
KR102611199B1 (en) 2023-12-07
KR102611204B1 (en) 2023-12-07

Similar Documents

Publication Publication Date Title
Li et al. Top 10 technologies for indoor positioning on construction sites
US8825388B2 (en) Indoor likelihood heatmap
US9949090B2 (en) Location tracking system and method
KR101616486B1 (en) Mobile device positioning
Zhuang et al. Bluetooth localization technology: Principles, applications, and future trends
US9797984B2 (en) Mobile portable device and positioning
KR102022668B1 (en) Landmark positioning
CN103162683B (en) For performing the apparatus and method of map match
KR101436031B1 (en) System and method for position estimation using downlink access point
US8330654B2 (en) Method and apparatus for positioning mobile device
CN109164411B (en) Personnel positioning method based on multi-data fusion
US20110178705A1 (en) Using Filtering With Mobile Device Positioning In A Constrained Environment
CN103843429A (en) Position indication controls for device locations
AU2013348177A1 (en) Pathway matching
KR20120120343A (en) Methods and apparatuses for determining if access to a region is feasible or infeasible for a user of a mobile device
KR101415191B1 (en) Pedestrian Navigation Apparatus
Retscher et al. Range validation of UWB and Wi-Fi for integrated indoor positioning
US20200304952A1 (en) Revising an unstable location fingerprint database for an area
Wilk et al. Indoor radio map maintenance by automatic annotation of crowdsourced Wi-Fi fingerprints
Retscher et al. Wi-Fi location fingerprinting using an intelligent checkpoint sequence
KR102579579B1 (en) A method and system for calibrating indoor positioning using mobile devices located in a proximity zone
KR102658152B1 (en) A method for identifying vertical movement of user of mobile device and updating it automatically
KR101621839B1 (en) Method and system for position-measuring by using moving pattern database
Jeon et al. Indoor WPS/PDR performance enhancement using map matching algorithm with mobile phone
Veenstra et al. Guiding sensor-node deployment over 2.5 D terrain

Legal Events

Date Code Title Description
GRNT Written decision to grant