Sisukord:
- Samm: materjalid
- 2. samm: riistvara - 3D -printimine
- 3. samm: riistvara - elektroonilised komponendid
- 4. samm: tarkvara
- Samm: tarkvara - heli
- 6. samm. Tarkvara - näo ja kõne tuvastamine
- Samm 7: Tarkvara - pöörlev mootor
- 8. samm: tulevased täiustused
Video: Kõlariteadlik Camara süsteem (SPACS): 8 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:48
Kujutage ette konverentskõnet, kus ühte kaamerat ümbritseb mitu kõlarit. Sageli puutume kokku sellega, et kaamera piiratud vaatenurk ei suuda sageli rääkida kõnelevat inimest. See riistvarapiirang halvendab oluliselt kasutajakogemust. Kui kaamera suudab aktiivseid kõlareid vaadata, oleks kaugpublik kõne ajal rohkem vestlusse kaasatud. Selles projektis pakume välja (prototüübi) kaamerasüsteemi, mis tuvastab aktiivse kõlari ja jälgib seda, keerates kaamera kõlari poole. Süsteem kasutab nii visuaalset kui ka helipõhist lähenemist. Kui kaamerast tuvastatakse nägusid, määrab see kõneleja ja arvutab pöördenurga. Kui nägusid praeguse nurga all ei tuvastata, otsib süsteem kõlarit saabuvate helisignaalide suuna alusel.
Samm: materjalid
Adafruit Feather nRF52840 Express X 1
www.adafruit.com/product/4062
Elektreedi mikrofonivõimendi - MAX4466 X 2
www.adafruit.com/product/1063
Mikroservomootor X 1
www.adafruit.com/product/169
Androidi nutitelefon X 1
2. samm: riistvara - 3D -printimine
Kiireks rakendamiseks otsustasime vajalikud korpused 3D-printida. Korpuste jaoks on kaks põhikomponenti; pöördalus ja nutitelefoni alus. Kasutasime sellel lingil olevat pöördlauda (https://www.thingiverse.com/thing:141287), kus see pakub Arduino korpust allosas ja pöörlevat lauda, mida saab ühendada servomootoriga. Kasutasime sellelt lingilt nutitelefoni alust (https://www.thingiverse.com/thing:2673050), mis on kokkupandav ja reguleeritav nurgaga, nii et see võimaldab nurka mugavalt kalibreerida. Alloleval joonisel on kujutatud kokku trükitud 3D -osad.
3. samm: riistvara - elektroonilised komponendid
Juhtmega komponente on neli; Adafruit Feather, kaks mikrofoni ja mootor. Kompaktse pakendi jaoks jootsime (hallid ringid) juhtmed ilma leivaplaati kasutamata. Allpool kirjeldatakse vooluahelat ja tegelikku artefakti.
4. samm: tarkvara
Meie süsteem kasutab kõlari jälgimiseks peamiselt näotuvastuse visuaalset teavet, kuna see on täpsem. Selleks, et sulg saaks Androidi rakendusest visuaalset teavet, kasutame peamise suhtlusmeetodina Bluetooth Low Energy.
Kui nägu tuvastatakse, arvutab rakendus nurga, mida mootor peab pöörama, et kõlar teravustada kaadri keskel. Lahustasime võimalikud stsenaariumid ja käitusime järgmiselt.
- Kui nägu (d) tuvastatakse ja ta räägib, arvutab see kõlarite keskpunkti ja tagastab sule suhtelise nurga.
- Kui nägu (d) tuvastatakse ja keegi neist ei räägi, arvutab see ka nägude keskpunkti ja tagastab vastavalt nurga.
- Kui ühtegi nägu ei tuvastata, muudab süsteem kõlarite jälgimise loogika visuaalsest heliks.
Tarkvara SPACS asub aadressil
Samm: tarkvara - heli
Heli (YH)
Sissetuleva heli allika leidmiseks proovisime kõigepealt kasutada kahe mikrofoni vahelist ajavahet. Kuid see ei olnud nii täpne, kui me ootasime, kuna Arduino Leopardi proovivõtu sagedus (~ 900 Hz), kus helisignaale testisime, olid aeglased, nii et see ei suutnud 10 cm kaugusel asuvate mikrofonide vahelist ajavahet üles võtta.
Muutsime plaani kasutada kahe sisendsignaali intensiivsuse erinevust. Selle tulemusena võtab sulg kaks helisignaali ja töötleb neid, et tuvastada, kust heli tuli. Töötlemist saab kirjeldada järgmiste sammudega:
- Võtke kahest mikrofonist sisendid ja lahutage nihe signaalide amplituudide saamiseks.
- Kogunege amplituudide absoluutväärtused MIC kohta 500 vastuvõtja kohta.
- Salvestage kogunenud väärtuste erinevus 5 pesaga järjekorda.
- Tagastage järjekordade summa lõpliku erinevusväärtusena.
- Võrrelge lõppväärtust künnistega, et otsustada, kust heli pärineb.
Leidsime läve, joonistades lõpliku väärtuse erinevates olukordades, sealhulgas vasakult ja paremalt tulev heli. Lisaks lõppväärtuse künnistele määrasime müra filtreerimiseks teises etapis ka teise künnise kogunenud amplituudide keskmisele.
6. samm. Tarkvara - näo ja kõne tuvastamine
Näotuvastuseks kasutasime Google'i välja antud ML Kit for Firebase'i (https://firebase.google.com/docs/ml-kit). ML Kit pakub näotuvastuse API -d, mis tagastab iga näo ja selle vaatamisväärsuste, sealhulgas silmade, nina, kõrvade, põskede ja suu erinevate punktide piirdekaardi. Kui näod on tuvastatud, jälgib rakendus suu liikumist, et teha kindlaks, kas inimene räägib. Kasutame lihtsat lävepõhist lähenemisviisi, mis tagab usaldusväärse jõudluse. Me kasutasime tõsiasja, et suu liikumine suureneb nii horisontaalselt kui ka vertikaalselt, kui inimene räägib. Arvutame suu vertikaalse ja horisontaalse kauguse ning arvutame iga kauguse standardhälbe. Kaugus normaliseeritakse näo suuruse järgi. Suurem standardhälve näitab rääkimist. Selle lähenemisviisi piirang on see, et iga tegevus hõlmab suu liigutamist, sealhulgas söömist, joomist või haigutamist. Kuid sellel on madal vale -negatiivne määr.
Samm 7: Tarkvara - pöörlev mootor
Mootori pöörlemine ei olnud pöörlemiskiiruse juhtimise tõttu nii lihtne, kui ootasime. Kiiruse kontrollimiseks kuulutame välja globaalse loenduri muutuja, mis võimaldab mootoril pöörata ainult siis, kui muutuja jõuab teatud väärtuseni. Samuti kuulutasime välja veel ühe globaalse muutuja, mis näitab, kas mootor liigub, et anda mikrofonidele teada, et vältida mootori pöörlemisest tulevat heli.
8. samm: tulevased täiustused
Üks piiranguid on see, et mootor muutub teatud nurkade all võnkuma. Tundub, et mootor ei ole piisavalt võimas, et ületada nutitelefoni pööramisel tekkivat pöördemomenti. Selle saab lahendada, kasutades võimsamat mootorit või reguleerides pöördemomendi vähendamiseks nutitelefoni asendit pöörlemiskeskuse poole.
Helipõhist helisuuna tuvastamist saaks täiustada keerukama meetodiga. Sissetuleva heli suuna kindlakstegemiseks tahaksime proovida akustilist kiirguse kujundamise meetodit. Oleme proovinud helisignaalide saabumisaega. Kuid sulgede proovivõtukiirus on piiratud ajavahe tuvastamiseks, kui mikrofonid on vaid umbes 10 cm kaugusel.
Selle prototüübi viimane puuduv osa on kasutatavuse hindamine. Üks paljutõotav viis hindamiseks on süsteemi integreerimine olemasoleva videokõne platvormiga ja kasutajate vastuste jälgimine. Need vastused aitavad süsteemi täiustada ja selle prototüübi järgmise iteratsiooni teha.
Soovitan:
ARVETE ARVESTAMISE JA INVARIDE KONTROLLI SÜSTEEM: 3 sammu
ARVETE ARVESTAMISE JA VARUDE KONTROLLI SÜSTEEM: Selle juhendi abil annan teile idee luua arvete ja varude juhtimissüsteem. Kasutades MS -i juurdepääsu. See on väga lihtne ja ei vaja rohkem arvuti- ega programmeerimisalaseid teadmisi. Kui teil on põhiteadmised pr Juurdepääs, tabelid. vormid ja aruanded
PIC16F877A põhine RFID -süsteem: 5 sammu
PIC16F877A põhine RFID -süsteem: RFID -süsteem on süsteem, mis võimaldab üliõpilasi, töötajaid ja teisi inimesi identifitseerida RFID -märgendi abil, et jälgida nende kohalolekut, tööd, tööaega ja palju muud. See artikkel on JLCPCB sponsor. Ma tõesti tänan JLCPCB sponsorluse eest
Raspberry Pi sisekliima jälgimise ja kontrollimise süsteem: 6 sammu
Raspberry Pi sisekliima jälgimise ja kontrollimise süsteem: inimesed tahavad oma majas mugavalt tunda. Kuna meie piirkonna kliima ei pruugi meile sobida, kasutame tervisliku sisekeskkonna säilitamiseks paljusid seadmeid: kütteseadet, õhujahutit, niisutajat, õhukuivatit, puhastit jne. Tänapäeval on see
AQUARIUM EVAPORATION TOP OFF SÜSTEEM: 6 sammu
AQUARIUM EVAPORATION TOP OFF SÜSTEEM: Aurustumine vähendab akvaariumi vee hulka ja kui seda ei kompenseerita, muudab see ülejäänud vee keemiat. Sellistel muudatustel on negatiivne mõju akvaariumi eluvormidele. Seetõttu on oluline, et ma
Nutikas hajutatud IoT ilmaseire süsteem NodeMCU abil: 11 sammu
Nutikas hajutatud IoT ilmaseire süsteem NodeMCU abil: Te kõik võiksite olla teadlikud traditsioonilisest ilmajaamast; aga kas olete kunagi mõelnud, kuidas see tegelikult toimib? Kuna traditsiooniline ilmajaam on kulukas ja mahukas, on nende jaamade tihedus pindalaühiku kohta väga väike, mis aitab kaasa