Git Product home page Git Product logo

project-tango-poc's Introduction

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

project-tango-poc's People

Contributors

stetro avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.