
    9im(                     d    S SK JrJrJrJr  SSKJrJr  SSKJ	r	   " S S\5      r
 " S S\5      rg	)
   )add_simple_inference_argsget_subcommand_argsperform_simple_inferencestr2bool   )PaddleXPipelineWrapperPipelineCLISubcommandExecutor)create_config_from_structurec            	          ^  \ rS rSr                   SU 4S jjr\S 5       rSSSSSSSSS.S jrSSSSSSSSS.S jr\	S 5       r
S	 rS
rU =r$ )FormulaRecognitionPipeline   Nc                    > [        5       R                  5       nUR                  S5        UR                  S5        UU l        [        TU ]  " S0 UD6  g )Nselfkwargs )localscopypop_paramssuper__init__)r   #doc_orientation_classify_model_name"doc_orientation_classify_model_dir#doc_orientation_classify_batch_sizedoc_unwarping_model_namedoc_unwarping_model_dirdoc_unwarping_batch_sizeuse_doc_orientation_classifyuse_doc_unwarpinglayout_detection_model_namelayout_detection_model_dirlayout_threshold
layout_nmslayout_unclip_ratiolayout_merge_bboxes_modelayout_detection_batch_sizeuse_layout_detectionformula_recognition_model_nameformula_recognition_model_dirformula_recognition_batch_sizer   params	__class__s                         h/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/paddleocr/_pipelines/formula_recognition.pyr   #FormulaRecognitionPipeline.__init__   sA    . 

6

8"6"    c                     g)Nformula_recognitionr   r   s    r-   _paddlex_pipeline_name1FormulaRecognitionPipeline._paddlex_pipeline_name8   s    $r/   r'   r   r   layout_det_resr"   r#   r$   r%   c                N    U R                   R                  " U4UUUUUUUU	S.U
D6$ Nr5   )paddlex_pipelinepredictr   inputr'   r   r   r6   r"   r#   r$   r%   r   s              r-   predict_iter'FormulaRecognitionPipeline.predict_iter<   sG     $$,,
!5)E/)-! 3%=
 
 	
r/   c                L    [        U R                  " U4UUUUUUUU	S.U
D65      $ r8   )listr=   r;   s              r-   r:   "FormulaRecognitionPipeline.predictW   sI     %9-I"3-!1%$7)A 
 	
r/   c                     [        5       $ N)/FormulaRecognitionPipelineCLISubcommandExecutor)clss    r-   get_cli_subcommand_executor6FormulaRecognitionPipeline.get_cli_subcommand_executort   s    >@@r/   c                    0 SU R                   S   _SU R                   S   _SU R                   S   _SU R                   S   _SU R                   S	   _S
U R                   S   _SU R                   S   _SU R                   S   _SU R                   S   _SU R                   S   _SU R                   S   _SU R                   S   _SU R                   S   _SU R                   S   =(       d    U R                   S   _SU R                   S   _SU R                   S   _SU R                   S    _U R                   S!   U R                   S"   U R                   S#   S$.En[        U5      $ )%Nr'   z%SubModules.LayoutDetection.model_namer    z$SubModules.LayoutDetection.model_dirr!   z$SubModules.LayoutDetection.thresholdr"   z%SubModules.LayoutDetection.layout_nmsr#   z.SubModules.LayoutDetection.layout_unclip_ratior$   z3SubModules.LayoutDetection.layout_merge_bboxes_moder%   z%SubModules.LayoutDetection.batch_sizer&   z(SubModules.FormulaRecognition.model_namer(   z'SubModules.FormulaRecognition.model_dirr)   z(SubModules.FormulaRecognition.batch_sizer*   z9SubPipelines.DocPreprocessor.use_doc_orientation_classifyr   z.SubPipelines.DocPreprocessor.use_doc_unwarpingr   use_doc_preprocessorzISubPipelines.DocPreprocessor.SubModules.DocOrientationClassify.model_namer   zHSubPipelines.DocPreprocessor.SubModules.DocOrientationClassify.model_dirr   zISubPipelines.DocPreprocessor.SubModules.DocOrientationClassify.batch_sizer   r   r   r   )z?SubPipelines.DocPreprocessor.SubModules.DocUnwarping.model_namez>SubPipelines.DocPreprocessor.SubModules.DocUnwarping.model_dirz?SubPipelines.DocPreprocessor.SubModules.DocUnwarping.batch_size)r   r
   )r   	STRUCTUREs     r-   _get_paddlex_config_overrides8FormulaRecognitionPipeline._get_paddlex_config_overridesx   s   6
"DLL1G$H6
3T\\-66

 3DLL,56
 3DLLAS4T6
 4T\\,5O6
 =dll%?6
 B4<<*D6
  4T\\-6!6
& 709'6
, 6t||/8-6
2 70936
8 H.J96
> =dll#??6
D #DLL1O$P %1||/0G6
H XY]YeYe5ZI6
N WX\XdXd4YO6
T XY]YeYe5ZU6
Z PT||*P OSll)O PT||*Pg6
	n ,I66r/   )r   )NNNNNNNNNNNNNNNNNNN)__name__
__module____qualname____firstlineno__r   propertyr3   r=   r:   classmethodrF   rK   __static_attributes____classcell__)r,   s   @r-   r   r      s     -1+/,0!% $!%%)$(#' !%$(!'+&*'+)#< % % "%) !%
> "%) !%
: A A87 87r/   r   c                   0    \ rS rSr\S 5       rS rS rSrg)rD      c                     g)Nformula_recognition_pipeliner   r2   s    r-   subparser_name>FormulaRecognitionPipelineCLISubcommandExecutor.subparser_name   s    -r/   c                 8   [        U5        UR                  S[        SS9  UR                  S[        SS9  UR                  S[        SS9  UR                  S[        S	S9  UR                  S
[        SS9  UR                  S[        SS9  UR                  S[        SS9  UR                  S[        SS9  UR                  S[        SS9  UR                  S[        SS9  UR                  S[
        SS9  UR                  S[        SS9  UR                  S[
        SS9  UR                  S[        SS9  UR                  S[        SS9  UR                  S [        S!S9  UR                  S"[        S#S9  UR                  S$[        S%S9  UR                  S&[        S'S9  g )(Nz%--doc_orientation_classify_model_namez<Name of the document image orientation classification model.)typehelpz$--doc_orientation_classify_model_dirzADirectory of the document image orientation classification model.z%--doc_orientation_classify_batch_sizez9Batch size for document image orientation classification.z--doc_unwarping_model_namez%Name of the document unwarping model.z--doc_unwarping_model_dirz*Directory of the document unwarping model.z--doc_unwarping_batch_sizez"Batch size for document unwarping.z--use_doc_orientation_classifyz.Use document image orientation classification.z--use_doc_unwarpingzUse document unwarping.z--layout_detection_model_namez#Name of the layout detection model.z--layout_detection_model_dirz(Directory of the layout detection model.z--layout_thresholdzThreshold for layout detection.z--layout_nmsz-Non-maximum suppression for layout detection.z--layout_unclip_ratioz"Unclip ratio for layout detection.z--layout_merge_bboxes_modez4Mode for merging bounding boxes in layout detection.z--layout_detection_batch_sizez Batch size for layout detection.z--use_layout_detectionzUse layout detection.z --formula_recognition_model_namez&Name of the formula recognition model.z--formula_recognition_model_dirz+Directory of the formula recognition model.z --formula_recognition_batch_sizez#Batch size for formula recognition.)r   add_argumentstrintr   float)r   	subparsers     r-   _update_subparserAFormulaRecognitionPipelineCLISubcommandExecutor._update_subparser   sB   !),3O 	 	

 	2T 	 	

 	3L 	 	

 	(8 	 	

 	'= 	 	

 	(5 	 	

 	,A 	 	

 	!* 	 	

 	+6 	 	

 	*; 	 	

 	 2 	 	

 	@ 	 	

 	#5 	 	

 	(G 	 	

 	+3 	 	

 	$( 	 	

 	.9 	 	

 	-> 	 	

 	.6 	 	
r/   c                 :    [        U5      n[        [        U5        g rC   )r   r   r   )r   argsr+   s      r-   execute_with_argsAFormulaRecognitionPipelineCLISubcommandExecutor.execute_with_args  s    $T* !;VDr/   r   N)	rM   rN   rO   rP   rQ   rY   rc   rg   rS   r   r/   r-   rD   rD      s!    . .a
FEr/   rD   N)
_utils.clir   r   r   r   baser   r	   utilsr
   r   rD   r   r/   r-   <module>rl      s9     H /W7!7 W7tjE6S jEr/   