cmake_minimum_required(VERSION 3.11)
# ==============================================================================
# AliceVision version
# ==============================================================================
file(STRINGS "aliceVision/version.hpp" _ALICEVISION_VERSION_HPP_CONTENTS REGEX "#define ALICEVISION_VERSION_")
foreach(v MAJOR MINOR REVISION)
if("${_ALICEVISION_VERSION_HPP_CONTENTS}" MATCHES "#define ALICEVISION_VERSION_${v} ([0-9]+)")
set(ALICEVISION_VERSION_${v} "${CMAKE_MATCH_1}")
else()
message(FATAL_ERROR "Failed to retrieve the AliceVision version the source code. Missing ALICEVISION_VERSION_${v}.")
endif()
endforeach()
set(ALICEVISION_VERSION ${ALICEVISION_VERSION_MAJOR}.${ALICEVISION_VERSION_MINOR}.${ALICEVISION_VERSION_REVISION})
project(aliceVisionSrc LANGUAGES C CXX VERSION ${ALICEVISION_VERSION})
# Guard against in-source builds
if(${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_BINARY_DIR})
message(FATAL_ERROR "In-source builds not allowed.")
endif()
message("CMake version: ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}")
cmake_minimum_required(VERSION 3.4)
if(NOT ALICEVISION_ROOT)
message(FATAL_ERROR "Should build from the CMakeLists.txt in the root folder.")
endif()
# Trilean option
function(trilean_option NAME DESCRIPTION DEFAULT_VALUE)
set(${NAME} ${DEFAULT_VALUE} CACHE STRING ${DESCRIPTION})
set(TRILEAN_VALUES "AUTO;ON;OFF")
set_property(CACHE ${NAME} PROPERTY STRINGS "${TRILEAN_VALUES}")
if("${${NAME}}" IN_LIST TRILEAN_VALUES)
message(STATUS "** ${NAME}: '${${NAME}}'")
else()
message(FATAL_ERROR "A trilean option only accept the values: '${TRILEAN_VALUES}'")
endif()
endfunction()
# C++14
set(CMAKE_CXX_STANDARD 14)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
# ==============================================================================
# AliceVision build options
# ==============================================================================
option(ALICEVISION_BUILD_SFM "Build AliceVision SfM part" ON)
option(ALICEVISION_BUILD_MVS "Build AliceVision MVS part" ON)
option(ALICEVISION_BUILD_HDR "Build AliceVision HDR part" ON)
option(ALICEVISION_BUILD_SOFTWARE "Build AliceVision command line tools." ON)
option(ALICEVISION_BUILD_EXAMPLES "Build AliceVision samples applications." OFF)
option(ALICEVISION_BUILD_COVERAGE "Enable code coverage generation (gcc only)" OFF)
trilean_option(ALICEVISION_BUILD_DOC "Build AliceVision documentation" AUTO)
trilean_option(ALICEVISION_USE_OPENMP "Enable OpenMP parallelization" ON)
trilean_option(ALICEVISION_USE_CCTAG "Enable CCTAG markers" AUTO)
trilean_option(ALICEVISION_USE_APRILTAG "Enable AprilTag markers" AUTO)
trilean_option(ALICEVISION_USE_POPSIFT "Enable GPU SIFT implementation" AUTO)
trilean_option(ALICEVISION_USE_OPENGV "Enable use of OpenGV algorithms" AUTO)
trilean_option(ALICEVISION_USE_ALEMBIC "Enable Alembic I/O" AUTO)
trilean_option(ALICEVISION_USE_UNCERTAINTYTE "Enable Uncertainty computation" AUTO)
trilean_option(ALICEVISION_USE_CUDA "Enable CUDA" ON)
trilean_option(ALICEVISION_USE_OPENCV "Build opencv+aliceVision samples programs" OFF)
option(ALICEVISION_USE_OCVSIFT "Add or not OpenCV SIFT in available features" OFF)
mark_as_advanced(FORCE ALICEVISION_USE_OCVSIFT)
option(ALICEVISION_USE_MESHSDFILTER "Use MeshSDFilter library (enable MeshDenoising and MeshDecimate)" ON)
option(ALICEVISION_REQUIRE_CERES_WITH_SUITESPARSE "Require Ceres with SuiteSparse (ensure best performances)" ON)
option(ALICEVISION_USE_RPATH "Add RPATH on software with relative paths to libraries" ON)
option(ALICEVISION_BUILD_TESTS "Build AliceVision tests" OFF)
option(BUILD_SHARED_LIBS "Build shared libraries" ON)
# Default build is in Release mode
if(NOT CMAKE_BUILD_TYPE AND NOT MSVC)
set(CMAKE_BUILD_TYPE "Release")
endif()
# ==============================================================================
# Enable cmake UNIT TEST framework
# ==============================================================================
if(ALICEVISION_BUILD_TESTS AND NOT CMAKE_TESTING_ENABLED)
enable_testing()
endif()
# ==============================================================================
# GNUInstallDirs CMake module
# - Define GNU standard installation directories
# - Provides install directory variables as defined by the GNU Coding Standards.
# ==============================================================================
include(GNUInstallDirs)
if(CMAKE_BUILD_TYPE MATCHES Release)
message(STATUS "Force CMAKE_INSTALL_DO_STRIP in Release")
set(CMAKE_INSTALL_DO_STRIP TRUE)
endif()
if(ALICEVISION_USE_RPATH)
if(APPLE)
set(CMAKE_MACOSX_RPATH 1)
set(CMAKE_INSTALL_RPATH "@loader_path/../${CMAKE_INSTALL_LIBDIR}:@loader_path")
elseif(UNIX)
set(CMAKE_INSTALL_RPATH "\\$ORIGIN/../${CMAKE_INSTALL_LIBDIR}:\\$ORIGIN")
endif()
endif()
# Set build path
set(EXECUTABLE_OUTPUT_PATH "${ALICEVISION_ROOT}/${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}")
set(LIBRARY_OUTPUT_PATH "${ALICEVISION_ROOT}/${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}")
# Windows specific defines
if(WIN32)
add_definitions(-DNOMINMAX)
add_definitions(-D_USE_MATH_DEFINES)
if(MSVC)
add_compile_options(/bigobj)
add_compile_options(/MP)
endif()
endif()
# Folders
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
set_property(GLOBAL PROPERTY PREDEFINED_TARGETS_FOLDER "_CMakePredefinedTargets")
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
# There was a bug in FindCUDA fixed in cmake 3.10 that creates empty strings on the nvcc command line.
# The solution merged in cmake 3.10 use the command COMMAND_EXPAND_LISTS only available from cmake >= 3.8
# https://gitlab.kitware.com/cmake/cmake/merge_requests/1008
# So we use another solution compatible with cmake >= 3.4 proposed here:
# https://gitlab.kitware.com/cmake/cmake/issues/16411
# if cmake version < 3.10 use our hacked version of FindCUDA:
if(${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} VERSION_LESS 3.10)
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/compatibilityCUDA)
endif()
if(BUILD_SHARED_LIBS)
if(WIN32)
# Export all symbols from the dynamic libraries by default (avoid dllexport markup)
set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
endif()
endif()
# ==============================================================================
# MACRO utility
# ==============================================================================
macro(add_target_properties _target _name)
set(_properties)
foreach(_prop ${ARGN})
set(_properties "${_properties} ${_prop}")
endforeach(_prop)
get_target_property(_old_properties ${_target} ${_name})
if(NOT _old_properties)
# in case it's NOTFOUND
set(_old_properties)
endif(NOT _old_properties)
set_target_properties(${_target} PROPERTIES ${_name} "${_old_properties} ${_properties}")
endmacro(add_target_properties)
# ==============================================================================
# Check that submodule have been initialized and updated
# ==============================================================================
if(NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/dependencies/osi_clp/CoinUtils)
message(FATAL_ERROR
"\n submodule(s) are missing, please update your repository:\n"
" > git submodule update -i\n")
endif()
# ==============================================================================
# Additional cmake find modules
# ==============================================================================
set(CMAKE_MODULE_PATH
${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
include(OptimizeForArchitecture)
OptimizeForArchitecture()
set(ALICEVISION_HAVE_SSE 0)
if(SSE2_FOUND OR TARGET_ARCHITECTURE STREQUAL "native")
if(MSVC AND NOT ${CMAKE_CL_64})
add_definitions(/arch:SSE2)
endif()
set(ALICEVISION_HAVE_SSE 1)
endif()
if(UNIX AND NOT ALICEVISION_BUILD_COVERAGE)
set(CMAKE_C_FLAGS_RELEASE "-O3")
set(CMAKE_CXX_FLAGS_RELEASE "-O3")
endif()
if(CMAKE_COMPILER_IS_
没有合适的资源?快使用搜索试试~ 我知道了~
可用於无人机航拍攝像圖像後處理计算机视觉的c++庫 可搭配外掛meshroom python工具包 3d重建模型
共1291个文件
hpp:402个
cpp:384个
h:164个
需积分: 16 0 下载量 51 浏览量
2022-07-31
11:54:20
上传
评论
收藏 10.81MB ZIP 举报
温馨提示
我們構建了一個完全集成的軟體,用於3D重建,照片建模和相機跟蹤。我們的目標是通過最先進的計算機視覺演算法提供強大的軟體基礎,這些演算法可以進行測試,分析和重用。學術界和工業界之間的聯繫是提供尖端演算法的要求,這些演算法具有視覺效果和拍攝過程中所需的魯棒性和品質。 攝影測量是從照片中進行測量的科學。它從一組無序照片或視頻中推斷出場景的幾何形狀。攝影是將3D場景投影到2D平面上,丟失深度資訊。攝影測量的目標是扭轉這一過程。 輸出3D模型可為*.obj, *.mesh, *.meshb, *.ply, *.off, *.stl
资源详情
资源评论
资源推荐
收起资源包目录
可用於无人机航拍攝像圖像後處理计算机视觉的c++庫 可搭配外掛meshroom python工具包
3d重建模型 (1291个子文件)
scene_v1.2.2.abc 403KB
scene_v1.2.1.abc 400KB
scene_v1.2.0.abc 400KB
AliceVision.ai 629KB
AUTHORS 937B
covdet.c 115KB
sift.c 70KB
generic.c 58KB
imopv.c 34KB
mser.c 30KB
scalespace.c 28KB
mathop.c 28KB
host.c 16KB
stringop.c 13KB
mathop_sse2.c 12KB
random.c 8KB
imopv_sse2.c 8KB
mathop_avx.c 6KB
cplex.cc 27KB
glpk.cc 24KB
arg_parser.cc 13KB
clp.cc 12KB
cbc.cc 12KB
soplex.cc 12KB
lp_skeleton.cc 5KB
windows.cc 4KB
color.cc 1KB
base.cc 1KB
lp_base.cc 937B
random.cc 867B
ChangeLog 1KB
.clang-format 728B
.clang-tidy 2KB
FindCUDA.cmake 84KB
UseLATEX.cmake 33KB
OptimizeForArchitecture.cmake 30KB
FindSuiteSparse.cmake 22KB
run_nvcc.cmake 12KB
select_compute_arch.cmake 8KB
Helpers.cmake 8KB
FindOpenEXR.cmake 7KB
MakeBundle.cmake 4KB
FindSSE.cmake 4KB
flann_utils.cmake 4KB
make2cmake.cmake 4KB
parse_cubin.cmake 3KB
FindGeogram.cmake 3KB
FindCoinUtils.cmake 3KB
FindILOG.cmake 3KB
FindClp.cmake 3KB
FindCOIN.cmake 3KB
FindOsi.cmake 3KB
FindUncertaintyTE.cmake 3KB
FindLemon.cmake 2KB
CheckCXXCompilerFlag.cmake 2KB
FindGLPK.cmake 2KB
CheckCCompilerFlag.cmake 2KB
FindFlann.cmake 2KB
AddCompilerFlag.cmake 2KB
FindMAGMA.cmake 1KB
FindMosek.cmake 1KB
FindFlann.cmake 908B
FindSOPLEX.cmake 648B
FindGhostscript.cmake 360B
FindSphinx.cmake 302B
version.cmake 62B
cudaInstallAppveyor.cmd 1KB
rtd-themes.conf 1KB
theme.conf 1KB
COPYING 2KB
emorCurveInv.cpp 430KB
emorCurve.cpp 414KB
DelaunayGraphCut.cpp 162KB
Mesh.cpp 89KB
ReconstructionEngine_sequentialSfM.cpp 85KB
VoctreeLocalizer.cpp 68KB
Texturing.cpp 66KB
BundleAdjustmentCeres.cpp 40KB
CCTagLocalizer.cpp 39KB
checkerDetector.cpp 38KB
main_panoramaInit.cpp 38KB
geometryTriTri.cpp 36KB
svgVisualization.cpp 35KB
flann.cpp 34KB
ReconstructionEngine_panorama.cpp 34KB
Fuser.cpp 33KB
main_imageProcessing.cpp 33KB
BundleAdjustmentSymbolicCeres.cpp 33KB
AlembicImporter.cpp 32KB
main_cameraInit.cpp 32KB
optimization.cpp 32KB
main_imageMatching.cpp 32KB
GlobalSfMTranslationAveragingSolver.cpp 31KB
Sgm.cpp 30KB
BundleAdjustmentPanoramaCeres.cpp 30KB
P4PfSolver.cpp 30KB
ReconstructionEngine_globalSfM.cpp 28KB
LocalBundleAdjustmentGraph.cpp 27KB
main_meshing.cpp 27KB
main_panoramaCompositing.cpp 27KB
共 1291 条
- 1
- 2
- 3
- 4
- 5
- 6
- 13
qoog8m
- 粉丝: 2
- 资源: 85
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0