我计划在 Torch 中为车牌识别器实施 CTC 标准。我浏览了warp_ctc中的教程。但是,在训练期间,它失败了,并显示以下错误消息。
/home/ubuntu/torch/install/bin/luajit: .../ubuntu/torch/install/share/lua/5.1/nnx/CTCCriterion.lua:24:您必须将批处理中每个序列的大小作为张量堆栈回溯:[C]:在函数'assert'中.../ubuntu/torch/install/share/lua/5.1/nnx/CTCCriterion.lua:24:在函数'forward'中
ctc 标准接收 3 个参数,CTCCriterion:forward(output,label,sizes)
this is my target/label,
{
1 : CudaTensor - size: 24
2 : CudaTensor - size: 24
3 : CudaTensor - size: 24
4 : CudaTensor - size: 24
5 : CudaTensor - size: 24
6 : CudaTensor - size: 24
7 : CudaTensor - size: 24
8 : CudaTensor - size: 24
9 : CudaTensor - size: 24
10 : CudaTensor - size: 24
}
and output
{
1 : CudaTensor - size: 24x36
2 : CudaTensor - size: 24x36
3 : CudaTensor - size: 24x36
4 : CudaTensor - size: 24x36
5 : CudaTensor - size: 24x36
6 : CudaTensor - size: 24x36
7 : CudaTensor - size: 24x36
8 : CudaTensor - size: 24x36
9 : CudaTensor - size: 24x36
10 : CudaTensor - size: 24x36
}
批量大小:24,我假设每个完整的车牌组合的长度最多为 10 个字符,36 个参考字母 az,0-9。
我尝试插入值 1, 24,36 ,但在训练期间每一轮都会出现相同的错误消息。我注意到输出和目标中允许的数据类型是张量类型而不是表,我尝试转换和重塑。但它仍然没有帮助。