4b379d6001cf37b018bcf4cfb59bf4f8838f117e
Faces coming back too small or too low quality had no lever to pull: YuNet's own confidence floor was hardcoded, and no minimum face size or sharpness check existed anywhere in the pipeline. Three new recognition preferences (min-face-size-fraction, min-detection-confidence, min-sharpness), visible/editable in Settings, filtered once in MediaRecognitionService.detect() so they apply regardless of which engine produced the region. Every default preserves current behaviour exactly (confidence default matches YuNet's existing 0.6 floor, the other two default to disabled) -- strictly opt-in. Sharpness is a variance-of-Laplacian score on the face crop, resized to a fixed canonical size first so it stays comparable across differently sized faces -- no new dependency or model, reuses the image already decoded for detection. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JzvA5ySQUsYrMUTj7sHxFA
Description
No description provided
54 MiB
Languages
Java
97.4%
CSS
1.5%
Python
0.9%
JavaScript
0.2%