[ML筆記] 3D Vision
3D Vision
1. 本篇是台大電機王鈺強老師 DLCV 課程筆記
2. 課程網站: http://vllab.ee.ntu.edu.tw/dlcv.html
3. 本篇主要紀錄 3D Vision 領域相關的技術概念
如何表示 3D 的影像?
- Multi-view RGB-D images 用超多不同角度的圖片表示,加入深度資訊
- Voxels 用一格小方塊小方塊去紀錄,物體是否有佔據這個空間位置
- Polygen Mesh 利用很多小三角形
- Point Cloud 一堆點的集合
- set of points 每個 point 是一個 (x,y,z) 座標
- 至於 set 裡面每個點存放的順序不影響整張圖
因此對於同一張3D圖,資料點存放的順序資訊可能會有很大的差異
3D Perception
想想看 CNN 是否可以用在以下 3D 資料當中
- Multi-view RGB-D images -> 可以
因為 input 就是一串 set 的影像 - Voxels 用很多小格子 -> 可以
但要做不同方向的 CNN - Mesh -> 不行
- Point Cloud -> 不行
Multi-view Images
Multi-View(MV)
MVCNN:
Voxels
用很多小方塊來表示物體,如果物體有出現在方塊中就記錄為 1 反之為 0
可以做 x,y,z 三個方向的 Convolution
但需要花很多 memory 去存每一個 voxel
Point Cloud
特性
- Set of points
- un-ordered set
- each point (x,y,z)
因此如果有 N 個點,就是一個 matrix
PointNet
處理 Point Cloud 的資訊
input N 個點,每個點維度是 3 (x,y,z)
把 N 個點過很多 NLP 轉換成 1024 維度的 feature
再對每一個 feature 維度去做 pooling
限制:沒有辦法描述顏色資訊
3D R2N2 for Voxel Reconstruction
3D Recurrent Reconstruction Neural Network (3D-R2N2)
利用 auto encoder 搭配 LSTM 來重建影像
這樣的好處是,input 可以同時支援 single image 與 multiple image
Point Set Generation
目標: input 2D 影像
output: 3D 影像 point set
Loss function: Chamfer distance
S1, S2 代表兩個 set 兩個點集合
S1 代表 prediction output
S2 代表 ground truth output
分別去看對於 S2 裡面每個點跟 S1 裡面每個點的距離
以及 對於 S1 裡面每個點跟 S2 裡面每個點的距離
這樣的好處是, S1 跟 S2 的維度可以不同!
NeRF: Representing Scenes as Neural Radiance Field
目標:
給幾個視角的影像
要把背後的 implicit function 找出來
然後生成其他視角的樣子
perform novel view synthesis
Input:
multi-view images + camera poses
Output:
3D representation (neural radiance field)
給空間中的點,加上 跟 代表角度資訊, 跟空間中的位置有關
過一個 Deep learning 的 Function 去學中間的 implicit function
NeRF 的限制:
只能 train 在同一個場景
需要同一個場景下多角度圖片
關於 NeRF 的詳細設計附上 Paper 連結
https://arxiv.org/pdf/2003.08934.pdf
相關文章整理
留言
張貼留言