如图所示,微软Hotmail的验证码与我们往常所见的验证码略有不同,他是 【双层粘结】 的验证码,这对于我们识别有什么影响呢?
微软/Hotmail验证码识别97%识别率方案

我们先来看CTC算法的TimeStep在语音识别中的表示:
微软/Hotmail验证码识别97%识别率方案
因为位数不固定,一般通过端到端做验证码识别的话会采用LSTM+CTC的方法,而根据上图所示,CTC的TimeStep对图像识别而言相当于水平方向的切片。

微软/Hotmail验证码识别97%识别率方案
显而易见,无法同时识别多行文字内容,每一个时间片所对应的标签内容只能是一个,这导致了一般的训练法方法无法训练这种图示的验证码。那么该怎么训练呢?

解决方案:
我们经常看到验证码超过边界以外,即使只有一半,比如这样:
微软/Hotmail验证码识别97%识别率方案
是否也不影响我们理解图片的内容?方法其实很简单,其实只要训练的时候对图片进行水平拼接就可以实现了,笔者使用的是github的captcha_trainer项目直接支持的水平拼接训练方法:
微软/Hotmail验证码识别97%识别率方案

测试结果:
微软/Hotmail验证码识别97%识别率方案
微软/Hotmail验证码识别97%识别率方案
挂上一天测试大概有97%识别率。

对训练工具感兴趣的可以 github 搜索 captcha_trainer

相关文章:

猜你喜欢
  • 2021-05-19
  • 2021-12-31
  • 2021-12-01
  • 2021-11-18
  • 2021-08-15
相关资源
相似解决方案