Please place your write-up in the folder outside my office door. Some of the problems are taken from the exercises at the end of Chapter 10 "Reflectance Map: Photometric Stereo" from Horn's Robot Vision book. I handed out copies of this chapter in class. Extra copies are available from the TA.
Grading: This is the graduate level version. I expect most students in 7495 will do this one. The answers from the students in 7495 will determine the mean for this assignment track. Any students from 4495 who do this version of the assignment will be graded on a more forgiving curve. Each question below is worth 3% of the course grade, for a total of 15%.
1. Exercise 5.5 from Computer Vision: A Modern Approach by Forsyth and Ponce.
A few points about Gaussian spheres may be useful for the next three problems. We have discussed this sphere implicitly in class without defining it. The Gaussian sphere is a 3-D sphere of radius 1. It gives a unique parameterization of surface normals. Each possible normal vector for a surface patch is a point on the Gaussian sphere (since that point is defined by a unit vector with two degrees-of-freedom of orientation). The geometry of Lambert's Law is simpler on the Gaussian sphere than it is in the (p,q) gradient space. This is illustrated in Figure 10-24 in the handout from Horn's book and is explored in question 2 below.
We can define the concept of a "line" on the Gaussian sphere, which is sometimes called a great circle. A great circle is formed by intersecting the Gaussian sphere with a plane that contains the origin (i.e. the center of the sphere). Thus every great circle has unit radius and divides the sphere into two hemispheres. Each great circle can be associated with the normal vector of the plane that contains it, which is itself a point on the Gaussian sphere. Thus points on the Gaussian sphere and lines (i.e. great circles) are duals.
Note that spherical triangles can be created from three "lines" on the Gaussian sphere in the same way that a triangle in the plane is formed from three straight lines. A spherical triangle is an area on the Gaussian sphere whose boundaries are segments from three great circles. You will need this construction for question 4 below.
2. Exercise 10-7 from Robot Vision by B. K. P. Horn. Note that while Figure 10-24 gives the geometry of the situation, you are being asked to derive equations for points on the Gaussian sphere using the definition of a Lambertian surface.
3. Exercise 10-16 from Robot Vision by B. K. P. Horn.
4. Exercise 10-17, parts (a), (c), and (d) from Robot Vision by B. K. P. Horn. Note that you should use your results from question 3 here. For full credit, derive the result mathematically in addition to showing the geometry of the situation through sketches, etc.
5. Finite dimensional linear color models describe the color imaging process as the integration of smooth signals formed by a finite set of basis functions over l.
i) In class we discussed several scenarios (e.g. specular highlights, average reflectance) in which simplified versions of this model could be used to solve the color constancy problem. Characterize the general situation for color constancy with respect to this model. What has to be known? What has to be true for there to be a unique solution for color constancy?
ii) Suppose the scene contains a surface patch whose reflectance function is known to be linear with a unit slope. For simplicity we consider a 1-D scanline through the image. Let x denote the coordinate along the scanline. We assume that the scanline intersects the surface patch between known coordinates xs and xe. The reflectance function has the form r(l,x) = [Sjfj(l)](x - xs) + Sjbjfj(l) for all pixels xs < x < xe inside the surface patch, where the bj are the unknown offsets of the linear reflectance function. The patch with linear reflectance uses the same finite basis functions fj(l) as the rest of the surfaces in the scene. As before, we assume that the constants gijk are known, and that they encapsulate all of the available information about the basis functions (i.e. do not assume that you have access to the fj(l) directly). Describe a color constancy algorithm for this situation.
6. (Extra Credit) The remaining parts of 10-17 from Horn's book, +1% for each additional part.