极验空间推理验证码的识别

本文介绍基于Python的视觉检测实现方式。需识别5种物体、5种颜色、2种尺寸和4个方位,用labelimg标记100张图片,yolo训练预设300轮,154轮提前终止。物体形状识别准确率超98%,测试200次通过率96.5%,部分因未获取验证码、颜色和位置识别错误失败。
部署运行你感兴趣的模型镜像

一、引言

1.1 声明

声明:
  本文章仅供学习交流使用,不提供完整代码,严禁用于商业用途和非法用途,否则由此产生的一切后果均与本人无关,请各位自觉遵守相关法律法规。
  本文章未经许可禁止转载,禁止任何二次修改(加工)后的传播;若有侵权,联系删除。

交流、合作请留言,24小时内回复!

1.2 简介

  
测试用例地址:aHR0cHM6Ly93d3cuZ2VldGVzdC5jb20vc2hvdw==
在这里插入图片描述

1.3 代办

  由于时间有限,本文目前只描述了思路和自己实际用到的部分代码,未完成所有内容的撰写,后续有时间再补充。

二、实现方式

验证码的请求和验证相关过程已在其他文章中涉及过,本文不再赘述,若有需要可查阅:
极验4代无感的js逆向分析
极验点选click3.1.0所对应fullpage.js的逆向分析

通过分析可知需要识别的信息如下:

5种物体:球、圆锥、圆柱体、正方体、多面体。
5种颜色:红色、蓝色、绿色、黄色、灰色。
2种尺寸:大、小。
4个方位:前、后、左、右。

描述语句有3种:

[尺寸] [颜色] [物体]
在 [尺寸] [颜色] [物体] [方位] 的 [尺寸] [颜色] [物体]
与 [尺寸] [颜色] [物体] 有相同 (大小/颜色/形状) 的 [尺寸] [颜色] [物体]

2.1 labelimg标记

只标注5种物体类别,不标记颜色、尺寸等。
由于物体类别较少,且每张图片中会有多次的标注,因此最终标记了100张图片进行训练。
在这里插入图片描述

2.2 yolo训练

预设了300轮训练,在104轮之后,模型效果就已经没有明显提升了,因此在154轮时 提前终止了训练。
在这里插入图片描述
在这里插入图片描述

2.3 识别

物体形状的识别 已经相对准确,准确率达到了98%+。
需要实现的是,找到 被 尺寸 方位 颜色 等属性 限定之后的最终物体。

下图为模型对物体形状的识别
在这里插入图片描述
自己实现对物体颜色和相对位置的识别
在这里插入图片描述

2.4 通过率96.5%

测试200次,通过193次。
失败的7次中,有5次未获取到验证码{'status': 'error', 'error': 'not proof', 'user_error': '网络不给力', 'error_code': 'error_21'},另2次分别是颜色和位置识别错误。
在这里插入图片描述

您可能感兴趣的与本文相关的镜像

Python3.9

Python3.9

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值