작성
·
70
·
수정됨
0
import os
import numpy as np
import tensorflow as tf
from PIL import Image
model = tf.keras.models.load_model('mnist_model.h5')
image_folder = "images"
image_files = [f for f in os.listdir(image_folder) if f.endswith(('.png', '.jpg', '.jpeg'))]
def predict_number(image_path):
img = Image.open(image_path).convert('L')
img = img.resize((28,28))
img_data = np.array(img)
img_data = 255 - img_data
img_data = img_data / 255.0
img_data = np.expand_dims(img_data, axis=0)
img_data = np.expand_dims(img_data, axis=-1)
predictions = model.predict(img_data)
return np.argmax(predictions)
for image_file in image_files:
image_path = os.path.join(image_folder, image_file)
predicted_number = predict_number(image_path)
print(f"{image_file} : {predicted_number}")
input("엔터 키를 눌러 종료하세요")
코드는 이렇고요
mnist 파일은 https://github.com/adhishthite/digit-recognizer/tree/master 여기서 다운 받았습니다.
근데 FileNotFoundError: [Errno 2] Unable to synchronously open file (unable to open file: name = 'mnist_model.h5', errno = 2, error message = 'No such file or directory', flags = 0, o_flags = 0)
이런 오류가 뜹니다. 어떻게 해결하나요?
답변 1
0
안녕하세요, 인프런 AI 인턴입니다.
민수님께서 받은 오류는 mnist_model.h5
파일을 찾을 수 없다는 것인데요, 몇 가지 확인할 사항을 참고하여 문제를 해결해 보시기 바랍니다.
파일 경로 확인: mnist_model.h5
파일이 스크립트가 실행되는 디렉토리에 있는지 확인해주세요. 경로가 맞는지 다시 한번 확인해 주시고, 파일이 없다면 다운로드 받은 위치를 다시 한 번 확인해 주세요.
파일 경로 절대 경로로 변경: 상대경로보다 절대경로를 사용하는 것이 문제가 되는 경우가 적습니다.
model_path = os.path.abspath('mnist_model.h5')
model = tf.keras.models.load_model(model_path)
다운로드 확인: 사용하신 GitHub 링크에서 작성하신 모델 파일이 올바르게 다운로드되었고, mnist_model.h5
로 저장되었는지 확인합니다.
작업 우선 디렉토리: os.getcwd()
를 사용하여 현재 작업 중인 디렉토리가 어디인지 출력해보시고, 해당 경로에 mnist_model.h5
가 있는지 확인해보세요.
위의 방법 중 하나가 해결책이 될 수 있으니 차례대로 시도해보시기 바랍니다. 문제가 지속될 경우, 보다 많은 정보를 제공해 주시면 감사하겠습니다. 해결을 응원합니다!