• DeblurGAN:图像去模糊复现


    摘要:复现Keras implementation of "DeblurGAN: Blind Motion Deblurring Using Conditional Adversarial Networks"项目,配置window运行环境,修改相关代码,消除图片网格;代码最终可以运行,但发现这个项目的效果并不理想,只有在特定的模糊场景下才能表现良好。

    1.项目源地址

    Keras implementation of "DeblurGAN: Blind Motion Deblurring Using Conditional Adversarial Networks"

    注:代码不一定能运行,且适合LInux环境运行;且处理后的图片有网格;

    2.Anaconda环境【会的可以跳过】

    2.1 Windows下安装Anaconda环境

    每一个项目所需要的包和包的版本都不相同,所以会有包与包不兼容的问题。

    比如:在项目1中安装librosa时,会自动安装相应版本的numpy。而如果你把各个项目都放在一个环境下,且项目2需要的numpy并不是这个版本,可能就会被替换,从而出现不兼容的问题。

    因此,建议在运行项目时,针对每一个项目单独创建环境,这样能够保证各个项目之间的环境互不影响。在运行指定项目时,只需要激活该项目所在的环境即可。

    我们安装完anaconda后,会有一个base环境,不过我们一般不在base环境下跑项目。而是为每一个项目创建一个新的虚拟环境运行。这次我们复现也是需要先为该项目创建虚拟环境。

    Anaconda环境可以很方便第创建虚拟环境,且anaconda命令可以很方便安装大量包并管理这些包;具体安装Anaconda的步骤这里不详细介绍,自己去Anaconda官网下载安装;

    2.2 Anaconda管理虚拟环境命令

    1.创建环境

    conda create -n 环境名 python=版本号

    例如新建一个名为myproject的虚拟环境,python版本为3.6: 

    conda create -n myproject python=3.6

    2.激活环境

    conda activate 环境名
    例如:conda activate myproject

    3.安装包

    手动一个一个安装命令:

    pip install 包名==版本号

     也可不指定版本号;

    批量安装包:

    常见于复现代码时,一般都将环境所需要的包放在requirements.txt文档中,此时我们只需要:

    1.将目录切换到requirements.txt所在的位置。

    cd 目录

    2.执行命令

    pip install -r requirements.txt

    此时,pip install命令会逐一读取requirements.txt中的内容。

     

     4.卸载包

    手动一个一个卸载:

    卸载已安装的包

    pip uninstall 包名

    卸载指定版本的包

    pip uninstall 包名==版本号

    批量卸载:

    1.切换到requirements.txt文件所在目录

    cd 目录

    2.执行命令

    conda uninstall -t requirements.txt

     5.查看当前环境所有包命令:

    conda list

     6.退出当前环境

    方法1:激活base环境即可

    conda activate base

    方法2:deactivate直接退出

    conda deactivate 环境名

    7.查看电脑上所有已创建的环境

    conda info --env

    8.删除环境

    conda remove -n 环境名 --all

    3. 创建项目复现的环境并且安装相关依赖

    项目代码通过之前的链接已经获取了,所以需要搭建运行环境;

     1.创建运行环境

    安装好Anaconda后,打开Prompt:

    打开后转到项目所占路径:

    创建环境: 

    conda create -n myproject python=3.6

     

    2.激活该环境并且批量安装依赖

    conda activate myproject

     

    查看已经安装的包: 

     3.在此环境下运行项目程序执行命令:

     python scripts/deblur_image.py --weight_path=scripts/generator.h5 --input_dir=scripts/BlurPicture --output_dir=scripts/ProcessingResults

    三个输入参数:

    weight_path是训练好的模型地址;

    input_dir是图片输入地址;

    output_dir是图片输出地址。 

     

     4. 程序执行完毕后,结果如下:

    原图片:

    结果图片:

     

     

     

     

     

  • 相关阅读:
    P4实验之防火墙
    MySQL实现的一点总结(四)
    Go 重构:尽量避免使用 else、break 和 continue
    C 学生管理系统_读取文件中得学生信息
    28、iNeRF
    【uni-app】总结uni-app订单支付和打包发布
    一起Talk Android吧(第五百五十五回:Retrofit中的注解)
    【Java】NIO概述
    探索 SK 示例 -- GitHub 存储库中的机器人
    Vue中双向绑定数据详解
  • 原文地址:https://blog.csdn.net/yue200403/article/details/127759451