Tutorial | Tracing bitmapsПри помощи Inkscape можно векторизовать растровое изображение, то есть превратить его в SVG-элемент <path>. В этом разделе учебника рассказывается о том, как работает эта функция программы.В настоящее время для векторизации Inkscape использует код программы Potrace Питера Селинджера (potrace.sourceforge.net). В будущем возможно подключение других программ, но уже сейчас Potrace вполне достаточно.Помните, что целью векторизации не является создание точной копии исходного изображения или готового продукта. Ни одному векторизатору это не под силу. Всё, что он может — это дать вам набор контуров, которые вы можете использовать в своих работах.Potrace получает на входе чёрно-белые растровые изображения и отдаёт на выходе набор контуров. Существует три входных фильтра для преобразования исходного изображения в понятный для Potrace формат.Как правило, чем темнее пикселы в изображениях, тем больше работы для Potrace. Чем больше работает векторизатор, тем больше используются ресурсы центрального процессора и тем больше описание контура (элемента <path>). Поэтому рекомендуется начать с более светлых версий изображения, постепенно затемняя их до получения желаемого уровня детализации конечного контура и пропорций.To use the tracer, load or import an image, select it, and select the PathTrace Bitmap item, or Shift+Alt+B.Основные параметры диалога векторизацииВы увидите три фильтра:Brightness Cutoff Этот фильтр просто использует сумму красного, зелёного и синего (или оттенки серого) компонентов пиксела в качестве индикатора, воспринимать ли его как чёрный или же как белый. Значение порога яркости может быть задано в диапазоне от 0,0 (чёрный) до 1,0 (белый). Чем выше значение, тем меньше пикселов будет воспринято как «белые» и тем темнее станет изображение.Изначальное изображениеЯркость изображенияЗаливка без обводкиЯркость изображенияОбводка без заливкиEdge Detection Этот фильтр использует алгоритм определения краёв, придуманный Дж. Канни как способ быстрого поиска изоклин и подобных контрастов. Этот фильтр создаёт картинку, меньше похожую на оригинал, чем результат первого фильтра, но предоставляет информацию о кривых, которая при использовании других фильтров была бы проигнорирована. Значение порога здесь (0,0 – 1,0) регулирует порог яркости между смежными пикселами, в зависимости от которого смежные пикселы будут или не будут становиться частью контрастного края и, соответственно, попадать в вывод. Фактически, этот параметр определяет темноту или толщину края.Изначальное изображениеОпределение краёвЗаливка без обводкиОпределение краёвОбводка без заливкиКвантование цветовРезультатом работы этого фильтра является изображение, которое заметно отличается от результата работы двух предыдущих фильтров, но при этом тоже полезно. Вместо того чтобы показывать изоклины яркости или контраста, этот фильтр ищет края, где меняется цвет, даже если смежные пикселы имеют одинаковую яркость и контраст. Параметр этого фильтра (количество цветов) определяет количество цветов на выходе, как если бы растровое изображение было цветным. После этого фильтр определяет чёрный это пиксел или белый в зависимости от чётности индекса цвета.Изначальное изображениеКвантование (12 цветов)Заливка без обводкиКвантование (12 цветов)Обводка без заливкиПользователю стоит попробовать все три фильтра и внимательно рассмотреть различия в результатах обработки разных изображений. Всегда найдётся изображение, на котором один фильтр сработает лучше двух других.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:Изначальное изображениеВекторизованное изображение(1551 узел)Note the enormous number of nodes in the path. After hitting Ctrl+L, this is a typical result:Изначальное изображениеУпрощённое векторизованное изображение(384 узла)Изображение немного грубовато, но зато теперь его значительно проще редактировать. Помните, что вам нужна не точная векторная копия, а набор кривых, с которыми можно работать дальше.Bulia Byak; Jonathan Leighton; Colin Marquardt; Nicolas Dufour; Gellért GyurisYura aka Xxaxx — 2005; Alexandre Prokoudine — 2006; Evgeniya Sinichenkova — 2012Esteban Capella — 2019