abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    17.5. 13:44 | Nová verze

    Byla vydána (𝕏) nová major verze 17 softwarového nástroje s webovým rozhraním umožňujícího spolupráci na zdrojových kódech GitLab (Wikipedie). Představení nových vlastností i s náhledy a videi v oficiálním oznámení.

    Ladislav Hagara | Komentářů: 0
    17.5. 12:22 | Komunita

    Sovereign Tech Fund, tj. program financování otevřeného softwaru německým ministerstvem hospodářství a ochrany klimatu, podpoří vývoj FFmpeg částkou 157 580 eur. V listopadu loňského roku podpořil GNOME částkou 1 milion eur.

    Ladislav Hagara | Komentářů: 0
    17.5. 01:55 | Komunita

    24. září 2024 budou zveřejněny zdrojové kódy přehrávače Winamp.

    Ladislav Hagara | Komentářů: 9
    16.5. 23:33 | Nová verze

    Google Chrome 125 byl prohlášen za stabilní. Nejnovější stabilní verze 125.0.6422.60 přináší řadu oprav a vylepšení (YouTube). Podrobný přehled v poznámkách k vydání. Opraveno bylo 9 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    16.5. 21:11 | Nová verze

    Textový editor Neovim byl vydán ve verzi 0.10 (𝕏). Přehled novinek v příspěvku na blogu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    16.5. 20:55 | Nová verze

    Byla vydána nová verze 6.3 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 13.0.15.

    Ladislav Hagara | Komentářů: 0
    16.5. 13:33 | IT novinky

    Dnes ve 12:00 byla spuštěna první aukce domén .CZ. Zatím největší zájem je o dro.cz, kachnicka.cz, octavie.cz, uvycepu.cz a vnady.cz [𝕏].

    Ladislav Hagara | Komentářů: 9
    16.5. 13:22 | Nová verze

    JackTrip byl vydán ve verzi 2.3.0. Jedná se o multiplatformní open source software umožňující hudebníkům z různých částí světa společné hraní. JackTrip lze instalovat také z Flathubu.

    Ladislav Hagara | Komentářů: 0
    16.5. 12:22 | Pozvánky

    Patnáctý ročník ne-konference jOpenSpace se koná 4. – 6. října 2024 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytváří všichni účastníci, se skládá z desetiminutových

    … více »
    Zdenek H. | Komentářů: 0
    16.5. 03:11 | Nová verze

    Program pro generování 3D lidských postav MakeHuman (Wikipedie, GitHub) byl vydán ve verzi 1.3.0. Hlavní novinkou je výběr tvaru těla (body shapes).

    Ladislav Hagara | Komentářů: 9
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (75%)
     (5%)
     (10%)
     (9%)
    Celkem 315 hlasů
     Komentářů: 16, poslední 14.5. 11:05
    Rozcestník

    Kinect pro Xbox 360 a GNU/Linux – Processing a SimpleOpenNI

    28. 11. 2012 | Ladislav Hagara | Návody | 7047×

    Pátý díl seriálu věnovanému snímacímu zařízení Kinect pro Xbox 360 a jeho využití v operačním systému GNU/Linux. V minulém dílu byl představen projekt OpenNI a knihovna stejného jména. V dnešním dílu to bude programovací jazyk a prostředí Processing a knihovna SimpleOpenNI přizpůsobující rozhraní knihovny OpenNI rozhraní Processingu.

    Obsah

    Programovací jazyk a prostředí Processing

    link

    Processing (Wikipedia) je svobodný programovací jazyk a současně vývojové prostředí. Projekt vznikl v roce 2001. U jeho zrodu stáli Benjamin Fry a Casey Reas, toho času studenti Massachusettského technologického institutu (MIT Media Lab). Cílem projektu bylo navrhnout a implementovat jednoduchý programovací jazyk, pomocí kterého by mohli neprogramátoři, především umělci a designéři, snadno a rychle vytvářet obrázky, vizualizace a animace. Nejenom umělci si Processing velmi rychle oblíbili. Rádi po něm sáhnou i opravdoví programátoři nebo učitelé, kteří jej používají při výuce programování. Processing vychází z  programovacího jazyka JAVA, má však jednodušší syntax. Samotný Processing je také naprogramován v jazyce JAVA. Jedná se tedy o multiplatformní software.

    Kinect pro Xbox 360 a GNU/Linux

    Pro Processing existuje celá řada rozšiřujících knihoven. Vlastnící Arduina pravděpodobně sáhnou po knihovně Arduino umožňující přistupovat k Arduinu z prostředí Processing. V Processingu lze vyvíjet také aplikace pro Android. Stačí sáhnout po knihovně Ketai.

    Instalace Processingu

    link

    Instalace programovacího jazyka a prostředí Processing je velice snadná. Stačí stáhnout balíček tgz a někam jej rozbalit. Není nutné ani instalovat Javu. Ta je obsažena v balíčku v adresáři java. Je-li Java v systému již nainstalována, lze adresář java smazat a vytvořit link java na systémovou Javu.

    Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux

    Aktuálně je Processing k dispozici ve stabilní verzi 1.5.1 a beta verzi 2.0b6. Beta verze je k dispozici jak pro 32bitové, tak pro 64bitové systémy. Stabilní verze je pouze 32bitová. Na 64bitových systémech proto může být nutné doinstalovat další balíčky. Například na 64bitové Fedoře 17 bylo nutné doinstalovat balíčky glibc.i686, libXext.i686, libXtst.i686 a mesa-libGL.i686.

    Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux

    .../processing-1.5.1/java/bin/java: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
    
    # yum install glibc.i686
    
    Exception in thread "main" java.lang.UnsatisfiedLinkError: /.../processing-1.5.1/java/lib/i386/xawt/libmawt.so: libXext.so.6: cannot open shared object file: No such file or directory
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
        at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1803)
    
    # yum install libXext.i686
    
    Exception in thread "main" java.lang.UnsatisfiedLinkError: /.../processing-1.5.1/java/lib/i386/xawt/libmawt.so: libXtst.so.6: cannot open shared object file: No such file or directory
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
    
    # yum install libXtst.i686
    
    Exception in thread "Animation Thread" java.lang.UnsatisfiedLinkError: /.../processing-1.5.1/modes/java/libraries/opengl/library/linux32/libjogl.so: libGL.so.1: cannot open shared object file: No such file or directory
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
    
    # yum install mesa-libGL.i686
    

    Začínáme s Processingem

    link

    Nápověda k ovládání integrovaného prostředí, tutoriály (Getting Started) a příklady jsou k dispozici na webových stránkách Processingu nebo také lokálně v rozbaleném tgz balíčku. Příklady lze díky Processing.js spouštět přímo na webové stránce.

    Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux

    Nejjednodušeji lze Processing spustit z příkazového řádku pomocí ./processing. Samozřejmě lze k jeho spuštění využít také možnosti grafických uživatelských prostředí a vytvořit si položku v menu nebo ikonu na ploše. Po naběhnutí vývojového prostředí lze příklady z webových stránek kopírovat do okna editoru a spouštět je kliknutím na tlačítko „Run“. Vyzkoušet lze také lokální soubory s příklady. Programy pro Processing mají koncovku .pde.

    Knihovna SimpleOpenNI

    link

    Knihovna SimpleOpenNI, známa také jako simple-openni, přináší do prostředí Processingu podporu Kinectu. Jedná se o obal (wrapper) nad knihovnou OpenNI přizpůsobující rozhraní knihovny OpenNI (C) rozhraní Processingu (Java). Processing je tak rozšířen o funkce z knihovny OpenNI.

    Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux

    Je-li s knihovnou OpenNI nainstalován také binární blob NITE, lze v Processingu využívat rovněž funkce pro rozpoznávání polohy těla.

    Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux

    Instalace knihovny SimpleOpenNI

    Knihovnu SimpleOpenNI, stejně jako jiné knihovny rozšiřující vlastnosti Processingu, stačí stáhnout (soubor SimpleOpenNI-0.27.zip) a rozbalit do adresáře sketchbook/libraries. Problém může být s nainstalovanou verzí knihovny OpenNI. Například ve Fedoře 17 jsou sice balíčky s OpenNI knihovnou k dispozici, aktuální verze knihovny SimpleOpenNI s nimi ale není kompatibilní. Knihovna SimpleOpenNI verze 0.27 potřebuje libXnVNite_1_5_2.so, k dispozici je ale pouze libXnVNite_1_4_1.so.

    Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux

    Can't load SimpleOpenNI library (SimpleOpenNI32) : java.lang.UnsatisfiedLinkError: .../sketchbook/libraries/SimpleOpenNI/library/libSimpleOpenNI32.so: libXnVNite_1_5_2.so: cannot open shared object file: No such file or directory
    Verify if you installed SimpleOpenNI correctly.
    
    $ ldd …/sketchbook/libraries/SimpleOpenNI/library/libSimpleOpenNI32.so
        linux-gate.so.1 =>  (0xf77dc000)
        libOpenNI.so => /lib/libOpenNI.so (0xf769d000)
        libXnVNite_1_5_2.so => not found
        libstdc++.so.6 => /lib/libstdc++.so.6 (0xf75b4000)
        libm.so.6 => /lib/libm.so.6 (0xf7588000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xf756b000)
        libc.so.6 => /lib/libc.so.6 (0xf73b9000)
        libusb-1.0.so.0 => /lib/libusb-1.0.so.0 (0xf73a9000)
        libdl.so.2 => /lib/libdl.so.2 (0xf73a4000)
        libpthread.so.0 => /lib/libpthread.so.0 (0xf738a000)
        librt.so.1 => /lib/librt.so.1 (0xf7380000)
        libtinyxml.so.0 => /lib/libtinyxml.so.0 (0xf736b000)
        /lib/ld-linux.so.2 (0xf77dd000)
    

    Nejjednodušším řešením je oficiální balíčky s knihovnou OpenNI odinstalovat, stáhnout zip soubor s kompatibilní verzí knihovny ze stránek SimpleOpenNI (soubor OpenNI_NITE_Installer-Linux32-0.27.zip nebo OpenNI_NITE_Installer-Linux64-0.27.zip), zip soubor rozbalit a knihovnu OpenNI postupně nainstalovat spuštěním sudo ./install.sh v adresářích OpenNI-Bin-Dev-Linux, NITE-Bin-Dev-Linux a kinect. V případě použití zařízení ASUS Xtion je nutné místo souborů v adresáři kinect nainstalovat soubory z adresáře Sensor-Bin-Linux.

    V případě instalace 32bitové verze Processingu je nutné nainstalovat také 32bitovou verzi knihovny OpenNI. V případě použití 64bitové knihovny lze získat pouze chybovou hlášku:

    Can't load SimpleOpenNI library (SimpleOpenNI32) : java.lang.UnsatisfiedLinkError: .../sketchbook/libraries/SimpleOpenNI/library/libSimpleOpenNI32.so: libOpenNI.so: wrong ELF class: ELFCLASS64
    Verify if you installed SimpleOpenNI correctly.
    

    Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux

    Diskuse ke knihovně SimpleOpenNI a řešení souvisejících problémů probíhá v diskusní skupině simple-openni-discuss.

    Příklady aplikací v Processingu využívajících SimpleOpenNI

    link

    KinectMagicKnight

    link

    Rozšířená realita pomocí Processingu, knihovny SimpleOpenNI a Kinectu. Aplikace KinectMagicKnight sleduje postavu před Kinectem a do rukou ji vkládá světelný štít a meč. Vzpažením obou rukou lze štít a meč vyměnit za luk a šíp. Natažením ruky lze šíp vystřelit.

    Na webové stránce KinectMagicKnight je k dispozici zdrojový kód aplikace (KinectMagicKnight.pde). Ten stačí stáhnout a otevřít v Processingu. Processing vytvoří adresář KinectMagicKnight a stažený .pde soubor do něj přesune. Pak už stačí pouze kliknout na tlačítku „Run“.

    Aplikace KinectMagicKnight potřebuje knihovnu fullscreen (FullScreen API). Není-li nainstalována, opět ji stačí pouze stáhnout a rozbalit do adresáře sketchbook/libraries. Pro přepnutí do celoobrazovkového módu je určena kombinace kláves CTRL+F. Zpátky se lze dostat klávesou ESC.

    Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux

    Kinect AR in Processing

    link

    Aplikace Kinect AR in Processing je další ukázkou rozšířené reality. V prostoru před Kinectem se objeví otáčející se levitující krychle. Kolem krychle se lze procházet, případně to lze vzít i přímo přes ni.

    Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux

    Kinetic Space

    link

    Příklad složitější aplikace. V aplikaci Kinetic Space jsou předdefinovány pohyby a gesta, které se uživatel snaží napodobit. Pohyby a gesta lze pomocí aplikace také nacvičovat. Pokud je zobrazená postava zelená, pohyb nebo gesto je v pořádku. Červená barva upozorňuje na části těla, na které by se uživatel měl zaměřit. Pohyby a gesta lze také nahrávat.

    Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux Kinect pro Xbox 360 a GNU/Linux

    Příště

    link

    Příští díl bude věnován knihovnám GFreenect a Skeltrack. K rozpoznávání polohy těla už není nutný binární blob.

           

    Hodnocení: 100 %

            špatnédobré        

    Nástroje: Tisk bez diskuse

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    28.11.2012 09:52 clovek1
    Rozbalit Rozbalit vše Re: Kinect pro Xbox 360 a GNU/Linux – Processing a SimpleOpenNI
    prvni :)
    28.11.2012 11:03 ememe
    Rozbalit Rozbalit vše Re: Kinect pro Xbox 360 a GNU/Linux – Processing a SimpleOpenNI
    Pan trapáček s chudáčkova.
    28.11.2012 11:29 jehovista
    Rozbalit Rozbalit vše Re: Kinect pro Xbox 360 a GNU/Linux – Processing a SimpleOpenNI
    Muzes si za to sam. Prvni se nekrmi
    28.11.2012 15:32 mankind_boost
    Rozbalit Rozbalit vše Re: Kinect pro Xbox 360 a GNU/Linux – Processing a SimpleOpenNI
    Pravda, první se banuje.
    28.11.2012 20:02 Míra
    Rozbalit Rozbalit vše Re: Kinect pro Xbox 360 a GNU/Linux – Processing a SimpleOpenNI
    Processing je parádní, ale je škoda že některé podpůrné knihovny (G4P) mají slabou dokomunetaci :(.

    PS: S tím mečem úplně jak Jedi, mají ho i v červené? :D
    2.12.2012 23:21 Ladislav Hagara | skóre: 102 | blog: Ride the Raven
    Rozbalit Rozbalit vše Re: Kinect pro Xbox 360 a GNU/Linux – Processing a SimpleOpenNI
    Mají ho v libovolné RGB barvě. :-)
    Pro červenou stačí ve funkci drawSword změnit stroke(0, 255, 255, alpha) na stroke(255, 0, 0, alpha).
    29.11.2012 13:54 Kuk!
    Rozbalit Rozbalit vše Re: Kinect pro Xbox 360 a GNU/Linux – Processing a SimpleOpenNI
    Pekny clanek, muzu se zeptat, jestli to nejak cele funguju taky s Asus Xtion?
    2.12.2012 23:29 Ladislav Hagara | skóre: 102 | blog: Ride the Raven
    Rozbalit Rozbalit vše Re: Kinect pro Xbox 360 a GNU/Linux – Processing a SimpleOpenNI
    Funguje.
    Věta z článku: V případě použití zařízení ASUS Xtion je nutné místo souborů v adresáři kinect nainstalovat soubory z adresáře Sensor-Bin-Linux.
    4.12.2012 09:31 s0dd
    Rozbalit Rozbalit vše kinect fighter
    Tak to je brutalni, uz se nemuzu dockat, az se budu ucit kung-fu pomoci kinect-space ;)
    25.6.2017 12:06 michal
    Rozbalit Rozbalit vše Re: Kinect pro Xbox 360 a GNU/Linux – Processing a SimpleOpenNI
    Potrebuji nakopnout, jsem ve fazi kdy vidim svoji kostru v aplikaci Sample-Players (doinstaloval jsem NITE), a ted bych to potreboval propojit s blendrem, nemate nekdo nejaky napad? zkousel jsem googlit ale obevil jsem navody jen pro win.

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.