좌표 하나로는 지구를 담을 수 없다

아틀라스: 지도 여러 장으로 덮기

조각마다 평면처럼 다룰 수 있다면 조각마다 평면 지도를 한 장씩 그리면 되는데, 그러면 지도가 몇 장이든 모아 놓기만 하면 지구 전체를 담은 것일까?

실제로 우리는 이미 이 방법을 쓰고 있다. 세계지도책(atlas)을 펼쳐 보면, 한 장에 전 세계를 담으려 하지 않고 유럽, 아시아, 아메리카처럼 각각의 지역을 별도의 페이지에 그린다. 각 페이지에서는 왜곡이 작아서, 해당 지역 안에서는 거리와 방향이 대체로 정확하다.

왜 하필 구면인가

이 방법을 가장 간단한 곳에서 시험해 보자. 평면이나 평면의 한 조각은 지도 한 장으로 충분하니 시험할 거리가 없고, 지도 한 장으로는 절대 안 되는 곡면 가운데 가장 간단한 것이 구면(지구 표면)이다. 수학에서는 반지름 1인 구면을 S2S^2라 쓴다(2차원 곡면이라서 2). 구면은 두 장이면 덮을 수 있는데, 왜 한 장으로는 안 되는지는 이 장 마지막 절(컴팩트성)에서 따진다. 그러니 구면은 “한 장으로는 안 되고, 두 장이면 되는” 가장 작은 시험대다.

남은 문제는 두 장을 어떻게 나누고, 어떻게 이어 붙이느냐다. 지도를 나누고 잇는 방법은 천문학자와 지도 제작자들이 실제로 오래 고민한 문제였다.

역사: 두 장으로 지구를 싸려던 시행착오

하늘에서 먼저 쓰인 그림자 지도. 이야기는 지도가 아니라 하늘에서 시작한다. 고대 그리스의 천문학자 히파르코스(Hipparchus, 기원전 2세기)와 프톨레마이오스(Ptolemy, 2세기)는 둥근 하늘(천구)의 별자리를 평평한 금속판에 새기는 방법을 궁리했다. 그렇게 만든 것이 별의 위치로 시각을 재던 천문 기구 아스트롤라베다. 그들이 쓴 방법은 한 극에서 빛을 비춰 적도 평면에 그림자를 떨어뜨리는 것이었는데, 이 그림자 지도에는 놀라운 성질이 있다. 구면 위의 원은 평면에서도 원이 되고(빛을 비추는 극을 지나는 원만 직선이 된다), 각도도 그대로 유지된다. 덕분에 장인은 컴퍼스만으로 별자리 판을 새길 수 있었다. 1613년 프랑수아 다길롱(François d’Aguilon)이 이 방법에 입체사영(stereographic projection)이라는 이름을 붙였다.

18세기 페르시아의 아스트롤라베. 가운데 판의 촘촘한 선들이 하늘을 극에서 비춰 평면에 옮긴 그림자 지도다 (메트로폴리탄 미술관, CC0)
18세기 페르시아의 아스트롤라베. 가운데 판의 촘촘한 선들이 하늘을 극에서 비춰 평면에 옮긴 그림자 지도다 (메트로폴리탄 미술관, CC0)

반구 두 장으로 자르기. 대항해 시대가 되자 이 그림자 지도가 세계지도에도 쓰였다. 16~17세기 세계지도에는 동반구와 서반구를 동그라미 두 개로 나란히 그린 것이 많은데, 루몰트 메르카토르(Rumold Mercator, 앞에 나온 헤라르뒤스의 아들)가 1587년에 그려 1595년 지도책에 실은 세계지도를 비롯해 상당수가 입체사영으로 그려졌다. 그림 자체는 좋았지만 두 지도를 잇는 경계가 문제였다. 지도를 반구 경계에서 딱 잘랐기 때문에 두 장은 경계선 한 줄에서만 만나고, 겹치는 땅이 없다. 경계선 바로 위의 도시는 두 지도의 맨 가장자리에 걸려 있고, 경계를 넘어가는 배의 항로는 한 지도의 끝에서 끊겼다가 다른 지도의 반대쪽 끝에서 갑자기 다시 나타난다. 게다가 지도의 가장자리는 늘어남이 가장 심한 곳이어서, 두 지도를 이어 붙이는 경계선이 하필 가장 믿기 어려운 곳이었다.

