Immersive Virtual Museum Experience with Kinect Interaction
220 likes | 330 Vues
Explore a virtual museum through natural user gestures with Kinect. Includes collision detection, object selection, and interactive tools. This project utilized VRJuggler for movement and bullet physics for realistic user interactions.
Immersive Virtual Museum Experience with Kinect Interaction
E N D
Presentation Transcript
Virtual Museum EugeniCasadesús, Ramón Oliva & Miguel Pasenau 2012, January 24th Virtual Reality, Immersive Interaction, Usability and Presence (RVA) course Master in Computing ( LSI – UPC)
Contents • Goal • Implementation • Results • Conclusions
Contents • Goal • Implementation • Results • Conclusions
Goal • Virtual Museum: 3 rooms • User can move around: • Collision detection • Objects exposed, selectable for inspection
Environment & tools • Cave or Power-Wall: • Limited space • User gestures to move around scene Kinect • VRJuggler: • Targets Cave, Power-Wall and desktop computer as well • Kinect interface: • Natural user gestures • NITE + OpenNI + FAAST • Bullet: collision detection
Contents • Goal • Implementation • Results • Conclusions
Museum floor plan 13.964 triangles
Objects 1.024 triangles 69.451 triangles 111.658 triangles 99.877 triangles 51.925 triangles 28.688 triangles 54.931 triangles 51.132 triangles 97.425 triangles
User movements • Start & finish navigation: left arm up • Forward, backward, left, right: • Segway: lean forward / backward: moves fw / bw • Rotate torso left / right: rotates left / right • Left arm up / down: starts / ends movement • Selection • Wand ? • Stretching arm ? • Help • Raising hand ?
VRJuggler approach • User stays fixed, scene moves • Init(): • Initialize devices • read ply models: walls, pedestals & objects • Create bullet physics: • Museum, objects and pedestals containers
VRJuggler approach • preFrame(): • Update physics • Gets and process kinect and other events data • Draw(): • Navigation mode: draw museum and objects • Inspection mode: draw selected object zoomed
Actual state • Museum, pedestals and objects are rendered • Collision detection is enabled • User movement is enabled: • Forward and backward, left and right turning • Starting Kinect integration: • Gestures recognition and application responds
VRJuggler issues • No x64 alone build & install • Only mixed x32 and x64 Linux build and install • Using x32 build: • https://github.com/rpavlik/vrjuggler-windows-binaries • Units in feet and inches, not meters • User centred, scene moving • No restrictions or definition of movements • No event filtering possible
Bullet + VRJuggler issues • User centred, scene moving • Translations whole scene is translated the hard way • Rotations whole scene is rotated the hard way • Collisions: • User: forward ray • Scene: bbox and cylinders • Object selection = collision wand ray - object
Kinect issues • Unstable FAAST 0.10 • Using .jconf: lot of noise • Gesture recognition using FAAST, associate with keys / events of vrjuggler
Contents • Goal • Implementation • Results • Conclusions
Results • Source code at: http://code.google.com/p/museum-navigator/
Contents • Goal • Implementation • Results • Conclusions
Conclusions • Developing a RV application: • Hard to do • Still a juggling art • VRJuggler: • Hard to build and install: documentation so-so • Only x32 is known to work • Bullet: easy to install and to start with • Kinect: difficult to incorporate to VRJuggler: • Gesture analysis and interpretation • Complicated device and proxies structure
References • Bullet documentation • VRJuggler documentation • FAAST documentation • http://www.keyboardmods.com/2010/12/howto-kinect-openninite-skeleton.html • https://github.com/avin2/SensorKinect • http://www.cs.unc.edu/Research/vrpn/
Virtual Museum Eugeni, Ramón Oliva & Miguel Pasenau 2012, January 24th Virtual Reality, Immersive Interaction, Usability and Presence (RVA) course Master in Computing ( LSI – UPC)