Linux系统安装PaddleDetection

news2025/5/10 1:23:11

一、安装cuda

1. 查看设备

先输入nvidia-smi,查看设备支持的最大cuda版本,选择官网中支持的cuda版本

https://www.paddlepaddle.org.cn/install/quick?docurl=/documentation/docs/zh/install/conda/linux-conda.html

2. 下载CUDA并安装

使用快捷键Ctrl+Alt+t打开终端,先输入nvcc -V,查看cuda版本

CUDA下载地址:http://​ https://developer.nvidia.com/cuda-toolkit-archive ​

在终端输入cat /proc/version查看设备ubuntu版本号

根据设备版本选择合适的cuda版本

选择后根据下方Installation Instructions的内容在终端输入这两行内容

第一条语句进行下载

第二条语句进行安装,选择Continue

输入accept,按回车键

在这之前可以在终端输入nvcc -V,查看cuda版本。如果没有其他版本,这步中则直接选择“Install”进行安装,如果安装了其他版本,则在Driver处按回车键,把“Driver”勾选去掉,再进行安装。

若已有安装过的版本,出现如下界面,选择yes

安装成功界面如下

3. 环境配置

终端输入vim ~/.bashrc ,出现如下界面后按回车键,进入配置

按一次回车键,按字母i进入编辑,输入如图三条语句,然后按Esc健进入最后一行,输入:wq按回车键退出。终端输入source ~/.bashrc  使之生效

终端输入nvcc -V测试是否安装成功,安装成功后会出现如下信息

二、下载cudnn并安装

根据飞浆官网中下方要求的cuda和cudnn对应版本下载相应的cudnnhttps://www.paddlepaddle.org.cn/install/quick?docurl=/documentation/docs/zh/install/conda/linux-conda.html

CUDNN下载地址:https://developer.nvidia.com/rdp/cudnn-archive

进入后需要账号密码,未注册的需要注册一个nvidia账号,登录后会出现所有版本的信息。

根据你前边下载的cuda版本,选择对应的cudnn版本,若没有具体的cudnn版本,例如cuda11.7,则选择cuda11.x

点击后,下方选择适合的设备版本

下载后会找到该压缩包,在终端进入该文件夹所存位置通过该命令解压缩
tar xf cudnn-linux-x86_64-8.9.3.28_cuda11-archive.tar.xz
解压后形成该文件夹,将该文件夹放在和cuda同一目录中,可将该文件夹改名为cudnn18,方便后续输入命令以及查找

改名后输入如下命令,将cudnn中内容复制到cuda中

sudo cp cudnn-11.7/include/cudnn*.h /usr/local/cuda/include

sudo cp -P cudnn-11.7/lib/libcudnn* /usr/local/cuda/lib64

修改权限:

sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*

通过以下命令查看CUDNN信息并测试是否成功:

cat /usr/local/cuda/include/cudnn_version.h

成功界面如下:

    三、安装PaddlePaddle

    终端输入vim  ~/.condarc

    按字母i键进入编辑环境,更改为如下语句,然后按Esc键并输入:wq保存退出

    (1)在github官网上进行下载:PaddleDetection,下载后在pycharm中打开该项目

    (2)在pycharm终端输入conda create -n paddle_env python=3.9,创建Anaconda虚拟环境。创建虚拟环境首先根据Python的具体版本创建Anaconda虚拟环境。PaddlePaddle的Anaconda安装支持Python 3.7 - 3.11版本。

    (3)在pycharm环境中找到设置,并选择该项目的配置,打开python interpreter。选择show all,点击+号,选择Add Local Interpreter...,选择Conda Environment,选择Use existing environment,在第三个步骤中选择刚创建的paddle_env环境,然后一路按OK键,配置好环境

    (4)接着输入conda activate paddle_env进入Anaconda虚拟环境

    输入python -V查看是否搭建成功python环境

    确认 Python 和 pip 是 64bit,并且处理器架构是 x86_64(或称作 x64、Intel 64、AMD64)架构。下面的第一行输出的是”64bit”,第二行输出的是”x86_64(或 x64、AMD64)”即可:

    python3 -c "import platform;print(platform.architecture()[0]);print(platform.machine()"

    输入nvcc -V查看在终端安装的cuda版本是否正确

    (5)NCCL安装

    到官网中下载符合的版本:https://developer.nvidia.com/login

    终端进入到刚下文件的路径中,输入如下命令

    sudo dpkg -i nccl-repo-<version>.deb 例如:

    sudo dpkg -i nccl-local-repo-ubuntu2204-2.14.3-cuda11.7_1.0-1_amd64.deb

    更新APT数据库,输入如下命令sudo apt update

    安装APT的libnccl2包,输入如下命令sudo apt install libnccl2 libnccl-dev

    终端输入vim ~/.bashrc,出现如下界面按回车键

    出现如下界面,按字母i键,进入编辑,添加如下语句,按Esc键,输入:wq!保存退出,退出后输入source ~/.bashrc使文件的配置生效

    到paddledetection官网中查看符合cuda以及cudnn版本的paddlepaddle下载命令

    https://www.paddlepaddle.org.cn/en/install/quick?docurl=/documentation/docs/zh/install/conda/linux-conda_en.html

    pycharm环境终端输入conda install paddlepaddle-gpu==2.5.1 cudatoolkit=11.7 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/Paddle/ -c conda-forge

    有选择的地方输入y,安装成功界面如下

    输入如下命令python3;import paddle;paddle.utils.run_check()若出现PaddlePaddle is installed successfully!则paddlepaddle安装成功

    四、安装paddledetection

    进入到paddledetection环境中,配置各种包,输入pip install -r requirements.txt

    配置好后的结果如下

    编译安装paddledet,输入语句python setup.py install

    测试环境:

    安装后确认测试通过:

    python ppdet/modeling/tests/test_architectures.py

    测试通过后会提示如下信息:

    本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2371932.html

    如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

    相关文章

    【漫话机器学习系列】239.训练错误率(Training Error Rate)

    机器学习基础概念 | 训练错误率&#xff08;Training Error Rate&#xff09;详解 在机器学习模型训练过程中&#xff0c;评估模型性能是至关重要的一个环节。其中&#xff0c;训练错误率&#xff08;Training Error Rate&#xff09; 是最基础也最重要的性能指标之一。 本文将…

    OpenCV 图形API(80)图像与通道拼接函数-----仿射变换函数warpAffine()

    操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 对图像应用仿射变换。 函数 warpAffine 使用指定的矩阵对源图像进行变换&#xff1a; dst ( x , y ) src ( M 11 x M 12 y M 13 , M 21 x M…

    数据结构与算法:图论——最短路径

    最短路径 先给出一些leetcode算法题&#xff0c;以后遇见了相关题目再往上增加 最短路径的4个常用算法是Floyd、Bellman-Ford、SPFA、Dijkstra。不同应用场景下&#xff0c;应有选择地使用它们&#xff1a; 图的规模小&#xff0c;用Floyd。若边的权值有负数&#xff0c;需要…

    提示词工程:通向AGI时代的人机交互艺术

    ‌引言&#xff1a;从基础到精通的提示词学习之旅‌ 欢迎来到 ‌"AGI时代核心技能"‌ 系列课程的第二模块——‌提示词工程‌。在这个模块中&#xff0c;我们将系统性地探索如何通过精心设计的提示词&#xff0c;释放大型语言模型的全部潜力&#xff0c;实现高效、精…

    是更换Window资源管理器的时候了-> Files-community/Files

    Files • 主页https://files.community/ 它已经做到了 云盘文件集成、标签页和多种布局、丰富的文件预览…… 您想要的一切现代文件管理器的强大功能&#xff0c; Files 都能做到。 概述 Files 是一个现代文件管理器&#xff0c;可帮助用户组织他们的文件和文件夹。Files 的…

    基于windows安装MySQL8.0.40

    基于windows安装MySQL8.0.40 基于windows 安装 MySQL8.0.40&#xff0c;解压文件到D:\mysql-8.0.40-winx64 在D:\mysql-8.0.40-winx64目录下创建my.ini文件&#xff0c;并更新一下内容 [client] #客户端设置&#xff0c;即客户端默认的连接参数 # 设置mysql客户端连接服务…

    【Vue】组件自定义事件 TodoList 自定义事件数据传输

    目录 一、绑定 二、解绑 组件自定义事件总结 TodoList案例对数据传输事件的修改 总结不易~ 本章节对我有很大收获&#xff0c; 希望对你也是&#xff01;&#xff01;&#xff01; 本章节素材已上传Gitee&#xff1a;yihaohhh/我爱Vue - Gitee.com 前面我们学习的clikc、…

    基于Centos7的DHCP服务器搭建

    一、准备实验环境&#xff1a; 克隆两台虚拟机 一台作服务器&#xff1a;DHCP Server 一台作客户端&#xff1a;DHCP Clinet 二、部署服务器 在网络模式为NAT下使用yum下载DHCP 需要管理员用户权限才能下载&#xff0c;下载好后关闭客户端&#xff0c;改NAT模式为仅主机模式…

    LabVIEW超声波液位计检定

    在工业生产、运输和存储等环节&#xff0c;液位计的应用十分广泛&#xff0c;其中超声波液位计作为非接触式液位测量设备备受青睐。然而&#xff0c;传统立式水槽式液位计检定装置存在受建筑高度影响、量程范围受限、流程耗时长等问题&#xff0c;无法满足大量程超声波液位计的…

    [STM32] 4-2 USART与串口通信(2)

    文章目录 前言4-2 USART与串口通信(2)数据发送过程双缓冲与连续发送数据发送过程中的问题 数据接收过程TXE标志位&#xff08;发送数据寄存器空&#xff09;TC标志位&#xff08;发送完成标志位&#xff09;单个数据的发送数据的连续发送 接收过程中遇到的问题问题描述&#xf…

    基于Python+MongoDB猫眼电影 Top100 数据爬取与存储

    前言&#xff1a;从猫眼电影排行榜页面&#xff08;TOP100榜 - 猫眼电影 - 一网打尽好电影 &#xff09;爬取 Top100 电影的电影名称、图片地址、主演、上映时间和评分等关键信息&#xff0c;并将这些信息存储到本地 MongoDB 数据库中&#xff0c;&#x1f517; 相关链接Xpath&…

    Ubuntu 单机多卡部署脚本: vLLM + DeepSeek 70B

    # 部署脚本&#xff1a;Ubuntu vLLM DeepSeek 70B # 执行前请确保&#xff1a;1. 系统为 Ubuntu 20.04/22.04 2. 拥有NVIDIA显卡(显存≥24G) # 保存两个文件 1 init.sh 初始化 2、test.sh 测试 # init.sh #!/bin/bash # 系统更新与基础依赖sudo apt update && s…

    为了摸鱼和吃瓜,我开发了一个网站

    平时上班真的比较累&#xff0c;摸鱼和吃瓜还要跳转多个平台的话&#xff0c;就累上加累了。 所以做了一个聚合了全网主流平台热搜的网站。 目前市面上确实有很多这种网站了&#xff0c;所以目前最主要有两点和他们不同&#xff1a; 给热搜列表增加了配图&#xff0c;刷的时候…

    Webug4.0靶场通关笔记11- 第15关任意文件下载与第16关MySQL配置文件下载

    目录 一、文件下载 二、第15关 任意文件下载 1.打开靶场 2.源码分析 3.渗透实战 三、第16关 MySQL配置文件下载 1.打开靶场 2.源码分析 3.渗透实战 &#xff08;1&#xff09;Windows系统 &#xff08;2&#xff09;Linux系统 四、渗透防御 一、文件下载 本文通过…

    k8s监控方案实践(一):部署Prometheus与Node Exporter

    k8s监控方案实践&#xff08;一&#xff09;&#xff1a;部署Prometheus与Node Exporter 文章目录 k8s监控方案实践&#xff08;一&#xff09;&#xff1a;部署Prometheus与Node Exporter一、Prometheus简介二、PrometheusNode Exporter实战部署1. 创建Namespace&#xff08;p…

    具身系列——比较3种vpg算法方式玩CartPole游戏(强化学习)

    文档1方式参考&#xff1a;https://gitee.com/chencib/ailib/blob/master/rl/vpg_baseline_cartpole.py 文档2方式参考&#xff1a;https://gitee.com/chencib/ailib/blob/master/rl/vpg_batchupdate_cartpole.py 文档3方式参考&#xff1a;https://gitee.com/chencib/ailib/bl…

    面向未来的 TCP 协议设计:可扩展与兼容并存

    目录 1.设计思路 &#xff08;1&#xff09;完整数据结构&#xff08;字节布局&#xff09; 1&#xff09;字段解释&#xff1a; 2&#xff09;Flags字段设计&#xff08;1字节位图&#xff09; &#xff08;2&#xff09;进阶版 Java 解码器实现&#xff08;示例&#xf…

    LSB图像信息隐藏系统(MATLAB)

    图像信息隐藏系统 系统概述 图像信息隐藏系统是一个基于MATLAB开发的图像隐写工具&#xff0c;采用自适应LSB&#xff08;最低有效位&#xff09;隐写算法&#xff0c;实现了信息在图像中的隐藏与提取功能。系统配备了直观的图形用户界面&#xff0c;支持图像分析、信息隐藏、…

    C++GO语言微服务项目之 go语言基础语法

    目录 01 变量定义 02 自增语法 03 指针 04 go不支持的语法 05 string 06 定长数组-forrange 07 动态数组追加元素 08 切片截取-copy-make介绍 09 map介绍 10 函数 11 内存逃逸 12 import 13 命令行参数-switch 14 标签与continue-goto-break配合使用 15 枚举cons…

    最新字节跳动运维云原生面经分享

    继续分享最新的go面经。 今天分享的是组织内部的朋友在字节的go运维工程师岗位的云原生方向的面经&#xff0c;涉及Prometheus、Kubernetes、CI/CD、网络代理、MySQL主从、Redis哨兵、系统调优及基础命令行工具等知识点&#xff0c;问题我都整理在下面了 面经详解 Prometheus …