题外话
昨天很搞笑,我刚到社团的时候有人和我说:“学长听说你做过图像处理方面的,赚钱了”,作为一个程序猿,我第一反应是:“妈的,有锅想甩给我,打死不干”,但之后那人说:“阿里出了VR实景红包,只要图像处理下就能抢到了,我用ps做了下,真的可以”。我想真这么简单,这个坑可以入啊。然后我就入了,花了两小时,还真成功了,虽然只适用于部分。
正题,如何抢VR红包
原理
VR红包的图片是用一些横杠挡住的,只要将这些横杠去掉,在用支付宝扫描就可以抢到红包了。所以唯一的难点就是去掉横杠。
工具
工具分为两类,一类是图像编程工具,一类是ps。图像编程工具,我推荐MATLAB和OpenCv,因为我只用过这两个,而且都相当好用。ps类,我不是很熟悉。而且用ps抢红包效率太低,没有编程来的爽,超过30秒的事都要用程序解决。
具体实现(编程上)
说的这么多实际上我做的很简单,不过也是不停尝试出来的。使用的是MATLAB,在MATLAB上写个脚本,连续3次进行腐蚀操作,一般效果会最好。
核函数用的是:
之后就很简单了,将腐蚀后的图片打开,用支付宝扫描有的就直接可以了。
给完善提点建议
实际上,并不能100%成功,大概至少有30%~40%的成功几率吧。所以我实际上对于这个并不算很满意吧,但他妈的万恶的考试要来了,所以先这样吧。
提点建议:
- 将手机截图中不必要的部分去掉,只留下需要扫描的部分
- 用边缘检测确定腐蚀的部位,不做无用功和模糊图像的操作
- 腐蚀后如果图像不好的话可以尝试下平滑操作等
最后,给个例子
擦,一不小心抢了7元。好内疚啊。