【发明内容】
本发明所要解决的技术问题在于采用基于立体图像对的立体图像显示方法,让观赏者不需要佩戴立体眼镜,裸眼即可观赏到高效率,高保真的立体图像画面。
本发明是通过以下技术方案解决上述技术问题的:
一种基于立体图像对的立体图像显示方法,包括如下步骤:
步骤一:首先通过立体摄像机对准同一对象以不同的角度所拍摄的两幅图像,即立体图像对;
步骤二:对所述采集到的立体图像对进行矫正和重采样,通过对所述立体图像对进行极线校正,获得满足纯平移关系的两幅新图像,以实现双目图像的致密匹配;
步骤三:对所述经过重采样的立体图像对进行密集匹配,建立点与点之间的对应关系;
步骤四:由所述经过重采样的立体图像对插补出给定视点下的新图像;
步骤五,对所述新图像进行反矫正,获得新视点下的体式图像;最后,将该图像在自由立体显示器上显示。
现有的立体摄像机具有两个间距约为人眼间距的镜头,在拍摄时分别记录下由于间距产生的两幅有细微差别的图象,模拟人眼,经过计算机合成后也就成为三维图象。所述立体图像对可以利用两部摄像获取设备,如数码相机或者计算机模拟的相机,在同一水平面,按照直线或者弧线路径,所述获取装置镜头要对准同一对象以不同的角度所拍摄的两幅图像。
本发明的优点在于:通过本发明的应用,可以得到很好的立体效果和立体观感,该方法可以广泛应用于光栅LCD类型的自由立体显示设备中,对于大力推动立体显像设备的产业化,具有重要的实用意义。
【具体实施方式】
现将有关发明的详细内容及技术说明,配合附图说明如下:
参见图1、图2,图2是本发明的立体图像对生成体式图像的坐标系示意图。在图中我们对视点做了如下定义:设摄像机坐标系关于世界坐标系的旋转矩阵为R,平移变量为T,则称摄像机位于视点(R|T)。设11,12分别为某场景在两个不同视点(I|O)和(R|T)下的图像,其中I为单位矩阵(以第一个摄像机所在的坐标系为参考坐标系,R和T分别为第二个摄像机相对于第一个摄像机的旋转和平移)。如图1所示,由原图像I1,I2,求摄像机在新视点cs(Rs,Ts)下的图像Is(λ,β)的过程就称为图像插补。
1>对原图像对进行矫正和重采样,使得校正后的图像对满足纯平移关系:它们的视差仅在平行于X轴方向上,这样进行匹配时仅需要沿着一条水平线找对应点就可以了。进行矫正和重采样的过程如下:
1.1>首先将图像坐标原点移到图像的中心:设图像中心坐标为x
0,其齐次坐标表示为(u,v,1)
T,可构造变换
图像I2的对极点e2经此变换后为e′2=Te2。
1.2>接着构造旋转矩阵R,使对极点e′
2被旋转到x轴上的点(f,0,1)
T。令e′
2=(e′
2x,e′
2y,1)
T,
则R可选择为
对极点e′
2经此变换后为
最后,构造变换矩阵G,映射对极点e″2到无穷远点,G可选择为
且将对极点e″2变换到无穷远点e′″2=Ge″2=(f,0,0)T。
综合以上各步可知,合成变换H2=GRT把原图像的对极点e2变换到无穷远点(f,0,0)T。
1.3>接下来就是把一个映射施加到第一幅图像上,使得两幅图像的对极线相互匹配。
设原图像为I1,I2,需要对两幅图像进行重采样,分别施加两个射影变换H1,H2作用于I1,I2。令I1,I2是具有基本矩阵F=[e′]xM的两幅图像(e′是F的左零矢量,M=[e′]xF+e′vT,其中v为任意三维列矢量),其中H1=(1+H2e2aT)H2M。
利用上述方法可以求得变换H1,分别用H1,H2矫正I1,I2,使得重采样后的图像对应的对极线平行于x轴,而对应点的y坐标相等。
利用上述的射影变换H1和H2矫正两幅原图像,并分别进行重采样就可获得两幅新图像。
2>密集匹配,对两幅图像进行了矫正和重采样,下面就是对这两幅图像进行密集匹配步骤如下:
2.1>对第一幅图像扫描线上的点进行一阶差分滤波,检测出角点,这里采用如下一阶高斯差分滤波器对图像进行离散卷积运算:
其中c是归一化常数,它可由公式
求得,σ通常取常数1,在实际使用中,h(n)可用一个长度为2N+1的窗口内的值表示,N取2的情况见图3所示。
2.2>由第一幅图像上某一扫描线上检测到的角点,利用灰度相关匹配算法[6]在第二幅图像的同一扫描线上寻找对应的角点。
2.3>用仿射变换建立较为准确的点与点的对应关系。设(u
1,v
1),(u′
1,v′
1)与(u
2,v
2),(u′
2,v′
2)为两对对应的角点,其中(u
1,v
1),(u
2,v
2)是I
1上的点,(u′
1,v′
1),(u′
2,v′
2)是I
2上的点,它们在同一扫描线上,v
1=v
1′=v
2=v
2′。设(u,v)为(u
1,v
1),(u
2,v
2)之间的任一点,u
1≤u≤u
2,于是有
其中u′=u+δ,v′=v,点(u′,v′)在(u′
1,v′
1),(u′
2,v′
2)之间,它与(u,v)是一对对应点。这样就完成了点与点的对应。
3>图像插补,该方法的步骤如下:
3.1>确定插补图像像素位置
为确定图像像素位置,首先构造一个如下形式的Warp函数:
W(U1,s)=sU1+(1-s)f(U1)
其中s∈[0,1],U1表示图像I1上点,f表示图像I1,I2之间的对应关系,W表示插补图像上的点。为了使图像是新视点下的像,进一步对Warp函数进行改进,即令U1=(u1,v1)T∈I1和U2=(u2,v2)T∈I2为一对对应点,Us=(us,vs)T表示对应的插补图像点,那么此时Warp函数的形式为:
Us=sU1+(1-s)U2
将对应点坐标代入上式,得
3.2>确定插补图像像素灰度
假定两个视点下所对应的原图像I
1,I
2光照条件不变,从而两幅原图像I
1,I
2中的对应点的灰度值差别不大,因此插补图像的灰度可以用下面的算法近似估计。令
设对应点U
1∈I
1,U′
1=f(U
1)∈I
2的灰度值分别为r(U
1),r(U′
1),
上的对应点W(U
1,s)的灰度值为r(W(U
1,s))=sr(U
1)+(1-s)r(U′
1)综合上述算式得出原图像I
1,I
2的插补图像为
4>反矫正得到实际的体式图像
通过上述方法得到了插补图像,但这样的图像并不是新视点下的真实图像,因此需要通过变换矩阵Hs=sH1+(1-s)H2对该图像进行反矫正处理,最终得到新视点下的体式图像。
用上述方法我们可以获得新视点下的体式的插补图像,但是在插补过程中无法避免会出现空洞现像(参见图4)和重叠现像(参见图5)。为了得到较好的插补结果,空洞中的像素灰度值可以利用邻近插值法获得,重叠部分的像素灰度可取该像素上多个灰度的平均值。
目前,通过立体图像配合光栅技术显示方式是比较好的技术之一,随着科技的进步,薄、轻的平板显示器已经代替CRT显示器,使得我们能将立体显示技术应用于液晶显示器成为可能。通过液晶自由立体显示器,我们不仅能看到一般立体静画影像,还能看到交互式的实时立体影像。通过结合立体图像对的体式显示技术,可以将大量实时采集的图像转化成任意视点的体式图像,给立体显示器更大的使用空间。