用pycharm、Python3.6、opencv3.2.0执行imshow窗口名称中文显示乱码?
例如以下代码:
import cv2
img = cv2.imread("lena.bmp")cv2.imshow("一个Image", img)
cv2.waitKey (0)
cv2.destroyAllWindows()运行结果为:
窗口名称乱码。。。
按照网上搜到的方法改了
1.settings---Appearance,勾选Override default fonts by并选择一个支持中文的字体
2.settings----Editor----File Encodings里设置IDEEncoding/Project Encoding、Default encoding for properties都为UTF-8
结果还是如上图
在vs2017中imshow的窗口名称显示就没问题
求助求助!
img = cv2.imread("lena.bmp")cv2.imshow(u"一个Image", img)
在"一个"前加个"u"试试
gbk_title = title.encode("gbk").decode(errors="ignore")
cv2.imshow(gbk_title,img)
python的str是utf-8编码,imshow的窗口标题是gbk编码。
这个做法事实上使用gbk_title的内存空间传递可以在gbk编码下正常显示的位元组数据,换成是c++不会有字元丢失的问题。但是在python中,由于bytes到str需要经过encode,无法编码的位元组就会被丢弃掉(如果encode时errors=『ignore『)
好早的问题,现在也碰到了,就想知道解决了吗
同样问题python3.6 + opencv3.4 64位,imshow 窗口中文汉子显示乱码,没有解决
遇到了同样的问题。opencv3+python3.6 窗口和窗口里的东西中文乱码,楼主解决了吗?
推荐阅读: