最近學習了---學習opencv3這本書,今天在學習在Python中使用OpenCV 安裝好了之后進行打開圖片的簡單測試
1.測試代碼如下:
import cv2 as cv #讀取圖像,支持 bmp、jpg、png、tiff 等常用格式 img = cv.imread("F:\picture\2.jpg") #創建窗口並顯示圖像 cv.namedWindow("Image") cv.imshow("Image",img) cv.waitKey(0) #釋放窗口 cv2.destroyAllWindows()
進行測試的時候出現了錯誤
cv2.error: OpenCV(4.5.1) C:\Users\appveyor\AppData\Local\Temp\1\pip-req-build-i1s8y2i1\opencv\modules\highgui\src\window.cpp:376: error: (-215:Assertion failed) size.width>0 && size.height>0 in function 'cv::imshow'
2.解決辦法:
import cv2 as cv #讀取圖像,支持 bmp、jpg、png、tiff 等常用格式 img = cv.imread("F:/picture/2.jpg") #創建窗口並顯示圖像 cv.namedWindow("Image") cv.imshow("Image",img) cv.waitKey(0) #釋放窗口 cv2.destroyAllWindows()
將“\”改成“/”就好了
還有一種解決辦法就是:將“\”改為“\\”如下
import cv2 as cv #讀取圖像,支持 bmp、jpg、png、tiff 等常用格式 img = cv.imread("F:\\picture\\2.jpg") #創建窗口並顯示圖像 cv.namedWindow("Image") cv.imshow("Image",img) cv.waitKey(0) #釋放窗口 cv2.destroyAllWindows()
注意事項1:查看資料,一般都有兩種情況可能出現錯誤
1)一是讀取的圖片文件路徑信息出錯(如上兩種解決辦法)
2)還有一情況是 圖片文件類型出現錯誤,如上我的圖片是jpg類型,如果后綴改為jpeg也會出現錯誤
注意事項2:
圖片路徑中.jpg(其他類型文件都是類似)是不在圖片命名中的,什么意思呢?
我們打開F盤下面的圖片文件,查看要展示的圖片,看是怎樣命名的:發現如下圖

然后路徑信息為:
F:\\picture\\2.jpg
但是如果你你的F盤中命名文件是2.jpg,如下圖示:

想要輸出這張圖片,就要命名為:否則出錯
F:\\picture\\2.jpg.jpg
兩次輸出結果如下:


再次啰嗦一下:輸出的圖片是跟隨原始圖片自適應大小還有路徑下不要出現中文。
