Measure the convergence speed
Measure the convergence speed
Hi,
I'm currently looking for a way to measure the convergence speed.
For now I use the FPS (frames per seconds) or SPS (samples per second), but it gives no information about the "pixel quality" !
I can have less FPS but better convergence !
So, how can I measure the image "error/delta" maybe compared to a reference image.
Thanks
I'm currently looking for a way to measure the convergence speed.
For now I use the FPS (frames per seconds) or SPS (samples per second), but it gives no information about the "pixel quality" !
I can have less FPS but better convergence !
So, how can I measure the image "error/delta" maybe compared to a reference image.
Thanks
Spectral
OMPF 2 global moderator
OMPF 2 global moderator
Re: Measure the convergence speed
LuxRender uses Hector Yee's algorithm (http://pdiff.sourceforge.net/metric.html) for rendering halt condition (the code is available at https://bitbucket.org/luxrender/luxrays ... at=default and is based on http://pdiff.sourceforge.net/). I use this code also in LuxMark to estimate if the benchmark produced a correct image.
However, it is more an on/off condition than an estimation of how far you are from the converged image. I have done some research in the past and I was able to find only another paper on the problem based on Hector Yee's work.
It is quite strange because, given how ubiquitous is path tracing nowadays, it should be a very hot topic: how do you efficiently render an animation without a good halt algorithm ?
However, it is more an on/off condition than an estimation of how far you are from the converged image. I have done some research in the past and I was able to find only another paper on the problem based on Hector Yee's work.
It is quite strange because, given how ubiquitous is path tracing nowadays, it should be a very hot topic: how do you efficiently render an animation without a good halt algorithm ?
Re: Measure the convergence speed
I believe these are 2 different use cases.
For measuring the performance of your rendering algorithm, I'd suggest something like mean squared error (pixel values vs. converged reference image) curves plotted over time. Indeed, as you say, talking about FPS, SPS or MRPS is pointless when comparing fundamentally different algorithms and I've been wondering for some time, why researchers don't report MSE curves more often. Now for this use case, the implementation doesn't need to be particularly efficient  you just need to make sure not to count the time spent calculating the MSE as part of the rendering time. I'd do the calculation in linear color space, i.e. before tone mapping.
Obviously, this ignores "perceived quality", but to me that's a different use case.
For measuring the performance of your rendering algorithm, I'd suggest something like mean squared error (pixel values vs. converged reference image) curves plotted over time. Indeed, as you say, talking about FPS, SPS or MRPS is pointless when comparing fundamentally different algorithms and I've been wondering for some time, why researchers don't report MSE curves more often. Now for this use case, the implementation doesn't need to be particularly efficient  you just need to make sure not to count the time spent calculating the MSE as part of the rendering time. I'd do the calculation in linear color space, i.e. before tone mapping.
Obviously, this ignores "perceived quality", but to me that's a different use case.
Re: Measure the convergence speed
Thanks,
Yes I already see all theses methods... I will surely try to implement both and I'm sure that both will be useful for different purpose.
BTW, there is no way without "reference image", by example, by measuring the pixel color after every pass ?
Yes I already see all theses methods... I will surely try to implement both and I'm sure that both will be useful for different purpose.
BTW, there is no way without "reference image", by example, by measuring the pixel color after every pass ?
Spectral
OMPF 2 global moderator
OMPF 2 global moderator
Re: Measure the convergence speed
Check "A perceptual stopping condition for global illumination computations" paper (http://www.sic.sp2mi.univpoitiers.fr/p ... li2753.pdf) for a study of the problem of evaluating convergence test without a reference image.spectral wrote:BTW, there is no way without "reference image", by example, by measuring the pixel color after every pass ?
P.S. in the context of my previous post that, as explained by McAce, my be different from your.
Re: Measure the convergence speed
And this one too:
A Hierarchical Automatic Stopping Condition for Monte Carlo Global Illumination
http://cg.ibds.kit.edu/publications/pub ... opping.pdf
A Hierarchical Automatic Stopping Condition for Monte Carlo Global Illumination
http://cg.ibds.kit.edu/publications/pub ... opping.pdf
Click here. You'll thank me later.
Re: Measure the convergence speed
The last paper references this one:
http://www.cs.berkeley.edu/~ravir/Overbeck2009AWR.pdf
I think it is a "to read" paper.
http://www.cs.berkeley.edu/~ravir/Overbeck2009AWR.pdf
I think it is a "to read" paper.

 Posts: 89
 Joined: Thu Apr 11, 2013 5:15 pm
Re: Measure the convergence speed
That one is more about adaptive sampling and noise reduction, and I think the adaptive sampling part is what bridges into the Hierarchical Automatic Stopping one. It's a good read, but I think there have been improvements in the basic approach since it was published.ypoissant wrote:The last paper references this one:
http://www.cs.berkeley.edu/~ravir/Overbeck2009AWR.pdf
I think it is a "to read" paper.