Ubuntu20.04 LeapMotion 配置与使用

文章介绍了LeapMotion的光学手势追踪技术原理,其硬件结构和高精度的手部追踪能力。详细讲述了如何在Ubuntu系统中配置LeapMotion的service文件,安装SDK,解决配置过程中可能出现的问题。此外,还提及了LeapMotion在ROS中的应用,并警告该驱动不支持Python3,且在Ubuntu20上可能遇到问题。最后提供了启动和测试LeapMotion的步骤以及相关资源链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、LeapMotion 介绍

1. 技术原理

Leap Motion体感交互器使用光学手势追踪技术,拥有两个带广角镜头的高帧率灰度红外摄像头和四个红外LED,最佳的工作环境是可产生清晰的、高对比度对象轮廓的光照环境,如图1.1所示。顶层滤光层只允许红外光波进出,对摄像头所采集的数据进行了初步处理,简化后期运算复杂度;采用双目摄像头通过双目立体视觉成像原理提取手部三维位置,建立手部立体模型;采用灰度摄像头减少运算数据量,提高算法速度。基于以上硬件和算法的优化,使得Leap Motion每秒可采集200帧手部数据,精度可达0.01mm
Leap Motion可追踪的区域范围在空间中呈一个倒四棱锥型,水平视场角达140°,垂直视场角达120°,可交互深度在10cm-60cm之间,最大不超过80cm,如图1.2所示。Leap Motion的尺寸大小为80mm长*30mm宽11.3mm高,重量只有32g。

图1.1 Leap Motion结构图

图1.2 Leap Motion可识别区域

2. 追踪数据

当有手进入Leap Motion的识别区域时,它会进行自动追踪,输出一系列实时刷新的数据帧。帧数据(Frame)是Leap Motion数据的核心,在每一帧数据中包含了所有有关手部运动的信息,如所有的手(Hands)、手指(Fingers)、端点物体(Pointables)、工具(Tools)、手势(Gestures)及其位置(Position)、速率(Velocity)、方向(Direction)、旋转角度(Rotation)等信息,详细数据如图1.3所示。

对于每只手生成的手部模型,如图1.4所示,具体包含大拇指(Thumb)、食指(Index)、中指(Middle)、无名指(Ring)、小拇指(Pinky)和手腕关节(Wrist);对于每根手指,包含远端指骨(Distal)、中间指骨(Intermediate)、近端指骨(Proximal)和掌骨(Metacarpal)。Leap Motion模拟了真实人手的骨骼关节,通过每帧信息的更新获取,能够实现实时、快速、准确的手部追踪效果。

图1.3 帧数据信息

图1.4 手部骨骼信息

二、LeapMotion SDK 配置

  • 配置service文件

    1. 在安装驱动前需要创建一个leap.service文件,否则安装驱动时会报错。

      sudo vi /lib/systemd/system/leapd.service  
      
    2. 在新创建的文件中粘贴一下代码:

      # Found by Kevin Cole 2014.11.22 at
      # https://github.com/atejeda/leap-fedora-rpm
      #
      # Remember to:
      #
      #   ln -s /lib/systemd/system/leapd.service /etc/systemd/system/leapd.service
      #   systemctl daemon-reload
      #
       
      [Unit]
      Description=LeapMotion Daemon
      After=syslog.target
       
      [Service]
      Type=simple
      ExecStart=/usr/sbin/leapd
       
      [Install]
      WantedBy=multi-user.target
      
    3. 将信息链接到配置目录中

      sudo ln -s /lib/systemd/system/leapd.service /etc/systemd/system/leapd.service
      systemctl daemon-reload  
      
  • 下载Leap_Motion驱动
    官网 下载后解压,并安装:(ubuntu 系统下载较慢,推荐在 windows 系统下载后,拷贝到 ubuntu 系统)

    tar -xvf Leap_Motion_SDK_Linux_2.3.1.tgz
    cd LeapDeveloperKit_2.3.1+31549_linux/
    sudo dpkg -i Leap-2.3.1+31549-x64.deb
    

    若缺少依赖可以:

    sudo apt install -f      # 依赖修复
    
  • 测试
    连接 LeapMotion 后,进行设备测试:

    sudo leapd         #等待服务开启后
    Visualizer         #打开窗口即可看到摄像头的识别信息
    

    问题:

    1. 出现下边错误:

      Configuration file not found
      Resetting /var//.Leap Motion/config.json.
      [Critical] WebSocket server failed to start
      [Critical] Secure WebSocket server failed to start
      [Critical] Have you tried running as root/Administrator?
      [Info] Leap Motion Controller detected: LP43642036937
      [Info] Firmware is up to date.
      

      解决方案:重启电脑或卸载重装即可

      sudo dpkg -r leap # 卸载LeapMotion
      

三、LeapMotion ROS功能包 配置

注意:leapmotion的驱动文件不支持python3,故最好不在ubuntu 20上安装使用

  1. 下载并编译 ROS包
    cd ~/catkin_ws/src
    git clone https://github.com/ros-drivers/leap_motion.git
    cd ~/catkin_ws
    catkin_make
    
  2. 启动
    sudo leapd         #等待服务开启后
    Visualizer         #打开窗口即可看到摄像头的识别信息
    roslaunch leap_motion demo.launch	# 启动launch文件,加载Rviz显示
    
  3. 显示结果

参考链接:

  1. 全网最全Leap Motion技术总结
  2. Ubuntu安装Leap_Motion
  3. rosleapmotion
  4. Ubuntu 20.04安装Leap Motion问题总结
  5. LeapMotion API file:///home/robot/Tools/LeapDeveloperKit_2.3.1+31549_linux/LeapSDK/docs/cpp/api/Leap.Bone.html
Ubuntu系统中,您可以使用命令"apt-get install motion"来安装motion软件。安装完成后,您可以执行命令"motion"来启动motion。启动motion后,它会读取配置文件,您可以在配置文件"/root/.motion/motion.conf"中进行相应的配置。同时,motion会将日志输出到文件"/var/log/motion/motion.log"中。如果您想制作监控,首先需要在Ubuntu系统中安装USB摄像头,并使用命令"ls /dev/video*"来查看摄像头设备的名称。请注意,安装完摄像头后,不要随意插拔设备,以免造成设备名称的改变,从而影响motion配置文件。安装完成后,您可以根据您的需求进行motion配置,然后启动它来开始监控。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Ubuntu使用motion制作监控](https://blog.csdn.net/weixin_44511361/article/details/103211798)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *2* [Ubuntu 20.04安装Leap Motion问题总结](https://blog.csdn.net/cocoink/article/details/127035789)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lx-summer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值