python 如何在图片上写汉字? 您所在的位置:网站首页 如何在ipad上图片上写字幕 python 如何在图片上写汉字?

python 如何在图片上写汉字?

2024-07-15 01:08| 来源: 网络整理| 查看: 265

思路:1. 先把opencv读的图片转化为PIL的格式;

           2. 用PIL在图片上写上汉字;

           3. 把PIL格式的图片转化回opencv的格式。

直接上代码:

# --*-- coding:utf-8 -*- import cv2 import numpy as np from PIL import Image,ImageDraw,ImageFont def draw_box_string(img, box, string): """ img: read by cv; box:[xmin, ymin, xmax, ymax]; string: what you want to draw in img; return: img """ x,y,x1,y1 = box cv2.rectangle(img, (x,y), (x1, y1), (0,0,255), 2) img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) img = Image.fromarray(img) draw = ImageDraw.Draw(img) # simhei.ttf 是字体,你如果没有字体,需要下载 font = ImageFont.truetype("simhei.ttf", 20, encoding="utf-8") draw.text((x, y-20), string, (0, 255, 0), font=font) img = cv2.cvtColor(np.array(img), cv2.COLOR_RGB2BGR) return img if __name__ == "__main__": img_path = "test.jpg" img = cv2.imread(img_path) box = [9, 107, 499, 263] string = "飞机" img = draw_box_string(img, box, string) cv2.imwrite("airplane.jpg", img)

原图(test.jpg):

Caption

写上汉字的图(airplane.jpg):

Caption

如果你没有中文字体,请下载(很小):链接: https://pan.baidu.com/s/1p2NUz1Y9e5isxq_mHHjUEA 提取码: 3phc



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有