Skip to content

Руководство

Векторизация картины: честное (и полное) руководство по преобразованию изображения в вектор

Обновлено · 2026

PIXELSVECTOR

Начать придётся с неудобной фразы, потому что из неё вытекает всё остальное: векторизовать картину значит потерять часть того, что делало её картиной. Холст живёт своими переходами, своей фактурой, тем, как свет цепляется за пастозный мазок или проходит сквозь лессировку. Вектор не умеет делать ничего из этого. Он умеет описывать чёткие формы, залитые ровными цветами, которые можно увеличивать до бесконечности без потери единого пикселя. Между этими двумя мирами приходится делать выбор, и это руководство существует для того, чтобы вы сделали его с открытыми глазами.

Мы разберём, как на самом деле работают алгоритмы (и почему расхожее мнение, будто «всё держится на Potrace», ошибочно), как обрабатывается цвет, как подготовить изображение, чтобы трассировщик не нагородил чего попало, почему каждая техника письма ведёт себя по-разному под объективом векторизатора, какой формат на самом деле выходит из каждого станка, и главное: когда векторизовать стоит, а когда этого делать категорически не нужно.

RASTERVECTOR

Суть проблемы: конечное против бесконечного

Растровое изображение это дискретная и ограниченная выборка. Фиксированная сетка пикселей, каждый из которых несёт значение цвета, обычно 8 бит на канал, то есть до 16,7 миллиона возможных цветов в RGB 24 бита. Внимание: это число есть ёмкость кодирования, а не содержимое: на фотографии картины нет 16,7 миллиона цветов, а порядка десятков или сотен тысяч реально присутствующих уникальных цветов плюс непрерывные переходы между ними.

Вектор же описывает не пиксели. Он описывает геометрические объекты: кривые Безье, заливки, контуры. У него нет собственного разрешения, поэтому его можно пересчитать под любой размер. В этом и его сила, и его предел: чтобы существовать, он должен свести богатый сигнал из десятков тысяч цветов к небольшому числу областей ровного цвета.

Переход от растра к вектору, таким образом, не есть нейтральное преобразование. Это переописание с потерями. Картину не «преобразуют» в вектор, из неё делают интерпретацию в плашках. Держите эту фразу в голове, она единственная настоящая рамка всей темы: векторизовать картину значит не скопировать её, а истолковать.

12345

Как векторизатор работает на самом деле

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

Реальная цепочка состоит из трёх звеньев: захват, квантование цвета, затем трассировка. Лёгкость векторизации зачастую решается уже на первых двух этапах, то есть ещё до того, как в дело вступит сам трассировщик.

Два больших семейства методов

Первое семейство это трассировка контура, или подход по областям. Сначала изображение квантуют в N цветов, затем обводят границу каждой области кривыми Безье. Результат: плашки, лёгкий файл, редактируемый SVG. Так работает практически весь массовый инструментарий.

Второе семейство это сетка градиентов, gradient mesh. На изображение накладывается деформируемая управляющая сетка, где каждый узел несёт цвет, что позволяет восстановить непрерывные градиенты. Основополагающая работа это статья Сана, Ляна, Вэня и Шума «Image Vectorization using Optimized Gradient Meshes» (SIGGRAPH 2007, Microsoft Research). Но скажем прямо: в Illustrator gradient mesh полуручной и затратный. Чтобы воспроизвести фотографический участок, нужно вручную расставить и отредактировать сотни узлов. Это не волшебная палочка для векторизации целой картины, а локальный инструмент ретуши, медленный, «very time consuming» по признанию самих обучающих этому методу руководств. Никто не размечает узлами вручную целый холст.

Миф о Potrace и что на самом деле правда

Повсюду читаешь, что Potrace «стоит почти за всем». Это неверно, и нюанс важен для понимания ваших результатов.

Potrace (Питер Зелингер, алгоритм опубликован в 2003 году, последняя стабильная версия 1.16 в 2019 году, под лицензией GPL) действительно является эталонным движком открытой настольной экосистемы: Inkscape (меню «Контур», затем «Векторизовать растр»), FontForge для импорта растра в шрифт, LilyPond для нотной гравюры, SVGcode, autotrace. Но и только. Современные цветные векторизаторы его не используют:

  • VTracer (visioncortex) имеет собственный движок, написанный на Rust, с настоящим нативным цветовым конвейером. Никакого Potrace.
  • Adobe Illustrator Image Trace это проприетарная реализация Adobe, концептуально близкая, но написанная отдельно, с предобработкой через Adobe Sensei в последних версиях (определение объекта и фона, кластеризация палитры, шумоподавление), тогда как генерация кривых остаётся математической.
  • Recraft, Vectorizer.AI и прочие нейросетевые векторизаторы порождают кривые Безье напрямую через обученные нейронные сети. Это не бинарная трассировка контура.

Честная формулировка такова: Potrace это исторический и самый распространённый движок свободных настольных инструментов для чёрно-белой графики, но сегодняшние цветные и ИИ-векторизаторы опираются на собственные движки.

Что делает Potrace, шаг за шагом

Понимать Potrace всё же полезно, потому что его конвейер открыт, и он лежит в основе Inkscape, которым пользуется много людей. Четыре этапа:

  1. Разложение на контуры. Растр раскладывается на замкнутые контуры, образующие границы между чёрными и белыми зонами. Именно здесь вступает в дело параметр подавления шума.
  2. Оптимальный многоугольник. Каждая «лесенка» из пикселей аппроксимируется многоугольником с наименьшим числом сегментов, при этом остающимся «прямым» по критерию штрафа, после чего вершины подгоняются ради минимизации ошибки.
  3. Сглаживание в кривую. Каждая вершина становится либо острым углом, либо гладкой кубической кривой Безье.
  4. Оптимизация кривой. Potrace объединяет, когда это возможно, последовательные сегменты Безье одинаковой выпуклости, но никогда прямые сегменты и углы.

Всем этим управляют три параметра, и их значения по умолчанию нередко цитируют неверно:

  • turdsize (по умолчанию 2) убирает пятна из пикселей размером менее N пикселей. Это фильтр против крапа, действующий уже на этапе 1.
  • alphamax (по умолчанию 1.0) решает спор «угол против кривой». При 0 никакого сглаживания, на выходе сырой многоугольник. Выше 4/3 (около 1,333) все углы исчезают, выход полностью гладкий. Полезный диапазон, таким образом, от 0 до 1,333. Это та настройка, что решает, сохранят ли ваши мазки углы или станут органичными.
  • opttolerance (по умолчанию 0.2) задаёт агрессивность объединения кривых. Чем больше, тем больше сегментов сливается, ценой точности.

Принципиальный момент для картины: на вход Potrace подаётся строго чёрно-белое. Страница руководства говорит об этом дословно: на входе растр из двух единственных цветов, чёрного и белого. Цветное изображение сперва переводится в оттенки серого, затем порогуется. Potrace не работает с цветом нативно, никогда.

Как цвет всё же появляется у Potrace

В Inkscape цвет идёт не от Potrace, а от надстройки поверх него. Режим «Цвета» раскладывает изображение на несколько чёрно-белых проходов (постеризацией или разделением уровней яркости), трассирует каждый проход отдельно, затем складывает слои стопкой. Это многопроходный, более медленный процесс, порождающий избыточные контуры с видимыми швами между зонами. Для многоцветной картины с непрерывным тоном это в точности худший сценарий: Inkscape выдаст наслоённые полосы и потребует большой ручной чистки.

Вот тут нативные цветовые движки и берут верх. VTracer, Adobe Image Trace и ИИ кластеризуют цвет напрямую (часто в пространстве LAB) и складывают сплошные формы вместо вырезания дыр. Эта стратегия наложения, «stacking», даёт более компактные SVG без форм с дырами, а значит, более чистые и удобные для редактирования при воспроизведении картины.

Почему VTracer быстрый, и про границу исследований

VTracer заслуживает технического слова: его конвейер работает за O(n) там, где Potrace на этапе подгонки работает за O(n²). На крупном сканировании картины в высоком разрешении разница ощутима, тем более что многопроходный конвейер типа Inkscape ещё и кратно умножает стоимость. VTracer предлагает три режима подгонки (pixel, polygone, spline) и пресеты bw, poster, photo.

За пределами массового инструментария исследования идут по радикально иному пути: векторизация через дифференцируемую оптимизацию. DiffVG (Li et al., SIGGRAPH Asia 2020) представил первый дифференцируемый растеризатор, позволяющий оптимизировать кривые Безье градиентным спуском, сравнивая результат рендеринга с целевым. LIVE (CVPR 2022) строит SVG слой за слоем поверх DiffVG, с чистой топологией, но запретительной стоимостью: около пяти часов на векторизацию изображения 2K. К ним добавляются VectorFusion, DiffSketcher, LayerTracer и Bézier Splatting. Эти методы не обводят контур, они напрямую восстанавливают или порождают параметры кривых. Это передний край, но он пока слишком медленный для массового пользователя. Честно о реальном положении дел: в ваших инструментах этого сегодня нет.

Уточнение, которое пригодится дальше: в настройках иногда говорят о «сплайне», но формат SVG знает только кривые Безье, квадратичные (Q) или кубические (C). Любой сплайн при экспорте превращается в Безье. Сплайн это термин подгонки, а не формат хранения.

∞5

Цвет: настоящая наука за плашками

Это этап, превращающий картину в нечто трассируемое, и именно здесь решается почти всё. Он отделён от трассировки и предшествует ей: Potrace никогда не видит цвета, квантование выполняется раньше другим звеном. Понимание этого звена и отличает настоящее руководство от рядового туториала.

Квантовать значит выбрать палитру

Квантовать значит свести десятки тысяч цветов картины к горстке репрезентативных цветов. Работу делят три семейства алгоритмов с чёткими компромиссами.

Median cut (Хекберт, MIT 1980) строит трёхмерную гистограмму цветов, затем рекурсивно делит «коробку» цветов по самой протяжённой оси, по медиане, пока не получится K коробок, каждая примерно с равным числом пикселей. Это исторический алгоритм GIF. Надёжный и простой, но его разрез по медиане выравнивает количество, а не дисперсию: маленький красный акцент, редкий, но визуально решающий, может быть раздавлен.

Octree (Герваутц и Пургатхофер, 1988) вставляет каждый цвет в дерево с восемью ветвями и сливает наименее населённые узлы, когда палитра превышает K. Его решающее достоинство в том, что он работает за O(N) за один проход, с расходом памяти, ограниченным палитрой, а не изображением. Это идеальный алгоритм для потоковой обработки, малой памяти, реального времени. Качество чуть ниже k-means, поскольку слияние ограничено сеткой octree.

