全屏模式下的OpenCV改变了视频纵横比

2024-09-29 19:21:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我的视频纵横比是16:9,监视器是16:10。我写了这个代码在全屏模式下播放视频,但问题是它导致我的视频拉伸。我想保持它的纵横比,在顶部和底部有黑色条(就像在KMPlayer中播放视频一样)

有什么解决办法吗? 谢谢

import cv2
import numpy as np

vid = cv2.VideoCapture('video.mp4')

cv2.namedWindow('My Window',cv2.WINDOW_KEEPRATIO)
cv2.setWindowProperty('My Window',cv2.WND_PROP_ASPECT_RATIO,cv2.WINDOW_KEEPRATIO)
cv2.setWindowProperty('My Window',cv2.WND_PROP_FULLSCREEN,cv2.WINDOW_FULLSCREEN)

while vid.isOpened():
    ret,frame = vid.read()

    cv2.imshow('My Window',frame)
    if cv2.waitKey(1) == ord('q'): break

vid.release()
cv2.destroyAllWindows()

Tags: 代码import视频mywindowcv2frame监视器

热门问题