안녕하세요. 이번에 리뷰로 가져온 논문은 GeNIE: A Generalizable Navigation System for In-the-Wild Environments 라는 논문입니다.
해당 논문은 2025 IROS에서 열린 earth rover challenge라는 대회에서 우승한 팀의 방법론을 제안한 논문이고 monocular RGB camera, GPS, IMU 정도의 제한적인 센서만을 사용해서 다양한 실제 야외 환경에서 navigation을 수행하는 시스템을 제안한 논문이라고 보시면 좋을 것 같습니다.
논문 제목에 나오는 GeNIE는 Generalizable Navigation System for In-the-Wild Environments의 약자인데, 이름 그대로 특정 환경에만 잘 맞는 navigation policy가 아니라, 날씨, 조명, 흙길, 포장도로 와 같은 다양한 환경 다양한 국가의 도로 구조에서 강건하게 동작하는 것을 목표로하는 논문이다라고 보시면 좋을 것 같습니다.
바로 리뷰 시작하도록 하겠습니다.
Introduction
먼저 저자들은 기존 내비게이션 벤치마크나 기존 내비게이션 시스템이 실제 배포 환경에서는 잘 일반화되지 않는 문제를 지적합니다. Habitat이나 Gibson 같은 indoor 시뮬레이션 벤치마크나, 혹은 특정 outdoor field에서 예를 들어 농업환경이나 지하 환경처럼 특정 도메인에 초점을 맞춘 벤치마크들은 사실상 제한된 환경에서 내비게이션을 평가하기 때문에 여기서 높은 성능을 보이더라도 실제 배포환경에서는 잘 동작하지 않을 수 있다는 점을 지적합니다.
그래서 저자들은 실제 로봇 내비게이션에서 중요한 것은 특정 벤치마크에서만 잘하는 policy가 아니라 환경이 바뀌어도 주행 가능한 영역을 안정적으로 찾고 그 정보를 기반으로 실제 로봇을 안전하게 움직이는 시스템이라고 설명합니다.
이 논문에서 사용한 실제 평가 환경은 Earth Rover Challenge(ERC)입니다. 이 챌린지는 동일한 sidewalk robot을 여러 국가에 배치하고, GPS checkpoint를 따라 실제 야외 환경에서 장거리 주행을 수행하도록 하는 방식입니다. 논문에서는 Botswana, Kenya, Brazil, Mexico, Panama, Costa Rica 총 6개국에서 평가를 수행했다고 합니다.
그리고 이 챌린지가 어려운 이유는 환경도 다양할 뿐더러 로봇이 사용하는 센서도 제한적이라고 합니다. 기본적으로 front-facing RGB camera, IMU, GPS 정도만 사용하고, onboard 컴퓨터도 없고 심지어 RGB 이미지는는 원격으로 3–5Hz 정도로 받아오고 그마저도 그 과정중에 4G 연결로 받아오기 떄문에 latency나 패킷 손실도 발생한다고 합니다. 그래서 이런 제약들 때문에 사실상 전통적인 SLAM 기반 mapping, planning 파이프라인은 사용하기 어렵다고 합니다.
정리하면 이 논문에서 다루는 태스크는 저가 센서 기반 real-world outdoor GPS-guided navigation이고, 저자들은 이를 해결하기 위해 SAM2 기반 traversability prediction + BEV cost map + path fusion planning을 결합한 시스템인 GeNIE라는 방법론을 제안합니다.

위는 다양한 outdoor scene, traversability prediction 결과랑 최종 path planning 결과를 보여주는 피규어인데 보시면 단순히 깨끗한 보도 환경이 아니라 비오거나, 햇빛이 강하거나, 렌즈가 더럽거나, 지형이 다양한 상황에서도 GeNIE가 traversable region을 잘 예측하고 path를 잘 생성하는 모습을 보여줍니다.
크게 핵심은 아래와 같은데 해당 내용은 방법론 파트에서 자세히 설명드리도록 하겠습니다.
- SAM2를 기반으로 한 generalizable traversability prediction model인 SAM-TP를 제안
- 20개국에서 수집한 15,347장의 road image traversability annotation dataset 구축
- 18개국, 5개 대륙에서 수집한 held-out traversability prediction benchmark 제안
- path fusion 기반 planning strategy 제안
Method

GeNIE의 전체 구조는 크게 위와 같은데 엄청 심플합니다. 먼저 RGB image가 들어오면 SAM-TP라는 저자들이 기존 SAM2를 새롭게 파인튜닝한 모듈인 traversability prediction module이 이미지 상에서 주행 가능한 영역을 예측하게됩니다. 그리고 이 traversability prediction 결과를 BEV cost map으로 프로젝션합니다. 이후 BEV map 위에서 여러 후보 path들을 샘플링하고 path fusion을 통해 안정적인 대표 path를 선택합니다. 마지막으로 선택된 path를 따라 controller가 선속도 각속도를 출력하는 방식이라고 보시면 좋을 것 같습니다. 그리고 여기서 controller 도 ERC 챌린지에 맞춰서 세팅합니다.
SAM-TP
먼저 GeNIE의 perception module인 SAM-TP부터 설명드리도록 하겠습니다. SAM2는 segmentation foundation model인데 이 SAM2를 navigation에 그대로 쓰기는 어렵습니다. 왜냐면 SAM2는 기본적으로 객체나 영역 단위를 잘 세그멘테이션하는 모델이지 로봇 입장에서 여기가 갈 수 있는 길인지를 판단해서 세그멘테이션하는 모델은 아니기 때문입니다. 그래서 이 논문에서는 SAM2를 그대로 쓰지 않고, traversability prediction에 맞게 수정한 SAM-TP를 제안합니다.
SAM2가 기본적으로 point 프롬프트나 box 프롬프트를 필요로 하는데 즉 사람이 여기야 라고 알려줘야 세그멘테이션을 수행할 수 있는데, 실제 inference 상황에서는 매 frame마다 사람이 프롬프트를 줄 수 없습니다. 그래서 저자들은 prompt encoder를 제거하고, 대신 learnable prompt token을 직접 학습합니다. 약간 이 토큰이 aggregation 토큰의 CA 버전같은데 암튼 traversable area라는 정보를 모델 이 이해할 수 있도록 학습시키는 방식으로 설계한 것 같습니다. 그리고 위처럼 학습시키기 위한 데이터 또한 저자들이 새롭게 구축합니다.
traversability annotation dataset 구축
논문에서는 SAM-TP를 학습하기 위해 FrodoBot dataset을 기반으로 다양한 outdoor scene을 수집하고 annotation을 수행합니다. 이때 SAM2가 예측한 초기 mask를 사람이 수정하는 semi-automatic annotation 파이프라인을 사용해서 효율적으로 annotation 했다고 하는데 이 과정에 대한 자세한 내용은 자세히 언급되어있지 않네요. 암튼 결과적으로 총 15,347장의 새롭게 annotation 된 데이터를 만들었다고 합니다.
그리고 추가적으로 설명드리면 저자들은 단순히 바닥처럼 보이는 모든 영역을 traversable 영역으로 annotation한 것이 아니라 로봇의 현재 위치에서 직접 도달 가능한 영역만 traversable mask에 포함시켰다고 합니다.

위는 SAM, SAM2, VLM, 그리고 GeNIE의 SAM-TP를 비교한 피규어입니다. SAM이나 VLM 대비 traversability prediction에 맞춰 학습한 SAM-TP가 주행 가능 영역을 더 안정적으로 잡는 모습을 보여줍니다.
BEV Cost Map Generation
traversability map을 BEV cost map으로 변환하는 부분에 대해서 설명드리도록 하겠습니다. 일반적으로 BEV map을 만들려면 depth 카메라를 쓰거나 라이다의 포인트 크랄우드 정보를 사용해서 3D 정보를 얻고, 이를 탑다운 뷰로 프로젝션하는 방식이 많이 사용됩니다. 근데 ERC에서 사용하는 robot에는 뎁스카메라가 없기 때문에 이런 방식을 사용할 수 없습니다. 물론 monocular depth estimation model을 사용할 수도 있지만 저자들은 실제 내비게이션 환경에서 뎁스 예측이 부정확하면 충돌이나 또랑에 빠지는 문제가 발생할 수 있다고 합니다.
그래서 GeNIE는 엄청 단순한 방식으로 BEV를 뽑아내는데 대신에 저자들은 여기서 가정을 하나 깝니다. 주행가능한 영역은 무조건 지면이다라는 가정을 깝니다. 주행 가능하다고 판단된 이미지 plane에서의 픽셀들이 무조건 지면(카메라 좌표 기준 y=0)위에 있다고 가정하고 카메라 높이는 직접 측정해서 카메라 기준 ground의 좌표는 -카메라 높이 일테니 이 정보와 카메라 인트린직을 이용해서 해당 픽셀을 3D ray로 역투영한 뒤 BEV map으로 변환합니다. 사실 이 과정이 정교하게 3D 정보를 뽑아내는 것은 아니다라는 것에 대해서 저자들은 한계로 남기긴하지만(왜냐면 지면은 실제로 높이가 울퉁불퉁 할 수 있고 오르막길 처럼 평평하지 않을 수 있기 때문) 그래도 주행 가능하다고 예측된 픽셀은 바닥 위에 있을 것이다라는 가정을 두고 local BEV cost map을 만드는 방식은 꽤나 실용적인 방식인 것 같긴합니다.
Path Planning and Path Fusion
일반적인 sample-based planning에서는 BEV cost map 위에서 여러 후보 path들을 샘플링하고 각 path의 cost를 계산한 뒤 가장 cost가 낮은 path를 선택하는데 저자들은 이렇게 단순히 가장 cost가 낮은 path를 선택하는 방식이 실제 outdoor navigation에서는 불안정하다고 설명합니다.
저자가 언급하는 문제는 크게 두 가지입니다.

첫 번째는 traversability cost(f())와 goal방향으로 가려고하는 cost(g()) 사이의 trade-off입니다. 보통 cost function을 설계할 때 traversability cost와 goal 방향으로 가려는 cost를 같이 넣고, 추가적인 가중치(베타)를 곱해서 두 항의 비중을 조절한다고 합니다. 근데 곱하는 가중치에 따라 모델이 goal을 무시하고 그냥 가기 쉬운 길만 선택할 수 있고 반대로 goal 방향으로 무리하게 가려고 하다가 장애물이나 local minima에 빠질 수 있기 때문에. 모든 상황에서 잘 동작하는 가중치 값 하나를 정하기 어렵다고 합니다.
그리고 두 번째는 path 스위칭 문제라고 합니다. 실제 로봇은 receding horizon 방식으로 매 순간 새 observation을 보고 다시 planning을 하는식으로 동작하게 되는데 이때 비슷한 cost를 가진 candidate path가 여러 개 있으면, 로봇이 매 프레임마다 조금씩 다른 path를 선택할 수 있습니다. 그러면 비슷한 cost를 가진 path들의 방향이 반대라면 로봇의 움직임이 흔들리고 불안정하게 움직일 수 있다고 합니다.
그래서 위 두문제를 해결하기 위한 저자들의 구체적인 과정에 대해서 설명드리자면 먼저 일단은 기존 방식과 동일하게 마찬가지로 BEV cost map 위에서 여러 path를 샘플링합니다. 이후 traversability cost가 낮은 top-N 개의 path를 남깁니다. 그 다음 top-N path들을 waypoint 간 유클리디언 거리를 기준으로 adaptive k-means 클러스터링을 진행합니다. 여기서 cluster 수는 silhouette loss를 기준으로 정하고 이때 cluster가 너무 세세하게 쪼개져서 너무 세분화 됬다 싶으면 각 그룹의 centroid가 사전에 정의한 거리 threshold 안에 있는지를 기준으로 너무 가까운 cluster둘울 병합하고 이렇게 병합된 각 그룹의 centroid가 대표 path로 활용됩니다.
마지막으로 대표 path가 하나만 남으면 그 path를 선택하고, 여러 개가 남으면 goal direction과 heading이 가장 잘 align되는 path를 최종 선택하고 저자들은 이렇게 각도기반으로 정렬해서 선택하는 과정을 Angular Selection이라고 합니다.

위는 path fusion이 없을 때와 있을 때의 차이를 보여주는 피규어 인데 beta값이 너무 작거나 너무 클 때 no-fusion 방식은 잘못된 path를 선택하거나 local minima에 빠지는 모습을 보였다고 하고 path fusion을 적용하면 두 상황 모두에서 더 안정적인 path를 선택하는 모습을 보여준다고 합니다.

