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.

Workplace: Sr S/W Dev
Typescript, React, 2D/3D web dev, etc.

Workplace: S/W Dev
C++, 2D/3D, numerical solvers, interprocess, etc.

Project: animal3D
C++, OpenGL, GUI, PCL library

Project: 3D Static Reconstruction
C++, OpenGL, GUI, PCL library

Project: Symmetric-Based Occlusion Patching
C++, Qt, OpenGL, GUI

Project: Computer Vision Samples
C, Matlab

Project: Equal Area Spherical Projection
C++, Qt, OpenGL, GUI

Project: Optimization of Inverse Snyder Projection
C++, Qt, OpenGL, GUI, CGAL

Project: Interactive 3D Tabletop Game
C++, Qt, OpenGL, GUI, PhysX, Tablet SDK

Workplace: Graphics Bug Fumigator
C++, OpenGL, GUI, scripting, 3D file I/O, image editing, threading, networking, etc.

Workplace: Behavioural Simulation Expert
C++, OpenGL, GUI, AI

Workplace: Jr. Graphics Dev
C++, Qt, OpenGL, GUI, Volumetric Rendering, Agile

Project: Spherical Guilloche Patterns
C++, OpenGL, GUI

Project: Interactive Natural Environments
C++, OpenGL, GUI, manual writing, level of detail

Project: Ornamental Design Samples - Star Patterns, Tilings, Celtic Knots
C++, OpenGL, GUI

Project: Raytracer
C++, file I/O

Project: Hierarchical Modeling
C++, OpenGL, GUI, file I/O

Project: Computer Graphics Samples
C++, OpenGL, GUI

Workplace: GUI Developer
Java, GUI

Project: Fractals
C++, OpenGL, GUI

Sample 3D Modeller

To experiment with modern tooling, an online 3D modeller. Read more...

April 09, 2021, at 05:33 PMerika

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.

[pdf] [slides]

March 29, 2021, at 08:52 PMerika

CPSC601.13 - Final Project

Computational Techniques for Graphics and Visualization - Final Project

Off-Axis Aligned Symmetric Reconstruction
Erika Harrison
University of Calgary, 2012


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.

[pdf] [ppt]

March 29, 2021, at 07:05 PMerika

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


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...

March 28, 2021, at 09:53 AMerika

MSc Thesis

MSc Thesis: Equal Area Spherical Subdivision

Erika Harrison
University of Calgary, 2012


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...

March 28, 2021, at 09:40 AMerika

MSc Publications

Optimization of Inverse Snyder Polyhedral Projection

Erika Harrison, Ali Mahdavi-Amiri and Faramarz Samavati
CyberWorlds 2011


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...

March 27, 2021, at 09:57 PMerika

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...

March 27, 2021, at 05:45 PMerika


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...

December 12, 2014, at 12:52 PMerika

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...

September 24, 2014, at 10:46 PMerika

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...

September 23, 2014, at 06:28 PMerika

BlogIt Side bar

Recently Written

erika: end hiding comments and categories

erika: end hiding comments and categories

Group-Specific Sidebar

Blix theme adapted by David Gilbert, powered by BlogIt