RetinaFace模型在VMware虚拟机中的开发环境配置
想在本地电脑上跑RetinaFace人脸检测模型,但又不想折腾复杂的Linux系统或担心搞乱自己的主环境?用VMware虚拟机是个绝佳的选择。它就像在你的Windows或macOS电脑里,单独划出一个“小房间”,让你在里面安心搭建Linux开发环境,随便折腾,完全不影响外面的系统。
今天这篇教程,我就手把手带你走一遍在VMware虚拟机里,从零开始搭建RetinaFace开发环境的完整流程。我们会重点解决几个关键问题:怎么让虚拟机里的Linux系统也能用上你电脑的独立显卡(GPU穿透),怎么方便地在虚拟机和主机之间传文件(共享文件夹),以及怎么安装所有必需的开发工具。整个过程力求清晰,让你跟着做就能跑通。
1. 准备工作:安装VMware与Linux镜像
在开始配置RetinaFace之前,我们需要先把“小房间”建好,也就是安装好虚拟机软件和操作系统。
1.1 获取VMware Workstation Player
首先,你需要一个虚拟机软件。VMware Workstation Player是个人免费使用的,非常适合学习和开发。去VMware官网下载对应你电脑系统(Windows或Linux)的安装包,然后像安装普通软件一样完成安装即可。
1.2 选择并下载Linux发行版
对于深度学习开发,Ubuntu是一个被广泛支持且社区资源丰富的选择。建议下载Ubuntu 20.04 LTS或Ubuntu 22.04 LTS的桌面版ISO镜像文件。LTS版本意味着长期支持,更稳定。你可以从Ubuntu官网直接下载。
1.3 创建新的虚拟机
打开安装好的VMware Workstation Player,点击“创建新虚拟机”。
- 安装来源:选择你下载好的Ubuntu ISO镜像文件。
- 简易安装:勾选“简易安装”,这会自动帮你设置用户名、密码和主机名,省去安装过程中的手动配置。
- 虚拟机命名和位置:给你的虚拟机起个名字,比如“RetinaFace-Dev”,并选择一个有足够空间的磁盘位置来存放虚拟机文件。
- 指定磁盘容量:建议分配至少50GB的磁盘空间。选择“将虚拟磁盘拆分成多个文件”,这样迁移和备份会更灵活。
- 自定义硬件(关键步骤):在完成创建前,点击“自定义硬件”按钮。
- 内存:根据你主机内存大小,分配给虚拟机至少8GB(8192MB),如果主机内存充裕,分配12GB或16GB体验会更流畅。
- 处理器:分配至少2个核心,4个更佳。
- 网络适配器:选择“NAT模式”,这样虚拟机可以共享主机的网络上网,同时拥有独立的内部IP。
- 显示器:保持默认即可。
- 最重要的是,在这里先不要关闭窗口,我们下一步要配置GPU。
完成这些后,先不要点“完成”,我们接着进行最关键的GPU配置。
2. 核心步骤:配置GPU穿透(PCIe Passthrough)
要让RetinaFace这类深度学习模型在虚拟机里也能利用GPU进行加速计算,必须将主机的物理GPU直接“穿透”给虚拟机使用。这是整个配置中最核心的一步。
重要前提:你的CPU和主板需要支持虚拟化技术(如Intel VT-d或AMD-Vi),并且需要在主机BIOS中开启这些功能。请先自行搜索你的电脑型号如何开启虚拟化支持。
在刚才的“自定义硬件”窗口中:
- 点击左侧的**“添加”**按钮。
- 在弹出的硬件类型列表中,选择**“PCI设备”**,然后点击“完成”。
- 这时,在硬件列表里会出现一个新的“PCI设备”。选中它,在右侧的详细面板中,你会看到一个下拉列表,里面列出了你主机上的PCI设备(主要是显卡)。
- 从列表中找到你的独立显卡(NVIDIA GeForce RTX系列或AMD Radeon系列)。请注意,不要选择集成显卡,通常它显示为Intel UHD Graphics或AMD Radeon Vega。选择你的独立显卡。
- 勾选“所有功能”相关的选项(如果存在),确保GPU的所有功能都能被虚拟机识别。
- 配置完成后,关闭自定义硬件窗口,并完成虚拟机的创建。
首次启动与安装:现在,启动虚拟机。由于我们使用了“简易安装”并提供了ISO,VMware会自动开始安装Ubuntu系统。整个过程无需干预,安装完成后会自动重启进入桌面。用你之前设置的用户名密码登录。
3. 基础环境搭建:安装VMware Tools与共享文件夹
系统装好了,我们先来提升虚拟机的使用体验,特别是解决文件传输问题。
3.1 安装VMware Tools (Open VM Tools)
VMware Tools能提供更好的显示性能、鼠标集成和剪贴板共享。在Ubuntu虚拟机中,安装开源版本即可。 打开终端(Ctrl+Alt+T),输入以下命令:
sudo apt update sudo apt install open-vm-tools-desktop -y安装完成后,重启虚拟机以使所有功能生效。
3.2 设置共享文件夹
共享文件夹让你能在主机和虚拟机之间无缝拖放或访问文件。
- 在VMware中设置:先关闭虚拟机电源。在VMware主界面,选中你的虚拟机,点击“编辑虚拟机设置”。在“选项”标签页中,选择“共享文件夹”。将其设置为“总是启用”,然后点击“添加”按钮,按照向导选择一个你主机上的文件夹(例如
D:\VM_Share)作为共享目录,并给它起一个在虚拟机内看到的名称(如host_share)。 - 在虚拟机中挂载:启动虚拟机并登录。共享文件夹通常会自动挂载到
/mnt/hgfs/目录下。你可以打开文件管理器,查看该目录下是否有你命名的文件夹(如host_share)。 如果没看到,可以手动挂载:
为了方便,你可以将它添加到桌面快捷方式,或者创建一个软链接到你的家目录:sudo vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other -o uid=1000 -o gid=1000ln -s /mnt/hgfs/host_share ~/Desktop/SharedFromHost
4. 开发环境配置:安装NVIDIA驱动与CUDA
现在进入深度学习环境配置的正题。我们需要在Ubuntu虚拟机内安装GPU驱动和CUDA工具包。
4.1 安装NVIDIA显卡驱动
由于我们使用了GPU穿透,虚拟机内的Ubuntu会直接识别到你的物理显卡。我们通过系统仓库安装推荐驱动。
- 更新软件包列表并安装驱动安装工具:
sudo apt update sudo apt install ubuntu-drivers-common -y - 检查可用的驱动版本并安装推荐版本:
ubuntu-drivers devices sudo apt install nvidia-driver-535 -y # 这里`535`替换为上一命令推荐版本号 - 安装完成后,重启虚拟机。
- 重启后,在终端输入
nvidia-smi。如果看到显卡信息表格,说明驱动安装成功,GPU已被正确识别。
4.2 安装CUDA工具包
CUDA是NVIDIA的并行计算平台。我们使用网络安装方式。
- 访问NVIDIA CUDA Toolkit官网,选择适合你Ubuntu版本的runfile(本地)安装方式。例如,对于Ubuntu 22.04,你可以选择CUDA 12.x。
- 根据官网提供的指令,在终端中执行类似下面的命令(具体版本号和链接请以官网为准):
wget https://developer.download.nvidia.com/compute/cuda/12.4.0/local_installers/cuda_12.4.0_550.54.14_linux.run sudo sh cuda_12.4.0_550.54.14_linux.run - 在安装界面中,通过回车键取消驱动安装(因为我们已经装好了),只选中CUDA Toolkit,然后继续安装。
- 安装完成后,需要将CUDA路径添加到环境变量。编辑你的
~/.bashrc文件:
在文件末尾添加:nano ~/.bashrc
保存退出后,执行export PATH=/usr/local/cuda/bin:$PATH export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATHsource ~/.bashrc使配置生效。运行nvcc --version验证CUDA安装。
4.3 安装cuDNN
cuDNN是深度神经网络加速库。你需要注册NVIDIA开发者账号并下载对应CUDA版本的cuDNN Library for Linux。 下载后,通常是.tar.xz文件,在终端中解压并复制文件到CUDA目录:
tar -xvf cudnn-linux-x86_64-8.x.x.x_cuda12-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*5. Python环境与RetinaFace项目部署
最后一步,我们创建独立的Python环境并拉取RetinaFace代码。
5.1 安装Miniconda与创建环境
使用Conda管理环境可以避免包冲突。
- 下载并安装Miniconda:
按照提示安装,安装完成后重启终端或执行wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh bash Miniconda3-latest-Linux-x86_64.shsource ~/.bashrc。 - 创建一个名为
retinaface的Python环境(这里用Python 3.8,一个兼容性较好的版本):conda create -n retinaface python=3.8 -y conda activate retinaface
5.2 安装PyTorch与依赖
根据你的CUDA版本,在PyTorch官网获取安装命令。例如,对于CUDA 12.1:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121然后安装一些通用依赖:
pip install opencv-python pillow numpy matplotlib scipy5.3 克隆与运行RetinaFace
现在可以获取RetinaFace的代码了。一个流行的PyTorch实现是biubug6/pytorch_retinaface。
- 克隆仓库:
cd ~ git clone https://github.com/biubug6/Pytorch_Retinaface.git cd Pytorch_Retinaface - 根据仓库的
README.md,你可能需要下载预训练模型权重(.pth文件)放到指定目录。 - 尝试运行一个简单的测试脚本,验证环境是否工作。例如,仓库通常提供
test.py或detect.py。你需要准备一张测试图片(可以从共享文件夹放进来):
如果一切顺利,你会在当前目录下看到生成的结果图片python detect.py --image_path ./test_image.jpg --save_path ./output.jpgoutput.jpg,上面画出了检测到的人脸框和关键点。
6. 总结与后续建议
走完这一整套流程,你应该已经成功在VMware虚拟机里搭建好了一个可以跑RetinaFace的完整开发环境。回顾一下,最关键的三步是:正确配置GPU穿透让虚拟机获得显卡算力、安装合适的NVIDIA驱动和CUDA套件、以及用Conda管理一个干净的Python环境。
实际用起来,这个环境的好处很明显。你可以在里面大胆尝试各种库的安装和卸载,不用担心影响主机系统。通过共享文件夹,数据和代码的交换也变得非常方便。如果某天环境被不小心搞乱了,最简单粗暴的办法就是删掉这个虚拟机,然后用我们配置好的这个虚拟机文件做个备份,下次直接复制一份就能快速恢复到一个干净可用的状态。
接下来,你可以深入RetinaFace的代码,尝试用自己的图片或视频进行检测,或者学习如何在自己的数据集上训练模型。虚拟机这个“沙盒”给了你充足的探索空间。
获取更多AI镜像
想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。