Python讀取中文路徑出現(xiàn)亂碼問題的解決方案
一、問題描述
筆者在使用opencv讀取帶有中文路徑的圖片時,發(fā)現(xiàn)會出現(xiàn)亂碼的情況。具體問題如下:
# 讀取帶有中文路徑的圖片出現(xiàn)錯誤
import cv2
img_path = r'C:\Users\zephy\Documents\Python\CSDN\測試 圖片\圖片1.jpg'
img = cv2.imread(img_path, cv2.IMREAD_COLOR)
cv2.imshow("image", img)
cv2.waitKey(0)
cv2.destroyAllWindows()
當讀取的文件路徑出現(xiàn)中文時,(文件夾名為中文或者文件為中文)出現(xiàn)如下錯誤:
[ WARN:0@0.024] global loadsave.cpp:241 cv::findDecoder imread_(‘C:\Users\zephy\Documents\Python\CSDN\測試 圖片\圖片1.jpg’): can’t open/read file: check file path/integrity
Traceback (most recent call last):
File “C:\Users\zephy\Documents\Python\CSDN\demo.py”, line 8, in
cv2.imshow(“image”, img)
cv2.error: OpenCV(4.10.0) D:\a\opencv-python\opencv-python\opencv\modules\highgui\src\window.cpp:973: error: (-215:Assertion failed) size.width>0 && size.height>0 in function ‘cv::imshow’

在定位問題時,將讀取圖片路徑和圖片名詞更換為全英文后,發(fā)現(xiàn)可以正常讀取,具體如下:
# 讀取英文路徑下的圖片,顯示正常
import cv2
img_path = r'C:\Users\zephy\Documents\Python\CSDN\caps.bmp'
img = cv2.imread(img_path, cv2.IMREAD_COLOR)
cv2.imshow("image", img)
cv2.waitKey(0)
cv2.destroyAllWindows()

二、問題解決
定位問題后,發(fā)現(xiàn)出現(xiàn)上述錯誤的原因是在中文路徑的編解碼上,下面是筆者在查找相關(guān)文獻后找到的解決方法,具體代碼如下:
import cv2
import numpy as np
img_path = r'C:\Users\zephy\Documents\Python\CSDN\測試 圖片\圖片1.jpg'
img = cv2.imdecode(np.fromfile(img_path, dtype=np.uint8), cv2.IMREAD_COLOR) # 替換cv2.imread(img_path, cv2.IMREAD_COLOR)
cv2.imshow("image", img)
cv2.waitKey(0)
cv2.destroyAllWindows()
運行代碼,可順利讀取帶有中文路徑或中文名詞的圖片,問題解決。具體讀取圖片如下:

到此這篇關(guān)于Python讀取中文路徑出現(xiàn)亂碼問題的解決方案的文章就介紹到這了,更多相關(guān)Python中文路徑出現(xiàn)亂碼內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python創(chuàng)建ArcGIS shape文件的實現(xiàn)
今天小編就為大家分享一篇python創(chuàng)建ArcGIS shape文件的實現(xiàn),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-12-12
Python實現(xiàn)獲取郵箱內(nèi)容并解析的方法示例
這篇文章主要介紹了Python實現(xiàn)獲取郵箱內(nèi)容并解析的方法,結(jié)合完整實例形式分析了Python登陸pop3服務(wù)器并解析獲取郵箱內(nèi)容相關(guān)操作技巧,需要的朋友可以參考下2018-06-06
Python爬蟲實例_城市公交網(wǎng)絡(luò)站點數(shù)據(jù)的爬取方法
下面小編就為大家分享一篇Python爬蟲實例_城市公交網(wǎng)絡(luò)站點數(shù)據(jù)的爬取方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01
git使用.gitignore設(shè)置不生效或不起作用問題的解決方法
下面小編就為大家?guī)硪黄猤it使用.gitignore設(shè)置不生效或不起作用問題的解決方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-06-06
利用python實現(xiàn).dcm格式圖像轉(zhuǎn)為.jpg格式
今天小編就為大家分享一篇利用python實現(xiàn).dcm格式圖像轉(zhuǎn)為.jpg格式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01

