SVGA-Net: Sparse Voxel-Graph Attention Network for 3D Object Detection from Point Clouds
Abstract
- spherical voxel을 활용하여 voxel 안에는 complete-graph로 만든 후 GNN
- Voxel끼리는 Knn graph로 만든 후 GNN
- GNN 구조에서 Attention 기법을 적용
Introduction
- 그룹화 되어있는 Point set들의 관계를 지금까지는 잘 정의하지 못했음
- complete-graph를 활용해 더 좋은 local representation을 얻고 Knn graph를 활용해 set들간의 관계 설립에 효과를 주자
Proposed Method
SVGA-Net의 아케텍쳐는 크게 Voxel-graph network, Sparse-to-dense regression으로 이루어져있다.
1. Voxel-graph network architecture
1.1 Spherical voxel grouping
- p_i: vertex좌표(x,y,z)와 laser reflection intensity가 결합되어있는 포인트(4차원)
- N개의 Voxel index (정해진 radius안에서 voxel만들음)
1.2 Local point-wise feature.
- Attention layer에 들어가기 전 point feature 계산
- t는 voxel마다 다름
1.3 Local point-attention layer.
- B_m: the global attention score
- |_|(pj ): : the index of the other nodes inside the same sphere
- fj,k : the feature of the k-th nodes inside the same sphere.
- Shared MLP는 2-Layer MLP이며 3개가 stack되어 있는 상태
- B_m은 knn그래프를 통해 만든 이웃노드들 attention score ,And the final βm is the average of K neighbors.-> 모르겠음
- αj,k: the local attention score (k번째 노드에 해당하는)
- complete graph 안에서 point들 Attention score -> softmax를 이용해 norm
- (a) local complete graph: 같은 voxel안에 있는 node들이 attention score에 따라 aggregation
- (b) global KNN graph: 3-NN graph 형태를 보여주고 있으며 화살표 방향이 propagation 방향이다. voxel를로 유도된 node를 attention score에 따라 aggregation
1.4 Global attention layer.
- fg,i들은 center가 3-mlp를 거쳐 나온 voxel대표 노드 feature
- g는 global feature를 뜻하고 i는 voxel index
- m :the number of the point attention layers
- l 은 knn그래프로 만들었을때 복셀 i의 이웃노드
최종적으로 max func사용하는것은 robust한 특성을 만들기 위해서?
2. Sparse-to-dense Regression
- Block: Conv(f_in,f_out,k,s,p)-> ch,kernel,stride,padding size
- high-resolution features와 low-resolution features 합친다. (pyramid network의 효과?)
- In this way, the dense feature range of the lower level can be well combined with the sparse feature range of the higher level.
- 그런 다음 upsampling 과정과 함께 CNN을 거쳐 같은 사이즈의 feature map F를 만든다.
- original sparse feature map인 b를 F와 element-wise한다. (more densely 한 효과가있음 -> ?)
- ex) SSD는 위에서 언급한 문제를 해결하기 위해 low-level feature를 사용하지 않고, 전체 convolutional network 중간 지점부터 feature map을 추출합니다. 하지만 FPN 논문의 저자는 높은 해상도의 feature map은 작은 객체를 detect할 때 유용하기 때문에 이를 사용하지 않는 것은 적절하지 않다고 지적합니다.
Experiments
- Point-GNN 하고 비교해서 성능이 낮은 부분의 설명은 다음과 같다.
- local과 global grpah construction은 더 나은 feature를 capture할 수 있지만 80% 이상 occluded 된 물체에대해서는 local graph를 만들 수 없어서 그렇다고 설명한다.
- The slight inferiority in the two detection tasks may be due to the fact that the local graph cannot be constructed for objects with occlusion ratio exceeding 80%.
개선방안