위는 precision-recall curve와 beta 변화에 따른 path selection accuracy를 보여주는 피규어입니다. 앞서서 설명을 잠깐 뺴먹은 부분이 있는데 아까 silhouette loss를 기준으로 cluster가 너무 세세하게 쪼개져서 너무 세분화 됬다 싶으면 각 그룹의 centroid가 사전에 정의한 거리 threshold를 가지고 너무 가까운 cluster둘울 병합한다고 말씀드렸었는데 여기서 병합할 때 서로 분리되어 있어야 할 다른 경로들을 잘못 병합하는 경우는 FP로 정의하고 FN 같은 경우는 같은 구조에 속한 유사한 경로들이 병합하지 않은 경우로 정의합니다. 사실 FN은 단지 중복된 안전경로를 유지하는 것에 그치기 때문에 여기서 저자들은 FP를 내비게이션 관점에서 더 중요하게 봅니다.그래서 저자들은 병합 threshold를 결정할 때 recall보다는 precision을 더 중요하게 보고 이러한 trade-off를 (a)에서 보여줍니다. (b) 같은 경우는 beta를 튜닝하는 것만으로는 안정적인 path selection 성능을 얻기 어렵다는 저자들의 주장을 뒷받침하는 결과라고 보시면 좋을 것 같습니다.
Closed-loop Control and VLM Recovery

GeNIE는 receding-horizon control loop로 동작하는데 매 timestep마다 최신 RGB observation을 받고, SAM-TP로 traversability map을 예측하고, BEV map을 만들고, path fusion으로 path를 선택한 뒤, 그 path의 첫 waypoint를 따라가도록 control을 수행합니다. 그리고 다음 observation이 들어오면 다시 planning을 반복하는 방식입니다. 간단히 말씀 드리면 멀리 있는 최종 목적지까지 한 번에 완벽한 경로를 짜는 게 아니라 지금 보이는 짧은 구간만 계획하고, 조금 움직인 뒤 다시 새로 계획하는 방식이라고 이해하시면 좋을 것 같습니다. 추가적으로 논문에서는 VLM-assisted recovery module도 소개하는데 로봇이 갑자기 주행가능경로를 벗어나서 길을 찾기 어려운 상황에 빠졌을 때 특정 주기로 최근 observation history를 VLM에 넣고 이전에 주행 가능했던 route로 돌아가는 방법을 VLM한테 물어보는 방식입니다. 이 부분은 실제 ERC에서 한 번만 트리거 되었다고 합니다.
Experiments
논문은 크게 세 가지 평가를 수행합니다.
- traversability prediction benchmark위에서 평가
- path fusion과 path selection에 대한 평가
- 실제 Earth Rover Challenge deployment 결과
Traversability Prediction benchmark 평가

먼저 traversability prediction 성능인데 그냥 단순히 segmentation 성능이라고 보시면 좋을 것 같습니다. 그리고 위 벤치마크는 저자들이 제안한 벤치마크인데 held-out 데이터로 따로 구성하고 이 벤치마크는 18개국, 5개 대륙에서 수집한 384장의 이미지로 구성되어 있고, Normal, Difficult, Cross-Embodiment 세 가지 서브셋으로 나눠서 구성했다고 합니다.
Normal은 일반적인 조명과 명확한 path가 있는 scene이라고 하고 Difficult는 비, 그림자, overexposure, occlusion, uneven terrain, texture나 marking으로 인해 시각적으로 약간 어려운 scene이라고 합니다. 그리고 Cross-Embodiment는 학습에 사용한 robot과 다른 robot 플랫폼에서 수집한 scene입니다. 즉 하드웨어 세팅과 센서 파라미터가 달라진 상황에서 generalization을 보는 서브셋이라고 보면 좋을 것 같습니다.
먼저 성능을 보면 GeNIE의 SAM-TP가 Normal, Difficult, Cross-Embodiment 모든 조건에서 가장 높은 IoU를 보입니다. 특히 Cross-Embodiment를 보면 이 모델이 어느 정도 다른 embodiment에도 일반화될 수 있다는 것을 보여주는 결과라고 볼 수 있습니다.
그리고 SAM이나 VLM baseline과 비교했을 때도 SAM-TP가 더 안정적인 결과를 보이는데 이 부분은 foundation model을 그냥 가져다 쓰는 것보다, navigation task에 맞는 형태로 adaptation하는 것이 중요하다는 것을 보여주는 것 같습니다.
Path Fusion 평가

