• Stars
    star
    111
  • Rank 308,249 (Top 7 %)
  • Language
    Java
  • Created over 8 years ago
  • Updated about 8 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

PoC zur Master Thesis - Optimierung von Augmented Reality Anwendungen durch die Berücksichtigung von Tiefeninformationen mit Googles Project Tango

PoC - Master Thesis Build Status

Optimierung von Augmented Reality Anwendungen durch die Berücksichtigung von Tiefeninformationen mit Googles Project Tango

Optimization of AR applications considering the depth information with Googles project tango

Table of Content

Final Prototype

  • depthmap rendering with 3 different reconstruction mechanisms
    • pointcloud projection
    • tsdf reconstruction
    • plane reconstruction
  • using depthmap as Z-Buffer (GL_DEPTH_COMPONENT) for augmented reality occlustion

final_overview

  • optional OpenCV guided filtering with settings possible

filter

Augmented Reality (ar/)

  • AR Camera matching intrinsics
  • motion tracking with correct gl positioning
  • visualization of the current pointcloud
  • ray-intersection for pointcloud interaction
  • simple tower defense game with ray intersection
  • simple direct pointcloud z-buffer occlusion

AR Screenshot

Pointcloud App (pc/)

  • collects points into a large pointcloud using an octree
  • exports to pts file
  • plane based reconstruction applicable
  • marching cube reconstruction applicable (usualy to slow here!)

PointCloud Screenshot PointCloud Screenshot 2

Plane Based Reconstruction (construct/)

1. OctTree clustering of the global pointcloud
2. on incoming depth frame
	* update random n global clusters with points from depth frame
	* use RANSAC to detect 3 planes per cluster
	* project points from 3D space to 2D space (based on detected planes)
	* use Graham Scan to compute comvex hull for each plane
	* use Sweep‐line for triangulation with poly2tri
	* project polygon vertices back to 3D space (based on detected planes)

Video Demonstration

Plane Reconstruction Demo

Old Screenshots

AR Screenshot AR Screenshot

Native PCL based Reconstruction (construct-native/)

  • VoxelGrid downsampling
  • Greedy Triangulation with PCL
  • Build PCL Library not included!

Unity Screenshot 1

CHISEL open_chisel implementation (chisel/)

  • online reconstruction using open_chisel library
  • transformation and interfaces to native environment
  • PLY exporter
  • Build open_chisel Library not included!

Chisel Screenshot

OpenCV Depthmap Generation and Filtering

  • generate depthmap using this approach
  • applying inpaint and guided filtering for depthmap improvements
  • Build opencv+contrib Library not included!

Chisel Screenshot

Video Demonstration

OpenCV Demonstration

OpenCV Depthmap Filtering for AR

  • using the previous approach for a pointcloud reprojection

Chisel Screenshot

Unity Implementierung (unity/)

  • Reconstruction using the MeshBuilder with an simple TSDF by Google
  • Implementation of a Clipping Depth Shader
  • simple ball moving interaction
  • extension of shader for shadowing effects

Video Demonstration

Instagram Video Demo

Old Screenshots

Unity Screenshot 1 Unity Screenshot 1

Verwendete Librarys

More Repositories

1

ngn-sniffer

Android APP for NGN to sniff location based rf signals like GSM, Bluetooth or Wifi
CSS
23
star
2

masterthesis

Master Thesis
TeX
19
star
3

weather-visualization

a small d3 based weather visualization of a past year
JavaScript
12
star
4

cordova-plugin-fcm-config

plugin that copies the required FCM configurations in the project folder
11
star
5

objScanner

kinect python script to scan the depth of objects
Python
10
star
6

pix-table

Python Modules for RGB LED Table
Python
8
star
7

digitransit-busstop-sign

Digitransit busstop sign based on ESP32 & ESP8266 supported in Finland
C++
8
star
8

domradio-ios

iOS domradio.de App
Swift
4
star
9

onair-sign

ESP8266 based led shows a red blinking light whenever you have a running Google Meet session
JavaScript
4
star
10

tonie-clone

music and audio book box controlled by RFID tags
C
3
star
11

SNOC

PHP-Shell (shell is not an oil company)
PHP
3
star
12

astroids

JavaScript
3
star
13

softwaretools

An essay for a course called Software Tools and Evaluation at UTA, Tampere in Finnland
TeX
2
star
14

domradio-android

Android domradio.de App
Kotlin
2
star
15

esp32-webradio

ESP32 Webradio Project Implementation
C++
2
star
16

pygmusic

A GTK music player using the unofficial google music API
Python
2
star
17

pickmeapp

pick me App - cordova and ionic based application for interactive cologne hackerthon 2014
JavaScript
2
star
18

learnodore

OS X Application for pomodore technique
Objective-C
2
star
19

white-noise-box

Simple device which plays any given wav file. Used to play white noise sounds like rain, waterfalls or vacuum cleaner.
C
1
star
20

radioexpert

Java Client/Server With PubSub and APIs
Java
1
star
21

tweetpoller

jQuery plugin to poll new timeline-tweets
JavaScript
1
star
22

KRY

Cryptography Lab
Java
1
star
23

reportamoose

report a moose frontend and backend application
JavaScript
1
star
24

tgtg-grabber

Test TGTG API client to check for available Items in your TGTG favorites.
Kotlin
1
star
25

MDS-Viewer

webapplication to browse metadata services (MDS) in fusion middleware 11g
JavaScript
1
star
26

loriottime

loriot theater vard manager in rails
Ruby
1
star
27

vrr-monitor

VRR monitor display for my train stop, to keep track of S-Bahn delay in the morning based on ESP32.
C++
1
star
28

georeport

A Node.js georeport v2 server based on express.
JavaScript
1
star
29

jquery-moorhuhn

very old jquery moorhuhn reproduction
JavaScript
1
star
30

open100

Assembler interpreter written in TypeScript.
TypeScript
1
star
31

GeoWear

Android Wear App für Geocaching
Java
1
star