VMAF
VMAF(英语:Video Multimethod Assessment Fusion)是Netflix所设计出来,希望能自动化评量影片档案品质的算法。
安装
这边主要是描述Ubuntu 20.04下安装VMAF的Python套件的方式,目标是希望尽可能装的“干净”一点。
所以我们会先利用pyenv安装自己的Python环境(避免使用系统的Python),这边要注意Python 3.10.0可能会遇到一些Python module装不起来的问题,我们这边会使用Python 3.9.7。
接着安装需要的相依套件:
sudo apt install -y build-essential gfortran libblas-dev liblapack-dev libsvm-dev meson nasm
然后就可以把Git repository抓下来安装了:
git clone https://github.com/Netflix/vmaf.git; cd vmaf; make; cd python; make; pip install -U -r requirements.txt; python3 setup.py install
最后因为不想要自己编执行档,需要把官方预先编好的执行档vmaf
放进对应的位置(要注意这是x86_64
版本),这边用的是pyenv的位置:
mkdir -p ~/.pyenv/versions/3.9.7/lib/python3.9/libvmaf/build/tools; wget -O ~/.pyenv/versions/3.9.7/lib/python3.9/libvmaf/build/tools/vmaf https://github.com/Netflix/vmaf/releases/download/v2.3.0/vmaf; chmod 755 ~/.pyenv/versions/3.9.7/lib/python3.9/libvmaf/build/tools/vmaf
执行
这边是针对1920x1080的yuv420p档案分析手机上的打分:
PYTHONPATH=${PYTHONPATH}:vmaf/third_party/libsvm/python python3 vmaf/python/vmaf/script/run_vmaf.py yuv420p 1920 1080 "${REFERENCED}.yuv" "${DISTORTED}.yuv" --model vmaf_float_v0.6.1.json --phone-model