논문에서는 path 갈래가 여러 개 있는 road 이미지들을 모아서 human annotation 기반 test set을 만들고, path fusion과 path selection 성능을 평가합니다. 사용한 metric은 PIP, PIR, PSA인데 각각에 대해서 간단하게 설명드리면 PIP(Path Identification Precision)는 predicted path merge 중 실제로 올바르게 merge한 비율이고 PIR(Path Identification Recall)은 두 갈래case (2 branch case) 중 올바르게 branch를 찾아낸 비율입니다. 마지막으로 PSA(Path Selection Accuracy)는 최종 선택한 path가 human annotated branch와 일치하는 비율입니다.
Table II를 보면 no-fusion 방식은 beta를 튜닝해도 낮은 PSA성능을 보이고 k-means only는 recall은 높지만 precision과 최종 selection accuracy가 충분히 좋지는 않습니다. 그리고 merge step을 포함한 Euclidean Selection은 PSA가 71.4까지 올라갑니다. 마지막으로 GeNIE의 방식인 Angular Selection은 가장 높은 성능을 보입니다. path들을 fusion한 뒤 단순히 goal endpoint와 가까운 path를 고르는 것보다 heading direction이 goal direction과 잘 align되는 path를 고르는 것이 더 좋았다고 볼 수 있습니다.
ERC Competition 결과

마지막으로 실제 ERC 결과입니다. GeNIE는 Earth Rover Challenge 2025에서 아프리카, 북미, 남미에 걸친 6개국 환경에서 평가되었고 각 미션은 난이도 1부터 6까지의 difficulty level을 가지고 있고, 여러 GPS checkpoint를 순서대로 통과해야 한다고 합니다. 모든 checkpoint를 완료하면 해당 미션 difficulty만큼 full score를 받고 일부 checkpoint만 완료하면 partial score를 받는 방식으로 평가가 된다고 합니다.
그리고 robot이 전복되면 0점이고 사람 개입은 미션당 최대 3번까지 허용되지만 개입을 사용하면 스코어가 절반으로 줄어든다고 합니다.
Table III을 보면 Total score같은 경우 GeNIE는 2등 팀이랑 17% 정도 앞선 결과를 보입니다. 그리고 intervention이 0회입니다. 압도적인 성능을 보이는데 단순히 simulation에서만 성능이 좋거나 제한된 리얼 월드에서 데모를 수행한 것이 아니라 여러 국가의 실제 outdoor 횐경에서 사람 개입 없이 1등했다는 것 자체로도 실제 가져와서 적용시켜볼만한 가치가 있는 방법론인것 같습니다.
Conclusion
일단 기본적으로 controller는 continuos하게 설계하지 않고 planning 모델이 예측한 값을 가지고 선속도 각속도 명령으로 변환시킨후 1m 이동 시키고 그 다음에 다시 observstion 받고 다시 path 예측하는 식으로 약간 직렬의 형태로 동작시킵니다. 일반적으로 실제 배포 환경에서는 planning쪽은 대비 controller를 더 높은 hz로 돌리면서 continuous하게 부드럽게 움직이게 설계를 하는데 저자들은 실제 ERC의 원격 테스트 환경에서 발생할 수 있는 latency나 패킷 손실을 고려해서 이런식의 설계를 한 것 같습니다. 근데 실제로 이 방식이 느려서 타임오버로 하나의 시나리오에서 부분점수만을 받았다고 합니다. 그리고 저자의 방법론은 단일 프레임 기반의 주행 가능성을 예측하기 때문에 좀더 과거 관측을 활용한다면 더 좋은 성능을 보일수 있을 것 같고 저자들 또한 이 부분을 한계로 언급합니다.
그리고 제가 생각하는 이 방법의 가장 큰 장점은 해석 가능하다는 점인 것 같습니다. 이 방식은 기존 NoMaD 류의 E2E 방법론과는 다르게 약간 Modular 식의 방법론인데 결국 로봇이 잘못된 길을 갔다면 BEV 맵위에서의 path 후보들과 traversability map을 직접 볼 수 있기 때문에 모델이 왜 이러 선택을 했는지 분석하기 좋은것 같습니다. 그리고 정답은 없겠지만 뭔가 실전측면에서 봤을 때 해당 방법론이 NoMaD 류의 방식보다 더 현실적인 방식이 아닐까 생각이 듭니다. 물론 이 방식 같은 경우는 segmentation 모듈을 학습시키기 위한 데이터, path planning을 위한 데이터도 있어야하고 각각을 위한 설계도 해야한다는 측면에서 실제 구현측면에서는 더 복잡할 수 있을 것 같긴 합니다. 그래도 해당 논문은 심플하고 실용적으로 잘 구현한 것 같습니다. 이만 리뷰 마치도록 하겠습니다. 감사합니다.
안녕하세요 우현님 좋은 리뷰감사합니다.
한가지 질문이 있어 남깁니다.
path fusion도 그렇고 traversability cost가 가장중요한거같은데 이것은 segmentation 이랑 평가랑 유사한거같은데 이것의 신뢰도로 평가되는건가요 ? ?
감사합니다