2012-10-20 39 views
6

Giả sử tôi có một mảng dữ liệu từ một ECG như thế này mộtlàm thế nào để sử dụng FFT để lọc một tiếng ồn 50Hz từ một mảng dữ liệu?

http://joachim.behar.perso.neuf.fr/Joachim/ECG_tuto_1/ECG_filters_basics/ecg_sample.txt

và tôi cần phải lọc một tiếng động 50Hz ra khỏi nó, sử dụng một thuật toán như thế

http://joachim.behar.perso.neuf.fr/Joachim/ECG_tuto_1/ECG_filters_basics/notch_filter.m

và kết quả sẽ giống như vậy (màu đỏ - được lọc, màu xanh - không lọc) được thấy trong Figure 2:

enter image description here

Cách tốt nhất để làm điều đó trong Java/android là gì? Thư viện này có giúp https://sites.google.com/site/piotrwendykier/software/jtransforms không?

Cảm ơn!)

+2

Tôi không phải là chuyên gia trong Android. Có vấn đề gì khi thực hiện FFT-> lọc 50Hz ra ngoài FFT^-1 không? – Acorbe

+1

Xem tại đây: http://stackoverflow.com/q/11539455 –

+2

phép nhân trong miền tần số là convolution trong miền thời gian. Convolution có thể nhanh hơn FFT. –

Trả lời

2

Trong bài viết ECG elementary filtering, một bộ lọc notch được áp dụng trong (mis-đánh số) phần trên Loại bỏ tiếng ồn đường dây điện; kết quả được hiển thị trong Figure 2. Java này ImageJplugin, Notch_Filters, "triển khai các bộ lọc Notch phổ biến nhất trong miền tần số." Mặc dù ví dụ không trực tiếp di động cho android, nhưng nó có thể cho phép bạn chọn một triển khai cụ thể để triển khai lại.

Lưu ý rằng bài viết mở rộng trên các giới hạn của phương pháp.

Phụ lục: Bộ lọc notch dựa trên FFT, vì vậy bạn sẽ cần cả hai.

+0

Đề xuất tuyệt vời, cảm ơn. Làm thế nào nó sẽ được getter để thực hiện bộ lọc notch vào một hoạt động Android phổ biến? :) –

+0

Tôi không chắc chắn. Hoạt động gì? EKG? Điện thoại? Tiếng ồn gì? – trashgod

+0

hoạt động android đơn giản, có một mảng từ tệp này http://joachim.behar.perso.neuf.fr/Joachim/ECG_tuto_1/ECG_filters_basics/ecg_sample.txt và cần phải lọc ra nhiễu 50hz. –

Các vấn đề liên quan