楼主: Studio-R
4099 0

【干货】神经增强:用 Python 实现深度学习超分辨率处理 [推广有奖]

  • 9关注
  • 12粉丝

教授

1%

还不是VIP/贵宾

-

威望
0
论坛币
38231 个
通用积分
888.5934
学术水平
30 点
热心指数
29 点
信用等级
18 点
经验
25282 点
帖子
633
精华
1
在线时间
1130 小时
注册时间
2016-11-3
最后登录
2024-4-23

相似文件 换一批

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币


    神经网络基于样本图像的训练为模糊图像补充细节,从而把模糊图像变高清。它不能把你的照片重建成一模一样的高清版。这只有好莱坞大片才有可能做到——但使用深度学习和神经增强(Neural Enhance)实现的“创造性 AI”作品同样很酷!
  想得到如《犯罪现场调查》中CSI实验室那种提高照片清晰度的技术吗?感谢深度学习和神经增强(#NeuralEnhance)技术,现在已经能够训练一个神经网络把照片放大 2 倍,甚至 4 倍。通过增加神经元数目或使用与你的低分辨率图像相似的数据集进行训练,甚至能得到更好的结果。
  神经网络基于样本图像的训练为模糊图像补充细节。它不能把你的照片重建成一模一样的高清版。这只有好莱坞大片才有可能做到——但使用深度学习生成的“创造性 AI”作品同样很酷!以下是教程。
  示例 & 用法

   1.gif

例1:老旧的车站


  主要的脚本是 enhance.py ,按照以下方式设置后,你可以用 Python3.4+ 来运行。参数 --device 可以让你指定要使用的 GPU 或 CPU。如在上面的例子中,性能结果如下:
  • GPU 渲染 HQ —— 假定你已经设置好 CUDA,并且有足够的在板存储器(on-board RAM)适配图像和神经网络,生成 1080p 输出应该在5秒内完成,或者同时处理多张图像时,每张图像2秒。
  • CPU 渲染 HQ—— 生成 1080p 输出大约需要20~60秒,但在大多数机器上,只要有足够的系统RAM,你可以同时运行4-8进程。运行时间取决于神经网络的规模。
  默认情况下使用 --device=cpu ,如果你有已经设计好 CUDA 的 NVIDIA 卡,可以试试 --device=gpu0。在CPU上,你还可以将环境变量设置为 OMP_NUM_THREADS=4 ,这在多次并行运行脚本时很有用。
  1. 增强图像

   2.png



  2. 训练超分辨率
  GitHub上提供了预训练模型。自己训练的过程要求精细,可能需要根据你的图像数据集选择参数。

   3.jpg



  安装 & 设置
  例2:银行大厅
    1. 使用 Docker Image [推荐]  启动并运行的最简单方式是安装 Docker 。然后,使用 docker命令行工具应该能够下载并运行预构建的图像。

  • 单一图像 ——建议你设置一个叫 enhance的 alias 来自动显示包含指定的图像的文件夹,这样脚本能够读取并把结果存储到可访问的地方。你可以在 OSX 或 Linux 的终端控制台中这样做:

   4.png


  • 多图像 —— 要从文件夹或通配符规范的行中更快地实现多图像增强,请确保对 alias 命令引用如下参数:
  如果你想在 NVIDIA GPU 上运行,你可以改变 alias ,使用兼容 CUDA 和预安装的 CUDNN 的alexjc/neural-enhance:gpu,然后在 nvidia-docker 内运行,它应该就使用你自己的物理硬件了。
  •   2. 手动安装 [开发者]
      这个项目需要 Python 3.4+,你还需要在全系统安装 numpy和 scipy(数值计算库)以及 python3-dev。更详细的说明可以参考以下链接:

    • Linux Installation of Lasagne(intermediate)
    • Mac OSX Installation of Lasagne(advanced)
    • Windows Installation of Lasagne(expert)
      然后获取存储库,你可以从终端运行以下命令来设置本地环境:

      
    5.jpg

      然后,你应该在虚拟环境中安装 pillow,theano和 lasagne。你还需要下载这个预训练神经网络,并把它放在要运行的脚本的文件夹中。如果要卸载,只需删除 #/pyvenv/ 文件夹即可。

      背景 & 研究
       6.jpg

    例3:脸部的超高清实现,只用高清的名人的脸部照片来训练。缩小“照片”的范围可显著提升质量。


      本项目中的代码结合使用了以下论文的技术,以及还有一些小的改进尚未记录进来。
    • Perceptual Losses for Real-Time Style Transfer and Super-Resolution
    • Real-Time Super-Resolution Using Efficient Sub-Pixel Convolution
    • Deeply-Recursive Convolutional Network for Image Super-Resolution
    • Photo-Realistic Super-Resolution Using a Generative Adversarial Network
      特别感谢:Eder Santana,Andrew Brock & Casper Kaae Sønderby
      疑难解答

      7.gif
     例4:街景
    • 无法安装或找不到 pgen,无法编译形式语法。
      有一个 Python 扩展叫 Cython,它缺失了或没有得到正确安装。试试直接从系统包管理器而非 PIP 中找到它。
      FIX:sudo apt-get install cython3
    • NotImplementedError: AbstractConv2d theano optimization failed.
      这种情况发生在没有 GPU,而且找不到 CPU 库(如libblas )的情况下。神经网络表达式无法由 Theano 评估,于是引起了异常。
      FIX:sudo apt-get install libblas-dev libopenblas-dev
    • TypeError: max_pool_2d() got an unexpected keyword argument 'mode'
      你需要安装 requirements.txt中指定版本的 Lasagne 和 Theano,而不是 PIP 的版本。这些替代方案比较旧,而且缺少所需的功能。
      FIX:python3 -m pip install -r requirements.txt
    • ValueError: unknown locale: UTF-8
      这是因为你的终端配置出错,与 Python 处理区域设置的方式不兼容。你需要在 .bashrc 或其他启动脚本中更改这个设置,或者,下面的命令能为这个 shell 修复一次。
      FIX:export LC_ALL=en_US.UTF-8


    想知道更多关于机器学习的小伙伴们,加入我们的深造课程


    ,抓住机会,我们现在开始团课啦!!!人多力量大,一起


    来团吧最低价299元。


    扫描链接里的二维码,即可学习本次课程

    https://bbs.pinggu.org/thread-4974818-1-1.html


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:python 深度学习 分辨率 Installation Requirements 好莱坞大片 实验室 分辨率 创造性 神经元

[url=https://edu.cda.cn/page/110][/url]
您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加JingGuanBbs
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-24 10:13