Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/timstaley/coelacanth
Codes for EMCCD and Lucky-Imaging Analysis
https://github.com/timstaley/coelacanth
astronomy drizzle-algorithm electron-multiplying-ccd emccd optical-astronomy
Last synced: about 2 months ago
JSON representation
Codes for EMCCD and Lucky-Imaging Analysis
- Host: GitHub
- URL: https://github.com/timstaley/coelacanth
- Owner: timstaley
- License: other
- Created: 2014-06-11T13:40:56.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2014-06-24T15:56:48.000Z (over 10 years ago)
- Last Synced: 2023-03-22T11:11:29.164Z (almost 2 years ago)
- Topics: astronomy, drizzle-algorithm, electron-multiplying-ccd, emccd, optical-astronomy
- Language: C++
- Size: 473 KB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: Readme.md
Awesome Lists containing this project
README
#Coelacanth
###Codes for EMCCD and Lucky-Imaging Analysis
![logo](http://upload.wikimedia.org/wikipedia/commons/c/ce/Coelacanth-bgiu.png)*There's life in the old fish yet.*
#### What is this?
*Coelacanth* is an ongoing effort to refactor and document a collection of C++
codes I wrote for lucky-imaging data-reduction and analysis, as described in
my [PhD thesis].
The hope is that it might be useful to others: either in whole, in part, or as
a cautionary lesson in how we used to do things.#### What's the fish got to do with it?
Codes for EMCCD and lucky-imaging analysis == *COELA* ,
but 'coelacanth' is more memorable.
That, and [C++03] is a bit of a dinosaur.#### So what's buried in there?
- A framework for performing complex multi-coordinate-system pixel arithmetic on
two-dimensional pixel arrays.
- A minimal, C++-style implementation of the [FITS] image-file format,
complete with bit-packing decompression.
- A basic but reasonably performant implementation of the [Keys81] algorithm for
[bicubic interpolation].
- Routines for bright-speckle location via cross-correlation with a carefully
tuned PSF core model.
- A simple (translation-only) but reasonably performant implementation of the
[Drizzle] algorithm.
- High-performance Monte-Carlo simulation code for simulating EMCCD data from
light-intensity maps (built on [UNURAN]).
- Fitting routines for extracting [EMCCD] parameters from raw data.- A full (multi-threaded) lucky-imaging pipeline, including:
- Asynchronous file-buffering and decompression
- Calibration routines for constructing per-pixel histograms from dark-frames
data
- Image debias / flat-fielding routines built upon the EMCCD calibration
- Photon-thresholding for faint targets
- Various routines for multi-EMCCD data-synchronisation and mosaic building.
- A set of decomposable, [DRY]-principle-adherent CMake build scripts.
- Four years of sweat and C++ related tears.#### This sounds useful. How do I get started?
Unfortunately there's no documentation yet, and progress is slow as this
is effectively a side-project.
However, if you're interested in digging in, do [get in touch] and I'll help
out if I can.[C++03]: http://en.wikipedia.org/wiki/C%2B%2B03
[Drizzle]: http://adsabs.harvard.edu/abs/2002PASP..114..144F
[bicubic interpolation]: http://en.wikipedia.org/wiki/Bicubic_interpolation
[DRY]: http://en.wikipedia.org/wiki/Don%27t_repeat_yourself
[EMCCD]: http://en.wikipedia.org/wiki/Charge-coupled_device#Electron-multiplying_CCD
[FITS]: http://en.wikipedia.org/wiki/FITS
[get in touch]: http://timstaley.co.uk/
[Keys81]: http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=1163711
[UNURAN]: http://statmath.wu.ac.at/unuran/
[PhD thesis]: http://uk.arxiv.org/abs/1404.5907