使用opecv读取USB摄像头时候,无法显示图像。

设置

首先查看虚拟机Ubuntu检测摄像头是否已正常插入:

ls /dev/video*

结果为:

设置虚拟机USB属性:



USB的兼容性设置为USB3.0



将USB连接到虚拟机上。

程序

#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <pthread.h>
#include <errno.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <time.h>
#include <math.h>
#include <sys/ioctl.h>
#include <linux/fb.h>
#include <iostream>
#include <signal.h>
#include <string>
#include <iostream> #include <opencv2/opencv.hpp> using namespace cv;
using namespace std; int main()
{
VideoCapture capture(1);
if(capture.isOpened())
{
cout<<"success"<<endl;
} Mat frame;
while (capture.isOpened())
{
capture >> frame;
if (!frame.empty())
{
//imshow("edges", frame);
imwrite("test.bmp",frame);
imshow("capture", frame);
//cout<<"can get ";
}
else
{
//cout<<"can not get";
} if(waitKey(10) == 27)
break;
} return 0;
}

Makefile


LIBS += -L /usr/lib/ -lstdc++
LIBS += `pkg-config --libs opencv` TARGET = test target:
$(CC) $(CFLAGS) -o $(TARGET) $(SRCS) $(INC) $(LIBS)
#*****************finished building***************** clean:
rm -f $(TARGET)

成功打开:

注意

capture(0)是笔记本摄像头,capture(1)是USB摄像头。

虚拟机上使用 opecnv 读取USB摄像头无法显示的更多相关文章

  1. python opencv 读取USB摄像头的像素问题

    问题描述 每次调用capture读取video的时候,还回的像素都是640x480,不管是笔记本的摄像头还是USB摄像头,明明我的摄像头是支持130万读取的功能的呀. 问题分析 一番查找,关于用ope ...

  2. ubuntu-Linux系统读取USB摄像头数据(gspca)

    将摄像头图像保存为jpg格式.摄像头需要是gspca免驱的.uvc若用uvc格式的需要在图像中插入Huffman表.否则无法正常显示. 程序代码: #include <stdio.h> # ...

  3. ubuntu-Linux系统读取USB摄像头数据(uvc)

    这几天在做小车的过程中,需要用到图像采集.我想现在用的摄像头是UVC免驱的.根据国嵌的教程中有一个gspca摄像头的程序.我发现把gspca的采集程序用到uvc上时,在显示图像的时候提示没有huffm ...

  4. unity3d 读取usb摄像头

    using UnityEngine; using System.Collections; public class C : MonoBehaviour { private WebCamTexture ...

  5. USB摄像头无法正常读取问题

    opencv读取摄像头或者视频一种是早期版本的IplImage结构体,图片就存在结构体指针IplImage*中,另一种是Mat类,两者在操作上略有差异,且opencv2都兼容这两个版本,前面的博客也说 ...

  6. [运维] 如何访问虚拟机上的 Tomcat ?

    环境: 虚拟机: VMware 15 pro    操作系统  Linux  CentOS 7 64 物理机: Windows 7 事先准备: 1: 下载 Tomcat  的压缩包  apache-t ...

  7. 在linux下玩转usb摄像头

    硬件平台:PC机一台 .usb摄像头 操作系统:Linux3.0.8 交叉编译环境:arm-none-Linux-gnueabi-gcc  4.5.1 调试步骤: 一.linux 内核解压 1.1使用 ...

  8. 25、写一个USB摄像头驱动程序(有ioctrl分析)

    videobuf2-core.h中的vb2_buffer,记录了v4l2_buffer ,驱动可以对vb2_buffer的v4l2_buffer进行操控, vb2_buffer是v4l2框架层的代码, ...

  9. 在Windows Azure虚拟机上开发Windows 8 应用

    前提条件 Windows Azure开发者账号:如果您拥有微软MSDN Subscription账户,那么意味着您可免费申请Windows Azure开发者账号. 创建虚拟机 点击Windows Az ...

随机推荐

  1. 架构之路:nginx与IIS服务器搭建集群实现负载均衡

    http://blog.csdn.net/zhanghan18333611647/article/details/50811980

  2. mysql数据库优化总结 有图 有用

    对于一个以数据为中心的应用,数据库的好坏直接影响到程序的性能,因此数据库性能至关重要.一般来说,要保证数据库的效率,要做好以下四个方面的工作:数据库设计.sql语句优化.数据库参数配置.恰当的硬件资源 ...

  3. git 常用commands(转)

    常用 Git 命令清单   作者: 阮一峰 日期: 2015年12月 9日 我每天使用 Git ,但是很多命令记不住. 一般来说,日常使用只要记住下图6个命令,就可以了.但是熟练使用,恐怕要记住60- ...

  4. 在OpenSSL中添加自定义加密算法

    一.简介 本文以添加自定义算法EVP_ssf33为例,介绍在OpenSSL中添加自定义加密算法的方法 二.步骤 1.修改crypto/object/objects.txt,注册算法OID,如下: rs ...

  5. python 类变量 在多线程下的共享与释放问题-乾颐堂

    最近被多线程给坑了下,没意识到类变量在多线程下是共享的,还有一个就是没意识到 内存释放问题,导致越累越大 1.python 类变量 在多线程情况 下的 是共享的 2.python 类变量 在多线程情况 ...

  6. Linux Mint 17使用配置2

    tee命令--作用:读取标准输入的数据, 并将其内容输出成文件 who | tee who.out # 将who命令的输出写入同目录文件who.out中 who | grep loger9567 | ...

  7. mybatis 传参是 list<string> 的注意事项

    <!--付款 批量 修改账单状态--><update id="editbillpayALL" parameterType="java.util.List ...

  8. MP3 Lame 转换 参数 设置(转)

    我们在对音频格式的转换中,打交道最多的就是MP3了.如果你能彻底玩转MP3,那么对你的音频创作和对其他音频格式的掌握会有很大的帮助.下面我们给大家介绍MP3制作软件:LAME 要制作出高音质的MP3靠 ...

  9. 引用的一道JAVA题目

    code: class A { A() {}} class B extends A { } Which two statements are true? (Choose two) A. Class B ...

  10. Computer Vision with Matlab

    PPT: https://max.book118.com/html/2016/0325/38682623.shtm Code: http://www.pudn.com/Download/item/id ...