
    i}                     6   S SK Jr  S SK Jr  S SK Jr  S SK Jr  S SKrS SKrS SKrS SK	r	S SK
r
S SKrS SKr\R                  R                  \R                  R                  \5      5      r\R                  R%                  \R                  R                  \R                  R'                  \S5      5      5        S SKrS SKJrJrJrJr  S SKJr  S SKJrJr  S S	K J!r!J"r"  S S
K#J$r$J%r%J&r&  S SK'J(r(  S SK)J*r*  S SK+J,r,  S SK-J.r.  \!r/\!r0\"r1\*r2\!r3\.r./ SQr4S r5S r6SS jr7g)    )absolute_import)division)print_function)unicode_literalsNz../..)Dataset
DataLoaderBatchSamplerDistributedBatchSampler)	transformcreate_operators)SimpleDataSetMultiScaleDataSet)LMDBDataSetLMDBDataSetSRLMDBDataSetTableMaster)	PGDataSet)PubTabDataSet)MultiScaleSampler)LaTeXOCRDataSet)build_dataloaderr   r   set_signal_handlersc                     [         R                  " 5       n[         R                  " [         R                  " 5       5      n[        SR	                  X#5      5        [         R
                  " U[        R                  5        g)zkill all child processesz(main proc {} exit, kill process group {}N)osgetpidgetpgidprintformatkillpgsignalSIGKILL)sig_numframepidpgids       ]/var/www/html/banglarbhumi/venv/lib/python3.13/site-packages/paddleocr/ppocr/data/__init__.pyterm_mpr&   6   sG    
))+C::biik"D	
7
>
>s
IJIIdFNN#    c                  ,   [         R                  " 5       n  [         R                  " U 5      nX:X  aS  [        R                  " [        R                  [
        5        [        R                  " [        R                  [
        5        g g ! [         a     g f = fN)r   r   r   r   SIGINTr&   SIGTERMAttributeError)r#   r$   s     r%   r   r   >   se    
))+C3zz# ;MM&--1MM&..'2    	s   B 
BBc           
      F   [         R                  " U 5      n / SQnX   S   S   nXe;   d   [        SR                  U5      5      5       eUS;   d   S5       e[	        U5      " XX45      nX   S   nUS   n	US	   n
US
   nUS   nSUR                  5       ;   a  US   nOSnUS:X  a@  SX   ;   a+  X   S   nUR                  S5      n[	        U5      " U40 UD6nO[        UU	UU
S9nO
[        XyXS9nSU;   a  SSK	J
n  [        UUS   5      " 5       nOS n[        UUUUSUUS9nU$ )N)r   r   r   r   r   r   r   TextDetDatasetTextRecDatasetMSTextRecDatasetPubTabTableRecDataset
KieDatasetr   datasetnamezDataSet only support {})TrainEvalTestz#Mode should be Train, Eval or Test.loaderbatch_size_per_card	drop_lastshufflenum_workersuse_shared_memoryTr5   sampler)r3   
batch_sizer;   r:   
collate_fn   )r@   )r3   batch_samplerplacesr<   return_listr=   r@   )copydeepcopy	Exceptionr   evalkeyspopr
   r	    r@   getattrr   )configmodedeviceloggerseedsupport_dictmodule_namer3   loader_configr?   r:   r;   r<   r=   config_samplersampler_namerB   r@   data_loaders                      r%   r   r   S   s   ]]6"FL ,y)&1K& 	!((6) & ,,S.SS,;f;GL*M45Jk*II&G.Km0022)*=> w$#\)4N)--f5L .wI.IM3%#	M %G
 }$ Z|)DEG

#+K r'   r)   )8
__future__r   r   r   r   r   sysnumpynpskimagepaddler   randompathdirnameabspath__file____dir__appendjoinrE   	paddle.ior   r   r	   r
   paddle.distributeddistributeddistppocr.data.imaugr   r   ppocr.data.simple_datasetr   r   ppocr.data.lmdb_datasetr   r   r   ppocr.data.pgnet_datasetr   ppocr.data.pubtab_datasetr   ppocr.data.multi_scale_samplerr   ppocr.data.latexocr_datasetr   r.   r/   r0   r1   r2   __all__r&   r   r    r'   r%   <module>rs      s    '  % ' 	 
     
''//"''//(3
4 Wg >? @  P P ! 8 F V V . 3 < 7 $ % 
!
V$3*Fr'   