Skip to content

No scaling for VMAF metric to match model resolution #190

@ataluts

Description

@ataluts

The program seems to scale video inputs only if their resolution doesn't match each other. But to get meaningful result in VMAF metric both video inputs must be scaled to the model resolution (FHD or 4k). So when the video resolution differ from the model's resolution VMAF results are wrong.

For example when I test my digitized VHS videos with resolution of 752*564 I get significantly higher VMAF value than it actually should be (99.3258 vs 97.29893 reported by ab-av1 or 97.215963 reported by ffmpeg itself when i scale input manually). These video files are compared as is but must be scaled to 1440*1080 to get correct result.

The actual ffmpeg command (from the log) is:
ffmpeg -hide_banner -nostdin -r 50 -i F:/FFMetrics_test/distorted_av1_752x564_50fps_10b.mkv -r 50 -i F:/FFMetrics_test/reference_ffv1_752x564_50fps_8b.mkv -lavfi [0:v]settb=AVTB,setpts=PTS-STARTPTS,format=yuv420p[main];[1:v]settb=AVTB,setpts=PTS-STARTPTS[ref];[main][ref]libvmaf=eof_action=endall:log_fmt=json:log_path='C\:/Users/Alexander/AppData/Local/Temp/FFMetrics/51f1355b-b875-473d-a69e-45b7d81646c6.log':n_threads=15:pool=Mean:model=version=vmaf_v0.6.1 -f null -

but should be:
ffmpeg -hide_banner -nostdin -r 50 -i F:/FFMetrics_test/distorted_av1_752x564_50fps_10b.mkv -r 50 -i F:/FFMetrics_test/reference_ffv1_752x564_50fps_8b.mkv -lavfi [0:v]scale=1440:1080:flags=bicubic,settb=AVTB,setpts=PTS-STARTPTS,format=yuv420p[main];[1:v]scale=1440:1080:flags=bicubic,settb=AVTB,setpts=PTS-STARTPTS[ref];[main][ref]libvmaf=eof_action=endall:log_fmt=json:log_path='C\:/Users/Alexander/AppData/Local/Temp/FFMetrics/51f1355b-b875-473d-a69e-45b7d81646c6.log':n_threads=15:pool=Mean:model=version=vmaf_v0.6.1 -f null -

Log of the program in debug mode: FFMetrics_log-debug.log

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions