目前在派上跑了一个处理图片的程序,负责把几张 1920*1080 的图片拼在一起,然后每一张图片下面都叠加上一些介绍性文字,功能很简单,直接使用 pillow 的 ImageDraw 的 paste 和 text 方法完成 但是因为数据量比较大,派上面又跑了很多程序,执行完一次处理任务需要很久 刚才尝试用 OpenCV 重写了一遍,结果发现不能在图片上叠加中文,只能调用 pillow 的方法,为此还得把 OpenCV 的 iamge 转成 pillow 的,结果测试了一下时间反而更慢了 大家有什么办法能提高效率吗,或者说 OpenCV 有什么其他方法叠加中文吗
1
rimutuyuan 2023-03-06 18:58:28 +08:00
ffmpeg 文字水印可以不
|
2
Eiden 2023-03-06 23:09:58 +08:00
先把文字渲染成图片, 比如 pygame, 然后调 opencv 的图片叠加, 不知道会不会快点
|
3
thMaster OP 最近工作比较忙,没来得及试,刚才把几个方案都尝试了一下
pygame+OpenCV 的搭配是最快的,方案是把文字使用 pygame 逐行添加到黑色背景的 Surface 上,然后转换为 OpenCV 的 image ,最后将几份图片和文字转的图片一起合并成一张大图 |