rav1e icon indicating copy to clipboard operation
rav1e copied to clipboard

Derive quantizer index offsets for segments from distortion scales

Open barrbrain opened this issue 4 years ago • 2 comments

Runs k-means on logarithms of distortion scale, with k fixed at 3. Needs more comments and AWCY results.

barrbrain avatar Mar 14 '21 07:03 barrbrain

Coverage Status

Coverage decreased (-0.4%) to 83.547% when pulling a3df721f064e6bb32986c2ca9c2892e0c720d141 on barrbrain:segment-opt into b0cb66799e6e078fcaa3faeb2c573be07aa4ed39 on xiph:master.

coveralls avatar Mar 14 '21 07:03 coveralls

AWCY results at the default speed indicate more work is needed from this initial version:

PSNR Y PSNR Cb PSNR Cr CIEDE2000 SSIM MS-SSIM PSNR-HVS Y PSNR-HVS Cb PSNR-HVS Cr PSNR-HVS VMAF VMAF-NEG
1.6103 1.8378 1.7304 1.8383 1.5591 1.7372 1.8687 1.8090 1.4279 1.8676 2.1277 2.1061

barrbrain avatar Mar 24 '21 04:03 barrbrain

Codecov Report

Base: 86.44% // Head: 86.44% // Decreases project coverage by -0.00% :warning:

Coverage data is based on head (74976b9) compared to base (c0b1f56). Patch coverage: 99.26% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #2694      +/-   ##
==========================================
- Coverage   86.44%   86.44%   -0.01%     
==========================================
  Files          87       88       +1     
  Lines       33942    33957      +15     
==========================================
+ Hits        29342    29354      +12     
- Misses       4600     4603       +3     
Impacted Files Coverage Δ
src/util/kmeans.rs 98.85% <98.85%> (ø)
src/segmentation.rs 97.90% <100.00%> (+2.03%) :arrow_up:
src/lib.rs 41.93% <0.00%> (-4.50%) :arrow_down:
src/asm/x86/lrf.rs 92.22% <0.00%> (-1.90%) :arrow_down:
src/me.rs 95.20% <0.00%> (-0.40%) :arrow_down:
src/predict.rs 81.47% <0.00%> (-0.10%) :arrow_down:
src/cpu_features/x86.rs 39.58% <0.00%> (ø)
src/encoder.rs 87.33% <0.00%> (+0.03%) :arrow_up:
src/rdo.rs 85.92% <0.00%> (+0.09%) :arrow_up:
... and 3 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

codecov-commenter avatar Aug 15 '22 15:08 codecov-commenter

Wow, this seems much cleaner. Nice!

shssoichiro avatar Aug 16 '22 15:08 shssoichiro

Update: Rebased on top of recent changes. AWCY results with number of segments fixed at 3 and dynamic offsets on objective-fast-1 at default speed:

PSNR Y PSNR Cb PSNR Cr CIEDE2000 SSIM MS-SSIM PSNR-HVS Y PSNR-HVS Cb PSNR-HVS Cr PSNR-HVS VMAF VMAF-NEG
-0.4592 -0.2004 -0.4580 -0.3037 -0.3615 -0.2910 -0.4767 0.0709 -0.3100 -0.4787 -0.5725 -0.5436

barrbrain avatar Aug 17 '22 05:08 barrbrain

I noticed the testing between different numbers of segments--the reasoning for the current version using a dynamic number of segments based on the variance of scores within the frame is because there is some amount of filesize overhead in using a higher number of segments (because they have to be coded). Therefore, we wanted to avoid coding segments that were not useful.

If it's not possible to dynamically choose the segment count based on score variance, maybe a workaround could be to use 5 segments with low-to-mid quantizers, where the segmentation coding overhead is less significant, and 3 segments with higher quantizers where the segmentation coding would affect the overall filesize more.

shssoichiro avatar Aug 19 '22 19:08 shssoichiro

The goal is to retain a dynamic number of segments. The current testing is to measure the performance of an 'oracle' that picks the best number of segments for each clip.

barrbrain avatar Aug 19 '22 19:08 barrbrain

AWCY results for objective-1-fast at default speed

PSNR Y PSNR Cb PSNR Cr CIEDE2000 SSIM MS-SSIM PSNR-HVS Y PSNR-HVS Cb PSNR-HVS Cr PSNR-HVS VMAF VMAF-NEG
-0.4139 -0.1869 -0.2631 -0.2345 -0.2842 -0.2500 -0.3600 0.1368 -0.2013 -0.3594 -0.3614 -0.4027

barrbrain avatar Aug 21 '22 08:08 barrbrain