I am currently the software development manager at Albany Engineered Composites' (AEC) Research and Technology division in Rochester, NH (www.albint.com/aec). Before joining AEC, I was a graduate student at Berkeley studying computer graphics and vision (Ph.D. 2012). This page is primarily a collection of some of the more interesting projects I completed while pursuing my Ph.D.
University of California, Berkeley
Co-advisors: Martin S. Banks (vision science) and Maneesh Agrawala (computer science)
Dissertation: The perception of shape, lighting, and material properties in images
B.S. Computer Science
University of New Hampshire
Albany Engineered Composites, Research and Technology|
Software Development Mgr. (prev: Engineering Specialist in Image Processing, Sr. Software Developer)
University of California, Berkeley, Vision Science Program
Graduate Student Researcher
Brigham and Women's Hospital, Neurosurgery
Harvard University, Psychology
IT Support Associate
I implemented a simple cloth simulation using an array of node masses connected via non-zero length springs. The application allows the user to interactively manipulate the cloth using the mouse, and to adjust the tension and damping constants on the fly. My implementation also supports edge springs to reduce in-plane bending.
I implemented an image-based relighting system which uses precomputed image data to allow real-time relighting of a scene with high-quality results. The system also supports small environment maps for relighting in a complex lighting environment.
Monte Carlo Global Illumination
In this project, I implemented Monte Carlo path tracing for rendering global illumination effects. This method produces accurate soft shadows, color bleeding, and more realistic lighting. The system supports diffuse, glossy, and mirror materials. Images can be rendered with anti-aliasing as well.
I implemented the Ikeuchi and Horn shape-from-shading algorithm for a computer vision course at Berkeley. This algorithm iteratively finds a solution by minimizing an error function based on a brightness constraint and a smoothness constraint. The known orientation at the occluding boundary is used to guarantee a solution is found.
I wrote a raytracer for one of my computer graphics courses at Berkeley. The code computes shadows and reflections (multiple bounces), and it renders the scene using a Phong shading model. I implemented the application to support sphere and triangle primitives.
Pubster: Visualizing journal article relationships
Pubster is an interactive visualization tool for exploring the relationships within a set of publication articles. The system presents the data as an undirected graph, using dynamic queries to update the graph structure, to search the publications records, and to provide citation details on demand. This project was completed in collaboration with Amanda Alvarez from the Vision Science program at Berkeley.
In this project, I wrote some code for rendering Bezier patches. The program implements the de Casteljau algorithm for subdividing cubic Bezier curves, and it supports both regular and adaptive subdivision routines.
Subdivision surfaces can be used to recursively generate B-spline surfaces from simple mesh topologies. In this project, I implemented a system for interactively creating smooth surfaces based on the Catmull-Clark algorithm for B-splines. The system allows the user to manipulate the initial mesh topology, to fix vertex positions for creating surface discontinuities, and to render the final output as a shaded surface, normal map, or curvature map.
The assumed light direction for perceiving shape from shading. James P. O'Shea, Martin S. Banks, Maneesh Agrawala. ACM Symposium on Applied Perception in Graphics and Visualization (APGV). August, 2008. 135-142.
Using surface normals to localize electrodes placed during neurosurgery. James P. O'Shea, William M. Wells, Alexandra J. Golby. IEEE International Symposium on Biomedical Imaging (ISBI). April, 2006. 331-334.
Pneumatically-driven finger movement: A novel, passive fMRI technique for pre-surgical motor and sensory mapping. Sargent Shriver, Kyle E. Knierim, James P. O'Shea, Gary H. Glover, Alexandra J. Golby. American Journal of Neuroradiology. 2013; 34 (1), E5-E7.
A surgical planning method for functional MRI assessment of language dominance: Influences from threshold, region-of-interest, and stimulus mode. Ralph Suarez, Stephen Whalen, James P. O'Shea, Alexandra J. Golby. Brain Imaging and Behavior. June 2008. vol 2, no 2. 59-73.
Object naming is a more sensitive measure of speech localization than number counting: Converging evidence from direct cortical stimulation and fMRI. Nicole Petrovich Brennan, Stephen Whalen, Daniel M. Branco, James P. O'Shea, Isaiah H. Norton, Alexandra J. Golby. Neuroimage. 2007; 37, S100-S108.
Integrated image- and function-guided surgery in eloquent cortex: A technique report. James P. O'Shea, Stephen Whalen, Daniel M. Branco, Nicole Petrovich Brennan, Kyle E. Knierim, Alexandra J. Golby. International Journal of Medical Robotics and Computer-Assisted Surgery. 2006; 2: 75-83.
Functional MRI of memory in the hippocampus: Laterality indices may be more meaningful if calculated from whole voxel distributions. Daniel M. Branco, Ralph O. Suarez, Stephen Whalen, James P. O'Shea, Kyle E. Knierim, Aaron P. Nelson, Jaderson C. da Costa, Alexandra J. Golby. Neuroimage. 2006; 32, 592-602.
Memory encoding in Alzheimer's disease: An fMRI study of explicit and implicit memory. Alexandra J. Golby, Gerald Silverberg, Elizabeth Race, Susan Gabrieli, James P. O'Shea, Kyle Knierim, Glenn Stebbins, John Gabrieli. Brain. 2005; 128, 773-787.
How is the perception of shape from shading affected by revealing the lighting properties? Presented at the 2009 Vision Sciences Society Meeting (VSS). Naples, FL. May 2009.
What is the assumed light direction when perceiving shape from shaded images? Presented at the 2008 Applied Perception in Graphics and Visualization Meeting (APGV). Los Angeles, CA. August 2008.
Using surface normals to localize electrodes placed during neurosurgery. Presented at the 2006 International Symposium on Biomedical Imaging (ISBI). Alexandria, VA. April 2006.