martinnormark / neural-mesh-simplification

Un-official and WIP Implementation of the Neural Mesh Simplification paper
MIT License
9 stars 0 forks source link

Develop the `point_sampler` network #16

Closed martinnormark closed 2 months ago

martinnormark commented 3 months ago

Create the module for sampling vertices from input meshes.

After reviewing the paper and current implementation, here are the key elements missing from the current PointSampler class to align it with the approach described in the paper:

  1. DevConv layers: The paper describes using three stacked DevConv layers.
  2. ReLU activation: Applied after the DevConv layers.
  3. Latent space: The paper mentions using a 64-dimensional hidden dimension.
  4. Inclusion score assignment: The PointSampler should assign an inclusion score to each point.
  5. Multinomial distribution sampling: Points should be sampled based on the learned multinomial distribution.
  6. Graph structure: The DevConv layer operates on a graph structure of the mesh.

To implement these missing elements, we can follow these steps:

Here's a step-by-step plan to implement these changes:

  1. Implement the DevConv layer
  2. Modify the PointSampler class initialization
  3. Implement graph creation from mesh
  4. Update the forward method to use DevConv layers and generate inclusion scores
  5. Modify the sampling method to use the learned distribution