KR20140055663A - 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치, 방법 및 컴퓨터 판독 가능한 기록 매체 - Google Patents

위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치, 방법 및 컴퓨터 판독 가능한 기록 매체 Download PDF

Info

Publication number
KR20140055663A
KR20140055663A KR1020120122834A KR20120122834A KR20140055663A KR 20140055663 A KR20140055663 A KR 20140055663A KR 1020120122834 A KR1020120122834 A KR 1020120122834A KR 20120122834 A KR20120122834 A KR 20120122834A KR 20140055663 A KR20140055663 A KR 20140055663A
Authority
KR
South Korea
Prior art keywords
information
clustering
grid box
point
grid
Prior art date
Application number
KR1020120122834A
Other languages
English (en)
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 네이버비즈니스플랫폼 주식회사
Priority to KR1020120122834A priority Critical patent/KR20140055663A/ko
Publication of KR20140055663A publication Critical patent/KR20140055663A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/183Tabulation, i.e. one-dimensional positioning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 인접한 거리에 위치한 위치 기반 정보가 중첩하여 디스플레이되는 것을 방지하기 위해 인접한 위치 기반 정보를 클러스터링하여 하나의 마커로 표시하는 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치에 관한 것으로, 특히 지리상의 전체 영역을 설정된 특정 크기의 가상의 그리드 박스들로 구분하고, 상기 구분된 각 그리드 박스에 인덱싱하며, 전자 지도상에 표시할 관심 지점 정보를 상기 구분된 그리드 박스들 중 해당 위치의 그리드 박스에 매핑하여 데이터베이스에 저장하는 전처리 모듈; 상기 그리드 박스들 중 특정 그리드 박스 내에 매핑된 정보가 복수 개 존재할 경우, 해당 복수 개의 정보를 클러스터링 처리하는 클러스터링 처리 모듈; 및 상기 클러스터링 처리 모듈에 의해 클러스터링 처리된 정보를 전자 지도상에서 해당하는 그리드 박스의 영역 내에 하나의 클러스터링된 마커로 표시하는 마커 표시부;를 포함한다.

Description

