用 tesseract 试了几个,识别率 0%
请教大神,大概的研究方向是什么?
1
YAFEIML 2016-07-25 09:19:47 +08:00
人工智能
|
2
somkanel 2016-07-25 09:56:17 +08:00
所以每次遇到这种时候,就使劲换……
|
3
lcatt 2016-07-25 09:56:41 +08:00
tesseract 不是可以自己训练字库么。。
|
4
fcicq 2016-07-25 10:07:17 +08:00
把线去了, 反白应该问题不大
|
5
aprikyblue 2016-07-25 10:09:10 +08:00 via Android
起码肉眼可以识别出来。。
这种我人工都要输入好几次。。 |
6
wuhang89 2016-07-25 11:14:41 +08:00
跟你讲,不要把人工智能的 OCR 想的多厉害,像这个最佳的解决方案是人肉打码。
|
7
h4x3rotab 2016-07-25 11:38:25 +08:00 via iPhone
这种 tessrect 不可能识别的出来,基本只要不接近印刷体,或者稍微有点粘连 tess 就不行了。如果你能人工打 20w 个码,我可以给你做出识别
|
8
aeshfawre 2016-07-25 11:39:40 +08:00
人工打码是最实际的解决方法, 网上有收费接口.
用计算机应该也能实现自动识别,不是有个公司破了 yahoo 验证码,挑战 decaptcha 么, 好像就是 deepmind 这个公司吧. |
9
menc 2016-07-25 11:52:41 +08:00 1
用 RNN + sliding window , recaptcha 都能 98%的 accuracy ,你这个不是什么大事情
|
12
goubenger 2016-07-25 12:16:39 +08:00
这种验证码应该已经有成熟的技术了。
不预处理光跑 tesseract 准确率肯定不行的 |
13
ihciah 2016-07-25 12:25:55 +08:00 2
手动框出来, fast-rcnn 做;或者无脑直接丢 CNN ,打多个 label 出来,实测比楼主的复杂的多的图直接用 VGG19 finetune 可以到 90+%;或者用 RNN 、 LSTM 那一套,戳 http://arxiv.org/abs/1412.7755
|
14
menc 2016-07-25 13:30:56 +08:00 4
@gkiwi 有几篇论文,是用 RNN 、 CNN 来做 recaptcha 的识别的。
http://www.cs.columbia.edu/~polakis/papers/sivakorn_eurosp16.pdf 其他关键字 Multi-digit Number Recognition from Street View Imagery using Deep Convolutional Neural Networks Deep Features for Text Spotting @aeshfawre 给我 10k ,给你一个 90%以上 accuracy 的这样的验证码的识别 |
15
iVanilla 2016-07-25 13:53:13 +08:00
|
18
menc 2016-07-25 14:38:15 +08:00
|
20
maomaomao001 2016-07-25 14:49:31 +08:00 via Android
自己用眼睛看啊。。。别老想着破坏
|
22
lxy 2016-07-25 15:18:00 +08:00
颜色对于防自动识别没有任何效果。长干扰线也是差不多。
真正能抗自动识别的只有随机的严重的字符粘连和大幅度的字符扭曲。 |
24
honam 2016-07-25 17:49:36 +08:00
有些自己都看不清,怎么识别。。。
|
25
mcone 2016-07-25 18:19:17 +08:00 1
@iVanilla 说实话,你这两个(特别是第二个)真的很弱,至少十年前的技术就能搞定了(只有第一个图后两位有粘连,但是如果确定是纯数字且四位的话,一点都不难)。
另外不要总是“你写个程序看看”,真的写出来怎么办,你出钱吗?…………仅仅博君一笑,白白花费不少时间,好像不是正常人的做法 @panda0 楼主,是所有的验证码都有[有一条从左到右的水平贯穿线]这个固定的特点吗?是的话,在切分之前,先检测水平线,去掉之后把切分后的字送进去,准确率应该不会太低,至少字母边缘特征还是很明显的,不像是 @aprikyblue 那种深浅不一,人眼都得看半天的家伙…… |
27
ihciah 2016-07-25 20:41:15 +08:00
@iVanilla
讲道理只要是字符,就很垃圾,无论是怎么扭曲、粘连,中文还是英文,更不用说加什么背景噪声了。只要人能认出来,堆训练数据进去机器也可以。 加大识别难度可以借助人的知识,比如现在 12306 和 google 的新验证码这种。 |
28
iVanilla 2016-07-25 20:44:12 +08:00
@ihciah 12306 的验证识别码早有人弄出来了吧,在 github 上面看过。
Google 的新验证码确实不错,但国内也用不了啊。 |
29
h4x3rotab 2016-07-25 23:07:28 +08:00 via iPhone
想要提高难度有两种办法,一种是增加字体数量,另一种是增加验证码的类型,两者各达到几十种, deep learning 就跪了,因为没人有钱打这么大数量的 label
|
30
eoo 2016-07-25 23:28:24 +08:00 via Android
想要防机器 还得上短信验证或者语音验证,什么 OCR 识别都见鬼去吧 啊哈哈。
|
31
MrGba2z 2016-07-25 23:56:46 +08:00
之前上课教授讲过
在菲律宾还是哪里有人工识别服务( API 。。) 两毛还是两分一次 |
32
peter999 2016-07-26 00:00:22 +08:00
打码平台
|
35
test5001 2017-05-11 23:39:23 +08:00
有人使用 dl4j 那个深 度学习框架的吗?
|