python opencv 中文_Python OpenCV实现图片上输出中文
时间: 2024-01-21 20:19:32 浏览: 73
Python OpenCV实现图片上输出中文
要在OpenCV中输出中文,需要先在电脑上安装中文字体,并且使用Python的PIL库将中文转换为图片。然后,将生成的中文图片与原始图片合并,最后使用OpenCV显示合并后的图片。
以下是示例代码:
```python
import cv2
from PIL import Image, ImageDraw, ImageFont
import numpy as np
# 读取原始图片
img = cv2.imread('input.jpg')
# 定义中文字符集和字体大小
chars = '你好,世界!'
font_size = 40
# 创建中文图片
font = ImageFont.truetype('simsun.ttc', font_size)
img_ch = Image.new('RGB', (font_size*len(chars), font_size), (255, 255, 255))
draw = ImageDraw.Draw(img_ch)
draw.text((0, 0), chars, font=font, fill=(0, 0, 0))
img_ch = np.array(img_ch)
# 合并图片
h, w, _ = img.shape
h_ch, w_ch, _ = img_ch.shape
img[h-h_ch-10:h-10, w-w_ch-10:w-10] = img_ch
# 显示图片
cv2.imshow('output', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在示例代码中,我们首先读取了原始图片,然后使用PIL库创建了中文图片。在创建中文图片时,我们指定了中文字符集和字体大小,并使用`simsun.ttc`字体文件来渲染中文字符。接着,我们将中文图片与原始图片合并,并在合并后的图片上显示。最后,使用OpenCV显示合并后的图片。
注意,要在代码中指定正确的字体文件路径,以确保中文字符能够正确地渲染。
阅读全文