Installer Yolov3 Win10 Cuda8.0 vs2017

Référence https://blog.csdn.net/dz4543/article/details/85255267

https://blog.csdn.net/sinat_35907936/article/details/82017127

Heure: 2019.6.5

L'environnement

windows10

 cuda8.0 cudnn5.1 (cuda9.0 et supérieur ne sont pas compatibles avec vs2017)

vs2017 (utilise en fait le compilateur de version vs2015 V140 dans vs2017)

opencv3.3 (ne peut pas dépasser 3,4)

Ceux-ci sont préparés à l'avance

Un. Télécharger vers le bas

1. Téléchargez yolov3 depuis github

git clone https://github.com/AlexeyAB/darknet.git

Mon emplacement d'installation D: \ software_engineer \ darknet

2. Poids yolo_v3:     https://pjreddie.com/media/files/yolov3.weights (cela sera utilisé plus tard)

2. Compiler yolov3 en vs

1. Accédez au dossier D: \ software_engineer \ darknet \ darknet \ build \ darknet, ouvrez darknet.vcxproj et remplacez CUDA 10.0 "par CUDA 8.0 (8.0 est ma version cuda, remplacez-la simplement par la vôtre), (certains Les gens ne sont pas CUDA 10.0, mais CUDA9.1, et ils sont également remplacés par leurs propres numéros de version)

Si votre version vs est vs2013, changez 14.0 en 12.0 et V140 en V120 dans l'image ci-dessous

Enregistrer et quitter

2. Utilisez ensuite vs2017 pour ouvrir darknet.sln, ne mettez pas à niveau

Modifiez le projet en version x64. Ensuite, vous devez rediriger le projet: clic droit sur le projet-> rediriger le projet

S'il s'agit de VS2017, vous devez modifier le jeu d'outils (voir 1.1 pour télécharger le processus du jeu d'outils), modifiez comme suit: cliquez avec le bouton droit sur le projet-> propriétés

Si vous n'avez pas choisi cet outil lors de l'installation de vs2017, peu importe, quittez VS2017. Ouvrez Visual Studio Installer dans le menu .

Vérifiez vc ++ 2015 (V140)

3. Configurer opencv dans la feuille de propriétés

4. Copiez CUDA 8.0.props et d'autres fichiers

CUDA 8.0.props et d'autres fichiers se trouvent dans le répertoire d'installation de cuda. ​​Le chemin par défaut de cuda est: C: \ Program Files \ NVIDIA GPU Computing Toolkit \ CUDA \ v8.0 \ extras \ visual_studio_integration \ MSBuildExtensions,

Copiez ces quatre fichiers dans C: \ Program Files (x86) \ MSBuild \ Microsoft.Cpp \ v4.0 \ v140 \ BuildCustomizations, il s'agit du chemin après l'installation de vs2017, sinon l'erreur suivante peut être signalée:

5. Ouvrez le fichier d'en-tête darknet.h pour voir s'il contient une ligne ondulée rouge. Sinon, vous n'avez pas besoin de faire cette étape

1. Mon erreur include <pthread.h>, ne peut pas trouver le fichier d'en-tête, solution: cliquez avec le bouton droit sur le projet - "Gérer le package NuGet, recherchez pthread, puis installez

2. Mon include <cudnn.h> est également faux, la solution est (à condition que cudnn soit installé correctement):

Inclure un répertoire et un répertoire de bibliothèque dans la propriété, le chemin est à l'intérieur du répertoire d'installation de cuda

Ensuite, l'entrée connecteur- ", ajoutez cudnn.lib dans des dépendances supplémentaires

6. Générez le projet. Une fois la génération terminée, il y a plus de darknet.exe et d'autres fichiers dans le répertoire du projet × 64.

Ensuite, placez le fichier de poids yolo_v3 précédemment téléchargé dans le même dossier que darknet.exe

3. Test

Ensuite, trouvez le chemin de darknet-master \ build \ darknet \ x64 \ darknet.exe sur cmd D: \> cd D: \ darknet \ build \ darknet \ x64 le mien est le suivant. Entrez ensuite les données de test du détecteur darknet.exe / coco.data yolov3.cfg yolov3.weights -i 0 -thresh 0.25 dog.jpg

Succès! ! ! ! ! ! !

 

Remarque: L'erreur suivante peut se produire lors de la compilation de darknet

 错误 MSB3721 La commande "" C: \ Program Files \ NVIDIA GPU Computing Toolkit \ CUDA \ v8.0 \ bin \ nvcc.exe "-gencode = arch = compute_30, code = \" sm_30, compute_30 \ "-gencode = arch = compute_75, code = \ "sm_75, compute_75 \" --use-local-env -ccbin "C: \ Program Files (x86) \ Microsoft Visual Studio 14.0 \ VC \ bin \ x86_amd64" -x cu -I \ include -IC : \ opencv_3.0 \ opencv \ build \ include -I .. \ .. \ include -I .. \ .. \ 3rdparty \ stb \ include -I .. \ .. \ 3rdparty \ pthreads \ include -I "C : \ Program Files \ NVIDIA GPU Computing Toolkit \ CUDA \ v8.0 \ include "-I" C: \ Program Files \ NVIDIA GPU Computing Toolkit \ CUDA \ v8.0 \ include "-I \ include -I \ include -I "C: \ Program Files \ NVIDIA GPU Computing Toolkit \ CUDA \ v8.0 \ include"-kep-dir x64 \ Release -maxrregcount = 0 --machine 64 --compile -cudart static -DOPENCV -DCUDNN_HALF -DCUDNN -D_TIMESPEC_DEFINED -D_SCL_SECURE_NO_WARNINGS -D_CRT_SECURE_NO_WARNS-D-D-D "/ EHsc / W3 / nologo / O2 /Fdx64\Release\vc140.pdb / FS / Zi / MD" -o x64 \ Release \ activation_kernels.cu.obj "G: \ daek \ darknet-master \ src \ activation_kernels.cu "" est sorti avec le code 1. darknet C: \ Program Files (x86) \ MSBuild \ Microsoft.Cpp \ v4.0 \ V140 \ BuildCustomizations \ CUDA 8.0.targets 712\ daek \ darknet-master \ src \ activation_kernels.cu "" est sorti avec le code 1. darknet C: \ Program Files (x86) \ MSBuild \ Microsoft.Cpp \ v4.0 \ V140 \ BuildCustomizations \ CUDA 8.0.targets 712\ daek \ darknet-master \ src \ activation_kernels.cu "" est sorti avec le code 1. darknet C: \ Program Files (x86) \ MSBuild \ Microsoft.Cpp \ v4.0 \ V140 \ BuildCustomizations \ CUDA 8.0.targets 712  

  Ce problème peut être résolu en supprimant les deux éléments illustrés dans la figure ci-dessous.

Ou modifiez-le dans le fichier darknet.vcxproj

Publié 59 articles originaux · Likes46 · Visites 30,000+

Je suppose que tu aimes

Origine blog.csdn.net/sinat_41852207/article/details/90906309
conseillé
Classement