위치기반서비스를 위한 역지오코딩

역지오코딩이란 좌표(위도와 경도)를 통해 주소를 얻는 방법을 말합니다.

우선 좌표, 즉 위도와 경도에 대해 알아야 하는데 그림을 통해 설명합니다.
image
* 출처: http://study.zum.com/book/12563

경도는 세로축을 말하며 기준점(그리니치 천문대)을 중심으로 -180도, +180도로 나타내며, 2차원 좌표상의 가로 x축에 해당합니다. 위도는 가로축을 말하며, 적도를 중심으로 -90도, +90도로 표시합니다. 2차원 좌표상의 세로 y축에 해당합니다.

예) 주소 “서울특별시 강남구 삼성로 507”
—> 경도 127.05590291409, 위도 37.507502379027
image
** 그림: 네이버 정적맵 – 강남구 삼성동 144-20

** 참고: 표기방법 도분초와 십진수
https://support.google.com/maps/answer/18539?hl=ko

주소를 좌표로 변환하는 것이 지오코딩, 반대로 좌표를 주소로 변환하는 것이 역지오코딩입니다. 네이버와 다음, 구글에서 웹API로 이 작업을 수행해 볼 수 있습니다.

예) 지오코딩

예) 역지오코딩

  • 다음 http://apis.daum.net/local/geo/coord2addr?apikey=DAUM_LOCAL_DEMO_APIKEY&longitude=127.05590291409&latitude=37.507502379027&output=json&inputCoordSystem=WGS84
  • 네이버 (자바스크립트로 제공하는듯. URL로는 없네요)
  • 구글 https://maps.googleapis.com/maps/api/geocode/json?latlng=37.507502379027,127.05590291409&sensor=false

포털의 API들을 사용하기 위해서는 개발자용 Key 를 발급받아야. 합니다. 위 예제 상의 Key는 제 개인용으로 받는 것이니깐, API 이용시 자신의 ID로 발급받아 이용하기 바랍니다.

위치기반서비스라 하면 GPS를 이용해 얻어진 좌표를 통해 사용자의 위치를 얻어 관련된 서비스를 제공하는 것을 말합니다. GPS 좌표는 스마트폰을 통해 얻을 수 있고, 현재 위치를 주소로 변환하여 가장 가까운 맛집을 소개해 주는 서비스가 가능할겁니다. 이를 위해서 다음과 같은 과정이 필요합니다.

  1. GPS 좌표 얻기
  2. 경도 위도로 가장 가까운 맛집DB POI 검색
    – 경도 위도를 이용한 거리계산 필요
    – 가장 가까운 맛집 POI 정렬
  3. 맛집 POI 최상위 n개를 사용자 정의에 맞춰 출력

위도경도를 이용한 거리계산은 피타고라스의 삼각함수를 이용하면 된다네요.
** 참고: http://lovestudycom.tistory.com/71

위치기반 DB검색을 제공하는 API가 있다면 참 편할텐데.. 아무래도 알아서 만들어야겠죠. 일단 여기까지 정리합니다.

<참고>

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Google+ photo

Google+의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

%s에 연결하는 중

%d 블로거가 이것을 좋아합니다: