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

2023-03-06 18:01:14 +08:00
 thMaster

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

813 次点击
所在节点    问与答
3 条回复
rimutuyuan
2023-03-06 18:58:28 +08:00
ffmpeg 文字水印可以不
Eiden
2023-03-06 23:09:58 +08:00
先把文字渲染成图片, 比如 pygame, 然后调 opencv 的图片叠加, 不知道会不会快点
thMaster
2023-03-08 12:59:19 +08:00
最近工作比较忙,没来得及试,刚才把几个方案都尝试了一下
pygame+OpenCV 的搭配是最快的,方案是把文字使用 pygame 逐行添加到黑色背景的 Surface 上,然后转换为 OpenCV 的 image ,最后将几份图片和文字转的图片一起合并成一张大图

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/921684

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX