Написано Ширли Ван. Обсуждение документа под названием «Растеризация дифференцируемой векторной графики для редактирования и обучения».

Вы, наверное, знаете, что такое PNG и JPG, и как их можно представить в матричном формате (одна ячейка на каждый пиксель), но знаете ли вы о формате изображения SVG? SVG (масштабируемая векторная графика) хранит изображение в виде векторных путей, составляющих изображение, а не значений для каждого пикселя. Из-за этого они хорошо выглядят независимо от размера, поэтому они являются популярным форматом изображений для веб-разработки. Однако исследования компьютерного зрения с использованием таких векторных изображений сильно отстают от традиционно используемых растровых изображений. Все популярные наборы данных изображений состоят из растровых изображений (например, ImageNet), и нейронные сети, обученные на этих растровых изображениях, уже работают очень хорошо, а точность классификации легко достигает 90-х годов.

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

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

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

Но затем мы возвращаемся к проблеме, связанной с отсутствием большого количества работы с векторными изображениями и отсутствием хорошо зарекомендовавшего себя набора данных векторных изображений для обучения моделей. Мы не можем обучить чисто векторную модель изображения на растровых изображениях, если нет дифференцируемого способа перехода от векторного изображения к растровому (поскольку для обратного распространения необходима дифференцируемость). Мы также не можем просто растрировать векторное изображение, отправить его через обычную CNN, а затем векторизовать вывод, поскольку в результате получается векторное изображение с сильно отличающейся структурой от оригинала. Это подводит нас к основному документу этой статьи: «Растеризация дифференцируемой векторной графики для редактирования и обучения», опубликованной в 2020 году. В документе представлен дифференцируемый растеризатор для векторной графики, что обеспечивает широкий спектр использования и новые возможности для векторных изображений. Я хотел показать некоторые результаты статьи, так как их очень приятно наблюдать.

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

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

В документе также используется их дифференцируемый растеризатор для обучения GAN (генеративно-состязательной сети) и VAE (вариационного автоматического кодировщика) на MNIST, где модель обучается прогнозировать положение точек, ширину штриха и параметры непрозрачности пары из двух сегментов. Пути Безье вместо выходного растрового изображения. Их модели способны генерировать хорошие изображения чисел точно так же, как GAN или VAE, выводящие растровые изображения, обученные на MNIST. Но поскольку их модель предсказывает только особенности путей, можно легко настроить и стилизовать предсказанное векторное изображение при постобработке, чтобы получить действительно классные числа.

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

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

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

Ссылки

Цзы-Мао Ли, Михал Лукач, Микаэль Гарби, Джонатан Раган-Келли
Растеризация дифференцируемой векторной графики для редактирования и обучения.
Транзакции ACM на графике 39 (6) (Материалы ACM SIGGRAPH Asia 2020)