【问题标题】:Changing images from BGR to RGB将图像从 BGR 更改为 RGB
【发布时间】:2019-12-11 08:46:10
【问题描述】:

我使用下面的代码绘制了预测错误的图片。当显示图片时,我看到图片似乎是 BGR 格式。

我找到了针对单张图片而不是图片列表执行此操作的方法 有没有办法在这段代码中将颜色更改为 RGB?

这是我用来绘制图像的代码:

plt.figure(figsize=(15,10))
for i in range(10):
    err_index = errors[errors['error']==1].index[i]
    plt.subplot(2,5,i+1)
    plt.xticks([])
    plt.yticks([])
    plt.grid(False)
    plt.imshow(X_test[err_index].reshape(224,224,3))
    plt.xlabel("ture is {}, predicted as {}".format(np.argmax(y_test[err_index]), y_pred[err_index]))

编辑—— 抱歉粘贴了错误的代码。 我试图用 cv2.COLOR_BGR2RGB 添加一行,但这没有用。对这一切真的很陌生。

【问题讨论】:

    标签: python image opencv


    【解决方案1】:

    我很确定这个问题已经被问了好几次了,但实际上我把它放在这里比搜索要快:因为你使用的是 numpy,所以这个:

    img_rgb = img_bgr[:, :, ::-1]
    

    另外,鉴于您获得的是 BGR 格式,您可能正在使用 OpenCV,所以也是这样:

    img_rgb = cv2.cvtColor(img_bgr, cv2.COLOR_BGR2RGB)
    

    here

    【讨论】:

    • “我很确定这个问题已经被问了好几次了,但我把它放在这里实际上比搜索要快”——有点像“我知道有一个垃圾垃圾箱就在附近,但把我的垃圾倒在这片草坪上更容易,如果其他人关心它,他们可以清理它。”谢谢。
    • @Dan,嗯...我的意思是,我不是提出这个问题的人,是吗?我看到它,保持比喻,它更像是“我知道今晚有一辆垃圾车要来,但我会捡起我在地上看到的这个包装,然后自己把它扔进垃圾桶”。我在这里错过了什么吗?当回答更快(也许更有用)时,我是否真的应该搜索并找到答案并将其标记为“重复”而不是回答?
    • 是的,您应该在回答之前查找重复的问题并在适当的情况下标记问题。哪个更快并不重要——否则我们最终会得到一堆非常相似的琐碎问题/答案对,这将变得越来越难以导航和管理。 (问题是一旦它有一个被接受和赞成的答案,它就会一直存在并且不会被清理。)这里的目标不是回答每个发布的问题。 |你说得对,OP 在问这个问题之前应该花更多的精力。
    猜你喜欢
    • 1970-01-01
    • 2022-01-04
    • 2018-02-08
    • 2019-06-11
    • 2011-06-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多