并行工作以简化VQ测量工作流程
每隔一段时间,你就会写一篇专栏文章,因为你知道一定比例的读者会认为你长时间使用某种工作流程是个傻瓜, 而另一部分人会暗自感谢你给他们展示了一个更好的方法. 这就是这样一列.
为了解释,大多数 视频质量测量 任务包含多个操作. 第一个, 对文件进行编码, 然后,如果它是一个新的格式(如AV1)或一个特定的工具(如vmafossexec, 用于计算视频多方法评估融合的开源Netflix工具, 或VMAF),只接受YUV文件, 转换成YUV. 然后运行客观质量度量工具并计算分数. 然后删除这些文件并开始处理下一批文件.
连续执行这些任务有几个积极的结果. 首先,批处理文件易于编写,从而将出错的风险降至最低. 第二个, 在进一步处理之前,通常需要对编码文件进行检查, 比如检查文件大小. 然而,也有几个关键的缺点. 首先,你必须在那里触发后续事件,所以如果编码在3a停止.m.,您可能要到第二天早上才开始测量质量,从而损失了宝贵的工作时间. 除了, 因为YUV文件非常大, 即使您有非常大的SSD磁盘,您通常也必须限制处理的文件数量,以避免耗尽磁盘空间, 失去更多的时间.
我从2014年开始使用这个串行工作流程,当时我开始使用视频质量指标. 在我的各种测试系统上,我有数千个批处理文件,有效地标记为encode _.Bat用于编码任务,scale_.bat用于缩放,MSU_.测量VMAF的蝙蝠, 结构相似度(SSIM), 或峰值信噪比(PSNR)与莫斯科国立大学视频质量测量工具(VQMT). 因为删除大文件很容易通过Windows百家乐软件管理器管理, 我只是手动删除, 避免第四类批处理文件.
就在最近, 在做咨询项目的时候, 一位同事把他的批处理文件发给我审阅和核实. 而不是连续工作, 他的工作相对平行, 首先对文件进行编码, 然后进行转换, 然后测量质量, 然后删除YUV文件. 当我看到他走近时,我没有拍着额头说“哦”!“但我觉得我应该这么做, 因为它解决了我的串行方法的几个关键问题,并且有几个关键的优点.
第一个, 因为他的一批人完成了所有四项任务, 我不需要在那里启动单独的批处理文件, 让这个过程日夜不停地进行. 其次,它消除了磁盘空间问题,因此我可以处理几乎无限数量的文件. 最后, when his process was done, it was done; all that was left was to record the data. 使用串行方法,我必须采取三个独立的步骤才能获得数据.
当然,凡事都有阴云,这种平行的方法也不例外. 第一个, 创建和调试并行批处理文件要困难得多, 增加了失败的风险,并且需要更长的时间来创建. 第二个, 您确实不能将文件检查构建到批处理文件中, 因此,如果文件的数据速率过低或过高,或者如果文件有其他缺陷, 无论如何你都会处理它, 浪费你的机器时间. 最后, 很多时候,您希望在VQMT之类的工具中可视化YUV或Y4M文件,而您可能已经删除了它们. 也就是说, 转换为YUV通常是一个快速的操作, 因此,您可以快速地重新创建它们以供查看. 如果你需要一些天平.bat文件,我有上千个可以发送.)
在很大程度上, 然而, 我已经看到了光明,我正在改变我的工作流程,从串行到(更接近)并行. 这无疑将简化未来的项目, 但它让我不安地想,有多少其他任务我做得同样低效,仅仅是因为没有人给我提供更好的方法.
[本文发表于2019年4月/ 5月号。 流媒体杂志 为“简化VQ测量工作流程”]
相关文章
泰克应用工程师Andrew Scott在流媒体西部2018年的演讲中讨论了图像质量测量的客观和主观方法和工具.
4月19日2019
视频质量测量比以往任何时候都更加重要. 在这份买家指南中, 我们将确定最常用的度量标准,并讨论部署它们的工具.
2019年3月29日
这个视频分析工具(videoquest for short)提供了更深入的指标,并且比市场上的其他工具更具可配置性, 特别是在探索两个编码文件之间的差异时.
2018年12月20日