딥러닝 중 UnidentifiedImageError: cannot identify image file 의 에러가 나올때
dataloader에서 이미지를 뽑아 모델에 넣어 성능 평가를 하려고 하는데..
PIL.UnidentifiedImageError: cannot identify image file <_io.BufferedReader name='/content/notMNIST_large/D/VHJhbnNpdCBCb2xkLnR0Zg==.png'>
이런 에러가 나는데
/content/notMNIST_large/D/VHJhbnNpdCBCb2xkLnR0Zg==.png 파일에 무슨 문제가 있는 것이 아닐까? 생각을 해봤다
os.listdir로 일단 파일이 실제 있는지 확인을 해본다
그래서 PIL.Image.open을 이용해서 open을 해보려고 하면
다른 파일로 한번 open을 해보면 문제 없이 열리긴 한다
파일이 있다는 것은 확인했는데.. 안열린다면.. 그 파일이 문제겠지
os.path.getsize()는 해당 경로의 파일의 용량을 알려준다
0바이트라 데이터 파일이 깨져있나보다..
그래서 해당 파일을 os.remove()로 삭제해주고 다시 dataloader를 만들면 에러 해결 가능하다..
물론 다른 파일이 또 깨져있을 수 있다
그런 경우 그 파일을 또 삭제하고...
os.remove('/content/notMNIST_large/D/VHJhbnNpdCBCb2xkLnR0Zg==.png')
'프로그래밍 > Python' 카테고리의 다른 글
파이썬의 참조방식 call by object reference (0) | 2024.04.25 |
---|---|
matplotlib.pyplot의 gray image 출력이 이상하다면 (0) | 2024.04.22 |
colab에서 데이터를 준비하는 필수 명령어 wget, gunzip, unzip, tar xf, (0) | 2024.04.22 |
ABC349 D번 복기 - log를 구하는 가장 정확한 방법 - math.log를 기피해야하는 이유 (0) | 2024.04.14 |
functools.partial을 이용하여 기존 함수를 재활용한 새로운 함수 만들기 (0) | 2024.04.13 |