赞
踩
一、安装编译版本cudnn非运行版本
cp cuda/include/cudnn.h /usr/local/cuda/include/
cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/
chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
二、安装miniconda
a、下载miniconda后,依次执行下面的命令:
bash miniconda3.sh
按enter继续
>>yes
>>miniconda #此处是你需要指定的安装路径
source ~/.bashrc
b、更改镜像文件
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
c、查看镜像
conda config --get channels
三、编译安装cmake
1、保证镜像可以正常使用,如果不能,解决方法如下:
第一步:使用命令:cat /etc/redhat-release查看版本号
第二步:把下面内容写成shell文件,修该minorver后面的版本号为本机版本号,CentOS 8之前和之后的,选择其中一个就可以了
# CentOS 8 之前
minorver=6.10
sudo sed -e "s|^mirrorlist=|#mirrorlist=|g" \
-e "s|^#baseurl=http://mirror.centos.org/centos/\$releasever|baseurl=https://mirrors.tuna.tsinghua.edu.cn/centos-vault/$minorver|g" \
-i.bak \
/etc/yum.repos.d/CentOS-*.repo
# CentOS 8 之后
minorver=8.5.2111
sudo sed -e "s|^mirrorlist=|#mirrorlist=|g" \
-e "s|^#baseurl=http://mirror.centos.org/\$contentdir/\$releasever|baseurl=https://mirrors.tuna.tsinghua.edu.cn/centos-vault/$minorver|g" \
-i.bak \
/etc/yum.repos.d/CentOS-*.repo
第三步:使用下面命令更新:
sudo yum makecache
2、安装依赖项(cmake等版本太低要更新):
yum install cmake
yum install gcc
yum install gcc-g++
yum -y install ffmpeg ffmpeg-devel
yum install opencv-devel
yum install gtk2 gtk2-devel gtk2-devel-docs
yum install libgnomeui-devel
yum install git
3、编译Opencv
a、下载opencv和对应版本的opencv-contrib,并将opencv-contrib放在opencv目录下
b、在opencv文件夹下面建build文件夹
mkdir build
cd build
c、进入到build文件夹下面,执行下面命令(或者写成shell文件在该文件夹中执行):
cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D WITH_TBB=ON \
-D ENABLE_FAST_MATH=1 \
-D CUDA_FAST_MATH=1 \
-D WITH_CUBLAS=1 \
-D WITH_CUDA=ON \
-D BUILD_opencv_cudacodec=On \
-D WITH_CUDNN=ON \
-D OPENCV_DNN_CUDA=ON \
-D CUDA_ARCH_BIN=8.6 \
-D WITH_V4L=ON \
-D WITH_QT=OFF \
-D WITH_OPENGL=ON \
-D WITH_GSTREAMER=ON \
-D OPENCV_GENERATE_PKGCONFIG=ON \
-D OPENCV_PC_FILE_NAME=opencv.pc \
-D OPENCV_ENABLE_NONFREE=ON \
-D CUDA_CUDA_LIBRARY=/usr/local/cuda-11.4/lib64/stubs/libcuda.so \
-D CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-11.4 \
-D OpenCL_LIBRARY=/usr/local/cuda-11.4/lib64/libOpenCL.so \
-D CUDNN_LIBRARY=/usr/local/cuda-11.4/lib64/libcudnn.so \
-D OpenCL_INCLUDE_DIR=/usr/local/cuda-11.4/include \
-D OPENCV_EXTRA_MODULES_PATH=/opt/installer/opencv-4.5.2/contrib/modules \
-D PYTHON3_LIBRARIES=/opt/miniconda3/lib/libpython3.7m.so \
-D PYTHON3_PACKAGES_PATH=/opt/miniconda3/lib/python3.7/site-packages \
-D PYTHON3_INCLUDE_PATH=/opt/miniconda3/include/python3.7m \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D INSTALL_C_EXAMPLES=ON \
-D BUILD_SHARED_LIBS=OFF \
-D BUILD_EXAMPLES=ON .. \
-DBUILD_opencv_python2=OFF \
-DBuild_opencv_python3=ON \
-DPYTHON3_EXECUTABLE=/opt/miniconda3/bin/python
d、检查安装配置,包括显卡是否支持等,确认无误后继续执行面命令
sudo make -j6
sudo make insall
4、导入cv2后也许会出现各种不同错误,错误类型较多,概率较高。简单列举其一,有其他自行查阅解决
ImportError: /lib64/libk5crypto.so.3: undefined symbol: EVP_KDF_ctrl, version OPENSSL_1_1_1b
解决方法:
a、查找libcrypto.so.1.1路径
find / -iname 'libcrypto.so.1.1'
b、修改文件
mv /opt/miniconda3/pkgs/openssl-1.1.1d-h7b6447c_4/lib/libcrypto.so.1.1 /opt/miniconda3/pkgs/openssl-1.1.1d-h7b6447c_4/lib/back.libcrypto.so.1.1
mv /opt/miniconda3/pkgs/openssl-1.1.1m-h7f8727e_0/lib/libcrypto.so.1.1 /opt/miniconda3/pkgs/openssl-1.1.1m-h7f8727e_0/lib/back.libcrypto.so.1.1
mv /opt/miniconda3/lib/libcrypto.so.1.1 /opt/miniconda3/lib/back.libcrypto.so.1.1
若不是该问题请恢复:
mv /opt/miniconda/pkgs/openssl-1.1.1d-h7b6447c_4/lib/back.libcrypto.so.1.1 /opt/miniconda/pkgs/openssl-1.1.1d-h7b6447c_4/lib/libcrypto.so.1.1
mv /opt/miniconda/pkgs/openssl-1.1.1m-h7f8727e_0/lib/back.libcrypto.so.1.1 /opt/miniconda/pkgs/openssl-1.1.1m-h7f8727e_0/lib/libcrypto.so.1.1
mv /opt/miniconda/lib/back.libcrypto.so.1.1 /opt/miniconda/lib/libcrypto.so.1.1
5、激活miniconda环境,输入python,输入以下内容,检查所安装的opencv是否可用,如果返回True表示安装成功,若False或者导入opencv时报错,那你就摊上大麻烦了,请检查问题重新编译配置opencv。
import cv2
cv2.ocl.haveOpenCL()
6、安装python依赖的库:
a、首先安装torch和torchversion离线包(下载好的,在线安装太慢),命令如下:
pip install torch-1.8.1+cu111-cp37-cp37m-linux_x86_64.whl
pip install torchvision-0.9.1+cu111-cp37-cp37m-linux_x86_64.whl
b、安装剩余包,可以新建一个requirements.txt文件,然后在里面写入如下内容:
# detect--------------------------#
Pillow==8.4.0
#numpy==1.21.5
#torch==1.8.1+cu111
#torchvision==0.9.1+cu111
paho-mqtt==1.5.1
#opencv-python==4.5.2.52
scikit-learn==0.24.2
matplotlib==3.3.4
pandas==1.1.5
requests==2.26.0
tqdm==4.61.0
PyYAML==3.12
seaborn==0.11.1
pynvml==11.4.1
# flask---------------------------#
Flask==2.0.1
c、使用如下命令安装:
pip install -r requirements.txt
如需要制定镜像地址,可以使用如下命令:
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。