안녕하세요 손우진입니다.
이번에 리뷰할 논문은 RGB와 열화상을 3D 공간으로 정합하는 SEAR: Simple and Efficient Adaptation of Visual Geometric Transformers for RGB+Thermal 3D Reconstruction 입니다. 요즘 VGGT 같은 feed-forward geometric foundation model이 엄청 유행인 것 같습니다. VGGT는 RGB만으로 카메라 pose랑 3D 복원을 한 방에 처리하는데, 여기에 thermal을 끼얹으면 생기는 문제들이 있는데 이를 해결하는 논문입니다. 엄청 간단합니다.
그럼 바로 시작하겠습니다!
Introduction
최근 VGGT 같이 3D foundation model들은 기존 SfM처럼 feature matching하고 iterative하게 최적화하는 과정 없이 트랜스포머 한 번 태워서 카메라 pose와 scene 구조를 예측해버립니다. 대규모 RGB 데이터로 학습되어 일반화도 좋습니다. 근데 문제는 이 모델들이 전부 RGB 입력만 가정한다는 겁니다. 실제 현장에서는 저조도나 연기처럼 RGB의 불리한 상황이 많고, 이럴 때 열화상 같은 보완 모달리티가 필요한데 기존 모델들은 어느정도는 돌아가지만 잘 되지는 않습니다. 사전학습된 VGGT에 RGB와 thermal을 같이 넣으면, 각 모달리티는 따로따로는 복원하면서도 둘이 합쳐질 때 pose와 scale이 안 맞는 분리된 두 개의 reconstruction이 나옵니다. 즉 모델이 geometric prior는 잘 갖고 있는데, cross-modal 에 대한 일관성은 없습니다. 아래 보시면 다른 방법론들에 대해서 각각 추론한 것인데 camera pose들을 보면 불일치 한것을 볼 수 있습니다.

기존 접근들은 RGB와 thermal을 같은 위치에서 pair로 찍어두고, 정보가 풍부한 RGB로 COLMAP을 돌려 pose를 뽑은 다음 이를 thermal에 그대로 넘겨주는 식입니다. 직관적이긴 한데, 두 카메라를 항상 같이 들고 다니며 pair로 찍어야 하니 데이터 모으는 비용이 많이 들고, sync 맞추기도 해야하고 생각보다 cost 가 많이 듭니다. 다른 방법으로는 Post-hoc alignment 방식인데요, 일단 RGB랑 thermal을 따로 찍어둔 뒤 나중에 두 이미지에서 공통된 특징점을 찾아 맞춰주는 접근입니다. 근데 RGB랑 thermal은 애초에 보이는 모습이 많이 다르다 보니 이 매칭이 잘 안 될 때가 많고 매칭이 어긋나면 그대로 결과가 흔들려서 안정성이 떨어진다는 한계가 있습니다. 저자들의 insight는 VGGT가 각 모달리티 따로는 잘하니까 굳이 대규모 멀티모달 재학습을 할 필요가 없이. finetuning을 통해서 modality gap만 메우면 된다는 주장입니다. 그리고 입력은 unpaired RGB-T를 전제로 합니다.
논문의 Contribution은 세 가지입니다.
- SEAR: LoRA adapter + modality-specific token + batching 전략을 결합한 경량 fine-tuning. 원본 모델 파라미터의 5% 미만만 학습하고, inference 속도도 그대로 유지합니다.
- ~15,000 RGB-T pair 정도의 적은 데이터로도 가능하다고 합니다.
- cross-spatial RGB-T 데이터셋을 새로 구축 (9 scenes, ~2,000 images).
Method
본격적인 설명에 앞서 베이스가 되는 VGGT를 짧게 짚고 가겠습니다. VGGT는 N장의 RGB 이미지를 받아 intrinsic/extrinsic, depth map, point map, tracking용 feature를 한 번에 예측합니다. 내부적으로 DINOv2로 토큰을 뽑고, 각 프레임 토큰에 학습형 camera token을 붙인 다음, frame-wise attention과 global attention이 번갈아 도는 Alternating-Attention(AA) 블록 24개를 태웁니다. 마지막 레이어 토큰은 camera head로, 중간 레이어토큰들은 depth,point map head로 갑니다.
SEAR는 이 VGGT를 거의 안 건드리고 세 가지만 추가합니다. 방법론은 너무 간단합니다

LoRA Integration
AA 모듈의 모든 linear layer와 multi-head attention에 LoRA 어댑터를 끼웁니다. 이게 끝입니다.. ㅋㅋ방법론은 너무 간단합니다. 하지만 저는 두 모달리티가 3D 공간에 잘 매핑되게 하고 싶어 늘 아쉬웠는데 이 논문이 해주었습니다.
Thermal Camera Token
VGGT는 DINOv2를 RGB tokenizer로 쓰는데, 현재 다른연구에서도 언급이 되는데 DINOv2가 재학습 없이도 thermal feature를 어느 정도 뽑긴 합니다. 근데 두 모달리티의 feature 분포가 다르다는 게 문제라 저자들은 DINOv2를 두 모달리티 공통 tokenizer로 쓰되, AA 모듈에 들어가기 전 분포를 맞추기 위해 학습형 thermal camera token 2개를 추가합니다. 기존 VGGT camera token의 thermal 버전이 생기고, 첫 프레임용 / 나머지 프레임용으로 나뉩니다. 초반 학습 안정성을 위해 RGB camera token weight로 초기화한다고 합니다. 여기서 개인적으로 살짝 의문이 드는 게, 이 thermal token이 정말 기여인가 하는 부분입니다. modality token으로 분포를 가르겠다는 발상은 이해되는데, DINOv2 자체가 thermal을 그럭저럭 토큰화한다면 token 하나 추가가 얼마나 큰 차이를 만드는지가 의문이 들긴합니다. 이건 ablation에서 확인할 부분이라 일단 넘어가겠습니다.
Batching Strategy
학습할 때 같은 pose를 공유하는 RGB-T 쌍이 한 배치에 안 들어가도록, 같은 scene에서 뽑되 pose가 안 겹치는 독립적인 RGB/thermal 이미지들로 배치를 구성합니다. 왜냐면 paired 데이터를 그대로 넣으면 모델이 같은 위치에서 찍힌 RGB-T는 픽셀이 유사할 거라는 생각에 의존한다고 합니다. 이걸 방지하고 viewpoint를 가로지르는 inter-modal 관계를 학습하게 강제하는 겁니다. 배치 안 thermal 비율 \tau \sim U(0,1)로 랜덤 샘플링해서 임의의 RGB-T 조합을 처리할 수 있게 했습니다.
Optimization은 VGGT loss를 그대로 가져옵니다. camera pose에 대한 Huber loss와 uncertainty-aware depth loss를 결합한 형태이고 \lambda_{camera}=5.0 입니다.

정리하면 SEAR는 새로운 구조를 설계한 게 아니라, frozen VGGT 위에 LoRA로 정렬을 학습 + thermal token으로 분포를 구분 + batching으로 제목 처럼 simple & efficient adaptation입니다.
Datasets
데이터셋은 짧게만 짚겠습니다.

자체 데이터셋은 9개 scene이고, 각 scene을 서로 다른 두 trajectory로 촬영해서 cross-spatial 평가가 가능하게 했습니다. 밝은 6개 scene은 RGB에 VGGT를 돌려서 GT pose를 만들었고, 야외 주야간 3개 scene은 저조도라 RGB도 thermal도 신뢰할 GT를 못 만들어서 정성 평가용으로만 씁니다. 학습 데이터는 ThermoScenes, ThermalNeRF, ThermalGaussian, ThermalMix, Radar Forest 등 5개 공개 데이터셋을 합쳐 66 scene(~15,000 RGB-T pair)을 48 train / 18 val로 나눴습니다.
의문이 드는건.. GT pose를 VGGT를 RGB에 돌려서 만드는 부분은 살짝 애매하긴 합니다. 이게 받아드려질지는 잘 모르겠습니다. SEAR가 VGGT 기반이고 RGB pathway는 frozen이라, RGB pose는 사실상 GT랑 자동으로 맞아 떨어지게 되서.. 하지만 저자들도 이걸 알아서 목표는 VGGT의 RGB pose 정확도 개선이 아니라 cross-modal alignment라 bias가 안 된다고 방어한거 같습니다.
Experiments
이제 실험 파트입니다.

Table 1부터 보겠습니다. 비교는 멀티모달 지원을 안하는 모델들(COLMAP, DUSt3R, MASt3R, pretrained VGGT)과 feature matching 기반 MAELoFTR, MINIMAROMA인데, SEAR가 public 데이터셋에서 AUC@30 70.0 크게 앞섭니다. 무엇보다 베이스인 VGGT가 22.9였던 걸 LoRA 어댑터만 얹어 70.0까지 끌어올린 게 이 핵심입니다. method에서 각 모달리티는 잘하는데 합칠 때 어긋난다는 그 갭을 메운 거라고 보시면 됩니다. 다만 COLMAP이 일부 칸에서 더 높게 나오는 건 성공한 쉬운 프레임만으로 점수를 내기 때문이고, SEAR는 Reg. 100%를 유지하면서 저 수치를 냈으니 결이 다릅니다. 속도도 VGGT와 거의 같습니다.

