Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何从视频捕获中删除黑色边框?_Python_Opencv_Camera - Fatal编程技术网

Python 如何从视频捕获中删除黑色边框?

Python 如何从视频捕获中删除黑色边框?,python,opencv,camera,Python,Opencv,Camera,我的问题是正确配置openCV,而不是图像处理。我使用VideoCapture()获得的每一帧都包含不需要的黑色边框 我已经尝试过调整帧的大小,但openCV只是将边框调整为新的大小 只需以下步骤即可看到黑色边框: camera = cv2.VideoCapture(0) ret, frame = camera.read() cv2.imshow("Camera", frame) 在这里你可以看到我得到了什么 camera = cv2.VideoCapture(cv2.CAP_DSHOW)

我的问题是正确配置openCV,而不是图像处理。我使用VideoCapture()获得的每一帧都包含不需要的黑色边框

我已经尝试过调整帧的大小,但openCV只是将边框调整为新的大小

只需以下步骤即可看到黑色边框:

camera = cv2.VideoCapture(0)
ret, frame = camera.read()
cv2.imshow("Camera", frame)
在这里你可以看到我得到了什么

camera = cv2.VideoCapture(cv2.CAP_DSHOW)


这将从窗口中删除边框。

在其他程序中是否存在相同的问题?问题可能是硬件或其配置。请尝试初始化相机以输出不同大小的帧。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('HEIGHT:'+str(camera.get(4)))对不起,您的问题是,您已尝试调整帧的大小,这意味着您将以一种大小获取帧,然后将其更改为指定要获取的不同大小的帧。无论如何,这不起作用,所以也许你应该告诉我们关于你的相机的更多细节,它是如何连接的,以及你使用的所有软件的操作系统和版本。我使用的是笔记本相机(联想B50-70),这是Windows 8.1、PyCharm community 2018.3.6和Python 3.7