introlab / rtabmap

RTAB-Map library and standalone application
https://introlab.github.io/rtabmap
Other
2.85k stars 787 forks source link

Docker build android aar instructions #739

Open TheBricktop opened 3 years ago

TheBricktop commented 3 years ago

Hello, i have recently started process of building RTABmap as a plugin library for unity into dll / so / aar format. I have some problems at start because ive wanted to build android from docker/bionic for testing and hit the wall

powershell with admin priv :

docker build -t rtabmap:android . -f android/Dockerfile

=> ERROR [ 8/10] ADD deps.bash /root/deps.bash 0.0s

[ 8/10] ADD deps.bash /root/deps.bash:

failed to compute cache key: "/deps.bash" not found: not found

the deps.bash is present in the android folder but it still cant find it

matlabbe commented 3 years ago

What if you move to android folder before doing docker build?

cd android
docker build -t rtabmap:android .
TheBricktop commented 3 years ago

Docker file has build correctly, but im not exactly sure how to proceed, since my build needs realsense library (i have one prebuild for android and win). Do i have to create my own docker image for rtabmap android without Tango and with realsense enabled? Im pretty stumped.

matlabbe commented 3 years ago

Android app doesn't support realsense.

TheBricktop commented 3 years ago

Could it be possible to build Android APK or aar of rtabmap without tango and with realsense enabled?

matlabbe commented 3 years ago

The android APK can be built without Tango, there is an experimental build (android26 docker image) working on Samsung Note10+ (using ARCore + TOF camera).

For your question yes, but some coding is required on the app side to select realsense2 driver. Theoretically, we could combine ARCore pose estimation with L515 LiDAR data for example, or even use only RealSense D435i or D455 independently of ARCore (however visual odometry perfomance on phones without ARCore may not be super fast and may result in losing tracking easily).

I've never tried to build realsense2 SDK for android NDK, but if CameraRealSense2 class can be re-used as is, it would save a lot of integration time.

TheBricktop commented 3 years ago

librealsense is pretty easy to build considering that im just dabbling in NDK and still managed to integrate it into android app. I have some build artifacts if You want to check it fast.

On a side note: Are You interested in paid support for this feature? Me and my institution is interested in supporting the possible rgbd-slam on android platform and is able to provide budget for it. Of course as an addition to the existing RTABMAP ecosystem and opensource.

matlabbe commented 3 years ago

Yes it is possible, contact me on my email (same username as here @ gmail).

TheBricktop commented 3 years ago

Hello, @matlabbe i've sent You an email about it.

Gvascons commented 2 years ago

Hello, I'm currently trying to build an Rtabmap Android APK that supports Intel Real Sense cameras - hence librealsense (in order to leverage it's LiDAR depth technology capabilities). This issue seems to be associated with your discussion. Could you provide any updates (if any) on this Rtabmap-RealSense integration? Best regards

matlabbe commented 2 years ago

No updates from my part for android realsense integration.