I build a device called the INSPEC that detects REM sleep from a bedside infrared camera instead of electrodes. It watches the face under IR light and measures frame-to-frame pixel variance in the eye region. During quiet sleep the face is stable. During REM the eye movements under the lids produce measurable variance, which the device aggregates over time before it flags a REM period. Toss detection, whole-frame motion rejection, and face tracking filter out body movement and out-of-frame periods.
After I gave a talk on contactless REM detection, a sleep lab loaned me a clinical-grade EEG device. I recorded a full night wearing the EEG with the camera running at the bedside.
I scored the EEG with three independent sleep stage classifiers: ez6 and ez6moe from ezscore, and DreamentoScorer from Dreamento. The REM periods fell at the same times the camera had flagged REM from the video. The long REM periods late in the night, around hours three, five, and seven, matched in every classifier.