Daftar Isi:
- Langkah 1: Bahan
- Langkah 2: Perangkat Keras - Pencetakan 3D
- Langkah 3: Perangkat Keras - Komponen Elektronik
- Langkah 4: Perangkat Lunak
- Langkah 5: Perangkat Lunak - Suara
- Langkah 6: Perangkat Lunak - Deteksi Wajah dan Bicara
- Langkah 7: Perangkat Lunak - Motor Berputar
- Langkah 8: Perbaikan di Masa Depan
Video: Sistem Camara Speaker-Aware (SPACS): 8 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:56
Bayangkan sebuah panggilan konferensi di mana beberapa speaker mengelilingi satu kamera. Sering kita jumpai di mana sudut pandang kamera yang terbatas seringkali gagal menatap orang yang berbicara. Keterbatasan perangkat keras ini secara signifikan menurunkan pengalaman pengguna. Jika kamera dapat menatap speaker aktif, audiens jarak jauh akan lebih terlibat dalam percakapan selama panggilan berlangsung. Dalam proyek ini, kami mengusulkan sistem kamera (prototipe) yang mendeteksi dan mengikuti speaker aktif dengan memutar kamera ke arah speaker. Sistem ini menggunakan pendekatan berbasis visual dan audio. Ketika wajah terdeteksi dari kamera, itu menentukan orang yang berbicara dan menghitung sudut untuk memutar. Saat wajah tidak terdeteksi pada sudut saat ini, sistem akan mencari speaker berdasarkan arah sinyal audio kedatangan.
Langkah 1: Bahan
Adafruit Feather nRF52840 Express X 1
www.adafruit.com/product/4062
Amplifier Mikrofon Electret - MAX4466 X 2
www.adafruit.com/product/1063
Motor Servo Mikro X 1
www.adafruit.com/product/169
Ponsel pintar Android X1
Langkah 2: Perangkat Keras - Pencetakan 3D
Untuk implementasi yang cepat, kami memutuskan untuk mencetak 3D enklosur yang kami butuhkan. Ada dua komponen utama untuk enklosur; meja putar dan dudukan smartphone. Kami menggunakan meja putar dari tautan ini (https://www.thingiverse.com/thing:141287), di mana ia menyediakan kasing Arduino di bagian bawah dan meja putar yang dapat dihubungkan dengan motor servo. Kami menggunakan dudukan smartphone dari tautan ini (https://www.thingiverse.com/thing:2673050), yang dapat dilipat dan disesuaikan sudutnya sehingga memungkinkan kami untuk mengkalibrasi sudut dengan nyaman. Gambar di bawah ini menunjukkan bagian cetakan 3D yang dirakit bersama.
Langkah 3: Perangkat Keras - Komponen Elektronik
Ada empat komponen kabel; Adafruit Feather, dua microphone, dan sebuah motor. Untuk kemasan kompak, kami menyolder (lingkaran abu-abu) kabel tanpa menggunakan papan tempat memotong roti. Di bawah ini menjelaskan diagram sirkuit dan artefak yang sebenarnya.
Langkah 4: Perangkat Lunak
Sistem kami terutama menggunakan informasi visual dari pengenalan wajah untuk mengikuti pembicara karena lebih akurat. Agar Feather mendapatkan informasi visual dari aplikasi Android, kami menggunakan Bluetooth Low Energy sebagai metode komunikasi utama.
Saat ada wajah yang terdeteksi, aplikasi menghitung sudut yang perlu diputar motor untuk memfokuskan speaker di tengah bingkai. Kami menguraikan skenario yang mungkin dan menangani seperti berikut:
- Jika wajah terdeteksi dan berbicara, ia menghitung titik tengah speaker dan mengembalikan sudut relatif ke Bulu.
- Jika wajah terdeteksi dan tetapi tidak satu pun dari mereka yang berbicara, itu juga menghitung titik tengah wajah dan mengembalikan sudut yang sesuai.
- Jika ada wajah yang tidak terdeteksi, sistem akan mengubah logika pelacakan speaker dari visual ke audio.
Perangkat lunak SPACS terletak di
Langkah 5: Perangkat Lunak - Suara
Suara (YH)
Untuk menemukan sumber suara yang masuk, pertama-tama kami mencoba menggunakan perbedaan waktu antara kedua mikrofon. Tapi itu tidak seakurat yang kami harapkan karena laju pengambilan sampel (~900Hz) Arduino Leopard, tempat kami menguji sinyal suara, lambat sehingga tidak dapat menangkap perbedaan waktu antara mikrofon yang berjarak 10cm.
Kami mengubah rencana untuk menggunakan perbedaan intensitas antara dua sinyal suara input. Akibatnya, bulu mengambil dua sinyal suara dan memprosesnya untuk mendeteksi dari mana suara itu berasal. Prosesnya dapat dijelaskan dengan langkah-langkah berikut:
- Ambil input dari dua mikrofon dan kurangi offset untuk mendapatkan amplitudo sinyal.
- Akumulasi nilai absolut dari amplitudo per MIC untuk 500 pickup.
- Simpan selisih nilai akumulasi ke antrian yang memiliki 5 slot.
- Kembalikan jumlah antrian sebagai nilai selisih akhir.
- Bandingkan nilai akhir dengan ambang batas untuk memutuskan dari mana suara itu berasal.
Kami menemukan ambang batas dengan memplot nilai akhir dalam berbagai keadaan termasuk suara yang datang dari kiri dan kanan. Di atas ambang batas untuk nilai akhir, kami juga menetapkan ambang batas lain untuk rata-rata akumulasi amplitudo pada langkah 2 untuk menyaring kebisingan.
Langkah 6: Perangkat Lunak - Deteksi Wajah dan Bicara
Untuk pengenalan wajah, kami menggunakan ML Kit for Firebase yang dirilis oleh Google (https://firebase.google.com/docs/ml-kit). ML Kit menyediakan API deteksi wajah yang mengembalikan kotak pembatas setiap wajah dan tengaranya, termasuk mata, hidung, telinga, pipi, dan titik berbeda pada mulut. Setelah wajah terdeteksi, aplikasi melacak gerakan mulut untuk menentukan apakah orang tersebut berbicara. Kami menggunakan pendekatan berbasis ambang batas sederhana yang menghasilkan kinerja yang andal. Kami memanfaatkan fakta bahwa gerakan mulut menjadi lebih besar baik secara horizontal maupun vertikal ketika seseorang berbicara. Kami menghitung jarak vertikal dan horizontal mulut dan menghitung standar deviasi untuk setiap jarak. Jarak dinormalisasi dengan ukuran wajah. Standar deviasi yang lebih besar menunjukkan berbicara. Pendekatan ini memiliki batasan bahwa setiap aktivitas yang melibatkan gerakan mulut, termasuk makan, minum, atau menguap, dapat dikenali sebagai berbicara. Tapi, ia memiliki tingkat negatif palsu yang rendah.
Langkah 7: Perangkat Lunak - Motor Berputar
Putaran motor tidak semudah yang kami harapkan karena kontrol kecepatan putaran. Untuk mengontrol kecepatan, kami mendeklarasikan variabel penghitung global sedemikian rupa sehingga memungkinkan motor berputar hanya ketika variabel mencapai nilai tertentu. Kami juga mendeklarasikan variabel global lain yang menunjukkan jika motor bergerak untuk memberi tahu mikrofon sehingga dapat menghindari suara yang berasal dari putaran motor.
Langkah 8: Perbaikan di Masa Depan
Salah satu keterbatasannya adalah motor menjadi goyang pada sudut-sudut tertentu. Sepertinya motor tersebut tidak cukup bertenaga untuk mengatasi torsi yang dihasilkan dengan memutar smartphone. Hal ini dapat diatasi dengan menggunakan motor yang lebih bertenaga atau mengatur posisi smartphone ke arah tengah putaran untuk mengurangi torsi.
Deteksi arah suara berbasis audio dapat ditingkatkan dengan metode yang lebih canggih. Kami ingin mencoba pendekatan akustik beamforming untuk menentukan arah suara yang masuk. Kami telah mencoba dengan waktu kedatangan sinyal audio. Namun, sampling rate Feather terbatas untuk mendeteksi perbedaan waktu ketika mikrofon hanya berjarak sekitar 10cm.
Bagian terakhir yang hilang dari prototipe ini adalah evaluasi kegunaan. Salah satu cara yang menjanjikan untuk mengevaluasi adalah mengintegrasikan sistem dengan platform panggilan video yang ada dan mengamati tanggapan pengguna. Tanggapan tersebut akan membantu untuk meningkatkan sistem dan membuat iterasi berikutnya dari prototipe ini.
Direkomendasikan:
Mood Speaker- Speaker Kuat untuk Musik Suasana Hati yang Akan Diputar Berdasarkan Suhu Sekitar: 9 Langkah
Mood Speaker- Speaker Kuat untuk Musik Suasana Hati yang Akan Diputar Berdasarkan Suhu Sekitar: Hai! Untuk proyek sekolah saya di MCT Howest Kortrijk, saya membuat Mood Speaker ini adalah perangkat speaker Bluetooth pintar dengan sensor yang berbeda, LCD dan WS2812b termasuk ledstrip. Speaker memutar musik latar berdasarkan suhu tetapi dapat
Mr. Speaker - Speaker Portabel DSP Cetak 3D: 9 Langkah (dengan Gambar)
Tn. Speaker - Speaker Portabel DSP Cetak 3D: Nama saya Simon Ashton dan saya telah membuat banyak speaker selama bertahun-tahun, biasanya dari kayu. Saya mendapatkan printer 3D tahun lalu, jadi saya ingin membuat sesuatu yang mencontohkan kebebasan unik desain yang dimungkinkan oleh pencetakan 3D. Saya mulai bermain dengan
Coco Speaker - Speaker Audio Kesetiaan Tinggi: 6 Langkah
Coco Speaker - High Fidelity Audio Speakers: Hello Instructabler's, Siddhant di sini.Apakah Anda ingin mendengarkan suara berkualitas tinggi? Mungkin Anda akan senang… Yah… sebenarnya semua orang suka. Disajikan di sini adalah Coco-Speaker - Yang tidak hanya memberikan kualitas suara HD tetapi juga "MEMENUHI MATA
Cara Mengonversi SPEAKER Apa Pun Menjadi SPEAKER BLUETOOTH: 5 Langkah
Cara Mengonversi SPEAKER Apa Pun Menjadi SPEAKER BLUETOOTH: Jika Anda memiliki sistem home theater lama seperti saya, maka Anda telah menemukan opsi konektivitas yang sangat populer, yang disebut Bluetooth, tidak ada di sistem Anda. Tanpa fasilitas ini, Anda harus menghadapi kekacauan koneksi AUX normal dan tentu saja, jika Anda
Ubah Semua Speaker Menjadi Speaker Bluetooth: 4 Langkah
Ubah Semua Speaker Menjadi Speaker Bluetooth: Beberapa tahun yang lalu, speaker portabel biasanya memiliki jack 3.5mm dan ditenagai oleh baterai AA. Menurut standar saat ini, itu agak ketinggalan jaman terutama baterai karena setiap gadget saat ini memiliki baterai yang dapat diisi ulang. Soket audio sangat