Я не совсем согласен с ответом Алекса Аквье, я чувствую, что это неправильный подход.Я столкнулся с той же проблемой, и я знаю, что я делаю это на 8 месяцев позже, но в интересах других, кто пришел сюда в поисках решения, я сейчас представляю его здесь:
Дело в том, что вы ненеобходимо вручную выровнять RGB и кадры глубины.Уже есть класс, который может сделать это для вас, "IMultiSourceFrameReader".Используя это как источник, вы можете быть уверены, что создаете облако точек правильным образом.
Теперь это нормально, если вы просто хотите использовать каналы.Но если где-то внизу вашего кода, если вы собираетесь использовать какую-то систему координат и если вам понадобятся координаты RGB и пикселей глубины, то вы ожидаете, что они будут одинаковыми, верно?Потому что вы используете выровненные координаты в конце концов, верно?Но вы не выровняете координаты, пока не будете использовать класс ICoordinateMapper.Этот класс выполнит выравнивание всех координат от всех различных датчиков, RGB и Infra, и вернет выровненные координаты.
Пожалуйста, обратитесь к этому источнику , это был мойдолгое время переходил на Kinect V2.