영상의 기하학적 해석 - 영상의 지면 투영(ground projection)

영상처리 2016.07.17 12:05

카메라 영상에서 사람이나 자동차를 찾았을 때, 찾은 물체가 카메라로부터 실제로 얼마나 멀리 떨어져 있고 또 키는 얼마나 큰지 알아내는 것은 영상기하학의 가장 빈번한 응용 중 하나이다.


예를 들어, CCTV 카메라에 잡힌 물체의 실제 거리와 크기를 알아내거나 자동차에 달린 블랙박스 카메라에서 전방의 물체를 자동으로 인식해서 물체의 크기 및 남은 거리, 이동속도를 추정하는 것 등이 있다.


그림 1. 출처: https://users.ece.cmu.edu/~hyunggic/vision_detection_tracking.html


그런데 이러한 영상해석 응용은 그 활용성에 비해서 관련자료나 설명자료 등이 거의 없고 아무래도 수학적(기하학적) 해석이 필요하다 보니 손쉽게 접근하기도 어렵다.


이 글에서는 영상에서 찾은 물체가 카메라를 기준으로 실제 얼마나 멀리 떨어져 있고 또 크기는 얼마인지 구할 수 있는 구체적 방법들을 정리해 본다.


먼저, 들어가기 앞서 다음의 두 글을 읽어보면 좋다 (전파거북이님 말씀처럼 다음 두 글의 내용을 모르고 이 글을 읽으면 본인이 바보로 느껴질 수 있습니다 ^^).



문제 정의


아래 그림과 같이 영상에서 자동차와 보행자를 찾았다고 하자.


그림 2. 물체 기준점


알아내고 싶은 것은 이들 물체가 카메라로부터 실제 얼마나 멀리 떨어져 있고 또 크기(폭, 높이)는 얼마인가이다. 그런데 여기서 물체의 '위치'는 3D 좌표가 아니라 2D 좌표임에 주의해야 한다. 이 문제에 있어서 불변의 가정은 '물체는 땅(지면)에 붙어있다' 이다. 그리고 우리가 구하고자 하는 물체의 위치란 물체가 지면과 맞닿은 지점(중점)의 2D 좌표이다 (그림에서 A 지점).


따라서, 풀고자 하는 문제는 영상내 임의의 영상좌표(픽셀좌표)에 대해 대응되는 2D 지면좌표(ground plane coordinate)를 구하는 문제로 귀결된다. 일단 물체의 위치(지면좌표)가 구해지면 물체의 크기(폭, 높이)는 간단한 비례식을 통해 손쉽게 계산될 수 있다.


정리하면, 이 문제의 가정은 1) 카메라의 높이와 방향이 고정되어 있다(벽에 붙어 있거나 자동차에 부착된 경우 등), 2) 물체는 항상 지면에 붙어 있다, 3) 카메라 파라미터(렌즈 왜곡계수, 높이, 각도 등)를 미리 알고 있다 이고 풀고자 하는 문제는 임의의 영상좌표에 대응되는 2D 지면좌표를 구하는 것이다.



접근 방법들


크게 3가지 접근 방법이 가능하다. 그것은 손과 연필을 이용해 기하학적으로 직접 푸는 방법, 호모그래피(homography)를 이용한 방법, 3D 변환을 이용한 방법이다. 문제에 대한 전반적인 이해를 위해 직접적인 기하학적 계산 방법부터 시작한다.



방법 1. 직접적인 기하학적 계산 방법


사실 직접 손으로 계산하는 방법이 가장 복잡하고 설명도 어렵다. 그래도 영상의 기하학적 이해에는 가장 도움이 된다.


먼저, 아래 그림을 살펴보자. 영상좌표 p에 대응되는 지면좌표를 P라 하면 카메라 원점과 p, P는 그림과 같이 일직선상에 존재한다.



그림 3. 영상좌표의 지면투영


카메라 내부파라미터(초점거리 fx, fy, 주점 cx, cy), 지면에서의 높이(h), 카메라의 틸트(θtilt)는 주어져 있다고 가정한다 (θtilt는 카메라 방향이 지면과 수평일 때 0, 위쪽을 바라볼 때 +, 아래쪽을 바라볼 때 -).


☞ 카메라의 높이와 틸트는 external camera calibration을 통해 구할 수 있다 (Extrinsic Camera Calibration - 카메라의 위치 및 자세 파악 글 참조)