K-means относит каждый пиксель к ближайшему центроиду, пересчитывает центроиды и повторяет. Он даёт наилучшую точность, потому что минимизирует квадратичную ошибку, но он самый медленный и недетерминированный (результат зависит от инициализации; k-means++ его стабилизирует). Долго считавшийся слишком затратным, он был реабилитирован около 2011 года оптимизированными реализациями.

На практике: median cut и octree чтобы быстро предпросмотреть и «увидеть» палитру, k-means когда точность важнее скорости. Эталонный обзор это «Forty years of color quantization» (Artificial Intelligence Review, 2023).

Алгоритм Сложность Память Точность Детерминированность
Median cut почти линейная фиксированная гистограмма средняя да
Octree O(N), один проход O(K), отличная средняя да
K-means итеративный, медленнее пропорциональна данным наилучшая нет (без seed)

Контринтуитивный момент: квантовать в LAB, а не в RGB

Вот аргумент, отделяющий эксперта от любителя. Пространство RGB не является перцептивно равномерным. Две пары цветов, разделённые одинаковым евклидовым расстоянием в RGB, могут восприниматься как очень по-разному разнесённые, потому что глаз ультрачувствителен к зелёным и слабо чувствителен к тёмно-синим. Прямая в RGB становится кривой в восприятии.

Пространство CIELAB сконструировано так, чтобы евклидово расстояние приближало воспринимаемую разницу. А k-means как раз и предполагает евклидово пространство. Запустить k-means в LAB значит получить палитры, прилегающие к человеческому восприятию, с меньшими ошибками, чем в RGB. Правило: квантуют не в том пространстве, где хранят (sRGB), а в том, где воспринимают (LAB). Многие инструменты наивно сливают цвета по порогу в RGB, что переслияет или недослияет в зависимости от оттенка.

Delta-E: решить, сливать ли два цвета

Чтобы узнать, можно ли свести два цвета в один, измеряют их перцептивный разрыв, Delta-E. Эталонная шкала:

  • ΔE меньше или равно 1: разрыв незаметен невооружённым глазом. Слияние всегда безопасно.
  • ΔE от 1 до 2: заметно только при пристальном рассмотрении. Это эталон критического качества. Слияние безопасно для сокращения палитры.
  • ΔE от 2 до 3,5: заметно, но приемлемо для большинства задач, обычный допуск брендинга.
  • ΔE от 2 до 10: заметно с первого взгляда. Цвета сохранять различными свыше 3,5.
  • ΔE около 100: противоположные цвета.

В ходу две формулы. CIE76 это простое евклидово расстояние в LAB, которое переоценивает разрыв насыщенных цветов и недооценивает тёмно-синие. CIEDE2000 это нынешний стандарт, отдельно взвешивающий светлоту, цветность и оттенок. Именно эту метрику, а не наивное расстояние в RGB, и нужно использовать для решения о слиянии.

Постеризация против квантования

Эти два понятия часто путают. Квантование сокращает общее число уникальных цветов. Постеризация сокращает число градаций на канал, что даёт чёткие полосы. Для трассировки контура постеризация это не дефект: это необходимый осознанный выбор, превращающий картину с непрерывным тоном в конечное число трассируемых зон. Непрерывный градиент в плашках не трассируется, точка. Сгладить, затем задать четыре уровня даёт чёткий и заявленный плакатный эффект.

Ловушка дизеринга

Золотое правило: никогда не включайте дизеринг перед векторной трассировкой. Дизеринг (Флойд-Стейнберг с диффузией ошибки, либо упорядоченный/Bayer) разбивает бандинг, симулируя больше цветов, чем есть на самом деле, рассыпая микроточки. Это растровая техника, отличная для фотографии на экране. Но на выводе в плашках он порождает рой микроточек, то есть тысячи неуправляемых контуров. Дизеринг перед трассировкой это ловушка. Его законный эквивалент существует, но на стороне производства: это полутона, обрабатываемые RIP при печати, а не в SVG.

Гамут, слепая зона

Деталь, о которой забывают: LAB охватывает всё видимое, sRGB покрывает лишь его часть, а трафарет или CMYK ещё меньше. Насыщенный цвет масла или акрила может попросту оказаться вне печатаемого гамута. Поэтому квантование должно целиться в достижимые цвета (реальные краски, Pantone), а не только в самые точные на экране. Иначе вы утвердите на экране цвет, которого никогда не будет на носителе.

Подготовить изображение: что происходит до трассировки

Самая удачная настройка трассировщика никогда не спасёт плохую подготовку. Вот порядок конвейера и почему каждый этап важен.

Сглаживание краёв саботирует трассировку

Сглаживание краёв заполняет частично покрытые границей пиксели промежуточными значениями. Чёрная линия на белом фоне так порождает серую кайму. Даже «чистый» рисунок содержит десятки оттенков серого вдоль контуров. Для трассировщика это катастрофа: квантование раскладывает эти серые в отдельную корзину и создаёт паразитные микрообласти вдоль каждого края, отсюда лесенки и ореолы. Каноничный ореол возникает, когда два соседних цвета смешаны фильтром: переход красного в синий оставляет фиолетовую кайму, трассируемую как третий цвет-призрак. На картине эти переходные пиксели повсюду из-за сенсора и сжатия.

Ловушка JPEG

Сжатие JPEG создаёт сдвиги цвета вокруг краёв, ringing и блочность блоками 8x8 пикселей. Векторизаторы трассируют эти сдвиги как зазубренные края и контуры, которых в оригинале не было. Простой рефлекс: перевести в PNG и работать в PNG до любой трассировки. Никогда не перевекторизуйте фотографию картины, прошедшую через несколько перекодировок JPEG.

Дерево решений по фильтрам

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

Медианный фильтр. Он заменяет каждый пиксель медианой его окрестности. Он полностью убирает шум «соль-перец» (гауссов же лишь размазывает его), лучше сохраняет края и контраст, и это инструмент для изолированных спеклов, пыли при сканировании, битых точек. Ограничение: большое окно пересглаживает и скругляет углы.

Билатеральный фильтр. Это гауссиан с двумя ядрами: пространственное ядро (sigma_d, учитываются только близкие пиксели), умноженное на ядро интенсивности (sigma_r, учитываются только пиксели схожего цвета). Соседи по другую сторону края получают почти нулевой вес и исключаются из среднего. Край сохраняется, пока внутренность выравнивается. Это ровно то, что нужно на картине: выровнять зерно холста или микровариации плашки гуаши, не размягчая силуэт форм. Увеличение sigma_d сглаживает более крупные структуры; увеличение sigma_r постепенно вырождает в обычное гауссово размытие.

У билатерального фильтра два дефекта, о которых надо знать. «Staircase effect» создаёт плато интенсивности, придающие мультяшный вид. В векторизации это часто желательно, мы ищем плашки, но в избытке он выдумывает градации. «Gradient reversal» вносит ложные края, особенно при разложении на базу и детали.

Guided filter (Хе, Сан, Тан, 2013). Та же сохранность краёв, что у билатерального, но с линейной сложностью (независимой от радиуса) и без gradient reversal. Это современная замена, когда нужно чисто выровнять большое изображение, не выдумывая ложных краёв.

Короче: изолированные спеклы — медианный; выровнять поверхность, сохранив края, — билатеральный; та же задача на большом изображении или чтобы избежать ложных краёв — guided filter; никогда гауссово размытие перед трассировкой.

Правильное разрешение вычисляют, а не нагромождают

Potrace рассчитан на хорошую работу с изображениями высокого разрешения, но «чем больше, тем лучше» это неверно. Sweet-spot для трассировки лежит около 1000 — 2000 пикселей по большей стороне. Сверх этого качество не улучшается, зато SVG тяжелеет (ИИ-векторизаторы нередко выдают SVG с 10 000 опорными точками и более) и растёт риск падения.

Правильную цель вычисляют от итогового размера печати, а не нагромождая пиксели:

пиксели_источника = ширина_печати_см / 2,54 × целевое_DPI

Золотой стандарт печати это 300 DPI на финальном размере, 200 DPI приемлемый минимум, 72 DPI только для экрана. Чтобы напечатать репродукцию шириной 30 см при 300 DPI, нужно около 3540 пикселей в ширину в источнике. Если ваша фотография ниже, апскейл, в идеале через ИИ, даст трассировщику более чёткие края для слежения. Апскейл не создаёт реальной детали, но избавляет трассировщик от лесенки на недосэмплированном крае.

Despeckle, до и после

До трассировки, на бинарной маске, классическая морфология чистит: открытие (эрозия, затем дилатация) убирает мелкие изолированные точки, закрытие (дилатация, затем эрозия) затыкает микродыры и воссоединяет разорванную линию. Во время и после трассировки параметр turdsize у Potrace (по умолчанию 2) убирает всякий контур площадью менее N пикселей. Его повышение выбрасывает осколки шума, изолированные зёрна холста и остаточные артефакты вместо того, чтобы их векторизовать.

Порядок, который решает всё

  1. Перевести в PNG, если источник в JPEG.
  2. Сделать апскейл, если мы ниже вычисленного целевого разрешения.
  3. Подавить шум: медианный для спеклов, билатеральный или guided чтобы выровнять зерно и мазки.
  4. Квантовать цвет, в LAB.
  5. Трассировать.
  6. И только потом: despeckle (turdsize), упрощение контуров.

Правило, подытоживающее всё: сглаживаем до квантования, никогда после, и лёгкое сглаживание перед постеризацией делает полосы чистыми.

🙂😣

По техникам письма: физика лёгкости

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

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

Тушь и штриховой рисунок: самое лёгкое

Физика: тушь это плотный, непрозрачный пигмент с высоким контрастом на белой бумаге, по сути бинарный. Максимальная лёгкость. Сохраняем чистую линию, бесконечно масштабируемую, с возможностью трассировки по осевой линии (centerline, единственный контур по центру штриха, а не замкнутая обводка), идеальной для резки и гравировки. Теряем мало, разве что переменную толщину штриха при centerline. Ключевая настройка: чёрно-белый порог и выбор centerline против outline. Стоит знать: целиться в ручку не тоньше 0,5 мм, потому что штрихи 0,1 — 0,3 мм фрагментируются при обычных разрешениях сканирования. Избегать графита, который неравномерно отражает свет и даёт несогласованные значения серого, сбивающие алгоритмы порога. Обводить тушью перед сканированием.

Гуашь: чемпионка среди красок

Физика: гуашь это акварель, заряженная белилами, а значит, непрозрачная и, главное, самовыравнивающаяся, высыхающая в матовую поверхность без блика. При захвате никакой зеркальности: отсканированный цвет есть истинный цвет пигмента, стабильный по всей плашке. Очень высокая лёгкость. Сохраняем чёткие плашки и резкие границы; теряем почти ничего, если художник писал плашками, разве что микровариации кисти. Ключевая настройка: число цветов палитры, поднятое ровно настолько, чтобы покрыть реальные плашки. Матовая отделка и отсутствие блика делают гуашь заметно легче для оцифровки, чем глянцевые акрилы.

