# FaceEmbeddingsRecognitionPlugin
The `FaceEmbeddingsRecognitionPlugin` is a plugin designed for recognizing and managing face embeddings.
It uses [face_recognition](https://github.com/ageitgey/face_recognition) to extract face embeddings and integrates with [ovos-chromadb-embeddings-plugin](https://github.com/TigreGotico/ovos-chromadb-embeddings-plugin) for storing and retrieving voice embeddings.
## Features
- **Face Embeddings Extraction**: Converts images into face embeddings using the `face_recognition` library.
- **Face Data Storage**: Stores and retrieves face embeddings using `ChromaEmbeddingsDB`.
- **Face Data Management**: Provides methods to add, query, and delete face embeddings associated with user IDs.
**Note:** `face_recognition` also requires `dlib`, which may require additional setup. Please refer to the [face_recognition installation instructions](https://github.com/ageitgey/face_recognition#installation) for detailed steps.
## Usage
Here is a quick example of how to use the `FaceEmbeddingsRecognitionPlugin`:
```python
from ovos_face_embeddings import FaceEmbeddingsRecognitionPlugin
from ovos_chromadb_embeddings import ChromaEmbeddingsDB
db = ChromaEmbeddingsDB("./face_db")
f = FaceEmbeddingsRecognitionPlugin(db)
a = "/home/miro/PycharmProjects/ovos-user-id/a1.jpg"
a2 = "/home/miro/PycharmProjects/ovos-user-id/a2.jpg"
b = "/home/miro/PycharmProjects/ovos-user-id/b.jpg"
import face_recognition # helper to load from file easily
e1 = face_recognition.load_image_file(a)
e2 = face_recognition.load_image_file(a2)
b = face_recognition.load_image_file(b)
f.add_face("arnold", e1)
f.add_face("silvester", b)
print(f.query(e1))
print(f.query(e2))
print(f.query(b))
```
Raw data
{
"_id": null,
"home_page": "https://github.com/TigreGotico/ovos-face-embeddings-plugin",
"name": "ovos-face-embeddings-plugin",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "OVOS openvoiceos plugin face recognition",
"author": "jarbasai",
"author_email": "jarbasai@mailfence.com",
"download_url": "https://files.pythonhosted.org/packages/2a/54/cfc1ea344b9e153e9cc9eba19d83b6fcbe18c657eeb9ddf73b4c7c5557f3/ovos-face-embeddings-plugin-0.0.0a2.tar.gz",
"platform": null,
"description": "# FaceEmbeddingsRecognitionPlugin\n\nThe `FaceEmbeddingsRecognitionPlugin` is a plugin designed for recognizing and managing face embeddings. \n\nIt uses [face_recognition](https://github.com/ageitgey/face_recognition) to extract face embeddings and integrates with [ovos-chromadb-embeddings-plugin](https://github.com/TigreGotico/ovos-chromadb-embeddings-plugin) for storing and retrieving voice embeddings. \n\n## Features\n\n- **Face Embeddings Extraction**: Converts images into face embeddings using the `face_recognition` library.\n- **Face Data Storage**: Stores and retrieves face embeddings using `ChromaEmbeddingsDB`.\n- **Face Data Management**: Provides methods to add, query, and delete face embeddings associated with user IDs.\n\n**Note:** `face_recognition` also requires `dlib`, which may require additional setup. Please refer to the [face_recognition installation instructions](https://github.com/ageitgey/face_recognition#installation) for detailed steps.\n\n## Usage\n\nHere is a quick example of how to use the `FaceEmbeddingsRecognitionPlugin`:\n\n```python\nfrom ovos_face_embeddings import FaceEmbeddingsRecognitionPlugin\nfrom ovos_chromadb_embeddings import ChromaEmbeddingsDB\n\ndb = ChromaEmbeddingsDB(\"./face_db\")\nf = FaceEmbeddingsRecognitionPlugin(db)\n\na = \"/home/miro/PycharmProjects/ovos-user-id/a1.jpg\"\na2 = \"/home/miro/PycharmProjects/ovos-user-id/a2.jpg\"\nb = \"/home/miro/PycharmProjects/ovos-user-id/b.jpg\"\n\nimport face_recognition # helper to load from file easily\ne1 = face_recognition.load_image_file(a)\ne2 = face_recognition.load_image_file(a2)\nb = face_recognition.load_image_file(b)\n\nf.add_face(\"arnold\", e1)\nf.add_face(\"silvester\", b)\nprint(f.query(e1))\nprint(f.query(e2))\nprint(f.query(b))\n```\n\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A face recognition plugin for OVOS",
"version": "0.0.0a2",
"project_urls": {
"Homepage": "https://github.com/TigreGotico/ovos-face-embeddings-plugin"
},
"split_keywords": [
"ovos",
"openvoiceos",
"plugin",
"face",
"recognition"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "da7e918c664d554b9d206a99a3d7cf27d6f7a9e0c16c60dc8ba8348e1bdaad11",
"md5": "a23f970557a77253506f7700330b7df5",
"sha256": "27659fc594f1cf15e92d9eaebbef41d97158a88552521018b7643477a931cdb8"
},
"downloads": -1,
"filename": "ovos_face_embeddings_plugin-0.0.0a2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "a23f970557a77253506f7700330b7df5",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 3573,
"upload_time": "2024-10-25T20:37:17",
"upload_time_iso_8601": "2024-10-25T20:37:17.903600Z",
"url": "https://files.pythonhosted.org/packages/da/7e/918c664d554b9d206a99a3d7cf27d6f7a9e0c16c60dc8ba8348e1bdaad11/ovos_face_embeddings_plugin-0.0.0a2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2a54cfc1ea344b9e153e9cc9eba19d83b6fcbe18c657eeb9ddf73b4c7c5557f3",
"md5": "6467d1be36944d6a5ab3d7115478e435",
"sha256": "d57f29c7536effe88bc1870be6c27e626cda28fd0fb18ad3923161acc31fc4b4"
},
"downloads": -1,
"filename": "ovos-face-embeddings-plugin-0.0.0a2.tar.gz",
"has_sig": false,
"md5_digest": "6467d1be36944d6a5ab3d7115478e435",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 3175,
"upload_time": "2024-10-25T20:37:19",
"upload_time_iso_8601": "2024-10-25T20:37:19.601866Z",
"url": "https://files.pythonhosted.org/packages/2a/54/cfc1ea344b9e153e9cc9eba19d83b6fcbe18c657eeb9ddf73b4c7c5557f3/ovos-face-embeddings-plugin-0.0.0a2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-25 20:37:19",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "TigreGotico",
"github_project": "ovos-face-embeddings-plugin",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "ovos-face-embeddings-plugin"
}