Todd Wittman

PhD student
Department of Mathematics
University of Minnesota
HOME
C.V.
TEACHING
RESEARCH
RANDOM


My research interests lie in applied math, specifically image processing. But that still isn't very specific, since image processing pulls together theories from numerical analysis, differential equations, Riemannian geometry, optimization, computer science, electrical engineering, etc. Image processing is a fascinating subject with a wealth of open problems and important applications to industry, medicine, astronomy, and artificial intelligence. The best part of doing research on images is that I can actually see the the effects of mathematical theory. Unlike most mathematicians, when a non-mathematician asks how I do research in math, I actually have an answer for them.

I have been fortunate to have been awarded summer industrial internships at three different corporations: Symbol, Honeywell, and Loram. These internships were arranged by my advisor Dr. Fadil Santosa through the Minnesota Center for Industrial Mathematics (MCIM). Minnesota was one of the first schools to develop an applied math program that had students working on real math problems in industry. It's a fantastic program and I have nothing but good things to say about it, although I can't say the same for the rest of Minnesota's math department.

The list below describes some of the internships I've had, as well as some interesting course projects I've worked on in graduate school. The list starts with the most recent project. The Word and PowerPoint files may appear strange, because Microsoft products aren't as portable as one would hope. If you are interested in any of these projects and would like more information, please contact me at wittman@math.umn.edu.

Image Super-Resolution
Preliminary Oral Exam
Advisor: Fadil Santosa, University of Minnesota
Summer 2005

At the University of Minnesota, before we start writing the PhD thesis we have to undergo a little hazing procedure called the "oral exam." Since my PhD research will focus on image super-resolution, for my oral exam I wrote a survey of mathematical approaches to image interpolation. Most surveys list many different approaches and really amount to a bibliography. My approach was to pick 5 methods that represent the 5 basic approaches to image processing: PDEs, variational, wavelets, machine learning, and statistical methods. I then critiqued each method, compared their performance, and suggested areas for future research (for myself). I passed the oral exam on July 1, 2005.

In August 2005, I attended a 3-week summer school / workshop on computer vision at the Lotus Hill Institute in EZhou, China. While there, I thought about extending Mumford-Shah interpolation to multiple images. I took some photos from around the institute, wrote some code to super-resolve them, and gave a talk about this week-old work at the conference.

Paper: Mathematical Techniques for Image Interpolation, Oral Exam Paper, July 2005.
Presentation: Mathematical Techniques for Image Interpolation, University of Minnesota, July 2005.
Presentation: Image Super-Resolution Using the Mumford-Shah Functional, Lotus Hill Computer Vision Workshop, EZhou China, August 2005.


MANI: Manifold Learning Matlab Demo
Math 8600: Geometric Data Analysis
Course Instructor: Gilad Lerman, University of Minnesota
Spring 2005

In the last few years, there have been many techniques developed for Non-Linear Dimensionality Reduction (NLDR): ISOMAP, LLE, Hessian eigenmaps, Local Tangent Space Alignment, etc. But there hasn't been any work to compare and evaluate the techniques. Nor is there an understanding of how the NLDR methods perform under different data set properties such as dimensionality, curvature, noise, clustering, non-convexity, and non-uniform sampling. My course project was to explore NLDR techniques and determine under what circumstances they performed best. I proceeded experimentally, gathering code for 8 different NLDR methods and devloping a suite of 9 examples to test the data. Significantly, the code for the NLDR methods was provided by the original authors, so I can't be blamed for a poor implementation of the algorithm. I put the code into a single Matlab GUI m-file and called it "MANI", short for manifold learning Matlab demonstration. MANI can execute NLDR on the provided data examples or data supplied by the user, subject to algorithm parameters that can be set by the user. I hope this simple program will serve as a useful demonstration and instruction tool for the manifold learning community.

Website: MANI Software and Documentation
Software: MANIfold learning Matlab demonstration mani.m


iPAWS: Image Processing and Analysis Working Seminar
Institute for Mathematics and its Applications (IMA)
University of Minnesota
Fall 2004 - Spring 2005

