🔶 C++ library for Geometrize, a tool for geometrizing images into geometric primitives
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Geometrize Logo

License Coverity Scan Status

Geometrize is a C++ library based on primitive. It recreates images as geometric primitives.

Geometrized Trees 210 Ellipses


  • Geometrize images into shapes.
  • Export the results as SVG, JSON and more.


Refer to the minimal example project and read the documentation. These projects may also be useful references:

Project Build Status
Geometrize App Travis Geometrize App Build Status AppVeyor Geometrize App Build Status
Example Travis Geometrize Example Build Status AppVeyor Geometrize Example Build Status
Fuzz Tests Travis Fuzzing Build Status AppVeyor Fuzzing Build Status
Unit Tests Travis Unit Test Build Status AppVeyor Unit Test Build Status
Documentation Travis Documentation Build Status

Shape Comparison

The matrix below shows typical results for a combination of circles, triangles, rotated rectangles, rotated ellipses and all supported shapes at 50, 200 and 500 total shapes:

- 50 Shapes 200 Shapes 500 Shapes
Circles 50 Circles 200 Circles 500 Circles
Triangles 50 Triangles 200 Triangles 500 Triangles
Rotated Rectangles 50 Rotated Rectangles 200 Rotated Rectangles 500 Rotated Rectangles
Rotated Ellipses 50 Rotated Ellipses 200 Rotated Ellipses 500 Rotated Ellipses
All Shapes 50 All Shapes 200 All Shapes 500 All Shapes


See the gallery.


See the Geometrize resources page.


  • Got an idea or suggestion? Open an issue on GitHub, or send Sam a message on Twitter.