Inkscape tutorial: Tracing bitmaps

Inkscape

Tutorial | Tracing bitmaps

One of the features in Inkscape is a tool for tracing a bitmap image into one or more <path> elements for your SVG drawing. These short notes should help you become acquainted with how it works.

Hou in het achterhoofd dat het doel van overtrekken noch het reproduceren is van een exacte kopie van het origineel, noch bedoeld is voor het maken van een finale afbeelding. Geen enkel overtrekprogramma kan dat. Het geeft je echter een set curves die je als bron voor je afbeelding kan gebruiken.

Our tracer, derived from the original Potrace library by Peter Selinger, interprets a black and white bitmap, and produces a set of curves. For Potrace, we currently have three types of input filters to convert from the raw image to something that Potrace can use.

Algemeen geldt dat hoe meer donkere pixels in de intermediaire bitmap, hoe meer Potrace zal overtrekken. Omdat de hoeveelheid overtrek vergroot, is meer CPU-tijd nodig en zal het <path>-element veel groter worden. Het is een goed idee dat je als gebruiker eerst experimenteert met lichtere afbeeldingen en dan langzaam overgaat naar donkere afbeeldingen om de gewenste proportie en complexiteit van het uitvoerpad te verkrijgen.

To use the tracer, load or import an image, select it, and select the PathTrace Bitmap item, or Shift+Alt+B.

The user will see the five filter options available:

  • Brightness Cutoff

Deze optie gebruikt in essentie de som van de rood-, groen- en blauwwaarde (of grijstint) van een pixel als een zwart-witindicator. De grenswaarde kan ingesteld worden van 0.0 (zwart) tot 1.0 (wit). Hoe hoger de grenswaarde, hoe kleiner het aantal pixels dat als “wit” wordt gezien en bijgevolg hoe donkerder de intermediaire afbeelding.

  • Edge Detection

Deze optie gebruikt het randdetectiealgoritme van J. Canny als een snelle methode voor het vinden van lijnen met dezelfde kleurgradiënt of contrast. Dit zal een intermediaire afbeelding produceren die minder lijkt op de originele tekening dan met de optie Helderheid, maar zal wellicht curve-informatie bevatten die anders genegeerd wordt. De grenswaarde (0.0 - 1.0) past hier de grenswaarde voor de helderheid aan die bepaalt of een pixel langs de contrastrand in de uitvoer terug te vinden is. Deze instelling kan de donkerheid of randdikte in de uitvoer aanpassen.

  • Kleurquantisatie

Het resultaat van deze filter produceert een intermediaire afbeelding die zeer verschillend is van de twee andere, maar niettemin erg bruikbaar is. In tegenstelling met het tonen van lijnen met gelijke helderheid of contrast, zal deze filter randen vinden waar kleuren veranderen, zelfs bij gelijke helderheid en contrast. De instelling, aantal kleuren, bepaalt hoeveel kleuren er in de intermediaire afbeelding zouden zijn, indien deze intermediaire bitmap in kleur was. Het kent dan zwart en wit toe afhankelijk van het feit of de kleur een even of oneven index heeft.

De gebruiker zou de drie filters moeten proberen en de verschillende types uitvoer voor verschillende types afbeeldingen observeren. Er is altijd een afbeelding waar de ene filter beter werkt dan de andere.

After tracing, it is also suggested that the user try PathSimplify (Ctrl+L) on the output path to reduce the number of nodes. This can make the output of Potrace much easier to edit. For example, here is a typical tracing of the Old Man Playing Guitar:

Note the enormous number of nodes in the path. After hitting Ctrl+L, this is a typical result:

De voorstelling is een iets benaderender en ruwer, maar de afbeelding is veel eenvoudiger en bewerkbaarder. Hou in het achterhoofd dat wat je wil niet een exacte rendering is van de afbeelding, maar een set curves die je kan gebruiken in je afbeelding.

  • Autotrace

The Autotrace option uses a different algorithm for tracing and also offers some other parameters to tweak. It may take a little longer to work, but gives you some variety to choose from.

  • Centerline tracing (autotrace)

If you would like to vectorize a line drawing, and get strokes that are easy to modify instead of filled areas as a result, use this option. It will attempt to find contiguous lines that make up your drawing.

Authors: Bulia Byak; Jonathan Leighton; Colin Marquardt; Nicolas Dufour; Gellért Gyuris; Maren Hachmann

Translators: Kris De Gussem — 2010

Header / footer design: Esteban Capella — 2019