【问题标题】:Why is selectedimage not defined?为什么未定义 selectedimage?
【发布时间】:2020-05-12 11:36:06
【问题描述】:

我一直试图确定为什么,当我运行程序时,它说所选图像未定义,而当我查看代码时似乎已定义。

有问题的错误是:

NameError: name 'selectedimage' is not defined

我正在使用 streamlit,一个在线 GUI 生成器。

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

【问题讨论】:

    标签: python machine-learning streamlit


    【解决方案1】:

    if 条件if st.sidebar.button("Identify"): 失败,所以selectedimage 没有被声明,所以你在selectedimage = np.array(selectedimage) / 255.0 行中遇到错误

    如果您的if condition 正确,请检查st.sidebar.button("Identify") 的值。它将是False

    【讨论】:

      【解决方案2】:

      如果您的 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
      

      【讨论】:

        猜你喜欢
        • 2021-07-22
        • 2021-07-18
        • 2012-06-21
        • 2022-01-05
        • 2017-10-10
        • 2021-01-17
        • 2017-09-02
        • 2018-06-03
        • 2021-06-09
        相关资源
        最近更新 更多