在python中显示图像

时间:2018-01-12 20:35:48

标签: matplotlib python-3.5

我创建了一个将所有图像添加到列表中的函数。 功能如下:



def load_data(train_path,test_path):
    X_train=[]
    X_test=[]
    for i in os.listdir(train_path):
        X_train.append(i)
    for j in os.listdir(test_path):
        X_test.append(j)
        
    return X_train,X_test




当我尝试使用索引X_train [10]显示图像时,我得到一个找不到错误的文件。



img=mpimg.imread(X_train[10])
imgplot = plt.imshow(img)
plt.show()




错误如下:



FileNotFoundError                         Traceback (most recent call last)
<ipython-input-7-869e21232029> in <module>()
----> 1 img=mpimg.imread(X_train[10])
      2 imgplot = plt.imshow(img)
      3 plt.show()

/Users/ViditShah/anaconda/envs/dl/lib/python3.6/site-packages/matplotlib/image.py in imread(fname, format)
   1295             return handler(fd)
   1296         else:
-> 1297             with open(fname, 'rb') as fd:
   1298                 return handler(fd)
   1299     else:

FileNotFoundError: [Errno 2] No such file or directory: 'scan_0001001.png'
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:1)

listdir()仅返回文件名,而不是完整路径。 您需要在列表中存储完整的文件路径

X_train.append(os.path.join(train_path, i))