Mike Roberts
PhD Student
NSERC Alexander Graham Bell Canada Graduate Scholar
Computer Graphics Laboratory
Stanford University


GitHub
Google Scholar
LinkedIn
Twitter
Curriculum Vitae


Biography

I am a second-year PhD student in the Computer Graphics Laboratory at Stanford University, where I am advised by Pat Hanrahan. I am supported by an NSERC Alexander Graham Bell Canada Graduate Scholarship.

Before coming to Stanford, I was a research fellow in the Graphics, Vision, and Interaction Group at Harvard University, where I was advised by Hanspeter Pfister. I collaborated with Jeff Lichtman at the Harvard Center for Brain Science to develop new interactive image segmentation methods for nanometer-scale Connectome images. I also collaborated with Michael Mitzenmacher to develop new massively parallel algorithms for guaranteeing computational correctness in cloud computing scenarios. I spent the summer of 2013 at Harvard.

During the summer of 2012, I worked with John Owens and David Luebke to develop the Introduction to Parallel Programming course at Udacity. 50,000 students from around the world have enrolled in the course. I also worked at NVIDIA during the summer of 2009, where I helped to develop NVIDIA Nsight. In 2005-2006, I worked at Radical Entertainment as a graphics programmer on Prototype and a user-interface programmer on Scarface: The World is Yours, each of which has sold more than 2,000,000 copies.

I completed my BS (Honors) Computer Science and MS Computer Science degrees at the University of Calgary, where I was advised by Mario Costa Sousa and Joseph Ross Mitchell. My research at the University of Calgary focused on interactive image segmentation. I sold the intellectual property from my master's thesis to Calgary Scientific.


News

September 5th, 2013 The slides and IPython notebooks from my talk IPython is Great (for large-scale computation, data exploration, and creating reproducible research artifacts) were featured in the 2013 Data Science course at Harvard University.
May 2nd, 2013 I will be spending this summer visiting the Graphics, Vision, and Interaction Group at Harvard University, where I will be advised by Hanspeter Pfister.
February 4th, 2013 The free online Introduction to Parallel Programming course I developed with John Owens and David Luebke launched today at Udacity. 50,000 students from around the world have enrolled in the course.

Code and Data

IPython notebooks and other resources from my talk IPython is Great (for large-scale computation, data exploration, and creating reproducible research artifacts). The slides and IPython notebooks from my talk were featured in the 2013 Data Science course at Harvard.

G3DWidget is a Qt widget written in C++ that can host 3D rendering code from the G3D Innovation Engine. The G3DWidget class has been carefully designed so that multiple G3DWidget objects can coexist in the same application. Demo application included.

Easy-to-read C++/Python implementation of the shape matching pipeline in the paper Sketch-Based Shape Retrieval.

Easy-to-read Python/CUDA implementations of fundamental GPU computing primitives: map, reduce, prefix sum (scan), split, radix sort, and histogram. I use these primitives to construct easy-to-read implementations of the following image processing operations: Gaussian blurring, bilateral filtering, histogram equalization, red-eye removal, and seamless image cloning.

Easy-to-read Python implementation of the seamless image cloning method in the paper Poisson Image Editing. To solve the sparse least-squares problem arising in this method, I provide an implementation that uses the default scipy.sparse solver, as well as an implementation that uses a hand-written geometric Jacobi solver.

C++ code to export the video segmentations from the system described in the paper Efficient Hierarchical Graph-Based Video Segmentation. The system described in this paper returns segmentations as Protocol Buffer files. This exporter converts these Protocol Buffer files into image sequences.

C#/C++/CUDA implementation of our paper Neural Process Reconstruction from Sparse User Scribbles.

C++/CUDA implementation of our paper A Work-Efficient GPU Algorithm for Level Set Segmentation.


Publications

A complete list of my publications can be found on Google Scholar.

Verifiable Computation with Massively Parallel Interactive Proofs
Justin Thaler, Mike Roberts, Michael Mitzenmacher, Hanspeter Pfister
Hot Topics in Cloud Computing (HotCloud) 2012

Neural Process Reconstruction from Sparse User Scribbles
Mike Roberts, Won-Ki Jeong, Amelio Vazquez-Reina, Markus Unger, Horst Bischof, Jeff Lichtman, Hanspeter Pfister
Medical Image Computing and Computer Assisted Intervention (MICCAI) 2011

  • Invited for oral presentation at the IEEE Symposium on Biological Data Visualization 2011

A Work-Efficient GPU Algorithm for Level Set Segmentation
Mike Roberts, Jeff Packer, Mario Costa Sousa, Joseph Ross Mitchell
High Performance Graphics 2010

  • SIGGRAPH 2010 Student Research Competition Semi-Finalist
  • University of Calgary Graduate Conference 2010 NSERC Best Poster Award

Invited Talks

Fast Volume Segmentation with Sparse Level Sets
Massachusetts Institute of Technology (October 2011)
Max Planck Institut for Informatics (March 2011)
NVIDIA GPU Technology Conference Research Summit 2010 (September 2010)
Vienna University of Technology (April 2010)
Watch | Slides

Neural Process Reconstruction from Sparse User Scribbles
IEEE Symposium on Biological Data Visualization 2011 (October 2011)
Slides

Advanced Medical Volume Rendering and Segmentation on the GPU (with Eric Penner)
NVIDIA GPU Technology Conference Research Summit 2010 (September 2010)
Watch | Slides


Games

Prototype (for PC, Playstation 3, and Xbox 360)
Radical Entertainment, Activision (2009)

Scarface: The World Is Yours (for PC, Wii, Xbox, and Playstation 2)
Radical Entertainment, Sierra (2006)


Personal

Before coming to Stanford, I used to DJ in front of hundreds of people every weekend. I was a resident at Dance Party Fridays at The Republik and MOJO Saturdays at The Bamboo Tiki Room in Calgary, Canada. The Republik and the Bamboo were voted the 2nd and 3rd best places to dance in the FFWD Best of Calgary 2010. More recently, I won a national DJing competition to perform at Glowchella 2013 in San Francisco.

I think of my sound as a funky chunky soul stomp bigbeat boogaloo mashup of timeless dance music, i.e., imagine what it would sound like if James Brown, Ray Charles, The Beatles, Fatboy Slim, and Daft Punk all took acid together and played a sweaty warehouse primetime party set at the Apollo Theater Harlem NYC circa 1969.