Акрил: легко, но решает отделка

Физика: акрил непрозрачен, как гуашь, но его связующее часто высыхает в сатиновую или глянцевую отделку, отсюда зеркальные блики, ставящие ложные светлые зоны. Нюанс: акриловая гуашь (Liquitex, Holbein) высыхает матово, без следов кисти, а значит, столь же легка, как гуашь. Высокая лёгкость, если матово и плашками, средняя при лессировках или глянцевой пастозности. Сохраняем плашки и контуры, теряем моделировку лессировок и фактуру пастозного слоя. Ключевая настройка: снимать в скрещённой поляризации, чтобы убить блик, прежде всего. Деградирует отделка, а не химия.

Масло: самое трудное среди непрозрачных красок

Трудность здесь прежде всего оптическая, а не цветовая. Пастозный слой это рельеф 3D, и рельефные зоны по-разному цепляют свет: один и тот же пигмент возвращает пять значений в зависимости от угла, которые квантование читает как столько же паразитных цветов. Глянцевый лак добавляет крупный зеркальный блик. Лессировки добавляют непрерывные переходы. Лёгкость от низкой до средней. Сохраняем крупные массы при сильном упрощении; теряем фактуру, переходы, эффект глубины. Ключевая настройка: захват в кросс-поляризации, чтобы видеть сквозь лак, иначе вы трассируете блики, а не живопись, затем сглаживание и контролируемая постеризация.

Акварель: эмблематически трудный случай

Два разных механизма, которые нельзя путать. Прозрачность: разбавленный пигмент в полупрозрачных слоях, непрерывные градиенты без границы, отсюда вынужденная постеризация или взрыв числа контуров. Гранулирование: крупные неровные пигменты (земли, ультрамарины, кадмии) скучиваются вместо равномерного осаждения, создавая крапчатую фактуру с микроконтрастом, которую алгоритм читает как шум и перетрассирует в сотни микроконтуров. Правило пигмента: чем мельче частицы, тем меньше гранулирования (фталоцианины и хинакридоны гладкие; земли, кадмии и ультрамарины гранулируют). Края «по-мокрому» размыты, неопределимы. Низкая лёгкость. Сохраняем общую атмосферу при сильной стилизации, теряем прозрачность, гранулирование и переходы, то есть саму суть медиума. Ключевая настройка: билатеральное размытие или шумоподавление перед трассировкой плюс осознанная постеризация.

Пастель: трудна из-за основы

Уникальный случай, где трудность идёт от бумаги. Пастель это чистый пигмент в порошке, удерживаемый исключительно зерном бумаги. Каждое зерно бумаги несёт или не несёт пигмент, отсюда систематическая крапчатая микрофактура, проступающая текстура основы, ровно тот высокочастотный шум, который алгоритм перетрассирует. Техника «broken color» (слои, которые глаз смешивает оптически) по определению не имеет ни одной чёткой границы. Низкая лёгкость. Сохраняем крупные тональные массы при сильном сглаживании, теряем бархатистость, зерно, оптическое смешение. Ключевая настройка: сильное шумоподавление или размытие, чтобы утопить зерно бумаги, и малое число цветов, иначе файл взорвётся спеклами.

Цифровая живопись: всё зависит от кисти

«Цифровая» не значит «чистая». Жёсткая растровая кисть со 100-процентной непрозрачностью даёт идеальные плашки, уже предварительно квантованные, нередко лучший случай после туши. Текстурная кисть, с низкой непрозрачностью или с растушёвкой, ставит те же проблемы, что и масло. Очень высокая лёгкость в flat и cel-shading, низкая в текстурной реалистичной живописи. Сохраняем плашки и штриховую графику, теряем фактуру кисти, зерно, переходы. Решающая ключевая настройка: если вы контролируете файл, экспортируйте по слоям плашек и сводите размытия перед трассировкой. Писать или сводить плашками на стороне источника бьёт любую настройку на стороне векторизатора.

Смешанная техника и коллаж: сегментировать

Нет общей лёгкости, она локальна. Одна и та же работа сводит вместе акварельную заливку (трудно), линию тушью (легко), плашку гуаши (легко), наклеенную фактурную бумагу (шум). Глобальная настройка всегда проваливается: порог, спасающий тушь, уничтожает акварель, и наоборот. Лёгкость в лучшем случае средняя. Сохраняем высококонтрастные элементы, теряем полупрозрачные или фактурные участки. Ключевая настройка: сегментировать, векторизовать зону за зоной с разными настройками, затем собрать заново. Это единственный медиум, где верная «настройка» есть метод работы, а не ползунок.

Классификация в одном взгляде

Техника письма Лёгкость Ключевая настройка
Тушь / штриховой рисунок Тривиальная Порог + centerline/outline
Цифровая flat / cel Тривиальная Экспорт по слоям плашек
Гуашь Очень лёгкая Число цветов
Матовый акрил / акриловая гуашь Очень лёгкая Число цветов
Глянцевый акрил Лёгкая (при условии захвата) Кросс-поляризация, затем палитра
Масло плашками Средняя Сглаживание + постеризация
Пастель Трудная Сильное шумоподавление + мало цветов
Акварель Трудная Билатеральный + осознанная постеризация
Масло пастозное / лак / лессировки Очень трудная Кросс-поляризация + сильное упрощение
Смешанная / коллаж Переменная Сегментировать по зонам

Экспорт на станок: точный формат и реальная ловушка

