本发明属于数字图像处理领域,具体涉及基于卷积神经网络的视觉显著性预测方法。
背景技术:
随着虚拟现实技术的飞速发展,了解全景图像中的视觉注意力已引起人们极大的兴趣。不同于传统的图像,全景图像可以给用户提供沉浸式和交互式的视觉体验。用户可以通过头戴式显示器自由移动他们的头观看视角场范围在360°×180°内的内容。换句话说,人们可以自由的转动他们的头观看全景图像中最吸引人们视觉注意力的区域。因此,头部注视点对于探索和建模全景图像中的视觉注意力是至关重要的。由于缺乏足够的大型全景图像显著性数据集,将现有的显著性预测方法从传统的2d图像扩展到全景图像并不容易。此外,现有方法将2d图像显著性预测方法直接用到全景图显著性预测方法中,忽略了全景图在极点处的扭曲和拉伸,而扭曲和拉伸将会极大地影响人眼的视觉注意力,从而会导致预测准确性不佳。
技术实现要素:
发明目的:为克服现有技术的不足,本发明提出一种基于卷积神经网络的全景图像视觉显著性预测方法,能够得到更加准确的全景显著图。
技术方案:本发明提出的一种基于卷积神经网络的全景图像视觉显著性预测方法,包括以下步骤:
1)对全景图像进行等尺寸的投影,将一张全景图像投影成若干块相同尺寸的2d图像块,并且保留像素点对应在球面上的坐标;
2)将2d图像块输入卷积神经网络模型,通过计算和预测输出对应的尺寸相同的显著图,其中所述卷积神经网络模型通过预先训练获得,在训练时加入全景图像的像素球面坐标值进行训练,并且使用定制的损失函数;
3)根据所保留的像素点球面坐标将所得若干显著图进行拼接,得到完整的全景图像显著图。
其中,所述步骤1)中在进行全景图像投影时,通过旋转映射将球面上的像素映射到2d平面,公式为:
其中x、y为2d图像的像素坐标,sw、sh分别为2d图像的宽、高,θ、ф为全景图像像素的球面坐标,θ是纬度,ф是经度。
进一步地,所述卷积神经网络模型包括基础网络和增强网络,所述基础网络主要用于粗略的显著图的估计,其输入为从全景图像中投影出来的2d图像块,输出为一张尺寸相同的一通道灰度显著图;所述增强网络主要用于对基础网络输出的显著图进行更加精细的估计,其输入为一个三通道的维度,是通过将步骤1)中生成的二维球面坐标和基础网络的一维输出显著图像做级联操作而形成的一个三通道的输入,坐标的维度和图像尺寸相同,输出为一张尺寸相同的一通道灰度显著图。
进一步地,所述卷积神经网络模型在训练时,使用如下损失函数:
其中
有益效果:本发明从全景图像的角度出发,提出了一种基于卷积神经网络的全景图像视觉显著性预测方法。为了使得深度卷积神经网络在视觉显著性预测上具有较好的预测效果,本发明提出两个部分的深度卷积神经网络作为算法主体的策略,更精确地抓住图像中的显著特征。为了避免由全景图像的扭曲带来的误差,本发明将全景图像投影成多块等尺寸的2d图像,并作为网络模型的输入。并在模型训练中增加了全景图像球面的像素坐标,可以准确地判断要预测的位置是否具备显著性。同时通过定制的损失函数可以让卷积神经网络在训练的过程中更加贴近人眼观察时的真实情况。本发明的方法能有效的提高图像显著性预测的精度,进一步完善了cnn模型的性能,适用于全景图像视觉显著性预测,并能产生更好的显著图预测结果。
附图说明
图1为本发明实施例中提供的全景图像视觉显著性预测方法流程图;
图2为本发明实施例中提供的完整的全景图示例;
图3为本发明实施例中提供的全景图中的投影图示意,对应图1的patch6部分;
图4为本发明实施例中提供的球型坐标系示意图;
图5为本发明实施例中提供的滑动的球面到2d平面的映射区域的示意图;
图6为本发明实施例中提供的卷积神经网络模型框架示意图;
图7为本发明实施例提供的实验示例主观结果展示。
具体实施方式
下面结合附图对本发明的技术方案作进一步说明。
本发明提出一种全景图像视觉显著性预测方法,主要包括利用计算机图形学的方法对全景图像作投影,在投影的图像上利用深度学习的方法进行人眼观看显著区域的预测,最后把预测的平面图像拼接成全景的显著图,从而达到对全景图像显著性区域的预测。参照图1,首先,将全向图像采样为大小相等的小块作为输入,以减少等角投影时拉伸引起的误差。此后,提出了包含两个网络的模型,即基础网络和增强网络。该基础网络在从平面2d图像中学习显著性特征,而增强网络则通过将朝向球面赤道的观察者偏差合并到球形空间中,从而从基础网络中进一步更新显著性。同时提出了一种新的损失函数,其中考虑了基于分布和基于位置的评估指标。最后,将每个面片的每个像素投影回到等角矩形图像,以生成完整的全景显著图。
具体包括以下步骤:
1)全景图像的投影
在全景图像中,从球面映射到平面会引起拉伸扭曲,这种现象在两极更明显。图2展示了如何投射的示例,图中虚线框包围区域为被投影区域,将完整的odi(omni-directionalimage,全向图像,也可以称全景图像)图像转换为用户使用vr眼镜实际观察到的正常图像。从这个图形中可以发现,当我们直接观看这个odi时,很难区分图2中patch6是什么,图3是图2中patch的平面图,是一个三脚架。由此可以看出,将全景图像投影成2d图像显得至关重要。为了减少全景图像在球面极点处的扭曲,降低这些失真对显著性预测的影响,本发明采用的方法是将一张全景图像投影成若干块尺寸相同的2d图像,实施例中投影为6块。这个选定的尺寸保持低失真,覆盖整个球体,并使其具有与vr眼镜相似的视场,例如oculusrift。这个方法也可以用来增加用于模型的数据集的数量,如图5我们可以以球心为中心按照任意角度转动阴影区域做球面投影,增加数据集中图片的数量,以此来达到更好的训练效果。
假设
根据此公式可以完成全景图像到2d图像的投影与转换,在投影的过程中保留2d图像对应的球面坐标,作为后面网络模型输入的一部分。
2)网络模型框架的搭建
本发明中算法模型主要由卷积神经网络构成。模型中包含两个部分的网络,即第一部分的基础网络(basenet)和第二部分的增强网络(refinenet)。基础网络被训练为检测传统二维平面图像的显著性。增强网络是在基础网络之后添加的细化体系结构,用于进一步提取显著图,它需要一个3通道的功能地图作为输入:第一部分的网络基础网络的输出和每个像素的球面坐标作为其他两个通道。整体框架如图6所示。图中第一个虚线框是基础网络,第二个虚线框是增强网络。输入层括号中的参数分别是:宽,高,通道数量。卷积层括号中的参数分别是:输入的通道数量,输出的通道数量,卷积核的大小,步长,填充数量。池化层括号中的参数分别是:卷积核的大小,步长。反卷积层括号中的参数分别是:输入的通道数量,输出的通道数量,卷积核的大小,步长,填充数量。
更具体而言,本发明实施例中网络结构为:第一部分包含9个卷积层和1个反卷积层,这部分的所有激活函数都是relu。反卷积层的输出与通道每像素球面坐标合并,作为增强网络的输入。在网络的第二部分增强网络中,包括5个卷积层和1个反卷积层。这部分的所有激活函数都是relu。为了减少预测的显著图与真实的显著图之间的差异,本发明损失函数是下面定义的新损失函数:
其中
当使用分布
其中,i索引表示第i个像素,而ε是正则化常数。并且其值越接近零,则两个概率分布越接近。
cc是皮尔逊的相关系数,模型预测的显著性和真实的显著性
其中
nss度量标准专门用于评估显著性模型。它的作用是量化眼固定位置的显著图的值:
其中i索引表示第i个像素,n是预测出的注视图
上述公式l结合了三个显著图评价指标kl离散度(kullback–leiblerdivergence)、线性相关系数(cc)和归一化扫描路径显著性(nss,normalizedscanpathsaliency)作为网络的损失函数。kldiv是非相似性度量,另外两个是相似性度量,因此将cc和nss的负值合并到损失函数中。
采用全景图像的公开数据集对基础网络和增强网络的网络结构进行同时训练,并获得相应的输出结果。
3)对最终结果进行后置处理
本实施例中,网络模型以六个补丁(patch)及其球面坐标作为输入。因此,该模型分别为这些补丁生成了一个显著图。因此,它们必须组合成一个单一的显著图作为输出。为此使用每个像素的球面坐标将每个补丁的每个像素投影到一个相等的矩形全景图上。显著图的拼接就是将6张2d图像拼接成一张完整的显著图。利用投影的时候所保留相对应的像素位置(即像素的坐标)还原相对应的2d图像在全景图中的位置。为了简单起见,使用最近邻插值法来计算子像素上的值。为了填充孔并平滑结果,实施例中应用了一个核大小为64像素的高斯滤波器。最后实现一个端到端的模型,即输入一张全景图像,输出一张3d显著图。
下面通过一个实验对本方法的预测性能加以验证,不失一般性,拟用icme2018挑战提供的数据集,采用其中的全景图像的部分,总共85张3d图片。70张作为训练集,15张作为测试集。
实验中使用随机转动平头截体的方法来扩增数据集,总共扩增到了17290张图片,这非常有利于提高模型的泛化能力。根据球面映射到2d的公式(1),例如,当θ=п/2,φ=п/2时,对应在2d平面上的坐标值x=sw,y=sh/2。一张被投影的2d图片对应着一张被投影的2d显著图,前者为数据,后者为标签。在训练集中,使用一小部分图像作为验证集,以避免训练过程中的过度拟合。数据(图像及其分类)被标准化将数据重新标度为[-1,1]区间,并除以标准差。二值化的显著图不需要规范化,因为它只包含值0和1。所有的输入图像和显著图被缩放到320×240分辨率。虽然本发明所提的模型有两个部分,但可以以端到端的方式将两个部分一起训练。第一部分的前三层是采用初始的预先训练权重,这将有助于模型更快地找到最优解。从基础学习率为1e-4开始。然后使用批处理大小为4的自适应矩估计方法(adam)对网络进行50次循环的训练。为了避免过度拟合,还使用标准重量衰减作为正则化。根据公式(2)所示的损失函数,对于一个像素的显著性预测来说,当
图7为实验示例主观结果展示:(a)是人眼在真实场景中所看到的显著图,高亮区域代表人眼感兴趣的区域;(b)是本发明方法所预测出来的显著图,高亮区域代表人眼感兴趣的区域,与(a)对应;(c)人眼在真实场景中所看到的显著图,高亮区域代表人眼感兴趣的区域;(d)是本发明方法所预测出来的显著图,高亮区域代表人眼感兴趣的区域,与(c)对应。可以看出,本方法得到的显著图和人眼视觉观察的真实情况非常贴近。
1.一种基于卷积神经网络的全景图像视觉显著性预测方法,其特征在于,所述方法包括以下步骤:
1)对全景图像进行等尺寸的投影,将一张全景图像投影成若干块相同尺寸的2d图像块,并且保留像素点对应在球面上的坐标;
2)将2d图像块输入卷积神经网络模型,通过计算和预测输出对应的尺寸相同的显著图,其中所述卷积神经网络模型通过预先训练获得,在训练时加入全景图像的像素球面坐标值进行训练,并且使用定制的损失函数;
3)根据所保留的像素点球面坐标将所得若干显著图进行拼接,得到完整的全景图像显著图。
2.根据权利要求1所述的基于卷积神经网络的全景图像视觉显著性预测算法,其特征在于,所述步骤1)中在进行全景图像投影时,通过旋转映射将球面上的像素映射到2d平面,公式为:
其中x、y为2d图像的像素坐标,sw、sh分别为2d图像的宽、高,θ、ф为全景图像像素的球面坐标,θ是纬度,ф是经度。
3.根据权利要求1所述的基于卷积神经网络的全景图像视觉显著性预测方法,其特征在于,所述卷积神经网络模型包括基础网络和增强网络,所述基础网络主要用于粗略的显著图的估计,其输入为从全景图像中投影出来的2d图像块,输出为一张尺寸相同的一通道灰度显著图;所述增强网络主要用于对基础网络输出的显著图进行更加精细的估计,其输入为一个三通道的维度,是通过将步骤1)中生成的二维球面坐标和基础网络的一维输出显著图像进行级联操作而形成的一个三通道的输入,坐标的维度和图像尺寸相同,输出为一张尺寸相同的一通道灰度显著图。
4.根据权利要求1所述的基于卷积神经网络的全景图像视觉显著性预测方法,其特征在于,所述卷积神经网络模型在训练时,使用如下损失函数:
其中
5.根据权利要求4所述的基于卷积神经网络的全景图像视觉显著性预测方法,其特征在于,所述
其中,i表示第i个像素,而ε是正则化常数,
6.根据权利要求4所述的基于卷积神经网络的全景图像视觉显著性预测方法,其特征在于,所述
其中
7.根据权利要求4所述的基于卷积神经网络的全景图像视觉显著性预测方法,其特征在于,所述
其中i表示第i个像素,n是