
    -Ji                         S SK Jr  S rg)    )medianc           
      T   U (       d  / $ U  H  nUS   US   S-  -   US'   M     [        S U  5       5      S-  n[        U S S9n / / pCU  HQ  nU(       d  U/nM  [        US   US	   S   -
  5      U::  a  UR                  U5        M=  UR                  U5        U/nMS     U(       a  UR                  U5        / n[	        US
5       H`  u  pg[        US S9nUR                  U[        [        S U 5       5      [        U5      -  5      SR                  S U 5       5      S.5        Mb     U$ )Nyh   y_centerc              3   *   #    U  H	  oS    v   M     g7f)r   N .0ws     (/var/www/html/land-ocr/words_to_lines.py	<genexpr>!words_to_lines.<locals>.<genexpr>
   s     -u!vu   g333333?c                     U S   $ )Nr   r
   r   s    r   <lambda> words_to_lines.<locals>.<lambda>   s    *    )key   c                     U S   $ )Nxr
   r   s    r   r   r      s    !C&r   c              3   *   #    U  H	  oS    v   M     g7f)r   Nr
   r   s     r   r   r   "   s     51:r    c              3   *   #    U  H	  oS    v   M     g7f)textNr
   r   s     r   r   r   #   s     51vYr   )line_idr   r   )	r   sortedabsappend	enumerateintsumlenjoin)wordsr   	thresholdlinescurrentresultilines           r   words_to_linesr0      s-   	#3!+*  -u--3I556E7cGq}wr{:6679DNN1LL!cG  WFUA&d 01S555D	ABHH555
 	 ' Mr   N)
statisticsr   r0   r
   r   r   <module>r2      s    #r   