In the first part, we took a look at how an algorithm identifies keypoints in camera frames. These are the base for tracking & recognizing the environment.
For Augmented Reality, the device has to know more: its 3D position in the world. It calculates this through the spatial relationship between itself and multiple keypoints. This process is called “Simultaneous Localization and Mapping” – SLAM for short.
Sensors for Perceiving the World
The high-level view: when you first start an AR app using Google ARCore, Apple ARKit or Microsoft Mixed Reality, the system doesn’t know much about the environment. It starts processing data from various sources – mostly the camera. To improve accuracy, the device combines data from other useful sensors like the accelerometer and the gyroscope.
Based on this data, the algorithm has two aims:
Continue reading “Basics of AR: SLAM – Simultaneous Localization and Mapping”
- Build a map of the environment
- Locate the device within that environment
Creating apps that work well with Augmented Reality requires some background knowledge of the image processing algorithms that work behind the scenes. One of the most fundamental concepts involves anchors. These rely on keypoints and their descriptors, detected in the recording of the real world.
Anchor Virtual Objects to the Real World
AR development APIs hide much of the complexity. As a developer, you simply anchor virtual objects to the world. This ensures that the hologram stays glued to the physical location where you put it. Continue reading “Basics of AR: Anchors, Keypoints & Feature Detection”
A video is a great way to showcase your Unity app. To capture the full visual fidelity of your app, you need to record at the highest possible quality with a smooth frame rate.
Several screen recording apps are available in the Google Play Store. However, there’s an easy and completely free way that provides the highest possible quality.
This short guide demonstrates how to record the screen with an APK file generated by Unity. Of course, it works for both AR and Non-AR Apps. Continue reading “How to Record a Video from a Unity ARCore App on Android”
When dealing with Augmented and Virtual Reality, one of the most important tasks is capturing real objects and creating 3D models out of these. In this guide, I will demonstrate a quick method using the Intel RealSense camera to capture a point cloud. Next, I’ll convert the point cloud to a mesh using MeshLab. This mesh can then be exported to an STL file for 3D printing. Another option is visualization in 3D for AR / VR, where I’ll also cover how to preserve the vertex coloring from transferring the original point cloud to Unity. Continue reading “Capturing a 3D Point Cloud with Intel RealSense and Converting to a Mesh with MeshLab”
The Arlo security camera by Netgear is one of the few cameras that doesn’t need a power supply, so is easier to use outdoors. The cameras have motion-sensing integrated and upload a short video sequence around the motion event to the Netgear backend. Great about the Arlo ecosystem is that this is possible with the free plan as well; you can access the recordings of the last 7 days already with the free basic plan.
For my use case, I wanted to also take periodic pictures / recordings. These can then later be stitched together for a time-lapse. Continue reading “Using Netgear Arlo Security-Cameras for Periodic Recording”