You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python+OpenCV将图像转为灰度图?现有代码未生效求助

解决OpenCV图像转灰度图不生效的问题

你的代码已经执行了灰度转换操作,但没有展示转换后的结果——你调用cv2.imshow时传入的还是原始彩色图像img,所以看起来灰度转换没生效。

修正方法很简单:

  • 将cv2.imshow的第二个参数替换为转换后的灰度图变量grayscaled_img
  • 建议在cv2.waitKey()后加上cv2.destroyAllWindows(),避免程序退出后窗口残留

修正后的代码:

import cv2

# 加载图像
img = cv2.imread('RDJ.png')

# 转换为灰度图
grayscaled_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

# 显示灰度图
cv2.imshow('Grayscale Face Detector', grayscaled_img)
cv2.waitKey()
cv2.destroyAllWindows()

如果需要同时查看原图和灰度图,可以多调用一次cv2.imshow,给不同窗口命名即可:

import cv2

img = cv2.imread('RDJ.png')
grayscaled_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

cv2.imshow('Original Image', img)
cv2.imshow('Grayscale Image', grayscaled_img)
cv2.waitKey()
cv2.destroyAllWindows()

内容的提问来源于stack exchange,提问作者Zach

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 07:01:02