0

我正在尝试使用 streamlit 展示我的深度学习工作,其中涉及在图像中检测到的对象上绘制矩形。但是,在其上看不到矩形。那么它有什么问题呢?在此处输入图像描述

这是代码片段:

fig, ax = plt.subplots(1, 1, figsize=(32, 16))
    for box in boxes:
        x1, y1, x2, y2 = box
        cv2.rectangle(img=sample,
                      pt1=(y1, x1),
                      pt2=(y2, x2),
                      color=(0, 0, 255), thickness=3)
    ax.set_axis_off()
    im = ax.imshow(sample)
    st.pyplot()
    st.write("# Results")
    st.dataframe(pd.DataFrame(results))
4

1 回答 1

0

cv2.rectangle 返回一个带有矩形的图像(它没有就地执行)。所以应该是:

fig, ax = plt.subplots(1, 1, figsize=(32, 16))
for box in boxes:
    x1, y1, x2, y2 = box
    sample = cv2.rectangle(img=sample,
                  pt1=(y1, x1),
                  pt2=(y2, x2),
                  color=(0, 0, 255), thickness=3)
ax.set_axis_off()
im = ax.imshow(sample)
st.pyplot()
st.write("# Results")
st.dataframe(pd.DataFrame(results))
于 2020-06-28T12:50:41.267 回答