Research Interests


My primary interest is in the field of computer vision, with related interests being in computer graphics, image processing, and computational photography. Since these field names probably don't clearly distinguish themselves from another for people working outside of these fields, I'll elaborate a little.


Regarding computer vision versus image processing, a professor of mine at the University of Ottawa recently distinguished them as follows: image processing takes an image (or video) as an input and produces another image (or video) as an output, while computer vision takes an image as input and produces some other form out of data as an output. While there are exceptions to both rules, that's a good start, which I'll expand on.


Image processing (IP) typically takes an image as an input and produces some modified version of it as an output; depending on the scenario, we may want the modifications to be very obvious, or we may want them to be imperceptible to humans. For example, an algorithm to turn a color image to a grayscale image is a very simple example of IP, and one where the change should be obvious. On the other hand, JPEG compression schemes are a very common but also fairly complex at times example of IP, and one where we'd often like the product to be visually indistinguishable to the human eye.


My recent interests in Image Processing have invovled panoramic image stitching, which relates to a panoramic image-based rendering (IBR) project I've been involved with at the University of Ottawa; you can read about a course project of mine on this topic under Projects. I am also interested in color constancy issues such as White Balancing, particularly in the context of High Dynamic Range Imaging (HDRI), detailed below.


With respect to computer vision (CV), I'd expand on the former definition by saying that CV algorithms take an image and try to produce high level, abstract, or "symantically meaningful," information from it. For example, a feature detector (e.g. Harris corners or SIFT features), takes an image as an input and outputs a series of locations of what are deemed to be "robust" features that you may want to track through a series of other images of the same scene. Of course, IP and CV are intertwined, and most systems involve a combination of the two.


As for computer graphics, my interest in this field is really in its overlap with computer vision; examples of fields that fall between the two are image-based rendering and computational photography. Image based rendering is itself a broad field, but one example most people are familiar with is Google Street View, where a series of panoramic images are used to later render the environment in which they were captured.


Computational photography is a relatively new field, and is summed up as "computational imaging techniques that enhance or extend the capabilities of digital photography." If that's not clear, I understand it as any technique of pre-capture, post-capture or during-capture computational techniques that extend or push the limits of existing image capture hardware. The most well-known example is High Dynamic Range Imaging (HDRI), wherein a series of images of the same scene are captured with different expsoures (i.e. by modifying the shutter speed and/or ISO setting) and are later recombined in post-processing to form an HDR image that often has a much greater dynamic range (contrast range) than could have been captured by the camera with a single image. Other examples of computational photography include depth fusion, coded aperture imaging, etc.



Current Research


High Dynamic Range Imaging

My current research for my Master's thesis is focused on integrating High Dynamic Range Imaging (HDRI) techniques into an existing NSERC Strategic Project entitled "High-quality acquisition and rendering of image-based models for tele-presence in remote environments"  (internally called the NAVIRE project, which was the nickname of the first iteration of the project). The project involves about 12 students and 3 professors and is now in its second major iteration. This website is from the first iteration so it gives a good overview of some of the concepts, although some info may not be valid any more. The basic concept of the project is to take a series of panoramic images of an evironment and to later use those to reproduce the environment for virtual navigation or tele-presence purposes, similar to Google Street View.


One of the big goals of the project is high quality image-based rendering of the environment, and various students are investigating different ways to improve the visual experience including through view interpolation and stereo imaging. My goal is to improve the visual quality through HDRI. This involves various challenges:



Requires capturing exposure-bracketed images using a Point Grey Research Ladybug2 camera attached to a moving mobility scooter in real-world environments, i.e. where there may be moving objects such as people or cars.



The basic HDR pipeline is reasonably straight forward to integrate, however, various challenges arise such as ghost removal and image registration. I'll provide more details on this point as they develop.



Broadly defined, tele-presence is a class of technologies that give the user the ability to experience and/or interact with a remote environment without actually being there. This can take on many forms, and may range from passive observer systems to fully interactive systems. A well-known variant of the first is of course Google Street View, which allows users to remotely explore the streets of far away towns and cites.