ImageProcessing is an easy-to-use F# package that utilizes Brahma.FSharp and SixLabors.ImageSharp. It offers two primary image processing options: CPU and GPU or agent-supported processing, all accessible within the included console application.
- Loading images from a local source and saving them.
- Processing all images within a specified directory.
- Filtering using one of five kernels, including "Gaussian blur" and "edges".
- Other edits such as 90-degree rotation and flipping.
- Combinations of existing transformations in four different scenarios.
- Ability to utilize all of the features solely through the command line.
See more information on GitHub Pages.
Make sure the following requirements are installed on your system:
- dotnet SDK 3.0 or higher (recommended 6.0+),
- Mono if you're on Linux or macOS or
- VSCode Dev Container.
Go to directory with your build.fsproj (or build.csproj) file and install ImageProcessing using command line:
dotnet add package ImageProcessing.PolinaSavelyeva --version 1.0.0For more information visit package main GitHub page.
Before usage, go to specify directory:
cd /path/to/ImageProcessing/src/ImageProcessingTo process images from one directory and save them to another, you can use the following commands.
dotnet run -in /input/path -out /output/path -agent=full -unit=cpu gauss dotnet run -in /input/path -out /output/path -agent=no -unit=anygpu gauss sharpenThe final result for all types of transformations and filters:
| Original | Sharpen |
|---|---|
![]() |
![]() |
| Gauss | Edges |
|---|---|
![]() |
![]() |
| Darken | Lighten |
|---|---|
![]() |
![]() |
| Rotation R | Rotation L |
|---|---|
![]() |
![]() |
| Flip H | Flip V |
|---|---|
![]() |
![]() |
To find more building and running options take a look at the MiniScaffold template.









