文章目录

    • @[TOC]
  • 1、CUDA
  • 2、Anaconda3
  • 3、cuDNN和Pytorch安装
    • 这里值得注意的是(30系显卡安装Pytorch时):
  • 4、Fluent Terminal
  • 5、Real-ESRGAN算法的部署运行
    • 安装
    • 上手运行
      • Python 脚本的用法
  • anaconda环境基础操作
    • 1.安装Anaconda。
    • 2.conda常用的命令
      • (1)查看安装了哪些包
      • (2)查看当前存在哪些虚拟环境
      • (3)检查更新当前conda
    • 3.Python创建虚拟环境
    • 4.激活或者切换虚拟环境
    • 5.对虚拟环境中安装额外的包
    • 6.关闭虚拟环境(即从当前环境退出返回使用PATH环境中的默认python版本)
    • 7.删除虚拟环境
    • 8.删除环境钟的某个包
    • 9、设置国内镜像
    • 10、恢复默认镜像
    • 11、我的.condarc配置
  • 参考资料

有条件的,推荐使用Ubuntu系统配置开发环境,Ubuntu是Linux的一个发行版之一,适合新手,界面友好,操作简单。

本人现在的电脑已安装win11系统,因此后续将会以Windows系统作为开发环境,但这并不影响算法原理与代码的讲解。

本人的笔记本配置如下:

CPU:AMD Ryzen 7 5800H

显卡:RTX 3050Ti

系统:Windows 11

安装好Windows系统和必要的驱动后,需要安装的工具有:CUDA、Anaconda3、cuDNN、Pytorch-gpu、Fluent Terminal(可选)。

1、CUDA

CUDA,是显卡厂商NVIDIA推出的运算平台。我们需要根据自己显卡的型号选择支持的CUDA版本,例如RTX 2060 Super支持CUDA 10,下载地址:点击查看

傻瓜式安装,很简单。

安装好后,需要再配置下系统的环境变量,电脑->鼠标右键->属性->高级系统设置->环境变量->Path:

添加自己的NVSMI路径到环境变量中,

配置好后,就可以在cmd中使用nvidia-smi指令查看显卡了。

2、Anaconda3

Anaconda 是一个免费、易于安装的包管理器、环境管理器和 Python 发行版,包含 1,500 多个开源包,并提供 免费社区支持。Anaconda 与平台无关,因此无论您在 Windows、macOS 还是 Linux 上都可以使用它。

选择系统相应的版本,这里因为我是在Windows上进行部署的,点击Windows版本的64-Bit Graphical Installer,安装直接傻瓜式下一步就行。

安装好后,需要添加系统环境变量,方法步骤同CUDA大致相同,只需找到Path并将Anaconda路径加入其中就可以了,要添加的路径类似:

D:\Anaconda
D:\Anaconda\Scripts

配置好后,在cmd中运行conda -V没有报错,有版本信息输出,说明配置成功。

3、cuDNN和Pytorch安装

cuDNN是用于深度神经网络的GPU加速库。它强调性能、易用性和低内存开销。

安装好Anaconda之后,可以使用conda安装cuDNN和Pytorch。

打开Anaconda Prompt,这是Anaconda自带的命令行工具,先一定要用这个工具创建环境,直接用系统自带的cmd,可能遇到一些奇怪的问题,例如CondaHTTPError的错误。在Anaconda Prompt中输入:

conda create -n your_name jupyter notebook

这句话的意思是创建一个名字为your_name的虚拟环境,并且这个虚拟环境额外安装jupyter notebook第三方库。可以将your_name改为你自己喜欢的名字,这个名字是你的虚拟环境的名字,自己随便取,比如jack。

随后,输入y进行安装:

安装好后,可以通过指令conda info -e查看已有环境情况。

从上图可以看到,有两个环境,一个是base,自带的基础环境,另一个是我们新创建的名为demo的环境。新建环境的原因是,我们可以分开管理我们配置的环境。

安装好环境后,我们就可以激活jack环境,并安装cuDNN和GPU版的Pytorch了。激活名为demo的环境:

activate demo

可以看到,我们的环境已经行(base)切换到(demo)。在demo环境中安装cuDNN:

conda install cudnn

安装cuDNN好后,安装Pytorch,打开Pytorch官网:点击查看_

根据自己的环境选择,选择好后,网页会自动给出需要运行的指令。这里可能需要区分下CUDA的版本。

CUDA版本查看方法,在命令行中输入nvidia-smi:

我笔记本上的CUDA版本为11.2,确定好版本后,就可以通过Pytorch官网提供的指令安装GPU版本的Pytorch了。

这里值得注意的是(30系显卡安装Pytorch时):

