《Keras 3 使用 PointNet 进行点云分类》
作者:David Griffiths
创建日期:2020/05/25
最后修改时间:2024/01/09
描述:实现 PointNet for ModelNet10 分类。
在 Colab 中查看
GitHub 源
点云分类
介绍
无序 3D 点集(即点云)的分类、检测和分割 是计算机视觉中的核心问题。此示例实现了开创性的点云 深度学习论文 PointNet (Qi et al., 2017)。对于 PointNet 上的详细介绍,请参阅此博客 帖子。
设置
如果使用 colab,请先使用 安装 trimesh。!pip install trimesh
import os
import glob
import trimesh
import numpy as np
from tensorflow import data as tf_data
from keras import ops
import keras
from keras import layers
from matplotlib import pyplot as pltkeras.utils.set_random_seed(seed=42)
加载数据集
我们使用 ModelNet10 模型数据集,这是 ModelNet40 的较小的 10 类版本 数据。首先下载数据:
DATA_DIR = keras.utils.get_file("modelnet.zip","http://3dvision.princeton.edu/projects/2014/3DShapeNets/ModelNet10.zip",extract=True,
)
DATA_DIR = os.path.join(os.path.dirname(DATA_DIR), "ModelNet10")
Downloading data from http://3dvision.princeton.edu/projects/2014/3DShapeNets/ModelNet10.zip
0/473402300 [37m━━━━━━━━━━━━━━━━━━━━ 0s 0s/step
8192/473402300 [37m━━━━━━━━━━━━━━━━━━━━ 1:06:44 8us/step
40960/473402300 [37m━━━━━━━━━━━━━━━━━━━━ 26:17 3us/step
90112/473402300 [37m━━━━━━━━━━━━━━━━━━━━ 17:49 2us/step
188416/473402300 [37m━━━━━━━━━━━━━━━━━━━━ 11:20 1us/step
385024/473402300 [37m━━━━━━━━━━━━━━━━━━━━ 6:55 1us/step
786432/473402300 [37m━━━━━━━━━━━━━━━━━━━━ 4:03 1us/step
1581056/473402300 [37m━━━━━━━━━━━━━━━━━━━━ 2:21 0us/步
3170304/473402300 [37m━━━━━━━━━━━━━━━━━━━━ 1:20 0us/步
6004736/473402300 [37m━━━━━━━━━━━━━━━━━━━━ 47s 0us/步
8880128/473402300 [37m━━━━━━━━━━━━━━━━━━━━ 35s 0us/步
11902976/473402300 [37m━━━━━━━━━━━━━━━━━━━━ 28s 0us/步
14925824/473402300 [37m━━━━━━━━━━━━━━━━━━━━ 24s 0us/步
17915904/473402300 [37m━━━━━━━━━━━━━━━━━━━━ 22s 0us/步
21020672/473402300 [37m━━━━━━━━━━━━━━━━━━━━ 20s 0us/步
23977984/473402300 ━[37m━━━━━━━━━━━━━━━━━━━ 18s 0us/步
26861568/473402300 ━[37m━━━━━━━━━━━━━━━━━━━ 17s 0us/步
29958144/473402300 ━[37m━━━━━━━━━━━━━━━━━━━ 16s 0us/步
33071104/473402300 ━[37m━━━━━━━━━━━━━━━━━━━ 16s 0us/步
36175872/473402300 ━[37m━━━━━━━━━━━━━━━━━━━ 15s 0us/步
39206912/473402300 ━[37m━━━━━━━━━━━━━━━━━━━ 14s 0us/步
41902080/473402300 ━[37m━━━━━━━━━━━━━━━━━━━ 14s 0us/步
45015040/473402300 ━[37m━━━━━━━━━━━━━━━━━━━ 14s 0us/步
48021504/473402300 ━━[37m━━━━━━━━━━━━━━━━━━ 13s 0us/步
51003392/473402300 ━━[37m━━━━━━━━━━━━━━━━━━ 13s 0us/步