如何使用cv2.imshow()显示图片?解决功能未实现报错问题
解决cv2.imshow() "The function is not implemented" 报错
问题原因
你遇到的报错是因为默认的opencv-python包未包含完整的GUI后端支持,导致highgui模块的窗口显示功能无法正常运行。
解决方案1:替换为带GUI支持的OpenCV包
- 先卸载当前的
opencv-python:
pip uninstall opencv-python -y
- 安装同版本的带完整GUI支持的
opencv-contrib-python:
pip install opencv-contrib-python==4.9.0.80
安装完成后,重新运行代码即可正常使用cv2.imshow()。另外注意:cv2.imshow()第一个参数是窗口标题,不是图片路径,建议修改为更清晰的名称,同时必须搭配窗口控制函数使用,示例代码:
cv2.imshow('显示图片', img) cv2.waitKey(0) # 阻塞等待按键输入,避免窗口一闪而过 cv2.destroyAllWindows() # 关闭窗口释放系统资源
解决方案2:用Matplotlib替代显示图片
如果不想更换OpenCV包,可以用Matplotlib库来显示图片,代码示例:
import cv2 import matplotlib.pyplot as plt # 读取目标图片 img = cv2.imread('E:\Open_CV\opencv\images\你的图片文件名') # OpenCV默认读取为BGR格式,转换为Matplotlib支持的RGB格式 img_rgb = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) # 显示图片并隐藏坐标轴 plt.imshow(img_rgb) plt.axis('off') plt.show()
内容的提问来源于stack exchange,提问作者Ishwarya S
相关产品推荐
相关产品推荐

