Giter VIP home page Giter VIP logo

cacao's Introduction

License: GPL v3

Latest Version (off main branch): latesttag

Branch Build Docker Deployment Activity
main CMake badge CMake badge lastcommit
dev CMake badge CMake badge lastcommit

Code metrics (dev branch) : CodeScene Code Health CodeScene System Mastery Codacy Badge CodeFactor

cacao : Compute And Control for Adaptive Optics

cacao is a computation engine for adaptive optics control.

Compute Performance: Uses multi-core CPUs and GPGPUs for high computing throughput. Written in C, optimized for performance. Holds images in RAM, with image stream support (shared memory with low-latency IPC support). cacao uses milk.

User input: Executable launches a command line interface (CLI) from which functions are accessible. Type "help" in the CLI to get started.

Modular, easy to add functions, loaded at runtime as shared objects.


Getting help, Documentation

Topic Chat room Documentation
How to use cacao ? Gitter Community Online documentation
Configuring computer system Gitter Hardware / OS setup RTC setup
Software development Gitter Developers coding standards and Online documentation

Report bugs and issues on this page and discuss them on the Developers chat.


Installing cacao

Install pre-requisite packages as needed. Check the Dockerfile for list.

cacao is a plugin of milk.

To install :

git clone https://github.com/milk-org/milk.git
cd milk
./fetch_cacao_dev.sh
mkdir _build
cd _build
cmake ..
make
sudo make install

Alternatively, the ./compile.sh script for can be run to install. Check compilation options with compile.sh -h option.


Documentation

See cacao's wiki for detailed instructions to install, configure and use cacao.


Getting Started

All functions are accessible from the command line interface (CLI). Enter the CLI and type "help" for instructions.

cacao

To set up a cacao AO loop, use the cacao-loop-deploy script. Consult help with :

cacao-loop-deploy -h

Tools

Both cacao and milk use a common shared memory data stream format. See ImageStreamIO module for details.

Viewing real-time data streams

Additional software is required to view real-time data streams. Several options exist:

  • shmimviewGTK, a lightweight efficient GTK-based viewer.
  • milk2ds9 uses ds9 to view data streams (convenient for ds9 users)
  • rtimv, a qt-based image viewer, higher performance than ds9 option
  • shmimviewqt, another qt-based option (less polished than rtimv)
  • xaosim's shmview image viewer, using python qt interface

Python interface to data streams

Python users can read/write milk/cacao's data streams using additional packages:

  • pyMilk provides an interface to data streams.
  • xaosim includes a python interface to data streams.. and much more Both stream interfaces above are cross-compatible.

cacao's People

Contributors

oguyon avatar nour-sf avatar dasvinch avatar a-sevin avatar jaredmales avatar janis-hag avatar edenacadia avatar jw-lin avatar kyohoon-ahn 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.