Study
[SLAM] 6. Bundle Adjustment
이번 SLAM tutorial 에서는 BundleAdjustment에 대해 포스팅하겠습니다. 앞서 5번째 SLAM tutorial 포스팅에서는 nonlinear optimization에 대해서 설명하였습니다. BA(Bundle Adjustment)는 nonlinear optimization을 사용하는 대표적인 application입니다. Intro 우선 bundle adjustment를 언제 왜 사용하는지부터 살펴보겠습니다. 이를 위해 앞장에서 설명한 것들을 다시 overview해보겠습니다. mono-cam의 경우라하면, 연속된 이미지 두장을 통해 initialization을 합니다. 이 과정에서 Essential Matrix 혹은 Fundamental Matrix를 통해 두 image사이의 R|T 즉,..
[paper review] DS-SLAM: A Semantic Visual SLAM towards Dynamic Environments 논문 리
안녕하세요. 이번 논문리뷰는 DS-SLAM입니다. Dynamic 환경에서 semantic SLAM을 이용하여 pose estimation, mapping을 한 SLAM입니다. Introduction 우선 semantic SLAM의 정의부터 살펴보겠습니다. 최근 핫한 chatGPT에게 semantic SLAM에 대해서 물어보았습니다:) chatGPT의 답변을 정리해보면 일반적인 SLAM과는 다르게 semantic SLAM은 기하하적 정보뿐만 아니라 semantic 정보( object, scene understanding 등)의 의미도 도출합니다. 보통 딥러닝을 결합하여 환경의 객체들을 분리해내고 이를 통해 dynamic한 환경에서도 보다 정밀한 자율주행을 할 수 있도록 합니다. DS-SLAM에서는 orb-..
[paper review] DROID-SLAM (Deep Visual SLAM) 논문 리뷰
안녕하세요. 이번 포스팅은 DROID-SLAM이라는 논문을 리뷰하겠습니다. '21에 발표된 성능 좋은 Deep-based SLAM으로 그 구조를 뜯어보도록 하겠습니다. Intro 우선 visual SLAM을 살펴보겠습니다. 제가 임의로 나눠보았는데 접근방법에 따라 Direct, Indirect, Deep-based으로 나눌 수 있습니다. Direct같은 경우 보통 photometry error를 통해 optical flow를 구하고 이를 이용해서 Front-end에서 tracking을 합니다. 이거의 모든 pixel을 활용하기에 일반적으로 tracking loss 확률이 indirect보다 적습니다. back-end에서는 optimization을 수행합니다. 반면 indirect 방법은 feature와 ..
[3D Detection]Fusion Multimodal Detection(1) : DeepFusion, 3D Dual Field
안녕하세요. 오늘은 3D Detection에서 multimodal Fusion에 대해 알아보겠습니다. Detection분야에서 멀티모달이라하면 보통 camera와 lidar를 이야기합니다. Intro 위의 표는 개인적인 생각(?)을 포함하여 Fusion하는 Approach별로 나눈 표입니다. 우선 point-level방법은 raw data level에서 fusion을 해주는 방법입니다. 어떻게 보면 tightly coupled방법과 동일합니다. 문제는 image, pcd의 domain 영역이 다르기 때문에 이를 fusion method에서 어떻게 처리하는지가 제일 이슈인 방법입니다. 다음으로 proposal-level은 lidar, camera 각각 detection모델을 통해 proposal bbox를..
[Transformer] Transformer & Vision
안녕하세요. 이번 ML관련 포스팅에서는 Transformer관련하여 포스팅하겠습니다. 이미 나온지 꽤 오래되었고 많은 분야에서 활용되고 있는 아키텍쳐인데요. NLP분야에서 일찍이 탄생했지만 비전 및 다른 분야에서도 많이 활용되고 있습니다. Transfomer는 Attention is All You Need 라는 논문을 통해 처음 발표되었습니다. 제목에서도 알 수 있듯이 Transformer를 이해하려면 우선 Attention에 대해서 이해를 이해합니다. Attention 우선 attention 메커니즘은 sequence-to-sequence 모델에 적용이 됩니다. seq2seq모델은 글자나 이미지의 feature 등을 입력으로 받아 또 다른 시퀀스를 출력합니다. 이 시퀀스 모델은 encoder와 deco..
[paper review] AB3MOT 리뷰, 3D Multi Object Tracking
이번 포스팅은 AB3MOT라는 3D Multi Object Tracking 논문을 리뷰하겠습니다. 'AB'라는 의미는 3D MOT의 baseline이라는 느낌을 주기 위해 지은 이름이라고 추측됩니다 ; Intro 위의 표는 MOT관련하여 정리한 내용입니다. tracking하는 방법은 접근 방법에 따라 크게 TBD, JDT, Transformer-based 로 나눌 수 있습니다.(제가 임의로 나눈것입니다;;) 2D 에서 tracking의 baseline인 SORT알고리즘이 TBD에 해당하는데 이는 detector를 따로 두고 나온 bbox를 input으로하고 association방법을 추가하여 tracking모듈을 만듭니다. 그렇기 때문에 detector의 성능에 의존성이 있고 전체적인 아키텍쳐가 좀 커집..
[SLAM] 5. Optimization, 비선형 최적화
이번 SLAM tutorial 에서는 최적화 관련하여 포스팅하겠습니다. 최적화(혹은 수치해석)은 SLAM에서 backend부분에 쓰이는데, MAP point를 이용하여 optimization 후 odometry의 accuracy를 높이는데 보통 활용됩니다. 조금 더 구체적으로 센서 및 real world에서는 noise가 존재하는데 이 때문에 camera 센서를 통해 얻은 이미지로 odometry를 구하더라도 정확한 GT값을 얻기는 힘듭니다. visual SLAM에서는 camera가 여러 시퀀스에서 이미지를 얻습니다. 그 과정에서 한 지점을 여러 번 관찰하게 되고 이를 최적화를 사용하여 노이즈를 최소화하게 됩니다. Optimization 위키피디아의 정의를 보면 optimization이란 집합 위에서 정..
[paper review] PV-RCNN, PV-RCNN ++ 논문 리뷰
안녕하세요. 후니대디입니다. PV-RCNN, PV-RCNN++를 이번 포스팅에서 다루겠습니다. PV-RCNN PV-RCNN은 PointVoxel-RCNN은 줄임말로 3D voxel과 point-based을 모두 사용하는 프레임워크를 제시합니다. 대부분의 기존 3D detector는 voxel기반 point기반으로 분류될 수 있습니다. voxel(grid)은 보통 voxelization 혹은 BEV 맵으로 변환하고 3D-conv 혹은 2D-conv를 사용하여 feature를 추출합니다. 이 voxelization과정에서 미세한 정보손실이 발생합니다. point-based 방법은 point특성을 모두 살릴수 있지만 computing cost가 비쌉니다. 1. structure 우선 기본적인 backbone은..