我得到了這個非常簡單的代碼來遍歷一個目錄,對每個影像應用精明的邊緣檢測并將每個結果保存到不同的目錄:
import cv2, os
directory = os.listdir('beard/')
for image in directory:
cv2.imwrite('canny-esult/' image '_canny.jpg', cv2.Canny(cv2.imread('bear/' image), 100, 200))
但這是我得到的錯誤:
cv2.imwrite('canny-esult/' image '_canny.jpg', cv2.Canny(cv2.imread('bear/' image), 100, 200))
cv2.error: OpenCV(4.5.5) /io/opencv/modules/imgcodecs/src/loadsave.cpp:801: error: (-215:Assertion failed) !_img.empty() in function 'imwrite'
uj5u.com熱心網友回復:
我發現了一些勘誤表
熊 -> 胡子
cv2.imwrite('canny-esult/' image '_canny.jpg', cv2.Canny(cv2.imread('beard/' image), 100, 200))
uj5u.com熱心網友回復:
里面有一個簡單的錯字cv2.imread('bear/' image)。我想你想從cv2.imread('beard/' image). 此外,您可能希望從檔案名中修剪擴展部分,image[:-4]以避免檔案名為file.jpg_canny.jpg.
作業代碼:
import cv2, os
directory = os.listdir('beard/')
for image in directory:
cv2.imwrite('canny-esult/' image[:-4] '_canny.jpg', cv2.Canny(cv2.imread('beard/' image), 100, 200))
uj5u.com熱心網友回復:
斷言 215 宣告影像大小為 0。您只是在定義影像路徑時輸入了一個型別,這就是您無法讀取影像的原因,然后您嘗試調整影像大小并給出錯誤,因為有沒有影像。只需重新檢查您的影像路徑,一旦正確,它應該可以作業。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/428840.html
上一篇:從科爾多瓦遷移到電容器
下一篇:準確檢測填充圓圈并分配唯一ID?
