Ubuntu 23.10:内网安装rapidocr_paddle(GPU)及其前置准备

Ubuntu 23.10:内网安装rapidocr_paddle(GPU)及其前置准备 – WhiteNight's Site

标签:Linux, ocr, ubuntu, 系统相关

安装NVIDIA驱动、安装CUDA&&CUDNN、安装…

rapidocr_paddle主要是用于ocr识别的引擎。本文主要针对于“如何在内网环境下安装相关驱动以及软件”。这里先放上要用到的网站:

以及相关的文档,碰到本文没提到的问题可以去这里面找:

这里顺便附上写者的电脑环境,以便对照:

  • Ubuntu 23.10 服务器版的虚拟机,所以无图形化界面。
  • 内网环境。内网apt-get源无cuda与cudnn。
  • Data center/Tesla T4显卡。
  • Python 3.10.13
  • x86。

前置准备

安装opencv

先装libGL,这是等会安装opencv-python要用到的依赖包。

apt-get install libgl1

接下来安装opencv-python,这样才能在python中导入cv2包。

python -m pip install opencv-python

安装完进python看看能不能import cv2,能就说明安装成功了。

确认GPU类型与型号

Tesla、Titan、Geforce…

安驱动前得看自己显卡型号是什么。如果你的机子之前有安装过nvidia驱动,可以输以下代码查看显卡型号。没有的话就问问机房的人。

nvidia-smi

确认完之后就该安装驱动了,x86/amd64的直接安linux x86的就行。

下载完后传到虚拟机上,给执行权限后再执行安装

chmod +777 NVIDIA-Linux-x86_64-525.147.05.run
./NVIDIA-Linux-x86_64-525.147.05.run

一路enter过去就行,安装到最后一步会提示“xxx now complete”。此时输入nvidia-smi就能看到显卡信息了。

nvidia-smi

安装CUDA与CUDNN

.run与.tar.xz

CUDA没啥,下载自己需要的版本然后安装就行。我需要的是“能跑就行”,所以下的最新版本12.3.2。

下载完后和显卡驱动一样,先给权限再安装

chmod +777 cuda_12.3.2_545.23.08_linux.run
./cuda_12.3.2_545.23.08_linux.run

安装的时候还需要注意,选安装组件的时候不要勾选第一项的Driver,因为上面已经安装过显卡驱动了。这里只需要安装和CUDA有关的东西就行。

如果安装失败,缺这缺那的,配内网的apt-get源然后安装以下依赖。没内网apt-get源或者内网apt-get源没有的话就外网下好再丢内网安装。

sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev

安装完看看效果,先配置环境变量。

vi ~/.bashrc

再把以下内容直接复制到最后面。如果不放心可以先看看对usr/local路径有没有相关的文件夹,或者文件夹名字对不对的上。

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
export PATH=$PATH:/usr/local/cuda/bin
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda

此时输入nvcc -V能得到以下输出就是安装成功了。

root@ubuntu:/home/test# nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2023 NVIDIA Corporation
Built on Wed_Nov_22_10:17:15_PST_2023
Cuda compilation tools, release 12.3, V12.3.107
Build cuda_12.3.r12.3/compiler.33567101_0

安装完CUDA还没完,还差个cudnn。这个就比较麻烦。得去找对应版本的cudnn。如果你CUDA安装的是12.0或者以上(12.x)的版本,那么cudnn至少也得是8.9.1及以上(8.9.x)的版本。

我用的8.9.5,记得看对应的CUDA版本是11.x还是12.x的。

下载也有讲究。我一开始下的deb包,dpkg -i安装完,进python验证的时候发现cuda识别不到cudnn,提示缺libcudnn。

搞了半天也没搞定。所以建议直接下tar包解压,省心。外网的话可以试试deb包然后装相关依赖。

下载完tar包后解压,如果你在用户目录解压的话,路径应该是这个,看自己在哪里解压的吧。

tar xvf cudnn-linux-x86_64-8.9.5.30_cuda12-archive.tar.xz
cd /home/test/cudnn-linux-x86_64-8.9.5.30_cuda12-archive

接下来手动把相关的文件复制到cuda的目录下。相关路径可能需要根据自己虚拟机的情况进行修改。复制完之后记得加上权限。

cp include/cudnn.h    /usr/local/cuda/include
cp lib/libcudnn*    /usr/local/cuda/lib64
chmod +777 /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

安装paddle

pip安装

官方这都写的很清楚了。CUDA 12.x的装post120就行。内网pip源没有的话也是外网下完再拖进内网虚拟机。还得看自己电脑支不支持avx,支持的话用第一个链接。

装完之后就可以验证了。进入python。输入以下代码,应该能得到对应的结果。

import paddle
import cv2 #和paddle无关,只是测下opencv有没有安装成功
paddle.utils.run_check()
Python 3.10.13 (main, Feb  4 2024, 06:33:33) [GCC 13.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import paddle
>>> paddle.utils.run_check()
Running verify PaddlePaddle program ...
I0221 06:25:23.755407 1275918 interpretercore.cc:237] New Executor is Running.
W0221 06:25:23.757426 1275918 gpu_resources.cc:119] Please NOTE: device: 0, GPU Compute Capability: 7.5, Driver API Version: 12.0, Runtime API Version: 12.0
W0221 06:25:23.758528 1275918 gpu_resources.cc:149] device: 0, cuDNN Version: 8.9.
I0221 06:25:24.685256 1275918 interpreter_util.cc:518] Standalone Executor is Used.
PaddlePaddle works well on 1 GPU.
PaddlePaddle is installed successfully! Let's start deep learning with PaddlePaddle now.

最后能报successfully就说明安装成功了。接下来直接python -m pip安装rapidocr就行。

相关推荐

  1. 【学习笔记】Linux准备

    2024-02-22 07:52:02       8 阅读
  2. 压力测试的准备

    2024-02-22 07:52:02       8 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-22 07:52:02       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-22 07:52:02       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-22 07:52:02       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-22 07:52:02       18 阅读

热门阅读

  1. C语言K&R圣经笔记 8.1文件描述符 8.2低级IO

    2024-02-22 07:52:02       27 阅读
  2. Gson 库的使用

    2024-02-22 07:52:02       24 阅读
  3. Linux常见命令 | 文件传输命令scp

    2024-02-22 07:52:02       26 阅读
  4. [opencvsharp]将Mat转float数组

    2024-02-22 07:52:02       30 阅读
  5. CSS总结

    CSS总结

    2024-02-22 07:52:02      28 阅读
  6. scss导出颜色变量为空对象

    2024-02-22 07:52:02       28 阅读
  7. 事件流 事件委托

    2024-02-22 07:52:02       33 阅读
  8. Vue中v-model的原理

    2024-02-22 07:52:02       26 阅读
  9. docker入门介绍

    2024-02-22 07:52:02       32 阅读
  10. Backend - Docker 离线卸载

    2024-02-22 07:52:02       28 阅读
  11. Vue3利用父子组件实现字典

    2024-02-22 07:52:02       32 阅读
  12. linux系统离线安装docker服务教程

    2024-02-22 07:52:02       34 阅读
  13. 深度学习基础之《TensorFlow框架(5)—会话》

    2024-02-22 07:52:02       30 阅读
  14. select滑动分页请求数据

    2024-02-22 07:52:02       28 阅读