Ubuntu18.04下Azure Kinect DK 调试及相机标定

一、调试前注意事项

1.不要用虚拟机调试,会在cmake的时候出错,显示无法克隆

2.Azure Kinect DK的源码在外网,需要连接外网才能下载

3.一定注意硬件问题!两根线不要接反了!相机接线时间过长roslaunch前请重新拔插!!!

4.注意驱动问题,我当时环境配置好后,运行时说驱动版本太低,换了一个驱动重启就好了。如下图所示:我当时的驱动是最后一个开源的版本,换成了现在的专有版本

二、调试

2.1先配置Microsoft的包存储库

1)先更新再安装curl

sudo apt-get update
sudo apt install curl

2)配置Microsoft的包存储库

curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
sudo apt-add-repository https://packages.microsoft.com/ubuntu/18.04/prod
sudo apt-get update

注意事项:第一行代码是下载公钥,如果等了半天没反映,绝大多数都是是网络的问题,建议换一个外网,或者等等看,多试一下

3)安装工具包

sudo apt install k4a-tools

2.2 SDK源码下载及安装(Azure Kinect DK的驱动)

1)安装lib4a.dev 包

sudo apt install libk4a1.4-dev

2)文件拷贝

cd /usr/lib/x86_64-linux-gnu/libk4a1.4
sudo cp libdepthengine.so.2.0 /usr/lib/x86_64-linux-gnu

3)下载官方SDK源码

git clone -b v1.4.0 https://github.com/microsoft/Azure-Kinect-Sensor-SDK.git

4)去掉Root限制:进行ROS下面的操作,需要去掉运行SDK时的Root限制

cd ~/Azure-Kinect-Sensor-SDK
sudo cp scripts/99-k4a.rules /etc/udev/rules.d/

5)安装依赖项

sudo apt-get install libusb-1.0-0-dev
sudo apt-get install libturbojpeg libjpeg-turbo8-dev
sudo apt-get install libglfw3-dev
sudo apt-get install libopenni2-dev

6)打开Azure-Kinect-Sensor-SDK,新建一个build文件,在build文件中开始编译源码

cmake ..
make
sudo make install

 7)运行

k4aviewer

三、ROS版本Azure Kinect DK安装

3.1 下载ROS驱动

mkdir -p ~/KinectDK_ws/src
cd ~/KinectDK_ws/src
catkin_init_workspace
git clone https://github.com/microsoft/Azure_Kinect_ROS_Driver.git

3.2 收集库文件

在此网站下载libk4a1.2和libk4a1.2-dev中的deb文件https://packages.microsoft.com/ubuntu/18.04/prod/pool/main/libk/libk4a1.2/(我这里就下面图里两个紫色都下载下来就是了)

3.3 创建文件夹

cd ~/KinectDK_ws/src
mkdir -p ext/sdk

在 sdk 文件夹下分别创建3个文件夹:

1)bin文件夹: 把编译 SDK 时 build 文件夹里面的那个 bin 文件夹直接拷贝过来 

2) include文件夹:SDK 源码里的include文件夹与从 deb 文件里提取出的 include 文件夹合并,拷贝过来

 3)lib文件夹:从deb文件里提取出的两个lib文件夹合并,拷贝过来注意:这里是两个lib文件

 3.4 编译

cd ~/KinectDK_ws
catkin_make
catkin_make install

3.5 去掉运行SDK时的Root限制

注意:如果前面这一步已经做了,可以跳过这一步

cd ~/Azure-Kinect-Sensor-SDK
sudo cp scripts/99-k4a.rules /etc/udev/rules.d/

3.6 测试

运行launch文件,打开ros节点,发出topic

cd ~/KinectDK_ws
source ./devel/setup.bash
roslaunch azure_kinect_ros_driver driver.launch

 运行现实如上图,表示运行成功

3.7 打开可视化窗口

rviz

显示RGB图像:点击Add->Image->Image Topic->/rgb/image_raw
显示深度图像图像:点击Add->Image->Image Topic->/depth_to_rgb/image_raw

或Add->camera->同上(自行点击调试即可)

 3.8标定

打开可视化界面后:点击Add->Image->Image Topic->/rgb/image_raw设置话题

即此时话题为:/rgb/image_raw

另开一个终端,输入标定命令即可打开标定界面:

rosrun camera_calibration cameracalibrator.py --size 8x6 --square 0.024 image:=/rgb/image_raw

注:如果你添加的话题是另一个,只需在image:=/rgb/image_raw这句命令中将/rgb/image_raw的话题替换即可

打开标定界面后参考我写的另外一篇相机标定,步骤一样

Ubuntu18.04下USB摄像头运行和标定

猜你喜欢

转载自blog.csdn.net/m0_63647490/article/details/124195329
今日推荐