|
哇!恭喜你!RTX 5090(假设是基于Blackwell架构的顶级消费级GPU)是一台绝对的性能猛兽,对于无人机目标跟踪这类计算机视觉研究来说,简直是如虎添翼。在Ubuntu系统下,你需要搭建一个高效、稳定、专为深度学习设计的工作环境。
作为你的专家顾问,我为你规划一个详细的搭建路线图。请一步步跟着操作。
### 第一阶段:系统准备与驱动安装(打好地基)
你的Ubuntu系统可能已经预装了NVIDIA驱动,但我们最好确认并更新到最适合的版本。
1. **更新系统:**
打开终端(`Ctrl+Alt+T`),首先更新软件包列表。
```bash
sudo apt update && sudo apt upgrade -y
```
2. **确认和安装NVIDIA驱动:**
* **检查当前驱动:**
```bash
nvidia-smi
```
如果这个命令能运行并显示出GPU信息,说明驱动已安装。但为了兼容最新的CUDA,我们可能需要特定版本的驱动。
* **安装推荐驱动(方法一:使用Ubuntu附加驱动):**
打开“软件和更新” -> “附加驱动”选项卡。系统会自动检测可用的驱动版本。选择一个带有“**proprietary, tested**”(专有、已测试)标签的**最新版本**驱动,应用更改并**重启**。
* **安装推荐驱动(方法二:命令行):**
```bash
# 查看推荐驱动版本
ubuntu-drivers devices
# 安装所有推荐驱动(通常会包括最新的)
sudo ubuntu-drivers autoinstall
# 重启
sudo reboot
```
* **再次验证:**
重启后,再次运行 `nvidia-smi`。你应该能看到RTX 5090的详细信息,包括驱动版本和CUDA版本(注意:这里显示的CUDA版本是驱动支持的**最高**CUDA版本,并非你已安装的)。
### 第二阶段:安装CUDA和cuDNN(核心工具包)
这是深度学习的心脏,必须安装正确。
1. **安装CUDA Toolkit:**
* 访问NVIDIA CUDA官网([https://developer.nvidia.com/cuda-toolkit](https://developer.nvidia.com/cuda-toolkit))。
* 选择适合你Ubuntu版本的安装方式(推荐使用`runfile [local]`方式,控制更灵活)。
* 按照官网给出的指令安装。**关键一步**:在安装选项中,**取消勾选Driver**!因为你已经装好了驱动,只需安装CUDA Toolkit本身。
* **配置环境变量**:安装完成后,将CUDA路径添加到你的`~/.bashrc`文件中。
```bash
echo 'export PATH=/usr/local/cuda/bin PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda/lib64 LD_LIBRARY_PATH' >> ~/.bashrc
# 使配置立即生效
source ~/.bashrc
```
* **验证CUDA**:
```bash
nvcc -V
```
此命令应输出你刚安装的CUDA编译器版本。
2. **安装cuDNN:**
cuDNN是深度神经网络的GPU加速库。
* 访问NVIDIA cuDNN官网([https://developer.nvidia.com/cudnn](https://developer.nvidia.com/cudnn))并下载(需要注册账号)。**下载版本必须与你的CUDA版本严格匹配**(例如,CUDA 12.x 就找对应CUDA 12.x的cuDNN)。
* 下载后,按照官方指南安装(通常是解压后复制文件到CUDA目录)。
```bash
# 假设你下载的包叫 cudnn-linux-x86_64-8.x.x.x_cudaX.Y-archive.tar.xz
tar -xvf cudnn-linux-x86_64-8.x.x.x_cudaX.Y-archive.tar.xz
sudo cp cudnn-*-archive/include/cudnn*.h /usr/local/cuda/include
sudo cp -P cudnn-*-archive/lib/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
```
### 第三阶段:创建Python虚拟环境并安装PyTorch(构建工作区)
使用`conda`或`venv`来管理你的项目环境,避免包版本冲突。
1. **安装Miniconda(推荐):**
```bash
wget https://repo.anaconda.com/minico ... est-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh
# 按照提示安装,完成后重启终端或运行 `source ~/.bashrc`
```
2. **创建并激活一个专门的虚拟环境:**
```bash
conda create -n drone-tracking python=3.10 -y
conda activate drone-tracking
```
(`drone-tracking`是你的环境名,可以自定义)
3. **安装PyTorch(带CUDA支持):**
* **这是最关键的一步**。前往PyTorch官网([https://pytorch.org/get-started/locally/](https://pytorch.org/get-started/locally/))。
* 选择你的配置(OS: Linux, Package: `pip` 或 `conda`, Language: Python, CUDA: 匹配你刚安装的版本,例如12.1)。
* 网站会生成一条安装命令,复制并在你的`drone-tracking`环境中运行它。例如:
```bash
# 例如,用于CUDA 12.1的pip命令
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
```
4. **验证PyTorch能否识别GPU:**
在激活的虚拟环境中,运行Python并输入:
```python
import torch
print(torch.__version__) # 打印PyTorch版本
print(torch.cuda.is_available()) # 应输出 True
print(torch.cuda.get_device_name(0)) # 应输出 'NVIDIA GeForce RTX 5090'
x = torch.rand(5, 3).cuda() # 在GPU上创建一个张量
print(x)
```
如果一切顺利,恭喜你!你的深度学习环境已经就绪。
### 第四阶段:安装领域相关库与工具(装备你的武器库)
在你的`drone-tracking`环境中,安装研究所需的库:
```bash
# 基础计算机视觉库
pip install opencv-python matplotlib scikit-image scikit-learn
# 深度学习工具链
pip install tensorboard
# 常用的工具
pip install tqdm numpy pandas
# 版本管理/项目管理
pip install wandb # 可选:Weights & Biases,一个非常好的实验跟踪工具
# 对于目标跟踪,强烈建议从源码安装一些开源库来学习
# 1. 安装MMCV(OpenMMLab的基础)
pip install -U openmim
mim install mmengine
mim install "mmcv>=2.0.0"
# 2. 克隆并安装MMTracking(可选,但极其推荐)
git clone https://github.com/open-mmlab/mmtracking.git
cd mmtracking
pip install -v -e .
# -e 代表以可编辑模式安装,这样你修改源码后能直接生效
```
### 第五阶段:测试与跑通第一个Demo
现在,用你的RTX 5090来感受一下飞驰的速度!
1. **下载一个经典跟踪模型(如SiamRPN)的预训练权重。**
2. **找一个视频或使用你的摄像头。**
3. **运行MMTracking或pysot库中的demo脚本。**
你会看到目标跟踪的实时效果,并且通过`nvidia-smi -l 1`命令实时监控GPU利用率,你会发现你的5090可能才用了不到10%的功力——这意味着你有巨大的空间去跑更复杂的模型和更大的批量大小(Batch Size)。
### 总结与建议
* **稳定性第一**:不要盲目追求最新版本的CUDA/PyTorch,选择经过社区验证的稳定组合。PyTorch官网推荐的配对是最安全的选择。
* **环境隔离**:为每个新项目创建新的conda环境,避免依赖地狱。
* **善用开源**:多研究MMTracking、pysot等优秀开源项目的代码结构、配置文件和训练流程,这是最好的学习材料。
* **备份系统**:在配置好这个完美的环境后,可以考虑使用` Timeshift`等工具对系统进行备份,以后出问题了可以快速恢复。
现在,你的终极武器已经淬火开刃,是时候开始你的无人机目标跟踪研究之旅了!祝你科研顺利,多发顶会!有任何问题,随时再来问我。 |
|