ubuntu16.04 installer Caffe1.0

1. Installez d'abord divers packages de dépendances

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 libatlas-base-dev
sudo apt-get install libopenblas-dev
sudo apt-get install the python-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev

2. Téléchargez caffe

La plupart des tutoriels pour installer caffe trouvés sur Internet sont git download https://github.com/BVLC/caffe

Mais il y a un dossier caffe3d
dans le fichier hérité, qui peut être obtenu à partir de https://github.com/fyu/caffe3d sur GitHub

Après cela, j'ai obtenu les informations d'indice dans le fichier readme du dossier existant et j'ai
trouvé Video-Caffe: Caffe avec implémentation C3D et lecteur vidéo,
https://github.com/chuckcho/video-caffe
qui est Video-Caffe: avec Implémentation C3D et lecteur vidéo Caffe,

Dans les articles existants, il est également mentionné que l'environnement expérimental est le réseau R-C3D basé sur le framework caffe avec la couche de traitement vidéo ajoutée,
il est donc maintenant reconnu comme Video-Caffe sur GitHub.


3. Modifiez le fichier

3.1 Makefile.config

Parce que la commande make ne peut créer que le fichier Makefile.config, et Makefile.config.example est l'exemple de makefile donné par caffe.

Par conséquent, copiez d'abord le contenu de Makefile.config.example dans Makefile.config:
sudo cp Makefile.config.example Makefile.config

Modifiez ensuite le fichier Makefile.config et ouvrez le fichier dans le répertoire caffe:
sudo gedit Makefile.config

Modifiez le contenu du fichier Makefile.config en fonction des circonstances personnelles:
(1) Si cudnn est utilisé, alors:

将
#USE_CUDNN := 1
修改成: 
USE_CUDNN := 1

(2) Si la version d'opencv utilisée est 3, alors:

将
#OPENCV_VERSION := 3 
修改为: 
OPENCV_VERSION := 3

(3) S'il s'agit d'une version CUDA> = 9.0, la puissance de calcul de 20 et 21 sera supprimée, comme suit:

CUDA_ARCH := \
#-gencode arch=compute_20,code=sm_20 \
#		-gencode arch=compute_20,code=sm_21 \
		-gencode arch=compute_30,code=sm_30 \
		-gencode arch=compute_35,code=sm_35 \
		-gencode arch=compute_50,code=sm_50 \
		-gencode arch=compute_52,code=sm_52 \
		-gencode arch=compute_60,code=sm_60 \
		-gencode arch=compute_61,code=sm_61 \
		-gencode arch=compute_61,code=compute_61

PS: J'ai un fichier que j'ai utilisé auparavant, en utilisant CUDA8.0. Le fichier ci-dessus a été modifié comme suit:

# For CUDA < 6.0, comment the *_50 lines for compatibility.
#CUDA_ARCH := -gencode arch=compute_20,code=sm_20 \
		-gencode arch=compute_20,code=sm_21 \
		-gencode arch=compute_30,code=sm_30 \
		-gencode arch=compute_35,code=sm_35
CUDA_ARCH := -gencode arch=compute_50,code=sm_50 \
                -gencode arch=compute_52,code=sm_52 \
                -gencode arch=compute_60,code=sm_60 \
                -gencode arch=compute_61,code=sm_61 \
                -gencode arch=compute_61,code=compute_61

(4) Si vous utilisez python pour écrire la couche, alors:

将
#WITH_PYTHON_LAYER := 1 
修改为 
WITH_PYTHON_LAYER := 1

(5) Un élément important: Will # Tout ce dont vous avez besoin va ici.

INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib 
修改为: 
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 /usr/lib/x86_64-linux-gnu/hdf5/serial       

3.2 Makefile

Puis modifiez le Makefile dans le répertoire caffe:
sudo gedit Makefile

将:
NVCCFLAGS += -ccbin=$(CXX) -Xcompiler-fPIC $(COMMON_FLAGS)
替换为:
NVCCFLAGS += -D_FORCE_INLINES -ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS)

La modification suivante ne figurait pas dans le fichier précédent.

将:
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5
改为:
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial

3.3 Modifier host_config.h

Modifiez /usr/local/cuda/include/host_config.h et commentez la ligne 115:
sudo gedit /usr/local/cuda/include/host_config.h

将
#error-- unsupported GNU version! gcc versions later than 4.9 are not supported!
改为
//#error-- unsupported GNU version! gcc versions later than 4.9 are not supported!

4. Compilez

make all -j8 #-j根据自己电脑配置决定

image.png


Erreurs lors de la compilation
(1) Erreur: Erreur de compilation:
Makefile: 568: recette pour target'.build_release / lib / libcaffe.so.1.0.0-rc3 'a échoué
Solution:
https://blog.csdn.net/ CAU_Ayao / article / details / 84023510
(2) Erreur:
/ usr / bin / ld: impossible de trouver -lopencv_imgcodecs
/ usr / bin / ld: impossible de trouver -lopencv_videoio
Picture.png
Solution:
https://blog.csdn.net/w113691 / article / details / 77942408 Consultez ce tutoriel.
https://blog.csdn.net/Dillon2015/article/details/79858116


5. Test

faire le test -j8

image.png

faire runtest -j8

image.png

Si le résultat affiché est comme indiqué dans la figure ci-dessus, cela signifie que caffe a été installé avec succès.

出错 : La recette pour la cible 'runtest' a échoué
Picture.png


PS: Parce que runtest a toujours fait des erreurs, toutes les pensées sont perdues. Enfin, j'ai choisi d'utiliser le viedo-caffe téléchargé sur GitHub, et de re-modifier le fichier-compile-configure


Configurez pycaffe:

sudo make pycaffe -j16 // Placez pycaffe

image.png

6. Configuration de la variable d'environnement:

gedit ~ / .bashrc

Ajoutez à la fin:
remplissez le répertoire python sous votre caffe ici

export PYTHONPATH = ~ / caffe / python: $ PYTHONPATH pour
que la variable d'environnement prenne effet:

source ~ / .bashrc

7. Test de l'emballage du guide

Entrez python pour entrer dans l'environnement python, puis continuez à entrer
import caffe

pip installe les packages manquants. Une fois l'installation terminée, l'importation de caffe est terminée.


À 19h06 le 12 mars 2021,
la version téléchargée sur Internet ne semble pas fonctionner, mais le caffe3d intégré est toujours installé.

Je suppose que tu aimes

Origine blog.csdn.net/LemonShy2019/article/details/114920491
conseillé
Classement