Skip to content
This repository has been archived by the owner on Jan 26, 2021. It is now read-only.

jannismoeller/VINS-Mobile-Android

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 

Repository files navigation

VINS-Mobile-Android

⚠️ Warning: Potentially harmful code ⚠️

During tests an anomaly occured where the smartphone has completely crashed and was only recoverable by connecting it to a computer/charger. Use at your own risk!

Background

This Project was carried out as part of my bachelor thesis (German). It is the android port of the VINS-Mobile project of the HKUST Aerial Robotics Group.

Videos:
Outdoor
Indoor
Checkerboard Pattern Printed

Build

Dependencies

OpenCV

Download the OpenCV Android SDK and exctract it somewhere. Edit the {path} in the file

VINS_Mobile_AndroidPort\app\src\main\cpp\VINS_Android\CMakeLists.txt

and

VINS_Mobile_AndroidPort\app\libs\VINS-Mobile-master\CMakeLists.txt

according to the location:

SET(OpenCV_DIR {path}/OpenCV-android-sdk/sdk/native/jni)

Boost

Download Boost and set the {path} in the file

VINS_Mobile_AndroidPort\app\libs\VINS-Mobile-master\VINS_ThirdPartyLib\CMakeLists.txt

according to the location:

set(boost_include_dir {path}/boost_1_63_0/)

You might have a different boost version. The application was only tested with Version 1.63.0.

Ceres & Eigen

Ceres unfortunately uses the ndk-build System instead of cmake for android, so it has to be invoked manually.

Before you start the build process make sure the right APP_ABI for your device is selected in the Application.mk file

To start the build process use the console/terminal and go to the directory of the Android.mk and Application.mk file:

cd ...\VINS_Mobile_AndroidPort\app\libs\VINS-Mobile-master\VINS_ThirdPartyLib\ceres-solver\jni

and call the ndk-build programm located in the Android SDK installation directory:

...\Android\sdk\ndk-bundle\ndk-build

This may take some time. You can accelerate the process with the -jN parameter with N = Number of threads, though it might lead to errors later on.

As the result there should be generated a "obj/local" directory in the "ceres-solver" folder with one libceres.a file for each selected APP_ABI in it.

Android Studio

Open the VINS_Mobile_AndroidPort folder as an Android Studio Project. Android Studio will generate all missing files and throw an error like this one:

"Error:Could not find com.android.tools.build:gradle:3.0.1. ..."

Choose "Add Google Maven repository and sync project" and you should be ready to deploy and run the application on your device.

Device Parameters

The used intrinsic and extrinsic parameters are calibrated to a Samsung Galaxy S7. To have the programm work properly it is necessary to determine the correct values for your device.

For more details on the calibration procedure see my bachelor thesis.

The parameters are located in the file

VINS_Mobile_AndroidPort\app\libs\VINS-Mobile-master\VINS_ios\global_param.cpp.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published