RTX5060显卡torch和torch_radon库安装避坑指南(仅linux系统)

如果是windows系统的小伙伴们可以使用Windows下的linux子系统wsl,其安装教程链接为b站这位大佬的,可以给佬点点赞:【WSL2超详细安装教程!全程安装到非系统盘,彻底解放C盘|AI开发必备】 https://www.bilibili.com/video/BV1zC5X69EyS/?share_source=copy_web\&vd_source=ef1e465101dff34017c032a7246ac79a

1.miniconda安装教程

1.miniconda下载链接:Download Success | Anaconda,选择下图中的Miniconda进行下载,我选的x86

2.把这个安装包放到自己指定的目录下,并在该目录下打开终端,输入以下命令 :

bash 复制代码
bash Miniconda3-latest-Linux-x86_64.sh

3.过程中先yes,然后ENTER,最后一步询问先yes再ENTER

4.输入以下命令,conda就配置好了

bash 复制代码
source ~/.bashrc

5.对conda的channels进行换源,输入以下命令打开.condarc文件

bash 复制代码
nano ~/.condarc

6.将以下内容黏贴到该文件,点击ctrl+x,再点击y,再ENTER:

bash 复制代码
channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
  - defaults
show_channel_urls: true

2.创建并配置新的虚拟环境

1.先输入以下命令创建新环境,我将其命名为ct,python版本为3.10,大家可以想其他名字,而且python版本最好不要低于3.10,然后出现y/n点y就行

bash 复制代码
conda create -n ct python=3.10

2.给conda安装pip包,输入以下命令

bash 复制代码
conda install pip

3.大坑来了!!大家千万不要使用conda来安装torch和torchvision,直接使用pip,并且要带上torch和torchvision的版本号**,此处我选用的是torch==2.12.0,torchvision==0.27.0,为啥不能用conda,因为torch和torchvision的dev号间隔了一天,所以直接使用conda会有问题**

bash 复制代码
pip install -i https://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com torch==2.12.0 torchvision==0.27.0

4.torch_radon安装:这一步同样容易出错,很多人直接pip install,这是错误的,pypi版本的由于没有积极维护,RTX5060无法兼容,所以需要使用carterbox-torch-radon,输入以下命令即可:carterbox-torch-radon - conda-forge | Anaconda.org

bash 复制代码
conda install conda-forge::carterbox-torch-radon

5.然后使用命令测试看torch_radon是否安装成功以及cuda能否使用:

python 复制代码
import torch
import torch_radon as tr
import numpy as np

DEVICE = torch.device("cuda")

print("Torch:", torch.__version__)
print("CUDA:", torch.cuda.is_available())

IMG_SIZE = 256
N_ANGLES = 180

img = np.random.rand(IMG_SIZE, IMG_SIZE).astype(np.float32)

img_tensor = (
    torch.from_numpy(img)
    .unsqueeze(0)
    .unsqueeze(0)
    .to(DEVICE)
)

angles = torch.linspace(
    0,
    np.pi,
    N_ANGLES,
    device=DEVICE
)

radon = tr.ParallelBeam(
    IMG_SIZE,
    angles
)

print("Forward ...")

sinogram = radon.forward(img_tensor)

print("Sinogram shape:", sinogram.shape)
print("Device:", sinogram.device)

print("Backward ...")

recon = radon.backward(sinogram)

print("Recon shape:", recon.shape)
print("Device:", recon.device)

print("SUCCESS")
相关推荐
用户83562907805119 小时前
Python 实现 PDF 文件加密与解密方法
后端·python
用户83562907805119 小时前
使用 Python 冻结与拆分 Excel 窗格教程
后端·python
你好潘先生1 天前
别再记命令了,用 yeero do 说句人话就能跑脚本,而且不烧 token
服务器·python·命令行
Agent_大师1 天前
WebSocket 行情重连成功,K线缺口不会自动消失
python
荣码1 天前
LLM结构化输出:让AI返回JSON而不是废话,我踩了4个坑
java·python
copyer_xyf1 天前
FastAPI 如何连接 MySQL
后端·python
orion572 天前
Missing Semester Class1:course overview and introduction of shell
linux
apocelipes2 天前
常用编程语言和库的正则表达式性能对比
c语言·c++·python·性能优化·golang·开发工具和环境
用户8356290780512 天前
使用 Python 在 PDF 中创建与管理书签
后端·python
用户120487221612 天前
Linux驱动编译与加载
linux·嵌入式