OpenTrack

 
 
 
Свима који су икад читали неку књигу у којој се неки од ликова описује као "закрпљен али уредан", а случајева има више, јасно је какав ће утисак на њих оставити бесплатан програм намењен праћењу положаја главе назван OpenTrack. Овај програм је еволуирао из програма FaceTrackNoIR који је и сам прављен модуларно, а даљим развојем кућни корисник добио је могућност да оствари праћење положаја сопствене главе на више различитих начина, користећи различите уређаје, скупље или јефтиније, уз запањујуће добре резултате. Ова флексибилнист остварена је модулима написаним од стране различитих аутора који, поред тога што омогућавају коришћење обичне мрежне камере као сензора, омогућавају и коришћење других уређаја, на пример магнетометра којe садржe Android или Windows мобилни телефони. EdTracker се оперативном систему пријављује као џојстик, па ће и за његово коришћење OpenTrack добро доћи, а такође користи сензор какав се уграђује у мобилне телефоне, само што ће корисник који се одлучи да користи мобилни телефон на глави морати да носи цео телефон. Постоји и могућност да се од одређених типова мобилних телефона, сочива и пластичног носача код куће направе виртуелно реалне наочари које је могуће користити уз  OpenTrack. Ради подешавања одзива OpenTrack- а, кориснику на располагању стоје и могућност подешавања кривих одзива, као и филтери којима је могуће утицати на координате које се шаљу софтверу клијенту и фреквенцију њиховог освежавања. Од старијег брата OpenTrack је наследио могућност  да координате пошаље другом рачунару на ком је покренут софтвер- клијент. Више детаља је могуће наћи на OpenTrack Wiki страни.
 
Уз све поменуто, OpenTrack ради на свим оперативним системима који се налазе у широј употреби. Инсталација на Windows опертивном систему се своди на покретање инсталационог фајла који се може преузети на овој страни, док инсталација на Linux оперативном систему захтева да се изворни код овог програма компајлира на рачунару на ком ће овај програм бити коришћен, што представља нешто сложенији процес који ће зависити од врсте Linux- а под којим се инсталирање покушава. Приликом покушаја компајлирања на 64bit- ном Linux Mint 17 оперативном систему, који се на крају показао као успешан, коришћено је упутство за компајлирање и инсталирање OpenTrack- а за Debian Linux доступно на овој страни.  Пошто је и сам аутор почетник кад је овако нешто у питању, заинтересованом читаоцу се препоручује да не губи храброст у случају да нема искуства везаног за компајлирање изворног кода, већ да проучи упутство за које је линк обезбеђен и искуство аутора које ће бити изнесено овде, јер је резултат више него вредан труда.
 
Да би изворни код OpenTrack- а био успешно компајлиран, потребно је прво на локалној машини имати све библиотеке које ће компајлер да позове. Како би ствари биле мало јасније, биће изнета листа пакета који су у конкретном случају, приликом компајлирања на Linux Mint 17 оперативном систему, били инсталирани на систем сагласно упутству, или пакета за које се показало да недостају приликом покушаја компајлирања:
 

gcc            
gcc-4.8            
gcc-4.8-base        
gcc-4.8-base:i386    
gcc-4.8-multilib    
gcc-4.9-base        
gcc-4.9-base:i386    
gcc-multilib        
lib32gcc-4.8-dev    
build- essential    
cmake            
cmake-curses-gui        
cmake-data        
git            
gist            
git-man            
libqt5concurrent5    
libqt5core5a        
libqt5dbus5        
libqt5gui5        
libqt5network5        
libqt5printsupport5    
libqt5serialport5    
libqt5sql5        
libqt5test5        
libqt5widgets5        
libqt5xml5        
libevdev-dev        
libevdev2        
libeigen3-dev        
libeigen3-doc

        
Пакете са листе могуће је на лак начин инсталирати у графичком окружењу захваљујући Software Manager- у који долази уз Linux Mint. Потребно је само у претраживач апликације унети име пакета и инсталирати га ако није инсталиран. Неки од пакета ће се инсталирати уз неке друге пакете, па ће посао бити нешто краћи него што се на први поглед може учинити. Инсталирање пакета је могуће извршити и из преводиоца командне линије (CLI),  а коришћење терминала ће бити неопходно како би била компајлирана и инсталирана најсвежија верзија OpenCV пакета који је такође неопходан, а према упутствима која се могу наћи на овој страни. Ово представља још један процес компајлирања и инсталирања који ће бити неопходно проћи, али је упутство прилично детаљно, а целе линије из упутства је могуће копирати у терминал коришћењем комбинације тастера CTL+SHIFT+V. Једном када је OpenCV успешно компајлиран и инсталиран потребно је скинути изворни код OpenTrack- а, што се може остварити извршавањем следећих команди у терминалу:
 

cd ~/
git clone https://github.com/opentrack/opentrack

 
По извршавању ових команди у home директоријуму корисника ће бити креиран директоријум назван 'opentrack' у који ће са github- а бити скинут извршни код OpenTrack- а, што би могло и да потраје, зависно од брзине конекције. Потом треба променити активни директоријум у директоријум који садржи изворни код:
 

cd opentrack

 
и креирати још један директоријум који ће бити коришћен током повезивања и превођења изворног кода, а затим променити активни директоријум у управо креирани, на пример:
 

