
    j	                         d dl ZdgZdeej                 deeeej        f                  dedededeeeej        f                  fd	ZdS )
    N_remove_paddingpages	loc_predspreserve_aspect_ratiosymmetric_padassume_straight_pagesreturnc           
      0   |rg }t          | |          D ]|\  }}|                                D ]`\  }}	|j        d         |j        d         }}
|
|k    r|rL|r$|	ddddgf         dz
  |
z  |z  dz   |	ddddgf<   n|	dddddf         dz
  |
z  |z  dz   |	dddddf<   n|r|	ddddgfxx         |
|z  z  cc<   n|	dddddfxx         |
|z  z  cc<   n||
k    r|rL|r$|	ddddgf         dz
  |z  |
z  dz   |	ddddgf<   n\|	dddddf         dz
  |z  |
z  dz   |	dddddf<   n6|r|	ddddgfxx         ||
z  z  cc<   n|	dddddfxx         ||
z  z  cc<   |                    |t	          j        |	dd          i           b~|S |S )a  Remove padding from the localization predictions

    Args:
        pages: list of pages
        loc_preds: list of localization predictions
        preserve_aspect_ratio: whether the aspect ratio was preserved during padding
        symmetric_pad: whether the padding was symmetric
        assume_straight_pages: whether the pages are assumed to be straight

    Returns:
        list of unpaded localization predictions
    r      N   g      ?   )zipitemsshapeappendnpclip)r   r   r   r   r   rectified_predspagedict_loc_predskloc_predhws               e/var/www/html/Carbon-Document/venv/lib/python3.11/site-packages/doctr/models/detection/_utils/base.pyr   r      s   &  $'y$9$9 	E 	E D.-3355 E E8z!}djm1q55$ 	70 X3;AAA1vI3F3LPQ2QTU2UX[2[HQQQAY//19!!!QQQ'1BS1HA0MPQ0QTW0WHQQQ1W--0 7$QQQAY///1q58////$QQQ1W---Q6----UU$ 	70 X3;AAA1vI3F3LPQ2QTU2UX[2[HQQQAY//19!!!QQQ'1BS1HA0MPQ0QTW0WHQQQ1W--0 7$QQQAY///1q58////$QQQ1W---Q6---&&278Q+B+B'CDDDD5E6     )	numpyr   __all__listndarraydictstrboolr    r   r   <module>r%      s       
3
3Dbj)*3  3 	3
  3 
$sBJ
 3 3 3 3 3 3r   