Почему selectedimage не определен?
Я пытался установить, почему, когда я запускаю программу, она говорит, что выбранное изображение не определено, когда оно кажется определенным, когда я смотрю на код.
Рассматриваемая ошибка:
NameError: name 'selectedimage' is not defined
Я использую streamlit, онлайн-генератор графического интерфейса.
if st.sidebar.button("Identify"):
selectedimage = "./AI_TESTING_DATA/" + imageselect
selectedimage = Image.open(selectedimage).resize(IMAGE_SHAPE)
selectedimage = np.array(selectedimage) / 255.0
result = model.predict(selectedimage[np.newaxis, ...])
predicted_class = np.argmax(result[0], axis=-1)
labels_path = "./Product/labels.txt"
class_labels = np.array(open(labels_path).read().splitlines())
predicted_class_name = class_labels[predicted_class]
"It's a :" + predicted_class_name
2 ответа
Условие ifif st.sidebar.button("Identify"):
терпит неудачу, поэтому selectedimage
не объявляется, поэтому вы столкнулись с ошибкой в selectedimage = np.array(selectedimage) / 255.0
линия
Если твой if condition
правильно, тогда проверьте значение st.sidebar.button("Identify")
. Это будетFalse
Если ваше предложение if оценивается как False, тогда selectedimage
будет неопределенным. Похоже, вы, вероятно, захотите переместить всю остальную логику под это предложение if, поскольку все зависит от того, была ли нажата кнопка:
if st.sidebar.button("Identify"):
selectedimage = "./AI_TESTING_DATA/" + imageselect
selectedimage = Image.open(selectedimage).resize(IMAGE_SHAPE)
selectedimage = np.array(selectedimage) / 255.0
result = model.predict(selectedimage[np.newaxis, ...])
predicted_class = np.argmax(result[0], axis=-1)
labels_path = "./Product/labels.txt"
class_labels = np.array(open(labels_path).read().splitlines())
predicted_class_name = class_labels[predicted_class]
"It's a :" + predicted_class_name