[英]Converting Text to Image with Unicode characters
因此,这里的想法是给定的文本恰好是梵文字符,例如संस्थानका कर्मचारी
,我想将给定的文本转换为图像。 这是我尝试过的。
def draw_image(myString):
width=500
height=100
back_ground_color=(255,255,255)
font_size=10
font_color=(0,0,0)
unicode_text = myString
im = Image.new ( "RGB", (width,height), back_ground_color )
draw = ImageDraw.Draw (im)
unicode_font = ImageFont.truetype("arial.ttf", font_size)
draw.text ( (10,10), unicode_text, font=unicode_font, fill=font_color )
im.save("text.jpg")
if cv2.waitKey(0)==ord('q'):
cv2.destroyAllWindows()
但是无法识别字体,因此图像由框和其他无法理解的字符组成。 那么,我应该使用哪种字体来获取正确的图像? 还是有更好的方法将给定字符(如字符)中的文本转换为图像?
因此,当我想用乌尔都语在图像上书写文本时,我遇到了类似的问题,首先,您需要正确的字体,因为仅使用PIL甚至openCV进行书写都需要适当的Unicode字符,甚至当您获得适当的字体时,一个单词的字母也是如此脱节,您将无法获得正确的结果。
为了解决这个问题,由于我正在为OCR创建人工数据集,因此您不得不偏离传统的仅使用python的方法,我需要将大量此类单词打印在白色背景上。 我决定为此使用图形软件。 由于像photoshop这样的工具甚至允许您编写脚本来自动执行过程。
我购买的软件是GIMP,它使您可以快速编写和运行extensions.scripts以自动执行该过程。 它允许您使用python编写扩展,或更准确地说是python的修改版本,称为python-fu。 文档是有限的,所以很难上手,但是在一些持久性的支持下,我能够编写一些功能,可以从文本文件中读取文本,并将其放置在白色背景上并保存到磁盘上。
我可以在几个小时内从中生成约30万张图像。 我建议如果您也打算大量编写文本,那么您也应该依赖python-fu和GIMP。
有关更多信息,请参阅GIMP Python文档。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.