我在从python的多个目录中读取图像时遇到问题。就像有一个png格式的图像,它位于多个文件夹中。我想在上面保留一个for循环,然后像从每个文件夹一样访问图像。那么从特定文件夹中读取那些图像的方式可能是什么?
import os
from os import listdir
from os.path import isfile, join
import sys
import cv2
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
import glob
%matplotlib inline
mypath='E:/Datasets/CBIS-DDSM PNG/Converted_Test'
onlyfiles = [ f for f in listdir(mypath) if isfile(join(mypath,f)) ]
images = np.empty(len(onlyfiles), dtype=object)
for n in range(0, len(onlyfiles)):
images[n] = cv2.imread( join(mypath,onlyfiles[n]) )
答案 0 :(得分:0)
也许您应该尝试另一种方法来访问用于读取图像的目录。
在 imread()
中,您可以传递目录。因此,您可以使用str()
和+
来组合动态目录和固定目录。
这是示例,可能会帮助您:
path = '/home/pictures/1'
for i in range(2) :
image = cv2.imread(str(path)+'1'+'/222.jpg')
plt.imshow(image)
plt.show()
在此示例中,我有2个文件夹11
和12
,因此通过for循环,我更改了所需的文件夹。