[Radiance-general] experiences with the photon map
Greg Ward
gregoryjward at gmail.com
Fri Jan 2 09:42:53 PST 2009
Hi Lars,
If you use the hemispherical fisheye type (-vth), you just need the
straight average of the circular area times pi to get the irradiance
(times 179 for illuminance). For angular fisheye perspectives, as
you might get from a camera or the -vta option, you need a solid
angle correction equal to the cosine of the angle times the sine of
the angle divided by the angle itself (in radians) and additional
normalization . It's a strange correction term, but here it is in a
pcomb command for a 190-degree fisheye lens:
pcomb -e 'sq(x):x*x' \
-e 'ar=190/2*PI/180*sqrt(sq(2/xmax*x-1)+sq(2/ymax*y-1))' \
-e 'cf=WE*sq(190*PI/180*2/(xmax+ymax))*if(ar-PI/2,0,if(ar-.01,cos(ar)
*sin(ar)/ar,1))' \
-e 'lo=cf*li(1)' input.hdr > corrected.hdr
I believe this is correct.
-Greg
> From: "Lars O. Grobe" <akilog at nus.edu.sg>
> Date: January 2, 2009 2:16:32 AM PST
>
>> I think you are right. Anyhow, I'm not sure, if Roland implemented
>> the
>> correct pmap conform rpict-call within findglare - I'm pretty sure he
>> never worked on that. Therefore there is no other way as rendering
>> the
>> whole hemisphere and than evaluating the picture.
> Help!!! I do not get it... to get the illuminance from a 180 degree
> fisheye picture (no matter if taken by a camera or rendered by
> rpict), I have to integrate the luminance values over the circular
> surface of the projected hemisphere. This means that I somehow have
> to sum-up the pixel values. Still I do not really know the maths to
> do it, can anyone give me a hint, please? Is it the average of the
> pixel values multiplied by the surface area, the pixel values
> being weighted according to the solid angles they cover?
>
> CU Lars.
More information about the Radiance-general
mailing list