Bagaimana mengukur kesepakatan antara untuk kurva?


11

Saya memiliki nilai (diplot di bawah) dari nilai RSSI yang diharapkan dari waktu ke waktu yang ingin saya bandingkan dengan nilai RSSI yang diukur. Apa yang saya cari adalah cara untuk mengukurnya sehingga saya dapat mengubah parameter dan dapat membandingkan / membedakan berbagai pendekatan.

Ini adalah masalah yang sulit dalam pikiran saya karena saya tidak tahu bagaimana membandingkan sinyal dan belum memperhitungkan sinyal skala besar (bentuk keseluruhan) dan skala kecil (fluktuasi individu).

Sebagai contoh, berikut adalah plot dari satu set sinyal: RSSI vs Waktu

Dalam gambar saya dapat melihat bahwa sinyal ukuran merah kira-kira mengikuti model, tetapi juga melakukan pekerjaan yang baik untuk mensimulasikan beberapa kualitas sinusoidal model (di beberapa tempat). Adakah pikiran?

<> Menanggapi komentar pichenettes (yang tampaknya masuk akal), saya mengambil perbedaan dari dua nilai dan memplot abs (fft (diff)) dan mendapatkan ini: FFT

Saya tidak yakin apa yang membuat itu. Karena kami tidak memiliki freq sebenarnya, saya tidak yakin bagaimana skala sumbu, dan kemudian jika saya lakukan, metrik apa yang akan Anda gunakan?


2
Bagaimana dengan menghitung sesuatu seperti kesalahan kuadrat dalam rentang frekuensi yang berbeda (atau memecah yang berbeda menjadi pita frekuensi yang berbeda)? Pada rentang frekuensi yang lebih rendah itu akan mengukur kemampuan pelacakan keseluruhan - terlepas dari benjolan cepat. Dalam frekuensi yang lebih tinggi, ini akan mengukur kemampuan untuk melacak perubahan mendadak terlepas dari kesalahan DC yang lebih besar.
pichenettes

OK, saya menambahkan plot baru ke posting asli (sebagai edit) untuk menunjukkan fft (real (diff)), tapi saya tidak yakin apa yang harus dilakukan.
toozie21

2
Saya akan menghaluskan keduanya terlebih dahulu; maka Anda mendapatkan perjanjian yang sangat bagus (dengan asumsi itulah hasil yang Anda inginkan). PS Saya selalu merekomendasikan berbagi data yang Anda gunakan untuk membuat plot Anda sehingga kami dapat membantu dengan lebih mudah.
Emre

Seberapa besar perhatian Anda pada pencocokan fase pada frekuensi yang lebih tinggi? Perasaan yang saya dapatkan adalah bahwa Anda mungkin ingin membandingkan sinyal domain waktu secara langsung (setelah filter low-pass), kemudian membandingkan domain frekuensi untuk frekuensi yang lebih tinggi, mungkin hanya melihat besarnya dan mengabaikan fase.
Dan Bryant

@ toozie21 apakah Anda sudah tahu lokasi waktu di mana properti sinyal berubah? misal 8 ms, 17ms .. seterusnya.
user13107

Jawaban:


1

Jika sinyal tidak selaras, namun Anda memiliki petunjuk bahwa mereka lebih atau kurang "berarti" hal yang sama, atau merujuk ke data yang serupa, Anda dapat menggunakan algoritma Dynamic Time Warping (DTW) untuk mendapatkan korespondensi yang lebih baik (kemudian cukup mengambil nilai di lokasi yang sama). Anda bisa mengukur RMS, MSE atau apa pun yang Anda suka, menggunakan korespondensi itu. Untuk DTW, Anda mungkin ingin memeriksa: http://en.wikipedia.org/wiki/Dynamic_time_warping

Cara yang baik untuk menguraikan ide ini digunakan dalam Earth Mover Distance (EMD), yang menghitung upaya minimal untuk membawa sinyal ke penyelarasan, sebagai ukuran jarak. EMD disajikan di sini: http://ai.stanford.edu/~rubner/emd/default.htm

EMD memberi Anda jarak langsung, yang mungkin Anda gunakan untuk analisis lebih lanjut.


0

Saya menggunakan RMS dari vektor kesalahan sebagai ukuran. Karena saya berurusan dengan skema modulasi yang kompleks saya juga menggunakan EVM sebagai ukuran.


0

Saya mungkin akan menggabungkan beberapa pendekatan. Pertama saya akan menghaluskan kedua bentuk gelombang atau melakukan interpolasi spline untuk menghapus variasi skala besar. Anda mungkin ingin menggabungkan langkah lain setelah itu dari korelasi silang untuk berbaris, seandainya bias waktu tidak masalah bagi Anda. Setelah Anda mendapatkan puncak korelasi silang, Anda bahkan bisa menginterpolasi puncak itu pada bentuk parabola dan kemudian sampel ulang satu gelombang untuk mencocokkan yang lain. Saya akan menghitung RMSE antara dua bentuk gelombang pada titik itu dan menghasilkan satu metrik yang menunjukkan delta yang bervariasi perlahan.

Setelah itu saya akan mengurangi nilai interpolasi dari yang asli sehingga penyimpangan pada skala waktu kecil dinormalisasi. Dari sana Anda bisa mencoba RMSE mereka satu sama lain atau bahkan hanya menghitung varian masing-masing, untuk mendapatkan gagasan tentang berapa banyak "noise" yang Anda miliki tentang bentuk gelombang yang perlahan bervariasi, tergantung pada apa yang Anda butuhkan dan apa yang sebenarnya Anda coba untuk mengukur.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.