DarkFlow looks like an interactive diagram editor until you open a visualization window. Here is the processing with DarkFlow of the Messier 8 region from very good LRGB source images. Image Acquisition by Jim Misti.

Don’t pay attention to the jerks and jolts as they are caused by the screencast program and the small resolution used for acquisition purpose.

What DarkFlow aims to be

  • DarkFlow aims to be an all in one comprehensive solution for astrophotography processing.
  • DarkFlow aims to offer fundamental operators that let you craft methods we never envisionned.
  • DarkFlow aims to be intuitive and easy to use. It tries to not disturb your flow of ideas.

What DarkFlow is

  • DarkFlow is about creating pipelines of image processing operators.
  • DarkFlow creates new images from your original photos by applying operators during the process.
  • DarkFlow applies global and reproducible operations on images.

What DarkFlow is not

  • DarkFlow is not a program that requires you to manage intermediate renderings or temporary files.
  • DarkFlow is not an image editor that modifies your images.
  • DarkFlow is not a Raster Graphics Editor with brushes nor a freehand drawing tool.

DarkFlow is Project oriented

You are encouraged to work iteratively on the processing of your images. Save the project, and go back to it once your eyes are rested. Things are better built gradually.

You can even use git (in association with git-lfs to store your raw photos) to track all the versions of your image processing project and host it for free on GitHUB. Take a look at the NGC7023 repository.

Non destructive approach

DarkFlow doesn’t modify your source material. It’s left untouched while your projects evolve with your skills.

Project artifacts

As you wish, you can generate output images from your projects. It depends on whether you added or not one or many Save operators in your workflow.


By its design, DarkFlow will leverage every single bit of potency from your computer.


Algorithms implementation behind each operator have been developped to deliver maximum parallelism. Thanks to Grand Central Dispatch on macOS and to OpenMP on MS Windows and GNU/Linux.

Pixels streaming

If DarkFlow is configured as suggested, the operating system will stream the images from the hard drive to the operators using access patterns friendly to both SSD and spinning hard drives.

48-bit Pixel format

16-bit per channel RGB permits an acceptable memory footprint in addition to providing good performance algorithms. And even better performances when the usage of a LUT is possible.

For many operators, floating point numbers are internaly used in order to keep a good precision in computation.

The precision of 16-bit per channel images, especialy in the dark parts, may be enhanced using a logarithmic scale that guaranties 4096 steps per EV on a 16EV dynamic range. This logarithmic scale is named HDR within DarkFlow.