python+opencv+PIL,在圖片和視訊中寫入中文(漢字)
阿新 • • 發佈:2018-11-11
原部落格地址: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()