------------编辑------------
我已经简化了我原来的查询,因为大多数人都不理解。
------------编辑------------
您好,我想使用 OpenCV 全屏显示视频,但不确定如何操作。到目前为止,这是我的代码,是的,我是新手,但你必须从某个地方开始。我正在运行 Python 3.6.3
问题:如何使用 OpenCV 全屏显示视频?
import cv2
import numpy as np
import os
os.environ['SDL_VIDEO_CENTERED'] = '1'
cap = cv2.VideoCapture("video.mp4")
cv2.namedWindow("window", cv2.WND_PROP_FULLSCREEN)
cv2.setWindowProperty("video.mp4",cv2.WND_PROP_FULLSCREEN,cv2.WINDOW_FULLSCREEN)
while(cap.isOpened()):
ret, frame = cap.read()
if ret == True:
cv2.imshow('Frame',frame)
if cv2.waitKey(30) & 0xFF == ord('q'):
break
else:
break
cap.release()
cv2.destroyAllWindows()
我也遇到这个错误
Traceback (most recent call last): File "C:/Users/A/Desktop/vid.py", line 7, in cv2.setWindowProperty("video.mp4",cv2.WND_PROP_FULLSCREEN,cv2.WINDOW_FULLSCREEN) cv2.error: C:\projects\opencv-python\opencv\modules\highgui\src\window_w32.cpp:443: error: (-27) NULL window in function cvSetModeWindow_W32
最佳答案
感谢 Dan Mašek,我最初问题的答案是:
import cv2
import numpy as np
file_name = "video location here"
window_name = "window"
interframe_wait_ms = 30
cap = cv2.VideoCapture(file_name)
if not cap.isOpened():
print("Error: Could not open video.")
exit()
cv2.namedWindow(window_name, cv2.WND_PROP_FULLSCREEN)
cv2.setWindowProperty(window_name, cv2.WND_PROP_FULLSCREEN, cv2.WINDOW_FULLSCREEN)
while (True):
ret, frame = cap.read()
if not ret:
print("Reached end of video, exiting.")
break
cv2.imshow(window_name, frame)
if cv2.waitKey(interframe_wait_ms) & 0x7F == ord('q'):
print("Exit requested.")
break
cap.release()
cv2.destroyAllWindows()
关于python - 在 OpenCV 上全屏播放视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49949639/