MCPcopy Index your code
hub / github.com/YingqianWang/LF-DMnet

github.com/YingqianWang/LF-DMnet @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
82 symbols 191 edges 9 files 0 documented · 0% updated 2y ago★ 44
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

LF-DMnet: Real-World Light Field Image Super-Resolution via Degradation Modulation

This is the PyTorch implementation of the method in our paper "Real-World Light Field Image Super-Resolution via Degradation Modulation". [project], [paper].

News and Updates:

  • 2024-04-01: Our paper is published on IEEE TNNLS. [pdf]
  • 2024-03-14: Our paper is accepted by IEEE TNNLS.
  • 2022-06-21: Codes and models are released. Welcome to try our codes and report the bugs/mistakes you meet.
  • 2022-06-17: Website is online, on which we provided comparative videos and an interactive demo.
  • 2022-05-25: Repository is created.

Demo Videos:

We show the SR results of our LF-DMnet on real LFs captured by Lytro Illum cameras. More examples are available here. Note that, these videos have been compressed, and the results shown below are inferior to the original outputs of our LF-DMnet.

https://github.com/YingqianWang/LF-DMnet/assets/31008389/73490c47-9a51-490a-a4b1-0794d4706d77

https://github.com/YingqianWang/LF-DMnet/assets/31008389/c41ae453-030b-4d58-8442-f59bed2cbc39

Preparation:

1. Requirement:

  • PyTorch 1.3.0, torchvision 0.4.1. The code is tested with python=3.7, cuda=9.0.
  • Matlab for training/validation data generation.

2. Datasets:

  • We used the HCInew, HCIold and STFgantry datasets for training and validation. Please first download the aforementioned datasets via Baidu Drive (key:7nzy) or OneDrive, and place these datasets to the folder ../Datasets/.
  • We used the EPFL, INRIA and STFlytro datasets (which are developed by using Lytro cameras) to test the practical value of our method.

3. Generating training/validation data:

  • Run GenerateDataForTraining.m to generate training data. The generated data will be saved in ../Data/Train_MDSR_5x5/.
  • Please download the validation data via OneDrive and place these data to the folder ../Data/Validation_MDSR_5x5/.

Train:

  • Set the hyper-parameters in parse_args() if needed. We have provided our default settings in the realeased codes.
  • Run train.py to perform network training.
  • Checkpoint will be saved to ./log/.

Validation (synthetic degradation):

  • Run validation.py to perform validation on each dataset.
  • The metric scores will be printed on the screen.

Test on your own LFs:

  • Place the input LFs into ./input (see the attached examples).
  • Run test.py to perform SR.
  • The super-resolved LF images will be automatically saved to ./output.

Citiation

If you find this work helpful, please consider citing:

@Article{LF-DMnet,
    author    = {Wang, Yingqian and Liang, Zhengyu and Wang, Longguang and Yang, Jungang and An, Wei and Guo, Yulan},
    title     = {Real-World Light Field Image Super-Resolution Via Degradation Modulation},
    journal   = {IEEE Transactions on Neural Networks and Learning Systems},
    year      = {2024},   
}

Contact

Welcome to raise issues or email to wangyingqian16@nudt.edu.cn for any question regarding this work.

statistics

visitors

Core symbols most depended-on inside this repo

cubic
called by 4
utils/degrade.py
LFdivide
called by 3
utils/utility.py
LFintegrate
called by 3
utils/utility.py
cal_metrics
called by 2
utils/utility.py
MultiTestSetDataLoader
called by 2
utils/dataloader.py
train
called by 1
train.py
valid
called by 1
train.py
augmentation
called by 1
train.py

Shape

Method 38
Function 27
Class 17

Languages

Python100%

Modules by API surface

model/DAnet.py33 symbols
utils/degrade.py14 symbols
utils/imresize.py10 symbols
utils/dataloader.py9 symbols
utils/utility.py7 symbols
validation.py3 symbols
train.py3 symbols
test.py2 symbols
utils/readH5.py1 symbols

For agents

$ claude mcp add LF-DMnet \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact