def parse_args():

    def str2bool(v):
        return (v.lower() in ('true', 't', '1'))
    parser = argparse.ArgumentParser()
    parser.add_argument('--use_gpu', type=str2bool, default=True)
    parser.add_argument('--ir_optim', type=str2bool, default=True)
    parser.add_argument('--use_tensorrt', type=str2bool, default=False)
    parser.add_argument('--use_fp16', type=str2bool, default=False)
    parser.add_argument('--gpu_mem', type=int, default=500)
    parser.add_argument('--image_dir', type=str)
    parser.add_argument('--det_algorithm', type=str, default='DB')
    parser.add_argument('--det_model_dir', type=str)
    parser.add_argument('--det_limit_side_len', type=float, default=960)
    parser.add_argument('--det_limit_type', type=str, default='max')
    parser.add_argument('--det_db_thresh', type=float, default=0.3)
    parser.add_argument('--det_db_box_thresh', type=float, default=0.6)
    parser.add_argument('--det_db_unclip_ratio', type=float, default=1.5)
    parser.add_argument('--max_batch_size', type=int, default=10)
    parser.add_argument('--use_dilation', type=bool, default=False)
    parser.add_argument('--det_db_score_mode', type=str, default='fast')
    parser.add_argument('--det_east_score_thresh', type=float, default=0.8)
    parser.add_argument('--det_east_cover_thresh', type=float, default=0.1)
    parser.add_argument('--det_east_nms_thresh', type=float, default=0.2)
    parser.add_argument('--det_sast_score_thresh', type=float, default=0.5)
    parser.add_argument('--det_sast_nms_thresh', type=float, default=0.2)
    parser.add_argument('--det_sast_polygon', type=bool, default=False)
    parser.add_argument('--rec_algorithm', type=str, default='CRNN')
    parser.add_argument('--rec_model_dir', type=str)
    parser.add_argument('--rec_image_shape', type=str, default='3, 32, 320')
    parser.add_argument('--rec_char_type', type=str, default='ch')
    parser.add_argument('--rec_batch_num', type=int, default=6)
    parser.add_argument('--max_text_length', type=int, default=25)
    parser.add_argument('--rec_char_dict_path', type=str, default='./ppocr/utils/ppocr_keys_v1.txt')
    parser.add_argument('--use_space_char', type=str2bool, default=True)
    parser.add_argument('--vis_font_path', type=str, default='./doc/fonts/simfang.ttf')
    parser.add_argument('--drop_score', type=float, default=0.5)
    parser.add_argument('--e2e_algorithm', type=str, default='PGNet')
    parser.add_argument('--e2e_model_dir', type=str)
    parser.add_argument('--e2e_limit_side_len', type=float, default=768)
    parser.add_argument('--e2e_limit_type', type=str, default='max')
    parser.add_argument('--e2e_pgnet_score_thresh', type=float, default=0.5)
    parser.add_argument('--e2e_char_dict_path', type=str, default='./ppocr/utils/ic15_dict.txt')
    parser.add_argument('--e2e_pgnet_valid_set', type=str, default='totaltext')
    parser.add_argument('--e2e_pgnet_polygon', type=bool, default=True)
    parser.add_argument('--e2e_pgnet_mode', type=str, default='fast')
    parser.add_argument('--use_angle_cls', type=str2bool, default=False)
    parser.add_argument('--cls_model_dir', type=str)
    parser.add_argument('--cls_image_shape', type=str, default='3, 48, 192')
    parser.add_argument('--label_list', type=list, default=['0', '180'])
    parser.add_argument('--cls_batch_num', type=int, default=6)
    parser.add_argument('--cls_thresh', type=float, default=0.9)
    parser.add_argument('--enable_mkldnn', type=str2bool, default=False)
    parser.add_argument('--cpu_threads', type=int, default=10)
    parser.add_argument('--use_pdserving', type=str2bool, default=False)
    parser.add_argument('--use_mp', type=str2bool, default=False)
    parser.add_argument('--total_process_num', type=int, default=1)
    parser.add_argument('--process_id', type=int, default=0)
    return parser.parse_args()
