作者:Zhi Li、Anne Aaron、Ioannis Katsavounidis、Anush Moorthy 和 Megha Manohara
术语缩写
DLM – Detail Loss Metric 细节损失指标
DMOS – Differential Mean Opinion Score 差分均匀意见分数
DSIS – Double Stimulus Impairment Scale 双刺激伤害量表
SVM – Support Vector Machine 反对向量机
VIF – Visual Information Fidelity 视觉信息保真度
VMAF – Video Multimethod Assessment Fusion 视频多办法评估交融
缘起
在 Netflix,咱们关怀视频品质,咱们关怀大规模精确测量视频品质。咱们的办法:视频多办法评估交融 (VMAF)指数,旨在反映观众对咱们的流媒体品质的认识。咱们正在开源这个工具,并邀请钻研界与咱们单干实现这个重要的我的项目。
咱们对高质量视频的谋求
咱们致力为咱们的会员提供杰出的观看体验:晦涩的视频播放,无宜人的画面伪影。思考到网络带宽和观看设施的限度,这项工作的一个重要局部是提供具备最佳感知品质的视频流。咱们通过多种致力一直朝着这个指标致力。
首先,咱们在视频编码畛域进行了翻新。流式视频须要应用 H.264/AVC、HEVC 和 VP9 等规范进行压缩,以便以正当的比特率进行流式传输。当视频压缩过多或不正确时,这些技术会引入品质侵害,称为压缩伪影。专家将它们称为“块效应”、“振铃效应”或“蚊子乐音”,但对于一般观众来说,视频看起来并不正确。为此,咱们定期比拟编解码器供应商的压缩效率、稳定性和性能,并整合市场上最好的解决方案。咱们评估不同的视频编码标准,以确保咱们始终处于压缩技术的前沿。例如,咱们在 H.264/AVC、HEVC 和 VP9 之间进行比拟,凋谢媒体联盟(AOM) 和联结视频摸索团队(JVET)。即便在既定规范内,咱们也会持续试验配方决策(参见 Per-Title 编码优化我的项目)和速率调配算法,以充分利用现有工具集。
咱们在基于云的分布式媒体管道中对 Netflix 视频流进行编码,这使咱们可能扩大以满足业务需要。为了最大限度地缩小不良源交付、软件谬误和云实例的不可预测性(瞬态谬误)的影响,咱们在管道中的各个点主动进行品质监控。通过这种监控,咱们试图在采集和管道中的每个转换点检测视频品质问题。
最初,当咱们在 Netflix 生态系统的各个领域(例如自适应流媒体或内容交付网络算法)进行迭代并运行 A/B 测试时,咱们致力确保通过零碎改良来维持或进步视频品质。例如,旨在缩小播放开始提早或从新缓冲的自适应流算法的改良不应升高流会话中的整体视频品质。
上述所有具备挑战性的工作都取决于一个基本前提:咱们能够精确无效地测量大规模视频流的感知品质。传统上,在视频编解码器的开发和钻研中,有两种办法被宽泛用于评估视频品质:1) 视觉主观测试和 2) 简略指标的计算,例如 PSNR,或者最近的 SSIM [1]。
毫无疑问,对于咱们生产、A/B 测试监控和编码钻研试验的吞吐量而言,人工目视查看在操作上和经济上都是不可行的。测量图像品质是一个老问题,曾经提出了许多简略实用的解决方案。均方误差 (MSE)、峰值信噪比(PSNR) 和构造相似性指数 (SSIM) 是最后为图像设计并起初扩大到视频的指标示例。这些指标通常在编解码器(“循环内”)中用于优化编码决策和报告编码视频的最终品质。只管该畛域的钻研人员和工程师都分明 PSNR 并不能始终反映人类的感知,但它依然是编解码器比拟和编解码器标准化工作的事实标准。
构建与 Netflix 相干的数据集
为了评估视频品质评估算法,咱们采纳数据驱动的办法。第一步是收集与咱们的用例相干的数据集。只管有用于设计和测试视频质量指标的公开数据库,但它们不足与 Netflix 等理论流媒体服务相干的内容多样性。其中许多在源和编码品质方面不再是最先进的;例如,它们蕴含规范清晰度 (SD) 内容并且仅涵盖较旧的压缩规范。此外,因为评估视频品质的问题远比测量压缩伪影更为广泛,因而现有数据库试图捕获更宽泛的伤害,不仅由压缩引起,而且由传输损耗、随机噪声和几何变换引起。
Netflix 的流媒体服务为设计精确反映流媒体视频品质的感知指标带来了一系列独特的挑战和时机。例如:
视频源个性。Netflix 领有海量的电影和电视节目,它们在类型上体现出多样性,例如儿童内容、动画、疾速动作电影、带有原始镜头的纪录片等。此外,它们还体现出多样化的低级源特色,例如胶片颗粒、传感器噪声、计算机生成的纹理、始终如一的光明场景或十分亮堂的色调。过来开发的许多质量指标都没有通过调整以适应源内容的这种巨大变化。例如,许多现有的数据库不足动画内容,并且大多数没有思考电影颗粒,这是业余娱乐内容中十分广泛的信号特色。
文物的起源。因为 Netflix 视频流是应用弱小的传输控制协议 (TCP) 传输的,因而丢包和误码绝不是视觉阻碍的起源。这会在编码过程中留下两种类型的伪影,最终影响观看者的体验品质 (QoE):压缩伪影(因为有损压缩)和缩放伪影(对于较低比特率,视频在压缩前被下采样,而后在观众的设施)。通过定制质量指标以仅涵盖压缩和缩放工件,以通用性换取精度,其准确性无望优于通用指标。
为了构建更适宜 Netflix 用例的数据集,咱们从 Netflix 目录中的热门电视节目和电影中抉择了 34 个源剪辑(也称为参考视频)的样本,每 6 秒长,并将它们与公开的可用的剪辑。源剪辑涵盖了宽泛的高级特色(动画、室内/室外、摄像机静止、面部特写、人物、水、显著的显着性、物体数量)和低级特色(胶片颗粒噪声、亮度、对比度、纹理、静止、色调变动、色调丰盛度、锐度)。应用源剪辑,咱们以 384×288 到 1920×1080 的分辨率和 375 kbps 到 20,000 kbps 的比特率对 H.264/AVC 视频流进行编码,产生大概 300 个失真视频. 这涵盖了宽泛的视频比特率和分辨率,以反映 Netflix 成员宽泛变动的网络情况。
而后,咱们进行了主观测试,以确定非专家观察者如何对编码视频绝对于源剪辑的伤害进行评分。在标准化主观测试中,咱们应用的办法称为双刺激伤害量表 (DSIS)办法。参考视频和失真视频在生产级电视上按程序显示,环境照明受控(如 ITU-R BT.500–13 [2] 建议书所述)。如果失真视频以小于参考的分辨率进行编码,则在电视上显示之前将其放大到源分辨率。观察者坐在相似客厅的环境中的沙发上,并被要求以 1(十分烦人)到 5(不显著)的等级对伤害进行评分。将所有观察者的分数联合起来生成差分均匀意见分数或 DMOS 对于每个失真视频并在 0 到 100 范畴内归一化,参考视频的得分为 100。来自观察者的参考视频、失真视频和 DMOS 分数的汇合在本文中将被称为NFLX 视频数据集。
传统视频质量指标
传统的、宽泛应用的视频质量指标与 NFLX 视频数据集的“实在” DMOS 分数有何关联?
视觉示例
下面,咱们看到了从 4 个不同的失真视频中捕捉的局部静止帧;顶部的两个视频报告的 PSNR 值约为 31 dB,而底部的两个视频报告的 PSNR 值约为 34 dB。然而,人们简直没有留神到“人群”视频的差别,而两个“狐狸”视频的差别则更加显著。人类观察者通过将这两个“人群”视频的 DMOS 评分为 82(顶部)和 96(底部)来确认这一点,而对两个“狐狸”视频的 DMOS 评分别离为 27 和 58 分来确认这一点。
具体后果
下图是散点图,在 x 轴上显示观察者的 DMOS,在 y 轴上显示来自不同质量指标的预测分数。这些图是从 NFLX 视频数据集的选定子集中取得的,咱们将其标记为 NFLX-TEST(详见下一节)。每个点代表一个失真视频。咱们绘制了四个质量指标的后果:
- 亮度重量的PSNR
- SSIM [1]
- 多尺度 FastSSIM [3]
- PSNR-HVS [4]
无关 SSIM、Multiscale FastSSIM 和 PSNR-HVS 的更多详细信息,请参阅参考局部列出的出版物。对于这三个指标,咱们应用了Daala代码库 [5] 中的实现,因而后续图中的题目以“Daala”为前缀。
留神:具备雷同色彩的点对应于源自雷同参考视频的失真视频。因为主题可变性和参考视频归一化到 100,一些 DMOS 分数可能超过 100。
从图中能够看出,这些指标未能提供统一地预测观察者 DMOS 评级的分数。例如,关注左上角的 PSNR 图,对于 35 dB 左右的 PSNR 值,“实在”DMOS 值的范畴从 10(伤害很烦人)到 100(伤害难以觉察)。对于 SSIM 和多尺度 FastSSIM 指标能够得出相似的论断,其中靠近 0.90 的分数能够对应于 10 到 100 的 DMOS 值。在每个图上方,咱们报告了 Spearman 等级相关系数(SRCC),即Pearson 积矩相关性系数(PCC) 和每个指标的均方根误差 (RMSE) 数字,在非线性逻辑拟合后计算,如 ITU-R BT.500-13 [2] 的附件 3.1 中所述。SRCC 和 PCC 值靠近 1.0 和 RMSE 值靠近于 0 是可取的。在四个指标中,PSNR-HVS 展现了最好的 SRCC、PCC 和 RMSE 值,但依然不足预测准确性。
为了在各种内容上实现有意义的性能,度量应该体现出良好的绝对品质分数,即度量中的增量应该提供对于感知品质增量的信息。在下图中,咱们抉择了三个典型的参考视频,一个高噪视频(蓝色)、一个 CG 动画(绿色)和一个电视剧(生锈),并绘制了不同失真视频的预测分数与 DMOS 的关系。每个。为了无效地作为绝对品质得分,在品质曲线的雷同范畴内的不同剪辑之间的恒定斜率是可取的。例如,参考上面的 PSNR 图,在 34 dB 到 36 dB 的范畴内,电视剧的 PSNR 变动约 2 dB 对应于 DMOS 变动约 50(50 到 100),但 CG 动画在雷同范畴内相似的 2 dB 变动对应于小于 20(40 到 60)的变动DMOS。尽管 SSIM 和 FastSSIM 对于 CG 动画和电视剧片段体现出更统一的斜率,但它们的性能依然有余。
总之,咱们看到传统指标不适用于咱们的内容。为了解决这个问题,咱们采纳了基于机器学习的模型来设计一个旨在反映人类对视频品质感知的指标。该指标将在下一节中探讨。
咱们的办法:视频多办法评估交融 (VMAF)
基于咱们与南加州大学 C.-CJ Kuo 传授及其团队的钻研单干 6,咱们开发了Video Multimethod Assessment Fusion 或 VMAF,通过组合多个根本质量指标来预测主观品质。基本原理是,每个根本度量在源内容特色、伪像类型和失真水平方面都可能有本人的劣势和劣势。通过应用机器学习算法(在咱们的例子中是反对向量机 (SVM) 回归器)将根本指标“交融”到最终指标中,该算法为每个根本指标调配权重,最终指标能够保留各个指标的所有劣势,并提供更精确的最终分数。机器学习模型应用通过主观试验(在咱们的例子中为 NFLX 视频数据集)取得的意见分数进行训练和测试。
作为 VMAF 开发工具包开源软件的一部分公布的 VMAF 算法和模型的以后版本(示意为 VMAF 0.3.1)应用以下由反对向量机 (SVM) 回归 [8] 交融的根本指标:
视觉信息保真度 (VIF) [9]。VIF 是一种被宽泛采纳的图像品质度量,其前提是品质与信息保真度损失的度量相辅相成。在其原始模式中,VIF 分数被测量为联合四个量表的保真度损失。在 VMAF 中,咱们采纳了 VIF 的批改版本,其中每个尺度中的保真度损失作为根本指标包含在内。
细节损失指标(DLM) [10]。DLM 是一种图像品质度量,其基本原理是别离测量影响内容可见性的细节损失和扩散观众注意力的冗余伤害。原始指标联合了 DLM 和附加伤害测量 (AIM) 以产生最终分数。在 VMAF 中,咱们只采纳 DLM 作为根本指标。特地留神非凡状况,例如黑框,其中原始公式的数值计算失败。
VIF 和 DLM 都是图像质量指标。咱们进一步引入以下简略特色来解释视频的工夫特色:
静止。这是对相邻帧之间工夫差别的简略测量。这是通过计算亮度重量的均匀相对像素差来实现的。
这些根本指标和特色是通过测试和验证的迭代从其余候选者中抉择进去的。
咱们将 VMAF 的准确性与上述其余质量指标进行比拟。为了防止不公平地将 VMAF 适度拟合到数据集,咱们首先将 NFLX 数据集分为两个子集,称为 NFLX-TRAIN 和 NFLX-TEST。这两组具备不重叠的参考剪辑。而后应用 NFLX-TRAIN 数据集训练 SVM 回归器,并在 NFLX-TEST 上进行测试。
下图显示了 VMAF 指标在 NFLX-TEST 数据集和选定参考剪辑上的性能——高噪声视频(蓝色)、CG 动画(绿色)和电视剧(生锈)。为了便于比拟,咱们反复了 PSNR-HVS 的图,这是后面局部中体现最好的指标。很显著,VMAF 的性能要好得多。
咱们还将 VMAF与具备可变帧提早(VQM-VFD) [11] 的视频品质模型进行了比拟,该模型被许多人认为是该畛域的最新技术。VQM-VFD 是一种应用神经网络模型将低级特色交融成最终度量的算法。它在精神上相似于 VMAF,只是它在较低级别提取特色,例如空间和工夫梯度。
很显著,VQM-VFD 在 NFLX-TEST 数据集上的性能靠近 VMAF。因为 VMAF 办法容许将新的根本指标纳入其框架,VQM-VFD 也能够作为 VMAF 的根本指标。
下表列出了交融 NFLX-TEST 数据集上各个根本指标的不同组合后,VMAF 模型的 SRCC、PCC 和 RMSE 数据测量的性能,以及 VMAF 0.3.1 的最终性能。咱们还列出了应用 VQM-VFD 加强的 VMAF 的性能。后果证实了咱们的假如,即高性能质量指标的智能交融会导致与人类感知的相关性减少。
NFLX-TEST 数据集
后果总结
在下表中,咱们总结了后面探讨过的不同指标的 SRCC、PCC 和 RMSE,在 NLFX-TEST 数据集和三个风行的公共数据集上:VQEG HD(仅限 vqeghd3 汇合)[12]、实时视频数据库 [13]和实时挪动视频数据库 [14]。结果表明,VMAF 0.3.1 在除 LIVE 数据集之外的所有指标中都优于其余指标,与性能最佳的 VQM-VFD 相比,它依然提供具备竞争力的性能。因为 VQM-VFD 在四个数据集之间体现出良好的相关性,因而咱们正在尝试将 VQM-VFD 作为 VMAF 的根本指标;尽管它不是开源版本 VMAF 0.3.1 的一部分,但它可能会集成到后续版本中。
NFLX-TEST 数据集
实时数据集*
*仅用于压缩伤害(H.264/AVC 和 MPEG-2 视频)
VQEGHD3 数据集*
*对于源内容 SRC01 至 SRC09 和流相干伤害 HRC04、HRC07 和 HRC16 至 HRC21
实时挪动数据集
VMAF 开发套件 (VDK) 开源包
为了通过 Internet 提供高质量的视频,咱们认为该行业须要良好的感知视频质量指标,这些指标既实用又易于大规模部署。咱们开发了 VMAF 来帮忙咱们满足这一需要。明天,咱们在 Apache 许可证版本 2.0 下在 Github 上开源 VMAF 开发工具包(VDK 1.0.0)包。通过开源 VDK,咱们心愿它能够随着工夫的推移而倒退,从而进步性能。
VDK 外围中的特征提取(包含根本度量计算)局部是计算密集型的,因而为了提高效率,它是用 C 编写的。控制代码是用 Python 编写的,用于疾速原型设计。
该软件包带有一个简略的命令行界面,容许用户以繁多模式(run_vmaf 命令)或批处理模式(run_vmaf_in_batch 命令,可抉择启用并行执行)运行 VMAF。此外,因为特征提取是最低廉的操作,用户还能够将特征提取后果存储在数据存储中以供当前重复使用。
该软件包还提供了一个框架,用于进一步定制基于以下内容的 VMAF 模型:
- 训练它的视频数据集
- 要应用的根本指标和其余性能
- 回归器及其超参数
该命令run_training承受三个配置文件:一个数据集文件,其中蕴含无关训练数据集的信息、一个特征参数文件和一个回归器模型参数文件(蕴含回归器超参数)。上面是定义数据集、一组选定特色、回归量及其超参数的示例代码。
##### 定义数据集#####
dataset_name = 'example'
yuv_fmt = 'yuv420p'
width = 1920
height = 1080
ref_videos = [
{'content_id':0, 'path':'checkerboard.yuv'},
{'content_id':1, 'path':'flat.yuv'},
]
dis_videos = [
{'content_id':0, 'asset_id': 0, 'dmos':100, 'path':'checkerboard.yuv' }, # ref
{'content_id':0, 'asset_id': 1, 'dmos':50, 'path':'checkerboard_dis.yuv'},
{'content_id':1, 'asset_id': 2, 'dmos' :100, 'path':'flat.yuv'}, # ref
{'content_id':1, 'asset_id': 3, 'dmos':80, 'path':'flat_dis.yuv'},
]
##### 定义特色 #####
feature_dict = {
# VMAF_feature/Moment_feature 是聚合特色
#motion, adm2, dis1st 是原子特色
'VMAF_feature':['motion', 'adm2'],
'Moment_feature' :['dis1st'], # dis video 的第一时刻
}
##### 定义回归器和超参数 #####
model_type = “LIBSVMNUSVR” # libsvm NuSVR 回归器
model_param_dict = {
# ==== 预处理:标准化每个特色 ==== #
'norm_type':'clip_0to1' , # rescale to within [0, 1]
# ==== postprocess: clip final quality score ==== #
'score_clip':[0.0, 100.0], # clip to within [0, 100]
# ==== libsvmnusvr 参数 ==== #
'gamma':0.85, # selected
'C':1.0, # default
'nu':0.5, # default
'cache_size':200 # default
}
最初,FeatureExtractor能够扩大基类以开发定制的 VMAF 算法。这能够通过尝试其余可用的根本指标和性能或创造新的来实现。同样,TrainTestModel能够扩大基类以测试其余回归模型。详情请参阅 CONTRIBUTING.md。用户还能够应用现有的开源 Python 库(例如 scikit-learn [15]、cvxopt [16] 或 tensorflow [17])尝试代替机器学习算法。scikit-learn 的随机森林回归器的示例集成蕴含在包中。
VDK 包包含 VMAF 0.3.1 算法,具备选定的特色和基于 NFLX 视频数据集上收集的主观分数的训练有素的 SVM 模型。咱们还邀请社区应用该软件包来开发改良的性能和回归器,以用于感知视频品质评估。咱们激励用户在其余数据集上测试 VMAF 0.3.1,并为咱们的用例帮忙改良它,并可能将其扩大到其余用例。
咱们对于品质评估的开放式问题
查看条件。Netflix 反对数以千计的有源设施,包含智能电视、游戏机、机顶盒、计算机、平板电脑和智能手机,从而为咱们的会员带来了宽泛不同的观看条件。观看设置和显示会显着影响品质感知。例如,如果 Netflix 会员在 4K 60 英寸电视上观看以 1 Mbps 编码的 720p 电影,则如果在 5 英寸智能手机上观看同一流的品质,可能会有十分不同的认识。以后的 NFLX 视频数据集涵盖了繁多的观看条件——在规范间隔观看电视。为了加强 VMAF,咱们正在其余观看条件下进行主观测试。有了更多的数据,咱们能够推广算法,以便能够将查看条件(显示尺寸、与屏幕的间隔等)输出到回归器中。
工夫池。咱们以后的 VMAF 实现基于每帧计算品质分数。在许多用例中,须要长期池化这些分数在较长时间内返回单个值作为摘要。例如,一个场景的得分、惯例时间段的得分或整部电影的得分是合乎须要的。咱们目前的办法是一个简略的工夫池化,它采纳每帧值的算术平均值。然而,这种办法存在“暗藏”品质差的帧的危险。对较低分数给予更多权重的池化算法可能对人类感知更精确。当应用汇总分数来比拟帧之间不同品质稳定的编码时,或者在优化编码或流会话时作为指标指标时,良好的池化机制尤其重要。VMAF 和其余质量指标的感知精确工夫池机制依然是一个凋谢且具备挑战性的问题。
统一的指标。因为 VMAF 蕴含残缺的参考根本指标,因而 VMAF 高度依赖于参考的品质。遗憾的是,Netflix 目录中所有影片的视频源品质可能不统一。源以从 SD 到 4K 的分辨率进入咱们的零碎。即便在雷同的分辨率下,可用的最佳源也可能会受到某些视频品质的影响。因而,比拟(或总结)不同题目的 VMAF 分数可能不精确。例如,当从 SD 源生成的视频流的 VMAF 得分达到 99(满分 100)时,它绝不具备与从 HD 源编码的具备雷同得分 99 的视频雷同的感知品质。对于品质监测,咱们十分心愿咱们能够计算出跨起源统一的相对品质分数。毕竟,当观众观看 Netflix 节目时,除了传送到他们屏幕上的图片之外,他们没有任何参考。咱们心愿有一种自动化的形式来预测他们对交付给他们的视频品质的认识,同时思考到促成该屏幕上最终出现的视频的所有因素。
概括
咱们开发了 VMAF 0.3.1 和 VDK 1.0.0 软件包,以帮忙咱们向会员提供最优质的视频流。作为咱们继续谋求品质的一部分,咱们的团队每天都应用它来评估视频编解码器和编码参数和策略。VMAF 与其余指标已集成到咱们的编码管道中,以改良咱们的自动化 QC。咱们处于应用 VMAF 作为客户端指标之一来监控零碎范畴的 A/B 测试的晚期阶段。
在当今的互联网环境中,进步视频压缩规范并在理论编码零碎中做出理智的决策十分重要。咱们认为,应用并不总是与人类感知相干的传统指标会妨碍视频编码技术的真正提高。然而,总是依赖手动视觉测试是不可行的。VMAF 是咱们解决这个问题的尝试,应用咱们内容中的样本来帮忙设计和验证算法。与业界单干开发新视频规范的形式相似,咱们邀请社区公开单干改良视频品质措施,最终目标是更无效地应用带宽并为所有人提供视觉上令人愉悦的视频。
致谢
咱们要感激以下集体对 VMAF 我的项目的帮忙:Joe Yuchieh Lin、Eddy Chi-Hao Wu、C.-C Jay Kuo 传授(南加州大学)、Patrick Le Callet 传授(南特大学)和托德·古道尔。
参考
- Z. Wang, A. C. Bovik, H. R. Sheikh, and E. P. Simoncelli, “Image Quality Assessment: From Error Visibility to Structural Similarity,” IEEE Transactions on Image Processing, vol. 13, no. 4, pp. 600–612, Apr. 2004.
- BT.500 : Methodology for the Subjective Assessment of the Quality of Television Pictures, https://www.itu.int/rec/R-REC…
- M.-J. Chen and A. C. Bovik, “Fast Structural Similarity Index Algorithm,” Journal of Real-Time Image Processing, vol. 6, no. 4, pp. 281–287, Dec. 2011.
- N. Ponomarenko, F. Silvestri, K. Egiazarian, M. Carli, J. Astola, and V. Lukin, “On Between-coefficient Contrast Masking of DCT Basis Functions,” in Proceedings of the 3 rd International Workshop on Video Processing and Quality Metrics for Consumer Electronics (VPQM ’07), Scottsdale, Arizona, Jan. 2007.
- Daala codec. https://git.xiph.org/daala.git/
- T.-J. Liu, J. Y. Lin, W. Lin, and C.-C. J. Kuo, “Visual Quality Assessment: Recent Developments, Coding Applications and Future Trends,” APSIPA Transactions on Signal and Information Processing, 2013.
- J. Y. Lin, T.-J. Liu, E. C.-H. Wu, and C.-C. J. Kuo, “A Fusion-based Video Quality Assessment (FVQA) Index,” APSIPA Transactions on Signal and Information Processing, 2014.
- C.Cortes and V.Vapnik, “Support-Vector Networks,” Machine Learning, vol. 20, no. 3, pp. 273–297, 1995.
- H. Sheikh and A. Bovik, “Image Information and Visual Quality,” IEEE Transactions on Image Processing, vol. 15, no. 2, pp. 430–444, Feb. 2006.
- S. Li, F. Zhang, L. Ma, and K. Ngan, “Image Quality Assessment by Separately Evaluating Detail Losses and Additive Impairments,” IEEE Transactions on Multimedia, vol. 13, no. 5, pp. 935–949, Oct. 2011.
- S. Wolf and M. H. Pinson, “Video Quality Model for Variable Frame Delay (VQM_VFD),” U.S. Dept. Commer., Nat. Telecommun. Inf. Admin., Boulder, CO, USA, Tech. Memo TM-11–482, Sep. 2011.
- Video Quality Experts Group (VQEG), “Report on the Validation of Video Quality Models for High Definition Video Content,” June 2010, http://www.vqeg.org/
- K. Seshadrinathan, R. Soundararajan, A. C. Bovik and L. K. Cormack, “Study of Subjective and Objective Quality Assessment of Video”, IEEE Transactions on Image Processing, vol.19, no.6, pp.1427–1441, June 2010.
- A. K. Moorthy, L. K. Choi, A. C. Bovik and G. de Veciana, “Video Quality Assessment on Mobile Devices: Subjective, Behavioral, and Objective Studies,” IEEE Journal of Selected Topics in Signal Processing, vol. 6, no. 6, pp. 652–671, Oct. 2012.
- scikit-learn: Machine Learning in Python. http://scikit-learn.org/stable/
- CVXOPT: Python Software for Convex Optimization. http://cvxopt.org/
- TensorFlow. https://www.tensorflow.org/