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

Векторизація передбачає перетворення растрових зображень на математичні криві та геометричні фігури, які потім зберігаються як файли SVG. Aspose.SVG for Python via .NET API пропонує високошвидкісну бібліотеку для різних завдань аналізу SVG, включаючи векторизацію зображень. Aspose.SVG пропонує різноманітні варіанти перетворення PNG у SVG, як програмно, так і онлайн. Тут ми покажемо вам, як конвертувати PNG у SVG за допомогою бібліотеки Python Aspose.SVG. З іншого боку, онлайн Векторизатор Зображень дозволяє векторизувати зображення в реальному часі, забезпечуючи швидке та високоякісне перетворення. Спробуйте Векторизатор Зображень прямо зараз!


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

Готові перетворити своє піксельне мистецтво на чітку векторну графіку? Векторизатор Зображень призначений для перетворення зображень, наприклад 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 із явно вказаними параметрами векторизації:


Перетворення PNG на 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) контролює, наскільки згладжуються трасовані шляхи. Рівень severity вказує на ступінь згладжування, застосованого до контурів.
    • Установіть значення для властивості error_threshold BezierPathBuilder. Цей параметр визначає допустиму похибку для апроксимації растрових форм за допомогою векторних шляхів. Нижчі значення призводять до більш точних наближень, тоді як вищі значення дозволяють більше спростити.
    • Вкажіть значення для властивості max_iterations об’єкта BezierPathBuilder. Цей параметр визначає максимальну кількість ітерацій, дозволених для алгоритму оптимізації шляху під час векторизації, тобто скільки разів алгоритм намагатиметься підвищити точність шляху.
  3. Створіть екземпляр класу ImageVectorizer . ImageVectorizer – це основний клас, який використовується для перетворення зображень у векторну графіку.
    • Призначте конфігурацію path_builder (визначену раніше) об’єкту vectorizer. Це означає, що векторизатор використовуватиме параметри, указані в path_builder для створення та оптимізації шляху.
    • Установіть властивість colors_limit класу ImageVectorizerConfiguration . Цей параметр визначає максимальну кількість кольорів, які будуть використані у векторизованому зображенні. Це впливає на те, як векторизатор обробляє спрощення кольорів і зменшує кількість унікальних кольорів у виводі.
    • Вкажіть властивість line_width класу ImageVectorizerConfiguration. Цей параметр визначає ширину векторних контурів у кінцевому файлі SVG. Він контролює ширину обведення контурів, створених під час векторизації.
  4. Використовуйте метод vectorize() , щоб векторизувати PNG із зазначеного файлу.
  5. Збережіть векторизоване зображення як файл SVG за допомогою методу save() в отриманому SVGDocument.

Векторизація зображень – це процес перетворення растрових зображень у векторну графіку, таку як криві Без’є, шляхи та лінії. У розділі документації Image and Text Vectorization ви знайдете детальну інформацію про векторизацію зображень, включаючи опис процесу та доступні параметри. Дізнайтеся, як векторизувати растрові зображення в документ SVG. Розділ також містить кілька прикладів, що демонструють функціональні можливості простору імен Aspose.Svg.ImageVectorization і вплив властивостей конфігурації на результати.

Aspose.SVG пропонує безкоштовний онлайн Векторизатор Зображень , який дозволяє конвертувати растрові зображення JPG, JPEG, PNG, BMP, TIFF, GIF і ICO у векторну графіку. За допомогою цього додатка ви можете застосовувати різні варіанти для досягнення ідеального результату. Заощадьте час і відчуйте переваги векторної графіки, спробувавши цей Векторизатор Зображень сьогодні!


FAQ

1. Як векторизувати PNG?

Aspose.SVG дозволяє конвертувати PNG у SVG будь-яким способом – онлайн чи програмно. Наприклад, ви можете векторизувати PNG у реальному часі за допомогою Online Image Vectorizer , який перетворює ваші зображення швидко та з високою якістю. З іншого боку, ви можете використовувати Aspose.SVG for .NET API для програмної векторизації PNG.

2. Що таке перетворення растру у вектор?

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

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

Векторні зображення необхідні будь-якому професіоналу, який працює з малюнками, графікою чи ескізами. Багато дизайнерів, друкарів, архітекторів і художників часто вирішують працювати з ескізами чи малюнками як векторними зображеннями. І у них є вагомі причини! На відміну від растрової графіки, векторні зображення можна змінювати та масштабувати без втрати якості, і вони все одно відображатимуться так само чітко. Також векторизацію можна використовувати для оновлення або відновлення зображень.
Векторні зображення – це те, що вам потрібно для створення банерів, логотипів, карт, знаків, вишивок, гравюр, графіків, креслень тощо.

4. Як відбувається векторизація?

У процесі векторизації використовується квантування кольорового зображення – техніка, яка зменшує кількість різних кольорів, що використовуються в зображенні, щоб нове зображення було якомога візуально схожіше на оригінальне. Потім Vectorizer замінює всі однакові кольорові плями чи пікселі геометричними фігурами чи кривими за допомогою набору алгоритмів трасування контурів. Останнім кроком є перетворення точок трасування на лінії контуру 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)