Mimics, Muscles, and Me

Paired facial sEMG and frontal video — frame-aligned, electrode-removed, with 3DMM fits.

One participant performed standardized facial movements and emotional expressions while surface electromyography and a frontal camera recorded together. Every clip is cut to one task, and the sEMG is resampled to the video frame rate, so signal and image line up by row index.

1 participant 4 sessions 95 clips 46 with sEMG 7 3DMM methods ~360 MB

01  What is happening here?

One person sat in front of a camera and did two kinds of things, twice each — once with sEMG electrodes on the face, once without. The electrode array measures muscle activity but corrupts the face for any image-based method, so the pipeline does three jobs on top of the raw recording:

STEP 1 · RECORD

sEMG + frontal video

11 facial muscles × 2 sides at 4096 Hz, and a 286×286 / 30 fps camera, running on independent clocks.

STEP 2 · ALIGN & CUT

Frame-align the modalities

Consensus cross-correlation of sEMG envelopes vs. video blendshapes finds the lag; clips are cut so sEMG row i = video frame i.

STEP 3 · CLEAN & FIT

Remove electrodes → 3DMM

MC-CycleGAN synthesizes electrode-free video; seven monocular 3D face reconstructors are fitted to it.

with electrodes With sEMG electrodes — raw frontal video
electrodes removed Electrodes removed — MC-CycleGAN
The same frame before and after electrode removal. The clean video is what every 3D face reconstruction is fitted to.

02  Two modalities, perfectly aligned

There was no hardware trigger LED, so alignment is statistical. After the cut, the sEMG envelope (22 channels, 11 muscles × L/R) shares one time axis with the video — the dashed marker in the heatmap below is the exact frame shown beside it.

happy video frame video frame 105
99_2S_emotion_12_happy
22-channel sEMG heatmap 22-channel sEMG envelope · the marker = that frame
For a smile, the muscles that light up are exactly the ones anatomy predicts: Zygomaticus (mouth corners up), Orbicularis Oculi (the Duchenne eye-squeeze), and Levator Labii Superioris. The sEMG is an RMS envelope in microvolt-scale native units, resampled to 30 Hz.

03  Two task paradigms

Two blocks, each recorded once with electrodes (S) and once without (N). The last letter of the session label tells you which.

SessionClipswith sEMGemotionschaede
99_1N130112
99_1S1212111
99_2N3602412
99_2S34342311

04  What's in the box

Iterate over MMM.csv — it is the authoritative inventory. The directory tree also holds files no row references.

DirectoryFilesContents
emg/46Per-clip sEMG CSV, one row per video frame, 22 channels
video/95Frontal video, cut to the synced window
video_no-cut/96Same clips before the sync cut (lead-in/out intact)
video_noelec/46Electrode-removed version of video/ (MC-CycleGAN)
video_noelec_params/3223DMM params fitted to video_noelec/, one folder per method
MMM.csvAuthoritative clip index
MMM_3DMM.csvIndex restricted to the 46 clips with 3DMM params

Seven 3D morphable-model methods

Per-frame parameters for all 46 clean clips; each file has one row per video frame, aligned to video frame i and sEMG row i.

DECAEMOCAv2Deep3DFace EIFERSMIRKFOCUSMediaPipe

05  Quick start

Download the archive, unzip it, and the dataset lives under MMM/. By downloading you agree to the license terms below (CC BY-NC 4.0).

MMM.zip — the full dataset (~360 MB): sEMG, video, electrode-removed video, and 3DMM fits from 7 methods.
⬇ Download MMM.zip
# unzip if needed
unzip MMM.zip        # -> MMM/

# in Python
# read pid as a string — it is zero-padded and pandas silently converts it
import pandas as pd
df = pd.read_csv("MMM/MMM.csv", dtype={"pid": str})

paired = df[df.emg.notna()]          # 46 clips: EMG + video, frame-aligned
clean  = df[df.type == "normal"]     # 49 electrode-free reference clips
uncut  = df["video_no-cut"]          # untrimmed variants (EMG does not apply)

# load one clip's sEMG — row i == video frame i
emg = pd.read_csv("MMM/" + paired.iloc[0]["emg"])   # 22 columns, 30 Hz

06  Citation & license

Use requires citing the three papers below. The MC-CycleGAN paper covers the electrode-removed videos that every 3DMM parameter set is fitted to.

EIFER — CVPR 2025
@inproceedings{buechner2025electromyography,
 doi = {10.1109/CVPR52734.2025.00029},
 year = {2025},
 booktitle = {IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
 title = {Electromyography-Informed Facial Expression Reconstruction for Physiological-Based Synthesis and Analysis},
 author = {Tim Büchner and Christoph Anders and Orlando Guntinas-Lichius and Joachim Denzler},
}
MC-CycleGAN — ACIVS 2023
@inproceedings{buechner2023improved,
 doi = {10.1007/978-3-031-45382-3_22},
 pages = {262-274},
 year = {2023},
 booktitle = {Advanced Concepts for Intelligent Vision Systems (Acivs)},
 author = {Tim Büchner and Orlando Guntinas-Lichius and Joachim Denzler},
 title = {Improved Obstructed Facial Feature Reconstruction for Emotion Recognition with Minimal Change CycleGANs},
}
sEMG recording protocol — Scientific Reports 2023
@article{guntinas2023high,
  title={High-resolution surface electromyographic activities of facial muscles during the six basic emotional expressions in healthy adults: a prospective observational study},
  author={Guntinas-Lichius, Orlando and Trentzsch, Vanessa and Mueller, Nadiya and Heinrich, Martin and Kuttenreich, Anna-Maria and Dobel, Christian and Volk, Gerd Fabian and Gra{\ss}me, Roland and Anders, Christoph},
  journal={Scientific reports},
  volume={13},
  number={1},
  pages={19214},
  year={2023},
  publisher={Nature Publishing Group UK London}
}
Provided under Attribution-NonCommercial 4.0 International (CC BY-NC 4.0) — free to share and adapt for any purpose excluding commercial use, with appropriate credit. See LICENSE.md.