국내 공간데이터를 받으면 .prj가 없거나 명세에 “TM 좌표”라고만 적혀 있는 경우가 많습니다. X=198056, Y=551885 같은 숫자만 남습니다.

이때 좌표계를 잘못 잡으면 오류가 나지 않습니다. 점이 조용히 엉뚱한 곳에 찍힙니다. 100km 떨어진 곳일 수도, 정확히 100m 어긋난 곳일 수도 있습니다. 후자가 더 위험합니다.

자릿수로 먼저 좁힌다

국내에서 실제로 쓰이는 좌표계는 몇 개 안 됩니다. Y값의 자릿수만 봐도 후보가 하나둘로 줄어듭니다.

Y값 범위후보X값 참고
380만 ~ 460만UTM 51N/52N (EPSG:32651/32652)20만 ~ 60만
190만 ~ 210만UTM-K (EPSG:5179)90만 ~ 120만
40만 ~ 60만중부·서부·동부 원점 계열0 ~ 60만

Y가 백만 단위인데 200만 근처면 5179, 400만 근처면 UTM입니다. 십만 단위면 원점 계열입니다.

5174와 5186을 가르는 10만

원점 계열 안에서 가장 자주 헷갈리는 둘입니다. X는 거의 같고 Y만 정확히 100,000 다릅니다.

지점EPSG:5174 (구 중부)EPSG:5186 (중부 2010)
서울시청197,801 / 451,890198,056 / 551,885
부산시청388,791 / 189,021389,077 / 288,994
목포시청144,130 / 146,424144,388 / 246,385

가산 북거(false northing)가 500,000과 600,000으로 다르기 때문입니다. X 차이 200~300m는 타원체가 다른 데서 옵니다 — 5174는 Bessel 1841, 5186은 GRS80입니다.

  • Y가 X보다 크고 40만~60만대 → 5186 계열(2010)
  • Y가 X와 비슷하거나 작고 10만~45만대 → 5174 계열(구)
  • 서울 부근인데 Y가 45만 근처면 5174, 55만 근처면 5186

띠를 잘못 잡았는지 보는 법

중부·서부·동부는 중앙자오선만 다릅니다(125°·127°·129°). 가산 동거가 전부 200,000이므로 X가 200,000에서 너무 멀면 그 띠가 아닙니다.

중앙자오선서울시청 X
서부 (EPSG:5185)125°374,759
중부 (EPSG:5186)127°198,056
동부 (EPSG:5187)129°21,353

X가 음수이거나 40만을 넘으면 거의 확실히 띠를 잘못 잡은 것입니다. 국내 어느 지점도 자기 띠 안에서는 대략 5만~35만 사이에 들어옵니다.

역변환으로 확정하는 점검 절차

자릿수는 후보를 좁힐 뿐입니다. 확정은 역변환해서 한반도 안에 떨어지는지 보면 됩니다.

  1. 후보 좌표계로 X, Y를 위경도로 역변환한다
  2. 위도 3339, 경도 124132 밖으로 나가면 그 후보는 탈락
  3. 남은 후보가 하나면 확정. 둘 이상이면 알고 있는 지점을 하나 넣어 본다
from pyproj import Transformer
 
CANDIDATES = {5179: "UTM-K", 5186: "중부 2010", 5174: "구 중부", 32652: "UTM 52N"}
x, y = 198056, 551885          # 좌표계를 모르는 값
 
for epsg, label in CANDIDATES.items():
    lon, lat = Transformer.from_crs(epsg, 4326, always_xy=True).transform(x, y)
    inside = 33 <= lat <= 39 and 124 <= lon <= 132
    print(f"{epsg:>5} {label:<8} {lat:8.4f}, {lon:9.4f}  {'← 한반도' if inside else ''}")

always_xy=True를 빼면 축 순서가 뒤집혀 결과가 달라집니다. EPSG 정의의 축 순서와 우리가 쓰는 (x, y) 순서가 다른 좌표계가 있기 때문입니다.

위경도 좌표 변환기에서 위경도를 5179·5186으로 바꿔 볼 수 있습니다. 데이터에 시청·역 같은 아는 지점이 하나라도 있으면, 그 지점의 위경도를 각 좌표계로 변환해 받은 값과 맞춰 보는 것이 가장 빠릅니다.

판정 기준은 이렇습니다.

  • 역변환 결과가 바다나 중국에 찍히면 좌표계가 틀린 것입니다
  • 100~400m 정도만 어긋나면 좌표계 계열은 맞고 측지계(datum)가 다른 것입니다. 5174 ↔ 5186을 의심하세요
  • 정확히 100,000 차이나면 가산값만 다른 것입니다
  • X와 Y를 바꿔 넣었는지도 확인하세요. 원점 계열은 둘 다 십만 단위라 뒤집혀도 그럴듯해 보입니다

5174를 다룰 때 주의할 것

5174는 Bessel 1841 타원체에 Tokyo 측지계입니다. GRS80 기반인 5186 계열로 바꾸려면 측지계 변환이 필요하고, 그 차이가 지역에 따라 300~400m입니다.

가산값 100,000만 더하거나 빼서 맞추면 숫자는 그럴듯해지지만 수백 미터가 틀린 채로 남습니다. 지적도나 도로 중심선처럼 정밀도가 필요한 데이터에서는 이 차이가 실무 오류가 됩니다. 변환 라이브러리에 EPSG 코드를 그대로 넘겨 처리하세요.

이 방법이 통하지 않는 경우

  • 국외 데이터에는 적용되지 않습니다. 위 표는 전부 한반도 범위를 전제합니다
  • 좌표가 **미터가 아니라 도(degree)**일 수 있습니다. 값이 124132, 3339 범위면 이미 위경도입니다
  • 지자체가 자체 원점을 쓰는 경우가 드물게 있습니다. 위 후보 전부가 탈락하면 데이터 제공처에 물어야 합니다
  • 자릿수 판별은 한반도 안에서만 성립합니다. 제주 남단이나 독도처럼 가장자리는 범위를 다시 확인하세요

좌표계 정의 원문은 EPSG Geodetic Parameter Registry에서 코드로 조회할 수 있습니다. 투영 파라미터의 의미는 PROJ 문서의 Transverse Mercator 항목에 정리돼 있습니다.

📦추천 상품🔒 개인정보 수집 없음

쿠팡 로켓배송 특가 & 가성비 추천 제품 확인

이 글에서 소개하거나 추천하는 IT 기기, 가공식품, 가성비 필수 꿀템을 쿠팡 로켓배송 최저가로 빠르게 만나보세요.

쿠팡 최저가 확인하기 →