Imaging and vision are important topics not only for mathematicians, but also for electrical engineers, computer scientists, radiologists, and psychologists. In an effort to bring together researchers studying imaging in various disciplines, I organized the Image Processing and Analysis Working Seminar (iPAWS). My initial idea for the seminar was to bring together my advisor Fadil Santosa's research group in mathematics and Guillermo Sapiro's research group in EE, since we appeared to be working on very similar problems in image processing. Between the two small research groups, we would have enough people for a small weekly seminar. Once I started soliciting interest in the seminar, I was amazed to find how many people were interested in participating in an imaging seminar, from the computer graphics division in computer science to the vision laboratories in psychology to the MRI labs in radiology. So iPAWS quickly ballooned in size from a handful of grad students to more than 5 departments. Seeing how the seminar was growing, I asked the Institute for Mathematics and its Applications (IMA) if they would be willing to support and advertise the seminar. I was extremely pleased that the IMA agreed to host IPAWS, thanks to the support of the IMA Associate Director Deb Lewis.

iPAWS fits nicely with the IMA's goal of bringing researchers from different disciplines together and iPAWS serves as a lead-in to the IMA's annual theme in 2004-05 on imaging. We are fortunate to have speakers from across the university come to the seminar, with talks ranging from computer graphics to MRI to the psychology of human vision. The faculty speaking at this seminar seemed to have immediately picked up on the intention of the seminar and many have tried to aim their talks at reaching an audience outside their department. Because of the interdisciplinary nature of IPAWS, not all talks hit home with all the particpants. This is when it's nice to be a mathematician, because I know that no matter where the speaker is from their work will be based on mathematics.

Website: iPAWS Homepage


Barcode Image Processing
Symbol Technologies
Industrial Advisor: Miroslav Trajkovic, Symbol Technologies
Academic Advisor: Fadil Santosa, University of Minnesota
Summer 2003, Summer 2004

In the summer of 2003, I worked with Dr. Santosa on a signal processing problem in barcode signal deblurring for laser scanners. We treat the barcode as a 1D 0-1 signal that has been blurred by a Gaussian kernel of unknown width and amplitude. Our approach to solving this partially blind deconvolution was a minimization of the Total Variation (TV) norm. The technique recovers the correct signal in the presence of large amounts of blur, but the computation time is far too slow to be practical for real-time barcode scanning. I presented my results as a poster at the 2004 SIAM Imaging Conference. An editor for SIAM News saw my poster and was interested in the problem, for the precise reason that she didn't think barcode reading was a problem. She asked me to write a short piece for SIAM News and I published my first math article under the title of a Clash song.

Hearing about my initial work on barcode deblurring, I was hired as a summer intern by Symbol Technologies, the worlds' largest manufacturer of handheld barcode scanners. After relocating to Long Island, I worked with Dr. Miroslav Trajkovic at Symbol on developing image processing techniques to improve the resolution of barcode imaging scanners. We developed an interesting geometric projection techniques and demonstrated very favorable initial results. I can honestly say that Symbol can now read barcodes that they couldn't read before. But the technique is simple enough to run very quickly and with little memory usage, which is important for the scanner's modest CPU power. I believe Symbol will develop the technique to work with their current imaging scanner software.

Super-resolution of Barcode Images (Summer 2004)
Presentation: Super-resolution of 1D Barcode Images [ ppt ], Symbol Technologies, August 2004.
Total Variation Deblurring (Summer 2003)
Website: Barcode Signal Processing
Presentation: TV Deblurring of Barcode Signals, Symbol Technolgies, June 2004
Poster: Deblurring and Restoration in Barcode Signal Processing [ pdf ], SIAM Conference on Imaging Science, May 2004.
Paper: Lost in the Supermarket -- Decoding Blurry Barcodes [ pdf ], SIAM News, September 2004.

Fundamentals of Image Processing
EE 8541: Image Processing
Course Instructor: Guillermo Saprio, University of Minnesota
Fall 2002

In Fall 2002, I took a graduate course in the Electrical Engineering department on image processing. The course was taught by Guillermo Sapiro, one of the most prominent researchers in the field. We learned the basic problems and operations of image processing. For our two homework assignments, we had to code the operations in Matlab, create webpages displaying our results, and post them online. I've had a couple random people contact me, asking to use one of my online Matlab files for their work. They were welcome to use them of course, but I found this funny because Matlab has all of these operations already built-in and optimized for performance. Plus it seems odd that typing, say, "median filter" into a search engine would turn up my old homework of all things. The three images above show the result of applying anisotropic diffusion to a painting by Botticelli.

Website: Homework 1: Quantization, compression, KL transform, histogram equalization, & filtering
Website: Homework 2: Mathematical morphology, segmentation, Hough transform, & diffusion

Data Mining the Stock Market
CS 8980: Data Mining
Course Instructor: Vipin Kumar, University of Minnesota
Fall 2002

For the final project for CS 8980, I wrote a report on data mining the stock market. I gathered several years of NYSE stock data and performed clustering algorithms and association analysis. The first goal of the project was to attempt to cluster the stocks into groups based on their stock behavior. The clusters found matched well to the industrial groupings set by the NYSE: software, pharmaceuticals, internet, defense, etc. It was interesting to see where cross-over stocks such as WebMD (internet or medical?) and AOL-Time Warner (internet or entertainment?) were placed. The internet stocks were the hardest to track, since they are so volatile. Really, the best way to tell if a time series corresponds to an internet stock is just the fact that it's very volatile. The second part of the project was to try to perform association analysis to determine the relationships, if any, between movements of different types of stocks. Tracking the group index over several years, I generated a set of rules based on the frequency with which stocks moved in certain directions in the same week. Some rules were obvious, like software and hardware stocks moving together. Other rules were less obvious, like pharmaceutical stocks rising occuring with a decline in automative stocks. An interesting project in the future might be to determine which stock within a group is the "leader." That is, finding a particular stock whose movement predicts the behavior of a group. Since stocks tend to move in groups, this might require a look at hourly or even minute-to-minute data.

Paper: Time-Series Clustering and Association Analysis of Financial Data [ wrd ]
Paper: Clustering Rules Appendix [ wrd ]
Presentation: Time-Series Clustering and Association Analysis of Financial Data [ ppt ]

Optimization of Cellphone Networks
Institute for Mathematics and its Applications
Industrial Advisor: David Shallcross, Telcordia Technologies
May 26 - June 3, 2002

The University of Minnesota is host to the Institute for Mathematics and it Applications (IMA), an NSF-funded research center dedicated to the study of mathematics in industry, science, and technology. In the twentieth century, mathematics grew increasingly isolated from the physical world, which seems ironic given that the great mathematical ideas of the nineteenth century were developed specifically as tools to solve physical problems. Doug Arnold, the IMA's current director, said that the goal of the IMA is to renew mathematics' historical connection to science. Every summer, the IMA hosts the Mathematical Modeling in Industry Workshop for graduate students to give young mathematicians experience in industrial research. Over the course of 10 days, a six-member team of students from around the world work with an industrial mentor on a real problem from the mentor's field.

In 2002, I participated in the modeling workshop. My team worked with David Shallcross from Telcordia Technologies on a problem in cellphone network management. In a cellular network, several transceiver stations (towers) are assigned to a limited number of station controllers (switchboards). Handover traffic refers to a call being transferred from one station to another station in a different controller, which is due to a caller being in motion while on the phone. If a controller becomes overloaded with handover traffic, the cellular signal would be lost. Also, each controller has a call capacity that will cause new calls not to go through when the capacity is exceeded. The goal is to assign stations to controllers so that we minimize the handover traffic between controllers while also not exceeding a controller's call capacity. Dr. Shallcross phrased this problem as a quadratic integer programming problem. Our team explored various optimization techniques, including simulated annealing, genetic algorithms, and greedy methods. It was certainly an interesting experience to work intently with a group for 10 days on a research problem, but quite frankly I like the summer internships better. It seems like we just started to get some promising results when the ten days were up. Our team consisted of Ben Cooke (Duke), Kwon Darongsae (Seoul National University), Dmitry Glotov (Purdue), Dan Taylor (Washington State), and myself.

