一种基于zncc算法的实时立体匹配系统和方法

文档序号:8473457阅读:3934来源:国知局
一种基于zncc算法的实时立体匹配系统和方法
【技术领域】
[0001] 本发明属于计算机视觉技术领域,尤其涉及一种基于ZNCC算法的实时立体匹配 系统和方法。
【背景技术】
[0002] 在三维重建过程中,一般需要利用两个或多个图像传感器采集图像,其类似于人 眼视觉的机制,通过对采集到的同一场景的两幅或多幅图像进行立体匹配,通过立体匹配 找出图像之间的视差,再利用图像采集的三角关系确定场景中人物或物体的深度信息。在 立体匹配过程中,通过选择匹配算法、匹配基元、相似性判断标准进行,在完成匹配后,可以 得出场景中物体的视差图。然而,在实际应用过程中,当立体匹配计算量较大时,难以实现 实时的立体匹配效果。

【发明内容】

[0003] 为了解决【背景技术】中存在的技术问题,本发明提出了一种基于ZNCC算法的实时 立体匹配系统和方法,实现了实时的立体匹配效果,其可靠性和准确性高。
[0004] 本发明提出的一种基于ZNCC算法的实时立体匹配系统,包括:积分图计算模块、 ZNCC算子计算模块、WTA匹配代价计算模块、深度信息计算模块;
[0005] 所述积分图计算模块,用于计算目标图像和参考图像中像素点的像素值和积分 图;
[0006] 所述ZNCC算子计算模块,与所述积分图计算模块连接,用于根据目标图像和参考 图像中像素点的像素值和积分图,通过ZNCC算法计算目标图像中每个像素点与参考图像 中处于不同视差的像素点进行立体匹配的ZNCC算子;
[0007] 所述WTA匹配代价计算模块,与所述ZNCC算子计算模块连接,用于根据目标图像 中每个像素点与参考图像中处于不同视差的像素点进行立体匹配的ZNCC算子,通过卷积 算法计算目标图像中每个像素点在不同视差下WTA匹配代价,并通过比较不同视差下WTA 匹配代价得到目标图像中每个像素点的最优视差;
[0008] 所述深度信息计算模块,与所述WTA匹配代价计算模块连接,用于根据目标图像 中像素点的最优视差图结合投影立体三角关系计算目标图像中每个像素点的深度信息,完 成目标图像的实时立体匹配。
[0009] 优选地,所述积分图计算模块计算目标图像和参考图像中像素点的像素值和积分 图具体包括:计算目标图像和参考图像中每个像素点在第一窗口内所有像素点的像素值之 和,得到目标图像和参考图像中像素点的像素值和积分图;
[0010] 优选地,所述第一窗口以起始像素点(〇,〇)至当前像素点(X,y)为对角顶点的矩 形窗口;优选地,所述起始像素点(〇,〇)为图像左上角处于顶点位置的像素点;
[0011] 优选地,采用行前缀加法和列前缀加法计算目标图像和参考图像中每个像素点在 第一窗口内所有像素点的像素值之和;
[0012] 优选地,先采用行前缀加法计算目标图像和参考图像中每个像素点所在行的前缀 和,得到行积分图并进行矩阵转置,然后采用列前缀加法计算目标图像和参考图像中每个 像素点所在列的前缀和,得到列积分图并进行矩阵转置,从而得到目标图像和参考图像中 像素点的像素值和积分图;
[0013] 或者,先采用列前缀加法计算目标图像和参考图像中每个像素点所在列的前缀 和,得到列积分图并进行矩阵转置然后采用行前缀加法计算目标图像和参考图像中每个像 素点所在行的前缀和,得到行积分图并进行矩阵转置,从而得到目标图像和参考图像中像 素点的像素值和积分图;
[0014] 优选地,在计算像素点(X,y)的像素值之和时,按照以下方式进行:
【主权项】
1. 一种基于ZNCC算法的实时立体匹配系统,其特征在于,包括:积分图计算模块、ZNCC 算子计算模块、WTA匹配代价计算模块、深度信息计算模块; 所述积分图计算模块,用于计算目标图像和参考图像中像素点的像素值和积分图; 所述ZNCC算子计算模块,与所述积分图计算模块连接,用于根据目标图像和参考图像 中像素点的像素值和积分图,通过ZNCC算法计算目标图像中每个像素点与参考图像中处 于不同视差的像素点进行立体匹配的ZNCC算子; 所述WTA匹配代价计算模块,与所述ZNCC算子计算模块连接,用于根据目标图像中每 个像素点与参考图像中处于不同视差的像素点进行立体匹配的ZNCC算子,通过卷积算法 计算目标图像中每个像素点在不同视差下WTA匹配代价,并通过比较不同视差下WTA匹配 代价得到目标图像中每个像素点的最优视差; 所述深度信息计算模块,与所述WTA匹配代价计算模块连接,用于根据目标图像中像 素点的最优视差图结合投影立体=角关系计算目标图像中每个像素点的深度信息,完成目 标图像的实时立体匹配。
2. 根据权利要求1所述的基于ZNCC算法的实时立体匹配系统,其特征在于,所述积分 图计算模块计算目标图像和参考图像中像素点的像素值和积分图具体包括;计算目标图像 和参考图像中每个像素点在第一窗口内所有像素点的像素值之和,得到目标图像和参考图 像中像素点的像素值和积分图; 优选地,所述第一窗口W起始像素点化0)至当前像素点(X,y)为对角顶点的矩形窗 口;优选地,所述起始像素点化0)为图像左上角处于顶点位置的像素点; 优选地,采用行前缀加法和列前缀加法计算目标图像和参考图像中每个像素点在第一 窗口内所有像素点的像素值之和; 优选地,先采用行前缀加法计算目标图像和参考图像中每个像素点所在行的前缀和, 得到行积分图并进行矩阵转置,然后采用列前缀加法计算目标图像和参考图像中每个像素 点所在列的前缀和,得到列积分图并进行矩阵转置,从而得到目标图像和参考图像中像素 点的像素值和积分图; 或者,先采用列前缀加法计算目标图像和参考图像中每个像素点所在列的前缀和,得 到列积分图并进行矩阵转置然后采用行前缀加法计算目标图像和参考图像中每个像素点 所在行的前缀和,得到行积分图并进行矩阵转置,从而得到目标图像和参考图像中像素点 的像素值和积分图; 优选地,在计算像素点(x,y)的像素值之和时,按照W下方式进行: 在行前缀加法计算时,其计算公式如下:
根据行前缀加法计算结 果,在列前缀加法计算时,其计算公式如下:
'从而得到像素点(x,y)在 第一窗口内所有像素点的像素值之和; 优选地,在行前缀加法的计算过程中,采用多个线程对多行并行计算,或者,在列前缀 加法的计算过程中,采用多个线程对多列并行计算。
3. 根据权利要求1或2所述的基于ZNCC算法的实时立体匹配系统,其特征在于,所述 ZNCC算子计算模块通过ZNCC算法计算目标图像中每个像素点与参考图像中处于不同视差 的像素点进行立体匹配的ZNCC算子,ZNCC算法的计算公式如下;
其中,Z(x,y,d)为目标图像T中像素点(x,y)与参考图像R中处于视差d的像素点进 行立体匹配的ZNCC算子,d为参考图像的视差距离, St(x,y)为目标图像T上像素点(X,y)在第二窗口内所有n个像素点的像素值之和,STT(x,y)为目标图像T上像素点(X,y)在第二窗口内所有n个像素点的像素值平方之和, Sc(x,y,d)为参考图像R中处于视差d的像素点(x±d,y)在第二窗口内所有n个像素点的 像素值之和,Sw(x,y,d)为参考图像R中处于视差d的像素点(x±d,y)在第二窗口内所有 n个像素点的像素值平方之和,S?(x,y,d)为目标图像T上像素点(X,y)在第二窗口内所 有n个像素点和参考图像R中处于视差d的像素点(x±d,y)在第二窗口内所有n个像素 点的对应像素值乘积之和; 优选地,所述第二窗口是W像素点(X,y)为基准点,向左、右分别平移kl、k2个像素 点并且向下、上分别平移k3、k4个像素点,W平移得到的像素点作为第二窗口中各边的中 屯、点,从而得到矩形的第二窗口,其长和宽分别为kl+k2+l和k3+k4+l,在第二窗口中,n= (kl+k化1)X化3+k4+l); 在所述第二窗口中ZNCC算法的各个参数可表达如下:
优选地,1^1、1^2、1^3、1^4的取值与目标图像的分辨率成正比关系;优选地,^ = 1^2 = 1^3 =k4 ;优选地,对于分辨率为1024X768的目标图像,kl=k2 =k3 =k4 = 10 ; 优选地,在计算目标图像中每个像素点与参考图像中处于不同视差的像素点进行立体 匹配的ZNCC算子时,采用多个线程对多个像素点并行计算,每个线程对一个像素点在不同 视差下的ZNCC算子进行计算。
4. 根据权利要求1-3中任一项所述的基于ZNCC算法的实时立体匹配系统,其特征在 于,所述WTA匹配代价计算模块通过卷积算法计算目标图像中每个像素点在不同视差下 WTA匹配代价,具体包括;根据目标图像中每个像素点与参考图像中处于不同视差的像素 点进行立体匹配的ZNCC算子,通过设置卷积矩阵,计算卷积矩阵与目标图像中每个像素点 在第S窗口内所有m个像素点在视差d下的ZNCC算子的对应乘积之和,得到目标图像中每 个像素点在视差d下的WTA匹配代价,卷积矩阵的行列数与第S窗口中像素点矩阵的行列 数分别相等; 优选地,在计算目标图像中像素
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1