腾讯 图标点选 分析

声明:
本文章中所有内容仅供学习交流使用,不用于其他任何目的,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!

有相关问题请第一时间头像私信联系我删除博客!

前言

用了ddddocr和别人发的数据集。随便测了一下,腾讯图标点选每次都有一个关键的坐标是ddddocr识别不了的所以要提高成功还得自己动手进行标注数据集。孪生部分就比较简单我就不展开说说一下解决思路。这里不解释collect的处理和滑块一样之前已经弄了两篇博客了。

腾讯图标点选分析

切割图片识别坐标

def recognize():
    with open("1.png", 'rb') as f:
        image = f.read()

    bboxes = det.detection(image)
    print(bboxes)

    im = cv2.imread("1.png")
    idx = 1
    for bbox in bboxes:
        x1, y1, x2, y2 = bbox
        im = cv2.rectangle(im, (x1, y1), (x2, y2), color=(0, 0, 255), thickness=2)
        # 裁剪出小图标
        cropped_icon = im[y1:y2, x1:x2]

        # 保存裁剪后的图标
        cv2.imwrite(f"./icons/icon_{idx}.png", cropped_icon)  # 使用bbox作为文件名的一部分以区分图标
        idx += 1

    cv2.imwrite("result.jpg", im)

孪生部分解决后通过一个笛卡尔积进行最佳匹配。我这用到了选择排序原理取最大值。

combine=[]
max_score = 0
for i in range(len(os.listdir(target_path))):
    max_score=0
    for j in range(len(os.listdir(icons_path))):
        xsd = getdata(f'./target/{i+1}.png', f'./icons/icon_{j+1}.png')
        if max_score<xsd:
            max_score=xsd
            idx=j+1
    combine.append([i+1, idx])

结果

总结

1.出于安全考虑,本章未提供完整流程,调试环节省略较多,只提供大致思路,具体细节要你自己还原,相信你也能调试出来。

侵权首页联系删除博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

2766958292

wx a15018601872

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

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

打赏作者

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

抵扣说明:

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

余额充值