루몰트 메르카토르의 반구 두 장 세계지도(1587년 판, 퍼블릭 도메인). 왼쪽은 아메리카가 있는 서반구, 오른쪽은 유럽·아프리카·아시아가 있는 동반구다. 두 동그라미는 가운데에서 점 하나로만 맞닿는다
루몰트 메르카토르의 반구 두 장 세계지도(1587년 판, 퍼블릭 도메인). 왼쪽은 아메리카가 있는 서반구, 오른쪽은 유럽·아프리카·아시아가 있는 동반구다. 두 동그라미는 가운데에서 점 하나로만 맞닿는다

한 장에 우겨넣기. 아예 한 장에 다 넣으려는 시도도 있었다. 한 점을 중심으로 방향과 거리를 그대로 살려 그리는 방위 등거리 도법(유엔 깃발의 세계지도가 이 도법으로 그려졌다)은 지구 전체를 원판 하나에 담을 수 있다. 하지만 중심의 정반대편 점 하나가 원판의 테두리 전체로 늘어난다. 한 점이 원 한 바퀴가 되니, 테두리 근처에서는 가까운 두 곳이 지도에서 원판의 양 끝으로 갈라진다. 이 장의 출발 문제에서 본 대로 어떤 도법을 써도 한 장으로는 어딘가가 찢어진다.

북극을 중심으로 한 방위 등거리 도법. 남반구로 갈수록 대륙이 옆으로 늘어나고, 남극 한 점은 바깥 테두리 한 바퀴 전체로 퍼진다 (그림: Strebe, CC BY-SA 3.0)
북극을 중심으로 한 방위 등거리 도법. 남반구로 갈수록 대륙이 옆으로 늘어나고, 남극 한 점은 바깥 테두리 한 바퀴 전체로 퍼진다 (그림: Strebe, CC BY-SA 3.0)

무엇을 지킬 것인가: 각도. 모든 것을 지키는 지도가 없다면 무엇을 지킬지 골라야 하는데, 바다 위의 항해사에게 답은 분명했다. 나침반만 믿고 가는 배에게 필요한 것은 "북쪽에서 몇 도 틀어서 가라"는 방향이다. 지도 위에서 각도기로 잰 각이 실제 나침반 방위와 같아야, 지도에서 그은 선을 그대로 배의 키로 옮길 수 있다. 메르카토르가 1569년 지도에서 면적을 버리고 지킨 것이 바로 이 각도였다. 땅 위의 측량사도 같은 처지였는데, 측량은 멀리 있는 표지 사이의 각을 재서 삼각형을 이어 나가는 일(삼각측량)이라, 잰 각을 종이에 그대로 옮길 수 있는 지도가 필요했다. 입체사영이 각도를 지킨다는 사실은 1590년대 영국의 토머스 해리엇(Thomas Harriot)이 처음 증명했지만 발표하지 않았고, 1695년 에드먼드 핼리(Edmond Halley)가 증명을 발표하면서 널리 알려졌다. 1822년에는 하노버 왕국의 측량을 맡고 있던 가우스가, 곡면을 평면에 옮길 때 각도를 지키는 방법 전체를 일반 이론으로 정리했다.

그런데 각도를 지키라는 조건을 붙이면 쓸 수 있는 해답이 확 줄어든다. 그림자 지도만 보아도 전등을 어디에 두느냐에 따라 지도가 달라진다. 지구 중심에 두면 대원(구면 위의 가장 짧은 길)이 모두 직선으로 나오지만 각도가 틀어진다. 아주 멀리 두어 평행한 빛을 비추면 우주에서 본 지구 모습이 되지만 가장자리가 짓눌려 역시 각도가 틀어진다. 각도가 지켜지는 자리는 단 하나, 지도 한가운데에 올 점의 정반대편, 곧 구면 위 반대쪽 극뿐이다. 이렇게 각도를 지키는 지도를 등각 지도라 부르는데, 아스트롤라베 장인이 고른 자리가 바로 그 자리였다.

자르지 말고 넉넉하게 겹치기. 해법은 반구 지도에서 잘라 버린 부분에 있었다. 입체사영은 원래 반구에서 멈출 필요가 없어서, 북극에서 비춘 지도는 북극 한 점만 빼고 구면 전체를 담는다(남반구는 적도 원 안쪽에, 북반구는 바깥쪽에). 남극에서 비춘 지도도 남극 한 점만 뺀다. 이렇게 두 장을 자르지 않고 쓰면, 반구 하나씩을 나눠 맡는 대신 두 극을 뺀 거의 모든 땅이 두 지도에 함께 실린다. 경계선 한 줄에서 아슬아슬하게 만나는 대신 넓게 겹치므로, 어느 도시든 적어도 한 지도에서는 가장자리가 아닌 안쪽에 놓인다. 그리고 겹치는 곳에서 한 지도의 좌표를 다른 지도의 좌표로 바꾸는 규칙도 아주 간단하다(다음 절에서 직접 구한다). 19세기에 리만은 같은 그림자 지도로 복소평면에 “무한히 먼 점” 하나를 보태 구면으로 닫았다. 오늘날 리만 구면이라 부르는 것이다.

반구 두 장과 입체사영 두 장의 비교. 위: 적도에서 자른 반구 지도 두 장. 리스본에서 리우로 가는 항로가 적도에서 끊기고(가위표), 적도 바로 위의 싱가포르는 지도 맨 가장자리에 걸린다. 아래: 같은 입체사영을 자르지 않은 두 장. 항로가 두 장 모두에 한 줄로 이어지고, 싱가포르는 두 장 모두에서 안쪽에 있다. 옛 지도는 동·서로 잘랐지만, 여기서는 이 절의 두 차트에 맞추어 남·북으로 잘랐다. 남반구를 담는 오른쪽 지도들은 북극 쪽에서 구면을 꿰뚫어 보는 셈이라 대륙이 거울에 비친 듯 좌우가 뒤집혀 보인다
반구 두 장과 입체사영 두 장의 비교. 위: 적도에서 자른 반구 지도 두 장. 리스본에서 리우로 가는 항로가 적도에서 끊기고(가위표), 적도 바로 위의 싱가포르는 지도 맨 가장자리에 걸린다. 아래: 같은 입체사영을 자르지 않은 두 장. 항로가 두 장 모두에 한 줄로 이어지고, 싱가포르는 두 장 모두에서 안쪽에 있다. 옛 지도는 동·서로 잘랐지만, 여기서는 이 절의 두 차트에 맞추어 남·북으로 잘랐다. 남반구를 담는 오른쪽 지도들은 북극 쪽에서 구면을 꿰뚫어 보는 셈이라 대륙이 거울에 비친 듯 좌우가 뒤집혀 보인다

정리하면, 좋은 지도책이 되려면 지도 한 장 한 장이 가장자리 없이 열려 있고, 이웃한 지도와 넉넉하게 겹쳐야 한다. 이 교훈이 곧 다음에 나올 차트와 아틀라스의 정의에 그대로 들어간다.

김민준 M01
김민준

해법이 그냥 자르지 말고 넉넉하게 겹쳐 쓰라는 거잖아요. 입체사영은 고대부터 있었는데 그 생각이 그렇게 늦게 나온 게 좀 이상해요.

선생님 T01
선생님

북극에서 비춘 지도를 자르지 않으면 북반구가 어디에 그려지는지 볼까요? 적도가 반지름 1인 원이라고 해요.

이서연 S01
이서연

일단 단위원 바깥이요. 북위 60°를 넣어 보면 원점에서 3.7쯤이고, 80°면 11쯤이네요. 북극에 다가갈수록 끝없이 멀어져요.

선생님 T02
선생님

적도를 반지름 10 cm인 원으로 찍으면 북위 80°의 도시는 원점에서 1 m 넘게 떨어진 자리에 찍혀요. 북극 가까운 땅은 아무리 큰 종이에도 다 들어가지 않아요.

김민준 M07
김민준

아, 그래서 반구에서 잘랐구나. 종이에 담기는 동그라미 두 개로요.

