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

Ubuntu 24.04下手动关闭OpenCV cv2.imshow窗口后程序冻结的问题求助

Ubuntu 24.04下手动关闭OpenCV cv2.imshow窗口后程序冻结的问题求助

我最近在Ubuntu上用OpenCV做图片显示的时候遇到个麻烦——用ESC键或者任意按键关闭窗口的话,程序正常运行,后续保存图片的步骤也没问题,但如果手动点窗口右上角的"X"按钮关闭,程序直接卡住了,既不保存图片也不退出,完全僵住。

以下是我的代码:

import cv2

path = "/home/huanyizhiyuan/Softwares/VsCode_workspace/Python_workspace/image_solve/card1.jpg"

# Read the image
img = cv2.imread(path)
if img is None:
    raise FileNotFoundError(f"Image not found: {path}")

# Resize the image
img = cv2.resize(img, (1000, 800))

# Display the image
cv2.imshow('image', img)

# Wait for keyboard input
cv2.waitKey(0)

# Close the window
cv2.destroyWindow('image')

# Save the image
cv2.imwrite('new_image.jpg', img)

问题现象

  • 按ESC或任意按键关闭窗口:程序正常退出,图片能成功保存
  • 手动点击窗口的关闭按钮(右上角的"X"):程序冻结,既不执行后续保存操作也无法正常退出

环境信息

  • 操作系统:Ubuntu 24.04.1 LTS
  • opencv-python版本:4.10.0.84
  • Python版本:3.12.7

我已经尝试过的操作

  • 确认图片路径是正确的,图片也能正常显示出来
  • 在cv2.waitKey(0)之后调用了cv2.destroyWindow('image'),但手动关窗口时问题还是存在

备注:内容来源于stack exchange,提问作者yizhiyuan huan

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.14 17:33:13