CN106920266B - 验证码的背景生成方法和装置 - Google Patents
验证码的背景生成方法和装置 Download PDFInfo
- Publication number
- CN106920266B CN106920266B CN201511004833.6A CN201511004833A CN106920266B CN 106920266 B CN106920266 B CN 106920266B CN 201511004833 A CN201511004833 A CN 201511004833A CN 106920266 B CN106920266 B CN 106920266B
- Authority
- CN
- China
- Prior art keywords
- picture
- identifying code
- background
- information
- gray scale
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/001—Texturing; Colouring; Generation of texture or colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/26—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
- G06V10/273—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion removing elements interfering with the pattern to be recognised
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/34—Smoothing or thinning of the pattern; Morphological operations; Skeletonisation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种验证码的背景生成方法和装置。该验证码的背景生成方法包括:获取预设图片,其中,预设图片为用于生成验证码的背景的图片;对预设图片执行灰度处理,得到灰度图片;按照预设算法提取灰度图片对应的噪声信息;根据噪声信息生成验证码的背景图片。本发明解决了验证码的背景生成速度慢的技术问题。
Description
技术领域
本发明涉及图像处理领域,具体而言,涉及一种验证码的背景生成方法和装置。
背景技术
目前,验证码是一种辅助安全验证的字符,由用户终端的肉眼进行识别。用户终端在验证码的表单中输入验证码,然后提交至网站进行验证。当验证码验证成功之后,用户终端才能使用网站的某些功能。
为了防止验证码识别软件非法破解验证码,通常在验证码的背景中添加干扰信息,使验证码识别软件将干扰信息误认为是字母,降低识别结果的正确性,从而提高了验证码的安全性。比如,在验证码的背景中添加通过随机数生成的噪声点、线条或者不规则区域,其中,噪声点可以由不同坐标值的点组成,线条的设置可以为直线、曲线、抛物线等,不规则区域可以为圆形区域、矩形区域等,形成具有干扰信息的验证码的背景。噪声点、简单线条、不规则区域的生成时需要大量的计算,使验证码的背景生成速度变慢,进而降低了验证码图片的生成速度。另一方面,使用中值滤波器的验证码识别软件在对背景中添加了噪声点的验证码进行预处理时,可以处理掉噪声点;使用霍夫变换等方法的验证码识别软件可以识别干扰信息中的简单线条,进而将简单线条加以滤除,从而使验证码的抗破解性能低下,干扰信息中不规则区域的添加很可能会使验证码中的字母被遮挡而无法识别。
针对验证码的背景生成速度慢的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种验证码的背景生成方法和装置,以至少解决验证码的背景生成速度慢的技术问题。
根据本发明实施例的一个方面,提供了一种验证码的背景生成方法。该验证码的背景生成方法包括:获取预设图片,其中,预设图片为用于生成验证码的背景的图片;对预设图片执行灰度处理,得到灰度图片;按照预设算法提取灰度图片对应的噪声信息;根据噪声信息生成验证码的背景图片,且将背景图片作为验证码的背景。
根据本发明实施例的另一方面,还提供了一种验证码的背景生成装置。该验证码的背景生成装置包括:获取单元,用于获取预设图片,其中,预设图片为用于生成验证码的背景的图片;处理单元,用于对预设图片执行灰度处理,得到灰度图片;提取单元,按照预设算法提取灰度图片对应的噪声信息;生成单元,用于根据噪声信息生成验证码的背景图片,且将背景图片作为验证码的背景。
在本发明实施例中,获取预设图片,预设图片为用于生成验证码的背景的图片;对预设图片执行灰度处理,得到灰度图片;按照预设算法提取灰度图片对应的噪声信息;根据噪声信息生成验证码的背景图片,且将背景图片作为验证码的背景,降低了生成验证码的背景的计算量,实现了提高验证码的背景生成速度的技术效果,从而达到了提高验证码图片的生成速度的目的,进而解决了验证码的背景的生成速度慢的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的验证码的背景生成方法的计算机终端的硬件结构框图;
图2是根据本发明实施例的验证码的背景生成方法的流程图;
图3是根据本发明实施例的按照预设算法提取灰度图片的噪声信息的方法的流程图;
图4是根据本发明实施例的对图像信息按照拉普拉斯边缘提取算法执行处理的方法的流程图;
图5是根据本发明实施例的根据噪声信息生成验证码的背景图片的方法的流程图;
图6是根据本发明实施例的根据噪声信息生成的验证码的背景图片的示意图;
图7是根据本发明实施例的验证码图片的示意图;
图8是根据本发明第一实施例的验证码的背景生成装置的示意图;
图9是根据本发明第二实施例的验证码的背景生成装置的示意图;
图10是根据本发明第三实施例的验证码的背景生成装置的示意图;
图11是根据本发明第四实施例的验证码的背景生成装置的示意图;
图12是根据本发明第五实施例的验证码的背景生成装置的示意图;以及
图13是根据本发明实施例的一种计算机终端的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
本发明实施例提供了一种验证码的背景生成方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例一所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是根据本发明实施例的验证码的背景生成方法的计算机终端的硬件结构框图。如图1所示,计算机终端10可以包括一个或多个(图中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输模块106。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储应用软件的软件程序以及模块,如本发明实施例中的验证码的背景生成方法对应的程序指令/模块,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的验证码的背景生成方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在上述运行环境下,本申请提供了如图2所示的验证码的背景生成方法。该方法可以应用于智能终端设备中,由智能终端设备中的处理器执行,智能终端设备可以是智能手机、平板电脑等。智能终端设备中安装有至少一个应用程序,本发明实施例并不限定应用程序的种类,可以为系统类应用程序,也可以为软件类应用程序。
图2是根据本发明实施例的验证码的背景生成方法的流程图。如图2所示,该验证码的背景生成方法的一种可选的方案包括如下步骤:
步骤S202,获取预设图片。
在本申请上述步骤S202提供的方案中,获取预设图片。该实施例的预设图片为用于生成验证码的背景的图片。其中,验证码是全自动区分计算机和人类的图灵测试(Completely Automated Public Turing test to tell Computers and Humans Apart,简称为CAPTCHA),是一种区分用户终端是计算机或者人类的公共全自动程序。在CAPTCHA测试中,作为服务器的计算机会自动生成测试问题由用户终端来解答。这个测试问题可以由计算机生成并评判,但是只有人类才能解答。由于计算机无法解答CAPTCHA的测试问题,所以回答出测试问题的用户终端便可以被确定为人类,从而防止非法程序对网站进行恶意注册、暴力破解、或者批量发帖的行为。
在该实施例中,验证码可以是一串随机产生的字符或者符号,验证码具有背景。在验证码的背景中添加一些干扰信息可以防止验证码识别软件对验证码进行破解。预设图片是用于生成验证码的背景的图片。可选地,该预设图片为拍照的照片,比如,对空白的白纸进行拍照所获取的照片。该预设图片也可以为对牛皮纸、宣纸、吸墨纸等纹理复杂的纸张进行拍照所获取的照片,该照片的颜色可以为除了白色的其他颜色。
本发明实施例通过获取预设图片以获取用于生成验证码的背景的图片。需要说明的是,上述获取预设图片的方式仅为本发明的优选实施例,并不代表本发明实施例的验证码的背景生成方法仅包括上述预设图片的获取方式。为了获取不同纹理复杂的图片,得到不同效果的用于生成验证码的背景的图片,本发明实施例还可以包括其他能够获取预设图片的方法,此处不再一一举例说明。
步骤S204,对预设图片执行灰度处理,得到灰度图片。
在本申请上述步骤S204提供的方案中,在获取预设图片之后,对预设图片执行灰度处理。当预设图片为彩色时,对预设图片执行灰度处理得到灰度色,也即,得到灰度化的图片,其中,灰度色为纯白、纯黑、以及从黑色到白色过渡的一系列颜色。可选地,通过计算机对预设图片执行灰度处理,得到灰度数字图像,将灰度数字图像作为灰度图片。灰度数字图像是通过在单个电磁波频谱中测量每个像素的亮度得到的,通常用每个采样像素为8比特位的非线性尺度来保存,这样灰度等级可以有256种灰度,实现黑色与白色的平滑过渡,避免可见条带的失真,易于编程。
将彩色的预设图像转化为灰度图片的过程可以实现对预设图像的灰度处理。彩色图像中的每个像素的颜色由红、蓝、绿三个分量组成,每个分量有255种取值,则每个像素有255×255×255种取值。将预设图像转化为灰度图片之后,灰度图片的红、蓝、绿三个分量相同,每个像素有255种取值,灰度图片的计算量大大减小,可以提高验证码的背景的生产速度,同时减小了图片的存储空间。可选地,分别获取预设图片的每个像素的红、蓝、绿三个分量的值,将每个像素的红、蓝、绿三个分量的值取平均值,然后将此平均值赋值给对应的像素的红、蓝、绿三个分量,从而实现对预设图片执行灰度处理,得到灰度图片。可以通过软件程序设计具体的算法来实现对预设图片执行灰度处理的目的,比如,通过应用程序开发工具Delphi设计的对预设图片执行灰度处理的程序,可以通过可视化的界面实现对预设图片执行灰度处理的效果。
本发明实施例通过对预设图片执行灰度处理,得到灰度图片。需要说明的是,上述得到灰度图片的方式仅为本发明的优选实施例,并不代表本发明实施例得到灰度图片仅包括上述对预设图片执行灰度处理的方式。为了得到灰度图片,本发明实施例还可以包括其他能够对预设图片执行灰度处理,得到灰度图片的方式,此处不再一一举例说明。
步骤S206,按照预设算法提取灰度图片对应的噪声信息。
在本申请上述步骤S206提供的方案中,对预设图片执行灰度处理,得到灰度图片之后,按照预设算法提取灰度图片对应的噪声信息。可选地,该预设算法为边缘提取算法,用于提取灰度图片的边缘信息,舍弃不相关的信息量,从而大幅度地降低了灰度图片在后续处理的数据量。通过边缘提取算法提取出灰度图片中对象与背景中的交界线,得到灰度图片对应的噪声信息,该噪声信息相对于验证码而言,妨碍验证码的接收,是用于干扰验证码识别的信息,该噪声信息也可以为获取预设图片的装置的噪声信息。
边缘特性对图像的质量具有重要作用,比如,在边缘特性比较复杂的区域,图像质量比较差,在边缘特性较为简单的区域,图像质量比较好。灰度图片的边缘是指灰度图片的局部区域具有不连续性,比如,灰度级的突变,纹理结构的变化,包含了用于识别灰度图片的重要信息,也即,包含了用于灰度图片分割、图片纹理分析的信息。灰度图片的边缘的提取依赖于边缘检测算子检测出灰度图片在灰度、纹理等区域不连续的地方,以确定边缘的有无、真假、实现定向、定位,从而提取出灰度图片的边缘,降低了后续对灰度图片处理的计算量。
灰度图片的边缘提取主要是进行图像灰度变化的度量,灰度的变化可以用灰度变化的梯度来反映。该预设算法可以基于灰度图片的局部运算方法,采用对灰度图片进行局部微分来获得边缘检测算子,该预设算法也可以为以能量最小化为准则的全局提取方法,从全局最优的观点提取灰度图片的边缘信息,从而得到灰度图片对应的噪声信息。
可选地,预设算法通过微分算子法来实现,根据灰度图片的边缘处的一阶导数有极值,或者灰度图片的边缘处的二阶导数过零点的原理来检测边缘信息。在求边缘倒数时,对灰度图片的每个像素位置进行计算,可以通过卷积近似计算。一阶微分的边缘检测算子为矢量,既有大小、又有方向,与标量相比,数据的存储量比较大。一阶导数的局部值最大对应着二阶导数的过零点,可以通过二阶导数的过零点查找灰度图片的边缘,查找边缘信息准确性高,从而得到灰度图片对应的噪声信息。
可选地,预设算法通过曲面拟合算法来实现,可以先用一个平面或者曲面逼近图像面积元,再用该平面或者曲面的梯度代替点梯度,进而实现灰度图片的边缘检测。该曲面拟合算法可以为一次平面拟合法,或者二次品面拟合法。
本发明实施例在对预设图片执行灰度处理,得到灰度图片之后,按照预设算法提取灰度图片对应的噪声信息,降低了生成验证码的背景的计算量,实现了提高验证码的背景生成速度的技术效果。
步骤S208,根据噪声信息生成验证码的背景图片,且将背景图片作为验证码的背景。
在本申请上述步骤S208提供的方案中,在按照预设算法提取灰度图片对应的噪声信息之后,根据噪声信息生成验证码的背景图片,该验证码的背景图片比预设图片小。可选地,根据噪声信息生成与预设图片大小相同的原始背景图片,该原始背景图片上具有预设图片的噪声信息。将该原始背景图片进行分割,得到与验证码对应的验证码的背景图片。该验证码的背景图片的大小与验证码的大小、验证码的线条宽度有关,也即,验证码的大小和线条宽度可以预先设置,通过验证码的大小和线条的宽度确定验证码的背景图片的大小。当验证码的背景图片生成之后,将验证码的背景图片确定为验证码的背景。
可选地,通过原始背景图片生成的验证码的背景图片可以为多个,多个验证码的背景图片的大小相同,在网站上进行验证码验证的过程中,虽然不同验证码对应的背景图片不同,但是不同验证码对应的背景图片的大小相同。
可选地,根据噪声信息生成验证码的背景图片,且将背景图片作为验证码的背景,可以将验证码绘制在验证码的背景上生成验证码图片。
本发明实施例通过根据噪声信息生成验证码的背景图片,且将背景图片作为验证码的背景,达到了生成验证码的背景的目的,实现了提高验证码的背景生成速度的技术效果,进而提高了验证码图片的生成速度。
通过上述步骤S202至步骤S208,本发明提供的方案可以实现通过获取预设图片,预设图片为用于生成验证码的背景的图片;然后对预设图片执行灰度处理,得到灰度图片;再按照预设算法提取灰度图片对应的噪声信息;最后根据噪声信息生成验证码的背景图片,且将背景图片作为验证码的背景,实现了提高验证码的背景生成速度的技术效果,进而解决了验证码的背景生成速度慢的技术问题。
作为一种可选的实施方式,按照预设算法提取灰度图片的噪声信息。图3是根据本发明实施例的按照预设算法提取灰度图片的噪声信息的方法的流程图。如图3所示,该按照预设算法提取灰度图片的噪声信息的方法包括以下步骤:
步骤S301,获取灰度图片的图像信息。
在本申请步骤S204对预设图片执行灰度处理,得到灰度图片之后,在该实施例中,获取灰度图片的图像信息。灰度图片的图像信息可以为灰度图片上各像素的像素信息,比如,各个像素的红、蓝、绿的分量,也可以为灰度图片的边缘信息。
灰度图片的边缘信息对图像识别和图像测量十分有用。图像边缘是图像的一个属性区域和另一个属性区域的交界处,也即,灰度图片的局部区域具有不连续性,比如,灰度级的突变,纹理结构的变化,是区域属性发生突变的地方,也是图像信息最丰富的地方,蕴含了丰富的内在信息。灰度图片的边缘信息包括像素的坐标、边缘的方向、边缘的幅度等信息。沿边缘走向的像素的灰度变化缓慢,而垂直边缘走向的像素的灰度变化剧烈,也即,灰度梯度指向边缘的垂直方向。
步骤S302,对图像信息按照拉普拉斯边缘提取算法执行处理,得到噪声信息。
在获取灰度图片的图像信息之后,对图像信息按照拉普拉斯边缘提取算法执行处理。拉普拉斯算子基于二阶微分计算,可以得到图像中各个方向上的变化率的大小,检测的信息量大,对噪声敏感。比如,在灰度图片中,检测灰度的变化率,可以得到灰度在各个方向上的变化率。变化率较大的区域一般集中在边缘,拉普拉斯算法通过二阶微分计算,拉普拉斯算子在边的亮的一侧为正值,拉普拉斯算子在边的暗的一侧为负值,可以通过拉普拉斯算子检测灰度图片中的像素是在边的亮的一侧还是在边的暗的一侧,同时利用二阶导数零交叉,求梯度局部最大值的点,确定边的位置。由于拉普拉斯边缘提取算法可以得到灰度在各个方向上的变化率,对噪声敏感,可以有效提取灰度图片的噪声信息,在根据噪声信息生成验证码的背景图片,且将背景图片作为验证码的背景之后,背景的干扰性更强。
可选地,按照预设算法提取灰度图片对应的噪声信息除了使用拉普拉斯边缘提取算法之外,还可以使用其它的边缘提取算法。比如,一阶微分的边缘检测算法,一阶微分的边缘检测算法包括Roberts算法,Sobel算法和Prewitt算法等。其中,Roberts算法根据任一对互相垂直方向的差分计算梯度,采用对角线方向相邻像素之差进行梯度幅值检测,边缘定位的精度不是很高;Sobel算法是离散型的差分算子,带有方向性,可以只检测竖直边缘或者只检测与数值边缘垂直的边缘,或者都检测,检测的信息有限,没有将图像的主题与背景严格区分开,不能基于灰度图片进行处理;Prewitt算法通过像素平均对噪声进行抑制,边缘定位的精度不如Roberts算法。此外,在上述一阶微分的边缘检测算法中,如果求得的一阶导数高于某一阈值时,则确定该点为边缘点,这样会导致边缘点太多。因此,通过一阶微分的边缘检测算法提取灰度图片的噪声信息,再根据该噪声信息生成验证码的背景图片,且将该背景图片作为验证码的背景之后,背景的干扰性比较低。
通过二阶微分边缘检测算法检测一阶导数的局部最大值的点,并将梯度局部最大值的点确定为边缘点,一阶导数的局部最大值点对应着二阶导数的零交叉点,可以降低边缘点的数目。Canny算法为二阶微分边缘检测算法,采用一阶偏导的有限差分来计算梯度和幅值方向,还经过非极大值抑制的过程,最后采用两个阈值连接边缘,实现起来比较麻烦。而拉普拉斯边缘提取算法只考虑边缘点的位置,不用考虑边缘点的灰度差,处理容易,从而通过对灰度图片的二阶导数的零交叉点确定灰度图片的边缘点,因此,通过拉普拉斯边缘提取算法提取灰度图片的噪声信息,再根据该噪声信息生成验证码的背景图片,且将该背景图片作为验证码的背景之后,背景的干扰性高。
本发明实施例通过获取灰度图片的图像信息,然后对图像信息按照拉普拉斯边缘提取算法执行处理,得到噪声信息,提高了验证码的背景的干扰性。
作为一种可选的实施方式,对图像信息按照拉普拉斯边缘提取算法执行处理。图4是根据本发明实施例的对图像信息按照拉普拉斯边缘提取算法执行处理的方法的流程图。如图4所示,该对图像信息按照拉普拉斯边缘提取算法执行处理的方法包括以下步骤:
步骤S401,获取验证码的线条宽度。
验证码可以预先设置,则验证码的大小、验证码的线条宽度也就确定。可选地,验证码的线条宽度是均匀的,获取验证码的线条宽度。
步骤S402,根据验证码的线条宽度确定滤波器的宽度参数。
通过预设算法提取灰度图片对应的噪声信息,主要通过灰度图片的一阶或者二阶导数来确定的,导数的计算对噪声很敏感,滤波器用于对图像信息执行滤波,宽度参数为滤波器对图像信息执行滤波时的参数,可以对噪声进行处理。根据验证码的线条宽度确定滤波器的宽度参数,优选地,验证码的线条宽度和滤波器的宽度参数相同。
步骤S403,根据宽度参数对图像信息执行拉普拉斯边缘提取计算,得到噪声信息。
在根据验证码的线条宽度确定滤波器的宽度参数之后,根据滤波器的宽度参数对图像信息执行拉普拉斯边缘提取计算,得到噪声信息,该噪声信息可以为灰度图片中灰度变化较大的区域的信息,噪声信息对应的线条宽度相同,线条完全随机,干扰性强,无法使用霍夫变换等曲线检测手段检测出来,提高了验证码的抗破解性。其中,霍夫变换可以检测图像中的直线、曲线、椭圆等线条。
本发明实施例通过获取验证码的线条宽度;根据验证码的线条宽度确定滤波器的宽度参数,滤波器用于对图像信息执行滤波,宽度参数为滤波器对图像信息执行滤波时的参数;根据宽度参数对图像信息执行拉普拉斯边缘提取计算,得到噪声信息,实现了对图像信息按照拉普拉斯边缘提取算法执行处理,从而提高了验证码的抗破解性。
作为一种可选的实施方式,根据噪声信息生成验证码的背景图片。图5是根据本发明实施例的根据噪声信息生成验证码的背景图片的方法的流程图。如图5所示,根据噪声信息生成验证码的背景图片的方法包括以下步骤:
步骤S501,根据噪声信息生成验证码的背景信息。
在本申请步骤S206按照预设算法提取灰度图片对应的噪声信息之后,根据灰度图片对应的噪声信息生成验证码的背景信息,该背景信息为用于生成图片的信息,比如,噪声信息对应的线条的分布信息,图片的大小信息,图片各像素点的红、蓝、绿分量的信息等。
步骤S502,根据背景信息生成原始背景图片。
在根据噪声信息生成验证码的背景信息之后,根据验证码的背景信息生成原始背景图片。该原始背景图片用于生成验证码的背景图片。
图6是根据本发明实施例的根据噪声信息生成的验证码的背景图片的示意图。如图6所示,该原始背景图片与步骤S202获取的预设图片的大小相同。该原始背景图片中的线条分布对应噪声的分布,为随机分布的,无法通过使用霍夫变换等曲线检测方法的验证码识别软件将这种随机分布的线条检测出来。验证码识别软件在识别验证码时通常会将验证码的不需要的信息去除掉,比如,背景、干扰线、干扰像素等,中值滤波器可以将图片中像素的值用周围像素的平均值代替,对点噪声的滤除有很好的效果,但是,该原始背景图片中的黑色像素和白色像素的比例相近,从而无法通过使用中止滤波器的验证码识别软件将其滤除,避免了验证码识别软件从验证码的背景中识别出验证码,提高了验证码的抗破解性。
步骤S503,划分原始背景图片,得到分割图片。
在根据背景信息生成原始背景图片之后,获取验证码的大小,根据验证码的大小和验证码的线条宽度划分原始背景图片,可选地,通过软件程序设计划分算法,通过划分算法将原始背景图片划分为若干个图片,从而得到分割图片。其中,分割图片的大小与验证码的大小和验证码的线条宽度相对应。
步骤S504,将分割图片确定为验证码的背景图片。
在得到分割图片之后,将分割图片确定为验证码的背景图片,将该背景图片确定为验证码的背景。
可选地,在根据噪声信息生成验证码的背景图片之后,在背景图片上绘制验证码,也即,绘制随机字符串,得到验证码图片,可选地,该验证码预先设置。图7是根据本发明实施例的验证码图片的示意图。如图7所示,验证码为“01234”,将验证码“01234”绘制在验证码的背景图片上,验证码“01234”的大小和线条宽度与验证码的背景图片是相对应的,从而得到验证码图片。该验证码图片中的验证码也可以为数字。
通过验证码图片来验证身份是一种字符校验技术,可以判断网站中的操作是合法用户的操作,还是计算机程序恶意的操作。验证码图片是混合了数字或者字母的图片,同时添加了一些干扰信息,人眼识别不容易,计算机识别就更加困难,该实施例的根据噪声信息生成验证码的背景信息可以提高验证码的背景的干扰性,防止不法用户利用计算机自动批量注册,对特定的注册用户用特定程序暴力破解验证码进行不断地登录,提高网站使用的安全性。
该实施例的验证码图片可以为四位数字,或者字母,或者数字与字母混合组成,在网站中使用时,每刷新一次,验证码图片改变一次。
本发明实施例通过根据噪声信息生成验证码的背景信息;然后根据背景信息生成原始背景图片;再划分原始背景图片,得到分割图片;最后将分割图片确定为验证码的背景图片,实现了根据噪声信息生成验证码的背景图片,将验证码的背景图片确定为验证码的背景,而不需要在验证码周围添加噪声点、线条、或者不规则的区域等这些计算量很大的干扰信息,提高了验证码的背景生成速度。
作为一种可选的实施方式,在根据噪声信息生成验证码的背景图片之后,将背景图片存储至内存缓冲区中。在背景图片上绘制验证码之前,从内存缓冲区中获取背景图片,得到与验证码对应的背景图片。
在将验证码绘制在验证码的背景图片之前,根据预设图片的噪声信息生成验证码的背景信息;然后根据背景信息生成原始背景图片;再划分原始背景图片,得到多张分割图片;最后将多张分割图片存储至内存缓冲区中。在背景图片上绘制验证码之前,从内存缓冲区中获取背景图片,得到与验证码相对应的背景图片,将该背景图片确定为验证码的背景,提高了验证码的背景的生成速度,此外,在背景图片上绘制验证码,在生成验证码图片的过程中计算量很小,从而达到快速生成验证码图片的效果。
本发明实施例通过在根据噪声信息生成验证码的背景图片之后,将背景图片存储至内存缓冲区中。在背景图片上绘制验证码之前,从内存缓冲区中获取背景图片,得到与验证码对应的背景图片,提高了验证码的背景的生成速度,从而达到快速生成验证码图片的效果。
作为一种可选的实施方式,本申请步骤S202获取预设图片包括:通过图像传感器采集图像,得到照片,并将照片作为预设图片,本申请步骤S206按照预设算法提取灰度图片对应的噪声信息包括:按照预设算法提取灰度图片的噪声信息和图像传感器的噪声信息。
图像传感器是数字图像的重要组成部分,可以为电荷耦合元件(Charge CoupledDevice,简称为CCD),也可以为金属氧化物半导体元器件(Complementary Metal-OxideSemiconductor,简称为CMOS)。其中,CCD是应用在摄影摄像的高端技术元件,CMOS应用在较低影响品质的产品中。图像传感器将光学信号转化为电信号,比如,数码相机中使用图像传感器将光学信息转化为电信号,采集图像,得到照片,并将该照片作为预设图片,将该预设图片按照本申请步骤S204对预设图片执行灰度处理,得到灰度图片。
图像传感器在采集图像的时候,会产生噪声信息。图像传感器的噪声信息包括多个方面,有图像传感器的电子元器件的噪声,比如,电阻引起的热噪声,真空器件引起的散粒噪声和闪烁噪声,面结型的晶体管产生的颗粒噪声,场效应管的沟道热噪声,光电管的光量子噪声和电子起伏噪声,以及摄像管引起的各种噪声等,这些原器件组成的各种电子线路以及构成的设备又将这些噪声产生不同的变换而形成局部线路和设备的噪声,此外,还有光学现象所产生的图像光学噪声。图像传感器中的噪声信息也可以为通过图像传感器获取的照片在传输的过程中产生的噪声,产生的随机、离散的像素点。
按照预设算法提取灰度图片的噪声信息和图像传感器的噪声信息。根据灰度图片的噪声信息和图像传感器的噪声信息生成验证码的背景图片,且将背景图片作为验证码的背景,提高了验证码的背景生成速度。
可选地,按照拉普拉斯边缘提取算法提取灰度图片的噪声信息和图像传感器的噪声信息。拉普拉斯边缘提取算法只考虑边缘点的位置,不用考虑边缘点的灰度差,处理容易,从而通过对灰度图片的二阶导数的零交叉点确定灰度图片的边缘点,由于拉普拉斯边缘提取算法对噪声敏感,可以有效提取灰度图片的噪声信息,在根据噪声信息生成验证码的背景图片,且将背景图片作为验证码的背景之后,背景的干扰性更强。
本发明实施例通过图像传感器采集图像,得到照片,并将照片作为预设图片,按照预设算法提取灰度图片和图像传感器的噪声信息,提高了验证码的背景生成速度。
作为一种可选的实施方式,本申请步骤S202获取预设图片包括:对预设纸张进行多次拍照,得到多张预设图片,本申请步骤S204对预设图片执行灰度处理包括:对多张预设图片同时执行灰度处理,得到多张灰度图片,本申请步骤S206按照预设算法提取灰度图片的噪声信息包括:按照预设算法同时提取多张灰度图片的噪声信息,本申请步骤S208根据噪声信息生成验证码的背景图片包括:根据多张灰度图片的噪声信息生成验证码的背景图片,且将背景图片作为验证码的背景。
举例而言,在将验证码绘制在验证码的背景图片之前,可以使用相机对同一张白纸拍摄多张相片,在10分钟内可以拍摄几百张相片。对几百张预设图片同时执行灰度处理,得到几百张灰度图片,按照预设算法同时提取这几百张灰度图片的噪声信息,根据几百张相片的噪声信息生成验证码的背景信息;然后根据背景信息生成原始背景图片;再划分原始背景图片,得到多张分割图片;最后将多张分割图片确定为验证码的背景图片,存储至内存缓冲区中。在生成验证码图片之前,从内存缓冲区中获取与验证码的大小、验证码的线条宽度相对应的背景图片,将该背景图片确定为验证码的背景,提高了验证码的背景的生成速度,在背景图片上绘制验证码,在生成验证码图片的过程中计算量很小,从而达到快速生成验证码图片的效果。
本发明实施例通过对预设纸张进行多次拍照,得到多张预设图片,在得到多张预设图片之后,对多张预设图片同时执行灰度处理,得到多张灰度图片,再按照预设算法同时提取多张灰度图片的噪声信息,最后根据多张灰度图片的噪声信息生成验证码的背景图片,且将背景图片作为验证码的背景,提高了验证码的背景的生成速度,从而达到了快速生成验证码图片的效果。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例2
根据本发明实施例,还提供了一种用于实施上述验证码的背景生成方法的装置。图8是根据本发明第一实施例的验证码的背景生成装置的示意图,如图8所示,该装置包括:获取单元10,处理单元20,提取单元30和生成单元40。
该实施例的验证码的背景生成装置中,获取单元10可以用于执行本发明实施例中的步骤S202,处理单元20可以用于执行本发明实施例中的步骤S204,提取单元30可以用于执行本发明实施例中的步骤S206,生成单元40用于执行本发明实施例中的步骤S208。
本申请上述获取单元10用于获取预设图片,其中,预设图片为用于生成验证码的背景的图片。该实施例的预设图片为用于生成验证码的背景的图片。
在该实施例中,验证码可以是一串随机产生的字符或者符号,验证码具有背景。在验证码的背景中添加一些干扰信息可以防止验证码识别软件对验证码进行破解。获取单元10获取的预设图片是用于生成验证码的背景的图片。可选地,获取单元10通过拍摄获取预设图片,比如,对空白的白纸进行拍照所获取的照片。该预设图片也可以为对牛皮纸、宣纸、吸墨纸等纹理复杂的纸张进行拍照所获取的照片,该照片的颜色可以为除了白色的其他颜色。
本申请上述处理单元20用于对预设图片执行灰度处理,得到灰度图片。在获取单元10获取预设图片之后,处理单元20对预设图片执行灰度处理。当预设图片为彩色时,处理单元20对预设图片执行灰度处理得到灰度色,也即,得到灰度化的图片。可选地,处理单元20通过计算机对预设图片执行灰度处理,得到灰度数字图像,将灰度数字图像作为灰度图片。
处理单元20将彩色的预设图像转化为灰度图片的过程可以实现对预设图像的灰度处理。可选地,处理单元20分别获取预设图片的每个像素的红、蓝、绿三个分量的值,将每个像素的红、蓝、绿三个分量的值取平均值,然后将此平均值赋值给对应的像素的红、蓝、绿三个分量,从而处理单元20对预设图片执行灰度处理,得到灰度图片。处理单元20可以通过软件程序设计具体的算法来实现对预设图片执行灰度处理的目的。
本申请上述提取单元30按照预设算法提取灰度图片对应的噪声信息。在处理单元20对预设图片执行灰度处理,得到灰度图片之后,提取单元30按照预设算法提取灰度图片对应的噪声信息。可选地,该预设算法为边缘提取算法,用于提取灰度图片的边缘信息,舍弃不相关的信息量,从而大幅度地降低了灰度图片在后续处理的数据量。提取单元30通过边缘提取算法提取出灰度图片中对象与背景中的交界线,得到灰度图片对应的噪声信息,该噪声信息相对于验证码而言,妨碍验证码的接收,是用于干扰验证码识别的信息,该噪声信息也可以为获取预设图片的装置的噪声信息。
可选地,提取单元30通过微分算子法提取灰度图片对应的噪声信息。提取单元30根据灰度图片的边缘处的一阶导数有极值,或者灰度图片的边缘处的二阶导数过零点的原理来检测边缘信息。在求边缘倒数时,对灰度图片的每个像素位置进行计算,可以通过卷积近似计算。一阶微分的边缘检测算子为矢量,既有大小、又有方向,与标量相比,数据的存储量比较大。一阶导数的局部值最大对应着二阶导数的过零点,可以通过二阶导数的过零点查找灰度图片的边缘,查找边缘信息准确,从而得到灰度图片对应的噪声信息。
可选地,提取单元30通过曲面拟合算法提取灰度图片对应的噪声信息,可以先用一个平面或者曲面逼近图像面积元,再用该平面或者曲面的梯度代替点梯度,进而实现灰度图片的边缘检测。该曲面拟合算法可以为一次平面拟合法,或者二次品面拟合法。
本申请上述生成单元40用于根据噪声信息生成验证码的背景图片,且将背景图片作为验证码的背景。
在提取单元30按照预设算法提取灰度图片对应的噪声信息之后,生成单元40根据噪声信息生成验证码的背景图片,该验证码的背景图片比预设图片小。可选地,根据噪声信息生成与预设图片大小相同的原始背景图片,该原始背景图片上具有预设图片的噪声信息。将该原始背景图片进行分割,得到与验证码对应的验证码的背景图片。该验证码的背景图片的大小与验证码的大小、验证码的线条宽度有关,也即,验证码的大小和线条宽度可以预先设置,通过验证码的大小和线条的宽度确定验证码的背景图片的大小。当验证码的背景图片生成之后,将验证码的背景图片确定为验证码的背景。
本发明实施例通过获取单元10获取预设图片,预设图片为用于生成验证码的背景的图片,通过处理单元20对预设图片执行灰度处理,得到灰度图片,通过提取单元30按照预设算法提取灰度图片对应的噪声信息,通过生成单元40根据噪声信息生成验证码的背景图片,且将背景图片作为验证码的背景,达到了提高验证码的背景生成速度,解决了验证码的背景生成速度慢的技术问题。
作为一种可选的实施方式,图9是根据本发明第二实施例的验证码的背景生成装置的示意图,如图9所示,该验证码的背景生成装置包括:获取单元10,处理单元20,提取单元30和生成单元40,其中,提取单元30包括:获取模块31和处理模块32。
在该实施例中,获取单元10,处理单元20,提取单元30和生成单元40的作用与本发明第一实施例的验证码的背景生成装置中的作用相同,在此不再赘述。
获取模块31,用于获取灰度图片的图像信息。
处理模块32,用于对图像信息按照拉普拉斯边缘提取算法执行处理,得到噪声信息。
在该实施例中,通过获取模块31获取灰度图片的图像信息。灰度图片的图像信息可以为灰度图片上各像素的像素信息,比如,各个像素的红、蓝、绿的分量,也可以为灰度图片的边缘信息。
在获取模块31获取灰度图片的图像信息之后,处理模块32对图像信息按照拉普拉斯边缘提取算法执行处理,得到噪声信息。拉普拉斯算子基于二阶微分计算,可以得到图像中各个方向上的变化率的大小,检测的信息量大,对噪声敏感。由于拉普拉斯边缘提取算法可以得到灰度在各个方向上的变化率,对噪声敏感,可以有效提取灰度图片的噪声信息,在根据噪声信息生成验证码的背景图片,且将背景图片作为验证码的背景之后,背景的干扰性更强。
本发明实施例通过获取模块31获取灰度图片的图像信息,通过处理模块32对图像信息按照拉普拉斯边缘提取算法执行处理,得到噪声信息,实现了按照预设算法提取灰度图片的噪声信息,提高了验证码的背景生成速度。
作为一种可选的实施方式,图10是根据本发明第三实施例的验证码的背景生成装置的示意图,如图10所示,该验证码的背景生成装置包括:获取单元10,处理单元20,提取单元30和生成单元40,其中,提取单元30包括:获取模块31和处理模块32,处理模块32包括:获取子模块321,确定子模块322和计算子模块323。
在该实施例中,获取单元10,处理单元20,提取单元30和生成单元40,获取模块31和处理模块32的作用与本发明第二实施例的验证码的背景生成装置中的作用相同,在此不再赘述。
获取子模块321,用于获取验证码的线条宽度。
确定子模块322,用于根据验证码的线条宽度确定滤波器的宽度参数,其中,滤波器用于对图像信息执行滤波,宽度参数为滤波器对图像信息执行滤波时的参数。
计算子模块323,用于根据宽度参数对图像信息执行拉普拉斯边缘提取计算,得到噪声信息。
该实施例的验证码预先设置,则验证码的大小、验证码的线条宽度也就确定。可选地,验证码的线条宽度是均匀的,获取子模块321获取验证码的线条宽度。
提取单元30通过预设算法提取灰度图片对应的噪声信息,主要通过灰度图片的一阶或者二阶导数来确定的,导数的计算对噪声很敏感,滤波器用于对图像信息执行滤波,可以对噪声进行处理。确定子模块322根据验证码的线条宽度确定滤波器的宽度参数,优选地,验证码的线条宽度和滤波器的宽度参数相同。
在确定子模块322根据验证码的线条宽度确定滤波器的宽度参数之后,计算子模块323根据滤波器的宽度参数对图像信息执行拉普拉斯边缘提取计算,得到噪声信息,该噪声信息可以为灰度图片中灰度变化较大的区域的信息,噪声信息对应的线条宽度相同,线条完全随机,干扰性强,无法使用霍夫变换等曲线检测手段检测出来,提高了验证码的抗破解性。
本发明实施例通过获取子模块321获取验证码的线条宽度,通过确定子模块322根据验证码的线条宽度确定滤波器的宽度参数,滤波器用于对图像信息执行滤波,宽度参数为滤波器对图像信息执行滤波时的参数,通过计算子模块323根据宽度参数对图像信息执行拉普拉斯边缘提取计算,得到噪声信息,实现了对图像信息按照拉普拉斯边缘提取算法执行处理,提高了验证码的抗破解性,提高了验证码的背景生成速度。
作为一种可选的实施方式,图11是根据本发明第四实施例的验证码的背景生成装置的示意图,如图11所示,该验证码的背景生成装置包括:获取单元10,处理单元20,提取单元30和生成单元40,其中,生成单元40包括:第一生成模块41,第二生成模块42,划分模块43和确定模块44。
在该实施例中,获取单元10,处理单元20,提取单元30和生成单元40的作用与本发明第一实施例的验证码的背景生成装置中的作用相同,在此不再赘述。
第一生成模块41,用于根据噪声信息生成验证码的背景信息。
第二生成模块42,用于根据背景信息生成原始背景图片。
划分模块43,用于划分原始背景图片,得到分割图片。
确定模块44,用于将分割图片确定为验证码的背景图片。
在提取单元30按照预设算法提取灰度图片对应的噪声信息之后,第一生成模块41用于根据灰度图片对应的噪声信息生成验证码的背景信息,该背景信息为用于生成图片的信息,比如,噪声信息对应的线条的分布信息,图片的大小信息,图片各像素点的红、蓝、绿分量的信息等。
在第一生成模块41根据噪声信息生成验证码的背景信息之后,第二生成模块42根据验证码的背景信息生成原始背景图片。该原始背景图片用于生成验证码的背景图片。
在第二生成模块42根据背景信息生成原始背景图片之后,划分模块43获取验证码的大小,根据验证码的大小和验证码的线条宽度划分原始背景图片,可选地,划分模块43通过软件程序设计划分算法,通过划分算法将原始背景图片划分为若干个图片,从而得到分割图片。其中,分割图片的大小与验证码的大小和验证码的线条宽度相对应。
在得到分割图片之后,确定模块44将分割图片确定为验证码的背景图片,将该背景图片确定为验证码的背景。
本发明实施例通过第一生成模块41根据噪声信息生成验证码的背景信息,通过第二生成模块42根据背景信息生成原始背景图片,通过划分模块43划分原始背景图片,得到分割图片,通过确定模块44将分割图片确定为验证码的背景图片,实现了根据噪声信息生成验证码的背景图片,提高了验证码的背景生成速度。
作为一种可选的实施方式,图12是根据本发明第五实施例的验证码的背景生成装置的示意图,如图12所示,该验证码的背景生成装置包括:获取单元10,处理单元20,提取单元30,生成单元40和绘制单元50。
绘制单元50,用于在根据噪声信息生成验证码的背景图片之后,在背景图片上绘制验证码,得到验证码图片。
可选地,在生成单元40根据噪声信息生成验证码的背景图片之后,通过绘制单元50在背景图片上绘制验证码,也即,绘制随机字符串,得到验证码图片,可选地,该验证码预先设置。
通过验证码图片可以判断网站中的操作是合法用户的操作,还是计算机程序恶意的操作。验证码图片是混合了数字或者字母的图片,同时添加了一些干扰信息,人眼识别不容易,计算机识别就更加困难,该实施例的生成单元40根据噪声信息生成验证码的背景信息可以提高验证码的背景的干扰性,防止不法用户利用计算机自动批量注册,对特定的注册用户用特定程序暴力破解验证码进行不断地登录,提高网站使用的安全性。
可选地,获取单元10用于通过图像传感器采集图像,得到照片,并将照片作为预设图片。
可选地,提取单元30用于按照预设算法提取灰度图片和图像传感器的噪声信息。拉普拉斯边缘提取算法只考虑边缘点的位置,不用考虑边缘点的灰度差,处理容易,从而通过对灰度图片的二阶导数的零交叉点确定灰度图片的边缘点,由于拉普拉斯边缘提取算法对噪声敏感,可以有效提取灰度图片的噪声信息,在根据噪声信息生成验证码的背景图片,且将背景图片作为验证码的背景之后,背景的干扰性更强。
作为一种可选的实施方式,获取单元10用于对预设纸张进行多次拍照,得到多张预设图片,处理单元20用于对多张预设图片同时执行灰度处理,得到多张灰度图片,提取单元30用于按照预设算法同时提取多张灰度图片的噪声信息,生成单元40用于根据多张灰度图片的噪声信息生成验证码的背景图片。
举例而言,在生成验证码图片之前可以使用相机对着同样一张白纸拍摄多张相片,按照预设算法对拍摄的图片统一处理得到背景图片,最后将背景图片切割并且放入内存缓冲区,在生成验证码图片时取出来使用即可,也即,在生成验证码图片时只需将验证码的背景图片从内存缓冲区中取出,再在验证码的背景图片上面绘制验证码即可,几乎没有计算,所以验证码图片的生成过程中计算量很小,提高了验证码图片的生成速度。
实施例3
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于保存上述实施例一种验证码的背景生成方法所执行的程序代码。
可选地,在本实施例中,上述存储介质可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
第一步,获取预设图片,其中,预设图片为用于生成验证码的背景的图片。
第二步,对预设图片执行灰度处理,得到灰度图片。
第三步,按照预设算法提取灰度图片对应的噪声信息。
第四步,根据噪声信息生成验证码的背景图片,且将背景图片作为验证码的背景。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:获取灰度图片的图像信息;对图像信息按照拉普拉斯边缘提取算法执行处理,得到噪声信息。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:获取验证码的线条宽度;根据验证码的线条宽度确定滤波器的宽度参数,其中,滤波器用于对图像信息执行滤波,宽度参数为滤波器对图像信息执行滤波时的参数;根据宽度参数对图像信息执行拉普拉斯边缘提取计算,得到噪声信息。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:根据噪声信息生成验证码的背景信息;根据背景信息生成原始背景图片;划分原始背景图片,得到分割图片;将分割图片确定为验证码的背景图片。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:在根据噪声信息生成验证码的背景图片之后,在背景图片上绘制验证码,得到验证码图片。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:在根据噪声信息生成验证码的背景图片之后,将背景图片存储至内存缓冲区中,在背景图片上绘制验证码之前,从内存缓冲区中获取背景图片,得到与验证码对应的背景图片。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:通过图像传感器采集图像,得到照片,并将照片作为预设图片,按照预设算法提取灰度图片对应的噪声信息包括:按照预设算法提取灰度图片的噪声信息和图像传感器的噪声信息。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码,获取预设图片包括:对预设纸张进行多次拍照,得到多张预设图片,对预设图片执行灰度处理包括:对多张预设图片同时执行灰度处理,得到多张灰度图片,按照预设算法提取灰度图片的噪声信息包括:按照预设算法同时提取多张灰度图片的噪声信息,根据噪声信息生成验证码的背景图片包括:根据多张灰度图片的噪声信息生成验证码的背景图片,且将背景图片作为验证码的背景。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
实施例4
本发明的实施例还提供一种计算机终端,该计算机终端可以是计算机终端群中的任意一个计算机终端设备。可选地,在本实施例中,上述计算机终端也可以替换为移动终端等终端设备。
可选地,在本实施例中,上述计算机终端可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,图13是根据本发明实施例的一种计算机终端的结构框图。如图13所示,该计算机终端A可以包括:一个或多个(图中仅示出一个)处理器131、存储器133、以及传输装置135。
存储器133可用于存储软件程序以及模块,如本发明实施例中的验证码的背景生成方法和装置对应的程序指令/模块,处理器131通过运行存储在存储器133内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的验证码的背景生成方法。存储器133可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器133可进一步包括相对于处理器131远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端A。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
上述的传输装置135用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置135包括一个网络适配器NIC,其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置135为射频RF模块,其用于通过无线方式与互联网进行通讯。
其中,具体地,存储器133用于存储预设动作条件和预设权限用户的信息、以及应用程序。
处理器131可以通过传输装置调用存储器133存储的信息及应用程序,以执行下述步骤:
可选的,上述处理器131还可以执行如下步骤的程序代码:
第一步,获取预设图片,其中,预设图片为用于生成验证码的背景的图片。
第二步,对预设图片执行灰度处理,得到灰度图片。
第三步,按照预设算法提取灰度图片对应的噪声信息。
第四步,根据噪声信息生成验证码的背景图片,且将背景图片作为验证码的背景。
可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (15)
1.一种验证码的背景生成方法,其特征在于,包括:
获取预设图片,其中,所述预设图片为用于生成验证码的背景的图片;
对所述预设图片执行灰度处理,得到灰度图片;
按照预设算法提取所述灰度图片对应的噪声信息;以及
根据所述噪声信息生成所述验证码的背景图片,且将所述背景图片作为所述验证码的背景,其中,所述背景图片的大小是根据所述验证码的大小和线条的宽度确定的。
2.根据权利要求1所述的方法,其特征在于,按照所述预设算法提取所述灰度图片的噪声信息包括:
获取所述灰度图片的图像信息;以及
对所述图像信息按照拉普拉斯边缘提取算法执行处理,得到所述噪声信息。
3.根据权利要求2所述的方法,其特征在于,对所述图像信息按照所述拉普拉斯边缘提取算法执行处理包括:
获取所述验证码的线条宽度;
根据所述验证码的线条宽度确定滤波器的宽度参数,其中,所述滤波器用于对所述图像信息执行滤波,所述宽度参数为所述滤波器对所述图像信息执行滤波时的参数;以及
根据所述宽度参数对所述图像信息执行拉普拉斯边缘提取计算,得到所述噪声信息。
4.根据权利要求1所述的方法,其特征在于,根据所述噪声信息生成所述验证码的背景图片包括:
根据所述噪声信息生成所述验证码的背景信息;
根据所述背景信息生成原始背景图片;
划分所述原始背景图片,得到分割图片;以及
将所述分割图片确定为所述验证码的背景图片。
5.根据权利要求1所述的方法,其特征在于,在根据所述噪声信息生成所述验证码的背景图片之后,所述方法还包括:在所述背景图片上绘制所述验证码,得到验证码图片。
6.根据权利要求5所述的方法,其特征在于,
在根据所述噪声信息生成所述验证码的背景图片之后,将所述背景图片存储至内存缓冲区中,
在所述背景图片上绘制所述验证码之前,从内存缓冲区中获取所述背景图片,得到与所述验证码对应的背景图片。
7.根据权利要求1所述的方法,其特征在于,
获取所述预设图片包括:通过图像传感器采集图像,得到照片,并将所述照片作为所述预设图片,
按照预设算法提取所述灰度图片对应的噪声信息包括:按照预设算法提取所述灰度图片的噪声信息和所述图像传感器的噪声信息。
8.根据权利要求1所述的方法,其特征在于,
获取所述预设图片包括:对预设纸张进行多次拍照,得到多张所述预设图片,
对所述预设图片执行灰度处理包括:对多张所述预设图片同时执行灰度处理,得到多张所述灰度图片,
按照预设算法提取所述灰度图片的噪声信息包括:按照预设算法同时提取多张所述灰度图片的噪声信息,
根据所述噪声信息生成所述验证码的背景图片包括:根据多张所述灰度图片的噪声信息生成所述验证码的背景图片,且将所述背景图片作为所述验证码的背景。
9.一种验证码的背景生成装置,其特征在于,包括:
获取单元,用于获取预设图片,其中,所述预设图片为用于生成验证码的背景的图片;
处理单元,用于对所述预设图片执行灰度处理,得到灰度图片;
提取单元,按照预设算法提取所述灰度图片对应的噪声信息;以及
生成单元,用于根据所述噪声信息生成所述验证码的背景图片,且将所述背景图片作为所述验证码的背景,其中,所述背景图片的大小是根据所述验证码的大小和线条的宽度确定的。
10.根据权利要求9所述的装置,其特征在于,所述提取单元包括:
获取模块,用于获取所述灰度图片的图像信息;以及
处理模块,用于对所述图像信息按照拉普拉斯边缘提取算法执行处理,得到所述噪声信息。
11.根据权利要求10所述的装置,其特征在于,所述处理模块包括:
获取子模块,用于获取所述验证码的线条宽度;
确定子模块,用于根据所述验证码的线条宽度确定滤波器的宽度参数,其中,所述滤波器用于对所述图像信息执行滤波,所述宽度参数为所述滤波器对所述图像信息执行滤波时的参数;以及
计算子模块,用于根据所述宽度参数对所述图像信息执行拉普拉斯边缘提取计算,得到所述噪声信息。
12.根据权利要求9所述的装置,其特征在于,所述生成单元包括:
第一生成模块,用于根据所述噪声信息生成所述验证码的背景信息;
第二生成模块,用于根据所述背景信息生成原始背景图片;
划分模块,用于划分所述原始背景图片,得到分割图片;以及
确定模块,用于将所述分割图片确定为所述验证码的背景图片。
13.根据权利要求9所述的装置,其特征在于,所述装置还包括:绘制单元,用于在根据所述噪声信息生成所述验证码的背景图片之后,在所述背景图片上绘制所述验证码,得到验证码图片。
14.根据权利要求9所述的装置,其特征在于,
所述获取单元用于通过图像传感器采集图像,得到照片,并将所述照片作为所述预设图片,
所述提取单元用于按照预设算法提取所述灰度图片的噪声信息和所述图像传感器的噪声信息。
15.根据权利要求9所述的装置,其特征在于,
所述获取单元用于对预设纸张进行多次拍照,得到多张所述预设图片,
所述处理单元用于对多张所述预设图片同时执行灰度处理,得到多张所述灰度图片,
所述提取单元用于按照预设算法同时提取多张所述灰度图片的噪声信息,
所述生成单元用于根据多张所述灰度图片的噪声信息生成所述验证码的背景图片。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511004833.6A CN106920266B (zh) | 2015-12-28 | 2015-12-28 | 验证码的背景生成方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511004833.6A CN106920266B (zh) | 2015-12-28 | 2015-12-28 | 验证码的背景生成方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106920266A CN106920266A (zh) | 2017-07-04 |
CN106920266B true CN106920266B (zh) | 2019-11-05 |
Family
ID=59455249
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201511004833.6A Active CN106920266B (zh) | 2015-12-28 | 2015-12-28 | 验证码的背景生成方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106920266B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109711136A (zh) * | 2017-10-26 | 2019-05-03 | 武汉极意网络科技有限公司 | 存储设备、验证码图片生成方法和装置 |
CN108159700B (zh) * | 2018-01-23 | 2021-09-24 | 网易(杭州)网络有限公司 | 生成验证码的方法、装置、存储介质、处理器及终端 |
CN108647683B (zh) * | 2018-04-28 | 2021-08-17 | 浙江大学 | 一种基于频域加噪的字符对抗验证码生成方法和系统 |
CN109101974B (zh) * | 2018-08-06 | 2020-09-01 | 京东数字科技控股有限公司 | 针对线状干扰的去噪方法和去噪装置 |
CN109918890A (zh) * | 2019-01-16 | 2019-06-21 | 深圳壹账通智能科技有限公司 | 图片验证码生成方法、服务器及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102930277A (zh) * | 2012-09-19 | 2013-02-13 | 上海珍岛信息技术有限公司 | 一种基于识别反馈的字符图像验证码识别方法 |
CN103353985A (zh) * | 2013-03-27 | 2013-10-16 | 西华大学 | 一种图像高斯模糊的测度方法 |
CN103902875A (zh) * | 2014-03-04 | 2014-07-02 | 百度在线网络技术(北京)有限公司 | 验证码图片的生成方法和装置及验证方法和装置 |
CN105069783A (zh) * | 2015-07-23 | 2015-11-18 | 北京金山安全软件有限公司 | 一种模糊图片识别方法及装置 |
-
2015
- 2015-12-28 CN CN201511004833.6A patent/CN106920266B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102930277A (zh) * | 2012-09-19 | 2013-02-13 | 上海珍岛信息技术有限公司 | 一种基于识别反馈的字符图像验证码识别方法 |
CN103353985A (zh) * | 2013-03-27 | 2013-10-16 | 西华大学 | 一种图像高斯模糊的测度方法 |
CN103902875A (zh) * | 2014-03-04 | 2014-07-02 | 百度在线网络技术(北京)有限公司 | 验证码图片的生成方法和装置及验证方法和装置 |
CN105069783A (zh) * | 2015-07-23 | 2015-11-18 | 北京金山安全软件有限公司 | 一种模糊图片识别方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN106920266A (zh) | 2017-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106920266B (zh) | 验证码的背景生成方法和装置 | |
WO2019096181A1 (zh) | 安检检测方法、装置、系统及电子设备 | |
CN104980646B (zh) | 阻挡检测方法及电子装置 | |
US10013764B2 (en) | Local adaptive histogram equalization | |
CN103093210B (zh) | 人脸识别中眼镜的鉴别方法及装置 | |
Qiao et al. | Source camera device identification based on raw images | |
CN110728201B (zh) | 用于指纹识别的图像处理方法及装置 | |
Zhao et al. | Computationally efficient demosaicing filter estimation for forensic camera model identification | |
CN109784322B (zh) | 一种基于图像处理的vin码识别方法、设备及介质 | |
WO2024016632A1 (zh) | 亮点定位方法、亮点定位装置、电子设备及存储介质 | |
CN109302566A (zh) | 一种确定拍摄模式的方法、装置及终端设备 | |
CN111063029A (zh) | 地图构建方法、装置、计算机可读存储介质及机器人 | |
CN110705634A (zh) | 一种鞋跟型号识别方法、装置及存储介质 | |
CN107832598B (zh) | 解锁控制方法及相关产品 | |
CN113781421A (zh) | 基于水下的目标识别方法、装置及系统 | |
CN110855876A (zh) | 一种图像处理方法、终端及计算机存储介质 | |
CN112883762A (zh) | 一种活体检测方法、装置、系统及存储介质 | |
CN105787429A (zh) | 采用机器视觉用于检查物体的方法和设备 | |
Julliand et al. | Automated image splicing detection from noise estimation in raw images | |
CN110569716A (zh) | 一种货架图像翻拍检测方法 | |
CN113870143A (zh) | 一种配电线路巡检图像增强方法及系统 | |
Chen et al. | Hybrid saliency detection for images | |
CN116109878B (zh) | 一种图像翻拍识别方法、系统、装置及存储介质 | |
IL233523A (en) | A system and method for quantifying repetition such as in the analysis of laminated documents | |
CN108805883B (zh) | 一种图像分割方法、图像分割装置及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |