abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

    8.11. 00:33 | Nová verze

    Byla vydána OpenIndiana 2026.10. Unixový operační systém OpenIndiana (Wikipedie) vychází z OpenSolarisu (Wikipedie).

    Ladislav Hagara | Komentářů: 18
    8.11. 00:22 | IT novinky

    Americký výrobce polovodičů onsemi (ON Semiconductor) zrušil plány na rozšíření výroby v rožnovském závodě v Česku za dvě miliardy dolarů (podle aktuálního kurzu zhruba 43,5 mld. Kč). Důvodem je vývoj na trhu.

    Ladislav Hagara | Komentářů: 37
    7.11. 13:00 | Bezpečnostní upozornění
    Nové vydání zlib opravuje několik problémů při kompresi a dekompresi dat, přetečení bufferů, čtení mimo vyhrazenou paměť, únik neinicializovaných dat. Zvlášť významné jsou chyby v inflateGetDictionary(), inflateSync() a gzwrite(), které mohou způsobit poškození paměti. Vysoká relevance - zlib používá řada systémových i aplikačních komponent.
    vencour | Komentářů: 5
    7.11. 12:25 | Bezpečnostní upozornění
    Digicert hlásí neoprávněné čtení archivních zákaznických údajů. Došlo k němu po migraci z února 2025, po níž se interní systém, dříve dostupný jen přes VPN, stal přístupným z internetu. Chyba v oprávněních umožnila nově vytvořeným účtům číst archivní záznamy. K přístupu k datům mělo dojít mezi 27. červnem a 2. červencem 2026. DigiCert neoprávněné čtení potvrdil až 19. října 2026. Problém zpočátku vyhodnotil jako tvorbu účtů, ne jako … více »
    vencour | Komentářů: 5
    7.11. 04:44 | Pozvánky

    O víkendu probíhá na FIT VUT v Brně konference OpenAlt 2026 o otevřeném softwaru a datech, IT bezpečnosti, DIY a IoT. Na programu je spousta zajímavých přednášek. Pokud jste v Brně, stavte se. Vstup zdarma. Přednášky lze sledovat i online na VHSky a YouTube.

    Ladislav Hagara | Komentářů: 2
    7.11. 02:11 | IT novinky

    Qualcomm uzavřel víceletou dohodu se SpaceX. Bude dodávat rádiové technologie, baseband jednotky a software pro plánovanou pozemní 5G síť Starlink Mobile. Výstavba má zahrnovat desítky tisíc základnových stanic v USA. Zahájení nasazování se očekává v roce 2027. Qualcomm dohodu označuje za svůj dosud největší 5G kontrakt.

    vencour | Komentářů: 2
    7.11. 02:00 | IT novinky

    Google rozšířil Cloud Vulnerability Reward Program. Nově nabízí odměnu až 250 tisíc dolarů za vysoce závažné architektonické bezpečnostní chyby označované jako Root-in-Cloud.

    vencour | Komentářů: 1
    6.11. 12:22 | IT novinky

    V březnu byla oznámena spolupráce GrapheneOS s Motorolou. Nejnovější vlajka Motorola Signature 27 je první Motorola s oficiální podporou GrapheneOS. GrapheneOS (Wikpedie) je varianta Androidu zaměřující se na bezpečnost a soukromí.

    Ladislav Hagara | Komentářů: 8
    6.11. 04:55 | Nová verze

    Omarchy (Wikipedie) je linuxová distribuce s dlaždicovým správcem oken Hyprland. Založena je na Arch Linuxu. Vydána byla v nové verzi 4.5.0. Nově také pro Apple Silicon, konkrétně pro M1/M2/M3/Neo MacBooky.

    Ladislav Hagara | Komentářů: 4
    6.11. 03:22 | Nová verze

    Byla vydána nová stabilní verze 8.3 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 156 s bezpečnostními opravami z Chromia 157. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 1
    Které desktopové prostředí na Linuxu používáte?
     (8%)
     (7%)
     (4%)
     (21%)
     (30%)
     (9%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 3047 hlasů
     Komentářů: 36, poslední 11.11. 22:38
    Rozcestník

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

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

    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: 108 | 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: 108 | 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ákno • Nahoru

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