Thread: xNLMeans
View Single Post
Old 15th December 2015, 19:22   #17  |  Link
martin53
Registered User
 
Join Date: Mar 2007
Posts: 407
Quote:
Originally Posted by Khanattila View Post
Although it was present in the original Non-local means paper I deliberately ignored the Gaussian distribution (sdev). Because it was not shown that brings benefits.

In my implementation wmin and center are equal to 1. Which it is also the situation recommended and more used. I do not think that it is interesting to allow users to modify this parameter.

Variance Compensation in fact is new. But I do not know how useful. Non-local means is designed to Gaussian noise and may not be effective.
Hi,
it is interesting that you could show that sdev brings no benefits. Does kNLMeansCL use any geometrical weighting, or are all pixels in the s range weighted same? I mainly used a digicam church indoor scene for my visual comparisons because it is blurry and noisy. The difference between original and denoised clip shows large and significant spots when higher s is used (or when sdev is >>1 with xNLMeans). I reason that large spots are not OK when the disturbance is expected to be independent between pixels, and I'm interested about more explanation from your side about this.

At the beginning, I observed that xNLMeans was unable to denoise pixels close to edges and generally in structured areas with low settings, while it blurred smooth areas with high settings. Because both the compressor will allow for more tolerance if there is more structure to compress, and (to my opinion) the eye is not aware of a bit more filtering of structures than smooth regions, I recommend the vcomp setting (or a better approach) as an extension to the controllers.

With center, I am unsure, too, about its general influence. When sdev is low, most of the total weight of a similarity neighborhood comes from the center pixel, which is illogical, looking at how the algorithm is justified. For this situation I recommend the control for the center pixel. When sdev is high or with a flat geometrical averaging, center should be unimportant.

And finally I feel that wmin might be the weakest point of the original paper itself. I never found a reason why the center pixel's weight should be so highly variable as to deliberately follow the weight of one of the other pixels. The whole thing looks to me like the paper didn't work first, and they needed no matter which solution but with attractive results - and voilą. Today we lack experience with this setting because all implementations strictly followed the paper, and I'm optimistic NLMeans can be a better remedy against not only gaussion noise but also artefacts with the additional controls.

But please don't take these explanations as a battle against kNLMeansCL. It's not meant like that! I just felt that I wanted more subtle control and programmed it, but I use kNLMeansCL for my movie clips, too Thanks for that great plugin btw!
martin53 is offline   Reply With Quote