技术领域
本发明涉及一种图像质量评价方法,尤其是涉及一种基于三维梯度幅度的立体图像质量客观评价方法。
背景技术
随着图像编码技术和立体显示技术的迅速发展,立体图像技术受到了越来越广泛的关注与应用,已成为当前的一个研究热点。立体图像技术利用人眼的双目视差原理,双目各自独立地接收来自同一场景的左右视点图像,通过大脑融合形成双目视差,从而欣赏到具有深度感和逼真感的立体图像。由于受采集系统、存储压缩及传输设备的影响,立体图像会不可避免地引入一系列的失真,而与单通道图像相比,立体图像需要同时保证两个通道的图像质量,因此对立体图像进行质量评价具有非常重要的意义。然而,目前缺乏有效的客观评价方法对立体图像质量进行评价。因此,建立有效的立体图像质量客观评价模型具有十分重要的意义。
梯度幅度是一种有效的图像结构信息描述子,基于梯度幅度的评价方法已经应用于平面图像质量评价,而对于基于梯度幅度的立体图像质量评价,需要解决以下几个关键问题:1)立体感知评价通过视差或深度信息来反映,如何将视差或深度信息嵌入到梯度幅度中以真实地表征立体感知特性,仍然是立体图像质量客观评价中的难点问题之一;2)并不是所有的像素点都具有强烈的结构信息,如何选择稳定的结构信息应用于质量评价,而又不影响立体感知性能,也是立体图像质量客观评价中需要解决的难点问题。
发明内容
本发明所要解决的技术问题是提供一种基于三维梯度幅度的立体图像质量客观评价方法,其能够有效地提高客观评价结果与主观感知的相关性。
本发明解决上述技术问题所采用的技术方案为:一种基于三维梯度幅度的立体图像质量客观评价方法,其特征在于包括以下步骤:
①令Sorg表示原始的无失真的立体图像,令Sdis表示待评价的失真的立体图像,将Sorg的左视点图像记为{Lorg(x,y)},将Sorg的右视点图像记为{Rorg(x,y)},将Sdis的左视点图像记为{Ldis(x,y)},将Sdis的右视点图像记为{Rdis(x,y)},其中,(x,y)表示左视点图像和右视点图像中的像素点的坐标位置,1≤x≤W,1≤y≤H,W表示左视点图像和右视点图像的宽度,H表示左视点图像和右视点图像的高度,Lorg(x,y)表示{Lorg(x,y)}中坐标位置为(x,y)的像素点的像素值,Rorg(x,y)表示{Rorg(x,y)}中坐标位置为(x,y)的像素点的像素值,Ldis(x,y)表示{Ldis(x,y)}中坐标位置为(x,y)的像素点的像素值,Rdis(x,y)表示{Rdis(x,y)}中坐标位置为(x,y)的像素点的像素值;
②根据{Lorg(x,y)}中的每个像素点和{Rorg(x,y)}中对应坐标位置的像素点在多个视差值下的视差空间值,获得Sorg的视差空间图,记为{DSIorg(x,y,d)},并根据{Ldis(x,y)}中的每个像素点和{Rdis(x,y)}中对应坐标位置的像素点在多个视差值下的视差空间值,获得Sdis的视差空间图,记为{DSIdis(x,y,d)},其中,DSIorg(x,y,d)表示{DSIorg(x,y,d)}中坐标位置为(x,y,d)的像素点的视差空间值,DSIdis(x,y,d)表示{DSIdis(x,y,d)}中坐标位置为(x,y,d)的像素点的视差空间值,0≤d≤dmax,dmax表示最大视差值;
③计算{DSIorg(x,y,d)}中的每个像素点的水平方向梯度、垂直方向梯度和视点方向梯度,将{DSIorg(x,y,d)}中坐标位置为(x,y,d)的像素点的水平方向梯度记为gxorg(x,y,d),将{DSIorg(x,y,d)}中坐标位置为(x,y,d)的像素点的垂直方向梯度记为gyorg(x,y,d),将{DSIorg(x,y,d)}中坐标位置为(x,y,d)的像素点的视点方向梯度记为gdorg(x,y,d);
同样,计算{DSIdis(x,y,d)}中的每个像素点的水平方向梯度、垂直方向梯度和视点方向梯度,将{DSIdis(x,y,d)}中坐标位置为(x,y,d)的像素点的水平方向梯度记为gxdis(x,y,d),将{DSIdis(x,y,d)}中坐标位置为(x,y,d)的像素点的垂直方向梯度记为gydis(x,y,d),将{DSIdis(x,y,d)}中坐标位置为(x,y,d)的像素点的视点方向梯度记为gddis(x,y,d);
④根据{DSIorg(x,y,d)}中的每个像素点的水平方向梯度、垂直方向梯度和视点方向梯度,计算{DSIorg(x,y,d)}中的每个像素点的三维梯度幅度,将{DSIorg(x,y,d)}中坐标位置为(x,y,d)的像素点的三维梯度幅度记为morg(x,y,d),
同样,根据{DSIdis(x,y,d)}中的每个像素点的水平方向梯度、垂直方向梯度和视点方向梯度,计算{DSIdis(x,y,d)}中的每个像素点的三维梯度幅度,将{DSIdis(x,y,d)}中坐标位置为(x,y,d)的像素点的三维梯度幅度记为mdis(x,y,d),
⑤根据{DSIorg(x,y,d)}和{DSIdis(x,y,d)}中的每个像素点的三维梯度幅度,计算{DSIdis(x,y,d)}中的每个像素点的客观评价度量值,将{DSIdis(x,y,d)}中坐标位置为(x,y,d)的像素点的客观评价度量值记为QDSI(x,y,d),
⑥根据{DSIdis(x,y,d)}中的每个像素点的客观评价度量值,计算Sdis的图像质量客观评价预测值,记为Q,其中,Ω表示{DSIdis(x,y,d)}中的所有像素点的坐标位置的集合,N表示{DSIdis(x,y,d)}中包含的像素点的总个数。
所述的步骤②中Sorg的视差空间图的获取过程为:
②-a1、将{Lorg(x,y)}中当前待处理的像素点定义为当前第一像素点,将{Rorg(x,y)}中当前待处理的像素点定义为当前第二像素点;
②-a2、假设当前第一像素点为{Lorg(x,y)}中坐标位置为(x1,y1)的像素点,假设当前第二像素点为{Rorg(x,y)}中坐标位置为(x1,y1)的像素点,取视差值d0=0,然后计算当前第一像素点和当前第二像素点在该视差值d0下的视差空间值,记为DSIorg(x1,y1,d0),DSIorg(x1,y1,d0)=|Lorg(x1,y1)-Rorg(x1-d0,y1)|,其中,1≤x1≤W,1≤y1≤H,0≤d0≤dmax,dmax表示最大视差值,Lorg(x1,y1)表示{Lorg(x,y)}中坐标位置为(x1,y1)的像素点的像素值,Rorg(x1-d0,y1)表示{Rorg(x,y)}中坐标位置为(x1-d0,y1)的像素点的像素值,“||”为取绝对值符号;
②-a3、选取dmax个与d0各不相同的视差值,分别记为然后分别计算当前第一像素点和当前第二像素点在该dmax个各不相同的视差值下的视差空间值,对应的分别记为
DSIorg(x1,y1,d1)表示当前第一像素点和当前第二像素点在视差值d1下的视差空间值,DSIorg(x1,y1,d2)表示当前第一像素点和当前第二像素点在视差值d2下的视差空间值,DSIorg(x1,y1,di)表示当前第一像素点和当前第二像素点在视差值di下的视差空间值,
表示当前第一像素点和当前第二像素点在视差值
下的视差空间值,Rorg(x1-d1,y1)表示{Rorg(x,y)}中坐标位置为(x1-d1,y1)的像素点的像素值,Rorg(x1-d2,y1)表示{Rorg(x,y)}中坐标位置为(x1-d2,y1)的像素点的像素值,Rorg(x1-di,y1)表示{Rorg(x,y)}中坐标位置为(x1-di,y1)的像素点的像素值,
表示{Rorg(x,y)}中坐标位置为
的像素点的像素值;
②-a4、将{Lorg(x,y)}中下一个待处理的像素点作为当前第一像素点,将{Rorg(x,y)}中下一个待处理的像素点作为当前第二像素点,然后返回步骤②-a2继续执行,直至{Lorg(x,y)}和{Rorg(x,y)}中的所有像素点处理完毕,获得Sorg的视差空间图,记为{DSIorg(x,y,d)},其中,DSIorg(x,y,d)表示{DSIorg(x,y,d)}中坐标位置为(x,y,d)的像素点的视差空间值,DSIorg(x,y,d)的值为{Lorg(x,y)}中坐标位置为(x,y)的像素点和{Rorg(x,y)}中坐标位置为(x,y)的像素点在视差值d下的视差空间值,
所述的步骤②中Sdis的视差空间图的获取过程为:
②-b1、将{Ldis(x,y)}中当前待处理的像素点定义为当前第一像素点,将{Rdis(x,y)}中当前待处理的像素点定义为当前第二像素点;
②-b2、假设当前第一像素点为{Ldis(x,y)}中坐标位置为(x1,y1)的像素点,假设当前第二像素点为{Rdis(x,y)}中坐标位置为(x1,y1)的像素点,取视差值d0=0,然后计算当前第一像素点和当前第二像素点在该视差值d0下的视差空间值,记为DSIdis(x1,y1,d0),DSIdis(x1,y1,d0)=|Ldis(x1,y1)-Rdis(x1-d0,y1)|,其中,1≤x1≤W,1≤y1≤H,0≤d0≤dmax,dmax表示最大视差值,Ldis(x1,y1)表示{Ldis(x,y)}中坐标位置为(x1,y1)的像素点的像素值,Rdis(x1-d0,y1)表示{Rdis(x,y)}中坐标位置为(x1-d0,y1)的像素点的像素值,“||”为取绝对值符号;
②-b3、选取dmax个与d0各不相同的视差值,分别记为然后分别计算当前第一像素点和当前第二像素点在该dmax个各不相同的视差值下的视差空间值,对应的分别记为
DSIdis(x1,y1,d1)表示当前第一像素点和当前第二像素点在视差值d1下的视差空间值,DSIdis(x1,y1,d2)表示当前第一像素点和当前第二像素点在视差值d2下的视差空间值,DSIdis(x1,y1,di)表示当前第一像素点和当前第二像素点在视差值di下的视差空间值,
表示当前第一像素点和当前第二像素点在视差值
下的视差空间值,Rdis(x1-d1,y1)表示{Rdis(x,y)}中坐标位置为(x1-d1,y1)的像素点的像素值,Rdis(x1-d2,y1)表示{Rdis(x,y)}中坐标位置为(x1-d2,y1)的像素点的像素值,Rdis(x1-di,y1)表示{Rdis(x,y)}中坐标位置为(x1-di,y1)的像素点的像素值,
表示{Rdis(x,y)}中坐标位置为
的像素点的像素值;
②-b4、将{Ldis(x,y)}中下一个待处理的像素点作为当前第一像素点,将{Rdis(x,y)}中下一个待处理的像素点作为当前第二像素点,然后返回步骤②-b2继续执行,直至{Ldis(x,y)}和{Rdis(x,y)}中的所有像素点处理完毕,获得Sdis的视差空间图,记为{DSIdis(x,y,d)},其中,DSIdis(x,y,d)表示{DSIdis(x,y,d)}中坐标位置为(x,y,d)的像素点的视差空间值,DSIdis(x,y,d)的值为{Ldis(x,y)}中坐标位置为(x,y)的像素点和{Rdis(x,y)}中坐标位置为(x,y)的像素点在视差值d下的视差空间值,
所述的步骤③中{DSIorg(x,y,d)}中的每个像素点的水平方向梯度、垂直方向梯度和视点方向梯度的获取过程为:
③-a1、采用水平梯度算子对{DSIorg(x,y,d)}进行卷积,得到{DSIorg(x,y,d)}中的每个像素点的水平方向梯度,将{DSIorg(x,y,d)}中坐标位置为(x,y,d)的像素点的水平方向梯度记为gxorg(x,y,d),
③-a2、采用垂直梯度算子对{DSIorg(x,y,d)}进行卷积,得到{DSIorg(x,y,d)}中的每个像素点的垂直方向梯度,将{DSIorg(x,y,d)}中坐标位置为(x,y,d)的像素点的垂直方向梯度记为gyorg(x,y,d),
③-a3、采用视点梯度算子对{DSIorg(x,y,d)}进行卷积,得到{DSIorg(x,y,d)}中的每个像素点的视点方向梯度,将{DSIorg(x,y,d)}中坐标位置为(x,y,d)的像素点的视点方向梯度记为gdorg(x,y,d),
上述步骤③-a1至步骤③-a3中,如果u<1,则DSIorg(u,v,j)的值由DSIorg(1,v,j)的值替代,如果u>W,则DSIorg(u,v,j)的值由DSIorg(W,v,j)的值替代,如果v<1,则DSIorg(u,v,j)的值由DSIorg(u,1,j)的值替代,如果v>H,则DSIorg(u,v,j)的值由DSIorg(u,H,j)的值替代,如果j<0,则DSIorg(u,v,j)的值由DSIorg(u,v,0)的值替代,如果j>dmax,则DSIorg(u,v,j)的值由DSIorg(u,v,dmax)的值替代,DSIorg(1,v,j)表示{DSIorg(x,y,d)}中坐标位置为(1,v,j)的像素点的视差空间值,DSIorg(W,v,j)表示{DSIorg(x,y,d)}中坐标位置为(W,v,j)的像素点的视差空间值,DSIorg(u,1,j)表示{DSIorg(x,y,d)}中坐标位置为(u,1,j)的像素点的视差空间值,DSIorg(u,H,j)表示{DSIorg(x,y,d)}中坐标位置为(u,H,j)的像素点的视差空间值,DSIorg(u,v,0)表示{DSIorg(x,y,d)}中坐标位置为(u,v,0)的像素点的视差空间值,DSIorg(u,v,dmax)表示{DSIorg(x,y,d)}中坐标位置为(u,v,dmax)的像素点的视差空间值;
所述的步骤③中{DSIdis(x,y,d)}中的每个像素点的水平方向梯度、垂直方向梯度和视点方向梯度的获取过程为:
③-b1、采用水平梯度算子对{DSIdis(x,y,d)}进行卷积,得到{DSIdis(x,y,d)}中的每个像素点的水平方向梯度,将{DSIdis(x,y,d)}中坐标位置为(x,y,d)的像素点的水平方向梯度记为gxdis(x,y,d),
③-b2、采用垂直梯度算子对{DSIdis(x,y,d)}进行卷积,得到{DSIdis(x,y,d)}中的每个像素点的垂直方向梯度,将{DSIdis(x,y,d)}中坐标位置为(x,y,d)的像素点的垂直方向梯度记为gydis(x,y,d),
③-b3、采用视点梯度算子对{DSIdis(x,y,d)}进行卷积,得到{DSIdis(x,y,d)}中的每个像素点的视点方向梯度,将{DSIdis(x,y,d)}中坐标位置为(x,y,d)的像素点的视差方向梯度记为gddis(x,y,d),
上述步骤③-b1至步骤③-b3中,如果u<1,则DSIdis(u,v,j)的值由DSIdis(1,v,j)的值替代,如果u>W,则DSIdis(u,v,j)的值由DSIdis(W,v,j)的值替代,如果v<1,则DSIdis(u,v,j)的值由DSIdis(u,1,j)的值替代,如果v>H,则DSIdis(u,v,j)的值由DSIdis(u,H,j)的值替代,如果j<0,则DSIdis(u,v,j)的值由DSIdis(u,v,0)的值替代,如果j>dmax,则DSIdis(u,v,j)的值由DSIdis(u,v,dmax)的值替代,DSIdis(1,v,j)表示{DSIdis(x,y,d)}中坐标位置为(1,v,j)的像素点的视差空间值,DSIdis(W,v,j)表示{DSIdis(x,y,d)}中坐标位置为(W,v,j)的像素点的视差空间值,DSIdis(u,1,j)表示{DSIdis(x,y,d)}中坐标位置为(u,1,j)的像素点的视差空间值,DSIdis(u,H,j)表示{DSIdis(x,y,d)}中坐标位置为(u,H,j)的像素点的视差空间值,DSIdis(u,v,0)表示{DSIdis(x,y,d)}中坐标位置为(u,v,0)的像素点的视差空间值,DSIdis(u,v,dmax)表示{DSIdis(x,y,d)}中坐标位置为(u,v,dmax)的像素点的视差空间值。
与现有技术相比,本发明的优点在于:
1)本发明方法考虑到视差对立体感知的影响,因此分别构造原始的无失真的立体图像的视差空间图和待评价的失真的立体图像的视差空间图,这样避免了复杂的视差估计操作,并且所构造的视差空间图能够很好地反映不同视差对立体图像质量的影响。
2)本发明方法通过计算视差空间图中的每个像素点的水平方向梯度、垂直方向梯度和视点方向梯度,来得到视差空间图中的每个像素点的三维梯度幅度,获得的三维梯度幅度具有较强的稳定性且能够较好地反映立体图像的质量变化情况,因此能有效地提高客观评价结果与主观感知的相关性。
附图说明
图1为本发明方法的总体实现框图;
图2为水平梯度算子模板;
图3为垂直梯度算子模板;
图4为视点梯度算子模板;
图5为利用本发明方法得到的宁波大学立体图像库中的每幅失真的立体图像的图像质量客观评价预测值与平均主观评分差值的散点图;
图6为利用本发明方法得到的LIVE立体图像库中的每幅失真的立体图像的图像质量客观评价预测值与平均主观评分差值的散点图。
具体实施方式
以下结合附图实施例对本发明作进一步详细描述。
本发明提出的一种基于三维梯度幅度的立体图像质量客观评价方法,其总体实现框图如图1所示,其具体包括以下步骤:
①令Sorg表示原始的无失真的立体图像,令Sdis表示待评价的失真的立体图像,将Sorg的左视点图像记为{Lorg(x,y)},将Sorg的右视点图像记为{Rorg(x,y)},将Sdis的左视点图像记为{Ldis(x,y)},将Sdis的右视点图像记为{Rdis(x,y)},其中,(x,y)表示左视点图像和右视点图像中的像素点的坐标位置,1≤x≤W,1≤y≤H,W表示左视点图像和右视点图像的宽度,H表示左视点图像和右视点图像的高度,Lorg(x,y)表示{Lorg(x,y)}中坐标位置为(x,y)的像素点的像素值,Rorg(x,y)表示{Rorg(x,y)}中坐标位置为(x,y)的像素点的像素值,Ldis(x,y)表示{Ldis(x,y)}中坐标位置为(x,y)的像素点的像素值,Rdis(x,y)表示{Rdis(x,y)}中坐标位置为(x,y)的像素点的像素值。
②根据{Lorg(x,y)}中的每个像素点和{Rorg(x,y)}中对应坐标位置的像素点在多个视差值下的视差空间值,获得Sorg的视差空间图,记为{DSIorg(x,y,d)},并根据{Ldis(x,y)}中的每个像素点和{Rdis(x,y)}中对应坐标位置的像素点在多个视差值下的视差空间值,获得Sdis的视差空间图,记为{DSIdis(x,y,d)},其中,DSIorg(x,y,d)表示{DSIorg(x,y,d)}中坐标位置为(x,y,d)的像素点的视差空间值,DSIdis(x,y,d)表示{DSIdis(x,y,d)}中坐标位置为(x,y,d)的像素点的视差空间值,0≤d≤dmax,dmax表示最大视差值,在本实施例中取dmax=31。
在此具体实施例中,步骤②中Sorg的视差空间图的获取过程为:
②-a1、将{Lorg(x,y)}中当前待处理的像素点定义为当前第一像素点,将{Rorg(x,y)}中当前待处理的像素点定义为当前第二像素点。
②-a2、假设当前第一像素点为{Lorg(x,y)}中坐标位置为(x1,y1)的像素点,假设当前第二像素点为{Rorg(x,y)}中坐标位置为(x1,y1)的像素点,即当前第一像素点与当前第二像素点的坐标位置相同,取视差值d0=0,然后计算当前第一像素点和当前第二像素点在该视差值d0下的视差空间值,记为DSIorg(x1,y1,d0),DSIorg(x1,y1,d0)=|Lorg(x1,y1)-Rorg(x1-d0,y1)|,其中,1≤x1≤W,1≤y1≤H,0≤d0≤dmax,dmax表示最大视差值,Lorg(x1,y1)表示{Lorg(x,y)}中坐标位置为(x1,y1)的像素点的像素值,Rorg(x1-d0,y1)表示{Rorg(x,y)}中坐标位置为(x1-d0,y1)的像素点的像素值,“||”为取绝对值符号。
②-a3、选取dmax个与d0各不相同的视差值,分别记为然后分别计算当前第一像素点和当前第二像素点在该dmax个各不相同的视差值下的视差空间值,对应的分别记为
DSIorg(x1,y1,d1)表示当前第一像素点和当前第二像素点在视差值d1下的视差空间值,DSIorg(x1,y1,d2)表示当前第一像素点和当前第二像素点在视差值d2下的视差空间值,DSIorg(x1,y1,di)表示当前第一像素点和当前第二像素点在视差值di下的视差空间值,
表示当前第一像素点和当前第二像素点在视差值
下的视差空间值,Rorg(x1-d1,y1)表示{Rorg(x,y)}中坐标位置为(x1-d1,y1)的像素点的像素值,Rorg(x1-d2,y1)表示{Rorg(x,y)}中坐标位置为(x1-d2,y1)的像素点的像素值,Rorg(x1-di,y1)表示{Rorg(x,y)}中坐标位置为(x1-di,y1)的像素点的像素值,
表示{Rorg(x,y)}中坐标位置为
的像素点的像素值。
②-a4、将{Lorg(x,y)}中下一个待处理的像素点作为当前第一像素点,将{Rorg(x,y)}中下一个待处理的像素点作为当前第二像素点,然后返回步骤②-a2继续执行,直至{Lorg(x,y)}和{Rorg(x,y)}中的所有像素点处理完毕,获得Sorg的视差空间图,记为{DSIorg(x,y,d)},其中,DSIorg(x,y,d)表示{DSIorg(x,y,d)}中坐标位置为(x,y,d)的像素点的视差空间值,DSIorg(x,y,d)的值为{Lorg(x,y)}中坐标位置为(x,y)的像素点和{Rorg(x,y)}中坐标位置为(x,y)的像素点在视差值d下的视差空间值,
在此具体实施例中,步骤②中Sdis的视差空间图的获取过程为:
②-b1、将{Ldis(x,y)}中当前待处理的像素点定义为当前第一像素点,将{Rdis(x,y)}中当前待处理的像素点定义为当前第二像素点。
②-b2、假设当前第一像素点为{Ldis(x,y)}中坐标位置为(x1,y1)的像素点,假设当前第二像素点为{Rdis(x,y)}中坐标位置为(x1,y1)的像素点,即当前第一像素点与当前第二像素点的坐标位置相同,取视差值d0=0,然后计算当前第一像素点和当前第二像素点在该视差值d0下的视差空间值,记为DSIdis(x1,y1,d0),DSIdis(x1,y1,d0)=|Ldis(x1,y1)-Rdis(x1-d0,y1)|,其中,1≤x1≤W,1≤y1≤H,0≤d0≤dmax,dmax表示最大视差值,Ldis(x1,y1)表示{Ldis(x,y)}中坐标位置为(x1,y1)的像素点的像素值,Rdis(x1-d0,y1)表示{Rdis(x,y)}中坐标位置为(x1-d0,y1)的像素点的像素值,“||”为取绝对值符号。
②-b3、选取dmax个与d0各不相同的视差值,分别记为然后分别计算当前第一像素点和当前第二像素点在该dmax个各不相同的视差值下的视差空间值,对应的分别记为
DSIdis(x1,y1,d1)表示当前第一像素点和当前第二像素点在视差值d1下的视差空间值,DSIdis(x1,y1,d2)表示当前第一像素点和当前第二像素点在视差值d2下的视差空间值,DSIdis(x1,y1,di)表示当前第一像素点和当前第二像素点在视差值di下的视差空间值,
表示当前第一像素点和当前第二像素点在视差值
下的视差空间值,Rdis(x1-d1,y1)表示{Rdis(x,y)}中坐标位置为(x1-d1,y1)的像素点的像素值,Rdis(x1-d2,y1)表示{Rdis(x,y)}中坐标位置为(x1-d2,y1)的像素点的像素值,Rdis(x1-di,y1)表示{Rdis(x,y)}中坐标位置为(x1-di,y1)的像素点的像素值,
表示{Rdis(x,y)}中坐标位置为
的像素点的像素值。
②-b4、将{Ldis(x,y)}中下一个待处理的像素点作为当前第一像素点,将{Rdis(x,y)}中下一个待处理的像素点作为当前第二像素点,然后返回步骤②-b2继续执行,直至{Ldis(x,y)}和{Rdis(x,y)}中的所有像素点处理完毕,获得Sdis的视差空间图,记为{DSIdis(x,y,d)},其中,DSIdis(x,y,d)表示{DSIdis(x,y,d)}中坐标位置为(x,y,d)的像素点的视差空间值,DSIdis(x,y,d)的值为{Ldis(x,y)}中坐标位置为(x,y)的像素点和{Rdis(x,y)}中坐标位置为(x,y)的像素点在视差值d下的视差空间值,
③计算{DSIorg(x,y,d)}中的每个像素点的水平方向梯度、垂直方向梯度和视点方向梯度,将{DSIorg(x,y,d)}中坐标位置为(x,y,d)的像素点的水平方向梯度记为gxorg(x,y,d),将{DSIorg(x,y,d)}中坐标位置为(x,y,d)的像素点的垂直方向梯度记为gyorg(x,y,d),将{DSIorg(x,y,d)}中坐标位置为(x,y,d)的像素点的视点方向梯度记为gdorg(x,y,d)。
在此具体实施例中,步骤③中{DSIorg(x,y,d)}中的每个像素点的水平方向梯度、垂直方向梯度和视点方向梯度的获取过程为:
③-a1、采用如图2所示的水平梯度算子对{DSIorg(x,y,d)}进行卷积,得到{DSIorg(x,y,d)}中的每个像素点的水平方向梯度,将{DSIorg(x,y,d)}中坐标位置为(x,y,d)的像素点的水平方向梯度记为gxorg(x,y,d),
③-a2、采用如图3所示的垂直梯度算子对{DSIorg(x,y,d)}进行卷积,得到{DSIorg(x,y,d)}中的每个像素点的垂直方向梯度,将{DSIorg(x,y,d)}中坐标位置为(x,y,d)的像素点的垂直方向梯度记为gyorg(x,y,d),
③-a3、采用如图4所示的视点梯度算子对{DSIorg(x,y,d)}进行卷积,得到{DSIorg(x,y,d)}中的每个像素点的视点方向梯度,将{DSIorg(x,y,d)}中坐标位置为(x,y,d)的像素点的视点方向梯度记为gdorg(x,y,d),
上述步骤③-a1至步骤③-a3中,如果u<1,则DSIorg(u,v,j)的值由DSIorg(1,v,j)的值替代,如果u>W,则DSIorg(u,v,j)的值由DSIorg(W,v,j)的值替代,如果v<1,则DSIorg(u,v,j)的值由DSIorg(u,1,j)的值替代,如果v>H,则DSIorg(u,v,j)的值由DSIorg(u,H,j)的值替代,如果j<0,则DSIorg(u,v,j)的值由DSIorg(u,v,0)的值替代,如果j>dmax,则DSIorg(u,v,j)的值由DSIorg(u,v,dmax)的值替代,DSIorg(1,v,j)表示{DSIorg(x,y,d)}中坐标位置为(1,v,j)的像素点的视差空间值,DSIorg(W,v,j)表示{DSIorg(x,y,d)}中坐标位置为(W,v,j)的像素点的视差空间值,DSIorg(u,1,j)表示{DSIorg(x,y,d)}中坐标位置为(u,1,j)的像素点的视差空间值,DSIorg(u,H,j)表示{DSIorg(x,y,d)}中坐标位置为(u,H,j)的像素点的视差空间值,DSIorg(u,v,0)表示{DSIorg(x,y,d)}中坐标位置为(u,v,0)的像素点的视差空间值,DSIorg(u,v,dmax)表示{DSIorg(x,y,d)}中坐标位置为(u,v,dmax)的像素点的视差空间值。
同样,计算{DSIdis(x,y,d)}中的每个像素点的水平方向梯度、垂直方向梯度和视点方向梯度,将{DSIdis(x,y,d)}中坐标位置为(x,y,d)的像素点的水平方向梯度记为gxdis(x,y,d),将{DSIdis(x,y,d)}中坐标位置为(x,y,d)的像素点的垂直方向梯度记为gydis(x,y,d),将{DSIdis(x,y,d)}中坐标位置为(x,y,d)的像素点的视点方向梯度记为gddis(x,y,d)。
在此具体实施例中,步骤③中{DSIdis(x,y,d)}中的每个像素点的水平方向梯度、垂直方向梯度和视点方向梯度的获取过程为:
③-b1、采用如图2所示的水平梯度算子对{DSIdis(x,y,d)}进行卷积,得到{DSIdis(x,y,d)}中的每个像素点的水平方向梯度,将{DSIdis(x,y,d)}中坐标位置为(x,y,d)的像素点的水平方向梯度记为gxdis(x,y,d),
③-b2、采用如图3所示的垂直梯度算子对{DSIdis(x,y,d)}进行卷积,得到{DSIdis(x,y,d)}中的每个像素点的垂直方向梯度,将{DSIdis(x,y,d)}中坐标位置为(x,y,d)的像素点的垂直方向梯度记为gydis(x,y,d),
③-b3、采用如图4所示的视点梯度算子对{DSIdis(x,y,d)}进行卷积,得到{DSIdis(x,y,d)}中的每个像素点的视点方向梯度,将{DSIdis(x,y,d)}中坐标位置为(x,y,d)的像素点的视差方向梯度记为gddis(x,y,d),
上述步骤③-b1至步骤③-b3中,如果u<1,则DSIdis(u,v,j)的值由DSIdis(1,v,j)的值替代,如果u>W,则DSIdis(u,v,j)的值由DSIdis(W,v,j)的值替代,如果v<1,则DSIdis(u,v,j)的值由DSIdis(u,1,j)的值替代,如果v>H,则DSIdis(u,v,j)的值由DSIdis(u,H,j)的值替代,如果j<0,则DSIdis(u,v,j)的值由DSIdis(u,v,0)的值替代,如果j>dmax,则DSIdis(u,v,j)的值由DSIdis(u,v,dmax)的值替代,DSIdis(1,v,j)表示{DSIdis(x,y,d)}中坐标位置为(1,v,j)的像素点的视差空间值,DSIdis(W,v,j)表示{DSIdis(x,y,d)}中坐标位置为(W,v,j)的像素点的视差空间值,DSIdis(u,1,j)表示{DSIdis(x,y,d)}中坐标位置为(u,1,j)的像素点的视差空间值,DSIdis(u,H,j)表示{DSIdis(x,y,d)}中坐标位置为(u,H,j)的像素点的视差空间值,DSIdis(u,v,0)表示{DSIdis(x,y,d)}中坐标位置为(u,v,0)的像素点的视差空间值,DSIdis(u,v,dmax)表示{DSIdis(x,y,d)}中坐标位置为(u,v,dmax)的像素点的视差空间值。
④根据{DSIorg(x,y,d)}中的每个像素点的水平方向梯度、垂直方向梯度和视点方向梯度,计算{DSIorg(x,y,d)}中的每个像素点的三维梯度幅度,将{DSIorg(x,y,d)}中坐标位置为(x,y,d)的像素点的三维梯度幅度记为morg(x,y,d),
同样,根据{DSIdis(x,y,d)}中的每个像素点的水平方向梯度、垂直方向梯度和视点方向梯度,计算{DSIdis(x,y,d)}中的每个像素点的三维梯度幅度,将{DSIdis(x,y,d)}中坐标位置为(x,y,d)的像素点的三维梯度幅度记为mdis(x,y,d),
⑤根据{DSIorg(x,y,d)}和{DSIdis(x,y,d)}中的每个像素点的三维梯度幅度,计算{DSIdis(x,y,d)}中的每个像素点的客观评价度量值,将{DSIdis(x,y,d)}中坐标位置为(x,y,d)的像素点的客观评价度量值记为QDSI(x,y,d),
⑥根据{DSIdis(x,y,d)}中的每个像素点的客观评价度量值,计算Sdis的图像质量客观评价预测值,记为Q,其中,Ω表示{DSIdis(x,y,d)}中的所有像素点的坐标位置的集合,N表示{DSIdis(x,y,d)}中包含的像素点的总个数。
在此,采用宁波大学立体图像库和LIVE立体图像库来分析本实施例得到的失真的立体图像的图像质量客观评价预测值与平均主观评分差值之间的相关性。宁波大学立体图像库由12幅无失真的立体图像在不同失真程度的JPEG压缩情况下的60幅失真的立体图像、JPEG2000压缩情况下的60幅失真的立体图像、高斯模糊情况下的60幅失真的立体图像、高斯白噪声情况下的60幅失真的立体图像和H.264编码失真情况下的72幅失真的立体图像构成。LIVE立体图像库由20幅无失真的立体图像在不同失真程度的JPEG压缩情况下的80幅失真的立体图像、JPEG2000压缩情况下的80幅失真的立体图像、高斯模糊情况下的45幅失真的立体图像、高斯白噪声情况下的80幅失真的立体图像和Fast Fading失真情况下的80幅失真的立体图像构成。
这里,利用评估图像质量评价方法的4个常用客观参量作为评价指标,即非线性回归条件下的Pearson相关系数(Pearson linear correlation coefficient,PLCC)、Spearman相关系数(Spearman rank order correlation coefficient,SROCC),Kendall相关系数(Kendall rank-order correlation coefficient,KROCC),均方误差(root mean squared error,RMSE),PLCC和RMSE反映失真的立体图像客观评价结果的准确性,SROCC和KROCC反映其单调性。
利用本发明方法计算宁波大学立体图像库中的每幅失真的立体图像的图像质量客观评价预测值和LIVE立体图像库中的每幅失真的立体图像的图像质量客观评价预测值,再利用现有的主观评价方法获得宁波大学立体图像库中的每幅失真的立体图像的平均主观评分差值和LIVE立体图像库中的每幅失真的立体图像的平均主观评分差值。将按本发明方法计算得到的失真的立体图像的图像质量客观评价预测值做五参数Logistic函数非线性拟合,PLCC、SROCC和KROCC值越高,RMSE值越低说明客观评价方法与平均主观评分差值相关性越好。表1、表2、表3和表4给出了采用本发明方法得到的失真的立体图像的图像质量客观评价预测值与平均主观评分差值之间的Pearson相关系数、Spearman相关系数、Kendall相关系数和均方误差。从表1、表2、表3和表4中可以看出,采用本发明方法得到的失真的立体图像的最终的图像质量客观评价预测值与平均主观评分差值之间的相关性是很高的,表明客观评价结果与人眼主观感知的结果较为一致,足以说明本发明方法的有效性。
图5给出了利用本发明方法得到的宁波大学立体图像库中的每幅失真的立体图像的图像质量客观评价预测值与平均主观评分差值的散点图,图6给出了利用本发明方法得到的LIVE立体图像库中的每幅失真的立体图像的图像质量客观评价预测值与平均主观评分差值的散点图,散点越集中,说明客观评价结果与主观感知的一致性越好。从图5和图6中可以看出,采用本发明方法得到的散点图比较集中,与主观评价数据之间的吻合度较高。
表1 利用本发明方法得到的失真的立体图像的图像质量客观评价预测值与平均主观评分差值之间的Pearson相关系数比较
表2 利用本发明方法得到的失真的立体图像的图像质量客观评价预测值与平均主观评分差值之间的Spearman相关系数比较
表3 利用本发明方法得到的失真的立体图像的图像质量客观评价预测值与平均主观评分差值之间的Kendall相关系数比较
表4 利用本发明方法得到的失真的立体图像的图像质量客观评价预测值与平均主观评分差值之间的均方误差比较