2025.10.27 - [GIS] - [GIS] 좌표계, EPSG코드 예제로 쉽게 이해하기(EP.1)
[GIS] 좌표계, 타원체 예제로 쉽게 이해하기(EP.1)
1️⃣ 갑자기..네이버 인턴 합격!네이버 지도 체험형 인턴십 서류를 패스하고, 저번 주 금요일에 화상 면접을 봤다.그리고 주말이 지난 오늘..토익스피킹 수업을 듣고있는데 갑자기 한 통의 메세
dalleeoppaa.tistory.com
지난 글에 이어서 바로 두 번째 GIS 기초 포스트 입니다!
저번 글에서는 좌표계가 왜 필요한지? 그리고 타원체의 종류 그리고 위,경도에 대해 알아봤습니다.
이번 글에서는 이제 3D 지구의 형태를 2D 형태로 바꾸는 투영법과 EPSG코드에 대해 알아보겠습니다!
1️⃣ 지구를 평면 지도로 바꾼다면?
현실의 지구를 평면 지도인 2D형태로 바꾼 세계지도를 한 번쯤은 봤을것이다.


이런 지도는 다음과 같은 방법을 통해 제작된다.

원뿔 도법은 지구에 딱 맞는 원뿔을 펼쳐서 지구를 펼칠 때 나오는 도면이다.
그리고 가장 많이 사용하는 원통 도법이 있다.

하지만 거리, 방향, 모양, 면적 등이 모두 정확하게 반영된 지도를 만드는 것은 불가능하다.
따라서 지리학자들은 제작하는 지도의 목적에 맞는 지도 투영법을 선택하게 된다.
그 중 대표적인 예시 몇 개만 확인해보도록 하자.
1. 메르카토르 도법

가장 널리 알려진 지도 투영법은 원통 도법에 속하는 메르카토르 도법이다.
1569년 네덜란드의 지도학자 게라르두스 메르카토르(Gerardus Mercator)가 발표한 메르카토르 도법은 장거리 항해를 위해 고안된 것으로, 두 지점 사이를 동일한 방위각으로 항해할 수 있다.
또한 지도상의 모양이 실제 모양과 유사한 장점이 있다. 하지만 원통과 접하는 적도 주위는 면적의 왜곡이 없지만 극으로 갈수록 면적의 왜곡이 심해진다. 페터스 도법은 지도상의 모양이 실제 모양과 다르지만, 면적이 정확한 장점이 있다. 적도 쪽은 실제 모양보다 길쭉하게, 극쪽으로는 납작하게 표현된다.
남북으로 긴 우리나라는 원통을 90도 돌려 왜곡을 최소화한 횡축 메르카토르 도법을 사용하여 국내 지도를 제작한다. 또한 세계 지도는 2011년부터 면적과 형태의 왜곡을 절충한 타원형의 로빈슨 도법으로 제작하고 있다.
2. 로빈슨 도법

로빈슨 도법은 1963년, 미국의 지리학자 아서 로빈슨(Arthur H. Robinson)이 발표했다. 지구의 모습을 시각적으로 가장 자연스럽게 보여주기 위해 고안한 타원형 세계지도 투영법을 사용했다.
지구를 평면으로 옮길 때 발생하는 왜곡(면적, 거리, 방향)을 일정 부분 절충해서 고르게 분산시키는 방법을 사용했다.
수학적으로 명확한 투영식이 있는건 아니지만, 아서 로빈슨이 직접 여러 가지 비율을 실험하며 제작한 경험 기반의 도법이다.
즉, 수학적 정밀함보다 ‘사람의 눈에 보기 좋은 지도’ 를 만드는 데 목적을 둔 도법이다.
자 그렇다면 각 지역마다 또 자국에 맞는 투영 방식이 조금씩 다를 것이다. 그래서 투영좌표계에 대해서 알아보도록 하자!
2️⃣ 투영좌표계(Projected Coordinate System, PCS)
투영좌표계(Projection Coordinate System)는 지구처럼 둥근 표면(3차원) 위의 위치를 평면(2차원) 위로 옮겨 표현하기 위한 좌표체계이다. 쉽게 말해서 위도와 경도를 x, y 좌표로 변환하는 방법이라고 볼 수 있다.
⬇️ 왜 투영좌표계가 필요하지❓
지구는 완벽한 구형이 아니고, 타원체 형태라는걸 이전 포스트에서 배웠다. 하지만 우리가 자주 사용하는 네이버 지도, 종이 지도는 모두 평면(2D)로 되어있다.
따라서 구면의 위치정보(위/경도)를 평면좌표(x, y)로 바꿔줘야 두 지점의 거리, 면적, 위치 등을 정확하게 계산할 수 있다.
⬇️ 투영좌표계는 어떻게 구성되는지❓
투영좌표계는 두 개의 좌표계가 결합된 형태이다.
바로 `지리좌표계` + `투영변환`이 합쳐진 결과이다.
WGS84와 같은 지리좌표계와 투영법이 합쳐져 하나의 투영좌표계가 완성되는 구조이다.
예를 들어
- WGS84 + UTM(Universal Transverse Mercator) → 투영좌표계 EPSG:32652
- GRS80 + UTM-K(한국형 UTM) → 투영좌표계 EPSG:5179
와 같은 형태로 투영좌표계가 구성된다.
⬇️ 우리나라의 지역 TM 좌표계는❓

