当前位置:   article > 正文

【PaddleOCR入门】二、配置文件说明_paddleocr 接收文件流参数

paddleocr 接收文件流参数

一、Global

字段用途默认值备注
use_gpu设置代码是否在gpu运行true⭐️
epoch_num最大训练epoch数500⭐️
log_smooth_windowlog队列长度,每次打印输出队列里的中间值20
print_batch_step设置打印log间隔10⭐️
save_model_dir设置模型保存路径output/{算法名称}⭐️
save_epoch_step设置模型保存间隔3⭐️
eval_batch_step设置模型评估间隔2000 或 [1000, 2000]⭐️ 2000 表示每2000次迭代评估一次,[1000, 2000]表示从1000次迭代开始,每2000次评估一次
cal_metric_during_train设置是否在训练过程中评估指标,此时评估的是模型在当前batch下的指标true
load_static_weights设置预训练模型是否是静态图模式保存(目前仅检测算法需要)true
pretrained_model设置加载预训练模型路径./pretrain_models/CRNN/best_accuracy⭐️
checkpoints加载模型参数路径None⭐️用于中断后加载参数继续训练
use_visualdl设置是否启用visualdl进行可视化log展示False
infer_img设置预测图像路径或文件夹路径./infer_img
character_dict_path设置字典路⭐️ ⭐️ ./ppocr/utils/ppocr_keys_v1.txt
max_text_length设置文本最大长度25
character_type设置字符类型ch⭐️ en/ch, en时将使用默认dict,ch时使用自定义dict
use_space_char设置是否识别空格True仅在 character_type=ch 时支持空格
label_list设置方向分类器支持的角度[‘0’,‘180’]
save_res_path设置检测模型的结果保存地址./output/det_db/predicts_db.txt⭐️

二、Optimizer

字段用途默认值备注
name优化器类名Adam⭐️ 目前支持Momentum,Adam,RMSProp ,见ppocr/optimizer/optimizer.py
beta1设置一阶矩估计的指数衰减率0.9
beta2设置二阶矩估计的指数衰减率0.999
clip_norm所允许的二范数最大值
lr设置学习率decay方式
name学习率decay类名Cosine⭐️目前支持Linear,Cosine,Step,Piecewise, 见ppocr/optimizer/learning_rate.py
learning_rate基础学习率0.001⭐️
regularizer设置网络正则化方式
name正则化类名L2目前支持L1,L2, 见ppocr/optimizer/regularizer.py
factor学习率衰减系数0.00004

三、Architecture

字段用途默认值备注
model_type网络类型rec目前支持rec,det,cls
algorithm模型名称CRNN支持列表见algorithm_overview
Transform设置变换方式目前仅rec类型的算法支持, 具体见ppocr/modeling/transform
name变换方式类名TPS目前支持TPS
num_fiducialTPS控制点数20上下边各十个
loc_lr定位网络学习率0.1
model_name定位网络大小small目前支持small,large
Backbone设置网络backbone类名具体见ppocr/modeling/backbones
namebackbone类名ResNet目前支持MobileNetV3,ResNet
layersresnet层数34支持18,34,50,101,152,200
model_nameMobileNetV3 网络大小small支持small,large
Neck设置网络neck
nameneck类名SequenceEncoder目前支持SequenceEncoder,DBFPN
encoder_typeSequenceEncoder编码器类型rnn支持reshape,fc,rnn
hidden_sizernn内部单元数48
out_channelsDBFPN输出通道数256
Head设置网络Head具体见ppocr/modeling/heads
namehead类名CTCHead
fc_decayCTCHead正则化系数0.0004
kDBHead二值化系数50
class_dimClsHead输出分类数2

四、Loss (ppocr/losses)

字段用途默认值备注
name网络loss类名CTCLoss目前支持CTCLoss,DBLoss,ClsLoss
balance_lossDBLossloss中是否对正负样本数量进行均衡(使用OHEM)True
ohem_ratioDBLossloss中的OHEM的负正样本比例3
main_loss_typeDBLossloss中shrink_map所采用的的lossDiceLoss支持DiceLoss,BCELoss
alphaDBLossloss中shrink_map_loss的系数5
betaDBLossloss中threshold_map_loss的系数10

五、PostProcess (ppocr/postprocess)

字段用途默认值备注
name后处理类名CTCLabelDecode目前支持CTCLoss,AttnLabelDecode,DBPostProcess,ClsPostProcess
threshDBPostProcess中分割图进行二值化的阈值0.3
box_threshDBPostProcess中对输出框进行过滤的阈值,低于此阈值的框不会输出0.7
max_candidatesDBPostProcess中输出的最大文本框数量1000
unclip_ratioDBPostProcess中对文本框进行放大的比例2.0

六、Metric (ppocr/metrics)

字段用途默认值备注
name指标评估方法名称CTCLabelDecode目前支持DetMetric,RecMetric,ClsMetric
main_indicator主要指标,用于选取最优模型acc对于检测方法为hmean,识别和分类方法为acc

七、Dataset (ppocr/data)

字段用途默认值备注
dataset每次迭代返回一个样本
namedataset类名SimpleDataSet目前支持SimpleDataSet和LMDBDateSet
data_dir数据集图片存放路径./train_data
label_file_list数据标签路径数据标签路径dataset为LMDBDateSet时不需要此参数
ratio_listratio_list[1.0]若label_file_list中有两个train_list,且ratio_list为[0.4,0.6],则从train_list1中采样40%,从train_list2中采样60%组合整个dataset
transformstransforms[DecodeImage,CTCLabelEncode,RecResizeImg,KeepKeys]见ppocr/data/imaug
loaderdataloader相关
shuffle每个epoch是否将数据集顺序打乱True
batch_size_per_card训练时单卡batch size256
drop_last是否丢弃因数据集样本数不能被 batch_size 整除而产生的最后一个不完整的mini-batchTrue
num_workers用于加载数据的子进程个数,若为0即为不开启子进程,在主进程中进行数据加载8

Reference

CSDN:PaddleOCR使用详解

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号