CN116432160A - 基于rpa和lbp特征的滑块验证码识别方法及系统 - Google Patents
基于rpa和lbp特征的滑块验证码识别方法及系统 Download PDFInfo
- Publication number
- CN116432160A CN116432160A CN202310311488.9A CN202310311488A CN116432160A CN 116432160 A CN116432160 A CN 116432160A CN 202310311488 A CN202310311488 A CN 202310311488A CN 116432160 A CN116432160 A CN 116432160A
- Authority
- CN
- China
- Prior art keywords
- lbp
- verification code
- slider
- rpa
- picture
- 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.)
- Pending
Links
- 238000012795 verification Methods 0.000 title claims abstract description 67
- 238000000034 method Methods 0.000 title claims abstract description 32
- 238000005336 cracking Methods 0.000 claims abstract description 12
- 238000010586 diagram Methods 0.000 claims description 17
- 238000004364 calculation method Methods 0.000 claims description 7
- 238000004801 process automation Methods 0.000 claims description 3
- 230000009286 beneficial effect Effects 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
- G06V10/467—Encoded features or binary features, e.g. local binary patterns [LBP]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及互联网技术领域,具体涉及基于RPA和LBP特征的滑块验证码识别方法及系统。方法包括:S1,利用RPA元素截图组件获取滑块缺口图片及背景图片;S2,基于LBP特征,计算滑块缺口在背景图片上的坐标位置;S3,将滑块复原到最左侧原始位置,根据滑块缺口在背景图片上的坐标位置,滑动X轴方向的坐标距离,破解滑块验证码。本发明具有能够高效的描述图像的纹理,不受图像的明暗影响,鲁棒性更高,计算量小,运算速度快,更加有利于部署的特点。
Description
技术领域
本发明涉及互联网技术领域,具体涉及基于RPA和LBP特征的滑块验证码识别方法及系统。
背景技术
随着互联网应用的发展与网页的广泛使用,为了避免被机器人或者爬虫访问数据,通常会使用验证码来进行人机验证。其中,滑块验证码因其交互性强、用户操作简单、破解难度高等原因,被广泛应用于网页与应用系统中。
随着RPA(Robotic process automation,机器人流程自动化)技术的广泛应用,可以协助企业员工去处理大量基于规则的、重复的工作流程任务。在这些场景中,需要自动识别滑块验证码。
现有的自动识别滑块验证码方法大致可以分为两类,一种是基于传统的色块识别或者模板匹配的方法。这类方法的整体思路是先获取滑块小图,然后通过颜色色块、边缘或者模板匹配的方式,在背景大图上寻找小图对应的区域,但是这种方法往往精度不高,易受背景干扰,因此使用场景受限。另一种使用神经网络的方法。这类方法检测滑块缺口轮廓,然后找到最优的目标作为最终结果。此类方法计算量较高,识别速度慢,且神经网络模型较大,不利于直接部署。神经网络训练是以数据为驱动,需要收集数据,人工标注,开发的成本较高,对于新的场景,泛化能力也不强。
因此,设计一种能够高效的描述图像的纹理,不受图像的明暗影响,鲁棒性更高,计算量小,运算速度快,更加有利于部署的基于RPA和LBP特征的滑块验证码识别方法及系统,就显得十分重要。
发明内容
本发明是为了克服现有技术中,现有的自动识别滑块验证码方法,存在精度不高,易受背景干扰,计算量高,识别速度慢以及不利于直接部署的问题,提供了一种能够高效的描述图像的纹理,不受图像的明暗影响,鲁棒性更高,计算量小,运算速度快,更加有利于部署的基于RPA和LBP特征的滑块验证码识别方法及系统。
为了达到上述发明目的,本发明采用以下技术方案:
基于RPA和LBP特征的滑块验证码识别方法,RPA表示机器人流程自动化,LBP表示局部二值模式,包括如下步骤;
S1,利用RPA元素截图组件获取滑块缺口图片及背景图片;
S2,基于LBP特征,计算滑块缺口在背景图片上的坐标位置;
S3,将滑块复原到最左侧原始位置,根据滑块缺口在背景图片上的坐标位置,滑动X轴方向的坐标距离,破解滑块验证码。
作为优选,步骤S1包括如下步骤:
S11,输入目标并选择网页上的验证码图片作为区域元素;
S12,当滑块未移动时,使用RPA元素截图组件对滑块验证码区域截图,获得背景图片;
S13,将滑块移动至最右侧,再次使用RPA元素截图组件进行截图,获得滑块移动到最右侧时的界面截图。
作为优选,步骤S1还包括如下步骤:
S14,将所述背景图片与滑块移动到最右侧时的界面截图的像素值进行相减,得到像素差值最大的区域并作为滑块缺口前后的位置区域;
S15,在所述背景图片上进行抠图,选择左侧的位置区域作为滑块区域,获得滑块缺口图的图像。
作为优选,步骤S2包括如下步骤:
S21,计算滑块缺口图图像的LBP特征,具体如下:
定义LBP算子为在3*3的窗口内,以窗口中心像素值为阈值,将相邻的8个像素的灰度值与中心像素值进行比较,若周围像素值大于中心像素值,则对应像素点的位置被标记为1,否则标记为0;3*3邻域内的8个点经比较产生8位二进制数,将8位二进制数转换为十进制数,即LBP码,最终得到对应窗口中心像素点的LBP值,并用所述LBP值来反映对应区域的纹理信息;
S22,裁剪掉所述背景图片最左侧的滑块区域,获得剩余区域图片并计算剩余区域图片的LBP特征。
作为优选,步骤S2还包括如下步骤:
S23,在所述剩余区域图片的LBP特征图上,使用滑动窗口进行滑动,并依次提取滑动窗口内的LBP特征图;
所述滑动窗口的大小与滑块缺口图的大小一致;
S24,计算所有提取的滑动窗口内的LBP特征图与滑块缺口图的LBP特征图的差值,选择差值最小的结果作为最终的滑块缺口位置。
作为优选,步骤S23中,以所述剩余区域图片左上角的顶点为原点,以水平方向为X轴,垂直方向为Y轴,建立坐标系。
作为优选,步骤S24中,所述差值的计算方式具体为:
本发明还提供了基于RPA和LBP特征的滑块验证码识别系统,包括;
图片获取模块,用于利用RPA元素截图组件获取滑块缺口及背景图片;
坐标计算模块,用于基于LBP特征,计算滑块缺口在背景图片上的坐标位置;
验证码破解模块,用于将滑块复原到最左侧原始位置,根据滑块缺口在背景图片上的坐标位置,滑动X轴方向的坐标距离,破解滑块验证码。
本发明与现有技术相比,有益效果是:(1)本发明使用RPA截图与图像差值计算的方法获取验证码滑块缺口小图与背景大图,解决部分使用场景中,验证码图片无法直接下载的问题;(2)本发明使用LBP特征作为图像的特征表示,能够更加有效的表示图像的纹理特征,不受颜色等因素干扰,鲁棒性强,效果稳定;(3)本发明方案计算量小,速度快,能够在配置较低的pc设备上运行,相比于神经网络模型方案更加容易部署和使用。
附图说明
图1为本发明中滑块未移动时界面截图的一种示意图;
图2为本发明中滑块移动到最右侧时界面截图的一种示意图;
图3为本发明中滑块缺口前后的位置区域的一种示意图;
图4为本发明中获取滑块缺口图图像的一种示意图;
图5为本发明中LBP计算原理的一种示意图;
图6为本发明中计算滑块缺口图的LBP特征的一种示意图;
图7为本发明中计算剩余区域图片的LBP特征的一种示意图;
图8为本发明中使用滑动窗口匹配最相似的滑块缺口图LBP特征的一种示意图;
图9为本发明实施例所提供的基于RPA和LBP特征的滑块验证码识别方法在实际应用中的一种流程图。
具体实施方式
为了更清楚地说明本发明实施例,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。
本发明提供了基于RPA和LBP特征的滑块验证码识别方法,包括如下步骤;
S1,利用RPA元素截图组件获取滑块缺口图片及背景图片;
S2,基于LBP特征,计算滑块缺口在背景图片上的坐标位置;
S3,将滑块复原到最左侧原始位置,根据滑块缺口在背景图片上的坐标位置,滑动X轴方向的坐标距离,破解滑块验证码。
步骤S1中,受限于部分应用的使用限制或者是部分网页的反扒技术,存在滑块验证码图片不能直接下载的情况,本发明使用RPA元素截图组件进行截图,再结合图片处理算法就能够解决此问题。
本发明方法选用的RPA元素截图组件,只需将元素截图组件拖拽至面板,就能够通过配置属性,实现对应功能。配置属性包括输入目标、保存路径、文件名和输出变量。RPA元素截图组件对指定元素进行截图后,就会把结果保存到设置的截图保存路径中。
具体的,步骤S1包括如下步骤:
S11,输入目标并选择网页上的需要进行滑块码验证的图片作为区域元素,使用RPA组件,RPA组件会自动检测元素块,选择验证码图像区域作为目标区域;
S12,当滑块未移动时,使用RPA元素截图组件对滑块验证码区域截图,获得背景图片,如图1所示,此时滑块的移动量为0;
S13,将滑块移动至最右侧(注意此时鼠标不能松开),再次使用RPA元素截图组件进行截图,获得滑块移动到最右侧时的界面截图,如图2所示,此时滑块的移动量约等于背景图片的宽度。
将滑块滑动至最右侧的目的是通过计算两张图片的像素变化区域,判断滑动前与滑动后的滑块位置。
S14,将图1与图2两张图片像素值相减,得到像素差值最大的区域并作为滑块缺口前后的位置区域,如图3所示。其中黑色区域代表2张图片的像素差值为0,白色区域代表2张图片像素有剧烈变化,像素变化的区域即为滑块滑动前后的区域;
S15,选择左侧的位置区域作为滑块区域,在图1上进行抠图,获得滑块缺口图的图像,如图4所示,扣出的图像即为滑块图像块。
具体的,步骤S2包括如下步骤:
S21,计算滑块缺口图图像的LBP特征,LBP特征的可视化效果如图6所示,从图中可以看出,LBP特征能充分显示图像块的纹理特征;
如图5所示,定义LBP算子为在3*3的窗口内,以窗口中心像素值为阈值,将相邻的8个像素的灰度值与中心像素值进行比较,若周围像素值大于中心像素值,则对应像素点的位置被标记为1,否则标记为0;3*3邻域内的8个点经比较产生8位二进制数,将8位二进制数转换为十进制数,即LBP码,共256种,最终得到对应窗口中心像素点的LBP值,并用所述LBP值来反映对应区域的纹理信息;。
LBP(Local Binary Pattern,局部二值模式)是一种用来描述图像局部特征的算子,LBP特征具有灰度不变性和旋转不变性等显著优点。
S22,裁剪掉图1最左侧的滑块区域,获得剩余区域图片并计算剩余区域图片的LBP特征,特征的可视化结果如图7所示。
S23,在所述剩余区域图片的LBP特征图上,使用滑动窗口(图8中的方框)进行滑动,并依次提取滑动窗口内的LBP特征图;
所述滑动窗口的大小与滑块缺口图的大小一致;
图8中,以所述剩余区域图片左上角的顶点为原点,以水平方向为X轴,垂直方向为Y轴,建立坐标系。
S24,计算所有提取的滑动窗口内的LBP特征图与滑块缺口图的LBP特征图的差值,选择差值最小的结果作为最终的滑块缺口位置(图8中位于中间位置的方框)。
所述差值的计算方式具体为:
得到了最佳滑块缺口位置后,将滑块复原到最左侧原始位置,再水平滑动x方向上的坐标距离,就能够破解验证码。
本发明还提供了基于RPA和LBP特征的滑块验证码识别系统,包括;
图片获取模块,用于利用RPA元素截图组件获取滑块缺口及背景图片;
坐标计算模块,用于基于LBP特征,计算滑块缺口在背景图片上的坐标位置;
验证码破解模块,用于将滑块复原到最左侧原始位置,根据滑块缺口在背景图片上的坐标位置,滑动X轴方向的坐标距离,破解滑块验证码。
图9是破解滑块验证码的具体流程图,本发明结合具体实施例提供了基于RPA和LBP特征的滑块验证码识别方法,包括以下步骤:
1.使用RPA软件,对滑块验证码区域进行截图,得到第一滑块验证码图片;
2.使用RPA软件,将滑块移动至最右侧,对滑块验证码区域再次进行截图,得到第二滑块验证码图片,注意此时鼠标不能松开;
3.将第一滑块验证码图片与第二滑块验证码图片做差值,两张图像差异部分就是滑块移动前和移动后的位置。选择左侧滑块移动前的位置,在第一滑块验证码图片上抠图,得到了滑块缺口小图图像;
4.计算步骤3中得到的滑块缺口小图的LBP特征,得到滑块缺口小图的LBP特征图;
5.对第一滑块验证码图片裁剪掉滑块移动前的滑块区域,得到第三滑块验证码图片,并计算第三滑块验证码图片的LBP特征图;
6.使用与滑块缺口小图尺寸一样的滑动窗口,在第三滑块验证码图片的LBP特征图上依次滑动,并计算窗口内特征图与滑块缺口小图的LBP特征图的差值,找到差值最小的特征区域;
7.由步骤6得到的区域,其x轴方向的坐标就是最终的移动距离d。将鼠标滑动到原始位置,向右移动d个像素长度,破解滑块验证码。
本发明的创新点如下:
1.本发明解决部分场景下,验证码图片无法下载的问题。本发明使用RPA软件进行元素截图,结合图像处理的方式获取滑块缺口小图和背景大图,所见即所得,无需通过下载的方式获取验证码图片。
2.本发明使用LBP特征,识别准确率高。本发明选择LBP特征作为特征的匹配方式,不仅计算量小,而且精度比一般的模板匹配方式更高,鲁棒性强;
3.本发明设计了完整的验证码解决方案,易于部署和使用。本发明整个方案计算量小,速度快,更容易在内网、低配置设备等场景中使用。
以上所述仅是对本发明的优选实施例及原理进行了详细说明,对本领域的普通技术人员而言,依据本发明提供的思想,在具体实施方式上会有改变之处,而这些改变也应视为本发明的保护范围。
Claims (8)
1.基于RPA和LBP特征的滑块验证码识别方法,RPA表示机器人流程自动化,LBP表示局部二值模式,其特征在于,包括如下步骤;
S1,利用RPA元素截图组件获取滑块缺口图片及背景图片;
S2,基于LBP特征,计算滑块缺口在背景图片上的坐标位置;
S3,将滑块复原到最左侧原始位置,根据滑块缺口在背景图片上的坐标位置,滑动X轴方向的坐标距离,破解滑块验证码。
2.根据权利要求1所述的基于RPA和LBP特征的滑块验证码识别方法,其特征在于,步骤S1包括如下步骤:
S11,输入目标并选择网页上的验证码图片作为区域元素;
S12,当滑块未移动时,使用RPA元素截图组件对滑块验证码区域截图,获得背景图片;
S13,将滑块移动至最右侧,再次使用RPA元素截图组件进行截图,获得滑块移动到最右侧时的界面截图。
3.根据权利要求2所述的基于RPA和LBP特征的滑块验证码识别方法,其特征在于,步骤S1还包括如下步骤:
S14,将所述背景图片与滑块移动到最右侧时的界面截图的像素值进行相减,得到像素差值最大的区域并作为滑块缺口前后的位置区域;
S15,在所述背景图片上进行抠图,选择左侧的位置区域作为滑块区域,获得滑块缺口图的图像。
4.根据权利要求3所述的基于RPA和LBP特征的滑块验证码识别方法,其特征在于,步骤S2包括如下步骤:
S21,计算滑块缺口图图像的LBP特征,具体如下:
定义LBP算子为在3*3的窗口内,以窗口中心像素值为阈值,将相邻的8个像素的灰度值与中心像素值进行比较,若周围像素值大于中心像素值,则对应像素点的位置被标记为1,否则标记为0;3*3邻域内的8个点经比较产生8位二进制数,将8位二进制数转换为十进制数,即LBP码,最终得到对应窗口中心像素点的LBP值,并用所述LBP值来反映对应区域的纹理信息;
S22,裁剪掉所述背景图片最左侧的滑块区域,获得剩余区域图片并计算剩余区域图片的LBP特征。
5.根据权利要求4所述的基于RPA和LBP特征的滑块验证码识别方法,其特征在于,步骤S2还包括如下步骤:
S23,在所述剩余区域图片的LBP特征图上,使用滑动窗口进行滑动,并依次提取滑动窗口内的LBP特征图;
所述滑动窗口的大小与滑块缺口图的大小一致;
S24,计算所有提取的滑动窗口内的LBP特征图与滑块缺口图的LBP特征图的差值,选择差值最小的结果作为最终的滑块缺口位置。
6.根据权利要求5所述的基于RPA和LBP特征的滑块验证码识别方法,其特征在于,步骤S23中,以所述剩余区域图片左上角的顶点为原点,以水平方向为X轴,垂直方向为Y轴,建立坐标系。
8.基于RPA和LBP特征的滑块验证码识别系统,用于实现权利要求1-7任一项所述的基于RPA和LBP特征的滑块验证码识别方法,其特征在于,所述基于RPA和LBP特征的滑块验证码识别系统包括;
图片获取模块,用于利用RPA元素截图组件获取滑块缺口及背景图片;
坐标计算模块,用于基于LBP特征,计算滑块缺口在背景图片上的坐标位置;
验证码破解模块,用于将滑块复原到最左侧原始位置,根据滑块缺口在背景图片上的坐标位置,滑动X轴方向的坐标距离,破解滑块验证码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310311488.9A CN116432160A (zh) | 2023-03-28 | 2023-03-28 | 基于rpa和lbp特征的滑块验证码识别方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310311488.9A CN116432160A (zh) | 2023-03-28 | 2023-03-28 | 基于rpa和lbp特征的滑块验证码识别方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116432160A true CN116432160A (zh) | 2023-07-14 |
Family
ID=87093679
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310311488.9A Pending CN116432160A (zh) | 2023-03-28 | 2023-03-28 | 基于rpa和lbp特征的滑块验证码识别方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116432160A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116758562A (zh) * | 2023-08-22 | 2023-09-15 | 杭州实在智能科技有限公司 | 通用文本验证码识别方法及系统 |
-
2023
- 2023-03-28 CN CN202310311488.9A patent/CN116432160A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116758562A (zh) * | 2023-08-22 | 2023-09-15 | 杭州实在智能科技有限公司 | 通用文本验证码识别方法及系统 |
CN116758562B (zh) * | 2023-08-22 | 2023-12-08 | 杭州实在智能科技有限公司 | 通用文本验证码识别方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111986178B (zh) | 产品缺陷检测方法、装置、电子设备和存储介质 | |
CN110517283B (zh) | 姿态跟踪方法、装置及计算机可读存储介质 | |
EP1791082B1 (en) | Feature extraction using pixel cues and object cues | |
CN109753953B (zh) | 图像中定位文本的方法、装置、电子设备和存储介质 | |
CN110008956B (zh) | 发票关键信息定位方法、装置、计算机设备及存储介质 | |
CN109002824B (zh) | 一种基于OpenCV的建筑图纸标签信息检测方法 | |
CN111008597A (zh) | Cad图纸的空间识别方法、装置、电子设备及存储介质 | |
CN111611643A (zh) | 户型矢量化数据获得方法、装置、电子设备及存储介质 | |
Gong et al. | Advanced image and video processing using MATLAB | |
CN104239909A (zh) | 一种图像的识别方法和装置 | |
CN105068918A (zh) | 一种页面测试方法及装置 | |
CN116432160A (zh) | 基于rpa和lbp特征的滑块验证码识别方法及系统 | |
CN113435452A (zh) | 一种基于改进ctpn算法的电气设备铭牌文本检测方法 | |
CN116152166A (zh) | 基于特征相关性的缺陷检测方法及相关装置 | |
CN111222355A (zh) | Pcb板上的条码定位方法及系统 | |
Turk et al. | Computer vision for mobile augmented reality | |
Abbas | Recovering homography from camera captured documents using convolutional neural networks | |
Zou et al. | Statistical analysis of signal-dependent noise: application in blind localization of image splicing forgery | |
Gu et al. | Dynamic image stitching for moving object | |
CN113284158B (zh) | 一种基于结构约束聚类的图像边缘提取方法及系统 | |
Shengze et al. | Research based on the HSV humanoid robot soccer image processing | |
Nivetha et al. | Video-object detection using background subtraction in spartan 3 fpga kit | |
CN111488882B (zh) | 一种用于工业零件测量的高精度图像语义分割方法 | |
CN113766147A (zh) | 视频中嵌入图像的方法、平面预测模型获取方法和装置 | |
Wang et al. | An efficient sky detection algorithm based on hybrid probability model |
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 |