Masalah.
Ada sinyal tersendiri (contoh di bawah).
Diketahui, bahwa memiliki bentuk pulsa persegi panjang dengan aditif Gaussian white noise.
,
,
,
Dimana
adalah fungsi langkah Heaviside,
adalah kebisingan Gaussian putih aditif,
adalah ketinggian pulsa persegi panjang,
adalah indeks dari sampel pertama dari pulsa persegi panjang,
adalah indeks dari sampel terakhir dari pulsa persegi panjang,
adalah tingkat sinyal yang konstan,
adalah parameter yang dapat disesuaikan.
Semua parameter mungkin memiliki rentang nilai yang besar.
Diperlukan untuk menemukan nilai (durasi pulsa persegi panjang dalam sampel).
Solusi yang memungkinkan.
Saat ini, saya telah mencoba dua cara untuk menyelesaikan masalah ini.
Filter low pass dengan ambang batas.
Sebagai upaya pertama, saya telah menggunakan skema sederhana dengan filter low pass dan ambang batas.
1. Gunakan filter low pass FIR dengan frekuensi cutoff sama dengan.
2. Perkirakan rata-rata dan dispersi dari kebisingan yang disaring dari pertama sampel sinyal.
3. Tetapkan ambang batas.
4. Perkirakan.
5. Estimasi .
Kelebihan:
1. Algoritma ini sederhana.
2. Mudah untuk menulis implementasi yang cepat.
Cons:
1. Sulit untuk memperkirakan nilai efisien dari frekuensi cutoff filter. Di satu sisi nilai rendah dapat merusak bentuk pulsa pendek. Di sisi lain, nilai besar mengurangi efek dari filtrasi.
2. Algoritma tidak menggunakan semua informasi, kami memiliki tentang sinyal.
Analisis regresi
Sebagai upaya kedua, saya telah mencoba memperkirakan urutan input sampel dengan fungsi .
, , di mana adalah parameter kecil.
Untuk perkiraan saya telah menggunakan metode kuadrat terkecil dengan gradient descent untuk meminimalkan fungsi biaya.
1. Tetapkan nilai awal untuk , , , .
2. Lakukan gradient descent.
3. Tetapkan ambang batas .
4. Estimasi .
5. Estimasi .
Kelebihan:
1. Algoritma ini memberikan hasil dengan presisi yang baik.
2. Ini berfungsi untuk berbagai durasi.
Cons:
1. Ini sangat lambat.
Pertanyaan.
Bagaimanapun, saya tidak puas dengan ketepatan algoritma pertama dan dengan kecepatan yang kedua. Bagaimana Anda memecahkan masalah ini?
Apakah ada solusi klasik, yang gagal saya temukan?
Gagasan, tautan, umpan balik apa pun akan sangat dihargai.
Terima kasih.