Thiết kế mơ hình và triển khai chi tiết thuật toán lọc nhiễu

Một phần của tài liệu Luận án Tiến sĩ Phát triển kỹ thuật thu nhận tín hiệu tim đồ trở kháng ngực ICG ứng dụng trong phép đo thông số cung lượng tim (Trang 114 - 119)

4.1 Đề xuất và xây dựng thuật toán lọc nhiễu thở

4.1.2Thiế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ơ đồ thc hin thut tốn theo mơ hình lc nhiu thđề xut

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 (adsbygoogle = window.adsbygoogle || []).push({});

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ơ đồ thut tốn Mallat phân gii và khơi phc tín hiu

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 ca b lc 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ó (adsbygoogle = window.adsbygoogle || []).push({});

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

Một phần của tài liệu Luận án Tiến sĩ Phát triển kỹ thuật thu nhận tín hiệu tim đồ trở kháng ngực ICG ứng dụng trong phép đo thông số cung lượng tim (Trang 114 - 119)