Вот где много материала уходит в мусор, потому что путают формат файла и то, что станок на самом деле читает. Сперва нужно задать три семейства станков.

Семейство A, прямое чтение вектора. Станок читает SVG или DXF и сам строит путь инструмента: лазерная резка и маркировка, Cricut и Silhouette, плоттеры для резки винила. Вектор и есть поставляемый результат.

Семейство B, путь инструмента через G-code. Станок выполняет лишь файл, сгенерированный CAM-программой: ЧПУ-фрезер, фрезерный станок, плазма, гидроабразив. Вектор это только первый этап; станок никогда не читает ни DXF, ни SVG, только .nc, .gcode или .tap.

Семейство C, файл стежков. Вышивка читает не изображение и не вектор, а оцифрованный файл стежков.

Cricut и Silhouette (семейство A)

Формат: SVG, готовый к резке, DXF как запасной вариант. Ловушки, губящие больше всего материала: контуры должны быть замкнуты, иначе станок рисует вместо того, чтобы резать; преобразуйте обводки (strokes) в заливки (fills), Design Space плохо работает со strokes; никакого встроенного растра в SVG, растр внутри SVG не режется; детали мельче 0,25 дюйма рвутся при отслаивании, особенно на виниле; любой SVG, у которого большая сторона превышает 12 дюймов, автоматически уменьшается до 12 дюймов в Design Space; DXF на Cricut только в десктопе и вебе, не в мобильном приложении. У Silhouette бесплатная редакция Basic вообще не открывает SVG: нужна Designer Edition, иначе откат на DXF. Это причина номер один жалобы «мой SVG не открывается».

Лазерная резка и гравировка (семейство A)

LightBurn, отраслевой стандарт, импортирует AI, PDF, SVG, DXF, PLT и растры. Осторожно с расхожим мнением «лазер выдаёт G-code»: это верно для машин на GRBL и диодных, но CO2 с контроллером Ruida экспортируют проприетарный файл .RD, а не G-code. Полезный приём с DXF: сохранение в R12 автоматически преобразует сплайны в полилинии, потому что сплайны появились позже R12, что вычищает сплайны, которые старый контроллер прочитать не умеет. Glowforge принимает SVG, PDF, JPG и PNG для всех, но DXF оставляет за участниками Premium. Ловушки: отправить растр, думая, что режешь (у пикселя нет контура, программа предлагает только гравировку), неверные единицы (дюймы читаются как миллиметры), открытые контуры, толстые штрихи там, где хотелось тонкой линии реза.

ЧПУ-фрезер и фрезерный станок (семейство B)

Вектор это лишь этап A. Конвейер в три такта: DXF или SVG в 2D (или STL/STEP для 3D-рельефа), затем CAM (Carbide Create, VCarve, Fusion 360), добавляющий диаметр инструмента, глубину прохода, скорости, перемычки, заходы и компенсацию ширины реза, затем G-code, который выполняет станок. Ни один инструмент «изображение в вектор» этот G-code не производит. DXF предпочтителен в 2D за точные CAD-единицы. Ловушки: DXF без информации о единицах импортируется в 25,4 раза больше или меньше нужного; открытые или сдвоенные контуры из автотрассировки (один штрих, обведённый двумя линиями) мешают CAM понять, какая сторона внутренняя; 3D-рельеф требует STL или STEP, плоский вектор не описывает глубину.

Плазма и гидроабразив (семейство B)

Предпочтительный формат: DXF. OMAX явно рекомендует DXF AutoCAD Release 12 в текстовом ASCII, со всем разбитым на простые линии и дуги (разбить полилинии, разбить блоки). Станок выполняет G-code, сгенерированный CAM (SheetCAM, ProNest), который добавляет заходы, врезки, порядок реза и компенсацию ширины реза. Ловушки: сплайны, оставленные сплайнами (многие контроллеры их не читают, преобразовать в полилинии с дуговой подгонкой с допуском около 0,02 мм), неразбитые сущности, сдвоенные линии, невекторизованный текст, путаница мм/дюйм.

Вышивка (семейство C)

Самый недопонятый случай. DST, PES, JEF, EXP, VP3 это файлы стежков, а не векторы. Вышивальная машина не читает SVG: нужно оцифровать. Оцифровка переводит формы и цвета в последовательность стежков, каждый со своим направлением, плотностью и типом, плюс настил (underlay), компенсация push/pull, остановки и обрезки. Ни один векторизатор такого не создаёт. Преобразование «SVG в вышивку в один клик» это маркетинговый миф: в лучшем случае чистый SVG это лучшая отправная точка для импорта в Ink/Stitch, Hatch или Wilcom, где стежки назначает человек. Заметьте: DST (Tajima) универсален, но не хранит никакого цвета, только коды остановки: цвета переназначаются на станке. Для цветоверной работы используйте нативный формат (PES у Brother, JEF у Janome).

Трафаретная печать: для картины вектор почти не нужен

Принципиальное различие. Плоский логотип в плашках даёт спот-сепарации векторами, по экрану на цвет, с именованными свотчами Pantone. Но картина это изображение с непрерывным тоном: это не векторная работа. Это симулированный процесс или CMYK, делаемый в Photoshop в растре с полутонами (halftones), а не в Illustrator. Несколько производственных ориентиров: переход со спота на симулированный процесс происходит около 5 — 8 цветов; симулированный задействует 6 — 12 красок на 8 — 12 экранах; линиатура текстильной сетки 45 — 55 LPI, куда грубее офсета на 133 — 175 LPI, из-за плетения сита; углы растра смещаются примерно на 30 градусов во избежание муара (в CMYK: K на 45, M на 75, C на 15, Y на 0, а чистый остаточный узор называется розеткой); треппинг слегка перекрывает соседние зоны во избежание белых просветов при малейшем сдвиге приводки, растягивая более светлый цвет в более тёмный. Чтобы воспроизвести картину трафаретной печатью, вектор почти не нужен, это растровый полутоновый поток.

