其实之前在我用马赛克对图片进行模糊处理的时候,我就思考过这个问题,这些被马赛克的地方能不能被恢复出来,万一能恢复,当时就觉得细思极恐。

你说巧不巧还真能恢复。在介绍今天的项目之前,我们先来看一下以下这张图片,相信你也会跟我一样震惊的。

被马赛克后的图片真的被还原了,不可思议。

当然大家也不要过度的恐慌哈,这个项目还是有挺多局限的。目前来看该项目关注的更多是文字项目的马赛克恢复,因为文字有更多的规则可寻,同时在马赛克不是很充分的情况下,可以根据大致的形状做近似的搜索。

更多算法相关的内容是有理论支撑的,详见:https://www.linkedin.com/pulse/recovering-passwords-from-pixelized-screenshots-sipke-mellema/

同时我们根据以上论文底部的评论也可以得知,因为本身文字上下文也是存在关联性的,可以利用马尔科夫链等 NLP 的算法来辅助增加文字的恢复效果。

目前作者将上述理论开发成一个可以直接命令行使用的脚本了,具体使用方法如下:

大致用法分如下几部:

将被马赛克的文字从图片中截取出来

生成需要搜索的文字词典图片,方便后续做相似词的搜索

运行命令:python depix.py -p [pixelated rectangle image] -s [search sequence image] -o output.png,其中 output.png 为最终恢复的图片效果

c语言程序图片马赛克,震惊,被马赛克的图片竟然还可以恢复相关推荐

  1. 厉害,被马赛克的图片竟然还可以恢复

    文章首发于微信公众号「GitHub 精选」,欢迎大家关注. 大家好,我是章鱼猫. 其实之前在我用马赛克对图片进行模糊处理的时候,我就思考过这个问题,这些被马赛克的地方能不能被恢复出来,万一能恢复,当时 ...

  2. c语言程序能运行但屏幕不显示图片,c运行程序屏幕无显示!~~请高手指点!~~~...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 在tc和tcforwin中运行下列程序电脑黑屏没有任何显示,但是当我在其他一些电脑上运行时可以正常显示片树叶,不知道原因,请高手指点. #include  ...

  3. secp256r1 c语言程序,区块链中的数学-secp256k1点压缩和公钥恢复原理

    本节主要讲了secp256k1的参数,点表示形式和由签名试图恢复公钥的原理 ## 写在前面 上一节讲了[Schnorr离散对数签名及素数阶群构造(Schnorr群)](https://learnblo ...

  4. java多线程图片压缩包_年轻人不讲武德,竟然还搞不懂JVM?求你们来看阿里Java开发岗的招聘要求吧!...

    最近有很多小伙伴吃了蚂蚁金服上市的酸柠檬,觉得马爸爸说的福报还是存在的.有人问我,进阿里到底难不难? 拜托,一画也没进去,我怎么知道? 但是,本着刨根问底的精神,小天搜索了很多阿里Java开发岗位的招 ...

  5. OpenCV05:图片色彩反转及马赛克效果

    对于图片的色彩反转问题,可以将其分为两类,一类是灰度图像的颜色反转,另一类是彩色图像的颜色反转. 对于灰度图像的颜色反转,灰度值的取值范围是0-255 ,那么颜色反转就是 255 - 当前灰度值 . ...

  6. 周信东c语言实验二实验报告,周信东主编最新版C语言程序设计基础实验一实验报告.doc...

    周信东主编最新版C语言程序设计基础实验一实验报告.doc 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我 ...

  7. 人形图案c语言程序_做游戏,学编程(C语言) 7 学习EasyX图形交互功能----flappy bird源代码...

    经过之前的学习,我们基本掌握了开发小游戏所需要的语法知识和搭建方法,但是基础C语言的可视化与交互功能实在是太弱了 . 利用免费的EasyX插件,我们可以快速上手,简单实现很酷的视觉效果 . EasyX ...

  8. python语言程序设计2019版第二章课后答案-python语言程序设计基础课后答案第二章...

    python语言程序设计基础课后答案第二章 以下合法的用户自定义标识符是____________. 导入模块或者模块中的元素要使用关键字________ . 下列哪个函数是用来控制画笔的尺寸的____ ...

  9. 【开源程序(C++)】获取bing图片并自动设置为电脑桌面背景

    众所周知,bing搜索网站首页每日会更新一张图片,张张漂亮(额,也有一些不合我口味的),特别适合用来做电脑壁纸. 我们想要将bing网站背景图片设置为电脑桌面背景的通常做法是: 上网,搜索bing 找 ...

最新文章

  1. (备忘)Java数据类型中String、Integer、int相互间的转换
  2. python 哈希表_哈希表哪家强?编程语言找你来帮忙!
  3. %w(数组)是什么意思?
  4. TM、XWT和Wazaabi
  5. 115 存至网盘 也有限制?
  6. jsch设置代理_Java使用JSch组件实现SSH协议代理服务
  7. js事件监听器用法实例详解
  8. C#调C++生成的dll报0x800736B1错误
  9. Hive之import和export使用详解
  10. java 静态内部类 内部类_Java中内部类和静态内部类的区别
  11. 别人问了个问题:有没有选择JAVA开发的设计文档
  12. nancy中的本地化
  13. SpringBoot整合jsp技术
  14. JavaScript 弹出框(警告框、确认框、提示框)
  15. 稳压管和TVS管的工作原理
  16. 使用jqery模拟网易严选购物车功能
  17. 理解设计模式中的工厂模式
  18. 接入广告App 教你如何赚取你的第一桶金 - 2048(含源码)
  19. 微信小程序开发动感十足的加载动画--都在这里!
  20. idea关联scala与spark开发(全)

热门文章

  1. 起点小说免费看 Scrapy爬取起点小说网数据导入MongoDB数据
  2. ColorMatrix颜色矩阵让图片千变万化
  3. 微信小程序—千变万化的图片处理(canvas那些滤镜效果)
  4. vue导入xlsx-style组件报错Can‘t resolve ‘./cptable‘ in ‘xxx\node_modules_xlsx
  5. Mac用 AVC全能视频转换器免费版
  6. 小米MIUI优化weblog
  7. FC-SAN和IP-SAN两者的优缺点分别是什么?
  8. Z-INDEX: 999
  9. Git强拉远程代码覆盖本地代码
  10. SAP的一些术语表,中英对照