tag:blogger.com,1999:blog-7277449027963623452.post7856495995454651544..comments2023-12-07T05:43:10.401-08:00Comments on Ray Tracey's blog: Real-time Energy Redistribution Path Tracing in Brigade!Sam Laperehttp://www.blogger.com/profile/05688552048697970050noreply@blogger.comBlogger9125tag:blogger.com,1999:blog-7277449027963623452.post-76441743724279395182011-01-13T02:10:53.181-08:002011-01-13T02:10:53.181-08:00Hi once again anonymous. I wish I could help, but ...Hi once again anonymous. I wish I could help, but I am not a programmer, and I don't know the mathematical concepts behind erpt and mlt, though I understand the theory behind it relatively well. The blog post about ERPT on GPUs is about the work of Dietger van Antwerpen (not me to be clear). He is currently a student at the Technische Universiteit Delft, the Netherlands. Maybe he can help you with the implementation aspects of ERPT. I think the best way to contact him is through replying on one of his youtube video's (Youtube username is Dietger86) or PM via the www.ompf.org forum (username is Dietger), you will first have to register on that forum of course. I hope this could be of help. CheersSam Laperehttps://www.blogger.com/profile/05688552048697970050noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-57214470906155468982011-01-11T16:55:15.432-08:002011-01-11T16:55:15.432-08:002) Another issue involves mutation strategies. All...2) Another issue involves mutation strategies. All the papers I have read about MLT and ERPT, describe mutation strategies, and rules of computing the relative path density to be dependent only on geometrical terms of the probability density function in path space. It seems like the relative path density in the ER sampler is insensitive for the probability of choosing specified scattering mode (i.e. for materials including different types of reflections). If we include this probability to the density change rules then the ratio of transition probabilities T(x|y) and T(y|x) may sometimes get changed significantly leading Markov chains to completely different stationary distribution. All of the papers says nothing about it. Maybe mutation strategies are good just as they are described. Maybe the reader must be bright enough to figure out what to do with materials containing more than one componenet (i.e. diffuse and specular reflections at once).<br /><br />I hope I have not written to much... and I hope you will reply :)<br />Best regards.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-27305112597134134952011-01-11T16:54:23.380-08:002011-01-11T16:54:23.380-08:001) What they exactly mean by 'mutations per pi...1) What they exactly mean by 'mutations per pixel'. There is something like 'chain length', which varies from 100 to 1000. Another value is 'k', from the original paper, used in estimation of 'e_d'. They call 'k' to be the desired number of mutations per corellated integral. One way to think about 'k' is that 'k' approximates the average number of mutations performed per pixel by ERPT during its whole runtime. In other words, 'k' ~ totalMutationsPerformed / numberOfPixels. But now, consider the parameters of the high quality rendering (192 MC samples and 800 mutations per pixel) in the original paper. Interpretation just described means that there was around 192/800 ~ 4 mutations performed per each MC sample. Since we are making mutation chains of length 100+, a lot of MC samples did not get mutated and energy from these samples did not get redistributed. I am not sure that it is correct behaviour. Maybe it is correct if we do not divide final pixel estimates by the number of MC samples per pixel (algorithm in the original paper does not do this division). However, the Batty's paper indicates this division to be correct. Obviously, the more MC samples are given to ER sampler the final image gets darker and darker, according to this division and fixed number of desired mutations per pixel manually stated by the user. But again, without this division I am not sure that algorithm makes sense.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-16060420268549413512011-01-11T16:53:05.054-08:002011-01-11T16:53:05.054-08:00To be clear, the line
"depVal(r,g,b) = e/lum(...To be clear, the line<br />"depVal(r,g,b) = e/lum(e)*e_d/samplesPerPixel"<br />should be removed from EqualDepositionFlow in the ERPT implementatino paper, and the line<br />"deposit depVal at y"<br />should be replaced with the line<br />"deposit f(y)/lum(f(y))*e_d/samplesPerPixel".<br />This leads to spread correct amount of total energy, and to distributing single unit of energy in each iteration over correct range of colors. <br /><br />Yes, I want to point authors to this error and even few more issues. I was thinking about writing a paper containing complete set of clarificatinos, but at this moment I got stuck with my implementation of ERPT. I have troubles with understanding few issues which are not explicitly discussed in the papers. Maybe you can help me a little?<br /><br />[to be continued]Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-79873408758903894392011-01-11T16:51:22.528-08:002011-01-11T16:51:22.528-08:00To be clear, the line
"depVal(r,g,b) = e/lum(...To be clear, the line<br />"depVal(r,g,b) = e/lum(e)*e_d/samplesPerPixel"<br />should be removed from EqualDepositionFlow in the ERPT implementatino paper, and the line<br />"deposit depVal at y"<br />should be replaced with the line<br />"deposit f(y)/lum(f(y))*e_d/samplesPerPixel".<br />This leads to spread correct amount of total energy, and to distributing single unit of energy in each iteration over correct range of colors. <br /><br />Yes, I want to point authors to this error and even few more issues. I was thinking about writing a paper containing complete set of clarificatinos, but at this moment I got stuck with my implementation of ERPT. I have troubles with understanding few issues which are not explicitly discussed in the papers. Maybe you can help me a little?<br /><br />1) What they exactly mean by 'mutations per pixel'. There is something like 'chain length', which varies from 100 to 1000. Another value is 'k', from the original paper, used in estimation of 'e_d'. They call 'k' to be the desired number of mutations per corellated integral. One way to think about 'k' is that 'k' approximates the average number of mutations performed per pixel by ERPT during its whole runtime. In other words, 'k' ~ totalMutationsPerformed / numberOfPixels. But now, consider the parameters of the high quality rendering (192 MC samples and 800 mutations per pixel) in the original paper. Interpretation just described means that there was around 192/800 ~ 4 mutations performed per each MC sample. Since we are making mutation chains of length 100+, a lot of MC samples did not get mutated and energy from these samples did not get redistributed. I am not sure that it is correct behaviour. Maybe it is correct if we do not divide final pixel estimates by the number of MC samples per pixel (algorithm in the original paper does not do this division). However, the Batty's paper indicates this division to be correct. Obviously, the more MC samples are given to ER sampler the final image gets darker and darker, according to this division and fixed number of desired mutations per pixel manually stated by the user. But again, without this division I am not sure that algorithm makes sense.<br /><br />2) Another issue involves mutation strategies. All the papers I have read about MLT and ERPT, describe mutation strategies, and rules of computing the relative path density to be dependent only on geometrical terms of the probability density function in path space. It seems like the relative path density in the ER sampler is insensitive for the probability of choosing specified scattering mode (i.e. for materials including different types of reflections). If we include this probability to the density change rules then the ratio of transition probabilities T(x|y) and T(y|x) may sometimes get changed significantly leading Markov chains to completely different stationary distribution. All of the papers says nothing about it. Maybe mutation strategies are good just as they are described. Maybe the reader must be bright enough to figure out what to do with materials containing more than one componenet (i.e. diffuse and specular reflections at once).<br /><br />I hope I have not written to much... and I hope you will reply :)<br />Best regards.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-61151242574382737152011-01-04T11:06:50.618-08:002011-01-04T11:06:50.618-08:00Thanks for this elaborate answer Anonymous. This i...Thanks for this elaborate answer Anonymous. This is very interesting and after re-reading I think I can follow your reasoning. Maybe you could post David Cline or Christopher Batty (authors of ERPT paper and Implementing ERPT paper) and point them to this error.Sam Laperehttps://www.blogger.com/profile/05688552048697970050noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-19981369289877470812011-01-03T22:41:23.494-08:002011-01-03T22:41:23.494-08:00I think that the caustic artifacts in the ERPT imp...I think that the caustic artifacts in the ERPT implementation paper may come from an error in Equal Deposition Flow procedure. Deposition value is computed from the initial Monte Carlo samples, which is incorrect in my opinion. It should be computed for each mutated sample. Consider the situation in which an initial MC sample has large energy of red color. During path mutation we found a path that also has large energy, but coloured as blue.<br />Since acceptance probability works on luminance and MC path density it will accept this kind of mutated sample. Practically speaking it leads to spreading red energy over the pixels that should be blue. In effect we can see things like unexpected coloured spots and even blurred textures.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-72378381100278586902010-07-16T00:37:38.413-07:002010-07-16T00:37:38.413-07:00I don't know. I think we should wait and see. ...I don't know. I think we should wait and see. What interests me is if they got rid of the caustic artifacts produced by glass objects, as can be seen in the ERPT implementation paper.Sam Laperehttps://www.blogger.com/profile/05688552048697970050noreply@blogger.comtag:blogger.com,1999:blog-7277449027963623452.post-48176823697546988282010-07-15T01:39:31.262-07:002010-07-15T01:39:31.262-07:00The new method looks very good but is it fast enou...The new method looks very good but is it fast enough to allow animation?Anonymousnoreply@blogger.com