³ [I/O] Input/Output Cubed Kevin Eykholt Tom Finneran Chris Pitoniak Shamit Som ECE Department 1 Problem Statement Problem: • Time: Mistakes can be timeconsuming to correct • Visualization: It is hard to use a computer to make virtual 3D models • Health Hazard: Long-term exposure to sculpting materials can cause significant health hazards • Waste: Many iterations of physical models require materials that are not resused ECE Department 2 Effect on the Individual It should allow the user to correct mistakes easily without having to restart the project It should make computer modeling more intuitive and efficient for the user We want this ECE Department On this Current Approach 3 Effect on Group Extensive work with sculpting materials exposes modelers to dust, a significant health hazard • Long-term exposure to silica dust, common in ceramic sculpting, can lead to Silicosis, a.k.a. “Potter’s Rot” ECE Department 4 Effect on Group Need to reduce the amount of waste generated from failed project attempts ECE Department 5 Significance 3D Modeling covers many disciplines: • Entertainment: Movies, Games, Art • Concept Art • Mechanical/Civil Engineering and Architecture • Product mock-ups • Biology and Chemistry • Displaying chemical structures • DNA and protein models ECE Department 6 Requirements Analysis: User Specifications Use hand gestures to create, modify, and manipulate virtual 3D models Display accurate, distortion-free holographic image Respond to user inputs in realtime Relatively inexpensive - <$1000 ECE Department 7 Inputs and Outputs Inputs • Hand Gestures ECE Department Outputs • Hologram • Virtual 3D Computer Model 8 General Solution Block Diagram Input Hand Gesture Recognition Output 3D Volumetric Display Computer/Software 3D Object Data Traditional 2D Representation ECE Department 9 Requirement Analysis – Technical Specifications Real-time response – <100ms update time No major power specifications – device is mains powered No major weight specifications – device is stationary Input Specifications: • Respond to hand gestures • Recognize enough different gestures to distinguish between different functions • 1 millimeter skeletal precision Software Specifications: • Map input gestures to functions in the virtual 3D object space • Object functions: creation, translation, rotation, scaling • Control functions: save, undo • Display traditional 2D representation of virtual objects • Generate appropriate output for volumetric display ECE Department 10 Requirement Analysis – Technical Specifications Output: • • • • • Distortion-free, volumetric image 75 X 75 x 75 voxel resolution minimum ≥20 FPS refresh rate No smaller than a 2 inch cube display Quiet operation (<30 dBa) ECE Department 11 Design Alternatives - Input Kinect • About $100 on Amazon • Pros: • Great for tracking large body movements • Widely available software support • Cons: • Low precision finger tracking (>1mm) ECE Department 12 Design Alternatives - Software 3D Modeling Software: • Pros: • Complex object manipulation is already implemented in the software • Cons: • Expensive: Maya and 3DS Max are $195 a month • Tough to programmatically control due to lack of lowlevel access ECE Department 13 Design Alternatives - Output Stacked Spinning LED Display • Pros: • Cheaper components • Simple theory of operation • Cons: • Low resolution • Mechanically complex • Difficult to transmit data due to moving parts ECE Department 14 Design Alternatives - Output Planar Spinning LED Display • Pros: • Simple theory of operation • Cons: • Low resolution • Mechanically complex • Prohibitively expensive • 5000+ LEDs for decent resolution • Control circuitry • Difficult to transmit data due to moving parts ECE Department 15 Design Alternatives - Output Helical Volumetric Sweep • Pros: • Simple mechanical implementation • Can transmit data over a cable • Cons: • Difficult to focus on entire depth of volumetric sweep • Complex real-time processing due to helical cross sections ECE Department 16 Our Solution - Block Diagram Input Output Input Parsing Data Processing Projector Planar Volumetric Sweep Device Sensor Data Leap Motion Leap Motion Output Data 2D Visual Diagnostic Output Processing Computer ECE Department 17 Input Concept - LEAPMotion LEAPMotion sensor reads in hand motion, stores relevant data • Stores hand/finger positions into lists to determine corresponding gesture Sensor can differentiate between hand gestures • Swipes, finger clicks, circles, pinches ECE Department 1mm skeletal precision 18 Input Concept - Software Map input gestures to specific manipulations • ECE Department Create, rotate, translate, scale, undo, save, etc Virtual models displayed on the 2D visual diagnostic software Planar cross sections are taken and sent to the output for 3D display Using JOGL for rendering traditional 2D representation 19 Output Concept ECE Department Piston converts rotary motion (supplied by motor) into constant, reciprocating linear motion Projector and projection plane will be fixed relative to each other– eliminates focus issues • Possible issues with sourcing cable able to withstand mechanical stress Projection screen must be thin and mostly translucent • Slight opacity needed to successfully project image visibly on both sides of screen 20 Output Concept ECE Department Projector will project planar cross-sections of desired image • Software processing of planar cross sections significantly easier to manage than helical cross sections Fast enough reciprocation (~12Hz for 24fps interlaced) will allow for persistence-of-vision effects Projection rate determines resolution in sweeping axis • Higher projection rate more sections per cycle 21 Team Shamit Som - EE Class of 2014 Kevin Eykholt - CSE Class of 2014 Dennis Goeckel - Professor Faculty Advisor Tom Finneran- CSE Class of 2014 ECE Department Chris Pitoniak- CSE Class of 2014 22 Timeline 27 Oct Chris Kevin Shamit Tom 12 Nov Leap Motion gesture mapping Leap Motion gesture recognition Basic Shape Generation Scaling, Translation, Rotation Build volumetric sweep frame Add motor and ensure mechanical stability Conceptual design for software to projector interface ECE Department 20 Nov 31 Dec 15 Jan MDR 21 Mar Test gesture mapping Generate planar cross sections Test POV Effect 20 Feb Implement and test interface Add projector Integrate Full system and test Test and optimize POV effect CDR 23 MDR Deliverables Input: • Demonstrate Scaling and Rotation • Demonstrate interaction between Leap Motion and software • Confirmed with 2D Visual Diagnostic Output: • Create a volumetric sweep device • Critical path to entire output system • Simple demonstration of POV effect ECE Department 24