lib:pcl
Différences
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente | ||
lib:pcl [2019/02/12 16:27] – Création avec "Compilation sous Windows" sans cmake-gui root | lib:pcl [2019/09/20 13:12] (Version actuelle) – Ajout de Eigen comme dépendance root | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
===Compilation sous Windows=== | ===Compilation sous Windows=== | ||
- | Il est nécessaire d' | + | Il est nécessaire d' |
Il faut aussi les sources de Eigen mais uniquement pour les header (compilation inutile). | Il faut aussi les sources de Eigen mais uniquement pour les header (compilation inutile). | ||
On utilise '' | On utilise '' | ||
+ | |||
+ | < | ||
+ | Télécharger https:// | ||
+ | Where is my source code: ...\Sources\flann-1.7.1-src | ||
+ | Where to build binaries: ...\Sources\flann-1.7.1-src/ | ||
+ | Configure | ||
+ | Visual Studio 14 2015 | ||
+ | X64 | ||
+ | Générer | ||
+ | Modifier | ||
+ | EIGEN_INCLUDE_DIR ...\Sources\eigen | ||
+ | PCL_BUILD_WITH_FLANN_DYNAMIC_LINKING_WIN32 à true | ||
+ | PCL_BUILD_WITH_QHULL_DYNAMIC_LINKING_WIN32 à true | ||
+ | Configurer le dossier d’installation à Program Files/pcl | ||
+ | Configure | ||
+ | FLANN_INCLUDE_DIR C:\Program Files\flann.release\include | ||
+ | FLANN_LIBRARY C:\Program Files\flann.release\lib\flann.lib; | ||
+ | FLANN_LIBRARY_DEBUG C:\Program Files\flann.debug\lib\flann.lib; | ||
+ | Configure | ||
+ | WITH_OPENNI2 à false | ||
+ | WITH_VTK à false | ||
+ | WITH_QT à false | ||
+ | WITH_PCAP à false | ||
+ | WITH_LIBUSB à false | ||
+ | QHULL_LIBRARY C:/Program Files/ | ||
+ | QHULL_LIBRARY_DEBUG C:/Program Files/ | ||
+ | CUDA_ARCH_BIN 3.0 5.2 7.5 garder le dernier, une version intermédiaire et le tout premier. Ca permet d’économiser un gros temps de compilation. (avant : 3.0 3.5 5.0 5.2 5.3 6.0 6.1 7.0 7.2 7.5) | ||
+ | Boost_INCLUDE_DIR ...\Sources\boost\boost.install\include\boost-1_69 | ||
+ | Boost_*_LIBRARY_RELEASE et Boost_*_LIBRARY_DEBUG ...\Sources\boost\build.install\lib\*.lib Les .lib contenant -sgd dont la version de debug. | ||
+ | BUILD_CUDA à true | ||
+ | BUILD_GPU à true | ||
+ | CMAKE_CXX_FLAGS : ajouter "/ | ||
+ | |||
+ | Ajouter manuellement : | ||
+ | QHULL_LIBRARIES C:\Program Files\qhull.release\lib\qhull.lib | ||
+ | QHULL_LIBRARIES_DEBUG C:\Program Files\qhull.debug\lib\qhull.lib | ||
+ | QHULL_INCLUDE_DIRS C:\Program Files\qhull.release\include | ||
+ | |||
+ | |||
+ | Configure | ||
+ | Boost_*_LIBRARY_RELEASE et Boost_*_LIBRARY_DEBUG | ||
+ | BUILD_cuda_io à true | ||
+ | BUILD_cuda_apps à true | ||
+ | Configure | ||
+ | Boost_*_LIBRARY_RELEASE et Boost_*_LIBRARY_DEBUG | ||
+ | |||
+ | Ouvrir ...\Sources\pcl\build\PCL.sln | ||
+ | Pour tester compiler pcl_common, pcl_io_ply, pcl_io, pcl_kdtree | ||
+ | Compiler le projet ALL_BUILD | ||
+ | Sélectionner Debug x64 | ||
+ | </ | ||
+ | |||
+ | ===Nouveau projet Visual Studio=== | ||
+ | Ajouter les includes : | ||
+ | C:\Program Files (x86)\PCL\include\pcl-1.9 | ||
+ | ...\Sources\eigen | ||
+ | ...\Sources\boost\build.install\include\boost-1_69 | ||
+ | |||
+ | Ajouter les .lib : | ||
+ | ...\Sources\boost\build.install\lib | ||
+ | |||
+ | ===Appliquer des translations et rotations successives=== | ||
+ | Quand on veut appliquer des modifications successives, | ||
+ | <code cpp> | ||
+ | Eigen:: | ||
+ | transform.pretranslate(Eigen:: | ||
+ | transform.prerotate(Eigen:: | ||
+ | pcl:: | ||
+ | </ | ||
+ | |||
+ | ===Matrice de rotation pour aligner un axe vers un autre=== | ||
+ | <code cpp> | ||
+ | Eigen:: | ||
+ | rotAxe.setFromTwoVectors(Eigen:: | ||
+ | transform.prerotate(rotAxe); | ||
+ | </ | ||
+ | |||
+ | ===Rotation d'un nuage=== | ||
+ | Sans les normales : | ||
+ | <code cpp> | ||
+ | pcl:: | ||
+ | </ | ||
+ | |||
+ | Avec les normales : | ||
+ | <code cpp> | ||
+ | pcl:: | ||
+ | </ | ||
+ | |||
+ | ===Recherche des normales=== | ||
+ | <code cpp> | ||
+ | pcl:: | ||
+ | pcl:: | ||
+ | pcl:: | ||
+ | pcl:: | ||
+ | ne.setSearchMethod(tree); | ||
+ | // Pour l' | ||
+ | ne.setViewPoint(0, | ||
+ | ne.setInputCloud(cloud_src); | ||
+ | // L'un ou l' | ||
+ | ne.setKSearch(nombre_de_voisins); | ||
+ | ne.setRadiusSearch(distance_des_voisins); | ||
+ | ne.compute(*retval); | ||
+ | </ | ||
+ | |||
+ | [[http:// |
lib/pcl.1549985243.txt.gz · Dernière modification : 2019/02/12 16:27 de root