设备 NUC i7 Azure Kinect dk 相机
系统:ubuntu18.04 ros melodic
参考博客:
主要参考:
ubuntu18.04使用azure kinect
重点!!!: ubuntu16.04上的安装Kinect Azure
Azure-Kinect ROS版本在ubuntu16.04上的安装
辅助参考:
ubuntu16.04安装配置azure_kinect驱动和ros驱动
ubuntu16.04\18.04安装Azure Kinect SDK+配置ros版 超全详细踩坑记录
ubuntu16.04/ubuntu18.04 Azure Kinect SDK安装过程常见问题记录
Azure Kinect SDK ubuntu安装脱坑指南
git clone -b v1.2.0 https://github.com/microsoft/Azure-Kinect-Sensor-SDK.git
下载网址: https://packages.microsoft.com/ubuntu/18.04/prod/pool/main/libk/
在该网页中找到lib4a1.2/ , 打开后下载xxx.deb 文件
解压deb文件
dpkg -X ./xxx.deb extract
在解压后的文件中找到 libdepthengine.so.2.0
将该文件复制到系统的/usr/lib/x86_64-linux-gnu目录下
在第二步含有libdepthengine.so.2.0文件的文件夹下打开终端复制
sudo cp ./libdepthengine.so.2.0 /usr/lib/x86_64-linux-gnu/
进入Azure-Kinect-Sensor-SDK文件,执行如下命令,安装依赖
sudo ./script/bootstrap-ubuntu.sh
如果遇到有些依赖安装不成功的情况,打开script/bootstrap-ubuntu.sh文件,尝试单个依赖进行安装,安装过程中,可能存在依赖关系出问题的情况,按照如下命令修复后继续安装完所有的依赖即可。
sudo apt-get install -f
该SDK要求的cmake版本在3.9以上,可以查看下自己的cmake版本(cmake --version),如果不满足则进行升级。
wget https://cmake.org/files/v3.14/cmake-3.14.0.tar.gz
./bootstrap make -j8 sudo make install
最后,查看当前的版本
cmake --version
cd Azure-Kinect-Sensor-SDK mkdir build cd build cmake .. -GNinja
ps:cmake … -GNinja是生成ninja的配置,ninja是一个小型的编译系统,并行编译,速度比较快
完成后,执行
ninja
sudo add-apt-repository ppa:ubuntu-toolchain-r/test sudo apt-get update sudo apt-get install gcc-4.9 sudo apt-get upgrade libstdc++6
连接相机,仍然是在build文件夹下,启动查看器
sudo ./bin/k4aviewer
注意!一定要加上sudo,不然权限不够
将相机串口型号写进rule脚本里,使得权限更高,免sudo
sudo cp /Azure-Kinect-Sensor-SDK/scripts/99-k4a.rules /etc/udev/rules.d/
主要参考博客:
ubuntu16.04\18.04安装Azure Kinect SDK+配置ros版 超全详细踩坑记录
ubuntu16.04安装配置azure_kinect驱动和ros驱动
cd catkin_ws/src git clone https://github.com/microsoft/Azure_Kinect_ROS_Driver.git
从 https://packages.microsoft.com/ubuntu/18.04/prod/pool/main/libk/
地址中下载 两个deb包(libk4a1.2-dev/ 和libk4a1.2/)
cd Azure_Kinect_ROS_Driver mkdir -p ext/sdk
ext/sdk 中的结构是:
.\ext\sdk\ bin\ include\ lib\
错误如下所示,头文件声明的问题:
ERROR: k4a_ros_device.h:166:8: error: ‘atomic_int64_t’ in namespace ‘std’ does not name a type std::atomic_int64_t last_capture_time_usec_;
cd catkin_ws/src/Azure_Kinect_ROS_Driver/include/azure_kinect_ros_driver/k4a_ros_device.h
sudo cp /Azure-Kinect-Sensor-SDK/scripts/99-k4a.rules /etc/udev/rules.d/
回到工作空间
catkin_make catkin_make install
k4a 的版本不匹配问题,最低要求版本是1.3,现存版本是1.2,需要升级
删除1.2版本
sudo apt-get remove libk4a1.2 sudo apt-get remove k4a-tools
下载1.3版本
sudo apt-get install libk4a1.3-dev sudo apt-get install k4a-tools
[ERROR] [1619408751.672081450]: Failed to open K4A device at index 0
[ERROR] [1619408751.672105885]: Failed to open a K4A device. Cannot continue.
![在这里插入图片描述](https://www.www.zyiz.net/i/ll/?i=20210426151937808.png?,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_### 4、编译aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MTI4MTE1MQ==,size_16,color_FFFFFF,t_70)
串口权限没被打开,把串口芯片型号写进rules脚本中
sudo cp /Azure-Kinect-Sensor-SDK/scripts/99-k4a.rules /etc/udev/rules.d/
回到工作空间
catkin_make catkin_make install
运行roslaunch
source ./devel/setup.bash roslaunch azure_kinect_ros_driver driver.launch