2017년 7월 4일 화요일

딥러닝 기반 3차원 객체 인식 VoxNet

이 글은 3차원 점군에서 객체를 인식하는 일반적인 접근법인 복셀을 이용한 VoxNet에 관한 소개이다. 이 글은 Dimatura VoxNet 레퍼런스를 참고하였다.

1. 머리말
VoxNet은 3차원 점군을 복셀로 근사화시켜, CNN을 이용해 형상을 인식한다.

2. 설치
VoxNet은 Theano와 Lasagne 를 기반으로 개발되었다. path.py, scikit-learn 모듈이 필요하다. 다음과 같이 설치한다.
git clone git@github.com:dimatura/voxnet.git
cd voxnet
pip install --editable .

3. 훈련
데이터는 ModelNet 10을 사용하였다. 이는 3D ShapeNet 프로젝트에서 얻은 것이다. 복셀화를 손쉽게 하기 위해, .mat 파일을 이용하였다. 데이터셋은 다음과 같이 얻는다.
# scripts/download_shapenet10.sh
wget http://3dshapenets.cs.princeton.edu/3DShapeNetsCode.zip 
unzip 3DShapeNetsCode
python convert_shapenet10.py 3DShapeNets
훈련은 다음과 같이 실행한다.
cd scripts/
python train.py config/shapenet10.py shapenet10_train.tar
훈련 결과는 metrics.jsonl 파일에 저장된다.

4. 테스트
테스트는 다음과 같이 실행한다.
python test.py config/shapenet10.py shapenet10_test.tar --out-fname out.npz
가시화는 다음과 같이 실행한다.
python output_viz.py out.npz shapenet10_test.tar out.html


레퍼런스



댓글 없음:

댓글 쓰기