각 원점(4개)의 동향 좌표 가산 수치는 200,000m(동향)와 600,000m(북향) 으로 되어있다.
구분중앙경선(°E)원점 위도(°N)단위EPSG 코드적용 지역
| 구분 | 중앙경선(°E) | 원점 위도(°N) | 단위 | EPSG 코드 |
| 서부원점 | 125°E | 38°N | 미터(m) | 5185 (Bessel) |
| 중부원점 | 127°E | 38°N | 미터(m) | 5186 (Bessel) / 5181 |
| 동부원점 | 129°E | 38°N | 미터(m) | 5187 (Bessel) |
| 동해(울릉)원점 | 131°E | 38°N | 미터(m) | 5188 (Bessel) |
⬇️ 단위에도 차이가 있다
| 좌표계 유형 | 좌표 값 예시 | 단위 |
| 지리좌표계 | (위도 37.57°, 경도 126.98°) | 도(°) |
| 투영좌표계 | (x = 956,000m, y = 1,950,000m) | 미터(m) |
지리 좌표계는 도, 분, 초 단위를 사용하지만 투영 좌표계는 m단위로 표현되는걸 볼 수 있다.
이제 마지막으로 EPSG 코드에 대해 간단히 확인하고 좌표계 글을 마무리 해보자
3️⃣ EPSG코드 종류
epsg코드 정리가 아주 잘 된 글이 있다.
http://www.gisdeveloper.co.kr/?p=8942
대한민국 EPSG 코드 – GIS Developer
EPSG 코드는 전세계 좌표계 정의에 대한 고유한 명칭입니다. EPSG 코드에 대한 상세 정의는 prj4와 wkt라는 문자열로 되어 있으며, proj4와 EPSG의 wkt는 좌표계의 다양한 제원값을 정해진 문자열로 구성
www.gisdeveloper.co.kr
gis관련 포스트를 전문적으로 올려주시는 블로그로, ai/ml 분야에 공간정보를 접목하고, 프론트쪽 기술도 매우 자세히 설명되어있다.
그리고 난 여기서 약간 추가를 더 해준다면..
1. 전지구 좌표계
전 세계를 한 번에 나타낼 때 자주 사용되는 좌표계 코드
| 좌표계 이름 | 기준 타원체 | 기준(측지계) | EPSG | 설명 |
| WGS84 | WGS84 | 지구 중심(세계측지계) | EPSG:4326 | GPS 및 모든 글로벌 지도 기본 좌표계 |
| GRS80 기반 Korea 2000 | GRS80 | Korea Geodetic Datum 2000 | EPSG:4737 | 한국 세계측지계용 |
| NAD83 | GRS80 | North American Datum 1983 | EPSG:4269 | 북미 지역 |
| ETRS89 | GRS80 | European Terrestrial Reference System | EPSG:4258 | 유럽 지역 |
EPSG:4326의 Proj4 문자열
+proj=longlat +datum=WGS84 +no_defs
- +proj=longlat : 경도와 위도로 좌표 표현
- +datum=WGS84 : WGS84 타원체 및 측지계 사용
- +no_defs : 추가 설정 없음
EPSG:3857 : 구글맵, OpenStreetMap에서는 다음과 같은 좌표계를 사용중이다.
:+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +no_defs
2. 대한민국 지역 좌표계
대한민국 지역 좌표계는 osgeo 한국어지부에서 제공하는 자료를 참조하면 된다.
한국 주요 좌표계 EPSG코드 및 proj4 인자 정리
알림: Proj6.0부터는 국토지리정보원이 고시한 Molodensky-Badekas 10계수 모델을 지원합니다. 따라서, Proj6.0을 좌표계 라이브러리로 사용하는 오픈소스 프로젝트인 경우 아래 Bursa-Wolf 7계수 모델을 이
www.osgeo.kr
✳️ 오래된 지리원 표준
2002년 이전에 지리원과 같은 국가 시스템에서 사용되었던 좌표계이다. 아직 보정이 되지 않은 좌표계는 다음과 같다.
| 원점 종류 | EPSG 코드 | Proj4 문자열 |
| 동부원점(Bessel): 강원도 등 동부지역 |
EPSG:2096 |
:+proj=tmerc +lat_0=38 +lon_0=129 +k=1 +x_0=200000 +y_0=500000 +ellps=bessel +units=m +no_defs +towgs84=-115.80,474.99,674.11,1.16,-2.31,-1.63,6.43
|
| 중부원점(Bessel): 서울 등 중부지역 |
EPSG:2097 |
:+proj=tmerc +lat_0=38 +lon_0=127 +k=1 +x_0=200000 +y_0=500000 +ellps=bessel +units=m +no_defs +towgs84=-115.80,474.99,674.11,1.16,-2.31,-1.63,6.43
|
| 서부원점(Bessel): 서해5도 등 서부지역 |
EPSG:2098 |
:+proj=tmerc +lat_0=38 +lon_0=125 +k=1 +x_0=200000 +y_0=500000 +ellps=bessel +units=m +no_defs +towgs84=-115.80,474.99,674.11,1.16,-2.31,-1.63,6.43
|
이후 보정된 좌표계는 다음과 같다.
| 원점 종류 | EPSG 코드 |
Proj4 문자열
|
| 보정된 서부원점(Bessel) : KLIS에서 서부지역에 사용중 |
EPSG:5173 |
:+proj=tmerc +lat_0=38 +lon_0=125.0028902777778 +k=1 +x_0=200000 +y_0=500000 +ellps=bessel +units=m +no_defs +towgs84=-115.80,474.99,674.11,1.16,-2.31,-1.63,6.43
|
| 보정된 중부원점(Bessel) : KLIS에서 중부지역에 사용중 |
EPSG:5174 |
:+proj=tmerc +lat_0=38 +lon_0=127.0028902777778 +k=1 +x_0=200000 +y_0=500000 +ellps=bessel +units=m +no_defs +towgs84=-115.80,474.99,674.11,1.16,-2.31,-1.63,6.43
|
| 보정된 제주원점(Bessel): KLIS에서 제주지역에 사용중 |
EPSG:5175 |
:+proj=tmerc +lat_0=38 +lon_0=127.0028902777778 +k=1 +x_0=200000 +y_0=550000 +ellps=bessel +units=m +no_defs +towgs84=-115.80,474.99,674.11,1.16,-2.31,-1.63,6.43
|
| 보정된 동부원점(Bessel) : KLIS에서 동부지역에 사용중 |
EPSG:5176 |
:+proj=tmerc +lat_0=38 +lon_0=129.0028902777778 +k=1 +x_0=200000 +y_0=500000 +ellps=bessel +units=m +no_defs +towgs84=-115.80,474.99,674.11,1.16,-2.31,-1.63,6.43
|
| 보정된 동해(울릉)원점(Bessel): KLIS에서 울릉지역에 사용중 |
EPSG:5177 |
:+proj=tmerc +lat_0=38 +lon_0=131.0028902777778 +k=1 +x_0=200000 +y_0=500000 +ellps=bessel +units=m +no_defs +towgs84=-115.80,474.99,674.11,1.16,-2.31,-1.63,6.43
|
✳️ 타원체 바꾼 지리원 표준
타원체를 바꾸기 전, 북측 가산이 600,000m으로 변경되기 전에 사용했던 좌표계이다.
| 원점 종류 | EPSG 코드 |
Proj4 문자열
|
| 서부원점(GRS80) -falseY:50000 |
EPSG:5180 |
:+proj=tmerc +lat_0=38 +lon_0=125 +k=1 +x_0=200000 +y_0=500000 +ellps=GRS80 +units=m +no_defs
|
| 중부원점(GRS80) -falseY:50000: 다음지도에서 사용중인 좌표계 |
EPSG:5181 |
:+proj=tmerc +lat_0=38 +lon_0=127 +k=1 +x_0=200000 +y_0=500000 +ellps=GRS80 +units=m +no_defs
|
| 제주원점(GRS80) -falseY:55000 |
EPSG:5182 |
:+proj=tmerc +lat_0=38 +lon_0=127 +k=1 +x_0=200000 +y_0=550000 +ellps=GRS80 +units=m +no_defs
|
| 동부원점(GRS80) -falseY:50000 |
EPSG:5183 |
:+proj=tmerc +lat_0=38 +lon_0=129 +k=1 +x_0=200000 +y_0=500000 +ellps=GRS80 +units=m +no_defs
|
| 동해(울릉)원점(GRS80) -falseY:50000 |
EPSG:5184 |
:+proj=tmerc +lat_0=38 +lon_0=131 +k=1 +x_0=200000 +y_0=500000 +ellps=GRS80 +units=m +no_defs
|
✳️ 현재 국토지리정보원 표준
| 원점 종류 | EPSG 코드 | Proj4 문자열 |
| *서부원점(GRS80) -falseY:60000 |
EPSG:5185 |
:+proj=tmerc +lat_0=38 +lon_0=125 +k=1 +x_0=200000 +y_0=600000 +ellps=GRS80 +units=m +no_defs
|
| *중부원점(GRS80) -falseY:60000 |
EPSG:5186 |
:+proj=tmerc +lat_0=38 +lon_0=127 +k=1 +x_0=200000 +y_0=600000 +ellps=GRS80 +units=m +no_defs
|
| *동부원점(GRS80) -falseY:60000 |
EPSG:5187 |
:+proj=tmerc +lat_0=38 +lon_0=129 +k=1 +x_0=200000 +y_0=600000 +ellps=GRS80 +units=m +no_defs
|
| *동해(울릉)원점(GRS80) -falseY:60000 |
EPSG:5188 |
:+proj=tmerc +lat_0=38 +lon_0=131 +k=1 +x_0=200000 +y_0=600000 +ellps=GRS80 +units=m +no_defs
|
✳️ KATEC 계열
| 타원체 | EPSG 코드 |
Proj4 문자열
|
| *UTM-K (Bessel): 새주소지도에서 사용 중 |
EPSG:5178 |
:+proj=tmerc +lat_0=38 +lon_0=127.5 +k=0.9996 +x_0=1000000 +y_0=2000000 +ellps=bessel +units=m +no_defs +towgs84=-115.80,474.99,674.11,1.16,-2.31,-1.63,6.43
|
| *UTM-K (GRS80): 네이버지도에서 사용중인 좌표계 |
EPSG:5179 |
:+proj=tmerc +lat_0=38 +lon_0=127.5 +k=0.9996 +x_0=1000000 +y_0=2000000 +ellps=GRS80 +units=m +no_defs
|
| *네비게이션용 KATEC 좌표계(KOTI-KATEC) | EPSG 없음. 비공식 좌표계임. |
:+proj=tmerc +lat_0=38 +lon_0=128 +k=0.9999 +x_0=400000 +y_0=600000 +ellps=bessel +units=m +no_defs +towgs84=-115.80,474.99,674.11,1.16,-2.31,-1.63,6.43
|
'GIS > 01. GIS TIL' 카테고리의 다른 글
| PostGIS 공간쿼리 기초 연습 (1) (0) | 2026.01.29 |
|---|---|
| OpenDroneMap으로 드론 정사영상 제작하기 (0) | 2026.01.28 |
| [GIS] 좌표계, 타원체 예제로 쉽게 이해하기(EP.1) (0) | 2025.10.27 |
| [GIS] QGIS 속성테이블 필드 값을 리스트 형태로 만들기 (with. 값 맵) (0) | 2025.10.23 |
| [GIS] QGIS의 PostGIS로 쿼리 실행하기 (with. 상권 데이터셋) (0) | 2025.10.22 |
