Theo dõi tín hiệu sinh học trên di động sử dụng hồi qui tuyến tính.Theo dõi tín hiệu sinh học trên di động sử dụng hồi qui tuyến tính.Theo dõi tín hiệu sinh học trên di động sử dụng hồi qui tuyến tính.Theo dõi tín hiệu sinh học trên di động sử dụng hồi qui tuyến tính.Theo dõi tín hiệu sinh học trên di động sử dụng hồi qui tuyến tính.Theo dõi tín hiệu sinh học trên di động sử dụng hồi qui tuyến tính.Theo dõi tín hiệu sinh học trên di động sử dụng hồi qui tuyến tính.Theo dõi tín hiệu sinh học trên di động sử dụng hồi qui tuyến tính.Theo dõi tín hiệu sinh học trên di động sử dụng hồi qui tuyến tính.Theo dõi tín hiệu sinh học trên di động sử dụng hồi qui tuyến tính.Theo dõi tín hiệu sinh học trên di động sử dụng hồi qui tuyến tính.Theo dõi tín hiệu sinh học trên di động sử dụng hồi qui tuyến tính.Theo dõi tín hiệu sinh học trên di động sử dụng hồi qui tuyến tính.Theo dõi tín hiệu sinh học trên di động sử dụng hồi qui tuyến tính.Theo dõi tín hiệu sinh học trên di động sử dụng hồi qui tuyến tính.
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
NGUYỄN TÔN THẤT TÚ
THEO DÕI TÍN HIỆU SINH HỌC TRÊN DI ĐỘNG
SỬ DỤNG HỒI QUI TUYẾN TÍNH
CHUYÊN NGÀNH: HỆ THỐNG THÔNG TIN
Trang 2Luận văn được hoàn thành tại:
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
Người hướng dẫn khoa học: TS Nguyễn Đức Thắng
Phản biện 1:
………
………
Phản biện 2: ………
………
Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Học viện Công nghệ Bưu chính Viễn thông Vào lúc: giờ ngày tháng năm
Có thể tìm hiểu luận văn tại:
- Thư viện của Học viện Công nghệ Bưu chính Viễn thông
Trang 3LỜI CAM ĐOAN
Tôi cam đoan đây là công trình nghiên cứu của riêng tôi
Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được ai công bố trong bất kỳ công trình nào khác
Ngày 20 tháng 06 năm 2016 Học viên thực hiện luận văn
Nguyễn Tôn Thất Tú
Trang 4LỜI CẢM ƠN Lời cám ơn đầu tiên, tôi xin gửi đến các Thầy, Cô Học viện Bưu chính Viễn thông Cơ sở Hồ Chí Minh, đã tận tình trong công tác giảng dạy, tạo điều kiện tốt nhất
để tôi có thể thực hiện luận văn này Đặc biệt tôi xin gửi lời biết ơn sâu sắc đến TS Nguyễn Đức Thắng là người đã hướng dẫn, giúp đỡ và truyền những kinh nghiệm quý báu để tôi có thể hoàn thành luận văn thạc sỹ với đề tài: “Theo dõi tín hiệu sinh học trên di động sử dụng hồi qui tuyến tính”
Lời cảm ơn sau cùng, tôi xin gửi lời cám ơn đến gia đình tôi và các bạn học đồng khóa đã gắn bó, chia sẻ kinh nghiệm và ủng hộ để tôi có thể hoàn thành luận văn này
Ngày 20 tháng 06 năm 2016 Học viên thực hiện luận văn
Nguyễn Tôn Thất Tú
Trang 5MỞ ĐẦU Nhu cầu phát hiện và xử lý tín hiệu sống sinh học để theo dõi sức khỏe là hợp
lý và cần thiết Có rất nhiều thuật toán liên quan đến việc này Trong đó, thuật toán đơn giản mang lại hiệu quả là hồi quy tuyến tính (Linear Regression) Ta sẽ áp dụng
và hiện thực thuật toán trên di động
Mục đích nghiên cứu:
Đề tài được nghiên cứu nhằm mục đích phát triển trên thiết bị di động một ứng dụng có thể kiểm tra được tín hiệu sống sinh học của con người: nhịp tim và nhịp thở
Đối tượng nghiên cứu:
Tín hiệu sống sinh học: nhịp thở, nhịp tim
Thuật toán xử lý hình ảnh
Thuật toán hồi quy tuyến tính
Android và môi trường phát triển ứng dụng trên Android
Phạm vi nghiên cứu:
Với khuôn khổ của luận văn, ta có thể nghiên cứu được cơ sở lý thuyết của thuật toán hồi quy tuyến tính mở rộng và khả năng cài đặt của thuật toán này Thiết bị được sử dụng là các thiết bị di động có hệ thống camera để có thể ghi chuỗi hình ảnh của người được đo Chuỗi hình ảnh có thể được lưu trữ dưới dạng video hoặc các dạng khác để phù hợp với phương pháp xử lý Các cơ sở lý thuyết sẽ được cài đặt và sử dụng trên các thiết bị
Sau khi phần mềm đã được cài đặt xong, ta sử dụng phần mềm trên một vài thiết bị di động và kiểm tra, so sánh nhằm rút ra được sai số khi sử dụng phần mềm
Trang 6CHƯƠNG 1 – TỔNG QUAN VỀ TÍN HIỆU SỐNG SINH HỌC 1.1 Khái niệm về tín hiệu sống sinh học của con người
Trong cuộc sống hằng ngày, mỗi cá nhân chúng ta đều phát ra những dấu hiệu biểu hiện sự sống của mình Dấu hiệu này đặc trưng cho tình trạng sức khỏe, trạng thái tinh thần… của một cá thể Các số liệu đo phản ánh những dấu hiệu này được gọi là tín hiệu sống sinh học (Vital Physiological Signal – VPS) Thông thường, một con người có bốn tín hiệu sống sinh học quan trọng:
Tốc độ mạch đập (Pulse Rate - PR)
Tốc độ hô hấp (Respiration Rate - RR)
Nhiệt độ cơ thể (Body Temperature – BT)
Huyết áp (Blood Pressure – BP)
Trong khuôn khổ của luận văn, ta sẽ phân tích và tìm hiểu chủ yếu trên hai tín hiệu chính là tốc độ mạch đập và tốc độ hô hấp
1.1.1 Tín hiệu tỉ lệ mạch đập (PR)
Tỉ lệ mạch đập PR là một số đo của tốc độ tim (Heart Rate – HR) Ta cũng có thể hiểu PR là số nhịp đập của tim mỗi phút Khi tim đẩy máu qua động mạch, động mạch mở rộng và co lại phối hợp với dòng chảy của máu Một mạch đập còn có thể chỉ ra những chỉ số sau đây:
Nhịp tim
Độ mạnh của mạch đập Nhịp đập bình thường đối với người lớn khỏe mạnh khoảng từ 60 – 100 nhịp mỗi phút (bpm – beats per minute) Theo nghiên cứu của Tanaka năm
2001, nhịp đập tối đa có liên quan rất chặt chẽ với độ tuổi Công thức xấp xỉ được đưa ra như sau:
HRmax = 207 – 0.7 × số tuổi
Trang 71.1.2 Tín hiệu tốc độ hô hấp (RR)
Tốc độ hô hấp của một người là số lượng hơi thở của người đó trong một phút Tỉ lệ này thường được đo khi một người ở trong trạng thái thư giãn Các đo đơn giản nhất là đếm số lần ngực phồng lên xẹp xuống Tỉ lệ hô hấp có thể thay đổi khi bị sốt, bệnh hay các tác nhân y tế khác
Tỉ lệ hô hấp bình thường đối với một người trưởng thành vào khoảng
12 – 16 nhịp mỗi phút
1.2 Photoplethysmography (PPG)
Từ photoplethysmography được ghép lại từ “photo” (hình ảnh) và
“plethysmography” (dụng cụ đo sự thay đổi thể tích của một cơ quan hay toàn bộ cơ thể)
1.3 Các phương thức để theo dõi tín hiệu sống sinh học
Có nhiều phương pháp để đo tín hiệu sống sinh học của một người Ta có thể chia ra làm ba loại sau:
1.3.1 Phương pháp theo dõi xâm lấn
Là phương pháp đo trực tiếp xâm nhập vào cơ thể để đo các tín hiệu sống sinh học như kim dò… Hiện tại các phương pháp này đang được giảm bớt tần suất sử dụng bởi nó làm cho người bệnh có cảm giác không thoải mái
và gây tổn thương Một phương pháp điển hình là phương pháp chuẩn đoán điện cơ (EMG –Electromyography) Người đo sẽ đặt điện cực lên da, sau đó
sẽ điện cực kim để châm vào bắp cơ
1.3.2 Phương pháp theo dõi không xâm lấn
Là các phương pháp đo không dùng những dụng cụ xâm nhập trực tiếp vào cơ thể mà dùng các thiết bị theo dõi trên da Một số những phương thức mới được đưa ra là theo dõi tín hiệu sống sinh học dùng các sensor dán trên
da Các sensor này có thể có dây nối hoặc không có dây nối Tín hiệu từ đây
sẽ được truyền về và xử lý để trả ra được Các dụng cụ đo phổ biến đã được
đề cập ở phần mở đầu của luận văn
Trang 8Ngoài ra người ta còn dùng camera để dõi tín hiệu sống sinh học Theo dõi dựa trên camera là phương thức được cho là có thể thực hiện được
1.4 Các hệ thống không gian màu sắc
Để theo dõi sự thay đổi màu sắc, ta cần hiểu được đặc điểm hai hệ thống không gian màu sắc quen thuộc: RGB và HSV
1.4.1 RGB (Red, green and blue)
RGB là hệ thống không gian màu sắc được sử dụng phổ biến nhất Một điểm ảnh trong không gian RGB được thể hiện bởi sự kết hợp giữa ba màu đỏ, xanh lá cây và xanh dương hay còn gọi là một bộ ba gắn kết (r, g, b) với từng giá trị nằm trong đoạn từ 0 đến một giá trị lớn nhất được định nghĩa Trong máy tính, giá trị này được lưu dưới dạng một số tự nhiên trong khoảng từ 0 đến 255
1.4.2 HSV (Hue, saturation and value)
Trang 9CHƯƠNG 2 – CÁC PHƯƠNG PHÁP ĐO TÍN HIỆU SỐNG SINH HỌC KHÔNG XÂM LẤN
VÀ MÔ HÌNH HỒI QUY TUYẾN TÍNH 2.1 Phương pháp theo dõi dùng camera
Phương pháp theo dõi tín hiệu sinh học sử dụng camera là một phương pháp tiếp cận mới, giúp ta giảm thiểu chi phí và sự khó chịu của người được theo dõi
2.1.1 Dùng camera kết nối với máy tính
Hệ thống đo bao gồm một máy tính dùng để thu tín hiệu hình ảnh đưa
về từ một camera Để hỗ trợ thu nhận hình ảnh tốt hơn, ta sử dụng đèn chiếu sáng đặt phía trước người được đo [10], [11], [12], [13], [14], [15]
Hệ thống này dựa trên sự thay đổi màu da khi tim co bóp để đưa máu
đi khắp cơ thể Mắt thường không thể thấy được sự thay đổi màu sắc trên Chính vì vậy, các nhà khoa học đã dùng camera thu hình ảnh và phóng đại sự thay đổi trên để có thể xác định số đo của tín hiệu sống sinh học (nhịp tim, nhịp thở…)
2.1.2 Dùng điện thoại thông minh
Hệ thống chỉ gồm một điện thoại di động thông minh có camera tương đối tốt dùng để thu tính hiệu hình ảnh và xử lý
So với hệ thống dùng máy tính, hệ thống dựa trên thiết bị di động thông minh có ưu điểm tiết kiệm chi phí và độ di động lớn [16] Vì vậy, đây là xu hướng phát triển phù hợp với người dùng là các cá nhân, sử dụng mọi nơi, mọi lúc
2.2 Trích chọn đặc trưng
Để có thể nhận diện được vùng vai từ khuôn mặt, ta cần các bộ dữ liệu khuôn mặt người được huấn luyện từ trước Sau đây, ta sẽ tìm hiểu kĩ hơn về vấn đề này
Trang 102.2.1 Các bộ phân lớp kết hợp (Cascade Classifiers)
OpenCV là một thư viện cung cấp cho ta các bộ phân lớp kết hợp để có thể nhận diện được một đối tượng một cách dễ dàng Hai bộ phân lớp điển hình được OpenCV cung cấp là Haar Cascades và LBP Cascades
2.2.2 Haar Cascades
Đây là một trong những thuật toán đầu tiên giúp nhận dạng khuôn mặt theo thời gian thực, được phát triển bởi Viola và Jones Thuật toán dựa trên sự giống nhau cơ bản trên cấu trúc của khuôn mặt người với các đặc điểm của mắt, mũi, miệng, cằm…
2.2.3 LBP (Local Binary Patterns) Cascades
Các bộ phân loại nhị phân cục bộ là một dạng khác của bộ phân lớp kết hợp được sử dụng rộng rãi trong thị giác máy tính So với Haar Cascades, LBP khai thác việc xử lý với các giá trị nguyên hơn là các giá trị số thực Do đó, quá trình huấn luyện và kiểm thử đều nhanh hơn Do đó, người phát triển thường dùng nó để cài đặt cho các ứng dụng nhúng LBP còn có thể chịu đc
sự thay đổi của độ sáng
2.3 Mô hình hồi quy tuyến tính (Linear Regresion Model)
Cho một tập dữ liệu , , … , với n đơn vị thông kê Một mô hình hồi quy tuyến tính phát biểu rằng tồn tại một quan hệ tuyến tính giữ biến phụ thuộc
yi và p vector của các biến hồi quy xi Quan hệ này được mô hình hóa thông qua một giới hạn gây nhiễu hoặc là một biến sai lầm ngẫu nhiên Biến này thể hiện độ nhiễu của quan hệ tuyến tính giữa biến phụ thuộc và các biến hồi quy Ta được công thức thể hiện mối liên quan:
Trang 11 là tích nội của ma trận (vector) và
Gộp gọn n đẳng thức và biểu diễn dưới dạng vector, ta được:
= + Trong đó,
2.4.1 Phương pháp đo nhịp tim
Đầu vào: Dữ liệu hình ảnh đầu ngón tay bằng cách áp sát tay vào camera có tích hợp đèn flash đã bật
Bước 1: Phân chia một ảnh thu được thành các phân vùng bằng nhau (trong luận văn này xin được chia thành 20 phần bằng nhau)
Bước 2: Tìm mean theo thời gian thực của các vùng Sau đó, dùng variance của từng vùng để tìm ra vùng có thay đổi nhiều nhất (variance lớn nhất, xét dữ liệu trên 1000 khung ảnh đẩu tiên) Công thức tính mean và variance như sau:
Trang 122 (Sử dụng công thức hồi quy tuyến tính với số mũ cao nhất của
x là 30)
Tính hiệu giữa tín hiệu và đường cong làm mượt lại tín hiệu
Tính tần số thay đổi tín hiệu, cùng với tầng số nhịp tim tối đa (2 Hz), ta tính được hệ số cho bộ lọc thông thấp wn theo công thức:
2.4.3 Phương pháp đo nhịp thở bằng đầu ngón tay (thành công)
Đầu vào: chuỗi hình ảnh hệ màu RGB khi cố định cạnh của điện thoại thông minh với thành bụng; ngón tay áp sát vào camera có mở flash chiếu sáng
Bước 1: Trích chọn kênh màu đỏ của ảnh thu được
Bước 2: Tính mean của các điểm trong ảnh thu được trên kênh màu
đỏ đã chọn
Bước 3: Kiểm tra xem giá trị của mean giao động quanh ngưỡng value Red = 220 như thế nào, đếm tổng số lần vượt ngưỡng và dưới ngưỡng (đối với camera trên dòng điện thoại Samsung Note 4)
Bước 4: Nhịp thở chính là nửa tổng số lần vượt ngưỡng và dưới ngưỡng
Trang 13CHƯƠNG 3 – THU THẬP DỮ LIỆU VÀ KIỂM TRA
PHƯƠNG PHÁP NHẬN DẠNG TÍN HIỆU
NHỊP TIM VÀ NHỊP THỞ Dựa vào phương pháp đo nhịp tim và đo nhịp thở bằng đầu ngón tay đã nêu ra
ở chương 2, trước tiên, ta cần xác định dữ liệu đầu vào thu được từ camera và thiết
kế định dạng dữ liệu xuất ra để có thể đưa ra đánh giá ban đầu về tín hiệu đầu vào
3.1 Mô tả quá trình thu thập dữ liệu
Trước tiên, ta cài đặt trên môi trường Android một ứng dụng cơ bản có thể lấy được tín hiệu hình ảnh liên tục từ camera trên không gian màu RGB
3.1.1 Thu thập dữ liệu nhận dạng nhịp tim
Bước đầu tiên, ta cần thu hình ảnh của ngón tay áp sát vào camera và dựa vào đây để xác định sự biến thiên khi nhịp tim thay đổi Với mỗi khung ảnh (frame), ta chia khung ảnh này thành các phần bằng nhau Ở luận văn này, xin chia 1 frame thành 20 phần bằng nhau Với mỗi phần được chia, trên kênh màu đỏ, ta lấy giá trị màu đại diện (giá trị màu đỏ trung bình của các điểm ảnh tạo nên phần được chia) Sau một số frame nhất định, ta sẽ xác định vùng có mean của giá trị màu đỏ đại diện lớn nhất Đây chính là vùng thay đổi nhiều nhất và tín hiệu thu được là rõ ràng nhất Dữ liệu trên các vùng được ta xuất ra dưới dạng file csv có cấu trúc như sau:
0 251.2091 255 … 250.0007 … 255 4223
1 251.711 255 … 250.8195 … 255 4242
Qua thực nghiệm, giá trị bậc đa thức thích hợp nhất là bậc 5 Từ đây, ta đếm
số đỉnh của tín hiệu để tìm được nhịp tim Với các thức đã nêu, ta sử dụng phần ứng dụng trên Android để lấy tín hiệu của 5 người
Trang 143.1.2 Thu thập dữ liệu nhận dạng nhịp thở
Bằng thực nghiệm, ta thấy rõ rằng giá trị của màu đỏ giảm mạnh khi hít vào (do phình bụng khiến ngón tay rời khỏi camera) và trở lại ban đầu khi thở
ra Khi mean của kênh màu đỏ thay đổi giá trị vượt qua 220 hay thấp hơn 220,
ta biết được là do thở ra hoặc hít vào Vì vậy khi chia đôi tổng số lần lớn hơn
và nhỏ hơn giá trị ngưỡng, ta thu được nhịp thở
Với cách thức đã nêu, ta lấy số liệu trên 5 người
3.2 Kiểm tra các phương pháp nhận dạng tín hiệu
Để có thể xác định được các giá trị thu được sau khi nhận dạng các tín hiệu thông qua sự thay đổi màu sắc đầu ngón tay có chính xác hay không, ta cần thực hiện việc kiểm tra các phương pháp nhận dạng tín hiệu
3.2.1 Kiểm tra phương pháp nhận dạng nhịp tim
Để kiểm tra phương pháp nhận dạng nhịp tim, ta thực hiện theo các bước sau:
Bước 1: Thu dữ liệu trên camera có bật đèn flash trong vòng 1 phút Cùng lúc đó, ta sẽ bắt mạch trên tay và đếm nhịp tim của người được đo
Bước 2: Sau 1 phút, ta có được nhịp tim của người được đo dựa vào số lần mạch nhảy Số đo này được xem là số đo chính xác nhất
và được dùng làm chuẩn để so sánh Số đo này được gọi là nhịp tim chuẩn
Kiểm tra tập tin csv và thực hiện chính xác các bước theo phương pháp nhận dạng nhịp tim, ta thu được số đo của nhịp tim dựa vào
sự thay đổi màu sắc của đầu ngón tay Ta gọi số đo này là nhịp tim thử nghiệm
Bước 3: So sánh giá trị nhịp tim chuẩn và giá trị nhịp tim thử nghiệm, ta có thể rút ra kết luận phương pháp nhận dạng nhịp tim
và tín hiệu nhận được có chính xác hay không
Trang 15Kết quả thu được sau khi thực hiện bước 3, với 5 người khác nhau, mỗi người 5 lần đo, độ sai khác lớn nhất là ±2 nhịp tim
Bảng 3.1: Bảng kết quả so sánh giữa nhịp tim chuẩn và nhịp tim thử nghiệm
Như vậy, phương pháp nhận dạng nhịp tim và tín hiệu thu được từ sự thay đổi màu sắc của đầu ngón tay là có thể tin cậy được
3.2.2 Kiểm tra phương pháp nhận dạng nhịp thở
Tương tự với phương pháp nhận dạng tín hiệu nhịp tim, kết quả thu được sau khi thực hiện bước 3, với 5 người khác nhau, mỗi người 5 lần đo, độ sai khác lớn nhất là ±1 nhịp thở
Trang 16Bảng 3.2: Bảng kết quả so sánh giữa nhịp thở chuẩn và nhịp thở thử nghiệm
Như vậy, phương pháp nhận dạng nhịp tim và tín hiệu thu được từ sự thay đổi màu sắc của đầu ngón tay là có thể tin cậy được
Trang 17CHƯƠNG 4 – XÂY DỰNG ỨNG DỤNG ĐO
TÍN HIỆU SỐNG SINH HỌC TRÊN NỀN TẢNG ANDROID
4.1 Tổng quan hệ điều hành di động Android
Android được ra mắt với vai trò là một nền tảng thiết bị di động được xây dựng trên nhân Linux phiên bản 2.6 Đồng hành cùng sự phát triển của công nghệ di động, Android đã trải qua nhiều lần cập nhật để cải tiến hệ điều hành, bổ sung các tính năng mới và sửa chữa các lỗi Hiện nay, phiên bản mới nhất của Android là phiên bản 6.0.1 với tên mã là Marshmallow
4.2 Công cụ phát triển Android Studio
Các ứng dụng của Android được phát triển sử dụng ngôn ngữ Java với sự hỗ trợ của bộ phát triển Android (Android SDK) Android Studio là quan chức môi trường phát triển tích hợp (IDE) cho phát triển ứng dụng Android, dựa trên nền tảng IntelliJ IDEA
4.3 Android và các thành phần hỗ trợ lập trình
4.3.1 Activity
Đây là thành phần rất quan trọng đối một ứng dụng Android Đây có thể được coi là đơn vị hiển thị cơ bản của Android, chứa các thành phần con bên trong như nút, nhãn,…
Khái niệm cốt lõi giúp ta sử dụng Activity là vòng đời (Life Circle) của Activity
4.3.2 Intent
Đây cũng là một thành phần quan trọng không kém, chứa các thông tin
mô tả cách một activity được khởi động và chứa các dữ liệu cần thiết Các loại Intent: