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.

Помните, что целью векторизации не является создание точной копии исходного изображения или готового продукта. Ни одному векторизатору это не под силу. Всё, что он может — это дать вам набор контуров, которые вы можете использовать в своих работах.

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.

Как правило, чем темнее пикселы в изображениях, тем больше работы для Potrace. Чем больше работает векторизатор, тем больше используются ресурсы центрального процессора и тем больше описание контура (элемента <path>). Поэтому рекомендуется начать с более светлых версий изображения, постепенно затемняя их до получения желаемого уровня детализации конечного контура и пропорций.

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

Этот фильтр просто использует сумму красного, зелёного и синего (или оттенки серого) компонентов пиксела в качестве индикатора, воспринимать ли его как чёрный или же как белый. Значение порога яркости может быть задано в диапазоне от 0,0 (чёрный) до 1,0 (белый). Чем выше значение, тем меньше пикселов будет воспринято как «белые» и тем темнее станет изображение.

  • Edge Detection

Этот фильтр использует алгоритм определения краёв, придуманный Дж. Канни как способ быстрого поиска изоклин и подобных контрастов. Этот фильтр создаёт картинку, меньше похожую на оригинал, чем результат первого фильтра, но предоставляет информацию о кривых, которая при использовании других фильтров была бы проигнорирована. Значение порога здесь (0,0 – 1,0) регулирует порог яркости между смежными пикселами, в зависимости от которого смежные пикселы будут или не будут становиться частью контрастного края и, соответственно, попадать в вывод. Фактически, этот параметр определяет темноту или толщину края.

  • Квантование цветов

Результатом работы этого фильтра является изображение, которое заметно отличается от результата работы двух предыдущих фильтров, но при этом тоже полезно. Вместо того чтобы показывать изоклины яркости или контраста, этот фильтр ищет края, где меняется цвет, даже если смежные пикселы имеют одинаковую яркость и контраст. Параметр этого фильтра (количество цветов) определяет количество цветов на выходе, как если бы растровое изображение было цветным. После этого фильтр определяет чёрный это пиксел или белый в зависимости от чётности индекса цвета.

Пользователю стоит попробовать все три фильтра и внимательно рассмотреть различия в результатах обработки разных изображений. Всегда найдётся изображение, на котором один фильтр сработает лучше двух других.

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:

Изображение немного грубовато, но зато теперь его значительно проще редактировать. Помните, что вам нужна не точная векторная копия, а набор кривых, с которыми можно работать дальше.

  • 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: Yura aka Xxaxx — 2005; Alexandre Prokoudine — 2006; Evgeniya Sinichenkova — 2012

Header / footer design: Esteban Capella — 2019