Transform your images into geometric primitives using this web application
Using the primitive library, for each unique mode, the algorithm finds the most optimal shape that can be drawn to minimize the error between the original image and the resulting image. Results shown utilize 100 distinct shapes. More shapes will produce results resembling a closer appearance to the original photo, at the cost of a slower rendering speed.
Original Photo: My dog Beckham
Results (100 distinct shapes using various modes):