diff --git a/ppg.cpp b/ppg.cpp index 1f80a34..9ba06e6 100644 --- a/ppg.cpp +++ b/ppg.cpp @@ -8,6 +8,7 @@ const int FPS = 30; bool isDiscardData = true; int countDiscard = 0; const int DISCARD_DURATION = 5; +const int BUFFER_DURATION = 30; int main() { @@ -62,6 +63,22 @@ int main() cv::imshow("Your Face PLS", frame); if (cv::waitKey(1000.0/FPS) >= 0) break; + + cv::Mat frame_forehead = frame(foreheadROI); + cv::Scalar avg_forehead = mean(frame_forehead); + + bool isBufferFull = false; + int sampleIdBuffer = 0; + cv::Mat greenSignal(1, FPS*BUFFER_DURATION, CV_64F); + if (!isBufferFull) + { + greenSignal.at(0, sampleIdBuffer) = avg_forehead[1] ; + sampleIdBuffer++; + if (sampleIdBuffer == FPS*BUFFER_DURATION) + { + isBufferFull = true; + } + } } } return 0;