]> granicus.if.org Git - libvpx/commitdiff
vp9: Increase convergence speed of noise estimation.
authorMarco <marpan@google.com>
Thu, 4 Jan 2018 22:20:59 +0000 (14:20 -0800)
committerMarco <marpan@google.com>
Thu, 4 Jan 2018 22:29:27 +0000 (14:29 -0800)
Increase the recursive average factor from 15/16 to 3/4
to make the noise estimation respond faster.

Small/neglible change on low noise content, but better
denoising for noisy content.
Also encoder speedup of ~2-3% observed on some noisy clips.

Change-Id: I9dd02fe961ca24b411fe4c2732f814bf1e9a7f9f

vp9/encoder/vp9_noise_estimate.c

index 276a0c78525983bbf25bc35cd16a5ccc3f1ea37a..249e03760fa2856a09667aeec6e86441cb8d5171 100644 (file)
@@ -258,7 +258,7 @@ void vp9_update_noise_estimate(VP9_COMP *const cpi) {
       // Normalize.
       avg_est = avg_est / num_samples;
       // Update noise estimate.
-      ne->value = (int)((15 * ne->value + avg_est) >> 4);
+      ne->value = (int)((3 * ne->value + avg_est) >> 2);
       ne->count++;
       if (ne->count == ne->num_frames_estimate) {
         // Reset counter and check noise level condition.