孙耀,陈纯毅,胡小娟,李凌,邢琦玮
长春理工大学计算机科学技术学院,长春 130022
人类视觉系统(human vision system,HVS)的注意机制具有选择性,即面对一个场景时,HVS会自动选择在视觉上显著的区域,而忽略不显著的区域。在进行图像压缩时,对显著性不高的图像区域使用更高压缩比不会对HVS感知到的图像质量造成明显影响。全景图像能提供“水平360°+竖直180°”视场范围内的视觉画面,在沉浸感虚拟现实(virtual reality,VR)领域得到大量应用。与传统的图像相比,全景图像具有一些独特的特征,例如极高的分辨率,某些全景图像的分辨率高达18 000×9 000像素,这使得全景VR画面内容的存储和传输成为一个难题(Zhu等,2018)。通过对全景图像进行显著性检测,确定不同图像区域被HVS关注到的可能性大小,并据此在确保全景画面视觉感知质量的基础上进一步提高压缩效果成为当前的一个研究热点。
针对全景图像的显著性检测,现有研究主要分为以下两个方向:1)针对全景图改进的传统显著性检测算法,主要方法为先改变投影方式,再进行显著性检测;2)针对深度学习的全景图显著性检测算法,使用神经网络提取图像特征,进行显著性检测。
目前针对全景图显著性检测的研究已经取得了一定成果(Carrasco,2011)。在改进的传统算法中,Lebreton和Raake(2018)首先提取图像中的相关特征,再进行激活,处理特征中的新颖性,然后进行标准化,加入赤道先验,最后聚合所有归一化的激活特征汇总在一起,获得最终显著性图。Ding等人(2018)通过提取视口域中的空间频率信息并计算整个全景图像的空间中心信息,获得显著性检测的视觉频率特征,再将用户观看行为的上下文与视觉频率功能集成在一起,最后融合用户观看模式来预测最终的显著性图。Ling等人(2018)提出一种基于稀疏表示和人类敏感度加权的中央周边差的显著性预测模型,首先使用自然彩色图像训练出颜色字典,然后将图像分块,计算图像块之间的颜色差异并用人类视觉敏感度加权,再加入赤道偏倚,计算得到显著性。赤道偏倚如图1所示。Battisti等人(2018)从全景图像中抽取视口,然后通过分析视口中的低级语义特征估计视觉注意力,再使用加权窗口模拟观看行为,权重在赤道部分设为1,靠近两极时逐渐减小,最终变为0.25,最后使用低通滤波并归一化。De等人(2017)通过使用眼动仪收集视口中心轨迹,将收集的数据转换为显著性图,再加入赤道偏置,采用融合显著性图(fused saliency maps,FSM)后处理方法,得到显著性图像。在深度学习算法中,Chao等人(2018)提出基于SalGAN(saliency generative adversarial networks)的SalGAN360网络,估计并融合全景图像的局部和全局显著性分布,引入考虑更多评估指标的新损失函数,以微调网络中的图层,优化其在全景图像中的性能。Martin等人(2020)提出一种类似生物医学图像分割的卷积神经网络(convolutional neural networks,CNN)体系结构U-Net,该网络包括编码器和解码器。编码器层由两个卷积块组成,解码器层由3个卷积块组成。每个卷积块均由卷积层、批处理归一化层和ReLU激活函数组成。每个编码器和解码器相似层都包括跳过连接,以加速显著性预测过程。
图1 赤道偏倚分布Fig.1 Equator bias distribution
在各种算法中,对于全景图像的位置特性问题,都只研究了纬度对全景图显著性检测的影响,例如加入赤道偏倚。然而,当人观看全景图像时,视场角有限,只能看到位于当前视口内的画面,使得不同经度位置的显著性有很大差异,这一重要特性并没有得到重点关注,导致预测出的显著区域往往不够准确。为解决上述问题,本文以全景图的经度位置特性为出发点,提出观看经度联合加权全景图显著性检测方法。首先,使用空间显著性预测网络(Zhang和Chen,2019)与赤道偏倚得到初步预测的显著性图像。然后,利用数据集(Gutiérrez等,2018;Rai等,2017)中的显著性参考图像(主观试验测得)计算注视点经度权重,用于模拟人观察全景图时的行为习惯。最后,通过提取全景图的亮度与深度特征,计算不同视口观看概率与每个经度的注视权重,得到不同视口经度权重,将其应用于显著性图像预测,得到最终的显著性检测结果。
使用空间显著性预测网络和赤道偏倚得到初步的显著性图像,然后使用观看经度联合加权算法改善经度上的权重。观看经度联合加权算法的核心包括注视点经度加权和不同视口经度加权两部分。注视点经度加权首先使用数据集中的显著性参考图像得到注视点经度权重,然后用该权重通过初始注视点经度加权和注视转移经度加权,将观察者观看全景图的行为习惯与全景图显著性图像结合。不同视口经度加权首先将全景图重新投影,按经度划分为4个视口,再以深度和亮度为特征计算不同视口的观看概率与每个经度的观看概率,并将二者结合得到不同视口经度权重。最后通过两次加权得到最终预测的显著性图像。本文算法流程如图2所示。
图2 算法流程示意图Fig.2 Flowchart of our algorithm
与赤道偏倚相似,由于人类的观察习惯并非全景图图像本身,因此全景图的显著性在经度上也存在位置特征引起的显著性差异,本文将其称为注视点经度加权。
1.1.1 注视点经度加权
查看数据集可以发现,绝大多数图像中不同经度位置的显著性都大不相同。受此启发,本文分析了全景图像中人眼注视的权重。使用法国南特大学提供的Salient360!数据集的训练图像,首先将原始全景图像与显著性参考图像对比,发现人眼注视分布在不同经度上存在很大差异。然后让观察者在佩戴头戴式头盔观看数据集中的全景图,发现观察者倾向于先观察眼前的图像一段时间,然后再观看其他部分。如果眼前的图像中有显著区域,观看时间则容易变得非常长。图3展示了数据集中的两个样本,为使效果清晰,将初始观看区域的中心平移到了图像的中间位置,同时给出了这些全景图经度上的人眼注视权重曲线。可以发现,显著性在经度上存在类似高斯分布的分布现象。
图3 全景图及对应的显著性参考图像与注视经度权重曲线Fig.3 Panoramic images and reference saliency maps and fixation weight graphs((a)panoramic images;(b)reference saliency images;(c)fixation weight graphs)
因此,可以得出以下结论:注视点经度加权产生的原因是观看一幅全景图时,最先看到的位置最容易受到更多的注视。这一位置是全景图像的制作者确定的,本文称为初始观察区域。在初始观察区域附近的经度范围受到注视的倾向比较大,越远离初始观察区域,受到的注视越少。
1.1.2 初始注视点经度加权
为了得到注视点经度权重分布,对数据集中的显著性参考图像的每个经度的显著性值相加,再求平均值并规范化到[0,1]范围。初始注视点经度权重分布如图4所示。
图4 初始注视点经度权重分布Fig.4 Prime attention longitude weight map
图5 经度差示意图Fig.5 Image of longitude deviation
为了将注视点经度权重与显著性图像相结合,首先平移注视点经度权重,将注视点经度权重中经度的中心与全景图的初始观看区域的中心对齐,如图6所示。然后对显著性图像进行初始注视点经度加权,即初始注视点经度权重与显著性图像的显著性值相乘,即
图6 初始注视点经度加权Fig.6 Prime attention longitude weighting
s1=s0×Wl
(1)
式中,s1为加权后所得显著性,s0为神经网络算法结合赤道偏倚得到的初始显著性,Wl为对应像素点的初始注视点经度权重。最后通过实验,将Wl的范围设置为不同值并预测显著性,统计得到最佳范围。
1.1.3 注视转移经度加权
在制作初始注视点经度加权中的权重分布图时,使用了数据集中全部显著性参考图像的平均值,这可以更好地拟合数据集。而第2次加权时,本文更改了策略,使之更加接近人的观看行为。为此,删除了数据集中不符合人类观看习惯的图像,重新统计出注视转移经度权重分布,如图7所示。
图7 注视转移经度权重分布Fig.7 Converted attention longitude weight distribution
图7中,Δθ′表示像素点所处的经度lp与转移后观看中心所处经度lc′的经度差。
将转移后的观察中心与注视转移经度权重分布图对齐后,对显著图像进行注视转移经度加权。计算时锁定原观看区域附近的显著性,因为这一部分主要由初次加权决定,几乎不受二次加权的影响。操作流程如图8所示。
图8 注视转移经度加权Fig.8 Converted attention longitude weighting
具体操作如下:1)找出图像初始观看视口外的显著性最大值。2)如果这个最大值大于阈值λ,则该位置成为新的观看中心。3)锁定原观看区域处的显著性。其他部分重新归一化,进行注视转移经度加权,即
s2=s1×Wl′
(2)
式中,s2为二次加权后的显著性,Wl′为对应的注视转移经度权重。由于已经经历了初次加权,二次加权强度已经大幅减弱。因此,调整注视转移经度加权的范围即可得到最优结果。
1.2.1 立方体投影与多角度分割
观察者观察全景图时,看到的是头戴式头盔显示出的一个画面,本文称之为一个视口。不同视口之间也必然存在着观看概率差异(苏群 等,2018)。
首先,按照一定的方式将全景图重新投影并分割。本文算法选择立方体投影方式,如图9所示。因为立方体投影可以解决EPR(equirectangular projection)格式的全景图由拉伸导致的严重失真问题,而且相较于球面投影等方法,立方体投影的计算量更小(丁颖 等,2019)。
图9 立方体投影示意图Fig.9 Cube projection
图10 视口分割示意图Fig.10 Viewport segmentation
在经度上,截取90°为一个视口,即每个视口的范围是90° × 60°,共4个视口。多数可用的360°图像设备都将这种大小的视口用做默认选项。
全景图的一个部分在不同的观察角度观看是不同的,只用一种投影方法进行显著性计算势必会丢掉许多信息,而图11所示的双立方体投影(Maugey等,2017)可以很好地解决这个问题。如图11所示,从经度上的0°开始第1种立方体投影,经度平移45°后开始第2种立方体投影。
图11 双立方体投影示意图Fig.11 Double-cube projection
双立方体投影效果如图12所示,图12(a)中的物体斜向于观察者,表现的是物体处于视口边缘的情况,图12(b)中的物体正向于观察者,对应物体处于视口中心的情况。
图12 双立方体投影图Fig.12 Image of double-cube projection((a)image before translate;(b)image after translate)
1.2.2 特征提取
本文选择亮度与深度两种特征作为确定全景图不同视口经度加权的参数。实际观看全景图并观察数据集的显著性标注结果可以发现,很多图像中亮度与其他区域差距大的区域更吸引人,如图13中标记出的两个灯光玩具。
图13 由亮度特征主导的显著性图像Fig.13 A saliency image dominated by brightness((a)panoramic image;(b)reference saliency image)
为求出亮度特征值,首先根据Ebner(2007)提出的方法将图像由RGB空间转换到LAB间,相应的转换公式为
(3)
(4)
(5)
式中,r、g、b分别表示图像RGB通道中R、G、B通道的值。L*为求出的亮度值,A*为由红色到蓝色的颜色值,B*为蓝色到绿色的颜色值。将L*归一化,每个像素点的L*与图像全部像素点的L*的平均值做差,得到结果称为亮度刺激L,即
(6)
传统2D图像的显著性与深度关系并不紧密,但全景图像的深度与其显著性有着密切联系。观察数据集可以发现,很多时候观察者倾向于将更多的注意力集中在场景较深的部分,或在场景比较广阔时观察离自己较接近的部分,如图14所示,红色区域中的汽车离观察者较远,其位置集中了大量的注视,而离观察者较近的,黄色区域中的汽车却没有得到较多注视。此外,深度与显著性结合,能够更好地保持边界(Shafieyan等,2014)。
图14 由深度特征主导的显著性图像Fig.14 A saliency image dominated by deepness((a)panoramic image;(b)reference saliency image)
对于所需要的图像深度,使用mrharicot-monodepth2(Godard等,2019)求得。该模型使用深度估计与姿态估计网络的组合预测单帧图像中的深度,将图像中某个像素点的深度值与图像所有像素点的深度的平均值做差,并求绝对值,再归一化得到深度刺激值D。效果如图15所示。
图15 深度图像Fig.15 Deep image
1.2.3 不同视口观看概率
由于全景图显著性检测存在赤道偏倚现象,当人观察全景图时,倾向于将注意力集中在画面中间纬度部分,即使是相同的刺激,在不同纬度上给人的感觉也存在差异。因此对处于不同纬度位置的像素点,分配不同的权重Wb,这里使用数据集中显著性标注参考结果,统计得出权重曲线,如图16所示。
图16 纬度-30°30°区间的注视权重分布Fig.16 Fixation weight distribution in latitude -30°30°
处于不同纬度的像素点,将其刺激值与其对应的注视权重相乘,即
Fb=Wb×F
(7)
式中,Fb为加权后的亮度或深度刺激值,Wb为该像素所处位置的注视权重,F为深度或亮度刺激值,具体使用哪种特征由后面的特征选择决定。
将Fb归一化到[0,1]范围,Si为视口i的所有像素点的Fb之和。Pi为视口i的观看概率。
每个视口观看概率的计算公式为
(8)
每种视口由双立方体投影得到两种不同投影方式,将两种投影方法所得刺激图像重新对齐后,将视口中像素点Fb之和较大的投影方式作为该视口显著性计算时的投影方式,因为这种情况下更多的刺激处于视口中间,刺激被压缩的情况最少,即Si取两次投影中结果较大的一个。
1.2.4 不同视口经度加权
首先求出每一列所有像素点的刺激之和,记为CF,作为该列所在经度的人眼注视权重。
用该权重与该经度所在的视口的观看概率相乘,得到最终的不同视口经度权重,即
WF=CF×P
(9)
式中,P为该列所在视口的观看概率,CF为该列所在经度的权重,WF为不同视口经度权重。之后可以计算最终的显著性,为了保证原结果的比重,将不同视口经度权重加1。最后进行加权得到最终结果,具体计算为
S=s×(1+WF)
(10)
式中,S为最终求出的显著性结果,s为注视点经度加权后的结果,若仅使用初始注视点经度加权,则s=s1。若使用了注视转移经度加权,则s=s2。
1.2.5 特征的选择
通过使用神经网络,可以判断计算不同视口经度权重时使用的最合适的特征。
以全景图像为输入数据,以T为输出,具体计算为
(11)
M=max(Lr,Dr,r)
(12)
Syn=NSS+CC+SIM-KLD
(13)
式中,Syn由多种评价指标综合所得,包括标准化扫描路径显著性(NSS)(Peters等,2005)、相关系数(CC)(Jost等,2005)、相似度(SIM)(Azam等,2016)以及KL相对熵(KLD)(Tatler等,2005)。Lr和Dr分别为以亮度特征和深度特征进行不同视口经度加权结合注视点经度加权得到的显著性图像的Syn值、r为单独注视点经度加权得到的显著性图像的Syn值,M为三者中的最大值。训练集输入为数据集中随机挑选的全景图像,T为对应的结果标签。使用的网络为改进的VGG16(Visual Geometry Group network 16-layer)(Simonyan和Zisserman,2014)神经网络,将训练轮次设置为20,如果验证损失在5个轮次内没有减少,则立即停止训练。
数据集使用国际多媒体会议暨博览会2017年Salient360!大型挑战赛提供的数据库,其中的全景图像使用相机捕获,以自由观看任务的形式呈现给40位参与者。使用Oculus-DK2作为头戴式显示器(head-mounted displays,HMD),刷新率为75 Hz,每只眼睛的分辨率为960 × 1 080像素,视野为100°。该HMD安装了眼动仪,可以捕获60 Hz的眼动数据,每幅图像显示25 s,呈现图像之前和之后均显示5 s的灰色屏幕。实验中控制初始位置,参加者坐在椅子上,能够旋转360°自由观看。实验使用的数据为该实验结果中提供的全景图和与其对应的头部运动显著性图像以及眼球注视点的扫描路径。
评估指标使用用于眼球注视预测的各种评估指标,包括NSS、CC、SIM和KLD。NSS表示显著性图像与扫描路径的一致性,其值越大表示显著性结果越精确;CC的结果在[0,1]区间,结果越趋近于1,与显著性参考图像越一致;SIM表示显著性预测图像与显著性参考图像的相似性,结果在[0,1]区间,结果越趋近于1,与显著性参考图像越相似;KLD表示显著性预测图像与显著性参考图像的差异,其值越小,表示显著性预测图像与显著性参考图像的差异越小。
使用空间显著性网络计算出初步的显著性图像,加入赤道偏倚进行预处理,得到
s0=s×we
(14)
式中,s为空间显著性网络预测结果,we为赤道偏倚值,s0为加入赤道偏倚后的结果。实验从[0,1]区间开始,以0.05为单位不断调整区间的最小值,经过多次调整赤道偏倚的范围,最终得出当赤道偏倚规范化到[0.2,1]时,可得到最佳结果。预处理结束后,逐步进行实验并进行分析。
2.3.1 消融对比实验
为了证明注视点经度加权与不同视口经度加权对结果的影响,设置了两组消融对比实验,分别为:1)未使用注视点经度加权与使用注视点经度加权后的结果对比;2)未使用不同视口经度加权与使用不同视口经度加权后的结果对比。
为了方便观察比较,本文后续部分将显著性参考图像由彩色替换成黑白图像。注意此时图像未经过平移,初始观看区域并不在图像正中央,而在靠右侧1/4处。
注视点经度加权效果图如图17所示。可以看出,在图17第2行图像里,原图像中都是相似的车辆,图像的内容非常均匀,导致加权前预测的显著性图像也非常均匀。但从显著性参考图像可以发现,实际上显著性非常集中。这是因为图像中没有特别显著的区域,观察者在观察这幅均匀的图像时,习惯性地注视了最先看到的位置更长时间。注视点经度加权将这种行为习惯拟合到了显著图像上,所以准确度得到了较大提升。由于初始观察视口外没有足够显著的部分,仅进行了初始注视点经度加权。图17第1行图像中的原图是左右完全对称的,导致左右两侧预测的显著性非常相似。初始注视点经度加权提高了初始观察区域位置的显著性,而注视转移经度加权找到了初始观察区域以外的第2个显著区域:图像的中心位置,并对其显著性进行了提升,而图像左侧区域的显著性在两次注视点经度加权时都得到了抑制,最终得到了较好的结果。注视点经度加权在评价指标上的表现如表1所示。
表1 注视点经度加权前后性能对比Table 1 Performance comparison of saliency images before weighting and after weighting
图17 注视点经度加权效果图Fig.17 The effect of prime meridian weighting((a)panoramic images;(b)saliency maps before weighting;(c)saliency maps after weighting;(d)reference saliency images)
不同视口经度加权效果图如图18所示。可以看出,在图18第2行图像中,不同视口经度加权之前预测图像的显著性集中在初始观察区域附近,忽略了图像中亮度的作用,除了初始观察区域附近,靠中心的小路上和图像边缘阳光透过的区域也有一定的显著性。而加权后的显著性预测得到了以亮度为特征的不同视口经度加权,使这两个区域的显著性得到了提高,最终结果得到了很好改善。对于图18中第1行图像,加权前已经得到了较好结果,但是经过以深度为特征进行不同视口经度加权后,结果变得更加精确,这是因为显著区域的深度较深,该处的显著性得到了提高,归一化过程中又削弱了其余位置的显著性。不同视口经度加权在评价指标上的结果如表2所示。
表2 不同视口经度加权前后性能对比Table 2 Performance comparison before and after weighting of different viewpoint longtitudes
图18 不同视口经度加权效果图Fig.18 The effect of the weighting of different viewports and longitude((a)panoramic images;(b)saliency maps before weighting;(c)saliency maps after weighting;(d)reference saliency images)
2.3.2 算法对比与分析
为了验证本文算法的有效性,与其他全景图显著性算法进行了两组对比实验。
第1组实验挑选了室内、室外、广阔、狭小等不同类型场景的全景图像,其中还包括同一展览馆内远近不同的图像。使用本文算法对这些图像进行显著性检测,与Ling等人(2018)提出的基于稀疏表示和人类视力加权的中心—周围差异显著性预测算法(saliency prediction model based on sparse representation and the human acuity weighted center-surround differences,CDSR)、Lebreton和Raake(2018)提出的GBVS360(graph-based visual saliency)和BMS360(boolean map based saliency)模型、Xia等人(2016)提出的基于深度自动编码器的重构网络(deepautoencoder-based reconstruction network,AER)和Martin等人(2020)提出的PC3S(panoramic-CNN-360-saliency)进行对比。其中,CSDR、GBVS360与BMS360为改进的传统算法,AER与PC3S为深度学习算法。对比结果如图19所示。可以看出,在各种环境下,相较于其他算法,本文算法预测的显著性图像都更加准确。在纬度特性上,其他算法也可以处理得很好,如PC3S算法很好地将显著性集中在了赤道区域。但是其他算法没有对经度进行专门处理,预测的显著性图像在不同经度上差异较小。而从显著性参考图像可知,不同经度区域的显著性有着较大差异。本文算法对显著性图像进行了观看经度联合加权,预测出的图像在不同经度位置的显著性差异较大,且具有较高的准确性。上述各算法对图19中图像进行显著性检测所得的各项指标平均值如表3所示。可以看出,本文算法结果在各个指标上均优于其他算法。
图19 不同算法的显著性检测实验结果对比Fig.19 Comparison of saliency detection experimental results for different algorithms((a)panoramic images;(b)reference saliency images;(c)CDSR;(d)AER;(e)PC3S;(f)GBVS360;(g)BMS360;(h)ours)
表3 不同类型场景图像性能对比Table 3 Performance comparison of images in different environments
第2组实验是为了测试本文算法的通用性能。实验不再挑选特定图像,而是从数据集中随机选取20幅图像,使用本文算法与其他全景图显著性算法进行对比,各项指标结果为20幅图像平均值,如表4所示。可以看出,本文算法在标准化扫描路径显著性(NSS)、相关系数(CC)等各项指标的结果均优于对比算法,尤其是不同经度显著性差异问题得到了改善,使得KLD指标结果十分突出。
表4 随机多幅图像性能对比Table 4 Performance comparison of random images
本文研究了全景图像经度特征导致的显著性的差异问题,提出了两个关键处理操作。第1个处理操作是注视点经度加权,从初始观察区域中心开始,给显著性图像一个基于人类观察习惯的注视点经度加权,此后如果存在其他显著性突出的区域,则以新的显著性最强的部分为观看中心,再一次进行注视点经度加权。第2个处理操作是不同视口经度加权,以深度与亮度为特征,使用双立方体投影方式,计算不同视口观看概率与不同经度观看权重,并结合二者得到不同视口经度权重。实验结果表明,本文算法一定程度上解决了全景图显著性检测中不同经度观看概率不同的问题,而且在精确度上优于已有同类算法。
本文算法中,进行全景图显著性检测时对所有图像使用了统一的赤道偏倚,在接下来的研究中将尝试对每幅图像使用单独的自适应赤道偏倚,以进一步提高准确性。
致 谢本研究使用的数据集来自国际多媒体会议暨博览会2017年举办的Salient360!大型挑战赛,在此表示感谢。