POV-Ray : Newsgroups : povray.general : Antialiasing before or after clipping... : Re: Antialiasing before or after clipping... Server Time
3 Aug 2024 04:18:35 EDT (-0400)
  Re: Antialiasing before or after clipping...  
From: Tom York
Date: 29 Aug 2004 15:40:00
Message: <web.41322febe009523d2ff34a90@news.povray.org>
"Slime" <fak### [at] emailaddress> wrote:
> > The ability of the human eye or a real camera to see infinitely small but
> > very bright objects has nothing to do the atmosphere.  It has to do with
> > sampling an area compared to sampling points.
>
> Fair enough. But when the human eye does this, it is able to accurately
> depict the shape of the object.

This is a complicated issue, but the end result is that the eye can't do
this. Badly worded and simplified explanation follows.

> You're saying that the eye has a high enough "resolution" that, if it saw a
> star unaffected by atmospheric scattering or anything, despite the fact that
> the star would be incredibly tiny, the eye would be able to see it.

Imagine the surface of the retina divided into a regular grid of pixels.
Although the eye's grid of "pixels" is far from regular, each pixel has
area - each pixel is sensitive to light over a *non-zero* region of the
retina. A photon landing *anywhere* within a "pixel" will be detected. A
source such as a star whose photons all end up within one pixel will light
up only that pixel. No other information will be received about that
source. The star's true image could be circular, square, shaped like a hoop
or anything you like, but as far as the eye is concerned it is shaped like
a pixel, and the pixel is 200 times bigger than the star's true image. The
eye cannot preserve detail it can't resolve. This pixel is then the
smallest unit that the eye deals in. So,

> However the eye would display it at the size that it was. POV-Ray 3.6 is
> taking the tiny object and blowing it up to the size of a pixel, *by letting
> it affect the samples taken around it*.

POV in this case is doing exactly what the eye would do. However, POV must
simulate a finite pixel area by taking additional samples, because a ray
has no area (ideally - I imagine there is a numerical precision issue
here). Both eye and POV are doing the same thing, except that POV is
impersonating a finite pixel area by taking extra samples. In the extreme
case, a raytracer would divide the camera field of view angles by the
number of pixels in each direction (horizontal and vertical) to get a grid
of rectangles and shoot a few hundred rays through each rectangle. That
would imitate as near as possible a finite pixel size, although it would be
closer to a digital camera's response than to that of the eye or film.

> Returning to your statement "It has to do with sampling an area compared to
> sampling points," the primary difference is this: the human eye does not
> take the samples of that area and average them together and then display the
> average value as the value for the whole area. It takes them individually
> and displays all objects at the correct size and shape. Obviously POV-Ray
> can't do this in its output, since it is limited to pixels.

Both eye and raytracer deal in pixels. In the case of the eye the pixels are
irregular in shape and distribution and are somewhat squidgey and
disgusting, but there is still no way for the eye to capture and record
detail smaller than the size of its own active regions/pixels/buckets.

This simplified explanation ignores several things, the most important of
which is the point-spread function of the eye, but the relatively low
resolution of most CG images makes this irrelevant.

> Therefore it must make a compromise: it can't produce exactly what the human
> eye would see, so it must do the best it can to display something that
> *appears* correct to the human eye. The compromise in 3.5 appeared correct.
> The compromise in 3.6 does not.

> The primary usage, purpose, and original intent of anti-aliasing is to
> remove aliasing. 3.6's anti-aliasing is failing at this.

For what it's worth I agree with the general point that effectively limiting
use of bright objects with antialiasing seems a bit harsh. Neither POV-Ray
nor any other CG package outside the most specialist are faithful
imitations of the human visual system, absent super-sampled images and
post-processing. The question then could be about what looks better. Does
anti-aliasing remove jaggies, or not? That point about work-arounds is also
a strong one in my view.


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.