Documente Academic
Documente Profesional
Documente Cultură
FACULTATEA DE INGINERIE
DEPARTAMENTUL DE CALCULATOARE I INGINERIE ELECTRIC
PROIECT DE DIPLOM
- Sibiu, 2013
UNIVERSITATEA LUCIAN BLAGA DIN SIBIU
FACULTATEA DE INGINERIE
DEPARTAMENTUL DE CALCULATOARE I INGINERIE ELECTRIC
GESTURES
RECOGNITION:APLICAIE
DEMONSTRATIV
Cuprins
Cuprins.............................................................................................................................................3
2
List de figuri...................................................................................................................................5
List de tabele..................................................................................................................................6
Prezentarea temei.............................................................................................................................7
1.
Despre Kinect..........................................................................................................................8
1.1
1.2
Detalii hardware.............................................................................................................10
1.2.1
1.2.2
Microfoanele Kinect-ului.........................................................................................17
1.2.3
1.3
Detalii software..............................................................................................................22
1.3.1
Creierul....................................................................................................................22
1.3.2
1.3.3
1.4
Limitri..........................................................................................................................26
1.4.1
Lumina solar..........................................................................................................27
1.4.2
1.4.3
Rezoluie limitat.....................................................................................................27
1.4.4
1.4.5
1.4.6
1.4.7
1.4.8
1.5
1.5.1
Caracteristici............................................................................................................31
1.5.2
Preuri......................................................................................................................33
1.5.3
Liceniere.................................................................................................................33
1.5.4
Concuzii...................................................................................................................34
1.6
2.
Competitori....................................................................................................................34
Dezvoltarea aplicaiei............................................................................................................36
2.1
2.1.1
2.1.2
2.1.3
2.1.4
2.2
2.2.1
2.3
2.3.1
Mediul de programare....................................................................................................41
Visul studio 2012.....................................................................................................41
2.4
Limbaje de programare..................................................................................................42
2.5
Descrierea proiectului....................................................................................................45
2.5.1
2.5.2
2.5.3
2.5.4
2.5.5
3.
4.
Concluzii................................................................................................................................82
5.
Dezvoltri ulterioare..............................................................................................................83
Bibliografie....................................................................................................................................84
List de figuri
Figura 1:Senzorul Kinect.................................................................................................................5
List de tabele
Tabel 1:Specificaiile Kinect-ului..................................................................................................19
Tabel 2:Valorile statusurilor pe care le poate lua Kinect-ul i explcaiile acestora.......................57
Tabel 3: Parametri funciei TransformSmoothParameters.............................................................65
Prezentarea temei
Obiectivul pincipal al acestui proiect a fost realizare unei aplicii care s
demonsteze o parte din multele faciliti pe care utilizarea unui senzor Kinect
6
1.Despre Kinect
Project Natal a fost redenumit n Kinect i urma s fie lansat oficial la nceputul lunii noiembrie a
aceluiai an.
Acestea fiind spuse, Kinect este un dispozitiv periferic dezvoltat de Microsoft, care
detecteaz micarea i permite utilizatorilor s interacioneze cu consola XBOX 360, precum i
cu orice Windows PC (odat cu lansarea versiunii oficiale pentru Windows [1]) folosind, cum am
menionat anterior, gesturi ale corpului i comenzi vocale. Dei scopul iniial a fost de a mbog i
experiena jocurilor pe consola XBOX 360, n scurt timp sfera de utilizare pentru Kinect s-a
extins considerabil. n prezent, dispozitivul e folosit n domenii precum medicina, industria de
advertising sau robotica, mergnd cu mult mai departe dect funcia iniial de divertisment.
Acesta a fost lansat mpreun cu Xbox 360 n noiembrie 2010 i a avut un mare succes cu
vnzari de peste un milion de produse n zece zile.
Chiar dac n prim faz, Kinect era destinat doar utilizatorilor de XBOX 360, la cteva
sptmni de la lansare au nceput s apar diferite proiecte sub forma unor hack-uri. Controlul
mouse-ului n Windows, cntatul la o chitar digital, generarea 3D n timp real a unei camere de
apartament, mainue teleghidate ce ocoleau singure obstacole plasate n faa lor au fost doar
cteva din zecile de proiecte pe baz de Kinect construite de pasionai. Dup scurt timp au aprut
i SDK-uri (Software Development Kit) Open Source pentru ca oricine s poat s dezvolte proiecte cu noua tehnologie de la Microsoft.
Pentru a avea acces la datele provenite de la senzorul Kinect, prin intermediul softurilor
non-comerciale, comunicaia prin USB trebuie s fie reserved-engineerde1.
Folosind datele furnizate de ctre un analizator USB hacker-ul spaniol, Hctor Martn, a fost
primul care a accesat i afiat Kinect-ul RGB i datele de adncime pe un PC, folosind sistemul
de operare Linux, mpreuna cu bibliotecile OpenGL i OpenCV [2].
Drept rspuns, n iunie 2011, Microsoft a lansat primul Kinect-SDK oficial, dar fr licen de
comercializare. Acesta ne permite s scriem aplicaii pentru PC care s foloseasc senzorii de pe
Kinect. Ce trebuie subliniat este faptul c acest SDK se poate folosi doar pentru aplica ii noncomerciale n cazul n care avei achiziionat un Kinect pentru XBOX i nu pentru PC .
Versiunea final, de asemenea i comercial, a fost lansat pe 1 februarie 2012, mpreun cu o
nou ediie de Kinect, numit Kinect for Windows. Noul dispozitiv e asemntor cu edi ia pen tru
XBOX, cea mai notabil ediie fiind suportul pentru Near-Mode, un mod de func ionare n care
1 Ingineria invers (n englez reverse engineering) este procesul de descoperire a principiilor de funcionare a unui dispozitiv sau
sistem prin analiza structurii, funciei i operaiilor acestuia. De obicei, ingineria invers implic dezasamblarea sau descompunerea
sistemului sau dispozitivului respectiv i analizarea n detaliu a func ionrii sale, cu scopul de a realiza un nou dispozitiv sau sistem
similar, care nu copiaz nimic din cel original.
utilizatorul se poate apropia foarte mult de camer, iar aceasta poate detecta mi cri mult mai
fine, cum ar fi micarea degetelor.
2 Device sau terminal n vocabularul uzual IT reprezint o noiune comun care se refer la
componente Hardware i reprezint instrumente de lucru utilizate pentru afiarea, introducerea i
transmiterea de date ntr-un sistem informatic.
3 FPS frames per second sau cadre pe secunda
10
Aceasta este o diagram a Prime Sense care explic cum funcioneaz platforma lor de referin ,
Kinect-ul fiind prima ( i singura ) implementare pe aceast platform.
5 Pixelul este un element component, de obicei foarte mic, al imaginilor grafice (fotografii,
desene etc.) digitale. Cuvntul provine din englez de la PICture ELements (elemente de
imagine). Se prescurteaz prin "px", uneori i cu "p". Un multiplu des ntrebuinat este 1 Mpx =
1 megapixel = 1 milion pixeli.
12
13
Aparatul poate urmri ase persoane simultan, dar doar la dou din acestea se poate analiza
micarea.Cu toate acestea Prime Sense afirm c aceasta poate s vad, dar nu s proceseze, ati
juctori cte persoane sunt prezente n cmpul vizual al camerei.
Micarea analizat se obine cu ajutorul scheletului pe care software-ul Kinectului l ofer.
Un numr de puncte sunt plasate asupra corpului i sunt folosite pentru a recunoate anumite
micri fcute de utilizator. Aceste puncte, sau ncheieturi, sunt: cap, gt, umr stng/drept, cot
stng/drept, ncheietura minii stnga/dreapta, mn stnga/dreapta, coloan, pelvis, old
stng/drept, genuchi stng/drept, glezn stnga/dreapta, laba piciorului stnga/dreapta.
Urmrirea acestor puncte pe corp e posibil prin intermediul proiectorului de unde infrarou.
Acesta transmite undele i msoar timpul lor de ntoarcere, dup ce au lovit unele obstacole
fizice din mediul nconjurtor ( ca n Figura 7 ).
14
Figura 7
Senzorul de adncime
Principiul e asemntor cu modul n care funcioneaz sonarul: dac putem detecta timpul
necesar undelor pentru a se ntoarce la senzorul infrarou, putem afla i distana la care se afl
corpurile de care acestea s-au ciocnit. Toate aceste distane se pot stoca i n final transcrie ntr-o
imagine sau un fel de hart a cmpului vizual al camerei. Fiecarui punct de pe aceast hart i
este ataat un indice de adncime n spaiu, iar toate aceste puncte pot fi transmise pentru o
procesare aprofundat, unde, prin intermediul unor algoritmi, se pot detecta anumite forme sau
obiecte, cum ar fi corpul uman, mpreun cu poziia unor puncte importante pe acesta (cap,
mini, n principiu, exact punctele pe care le-am prezentat anterior).
Pe lng acuratee i vitez de reacie, tehnologia infrarou aduce i un avantaj n plus:
rezolvarea problemei luminii ambientale. Pentru c senzorul nu e proiectat s capteze lumina
vizibil, Kinect poate fi folosit i n ncperi unde luminozitatea e foarte redus, dar cu toate
acestea se recomand o surs de lumin fluorescent sau generat de leduri. Ar fi ideal s se evite
proiectarea luminii direct ctre device sau ctre lentilele senzorului. Intr-un mediu nchis toate
luminile vor fi filtrate de lumina inflaroie. Pentru a evita interferen ele de iluminare ar fi de
preferat s se evite intersecia cmpurilor vizuale ale lentilelor senzorului [6].
De ndata ce Kinect-ul are un senzor IR, nu va funciona n lumina solara.n plus, suprafeele
reflectorite i metalice sunt responsabile pentru o mulime de ocluziuni i pot genera informaii
ambigue.
1.2.1.1.1
Cum
funcioneaz
senzorul
triangulaie stereo
15
de
profunzime
Kinect
Acest lucru, explic patternul/modelul pseudo-aleatoral specificaiilor. Modelul Pseudoaleator efectueaz potrivirea de specificaii a dou imagini mult mai uoar, deoarece fiecare
spec are doar diferene locale. Putem denumi senzorul
de
modificam definita. Lumina structurata, de obicei, proiecteaz o gril de linii regulate n loc de
puncte pseudoaleatoare [7].
Figura 9:Cu cifra 1 sunt reprezentate cele patru microfoane din interiorul senzorului Kinect
Dupa cum s-a menionat mai sus sunt n total patru microfoane care se afl n partea de jos a
device-ului, trei dintre acestea se afl pe partea dreapt iar unul pe partea stng acest lucru fiind
prezentat n Figura 9.
17
Kinect-ul are o serie de microfoane care sunt capabile s filtreze sunetele, mai exact pot s
fac diferena ntre vocile care sunt n faa senzorului i suntetele care se aud pe fundal. Acest
lucru este folositor atunci cnd se dorete s se vorbeasc cu Kinect-ul sau cnd i este adresat o
comand vocal. n continuare se va prezenta cum este realizat aceast sarcin dificil.
Printr-o serie de microfoane se nelege un microfon urmat de un alt microfon, toate acestea
fiind situate dealungul unei suprafee.Fiecare microfon de pe suprafa nregistreaz sunetul care
provine din toate direciile.
Aa cum este i logic, dac s-ar pune microfoane n diferite locuri, sunetul va ajunge la
fiecare microfon n diferite momente de timp, n acest caz se poate calcula din ce zon provine
sursa sunetului dac se ia n calcul diferena dintre semnalul pe care l prime te microfonul i
viteza sunetului n aer. Dar nu numai c se poate calcula dac sunetul provine dintr-o parte sau
din alta, de asemenea, poate fi determinat cu aproximaie poziia sa. Dac se dorete s se
neleag cum este calculat acest lucru, se poate citi aceast lucrare stiin ific dar aceasta
necestita un nivel ridicat de cunotiine de matematic i fizic [8] . Acest set de microfoane
simuleaz comportamentul urechii umane .Dup cum se tie, urechiile se afl de fiecare parte a
capului iar acest lucru servete pentru a ne ajuta s auzim sunetul.Cnd urechea recep ioneaz un
sunet, creierul calculeaz aproximativ diferena dintre faza undei sonore, care ajunge la fiecare
ureche, i locul de unde provine sunetul.
Dup ce poziia sunetului este calculat, un algoritm complex combin sunetul provenit de la
fiecare microfon n parte iar dup ce acest lucru a fost realizat se va obine un semnal care va
conine sunetul provenit de la un con imaginar, care ncepe n aparat iar mai apoi este extins n
exterior.
18
De asemenea, se face o filtrare care terge tot ce iese nafara frecven ei vocii umane
( ntre 80 si 1100 Hz6) i crescnd volumul acesteia ntr-un aa mod nct zgomotul ambiental
este filtrat iar vocea este amplificat.
n cazul n care acest lucru nu este ndeajuns ca sunetul s fie filtrat, microfonul terge ecourile,
rezultate prin ciocnirea vocii cu mobila sau pereii, atunci cnd se calibreaz n concordan cu
ecoul produs. Chiar i cu acestea, n cazul n care se va modifica poziia mobilierului,
microfoanele trebuiesc calibrate din nou. Aceast calibrare poate servi ca model pentru
recunoaterea vocal, deoarece aceasta trebuie s aib o prob cu vocea noastr pentru ca mai
apoi s o poat i recunoate.
Kinect-ul are o serie de procesoare digitale a semnalului care proceseaz algoritmi
compleci necesari executrii acestor sarcini. Dac consola video s-ar ocupa de aceste procesri,
o mulime de resurse vor fi consumate i nu ar mai exista ndeajuns de mult timp de procesare
pentru ca micrile din joc s se realizeze.
Chiar i cu toate aceste filtrari, sunetul nu va avea aceeai calitate ca atunci cnd se
vorbeste n microfon de la doar civa centrimetru fa de aceste, dar desigur aceste ajustari sunt
ultile pentru a se asigura un confort mai bun in timpul jocului [9].
Informaia audio i video este meninut n mod individual de ctre cipul PS1080.
Ambele informaii sunt accesibile prin intermediul portului USB. Acesta ofer putere exclusiv
pentru unitatea Prime Sense, dar cum a fost menionat mai sus Kinect-ul are nevoie de energie
supliemntar pentru celelalte servicii pe care el le ofer. [11]
Transferul de informaii i conexiunea cu XBOX 360 (sau PC) se face prin USB, iar
alimentarea se face de la priz. Noile modele XBOX 360 Slim, lansate n 2010, includ un
adaptor special care elimin nevoia de alimentare de la priz.
Conectarea Kinect-ului la PC se face prin USB i necesit instalare unor drivere ce se pot
obine de pe internet. Dac se dorete instalarea unui SDK, fie Open Source sau cel oficial,
driverele se instaleaz odat cu ele.
20
n timp ce camera poate urmri pn la ase persoane , poate s manevreze doar doi
juctori activi redirecionndu-i pe ceilali ctre roluri de sprijin, n cel mai bun caz, sau ctre
spectatori inactivi, n cel mai ru caz .Cererea de a fi urmrie ase persoane de-o dat prea un
vis, dar cum consola Wii putea sa urmreasc patru persoane n acelai timp, a fost un drum scurt
pn ce s-a ajuns la uimitoarea performan n care intreaga familie se poate juca de-o dat, adic
ase persoane pot fi urmrite n acelai timp i n acelai joc [12].
Specificaiile Kinect-ului sunt prezentate mai jos:
1. Senzorul
- Lentil colorate i cu analiz a adncimii;
- Un set de microfoane;
- Motor pentru ajustarea nclinaiei senzorului;
- Compatibil cu Xboxul 360 i PC-ul;
2. Cmpul de vizualizare
- Cmpul de vizualizare pe orizontl : 57 de grade;
- Cmp de vizualizare pe vertical : 43 de grade;
- Interval de nclinare fizic : 27 de grade;
- Distana pna i de la care poate vedea : 1,2m 3,5m (lucru detaliat n Figura 10 );
m2
m2
,poziia ideala
a jucatorului fiind la 2 m distan fa de camer (aceasta distan este influen at i de numrul de juctori) [13]
21
Vertical : 43 de grade
Vertical : 27 de grade
Tabel 1:Specificaiile Kinect-ului
1.3.1 Creierul
Secretul Kinect-ului este de fapt creierul acestuia. Cu ajutorul datelor stocate Kinect-ul
este ndeajuns de inteligent ncat s analizeze ceea ce vede i s asocieze acest lucru cu o colecie
de structuri scheletice, cu ajutorul crora va interpreta micarea. Odat ce creierul are ndeajuns
de multe date referitoare la prile corpului, output-ul va fi format din aceste date de referin
stocate ntr-o form simpl a unui avatar 3D. Dincolo de determinarea valoriilor micrii
juctorului, cnd jocul ruleaz Kinect-ul mai trebuie s determine distana dintre diferitele
puncte de pe corpul uman (spre exemplu: mna, cap , picior i multe altele). Pentru a face acest
lucru acesta folosete o serie de senzori i analizeaz toate aceste date de 30 de ori pe secund.
22
calculatorului nimic util despre articulaii ( joints) i membre, aa c programatorii sunt nevoi i
s foloseasc datele primite de la senzor i s programeze astfel nct s eticheteze fiecare parte
din corp ( n fiecare imagine) .
Microsoft utilizeaz, de asemenea, scene de capur a micrii, care furnizeaz date
similare, dar fr toat munca laborioas de codificare manual (de cnd sistemele folosesc
senzori care marcheaz prile individuale ale corpului ). i Microsoft deine un mini studio mocap8, unde personalul poate face o nregistrare rapid atunci cnd este nevoie de o nou poriune
de date.
Toate aceste imagini despre care s-a discutat mai sus cuprind zeci de terabytes de
informaii. Ferma de servere de la Microsoft examineaz acest set de date foarte mare lsnd ca
mai apoi creierul, pe baza algoritmilor implementai, s execute probabilitiile i statisticile
referitoare la forma uman. Odat ce creierul a terminat de nv at, el mpreun cu statisticile
generate de ctre acesta se asambleaz n sistemul Natal.
8 mo-cap- Motion capture este procesul de nregistrare a micrii unor obiecte sau persoane.
24
Screenshot-ul de mai sus explica ce se ntmpl n momentul n care creierul vede toate aceste
aciuni (imaginile diferite reprezint stagii diferite ale procesului de calcul Natal ). n continuare
vor fi prezentai aceti pai de calcul:
1) n timp ce o persoan st n faa camerei, creierul msoar distana dintre diferite
puncte de pe corp. n imaginea din partea stnga, punctele reprezint ceea ce
vede, un aa numit nor de puncte reprezentnd o suprafaa 3D. Scheletul
desenat n imaginea stng este o simpl presupunere rudimentar. Imaginea din
partea de sus repezint imaginea perceput de ctre camera color, care poate fi
folosit ca un webcam.
2) In acest pas creierul va face legtura dintre ceea ce vede i prile corpului. Se va
baza pe experiena pe care a nmagazinat-o pn n acest pas (mai exact pe baza
experienei descris mai sus). n funcie ct de asemntoare este poziia curent,
n care se afl persoana din faa camerei, cu cea de dinainte. Natal poate s fie mai
mult sau mai puin confuz n alegerea sa. n imaginea reprezentnd o persoan n
codul de culori ( imaginea mijloc jos ), ntunericul , luminozitatea i mrimea
diferit a ptratelor reprezint ct de sigur este Natal n alegerea sa . Spre
exemplu, cele trei ptrate roi mari indic faptul c este foarte probabil ca acele
pri ale corpului s reprezinte umrul stng, cotul stng i genunchiul
stng, cu ct pixeli devin mai mici i mai sczui n intensitatea culorii, cum este
cazul pixelului cenuiu de lng mini, indic faptul ca Natal d ce are mai bun
din el pentru a alege corect dar nu este foarte sigur de alegere.
25
1.1.4 Limitri
Cu toate c abordarea lui Shatton [15] ar pre a fi favorabil, ambele pri, hardware i
software, impun o serie de limitri. Cu toate c aceste limitri pot fi nesemnificative atunci cnd
senzorul este folosit ca un controler pentru jocuri, pot fi vitale atunci cnd spre exemplu senzorul
este folosit n robotic . Limitriile majore sunt urmtoarele:
1. Nu funcioneaz n lumina solar (aceasta fiind o limitare hardware), dup cum a
fost menionat mai sus;
2. Suprafeele reflectorizante i cele transparente nu sunt detectate corespunztor;
3. Rezoluia limiteaz gesturile fine, cum ar fi gesturile facute din degete, de la o
distan mai mare (aceasta fiind tot o limitare hardware);
4. O serie de obiecte sunt simplificate sau nu sunt detectate ( limitare hardware sau
firmware );
5. Se presupune c senzorul Kinect este imobil;
6. Iniializarea utilizatorului necesit timp ( limitare software);
26
7. Etichetele care reprezinta utilizatorul pot comuta ntre cadre atunci cnd Kinect-ul
este mutat ( limitare software );
8. Detalii legate de mbrcminte.
27
Kinect-ul [17], are probleme atunci cnd detecteaz anumite obiecte. Acest lucru poate fi
vzut atunci cnd se observ un obiect format din 10 scri care au 10 mm nl ime i 10 mm
adncime. Dup cum este artat n Figura 9, anumite obiecte devin netezite cnd sunt observate
de ctre Kinect, chiar de la o distan destul de mic. Pe lng acestea, obiectele precum prul
sunt adesea prea mici ( au o granulaie prea mic ) pentru a fi descoperite de ctre Kinect.
Figura 15: Anumite obiecte devin netezite cnd sunt observate de ctre Kinect,
chiar i de la o distan destul de mica [17]
pe o
platform mobil, iar n acest caz problema trebuie tratat n mod special pentru ca senzorul s
poate fi folosit n acest fel.
n Figura 10 sunt prezentai mai muli utilizatori care sunt detectai de ctre senzoul
Kinect ataaii unei platforme mobile. Este de reinut faptul c silueta corect identificat,
utilizatorul verde, este foarte precis.
28
Figura 16:Mai muli utilizatori fali sunt detectai, acetia sunt marcai cu culoare dup standardele NITE middleware, cnd
Kinect-ul este n micare.Rspunsul corect ar fi doar silueta verde
29
Figura 17: n aceast figur sunt reprezentate trei cadre consecutive n care utilizatorul este marcat n fiecare etichet cu o
culoare (n cadrul 1 este marcat cu rou ), n cadrul 2 etichetele utilizatorului sunt pierdute ca mai apoi n cadrul 3 utilizatorul
va s fie redescoperit, dar acesta va fi marcat cu o etichet gresit ( reprezentat cu culoare albastr)
Aceste incoerene n etichetare cauzeaz probleme atunci cnd un utilizator este urmrit pe
parcursul mai multor cadre, i atunci cnd se face comparaia dintre un cadru i cadrul urmtor.
Dac aceat comutare a utilizatorului este facut n timpul n care se execut un gest ( gesture ),
atunci cnd se va face recunoaterea gestului intrare poate fi interpretat ca fiind a doi utlizatori
diferii, i nu se va putea face legtura dintre gestul efectuat de ctre primul utilizator i cel
efectuat de ctre al doilea utilizator. Prin urmare, aceast limitare trebuie mbuntit astfel nct
observarea s se execute fr erori n cazul n care se folosete o platform mobil.
30
n continuare vor fi comparate cele dou Kinect-uri, respectiv cel de Windows i cel de
Xbox. Dei par la fel exist o multitudine de diferene ntre acestea.
1.1.1 Caracteristici
Kinect pentru Windows ofer mai multe caracteristici care nu sunt activate atunci cnd se
utilizeaz un Kinect pentru Xbox 360.
Printre acestea se numr:
31
Pentru SDK ul 1.0, modul apropiat poate detecta doar 2 obiecte. Urmrirea scheletului nu
este disponibil n modul apropiat .Cu toate acestea urmrirea scheletului este posibil n
versiunile mai recente i anume SDK 1,6 i versiunile mai noi. Acest SDK ofer posibilitatea de
a reunoate partea superiaor a corpului ( 10 articulii ), care pot fi folosite stnd la birou.
Dou caracteristici suplimentare pentru intervalul de adncime sunt de asemenea disponibile.
Acestea sunt MinDepth si MaxDepth care descriu limitele intervalul de adncime.
32
Kinect Fusion extrage informaiile de adncime care sunt generate de ctre senzorul Kinectului de Windows din secvena de cadre i construiete o hart 3D 9, a obiectelor sau a
mediului, care este extrem de detaliat. Tool-ul citete n medie peste sute sau chiar mii de
cadre pentru a crea un nivel ridicat de detaliu. Pentru mai multe informa ii se pot accesa
paginile [19], [20] .
1.1.2 Preuri
Kinectul pentru Windows cost aproximativ 250 $ ,dar n cazul n care se cumpr prin
intermediul magazinului online de la Windows de pe site-ul [22] (Windows Store) preul este
de 215 $.
Kinect-ul pentru Xbox este mult mai ieftin. Acesta poate fi cumprat la preul de 70 $ ( cu
acest pre se vinde n prezent ) ,este cu 180 $ mai ieftin, dar este posibil s necesite
cumprarea unei surse de alimentare separat cu ajutorul creia utilizatorul va putea conecta
Kinect-ul la PC.
SDK-ul Kinect-ului pentru Windows se poate descrca gratis de pe site-ul de la Microsoft
care poate fi gsit aici [23].
1.1.3 Liceniere
Licena comercial autorizeaz dezvoltarea i distribuia de aplicaii comerciale .SDK-ul
Beta a fost creat doar pentru cercetare, testare, experimentare i nu era potrivit pentru utilizarea
cu produse finale, care pe urm vor fi comercializate. Noua licen care e disponibil odat cu
achiziionarea Kinect-ului pentru Windows versiunile 1,0 si 1,5 ale software-ului permit
dezvoltatorilor s creeze i s vnd aplicaiile lor, pentru Kinect-ul de Windows, clien ilor care
utilizeaz Kinect de Windows i clienilor care utilizeaz senzorul Kinect de Windows pe
platforme Windows .
Din acest lucru reiese c n cazul n care se dorete s se comercializeze o aplica ie pentru
implementarea acesteia trebuie folosit Kinectul pentru Windows deoarece aplicaiile fcute
pentru cel de Xbox sunt ilegale .De aici reiese i motivul pentru care preul Kinect-ului pentru
Windows este mai mare dect preul Kinect-ului pentru Xbox. Odat ce s-a cumprat Kinect-ul
pentru Windows se va plti deasemenea i licena pentru utilizarea acestuia . n cazul n care se
doresc mai multe detalii despre licen se poate accesa site-ul [24] .
1.1.4 Concuzii
Dac se dorete ca o aplicaie s se comercializeze, ar fi de preferat s se achizi ioneze un
Kinect pentru Windows iar n acest caz comerciantul se poate asigura c este la zi cu licen a i c
poate beneficia de toate facilitiile pe care acesta i le ofer.
n cazul n care Kinect-ul este folosit doar pentru a dezvolta aplicaii n timpul liber sau doar
pentru a experimenta, ar fi de preferat folosirea tot a unui Kinect pentru Windows, astfel
utilizatorul se poate asigura c beneficiaz de toate facilitiile pe care acesta le ofer, dar asta nu
nseamn c este neaprat necesar s se achiziioneze un Kinect pentru Windows. Se poate folosi
de asemenea i un Kinect pentru Xbox.
Cu toate acestea Microsoft recomand utilizarea unui Kinect pentru Windows:
Dezvoltatorii ar trebui s aib n plan tranziia de la Kinect-ul pentru Xbox la cel pentru
Windows pentru dezvoltarea de aplicaii i ar trebui s se atepte ca utilizatorii lor s utilizeze ,
de asemenea, Kinect-ul pentru Windows. [25]
34
1.1.6 Competitori
Principalii competitori ai Kinect-ului sunt Nintendo Wii i Playstation Move, fiecare avnd
diferite atribute care le difereniaz. n continuare vom face o comparaie ntre cele trei
dispozitive i vom ncerca s-l gsim pe cel care implementeaz cel mai bine o interfa uman
natural.
n ceea ce privete camera video, Microsoft Kinect iese n eviden i e oarecum de
ateptat, ntruct camera e fundamental n funcionarea sa. Pe lng camera ce emite n
infrarou i camera receptor ataat acesteia, Kinect dispune i de o camer RGB care sporete
funcia de recunoatere a formelor n imagini i poate fi folosit pentru detectarea expresiilor
faciale i a detaliilor de finee pe care camera infrarou nu le poate capta. n plus, poate fi
folosit i ca un fel de webcam mai performant pentru Skype sau alte conversaii video pe
internet. Playstation Move dispune de o camer RGB, dar pentru c funcioneaz n tandem cu
un alt controller, Move nu ofer o soluie bazat pe infrarou, iar asta face destul de dificil
urmrirea corpului utilizatorului n ntregime. Wii nu dispune de nici un fel de camer, ntruct
dispozitivul celor de la Nintendo se bazeaz n special pe accelerometru i giroscop. Nintendo
Wii poate detecta micarea, dar nu cu o precizie foarte ridicat.
Controlul audio e foarte bine integrat de Kinect: dispozitivul dispune de un set de
microfoane direcionale care i permit s asculte doar comenzile utilizatorului i s ignore
zgomotul de fond. Ca i camera RGB, setul de microfoane poate fi perfect folosit pentru Skype
sau alte aplicaii pentru captare de sunet. Move ofer un set asemntor de microfoane, deci
performanele audio sunt comparabile cu cele gsite la Kinect. Wii-ul nu integreaz nici un fel de
microfon, deci comenzile vocale sau captarea audio nu sunt o opiune.
Ct despre controllere fizice ataate, Kinect iese din start din discuie, iar asta e chiar
partea interesant. Potrivit Microsoft, cnd vine vorba de Kinect, controller-ul este chiar
utilizatorul i orice micare sau gest al acestuia sunt automat captate de dispozitiv i procesate
n continuare. Controller-ul fizic e elementul central al Nintendo Wii, iar accelerometrele i
giroscopul su l fac destul de eficient i distractiv pentru unele jocuri mai simple. ns, dei se
afl printre deschiztorii de drumuri n domeniu, Nintendo Wii a pierdut puin teren ntre
dispozitivele ce pot oferi o interfa uman natural cu adevrat performant. Playstation Move
dispune de un controller asemntor cu maneta Wii ce msoar acceleraia micrilor
utilizatorului. E un sistem de funcionare bun, iar mpreun cu camera video, poate oferi i o
35
precizie bun n detectarea gesturilor, ns pentru a folosi Playstation Move, utilizatorul trebuie
s in tot timpul n mn i controller-ul ataat. E un mic dezavantaj pentru c n timp poate
provoca disconfort i ca atare deprteaz puin soluia oferit de Playstation de o interfa
uman cu adevrat natural.
36