【导语】:Depix 是用于将数字、字母从像素化的图片中还原的工具。

简介

Depix 是用于将数字、字母从像素化的图片中还原的Python工具,简单点说,就是从马赛克中恢复原始内容,目前有它的一些限制,仅适用于使用线性滤波器创建的像素化图像。

马赛克画质特效(1.9万Star)(1)

许多领域都使用像素化来混淆图片中的信息,像素化描述了部分降低图片分辨率以审查信息的过程,Depix的算法使用了线性滤波器的原理,线性滤波器采用一组像素,并用这组像素中所有像素的平均值覆盖这些像素。线性滤波器是一种确定性算法,因此对相同值进行像素化将始终产生相同的结果。

马赛克画质特效(1.9万Star)(2)

项目地址是:

https://github.com/beurtschipper/Depix

安装使用

gitclonehttps://github.com/beurtschipper/Depix.git cdDepix

python-mpipinstall-rrequirements.txt

pythondepix.py-p/path/to/your/input/image.png-simages/searchimages/debruinseq_Notepad_Windows10_closeAndSpaced.png-o/path/to/your/output.png

python3depix.py-pimages/testimages/testimage3_pixels.png-simages/searchimages/debruinseq_notepad_Windows10_closeAndSpaced.png

马赛克画质特效(1.9万Star)(3)

python3depix.py-pimages/testimages/sublime_screenshot_pixels_gimp.png-simages/searchimages/debruin_sublime_Linux_small.png--backgroundcolor40,41,35--averagetypelinear

马赛克画质特效(1.9万Star)(4)

原理简介

  1. 使用与马赛克图相同的字体设置,包括字体、颜色、大小等,将debruinseq.txt(在源码仓库中有)的内容放到编辑器(例如上面介绍的两个例子,就是分别放到Notepad和Sublime Text)中并截图,截图的结果作为识别搜索的训练数据,用于识别马赛克图中的内容。
  2. 算法利用线性滤波器单独处理每个马赛克块。对于每个块,它将搜索图像中的所有像素化块以检查直接匹配。
  3. 对于大多数像素化图像,Depix设法找到单一匹配结果。算法将周围多个匹配块的进行几何比较,重复该过程输出最终结果。
  4. 限制:该算法通过整数块边界匹配。因此,它有一个基本假设,对于所有渲染的字符,文本定位都是在像素级别完成的。

此前已有网友用这个工具做过测试,如下图:

马赛克画质特效(1.9万Star)(5)

给敏感信息打码,看来不大管用了。

- EOF -

,