opencv python视频显示中文
时间: 2023-09-14 10:13:07 浏览: 169
要在OpenCV Python中显示中文,可以使用PIL库和ImageFont来实现。以下是一种实现方法:
1. 首先,确保你已经安装了PIL库和OpenCV库。
2. 导入所需的库:
import cv2
from PIL import Image, ImageDraw, ImageFont
import numpy as np
3. 定义一个函数cv2AddChineseText,该函数将在图像上添加中文文本:
def cv2AddChineseText(img, text, position, textColor=(0, 255, 0), textSize=30):
if (isinstance(img, np.ndarray)):
img = Image.fromarray(cv2.cvtColor(img, cv2.COLOR_BGR2RGB))
draw = ImageDraw.Draw(img)
fontStyle = ImageFont.truetype("simsun.ttc", textSize, encoding="utf-8")
draw.text(position, text, textColor, font=fontStyle)
return cv2.cvtColor(np.asarray(img), cv2.COLOR_RGB2BGR)
4. 使用cv2.VideoCapture()函数打开视频流:
cap = cv2.VideoCapture(0)
5. 在循环中读取视频帧,然后使用cv2AddChineseText函数添加中文文本:
while(1):
ret, frame = cap.read()
frame = cv2AddChineseText(frame, "劳资最帅", (123, 123), (0, 255, 0), 30)
cv2.imshow('capture', frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
6. 最后,释放资源并关闭窗口:
cap.release()
cv2.destroyAllWindows()
通过以上步骤,你就可以在OpenCV Python中实现在视频中显示中文了。这里使用了PIL库的ImageDraw和ImageFont来实现添加中文文本的功能,并结合OpenCV来显示视频。
阅读全文