Giter Site home page Giter Site logo

feastnet's Introduction

feastnet's People

Contributors

nitika-verma avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

feastnet's Issues

get_slices

Hi Nitika,
could you please explain in a bit more details, how exactly get_slices works, especially at the point where gather function is called. And also, how is adj represented, you say that it is a list of neighbour's indices, but it should be a tensor, and if it a tensor, is it just 0 and 1?
Thanks in advance!
Andrej

Parameters for FAUST dataset

Dear Mrs. Verma,
which values do you use for N (according to the paper) or the batch_size (according to the code) in the case of the FAUST dataset?
Will you provide your routines for loading the FAUST data?

Best regards,
Martin.

Performance with vertices re-ordering

Hello.

I have used your code to train your model on the FAUST dataset (80/20 training/evaluating) and obtains an accuracy of 0.92 after 175k iterations.
However, if I simply change the order of the vertices in the mesh (and accordingly re-index the faces and adapt the labels), the accuracy from the learned model drops to near 0.

Is that expected behavior, or have I done something wrong ?

My understanding is that the learned weights Wm have no relation to the mesh topology only to its surface, and that the learned weight function qm is only sensitive to the neighbors order, which should not change by simply re-ordering the vertices.

Pooling

Hi Nitika, thanks for sharing the project! I wonder if you have used pooling/unpooling in the current code? I saw 'custom_max_pool' but no usage of it. Thanks!

load the data

You will need to sign up here to get it and create/read the files as highlighted in point 2.

I can not understand the above part , "create/read the files as highlighted in point 2".
And,I don't know which data must beloaded.
(example)
x(input) :vertex(from tr_scan_000.ply to tr_scan_099.ply)
adj(train_adj) :mesh(from tr_scan_000.ply to tr_scan_099.ply)
y_(label) :ground_truth_vertices(from tr_gt_000.txt to tr_gt_099.txt)

I load the data"tr_scan_000.ply",but 'mesh' don't fit "shape=[BATCH_SIZE, NUM_POINTS, K]".
So should I create function that makes "y_(label)" data that fit "shape=[BATCH_SIZE, NUM_POINTS, K]".
('mesh' number doesn't correspond vertex number.)
[tr_scan_000.ply]
'mesh': v1 v2 v3
0 130176 7952 105406
1 7099 6131 6111
2 44554 25566 59072
3 1195 82888 82898
4 125943 80471 3402
5 3102 3017 3105
6 48371 46964 51590
7 78198 72749 18518
8 10977 8871 8894

Please explain it concretely.

TakoyakiTako.

Bug in get_slices()

Hi Nitika,

there seems to be a bug in get_slices() that causes all elements of the batch (except for the first) to be indexed wrongly. In src/model.py, line 92 should be adj_flat = adj_flat*(num_points+1) instead of adj_flat = adj_flat*in_channels.
As a simple test case, use return tf.stop_gradient(tf.convert_to_tensor([[[1., 0., 0.], [0., 1., 0.], [0., 0., 1.]]])) for weight_variable, return tf.stop_gradient(tf.convert_to_tensor([0., 0., 0.])) for bias_variable, and then use a single conv layer like this: net = custom_conv2d(net, adjacency, 3, M=1, translation_invariance=False) (where the vertex features are simply the xyz coordinates). That should be a Laplacian smoothing, but the results looked only correct for the first element of the batch for me. With the change from above, all elements look good.

Regards,
Edgar

how to prepare dataset?

Hello, can you share your code or ideas about how to prepare the training and test dataset? Thanks!

Replicate the paper results

Thank you for sharing this code.

Could you please explain further how to reproduce the paper results?

  1. Do you have some further snippets to run the code?
  2. get_model() seems to provide a skeleton for the shape segmentation but not the architecture reported in the paper. There should be Lin512-Lin2048-MaxPool before the last two dense layers, right?
  3. The output channels are all set to 8, e.g.,
    out_channels_fc0 = 8
    Shouldn't that be 16, 32, 64..., to reproduce the paper?
  4. Can you provide the code for the shape correspondence problem?

Thank you.

Edit: For point 2., I realise now that the provided architecture matches the single scale model.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.