Model card
Use responsibly

Emotion backbones

We prioritize richer, well-labeled checkpoints to reduce bias and increase robustness before falling back to legacy FER weights.

  • AffectNet (`AffectNet_trained_keras.h5`) — 8 emotions including contempt; preferred when present.
  • Pure CK+48 (`Pure CK+48.json` + weights) — 7-class CK+ baseline.
  • CK+-based (`CK+-based.h5`) — alternate CK+ head.
  • Legacy FER (`emotion_model.h5`) — last resort fallback.

Output labels auto-align to the model’s final dimension (7 or 8). If a mismatch occurs, generic `Class_n` labels are shown to avoid misreporting.

Preprocessing
  • CLAHE on grayscale faces to stabilize lighting.
  • MTCNN boxes when available; Haar cascade fallback on CPU-only.
  • 48×48 grayscale, normalized to [0,1], plus horizontal flip test-time averaging.
Ethics & limits
  • Not a diagnostic. Use as a reflective aid.
  • Uploads are stored via Django storage with sanitized names; no raw keys in code.
  • Models inherit dataset biases. Always confirm with human judgment.