Questions about adjoint bsdf

Practical and theoretical implementation discussion.
Post Reply
jun
Posts: 4
Joined: Wed Jun 05, 2013 7:48 am

Questions about adjoint bsdf

Post by jun » Wed Jun 05, 2013 2:26 pm

Hello everyone, I'm reading Veach's thesis, there are some places that confused me a lot.

1. In the light transport equation(rendering equation), the bsdf describes the flow from light to eye. Am I correct that, under all transport cases(light transport or importance transport), if I used the original bsdf function then the argument ordering in the function is always w(towards light)->w(towards eye) ? So if I always use wi for the direction pointing towards light, wo for direction pointing towards eye and use the bsdf(wi->wo), then I don't need the adjoint bsdf? The adjoint bsdf is only used to correct the flow into the direction from light to eye and make the two transport equations identical, when wi is used conventionally as the direction being sampled ?

2. I'm quite confused with the adjoint bsdf for refraction, Veach derived that there's no eta scaling in the adjoint bsdf, and gave the intuition that the light particles carry power, not radiance. Does this mean that there is no scaling at all in a particle tracing implementation? Then how can the result be the same as path tracing? For example, an area light is placed under the water, and a lens above the water, there would be a scaling factor between the air-water interface in path tracing but not in particle tracing? Aren't the results of two methods different?

3. This is a question about MIS in bidirectional path tracing.
When I use the russian roulette to determine subpath lengths, the probability for sampling next vertex should be multiplied by the continue probability(page 310). When computing MIS weights, it's required to compute the probability of sampling vertex in inverse direction(page 306, the numerator of 10.9), then should this probability consider the russian roulette continue probability (multiply by what)?


Sorry for my poor English, and for my probably misunderstanding of the materials. Looking forward to your help. Thanks~ :)


Jun

Dietger
Posts: 50
Joined: Tue Nov 29, 2011 10:33 am

Re: Questions about adjoint bsdf

Post by Dietger » Fri Jun 07, 2013 9:33 pm

1. Yes, that sounds about right. Using adjoint bsdf's is just a view on bidirectional light transport that cleans up the math. You may freely ignore them and always evaluate the bsdf in the same consistent direction. The catch is in the probability densities; When tracing in the opposite direction, the bsdf will be evaluated in one direction while being importance sampled in the other. Consequently, factors in the bsdf and the pdf do not always cancel out as nicely. In particular, this happens when using shading normals or when paths are refracted, but there are more complicated examples. I usually don't bother with the adjoint bsdf view because it tends to confuse me more then it helps me, but that is just me.

2. This is actually a direct consequence of answer 1. When tracing light, outgoing light scattering density (as expressed by your bsdf) and sampling probability density undergo the same compression when refracting into water. Consequently, they tent to cancel out nicely. However, when tracing importance, the pdf is compressed (we trace into the water), but the light scattering density is decompressed (light is refracting out of the water). Consequently, the bsdf and the pdf do no longer cancel out nicely and you are left with a scaling factor. This is all consistent and will indeed produce the same result as particle tracing.

3. I don't know Veach thesis by head (shame on me), so can't help you with the particular equation :D When computing MIS, you should indeed use the RR probability of terminating the opposite path. If your RR probability is a function of subpath length and weight, that means that you have to compute the length and weight of the opposite subpath before you can evaluate the MIS weight.

- Dietger

jun
Posts: 4
Joined: Wed Jun 05, 2013 7:48 am

Re: Questions about adjoint bsdf

Post by jun » Sat Jun 08, 2013 3:14 am

Thanks very much for the reply, appreciate a lot :D.
Dietger wrote:1. Yes, that sounds about right. Using adjoint bsdf's is just a view on bidirectional light transport that cleans up the math. You may freely ignore them and always evaluate the bsdf in the same consistent direction. The catch is in the probability densities; When tracing in the opposite direction, the bsdf will be evaluated in one direction while being importance sampled in the other. Consequently, factors in the bsdf and the pdf do not always cancel out as nicely. In particular, this happens when using shading normals or when paths are refracted, but there are more complicated examples. I usually don't bother with the adjoint bsdf view because it tends to confuse me more then it helps me, but that is just me.
This clarifies my doubts. So adjoint bsdf is used to make the arguments ordering consistent with the sampling direction.
Dietger wrote: 2. This is actually a direct consequence of answer 1. When tracing light, outgoing light scattering density (as expressed by your bsdf) and sampling probability density undergo the same compression when refracting into water. Consequently, they tent to cancel out nicely. However, when tracing importance, the pdf is compressed (we trace into the water), but the light scattering density is decompressed (light is refracting out of the water). Consequently, the bsdf and the pdf do no longer cancel out nicely and you are left with a scaling factor. This is all consistent and will indeed produce the same result as particle tracing.
I can't understand this :( The scaling factor shows in the bsdf, not when we are evaluating the integral , so how does the pdf come in( the cancellation you mentioned ) ?
Dietger wrote: 3. I don't know Veach thesis by head (shame on me), so can't help you with the particular equation :D When computing MIS, you should indeed use the RR probability of terminating the opposite path. If your RR probability is a function of subpath length and weight, that means that you have to compute the length and weight of the opposite subpath before you can evaluate the MIS weight.
So I need to compute the RR probability for the opposite direction too, and multiply it onto the opposite sampling pdf. My understanding is that even if I don't multiply that RR prob, the balance/power heuristic will at least gives me an unbiased result, but not optimal?

-Jun

apaffy
Posts: 46
Joined: Thu Dec 01, 2011 11:00 pm
Location: UK
Contact:

Re: Questions about adjoint bsdf

Post by apaffy » Sat Jun 08, 2013 6:04 am

jun wrote:So I need to compute the RR probability for the opposite direction too, and multiply it onto the opposite sampling pdf. My understanding is that even if I don't multiply that RR prob, the balance/power heuristic will at least gives me an unbiased result, but not optimal?
Yep any set of weights that sum to one produce an unbiased result. My understanding is it's perfectly valid to not factor in RR probabilities into the weights if you don't want to, for some (likely small) difference in optimality.

Post Reply