.6 Giao diện phần mềm khi thiết kế bộ lọc FIR

Một phần của tài liệu LUAN AN-đã chuyển đổi (Trang 104)

Đáp ứng tần số của bộ lọc bao gồm đáp ứng biên độ và đáp ứng pha, đáp ứng xung được hiển thị ngay sau khi người dùng tiến hành thiết lập các tham số bộ lọc cho phép người dùng quan sát được đáp ứng của bộ lọc để có thể thực hiện điều chỉnh. Các hệ số của bộ lọc và loại bộ lọc cũng như bậc của bộ lọc được hiển thị đầy đủ ở phần bên phải của phần mềm. Người dùng hồn tồn có thể copy các hệ số này để tích hợp vào nền tảng phần cứng thấp hơn để xử lý tín hiệu.

Điểm ưu việt của phần mềm là người dùng có thể trực tiếp tải dữ liệu tín hiệu dạng file text (.txt) trực tiếp vào phần mềm sau đó thực hiện lọc với bộ lọc đã thực hiện trước đó. Tín hiệu trước lọc và sau lọc được hiển thị lên cùng một đồ thị cho phép người dùng có thể trực tiếp quan sát được sự thay đổi của tín hiệu sau khi lọc như trong Hình 3.7. Tín hiệu sau lọc cũng có thể được lưu lại một cách dễ dàng dưới định dạng file text như trên.

3.2.3 Xây dựng cơng cụ phần mềm phân tích và xử lý tín hiệu ICG

Các tính năng và thuật tốn trong phần mềm

a) Bộ biến đổi wavelet

Trong Chương 4 của luận án, tác giả đề xuất một thuật tốn giảm nhiễu thở có sử dụng đến phép biến đổi wavelet, do đó trước khi tiến hành thuật toán, tác giả đã xây dựng một bộ công cụ phần mềm thứ hai nhằm mục đích triển khai phép biến đổi wavelet sử dụng thuật tốn hỗ trợ việc xử lý dữ liệu ở các pha tiếp theo.

b) Thuật toán phát hiện đỉnh R

Việc phát hiện đỉnh R trong tín hiệu ECG là để phục vụ cho q trình xử lý tín hiệu ở các phần tiếp theo của luận án. Các đỉnh R được phát hiện bằng thuật toán Pan- Tompkins. Việc triển khai được thực hiện bằng ngôn ngữ lập trình C# với những điều chỉnh phù hợp. Trong thực tế triển khai, dữ liệu chứa tín hiệu ECG được lưu dưới định dạng file text. Phần mềm đọc file, giải mã, xử lý bằng thuật toán Pan- Tompkins, rồi trả về kết quả là vị trí của các đỉnh R dưới dạng mảng để chuẩn bị cho các pha xử lý tiếp theo.

c) Thuật tốn trung bình tồn bộ

Một thuật tốn rất quan trọng xun suốt các mơ hình xử lý tín hiệu mà tác giả đề xuất đó là thuật tốn trung bình tồn bộ (ensemble averaging) cũng được nghiên cứu và triển khai sau đó tích hợp vào phần mềm. Điều này giúp việc triển khai, kiểm thử và đánh giá các mơ hình thuật tốn của tác giả được diễn ra một cách nhanh chóng, nâng cao hiệu quả xử lý về mặt thời gian một cách rõ rệt, đặc biệt là trong trường hợp có một lượng lớn dữ liệu cần xử lý.

Các tính năng phụ trợ

