[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