4.1 Đề xuất và xây dựng thuật toán lọc nhiễu thở
4.1.2 Thiết kế mơ hình và triển khai chi tiết thuật toán lọc nhiễu
Thiết kế mơ hình lọc nhiễu
Sơ đồ thực hiện mơ hình lọc nhiễu đã đề xuất được mơ tả như trong Hình 4.1.
Trong mơ hình này, tín hiệu ECG được thu đồng thời với tín hiệu ICG (ban đầu là TEB) thơng qua chính các điện cực đo ICG. Một mạch phần cứng sẽ có nhiệm vụ
tách thành phần tín hiệu ECG từ tổ hợp tín hiệu thu được từcác điện cực, sau đó được khuếch đại lên mức biên độ có ích. Tín hiệu ECG thu được giúp phân đoạn tín hiệu theo các chu kì nhịp tim, hỗ trợ thực hiện bộ lọc trung bình tồn bộ.
101
Hình 4.1 Sơ đồ thực hiện thuật tốn theo mơ hình lọc nhiễu thởđề xuất
Như vậy, thuật toán lọc nhiễu thở do tác giả đề xuất bao gồm hai pha xử lý chính đó là: (a) lọc sơ bộ nhiễu thở dựa trên phép biến đổi wavelet, (b) lọc nhiễu thở còn lại
bằng phương pháp trung bình tồn bộ.
Phép biến đổi wavelet
Trên thực tế khi triển khai, thuật toán được sử dụng phổ biến nhất trong biến đổi wavelet rời rạc là thuật toán biến đổi wavelet nhanh Mallat. Bản chất của phép biến
đổi này trong xử lý tín hiệu là sử dụng bộ mã hóa băng con hai kênh kết hợp với các
bộ lọc gương cầu phương (QMF).
Tín hiệu được phân giải thành các băng tần nhỏ hơn bằng cách tích chập với đáp
ứng xung của bộ lọc thơng thấp và thơng cao (Lo_D và Hi_D). Sau đó số mẫu được
giảm đi hai lần bằng cách chỉ lấy các phần tử có số thứ tự chẵn, sau đó q trình phân
giải được lặp lại cho đến khi đủ số mức cần thiết hoặc sốlượng dữ liệu cịn lại là 1. Bằng cách này, tín hiệu có thể phân giải thành các băng tần khác nhau được đại diện bằng các bộ hệ số xấp xỉ và hệ số chi tiết ở mỗi mức phân giải. Các hệ số xấp xỉ đại diện cho thành phần tần số thấp của tín hiệu trong khi các hệ số chi tiết đại diện cho thành phần tần số cao của tín hiệu.
Vị trí các đỉnh R
Chu kỳ 1
Lọc wavelet
Tách dãy dTEB/dt đã lọc thành các chu kỳ
Chuẩn hóa chiều dài
Đạo hàm và lọc thơng thấp
Chuẩn hóa
chiều dài Chuẩn hóa chiều dài Chuẩn hóa chiều dài
Tính trung bình cộng của n chu kỳ Phát hiện đỉnh R
(Pan-Tompkins)
Một chu kì tín hiệu ICG
(đại diện cho n chu kỳ)
Dãy tín hiệu TEB Dãy tín hiệu ECG
Chu kỳ 2 Chu kỳ 3 Chu kỳ ... Chu kỳ n
Chuẩn hóa chiều dài
102
Q trình khơi phục tín hiệu từ các bộ hệ số là quá trình ngược lại với quá trình phân giải. Các hệ số xấp xỉ và hệ số chi tiết trước khi kết hợp với nhau cần đi qua bộ tăng mẫu (nội suy) để có độ dài phù hợp bằng cách thêm giá trị 0 vào phần tử có chỉ
số lẻ, sau đó đi qua bộ lọc thơng thấp và thơng cao cho q trình khơi phục (Lo_R và
Hi_R). Quá trình được thực hiện cho đến khi hết các mức phân giải. Nếu đã xác định được các băng tần chứa nhiễu, tín hiệu, q trình loại bỏ nhiễu được thực hiện bằng
cách cho tất cả giá trị của hệ sốtrong băng tần đó bằng 0 sau đó thực hiện q trình khơi phục tín hiệu.
Ngồi ra chúng ta có thể thiết lập ngưỡng phát hiện nhiễu và tín hiệu cho từng
băng tần để thực hiện loại bỏ nhiễu trong trường hợp cần thiết. Nếu tất cả các hệ số được giữ ngun, tín hiệu sau khơi phục phải giống hồn tồn tín hiệu trước khi phân
giải, q trình này được gọi là khơi phục hồn hảo.
Q trình thực hiện thuật tốn Mallat theo chiều phân giải và khơi phục tín hiệu
được đơn giản hóa như trong Hình 4.2. Trong đó, Lo_D và Hi_D là bộ lọc thông thấp và thông cao dành cho phân giải tín hiệu, Lo_R và Hi_R là bộ lọc thơng thấp và thơng cao dành cho khơi phục tín hiệu, cAj và cDj là hệ số xấp xỉ và hệ số chi tiết tại mức phân giải j, S là dữ liệu đầu vào.
Tất cả các phép biến đổi wavelet rời rạc thuận DWT và ngược IDWT đều được thực hiện dựa trên chuỗi (𝑤𝑛)𝑛∈𝑍 từ wavelet filter bank sau đó biến đổi theo sơ đồ
trong Hình 4.3 để thu được các đáp ứng xung của bộ lọc thông thấp và thông cao tương ứng cho quá trình phân giải và khơi phục tín hiệu. Các bộ lọc này có chung các đặc điểm là bộ lọc có đáp ứng xung với chiều dài hữu hạn (FIR), chiều dài 2N, tổng
các hệ số bằng 1, hệ số chuẩn hóa (norm) bằng 1
√2. Trong Hình 4.3:
Hình 4.2 Sơ đồ thuật tốn Mallat phân giải và khơi phục tín hiệu
F G cA1 cA2 cA3 cD1 cD2 cD3 ... cD3 cA3 cD2 cA2 cA1 cD1
Chiều phân giải tín hiệu
Chiều khơi phục tín hiệu
Lo_D Hi_D ↓ 2 ↓ 2 Lo_D Hi_D ↓ 2 ↓ 2 Lo_D Hi_D ↓ 2 ↓ 2 Lo_R Hi_R ↑ 2 ↑ 2 ↑ 2 ↑ 2 Lo_R Hi_R ↑ 2 ↑ 2 Lo_R Hi_R ... S S
103
Hình 4.3 Tạo đáp ứng xung của bộ lọc dùng trong biến đổi wavelet
− Wavelet bank: là các mảng hữu hạn các phần tử được cấu thành từ các hàm wavelet trực giao, được gọi là các bộ lọc tỉ lệ (chưa chuẩn hóa).
− norm: là hàm tính giá trị hệ số chuẩn hóa, trả về giá trị độ lớn của một vector hay cịn gọi là độ dài Euclidean có cơng thức:
‖𝑣‖ = √∑ |𝑣𝑘|2 𝑁
𝑘=1
(4.1)
− qmf: là hàm lọc gương cầu phương (quadrature mirror filter), có chức năng đảo dấu các phần tử lẻ và nghịch đảo vị trí các phần tử trong mảng với cơng thức:
𝐻𝑖_𝑅(𝑘) = (−1)𝑘𝐿𝑜_𝑅(2𝑁 + 1 − 𝑘), với k = 1, 2, …, 2N. (4.2) − wrev: là hàm ngịch đảo vị trí các phần tử trong mảng hệ số bộ lọc.
Dựa vào đặc trưng về dải phổ của tín hiệu và nhiễu mà tác giả đã xác định, chúng ta có thể phân chia những bộ hệ số đại diện cho tín hiệu có ích, những bộ hệ số nào
đại diện cho nhiễu. Bằng cách loại bỏ đi những hệ số đại diện cho nhiễu, tín hiệu có
thểđược khơi phục mà khơng cịn sự có mặt của thành phần nhiễu. Tuy nhiên, vẫn sẽ
có sự xuất hiện của các băng tần chứa cả nhiễu và tín hiệu do hiện tượng chồng phổ.
Đối với tín hiệu ICG, tác giả tiến hành q trình đánh giá thử nghiệm bộ lọc dựa trên
biến đổi wavelet trên bộ dữ liệu trên bằng công cụ Wavelet Signal Designer của phần mềm Matlab với các họ hàm wavelet khác nhau, các mức phân giải và khôi phục tín hiệu ở các bậc hệ số khác nhau để đạt được bộ tham số lọc tốt nhất. Sau quá trình thử nghiệm, kết quả cho thấy mức phân giải phù hợp cho xử lý tín hiệu ICG là 10 mức, họ hàm wavelet phù hợp nhất cho giảm nhiễu là Daubechies 8 (db8) [82], nhiễu thở xuất hiện hiện chủ yếu ở các mức phân giải 8, 9, 10. Bằng cách loại bỏ các hệ số chi tiết ở các mức phân giải 8, 9, 10, các hệ số xấp xỉ được giữ nguyên, nhiễu thở có thể
được loại bỏ sơ bộ mà ít làm méo dạng đến tín hiệu sau khi thực hiện q trình khơi
phục tín hiệu. Lo_R = W / norm(W) Hi_R = qmf(Lo_R) Lo_D = wrev(Lo_R) Hi_D = wrev(Hi_R) Wavelet bank
104
Phép trung bình toàn bộ
Thuật tốn trung bình tồn bộ tính tốn một mẫu tín hiệu ICG đại diện cho một chuỗi các chu kỳ tín hiệu ICG tại đầu vào. Việc thực hiện thuật toán được tiến hành dựa trên sựphân đoạn tín hiệu ICG (ban đầu là TEB) thành các chu kì tim. Các chu kì tim này được đánh dấu bằng cách đồng bộ trên trục tọa độ thời gian với đỉnh R của tín hiệu ECG tham chiếu. Do đó việc thu nhận tín hiệu ECG đồng thời với việc thu nhận tín hiệu ICG là cần thiết. Phần thuật tốn trung bình tồn bộ sẽ bao gồm hai pha chính là phát hiện đỉnh R trong tín hiệu ECG và trung bình tồn bộ.
a) Thuật tốn phát hiện đỉnh R trong tín hiệu ECG
Thuật tốn được tác giả lựa chọn sử dụng để phát hiện đỉnh R trong tín hiệu ECG là thuật toán Pan-Tompkins. Thuật toán Pan-Tompkins là một thuật tốn điển hình trong phát hiện đỉnh R của tín hiệu ECG, được sử dụng một cách phổ biến và cho kết quả phát hiện đỉnh R với độ chính xác cao. Độ chính xác của thuật tốn đã được khẳng
định qua nhiều công bố trên thế giới. Do thuật toán Pan-Tompkins đã được giới thiệu
tại Mục 1.2.2.3 của Chương 1, trong phần này, tác giả khơng trình bày lại ngun lý hoạt động. Thuật tốn sẽđược thực hiện với độ dài tập tín hiệu ECG cốđịnh là 3.000 mẫu tương ứng với 15 giây (tần số lấy mẫu fs = 200 mẫu/giây).
b) Thuật tốn trung bình tồn bộ
Bằng cách ánh xạ tương ứng các vị trí của các đỉnh R trong tín hiệu ECG tham chiếu theo thuật tốn được mơ tả ở phần trước, các tập dữ liệu con này được phân
đoạn thành các chu kỳ dữ liệu của tim. Tập dữ liệu đại diện của thành phần dao động
tim được xây dựng bằng cách lấy trung bình tất cả các chu kỳ của dữ liệu. Tuy nhiên, độ dài của tất cả các chu kỳ dữ liệu không giống nhau do biến đổi nhịp tim. Để khắc
phục tình trạng này, độ dài tối thiểu của chu kỳ dữ liệu được xác định trước khi thực hiện tính trung bình tổng thể. Thuật tốn tính trung bình tất cả các chu kỳ dữ liệu để tạo ra một mẫu đại diện duy nhất của thành phần dao động tim. Việc tính từng phần tử của mẫu trung bình được thực hiện theo cơng thức (3.1).
Thuật tốn được thực hiện với độ dài tập tín hiệu ICG cố định là 3.000 mẫu, tương
ứng với 15 giây (tần số lấy mẫu fs = 200 mẫu/giây). Với nhịp tim của thiết bị tạo tín
hiệu ICG giả lập là 68 nhịp/phút, tổng cộng sẽ có 17 chu kì tín hiệu được trung bình.
Đầu ra của bộ lọc sẽlà chu kì trung bình đại diện của 17 chu kì trên. Việc thực hiện thuật tốn với các độ dài khác là hồn tồn có thể. Với các mức độ dài ngắn khác nhau, thuật tốn sẽ có những ưu điểm và nhược điểm tương ứng.
105