具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明第一实施例的方法流程示意图,包括:
步骤11:校正装置获取摄像机到3D弧幕的映射关系;
其中,摄像机到3D弧幕的映射关系可以通过两个虚拟平幕作为中间参数确定,此时可以包括:根据摄像机图像与虚拟摄像机图像的映射关系,以及虚拟摄像机图像与虚拟2D平幕的映射关系,得到摄像机与虚拟2D平幕的映射关系;根据所述摄像机与虚拟2D平幕的映射关系,以及虚拟2D平幕与3D弧幕的映射关系,得到摄像机到3D弧幕的映射关系。
或者,摄像机到3D弧幕的映射关系也可以通过摄像机内外参数作为中间参数确定,此时可以包括:根据对3D弧幕的拍摄图像,及所述3D弧幕的几何信息,求解摄像机内外参数;根据所述摄像机内外参数及所述3D弧幕的2D坐标,得到摄像机到3D弧幕的映射关系。
上述两种方法可以具体参见下述实施例。
步骤12:校正装置根据投影仪到摄像机的映射关系、所述摄像机到3D弧幕的映射关系以及3D弧幕到输入超分辨率图像映射关系,得到投影仪帧缓存图像变换映射表;
其中,通过步骤11可以确定摄像机到3D弧幕的映射关系FC→D。
另外,投影仪到摄像机的映射关系Fi P→C(i=1,2,3)(以3个投影仪进行拼接为例)可以采用现有技术实现,例如,可以采用如下方式确定:
1)制作特征blob模板图;
2)3个投影仪分别投影到3D弧幕;
3)分别由固定位置与参数的摄像机拍摄,获得3个摄像机图像;
4)对该3个摄像机图像进行特征检测,并建立与已知特征blob位置信息的模板图间的点对映射关系;此时的映射是稀疏的。
5)应用Rational Bezier Patch曲面插值算法,建立致密的投影仪到摄像机图像的映射。
至此,将得到的致密的投影仪到摄像机图像的映射作为上述的投影仪到摄像机图像的映射关系Fi P→C(i=1,2,3)。
再者,3D弧幕到输入超分辨率图像映射关系FD→Su可以采用如下方式确定:
此映射变换公式如下:
(mx,my)=FD→Su(s,t)=(s,t)
其中,
D表示投影幕(Display),Su表示输入超分辨率(SuperImage)图像;
(mx,my),(s,t)分别为输入超分辨率图像中的点,3D弧幕的2D坐标点;
由于输入超分辨率图像的坐标含义与3D弧幕的2D坐标定义一致,则显然有:
因此,FD→Su为单位变换。
通过上述计算,得到了投影仪到摄像机的映射关系Fi P→C(i=1,2,3)、摄像机到3D弧幕的映射关系FC→D以及3D弧幕到输入超分辨率图像映射关系FD→Su,之后,可以根据上述3个映射关系,得到投影仪帧缓存图像变换映射表。具体可以如下:
其中,(x,y)为投影仪帧图像点的坐标。
之后,根据
得到投影仪帧图像中某一点对应的输入超分辨率图像中的点,根据输入超分辨率图像中的点计算颜色值并赋给该投影仪帧图像中的点,例如,(x1,y1)对应(m
x1,m
y1),则可以将m
x1,m
y1邻近的点(点的个数可以设定)进行插值计算得到的颜色值赋给(x1,y1)。
之后,通过颜色比对确定投影仪帧缓存图像变换映射表:另RGB(x,y)=RGB(mPW_x,mPW_y),则得到点(x,y)到点(mPW_x,mPW_y)的映射Fi P→PW(i=1,2,3),RGB(mPW_x,mPW_y)的值为输入超分辨率图像中的点的颜色值。即选取一个点(x,y),计算得到该点的颜色值RGB(x,y),之后找到具有相同颜色值RGB(x,y)=RGB(mPW_x,mPW_y)的点(mPW_x,mPW_y),即得到变换关系:
上述的RGB()表示颜色值。
至此则得到了投影仪帧缓存图像变换映射表Fi P→PW(i=1,2,3)。
步骤13:校正装置根据所述投影仪帧缓存图像变换映射表,对投影仪要投影的图像进行几何配准校正。
即,在得到投影仪帧缓存图像变换映射表Fi P→PW(i=1,2,3)之后,可以对投影仪中的缓存图像进行几何配准校正,即校正后的点的坐标(mPW_x,mPW_y)与校正前点的坐标(x,y)的关系为:(mPW_x,mPW_y)=Fi P→PW(x,y)(i=1,2,3)。
另外,上述的校正装置可以为独立的装置,其对投影仪中待缓存的图像进行上述几何配准校正后,将校正后的图像发送给投影仪进行缓存后投影。也可以是,该校正设备内嵌在投影仪中以在缓存前进行校正。
本实施例在求解投影仪帧缓存图像变换映射表时,所需的图像映射关系较少,因此可以采用较少的图像映射实现多投影时的几何校准,实现方法简便易行。
图2为本发明第二实施例的方法流程示意图,本实施例以摄像机内外参数作为中间参数确定摄像机到3D弧幕的映射关系。参见图2,本实施例包括:
步骤21:根据对3D弧幕的拍摄图像,及所述3D弧幕的几何信息,求解摄像机内外参数;
优选的,本发明实施例的3D弧幕的几何信息是已知的。
在实际多点视频会议应用中,3D弧幕,特别是柱面弧幕多投影系统更能给用户带来沉浸式体验,本地与远端用户更有身处同一会场的感觉。
并且,柱面弧幕产品化,大批量定制化更容易,柱面弧幕的规格容易实现定制下来。规则化的、已知信息的3D柱面弧幕用于多投影拼接系统中,在求解各种变换映射时,就没有必要再去求解投影幕几何信息了,直接使用已知几何信息即可。
而现有技术中通常使用各种复杂的方式求解该3D弧幕的几何信息,但是,随着3D弧幕定制化的出现,本发明实施例可以采用定制化的3D弧幕,即可以在几何校准时获取已知的3D弧幕的几何信息。当然,如果对几何校正有非常高的精度要求,也可以将已知的3D弧幕信息作为3D弧幕几何信息的初始估计,之后再采用各种方法获取更为精确的3D弧幕几何信息。
求解摄像机内外参数可以如下:
首先,关于3D弧幕:
图3为本发明实施例中3D弧幕在世界坐标系中的图像及摄像机对该3D弧幕的拍摄图像的示意图,参见图3,3D弧幕包括4个顶点A、B、C和D,3D弧幕的上下两个曲线分别为圆弧AB和圆弧CD,左右线段分别为线段AD和线段BC。
当3D弧幕的几何信息是已知的,则线段AB、CD、AD、BC的长度、圆弧AB的长度、圆弧CD的长度、圆弧AB的半径及圆弧CD的半径均是已知的。
其次,关于3D与2D的对应关系:
摄像机采用的是针孔模型,图4为本发明实施例中摄像机针孔成像模型的示意图,在该针孔模型下,摄像机按透视射影变换将3D世界空间P3的点的齐次表达式为M=(x,y,z,1)T,投影到2D图像空间P2的点的齐次表达式为m=(u,v,1)T。用公式标定可写成:
m≈HM=K(R T)M
其中,H表示3×4的摄像机投影矩阵,≈表示方程两边在相差一个比例因子的意义下相等。(R T)为由R和T组成的一个大矩阵。假设摄像机光心不在无穷远平面上,摄像机投影矩阵H可做如下分解:
H=K(R T)
K、R、T为待求解的摄像机内外参数,其中,K为摄像机的内部参数,R为摄像机相对于世界坐标系的旋转矩阵,T为摄像机相对于世界坐标系的平移矩阵。
摄像机内外参数可以参照如下描述:
摄像机标定的目的是获得摄像机的内部参数K和外部参数(包括旋转矩阵R和平移向量T),摄像机内部的几何和光学特性,即为内部参数;摄像机坐标系相对于空间坐标系的位置关系,即为外部参数。
K为一个表示摄像机内部参数的上三角矩阵,如下:
其中,fu是图像u方向(横向)以像素为单位的放大倍数;
fv是图像v方向(纵向)以像素为单位的放大倍数;
s是相应于相机坐标轴扭曲的畸变因子;
Cou、Cov是以像素为单位的主点的坐标。
参数fu和fv与摄像机的焦距有密切的联系。在摄像机的感光阵列中包含的像素是正方形像素的情况下(即fu=fv),若s=0,则fu和fv即是以像素为单位的摄像机焦距;若感光阵列中包含的像素是非正方形像素(比如CCD摄像机),则fu是焦距f与u方向像素的大小的比值,fv是焦距f与v方向像素的大小的比值。
在实际运算中,可令fu=fv=f,f为摄像机焦距;
可令:s=0;
可令:Cou和Cov均为图像分辨率的一半。
采用Tsai以及张正友棋盘标定法,上述假设在通用品牌的标清或高清摄像机中是切实可行的。
由于图像分辨率是已知的,在上述假设条件下,需要求解的参数为f。
旋转矩阵R是三个轴向的、摄像机坐标系相对于世界坐标系的3×3阶旋转向量,包括3个需要求解的参数;平移向量T是摄像机坐标系相对于世界坐标系的3×1阶平移向量,包括3个需要求解的参数。
综上所述,在求解摄像机的内外参时,需要求解的参数为7个。
另外,根据上述的3D与2D的关系,在设定摄像机内外参数初始值后,可以获取3D弧幕的几何信息对应的2D图像信息。
再次,关于摄像机对3D弧幕的拍摄图像:
第一步,确定拍摄图像的四个角点的2D坐标:
四个角点在摄像机图像中的2D坐标,分别为mA,mB,mC,mD。
为了更加鲁棒地获得3D弧幕的四个角点,采取基于图像分割检测算法检测3D弧幕轮廓,再进一步对封闭的轮廓的采样点进行研判。
①任取封闭轮廓中采样点,求该点位置处的高斯核差分(Difference-of-Gaussian,DoG),DoG算子如下式所示:
D(x,y,σ)=(G(x,y,kσ)*I(x,y))=L(x,y,kσ)-L(x,y,σ)
②计算该点位置处的梯度方向
θ(x,y)=tan-1((L(x,y+1)-L(x,y-1))/(L(x+1,y)-L(x-1,y)))
③取所有采样点的DoG进行分析,取一个阈值T
该阈值需要实测确定,类同于特征点检测法SIFT、SURF阈值。
④由该阈值T研判采样点是否属于四个角点。
将大于T的采样点作为角点,若符合条件的点多于四个,进一步判断是否属于接近于图像四边的角点位置,若还是有更多的满足的点,则取这些点聚类的平均值作为角点。
至此,求得了摄像机图像点mA,mB,mC,mD的坐标。
第二步,确定拍摄图像的曲线的2D坐标:
①对输入图像,采取图割,如最小割、MeanShift颜色分割方法获得柱面弧幕轮廓;
②检测弧幕的四个角点,该检测也可手动进行;
③基于四个角点所规范的电子坐标范围,确定曲线上所有致密采样点,统计点数;
④基于③,多项式最小曲线拟合,采样上下曲线轮廓。
综上,通过上述步骤,可以获取摄像机对所述3D弧幕的拍摄图像的信息,及所述3D弧幕的几何信息对应的2D坐标(与摄像机内外参数相关),之后,根据上述两个参数,可以求解摄像机内外参数。
具体地,可以采用等间隔采样点重投方式,或者采用线线重投方式进行求解。下面分别描述:
图5为本发明实施例中求解摄像机内外参数的实现方式一的流程示意图,本实施例以等间隔采样点重投方式为例,参见图5,包括:
步骤51:根据拍摄图像中上下曲线的点的数目,对3D弧幕的上下曲线进行等间隔采样,并建立拍摄图像的点与3D弧幕的采样点之间的对应关系。
其中,等间隔采样是指将曲线划分为设定个数的等间隔的曲线段,每个曲线段的端点即为等间隔采样的采样点。
例如,以曲线AB为例,如果拍摄得到的曲线AB的点的个数为n+1,则对3D弧幕的曲线AB进行采样,得到n+1个采样点且每两个采样点之间的曲线间距相同,并且拍摄图像的第1个点与3D弧幕的第一个采样点是对应的。
步骤52:计算拍摄图像中点的2D坐标m与3D弧幕的采样点对应的2D坐标m′的误差和。
例如,通过公式simi=K(R T)Mi以及3D弧幕的采样点的3D坐标,可以获取对应的2D坐标,而在计算3D对应的2D坐标时,可以采用初始设定的摄像机内外参数进行求解,而在拍摄图像中各点的2D坐标是已知的,因此,可以获取上述的误差和:
其中,mi是点i的摄像机拍摄图像的坐标,m’i是采样点i的3D弧幕对应的2D坐标。
步骤53:判断该误差和E是否满足精度要求,若是,执行步骤54,否则,执行步骤55。
即:|E-eps|是否趋近于0(该绝对值是否小于等于一个预设的阈值,该阈值可以选为接近于0的值)。
步骤54:若趋近于0,则将所求的7个未知参数确定为设定的摄像机内外参数,即获取了摄像机内外参数。
步骤55:更新摄像机内外参数。之后,重复执行步骤52。
其中,在设定及更新摄像机内外参数时可以采用Levenberg-Marquardt优化算法。
图6为本发明实施例中求解摄像机内外参数的实现方式二的流程示意图,本实施例以线线重投方式为例,参见图6,包括:
步骤61:计算3D弧幕的曲线对应的2D曲线;
具体地,可以等间隔采样3D圆弧AB(或圆弧CD),根据初始设定的摄像机内外参数,逐点重投该圆弧AB到图像中获得对应的2D图像点;等间隔采样可以参见步骤51中的相关描述。
之后,可以采用最小二乘法,多项式曲线拟合等对这些2D图像点进行拟合得到对应的2D曲线。;
步骤62:计算3D弧幕的曲线对应的2D曲线与拍摄图像的曲线之间的距离E。
步骤63:判断该距离E是否满足精度要求,若是,执行步骤64,否则,执行步骤65。
即:|E-eps|是否趋近于0(该绝对值是否小于等于一个预设的阈值,该阈值可以选为接近于0的值)。
步骤64:若趋近于0,则所求的7个未知参数获得了,即获取了摄像机内外参数。
步骤65:更新摄像机内外参数。之后,重复执行步骤61。
其中,在设定及更新摄像机内外参数时可以采用Levenberg-Marquardt优化算法。
步骤22:根据所述摄像机内外参数及所述3D弧幕的2D坐标,得到摄像机到3D弧幕的映射关系;
其中,根据上述的针孔模型得到的3D与2D的对应关系,根据该摄像机内外参数,可以得到摄像机到3D弧幕的映射关系。具体可以如下:
输入:摄像机内部参数K、外部参数R和T,以及3D弧幕的2D坐标。其中,
T1×3=[t1 t2 t3];
上述的K、R、T可以通过图5或图6得到;
3D弧幕的2D坐标:
其中:①、(X,Y,Z)为3D弧幕在世界坐标系下的点的坐标;
②、Z=f(X)
t为高度,s为弧长。
输出:FC→D(摄像机图像到3D弧幕映射关系)。
具体计算过程可以如下:
图像点m=(u,v)与3D弧幕点M=(X,Y,Z)的成像几何关系如下:
同理,为M的齐次坐标,
K为摄像机内部参数;R、T分别为摄像机外部参数。
之后,将
转化成2D参数化(s,t),即采用
Z=f(X)可以由
得到对应的(s,t),另外,
也与
对应,因此,可以得到摄像机到3D弧幕的映射关系F
C→D,其中,(s,t)=F
C→D(u,v)。
步骤23:根据投影仪到摄像机的映射关系、所述摄像机到3D弧幕的映射关系以及3D弧幕到输入超分辨率图像映射关系,得到投影仪帧缓存图像变换映射表;
步骤24:根据所述投影仪帧缓存图像变换映射表,对投影仪要投影的图像进行几何配准校正;
其中,步骤23~24的内容可以参见步骤12~13所示。具体地,上述各映射关系的计算过程可以如下:
投影仪帧缓存图像坐标:
(xi,yi),i=0,1,...,1920×1080
其中:
①(xi,yi)为第i个投影仪帧缓存图像像素点坐标,单位为pixel;
②、x∈[0,1919],y∈[0,1079]
摄像机图像坐标:(u,v)
其中,
①(u,v)为摄像机图像的像素点坐标,单位为pixel;
②u∈[0,1919],v∈[0,1079]
参见图7,3D弧幕的2D参数坐标点:(s,t)
其中,
①t表示幕的高度;
注:令s或t的单位为pixel,方便与输入超分辨率图像统一。
参见图8,与3D弧幕所对应的输入超分辨率图像坐标:(mx,my)
mx为图像中任一点到x轴距离,my为图像中任一点到y轴距离,本质含义同3D弧幕的2D参数s和t。
mx,my单位为pixel,mx∈[0,1920*3-1],my∈[0,1080*3-1]
在实际实现中,
①输入的超分辨率原始图像大小为5760×1080;
②可令3D弧幕的高度为1个单位,该1个单位表示为1080个pixel。弧幕曲线的总长度为1920×3pixel=5760pixel,满足弧幕实际尺寸(弧幕平面展开后的矩形)比率48∶9。
这样,输入的超分辨率原始图像大小和3D弧幕的大小就一模一样,避免在二者映射时的插值运算,也恰到好处地符合了“贴墙纸”原理。
各种映射参数含义
3个Projector帧缓存图像------→Camera图像映射
FC→D: Camera图像------→Display弧幕映射
FD→Su: Display弧幕------→SuperImage(输入超分辨率
图像)变换映射
3个Projector帧缓存图像------→SuperImage图像变换映射
Fi P→PW(i=1,2,3):生成3个Projector帧缓存图像变换(Wraped)映射表
P: 表示投影仪(Projector)变换之前图像
PW: 表示投影仪图像变换之后的图像(ProjectorWarped)
C: 表示由摄像机(Camera)图像
D: 表示3D弧幕(Display)
Su: 表示输入超分辨率(SuperImage)图像
RGB(·) 表示某一坐标点或像素点(·)的RGB颜色值
细化2个投影帧缓存图像变换映射表求解
输入:
摄像机到弧幕幕映射FC→D、
弧幕到输入超分辨率图像映射FD→Su
输出:
3个投影仪帧缓存图像变换映射表Fi P→PW(i=1,2,3)
生成投影仪帧缓存变换映射表的流程可以如下,
3个Projector帧缓存图像------→Camera图像映射
此3个映射变换公式如下:
其中:
数字1、2、3表示第1、2、3个投影仪或第1、2、3个摄像机;
①C表示由摄像机(Camera)图像,P表示投影仪(Projector)帧缓存图像;
②、(x,y),(u,v)的定义分别为投影仪帧缓存待投影图像点,由摄像机拍摄的图像点;
③、Fi P→C分别表示第i(i=1,2,3)个投影仪帧缓存图像到摄像机图像变换的函数。
获得变换后的摄像机图像
步骤:任取第i个投影仪中的图像任一点(xi,yi)(i=1,2,3)
②、取该浮点邻近4个像素点,双线性插值,获得点(ui,vi)的颜色值;
③、重复①②,直至待投影仪图像中最后一点。
④、若由步骤①,找不到对应的变换之前帧缓存图像中的浮点,则该点赋值为默认值(如:无穷大值)。
2)FC→D:
Camera图像------→Display弧幕映射
此映射变换公式如下:
(s,t)=FC→D(u,v)
其中,
①、C表示由摄像机(Camera)图像,D表示投影幕(Display);
②、(s,t),(u,v)的定义分别为3D弧幕中2D参数点,由摄像机拍摄的图像点;
③、FC→D分别表示摄像机图像到3D弧幕变换的函数。
3)FD→Su
Display弧幕------→SuperImage(输入原始超分辨率图像)变换映射
此映射变换公式如下:
(mx,my)=FD→Su(s,t)=(s,t)
其中,
①、D表示投影幕(Display),Su表示原始超分辨率(SuperImage)图像;
②、(mx,my),(s,t)定义分别为原始超分辨率图像中的点,3D弧幕中2D参数点;
并且,参数mx,my与s,t有相同的含义。
③、FD→Su分别表示3D弧幕点到原始超分辨率图像点变换的函数。
原始输入大图的坐标含义与3D弧幕的2D参数化定义一致,显然有:
故而FD→Su为单位变换
3个Projector帧缓存图像------→SuperImage图像变换映射
级联应用映射变换
F
C→D、F
D→Su,可获得映射变换
有:
等价于:
其中:
①数字1、2、3表示第1、2、3个投影仪或原始超分辨率图像第1、2、3部分;
Su表示超(Super)分辨率图像,P表示投影仪(Projector)图像;
②、(x,y),(mx,my)的定义分别为投影仪帧缓存待投影图像点,输入原始超分辨率大图像点;
③、Fi P→Su分别表示第i(i=1,2,3)个投影仪帧缓存图像变换函数,表示由原始超分辨大图像变换到最终要投影的图像之变换函数,该变换函数不能由固定的数学表达式所表达,是由图像坐标映射表所表示。
获得变换后的对应的超分辨率图像点
步骤:任取第i个投影仪中的图像任一点(xi,yi)(i=1,2,3)
④、取该浮点邻近4个像素点,双线性插值,得到颜色值,并把该值赋给(xi,yi);
⑤、重复①②③④,直至待投影仪图像中最后一点。
5)Fi P→PW(i=1,2,3):
此变换公式如下:(基于来求解)
已知我们已经获得了变换
待求变换F
i P→PW(i=1,2,3),也就是:
令RGB(x,y)=RGB(mPW_x,mPW_y)时,求点(x,y)到点(mPW_x,mPW_y)的映射Fi P→PW(i=1,2,3),即:
(mPW_x,mPW_y)=Fi P→PW(x,y)(i=1,2,3)。其中,①、(x,y)表示投影仪帧缓存图像变换之前的点;
②、(mPW_x,mPW_y)表示投影仪帧缓存图像变换之后的点;
③、RGB(·)表示某一坐标点或像素点(·)的RGB颜色值;
④、PW(Projector Warped)表示投影仪变换之后的意思。
本实施例在求解摄像机内外参数时,需要3D弧幕的几何信息对应的2D坐标,即需要的数学模型只是3D与2D的对应关系,所需数学模型简单,并且在几何校正时需要的是投影仪到摄像机的映射关系和摄像机到3D弧幕的映射关系,所需的图像映射关系较少,因此可以采用较简单的数学模型及较少的图像映射实现多投影时的几何校准。
图9为本发明第三实施例的方法流程示意图,本实施例以两个虚拟平幕作为中间参数确定摄像机到3D弧幕的映射关系。参见图9,本实施例包括:
步骤91:根据摄像机图像与虚拟摄像机图像的映射关系,以及虚拟摄像机图像与虚拟2D平幕的映射关系,得到摄像机与虚拟2D平幕的映射关系;
其中,上述的虚拟2D平幕为与3D弧幕对应的虚拟2D平幕,例如,参见图10,假设将3D弧幕展开,得到的展开后的2D平幕即为虚拟2D平幕。
摄像机图像与虚拟摄像机图像的映射关系可以根据柱面到平面的畸变算法得到,例如采用梯形畸变算法得到。例如,参见图11,摄像机对投影到3D弧幕上的模板图进行拍摄,得到模板图对应的摄像机图像,之后,参见图12,采用畸变算法将摄像机图像畸变为虚拟摄像机图像。
虚拟摄像机图像与虚拟2D平幕的映射关系可以根据两个平幕的映射关系确定,具体可以如下:
计算2D投影变换Hj
设图像0和图像J之间有M对匹配的特征点,现在需要确定2D投影变换Hj,将图像0上的M个特征点分别映射到图像J上的M个特征点。
N-1个Hj的确定的步骤可分为两步:其一是使用线性方法分别计算N-1个Hj,其二是使用Levenberg-Marquardt优化方法迭代求精这N-1个Hj。
步骤1)DLT法线性确定各个Hj可以参见R.Hartley and A.Zisserman.Multiple View Gemetry in Computer Vision.Cambrdge University Press,ISBN:0521540518,second edition,2004.中的第88页。
设
和
是第i对分别位于图像0和图像J的匹配的特征点。如下的方程在这对匹配点是成立的:
则可形成如下的方程组:
该方程是以Hj的9个项为未知量的由2个方程组成的方程组,也就是一对匹配点之间存在2个以Hj的9个项为未知量的方程,于是,图像0和图像J之间4对匹配点就能产生8个以Hj的9个项为未知量的方程,从而就能在相差一个比例因子的意义上确定出Hj(令hj9=1)。对于图像0和图像J之间存在M对(M≥5)以上匹配点的情形,可以形成一个具备如下形式的超定方程组。
Ah=0,
其中A是2M×9的矩阵,而h=(hj1,hj2,hj3,hj4,hj5,hj6,hj7,hj8,hj9)T是Hj的项组成的列向量。对于超定方程组Ah=0,需要求解出这样的h,使得h的模||h||=1并且Ah的模||Ah||最小化,这样的h正好是相应于矩阵ATA的最小特征值的特征向量,这可以通过对A进行SVD分解方便地找到。
步骤2)用Levenberg-Marquardt优化方法迭代求精这N-1个Hj
由方程
可引入向量y
i=(y
i1,y
i2,y
i3)
T,并令:
y
i分别是
和y
i的校准值,这里Levenberg-Marquardt优化方法的目标,通过迭代求精,计算出H
j和y
i,使得如下的误差最小:
H
j的初始值可取由步骤1)线性确定的值,而y
i的初始值可取
规范化可参见R.Hartley and A.Zisserman.Multiple View Gemetry inComputer Vision.Cambrdge University Press,ISBN:0521540518,secondedition,2004.中的第四章第四节。
至此可以得到摄像机图像与虚拟摄像机图像的映射关系FC→虚拟C,以及虚拟摄像机图像与虚拟2D平幕的映射关系F虚拟C→虚拟2D,之后,采用级联的方式即可以得到摄像机与虚拟2D平幕的映射关系FC→虚拟2D=F虚拟C→虚拟2D(FC→虚拟C)。
步骤92:根据所述摄像机与虚拟2D平幕的映射关系,以及虚拟2D平幕与3D弧幕的映射关系,得到摄像机到3D弧幕的映射关系;
其中,步骤91可以得到摄像机与虚拟2D平幕的映射关系FC→虚拟2D。
虚拟2D平幕与3D弧幕的映射关系可以对3D弧幕与虚拟2D平幕的映射关系进行逆变换得到,而3D弧幕与虚拟2D平幕的映射关系可以如下确定:
3D弧幕的2D坐标:(s,t)
其中:①、t表示幕的高度;
Z=f(X)为3D曲线函数,Y与t对应,显然可令:
其中:①、(X,Y,Z)为世界坐标系下的点的坐标;
②、Z=f(X)。
这样也建立了世界坐标系(X,Y,Z)与3D弧幕的2D参数化表示(s,t)。
本实施例中要改成柱面圆弧形式的参数坐标表示,例如,如果圆弧上任一点的3D坐标点为(Xw,Yw,Zw),求解拉直的线段上的对应点(S,T),求解步骤可以包括:由(Xw,Zw)求解圆弧弧长S,而T=Yw。
至此,可以确定摄像机与虚拟2D平幕的映射关系FC→虚拟2D,以及虚拟2D平幕与3D弧幕的映射关系F虚拟2D→3D,之后,根据级联可以得到摄像机到3D弧幕的映射关系FC→3D=F虚拟2D→3D(FC→虚拟2D)。
步骤93:根据投影仪到摄像机的映射关系、所述摄像机到3D弧幕的映射关系以及3D弧幕到输入超分辨率图像映射关系,得到投影仪帧缓存图像变换映射表;
步骤94:根据所述投影仪帧缓存图像变换映射表,对投影仪要投影的图像进行几何配准校正。
步骤93~94的内容可以参见步骤12~13。
本实施例不采取等分3D弧幕成平面幕,即,通过离散化3D弧幕,每一个小段弧幕假设为一个平幕,进而采取平幕投影几何校正方法来校正3D弧幕。本实施例把3D弧幕变换到虚拟的2D平幕中,把摄像机拍摄到的3D弧幕变换到虚拟的平面图像中,在虚拟的2D平幕和虚拟的平幕的图像上,移植现有平幕投影几何校正方法,校正3D弧幕投影。也就是,最大程度基于现有平面幕校正技术,进行弧幕拼接几何校正。巧妙规避了复杂的3D弧幕模型的建立,以及规避求解3D弧幕到2D图像的映射。
图13为本发明第四实施例的装置结构示意图,该装置可以为独立设置的装置,之后将校正后的图像发送给投影仪缓存,也可以为设置在投影仪内的装置,在缓存前进行校正。该装置包括获取模块131、确定模块132和校正模块133;获取模块131用于获取摄像机到3D弧幕的映射关系;确定模块132用于根据投影仪到摄像机的映射关系、所述获取模块得到的所述摄像机到3D弧幕的映射关系以及3D弧幕到输入超分辨率图像映射关系,得到投影仪帧缓存图像变换映射表;校正模块133用于根据所述投影仪帧缓存图像变换映射表,对投影仪要投影的图像进行几何配准校正。
可以是,所述获取模块包括第一单元,所述第一单元用于:根据摄像机图像与虚拟摄像机图像的映射关系,以及虚拟摄像机图像与虚拟2D平幕的映射关系,得到摄像机与虚拟2D平幕的映射关系;根据所述摄像机与虚拟2D平幕的映射关系,以及虚拟2D平幕与3D弧幕的映射关系,得到摄像机到3D弧幕的映射关系。
或者,所述获取模块包括第二单元,所述第二单元用于:根据对3D弧幕的拍摄图像,及所述3D弧幕的几何信息,求解摄像机内外参数;根据所述摄像机内外参数及所述3D弧幕的2D坐标,得到摄像机到3D弧幕的映射关系。
进一步可以是,所述第二单元获取的所述3D弧幕的几何信息为已知信息。
具体地,所述第二单元具体用于:根据所述拍摄图像中上下曲线的点的数目,对所述3D弧幕的上下曲线进行等间隔采样,并建立拍摄图像的点与3D弧幕的采样点之间的对应关系;计算拍摄图像中点的2D坐标与3D弧幕的采样点对应的2D坐标的误差和,所述3D弧幕的采样点对应的2D坐标为根据设定的初始的摄像机的内外参数及所述3D弧幕的几何信息得到的;如果所述误差和不满足精度要求,则更新所述初始的摄像机的内外参数,并采用更新后的摄像机的内外参数重新计算所述3D弧幕的采样点对应的2D坐标,直至所述误差和满足精度要求;获取误差和满足精度要求时对应的摄像机的内外参数。
或者,所述第二单元具体用于:根据所述3D弧幕的几何信息及设定的初始的摄像机的内外参数,计算3D弧幕的曲线对应的2D曲线;计算3D弧幕的曲线对应的2D曲线与拍摄图像的曲线之间的距离;如果所述距离不满足精度要求,则更新所述初始的摄像机的内外参数,并采用更新后的摄像机的内外参数重新计算3D弧幕的曲线对应的2D曲线,直至所述距离满足精度要求;获取距离满足精度要求时对应的摄像机的内外参数。
本实施例在求解投影仪帧缓存图像变换映射表时,所需的图像映射关系较少,因此可以采用较少的图像映射实现多投影时的几何校准,实现方法简便易行。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。