Xử lý tín hiệu ECG bằng Wavelet
Trang 1Phụ lục
1 Các họ wavelet được sử dụng
• Haar
• Daubechies Wavelets: dbN
• Biorthogonal:
www.bme.vn
Trang 2• Coiflets
• Symlets
Trang 32 Các lệnh sử dụng:
§ Awgn
Mục đích: Cộng nhiễu trắng Gaussian vào tín hiệu
Cú pháp: y =awgn(x,snr) : cộng nhiễu trắng Gaussian vào vector tín hiệu x
y=awgn(x,snr,sigpower) : sigpower là công suất của x tính theo dbW y=awgn(x,snr,’measured’): đo công suất trước khi cộng nhiễu
y=awgn(x,snr,state): khởi động lại trạng thái của bộ phát ngẫu nhiên rand về trạng thái số nguyên
y=awgn(…,powertype): chỉ ra đơn vị của snr và sigpower
§ Dwt Biến đổi wavelet rời rạc đơn mức
Mục đích: biến đổi wavelet 1 chiều rời rạc đơn mức
Cú pháp: [cA,cD]=dwt(X,’wname’): tính toán vecto hệ số xấp xỉ cA và chi tiết cD đạt từ phân tách wavelet của vecto X
[cA,cD]=dwt(X,’wname’,’mode’,MODE) [cA,cD]=dwt(X,Lo_D,Hi_D): tính phân tách wavelet với các
bộ lọc phân tách Lo_D thông thấp, bộ lọc phân tách Hi_D thông cao [cA,cD]=dwt(X,Lo_D,Hi_D,’mode’,MODE)
Mô tả: Thực hiện phân tách wavelet một chiều đơn mức với một wavelet nhất định
MODE chuỗi chứa chế độ mở rộng yêu cao, có thể tự chọn
§ Wavedec
Trang 4Mục đích: Phân tách wavelet một chiều đa mức
Cú pháp: [C,L]=wavedec(X,N,’wname’) [C,L]=wavedec(X,N,Lo_D,Hi_D)
§ Wmaxlev
Mục đích: Mức phân tách tối đa
Cú pháp: L=wxmaxlev(S,’wname’)
Mô tả:wmaxlev cho phân tách mức cho phép tối đa, nhưng khái quát giá trị nhỏ hơn được nhân Giá trị thông thường là 5 cho trường hợp 1 chiều Các hàm tổng hợp và tái tạo
§ Idwt
Mục đích:Biến đổi wavelet 1 chiều rời rạc ngược đơn mức
Cú pháp: X=idwt(cA,cD,’wname’) X=idwt(cA,cD,Lo_R,Hi_R) X=idwt(cA,cD,’wname’,L) X=idwt(cA,cD,Lo_R,Hi_R,L) X=idwt( ,’mode’,MODE)
§ Waverec
Mục đích: Tái tạo wavelet 1 chiều đa mức
Cú pháp: X=waverec(C,L,’wname’) X=waverec(C,L,Lo_R,Hi_R)
§ Wrcoef
Mục đích : Tái tạo nhánh đơn từ các hệ số wavelet một chiều
Cú pháp: X=wrcoef(‘type’,C,L,’wname’,N): tái tạo mức N X= wrcoef(‘type’,C,L,Lo_R,Hi_R,N):bộ lọc tái tạo mức N X= wrcoef(‘type’,C,L,’wname’): tái tạo mức tối đa
N=length(L)-2 X= wrcoef(‘type’,C,L,Lo_R,Hi_R)
Mô tả: tái tạo các hệ số của tín hiệu một chiều Type: xác định chỉ số tái tạo chi tiết hoặc xấp xỉ
§ Upcoef
Trang 5Mục đích:Tái tạo trực tiếp từ các hệ số wavelet 1 chiều
Cú pháp: Y=upcoef(O,X,’wname’,N) Y=upcoef(O,X,’wname’,N,L) Y=upcoef(O,X,Lo_R,Hi_R,N) Y=upcoef(O,X,Lo_R,Hi_R,N,L) Y=upcoef(O,X,’wname’)
Y=upcoef(O,X,’wname’,N)
Mô tả: O xác định loại chi tiết ‘d’ hay xấp xỉ ‘a’
Các tiện ích cấu trúc phân tách
§ Detcoef
Mục đích:Tách ra các hệ số chi tiết một chiều
Cú pháp D=detcoef(C,L,N) D=detcoef(C,L) Mức N cần 1≤N≤NMAX NMAX=length(L)-2
§ Appcoef
Mục đích: Tách ra các hệ số chi tiết một chiều
Cú pháp: A=appcoef(C,L,N) A=appcoef(C,L)
§ Upwlev
Mục đích: tái tạo đơn mức của phân tách wavelet 1 chiều
Cú pháp: [NC,NL,cA]=upwlev(C,L,’wname’) [NC,NL,cA]=upwlev(C,L,Lo_R,Hi_R)
Mô tả: thực hiện sự tái tạo đơn mức của cấu trúc phân tách[C,L] cho giá trị mới [NC,NL] và trích ra vector các hệ số của xấp xỉ cuối cA
Mức phân tách N=length(L)-2 Khử nhiễu
§ Ddencmp
Mục đích:Các giá trị mặc định để khử nhiễu hoặc nén
Trang 6Cú pháp: [THR,SORH,KEEPAPP,CRIT]=ddencmp(IN1,IN2,X): ) trả về các giá trị mặc định của nén va 2khu73 nhiễu
[THR, SORH, KEEPAPP]=ddencmp(IN1.’wv’,X): trả về giá trị mặc định trong khử nhiễu (nếu IN1=’den’) hoặc nén (nếu
IN1=’cmp’) của X
[THR,SORH,KEEPAPP,CRIT]=ddencmp(IN1,’wp’,X)
Mô tả : ddencmp là một hàm cho khử nhiễu và nén THR lá mưc ngưỡng, SORH để đặt ngưỡng cứng hoặc mềm, KEEPAPP cho phép giữ các hệ số xấp xỉ và CRIT (dung trong wavelet gói ) là tên entropy
IN1 là ‘den’ để khử nhiễu hoặc ‘cmp’ khi nén IN2 là ‘wv’ đối với wavelet hoặc ‘wp’ đối với wavelet gói
§ Wbmpen
Mục đích: Ngưỡng cấm trong khử nhiễu wavelet 1 chiều và 2 chiều
Cú pháp: THR=wbmpen(C,L,SIGMA,ALPHA): trả về ngưỡng tòan cục THR để khử nhiễu
Mô tả:SIGMA là độ lệch chuẩn của nhiễu trắng Gauss trung bình không trong mô hình khử nhiễu
ALPHA là tham số điều chỉnh độ cấm Nó phải là số thực lớn hơn
1 ALPHA có đặc trưng là 2
§ Wdcbm
Mục đích: Mức ngưỡng trong wavelet dùng kĩ thuật Birge-Massart
Cú pháp: [THR,NKEEP]=wdcbm(C,L,ALPHA)
[THR,NKEEP]=wdcbm(C,L,ALPHA,M) trả về ngưỡng phụ thuộc mức mức THR và số các hệ số được lưu NKEEP để khử nhiễu hoặc nén
Mô tả: ALPHA và M cần là các số thực lớn hơn 1 THR là một vector chiều dài j, THR(i) chứa các ngưỡng của mức i,j,M và ALPHA xác định kĩ thuật
- Ở mức j+1 (và các mức thô hơn ) mọi thứ đều được giữ
Trang 7- Với các mức I từ 1 đến j, các hệ số lớn nhất ni được giữ với
ni=M(j+2-i)ALPHA
- ALPHA đặc trưng =1.5 để nén và ALPHA=3 để khử nhiễu
- Giá trị mặc định của M là M=L(1)
§ Wdencmp
Mục đích: Khử nhiễu hoặc nén dùng wavelet
Cú pháp:
[XC,CXC,LXC,PERF0,PERFL2]=wdencmp(‘glb’,X,’wname’,N,THR,S ORH,KEEPAPP)
[XC,CXC,LXC,PERF0,PERFL2]=wdencmp(‘lvd’,X,’wname’,N,THR,S ORH)
[XC,CXC,LXC,PERF0,PERFL2]=wdencmp(‘lvd’,C,L,’wname’,N,TH)
§ Wden
Mục đích : Khử nhiễu 1 chiều tự động dung các wavelet
Cú pháp: [XD,CXD,LXD]=wden(X,TPTR,SORH,SCAL,N,’wname’):
trả về phiên bản đã khử nhiễu XD của tín hiệu vào X đạt được qua đặt ngưỡng các hệ số wavelet
[XD,CXD,LXD]=wden(C,L,TPTR,SORH,SCAL,N,’wname’):
trả về cùng các đối số ra, dung cùng các tùy chọn như trên, nhưng nhận được từ cấu trúc phân tách wavelet đầu vào [C,L] của tín hiệu khử nhiễu, ở mức N
Mô tả: wden là hàm khử nhiễu wden thực hiện một quá trình khử nhiễu tự động tín hiệu một chiều dùng các wavelet
TPTR gồm: - ‘rigrsure’ dùng nguyên tắc của Stein
- ‘heursure’ là biến thể heuristic của lựa chọn đầu
- ‘sqtwolog’ cho ngưỡng đa năng 2 log(.)
- ‘minimaxi’ cho đặt ngưỡng minimax SORH (‘s’or’h’) để đặt ngưỡng mềm (soft) hoặc cứng (hard)
Trang 8§ Wnoisest
Mục đích: Ước lượng nhiễu của c1c kệ số wavelet một chiều
Cú pháp: STDC=wnoisest(C,L,S)
Mô tả: Trả về ước lượng của độ lệch chuẩn của các hệ số số chi tiết ở các mức chứa trong vector vào S [C,L] là cấu trúc phân tách wavelet đầu vào
§ Thselect:
Mục đích: lựa chọn ngưỡng để khử nhiễu
Cú pháp: THR=thselect(X,TPTR)
Mô tả: là hàm có mục đích khử nhiễu một chiều
THR=thselect(X,TPTR) trả về gái trị đáp ứng ngưỡng X được xác định bởi chuỗi TPTR
TPTR có thể là: ‘rigrsure’,’heursure’,’sqtwolog’,’minimaxi’
§ Wthrmngn
Mục đích: quản lý thiết lập ngưỡng
Cú pháp: THR=wthmngr(OPTION,METHOD,VARARGIN) trả về một ngưỡng toàn cục hoặc các ngưỡng phụ thuộc giá trị OPTION và
METHOD
www.bme.vn