iMoonLab / MeshNet

MeshNet: Mesh Neural Network for 3D Shape Representation (AAAI 2019)
MIT License
333 stars 58 forks source link

pre-train model result #4

Closed Lordores closed 5 years ago

Lordores commented 5 years ago

just try pre-train model and result shows: Accuracy: 0.1019 mAP: 0.8815 Is it correct?

And I train model under gtx 1070, shows CUDA error:out of memory. Whats your environment?

tranduytrung commented 5 years ago

The code lists the directory names for constructing the label and os.listdir returns arbitrary order , so the label is not same as author.

https://www.tutorialspoint.com/python/os_listdir.htm

thss15fyt commented 5 years ago

Thanks for your attention to our work.

  1. As @tranduytrung answered, it is caused by the different orders returned by os.listdir in different file storage systems. We will soon fix it with a mapping from type names to category indices.
  2. We use one GTX 1080Ti to train in the given configuration. If you get a out of memory error, you may need to reduce the batch_size in config/train_config.yaml to make it suitable for your environment.
Lordores commented 5 years ago

Could you plz update the tools you used to change .off to .npz and .npz to .off?

大佬给下mesh简化的方法,还有npz文件和off文件互转的工具(跪了,从npz还原回off永远模型都是破的,而且长得很诡异QWQ)

thss15fyt commented 5 years ago

Yes, we will soon release the codes to convert from .off to .npz files. But the conversion from .npz to .off is not easy to be achieved, since it lose some information. The simplification methods are discussed in #6 , but we are also looking forward to a better simplification method. (The broken cases do exist, because we restrict the number of faces in the simplification process. But the whole appearance should be correct.

Lordores commented 5 years ago

For each data file XXX.off in ModelNet, we reorganize it to the format required by MeshNet and store it into XXX.npz. The reorganized file includes two parts of data:

The "face" part contains the center position, vertices' positions and normal vector of each face. The "neighbor_index" part contains the indices of neighbors of each face.

大佬问下你在从npz还原回off怎么做的? 我是:

  1. 取‘face’中 每一行的3~12部分,即vertices' positions
  2. 去除这些vertices' positions重复部分,生成一个vertices list
  3. 通过搜寻vertices在vertices list的index,取代‘face’中的vertices' positions,生成新的 face list
  4. 根据off格式排列vertices list与 face list,生出off档案
thss15fyt commented 5 years ago

大佬问下你在从npz还原回off怎么做的? 我是:

  1. 取‘face’中 每一行的3~12部分,即vertices' positions
  2. 去除这些vertices' positions重复部分,生成一个vertices list
  3. 通过搜寻vertices在vertices list的index,取代‘face’中的vertices' positions,生成新的 face list
  4. 根据off格式排列vertices list与 face list,生出off档案

@Lordores 你好,我并没有直接做过npz到off的转换,转成npz只是为了更方便地进行训练。关于你的转换方法,描述看起来是没有问题的,如果结果有问题的话,你可以贴一下关键代码及得到的模型情况。

Lordores commented 5 years ago

如果没有使用npz到off转换 的话,请问下Figure 6的特征可视化部分是怎么得到的?

thss15fyt commented 5 years ago

如果没有使用npz到off转换 的话,请问下Figure 6的特征可视化部分是怎么得到的?

由于特征可视化中需要指定每个面的颜色,我们使用了自己的渲染代码,根据面的特征值和及npz文件中存储的顶点位置生成可视化结果。