Si të konfiguroni telefonat inteligjentë dhe PC. Portali informativ
  • shtëpi
  • Lajme
  • Kontroll i plotë zanor i kompjuterit tuaj. Kontrolli i zërit dhe gjesteve në kompjuterin tuaj

Kontroll i plotë zanor i kompjuterit tuaj. Kontrolli i zërit dhe gjesteve në kompjuterin tuaj

Një person m'u afrua me një kërkesë për të shkruar një program që do t'i lejonte të kontrollonte një maus kompjuteri duke përdorur zërin e tij. Atëherë nuk mund ta imagjinoja as që një person pothuajse plotësisht i paralizuar, i cili nuk mund të kthejë as kokën, por mund të flasë, është i aftë të zhvillojë aktivitet të fuqishëm, të ndihmojë veten dhe të tjerët të bëjnë një jetë aktive, të fitojnë njohuri dhe aftësi të reja, të punojnë dhe të fitojnë. para , komunikoni me njerëz të tjerë anembanë botës, merrni pjesë në një konkurs të projektit social.

Më lejoni të jap këtu disa lidhje me faqet, autori dhe/ose frymëzuesi ideologjik i të cilave është ky person - Alexander Makarchuk nga qyteti i Borisov, Bjellorusi:

Për të punuar në kompjuter, Aleksandri përdori programin "Vocal Joystick", i zhvilluar nga studentë në Universitetin e Uashingtonit, i financuar nga Fondacioni Kombëtar i Shkencës (NSF). Shih melodi.ee.washington.edu/vj

Nuk munda të rezistoja