Bên cạnh việc thực thi các ý tưởng, thuật toán mà tác giả đề xuất, bộ công cụ phần mềm hỗ trợ xử lý tín hiệu cịn có các chức năng đọc và hiển thị dữ liệu được lưu dưới dạng file text. Đồ thị tín hiệu được hiển thị trực quan bằng công cụ đồ thị Chart tool trên Windows Form của phần mềm Visual Studio. Các nút chức năng theo giao diện người dùng cũng được xây dựng trên phần mềm này cung cấp các lựa chọn xử lý cho người dùng. Do với đặc thù xử lý phải bóc tách dữ liệu thành nhiều phần khác nhau trên một chuỗi dữ liệu dài được thu nhận, tác giả cũng bổ sung thêm các chức năng cắt dữ liệu tại các vị trí mong muốn, sau đó lưu trữ thành các file riêng biệt gán nhãn với dạng tín hiệu cụ thể.

Kết quả xây dựng phần mềm

Cơng cụ giúp xử lý dữ liệu thu thập được từ các tình nguyện viên sau khi xây dựng có giao diện như Hình 3.8 và Hình 3.9.

Hình 3.8 Giao diện cơng cụ phần mềm phân tích và xử lý tín hiệu ICG

Hình 3.9 Giao diện cửa sổ xử lý tín hiệu ICG bằng biến đổi wavelet

Ở cửa sổ chính, cơng cụ phần mềm này có đầy đủ các chức năng như tải dữ liệu file text vào phần mềm sau đó thực hiện thuật tốn phát hiện đỉnh R trên tín hiệu ECG, tải dữ liệu TEB đồng thời ánh xạ các đỉnh R đã được phát hiện và đánh dấu lên

dạng sóng. Cơng cụ cũng cung cấp một đồ thị để biểu diễn dạng sóng sau tích phân cửa sổ dịch chuyển của tín hiệu ECG.

Chức năng cắt tín hiệu chính xác theo cận trên và cận dưới để lựa chọn các đoạn tín hiệu thở và ngừng thở từ đó tạo các mẫu tín hiệu đại diện bằng thuật tốn trung bình tồn bộ, sau đó thực hiện phép trừ để thu được tín hiệu nhiễu thở thơ.

Ngồi ra phần mềm cũng hỗ trợ xuất dữ liệu sau xử lý ra các text box và file text thuận tiện cho việc lưu trữ và hiển thị dữ liệu sau này. Ở cửa sổ phụ, phần mềm hiển thị tín hiệu ICG trước và sau khi xử lý bằng phép biến đổi wavelet. Thuật toán sử dụng sẽ được trình bày ở Chương 4 của luận án.

3.3 Quy trình xây dựng bộ dữ liệu nhiễu thở trong phép đo ICG3.3.1 Mục đích 3.3.1 Mục đích

Phần này của luận án trình bày các quy trình thu nhận và xử lý dữ liệu trở kháng vùng ngực từ các tình nguyện viên. Dựa trên các phép xử lý, tín hiệu trở kháng vùng ngực với các trạng thái thở và ngừng thở xen kẽ có thể được sử dụng để xây dựng nên bộ cơ sở dữ liệu về nhiễu thở trong phép đo ICG phục vụ mục đích nghiên cứu và đánh giá thuật tốn lọc nhiễu được tác giả đề xuất trong Chương 4 của luận án.

3.3.2 Xây dựng quy trình thu nhận dữ liệu

Với mục tiêu thu nhận đồng thời tín hiệu trở kháng ngực TEB và tín hiệu điện tâm đồ ECG từ đó xây dựng nên bộ cơ sở dữ liệu về nhiễu thở trong phép đo ICG phục vụ cho nghiên cứu, tác giả đã tiến hành đo và thu nhận trên các tình nguyện viên là các nam sinh đang theo học chuyên ngành Kỹ thuật Y sinh tại trường Đại học Bách Khoa Hà Nội. Tác giả sử dụng phương pháp đo dựa trên 8 điện cực điểm theo mơ hình do Bernstein đề xuất [33]. Đây là một cấu hình điện cực được sử dụng rộng rãi hiện nay trong nghiên cứu và thực tế trên các thiết bị đo thương mại. Trong đó bốn điện cực ngồi được sử dụng để đưa dịng kích thích vào cơ thể trong khi bốn điện cực trong được sử dụng để lấy điện áp ra. Tín hiệu ECG sẽ được thiết bị trích xuất trực tiếp từ bốn điện cực trong này mà khơng cần dán thêm bất kì điện cực nào khác. Điều này làm giảm sự khó chịu cho tình nguyện viên khi đo.

