推荐学习书目
› Learn Python the Hard Way
Python Sites
› PyPI - Python Package Index
› http://diveintopython.org/toc/index.html
› Pocoo
值得关注的项目
› PyPy
› Celery
› Jinja2
› Read the Docs
› gevent
› pyenv
› virtualenv
› Stackless Python
› Beautiful Soup
› 结巴中文分词
› Green Unicorn
› Sentry
› Shovel
› Pyflakes
› pytest
Python 编程
› pep8 Checker
Styles
› PEP 8
› Google Python Style Guide
› Code Style from The Hitchhiker's Guide
panda0
V2EX  ›  Python

想问一下:这样的验证码该要怎么识别?

  •  
  •   panda0 · Jul 25, 2016 · 7912 views
    This topic created in 3756 days ago, the information mentioned may be changed or developed.

    用 tesseract 试了几个,识别率 0%

    请教大神,大概的研究方向是什么?

    35 replies  •  2017-05-11 23:39:23 +08:00
    YAFEIML
    YAFEIML
    Jul 25, 2016
    1
    人工智能
    SolLo
    SolLo
    Jul 25, 2016
    2
    所以每次遇到这种时候,就使劲换……
    lcatt
    lcatt
    Jul 25, 2016
    3
    tesseract 不是可以自己训练字库么。。
    fcicq
    fcicq
    Jul 25, 2016
    4
    把线去了, 反白应该问题不大
    aprikyblue
    aprikyblue
    Jul 25, 2016 via Android
    5
    起码肉眼可以识别出来。。



    这种我人工都要输入好几次。。
    wuhang89
    wuhang89
    Jul 25, 2016
    6
    跟你讲,不要把人工智能的 OCR 想的多厉害,像这个最佳的解决方案是人肉打码。
    h4x3rotab
    h4x3rotab
    Jul 25, 2016 via iPhone
    7
    这种 tessrect 不可能识别的出来,基本只要不接近印刷体,或者稍微有点粘连 tess 就不行了。如果你能人工打 20w 个码,我可以给你做出识别
    aeshfawre
    aeshfawre
    Jul 25, 2016
    8
    人工打码是最实际的解决方法, 网上有收费接口.
    用计算机应该也能实现自动识别,不是有个公司破了 yahoo 验证码,挑战 decaptcha 么, 好像就是 deepmind 这个公司吧.
    menc
    menc
    Jul 25, 2016❤️1
    9
    用 RNN + sliding window , recaptcha 都能 98%的 accuracy ,你这个不是什么大事情
    aeshfawre
    aeshfawre
    Jul 25, 2016
    10
    @menc 赶紧给楼主做一个,比起人工打码,楼主付个 5000 大洋给你,估计还是愿意的.
    gkiwi
    gkiwi
    Jul 25, 2016
    11
    @menc 有相关的文章推荐么?
    goubenger
    goubenger
    Jul 25, 2016
    12
    这种验证码应该已经有成熟的技术了。
    不预处理光跑 tesseract 准确率肯定不行的
    ihciah
    ihciah
    Jul 25, 2016❤️2
    13
    手动框出来, fast-rcnn 做;或者无脑直接丢 CNN ,打多个 label 出来,实测比楼主的复杂的多的图直接用 VGG19 finetune 可以到 90+%;或者用 RNN 、 LSTM 那一套,戳 http://arxiv.org/abs/1412.7755
    menc
    menc
    Jul 25, 2016❤️4
    14
    @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 的这样的验证码的识别
    iVanilla
    iVanilla
    Jul 25, 2016
    15
    能被识别是因为这些验证码太弱,不信看看这样的验证码你怎么识别?

    menc
    menc
    Jul 25, 2016
    16
    @iVanilla 你这个比他给的简单多了
    iVanilla
    iVanilla
    Jul 25, 2016
    17
    @menc 你确定?那你写个识别程序试试看。
    menc
    menc
    Jul 25, 2016
    18
    @iVanilla

    麻烦,这样吧,你给的两种验证码,各 2k rmb 做赌注,单字 90%以上的准确率。
    写出来你给我钱,写不出来我给你。

    有偿找个第三方来见证也行。
    gonglin
    gonglin
    Jul 25, 2016
    19
    @menc 我做第三方 ~~
    maomaomao001
    maomaomao001
    Jul 25, 2016 via Android
    20
    自己用眼睛看啊。。。别老想着破坏
    iVanilla
    iVanilla
    Jul 25, 2016
    21
    @menc 第二个是我自己写的,我知道强度还不够。
    等我把强度加大再跟你赌。
    lxy
    lxy
    Jul 25, 2016
    22
    颜色对于防自动识别没有任何效果。长干扰线也是差不多。
    真正能抗自动识别的只有随机的严重的字符粘连和大幅度的字符扭曲。
    lxy
    lxy
    Jul 25, 2016
    23
    @lxy 还有与字符笔画宽度一样的同色短干扰线。
    honam
    honam
    Jul 25, 2016
    24
    有些自己都看不清,怎么识别。。。
    mcone
    mcone
    Jul 25, 2016❤️1
    25
    @iVanilla 说实话,你这两个(特别是第二个)真的很弱,至少十年前的技术就能搞定了(只有第一个图后两位有粘连,但是如果确定是纯数字且四位的话,一点都不难)。
    另外不要总是“你写个程序看看”,真的写出来怎么办,你出钱吗?…………仅仅博君一笑,白白花费不少时间,好像不是正常人的做法

    @panda0 楼主,是所有的验证码都有[有一条从左到右的水平贯穿线]这个固定的特点吗?是的话,在切分之前,先检测水平线,去掉之后把切分后的字送进去,准确率应该不会太低,至少字母边缘特征还是很明显的,不像是 @aprikyblue 那种深浅不一,人眼都得看半天的家伙……
    iVanilla
    iVanilla
    Jul 25, 2016
    26
    @mcone 那么你认为应该怎样做才能真正加大识别难度?
    ihciah
    ihciah
    Jul 25, 2016
    27
    @iVanilla
    讲道理只要是字符,就很垃圾,无论是怎么扭曲、粘连,中文还是英文,更不用说加什么背景噪声了。只要人能认出来,堆训练数据进去机器也可以。
    加大识别难度可以借助人的知识,比如现在 12306 和 google 的新验证码这种。
    iVanilla
    iVanilla
    Jul 25, 2016
    28
    @ihciah 12306 的验证识别码早有人弄出来了吧,在 github 上面看过。
    Google 的新验证码确实不错,但国内也用不了啊。
    h4x3rotab
    h4x3rotab
    Jul 25, 2016 via iPhone
    29
    想要提高难度有两种办法,一种是增加字体数量,另一种是增加验证码的类型,两者各达到几十种, deep learning 就跪了,因为没人有钱打这么大数量的 label
    eoo
    eoo
    Jul 25, 2016 via Android
    30
    想要防机器 还得上短信验证或者语音验证,什么 OCR 识别都见鬼去吧 啊哈哈。
    v2gba
    v2gba
    Jul 25, 2016
    31
    之前上课教授讲过
    在菲律宾还是哪里有人工识别服务( API 。。)

    两毛还是两分一次
    peter999
    peter999
    Jul 26, 2016
    32
    打码平台
    panda0
    panda0
    OP
    Jul 26, 2016
    33
    @MrGba2z 我猜是 2 分 : )
    test5001
    test5001
    May 11, 2017
    34
    @menc 如何可以联系你? 可以给个联系方式吗,想有偿找你帮写个例子。
    test5001
    test5001
    May 11, 2017
    35
    有人使用 dl4j 那个深 度学习框架的吗?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4462 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 73ms · UTC 09:26 · PVG 17:26 · LAX 01:26 · JFK 04:26
    ♥ Do have faith in what you're doing.