thMaster
V2EX  ›  问与答

需要在图片上叠加中文字符,有什么方案比 pillow 效率更高吗

  •  
  •   thMaster · Mar 6, 2023 · 1464 views
    This topic created in 1164 days ago, the information mentioned may be changed or developed.

    目前在派上跑了一个处理图片的程序,负责把几张 1920*1080 的图片拼在一起,然后每一张图片下面都叠加上一些介绍性文字,功能很简单,直接使用 pillow 的 ImageDraw 的 paste 和 text 方法完成 但是因为数据量比较大,派上面又跑了很多程序,执行完一次处理任务需要很久 刚才尝试用 OpenCV 重写了一遍,结果发现不能在图片上叠加中文,只能调用 pillow 的方法,为此还得把 OpenCV 的 iamge 转成 pillow 的,结果测试了一下时间反而更慢了 大家有什么办法能提高效率吗,或者说 OpenCV 有什么其他方法叠加中文吗

    3 replies    2023-03-08 12:59:19 +08:00
    14v45mJPBYJW8dT7
        1
    14v45mJPBYJW8dT7  
       Mar 6, 2023
    ffmpeg 文字水印可以不
    Eiden
        2
    Eiden  
       Mar 6, 2023
    先把文字渲染成图片, 比如 pygame, 然后调 opencv 的图片叠加, 不知道会不会快点
    thMaster
        3
    thMaster  
    OP
       Mar 8, 2023
    最近工作比较忙,没来得及试,刚才把几个方案都尝试了一下
    pygame+OpenCV 的搭配是最快的,方案是把文字使用 pygame 逐行添加到黑色背景的 Surface 上,然后转换为 OpenCV 的 image ,最后将几份图片和文字转的图片一起合并成一张大图
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5950 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 40ms · UTC 02:06 · PVG 10:06 · LAX 19:06 · JFK 22:06
    ♥ Do have faith in what you're doing.