mkdir build
cd build

 
Активни директоријум би сада требао да буде '~/opentrack/build', а из њега ће бити покренута алатка ccmake намењена конфигурисању опција  повезивања и превођења изворног кода на различитим платформама. Пошто се изворни код налази у директоријуму изнад активног, на тај директоријум треба и усмерити ccmake командом:
 

ccmake ..

 
ccmake ће Вас поздравити празним екраном са кратком листом команди на дну екрана. Како би пројекат био кофигурисан за превођење на локалном систему ваља притиснути тастер 'c', што ће резултирати очитавањем CmakeLists.txt фајлова које садржи изворни код. На екрану би сада требале да буду приказане опције које је могуће конфигурисати, а са којима ће изворни код бити компајлиран. На екрану ће бити приказати две колоне, од којих лева садржи име опције, а десна подешавања. Како би под Linux- ом могла бити коришћена емулација џојстика, потребно је укључити libevdev библиотеке, а није лоше ни подесити инсталацији директоријум за OpenTrack, па би релевантне линије требало изменити да изгледај овако:
 

SDK_ENABLE_LIBEVDEV            on
CMAKE_INSTALL_PREFIX          /usr/local/opentrack

 
Притиском на тастер 't' треба приказати напредне опције које је могуће кофигурисати ccmake- ом и проверити да ли у десној колони негде стоји порука да неки од директоријума није пронађен, што значи да недостаје нека од библиотека. У оваквом случају је недостајуће библиотеке могуће инсталирати коришћењем Software Manager- а или преводиоца командне линије. У случају да се јави осећај несигурности везано за оно што се дешава по инсталирању недостајућих библиотека, не треба заборавити да је садржај 'build' директоријума увек могуће обрисати и покренути ccmake поново. Једном када је све конфигурисано и на броју, треба притиснути 'c' још једном, како би релевантни фајлови били прочитани по други пут после чега ће ccmake, ако је задовољан, омогућити кориснику генерисање фајлова неопходних за компајлирање кода на локалној машини, са управо конфигурисаним опцијама, тако што ће на дну екрана приказати додатну опцију да се притисне тастер 'g', што ваља и учинити. Потом треба изаћи из ccmake- а и у терминалу куцати следеће команде:
 

cmake ..
make -j5

 
Ако имате среће, OpenTrack ће бити компајлиран без проблема и следећи пасус се на Вас не односи. На github- у је доступан изворни код верзије OpenTrack- а која је кандидат за објављивање (release candidate), што значи да се на овој верзији још ради. Може, на пример, да се деси да програмер на свом рачунару има подешене симболичке везе које нису подешене на машини на којој се покушава компајлирање, што ће довести до неуспеха. Ако у овој фази буде пријављена грешка, са стране која садржи разне верзије OpenTrack- а, ваља скинути изворни код последње release верзије, која је у тренутку у ком је аутор ове стране компајлирао и инсталирао OpenTrack била 2.2. Архиве намењене Linux- у имају екстензију .tar.gz. Ову архиву треба распаковати у посебан директоријум, на пример '~/opentrack22', променити активни директоријум у овај:
 

cd ~/opentrack22

 
и поновити цео поступак од корака у ком се креира build директоријум.
 
Када се компајлирање заврши без грешке, коначно је могуће инсталирати OpenTrack:
 

sudo make install

 
, чиме се компајлиран OpenTrack, са подршком за емулацију џојстика, инсталира у конфигурисан директоријум, у овом случају  '/usr/local/opentrack'. Подршка за виртуелни џојстик је у овом случају додата због обезбеђивања праћења положаја главе за Linux верзију War Thunder- а, а да би ова подршка прорадила потребно је доделити неопходне корисничке привилегије. Ово је остварено користећи упутства доступна на овој страни, уз минималне измене, а тачан поступак ће бити изнет у следећим редовима. Прво треба креирати текст фајл који садржи следеће:
 

KERNEL=="uinput", GROUP="uinput_group"

 
и снимитим га на диск, на пример у кућни директоријум, под именом 'uinput.rules'. Потом треба отворити CLI терминал, променити активни директоријум у home и копирати креирани фајл у '/lib/udev/rules.d' директоријум:
 

cd ~/
sudo cp uinput.rules /lib/udev/rules.d/

 
Треба креирати нову корисничку групу:
 

sudo groupadd uinput_group

 
и додати јој корисничко име налога под којим ће OpenTrack бити коришћен:
 

sudo usermod -a -G uinput_group <korisnicko_ime>

 
и, коначно, рестартовати систем.
 
Подешавања OpenTrack- а која ће његово функционисање довести на оптимум зависиће од сензора који се користи, од модела, ако се користи, као и од потреба корисника. У конкретном случају, коришћена је јефтина мрежна камера и модел са три емитујуће диоде који се монтира на слушалице, при чему је глава корисника била око једног метра удаљена од камере. OpenTrack 2.3 је коришћен под Windows- ом, док је верзија 2.2 овог програма коришћена под Linux- ом. Подешавања која су дала добре резултате приказана су на сликама испод што ће, можда, некоме бити од помоћи.
 
OpenTrack 2.3 на Windows оперативном систему:
 

 
Opentrack 2.2 на Linux Mint 17 оперативном систему:
 

If You are ready to get pumped visit totally sweet mammels, or the following website.