EasyOCR 训练模型在自定义运动字体中识别字符时遇到困难

68de4m5k  于 6个月前  发布在  其他
关注(0)|答案(5)|浏览(44)

我正在进行一个OCR项目,旨在从体育图像中准确地读取球员编号和姓名。这些图像具有10种不同的自定义字体,主要是粗体和粗体的,以迎合体育美学。主要挑战是模型在这些样式字体的约束下区分相似字符的能力。

字体:10个自定义体育字体(英文A-Z,a-z,0-9)。
训练数据:生成的数据集,包含约20万张图像,包括每种字体的3-10个字符的混合大小写、非空格和数字(00-99)。
经过num_iter:750000次训练后,损失:0.00126,验证损失:0.15052

遇到的问题:

  • 我在验证集上测试时,准确率约为94%,但如果我用训练集测试时,准确率仍然是85-90%,我认为它应该更高,因为我用75万次迭代进行了训练,它应该高于验证集。
  • 相似字符之间的混淆:模型经常将看起来相似的字符弄混。例如,它将“NATALIE”读作“NATALlE”,将“I”和“l”混淆在一起。它还将“Q”与“O”和“Z”与“z”混淆。我认为这可能是因为训练集随机混合了大小写字母。如果我切换到使用全大写字母如“AAAA”或全小写字母如“aaaa”或“Aaaa”,你觉得这会让它变得更好吗?
  • 随机错误的预测(无明显模式,例如,“EGH”读作“DF”)。
    请求帮助:

我正在寻求关于如何提高模型在区分相似字符方面的性能的建议。任何关于训练策略、网络调整或数据预处理技术的建议都将受到极大的欢迎。
这里是我想预测的实际图像。

这里是我用作训练集的生成图像。

这是我使用的配置

batch_size: 32
FT: False
optim: False
lr: 1
beta1: 0.9
total_data_usage_ratio: 1.0
batch_max_length: 34
imgH: 64
imgW: 600
rgb: False
contrast_adjust: 0.0
sensitive: True
PAD: True
data_filtering_off: False
Transformation: None
FeatureExtraction: VGG
SequenceModeling: BiLSTM
Prediction: CTC
num_fiducial: 20
input_channel: 1
output_channel: 256
hidden_size: 256
decode: greedy

2j4z5cfb

2j4z5cfb1#

你好,我想问你用这个迭代次数和数据集大小微调模型花了多长时间,因为我只用了3000次迭代和20K张图片,它花费了很长时间。

s4chpxco

s4chpxco2#

你好,我想问你用这个迭代次数和数据集大小微调模型需要多长时间,因为我只用了3000次迭代和20K张图片,它花费了很长时间。

使用200K张图片和40,000次迭代大约需要1小时。

aij0ehis

aij0ehis3#

你好,我想问一下,你用这个迭代次数和数据集大小微调模型花了多长时间?我只有3000次迭代和20K张图片,但是它花费了很长时间。

使用200K张图片和40,000次迭代大约需要1小时。

感谢回复。另外,请告诉我你的GPU规格,我有3050 12G的显卡,但仍然需要超过4个小时。

v7pvogib

v7pvogib4#

你好,我想问一下你用这个迭代次数和数据集大小微调模型花了多长时间,因为我只用了3000次迭代和20K张图片,它花费了很长时间。

使用200K张图片和40,000次迭代大约需要1小时。

感谢回复。另外,请告诉我你的GPU规格,我有3050 12G,但仍然超过了4个小时。

我使用的是4060Ti 16GB。你选择了多大的学习率和批量大小?

3wabscal

3wabscal5#

你好,我想问一下你用这个迭代次数和数据集大小微调模型花了多长时间,因为我只用了3000次迭代和20K张图片,它花费了很长时间。

200K张图片,40,000次迭代大约需要1小时。

感谢回复。另外,请告诉我你的GPU规格,我有3050 12G,但仍然超过了4个小时。

我使用的是4060Ti 16GB。你选择了多大的学习率和批量大小?

我正在使用以下配置:

manualSeed: 1111
workers: 4
batch_size: 128 #32
num_iter: 3000
valInterval: 200
FT: False
optim: False # default is Adadelta
lr: 1.
beta1: 0.9
rho: 0.95
eps: 0.00000001
grad_clip: 5
#Data processing
select_data: 'e' # this is dataset folder in train_data
batch_ratio: '1' 
total_data_usage_ratio: 1.0
batch_max_length: 35 
imgH: 64
imgW: 600
rgb: False
contrast_adjust: False
sensitive: True
PAD: True
contrast_adjust: 0.0
data_filtering_off: False
# Model Architecture
Transformation: 'None'
FeatureExtraction: 'ResNet'
SequenceModeling: 'BiLSTM'
Prediction: 'CTC'
num_fiducial: 20
input_channel: 1
output_channel: 512
hidden_size: 512
decode: 'greedy'
new_prediction: False
freeze_FeatureFxtraction: False
freeze_SequenceModeling: False

相关问题