从文本创建样条曲线图

时间:2018-01-16 17:37:13

标签: python

y从文本坐标系统绘制花键文本,我的第一个想法是使用opencv绘制文本然后从像素中获取坐标。

这是我的代码:

import numpy as np
import cv2
from matplotlib import pyplot as plt

# Create a black image
img = np.zeros((600, 800, 3), np.uint8)

# Write some Text

font = cv2.FONT_HERSHEY_SCRIPT_SIMPLEX
fontScale = 1
fontColor = (255, 255, 255)
lineType = 1

text = 'Hello World \n' \
       'I\'m a Robot \n' \
       'my name is "The Terminator 2"'

y0, dy = 30, 30
for i, textLine in enumerate(text.split('\n')):
    y = y0 + i * dy
    cv2.putText(img, textLine, (30, y), font, fontScale, fontColor, lineType)

# Display the image
cv2.imshow("img", img)

# Plot pixels
pixels = np.where(img == 255)
plt.scatter(pixels[1], pixels[0])
plt.show()

现在我在倒置位置上有像素坐标,但似乎没有排序,所以我不能用它创建样条曲线。

还有其他方法可以做得更好吗?

1 个答案:

答案 0 :(得分:1)

您可以比使用OpenCV OCR更轻松地尝试创建glyph outlines of the font中的样条线。

作为一次性工作,像Inkscape这样的图形编辑器会将文本转换为SVG样条线,以后可以通过编程方式使用。