Spaces:
Sleeping
Sleeping
| # common dependencies | |
| import os | |
| import warnings | |
| import logging | |
| from typing import Any, Dict, List, Tuple, Union, Optional | |
| # this has to be set before importing tensorflow | |
| os.environ["TF_USE_LEGACY_KERAS"] = "1" | |
| # pylint: disable=wrong-import-position | |
| # 3rd party dependencies | |
| import numpy as np | |
| import pandas as pd | |
| import tensorflow as tf | |
| # package dependencies | |
| from deepface.commons import package_utils, folder_utils | |
| from deepface.modules import ( | |
| recognition, | |
| demography, | |
| ) | |
| # users should install tf_keras package if they are using tf 2.16 or later versions | |
| package_utils.validate_for_keras3() | |
| # create required folders if necessary to store model weights | |
| folder_utils.initialize_folder() | |
| def analyze( | |
| img_path: Union[str, np.ndarray], | |
| actions: Union[tuple, list] = ("emotion", "age", "gender", "race"), | |
| enforce_detection: bool = True, | |
| detector_backend: str = "opencv", | |
| align: bool = True, | |
| expand_percentage: int = 0, | |
| silent: bool = False, | |
| ) -> List[Dict[str, Any]]: | |
| return demography.analyze( | |
| img_path=img_path, | |
| actions=actions, | |
| enforce_detection=enforce_detection, | |
| detector_backend=detector_backend, | |
| align=align, | |
| expand_percentage=expand_percentage, | |
| silent=silent, | |
| ) | |
| def find( | |
| img_path: Union[str, np.ndarray], | |
| db_path: str, | |
| model_name: str = "VGG-Face", | |
| distance_metric: str = "cosine", | |
| enforce_detection: bool = True, | |
| detector_backend: str = "opencv", | |
| align: bool = True, | |
| expand_percentage: int = 0, | |
| threshold: Optional[float] = None, | |
| normalization: str = "base", | |
| silent: bool = False, | |
| ) -> List[pd.DataFrame]: | |
| return recognition.find( | |
| img_path=img_path, | |
| db_path=db_path, | |
| model_name=model_name, | |
| distance_metric=distance_metric, | |
| enforce_detection=enforce_detection, | |
| detector_backend=detector_backend, | |
| align=align, | |
| expand_percentage=expand_percentage, | |
| threshold=threshold, | |
| normalization=normalization, | |
| silent=silent, | |
| ) | |