## Measure the convergence speed

Practical and theoretical implementation discussion.
spectral
Posts: 382
Joined: Wed Nov 30, 2011 2:27 pm
Contact:

### 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
Spectral
OMPF 2 global moderator

Posts: 206
Joined: Fri Dec 02, 2011 8:00 am

### 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 ?

McAce
Posts: 7
Joined: Fri Feb 22, 2013 6:28 am

### 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.

spectral
Posts: 382
Joined: Wed Nov 30, 2011 2:27 pm
Contact:

### 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 ?
Spectral
OMPF 2 global moderator

Posts: 206
Joined: Fri Dec 02, 2011 8:00 am

### Re: Measure the convergence speed

spectral wrote:BTW, there is no way without "reference image", by example, by measuring the pixel color after every pass ?
Check "A perceptual stopping condition for global illumination computations" paper (http://www.sic.sp2mi.univ-poitiers.fr/p ... li2753.pdf) for a study of the problem of evaluating convergence test without a reference image.

P.S. in the context of my previous post that, as explained by McAce, my be different from your.

spectral
Posts: 382
Joined: Wed Nov 30, 2011 2:27 pm
Contact:

### Re: Measure the convergence speed

Thanks,

Will try that asap
Spectral
OMPF 2 global moderator

ingenious
Posts: 282
Joined: Mon Nov 28, 2011 11:11 pm
Location: London, UK
Contact:

### 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

spectral
Posts: 382
Joined: Wed Nov 30, 2011 2:27 pm
Contact:

### Re: Measure the convergence speed

Interesting too !

Thanks
Spectral
OMPF 2 global moderator

ypoissant
Posts: 97
Joined: Wed Nov 30, 2011 12:44 pm

### 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.

friedlinguini
Posts: 89
Joined: Thu Apr 11, 2013 5:15 pm

### Re: Measure the convergence speed

ypoissant wrote:The last paper references this one:
http://www.cs.berkeley.edu/~ravir/Overbeck2009AWR.pdf
I think it is a "to read" paper.
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.