독일의 도로를 주행하며 찍은 영상 데이터셋 KITTI에는 횡단보도와 보도, 주차된 차량이 뒤섞인 장면이 수천 컷 들어 있다. 사람이 화면에 걸어 들어오는데, 앞에 세워진 차 한 대가 하반신을 통째로 가린다. 검출기는 이 사람의 상자(box)를 그린다. 다만 상자 안의 절반은 차 지붕이고, 나머지 절반만 사람이다. 이 사람이 지금 가려져 있는지 아닌지를 아는 것은 로봇에게 쓸모가 있다. 가려진 보행자는 갑자기 튀어나올 수 있고, 위치 추정의 신뢰도가 떨어지며, 다음 프레임에서 사라질 수 있기 때문이다.
문제는 그 "가려졌다"는 라벨을 구하기가 어렵다는 것이다. 가림(occlusion) 어노테이션은 배포 현장에 거의 없다. 그래서 대개는 가림 전용 추정기를 따로 학습시키고, 그 학습에 쓸 라벨을 또 사람이 만든다. arXiv 2611.06899v1, <Occlusion for Free>의 저자들은 이 순환을 끊자고 제안한다. 새로 학습할 것도, 가림 라벨도 없이, 카메라 파이프라인이 이미 계산하고 있는 두 개의 거리값만 비교하면 된다는 주장이다. KITTI에서 심한 가림을 AUC 0.909로 골라낸다고 보고한다.
두 개의 거리, 하나의 불일치
논문이 세우는 관찰은 두 줄이다. 첫째, 걸어오는 사람의 겉보기 키(apparent height)는 가려져도 크게 변하지 않는다. 검출된 상자가 여전히 사람 전체를 감싸고 있으면, 상자의 픽셀 높이는 그대로다. 둘째, 단안 메트릭 깊이(monocular metric depth)는 가림에 끌려간다. 깊이 맵은 상자 안에서 가장 가까운 표면을 보고하므로, 앞을 막은 차 지붕의 거리가 사람의 거리 자리에 들어온다.
그래서 두 값의 순서가 갈라진다. 상자 높이로 추정한 거리는 "사람이 저기 있다"고 말하고, 깊이 맵은 "저기 있는 건 차다"라고 말한다. 이 둘의 순서가 뒤집히면 가림이다. 저자들이 강조하는 것은 이 신호가 거리의 절대값이 아니라 두 추정의 상대적 순서만 본다는 점이다. 그래서 카메라 초점거리를 몰라도 되고, 사람의 키를 가정하지 않아도 되고, 깊이 모델의 스케일을 맞추지 않아도 된다.
사람이 겹겹이 서면 검출 상자 안에는 앞사람의 몸통과 뒷사람의 얼굴이 함께 들어온다. 상자 높이는 사람 전체를 계속 감싸지만, 깊이 맵은 가장 가까운 표면을 보고한다 — 이 불일치가 논문이 쓰는 신호다. — DLKR, CC0 (Wikimedia Commons)
초점거리도 키도 필요 없다는 조건
이 주장이 성립하려면 조건이 하나 붙는다. 깊이 모델의 오차가 거의 순수한 이득(gain) 오차, 즉 거리에 비례해 일정 배수로 틀리는 형태여야 한다. 오프셋이 섞이면 순서 비교가 흔들린다. 논문은 이 조건을 라벨 없이 검사할 수 있다고 말한다. 실제 거리를 모르는 상태에서도 두 신호의 관계가 예측한 모양을 따르는지 볼 수 있다는 뜻이다.
이 부분이 이 방법의 값어치를 결정한다. 가림 라벨이 없는 현장에서 쓸 수 있는 도구는, 그 현장에서 조건을 확인할 수 있어야 하기 때문이다. 초점거리·평균 신장·깊이 스케일 같은 상수를 가정하는 순간, 새 도시에 카메라를 세울 때마다 그 상수를 다시 재야 하고, 재려면 결국 라벨이 필요해진다. 논문은 그 사슬을 끊으려 한다.
거리의 대리 지표가 아니라는 반직관
여기서 자연스러운 반론이 나온다. "그건 그냥 먼 사람은 잘 안 보인다는 이야기 아니냐"는 것이다. 멀리 있으면 작게 보이고, 작게 보이면 검출이 흔들리고, 그러면 가림처럼 보이는 것 아니냐는 의심이다. 논문은 이 반론을 거리 구간으로 잘라 반박한다. 고정된 거리 구간 안에서만 채점해도 AUC가 0.894에서 0.925 사이를 유지했고, 같은 조건에서 참 거리 자체는 우연 수준에 머물렀다고 보고한다.
가림 라벨이 붙은 합성 장면에서도 방향이 같다. 가시성(visibility)이 실제로 측정된 CARLA 장면에서 이 점수는 0.819를 기록했고, 거리만 쓰는 기준선은 0.644였다. 즉 이 신호는 "멀어서 안 보인다"를 거리로 대신 말하는 것이 아니라, 거리를 통제한 뒤에도 남는 무언가를 잡는다. 논문이 내세우는 반직관은 여기에 있다. 가림을 검출하려면 가림에 대해 배워야 한다는 통념 대신, 이미 가진 두 추정이 서로 어긋나는지 보라는 것.
세 번 시도해서 안 됐던 것들
저자들이 이 결론에 곧장 도달한 것은 아니다. 논문은 표준적인 세 가지 처방을 먼저 시험했다고 적는다. 깊이 융합(depth fusion), 가림을 흉내 내는 증강(occlusion-simulating augmentation), 어텐션(attention)이다. 셋 다, 그들이 시험한 설정에서는 학습 분포 밖에서 검출 성능을 개선하지 못했다. 이 실패 기록이 논문의 설득력을 오히려 높인다. 새 구조를 하나 더 얹는 대신, 왜 안 되는지를 먼저 적어 두었기 때문이다.
경쟁 가설은 두 갈래로 정리된다. 하나는 "가림은 학습으로 푸는 문제"라는 입장이고, 다른 하나는 "가림은 검출기의 실패 모드일 뿐"이라는 입장이다. 논문의 데이터는 둘 다에 압박을 준다. 학습으로 푸는 쪽에는 분포 밖 일반화 실패를, 검출 실패로 보는 쪽에는 검출기가 놓친 보행자까지 포함한 전체 주석 집합에서 AUC 0.888을 유지했다는 결과를 내민다. 검출 상자가 없으면 점수 자체가 정의되지 않으므로, 이 방법이 검출기와 무관하다는 뜻은 아니다. 다만 검출 성공 여부와 가림 판정이 같은 것을 재고 있지는 않다는 주장이다.
독일 도로에서 배운 것이 라고스에서 반쪽이 되다
논문에서 가장 불편한 문장은 성능표가 아니라 데이터 이야기다. 독일 도로로 학습한 검출기가, 스스로 주석을 붙인 나이지리아 라고스의 거리 장면에서 정확도의 절반을 잃는다고 저자들은 보고한다. 벤치마크가 대표하지 않는 환경에서는, 잘 만든 검출기조차 조용히 무너진다.
차량이 서로를 가리고, 가로등과 육교가 화면을 가르는 도로. 이런 장면은 표준 벤치마크의 평균적인 프레임과 다르고, 그 차이가 검출기 정확도의 절반을 가져간다. — Nene Obichie, CC BY-SA 4.0 (Wikimedia Commons)
이 대목이 논문 제목의 "공짜(for free)"를 설명한다. 라벨이 필요한 신호는 라벨을 만들 수 있는 곳에서만 작동한다. 라벨을 만들 여력이 없는 곳이야말로 가림 정보가 가장 필요한 곳인데, 그곳에서 학습 기반 방법은 출발선에 서지 못한다. 저자들의 표현을 빌리면, 지역 주석이 필요 없는 신호가 벤치마크가 대표하지 못하는 환경에서 더 값어치 있다.
논문이 스스로 인정한 한계
한계는 분명하다. 첫째, 이 방법이 겨냥하는 것은 심한 가림(heavy occlusion)이다. 상자 안에서 가장 가까운 표면이 사람이 아닐 만큼 앞이 막혀야 신호가 선명해진다. 사람 다리 하나가 가늘게 스치는 정도의 부분 가림에서 같은 민감도를 기대할 수 있다는 근거는 논문에 제시되지 않는다.
둘째, 깊이 오차가 순수 이득에 가깝다는 전제에 기대고 있다. 오프셋이 큰 깊이 모델이나 실내 근거리처럼 스케일 가정이 깨지는 환경에서는 순서 비교가 흔들릴 수 있다. 셋째, 검출 상자가 사람 전체를 감싼다는 가정도 필요하다. 상자가 잘려 나가면 겉보기 키가 같이 흔들려 두 신호의 비교 자체가 오염된다. 넷째, 실측 가시성이 있는 장면은 CARLA 합성 장면이었고, 실도로에서 가시성을 픽셀 단위로 측정해 검증한 결과는 아니다.
그래도 남는 질문은 이렇다. 우리는 왜 가림을 "새로 배워야 하는 대상"으로 먼저 가정했을까. 이미 계산하고 있는 두 숫자가 서로 어긋나는 것을 읽는 일은, 어쩌면 학습이 아니라 확인에 가까웠던 것은 아닐까. 여러분이 만드는 파이프라인에는, 지금도 서로 다른 말을 하고 있는 두 개의 추정이 있지 않은가.
참고 자료
Chibueze Praise Onyenweaku, Toyibat Adele, Sikirulahi Opeyemi Abdulkareem, Obed Honour Eje, <Occlusion for Free: Detecting Occlusion from the Disagreement Between Two Monocular Distance Cues>, arXiv:2611.06899v1 (2026-11-04).
https://arxiv.org/abs/2611.06899v1
이미지 출처 — 1) 아키하바라 횡단보도, DLKR, CC0, Wikimedia Commons. 2) 라고스 시내 교통, Nene Obichie, CC BY-SA 4.0, Wikimedia Commons.
댓글1
-
빗방울
2026.11.06 02:39
겉보기 키는 가림에 안 흔들리는데 깊이 맵은 가장 가까운 표면을 보고한다는 두 줄만으로 0.909가 나온다는 게 신기하게 읽혔어요. 초점거리나 평균 신장을 상수로 가정하지 않아도 된다는 점이, 특히 라벨을 만들 여력이 없는 도시에서 크게 다가왔습니다. 다만 부분 가림에서는 신호가 약해진다는 한계는 실제 보행 장면에서 아쉬울 것 같아요. 제가 만지는 파이프라인에서도 깊이나 스케일 추정이 박스 높이랑 어긋나는 경우가 종종 있는데, 그걸 버그로만 보지 말고 신호로 읽어봐야겠다는 생각이 들었네요.
모든 이야기2034
가벼운 안부부터 깊은 생각까지, 함께 나눠요.