mirror of
https://github.com/introlab/rtabmap.git
synced 2026-09-01 17:10:26 +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:
10
docker/bionic/android/rtabmap_api23/Dockerfile
Normal file
10
docker/bionic/android/rtabmap_api23/Dockerfile
Normal file
@@ -0,0 +1,10 @@
|
||||
# Image: introlab3it/rtabmap:android23
|
||||
|
||||
FROM introlab3it/rtabmap:android-deps
|
||||
|
||||
WORKDIR /root/
|
||||
|
||||
ADD rtabmap.bash /root/rtabmap.bash
|
||||
RUN chmod +x rtabmap.bash
|
||||
RUN /bin/bash -c "./rtabmap.bash /opt/android 23"
|
||||
|
||||
65
docker/bionic/android/rtabmap_api23/rtabmap.bash
Normal file
65
docker/bionic/android/rtabmap_api23/rtabmap.bash
Normal file
@@ -0,0 +1,65 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [ $# -ne 2 ]; then
|
||||
echo "rtabmap.bash android_install_prefix api_level (23 for tango, 24 for arengine) # Example: build.bash /opt/android 24"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
prefix=$1
|
||||
api=$2
|
||||
pwd=$(pwd)
|
||||
|
||||
|
||||
# get rtabmap
|
||||
git clone -b tango_refactoring https://github.com/introlab/rtabmap.git rtabmap-tango
|
||||
cd
|
||||
|
||||
# tango
|
||||
wget 'https://docs.google.com/uc?authuser=0&id=12rHHkYM5k-UnQn-xGXs9JqYWhSXrgJr3&export=download' -O TangoSDK_Ikariotikos_C.zip
|
||||
unzip -qq TangoSDK_Ikariotikos_C.zip
|
||||
rm TangoSDK_Ikariotikos_C.zip
|
||||
cp -r lib_tango_client_api/include/* $prefix/arm64-v8a/include/.
|
||||
cp -r lib_tango_client_api/lib/arm64-v8a/* $prefix/arm64-v8a/lib/.
|
||||
rm -r lib_tango_client_api
|
||||
wget 'https://docs.google.com/uc?authuser=0&id=1AqVuEVu5284X6OgrGWu12VTrx4pY99Jb&export=download' -O TangoSupport_Ikariotikos_C.zip
|
||||
unzip -qq TangoSupport_Ikariotikos_C.zip
|
||||
rm TangoSupport_Ikariotikos_C.zip
|
||||
cp -r lib_tango_support_api/include/* $prefix/arm64-v8a/include/.
|
||||
cp -r lib_tango_support_api/lib/arm64-v8a/* $prefix/arm64-v8a/lib/.
|
||||
rm -r lib_tango_support_api
|
||||
wget 'https://docs.google.com/uc?authuser=0&id=1s5iPJ7xiridj9Jj--gCy2XiQFniheVm6&export=download' -O TangoSDK_Ikariotikos_Java.jar
|
||||
mv TangoSDK_Ikariotikos_Java.jar rtabmap-tango/app/android/libs/.
|
||||
|
||||
# ARCore
|
||||
wget 'https://docs.google.com/uc?authuser=0&id=1A4gMviyxHCnA19MTMbitOWoSOyoZcCef&export=download' -O arcore.zip
|
||||
unzip -qq arcore.zip
|
||||
rm arcore.zip
|
||||
cp -r arcore/include/* $prefix/arm64-v8a/include/.
|
||||
cp -r arcore/arm64-v8a/* $prefix/arm64-v8a/lib/.
|
||||
cp arcore/*.jar rtabmap-tango/app/android/libs/.
|
||||
rm -r arcore
|
||||
|
||||
# AREngine
|
||||
wget 'https://docs.google.com/uc?authuser=0&id=1rdaD2Z1QBv-SUeUy0oBmg3C2odfxTHgR&export=download' -O arengine.zip
|
||||
unzip -qq arengine.zip
|
||||
rm arengine.zip
|
||||
cp -r arengine/include/* $prefix/arm64-v8a/include/.
|
||||
cp -r arengine/arm64-v8a/* $prefix/arm64-v8a/lib/.
|
||||
cp arengine/*.jar rtabmap-tango/app/android/libs/.
|
||||
rm -r arengine
|
||||
|
||||
# resource tool
|
||||
cd rtabmap-tango/build
|
||||
cmake -DANDROID_PREBUILD=ON ..
|
||||
make
|
||||
cd ../..
|
||||
|
||||
# rtabmap
|
||||
mkdir rtabmap-tango/build/arm64-v8a
|
||||
cd rtabmap-tango/build/arm64-v8a
|
||||
$pwd/cmake-3.17.0-Linux-x86_64/bin/cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK/build/cmake/android.toolchain.cmake -DANDROID_ABI=arm64-v8a -DANDROID_NDK=$ANDROID_NDK -DANDROID_NATIVE_API_LEVEL=$api -DBUILD_SHARED_LIBS=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$prefix/arm64-v8a -DCMAKE_FIND_ROOT_PATH="$prefix/arm64-v8a/bin;$prefix/arm64-v8a;$prefix/arm64-v8a/share" -DBUILD_EXAMPLES=OFF -DBUILD_TOOLS=OFF -DOpenCV_DIR=$prefix/arm64-v8a/sdk/native/jni ../..
|
||||
make
|
||||
make clean
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user