1. 程式人生 > >python+opencv+PIL,在圖片和視訊中寫入中文(漢字)

python+opencv+PIL,在圖片和視訊中寫入中文(漢字)

原部落格地址:https://blog.csdn.net/wyx100/article/details/80412101

效果

程式碼 

#!/usr/bin/env python
# -*- coding: utf-8 -*-
 
from PIL import Image, ImageDraw, ImageFont
import cv2
import numpy as np
 
# cv2讀取圖片
img = cv2.imread('shishi.jpg') # 名稱不能有漢字
cv2img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) # cv2和PIL中顏色的hex碼的儲存順序不同
pilimg = Image.fromarray(cv2img)
 
# PIL圖片上列印漢字
draw = ImageDraw.Draw(pilimg) # 圖片上列印
font = ImageFont.truetype("simhei.ttf", 20, encoding="utf-8") # 引數1:字型檔案路徑,引數2:字型大小
draw.text((0, 0), "Hi,我是詩shi", (255, 0, 0), font=font) # 引數1:列印座標,引數2:文字,引數3:字型顏色,引數4:字型
 
# PIL圖片轉cv2 圖片
cv2charimg = cv2.cvtColor(np.array(pilimg), cv2.COLOR_RGB2BGR)
# cv2.imshow("圖片", cv2charimg) # 漢字視窗標題顯示亂碼
cv2.imshow("photo", cv2charimg)
 
cv2.waitKey (0)
cv2.destroyAllWindows()