CS 510/610: Computational Photography
Instructor: Feng Liu
|Office: FAB 120-09|
|Office Hours: TR 15:30-16:30|
|Computational photography is a field where computer graphics, computer vision, optics, and photography come together to create high-quality pictures. This course will discuss computational techniques to overcome the limitations of traditional cameras and enhance their capabilities. This course will cover topics ranging from concepts of digital camera and photography to computer vision and graphics techniques for creating high-quality pictures, including high dynamic range imaging, panorama stitching, image segmentation & matting, video stabilization, etc.|
|General Course Information|
|We do not require any textbooks for this class. But the following two books will be very helpful.|
Computer Vision: Algorithms and Applications, by R. Szeliski
This book is available online. Please download its latest version.
Learning OpenCV: Computer Vision with the OpenCV Library,
by Gary Bradski and Adrian Kaehler.
This book provides not only a good reference to the OpenCV library, but also gives very good descriptions of a vast amount of vision algorithms.
Acknowledgement: Many of the lecture notes were modified from materials for similar classes taught at other universities by Professor Yung-Yu Chuang, Fr¨¦do Durand, Chuck Dyer, Marc Levoy, Steve Seitz, Li Zhang, and Dr. Stephen Chenney and Richard Szeliski. Without their generous help, this class could not have been developed.
|W10: 06/03||Final Project Presentation II|
|W10: 06/01||Final Project Presentation I|
|W9: 05/27||Stereoscopic 3D||
Enabling Warping on
Yuzhen Niu, Wu-chi Feng, and Feng Liu
SIGGRAPH Asia 2012
Production Rules for Stereo Acquisition
Frederik Zilly, Josef Kluger, Peter Kauff
Proceedings of IEEE, 2011
Looking Beyond Stereoscopic 3D's Revival
Kirk L. Kroeker, Communications of the ACM, 2010
|W8: 05/20||Video Stabilization II||
Full-Frame Video Stabilization with Motion Inpainting
Matsushita, Yasuyuki and Ofek, Eyal and Ge, Weina and Tang, Xiaoou and Shum, Heung-Yeung. IEEE PAMI 2006
Content-Preserving Warps for 3D Video Stabilization
Feng Liu, Michael Gleicher, Hailin Jin, and Aseem Agarwala
Subspace Video Stabilization
Feng Liu, Michael Gleicher, Jue Wang, Hailin Jin, and Aseem Agarwala, ACM Transactions on Graphics, 2011
|W8: 05/18||Video Stabilization I|
Compositing Digital Images
Tom Porter and Tom Duff. SIGGRAPH 1984
Blue screen matting
Smith, Alvy Ray and Blinn, James F. SIGGRAPH 1996
|W7: 05/11||Graph-cut based Image Editing||
Yin Li, Jian Sun, Chi-Keung Tang and Heung-Yeung Shum. SIGGRAPH 2004
|W6: 05/06||Mid-term Project Presentation|
|W6: 05/04||Image Segmentation||
and Image Segmentation.
Shi and Malik. IEEE PAMI 2000.
(This week we only have one paper to read.)
|W5: 04/29||Panorama III||
Steven M. Seitz and Jiwon Kim. IEEE CG&A 2003
|W5: 04/27||Panorama II||
Szeliski book, Chapter 9
|W4: 04/22||Panorama I||
Alignment and Stitching: A Tutorial. Chapter 2 and 4
R. Szeliski. Foundations and Trends in Computer Graphics and Vision, 2009
Creating full view panoramic image mosaics and texture-mapped models. R. Szeliski and H.-Y. Shum. SIGGRAPH 97.
|W4: 04/20||Relighting II:
High Dynamic Range Imaging
High Dynamic Range Radiance Maps from Photographs
Paul E. Debevec and Jitendra Malik, SIGGRAPH 1997.
High Dynamic Range Digital Photography,
G. Brown, RPS Journal, Nov. 2006
|W3: 04/15||Relighting I:
Interactive local adjustment of
Lischinski, Dani and Farbman, Zeev and Uyttendaele, Matt and Szeliski, Richard. ACM SIGGRAPH 06
|W3: 04/13||Light and Color||
Salience-Preserving Color Removal.
Enhancement using Per-pixel Virtual Exposures
Eric P. Bennett and Leonard McMillan. SIGGRAPH 2005
A Non-local Algorithm for Image Denoising.
Buades, A., Coll, B., Morel, J.-M. IEEE CVPR 2005
Accelerating Spatially Varying Gaussian Filters
Baek, J., Jacobs, D. E. SIGGRAPH Asia 2010
#Szeliski book: Chapter 3.2.
A. Oliva, A. Torralba, P.G. Schyns, , SIGGRAPH 2006
Bilateral Filtering for Gray and Color Images
C. Tomasi and R.Manduchi. IEEE ICCV 1998
Computational Cameras: Redefining the Image.
Nayar, S.K.. IEEE Computer, 39(8), 2006
You might need to be on the PSU network or have an ACM/IEEE
account to download some of papers.
# You cannot select readings from a book for your reading assignment.
Each week, you will read a few papers posted in the course web page. Besides, you need to pick one of the papers you read, write and send a short summary to email@example.com every Wednesday afternoon before 500 pm.
In your email, please follow the following format for the email subject.
CS 510 Reading: You full name + Week number + Paper Title.
Your summary should be concise, no more than 500 words. You need to address the following five questions if appropriate.
1. What problem is addressed?
2. How it is solved?
3. The advantages of the presented method?
4. The limitations of the presented method?
5. Future work
You have the following three project options.
Option 2. System development
Option 3. Research
04/12: Submit a project proposal to firstname.lastname@example.org. In your email subject, put CS510 Project Proposal + Your name. If you work in group, each of the group member needs to submit a copy, which can be identical. Your summary need to be concise, less than 300 words.
06/01-06/03: In class project presentation.
06/05: Final submission. You need to submit a copy of your code with test data and project report. Please do not send the project package via email directly and send me a link instead. In your email subject, put CS510 Project + Your name. If you work in group, each of the group member needs to submit a copy, which can be identical.
A late submission will be accepted until 11:59 pm, 06/07. But, it will be penalized according to G=G0*(1-n*0.05/24), where n is the number of hours delayed, G0 is the raw score, and G is your final score.
Your project report shall follow the format of a technique paper that you read in this class.
If your project is of Option 2 or 3, your report shall include abstract, introduction, related work, method, experiment, and conclusion.
Do not copy the text from the paper that you implemented. Be clear in your report that you implemented other people's method instead of inventing the method by yourself.
|1. Matlab Tutorial for Image Processing and sample files, provided by Prof. C. Dyer and his TA Tuo Wang at the University of Wisconsin, Madison.|