2022年了,去马赛克能实现吗?

2022年了,去马赛克能实现吗?

打码原理

本文仅讨论方格马赛克的生成与恢复

图片[1]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋

那么,方格马赛克是怎么生成的呢?其实很简单:将打码区域划分成一个个的格子,然后取每个格子的颜色平均值生成

图片[2]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋

PULSE 算法

演示效果

官方效果

图片[3]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋
图片[4]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋
图片[5]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋

原理介绍

PULSE 是一种图片超分辨率的新样式,使用的是 StyleGAN 模型:可以用它不断生成栩栩如生的但不存在的人脸,我们可以在这个网站进行体验:Random Face Generator (This Person Does Not Exist)

图片[6]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋

我们给 PULSE 输入一张小图,它会用 StyleGAN 生成一张大的人脸图,差值缩小后与输入图比较差距;然后通过算法不断修正、生成新的人脸图,直到与输入图无差距,最后输出大图

图片[7]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋

所以,要达到去马赛克的效果,我们可以曲线救国:先将马赛克图片缩小,通过 PULSE 超分辨率放大

图片[8]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋

不难看出,PULSE 是有缺点的:

  1. It will not help identify or reconstruct the original image
    这无助于识别或重建原始图像
  2. StyleGAN 只能生成人脸,而且绝大多数是白种人,所以效果不会很好
  3. 要想超分其他类型的图片,就需要自己找模型训练

使用教程(Windows)

下载代码

打开 PULSE 的 GitHub 项目,下载代码即可

图片[9]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋

安装 Python

  1. 打开 Python 官网,下载 python
图片[10]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋
  1. 安装即可
图片[11]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋

安装 CMake

  1. 打开 CMake 官网下载页,根据自己的系统下载文件
图片[12]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋
  1. 安装软件
  1. 按下 Win + R,输入 cmd 确定
图片[19]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋
  1. 输入命令↓,回车
pip install cmake
图片[20]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋
  1. 右键此电脑 → 属性
图片[21]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋
  1. 点击高级系统设置
图片[22]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋
  1. 点击环境变量
图片[23]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋
  1. 点击 Path ,编辑
图片[24]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋
  1. 新建,填入该地址:C:\Users\你的用户名\AppData\Local\Programs\Python\Python310\Lib\site-packages\cmake\data\bin
图片[25]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋
  1. 一路确定即可

检查是否安装成功:

  1. (重启电脑后),按下 Win + R ,输入 cmd 确定
图片[19]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋
  1. 输入 cmake ,回车,若显示类似下图所示内容,则表示安装成功
图片[27]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋

安装 Anaconda 管理器

  1. 打开 Anaconda 官网,点击中间按钮下载软件
图片[28]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋
  1. 安装软件
  1. 打开 Anaconda Powershell Prompt (Anaconda3) 软件
图片[37]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋
  1. 输入命令↓
conda env create -n pulse -f 你的PULSE路径/pulse.yml

例如:conda env create -n pulse -f G:/pulse/pulse.yml

如果你看到了 Solving environment: failed 错误:
  1. 打开 你的PULSE路径/pulse.yml 文件,将 ResolvePackageNotFound 提示的所有包修改
    比如:- openssl==1.1.1g=h1de35cc_0
    改成:- openssl==1.1.1g
图片[38]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋
GitHub 项目上的说明:

In some environments (e.g. on Windows), you may have to edit the pulse.yml to remove the version specific hash on each dependency and remove any dependency that still throws an error after running conda env create... (such as readline)

dependencies
  - blas=1.0=mkl
  ...

to

dependencies
  - blas=1.0
 ...
  1. 剩下的请到网站↓搜索并运行代码
图片[39]-2022年了,去马赛克能实现吗?-JACK小桔子的小屋
  1. 在输入命令↓
conda activate pulse

运行程序

  1. 按下 Win + R ,输入 cmd 确定
  2. 输入 cd /d 你的PULSE路径,回车
  3. 输入 python run.py,回车
隐藏内容,输入密码后查看
此内容还在编辑,暂不公开
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容