Opencv學習問題總結之①圖像無法顯示/報錯的解決方法
QQ:3020889729 小蔡
爲什麼出錯/無法顯示圖像
因爲我們在運行opencv-python時,執行底層代碼時,未能正確識別文件路徑/未使用圖像顯示方法imshow()!!!
路徑錯誤的報錯情況:(掃一眼,或者直接往後查看解決方法就好了)
路徑名錯誤,無法正確查詢地址:(類似的錯誤應該都可以在後邊的方法中得到解決~)
解決問題的方法
第一種:無法顯示,可能是imshow方法未使用,無法顯示圖像
解決方法:
在imread方法讀取圖像信息並返回後,緊跟着使用imshow方法,實現指定讀取圖像的顯示!!!
import cv2
img = cv2.imread(r"./imag_in_save/open_class.png", 0) # 0 是灰度顯示
cv2.imshow('image', img)
第二種:代碼中包含imshow,但是卻運行會報錯,出現圖像閃爍一下就不見或者出現灰色框
解決方法:
- 檢查路徑正確與否:
- 首先檢查路徑是否正確——相對路徑的話,需要注意文件/文件夾在同級根目錄下的引用方式是否正確;絕對路徑的話,注意盤符是否大寫了——爲了避免中間出現一些文件路徑引用時,被判定轉義內容的情況,請使用:r“文件路徑”
- 檢查路徑中是否包含中文:
- 其次,還有一個必要的檢查,看路徑是否包含中文,有的話,要麼把需要用到的文件移動到不含中文的文件路徑下,要麼就修改中文的那個文件部分……很多時候其實直接使用一些基礎函數代碼,其實搜索路徑時都不怎麼兼容中文路徑的
相對路徑引用: ‘./’ 指的是引用跟當前代碼文件同級的文件,也可以什麼都不加表示同級文件;
’…/‘ 表示上一級文件—— ‘/’ 指的是下一級文件!!!
絕對路徑:直接複製簡單些,雖然粗暴,但是確實好用