基于TensorFlow的验证码图像信息提取实现

 2023-02-06 08:02

论文总字数:18937字

摘 要

验证码曾经作为一种安全手段, 被广泛应用于互联网领域,现在验证码依然很活跃,被用于各个方面。它可以用来验证一些机器,程序的自动批量注册、发垃圾广告等行为。

本课题主要设计实现一个基于TensorFlow的验证码图像信息提取程序,TensorFlow是一个基于数据流编程(dataflow programming)的符号数学系统,在各类机器学习(machine learning)算法的编程实现中被广泛应用,谷歌的神经网络算法库就是它的前身。通过机器学习方法,实验说明机器学习在验证码信息提取方面的有效性,在此基础上,为验证码设计提出一些改进的措施,再构建卷积神经网络(CNN),测试模型对验证进行准确率的测试。

机器学习方法是目前人工智能的核心,使用机器学习方法研究验证码的提取实现以后发现验证码确实是一种防御利器,但在特定的情况下也有可能存在验证码泄露的情况,这或许也是以后验证码研究的另一个方面。

关键词:验证码;TensorFlow;机器学习;卷积神经网络;人工智能;

Captcha image information extraction based on TensorFlow

Abstract

Captchas have been widely used in the Internet world as a means of security, but they are still active and used in many ways. It can be used to verify some machines, procedures of automatic batch registration, spam advertising and so on.

This subject mainly designs and implements a captcha image information extraction program based on TensorFlow, which is a symbolic mathematical system based on dataflow programming and widely used in the programming implementation of various machine learning algorithms. The neural network algorithm library of Google is its predecessor. Through machine learning method, experiments show the effectiveness of machine learning in captcha information extraction. On this basis, some improvement measures are proposed for captcha design, and then the convolutional neural network (CNN) is constructed to test the accuracy of the verification model.

Machine learning method is the core of artificial intelligence at present. After studying the extraction and implementation of captchas with machine learning method, it is found that captchas are indeed a kind of defense weapon. However, in certain cases, there may be the leakage of captchas, which may be another aspect of future captchas research.

Keywords:Captcha,TensorFlow,Machine learning,CNN,Artificial Intelligence

目 录

摘要 Ⅰ

Abstract Ⅱ

第一章 引 言 1

1.1 背景 1

1.2 研究现状 2

1.2.1 文本验证码 2

1.2.2 音频验证码 3

1.2.3 图像验证码 3

1.3 课题主要工作 4

1.4 本文内容安排 4

第二章 相关技术介绍 5

2.1 人工智能简介 5

2.2 PyCharm软件介绍 5

2.3 Python简介 5

2.4 TensorFlow介绍 5

2.5 卷积神经网络(CNN) 6

第三章 研究方案 9

3.1 需求分析 9

3.2 方案设计 9

3.2.1 搭建开发环境 9

3.2.2获取验证码样本 10

3.2.3处理验证码 11

3.2.4 建立CNN模型 13

第四章 程序的实现和测试 16

4.1程序实现 16

4.2测试训练模型 17

4.3 测试总结 18

第五章 总结与展望 19

5.1总结 19

5.2展望 19

致 谢 20

参考文献 21

第一章 引 言

1.1 背景

验证码最初是由卡内基梅隆大学的路易斯·冯·安、Manuel Alum、Nicholas J.Hopper以及IBM的John Landlord在2002年提出的,卡内基梅隆大学曾试图申请此词成为注册商标, 但该申请于2008年4月21日被拒绝[1]。最开始常用的CAPTCHA测试是让用户输入一个扭曲变形的图片,上面显示的文字或数字会发生扭曲变形,这样可以防止被光学字符识别之类的程序识别出图片上的文字或数字而失去效果[2]。最开始时,是由计算机随机产生一个不同的字符串作为验证码的本体,然后再对这个字符串图像随机的打上一些污染或扭曲字符串,再显示出来,而只有人眼才能够正确辨认出这些被随机污染的扭曲字符[3]。这种让用户输入一个被扭曲变形后的图片显示的数字或字母的方法,便是最原始的一种验证码[4]。在验证码的发展中,各大网站 也开始把验证码 用来作为登录 和申请账号的 安全环节使用,还用于回复论坛,下载东西 ,这样可以避免 多次登录失败 和申请账号 可能出现问题。随着网络的发展,验证码已经融入到了人们生活中的各个角落,有效的发展了数字化社会,为我们的信息提供了更强的保护。

Tensorflow是目前最流行,使用比较广的深度学习框架,它可以来搭建自己的卷积神经网络,训练自己的分类器,并且支持多种应用[5]。尤其是深度神经网络的推理和训练,一些谷歌services在生产中经常使用TensorFlow框架[6]。在 本 次课题运用TensorFlow深度学习就是因为它可以有效满足生产和科研的需要,对于生产来讲,我们是希望框架越高效越好,扩展性强并且可维护,而目前的市面上用于替代TensorFlow的框架,要么十分灵活但扩展性较差,例如,Chainer和PyTorch是高度可扩展的,但灵活性比较差,又如Caffe和MXNet灵活上是不错的,但在可扩展性上面又不是很好。而TensorFlow就是上面所说优点的结合,既有较好的扩展性,也比较灵活;在生产方面和科研工作都能够胜任,正是由于TensorFlow具备这种独一无二的特性,才会让TensorFlow迅速发展起来[7]

剩余内容已隐藏,请支付后下载全文,论文总字数:18937字

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;