ranahanocka / MeshCNN

Convolutional Neural Network for 3D meshes in PyTorch
MIT License
1.56k stars 314 forks source link

Adjacency information after pooling #67

Closed Peon26 closed 4 years ago

Peon26 commented 4 years ago

Hi @ranahanocka , I have a rather basic question, how/where is the mesh passed to the next layer after pooling? In other words, to be able to have another convolution and/or pooling operation, one needs a new adjacency matrix of some sort (e.g. mesh.edges), but I have failed to find that in the code, could you please let me know where in your implementation the new adjacency (after pooling) is either taken into account or updated? Thank you in advance :)

ranahanocka commented 4 years ago

Hi @Peon26 --

Yes, the mesh data-structure is passed to both the mesh_conv and mesh_pooling / mesh_unpooling layers.

Conv doesn't change the adjacency information, but when we collapse edges in the mesh_pooling layer we modify the mesh data structures inside the mesh_pooling layer.

You can start by looking around this line of code in mesh_pool.

Peon26 commented 4 years ago

Thank you @ranahanocka