Gallery Archive
Featuring past and present work. Sometimes more code oriented, and sometimes more artistic. May include code samples, algorithmic approaches, or entire storylines on the process. You can also take a look at works in progress.
Sample 3D Modeller
To experiment with modern tooling, an online 3D modeller. Read more...
CPSC601.58 - Final Project
Advanced Topics in Computer Vision - Final Project
3D Reconstruction
Erika Harrison
University of Calgary, 2013
For the course project, I used 2D feature matching on the RGB-portion of an RGB-D image to determine relative transformations between frames and iteratively construct a dense point cloud. Fundamentally, the modern approaches - employing normal comparison for improved fitting, alongside other techniques (eg. KinectFusion) - generate a better resulting surface mesh. The objective, however of this approach was to understand the techniques and pitfalls for some of the core fundamentals of merging RBG-D photos. In understanding the fundamentals, it may help with implementing or improving how moving RGB-D frames can be used to build 3D models of dynamic objects (eg. wildlife from RGB-D wildlife cameras).
Used a whole bundle of different libraries, including Kinect SDK, SIFT, SURF and other feature detectors, RANSAC, Normal Distribution Transform (NDT), Iterative Closest Point (for alignment), Point Cloud Library (PCL), C++, etc.
CPSC601.13 - Final Project
Computational Techniques for Graphics and Visualization - Final Project
Off-Axis Aligned Symmetric Reconstruction
Erika Harrison
University of Calgary, 2012

Abstract
With the increase in computational power, advances within 3D reconstruction have improved significantly, thereby expanding to the previous unexplored fields of architecture, historical reconstruction and biological analysis. Merging the 3D point extraction of the Microsoft Kinect with the symmetric recognition of Mitra et al. [18], we can further advance computer vision algorithms in 3D reconstruction. By merging the concepts of these two, we can attempt to address occluded region patching through symmetric registration. The process presented herein simplifies the task to occluded region identification, symmetric patch recognition, patch deformation through displacement optimization, and finally symmetric patch application.
CPSC601.47 - Final Project
Tabletops and Interactive Surfaces - Final Project
TiltTable: Rolling Through Collaborative 3D Interaction
Erika Harrison, Mahmudul Hasan, Nicole Sultanum, Steven Longay
University of Calgary, 2009

Abstract
The shared surface provided by large interactive horizontal displays enables collaboration amongst co-located users. Such displays are increasingly being placed in schools, museums, and other public settings. We present TiltTable, a multiplayer collaborative gaming application, which facilitates experiential learning, and allows for multi-touch 3D interactions on the SMART Table. The objective of the gameplay is to direct a ball rolling on a tiltable floating island towards its goal. Read more...
MSc Thesis

MSc Thesis: Equal Area Spherical Subdivision
Erika Harrison
University of Calgary, 2012
Abstract
Numerous subdivision techniques currently aim to attain smoothness of shape. Some extend this to achieve interpolating conditions, while others aim to additionally preserve volume. Perimeters, for closed curves, or surface area, for closed surfaces, has had less exploration, yet it is of great importance to geographics and manufacturing industries. Read more...
MSc Publications

Optimization of Inverse Snyder Polyhedral Projection
Erika Harrison, Ali Mahdavi-Amiri and Faramarz Samavati
CyberWorlds 2011
Abstract
Modern techniques in area preserving projections used by cartographers and other geospatial researchers have closed forms when projecting from the sphere to the plane, as based on their initial derivations. Read more...
WebGL Hello World
A "Hello World" of WebGL, implementation taken from Mozilla Developer's Network (MDN) Web docs's Getting started with WebGL. This eight part series explores the canvas, the shaders, animating the objects, lighting and textures.Read more...
Countdown
Online countdown employing canvas element from HTML5. Enables countdown date selection, units to display with optional 0-drop, configuration of text, thematic counts, celebratory actions, etc. Useful for whatever special date you desire: New Years, Christmas, Hanukkah, Eid, Hallowe'en, St. Patty's Day, holidays, birthdates, vacations, graduation and other special dates. For details on the "making-of" see here. Read more...
CS488 - Sample Assignments
Computer Graphics - Sample Assignments
Samples of assignments 0 to 2 done in CS488 in Winter 2006. This was back in the day when OpenGL didn't use shaders, graphics processors were dual at best, the latest and greatest in game engine UIs was what you could make with Gtkmm, and texture sizes had to be powers of 2. Which I didn't discover until well after that assignment was due...Read more...
CS798 - Assignment Samples
Ornamental Design, Geometry & Computer Graphics - Sample Assignments
Samples of assignments 1 to 3 done in CS798 in Winter 2006. These include celtic knots, regular tilings and islamic star patterns.Read more...