Векторизация изображения – из PNG в SVG

Векторизация включает преобразование растровых изображений в математические кривые и геометрические фигуры, которые затем сохраняются в виде файлов SVG. Aspose.SVG for Python via .NET API предлагает высокоскоростную библиотеку для различных задач анализа SVG, включая векторизацию изображений. Aspose.SVG предлагает универсальные возможности для преобразования PNG в SVG векторную графику, как программно с помощью библиотеки Python, так и онлайн с помощью Векторизатора Изображений для быстрого и качественного преобразования в режиме реального времени.


Онлайн Векторизатор Изображений

Готовы превратить свою пиксельную графику в четкую векторную графику? Векторизатор Изображений предназначен для преобразования изображений, таких как PNG, в SVG. После векторизации все графические элементы, такие как геометрические фигуры, кривые Безье, дуги, пути и линии, сохраняются как векторные изображения в файлах SVG. Векторизатор Изображений поддерживает различные форматы растровых изображений, включая JPEG, JPG, PNG, BMP, GIF, TIFF, ICO. Легко управляйте векторизованным изображением SVG с помощью интерактивных элементов управления, связанных с параметрами векторизации. Преобразуйте изображение в SVG и получите масштабируемую и четкую векторную графику уже сегодня!





Как векторизировать PNG на Python

Aspose.SVG for Python via .NET API предоставляет классы и методы, которые позволяют конвертировать PNG в SVG и работать с различными вариантами предварительной обработки изображений перед сохранением их в векторном формате. Вы можете управлять следующими параметрами векторизации: trace_smoother, error_threshold, max_iterations, path_builder, stencil и т. д. В следующем примере кода мы преобразуем изображение в SVG с явно заданными параметрами векторизации:


Преобразование изображения в SVG на Python

import os
from aspose.svg import *
from aspose.svg.drawing import *
from aspose.svg.rendering.image import *
from aspose.svg.imagevectorization import *

# Setup directories
input_folder = "data/"
output_folder = "output/"
if not os.path.exists(output_folder):
    os.makedirs(output_folder)

# Configuration for image vectorization
path_builder = BezierPathBuilder()
path_builder.trace_smoother = ImageTraceSmoother(2)  # Example severity level
path_builder.error_threshold = 30.0  # Example threshold
path_builder.max_iterations = 30  # Example max iterations

vectorizer = ImageVectorizer()
vectorizer.configuration.path_builder = path_builder
vectorizer.configuration.colors_limit = 25  # Example color limit
vectorizer.configuration.line_width = 1.0  # Example line width

# Vectorize PNG
src_file = "image.png"  # Specify the sourse image file
with vectorizer.vectorize(os.path.join(input_folder, src_file)) as document:
    output_file = os.path.join(output_folder, "vectorized-image.svg")  # Specify the output SVG file
    document.save(output_file)

print(f"Vectorized image saved to {output_file}")


Действия по преобразованию PNG в SVG с использованием Python

Чтобы векторизовать PNG с помощью библиотеки Python Aspose.SVG, вам необходимо выполнить несколько шагов:

  1. Импортируйте необходимые модули и классы из aspose.svg, aspose.svg.imagevectorization и других необходимых пакетов.
  2. Создайте экземпляр класса BezierPathBuilder , чтобы определить стратегию построения пути.
    • Установите атрибут trace_smoother, используя экземпляр ImageTraceSmoother с уровнем severity 2. Этот параметр определяет, насколько будут сглаживаться прослеживаемые пути. Уровень severity указывает степень сглаживания, примененного к контурам.
    • Установите значение свойства error_threshold. Этот параметр определяет допустимый предел погрешности для аппроксимации растровых форм векторными путями. Более низкие значения приводят к более точным приближениям, а более высокие значения позволяют добиться большего упрощения.
    • Укажите значение свойства max_iterations объекта BezierPathBuilder. Этот параметр определяет максимальное количество итераций, разрешенное для алгоритма оптимизации пути во время векторизации, то есть сколько раз алгоритм будет пытаться улучшить точность пути.
  3. Создайте экземпляр класса ImageVectorizer . ImageVectorizer – это основной класс, используемый для преобразования изображений в векторную графику.
    • Назначьте конфигурацию path_builder (определенную ранее) объекту векторизатора. Это означает, что векторизатор будет использовать настройки, указанные в path_builder, для создания и оптимизации пути.
    • Установите свойство colors_limit класса ImageVectorizerConfiguration . Этот параметр определяет максимальное количество цветов, которые будут использоваться в векторизованном изображении. Это влияет на то, как векторизатор обрабатывает упрощение цвета и уменьшает количество уникальных цветов в выходных данных.
    • Укажите свойство line_width класса ImageVectorizerConfiguration. Этот параметр определяет ширину векторных путей в результирующем файле SVG. Он управляет шириной обводки контуров, созданных во время векторизации.
  4. Используйте метод vectorize() для векторизации PNG из указанного файла.
  5. Сохраните векторизованное изображение в формате SVG, используя метод save() для полученного SVGDocument.

Векторизация изображений – это процесс преобразования растровых изображений в векторную графику, такую ​​как кривые Безье, пути и линии. В главе документации Векторизация – базовый обзор вы найдете подробную информацию о векторизации изображений, включая описание процесса и доступных опций. Узнайте, как векторизовать растровые изображения в документ SVG. Глава также включает несколько примеров, демонстрирующих функциональные возможности пространства имен Aspose.Svg.ImageVectorization и влияние свойств конфигурации на результаты.

Aspose.SVG предлагает бесплатный онлайн- Векторизатор изображений , который позволяет конвертировать растровые изображения JPG, JPEG, PNG, BMP, TIFF, GIF и ICO в векторную графику. С помощью этого приложения вы сможете применять различные варианты для достижения идеального результата. Сэкономьте время и испытайте преимущества векторной графики, попробовав этот векторизатор изображений уже сегодня!


FAQ

1. Как преобразовать PNG в векторную графику SVG?

Aspose.SVG позволяет конвертировать PNG в SVG онлайн или программно. Например, вы можете векторизовать PNG в режиме реального времени с помощью онлайн Векторизатора Изображений, который быстро и качественно превратит их в векторную графику SVG. С другой стороны, вы можете использовать Aspose.SVG API для векторизации PNG программно.

2. Что такое векторизация изображений?

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

3. Для чего нужна векторизация изображений?

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

4. Как происходит векторизация?

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



Начало работы с Python API

Если вы хотите разрабатывать масштабируемую векторную графику и приложения к ней, установите наш гибкий и высокоскоростной Aspose.SVG for Python via .NET API. pip – это самый простой способ загрузить и установить Aspose.SVG for Python via .NET. Для этого выполните следующую команду:

pip install aspose-svg-net

Более подробную информацию об установке библиотеки Python и системных требованиях можно найти в Документации Aspose.SVG. .

Другие поддерживаемые Векторизаторы Изображений

JPG to SVG (JPEG Image)
PNG to SVG (Portable Network Graphics)
Image to SVG (Raster Image)
BMP to SVG (Microsoft Windows Bitmap)
Image Stencil (Stencil Maker)