{"id":28954419,"url":"https://github.com/ad-si/flatcv","last_synced_at":"2026-04-29T09:09:20.766Z","repository":{"id":299444729,"uuid":"1003059649","full_name":"ad-si/FlatCV","owner":"ad-si","description":"Simple computer vision library in pure C","archived":false,"fork":false,"pushed_at":"2025-06-16T15:02:49.000Z","size":4826,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-16T16:22:56.403Z","etag":null,"topics":["c","cli","cli-tool","computer-vision","grayscale","image","image-filter","image-manipulation","image-pipeline","image-processing","otsu","single-header"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ad-si.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-16T14:59:51.000Z","updated_at":"2025-06-16T15:05:24.000Z","dependencies_parsed_at":"2025-06-16T16:33:30.631Z","dependency_job_id":null,"html_url":"https://github.com/ad-si/FlatCV","commit_stats":null,"previous_names":["ad-si/flatcv"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ad-si/FlatCV","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ad-si%2FFlatCV","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ad-si%2FFlatCV/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ad-si%2FFlatCV/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ad-si%2FFlatCV/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ad-si","download_url":"https://codeload.github.com/ad-si/FlatCV/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ad-si%2FFlatCV/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261539362,"owners_count":23174139,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c","cli","cli-tool","computer-vision","grayscale","image","image-filter","image-manipulation","image-pipeline","image-processing","otsu","single-header"],"created_at":"2025-06-23T19:10:28.911Z","updated_at":"2026-04-29T09:09:20.761Z","avatar_url":"https://github.com/ad-si.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# FlatCV\n\nImage processing and computer vision library in pure C.\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003cimg src=imgs/elevation_2_basins_receipt.png width=500\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003cimg src=imgs/receipt_corners.png width=500/\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003cimg src=imgs/elevation_2_basins_receipt_watershed.png width=500\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\n## Features\n\n[Flip](https://flatcv.ad-si.com/flip.html),\n[Crop](https://flatcv.ad-si.com/crop.html),\n[Trim](https://flatcv.ad-si.com/trim.html),\n[Resize](https://flatcv.ad-si.com/resize.html),\n[Blur](https://flatcv.ad-si.com/blur.html),\n[Draw](https://flatcv.ad-si.com/draw.html),\n[Grayscale](https://flatcv.ad-si.com/grayscale.html),\n[Binarize](https://flatcv.ad-si.com/binarize.html) \\\n[Corner-Detection](https://flatcv.ad-si.com/corner-detection.html),\n[QR-Code Decoding](https://flatcv.ad-si.com/qr-code.html),\n[Segmentation](https://flatcv.ad-si.com/segmentation.html),\n[Document-Extraction](https://flatcv.ad-si.com/document-extraction.html)\n\nCheck out the [official documentation][docs]\nfor more details on each feature.\n\n\n### Cross Platform Support\n\n- Linux (x86 \u0026 arm64)\n- macOS (x86 \u0026 arm64)\n- Windows (x86 \u0026 arm64)\n- PowerPC\n- RISC-V\n- …\n\n\n## Usage\n\nFlatCV can either be used as a C library or via its CLI.\n\nYou can get the single file version of the code and the CLI binaries\nin the release artifacts section of each release:\n[github.com/ad-si/FlatCV/releases](https://github.com/ad-si/FlatCV/releases)\n\n\n### CLI\n\nThe CLI supports edit pipelines which sequentially apply all transformations.\n\n```sh\nflatcv \u003cinput\u003e \u003ccomma-separated-edit-pipeline\u003e \u003coutput\u003e\n```\n\nAs commas aren't special characters in shells,\nyou can write the edit pipeline without quotes.\nBoth variants yield the same result:\n\n```sh\nflatcv i.jpg 'grayscale, blur 9' o.jpg\nflatcv i.jpg grayscale, blur 9 o.jpg\n```\n\n\n#### Examples\n\nCheck out the [official documentation website][docs]\nfor more examples and usage instructions.\n\nCommand | Input | Output\n--------|-------|--------\n`flatcv i.jpg grayscale o.jpg` | ![Parrot](./imgs/parrot.jpeg) | ![Parrot Grayscale](./imgs/parrot_grayscale.jpeg)\n`flatcv i.jpg grayscale, blur 9 o.jpg` | ![Parrot](./imgs/parrot.jpeg) | ![Parrot Grayscale and Blur](./imgs/parrot_grayscale_blur.jpeg)\n`flatcv i.jpg bw_smooth o.jpg` | ![Parrot](./imgs/page.png) | ![Smooth Binarization](./imgs/page_bw_smooth.png)\n`flatcv i.jpg watershed 0x0 300x200 599x0 o.jpg` | ![Parrot](./imgs/elevation_3_basins_gradient.png) | ![Watershed Segmentation](./imgs/elevation_3_basins_gradient_watershed.png)\n\n\n### Library\n\n```c\n#include \"flatcv.h\"\n\n// Resize an image to 50%\nunsigned char const * half_size = resize(\n  input_width, input_height,\n  0.5, 0.5,\n  \u0026out_width, \u0026out_height,\n  input_data\n);\n\n// Do something with the resized image\n\nfree(half_size);\n```\n\n[docs]: https://flatcv.ad-si.com\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fad-si%2Fflatcv","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fad-si%2Fflatcv","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fad-si%2Fflatcv/lists"}