GithubHelp home page GithubHelp logo

zhl6 / megapixelao Goto Github PK

View Code? Open in Web Editor NEW

This project forked from vccimaging/megapixelao

0.0 0.0 0.0 1.91 MB

This is the open source repository for our SIGGRAPH 2018 paper "Megapixel Adaptive Optics: Towards Correcting Large-scale Distortions in Computational Cameras".

Home Page: http://vccimaging.org/Publications/Wang2018AdaptiveOptics/

License: Other

C++ 32.81% Python 0.12% C 44.61% MATLAB 9.31% M 0.01% Cuda 11.93% CMake 1.12% GLSL 0.10%

megapixelao's Introduction

Megapixel Adaptive Optics

This is the open source repository for our paper to appear in SIGGRAPH 2018:

Megapixel Adaptive Optics: Towards Correcting Large-scale Distortions in Computational Cameras

Congli Wang, Qiang Fu, Xiong Dun, and Wolfgang Heidrich

King Abdullah University of Science and Technology (KAUST)

Overview

This repository contains:

  • An improved version of the wavefront solver described in Ultra-high resolution coded wavefront sensor in MATLAB and CUDA:

    • Linearized version, solver is either ADMM or conjugate gradient;
    • Pyramid version.
  • Adaptive optics (AO) control code in C++ and CUDA:

    • The AO control logic described in the paper;
    • SLM instant control code via CUDA-OpenGL interop.
  • Wave optics simulation code in MATLAB:

    • Simulation based on Rayleigh-Sommerfeld diffraction formula;
    • Simulation and solver for Shack-Hartmann sensor, curvature sensor (TIE based), and our coded wavefront sensor.
  • 3D printed model in Solidworks.

Prerequisite

Hardware

See the Supplementary Material for a full hardware list. For the AO code to successfully run, it requires your computer to be connected with:

Also your computer should feature with NVIDIA based graphic cards for CUDA to run.

Software

Our code has been tested on Ubuntu 16.04 and Windows 10. In theory it should also work on Mac OS X.

For MATLAB code, just plug & play.

Please refer to ./ao/README.md for a full installation guide on library dependency and how to compile the C++ and CUDA code.

Related

For our latest solver, refer to repository https://github.com/vccimaging/PhaseIntensityMicroscope.

Citation

@article{wang2018megapixel,
  title = {Megapixel adaptive optics: towards correcting large-scale distortions in computational cameras},
  author = {Wang, Congli and Fu, Qiang and Dun, Xiong and Heidrich, Wolfgang},
  journal = {ACM Transactions on Graphics (Proc. SIGGRAPH)},
  volume = {37},
  number = {4},
  pages = {115},
  year = {2018},
  publisher={ACM}
}
@article{wang2017ultra,
  title={Ultra-high resolution coded wavefront sensor},
  author={Wang, Congli and Dun, Xiong and Fu, Qiang and Heidrich, Wolfgang},
  journal={Optics express},
  volume={25},
  number={12},
  pages={13736--13746},
  year={2017},
  publisher={Optical Society of America}
}

Contact

We welcome any comments and questions. Please either open up an issue, or send email to [email protected].

megapixelao's People

Contributors

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