调整新创建的窗口时出现 OpenCV 错误有没有其他方法可以做到?

问题描述

cv2.namedWindow("Trackbars")
cv2.resize("Trackbars",640,420)
cv2.createTrackbar("Hue Min","Trackbars",179,empty)

我正在使用此代码来创建和调整新窗口的大小,但它显示给我以下错误: 这里做错了什么?

重载解析失败:

  • src 不是一个 numpy 数组,也不是一个标量
  • 参数“src”的预期 Ptr<:umat>

这里有什么问题?

解决方法

有两种稍微不同的方法可以做到这一点。

我建议将 resize 更改为 resizeWindowcv2.WINDOW_KEEPRATIO 保持图像的正确比例(如果有)。

cv2.namedWindow("Trackbars",cv2.WINDOW_KEEPRATIO)
cv2.resizeWindow("Trackbar",640,420)

您还可以以比例形式而不是特定像素来调整窗口大小 - 如果您将媒体输入作为变量 (image)。

cv2.resize(frame,(0,0),fx=0.4,fy=0.4)

,

cv2.resize("Trackbars",420)
“Trackbars”不是一个 numpy 数组。在此处添加图像。因此src错误。使用 cv2.imread 读取您的图像或从其他来源读取图像。
其次,640,420 应该是一个元组 (640,420),即维度。