Quá trình thu nhận và xử lý dữ liệu được thực hiện dựa trên hệ thống thu nhận dữ liệu do tác giả tự đề xuất và xây dựng như đã trình bày ở phần trước của luận án. Hệ thống thu nhận bao gồm đầy đủ cả mạch đo và phần mềm thu nhận, hiển thị và lưu trữ dữ liệu. Hệ thống đo là hệ thống đã được xây dựng trong Mục 3.1 của luận

án, đảm bảo được các chỉ tiêu về an toàn điện cho đối tượng đo như đã trình bày ở phần

trên như cường độ dịng điện, tần số dịng điện kích thích, điện áp cách điện, dòng dò của mạch nguồn, đảm bảo cách ly khi truyền về phần mềm trên máy tính. Cấu hình cụ thể của mạch đo được lượt kê trong Bảng 3.2.

Các tình nguyện viên được cho nghỉ ngơi ít nhất ba giờ trước khi đo mà khơng ăn hay uống bất kì loại thức ăn, nước uống hay bất kì loại thuốc nào. Tác giả tiến hành thu thập dữ liệu về trở kháng vùng ngực TEB bao gồm cả thành phần do hô hấp (nhiễu thở) và thành phần biến đổi do tim (ICG) với bốn trạng thái khác nhau bao gồm: ngừng thở, thở bình thường, thở nhanh, và thở gắng sức. Quá trình được diễn ra với sáu bước liên tục bao gồm: (1) ngừng thở trong 15 giây, (2) thở bình thường trong 30 giây, (3) ngừng thở trong 15 giây, (4) thở nhanh trong 30 giây, (5) ngừng thở trong 15 giây và (6) thở gắng sức trong 30 giây. Tất cả được thực hiện với tư thế nằm nghỉ. Mỗi tình nguyện viên sẽ được đo và lấy dữ liệu hai lần. Dữ liệu sau đó sẽ được mạch thu nhận gửi lên máy tính và lưu trữ dưới định dạng .csv.

3.3.3 Lựa chọn tình nguyện viên

Với mục tiêu đánh giá và thử nghiệm thuật toán cộng với quy mơ cịn nhỏ của nghiên cứu, tác giả thực hiện thu thập dữ liệu trên 26 tình nguyện viên là các nam sinh viên tại phịng thí nghiệm với độ tuổi từ 19 đến 23 mà khơng có tiền sử bệnh liên quan đến tim mạch. Tất cả các phép đo được thực hiện với sự hỗ trợ của các bác sĩ làm việc tại Trung tâm y tế, Trường Đại học Bách Khoa Hà Nội.

Tuy nhiên trong tương lai, ở các nghiên cứu tiếp theo, tác giả mong muốn được mở rộng đối tượng đo là các đối tượng hiện đang có các bệnh liên quan đến tim mạch tại các bệnh viện với nhiều độ tuổi và giới tính khác nhau từ đó xây dựng được một bộ dữ liệu về nhiễu thở đầy đủ và có ý nghĩa hơn trong nghiên cứu cũng như trong lâm sàng.

3.3.4 Thực hiện thu nhận dữ liệu

Trước khi tiến hành đo thu thập dữ liệu, các tình nguyện viên sẽ được phổ biến về quy trình đo, chỉ tiêu kĩ thuật, chỉ tiêu an tồn điện của thiết bị đo và mục đích sử dụng dữ liệu cho hoạt động nghiên cứu. Sau đó các tình nguyện viên tham gia sẽ ghi thơng tin và cam kết tham gia thí nghiệm trong một biên bản. Phần biên bản cam kết tham gia thí nghiệm được trình bày trong phần Phụ lục 2.

