Skip to content
This repository has been archived by the owner on Jul 6, 2024. It is now read-only.

.NET library that provides a way to process images using the CPU/GPU

License

Notifications You must be signed in to change notification settings

PolinaSavelyeva/ImageProcessing

 
 

Repository files navigation

ImageProcessing

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.

Supported Features

  • 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.

Documentation

See more information on GitHub Pages.

Requirements

Make sure the following requirements are installed on your system:

Package Adding

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.0

For more information visit package main GitHub page.

Simple Usage

Before usage, go to specify directory:

 cd /path/to/ImageProcessing/src/ImageProcessing

To process images from one directory and save them to another, you can use the following commands.

  • Оne transformation applied to each image in the directory

 dotnet run -in /input/path -out /output/path -agent=full -unit=cpu gauss
  • List of transformations that are sequentially applied

 dotnet run -in /input/path -out /output/path  -agent=no -unit=anygpu gauss sharpen

Examples

The final result for all types of transformations and filters:

Original Sharpen
image image
Gauss Edges
image image
Darken Lighten
image image
Rotation R Rotation L
image image
Flip H Flip V
image image

Template

To find more building and running options take a look at the MiniScaffold template.

Packages

 
 
 

Languages

  • F# 72.7%
  • CSS 16.8%
  • HTML 6.6%
  • JavaScript 2.2%
  • Dockerfile 0.9%
  • Shell 0.7%
  • Batchfile 0.1%