An Effective Algorithm for Beat-to-Beat Heart Rate Monitoring from Ballistocardiograms