Skip to content

Kleurboek

A print-ready coloring book of fifty plates, with an own workflow that turns AI drawings into clean lines and inspects every plate.

Print: a coloring book for AmazonReady for print

Character sheet of the coloring book in black line art: a rabbit with a scarf, a fox with a neckerchief, a bear with glasses and a bow tie, a hedgehog with a beret and a cat with a heart on its collar.
fig. VII Character sheet of the coloring book in black line art: a rabbit with a scarf, a fox with a neckerchief, a bear with glasses and a bow tie, a hedgehog with a beret and a cat with a heart on its collar.

Who it is for

Readers who like calm, cozy coloring pages, via Amazon and a Dutch edition.

The problem

Selling a coloring book takes more than nice pictures. AI coloring books are rightly criticised for grey pixels, solid black areas, tiny details and drawings that run into the page edge, and Amazon has strict rules for the interior and the cover.

What I built

I built a workflow that creates the drawings, cleans them up and turns them into vector lines at real print size. Every plate is inspected automatically, and then the interior, the cover and the sales images are built, each with its own check before it goes to the printer.

What it delivers

  1. Fifty plates with the same five characters, recognisable every time.

  2. No grey pixels and no solid areas: everything prints as clean lines.

  3. A Dutch edition from the same plates, without drawing anything again.

Under the hood

  • Automatic inspection per plate: line weight, regions that are too small and shapes that float free.

  • A cleanup step from raw image to vector lines at print size.

  • Own checks for interior and cover, tested with deliberately broken files.

fig. VIIraw drawingcleanedvectorinspectiongrey, specklesthresholdpotrace0 grey pixelsinspection per plateline weightpassedtiny regionspassedloose shapespassedinto the book
fig. VII From raw drawing to inspected vector plate: every plate is checked on three points.

The hardest part

The characters had to look the same on all fifty plates. Every request therefore came with a fixed reference sheet, and I adjusted the requests based on test failures, such as a hedgehog without a snout or a cat without whiskers.

Screens

Built with

  • Python
  • OpenCV
  • scikit-image
  • potrace
  • PyMuPDF
  • OpenAI Image API