Python + PIL 处理支付宝AR红包
思路比较简单:
1、对图片进行锐化处理;
2、设(r_h, g_h, b_h)为支付宝遮罩黑条的RGB值,以此为中心,查找半径为Diff_radius的范围内所有的色值;
3、对每一行符合步骤2的像素点个数进行计数,若该数值超过某个临界值(如:图片宽度的一半),将其所在行替换为上一行非遮罩数据;
4、对处理后的图片高斯滤镜。
以下是python代码:
1 from PIL import Image,ImageFilter 2 3 Diff_radius = 500 4 diff_min = 150 5 r_h, g_h, b_h = 43, 55, 66 6 7 image = Image.open('test.png') 8 image_width = image.size[0] 9 image_height = image.size[1] 10 rgb_im = image.convert('RGB') 11 12 img_sharpen = image.filter(ImageFilter.SHARPEN) 13 14 img_new = Image.new('RGBA', image.size, (255,255,255,255)) 15 img_copy = img_sharpen.crop((0,0,image_width,image_height)) 16 img_new.paste(img_copy, (0,0,image_width,image_height)) 17 18 y_tmp = 0 19 20 for y in range(image_height): 21 #y_is_black = 0 22 current_line_flag_acc = 0 23 for x in range(image_width): 24 r, g, b = rgb_im.getpixel((x, y)) 25 if ((r_h-r)**2 + (g_h-g)**2 + (b_h-b)**2) < Diff_radius : 26 current_line_flag_acc = current_line_flag_acc + 1 27 if current_line_flag_acc > diff_min : 28 #y_is_black = 1 29 img1 = img_new.crop((0,y_tmp-2,image_width,y_tmp-1)) 30 img_new.paste(img1, (0,y,image_width,y+1)) 31 # print('y_tmp:%d -> y:%d'%(y_tmp,y)) 32 else: 33 y_tmp = y 34 # img_save = img_new.filter(ImageFilter.GaussianBlur(radius=1.5)) 35 img_new.save('test_1.png') 36 print("done!")
对于不同的图片,可能需要修改3、4、5行的参数。
目前测试过几组照片,发现给出的线索图片越复杂,这种方法处理后能被识别的成功率越高,尤其是对人脸,简单的处理后基本都可以识别。
识别成功的:
识别失败的:
以上内容仅用作学习,起到抛砖引玉的作用,请不要用作其他用途。我只是个python和PIL的初学者。。。
转载于:https://www.cnblogs.com/christsong/p/6222548.html
Python + PIL 处理支付宝AR红包相关推荐
- 支付宝AR红包引出Python中的PIL小试
这两天支付宝AR红包火了,周围的同学全在玩.可是我一直在想这个原理是什么?通过请教大神和思考,知道了它有两个限定条件:GPS地理位置和图片的识别.所以,只要我们有了这两个限定条件,就不难进行该红包的破 ...
- 扫福得福背后,支付宝 AR 红包的技术创新与故事
春节期间,支付宝的「扫福得福」活动火爆异常.AR 是一种新的交互方式,与传统营销方式相比,可以使用户更深入地参与互动,给用户带来新体验.而支付宝红包,寄托着用户对未来的期盼,因此其团队就考虑将 AR ...
- 说一说关于破解支付宝AR红包的事
当朋友圈的你们才开始分享支付宝AR红包的消息的时候,我已经对它动了一二三四次歪脑筋了,虽然事实证明并不是那么顺利,至今我也只在电脑前识别出5个不知道在哪里的红包,其中一个还因为定位信息不符开不了. 昨 ...
- 扫福得福背后,支付宝AR红包的技术创新与故事
春节期间,支付宝的「扫福得福」活动火爆异常.AR是一种新的交互方式,与传统营销方式相比,可以使用户更深入地参与互动,给用户带来新体验.而支付宝红包,寄托着用户对未来的期盼,因此其团队就考虑将AR与红包 ...
- 较于微信红包,支付宝AR红包是个好产品吗?
2016/12/26阅读 7.5k 评论 6收藏 23 零基础学产品,BAT产品总监带,2天线下集训+1年在线课程,全面掌握优秀产品经理必备技能.了解详情 好的产品是以用户目标为导向,能帮助用户更好的 ...
- 支付宝AR红包关闭,看昔日“网红”如何过气
支付宝的AR红包于7月22日停止服务,和它合作的AR平台还好吗? 年初的时候,支付宝和QQ之间的AR红包大战可以说是抢尽了风头,关于AR营销以及AR进入消费端市场的讨论甚嚣尘上,镁客君当时还写过一篇文 ...
- 支付宝 AR 红包技术探讨及如何在下一波技术浪潮中畅泳
AR继2016年在Pokemon Go的引爆下,2017年新年前后由支付宝带来了第二波热潮.这些现象背后预示着下一波技术浪潮,除人工智能及机器人外,代码构成的虚拟世界正逐步通过AR/VR侵入我们的生活 ...
- 从“扫月亮”到“扫福字”,扒一扒背后的支付宝AR框架体系
摘要:从攒五福到抢红包,全国人民的春节活动越来越多样,其背后技术挑战也更复杂:业务层挑战与实现方案.AR红包支付架构变化.技术难点和攻克手段.优化细节和保障方法.安全风险和攻防实战等,每一年的红包背后 ...
- AR红包大战一触即发,2017年会成AR营销元年吗?
互联网行业2016年不缺黑天鹅事件,但同样也不缺乏黑马产品.作为年度最热领域之一的AR(增强现实),就连续出现黑马产品.支付宝在12月21日推出"AR实景红包"一夜爆红,看上要想要 ...
最新文章
- 你想了解的Cookie和Session就在这~
- 我了解到的新知识之——电热水器用电安全
- SQL数据库面试题以及答案
- Linux怎么创建date文件,Linux下手工创建oracle database
- c语言求佩尔方程的解设计思路,c语言版 佩尔方程求最小正整数解及第k解(矩阵快速幂)...
- PSR-2 代码风格规范
- android 提供的方法,Android编程之创建自己的内容提供器实现方法
- centos7安装yum_centos7下yum方式安装jenkins
- Entity Framework 学习初级篇7--基本操作:增加、更新、删除、事务(转)
- c语言n天前是星期几,新手做的日历表及查找日期是星期几
- 联想小新Pro 13新款笔记本电脑获TUV莱茵低蓝光认证
- openwrt默认mac地址配置(MT7620a)
- 基于Flink的JDBC插入Nested结构数据到Clickhouse
- web和APP兼容性测试的关注点(软件测试)
- 微信H5支付,HTML页面代码
- 录制iPhone屏幕
- 给vue项目添加favicon.ico图标
- 航运“大数据”热潮袭来,亿海蓝船讯网助力产业升级
- 台式机CPU型号后缀含义
- [授权发表]源码分析:静态分析 C 程序函数调用关系