# exordium
[![License](https://img.shields.io/badge/license-MIT-yellow.svg)](LICENSE)
[![python](https://img.shields.io/badge/Python-3.11-3776AB.svg?style=flat&logo=python&logoColor=white)](https://www.python.org)
[![pytorch](https://img.shields.io/badge/PyTorch-2.0.1-EE4C2C.svg?style=flat&logo=pytorch)](https://pytorch.org)
[![Checked with mypy](https://www.mypy-lang.org/static/mypy_badge.svg)](https://www.mypy-lang.org/)
Collection of preprocessing functions and deep learning methods.
# Supported features
## Audio
* frequently used io for audio files
* openSMILE feature extraction
* spectrogram calculation
* Wav2Vec2 feature extraction
* CLAP feature extraction
## Video
* frequently used io for videos and frames
* bounding box manipulation methods
* face detection with RetinaFace
* face landmarks and head pose with 3DDFA_V2
* body pose estimation with max-human-pose-estimator
* categorical and dimensional emotion estimation with EmoNet
* iris and pupil landmark estimation with MediaPipe Iris
* fine eye landmark estimation with MediaPipe FaceMesh
* eye gaze vector estimation with L2CS-Net
* tracking using IoU and DeepFace
* FAb-Net feature extraction
* OpenFace feature extraction
* R2+1D feature extraction
* Robust Video Matting background removal
* SWIN transformer feature extraction
* FaceMesh landmark estimation
* CLIP feature extraction
* OpenGraphAU action unit estimation
*
## Text
* BERT feature extraction
* RoBERTa feature extraction
* XML-RoBERTa feature extraction
* Whisper fast speech-to-text
## Utils
* parallel processing
* io decorators
* loss functions
* normalization
* padding/truncating
## Visualization
* graphs
* 3D headpose
* 2D landmarks
* gaze
* saliency maps
* dataframes to images
# Setup
### Install package with all base and optional dependencies from PyPI
```
pip install exordium[all]
```
### Install package with base dependencies from PyPI
```
pip install exordium
```
### Install optional dependencies for specific modules
The following extras will install the base and specific dependencies for using TDDFA_V2.
```
pip install exordium[tddfa]
```
You can install multiple optional dependencies as well.
```
pip install exordium[tddfa,audio]
```
#### Supported extras definitions:
| extras tag | description |
| --- | --- |
| audio | dependencies to process audio data |
| text | dependency to process textual data |
| tddfa | dependencies of TDDFA_V2 for landmark and headpose estimation, or related transformations |
| detection | dependencies for automatic face detection and tracking in videos |
| video | dependencies for various video feature extraction methods |
| all | all previously described extras will be installed |
Note: If you are not sure which tag should be used, just go with the all-mighty "all".
### Install package for development
```
git clone https://github.com/fodorad/exordium
cd exordium
pip install -e .[all]
pip install -U -r requirements.txt
python -m unittest discover -s test
```
# Projects using exordium
### (2023) BlinkLinMulT
LinMulT is trained for blink presence detection and eye state recognition tasks.
Our results demonstrate comparable or superior performance compared to state-of-the-art models on 2 tasks, using 7 public benchmark databases.
* paper: BlinkLinMulT: Transformer-based Eye Blink Detection (accepted, available soon)
* code: https://github.com/fodorad/BlinkLinMulT
### (2022) PersonalityLinMulT
LinMulT is trained for Big Five personality trait estimation using the First Impressions V2 dataset and sentiment estimation using the MOSI and MOSEI datasets.
* paper: Multimodal Sentiment and Personality Perception Under Speech: A Comparison of Transformer-based Architectures ([pdf](https://proceedings.mlr.press/v173/fodor22a/fodor22a.pdf), [website](https://proceedings.mlr.press/v173/fodor22a.html))
* code: https://github.com/fodorad/PersonalityLinMulT
# What's next
* Add support for Blink estimation (DenseNet121, LinT, BlinkLinMulT)
* Add support for Personality trait estimation (PersonalityLinMulT)
# Updates
* 1.3.0: Add support for OpenGraphAU, FaceMesh, SWIM, RVM, XML-RoBERTa, CLIP, CLAP.
* 1.2.0: Add support for L2CS-Net gaze estimation.
* 1.1.0: PyPI publish.
* 1.0.0: Release version.
# Contact
* Ádám Fodor (foauaai@inf.elte.hu)
Raw data
{
"_id": null,
"home_page": null,
"name": "exordium",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.11",
"maintainer_email": null,
"keywords": "audio, detection, multimodal, preprocess, text, tracking, video",
"author": null,
"author_email": "fodorad <foauaai@inf.elte.hu>",
"download_url": "https://files.pythonhosted.org/packages/8f/0f/a3f2128b023378eb05df5a0ccf060c0b8493d66a862ef884065a70b33d0d/exordium-1.3.0.tar.gz",
"platform": null,
"description": "# exordium\n[![License](https://img.shields.io/badge/license-MIT-yellow.svg)](LICENSE)\n[![python](https://img.shields.io/badge/Python-3.11-3776AB.svg?style=flat&logo=python&logoColor=white)](https://www.python.org)\n[![pytorch](https://img.shields.io/badge/PyTorch-2.0.1-EE4C2C.svg?style=flat&logo=pytorch)](https://pytorch.org)\n[![Checked with mypy](https://www.mypy-lang.org/static/mypy_badge.svg)](https://www.mypy-lang.org/)\n\nCollection of preprocessing functions and deep learning methods.\n\n# Supported features\n## Audio\n* frequently used io for audio files\n* openSMILE feature extraction\n* spectrogram calculation\n* Wav2Vec2 feature extraction\n* CLAP feature extraction\n\n## Video\n* frequently used io for videos and frames\n* bounding box manipulation methods\n* face detection with RetinaFace\n* face landmarks and head pose with 3DDFA_V2\n* body pose estimation with max-human-pose-estimator\n* categorical and dimensional emotion estimation with EmoNet\n* iris and pupil landmark estimation with MediaPipe Iris\n* fine eye landmark estimation with MediaPipe FaceMesh\n* eye gaze vector estimation with L2CS-Net\n* tracking using IoU and DeepFace\n* FAb-Net feature extraction\n* OpenFace feature extraction\n* R2+1D feature extraction\n* Robust Video Matting background removal\n* SWIN transformer feature extraction\n* FaceMesh landmark estimation\n* CLIP feature extraction\n* OpenGraphAU action unit estimation\n* \n\n## Text\n* BERT feature extraction\n* RoBERTa feature extraction\n* XML-RoBERTa feature extraction\n* Whisper fast speech-to-text\n\n## Utils\n* parallel processing\n* io decorators\n* loss functions\n* normalization\n* padding/truncating\n\n## Visualization\n* graphs\n* 3D headpose\n* 2D landmarks\n* gaze\n* saliency maps\n* dataframes to images\n\n# Setup\n### Install package with all base and optional dependencies from PyPI\n```\npip install exordium[all]\n```\n### Install package with base dependencies from PyPI\n```\npip install exordium\n```\n### Install optional dependencies for specific modules\nThe following extras will install the base and specific dependencies for using TDDFA_V2.\n```\npip install exordium[tddfa]\n```\nYou can install multiple optional dependencies as well.\n```\npip install exordium[tddfa,audio]\n```\n\n#### Supported extras definitions:\n| extras tag | description |\n| --- | --- |\n| audio | dependencies to process audio data |\n| text | dependency to process textual data |\n| tddfa | dependencies of TDDFA_V2 for landmark and headpose estimation, or related transformations |\n| detection | dependencies for automatic face detection and tracking in videos |\n| video | dependencies for various video feature extraction methods |\n| all | all previously described extras will be installed |\n\nNote: If you are not sure which tag should be used, just go with the all-mighty \"all\".\n\n### Install package for development\n```\ngit clone https://github.com/fodorad/exordium\ncd exordium\npip install -e .[all]\npip install -U -r requirements.txt\npython -m unittest discover -s test\n```\n\n# Projects using exordium\n\n### (2023) BlinkLinMulT\nLinMulT is trained for blink presence detection and eye state recognition tasks.\nOur results demonstrate comparable or superior performance compared to state-of-the-art models on 2 tasks, using 7 public benchmark databases.\n* paper: BlinkLinMulT: Transformer-based Eye Blink Detection (accepted, available soon)\n* code: https://github.com/fodorad/BlinkLinMulT\n\n### (2022) PersonalityLinMulT\nLinMulT is trained for Big Five personality trait estimation using the First Impressions V2 dataset and sentiment estimation using the MOSI and MOSEI datasets.\n* paper: Multimodal Sentiment and Personality Perception Under Speech: A Comparison of Transformer-based Architectures ([pdf](https://proceedings.mlr.press/v173/fodor22a/fodor22a.pdf), [website](https://proceedings.mlr.press/v173/fodor22a.html))\n* code: https://github.com/fodorad/PersonalityLinMulT\n\n# What's next\n* Add support for Blink estimation (DenseNet121, LinT, BlinkLinMulT)\n* Add support for Personality trait estimation (PersonalityLinMulT)\n\n# Updates\n* 1.3.0: Add support for OpenGraphAU, FaceMesh, SWIM, RVM, XML-RoBERTa, CLIP, CLAP.\n* 1.2.0: Add support for L2CS-Net gaze estimation.\n* 1.1.0: PyPI publish.\n* 1.0.0: Release version.\n\n# Contact\n* \u00c1d\u00e1m Fodor (foauaai@inf.elte.hu)",
"bugtrack_url": null,
"license": null,
"summary": "Collection of utility tools and deep learning methods.",
"version": "1.3.0",
"project_urls": {
"Documentation": "https://github.com/fodorad/exordium#readme",
"Issues": "https://github.com/fodorad/exordium/issues",
"Source": "https://github.com/fodorad/exordium"
},
"split_keywords": [
"audio",
" detection",
" multimodal",
" preprocess",
" text",
" tracking",
" video"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "66cfdfc718e487686c8e39cb94d1f0b3027b19699f2853c3734b985b1f4a5e80",
"md5": "836ffbf59e03c48e6f3be28e0f3740ea",
"sha256": "91f3686aa950ec5ad937d39febe6ab2194beb7934f6939653a3e8166776552e9"
},
"downloads": -1,
"filename": "exordium-1.3.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "836ffbf59e03c48e6f3be28e0f3740ea",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.11",
"size": 94568,
"upload_time": "2024-11-26T14:04:22",
"upload_time_iso_8601": "2024-11-26T14:04:22.938888Z",
"url": "https://files.pythonhosted.org/packages/66/cf/dfc718e487686c8e39cb94d1f0b3027b19699f2853c3734b985b1f4a5e80/exordium-1.3.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8f0fa3f2128b023378eb05df5a0ccf060c0b8493d66a862ef884065a70b33d0d",
"md5": "dca26fdcfc9d85810b313387a2225cf0",
"sha256": "e6f81a2752f4aeeabc4f077d61aad1585e9c854dc07c972ff8ccab08256f0d1f"
},
"downloads": -1,
"filename": "exordium-1.3.0.tar.gz",
"has_sig": false,
"md5_digest": "dca26fdcfc9d85810b313387a2225cf0",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.11",
"size": 20275822,
"upload_time": "2024-11-26T14:04:27",
"upload_time_iso_8601": "2024-11-26T14:04:27.211084Z",
"url": "https://files.pythonhosted.org/packages/8f/0f/a3f2128b023378eb05df5a0ccf060c0b8493d66a862ef884065a70b33d0d/exordium-1.3.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-26 14:04:27",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "fodorad",
"github_project": "exordium#readme",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "exordium"
}