TextRecognitionDataGenerator小语种字符串分离解决办法

先说问题

生成是这样的

实际是这样的

 ကကြီး

看了作者源码后修改之后把问题解决了,作者绘制每一个char而不是整个string

在 computer_text_generator.py 文件中

_generate_horizontal_text 函数和  _generate_vertical_text 函数


     for i, p in enumerate(splitted_text):
        txt_img_draw.text(
             (sum(piece_widths[0:i]) + i * character_spacing * int(not word_split), 0),
             p,
             fill=fill,
             font=image_font,
             stroke_width=stroke_width,
             stroke_fill=stroke_fill,

         )
         txt_mask_draw.text(
             (sum(piece_widths[0:i]) + i * character_spacing * int(not word_split), 0),
             p,
             fill=((i + 1) // (255 * 255), (i + 1) // 255, (i + 1) % 255),
             font=image_font,
            stroke_width=stroke_width,
            stroke_fill=stroke_fill,
 
        )

替换为

txt_img_draw.text(
        (0, 0),
        splitted_text,
        fill=fill,
        font=image_font,
        stroke_width=stroke_width,
        stroke_fill=stroke_fill,
        #language="my"
    )
    txt_mask_draw.text(
        (0, 0),
        splitted_text,
        fill=(255, 255, 255),
        font=image_font,
        stroke_width=stroke_width,
        stroke_fill=stroke_fill,
        #language="my"
    )

另外,如果发现生成的图片和标签不一致,很有可能是字体的原因

fd 是指定字体文件夹,生成的图片什么字体都有

# -fd

# .\fonts\my


这个是指定字体

# -ft

# ./fonts/my/Pyidaungsu.ttf

如果还不行,可以在代码里面添加txt_mask_draw.text 方法中添加 language 参数

各国语言对应的代码是xml 版本的

我们可以打开一个网页,然后查看网页源代码,我是缅甸语可以去这个网站အမျိုးသားညီညွတ်ရေးအစိုးရ (NUG) (nugmyanmar.org)

如果使用了language 参数会提示让你安装Libraqm,按照下面这个方法安装

python - Installing Raqm (Libraqm) Windows 10 - Stack Overflow

 这是“here”的链接

 Archived: Python Extension Packages for Windows - Christoph Gohlke (uci.edu)

 我多次部署发现缅甸语印地语等就是要装这个库

缅甸语字体下载

Myanmar Fonts: Unicode, Zawgyi, Pyi Daung Su Download (myanmarhouse.com.mm)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值