diff options
author | Yaowu Xu <yaowu@google.com> | 2011-05-25 16:07:37 -0700 |
---|---|---|
committer | Yaowu Xu <yaowu@google.com> | 2011-05-25 16:48:10 -0700 |
commit | d8c525b8b1726dc1de18d7e729140592eb3d0b16 (patch) | |
tree | 6e5f5078c4b12631f11c06f63c0218db744c25d9 /vp8/encoder/mcomp.h | |
parent | 13b56eeb7a6a61c599c397a3b8cd5b6f77c2f07b (diff) | |
download | libvpx-d8c525b8b1726dc1de18d7e729140592eb3d0b16.tar libvpx-d8c525b8b1726dc1de18d7e729140592eb3d0b16.tar.gz libvpx-d8c525b8b1726dc1de18d7e729140592eb3d0b16.tar.bz2 libvpx-d8c525b8b1726dc1de18d7e729140592eb3d0b16.zip |
fix the mix use of errorperbit and sadperbit
error_per_bit and sad_per_bit were designed as estimates of a bit worth
of sum squared error and sum absolute difference respectively. Under
this assumption, error_per_bit should be used in combination with 2nd
order errors (variance or sum squared error) while sad_per_bit should
be used in combination with 1st order SADs in motion estimation. There
were a few places where sad_per_bit has been misused with variances,
this commit changes to use error_per_bit for those places, also changes
parameter names to properly indicate which constant is being used.
On cif set, the change has a universal gain by all metrics: 0.13% by
average/overall psnr and 0.1% by ssim.
Change-Id: I4850fdcc3fd6886b30f784bd843f13dd401215fb
Diffstat (limited to 'vp8/encoder/mcomp.h')
-rw-r--r-- | vp8/encoder/mcomp.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/vp8/encoder/mcomp.h b/vp8/encoder/mcomp.h index 85c7513ec..bf9fa6f76 100644 --- a/vp8/encoder/mcomp.h +++ b/vp8/encoder/mcomp.h @@ -63,7 +63,7 @@ extern fractional_mv_step_fp vp8_skip_fractional_mv_step; BLOCK *b, \ BLOCKD *d, \ int_mv *ref_mv, \ - int error_per_bit, \ + int sad_per_bit, \ int distance, \ vp8_variance_fn_ptr_t *fn_ptr, \ int *mvcost[2], \ @@ -77,7 +77,7 @@ extern fractional_mv_step_fp vp8_skip_fractional_mv_step; BLOCK *b, \ BLOCKD *d, \ int_mv *ref_mv, \ - int error_per_bit, \ + int sad_per_bit, \ int distance, \ vp8_variance_fn_ptr_t *fn_ptr, \ int *mvcost[2], \ @@ -93,7 +93,7 @@ extern fractional_mv_step_fp vp8_skip_fractional_mv_step; int_mv *ref_mv, \ int_mv *best_mv, \ int search_param, \ - int error_per_bit, \ + int sad_per_bit, \ int *num00, \ vp8_variance_fn_ptr_t *fn_ptr, \ int *mvcost[2], \ |