目前官方提供的SDK所支持的Linux系统平台为ubuntu 18.04。
配置存储库:
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手动配置:
# Install repository configuration curl https://packages.microsoft.com/config/ubuntu/18.04/prod.list > ./microsoft-prod.list sudo cp ./microsoft-prod.list /etc/apt/sources.list.d/ # Install Microsoft GPG public key curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg sudo cp ./microsoft.gpg /etc/apt/trusted.gpg.d/安装所需的包:
k4a-tools 包中包含 Azure Kinect 查看器、Azure Kinect 录制器和 Azure Kinect 固件工具
sudo apt install k4a-tools基本教程需要 libk4a.-dev 包
sudo apt install libk4a1.4-dev打开Azure Kinect 查看器
sudo k4aviewer目前官方提供的SDK所支持的Linux系统平台为ubuntu 18.04.,基本教程需要 libk4a.-dev 包
sudo apt install libk4a1.4-dev然后将/usr/lib/x86_64-linux-gnu/libk4a1.4中的libdepthengine.so.2.0拷贝到/usr/lib/x86_64-linux-gnu中
cd /usr/lib/x86_64-linux-gnu/libk4a1.4 sudo cp libdepthengine.so.2.0 /usr/lib/x86_64-linux-gnu官方SDK下载地址: https://github.com/microsoft/Azure-Kinect-Sensor-SDK
git clone -b v1.4.0 https://github.com/microsoft/Azure-Kinect-Sensor-SDK.git按照官方文档说明的指示,进入Azure Kinect sdk 源码根目录中 ./scripts/docker文件夹执行bootstrap-ubuntu.sh文件下载依赖项。
提示找不到命令:
右击setup-ubuntu.sh文件,打开属性———>权限——>勾选允许作为程序执行文件退出,重新运行:
sudo ./scripts/docker/setup-ubuntu.sh问题解决。
编译之前需要打开/Azure-Kinect-Sensor-SDK目录下的.gitmodules文件,将其中所有的url改为github上的,此处一般只需要修改extern/libyuv/src对应的url,最终的结果如下:
Release Build:
cmake .. -GninjaOr Debug Build:
cmake .. -GNinja -DCMAKE_BUILD_TYPE=Debug ninja进入Azure Kinectsdk 源码根目录,输入:
cd build sudo ./bin/k4aviewer官方apt安装,则输入:
sudo k4aviewer连接相机后出现如下界面,SDK安装成功。
如果想不用root也可以直接使用设备,需要进行如下操作:
进入Azure Kinect sdk 源码根目录中 scripts 文件夹,复制99-k4a.rules文件至/etc/udev/rules.d/
sudo cp scripts/99-k4a.rules /etc/udev/rules.d/.Azure Kinect 是一款拥抱开源的 RGB-D 深度摄像头,所以这一代 Kinect 录制的数据集格式也尽量能够用各种方法读取保存。Azure Kinect 使用 MKV 作为 RGB-D stream 在本地的保存格式,可以在一个 MKV 视频中同时保存 RGB 帧 + Depth 帧 +IR 帧 + IMU 数据,我们可以使用通用的视频播放器播放,但只能看到 RGB 视频流。与此同时,Azure Kinect 内部的 Calibration 数据可以使用 JSON 格式输出到本地。
-d: 表示录制的 Depth Stream 的 depth_mode 为 WFOV non-binned (1MP)。
-c: 表示录制的 RGB Stream 的分辨率为 3072p。
-r: 表示录制的 RGB-D Stream 的帧率为 15 fps。
-l: 表示录制 10 s。
–imu OFF: 表示录制 RGB-D Stream 的同时,不录制 imu 数据。
注意到 K4ARecorder 代码,有几个默认值需要注意:
color-format: RGB 帧的数据格式默认为K4A_IMAGE_FORMAT_COLOR_MJPG。
color-resolution: RGB 帧的分辨率默认为 K4A_COLOR_RESOLUTION_1080P。
depth-mode: Depth 帧的模式默认为 K4A_DEPTH_MODE_NFOV_UNBINNED。
recording rate: 录制的帧率默认为 K4A_FRAMES_PER_SECOND_30。
imu enabled: 默认同步录制 imu 数据。
https://docs.microsoft.com/zh-cn/azure/Kinect-dk/
https://github.com/microsoft/Azure-Kinect-Sensor-SDK
https://microsoft.github.io/Azure-Kinect-Sensor-SDK/master/index.html