如果你的电脑配置的是30系显卡,发生以下情况时,是由于Pytorch里面CUDA10.2选项和30系显卡不兼容。
这是个巨坑,30系显卡暂时不支持CUDA11以下版本,CUDA不支持当前显卡的算力。
虽然按道理来说CDUA是向下兼容的,比如你的电脑里安装的是CUDA11.3,在安装Pytorch时由于CUDA是向下兼容的,安装CUDA10.2是完全可以的。
但是,安装Pytorch时30系的显卡不能选择CUDA10.2,否则在运行算法程序的时候就会报错(反正在我电脑上报错了):GeForce RTX 3050 Ti Laptop GPU with CUDA capability sm 86 is not compatible with the current PyTorch      installation.The current PyTorch install supports CUDA capabili7sm_50sm_60sm_61sm_70sm_75compute_ 37.If you want to use the GeForce RTX 3050Ti Laptop GPU with PyTorch, please check the instructions at https://pytorch. org/ get- started/ locally/这时,只需要卸载原本的Pytorch,重新下载安装适配的CUDA11以上的版本,通过Pytorch官网提供的指令安装对应版本版本的Pytorch就可以了。


可以点击下方查看:
查看显卡算力

CUDA支持的显卡算力

从中可以看到这句话:a cubin generated for compute capability 7.0 is supported to run on a GPU with compute capability 7.5, however a cubin generated for compute capability 7.5 is not supported to run on a GPU with compute capability 7.0, and a cubin generated with compute capability 7.x is not supported to run on a GPU with compute capability 8.x
差不多意思就是:
(1)算力为7.0的cuda支持在算力为7.5上运行
(2)算力为7.5的cuda不支持在算力为7.0上运行
(3)算力为7.x的cuda不支持在算力为8.x上运行
我们前面已经发现30系显卡算力全部在8.x。而在文档中可以发现cuda10版本支持最高算力是7.x,因此不支持30系显卡。
至此,基础的环境已经搭建完成,下面进行详细的算法运行说明。

4、Fluent Terminal

基础环境配好了,正常使用已经够了。

但是追求颜值的人,可能会觉得,Windows自带的命令行工具和Anaconda提供的命令行工具都太丑了。

有没有好看,又好用的Terminal?答案是有的,不过需要自己配置,并且还有一些坑需要慢慢踩。

例如Fluent Terminal,它是现代的、也是我比较推荐的终端工具。它是专属于 Windows 平台,并利用UWP技术打造的颜值超高的终端模拟器。先看下颜值:

](https://cuijiahua.com/wp-content/uploads/2019/11/dl-14-17.jpg)

喜欢折腾的,可以看看这几篇文章:

告别 Windows 终端的难看难用,从改造 PowerShell 的外观开始

像MAC一样使用win10的Terminal

这种美化的工具有很多,需要自行探索,由于本文不是专门针对Terminal的美化文章,就不用过多篇幅介绍这些美化工具了。喜欢折腾的,可以根据自己的需求自行百度。

5、Real-ESRGAN算法的部署运行

Real-ESRGAN 的目标是开发出实用的图像修复算法。项目地址如下:

xinntao/Real-ESRGAN: Real-ESRGAN aims at developing Practical Algorithms for General Image/Video Restoration. (github.com)

可以先自己看一看算法的介绍。

接下来进入正文—>

安装

  1. 把项目克隆到本地

    git clone https://github.com/xinntao/Real-ESRGAN.git
    cd Real-ESRGAN
    

​ 也可以直接在上方项目链接里直接Download。

2.安装各种项目依赖库

​ 进入项目目录下,打开 requirements.txt,删除已经安装好的Pytorch和torchvision,在命令行中进入项目目录,输入以下命令并执行。

    ```bashpython -n pip install -r requirements.txt```

到这里,算法运行环境搭建成功。

上手运行

这里我们对项目提供的对普通图片进行优化的模型进行下载和运行—>

下载训练好的模型: RealESRGAN_x4plus.pth,并将其放在项目主目录中的experiments/pretrained_models下,

然后,运行推断!

在项目主目录下,运行以下命令:

python inference_realesrgan.py -n RealESRGAN_x4plus -i inputs --face_enhance

结果在results文件夹中。

项目运行效果:

]

Python 脚本的用法

虽然你使用了 X4 模型,但是你可以 输出任意尺寸比例的图片,只要实用了 outscale 参数. 程序会进一步对模型的输出图像进行缩放。

