Из этих строк:
dog=os.listdir(os.path.join(cwd,'valid/dogs'))[0]
print (dog)
#OUT: dog.5535.jpg
похоже, что существует файл dog.5535.jpg
с полным относительным путем (по отношению к текущему рабочему каталогу), равным valid/dogs/dog.5535.jpg
.Однако переменная dog
содержит только имя файла.Поэтому, когда вы пытаетесь
%matplotlib inline
import matplotlib.pyplot as plt
plt.imread(dog)
, он ищет dog.5535.jpg
в вашем текущем рабочем каталоге, где файла нет.Исходя из cwd, вы все равно должны добавить оставшуюся часть пути:
%matplotlib inline
import matplotlib.pyplot as plt
plt.imread(dog)
os.path.join('valid', 'dogs', dog)
#or os.path.join(cwd, 'valid', 'dogs', dog)
Обратите внимание, что я также изменил часть valid/dogs
в функции path.join, указав разделители пути в аргументе дляpath.join
вид превосходит смысл использования path.join