3.2.1Mục đích
Với mục tiêu xây dựng một bộ cơ sở dữ liệu về thành phần nhiễu thở trong phép đo ICG, sau đó sử dụng chính bộ cơ sở dữ liệu này để làm cơ sở để tác giả đề xuất một thuật toán giảm nhiễu thở và đánh giá hiệu quả lọc nhiễu của thuật toán đề xuất, số lượng tình nguyện viên mà tác giả dự kiến thực hiện thu thập và xử lý dữ liệu khoảng 30 người. Trong đó, mỗi tình nguyện viên dự kiến sẽ được thu thập dữ liệu về tín hiệu ICG và ECG với ba trạng thái thở khác nhau, do đó số lượng mẫu xử lý có thể đạt tới 90 mẫu. Việc xử lý dữ liệu và triển khai thuật toán được thực hiện qua nhiều bước khác nhau sẽ được trình bày trong các phần tiếp theo của luận án. Thêm vào đó, với định hướng mở rộng nghiên cứu trong tương lai trên đối tượng là các bệnh nhân thực tế và với quy mô rộng hơn, số lượng mẫu dữ liệu cần phải xử lý sẽ lớn hơn rất nhiều so với hiện tại. Vì vậy, nhằm mục đích hỗ trợ tối đa trong việc xử lý dữ liệu sau khi thu nhận với hiệu suất tối đa giảm được sức người và thời gian thực hiện, tác giả tiến hành nghiên cứu, xây dựng một bộ công cụ phần mềm hỗ trợ xử lý tín hiệu ICG với các tính năng, phép xử lý cần thiết. Phần mềm được viết bằng ngôn ngữ lập trình C# bởi trình biên dịch Microsoft Visual Studio 2017 với giao diện người dùng dựa trên Windows Form.
Bộ công cụ phần mềm được tác giả xây dựng gồm hai phần mềm hỗ trợ xử lý chính là: (a) phần mềm thiết kế và thực hiện lọc số và (b) phần mềm phân tích và xử lý tín hiệu ICG. Bộ công cụ xây dựng được tham khảo từ chức năng của một số bộ xử lý tín hiệu từ Signal Processing Toolbox Software 8.2 trên phần mềm xử lý tín hiệu Matlab 2019 như: Filter Designer, Signal Analyzer, Wavelet Signal Designer, v.v. Tuy nhiên các công cụ này được thiết kế với các tác vụ xử lý tín hiệu chung và hoạt động độc lập và cần nhiều thao tác để có thể sử dụng và các kết hợp các bộ công cụ này với nhau để xử lý tín hiệu. Bên cạnh các phép xử lý thông thường như trong các bộ công cụ, tín hiệu còn cần phải được xử lý bởi các thuật toán đặc thù do tác giả đề xuất. Việc kết hợp các bộ công cụ rời rạc như trên và thuật toán mà tác giả đề xuất chỉ phù hợp với giai đoạn thử nghiệm thuật toán với số lượng nhỏ dữ liệu. Việc thực hiện thủ công các thao tác xử lý sẽ không tối ưu về mặt thời gian và sức người đối với việc xử lý của một số lượng mẫu dữ liệu lớn khi tiến hành nghiên cứu trên diện rộng.
Do đó, tác giả đã tiến hành xây dựng hai bộ công cụ phần mềm hỗ trợ xử lý tín hiệu với sự tích hợp đầy đủ của các phép xử lý cơ bản như lọc số, phân tích phổ sử
82
dụng thuật toán biến đổi Fourier nhanh FFT, biến đổi wavelet, các thuật toán đặc thù như trung bình toàn bộ, phát hiện đỉnh R trong tín hiệu ECG bằng thuật toán Pan- Tompkins. Bên cạnh đó, bộ công cụ phần mềm cũng có tích hợp đầy đủ các chức năng tải file dữ liệu lên và lưu file dữ liệu xuống dưới định dạng file .txt, hiển thị và xuất dữ liệu của các dạng sóng xử lý trung gian. Bộ phần mềm được viết với giao diện người dùng thân thiện và tiện lợi. Hiện tại, nghiên cứu đang dừng lại ở giai đoạn thử nghiệm thuật toán. Tuy nhiên, với việc phần mềm được tác giả tự nghiên cứu và xây dựng hoàn toàn bằng ngôn ngữ lập trình C#, tác giả có thể tích hợp các tác vụ xử lý trên vào các thiết bị đo sau này một cách dễ dàng và nhanh chóng.