Je veux compiler un programme C++ console opencv dans Visual Studio 2013. Voici mon code:
#include "stdafx.h"
#include "opencv2/highgui/highgui.hpp"
#include <iostream>
using namespace cv;
using namespace std;
int main(int argc, const char** argv)
{
Mat img = imread("rgb_1.png", CV_LOAD_IMAGE_UNCHANGED); //read the image data in the file "MyPic.JPG" and store it in 'img'
if (img.empty()) //check whether the image is loaded or not
{
cout << "Error : Image cannot be loaded..!!" << endl;
//system("pause"); //wait for a key press
return -1;
}
namedWindow("MyWindow", CV_WINDOW_AUTOSIZE); //create a window with the name "MyWindow"
imshow("MyWindow", img); //display the image which is stored in the 'img' in the "MyWindow" window
waitKey(0); //wait infinite time for a keypress
destroyWindow("MyWindow"); //destroy the window with the name, "MyWindow"
return 0;
}
Bien que j'ai défini tous les répertoires dans les propriétés des répertoires Computer et Visual Studio, j'obtiens "The program can't start because opencv_world300.dll is missing from your computer."
Erreur.
Comment puis-je résoudre ce problème?
Merci
Sous Windows, vous pouvez le copier à partir de:
<your install directory>\opencv30\build\x64\vc12\bin
Et mettez-le dans votre solution Visual Studio (je suppose que vous utilisez une configuration x64/Release):
<your solution directory>\x64\Release
Ou vous pouvez ajouter l'OpenCV ci-dessus à votre variable d'environnement PATH
J'ai eu le même problème.
Je suis sur la version 320
. Une fois que toutes vos variables d'environnement sont définies, assurez-vous que vos Additional Include Directories
, Additional Library Directories
Et Additional Dependencies
Sont tous corrects. Pour moi, ils étaient $(OPENCV_BUILD)\include;
, $(OPENCV_BUILD)\x64\vc14\lib;
et opencv_world320d.lib;
Respectivement.
Ma variable de chemin OPENCV_BUILD
Est C:\opencv320\build
Définissant la variable d'environnement sur %OPENCV_BUILD%\x64\vc14\bin
(où se trouvent les fichiers .dll). Pour accéder aux choses Additional
, faites un clic droit sur votre projet/solution et sélectionnez properties -> C/C++
Pour le premier et properties -> Linker -> General
Et Input
pour les deux autres.
Redémarrez Visual Studio et si tout a été correctement implémenté, vous devriez pouvoir exécuter le programme et il devrait démarrer.
Modifier:
En fonction de ce que vous avez utilisé, j'ai dû également basculer le mien de x86
Vers x64
Dans la liste déroulante Solution Platforms
.
Vous pouvez vérifier votre variable système pour confirmer le répertoire dans lequel opencv_world300.dll
est situé (peut-être C:\opencv\build\x64\vc12\bin
) est présent.
S'il existe mais que le problème n'est toujours pas résolu, essayez de mettre tous les .dll
fichiers du répertoire vers C:\WINDOWS\system32
Si cette question est toujours d'actualité, j'ai trouvé le chemin.
Je suppose que vous avez utilisé le didacticiel sur le site Web OpenCV
pour configurer OpenCV
. Une fois que vous avez exécuté l'invite de commande et exécuté la commande, il crée la variable d'environnement pour OpenCV
mais il ne l'ajoute pas dans le chemin d'accès. Donc, si vous allez dans le chemin et ajoutez l'emplacement du bac dans vc12 (vc14 pour moi), enregistrez-le et redémarrez visual studio, cela fonctionne.
Je sais que c'est un ancien article mais j'ai remarqué que le mien a un problème à distinguer entre lib
et bin
, j'ai donc ajouté les deux à la variable PATH et cela a fonctionné.
Ajoutez les chemins comme tout le monde le dit et n'oubliez pas de redémarrer Visual Studio. J'ai ajouté tous les chemins, j'ai même essayé de copier tous les opencv_world.dll dans le même dossier que le fichier source, tout ce que j'avais à faire était de redémarrer Visual Studio après avoir ajouté tous les chemins.
Après avoir installé OpenCV version 3.4.1 pour une utilisation avec VS 2017 suivant ces instructions , Visual Studio s'est plaint de manquer opencv_world341d.dll
. Même si j'avais ajouté C:\opencv\build\x64\vc15\bin
dans le chemin Windows, Visual Studio ne le trouvait toujours pas car VS était déjà ouvert lorsque j'ai modifié le chemin. Le redémarrage de Visual Studio a résolu le problème.
Je viens d'avoir exactement le même problème en utilisant la version 320. Dans mon cas, mon "Comodo Internet Security" bloquait certaines choses de l'application elle-même et d'OpenCV. Assurez-vous de les mettre tous sur la liste "de confiance" en faisant un clic droit sur eux dans votre pare-feu.