【发布时间】:2019-11-17 12:57:18
【问题描述】:
我的问题是关于正确配置 openCV,而不是关于图像处理。我使用 VideoCapture() 获得的每一帧都包含不需要的黑色边框。
我已经尝试调整框架大小,但 openCV 只是将边框调整为新大小。
只需要这样就可以看到黑边了:
camera = cv2.VideoCapture(0)
ret, frame = camera.read()
cv2.imshow("Camera", frame)
在这里你可以看到我得到了什么
【问题讨论】:
-
您在其他程序中是否有同样的问题?可能问题出在硬件或其配置上。
-
尝试初始化相机以输出不同大小的帧。 OpenCV 的默认高度和宽度可能与您的相机能够支持的任何帧大小都不匹配。
-
@MarkSetchell 正如我在问题中所述,我已经尝试过了。我是这样做的: camera = cv2.VideoCapture(0) camera.set(cv2.CAP_PROP_FRAME_WIDTH, 640) camera.set(cv2.CAP_PROP_FRAME_HEIGHT, 480) 检查后: print('Width: ' + str(camera.get( 3))) print('高度:' + str(camera.get(4)))
-
抱歉,您的问题是您已尝试调整框架的大小,这意味着您以一种尺寸获取它们,然后将其更改为您指定要获取的不同尺寸的框架。无论如何,这不起作用,所以也许你应该告诉我们更多关于你的相机的细节,它是如何连接的,以及你使用的所有软件的操作系统和版本。
-
我用的是笔记本相机(联想B50-70),这是Windows 8.1、PyCharm community 2018.3.6和Python 3.7