Real-Time Temporal Superpixels for Unsupervised Remote Photoplethysmography

Serge Bobbia, Duncan Luguern, Yannick Benezeth, Keisuke Nakamura, Randy Gomez, Julien Dubois; Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR) Workshops, 2018, pp. 1341-1348


Segmentation is a critical step for many computer vision applications. Among them, the remote photoplethysmography technique is significantly impacted by the quality of region of interest segmentation. With the heart-rate estimation accuracy, the processing time is obviously a key issue for the real-time monitoring. Recent face detection algorithms can perform real-time processing, however for unsupervised algorithms, without any subject detection based on supervised learning, existing methods are not able to achieve real-time on regular platform. In this paper, we propose a new method to perform real-time unsupervised remote photoplethysmograhy. This technique is based on efficient temporally propagated superpixels segmentation. The proposed method performs the segmentation step by implicitly identifying the superpixel boundaries. Hence, only a fraction of the image is used to performed the segmentation which reduced greatly the computational burden of the process. The segmentation quality remains comparable to state of the art methods while computational time is divided by a factor up to 8 times. The efficiency of the superpixel segmentation allow us to propose a real-time unsupervised rPPG algorithm considering frames of 640x480, RGB, at 25 frames per second on a single core platform. We obtained real-time processing for 93% of precision at 2.5 beat per minute using our inhouse video database.

Related Material

author = {Bobbia, Serge and Luguern, Duncan and Benezeth, Yannick and Nakamura, Keisuke and Gomez, Randy and Dubois, Julien},
title = {Real-Time Temporal Superpixels for Unsupervised Remote Photoplethysmography},
booktitle = {Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR) Workshops},
month = {June},
year = {2018}