Skip to content

💻 Numerical experiments for my master's thesis, showcasing unrolled NESTA to recover images from Fourier measurements via TV minimization.

License

Notifications You must be signed in to change notification settings

mneyrane/MSc-thesis-NESTAnets

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MSc-thesis-NESTAnets

Numerical experiments for my master's thesis, showcasing unrolled NESTA (NESTAnets) to recover images from Fourier measurements via TV minimization.

Requirements

The experiments are written in Python and can be run on any Linux distribution, provided the right Python version is packaged.

To run the experiments without issues, these were run with Python 3.10 and using

Package Version
matplotlib 3.6.2
numpy 1.24.1
Pillow 9.4.0
scipy 1.10.0
seaborn 0.12.2
torch 1.13.1

We recommend using these versions or later versions. For convenience, a requirements.txt is provided in the repository for ease of installation via pip.

Running the experiments

To run any of the experiments, we recommend using a Python virtual environment to set things up.

Below we assume the Bash shell is used. Proceeding, first create the virtual environment and source it:

$ mkdir env
$ python3 -m venv env
$ source env/bin/activate

Afterwards, clone the repository and then install the nestanet package defined in setup.py. This will install the requirements above as dependencies.

(env) $ git clone https://github.com/mneyrane/AS-NESTA-net.git
(env) $ cd AS-NESTA-net
(env) $ pip install -e .

Alternatively, if in the future some incompatible changes are made to the required packages, modify the final pip command above to

(env) $ pip install -r requirements.txt

All the experiments can be run on a desktop computer except the cluster version of the stability experiment (CC_stability_batch.sh and CC_stability.py). For further details, see experiments/CC_stability/README.md.

Issues

You can post questions, requests, and bugs in Issues.

Acknowledgements

The unrolled NESTA implementation and experiments are directly adapted and extended from the NESTANet1 paper (by myself and Ben Adcock), which itself is adapted from the unrolled primal-dual iteration FIRENETs.

Footnotes

Footnotes

  1. You may instead be looking for the experiments of the related paper NESTANets: stable, accurate and efficient neural networks for analysis-sparse inverse problems, by myself and Ben Adcock. They are here.

About

💻 Numerical experiments for my master's thesis, showcasing unrolled NESTA to recover images from Fourier measurements via TV minimization.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published