30 open-source projects similar to google-ar/arcore-android-sdk, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Arcore Android Sdk alternative.
Cartographer is a software library and spatial localization engine for simultaneous localization and mapping. It provides a framework for calculating the precise position and orientation of a device while concurrently generating real-time 2D and 3D representations of its environment using lidar-based data. The system implements a real-time mapping approach that uses live sensor streams to track device heading and position. It utilizes a submap-based mapping strategy to divide environments into local maps that are aligned into a global map. The project covers a range of SLAM capabilities, inc
AR.js is a web-based augmented reality framework used to create immersive experiences directly in a browser using WebGL and WebRTC. It provides a cross-platform runtime that executes on mobile devices and head-mounted displays without requiring a dedicated application installation. The framework includes a marker-based engine for detecting physical patterns or barcodes to anchor digital overlays, a location-based tool for positioning entities via GPS coordinates, and a face tracking library for anchoring content to human facial features. It supports multi-marker simultaneous tracking, custom
jeelizFaceFilter is a browser-based computer vision engine and WebGL face tracking library designed for AR filters and real-time facial movement tracking. It functions as a neural network face detector that identifies multiple faces and monitors mouth movements and rotation within a web browser. The system distinguishes itself through a model-swappable detection pipeline, allowing the exchange of neural network weights to balance accuracy and performance across different camera angles and devices. It features real-time lighting synchronization to match the illumination of 3D overlays with the
ARKit-CoreLocation is a location integration framework designed to synchronize augmented reality scenes with real-world GPS coordinates. It provides a geospatial positioning engine and anchor system that links 3D scene objects to specific physical latitudes and longitudes. The framework distinguishes itself through sensor-fusion coordinate alignment, combining high-frequency motion data with GPS updates to maintain stable coordinates and refine user positioning. It includes specialized tools for compass calibration and scene orientation correction to align the 3D environment with True North.
python-for-android is a toolchain that compiles Python applications and their dependencies into installable Android APK or AAB packages. It bundles a Python interpreter and standard library into an Android package, enabling Python code to run natively on mobile devices. The project provides a recipe-based build engine that automates dependency resolution, version pinning, and custom compilation steps for Android targets. The system cross-compiles Python and native C-extension libraries for multiple Android CPU architectures, producing separate native binaries for each target and packaging the
mobile-ffmpeg provides a framework for mobile multimedia processing, allowing Android, iOS, and tvOS applications to execute video and audio transcoding and filtering tasks. It enables the integration of pre-compiled binaries into mobile projects to avoid manual cross-compilation for different hardware architectures. The project supports cross-platform compilation and the integration of third-party codecs and external libraries. It provides a mechanism to deploy universal binaries across multiple operating systems and different CPU architectures. The toolset covers media metadata analysis, r
Open_vins is a visual-inertial odometry framework and SLAM system designed for robotic state estimation. It uses an Extended Kalman Filter to fuse high-frequency inertial sensor data with visual feature tracks to estimate the position and orientation of a moving device. The system features a sensor calibration suite for calculating intrinsic and extrinsic parameters, as well as temporal offsets between cameras and inertial measurement units. It includes a manifold interpolator that uses B-Spline curves over the special Euclidean group to produce smooth trajectory paths between discrete pose e
ARKit-CoreLocation is a framework and library for synchronizing augmented reality world tracking with GPS coordinates. It enables the placement of virtual objects at precise real-world locations by anchoring digital content to latitude and longitude coordinates. The project provides tools for aligning augmented reality scene headings with geographic north and rendering directional navigation paths on real-world surfaces. It includes capabilities for drawing geographic routing lines and creating world-scale annotations that scale based on their distance from the user. The system manages geosp
VINS-Mono is a monocular visual-inertial odometry system and loop closure SLAM framework. It functions as a real-time state estimator that fuses data from a single camera and an inertial measurement unit to determine a robot's position and orientation. The project includes a non-linear optimizer for robotics and tools for sensor calibration. The system distinguishes itself through online sensor calibration, which automatically determines spatial extrinsics and temporal offsets between the camera and inertial unit during operation. It also incorporates rolling shutter distortion correction to
model-viewer is a web-based 3D model viewer provided as a web component for rendering interactive three-dimensional assets and animations directly in a browser. It functions as a specialized GLTF web renderer designed to display GLTF and GLB files with settings optimized for performance and quality. The project includes a WebXR augmented reality player that projects 3D models into real-world environments using mobile device cameras and spatial tracking. It also features a visual regression testing tool capable of generating golden images and comparing renders to detect visual regressions in 3
This repository is for the legacy Mixed Reality Toolkit (MRTK) v2. For the latest version of the MRTK please visit https://github.com/MixedRealityToolkit/MixedRealityToolkit-Unity
This repository is a comprehensive collection of reference implementations and sample libraries for the Universal Windows Platform. It provides practical examples of how to use Windows Runtime APIs to build cross-device applications, including detailed guidance on XAML-based declarative user interfaces and DirectX-integrated rendering. The project distinguishes itself by providing a wide array of hardware integration suites, covering low-level communication with USB, Serial, I2C, SPI, and GPIO peripherals. It includes specialized implementations for mixed reality holographic rendering, advanc
ORB_SLAM3 is a visual-inertial SLAM library designed for real-time simultaneous localization and mapping. It provides a framework for tracking camera movement and building 3D maps of environments using monocular, stereo, or RGB-D cameras combined with inertial sensors. The system features a multi-map fusion engine capable of merging separate spatial sessions into a single seamless representation of an environment. It includes specialized processing for wide-angle and fisheye lenses to expand the visual field of view for spatial tracking. The library covers a broad range of spatial intelligen
This project is a robotics software package designed for simultaneous localization and mapping, providing a framework for visual-inertial odometry and environmental mapping. It functions as a middleware-integrated library that enables autonomous mobile robots to estimate their position and orientation by processing sensor data within modular software systems. The library distinguishes itself by utilizing hardware-accelerated processing to perform feature tracking and odometry calculations on dedicated graphics hardware. It maintains spatial accuracy through graph-based optimization and statis
This project is a collection of optional, community-contributed algorithms and specialized vision tools that extend the core OpenCV framework. It serves as a comprehensive library of extra modules for computer vision research, providing advanced toolsets for image processing, visual data analysis, and object detection. The library includes specialized frameworks for augmented reality tracking, biometric face recognition, and three-dimensional pose estimation. It provides distinct capabilities for identifying AR markers, tracking 3D object silhouettes, and performing neural network vulnerabili
AR.js is a JavaScript library for building augmented reality experiences that run directly in the web browser. It provides the core capability to render digital content overlaid on the real world using either the A-Frame HTML component system or the three.js JavaScript library, supporting both marker-based and location-based AR approaches. The library enables tracking of predefined 2D images, fiducial markers, and image targets through the device camera, allowing virtual objects such as 3D models, videos, or images to be positioned relative to recognized visual references. For location-based
VINS-Fusion is a multi-sensor fusion framework and visual-inertial odometry system. It integrates camera images, inertial measurement unit data, and global positioning signals through a non-linear optimization system to track the position and orientation of autonomous vehicles. The system includes a visual loop closure engine that utilizes a bag-of-words approach to recognize previously visited locations and correct trajectory drift. It further provides tools for online spatio-temporal calibration to determine the physical offset and time synchronization between cameras and inertial sensors d
This project is a community-driven directory of software resources, libraries, and tools designed to support iOS application development. It serves as a centralized reference point for developers, organizing a vast ecosystem of third-party components into a searchable, structured index to facilitate discovery and project integration. The repository distinguishes itself through its collaborative curation model, which aggregates disparate utilities into a single, maintainable catalog. By leveraging a flat-file documentation structure, it provides a clear overview of the tools available for nati
A-Frame is a declarative 3D scene engine and WebXR framework used to build virtual and augmented reality experiences directly in the web browser. It utilizes an entity component system where generic objects are assigned behaviors through attachable components and lifecycle hooks. The framework allows the assembly of immersive environments using HTML-like markup to define geometries, lighting, and materials. It implements WebXR standards to ensure consistent playback across different hardware and browsers, including support for VR headsets, desktops, and mobile devices. The system covers a br
JavaCPP is a JNI C++ bridge and foreign function interface that provides a binding generator, a native library loader, and a native memory manager. It automates the creation of Java wrappers around native C++ headers and shared libraries to enable interoperability between the two languages. The project features a C++ binding generator that parses header files to automatically produce the necessary glue code and interfaces for calling native functions. It includes a native library loader that locates and extracts platform-specific binaries from the classpath into a local cache for runtime exec
JavaCV provides a Java-based interface for native computer vision and video processing libraries. It functions as a wrapper for native vision libraries, allowing Java applications to perform image analysis, object detection, and video stream processing. The project integrates comprehensive computer vision capabilities, including facial recognition, image segmentation, and optical flow analysis for motion tracking. It also provides tools for hardware geometry calibration and projector-camera alignment to ensure accurate spatial representation. The system covers high-performance media renderin
model-viewer is a web component used to render and interact with three-dimensional models directly in a web browser. It functions as a glTF 3D model renderer and an interactive WebGL component, encapsulating a 3D rendering pipeline within a custom HTML element. The project enables web-based augmented reality, allowing 3D assets to be projected into physical environments using a mobile device camera. It provides tools for augmented reality projection and experience creation by combining 3D models with camera tracking. The component supports 3D product visualization and the integration of inte
LWJGL is a cross-platform library that provides Java bindings to native APIs for graphics, audio, compute, windowing, and input. It enables Java applications to access low-level hardware-accelerated capabilities such as OpenGL and Vulkan rendering, OpenAL 3D audio, OpenCL GPU compute, and GLFW windowing and input handling. Under the hood, LWJGL dynamically resolves native function pointers at runtime, loads platform-specific shared libraries, and uses generated JNI bindings to bridge Java and native code. It offers explicit memory management through direct buffer access and stack-allocated me
SpatialLM is a spatial modeling framework that uses large language models to transform monocular video and sensor data into structured indoor semantic maps. It functions as a system for indoor layout estimation and a point cloud semantic parser, converting raw geometric data into representations of architectural elements and object categories. The project aligns multi-modal sensor inputs with linguistic tokens, allowing a language model to serve as a reasoning engine for inferring room topology. It employs mechanisms to convert 3D point clouds and 2D image sequences into discrete tokens and s
PojavLauncher is a mobile launcher and game wrapper that provides a compatible Java Runtime Environment for mobile operating systems. Its primary purpose is to enable the execution of the Java Edition of Minecraft on Android and iOS devices. The project includes a mobile game input mapper that adapts desktop keyboard and mouse controls to touch screen interfaces. It also provides tools for mobile game modding, allowing users to install and manage custom content through a mobile interface.
Lemuroid is an Android multi-system emulator and Libretro frontend designed to run games from multiple vintage gaming systems through a single interface. It functions as a retro gaming library manager that scans local storage for game files and organizes them into a searchable catalog. The application includes a cloud-synced save manager to preserve game progress across different devices via remote storage. It also features a virtual gamepad interface that allows for custom input mapping across physical controllers, tilt sensors, and on-screen touch overlays. Additional capabilities cover ga
unidbg is a framework for emulating and debugging ARM32 and ARM64 native binaries on a host machine. It serves as an Android and iOS binary debugger and native library emulator, allowing for the execution of native code without the need for physical hardware. The project distinguishes itself through a native function hooking framework and a Model Context Protocol debugging tool that exposes emulator state to AI assistants for automated binary analysis. It also includes a specialized memory analyzer for tracking guest-side allocations and identifying leaks in native binaries. The toolset cove
This project is a cross-platform mobile device information library designed to retrieve hardware, software, and network specifications from iOS and Android devices. It serves as a tool for accessing unique device identifiers, hardware models, and processor architectures to distinguish individual mobile devices. The library provides specialized capabilities for mobile hardware identification and operating system metadata retrieval, including build numbers and API levels. It also functions as a system state monitor for real-time tracking of battery levels, charging status, and network connectiv
ZygiskNext is an Android rooting integration layer and system hooking framework. It functions as a code injector for the Android Zygote process, allowing for the modification of system behavior across various rooting environments and superuser managers. The project provides a specialized API to intercept and modify low-level system calls. This enables the injection of custom code into the base process that spawns applications, facilitating deep Android system customization and rooted development. The framework utilizes dynamic library loading, hook-based runtime modification, and Java Native