Quá trình dán điện cực và thu nhận tín hiệu trên các tính nguyện viên được diễn ra dưới sự hướng dẫn của các bác sĩ có chun mơn (Hình 3.10 và Hình 3.11). Thiết bị đo được sử dụng đúng theo đã giới thiệu với tình nguyện viên. Quy trình đo được

thực hiện đúng theo quy trình đã trình bày ở trên. Tồn bộ các phép đo đều được thực hiện ở trên phịng thí nghiệm của Trung tâm Điện tử Y sinh của trường Đại học Bách Khoa Hà Nội. Dữ liệu thu nhận được từ các tình nguyện viên sẽ được truyền và lưu trữ trên máy tính để chờ xử lý.

Hình 3.10 Hình ảnh tác giả dán các điện cực đo dưới sự hướng dẫn của bác sĩ

3.3.5 Xử lý và chuẩn hóa dữ liệu

Dữ liệu thu sau khi số hóa hai dạng tín hiệu là tín hiệu điện tâm đồ ECG và tín hiệu trở kháng vùng ngực TEB được mạch đo truyền lên máy tính thơng qua cổng USB vật lý trên máy tính và được nhận diện dưới dạng cổng COM ảo. Bản tin truyền lên theo quy ước ở phần mềm trên mạch đo có cấu trúc dạng: “AAAAA,BBBB↵” gồm hai trường dữ liệu. Trong đó A là các kí tự kiểu char đại diện cho các số từ 0 đến 9, kênh tín hiệu TEB được biểu diễn bởi 5 ký tự kiểu char, trong khi kênh tín hiệu ECG được biểu diễn bởi 4 ký tự kiểu char. Hai trường dữ liệu trong bản tin được phân cách nhau bởi dấu phẩy “,” bản tin được đánh dấu kết thúc bởi kí tự xuống hàng “↵”. Dựa theo quy định phần kí tự nằm trước dấu phẩy sẽ được đánh dấu là tín hiệu TEB trong khi phần kí tự sau dấu phẩy sẽ được đánh dấu là tín hiệu ECG.

Dựa trên quy ước như trên về cấu trúc bản tin gửi lên, phần mềm tiến hành đọc dữ liệu được đẩy vào bộ đệm của cổng COM, sau đó tiến hành phân tách bản tin thành hai trường dữ liệu riêng biệt dưới dạng hai chuỗi kí tự. Hai chuỗi kí tự này sau đó sẽ được chuyển đổi sang kiểu số nguyên để phục vụ các bước xử lý tiếp theo. Hai dạng tín hiệu sau đó sẽ được chuẩn hóa lại về mặt biên độ theo đúng đơn vị đo (Ω cho tín hiệu TEB và mV cho tín hiệu ECG) và thời gian (đơn vị đo là miligiây).

Sau khi thực hiện thành công bước giải mã dữ liệu nhận được, phần mềm sẽ tiến hành thực hiện lọc hai loại tín hiệu trên bằng hai bộ lọc thơng thấp IIR đã được khởi tạo trước đó. Nhằm đảm bảo về độ gợn dải thơng nhỏ và đáp ứng pha có độ tuyến tính tốt, tác giả sử dụng bộ lọc Butterworth để xây dựng bộ lọc số IIR cho dạng tín hiệu trên. Với tần số lấy mẫu fs = 200 mẫu/giây, bộ lọc IIR dành cho tín hiệu TEB có các tham số được thiết lập là fpass = 20 Hz, fstop = 40 Hz, Apass = 1 dB, Astop = 40 dB trong khi bộ lọc IIR dành cho tín hiệu ECG có các tham số là fpass = 40 Hz, fstop = 80 Hz, Apass = 1 dB, Astop = 40 dB. Giá trị thời gian, hai dạng tín hiệu sau lọc là TEB và ECG sẽ được lưu trữ thành ba cột riêng biệt trong file .csv lưu trữ. Dạng file này hồn tồn có thể mở và chỉnh sửa bằng phần mềm Microsoft Excel.

