Travis Portz

Research Projects

High-Speed HDR Video

Random coded sampling scheme for high-speed HDR video capture.

High dynamic range (HDR) imaging aims to capture the full intensity range of a scene without overexposing bright areas or underexposing dark areas. This project uses a random coded sampling scheme to capture video in a way that enables reconstruction of an HDR video with a higher frame rate than the camera would normally be able to achieve. More information is available on the project website.


  • Travis Portz, Li Zhang, Hongrui Jiang. Random Coded Sampling for High-Speed HDR Video. International Conference on Computational Photography (ICCP), Boston, Massachusetts. April 2013.


Blur-aware Optical Flow

Optical flow fields without and with blur-aware data term.

Optical flow is the per-pixel motion from one image to another. This project extends the classical warping-based optical flow method to achieve accurate flow estimation in the presence of spatially-varying motion blur. More information, including source code, is available on the project website.


  • Travis Portz, Li Zhang, Hongrui Jiang. Optical Flow in the Presence of Spatially-Varying Motion Blur. International Conference on Computer Vision and Pattern Recognition (CVPR), Providence, Rhode Island. June 2012.

Video Denoising for Motion-based Exposure Control

Denoising images.

New cameras can set the exposure time based on motion estimation to reduce blur. However, large motions require a high ISO to compensate for the shorter exposure time, resulting in noisy images. This project includes the implementation of a video capture system using motion-based exposure control system and the development of an algorithm for video denoising in the context of the new exposure scheme. More information is available on the project website.


  • Travis Portz, Li Zhang, Hongrui Jiang. High-quality Video Denoising for Motion-based Exposure Control. International Workshop on Mobile Vision (IWMV), Barcelona, Spain. November 2011. Runner-up for best paper award.

Mathematical Model for Prostate Cancer

Graph of prostate cancer mathematical model.

This project develops a mathematical model of prostate cancer to study the dynamics of androgen suppression therapy and the production of prostate-specific antigen (PSA), a clinical marker for prostate cancer. This research was the basis of my honors thesis at ASU, which has been adapted into a journal paper.


  • Travis Portz, Yang Kuang, John D. Nagy. A clinical data validated mathematical model of prostate cancer growth under intermittent androgen suppression therapy. AIP Advances, Special Topic on Physics of Cancer, March 2012.

Personal Projects

Real-time Planetary Terrain Rendering

Planetary terrain screenshot.

This is a DirectX project that I worked on around 2007. It procedurally generates planetary terrain using ridged multifractal noise and renders the terrain using patch-based LOD. There is currently no texturing support and the patches are generated in the main thread, so movement can be somewhat choppy despite a high average frame rate. Future work is to incorporate additional types of noise for more varied terrain, add support for procedurally generated textures, and perform the procedural generation in background threads for smoother motion.

Source Code (C++) Binary (Windows)

Course Projects

Photometric Stereo

Photometric stereo 3D reconstruction.

Course: CS 766 - Computer Vision @ UW-Madison

Photometric stereo is a 3D reconstruction technique that uses a set of images captured with varying light directions. Surface normals can be approximated based on the change in pixel intensities between the different light directions. Given a set of images with known light directions, this project estimates the surface normals for every object pixel, solves for color albedo given the normals, and reconstructs the three-dimensional surface by fitting a depth map to the normal map.

Source Code (Matlab)

Panoramic Mosaic Stitching

Normal map of an owl toy.

Course: CS 766 - Computer Vision @ UW-Madison

Panoramic mosaic stitching produces a single panoramic image from a sequence of images captured by rotating a camera about its optical center. This project implements panoramic stitching by warping images to correct lens distortion and aligning images using the SIFT keypoint detector.

Source Code (Matlab)

High Dynamic Range Imaging

HDR thumbnail image of Wisconsin capitol building.

Course: CS 766 - Computer Vision @ UW-Madison

High dynamic range (HDR) imaging is a technique to more accurately capture the full range of intensity values in a scene. This project implements an HDR algorithm that takes a stack of differently exposed images of a single scene and produces a tonemapped HDR image.

Source Code (Matlab)

MIPS32 Microprocessor Design

Course: CSE 230 - Computer Organization and Assembly Language Programming @ ASU

This project was an honors contract to design a microprocessor in VHDL that implements a subset of the MIPS32 instruction set. The microprocessor has a multi-cycle design and supports most of the 32-bit integer arithmetic, logic, and branching instructions in the MIPS architecture.

Source Code (VHDL)

Scrabble Clone

Scrabble clone screenshot.

Course: CSE 205 - Concepts of Computer Science and Data Structures @ ASU

This project was an honors contract to develop a Scrabble-like game in Java with an attractive drag-and-drop interface. The game supports two players on a single system by hiding the opposing player's tiles.

Source Code (Java)