CN103942782A - 一种图像拼接方法及装置 - Google Patents
一种图像拼接方法及装置 Download PDFInfo
- Publication number
- CN103942782A CN103942782A CN201410129615.4A CN201410129615A CN103942782A CN 103942782 A CN103942782 A CN 103942782A CN 201410129615 A CN201410129615 A CN 201410129615A CN 103942782 A CN103942782 A CN 103942782A
- Authority
- CN
- China
- Prior art keywords
- field
- visual
- reference view
- visual field
- projective transformation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Image Processing (AREA)
Abstract
本发明适用于图像拼接领域,提供了一种图像拼接方法及装置。所述方法包括:从多个视场中选取一个视场作为基准视场;确定所述多个视场中除所述基准视场外的其他视场到所述基准视场的投影变换矩阵;根据所述投影变换矩阵确定所述多个视场中除所述基准视场外的其他视场的投影变换视场;确定所述多个视场中除所述基准视场外的其他视场的投影变换视场的形变量的和;确定所述多个视场中的所有视场依次作为基准视场时,多个视场中除基准视场的其他视场的投影变换视场的形变量的和的最小值;以所述投影变换视场的形变量的和的最小值所对应的视场作为基准视场,拼接图像。本发明实施例能够提高拼接图像的质量。
Description
技术领域
本发明属于图像拼接领域,尤其涉及一种图像拼接方法及装置。
背景技术
全景拼接技术是指将一组具有重叠区域的图像或者视频序列,按照某种映射关系,通过空间配准,将不同坐标系中的像素点关联起来,从而将同一视点或多个不同视点拍摄的视频序列拼接成一幅包含各自图像信息的宽视角、大范围、过渡自然的新图像。全景拼接技术的关键和核心在于准确找到相邻图像重叠区域的位置及范围,而将具有重叠视场(即重叠区域)的视频序列合成一幅全景图像,需要建立统一的坐标变换关系。其中,重叠视场的示意图如图1所示,在图1中,第一视场和第二视场为相邻的两个视场。
以视频序列中的某个视场坐标系为基准,将其它视场都投影变换到该基准坐标系中,使相邻图像的重叠区域对齐,我们称由此形成的拼接为全景的平面拼接。在全景平面拼接技术中,通常选取多视场中的某个视场作为基准视场,其它视场按照映射关系投影变换到该基准视场的坐标系中。其中基准视场的选取将直接影响到视频全景的质量,基准视场不同,生成的视频全景的质量也将不同。
以全景视频生成为例,现有的技术通常是人为地在摄像机阵列中选取某个摄像机的视场作为基准视场,其它视场按照映射关系投影变换到该基准视场的坐标系中。人为选择基准视场的方法在摄像机阵列规模较小时达到的效果尚可,但在摄像机阵列较大时,由于摄像机阵列中的每个摄像机的视场都具有一定的自由性,因此,人为选出的基准视场往往并非最佳的基准视场,从而降低生成的视频全景的质量。
发明内容
本发明实施例提供了一种图像拼接方法,旨在解决现有方法选取基准视场不准确,从而导致拼接的图像质量过低的问题。
本发明实施例是这样实现的,一种图像拼接方法,所述方法包括下述步骤:
从多个视场中选取一个视场作为基准视场;
确定所述多个视场中除所述基准视场外的其他视场到所述基准视场的投影变换矩阵;
根据所述投影变换矩阵确定所述多个视场中除所述基准视场外的其他视场的投影变换视场;
确定所述多个视场中除所述基准视场外的其他视场的投影变换视场的形变量的和;
重复上述步骤,获得所述多个视场中的所有视场依次作为基准视场时,多个视场中除基准视场的其他视场的投影变换视场的形变量的和;
确定所述多个视场中的所有视场依次作为基准视场时,多个视场中除基准视场的其他视场的投影变换视场的形变量的和的最小值;
以所述投影变换视场的形变量的和的最小值所对应的视场作为基准视场,拼接图像。
本发明实施例的另一目的在于提供一种图像拼接装置,所述装置包括:
视场选取单元,用于从多个视场中选取一个视场作为基准视场;
投影变换矩阵确定单元,用于确定所述多个视场中除所述基准视场外的其他视场到所述基准视场的投影变换矩阵;
投影变换视场确定单元,用于根据所述投影变换矩阵确定所述多个视场中除所述基准视场外的其他视场的投影变换视场;
第一形变量确定单元,用于确定所述多个视场中除所述基准视场外的其他视场的投影变换视场的形变量的和;
第二形变量确定单元,用于确定所述多个视场中的所有视场依次作为基准视场时,多个视场中除基准视场的其他视场的投影变换视场的形变量的和的最小值;
图像拼接单元,用于以所述投影变换视场的形变量的和的最小值所对应的视场作为基准视场,拼接图像。
在本发明实施例中,基准视场是通过比较所有视场分别作为基准视场生成全景图像的累积形变量确定的,且累积形变量都是根据视场投影到基准视场的最短路径计算得到,因此采用本实施例提供的方法能够选取到最优的基准视场,从而在采用本实施例选取的基准视场作为拼接图像的基准视场时,能够保证得到的全景图像的累积形变量最小,提高了拼接的图像质量。
附图说明
图1是重叠视场的示意图;
图2是本发明第一实施例提供的一种图像拼接方法的流程图;
图3是本发明第一实施例提供的一种摄像机阵列所拍摄的视场的示意图;
图4是本发明第一实施例提供的图3对应的投影变换图的示意图;
图5是本发明第一实施例提供的图4对应的变换树的示意图;
图6是本发明第一实施例提供的相邻两个摄像机拍摄同一点的位置关系图;
图7是本发明第一实施例提供的一个视场投影变换前的示意图;
图8是本发明第一实施例提供的图7的视场投影变换后的示意图;
图9是本发明第三实施例提供的一种图像拼接装置的结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例中,从多个视场中选取任一视场作为基准视场,并确定除基准视场外的其他视场投影到基准视场的最短路径,再根据确定的最短路径计算除基准视场的其他视场到基准视场的投影变换矩阵,根据计算的投影变换矩阵确定除基准视场的其他视场对于的投影变换视场,最后计算每个投影变换视场的形变量,再计算最终生成的全景图像的累积形变量。从多个视场中再选取其他视场作为基准视场,确定以其他视场作为基准视场时生成的全景图像的累积形变量,比较以多个视场中的每一个视场作为基准视场时生成的全景图像的累积形变量,以确定最小的累积形变量是以哪个视场为基准视场计算得到的,最后以最小的累积形变量对应的基准视场作为基准视场对多个视场进行图像拼接。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
实施例一:
图2示出了本发明第一实施例提供的一种图像拼接方法的流程图,详述如下:
步骤S21,从多个视场中选取一个视场作为基准视场。
该步骤中,多个摄像机从不同角度拍摄了多个视场,任两个相邻的视场都有一定的重合区域,这样任意两个摄像机所拍摄的视场均可通过重合区域过渡。从拍摄的多个视场中任意选取一个视场作为基准视场。
步骤S22,确定所述多个视场中除所述基准视场外的其他视场到所述基准视场的投影变换矩阵。
该步骤中,当选定一个基准视场后,其他视场按照映射关系投影变换到基准视场所在的基准坐标系中,与基准视场相邻的视场可以直接计算该视场到基准视场的投影变换矩阵,进而投影变换到基准坐标系中;而与基准视场不相邻的视场则需通过中间过渡视场计算该视场到基准视场的投影变换矩阵。如图3所示,数字节点表示一组3*3的摄像机阵列所拍摄的视场,现要对这九个视场的图像进行全景拼接,假设空间位置相邻的视场都具有一定的重叠区域。在全景拼接过程中,假设以视场1为基准视场,视场2投影到视场1的投影变换矩阵可以直接计算得到,而和视场1非相邻的视场6必须通过中间过渡视场来计算投影变换矩阵才能映射到基准坐标系中,而视场1和视场6之间的中间过渡视场并不唯一。图3中用两种线型标示了视场1到视场6的其中两条路径,通过这两条路径可以得到视场6到视场1的投影变换矩阵的两种计算方法。
其中,所述确定所述多个视场中除所述基准视场外的其他视场到所述基准视场的投影变换矩阵的步骤具体包括:
A1、确定所述多个视场中除所述基准视场外的其他视场投影到所述基准视场的最短路径。该步骤中,视场投影到基准视场的最短路径是指该视场通过最少的中间过渡视场投影到基准视场的路径。
由于将视场进行投影变换,必然存在一定的误差,投影变换的次数越多,累计的误差也将越大,而当误差累计到一定程度的时候,就会出现误匹配的现象,从而直接影响到全景图像的效果。为了减小累积误差,需要确定视场投影到基准视场的最短路径,以减少投影变换的次数。
其中,通过以下步骤确定视场投影到基准视场的最短路径:
A11、生成所述多个视场的投影变换图;
A12、所述投影变换图采用两个节点是否连接表示两个视场是否相邻;
A13、根据所述投影变换图生成可达路径表,所述可达路径表存储了两个节点对应的两个视场是否相邻的信息;
A14、根据生成的可达路径表生成所述多个视场的变换树,所述变换树存储了每个节点对应的视场投影到基准视场的最短路径的信息;
A15、根据生成的变换树确定所述多个视场中除所述基准视场外的其他视场投影到所述基准视场的最短路径。
上述步骤中,引入数据结构中“图”的概念,利用不同的节点标识各个视场,从而生成多个视场的投影变换图。在投影变换图中,连接的两个节点表示相邻的两个节点。以图3所示的9个视场为例,生成的投影变换图如图4所示,在图4中,节点Vi(i=1,2,…,9)表示视场i,从图4可以看出,视场6可由视场1通过视场2,再由视场2到达视场6,也可由视场1通过视场5,再由视场5到达视场6等等。在生成了投影变换图之后,根据该投影变换图可得到如表1所述的可达路径表:
表1:
节点 | V1 | V2 | V3 | V4 | V5 | V6 | V7 | V8 | V9 |
V1 | 1 | 1 | 1 | 1 | |||||
V2 | 1 | 1 | 1 | 1 | 1 | 1 | |||
V3 | 1 | 1 | 1 | 1 | |||||
V4 | 1 | 1 | 1 | 1 | |||||
V5 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
V6 | 1 | 1 | 1 | 1 | 1 | 1 | |||
V7 | 1 | 1 | 1 | 1 | |||||
V8 | 1 | 1 | 1 | 1 | 1 | 1 | |||
V9 | 1 | 1 | 1 | 1 |
在表1中,(Vi,Vj)=1表示节点i和节点j之间直接相连。表1中采用“1”和空白表示两个节点是否直接相连,在实际情况中,也可采用其他信息标识两个节点是否直接相连,即标识两个节点对应的两个视场是否相邻,此处不作限定。由表1记录的信息可知,通过查找表1,就能知道与任意节点直接相连的节点。根据表1的可达路径表可生成如图5所示的变换树。在图5中,任一节点到节点1的路径都是最短路径,即任一视场到基准视场的投影变换次数均是最小的。
A2、根据确定的最短路径计算所述多个视场中除所述基准视场外的其他视场投影到所述基准视场的投影变换矩阵。在步骤A2中,每个投影变换矩阵中的数值为像素值。
其中,通过以下步骤计算所述多个视场中除所述基准视场外的其他视场投影到所述基准视场的投影变换矩阵:
A21、判断多个视场中的任一视场与基准视场是否相邻;
A22、在多个视场中的任一视场与基准视场相邻时,根据所述多个视场中的任一视场所在的摄像机坐标系相对于世界坐标系的平移矩阵、缩放矩阵以及旋转矩阵,确定所述多个视场中的任一视场投影到基准视场的投影变换矩阵;
A23、在多个视场中的任一视场与基准视场不相邻时,根据所述多个视场中的任一视场所在的摄像机坐标系相对于世界坐标系的平移矩阵、缩放矩阵以及旋转矩阵,确定所述多个视场中的任一视场通向基准视场的最短路径上第一视场投影到第二视场的投影变换矩阵;所述第一视场与第二视场相邻,且第二视场到基准视场的路径短于第一视场到基准视场的路径;并计算所述多个视场中的任一视场与基准视场的最短路径上任意两个相邻的视场的投影变换矩阵的乘积,作为所述多个视场中的任一视场投影到基准视场的投影变换矩阵。
上述步骤中,“第一视场”的“第一”和“第二视场”的“第二”仅用于区分不同的视场,并无其他的含义。当视场与基准视场相邻时,可根据该视场所在的摄像机坐标系相对于世界坐标系的平移矩阵、缩放矩阵以及旋转矩阵,确定该视场投影到基准视场的投影变换矩阵。如图6所示,假设对于空间一点P(X,Y,Z),它在不同位置的两个摄像机上所拍摄的图像中对应点分别为P1和P2,即两个摄像机拍摄到的两个视场是具有重叠区域的。P1和P2的坐标分别记为X1=(x1,y1,w)T,X2=(x2,y2,w)T,则可知:
X1=V1R1T1p,X2=V2R2T2p
其中Ti,Vi,Ri(i=1,2)分别为摄像机坐标系相对于世界坐标系的平移矩阵、缩放矩阵和旋转矩阵。由上式可知,p=X1V1 -1R1 -1T1 -1,则X2=V2R2T2X1V1 -1R1 -1T1 -1当视场与基准视场不相邻时,则确定变换树中任一条最短路径上任意相邻的两个视场的投影变换矩阵,当然,由于本实施例只需要得到视场到基准视场的投影变换矩阵,因此在计算相邻的两个视场的投影变换矩阵时,是计算变换树中的节点投影到其父节点的投影变换矩阵,参照图5,在计算节点3投影到节点1的投影变换矩阵时,是计算节点3投影到节点2的投影变换矩阵,而不是计算节点2投影到节点3的投影变换矩阵,是计算节点2投影到节点1的投影变换矩阵,而不是计算节点1投影到节点2的投影变换矩阵。其中,相邻的两个视场的变换矩阵的计算方法与步骤A22的相同,此处不再赘述。当确定任一条最短路径上任意两个相邻视场的投影变换矩阵后,将视场与基准视场的最短路径上任意两个相邻的视场的投影投影变换矩阵的乘积,作为该视场投影到基准视场的投影变换矩阵。参照图5,假设确定了节点3投影到节点2的投影变换矩阵M23,节点2投影到节点1的投影变换矩阵M12,则节点3对应的视场投影到基准视场的投影变换矩阵M13=M12*M23,其中,“*”表示矩阵相乘。
步骤S23,根据所述投影变换矩阵确定所述多个视场中除所述基准视场外的其他视场的投影变换视场。
该步骤中,投影变换视场等于视场与该视场的投影变换矩阵的乘积。例如,假设视场D的投影变换矩阵为T(),该视场D的像素点集合为E,则该视场D的投影变换视场=T(E)。
步骤S24,确定所述多个视场中除所述基准视场外的其他视场的投影变换视场的形变量的和。
该步骤中,当投影变换视场有多个时,计算每一个投影变换视场的形变量,并累加得到的每一个投影变换视场的形变量。
其中,通过以下步骤确定投影变换视场的形变量的和:
B1、确定所述多个视场中除所述基准视场外的任一视场的投影变换视场的形变量。
B2、累加所述多个视场中除所述基准视场外的所有视场的投影变换视场的形变量。
其中,步骤B1,确定所述多个视场中除所述基准视场外的任一视场的投影变换视场的形变量的步骤具体包括:
B11、在所述多个视场中除所述基准视场外的任一视场投影到所述基准视场之前,确定所述任一视场中的任一视点到投影变换前建立的坐标系的原点的欧氏距离;
B12、在所述任一视场投影到所述基准视场之后,确定所述任一视场中的任一视点到投影变换后建立的坐标系的原点的欧氏距离;
B13、计算视场中的任一视点到投影变换前建立的坐标系的原点的欧氏距离与所述视场中的任一视点到投影变换后建立的坐标系的原点的欧氏距离的差;
B14、累加视场中所有视点的欧氏距离的差,作为所述视场对应的投影变换视场的形变量的和。
上述步骤中,欧氏距离公式为d=sqrt(∑(xi1-xi2)^2),i=1,2..n,n指计算的欧氏距离的维数,例如,在计算二维视场中的视点的欧氏距离时,n=2。为了更清楚地说明计算一个视场对应的投影变换视场的形变量,下面以一具体例子进行说明:
参见图7和图8,图7示出了投影变换前的一个视场示意图,图8示出了图7所示的视场投影变换后对应的投影变换视场。假设在投影变换前,视场边界上的像素点的集合为E,该视场投影变换后对应的像素点集合为E′,投影变换矩阵为T(),则E′=T(E)。对于任意点X∈E,其投影变换过后在新坐标系下的坐标为X′,X′∈E′,中心点O投影变换过后对应新坐标系下O′,则在原始视场中,任意点X∈E与中心点O的欧氏距离d为:
d=||X-O||
点X∈E投影变换后对应点X′∈E′与中心点O′的欧氏距离d′为:
d′=||X′-O′||
则投影变换前后欧氏距离的差Δd为:
Δd=|d-d′|
设集合E中有N个像素点,即N个视点,计算每个像素点所对应的Δd,然后全部相加,作为衡量图7所示的视场在投影变换后的形变量,则形变量σ为:
根据上述计算公式确定任一视场的投影变换视场的形变量,将确定的任一视场的投影变换视场的形变量进行累加,得到多个视场中除所述基准视场外的所有视场的投影变换视场的形变量的和。
重复步骤S21至步骤S24,获得所述多个视场中的所有视场依次作为基准视场时,多个视场中除基准视场的其他视场的投影变换视场的形变量的和;
步骤S25,确定所述多个视场中的所有视场依次作为基准视场时,多个视场中除基准视场的其他视场的投影变换视场的形变量的和的最小值。
假设有m个视场需要进行全景拼接,且空间位置相邻的视场都具有一定的重叠区域,m个视场分别为视场F1,F2,...,Fm,选取F1作为基准视场,则根据步骤S24计算F1作为基准视场时,m个视场中除视场F1外的其他视场的形变量的和,再重复步骤S21至步骤S24,依次选取每个视场作为基准视场,利用最短路径投影矩阵的算法计算每个视场到基准视场的投影变换矩阵,并计算每个投影变换视场的形变量,再计算最终生成的全景图像的累积形变量,最后计算所得的所有m个累积形变量。比较m个累积形变量,查找到m个累积形变量中最小的累积形变量,进而确定该最小的累积形变量是以哪个视场为基准视场计算得到的,确定该基准视场对应的视场。
步骤S26,以所述投影变换视场的形变量的和的最小值所对应的视场作为基准视场,拼接图像。
该步骤中,当确定了基准视场之后,将多个视场中除该基准视场的其他视场都投影到基准视场上,以拼接多个视场中的图像。
本实施例中,从多个视场中选取任一视场作为基准视场,并确定除基准视场外的其他视场投影到基准视场的最短路径,再根据确定的最短路径计算除基准视场的其他视场到基准视场的投影变换矩阵,根据计算的投影变换矩阵确定除基准视场的其他视场对于的投影变换视场,最后计算每个投影变换视场的形变量,再计算最终生成的全景图像的累积形变量。从多个视场中再选取其他视场作为基准视场,确定以其他视场作为基准视场时生成的全景图像的累积形变量,比较以多个视场中的每一个视场作为基准视场时生成的全景图像的累积形变量,以确定最小的累积形变量是以哪个视场为基准视场计算得到的,最后以最小的累积形变量对应的基准视场作为基准视场对多个视场进行图像拼接。由于基准视场是通过比较所有视场分别作为基准视场生成全景图像的累积形变量确定的,且累积形变量都是根据视场投影到基准视场的最短路径计算得到,因此采用本实施例提供的方法能够选取到最优的基准视场,从而在采用本实施例选取的基准视场作为拼接图像的基准视场时,能够保证得到的全景图像的累积形变量最小,提高了拼接的图像质量。
实施例二:
下面具体介绍如何确定视场投影到基准视场的最短路径,本实施例中,将每个视场抽象为一个节点,详述如下:
首先创建三个表,分别为HIGHER表、TEMP表和LOWER表,HIGHER表保存已确定的节点,初始为空;LOWER表保存尚未确定的节点,初始包含全部m个节点;TEMP表为临时表,初始为空。
算法流程为:
第一步:假设选取节点Vs为源节点,将其从LOWER表中去除,归入HIGHER表中;
第二步:遍历HIGHER表中每个节点,对任意节点Vi∈HIGHER表,在LOWER表中找出与节点Vi相邻的所有节点,首先计算这些节点与Vi之间的投影变换矩阵,在此基础上再计算每个节点到源节点的投影变换矩阵,其中任意节点Vj到源节点Vs的投影变换矩阵Msj=Msi·Mij,将已求得投影变换矩阵的节点从LOWER表中去除,归入TEMP表中;
第三步:清空HIGHER表,将TEMP表中节点全部归入HIGHER表中,然后再清空TEMP表;
第四步:重复第二步至第三步,直到LOWER表为空。
由以上算法,我们便能得到变换树中所有视场到基准视场的投影变换矩阵。以图3为例,假设以视场1为基准视场,运用上述算法的过程如下:
给这些节点建立三个表,分别为HIGHER=[],LOWER=[V1,V2,...,V9],TEMP=[]。
设节点V1为源节点,HIGHER=[V1],LOWER=[V2,V3,...,V9];
在LOWER表中找到HIGHER表中节点V1的相邻节点V2,V4,V5,则所要计算的投影变换矩阵即为它们相邻视场的投影变换矩阵本身,分别为M12,M14,M15,将这些节点从LOWER表中删除,归入TEMP表中,清空HIGHER表,将TEMP表中节点全部归入HIGHER表中,再清空TEMP表,此时HIGHER=[V2,V4,V5],LOWER=[V3,V6,V7,V8,V9],TEMP=[];
在LOWER表中依次寻找HIGHER表中节点V2,V4,V5的相邻节点,由V2找到相邻节点V3,V6,则首先计算V2和V3之间的投影变换矩阵M23,V2和V6之间的投影变换矩阵M26,则在此基础上可以计算投影变换矩阵M13=M12·M23,M16=M12·M26,将V3和V6从LOWER表中删除,归入TEMP表中,此时LOWER=[V7,V8,V9],TEMP=[V3,V6];同理,继续在LOWER表中寻找节点V4的相邻节点,则有V7和V8,直接计算得到M47和M48,紧接着有M17=M14·M47,M18=M14·M48,将V7和V8从LOWER表中删除,归入TEMP表中,此时LOWER=[V9],TEMP=[V3,V6,V7,V8];继续在LOWER表中寻找节点V5的相邻节点,则有V9,直接计算得到M59,紧接着有M19=M15·M59,将V9从LOWER表中删除,归入TEMP表中,此时LOWER=[],TEMP=[V3,V6,V7,V8,V9];此时LOWER表为空,程序结束。
由此可以得到图5的变换树。由上述运算过程所求得的任意节点到源节点的路径均是最短路径,即任意视场到基准视场的投影变换次数均是最小的。
实施例三:
图9示出了本发明第三实施例提供的一种图像拼接装置的结构图,为了便于说明,仅示出了与本发明实施例相关的部分。该图像拼接装置与上述实施例的图像拼接方法对应。
本实施例中,该图像拼接装置包括:视场选取单元91、投影变换矩阵确定单元92、投影变换视场确定单元93、第一形变量确定单元94、第二形变量确定单元95、图像拼接单元96。其中:
视场选取单元91,用于从多个视场中选取一个视场作为基准视场。
投影变换矩阵确定单元92,用于确定所述多个视场中除所述基准视场外的其他视场到所述基准视场的投影变换矩阵。
当视场选取单元91选定一个基准视场后,其他视场按照映射关系投影变换到基准视场所在的基准坐标系中,与基准视场相邻的视场可以直接计算该视场到基准视场的投影变换矩阵,进而投影变换到基准坐标系中;而与基准视场不相邻的视场则需通过中间过渡视场计算该视场到基准视场的投影变换矩阵。
作为本发明一优选实施例,所述投影变换矩阵确定单元92包括:最短路径确定模块和投影变换矩阵计算模块。其中:
最短路径确定模块,用于确定所述多个视场中除所述基准视场外的其他视场投影到所述基准视场的最短路径。进一步地,该最短路径确定模块包括:投影变换图生成模块,用于生成所述多个视场的投影变换图。所述投影变换图采用两个节点是否连接表示两个视场是否相邻。可达路径表生成模块,用于根据所述投影变换图生成可达路径表,所述可达路径表存储了两个节点对应的两个视场是否相邻的信息。变换树生成模块,用于根据生成的可达路径表生成所述多个视场的变换树,所述变换树存储了每个节点对应的视场投影到基准视场的最短路径的信息。投影路径确定模块,用于根据生成的变换树确定所述多个视场中除所述基准视场外的其他视场投影到所述基准视场的最短路径。
投影变换矩阵计算模块,用于根据确定的最短路径计算所述多个视场中除所述基准视场外的其他视场投影到所述基准视场的投影变换矩阵。进一步地,投影变换矩阵计算模块包括:相邻判断模块,用于判断多个视场中的任一视场与基准视场是否相邻。矩阵生成模块,用于在多个视场中的任一视场与基准视场相邻时,根据所述多个视场中的任一视场所在的摄像机坐标系相对于世界坐标系的平移矩阵、缩放矩阵以及旋转矩阵,确定所述多个视场中的任一视场投影到基准视场的投影变换矩阵。在多个视场中的任一视场与基准视场不相邻时,根据所述多个视场中的任一视场所在的摄像机坐标系相对于世界坐标系的平移矩阵、缩放矩阵以及旋转矩阵,确定所述多个视场中的任一视场通向基准视场的最短路径上第二视场投影到第一视场的投影变换矩阵。所述第二视场与第一视场相邻,且第一视场到基准视场的路径短于第二视场到基准视场的路径。计算所述多个视场中的任一视场与基准视场的最短路径上任意两个相邻的视场的投影变换矩阵的乘积,作为所述多个视场中的任一视场投影到基准视场的投影变换矩阵。
由于视场的投影变换矩阵是通过该视场通向基准视场的最短路径计算的,因此得到的投影变换矩阵的误差最少。
投影变换视场确定单元93,用于根据所述投影变换矩阵确定所述多个视场中除所述基准视场外的其他视场的投影变换视场。
该投影变换视场等于视场与该视场的投影变换矩阵的乘积。
第一形变量确定单元94,用于确定所述多个视场中除所述基准视场外的其他视场的投影变换视场的形变量的和。
该第一形变量确定单元94通过首先确定多个视场中除基准视场外的任一视场的投影变换视场的形变量,再累加所有视场的投影变换视场的形变量。其中,一个视场的投影变换视场的形变量为该投影变换视场中的所有视点(或称像素点)的形变量的和。
具体地,所述第一形变量确定单元94包括:形变量计算模块和形变量累加模块。
其中:
形变量计算模块,用于确定所述多个视场中除所述基准视场外的任一视场的投影变换视场的形变量。其中,确定任一视场的投影变换视场的形变量的具体步骤包括:在所述多个视场中除所述基准视场外的任一视场投影到所述基准视场之前,确定所述任一视场中的任一视点到投影变换前建立的坐标系的原点的欧氏距离。在所述任一视场投影到所述基准视场之后,确定所述任一视场中的任一视点到投影变换后建立的坐标系的原点的欧氏距离。计算视场中的任一视点到投影变换前建立的坐标系的原点的欧氏距离与所述视场中的任一视点到投影变换后建立的坐标系的原点的欧氏距离的差。累加视场中所有视点的欧氏距离的差,作为所述视场对应的投影变换视场的形变量的和。
形变量累加模块,用于累加所述多个视场中除所述基准视场外的所有视场的投影变换视场的形变量。
其中,欧氏距离公式为d=sqrt(∑(xi1-xi2)^2),i=1,2..n,n指计算的欧氏距离的维数。
第二形变量确定单元95,用于确定所述多个视场中的所有视场依次作为基准视场时,多个视场中除基准视场的其他视场的投影变换视场的形变量的和的最小值。
通过循环运行视场选取单元91、投影变换矩阵确定单元92、投影变换视场确定单元93以及第一形变量确定单元94,得到多个视场中的所有视场依次作为基准视场时,多个视场中除基准视场的其他视场的投影变换视场的形变量的和,再比较获得的多个形变量的和,从而确定形变量的和的最小值。
图像拼接单元96,用于以所述投影变换视场的形变量的和的最小值所对应的视场作为基准视场,拼接图像。
本实施例中,由于拼接图像采用的基准视场是通过比较所有视场分别作为基准视场生成全景图像的累积形变量确定的,且累积形变量都是根据视场投影到基准视场的最短路径计算得到,因此采用本实施例确定的基准视场作为拼接图像的基准视场能够保证得到的全景图像的累积形变量最小,从而提高拼接的图像质量。
本领域普通技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以在存储于一计算机可读取存储介质中,所述的存储介质,如ROM/RAM、磁盘、光盘等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种图像拼接方法,其特征在于,所述方法包括下述步骤:
从多个视场中选取一个视场作为基准视场;
确定所述多个视场中除所述基准视场外的其他视场到所述基准视场的投影变换矩阵;
根据所述投影变换矩阵确定所述多个视场中除所述基准视场外的其他视场的投影变换视场;
确定所述多个视场中除所述基准视场外的其他视场的投影变换视场的形变量的和;
重复上述步骤,获得所述多个视场中的所有视场依次作为基准视场时,多个视场中除基准视场的其他视场的投影变换视场的形变量的和;
确定所述多个视场中的所有视场依次作为基准视场时,多个视场中除基准视场的其他视场的投影变换视场的形变量的和的最小值;
以所述投影变换视场的形变量的和的最小值所对应的视场作为基准视场,拼接图像。
2.如权利要求1所述的方法,其特征在于,所述确定所述多个视场中除所述基准视场外的其他视场到所述基准视场的投影变换矩阵的步骤具体包括:
确定所述多个视场中除所述基准视场外的其他视场投影到所述基准视场的最短路径;
根据确定的最短路径计算所述多个视场中除所述基准视场外的其他视场投影到所述基准视场的投影变换矩阵。
3.如权利要求2所述的方法,其特征在于,所述确定所述多个视场中除所述基准视场外的其他视场投影到所述基准视场的最短路径的步骤具体包括:
生成所述多个视场的投影变换图;所述投影变换图采用两个节点是否连接表示两个视场是否相邻;
根据所述投影变换图生成可达路径表,所述可达路径表存储了两个节点对应的两个视场是否相邻的信息;
根据生成的可达路径表生成所述多个视场的变换树,所述变换树存储了每个节点对应的视场投影到基准视场的最短路径的信息;
根据生成的变换树确定所述多个视场中除所述基准视场外的其他视场投影到所述基准视场的最短路径。
4.如权利要求2所述的方法,其特征在于,所述根据确定的最短路径计算所述多个视场中除所述基准视场外的其他视场投影到所述基准视场的投影变换矩阵的步骤具体包括:
判断多个视场中的任一视场与基准视场是否相邻;
在多个视场中的任一视场与基准视场相邻时,根据所述多个视场中的任一视场所在的摄像机坐标系相对于世界坐标系的平移矩阵、缩放矩阵以及旋转矩阵,确定所述多个视场中的任一视场投影到基准视场的投影变换矩阵;
在多个视场中的任一视场与基准视场不相邻时,根据所述多个视场中的任一视场所在的摄像机坐标系相对于世界坐标系的平移矩阵、缩放矩阵以及旋转矩阵,确定所述多个视场中的任一视场通向基准视场的最短路径上第一视场投影到第二视场的投影变换矩阵;所述第一视场与第二视场相邻,且第二视场到基准视场的路径短于第一视场到基准视场的路径;计算所述多个视场中的任一视场与基准视场的最短路径上任意两个相邻的视场的投影变换矩阵的乘积,作为所述多个视场中的任一视场投影到基准视场的投影变换矩阵。
5.如权利要求1所述的方法,其特征在于,所述确定所述多个视场中除所述基准视场外的其他视场的投影变换视场的形变量的和的步骤具体包括:
确定所述多个视场中除所述基准视场外的任一视场的投影变换视场的形变量;
累加所述多个视场中除所述基准视场外的所有视场的投影变换视场的形变量;
其中,所述确定所述多个视场中除所述基准视场外的任一视场的投影变换视场的形变量的步骤具体包括:
在所述多个视场中除所述基准视场外的任一视场投影到所述基准视场之前,确定所述任一视场中的任一视点到投影变换前建立的坐标系的原点的欧氏距离;
在所述任一视场投影到所述基准视场之后,确定所述任一视场中的任一视点到投影变换后建立的坐标系的原点的欧氏距离;
计算视场中的任一视点到投影变换前建立的坐标系的原点的欧氏距离与所述视场中的任一视点到投影变换后建立的坐标系的原点的欧氏距离的差;
累加视场中所有视点的欧氏距离的差,作为所述视场对应的投影变换视场的形变量的和。
6.一种图像拼接装置,其特征在于,所述装置包括:
视场选取单元,用于从多个视场中选取一个视场作为基准视场;
投影变换矩阵确定单元,用于确定所述多个视场中除所述基准视场外的其他视场到所述基准视场的投影变换矩阵;
投影变换视场确定单元,用于根据所述投影变换矩阵确定所述多个视场中除所述基准视场外的其他视场的投影变换视场;
第一形变量确定单元,用于确定所述多个视场中除所述基准视场外的其他视场的投影变换视场的形变量的和;
第二形变量确定单元,用于确定所述多个视场中的所有视场依次作为基准视场时,多个视场中除基准视场的其他视场的投影变换视场的形变量的和的最小值;
图像拼接单元,用于以所述投影变换视场的形变量的和的最小值所对应的视场作为基准视场,拼接图像。
7.如权利要求6所述的装置,其特征在于,所述投影变换矩阵确定单元包括:
最短路径确定模块,用于确定所述多个视场中除所述基准视场外的其他视场投影到所述基准视场的最短路径;
投影变换矩阵计算模块,用于根据确定的最短路径计算所述多个视场中除所述基准视场外的其他视场投影到所述基准视场的投影变换矩阵。
8.如权利要求7所述的装置,其特征在于,所述最短路径确定模块包括:
投影变换图生成模块,用于生成所述多个视场的投影变换图;所述投影变换图采用两个节点是否连接表示两个视场是否相邻;
可达路径表生成模块,用于根据所述投影变换图生成可达路径表,所述可达路径表存储了两个节点对应的两个视场是否相邻的信息;
变换树生成模块,用于根据生成的可达路径表生成所述多个视场的变换树,所述变换树存储了每个节点对应的视场投影到基准视场的最短路径的信息;
投影路径确定模块,用于根据生成的变换树确定所述多个视场中除所述基准视场外的其他视场投影到所述基准视场的最短路径。
9.如权利要求7所述的装置,其特征在于,所述投影变换矩阵计算模块包括:
相邻判断模块,用于判断多个视场中的任一视场与基准视场是否相邻;
矩阵生成模块,用于在多个视场中的任一视场与基准视场相邻时,根据所述多个视场中的任一视场所在的摄像机坐标系相对于世界坐标系的平移矩阵、缩放矩阵以及旋转矩阵,确定所述多个视场中的任一视场投影到基准视场的投影变换矩阵;在多个视场中的任一视场与基准视场不相邻时,根据所述多个视场中的任一视场所在的摄像机坐标系相对于世界坐标系的平移矩阵、缩放矩阵以及旋转矩阵,确定所述多个视场中的任一视场通向基准视场的最短路径上第一视场投影到第二视场的投影变换矩阵;所述第一视场与第二视场相邻,且第二视场到基准视场的路径短于第一视场到基准视场的路径;计算所述多个视场中的任一视场与基准视场的最短路径上任意两个相邻的视场的投影变换矩阵的乘积,作为所述多个视场中的任一视场投影到基准视场的投影变换矩阵。
10.如权利要求6所述的装置,其特征在于,所述第一形变量确定单元包括:
形变量计算模块,用于确定所述多个视场中除所述基准视场外的任一视场的投影变换视场的形变量,具体包括:在所述多个视场中除所述基准视场外的任一视场投影到所述基准视场之前,确定所述任一视场中的任一视点到投影变换前建立的坐标系的原点的欧氏距离;在所述任一视场投影到所述基准视场之后,确定所述任一视场中的任一视点到投影变换后建立的坐标系的原点的欧氏距离;计算视场中的任一视点到投影变换前建立的坐标系的原点的欧氏距离与所述视场中的任一视点到投影变换后建立的坐标系的原点的欧氏距离的差;累加视场中所有视点的欧氏距离的差,作为所述视场对应的投影变换视场的形变量的和;
形变量累加模块,用于累加所述多个视场中除所述基准视场外的所有视场的投影变换视场的形变量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410129615.4A CN103942782A (zh) | 2014-03-31 | 2014-03-31 | 一种图像拼接方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410129615.4A CN103942782A (zh) | 2014-03-31 | 2014-03-31 | 一种图像拼接方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103942782A true CN103942782A (zh) | 2014-07-23 |
Family
ID=51190433
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410129615.4A Pending CN103942782A (zh) | 2014-03-31 | 2014-03-31 | 一种图像拼接方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103942782A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104253931A (zh) * | 2014-08-22 | 2014-12-31 | 宁波Gqy视讯股份有限公司 | 一种多屏拼接显示系统的屏幕图像录制方法 |
CN106611403A (zh) * | 2016-05-25 | 2017-05-03 | 北京数科技有限公司 | 一种图像拼接方法及装置 |
CN107330849A (zh) * | 2017-06-12 | 2017-11-07 | 浙江大华技术股份有限公司 | 一种全景图像拼接的方法、装置、设备及存储介质 |
CN107657600A (zh) * | 2017-09-05 | 2018-02-02 | 深圳市斯尔顿科技有限公司 | 眼科oct图像的基准图选取方法和图像合成方法 |
CN108012078A (zh) * | 2017-11-28 | 2018-05-08 | 广东欧珀移动通信有限公司 | 图像亮度处理方法、装置、存储介质和电子设备 |
CN109961463A (zh) * | 2017-12-14 | 2019-07-02 | 北京京东尚科信息技术有限公司 | 基于对偶四元数的视图配准方法、系统、设备和存储介质 |
CN113781373A (zh) * | 2021-08-26 | 2021-12-10 | 云从科技集团股份有限公司 | 图像融合方法、设备及计算机存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6078701A (en) * | 1997-08-01 | 2000-06-20 | Sarnoff Corporation | Method and apparatus for performing local to global multiframe alignment to construct mosaic images |
CN101951487A (zh) * | 2010-08-19 | 2011-01-19 | 深圳大学 | 一种全景图像融合方法、系统及图像处理设备 |
CN102314686A (zh) * | 2011-08-03 | 2012-01-11 | 深圳大学 | 一种拼接类全景视频的基准视场确定方法、系统及设备 |
-
2014
- 2014-03-31 CN CN201410129615.4A patent/CN103942782A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6078701A (en) * | 1997-08-01 | 2000-06-20 | Sarnoff Corporation | Method and apparatus for performing local to global multiframe alignment to construct mosaic images |
CN101951487A (zh) * | 2010-08-19 | 2011-01-19 | 深圳大学 | 一种全景图像融合方法、系统及图像处理设备 |
CN102314686A (zh) * | 2011-08-03 | 2012-01-11 | 深圳大学 | 一种拼接类全景视频的基准视场确定方法、系统及设备 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104253931A (zh) * | 2014-08-22 | 2014-12-31 | 宁波Gqy视讯股份有限公司 | 一种多屏拼接显示系统的屏幕图像录制方法 |
CN104253931B (zh) * | 2014-08-22 | 2017-05-31 | 宁波Gqy视讯股份有限公司 | 一种多屏拼接显示系统的屏幕图像录制方法 |
CN106611403A (zh) * | 2016-05-25 | 2017-05-03 | 北京数科技有限公司 | 一种图像拼接方法及装置 |
CN107330849A (zh) * | 2017-06-12 | 2017-11-07 | 浙江大华技术股份有限公司 | 一种全景图像拼接的方法、装置、设备及存储介质 |
CN107330849B (zh) * | 2017-06-12 | 2020-10-30 | 浙江大华技术股份有限公司 | 一种全景图像拼接的方法、装置、设备及存储介质 |
CN107657600A (zh) * | 2017-09-05 | 2018-02-02 | 深圳市斯尔顿科技有限公司 | 眼科oct图像的基准图选取方法和图像合成方法 |
CN107657600B (zh) * | 2017-09-05 | 2020-06-30 | 深圳市斯尔顿科技有限公司 | 眼科oct图像的基准图选取方法和图像合成方法 |
CN108012078A (zh) * | 2017-11-28 | 2018-05-08 | 广东欧珀移动通信有限公司 | 图像亮度处理方法、装置、存储介质和电子设备 |
CN108012078B (zh) * | 2017-11-28 | 2020-03-27 | Oppo广东移动通信有限公司 | 图像亮度处理方法、装置、存储介质和电子设备 |
CN109961463A (zh) * | 2017-12-14 | 2019-07-02 | 北京京东尚科信息技术有限公司 | 基于对偶四元数的视图配准方法、系统、设备和存储介质 |
CN113781373A (zh) * | 2021-08-26 | 2021-12-10 | 云从科技集团股份有限公司 | 图像融合方法、设备及计算机存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103942782A (zh) | 一种图像拼接方法及装置 | |
US10574967B2 (en) | Autonomous performance of an operation on an object using a generated dense 3D model of the object | |
CN106537908B (zh) | 相机标定 | |
Padua et al. | Linear sequence-to-sequence alignment | |
US10438412B2 (en) | Techniques to facilitate accurate real and virtual object positioning in displayed scenes | |
CN106570907B (zh) | 一种相机标定方法及装置 | |
US20130129154A1 (en) | Methods and Apparatus for Detecting Poorly Conditioned Points in Bundle Adjustment | |
US11216919B2 (en) | Image processing method, apparatus, and computer-readable recording medium | |
CN101577004B (zh) | 一种极线矫正方法、装置和系统 | |
US11205281B2 (en) | Method and device for image rectification | |
US10769811B2 (en) | Space coordinate converting server and method thereof | |
CN104618648A (zh) | 一种全景视频拼接系统及拼接方法 | |
CN111062966A (zh) | 基于l-m算法和多项式插值对相机跟踪进行优化的方法 | |
US20190149798A1 (en) | Method and device for image rectification | |
US20190068876A1 (en) | Method Of Image Alignment For Stitching Using A Hybrid Strategy | |
Lee et al. | Correction of radial distortion using a planar checkerboard pattern and its image | |
US9576365B2 (en) | Camera alignment method using correspondence between multi-images | |
EP3216005B1 (en) | Image processing device and method for geometric calibration of images | |
CN115638788B (zh) | 语义矢量地图的构建方法、计算机设备及存储介质 | |
US20210295561A1 (en) | System for processing an image, method for processing the image, method for training a neural network for processing the image, and recording medium for executing the method | |
CN115937452A (zh) | 一种基于分布式计算的地图重建方法与系统 | |
CN113724141B (zh) | 一种图像校正方法、装置及电子设备 | |
US20220130138A1 (en) | Training data generation apparatus, method and program | |
CN114170373A (zh) | 目标物体标注方法、处理器、装置及搅拌站 | |
CN111145268A (zh) | 一种视频注册方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140723 |
|
RJ01 | Rejection of invention patent application after publication |