• Stars
    star
    120
  • Rank 295,983 (Top 6 %)
  • Language
    Jupyter Notebook
  • License
    MIT License
  • Created almost 6 years ago
  • Updated about 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Single Hyperspectral Image Denoising, Inpainting, Super-Resolution

Deep Hyperspectral Prior: Single Image Denoising, Inpainting, Super-Resolution

image preview

Supplementary code to the paper O Sidorov, JY Hardeberg. Deep Hyperspectral Prior: Denoising, Inpainting, Super-Resolution in ICCV 2019 Workshops.

Get started

The implementation is based on original Deep Image Prior code by Dmitry Ulyanov.

The framework was modified to process hyperspectral data using 2D or 3D convolutions:

image framework

Requirements

  • python = 3.6
  • pytorch = 0.4
  • numpy
  • scipy
  • matplotlib
  • scikit-image
  • jupyter

Prepare the data

  • Input and output hyperspectral data is contained in *.mat files.
  • Specify a path to the file and name of the variable to read.
    For example, if data is contained in variable image:
    file_name  = 'data/inpainting/inpainting192.mat'
    mat = scipy.io.loadmat(file_name)
    img_np = mat["image"]
    
  • Use custom code or one of the *.m files located at data/%task%/ to generate *.mat file.

Run the code

  • Follow one of the proposed notebook files to get the results.
    * 2D versions tend to demonstrate better accuracy.
  • Try to modify parameters. Have fun.


Some results

Denoising:

image noise

Super-Resolution:

image sr

Inpainting:

image_inpainting



Please, kindly cite the paper if you use the code!