Path Space Regularization (aka the solution to SDS paths)

Discussion related to the Engine functionality, implementations and API.
Post Reply
User avatar
Dade
Developer
Developer
Posts: 2925
Joined: Mon Dec 04, 2017 8:36 pm

Path Space Regularization (aka the solution to SDS paths)

Post by Dade » Thu Aug 29, 2019 3:29 pm

I have written a "proof of concept" based on "Path Space Regularization for Holistic and Robust Light Transport" (https://cg.ivd.kit.edu/english/PSR.php). This should represent a solution to the problem of rendering SDS paths with Hybrid Back/Forward path tracing.

This is a rendering of my standard SDS/caustics test scene with normal path tracing:

path.jpg

No caustics, no SDS paths, just few fireflies here and there.

This is the same scene rendered with light tracing:

light.jpg

Nice caustics but light tracing is not able to render directly visible specular surfaces at all.

This is the same scene rendered with light tracing and a very first hacked code for "Path Space Regularization":

light-psr.jpg

Being able to render a mirror (even if blurred) with a light tracer is quite remarkable result. Indeed, I was not looking for an alternative (blurred) way to render mirrors but to the ground caustic reflected on the mirror (i.e. the SDS paths). That piece of information will enrich Hybrid Back/Forward path with the capability to render SDS paths.

This feature is schedule for v2.3.

P.S. I will held hostage the code until the final release of v2.2 :mrgreen:
Support LuxCoreRender project with salts and bounties

User avatar
lacilaci
Donor
Donor
Posts: 1537
Joined: Fri May 04, 2018 5:16 am

Re: Path Space Regularization (aka the solution to SDS paths)

Post by lacilaci » Thu Aug 29, 2019 3:45 pm

Dade wrote:
Thu Aug 29, 2019 3:29 pm

This feature is schedule for v2.3.

P.S. I will held hostage the code until the final release of v2.2 :mrgreen:
Aw yeaah...
So let's release 2.2 today evening and first 2.3 daily tomorrow morning, there you go problem solved :lol:

Ok, but seriously, this looks very promising!

User avatar
Dade
Developer
Developer
Posts: 2925
Joined: Mon Dec 04, 2017 8:36 pm

Re: Path Space Regularization (aka the solution to SDS paths)

Post by Dade » Thu Aug 29, 2019 3:59 pm

lacilaci wrote:
Thu Aug 29, 2019 3:45 pm
So let's release 2.2 today evening and first 2.3 daily tomorrow morning, there you go problem solved :lol:
I will be out of the town for few days :mrgreen:

P.S. v2.2 starts to look like a final release, we shouldn't be too far from the release date.
Support LuxCoreRender project with salts and bounties

User avatar
epilectrolytics
Donor
Donor
Posts: 529
Joined: Thu Oct 04, 2018 6:06 am

Re: Path Space Regularization (aka the solution to SDS paths)

Post by epilectrolytics » Thu Aug 29, 2019 4:22 pm

Dade wrote:
Thu Aug 29, 2019 3:29 pm
I have written a "proof of concept" based on "Path Space Regularization for Holistic and Robust Light Transport" (https://cg.ivd.kit.edu/english/PSR.php). This should represent a solution to the problem of rendering SDS paths with Hybrid Back/Forward path tracing.
Thanks for the teaser, looks very promising!
In the paper they mention it runs on GPU, Iooks like it will also be a fast solution :shock:

And the paper is from 2013, has this been implemented elsewhere or will LuxCore be first?
MBPro 15" 16GB i7-4850HQ GT750M, MacOS 10.13.6 & Win10Pro PC 16GB Ryzen 2700X, 2 x RTX 2070

User avatar
Dade
Developer
Developer
Posts: 2925
Joined: Mon Dec 04, 2017 8:36 pm

Re: Path Space Regularization (aka the solution to SDS paths)

Post by Dade » Thu Aug 29, 2019 6:21 pm

epilectrolytics wrote:
Thu Aug 29, 2019 4:22 pm
In the paper they mention it runs on GPU, Iooks like it will also be a fast solution :shock:
It will run on CPU in our case because the light tracing is done there in our Hybrid Back/Forward path tracing but it isn't a big deal because the CPU will really handle only caustics and SDS paths and nothing else.
epilectrolytics wrote:
Thu Aug 29, 2019 4:22 pm
And the paper is from 2013, has this been implemented elsewhere or will LuxCore be first?
It has been implemented in a couple of demo but I'm not aware of its usage in any big commercial render engine.
Support LuxCoreRender project with salts and bounties

provisory
Posts: 200
Joined: Wed Aug 01, 2018 4:26 pm

Re: Path Space Regularization (aka the solution to SDS paths)

Post by provisory » Thu Aug 29, 2019 6:46 pm

I really like this direction!

I've found an easy to understand comparison video between VCM and Path Space Regularization:
https://www.youtube.com/watch?v=Hc9zu5-O7Eo

So, if I understand correctly, the degree of the "blur" is adjustable, and it is the quality vs. speed variable here.

User avatar
Dade
Developer
Developer
Posts: 2925
Joined: Mon Dec 04, 2017 8:36 pm

Re: Path Space Regularization (aka the solution to SDS paths)

Post by Dade » Thu Aug 29, 2019 7:15 pm

provisory wrote:
Thu Aug 29, 2019 6:46 pm
So, if I understand correctly, the degree of the "blur" is adjustable, and it is the quality vs. speed variable here.
Yes, more initial bias => more blurred =>"faster" but it is unbiased so it will converge to the right solution (first or later).
Support LuxCoreRender project with salts and bounties

provisory
Posts: 200
Joined: Wed Aug 01, 2018 4:26 pm

Re: Path Space Regularization (aka the solution to SDS paths)

Post by provisory » Thu Aug 29, 2019 7:17 pm

Very exciting, can't wait to test it! :)

User avatar
Sharlybg
Donor
Donor
Posts: 1466
Joined: Mon Dec 04, 2017 10:11 pm
Location: Ivory Coast

Re: Path Space Regularization (aka the solution to SDS paths)

Post by Sharlybg » Sun Sep 01, 2019 4:23 pm

Nice progresse Dade. Thanks for sharing such nice info to us.

Btw why the psor glass look so dark in the new algo aka PSR ? I mean compared to regular path tracing render.
Support LuxCoreRender project with salts and bounties

Portfolio : https://www.behance.net/DRAVIA

User avatar
Dade
Developer
Developer
Posts: 2925
Joined: Mon Dec 04, 2017 8:36 pm

Re: Path Space Regularization (aka the solution to SDS paths)

Post by Dade » Tue Sep 03, 2019 9:57 am

This is the first rendering with integration between hybrid backward/forward path tracing and path space regularization:

psr.jpg

It is good but a bit too blurred/noised/slow to render SDS paths.
Support LuxCoreRender project with salts and bounties

Post Reply