MAC 安裝 VMAF 遇到的問題及解決方法記錄
根據官方文件,或同行的文章,安裝VMAF後,都出現了各種各樣的問題,經過較長時間才逐一解決掉,僅以此文記錄。
安裝記錄
(1)安裝python3.5以上
(2)編譯環境準備
brew install gcc meson doxygen nasm freetype pkg-config hdf5
brew install numpy scipy
(3)下載VMAF並安裝
# 下載原始碼
git clone https://github.com/Netflix/vmaf.git
cd vmaf
git submodule update --init --recursive
# 編譯
make
可能遇到錯誤: 'mem.h' file not found
報錯資訊:
A. 根據報錯資訊,看到vmaf/core/../../../libvmaf/src/feature/adm_tools.c的22行: #include "mem.h"報錯:找不到mem.h
B. find目錄vmaf下有沒有mem.h
$ find vmaf/ -name mem.h
.//libvmaf/src/mem.h # 該目錄下有mem.h檔案
C. 問題解決
開啟mem.h看了一下,沒有引用其他檔案,所以直接把mem.h拷貝到adm_tools.c的同級目錄中。
再次執行make clean && make,編譯通過。
繼續安裝:
cd python
pip3 install cython
pip3 install -r requirements.txt
pip3 install --user . # 此時,會出現各種報錯
錯誤2:
vmaf/core/adm_dwt2_cy.c:637:10: fatal error: '../../../libvmaf/src/feature/adm_tools.c' file not found
通過ls發現,檔案是存在的,且相對路徑沒有問題,C語言執行卻沒找到。因為C都已經還給大學老師了,所以暫時修改為絕對路徑(有了解如何解決的小夥伴可以留言)
修改完後,繼續執行pip3 install --user .
,顯示vmaf安裝成功
(4)環境變數配置
新增export PATH="$PATH:$HOME/.local/bin"
到~/.profile中
執行source ~/.profile
使配置生效
(5)單元測試
在vmaf根目錄下,
./unittest
執行結果有成功的,有失敗的,暫時不管。繼續下面的步驟。
(6)測試驗證
PYTHONPATH=python ./python/vmaf/script/run_vmaf.py \
yuv420p 576 324 \
python/test/resource/yuv/src01_hrc00_576x324.yuv \
python/test/resource/yuv/src01_hrc01_576x324.yuv \
--out-fmt json
執行時,報錯:Can't import svmutil from /Users/lizhen/Library/Python/3.8/lib/python/third_party/libsvm/python: No module named 'svmutil'
ll 檢視/Users/lizhen/Library/Python/3.8/lib/python/third_party/libsvm/python,發現檔案不存在,一臉懵逼啊,臥槽。(歡迎解決過這個問題的小夥伴留言)
不過,初步懷疑是python環境的問題,所以用Pycharm直接開啟vmaf/python專案,建立env虛擬環境。
在python虛擬環境下,執行:
又有報錯:
Traceback (most recent call last):
File "./vmaf/script/run_vmaf.py", line 13, in <module>
from vmaf.config import VmafConfig, DisplayConfig
ModuleNotFoundError: No module named 'vmaf'
這個還算好解決:
繼續執行:
python ./vmaf/script/run_vmaf.py yuv420p 576 324 test/resource/yuv/src01_hrc00_576x324.yuv test/resource/yuv/src01_hrc01_576x324.yuv --out-fmt json
ok,終於搞定了,MD。
- 其中VMAF_score得分是最終得分,其他是VMAF的基本指標得分。
- adm2, vif_scalex 得分範圍 0 (最差) to 1 (最好)
- motion2 得分範圍 0 (靜止的) to 20 (高速運動的)
相關文章
- redis 安裝及安裝遇到的問題解決Redis
- 安裝sql server遇到問題解決方法SQLServer
- elk(單機)安裝過程中遇到的問題及解決方法
- 原始碼安裝apache(附遇到的問題及解決)原始碼Apache
- VMware下安裝Ubuntu遇到的問題及解決方案Ubuntu
- windows安裝tomcat遇到問題及解決方案WindowsTomcat
- 安裝vCenter6.0遇到的問題以及解決方法
- 安裝DBD:MySql模組遇到的問題及解決辦法MySql
- 轉:Git伺服器安裝詳解及安裝遇到問題解決方案Git伺服器
- 使用kerl安裝erlang遇到的問題及解決辦法-bak
- 安裝PowerDesigner16.5所遇到的問題及解決
- Mysql安裝過程中遇到的問題及解決辦法MySql
- 裝SAP GUI時遇到的問題及解決GUI
- Lua安裝及遇到的問題
- oracle 10g R2 安裝過程遇到的問題及解決方法Oracle 10g
- 遇到問題的解決方法
- 記一次wordpress安裝過程中遇到的問題及解決辦法
- Chrome安裝sci-hub外掛遇到的問題解決方法Chrome
- 記錄VMware安裝VMware Tools過程及遇到的一些問題
- Mac下安裝PHP遇到的問題MacPHP
- 安裝mysql資料庫及問題解決方法MySql資料庫
- redis安裝及問題解決Redis
- jupyter安裝及遇到的問題。
- 解決macbook安裝burp suite遇到的問題MacUI
- Win10系統伺服器安裝MySQL8.0.13遇到的問題及解決方法Win10伺服器MySql
- IPython的安裝及問題解決Python
- UG程式設計常遇到的問題及解決方法程式設計
- Flutter-安裝步驟及安裝遇到的問題Flutter
- wsl 安裝mysql,設定初始密碼及遇到的問題記錄一下MySql密碼
- 啟動rocketmq-client-python測試遇到的問題解決方法記錄MQclientPython
- 今天遇到的問題與解決方法
- mac11.2安裝air遇到的問題MacAI
- 安裝SQLSERVER 2008遇到的問題(未解決)SQLServer
- django安裝xadmin及問題解決Django
- 安裝 laraBBS 原始碼包可能會碰到的問題及解決方法原始碼
- Oracle RAC之--安裝過程中碰到的問題及解決方法Oracle
- 更新macOS Monterey後遇到的各種Bug問題及解決方法Mac
- Rails 3 升級 Rails 4 中遇到的問題及解決方法AI