GithubHelp home page GithubHelp logo

zhaorui-creator / lf-dfnet Goto Github PK

View Code? Open in Web Editor NEW

This project forked from yingqianwang/lf-dfnet

0.0 0.0 0.0 74.87 MB

[TIP 2021] Light Field Image Super-Resolution Using Deformable Convolution

Python 46.89% Shell 0.01% C++ 10.53% Cuda 38.95% MATLAB 3.60% Batchfile 0.01%

lf-dfnet's Introduction

LF-DFnet: Light Field Image Super-Resolution Using Deformable Convolution, TIP 2021

News: We recommend our newly-released repository BasicLFSR for the implementation of our LF-DFnet. BasicLFSR is an open-source and easy-to-use toolbox for LF image SR. A number of milestone methods have been implemented (retrained) in a unified framework in BasicLFSR.


Directly Download the Results of LF-DFnet:

We share the super-resolved LF images generated by our LF-DFnet on all the 5 datasets for 4xSR. Then, researchers can compare their algorithms to our LF-DFnet without performing inference. Results are available at Baidu Drive (Key: nudt).

Datasets:

We used the EPFL, HCInew, HCIold, INRIA and STFgantry datasets for both training and test. Please first download our dataset via Baidu Drive (key:nudt) or OneDrive, then place the 5 datasets to the folder ./Datasets/.

Requirement:

  • PyTorch 1.3.0, torchvision 0.4.1. The code is tested with python=3.7, cuda=9.0.
  • Matlab (For training/test data generation and result image generation)

Compile DCN:

  • Cd to code/dcn.
  • For Windows users, run cmd make.bat. For Linux users, run bash bash make.sh. The scripts will build DCN automatically and create some folders. See test.py for example usage.

Train:

  • Run GenerateTrainingData.m to generate training data. The generated data will be saved in ./Data/TrainData_UxSR_AxA/ (U=2,4; A=3,5,7,9).
  • Run train.py to perform network training. Note that, the training settings in train.py should match the generated training data. Checkpoint will be saved to ./log/.

Test on our datasets:

  • Run GenerateTestData.m to generate input LFs of the test set. The generated data will be saved in ./Data/TestData_UxSR_AxA/ (U=2,4; A=3,5,7,9).
  • Run test.py to perform network inference. The PSNR and SSIM values of each dataset will be printed on the screen.
  • Run GenerateResultImages.m to convert '.mat' files in ./Results/ to '.png' images to ./SRimages/.

Results in Our Paper:

Quantitative Results:

Visual Comparisons:

Efficiency:

Performance w.r.t. Perspectives:

Performance w.r.t. Baseline Lengths:

Benefits to Depth Estimation (i.e., Angular Consistency):

Performance on Real LFs:

Citiation:

If you find this work helpful, please consider citing the following paper:

@article{LF-DFnet,
  author  = {Wang, Yingqian and Yang, Jungang and Wang, Longguang and Ying, Xinyi and Wu, Tianhao and An, Wei and Guo, Yulan},
  title   = {Light Field Image Super-Resolution Using Deformable Convolution},
  journal = {IEEE Transactions on Image Processing},
  volume  = {30),
  pages   = {1057-1071},
  year    = {2021},
}

Acknowledgement

The DCN part of our code is referred from DCNv2 and D3Dnet. We thank the authors for sharing their codes.

Contact

Any question regarding this work can be addressed to [email protected].

lf-dfnet's People

Contributors

yingqianwang avatar

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.