cuốn sách gpt4 ai đã làm

python - Theo dõi nhịp tim bằng OpenCV

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-03 21:13:56 25 4
mua khóa gpt4 Nike

Tôi đang cố gắng xây dựng một máy đo nhịp tim trong đó người dùng có thể đặt ngón tay lên máy ảnh khi bật đèn flash và nhịp tim sẽ được hiển thị cho anh ta.

Hiện tại, tôi đang quay video từ điện thoại và xử lý video bằng OpenCV trong máy tính xách tay của mình.

Các bước tôi làm theo là:

  • Quay video
  • Tìm giá trị mặt phẳng màu đỏ trung bình cho mỗi khung
  • Lọc dữ liệu để loại bỏ các đỉnh không mong muốn
  • Tính giá trị đỉnh và hiển thị nhịp tim

    nhập numpy dưới dạng np
    nhập khẩu cv2

    #kết nối với tệp video đã quay được lấy từ thiết bị di động
    cap = cv2.VideoCapture('heart_rate.mp4')

    #lấy số lượng khung hình
    no_of_frames = int(cap.get(7))

    #gán giá trị 0 màu đỏ ban đầu cho mỗi khung hình
    red_plane = np.zeros(no_of_frames)

    #time_list được sử dụng để lưu trữ thời gian xuất hiện của từng khung hình trong video
    time_list=[]
    t=0

    #khung hình camera mỗi giây là 30 và do đó, mỗi khung hình sẽ tích lũy sau 1/30 giây
    chênh lệch = 1/30
    cho tôi trong phạm vi (no_of_frames):

    #đọc khung hình
    ret,frame = cap.read()
    chiều dài, chiều rộng, kênh = frame.shape

    #tính giá trị trung bình màu đỏ trong khung
    red_plane[i] = np.sum(frame[:,:,2])/(length*width)
    time_list.append(t)
    t = t+chênh lệch


    cap.release()

Tôi không thể áp dụng bộ lọc thông thấp để làm mịn dữ liệu của mình và tìm các đỉnh bằng OpenCV. Mọi trợ giúp đều sẽ tuyệt vời.

câu trả lời hay nhất

Tôi đang tạo video ở tốc độ 30FPS, tính tổng r kênh cho mỗi khung hình và lưu tổng trung bình vào danh sách. Sau đó tôi vẽ danh sách trong matplotlib như sau.

nhập mô tả hình ảnh ở đây

Chúng ta có thể dễ dàng tìm thấy khung từ 90 đóng khung 300 khoảng tám đỉnh. Nói cách khác, trong 200 khung hình có 7 chu kỳ (quay trong 200/30 giây), vậy nhịp tim là 7/(200/30) = 21/20 => 63/60. Tức là nhịp tim của tôi là 63.

có lẽ,Phân tích Fourier sẽ giúp ích. Nhưng thật không may, tôi vẫn không biết cách phân tích đường cong này trong một chương trình...

(vì tôi quên mất AlanV.Oppenh của Tín hiệu & Hệ thống )

TÔI...


GIF ngón tay nhịp tim.

nhập mô tả hình ảnh ở đây

Về python - máy đo nhịp tim bằng OpenCV, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/34516323/

25 4 0
không gian vũ trụ
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress