【VMware虚拟机中ubuntu系列】—— 在虚拟机中使用本机摄像头的详细教程与常见问题分析及解决

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、虚拟机调用本机摄像头
    • (1) 启动VMware USB 服务
    • (2) 连接本机摄像头
    • (3) 测试摄像头的连接
  • 二、安装usb驱动
  • 二、运行usb_cam.launch时出现select timeout的报错
    • 1.问题描述
    • 2.问题解决


前言

通过配置虚拟机调用本机摄像头,用户可以在虚拟机中直接使用摄像头设备,而不需要额外安装虚拟摄像头设备或者其他插件。这种方法极大地简化了虚拟机与物理设备的交互,使用户能够在虚拟环境中轻松实现视频采集和处理。具体配置步骤通常包括在虚拟机管理软件中(如VMware、VirtualBox等)启用摄像头支持,并将物理摄像头设备映射到虚拟机中。此外,这种方法确保了数据的实时性和传输的稳定性,从而为用户提供了更为流畅和高效的操作体验。

一、虚拟机调用本机摄像头

VMware在默认情况下是没有打开主机摄像头的权限,故虚拟机中的可移动设备那栏,是没有任何关于摄像头接口的信息,如下图所示:

在这里插入图片描述

(1) 启动VMware USB 服务

具体的操作流程:
1.同时按住键盘Win+R打开运行框,
2.输入services.msc并回车,
3.在本机Windows系统中找到VMware USB Arbitration Service服务,将其设置为启动状态

设置的页面,如下图所示:

在这里插入图片描述

启动USB服务之后,以管理员的身份重新打开VMware

(2) 连接本机摄像头

1) 设置与虚拟机的连接
重启之后,虚拟机中的可移动设备一栏出现几个接口如下图所示,操作的步骤:
点击虚拟机(M)——可移动设备(D)——“找到摄像头”——断开与主机的连接,连接虚拟机

在这里插入图片描述

2)将虚拟机的连接接口设置成USB3.0:
点击虚拟机(M)——设置(S)——USB控制器——将USB改成USB3.0

在这里插入图片描述

3)查看是否连接成功
连接后虚拟机的Ubuntu右下角将出现摄像头图标,角标显示为绿色意味着已成功连接主机摄像头。如下图所示:

在这里插入图片描述

(3) 测试摄像头的连接

1)查看设备号

终端输入: ls /dev/video*

2)安装cheese

终端输入:sudo apt install cheese

完成安装后,

终端输入:cheese

即可调出本机的摄像头画面。

二、安装usb驱动

usb摄像头ros驱动的安装主要分为以下步骤:
(1) 下载usb_cam驱动,并创造ros工作空间

下载地址:https://github.com/ros-drivers/usb_cam

(2) 编译安装usb_cam驱动,在工作空间内使用catkin_make进行编译安装

(3) 修改usb_cam驱动的配置文件,将launch文件中的video_device参数值改成自己的设备号

(4) 启动摄像头节点

具体的操作过程可以参考我以下的博客:
【视觉传感器系列1】—— 如何在ubuntu中安装USB相机ros驱动并获取usb摄像头数据

二、运行usb_cam.launch时出现select timeout的报错

1.问题描述

报错的信息如下所示:

[ERROR] [1661421427.042574208]: select timeout
[usb_cam-1] process has died [pid 4965, exit code 1, cmd /home/chen/catkin_ ws/devel/tib/usb_cam/usb_cam_node_name:=usb_cam_log:=/home/chen/.ros/log/3cae771aname:=usb_cam245c-11ed-8ee0-000c29dacecf/usbcam1.log]
file:/home/chen/,ros/log/3cae771a-245c-11ed-8ee0-000c29dacecf/usb_cam1*.log

报错页面如下:

在这里插入图片描述

2.问题解决

原因:
usb接口不兼容导致。
解决:
对于虚拟机:先关机虚拟机里的系统,然后编辑该虚拟机设置,将USB接口改成3.0或3.1,再继续运行虚拟机即可。
具体操作步骤
点击虚拟机(M)——设置(S)——USB控制器——将USB改成USB3.0,如下图所示

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/339263.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

IDEA 学习之 疑难杂症系列

IDEA 学习之 疑难杂症系列 1. Mapstruct 编译空指针问题 1.1. 现象 NullPointerException at org.mapstruct.ap.internal.processor.DefaultVersionInformation.createManifest1.2. 原因 MapStruct 在 IDEA 2020.3 版本编译 NPE 问题 1.3. 解决办法 2. IDEA 学习之 编译内…

fpga入门 串口定时1秒发送1字节

一、 程序说明 FPGA通过串口定时发送数据,每秒发送1字节,数据不断自增 参考小梅哥教程 二、 uart_tx.v timescale 1ns / 1psmodule uart_tx(input wire sclk,input wire rst_n,output reg uart_tx);parameter …

[vue2项目]vue2+supermap[mapboxgl]+天地图之地图的基础操作(画线+自定义打点)

二、地图的基础操作 1、画线 案例(1) this.map.on("load", () > {let geometryLine {type: "Feature",geometry: {// 定义类型type: "LineString",coordinates: [[113.39793764, 34.05675322],[113.35187554, 32.43…

RHCSA —— 第四节 (远程连接Linux服务器)

一、远程连接 远程连接linux服务器的方式:以显示的类型来分类,可以分为字符界面和图形界面两种。 字符界面软件有SecureCRT、PUTTY、Xshell、mobaxterm等;图形界面有Xmanager、Xdmcp和VNC软件等 二、Xshell 远程连接 Linux 远程连接命令&am…

蓝桥杯软件测试-十五届模拟赛2期题目解析

十五届蓝桥杯《软件测试》模拟赛2期题目解析 PS 需要第十五界蓝桥杯模拟赛2期功能测试模板、单元测试被测代码、自动化测试被测代码请加🐧:1940787338 备注:15界蓝桥杯省赛软件测试模拟赛2期 题目1:功能测试题目 1(测试用例&…

Python | Leetcode Python题解之第128题最长连续序列

题目: 题解: class Solution:def longestConsecutive(self, nums: List[int]) -> int:longest_streak 0num_set set(nums)for num in num_set:if num - 1 not in num_set:current_num numcurrent_streak 1while current_num 1 in num_set:curre…

mac油猴Safari浏览器插件:Tampermonkey for Mac下载

Tampermonkey 是一款用于浏览器的用户脚本管理器插件,它允许用户安装、管理和运行用户脚本,从而可以自定义网页的功能和外观。该插件支持在谷歌浏览器、火狐浏览器、Safari等主流浏览器上使用。提供了丰富的用户脚本管理和自定义功能,使用户可…

Python代码关系图生成,帮助快速熟悉一个项目

一、静态代码关系图 工具1、pyreverse pyreverse 是一个由 Logilab 开发的 Python 工具,它能够自动生成 UML (统一建模语言) 类图,这些类图基于 Python 源代码。pyreverse 可以分析 Python 代码,并从中提取出类、模块、函数、方法和它们之间…

Flutter开发效率提升1000%,Flutter Quick教程之对组件进行拖拽与接收

1,首先,所有可以选择的组件,都在左边的组件面板里。从里面点击任何一个,按住左键,向右边的手机面板上进行拖拽即可。 2,拖拽后,我们要选择一个接收组件。什么时候可以接收组件,就是当…

Ubuntu 24.04 LTS 安装Docker

1 更新软件包索引: sudo apt-get update 2 安装必要的软件包,以允许apt通过HTTPS使用仓库: sudo apt-get install apt-transport-https ca-certificates curl software-properties-common 3 添加Docker的官方GPG密钥: curl -fs…

性能优化随笔(一)

在软件开发过程中,一般要先实现功能方面的需求,功能方面的需求开发完毕之后,往往会考虑性能方面的优化。在业务发展的初期,性能往往能满足使用的需求,这时性能优化不是必不可少的。随着业务的发展,软件复杂…

STM32系列(HAL库)——F103C8T6通过HC-SR04超声波模块实现测距

文章目录 一、SR-04基本原理二、CubeMx配置1.配置RCC、SYS、时钟树2.配置GPIO3.配置串口14.配置定时器5.开启定时器中断 三、keil代码四、运行效果接线效果 参考: 一、SR-04基本原理 HC-SR04超声波测距模块提供2cm~400cm的测距功能,精度达3mm。 以下图…

【C++杂货铺】unordered系列容器

目录 🌈 前言🌈 📁 unordered系列关联式容器 📁 底层结构 📂 哈希概念 📂 哈希冲突 📂 哈希函数 📂 哈希冲突解决 📁 模拟实现 📁 总结 🌈 前…

mysql的增删查改(进阶)

目录 一. 更复杂的新增 二. 查询 2.1 聚合查询 COUNT SUM AVG MAX MIN 2.1.2 分组查询 group by 子句 2.1.3 HAVING 2.2 联合查询/多表查询 2.2.1 内连接 2.2.2 外连接 2.2.3 全外连接 2.2.4 自连接 2.2.5 子查询 2.2.6 合并查询 一. 更复杂的新增 将从表名查询到…

MySQL—函数—日期函数(基础)

一、引言 接下来讨论和学习关于函数的第三个方面——日期函数。 常见的MySQL当中的日期函数。 注意: 1、CURDATE():cur:current 当前的,返回的是当前日期。 2、CURTIME():当前时间。 3、NOW:当前的日期和…

数据结构 实验 1

题目一:用线性表实现文具店的货品管理问题 问题描述:在文具店的日常经营过程中,存在对各种文具的管理问题。当库存文具不足或缺货时,需要进货。日常销售时需要出库。当盘点货物时,需要查询货物信息。请根据这些要求编…

Linux shell编程学习笔记55:hostname命令——获取或设置主机名,显示IP地址和DNS、NIS

0 前言 2024年的网络安全检查又开始了,对于使用基于Linux的国产电脑,我们可以编写一个脚本来收集系统的有关信息。其中主机名也是我们要收集的信息之一。 1. hostname命令 的功能、格式和选项说明 我们可以使用命令 hostname --help 来查看hostname命令…

Linux服务器扩容及磁盘分区(LVM和非LVM)

Linux扩容及磁盘分区(LVM和非LVM) 本文主要介绍了阿里云服务器centos的扩容方法:非LVM分区扩容方法(系统盘),以及磁盘改LVM并分区(数据盘)。主要是ext4文件系统及xfs磁盘scsi MBR分…

每日一题《leetcode-- LCR 025.两数相加||》

https://leetcode.cn/problems/lMSNwu/ 分别把给定的两个链表翻转,然后从头开始相加。 /*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/ //反转链表 struct ListNode* reverselist(struct ListNode*h…

虚拟现实环境下的远程教育和智能评估系统(七)

在后端代码的基础上,利用vue框架设计前端界面,至此,用户界面基本成型,后续添加其他进阶功能; 另,前后端交互相关: UsersVO.java package com.roncoo.education.user.feign.interfaces.vo;impor…