Team Ai
Apppublic

Explicite/api-test

sourceHugging Faceupdated 8mo agoView on Hugging Face
0likes
insightface_engine.cpython-312.pyc34 linesDownload Raw Back to __pycache__
1�

2�_�i_���ddlZddlZddlmZdad�Zd�Zd�Zdejdejde3fd	�Zd4ejdedejfd�Z
y)
�N)�FaceAnalysisc�`�t�#td��atjdd��tS)N�	buffalo_l)�name�����)�r)�ctx_id�det_size)�	_face_appr�prepare���^/Users/alexiseduardojuarezjaimes/Desktop/api-face-extractor/app/services/insightface_engine.py�get_face_apprs+���� �k�2�	�����j��9��rc�(�|syd�}t||��S)uL5    Si hay varias caras, escogemos la de mayor área (lo más común).6    Nc��|jjt�\}}}}td||z7�td||z8�zS)Nr)�bbox�astype�int�max��face�x1�y1�x2�y2s     r�areazpick_best_face.<locals>.areas=�����)�)�#�.���B��B��1�b��e�}�s�1�b��e�}�,�,r)�key)r)�facesrs  r�pick_best_facer s����-��u�$��rc��|jjt�\}}}}t|�t|�t|�t|�d�S)N)�top�right�bottom�left)rrrrs     r�to_bbox_dictr&s=���Y�Y�%�%�c�*�N�B��B���r�7�S��W��B���R��Q�Qr�a�b�returnc��|jd�}|jd�}|tjj|�dzz}|tjj|�dzz}t	tj9||��S)N�float32g�-���q=)r�np�linalg�norm�float�dot)r'r(s  r�cosine_similarityr1!sk��	�����A�	�����A�	�R�Y�Y�^�^�A�
��
&�'�A�	�R�Y�Y�^�^�A�
��
&�'�A������1���r�np_rgb�seedc��tjj|�}|j�}t	|jdd��}t	|jdd��}t
j|||��}|jdd\}}t	|jdd	��}t
j|dz|dzf|d10�}	t
j||	||ftjtj��}|S)ur11    Variantes suaves: brillo/contraste + rotación leve.12    Esto ayuda cuando hay barba, luz distinta, etc.13    g�������?g�������?i�����)�alpha�betaN�g�g@g�?)�flags�14borderMode)
r,�random�default_rng�copyr/�uniform�cv2�convertScaleAbs�shape�getRotationMatrix2D�15warpAffine�INTER_LINEAR�BORDER_REFLECT)16r2r3�rng�imgr6r7�h�w�angle�Ms17          r�augment_rgbrL(s���18
�)�)�19�20��21%�C�22�+�+�-�C�
�#�+�+�d�D�)�*�E�����S�"�%�&�D�23
�24�25�c��T�26:�C��9�9�R�a�=�D�A�q��#�+�+�d�C�(�)�E�����Q���A����s�;�A�27
�.�.��a�!�Q��s�/?�/?�C�L^�L^�28_�C��Jr)�numpyr,r?�insightface.apprrrr r&�ndarrayr/r1rrLr
rr�<module>rPsg���29�(��	��	 �R�30������31�32��u����33�34��#��"�*�*�r