《Dubbo 实现原理与源码解析 —— 精品合集》 《Netty 实现原理与源码解析 —— 精品合集》
《Spring 实现原理与源码解析 —— 精品合集》 《MyBatis 实现原理与源码解析 —— 精品合集》
《Spring MVC 实现原理与源码解析 —— 精品合集》 《数据库实体设计合集》
《Spring Boot 实现原理与源码解析 —— 精品合集》 《Java 面试题 + Java 学习指南》

摘要: 原创出处 扩展迷EXTFANS(ID:infinitydaily) 「扩展迷EXTFANS」欢迎转载,保留摘要,谢谢!


🙂🙂🙂关注微信公众号:【芋道源码】有福利:

  1. RocketMQ / MyCAT / Sharding-JDBC 所有源码分析文章列表
  2. RocketMQ / MyCAT / Sharding-JDBC 中文注释源码 GitHub 地址
  3. 您对于源码的疑问每条留言将得到认真回复。甚至不知道如何读源码也可以请教噢
  4. 新的源码解析文章实时收到通知。每周更新一篇左右
  5. 认真的源码交流微信群。

有人说,马赛克的发明,就是人类文明史上一次重大的“开倒车”。

也有人说,马赛克就是阻碍人类进步的绊脚石。

从功能上讲,马赛克是一种用来遮盖原画面的手段,有利也有弊。

从技术上讲,马赛克的原理是将某一个像素的颜色涂抹到整个范围而造成原画信息丢失。

所以,这个过程是不可逆的。

在个人隐私极其容易泄露的网络时代,大家可能都会使用马赛克来遮盖图片上的敏感信息。

比如身份证号、姓名、地址,用马赛克掩盖后,就能有效达到保护信息安全的目的。

图片

但同样的,在影视漫画作品中,每当出现儿童不宜或者血腥暴力的场景,都极有可能伴随着厚重的马赛克。

就算是正儿八经的画面,只要带上马赛克,画风就会变得奇奇怪怪起来。

虽然老司机门早就练成“心中无码自然高清”的最高境界。但有码观影,始终如同隔靴搔痒,如鲠在喉。

图片

俗话说的好,XX是第一科技生产力。自从人类世界出现了马赛克后,自然也有人专注于如何去码。

一直以来,号称能去除马赛克的软件层出不穷,但大多都是挂着羊头卖狗肉的恶意病毒软件。

然而近期在Github上,又出现了一款号称能抹去马赛克让原图重现的神器,引发海内外热议。

这款工具名为Depix,上线没几天就在GitHub上标星已超过一万多,截止目前累计分支也超过了1.3k个。

图片

让它火出圈子的,就是下面这张效果图:

如图所示,第一行是打了一层巨厚马赛克完全像素化后的文本内容,看不出一点原始痕迹。

第二行则是经过AI还原后的内容,可以看到内容其实基本上已经被还原了,而且准确度很高。

第三行就是根据第二行稍加推理得到的原始密码了。

图片

是的,最难被还原、甚至理论上说根本无法还原的文字,也在重重厚码之后被Depix还原了!

这意味着,就算大家以后把姓名/身份证号/电话等个人敏感信息都打上了马赛克发布到网上,也有可能被别人扒得一干二净。

那么,这个不可思议的AI还原技术是如何实现的?

据项目作者介绍,使用 Depix 将打上马赛克的文字恢复成原图,只需要简单的四步:

  • 从屏幕截图中截取像素块作为一个选区。
  • 在具有相同字体设置(包括文本大小、字体、颜色、hsl)的编辑器中,粘贴具有预期字符的De Bruijn序列。
  • 制作一个序列的屏幕截图,尽可能使用与创建像素化图像相同的屏幕截图工具。
  • 执行如下命令:
python depix.py -p[pixelated rectangle image] -s [search sequence image] -o output.pngbr

我们知道,打码是图像像素化处理的一种手段,它是通过将影像特定区域的色阶细节劣化并打乱色块,达到一种模糊图像的效果。

线性盒滤波器则是其中一种较为普遍的处理算法。

如下图所示,一个表情图像打码后,实际上被分为四个色块,每个色块被色块平均值所覆盖,最终形成了像素化表情。

由于原始信息丢失,因此不能直接反转滤波器。

图片

Depix的算法,就是利用了线性盒滤波器分别处理每个色块的特点,对搜索图像中的每一个块进行像素化来寻找直接匹配。

简单来说,Depix的技术原理就是,将马赛克区域的内容分割成许多个小块,然后再利用算法对每个小块的内容进行平均值计算并覆盖等。

目前,Depix这款工具还属于特定领域的工具,只适用于使用线性方框滤波器创建的像素化图像,且支持的主要是英文字母、数字以及英文半角下的符号等。

图片

经过测试,绝大多数英文字母、数字和符号可以通过Depix正确识别出来。

不过,开发者在研究过程中发现某些连写的字符无法正确识别,因此也要进行改进。

虽然Depix算法输出的结果并不太完美,但相比之前的其它技术而言,已经算不错的了。

图片

Depix的相关消息在网上传开后立刻引发热议,许多网友对这项技术表示了深切担忧。

开发者强调称,开发这个AI项目并不是为了窃取信息,而是利用ECB和明文攻击的模式,提高信息保护技术。

他还在博客中建议大家,基于安全考虑,请不要使用马赛克,最佳做法是直接将需要遮挡的区域使用黑条或者白条覆盖,这样是无法通过算法还原的。

图片

当然,除了Depix以外,试图对马赛克内容进行还原的开源项目还有很多。

此前,扩展迷也跟大家介绍过一款名为PULSE的算法——它能根据模糊的马赛克像素“画”出一张新的人脸,在几秒内就能将图像原始分辨率放大64倍,任何渣画质都可以秒变高清、逼真图像。

细致到眉毛、睫毛、毛孔、皱纹、头发,都能神还原。

图片

对于这类项目的火爆,网上的质疑声一片,这些AI技术不可避免地被有些人用于不良或非法用途。

可以预见的是,AI还原马赛克技术将会越来越成熟,未来关于去马赛克的伦理道德、法律层面的问题也会越来越复杂。

GitHub地址

https://github.com/beurtschipper/Depix

文章目录