KR102068382B1 - 센서 데이터 수집 - Google Patents

센서 데이터 수집 Download PDF

Info

Publication number
KR102068382B1
KR102068382B1 KR1020157019306A KR20157019306A KR102068382B1 KR 102068382 B1 KR102068382 B1 KR 102068382B1 KR 1020157019306 A KR1020157019306 A KR 1020157019306A KR 20157019306 A KR20157019306 A KR 20157019306A KR 102068382 B1 KR102068382 B1 KR 102068382B1
Authority
KR
South Korea
Prior art keywords
survey
sensor
point
map
plan
Prior art date
Application number
KR1020157019306A
Other languages
English (en)
Other versions
KR20150096761A (ko
Inventor
지 한 린
치 웨이 왕
스티브 디아세티스
Original Assignee
마이크로소프트 테크놀로지 라이센싱, 엘엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 filed Critical 마이크로소프트 테크놀로지 라이센싱, 엘엘씨
Publication of KR20150096761A publication Critical patent/KR20150096761A/ko
Application granted granted Critical
Publication of KR102068382B1 publication Critical patent/KR102068382B1/ko

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
    • G01C15/00Surveying instruments or accessories not provided for in groups G01C1/00 - G01C13/00
    • 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/0252Radio frequency fingerprinting
    • G01S5/02521Radio frequency fingerprinting using a radio-map
    • G01S5/02524Creating or updating the radio-map
    • 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/0252Radio frequency fingerprinting
    • G01S5/02521Radio frequency fingerprinting using a radio-map
    • G01S5/02524Creating or updating the radio-map
    • G01S5/02525Gathering the radio frequency fingerprints
    • 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/0295Proximity-based methods, e.g. position inferred from reception of particular signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Automation & Control Theory (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Navigation (AREA)
  • Telephone Function (AREA)
  • Collating Specific Patterns (AREA)
  • Position Fixing By Use Of Radio Waves (AREA)
  • Arrangements For Transmission Of Measured Signals (AREA)
  • Instructional Devices (AREA)

Abstract

예시적인 장치들 및 방법들은 엄격한 측량 계획 기반 센서 데이터 수집에 관한 것이고, 여기서 물리적 측량 위치들은 물리적 지도 위치들에 밀접하게 결합되기보다는 논리적 위치들에 상관된다. 일 실시예는 장소 지도(venue map) 및 장소 지도와 연관된 측량 계획(survey plan)에 액세스하는 단계를 포함한다. 측량 계획은 하나 이상의 논리적 측량 지점들에 의해 정의되는 측량 경로(survey path)를 포함한다. 논리적 측량 지점은 고유의 무좌표 식별자(unique co-ordinate free identifier), 장소에서의 인식가능한 위치의 기술(description), 및 대응하는 장소 지도에 논리적 측량 지점을 등록시키도록 구성된 좌표를 포함한다. 측량 기사는 측량 계획을 사용하여 장소를 측량한다. 장소를 측량하는 것은 측량 계획을 따르는 것 및 측량 경로를 따라 있는 센서 판독 지점들에서 센서 핑거프린트들을 획득하는 것을 포함한다. 핑거프린트 관측 데이터 저장소는 측량 계획에 등록되어 있는 측량 지점들로 채워진다. 측량 지점들은 센서 핑거프린트 데이터 및 상관 데이터를 포함한다.

Description

센서 데이터 수집{SENSOR DATA COLLECTION}
사람들은 자기가 있는 곳을 알고 따라서 자기가 있는 곳으로부터 어딘가 다른 곳으로 어떻게 가야 하는지를 알 수 있도록 지도를 가지고 있는 것을 좋아한다. 사람들은 또한 자신의 모바일 디바이스(예컨대, 휴대 전화)를 좋아한다. 모바일 디바이스의 한가지 용도는 지도, 위치 서비스(location service), 방향 서비스(direction service), 및 기타 위치 측정 서비스(positioning service)를 제공하는 것이다. 종래에는, 모바일 디바이스에 대한 위치 측정 서비스가 GPS(global positioning system)에 의해 지원되었다. GPS는 실외에서 그리고 충분한 위성들이 디바이스의 가시선(line of sight)에 있을 때 잘 동작한다. 그렇지만, 종래의 GPS 기반 위치 측정 또는 지도 서비스는 충분한 수의 위성들로의 가시선이 이용가능하지 않을 때 기능하지 않을 수 있다. 충분한 수 또는 유형의 위성들로의 가시선을 상실하는 것은 건물 내부, 다리 아래, 지하와 같은 위치들에 그리고 GPS 블랙아웃(GPS blackout) 동안에 GPS "데드존(dead zone)"을 생기게 할 수 있다. 사람 또는 기계가 GPS 데드존(즉, GPS가 만족할 만한 성능을 제공하지 않는 영역)에 있더라도, 사람은 여전히 지도 상의 정확한 위치를 갖고 방향을 수신할 수 있기를 원할 수 있다. 예를 들어, 사람들은, 쇼핑몰 내에 있는 동안, 컨벤션 센터 내에 있는 동안, 카지노 내에 있는 동안, 사무실 건물 내에 있는 동안, 지하의 하수관망에 있는 동안, 또는 GPS 데드존을 경험할 수 있는 다른 위치들에 있는 동안, 지도 및 위치 측정 서비스가 자신의 모바일 디바이스 상에서 이용가능하기를 원할 수 있다.
개인 디바이스의 사용자가 GPS 데드존에서 시간을 보내기 때문에, "실내"에(예컨대, GPS 데드존에) 있을 때에도 개인 디바이스 상에서 기능하게 될 위치 서비스에 이미 관심을 가져왔다. 이들 위치 서비스는 전형적으로 삼변 측량(trilateration), 삼각 측량(triangulation), 추측 항법(dead reckoning), 또는 이용가능할 수 있는 다른 정보에 기초한 기타 위치 측정 방법을 수행하는 것에 의존해왔다. 다른 정보는 RF(radio frequency) 신호(예컨대, Wi-Fi 신호, 휴대 전화 신호), 가속도계로부터의 정보, 기압계로부터의 정보, 및 다른 센서로부터의 정보를 포함하였다. 이들 종래의 위치 서비스는 전형적으로 실내 지도 상에서의 물리적 좌표(physical coordinate)와 실내 지도가 커버하는 영역을 통과한 디바이스로부터 시간에 따라 획득되는 센서 데이터 세트의 결합(coupling)에 의존하였다.
센서 데이터 - 이로부터 실내 지도가 생성될 수 있음 - 를 수집하는 방법은 크라우드 소싱(crowd-sourced) 방법, 애드혹(ad hoc) 방법, 계획(planned) 방법, 그리드 기반(grid-by-grid) 방법, 및 다른 방법들을 포함하였다. 그렇지만, 이들 종래의 방법은 센서 기반 위치 정보의 획득을 사전 정의된 지도 상에서의 물리적 좌표(예컨대, 위도/경도, x/y/z)에 밀접하게 결합(tightly couple)시키는 것처럼 보인다. 지리의 물리적 현실의 지도는 항상 변하고 있다. 이와 같이, 물리적 좌표 기반 지도에 밀접하게 결합되어 있는 센서 판독치는, 물리적 현실의 지도가 변함에 따라, 쓸모없게 될 수 있다.
실내 위치 측정 시스템의 하나의 과제는 센서 데이터 및 센서 데이터가 획득된 곳을 나타내는 정확한 위치를 수집하는 것을 포함한다. 이상적으로는, 측량 기사는 물리적 좌표(예컨대, 위도/경도)에 의해 기술되는 일련의 기지의 고정된 지점들에서 그 자신의 위치를 측정하고 그 지점들에서 센서 데이터를 획득할 것이다. 그렇지만, 측량되는 위치들이 GPS 데드존의 일부이기 때문에, GPS는 밀접하게 결합된 물리적 좌표 방법에서 요구되는, 정확한 측량 지점들에 있는 측량 기사의 위치를 측정하는 것을 용이하게 하는 데 이용가능하지 않을 수 있다.
이 발명의 내용은 이하에서 발명을 실시하기 위한 구체적인 내용에 더 기술되는 일련의 개념들을 간략화된 형태로 소개하기 위해 제공된 것이다. 이 발명의 내용은 청구된 발명 요지의 핵심적인 특징들 또는 필수적인 특징들을 확인하기 위한 것이 아니며, 청구된 발명 요지의 범주를 제한하기 위해 사용되기 위한 것도 아니다.
예시적인 장치들 및 방법들은 장소 지도(venue map) 및 장소 지도와 연관된 측량 계획(survey plan)에 액세스하고, 측량 계획은 측량 계획을 밀접하게 결합된 물리적 좌표 방법으로부터 분리시키는 것을 용이하게 하는 논리적 측량 지점들을 사용한다. 측량 계획은 하나 이상의 논리적 측량 지점들에 의해 정의되는 측량 경로(survey path)를 포함할 수 있다. 논리적 측량 지점은 분리를 용이하게 하는 고유의 무좌표 식별자(unique co-ordinate free identifier)를 포함할 수 있다. 이 식별자는 장소 지도의 장래 수정판(revision)들에 걸쳐 존속할 수 있다. 논리적 측량 지점은 또한 장소에서의 인식가능한 위치의 기술(description) 및 장소 지도에 논리적 측량 지점을 등록시키도록 구성된 좌표를 포함할 수 있다. 예시적인 장치들 및 방법들은 측량 계획을 측량 기사(예컨대, 사람, 로봇)에게 제공하고 이어서 측량 경로를 따라 있는 다양한 센서 판독 지점들로부터 센서 핑거프린트(sensor fingerprint)를 수신한다. 센서 핑거프린트는 센서 판독 지점 데이터 구조(sensor reading point data structure) - 이는 이어서 장소 지도에 등록됨 - 를 생성하기 위해 논리적 측량 지점을 고려하여 처리될 수 있다. 다수의 등록된 센서 판독 지점 데이터 구조들이 핑거프린트 관측 데이터 저장소(fingerprint observation data store)에 저장될 수 있다. 하나의 실시예에서, 핑거프린트는 GPS 방식(GPS-style) 또는 위도/경도 좌표들을 포함할 수 있다. 핑거프린트가 GPS 방식 또는 위도/경도 좌표들을 포함할 때, 예시적인 장치들 및 방법들은 선택적으로 이 정보를 무시하기로 할 수 있다.
예시적인 장치들 및 방법들은, GPS 데드존에 위치한 영역과 연관되어 있는 분리된 측량 계획에 의해 제어되는 대로, 또는 심지어 GPS 신호가 이용가능할 수 있는 영역에서, 센서 데이터 수집을 수행하도록 구성될 수 있다. 분리된 측량 계획은 좌표 기반 지상 실측 자료(ground truth)가 이용가능한 지점을 포함할 수 있다. 지점이 좌표 기반 지상 실측 자료를 참조하지 않고 시각적 랜드마크를 참조하여 기술될 수 있다. 예시적인 장치들 및 방법들은, 분리된 측량 계획에 그리고 한번 이상의 측량 동안 획득된 센서 판독치들에 적어도 부분적으로 기초하여 GPS(global positioning system) 데드존과 연관된 영역에 대한 무선 주파수 센서 기반 측량을 생성할 수 있다. 예시적인 장치들 및 방법들은 무선 주파수 센서 기반 측량을 GPS(global positioning system) 데드존과 연관된 영역을 표현하는 지도에 등록할 수 있다.
첨부 도면들은 본 명세서에 기술된 다양한 예시적인 장치들, 방법들, 및 기타 실시예들을 예시하고 있다. 도면에서의 예시적인 요소 경계(예컨대, 박스, 박스들의 그룹, 또는 다른 형상)가 경계의 하나의 예를 나타낸다는 것을 잘 알 것이다. 어떤 예들에서, 하나의 요소가 다수의 요소들로서 설계될 수 있거나 다수의 요소들이 하나의 요소로서 설계될 수 있다. 어떤 예들에서, 다른 요소의 내부 구성요소로서 도시된 요소가 외부 구성요소로서 구현될 수 있고, 그 반대일 수 있다. 게다가, 요소들이 축척대로 그려져 있지 않을 수 있다.
도 1은 센서 데이터 수집과 연관된 예시적인 데이터 흐름을 나타낸 도면.
도 2는 센서 데이터 수집과 연관된 예시적인 방법을 나타낸 도면.
도 3은 센서 데이터 수집과 연관된 예시적인 방법을 나타낸 도면.
도 4는 장소에 대한 예시적인 측량 경로를 나타낸 도면.
도 5는 센서 데이터 수집을 수행하도록 구성된 예시적인 장치를 나타낸 도면.
도 6은 센서 데이터 수집을 수행하도록 구성된 예시적인 장치를 나타낸 도면.
도 7은 예시적인 클라우드 동작 환경을 나타낸 도면.
도 8은 센서 데이터 수집을 수행하도록 구성된 예시적인 모바일 컴퓨팅 디바이스를 나타낸 도면.
사람들은 자기가 있는 곳을 알고, 자기가 있었던 곳을 알며, 따라서 자기가 있는 곳으로부터 자기가 있고자 하는 곳으로 어떻게 가야 하는지를 알게 되도록 그리고 다른 이유들로 지도를 가지고 있는 것을 좋아한다. 예를 들어, 쇼핑몰에 있을 때, 쇼핑객은 하나의 점포로부터 다른 점포로 어떻게 가야 하는지를 알고자 할 수 있다. 이와 유사하게, 대형 사무실 건물에서, 우편실 직원은 우편물을 배달할 수 있기 위해 특정의 직원의 책상에 어떻게 가야 하는지를 알고자 할 수 있다. 마찬가지로, 지하 하수관의 미로에서, 작업자는 특정의 청소 밸브(clean out valve)에 어떻게 가야 하는지를 알고자 할 수 있다. 안타깝게도, 위치에 관한 지도는 변한다. 예를 들어, 장소에 대한 지도의 두 개, 세 개, 또는 십여 개의 수정판이 있을 수 있다.
그에 부가하여, 쇼핑몰, 사무실 건물, 또는 지하 매설관망의 물리적 구성이 변할 수 있다. 보다 일반적으로, 물리적 지리의 물리적 현실이 변할 수 있거나, 위치의 매핑이 변할 수 있다. 지도가 빠르게 쓸모없게 되거나 부정확하게 될 정도로 이들 변화가 급속히 일어날 수 있다. 예를 들어, 컨벤션 센터에서의 통로 및 부스가 행사마다 변경될 수 있다. 이와 유사하게, 쇼핑몰에서의 다양한 점포 및 키오스크의 위치가 변할 수 있다. 마찬가지로, 사무실에서의 칸막이 방(cubicle)의 위치, 크기, 수, 및 배향이 변할 수 있다. 이와 같이, 지도가 오래된 것일 수 있다. 부가의 변화 요인들이 있다. 위치의 물리적 현실이 동일한 채로 있더라도, 그 위치의 지도가 정정 및 축척(scaling)(이들로 제한되지 않음)을 비롯한 인자들로 인해 변할 수 있다.
모바일 디바이스용의 종래의 실내 지도는 센서 판독치와 대응하는 실내 지도 상의 물리적 위치(예컨대, 지도 위치) 사이의 매핑에 의존하였다. 그렇지만, 장소에 대한 지도가 가끔 변하여, 장소에 대한 다수의 버전의 지도를 작성할 수 있다. 그에 부가하여, 물리적 현실이 변하는 경우, 센서 판독치와 물리적 위치 간의 매핑이 오래되거나 쓸모없게 될 수 있다. 사용자가 정확한 GPS 픽스(GPS fix) 또는 정확한 비GPS 픽스(non-GPS fix)를 가지더라도, 그 픽스가 최신 지도에 바인딩(binding)되어 있지 않으면 실질적으로 쓸모가 없다.
예시적인 장치들 및 방법들은 다수의 버전의 지도, 지도가 변하는 것, 및 물리적 현실이 변하는 것을 예상하고 있으며, 하나의 버전의 장소 지도에 대해 획득된 센서 데이터를 다른 버전의 장소 지도에서 사용하기 위해 선택적으로 재바인딩(re-binding)하는 것을 용이하게 하도록 구성되어 있다. 적어도 부분적으로, 우선 센서 데이터가 어떻게 획득되는지로 인해 재바인딩이 가능하다. 예시적인 장치들 및 방법들은 단일의 고정된 지도 상의 물리적 좌표들에 대한 것보다는 상이한 장소 지도들에 관련되어 있을 수 있는 논리적 측량 지점들에 대한 센서 판독치를 획득한다. 센서 판독치들은 물리적 위치들에 직접 바인딩되기보다는 중간의 논리적 위치(예컨대, 측량 지점)를 통해 물리적 위치들에 간접적으로 바인딩되어 있다. 특정의 버전의 장소 지도에 반영되는 바와 같이 물리적 현실의 특정의 지도에 대해 물리적 위치(예컨대, 지도 위치)와 논리적 위치 간의 바인딩이 행해지지만, 바인딩이 가장 최근의 지도 버전과 부합하도록, 바인딩이 변하는 물리적 현실들을 수용하기 위해 시간에 따라 조작(manipulate)될 수 있다. 물리적 현실의 특정의 매핑이 장소 지도의 하나의 버전 또는 인스턴스에 의해 표현될 수 있다. 이와 같이, 정확한 픽스가 논리적 측량 지점과 현재 지도 사이의 관계를 통해 현재 지도에 관련될 수 있다.
측량 지점은 논리적으로도 물리적 현실에서도 불변이다. 예시적인 장치들 및 방법들은 상이한 지도 버전들에서의 논리적 측량 지점과 의사 물리적 현실 간의 매핑의 변화를 처리하도록 구성되어 있다. 쇼핑몰에서 커피숍 주위의 모퉁이(turn)인 것으로 기술되는 측량 지점을 생각해보자. 제1 버전의 지도(예컨대, map1)는 측량 지점을 {장소 이름, 층, 위도1, 경도1}에 매핑할 수 있다. 이것은 의사 현실 버전(pseudo reality version) 1이다. 제2 버전의 지도(예컨대, map2)는 측량 지점을 {장소 이름, 층, 위도2, 경도2}에 매핑할 수 있다. 이것은 의사 현실 버전 2이다. 측량 지점의 정확한 위치가 언급되지 않았다. 비록 양 지도 버전의 바탕이 되는 물리적 현실이 동일하더라도, 매핑은 지도의 2개의 버전 사이에 존재할 수 있는 지도 정확도, 축척, 및 기타 차이점들의 영향을 받는다. 커피숍이 그 위치가 실제로 변하여 측량 지점이 액세스가능하지 않게 되었다면, 새로운 모퉁이 위치를 표현하기 위해 새로운 측량 지점이 생성될 수 있을 것이다.
예시적인 장치들 및 방법들은 측량 계획을 장소 지도와 연관시킨다. 하나의 실시예에서, 측량 계획은 장소 지도에 대한 메타데이터의 일부일 수 있다. 측량 계획은 측량 기사에 의한 실내 데이터 수집을 위한 기초가 된다. 측량 계획은 적어도 하나의 측량 경로를 포함한다. 측량 경로는 시작 측량 경로와 종료 측량 지점에 의해 정의될 수 있다. 측량 경로는 또한 시작 지점과 이동 방향에 의해 기술될 수 있다. 측량 경로는 또한 측량 기사가 논리적 측량 지점에서 꼭 시작할 필요 없이 논리적 측량 경로를 따라 이동할 가능성이 있게 만드는 방식으로 기술될 수 있다. 측량 지점은 랜드마크로서 사용될 수 있는 인식가능한 위치이다.
논리적 측량 지점은 사람이 인식가능하거나, 장치에 의해 인식가능하거나, 프로세스에 의해 인식가능하거나, 좌표에 의존하지 않는 다른 방식으로 인식가능할 수 있다. 예를 들어, 측량 지점이 특정 점포의 정문 근방에 있으면서 제2 점포의 정문과 마주하고 있는 것으로 기술될 수 있다. 논리적 측량 지점은 좌표계에 의해 기술되는 위치에 의존하지 않는 고유 식별자를 갖는다. 논리적 측량 지점은 장소 지도와 연관된 장소에서의 인식가능한 위치를 기술하는 정보를 포함한다. 논리적 측량 지점은 인식가능한 위치를 장소 지도 상의 위치에 등록하는 데 충분한 좌표 정보를 저장한다. 측량 기사가 논리적 측량 지점으로부터 논리적 측량 지점으로 이동할 때, 측량 기사는 다수의 센서 판독 지점들에서 센서 정보를 수집한다. 논리적 측량 지점들은 사전 정의되어 있지만, 센서 판독 지점들은 그렇지 않다. 센서 판독 지점들은 센서가 센서 정보를 기록하는 곳이다. 측량 기사의 매 걸음마다, 규칙적인 시간 간격으로, 그리고 다른 제어 하에서 센서 판독치가 얻어질 수 있다. 센서 정보는 위치에 대한 시그너처(signature) 또는 핑거프린트를 제공한다. 종래의 시스템들은 좌표계를 사용하여 핑거프린트를 지도 상의 물리적 위치에 바인딩시킨다. 예시적인 장치들 및 방법들은 핑거프린트를 논리적 위치에 관계시키는 더 유연한 간접적 방법을 취한다. 핑거프린트 위치에 대한 기본 좌표는 논리적 위치에 대해 설정된 좌표를 사용하여 나중에 생성될 수 있다. 논리적 위치가 상이한 지도들에 바인딩될 수 있고, 따라서 핑거프린트가 또한 상이한 지도들에서 사용될 수 있다.
하나의 실시예에서, 논리적 측량 지점은 실내 장소의 보행 측량(walking survey) 동안 랜드마크로서 사용될 수 있는 코너 또는 모퉁이와 같은 사람이 인식가능한 위치에 설정될 수 있다. 종래의 시스템들이 또한 측량 지점들을 사용했을 수 있다. 그렇지만, 종래의 측량 지점들은 그것들의 논리적 속성들(예컨대, 제1 통로의 중앙, 점포 앞)에 의하기보다는 그것들의 물리적 속성들(예컨대, 위도/경도)에 의해 식별되었다. 안타깝게도, 위치에 대한 상이한 버전의 지도들이 변할 수 있거나 상이할 수 있다. 예를 들어, 컨벤션 센터에서의 통로가 제1 버전의 지도에서 하나의 위치에 렌더링될 수 있지만, 제2 버전의 지도에서 제2 위치에 렌더링될 수 있다. 그에 부가하여, 물리적 현실이 변함에 따라, 논리적 측량 지점의 물리적 좌표가 하나의 버전의 장소 지도와 다른 버전의 장소 지도 간에 변할 수 있다. 예를 들어, 컨벤션 센터에서의 제1 통로는 제1 행사에 대해 컨벤션 센터의 북쪽 벽으로부터 10 피트 떨어져 있을 수 있지만, 제2 행사에 대해 컨벤션 센터의 북쪽 벽으로부터 25 피트 떨어져 있을 수 있다. 그렇지만, 양 행사에 대해, 측량 계획은 측량 기사에 "제1 통로의 중앙에서" 시작하라고 지시할 수 있을 것이다. "제1 통로의 중앙"이 두 개의 버전의 장소 지도에 대해 상이한 실제의 물리적 좌표들에 바인딩되어 있을 수 있다.
예시적인 장치들 및 방법들은 고정된 물리적 측량 지점들 대신에 논리적 측량 지점들에 의존한다. 논리적 측량 지점은 좌표계 이외의 무언가를 사용하여 식별될 수 있다. 예를 들어, 논리적 측량 지점은 이름 및 고유 식별자[예컨대, GUID(globally unique identifier)]를 가질 수 있다. 고유 식별자는 영속적 식별자(persistent identifier)일 수 있다. 장소의 특정의 인스턴스에 대해, 논리적 측량 지점은 특정의 물리적 좌표와 연관되어 있을 수 있다. 그렇지만, 물리적 좌표는 잠정적이다. 지도가 버전마다 변할 때, 또는 장소의 지리가 변할 때(예컨대, 벽이 위치 변경됨, 통로가 위치 변경됨, 식수대가 추가됨, 식수대가 제거됨), 논리적 좌표의 물리적 좌표가 변할 수 있다. 논리적 측량 지점에 대한 영속적 식별자는 장소 지도의 버전마다 변하지 않을 수 있다. 유의할 점은, 물리적 레이아웃이 변하는 경우, 이전의 측량 지점들이 도달가능하지 않게 될 수 있기 때문에 어떤 새로운 측량 지점들이 필요할 수 있다는 것이다.
분리된 센서 데이터 수집에 대한 엄격한 측량 계획은 논리적 측량 지점으로부터 논리적 측량 지점으로 이동하는 것 및 논리적 측량 지점들 사이의 위치들에서 핑거프린트들을 획득하는 것에 의존한다. 측량 기사에게 특정의 위도/경도 좌표에서 시작하라고 지시하기보다는, 예시적인 시스템들 및 방법들은 측량 기사에게 논리적 위치(예컨대, 점포 앞)와 연관된 좌표에서 시작하라고 지시한다. 이것은 초기 위치 측정을 지도의 임의의 특정의 인스턴스로부터 분리시킨다. 분리되어 있더라도, 논리적 위치의 물리적 좌표들이 장소 지도의 특정의 인스턴스에 바인딩되어 있을 수 있다. 지도 버전이 주어진 경우, 주어진 측량 계획에서의 측량 지점은 그 지도 버전에 대한 물리적 좌표들을 할당받을 수 있다.
도 1은 센서 데이터 수집과 연관된 예시적인 데이터 흐름을 나타낸 것이다. 프로세스(100)는 장소 지도(110) 및 측량 계획(120)에 액세스할 수 있다. 하나의 실시예에서, 측량 계획(120)은 장소 지도(110)와 연관된 메타데이터에 임베디드(embedded)되어 있을 수 있다. 프로세스(110)는 측량 경로를 기술하는 정보를, 측량 경로를 따라 이동하게 될 측량 디바이스(130)에 제공할 수 있다. 측량 디바이스(130)는 상이한 디바이스들[예컨대, 셀 타워(142), Wi-Fi 액세스 포인트(144)]로부터 일련의 위치들에서의 정보를 획득할 수 있다. 이 정보는 프로세스(100)에 제공되는 센서 핑거프린트들을 생성하는 데 사용될 수 있다. 프로세스(100)는 센서 핑거프린트를 사용하여 측량 지점(150) 및 등록된 측량 지점(160)을 계산할 수 있다. 장소 지도 상의 위치들에 등록된 센서 정보에 관한 정보가 핑거프린트 관측 데이터 저장소(170)에 선택적으로 기록될 수 있다.
이하의 상세한 설명의 어떤 부분들은 메모리 내의 데이터 비트들에 대한 동작들의 알고리즘들 및/또는 심볼 표현들로 제시되어 있다. 이들 알고리즘적 설명 및/또는 표현은 통상의 기술자가 다른 통상의 기술자에게 자신의 연구의 내용을 전달하는 데 사용된다. 알고리즘은 결과를 생성하는 동작들의 시퀀스인 것으로 간주된다. 동작들은 전자적 값(electronic value)의 형태를 취할 수 있는 물리적 양을 생성하고 조작하는 것을 포함할 수 있다. 전자적 값의 형태의 물리적 양을 생성하거나 조작하는 것은 구체적이고 유형적이며 유용한 현실 세계의 결과를 생성한다.
이들 신호를 비트, 값, 요소, 심볼, 문자, 항, 숫자, 기타 용어로 지칭하는 것이 때때로, 주로 통상적으로 사용하기 때문에, 편리한 것으로 밝혀졌다. 그렇지만, 염두에 두어야 할 점은, 이 용어들 및 유사한 용어들이 적절한 물리적 양과 연관되어야 하고 이들 양에 적용되는 편리한 호칭에 불과하다는 것이다. 달리 구체적으로 언급하지 않는 한, 설명 전체에 걸쳐, 처리, 컴퓨팅, 및 결정을 비롯한 용어들이 물리적 양(예컨대, 전자적 값)으로 표현된 데이터를 조작하고 변환하는 컴퓨터 시스템, 로직, 프로세서, 또는 유사한 전자 디바이스의 동작들 및 프로세스들을 지칭한다는 것을 잘 알 것이다.
예시적인 방법들은 흐름도들을 참조하면 더 잘 이해될 수 있다. 간단함을 위해, 예시된 방법들이 일련의 블록들로서 도시되고 기술되어 있다. 그렇지만, 일부 실시예들에서, 블록들이 도시되고 기술된 것과 상이한 순서로 일어날 수 있기 때문에, 방법들이 블록들의 순서에 의해 제한되지 않을 수 있다. 더욱이, 예시적인 방법을 구현하기 위해 예시된 블록들 전부보다 적은 블록들이 필요할 수 있다. 블록들이 결합되거나 다수의 구성요소들로 분리될 수 있다. 게다가, 부가의 또는 대안의 방법들이 부가의 예시되지 않은 블록들을 이용할 수 있다.
도 2는 센서 데이터를 수집하는 것과 연관된 예시적인 방법(200)을 나타낸 것이다. 다른 예들에서, 방법(200)은 단일의 디바이스에서 수행될 수 있거나, 부분적으로 또는 전체적으로 클라우드에서 수행될 수 있거나, 분산된 협력 디바이스들에서 수행될 수 있거나, 다른 방식들로 수행될 수 있다. 다른 예들에서, 방법(200)은 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 전화, 및 스마트폰(이들로 제한되지 않음)을 비롯한 디바이스들에서 수행될 수 있다.
방법(200)은 상이한 데이터 세트들에 액세스한다. 다른 예들에서, 데이터 세트들이 개별적인 디바이스들에 개별적인 데이터 세트들로서 저장될 수 있고, 단일의 디바이스에 개별적인 데이터 세트들로서 저장될 수 있으며, 단일의 디바이스에 단일의 데이터 세트로서 저장될 수 있고, 다른 방식들로 저장될 수 있다. 하나의 실시예에서, 디바이스는, 디바이스가 네트워크 연결을 가질 때, 하나의 위치(예컨대, 클라우드)에 저장된 데이터 세트들에 액세스할 수 있지만, 디바이스가 네트워크 연결을 갖지 않을 때, 다른 위치(예컨대, 로컬 메모리)에 있는 데이터 세트들에 액세스할 수 있다. 온라인 데이터는 로컬적으로 저장된 데이터보다 더 최신의 것일 수 있지만, 로컬적으로 저장된 데이터는 연결 기준 또는 다른 기준에 기초하여 이용될 수 있다.
방법(200)은, 210에서, 장소 지도에 액세스하는 단계를 포함한다. 다른 실시예들에서, 장소 지도에 액세스하는 단계는 장소 지도를 수신하는 것, 장소 지도에 대한 링크를 수신하는 것, 장소 지도에 바인딩하는 것, 장소 지도의 일부분을 저장하는 컴퓨터 파일과 상호작용하는 것, 장소 지도의 일부분을 저장하는 컴퓨터 메모리와 상호작용하는 것, 장소 지도의 일부분을 저장하는 로컬 데이터 저장소와 통신하는 것, 장소 지도의 일부분을 저장하는 원격 데이터 저장소와 통신하는 것, 및 장소 지도의 일부분을 저장하는 클라우드 기반 데이터 저장소와 통신하는 것(이들로 제한되지 않음)을 비롯한 동작들을 포함할 수 있다.
장소 지도는 장소 지도 데이터 세트에 의해 기술될 수 있다. 장소 지도 데이터 세트는 장소의 이름, 장소 지도의 이름, 장소의 식별자, 장소 지도의 식별자, 장소의 위치, 장소 지도에 의해 표현된 공간, 공간에 있는 요소, 및 공간에 있는 요소들 간의 관계들의 심볼 표현(이들로 제한되지 않음)을 비롯한 정보를 저장할 수 있다.
방법(200)은 또한, 220에서, 장소 지도와 연관된 측량 계획에 액세스하는 단계를 포함한다. 하나의 실시예에서, 측량 계획은 장소 지도와 연관된 메타데이터에 임베티드되어 있을 수 있다. 이와 같이, 하나의 실시예에서, 예비적인 동작은 장소 지도와 연관된 메타데이터에 측량 계획을 임베딩시키는 것을 포함할 수 있다. 다른 실시예들에서, 측량 계획에 액세스하는 단계는, 측량 계획을 수신하는 것, 측량 계획에 대한 링크를 수신하는 것, 측량 계획에 바인딩하는 것, 측량 계획의 일부분을 저장하는 컴퓨터 파일과 상호작용하는 것, 측량 계획의 일부분을 저장하는 컴퓨터 메모리와 상호작용하는 것, 측량 계획의 일부분을 저장하는 로컬 데이터 저장소와 통신하는 것, 측량 계획의 일부분을 저장하는 원격 데이터 저장소와 통신하는 것, 및 측량 계획의 일부분을 저장하는 클라우드 기반 데이터 저장소와 통신하는 것(이들로 제한되지 않음)을 비롯한 동작들을 포함할 수 있다.
측량 계획은 측량 계획 데이터 세트에 의해 기술될 수 있다. 측량 계획 데이터 세트는 측량 계획의 이름, 측량 계획의 식별자, 및 측량 계획이 적용되는 장소 지도(이들로 제한되지 않음)를 비롯한 정보를 저장할 수 있다.
측량 계획은 측량 경로에 관한 정보를 포함한다. 하나의 실시예에서, 측량 경로는 시작 논리적 측량 지점(starting logical survey point)과 종료 논리적 측량 지점(ending logical survey point) 에 의해 정의될 수 있다. 다른 실시예에서, 측량 경로는 시작 논리적 측량 지점과 이동할 방향에 의해 정의될 수 있다. 다른 실시예에서, 측량 경로는, 논리적 측량 지점에서 시작하거나 종료하는 것을 필요로 함이 없이, 논리적 측량 지점이 통과될 가능성이 있게 만드는 방향들을 사용하여 정의될 수 있다. 측량 경로의 다른 정의들이 이용될 수 있다. 하나의 실시예에서, 논리적 측량 지점은 고유의 무좌표 식별자(unique co-ordinate free identifier), 장소에서의 인식가능한 위치의 기술, 및 장소 지도에 논리적 측량 지점을 등록시키도록 구성된 좌표를 포함한다. 무좌표 식별자(co-ordinate free identifier)는, 예를 들어, 영속적 GUID(globally unique identifier)일 수 있다. 다른 식별자들이 이용될 수 있다. 인식가능한 위치의 기술(description)이 다른 형태들을 취할 수 있다. 다른 예들에서, 인식가능한 위치의 기술은 인식가능한 위치의 텍스트 기술(textual description), 인식가능한 위치의 시각적 기술(visual description), 또는 인식가능한 위치의 센서 기반 기술(sensor-based description)을 포함할 수 있다. 예시로서, 논리적 측량 지점은 "레스토랑 1 앞에 있는 광대와 마주하면서 점포 1의 정문의 바로 우측에 위치하세요"라고 되어 있는 기술을 포함할 수 있다.
방법(200)은 또한, 230에서, 측량 계획을 측량 기사에게 제공하는 단계를 포함한다. 측량이 상이한 유형의 측량 기사들에 의해 수행될 수 있다. 다른 예들에서, 측량 기사는 사람 측량 기사, 자동화된 측량 기사, 또는 로봇 측량 기사일 수 있다. 이와 같이, 측량 계획을 제공하는 단계는 시각적 디스플레이를 생성하는 단계, 음성 명령어(voice instruction)를 발생시키는 단계, 또는 기계 명령어(machine instruction)를 발생시키는 단계를 포함할 수 있다. 상이한 유형의 측량 기사들은 측량 계획을 수행하기 위한 상이한 유형의 명령어들을 제공받을 수 있다. 하나의 실시예에서, 측량 기사는 쇼핑몰을 방문하고 있고 실내 지도의 크라우드 소싱에 참여하기로 결정하는 자원 봉사자일 수 있다. 쇼핑몰에서 규칙적으로 운동하는 쇼핑몰 보행자들이 이러한 자원 봉사를 제공할 수 있다. 자원 봉사자는 논리적 시작 지점에 위치하고 측량 계획을 따를 수 있다. 이 측량 기사는 시각적 명령, 서면 명령, 또는 청각적 명령을 받을 수 있다. 다른 실시예에서, 로봇은 측량 경로를 이동하도록 프로그램될 수 있다. 이 실시예에서, 로봇은 장소 지도 및 측량 계획을 획득하고 이어서 측량 계획에서 발견된 측량 경로들을 따라가는 장치(예컨대, 컴퓨터, 셀폰)를 포함할 수 있다. 다른 실시예들에서, 로봇은 연속적으로 측량하도록, 사전 결정된 때에 측량하도록, 조건의 변화를 검출할 시에 측량하도록, 또는 로봇의 관리자에 의해 제어되는 대로 측량하도록 제어될 수 있다.
방법(200)은 또한, 240에서, 측량 경로를 따라 있는 센서 판독 지점에서 센서 핑거프린트를 수신하는 단계를 포함한다. 다른 실시예들에서, 센서 핑거프린트를 수신하는 단계는, Wi-Fi 디바이스, 휴대 전화(cellular telephone) 디바이스, 가속도계, 기압계, 나침반, 자이로스코프, 블루투스 디바이스, 적외선 디바이스, 및 무선 주파수 신호를 생성하는 디바이스(이들로 제한되지 않음)를 비롯한 디바이스들로부터 신호를 수신하는 단계를 포함할 수 있다. 신호 뿐만 아니라, 신호에 관한 정보도 획득되거나 저장될 수 있다. 예를 들어, 센서 핑거프린트에서의 신호의 식별자, 센서 핑거프린트에서의 신호와 연관된 강도(strength), 센서 핑거프린트에서의 신호와 연관된 방향, 및 센서 핑거프린트에서의 신호와 연관된 타임스탬프(이들로 제한되지 않음)를 포함하는 정보가 획득되어 저장될 수 있다.
방법(200)은 또한, 250에서, 센서 핑거프린트 및 논리적 측량 지점에 적어도 부분적으로 기초하여 센서 판독 지점 데이터 구조를 생성하는 단계를 포함한다. 센서 판독 지점 데이터 구조를 생성하는 단계는 데이터 저장소를 센서 핑거프린트 및 센서 핑거프린트와 연관된 신호(들)를 기술하는 정보로 채우는(populating) 단계를 포함할 수 있다. 하나의 실시예에서, 사용자는 동작을 취하는 것[예컨대, 그의 전화를 태핑(tap)하는 것, 측량 디바이스 상의 버튼을 누르는 것]에 의해 자기가 논리적 측량 지점을 방금 통과했다는 것을 확인(예컨대, 등록)할 수 있다.
방법(200)은 또한, 260에서, 센서 판독 지점 데이터 구조를 장소 지도에 등록하는 것에 의해 등록된 측량 지점을 생성하는 단계를 포함한다. 등록된 측량 지점은 센서 판독 지점에 대응한다. 하나의 실시예에서, 등록된 측량 지점을 생성하는 단계는 센서 핑거프린트와 센서 판독 지점 사이의 관계를 설정하는 단계를 포함한다. 센서 핑거프린트와 센서 판독 지점 사이의 관계를 설정하는 단계는, 측량 지점 데이터 저장소를 센서 핑거프린트로, 센서 판독 지점을 기술하는 정보로, 그리고 센서 판독 지점과 센서 핑거프린트를 상관시키는 정보로 채우는 단계를 포함할 수 있다. 센서 판독 지점과 센서 핑거프린트를 상관시키는 정보는, 예를 들어, 타임스탬프, 걸음 수(step count), 센서 식별자, 및 기타 정보를 포함할 수 있다. 등록된 측량 지점을 생성하는 단계는 또한 센서 판독 지점과 측량 계획 사이의 관계를 설정하는 단계를 포함할 수 있다. 센서 판독 지점과 측량 계획 사이의 관계를 설정하는 단계는, 측량 지점 데이터 저장소를 센서 판독 지점을 기술하는 정보로, 측량 계획을 기술하는 정보로, 그리고 센서 판독 지점과 측량 계획을 상관시키는 정보로 채우는 단계를 포함할 수 있다. 센서 판독 지점과 측량 계획을 상관시키는 정보는, 예를 들어, 측량 계획 식별자, 타임스탬프, 및 기타 정보를 포함할 수 있다.
방법(200)은 또한, 270에서, 등록된 측량 지점으로 핑거프린트 관측 데이터 저장소를 업데이트하는 단계를 포함한다. 핑거프린트 관측 데이터 저장소를 업데이트하는 단계는 데이터를 파일에 기록하는 단계, 데이터를 메모리에 기록하는 단계, 데이터를 로컬 장치로 전송하는 단계, 데이터를 원격 장치로 전송하는 단계, 데이터를 로컬 프로세스에 제공하는 단계, 데이터를 원격 프로세스에 제공하는 단계, 데이터를 클라우드 서비스로 송신하는 단계, 및 기타 동작들을 포함할 수 있다.
도 3은 센서 데이터 수집과 연관된 예시적인 방법(300)을 나타낸 것이다. 방법(300)은 방법(200)에서의 동작들과 유사한 일부 동작들을 포함한다. 예를 들어, 방법(300)은 310 및 320에서 데이터 세트들에 액세스하는 단계, 330에서 측량 계획을 제공하는 단계, 340에서 센서 핑거프린트를 수신하는 단계, 350에서 센서 판독 지점 데이터 구조를 생성하는 단계, 360에서 등록된 측량 지점을 생성하는 단계, 및 370에서 핑거프린트 관측 데이터 저장소를 업데이트하는 단계를 포함한다. 그렇지만, 방법(300)은 또한 부가의 동작을 포함한다. 방법(300)은 또한, 380에서, 상이한(예컨대, 이전) 버전의 장소 지도를 사용했을 수 있는 제2 상이한 측량의 일부로서 제2 상이한 때에 생성되는 등록된 측량 지점으로 핑거프린트 관측 데이터 저장소를 업데이트하는 단계를 포함한다. 상기할 점은, 지도가 변할 수 있고 그의 신호가 지도에 의해 표현된 공간과 교차하는 디바이스들이 변할 수 있다는 것이다. 이와 같이, 장소가 2 회 이상 측량될 수 있다. 일부 장소들은 빈번히 측량될 수 있고, 크라우드 소싱 측량이 이용될 때 특히 그렇다. 그에 부가하여, 상이한 측량 장비는 상이한 때에 상이한 센서 핑거프린트들을 기록할 수 있다. 따라서, 장소가 여러 번 측량될 수 있고 측량이 상이한 센서 판독 지점들과 연관된 상이한 센서 핑거프린트들을 포함할 수 있을 가능성이 있다. 방법(300)은 핑거프린트 관측 데이터 저장소가 상이한 측량 동안에 획득되는 정보로 업데이트될 수 있다는 것을 반영하고 있다. 측량 계획이 임의의 특정의 장소 지도와 분리되어 있지만 상이한 장소 지도들에 바인딩되어 있을 수 있기 때문에, 논리적 측량 지점 기반 측량 계획 기반 방법(logical survey point based survey plan based approach)을 사용하여 획득되는 데이터가 유지되고 상이한 버전의 장소 지도에 대해 재활용될 수 있다. 좌표 기반 물리적 계획에 바인딩되어 있는 측량에 의존하는 종래의 시스템들이 이러한 방식으로 데이터를 재활용하거나, 재사용하거나, 유지하는 것이, 비록 가능할지라도, 어려울 수 있다.
도 2 및 도 3이 다양한 동작들이 순차적으로(in serial) 일어나는 것으로 나타내고 있지만, 도 2 및 도 3에 예시된 다양한 동작들이 실질적으로 동시에(in parallel) 일어날 수 있다는 것을 잘 알 것이다. 예시로서, 제1 프로세스는 데이터 세트에 액세스할 수 있고, 제2 프로세스는 측량 계획을 생성하고 제공하는 것을 처리할 수 있으며, 제3 프로세스는 센서 데이터를 획득하고 등록된 측량 지점을 생성할 수 있으며, 제4 프로세스는 핑거프린트 관측 데이터 저장소를 관리할 수 있다. 네 개의 프로세스들이 기술되어 있지만, 더 많거나 더 적은 수의 프로세스들이 이용될 수 있다는 것과 경량 프로세스, 정규 프로세스, 스레드, 및 기타 접근법이 이용될 수 있다는 것을 잘 알 것이다.
하나의 예에서, 방법이 컴퓨터 실행가능 명령어들로서 구현될 수 있다. 이와 같이, 하나의 예에서, 컴퓨터 판독가능 저장 매체는, 기계(예컨대, 컴퓨터)에 의해 실행되는 경우, 기계로 하여금 방법들(200 또는 300)을 비롯한 본 명세서에 기술되거나 청구된 방법들을 수행하게 하는 컴퓨터 실행가능 명령어들을 저장할 수 있다. 이상의 방법들과 연관된 실행가능 명령어들이 컴퓨터 판독가능 저장 매체에 저장되는 것으로 기술되어 있지만, 본 명세서에 기술되거나 청구된 다른 예시적인 방법들과 연관된 실행가능 명령어들도 컴퓨터 판독가능 저장 매체에 저장될 수 있다는 것을 잘 알 것이다. 다른 실시예들에서, 본 명세서에 기술된 예시적인 방법들이 상이한 방식들로 트리거될 수 있다. 하나의 실시예에서, 방법이 사용자에 의해 수동으로 트리거될 수 있다. 다른 예에서, 방법이 자동으로 트리거될 수 있다.
"컴퓨터 판독가능 저장 매체"는, 본 명세서에서 사용되는 바와 같이, 명령어들 또는 데이터를 저장하는 매체를 지칭한다. "컴퓨터 판독가능 저장 매체"는 전파 신호(propagated signal)를 지칭하지 않는다. 컴퓨터 판독가능 저장 매체는 비휘발성 매체 및 휘발성 매체(이들로 제한되지 않음)를 비롯한 많은 형태들을 취할 수 있다. 비휘발성 매체는, 예를 들어, 광 디스크, 자기 디스크, 테이프, 및 기타 매체를 포함할 수 있다. 휘발성 매체는, 예를 들어, 반도체 메모리, 동적 메모리, 및 기타 매체를 포함할 수 있다. 통상의 형태의 컴퓨터 판독가능 저장 매체는 컴퓨터, 프로세서 또는 기타 전자 디바이스가 판독할 수 있는, 플로피 디스크, 플렉서블 디스크(flexible disk), 하드 디스크, 자기 테이프, 기타 자기 매체, ASIC(application specific integrated circuit), CD(compact disk), 기타 광 매체, RAM(random access memory), ROM(read only memory), 메모리 칩 또는 카드, 메모리 스틱, 및 기타 매체를 포함할 수 있다.
도 4는 장소 지도와 연관된 예시적인 장치 측량 계획을 나타낸 것이다. 장소 지도는 몇개의 점포들의 표현들(예컨대, S1, S2, S3, S4, S5, 및 S6)을 포함할 수 있다. 측량 계획은 몇개의 논리적 측량 지점(LSP)들(예컨대, LSP1, LSP2, LSP3, LSP4, LSP5, LSP6, LSP7, 및 LSP8)을 식별할 수 있다. 측량 기사는 LSP로부터 LSP로 순서대로 이동하는 것을 용이하게 하는 명령을 제공받을 수 있다. 측량 기사가 LSP로부터 LSP로의 경로를 이동할 때, 센서 판독치들이 획득될 수 있다. 예를 들어, 센서 판독치(sensor reading)(SR)가 지점들(SR1, SR2, SR3 ... SR21, SR22, ... SR42, ... SR51, SR52, ... SR61, SR62, SR63,... SR70, SR71... SR80, SR81, SR82, ... SR91, SR92, SR93...)에서 획득될 수 있다. LSP들이 사전 정의되어 있지만, SR들의 정확한 위치들은 사전 계획되어 있지 않을 수 있다. SR들은 센서 판독치들이 취득되는 곳이다. 센서 판독치들은 어떤 샘플링 레이트로 획득될 수 있다. 측량 기사가 논리적 측량 지점을 통과할 때, 측량 기사를 LSP에 등록하기 위해 선택적인 동작(예컨대, 태핑, 버튼 누르기, 흔들기)이 취해질 수 있다. 특정의 걸음 수가 검출된 후에, 특정의 시간 간격이 경과한 후에, 그리고 다른 때에, 센서 판독치들이 취득될 수 있다. 센서 판독치들이, 예를 들어, Wi-Fi 액세스 포인트들(W1, W2, W3)로부터, 또는 셀룰러 디바이스들(C1 및 C2)로부터 검색될 수 있다. 논리적 측량 지점에 대한 지상 실측 자료(ground truth)(예컨대, 정확한 위도/경도)가 이용가능할 수 있거나 그렇지 않을 수 있다. 지상 실측 자료가 이용가능할 때, 논리적 측량 지점과 연관된 지상 실측 자료를 사용하여 장소 지도가 측량 계획에 바인딩될 수 있다.
도 5는 프로세서(510), 메모리(520), 로직들의 세트(530), 및 프로세서(510), 메모리(520), 및 로직들의 세트(530)를 연결시키는 인터페이스(540)를 포함하는 장치(500)를 나타낸 것이다. 로직들의 세트(530)는 분리된 측량 계획에 의해 제어되는 대로 센서 데이터 수집을 수행하도록 구성될 수 있다. 장치(500)는, 예를 들어, 데이터에 액세스하여 그 데이터를 처리할 수 있는, 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 개인용 전자 디바이스, 스마트폰, 또는 기타 디바이스일 수 있다.
하나의 실시예에서, 장치(500)는 로직들의 세트(530)를 포함시키는 것에 의해 특수 목적 컴퓨터로 변환된 범용 컴퓨터일 수 있다. 로직들의 세트(530)는 측량 계획 기반 센서 데이터 수집을 수행하도록 구성될 수 있다. 장치(500)는, 예를 들어, 컴퓨터 네트워크를 통해 다른 장치들, 프로세스들, 및 서비스들과 상호작용할 수 있다.
로직들의 세트(530)는 GPS(global positioning system) 데드존에 위치한 영역을 측량하기 위해 분리된 측량 계획에 액세스하도록 구성되어 있는 제1 로직(532)을 포함할 수 있다. 하나의 실시예에서, 분리된 측량 계획은 좌표 기반 지상 실측 자료가 이용가능한 지점에서 시작한다. 다른 실시예에서, 분리된 경로는 좌표 기반 지상 실측 자료가 있는 지점을 통과한다. 지점에 대한 지상 실측 자료(예컨대, 정확한 위도/경도)가 이용가능한 경우, 지점이 영속적으로 좌표 기반 정보를 사용하여 참조되지 않을 수 있다. 그 대신에, 지점이 좌표 기반 지상 실측 자료를 참조하지 않고서 시각적 랜드마크를 참조하여 측량 기사에게 기술될 수 있다.
하나의 실시예에서, 제1 로직(532)은 분리된 측량 계획에 관한 정보를 장치(500) 상의 시각적 디스플레이, 장치(500)로부터의 청각적 전송 중 하나로서 그리고 장치(500)에 지시하는 명령어로서 제공하도록 구성되어 있다. 다른 실시예들에서, 또는 다른 때에, 다른 조건들에 따라, 지도 데이터가 다른 방식들로 획득될 수 있다. 예를 들어, 연결이 없는 경우 또는 기본 설정이 정보를 로컬적으로 획득하도록 구성되어 있는 경우, 지도 데이터가 로컬 데이터 저장소로부터 획득될 수 있다. 연결이 가능한 경우, 지도 데이터가 원격 데이터 저장소로부터 획득될 수 있다.
로직들의 세트(530)는 또한 분리된 측량 계획에 적어도 부분적으로 기초하여 GPS(global positioning system) 데드존에 위치한 영역에 대한 무선 주파수 센서 기반 측량을 생성하도록 구성되어 있는 제2 로직(534)을 포함할 수 있다. 하나의 실시예에서, 제2 로직(534)은 분리된 측량 계획을 따라 있는 일련의 지점들에서 일련의 센서 판독치들을 획득하는 것에 의해 무선 주파수 센서 기반 측량을 생성하도록 구성될 수 있다. 센서 판독치들은 일련의 지점들의 구성원들에 대해 지상 실측 자료가 있는 지점까지의 상대 거리를 계산할 수 있는 바탕이 되는 정보를 포함할 수 있다.
로직들의 세트(530)는 또한 무선 주파수 센서 기반 측량을 GPS(global positioning system) 데드존에 위치한 항목들을 표현하는 지도에 등록하도록 구성되어 있는 제3 로직(536)을 포함할 수 있다. 하나의 실시예에서, 제3 로직(536)은 RF 센서 기반 측량을 GPS 데드존에 위치한 항목들을 표현하는 지도에, 지상 실측 자료가 있는 지점, 일련의 지점들의 구성원들, 및 지도 상의 지점 간의 관계의 함수로서, 등록하도록 구성될 수 있다. 하나의 실시예에서, 제3 로직(536)은 RF 센서 기반 측량을 GPS 데드존에 위치한 항목들을 표현하는 제2 상이한 지도에, 지상 실측 자료가 있는 지점, 일련의 지점들의 구성원들, 및 제2 상이한 지도 상의 지점 간의 관계의 함수로서, 등록하도록 구성될 수 있다.
다른 실시예들에서, 어떤 처리는 장치(500)에서 수행될 수 있고, 어떤 처리는 외부 서비스 또는 장치에 의해 수행될 수 있다. 이와 같이, 하나의 실시예에서, 장치(500)는 또한 지도 데이터, 측량 데이터, 및 센서 데이터(이들로 제한되지 않음)를 비롯한 항목들을 수신하거나 전송하는 것을 용이하게 하기 위해 외부 소스와 통신하도록 구성되어 있는 통신 회로를 포함할 수 있다. 하나의 실시예에서, 제3 로직(536)은 상이한 디바이스들에 대해 상이한 프레젠테이션들을 사용하여 데이터를 디스플레이하는 것을 용이하게 하기 위해 프레젠테이션 서비스(560)와 상호작용할 수 있다.
도 6은 장치(500)(도 5)와 유사한 장치(600)를 나타낸 것이다. 예를 들어, 장치(600)는 프로세서(610), 메모리(620), 로직들의 세트(530)(도 5)에 대응하는 로직들의 세트(630)(예컨대, 632, 634, 636), 및 인터페이스(640)를 포함한다. 그렇지만, 장치(600)는 부가의 제4 로직(638)을 포함한다. 제4 로직(638)은 GPS 데드존으로부터 취득되는 데이터의 상이한 측량 계획 기반 센서 수집 동안에 획득되는 센서 데이터를 사용하여 무선 주파수 센서 기반 측량을 선택적으로 업데이트하도록 구성될 수 있다. 상이한 데이터 수집은 상이한 때에 상이한 측량의 일부로서 수행될 수 있다. 예를 들어, 제1 측량 기사는 오전 8 시에 측량 경로를 따라 시계 방향으로 이동하면서 쇼핑몰을 걷고 있을 수 있다. 제2 측량 기사는 정오에 측량 경로를 따라 반시계 방향으로 이동하면서 쇼핑몰을 걷고 있을 수 있다. 제4 로직(638)은 양 수집으로부터의 센서 데이터를 단일의 핑거프린트 관측으로 통합하는 것을 용이하게 한다.
도 7은 예시적인 클라우드 동작 환경(700)을 나타낸 것이다. 클라우드 동작 환경(700)은 컴퓨팅, 처리, 저장, 데이터 관리, 애플리케이션, 및 기타 기능을 독립형 제품(standalone product)이 아니라 추상 서비스(abstract service)로서 전달하는 것을 지원한다. 하나 이상의 컴퓨팅 디바이스들에서 하나 이상의 프로세스들로서 구현될 수 있는 가상 서버들에 의해 서비스들이 제공될 수 있다. 일부 실시예들에서, 프로세스들이 클라우드 서비스를 방해하지 않고서 서버들 사이에서 마이그레이션할 수 있다. 클라우드에서, 공유 자원들(예컨대, 컴퓨팅, 저장)이 네트워크를 통해 서버, 클라이언트, 및 모바일 디바이스를 비롯한 컴퓨터들에 제공될 수 있다. 클라우드 서비스에 액세스하기 위해 상이한 네트워크들(예컨대, 이더넷, Wi-Fi, 802.x, 셀룰러)이 사용될 수 있다. 클라우드와 상호작용하는 사용자는 서비스(예컨대, 컴퓨팅, 저장)를 실제로 제공하고 있는 디바이스의 상세(예컨대, 위치, 이름, 서버, 데이터베이스)를 알 필요가 없을 수 있다. 사용자는, 예를 들어, 웹 브라우저, 씬 클라이언트(thin client), 모바일 애플리케이션을 통해, 또는 다른 방식들로 클라우드 서비스에 액세스할 수 있다.
도 7은 클라우드에 존재하는 예시적인 센서 데이터 수집 서비스(760)를 나타낸 것이다. 센서 데이터 수집 서비스(760)는 처리를 수행하기 위해 서버(702) 또는 서비스(704)에 의존할 수 있고, 데이터를 저장하기 위해 데이터 저장소(706) 또는 데이터베이스(708)에 의존할 수 있다. 단일의 서버(702), 단일의 서비스(704), 단일의 데이터 저장소(706), 및 단일의 데이터베이스(708)이 예시되어 있지만, 서버, 서비스, 데이터 저장소, 및 데이터베이스의 다수의 인스턴스들이 클라우드에 존재할 수 있고, 따라서, 센서 데이터 수집 서비스(760)에 의해 사용될 수 있다.
도 7은 다양한 디바이스들이 클라우드에 있는 센서 데이터 수집 서비스(760)에 액세스하는 것을 나타내고 있다. 디바이스들은 컴퓨터(710), 태블릿(720), 랩톱 컴퓨터(730), PDA(personal digital assistant)(740), 및 모바일 디바이스(예컨대, 휴대폰, 위성 전화)(750)를 포함한다. 센서 데이터 수집 서비스(760)는 핑거프린트 관측을 행할 수 있다. 핑거프린트 관측은 상이한 측량 계획들을 통해 상이한 장소 지도들에 바인딩되어 있을 수 있는 데이터를 포함할 수 있다. 장소 지도는 논리적 측량 지점과 연관된 물리적 좌표를 통해 측량 계획에 상관될 수 있다.
상이한 디바이스들을 사용하는 상이한 위치들에 있는 상이한 사용자들이 상이한 네트워크들 또는 인터페이스들을 통해 센서 데이터 수집 서비스(760)에 액세스할 수 있는 것이 가능하다. 하나의 예에서, 센서 데이터 수집 서비스(760)는 모바일 디바이스(750)에 의해 액세스될 수 있다. 다른 예에서, 센서 데이터 수집 서비스(760)의 일부분들이 모바일 디바이스(750)에 존재할 수 있다.
도 8은 예시적인 모바일 디바이스(800)를 나타낸 것이다. 모바일 디바이스(800)는 측량의 일부로서 센서 데이터 수집을 행하는 사용자에 의해 휴대될 수 있다. 다수의 사용자들이 장소의 다수회 측량을 수행하기 위해 다수의 모바일 디바이스들을 휴대할 수 있다. 모바일 디바이스(800)는 프로세서(802), 메모리(804), 로직(808), 및 인터페이스(806)에 의해 연결될 수 있는 외부 인터페이스(810)를 포함한다. 모바일 디바이스(800)는, 예를 들어, 휴대 전화, 네트워크 전화, 또는 기타 디바이스일 수 있다. 모바일 디바이스(800)의 예시적인 구성을 전반적으로 기술하면, 프로세서(802)는 듀얼 마이크로프로세서 및 기타 멀티 프로세서 아키텍처들을 비롯한 각종의 다양한 프로세서들일 수 있다. 메모리(804)는 휘발성 메모리 또는 비휘발성 메모리를 포함할 수 있다. 비휘발성 메모리는, 예를 들어, ROM(read only memory), PROM(programmable ROM), 및 기타 메모리를 포함할 수 있다. 휘발성 메모리는, 예를 들어, RAM(random access memory), DRAM(dynamic RAM), 및 기타 메모리를 포함할 수 있다. 메모리(804)는 모바일 디바이스(800)의 자원들을 제어하고 할당하는 운영 체제를 저장할 수 있다. 메모리(804)는 또한 자동화된 측량의 일부로서 데이터를 자동으로 수집하기 위해 로봇 또는 기타 기계를 제어하는 데 사용될 수 있는 센서 데이터 수집 프로세스를 저장할 수 있다.
인터페이스(806)는 단일의 내부 버스 상호연결 아키텍처 또는 기타 버스 또는 메쉬 아키텍처일 수 있다. 단일의 버스가 예시되어 있지만, 모바일 디바이스(800)가 기타 버스들(예컨대, PCIE, 1394, USB, 이더넷)을 사용하여 다양한 디바이스들, 로직들, 및 주변 장치들과 통신할 수 있다는 것을 잘 알 것이다. 인터페이스(806)는, 예를 들어, 메모리 버스, 메모리 제어기, 주변 장치 버스(peripheral bus), 외부 버스, 크로스바 스위치(crossbar switch), 또는 로컬 버스를 비롯한 여러 유형들일 수 있다.
모바일 디바이스(800)는 네트워크 환경에서 동작할 수 있고, 따라서 외부 인터페이스들(810)을 거쳐 네트워크 디바이스들을 통해 네트워크에 연결될 수 있다. 모바일 디바이스(800)는 네트워크 및 네트워크 디바이스들을 통해 원격 컴퓨터들에 논리적으로 연결될 수 있다. 네트워크를 통해, 모바일 디바이스(800)는 또한 클라우드[예컨대, 도 7의 클라우드(700)]에서 제공되는 서비스들[예컨대, 도 7의 서비스(760)]에 연결될 수 있다. 모바일 디바이스(800)가 상호작용하는 네트워크들은 LAN(local area network), WAN(wide area network), 전화 네트워크, 전화 시스템, 셀룰러 시스템, 위성 시스템, 및 기타 네트워크들(이들로 제한되지 않음)을 포함한다.
모바일 디바이스(800)는 모바일 디바이스(800)에 기능을 제공하도록 구성되어 있는 특수 목적 로직(808)을 포함할 수 있다. 예를 들어, 로직(808)은 서비스[예컨대, 도 7의 서비스(760)]와 상호작용하기 위한 또는 센서 데이터 수집을 수행하기 위한 클라이언트를 제공할 수 있다.
이하는 본 명세서에서 이용되는 선택된 용어들의 정의들을 포함한다. 정의들은 용어의 범주 내에 속하는 그리고 구현을 위해 사용될 수 있는 구성요소들의 다양한 예들 또는 형태들을 포함한다. 예들은 제한하기 위한 것이 아니다. 용어들의 단수 형태 및 복수 형태 둘 다가 정의 내에 속할 수 있다.
"하나의 실시예", "일 실시예", "하나의 예", 및 "일례"에 대한 언급은 그와 같이 기술되는 실시예(들) 또는 예(들)가 특정의 특징, 구조, 특성, 속성, 요소, 또는 제한을 포함할 수 있지만, 모든 실시예 또는 예가 그 특정의 특징, 구조, 특성, 속성, 요소 또는 제한을 꼭 포함하는 것은 아니라는 것을 나타낸다. 게다가, "하나의 실시예에서"라는 구문의 반복 사용이 꼭 동일한 실시예를 지칭하는 것은 아니지만, 그러할 수도 있다.
"데이터 저장소"는, 본 명세서에서 사용되는 바와 같이, 데이터를 저장할 수 있는 물리적 또는 논리적 엔터티를 지칭한다. 데이터 저장소는, 예를 들어, 데이터베이스, 테이블, 파일, 리스트, 큐(queue), 힙(heap), 메모리, 레지스터, 및 기타 물리적 리포지토리(physical repository)일 수 있다. 다른 예들에서, 데이터 저장소는 하나의 논리적 또는 물리적 엔터티에 존재할 수 있거나, 두 개 이상의 논리적 또는 물리적 엔터티들 간에 분산되어 있을 수 있다.
"로직"은, 본 명세서에서 사용되는 바와 같이, 기능(들) 또는 동작(들)을 수행하거나 다른 로직, 방법, 또는 시스템으로부터의 기능 또는 동작을 야기하는 하드웨어, 펌웨어, 기계에서 실행 중인 소프트웨어, 또는 각각의 조합(이들로 제한되지 않음)을 포함한다. 로직은 소프트웨어 제어 마이크로프로세서, 개별 로직(예컨대, ASIC), 아날로그 회로, 디지털 회로, 프로그램된 로직 디바이스(programmed logic device), 명령어들을 포함하는 메모리 디바이스, 및 기타 물리 디바이스들을 포함할 수 있다. 로직은 하나 이상의 게이트들, 게이트들의 조합, 또는 기타 회로 구성요소들을 포함할 수 있다. 다수의 논리적 로직들이 기술되어 있지만, 다수의 논리적 로직들을 하나의 물리적 로직에 포함시키는 것이 가능할 수 있다. 이와 유사하게, 단일의 논리적 로직이 기술되어 있지만, 그 단일의 논리적 로직을 다수의 물리적 로직들 간에 분산시키는 것이 가능할 수 있다.
"포함한다(includes)" 또는 "포함하는(including)"이라는 용어가 발명을 실시하기 위한 구체적인 내용 또는 청구범위에서 이용되는 한, 그 용어는 "포함하는(comprising)"이라는 용어가 청구항에서 전이구(transitional word)로 이용될 때 해석되는 것과 유사한 방식으로 포함적(inclusive)인 것으로 의도되어 있다.
"또는"이라는 용어가 발명을 실시하기 위한 구체적인 내용 또는 청구범위에서 이용되는 한(예컨대, A 또는 B), 그는 "A 또는 B 또는 둘 다"를 의미하는 것으로 의도되어 있다. 출원인이 "둘 다가 아니라 A 또는 B만"을 나타내고자 의도할 때, "둘 다가 아니라 A 또는 B만"이라는 용어가 이용될 것이다. 이와 같이, 본 명세서에서 "또는"이라는 용어의 사용은 배타적인 용도가 아니라 포함적인 용도이다. Bryan A. Garner, A Dictionary of Modern Legal Usage 624 (2d. Ed. 1995)를 참조하기 바란다.
"A, B, 및 C 중 하나"라는 문구가 본 명세서에서 이용되는 한(예컨대, A, B, 및 C 중 하나를 저장하도록 구성된 데이터 저장소), 이는 가능한 경우들 A, B, 및 C의 집합을 전달하도록 의도되어 있다(예컨대, 데이터 저장소가 A만, B만, 또는 C만을 저장할 수 있다). 이는 A 중 하나, B 중 하나, 및 C 중 하나를 필요로 하는 것으로 의도되지 않는다. 출원인이 "A 중 적어도 하나, B 중 적어도 하나, 및 C 중 적어도 하나"를 나타내고자 의도할 때, "A 중 적어도 하나, B 중 적어도 하나, 및 C 중 적어도 하나"라는 문구가 이용될 것이다.
"A, B, 및 C 중 하나 이상"이라는 문구가 본 명세서에서 이용되는 한(예컨대, A, B, 및 C 중 하나 이상을 저장하도록 구성된 데이터 저장소), 이는 가능한 경우들 A, B, C, AB, AC, BC, ABC, AA...A, BB...B, CC...C, AA...ABB...B, AA...ACC...C, BB...BCC...C, 또는 AA...ABB...BCC...C의 집합을 전달하도록 의도되어 있다(예컨대, 데이터 저장소는 A만, B만, C만, A 및 B, A 및 C, B 및 C, A 및 B 및 C, 또는 A, B, 또는 C의 다수의 인스턴스들을 포함하는 이들의 다른 조합들을 저장할 수 있다). 이는 A 중 하나, B 중 하나, 및 C 중 하나를 필요로 하는 것으로 의도되지 않는다. 출원인이 "A 중 적어도 하나, B 중 적어도 하나, 및 C 중 적어도 하나"를 나타내고자 의도할 때, "A 중 적어도 하나, B 중 적어도 하나, 및 C 중 적어도 하나"라는 문구가 이용될 것이다.
발명 요지가 구조적 특징들 또는 방법 동작들과 관련하여 기술되어 있지만, 첨부된 청구범위에 한정되어 있는 발명 요지가 이상에서 기술한 구체적인 특징들 또는 동작들로 꼭 제한되는 것은 아님을 잘 알 것이다. 오히려, 이상에서 기술한 특정의 특징들 및 동작들은 청구항들을 구현하는 예시적인 형태들로서 개시되어 있다.

Claims (17)

  1. 컴퓨터 구현 방법(computer-implemented method)에 있어서,
    장소(venue)와 연관된 장소 지도(venue map)에 액세스하는 단계;
    상기 장소 지도와 연관된 측량 계획 - 상기 측량 계획은 시작 논리적 측량 지점(starting logical survey point) 및 종료 논리적 측량 지점(ending logical survey point)에 의해 정의되는 측량 경로를 포함하고, 논리적 측량 지점은 고유의 무좌표 식별자(unique co-ordinate free identifier), 상기 장소에서의 인식가능한 위치의 기술(description), 및 상기 장소 지도에 대해 상기 논리적 측량 지점을 등록시키도록 구성된 좌표를 포함함 - 에 액세스하는 단계;
    상기 측량 계획을 측량 기사(surveyor)에게 제공하는 단계;
    상기 측량 경로를 따라 있는 센서 판독 지점에서 센서 핑거프린트(sensor fingerprint)를 수신하는 단계;
    상기 센서 핑거프린트, 상기 센서 판독 지점, 및 상기 시작 논리적 측량 지점에 적어도 부분적으로 기초하여 센서 판독 지점 데이터 구조(sensor reading point data structure)를 생성하는 단계;
    상기 센서 판독 지점 데이터 구조를 상기 장소 지도에 등록하는 것에 의해 등록된 측량 지점을 생성하는 단계; 및
    상기 등록된 측량 지점으로 핑거프린트 관측 데이터 저장소(fingerprint observation data store)를 업데이트하는 단계를 포함하는, 컴퓨터 구현 방법.
  2. 제1항에 있어서, 상기 장소 지도에 액세스하는 단계는, 상기 장소의 이름, 상기 장소 지도의 이름, 상기 장소의 식별자, 상기 장소 지도의 식별자, 상기 장소의 위치, 상기 장소 지도에 의해 표현된 공간, 상기 공간에 있는 요소, 또는 상기 공간에 있는 요소들 간의 관계들의 심볼 표현(symbolic depiction)에 관한 정보를 획득하는 단계를 포함하는, 컴퓨터 구현 방법.
  3. 제1항에 있어서, 상기 측량 계획에 액세스하는 단계는, 상기 측량 계획의 이름, 상기 측량 계획의 식별자, 또는 상기 측량 계획이 적용되는 장소 지도에 관한 정보를 획득하는 단계를 포함하는, 컴퓨터 구현 방법.
  4. 제1항에 있어서, 상기 인식가능한 위치의 기술은, 상기 인식가능한 위치의 센서 기반 기술(sensor-based description)을 포함하는, 컴퓨터 구현 방법.
  5. 제1항에 있어서, 상기 측량 계획은 상기 장소 지도와 연관된 메타데이터에 임베디드(embedded)되는, 컴퓨터 구현 방법.
  6. 제1항에 있어서, 상기 측량 계획을 상기 장소 지도와 연관된 메타데이터에 임베딩하는 단계를 포함하는, 컴퓨터 구현 방법.
  7. 제1항에 있어서, 상기 측량 기사는 사람 측량 기사, 자동화된 측량 기사, 또는 로봇 측량 기사 중 하나이고, 상기 측량 계획을 제공하는 단계는, 시각적 디스플레이를 생성하는 단계, 음성 명령어(voice instruction)를 발생시키는 단계, 또는 기계 명령어(machine instruction)를 발생시키는 단계 중 하나 이상을 포함하는, 컴퓨터 구현 방법.
  8. 제1항에 있어서, 상기 센서 핑거프린트를 수신하는 단계는, 가속도계, 기압계, 나침반, 자이로스코프, 또는 적외선 디바이스 중 하나 이상으로부터 신호를 수신하는 단계를 포함하는, 컴퓨터 구현 방법.
  9. 제1항에 있어서, 상기 등록된 측량 지점을 생성하는 단계는, 상기 센서 핑거프린트와 상기 센서 판독 지점 사이의 제1 관계를 설정하는 단계, 및 상기 센서 판독 지점과 상기 측량 계획 사이의 제2 관계를 설정하는 단계를 포함하는, 컴퓨터 구현 방법.
  10. 제9항에 있어서, 상기 제1 관계를 설정하는 단계는, 측량 지점 데이터 저장소를 상기 센서 핑거프린트로, 상기 센서 판독 지점을 기술하는 정보로, 그리고 상기 센서 판독 지점과 상기 센서 핑거프린트를 상관시키는 정보로 채우는 단계를 포함하고,
    상기 제2 관계를 설정하는 단계는, 상기 측량 지점 데이터 저장소를 상기 센서 판독 지점을 기술하는 정보로, 상기 측량 계획을 기술하는 정보로, 그리고 상기 센서 판독 지점과 상기 측량 계획을 상관시키는 정보로 채우는 단계를 포함하는, 컴퓨터 구현 방법.
  11. 제10항에 있어서, 제2 상이한 측량의 일부로서 제2 상이한 때에 생성되는 등록된 측량 지점으로 상기 핑거프린트 관측 데이터 저장소를 업데이트하는 단계를 포함하는, 컴퓨터 구현 방법.
  12. 컴퓨터에 의해 실행될 때 방법을 수행하도록 상기 컴퓨터를 제어하는 컴퓨터 실행가능 명령어들을 저장한 컴퓨터 판독가능 저장 매체에 있어서,
    상기 방법은,
    측량이 수행되어야 하는 장소를 기술하는 장소 지도 데이터 세트를 획득하도록 상기 컴퓨터를 제어하는 단계;
    상기 장소 지도 데이터 세트로부터 상기 장소에 대한 측량 계획 데이터 세트를 추출하도록 상기 컴퓨터를 제어하는 단계;
    상기 측량 계획 데이터 세트로부터 측량 경로를 식별하도록 상기 컴퓨터를 제어하는 단계;
    상기 측량 경로의 시작에 위치한 논리적 측량 지점을 식별하도록 상기 컴퓨터를 제어하는 단계;
    상기 측량 경로의 끝에 위치한 논리적 측량 지점을 식별하도록 상기 컴퓨터를 제어하는 단계;
    측량 기사를 상기 측량 경로의 시작에 위치한 상기 논리적 측량 지점에 위치시키고 상기 측량 기사를 상기 측량 경로를 따라 상기 측량 경로의 끝에 위치한 상기 논리적 측량 지점으로 가게 하기 위한 명령어들을 생성하도록 상기 컴퓨터를 제어하는 단계;
    상기 명령어들을 상기 측량 기사에 제공하는 단계;
    상기 측량 기사가 통과하는 상기 측량 경로 상의 센서 판독 지점으로부터 센서 데이터의 세트를 수신하도록 상기 컴퓨터를 제어하는 단계; 및
    핑거프린트 관측 데이터 저장소를 상기 센서 데이터의 세트로, 상기 센서 판독 지점을 기술하는 정보로, 그리고 상기 센서 데이터의 세트를 상기 센서 판독 지점 및 상기 장소와 상관시키는 정보로 채우는 단계를 포함하는, 컴퓨터 판독가능 저장 매체.
  13. 장치에 있어서,
    프로세서;
    메모리;
    분리된 측량 계획(decoupled survey plan)에 의해 제어되는 대로 센서 데이터 수집을 수행하도록 구성된 로직들의 세트; 및
    상기 프로세서, 상기 메모리, 및 상기 로직들의 세트를 연결시키는 인터페이스를 포함하고;
    상기 로직들의 세트는,
    GPS(global positioning system) 데드존(dead zone)에 위치한 영역을 측량하기 위해 상기 분리된 측량 계획에 액세스하도록 구성되어 있는 제1 로직으로서, 상기 분리된 측량 계획은 좌표 기반 지상 실측 자료(ground truth)가 이용가능한 지점을 포함하고, 상기 지점은 상기 좌표 기반 지상 실측 자료를 참조하지 않고 시각적 랜드마크를 참조하여 기술되는 것인, 상기 제1 로직;
    상기 분리된 측량 계획에 적어도 부분적으로 기초하여 상기 GPS 데드존에 위치한 영역에 대한 무선 주파수 센서 기반 측량을 생성하도록 구성되어 있는 제2 로직; 및
    상기 무선 주파수 센서 기반 측량을, 상기 GPS 데드존에 위치한 영역을 표현하는 지도에 등록하도록 구성되어 있는 제3 로직을 포함하는, 장치.
  14. 제13항에 있어서, 상기 제1 로직은 상기 분리된 측량 계획에 관한 정보를, 상기 장치 상의 시각적 디스플레이, 상기 장치로부터의 청각적 전송 또는 상기 장치에 지시하는 명령어 중 하나로서 제공하도록 구성되어 있는, 장치.
  15. 제14항에 있어서, 상기 제2 로직은, 상기 분리된 측량 계획에 기술된 경로를 따라 있는 일련의 지점들에서 일련의 센서 판독치들을 획득하는 것에 의해 상기 무선 주파수 센서 기반 측량을 생성하도록 구성되어 있고, 상기 센서 판독치들은, 상기 일련의 지점들의 구성원(member)들에 대해 지상 실측 자료가 이용가능한 지점까지의 상대 거리를 계산할 수 있는 바탕이 되는 정보를 포함하는, 장치.
  16. 제15항에 있어서, 상기 제3 로직은 상기 무선 주파수 센서 기반 측량을, 상기 GPS 데드존에 위치한 영역을 표현하는 제2 상이한 지도에, 지상 실측 자료가 있는 상기 지점, 상기 일련의 지점들의 구성원들, 및 상기 제2 상이한 지도 상의 지점 간의 관계의 함수로서 등록하도록 구성되어 있는, 장치.
  17. 제14항에 있어서, 상기 GPS 데드존으로부터의 데이터의 두 번 이상의 상이한 측량 계획 기반 센서 데이터 수집 동안에 획득되는 센서 데이터를 사용하여 상기 무선 주파수 센서 기반 측량을 선택적으로 업데이트하도록 구성된 제4 로직을 포함하고, 상기 두 번 이상의 상이한 측량 계획 기반 센서 데이터 수집은 두 번 이상의 상이한 측량의 일부로서 두 번 이상의 상이한 때에 수행되었던, 장치.
KR1020157019306A 2012-12-17 2013-12-17 센서 데이터 수집 KR102068382B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/716,236 US8788205B2 (en) 2012-12-17 2012-12-17 Sensor data collection
US13/716,236 2012-12-17
PCT/US2013/075751 WO2014099972A2 (en) 2012-12-17 2013-12-17 Sensor data collection

Publications (2)

Publication Number Publication Date
KR20150096761A KR20150096761A (ko) 2015-08-25
KR102068382B1 true KR102068382B1 (ko) 2020-01-20

Family

ID=49943531

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157019306A KR102068382B1 (ko) 2012-12-17 2013-12-17 센서 데이터 수집

Country Status (7)

Country Link
US (1) US8788205B2 (ko)
EP (1) EP2932414B1 (ko)
JP (1) JP2016504626A (ko)
KR (1) KR102068382B1 (ko)
CN (1) CN105051735B (ko)
ES (1) ES2616447T3 (ko)
WO (1) WO2014099972A2 (ko)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9409644B2 (en) * 2014-07-16 2016-08-09 Ford Global Technologies, Llc Automotive drone deployment system
US9524629B2 (en) * 2014-08-13 2016-12-20 Computational Systems, Inc. Adaptive and state driven data collection
US9630319B2 (en) 2015-03-18 2017-04-25 Irobot Corporation Localization and mapping using physical features
RU2700905C2 (ru) * 2015-08-12 2019-09-23 Компьютейшнл Системз, Инк. Адаптивный и управляемый состояниями сбор данных
US9686767B2 (en) 2015-08-24 2017-06-20 Qualcomm Incorporated Device, method, and system for determining location
KR102056720B1 (ko) 2015-11-05 2020-01-22 한국전자통신연구원 링크 형 격자 핑거프린트 데이터베이스 생성 방법 및 장치
US10317901B2 (en) * 2016-09-08 2019-06-11 Mentor Graphics Development (Deutschland) Gmbh Low-level sensor fusion
US10405034B1 (en) * 2016-11-14 2019-09-03 Cox Communications, Inc. Biometric access to personalized services
CN108008229B (zh) * 2017-11-03 2020-01-31 杭州长川科技股份有限公司 指纹模组标识码扫描装置及扫描方法
US20190170521A1 (en) * 2017-12-05 2019-06-06 Invensense, Inc. Method and system for fingerprinting survey
KR101948728B1 (ko) * 2018-09-28 2019-02-15 네이버랩스 주식회사 데이터 수집 방법 및 시스템
US10893377B2 (en) 2019-03-28 2021-01-12 Here Global B.V. Determining a position estimate of a mobile device based on layout information
CN110188496B (zh) * 2019-06-04 2022-12-16 湖南特能博世科技有限公司 图形化勘测数据生成方法、装置及计算机终端
US11713891B2 (en) * 2019-10-10 2023-08-01 Ademco Inc. Carbon monoxide detection system
CN115014427A (zh) * 2021-03-05 2022-09-06 奥特斯(中国)有限公司 基于设计数据测量部件载体的物理特性

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110090081A1 (en) 2009-10-21 2011-04-21 Qualcomm Incorporated Mapping wireless signals with motion sensors
US20110208745A1 (en) 2005-12-01 2011-08-25 Adept Technology, Inc. Mobile autonomous updating of gis maps
US20120290636A1 (en) 2011-05-11 2012-11-15 Google Inc. Quality control of mapping data
US8320939B1 (en) 2011-04-21 2012-11-27 Google Inc. Crowd-sourced information for interior localization and navigation

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7268700B1 (en) * 1998-01-27 2007-09-11 Hoffberg Steven M Mobile communication device
US8836580B2 (en) * 2005-05-09 2014-09-16 Ehud Mendelson RF proximity tags providing indoor and outdoor navigation and method of use
US8581698B2 (en) * 2008-11-25 2013-11-12 Nokia Corporation Method, apparatus and computer program product for facilitating location discovery
US8521429B2 (en) 2009-06-17 2013-08-27 Microsoft Corporation Accuracy assessment for location estimation systems
US8698671B2 (en) * 2009-10-16 2014-04-15 Qualcomm Incorporated Binning venues into categories based on propagation characteristics
TWI447420B (zh) 2009-10-20 2014-08-01 Inst Information Industry 室內定位方法與系統,及電腦程式產品
US9803986B2 (en) * 2009-11-24 2017-10-31 Core Wireless Licensing S.A.R.L. Method and apparatus for determining premises semantics
US9389085B2 (en) * 2010-01-22 2016-07-12 Qualcomm Incorporated Map handling for location based services in conjunction with localized environments
US8688396B2 (en) 2010-02-02 2014-04-01 Microsoft Corporation Targeted data collection for positioning systems
US20120143495A1 (en) * 2010-10-14 2012-06-07 The University Of North Texas Methods and systems for indoor navigation
US9482734B2 (en) * 2011-03-28 2016-11-01 Qualcomm Incorporated Methods and apparatus for triggering cooperative positioning or learning in a wireless network
US20120270573A1 (en) 2011-04-20 2012-10-25 Point Inside, Inc. Positioning system and method for single and multilevel structures
US10088317B2 (en) * 2011-06-09 2018-10-02 Microsoft Technologies Licensing, LLC Hybrid-approach for localization of an agent
US9170113B2 (en) * 2012-02-24 2015-10-27 Google Inc. System and method for mapping an indoor environment
US9198003B2 (en) * 2013-01-31 2015-11-24 Apple Inc. Survey techniques for generating location fingerprint data

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110208745A1 (en) 2005-12-01 2011-08-25 Adept Technology, Inc. Mobile autonomous updating of gis maps
US20110090081A1 (en) 2009-10-21 2011-04-21 Qualcomm Incorporated Mapping wireless signals with motion sensors
US8320939B1 (en) 2011-04-21 2012-11-27 Google Inc. Crowd-sourced information for interior localization and navigation
US20120290636A1 (en) 2011-05-11 2012-11-15 Google Inc. Quality control of mapping data

Also Published As

Publication number Publication date
ES2616447T3 (es) 2017-06-13
US8788205B2 (en) 2014-07-22
WO2014099972A2 (en) 2014-06-26
EP2932414B1 (en) 2016-11-16
CN105051735A (zh) 2015-11-11
EP2932414A4 (en) 2015-12-09
JP2016504626A (ja) 2016-02-12
EP2932414A2 (en) 2015-10-21
KR20150096761A (ko) 2015-08-25
CN105051735B (zh) 2018-03-30
WO2014099972A3 (en) 2014-10-09
US20140172297A1 (en) 2014-06-19

Similar Documents

Publication Publication Date Title
KR102068382B1 (ko) 센서 데이터 수집
US10244359B2 (en) Venue data framework
KR102252566B1 (ko) 로케이션 서비스를 개선하기 위해 3차원 로케이션 정보를 사용하기 위한 시스템 및 방법
TWI625506B (zh) 電子設備及實現旅遊路線規劃的方法
JP5930920B2 (ja) 地図生成サーバ、地図生成方法及び地図生成システム
US20150245180A1 (en) Determining proximity to a venue
US20140018096A1 (en) System and method for indoor location mapping and tracking
US20150348076A1 (en) Venue Data Enrichment
US11118911B2 (en) Localized map generation
US10033624B2 (en) Method and apparatus for probe-based routing
JP6268951B2 (ja) 移動情報処理方法、移動情報処理プログラム及び移動情報処理装置
WO2018182528A1 (en) Trajectory estimation system and method
KR20200124622A (ko) 실내 위치 확인 경로들 맵핑 툴
CN111984875B (zh) 用于识别建筑物访问机构的方法、设备和计算机程序产品
GB2551589A (en) Indoor radio map verification
CN106165461B (zh) 接收机增益偏移
Babic et al. Software application for GPS devices using Google Maps
JP2008002905A (ja) 余裕時間推定方法及び装置及びプログラム

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant