Hamza Mahmud - Augmenting Reality - 2013

30/10/2014
Augmenting
Reality
Hamza Mahmud
University of Manchester
At the School of CS
Academics and research
Teaching, research, public engagement, recruitment, schools
liaison, Animation Day
Exhibit
“Augmented Reality”
Role: Update the exhibit (and various tasks alongside)
Research/software engineering role
Planning
Implementation
Testing
Documenting
Deployment
1
30/10/2014
Background
Background
The “Augmented Reality” Exhibit
Live view of the real world, supplemented
with computer generated content
UoM AR Exhibit: Camera, Markers, Models
Webcam feed
User sees this
AR software
(adds content)
2
30/10/2014
Background
Markers to models
Each marker
corresponds to a
specific model
Background
Tackling the problem
Milestones
Long term
Open day
Animation13
Medium term
Demonstrations
Short Term
Daily blog
Task-based planning
Requirements evolving
Factors:
Length of task
Dependencies on other tasks
Importance, risk and impact
Updated daily
3
30/10/2014
Tasks
Tasks
Adding more models
Flexibility and expandability
External config file
Reusable methods, no
duplicate code
ModelSets system
Rotate through model sets via
keyboard
Same number of marker cards
Any number of models
4
30/10/2014
Tasks
Other AR exhibit related tasks
Creating dynamic models
Updating motion on each frame
Adding sound
Playing and stopping sounds and
background music depending on model
set and visible markers
123D – AR Demo…
Tasks
What is the 123D – AR Demo?
Animation13!
123D Catch
Import model into AR exhibit
Challenges
123D Model compatibility
Model parameters, height, zoom
etc.
Different locations
All XNA content pre-processed at
compile time
AR program must run at all times
Automate the entire process
5
30/10/2014
Tasks
Deployment
123D Machine
123D Capture, upload model +
texture
AR demo helper XNA program
Download model + texture
Load and compile model
Normalise parameters in GUI
Export model
AR Machine
AR exhibit XNA program
Load and run compiled model
Tasks
AR Demo Helper XNA Program
Normalisation of models
.Net features
FileSystemWatcher
WinSCP
Etc.
Full GUI
Help messages,
interactive
Simple to use
6
30/10/2014
Tasks
Testing
White box testing
Code coverage (statement coverage) and
fault injection
All GUI functions tested
error catching features
crash recovery features
Specification-based black box testing
Ensure all requirements met
Usability, software performance,
destructive testing
Tasks
Other tasks
Document and create user guides
Batch processing images for Animation13
Web gallery
Raspberry Pi MAC address monitoring and
logging script
Testing and creating tutorials for “Brave
New World” teaching infrastructure
7
30/10/2014
Conclusion
Conclusion
Summary
Successfully completed updating of AR
exhibit
School of CS determined my work met the
required standards
Checked by Supervisor
Demonstrated at various events and open
days
Documentation, user guides
Other tasks
8
30/10/2014
Conclusion
What I have gained
Time management
Project management
Insight into the strategies of running of
large scale events (Animation13)
Technical skills
Stack of software
XNA
Conclusion
Possible future extensions
Handle build errors completely and
interactively at runtime
Use external XML file for completely
automated new model addition
Upgrade the entire AR toolset, better
camera, newer software, using the latest
ARToolkit and OpenGL
9
30/10/2014
Questions?
10