-
Notifications
You must be signed in to change notification settings - Fork 72
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'main' into features/dense_matching
- Loading branch information
Showing
105 changed files
with
852 additions
and
615 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,81 @@ | ||
name: limap | ||
|
||
on: | ||
push: | ||
branches: | ||
- main | ||
- release/* | ||
pull_request: | ||
types: [ assigned, opened, synchronize, reopened ] | ||
release: | ||
types: [ published, edited ] | ||
|
||
jobs: | ||
build: | ||
name: ${{ matrix.config.os }} ${{ matrix.config.arch }} | ||
runs-on: ${{ matrix.config.os }} | ||
strategy: | ||
matrix: | ||
config: [ | ||
{os: ubuntu-latest}, | ||
] | ||
env: | ||
COMPILER_CACHE_VERSION: 1 | ||
COMPILER_CACHE_DIR: ${{ github.workspace }}/compiler-cache | ||
CCACHE_DIR: ${{ github.workspace }}/compiler-cache/ccache | ||
CCACHE_BASEDIR: ${{ github.workspace }} | ||
# For faster builds in PRs, skip all but the latest Python versions. | ||
PULL_REQUEST_CIBW_BUILD: cp39-{manylinux}* | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- uses: actions/cache@v4 | ||
id: cache-builds | ||
with: | ||
key: limap-v${{ env.COMPILER_CACHE_VERSION }}-${{ matrix.config.os }}-${{ matrix.config.arch }}-${{ github.run_id }}-${{ github.run_number }} | ||
restore-keys: limap-v${{ env.COMPILER_CACHE_VERSION }}-${{ matrix.config.os }}-${{ matrix.config.arch }} | ||
path: ${{ env.COMPILER_CACHE_DIR }} | ||
|
||
- name: Set env (Linux) | ||
if: runner.os == 'Linux' | ||
run: | | ||
sudo apt-get update && sudo apt-get install -y \ | ||
git \ | ||
build-essential \ | ||
cmake \ | ||
ninja-build \ | ||
libboost-program-options-dev \ | ||
libboost-graph-dev \ | ||
libboost-system-dev \ | ||
libeigen3-dev \ | ||
libceres-dev \ | ||
libflann-dev \ | ||
libfreeimage-dev \ | ||
libmetis-dev \ | ||
libgoogle-glog-dev \ | ||
libgtest-dev \ | ||
libgmock-dev \ | ||
libsqlite3-dev \ | ||
libglew-dev \ | ||
qtbase5-dev \ | ||
libqt5opengl5-dev \ | ||
libcgal-dev \ | ||
libcgal-qt5-dev \ | ||
libgl1-mesa-dri \ | ||
libunwind-dev \ | ||
xvfb | ||
- name: Install Python dependencies | ||
run: | | ||
git submodule update --init --recursive | ||
python -m pip install --upgrade pip | ||
python -m pip install setuptools | ||
python -m pip install -r requirements.txt # If you have a requirements file | ||
- name: Build | ||
run: | | ||
python -m pip install -v . | ||
- name: Run Python tests | ||
run: | | ||
python -c "import limap; print(limap.__version__)" | ||
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,82 @@ | ||
################################################################################ | ||
# Find packages | ||
################################################################################ | ||
find_package(Eigen3 3.4 REQUIRED) | ||
find_package(FreeImage REQUIRED) | ||
find_package(Glog REQUIRED) | ||
if(DEFINED glog_VERSION_MAJOR) | ||
# Older versions of glog don't export version variables. | ||
add_definitions("-DGLOG_VERSION_MAJOR=${glog_VERSION_MAJOR}") | ||
add_definitions("-DGLOG_VERSION_MINOR=${glog_VERSION_MINOR}") | ||
endif() | ||
find_package(Boost REQUIRED COMPONENTS | ||
graph | ||
program_options | ||
system) | ||
|
||
# Ceres | ||
find_package(Ceres REQUIRED COMPONENTS SuiteSparse) | ||
if(${CERES_VERSION} VERSION_LESS "2.2.0") | ||
# ceres 2.2.0 changes the interface of local parameterization | ||
add_definitions("-DCERES_PARAMETERIZATION_ENABLED") | ||
endif() | ||
if(INTERPOLATION_ENABLED) | ||
message(STATUS "Enabling pixelwise optimization with ceres interpolation. This should be disabled for clang.") | ||
add_definitions("-DINTERPOLATION_ENABLED") | ||
else() | ||
message(STATUS "Disabling pixelwise optimization with ceres interpolation.") | ||
endif() | ||
|
||
# OpenMP | ||
if(OPENMP_ENABLED) | ||
find_package(OpenMP) | ||
if(OPENMP_FOUND) | ||
message(STATUS "Enabling OpenMP support") | ||
add_definitions("-DOPENMP_ENABLED") | ||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}") | ||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}") | ||
endif() | ||
endif() | ||
|
||
# PoseLib | ||
include(FetchContent) | ||
FetchContent_Declare(PoseLib | ||
GIT_REPOSITORY https://github.com/PoseLib/PoseLib.git | ||
GIT_TAG a84c545a9895e46d12a3f5ccde2581c25e6a6953 | ||
EXCLUDE_FROM_ALL | ||
) | ||
message(STATUS "Configuring PoseLib...") | ||
if (FETCH_POSELIB) | ||
FetchContent_MakeAvailable(PoseLib) | ||
else() | ||
find_package(PoseLib REQUIRED) | ||
endif() | ||
message(STATUS "Configuring PoseLib... done") | ||
|
||
# COLMAP | ||
FetchContent_Declare(COLMAP | ||
GIT_REPOSITORY https://github.com/colmap/colmap.git | ||
GIT_TAG 63b2cc000de32dc697f45ef1576dec7e67abddbc | ||
EXCLUDE_FROM_ALL | ||
) | ||
message(STATUS "Configuring COLMAP...") | ||
if (FETCH_COLMAP) | ||
FetchContent_MakeAvailable(COLMAP) | ||
else() | ||
find_package(COLMAP REQUIRED) | ||
endif() | ||
message(STATUS "Configuring COLMAP... done") | ||
|
||
# JLinkage | ||
FetchContent_Declare(JLinkage | ||
GIT_REPOSITORY https://github.com/B1ueber2y/JLinkage.git | ||
GIT_TAG 452d67eda005db01a02071a5af8f0eced0a02079 | ||
EXCLUDE_FROM_ALL | ||
) | ||
message(STATUS "Configuring JLinkage...") | ||
if (FETCH_JLINKAGE) | ||
FetchContent_MakeAvailable(JLinkage) | ||
else() | ||
find_package(JLinkage REQUIRED) | ||
endif() | ||
message(STATUS "Configuring JLinkage... done") |
Oops, something went wrong.