本文来自ICASSP2021论文《SALIENCY-DRIVEN VERSATILE VIDEO CODING FOR NEURAL OBJECT DETECTION 》
论文基于VVC提出了面向显著性的编码框架用于处理机器任务。为了在编码前获取显著性区域,论文使用YOLO进行目标检测。为了验证编码对于机器处理的效果,论文对解码图像使用Mask R-CNN进行目标分割。实验显示,使用本文算法在同样检测准确率下可以节省29%的码率。
越来越多的视频不是面向人眼观看而是面向机器处理任务,通过计算机视觉方法来分析视频。MPEG特别成立了VCM(Video Coding for Machines)来进行面向机器的编码。如Fig.1所示,使用自适应量化QPA对包含目标的区域采用较小的QP,不包含目标的区域采用较大的QP。
显著性检测
在本文的VCM框架中可以使用任何显著性检测算法来检测显著性区域,本文最终选择了YOLO。YOLO会返回每帧图像的各个物体类别及bounding box。通过非极大抑制NMS对bounding box进行调整,NMS阈值取0.1。且IOU阈值取0.5,使得相互重叠的bounding box只有置信度最高的保留。最终保留的bounding box组成了显著性区域S。
由于VVC是以CTU为单位进行编码,所以要通过显著性区域S确定每个CTU的显著性。当前CTU和一个bounding box的相交区域计算如下:
其中,A_kctu是第k个CTU,A_idet是第i个bounding box。
为了确定一个CTU是否是显著的需要找一个合适的阈值,其中要考虑两种情况。第一种情况是,单个bounding box尺寸小于CTU的尺寸。在这种情况下A_ikoverlap不大于A_idet。第二种情况是,单个bounding box尺寸大于CTU的尺寸。在这种情况下A_ikoverlap不大于A_kctu。可以通过下面的方式计算相对相交度d,
d最大取1,当bounding box和CTU不相交时d=0。
当CTU至少和一个bounding box的相交度大于阈值θ ?时该CTU才会被判定为显著。
H保存了每个CTU的显著性信息。最终根据H确定每个CTU的QP,对于非显著CTU即H=0采用较大的QP,
实验结果
为了验证本文VCM框架的有效性,采用500幅未压缩的Cityscapes图像作为测试图像。首先使用YOLO对图像进行目标检测,根据检测结果确定每个CTU的显著性。使用All Intra配置,QP_base取12,17,22,27使用VTM6.2编码。然后对解码图像使用Mask R-CNN进行目标分割并计算加权mAP。阈值θ取值{0.0,0.025,0.05,0.1},QP_delta取5,20。不开启QPA的VTM6.2作为anchor。最终计算BD-rate,其中失真不使用PSNR而是加权mAP,结果如表1所示。
感兴趣的请关注微信公众号Video Coding
?
|