【技术实现步骤摘要】
一种滑块验证码的滑块缺口定位及拖动轨迹生成方法
本专利技术涉及互联网
,特别是一种滑块验证码的滑块缺口定位及拖动轨迹生成方法。
技术介绍
验证码是一种图灵测试,用于判断操作对象是否是人类。在软件测试领域,测试人员使用软件对网站进行自动化测试、信息快速发布以及自动化交易,验证码的自动化识别有助于提升测试效率和测试覆盖率,减少人工测试环节,从而避免人为操作错误。滑块验证码是图灵测试的一种具体实现形式,其实现类型叫动态感知游戏(DynamicCognitiveGame)。目前,行业内均在研究具有完整端到端的滑块验证码自动识别技术,该技术包括系统架构层面和算法层面的研究。在算法层面包括滑块位移的计算和滑块拖动轨迹生成,其中:滑块位移的计算环节,通常采用如下方法:获取无滑块缺口的背景图片,以及有滑块缺口的背景图片,通过2张图片计算差值得到滑块缺口位置,进而计算位移距离。这种方式成功的前提是可以获得滑块背景无缺口和有缺口的图片,因此使用场景受到限制。还有一些方法采用图像处理技术,试图通过纹理、像素值、形状来去除背景和定位缺口,不过这类方法依赖于每一个滑块验证码供应商所采用滑块图片的特定特征,位移计算准确度和通用性不足,影响识别通过率。滑块拖动轨迹生成环节,通常的做法有3种:①在以直线均速拖动滑块的轨迹中,加入少量随机像素偏移以及时间延时,形成一定随机性;②根据固定的函数模型,比如tanh函数,生成滑动轨迹,在此基础上加入延时和随机像素位移;③通过线下录制真实用户的滑块拖动轨迹,形成数据库,这样当已知特定位移 ...
【技术保护点】
1.一种滑块验证码的滑块缺口定位及拖动轨迹生成方法,其特征在于,包括线下模型训练和线上模型服务两部分,其中:/n所述线下模型训练包括:/n滑块缺口位置定位建模与线下模型训练:构建基于深度学习的目标检测模型,根据滑块缺口背景图片计算滑块缺口中心位置坐标,并标注矩形标注框,进行有监督的目标检测模型训练;/n滑块拖动轨迹建模与线下模型训练:根据真人滑块拖动轨迹,建立LSTM前端模型,以及适应非均匀采样输入时序和可变长时序数据的LSTM后端回归模型,对建立的LSTM前端模型、LSTM后端回归模型进行训练;/n所述线上模型服务包括以下步骤:/n对屏幕进行截图,处理截图得到含有滑块图片和滑块缺口背景图片;/n以滑块缺口背景图片为输入,执行已训练好的目标检测模型,得到滑块缺口中心位置坐标;结合滑块初始位置,计算得到滑块位移距离;/n执行已训练好的LSTM前端模型,以及LSTM后端回归模型,得到滑块拖动轨迹时间序列即鼠标移动轨迹序列。/n
【技术特征摘要】
1.一种滑块验证码的滑块缺口定位及拖动轨迹生成方法,其特征在于,包括线下模型训练和线上模型服务两部分,其中:
所述线下模型训练包括:
滑块缺口位置定位建模与线下模型训练:构建基于深度学习的目标检测模型,根据滑块缺口背景图片计算滑块缺口中心位置坐标,并标注矩形标注框,进行有监督的目标检测模型训练;
滑块拖动轨迹建模与线下模型训练:根据真人滑块拖动轨迹,建立LSTM前端模型,以及适应非均匀采样输入时序和可变长时序数据的LSTM后端回归模型,对建立的LSTM前端模型、LSTM后端回归模型进行训练;
所述线上模型服务包括以下步骤:
对屏幕进行截图,处理截图得到含有滑块图片和滑块缺口背景图片;
以滑块缺口背景图片为输入,执行已训练好的目标检测模型,得到滑块缺口中心位置坐标;结合滑块初始位置,计算得到滑块位移距离;
执行已训练好的LSTM前端模型,以及LSTM后端回归模型,得到滑块拖动轨迹时间序列即鼠标移动轨迹序列。
2.根据权利要求1所述的滑块验证码的滑块缺口定位及拖动轨迹生成方法,其特征在于,所述滑块缺口位置定位建模与线下模型训练,具体如下:
构建基于深度学习的目标检测模型,截取滑块缺口背景图片分别进行通用性图像处理和针对性图像处理;通用性图像处理包括缩放图片至固定大小、像素值均衡化操作,通用性图像处理结果用于深度学习目标检测模型的输入;针对性图像处理用于有监督学习的数据自动标注,根据针对性图像处理结果,计算滑块缺口中心位置坐标,并自动识别和标注矩形框,即为目标检测模型提供有监督的标签,从而进行无需人工数据标注的有监督的目标检测模型训练;最终,训练完成的目标检测模型用于输出滑块缺口位置的定位矩形框坐标,以及矩形框的中心坐标即滑块缺口中心位置坐标。
3.根据权利要求1所述的滑块验证码的滑块缺口定位及拖动轨迹生成方法,其特征在于,所述滑块拖动轨迹建模与线下模型训练,具体如下:
录取真人滑块拖动轨迹,并对滑块轨迹进行预处理:从录制的滑块轨迹中提取滑块点击、拖动和释放过程,并将数据格式转化为csv文本文件;将滑块移动绝对坐标转换成滑块移动相对坐标,第一个点的坐标为(0,0);将时间采样由系统绝对时钟周期转换成毫秒,第一个点的采样时间点为0毫秒;统计数据集滑块位移最大值和耗时最大值,并进行数据归一化;
建立LSTM前端模型,学习滑块轨迹总位移与轨迹总耗时的关联关系特征,以及滑块轨迹的不均匀时间采样序列特征;
建立改进的LSTM后端回归模型,以适应非均匀采样输入时序和可变长时序数据;
对建立的LSTM前端模型、LSTM后端回归模型进行训练,用于生成滑块拖动轨迹时间序列。
4.根据权利要求2所述的滑块验证码的滑块缺口定位及拖动轨迹生成方法,其特征在于,所述截取滑块缺口背景图片分别进行通用性图像处理和针对性图像处理,其中:
所述通用性图像处理,包括对滑块缺口背景图片进行单色灰度图转换、直方图均衡处理,并进行归一化使图像像素在[0,1]区间内;
所述针对性图像处理,包括对滑块缺口背景图片进行单色灰度图转换、ROI限制、二值化处理,采用一阶图像梯度计算,然后利用边缘白色连续像素点连续性、以及该白色连续像素点坐标位置的统计中位数计算,得到滑块缺口中心位置坐标,进而在滑块缺口位置标注矩形标注框,即为目标检测模型提供有监督的标签。
5.根据权利要求2所述的滑块验证码的滑块缺口定位及拖动轨迹生成方法,其特征在于,所述根据针对性图像处理结果,计算滑块缺口中心位置坐标,具体如下:
(1)滑块图片特征使用RGBA的A信道,对该信道进行二值化得到滑块覆盖的像素点位,剔除其他像素得到滑块模板;
(2)将滑块缺口背景图片转换成int16格式,然后对水平和垂直方向分别进行差分计算,将负值赋值为0,然后将水平和垂直计算结果按照原图像大小叠加,得到滑块缺口特征图,进一步计算边缘连续像素的位置得到一个缺口中心位置(C_x1,C_y1);求图片的转移矩阵,再次进行上述计算得到缺口中心位置(C_x2,C_y2);
(3)在缺口特征图上匹配滑块模板,取匹配度最高的位置,得到另一个缺口中心位置(C_x0,C_y0);
(4)将以上2种途径计算所得的缺口位置和缺口大小进行组合,得到最终的滑块缺口中心位置坐标,具体计算方法为:
a)将缺口中心坐标设置为匹配模板计算的坐标输出(...
【专利技术属性】
技术研发人员:王元,
申请(专利权)人:苏宁金融科技南京有限公司,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。