Image processing and computer vision library in pure C.
![]() |
![]() |
![]() |
Flip,
Crop,
Trim,
Resize,
Blur,
Draw,
Grayscale,
Binarize
Corner-Detection,
Segmentation,
Document-Extraction
Check out the official documentation for more details on each feature.
FlatCV can either be used as a C library or via its CLI.
The CLI supports edit pipelines which sequentially apply all transformations.
flatcv <input> <comma-separated-edit-pipeline> <output>
As commas aren't special characters in shells, you can write the edit pipeline without quotes. Both variants yield the same result:
flatcv i.jpg 'grayscale, blur 9' o.jpg
flatcv i.jpg grayscale, blur 9 o.jpg
Check out the official documentation website for more examples and usage instructions.
Command | Input | Output |
---|---|---|
flatcv i.jpg grayscale o.jpg |
![]() |
![]() |
flatcv i.jpg grayscale, blur 9 o.jpg |
![]() |
![]() |
flatcv i.jpg bw_smooth o.jpg |
![]() |
![]() |
flatcv i.jpg watershed 0x0 300x200 599x0 o.jpg |
![]() |
![]() |
#include "flatcv.h"
// Resize an image to 50%
unsigned char const * half_size = resize(
input_width, input_height,
0.5, 0.5,
&out_width, &out_height,
input_data
);
// Do something with the resized image
free(half_size);