REFERENCES
Cook, R. L. and Torrance, K. E. (1982). A reflectance model
for computer graphics. ACM Transactions on Graph-
ics, 1(1):7–24.
Guillemaut, J.-Y., Drbohlav, O.,
ˇ
S´ara, R., and Illingworth,
J. (2004). Helmholtz stereopsis on rough and strongly
textured surfaces. In Proc. International Symposium
on 3D Data Processing, Visualization and Transmis-
sion, pages 10–17.
Hartley, R. I. (1997). In defence of the eight-point algo-
rithm. IEEE Transactions on Pattern Analysis and
Machine Intelligence, 19(6):580–593.
Jank´o, Z., Drbohlav, O., and
ˇ
S´ara, R. (2004). Radiometric
calibration of a Helmholtz stereo rig. In Proc. IEEE
Conference on Computer Vision and Pattern Recogni-
tion, volume 1, pages 166–171.
Lafortune, E. P. and Willems, Y. D. (1994). Using the modi-
fied phong reflectance model for physically based ren-
dering. Technical Report CW 197, Department of
Computing Science, K.U. Leuven, November, 1994.
Lewis, R. R. (1994). Making shaders more physically plau-
sible. Computer Graphics Forum, 13(2):109–120.
Magda, S., Kriegman, D. J., Zickler, T., and Belhumeur,
P. N. (2001). Beyond Lambert: Reconstructing sur-
faces with arbitrary BRDFs. In Proc. IEEE Inter-
national Conference on Computer Vision, volume 2,
pages 391–398.
Nicodemus, F. E., Richmond, J. C., Hsia, J. J., Ginsberg,
I. W., and Limperis, T. (1977). Geometrical consider-
ation and nomenclature for reflectance. NBS Mono-
graph 160.
Press, W. H., Teukolsky, S. A., Vetterling, W. T., and Flan-
nery, B. P. (1992). Numerical recipes in C. Cambridge
University Press, second edition.
Sen, P., Chen, B., Garg, G., Marschner, S. R., Horowitz,
M., Levoy, M., and Lensch, H. P. A. (2005). Dual
photography. ACM SIGGRAPH, 24(3):745–755.
Terzopoulos, D. (1982). Multi-level reconstruction of visual
surfaces: Variational principles and finite element rep-
resentations. A.I. Memo 671, MIT.
Tu, P. and Mendonc¸a, P. R. S. (2003). Surface reconstruc-
tion via Helmholtz reciprocity with a single image
pair. In Proc. IEEE Conference on Computer Vision
and Pattern Recognition, volume 1, pages 541–547.
Tu, P., Mendonc¸a, P. R. S., Ross, J., and Miller, J. (2003).
Surface registration with a Helmholtz reciprocity im-
age pair. In IEEE Workshop on Color and Photometric
Methods in Computer Vision.
Zickler, T. (2006). Reciprocal image features for uncali-
brated helmholtz stereopsis. In Proc. IEEE Confer-
ence on Computer Vision and Pattern Recognition,
volume 2, pages 1801–1808.
Zickler, T., Belhumeur, P. N., and Kriegman, D. J. (2002a).
Helmholtz stereopsis: Exploiting reciprocity for sur-
face reconstruction. In Proc. European Conference on
Computer Vision, volume III, pages 869–884.
Zickler, T. E., Belhumeur, P. N., and Kriegman, D. J.
(2002b). Helmholtz stereopsis: Exploiting reciprocity
for surface reconstruction. International Journal of
Computer Vision, 49(2/3):215–227.
Zickler, T. E., Belhumeur, P. N., and Kriegman, D. J.
(2003a). Toward a stratification of Helmholtz stere-
opsis. In Proc. IEEE Conference on Computer Vision
and Pattern Recognition, volume 1, pages 548–555.
Zickler, T. E., Ho, J., Kriegman, D. J., Ponce, J., and Bel-
humeur, P. N. (2003b). Binocular Helmholtz stereop-
sis. In Proc. IEEE International Conference on Com-
puter Vision, pages 1411–1417.
APPENDIX
Simplification of the Cost Function based
on the Radiometric Distance
We would like to compute the values n and {
ˆ
i
l
j
}
j
which minimise the cost function F defined by:
F(n, {
ˆ
i
l
j
}
j
) =
∑
j
[(
ˆ
i
l
j
−i
l
j
)
2
+(
s
l
j
· n
s
r
j
· n
ˆ
i
l
j
−i
r
j
)
2
]. (18)
We start by writing the partial derivatives of F with
respect to
ˆ
i
l
k
; for any index k in {1, . . . , N}, we have:
∂F(n, {
ˆ
i
l
j
}
j
)
∂
ˆ
i
l
k
= 2(
ˆ
i
l
k
− i
l
k
) + 2
s
l
k
· n
s
r
k
· n
(
s
l
k
· n
s
r
k
· n
ˆ
i
l
k
− i
r
k
).
(19)
At the optimum, the partial derivatives must be zero;
this results in the following constraints:
∀k,
ˆ
i
l
k
+ (
s
l
k
· n
s
r
k
· n
)
2
ˆ
i
l
k
= i
l
k
+
s
l
k
· n
s
r
k
· n
i
r
k
, (20)
from which, we can deduce that, at the optimum, the
values of the variables
ˆ
i
l
k
are:
∀k,
ˆ
i
l
k
=
i
l
k
(s
r
k
· n)
2
+ i
r
k
(s
l
k
· n)(s
r
k
· n)
(s
l
k
· n)
2
+ (s
r
k
· n)
2
. (21)
After substitution of these values into Eq. (18), we
obtain the simplified cost function G defined by:
G(n) =
∑
j
[(i
l
j
s
l
j
− i
r
j
s
r
j
) · n]
2
(s
l
j
· n)
2
+ (s
r
j
· n)
2
. (22)
G defines a simpler cost function with single unknown
n (two degrees of freedom) which has the same global
minimum as the original cost function F.
A MAXIMUM LIKELIHOOD SURFACE NORMAL ESTIMATION ALGORITHM FOR HELMHOLTZ STEREOPSIS
359