基本上,我只想要这三件事。
颜色,深度和骨架。但我也想要深度和颜色排列。
我知道在官方的例子中,有GreenScreen.cpp,这是一个深度/颜色切口的例子,但没有骨架。还有SkeletonBasics有一个骨架,但没有图像。
我尝试过从这两个方面学习并一起实现它们,但是我从来没有得到骨架准备好的回调(这个:m_hNextSkeletonEvent)。
SkeletonBasics.cpp使用此:
hEvents[0] = m_hNextSkeletonEvent;
// Check to see if we have either a message (by passing in QS_ALLEVENTS)
// Or a Kinect event (hEvents)
// Update() will check for Kinect events individually, in case more than one are signalled
DWORD dwEvent = MsgWaitForMultipleObjects(eventCount, hEvents, FALSE, INFINITE, QS_ALLINPUT);
// Check if this is an event we're waiting on and not a timeout or message
if (WAIT_OBJECT_0 == dwEvent)
{
Update();
}
GreenScreen.cpp使用此:
hEvents[0] = m_hNextDepthFrameEvent;
hEvents[1] = m_hNextColorFrameEvent;
// Check to see if we have either a message (by passing in QS_ALLINPUT)
// Or a Kinect event (hEvents)
// Update() will check for Kinect events individually, in case more than one are signalled
DWORD dwEvent = MsgWaitForMultipleObjects(eventCount, hEvents, FALSE, INFINITE, QS_ALLINPUT);
// Check if this is an event we're waiting on and not a timeout or message
if (WAIT_OBJECT_0 == dwEvent || WAIT_OBJECT_0 + 1 == dwEvent)
{
Update();
}
但是,就像我说的那样,合并它们不会产生
if(WAIT_OBJECT_0 == WaitForSingleObject(m_hNextSkeletonEvent,0))
发生。 (KinectBridgeWithOpenCVBasics-D2D也可以进行骨架,颜色和深度,但仍然是未对齐的(like this example I found in a search)。
你知道为什么事件没有解雇吗?或许你知道某个具有所有这些能力的例子吗?我已经搜索过高低,我已经尝试了很多不同的东西弄乱了这些例子,但我似乎无法得到它。
感谢您的帮助。
编辑: 在KinectBridgeWithOpenCVBasics的最后,我留下了一个m_colorMat和一个m_depthMat。即使在那时我可以将深度与颜色对齐,我认为这样做会很好。