o
    0ÎjV  ã                   @   s\   d dl Z d dlZddlmZmZ ddlmZmZ edƒr d dl	Z	edƒG dd„ deƒƒZ
dS )	é    Né   )Úclass_requires_depsÚis_dep_availableé   )ÚBaseCVResultÚ	JsonMixinzopencv-contrib-pythonc                   @   s8   e Zd ZdZdd„ Zdd„ Zdd„ Zdd	„ Zd
d„ ZdS )ÚTableRecResultZSaveTableResultsc                 C   sT   | d }| d }t |ƒdkr t |d ƒdkr |  ||¡}d|iS |  ||¡}d|iS )NÚ	input_imgZbboxr   r   Úres)ÚlenÚdraw_rectangleÚ	draw_bbox)ÚselfÚimageZbbox_resZvis_img© r   ú|/var/www/html/Deteccion_Ine/venv/lib/python3.10/site-packages/paddlex/inference/models/table_structure_recognition/result.pyÚ_to_img   s   ÿzTableRecResult._to_imgc           	      C   sL   t  |¡}| ¡ }| t¡D ]}|\}}}}t |||f||fdd¡ q|S )r   ©éÿ   r   r   é   )ÚnpÚarrayÚcopyÚastypeÚintÚcv2Z	rectangle)	r   r   ÚboxesZimg_showÚboxÚx1Úy1Zx2Úy2r   r   r   r   '   s   
zTableRecResult.draw_rectanglec                 C   sF   |D ]}t  t  |¡g d¢¡ t j¡}t t  |¡|gddd¡}q|S )r   )éÿÿÿÿé   r   Tr   r   )r   Zreshaper   r   Zint64r   Z	polylines)r   r   r   r   r   r   r   r   0   s   zTableRecResult.draw_bboxc                 O   ó,   t  | ¡}| d¡ tj|g|¢R i |¤ŽS ©Nr	   )r   ÚdeepcopyÚpopr   Ú_to_str©r   ÚargsÚkwargsÚdatar   r   r   r'   7   ó   

zTableRecResult._to_strc                 O   r#   r$   )r   r%   r&   r   Ú_to_jsonr(   r   r   r   r-   <   r,   zTableRecResult._to_jsonN)	Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r'   r-   r   r   r   r   r      s    		r   )r   Únumpyr   Z
utils.depsr   r   Zcommon.resultr   r   r   r   r   r   r   r   Ú<module>   s   