강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

민수님의 프로필 이미지
민수

작성한 질문수

파이썬 숫자인식 프로그램 오류ㅠ

작성

·

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 파일을 찾을 수 없다는 것인데요, 몇 가지 확인할 사항을 참고하여 문제를 해결해 보시기 바랍니다.

  1. 파일 경로 확인: mnist_model.h5 파일이 스크립트가 실행되는 디렉토리에 있는지 확인해주세요. 경로가 맞는지 다시 한번 확인해 주시고, 파일이 없다면 다운로드 받은 위치를 다시 한 번 확인해 주세요.

  2. 파일 경로 절대 경로로 변경: 상대경로보다 절대경로를 사용하는 것이 문제가 되는 경우가 적습니다.

    model_path = os.path.abspath('mnist_model.h5')
    model = tf.keras.models.load_model(model_path)
    
  3. 다운로드 확인: 사용하신 GitHub 링크에서 작성하신 모델 파일이 올바르게 다운로드되었고, mnist_model.h5로 저장되었는지 확인합니다.

  4. 작업 우선 디렉토리: os.getcwd()를 사용하여 현재 작업 중인 디렉토리가 어디인지 출력해보시고, 해당 경로에 mnist_model.h5가 있는지 확인해보세요.

위의 방법 중 하나가 해결책이 될 수 있으니 차례대로 시도해보시기 바랍니다. 문제가 지속될 경우, 보다 많은 정보를 제공해 주시면 감사하겠습니다. 해결을 응원합니다!

민수님의 프로필 이미지
민수

작성한 질문수

질문하기