Usage: python inference_realesrgan.py -n RealESRGAN_x4plus -i infile -o outfile [options]...A common command: python inference_realesrgan.py -n RealESRGAN_x4plus -i infile --outscale 3.5 --half --face_enhance-h                   show this help-i --input           Input image or folder. Default: inputs-o --output          Output folder. Default: results-n --model_name      Model name. Default: RealESRGAN_x4plus-s, --outscale       The final upsampling scale of the image. Default: 4--suffix             Suffix of the restored image. Default: out-t, --tile           Tile size, 0 for no tile during testing. Default: 0--face_enhance       Whether to use GFPGAN to enhance face. Default: False--half               Whether to use half precision during inference. Default: False--ext                Image extension. Options: auto | jpg | png, auto means using the same extension as inputs. Default: auto

anaconda环境基础操作

conda可以理解为一个工具,也是一个可执行命令,其核心功能是包管理和环境管理。包管理与pip的使用方法类似,环境管理则是允许用户方便滴安装不同版本的python环境并在不同环境之间快速地切换。

conda的设计理念

conda将几乎所有的工具、第三方包都当作package进行管理,甚至包括python 和conda自身。Anaconda是一个打包的集合,里面预装好了conda、某个版本的python、各种packages等。

1.安装Anaconda。

打开命令行输入conda -V检验是否安装及当前conda的版本。

2.conda常用的命令

(1)查看安装了哪些包

conda list

(2)查看当前存在哪些虚拟环境

conda env list
conda info -e

(3)检查更新当前conda

conda update conda

3.Python创建虚拟环境

conda create -n your_env_name python=x.x

anaconda命令创建python版本为x.x,名字为your_env_name的虚拟环境。your_env_name文件可以在Anaconda安装目录envs文件下找到

4.激活或者切换虚拟环境

打开命令行,输入python --version检查当前 python 版本。

Linux:  source activate your_env_nam
Windows: activate your_env_name

5.对虚拟环境中安装额外的包

conda install -n your_env_name [package]

6.关闭虚拟环境(即从当前环境退出返回使用PATH环境中的默认python版本)

deactivate env_name
或者`activate root`切回root环境
Linux下:source deactivate

7.删除虚拟环境

conda remove -n your_env_name --all

8.删除环境钟的某个包

conda remove --name $your_env_name  $package_name

9、设置国内镜像

http://Anaconda.org的服务器在国外,安装多个packages时,conda下载的速度经常很慢。清华TUNA镜像源有Anaconda仓库的镜像,将其加入conda的配置即可:

# 添加Anaconda的TUNA镜像

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

# TUNA的help中镜像地址加有引号,需要去掉

# 设置搜索时显示通道地址

conda config --set show_channel_urls yes

10、恢复默认镜像

conda config --remove-key channels

11、我的.condarc配置

channels:- defaults
show_channel_urls: true
channel_alias: http://mirrors.tuna.tsinghua.edu.cn/anaconda
default_channels:- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:conda-forge: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudmsys2: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudbioconda: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudmenpo: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudpytorch: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudsimpleitk: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

参考资料

xinntao/Real-ESRGAN: Real-ESRGAN aims at developing Practical Algorithms for General Image/Video Restoration. (github.com)

Pytorch深度学习实战教程(一):语义分割基础与环境搭建 (cuijiahua.com)

【语义分割】综述——一文搞定语义分割_ShuqiaoS的博客-CSDN博客

语义分割的数据集_蓬莱道人的博客-CSDN博客_小型语义分割数据集

Github下载速度慢 提升github下载速度最新解决方案 跟龟速说拜拜(持续更新 保证方案可行 建议收藏)_杀手的博客-CSDN博客_github下载加速

PIP 更换国内安装源_佛系程序员-CSDN博客_pip换源

Python 修改 pip 源为国内源 - 137point5 - 博客园 (cnblogs.com)

anaconda 完全卸载——重装_m0_46491438的博客-CSDN博客_如何重装anaconda

windows下的scoop的一些使用 - _已重置 - 博客园 (cnblogs.com)

Windows下Scoop安装、配置与使用_luoyooi的博客-CSDN博客_scoop

pip install 时 WARNING: No metadata found in e:\anaconda\lib\site-packages 问题解决_疯魔coding君的博客-CSDN博客

dows下的scoop的一些使用 - _已重置 - 博客园 (cnblogs.com)](https://www.cnblogs.com/godots/p/14802665.html)

Windows下Scoop安装、配置与使用_luoyooi的博客-CSDN博客_scoop

pip install 时 WARNING: No metadata found in e:\anaconda\lib\site-packages 问题解决_疯魔coding君的博客-CSDN博客

WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connec_球场书生的博客-CSDN博客

基于超分辨率重建算法的环境搭建相关推荐

  1. 【Pytorch】Pytorch深度学习实战教程:超分辨率重建AI与环境搭建

    一.基础开发环境搭建 1)cuda安装 需要根据自己的显卡的型号选择支持的CUDA版本 显卡驱动查看: 鼠标右键 CUDA安装版本查看:https://docs.nvidia.com/cuda/cud ...

  2. 图像超分辨率重建算法,让模糊图像变清晰(附数据和代码)

    一.  图像超分辨率重建概述 1. 概念 图像分辨率是一组用于评估图像中蕴含细节信息丰富程度的性能参数,包括时间分辨率.空间分辨率及色阶分辨率等,体现了成像系统实际所能反映物体细节信息的能力.相较于低 ...

  3. 毕业设计-基于深度学习的单幅图像超分辨率重建算法

    目录 前言 课题背景和意义 实现技术思路 一.超分辨率图像数据集 二.单幅图像超分辨率重建的研究 三.图像质量评估 实现效果图样例 最后 前言

  4. 超分辨率重建 matlab,基于Matlab的多图像超分辨率重建算法

    [实例简介] 多图像超分辨率的实现主要就是将具有相似而又不同却又互相补充信息的配准影像融到一起,得到非均匀采样的较高分辨率数据,复原需要亚像素精度的运动矢量场,然而它们之间的运动模型估计精确与否直接影 ...

  5. 一文掌握图像超分辨率重建(算法原理、Pytorch实现)——含完整代码和数据

    目录 一.  图像超分辨率重建概述 1. 概念 2. 应用领域 3. 研究进展 3.1 传统超分辨率重建算法 3.2 基于深度学习的超分辨率重建算法 二.  SRResNet算法原理和Pytorch实 ...

  6. 真实世界图像的超分辨率重建(一) 概述

    对于图像超分辨率重建算法而言,基本上已经发展到顶峰了.自2014年SRCNN首次将深度卷积神经网络应用在图像超分辨率重建上,一举击败了线性插值.最近邻插值.双三次插值等传统超分辨率方法以来,ESPCN ...

  7. 【数字图像处理3 】(上)图像超分辨率重建(SR)概述

    图像超分辨率重建 一.前言(废话时间) 二.扫盲知识 什么是 超分辨率重建? 兴起原因 三.传统超分辨率重建 1.基于插值的超分辨率重建 2.基于退化模型的超分辨率重建 3.基于学习的超分辨率重建 四 ...

  8. m基于POCS算法的空域序列图像超分辨率重建matlab仿真

    目录 1.算法仿真效果 2.MATLAB核心程序 3.算法涉及理论知识概要 4.完整MATLAB 1.算法仿真效果 matlab2022a仿真结果如下: 2.MATLAB核心程序 .......... ...

  9. 基于深度学习的图像超分辨率重建技术的研究

    1 超分辨率重建技术的研究背景与意义 图像分辨率是一组用于评估图像中蕴含细节信息丰富程度的性能参数,包括时间分辨率.空间分辨率及色阶分辨率等,体现了成像系统实际所能反映物体细节信息的能力.相较于低分辨 ...

最新文章

  1. 杭电 汉诺塔问题总结
  2. javascript中的表结构
  3. 学习笔记-----关于C++中类的成员函数可以访问私有成员的问题
  4. 《调制解调算法》专栏导航贴
  5. asp.net 导出word excel 当前上下文中不存在名称“Encoding”报错问题
  6. java 获取子类实际的类型名_Java 泛型类 以及 泛型类获取子类的具体参数类型 以及 获取子类型具体参数的实例...
  7. win7 远程桌面 复制粘贴
  8. 【LeetCode】【HOT】104. 二叉树的最大深度(BFS+队列/递归)
  9. Tokyo Tyrant优势
  10. usb驱动修复_win10 1903 5月29号的质量更新修复了哪些问题?
  11. easyexcel导出excel文件之图片导出
  12. 蜗居(露骨争议电视剧《蜗居》...
  13. AV1代码学习:encoder_encode函数
  14. 【小程序源码】宝宝起名神器
  15. 真正了解@font face里font-weight的作用
  16. 使用ManagedWifi连接无线网络
  17. 俞敏洪:忍受孤独,失败,屈辱的能力是成就大业的必备条
  18. 成都远石:“无人机倾斜摄影+地面激光扫描”数据解决方案
  19. C# 在Windows系统下使用蓝牙进行数据通讯
  20. android4.1动态壁纸,Android 4.1 设置默认开机动态壁纸

热门文章

  1. DevExpress 编译成功的 dll
  2. 笔记:caffe ssd gpu训练自己的数据集
  3. 【面经】广发银行软件开发岗面经
  4. 使用指针实现atoi函数
  5. [Python从零到壹] 五十六.图像增强及运算篇之图像平滑(中值滤波、双边滤波)
  6. Android适配手机与平板屏幕尺寸
  7. Unity 物理系统
  8. 运维常见软件工具注册码或序列号记录
  9. mysql后台密码_mysql怎么改网站后台密码
  10. 业务系统里的Office文档如何在线编辑