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

使用cv2.setWindowProperty设置全屏时OpenCV显示白屏的求助

解决OpenCV全屏窗口白屏问题

你的问题出在cv2.namedWindow的参数使用错误——cv2.WND_PROP_FULLSCREEN是用来读取或修改窗口属性的键值,不是创建窗口时的初始化标志,用它创建窗口会导致窗口渲染异常,出现白屏。

下面给你两种场景的修正代码:

场景1:显示本地图片

import cv2

# 先创建支持属性修改的窗口(用WINDOW_NORMAL标志)
cv2.namedWindow("Image", cv2.WINDOW_NORMAL)
# 设置窗口为全屏状态
cv2.setWindowProperty("Image", cv2.WND_PROP_FULLSCREEN, cv2.WINDOW_FULLSCREEN)

# 读取并显示图片(替换成你的图片路径)
img = cv2.imread("test.jpg")
cv2.imshow("Image", img)
cv2.waitKey(0)
cv2.destroyAllWindows()

场景2:显示摄像头画面

import cv2

# 创建支持属性修改的窗口
cv2.namedWindow("Image", cv2.WINDOW_NORMAL)
# 设置窗口为全屏状态
cv2.setWindowProperty("Image", cv2.WND_PROP_FULLSCREEN, cv2.WINDOW_FULLSCREEN)

cap = cv2.VideoCapture(0)  # 0代表默认摄像头
while True:
    ret, frame = cap.read()
    if not ret:
        break
    cv2.imshow("Image", frame)
    # 按ESC键退出循环
    if cv2.waitKey(1) & 0xFF == 27:
        break

cap.release()
cv2.destroyAllWindows()

补充说明:

  • 创建窗口时用cv2.WINDOW_NORMAL是为了让窗口支持后续的属性修改(包括全屏),部分环境下直接用cv2.WINDOW_FULLSCREEN创建窗口也能生效,但兼容性不如前者稳定。
  • 确保你的图片路径正确、摄像头能正常读取,排除这些基础问题后,按上面的代码就能正常显示全屏画面。

内容的提问来源于stack exchange,提问作者tayron.vikranth

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 01:20:23