PYTHON - 如何返回 cv2.imshow 窗口的窗口大小?

Mae*_*ara 4 python opencv

因为我使用过,cv2.namedWindow('Frame', cv2.WINDOW_NORMAL)所以我可以在运行时调整窗口大小,但我也想打印新的窗口大小。有谁能帮忙吗?

更新:这不是完整的代码,但它是这样的

cap = cv2.VideoCapture(0)
cv2.namedWindow('Frame', cv2.WINDOW_NORMAL)
while(True):
    # Capture frame-by-frame
    ret, frame = cap.read()

    cv2.imshow('Frame',frame)
    print(frame.shape) #prints image dimension
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

cap.release()
cv2.destroyAllWindows()
Run Code Online (Sandbox Code Playgroud)

即使我调整了窗口大小,它仍然在打印 (480, 640, 3)

Ram*_*h-X 10

您可以使用以下命令。

cv2.getWindowImageRect('Frame')
Run Code Online (Sandbox Code Playgroud)

这将返回一个元组,(x, y, w, h)其中包含显示在名为 的窗口中的图像的当前信息'Frame'

注意:这将返回图像的详细信息,但不会返回图像所在窗口的信息。

编辑注意:此功能在opencv 3.4.1发布后出现。