【发布时间】:2019-02-02 05:58:50
【问题描述】:
我正在尝试使用 cv2.VideoCapture 和纵横比为 16:9 的相机拍摄照片和视频。 OpenCV返回的所有图像都有黑色侧边栏,裁剪图像。在我的示例中,它不是返回 1280 x 720 像素的图像,而是返回 960 x 720 的图像。 C920 网络摄像头 (1920 x 1080) 也会发生同样的情况。
我做错了什么?
import cv2
video = cv2.VideoCapture(0)
video.set(cv2.CAP_PROP_FRAME_WIDTH, 1280)
video.set(cv2.CAP_PROP_FRAME_HEIGHT, 720)
while True:
conected, frame = video.read()
cv2.imshow("Video", frame)
if cv2.waitKey(1) == ord('s'):
video.release()
break
cv2.destroyAllWindows()
使用 OpenCV:
使用 Windows 相机:
【问题讨论】:
-
也许你应该将 OpenCV 版本升级到最新的 3 版
-
我正在使用 OpenCV 3.4.2
-
也许您的相机无法支持 1280x720,并非所有相机都能拍摄所有分辨率。
-
当我使用 Sarxos 库或使用 Windows Camera 应用程序时,图像显示正确。
-
我尝试更改订单,但没有成功