def parse_args():

    def str2bool(v):
        return (v.lower() in ('true', 't', '1'))
    parser = argparse.ArgumentParser()
    parser.add_argument('--use_gpu', type=str2bool, default=True)
    parser.add_argument('--ir_optim', type=str2bool, default=True)
    parser.add_argument('--use_tensorrt', type=str2bool, default=False)
    parser.add_argument('--use_fp16', type=str2bool, default=False)
    parser.add_argument('--gpu_mem', type=int, default=500)
    parser.add_argument('--image_dir', type=str)
    parser.add_argument('--det_algorithm', type=str, default='DB')
    parser.add_argument('--det_model_dir', type=str)
    parser.add_argument('--det_limit_side_len', type=float, default=960)
    parser.add_argument('--det_limit_type', type=str, default='max')
    parser.add_argument('--det_db_thresh', type=float, default=0.3)
    parser.add_argument('--det_db_box_thresh', type=float, default=0.6)
    parser.add_argument('--det_db_unclip_ratio', type=float, default=1.5)
    parser.add_argument('--max_batch_size', type=int, default=10)
    parser.add_argument('--use_dilation', type=bool, default=False)
    parser.add_argument('--det_db_score_mode', type=str, default='fast')
    parser.add_argument('--det_east_score_thresh', type=float, default=0.8)
    parser.add_argument('--det_east_cover_thresh', type=float, default=0.1)
    parser.add_argument('--det_east_nms_thresh', type=float, default=0.2)
    parser.add_argument('--det_sast_score_thresh', type=float, default=0.5)
    parser.add_argument('--det_sast_nms_thresh', type=float, default=0.2)
    parser.add_argument('--det_sast_polygon', type=bool, default=False)
    parser.add_argument('--rec_algorithm', type=str, default='CRNN')
    parser.add_argument('--rec_model_dir', type=str)
    parser.add_argument('--rec_image_shape', type=str, default='3, 32, 320')
    parser.add_argument('--rec_char_type', type=str, default='ch')
    parser.add_argument('--rec_batch_num', type=int, default=6)
    parser.add_argument('--max_text_length', type=int, default=25)
    parser.add_argument('--rec_char_dict_path', type=str, default='./ppocr/utils/ppocr_keys_v1.txt')
    parser.add_argument('--use_space_char', type=str2bool, default=True)
    parser.add_argument('--vis_font_path', type=str, default='./doc/fonts/simfang.ttf')
    parser.add_argument('--drop_score', type=float, default=0.5)
    parser.add_argument('--e2e_algorithm', type=str, default='PGNet')
    parser.add_argument('--e2e_model_dir', type=str)
    parser.add_argument('--e2e_limit_side_len', type=float, default=768)
    parser.add_argument('--e2e_limit_type', type=str, default='max')
    parser.add_argument('--e2e_pgnet_score_thresh', type=float, default=0.5)
    parser.add_argument('--e2e_char_dict_path', type=str, default='./ppocr/utils/ic15_dict.txt')
    parser.add_argument('--e2e_pgnet_valid_set', type=str, default='totaltext')
    parser.add_argument('--e2e_pgnet_polygon', type=bool, default=True)
    parser.add_argument('--e2e_pgnet_mode', type=str, default='fast')
    parser.add_argument('--use_angle_cls', type=str2bool, default=False)
    parser.add_argument('--cls_model_dir', type=str)
    parser.add_argument('--cls_image_shape', type=str, default='3, 48, 192')
    parser.add_argument('--label_list', type=list, default=['0', '180'])
    parser.add_argument('--cls_batch_num', type=int, default=6)
    parser.add_argument('--cls_thresh', type=float, default=0.9)
    parser.add_argument('--enable_mkldnn', type=str2bool, default=False)
    parser.add_argument('--cpu_threads', type=int, default=10)
    parser.add_argument('--use_pdserving', type=str2bool, default=False)
    parser.add_argument('--use_mp', type=str2bool, default=False)
    parser.add_argument('--total_process_num', type=int, default=1)
    parser.add_argument('--process_id', type=int, default=0)
    return parser.parse_args()