PS:那天晚上opencv从九点半开始装到十点半,人都快要崩溃了,结果第二天又重新编译了一遍,感觉自己真的是一个人在黑暗中摸索 ~
一、安装 opencv
ubuntu 安装 opencv 的流程
测试opencv是否安装成功
使用
smaples/cpp/example_cmake
中的样例去测试opencv是否安装成在打开摄像头时,其实程序运行正确,打开了摄像头反而报错了
ERROR: V4L/V4L2: VIDIOC_S_CROP
是依赖的库 libv4l-dev 没有装,所以需要对opencv重新编译
opencv重新编译,解决方法如下:
opencv 在 ubuntu 中需要的依赖 https://blog.csdn.net/suochao90/article/details/7530233
安装完依赖库,对opencv 重新编译 https://blog.csdn.net/m0_37811342/article/details/802278
但是程序提示 select time out,后来才知道是 wecamera 的驱动没有装
如果之前没有装webcamera的驱动 ~ 请看第二部分cheese
二、Ubuntu中通过Cheese支持Webcam
PS:刚开始我不能理解,为什么主机上已经装过摄像头驱动,虚拟机还要装一遍,那是我对驱动是什么没有理解 ~
1. 驱动
『驱动程序提供了硬件到操作系统的一个接口。』(注意:是操作系统!!!)
相当于硬件的接口,操作系统只有通过这个接口,才能控制硬件设备的工作。
正因为这个原因,驱动程序在系统中的所占的地位十分重要,一般当操作系统安装完毕后,首要的便是安装硬件设备的驱动程序。
2. 通过Cheese支持Webcam
https://blog.csdn.net/JNingWei/article/details/79945300
大多数webcam生产商并不为Linux系统提供驱动,包括Ununtu
解决方法就是:『可以通过安装cheese来激活Ubuntu自带的摄像头UVC驱动』(不过需要保证,摄像头是支持 UVC驱动)
3. cheese安装
PS:刚开始以为 cheese 是硬件驱动程序,后来才明白过来,它不过是个拍照录像的应用程序,但是可以通过安装这个应用程序,来激活ubuntu自带的摄像头驱动
安装
sudo apt-get install cheese
虚拟机设置里面将USB兼容性改为3.0
测试
cheese