簡體   English   中英

OpenCV Python無法從路徑中有空格的外部硬盤讀取圖像

[英]OpenCV Python can't read image from external HDD with white spaces in path

編輯:
同時,我發現問題是路徑+外部磁盤中的OpenCV + Spaces的組合。 刪除任何元素都可以解決問題,因此當前目標只是試圖為這種組合找到解決方案。
操作系統是 Windows

已經嘗試過:

  • r 字符串r"TEXT"
  • \\\\更改為/
  • 雙引號"\\"TEXT\\"\\"
  • os模塊os.path.normpath(PATH)os.path.join([HALF, HALF])

我無法使用Python-OpenCV從我的外部硬盤加載圖像。
我可以使用所有osopen Python 函數,例如從硬盤讀取.TXT文件和list / walk目錄,但是當我嘗試使用cv2.imread加載圖像cv2.imread我得到一個None對象...
文件路徑以 Python 友好的方式編寫(使用“\\”而不是“”),它適用於使用open(path, "rb")以二進制形式讀取圖像

我還閱讀了 OpenCV 文檔並嘗試了 Google 和 StackOverflow,但我沒有找到任何有我問題的人,所以我對接下來要嘗試的內容有點迷茫......

import cv2
image = cv2.imread("G:\\Fotografias e Vídeos\\[...]\\11009982_1254240047936434_1963406974405452579_n.jpg")
print(image)
cv2.imshow("d", image)
# Output
None
Traceback (most recent call last):
  File "C:\Users\[NAME]\Documents\Python\test.py", line 4, in <module>
    cv2.imshow("d", image)
cv2.error: OpenCV(4.2.0) C:\projects\opencv-python\opencv\modules\highgui\src\window.cpp:376: error: (-215:Assertion failed) size.width>0 && size.height>0 in function 'cv::imshow'

在嘗試通過反復試驗來解決這個問題時,我發現了一些不能完全解決問題但幾乎足夠好的解決方法。

如果將腳本復制粘貼到硬盤路徑中的某個位置並從內部運行它,OpenCV 可以正常讀取圖像。

正如我所說,這還不理想,所以如果您有從 PC 內部運行腳本以打開外部源圖像的解決方案,請分享。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM