Không thểsửdụng trực tiếpmô hìnhcơbản. Ta có thể giải quyếtvớimô hình 
độlệch trong hàm khử nhiễu chính wden: sd=wden(s,tptr,sorh,scal,n,wav),sẽ trảvề
phiênbản đã khử nhiễu sdcủa tín hiệugốc s: 
Tptr : quy tắc chọn ngưỡng rigrsure, heursure, sqtwolog, minimax 
Scale: ‘mln’:mô hìnhcơbảnvới nhiễu không trắng
‘sln’: mô hìnhcơbảnvới nhiễu khôngtỉlệ
Xử lý táitỉlệ ngưỡngsửdụngmộtdự đoán đơncủa nhiềumứcdựa trên cáchệ
sốmức 1. Các ngưỡngcần được táitỉlệbằngmộtdự đoán theomứccủa nhiễumức, 
sửdụng nhờdự đoán 
lev
s theotừngmức. Ướclượng này được cài đặt trongM-file 
wnoisest, xử lý trực tiếpcấu trúc phân tách waveletcủa tín hiệugốc. 
Có thểsửdụng hàm wdencmp thực hiện đặt ngưỡng cáchệsố wavelet, 
wdencmp cho phép định nghĩa chiến thuật đặt ngưỡng riêng tù y mục đích
                
              
                                            
                                
            
 
            
                 21 trang
21 trang | 
Chia sẻ: oanh_nt | Lượt xem: 2852 | Lượt tải: 3 
              
            Bạn đang xem trước 20 trang tài liệu Xử lý nhiễu tín hiệu ecg bằng wavelet, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
LUẬN VĂN TỐT NGHIỆP TRƯỜNG ĐHBKTP.HCM –năm 2007 
 53
CHƯƠNG 4: KẾT QUẢ 
4.1 SO SÁNH TƯƠNG QUAN HỆ SỐ BỘ LỌC WAVELET CHO TÍN HIỆU 
ECG 
Thực hiện phân tách và tái tạo tín hiệu ECG chuẩn 
Thực hiện phân tách nhiều mức. 
So sánh độ lệch dựa trên khả năng phân tách và tổng hợp lại tín hiệu ban đầu . 
Bảng 4.1 : 
 1 (e-012) 2 4 6 8 10 
Db2 6.4748 2.3559 4.6638 6.1919 6.9469 7.0313 
Db4 2.7374 5.8908 9.9667 10.877 11.019 11.161 
Db6 3.0669 4.6390 6.2075 6.9331 7.1845 7.2218 
Db8 6.6880 13.760 23.407 25.894 26.733 26.926 
Db10 5.8247 15.362 29.957 32.422 33.467 33.656 
Sym2 0.064748 2.3559 6.1919 6.9469 7.0313 7.0370 
Sym4 0.25047 1.4966 4.2730 4.7442 4.7571 4.8179 
Sym6 0.47162 2.3537 6.8341 7.5038 7.4993 7.5806 
Sym8 0.47873 0.8868 1.08 1.1688 1.2483 1.2577 
Sym10 0.02931 0.090594 0.20517 0.22427e 0.22649 0.23137 
Bior1.3 0.000888 0.0013323 0.001776 0.001776 0.001776 0.001776 
Bior2.4 0.000888 0.0013323 0.00222 0.00222 0.00222 0.00222 
Bior2.8 0.0017764 0.0017764 0.00222 0.00266 0.0031 0.0031 
Bior3.5 0.0013323 0.0017764 0.00266 0.00266 0.00266 0.00266 
Bior4.4 1.5890 4.2157 8.9582 9.8686 9.9756 10.062 
Bior6.8 27.844 82.112 1.7994 1.9971 2.0255 2.0663 
Coif1 55.822 3.0749 9.3299 10.696 10.671 10.811 
Coif2 16.636 45.998 92.724 103.29 105.46 106.25 
PDF created with pdfFactory Pro trial version www.pdffactory.com
www.bme.vn
LUẬN VĂN TỐT NGHIỆP TRƯỜNG ĐHBKTP.HCM –năm 2007 
 54
Coif3 0.66525 1.4270 2.2107 2.5169 2.4254 2.4254 
Coif4 6.2048 48.022 48.022 132.68 136.39 135.94 
Coif5 1496.6 9330.2 21836 28455 28574 28826 
haar 0.000444 0.0013323 0.001776 0.001776 0.001776 0.001776 
Nhận xét: 
Khả năng tương thích của các wavelet đối với các tín hiệu là rất cao nhưng giữa 
các wavelet với nhau thì độ chênh lệch lớn. 
Các wavelet ‘bior’ khả năng tương thích cao nhất đối với tín hiệu do kết hợp 
được các đặc tính đối xứng và các bộ lọc FIR, đồng thời độ ổn định cao, các hàm phân 
tách và hàm tái tạo là khác nhau. 
Sử dụng các wavelet có bậc càng cao đô ổn định tăng nhưng khả năng tái tạo 
lại tín hiệu là không tốt. 
Với các wavelet có độ trơn và đối xứng cao thì kết quả tương thích càng tăng . 
PDF created with pdfFactory Pro trial version www.pdffactory.com
LUẬN VĂN TỐT NGHIỆP TRƯỜNG ĐHBKTP.HCM –năm 2007 
 55
 Mô hình xử lý nhiễu bằng phương pháp đặt ngưỡng: 
PDF created with pdfFactory Pro trial version www.pdffactory.com
LUẬN VĂN TỐT NGHIỆP TRƯỜNG ĐHBKTP.HCM –năm 2007 
 56
Áp dụng khử nhiễu ECG: 
Khử nhiễu cho tín hiệu ECG 
Mục đích nghiên cứu: 
Cùng loại wavelet, mức nhiễu, loại tín hiệu, ta đánh giá tác động khử nhiễu trên 
các hệ số phân tách và khôi phục wavelet. 
Đánh giá tác động khử nhiễu với chương trình tự động viết trong matlab với các 
điều kiện sau đây: 
Áp dụng thử nghiêm trên các loại wavelet khác nhau (loại Daubechies, Symlet, 
Biorthogonal) với các thông số ngưỡng tính toán tự động . 
 Với cùng loại wavelet nhưng mức phân tách khác nhau tính từ giá trị ban đầu 
