CN116383797B - 一种无缺口滑动验证码及其生成方法 - Google Patents
一种无缺口滑动验证码及其生成方法 Download PDFInfo
- Publication number
- CN116383797B CN116383797B CN202310626610.1A CN202310626610A CN116383797B CN 116383797 B CN116383797 B CN 116383797B CN 202310626610 A CN202310626610 A CN 202310626610A CN 116383797 B CN116383797 B CN 116383797B
- Authority
- CN
- China
- Prior art keywords
- image
- verification code
- target object
- picture
- target
- 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
- 238000012795 verification Methods 0.000 title claims abstract description 98
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000001514 detection method Methods 0.000 claims abstract description 38
- 238000003709 image segmentation Methods 0.000 claims abstract description 17
- 230000008569 process Effects 0.000 claims abstract description 12
- 238000013136 deep learning model Methods 0.000 claims description 14
- 239000011159 matrix material Substances 0.000 claims description 10
- 230000008859 change Effects 0.000 claims description 2
- 241000981770 Buddleja asiatica Species 0.000 description 29
- 238000012549 training Methods 0.000 description 24
- 241000282472 Canis lupus familiaris Species 0.000 description 19
- 238000005516 engineering process Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 12
- 230000008439 repair process Effects 0.000 description 8
- 230000006399 behavior Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 238000005457 optimization Methods 0.000 description 4
- 238000002360 preparation method Methods 0.000 description 4
- 238000005336 cracking Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 241001465754 Metazoa Species 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000009792 diffusion process Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 241000282326 Felis catus Species 0.000 description 1
- 240000004282 Grewia occidentalis Species 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000019771 cognition Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/36—User authentication by graphic or iconic representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/0485—Scrolling or panning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10132—Ultrasound image
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种无缺口滑动验证码及其生成方法,包括如下步骤:S1.AI图片生成模块生成验证码的背景图;在生成过程中需要输入目标图片的语义描述,并且语义描述中包含希望生成的原始物体的名称;S2.AI目标检测模块检测生成的图片中目标物体所在位置;检测过程中需要提供目标物体的语义描述,AI目标检测模块输出目标物体的位置信息;S3.AI图像分割模块在目标物体所在边界框中,以像素级别分割出目标物体;S4.AI图像修补模块修补背景图;修复后的背景图没有缺口;S5.获得具有目标物体的滑块以及没有缺口的背景图后,将二者组合成为滑动验证码。本发明利用图像的语义信息来设计滑块,使得滑块与背景图像在视觉上无法区分,提高验证码安全性。
Description
技术领域
本发明涉及计算机及网络安全技术领域,尤其是涉及一种无缺口滑动验证码及其生成方法。
背景技术
验证码是人机交互界面中不可或缺的一环,是一种重要的网络安全技术,它能有效地验证用户的身份,防止恶意攻击和风险事件,广泛应用于网站和APP的各种场景,如注册、登录、交易、交互等,对于保护用户账户的安全起到了关键作用。然而,验证码也面临着破解威胁,他们利用各种技术手段进行快速大规模的破解,从而实施批量注册、批量登录、恶意盗取等违法行为。
验证码是一种用于区分人类和机器的技术。验证码的发展经历了几个阶段,从最初的图形验证码,到后来的行为验证码,再到现在的层出不穷的新型验证码,都是为了应对不断升级的破解技术而迭代升级的。
图形验证码是最早出现的一种验证码,它通过向用户展示一些经过扭曲、粘连等处理的字符图片,要求用户输入图片中的内容。图形验证码利用了人类和机器在视觉识别方面的差异,但随着计算机视觉技术的发展,图形验证码可以被OCR技术轻松识别,安全性大大降低。
行为验证码是在图形验证码的基础上增加了用户行为特征的采集和分析,例如滑动拼图、图片识别等。行为验证码通过对用户的滑动轨迹、点击事件等进行判断,区分是否机器操作。行为验证码相比图形验证码有更好的用户体验和安全性,但也面临着利用模拟真人行为数据进行自动化攻击的威胁。
为了应对这些问题,市面上也出现了各种新型验证码,如图文理解、语义理解、空间位置、逻辑推理等。由于这些新型验证的方法增加了用户的智能交互,大大增加了破解难度。但由于生成这些验证方式,一般需要人工的介入,所以生成这些验证方式的效率不高且成本也比较大。
现有技术中的滑块验证码为了让用户能够看清目标缺口,它的像素必须和周围的像素有一定的差别,但这样就很容易被识别出来,从而导致滑块的目标位置很容易被计算出来,这就大大降低了验证码的安全性,因此需要寻找一种能够能高效生产且安全性高的新型验证码生成方法。
发明内容
针对现有技术存在的问题,本发明的目的在于提供一种无缺口滑动验证码及其生成方法,利用图像的语义信息来设计滑块,使得滑块与背景图像在视觉上无法区分,但在语义上有一定的联系,可以有效防止利用图像处理技术来破解验证码。
为实现上述目的,本发明提供一种无缺口滑动验证码的生成方法,包括如下步骤:
S1. AI图片生成模块生成验证码的背景图;AI图片生成模块在生成过程中需要输入目标图片的语义描述,并且语义描述中包含希望生成的原始物体的名称,通过AI图片生成模块得到一张包含原始物体的图片;
S2.AI目标检测模块检测生成的图片中目标物体所在位置;目标物体为原始物体上具有语义关联的一部分;通过AI目标检测模块通过检测获得目标物体的位置;检测过程中需要提供目标物体的语义描述,AI目标检测模块输出目标物体的位置信息,位置信息为边界框的左上以及右下的坐标信息;
S3.AI图像分割模块在目标物体所在边界框中,以像素级别分割出目标物体;得到目标物体的具体像素位置,将背景的像素从边界框中去除;
S4.AI图像修补模块修补背景图;利用AI图像修补模块修补空白位置,将空白变成自然的背景,由此得到修复后的背景图,此时修复后的背景图没有缺口;
S5.获得具有目标物体的滑块以及没有缺口的背景图后,将二者组合成为滑动验证码。
进一步,步骤S1中,所述AI图片生成模块使用文本-图片生成深度学习模型实现根据文本描述生成对应图片,所述文本-图片生成深度学习模型的输入为文本,输出为图片RGB矩阵。
进一步,步骤S2中,所述AI目标检测模块通过检测定位深度学习模型实现根据文本检测文本描述的目标物体所在边界框位置。
进一步,步骤S3中,所述AI图像分割模块可以在图像中以像素级别分割出目标物体。
进一步,步骤S4中,所述AI图像修补模块可以在图像的指定区域对图像进行重新绘制,使重新绘制的图像和指定区域外的图像自然连接。
另一方面,本发明提供一种无缺口滑动验证码,所述验证码使用本发明的无缺口滑动验证码的生成方法获得。
进一步,所述验证码包括没有缺口的背景图和用于验证的滑块,其中背景图中包含原始物体,滑块中包含目标物体。
进一步,所述背景图中的原始物体具有缺失部分,所述目标物体是原始物体的缺失部分,目标物体与具有缺失部分的原始物体能够组合形成完整的原始物体。
进一步,原始物体和目标物体通过语义相关联;通过将滑块移动到背景图中拼接出完整的原始物体从而完成验证。
进一步,所述验证码融入了AI图片生成技术、AI目标检测技术、AI图像分割技术和AI图像修补技术,自动化生成无缺口滑动验证码。
本发明的滑动验证码可以有效提高网站的安全性和用户体验。常见的滑块验证码为了让用户能够看清目标缺口,它的像素必须和周围的像素有一定的差别,但这样就很容易被识别出来,从而导致滑块的目标位置很容易被计算出来,这就大大降低了验证码的安全性,而本发明的核心思想是利用图像的语义信息来设计滑块,使得滑块与背景图像在视觉上无法区分,但在语义上有一定的联系。用户需要根据图像的语义信息来判断滑块应该放置在哪个位置,而不是根据像素的差异。这样,就可以有效防止利用图像处理技术来破解验证码。
附图说明
图1示出了根据本发明实施例的无缺口滑动验证码生成方法流程图;
图2示出了根据本发明实施例的无缺口滑动验证码中背景图片的示意图;
图3示出了根据图2的背景图中对于目标物体的位置检测示意图;
图4示出了根据图3的位置检测图中分离的目标物体示意图;
图5示出了根据图1的背景图分割出目标物体后的示意图;
图6示出了根据本发明实施例修复后的背景图;
图7示出了根据本发明实施例生成的验证码图;
图8为验证成功的示意图。
实施方式
下面将结合附图,对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
以下结合图1-图8对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
本发明一种无缺口滑动验证码的生成方法的核心思想是利用图像的语义信息来设计滑块,使得滑块与背景图像在视觉上无法区分,但在语义上有一定的联系。用户需要根据图像的语义信息来判断滑块应该放置在哪个位置,而不是根据像素的差异。
该方法结合了AI图片生成技术、AI目标检测技术、AI图像分割技术、AI图像修补技术来高效自动化生产一种具备语义并且更安全的滑动验证码。本发明生成的验证码包含两个部分,一个滑块以及一个背景图片,与传统的滑动验证码不同的地方在于,滑块是包含具体语义的,例如本实施例中,滑块是一条狗的尾巴,而背景图中有一只缺失尾巴的狗,用户需要根据图像的语义信息来判断将“狗尾巴”滑块正确滑动到狗缺失尾巴的位置。
如图1所示,根据本发明的一种无缺口滑动验证码的生成方法,包括如下步骤:
S1.利用AI图片生成模块生成验证码的背景图,模块生成过程中需要输入目标图片的文本描述,并且文本描述中包含希望生成的原始物体的名称,比如文本描述为“一只狗”,这样通过AI图片生成模块便能得到一张包含狗的图片。其中AI图片生成模块中使用可以通过描述文本生成描述相符的图片的文本-图片生成深度学习模型。其主要实现原理是将文本描述输入模型,并通过神经网络框架来生成与文本描述相符的图像。文本-图片生成深度学习模型的实现流程如下:
S11. 构建模型:选择适合文本-图片生成的模型架构,并进行相应的配置。
S12. 数据准备:准备文本描述数据以及与这些文本描述相符的图像数据,并记录图像的长宽信息。
S13. 模型训练:将文本描述数据以及对应图像的长宽信息作为模型的输入,将对应图像的RGB矩阵作为输出,然后训练模型,模型会根据输入输出学习如何从文本描述中提取相关特征,并将这些特征映射到相应的图像中,最后生成得到文本描述以及长宽相符的图像RGB矩阵。训练完成后,便可以使用该模型进行文本到图片的生成的任务。
S14. 模型应用:将描述文本以及需要生成的图像的长宽信息输入模型,然后模型输出与描述文本以及长宽相符的图像RGB矩阵,最后得到相应的图片。
S2.利用AI目标检测模块检测生成的图片中目标物体所在位置。目标物体为原始物体上具有语义关联的一部分。由于AI生成图片的随机性,无法得知目标物体在图片中的具***置,因此需要通过AI目标检测模块通过检测获得目标物体的位置。检测过程中需要提供目标物体的语义描述,描述由人工进行提供,对于本实施例来说,为了生成有语义的滑块,目标物体是图片中原始物体的一部分,比如原始物体是一只狗,目标物体可以是狗的尾巴,因此语义描述设置为“尾巴”,这样AI目标检测模块便能输出狗尾巴的位置信息,位置信息以边界框的xyxy格式展现,即边界框的左上以及右下的坐标信息。目标检测模块中使用从图像或视频中检测和定位特定物体的检测定位深度学习模型。其主要实现原理是将图像以及目标文本描述输入模型,并通过神经网络框架来预测图像中存在的目标物体的位置。检测定位深度学习模型的实现流程如下:
S21. 模型构建:选择适合目标检测任务的模型架构,并进行相应的配置。在本发明中选择的模型优选为Grounding DINO。
S22. 数据准备:首先需要准备用于训练的图像-目标文本描述的配对数据集,并对每个图像提供对应的边界框,格式为xyxy,分别为边界框的左上以及右下的坐标信息。
S23. 模型训练:将图像-目标文本描述的数据作为模型的输入,边界框作为输出,然后训练模型,模型会根据输入输出学习如何从图像-目标文本描述 提取相关特征并预测目标物体的边界框。训练完成后,便可以使用该模型对新进来的图像-目标文本描述配对数据做目标检测。
S24. 模型应用:输入待检测的图像-目标文本描述数据到训练后的模型中,模型会输出检测到的目标物体的边界框信息。
S3.利用AI图像分割模块在目标物体所在边界框中,以像素级别分割出目标物体。由于在第2步中得到的目标物***置是一个边界框,对于不规则形状的目标物体来说,需要得到目标物体的具体像素位置,将背景的像素从边界框中去除,因此需要利用AI图像分割技术以像素级别将目标物体从边界框中分割出来。AI图像分割模块中使用从图像或视频中检测分割特定物体的图像分割深度学习模型。其主要实现原理是将图像以及目标所在边界框输入模型,并通过神经网络框架来预测分类图像中像素,将存在目标的像素找到,从而分割出目标物体。图像分割深度学习模型的实现流程如下:
S31. 构建模型:选择适合图像分割任务的模型架构,并进行相应的配置。
S32. 数据准备:准备用于训练的图像-边界框的配对数据集,并对每个图像提供对应的分割标签。分割标签通常以像素级别的标注形式存在,即为每个像素分配一个类别或实例标签,在本发明中标签为属于该分割的物体的像素和不属于分割的物体的像素。
S33. 模型训练:将图像-边界框的数据作为模型的输入,像素的标签作为输出,然后训练模型。模型会根据输入输出学习如何从图像-边界框进行预测图像每个像素的标签,即学习到哪些属于该分割的物体的像素,哪些不属于该分割的物体的像素。训练完成后,便可以使用该模型对新进来的图像-边界框数据做图像分割。
S34. 模型应用:将待分割的图像-边界框数据输入模型,模型输出图像每一个像素点所属的标签,从像素的标签分析,将属于目标物体的像素筛选出来,便可以从图像中分割得到目标物体。
S4.利用AI图像修补模块修补背景图。由于步骤S3中将目标物体从背景图中分割出来后,背景图中目标物***置会产生不自然的空白,这就会使得攻击者很容易发现正确的滑块位置,因此为了使得背景图更加自然难以被机器识别,本发明利用AI图像修补模块修补空白位置,将不自然的空白变成自然的背景,由此得到修复后的背景图,此时修复后的背景图没有缺口。本实施例中生成的背景图则是包含一只缺少尾巴的狗,对应的滑块是狗的尾巴。真实用户能够基于对图中物体的认知识别出缺少的目标物体以及目标物体在背景图中对应的位置,但是攻击者是无法通过技术手段识别的,由此提高验证码的安全性。AI图像修补模块中使用在图像的指定区域对图像进行重新绘制的图像修补深度学习模型。其主要实现原理是将图像以及指定的区域位置信息输入模型,并通过神经网络框架来预测图像的指定区域的像素RGB值,从而修补图像指定区域的图像。AI图像修补模块中图像修补模型的的实现流程如下:
S41. 构建模型:选择适合图像修补任务的模型架构,并进行相应的配置。
S42. 数据准备:准备一些原始图像,然后遮挡原始图像的部分位置,记录遮挡区域的位置信息,遮挡区域位置信息表示为一个与原始图片长宽相同的矩阵,遮挡区域的矩阵位置的值为0,非遮挡区域的矩阵位置的值为1,然后得到遮挡后图像-遮挡区域位置信息的配对数据。
S43. 模型训练:将遮挡后图像-遮挡区域位置信息的配对数据作为模型的输入,被遮挡位置的每个像素的RGB值作为输出,然后训练模型,模型会根据输入输出学习如何从遮挡后图像-遮挡区域位置信息的数据预测图像被遮挡的区域(即待修补的区域)的像素RGB值。训练完成后,便可以使用该模型对待修补的图像进行修补。
S44. 模型应用:将待修补图像-修补区域位置信息数据输入模型,模型输出待修补位置每一个像素点的RGB值,然后便可以在指定区域修补图像。
S5.获得具有目标物体的不规则形状滑块以及没有缺口的背景图后,将二者组合成为滑动验证码。
具体地,在本发明的一个具体实施例中,包括以下流程:
步骤S1中选择Stable Diffusion模型作为文本-图片生成模型,并配置模型的训练参数,包括学习率、优化算法、损失函数等。然后准备大量狗的图片,并将文本“一只狗”以及对应长度和宽度作为Stable Diffusion模型的输入,狗的图片的RGB矩阵作为输出,训练Stable Diffusion模型。训练完成后,在AI图片生成模块中输入关键字“一只狗”、长度400像素以及宽度800像素, AI图片生成模块产出如图2所示的一张包含狗的长宽为400*800的图片。
步骤S2中选择Grounding DINO模型作为目标检测模型,并配置模型的训练参数,包括学习率、优化算法、损失函数等。然后准备大量有狗尾巴的图片,并用边界框表示狗尾巴的位置。将文本“狗尾巴”以及对应图片作为模型的输入,对应图片的边界框作为输出,训练模型。训练完成后,在AI目标检测模型中输入“狗尾巴”检测生成的图片中的“狗尾巴”所在位置。目标检测模型输出狗尾巴的位置信息,位置信息一般以边界框的xyxy格式展现,即边界框的左上以及右下的坐标信息。为了便于理解,如图3所示,在图中画出边界框位置来表示。
步骤S3中选择Segment Anything模型作为图像分割模型,并配置模型的训练参数,包括学习率、优化算法、损失函数等。然后准备大量有狗尾巴的图片,用边界框表示相应图片的狗尾巴,并标注图像像素标签,用标签1表示狗尾巴的像素,标签0表示非狗尾巴的像素。将包含狗尾巴图片以及对应图片的边界框作为模型的输入,对应图片的每个像素标签作为输出,训练模型。训练完成后,将检测到的狗尾巴的边界框以及对应图像作为输入,利用AI图像分割模型在狗尾巴所在边界框中,找到包含狗尾巴的像素,以像素级别分割出如图4所示的狗尾巴的图和如图5所示的被分割后的背景图。
步骤S4中选择Stable Diffusion Inpainting模型作为目标检测模型,并配置模型的训练参数,包括学习率、优化算法、损失函数等。然后准备大量内容任意的图片,对每个图片随机设定图片被遮挡区域,并记录遮挡区域位置信息,位置信息表示为一个与原始图片长宽相同的矩阵,遮挡区域的值为0,非遮挡区域的值为1。将被遮挡后的图片以及对应图片的遮挡区域位置信息作为模型的输入,原始图片被遮挡区域的像素RGB值作为输出,训练模型。训练完成后,将分割狗尾巴的像素位置信息以及分割后的图像作为输入,利用AI图像修补模型修补分割狗尾巴后的背景图,获得没有缺口的背景图。修补后效果如图6所示;
步骤S5中得到狗尾巴的滑块以及修补后的背景图,将二者组合得到一套滑动验证码。如图7所示,当狗尾巴滑块滑动到狗缺失尾巴的部分时,代表验证成功,否则失败。
本发明结合了AI图片生成技术、AI目标检测技术、AI图像分割技术、AI图像修补技术来生成验证码。由于融入了AI技术,可以通过描述文本生成相应的图片,然后从生成图片中检测并提取目标物体作为滑块,并修补缺失目标物体后的图片作为背景图片,整个流程除了描述文本输入需要人工参与,其它流程是全自动化的,因此可以自动化生成高质量的无缺口滑动验证码,提高验证码的生产效率,为企业源源不断地提供新的验证码。
本发明还提供了一种无缺口滑动验证码,所述验证码包括没有缺口的背景图和用于验证的滑块,其中背景图中包含原始物体,所述原始物体具有缺失部分,滑块中包含目标物体,所述目标物体是原始物体的缺失部分,原始物体和目标物体通过语义相关联,目标物体与具有缺失部分的原始物体能够组合形成完整的原始物体,通过将滑块移动到背景图中拼接出完整的原始物体从而完成验证。
本实施例中,所述背景图的实现方式如下:
在AI图片生成模块中输入原始物体的关键字“一只狗”、希望生成的图片长度400以及宽度800, AI图片生成模块产出如图2所示的一张包含原始物体为狗的长宽为400*800的背景图。选取原始物体的一部分,例如狗尾巴,在AI目标检测模型中输入“狗尾巴”;检测生成的图片中的目标物体“狗尾巴”所在位置。目标检测模型输出狗尾巴的位置信息,位置信息以边界框的四角坐标格式展现,即边界框的左上以及右下的坐标信息。如图3所示,生成的滑块位置在图中画出边界框位置来表示。
利用AI图像分割模型在目标物体所在边界框中,以像素级别分割出如图4所示的目标物体狗尾巴的图和如图5所示的被分割后的背景图。利用AI图像修补模型修补分割狗尾巴后的背景图,使得修补后的背景图中,原始物体在目标物体所在位置被修补得没有缺口。修补后效果如图6所示。
包括目标物体狗尾巴的滑块以及修补后的背景图进行组合得到一套滑动验证码,如图7所示。当具有目标物体狗尾巴的滑块滑动到背景图中狗尾巴缺失的部分时,验证成功,否则验证失败。验证成功的示意图,如图8所示,由于用户基于对原始物体的认知很容易能找出目标物体相对于原始物体的对应位置;因此真实用户在背景图上没有预留缺口的情况下也能够顺利完成验证,但是由于没有缺口使得机器识别无法完成验证,有效提高了滑动验证码的安全性。
本发明的滑动验证码可以有效提高网站的安全性和用户体验。常见的滑块验证码为了让用户能够看清目标缺口,它的像素必须和周围的像素有一定的差别,但这样就很容易被识别出来,从而导致滑块的目标位置很容易被计算出来,这就大大降低了验证码的安全性,而本发明的核心思想是利用图像的语义信息来设计滑块,使得滑块与背景图像在视觉上无法区分,但在语义上有一定的联系。例如,可以使用一张动物的图片作为背景,然后从图片中截取一个动物的部分作为滑块,如猫的眼睛、狗的耳朵等。用户需要根据图像的语义信息来判断滑块应该放置在哪个位置,而不是根据像素的差异。这样,就可以有效防止产利用图像处理技术来破解验证码。
本发明流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为表示包括一个或多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,可以实现在任何计算机刻度介质中,以供指令执行***、装置或设备,所述计算机可读介质可以是任何包含存储、通信、传播或传输程序以供执行***、装置或设备使用。包括只读存储器、磁盘或光盘等。
在本说明书的描述中,参考术语“实施例”、“示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。此外,本领域的技术人员可以在不产生矛盾的情况下,将本说明书中描述的不同实施例或示例以及其中的特征进行结合或组合。
上述内容虽然已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型等更新操作。
Claims (10)
1.一种无缺口滑动验证码的生成方法,其特征在于,包括如下步骤:
S1. AI图片生成模块生成验证码的背景图;AI图片生成模块在生成过程中需要输入目标图片的语义描述,并且语义描述中包含希望生成的原始物体的名称,通过AI图片生成模块得到一张包含原始物体的图片;
S2.AI目标检测模块检测生成的图片中目标物体所在位置;目标物体为原始物体上具有语义关联的一部分;通过AI目标检测模块通过检测获得目标物体的位置;检测过程中需要提供目标物体的语义描述,AI目标检测模块输出目标物体的位置信息,位置信息为边界框的左上以及右下的坐标信息;
S3.AI图像分割模块在目标物体所在边界框中,以像素级别分割出目标物体;得到目标物体的具体像素位置,将背景的像素从边界框中去除;
S4.AI图像修补模块修补背景图;利用AI图像修补模块修补空白位置,将空白变成自然的背景,由此得到修复后的背景图,此时修复后的背景图没有缺口;
S5.获得具有目标物体的滑块以及没有缺口的背景图后,将二者组合成为滑动验证码。
2.根据权利要求1所述的一种无缺口滑动验证码的生成方法,其特征在于,步骤S1中,所述AI图片生成模块使用文本-图片生成深度学习模型实现根据文本描述生成对应图片,所述文本-图片生成深度学习模型的输入为文本,输出为图片RGB矩阵。
3.根据权利要求1所述的一种无缺口滑动验证码的生成方法,其特征在于,步骤S2中,所述AI目标检测模块通过检测定位深度学习模型实现根据文本检测文本描述的目标物体所在边界框位置。
4.根据权利要求1所述的一种无缺口滑动验证码的生成方法,其特征在于,步骤S3中,所述AI图像分割模块可以在图像中以像素级别分割出目标物体。
5.根据权利要求1所述的一种无缺口滑动验证码的生成方法,其特征在于,步骤S4中,所述AI图像修补模块可以在图像的指定区域对图像进行重新绘制,使重新绘制的图像和指定区域外的图像自然连接。
6.一种无缺口滑动验证码,其特征在于,所述验证码使用权利要求1-5任一项所述的无缺口滑动验证码的生成方法获得。
7.根据权利要求6所述的一种无缺口滑动验证码,其特征在于,所述验证码包括没有缺口的背景图和用于验证的滑块,其中背景图中包含原始物体,滑块中包含目标物体。
8.根据权利要求7所述的一种无缺口滑动验证码,其特征在于,所述背景图中的原始物体具有缺失部分,所述目标物体是原始物体的缺失部分,目标物体与具有缺失部分的原始物体能够组合形成完整的原始物体。
9.根据权利要求8所述的一种无缺口滑动验证码,其特征在于,原始物体和目标物体通过语义相关联;通过将滑块移动到背景图中拼接出完整的原始物体从而完成验证。
10.根据权利要求9所述的一种无缺口滑动验证码,其特征在于,所述验证码融入了AI图片生成技术、AI目标检测技术、AI图像分割技术和AI图像修补技术,自动化生成无缺口滑动验证码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310626610.1A CN116383797B (zh) | 2023-05-31 | 2023-05-31 | 一种无缺口滑动验证码及其生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310626610.1A CN116383797B (zh) | 2023-05-31 | 2023-05-31 | 一种无缺口滑动验证码及其生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116383797A CN116383797A (zh) | 2023-07-04 |
CN116383797B true CN116383797B (zh) | 2023-08-22 |
Family
ID=86979041
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310626610.1A Active CN116383797B (zh) | 2023-05-31 | 2023-05-31 | 一种无缺口滑动验证码及其生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116383797B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117724823A (zh) * | 2024-02-07 | 2024-03-19 | 之江实验室 | 基于声明式语义的多模型工作流描述的任务执行方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160093293A (ko) * | 2015-01-29 | 2016-08-08 | 한국전자통신연구원 | 영상에서 장면 단위 컨텍스트 정보를 이용한 객체 검출 장치 및 방법 |
CN107609389A (zh) * | 2017-08-24 | 2018-01-19 | 南京理工大学 | 一种基于图像内容相关性的验证方法及*** |
CN114612767A (zh) * | 2022-03-11 | 2022-06-10 | 电子科技大学 | 一种基于场景图的图像理解与表达方法、***与存储介质 |
CN115861715A (zh) * | 2023-02-15 | 2023-03-28 | 创意信息技术股份有限公司 | 基于知识表示增强的图像目标关系识别算法 |
-
2023
- 2023-05-31 CN CN202310626610.1A patent/CN116383797B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160093293A (ko) * | 2015-01-29 | 2016-08-08 | 한국전자통신연구원 | 영상에서 장면 단위 컨텍스트 정보를 이용한 객체 검출 장치 및 방법 |
CN107609389A (zh) * | 2017-08-24 | 2018-01-19 | 南京理工大学 | 一种基于图像内容相关性的验证方法及*** |
CN114612767A (zh) * | 2022-03-11 | 2022-06-10 | 电子科技大学 | 一种基于场景图的图像理解与表达方法、***与存储介质 |
CN115861715A (zh) * | 2023-02-15 | 2023-03-28 | 创意信息技术股份有限公司 | 基于知识表示增强的图像目标关系识别算法 |
Also Published As
Publication number | Publication date |
---|---|
CN116383797A (zh) | 2023-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102220174B1 (ko) | 머신러닝 학습 데이터 증강장치 및 증강방법 | |
CN108629168A (zh) | 脸部验证方法、设备以及计算设备 | |
CN104838420B (zh) | 基于图像内容进行图像旋转以修正图像取向 | |
CN108229575A (zh) | 用于检测目标的方法和装置 | |
CN111460962A (zh) | 一种口罩人脸识别方法及*** | |
CN110728209A (zh) | 一种姿态识别方法、装置、电子设备及存储介质 | |
CN116383797B (zh) | 一种无缺口滑动验证码及其生成方法 | |
CN106529380A (zh) | 图像的识别方法及装置 | |
EP4088203A1 (en) | Authenticity assessment of modified content | |
CN112749696B (zh) | 一种文本检测方法及装置 | |
CN115115740A (zh) | 思维导图识别方法、装置、设备、介质及程序产品 | |
CN113989814A (zh) | 图像生成方法、装置、计算机设备及存储介质 | |
CN116451207A (zh) | 一种多要素语义验证码及其生成方法 | |
CN108268778A (zh) | 数据处理方法、装置及存储介质 | |
JP6892844B2 (ja) | 情報処理装置、情報処理方法、透かし検出装置、透かし検出方法、及びプログラム | |
CN116721320A (zh) | 基于多尺度特征融合的通用图像篡改取证方法及*** | |
CN111125672A (zh) | 一种图像验证码的生成方法及装置 | |
CN112749686B (zh) | 图像检测方法、装置、计算机设备及存储介质 | |
CN113190310B (zh) | 基于随机位置对象语义识别的验证码设计方法 | |
CN115082992A (zh) | 人脸活体检测方法、装置、电子设备及可读存储介质 | |
KR102282373B1 (ko) | Mms의 데이터 수집 위치에 따른 영상정보 변화 확인 기능의 구간별 위치검증 시스템 | |
CN111401484A (zh) | 一种基于目标检测方法的验证码识别方法及*** | |
CN112087661A (zh) | 视频集锦生成方法、装置、设备及存储介质 | |
CN113807162B (zh) | 基于深度学习的社交网络图像隐私保护方法及*** | |
CN116665295B (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 |