opencv-python不能往圖片上寫中文,亂碼要這么做


import cv2
from PIL import Image, ImageDraw, ImageFont

#
opencv往圖片中寫入中文,返回圖片 def DrawChinese(img, text, positive, fontSize=20, fontColor=(0, 255, 0)): # args-(img:numpy.ndarray, text:中文文本, positive:位置, fontSize:字體大小默認20, fontColor:字體顏色默認綠色) cv2img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) # cv2和PIL中顏色的hex碼的儲存順序不同 pilimg = Image.fromarray(cv2img) # PIL圖片上打印漢字 draw = ImageDraw.Draw(pilimg) # 圖片上打印 font = ImageFont.truetype("simhei.ttf", fontSize, encoding="utf-8") # 參數1:字體文件路徑,參數2:字體大小 draw.text(positive, text, fontColor, font=font) # 參數1:打印坐標,參數2:文本,參數3:字體顏色,參數4:字體格式 cv2charimg = cv2.cvtColor(np.array(pilimg), cv2.COLOR_RGB2BGR) # PIL圖片轉cv2 圖片 return cv2charimg

也沒啥可注意的,就只有PIL要用pillow。其他的看代碼,看注釋。

參考網址:https://blog.csdn.net/houzijushi/article/details/81321661


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM