]> granicus.if.org Git - libvpx/commit
Fix to reduce block artifacts from vp8 temporal denoiser.
authorMarco Paniconi <marpan@google.com>
Wed, 21 May 2014 23:07:16 +0000 (16:07 -0700)
committerMarco Paniconi <marpan@google.com>
Wed, 21 May 2014 23:07:16 +0000 (16:07 -0700)
commit4e81ab82d55d44e2b125f00017d2026226c5483a
treebf2fbeb7a16127da5dc942fcdc58439e265493f1
parent0958bbd18556dcba340d4f5d8ce2f8226f370f75
Fix to reduce block artifacts from vp8 temporal denoiser.

If the denoiser filter causes too big a change in the absolute pixel difference
(between source and denoised signal), the block is not denoised, which can cause
visual block artifacts. This change applies a second adjustment to the temporal filter
to effectively allow for a (weaker) denoising for such blocks (which can keep
the absolute differnence within the tolerance range in most cases).
This helps to reduce some of the block artifacts from the denoising.
The additional cost of re-applying the filter to this set of blocks is low,
as the percentage of blocks per frame (with too big a change in absolute pixel difference)
is typically small, 2-5%.

Change-Id: Id9b56e59e33f3c22e79d2f89f763bdde246fdf3f
vp8/encoder/denoising.c
vp8/encoder/x86/denoising_sse2.c