Преобразование BMP / PNG / JPEG в файл SVG с использованием Python - PullRequest
1 голос
/ 31 мая 2019

В настоящее время я пытаюсь преобразовать BMP-файлы в SVG-файлы, используя Python.Я пытаюсь найти библиотеку Python, которая позволит мне конвертировать файлы BMP / PNG / JPEG в файлы SVG.

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

Буду признателен за любые предложения.Спасибо!

Редактировать: я обнаружил, что не использовал правильные настройки для Potrace в своем тестировании.Это то, что дало «ужасный» результат.К сожалению, я также узнал, что Potrace не поддерживает цветной вывод.Я ссорился с Inkscape и Vector Magic, и думаю, что на данный момент это мой лучший выбор.

Ответы [ 2 ]

1 голос
/ 31 мая 2019

Я бы предложил использовать potrace для python.
Используйте эту ссылку: https://pypi.org/project/pypotrace/
Вот документация: https://pythonhosted.org/pypotrace/ref.html#

Как это:

from potrace import Bitmap

# Initialize data, for example convert a PIL image to a numpy array
# [...]

bitmap = Bitmap(data)
path = bitmap.trace()
0 голосов
/ 31 мая 2019

BMP-файлы представляют собой растровую графику, которая в основном представляет собой фиксированный массив красных / зеленых / синих пикселей.

SVG-файлы представляют собой векторную графику, представляющую собой набор линий, таких как «рисовать линию из (x1, y1)»to (x2, y2) "

Можно конвертировать BMP в SVG, но ожидать качественного результата нереально, особенно если вы работаете с фотореалистичными изображениями.

Вам нужно будет «векторизовать» изображение, как показано на этой ссылке .Потрас делает это для вас, поэтому это ваш лучший выбор.

...