Git Product home page Git Product logo

dlgm's Introduction

Deep Learning of Graph Matching

This is an implementation of the paper "Deep Learning of Graph Matching", CVPR, 2018. Note: This is not an official implementation.

To run the above code, install the dependecies as listed in environment.yml. The easiest way to do this is to setup a conda environemnt

conda env create -f environment.yml

conda activate dlgm

Then update the parameters in the config_sintel.py script according to your hardware availability and needs.

Training the network

python main.py --dataset sintel --data_path path/to/sintel/root

Note that only sintel dataset is supported as of now. We are not able to exactly reproduce the results of the paper. But the graph matching layers corresponding to optical flow has been tested for correctness. A primitive implementation of the Bistochastic layer is available but is not tested.

Contributing

There is lot of scope for improvements with respect to the performance. PR's and discussion in this regard or any general matter on this topic is welcome :)

dlgm's People

Contributors

danielettog avatar ninodimontalcino avatar yannadani 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dlgm's Issues

how to compute the bi-stochastic matrix

Hello, In the main.py/class VGG_graph_matching/biStochastic_forward() function:

S = v.view(n,m)
for i in range(N):
        S = torch.mm(S, torch.mm(torch.ones(1,n),S).inverse())
        S = torch.mm(torch.mv(S, torch.ones(m,1)).inverse(), S)
return S

The A.inverse() function need the matrix A to be a square matrix, so this cannot work?

Error while running main.py

Hello,

I tried running the command python main.py --dataset sintel --data_path ~/Desktop/jug-pc-x/05_Repositories/dlgm/ and run into the following error. Any suggestions on what could be the issue? (I have cudatoolkit 9.0 and pytorch 1.1.0 setup in the environment). Thank you for your time!

log path logs/sintel/sintel_seed-7.log
Using 1 GPUs!
Traceback (most recent call last):
  File "main.py", line 294, in <module>
    model = model.to(args.device)
  File "/home/manan/.local/lib/python3.7/site-packages/torch/nn/modules/module.py", line 386, in to
    return self._apply(convert)
  File "/home/manan/.local/lib/python3.7/site-packages/torch/nn/modules/module.py", line 193, in _apply
    module._apply(fn)
  File "/home/manan/.local/lib/python3.7/site-packages/torch/nn/modules/module.py", line 199, in _apply
    param.data = fn(param.data)
  File "/home/manan/.local/lib/python3.7/site-packages/torch/nn/modules/module.py", line 384, in convert
    return t.to(device, dtype if t.is_floating_point() else None, non_blocking)
RuntimeError: CUDA error: unknown error

about the experiments results

Hi, thanks for your reproducing. And I want to know have you test the code on the datasets in the paper? I mean I will be very appreciated if you could provide more information about this paper.

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.