ubuntu中opencv调用摄像头

文章目录

  • 一、Ubuntu中安装opencv
  • 二、关于Linux如何开启摄像头
      • 1.安装VMvareTools,这个是真的强,解决了很多常遇到的问题,比如Linux和Windows无法交互粘贴复制的问题。
      • 2.要保证Linux这边能开启和摄像头还需要保持以下这个状态(红圈部分必须保持连接)
      • 3.命令行启动,建议参考这篇博客[Ubuntu,Windows,树莓派系统下安装opencv](https://blog.csdn.net/qq_43279579/article/details/109231383)
  • 三、摄像头的打开
      • 1.代码如下
      • 2.运行结果
  • 四、录像
      • 1.代码如下
      • 2.结果
      • 3.自问自答
  • 五、小结

一、Ubuntu中安装opencv

我安装的是最新的opencv-4.5.0。教程链接

二、关于Linux如何开启摄像头

1.安装VMvareTools,这个是真的强,解决了很多常遇到的问题,比如Linux和Windows无法交互粘贴复制的问题。

ubuntu中opencv调用摄像头_第1张图片

2.要保证Linux这边能开启和摄像头还需要保持以下这个状态(红圈部分必须保持连接)

ubuntu中opencv调用摄像头_第2张图片

3.命令行启动,建议参考这篇博客Ubuntu,Windows,树莓派系统下安装opencv

三、摄像头的打开

1.代码如下

ubuntu中opencv调用摄像头_第3张图片

2.运行结果

ubuntu中opencv调用摄像头_第4张图片

四、录像

1.代码如下

ubuntu中opencv调用摄像头_第5张图片
ubuntu中opencv调用摄像头_第6张图片

2.结果

ubuntu中opencv调用摄像头_第7张图片
在这里插入图片描述

3.自问自答

  • 如果要求打开你硬盘上一个视频文件来播放,如何修改?

      将代码中的VideoCapture capture(0);修改为VideoCapture 										capture("/home/ubuntu/video/test.mp4")即将0改为需要播放的视频名称以及它所存放的路径
    
  • 在while循环中,Mat是一个什么数据结构? 为什么一定要加一句waitKey延时代码,删除它行不行?

      Mat是一个矩阵,每个图像都是由无数的点构成的,即Mat是一个图像矩阵。
      waitKey()函数的功能是不断刷新图像,如果没有这个就无法实现画面的实时显示,即看不到画面的变化。
    
  • 此代码会在while循环中一直运行,你如果试图用鼠标关闭图像显示窗口,会发现始终关不掉。需要用键盘Ctrl+C 强制中断程序,非常不友好。如何改进。

      增加一个判断语句,来进行关闭
    

五、小结

看似简单的做起来却不那么简单,现在才发现学久了是一件相当枯燥的事,不去深入了解,不会发现其中的乐趣,深入久了之后又变地相当无趣。
在配置opencv的过程中,环境变量配置花了我相当多的时间,python2和python3的优先级问题,程序无法连接头文件的问题……哎
ubuntu下opencv安装编译出错
请教一个关于ubuntu下openCV程序编译出错的问题
ubuntu16.04中安装python3的opencv总结与无法把opencv安装在python3中的解决方案
Ubuntu上使用opencv——摄像头的相关使用

你可能感兴趣的:(ubuntu,opencv,ubuntu,c语言)