ref: 9f14bbfd801550ce96144c039f69d0c86081c58f
parent: 5fe0e55ca4f1c88b0d87448be4bafa4b700125ab
author: Yaowu Xu <yaowu@google.com>
date: Fri Jun 26 11:54:43 EDT 2015
Fixed a variance calculation This commit fixed a mistake in variance calculation. Thanks to Xintong for spotting the error. Change-Id: Ia285fc0128c00f0234a73b0a7eba6adc88b8a7de
--- a/vp9/encoder/vp9_firstpass.c
+++ b/vp9/encoder/vp9_firstpass.c
@@ -1031,8 +1031,10 @@
fps.mvr_abs = (double)sum_mvr_abs / mvcount;
fps.MVc = (double)sum_mvc / mvcount;
fps.mvc_abs = (double)sum_mvc_abs / mvcount;
- fps.MVrv = ((double)sum_mvrs - (fps.MVr * fps.MVr / mvcount)) / mvcount;
- fps.MVcv = ((double)sum_mvcs - (fps.MVc * fps.MVc / mvcount)) / mvcount;
+ fps.MVrv = ((double)sum_mvrs -
+ ((double)sum_mvr * sum_mvr / mvcount)) / mvcount;
+ fps.MVcv = ((double)sum_mvcs -
+ ((double)sum_mvc * sum_mvc / mvcount)) / mvcount;
fps.mv_in_out_count = (double)sum_in_vectors / (mvcount * 2);
fps.new_mv_count = new_mv_count;
fps.pcnt_motion = (double)mvcount / num_mbs;
--
⑨