입력 영상 픽셀좌표를 p(x,y), 대응되는 지면좌표를 P(X, Y)라 하자.


먼저 카메라의 내부파라미터에 대한 영향을 없애기 위해 픽셀좌표를 정규좌표로 변환한다.


 --- (1)


구해진 정규좌표 (u, v)와 카메라 높이 h, 틸트 θtilt를 이용한 이후의 계산과정은 아래와 같다 (앞서 두 글에 대한 이해와 상상력을 믿고 자세한 설명은 생략한다). 정규 이미지 평면에서는 주점의 좌표가 c(0, 0)이 되고 이미지 평면과 카메라 원점과의 초점거리가 1이 됨에 주의한다.


그림 4. 기하학적 계산 과정


위 계산 결과에서 d는 카메라 원점과 물체와의 지면에서의 직선거리, θ는 카메라 광학축을 기준으로 한 물체의 방향각이다 (카메라 광학축을 기준으로 왼쪽이 +, 오른쪽이 -). 이를 top-view로 보면 아래 그림과 같다.


그림 5. top-view 관계도


여기까지 해서 물체가 카메라로부터 어떤 방향(θ)에 있고 얼마나 떨어져(d) 있는지 계산되었다.


마지막으로 물체의 위치를 지면좌표로 표현하면 다음과 같다 (단, 카메라 위치를 지면좌표계의 원점, 광학축 방향을 X축으로 가정했을 때의 좌표).


 --- (2)


※유의사항

  • 여기서 설명한 기하학적 방법은 카메라의 roll이 0인 경우에만 성립하며 카메라의 roll이 0이 아닌 경우에는 방법2나 방법3을 이용해야 함
  • 최종 계산된 P(X, Y)는 지면좌표계를 어떻게 정의하느냐에 따라 달라질 수 있는 값이며 여기서는 카메라 원점을 지면에 수직으로 투영시킨 점을 원점, 카메라 광학축 방향을 X축으로 잡았을 경우의 좌표임


☞ 물체의 크기를 구하는 방법은 나중에 일괄적으로 설명합니다.



방법2. 호모그래피(Homography)를 이용한 방법


호모그래피(homography)를 이용한 방법은 실용적으로 가장 간편한 방법이며 특별한 이론적 지식 없이도 활용 가능하다. 그 핵심은 몇몇 샘플링 된 영상좌표들에 대해서 대응되는 지면좌표를 실측을 통해 구한 후 여기서 얻어진 영상좌표→지면좌표 변환관계를 다른 경우에도 일반화하여 적용하는 것이다.


구체적 방법에 들어가기 앞서 먼저 호모그래피(homography)의 개념부터 살펴보자.


호모그래피(homography) ― 한 평면을 다른 평면에 투영(projection)시켰을 때 투영된 대응점들 사이에는 일정한 변환관계가 성립하는데 이 변환관계를 호모그래피라 부른다.



그림 6. 호모그래피(Homoggraphy)


호모그래피(homography)는 3×3 행렬로 표현되며 대응점들의 동차좌표(homogeneous coordinate) 표현에 대해 성립하는 변환관계이다. 즉, 한 평면 위의 점들 (x1, y1), (x2, y2), ... 이 다른 평면 위의 점들 (x1', y1'), (x2', y2'), ... 로 각각 투영되었다면 이들 대응점들 사이에는 다음 관계식을 만족하는 3×3 호모그래피 행렬 H가 항상 존재하고 또 유일하게 존재한다 (단, scale factor는 무시할 경우).


 --- (3)


