Instalacja i konfiguracja Kinect, Wiimote i Eyetrackera: Różnice pomiędzy wersjami
(Nie pokazano 33 pośrednich wersji utworzonych przez tego samego użytkownika) | |||
Linia 2: | Linia 2: | ||
== Kinect + OpenNI2 + NiTE2 + freenect == | == Kinect + OpenNI2 + NiTE2 + freenect == | ||
− | Instalacja OpenNI 2 + NiTE 2 z | + | Należy pamiętać, żeby wszsstkie wystąpienia <code>{USER_NAME}</code> w poniższym kodzie zamienić na właściwą nazwę użytkownika. |
+ | |||
+ | Instalacja OpenNI 2 + NiTE 2 z prekonfigurowanych binarek dla Ubuntu 15.10: | ||
sudo apt-get install freeglut3 python-opencv libboost-all-dev | sudo apt-get install freeglut3 python-opencv libboost-all-dev | ||
Linia 10: | Linia 12: | ||
cd ~/kinect | cd ~/kinect | ||
sudo cp primesense-and-kinect-usb.rules /etc/udev/rules.d/557-primesense-usb.rules | sudo cp primesense-and-kinect-usb.rules /etc/udev/rules.d/557-primesense-usb.rules | ||
− | export LD_LIBRARY_PATH=/home/{USER_NAME}/kinect/Redist | + | export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/{USER_NAME}/kinect/Redist |
cd Redist | cd Redist | ||
./NiViewer | ./NiViewer | ||
− | + | Linijkę <code>export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/{USER_NAME}/kinect/Redist</code> najlepiej wrzucić do pliku <code>.profile</code> lub <code>.bashrc</code>, żeby uruchamiana była przy każdym logowaniu. | |
− | -- | + | |
− | sudo usermod -G plugdev -a USER_NAME | + | Należy prawdzić czy użytkownik, na koncie którego będzie używany Kinect należy do grupy plugdev -- jeśli nie, dodać: |
+ | sudo usermod -G plugdev -a {USER_NAME} | ||
+ | |||
+ | Alternatywnie można zainstalować całość ze źródeł - instrukcja znajduje się na dole tej strony. | ||
+ | |||
+ | === Wrapper nite2 do Python + OpenBCI === | ||
− | + | Moduł do Pythona (plik <code>nite2.so</code>) należy zbudować z repozytorium https://github.com/BrainTech/nite2-bindings i umieścić w katalogu <code>/usr/lib/python2.7/dist-packages</code>. | |
− | + | Żeby NiTE2 działo poprawnie wewnątrz OpenBCI należy skopiować katalog NiTE2 (<code>~/kinect/Redist/NiTE2</code>) do katalogu <code>~/.obci/sandbox</code>. | |
− | |||
na koncie lab | na koncie lab | ||
Linia 29: | Linia 35: | ||
cp -r /home/lab/kinect/Redist/NiTE2/ ~/.obci/sandbox/ | cp -r /home/lab/kinect/Redist/NiTE2/ ~/.obci/sandbox/ | ||
− | |||
na koncie newtech | na koncie newtech | ||
Linia 43: | Linia 48: | ||
== Instalacja xwiimote == | == Instalacja xwiimote == | ||
− | + | UWAGA!!! NIE NALEŻY instalować pakietu xwiimote z repozytoriów Debiana i Ubuntu - są one przestarzałe. | |
+ | |||
+ | Wymagane wersje: | ||
+ | * kernel >= 3.5+ | ||
+ | * bluez >= 5.11+ | ||
− | + | === A) Instalacja wymaganych pakietów === | |
− | |||
− | + | sudo apt-get install autoconf autogen automake gcc bluetooth ncurses-dev libudev-dev libtool git blueman python-dev dh-autoreconf pkg-config swig | |
− | + | === B) xwiimote driver & utils === | |
git clone https://github.com/BrainTech/xwiimote | git clone https://github.com/BrainTech/xwiimote | ||
Linia 59: | Linia 67: | ||
sudo ldconfig | sudo ldconfig | ||
− | + | === C) Python bindings === | |
git clone https://github.com/BrainTech/xwiimote-bindings | git clone https://github.com/BrainTech/xwiimote-bindings | ||
Linia 68: | Linia 76: | ||
sudo ldconfig | sudo ldconfig | ||
− | + | === D) Żeby działało bez sudo === | |
+ | |||
+ | Jeśli chcemy, żeby xwiimote dział bez sudo dla userów lab i newtech należy wykonać polecenia: | ||
sudo usermod -a -G input newtech | sudo usermod -a -G input newtech | ||
sudo usermod -a -G input lab | sudo usermod -a -G input lab | ||
− | + | === E) Sparować urządzenie z użyciem wbudowanego do Ubuntu panelu Bluetooth === | |
− | + | === F) Demo === | |
− | git clone https://github.com/ | + | git clone https://github.com/BrainTech/wiiscale.git |
cd wiiscale | cd wiiscale | ||
− | + | Należy odkomentować linijki 134 i 135: | |
+ | |||
134: # for m in measurements(iface): | 134: # for m in measurements(iface): | ||
135: # print_bboard_measurements(*m) | 135: # print_bboard_measurements(*m) | ||
− | + | Demo można uruchomić poleceniem: | |
+ | |||
+ | python ./scale.py | ||
− | Tobii REX eyetracker | + | == Tobii REX eyetracker == |
* zainstalować pakiet deb dla 64bit Linuxa z http://developer.tobii.com/rex-setup-gaze-sdk/ | * zainstalować pakiet deb dla 64bit Linuxa z http://developer.tobii.com/rex-setup-gaze-sdk/ | ||
* poprosić Aleksa o kopię SDK | * poprosić Aleksa o kopię SDK | ||
− | * | + | * w katalogu <code>Samples</code> w SDK znajduje się demo (należy je zbudować poleceniem <code>make</code>) |
+ | |||
+ | == Oprogramowanie do Kinecta ze źródeł == | ||
+ | |||
+ | Do pełnego działania Kinecta na Linuxie potrzebne są: OpenNI2, NiTE2, libfreenect z driverem do OpenNI2 oraz wrapper do Pythona - <code>nite2</code>. | ||
+ | |||
+ | Firma PrimeSense, autor OpenNI, została wykupiona przez Apple'a. Następnie Apple wstrzymało publiczny rozwój projektu OpenNI - został on utajniony. Ponieważ jest to oprogramowanie opensource, kody źródłowe są nadal dostępne i mogą być używane przez każdego. Najbardziej aktywnym forkiem jest repozytorium prowadzone przez http://occipital.com, dostępne pod adresem https://github.com/occipital/OpenNI2. | ||
+ | |||
+ | === OpenNI2 === | ||
+ | |||
+ | OpenNI2 można zdobyć na dwa sposoby - zbudować ze źródeł lub pobrać binarki. | ||
+ | |||
+ | ==== Kompilacja OpenNI2 ==== | ||
+ | Instalacja wymagań | ||
+ | sudo apt-get install git g++ cmake python libudev-dev libxi-dev libxmu-dev libusb-1.0-0-dev libudev-dev freeglut3-dev doxygen graphviz | ||
+ | Do kompilacji niezbędna jest Java (dokładniej <code>javac</code>). Należy zainstalować jakiekolwiek JDK, np.: | ||
+ | sudo apt-get install openjdk-7-jdk | ||
+ | Pobranie repozytorum i kompilacja | ||
+ | git clone https://github.com/occipital/OpenNI2.git | ||
+ | cd OpenNI2 | ||
+ | make | ||
+ | Warto zapisać ścieżkę do OpenNI w zmiennej (i następnie dodać do .profile lub .bashrc): | ||
+ | export OPENNI_DIR=/home/{USER_NAME}/OpenNI2 | ||
+ | Instalacja OpenNI: | ||
− | + | sudo ${OPENNI_DIR}/Packaging/Linux/install.sh | |
+ | sudo gpasswd -a ${USER} video | ||
− | Instalacja | + | ==== Instalacja z binarek ==== |
− | + | Należy pobrać binarny pakiet ze strony http://structure.io/openni i wypakować do katalogu np. <code>OpenNI-Linux-x64-2.2</code> | |
− | |||
− | + | $ cd OpenNI-Linux-x64-2.2 | |
− | + | $ sudo ./install.sh | |
− | sudo | ||
− | + | w aktualnym katalogu utworzy się skrypt <code>OpenNIDevEnvironment</code>, który ustawia środowisko dev | |
− | |||
− | |||
− | |||
− | + | === Kompilacja libfreenect === | |
− | + | git clone https://github.com/OpenKinect/libfreenect.git | |
− | make | + | cd libfreenect |
− | + | mkdir build | |
− | + | cd build | |
+ | cmake .. -DBUILD_OPENNI2_DRIVER=ON | ||
+ | make -j4 | ||
+ | cp -L lib/OpenNI2-FreenectDriver/libFreenectDriver.so ${OPENNI_DIR}/Bin/x64-Release/OpenNI2/Drivers/ | ||
− | + | Testowanie | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | cd ${OPENNI_DIR}/Bin/x64-Release/ | |
+ | ./NiViewer | ||
− | + | === Instalacja biblioteki NiTE2 === | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | NiTE od zawsze było oprogramowaniem bez dostępnych kodów źródłowych. Binarki można znaleźć tutaj: http://ilab.usc.edu/packages/forall/ubuntu-13.10/NiTE-Linux-x64-2.2.tar.bz2 | |
− | cd | + | |
− | ./ | + | cd NiTE-Linux-x64-2.2 |
+ | sudo ./install.sh | ||
− | + | cp -L /usr/local/lib/OpenNI2-FreenectDriver/libFreenectDriver.so NiTE-Linux-x64-2.2/Samples/Bin/OpenNI2/Drivers/ | |
− | + | === Kompilacja Pythonowego modułu 'nite2' (wrappera do OpenNI2 + NiTE2) === | |
− | |||
− | |||
− | + | $ sudo apt-get install python-dev libboost-all-dev | |
+ | $ git clone https://github.com/BrainTech/nite2-bindings | ||
+ | $ cd nite2-bindings | ||
+ | $ make |
Aktualna wersja na dzień 12:08, 23 mar 2016
Spis treści
Kinect + OpenNI2 + NiTE2 + freenect
Należy pamiętać, żeby wszsstkie wystąpienia {USER_NAME}
w poniższym kodzie zamienić na właściwą nazwę użytkownika.
Instalacja OpenNI 2 + NiTE 2 z prekonfigurowanych binarek dla Ubuntu 15.10:
sudo apt-get install freeglut3 python-opencv libboost-all-dev cd ~ wget http://static.mroja.net/kinect/kinect.7z 7z x kinect.7z cd ~/kinect sudo cp primesense-and-kinect-usb.rules /etc/udev/rules.d/557-primesense-usb.rules export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/{USER_NAME}/kinect/Redist cd Redist ./NiViewer
Linijkę export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/{USER_NAME}/kinect/Redist
najlepiej wrzucić do pliku .profile
lub .bashrc
, żeby uruchamiana była przy każdym logowaniu.
Należy prawdzić czy użytkownik, na koncie którego będzie używany Kinect należy do grupy plugdev -- jeśli nie, dodać:
sudo usermod -G plugdev -a {USER_NAME}
Alternatywnie można zainstalować całość ze źródeł - instrukcja znajduje się na dole tej strony.
Wrapper nite2 do Python + OpenBCI
Moduł do Pythona (plik nite2.so
) należy zbudować z repozytorium https://github.com/BrainTech/nite2-bindings i umieścić w katalogu /usr/lib/python2.7/dist-packages
.
Żeby NiTE2 działo poprawnie wewnątrz OpenBCI należy skopiować katalog NiTE2 (~/kinect/Redist/NiTE2
) do katalogu ~/.obci/sandbox
.
na koncie lab
cd ~/kinect/Redist cp /path_to_file/nite2.so nite2.so
cp -r /home/lab/kinect/Redist/NiTE2/ ~/.obci/sandbox/
na koncie newtech
cd ~/kinect/Redist cp /path_to_file/nite2.so nite2.so
mkdir /home/newtech/.obci/ # jeśli katalog istnieje to pominąć mkdir /home/newtech/.obci/sandbox # j.w.
cp -r /home/newtech/kinect/Redist/NiTE2/ ~/.obci/sandbox/
Instalacja xwiimote
UWAGA!!! NIE NALEŻY instalować pakietu xwiimote z repozytoriów Debiana i Ubuntu - są one przestarzałe.
Wymagane wersje:
- kernel >= 3.5+
- bluez >= 5.11+
A) Instalacja wymaganych pakietów
sudo apt-get install autoconf autogen automake gcc bluetooth ncurses-dev libudev-dev libtool git blueman python-dev dh-autoreconf pkg-config swig
B) xwiimote driver & utils
git clone https://github.com/BrainTech/xwiimote cd xwiimote ./autogen.sh make sudo make install sudo ldconfig
C) Python bindings
git clone https://github.com/BrainTech/xwiimote-bindings cd xwiimote-bindings ./autogen.sh make sudo make install sudo ldconfig
D) Żeby działało bez sudo
Jeśli chcemy, żeby xwiimote dział bez sudo dla userów lab i newtech należy wykonać polecenia:
sudo usermod -a -G input newtech sudo usermod -a -G input lab
E) Sparować urządzenie z użyciem wbudowanego do Ubuntu panelu Bluetooth
F) Demo
git clone https://github.com/BrainTech/wiiscale.git cd wiiscale
Należy odkomentować linijki 134 i 135:
134: # for m in measurements(iface): 135: # print_bboard_measurements(*m)
Demo można uruchomić poleceniem:
python ./scale.py
Tobii REX eyetracker
- zainstalować pakiet deb dla 64bit Linuxa z http://developer.tobii.com/rex-setup-gaze-sdk/
- poprosić Aleksa o kopię SDK
- w katalogu
Samples
w SDK znajduje się demo (należy je zbudować poleceniemmake
)
Oprogramowanie do Kinecta ze źródeł
Do pełnego działania Kinecta na Linuxie potrzebne są: OpenNI2, NiTE2, libfreenect z driverem do OpenNI2 oraz wrapper do Pythona - nite2
.
Firma PrimeSense, autor OpenNI, została wykupiona przez Apple'a. Następnie Apple wstrzymało publiczny rozwój projektu OpenNI - został on utajniony. Ponieważ jest to oprogramowanie opensource, kody źródłowe są nadal dostępne i mogą być używane przez każdego. Najbardziej aktywnym forkiem jest repozytorium prowadzone przez http://occipital.com, dostępne pod adresem https://github.com/occipital/OpenNI2.
OpenNI2
OpenNI2 można zdobyć na dwa sposoby - zbudować ze źródeł lub pobrać binarki.
Kompilacja OpenNI2
Instalacja wymagań
sudo apt-get install git g++ cmake python libudev-dev libxi-dev libxmu-dev libusb-1.0-0-dev libudev-dev freeglut3-dev doxygen graphviz
Do kompilacji niezbędna jest Java (dokładniej javac
). Należy zainstalować jakiekolwiek JDK, np.:
sudo apt-get install openjdk-7-jdk
Pobranie repozytorum i kompilacja
git clone https://github.com/occipital/OpenNI2.git cd OpenNI2 make
Warto zapisać ścieżkę do OpenNI w zmiennej (i następnie dodać do .profile lub .bashrc):
export OPENNI_DIR=/home/{USER_NAME}/OpenNI2
Instalacja OpenNI:
sudo ${OPENNI_DIR}/Packaging/Linux/install.sh sudo gpasswd -a ${USER} video
Instalacja z binarek
Należy pobrać binarny pakiet ze strony http://structure.io/openni i wypakować do katalogu np. OpenNI-Linux-x64-2.2
$ cd OpenNI-Linux-x64-2.2 $ sudo ./install.sh
w aktualnym katalogu utworzy się skrypt OpenNIDevEnvironment
, który ustawia środowisko dev
Kompilacja libfreenect
git clone https://github.com/OpenKinect/libfreenect.git cd libfreenect mkdir build cd build cmake .. -DBUILD_OPENNI2_DRIVER=ON make -j4 cp -L lib/OpenNI2-FreenectDriver/libFreenectDriver.so ${OPENNI_DIR}/Bin/x64-Release/OpenNI2/Drivers/
Testowanie
cd ${OPENNI_DIR}/Bin/x64-Release/ ./NiViewer
Instalacja biblioteki NiTE2
NiTE od zawsze było oprogramowaniem bez dostępnych kodów źródłowych. Binarki można znaleźć tutaj: http://ilab.usc.edu/packages/forall/ubuntu-13.10/NiTE-Linux-x64-2.2.tar.bz2
cd NiTE-Linux-x64-2.2 sudo ./install.sh
cp -L /usr/local/lib/OpenNI2-FreenectDriver/libFreenectDriver.so NiTE-Linux-x64-2.2/Samples/Bin/OpenNI2/Drivers/
Kompilacja Pythonowego modułu 'nite2' (wrappera do OpenNI2 + NiTE2)
$ sudo apt-get install python-dev libboost-all-dev $ git clone https://github.com/BrainTech/nite2-bindings $ cd nite2-bindings $ make