Complementary Pseudo Multimodal Feature for Poing Cloud Anomaly Detection(CPMF)_논문정리
Related Work
1. 2D_Anomaly Detection
2D AD 는 두가지 모델로 구성된다.
1.1 feature 추출
목표: 표현이 뛰어난 특징 추출 (이상적으로는 정상 및 비정상 feature 가 서로 다른 분포를 가지며 쉽게 구별 가능해야한다.)
1.2 feature modeling
목표: 정상 feature 의 분포를 학습하여 모델링. 비정상 feature 가 입력될 경우 정상 분포에서 벗어나도록 설계
초기 모델
AESSiM, RIAD, DRAEM, Cutpaste
초기 방법들이 상당한 성능을 보였음에도 pre-trained 모델이 AD 모델에서 효과적이었다.
2. 3D_Anomaly Detection
PCD 이상 탐지를 위한 feature 모델링 모듈은 이미지 이상탐지 기법의 영향을 크게 받았다.
그러나, 이미지와 PCD 의 특성이 크게 다르므로 3D-PCD AD feature 추출 모듈은 새롭게 설계될 필요가 있다.
2.1 3D-ST
자가지도 학습 기법 개발
2.2 BTF
전통적인 Handcraft PCD 기술의 효과 강조(기존 학습기반 모델들은 낮은 성능을 보였기 때문에)
원인: 소규모 PCD Dataset 에서 pre-trained feature 의 전이 능력이 부족함.
다만, 휴리스틱한 설계 방식을 쓰려고 해도 PCD 데이터에서 의미정보를 거의 포착하지 못한다.
3. PCD Feature 학습
기존 방법: 대부분 3D Modality 에서 직접 PCD Feature 추출
또한 기하정보를 모델링 하기 위해 휴리스틱한 설계 방식에 의존한다.
3.1 PFH
한 점과 그 주변 점들 사이의 기하학적 관계와 법선 벡터를 기반으로 구성
3.2 FPFH
PFH 의 계산속도와 효율성을 향상시킨 버전으로, 선택한 임의의 기준점과 이웃들간의 관계만을 파악한다.
Introduction
BTF 논문에서 이전 3D AD 기반 모델들을 정리해놓은 표이다.
위와 같이 3D AD 분야에서는 딥러닝 기반 모델들보다 Handcraft 기반 모델들의 성능이 더 좋음을 확인할 수 있다.
BTF 는 이러한 문제의 원인을 대상 객체와 pre-trained dataset 간 도메인 분포 차이로 보고있으며, 이는 사전 학습된 PCD(Point Cloud Data) 특징의 낮은 전이 능력으로 이루어진다.
따라서 CPMF 는 3D Handcraft 기술을 기반으로 Local 적인 기하학적 정보를 포착하고, Pre-trained 2D neural net 을 통해 PCD(Point Cloud Data)에 내제된 의미정보를 활용하는것을 목표로 삼고 있다.
Proposed Method
1. 3D Modality Feature Extraction
Handcraft PCD 기술 사용 : 인접한 점들의 local 정보
사용모델 FPFH
2. 2D Modality Feature Extraction
2.1 3D to 2D Projection and Rendering & Multi-view Image
2.1.1 3D -> 2D 랜더링
3D -> 2D 투영 및 랜더링 된 Multi-view Image : I_0,I_1,...,I_NV
*R : 랜더링 함수
*C : 카메라 매개변수
랜더링 함수 R는 3D Point Cloud P_3d를 카메라 매개변수 C를 사용하여 2D 이미지 I로 변환함.
2.1.2 3D -> 2D 투영
*K : 카메라 내부 행렬 (3D point 를 2D pixel 로 변환)
*T : 카메라 외부 행렬 (3D 좌표계를 카메라 좌표계로 변환)
* 1/Z_c : 깊이 정보로 정규화
3D 공간의 feature point 가 2D 이미지에서 어떤 픽셀에 매핑되는지
2.2 Pre-trained 2D Neural Networks & Multi-view Feature Maps
해당 논문에서는 사전학습 모델로 ResNet 사용
*F_I : 이미지 Feature 추출 함수
*F_Ik: k번째 이미지 Feature Map
2.3 2D to 3D Alignment and Aggregation
2.3.1 2D to 3D Alignment
2D -> 3D 정렬을 위해 feature map 을 원본 이미지와 동일한 해상도로 업샘플링
이후,
*F_2D,k,i : k 번째 시점에서 i번째 3D 점의 2D 특징
*F_Ik(P_2D,k,i): 2D 이미지에서 3D 포인트 P_2D,k,i 에 해당하는 픽셀의 특징 값
즉, 2D 이미지에서 특정 픽셀 특징을 찾아 해당하는 3D Point 에 매핑하는 과정
2.3.2 Aggregation
*N_v: 시점(view)의 개수
*F_2D,k: 각 시점에서 얻은 2D 특징
Average Pooling 을 통해 다양한 시점의 정보를 결합하여 최종적인 F_2D 특징 생성
3. Aggregation
왜?
2D, 3D 특징은 크기가 다를 수 있다.
따라서 단위 벡터로 정규화 하여 크기를 맞추고 균형있게 반영하기 위해 Feature 정규화 및 결합을 진행한다.
*F_2D,i/F_3D_i : 2D 및 3D 특징벡터
각각 L2 norm 으로 나누어 정규화
최종 결합
4. Anomaly Detection
4.1 Memory Bank
Train 단계에서 추출된 CPMF 특징을 Memory Bank 에 저장
4.2 Nearest Neighbor Search
Test PCD 에서 CPMF 특징 추출
=> Memory bank 내에서 가장 가까운 Nearest Neighbor 특징을 찾음
가장 가까운 feature 와 distance 를 계산하여 Anomaly Score 부여