KR101322778B1 - 미리 정의된 지역 내의 관심 지점들의 식별을 위한 방법 및 장치 - Google Patents
미리 정의된 지역 내의 관심 지점들의 식별을 위한 방법 및 장치 Download PDFInfo
- Publication number
- KR101322778B1 KR101322778B1 KR1020127012440A KR20127012440A KR101322778B1 KR 101322778 B1 KR101322778 B1 KR 101322778B1 KR 1020127012440 A KR1020127012440 A KR 1020127012440A KR 20127012440 A KR20127012440 A KR 20127012440A KR 101322778 B1 KR101322778 B1 KR 101322778B1
- Authority
- KR
- South Korea
- Prior art keywords
- mobile devices
- location
- location estimates
- estimates
- interest
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/0009—Transmission of position information to remote stations
- G01S5/0018—Transmission from mobile station to base station
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/01—Determining conditions which influence positioning, e.g. radio environment, state of motion or energy consumption
- G01S5/013—Identifying areas in a building
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/01—Determining conditions which influence positioning, e.g. radio environment, state of motion or energy consumption
- G01S5/017—Detecting state or type of motion
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/02—Position-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
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S2205/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S2205/01—Position-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/02—Indoor
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S2205/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S2205/01—Position-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/09—Position-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 for tracking people
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Navigation (AREA)
- Telephone Function (AREA)
- Instructional Devices (AREA)
- Traffic Control Systems (AREA)
- Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
- Time Recorders, Dirve Recorders, Access Control (AREA)
- Radar Systems Or Details Thereof (AREA)
- Telephonic Communication Services (AREA)
Abstract
본 명세서에 개시된 요지는 미리 정의된 지역 내의 관심 지점들을 식별하기 위한 시스템 및 방법에 관한 것이다. 실질적인 정지 모바일 디바이스들의 위치 추정치들은 하나 이상의 관심 지점들의 위치들을 결정하기 위하여 활용될 수 있다. 이동중인 모바일 디바이스들의 위치 추정치들은 하나 이상의 회랑들의 위치를 결정하기 위하여 활용될 수 있다.
Description
본 출원은 "Estimating Indoor Graphical Structure Using Measurements"란 명칭으로 2009년 10월 12일에 출원된 미국 가출원 시리얼 번호 61/250,862의 우선권을 35 USC 119하에서 주장하며, 이 가출원은 본 발명의 양수인에게 양도되고 본 명세서에 참조로 통합된다.
본 명세서에 개시된 요지는 시간 및 공간에서 위치 추정치들을 상관시키고 위치 추정치들의 세트에 적어도 부분적으로 기초하여 미리 정의된 지역 내의 관심 지점들을 식별하는 것에 관한 것이다.
네비게이션 시스템들은 오늘날 시장에서 더욱더 만연하게 되고 있다. 네비게이션 시스템은 제 1 위치로부터 제 2 위치로의 경로(route)를 결정하기 위하여 활용될 수 있다. 일부 네비게이션 시스템들에서, 사용자는 인터넷 웹사이트들상에서 일반적으로 사용되는 상이한 매핑 애플리케이션들 중 하나와 같은 매핑 애플리게이션에 출발 위치 및 목적지 위치를 입력시킬 수 있다.
예컨대, 네비게이션 시스템들은 벽들 또는 문들의 위치들과 같은, 실내 환경 내의 알려진 구조적 엘리먼트들에 적어도 부분적으로 기초하여 실내 환경 내의 네비게이션 방향들을 결정할 수 있다. 그러나, 네비게이션 시스템들은 구조적 엘리먼트들의 위치들을 표시하는 대응 지도 또는 그리드가 이용가능하지 않는 실내 환경 내에서 네비게이션 방향들을 결정하는 능력을 가지지 않을 수도 있다.
비제한 및 비-배타적 특징들은 이하의 도면들을 참조하여 기술될 것이며, 여기서 다양한 도면들 전반에 걸쳐 유사한 참조번호들은 유사한 부분들을 지칭한다.
도 1은 하나 이상의 구현들에 따른 개별적 벡터를 예시한다.
도 2는 하나 이상의 구현들에 따른 전자 지도의 지형도이다.
도 3은 하나 이상의 구현들에 따라 일정 시간 기간 동안 획득되는 하나 이상의 모바일 디바이스들의 추정된 위치들의 클러스터를 예시한다.
도 4는 하나 이상의 구현들에 따른, 전자 지도상의 다수의 관심 지점들을 예시한다.
도 5는 하나 이상의 구현들에 따라 하나 이상의 관심 지점들을 결정하기 위한 프로세스의 흐름도이다.
도 6은 하나 이상의 구현들에 따른, 전자 지도상에 도시된 예시적인 벡터들을 예시한다.
도 7은 하나 이상의 구현들에 따른 벡터들의 클러스터를 예시한다.
도 8은 하나 이상의 구현들에 따라, 클러스터 벡터의 위치를 결정하기 위한 프로세스의 흐름도이다.
도 9a-c는 하나 이상의 구현들에 따른 벡터들의 클러스터들을 예시한다.
도 10은 하나 이상의 구현들에 따른, 전자 지도의 유도된 관심 지점(POI)들 및 클러스터 벡터들을 예시한다.
도 11은 하나 이상의 구현들에 따라 하나 이상의 관심 지점들 및 회랑들을 결정하기 위한 프로세스의 흐름도이다.
도 12는 하나 이상의 구현들에 따라 지도 특징들의 위치들을 추론하기 위한 시스템의 특정 구현에 대한 개략적인 블록도이다.
도 13은 하나 이상의 구현들에 따른 모바일 디바이스의 개략적인 블록도이다.
도 1은 하나 이상의 구현들에 따른 개별적 벡터를 예시한다.
도 2는 하나 이상의 구현들에 따른 전자 지도의 지형도이다.
도 3은 하나 이상의 구현들에 따라 일정 시간 기간 동안 획득되는 하나 이상의 모바일 디바이스들의 추정된 위치들의 클러스터를 예시한다.
도 4는 하나 이상의 구현들에 따른, 전자 지도상의 다수의 관심 지점들을 예시한다.
도 5는 하나 이상의 구현들에 따라 하나 이상의 관심 지점들을 결정하기 위한 프로세스의 흐름도이다.
도 6은 하나 이상의 구현들에 따른, 전자 지도상에 도시된 예시적인 벡터들을 예시한다.
도 7은 하나 이상의 구현들에 따른 벡터들의 클러스터를 예시한다.
도 8은 하나 이상의 구현들에 따라, 클러스터 벡터의 위치를 결정하기 위한 프로세스의 흐름도이다.
도 9a-c는 하나 이상의 구현들에 따른 벡터들의 클러스터들을 예시한다.
도 10은 하나 이상의 구현들에 따른, 전자 지도의 유도된 관심 지점(POI)들 및 클러스터 벡터들을 예시한다.
도 11은 하나 이상의 구현들에 따라 하나 이상의 관심 지점들 및 회랑들을 결정하기 위한 프로세스의 흐름도이다.
도 12는 하나 이상의 구현들에 따라 지도 특징들의 위치들을 추론하기 위한 시스템의 특정 구현에 대한 개략적인 블록도이다.
도 13은 하나 이상의 구현들에 따른 모바일 디바이스의 개략적인 블록도이다.
하나의 특정 구현에서, 미리 정의된 지역내의 하나 이상의 모바일 디바이스들에 대하여 하나 이상의 위치 추정치들이 액세스될 수 있다. 하나 이상의 위치 추정치들은 하나 이상의 실질적으로 정지된 사용자들과 연관되는 위치 추정치들의 세트를 결정하기 위하여 시간 및 공간에서 상관될 수 있다. 하나 이상의 관심 지점들은 위치 추정치들의 제 1 세트에 적어도 부분적으로 기초하여 미리 정의된 지역 내에서 식별될 수 있다.
하나의 특정 구현에서, 하나 이상의 위치 추정치들은 이동중인 하나 이상의 사용자들과 연관되는 위치 추정치들의 세트를 결정하기 위하여 시간 및 공간에서 상관될 수 있다. 미리 결정된 지역 내의 하나 이상의 회랑들은 위치 추정치들에 적어도 부분적으로 기초하여 식별될 수 있다.
그러나, 이들은 단순히 예시적인 구현들이며 청구된 요지가 이것들에 의해 제한되지 않는다는 점이 이해되어야 한다.
이 출원 전반에 걸쳐 "일례", "일 특징", "예" 또는 "특징"에 대한 참조는 특징 및/또는 예와 관련하여 기술된 특정 특징, 구조 또는 특성이 청구된 요지의 적어도 하나의 특징 및/또는 예에 포함된다는 것을 의미한다. 따라서, 본 명세서 전반에 걸친 다양한 위치들에서 구 "일례에서", "예", "일 특징에서" 또는 "특징"의 출현들은 반드시 동일한 특징 및/또는 예를 모두 참조하는 것이 아니다. 또한, 특정 특징들, 구조들 또는 특성들은 하나 이상의 예들 및/또는 특징들에서 조합될 수 있다.
네비게이션 시스템들의 일부 구현들에 따르면, 전자 지도들은 예컨대 사용자의 모바일 디바이스상에 디스플레이되기 위해 모바일 디바이스에 전송될 수 있다. 본 명세서에서 사용되는 "전자 지도"는 지역을 묘사하는 지도의 전자적 표현을 지칭할 수 있다. 예컨대, 전자 지도는 구조물 또는 옥외 지역과 같은, 지역 내의 하나 이상의 사무실들, 방들, 또는 다른 구조적 엘리먼트들 및/또는 좁은 길들의 위치들을 묘사할 수 있다. 하나의 특정 구현에서, 전자 지도는 빌딩의 하나 이상의 층들 상의 구조적 엘리먼트들의 위치들을 묘사할 수 있다. 전자 지도는 모바일 디바이스의 디스플레이 스크린과 같은 디스플레이 디바이스상에서 사용자에게 제시될 수 있다. 전자 지도는 2-차원 장소에서의 x,y 좌표들과 같은 좌표들을 도시하는 카티션 그리드(cartesian grid)와 같은 그리드와 연관될 수 있거나 또는 이를 포함할 수 있다. 다른 실시예들이 비-카티션 지도들 또는 다수의 치수들을 활용할 수 있다는 것이 이해된다. 지도 서버의 프로세서와 같은 처리 디바이스는 예컨대 이하에 기술된 바와같이 관심 지점들 사이의 회랑들 및/또는 관심 지점들의 위치들과 같은 특정 지도 특징들의 위치들을 추론하기 위하여 전자 지도를 분석 및/또는 조작할 수 있다.
일부 네비게이션 시스템들은 출발 위치로부터 하나 이상의 목적지들로 사용자를 안내하기 위한 네비게이션 명령들을 결정할 수 있다. 예컨대, "좌회전", "우회전" 또는 "75 피트 직진"과 같은 네비게이션 명령들은 모바일 디바이스의 스피커 또는 이어폰들을 통해 들을 수 있게 또는 디스플레이 스크린을 통해 시각적으로 사용자에게 제시될 수 있다. 네비게이션 애플리케이션은 예컨대 경로에서 출발 위치로부터 최종 위치로 사용자를 안내하는 방법을 결정하기 위하여 전자 지도의 특징들을 분석할 수 있다. 경로에서 출발 위치로부터 최종 위치로 사용자를 정확하게 그리고/또는 효율적으로 안내하기 위하여, 최종 위치에 도달하기 위한 하나 이상의 회랑들을 따르도록 사용자에게 지시될 수 있다. 여기에서 사용되는 "회랑"은 사용자가 관심 지점으로 또는 관심 지점으로부터 이동할 수 있는 좁은 길을 지칭할 수 있다. 회랑은 하나 이상의 사무실들, 회의실들, 상점들, 욕실들, 또는 다른 관심 지점들에 접근할 수 있는 현관을 포함할 수 있다. 회랑은 예컨대 사무실 빌딩과 같은 구조물의 하나 이상의 층들을 따르는 좁은길을 포함할 수 있다.
여기에서 사용되는 "관심 지점"은 모바일 디바이스의 사용자와 같은 사람의 관심 대상이 될 수 있는 특정 지역내의 위치를 지칭할 수 있다. 예컨대, 관심 지점은 시간마다 하나 이상의 사용자들이 방문하는 실내 환경 내의 위치 또는 지역을 포함할 수 있다. 관심 지점들의 예들은 많은 상이한 예들 중에서 오직 몇가지만 대자면 사무실 룸들, 욕실들, 회의실들, 구내식당들 및 상점들을 포함한다.
여기에서 논의되는 하나 이상의 구현들에서, 사용자는 위치 정보가 시간마다 추정되는 모바일 디바이스를 휴대할 수 있다. 일부 구현들에서, 모바일 디바이스는 예컨대 그 자신의 위치를 결정할 수 있다. 하나의 특정 구현에서, 모바일 디바이스는 예컨대 여러 (예컨대, 4개 이상) 송신기들로부터의 의사범위 측정치들을 상관시킴으로써 GPS 또는 갈릴레오와 같은 위성 위치측정 시스템(SPS)으로부터 수신되는 네비게이션 신호들에 기초하여 자신의 위치를 추정할 수 있다.
그러나, 모바일 디바이스는 예컨대 빌딩들과 같은 특정 구조물들내에서와 같이 위성 위치측정 시스템(SPS)으로부터의 네비게이션 신호들이 이용가능하지 않는 지역내에서 활용될 수 있다. 일 구현에서, 모바일 디바이스는 무선 네트워크 엘리먼트들 또는 신호들을 무선으로 전송할 수 있는 다른 디바이스들로부터 무선으로 수신되는 신호들에 기초하여 자신의 위치를 추정할 수 있다. 무선 근거리 통신망(WLAN) 액세스 포인트들과 같은 무선 네트워크 엘리먼트들은 (예컨대 수신된 신호 강도 또는 라운드-트립 지연을 측정함으로써) 모바일 디바이스로부터 특정 무선 네트워크 엘리먼트들까지의 범위들을 추정할 수 있다. 이러한 범위들은 추정될 수 있으며, 이러한 모바일 디바이스의 위치는 공지된 기술들을 사용하여 3각 측량될 수 있다.
네트워크 엘리먼트는 일부 구현들에 따라 모바일 디바이스에 대한 위치를 추정할 수 있다. 하나 이상의 모바일 디바이스들의 위치 추정치들은 일정 시간 기간 동안 획득될 수 있으며, 처리를 위하여 서버 또는 데이터베이스에 전송될 수 있다. 일정 시간에 걸쳐 실내 환경 내의 모바일 디바이스들의 사용자들의 움직임을 결정하기 위하여 실내 환경 내의 이러한 사용자들에 대하여 이러한 위치 추정치들이 수집될 수 있다. 실내 환경들의 예들은 예컨대 오직 몇가지만 예를 대자면 사무실 빌딩들, 쇼핑 몰들, 스타디움들, 컨벤션 센터들, 아파트 빌딩들, 또는 다른 물리적 구조물들을 포함할 수 있다. 일부 구현들에서, 예컨대, 위치 추정치들은 또한 동물원들, 주차 구조물들 또는 놀이공원들과 같은 특정한 옥외 폐쇄 지역들 내의 사용자들에 대하여 일정 시간 기간 동안 획득될 수 있다.
실내 환경에서, 예컨대 사무실 빌딩 내에서 작업하는 개인들은 그들 자신의 모바일 디바이스들을 휴대할 수 있으며, 모바일 디바이스들 중 하나 이상의 모바일 디바이스들에 대한 위치 추정치들과 같은 위치 정보는 일정 시간 기간 동안 이러한 개인들의 움직임을 결정하기 위하여 획득될 수 있다. 이러한 위치 추정치들은 특정 지역내의 관심 지점들 사이의 회랑들 및/또는 관심 지점들의 위치들을 추론하기 위하여 활용될 수 있다.
하나 이상의 구현들에서, 시간 스탬프는 이러한 위치 추정치들 각각이 취해지는 시간을 연관시키기 위하여 하나 이상의 위치 추정치들과 연관될 수 있다. 예컨대, 만일 모바일 디바이스에 대한 위치 추정치가 추정되면, 위치 추정치는 그 위치 추정치가 결정된 특정 시간 스탬프 또는 시간 기준과 연관될 수 있다. 위치 추정치는 예컨대 시간 스탬프와 페어링될(paired) 수 있으며 메모리에 저장될 수 있다. 예컨대 만일 모바일 디바이스가 그 자신의 위치를 추정하면, 모바일 디바이스는 각각의 연관된 위치 추정치에 대한 연관된 시간 스탬프를 결정하기 위하여 내부 클록을 참조(reference)할 수 있다. 이러한 시간 스탬프들 및 위치 추정치들은 시간 및 공간에서 상관될 수 있으며, 사용자가 주어진 시간 기간 동안 상대적으로 정지해 있었는지 또는 일정 시간 기간 동안 이동하였는지를 추론하기 위하여 활용될 수 있다. 예컨대, 만일 위치 추정치들이 획득된 시간 기간 동안 모바일 디바이스가 미리 정의된 최소 임계 거리보다 더 멀리 이동하지 않았다는 것을 연속적 시간 스탬프들을 가진 여러 위치 추정치들이 표시하면, 지도 서버의 프로세서와 같은 처리 디바이스는 모바일 디바이스가 일정 시간 기간 동안 "실질적으로 정지된 상태"를 유지하였다고 추론할 수 있다.
만일 모바일 디바이스의 움직임이 연속적인 시간 스탬프들 사이의 미리 정의된 최소 임계 거리를 초과함을 여러 연속적인 시간 스탬프들과 연관된 위치 추정치들이 표시하면, 대신에 처리 디바이스는 관련 시간 기간 동안 모바일 디바이스가 이동하였다는 것을 추론할 수 있다. 실질적으로 정지된 상태의 사용자들과 연관된 위치 추정치들은 하나 이상의 관심 지점들의 위치들을 추론하기 위하여 활용될 수 있다. 이동중인 사용자들과 연관된 위치 추정치들은 이하에 기술된 바와같이 하나 이상의 회랑들의 위치들 및 이동 방향들을 추론하기 위하여 활용될 수 있다.
지도 서버는 벽들과 같은 구조 칸막이들의 위치들을 표시할 수 있는 전자 지도에 대하여 액세스할 수 있으나, 관심 지점들 또는 회랑들을 표시하지 않을 수 있다. 예컨대, 사무실 빌딩 내의 층의 일부분들만이 현재 점유되거나 또는 사용되면, 사용중이지 않거나 또는 달리 비어있는 층의 일부분상에는 어떠한 관심 지점들도 존재하지 않을 수 있다. 그러나, 지도 서버는 예컨대, 전형적인 이미지 처리 기술들을 통해 전자 지도를 단순히 분석함으로써 관련 관심 지점들 또는 회랑들이 어디에 위치하는지를 직접 결정할 수 없을 수도 있다. 사용자들의 모바일 디바이스들에 대한 위치 정보는 예컨대 관심 지점들 간의 회랑들 및 관심 지점들의 위치들을 추론하기 위하여 활용될 수 있다. 회랑들 및 관심 지점들의 위치들이 추론되었다면, 하나 이상의 전자 지도들은 이러한 위치들을 표시하는 정보로 부연설명(annotate)될 수 있다.
일부 구현들에서, 지도 서버는 주어진 지역에 대한 전자 지도에 대해 액세스하지 못할 수 있으며 대신에 전자 지도를 생성할 수 있다. 예컨대, 지도 서버는 초기에 공백(blank) 전자 지도를 생성할 수 있으며, 수신된 위치 추정치들로부터 관심 지점들 및 회랑들의 위치들이 추론되는 시간 동안의 전자 지도를 부연설명할 수 있다.
지도 서버 또는 위치 추정치들을 수신하는 다른 디바이스는, 연관된 시간 스탬프들에 적어도 부분적으로 기초하여 어느 위치 추정치들이 실질적으로 정지해 있는 사용자들을 나타내는지 그리고 위치 추정치들이 추정되었던 시간에 이동중이었던 사용자들을 나타내는지를 우선 결정할 수 있다.
카티션 그리드(예컨대, x-y 좌표 그리드)는 전자 지도상에 묘사된 지역과 연관될 수 있다. 하나 이상의 구현들에서, 위치들이 추정되었던 시간에 실질적으로 정지해 있었던 사용자들과 연관된 위치 추정치들은 전자 지도와 연관된 카티션 그리드상에 작도될 수 있다. 다음으로, 서로 간의 특정 근접 거리 또는 범위 내의 작도된 위치 추정치들은 다양한 클러스터들을 형성하기 위하여 함께 그룹핑될 수 있다. 서버는 이러한 클러스터들의 하나 이상이 관심 지점을 나타냄을 추론할 수 있다. 예컨대, 서로 간의 매우 가까운 근접거리 내의 많은 위치 추정치들의 클러스터는 모바일 디바이스들을 휴대하는 하나 이상의 사용자들이 연장된 시간 기간 동안 개략적으로 동일한 위치에 있었다는 것을 표시할 수 있다. 따라서, 서버는 관심 지점이 이러한 클러스터와 연관된다는 것을 추론할 수 있다.
이동중인 사용자를 나타내는 위치 추정치들은 사용자의 움직임을 표시하는 하나 이상의 벡터들을 추정하기 위하여 처리될 수 있다. 본 명세서에서 사용되는 "벡터"는 크기 및 방향을 포함하는 양을 지칭할 수 있다. 특정 사용자에 대한 벡터는 "개별적 벡터"로서 여기에서 지칭될 수 있으며, 특정 시간 간격 동안 사용자의 움직임을 나타낼 수 있다. 벡터의 방향 및 크기는 사용자의 특정 모바일 디바이스에 대한 2개의 연속적인 위치 추정치들에 적어도 부분적으로 기초하여 결정될 수 있다. 예컨대, 벡터의 크기는 제 1 위치 추정치와 연관된 제 1 시간과 제 2 위치 추정치와 연관된 제 2 시간 간의 시간 간격이 추정되면 모바일 디바이스에 대한 제 1 위치 추정치와 제 2 위치 추정치 간의 거리에 적어도 부분적으로 기초하여 결정될 수 있다. 예컨대, 개별적 벡터의 크기는 시간 간격 동안 사용자가 이동하는 거리에 비례할 수 있다. 벡터의 방향은 전자 지도에 대응하는 좌표 시스템에 대하여 결정될 수 있다. 예컨대, 제 1 위치 추정치와 제 2 위치 추정치 간의 사용자의 움직임이 식별될 수 있으며, 움직임의 방향은 카티션 좌표 시스템에 대하여 결정될 수 있다. 만일 개별적 벡터가 결정되면, 개별적 벡터는 카티션 좌표 시스템상의 하나 이상의 지점들과 연관될 수 있다.
도 1은 하나 이상의 구현들에 따른 개별적 벡터(5)를 예시한다. 도 1은 사용자의 모바일 디바이스에 대한 제 1 위치 추정치(10) 및 제 2 위치 추정치(15)를 예시한다. 예컨대, 사용자는 특정 시간 간격 동안 제 1 위치 추정치(10)와 연관된 위치로부터 제 2 위치 추정치(15)와 연관된 위치로 모바일 디바이스를 휴대할 수 있다. 개별적 벡터(5)는 예컨대 제 1 위치 추정치(10) 및 제 2 위치 추정치(15) 사이에 라인 세그먼트(20)를 투영함으로써 결정될 수 있다. 개별적 벡터(5)의 크기는 예컨대 라인 세그먼트(20)의 길이에 적어도 부분적으로 기초할 수 있다. 개별적 벡터(5)의 방향은 예컨대 제 1 위치 추정치(10) 및 제 2 위치 추정치(15) 사이에서 카티션 좌표들과 관련한 차이에 적어도 부분적으로 기초하여 결정될 수 있다. 하나 이상의 구현들에서, 제 1 위치 추정치(10) 및 제 2 위치 추정치(15)는 x,y 좌표들과 같은, 2-차원 공간 내의 수평 및 수직 좌표들과 연관될 수 있다. 만일 개별적 벡터(5)의 크기 및 방향이 결정되었다면, 카티션 좌표 시스템에 관한 개별적 벡터(5)의 위치가 후속하여 결정될 수 있다. 하나의 특정 구현에서, 개별적 벡터(5)는 자신의 크기 및 방향의 표시와 함께 라인 세그먼트(20)의 중간점에 위치한 지점에 의하여 표현될 수 있다. 라인 세그먼트(20)의 중간점은 예컨대 라인 세그먼트(20)의 중간을 나타내는 카티션 좌표들에 의하여 식별될 수 있다.
사용자가 이동중이었다는 것을 표시하는, 특정 사용자의 모바일 디바이스에 대한 여러개의 연속적으로 결정된 위치 추정치들이 존재할 수 있다. 예컨대, 사용자에 대한 연속적으로 결정된 위치 추정치들 간의 최소 임계 거리는 이러한 위치 추정치들이 결정되었던 시간에 사용자가 이동중이었다는 것을 표시할 수 있다. 하나 이상의 벡터들은 사용자의 움직임을 나타내기 위하여 결정될 수 있다. 앞서 논의된 바와같이, 벡터는 전자 지도와 연관된 카티션 그리드상의 임의의 2개 이상의 지점들 사이에서의 사용자의 움직임을 나타낼 수 있다. 벡터는 사용자에 대한 특정 위치 추정치에서 발원하거나 시작하며 후속적으로 결정된 위치 추정치로 연장될 수 있다. 사용자에 대한 속도는, 연속적으로 결정된 위치 추정치들 간의 거리를, 이러한 위치 추정치들이 결정되었던 시간 사이의 시간차로 나눔으로써 추정될 수 있다. 이러한 시간차는 이러한 연속적으로 결정된 위치 추정치들과 연관된 시간 스탬프들 간의 차이에 적어도 부분적으로 기초하여 결정될 수 있다. 하나 이상의 사용자들의 움직임을 표시하는 다양한 벡터들은 일정 시간 기간 동안 결정될 수 있으며, 전자 지도에 대응하는 카티션 그리드상에서 상호 비교적 매우 근접한 거리 내에 위치한 개별적 벡터들의 조합을 기술하는 클러스터 벡터를 형성하기 위하여 그룹핑될 수 있다.
여기에서 사용되는 "클러스터 벡터"는 개별적 벡터들의 조합을 나타내는 벡터를 지칭할 수 있다. 예컨대, 여러 개별적 벡터들은 조합되는 개별적 벡터들을 나타내는 클러스터 벡터를 결정하기 위하여 결합될 수 있다. 예컨대, 만일 여러 개별적 벡터들이 카티션 그리드 상의 특정 위치들 또는 지점들에 위치되고 그룹핑되면, 그룹의 개별적 벡터들의 중심이 결정될 수 있다. 클러스터 벡터는 이러한 중심에 위치할 수 있다. 하나 이상의 구현들에서, 클러스터 벡터의 방향 및 크기는 예컨대 개별적 벡터들의 각각의 방향들 및 크기들의 벡터 합에 의하여(그리고, 그후 가산된 벡터들의 수로 스케일링함으로써) 결정될 수 있다. 하나 이상의 회랑들을 통한 이동 방향들 및 위치들은 이러한 클러스터 벡터들에 적어도 부분적으로 기초하여 추론될 수 있다.
일부 관심 지점들 및 회랑들의 위치들은 단일 모바일 디바이스에 대한 위치 추정치들에 적어도 부분적으로 기초하여 추정될 수 있다. 그러나, 다수의 모바일 디바이스들에 대한 위치 추정치들은 전자 지도상에 묘사된 지역내의 회랑들 및 관심 지점들의 위치들을 잠재적으로 더 정확하게 추정하기 위하여 활용될 수 있다.
하나 이상의 구현들에 따르면, 회랑들 및/또는 관심 지점들의 위치들은 지역에 대한 상세한 전자 지도가 이용가능한지의 여부에 관계없이 추론될 수 있다. 예컨대, 사무실 빌딩과 같은 지역내의 하나 이상의 모바일 디바이스들에 대한 위치 추정치들 및 연관된 시간 스탬프들은 서버에 전송될 수 있다. 하나 이상의 구현들에서, 이러한 서버는 하나 이상의 모바일 디바이스들에 대한 위치 추정치들 및 연관된 시간 스탬프들에 적어도 부분적으로 기초하여 하나 이상의 관심 지점들 및/또는 회랑들의 위치들을 추론할 수 있다.
도 2는 하나 이상의 구현들에 따른 전자 지도(100)의 지형도이다. 전자 지도(100)는 사용자의 모바일 디바이스의 디스플레이 스크린 상에 제시될 수 있는 지도의 디지털 표현을 포함할 수 있다. 전자 지도(100)는 데이터베이스 또는 서버에 저장될 수 있으며, 전자 지도(100)에 대한 요청에 응답하여 사용자의 모바일 디바이스에 전송될 수 있다. 전자 지도(100)는 사무실 빌딩과 같은 구조에 대한 층 평면을 디스플레이할 수 있다. 하나의 예시적인 구현에서, 전자 지도(100)는 예컨대 빌딩의 층의 레이아웃에 대한 청사진을 스캔함으로써 획득될 수 있으며, 도 2-9와 관련하여 이하에서 논의되는 바와같이 다양한 관심 지점들 및 회랑들을 표시하는 정보로 부연설명될 수 있다.
도시된 바와같이, 전자 지도(100)는 제 1 사무실(105), 제 2 사무실(110), 제 3 사무실(115), 제 4 사무실(120), 제 5 사무실(125), 제 6 사무실(130) 및 제 7 사무실(135)과 같은 여러 사무실들 또는 방들을 예시한다. 전자 지도(100)는 또한 제 1 회랑(140) 및 제 2 회랑(145)을 도시한다.
하나의 특정 구현들에서, 예컨대, 전자 지도(100)는 사무실들 또는 회랑들의 도시된 아웃라인들 또는 경계들을 형성하는 다양한 라인들을 포함할 수 있으나, 전자 지도(100)는 이러한 라인들 중 어느 라인이 이러한 사무실들 또는 회랑들을 형성하는지를 표시하지 않을 수도 있다. 따라서, 전자 지도(100)에 액세스하는 서버 또는 처리 디바이스는 단지 도 2에 도시된 라인들의 위치들에만 기초하여 전자 지도(100)상의 회랑들 또는 사무실들의 위치들을 식별하지 못할 수도 있다.
관심 지점들 및 회랑들은 하나 이상의 모바일 디바이스들에 대해 주기적으로 결정된 위치 추정치들에 적어도 부분적으로 기초하여 전자 지도(100)상에서 식별될 수 있다. 사용자의 모바일 디바이스가 주어진 시간 기간 동안 실질적으로 정지해 있었다는 것을 표시하는 위치 추정치들은 클러스터를 형성하기 위하여 그룹핑될 수 있다. 클러스터의 근사 중심 또는 중심 지점은 클러스터에 적어도 부분적으로 기초하여 관심 지점의 위치를 근사화할 수 있다.
도 3은 하나 이상의 구현들에 따라 일정 시간 기간 동안 획득된 하나 이상의 모바일 디바이스들의 추정된 위치들의 클러스터(200)를 예시한다. 도 3은 하나 이상의 모바일 디바이스들로부터 일정 시간 기간 동안 수집된 위치 추정치들을 예시한다. 예컨대, 위치 추정치들은 모바일 디바이스에 대하여 15초마다 결정될 수 있다. 하나의 특정 구현에서, 모바일 디바이스는 예컨대 여러개의(예컨대, 4개 또는 그 초과의) 송신기들로부터의 의사범위 측정치들을 상관시킴으로써 GPS 또는 갈릴레오와 같은 SPS로부터 수신된 네비게이션 신호들에 기초하여 자신의 위치를 추정할 수 있다.
도 3에 도시된 바와같이, 제 1 위치 추정치(205), 제 2 위치 추정치(210), 제 3 위치 추정치(215), 제 4 위치 추정치(220), 제 5 위치 추정치(225), 제 6 위치 추정치(230), 제 7 위치 추정치(235) 및 제 8 위치 추정치(240)가 모바일 디바이스에 대하여 획득될 수 있다. 이러한 위치 추정치들이 액세스되거나 또는 획득된 이후에, 이러한 위치 추정치들은 공간의 관점에서 상관된 하나 이상의 클러스터들로 그룹핑될 수 있다. 이러한 예에서, 위치 추정치들은 클러스터(200)로 그룹핑된다. 하나 이상의 클러스터들이 결정된 이후에, 관심 지점(245)이 클러스터(200)에 적어도 부분적으로 기초하여 결정될 수 있다. 이러한 예에서, 관심 지점(245)의 위치가 클러스터(200)의 중심 센터로서 근사화될 수 있다. 비록 도 3이 단지 단일 클러스터(200)를 예시할지라도, 지도상의 다수의 클러스터들 및 관심 지점들이 존재할 수 있다는 것이 인식되어야 한다.
도 4는 하나 이상의 구현들에 따른 전자 지도(300)상의 다수의 관심 지점들을 예시한다. 도시된 바와같이, 예컨대, 전자 지도(300)는 구조의 아웃라인 또는 주위를 예시하나, 방들 및 회랑들을 한정하는 벽들 또는 다른 구조적 엘리먼트들의 위치들을 예시하지 않는다. 전자 지도(300)는 일정 시간 기간 동안 누산되는 하나 이상의 모바일 디바이스들에 대한 위치 추정치들을 도시한다. 위치 추정치들은 하나 이상의 클러스터들로 그룹핑될 수 있다. 카티션 그리드는 전자 지도(300)와 연관될 수 있으며, 위치 추정치들을 클러스터들로 그룹핑하는 것과 관련하여 활용될 수 있다. 일 구현에서, 예컨대, 클러스터는 하나의 위치 추정치로부터 다른 위치 추정치들까지의 범위 또는 거리에 기초하여 형성될 수 있다. 예컨대, 각각 특정 위치로부터 최대 임계 거리내에 있는 위치 추정치들의 그룹핑이 클러스터인 것으로 고려될 수 있다. 하나 이상의 구현들에서, 상이한 클러스터들은 상이한 수의 위치 추정치들과 연관될 수 있다. 예컨대, 제 1 클러스터내에 5개의 위치 추정치들이 존재하고 제 2 클러스터 내에 8개의 위치 추정치들이 존재할 수 있다. 클러스터들의 수는 예컨대 모든 위치 추정치들을 나타내도록 선택될 수 있다.
이러한 예에서, 위치 추정치들은 7개의 상이한 클러스터들, 즉 제 1 클러스터(305), 제 2 클러스터(310), 제 3 클러스터(315), 제 4 클러스터(320), 제 5 클러스터(325), 제 6 클러스터(330) 및 제 7 클러스터(335)로 그룹핑되었다. 클러스터의 중심은 클러스터를 나타내기 위하여 결정되어 이후에 사용될 수 있다. 하나 이상의 관심 지점들은 클러스터에 대한 중심과 연관될 수 있다. 제 1 관심 지점(340)은 제 1 클러스터(305)와 연관될 수 있으며, 제 2 관심 지점(345)은 제 2 클러스터(310)와 연관될 수 있으며, 제 3 관심 지점(350)은 제 3 클러스터(315)와 연관될 수 있으며, 제 4 관심 지점(355)은 제 4 클러스터(320)와 연관될 수 있으며, 제 5 관심 지점(360)은 제 5 클러스터(325)와 연관될 수 있으며, 제 6 관심 지점(365)은 제 6 클러스터(330)와 연관될 수 있으며, 제 7 관심 지점(370)은 제 7 클러스터(335)와 연관될 수 있다. 도 4와 도시된 바와같이, 각각의 관심 지점들은 연관된 클러스터들의 중심들에 위치될 수 있다.
전자 지도(330)는 관심 지점을 결정하기 위하여 임의의 특정 클러스터로 그룹핑되지 않은 여러 위치 추정치들을 도시한다. 도시된 바와같이, 본 예에서, 제 1 위치 추정치(380), 제 2 위치 추정치(385), 및 제 3 위치 추정치(390)는 임의의 특정 클러스터로 그룹핑되지 않았다. 만일 제 1 위치 추정치(380), 제 2 위치 추정치(385) 및 제 3 위치 추정치(390)가 각각 단일 모바일 디바이스에 대한 연속적인 시간 스탬프들과 연관되면, 이러한 위치 추정치들이 결정되는 동안, 이러한 위치 추정치들은 모바일 디바이스의 사용자가 지역을 통해 이동하였다는 것을 표시할 수 있다. 이러한 위치 추정치들은 충분한 정밀도로 하나 이상의 회랑들의 위치를 결정하기 위하여 활용될 수 있다. 일부 예들에서, 단순한 3개의 위치 추정치들은 하나 이상의 회랑들의 위치를 정확하게 결정하는데 충분치 않을 수 있다.
J. A. Bilmes, "A Gentle Tutorial of the EM Algorithm and its Application to Parameter Estimation for Gaussian Mixture and Hidden Markov Models," International Computer Science Institute, Pp. 1-13, April 1998에서 제시된 프로세스와 같은 EM(Expectation Maximum) 프로세스는 관심 지점들의 위치들을 결정하기 위하여 활용될 수 있다. 도 5는 하나 이상의 구현들에 따라 하나 이상의 관심 지점들을 결정하기 위한 프로세스(400)의 흐름도를 예시한다. 프로세스(400)는 예컨대 주어진 지역에 대한 관심 지점들의 위치들을 결정하도록 적응된 지도 서버 또는 다른 프로세서에 의하여 구현될 수 있다. 먼저, 동작(405)에서, 하나 이상의 모바일 디바이스들에 대한 위치 추정치들 및 연관된 시간 스탬프들은 처리를 위하여 누산 및 저장된다. 만일 사용자가 예컨대 사무실, 방 또는 구내식당과 같은 관심 지점에 진입하거나 또는 접근하면, 사용자는 떠나기 전에 특정 시간량 동안 관심 지점 내에 머무를 수 있다. 관심 지점과 연관된 위치에 위치하는 동안, 예컨대, 사용자의 모바일 디바이스는 자신의 위치를 추정할 수 있고, 자신의 위치 추정치 및 연관된 시간 스탬프를 위치 또는 지도 서버에 주기적으로 보고할 수 있다.
하나 이상의 전자 지도들에 묘사된 지역내에 위치한 모바일 디바이스들에 대한 여러 위치 추정치들이 존재할 수 있다. 일정 시간 길이 동안 실질적으로 정지해 있었던 사용자들을 표시하는 위치 추정치들은 전자 지도상에 묘사된 지역에 대응하는 관심 지점들의 위치들을 추론하기 위하여 활용될 수 있다. 다른 한편으로, 예컨대, 이동중인 사용자들을 표시하는 위치 추정치들이 예컨대 회랑들의 위치들을 추론하기 위하여 대신 활용될 수 있다. 하나 이상의 위치 추정치들이 실질적으로 정지해 있거나 또는 이동중인 사용자를 나타내는지의 여부에 관한 결정은 사용자의 모바일 디바이스에 대한 연속적인 위치 추정치들 간의 거리에 적어도 부분적으로 기초하여 결정될 수 있다. 예컨대, 만일 연속적인 위치 추정치들이 3.0 미터 내와 같은 미리 정의된 임계 범위 또는 거리내에 상호 위치하면, 예컨대 이러한 위치 추정치들은 사용자가 실질적으로 정지해 있었다는 것을 표시할 수 있다. 다른 한편으로, 미리 정의된 임계 범위 밖에 위치한 사용자에 대한 연속적인 위치 추정치들은 이러한 연속적인 위치 추정치들과 연관된 시간 간격 동안 사용자가 이동중이었다는 것을 표시할 수 있다.
실질적으로 정지해 있는 사용자에 대응하는 위치 추정치는 관심 지점을 식별하기 위한 "데이터 지점"으로서 활용될 수 있다. 따라서, 동작(410)에서, 하나 이상의 데이터 지점들은 동작(405)에서 누산된 위치 추정치들에 적어도 부분적으로 기초하여 결정될 수 있다. 앞서 논의된 바와같이, 다수의 위치 추정치들은 이러한 위치 추정치들이 획득되었던 시간에 실질적으로 정지해 있었던 사용자의 모바일 디바이스들에 어느 위치 추정치들이 대응하는지를 결정하기 위하여 초기에 분석될 수 있다. 위치 추정치들이 획득되었던 시간에 실질적으로 정지해 있었던 사용자들의 모바일 디바이스들에 대응하는 위치 추정치들은 하나 이상의 관심 지점들의 위치들을 추론하기 위한 데이터 지점들로서 후속하여 활용될 수 있다.
미리 결정된 수의 데이터 지점들이 식별된 후에, 하나 이상의 관심 지점들의 위치들은 이러한 데이터 지점들에 적어도 부분적으로 기초하여 근사화될 수 있다. 예컨대, 데이터 지점들은 도 4와 관련하여 앞서 논의된 바와같이 특정 관심 지점들 주변의 클러스터들로 그룹핑될 수 있다. 데이터 지점들의 주어진 세트에 대하여, 관심 지점들의 수가 결정될 수 있다. 만일 예컨대 5백개의 데이터 지점들이 사무실 빌딩의 전체 층과 같은 비교적 넓은 지역에 대하여 누산 및 식별되면, 모든 5백개의 지점들은 전체 층에 대한 단지 하나의 관심 지점을 결정하기 위하여 이론적으로 활용될 수 있다. 그러나, 모든 데이터 지점들에 기초한 단일 관심 지점의 결정은 데이터 지점들 및 관심 지점들 간의 비교적 큰 예상 에러와 연관되지 않을 수도 있다. 따라서, 이러한 예상된 에러를 감소시키기 위하여 추가 관심 지점들이 결정될 수 있다.
일 구현에서, 주어진 지역에 대한 적용가능한 데이터 지점들에 기초하여 원하는 수의 관심 지점들을 결정하기 위하여 반복 프로세스가 구현될 수 있다. 이러한 반복 프로세스는 하나 이상의 관심 지점들을 식별하기 위하여 데이터 지점들의 세트를 분석할 수 있다. 관심 지점은 예컨대 데이터 지점들의 클러스터와 연관될 수 있다. 만일 특정 수의 관심 지점들이 결정되었다면, 각각의 데이터 지점 및 이후 식별된 관심 지점들 간의 대응하는 최소 평균 자승 에러(MMSE) 측정치가 계산될 수 있다. MMSE 측정치는 평균 자승 에러, 예컨대 추정되는 양의 추정된 값과 참값 간의 차이를 나타낼 수 있으며, 이는 이 경우에 관심 지점의 추정된 위치와 특정 관심 지점과 연관된 각각의 데이터 지점 간의 차이를 포함할 수 있다.
만일 예컨대 주어진 지역에 대하여 1000 개의 데이터 지점들이 존재하고 각각의 데이터 지점이 단지 하나의 관심 지점과 연관되면, 1000개의 관심 지점이 존재할 것이며, 이 관심 지점들 각각은 자신의 연관된 데이터 지점에 의하여 표시된 정확한 위치에 위치할 것이다. 그러나, 많은 구현들에서, 각각의 개별 데이터 지점에 대한 고유 관심 지점을 식별하기에 계산적으로 효율적이거나 또는 도움이 되지 않을 많은 획득된 데이터 지점들이 존재할 수 있다. 대신에, 데이터 지점들은 클러스터들로 그룹핑될 수 있으며, 각각의 클러스터는 하나 이상의 관심 지점들과 연관될 수 있다. 예컨대, 예상된 에러는 이러한 데이터 지점들이 전자 지도와 연관된 카티션 그리드상의 동일한 물리적 위치에 정확하게 위치하지 않을 수 있기 때문에 클러스터의 다수의 데이터 지점들이 단일 관심 지점에 할당되는 경우에 도입될 수 있다. MMSE 측정치에 대한 결정은 이러한 예상 에러를 추정하는 단순한 한 방식이며, 청구된 요지는 이에 대하여 제한되지 않는다. EM(Expectation Maximum) 프로세스는 MMSE 측정치가 허용가능한 낮은 레벨에 있도록 보장하면서 수집된 데이터 지점들의 세트에 기초하여 원하는 수의 관심 지점들을 반복적으로 결정할 수 있다.
만일 단지 하나의 관심 지점이 모든 이용가능한 데이터 지점들과 연관되면, 예컨대 MMSE의 측정치는 비교적 높은 값에 있을 수 있다. 그러나, 만일 추가 관심 지점이 결정되면, 이제 2개의 관심 지점들이 존재하도록, MMSE의 측정치는 감소할 수 있다. 데이터 지점들의 주어진 세트에 대하여 추가 관심 지점들이 결정되면, 계산된 관심 지점들의 수가 증가할때 MMSE의 측정치는 연속적으로 감소할 수 있다. 그러나, 관심 지점들 중 계산된 관심 지점들의 수가 증가할때 MMSE의 측정치는 점점 더 작은 비율로 감소할 수 있다. 따라서, MMSE의 측정시 증분 감소 및 관심 지점들의 수 사이의 트레이드-오프가 존재한다. EM 프로세스는 하나의 추가 관심 지점을 결정함으로써 MMSE의 증분 감소가 미리 정의된 임계 레벨 또는 값 미만으로 될때까지 데이터 지점들의 세트에 기초하여 추가 관심 지점들을 증분적으로 계산하도록 구현될 수 있다.
일 구현에서, 결정된 관심 지점들의 수는 (a) k개의 관심 지점들에 대한 MMSE 측정치와 (b) (k-1) 개의 관심 지점들에 대한 MMSE 측정치간의 차이가 미리 정의된 임계치 미만으로 될때까지 증가할 수 있다. 프로세서는 임계값 미만으로 MMSE의 측정치의 증분 감소를 감소시키기 위하여 관심 지점들의 수를 식별할 수 있다.
도 5를 다시 참조하면, 동작(415)에서, 카운터 k는 1의 값으로 초기화될 수 있다. 카운터 k는 데이터 지점들의 주어진 세트에 대하여 프로세스(400)에 의하여 결정된 관심 지점들의 수를 나타낼 수 있다. 하나 이상의 구현들에서, 누산된 데이터 지점들은 관심 지점들의 위치들을 추론하기 위하여 활용될 수 있다.
Yj (1≤j≤N)는 관심 지점들을 계산하기 위하여 사용되는 데이터 지점들의 세트를 나타낼 수 있으며, 여기서 N은 동작(410)에서 결정된 수집된 데이터 지점들의 수를 나타내며, j는 특정 데이터 지점들에 대한 인덱스를 나타내며, Xi (1≤i≤k)는 특정 관심 지점들의 위치를 나타낼 수 있다. 만일 카운터 k가 제로(zero)의 값과 동일하였다면(예컨대, 관심 지점들이 0개이면), MMSE의 측정치(예컨대, MMSE(0))는 ∞에 접근할 수 있다.
동작(420)에서, EM 프로세스는 MMSE의 측정치를 감소시키기 위하여 k개의 관심 지점들을 결정하기 위하여 측정된다. 동작(425)에서는 MMSE(k)가 결정될 수 있다. MMSE(k)는 로서 결정될 수 있으며, 여기서 및 는 에 가장 근접한 관심 지점의 위치이다.
동작(430)에서는 k≥2 인지에 관한 결정이 이루어질 수 있다. 만일 "예"이면 프로세싱은 동작(435)으로 진행하며, 다른 한편으로 만일 "아니오"이면 프로세싱은 동작(440)으로 진행한다. 동작(435)에서는 MMSE(k-1)와 MMSE(k) 간의 차이가 미리 정의된 임계량 미만인지에 관한 결정이 이루어진다. 만일 "예"이면 프로세싱은 동작(445)으로 진행하며, 이 시점에 프로세싱은 종료하며 k개의 전체 관심 지점들이 결정된다. 다른 한편으로, 만일 "아니오"이면, 프로세싱은 동작(440)으로 진행하며, 여기서 카운터 k는 증가된다. 다음으로, 프로세싱은 동작(420)으로 리턴되며, MMSE(k-1)와 MMSE(k) 간의 차이가 미리 정의된 임계량 미만일때까지 계속된다.
하나 이상의 관심 지점들이 결정된 이후에, 결정된 관심 지점들의 위치들을 표시하는 정보는 전자 지도와 연관된 카티션 그리드 및/또는 대응하는 전자 지도와 함께 데이터베이스 또는 서버에 저장될 수 있다. 전자 지도가 다양한 관심 지점들을 표시할 수 있는 반면에, 이러한 관심 지점들은 회랑들이 또한 알려지지 않거나 또는 다른 방식으로 결정되지 않는 경우에 출발 위치로부터 목적지까지 사용자를 라우팅하기 위한 매핑 애플리케이션에 대하여 그들 자체적으로 충분치 않을 수 있다.
이동중인 것으로 결정되는 모바일 디바이스들에 대한 위치 추정치들의 분석에 적어도 부분적으로 기초하여 회랑들이 결정/식별될 수 있다. 예컨대, 앞서 논의된 바와같이, 만일 사용자가 하나의 관심 지점으로부터 다른 관심 지점으로 이동중이면, 사용자의 모바일 디바이스에 대한 연속적인 위치 추정치들은 거리 관점에서 비교적 멀리 떨어질 수 있으며, 따라서 이러한 위치 추정치들이 결정되었던 시간에 사용자가 이동중이었다는 것을 표시한다. 회랑들의 위치들을 결정하기 위하여, 하나 이상의 벡터들은 이동중인 사용자들의 모바일 디바이스들에 대한 하나 이상의 위치 추정치들에 적어도 부분적으로 기초하여 결정될 수 있다.
다양한 벡터들은 주어진 시간 간격동안 이동중인 사용자들에 대한 위치 추정치들 및 연관된 시간 스탬프들에 기초하여 결정될 수 있다. 여기서, 시간 스탬프들과 위치 추정치들을 연관시킴으로써, 이러한 위치 추정치들과 연관된 사용자들의 움직임은 지역 전반에 걸쳐 추적될 수 있으며 벡터들로서 표현될 수 있다. 이러한 벡터들은 회랑들을 따른 움직임의 방향들 및 회랑들의 위치들을 식별하기 위하여 클러스터들로 그룹핑될 수 있다. 도 1과 관련하여 앞서 논의된 바와같이, 벡터는 예컨대 카티션 그리드상의 지점과 연관되거나 또는 이 지점에 위치할 수 있다. 하나 이상의 사용자들이 주어진 기간 동안 이러한 회랑을 통해 가끔 이동할 수 있기 때문에 회랑이 위치하는 지역에서 매우 근접하게 위치된 여러 개별적 벡터들이 존재할 수 있다.
벡터의 방향 및 크기에 대한 정보는 또한 카티션 그리드 상의 대응하는 데이터 지점과 연관될 수 있다. 벡터는 특정 모바일 디바이스에 대한 2개의 연속적인 위치 추정치들에 적어도 부분적으로 기초하여 결정될 수 있다. 다른 한편으로, 하나 이상의 구현들에서, 벡터는 3개 또는 그 초과의 연속적인 위치 추정치들에 기초하여 결정될 수 있다. 만일 벡터가 2개보다 많은 연속 위치 추정치들에 기초하여 결정되면, 예컨대 이러한 연속 위치 추정치들에 적어도 부분적으로 기초하여 곡선 피팅(fitting) 프로세스가 벡터에 대응하는 크기 및 방향을 결정하기 위하여 구현될 수 있다. 하나 이상의 사용자들의 모바일 디바이스들의 벡터들은 빌딩 또는 전자 지도상에 묘사된 다른 구조물 내의 하나 이상의 사용자들에 대하여 일정 시간 기간동안 획득된 위치 추정치들에 적어도 부분적으로 기초하여 계산될 수 있다. 전자 지도 또는 카티션 그리드 상의 특정 위치들에 개별적 벡터들을 표현함으로써, 이러한 개별적 벡터들은 클러스터들로 그룹핑될 수 있다. 개별적 벡터들의 각각의 클러스터에 대하여 클러스터 벡터가 식별될 수 있다. 여기에서 사용되는 "클러스터 벡터"는 개별적 벡터들의 그룹을 나타내는 벡터를 지칭할 수 있다. 예컨대, 클러스터 벡터는 클러스터의 개별적 벡터들의 평균을 나타낼 수 있다.
앞서 논의된 도 5는 허용가능한 낮은 에러 레벨들을 초래하는 주어진 지역에 대한 원하는 수의 관심 지점들을 결정하기 위하여 활용하는 EM 프로세스를 도시한다. 유사한 EM 프로세스는 클러스터 벡터들의 수를 결정하기 위하여 벡터들을 그룹핑하기 위하여 활용될 수 있다. 예컨대, 개별적 벡터에 대응하는 데이터 지점의 위치는 EM 프로세스에서 활용될 수 있다. 클러스터 벡터들의 수에 적어도 부분적으로 기초하여 MMSE을 측정할 수 있으며, 여기서, 클러스터 벡터들의 전체 수가 증가할때 연관된 클러스터 벡터들과 개별적 벡터들 간의 MMSE의 증분 측정치는 감소한다. 클러스터 벡터들의 수는, 하나의 추가 클러스터 벡터를 결정함으로써 계산되는 MMSE의 증분 감소가 미리 정의된 양보다 낮도록 결정될 수 있다.
도 6은 하나 이상의 구현들에 따른, 전자 지도(600)상에 도시된 예시적인 벡터들을 예시한다. 전자 지도(600)는 회랑들의 위치들을 결정하기 위하여 벡터들의 사용을 설명하기 위하여 여기에 도시된다. 그러나, 이러한 벡터들이 사용자의 모바일 디바이스상에 실제로 디스플레이되지 않을 수 있다는 것이 인식되어야 한다. 대신에, 이러한 벡터들은 이동중인 사용자들의 하나 이상의 모바일 디바이스들에 대한 위치 추정치들에 기초하여 회랑들을 식별하기 위하여 서버 또는 프로세서에 의하여 수행될 수 있는 처리의 타입을 설명하기 위하여 도시된다. 서버 또는 프로세서는 예컨대 전자 지도(600) 상의 위치들에 대응하는 특정 지점들을 묘사하는 전자 지도(600)와 연관된 카티션 그리드에 기초하여 이러한 벡터들에 대응하는 계산들을 수행할 수 있다.
예컨대, 벽들은 사무실에 대한 문 및 회랑을 가진 지역을 통해 사용자가 어떻게 이동할 수 있는지를 표시하기 위하여 도 6에 도시된다. 그러나, 일부 구현들에서, 벽들 및 사무실 위치들과 같은 특정 지도 특징들을 기술하는 정보는 이용가능하지 않을 수 있고, 대신에 관심 지점들 및 회랑들은 지역을 통해 이동하는 다양한 사용자들에 대한 모바일 디바이스들의 위치 추정치들에 적어도 부분적으로 기초하여 유도될 수 있다는 것이 인식되어야 한다. 이러한 예에서, 제 1 벡터(605) 및 제 2 벡터(610) 모두는 출입구를 통해 약간 상이한 각도들로 사무실(615)내로 연장된다. 회랑(620)은 사무실(615) 아래에 위치한다. 회랑(620) 내에 위치한 여러 벡터들이 존재한다. 예컨대, 제 3 벡터(625), 제 4 벡터(630), 제 5 벡터(635), 제 6 벡터(640), 제 7 벡터(645), 제 8 벡터(650), 제 9 벡터(655), 제 10 벡터(660), 및 제 11 벡터(665)는 회랑(620) 내에 위치할 수 있다. 도시된 바와같이, 회랑(620) 내의 일부 벡터들은 전자 지도(600)의 우측 쪽을 지시하는 반면에, 다른 벡터들은 전자 지도(600)의 좌측 쪽을 지시한다.
개별적 벡터들은 클러스터들로 그룹핑될 수 있으며, 클러스터를 나타내는 클러스터 벡터는 식별될 수 있다. 앞서 논의된 바와같이, 개별적 벡터들은 방향 및 크기에 대한 연관된 정보를 가진 데이터 지점들에 의하여 표현될 수 있다. 개별적 벡터의 크기는 사용자가 사용자에 대한 연속 위치 추정치들 사이에서 이동한 거리 및/또는 속도에 적어도 부분적으로 기초하여 결정될 수 있다. 개별적 벡터들에 대응하는 지점들은 클러스터들로 그룹핑될 수 있다. 예컨대, 상호 매우 근접한 거리 내의 데이터 지점들과 연관된 여러 벡터들은 클러스터로 그룹핑될 수 있다. k의 인덱스 값이 주어지면, 이용가능한 데이터 지점들을 k개의 클러스터들로 그룹핑하기 위한 최상의 방식을 결정하기 위하여 예컨대 EM 프로세스가 활용될 수 있다. 클러스터의 각각의 개별적 벡터로부터의 위치 추정치들 및 방향 정보 기여(contribution)들은 개별적 벡터들의 특정 클러스터에 대한 클러스터 벡터를 결정하기 위하여 활용될 수 있다.
예컨대, 제 1 및 제 2 벡터들(605, 610)은 일 클러스터로 그룹핑될 수 있다. 제 3, 제 4 및 제 5 벡터들(625, 630, 635)은 제 2 클러스터로 그룹핑될 수 있다. 제 6, 제 7 및 제 8 벡터들(640, 645, 650)은 제 3 클러스터로 그룹핑될 수 있다. 제 9, 제 10 및 제 11 벡터들(655, 660, 665)은 제 4 클러스터로 그룹핑될 수 있다.
도 7은 하나 이상의 구현들에 따른 벡터들의 클러스터(700)를 예시한다. 제 1 벡터(705), 제 2 벡터(710), 제 3 벡터(715) 및 제 4 벡터(720)는 클러스터(700)를 형성할 수 있다. 개별적 벡터들의 전체 클러스터(700)를 나타내는 클러스터 벡터(725)가 결정될 수 있다. 앞서 논의된 바와같이, 개별적 벡터는 예컨대 카티션 그리드상의 특정 지점에 위치될 수 있으며, 크기 및 방향 모두와 연관될 수 있다. 그러나, 개별적 벡터들 및 클러스터 벡터들은 개별적 벡터들의 클러스터를 나타내기 위하여 클러스터 벡터를 결정하는 프로세스를 예시하기 위하여 도 7에서 라인 세그먼트들로서 도시된다. 클러스터(700)의 중심이 결정될 수 있으며, 중심은 클러스터 벡터(725)의 위치를 나타내는 지점으로서 활용될 수 있다.
도시된 바와같이, 제 1 벡터(705)와 같은 개별적 벡터들은 제 1 벡터(705)의 끝의 화살촉에 의하여 표시되는 바와같이 한 방향을 지시할 수 있다. 화살표의 방향은 사용자의 위치(예컨대, 제 1 위치 추정치)가 초기에 추정된 시간과 사용자의 위치(예컨대, 제 2 위치 추정치)가 추정된 다음 시간 사이에서 사용자가 이동한 방향에 적어도 부분적으로 기초할 수 있다. 다른 한편으로, 클러스터 벡터(725)는 반대 방향들을 지시하는 각각의 끝에서의 화살촉들을 포함할 수 있다. 클러스터 벡터(725)는 회랑을 따르는 2개의 방향들 중 한 방향으로, 예컨대 좌측으로 또는 우측으로 사용자가 이동할 수 있다는 것을 표시하기 위하여 양 끝에 화살촉들을 포함할 수 있다. 따라서, 회랑들을 효율적으로 결정하거나 또는 식별하기 위하여, 반대 방향들로 이동하는 사용자들의 벡터들은 클러스터 벡터(725)를 결정하도록 활용될 수 있다.
도 8은 하나 이상의 구현들에 따라 클러스터 벡터의 위치를 결정하기 위한 프로세스(800)의 흐름도이다. 첫째, 동작(805)에서, 하나 이상의 모바일 디바이스들에 대한 위치 추정치들이 수집될 수 있다. 다음으로, 동작(810)에서, 위치 추정치들에 적어도 부분적으로 기초하여 라인 세그먼트들이 결정될 수 있다. 예컨대, 라인 세그먼트들은 사용자에 대한 위치 추정치들이 적어도 최소 임계 거리 만큼 이격되는 경우에 특정 사용자의 모바일 디바이스에 대한 연속적인 위치 추정치들을 통해 투영될 수 있다. 예컨대, 이동중인 사용자는 사용자의 모바일 디바이스에 대한 연속적인 위치 추정치들 간의 시간 간격 동안 적어도 이러한 임계 거리를 이동할 수 있다.
동작(815)에서, 하나 이상의 라인 세그먼트들의 각각의 중간점들이 결정될 수 있다. 라인 세그먼트의 중간점은 예컨대 클러스터들로의 벡터들의 그룹핑을 단순화하기 위하여 대응하는 개별적 벡터의 위치 지점으로서 활용될 수 있다. 동작(820)에서, 개별적 벡터들은 라인 세그먼트들에 적어도 부분적으로 기초하여 결정될 수 있다. 클러스터 벡터는 클러스터의 개별적 벡터들의 컴포넌트들의 평균을 나타내기 위하여 결정될 수 있다.
예상된 에러는 클러스터 벡터가 개별적 벡터들의 평균에 기초하여 결정되는 경우에 도입될 수 있다. 이러한 예상된 에러는 예컨대 개별적 벡터들이 카티션 그리드 상의 동일한 정확한 지점에 모두 위치하지는 않는 클러스터에 있는 경우에 도입될 수 있다. 개별적 벡터들이 연관될 수 있는 클러스터 벡터들의 수를 증가시키기 위하여 반복 프로세스가 구현될 수 있다. 추가 클러스터 벡터가 결정될때, 연관된 클러스터 벡터들과 개별적 벡터들 간의 예상된 에러는 감소될 수 있다. 각각의 추가 클러스터 벡터가 추가되면서, 예상된 에러는 점점 더 작은 양만큼 감소할 수 있다.
도 8을 다시 참조하면, 하나 이상의 구현들에서, 도 4와 관련하여 앞서 논의된 것과 유사한 EM 프로세스는 동작(825)에서 클러스터 벡터들의 위치들을 결정하기 위하여 개별적 벡터들을 사용하여 구현될 수 있다. EM 프로세스는 개별적 벡터들의 원하는 수의 클러스터들을 결정하기 위하여 활용될 수 있다. 특정 클러스터의 중심 또는 근사 센터는 클러스터의 위치 지점으로서 활용될 수 있다. 위치 지점이 식별된 후에 특정 클러스터 벡터의 방향 및 크기를 결정하기 위하여 추가 처리가 수행될 수 있다.
동작(830)에서, 클러스터의 크기 및 방향이 결정될 수 있다. 2차원(예컨대, x,y) 평면에서, 예컨대 개별적 벡터는 x-축 방향에서의 크기 및 y-축 방향에서의 크기에 의하여 표현될 수 있다. 클러스터 벡터의 x-축 컴포넌트는, 예컨대 클러스터의 모든 개별적 벡터들의 x-축 컴포넌트들을 합산한후, 그 합을, 클러스터의 개별적 벡터들의 총 수로 나눔으로써 결정될 수 있다. 클러스터 벡터의 y-축 컴포넌트는 유사한 방식으로 결정될 수 있다.
클러스터 벡터의 방향은 예컨대 카티션 그리드 상의 원점에 대하여 일정 각도(degree 또는 radian)에 의하여 표현될 수 있다. 클러스터의 각각의 개별적 벡터의 각도들과 클러스터 벡터의 각도의 상이한 추정치들을 비교하도록 반복 프로세스가 구현될 수 있다. 예컨대, 클러스터 벡터의 방향/각도의 추정치는 클러스터의 개별적 벡터들에 대응하는 각각의 방향들/각도들과 비교될 수 있다. 클러스터 벡터에 대한 추정 에러 연관된 방향/각도가 결정될 수 있다.
Sa(θ1,θ2)은 θ1 및 θ2로서 표시된 2개의 각도들 사이의 가장 작은 음이 아닌 각도로서 정의될 수 있다. 일례에서, Sa(357°, 13°)는 357도 및 13도의 각도들 사이의 가장 작은 각도가 16도이기 때문에 16°이다. Sa(θ1,θ2)의 관계는 데이터 벡터들이 적절한 방향에서 대면하는 것을 보장하기 위하여 활용될 수 있다. 예컨대, 최소 예상된 에러와 연관된 클러스터 벡터의 각도 θ를 정확하게 결정하기 위하여, 예컨대, 주어진 클러스터에 대한 각각의 개별적 벡터는 동일한 일반적 방향을, 예컨대 전자 지도의 우측 또는 좌측 쪽을, 또는 위 또는 아래 방향을 지시할 수 있다. 그러나, 만일 일부 벡터들이 클러스터의 대다수의 다른 벡터들로부터 떠나는 방향을 지시하면, 도 9a-c와 관련하여 이하에서 논의되는 바와같이, 클러스터의 모든 벡터들이 동일한 일반적 방향을 지시하는 것을 보장하기 위해 그 멀어지는 벡터들에 180도가 더해질 수 있다.
도 9a는 하나 이상의 구현들에 따라 벡터들의 클러스터(900)를 예시한다. 도시된 바와같이, 제 1 벡터(905) 및 제 2 벡터(910)는 각각 약간 상향 각도로 전자 지도(920)의 섹션의 우측 쪽을 향한 방향을 지시한다. 그러나, 제 3 벡터(915)는 전자 지도(920)의 섹션의 좌측 쪽을 지시한다. 제 1, 제 2 및 제 3 벡터들(905, 910, 915)은 결합될 수 있다. 예컨대, 클러스터(900)를 나타내는 클러스터 벡터의 방향이 결정될 수 있다. 만일 클러스터 벡터의 방향이 결정되었다면, 개별적 벡터가 클러스터 벡터의 방향을 따르는 경우에, x,y 좌표 컴포넌트들과 같은 컴포넌트들이 후속하여 결정될 수 있다. 비록 개별적 벡터들의 x,y 축 컴포넌트들이 앞서 논의되었을지라도, 예컨대, 일부 구현들에서 회랑들이 수직 x,y 축들로서 정렬되지 않은 상이한 축들을 따라 지향될 수 있다는 것이 인식되어야 한다. 개별적 벡터들의 x,y 컴포넌트들은 동일한 회랑을 통해 이동하는 동안 약간 상이한 궤도들을 통해 이동하는 사용자들의 움직임을 고려하여 평균될 수 있다. 클러스터의 개별적 벡터들의 x,y 컴포넌트들을 평균하는 것은 개별적 벡터들에 의하여 유발되는 궤도의 최소 변형들을 고려할 수 있다. 다시 말해서, 만일 벡터 궤도의 약간의 변동들이 "잡음"인 것으로 고려되면, 이러한 벡터들의 x,y 컴포넌트들을 평균하는 것은 이러한 잡음 컴포넌트들의 영향들을 효과적으로 삭제하거나 또는 적어도 감소시킬 수 있다.
이 예에서, 클러스터 벡터의 x-축 컴포넌트는 제 1, 제 2 및 제 3 벡터들(905, 910, 915)을 각각 합산하는 x-축 컴포넌트들을 합산한후 3개의 개별적 벡터들인, 클러스터의 개별적 벡터들의 총 수로 나눔으로써 결정될 수 있다. 클러스터 벡터의 y-축 컴포넌트는 유사한 방식으로 결정될 수 있다. 따라서, 결정된 x-축 및 y-축 컴포넌트들에 기초하여, 클러스터(900)를 나타내는 클러스터 벡터의 방향이 결정된다. 클러스터 벡터의 방향을 결정하기 위하여 개별적 벡터들의 x,y 컴포넌트들을 평균하는 이유는 동일한 회랑을 통해 이동하는 동안 약간 상이한 궤도들을 따라 이동하는 사용자들의 움직임을 고려하기 때문이다. 평균 x,y 컴포넌트들을 결정하여 따라서 클러스터의 모든 개별적 벡터들을 나타내는 방향을 결정하기 위하여 개별적 벡터들의 x,y 컴포넌트들을 평균하는 것은 개별적 벡터들에 의하여 야기되는 궤도의 최소 변동들을 고려할 수 있다. 다시 말해서, 만일 벡터들의 궤도의 약간의 변동들이 "잡음"인 것으로 고려되면, 이러한 벡터들의 x,y 컴포넌트들을 평균하는 것은 이러한 잡음 컴포넌트들의 현상들을 효과적으로 삭제 또는 적어도 감소시킬 수 있다.
도 9a를 다시 참조하면, 제 3 벡터(915)는 일반적으로 전자 지도(920)의 섹션(section)의 좌측을 지시하는 반면에, 제 1 및 제 2 벡터들(905, 910)은 일반적으로 전자 지도(920)의 섹션의 우측을 지시한다. 따라서, 제 3 벡터(915)로부터의 기여들은 제 1 및 제 2 벡터들(905, 910)로부터의 큰 기여들을 효과적으로 삭제할 수 있다. 클러스터(900)의 모든 벡터들이 동일한 일반적 방향을 지시하는 것을 보장하기 위하여, 클러스터(900)의 하나 이상의 벡터들의 방향이 변경될 필요가 있는지를 결정하기 위하여 앞서 논의된 Sa(θ1, θ2) 관계가 활용될 수 있다.
클러스터 벡터에 대한 각도 θ를 결정하기 위하여, 이하의 수식은 합 S를 결정하기 위하여 클러스터의 M개의 개별적 벡터들 각각에 대하여 계산될 수 있으며, 여기서 S는 각도 θ와 연관된 에러 추정치를 나타낸다.
여기서, θi는 각각의 개별적 벡터에 대한 방향 각도를 나타낸다. 앞서 논의된 S에 대한 수식은 최소 평균 제곱 에러(LMSE)의 측정치를 최소화하는 θ의 값을 결정하기 위하여 활용될 수 있다. 에러의 다른 측정치들이 일부 구현들에서 결정될 수 있다는 것이 인식되어야 한다. 이 수식은 어느 벡터들이 방향에서 플립(flip)하는지를 결정하기 위하여 활용될 수 있다. 예컨대, 수식은 가장 작은 최소 평균 제곱 에러를 야기하는, 각각의 벡터에 대한 방향들을 결정하기 위하여 활용될 수 있으며, 다음으로 다른 방향을 지시하고 있는 벡터들의 방향이 플립될 수 있다.
합 S는 에러(예컨대, LSME)의 측정치를 나타낼 수 있으며, 앞서 논의된 바와같이 {0, 1, 2, ..., 179}와 같은 세트에서 모든 θ에 대하여 계산될 수 있다. 합 S를 최소화하는 θ의 값은 식별될 수 있으며, θmin로 표시될 수 있다. 특정 개별적 벡터에 대하여, 만일 이면, θi에 의해 표현되는 개별적 벡터는 클러스터의 대부분의 개별적 벡터들의 반대 방향을 지시하는 것으로 결정될 수 있다. 따라서, 개별적 벡터의 방향은 θi의 값에 180도를 더함으로써 효과적으로 플립될 수 있다. θmin은 클러스터 벡터의 각도를 나타낼 수 있다.
도 9a를 다시 참조하면, 제 1 벡터(905)는 카티션 그리드 기준상에서 15.0°에 대응하는, 수평에 대하여 각도 θa의 방향을 지시할 수 있으며, 제 2 벡터(910)는 20.0°의 각도 θb의 방향을 지시할 수 있으며, 제 3 벡터(915)는 151.0°의 각도 θc의 방향을 지시할 수 있다. 만일 예컨대 θmin이 클러스터(900)의 벡터들(905, 910, 915)에 대하여 계산되면, θmin는 원점 위로 2.0°의 값을 가지도록 계산될 수 있다. 의 값이 90.0°보다 큰지에 관한 결정이 이루어질 수 있다. 이러한 경우에, 제 1 벡터(905) 및 제 2 벡터(910)에 대한 의 값은 모두 90.0°미만이다. 그러나, 제 3 벡터(915)에 대한 의 값은 90.0°보다 크다. 다시 말해서, 는 149.0°이다. 따라서, 도 9b에 도시된 바와같이 제 1 벡터(915)의 방향을 효과적으로 플립하기 위하여 제 1 벡터(915)에 180도가 더해질 수 있다.
도 9b에서, 제 3 벡터(915)의 방향은 플립된다. 다시 말해서, 제 3 벡터(915)상의 화살표(945)는 도 9a에서 화살표(925)가 지시하는 것과 반대 방향을 지시한다. 제 1 벡터(905) 및 제 2 벡터(910)는 전자 지도(940)의 부분에서 변경되지 않고 유지될 수 있다.
도 9c는 도 9b에 도시된 바와같이 클러스터(900)의 개별적 벡터들을 평균함으로써 형성될 수 있는 클러스터 벡터(975)를 예시한다. 클러스터 벡터(975)는 화살촉(980)에 의하여 표시된 방향을 지시할 수 있다. 화살촉(985)은 전자 지도(990)의 부분에서 도시된 클러스터 벡터(975)에 의하여 특정된 회랑내의 경로를 따라 반대 방향으로 사람이 이동중일 수 있다는 것을 표시하기 위하여 클러스터 벡터(975)의 반대 끝에 더해질 수 있다.
도 10은 하나 이상의 구현들에 따라 전자 지도(1000) 내의 유도된 관심 지점(POI)들 및 클러스터 벡터들을 예시한다. 도시된 바와같이, 전자 지도(1000)는 제 1 POI(1005), 제 2 POI(1010) 및 제 3 POI(1015)를 도시한다. 전자 지도(1000)는 또한 제 1 클러스터 벡터(1020), 제 2 클러스터 벡터(1025), 제 3 클러스터 벡터(1030), 제 4 클러스터 벡터(1035), 제 5 클러스터 벡터(1040), 제 6 클러스터 벡터(1045), 및 제 7 클러스터 벡터(1050)와 같은 여러 클러스터 벡터들을 도시한다. 비록 전자 지도(1000)가 외측 주변 이외의 임의의 벽들 또는 구조적 칸막이들의 도해들을 도시하지 않을지라도, 네비게이션 애플리케이션은 클러스터 벡터들에 의하여 표시된 하나 이상의 회랑들을 통해 특정 POI로부터 목적지 POI로 사용자를 라우팅하기 위하여 전자 지도(1000)에 도시된 정보를 활용할 수 있다.
도 11은 하나 이상의 구현들에 따라 하나 이상의 관심 지점들 및 회랑들을 결정하기 위한 프로세스(1100)의 흐름도이다. 동작(1105)에서, 특정 지역 내의 하나 이상의 모바일 디바이스들에 대한 하나 이상의 위치 추정치들 및 연관된 시간 스탬프들이 액세스될 수 있다. 다음으로, 동작(1110)에서, 하나 이상의 위치 추정치들은 하나 이상의 실질적으로 정지된 사용자들과 연관된 위치 추정치들의 제 1 세트 및 이동중인 하나 이상의 사용자들과 연관된 위치 추정치들의 제 2 세트를 결정하기 위하여 시간 및 공간에서 상관될 수 있다. 동작(1115)에서, 하나 이상의 관심 지점들은 위치 추정치들의 제 1 세트에 적어도 부분적으로 기초하여 미리 정의된 지역내에서 식별되고 그리고 위치 추정치들의 제 2 세트에 적어도 부분적으로 기초하여 하나 이상의 회랑들 내에서 식별될 수 있다. 동작(1120)에서, 하나 이상의 관심 지점들 및 하나 이상의 회랑들에 관한 정보는 메모리에 저장될 수 있다. 하나 이상의 위치 추정치들은 하나 이상의 시간 스탬프들과 연관될 수 있다.
도 12는 하나 이상의 구현들에 따라 지도 특징들의 위치들을 추론하기 위한 시스템(1200)의 특정 구현에 대한 개략적 블록도이다. 시스템(1200)은 제 1 모바일 디바이스(1205), 제 2 모바일 디바이스(1210), 및 추가 이동 디바이스들, 즉 제 N 모바일 디바이스(1215)를 포함할 수 있다. 이러한 모바일 디바이스들은 인터넷과 같은 네트워크(1220)에 위치 추정치들을 전송할 수 있다. 네트워크(1220)는 지도 서버(1225)에 이러한 위치 추정치들의 전송을 가능하게 할 수 있다. 지도 서버(1225)는 지역 내의 사용자들이 휴대하는 모바일 디바이스들로부터의 수신된 위치 추정치들에 적어도 부분적으로 기초하여 지역 내의 하나 이상의 관심 지점들 및/또는 회랑들의 위치들을 결정하도록 적응될 수 있다.
지도 서버(1225)는 프로세서(1230), 메모리(1235), 송신기(1240) 및 수신기(1245)와 같은 여러 엘리먼트들을 포함할 수 있다. 메모리(1235)는 저장 매체를 포함할 수 있으며, 프로세스들, 예들, 구현들 또는 기술되거나 또는 제시된 이들의 예들 중 하나 이상을 수행하도록 실행가능한 머신-판독가능 명령들을 저장하도록 적응될 수 있다. 프로세서(1230)는 이러한 머신-판독가능 명령들을 액세스 및 실행하도록 적응될 수 있다. 이들 머신-판독가능 명령들의 실행을 통해, 프로세서(1230)는 하나 이상의 기능들을 실행하도록 지도 서버(1225)의 다양한 엘리먼트들을 제어할 수 있다.
메모리(1235)는 또한 예컨대 하나 이상의 전자 지도들, 이러한 전자 지도들에 대한 주석들, 특정 지역 내의 다양한 사용자들의 모바일 디바이스들로부터 수신된 위치 추정치들, 및 하나 이상의 관심 지점들 및/또는 회랑들에 관한 다른 정보를 저장할 수 있다. 지도 서버(1225)는 수신기(1245)를 통해 위치 추정치들 및 전자 지도들을 수신할 수 있다. 지도 서버(1225)는 예컨대 송신기(1240)를 통해 전자 지도들 및/또는 이러한 전자 지도들에 대한 주석들을 모바일 디바이스에 전송할 수 있다.
하나 이상의 구현들에서, 서버는 모바일 디바이스로부터 하나 이상의 위치 추정치들을 요청하기 위하여 모바일 디바이스에 메시지를 전송할 수 있다. 예컨대, 만일 서버가 도식화된(mapped) 지역의 특정 부분에서 회랑들 및/또는 관심 지점들을 결정하기 위하여 충분한 량의 위치 추정치들을 이미 가졌다면, 서버는 이러한 지역들 내의 모바일 디바이스들로부터 임의의 추가 위치 추정치들을 요구하지 않을 수 있다. 만일 서버가 예컨대 빌딩 내의 수천개의 모바일 디바이스들로부터 위치 추정치들을 수신하였다면, 예컨대 이들 위치 추정치들의 모두를 처리하기 위하여 상당한 시스템 대역폭이 활용될 수 있다. 도식화된 지역의 부분들에 대한 충분한 위치 추정치들이 이미 수신된 경우에, 이전의 도식화된 지역에 대응하는 추가 위치 추정치들을 처리하기 위하여 시스템 자원들을 활용하는 것은 낭비일 수 있다. 다른 한편으로, 덜 이동되는 지역들에서 하나 이상의 관심 지역들 및/또는 회랑들의 위치들을 추가로 결정하기 위하여 추가 위치 추정치들이 활용될 수 있는 지역의 특정 부분들이 존재할 수 있다. 예컨대, 만일 빌딩의 섹션이 최근에 리모델링되어 빌딩의 섹션의 레이아웃이 변경되었다면, 서버는 이러한 지역내의 관심 지역들 및/또는 회랑들의 위치들을 결정하기 위한 충분한 정보를 갖지 않을 수도 있다.
일부 구현들에서, 인간 운영자는 지역의 특정 부분이 리모델링되었고 그 지역에 대하여 새로운 지도 정보가 결정되어야 한다는 것을 표시하기 위한 메시지를 서버에 전송할 수 있다. 일부 다른 구현들에서, 예컨대 서버는 특정 지역들 또는 그 지역들의 특정 부분들 내의 모바일 디바이스들로부터 위치 추정치들을 주기적으로 요청할 수 있어서, 서버는 이러한 지역내의 임의의 관심 지점들 및/또는 회랑들이 이러한 지역들에서 이용가능한 가장 최근의 지도 정보에 대하여 변화되었는지를 자체적으로 결정할 수 있다. 예컨대, 서버는 특정 좌표들의 특정 근접거리 내 또는 하나 이상의 특정 액세스 포인트들에 근접한 모바일 디바이스들로부터 위치 추정치들을 요청하는 메시지를 전송할 수 있다.
하나 이상의 구현들에서, 서버는 위치 추정치들을 요청하는 메시지를 하나 이상의 모바일 디바이스들에 전송할 수 있다. 모바일 디바이스는 이러한 메시지를 수신할 수 있으며, 예컨대 특정 지역내에 있는 모바일 디바이스와 같이 요청의 요건들이 만족된 경우에 이러한 서버에 자신의 위치 추정치를 전송할 수 있다.
일부 구현들에서, 모바일 디바이스는 모바일 디바이스의 움직임을 검출하기 위한 특정 움직임 센서들을 포함할 수 있다. 예컨대, 모바일 디바이스는 하나 이상의 "제로(zero) 움직임 센서들"을 포함할 수 있다. 여기에서 사용되는 "제로 움직임 센서"는 움직임을 검출할 수 있는 센서를 지칭할 수 있다. 일부 실시예들에서, 움직이거나 또는 실질적으로 정지해 있는 것으로 고려되는 디바이스에 대하여 충분한 움직임이 발생하였는지를 결정하기 위하여, 검출된 움직임이 측정되어 비-제로(non-zero) 임계치와 비교될 수 있다. 예컨대, 모바일 디바이스에 의하여 사용되는 제로 움직임 센서들의 예들은 가속기, 자이로스코프, 자력계, 및/또는 중력계를 포함할 수 있다. 예컨대, 가속기는 모바일 디바이스의 가속을 검출할 수 있으며, 자이로스코프는 모바일 디바이스의 지향의 변화를 검출할 수 있다. 예컨대, 자력계는 자력계의 주변에서 자기장의 강도 및/또는 방향을 측정할 수 있으며, 중력계는 중력계에 의하여 관찰되는 지구의 로컬 중력장을 측정할 수 있다. 일부 구현들에서, 예컨대 모바일 디바이스의 움직임을 검출하기 위해 모바일 디바이스 상의 비디오 카메라로부터의 이미지들이 처리될 수 있다.
일부 구현들에서, 모바일 디바이스는 위치 추정치들에 부가하여 센서 측정치들을 서버에 전송할 수 있다. 서버는 위치 추정치가 결정되었을때 모바일 디바이스가 이동중이었는지를 결정하기 위하여 이러한 센서 측정치들을 활용할 수 있다. 일부 구현들에 따르면, 앞서 논의된 바와같이, 서버는 이러한 위치 추정치들 간의 거리에 적어도 부분적으로 기초하여 모바일 디바이스에 대하여 위치 추정치들이 결정되었던 시간에 모바일 디바이스가 이동중이었는지의 여부를 결정할 수 있다. 그러나, 모바일 디바이스로부터의 센서 판독들과 같은 추가 정보를 팩터링(factoring)함으로써, 서버는 하나 이상의 위치 추정치들이 결정되었던 시간에 모바일 디바이스가 이동중이었는지의 여부를 고수준의 정확도로 결정할 수 있다. 일부 구현들에서, 센서 판독들은 특정 위치 추정치들이 결정되었던 시간에 모바일 디바이스가 이동중이었는지를 결정하기 위하여 단독으로 활용될 수 있다.
일부 구현들에서, 위치 추정치들이 결정되었을 때 모바일 디바이스가 이동중이었음을 모바일 디바이스에 대한 센서 판독들이 표시하는 경우에, 서버는 단지 위치 추정치들이 서버에 전송되는 것을 요청할 수 있다. 예컨대, 서버의 프로세서는 예컨대 송신기를 통해 메시지의 전송을 개시할 수 있다. 유사하게, 일부 구현들에 따르면, 위치 추정치들이 결정되었을때 모바일 디바이스가 정지해 있었다는 것을 모바일 디바이스에 대한 센서 판독들이 표시하는 경우에, 서버는 단지 위치 추정치들이 서버에 전송되는 것을 요청할 수 있다.
일부 구현들에 따르면, 서버 또는 다른 디바이스는 파퓰래러티 인덱스 관점에서 회랑들을 랭크할 수 있다. 여기에서 사용되는 "파퓰래러티(popularity) 인덱스"는 특정 회랑의 파퓰래러티의 측정치를 지칭할 수 있다. 파퓰래러티 인덱스는 특정 회랑 내에 위치한 다수의 개별적 벡터들에 적어도 부분적으로 기초하여 결정될 수 있다. 예컨대, 많은 수의 개인들이 특정 회랑을 따라 이동하면서 자신들의 모바일 디바이스들을 휴대하면, 많은 수의 개별적 벡터들은 이러한 개인들의 모바일 디바이스들에 대한 연속적인 위치 추정치들에 적어도 부분적으로 기초하여 회랑을 따라 결정될 수 있다. 다른 한편으로, 만일 비교적 적은 수의 개인들이 상이한 회랑을 따라 이동하면서 자신들의 모바일 디바이스들을 휴대하면, 비교적 적은 수의 개별적 벡터들은 이러한 개인들의 모바일 디바이스들에 대한 연속적인 위치 추정치들에 적어도 부분적으로 기초하여 회랑을 따라 결정될 수 있다. 따라서, 회랑들의 위치들이 알려지면, 회랑들은 회랑들의 각각을 따라 위치한 다수의 개별적 벡터들의 비교에 적어도 부분적으로 기초하여 파퓰래러티 인덱스에 따라 랭크될 수 있다. 많은 수의 개인들이 이동하는 빈번하게 이동된 회랑은 비교적 높은 파퓰래러티 인덱스와 연관될 수 있는 반면에, 비교적 적은 수의 개인들이 이동하는 더 적게 이동된 회랑은 비교적 낮은 파퓰래러티 인덱스와 연관될 수 있다.
사무실 빌딩에서, 예컨대 특정 회랑을 따라 정렬된 욕실 또는 자동판매기들이 존재하기 때문에, 개인들은 빌딩 출구 쪽으로 특정 회랑을 따라 걷는 것을 선호할 수 있다. 이러한 회랑들의 파퓰래러티 인덱스에 관한 정보는 라우팅 애플리케이션에서 활용될 수 있다. 예컨대, 다수의 잠재적인 이유들로 인하여, 더 인기있는 회랑들은 개인들이 빌딩내에서 이동하기를 선호하는 선호되는 경로들일 수 있다. 따라서, 서버는 예컨대 이러한 회랑들을 랭크하기 위하여 최대 수의 움직임 벡터들과 어느 지역내의 회랑들이 연관되는지를 결정하기 위하여 이동중인 사용자들로부터의 데이터를 분석할 수 있다.
도 13은 하나 이상의 구현들에 따른 모바일 디바이스(1300)의 개략적 블록도이다. 도시된 바와같이, 모바일 디바이스(1300)는 수신기(1305), 송신기(1310), 프로세서(1315) 및 움직임 센서(들)(1320)과 같은 여러 컴포넌트들을 포함할 수 있다. 예컨대, 수신기(1305)는 네트워크 엘리먼트로부터의 하나 이상의 무선 신호들을 수신할 수 있다. 예컨대, 송신기(1310)는 하나 이상의 무선 신호들을 전송할 수 있으며, 하나 이상의 위치 추정치들 및/또는 다른 정보를 전송할 수 있다. 프로세서(1315)는 다양한 계산들을 수행할 수 있으며 그리고/또는 수신기(1305), 송신기(1310) 및/또는 움직임 센서(들)(1320)의 동작을 제어할 수 있다. 움직임 센서(들)(1320)는 모바일 디바이스(1300)의 움직임을 검출하기 위한 하나 이상의 제로 움직임 검출기들을 포함할 수 있다. 하나 이상의 구현들에서, 예컨대 움직임 센서(들)(1320)는 모바일 디바이스(1300)의 움직임을 검출하기 위한 가속기 및/또는 자이로스코프를 포함할 수 있다.
위의 상세한 설명의 일부 부분들은 특수 장치 또는 특수 목적 컴퓨팅 디바이스 또는 플랫폼의 메모리내에 저장되는 2진 디지털 신호들에 대한 동작들의 알고리즘들 또는 심볼 표현들에 의해 제시된다. 본 특정한 명세서의 상황에서, 용어 특수 장치 등은 프로그램 소프트웨어로부터의 명령들에 따라 특정 기능들을 수행하도록 프로그래밍되면 범용 컴퓨터를 포함한다. 알고리즘 설명들 또는 심볼 표현들은 당해 기술분야에서 숙련된 다른 사람들에게 자신들의 작업의 실체를 전달하기 위하여 신호 프로세싱 또는 관련 기술들에서 당업자에 의하여 사용되는 기술들의 예들이다. 알고리즘은 여기에서 그리고 일반적으로 동작들의 자기-모순없는 시퀀스 또는 원하는 결과를 야기하는 유사한 신호 프로세싱인 것으로 고려된다. 이 상황에서, 동작들 또는 프로세싱은 물리적 양들의 물리적 조작과 관련된다. 통상적으로, 비록 필수적은 아니지만, 이러한 양들은 저장되거나, 전달되거나, 결합되거나, 비교되거나 또는 다른 방식으로 조작될 수 있는 전기 또는 자기 신호들의 형태를 취할 수 있다.
비트들, 데이터, 값들, 엘리먼트들, 심볼들, 문자들, 용어들, 숫자들, 부호들 등으로서 신호들을 지칭하는 것은 주로 일반적인 용도 때문에 가끔 편리하다는 것이 입증되었다. 그러나, 이들 또는 유사한 용어들 모두가 적절한 물리적 양들과 연관되며 단순히 편리한 라벨들이라는 것이 이해되어야 한다. 달리 특별히 언급하지 않는 한, 앞의 설명으로부터 명백한 바와같이, 본 명세서 전반에 걸쳐 "프로세싱", "컴퓨팅", "계산", "결정" 등과 같은 용어들을 이용한 논의는 특수 목적 컴퓨터 또는 유사한 특수 목적 전자 컴퓨팅 디바이스와 같은 특수 장치들의 동작들 또는 프로세스들을 지칭하는 것이 인식된다. 따라서, 본 명세서의 상황에서, 특수 목적 컴퓨터 또는 유사한 특수 목적 전자 컴퓨팅 디바이스는 특수 목적 컴퓨터 또는 유사한 특수 목적 전자 컴퓨팅 디바이스의 메모리들, 레지스터들, 저장 매체 또는 다른 정보 저장 디바이스들, 전송 디바이스들, 또는 디스플레이 디바이스들내의 물리적 전자 또는 자기 양들로서 통상적으로 표현되는 신호들을 조작 또는 전송할 수 있다. 예컨대, 특수 컴퓨팅 장치는 하나 이상의 특정 기능들을 수행하기 위한 명령들로 프로그래밍되는 하나 이상의 프로세서들을 포함할 수 있다.
본 명세서에 기술된 방법들은 특정 특징들 및/또는 예들에 따른 애플리케이션들에 따라 다양한 수단에 의하여 구현될 수 있다. 예컨대, 이러한 방법들은 하드웨어, 펌웨어, 소프트웨어 및/또는 이들의 조합으로 구현될 수 있다. 하드웨어의 구현의 경우에, 예컨대 프로세싱 유닛은 하나 이상의 주문형 집적 회로(ASIC)들, 디지털 신호 프로세서(DSP)들, 디지털 신호 프로세싱 디바이스(DSPD)들, 프로그래밍가능한 로직 디바이스(PLD)들, 필드 프로그래밍가능한 게이트 어레이(FPGA)들, 프로세서들, 제어기들, 마이크로-제어기들, 마이크로프로세서들, 전자 디바이스들, 여기에 설명된 기능들을 수행하도록 설계된 다른 전자 유닛들, 및/또는 이들의 조합 내에서 구현될 수 있다.
펌웨어 및/또는 하드웨어/소프트웨어 구현들에 대하여, 특정 방법들은 본 명세서에 설명된 기능들을 수행하는 모듈들(예컨대, 절차들, 함수들 등)을 통해 구현될 수 있다. 명령들을 유형적으로(tangibly) 포함하는 임의의 머신 판독가능 매체는 본 명세서에 설명되는 방법들을 구현하는데 사용될 수 있다. 예컨대, 소프트웨어 코드들은 이동국 및/또는 액세스 포인트의 메모리에 저장될 수 있으며, 디바이스의 프로세싱 유닛에 의해 실행될 수 있다. 메모리는 프로세싱 유닛 내에 구현되거나 그리고/또는 프로세싱 유닛 외부에 구현될 수 있다. 여기에서 사용되는 용어 "메모리"는 임의의 타입의 장기간, 단기간, 휘발성, 비휘발성 또는 다른 메모리를 지칭하며, 메모리의 임의의 특정 타입 또는 메모리들의 수, 또는 메모리에 저장되는 매체의 타입에 제한되지 않는다.
만일 하드웨어/소프트웨어로 구현되면, 방법들 또는 이의 부분들을 구현하는 기능들은 컴퓨터-판독가능 매체상에 하나 이상의 명령들 또는 코드로서 저장되고 그리고/또는 이들을 통해 전송될 수 있다. 컴퓨터-판독가능 매체는 제조 물품의 형태를 취할 수 있다. 컴퓨터-판독가능 매체는 컴퓨터 저장 매체, 및/또는 한 장소에서 다른 장소로 컴퓨터 프로그램의 이전을 용이하게 하는 임의의 매체를 포함하는 통신 매체를 포함할 수 있다. 저장 매체는 컴퓨터 또는 유사한 디바이스에 의해 액세스될 수 있는 임의의 이용가능 매체일 수 있다. 제한이 아니라 예로서, 컴퓨터 판독가능 매체는 RAM, ROM, EEPROM, CD-ROM 또는 다른 광학 디스크 저장매체, 자기 디스크 저장매체, 또는 다른 자기 저장 디바이스들, 또는 명령들 또는 데이터 구조들의 형태로 원하는 프로그램 코드를 반송 또는 저장하기 위하여 사용될 수 있고 컴퓨터에 의하여 액세스될 수 있는 임의의 다른 매체를 포함할 수 있다.
본 명세서에서 참조되는 "명령들"은 하나 이상의 논리 동작들을 나타내는 표현들과 관련된다. 예컨대, 명령들은 하나 이상의 데이터 객체들에 대하여 하나 이상의 동작들을 실행하는 머신에 의하여 해석가능하게 함으로써 "머신-판독가능"일 수 있다. 그러나, 이는 단순히 명령들의 예이며, 청구된 요지는 이와 관련하여 제한되지 않는다. 다른 예에서, 본 명세서에서 참조되는 명령들은 인코딩된 커맨드들을 포함하는 커맨드 세트를 가진 프로세싱 유닛에 의하여 실행가능한 인코딩된 커맨드들과 관련된다. 이러한 명령은 프로세싱 유닛에 의하여 이해되는 머신 언어의 형태로 인코딩될 수 있다. 또한, 이들은 단순히 명령의 예들이며, 청구된 요지는 이에 대하여 제한되지 않는다.
예시적인 특징들인 것으로 지금 고려되는 것이 예시되고 기술되었지만, 청구된 요지로부터 벗어나지 않고 다양한 다른 수정들이 수행될 수 있고 균등물들이 대체될 수 있다는 것이 당업자에 의해 이해될 것이다. 부가적으로, 여기에 기술된 중심되는 개념으로부터 벗어나지 않고 청구된 요지의 교시들에 특정 상황을 적응시키도록 많은 수정들이 수행될 수 있다. 따라서, 청구된 요지는 개시된 특정 예들에 제한되지 않으나, 이러한 청구된 요지들은 또한 첨부된 청구항들의 범위내에 있는 모든 양상들 및 이의 균등물들을 포함할 수 있다는 것이 의도된다.
Claims (88)
- 방법으로서,
미리 정의된 지역 내의 하나 이상의 모바일 디바이스들에 대한 하나 이상의 위치 추정치들을 액세스하는 단계;
하나 이상의 실질적으로 정지된 모바일 디바이스들과 연관된 위치 추정치들의 세트를 결정하기 위하여 시간 및 공간에서 상기 하나 이상의 위치 추정치들을 상관시키는 단계;
상기 위치 추정치들의 세트에 적어도 부분적으로 기초하여, 상기 미리 정의된 지역 내의 하나 이상의 관심 지점들을 프로세서에 의해 식별하는 단계; 및
상기 하나 이상의 관심 지점들에 관한 정보를 메모리에 저장하는 단계를 포함하는, 방법. - 제 1항에 있어서,
상기 하나 이상의 위치 추정치들은 하나 이상의 시간 스탬프들과 연관되는, 방법. - 제 2항에 있어서,
제 1 시간 스탬프와 연관된 개인에 대한 특정 모바일 디바이스에 대한 제 1 위치 추정치와 제 2 시간 스탬프와 연관된 제 2 위치 추정치 간의 거리를 결정하는 단계 및 상기 거리가 미리 정의된 최소 임계 거리를 초과하는지의 여부를 결정하는 단계를 더 포함하는, 방법. - 제 3항에 있어서,
상기 거리가 상기 미리 정의된 최소 임계 거리를 초과하지 않는 것에 응답하여 상기 특정 모바일 디바이스가 실질적으로 정지해 있었다고 결정하는 단계를 더 포함하는, 방법. - 제 1항에 있어서,
상기 위치 추정치들의 세트를 하나 이상의 클러스터(cluster)들로 그룹핑하는 단계를 더 포함하는, 방법. - 제 5항에 있어서,
상기 하나 이상의 관심 지점들은 상기 하나 이상의 클러스터들에 적어도 부분적으로 기초하여 식별되며, 상기 하나 이상의 관심 지점들의 수는 상기 하나 이상의 관심 지점들의 위치의 예상된 에러를 미리 정의된 임계 레벨 미만으로 감소시키도록 선택되는, 방법. - 제 1항에 있어서,
상기 하나 이상의 관심 지점들 중 적어도 하나를 표시하기 위하여 상기 미리 정의된 지역과 연관된 하나 이상의 전자 지도들을 부연설명(annotate)하는 단계를 더 포함하는, 방법. - 제 1항에 있어서,
상기 하나 이상의 모바일 디바이스들이 상기 미리 정의된 지역의 특정 부분 내에 있는 것에 응답하여 전송되는, 상기 하나 이상의 모바일 디바이스들에 대한 하나 이상의 위치 추정치들을 요청하는 메시지를, 상기 하나 이상의 모바일 디바이스들에 전송하는 단계를 더 포함하는, 방법. - 제 1항에 있어서,
상기 하나 이상의 모바일 디바이스들이 실질적으로 정지해 있다는 것을 표시하는 상기 하나 이상의 모바일 디바이스들의 하나 이상의 움직임 센서에 응답하여 전송되는, 상기 하나 이상의 모바일 디바이스들에 대한 하나 이상의 위치 추정치들을 요청하는 메시지를, 상기 하나 이상의 모바일 디바이스들에 전송하는 단계를 더 포함하는, 방법. - 방법으로서,
미리 정의된 지역 내의 하나 이상의 모바일 디바이스들에 대한 하나 이상의 위치 추정치들을 액세스하는 단계;
이동중인 하나 이상의 모바일 디바이스들과 연관된 위치 추정치들의 세트를 결정하기 위하여 시간 및 공간에서 상기 하나 이상의 위치 추정치들을 상관시키는 단계;
상기 위치 추정치들의 세트에 적어도 부분적으로 기초하여 상기 미리 정의된 지역 내의 하나 이상의 회랑(corridor)들을 프로세서에 의하여 식별하는 단계; 및
상기 하나 이상의 회랑들에 관한 정보를 메모리에 저장하는 단계를 포함하는, 방법. - 제 10항에 있어서,
상기 하나 이상의 위치 추정치들은 하나 이상의 시간 스탬프들과 연관되는, 방법. - 제 11항에 있어서,
제 1 시간 스탬프와 연관된 개인에 대한 특정 모바일 디바이스에 대한 제 1 위치 추정치와 제 2 시간 스탬프와 연관된 제 2 위치 추정치 간의 거리를 결정하는 단계 및 상기 거리가 미리 정의된 최소 임계 거리를 초과하는지의 여부를 결정하는 단계를 더 포함하는, 방법. - 제 12항에 있어서, 상기 거리가 상기 미리 정의된 최소 임계 거리를 초과하는 것에 응답하여 상기 제 1 위치 추정치 및 상기 제 2 위치 추정치와 연관된 시간들에 상기 특정 모바일 디바이스가 이동중이었다고 결정하는 단계를 더 포함하는, 방법.
- 제 10항에 있어서,
이동중인 상기 하나 이상의 모바일 디바이스들에 대한 하나 이상의 연속적으로 결정된 위치 추정치들과 하나 이상의 위치 추정치들 간의 거리에 적어도 부분적으로 기초하여 상기 위치 추정치들의 세트와 연관된 하나 이상의 벡터들을 결정하는 단계를 더 포함하는, 방법. - 제 14항에 있어서,
상기 위치 추정치들의 세트와 연관된 하나 이상의 벡터들을 하나 이상의 클러스터들로 그룹핑하는 단계를 더 포함하는, 방법. - 제 15항에 있어서,
상기 하나 이상의 클러스터들 중 적어도 하나와 연관된 클러스터 벡터의 크기 및 방향을 결정하는 단계를 더 포함하는, 방법. - 제 16항에 있어서,
상기 클러스터 벡터의 방향은 상기 하나 이상의 벡터들의 벡터 가산에 적어도 부분적으로 기초하여 결정되며, 상기 벡터 가산은 상기 하나 이상의 회랑들을 따라 반대 방향들로 이동중인 상기 하나 이상의 모바일 디바이스들의 움직임을 고려하여 상기 하나 이상의 벡터들 중 적어도 하나의 벡터의 각각의 방향들을 플립(flip)하는 단계를 포함하는, 방법. - 제 15항에 있어서,
상기 하나 이상의 클러스터들에 적어도 부분적으로 기초하여 상기 하나 이상의 회랑들을 식별하는 단계를 더 포함하는, 방법. - 제 10항에 있어서,
상기 하나 이상의 회랑들 중 적어도 하나의 회랑을 표시하기 위하여 상기 미리 정의된 지역과 연관된 하나 이상의 전자 지도들을 부연설명하는 단계를 더 포함하는, 방법. - 제 10항에 있어서,
상기 하나 이상의 모바일 디바이스들이 상기 미리 정의된 지역의 특정 부분내에 있는 것에 응답하여 전송되는, 상기 하나 이상의 모바일 디바이스들에 대한 상기 하나 이상의 위치 추정치들을 요청하는 메시지를, 상기 하나 이상의 모바일 디바이스들에 전송하는 단계를 더 포함하는, 방법. - 제 10항에 있어서,
상기 하나 이상의 모바일 디바이스들이 이동중이라는 것을 표시하는 상기 하나 이상의 모바일 디바이스들의 하나 이상의 움직임 센서들에 응답하여 전송되는, 상기 하나 이상의 모바일 디바이스들에 대한 하나 이상의 위치 추정치들을 요청하는 메시지를 상기 하나 이상의 모바일 디바이스들에 전송하는 단계를 더 포함하는, 방법. - 제 10항에 있어서,
이동중인 상기 하나 이상의 모바일 디바이스들 사이에서 상기 하나 이상의 회랑들의 파퓰래러티(popularity) 인덱스에 적어도 부분적으로 기초하여 상기 하나 이상의 회랑들을 랭크하는 단계를 더 포함하는, 방법. - 장치로서,
네트워크로부터 신호들을 수신하는 수신기; 및
프로세서를 포함하며;
상기 프로세서는,
상기 신호들에 적어도 부분적으로 기초하여 미리 정의된 지역 내의 하나 이상의 모바일 디바이스들에 대한 하나 이상의 위치 추정치들을 액세스하며;
하나 이상의 실질적으로 정지된 모바일 디바이스들과 연관된 위치 추정치들의 세트를 결정하기 위하여 시간 및 공간에서 상기 하나 이상의 위치 추정치들을 상관시키며;
상기 위치 추정치들의 세트에 적어도 부분적으로 기초하여 상기 미리 정의된 지역 내의 하나 이상의 관심 지점들을 식별하며; 그리고
상기 하나 이상의 관심 지점들에 관한 정보를 메모리에 저장하도록 구성되는, 장치. - 제 23항에 있어서,
상기 하나 이상의 위치 추정치들은 하나 이상의 시간 스탬프들과 연관되는, 장치. - 제 24항에 있어서,
상기 프로세서는 제 1 시간 스탬프와 연관된 개인에 대한 특정 모바일 디바이스에 대한 제 1 위치 추정치와 제 2 시간 스탬프와 연관된 제 2 위치 추정치 간의 거리를 결정하며, 상기 거리가 미리 정의된 최소 임계 거리를 초과하는지의 여부를 결정하도록 적응되는, 장치. - 제 25항에 있어서,
상기 프로세서는 상기 거리가 상기 미리 정의된 최소 임계 거리를 초과하지 않는 것에 응답하여 상기 특정 모바일 디바이스가 실질적으로 정지해 있었다고 결정하도록 적응되는, 장치. - 제 23항에 있어서,
상기 프로세서는 상기 위치 추정치들의 세트를 하나 이상의 클러스터들로 그룹핑하도록 적응되는, 장치. - 제 27항에 있어서,
상기 하나 이상의 관심 지점들은 상기 하나 이상의 클러스터들에 적어도 부분적으로 기초하여 식별되며, 상기 하나 이상의 관심 지점들의 수는 상기 하나 이상의 관심 지점들의 위치의 예상된 에러를 미리 정의된 임계 레벨 미만으로 감소시키기도록 선택되는, 장치. - 제 23항에 있어서,
상기 프로세서는 상기 하나 이상의 관심 지점들 중 적어도 하나를 표시하기 위하여 상기 미리 정의된 지역과 연관된 하나 이상의 전자 지도들을 부연설명하도록 적응되는, 장치. - 제 23항에 있어서,
상기 프로세서는 상기 하나 이상의 모바일 디바이스들이 상기 미리 정의된 지역의 특정 부분 내에 있는 것에 응답하여 전송되는, 상기 하나 이상의 모바일 디바이스들에 대한 하나 이상의 위치 추정치들을 요청하는 메시지를, 상기 하나 이상의 모바일 디바이스들에 전송하는 것을 개시하도록 적응되는, 장치. - 제 23항에 있어서,
상기 프로세서는 상기 하나 이상의 모바일 디바이스들이 실질적으로 정지해 있다는 것을 표시하는 상기 하나 이상의 모바일 디바이스들의 하나 이상의 움직임 센서에 응답하여 전송되는, 상기 하나 이상의 모바일 디바이스들에 대한 하나 이상의 위치 추정치들을 요청하는 메시지를, 상기 하나 이상의 모바일 디바이스들에 전송하는 것을 개시하도록 적응되는, 장치. - 장치로서,
네트워크로부터 신호들을 수신하는 수신기; 및
프로세서를 포함하며,
상기 프로세서는,
상기 신호들에 적어도 부분적으로 기초하여 미리 정의된 지역 내의 하나 이상의 모바일 디바이스들에 대한 하나 이상의 위치 추정치들을 액세스하며;
이동중인 하나 이상의 모바일 디바이스들과 연관된 위치 추정치들의 세트를 결정하기 위하여 시간 및 공간에서 상기 하나 이상의 위치 추정치들을 상관시키며;
상기 위치 추정치들의 세트에 적어도 부분적으로 기초하여 상기 미리 정의된 지역 내의 하나 이상의 회랑들을 식별하며; 그리고
상기 하나 이상의 회랑들에 관한 정보를 메모리에 저장하도록 구성되는, 장치. - 제 32항에 있어서,
상기 하나 이상의 위치 추정치들은 하나 이상의 시간 스탬프들과 연관되는, 장치. - 제 33항에 있어서,
상기 프로세서는 제 1 시간 스탬프와 연관된 개인에 대한 특정 모바일 디바이스에 대한 제 1 위치 추정치와 제 2 시간 스탬프와 연관된 제 2 위치 추정치 간의 거리를 결정하며, 상기 거리가 미리 정의된 최소 임계 거리를 초과하는지의 여부를 결정하도록 적응되는, 장치. - 제 34항에 있어서,
상기 프로세서는 상기 거리가 상기 미리 정의된 최소 임계 거리를 초과하는 것에 응답하여 상기 제 1 위치 추정치 및 상기 제 2 위치 추정치와 연관된 시간들에 상기 특정 모바일 디바이스가 이동중이었다고 결정하도록 적응되는, 장치. - 제 32항에 있어서,
상기 프로세서는 이동중인 상기 하나 이상의 모바일 디바이스들에 대한 하나 이상의 연속적으로 결정된 위치 추정치들 및 하나 이상의 위치 추정치들 간의 거리에 적어도 부분적으로 기초하여 상기 위치 추정치들의 세트와 연관된 하나 이상의 벡터들을 결정하도록 적응되는, 장치. - 제 36항에 있어서,
상기 프로세서는 상기 하나 이상의 벡터들을 하나 이상의 클러스터들로 그룹핑하도록 적응되는, 장치. - 제 37항에 있어서,
상기 프로세서는 상기 하나 이상의 클러스터들 중 적어도 하나와 연관된 클러스터 벡터의 크기 및 방향을 결정하도록 적응되는, 장치. - 제 38항에 있어서,
상기 프로세서는 상기 하나 이상의 벡터들의 벡터 가산에 적어도 부분적으로 기초하여 상기 클러스터 벡터의 방향을 결정하도록 적응되며, 상기 벡터 가산은 상기 하나 이상의 회랑들을 따라 반대 방향들로 이동중인 상기 하나 이상의 모바일 디바이스들의 움직임을 고려하여 상기 하나 이상의 벡터들 중 적어도 하나의 벡터의 각각의 방향들을 플립하는 것을 포함하는, 장치. - 제 37항에 있어서,
상기 프로세서는 상기 하나 이상의 클러스터들에 적어도 부분적으로 기초하여 상기 하나 이상의 회랑들을 식별하도록 적응되는, 장치. - 제 32항에 있어서,
상기 프로세서는 상기 하나 이상의 회랑들 중 적어도 하나의 회랑을 표시하기 위하여 상기 미리 정의된 지역과 연관된 하나 이상의 전자 지도를 부연설명하도록 적응되는, 장치. - 제 32항에 있어서,
상기 프로세서는 상기 하나 이상의 모바일 디바이스들이 상기 미리 정의된 지역의 특정 부분 내에 있는 것에 응답하여 전송되는, 상기 하나 이상의 모바일 디바이스들에 대한 하나 이상의 위치 추정치들을 요청하는 메시지를, 상기 하나 이상의 모바일 디바이스들에 전송하는 것을 개시하도록 적응되는, 장치. - 제 32항에 있어서,
상기 프로세서는 상기 하나 이상의 모바일 디바이스들이 이동중이라는 것을 표시하는 상기 하나 이상의 모바일 디바이스들의 하나 이상의 움직임 센서들에 응답하여 전송되는, 상기 하나 이상의 모바일 디바이스들에 대한 하나 이상의 위치 추정치들을 요청하는 메시지를, 상기 하나 이상의 모바일 디바이스들에 전송하는 것을 개시하도록 적응되는, 장치. - 제 32항에 있어서,
상기 프로세서는 이동중인 상기 하나 이상의 모바일 디바이스들 사이에서 상기 하나 이상의 회랑들의 파퓰래러티 인덱스에 적어도 부분적으로 기초하여 상기 하나 이상의 회랑들을 랭크하도록 적응되는, 장치. - 장치로서,
미리 정의된 지역 내의 하나 이상의 모바일 디바이스들에 대한 하나 이상의 위치 추정치들을 액세스하기 위한 수단;
하나 이상의 실질적으로 정지된 모바일 디바이스들과 연관된 위치 추정치들의 세트를 결정하기 위하여 시간 및 공간에서 상기 하나 이상의 위치 추정치들을 상관시키기 위한 수단;
상기 위치 추정치들의 세트에 적어도 부분적으로 기초하여, 상기 미리 정의된 지역 내의 하나 이상의 관심 지점들을 식별하기 위한 수단; 및
상기 하나 이상의 관심 지점들에 관한 정보를 저장하기 위한 수단을 포함하는, 장치. - 제 45항에 있어서,
상기 하나 이상의 위치 추정치들은 하나 이상의 시간 스탬프들과 연관되는, 장치. - 제 46항에 있어서,
제 1 시간 스탬프와 연관된 개인에 대한 특정 모바일 디바이스에 대한 제 1 위치 추정치와 제 2 시간 스탬프와 연관된 제 2 위치 추정치 간의 거리를 결정하기 위한 수단 및 상기 거리가 미리 정의된 최소 임계 거리를 초과하는지의 여부를 결정하기 위한 수단을 더 포함하는, 장치. - 제 47항에 있어서,
상기 거리가 상기 미리 정의된 최소 임계 거리를 초과하지 않는 것에 응답하여 상기 특정 모바일 디바이스가 실질적으로 정지해 있었다고 결정하기 위한 수단을 더 포함하는, 장치. - 제 45항에 있어서,
상기 위치 추정치들의 세트를 하나 이상의 클러스터들로 그룹핑하기 위한 수단을 더 포함하는, 장치. - 제 49항에 있어서,
상기 하나 이상의 관심 지점들은 상기 하나 이상의 클러스터들에 적어도 부분적으로 기초하여 식별되며, 상기 하나 이상의 관심 지점들의 수는 상기 하나 이상의 관심 지점들의 위치의 예상된 에러를 미리 정의된 임계 레벨 미만으로 감소시키도록 선택되는, 장치. - 제 45항에 있어서,
상기 하나 이상의 관심 지점들 중 적어도 하나를 표시하기 위하여 상기 미리 정의된 지역과 연관된 하나 이상의 전자 지도들을 부연설명하기 위한 수단을 더 포함하는, 장치. - 제 45항에 있어서,
상기 하나 이상의 모바일 디바이스들이 상기 미리 정의된 지역의 특정 부분 내에 있는 것에 응답하여 전송되는, 상기 하나 이상의 모바일 디바이스들에 대한 하나 이상의 위치 추정치들을 요청하는 메시지를, 상기 하나 이상의 모바일 디바이스들에 전송하기 위한 수단을 더 포함하는, 장치. - 제 45항에 있어서,
상기 하나 이상의 모바일 디바이스들이 실질적으로 정지해 있다는 것을 표시하는 상기 하나 이상의 모바일 디바이스들의 하나 이상의 움직임 센서들에 응답하여 전송되는, 상기 하나 이상의 모바일 디바이스들에 대한 하나 이상의 위치 추정치들을 요청하는 메시지를, 상기 하나 이상의 모바일 디바이스들에 전송하기 위한 수단을 더 포함하는, 장치. - 장치로서,
미리 정의된 지역 내의 하나 이상의 모바일 디바이스들에 대한 하나 이상의 위치 추정치들을 액세스하기 위한 수단;
이동중인 하나 이상의 모바일 디바이스들과 연관된 위치 추정치들의 세트를 결정하기 위하여 시간 및 공간에서 상기 하나 이상의 위치 추정치들을 상관시키기 위한 수단;
상기 위치 추정치들의 세트에 적어도 부분적으로 기초하여 상기 미리 정의된 지역 내의 하나 이상의 회랑들을 식별하기 위한 수단; 및
상기 하나 이상의 회랑들에 관한 정보를 저장하기 위한 수단을 포함하는, 장치. - 제 54항에 있어서,
상기 하나 이상의 위치 추정치들은 하나 이상의 시간 스탬프들과 연관되는, 장치. - 제 55항에 있어서,
제 1 시간 스탬프와 연관된 개인에 대한 특정 모바일 디바이스에 대한 제 1 위치 추정치와 제 2 시간 스탬프와 연관된 제 2 위치 추정치 간의 거리를 결정하기 위한 수단 및 상기 거리가 미리 정의된 최소 임계 거리를 초과하는지의 여부를 결정하기 위한 수단을 더 포함하는, 장치. - 제 56항에 있어서,
상기 거리가 상기 미리 정의된 최소 임계 거리를 초과하는 것에 응답하여 상기 제 1 위치 추정치 및 상기 제 2 위치 추정치와 연관된 시간들에 상기 특정 모바일 디바이스가 이동중이었다고 결정하기 위한 수단을 더 포함하는, 장치. - 제 54항에 있어서,
이동중인 상기 하나 이상의 모바일 디바이스들에 대한 하나 이상의 연속적으로 결정된 위치 추정치들과 하나 이상의 위치 추정치들 간의 거리에 적어도 부분적으로 기초하여 상기 위치 추정치들의 세트와 연관된 하나 이상의 벡터들을 결정하기 위한 수단을 더 포함하는, 장치. - 제 58항에 있어서,
상기 위치 추정치들의 세트와 연관된 하나 이상의 벡터들을 하나 이상의 클러스터들로 그룹핑하기 위한 수단을 더 포함하는, 장치. - 제 59항에 있어서,
상기 하나 이상의 클러스터들 중 적어도 하나와 연관된 클러스터 벡터의 크기 및 방향을 결정하기 위한 수단을 더 포함하는, 장치. - 제 60항에 있어서,
상기 하나 이상의 벡터들의 벡터 가산에 적어도 부분적으로 기초하여 상기 클러스터 벡터의 방향을 결정하기 위한 수단을 더 포함하며, 상기 벡터 가산은 상기 하나 이상의 회랑들을 따라 반대 방향들로 이동중인 상기 하나 이상의 모바일 디바이스들의 움직임을 고려하여 상기 하나 이상의 벡터들 중 적어도 하나의 벡터의 각각의 방향들을 플립하는 것을 포함하는, 장치. - 제 59항에 있어서,
상기 하나 이상의 클러스터들에 적어도 부분적으로 기초하여 상기 하나 이상의 회랑들을 식별하기 위한 수단을 더 포함하는, 장치. - 제 54항에 있어서,
상기 하나 이상의 회랑들 중 적어도 하나의 회랑을 표시하기 위하여 상기 미리 정의된 지역과 연관된 하나 이상의 전자 지도들을 부연설명하기 위한 수단을 더 포함하는, 장치. - 제 54항에 있어서,
상기 하나 이상의 모바일 디바이스들이 상기 미리 정의된 지역의 특정 부분내에 있는 것에 응답하여 전송되는, 상기 하나 이상의 모바일 디바이스들에 대한 상기 하나 이상의 위치 추정치들을 요청하는 메시지를, 상기 하나 이상의 모바일 디바이스들에 전송하기 위한 수단을 더 포함하는, 장치. - 제 54항에 있어서,
상기 하나 이상의 모바일 디바이스들이 이동중이라는 것을 표시하는 상기 하나 이상의 모바일 디바이스들의 하나 이상의 움직임 센서들에 응답하여 전송되는, 상기 하나 이상의 모바일 디바이스들에 대한 하나 이상의 위치 추정치들을 요청하는 메시지를, 상기 하나 이상의 모바일 디바이스들에 전송하기 위한 수단을 더 포함하는, 장치. - 제 54항에 있어서,
이동중인 상기 하나 이상의 모바일 디바이스들 사이에서 상기 하나 이상의 회랑들의 파퓰래러티 인덱스에 적어도 부분적으로 기초하여 상기 하나 이상의 회랑들을 랭크하기 위한 수단을 더 포함하는, 장치. - 물품으로서,
미리 정의된 지역 내의 하나 이상의 모바일 디바이스들에 대한 하나 이상의 위치 추정치들을 액세스하며;
하나 이상의 실질적인 정지 모바일 디바이스들과 연관된 위치 추정치들의 세트를 결정하기 위하여 시간 및 공간에서 상기 하나 이상의 위치 추정치들을 상관시키며;
상기 위치 추정치들의 세트에 적어도 부분적으로 기초하여, 상기 미리 정의된 지역 내의 하나 이상의 관심 지점들을 식별하며; 그리고
상기 하나 이상의 관심 지점들에 관한 정보를 메모리에 저장하도록,
특수 목적 장치에 의하여 실행가능한 머신-판독가능 명령들을 포함하는 저장매체를 포함하는, 물품. - 제 67항에 있어서,
상기 하나 이상의 위치 추정치들은 하나 이상의 시간 스탬프들과 연관되는, 물품. - 제 68항에 있어서,
상기 머신-판독가능 명령들은, 제 1 시간 스탬프와 연관된 개인에 대한 특정 모바일 디바이스에 대한 제 1 위치 추정치와 제 2 시간 스탬프와 연관된 제 2 위치 추정치 간의 거리를 결정하며, 상기 거리가 미리 정의된 최소 임계 거리를 초과하는지의 여부를 결정하도록 상기 특수 목적 장치에 의해 추가적으로 실행가능한, 물품. - 제 69항에 있어서,
상기 머신-판독가능 명령들은, 상기 거리가 상기 미리 정의된 최소 임계 거리를 초과하지 않는 것에 응답하여 상기 특정 모바일 디바이스가 실질적으로 정지해 있었다고 결정하도록 상기 특수 목적 장치에 의해 추가적으로 실행가능한, 물품. - 제 67항에 있어서,
상기 머신-판독가능 명령들은, 상기 위치 추정치들의 세트를 하나 이상의 클러스터들로 그룹핑하도록 상기 특수 목적 장치에 의해 추가적으로 실행가능한, 물품. - 제 71항에 있어서,
상기 머신-판독가능 명령들은, 상기 하나 이상의 클러스터들에 적어도 부분적으로 기초하여 상기 하나 이상의 관심 지점들을 식별하도록 상기 특수 목적 장치에 의해 추가적으로 실행가능하며, 상기 하나 이상의 관심 지점들의 수는 상기 하나 이상의 관심 지점들의 위치의 예상된 에러를 미리 정의된 임계 레벨 미만으로 감소시키도록 선택되는, 물품. - 제 67항에 있어서,
상기 머신-판독가능 명령들은, 상기 하나 이상의 관심 지점들 중 적어도 하나를 표시하기 위하여 상기 미리 정의된 지역과 연관된 하나 이상의 전자 지도들을 부연설명하도록 상기 특수 목적 장치에 의해 추가적으로 실행가능한, 물품. - 제 67항에 있어서,
상기 머신-판독가능 명령들은, 상기 하나 이상의 모바일 디바이스들이 상기 미리 정의된 지역의 특정 부분 내에 있는 것에 응답하여 전송되는, 상기 하나 이상의 모바일 디바이스들에 대한 하나 이상의 위치 추정치들을 요청하는 메시지를, 상기 하나 이상의 모바일 디바이스들에 전송하는 것을 개시하도록 상기 특수 목적 장치에 의해 추가적으로 실행가능한, 물품. - 제 67항에 있어서,
상기 머신-판독가능 명령들은, 상기 하나 이상의 모바일 디바이스들이 실질적으로 정지해 있다는 것을 표시하는 상기 하나 이상의 모바일 디바이스들의 하나 이상의 움직임 센서들에 응답하여 전송되는, 상기 하나 이상의 모바일 디바이스들에 대한 하나 이상의 위치 추정치들을 요청하는 메시지를, 상기 하나 이상의 모바일 디바이스들에 전송하는 것을 개시하도록 상기 특수 목적 장치에 의해 추가적으로 실행가능한, 물품. - 물품으로서,
미리 정의된 지역 내의 하나 이상의 모바일 디바이스들에 대한 하나 이상의 위치 추정치들을 액세스하며;
이동중인 하나 이상의 모바일 디바이스들과 연관된 위치 추정치들의 세트를 결정하기 위하여 시간 및 공간에서 상기 하나 이상의 위치 추정치들을 상관시키며;
상기 위치 추정치들의 세트에 적어도 부분적으로 기초하여 상기 미리 정의된 지역 내의 하나 이상의 회랑들을 식별하며; 그리고
상기 하나 이상의 회랑들에 관한 정보를 메모리에 저장하도록,
특수 목적 장치에 의해 실행가능한 머신-판독가능 명령들을 포함하는 저장 매체를 포함하는, 물품. - 제 76항에 있어서,
상기 하나 이상의 위치 추정치들은 하나 이상의 시간 스탬프들과 연관되는, 물품. - 제 77항에 있어서,
상기 머신-판독가능 명령들은, 제 1 시간 스탬프와 연관된 개인에 대한 특정 모바일 디바이스에 대한 제 1 위치 추정치와 제 2 시간 스탬프와 연관된 제 2 위치 추정치 간의 거리를 결정하며, 상기 거리가 미리 정의된 최소 임계 거리를 초과하는지의 여부를 결정하도록 상기 특수 목적 장치에 의해 추가적으로 실행가능한, 물품. - 제 78항에 있어서,
상기 머신-판독가능 명령들은, 상기 거리가 상기 미리 정의된 최소 임계 거리를 초과하는 것에 응답하여 상기 제 1 위치 추정치 및 상기 제 2 위치 추정치와 연관된 시간들에 상기 특정 모바일 디바이스가 이동중이었다고 결정하도록 상기 특수 목적 장치에 의해 추가적으로 실행가능한, 물품. - 제 76항에 있어서,
상기 머신-판독가능 명령들은, 상기 하나 이상의 모바일 디바이스들에 대한 하나 이상의 연속적으로 결정된 위치 추정치들과 하나 이상의 위치 추정치들 간의 거리에 적어도 부분적으로 기초하여 상기 위치 추정치들의 세트와 연관된 하나 이상의 벡터들을 결정하도록 상기 특수 목적 장치에 의해 추가적으로 실행가능한, 물품. - 제 80항에 있어서,
상기 머신-판독가능 명령들은, 상기 위치 추정치들의 세트와 연관된 하나 이상의 벡터들을 하나 이상의 클러스터들로 그룹핑하도록 상기 특수 목적 장치에 의해 추가적으로 실행가능한, 물품. - 제 81항에 있어서,
상기 머신-판독가능 명령들은, 상기 하나 이상의 클러스터들 중 적어도 하나와 연관된 클러스터 벡터의 크기 및 방향을 결정하도록 상기 특수 목적 장치에 의해 추가적으로 실행가능한, 물품. - 제 82항에 있어서,
상기 머신-판독가능 명령들은, 상기 하나 이상의 벡터들의 벡터 가산에 적어도 부분적으로 기초하여 상기 클러스터 벡터의 방향을 결정하도록 상기 특수 목적 장치에 의해 추가적으로 실행가능하며, 상기 벡터 가산은 상기 하나 이상의 회랑들을 따라 반대 방향들로 이동중인 상기 하나 이상의 모바일 디바이스들의 움직임을 고려하여 상기 하나 이상의 벡터들 중 적어도 하나의 벡터의 각각의 방향들을 플립하는 것을 포함하는, 물품. - 제 81항에 있어서,
상기 머신-판독가능 명령들은, 상기 하나 이상의 클러스터들에 적어도 부분적으로 기초하여 상기 하나 이상의 회랑들을 식별하도록 상기 특수 목적 장치에 의해 추가적으로 실행가능한, 물품. - 제 76항에 있어서,
상기 머신-판독가능 명령들은, 상기 하나 이상의 회랑들 중 적어도 하나의 회랑을 표시하기 위하여 상기 미리 정의된 지역과 연관된 하나 이상의 전자 지도들을 부연설명하도록 상기 특수 목적 장치에 의해 추가적으로 실행가능한, 물품. - 제 76항에 있어서,
상기 머신-판독가능 명령들은, 상기 하나 이상의 모바일 디바이스들이 상기 미리 정의된 지역의 특정 부분내에 있는 것에 응답하여 전송되는, 상기 하나 이상의 모바일 디바이스들에 대한 상기 하나 이상의 위치 추정치들을 요청하는 메시지를, 상기 하나 이상의 모바일 디바이스들에 전송하는 것을 개시하도록 상기 특수 목적 장치에 의해 추가적으로 실행가능한, 물품. - 제 76항에 있어서,
상기 머신-판독가능 명령들은, 상기 하나 이상의 모바일 디바이스들이 이동중이라는 것을 표시하는 상기 하나 이상의 모바일 디바이스들의 하나 이상의 움직임 센서들에 응답하여 전송되는, 상기 하나 이상의 모바일 디바이스들에 대한 하나 이상의 위치 추정치들을 요청하는 메시지를, 상기 하나 이상의 모바일 디바이스들에 전송하는 것을 개시하도록 상기 특수 목적 장치에 의해 추가적으로 실행가능한, 물품. - 제 76항에 있어서,
상기 머신-판독가능 명령들은 이동중인 상기 하나 이상의 모바일 디바이스들 사이에서 상기 하나 이상의 회랑들의 파퓰래러티 인덱스에 적어도 부분적으로 기초하여 상기 하나 이상의 회랑들을 랭크하도록 상기 특수 목적 장치에 의해 추가적으로 실행가능한, 물품.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US25086209P | 2009-10-12 | 2009-10-12 | |
US61/250,862 | 2009-10-12 | ||
US12/901,304 US8756010B2 (en) | 2009-10-12 | 2010-10-08 | Method and apparatus for identification of points of interest within a predefined area |
US12/901,304 | 2010-10-08 | ||
PCT/US2010/052386 WO2011046971A1 (en) | 2009-10-12 | 2010-10-12 | Method and apparatus for identification of points of interest within a predefined area |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20120088746A KR20120088746A (ko) | 2012-08-08 |
KR101322778B1 true KR101322778B1 (ko) | 2013-10-29 |
Family
ID=43855509
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020127012440A KR101322778B1 (ko) | 2009-10-12 | 2010-10-12 | 미리 정의된 지역 내의 관심 지점들의 식별을 위한 방법 및 장치 |
Country Status (7)
Country | Link |
---|---|
US (2) | US8756010B2 (ko) |
EP (2) | EP2489000B1 (ko) |
JP (1) | JP5323266B2 (ko) |
KR (1) | KR101322778B1 (ko) |
CN (2) | CN102576064B (ko) |
TW (1) | TW201124703A (ko) |
WO (1) | WO2011046971A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210008057A (ko) * | 2018-05-30 | 2021-01-20 | 구글 엘엘씨 | 지리적 영역 선택의 최적화 |
Families Citing this family (81)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4743305B2 (ja) * | 2009-01-06 | 2011-08-10 | ソニー株式会社 | 境界定義による機能制御方法、境界定義による機能制御システム、境界定義による機能制御サーバ及びプログラム |
US8756010B2 (en) * | 2009-10-12 | 2014-06-17 | Qualcomm Incorporated | Method and apparatus for identification of points of interest within a predefined area |
US9103917B2 (en) * | 2010-02-12 | 2015-08-11 | Broadcom Corporation | Method and system for determining location within a building based on historical location information |
US8892118B2 (en) | 2010-07-23 | 2014-11-18 | Qualcomm Incorporated | Methods and apparatuses for use in providing position assistance data to mobile stations |
US8818401B2 (en) | 2010-07-30 | 2014-08-26 | Qualcomm Incorporated | Methods and apparatuses for use in determining that a mobile station is at one or more particular indoor regions |
US9148763B2 (en) | 2010-07-30 | 2015-09-29 | Qualcomm Incorporated | Methods and apparatuses for mobile station centric determination of positioning assistance data |
US8954290B2 (en) * | 2010-09-30 | 2015-02-10 | Fitbit, Inc. | Motion-activated display of messages on an activity monitoring device |
US8504062B2 (en) | 2010-11-01 | 2013-08-06 | Wavemarket, Inc. | System and method for aggregating and associating mobile device location data |
US8498811B2 (en) * | 2011-02-09 | 2013-07-30 | SenionLab AB | Method and device for indoor positioning |
US8583400B2 (en) * | 2011-05-13 | 2013-11-12 | Google Inc. | Indoor localization of mobile devices |
JP5802830B2 (ja) | 2011-06-05 | 2015-11-04 | アップル インコーポレイテッド | 複数のアプリケーションから受信した通知を表示するためのシステムおよび方法 |
US20140120950A1 (en) * | 2011-06-29 | 2014-05-01 | Koninklijke Philips N.V. | Location estimation for a mobile device |
US20130041753A1 (en) * | 2011-08-09 | 2013-02-14 | Alcatel-Lucent Usa Inc. | System and Method for Identifying a Path of a Billboard Audience Group and Providing Advertising Content Based on the Path |
US9779112B2 (en) | 2011-09-12 | 2017-10-03 | Here Global B.V. | Method and apparatus for providing list-based exploration of mapping data |
US9002322B2 (en) | 2011-09-29 | 2015-04-07 | Apple Inc. | Authentication with secondary approver |
US20130101163A1 (en) * | 2011-09-30 | 2013-04-25 | Rajarshi Gupta | Method and/or apparatus for location context identifier disambiguation |
GB2495699B (en) * | 2011-10-07 | 2019-03-27 | Samsung Electronics Co Ltd | Multimedia location-based sharing & multi-dimensional visualization |
US20130145293A1 (en) * | 2011-12-01 | 2013-06-06 | Avaya Inc. | Methods, apparatuses, and computer-readable media for providing availability metaphor(s) representing communications availability in an interactive map |
GB201122206D0 (en) * | 2011-12-22 | 2012-02-01 | Vodafone Ip Licensing Ltd | Sampling and identifying user contact |
CN103473679A (zh) * | 2012-06-06 | 2013-12-25 | 中兴通讯股份有限公司 | 导购方法、导购***及移动终端 |
CN103580984B (zh) * | 2012-07-25 | 2015-06-24 | 腾讯科技(深圳)有限公司 | 基于兴趣点的消息聚合方法及*** |
US9047422B2 (en) | 2012-10-12 | 2015-06-02 | Google Inc. | Graph based routing for open areas |
US20140258201A1 (en) * | 2013-03-05 | 2014-09-11 | Qualcomm Incorporated | Generating a geofence via an analysis of a gps fix utilization distribution |
US9341483B2 (en) * | 2013-03-11 | 2016-05-17 | Qualcomm Incorporated | Methods and apparatus for position estimation |
US20150026006A1 (en) * | 2013-07-17 | 2015-01-22 | Google Inc. | Point-of-interest latency prediction using mobile device location history |
KR102087985B1 (ko) | 2013-07-22 | 2020-03-11 | 삼성전자주식회사 | 장소를 추천하는 방법 및 그 장치 |
US11392987B2 (en) | 2013-10-09 | 2022-07-19 | Mobile Technology Corporation | Systems and methods for using spatial and temporal analysis to associate data sources with mobile devices |
CN106062731B (zh) * | 2013-10-09 | 2019-07-02 | 莫柏尔技术有限公司 | 使用空间和时间分析以将数据源和移动设备关联的***和方法 |
US9185675B2 (en) * | 2013-11-18 | 2015-11-10 | Qualcomm Incorporated | Method and apparatus for classifying a mobile device location |
US20150199610A1 (en) * | 2014-01-10 | 2015-07-16 | Qualcomm Incorporated | Determining indoor location using pattern matching of proximal peer-to-peer devices |
CN104811899B (zh) * | 2014-01-23 | 2019-11-26 | 腾讯科技(深圳)有限公司 | 一种用户活动范围确定方法、装置及终端设备 |
US9402155B2 (en) | 2014-03-03 | 2016-07-26 | Location Labs, Inc. | System and method for indicating a state of a geographic area based on mobile device sensor measurements |
US9584980B2 (en) | 2014-05-27 | 2017-02-28 | Qualcomm Incorporated | Methods and apparatus for position estimation |
AU2015267671B2 (en) | 2014-05-30 | 2018-04-19 | Apple Inc. | Transition from use of one device to another |
JP2016006611A (ja) | 2014-06-20 | 2016-01-14 | ソニー株式会社 | 情報処理装置、情報処理方法およびプログラム |
US9541404B2 (en) * | 2014-08-29 | 2017-01-10 | Samsung Electronics Co., Ltd. | System for determining the location of entrances and areas of interest |
US9464908B2 (en) * | 2014-09-10 | 2016-10-11 | Volkswagen Ag | Apparatus, system and method for clustering points of interest in a navigation system |
KR101601500B1 (ko) * | 2014-10-08 | 2016-03-09 | 현대자동차주식회사 | 스마트폰을 이용한 차량 운전 지원 시스템 및 방법 |
CN104394540B (zh) * | 2014-10-30 | 2018-06-01 | 北京百卓网络技术有限公司 | 基于wifi热点的用户感兴趣区域获取方法 |
US10187343B2 (en) | 2014-12-18 | 2019-01-22 | Facebook, Inc. | Location data for defining places and traffic |
RU2611960C2 (ru) * | 2015-03-31 | 2017-03-01 | Общество С Ограниченной Ответственностью "Яндекс" | Способ организации в кластеры точек интереса и сервер для его осуществления |
JP6580864B2 (ja) * | 2015-05-19 | 2019-09-25 | 株式会社パナソニックシステムネットワークス開発研究所 | 歩行者端末装置、歩車間通信システム及び歩行者端末送信方法 |
CN104916240B (zh) * | 2015-06-11 | 2018-03-30 | 辽宁北斗平台科技有限公司 | 基于北斗定位的导游*** |
TWI577968B (zh) * | 2015-06-18 | 2017-04-11 | 金寶電子工業股份有限公司 | 定位導航方法及其電子裝置 |
US10437575B2 (en) | 2015-08-14 | 2019-10-08 | Aeris Communications, Inc. | Aercloud application express and aercloud application express launcher |
US9774994B2 (en) | 2015-08-14 | 2017-09-26 | Aeris Communications, Inc. | System and method for monitoring devices relative to a user defined geographic area |
US10231084B2 (en) | 2015-08-14 | 2019-03-12 | Aeris Communications, Inc. | System and method for monitoring devices relative to a learned geographic area |
US10648823B2 (en) | 2017-06-22 | 2020-05-12 | Aeris Communications, Inc. | Learning common routes and automatic geofencing in fleet management |
CN106920387B (zh) * | 2015-12-24 | 2020-06-09 | 阿里巴巴集团控股有限公司 | 获取交通道路中路线热度的方法及装置 |
US10605920B2 (en) * | 2016-01-13 | 2020-03-31 | Ams Sensors Singapore Pte. Ltd. | Power savings through refresh control for distance sensing devices |
US10118696B1 (en) | 2016-03-31 | 2018-11-06 | Steven M. Hoffberg | Steerable rotating projectile |
DK201670622A1 (en) | 2016-06-12 | 2018-02-12 | Apple Inc | User interfaces for transactions |
US10754045B2 (en) * | 2016-08-09 | 2020-08-25 | Javad Gnss, Inc. | Clustering GNSS data |
CN107070961B (zh) * | 2016-09-30 | 2020-06-23 | 阿里巴巴集团控股有限公司 | 基于地理位置数据的热点区域确定方法及装置 |
CN111343060B (zh) | 2017-05-16 | 2022-02-11 | 苹果公司 | 用于家庭媒体控制的方法和界面 |
US20220279063A1 (en) | 2017-05-16 | 2022-09-01 | Apple Inc. | Methods and interfaces for home media control |
US11627195B2 (en) | 2017-06-22 | 2023-04-11 | Aeris Communications, Inc. | Issuing alerts for IoT devices |
US10735904B2 (en) | 2017-06-22 | 2020-08-04 | Aeris Communications, Inc. | System and method for monitoring location and activity of devices |
US11132636B2 (en) | 2017-06-22 | 2021-09-28 | Aeris Communications, Inc. | System and method for monitoring and sharing location and activity of devices |
CN110019576B (zh) * | 2017-08-08 | 2021-11-02 | 北京亿阳信通科技有限公司 | 导航区域建模方法和装置 |
GB2570853A (en) * | 2017-10-20 | 2019-08-14 | Sensewhere Ltd | Identifying sites visited by a user device |
CN108289279A (zh) * | 2018-01-30 | 2018-07-17 | 浙江省公众信息产业有限公司 | 定位信息的处理方法、装置和计算机可读存储介质 |
WO2019154278A1 (en) | 2018-02-07 | 2019-08-15 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods and apparatuses for exposure of presence reporting area functionality |
CN108416651A (zh) * | 2018-02-09 | 2018-08-17 | 北京天元创新科技有限公司 | 一种通信服务的推荐方法和*** |
US11712637B1 (en) | 2018-03-23 | 2023-08-01 | Steven M. Hoffberg | Steerable disk or ball |
KR102529190B1 (ko) * | 2018-05-25 | 2023-05-04 | 삼성전자주식회사 | 위치를 결정하기 위한 전자 장치 및 그의 동작 방법 |
CN108875013B (zh) * | 2018-06-19 | 2022-05-27 | 百度在线网络技术(北京)有限公司 | 处理地图数据的方法及装置 |
US10499197B1 (en) * | 2018-11-06 | 2019-12-03 | Cisco Technology, Inc. | Benchmarking and measurement of location accuracy using crowdsourced data |
GB2579406A (en) * | 2018-11-30 | 2020-06-24 | Thales Holdings Uk Plc | Remote detector and display |
EP4134811A1 (en) | 2019-05-31 | 2023-02-15 | Apple Inc. | User interfaces for audio media control |
US11010121B2 (en) | 2019-05-31 | 2021-05-18 | Apple Inc. | User interfaces for audio media control |
US11501245B2 (en) | 2019-09-16 | 2022-11-15 | P44, Llc | Systems and methods for imputation of shipment milestones |
US10687174B1 (en) | 2019-09-25 | 2020-06-16 | Mobile Technology, LLC | Systems and methods for using spatial and temporal analysis to associate data sources with mobile devices |
CN111753864B (zh) * | 2019-11-22 | 2024-04-19 | 广东小天才科技有限公司 | 一种适用于楼栋间的定位方法及可穿戴设备 |
US11392291B2 (en) | 2020-09-25 | 2022-07-19 | Apple Inc. | Methods and interfaces for media control with dynamic feedback |
CN112016326A (zh) * | 2020-09-25 | 2020-12-01 | 北京百度网讯科技有限公司 | 一种地图区域词识别方法、装置、电子设备和存储介质 |
US11864154B2 (en) * | 2021-01-28 | 2024-01-02 | Verizon Patent And Licensing Inc. | Crowdsourced building structure detection with synthetic data generation |
US11907605B2 (en) | 2021-05-15 | 2024-02-20 | Apple Inc. | Shared-content session user interfaces |
US20220368548A1 (en) | 2021-05-15 | 2022-11-17 | Apple Inc. | Shared-content session user interfaces |
US11847378B2 (en) | 2021-06-06 | 2023-12-19 | Apple Inc. | User interfaces for audio routing |
CN116842123B (zh) * | 2023-08-28 | 2023-11-28 | 北京高德云信科技有限公司 | 搬迁位置预测方法、地图更新方法、装置及设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080076451A1 (en) | 2001-08-16 | 2008-03-27 | Networks In Motion, Inc. | Point of interest spatial rating search |
US20080242305A1 (en) | 2004-04-06 | 2008-10-02 | Koninklijke Phillips Electronics N.V. | Location Based Handoff for Mobile Devices |
Family Cites Families (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3708042B2 (ja) | 2001-11-22 | 2005-10-19 | 株式会社東芝 | 画像処理方法及びプログラム |
US6975939B2 (en) | 2002-07-29 | 2005-12-13 | The United States Of America As Represented By The Secretary Of The Army | Mapping patterns of movement based on the aggregation of spatial information contained in wireless transmissions |
US7881862B2 (en) * | 2005-03-28 | 2011-02-01 | Sap Ag | Incident command post |
JP2006275838A (ja) * | 2005-03-30 | 2006-10-12 | Clarion Co Ltd | ナビゲーションサーバ、その制御方法及び制御プログラム、ナビゲーション端末及び方法、並びにナビゲーションシステム及びその制御方法 |
JP2007114988A (ja) | 2005-10-20 | 2007-05-10 | Sony Corp | 関心度提供装置、携帯情報端末、サーバ装置および関心度提供方法 |
TWI286202B (en) | 2006-06-23 | 2007-09-01 | Compal Communications Inc | Navigation system |
JP4755612B2 (ja) * | 2007-02-08 | 2011-08-24 | 株式会社ナビタイムジャパン | ナビゲーションシステム、経路探索サーバおよび経路探索方法ならびに端末装置 |
JP2008275838A (ja) | 2007-04-27 | 2008-11-13 | Canon Inc | 画像形成装置 |
US8355870B2 (en) * | 2007-05-03 | 2013-01-15 | Hti Ip, Llc | Methods, systems, and apparatuses for telematics navigation |
US8180379B2 (en) * | 2007-06-28 | 2012-05-15 | Apple Inc. | Synchronizing mobile and vehicle devices |
GB2452734A (en) | 2007-09-12 | 2009-03-18 | Symbian Software Ltd | Portable device determining and storing a location at which the device is stationary |
JP5526473B2 (ja) * | 2007-10-12 | 2014-06-18 | ソニー株式会社 | 表示システム、表示方法、サーバ装置、表示装置 |
JP4858400B2 (ja) | 2007-10-17 | 2012-01-18 | ソニー株式会社 | 情報提供システム、情報提供装置、情報提供方法 |
JP5098563B2 (ja) | 2007-10-17 | 2012-12-12 | トヨタ自動車株式会社 | 物体検出装置 |
US8339399B2 (en) | 2007-10-31 | 2012-12-25 | Microsoft Corporation | Declustering point-of-interest icons |
KR100899532B1 (ko) * | 2007-11-26 | 2009-05-27 | 한국전자통신연구원 | 근거리 무선 통신을 이용한 도난/분실 방지 방법 및도난/분실 방지 시스템 |
JP2009159336A (ja) | 2007-12-26 | 2009-07-16 | Panasonic Corp | 行動範囲把握方法および行動把握装置 |
US8355862B2 (en) * | 2008-01-06 | 2013-01-15 | Apple Inc. | Graphical user interface for presenting location information |
US8213389B2 (en) * | 2008-04-15 | 2012-07-03 | Apple Inc. | Location determination using formula |
WO2009138562A1 (en) * | 2008-05-12 | 2009-11-19 | Nokia Corporation | System and method for preparing and exhibiting a network coverage map |
US8644843B2 (en) * | 2008-05-16 | 2014-02-04 | Apple Inc. | Location determination |
US10163113B2 (en) | 2008-05-27 | 2018-12-25 | Qualcomm Incorporated | Methods and apparatus for generating user profile based on periodic location fixes |
US8369867B2 (en) * | 2008-06-30 | 2013-02-05 | Apple Inc. | Location sharing |
US8359643B2 (en) * | 2008-09-18 | 2013-01-22 | Apple Inc. | Group formation using anonymous broadcast information |
US8213957B2 (en) * | 2009-04-22 | 2012-07-03 | Trueposition, Inc. | Network autonomous wireless location system |
US8756010B2 (en) * | 2009-10-12 | 2014-06-17 | Qualcomm Incorporated | Method and apparatus for identification of points of interest within a predefined area |
US8386620B2 (en) * | 2009-12-15 | 2013-02-26 | Apple Inc. | Ad hoc networking based on content and location |
US8200251B2 (en) * | 2010-01-15 | 2012-06-12 | Apple Inc. | Determining a location of a mobile device using a location database |
US8634860B2 (en) * | 2010-01-15 | 2014-01-21 | Apple Inc. | Location determination using cached location area codes |
US8655371B2 (en) * | 2010-01-15 | 2014-02-18 | Apple Inc. | Location determination using cached location area codes |
US8433334B2 (en) * | 2010-01-15 | 2013-04-30 | Apple Inc. | Managing a location database for network-based positioning system |
US8400292B2 (en) * | 2010-03-01 | 2013-03-19 | Andrew Llc | System and method for location of mobile devices in confined environments |
US8620344B2 (en) * | 2010-04-07 | 2013-12-31 | Apple Inc. | Location-based application program management |
US8369837B2 (en) * | 2010-04-07 | 2013-02-05 | Apple Inc. | Task management based on travel distance |
US8620345B2 (en) * | 2010-04-07 | 2013-12-31 | Apple Inc. | Determining time zone based on location |
US8447326B2 (en) * | 2010-04-07 | 2013-05-21 | Apple Inc. | Selective location determination |
US8504061B2 (en) * | 2010-04-07 | 2013-08-06 | Apple Inc. | Multi-tier geofence detection |
US8489127B2 (en) * | 2010-04-20 | 2013-07-16 | Apple Inc. | Context-based reverse geocoding |
US8396485B2 (en) * | 2010-11-09 | 2013-03-12 | Apple Inc. | Beacon-based geofencing |
-
2010
- 2010-10-08 US US12/901,304 patent/US8756010B2/en active Active
- 2010-10-12 EP EP10779084.2A patent/EP2489000B1/en not_active Not-in-force
- 2010-10-12 EP EP14192916.6A patent/EP2843438B1/en not_active Not-in-force
- 2010-10-12 CN CN201080046794.5A patent/CN102576064B/zh active Active
- 2010-10-12 KR KR1020127012440A patent/KR101322778B1/ko not_active IP Right Cessation
- 2010-10-12 TW TW099134771A patent/TW201124703A/zh unknown
- 2010-10-12 JP JP2012534300A patent/JP5323266B2/ja not_active Expired - Fee Related
- 2010-10-12 CN CN201310345227.5A patent/CN103399294B/zh active Active
- 2010-10-12 WO PCT/US2010/052386 patent/WO2011046971A1/en active Application Filing
-
2014
- 2014-04-09 US US14/249,269 patent/US8977494B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080076451A1 (en) | 2001-08-16 | 2008-03-27 | Networks In Motion, Inc. | Point of interest spatial rating search |
US20080242305A1 (en) | 2004-04-06 | 2008-10-02 | Koninklijke Phillips Electronics N.V. | Location Based Handoff for Mobile Devices |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210008057A (ko) * | 2018-05-30 | 2021-01-20 | 구글 엘엘씨 | 지리적 영역 선택의 최적화 |
US11651038B2 (en) | 2018-05-30 | 2023-05-16 | Google Llc | Optimizing geographic region selection |
KR102538546B1 (ko) * | 2018-05-30 | 2023-06-01 | 구글 엘엘씨 | 지리적 영역 선택의 최적화 |
Also Published As
Publication number | Publication date |
---|---|
TW201124703A (en) | 2011-07-16 |
US8977494B2 (en) | 2015-03-10 |
CN103399294B (zh) | 2016-06-08 |
WO2011046971A1 (en) | 2011-04-21 |
KR20120088746A (ko) | 2012-08-08 |
CN102576064A (zh) | 2012-07-11 |
EP2843438A3 (en) | 2015-07-08 |
US8756010B2 (en) | 2014-06-17 |
EP2843438B1 (en) | 2016-05-11 |
CN102576064B (zh) | 2014-09-03 |
EP2489000A1 (en) | 2012-08-22 |
JP2013509622A (ja) | 2013-03-14 |
EP2843438A2 (en) | 2015-03-04 |
JP5323266B2 (ja) | 2013-10-23 |
CN103399294A (zh) | 2013-11-20 |
US20140222334A1 (en) | 2014-08-07 |
EP2489000B1 (en) | 2015-12-02 |
US20110087431A1 (en) | 2011-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101322778B1 (ko) | 미리 정의된 지역 내의 관심 지점들의 식별을 위한 방법 및 장치 | |
Hilsenbeck et al. | Graph-based data fusion of pedometer and WiFi measurements for mobile indoor positioning | |
CN104781686B (zh) | 路径匹配 | |
US9116000B2 (en) | Map-assisted sensor-based positioning of mobile devices | |
US10415978B2 (en) | Landmark location determination | |
US9310462B2 (en) | Locating a mobile computing device in an indoor environment | |
TWI485421B (zh) | 圖資校正裝置、系統和方法 | |
US8996302B2 (en) | Reduction of the impact of hard limit constraints in state space models | |
US8626443B2 (en) | Method for creating a map relating to location-related data on the probability of future movement of a person | |
US10057725B2 (en) | Sensor-based geolocation of a user device | |
US9462423B1 (en) | Qualitative and quantitative sensor fusion for indoor navigation | |
US10375517B2 (en) | Crowd sourced pathway maps | |
WO2015079260A1 (en) | Location finding apparatus and associated methods | |
Ehrlich et al. | Pedestrian localisation inside buildings based on multi-sensor smartphones | |
Naguib et al. | Scalable and accurate indoor positioning on mobile devices | |
Zhou et al. | Automatic construction of floor plan with smartphone sensors | |
Orban et al. | Indoor Localization and Navigation Using Phone Sensors and a 3D Model of the Building | |
Umetani et al. | State Estimation of Wireless Mobile Client based on Sensor Data Fusion for Localization in Multistory Building |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20160929 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20170929 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |