La prueba profesional es válida: máquina virtual VM15 + ubuntu18.04 + python36 + opencv + caffe-CPU

Sistema Linux: instale y configure el entorno caffe-CPU en ubuntu18.04

Pro-test efectivo

VM15 + ubuntu18.04 + python36 + opencv + caffe-CPU

Descripción del entorno de configuración: Sistema
VMware15
: ubuntu18.04
La máquina virtual VMware15 no tiene tarjeta gráfica, por lo que el sistema ubuntu instalado en la máquina virtual solo puede instalar la versión caffe-CPU

Uno, entorno VMware15 + ubuntu18.04

Nota: Si usa VMware14, es posible que esté bloqueado. Cuando lo instalé, estaba usando la versión 14. Como resultado, el proceso de instalación siempre estaba bloqueado en el entorno de selección de idioma. El mouse y el teclado fallaron. No habría ningún problema para cambiar a VMware15.

Dos, instalación original básica de Caffe1.x

Sistema: ubun20.04 (cualquier valor superior a 17.04)

// Vmware虚拟机不支持GPU版
sudo apt install caffe-cpu

Tres, instalación de la versión expandible de Caffe1.x

1. Obtenga permisos de root

Cree una cuenta de root, porque generalmente necesita agregar sudo para ejecutar comandos bajo la autoridad de usuarios normales, y no necesita agregar sudo antes de ingresar comandos en la cuenta de root, y algunos comandos requieren que la cuenta de root use

Abra la terminal, ingrese el siguiente comando, preste atención a pegar en la terminal de ubuntu usando ctrl + shift + v

// An highlighted block
sudo passwd root

Ingrese la contraseña que desea establecer dos veces y habrá creado con éxito la cuenta de root.
También tenga en cuenta que la contraseña ingresada en Linux no se mostrará, pero sí se ingresó. Ingrese cuando
desee elevar los privilegios al usuario root.

// An highlighted block
su root

Ingrese la contraseña nuevamente y el nombre de usuario anterior se convertirá en root.
Tenga en cuenta que el directorio raíz del usuario raíz es el directorio que ve en la "computadora".
El directorio raíz predeterminado de los usuarios normales es / home / username (también llamado home directorio)
en cd Sabrás la diferencia

2. Cambiar fuente: cambie la fuente en el archivo /etc/apt/sources.list

Cambie la fuente en el archivo /etc/apt/sources.list a Alibaba Cloud u otros archivos reflejados

Lista de fuentes de respaldo

La fuente predeterminada de la configuración de Ubuntu no es un servidor doméstico, y la descarga y actualización del software es relativamente lenta. Primero haga una copia de seguridad del archivo de la lista de fuentes sources.list:

//首先备份源列表
sudo cp /etc/apt/sources.list /etc/apt/sources.list_backup
Abra el archivo sources.list para modificar

Seleccione la fuente apropiada, reemplace el contenido del archivo original, guarde el archivo editado, tome el servidor de actualización de Alibaba Cloud como ejemplo (puede probar la velocidad de Alibaba Cloud, la Universidad de Tsinghua, la Universidad de Ciencia y Tecnología y 163 fuentes respectivamente, y elige el más rápido):

// 打开sources.list文件
sudo gedit /etc/apt/sources.list

Edite el archivo /etc/apt/sources.list, agregue las fuentes espejo de Alibaba Cloud en la parte superior del archivo o elimínelas todas y agréguelas:

// 阿里源
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

Una vez completado el cambio, ingrese la fuente de actualización y ejecútelo para actualizar la lista antes de instalar cualquier cosa con apt.

sudo apt update

3. Instale paquetes de dependencia

Instale los paquetes de dependencia requeridos; de lo contrario, se informarán varios errores más adelante para garantizar que el sistema esté en red

 sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
 sudo apt-get install --no-install-recommends libboost-all-dev
 sudo apt-get install libopenblas-dev liblapack-dev libatlas-base-dev
 sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
 sudo apt-get install git cmake build-essential
Copie cuidadosamente una por una, estas bibliotecas no explotarán todo tipo de errores extraños más adelante
La instalación debe estar completa. Al final de la instalación, habrá una palabra que debe instalarse, de lo contrario, se informará un error más adelante.

Al instalar el primer elemento del paquete de dependencia, se instalará una versión de opencv, 3.2.0, pero esta versión no es del tipo python-opencv, y el tipo de versión python-opencv se reinstalará más tarde

// 查看opencv版本
pkg-config opencv --modversion

4. Instale la herramienta de versión git

#判断系统有没有安装git工具
git –version
#如果提示没有,用如下命令安装:
sudo apt-get install git
#check git 安装是否成功:
git –version              #有版本号提示即表示成功安装

5. Configurar variables de entorno

sudo gedit ~/.bashrc

Agregue estas dos líneas al final del archivo

export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH 

Reinicie o ingrese lo siguiente para que sea efectivo

source ~/.bashrc

6. Instale pip3

Ubuntu18 viene con dos versiones de python27 y 36. Por lo general, cuando ingresa python y python2 en la línea de comando, ambos abren 27. Solo ingrese python3 para abrir 36.
Use pip para instalar cosas con python36. Use pip3 install xxx, de lo contrario solo pip install . Solo finge tener 27

sudo apt install python3-pip

Inserte la descripción de la imagen aquí

7, la instalación destacada de opencv-python

Nota: Al instalar el primer elemento del paquete de dependencia, se instalará una versión de opencv, 3.2.0, pero esta versión no es del tipo python-opencv y
debe reinstalarse. Cv2 se refiere al python-opencv instalado a continuación
. La primera forma es directamente:

pip3 install opencv-python

La versión de python-opencv instalada de esta manera es 4.1.2,
pero se puede informar del siguiente error
Inserte la descripción de la imagen aquí

La segunda forma es instalar por versión

pip3 install opencv-python==3.4.2.16

Yo uso el segundo método, la versión instalada es 3.4.2.16

Aparece: Numpy-1.19.4 opencv-python-3.4.2.16 instalado con éxito significa una instalación correcta

Desinstalar la instrucción python-opencv

pip3 uninstall opencv-python

Ver las instrucciones de python-opencv

pkg-config opencv --modversion

8. Instale numpy1.15.0

Al instalar opencv, se instalará un número,
pero la versión instalada es 1.17+, que se estima que es la versión 1.19. Sin embargo, muchas funciones importantes de este 1.17+ tienen definiciones modificadas, lo que hace que muchas bibliotecas relacionadas con la inteligencia artificial cometan errores. solo use el siguiente comando de desinstalación

pip3 uninstall numpy

Luego, vuelva a especificar la versión para instalar, será 1.15

pip3 install numpy==1.15.0

Intente importar opencv, si no se reporta ningún error, la instalación es exitosa

python3
>>> import cv2

9. Instale caffe-CPU para iniciar y descargar el código fuente de caffe

Asegúrese de que el sistema esté en red
git clone https://github.com/BVLC/caffe.git

Después de la ejecución, la carpeta caffe se descargará en su directorio de cd actual, se recomienda copiar una copia a otros lugares

Inserte la descripción de la imagen aquí
¡Eso es todo! El proceso puede ser más lento

10. Luego instale la biblioteca

Utilice caffe para representar el directorio principal de caffe. Tenga en cuenta que este archivo no se puede eliminar. Si lo elimina, no podrá utilizar caffe.

cd caffe/python
#安装该目录下requirements.txt所需的包
for req in $(cat requirements.txt); do sudo pip3 install $req; done

11. Cree una biblioteca de conexión para py36

sudo ln -s /usr/lib/x86_64-linux-gnu/libboost_python3-py36.so.1.65.1 /usr/local/lib/libboost_python3.so

Este comando es para crear una biblioteca de enlaces para py36. El primer archivo es el archivo fuente y el último archivo es un acceso directo. Debe
verificar la versión de su archivo fuente y modificarlo.

cd /usr/lib/x86_64-linux-gnu/
ls libboost_python*

La siguiente situación indica que la conexión se realizó correctamente.

Inserte la descripción de la imagen aquí

Los azules y blancos son atajos, y los blancos son archivos fuente. Por
ejemplo, libboost_python3-py36.so
es un atajo de libboost_python3-py36.so.1.65.1
. Al cambiar, asegúrese de tener en cuenta que hay un espacio para romper los dos archivos antes y después.

12. Lo más importante: modificar Makefile.config

cd de regreso al directorio de inicio de caffe.
El ejemplo en el directorio es solo un archivo de muestra proporcionado por caffe y no se puede usar para compilar. Solo Makefile.config puede compilar.

cd caffe/
cp Makefile.config.example Makefile.config
sudo gedit Makefile.config

Siga los pasos a continuación para modificar cuidadosamente Makefile.config y use ctrl + F para buscar

primer paso

Estamos usando cpu, así que elimine el comentario de cpu

将# CPU_ONLY:=1
改为CPU_ONLY:=1
Segundo paso

Caffe generalmente usa opencv. No sé qué está pensando el funcionario. El comentario predeterminado aquí está eliminado.

将# OPENCV_VERSION := 3
改为OPENCV_VERSION := 3
tercer paso

Comente las dos líneas de py2.7, caffe por defecto es 27, pero la nuestra es 36

# PYTHON_INCLUDE :=  /usr/include/python2.7 \
#               /usr/lib/python2.7/dist-packages/numpy/core/include
el cuarto paso

Descomentar py3.5:

PYTHON_LIBRARIES := boost_python3 python3.5m
PYTHON_INCLUDE := /usr/include/python3.5m \
                 /usr/local/lib/python3.5/dist-packages/numpy/core/include

La versión de Python es 36, también debe cambiar los tres lugares 3.5 anteriores a 3.6

el quinto paso

Use python para ejecutar caffe, por supuesto, elimine el comentario # WITH_PYTHON_LAYER: = 1

将# WITH_PYTHON_LAYER := 1
改为WITH_PYTHON_LAYER := 1
Sexto paso

Agregue / usr / include / hdf5 / serial y / usr / lib / x86_64-linux-gnu / hdf5 / serial después de INCLUDE_DIRS y LIBRARY_DIRS respectivamente, el efecto es el siguiente

INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu/hdf5/serial

Este es el archivo Makefile.config que modifiqué. Debes prestar atención para modificarlo según tu propia versión, de lo contrario se informará un error.
Enlace: Makefile.config

13, compilar

También es el último paso para compilar.
Tenga en cuenta que el entorno de compilación está en el directorio caffe, que es el directorio de inicio de caffe al que se ha vuelto a cd antes
.
Inserte la descripción de la imagen aquí
Comience a compilar como se muestra en la figura siguiente . . . . .

sudo make all -j4
sudo make test -j4
sudo make runtest -j4

¡La compilación es un éxito!
Si se informa un error, copie el mensaje de error y búsquelo
en Internet, luego limpie para borrar la información de compilación y vuelva a compilar

Inserte la descripción de la imagen aquí

Luego cd ~ de regreso al directorio de inicio para probar,

python3
import caffe

Si no informa un error, ¡tiene éxito!

Inserte la descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/m0_37882192/article/details/109527681
Recomendado
Clasificación