3.3.6 Mô tả và lưu trữ dữ liệu

Bộ cơ sở dữ liệu chứa toàn bộ dữ liệu của 26 tình nguyện viên đã thu thập được bao gồm hai phần: phần dữ liệu chứa tín hiệu trở kháng vùng ngực TEB và tín hiệu điện tâm đồ ECG tham chiếu đi kèm và phần dữ liệu chứa thành phần nhiễu thở sau khi đã trích xuất từ tín hiệu TEB. Dữ liệu được lưu dưới định dạng file Excel .xlsx giúp trích xuất thơng tin phục vụ cho nghiên cứu và xử lý dữ liệu một cách dễ dàng. Tên các file được đánh số theo nguyên tắc tình nguyện viên (TNV), ví dụ

TNV001.xlsx. File dữ liệu Excel sẽ bao gồm 5 sheet bao gồm: sheet chứa thông tin của phép đo và TNV bao gồm tần số lấy mẫu, độ phân giải của bộ ADC, tuổi và giới tính của TNV; sheet chứa dữ liệu TEB và ECG bao gồm 5 cột trong đó có 1 cột thời gian, 2 cột cho dữ liệu TEB và ECG thô và 2 cột cho dữ liệu TEB và ECG sau xử lý; 3 sheet chứa dữ liệu nhiễu thở trước và sau khi xử lý của ba trạng thái thở bao gồm thở bình thường, thở gắng sức và thở nhanh. Chi tiết về thuật toán tách và xử lý dữ liệu thở được trình bày trong Mục 3.4

Toàn bộ dữ liệu sẽ được lưu trữ trên hệ thống chia sẻ dữ liệu nghiên cứu figshare.com với định danh số https://doi.org/10.6084/m9.figshare.16552737.v1. Dữ liệu được chia sẻ cơng khai với quyền truy nhập có thể xem và tải về.

3.4 Thuật toán tách và xác định đặc trưng nhiễu thở3.4.1 Tách nhiễu thở từ tín hiệu TEB 3.4.1 Tách nhiễu thở từ tín hiệu TEB

Đề xuất thuật tốn

Về cơ bản, phương pháp đề xuất có nguyên lý hoạt động tương tự như phương pháp mà Schuessler giới thiệu [72]. Tuy nhiên, thay vì sử dụng chính tín hiệu có thở để tạo ra tín hiệu đại diện của phần biến đổi do tim, tác giả sử dụng thêm tín hiệu TEB của đối tượng đo khi ở trạng thái ngừng thở để tạo ra mẫu tín hiệu đại diện. Điều này có thể được thực hiện bằng phương pháp trung bình tồn bộ theo các chu kì tim được đánh dấu bằng đỉnh R trong tín hiệu ECG tham chiếu được đo thêm một cách đồng thời. Mẫu tín hiệu đại diện cho thành phần biến đổi do tim sau đó cũng được đảo pha (đổi dấu) và cộng vào tín hiệu ở trạng thái có thở. Tín hiệu sau đó được đưa qua một bộ lọc thơng thấp số để loại bỏ tất cả các thành phần nhiễu tần số cao cịn sót lại cũng như các đoạn chuyển tiếp khi thực hiện phép trừ. Sơ đồ khối thực của thuật tốn được miêu tả trong Hình 3.12.

Thuật toán được phát triển trong nghiên cứu này khơng nhằm mục đích tích hợp vào thiết bị hay xử lý thời gian thực tín hiệu ICG. Dựa trên thuật tốn đề xuất, một

Một phần của tài liệu LUAN AN-đã chuyển đổi (Trang 104)

Tải bản đầy đủ (DOCX)

(155 trang)
w