cho đến mức tối đa được chương trình đưa ra. 
Thay đổi mức độ nhiễu trắng khác nhau ảnh hưởng vào tín hiệu ECG ban đầu 
(giới hạn trong thực tế nhiễu ECG. 
Sử dụng biến đổi wavelet và mức phân tách tốt nhất : 
ü Thực hiện các mức ngưỡng khác nhau đối với các thành 
phần chi tiết đã được phân tách, tổng hợp và đánh giá kết 
quả so với đặt ngưỡng toàn cục. 
ü Thay đổi SNR và đánh giá kết quả . 
- Tạo giao diên chương trình trong matlab . 
- Áp dụng với tín hiệu thực tế. 
Tham số đánh giá tác động khử nhiễu là RMSE và SNR. 
Thay đổi mức độ nhiễu trắng khác nhau bằng cách thay đổi tỉ số SNR. 
Đánh giá khả năng khử nhiễu của từng loại wavelet khác nhau bằng RMSE 
Đánh giá tác động khử nhiễu trên các thành phần hệ số khai triển và khôi phục 
wavelet, sử dụng cùng loại wavelet, mức nhiễu và cùng loại tín hiệu thử . 
Chương trình cho phép đánh giá RMSE, của tín hiệu được so sánh wavelet, của 
thành phần hệ số wavelet xấp xỉ và các thành phần hệ số wavelet chi tiết. Chương trình 
cho phép so sánh giữ tín hiệu chưa nhiễu và tín hiệu đã thực hiện khử nhiễu. 
Tiến hành so sánh RMSE mổi thành phần hệ số wavelet của tín hiệu gốc với tín 
hiệu bị nhiễu, tín hiệu gốc với tín hiệu đã khử nhiễu ECG, ta sẽ thấy rõ được tác động 
PDF created with pdfFactory Pro trial version www.pdffactory.com
LUẬN VĂN TỐT NGHIỆP TRƯỜNG ĐHBKTP.HCM –năm 2007 
 57
của nhiễu trắng và khả năng loại bỏ nhiễu trắng trên mỗi thành phần xấp xỉ hoặc chi 
tiết trong khai triển wavelet . 
Các thông số của tín hiệu thử: 
File tín hiêu ECGdata.mat. 
Tốc độ lấy mẫu : 200 mẫu/s. 
Tần số của tín hiệu: 1,27389 Hz. 
Chu kì của tín hiệu: 0.785s. 
Số mẫu được lấy: 5455 mẫu. 
Biên độ tín hiệu : Min: -1.12823 mV 
 Max: 2.89307 mV. 
Tín hiệu thu được từ máy biopac. 
Thực hiện cấy nhiễu trắng Gaussian cho tín hiệu với tỉ SNR thay đổi được bằng 
hàm awgn. 
4.1.1 Phân tách tín hiệu: 
Sử dụng file tín hiệu ECGdata.mat 
Cấy nhiễu trắng với SNR=10dB (mức trung bình) 
Phân tách tín hiệu sử dụng wavelet ‘bior1.3’, mức phân tách 3, biểu diễn các hệ số 
xấp xỉ A3, hệ số chi tiết C1,C2,C3. 
 Hình 4.1: Tín hiệu có nhiễu 
PDF created with pdfFactory Pro trial version www.pdffactory.com
LUẬN VĂN TỐT NGHIỆP TRƯỜNG ĐHBKTP.HCM –năm 2007 
 58
 Hình 4.2: Hệ số chi tiết D1 
 Hình 4.3: Hệ số chi tiết D2 
 Hình 4.4: Hệ số chi tiết D3 
Hình 4.5: Hệ số xấp xỉ A3 
PDF created with pdfFactory Pro trial version www.pdffactory.com
LUẬN VĂN TỐT NGHIỆP TRƯỜNG ĐHBKTP.HCM –năm 2007 
 59
Nhận xét : 
Ảnh hưởng của nhiễu trắng lên thành phần hệ số chi tiết và thành phần hệ số 
xấp xỉ là như nhau . 
Ảnh hưởng của nhiễu trắng lên thành phần hệ số chi tiết của mức khai triển thứ 
nhất cao hơn các thành phần hê số chi tiết ở các mức khai triển khác. 
Ta không khử nhiễu lên thành phần hệ số xấp xỉ, chỉ khử nhiễu lên các thành 
phần hệ số chi tiết. 
Tác dụng khử nhiễu lên các thành phần hệ số chi tiết, của mức khai triển thứ 
nhất cao hơn của các thành phần hệ số chi tiết ở các mức khai triển khác. 
 4.1.2 Lấy ngưỡng tự động và khử nhiễu tự động : 
a.Thực nghiệm tín hiệu cấy nhiễu trắng có SNR= 10, sử dụng mức phân 
tách 3, tính RMSE của tín hiệu khứ nhiễu so với tín hiệu gốc . 
Bảng 4.2 
Loại 
wavelet 
Mức phân 
tách tối đa 
Ngưỡng tự động RMSE 
Db2 10 0.6773 mềm 0.0018 
Db4 9 0.6773 mềm 0.0018 
Db6 8 0.6773 mềm 0.0018 
Db8 8 0.6773 mềm 0.0018 
Db10 8 0.6773 mềm 0.0019 
Symlet 2 10 0.6773 mềm 0.0018 
Symlet 4 9 0.6773 mềm 0.0017 
Symlet 6 8 0.6773 mềm 0.0017 
Symlet 8 8 0.6773 mềm 0.0017 
Symlet 10 8 0.6773 mềm 0.0017 
Bior1.3 10 0.6773 mềm 0.0021 
Bior2.4 9 0.6773 mềm 0.0016 
Bior 2.8 8 0.6773 mềm 0.0016 
Bior3.5 8 0.6773 mềm 0.0017 
Bior4.4 9 0.6773 mềm 0.0018 
Bior6.8 8 0.6773 mềm 0.0017 
PDF created with pdfFactory Pro trial version www.pdffactory.com
LUẬN VĂN TỐT NGHIỆP TRƯỜNG ĐHBKTP.HCM –năm 2007 
 60
Coif1 10 0.6773 mềm 0.0018 
Coif2 8 0.6773 mềm 0.0017 
Coif3 8 0.6773 mềm 0.0017 
Coif4 7 0.6773 mềm 0.0018 
Coif5 7 0.6773 mềm 0.0017 
Harr 12 0.6773 mềm 0.0022 
Nhận xét: 
Với giá trị ngưỡng toàn cục được tính toán bằng hàm ddencmp ở cùng mức 
phân tách khác loại wavelet nhưng khả năng khử nhiễu tương đương nhau . 
Hệ số RMSE khá nhỏ nên khả năng khử nhiễu của các hàm trong wavelet cao . 
Ngưỡng tính toán càng nhỏ khả năng khử các nhiễu tín hiệu với SNR cao. 
b. Hàm khử nhiễu tự động wden sử dụng quy tắc chọn lựa ngưỡng: 
 Dựa trên 4 nguyên tắc: rigrsure, heursure,swtwolog, minimaxi 
 Thực hiện trên các loại wavelet khác nhau, với mức phân tách 3, hai loại 
ngưỡng mềm và ngưỡng cứng . 
Bảng 4.3 
 Rigsure (s/h) Heusure (s/h) Sqtwolog (s/h) Minimaxi (s/h) 
Db2 0.1908/0.1711 0.2795/0.2579 0.2822/0.2772 0.2632/0.2339 
Db4 0.1771/0.1555 0.2777/0.2777 0.2777/0.2777 0.2647/0.2220 
Db6 0.1851/0.1536 0.2792/0.2792 0.2792/0.2792 0.2721/0.2352 
Db8 0.1889/0.1543 0.2822/0.2822 0.2822/0.2822 0.0.279/0.2561 
Db10 0.1962/0.1637 0.2845/0.2845 0.2845/0.2845 0.2819/0.2673 
Sym2 0.1908/0.1711 0.2795/0.2579 0.2822/0.2772 0.2632/0.2339 
Sym4 0.1966/0.1652 0.2845/0.2617 0.2884/0.2842 0.2670/0.2328 
Sym6 0.1702/0.1481 0.2887/0.2769 0.2900/0.2900 0.2685/0.2222 
Sym8 0.1719/0.1481 0.2794/0.2759 0.2797/0.2797 0.2663/0.2391 
Sym10 0.1731/0.1468 0.2712/0.2633 0.2721/0.2797 0.2594/0.2234 
Bior1.3 0.2241/0.2217 0.2826/0.2996 0.2807/0.3214 0.2975/0.2467 
Bior2.4 0.2003/0.1674 0.2857/0.2566 0.2922/0.2675 0.2602/0.2053 
Bior2.8 0.1780/0.1546 0.2663/0.2398 0.2712/0.2509 0.2459/0.2030 
PDF created with pdfFactory Pro trial version www.pdffactory.com
LUẬN VĂN TỐT NGHIỆP TRƯỜNG ĐHBKTP.HCM –năm 2007 
 61
Bior3.5 0.1949/0.1652 0.2741/0.2495 0.2807/0.2693 0.2536/0.2114 
Bior4.4 0.1878/0.1488 0.2904/0.2833 0.2917/0.2917 0.2738/0.2234 
Bior6.8 0.1695/0.1463 0.2710/0.2620 0.2722/0.2722 0.2581/0.2198 
Coif1 0.2057/0.1796 0.2852/0.2629 0.2907/0.2851 0.2720/0.2512 
Coif2 0.1812/0.1545 0.2833/0.2627 0.2851/0.2795 0.2674/0.2308 
Coif3 0.1832/0.1545 0.2783/0.2712 0.2795/0.2813 0.2660/0.2411 
Coif4 0.1819/0.1483 0.2810/0.2728 0.2813/0.2813 0.2674/0.2353 
Coif5 0.1901/0.1565 0.2778/0.2707 0.2784/0.2784 0.2673/0.2441 
Haar 0.2371/0.2151 0.3227/0.3151 0.3238/0.3238 0.3012/0.2511 
Nhận xét 
Các quy tắc chọn ngưỡng sử dụng ngưỡng tính toán toàn cục với các mức 
ngưỡng lớn hơn so với mức ngưỡng tính tự động nên cho các kết quả RMSE lớn. 
Trong 4 quy tắc chọn lựa ngưỡng thì ‘rigrsure’ (quy tắc chọn ngưỡng ‘Sure’ sử 
dụng cho bộ ước lượng ngưỡng mềm, dựa trên cách đặt ngưỡng Sure)cho kết quả tốt 
nhất với ngưỡng cứng và tối thiểu được rủi ro đối với ngưỡng chọn. 
Đối với đặt ngưỡng SURE và minimax, khoảng 3% các hệ số được giữ lại. Các 
phương pháp khác mọi hệ số được đặt về 0. Các quy tắc chọn ngưỡng Minimax và 
SURE rõ hơn và tiện hơn khi có các chi tiết nhỏ của hàm nằm gần dải nhiễu. 
Với các loại wavelet khác nhau thì cho các hệ số phân tách khác dẫn đến giá trị 
ngưỡng đặt chung không triệt khử hết các hệ số nhiễu dẫn đến RMSE khác nhau. 
4.1.3 Giá trị ngưỡng bằng công thức trên lý thuyết: 
Công thức tính trên thực tế ngưỡng chung toàn cục và cục bộ cho tín hiệu: 
 SURE l = ))(ln.ln(.2 kk NN = 4.638 
 FIXTHES l = )ln(.2 kN = 4.148 
 MINIMAX l =0.3936+0.1829.lg( kN )= 1.077 
Đánh giá kết quả dựa trên RMSE 
PDF created with pdfFactory Pro trial version www.pdffactory.com
LUẬN VĂN TỐT NGHIỆP TRƯỜNG ĐHBKTP.HCM –năm 2007 
 62
 Bảng 4.4: 
 Sure Fixthes Minimax 
Db2 0.2939 0.2880 0.1688 
Db4 02886 0.2886 0.1706 
Db6 0.2902 0.2902 0.1658 
Db8 0.2929 0.2929 0.1669 
Db10 0.2947 0.2947 0.1732 
Sym2 0.2939 0.2880 0.1688 
Sym4 0.2983 0.2983 0.1680 
Sym6 0.3002 0.3002 0.1651 
Sym8 0.2908 0.2908 0.1643 
Sym10 0.2830 0.2830 0.1579 
Bior1.3 0.3388 0.3343 0.1889 
Bior2.4 0.3051 0.2879 0.1589 
Bior2.8 0.2718 0.2486 0.1564 
Bior3.5 0.2908 0.2859 0.1578 
Bior4.4 0.3018 0.3018 0.1593 
Bior6.8 0.2833 0.2833 0.1592 
Coif1 0.3007 0.3007 0.1688 
Coif2 0.2958 0.2958 0.1671 
Coif3 0.2893 0.2893 0.1677 
Coif4 0.2923 0.2923 0.1614 
Coif5 0.2882 02882 0.1631 
Haar 0.3324 0.3324 0.1863 
Nhận xét: Dựa trên kết quả tính RMSE: 
Sử dụng ngưỡng Minimax cho kết quả tốt hơn so với ngưỡng Sure và Fixthes 
do là ngưỡng cải tiến của các loại ngưỡng trên 
Các giá trị ngưỡng tính toán vẫn chưa đạt được giá trị tối ưu, ngưỡng lý thuyết 
đưa ra cho xử lý trên các mức hệ số chi tiết khác nhau, áp dụng cứng cho toàn bộ tín 
hiệu dưa trên số mẫu của tín hiệu nêu chưa có được giá trị mềm phù hợp với tín hiệu . 
PDF created with pdfFactory Pro trial version www.pdffactory.com
LUẬN VĂN TỐT NGHIỆP TRƯỜNG ĐHBKTP.HCM –năm 2007 
 63
So sánh kết quả với chương trình khử nhiễu tự động: 
Ngưỡng tính toán của chương trình cho kết quả khử nhiễu tốt hơn so với cách 
tính ngưỡng bằng công thức rồi đưa vào. Do khả năng ước lượng nhiễu trong matlab 
tốt hơn. Công thức ngưỡng đưa ra là các loại ngưỡng tính toán chung cho các loại tín 
hiệu nên đối với từng loại tín hiệu và từng loại nhiễu là không chính xác . 
4.1.4 Thử nghiệm trên tất cả các mức cho đến mức tối đa: 
Mức tối đa của wavelet được chọn tính tư động. 
Tính từ mức phân tách 1 cho đến mức tối đa. 
Thử nghiêm với chương trình khử nhiễu tự động . 
Nhiễu trắng với SNR=10dB. 
Bảng 4.5 : 
 1 2 3 4 5 6 7 8 
Db4 0.0015 0.0016 0.0018 0.0021 0.0024 0.0026 0.0027 0.0028 
Db6 0.0014 0.0013 0.0018 0.0022 0.0026 0.0027 0.0028 0.0028 
Db8 0.0014 0.0013 0.0018 0.0023 0.0027 0.0028 0.0029 0.0028 
Sym6 0.0014 0.0013 0.0017 0.0021 0.0024 0.0026 0.0027 0.0027 
sym8 0.0014 0.0013 0.0017 0.0021 0.0025 0.0026 0.0027 0.0027 
sym10 0.0014 0.0012 0.0017 0.0021 0.0025 0.0026 0.0027 0.0027 
Bior2.8 0.0014 0.0014 0.0016 0.0018 0.0020 0.0022 0.0027 0.0022 
Bior4.4 0.0014 0.0013 0.0018 0.0021 0.0024 0.0026 0.0027 0.0027 
Bior6.8 0.0014 0.0012 0.0017 0.0020 0.0023 0.0025 0.0027 0.0026 
Coif2 0.0014 0.0014 0.0017 0.0021 0.0024 0.0026 0.0027 0.0027 
Coif3 0.0014 0.0013 0.0017 0.0021 0.0024 0.0026 0.0027 0.0027 
Coif4 0.0014 0.0016 0.0018 0.0021 0.0024 0.0026 0.0027 0.0027 
Nhận xét: 
Tùy theo từng loại tín hiệu ta có các mức phân tách tối đa khác nhau, trung 
bình mức phân tách tối đa là 8 . 
Mức phân tách càng cao thi giá trị RMSE càng thấp do khi thực hiện tái tạo lại 
tín hiệu bị sai số lớn so với với tín hiệu gốc . 
PDF created with pdfFactory Pro trial version www.pdffactory.com
www.bme.vn
LUẬN VĂN TỐT NGHIỆP TRƯỜNG ĐHBKTP.HCM –năm 2007 
 64
Mức đô khử nhiễu tín hiệu là tương đương nhau đối với các loại wavelet khác 
nhau. 
4.1.6 Với giá trị SNR thay đổi: 
Mức nhiễu -20 dB < SNR< 18 dB. 
Với giá tri SNR < 0dB hàm khử nhiễu làm biến dạng tín hiệu không chính xác 
với mẫu tín hiệu ban đầu. 
Bảng 4.6 
 5dB 10dB 15dB 18dB 
Db4 0.0035 0.0023 0.0016 0.0013 
Db6 0.0036 0.0024 0.0017 0.0013 
Db8 0.0037 0.0025 0.0018 0.0014 
Sym6 0.0034 0.0023 0.0016 0.0013 
Sym8 0.0034 0.0024 0.0016 0.0013 
Sym10 0.0034 0.0024 0.0016 0.0013 
Bior2.8 0.0033 0.0019 0.0013 0.0011 
Bior4.4 0.0033 0.0023 0.0016 0.0013 
Bior6.8 0.0032 0.0022 0.0016 0.0012 
Coif2 0.0034 0.0023 0.0016 0.0012 
Coif3 0.0034 0.0023 0.0016 0.0012 
Coif4 0.0034 0.0024 0.0016 0.0013 
Nhận xét: 
Tín hiệu nhiễu càng nặng khả năng khử nhiễu tín hiệu giảm, đối với những tín 
hiệu nhiễu nặng không thể tách được hệ số xấp xỉ. 
Khả năng khử nhiễu của họ ‘bior’ khử nhiễu tốt hơn với các loại wavelet khác, do 
kết hợp được thuận lợi của cả hai họ Daubechies (moment khử) và Battle-Lemarie ( 
B-spline, hàm phân tách và tái tạo khác nhau và tính đối xứng) . 
4.1.7 Ước lượng nhiễu tín hiệu: 
Ước lượng độ lệch chuẩn trên toàn bộ tín hiệu: 
Phân tách toàn bộ tín hiệu bằng wavelet ở mức phân tách 5. 
PDF created with pdfFactory Pro trial version www.pdffactory.com
LUẬN VĂN TỐT NGHIỆP TRƯỜNG ĐHBKTP.HCM –năm 2007 
 65
Sử dụng ước lượng thô cho vector hệ số wavelet bằng hàm median trong matlab: 
6745.0/))((ˆ kdmedian j=s . 
Thử với tín hiệu ECG được cấy nhiễu có SNR=5dB,10dB 
Bảng 4.7 
 5dB 10dB 
db3 0.1699 0.2880 
sym6 0.1685 0.2907 
bior4.4 0.1650 0.2851 
Nhận xét: Độ lệch chuẩn được ước lượng trên các hệ số phân tách wavelet, với 
các wavelet khác nhau thì giá tri ước lượng khác nhau, do chưa có giá trị chính xác 
trên thưc tế bên không thể kết luận . 
Ước lượng độ lệch chuẩn trên hệ số chi tiết: 
- Sử dụng hàm wnoisest. 
- Sử dụng ước lượng thô bằng hàm median. 
- Thực hiện trên tín hiệu ECG có nhiễu, wavelet được sử dụng là db3 
mức phân tách 3. 
Bảng 4.8 
 Hàm Wnoisest Median 
Mức 1 0.2473 0.2473 
Mức 2 0.2788 0.2788 
Mức 3 0.3253 0.3253 
Nhận xét: 
Ước lượng độ lệch chuẩn của cả hai tín hiệu có giá trị giống nhau trên từng hệ 
số chi tiết của các mức phân tách. 
Hàm Wnoiset chỉ ước lượng dựa trên các hệ số wavelet còn công thức ước lượng 
median có thể sử dụng cho cả tín hiệu chưa phân tách và trên các hê số chi tiết của mỗi 
mức . 
PDF created with pdfFactory Pro trial version www.pdffactory.com
LUẬN VĂN TỐT NGHIỆP TRƯỜNG ĐHBKTP.HCM –năm 2007 
 66
4.2 GIẢI PHÁP GIẢM RMSE VÀ TĂNG SNR CHO TÍN HIÊU ECG ĐƯƠC 
KHỬ NHIỄU: 
Tác dụng khử nhiễu wavelet lên các hệ số chi tiết của các mức khai triển không 
đồng đều nhau. Tham số ngưỡng nhiễu l áp dụng như nhau lên hệ số chi tiết của tất 
cả các mức phân tách sẽ không cho kết quả khử nhiễu tốt nhất. 
Giải pháp sử dụng tham số ngưỡng nhiễu kl. Trong đó k hệ số thay đổi theo 
mức khai triển. Bằng cách lập trình hệ số k ta xác định được tham số ngưỡng nhiễu 
chính xác hơn cho từng mức phân tách wavelet khác nhau. 
PDF created with pdfFactory Pro trial version www.pdffactory.com
LUẬN VĂN TỐT NGHIỆP TRƯỜNG ĐHBKTP.HCM –năm 2007 
 67
Lưu đồ tính hệ số k cho tất cả các mức khai triển khử nhiễu wavelet như sau: 
PDF created with pdfFactory Pro trial version www.pdffactory.com
LUẬN VĂN TỐT NGHIỆP TRƯỜNG ĐHBKTP.HCM –năm 2007 
 68
Thủ tục tính tham số ngưỡng nhiễu kl, sao cho đạt RMSE tối ưu sẽ theo lưu đồ: 
PDF created with pdfFactory Pro trial version www.pdffactory.com
LUẬN VĂN TỐT NGHIỆP TRƯỜNG ĐHBKTP.HCM –năm 2007 
 69
Kết quả: 
Sử dụng chương trình áp dung trên với từng hệ số chi tiết : 
Lấy ngưỡng theo phương pháp SURE: l = 4.638 
Mức 1: Hệ số k tối ưu: k=0.65 
Mức 2: Hệ số k tối ưu: k=0.55 
Mức 3: Hệ số k tối ưu: k=0.55 
Mức 4: Hệ số k tối ưu: k=0.55 
Mức 5: Hệ số k tối ưu: k=0.55 
Lấy ngưỡng theo phương pháp UNIVERSAL: 
UNIVERSAL l = )ln(2 kk Nd 
Thực hiện trên ngưỡng toàn cục: 
 2s =0.2880 
 l =2.226 
 RMSE=0.0035 
Thực hiện với wavelet db3, mức phân tách 5, khử nhiễu trên từng mức 
Bảng 4.9 
 2s Ngưỡng 
Mức 1 0.2473 1.9782 
Mức 2 0.2788 2.0065 
Mức 3 0.3235 2.0556 
Mức 4 0.4552 2.316 
Mức 5 0.9686 3.1625 
Đặt ngưỡng trên từng mức: 
 RMSE = 0.3497 
PDF created with pdfFactory Pro trial version www.pdffactory.com
LUẬN VĂN TỐT NGHIỆP TRƯỜNG ĐHBKTP.HCM –năm 2007 
 70
Hình 4.6 
Nhân xét: 
Các nhiễu không còn trên tín hiệu hiệu nhưng tín hiệu sau khử nhiễu bị biến 
dạng so với tín hiệu gốc nên dẫn đến hệ số RMSE là khá lớn vậy chương trình chưa 
đạt được kết quả tốt khi khử nhiễu trên từng mức tín hiệu. 
4.3 GIẢI QUYẾT VỚI NHIỄU KHÔNG TỈ LỆ VÀ NHIỄU KHÔNG TRẮNG 
Không thể sử dụng trực tiếp mô hình cơ bản. Ta có thể giải quyết với mô hình 
độ lệch trong hàm khử nhiễu chính wden: sd=wden(s,tptr,sorh,scal,n,wav), sẽ trả về 
phiên bản đã khử nhiễu sd của tín hiệu gốc s: 
 Tptr : quy tắc chọn ngưỡng rigrsure, heursure, sqtwolog, minimax 
Scale: ‘mln’:mô hình cơ bản với nhiễu không trắng 
‘sln’: mô hình cơ bản với nhiễu không tỉ lệ 
Xử lý tái tỉ lệ ngưỡng sử dụng một dự đoán đơn của nhiều mức dựa trên các hệ 
số mức 1. Các ngưỡng cần được tái tỉ lệ bằng một dự đoán theo mức của nhiễu mức, 
sử dụng nhờ dự đoán levs theo từng mức. Ước lượng này được cài đặt trong M-file 
wnoisest, xử lý trực tiếp cấu trúc phân tách wavelet của tín hiệu gốc. 
Có thể sử dụng hàm wdencmp thực hiện đặt ngưỡng các hệ số wavelet, 
wdencmp cho phép định nghĩa chiến thuật đặt ngưỡng riêng tùy mục đích 
4.4 TỪ KẾT QUẢ TÍNH ĐƯỢC ÁP DỤNG VÀO TRONG THƯC TẾ: 
Sử dụng 3 loại tín hiệu nhiễu: 
PDF created with pdfFactory Pro trial version www.pdffactory.com
LUẬN VĂN TỐT NGHIỆP TRƯỜNG ĐHBKTP.HCM –năm 2007 
 71
NhieuECG1.mat 
Số mẫu : 12000 
NhieuECG2.mat 
Số mẫu: 3945 
NhieuECG3.mat 
Số mẫu: 12000 
Sử dụng wavelet db3 với mức phân tách 5 
Kết quả: 
NhieuECG1.mat : 
Hình 4.7 
NhieuECG2.mat 
Hình 4.8 
PDF created with pdfFactory Pro trial version www.pdffactory.com
LUẬN VĂN TỐT NGHIỆP TRƯỜNG ĐHBKTP.HCM –năm 2007 
 72
Dạng tín hiệu sau khử nhiễu có dạng tương đối giống với tín hiệu điện tim: 
NhieuECG3.mat 
Hình 4.9 
4.7 ĐƯA RA CHƯƠNG TRÌNH XỬ LÝ TRÊN THỰC TẾ VIẾT TRÊN NỀN 
GIAO DIỆN CỦA MATLAB 
Chương trình được viết trên nền matlab. 
Chức năng chính: 
- Cho phép chọn lưa loại wavelet, mức phân tách mong muốn 
- Khử nhiễu tự động dựa trên hàm wden 
- Cho phép đặt ngưỡng theo giá trị mong muốn và khử nhiễu trên 
nguyên tắc chon ngưỡng ‘rigrsure’ 
- Tính được tỉ số RMSE để đánh giá khả năng khử nhiễu tín hiệu 
Giới hạn chương trình: 
- Giao diện không đẹp 
- Chương trình không có khả năng khử nhiễu trên từng mức 
- Khó có khả năng cải tiến chất lượng 
- Chưa thể hiện hết được tính ưu việt của wavelet 
PDF created with pdfFactory Pro trial version www.pdffactory.com
LUẬN VĂN TỐT NGHIỆP TRƯỜNG ĐHBKTP.HCM –năm 2007 
 73
Hình 4.10 
PDF created with pdfFactory Pro trial version www.pdffactory.com
www.bme.vn