使用 OpenCV 显示图片的核心是通过 cv2.imshow() 函数,配合图像读取、窗口控制等步骤实现。以下是详细流程和示例:

完整步骤(含代码)

1. 导入 OpenCV 库

python

运行

import cv2
2. 读取图片(关键前提)

用 cv2.imread() 读取图片文件,需确保路径正确(否则后续无法显示):

python

运行

# 读取图片(替换为你的图片路径,支持jpg、png等格式)
img = cv2.imread("example.jpg")

# 检查是否读取成功(重要!避免后续报错)
if img is None:
    print("图片读取失败,请检查路径或文件是否存在!")
else:
    print("图片读取成功,尺寸:", img.shape)  # 输出 (高度, 宽度, 通道数)
3. 显示图片

用 cv2.imshow(窗口名, 图像变量) 显示图片,需配合 cv2.waitKey() 保持窗口显示(否则窗口会瞬间关闭):

python

运行

if img is not None:
    # (可选)创建窗口并设置属性(不创建则imshow会自动创建)
    cv2.namedWindow("显示图片", cv2.WINDOW_NORMAL)  # 可调整窗口大小
    
    # 显示图片
    cv2.imshow("显示图片", img)
    
    # 等待用户按键(0表示无限等待,按任意键后继续)
    cv2.waitKey(0)
    
    # 关闭所有窗口,释放资源
    cv2.destroyAllWindows()

完整示例代码

python

运行

import cv2

# 1. 读取图片
img_path = "test.png"  # 替换为你的图片路径
img = cv2.imread(img_path)

# 2. 检查读取结果
if img is None:
    print(f"错误:无法读取图片 {img_path},请检查路径是否正确!")
else:
    # 3. 创建窗口(可选,设置为可调整大小)
    cv2.namedWindow("图片显示", cv2.WINDOW_NORMAL)
    
    # 4. 显示图片
    cv2.imshow("图片显示", img)
    
    # 5. 等待按键(保持窗口显示)
    cv2.waitKey(0)
    
    # 6. 关闭窗口
    cv2.destroyAllWindows()

关键注意事项

  1. 路径问题

    • 若图片与代码文件在同一文件夹,直接写文件名(如 "test.jpg");
    • 若在其他文件夹,需写绝对路径(如 C:/images/pic.jpg 或 /home/user/pic.png);
    • 中文路径可能导致读取失败,建议文件名和路径用英文,或尝试用 cv2.imread(img_path.encode('utf-8')) 处理(部分版本支持)。
  2. 窗口消失问题:必须加 cv2.waitKey(0),否则窗口会一闪而过(0 表示无限等待,非 0 值表示等待对应毫秒数后自动关闭)。

  3. 图像格式:OpenCV 支持常见格式(jpg、png、bmp 等),若为特殊格式(如 webp),需先转换格式或更新 OpenCV 版本。

按照以上步骤操作,即可成功用 OpenCV 在窗口中显示图片。如果报错,优先检查图片路径和文件是否有效~

Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