Настройка opentrack с камерой ps3 eye
Features
Add another slider to the PT point filter. Setting it to a low value prevents sawtooth-like motion. The point filter greatly reduces the need for using Accela or any other generic filter.
The point filter hasn't yet been implemented for the Aruco tracker. If you're using the Aruco tracker and want it done, send a note.
Bug reports & discussion
Assets
Features
- tracker/neuralnet: add a face tracker, by @DaWelter.
- new centering modes that fix the long-standing problem with yaw affecting pitch and vice versa. By @GO63-samara.
- tracker/pt: add MJPEG support
- proto/freetrack: add an easier method for dealing with Elite Dangerous library location problem, in the freetrack output settings.
- proto/freetrack: add back in the option for ephemeral freetrackclient/npclient library location
- [hotfix 3] tracker/pt: add point filter feature. this is arguably more effective than filtering after pose estimation via opentrack's regular filters. similar filter should be added to Aruco.
Fixes
- fix the Zero keybinding when using a custom center offset
- video/ps3eye: hopefully fix LED staying alight with the open driver
- [hotfix 1]: fix crash with the new PS3 Eye driver used with trackers other than PT
- [hotfix 2]: fix freetrack output not working for some users
- [hotfix 2]: tracker/pt: use color output from the open PS3 Eye driver when in color key mode
- [hotfix 3]: fix freezes on saving settings in the PT tracker while it's running
- [hotfix 3]: fix for non-zero values when deadzones are used in the mapping dialog
- [hotfix 3]: video/ps3eye: fix freeze with the open driver
- [hotfix 3]: tracker/pt: fix broken formula for point radius. you have to adjust your threshold sliders and min/max point sizes.
PS3 Eye open driver
opentrack now has a standalone driver for the PS3 Eye, and it's mature enough for its existence to be advertised more widely. Now you don't have to pay for (or pirate, for that matter) the CL Eye driver that's buggy, slow, unmaintained and broken with every other Windows 10 update. The crashes are gone and there's less CPU usage. It's also free as in beer.
Приветствую тебя, наш покупатель. Меня зовут Александр Ороховатский, я основатель проекта MoveHead и в последующем FeelCustom, и в этой статье я постараюсь помочь Вам освоиться с нашим замечательным продуктом - фритреком. Я со своей командой уверен, что тебе всё понравится, если же нет, то всегда можете обратиться к любому из нас для решения проблем.
Оглавление:
Что такое фритрек
Фритрек — это система обзора, переносящая повороты Вашей головы из реального мира в игровой. Специальное ПО отслеживает изменение положения клипсы в пространстве с помощью камеры и за счет заложенных математических формул передает все это в игровой интерфейс. Если это объяснить простым языком, то система предназначена чтобы преобразовывать повороты головы в реальной жизни в повороты головы в игровом мире. Вы поворачиваете голову и Ваш игровой персонаж так же поворачивает голову, только в игре. Это привносит новые игровые ощущения и дает преимущество перед игроками у кого данной системы нет.
Основное применение — симуляторы. Отслеживаются все 6 степеней свободы:
- движения вперёд/назад;
- вверх/вниз;
- влево/вправо;
- наклон головы;
- поворот головы;
Из чего состоит клипса фритрека
- Основа. Прочный и надежный двусторонне-фольгированный стеклотекстолит;
- Колодка питания с возможностью замены кабеля;
- Кабель питания 5ого класса гибкости;
- Инфракрасные диоды с большим углом свечения. Излучаемый спектр не виден человеческому глазу, поэтому НЕ ПЫТАЙТЕСЬ определить работает ли клипса визуально;
- Поворотный 3д-шарнир. Он оснащен магнитным креплением, что позволяет легко закреплять клипсу фритрека на время игры и легко снимать ее в случаях, когда этого не требуется;
- Дополнительная база, позволяющая организовать точку хранения или закрепить ее на вторых наушниках;
- Кружок самого прочного на данный момент двустороннего скотча 3М;
- Стяжки для возможности дополнительного закрепления базы на наушниках.
Способ крепления
Подготовка:
- Устанавливаем драйвера для камеры CL-Eye-Driver-5_3_0_0341;
- Скачиваем и устанавливаем opentrack 2.3.9 на GitHub;
- Закрепляем камеру на монитор и клипсу фритрека на наушники одним из способов;
- Подключим камеру и клипсу фритрека в USB-порты. Клипса фритрека может быть подключена в любой USB-разъем питания, в том числе и зарядку от телефона. В случае подключения к компьютеру она НЕ ДОЛЖНА определяться как устройство.
Настройка ПО:
В открывшемся окне нажимаем на наше "Устройство"
В выпадающем списке выбираем PS3Eye Camera
После чего выставляем все настройки со вкладки "Камера" в соответствии со скриншотом выше, за более подробным объяснением по каждому из пунктов советую обратиться к нашей вики.
Демонстрация процесса калибровки:
Чем больше у Вас получится совершить поворотов головы при разных углах, тем точней опентрек определит положение центра вращения головы, что повлечет к правильной работе математических формул.
Порядок настройки Accela-фильтра следующий.
1. Запускаем любимую игру в оконном режиме;
2. Запускаем opentrack;
3. Открываем Accela-фильтр и убираем все значения в 0
4. Изображение начнет дергаться, поэтому двигаем ползунок вправо до исчезновения данного неудобства. Во время выставления мертвой зоны помогает смотреть в одну точку, например на одну из перекладин кабины самолета;
5. После того, как "трясучка" прекратилась переходим к настройке Чувствительности осей поворотов. С помощью данного ползунка мы делаем все наши повороты более плавными. Вам должно быть комфортно крутить головой, не старайтесь данным ползунком добиться четкого взгляда в одну точку, это будет двумя пунктами ниже;
6. Повторяем те же действия и для осей смещения;
7. Выставляем нелинейность поворотов. Эта опция позволяет добиться плавности взгляда и при этом жесткой фиксации на нужном объекте.
После всех манипуляций у Вас будет что-то наподобие:
1. Назначаем горячие клавиши, в моём случае кнопка центрирования назначена на кнопку джойстика + на кнопку клавиатуры
2. Следующие вкладки оставляем без изменения
3. На вкладке "Относительный сдвиг" заострим внимание. Этот ползунок отвечает за смену режима интерпретирования поворотов. Изначально он выключен и когда Вы будете смотреть на "шесть", то есть назад, то смещения по оси X будут инвертированы, чтобы это изменить необходимо поставить галочку в соответствие картинкой ниже
4. На вкладке "Захват игр" можно настроить автоматическую смену профилей (все настройки программы, кривых) в зависимости от запущенной игры
Описание настройки кривых представлена на картинке ниже:
Логика настройки кривых следующая:
1. Запускаете любимую игру в оконном режиме;
2. Поворачиваете голову вправо до максимально-комфортного угла;
3. Двигаем верхнюю правую точку оси Yaw (ось поворота: влево-вправо) влево до тех пор, пока в игре обзор не достигнет необходимую точку поворота. Сгибаем кривую в нижней части вниз, в случае если хотим настроить мертвую зону (саму точку не нужно сдвигать), а по факту создаем третью точку;
4. Выполняем те же действия для всех остальных осей.
Готовые конфигурационные файлы
Вместо того, чтобы настраивать opentrack с нуля, можно попробовать использовать готовые профили от других игроков. Для этого:
Версии устройств обзора:
- MoveHead - это старая добрая клипса с размерами от TrackIR;
- MoveHeadNew - новая версия, размеры которые подбирали совместно со Стасом, ее преимущество в том, что диоды при обзоре по вертикале не будут перекрываться, как бы того не хотелось.
Плагины к устройствам, с помощью которых opentrack получает данные о положении головы, то есть это то, через что опентрек будет считывать информацию. Программа позволяет снимать показания с человеческого лица (хорошо освещенного), андроид-телефона, закрепленного на голове, иннерционника, виртуальных шлемов, конечно же с рамки или кепки со светодиодами и многого другого;
PointTracker
Камера (Camera)
Настройки камеры (Camera Settings)
Устройство (Device): Доступные в системе устройства захвата изображения. Необходимо выбрать камеру, с помощью которой будет захватываться изображение;
FPS: Задают частоту работы камеры, то есть с какой скоростью будет обновляться изображение получаемое с устройства. Для всех веб-камер это значение ровняется 30 кадров в секунду, камеры Sony PS3 Eye могут работать в режимах 75 кадров в секунду при разрешении 640х480 и 175 кадров в секунду при разрешении 320х240. Рекомендуется использовать 640х480 и 60 или 75 кадров в секунду, так как чем больше разрешение - тем качественней будет производиться анализ изображения с камеры. Для лучшего понимания возможно провести аналогию с количеством отсчетом в джойстиках или педалях. Общая рекомендация: если в играх используется ось приближения и ось смещения, то рекомендуется использовать разрешение 640х480, если игры представляют из себя шутеры или автосимуляторы и используются только оси поворота и наклона, то лучше выставить меньшее разрешение и большее значение FPS;
Угол обзора камеры (Diagonal field of view): Угол обзора камеры (в градусах). Для камеры Sony PS3 Eye это значения 56 градусов для красной точки и 75 градусов для синей точки. Рекомендуется использовать угол 56 градусов, так как угол меньше, а соответственно точки находятся на большем удалении друг от друга и дисторсии (искажений) меньше;
Динамическая поза (Dynamic pose resolution): Активация применения просчета более сложного динамического алгоритма или простого статического алгоритма. Активация данной настройки позволяет захватывать более экстремальные позы, но иногда может застревать в неправильной позе, что повлечет к инверсии осей. Данная настройка категорически бесполезна для модели фритрека "3х-точечная клипса" и может быть полезна для модели фритрека "Кепка". Перекрытие одного из диодов быстро сбрасывает динамическую позу.
Время ожидания динамической позы (Dynamic pose timeout): Время ожидания, которое по умолчанию 0.5сек. Так если у Вас потеряются точки больше чем на 0.5сек, то отслеживание может "застрять", он некорректно определит центр и весь Ваш обзор инвертирует оси.
Параметры камеры (Camera settings): Если вы используете камеру Sony PS3 Eye, то эти настройки можно открыть в программе CL-Eye Test, устанавливаемой вместе с драйверами для камеры. Для этого запустите CL-Eye Test и пройдите по пути Options - Video Capture Filter.
Извлечение точек (Point extraction)
Автоматический порог (Automatic treshold): Данный пункт активирует один из режимов извлечения точек:
- Снятая галочка - стандартный режим работы PointTracker (давно не изменявшийся). Извлекает точки на основании контраста светотеневого рисунка, и перемещая ползунок мы смещаем порог, необходимый для извлечения точки, поэтому этот метод извлечения точек с легкостью возможно обмануть просто, сделав кружок из пальцев. Данный режим определяет абсолютный цвет 0 to 255 и смещая ползунок мы задаем поиск конкретного цвета. После чего алгоритм будет искать окружность в заданном цвете, ограничивающий только пределами минимальной и максимальной размере точек;
- Активированная галочка - это режим извлечения точек на основании заданного для поиска размера светящихся точек (разработка Стаса Халика, разработчика opentrack). В данном режиме, чтобы точка извлеклась, она должна излучать свет в заданном ползунке размере и если точка заданного диаметра находится - то она извлекается. Выставляемые значения ползунком от 2.5 до 15px. Оптимальное положение ползунка в данном режиме находится примерно по середине и для большинства пользователей оно подойдет.
Порог (Threshold): Функции описаны выше
Минимальный и максимальный размер (Min size & Max size): Предел поиска, извлекаемых точек, в пикселях.
Статус (status)
Это информация, на которую необходимо опираться при настройке извлечения точек/
- Информация по камере (Camera info): указывает используемые настройки ширины и высоты захватываемого изображения и частоты кадров камеры. Для Sony PS3 Eye это значение должно быть не меньше 60;
- Количество извлеченных точек (Extracted points): показывает количество извлеченных точек OpenTrack. При правильной настройке здесь всегда должно быть значение “3 OK”.
Модель (model)
Данная вкладка позволяет настроить параметры используемой клипсы/кепки и выполнить калибровку положения модели.
Модели фритрека
Бывают следующих типов:
- Клипса: отличительная особенность клипсы это расположение диода в ряд друг под другом.
- Плюсы:
- Большие углы захвата;
- Сложнее изготавливать, в отличии от модели "кепка";
- Необходимость наличия наушников закрытого типа для крепления клипсы на голове или необходимость использования других средств для крепления на голове (например возможно использовать резинку из-под налобного фонаря).
- Плюсы:
- Простота в изготовлении;
- Ограничения работы по осям YAW (влево-вправо) & Pitch (вверх-вниз);
- Ограничение видимости при взгляде вниз;
- Порой в ней очень жарко)))
Размеры модели:
Очень важно выставить правильные расстояния между свето/ик-диодами. Это необходимо для корректного просчета формул, заложенных в опентрек.
Положение модели:
Данная настройка позволяет откалибровать положение вашей клипсы или кепки относительно положения камеры. Нулевое значение будет только в том случае, когда клипса находится четко напротив камеры. Этого проблематично достичь и в этом нет необходимости. После калибровки опентрек сам будет вносить все необходимые поправки в математическую модель, вне зависимости от разности положения клипсы и камеры.
Процесс калибровки
Во время калибровки НЕ СОВЕРШАЙТЕ движений по осям смещений (X, Y, Z) и по оси наклона Roll .
Чем больше у Вас получится совершить поворотов головы при разных углах, тем точней опентрек определит положение центра вращения головы, что повлечет к правильной работе математических формул.
Плагины к устройствам, с помощью которых opentrack получает данные о положении головы, то есть это то, через что опентрек будет считывать информацию. Программа позволяет снимать показать с человеческого лица (хорошо освещенного), андроид-телефона, закрепленного на голове, иннерционника, виртуальных шлемов, конечно же с рамки или кепки со светодиодами и многого другого;
- Aruco paper marker tracker
- плагин, использующий в качестве источника данных веб-камеру и закрепленную на голове распечатанную мишень, которая позволяет отслеживать положение головы;
- плагин для отслеживания инерционного фритрека;
- плагин, использующий в качестве источника данных веб-камеру и свето/ИК-диодную клипсу, закрепленную на голове;
Выходной интерфейс
Плагины, посредством которых задаются протоколы для взаимодействия с игрой или операционной системой, то есть это то, в какой игровой интерфейс он будет всю обрабатываемую информацию передавать, некоторые игры используют только свой собственный интерфейс, например тот же Microsoft Flight Simulator, в большинстве же случае достаточно будет выбрать Freetrack 2.0 Enhanced, который включает в себя интерфейс и фритрека и TrackIR'а:
- эмулятор TrackIR и FreeTrack-интерфейсов. Поддерживает большое количество игр;
Microsoft FSX SimConnect:
- протокол для Microsoft Flight Simulator X имеет свои собственные протоколы для взаимодействия с игрой, поэтому для игры в MFS X необходимо использовать данный плагин;
- плагин позволяет эмулировать движение мышью за счет движения головы;
Фильтрация/сглаживание
Плагины производящие фильтрацию и сглаживание информации. Пожалуй, одна из самых важных настроек, так как позволяет сделать обзор плавней или наоборот резче:
- актуальный плагин с большой гибкостью настроек. Собственная разработка Stas Halik, разработчика opentrack. Самый часто обновляющийся и дорабатывающийся плагин;
- плагин с адаптивной подстройкой, настроек минимум, но работает в автоматическом режиме;
- устаревший плагин, который имеет минимум настроек, работает зачастую неадекватно.
Профили
Профили позволяют создавать различные вариации настроек.
Каждый профиль содержит в себе все настройки плагинов, кривых и других настроек OpenTrack`a.
- Для создания нового профиля необходимо нажать "Профиль" - "Создать новый пустой профиль";
Из ранее созданного профиля возможно сделать копию с другим название.
- Для этого необходимо нажать "Профиль" - "Создать новый профиль на основе текущего". Это позволит продублировать текущий профиль и настроить его под свои требования;
Каждый профиль хранится в отдельном файле, что позволяет сохранить их на внешний носитель, и при необходимости легко восстановить все настройки.
- Для открытия директории с файлами профилей необходимо нажать "Профиль" - "Открыть каталог с профилями".
Настройки
Включают в себя различные настройки OpenTrack`a:
- горячие клавиши;
- коррекция расположения камеры;
- переназначение осей выходного интерфейса;
- дополнительные настройки выходного интерфейса и прочее;
- активация и настройка относительного сдвига и настройка смещения шеи;
- настройка захвата игр.
Кривые
Инструмент для тонкой подстройки виртуальных осей opentrack'а. При помощи кривых возможно изменить соотношение между виртуальными осями и реальными, то есть соотношение между движениями реальной головы и движениями головы в виртуальном мире.
I built myself a neat IR clip with three IR LEDs, attachable to my headset, with a power supply, neat. I did it because initially I couldn't get faceApi to detect my camera, but PointTracker worked, so I decided to go with that (and OpenTrack).
Now I try to run OpenTrack with PointTracker 1.1 aaaaaand nothing happens. Huh. I switch to FaceTrackNoIR. faceApi 3.2.6. now inexplicably picks up my camera and detects my face. but it's not quite acceptable for gameplay, there are some issues. PointTracker 1.0 (nor 1.1) doesn't even detect my camera now, only shows a black screen, and "currently being used" LED on my PS3Eye doesn't turn on.
When I press Start in OpenTrack, buttons grey out, and "Tracking not started" disappears, nothing appears in it's place.
I just can't figure out what the hell is wrong, and I really wanted to use my IR clip.
The text was updated successfully, but these errors were encountered:
Petersaber commented Aug 31, 2016 •
Yes, CL-Eye Test shows me a perfect webcam image at max framerate. Skype also works with that webcam flawlessly, and ManyCam picks it up and also shows me an image. In each case, red LED on my webcam turns on when image starts showing in either of these programs.
sthalik commented Aug 31, 2016
Confirm whether it works with the aruco tracker.
Petersaber commented Aug 31, 2016 •
No, it doesn't work with anything in OpenTrack.
Using the build provided in the link doesn't change anything.
Going to aruco tracker settings and clicking "Camera settings" -> Open hangs the whole app.
sthalik commented Aug 31, 2016
Try historical builds before rc7. Whether it works will prove something.
Len62 commented Aug 31, 2016
Since you are using IR LEDs on your clip have you modified the PS3 cam?
Petersaber commented Aug 31, 2016 •
@Len62 - not yet, but I can clearly see lit IR LEDs in CL-Eye Test picture. If I have to modify it anyway, I'll do it. Right now I want to be able to use any trackIR software in the first place.
@sthalik - I'll try, I'll post the results
edit: Not sure what you meant. Should I compile it myself? Because the only compiled build before rc7 is 2.2, which doesn't work the same way new builds do.Len62 commented Aug 31, 2016
Are you running OT in admin mode? Also, did you set the camera up in the Point Tracker settings window? One other thing, make sure the CLEye Test software is not running while using OT.
Petersaber commented Sep 1, 2016 •
@Len62 I tried running OT as an admin.
I made sure that only one application accesses the PS3 Eye at a time - and none do, as the "being used" LED isn't turned on.
Clicking "Camera settings dialogue" causes the app to hang for 5-10 seconds, and nothing happens.
New info: FreeTrack, on the other hand, started working and stopped crashing when I set my stream mode (in FreeTrack) to 640x480 24-bit 60FPS. It picked up my camera and sees my IR LED clip just fine.
Forsaken-Player commented Sep 10, 2016
@Petersaber
I would first uninstall the drivers and make windows delete them. Second, once reinstalled go to CL-Eye Test application and to OPTIONS--> Video Capture Pin and select the desire configuration. Close that app and verify the red led on the camera has turn off. Then try opentrack. I've been using for very long time this software and never ever failed to me but at first I had to configure that way the video otherwise it would crash.Good luck from Argentina
@sthalik Thank you so much for this super app.
Petersaber commented Sep 11, 2016
@Forsaken-Player I've already tried doing that, and unfortunetly it still doesn't work. I can't do any further testing now, I won't have access to my computer for 10 more days (travelling)
sthalik commented Sep 11, 2016
Try installing K-Lite codec pack Mega and resetting codec priorities in codec tweak tools. But it has low chance of helping.
Once I was faced with that and what I did was reinstall Windows in a clean directory, then install K-Lite codec pack as the first thing.
Petersaber commented Sep 11, 2016
I'll try that on a different machine.
On my main machine I'm using Shark007 codecs, and I don't really like the idea of installing the mess that K-Lite Mega pack is (or at least used to be). Do you know which codec specifically could be responsible? Maybe I could mess around with Shark007 admin panel.
Читайте также:
- Плюсы: