本公开涉及图像处理,尤其涉及内容安全领域,更具体地,本公开提供了一种生成验证码图像的方法、装置、电子设备、存储介质以及计算机程序产品。
背景技术:
1、验证码用于验证用户身份或者防止自动化程序滥用。验证码种类较多,例如包括英文数字汉字验证码、干扰线验证码、算术验证码、点选验证码、拼图验证码、滑块验证码等。然而,随着技术的发展,针对传统验证码,市面上出现了一些打码平台,打码平台可以提供自动化打码接口,调用接口可以对验证码进行破解。
2、打码平台具有较成熟的破解方案来破解图像理解、点选、滑块等常规的验证码,验证码的破解难度低。此外,打码平台对常规验证码的破解成本较低,容易出现大规模打码。
技术实现思路
1、本公开提供了一种生成验证码图像的方法、装置、电子设备、存储介质以及计算机程序产品。
2、根据本公开的一方面,提供了一种生成验证码图像的方法,包括:在预定区域中生成n个控制点,n是大于等于1的整数;根据n个控制点,确定前景曲线;以及根据前景曲线和背景图像,确定验证码图像。
3、根据本公开的另一方面,提供了一种生成验证码图像的装置,包括:控制点生成模块、曲线确定模块以及验证码确定模块。控制点生成模块用于在预定区域中生成n个控制点,n是大于等于1的整数。曲线确定模块用于根据n个控制点,确定前景曲线。验证码确定模块用于根据前景曲线和背景图像,确定验证码图像。
4、根据本公开的另一个方面,提供了一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本公开提供的方法。
5、根据本公开的另一个方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行本公开提供的方法。
6、根据本公开的另一个方面,提供了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现本公开提供的方法。
7、应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
1.一种生成验证码图像的方法,包括:
2.根据权利要求1所述的方法,其中,所述根据所述前景曲线和背景图像,确定验证码图像包括:
3.根据权利要求2所述的方法,其中,所述确定所述初始验证码图像中光源的光源位置信息包括:
4.根据权利要求2所述的方法,其中,所述调整所述前景曲线的亮度包括:
5.根据权利要求2所述的方法,其中,所述生成针对所述前景曲线的阴影包括:
6.根据权利要求5所述的方法,其中,所述根据所述多个放射线和所述前景曲线的交点,生成针对所述前景曲线的阴影包括:针对所述多个放射线中的每个放射线,
7.根据权利要求1至6中任意一项所述的方法,其中,所述根据所述前景曲线和背景图像,确定验证码图像包括:
8.根据权利要求1至7中任意一项所述的方法,其中,所述在预定区域中生成n个控制点包括:
9.根据权利要求1至8中任意一项所述的方法,其中,所述根据所述n个控制点,确定前景曲线包括:
10.根据权利要求9所述的方法,其中,所述预定条件包括以下中的至少一个:
11.一种生成验证码图像的装置,包括:
12.根据权利要求11所述的装置,其中,所述验证码确定模块包括:
13.根据权利要求12所述的装置,其中,所述光源确定子模块包括:
14.根据权利要求12所述的装置,其中,所述执行子模块包括:
15.根据权利要求12所述的装置,其中,所述执行子模块包括:
16.根据权利要求15所述的装置,其中,所述阴影生成单元,包括:
17.根据权利要求11至16中任意一项所述的装置,其中,所述验证码确定模块包括:
18.根据权利要求11至17中任意一项所述的装置,其中,所述控制点生成模块包括:
19.根据权利要求11至18中任意一项所述的装置,其中,所述曲线确定模块包括:
20.根据权利要求19所述的装置,其中,所述预定条件包括以下中的至少一个:
21.一种电子设备,包括:
22.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1至10中任一项所述的方法。
23.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1至10中任一项所述的方法。