Python 利用深度学习识别空间推理验证码(一)

本文详述如何利用深度学习解决空间推理验证码问题,包括拆分问题、目标检测、物体属性分析和问题理解。使用yolov5进行目标检测,通过PaddleClas进行多标签分类,结合jieba进行逻辑解析,最终实现95%的准确率。

注意:本文会比较长,因为空间推理验证码本身比较复杂,我会详细的讲解,我是如何一步一步拆分空间推理的思想去实现的,另外,这里只介绍第一种思想来解决空间推理验证码,实际上,解决该验证码的方法也比较多,这第一种,我会讲解的比较简单,通俗易懂。
注意:下面数据集使用的是我上一篇博客生成的Python 自动生成空间推理验证码

首先来看一下,我们需要解决的问题

在这里插入图片描述

请点击在大号球右侧的绿色物体。
请点击在大型红色物品右边的大型绿色物体。
请点击小号黄色物品。
请点击大体积蓝色物品。
请点击圆柱体。
在这里插入图片描述

请点击与球有相同颜色的物体。
请点击与大型方块有相同颜色的小号物体。
请点击与大体积球体有相同颜色的物品。
请点击在大体积绿色圆锥左边的绿色圆锥。
请点击在球体右边的绿色圆锥。

拆分问题

其实拆分问题是最为关键的部分,只要把问题拆分的够细致,每一步都有对应的解决方法,顺理成章的到最后也就解决问题了,当然,每一步都可能有不同的实现方法,具体取舍看自己就行,所以这里先介绍第一种拆分方法。

拆分图片

图片仅仅分为两个部分,背景和物体,背景不用说了,无关紧要,重要的是物体,主要推断的是物体的属性,从问题以及图片的结合来看,物体的属性包含以下部分(颜色、形状、材质、尺寸、位置),这样,图片就拆分完成了。

拆分问题

统计分析了问题之后,问题首先分为两块,一块是,直接找到对应的物体,例如(请点击绿色球体),另一块是,找到某某物体相关联的某某物体,其中,这一块又可以分为两块,一块是某某物体相关联位置的某某物体,例如(请点击在大体积绿色圆锥左边的绿色圆锥),另一块是某某物体相关联属性的某某物体李,例如(请点击与大体积球体有相同颜色的物品),这样,问题就拆分完成了。

问题求解

上述是我拆分的结论,这也仅仅是最直接的去拆分问题的想法,后面我会讲解更多的思路,下面我们根据拆解的问题一一求解,大体思路分为:找出物体位置–分析物体属性–分析问题–得到最终物体,其中每一步,都会用到深度学习或机器学习的方式去识别,实际上是三阶段的形式,来完成最终的检测。

找出物体位置

找出物体位置,就是一个目标检测问题,现在的目标检测技术非常成熟,我们只需要使用一种深度学习的框架实现即可,这里我使用的是yolov5,

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码王吴彦祖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值