mirror of
https://github.com/introlab/rtabmap.git
synced 2026-09-09 21:10:19 +08:00
Tango refactoring (#534)
* Created general CameraMobile interface. Tango is now optional. Camera is disabled on visualizaion (battery saving). * Working android app on non-tango android phones (tested on x86_64 android emulator). * fixed typo * android: updated tango not available msg * android: fixed build with latest android sdk/ndk * Added ARCore limited support for pose and rgb streams. * Added AREngine support. Don't assert if depth size is not a modulo of rgb size. * Added ARCore shared camera support * android: fixed read/write runtime permissions for >=api23. arcore ndk: added feature point cloud. Fixed file sharing persmissions (>=api24 issue) * ARCore NDK: mapping with feature point cloud * android: Added post build strip command to reduce native library size * android: fixed some compilation issues * android: put back gtsam as default optimizer, manifest min api is dynamic based on cmake parameters * AREngine: min api 24 * android: Fixed build without AREngine * android: fixed not available libraries for API<24 * android: fixed build with old cmake versions * android: set arcore min api to 23 * android: fixed arengine error on start when not built with native arengine support * android: fixed tango camera permission for api>=23 * Added bionic android docker files * Fixed wrong 3D words projection when depth size is not an exact multiple of rgb size. DbViewer: fixed images size not correctly shown in label of the calibration. ImageView: fixed depth scale when depth size is not a multiple of rgb size * CameraMobile: added exact display rotation for local transform * DbViewer: fixed gravity link shown in constraint view, show full local transform matrix in camera calibration label * Android: fixed localization mode in visualization, fixed some tansitions between some UI states * Android: Hide stop button when HUD is hidden. Updated About years.
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
# - Find ARCore
|
||||
# This module finds an installed ARCore client C-API package.
|
||||
#
|
||||
# It sets the following variables:
|
||||
# ARCore_FOUND - Set to false, or undefined, if ARCore isn't found.
|
||||
# ARCore_INCLUDE_DIRS - The ARCore include directory.
|
||||
# ARCore_LIBRARIES - The ARCore library to link against.
|
||||
|
||||
FIND_PATH(ARCore_INCLUDE_DIR arcore_c_api.h)
|
||||
|
||||
FIND_LIBRARY(ARCore_c_LIBRARY NAMES arcore_sdk_c PATH_SUFFIXES ${ANDROID_ABI})
|
||||
FIND_LIBRARY(ARCore_jni_LIBRARY NAMES arcore_sdk_jni PATH_SUFFIXES ${ANDROID_ABI})
|
||||
|
||||
IF (ARCore_INCLUDE_DIR AND ARCore_c_LIBRARY AND ARCore_jni_LIBRARY)
|
||||
SET(ARCore_FOUND TRUE)
|
||||
SET(ARCore_INCLUDE_DIRS ${ARCore_INCLUDE_DIR})
|
||||
SET(ARCore_LIBRARIES ${ARCore_c_LIBRARY} ${ARCore_jni_LIBRARY})
|
||||
ENDIF (ARCore_INCLUDE_DIR AND ARCore_c_LIBRARY AND ARCore_jni_LIBRARY)
|
||||
|
||||
IF (ARCore_FOUND)
|
||||
# show which ARCore was found only if not quiet
|
||||
IF (NOT ARCore_FIND_QUIETLY)
|
||||
MESSAGE(STATUS "Found ARCore: ${ARCore_INCLUDE_DIRS}")
|
||||
ENDIF (NOT ARCore_FIND_QUIETLY)
|
||||
ELSE (ARCore_FOUND)
|
||||
# fatal error if ARCore is required but not found
|
||||
IF (ARCore_FIND_REQUIRED)
|
||||
MESSAGE(FATAL_ERROR "Could not find ARCore (client and/or support libraries)")
|
||||
ENDIF (ARCore_FIND_REQUIRED)
|
||||
ENDIF (ARCore_FOUND)
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
# - Find AREngine
|
||||
# This module finds an installed AREngine client C-API package.
|
||||
#
|
||||
# It sets the following variables:
|
||||
# AREngine_FOUND - Set to false, or undefined, if AREngine isn't found.
|
||||
# AREngine_INCLUDE_DIRS - The AREngine include directory.
|
||||
# AREngine_LIBRARIES - The AREngine library to link against.
|
||||
|
||||
FIND_PATH(AREngine_INCLUDE_DIR huawei_arengine_interface.h)
|
||||
|
||||
FIND_LIBRARY(AREngine_impl_LIBRARY NAMES huawei_arengine_impl PATH_SUFFIXES ${ANDROID_ABI})
|
||||
FIND_LIBRARY(AREngine_jni_LIBRARY NAMES huawei_arengine_jni PATH_SUFFIXES ${ANDROID_ABI})
|
||||
FIND_LIBRARY(AREngine_ndk_LIBRARY NAMES huawei_arengine_ndk PATH_SUFFIXES ${ANDROID_ABI})
|
||||
|
||||
IF (AREngine_INCLUDE_DIR AND AREngine_impl_LIBRARY AND AREngine_jni_LIBRARY AND AREngine_ndk_LIBRARY)
|
||||
SET(AREngine_FOUND TRUE)
|
||||
SET(AREngine_INCLUDE_DIRS ${AREngine_INCLUDE_DIR})
|
||||
SET(AREngine_LIBRARIES ${AREngine_impl_LIBRARY} ${AREngine_jni_LIBRARY} ${AREngine_ndk_LIBRARY})
|
||||
ENDIF (AREngine_INCLUDE_DIR AND AREngine_impl_LIBRARY AND AREngine_jni_LIBRARY AND AREngine_ndk_LIBRARY)
|
||||
|
||||
IF (AREngine_FOUND)
|
||||
# show which AREngine was found only if not quiet
|
||||
IF (NOT AREngine_FIND_QUIETLY)
|
||||
MESSAGE(STATUS "Found AREngine: ${AREngine_INCLUDE_DIRS}")
|
||||
ENDIF (NOT AREngine_FIND_QUIETLY)
|
||||
ELSE (AREngine_FOUND)
|
||||
# fatal error if AREngine is required but not found
|
||||
IF (AREngine_FIND_REQUIRED)
|
||||
MESSAGE(FATAL_ERROR "Could not find AREngine's impl, jni and ndk libraries)")
|
||||
ENDIF (AREngine_FIND_REQUIRED)
|
||||
ENDIF (AREngine_FOUND)
|
||||
|
||||
Reference in New Issue
Block a user