我正在使用cmake和opencv构建我的项目。在顶层目录下有两个子项目,A和B。A没有opencv功能,而B使用VideoCapture从摄像头获取图像。一开始没有问题。
但是,在我将代码从B添加到A之后,B仍然可以从摄像头捕获图像,但A不能做同样的事情,错误如下:
HIGHGUI ERROR: V4L2: Pixel format of incoming image is unsupported by OpenCV
VIDIOC_STREAMON: Inappropriate ioctl for device
很奇怪,我发现VideoCapture无法在A中获取图像,代码如下
VideoC
我一直在和运行Ubuntu的Jetson合作。上面有两个摄像头。一个CSI相机,使用gstreamer和USB紫外线(紫外线)相机。
我能很好的探测和运行CSI摄像头。但是每当我试图连接到USB摄像头时,它要么会抛出一个错误,要么会尝试连接到CSI摄像机。
这是我最近一次尝试让USB摄像头工作的测试代码:
import cv2
# Create the capture objects
usb_cap = cv2.VideoCapture(1)
# If they aren't opened correctly
if not usb_cap.isOpened():
print
我正在尝试测试一个非常简单的程序来使用摄像头捕获视频,但它似乎窗口总是黑色的。摄像头的led灯亮了,程序编译得很好。
#include "opencv2/highgui/highgui.hpp"
#include "opencv2/imgproc/imgproc.hpp"
#include <iostream>
using namespace cv;
using namespace std;
int main() {
VideoCapture stream1(0); //0 is the id of video device.0 if yo