단, s는 동차좌표(homogeneous coordinate) 표현에 있어서 scale factor. 동차좌표 표현에 대해서는 [영상 Geometry #2] Homogeneous Coordinates 글을 참조하기 바란다.


여기서, H가 유일하게 존재한다는 점에 주목할 필요가 있다. 이 말은 p1, p2, p3, p4를 이용해서 H를 구하나 p2, p3, p4, p5를 이용해서 H를 구하나 그 결과가 동일하다는 뜻이다 (일반적으로 호모그래피를 결정하기 위해서는 4개의 대응쌍이 필요하다). 그리고 이 말이 함축하는 중요한 의미는 임의의 네 대응쌍을 이용해서 구한 H를 다른 모든 점들에 대해서도 동일하게 적용할 수 있다는 것이다.


예를 통해 살펴보자. 아래 그림과 같이 마우스패드에 대한 서로 다른 시점의 두 이미지 A, B가 있다. 두 이미지에서의 4개의 대응쌍 p1-p1', p2-p2', p3-p3', p4-p4'을 찾아서 이들 대응 좌표들로부터 호모그래피(homography) H를 구했다고 하자. 이 때, 이렇게 구한 H는 다른 점들에 대해서도 동일하게 적용된다. 즉, p5에 대응되는 점의 이미지 B에서의 좌표는 H*p5로 구할 수 있다. 그리고 p5 뿐만 아니라 다른 모든 마우스패드 상의 대응점들에 대해서도 p' = Hp가 성립한다.


그림 7. 호모그래피 예


앞서 호모그래피(homography)는 투영관계에 있는 두 평면 사이의 변환관계라 했다. 그런데 그림 7의 예에서는 서로 다른 두 이미지에 투영된 마우스패드 좌표들 사이의 대응관계에 호모그래피를 사용하였다. 어떻게 된 것일까?


호모그래피(homography)는 직접적인 투영관계에 있는 두 평면 사이에서뿐만 아니라 투영관계에 의해 직·간접적으로 연결되는 모든 평면들 사이에서도 일반적으로 성립한다. 즉, 한 평면을 평면 A와 평면 B에 각각 투영했을 때, 평면 A에 투영된 좌표와 평면 B에 투영된 좌표 사이에서도 호모그래피(homography)가 성립한다. 그 이유는 원래 평면에서의 좌표를 p, 평면 A에 투영된 좌표를 p', 평면 B에 투영된 좌표를 p'', 원래 평면과 평면 A와의 호모그래피를 H1, 평면 B와의 호모그래피를 H2라 하면 p' = H1p, p'' = H2p = H2(H1-1p') = H2H1-1p'가 성립한다. 즉, 평면 A와 평면 B 사이에는 호모그래피 H = H2H1-1가 성립한다. 앞서 그림 7은 마우스패드라는 평면 위의 점들이 두 이미지 평면 A, B에 투영된 경우로서 역시 호모그래피가 성립한다.


그림 8. 이미지 평면 사이의 호모그래피


호모그래피(homography)를 사용하는데 있어서 한가지 주의할 사항은 호모그래피는 평면형 물체에 대해서만 성립한다는 점이다. 만일 마우스패드가 아니라 선풍기, 자동차, 아파트 등과 같이 입체를 가진 물체에 대해서는 호모그래피가 성립하지 않는다 (물론 아파트의 한쪽 벽면만 고려할 경우에는 호모그래피가 성립한다).


☞ 풀고자 하는 문제의 경우 지면과 이미지 평면과의 관계이므로 호모그래피가 성립한다.


원래 문제로 돌아가서 호모그래피(homography)를 이용해서 영상에서 검출된 물체의 실제 위치를 구하는 방법은 다음과 같다.


먼저, 카메라 시야 내에서 바닥에 임의의 네 점을 잡고 이들의 지면좌표를 실측을 통해 측정한다. 지면좌표계의 기준(원점 등)은 자신이 원하는데로 잡는다. CCTV 등과 같이 건물 내에 고정된 카메라라면 벽의 한쪽 모서리 등을 원점으로 잡는게 실측에 편리할 것이고 자동차에 부착된 카메라라면 자동차의 앞바퀴 중심이나 카메라를 원점으로 잡는게 편할 것이다. 어쨌든 자신이 잡은 기준(지면좌표계)에 맞춰 네 점의 지면좌표를 측정한 후 해당 점들의 영상좌표(카메라 이미지에서의 픽셀좌표)를 구한다.


픽셀좌표로부터 지면좌표로의 호모그래피 변환행렬 H의 계산은 opencv의 findHomogray함수를 이용하거나 또는 아래 코드를 이용해서 직접 계산한다 (4쌍의 대응점으로부터 호모그래피를 직접 계산해주는 함수코드를 참고용으로 올린다).


homography.txt


호모그래피 행렬 H가 얻어지면 이후의 과정은 간단하다. 임의의 영상 픽셀좌표 p(x, y)에 대응되는 지면좌표는 p를 동차좌표로 확장한 (x, y, 1)에 H를 곱한 결과를 다시 2d 좌표로 변환하면 얻어진다. 즉, H*(x, y, 1)T = (a, b, c)T라면 구하고자 하는 지면좌표는 (a/c, b/c)가 된다. 


※ 참고사항

호모그래피는 영상 픽셀좌표에 직접 적용해도 좋지만 영상의 왜곡까지 고려한다면 픽셀좌표를 정규이미지좌표(normalized image coordinate)로 변환한 후 정규이미지좌표에 대해 호모그래피를 계산 및 적용하는 것이 효과적임



방법 3. 3D 변환을 이용한 방법


3D 변환을 이용하는 방법은 가장 일반적인 방법이며 영상기하학에서 좌표계에 대한 이해만 있으면 어렵지 않게 적용할 수 있다.


카메라의 내부 파라미터(fx, fy, cx, cy) 및 3D 자세정보(R, t)는 미리 주어져 있다고 가정한다.


☞ 카메라의 내부 파라미터는 카메라 캘리브레이션을 통해 구할 수 있고, 3D 자세정보(R, t)는 opencv의 solvePnP 함수를 이용하여 구할 수 있다 (Extrinsic Camera Calibration - 카메라의 위치 및 자세 파악 글 참조)


이 때, 어떤 3차원 공간상의 한 점 P에 대한 카메라좌표를 Pc, 월드좌표를 Pw라 하면 Pc와 Pw 사이의 변환은 다음 수식에 의해 주어진다.


 --- (4)


입력 영상 픽셀좌표를 p(x,y), 대응되는 지면좌표를 P(X, Y)라 하자.


먼저 카메라의 내부파라미터에 대한 영향을 없애기 위해 픽셀좌표를 정규좌표로 변환한다 (영상에서 모든 기하학적 해석은 정규좌표를 통해 이루어진다).


 --- (5)


이 때, 구한 정규좌표를 3차원 카메라좌표로 해석하면 (u, v, 1)이 된다. 정규이미지평면은 카메라 원점에서 초점거리가 1인 평면이므로 정규이미지 평면 상의 점 (u, v)의 카메라좌표계 좌표는 (u, v, 1)이 된다. 이 점을 pc = (u, v, 1)라 하자.


이제 카메라 원점과 pc를 연결한 직선이 지면과 만나는 점을 구하면 원하는 답을 구할 수 있다. 그리고 지면과의 교점을 구하기 위해서는 카메라좌표계가 아닌 월드좌표계에서 계산을 수행해야 한다. 카메라 원점의 카메라좌표를 Cc, 월드좌표를 Cw라 하고 점 pc의 월드좌표를 pw라 하자. 카메라 원점의 카메라좌표는 항상 (0, 0, 0)임에 주의하자. 즉, Cc = (0, 0, 0)이다. 대응되는 월드좌표는 식 (4)를 이용하여 다음과 같이 계산된다.



그림 9. 3D 좌표계 변환


이제 월드좌표계 상에서 Cw와 pw를 잊는 직선이 지면과 만나는 점을 구하면 된다. 벡터(vector)의 개념을 이용하면 Cw와 pw를 잊는 직선상의 임의의 점은 P = Cw + k(pw - Cw)로 표현할 수 있다 (k는 임의의 상수).


 --- (6)


그런데, 월드좌표계 상에서 지면은 Z = 0인 경우이므로 Cw + k(pw - Cw)의 Z좌표가 0이 되도록 k의 값을 구한 후 식 (6)에 대입하면 원하는 지면좌표 P가 구해진다.


☞ 여기서 구한 지면좌표는 월드좌표계를 어떻게 설정하느냐에 따라 달라지는 값임에 주의한다.



세 방법의 비교


세 방법 중 어느 방법을 써도 무방하다. 단, 기하학적 계산 방법은 카메라가 옆으로 기울어진 경우 즉, roll이 0이 아닌 경우에는 사용할 수 없다. 호모그래피 방법과 3D 변환 방법은 roll이 돌아간 경우에도 적용할 수 있다. 또한 호모그래피 방법은 카메라 캘리브레이션이 없이도 픽셀 좌표만 가지고 곧바로 적용할 수 있는 장점이 있다. 단 영상왜곡까지 고려한다면 호모그래피 방법도 카메라 캘리브레이션이 필요하다. 마지막으로 3D 변환 기법은 가장 일반적인 방법으로서 이 문제 뿐만 아니라 다른 문제에도 확장 적용할 수 있다는 장점이 있다.



물체의 크기 구하기


일단 앞서 방법들을 이용하여 물체의 위치(지면좌표)가 구해지면 크기(폭, 높이)를 구하는 것은 비례식을 이용하여 손쉽게 계산할 수 있다.



그림 10. 지면좌표 투영을 이용한 물체의 크기 추정


카메라의 지면에서의 높이를 hcam, 구하고자 하는 물체의 키를 hobj라 하자. 카메라의 높이는 미리 알고 있다고 가정한다. 카메라와 물체와의 거리(d1)는 앞서 방법을 통해 이미 구해진 상태이다. 이제 물체의 발끝이 아닌 머리끝 지점에 대해 지면좌표를 앞서 방법으로 구한다. 그러면 이렇게 구한 지면좌표는 그림 10에서와 같이 카메라와 물체의 최상단 끝을 연결한 선이 지면과 만나는 지점이다. 그 거리를 d2라 하자. 그러면 삼각형의 비례관계에 의해 hcam : hobj = d2 : d2-d1이 성립한다. 즉, hobj = hcam*(d2-d1)/d2로 계산된다. 끝.


폭을 계산하는 것은... ... ... 연습문제로;;


by 다크 프로그래머

  • cun 2016.07.17 16:07 신고 ADDR 수정/삭제 답글

    돌아오셨군요 ㅎㅎ 그동안 정말 도움 많이 되었습니다.
    앞으로도 잘 부탁드립니다

    • BlogIcon 다크pgmr 2016.07.17 23:07 신고 수정/삭제

      돌아왔다고 하긴 그렇지만.. 감사합니다 ^^

  • toy 2016.07.18 14:54 신고 ADDR 수정/삭제 답글

    다크님! 반가워요

  • BlogIcon 지나가는손 2016.07.18 20:40 신고 ADDR 수정/삭제 답글

    오랜만의 복귀시군요!
    막힐 때 마다 다시 찾아와서 잘 보고 있습니다
    계속 잘 부탁드립니다

  • 오픈윙스 2016.07.19 11:54 신고 ADDR 수정/삭제 답글

    다크님의 글을 통해 수학적 개념을 많이 이해(아니 깨우치게) 하게 되었고, 이렇게 다시 글을 보게 되어 매우 반갑습니다. ~~

    • BlogIcon 다크pgmr 2016.07.19 13:50 신고 수정/삭제

      간만에 글을 올렸는데 이렇게 답글들을 달리니 감사합니다. 왠지 글을 종종 써야 할 것 같은...

  • 입문자 ㅜㅜ 2016.07.20 21:38 신고 ADDR 수정/삭제 답글

    다크님 항상 잘 보고 있습니다 너무 감사합니다!
    한가지 여쭤보고 싶은게 있습니다. 지금 monocular visual odometry를 구현하고 있는데, scale를 구하는 것이 너무 어렵더라구요... 혹시 homography를 이용하여 이동하는 물체의 속도를 구할 수 있는 방법은 없을까요..?(상대 속도 포함해서요..) 간단한 팁이나 아이디어만 던져주셔도 감사하겠습니다 ㅜㅜ

    • BlogIcon 다크pgmr 2016.07.21 07:05 신고 수정/삭제

      호모그래피를 알고 있다면 이미 스케일을 알고 있다는 의미입니다. 단, 호모그래피는 평면에서만 성립하기 때문에 영상에서 도로 바닥면을 구분해 내고 도로 바닥면 점들에 대해서만 호모그래피를 적용해야 할 것입니다. 단, 호모그래피를 이용하면 도로 바닥이 항상 평탄한 것을 가정하기 때문에 언덕길이나 내리막 길, 자동차의 tilt가 흔들리는 경우 등에는 오차가 발생할 것입니다.

    • 입문자 ㅜㅜ 2016.07.21 10:33 신고 수정/삭제

      그렇군요... 감사합니다 다크님.!

  • 하성주 2016.08.02 15:29 신고 ADDR 수정/삭제 답글

    정말이지 다크님 게시물을 볼 때마다 감탄만 나오네요...감사합니다.
    혹시 이런 기술동향같은 정보들 얻는 방법이나 좋은 사이트있으면 소개해주시면 감사하겠습니다.

    • BlogIcon 다크pgmr 2016.08.02 18:50 신고 수정/삭제

      기술동향이라기 보다는 배경지식 또는 배경이론이라고 하는게 맞을 것 같습니다. 어디 책이나 인터넷에 나와 있는 내용이 아니라 영상기하학에 대한 이해가 있다면 충분히 풀수 있는 문제입니다. 그리고 이 글도 제가 나름 풀어본 내용을 정리한 것입니다. 수학에 대한 이해가 있다면 다양한 문제를 풀수 있듯이 결국은 기본이 되는 지식과 이론에 대한 이해가 가장 중요합니다. 영상기하학에 대해서는 Multiple view geometry in computer vision이란 서적이 가장 대표적이니 혹시 이 분야에 관심이 있으시면 공부해 보시면 좋을 것 같습니다.

  • 알쓰 2016.10.18 13:54 신고 ADDR 수정/삭제 답글

    책 안 나오나요?

    • BlogIcon 다크pgmr 2016.10.19 15:10 신고 수정/삭제

      언젠가는 나올 지도 모르겠습니다만 현재는 특별한 계획은 없습니다 ^^

  • 물고기눈 2017.02.23 07:26 신고 ADDR 수정/삭제 답글

    안녕하세요. 포스팅 잘봤습니다. 질문이 하나 있는데요. 카메라가 fisheye 모델인 경우에도 지면좌표구하는 방법이 동일하게 적용되나요?? 왜곡보정 후 적용해야하는지 아니면 조금은 다르게 풀어야하는지 궁금합니다.

    • BlogIcon 다크pgmr 2017.02.23 09:25 신고 수정/삭제

      네 기본적인 과정은 변하지 않지만 적절한 단계에서 왜곡 보정이 들어가면 됩니다. 왜곡 보정은 정규좌표(normalized image coordinate)에서 이루어지기 때문에 계산 과정에서 정규좌표 부분만 왜곡 보정된 정규좌표로 대치하여 사용하면 됩니다. 방법 1의 경우는 수식 (1)에서 정규좌표를 구한 후 이를 왜곡 보정하여 사용하면 되고, 방법 1의 경우는 지면좌표-영상픽셀좌표 대신에 지면좌표-왜곡보정된정규좌표에 대해 호모그래피를 구하여 매핑을 수행하면 됩니다. 방법 3도 수식(5)만 왜곡보정된 정규좌표로 변환하여 사용하면 됩니다.

  • 물고기눈 2017.02.23 10:05 신고 ADDR 수정/삭제 답글

    답변 감사합니다^^

  • 아자뵤 2017.03.28 22:03 신고 ADDR 수정/삭제 답글

    안녕하세요 다크님~ 덕분에 많은 공부를 하고있는 학생입니다!
    다른 내용은 천천히 이해를 하였는데요,, 그림 4.기하학적 계산과정의 수식중 2번제 수식에 tan(각도)
    탄젠트의 각도에 대해 아무리 생각을 해봐도 모르겠네요 .. 설명이 글로는 어렵겠지만 부탁드려봅니다!
    감사합니다~~
    제 생각에는 {pi/2 - tilt - atan(v)} 인것 같아서요 ..

    • BlogIcon 다크pgmr 2017.03.29 00:01 신고 수정/삭제

      아마도 tilt를 제가 -(마이너스)로 정의해서 혼동이 발생한 것 같습니다. 본문의 글을 잘 보시면 "(θtilt는 카메라 방향이 지면과 수평일 때 0, 위쪽을 바라볼 때 +, 아래쪽을 바라볼 때 -)"로 정의한 부분이 있습니다. 즉, 카메라가 아래쪽을 보고 있을 경우 tilt 값 자체가 이미 -(마이너스)이기 때문에 그대로 더해준 것입니다. :)

    • 아자뵤 2017.03.29 03:13 신고 수정/삭제

      아~~!!
      감사합니다 =)

  • 333 2018.03.30 13:33 신고 ADDR 수정/삭제 답글

    재투영오차는 mm단위로 변환이 불가능한 것인가요?
    혹시 자세히 설명해주실 수 있을까요...;;

    • BlogIcon 다크pgmr 2018.03.30 15:12 신고 수정/삭제

      불가능하다기보다는 재투영오차라는 용어 자체가 픽셀(pixel)에서 정의된다고 하는 것이 맞겠습니다. 재투영 오차는 물체를 이미지에 투영했을 때, 이미지에서 발생하는 오차니까요.. mm 단위로 오차를 계산하고자 한다면 재투영오차가 아닌 다른 방식의 오차 계산이 필요할 것 같습니다. 예를 들어, 카메라 중심과 관측된 픽셀값을 연결하는 ray와의 최단거리를 오차로 정의할 수도 있을 것 같구요.. (이런 오차 정의가 큰 의미가 있는 것인지는 잘 모르겠습니다만..)