在OpenCV中加載和保存圖像相當有限,所以...從給定文件夾加載所有圖像的首選方法是什麼?我是否應該使用.png或.jpg擴展名搜索該文件夾中的文件,存儲名稱並在每個文件中使用imread
?或者,還有更好的方法?使用來自給定文件夾的imread加載所有圖像
5
A
回答
7
爲什麼不嘗試加載文件夾中的所有文件?如果OpenCV無法打開它,哦,好吧。繼續前進。如果圖像無法打開,則cv2.imread()
返回None
。有點奇怪,它不會引發異常。
import cv2
import os
def load_images_from_folder(folder):
images = []
for filename in os.listdir(folder):
img = cv2.imread(os.path.join(folder,filename))
if img is not None:
images.append(img)
return images
3
你可以使用glob函數來做到這一點。見
import cv2
import glob
for img in glob.glob("path/to/folder/*.png"):
cv_img = cv2.imread(img)
6
import glob
cv_img = []
for img in glob.glob("Path/to/dir/*.jpg"):
n= cv2.imread(img)
cv_img.append(n)`
5
我用skimage的例子。您可以創建一個集合並以標準方式訪問元素,即col [index]。這會給你RGB值。
from skimage.io import imread_collection
#your path
col_dir = 'cats/*.jpg'
#creating a collection with the available images
col = imread_collection(col_dir)
1
您也可以使用matplotlib爲此,嘗試了這一點:
import matplotlib.image as mpimg
def load_images(folder):
images = []
for filename in os.listdir(folder):
img = mpimg.imread(os.path.join(folder, filename))
if img is not None:
images.append(img)
return images
相關問題
- 1. Opencv使用imread和QString文件名向量來加載圖像
- 2. 預加載來自特定文件夾的圖像
- 3. 如何加載所選文件夾中的所有圖像
- 4. 加載來自特定地圖集的所有文件Sprite-kit
- 5. PHP:獲取來自文件夾但不是子文件夾的所有圖像
- 6. 代理配置加載文件夾中的所有圖像
- 7. JavaScript:如何加載文件夾中的所有圖像?
- 8. Air App/AS3 - 加載文件夾中的所有圖像
- 9. 使用PHP顯示來自外部Web根文件夾的所有圖像
- 10. 如何使用python通過名稱加載文件夾中的所有圖像?
- 11. 自動導入給定文件夾中的所有Python文件?
- 12. 從文件夾加載圖像文件
- 13. 如何在jsp頁面顯示來自特定文件夾的所有圖像?
- 14. 如何使用as3加載文件夾中的所有文件
- 15. 如何使用XNA加載文件夾中的所有文件?
- 16. 連接來自文件夾的圖像
- 17. WPF:ListView與來自文件夾的圖像
- 18. skimage imread無法加載jpoed圖像
- 19. 加載文件夾中的所有Texture2D
- 20. 使用dropbox API下載指定文件夾中的所有圖像而不是子文件夾API
- 21. 加載tensorflow中的圖像文件夾
- 22. 自動加載自定義文件夾
- 23. AppCache文件夾中的所有圖像
- 24. 使用$ ImageCacheFactory預加載所有圖像
- 25. 如何使用php顯示來自文件夾的圖像?
- 26. 使用java顯示來自文件夾的圖像
- 27. 如何使用url顯示來自文件夾的圖像
- 28. c#從文件夾加載圖像
- 29. 從文件夾中加載圖像[VB.NET]
- 30. 圖像無法從文件夾加載