ubuntu20.04下Kinect V2配置问题记录

给实验室里的电脑配置Kinect V2,跟着网上大部分教程安装libfreenect2,当正常测试时,运行Protonect可执行文件,出现如下问题:

[Error] [Freenect2Impl] failed to open Kinect v2: @2:7 LIBUSB_ERROR_ACCESS Access denied (insufficient permissions)

根据显示内容可知权限不够,此时运行

sudo ./Protonect

可以正常显示测试画面

当安装完iai_kinect2后,运行

roslaunch kinect2_bridge kinect2_bridge.launch

出现如下问题(已经把该launch文件里面depth_method与reg_method分别改为opengl与cpu)

[Error] [Freenect2Impl] failed to open Kinect v2: @2:10 LIBUSB_ERROR_ACCESS

 但是之前测试Protonect时加权后可以启动,到了roslaunch就不行了

解决方法:将libfreenect2/platform/linux/udev下的文件复制到etc/udev/rules.d文件夹下

在libfreenect2/platform/linux/udev目录下执行该命令即可:

sudo cp 90-kinect2.rules /etc/udev/rules.d/

重新插拔USB接口:

### 在 Ubuntu 20.04 上设置和配置 Kinect 设备驱动及支持 #### 1. Azure Kinect 的安装与配置 对于 **Azure Kinect**,虽然官方文档指出其传感器 SDK (Azure Kinect Sensor SDK) 主要支持 Ubuntu 18.04[^3],但实际上可以通过 `.deb` 包的方式在 Ubuntu 20.04 和更高版本上完成安装。以下是具体步骤: - 下载适用于 Ubuntu 18.04 的 `.deb` 文件: ```bash wget https://github.com/microsoft/Azure-Kinect-Sensor-SDK/releases/download/v1.4.1/libk4a1.4_1.4.1_amd64.deb wget https://github.com/microsoft/Azure-Kinect-Sensor-SDK/releases/download/v1.4.1/libk4a1.4-dev_1.4.1_amd64.deb wget https://github.com/microsoft/Azure-Kinect-Sensor-SDK/releases/download/v1.4.1/k4a-tools_1.4.1_amd64.deb ``` - 使用 `dpkg` 命令安装这些文件: ```bash sudo dpkg -i libk4a1.4_1.4.1_amd64.deb sudo dpkg -i libk4a1.4-dev_1.4.1_amd64.deb sudo dpkg -i k4a-tools_1.4.1_amd64.deb ``` - 测试安装是否成功: ```bash k4aviewer ``` 如果一切正常,应该能够看到设备的实时数据流。 --- #### 2. Kinect v2 的安装与配置 针对 **Kinect v2**,可以借助开源库 `libfreenect2` 来实现兼容性和功能扩展。以下是详细的安装过程: ##### a. 安装必要的依赖项 运行以下命令来安装所需的开发工具和库: ```bash sudo apt-get update && sudo apt-get upgrade sudo apt-get install build-essential cmake pkg-config sudo apt-get install libusb-1.0-0-dev sudo apt-get install libturbojpeg0-dev sudo apt-get install libglfw3-dev ``` ##### b. 编译并安装 `libfreenect2` 克隆仓库并编译源码: ```bash git clone https://github.com/OpenKinect/libfreenect2.git cd libfreenect2 mkdir build && cd build cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/freenect2 -DENABLE_CUDA=OFF make sudo make install ``` > 如果系统已安装 CUDA,则可以选择启用它通过 `-DENABLE_CUDA=ON` 参数[^4]。 ##### c. 测试安装结果 进入构建目录下的可执行程序路径,并尝试启动测试应用: ```bash cd ~/libfreenect2/build/bin/ ./Protonect ``` 如果摄像头被识别且能显示图像帧,则说明安装成功。 --- #### 3. OpenCV 支持与 ROS 整合 由于提到当前使用的 OpenCV 版本为 4.2.0,因此需要确认 OpenCV 是否正确加载了 Kinect 数据接口。此外,为了进一步增强功能性,建议将其集成到机器人操作系统 (ROS) 中。 ##### a. 配置 OpenCV 对 Kinect 的支持 确保 OpenCV 已经启用了对 USB 或者特定硬件的支持选项(如 FFMPEG)。重新编译时加入参数: ```bash cmake -D WITH_FFMPEG=ON .. ``` ##### b. 设置 ROS Noetic 环境 按照标准流程安装 ROS Noetic 后,添加 Kinect 支持包: ```bash sudo apt-get install ros-noetic-freenect* rosdep update && rosdep install --from-paths src --ignore-src -r -y catkin_make source devel/setup.bash roslaunch freenect_launch kinect.launch ``` --- #### 总结 以上方法分别涵盖了两种主流 Kinect 类型(v2 和 Azure)在 Ubuntu 20.04 平台上的部署方式。无论是基于社区维护的第三方解决方案还是微软官方提供的 SDK,均提供了较为成熟的指导方案以满足不同需求场景的要求[^1][^2]。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值