我有一个想以svg格式保存的图像。 图像采用numpy数组的形式。 虽然有很多方法可以用不同的图像格式保存数组,但我找不到那个可以在svg中完成的方法。
任何指针或python脚本都会很棒!
由于
答案 0 :(得分:1)
由于您的图像采用栅格格式,因此您可以做的最好的事情就是使用potrace之类的程序将其转换为矢量图形。它有python绑定pypotrace。
示例代码:
import numpy as np
import potrace
# Make a numpy array with a rectangle in the middle
data = np.zeros((32, 32), np.uint32)
data[8:32-8, 8:32-8] = 1
# Create a bitmap from the array
bmp = potrace.Bitmap(data)
# Trace the bitmap to a path
path = bmp.trace()
# Iterate over path curves
for curve in path:
print "start_point =", curve.start_point
for segment in curve:
print segment
end_point_x, end_point_y = segment.end_point
if segment.is_corner:
c_x, c_y = segment.c
else:
c1_x, c1_y = segment.c1
c2_x, c2_y = segment.c2