Как я могу указать новую глобальную систему координат в kinect? Например, мой кинект движется, и мне нужно указать статическую мировую систему координат в сцене. Если использовать карту глубины для определения заданной пользователем координаты мира, то какой наиболее точный способ? Поскольку разрешение карты глубины невелико, трудно выбрать точные пиксели, которые определяют заданную пользователем координату мира. Каков наилучший способ преобразования координаты по умолчанию по умолчанию в эту заданную пользователем систему координат мира?укажите новую глобальную систему координат в kinect
ответ
Вы хотите изучить матрицы преобразований. Они позволят вам преобразовать набор координат, например, для поворота, трансляции, масштабирования и т. Д. Существуют различные библиотеки, которые предоставляют матричные структуры, такие как Math.NET Numerics, XNA и т. Д.
AS Bas упомянуты это должно быть использование матрицы преобразования. В XNA есть Matrix и Vector3. Там есть other implementations. Я не использую C#, поэтому я не могу посоветовать, какой из них лучше. Однако идея та же, независимо от библиотеки вы используете: это просто немного линейной алгебры:
- Используйте экземпляр Matrix и это методы легко вращать/перевести в систему координат, что вам нужно.
- Умножьте экземпляр Vector3 на матрицу преобразования, чтобы получить новый вектор в новую систему координат. (XNA's Vector3 делает это с помощью метода Transform, насколько я могу видеть в документах, другие реализации могут дать вам функцию mult()/multiply() или просто поддерживать оператор
*
между вектором и матрицей) - Необязательно, если вы хотите преобразовать из своего пользовательского координатного пространства обратно в систему координат kinect, было бы просто получить обратную матрицу преобразования, которую вы создали, и использовать ее для умножения вектора/положения в пользовательской системе координат, чтобы получить вектор в системе координат кине.
Часть кода тривиально, если вы понимаете несколько понятий в линейной алгебре (в основном векторных и матричных, на данном этапе вам могут не понадобиться кватернионы). Есть много ресурсов, например:
- Лично я нашел 3D Math Primer действительно легко следовать. Хотя понятия могут показаться трудно на первый, с визуальными геометрических интерпретаций линейная алгебра сделал намного больше смысла, особенно если вы думаете, визуально
- Khan's Academy course on Linear Algebra
- Эрик Haines (от Autodesk) имеет Udacity курс Interactive 3D Graphics. Очень приятно объяснить и супер легко подобрать. Он использует файл three.js/webgl, но вы должны найти удобную информацию на уроках Трансформации и Матрицы.
- 1. Центр системы координат Kinect
- 2. SVG background pattern использует глобальную, а не локальную систему координат
- 3. Создать новую глобальную переменную?
- 4. Как установить систему координат?
- 5. Преобразование координат Kinect в модель символов
- 6. Укажите глобальную область действия в Swift
- 7. Как повернуть систему координат?
- 8. Перестроить систему координат в Xcode
- 9. Получение координат мыши от видеоизображения Kinect
- 10. Kinect: От цветового пространства до координат мира
- 11. Проблема с Kinect V2 Координатор координат
- 12. Как инвертировать систему координат в NSOpenGLView
- 13. Преобразование точек в другую систему координат
- 14. Kinect Sdk 2.0 Корректировка координат правильно?
- 15. Функция R-координат - укажите две пары пространственных координат
- 16. Как определить новую глобальную функцию в javascript
- 17. Как определить пользовательскую систему координат?
- 18. Как преобразовать координату в одну 3d-декартову систему координат в другую 3d-декартову систему координат
- 19. Векторизация алгоритма обработки координат в реальном времени Kinect для скорости
- 20. Kinect: получение совместных координат (x, y) в метрах
- 21. Преобразование координат из одного пространства Kinect 3D в другое
- 22. Kinect: Преобразование из координат RGB в координаты глубины
- 23. Как определить систему координат в pymol?
- 24. Как включить масштабирование в эту систему координат?
- 25. Измените систему координат, используемую в SKNode.obstaclesFromNodeBounds?
- 26. Добавление единиц сетки в нативную систему координат
- 27. Как перевернуть систему координат в iText?
- 28. Возможно ли в Java2D перемещать систему координат?
- 29. Как изменить систему координат в Compose.jl?
- 30. Переместить географические координаты в систему координат Unity
На каком языке вы и используете библиотеку kinect? Нужно просто использовать матрицу преобразования 4x4 (которая уже может быть доступна в вашей настройке) –
кажется, что идентифицированная пользователем система координат мира в глубинной карте неточна. – jarjar
Позвольте мне перефразировать: вы используете OpenNI, Kinect для Windows SDK и т. Д.? Какой язык вы пишете, у вас есть код? (C++/java/C#/etc.) –