Попытки получить тело отслеживаемого Kinect V2 с помощью C++, но он не работает, как ее предполагается, также в документации Microsoft на C++ API для KINECT V2 является исключительно беднаKinect Body Tracking GetAndRefreshBodyData возвращается ошибка
отношения фрагмента кода:
HRESULT result;
if (BodyFrameReader != nullptr)
{
result = BodyFrameReader->AcquireLatestFrame(&BodyFrame);
if (result == S_OK)
{
IBody** bodies =nullptr;
result = BodyFrame->GetAndRefreshBodyData(BODY_COUNT, bodies);
if (result == S_OK)
Print("Success");
else
Print("Fail "+result);
BodyFrame->Release();
}
}
Так первый результат при чтении кадра с использованием AcquireLatestFrame
возвращается S_OK
однако пытается получить информацию для любого гусеничного тела с помощью GetAndRefreshBodyData
всегда возвращает код ошибки в переменной result
, которое некоторые очень большое отрицательное число (-ve MAXINT _32).
Помимо этого другая вещь, которую я заметил, в некоторых докторов он намекает, как будто GetAndRefreshBodyData
нужен массив IBody
в качестве параметра в настоящее время IBody
является интерфейсом, и он не может быть реализован так, как вы должны сделать это ,
Есть ли необходимость в дополнительной настройке, кроме Kinect->Open()
, чтобы добраться до слежения за телом?
Это сделало его, спасибо. Большинство образцов и онлайн-документов сосредоточены на C#, поэтому я не обращал внимания на это. – Allahjane
Когда вы установили Kinect SDK, он также установил «браузер SDK». Используя это, вы можете отфильтровать образцы, поэтому он отображает только C++. – HenningJ