Сублимация, DTF, DTG: растр, а не вектор

Это струйные процессы. Поставляемый результат это прозрачный PNG на 300 DPI в финальном размере, в sRGB, а не SVG. Ниже 200 DPI края смягчаются, ниже 150 DPI это размыто. Растр необходим для полноцветных фотографий и непрерывных тонов, ровно случай картины. RIP автоматически генерирует белую подложку на тёмном текстиле. Векторизатор здесь не решает ничего из поставляемого результата; единственный полезный вклад инструмента преобразования это растровый апскейл низкокачественного источника.

Вывеска и широкоформатный винил

При одной только резке вектор обязателен, лезвие идёт по контуру. В print-and-cut (Roland VersaWorks) линия реза должна быть векторным контуром, обводка которого несёт сопроводительный цвет, названный в точности «CutContour», с учётом регистра, сохранённый в EPS. Без этого точного имени RIP печатает линию вместо того, чтобы её резать.

Когда растр бьёт вектор

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

Решить: векторизовать, апскейлить или оставить в покое

Сначала разбор по тону

Решить число плашек значит решить, сколько тональных градаций (светлая, средняя, тёмная) мы сохраняем. Сделать разбор по тону до станка, то есть мысленно свести картину к трём или пяти крупным тональным массам, значит предвосхитить то, что выдаст k-means, и удержать художественный контроль вместо того, чтобы ему подчиняться. На практике рассчитывайте на 3 — 5 плашек для осознанно графического плакатного подхода и на 8 — 12, чтобы остаться ближе к «живописи».

ИИ-апскейл, честная альтернатива

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

Ваша задача Верный инструмент
Резка, гравировка, широкий формат в плашках Векторизовать
Верный тираж картины как она есть ИИ-апскейл (сверхразрешение)
Показ на экране или в вебе Оптимизированный PNG или WebP (легче, чем SVG на 50 000 узлов)
Воспроизведение медиума с непрерывными градиентами Не векторизовать

Когда не векторизовать, осознанно

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

Ландшафт инструментов (июнь 2026)

Приведённые ниже цены проверены в июне 2026 года и могут измениться. Различие, структурирующее всё: одни инструменты бинаризуют и складывают проходы стопкой (Inkscape, Illustrator в исторической логике), другие работают с цветом нативно (VTracer, Vector Magic, Vectorizer.AI, ИИ). Именно это объясняет, почему у первых картина выходит полосами.

Inkscape / Trace Bitmap. Бесплатно, открытый исходный код, на всех системах. Движок Potrace, а значит, строго bi-level; цвет симулируется наложением проходов, отсюда видимые швы. Для кого: нулевой бюджет, штриховая графика и чёрно-белые логотипы, дизайнеры, готовые повозиться. Не для воспроизведения картины с непрерывными тонами.

Illustrator Image Trace. Платно, по подписке, никогда не продаётся отдельно: нужен весь Illustrator, от 22,99 доллара в месяц при годовом обязательстве до 31,49 доллара помесячно без обязательства. Самый управляемый трассировщик (пресеты, ползунки контуров/углов/шума, цветовые режимы). Но он не генерирует градиенты (градиенты становятся плашками), апскейл через автотрассировку проваливается, а потеря детали неизбежна. Для кого: профи, уже в экосистеме Adobe, желающие ретушировать контуры.

VTracer. Бесплатно, открытый исходный код. Ядро на Rust, пакет Python, CLI и бесплатное веб-демо на WASM прямо в браузере, без установки. Настоящий цветовой конвейер, сложность O(n), компактный вывод наложением. Ограничение: нет официального нативного GUI, ориентирован на плашки. Для кого: разработчики, автоматизированные конвейеры, быстрая и бесплатная пакетная цветная обработка.

Vector Magic. Платно, два разных продукта: онлайн около 8,99 евро в месяц (выводы EPS, SVG, PDF) или десктоп с разовой покупкой около 274 евро, добавляющей выводы AI и DXF. Пробная версия с полным предпросмотром, но с отключённым сохранением. Известен автоопределением настроек и чистым результатом. Для кого: чистый цветной результат без кривой освоения Adobe.

Vectorizer.AI. Платно, глубокое обучение в полном цвете. Веб-приложение около 8,99 евро в месяц безлимитно, с бесплатным интерактивным предпросмотром до покупки; API по кредитам с убывающей ценой. Выводы SVG, PDF, EPS, DXF, PNG. Субпиксельная цветовая трассировка, подгонка геометрических форм. Это самый релевантный для картины полноцветный ИИ-конкурент, с доступным DXF.

Recraft. Freemium. Ограниченный бесплатный тариф, затем Basic за 10 долларов в месяц, Advanced за 27, Pro за 48. Делает текст в SVG и растр в SVG. Известен более чистыми контурами, чем Image Trace, на простых источниках, но пасует на сложных изображениях. Нюанс: Recraft сперва генерирует изображение, затем его векторизует, это не прямое векторное рисование.

