ImageTank is an image processing software package currently under development. The goal is for ImageTank to be widely used for image processing and analysis.
Key features & design principles:
- Pipeline approach to processing. Allows you to change settings at any steps and the remaining steps are updated automatically.
- Image files are not overwritten, and no need to save snapshots along the way.
- Very easy to see every step you took. You can inspect every intermediate step at any time and add rich text comments to document each step. Makes repeatability a lot easier. It also means that you can come back to what you did months later and see what you did without.
- Threaded execution and asynchronous execution. Modern machines have a lot of cores and ImageTank will use all of them. Tasks are done concurrently and complicated tasks are further split among cores. This allows you to really squeeze a lot of performance out of your machine, even a laptop.
- Very efficient C/C++ implementation for numerical calculations, and advanced memory handling.
- Extensive caching, which allows you to work with large collection of files. The program automatically handles memory management and allows you to change caching mechanism if you want to.
- Can embed Python programs, and they are run threaded and in a sandboxed environment. Threaded execution means that you might have multiple concurrent Python programs running and managed by ImageTank. Sandboxed means that the Python program does not have access to your local disk so no corruption is possible. In particular useful when you run code from someone else.
- Support for animations and creating MP4 movies from your data.
You are encouraged to sign up for the community forum and submit questions and participate in discussion. We are responsive to questions and suggestions and are excited to see what ImageTank can be used for.