立体视频视差图的几种计算方法

1、绝对差值法
  绝对差值图的计算方法如下:
  DA=|L-R|
  式中,L、R和DA分别代表左视图、右视图和对应的绝对差值图的亮度值。绝对差值图并不是严格意义上的视差图,但是它的计算方法最为简单,速度快,它给出的结果可以作为参考。

2、图割法
  全局匹配算法是立体匹配的一类主要算法。Hai Tao等人提出了一种立体匹配算法的新框架,该算法框架并不以窗口为单位,而是用一个全局能量函数来表征立体图像的匹配情况,并设法将这个全局能量函数最小化,从而得到立体图像的视差图像,这就是全局立体匹配算法的框架。全局立体匹配算法能够避免很多区域立体匹配算法中常见的错误,在低纹理区域有着很好的表现。图割法是全局匹配算法的一种代表算法,Boykov等首先将图论中图割法的思路应用到立体匹配算法当中。该研究提出了α、β交换和α扩展两种视差图优化思路,一次性将所有视差图中视差等于某个值的区域进行优化。算法采用图割法的思路,根据相邻点的相关度以及相邻点与假设视差的匹配程度,对原有像素和视差值之间的关系进行重新分配与调整,将立体匹配问题转换为求解最大流最小割的问题,直至全局能量函数最小化。
  在图割法开源代码的配置中,主要有效果与速度都较好的kz1方法(kz1、kz2和bvz共三种方法),视差范围设为[-30,30],迭代次数为3次。图割法输入输出的图像格式为ppm格式,读取yuv文件时,需要将yuv文件的每一帧转化为rgb格式,并加上头信息“P6”、“宽 高”和“255”,输入ppm格式图像;存储视差视频时,需要跳过ppm格式图像的头信息,将rgb信息转化为yuv格式。yuv与rgb间的转化公式如下:
  y= 16+0.183×r+0.614×g+0.062×b
  u=128+0.101×r+0.339×g+0.439×b
  v=128+0.439×r+0.399×g+0.040×b

  r=1.164×(y-16)+1.793×(v-128)
  g=1.164×(y-16)-0.213×(u-128)-0.533×(v-128)
  b=1.164×(y-16)+2.112×(u-128)

  图割法计算的视差图最为准确,但是它的速度非常慢,完成单帧视差图的计算都需要几分钟,并不适用于立体视频质量客观评价方法,但是它给出的结果可以作为参考。

3、基于固定窗口的区域匹配法
  区域匹配最为简单的形式就是将整幅图像分割成许多子区域,然后对所有子区域的亮度信息或灰度分布信息进行相似性度量。它是以基准图的待匹配点为中心创建一个窗口,当窗口大小固定时,该区域匹配法就是基于固定窗口的。用该窗口内的灰度值分布来表征该像素,然后在对准图中搜索这么一个像素,以其为中心创建同样的一个窗口,并用其邻域像素的灰度值分布来表征它,根据匹配准则约束来搜索最佳的匹配,两者间的相似性必须满足一定的阈值条件。实质是利用局部窗口之间的灰度信息的相关度,将图像对量化为许多图像块而确定对应的区域。匹配过程如图所示:
          立体视频视差图的几种计算方法_第1张图片
  在区域匹配法的配置中,固定窗口大小为11×11,视差范围设为[-64,64]。利用基于固定窗口的区域匹配法计算得到的视差图准确度很差,但是它的速度非常快,它给出的结果可以作为参考。

4、左右一致性约束原理
  一个像素点只能对应一个视差值,这种约束称为立体匹配当中的唯一性约束。由于一个像素点不会有2个以上的视差值,这种约束也可以描述为参考图像与目标图像中匹配点都应是一一对应的,即左右一致性约束。
  立体视频视差图的几种计算方法_第2张图片
  被遮掩区域只在单眼或单个摄像机上成像,参考图像中的某一个点在目标图像中无法寻找到对应的匹配点,这时,若仅仅计算参考图像的视差图时,很有可能出现一个像素点有2个以上的视差值满足阈值条件的情况,从而违反左右一致性约束,导致匹配错误。
  如果把参考图像与目标图像位置对调,对视差搜索范围取反,则能够以目标图像为依据,在参考图像中寻找对应点,进行一次新的匹配,这种匹配称为立体匹配中的反向匹配。相应的,一般的匹配过程称为立体匹配中的正向匹配。若同时对立体图像对进行正向匹配和反向匹配两个过程,就能够发现违反左右一致性约束的误匹配点,这个过程被称为左右一致性检测。
  利用基于固定窗口的区域匹配法计算得到的视差图准确度很差,但经过左右一致性检测后,排除了不精确部分,提高了所获取的深度信息的准确度,计算经过左右一致性检测的区域视差图的速度也很快。

你可能感兴趣的:(视频质量评价)