2017-06-12 4 views
0

Je reçois une erreur lorsque j'essaie d'exécuter un exemple de code dans le module SFM. Au départ, SFM n'était pas présent dans mon répertoire contrib. J'ai donc téléchargé le dernier contrib et j'ai collé le dossier sfm dans mon répertoire contrib. J'ai utilisé le CMakeLists.txt qui était présent dans le module sfm. Puis j'ai essayé de le construire dans mon propre répertoire avec scene_reconstruction.cpp et le CMakeLists.txt que j'ai pris du module sfm. Voici l'erreur que je reçoisImpossible d'exécuter les programmes du module SFM dans OpenCV

- L'identification du compilateur C GNU est 5.4.0 - L'identification du compilateur GNU est CXX 5.4.0 - Vérifier pour le travail compilateur C:/usr/bin/cc - Vérification du fonctionnement du compilateur C:/usr/bin/cc - fonctionne - Détection du compilateur C ABI info - Détection du compilateur C ABI info - done - Détection des caractéristiques de compilation C - Détection des fonctionnalités de compilation C - terminé - Vérification du compilateur CXX:/usr/bin/C++ - Vérification du compilateur CXX:/usr/Bin/C++ - fonctionne - compilateur ABI CXX Detecting information - compilateur ABI CXX Detecting info - fait - Détection CXX compilation caractéristiques - Détection CXX compilation caractéristiques - fait - Trouvé version installée de Eigen:/usr/lib/cmake/eigen3 - Trouvé nécessaire dépendance Ceres: Version Eigen 02/03/92 dans/usr/include/eigen3 - Trouvé nécessaire dépendance Ceres: glog - Exécution de test GFLAGS_IN_GOOGLE_NAMESPACE - Exécution de test GFLAGS_IN_GOOGLE_NAMESPACE - Succès - Requis Dépendance Ceres: gflags - Version Ceres trouvée: 1.13.0 installée dans:/usr/local avec les composants: [LAPACK, SuiteSparse, SparseLinearAlgebraLibrary, CXSparse, SchurSpec ializations, OpenMP] - Contrôle de gestion durable des forêts deps ... TRUE - désactivé car les dépendances suivantes ne se trouvent pas de module: Eigen CMake Erreur à CMakeLists.txt: 35 (ocv_module_disable): commande CMake Unknown "ocv_module_disable". Avertissement CMake (dev) dans CMakeLists.txt: Aucune commande cmake_minimum_required n'est présente. Une ligne de code telle que cmake_minimum_required (VERSION 3.5) doit être ajoutée en haut du fichier. La version spécifiée peut être inférieure à si vous souhaitez prendre en charge les anciennes versions de CMake pour ce projet. Pour plus d'informations exécuter "cmake --help-policy CMP0000". Cet avertissement est destiné aux développeurs de projets. Utilisez -Wno-dev pour le supprimer. - Configuration incomplète, des erreurs sont survenues!

PS: Je suis passé par tous les téléchargements nécessaires des bibliothèques mentionnées dans la page de documentation SFM avant de partir.

Répondre

0

Je vous suggère d'installer les dépendances nécessaires comme Eigen, journal Google, Google Drapeaux et Ceres et télécharger la version opencv_contrib correspondant à votre OpenCV et de construire avec

-DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib/modules 

et utilisez le CMakeLists.txt suivant fichier:

cmake_minimum_required(VERSION 2.8) 
project(main) 
find_package(OpenCV REQUIRED) 
include_directories(${OpenCV_INCLUDE_DIRS}) 
add_executable(main main.cpp) 
target_link_libraries(main ${OpenCV_LIBS}) 

En supposant que vous ayez le fichier main.cpp, cela devrait fonctionner si vous avez une installation correcte.

Pour plus d'informations, visitez:

https://github.com/opencv/opencv_contrib/tree/master/modules/sfm

et

https://github.com/opencv/opencv_contrib/issues/476