Giter VIP home page Giter VIP logo

Comments (8)

yeguixin avatar yeguixin commented on July 22, 2024

谢谢对我们工作的关注,读于您的问题,我理解如下,有不对的请批评指正:

  1. GAN中判别器只是一个二分类器,其作用只是判断生成数据和真实数据是否同一个风格(可以理解为数据分布是否相似),而数据是生成器生成的,没有混淆背景的验证码生成时需要将背景参数设置为false。

  2. Pre-processing model的作用是去除真实验证码中的背景和干扰线,或者是填充空心字符。其训练数据全部由生成数据组成,即有背景(干扰线)和无背景(干扰线)的生成验证码。

  3. LeNet-5的训练也是使用生成的无背景(干扰线)的验证码,仅在模型迁移是使用了少量的去除背景(干扰线)的真实验证码数据。

  4. 对于调整生成参数的步骤,我们主要**是把参数枚举出来,然后选择生成最好的那一组参数,所以训练比较慢。这里还有待完善,在后续的实验中我们发现,把可变参数的初始值调大(例如把字符旋转角度调整为[-50,50],涵盖真实数据中的旋转角度),也可以不用调整生成参数。

from captcha_solver.

luoling1993 avatar luoling1993 commented on July 22, 2024

感谢你的回答,根据你的回答,我说下我的理解

  • 对于第一个GAN,生成器输入(通过Opencv,Pillow生成的图片,记为Data1),输出(记为Data2),判别器区分Data2和真实数据(记为Data3)
  • 对于第二个GAN,生成器输入Data2,输出(记为Data4),判别器区分Data4和Data1
  • pre_trained阶段:Data1->GAN1->GAN2->LeNet5
  • fine-tune阶段:真实数据Data3->GAN2->LeNet5

from captcha_solver.

yeguixin avatar yeguixin commented on July 22, 2024

Pre_trained阶段直接是Data1->GAN1->LeNet5,这里的Data1是生成没有背景或干扰线的验证码图片。

from captcha_solver.

luoling1993 avatar luoling1993 commented on July 22, 2024

我的理解是应该有3个生成器

  1. 传统验证码生成器,就是我前面说的通过OpenCV或者Pillow生成的,目的是生成与真实验证码长得差不多的验证码(不需要特别像)
  2. GAN验证码生成器,目的通过pix级别微调传统验证码生成器生成的验证码,使其长得更像真实验证码,生成器的输入时传统验证码生成器生成的验证码,目标输出是真实验证码
  3. preprocessing,应该也是一种GAN生成器,目的是将有security features的验证码变成没有security features的验证码,方便后续LeNet5的分类,生成器的输入是第一个GAN的输出,目标输出是传统验证码生成器生成的验证码

from captcha_solver.

yeguixin avatar yeguixin commented on July 22, 2024

是这样。Pre_trained阶段是Data1->GAN1->LeNet5,这里的Data1是生成没有背景或干扰线的验证码图片。

from captcha_solver.

luoling1993 avatar luoling1993 commented on July 22, 2024

是这样。Pre_trained阶段是Data1->GAN1->LeNet5,这里的Data1是生成没有背景或干扰线的验证码图片。

好的,非常感谢,就是pre_trained不需要用到preprocessing,只有fine-tune才用到preprocessing的意思吧

from captcha_solver.

yeguixin avatar yeguixin commented on July 22, 2024

是的,pre_trained用的是生成数据,传统生成器可以直接生成无security features的验证码。

from captcha_solver.

RubanSeven avatar RubanSeven commented on July 22, 2024

谢谢对我们工作的关注,读于您的问题,我理解如下,有不对的请批评指正:

  1. GAN中判别器只是一个二分类器,其作用只是判断生成数据和真实数据是否同一个风格(可以理解为数据分布是否相似),而数据是生成器生成的,没有混淆背景的验证码生成时需要将背景参数设置为false。
  2. Pre-processing model的作用是去除真实验证码中的背景和干扰线,或者是填充空心字符。其训练数据全部由生成数据组成,即有背景(干扰线)和无背景(干扰线)的生成验证码。
  3. LeNet-5的训练也是使用生成的无背景(干扰线)的验证码,仅在模型迁移是使用了少量的去除背景(干扰线)的真实验证码数据。
  4. 对于调整生成参数的步骤,我们主要**是把参数枚举出来,然后选择生成最好的那一组参数,所以训练比较慢。这里还有待完善,在后续的实验中我们发现,把可变参数的初始值调大(例如把字符旋转角度调整为[-50,50],涵盖真实数据中的旋转角度),也可以不用调整生成参数。

请问参数是怎么训练出来的,论文中说是网格搜索,那怎么判断哪组参数最优呢,如果是判别器反向传播来获得的,那loss是怎么影响网格搜索的呢。

from captcha_solver.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.