PSA: Did everyone know about pixel filters but me?

2»

Comments

  • lain105_eckomarslain105_eckomars Posts: 95
    edited July 2017

    ran across this thread and decided to do some tests! (~~I ran these all render quality 2, 100% convergence, very high max iterations~~)

    https://www.dropbox.com/sh/h2v0h6rm110fpu7/AAD4G9VPuEaW0Nb_q0DpOa1ca?dl=0

    there should be 3 folders, two folders should have 10 pics, and one should have 6. names should be self explanitory. since ive been rendering all day i opted to not adjust texture compression for the blur type renders, nor render the ten filter/compression variants for a clothing or prop. maybe i will later lol

    tl;dr

    I noticed a dramatic difference between .5, 1.5, and 2.5 pixel filter radius. i could not see any difference between blur types. 4k vs 512 px advanced>texture compression didn't make dramatic differences on the skin renders.

    Post edited by lain105_eckomars on
  • nonesuch00nonesuch00 Posts: 18,120

    Yes, that was my impression of the technical conversion on the forum that I googled. If you set these different methods to the same pixel radius you'll be hard pressed to see an appriable difference between them but when you make the pixel radi smaller or larger, it doesn't matter the filter method, you'll see smaller numbers are shaper and bigger numbers are blurier. Even most HD digital camera film making video camera introduces blur on purpose.

  • marblemarble Posts: 7,500
    edited July 2017

    So, am I understanding the definition correctly? In that a radius of 0.5 will blur a single pixel by another half a pixel?  That surely can't be right? Or does it blur edges by half a pixel-width? Sorry, I clearly don't have the gist of it yet.

    Post edited by marble on
  • when i was running tests on the pixel filter, i ended up branching off and doing a few texture compression renders. the 512 and 4k look the same, but i swear i didn't forget to change settings, whereas the insanely high 10k looks great (this is the whymsy dress)

    https://www.dropbox.com/sh/4bw6o5qxi64hlpq/AAD1lq2PK5x7coY6OR3Sk3J-a?dl=0

    i included it here because i think texture compression may also contribute to that sort of nebulous blurry look i get sometimes

  • nonesuch00nonesuch00 Posts: 18,120
    marble said:

    So, am I understanding the definition correctly? In that a radius of 0.5 will blur a single pixel by another half a pixel?  That surely can't be right? Or does it blur edges by half a pixel-width? Sorry, I clearly don't have the gist of it yet.

    That's what I read too, so a radius of 0 is no filtering at all. And a radius of two can be quite big in boundary areas like between skin & cloth and so on. 

  • RobotHeadArtRobotHeadArt Posts: 917

    The Iray Programmer's Manual seems to indicate that Iray Photoreal only supports box, triangle, and Gaussian filters.  If you specify Mitchell or Lanczos you get the Gaussian filter.

  • ALLIEKATBLUEALLIEKATBLUE Posts: 2,970

    I did six different renders (three sets of two) to test this and I don't see a difference. 

    Here's Gaussian:

    Here's Mitchell:

     

    My eyes aren't the best though (I've had to wear glasses/contacts since I was 8). Does anyone else see a difference in the two? It's entirely possible that my eyes just suck. lol

    I've worn glasses since I was 9 and now I have computer glasses as well. The mitchel shows the pores on the arms more

  • AlienRendersAlienRenders Posts: 793
    edited July 2017

    I'm a programmer and have used/implemented gaussian and lanczos. Gaussian is what you'd expect from averaging pixels according to weights (usually distance from the current pixel). It will only lose detail since it's a low pass filter. So it's good for removing image noise, but also high resolution details.

    A nice use case for gaussian blur is an effect like the neon/glow effects in Tron. You copy a single colour (say blue) from the original image. Apply gaussian blur and then do an additive blending (you just add the colours together) with the original. And you get that neon effect.

    Lanczos is a nice filter. This one has the effect that it can sharpen and blur at the same time. The nearest pixels (and every other pixel after that) to the current pixel actually have a decreasing negative effect on the final pixel. By contrast, every second pixel is added with decreasing weights. The effect is still one of reducing noise, but sharpening edges (to some extent). This has the drawback that you can get ringing effects around sharp edges. But with the right setting, it should give nice results. Useful when textures are downsampled (when you're zoomed out or farther away).

    Not very familiar with the Mitchell filter. From what I recall, it's good at reconstructing detail when enlarging images. So if you're zoomed in, Mitchell would probably do a good job.

    Does anyone know if these settings are applied to the source textures? Or on the final render? Because if it's on the final render, then it's basically just a post-processing operation.

    Post edited by AlienRenders on
  • 3Diva3Diva Posts: 11,483

    I did six different renders (three sets of two) to test this and I don't see a difference. 

    Here's Gaussian:

    Here's Mitchell:

     

    My eyes aren't the best though (I've had to wear glasses/contacts since I was 8). Does anyone else see a difference in the two? It's entirely possible that my eyes just suck. lol

    I've worn glasses since I was 9 and now I have computer glasses as well. The mitchel shows the pores on the arms more

    Wow, you must have great eyes! Honestly I don't see a difference, but as you do, I'll definitely start going with Mitchel. Thank you for the feedback, ALLIEKATBLUE! :)

  • xyer0xyer0 Posts: 5,929

    I've run tests on single characters and large environmental scenes (both @ 4000x2000 or so) with Gaussian @ default and Mitchell @ .8. The only difference I could discern when viewed onscreen (17" laptop) was one extra speck of highlight in each of the Gaussian renders versus the Mitchell renders.

  • Aeon SoulAeon Soul Posts: 117
    Shozai said:

    Aeon Soul gives always the tip for pixel filter : (tip: remember to set your "Filtering > Pixel > Pixel Filter Radius" at 0.50 or so to enjoy all the crispy details of the textures, especially in very close-up renders). :)

    0.5 might actually be too much in most cases, because although it may make clothes look very sharp (https://twitter.com/AeonSoul/status/859768076115599360) it may result too hard on skin. Between 1 and 0.75 is probably the all around ideal.

    Another parameter one may wants to check is the texture compression parameter: https://twitter.com/AeonSoul/status/861949815684567040, that can also make a huge difference. If you notice any bleeding effect, check that one.

  • ToborTobor Posts: 2,300

    The docs haven't been updated in a while, so later versions of Iray may be different, but for some time Lanczos and Mitchell are not internally connected, according to the programmer's documentation:

    ==============================

    Iray Photoreal natively supports mi::neuraylib::FILTER_BOXmi::neuraylib::FILTER_TRIANGLE and mi::neuraylib::FILTER_GAUSS filters for antialiasing. If mi::neuraylib::FILTER_CMITCHELL ormi::neuraylib::FILTER_CLANCZOS is requested, Iray Photoreal will use the default Gaussian filter instead.

    =============================

    For those doing tests to see if this limitation still exists in the latest releases of 4.9, select Mitchell or Lanczos and set them to the same pixel setting as default Gaussian. Otherwise just the pixel radius value may be influencing the results. Lanczos will appear somewhat like Guassian, except that its curve has more overshoot before and after the bell.

    On turning these off: you can't, at least to the last beta of 4.9. That's why you can't combine the filter types without an error popping up in the logs.

  • ScavengerScavenger Posts: 2,665

    The other direction is just skip the filtering and do that in post

    Does this affect Render time +/- ?

  • dawnbladedawnblade Posts: 1,723

    I just found that there is also a Pixel Filter in 3Delight! To see it and the Pixel Filter Width X/Y sliders, you need to select "Show Hidden Properties" in the top-left menu options of the render settings editor.

    The default filter is Sinc, but now you can choose Box, Triangle, Catmull-Rom, and Gaussian.

    Has anyone played with these in 3DL that can shed some light on the best settings?

  • Thank you for making this thread. I recently made the decision to switch from 3delight to Iray (mostly), and have been having issues with characters coming out blurry compared with 3DL renders. Closeups look great, it's with more distance that the blur is happening. So I did a search to learn more about the filters and boom, this thread.

  • tonicdustytonicdusty Posts: 12

    I've been messing with this lately, and have found that for animation I can get some pretty good results even with as little as 50 iterations per frame with Mitchel at around 1.0. That cuts render time down to about 40 seconds a frame. The more ideal is at least 100 iterations, and the denoise filter kicking in on the last one. Though, the more iterations, the sharper the image you get, but you won't see much differing results until getting back into the thousands. So, if you're not happy with 100 iterations, you'll need to jump up to well over 1000 to start noticing an improved result. In my experiments between 100-1000 produce largly the same quality. This is only useful for animations with hundreds of frames though. For single images it's of course better to do 5000+ iterations, and then have the denoiser knock out anything left.

Sign In or Register to comment.