这篇文章将为大家详细讲解有关如何使用Opencv读取摄像头,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
首先测试一下摄像头,打开Jetson TX1的终端 写入命令:nvgstcapture-1.0 ,摄像头就会起来了
简单的使用了手册中的几个命令
--prev_res 预览视屏的分辨率,高度和宽度,用的是CSI摄像头的话范围是 2 to 12 (5632x4224) e.g., nvgstcapture-1.0 --prev-res=3
--cus-prev-res 自定义预览分辨率,宽度和高度,仅支持CSI摄像头 e.g., nvgstcapture-1.0 --cus-prev-res=1920x1080
多个命令同时使用的话用!隔开 想关掉摄像头的额话,直接在终端输入q再按回车 想捕获图片的话,在终端输入j再按回车,图片将保存当前目录下
使用Opencv读取摄像头
记得一定要安装gstreamer这个依赖
#include <stdio.h>
#include <opencv2/opencv.hpp>
using namespace cv;
using namespace std;
int main(int argc, char** argv)
{
VideoCapture cap("nvcamerasrc ! video/x-raw(memory:NVMM), width=(int)1280, height=(int)720,format=(string)I420, framerate=(fraction)24/1 ! nvvidconv flip-method=2 ! video/x-raw, format=(string)BGRx ! videoconvert ! video/x-raw, format=(string)BGR ! appsink");
if (!cap.isOpened())
{
cout << "Failed to open camera." << endl;
return -1;
}
while(1)
{
Mat frame;
cap >> frame;
imshow("original", frame);
if((char)waitKey(30) == 27)
break;
}
return 0;
}
关于“如何使用Opencv读取摄像头”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
原文链接:https://my.oschina.net/u/1046919/blog/1554452