当前位置:   article > 正文

ROS调用笔记本摄像头和外界摄像头问题汇总(本人亲身经历)非常好用_virtualbox怎么看笔记本摄像头没有架构到linux上面

virtualbox怎么看笔记本摄像头没有架构到linux上面

ROS调用笔记本摄像头和外界摄像头问题汇总(本人亲身经历)

运行打开摄像头命令必须在主虚拟机运行

一.video0找不到

本人想要调用笔记本摄像头完成一些基本的标定时候,遇到问题:
在这里插入图片描述
或者执行命令:

ls /dev/video*

   
   
  • 1
  • 1

提示:
在这里插入图片描述

ros小白可谓是摸不着头脑。具体原因主要有4个
1.笔记本上面的虚拟机不支持笔记本的摄像机,建议升级成VMware® Workstation 14 Pro版本。

(1)百度云下载连接:链接:https://pan.baidu.com/s/1JTCzd9QaLVeft6OiyfCd5A 提取码:ccda
安装过程在我的博客,ROS-ubuntu-新手安装ros - 帅某Plus的博客 - CSDN博客 https://blog.csdn.net/weixin_43262513/article/details/86562243
(2)打开虚拟机的操作面板,如图所示:
在这里插入图片描述
在虚拟机---->可移动设备------>
在这里插入图片描述
如果检测到笔记本摄像头,就会出现摄像头的名称,本人是 sunplus innovation usb composite device.
如果没有出现,说明笔记本的摄像头linux不支持,就别费劲了。用usb摄像头吧。

2.笔记本摄像头没有架构到linux上面。
出事的状态是这样。
在这里插入图片描述
点击你的摄像头(本人是 sunplus innovation usb composite device),点击 连接
在这里插入图片描述
成这样:
在这里插入图片描述
说明摄像头已经架构到linux上面了。这时有的电脑会出现xxxxx设备已经弹出的提示,意思就是摄像头已经架构到linux上面了。Windows已经检测不到,不信你打开自己笔记本摄像头试一下:
在这里插入图片描述
3.安装的cam版本错误
(1)检测电脑是安装cam_usb还是应该安装uvc_cam
步骤一:

lsusb

   
   
  • 1
  • 1

查看摄像头ID信息,本人是ID: 1bcf:2b8a在这里插入图片描述
步骤二:
打开网址:http://www.ideasonboard.org/uvc/
查看里面是否有与自己摄像头匹配的ID号。
如果有,就说明你的笔记本摄像头比较好,有他的厂商提供的linux驱动,是-----------uvc_cam
,没有的是usb_cam(本人的摄像头就是usb_cam)

在这里插入图片描述
步骤三:安装usb_cam的第三方驱动--------下面的建议是最好的方法(下面文件夹是与自己电脑配套的,相关内容见我的前面博客),uvc_cam如何安装请自行百度**(有的git会出现错误,苦逼,我又遇到了)**

cd catkin_ws/src
git clone https://github.com/bosch-ros-pkg/usb_cam.git
cd ..  
catkin_make

   
   
  • 1
  • 2
  • 3
  • 4
  • 1
  • 2
  • 3
  • 4

如果没错误,就是这样:
在这里插入图片描述
安装成功,可看到节点信息。
在这里插入图片描述
注:有的git提示没有安装,按照提示安装,报错:E:could not get lock /var/lib/dpkg/lock -open

原因:
出现这个问题的原因可能是有另外一个程序正在运行,导致资源被锁不可用,而导致资源被锁的原因,可能是上次安装时没有正常完成,而导致出现此状况。
解决方法:

sudo rm /var/cache/apt/archives/lock 
sudo rm /var/lib/dpkg/lock

   
   
  • 1
  • 2
  • 1
  • 2

再重新安装。
4.有的笔记本自身提示错误和笔记本给的虚拟机内存太小。
(1)笔记本提示错误
运行命令:ls /dev/video* ------有一个 * 号
比如我的本机摄像头显示的是video0,有的本机摄像头对应的是video1.
这时需要修改launch文件,把videox改成你电脑显示的videoX.
在这里插入图片描述
(2)虚拟机内存太小。
建议配置为(2G运行内存,1或者4个处理器):
在这里插入图片描述

二:我还遇到如下问题(这怎么什么问题都让我遇到了啊,无语)

1.无缘无故进程杀死问题,摄像头提示灯量一下就熄灭

[usb_cam-1] process has died, 
[usb_cam-1] process has died [pid 5685, exit code 1, cmd /home/shuaimou/catkin_ws/devel/lib/usb_cam/usb_cam_node __name:=usb_cam __log:=/home/shuaimou/.ros/log/2c9c30e2-95bf-11e6-8a44-000c294ebb02/usb_cam-1.log].
log file: /home/shuaimou/.ros/log/2c9c30e2-95bf-11e6-8a44-000c294ebb02/usb_cam-1*.log

   
   
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

原因:
(1)摄像头没有架构到Linux中;
(2)(usb_cam)launch文件配置错误,launch文件具体如下:

<launch>
  <node name="usb_cam" pkg="usb_cam" type="usb_cam_node" output="screen" >
    <param name="video_device" value="/dev/video0" />
    <param name="image_width" value="640" />
    <param name="image_height" value="480" />
    <param name="pixel_format" value="yuyv" />
    <param name="camera_frame_id" value="usb_cam" />
    <param name="io_method" value="mmap"/>
  </node>
  <node name="image_view" pkg="image_view" type="image_view" respawn="false" output="screen">
    <remap from="image" to="/usb_cam/image_raw"/>
    <param name="autosize" value="true" />
  </node>
</launch>

   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

(3)catkin_make之后,没有source(只要make就必须source,查看有没有source很简单,你就快捷按键 tab看是否出来自动补全你新的功能包,没有就没与source)
catkin_ws文件夹下面,命令:

 catkin_make 
 source ~/.bashrc  

   
   
  • 1
  • 2
  • 1
  • 2

(4)初次架构摄像头,花费时间比较长,建议重启linux,重新架构。第一次打开最好运行roscore
2.进程超时在这里插入图片描述
原因,你给的配置太低了。我的是升高了配置就没问题了。可能还有其他快速有效解决方案,请大家自行百度,不在赘述。

三,打开摄像头,看到你的狗脑袋。

命令:

roscore
roslaunch usb_cam usb_cam-test.launch 

   
   
  • 1
  • 2
  • 1
  • 2

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/379892
推荐阅读
相关标签
  

闽ICP备14008679号