![](/i/fill.gif) |
![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Currently this is the best povray can do (+a0.0 +r9). Notice
the aliasing artefacts on the horizontal lines.
http://luxlab.com/tmp/aa.png
Rendered at 500% resolution (+a0.3 +r3), low-pass filtered
(Gaussian 2.5 pixels) and resampled.
http://luxlab.com/tmp/aa_hq.png
I like the one with clean lines.
_____________
Kari Kivisalo
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
> Rendered at 500% resolution (+a0.3 +r3), low-pass filtered
> (Gaussian 2.5 pixels) and resampled.
> http://luxlab.com/tmp/aa_hq.png
>
> I like the one with clean lines.
>
>
> _____________
> Kari Kivisalo
Kari, what is the difference between your method and rendering at 500 %,
applying a mosaic filter (5 pixels) and resizing with method "nearest
neighbor"?
Norbert
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On Mon, 1 Apr 2002 09:33:30 +0200, "Norbert Kern"
<nor### [at] t-online de> wrote:
>Kari, what is the difference between your method and rendering at 500 %,
>applying a mosaic filter (5 pixels) and resizing with method "nearest
>neighbor"?
Gaussian blur uses a Gaussian distribution of samples and is more
'natural' than a mere average. They are both low-pass filters, one
just happens to be closer to reality, IMHO.
Peter Popov ICQ : 15002700
Personal e-mail : pet### [at] vip bg
TAG e-mail : pet### [at] tag povray org
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
> Gaussian blur uses a Gaussian distribution of samples and is more
> 'natural' than a mere average. They are both low-pass filters, one
> just happens to be closer to reality, IMHO.
>
>
> Peter Popov ICQ : 15002700
thanx
Norbert
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Norbert Kern wrote:
>
> Kari, what is the difference between your method and rendering at 500 %,
> applying a mosaic filter (5 pixels) and resizing with method "nearest
> neighbor"?
http://luxlab.com/tmp/aa_mosaic.png
Scene (thin lines) from http://www.povworld.org/povray/aa.html
plane{z,0
pigment{gradient y
pigment_map{
[0 rgb 1]
[0.47 rgb 1]
[0.47 rgb 0]
[0.53 rgb 0]
[0.53 rgb 1]
[1 rgb 1]
}
}
finish{ambient 1} scale .1 rotate y*-50
}
camera{location <0,0,-5> look_at 0}
The most important part is the Gaussian blur. I used 500% resolution
just to get those very thin lines. For normal a scene 200% to 300% and
1 to 1.5 pixel blur radius should be enough. The 50% blur radius seemed
to be the minimum required to prevent visible aliasing. The image will
look soft. Sharpening filter will just bring back the the jagged edges.
It's a delicate balance between artefect free and sharp image :)
_____________
Kari Kivisalo
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Kari Kivisalo wrote:
>
> Currently this is the best povray can do (+a0.0 +r9). Notice
> the aliasing artefacts on the horizontal lines.
> http://luxlab.com/tmp/aa.png
>
> Rendered at 500% resolution (+a0.3 +r3), low-pass filtered
> (Gaussian 2.5 pixels) and resampled.
> http://luxlab.com/tmp/aa_hq.png
>
> I like the one with clean lines.
>
Looks really smooth. But I think it makes the lines also appear thicker
than they are. You get a similar result when you just 'blur' the texture in
POV-Ray and then use the normal aa method without oversizing and scaling:
pigment{gradient y
pigment_map{
[0 rgb 1]
[0.41 rgb 1]
[0.5 rgb 0.3]
[0.59 rgb 1]
}
}
However the bluring would have to be done dependend on the distance to
remove the artifacts in the mid-distance.
Maybe one could add a 'blur texture when far away'-feature to POV.
- Micha
--
objects.povworld.org - The POV-Ray Objects Collection
book.povworld.org - The POV-Ray Book Project
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
> The most important part is the Gaussian blur. I used 500% resolution
> just to get those very thin lines. For normal a scene 200% to 300% and
> 1 to 1.5 pixel blur radius should be enough. The 50% blur radius seemed
> to be the minimum required to prevent visible aliasing. The image will
> look soft. Sharpening filter will just bring back the the jagged edges.
> It's a delicate balance between artefect free and sharp image :)
>
>
> _____________
> Kari Kivisalo
I made some experiments with your method this afternoon.
It is much better than my method, which I used in my two last IRTC entries.
I will no more use normal POV-Ray antialiasing, as such methods show enhance
most pictures considerably.
As an added benefit you get an high res version for printing at the same
time.
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
"Norbert Kern" wrote:
> I made some experiments with your method this afternoon.
> It is much better than my method, which I used in my two last IRTC entries.
> I will no more use normal POV-Ray antialiasing,
Me too. And it seems to work well even with non antialiased pics.
--
Jonathan.
Home: http://digilander.iol.it/jrgpov
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Micha Riser wrote:
>
> But I think it makes the lines also appear thicker
> than they are.
Which brings us to the question of optimal sampling filter
for 2D signal. My theory is that the artefacts in the default
povray aa and mosaic filtered image appear because the sampling
filter is a rigid box. This produces a ringing efect. This can
be avoided by sacrificing higher frequencies and using a smooth
edged filter.
This increases noise but reduces sampling artefacts:
+am1 +a0.0 +r9 +j13.5
It's always a trade-off :(
_____________
Kari Kivisalo
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Norbert Kern <nor### [at] t-online de> wrote:
> It is much better than my method, which I used in my two last IRTC entries.
> I will no more use normal POV-Ray antialiasing, as such methods show enhance
> most pictures considerably.
I don't think you can do that with an IRTC entry. The rules prohibit
post-processing.
--
#macro N(D)#if(D>99)cylinder{M()#local D=div(D,104);M().5,2pigment{rgb M()}}
N(D)#end#end#macro M()<mod(D,13)-6mod(div(D,13)8)-3,10>#end blob{
N(11117333955)N(4254934330)N(3900569407)N(7382340)N(3358)N(970)}// - Warp -
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |