Giter VIP home page Giter VIP logo

ppack's Introduction

Phasepack for Python

This is a python implementation of the Phasepack library (https://www.cs.umd.edu/~tomg/projects/phasepack/).

The Phasepack module is a very complete set of methods for the phase retrieval problem, which arise in many physical applications. It was originally written in MATLAB and primarily devised to easily benchmark many state of the art phase retrieval algorithms.

This is a work in progress and just a few of the methods are currently implemented, but it's structure will easily allow the translation of the missing ones. The name of the files and methods were roughly kept the same, just changed to underscore notation and some names were pythonized. Also, phasepack has become a package with initializers and solvers as submodules.

Up to now Fineup's algorithm and Truncated Wirtinger Flow method are working, along with a few test problems to test them, the rest of the modules will be soon implemented.

Some details

The original package used function handlers to perform least squares, eigenvectors and matrix vector products in an efficient way. In a similar fashion, this version uses scipy's LinearOperators, which allow the same operations to be performed with the same philosophy. Results and options have been placed in containers along with some methods to manage them and generic math operations and algorithms lie in its own file.

Installation (temporary)

First download or clone the phasepack package

git clone https://github.com/jubujjamer/ppack.git

Then, it is highly recommended to run this module using a binary installation of numpy and scipy (for efficiency sake, don't use pip or it will run too slowly). In order to do so, create a new conda environment with it's clean dependencies

conda create -n ppack-env python=3.6 numpy scipy

Before proceeding, activate the environment

source activate ppack-env

or (in windows)

activate ppack-env

Once done, cd to the ppack folder and proceed to install the module

cd ppack
python setup.py install

Now you are free to test the examples image_reconstruction.py and signal_reconstruction.py after activating the environment.

python examples/image_reconstruction.py

Who created Phasepack?

Rohan Chandra - University of Maryland Ziyuan Zhong - Columbia University Justin Hontz - University of Maryland Val McCulloch - Smith College

…and faculty advisors Christoph Studer - Cornell University Tom Goldstein - University of Maryland

Who am I?

Juan M. Bujjamer - FCEN - University of Buenos Aires

Engineering PhD Student, supervised by PhD Hernan E. Grecco

Please, contact me at [email protected]

ppack's People

Contributors

jubujjamer 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.