Cách thức trích xuất nhịp tim bằng OpenCV trong Python

Một phần của tài liệu Ứng dụng xử lý ảnh trong nhận diện điều khiển ô tô (Trang 97 - 98)

4.4 Phương án thiết kế phần mềm mơ hình

4.4.1.3 Cách thức trích xuất nhịp tim bằng OpenCV trong Python

Ứng dụng này sử dụng OpenCV để tìm vị trí khn mặt của người dùng, sau đó cơ lập vùng trán. Dữ liệu được thu thập từ vị trí này theo thời gian để ước tính nhịp tim của người dùng. Điều này được thực hiện bằng cách đo cường độ quang học trung bình ở vị trí trán, chỉ trong kênh màu xanh lá cây của hình ảnh phụ (có thể tồn tại tỷ lệ trộn màu tốt hơn, nhưng kênh màu xanh lam có xu hướng rất nhiễu). Dữ liệu sinh lý có thể được ước tính theo cách này nhờ vào các đặc tính hấp thụ quang học của (oxy-) hemoglobin.

83

Với ánh sáng tốt và tiếng ồn tối thiểu do chuyển động, nhịp tim ổn định sẽ được cách ly trong khoảng 15 giây. Các dạng sóng sinh lý khác (chẳng hạn như sóng Mayer) cũng sẽ hiển thị trong luồng dữ liệu thô.

Khi nhịp tim của người dùng đã được ước tính, sự biến thiên pha theo thời gian thực liên quan đến tần số này cũng được tính tốn. Điều này cho phép nhịp tim được phóng đại trong q trình kết xuất khung hình sau xử lý, khiến vị trí trán được đánh dấu bắt nhịp đồng bộ với nhịp tim của chính người dùng.

Chắc chắn có thể hỗ trợ phát hiện nhiều cá nhân đồng thời trong luồng hình ảnh của một camera, nhưng hiện tại chỉ có thơng tin từ một khn mặt được trích xuất để phân tích.

Sau đó để xem luồng dữ liệu đo được hiện lên màn hình.

Màn hình dữ liệu hiển thị sẽ hiển thị 3 dữ liệu, từ trên xuống dưới:  Cường độ quang học thơ.

 Trích xuất tín hiệu nhịp tim.

 Mật độ phổ công suất, với cực đại cục bộ cho biết nhịp tim (tính bằng nhịp mỗi phút).

(Code để chạy chương trình này nằm ở PHỤ LỤC 1.3)

Một phần của tài liệu Ứng dụng xử lý ảnh trong nhận diện điều khiển ô tô (Trang 97 - 98)

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

(181 trang)