]> granicus.if.org Git - libvpx/commit
Implicit weighted prediction experiment
authorDeb Mukherjee <debargha@google.com>
Tue, 12 Mar 2013 21:21:08 +0000 (14:21 -0700)
committerDeb Mukherjee <debargha@google.com>
Tue, 26 Mar 2013 23:58:56 +0000 (16:58 -0700)
commit23144d2345cd4d8757afae392daf60c1e915abb5
treecfa1d6173f3302c6842524ef2827fd49c9fe773a
parent646616602dca641f8fe38ca4c7adbb77df5ae8e3
Implicit weighted prediction experiment

Adds an experiment to use a weighted prediction of two INTER
predictors, where the weight is one of (1/4, 3/4), (3/8, 5/8),
(1/2, 1/2), (5/8, 3/8) or (3/4, 1/4), and is chosen implicitly
based on consistency of the predictors to the already
reconstructed pixels to the top and left of the current macroblock
or superblock.

Currently the weighting is not applied to SPLITMV modes, which
default to the usual (1/2, 1/2) weighting. However the code is in
place controlled by a macro. The same weighting is used for Y and
UV components, where the weight is derived from analyzing the Y
component only.

Results (over compound inter-intra experiment)
derf: +0.18%
yt: +0.34%
hd: +0.49%
stdhd: +0.23%

The experiment suggests bigger benefit for explicitly signaled weights.

Change-Id: I5438539ff4485c5752874cd1eb078ff14bf5235a
12 files changed:
configure
vp9/common/vp9_blockd.h
vp9/common/vp9_convolve.c
vp9/common/vp9_convolve.h
vp9/common/vp9_reconinter.c
vp9/common/vp9_rtcd_defs.sh
vp9/decoder/vp9_decodemv.c
vp9/decoder/vp9_decodframe.c
vp9/encoder/vp9_encodeframe.c
vp9/encoder/vp9_rdopt.c
vp9/encoder/vp9_temporal_filter.c
vpxenc.c