Teori di balik Linear Predictive Coding (LPC)

9
  • Apa teori di balik LPC?
  • Mengapa implementasi LPC tertentu dikatakan lebih toleran terhadap kuantisasi kesalahan transmisi atau pengkodean dibandingkan skema pengkodean suara terkompresi lainnya?

  • Dapatkah metode LPC juga digunakan untuk menghaluskan atau "prediksi" jangka pendek mirip dengan penggunaan metode filter Kalman?

  • Dalam kondisi atau kendala apa penggunaan LPC valid?
hotpaw2
sumber
"Mengapa (apakah) LPC dikatakan lebih toleran terhadap kesalahan pengiriman atau penyandian daripada beberapa skema penyandian suara terkompresi lainnya?" Siapa yang bilang? Saya tidak tahu LPC dengan sangat baik, tetapi saya pikir itu ada hubungannya dengan mengurangi redundansi, yang akan memiliki efek sebaliknya.
endolith
Pertanyaan ini menyesatkan karena terletak pada premis yang salah. Harap tutup dan perbaiki ini.
Dipan Mehta
Ada beberapa pertanyaan dan premis di sini. Menurut Anda, mana yang perlu diperbaiki?
hotpaw2
1
Pernyataan Why are(were) certain implementations of LPC said to be more tolerant of transmission or encoding errors quantization than other compressed voice encoding schemes?itu agak salah. Bisakah Anda mengutip referensi yang secara spesifik memberi tahu apa yang lebih baik dari yang lain?
Dipan Mehta
1
Itu sebenarnya pertanyaan saya. Saya mendengar ini di suatu tempat, tetapi tidak tahu mengapa ini mungkin dinyatakan.
hotpaw2

Jawaban:

14

Pertama, mengatakan linear predictive coding (LPC) adalah "lebih toleran terhadap kesalahan pengiriman atau penyandian" tidak sepenuhnya benar. Bentuk koefisien ditransmisikan membuat perbedaan besar. Misalnya, jika koefisien prediksi linier dipecahkan, mereka dapat menjadi sangat peka terhadap kuantisasi, seperti halnya koefisien filter IIR orde tinggi (ini karena filter sintesisnya adalah IIR, tetapi lebih lanjut tentang itu nanti). Namun, jika ditransmisikan dalam bentuk lain, masalah ini dapat dikurangi dengan mudah.

Salah satu caranya adalah dengan mentransfer koefisien refleksi. Jika Anda secara rekursif menyelesaikan filter prediksi linier urutan ke-k, koefisien urutan tertinggi pada setiap tahap disebut koefisien refleksi. Ini dapat digunakan bersama untuk sepenuhnya mencirikan sistem (yang dapat dengan mudah dilihat dari rekursi Levinson). Bahkan, Anda bisa menggunakan semuanya untuk membentuk filter kisi. Filter ini sering digunakan ketika kuantisasi menjadi perhatian, karena mereka jauh lebih kuat untuk jumlah bit yang rendah. Selain itu, jika besarnya koefisien refleksi ini dibatasi oleh satu, Anda dijamin memiliki filter stabil BIBO yang sangat penting untuk LPC di mana filter digunakan untuk mensintesis sinyal Anda. Ada metode lain seperti pasangan spektral garis yang sering digunakan, tetapi tidak

Sekarang, untuk menjawab pertanyaan pertama, teori LPC berputar di sekitar pemodelan saluran vokal. Pada dasarnya, kami memodelkan ucapan sebagai getaran udara sebagai input ke tabung beberapa struktur. Anda dapat mencari beberapa sumber daya yang lebih detail untuk menyempurnakan model ini (panjang tabung, intensitas udara, struktur dll). Sumber daya ini menghubungkan struktur ini secara langsung dengan filter IIR menanggapi berbagai rangsangan, white noise misalnya.

Jadi ketika kita memecahkan koefisien prediksi linear, kita mencari koefisien sehingga jika kita memasukkan sinyal kita (suara misalnya) ke dalam filter FIR yang dibuat dari koefisien, kita mendapatkan white noise sebagai output. Jadi pikirkan apa artinya itu. Kami memasukkan sangatsinyal berkorelasi, dan mengeluarkan urutan derau putih. Jadi sebenarnya, kami menghapus semua ketergantungan linear dari sinyal itu. Cara lain untuk melihat ini, adalah bahwa semua informasi yang bermakna terkandung dalam koefisien yang menghapus ketergantungan linear ini. Oleh karena itu, kami dapat mentransfer koefisien ini (atau beberapa bentuknya seperti di atas), dan pihak penerima dapat membuat kembali sinyal. Ini dilakukan dengan membalikkan filter FIR prediktif linier untuk membuat filter IIR, dan memasukkan white noise. Jadi kompresi datang dari menghilangkan ketergantungan linear ini, dan mentransfer koefisien. Inilah sebabnya mengapa metode Burg juga kadang-kadang disebut sebagai metode entropi maksimum, karena bertujuan untuk memaksimalkan "keacakan" atau keputihan dari kebisingan keluaran dalam filter prediksi linear. Cara lain untuk melihat ini,

Untuk menjawab pertanyaan terakhir Anda, saya tidak yakin apa yang Anda tanyakan sepenuhnya. LPC, atau linear predictive coding dimaksudkan untuk "memampatkan" sinyal dengan asumsi bahwa itu dapat dimodelkan secara efisien seperti yang telah dibahas sebelumnya. Anda tentu dapat menggunakan prediksi linier untuk melakukan "prediksi jangka pendek" seperti yang telah Anda sebutkan. Ini adalah dasar implisit di balik metode AR resolusi tinggi yang digunakan untuk estimasi kepadatan spektral daya. Urutan autokorelasi dapat diperpanjang secara rekursif dari bentuknya yang terbatas dari catatan data terbatas hingga tak terbatas sebagai urutan autokorelasi teoretis dari urutan yang dilepaskan. Ini juga mengapa metode AR estimasi PSD tidak menunjukkan fenomena sidelobe.

Bryan
sumber
1
"teori LPC berputar di sekitar pemodelan saluran vokal" Apakah ini selalu benar? FLAC menggunakan LPC pada bentuk gelombang audio umum, bukan hanya suara.
endolith
3
Saya minta maaf, saya awalnya mempelajarinya melalui analogi pita suara sebagai model fisik dari mana itu berasal. Seperti yang saya katakan, ada tempat di mana mereka mempelajari ini jauh lebih dalam tentang ini. Tapi Anda benar, LPC cocok untuk bentuk gelombang audio umum. Seperti yang saya sebutkan, ini bekerja dengan baik pada spektrum impulsif. Sebagai akibat wajar, ini bekerja buruk pada sinyal bising di mana spektrum kurang impulsif (ini karena sinyal bising lebih baik dimodelkan sebagai proses ARMA).
Bryan