VectoSolve. Платно по кредитам. Его фактический угол: он напрямую выдаёт готовые для станка SVG и DXF, рассчитанные на прямую резку (лазер Glowforge или xTool через LightBurn, каттеры Cricut и Silhouette, плоттеры для вывесок Roland или Graphtec и ЧПУ как первый этап перед CAM). Чтобы сравнить целевые форматы до запуска резки, его справочная страница форматы файлов сводит воедино ограничения станок за станком. Требуется честность: он не генерирует G-code, не оцифровывает вышивку, не строит 3D-сетку. ЧПУ всё ещё требует CAM на выходе, вышивка требует программы оцифровки.

Вместо рейтинга «лучший инструмент» рассуждайте по сценариям использования: бесплатно и повозиться — Inkscape; профессиональный контроль и ретушь — Illustrator; цвет бесплатно и пакетно — VTracer; чистый автоматический цвет — Vector Magic или Vectorizer.AI; генерировать и векторизовать в вебе — Recraft; готовый для станка вывод DXF — VectoSolve.

Сколько весит этот рынок, честно

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

Мировой print-on-demand 2025 года лежит в сердцевине оценок между 10,8 и 13 миллиардами долларов (Grand View 10,78; IMARC 11,4; Mordor 12,15; Straits 12,39; Precedence 12,96), с CAGR, часто называемым около 24-25 %. Рынок персональных режущих машин весит около 1,5 миллиарда долларов в 2025 году, во главе с Cricut, чей годовой оборот около 830-850 миллионов. Лазерная гравировка и резка колеблется между 2,4 и 7,4 миллиарда в зависимости от взятого периметра, с CAGR порядка 7,6 — 8,3 %. И как конкретный прокси спроса на векторные файлы: сегмент цифровых загрузок Etsy сделал около 3,2 миллиарда продаж в 2024 году, из которых файлы для резки SVG составляют около 22 %. Это реальный и адресуемый рынок, а не размытый агрегат.

Чтобы копнуть глубже

Эталонные технические источники, если хотите углубиться: документация Potrace Питера Зелингера (статья 2003 года и страница руководства), репозиторий и README VTracer (visioncortex), обзор «Forty years of color quantization» (Artificial Intelligence Review, 2023) по квантованию, статья «Guided Image Filtering» Хе, Сана и Тана (PAMI 2013) и страница Wikipedia о билатеральном фильтре по предобработке, «Image Vectorization using Optimized Gradient Meshes» (SIGGRAPH 2007) по gradient mesh, а также DiffVG (SIGGRAPH Asia 2020) с LIVE (CVPR 2022) по нейросетевому переднему краю. Со стороны производства, ресурсы screenprinting.com о споте, симулированном процессе и CMYK, а также документация OMAX и LightBurn по экспорту на станок.

FAQ

Можно ли в самом деле векторизовать акварель? Да, но не воспроизвести её. Получится интерпретация в 3 — 4 плашки, в стиле плаката или трафаретной печати. Прозрачность, гранулирование и мокрые переходы, то есть суть медиума, не выживают. Если хотите акварель как она есть, сделайте растровый апскейл, а не векторизацию.

Какой инструмент лучший среди бесплатных? Inkscape для чёрно-белого и штриховой графики, VTracer для цвета (с веб-демо без установки). Бесплатный предпросмотр Vectorizer.AI тоже позволяет оценить ИИ-результат до оплаты.

Почему мой SVG не открывается в Silhouette? Потому что бесплатная редакция Basic не открывает SVG, это самая частая причина. Нужна Designer Edition, либо пройти через DXF.

Нужно ли векторизовать для вышивки? Нет. Вышивка использует не изображение и не вектор, а оцифрованный файл стежков (DST, PES, JEF). Преобразование SVG в вышивку в один клик это миф; в лучшем случае чистый SVG служит отправной точкой для оцифровки, сделанной в специализированной программе.

Выдаёт ли мой лазер G-code? Не всегда. Машины на GRBL и диодные да, но CO2 с контроллером Ruida экспортируют проприетарный файл .RD через LightBurn.

Сколько цветов выбрать? Для осознанно графического результата 3 — 5 плашек. Чтобы остаться ближе к живописи, 8 — 12. Решайте, думая в тональных градациях (светлая, средняя, тёмная), а не в абсолютных цветах. И квантуйте в LAB, а не в RGB, чтобы слияние следовало восприятию.

JPEG или PNG на входе? PNG, всегда. JPEG создаёт сдвиги цвета вокруг краёв, которые трассировщик превращает в паразитные зазубрины.

Нужно ли размывать изображение перед трассировкой? Не гауссовым размытием, которое фабрикует ровно те переходные пиксели, которых мы хотим избежать. Используйте фильтр, сохраняющий края: медианный для спеклов, билатеральный или guided filter, чтобы выровнять поверхность, сохранив чёткие контуры.

Чем больше моё изображение, тем лучше? Нет. Sweet-spot трассировки лежит около 1000 — 2000 пикселей по большей стороне. Сверх этого качество не улучшается, SVG тяжелеет и появляется риск падения. Вычисляйте разрешение от итогового размера печати (300 DPI), а не нагромождая пиксели.

Стоит ли Potrace за всеми векторизаторами? Нет. Potrace это движок свободных настольных инструментов (Inkscape, FontForge, SVGcode), строго чёрно-белый. У VTracer, Adobe Image Trace и ИИ (Recraft, Vectorizer.AI) есть каждый свой собственный движок, и они работают с цветом нативно.

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

Связанные инструменты и справочники

Бесплатные инструменты и справочники, чтобы довести векторный файл до станка.