首先下载文件:

文件的下载和安装方法参考我的博客
(131条消息) WIN11/win10+Azure Kinect DK详细驱动配置教程(亲测)_Vertira的博客-CSDN博客
安装好VS2019,创建好控制台c++工程。这些都很简单,不细说。
配置:
首先配置环境变量(分别是Azure Kinect Body Tracking SDK和Azure Kinect SDK 安装路径下的bin文件路径):
C:\Program Files\Azure Kinect SDK v1.4.1\sdk\windows-desktop\amd64\release\bin
D:\Program Files\Azure Kinect Body Tracking SDK\sdk\windows-desktop\amd64\release\bin
Azure Kinect Body Tracking SDK 比较大 ,可以安装在D盘或E盘,自己随便选。
系统--》高级变量----》环境变量----》系统变量--path---》新建

创建好之后,别忘了重新启动才能生效。

然后配置属性,VCC目录--》包含目录

然后 VCC目录--》库目录

D:\Program Files\Azure Kinect Body Tracking SDK\sdk\windows-desktop\amd64\release\lib
C:\Program Files\Azure Kinect SDK v1.4.1\sdk\windows-desktop\amd64\release\lib
配置好opencv ,opencv3.x,opencv4.x都行
参考链接
(138条消息) win11/10+opencv3.x/4.x配置 VS2019方法(第一步:简单使用,亲测)_Vertira的博客-CSDN博客
配置结束后
安装连接好Azure Kinect
添加测试程序(百分之百可以 运行)
#pragma comment(lib, "k4a.lib")
#include <stdio.h>
#include <k4a/k4a.h>
#include <k4arecord/record.h>
#include <k4arecord/playback.h>
#include < iostream>
#include <stdlib.h>
#include <opencv2/core/core.hpp>
#include <opencv2\opencv.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <k4a/k4a.hpp>
#include < cstdlib>
using namespace cv;
using namespace std;
int main()
{
k4a::capture capture;
const uint32_t device_count = k4a::device::get_installed_count();//查看设备个数
if (device_count == 0)
{
printf("No K4A devices found\n");
return 0;
}
k4a::device device = k4a::device::open(K4A_DEVICE_DEFAULT);
k4a_device_configuration_t config = K4A_DEVICE_CONFIG_INIT_DISABLE_ALL; //设定设备参数
config.color_format = K4A_IMAGE_FORMAT_COLOR_BGRA32;
config.color_resolution = K4A_COLOR_RESOLUTION_1080P;
config.depth_mode = K4A_DEPTH_MODE_NFOV_UNBINNED;
config.camera_fps = K4A_FRAMES_PER_SECOND_30;
config.synchronized_images_only = true;
device.start_cameras(&config);
k4a::image rgbImage;
k4a::image depthImage;
cv::Mat color_frame;
cv::Mat depth_frame;
while (true)
{
if (device.get_capture(&capture, std::chrono::milliseconds(0)))
{
rgbImage = capture.get_color_image();
depthImage = capture.get_depth_image();
color_frame = cv::Mat(rgbImage.get_height_pixels(), rgbImage.get_width_pixels(), CV_8UC4, rgbImage.get_buffer());
depth_frame = cv::Mat(depthImage.get_height_pixels(), depthImage.get_width_pixels(), CV_16U, depthImage.get_buffer());
depth_frame.convertTo(depth_frame, CV_8U, 1);
cv::imshow("color", color_frame);
cv::imshow("depth", depth_frame);
color_frame.release();
depth_frame.release();
capture.reset();
if (waitKey(1) == 27)
break;
}
}
cv::destroyAllWindows();
device.close();
return 0;
}
运行效果