위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치, 방법 및 컴퓨터 판독 가능한 기록 매체{APPARATUS, METHOD AND COMPUTER READABLE RECORDING MEDIUM OF CLUSTERING DATA FOR DISPLAYING THE INFORMATION BASED ON A LACATION}
본 발명은 위치 기반 정보의 디스플레이를 위한 장치에 관한 것으로, 보다 상세하게는 인접한 거리에 위치한 위치 기반 정보가 중첩하여 디스플레이되는 것을 방지하기 위해 인접한 위치 기반 정보를 클러스터링하여 하나의 마커로 표시하는 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치, 방법 및 컴퓨터 판독 가능한 기록 매체에 관한 것이다.
일반적으로 인터넷은 전세계 어디서나, 누구나 접속하고자 하는 상대편 컴퓨터에 TCP/IP 라는 공통의 프로토콜을 적용하여 자유롭게 연결하여 사용할 수 있도록 구성된 개방형 네트워크로서, 기본적인 문자정보의 전달은 물론 압축기술의 발전과 더불어 멀티미디어 정보의 전달에 이용되는 등 전자우편, 파일전송, WWW(World Wide Web) 등의 다양한 서비스를 이용할 수 있다.
이와 같은 인터넷은 국내를 비롯하여 세계적으로 사용이 급격하게 증가되면서 기존 산업의 전 부분에 걸쳐 효율성과 생산성 제고를 위한 전략적인 도구로서 중요성이 급속히 증대되고 있으며, 인터넷을 통한 새로운 비즈니스 기회가 지속적으로 창출됨은 물론, 그 영역도 확장되고 있는 추세로서 인터넷을 이용한 사업자들도 점점 더 증가되고 있다.
오늘날 인터넷의 광범위한 보급은 이제 유선을 넘어 무선 이동통신 기술로의 급발전을 가져오게 되었고, 실생활에 있어서도 휴대폰, PDA, 핸드헬드(Hand-Held) 컴퓨터 등의 휴대용 단말을 통한 인터넷상에서의 정보 검색이 시간과 장소에 구애받지 않고 가능하게 되었다.
한편, 전자 지도상에서 특정 지점과 관련된 정보를 나타내는 것을 관심 지점(Point of interest) 정보라 하며, 일반적으로 'POI' 정보라 칭한다. 예컨대, 도 1a에는 전자 지도상에서의 특정 지점에 해당 지점과 관련된 정보가 포함되어 있음을 나타내는 마커(marker)(101, 102, 103, 104, 105, 106)가 특정한 모양으로 표시된다. 따라서, 사용자가 어느 하나의 마커(101, 102, 103, 104, 105, 106)를 선택하거나, 마우스를 이용하여 커서를 해당 마커(101, 102, 103, 104, 105, 106) 위에 위치시키면 해당 지점과 관련된 정보가 추가로 표시된다.
그러나, 도 1a 및 도 2a에서와 같이 마커(103, 104, 105)가 밀집되어 중첩될 경우, 가독성이 떨어지며, 마커를 조작하기가 어려워지는 문제가 있다. 즉, 여러 마커들이 중첩되어 표시되기 때문에 특정 마커를 선택하는 것이 쉽지 않으며, 또한 특정 마커에 마우스 오버(mouse over)를 하는 것도 어렵다는 문제점이 있다. 또한, 다량의 마커를 표현함으로 인해 클라이언트 측의 성능이 떨어지고 API를 통한 데이터 전송 시 네트워킹 오버 헤드가 증가하는 문제점이 있다.
따라서, 도 1b 및 도 2b에서와 같이 밀집된 복수의 마커(103, 104, 105, 201)들을 클러스터링(clustering)하여 하나의 마커로 표시할 수 있으며, 이때, 클러스터링된 마커(110, 210)는 다른 모양 또는 색상으로 표시함으로써 클러스터링된 마커임을 나타낼 수 있다. 또한, 클러스터링된 마커의 수를 숫자로 표시함으로써 보다 구체적인 클러스터링 정보를 표시한다.
이와 같은 위치기반 콘텐츠를 디스플레이하는 방법으로서, 한국등록특허공보 10-0825729 "위치기반 컨텐츠 제공 시스템 및 그 방법(한국전자통신연구원)"(문헌 1)에는 하나 이상의 위치 기반 콘텐츠를 클러스터 형태로 가공하여 디스플레이하는 방법이 개시된다. 또한, 한국공개특허공보 10-2011-0060535 "POI 정보 표시 장치 및 이를 이용한 POI 정보 표시 방법(현대 모비스 주식회사)"(문헌 2)에는 한 지점에 여러 개의 POI가 존재할 경우 Prev/Next 버튼을 통해 한 지점에 존재하는 여러 개의 POI 정보를 모두 볼 수 있는 POI 정보 표시 방법이 개시된다.
도 3은 동 단위로 표시되는 전자 지도상에서 해당 위치의 부동산 정보를 클러스터링하여 나타내는 도면이다. 도 3을 참조하면, 도 1 및 도 2에서와 마찬가지로 마커(301)가 밀집된 지역에서는 복수의 마커들을 클러스터링하여 하나의 클러스터링된 마커(302)로 표시한다. 이때, 클러스터링된 마커(302)는 다른 마커들과는 구별되도록 복수의 마커가 포함되어 있음을 나타내기 위하여 다른 형태의 이미지(예컨대, 플러스(+) 표시가 추가된 마커)로 표시할 수 있다.
한편, 이러한 부동산과 같은 정보를 특정 위치에 표시하여 보여줄 경우, 전 처리(pre-processing) 과정을 통해 예상 가능한 모든 조합에 대해 미리 계산을 수행한 후 클러스터링 처리를 하여야 한다. 예컨대, 부동산 매물 종류 및 거래 종류가 7가지(예컨대, 주택, 아파트, 오피스텔, 상가, 매매, 전세, 월세 등)이고, 매물의 수가 30,000개일 경우, 전 처리 과정에서의 예상 가능한 조합은 (27-1)*30,000 =3,810,000 이다. 이와 같이, 예상 가능한 조합의 수가 커질 경우 클러스터링을 위해 전 처리해야 할 데이터의 수는 기하급수적으로 증가한다(예컨대, (2n-1)*데이터 수).
이때, 특정 검색 조건을 설정하여, 검색 결과를 전자 지도상에서 표시할 경우, 검색 결과에 대응하는 마커들 중 인접한 마커들 간에 동적인 클러스터링을 수행하여야 하며, 상술한 바와 같이 처리할 데이터 수가 많아 계산을 위한 상당한 부하가 발생한다. 아울러, 미리 조합이 불가능한 경우가 발생할 수도 있으며, 조합의 경우의 수가 너무 많아 제대로 검색 서비스를 제공할 수 없는 문제도 있다.
따라서, 특정 위치에 대한 관심 지점 정보를 이미지화하여 디스플레이할 때, 계산의 부하를 줄이면서 효과적으로 클러스터링하여 디스플레이할 수 있는 방법의 필요성이 요구되고 있는 실정이다. 아울러, 검색 조건이 많은 경우, 각 검색 조건 수행에 따라 검색 결과의 정보를 효과적으로 클러스터링할 수 있는 방법의 필요성이 요구되고 있다.
[문헌 1] 한국등록특허공보 10-0825729 위치기반 컨텐츠 제공 시스템 및 그 방법(한국전자통신연구원) 2008.4.22 [문헌 2] 한국공개특허공보 10-2011-0060535 POI 정보 표시 장치 및 이를 이용한 POI 정보 표시 방법(현대 모비스 주식회사) 2011.6.8
본 발명의 목적은 위치기반 데이터 할당을 최소화하여 전 처리 연산을 최소화함으로써 계산의 부하를 줄이면서 관심 지점 정보의 마커들을 클러스터링하여 디스플레이하는 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치, 방법 및 컴퓨터 판독 가능한 기록 매체를 제공함에 있다.
또한, 본 발명의 다른 목적은 전자 지도의 줌 레벨에 따라 미리 설정된 그리드 박스 단위로 관심 지점 정보의 마커들을 클러스터링함으로써 다양한 검색 조건에 따른 동적 클러스터링이 가능한 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치, 방법 및 컴퓨터 판독 가능한 기록 매체를 제공함에 있다.
상기한 바와 같은 본 발명의 목적을 달성하고, 후술하는 본 발명의 특유의 효과를 달성하기 위한, 본 발명의 특징적인 구성은 하기와 같다.
본 발명의 일 측면에 따르면, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치는, 지리상의 전체 영역을 설정된 특정 크기의 가상의 그리드 박스들로 구분하고, 상기 구분된 각 그리드 박스에 인덱싱하며, 전자 지도상에 표시할 관심 지점 정보를 상기 구분된 그리드 박스들 중 해당 위치의 그리드 박스에 매핑하여 데이터베이스에 저장하는 전처리 모듈; 상기 그리드 박스들 중 특정 그리드 박스 내에 매핑된 정보가 복수 개 존재할 경우, 해당 복수 개의 정보를 클러스터링 처리하는 클러스터링 처리 모듈; 및 상기 클러스터링 처리 모듈에 의해 클러스터링 처리된 정보를 전자 지도상에서 해당하는 그리드 박스의 영역 내에 하나의 클러스터링된 마커로 표시하는 마커 표시부;를 포함한다.
바람직하게는, 상기 그리드 박스의 크기는, 상기 전자 지도가 디스플레이되는 줌 레벨별로 상이하게 설정된다.
바람직하게는, 상기 장치는, 상기 관심 지점 정보 중에서 특정 조건에 맞는 정보를 필터링하기 위한 검색 조건을 수신하는 검색 조건 수신부를 더 포함하며, 상기 클러스터링 처리 모듈은, 상기 검색 조건 수신부에서 수신된 검색 조건에 따라 상기 전처리 모듈에 의해 매핑된 관심 지점 정보들을 필터링한다.
바람직하게는, 상기 장치는, 상기 전자 지도의 디스플레이되는 줌 레벨 정보를 수신하는 레벨 정보 수신부를 더 포함하며, 상기 클러스터링 처리 모듈은, 상기 레벨 정보 수신부를 통해 수신된 줌 레벨 정보에 따라 상기 데이터베이스로부터 해당 줌 레벨에 매핑된 관심 지점 정보들을 독출하여 클러스터링 처리한다.
바람직하게는, 상기 클러스터링 처리 모듈은, 상기 데이터베이스에 저장된 관심 지점 정보들에 대해 현재 줌 레벨 정보에 따른 그리드 박스의 인덱싱 정보를 확인하는 그리드 박스 확인부; 및 각 그리드 박스 내의 관심 지점 정보들이 복수 개일 경우 해당 관심 지점 정보들을 하나로 클러스터링 처리하는 클러스터링 판단부;를 포함한다.
바람직하게는, 상기 클러스터링 판단부는, 특정 그리드 박스 내의 관심 지점 정보가 존재하지 않거나 하나의 관심 지점 정보만 존재할 경우 클러스터링을 수행하지 않는다.
바람직하게는, 상기 클러스터링 처리 모듈은, 상기 클러스터링 판단부의 판단 결과 클러스터링 처리할 그리드 박스의 중심점의 좌표를 산출하는 중심 좌표 연산부를 더 포함하며, 상기 마커 표시부는, 상기 클러스터링된 마커를 상기 중심 좌표 연산부에 의해 산출된 그리드 박스의 중심점에 표시한다.
바람직하게는, 상기 클러스터링 처리 모듈은, 상기 클러스터링 처리 결과, 클러스터링된 마크와 인접한 그리드 박스 내의 클러스터링되지 않은 마크가 근접하여 마크들의 중첩이 발생할 경우, 해당 그리드 박스의 크기를 미리 설정된 픽셀 크기만큼 증가시킨다.
바람직하게는, 상기 전처리 모듈은, 적도 및 자오선을 기준으로 동일한 크기의 사각형으로 분할하여 그리드 박스를 설정한다.
바람직하게는, 상기 전처리 모듈은, 적도 및 자오선을 기준으로 하여 기준 위치의 그리드 박스를 '0_0'으로 인덱싱하고, 가로 방향 또는 세로 방향으로 각각 번호를 증가시켜 그리드 박스를 인덱싱한다.
본 발명의 다른 측면에 따르면, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 방법은, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 방법으로서, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치에 의해 수행되는 각 단계가, 지리상의 전체 영역을 설정된 특정 크기의 가상의 그리드 박스들로 구분하는 단계; 상기 구분된 각 그리드 박스에 인덱싱하는 단계; 전자 지도상에 표시할 관심 지점 정보를 상기 구분된 그리드 박스들 중 해당 위치의 그리드 박스에 매핑하여 데이터베이스에 저장하는 단계; 상기 그리드 박스들 중 특정 그리드 박스 내에 매핑된 정보가 복수 개 존재할 경우, 해당 복수 개의 정보를 클러스터링 처리하는 단계; 및 상기 클러스터링 처리 모듈에 의해 클러스터링 처리된 정보를 전자 지도상에서 해당하는 그리드 박스의 영역 내에 하나의 클러스터링된 마커로 표시하는 단계;를 포함한다.
한편, 상기 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 방법을 제공받기 위한 정보는 서버 컴퓨터로 읽을 수 있는 기록 매체에 저장될 수 있다. 이러한 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있도록 프로그램 및 데이터가 저장되는 모든 종류의 기록매체를 포함한다. 그 예로는, 롬(Read Only Memory), 램(Random Access Memory), CD(Compact Disk), DVD(Digital Video Disk)-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등이 있으며, 또한 케리어 웨이브(예를 들면, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함된다. 또한, 이러한 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
상술한 바와 같이, 본 발명에 따르면 전자 지도의 줌 레벨에 따라 미리 설정된 그리드 박스 단위로 관심 지점 정보의 마커들을 클러스터링함으써 전 처리 연산을 위한 계산의 부하를 줄일 수 있는 장점이 있다.
또한, 본 발명에 따르면, 위치기반 데이터 할당을 최소화하여 전 처리 연산을 최소화함으로써 다양한 검색 조건에 따른 동적 클러스터링이 가능한 장점이 있다.
도 1a는 전자 지도상에서 관심 정보를 나타내는 마커들의 중첩 상태를 나타내는 도면이다.
도 1b는 도 1a에서 중첩된 마커들을 클러스터링하여 하나의 마커로 표시한 도면을 나타낸다.
도 2a는 전자 지도상에서 관심 정보를 나타내는 마커들의 중첩 상태를 나타내는 도면이다.
도 2b는 도 2a에서 중첩된 마커들을 클러스터링하여 중첩된 마커의 개수로 표시한 도면을 나타낸다.
도 3은 전자 지도상에서 해당 위치의 부동산 정보를 클러스터링하여 나타내는 도면이다.
도 4는 본 발명의 실시예에 따른 그리드 박스의 개념을 나타내는 도면이다.
도 5는 본 발명의 실시예에 따른 클러스터링의 개념을 나타내는 도면이다.
도 6은 본 발명의 실시예에 따른 그리드 박스의 인덱싱 및 중심점 위치 산출의 개념을 나타내는 도면이다.
도 7은 본 발명의 실시예에 따른 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치를 나타내는 블록도이다.
도 8은 본 발명의 실시예에 따른 클러스터링 처리 모듈의 세부 구조를 나타내는 블록도이다.
도 9는 본 발명의 실시예에 따른 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 절차를 나타내는 흐름도이다.
도 10은 본 발명의 실시예에 따라 중첩이 발생한 마커에 버퍼를 적용한 예를 나타내는 도면이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는 적절하게 설명된다면 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
본 발명은 전자 지도상에서 특정한 이미지의 마커(marker)를 사용하여 관심 지점 정보를 표시할 경우, 복수의 마커들이 중첩되어 가독성이 떨어지고, 마커의 핸들링이 어려워지는 문제점을 해결하기 위해 근접한 마커들을 클러스터링하여 디스플레이하기 위한 데이터 클러스터링 장치 및 방법을 개시한다.
특히, 본 발명에서는 지리상의 영역을 그리드 박스(grid box) 단위로 구분하고, 구분된 각 그리드 박스 내에 속한 복수의 마커들을 클러스터링(clustering)하여 하나의 클러스터링된 마커로 표시하게 된다. 이때, 상기 클러스터링된 마커는 클러스터링되지 않은 마커와 구별 가능하도록 상이한 형태 또는 색상 또는 이미지로 설정할 수 있다.
또한, 본 발명의 실시예에 따라 상기 클러스터링된 마커는 해당 그리드 박스 내에서 중심점(center point)에 위치시키는 것이 바람직하다. 아울러, 클러스터링 후 클러스터링된 마커와 인접한 그리드 박스의 클러스터링되지 않은 마커 간의 중첩이 발생할 경우, 본 발명의 실시예에 따라 버퍼(buffer)를 적용함으로써 중첩 문제를 해결한다.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 바람직한 실시예들에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.
먼저, 도 4 내지 도 6을 참조하여 본 발명에 따른 클러스터링의 개념을 설명하며, 다음으로 도 7 내지 도 9를 참조하여 본 발명의 실시예에 따른 클러스터링 장치 및 방법을 상세히 설명한다.
클러스터링 개념
도 4는 본 발명의 실시예에 따른 그리드 박스의 개념을 나타내는 도면이다. 도 4를 참조하면, 본 발명에서는 근접한 복수의 마커들을 하나의 마커로 클러스터링하기 위해 일정한 크기의 그리드 박스를 설정한다. 따라서, 본 발명에 따라 설정된 그리드 박스 내에 복수의 마커들이 포함될 경우, 상기 복수의 마커들을 하나의 마커로 클러스터링한다. 이때, 클러스터링된 마커는 클러스터링되지 않은 마커와 구별되도록 표시될 수 있다.
한편, 상기 그리드 박스의 설정 방법은 다양하게 설정할 수 있다. 예컨대, 본 발명의 실시예에 따라 적도 및 자오선을 기준으로 동일한 크기의 사각형으로 분할함으로써 그리드 박스를 설정할 수 있다. 그런 다음, 각 그리드 박스를 식별할 수 있도록 인덱싱(indexing)하는 것이 바람직하다. 예컨대, 적도 및 자오선을 기준으로 하여 '0_0'으로 인덱싱하고, 가로 방향 또는 세로 방향으로 각각 번호를 증가시켜 인덱싱할 수 있다.
또한, 본 발명의 실시예에 따라 상기 그리드 박스의 크기는 전자 지도상에서의 줌 레벨(zoom level)(즉, 축척)에 따라 상이하게 설정할 수 있으며, 줌 레벨이 달라짐에 따라 그리드 박스의 크기가 달라지도록 설정함으로써 가시성을 높일 수 있다. 예컨대, 줌 레벨을 증가시킬 경우, 전자 지도상의 축척은 커지며, 보다 좁은 지역을 세부적으로 볼 수 있다. 이때, 그리드 박스의 크기는 실제 지도상의 거리로 더 작게 설정되나 줌 레벨이 증가되어 축척이 커졌으므로 사용자가 볼 때에는 클러스터링된 마커의 크기가 동일 또는 유사한 크기로 보여질 수 있다. 즉, 클러스터링된 마커의 크기는 디스플레이 화면상에서 축척에 관계없이 동일한 픽셀로 구현될 수 있다.
예컨대, 도 4를 참조하면, 하나의 그리드 박스(401) 내에 하나의 마커(403)만 존재할 경우에는 클러스터링이 처리되지 않을 수 있으며, 하나의 그리드 박스(401) 내에 복수의 마커들이 존재할 경우 하나의 마커(402)로 클러스터링될 수 있다. 상기 도 4에서 클러스터링된 마커(402)는 '+'의 표시로 클러스터링되지 않은 마커(403)와 구별되어 표시된다.
한편, 상술한 바와 같이 상기 마커(402, 403)는 일정한 크기(예컨대, 30*30 pixel)의 이미지로 설정될 수 있으며, 줌 레벨이 달라지더라도 화면상에서는 동일한 크기로 표시되도록 구현하는 것이 바람직하나 본 발명이 이에 한정되지는 않는다.
도 5는 본 발명의 실시예에 따른 클러스터링의 개념을 나타내는 도면이다. 도 5를 참조하면, 상술한 바와 같이 511번 그리드 박스 내에는 하나의 마커(501)만이 존재하기 때문에 클러스터링되지 않는다. 그러나, 512번 그리드 박스 내에는 복수의 마커들(502)이 존재하기 때문에 본 발명에 따라 클러스터링되어 도 5의 우측에서와 같이 하나의 클러스터링된 마크(522)로 표시된다. 따라서, 하나의 그리드 박스(512) 내에 존재하는 복수의 마커들(502)은 하나의 마커(522)로 클러스터링되어 모두 동일한 중심점을 관심 지점으로 갖는다.
한편, 상기 그리드 박스의 크기는 줌 레벨에 따라 실제 지리상에서 상이한 크기로 설정될 수 있다. 예컨대, 줌 레벨이 '3'일 경우 그리드 박스의 폭은 50m, 높이는 45m로 설정될 수 있으며, 줌 레벨이 '4'일 경우 그리드 박스의 폭은 150m, 높이는 135m로 설정될 수 있으며, 줌 레벨이 '5'일 경우 그리드 박스의 폭은 450m, 높이는 405m로 설정될 수 있다.
이와 같이, 본 발명에서는 중첩된 복수의 마크들을 그리드 박스 단위로 클러스터링함으로써 전 처리 연산을 줄이고, 검색 조건에 따른 동적 클러스터링이 가능하게 된다.
이하, 도 6을 참조하여 상술한 그리드 박스를 인덱싱하고, 클러스터링된 마커를 위치시키기 위한 그리드 박스의 중심점 위치를 산출하는 방법을 설명한다.
도 6은 본 발명의 실시예에 따른 그리드 박스의 인덱싱 및 중심점 위치 산출의 개념을 나타내는 도면이다. 도 6을 참조하면, 그리드 박스의 인덱싱을 시작하는 지점(예컨대, 적도와 자오선이 만나는 지점)을 기준으로 마커와의 거리를 산출함으로써 그리드 박스의 번호를 산출할 수 있다.
즉, 그리드 박스의 인덱싱 시작점으로부터 가로축으로의 거리 및 세로축으로의 거리를 각각 그리드 박스의 폭 및 높이로 나누게 되면 해당 마커가 위치한 그리드 박스의 가로 및 세로 번호가 산출될 수 있다. 따라서, 특정 마커(602)(즉, 마커 'P')가 위치한 그리드 박스(601)의 가로축상의 인덱싱 번호인 'indexX'와 세로축상의 인덱싱 번호인 'indexY'는 하기 <수학식 1> 및 <수학식 2>와 같이 산출될 수 있다.
Figure pat00001
상기 <수학식 1>에서 "pxDistance(P).x"는 도 6에 도시된 바와 같이 기준점과 마커 간의 가로축상의 거리를 의미하며, "boxWidth"는 그리드 박스의 폭을 의미한다.
Figure pat00002
상기 <수학식 2>에서 "pxDistance(P).y"는 도 6에 도시된 바와 같이 기준점과 마커 간의 세로축상의 거리를 의미하며, "boxHeight"는 그리드 박스의 높이를 의미한다.
상기 <수학식 1> 및 <수학식 2>에 의해 그리드 박스의 인덱싱 번호가 하기 <수학식 3>과 같이 표현될 수 있다.
Figure pat00003
한편, 상기 pxDistance(P).x 및 pxDistance(P).y는 줌 레벨에 따라 값이 정해질 수 있다.
이와 같이, 그리드 박스의 인덱싱 번호가 산출되면, 각 그리드 박스 내에서 클러스터링된 마커가 위치할 중심점에 대한 위치를 산출할 수 있다. 즉, 상기 마커 'P'(602)가 위치한 그리드 박스(601)의 중심점(603)의 x축 위치(pxCenterX) 및 y축 위치(pxCenterY)는 하기 <수학식 4> 및 <수학식 5>와 같이 산출될 수 있다.
Figure pat00004
Figure pat00005
이에 따라, 상기 중심점의 좌표상의 위치는 하기 <수학식 6>과 같이 산출될 수 있다.
Figure pat00006
데이터 클러스터링 장치
도 7은 본 발명의 실시예에 따른 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치를 나타내는 블록도이다. 도 7을 참조하면, 본 발명의 실시예에 따른 데이터 클러스터링 장치는 전처리 모듈(pre-processing module)(710), 검색 조건 수신부(720), 레벨 정보 수신부(730), 클러스터링 처리 모듈(740), 마커 표시부(750), 그리드 박스 정보 데이터베이스(760), 전자 지도 정보 데이터베이스(770) 등을 포함하여 구성될 수 있다. 또한, 상기 전처리 모듈(710)은 그리드 박스 인덱스 설정부(711) 및 그리드 매핑부(712)를 포함할 수 있다.
전처리 모듈(710)은 전자 지도상에 표시할 관심 지점 정보에 관련된 데이터를 수집하여 전처리하는 기능을 수행한다. 즉, 본 발명의 실시예에 따라 지리상의 전체 영역을 그리드 박스로 구분하고, 각 관심 지점 정보를 구분된 특정 그리드 박스에 매핑한다.
보다 구체적으로 설명하면, 전처리 모듈(710)의 그리드 박스 인덱스 생성부(711)는 지리상의 전체 영역을 상술한 바와 같이 줌 레벨에 따라 그리드 박스 단위로 구분한다. 그런 다음, 상기 구분된 각 그리드 박스에 상술한 방법에서와 같이 인덱싱을 한 후, 그리드 박스 정보 데이터베이스(760)에 저장한다.
또한, 그리드 매핑부(712)에서는 수집된 각 관심 지점 정보(예컨대, 부동산 매물 정보)를 상기 구분된 그리드 박스 중 해당 위치의 그리드 박스에 매핑한다. 예컨대, P 지점에 대한 아파트 매물에 대한 정보가 입력되면, P 지점의 위치에 해당하는 그리드 박스의 인덱싱한 번호에 상기 P 지점에 대한 아파트 매물 정보를 매핑하여 그리드 박스 정보 데이터베이스(760)에 저장한다. 이때, 상기 매핑은 줌 레벨별로 구분하여 수행할 수 있다. 예컨대, 상기 P 지점에 대한 아파트 매물 정보를 줌 레벨 1에 대한 해당 그리드 박스에 매핑하고, 줌 레벨 2에 대한 해당 그리드 박스에 매핑하며, 줌 레벨 N에 대한 해당 그리드 박스까지 매핑할 수 있다.
따라서, 상기 그리드 박스 정보 데이터베이스(760)에 저장되는 매핑 결과 정보는 예컨대 하기 <표 1>과 같이 구성될 수 있다.
번호 관심 지점 레벨 1 레벨 2 ...
그리드 박스
번호
관심 지점
위도
관심 지점
경도
그리드 박스 번호




1 Rolypoly 1231_31212 36.7654 127.56545 65451_115874
2 Beefs 1231_31211 37.1235 126.12354 65451_115873
3 Halo 1131_11323 36.66884 127.99554 65451_115874
4 Prince 1355_76554 36.12584 126.99449 65451_115874
5 Istanbull pubs 1231_31212 36.7511 127.56441 65451_115874
한편, <표 1>을 참조하면, 레벨 1에서는 1번 관심 지점 및 6번 관심 지점이 동일한 그리드 박스 내에 포함되므로, 상기 두 정보들은 후술하는 방법에 따라 클러스터링되어 하나의 마커로 표시될 수 있다. 또한, 레벨 2에서는 1번 관심 지점, 3번 관심 지점, 4번 관심 지점 및 5번 관심 지점 등 4개의 관심 지점들이 동일한 그리드 박스 내에 포함되므로, 상기 4 개의 정보들은 클러스터링되어 하나의 마커로 표시될 수 있다.
이와 같이, 전처리 과정이 완료되면, 클러스터링 처리 모듈(740)에서는 본 발명의 실시예에 따라 상기 그리드 박스 내에 매핑된 정보가 복수개 존재할 경우, 해당 정보를 클러스터링 처리하게 된다.
보다 구체적으로 설명하면, 클러스터링 처리 모듈(740)에서는 레벨 정보 수신부(730)를 통해 수신된 줌 레벨 정보에 따라 그리드 박스 정보 데이터베이스(760)로부터 해당 줌 레벨에 매핑된 관심 지점 정보들을 독출한다. 상기 독출된 관심 지점 정보들을 각 그리드 박스별로 검사하여 동일한 그리드 박스 내에 복수의 관심 지점 정보들이 포함되어 있을 경우 이를 클러스터링하여 하나의 클러스터링된 정보로 그룹핑한다.
한편, 검색 조건 수신부(720)를 통해 검색 조건이 수신되면, 상기 클러스터링 처리 모듈(740)에서는 상기 그리드 박스 정보 데이터베이스(760)로부터 독출된 해당 줌 레벨에 매핑된 관심 지점 정보들을 상기 수신된 검색 조건에 따라 필터링한다. 그런 다음, 상기 필터링된 관심 지점 정보들을 각 그리드 박스별로 검사하여 동일한 그리드 박스 내에 복수의 관심 지점 정보들이 포함되어 있을 경우 이를 클러스터링하여 하나의 클러스터링된 정보로 그룹핑한다.
이와 같이, 클러스터링 처리 모듈(740)에 의해 각 그리드 박스별로 클러스터링 처리가 완료되면, 마커 표시부(750)에서는 전자 지도 정보 데이터베이스(770)로부터 제공된 전자 지도상에서 해당 위치에 상기 클러스터링된 정보를 클러스터링된 마커로 표시한다. 이때, 상술한 바와 같이 상기 클러스터링된 마커는 해당 그리드 박스의 중심점에 표시할 수 있다.
이하, 도 8을 참조하여 상기 클러스터링이 처리 모듈(740)의 세부 구조를 보다 상세히 설명한다.
도 8은 본 발명의 실시예에 따른 클러스터링 처리 모듈의 세부 구조를 나타내는 블록도이다. 도 8을 참조하면, 본 발명의 실시예에 따른 클러스터링 처리 모듈(740)은 검색 수행부(810), 그리드 박스 확인부(820), 클러스터링 판단부(830), 중심 좌표 연산부(840), 중첩 버퍼링 처리부(850) 등을 포함하여 구성될 수 있다.
먼저, 검색 수행부(810)는 검색 조건 수신부(720)를 통해 수신된 검색 조건에 따라 관심 지점 정보들 중에서 해당 검색 조건에 맞는 정보를 검색하여 필터링한다. 예컨대, 관심 지점 정보가 부동산 정보이고, 수신된 검색 조건이 아파트/매매일 경우, 해당 지역의 전체 관심 지점 정보들(즉, 전체 부동산 매물) 중에서 아파트/매매인 정보만을 검색한다. 그런 다음, 상기 검색된 결과에 대한 클러스터링 처리를 수행한다. 이렇게 함으로써 본 발명에 따른 동적 클러스터링이 가능하게 된다.
다음으로, 그리드 박스 확인부(820)에서는 상기 검색 수행부(810)를 통해 검색된 결과 또는 검색 조건이 없을 경우 전체 관심 지점 정보들에 대해 현재 줌 레벨 정보에 따른 그리드 박스의 인덱싱 정보를 확인하다.
그런 다음, 클러스터링 판단부(830)에서는 각 그리드 박스 내의 관심 지점 정보들이 복수개일 경우 해당 관심 지점 정보들을 하나로 클러스터링한다. 따라서, 각 그리드 박스에 대해 관심 지점 정보가 하나도 없거나, 클러스터링되지 않은 하나의 관심 지점 정보가 존재하거나, 클러스터링된 관심 지점 정보가 존재한다.
이와 같이, 클러스터링이 완료되면, 중심 좌표 연산부(840)에서는 상기 클러스터링된 관심 지점 정보를 표시하기 위한 마커의 표시 위치로서 그리드 박스의 중심점의 좌표를 산출한다. 상기 중심점의 좌표 산출 방법은 상술한 <수학식 4> 내지 <수학식 6>을 이용할 수 있다.
상기 중심 좌표 연산부(840)에서 중심점 좌표 산출이 완료되면, 산출된 중심점 좌표에 클러스터링된 마커를 표시한다.
이때, 선택적으로 중첩 버퍼링 처리부(850)에서는 중첩된 마커들을 버퍼링 처리함으로써 마커들이 중첩되지 않도록 보정한다. 즉, 도 10을 참조하면, 상기와 같이 특정 그리드 박스 내에서 클러스터링이 되어 중심점에 표시된 클러스터링된 마크와 인접한 그리드 박스 내의 클러스터링되지 않은 마크가 근접하여 위치됨으로써 도시된 바와 같이 마크들의 중첩이 발생할 수 있다. 이때, 도 10의 그리드 박스의 크기를 미리 설정된 픽셀 크기만큼 증가시킴으로써 중첩 문제를 해결할 수 있다. 예컨대, 마크의 이미지 크기가 30*30 픽셀일 경우, 하기 <수학식 7> 및 <수학식 8>과 같이 가로 및 세로 방향으로 30픽셀 만큼씩 그리드 박스의 크기를 증가시킴으로써 중첩 문제를 해결할 수 있다.
Figure pat00007
Figure pat00008
상기 <수학식 7> 및 <수학식 8>에서 "width" 및 "height"는 각각 그리드 박스의 폭 및 높이를 의미한다.
한편, 상기 데이터 클러스터링 장치(700) 및 클러스터링 처리 모듈(740)의 각각의 구성요소들은 기능 및 논리적으로 분리될 수 있음을 나타나기 위해 별도로 도면에 표시한 것이며, 물리적으로 반드시 별도의 구성요소이거나 별도의 코드로 구현되는 것을 의미하는 것은 아니다.
그리고 본 명세서에서 각 모듈은, 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적, 구조적 결합을 의미할 수 있다. 예컨대, 상기 각 모듈은 소정의 코드와 상기 소정의 코드가 수행되기 위한 하드웨어 리소스의 논리적인 단위를 의미할 수 있으며, 반드시 물리적으로 연결된 코드를 의미하거나, 한 종류의 하드웨어를 의미하는 것은 아님은 본 발명의 기술분야의 평균적 전문가에게는 용이하게 추론될 수 있다.
또한, 본 명세서에서 데이터베이스라 함은, 각각의 데이터베이스에 대응되는 정보를 저장하는 소프트웨어 및 하드웨어의 기능적 구조적 결합을 의미할 수 있다. 데이터베이스는 적어도 하나의 테이블로 구현될 수도 있다. 또한, 링크드 리스트(linked-list), 트리(Tree), 관계형 데이터베이스 형태 등 다양한 방식으로 구현될 수 있으며, 상기 데이터베이스에 대응되는 정보를 저장할 수 있는 모든 데이터 저장매체 및 데이터 구조를 포함한다.
데이터 클러스터링 방법
도 9는 본 발명의 실시예에 따른 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 절차를 나타내는 흐름도이다. 도 9를 참조하면, 먼저 지도상의 전체 영역을 줌 레벨별로 크기가 상이한 그리드 박스로 구분하고, 각 그리드 박스에 인덱스를 부여(S901)한다. 그런 다음, 각 대상 정보(즉, 관심 지점 정보)를 상술한 <표 1>에서와 같이 각 레벨별 해당 그리드 박스에 매핑하여 데이터베이스에 저장(S902)한다.
한편, 특정 검색 조건이 입력될 경우 상기 저장된 대상 정보들에 대해 검색 조건에 따른 검색을 수행(S903)한다. 그런 다음, 각 검색 결과를 현재 레벨에 따른 해당 그리드 박스에 매핑(S904)하고, 각 그리드 박스에 대한 클러스터링 여부를 판단(S905)한다.
상기 판단 결과, 특정 박스 내에 복수의 관심 지점 정보가 포함되어 있을 경우, 해당 그리드 박스 내의 정보들을 클러스터링(S906)한다. 그런 다음, 상기 그리드 박스의 중심점을 산출(S907)하고, 상기 산출된 중심점에 클러스터링된 마크를 표시(S908)한다. 또한, 선택적으로 상기 도 10에서 상술한 바와 같이 중첩이 발생된 그리드 박스에 대해 버퍼를 적용하여 마커의 위치를 보정(S909)할 수 있다.
여기에서 다양한 방법들에 관해 설명된 바와 같은 다양한 동작들 및 기능들은 특정 프로세싱 기능부 및/또는 그 안에 구현된 프로세싱 기능부, 및/또는 그 안의 다른 구성요소들과 같은 많은 유형의 기능부들 중 어느 것 내에서 수행될 수 있다. 예를 들면, 그러한 기능부들은 여기에 설명된 바와 같은 다양한 동작들 및 처리들, 또는 여기에 설명된 바와 같은 어느 다른 동작들 및 기능들, 등 또는 그 각 등가물들을 수행하는 것뿐만 아니라 여기에 설명된 바와 같은 그러한 정보들을 생성하고 그러한 동작들, 처리들 등을 수행할 수 있다.
일부 실시예들에서, 그러한 기능부들(동일한 장치 또는 구별된 장치들상에서 구현될 수 있는)은 본 발명의 다양한 측면들에 따른 그러한 처리 및 동작들, 등, 및/또는 여기에 개시된 바와 같은 어느 다른 동작들 및 기능들, 및 그 각 등가물들을 수행할 수 있다. 일부 실시예들에서, 그러한 처리는 제1 장치에서의 제1 기능부, 및 제2 장치 내의 제2 기능부에 의해 함께 수행된다. 다른 실시예들에서, 그러한 프로세싱, 동작들 등은 하나의 특정 장치 내에서 처리부들에 의해 전적으로 수행된다. 심지어 다른 실시예들에서는, 그러한 프로세싱, 동작들이 하나의 단일 디바이스내에서 적어도 제1 기능부 및 제2 기능부를 사용하여 수행된다.
또한 상술한 설명에서, 용어들 '시스템', '장치', '~부'는 단일 프로세싱 디바이스 또는 복수의 프로세싱 디바이스들일 수 있다. 그러한 프로세싱 디바이스는 마이크로 프로세서, 마이크로 컨트롤러, 디지털 신호 처리기, 마이크로 컴퓨터, 중앙 처리 유닛, 필드 프로그래머블 게이트 어레이, 프로그래머블 로직 디바이스, 스테이트 머신, 로직 회로, 아날로그 회로, 디지털 회로, 및/또는 상기 회로 및/또는 동작 지시들의 하드 코딩에 기반하여 신호들(아날로그 및/또는 디지털)을 조작하는 소정의 디바이스일 수 있다. 상기 프로세싱 모듈, 모듈, 프로세싱 회로, 및/또는 프로세싱 유닛은 단일 메모리 디바이스, 복수의 메모리 디바이스들, 및/또는 상기 프로세싱 모듈, 모듈, 프로세싱 회로, 및/또는 프로세싱 유닛의 내장된 회로일 수 있는 결합된 메모리 및/또는 집적된 메모리 엘리먼트를 가질 수 있다. 그러한, 메모리 디바이스는 읽기 전용 메모리(ROM), 랜덤 액세스 메모리(RAM), 휘발성 메모리, 비휘발성 메모리, 정적 메모리, 동적 메모리, 플래시 메모리, 캐시 메모리, 및/또는 디지털 정보를 저장하는 소정의 디바이스일 수 있다. 만약, 상기 프로세싱 모듈, 모듈, 프로세싱 회로, 및/또는 프로세싱 유닛이 하나 이상의 프로세싱 디바이스를 포함한다면, 상기 프로세싱 디바이스들은 집중적으로 위치될 수 있거나(즉, 유선 및/또는 무선 버스 구조를 통해 함께 직접적으로 연결된), 분산되어 위치될 수 있음(예컨대, 근거리 통신망 및/또는 광역 네트워크를 통한 간접적인 연결을 통한 클라우드 컴퓨팅)을 주목하여야 한다. 만약, 상기 프로세싱 모듈, 모듈, 프로세싱 회로, 및/또는 프로세싱 유닛이 정적 머신, 아날로그 회로, 디지털 회로, 및/또는 회로, 저장하는 메모리 및/또는 메모리 구성요소를 통해 하나 이상의 그 기능들을 구현한다면, 그 대응하는 동작 지시들은 상기 정적 머신, 아날로그 회로, 디지털 회로, 및/또는 논리 회로를 포함하는 회로의 내부에 내장되거나 외부에 있을 수 있음을 더 주목하여야 한다. 상기 메모리 엘리먼트는 저장할 수 있으며, 상기 프로세싱 모듈, 모듈, 프로세싱 회로, 및/또는 프로세싱 유닛은 상기 도면들 중 하나 이상에서 나타내는 단계들 및/또는 기능들 중 적어도 일부에 대응하는 하드 코딩된 및/또는 동작 지시들을 실행한다는 것을 여전히 더 주목하여야 한다. 그러한 메모리 디바이스 또는 메모리 엘리먼트는 제조의 부품 내에서 포함될 수 있다.
본 발명은 특정 기능들 및 그의 관계들의 성능을 나타내는 방법 단계들의 목적을 가지고 위에서 설명되었다. 이러한 기능적 구성 요소들 및 방법 단계들의 경계들 및 순서는 설명의 편의를 위해 여기에서 임의로 정의되었다. 상기 특정 기능들 및 관계들이 적절히 수행되는 한 대안적인 경계들 및 순서들이 정의될 수 있다. 임의의 그러한 대안적인 경계들 및 순서들은 그러므로 상기 청구된 발명의 범위 및 사상 내에 있다. 추가로, 이러한 기능적 구성 요소들의 경계들은 설명의 편의를 위해 임의로 정의되었다. 어떠한 중요한 기능들이 적절히 수행되는 한 대안적인 경계들이 정의될 수 있다. 마찬가지로, 흐름도 블록들은 또한 어떠한 중요한 기능성을 나타내기 위해 여기에서 임의로 정의되었을 수 있다. 확장된 사용을 위해, 상기 흐름도 블록 경계들 및 순서는 정의되었을 수 있으며 여전히 어떠한 중요한 기능을 수행한다. 기능적 구성 요소들 및 흐름도 블록들 및 순서들 둘 다의 대안적인 정의들은 그러므로 청구된 본 발명의 범위 및 사상 내에 있다. 당업자는 또한 여기에서의 상기 기능적 구성 요소들 및 다른 도시된 블록들, 모듈들, 및 구성요소들이 도시된 바와 같이 또는 분리된 구성요소들, 반도체 집적 회로(ASIC)들, 적절한 소프트웨어를 실행하는 프로세서들 및 그와 유사한 또는 임의의 조합에 의해 구현될 수 있음을 인지할 것이다.
본 발명은 또한 하나 이상의 실시예들의 용어로, 적어도 부분적으로 설명되었을 수 있다. 본 발명의 실시예는 본 발명, 그 측면, 그 특징, 그 개념, 및/또는 그 예를 나타내기 위해 여기에서 사용된다. 본 발명을 구현하는 장치, 제조의 물건, 머신, 및/또는 프로세스의 물리적인 실시예는 여기에 설명된 하나 이상의 실시예들을 참조하여 설명된 하나 이상의 측면들, 특징들, 개념들, 예들 등을 포함할 수 있다. 더구나, 전체 도면에서, 실시예들은 상기 동일한 또는 상이한 참조 번호들을 사용할 수 있는 상기 동일하게 또는 유사하게 명명된 기능들, 단계들, 모듈들 등을 통합할 수 있으며, 그와 같이, 상기 기능들, 단계들, 모듈들 등은 상기 동일한 또는 유사한 기능들, 단계들, 모듈들 등 또는 다른 것들일 수 있다.
한편, 용어 "~처리부"는 본 발명의 다양한 실시예들의 설명에서 사용된다. 모듈은 하나 이상의 출력 신호들을 생성하기 위해 하나 이상의 입력 신호들의 처리와 같은 하나 이상의 기능들을 수행하기 위해 하드웨어를 통해 구현되는 기능적 블록을 포함한다. 상기 기능적 블록을 구현하는 하드웨어는 소프트웨어 및/또는 펌웨어를 결합하여 직접 동작할 수 있다. 여기에서 사용된 바와 같이, 모듈은 자체적으로 모듈인 하나 이상의 서브-모듈들을 포함할 수 있다.
본 발명의 여러가지 기능들 및 특정들의 특별한 조합들이 여기에 분명히 설명된 반면, 이러한 특징들 및 기능들의 다른 조합들이 마찬가지로 가능하다. 본 발명은 여기에 개시된 특정한 예들에 제한되지 않으며, 이러한 다른 조합들을 명백히 통합한다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.
101, 102, 103, 104, 105, 106 : 마커
110 : 클러스터링된 마커 201, 301 : 마커
210, 302 : 클러스터링된 마커 401 : 그리드 박스
402, 502 : 클러스터링된 마커 403, 501, 502 : 마커
511, 512 : 그리드 박스 601 : 그리드 박스
602 : 마커 표시 지점 603 : 중심점
710 : 전처리 모듈 711 : 그리드 박스 인덱스 생성부
712 : 그리드 매핑부 720 : 검색 조건 수신부
730 : 레벨 정보 수신부 740 : 클러스터링 처리 모듈
750 : 마커 표시부 760 : 그리드 박스 정보 데이터베이스
770 : 전자 지도 정보 데이터베이스 810 : 검색 수행부
820 : 그리드 박스 확인부 830 : 클러스터링 판단부
840 : 중심 좌표 연산부 850 : 중첩 버퍼링 처리부

Claims (21)

  1. 지리상의 전체 영역을 설정된 특정 크기의 가상의 그리드 박스들로 구분하고, 상기 구분된 각 그리드 박스에 인덱싱하며, 전자 지도상에 표시할 관심 지점 정보를 상기 구분된 그리드 박스들 중 해당 위치의 그리드 박스에 매핑하여 데이터베이스에 저장하는 전처리 모듈;
    상기 그리드 박스들 중 특정 그리드 박스 내에 매핑된 정보가 복수 개 존재할 경우, 해당 복수 개의 정보를 클러스터링 처리하는 클러스터링 처리 모듈; 및
    상기 클러스터링 처리 모듈에 의해 클러스터링 처리된 정보를 전자 지도상에서 해당하는 그리드 박스의 영역 내에 하나의 클러스터링된 마커로 표시하는 마커 표시부;를 포함하는, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치.
  2. 청구항 1에 있어서, 상기 그리드 박스의 크기는,
    상기 전자 지도가 디스플레이되는 줌 레벨별로 상이하게 설정되는, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치.
  3. 청구항 1에 있어서, 상기 장치는,
    상기 관심 지점 정보 중에서 특정 조건에 맞는 정보를 필터링하기 위한 검색 조건을 수신하는 검색 조건 수신부를 더 포함하며,
    상기 클러스터링 처리 모듈은, 상기 검색 조건 수신부에서 수신된 검색 조건에 따라 상기 전처리 모듈에 의해 매핑된 관심 지점 정보들을 필터링하는, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치.
  4. 청구항 1에 있어서, 상기 장치는,
    상기 전자 지도의 디스플레이되는 줌 레벨 정보를 수신하는 레벨 정보 수신부를 더 포함하며,
    상기 클러스터링 처리 모듈은, 상기 레벨 정보 수신부를 통해 수신된 줌 레벨 정보에 따라 상기 데이터베이스로부터 해당 줌 레벨에 매핑된 관심 지점 정보들을 독출하여 클러스터링 처리하는, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치.
  5. 청구항 1에 있어서, 상기 클러스터링 처리 모듈은,
    상기 데이터베이스에 저장된 관심 지점 정보들에 대해 현재 줌 레벨 정보에 따른 그리드 박스의 인덱싱 정보를 확인하는 그리드 박스 확인부; 및
    각 그리드 박스 내의 관심 지점 정보들이 복수 개일 경우 해당 관심 지점 정보들을 하나로 클러스터링 처리하는 클러스터링 판단부;를 포함하는, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치.
  6. 청구항 5에 있어서, 상기 클러스터링 판단부는,
    특정 그리드 박스 내의 관심 지점 정보가 존재하지 않거나 하나의 관심 지점 정보만 존재할 경우 클러스터링을 수행하지 않는, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치.
  7. 청구항 5에 있어서, 상기 클러스터링 처리 모듈은,
    상기 클러스터링 판단부의 판단 결과 클러스터링 처리할 그리드 박스의 중심점의 좌표를 산출하는 중심 좌표 연산부를 더 포함하며,
    상기 마커 표시부는, 상기 클러스터링된 마커를 상기 중심 좌표 연산부에 의해 산출된 그리드 박스의 중심점에 표시하는, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치.
  8. 청구항 5에 있어서, 상기 클러스터링 처리 모듈은,
    상기 클러스터링 처리 결과, 클러스터링된 마크와 인접한 그리드 박스 내의 클러스터링되지 않은 마크가 근접하여 마크들의 중첩이 발생할 경우, 해당 그리드 박스의 크기를 미리 설정된 픽셀 크기만큼 증가시키는, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치.
  9. 청구항 1에 있어서, 상기 전처리 모듈은,
    적도 및 자오선을 기준으로 동일한 크기의 사각형으로 분할하여 그리드 박스를 설정하는, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치.
  10. 청구항 9에 있어서, 상기 전처리 모듈은,
    적도 및 자오선을 기준으로 하여 기준 위치의 그리드 박스를 '0_0'으로 인덱싱하고, 가로 방향 또는 세로 방향으로 각각 번호를 증가시켜 그리드 박스를 인덱싱하는, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치.
  11. 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 방법으로서, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치에 의해 수행되는 각 단계가,
    지리상의 전체 영역을 설정된 특정 크기의 가상의 그리드 박스들로 구분하는 단계;
    상기 구분된 각 그리드 박스에 인덱싱하는 단계;
    전자 지도상에 표시할 관심 지점 정보를 상기 구분된 그리드 박스들 중 해당 위치의 그리드 박스에 매핑하여 데이터베이스에 저장하는 단계;
    상기 그리드 박스들 중 특정 그리드 박스 내에 매핑된 정보가 복수 개 존재할 경우, 해당 복수 개의 정보를 클러스터링 처리하는 단계; 및
    상기 클러스터링 처리 모듈에 의해 클러스터링 처리된 정보를 전자 지도상에서 해당하는 그리드 박스의 영역 내에 하나의 클러스터링된 마커로 표시하는 단계;를 포함하는, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 방법.
  12. 청구항 11에 있어서, 상기 그리드 박스의 크기는,
    상기 전자 지도가 디스플레이되는 줌 레벨별로 상이하게 설정되는, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 방법.
  13. 청구항 11에 있어서, 상기 방법은,
    상기 관심 지점 정보 중에서 특정 조건에 맞는 정보를 필터링하기 위한 검색 조건을 수신하는 단계를 더 포함하며,
    상기 클러스터링 처리하는 단계는, 상기 검색 조건 수신부에서 수신된 검색 조건에 따라 상기 전처리 모듈에 의해 매핑된 관심 지점 정보들을 필터링하는, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 방법.
  14. 청구항 11에 있어서, 상기 방법은,
    상기 전자 지도의 디스플레이되는 줌 레벨 정보를 수신하는 단계를 더 포함하며,
    상기 클러스터링 처리하는 단계는, 상기 수신된 줌 레벨 정보에 따라 상기 데이터베이스로부터 해당 줌 레벨에 매핑된 관심 지점 정보들을 독출하여 클러스터링 처리하는, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 방법.
  15. 청구항 11에 있어서, 상기 클러스터링 처리하는 단계는,
    상기 데이터베이스에 저장된 관심 지점 정보들에 대해 현재 줌 레벨 정보에 따른 그리드 박스의 인덱싱 정보를 확인하는 단계; 및
    각 그리드 박스 내의 관심 지점 정보들이 복수 개일 경우 해당 관심 지점 정보들을 하나로 클러스터링 처리하는 단계;를 포함하는, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 방법.
  16. 청구항 15에 있어서, 상기 클러스터링 처리하는 단계는,
    특정 그리드 박스 내의 관심 지점 정보가 존재하지 않거나 하나의 관심 지점 정보만 존재할 경우 클러스터링을 수행하지 않는, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 방법.
  17. 청구항 15에 있어서, 상기 클러스터링 처리하는 단계는,
    상기 클러스터링 판단부의 판단 결과 클러스터링 처리할 그리드 박스의 중심점의 좌표를 산출하는 단계를 더 포함하며,
    상기 마커로 표시하는 단계는, 상기 클러스터링된 마커를 상기 중심 좌표 연산부에 의해 산출된 그리드 박스의 중심점에 표시하는, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 방법.
  18. 청구항 15에 있어서, 상기 클러스터링 처리하는 단계는,
    상기 클러스터링 처리 결과, 클러스터링된 마크와 인접한 그리드 박스 내의 클러스터링되지 않은 마크가 근접하여 마크들의 중첩이 발생할 경우, 해당 그리드 박스의 크기를 미리 설정된 픽셀 크기만큼 증가시키는, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 방법.
  19. 청구항 11에 있어서, 상기 그리드 박스들로 구분하는 단계는,
    적도 및 자오선을 기준으로 동일한 크기의 사각형으로 분할하여 그리드 박스를 설정하는, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 방법.
  20. 청구항 19에 있어서, 상기 인덱싱하는 단계는,
    적도 및 자오선을 기준으로 하여 기준 위치의 그리드 박스를 '0_0'으로 인덱싱하고, 가로 방향 또는 세로 방향으로 각각 번호를 증가시켜 그리드 박스를 인덱싱하는, 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 방법.
  21. 청구항 11 내지 청구항 20 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터 판독 가능한 기록 매체.
KR1020120122834A 2012-11-01 2012-11-01 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치, 방법 및 컴퓨터 판독 가능한 기록 매체 KR20140055663A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120122834A KR20140055663A (ko) 2012-11-01 2012-11-01 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치, 방법 및 컴퓨터 판독 가능한 기록 매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120122834A KR20140055663A (ko) 2012-11-01 2012-11-01 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치, 방법 및 컴퓨터 판독 가능한 기록 매체

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020160010356A Division KR20160017016A (ko) 2016-01-27 2016-01-27 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치, 방법 및 컴퓨터 판독 가능한 기록 매체

Publications (1)

Publication Number Publication Date
KR20140055663A true KR20140055663A (ko) 2014-05-09

Family

ID=50887274

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120122834A KR20140055663A (ko) 2012-11-01 2012-11-01 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치, 방법 및 컴퓨터 판독 가능한 기록 매체

Country Status (1)

Country Link
KR (1) KR20140055663A (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106289298A (zh) * 2015-05-21 2017-01-04 比亚迪股份有限公司 兴趣点的显示方法及装置、车载导航系统
KR101721114B1 (ko) * 2016-06-27 2017-03-30 서울대학교산학협력단 위치정보가 포함된 포인트 데이터를 다축척의 웹 지도상에 클러스터링하기 위하여 격자의 크기를 결정하는 방법
WO2017155230A1 (ko) * 2016-03-08 2017-09-14 네이버비즈니스플랫폼 주식회사 가변 그리드의 인덱스를 이용한 입력 인식 방법 및 시스템
CN108540988A (zh) * 2017-03-06 2018-09-14 中国移动通信集团公司 一种场景划分方法及装置
US20230070544A1 (en) * 2021-09-09 2023-03-09 Kayak Software Corporation Dynamic display of markers on an electronic map
CN116306325A (zh) * 2023-05-25 2023-06-23 山东恒远智能科技有限公司 一种基于工业互联网的生产供应链监测管理系统及方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106289298A (zh) * 2015-05-21 2017-01-04 比亚迪股份有限公司 兴趣点的显示方法及装置、车载导航系统
WO2017155230A1 (ko) * 2016-03-08 2017-09-14 네이버비즈니스플랫폼 주식회사 가변 그리드의 인덱스를 이용한 입력 인식 방법 및 시스템
US10754937B2 (en) 2016-03-08 2020-08-25 Naver Business Platform Corporation Method and system for recognizing input using index of variable grid
US11386188B2 (en) 2016-03-08 2022-07-12 Naver Cloud Corporation Method and system for recognizing input using index of variable grid
KR101721114B1 (ko) * 2016-06-27 2017-03-30 서울대학교산학협력단 위치정보가 포함된 포인트 데이터를 다축척의 웹 지도상에 클러스터링하기 위하여 격자의 크기를 결정하는 방법
CN108540988A (zh) * 2017-03-06 2018-09-14 中国移动通信集团公司 一种场景划分方法及装置
CN108540988B (zh) * 2017-03-06 2020-10-09 中国移动通信集团公司 一种场景划分方法及装置
US20230070544A1 (en) * 2021-09-09 2023-03-09 Kayak Software Corporation Dynamic display of markers on an electronic map
US11874111B2 (en) * 2021-09-09 2024-01-16 Kayak Software Corporation Dynamic display of markers on an electronic map
CN116306325A (zh) * 2023-05-25 2023-06-23 山东恒远智能科技有限公司 一种基于工业互联网的生产供应链监测管理系统及方法

Similar Documents

Publication Publication Date Title
US11042279B2 (en) Generating graphical marks for graphical views of a data source
US9836651B2 (en) Displaying information relating to a designated marker
KR20160017016A (ko) 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치, 방법 및 컴퓨터 판독 가능한 기록 매체
KR20140055663A (ko) 위치 기반 정보의 디스플레이를 위한 데이터 클러스터링 장치, 방법 및 컴퓨터 판독 가능한 기록 매체
JP6158162B2 (ja) 関心地点を表示するための方法及び装置
US9689703B2 (en) Presenting hierarchies of map data at different zoom levels
US9927951B2 (en) Method and system for clustering icons on a map
US11042572B2 (en) System and method for spatial clustering using multiple-resolution grids
CN107908677B (zh) 基于智能终端的小区房源展示方法及装置
US10242280B2 (en) Determining regions of interest based on user interaction
US10621462B2 (en) Density sampling map data
US8341156B1 (en) System and method for identifying erroneous business listings
CN105869513A (zh) 在电子地图界面上显示关联标注点的方法和装置
CN107506499A (zh) 兴趣点与建筑物之间建立逻辑关系的方法、装置及服务器
JP5054234B2 (ja) 密度に基づいて検索結果を表示するシステム及び方法
US20160328418A1 (en) Data processing system utilizing geographic information and data processing program
US20150109328A1 (en) Techniques for navigation among multiple images
CN107341221B (zh) 索引结构的建立、关联检索方法、装置、设备及存储介质
US8364647B1 (en) Systems and methods for detecting trends in clustered business listings
US20150364118A1 (en) Attribute based map marker clustering
JP6324175B2 (ja) 地図情報表示システム及び方法、プログラム
CN112989193A (zh) 数据处理方法、装置、电子设备及计算机存储介质
US20100153840A1 (en) Methods and systems for data record visualization on a computer user interface
CN112906091A (zh) 一种基于cad的地理信息绘制方法、装置、终端及介质
CN105809690A (zh) 一种数据处理方法、装置及电子设备

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
A107 Divisional application of patent
E801 Decision on dismissal of amendment
A107 Divisional application of patent