一键去除马赛克真的来了 如何去除马赛克( 二 )


一键去除马赛克真的来了 如何去除马赛克

文章插图
看到这里,应该不少人都觉得害怕 。
以前我们在微信上、微博上,没少发出去一些打马赛克的东西 。现在有了这项技术,岂不是隐私全都曝光了?
一键去除马赛克真的来了 如何去除马赛克

文章插图
想想看,最近又到年末,很多 App 都推出年度账单、年度盘点什么的 。
很多人喜欢截图晒出去朋友圈,告诉大家今年花了多少钱、听了多少歌 。凡尔赛嘛~
但是吼,机哥发现大家都会小心翼翼地给自己的名字、地址等隐私信息打上码,甚至会把账单里买了什么给打码 。
一键去除马赛克真的来了 如何去除马赛克

文章插图
而这,这是其中一个例子 。咱们需要打马赛克的场合,远不止这个 。
而 Depix 的出现,会不会让隐私,不再是隐私呢?
我这里可以直接下个结论:至少在目前,还不需要担心 。
在我说为什么之前,机哥建议大家先听我说完,Depix 实现去除马赛克的原理 。
去除文字马赛克的原理
平常我们给一个东西打码,本质上就是把一张图片分成一个个小格子,然后像 Photoshop 等修图工具,就会给每个格子算出它的平均颜色 。
然后就用这种平均颜色,覆盖整个小格子 。
一键去除马赛克真的来了 如何去除马赛克

文章插图
所谓的马赛克的薄与厚,其实只是看要分成多少个小格子罢了 。
而要把马赛克还原成图片原本的样子,其实是一个逆向过程 。
但想想就知道,要实现起来有多困难 。
毕竟马赛克打得越厚,就会让图片的细节丢失得越多 。就像上面机哥举的例子,那几个英文单词哪怕经过 Depix 的还原,还是很难 100% 还原 。
一键去除马赛克真的来了 如何去除马赛克

文章插图
于是这两天 GitHub 上面这个 Depix 项目,它的想法就是:利用 AI 人工智能,让马赛克里的小格子们,不断跟数据库里已有的字符组合做匹配 。
这就有一个问题了,数据库咋整?
机哥今天拿到了代码作者提供的数据库,大概明白了他的想法 。
想想看,英文字母只有 A~Z 的 26 个、阿拉伯数字只有 0~9 的 10 个、常用的英文标点符号也是只有几个 。
一键去除马赛克真的来了 如何去除马赛克

文章插图
你们去看看你们电脑键盘的布局就知道了,几十个按键就覆盖了英语里所有需要的东西 。
机哥说这个的意思是,在英文语法下,“字母+数字+标点”的组合是有限的 。
呐,如今 Depix 代码里就把这些组合列出来,就在这张图里:
一键去除马赛克真的来了 如何去除马赛克

文章插图
Depix 的作者还考虑到每个字符之间的距离,可能会对运算产生影响,所以一次性做了“宽字距”和“窄字距”的数据库 。
所以说,每次运算时,只要把需要去除马赛克的图片丢进去 Depix 里,Depix 就会开始进行逐一匹配,最终得出一个大致的结果 。
一键去除马赛克真的来了 如何去除马赛克

文章插图
好了,说到这里,硬核的东西讲完 。
机哥就要开始回答,为啥我上面说:现在还不需要担心隐私问题泄露 。
目前还存在的问题
首先是,Depix 对原图的要求极高 。
我看到有从事这方面的专业人士分析,这个项目目前对文本大小、字体、颜色、hsl 也许都有限制 。
机哥觉得嘛,像大家现在经常用一些花里胡哨的字体,机器想要识别出来,还是有点难的 。