Вопрос или проблема
У меня есть Kinect v2, и я пытаюсь подключить его к своему ноутбуку с использованием libfreenect2.
Вот что я сделал до сих пор :
-
Получил проект
libfreenect2
git clone https://github.com/OpenKinect/libfreenect2.git
-
Установил необходимые зависимости
sudo apt-get install build-essential libturbojpeg libjpeg-turbo8-dev libtool autoconf libudev-dev cmake mesa-common-dev freeglut3-dev libxrandr-dev doxygen libxi-dev automake cd libfreenect2/depends sh install_ubuntu.sh sudo apt-get install libglfw3-dev
-
У меня есть графический процессор Intel, установил
beignet-dev
для OpenCLsudo apt-get install beignet-dev
-
Собрал исполняемый файл
mkdir build && cd build cmake .. make sudo make install
Все успешно установилось, и сборка прошла успешно.
-
Запустите программу
sudo ./bin/Protonect
Вывод не отображает никаких ошибок, но окна Viewer
остаются черными :
[Info] [Freenect2Impl] перечисление устройств...
[Info] [Freenect2Impl] 8 USB-устройств подключено
[Info] [Freenect2Impl] найден действительный Kinect v2 @2:5 с серийным номером 501696141942
[Info] [Freenect2Impl] найдено 1 устройство
[Info] [Freenect2DeviceImpl] открытие...
[Info] [Freenect2DeviceImpl] открыто
[Info] [Freenect2DeviceImpl] запуск...
[Debug] [Freenect2DeviceImpl] ReadData0x14 ответ
[Debug] [Freenect2DeviceImpl] 92 байта необработанных данных
0x0000: 00 00 12 00 00 00 00 00 01 00 00 00 43 c1 1f 41 2e2e2e2e2e2e2e2e2e2e2e2e432e2e41
0x0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e
0x0020: 0a 21 33 55 c2 00 17 20 00 08 00 00 10 00 00 00 2e2133552e2e2e202e2e2e2e2e2e2e2e
0x0030: 00 01 00 00 00 10 00 00 00 00 80 00 01 00 00 00 2e2e2e2e2e2e2e2e2e2e802e2e2e2e2e
0x0040: 31 33 00 00 00 04 0f 0d 47 4d 48 38 34 36 2e 31 31332e2e2e2e2e2e474d483834362e31
0x0050: 58 00 00 00 00 00 00 00 00 00 00 00 582e2e2e2e2e2e2e2e2e2e2e
[Debug] [Freenect2DeviceImpl] ReadStatus0x090000 ответ
[Debug] [Freenect2DeviceImpl] 4 байта необработанных данных
0x0000: 00 22 00 00 2e222e2e
[Debug] [Freenect2DeviceImpl] ReadStatus0x090000 ответ
[Debug] [Freenect2DeviceImpl] 4 байта необработанных данных
0x0000: 00 22 00 00 2e222e2e
[Info] [Freenect2DeviceImpl] включение передачи USB...
[Info] [Freenect2DeviceImpl] отправка USB- трансферов...
[Info] [Freenect2DeviceImpl] запущено
серийный номер устройства: 50**************
образование устройства: 4.3.3912.0.7
[Info] [TurboJpegRgbPacketProcessor] ср. время: 18.4934мс -> ~54.0734Гц
[Info] [TurboJpegRgbPacketProcessor] ср. время: 19.4946мс -> ~51.2961Гц
...
Viewer
:
Дополнительная информация :
Kinect подключен к USB 3.0 (обязательно) и я использую Ubuntu 15.04.
Чего я не хватает здесь?
Лучше всего сообщить об этой проблеме на GitHub, где мы можем отслеживать ваш прогресс.
Protonect использует OpenGL по умолчанию. Какую версию OpenGL у вас glxinfo | grep OpenGL
? Действительно ли работает процессор глубины? Чтобы увидеть, действительно ли работает процессор глубины, ищите журналы сообщений [XXXDepthRgbPacketProcessor] ср. время
.
Так как вы установили драйвер OpenCL, вы также можете запустить ./Protonect cl
.
Пожалуйста, продолжайте следить за этой проблемой на GitHub, если сможете.
Ответ или решение
Установка драйверов Kinect v2 на Ubuntu с использованием libfreenect2
Если вы пытаетесь подключить Kinect v2 к вашему ноутбуку с использованием библиотеки libfreenect2
, вам потребуется следовать определённым шагам для успешной установки драйверов и корректной работы устройства. Ваша попытка подключить Kinect увенчалась успехом, однако вы столкнулись с проблемой, когда окно просмотра остаётся черным. Давайте рассмотрим возможные проблемы и шаги решения.
Шаг 1: Клонирование проекта libfreenect2
Вы уже выполнили этот шаг:
git clone https://github.com/OpenKinect/libfreenect2.git
Это правильно, вы получили исходный код библиотеки, необходимой для работы с Kinect v2.
Шаг 2: Установка зависимостей
Вы установили необходимые библиотеки. Убедитесь, что все зависимые пакеты также установлены и работают:
sudo apt-get install build-essential libturbojpeg libjpeg-turbo8-dev libtool autoconf libudev-dev cmake mesa-common-dev freeglut3-dev libxrandr-dev doxygen libxi-dev automake
cd libfreenect2/depends
sh install_ubuntu.sh
sudo apt-get install libglfw3-dev
Также проверьте, чтобы установки прошли успешно и все пакеты были загружены.
Шаг 3: Установка драйвера OpenCL
Вы также правильно установили beignet-dev
для работы с OpenCL:
sudo apt-get install beignet-dev
Это необходимо для работы с обработкой данных глубины.
Шаг 4: Компиляция проекта
Вы корректно создали и настроили сборку:
mkdir build && cd build
cmake ..
make
sudo make install
Убедитесь, что сборка прошла без ошибок. Если есть ошибки, их следует исправить, так как это может повлиять на функциональность программы.
Шаг 5: Запуск программы
Вы предпринимали шаг для запуска:
sudo ./bin/Protonect
Однако окно просмотра остаётся черным. Вот несколько причин и решений, которые могут помочь:
-
Проверка OpenGL: Запустите команду для проверки версии OpenGL, используемой на вашей системе:
glxinfo | grep OpenGL
Убедитесь, что версия OpenGL поддерживается вашей видеокартой.
libfreenect2
использует OpenGL по умолчанию, и старая версия может вызывать проблемы. -
Запуск с OpenCL: Попробуйте запустить
Protonect
с использованием OpenCL, это может решить проблему с отображением:./bin/Protonect cl
Это позволит библиотеке использовать OpenCL для обработки данных.
-
Логирование и отладка: Проверьте вывод логов на наличие сообщений, таких как
[XXXDepthRgbPacketProcessor] avg. time
, что указывает на то, что обработчик глубины работает. Если вы не видите этих сообщений, это может означать, что есть проблемы с захватом данных.
Дополнительные шаги
Если вышеуказанные действия не помогли, вам стоит обратиться к сообществу на GitHub. Ваш отчет о проблеме может включать вывод команд, которые вы пробовали, а также версии драйверов и библиотек. Это поможет другим пользователям и разработчикам лучше понять вашу проблему и предложить соответствующие решения.
Заключение
Подключение Kinect v2 к системе Linux с использованием libfreenect2
может быть сложным и требовать внимания к деталям на каждом этапе. Если вы следовали всем шагам установки и всё ещё сталкиваетесь с черным окном просмотра, рекомендуем выполнить указанные рекомендации и добиваться успешной работы устройства.