[Radiance-general] rpict: color channel separation
Greg Ward
gward at lmi.net
Mon Feb 18 05:43:04 PST 2008
Hello Stefan,
This is simply the round-off error associated with the Radiance RGBE
format. Since the picture format uses three mantissas with a common
exponent, it is not possible to represent a non-zero value in one
channel and a zero value in another channel. Even though the actual
byte stored for green and blue may be zero in your calculation, the
decoder will interpret this as half a count out of 255 and give a
corresponding value.
Since the main purpose of Radiance is lighting calculations for
visual simulation, and the eye's color channels have a (more or less)
linear response, this is an appropriate/adequate representations for
the design application. If you need the original floating point
values, and don't mind files than are about 5 times bigger, you can
use vwrays with rtrace and output floating point images directly.
I hope this helps.
-Greg
> From: "Stefan Schwarzer" <stefan.schwarzer at gmx.net>
> Date: February 18, 2008 2:56:05 AM PST
>
> Dear list members:
>
> While getting acquainted with radiance, I stumbled on a phenomenon
> that I do not understand.
>
> I keep the following scene description (of a red sphere lonely in
> vast Euclidean space) in a file called sphere_0.rad
>
> void light SphereLight_0
> 0 0 3 0.000431188 0 0
>
> SphereLight_0 sphere sphere_0
> 0 0 4 0 500 0 100
>
> I use oconv and rpict to render the scene and check the output
> using pvalue.
>
> oconv sphere_0.rad > o.conv
> rpict -x 128 -y 128 o.conv | pvalue -o -h -u
>
> The first few lines of output of these commands are
>
> -Y 128 +X 128
> 60 95 4.320e-04 9.537e-07 9.537e-07
> 62 95 0.000e+00 0.000e+00 0.000e+00
> 63 95 4.320e-04 9.537e-07 9.537e-07
> 65 95 0.000e+00 0.000e+00 0.000e+00
> 67 95 4.320e-04 9.537e-07 9.537e-07
> 68 95 0.000e+00 0.000e+00 0.000e+00
> 56 94 4.320e-04 9.537e-07 9.537e-07
>
> They demonstrate that am picking up some small power contributions in
> the g and b channel which seem suspicious to me. When I use rtrace
> in an
> attempt to reproduce the phenomemon, I find 0 for g and b as I'd
> expect.
>
> I'd be grateful if somebody could share her/his insight
>
> ps - random observations:
>
> - I have experimented with program options, but even though the
> defaults
> of rtrace and rpict differ slightly, they seem to not be able to
> explain
> rpict's behavior
>
> - A colleague at Fraunhofer ISE checked the pic-file and mentioned to
> me that the non-zero contributions are present in the rpict output and
> are not created later by pvalue
>
> --
> Stefan Schwarzer
More information about the Radiance-general
mailing list