Meqë ra fjala, në faqen e universitetit (http://www.washington.edu/) 90% e artikujve kanë të bëjnë me paratë. Është e vështirë të gjesh diçka për punën shkencore. Ja, për shembull, pjesë nga faqja e parë: “Tom, i diplomuar në universitet, hante kërpudha dhe e kishte të vështirë të paguante qiranë. Tani ai është një menaxher i lartë në një kompani IT dhe i jep para një universiteti, "Big Data i ndihmon të pastrehët", "Kompania është zotuar të paguajë 5 milionë dollarë për një ndërtesë të re akademike."

A jam unë i vetmi që më duket i bezdisshëm?


Programi u krijua në 2005-2009 dhe funksionoi mirë në Windows XP. Në versionet më të fundit të Windows, programi mund të ngrijë, gjë që është e papranueshme për një person që nuk mund të ngrihet nga karrigia e tij dhe ta rifillojë atë. Prandaj, programi duhej të ripërpunohej.

Nuk ka tekste burimore, ka vetëm botime individuale që zbulojnë teknologjitë në të cilat bazohet (MFCC, MLP - lexoni për këtë në pjesën e dytë).

Një program i ri u shkrua në të njëjtin imazh (në tre muaj).

Në fakt, ju mund të shihni se si funksionon:

Mund ta shkarkoni programin dhe/ose të shikoni kodet burimore.

Ju nuk keni nevojë të kryeni ndonjë veprim të veçantë për të instaluar programin, thjesht klikoni mbi të dhe ekzekutoni atë. E vetmja gjë është se në disa raste kërkohet që ai të ekzekutohet si administrator (për shembull, kur punoni me tastierën virtuale "Comfort Keys Pro"):

Ndoshta ia vlen të përmend këtu gjëra të tjera që kam bërë më parë për të bërë të mundur funksionimin e një kompjuteri pa duar.

Nëse keni aftësinë të ktheni kokën, një xhiroskop i montuar në kokë mund të jetë një alternativë e mirë për eViacam. Do të merrni pozicionim të shpejtë dhe të saktë të kursorit dhe pavarësi nga ndriçimi.

Nëse mund të lëvizni vetëm bebëzat e syve, atëherë mund të përdorni një gjurmues të drejtimit të shikimit dhe një program për të (kjo mund të jetë e vështirë nëse mbani syze).

Pjesa II. Si punon?

Nga materialet e publikuara në lidhje me programin Vocal Joystick, u bë e ditur se funksionon si më poshtë:
  1. Prerja e transmetimit audio në korniza 25 milisekonda me një mbivendosje prej 10 milisekonda
  2. Marrja e 13 koeficientëve cepstral (MFCC) për çdo kornizë
  3. Verifikimi që një nga 6 tingujt e ruajtur (4 zanore dhe 2 bashkëtingëllore) shqiptohet duke përdorur një perceptron me shumë shtresa (MLP)
  4. Përkthimi i tingujve të gjetur në lëvizje/klikime të miut
Detyra e parë është e dukshme vetëm për faktin se për ta zgjidhur atë në kohë reale, duhet të futeshin në program tre tema shtesë, pasi leximi i të dhënave nga mikrofoni, përpunimi i zërit dhe luajtja e zërit përmes një karte zanore ndodhin në mënyrë asinkrone.

Detyra e fundit realizohet thjesht duke përdorur funksionin SendInput.

Më duket se problemi i dytë dhe i tretë janë me interesin më të madh. Kështu që.

Detyra nr. 2. Marrja e 13 koeficientëve cepstral

Nëse dikush nuk është në dijeni, problemi kryesor i njohjes së tingujve nga një kompjuter është si vijon: është e vështirë të krahasohen dy tinguj, pasi dy valë zanore që janë të ndryshme në kontur mund të tingëllojnë të ngjashme nga pikëpamja e perceptimit njerëzor.

Dhe midis atyre që janë të përfshirë në njohjen e të folurit, ekziston një kërkim për "gurin filozofik" - një grup karakteristikash që do të klasifikonin pa mëdyshje një valë zanore.

Nga ato veçori që janë të disponueshme për publikun e gjerë dhe të përshkruara në tekste shkollore, më të përdorurat janë të ashtuquajturat Koeficientët Cepstral të Frekuencës Mel (MFCC).

Historia e tyre është e tillë që ata fillimisht ishin menduar për diçka krejtësisht të ndryshme, domethënë, për të shtypur jehonën në sinjal (një artikull edukativ për këtë temë u shkrua nga të respektuarit Oppenheim dhe Schafer, qoftë gëzim në shtëpitë e këtyre burrave fisnikë. Shih A. V. Oppenheim dhe R. W. Schafer, " From Frequency to Quefrency: A History of the Cepsrum".

Por njeriu është projektuar në atë mënyrë që ai është i prirur të përdorë atë që është më e njohur për të. Dhe ata që punuan në sinjalet e të folurit dolën me idenë e përdorimit të një përfaqësimi kompakt të gatshëm të sinjalit në formën e MFCC. Doli që, në përgjithësi, funksionon. (Një nga miqtë e mi, specialist në sistemet e ventilimit, kur e pyeta se si të bënim një shtëpi verore, më sugjeroi përdorimin e kanaleve të ventilimit. Thjesht sepse i njihte më mirë se materialet e tjera të ndërtimit).

A janë MFCC-të një klasifikues i mirë për tingujt? nuk do të thosha. I njëjti tingull i folur nga unë në mikrofona të ndryshëm bie në rajone të ndryshme të hapësirës së koeficientëve MFCC dhe një klasifikues ideal do t'i vizatonte ato krah për krah. Prandaj, në veçanti, kur ndryshoni mikrofonin, duhet të ritrajnoni programin.

Ky është vetëm një nga projeksionet e hapësirës 13-dimensionale MFCC në hapësirën 3-dimensionale, por mund ta shihni se çfarë dua të them - pikat e kuqe, vjollcë dhe blu merren nga mikrofona të ndryshëm: (Plantronix, mikrofona të integruar, Jabra), por tingulli u shqiptua vetëm.

Sidoqoftë, meqenëse nuk mund të ofroj asgjë më të mirë, do të përdor gjithashtu metodën standarde - llogaritjen e koeficientëve MFCC.

Për të mos u gabuar në zbatim, në versionet e para të programit u përdor si bazë kodi nga programi i mirënjohur CMU Sphinx, më saktë zbatimi i tij në C, i quajtur pocketsphinx, i zhvilluar në Universitetin Carnegie Mellon ( paqja qoftë me ata të dy (c) Hottabych ).

Kodet burimore të pocketsphinx janë të hapura, por problemi është se nëse i përdorni, duhet të shkruani tekst në programin tuaj (si në kodin burim ashtu edhe në modulin e ekzekutueshëm) që përmban, ndër të tjera, sa vijon:

* Kjo punë u mbështet pjesërisht nga financimi nga Agjencia e Projekteve Kërkimore të Avancuara * Mbrojtjes dhe Fondacioni Kombëtar i Shkencës * Shtetet e Bashkuara të Amerikës, dhe Konsorciumi CMU Sphinx Speech.
Kjo më dukej e papranueshme dhe më duhej ta rishkruaja kodin. Kjo ndikoi në performancën e programit (për më mirë, nga rruga, megjithëse "lexueshmëria" e kodit vuajti disi). Kryesisht falë përdorimit të bibliotekave "Intel Performance Primitives", por unë gjithashtu optimizova disa gjëra vetë, si filtri MEL. Sidoqoftë, testimi në të dhënat e testit tregoi se koeficientët e marrë MFCC janë plotësisht të ngjashëm me ato të marra duke përdorur, për shembull, mjetin sphinx_fe.

Në programet sfinksbaze, llogaritja e koeficientëve MFCC kryhet në hapat e mëposhtëm:

Hapi funksioni i bazës së sfinksit Thelbi i operacionit
1 fe_pre_theksimi Shumica e leximit të mëparshëm zbritet nga leximi aktual (për shembull, 0.97 nga vlera e tij). Një filtër primitiv që refuzon frekuencat e ulëta.
2 fe_hamming_dritare Dritarja Hamming – prezanton zbutjen në fillim dhe në fund të kornizës
3 fe_fft_real Transformimi i shpejtë i Furierit
4 fe_spec2 madhësi Nga spektri i zakonshëm marrim spektrin e fuqisë, duke humbur fazën
5 fe_mel_spec Ne grupojmë frekuencat e spektrit [për shembull, 256 copë] në 40 shtylla, duke përdorur shkallën MEL dhe koeficientët e peshimit
6 fe_mel_cep Marrim logaritmin dhe aplikojmë transformimin DCT2 në 40 vlerat nga hapi i mëparshëm.
Ne lëmë 13 vlerat e para të rezultatit.
Ekzistojnë disa variante të DCT2 (HTK, trashëgimi, klasike), që ndryshojnë në konstanten me të cilën ndajmë koeficientët që rezultojnë dhe një konstante të veçantë për koeficientin zero. Ju mund të zgjidhni çdo opsion, ai nuk do të ndryshojë thelbin.

Këto hapa përfshijnë gjithashtu funksione që ju lejojnë të ndani sinjalin nga zhurma dhe nga heshtja, të tilla si fe_track_snr, fe_vad_hangover, por ne nuk kemi nevojë për to dhe nuk do të shpërqendrohemi prej tyre.

Zëvendësimet e mëposhtme janë bërë për hapat për të marrë koeficientët MFCC:

Detyra nr. 3. Kontrolloni nëse një nga 6 tingujt e memorizuar është duke u shqiptuar

Programi origjinal Vocal Joystick përdori një perceptron me shumë shtresa (MLP) për klasifikim - një rrjet nervor pa këmbanat dhe bilbilat e reja.

Le të shohim se sa i justifikuar është përdorimi i një rrjeti nervor këtu.

Le të kujtojmë se çfarë bëjnë neuronet në rrjetet nervore artificiale.

Nëse një neuron ka N hyrje, atëherë neuroni ndan hapësirën N-dimensionale në gjysmë. Shpëton me një hiperplan. Për më tepër, në njërën gjysmë të hapësirës funksionon (jap përgjigje pozitive), por në tjetrën nuk funksionon.

Le të shohim opsionin [praktikisht] më të thjeshtë - një neuron me dy hyrje. Natyrisht do të ndajë hapësirën dydimensionale në gjysmë.

Le të jenë të dhëna vlerat X1 dhe X2, të cilat neuroni i shumëzon me koeficientët e peshimit W1 dhe W2 dhe shton termin e lirë C.


Në total, në daljen e neuronit (e shënojmë si Y) marrim:

Y=X1*W1+X2*W2+C

(le të kapërcejmë hollësitë rreth funksioneve sigmoid tani për tani)

Ne konsiderojmë se neuroni ndizet kur Y>0. Vija e drejtë e dhënë nga ekuacioni 0=X1*W1+X2*W2+C e ndan me saktësi hapësirën në një pjesë ku Y>0, dhe një pjesë ku Y<0.

Le të ilustrojmë atë që është thënë me numra specifikë.

Le të W1=1, W2=1, C=-5;

Tani le të shohim se si mund të organizojmë një rrjet nervor që do të funksiononte në një zonë të caktuar të hapësirës, ​​relativisht në një pikë, dhe jo në të gjitha vendet e tjera.

Nga figura mund të shihet se për të përshkruar një zonë në hapësirën dydimensionale, na duhen të paktën 3 vija të drejta, domethënë 3 neurone të lidhur me to.

Ne do t'i kombinojmë këto tre neurone së bashku duke përdorur një shtresë tjetër, duke marrë një rrjet nervor shumështresor (MLP).

Dhe nëse ne kemi nevojë që rrjeti nervor të punojë në dy zona të hapësirës, ​​atëherë do të na duhen të paktën tre neurone të tjerë (4,5,6 në figura):

Dhe këtu nuk mund të bësh pa një shtresë të tretë:

Dhe shtresa e tretë është pothuajse mësimi i thellë...

Tani le t'i drejtohemi një shembulli tjetër për ndihmë. Lëreni rrjetin tonë nervor të prodhojë një përgjigje pozitive në pikat e kuqe dhe një përgjigje negative në pikat blu.

Nëse do të më kërkonin të pres të kuqe nga blu në vija të drejta, do ta bëja diçka si kjo:

Por rrjeti nervor nuk e di apriori se sa direkte (neurone) do t'i nevojiten. Ky parametër duhet të vendoset përpara se të trajnohet rrjeti. Dhe një person e bën këtë në bazë të... intuitës ose provës dhe gabimit.

Nëse zgjedhim shumë pak neurone në shtresën e parë (tre, për shembull), mund të marrim një prerje si kjo, e cila do të japë shumë gabime (zona e gabuar është e hijezuar):

Por edhe nëse numri i neuroneve është i mjaftueshëm, si rezultat i trajnimit, rrjeti mund të "dështojë të konvergojë", domethënë të arrijë një gjendje të qëndrueshme që është larg nga optimali, kur përqindja e gabimeve është e lartë. Ashtu si këtu, shiriti i sipërm mbështetet në dy gunga dhe nuk do të largohet prej tyre. Dhe poshtë ka një zonë të madhe që gjeneron gabime:

Përsëri, mundësia e rasteve të tilla varet nga kushtet fillestare të trajnimit dhe sekuenca e trajnimit, domethënë nga faktorë të rastësishëm:

- Si mendoni, a do të arrinte ajo rrotë, nëse do të ndodhte, në Moskë apo jo?
- Si mendoni, a do të funksionojë apo jo rrjeti nervor?

Ekziston një moment tjetër i pakëndshëm që lidhet me rrjetet nervore. “Harresa” e tyre.

Nëse filloni të ushqeni rrjetin vetëm me pika blu dhe ndaloni të ushqeni ato të kuqe, atëherë ai mund të rrëmbejë lehtësisht një pjesë të zonës së kuqe për vete, duke lëvizur kufijtë e saj atje:

Nëse rrjetet nervore kanë kaq shumë mangësi dhe një person mund të tërheqë kufijtë në mënyrë shumë më efikase sesa një rrjet nervor, atëherë pse t'i përdorë ato fare?

Dhe ka një detaj të vogël, por shumë domethënës.

Mund ta ndaj fare mirë zemrën e kuqe nga sfondi blu me segmente të vijës së drejtë në hapësirën dydimensionale.

Mund ta ndaj fare mirë statujën e Venusit nga hapësira tredimensionale që e rrethon me avionë.

Por në hapësirën katërdimensionale nuk mund të bëj asgjë, më fal. Dhe në dimensionin e 13-të - edhe më shumë.

Por për një rrjet nervor, dimensioni i hapësirës nuk është pengesë. Unë qesha me të në hapësira të vogla, por sapo kalova përtej të zakonshmes, ajo më rrihte lehtësisht.

Sidoqoftë, pyetja është ende e hapur: sa i justifikuar është përdorimi i një rrjeti nervor në këtë detyrë të veçantë, duke marrë parasysh disavantazhet e rrjeteve nervore të listuara më sipër.

Le të harrojmë për një sekondë se koeficientët tanë MFCC janë në hapësirën 13-dimensionale dhe imagjinoni se ato janë dy-dimensionale, domethënë pika në një plan. Si mund të ndahet një tingull nga një tjetër në këtë rast?

Le të kenë pikat MFCC të tingullit 1 një devijim standard R1, që [përafërsisht] do të thotë se pikat që nuk devijojnë shumë nga mesatarja, pikat më karakteristike, janë brenda një rrethi me rreze R1. Në të njëjtën mënyrë, pikat të cilave u besojmë zërit 2 ndodhen brenda një rrethi me rreze R2.

Kujdes, pyetja: ku të vizatoni një vijë të drejtë që do ta ndante më mirë tingullin 1 nga tingulli 2?

Përgjigja sugjeron vetë: në mes midis kufijve të rrathëve. Ndonjë kundërshtim? Asnjë kundërshtim.
Korrigjim: Në program, ky kufi ndan segmentin që lidh qendrat e rrathëve në raportin R1:R2, që është më i saktë.

Dhe së fundi, të mos harrojmë se diku në hapësirë ​​ka një pikë që përfaqëson heshtje të plotë në hapësirën MFCC. Jo, nuk janë 13 zero, siç mund të duket. Kjo është një pikë që nuk mund të ketë një devijim standard. Dhe linjat e drejta me të cilat e shkëputëm atë nga tre tingujt tanë mund të vizatohen drejtpërdrejt përgjatë kufijve të rrathëve:

Në figurën më poshtë, çdo tingull korrespondon me një pjesë të hapësirës me ngjyrën e vet, dhe gjithmonë mund të themi se cilit tingull i përket kjo apo ajo pikë në hapësirë ​​(ose nuk i përket asnjë):

Epo, në rregull, tani le të kujtojmë se hapësira është 13-dimensionale, dhe ajo që ishte mirë të vizatohej në letër tani rezulton të jetë diçka që nuk përshtatet në trurin e njeriut.

Po, por jo ashtu. Për fat të mirë, në hapësirën e çdo dimensioni mbeten koncepte të tilla si një pikë, një vijë e drejtë, një [hiper]plan, një [hiper]sferë.

Ne përsërisim të gjitha veprimet e njëjta në hapësirën 13-dimensionale: gjejmë dispersionin, përcaktojmë rrezet e [hiper]sferave, lidhim qendrat e tyre me një vijë të drejtë, e presim atë me një [hiper]plan në një pikë po aq të largët nga kufijtë e [hiper]sferave.

Asnjë rrjet nervor nuk mund të ndajë më saktë një tingull nga një tjetër.

Këtu, megjithatë, duhet bërë një rezervë. E gjithë kjo është e vërtetë nëse informacioni rreth tingullit është një re pikash që devijojnë nga mesatarja në mënyrë të barabartë në të gjitha drejtimet, domethënë përshtaten mirë në hipersferë. Nëse kjo re do të ishte një figurë me formë komplekse, për shembull, një sallam i lakuar 13-dimensionale, atëherë i gjithë arsyetimi i mësipërm do të ishte i pasaktë. Dhe ndoshta, me trajnimin e duhur, rrjeti nervor mund të tregojë pikat e tij të forta këtu.

Por nuk do ta rrezikoja. Dhe unë do të përdorja, për shembull, grupe të shpërndarjeve normale (GMM), (që, nga rruga, bëhet në CMU Sphinx). Është gjithmonë më e këndshme kur kupton se cili algoritëm specifik çoi në rezultat. Jo si në një rrjet nervor: Oracle, bazuar në orët e shumta të zierjes mbi të dhënat e stërvitjes, ju thotë të vendosni që tingulli i kërkuar është tingulli #3. (Më shqetëson veçanërisht kur përpiqen t'ia besojnë kontrollin e një makine një rrjeti nervor. Si atëherë, në një situatë të pazakontë, mund të kuptohet pse makina u kthye majtas dhe jo djathtas? A urdhëroi Neuroni i Plotfuqishëm?).

Por grupet e shpërndarjeve normale janë një temë më vete e madhe që është përtej qëllimit të këtij artikulli.

Shpresoj se artikulli ishte i dobishëm dhe/ose e bëri trurin tuaj të kërcëllijë.

Njohja e të folurit është një mjet i thjeshtë dhe i pasur me funksione të Windows që ju lejon të kontrolloni kompjuterin tuaj duke përdorur komandat zanore.

Ju mund ta personalizoni këtë veçori për navigimin, hapjen e aplikacioneve, diktimin e tekstit dhe shumë detyra të tjera. Megjithatë, njohja e të folurit është menduar kryesisht për personat me aftësi të kufizuara që nuk mund të përdorin miun ose tastierën.

Në këtë udhëzues, ne ofrojmë hapa për të konfiguruar dhe përdorur funksionin e njohjes së të folurit, në mënyrë që të mund të kontrolloni kompjuterin tuaj vetëm me zërin tuaj.

Fatkeqësisht, ky mjet, si Cortana, është shumë i kufizuar në rajonin tonë.

Megjithatë, ju mund të ndryshoni disa cilësime kompjuteri. Për ta bërë këtë, ndiqni këto hapa:


E rëndësishme! Që gjithçka të funksionojë siç duhet, duhet të përdorni një llogari të Microsoft, jo një llogari lokale! Nëse keni të instaluar një version në një gjuhë të sistemit (klikoni me të djathtën në "This PC" dhe më pas "Properties"), atëherë nuk do të jeni në gjendje të përdorni Cortana ose një mjet të plotë të njohjes së të folurit!

Për lehtësi, të gjitha veprimet përkthehen në Rusisht dhe shoqërohen me pamjet përkatëse të ekranit në anglisht. Një mënyrë më radikale, nëse gjithçka tjetër dështon, është instalimi i Windows për SHBA.

Ndiqni këto hapa:

  1. Hapni Panelin e Kontrollit.

  2. Gjeni "Qasshmërinë".

  3. Klikoni në lidhjen "Fillimi i njohjes së të folurit".

    E rëndësishme! Kjo është ajo ku përdoruesit tanë po përballen me një problem, kështu që klikoni në lidhjen në të majtë "Tekst to Speech" dhe shkoni direkt në seksionin e këtij artikulli se si të ndryshoni cilësimet e njohjes së të folurit. Nëse keni një ndërfaqe të sistemit në anglisht, atëherë mos ngurroni të vazhdoni të ndiqni hapat, të shoqëruar me pamje nga ekrani në anglisht.

  4. Në faqen e cilësimeve, klikoni Next.
  5. Zgjidhni llojin e mikrofonit që do të përdorni.

    Shënim! Mikrofonat e tavolinës nuk janë ideale, ndaj Microsoft rekomandon përdorimin e një mikrofoni të jashtëm ose një kufje të dedikuar.

  6. Kliko Next. Përsëriteni veprimin.

  7. Për të kontrolluar funksionalitetin e mjetit, lexoni tekstin me zë të lartë. Kliko Next. Përsëriteni veprimin.

  8. Njohja e të folurit ka qasje në dokumente dhe email. Kjo është për të përmirësuar saktësinë e njohjes bazuar në fjalët që përdorni. Zgjidhni opsionin Aktivizo shikimin e dokumentit ose çaktivizoni nëse keni shqetësime për privatësinë. Kliko Next.

  9. Zgjidhni modalitetin e aktivizimit: Përdorni "Modalitetin e aktivizimit manual" - njohja e të folurit çaktivizon komandën "Ndalo dëgjimin". Për ta ndezur përsëri, duhet të shtypni butonin e mikrofonit ose të përdorni kombinimin e tastit Ctrl + Win; ose “Aktivizimi i zërit ». Mjeti i njohjes kalon në modalitetin e fjetjes kur nuk përdoret. Për ta aktivizuar përsëri, duhet të telefononi komandën zanore "Filloni të dëgjoni". Kliko Next.

  10. Për të mësuar më shumë rreth komandave zanore që mund të përdorni, klikoni butonin Shiko Ndihmën. Kliko Next.

  11. Opsionale, mund të zgjidhni opsionin "Fillimi automatik i njohjes së të folurit". Kliko Next.

  12. Për të hyrë në udhëzuesin e trajnimit të Microsoft, klikoni butonin "Fillimi i trajnimit" ose zgjidhni "Kapërce". Më në fund do të përfundoni konfigurimin.

Pas përfundimit të këtyre hapave, mund të filloni të përdorni njohjen e të folurit duke përdorur komandat zanore. Kontrollet do të shfaqen në krye të ekranit.

Shënim! Mund të tërhiqni dhe lidhni ndërfaqen e njohjes së të folurit kudo në ekran.

Si të stërvitni njohjen e të folurit dhe të përmirësoni saktësinë

Pas përfundimit të procesit të trajnimit, mjeti i njohjes së të folurit duhet të ketë një kuptim më të mirë të zërit tuaj.

Si të ndryshoni cilësimet e njohjes së të folurit

Nëse keni nevojë të ndryshoni ndonjë cilësim, ndiqni këto hapa:

Hapi 1. Hapni Panelin e Kontrollit.

Hapi 2. Klikoni Aksesueshmëria.

Hapi 3. Zgjidhni Njohjen e të folurit.

Hapi 4. Klikoni lidhjen e tekstit për më shumë opsione të të folurit në panelin e majtë.

Hapi 5. Në dritaren e vetive, nën skedën "Njohja e të folurit", mund të konfiguroni përbërës të ndryshëm të veçorisë, duke përfshirë:

Hapi 6. Në skedën Tekst në të folur, mund të menaxhoni cilësimet e zërit, duke përfshirë:

Hapi 7 Plus, gjithmonë mund të klikoni me të djathtën për të hapur menynë e kontekstit dhe për të hyrë në të gjitha veçoritë dhe cilësimet e ndryshme të mjetit të njohjes së të folurit.

Si të përdorni njohjen e të folurit në Windows 10

Megjithëse ka një kurbë të vogël mësimi, njohja e të folurit përdor komanda të qarta dhe të lehta për t'u mbajtur mend. Për shembull, "Start" hap menynë përkatëse dhe "Show desktop" minimizon të gjitha dritaret.

Me ndihmën e njohjes së të folurit, mund të kryeni detyrat e nevojshme.

Nisja e mjetit të njohjes së të folurit


Duke u ndezur dhe fikur

Për të përdorur këtë veçori, në varësi të konfigurimit tuaj, shtypni butonin e mikrofonit ose thoni "Filloni të dëgjoni".

Në të njëjtën mënyrë, mund ta fikni duke thënë "Stop" ose duke shtypur butonin e mikrofonit.

Përdorimi i komandave

Disa nga komandat më të përdorura janë:

  • "Hap" (Hapur)- hap aplikacionin pasi thotë fjalën "Open" e ndjekur nga emri i aplikacionit. Për shembull, "Open Mail" ose "Open Firefox";
  • "Kaloni në" (Kaloni në)- kaloni në një aplikacion tjetër që funksionon. Thoni komandën "Switch" e ndjekur nga emri i aplikacionit. Për shembull, "Kaloni në Microsoft Edge";
  • kontrolli i dritares së hapur. Për të menaxhuar dritaren aktive, përdorni komandat Minimize, Maximize dhe Restore;
  • Lëvizni. Ju lejon të lëvizni faqen. Thjesht përdorni komandën "Lëviz poshtë" ose "Lëviz lart" ose "Lëviz majtas" ose "Lëviz djathtas". Ju gjithashtu mund të specifikoni një rrotull të gjatë. Për shembull, thoni: "Lëvizni poshtë dy faqe";
  • mbyllja e aplikacioneve (Mbyll). Thoni komandën "Mbyll" e ndjekur nga emri i aplikacionit që funksionon. Për shembull, "Close Word";
  • klikimeve. Brenda aplikacionit, mund të përdorni komandën "Click" e ndjekur nga emri i elementit. Për shembull, në Word, mund të thoni "Click Layout" dhe njohja e të folurit do të hapë skedën Layout. Në mënyrë të ngjashme, ju mund të përdorni komandat "Double-click" ose "Right-click";
  • shtypje (shtyp). Kjo komandë lëshon çelësat e nxehtë. Për shembull, për të hapur Qendrën e Veprimit, thoni "Shtypni Windows A".

Përdorimi i diktimit

Njohja e të folurit përfshin gjithashtu aftësinë për të kthyer zërin në tekst duke përdorur veçorinë e diktimit dhe funksionon automatikisht.


Microsoft Assistant i njohur ndryshe si Cortana

Për të përmbushur pritjet e përdoruesve dhe për të demonstruar konkurrencë ndaj kompanive si Apple, Google ose Amazon, Microsoft prezantoi asistentin e tij inteligjent, Cortana.

Në fazat e hershme, ajo u konsiderua si një nga asistentët më të mirë artificialë, por humbi statusin e saj pasi humbi versionin celular nga Microsoft në betejën me Android dhe iOS. Sidoqoftë, ne po flasim për Windows 10 këtu, kështu që Cortana është ende një mjet i zbatueshëm.

Shpresojmë se do të përmirësohet me kalimin e kohës. Cortana është e dobishme nëse dëshironi të ndizni kompjuterin tuaj pa asnjë komandë zanore.

Ja se si ta aktivizoni dhe konfiguroni për përdorim të mëvonshëm në Windows 10:

  1. Klikoni Start dhe hapni Të gjitha aplikacionet.

  2. Gjeni Cortana dhe hapeni atë.

  3. Hiq zgjedhjen e çelësit "Përdor Cortana". Prekni "Po" ose "Jo, faleminderit", në varësi të faktit nëse dëshironi që asistenti zanor të gjurmojë të dhënat tuaja (në mënyrë që t'ju njohë më mirë) apo jo.

  4. Tani që keni aktivizuar Cortana, shtypni "Windows + S" ose klikoni në ingranazhin e vendosur në të majtë.
  5. Aktivizo Hey Cortana dhe konfiguro mikrofonin. Ju mund ta lejoni asistentin të përgjigjet kur dikush thotë "Hej Cortana" ose ta detyroni që t'u përgjigjet vetëm komandave tuaja zanore.

  6. Dilni nga Cilësimet dhe kërkoni diçka nga asistenti juaj dixhital.

  7. Kërkoni në internet për një listë të komandave dhe detyrave të disponueshme që Cortana mund të kryejë.

Video - Si të aktivizoni Microsoft Cortana në Windows 10

Koleksioni i programeve të palëve të treta

Përveç mjetit të integruar të njohjes së të folurit dhe asistentit zanor Cortana, disa përdorues mund të drejtohen te një alternativë e palës së tretë. Duke qenë se kjo kategori softuerësh është vazhdimisht në zhvillim, në treg ka produkte të ndryshme që janë të pajtueshme me Windows 10. Pyetja e vetme janë nevojat dhe dëshirat tuaja.

Disa nga programet si p.sh.

  • Typle është një program i shkëlqyer për kontrollin e zërit në një kompjuter, një ndërfaqe e thjeshtë në gjuhën ruse;
  • Dragon nga prodhuesi Nuance, i specializuar në diktim të shpejtë dhe, në përgjithësi, në konvertimin e fjalës në tekst;
  • Voice Attack, i projektuar për kontrollin zanor të lojës (po, mund të ringarkoni armët në Call of Duty duke përdorur një komandë zanore);
  • Një tjetër mjet i mirë është VoxCommando. Më shpesh përdoret në programe multimediale si Kodi ose iTunes, por gjithashtu mund të jetë i dobishëm kur automatizon pajisjet shtëpiake.

Kontrolli zanor i kompjuterit tuaj duke përdorur programin Typle

  1. Shkarkoni programin dhe instaloni në kompjuterin tuaj, duke ndjekur udhëzimet e instaluesit.

  2. Ndërfaqja e programit është e thjeshtë dhe intuitive. Kur përshëndetni, dritarja e programit përmban sugjerime për përdoruesin. Për të filluar, klikoni në butonin "Shto".

  3. Në dritaren që hapet, futni emrin tuaj në fushë, më pas futni një komandë, më pas klikoni në butonin e regjistrimit dhe thoni komandën me zë. Klikoni butonin "Shto".

  4. Klikoni butonin "Shto".

  5. Kontrolloni kutinë pranë artikullit të kërkuar. Zgjidhni një program, shtypni butonin e kuq dhe thuani këtë komandë me zë të lartë. Pastaj klikoni "Shto".

  6. Ju do të shihni komandën e krijuar, për ta testuar atë, klikoni "Filloni të flisni" dhe thoni këtë komandë. Nëse gjithçka funksionon në të njëjtën mënyrë, shtoni komandat e mbetura.

Provoni TalkTyper

Është një aplikacion online që të lejon të diktosh tekstin dhe më pas të jep disa opsione bazë se çfarë të bësh me të. Tifozët e minimalizmit patjetër do ta pëlqejnë atë.


Mund të kopjoni atë që lexoni në kujtesën tuaj, në email, të printoni, të postoni në Twitter dhe ta përktheni në një gjuhë tjetër. Për të përkthyer tekstin, thjesht klikoni butonin dhe zgjidhni gjuhën e përkthimit. TalkTyper do të hapë automatikisht një skedë të re në shfletuesin tuaj me tekstin që keni ngjitur në Google Translate.

Kushtojini vëmendje Taztit

Tazti spikat mes programeve të tjera me dy veçori dalluese:

  • mund ta përdorni aplikacionin për të kontrolluar kompjuterin dhe lojërat duke përdorur komandat zanore. Dhe nëse Tazti nuk ka komandën që ju nevojitet, mund të krijoni një (dhe 299 të tjerë);
  • programi është në gjendje të nisë aplikacionet e instaluara, faqet e internetit, drejtoritë ose të përdorë linjën e komandës.

Personalizojeni Tazti ashtu siç dëshironi. Nëse nuk ju nevojitet komanda, atëherë modifikoni ose hiqeni plotësisht. Ju madje mund të shtoni komandat e klikimit dhe klikimit të dyfishtë për të eliminuar nevojën për një mouse.

Sidoqoftë, Tazti ka një pengesë të madhe - nuk ka funksionalitet të diktimit të tekstit, kështu që nuk është në gjendje të njohë zërin. Zhvilluesi i Voice Tech Group pranon se produktet e tjera janë shumë më të mira në diktim, kështu që kompania vendosi të përqendrojë të gjitha përpjekjet e saj në veçori të tjera të idesë së saj.

Tazti u drejtohet më shumë lojtarëve që duan të përdorin zërin e tyre për të dërguar personazhe në betejë ose ata që preferojnë të lançojnë programe, media player dhe të shfletojnë ueb pa pasur nevojë për tastierë. Fakti që ju mund të kontrolloni pjesë të rëndësishme të Windows duke përdorur Tazti e bën atë një kundërshtar të denjë për aplikacionet e lartpërmendura, edhe nëse nuk ofron diktim.

E rëndësishme! Programi ka një periudhë prove 15-ditore. Pas kësaj ju duhet të paguani 40 dollarë.

Pra, nëse njohja e të folurit ose Cortana nuk i plotëson nevojat tuaja (ose thjesht nuk mund t'i përdorni), atëherë provoni shërbimet e mësipërme.

Video - Përmbledhje e programit të tipit

Cili personazh nuk ëndërron të kontrollojë një kompjuter nga divani duke përdorur vetëm gjeste dhe komanda zanore? Mjaft e çuditshme, por kjo tashmë është e mundur. Dhe në një të ardhme shumë të afërt, çdo person i dytë do të tundë duart përpara monitorit. Artikulli diskuton disa metoda dhe perspektiva të menjëhershme.

Kontrolli zanor në Windows

Le të fillojmë me softuerin falas që ju lejon të kontrolloni kompjuterin tuaj duke përdorur fjalimin rusisht. Do të jetë e mundur ta bindni atë të hapë programe, të kryejë disa veprime etj. Dhe duart tuaja do të jenë të lira për çështje më të rëndësishme.

Lloji

Ky program është lider në mesin e programeve që ju lejojnë të komandoni një kompjuter në gjuhën tuaj amtare ruse. Pas instalimit, do t'ju duhet të krijoni një përdorues dhe të gjeni një fjalë kyçe si "Ok, Windows", megjithëse ne këshillohemi të përdorim fjalën "Open". Këtu fillojmë të flasim, ekziston një zbatim i njohur në Google Glasses.

Pastaj zgjedhim komandat për përdoruesin. Mund të shtoni vetëm nisjen e disa programeve, dhe kur klikoni, mund të zgjidhni gjithashtu një program dhe të shtoni një argument. Ndoshta nëse shtoni diçka në nisjen e programit, do të ketë veprime. Por në përgjithësi, përdoruesi mesatar nuk do të jetë në gjendje të kontrollojë plotësisht kompjuterin, pa pushime ose këngë tjetër, thjesht filloni dhe filloni.

Kontrolli i gjesteve në një kompjuter

Që nga ardhja e PlayStation®Eye Camera dhe kinect, njerëzit kanë kërkuar të njëjtat veçori në kompjuterin e tyre. Më vonë, Kinect madje iu shit zhvilluesve, por një produkt i tillë nuk u njoftua për përdoruesit e përgjithshëm. Madje ka lajme se Kinect 2.0 me Xbox One nuk do të funksionojë në kompjuter, por një version special i Kinect do të dalë për PC. Vërtetë, pa softuerin e duhur është pak i dobishëm. Pra, le të kalojmë te vetë softueri.

Mënyra më e njohur dhe më e aksesueshme për të kontrolluar gjestet është programi Flutter dhe zgjerimi përkatës i Chrome. Pothuajse çdo webcam do të funksionojë me këtë program.

Mjaft funksione, por funksionojnë shumë mirë. Mund të ndalojmë dhe të vazhdojmë të tregojmë pëllëmbën tonë. Ndërroni këngët ose videot majtas ose djathtas, në varësi të vendit ku drejtoni gishtin. Programi funksionon në PowerPoint, VLC, Winamp, iTunes, YouTube dhe disa shërbime të tjera që pak njerëz i përdorin.

Për funksionimin e duhur, këshillohet të jeni në një distancë nga kamera e internetit, por jo në mënyrë të rastësishme. Shtrirja rezulton të jetë shumë më pak e kontrollueshme sesa të uleni në këmbë. Personalisht, e përdor në YouTube vetëm kur duart e mia janë të pista, është mjaft i përshtatshëm ose kur jeni shtrirë. Nuk ka ende lëvizje të rastësishme. Por ka ende gabime kur thjesht ulesh dhe tund duart para monitorit si një idiot i plotë.

Me siguri Flutter së shpejti do të marrë mbështetje të plotë për Chrome, sepse startup-i u ble nga Google në tetor 2013.

Lëvizja e kërcimit

Le të kalojmë nga softueri te pajisjet. Leap Motion frymëzon besim me madhësinë e tij të vogël dhe sasinë e potencialit. Kjo gjë zbulon duart e përdoruesit, ose më mirë, edhe çdo gisht. Dyqani juaj me një mori aplikacionesh dhe lojërash nuk ju lejon të mërziteni. Dhe më e rëndësishmja, tashmë është në shitje dhe kushton rreth 5000 rubla. Jo shumë për një magji të tillë.

Por, në fakt, ka shumë disavantazhe këtu. Pati diskutime mbi qendrën dhe madje edhe mendimin e një prej përdoruesve. Gjithmonë duhet t'i mbani duart me kyçin e dorës lart mbi pajisje, a mendoni se është e lehtë? Mbajeni për 5 minuta.

Përsa i përket aplikacioneve, ka edhe një minus të madh që të gjitha ato falas janë me buggy dhe përplasen. Dhe lojërat janë një mori udhëtimesh të pakuptueshme me LSD. Dhe është e papërshtatshme për të kontrolluar, saktësia luan në drejtim të kundërt dhe çdo lëvizje e gabuar e dorës çon në një pasojë të paparashikuar.

Dhe vetë drejtuesi i Leap Motion do të hajë pothuajse të gjitha burimet tuaja në kompjuterin tuaj. Por nëse kjo nuk ju ndalon, atëherë blini, si gjithmonë, në zyrë. faqe interneti. Është edhe në rusisht.

DUO 3D

Ekziston gjithashtu një teknologji e ngjashme nga zhvilluesit rusë. Ata thjesht morën dy Kamera për Sy, shkruan softuer dhe krijuan një kompani në Kickstarter. Fatkeqësisht, ishte një dështim. Ne mblodhëm 62,000 dollarë nga 110,000 dollarët e planifikuar. Është turp, aq më tepër që nuk do t'i marrin as këto para, pasi duhet mbledhur gjithçka që të mbërrijë.

Tani pajisjet janë edhe në shitje falas, por shpresojmë që zhvillime të tilla të popullit tonë jo thjesht të zhduken.

Myo

Hajde kush nuk ka degjuar per Myo. Një byzylyk që zbulon gjestet jo duke përdorur një aparat fotografik, si konkurrentët e tij, por duke njohur lëvizjet e muskujve. Videoja e bukur dhe tiparet e mahnitshme magjepsën të gjithë, madje edhe mua. Sapo byzylyku ​​të dalë në shitje, aplikacionet dhe të gjitha integrimet do të njihen, do të shfaqen komente, atëherë do ta blej këtë gjë të mrekullueshme.

Tani byzylyku ​​mund të porositet paraprakisht për 150 dollarë, por kam frikë të marr versionin e papërpunuar.

Kontrolli i kompjuterit nga një kamera në internet në laptopë

Në ditët e sotme, prodhuesit e laptopëve duan të eksperimentojnë me kontrollet e gjesteve. Kompania PointGrab ka bërë përparim në këtë temë, koncepti i tyre është mjaft optimist.

Acer përdor produktet e kësaj kompanie. Dhe Lenovo do të bëjë vetë Motion Control 2.0 bazuar në këto zhvillime.

Dhe në shtator 2013, Intel njoftoi laptopë të rinj me kontroll zëri, kontroll me gjeste dhe prekje, dhe para kësaj në verë kompania bleu startupin izraelit Omek.

Le të shohim se çfarë vjen nga e gjithë kjo. Kohët e fundit kam pasur një ndjenjë të përjetshme se e ardhmja është afër qoshes dhe ka disa vite që tani. A mund të plotësoni materialin tim me njohuritë tuaja A ka ndonjë pajisje apo metodë tjetër që ia vlen të përmendet?

Një person m'u afrua me një kërkesë për të shkruar një program që do t'i lejonte të kontrollonte një maus kompjuteri duke përdorur zërin e tij. Atëherë nuk mund ta imagjinoja as që një person pothuajse plotësisht i paralizuar, i cili nuk mund të kthejë as kokën, por mund të flasë, është i aftë të zhvillojë aktivitet të fuqishëm, të ndihmojë veten dhe të tjerët të bëjnë një jetë aktive, të fitojnë njohuri dhe aftësi të reja, të punojnë dhe të fitojnë. para , komunikoni me njerëz të tjerë anembanë botës, merrni pjesë në një konkurs të projektit social.

Më lejoni të jap këtu disa lidhje me faqet, autori dhe/ose frymëzuesi ideologjik i të cilave është ky person - Alexander Makarchuk nga qyteti i Borisov, Bjellorusi:

Për të punuar në kompjuter, Aleksandri përdori programin "Vocal Joystick", i zhvilluar nga studentë në Universitetin e Uashingtonit, i financuar nga Fondacioni Kombëtar i Shkencës (NSF). Shih melodi.ee.washington.edu/vj

Nuk munda të rezistoja

Meqë ra fjala, në faqen e universitetit (http://www.washington.edu/) 90% e artikujve kanë të bëjnë me paratë. Është e vështirë të gjesh diçka për punën shkencore. Ja, për shembull, pjesë nga faqja e parë: “Tom, i diplomuar në universitet, hante kërpudha dhe e kishte të vështirë të paguante qiranë. Tani ai është një menaxher i lartë në një kompani IT dhe i jep para një universiteti, "Big Data i ndihmon të pastrehët", "Kompania është zotuar të paguajë 5 milionë dollarë për një ndërtesë të re akademike."

A jam unë i vetmi që më duket i bezdisshëm?


Programi u krijua në 2005-2009 dhe funksionoi mirë në Windows XP. Në versionet më të fundit të Windows, programi mund të ngrijë, gjë që është e papranueshme për një person që nuk mund të ngrihet nga karrigia e tij dhe ta rifillojë atë. Prandaj, programi duhej të ripërpunohej.

Nuk ka tekste burimore, ka vetëm botime individuale që zbulojnë teknologjitë në të cilat bazohet (MFCC, MLP - lexoni për këtë në pjesën e dytë).

Një program i ri u shkrua në të njëjtin imazh (në tre muaj).

Në fakt, ju mund të shihni se si funksionon:

Mund ta shkarkoni programin dhe/ose të shikoni kodet burimore.

Ju nuk keni nevojë të kryeni ndonjë veprim të veçantë për të instaluar programin, thjesht klikoni mbi të dhe ekzekutoni atë. E vetmja gjë është se në disa raste kërkohet që ai të ekzekutohet si administrator (për shembull, kur punoni me tastierën virtuale "Comfort Keys Pro"):

Ndoshta ia vlen të përmend këtu gjëra të tjera që kam bërë më parë për të bërë të mundur funksionimin e një kompjuteri pa duar.

Nëse keni aftësinë të ktheni kokën, një xhiroskop i montuar në kokë mund të jetë një alternativë e mirë për eViacam. Do të merrni pozicionim të shpejtë dhe të saktë të kursorit dhe pavarësi nga ndriçimi.

Nëse mund të lëvizni vetëm bebëzat e syve, atëherë mund të përdorni një gjurmues të drejtimit të shikimit dhe një program për të (kjo mund të jetë e vështirë nëse mbani syze).

Pjesa II. Si punon?

Nga materialet e publikuara në lidhje me programin Vocal Joystick, u bë e ditur se funksionon si më poshtë:
  1. Prerja e transmetimit audio në korniza 25 milisekonda me një mbivendosje prej 10 milisekonda
  2. Marrja e 13 koeficientëve cepstral (MFCC) për çdo kornizë
  3. Verifikimi që një nga 6 tingujt e ruajtur (4 zanore dhe 2 bashkëtingëllore) shqiptohet duke përdorur një perceptron me shumë shtresa (MLP)
  4. Përkthimi i tingujve të gjetur në lëvizje/klikime të miut
Detyra e parë është e dukshme vetëm për faktin se për ta zgjidhur atë në kohë reale, duhet të futeshin në program tre tema shtesë, pasi leximi i të dhënave nga mikrofoni, përpunimi i zërit dhe luajtja e zërit përmes një karte zanore ndodhin në mënyrë asinkrone.

Detyra e fundit realizohet thjesht duke përdorur funksionin SendInput.

Më duket se problemi i dytë dhe i tretë janë me interesin më të madh. Kështu që.

Detyra nr. 2. Marrja e 13 koeficientëve cepstral

Nëse dikush nuk është në dijeni, problemi kryesor i njohjes së tingujve nga një kompjuter është si vijon: është e vështirë të krahasohen dy tinguj, pasi dy valë zanore që janë të ndryshme në kontur mund të tingëllojnë të ngjashme nga pikëpamja e perceptimit njerëzor.

Dhe midis atyre që janë të përfshirë në njohjen e të folurit, ekziston një kërkim për "gurin filozofik" - një grup karakteristikash që do të klasifikonin pa mëdyshje një valë zanore.

Nga ato veçori që janë të disponueshme për publikun e gjerë dhe të përshkruara në tekste shkollore, më të përdorurat janë të ashtuquajturat Koeficientët Cepstral të Frekuencës Mel (MFCC).

Historia e tyre është e tillë që ata fillimisht ishin menduar për diçka krejtësisht të ndryshme, domethënë, për të shtypur jehonën në sinjal (një artikull edukativ për këtë temë u shkrua nga të respektuarit Oppenheim dhe Schafer, qoftë gëzim në shtëpitë e këtyre burrave fisnikë. Shih A. V. Oppenheim dhe R. W. Schafer, " From Frequency to Quefrency: A History of the Cepsrum".

Por njeriu është projektuar në atë mënyrë që ai është i prirur të përdorë atë që është më e njohur për të. Dhe ata që punuan në sinjalet e të folurit dolën me idenë e përdorimit të një përfaqësimi kompakt të gatshëm të sinjalit në formën e MFCC. Doli që, në përgjithësi, funksionon. (Një nga miqtë e mi, specialist në sistemet e ventilimit, kur e pyeta se si të bënim një shtëpi verore, më sugjeroi përdorimin e kanaleve të ventilimit. Thjesht sepse i njihte më mirë se materialet e tjera të ndërtimit).

A janë MFCC-të një klasifikues i mirë për tingujt? nuk do të thosha. I njëjti tingull i folur nga unë në mikrofona të ndryshëm bie në rajone të ndryshme të hapësirës së koeficientëve MFCC dhe një klasifikues ideal do t'i vizatonte ato krah për krah. Prandaj, në veçanti, kur ndryshoni mikrofonin, duhet të ritrajnoni programin.

Ky është vetëm një nga projeksionet e hapësirës 13-dimensionale MFCC në hapësirën 3-dimensionale, por mund ta shihni se çfarë dua të them - pikat e kuqe, vjollcë dhe blu merren nga mikrofona të ndryshëm: (Plantronix, mikrofona të integruar, Jabra), por tingulli u shqiptua vetëm.

Sidoqoftë, meqenëse nuk mund të ofroj asgjë më të mirë, do të përdor gjithashtu metodën standarde - llogaritjen e koeficientëve MFCC.

Për të mos u gabuar në zbatim, në versionet e para të programit u përdor si bazë kodi nga programi i mirënjohur CMU Sphinx, më saktë zbatimi i tij në C, i quajtur pocketsphinx, i zhvilluar në Universitetin Carnegie Mellon ( paqja qoftë me ata të dy (c) Hottabych ).

Kodet burimore të pocketsphinx janë të hapura, por problemi është se nëse i përdorni, duhet të shkruani tekst në programin tuaj (si në kodin burim ashtu edhe në modulin e ekzekutueshëm) që përmban, ndër të tjera, sa vijon:

* Kjo punë u mbështet pjesërisht nga financimi nga Agjencia e Projekteve Kërkimore të Avancuara * Mbrojtjes dhe Fondacioni Kombëtar i Shkencës * Shtetet e Bashkuara të Amerikës, dhe Konsorciumi CMU Sphinx Speech.
Kjo më dukej e papranueshme dhe më duhej ta rishkruaja kodin. Kjo ndikoi në performancën e programit (për më mirë, nga rruga, megjithëse "lexueshmëria" e kodit vuajti disi). Kryesisht falë përdorimit të bibliotekave "Intel Performance Primitives", por unë gjithashtu optimizova disa gjëra vetë, si filtri MEL. Sidoqoftë, testimi në të dhënat e testit tregoi se koeficientët e marrë MFCC janë plotësisht të ngjashëm me ato të marra duke përdorur, për shembull, mjetin sphinx_fe.

Në programet sfinksbaze, llogaritja e koeficientëve MFCC kryhet në hapat e mëposhtëm:

Hapi funksioni i bazës së sfinksit Thelbi i operacionit
1 fe_pre_theksimi Shumica e leximit të mëparshëm zbritet nga leximi aktual (për shembull, 0.97 nga vlera e tij). Një filtër primitiv që refuzon frekuencat e ulëta.
2 fe_hamming_dritare Dritarja Hamming – prezanton zbutjen në fillim dhe në fund të kornizës
3 fe_fft_real Transformimi i shpejtë i Furierit
4 fe_spec2 madhësi Nga spektri i zakonshëm marrim spektrin e fuqisë, duke humbur fazën
5 fe_mel_spec Ne grupojmë frekuencat e spektrit [për shembull, 256 copë] në 40 shtylla, duke përdorur shkallën MEL dhe koeficientët e peshimit
6 fe_mel_cep Marrim logaritmin dhe aplikojmë transformimin DCT2 në 40 vlerat nga hapi i mëparshëm.
Ne lëmë 13 vlerat e para të rezultatit.
Ekzistojnë disa variante të DCT2 (HTK, trashëgimi, klasike), që ndryshojnë në konstanten me të cilën ndajmë koeficientët që rezultojnë dhe një konstante të veçantë për koeficientin zero. Ju mund të zgjidhni çdo opsion, ai nuk do të ndryshojë thelbin.

Këto hapa përfshijnë gjithashtu funksione që ju lejojnë të ndani sinjalin nga zhurma dhe nga heshtja, të tilla si fe_track_snr, fe_vad_hangover, por ne nuk kemi nevojë për to dhe nuk do të shpërqendrohemi prej tyre.

Zëvendësimet e mëposhtme janë bërë për hapat për të marrë koeficientët MFCC:

Detyra nr. 3. Kontrolloni nëse një nga 6 tingujt e memorizuar është duke u shqiptuar

Programi origjinal Vocal Joystick përdori një perceptron me shumë shtresa (MLP) për klasifikim - një rrjet nervor pa këmbanat dhe bilbilat e reja.

Le të shohim se sa i justifikuar është përdorimi i një rrjeti nervor këtu.

Le të kujtojmë se çfarë bëjnë neuronet në rrjetet nervore artificiale.

Nëse një neuron ka N hyrje, atëherë neuroni ndan hapësirën N-dimensionale në gjysmë. Shpëton me një hiperplan. Për më tepër, në njërën gjysmë të hapësirës funksionon (jap përgjigje pozitive), por në tjetrën nuk funksionon.

Le të shohim opsionin [praktikisht] më të thjeshtë - një neuron me dy hyrje. Natyrisht do të ndajë hapësirën dydimensionale në gjysmë.

Le të jenë të dhëna vlerat X1 dhe X2, të cilat neuroni i shumëzon me koeficientët e peshimit W1 dhe W2 dhe shton termin e lirë C.


Në total, në daljen e neuronit (e shënojmë si Y) marrim:

Y=X1*W1+X2*W2+C

(le të kapërcejmë hollësitë rreth funksioneve sigmoid tani për tani)

Ne konsiderojmë se neuroni ndizet kur Y>0. Vija e drejtë e dhënë nga ekuacioni 0=X1*W1+X2*W2+C e ndan me saktësi hapësirën në një pjesë ku Y>0, dhe një pjesë ku Y<0.

Le të ilustrojmë atë që është thënë me numra specifikë.

Le të W1=1, W2=1, C=-5;

Tani le të shohim se si mund të organizojmë një rrjet nervor që do të funksiononte në një zonë të caktuar të hapësirës, ​​relativisht në një pikë, dhe jo në të gjitha vendet e tjera.

Nga figura mund të shihet se për të përshkruar një zonë në hapësirën dydimensionale, na duhen të paktën 3 vija të drejta, domethënë 3 neurone të lidhur me to.

Ne do t'i kombinojmë këto tre neurone së bashku duke përdorur një shtresë tjetër, duke marrë një rrjet nervor shumështresor (MLP).

Dhe nëse ne kemi nevojë që rrjeti nervor të punojë në dy zona të hapësirës, ​​atëherë do të na duhen të paktën tre neurone të tjerë (4,5,6 në figura):

Dhe këtu nuk mund të bësh pa një shtresë të tretë:

Dhe shtresa e tretë është pothuajse mësimi i thellë...

Tani le t'i drejtohemi një shembulli tjetër për ndihmë. Lëreni rrjetin tonë nervor të prodhojë një përgjigje pozitive në pikat e kuqe dhe një përgjigje negative në pikat blu.

Nëse do të më kërkonin të pres të kuqe nga blu në vija të drejta, do ta bëja diçka si kjo:

Por rrjeti nervor nuk e di apriori se sa direkte (neurone) do t'i nevojiten. Ky parametër duhet të vendoset përpara se të trajnohet rrjeti. Dhe një person e bën këtë në bazë të... intuitës ose provës dhe gabimit.

Nëse zgjedhim shumë pak neurone në shtresën e parë (tre, për shembull), mund të marrim një prerje si kjo, e cila do të japë shumë gabime (zona e gabuar është e hijezuar):

Por edhe nëse numri i neuroneve është i mjaftueshëm, si rezultat i trajnimit, rrjeti mund të "dështojë të konvergojë", domethënë të arrijë një gjendje të qëndrueshme që është larg nga optimali, kur përqindja e gabimeve është e lartë. Ashtu si këtu, shiriti i sipërm mbështetet në dy gunga dhe nuk do të largohet prej tyre. Dhe poshtë ka një zonë të madhe që gjeneron gabime:

Përsëri, mundësia e rasteve të tilla varet nga kushtet fillestare të trajnimit dhe sekuenca e trajnimit, domethënë nga faktorë të rastësishëm:

- Si mendoni, a do të arrinte ajo rrotë, nëse do të ndodhte, në Moskë apo jo?
- Si mendoni, a do të funksionojë apo jo rrjeti nervor?

Ekziston një moment tjetër i pakëndshëm që lidhet me rrjetet nervore. “Harresa” e tyre.

Nëse filloni të ushqeni rrjetin vetëm me pika blu dhe ndaloni të ushqeni ato të kuqe, atëherë ai mund të rrëmbejë lehtësisht një pjesë të zonës së kuqe për vete, duke lëvizur kufijtë e saj atje:

Nëse rrjetet nervore kanë kaq shumë mangësi dhe një person mund të tërheqë kufijtë në mënyrë shumë më efikase sesa një rrjet nervor, atëherë pse t'i përdorë ato fare?

Dhe ka një detaj të vogël, por shumë domethënës.

Mund ta ndaj fare mirë zemrën e kuqe nga sfondi blu me segmente të vijës së drejtë në hapësirën dydimensionale.

Mund ta ndaj fare mirë statujën e Venusit nga hapësira tredimensionale që e rrethon me avionë.

Por në hapësirën katërdimensionale nuk mund të bëj asgjë, më fal. Dhe në dimensionin e 13-të - edhe më shumë.

Por për një rrjet nervor, dimensioni i hapësirës nuk është pengesë. Unë qesha me të në hapësira të vogla, por sapo kalova përtej të zakonshmes, ajo më rrihte lehtësisht.

Sidoqoftë, pyetja është ende e hapur: sa i justifikuar është përdorimi i një rrjeti nervor në këtë detyrë të veçantë, duke marrë parasysh disavantazhet e rrjeteve nervore të listuara më sipër.

Le të harrojmë për një sekondë se koeficientët tanë MFCC janë në hapësirën 13-dimensionale dhe imagjinoni se ato janë dy-dimensionale, domethënë pika në një plan. Si mund të ndahet një tingull nga një tjetër në këtë rast?

Le të kenë pikat MFCC të tingullit 1 një devijim standard R1, që [përafërsisht] do të thotë se pikat që nuk devijojnë shumë nga mesatarja, pikat më karakteristike, janë brenda një rrethi me rreze R1. Në të njëjtën mënyrë, pikat të cilave u besojmë zërit 2 ndodhen brenda një rrethi me rreze R2.

Kujdes, pyetja: ku të vizatoni një vijë të drejtë që do ta ndante më mirë tingullin 1 nga tingulli 2?

Përgjigja sugjeron vetë: në mes midis kufijve të rrathëve. Ndonjë kundërshtim? Asnjë kundërshtim.
Korrigjim: Në program, ky kufi ndan segmentin që lidh qendrat e rrathëve në raportin R1:R2, që është më i saktë.

Dhe së fundi, të mos harrojmë se diku në hapësirë ​​ka një pikë që përfaqëson heshtje të plotë në hapësirën MFCC. Jo, nuk janë 13 zero, siç mund të duket. Kjo është një pikë që nuk mund të ketë një devijim standard. Dhe linjat e drejta me të cilat e shkëputëm atë nga tre tingujt tanë mund të vizatohen drejtpërdrejt përgjatë kufijve të rrathëve:

Në figurën më poshtë, çdo tingull korrespondon me një pjesë të hapësirës me ngjyrën e vet, dhe gjithmonë mund të themi se cilit tingull i përket kjo apo ajo pikë në hapësirë ​​(ose nuk i përket asnjë):

Epo, në rregull, tani le të kujtojmë se hapësira është 13-dimensionale, dhe ajo që ishte mirë të vizatohej në letër tani rezulton të jetë diçka që nuk përshtatet në trurin e njeriut.

Po, por jo ashtu. Për fat të mirë, në hapësirën e çdo dimensioni mbeten koncepte të tilla si një pikë, një vijë e drejtë, një [hiper]plan, një [hiper]sferë.

Ne përsërisim të gjitha veprimet e njëjta në hapësirën 13-dimensionale: gjejmë dispersionin, përcaktojmë rrezet e [hiper]sferave, lidhim qendrat e tyre me një vijë të drejtë, e presim atë me një [hiper]plan në një pikë po aq të largët nga kufijtë e [hiper]sferave.

Asnjë rrjet nervor nuk mund të ndajë më saktë një tingull nga një tjetër.

Këtu, megjithatë, duhet bërë një rezervë. E gjithë kjo është e vërtetë nëse informacioni rreth tingullit është një re pikash që devijojnë nga mesatarja në mënyrë të barabartë në të gjitha drejtimet, domethënë përshtaten mirë në hipersferë. Nëse kjo re do të ishte një figurë me formë komplekse, për shembull, një sallam i lakuar 13-dimensionale, atëherë i gjithë arsyetimi i mësipërm do të ishte i pasaktë. Dhe ndoshta, me trajnimin e duhur, rrjeti nervor mund të tregojë pikat e tij të forta këtu.

Por nuk do ta rrezikoja. Dhe unë do të përdorja, për shembull, grupe të shpërndarjeve normale (GMM), (që, nga rruga, bëhet në CMU Sphinx). Është gjithmonë më e këndshme kur kupton se cili algoritëm specifik çoi në rezultat. Jo si në një rrjet nervor: Oracle, bazuar në orët e shumta të zierjes mbi të dhënat e stërvitjes, ju thotë të vendosni që tingulli i kërkuar është tingulli #3. (Më shqetëson veçanërisht kur përpiqen t'ia besojnë kontrollin e një makine një rrjeti nervor. Si atëherë, në një situatë të pazakontë, mund të kuptohet pse makina u kthye majtas dhe jo djathtas? A urdhëroi Neuroni i Plotfuqishëm?).

Por grupet e shpërndarjeve normale janë një temë më vete e madhe që është përtej qëllimit të këtij artikulli.

Shpresoj se artikulli ishte i dobishëm dhe/ose e bëri trurin tuaj të kërcëllijë.

Edhe para lëshimit të ndërfaqes Cortana për Windows 10, e cila është në fazën e zhvillimit, testimit dhe korrigjimit, përdoruesit u përpoqën të organizonin kontrollin zanor të kompjuterit. Ne do të flasim se si një funksion i tillë mund të zbatohet në Windows të lëshuar para 10 në artikullin e sotëm.

Cortana

Cortana është një asistent zanor i AI i zhvilluar nga Microsoft për Windows 10, Phone dhe Android me shpërndarje të mëtejshme të projektit në XBox dhe iOS. Ai zëvendëson shiritin klasik të kërkimit dhe kryen shumë veprime, të lidhura kryesisht me kërkimin e informacionit dhe komandave të sistemit, duke i marrë ato nga përdoruesi në formën e komandave zanore. Integrimi i thellë në Windows 10, mungesa e gjuhës ruse (për momentin), mbledhja e pothuajse të gjitha informacioneve rreth përdoruesit me dërgimin në serverët e Microsoft-it dhe mungesa e një versioni përfundimtar nuk i lejojnë shumicën e përdoruesve të marrin kontrollin e plotë zanor të kompjuterin e tyre.

Përveç Cortana-s, ka shumë aplikacione që ju lejojnë të kontrolloni kompjuterin tuaj përmes komandave zanore të përdoruesit. Le të hedhim një vështrim në produktet më të zakonshme për zgjidhjen e këtij problemi në Windows 7 dhe 10.

Lloji

Aplikacioni zë një pozitë udhëheqëse midis përdoruesve që flasin rusisht që duan të kontrollojnë kompjuterin përmes zërit. Shërbimi do të zëvendësojë lehtësisht një pjesë të konsiderueshme të funksioneve të Cortana në Windows 10, dhe në "shtatën" do të shtojë një funksion që shpesh demonstrohet në filma ku njerëzit kontrollojnë kompjuterët duke përdorur zërin e tyre.

Para fillimit të punës, ne krijojmë një llogari dhe dalim me një frazë kyçe, pasi të dëgjojmë të cilën aplikacioni do të aktivizohet. Pastaj vendosim një komandë zanore për të kontrolluar kompjuterin ose për të kryer një veprim të caktuar dhe për t'i caktuar një operacion atij (hapja e një aplikacioni, shkuarja në një vend të caktuar). Në dritaren për redaktimin e komandave të krijuara, bëhet e mundur të vendosni parametrat me të cilët do të hapet aplikacioni dhe të specifikoni mënyrën e nisjes (ekrani i plotë, me dritare).

Funksionaliteti i programit është shumë i kufizuar dhe ndërfaqja është larg stilit Metro të zbatuar në Windows 10. Kontrolli i plotë zanor i një PC duke përdorur Typle nuk mund të zbatohet: ai mbështet vetëm hapjen e skedarëve, aplikacioneve (me argumente) dhe ndjekjen e lidhjeve të paracaktuara . Madje nuk ka asnjë mbështetje për të kontrolluar luajtësin (pauzë, luani këngën tjetër).

Folësi

  • marrja e pamjeve të ekranit;
  • ndërrimi i paraqitjes së tastierës;
  • mbyllja e Windows 7;
  • nisja e aplikacionit;
  • hapja e një skedari.

Procesi i leximit dhe njohjes së informacionit të marrë nga mikrofoni fillon pas shtypjes së një tasti të caktuar (është më mirë të zgjidhni butonin që përdorni më së paku rrallë për të shmangur pozitivet e rreme të programit). Duhet shumë kohë për të përpunuar, për të njohur fjalimin dhe për të ekzekutuar një komandë - 5 ose më shumë sekonda, që është ajo që duhet të paguani për çmimin e lirë. Fjalët kyçe specifikohen me tekst, jo me fjalë, kështu që fjalimi i njohur krahasohet me tekstin e futur, i cili është larg idealit. Nuk ka kontroll të lojtarit në aplikacion.

Gorynych

Zhvilluesit e një pakete softuerike për menaxhimin e një kompjuteri me Windows 7 dhe 10 janë ekipi i parë vendas që lëshon një aplikacion për zgjidhjen e këtij lloj problemi. Thelbi i aplikacionit është "Dragon Dictate" perëndimor, ku u prezantua një modul softuerësh vendas për njohjen e të folurit rus.

Artikujt më të mirë mbi këtë temë