Speech Processing in Python

Rafly Rangghani Putra

Sosial Media


2 orang menyukai ini
Suka

Summary

Pemrosesan audio menjadi salah satu aspek yang semakin relevan dalam dunia teknologi saat ini. Dengan kemajuan dalam bidang kecerdasan buatan, analisis data, dan pengembangan aplikasi, kemampuan untuk bekerja dengan audio dalam konteks pemrograman menjadi keterampilan yang sangat berharga. Python, dengan ekosistemnya yang luas dan pustaka-pustaka yang kuat, telah menjadi salah satu pilihan utama bagi para pengembang untuk melakukan pemrosesan audio.

Pada portofolio ini, akan menjelajahi topik "Working with Audio in Python." Dimana akan menggali dasar-dasar pemrosesan audio, memperkenalkan pustaka-pustaka yang penting dalam Python, serta memberikan contoh implementasi yang praktis.

Description

Speech Processing

Speech processing adalah bidang studi yang berfokus pada pengolahan sinyal suara manusia. Ini mencakup analisis, pengenalan, sintesis, dan pemahaman berbagai aspek dari suara yang dihasilkan oleh manusia. Beberapa aplikasi speech processing termasuk speech recognition (pengenalan ucapan), speech synthesis (pembuatan ucapan), speaker recognition (pengenalan pembicara), dan analisis emosi dari ucapan.

Istilah-istilah yang Perlu Diketahui Untuk Audio dalam Bentuk Digital

  1. Frekuensi (Hz) 
    Frekuensi menggambarkan perbedaan panjang gelombang. Kita mengartikan frekuensi sebagai nada tinggi dan rendah.
  2. Intensitas (db / daya)
    Intensitas menggambarkan amplitudo (tinggi) dari gelombang.
  3. Sample Rate
    Sample Rate adalah bagaimana komputer membaca file audio.

Implementasi Pyhton dalam Speech Processing

  1. Membaca File Audio
    Ada banyak jenis file audio: mp3, wav, m4a, flac, ogg. Dalam kasus ini kita akan menggunakan jenis file wav.
  2. Memainkan File Audio
  3. Memuat dan Menampilkan Informasi Audio
  4. Visualisasi Audio
  5. Memotong bagian awal dan akhir yang diam (silent) dari file audio
  6. Memvisualisasikan bagian tertentu dari audio

Jenis-jenis representasi visual dari sinyal audio yang menunjukkan perubahan energi atau amplitudo dari berbagai frekuensi suara terhadap waktu:

Spectogram
Spectrogram adalah representasi visual dari spektrum frekuensi suatu sinyal audio terhadap waktu. Ini adalah grafik tiga dimensi yang menampilkan bagaimana energi frekuensi dalam sinyal audio berubah seiring dengan waktu.

Spectrogram biasanya direpresentasikan dalam dua dimensi, dengan sumbu horizontal mewakili waktu, sumbu vertikal mewakili frekuensi, dan intensitas warna (misalnya, skala warna atau grayscale) merepresentasikan amplitudo atau kekuatan energi pada frekuensi tertentu pada waktu tertentu.

  • Melakukan transformasi Short-time Fourier transform (STFT) pada sinyal audio yang disimpan dalam variabel y. Kemudian, mengonversi amplitudo hasil STFT ke dalam skala desibel (dB) dan menyimpannya dalam variabel S_db.
  • Membuat visualisasi dari spektrogram dari data audio yang telah di-transformasikan

Mel Spectogram
Mel Spectrogram adalah versi modifikasi dari spektrogram standar yang memiliki sumbu frekuensi yang diubah menjadi skala Mel. Skala Mel adalah skala yang lebih sesuai dengan cara pendengaran manusia mempersepsikan frekuensi suara.
Dalam pemrosesan audio, skala Mel digunakan untuk mengubah representasi frekuensi yang diukur dalam Hertz (Hz) menjadi unit Mel, yang lebih menggambarkan persepsi manusia terhadap tinggi rendahnya suara. Skala Mel lebih memperhitungkan cara pendengaran manusia merasakan perbedaan frekuensi, di mana perbedaan frekuensi yang kecil pada frekuensi rendah akan terdengar lebih besar daripada pada frekuensi tinggi.

  • Menghitung Mel Spectrogram dari data audio yang telah dimuat sebelumnya
  • Membuat visualisasi dari Mel Spectrogram yang telah dihitung sebelumnya menggunakan pustaka librosa. Mel Spectrogram ini direpresentasikan dalam bentuk grafik yang menunjukkan perubahan energi atau amplitudo dari berbagai frekuensi suara terhadap waktu.

Informasi Course Terkait
  Kategori: Speech Processing
  Course: Speech Pre Processing