Fig 3은 이를 정성적으로 보여주는데, 멀티모달 말고 개별로 돌린 DUSt3R, MASt3R, VGGT이 모달리티별로 align이 맞지않은 3D 표현을 만들고 scale,정렬이 어긋나는 반면 SEAR는 multimodal point cloud를 복원합니다. point cloud 정량 지표(Table 1 우측)에서도 Chamfer 0.27로 1등인것을 보실 수 있습니다.

Fig 4의 정성 평가는 연기 낀 SmokeSeer와 저조도 scene에서 SEAR가 RGB와 thermal을 한 좌표계로 잘 정렬하는 반면 MASt3R/MINIMAROMA는 thermal이 회전·스케일 틀어진 채 어긋나고 VGGT는 일관성이 없음을 보여줍니다. 근데 여기서 짚고 싶은 게, 이 논문이 abstract부터 미는 셀링 포인트가 “저조도·연기 같은 degraded 환경에서도 된다”인데 정작 그 degraded scene들은 GT가 없어 전부 정성 평가로만 빠진다는 점입니다. 제일 어필하고 싶은 주장이 가장 약한 근거로 받쳐지는 구조라 reviewer라면 충분히 지적 할 요소 같습니다.

분석 실험 두 개는 인정할 만합니다. 먼저 Fig 5는 모델에 넣어주는 이미지 묶음에서 thermal이 차지하는 비율 τ를 0~1로 바꿔가며 pose 정확도를 본 실험입니다. 여기서 입력은 같은 위치에서 동시에 찍은 RGB-thermal 짝이 아니라, 서로 다른 시점에서 따로 찍힌 RGB와 thermal 이미지를 한 묶음에 섞어 넣은 형태라는 점을 짚어둘 필요가 있는데요. 즉 τ=0이면 전부 RGB, τ=1이면 전부 thermal, τ=0.5면 반반입니다. 저자 해석은 τ가 0.75까지 올라가는 동안은 thermal 특유의 번짐 때문에 pose 단서가 약한 이미지 비중이 커져 정확도가 떨어지다가, 0.75를 넘으면 거의 thermal-only 단일 모달리티에 가까워지면서 두 모달리티를 맞춰야 하는 alignment 부담 자체가 줄고 thermal view 수가 많아져 scene coverage가 늘어 오히려 회복된다는 겁니다.

그리고 개인적으로 이 논문에서 제일 설득력 있는 실험은 Fig 6의 layer별 cosine 분석입니다. AA 모듈 각 layer에서 RGB와 thermal 토큰의 분포 차이를 재는데, VGGT는 layer 10 이후에 geometry를 복원한다고 저자는 얘기하면서 그 지점부터 VGGT는 분포 차이가 벌어지는 반면 SEAR는 끝까지 낮게 유지됩니다. geometry를 만드는 구간에서 두 모달리티를 붙여놨다는 분석이 좋았습니다.


문제는 ablation입니다. 저자들이 5개 대안을 검증한 결과(Table 2, 3), AUC@30에서 SEAR(68.4)가 1등이 아니라 Global-Only(69.1)가 더 높고, camera token을 아예 안 쓴 모델과는 차이가 없습니다. 이게 의미하는 것이 thermal camera token이 있으나 없으나 유의미한 차이가 없다는 겁니다. 결국 LoRA 적응 그 자체와 global attention이 alignment의 핵심 인것 같고 나머지는 애매한 것 같습니다. 그래도 두 카메라를 동일 3D 공간에 올린 것이 흥미로웠던 논문 인 것 같습니다 .
감사합니다
안녕하세요 우진님 좋은 리뷰 감사합니다.
ablation에서 global-only가 SEAR보다 성능이 더 좋고 thermal camera token을 제거해도 성능 차이가 거의 없고 SEAR의 핵심 컨트리뷰션은 thermal token이나 전체 설계라기보다 로라 적응인 것처럼 결론부에 얘기해주셨는데 그럼 왜 최종 방법을 global-only가 아니라 SEAR로 선택을 했는지가 궁금합니다. 감사합니다.
리뷰 잘 읽었습니다.
리뷰에서 degraded RGB 환경에서 thermal을 활용하는 것이 중요한 motivation이라고 읽은것 같은데요,
실제 저조도/연기 scene은 GT가 없어 정성 평가 위주로 제시된 것 같습니다. 그럼 SEAR가 가장 강조하는 degraded setting에서의 강건성을 정량적으로 입증했다고 보기에는 부족하지 않은지 우진님 생각이 궁금해지네요