Website: Project Proposal by David Shallcross
Paper: Mobility Management in Cellular Telephony [ pdf ], IMA Preprint 1866-4, July 2002.


Neural Network Face Detection
Math 8600: Mathematical Image & Vision Analysis
Course Intsructor: Jianhong Shen, University of Minnesota
Fall 2001 - Spring 2002

My two semester projects for the year-long course in image analysis involved face detection by neural networks. My approach was based on the color histogram, so really most of my work was a "flesh tone detector" rather than a "face detector". But it does a suprisingly good job given its naive approach, since flesh tones are fairly unique in natural images. With a large data set of faces and not-faces, the neural network was able to learn what portions of the color space correspond to flesh. I obtained better results in the YIQ color space than in the standard RGB space.

Website: Face Detection and Neural Networks
Neural Network Face Detection (Fall 2001)
Paper: Face Detection and Neural Networks [ wrd ]
Presentation: Face Detection and Neural Networks [ ppt ]
Face Detection & Segmentation (Spring 2002)
Paper: Face Detection in Crowded Images [ wrd ]
Presentation: Face Detection in Crowded Images [ ppt ]

Mathematical Modeling of Laser Diodes
Honeywell
Industrial Supervisor: Allen Cox, Honeywell
Academic Supervisor: Fadil Santosa, University of Minnesota
Summer 2001

A Vertical Cavity Surface Emitting Laser (VCSEL) is a microscopic laser diode used extensively in communications and computing. The laser beam is focused by a series of dozens of tiny mirrors, creating a large amount of heat in a small volume about 5 microns across. The laser can only stay on for a few milliseconds, since the heat build-up causes the mirrors to bend and the device stops lasing. Due to the microscopic level of the equipment, it is difficult to measure the heat build-up experimentally or devise experiments to test the conditions affecting it. In the summer of 2001, I was hired by Honeywell to mathematically model the thermo-electric properties of their VCSEL diode. Using the VCSEL blueprints provided by Honeywell and the finite element solver FEMLAB, I solved the 3D heat equation within the VCSEL diode. Our numerical results agreed well with the few experimental temperature readings available. This gave Honeywell a theoretical basis for explaining the heat build-up and a way to experiment with changing different parameters affecting the heat flow, such as die size, materials, cavity placement, etc.

Several people have written to me asking for the FEMLAB source files. Unfortunately due to corporate confidentiality restrictions, I cannot release the FEMLAB files since they contain specific information about Honeywell's VCSEL design. The website listed below contains a tutorial I wrote for setting up the 3D heat equation on a VCSEL-like structure.

Website: VCSEL Thermal Modeling


Pattern Recognition in Railroad Maintenance
Loram Maintenance of Way, Inc.
Industrial Advisor: Kenneth Iverson, Loram Maintenance of Way, Inc.
Academic Advisor: Fadil Santosa, University of Minnesota
Summer 1997, Summer 1998

My first internship through the MCIM was with Loram Maintenance of Way, a railroad maintenance company. My project involved the automation of the rail grinding procedure for smoothing rail tracks to an ideal shape. In the summer of 1997, I developed a pattern recognition technique based on geometric moments for quick and accurate identification of the rail type. I also developed simple search routines, including a genetic algorithm, for choosing the best combination of rail grinding patterns to achieve a desired metal removal. As a graphical proof of concept to the Loram engineers, I coded the routines in Java using basic test data. The Java applets are available in the link below. In the summer of 1998, I was hired back by Loram to write C++ versions of these routines to work with the Loram class library. In that summer, I wrote over 4,000 lines of C++ code. I am still amazed by the extensive amount of exception handling that is written into corporate software.

Website: Java Demos & Software Documentation
Paper: Pattern Recognition and Decision-Making in Railroad Maintenance [ wrd ], Master's Thesis, August 1999.



Todd Wittman
Department of Mathematics
University of Minnesota
E-mail: wittman@math.umn.edu