Open ranahanocka opened 5 years ago
Thanks for letting me know. I see what I can do, although I would appreciate a pull request if you find the time.
I second this! Nice repo @ranahanocka !
If I had more time, I'd help out!
Hi, I'm trying to implement MeshCNN with PyTorch Geometric. Since I'm new with PyTorch Geometric and the basic stuff of graphs I would appreciate your help and comments. I would like to implement the first layer which is the mesh convolution: According to the MeshCNN paper:
One important note is that each edge holds a feature vector, not each node, therefore we can think of it as the edges are the nodes in a dual graph:
I've planned to implement it as the following: edge_index - a 2d Tensor with shape of 2xE, it holds all the edge connections to each other. In the example above: [[0, 0, 0, 0, 0, 1, 2, 3, 4, ...], [0, 1, 2, 3, 4, 0, 0, 0, 0, ...]] x is a tensor with all the features for all the connections. In the message function I've created the actual features (e, |a-c|, a+c, |b-d|, b+d) and used nn.Linear layer instead of convolution layer. Next, an aggregation function applied - "add". Last, the update function will return the aggregation output.
Do you think this is the correct way (using linear layer + aggregation "add" instead of convolution)?
Thanks
Yes, Linear
layer and "sum" aggregation is the way to go to implement MeshCNN IMO. However, as far as I can see, edge indices needs to be sorted to guarantee correct computation of e_1
, e_2
, ...
Hi, I am planning to send a pull request in one of the next weeks for MeshCNN layers. In order to make it easier for me, I will appreciate if you could advise about the following modules:
Mesh augmentations, Mesh features and Mesh utils should be on different files but are not classes.
My questions are:
Thanks!!!
Thanks for your interest in contributing.
Mesh
class or is Data
sufficient?MeshCNNPrepare
should be implemented as a transform in torch_geometric.transforms
.It would be great to have a unit test for MeshConv
, MeshPrepare
and MeshPool
, but those are not mandatory. We can create them afterwards.
A full example to show-case its usage would be awesome :)
Thanks
I support this idea! I would love to see MeshCNN here. Are there any updates on when we might be merging?
@Omri-L
I notice you have a fork w/ some progress on mesh cnn. How close is that to functioning?
@Omri-L @rusty1s any updates on this? I think MeshCNN would be an important addition to PyG and offer my help to finish things up.
It would be so awesome if you could add MeshCNN to PyTorch Geometric. We have just released the code (PyTorch)