Feature | Description |
---|---|
Face Detection | OneStopVision detects human faces, returning bounding boxes and key landmarks in a convenient JSON format. |
Face Recognition | OneStopVision calculates inter-face cosine similarities for recognition, extracting unique identity features in a single step. |
Facial Attribute Analysis | OneStopVision analyzes age, gender, and emotion with probabilistic insights, unlocking a deeper understanding of your visual content. |
Face Parsing | OneStopVision isolates facial regions with intelligent parsing, generating detailed masks for unparalleled control over your visual data. |
Landmark Extraction | OneStopVision extracts 68 key landmarks and delivers them in convenient JSON format. |
Head Pose Estimation | OneStopVision estimates head pose in yaw, pitch, and roll, even visualizing it directly on the image for an intuitive understanding of facial orientation. |
ControlNet Operations | OneStopVision empowers you with M-LSD, HED, OpenPose, depth estimation, and semantic segmentation, all visualized for seamless integration and groundbreaking visual analysis. |
- If you want to see how the features work, visit README_VIS.md.
- You can check what will be added as a feature in the next steps from the TODO.md file.
conda create --name onestop python==3.9.18 -y
conda activate onestop
# CUDA 11.8
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu118
pip install -r requirements.txt
bash downloadModels.sh
steamlit run app.py
- Face Detection: The structure used for face detection is taken from the DSFD-Pytorch-Inference repository.
- Face Recognition: The model used for face recognition was taken from the insightface repository. Arcface R100 backbone was used to compare the identities.
- Facial Attribute Analysis: MiVOLO repository was used for Gender and age estimation. ResidualMaskingNetwork repository was used for emotion recognition.
- Face Parsing: The face-parsing.PyTorch repository was used for face parsing.
- Landmark Extraction: The face-alignment repository was used for 68 landmark extraction.
- Head Pose Estimation: The 6DRepNet repository was used for head pose estimation.
- ControlNet Operations: The controlnet-aux library, lllyasviel/ControlNet models were used for ControlNet operations.