선생님 T01
선생님

반구에서 자른 이유를 지도 제작자가 적어 둔 기록은 찾지 못했어요. 다만 자르지 않은 입체사영을 종이 한 장에 다 찍을 수 없다는 건 분명하죠.

이서연 S01
이서연

그러면 종이에 찍을 생각을 접고 좌표 계산으로만 쓰면, 끝없이 퍼진 지도라도 쓸 수 있겠네요.

선생님 T01
선생님

그래요. 그럼 종이 크기를 신경 쓰지 않아도 될 때, 지도 한 장이 꼭 갖춰야 할 조건으로는 무엇이 남을까요?

지도 한 장, 지도책 한 권

아스트롤라베 장인의 방법으로 구면 S2S^2의 지도 한 장을 직접 만들어 보자. 앞에서 본 입체사영처럼 북극에 전등을 두고, 구면 위 점의 그림자를 적도를 품은 평면에 떨어뜨린다.

입체사영: 북극에서 빛을 비추면 구면의 점이 평면 위의 점으로 대응된다
입체사영: 북극에서 빛을 비추면 구면의 점이 평면 위의 점으로 대응된다

남극 (0,0,−1)(0, 0, -1)의 그림자는 원점 (0,0)(0, 0)에 떨어진다. 적도 위의 점 (1,0,0)(1, 0, 0)은 이미 그 평면 위에 있으니 제자리 (1,0)(1, 0)이고, 적도 전체는 단위원이 되며 남반구는 단위원 안쪽, 북반구는 바깥쪽에 그려진다. 북극에 가까운 점일수록 그림자가 멀리 달아나고, 북극 자신은 그림자가 없어서 이 지도에서 빠진다.

이처럼 공간의 한 조각 UU에 평면 좌표를 붙이는 함수 φ:U→Rn\textcolor{#3949ab}{\varphi}: U \to \mathbb{R}^{\textcolor{#c4724f}{n}}(φ\textcolor{#3949ab}{\varphi}는 파이, phi)을 차트(chart, 좌표계)라 부르고, 쌍 (U,φ)(U, \textcolor{#3949ab}{\varphi})로 쓴다. 차트 한 장이 지도책의 한 페이지이고, 조각 UU는 가장자리를 포함하지 않는 부분집합(열린 부분집합)으로 잡는다. 위의 지도가 북극을 뺀 구면을 맡는 차트이고, 남극에 전등을 두면 남극을 뺀 구면을 맡는 차트가 하나 더 생긴다. 구면 위 점을 (X,Y,Z)(\textcolor{#ff4314}{X}, \textcolor{#ff4314}{Y}, \textcolor{#ff4314}{Z})로 쓰면 두 차트는 다음과 같다.

φN(X,Y,Z)=(X1−Z, Y1−Z),φS(X,Y,Z)=(X1+Z, Y1+Z) \textcolor{#3949ab}{\varphi_N}(\textcolor{#ff4314}{X}, \textcolor{#ff4314}{Y}, \textcolor{#ff4314}{Z}) = \left(\frac{\textcolor{#ff4314}{X}}{1-\textcolor{#ff4314}{Z}},\ \frac{\textcolor{#ff4314}{Y}}{1-\textcolor{#ff4314}{Z}}\right), \qquad \textcolor{#3949ab}{\varphi_S}(\textcolor{#ff4314}{X}, \textcolor{#ff4314}{Y}, \textcolor{#ff4314}{Z}) = \left(\frac{\textcolor{#ff4314}{X}}{1+\textcolor{#ff4314}{Z}},\ \frac{\textcolor{#ff4314}{Y}}{1+\textcolor{#ff4314}{Z}}\right)
φN북극을 뺀 구면의 차트 (북극에서 비춘 입체사영)φS남극을 뺀 구면의 차트 (남극에서 비춘 입체사영)X,Y,Z구면 위 점의 3차원 위치, X2+Y2+Z2=1 \begin{array}{ll} \textcolor{#3949ab}{\varphi_N} & \text{북극을 뺀 구면의 차트 (북극에서 비춘 입체사영)} \\ \textcolor{#3949ab}{\varphi_S} & \text{남극을 뺀 구면의 차트 (남극에서 비춘 입체사영)} \\ \textcolor{#ff4314}{X}, \textcolor{#ff4314}{Y}, \textcolor{#ff4314}{Z} & \text{구면 위 점의 3차원 위치, } \textcolor{#ff4314}{X}^2+\textcolor{#ff4314}{Y}^2+\textcolor{#ff4314}{Z}^2=1 \end{array}

북극은 φS\textcolor{#3949ab}{\varphi_S}가, 남극은 φN\textcolor{#3949ab}{\varphi_N}이 맡으므로 구면의 모든 점이 두 차트 가운데 적어도 하나에 들어간다.

아틀라스만으로는 부족한 두 조건

차트로 빠짐없이 덮인다는 것만으로는 이상한 공간을 다 막지 못하기 때문에, 세부 조건이 둘 더 붙는다.

지도책을 만들 때는 지도를 모으는 것만으로 끝나지 않는다. 두 지도의 어느 점과 어느 점이 같은 장소인지, 곧 두 장을 어디서 이어 붙일지도 정해야 한다. 구면에서는 두 극을 뺀 모든 점을 같은 장소로 이어 붙였는데, 이 선택을 이상하게 하면 이상한 공간이 생긴다.

가장 간단한 예로, 수직선(숫자를 매긴 직선) 모양의 지도 두 장을 이어 붙여 보자. 1번 지도의 1과 2번 지도의 1은 같은 장소, 0.5와 0.5도 같은 장소, −0.001과 −0.001도 같은 장소 … 이렇게 모든 점을 짝지어 붙이되, 0끼리만은 붙이지 않기로 한다. 0이 아닌 점은 모두 한 장소로 합쳐졌으니 보통 직선과 같다. 하지만 0 자리에는 1번 지도의 0(원점 A)과 2번 지도의 0(원점 B)이 서로 다른 두 점으로 남는다. 원점이 두 개인 직선이다. 각 지도는 멀쩡한 직선이고 두 지도 사이의 번역 규칙도 "같은 숫자는 같은 장소"로 더없이 매끄러우니, 지도책으로서는 흠잡을 데가 없다. 어느 점 둘레를 확대해도 직선처럼 보이지만, 두 원점은 둘레를 아무리 작게 잡아도 서로 겹쳐서 떼어 놓을 수 없다. 서로 다른 두 점은 겹치지 않는 작은 동네로 떼어 놓을 수 있어야 한다는 조건을 하우스도르프 조건이라 부르고, 이런 공간을 막는다.

원점이 두 개인 직선. 지도 두 장을 0만 빼고 이어 붙이면 0 자리에 원점이 둘 남는다. 원점 A의 동네와 원점 B의 동네는 가운데 한 점만 다르고 양옆은 똑같아서, 아무리 좁혀도 겹친다
원점이 두 개인 직선. 지도 두 장을 0만 빼고 이어 붙이면 0 자리에 원점이 둘 남는다. 원점 A의 동네와 원점 B의 동네는 가운데 한 점만 다르고 양옆은 똑같아서, 아무리 좁혀도 겹친다

다른 하나는 제2가산 조건(셀 수 있는 개수의 열린 집합만으로 모든 열린 집합을 짜 맞출 수 있을 것)이다. 넓으면 안 된다는 뜻은 아니어서, 끝없이 넓은 평면도 중심과 반지름이 유리수인 원판들로 충분하다. 제2가산 조건이 깨지는 대표적인 예는 긴 직선(long line)이다. 보통 직선은 길이 1짜리 토막을 셀 수 있는 개수만큼 이어 놓은 것인데, 긴 직선은 셀 수 없이 많이 이어 놓는다. 어느 점을 확대해도 직선과 똑같지만, 셀 수 있는 개수의 열린 구간으로는 덮을 수조차 없다. 제2가산 조건이 있어야 조각마다 한 계산을 매끄럽게 이어 붙여 공간 전체의 계산(예를 들어 적분)으로 만들 수 있다.

두 물음의 이름: 아틀라스와 전이함수

이 절에서 구면을 두고 씨름한 고민은 결국 두 가지 물음이었다. 반구 두 장으로 자를까, 극 하나씩만 빼고 넉넉히 겹칠까 하는 고민은 공간을 차트 몇 장으로 어떻게 나눌 것인가라는 물음이다. 반구 경계선에서 항로가 끊기느냐, 0끼리 붙이느냐 마느냐 하는 고민은 겹치는 곳에서 두 차트의 좌표를 어떻게 이을 것인가라는 물음이다.

수학은 이 두 물음에 정식 이름을 붙여 두었다. 첫 번째 물음의 답, 곧 공간 전체를 빠짐없이 덮는 차트들의 모음이 앞에서 정의한 아틀라스다. 두 번째 물음의 답인, 겹치는 곳에서 한 차트의 좌표를 다른 차트의 좌표로 바꾸는 규칙은 전이함수(transition map)라 부른다. 전이함수는 바로 다음 절에서 본격적으로 다루는데, 아틀라스와 전이함수 두 낱말은 이 책 내내 쓰인다. 곡면 위에서 속도를 재든, 거리를 재든, 곡률을 재든, 계산은 늘 차트 한 장 안에서 하고, 그 차트에서 구한 값이 다른 차트로 옮겨 가도 뜻이 같은지는 전이함수로 확인하기 때문이다.

문제 4: 한 바퀴 파노라마는 몇 장

계산 제자리에서 몸을 돌려 가며 사진을 찍어 한 바퀴(360°) 파노라마를 만든다. 사진 한 장은 가로로 60°를 담지만, 양쪽 가장자리 6°씩은 렌즈 탓에 휘어 보여 쓰지 않기로 한다. (1) 쓸 수 있는 부분만으로 한 바퀴를 빈틈없이 덮으려면 사진이 최소 몇 장 필요한가? (2) 가장자리를 7.5°씩 버리면 쓸 수 있는 부분이 딱 45°다. 이때는 최소 몇 장인가?

위에서 내려다본 사진 한 장이 담는 60°와 양쪽 가장자리의 버리는 부분. 왼쪽은 6°씩, 오른쪽은 7.5°씩 버릴 때
위에서 내려다본 사진 한 장이 담는 60°와 양쪽 가장자리의 버리는 부분. 왼쪽은 6°씩, 오른쪽은 7.5°씩 버릴 때

같이 풀기 세션 4

김민준 M01
김민준

한 장이 60°니까 360 ÷ 60 = 6장이요.

이서연 S01
이서연

가장자리는 안 쓴다며. 한 장에서 쓰는 건 60 − 12 = 48°야. 360 ÷ 48 = 7.5니까 8장.

선생님 T01
선생님

(2)는요?

김민준 M01
김민준

360 ÷ 45 = 8, 이번엔 딱 나눠떨어지니까 8장이요.

선생님 T01
선생님

8장을 45°씩 돌려 가며 찍었다고 해 봅시다. 첫 장과 둘째 장이 맞닿는 방향 하나를 보세요. 그 방향은 어느 사진에서 쓸 수 있어요?

이서연 S06
이서연

첫 장에서는 오른쪽 끝이고, 둘째 장에서는 왼쪽 끝이에요. 끝은 버리기로 했으니까 어느 사진에도 안 남아요. 두 사진이 맞닿는 경계마다 한 방향씩, 여덟 방향이 빠지네요.

김민준 M07
김민준

그럼 9장이요. 딱 맞게 이어 붙이면 맞닿는 경계의 방향이 빠지니까, 이웃한 사진끼리 쓸 수 있는 부분이 조금이라도 겹쳐야 해요.

선생님 T01
선생님

반구 지도 두 장이 적도 한 줄에서만 만나서 적도를 넘는 항로가 끊겼던 것도 같은 문제였어요.

김민준 M01
김민준

사진과 사진이 맞닿는 방향을 어느 사진도 맡지 않은 게, 조별 발표를 여덟 명이 딱 8분의 1씩 나눠 맡았다가 넘어가는 대목을 아무도 안 맡아서 슬라이드 사이가 뚝 끊겼던 거랑 같네요.

문제 5: 반구 지도로 구면 덮기

킬러 구면을 둘로 가르는 대원(가장 큰 원)을 경계로 한 반구에서, 경계를 뺀 부분(열린 반구)을 맡는 지도가 있다. 도법은 무엇이든 좋다. 이런 지도로 구면 전체를 덮으려면 최소 몇 장 필요한가? 그보다 적으면 왜 안 되는지도 설명하라.

열린 반구 지도 한 장이 맡는 곳. 화살표는 반구 한가운데 점의 방향이고, 점선으로 그린 경계 대원은 지도에서 빠진다
열린 반구 지도 한 장이 맡는 곳. 화살표는 반구 한가운데 점의 방향이고, 점선으로 그린 경계 대원은 지도에서 빠진다

같이 풀기 세션 5

김민준 M01
김민준

북반구 한 장, 남반구 한 장, 두 장이요.

이서연 S01
이서연

경계를 뺀 반구라며. 북반구 지도에도 남반구 지도에도 적도가 없어. 파노라마에서 사진 사이 경계가 어느 사진에도 안 남았던 것처럼, 적도 한 바퀴 전체가 어느 지도에도 안 들어가는 거지.

김민준 M01
김민준

그럼 적도 위의 점 (1,0,0)(1, 0, 0)을 한가운데에 둔 반구를 하나 더해서 세 장이요.

선생님 T01
선생님

그 셋째 반구는 적도를 어디까지 담아요?

김민준 M04
김민준

X>0\textcolor{#ff4314}{X} > 0인 쪽 반 바퀴뿐이네요. 반대쪽 반 바퀴가 또 빠져요. 그냥 앞뒤, 좌우, 위아래로 여섯 장 쓰면 확실한데요.

선생님 T01
선생님

여섯 장이면 되긴 해요. 더 줄일 수 있을까요? 우선 세 장을 봅시다. 반구 하나는 한가운데 점의 방향 하나로 정해져요. 그 방향과 이루는 각이 90°보다 작은 점, 곧 그 방향과의 내적이 양수인 점들이 그 반구예요.

이서연 S01
이서연

세 방향을 축 셋으로 잡아 보면, 성분이 모두 음수인 점은 세 내적이 다 음수라 어디에도 안 들어가요. 그런데 이건 축으로 골랐을 때 얘기고, 방향을 비스듬히 고르면 될지도 모르겠어요.

선생님 T01
선생님

그럼 셋을 한꺼번에 보지 말고 앞의 두 방향만 먼저 봐요. 두 반구 모두에서 빠지는 점은 어디서 찾을 수 있을까요?

이서연 S01
이서연

두 방향과의 내적이 다 0 이하인 점이요. 두 방향에 모두 수직인 방향이면 내적이 둘 다 0이에요.

선생님 T01
선생님

그런 수직인 방향은 몇 개 있어요?

이서연 S08
이서연

하나랑 그 반대 방향, 둘이요. 아, 셋째 방향과의 내적은 둘 가운데 한쪽에서는 꼭 0 이하예요. 그쪽 점은 세 반구 어디에도 안 들어가요. 세 장은 어떻게 골라도 안 되네요.

선생님 T01
선생님

그럼 네 장은요? 방향 넷을 (1,1,1)(1, 1, 1), (1,−1,−1)(1, -1, -1), (−1,1,−1)(-1, 1, -1), (−1,−1,1)(-1, -1, 1)로 잡아 봐요. 정사면체의 네 꼭짓점을 가리키는 방향이에요.

김민준 M01
김민준

numpy로 구면 위 점을 20만 개 뽑아서 네 방향과의 내적을 봤어요. 모든 점에서 넷 가운데 적어도 하나가 양수예요. 북극 (0,0,1)(0, 0, 1)은 내적이 1, −1, −1, 1이라 첫째와 넷째 반구에 들어가고요.

이서연 S01
이서연

20만 개면 믿음은 가는데, 그 사이에 빠진 점이 없다는 건 아니잖아. 네 방향을 다 더해 보니까 (0,0,0)(0, 0, 0)이에요. 이게 쓸모가 있을까요?

선생님 T01
선생님

그럼 어떤 점을 잡고 네 내적을 다 더하면요?

이서연 S07
이서연

0이요. 합이 0이면 넷이 다 음수일 수는 없으니까… 적어도 하나는 0 이상이에요. 그런데 0이면 반구에 안 들어가는데요. 넷이 모두 0인 점이 걸려요.

선생님 T01
선생님

넷이 모두 0인 점이 구면 위에 있을까요?

이서연 S01
이서연

네 방향 모두에 수직이어야 하는데, 그런 점은 원점뿐이에요. 구면 위에는 없으니까, 넷이 다 0이 아닌 한 적어도 하나는 양수예요.

선생님 T13
선생님

그래서 답은 네 장이에요. 반구처럼 큰 지도라도 열려 있으면 이웃과 넉넉히 겹쳐야 하고, 그러려면 네 장은 있어야 해요.

이서연 S01
이서연

선형대수 시간에 벡터 몇 개의 양수 배만 더해서 공간의 모든 방향을 만들려면 차원보다 하나는 더 있어야 한다고 배웠는데, 3차원에서 넷이 필요한 게 그거네요.

문제 6: 큰 이미지를 타일로 나눠 분할하기

계산 이미지의 픽셀마다 무엇이 찍혔는지 가려내는 분할 모델 U-Net(2015년, 구조가 U자 모양이라 붙은 이름)은 572 × 572 픽셀 타일을 입력으로 받아 가운데 388 × 388 픽셀에 대해서만 답을 낸다. 가장자리 쪽 픽셀은 둘레의 이웃 픽셀을 다 보지 못해 답을 내지 않는다. 가로 1,500 픽셀인 이미지를 가로 방향으로 빈틈없이 처리한다고 하자. (1) 타일은 최소 몇 장인가? (2) 이웃한 두 타일의 입력은 몇 픽셀 겹치는가? (3) 맨 왼쪽 타일의 입력은 이미지 왼쪽 끝 밖으로 몇 픽셀 나가는가?

가로 1,500 픽셀 이미지와 U-Net 타일 한 장. 타일 입력은 572픽셀이고, 그 가운데 388픽셀에만 답을 낸다. 타일의 위치는 아무 데나 둔 것이다
가로 1,500 픽셀 이미지와 U-Net 타일 한 장. 타일 입력은 572픽셀이고, 그 가운데 388픽셀에만 답을 낸다. 타일의 위치는 아무 데나 둔 것이다

같이 풀기 세션 6

김민준 M01
김민준

1,500 ÷ 572 = 2.6이니까 3장이요.

이서연 S01
이서연

답을 내는 건 가운데 388픽셀뿐이라며. 572로 나누면 타일 사이사이의 가장자리 픽셀은 아무도 답을 안 내.

김민준 M07
김민준

아, 파노라마에서 60°로 나눴던 거랑 똑같은 실수네요. 388로 나누면 1,500 ÷ 388 = 3.87, 네 장이요. 세 장이면 1,164픽셀까지밖에 못 가요.

선생님 T01
선생님

(2)는요? 답을 내는 가운데 부분끼리 맞닿게 놓으면 입력은 얼마나 겹칠까요?

이서연 S01
이서연

가운데 부분이 388픽셀씩 옮겨 가니까, 572픽셀짜리 입력끼리는 572 − 388 = 184픽셀 겹쳐요. 한 타일의 오른쪽 가장자리 92픽셀이 다음 타일의 가운데 부분에 포개지는 거고요.

선생님 T01
선생님

그럼 (3), 맨 왼쪽 타일은요?

김민준 M01
김민준

가운데 부분이 이미지 왼쪽 끝에서 시작하려면 입력은 92픽셀 더 왼쪽에서 시작해야 해요. 거긴 이미지 밖이라 픽셀이 없는데요?

선생님 T01
선생님

논문은 이미지 밖의 92픽셀을 이미지를 가장자리에서 거울처럼 뒤집어 비춘 픽셀로 채웠어요. 그리고 이 방법을 겹치는 타일 전략(overlap-tile strategy)이라 불렀죠. 가장자리는 믿지 않고, 모든 픽셀이 어느 한 타일의 가운데에 들어가도록 겹쳐 놓는다는 점에서 입체사영 두 장을 넉넉히 겹친 것과 같은 생각이에요.