How fantiflex/ulm26 works
Minority Estimation combines a reproducible stimulus-preparation pipeline with three browser-based study conditions. The main workflow audits CFD metadata, selects and age-matches face stimuli, extracts face regions and luminance, then generates paired face and grayscale-circle matrices for participant estimation trials. The README documents the study conditions and processing stages; source excerpts show selected pipeline calls and shared utilities. Some matrix-to-experiment wiring is documented but the generated-matrix directory is absent from the supplied tree, so that connection is based on the README.
Main entry points: 04_generate_matrices.py Paired Matrix Generation · 03_extract_faces.py Face Extraction · 02_build_stimuli.py Stimulus Selection · cfd_manifest.py Manifest Harmonization
Components 18
Metadata Curation
- CFD Audit
scripts/stimulus_preparation/01_audit_cfd_manifest.py - Manifest Harmonization
src/minority_estimation/cfd_manifest.py - Stimulus Selection
scripts/stimulus_preparation/02_build_stimuli.py - Image Matching and Filtering
src/minority_estimation/stimuli.py - Stimulus Validation
src/minority_estimation/validation.py - Age Matching
scripts/stimulus_preparation/02b_age_match_stimuli.py - Stimulus QC
scripts/stimulus_preparation/02c_plot_stimulus_qc.py
Stimulus Engineering
- Face Extraction
scripts/stimulus_preparation/03_extract_faces.py - Face Area Calibration
scripts/stimulus_preparation/03b_analyze_face_area.py - Luminance Analysis
scripts/stimulus_preparation/03c_analyze_mean_luminance.py - Paired Matrix Generation
scripts/stimulus_preparation/04_generate_matrices.py
Study Delivery
- Mixed Condition
experiment/mixed/script.js - Social-only Condition
experiment/social_only/script.js - Non-social Condition
experiment/nonsocial_only/script.js
Shared Pipeline
- Face Crop Utility
src/minority_estimation/image_processing.py - Study Configuration
src/minority_estimation/config.py - Data Schemas
src/minority_estimation/schemas.py
Other components
- Study Participant
Connections 23
- CFD Audit → Manifest Harmonization: loads and harmonizes
scripts/stimulus_preparation/01_audit_cfd_manifest.py - Manifest Harmonization → Data Schemas: checks columns
src/minority_estimation/cfd_manifest.py - Stimulus Selection → Manifest Harmonization: loads metadata
scripts/stimulus_preparation/02_build_stimuli.py - Stimulus Selection → Image Matching and Filtering: builds selection
scripts/stimulus_preparation/02_build_stimuli.py - Stimulus Selection → Stimulus Validation: validates stimuli
scripts/stimulus_preparation/02_build_stimuli.py - Image Matching and Filtering → Data Schemas: requires columns
src/minority_estimation/stimuli.py - Stimulus Validation → Data Schemas: requires columns
src/minority_estimation/validation.py - CFD Audit → Stimulus QC: produces audit inputs
- Age Matching → Face Extraction: selects final set
README.md - Face Extraction → Face Crop Utility: uses crop settings
scripts/stimulus_preparation/03_extract_faces.py - Face Extraction → Study Configuration: uses processing settings
scripts/stimulus_preparation/03_extract_faces.py - Face Extraction → Face Area Calibration: measures face regions
- Face Extraction → Luminance Analysis: records luminance
- Paired Matrix Generation → Face Crop Utility: uses crop utility
scripts/stimulus_preparation/04_generate_matrices.py - Paired Matrix Generation → Study Configuration: uses matrix settings
scripts/stimulus_preparation/04_generate_matrices.py - Paired Matrix Generation → Face Area Calibration: uses calibrated size
README.md - Paired Matrix Generation → Luminance Analysis: uses face luminance
README.md - Paired Matrix Generation → Mixed Condition: supplies shared matrices
README.md - Paired Matrix Generation → Social-only Condition: supplies face matrices
README.md - Paired Matrix Generation → Non-social Condition: supplies circle matrices
README.md - Study Participant → Mixed Condition: completes condition
README.md - Study Participant → Social-only Condition: completes condition
README.md - Study Participant → Non-social Condition: completes condition
README.md