CN112581369A - 图像拼接方法以及装置 - Google Patents
图像拼接方法以及装置 Download PDFInfo
- Publication number
- CN112581369A CN112581369A CN202011548059.6A CN202011548059A CN112581369A CN 112581369 A CN112581369 A CN 112581369A CN 202011548059 A CN202011548059 A CN 202011548059A CN 112581369 A CN112581369 A CN 112581369A
- Authority
- CN
- China
- Prior art keywords
- projection matrix
- cameras
- image
- virtual
- projection
- 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
- 238000000034 method Methods 0.000 title claims abstract description 52
- 239000011159 matrix material Substances 0.000 claims abstract description 120
- 238000004364 calculation method Methods 0.000 claims abstract description 27
- 238000001514 detection method Methods 0.000 claims abstract description 20
- 238000013519 translation Methods 0.000 claims description 42
- 238000012937 correction Methods 0.000 claims description 22
- 230000015654 memory Effects 0.000 claims description 19
- 238000012952 Resampling Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 238000010276 construction Methods 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 229910001220 stainless steel Inorganic materials 0.000 description 1
- 239000010935 stainless steel Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4038—Image mosaicing, e.g. composing plane images from plane sub-images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4007—Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
- G06T7/85—Stereo camera calibration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/24—Aligning, centring, orientation detection or correction of the image
- G06V10/247—Aligning, centring, orientation detection or correction of the image by affine transforms, e.g. correction due to perspective effects; Quadrilaterals, e.g. trapezoids
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Processing (AREA)
Abstract
本申请公开了一种图像拼接方法以及装置。具体实现方案为:方法包括根据多个相机的标定参数,以及多个相机与目标物之间的摄影距离,计算初始投影矩阵;在目标物上标定检测点,在多个相机拍摄图像中确定检测点对应的多个同名点;在多个同名点的投影误差大于阈值的情况下,对初始投影矩阵进行修正处理,得到目标投影矩阵;利用目标投影矩阵,将多个相机拍摄的原始图像转换成对应的多个虚拟图像;对各虚拟图像进行拼接,得到拼接图像。不仅解决了不同距离下的投影矩阵计算问题,不需要建立标定场,节约了成本,提高了图像拼接速度,还提高了图像拼接的精确度。
Description
技术领域
本申请涉及图像处理领域,尤其涉及图像拼接领域。
背景技术
在一些近景图像采集场景中,需要对视线较广范围进行采集图像,通常利用多路摄像头来采集图像,并对采集的图片进行拼接。由于后序需要在拼接的图像上做进一步的小目标识别,需要对图像拼接的精确度有较高的要求。
目前,对图像进行全景拼接的方法主要包括基于图像匹配的拼接方法和基于相机标定参数的拼接方法。基于图像匹配的拼接方法是通过对具有重叠区域的图像进行特征提取、特征匹配,求取图像间的投影变换矩阵,完成全景拼接。但此方法需要重叠区域有明显的特征点,无法适用重叠区域小或缺乏纹理特征的场景。例如,机柜场景中有大量的金属网,无法采用常规的特征点提取、特征点匹配的处理模式寻找图像间的同名点。而且此方法计算量较大,对于实时处理的效率较低。基于相机标定参数的拼接方法是通过相机校正,标定相机的内外参数,确定相机的相对位置关系,根据共线方程建立全景图像与单张图像间的投影关系,进而进行全景拼接,其中,相机标定的精度是决定拼接精度的关键。大多数工作场景是在施工现场先对摄像头进行组装,再对组合摄像头进行标定,高精度相机标定需要高精度的相机标定场,在施工现场建立高精度的相机标定场成本太高,还会因为无法实现高精度相机标定,导致拼接误差较大。
发明内容
本申请实施例提供一种图像拼接方法以及装置,以解决相关技术存在的问题,技术方案如下:
第一方面,本申请实施例提供了一种图像拼接方法,包括:
根据多个相机的标定参数,以及多个相机与目标物之间的摄影距离,计算初始投影矩阵;
在目标物上标定检测点,在多个相机拍摄图像中确定检测点对应的多个同名点;
在多个同名点的投影误差大于阈值的情况下,对初始投影矩阵进行修正处理,得到目标投影矩阵;
利用目标投影矩阵,将多个相机拍摄的原始图像转换成对应的多个虚拟图像;
对各虚拟图像进行拼接,得到拼接图像。
在一种实施方式中,通过二维码获取多个相机与目标物之间的摄影距离。
在一种实施方式中,在多个同名点的投影误差大于阈值的情况下,对初始投影矩阵进行修正处理,得到目标投影矩阵,包括:
利用初始投影矩阵,计算多个同名点在对应的虚拟图像中的虚拟位置,并计算多个虚拟位置之间的偏差,得到投影误差;
在投影误差大于阈值的情况下,对多个虚拟位置进行平移修正;
根据多个修正后的虚拟位置坐标相同,计算得到平移参数;
利用平移参数修正初始投影矩阵,得到目标投影矩阵。
在一种实施方式中,还包括:
根据目标投影矩阵和多个相机的标定参数,对多个相机拍摄的原始图像进行正投影计算,得到各虚拟图像的有效范围;
获取各虚拟图像的重采样区域,并将各虚拟图像进行反投影计算和双线内插重采样,得到拼接图像上每个像素对应的双线性内插参数,构成索引表,以利用索引表对多个虚拟图像进行拼接。
第二方面,本申请实施例提供了一种图像拼接装置,包括:
初始投影矩阵计算模块,用于根据多个相机的标定参数,以及多个相机与目标物之间的摄影距离,计算初始投影矩阵;
同名点确定模块,用于在目标物上标定检测点,在多个相机拍摄图像中确定检测点对应的多个同名点;
目标投影矩阵生成模块,用于在多个同名点的投影误差大于阈值的情况下,对初始投影矩阵进行修正处理,得到目标投影矩阵;
原始图像投影模块,用于利用目标投影矩阵,将多个相机拍摄的原始图像转换成对应的多个虚拟图像;
虚拟图像拼接模块,用于对各虚拟图像进行拼接,得到拼接图像。
在一种实施方式中,还包括:
摄影距离获取模块,用于通过二维码获取多个相机与目标物之间的摄影距离。
在一种实施方式中,目标投影矩阵生成模块,包括:
投影误差计算子模块,用于利用初始投影矩阵,计算多个同名点在对应的虚拟图像中的虚拟位置,并计算多个虚拟位置之间的偏差,得到投影误差;
平移修正子模块,用于在投影误差大于阈值的情况下,对多个虚拟位置进行平移修正;
平移参数计算子模块,用于根据多个修正后的虚拟位置坐标相同,计算得到平移参数;
目标投影矩阵计算子模块,用于利用平移参数修正初始投影矩阵,得到目标投影矩阵。
第三方面,提供了一种电子设备,包括:
至少一个处理器;以及与至少一个处理器通信连接的存储器;
其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述任一项的方法。
第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,计算机指令用于使计算机执行上述任一项的方法。
上述申请中的一个实施例具有如下优点或有益效果:根据多个相机相对位置关系和相机距离目标物的摄影距离,简单且快速计算初始投影矩阵,并对初始投影矩阵进行优化,得到目标投影矩阵,从而利用目标投影矩阵对相机获取的原始图像转换成虚拟图像进行拼接,不仅解决了不同距离下的投影矩阵计算问题,不需要建立标定场,节约了成本,提高了图像拼接速度,还提高了图像拼接的精确度。
上述可选方式所具有的其他效果将在下文中结合具体实施例加以说明。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是根据本申请一实施例的一种图像拼接方法的示意图;
图2是根据本申请一实施例的一种图像拼接方法的场景示意图;
图3是根据本申请另一实施例的一种相机标定的坐标系关系示意图;
图4是根据本申请一实施例的一种棋盘标定板示意图;
图5是根据本申请另一实施例的一种世界坐标系下物点坐标、原始像点以及虚拟像点关系示意图;
图6是根据本申请一实施例的一种索引表构建方法的示意图;
图7是根据本申请一实施例的一种4拼相机拍摄服务器的原始图像;
图8是根据本申请一实施例的一种1号相机投影示意图;
图9是根据本申请另一实施例的一种2号相机投影示意图;
图10是根据本申请一实施例的一种3号相机投影示意图;
图11是根据本申请一实施例的一种4号相机投影示意图;
图12是根据本申请一实施例的一种拼接图像示意图;
图13是根据本申请一实施例的一种图像拼接装置的示意图;
图14是用来实现本申请实施例的一种图像拼接方法的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
在一种具体实施方式中,如图1所示,提供了一种图像拼接方法,包括如下步骤:
步骤S110:根据多个相机的标定参数,以及多个相机与目标物之间的摄影距离,计算初始投影矩阵;
步骤S120:在目标物上标定检测点,在多个相机拍摄图像中确定检测点对应的多个同名点;
步骤S130:在多个同名点的投影误差大于阈值的情况下,对初始投影矩阵进行修正处理,得到目标投影矩阵;
步骤S140:利用目标投影矩阵,将多个相机拍摄的原始图像转换成对应的多个虚拟图像;
步骤S150:对各虚拟图像进行拼接,得到拼接图像。
一种示例中,可以用4拼相机装置对机房中机柜里的服务器进行拍摄,并将拍摄的图像进行拼接。4拼相机装置是在一个水平结构上(例如一个不锈钢),沿着一条水平线方向固定4个相机。
如图2所示,对4拼相机装置获取的图像进行拼接的方法流程如下:
(1)相机的标定参数包括相机的内参和外参。对每个相机进行标定的过程:相机标定中涉及到的像素坐标系uv、图像坐标系o-xy、相机坐标系OC-XCYCZC,世界坐标系Ow-XwYwZw之间的关系如图3所示。根据相机成像模型,可以得到世界坐标系到像素坐标系的转换关系:
对单个相机进行畸变校正,获取相机的内参与畸变校正系数。根据多路相机的内参与畸变矫正系数,标定每个相机的外参。其中,相机的内参包括1/dx、1/dy、u0、v0、f。f为焦距,单位毫米;dx和dy表示:x方向和y方向的一个像素分别占多少长度单位,即一个像素代表的实际物理值的大小,其是实现图像物理坐标系与像素坐标系转换的关键。u0,v0表示图像的中心像素坐标和图像原点像素坐标之间相差的横向和纵向像素数。u表示像素的列数,v表示像素的行数,相机内参矩阵K,构建式(1-1)。
进行相机外参标定时,制作如图4所示的棋盘格标定板,保持标定板水平贴在任意的墙面上,标定板左下角垂直投影到4拼相机装置的位置,记为世界坐标系原点。世界坐标系的X轴沿标定板水平向右,Y轴有坐标原点垂直指向标定板;Z:沿标定板垂直向上。通过特征点检测获取每个棋盘格的角点坐标,在制作标定板时,测量每个棋盘格点的世界坐标。相机的外参可以是6个:三个轴的旋转参数分别为(ω、δ、θ),然后把每个轴的3*3旋转矩阵进行组合(即先矩阵之间相乘),得到相机旋转参数组成的旋转矩阵R;t表示平移矩阵,T是三个轴的平移参数(Tx、Ty、Tz)。采用PnP求解出每个相机的外参参数Rj和Tj(世界坐标系到j相机坐标系的旋转矩阵和平移参数)。由于世界坐标系的原点在4拼相机装置上,相机外参可以近似等价于4拼相机的相对位置关系。
(2)计算初始投影矩阵:使用4拼相机装置对机柜进行机检校时的场景与实际相拍摄时,4拼相机装置与机柜近乎水平,也就是相机录制视频的场景几乎一致,唯一区别的就是4个相机对机柜中的服务器进行拍摄时,摄影距离H不同。把世界坐标系沿着Y轴方向平移一个虚拟焦距f′(虚拟焦距可以取4个相机焦距的平均值,或者取其中任意一个相机的焦距),建立虚拟平面坐标系,以便于4拼相机装置的图像分别投影到虚拟平面坐标系中,得到虚拟相片,进而在虚拟平面坐标系中对虚拟相片进行拼接。
如图5所示,物点I是图像上任意一像素点,对应在机柜或者服务器上的真实世界中的点。i1和i2分别为物点I在原始相片和虚拟相片上的坐标。Sj是j号相机的投影中心。ij:表示物点I在相机j对应的图像上的像点,也就是i1。物点I在世界坐标系下的坐标为(XI,YI,ZI),在世界坐标系Ow-XwYwZw中,Sj-ij-I三点共线,物点I的坐标可用式(1-2)表示:
其中,t为直线参数,为直线的方向向量,Xs、Ys、Zs:代表相机的平移参数(世界坐标系>相机坐标系),Xsj、Ysj、Zsj,代表j号相机对应的平移参数(世界坐标系>相机坐标系),(TXsj,TYsj,TZsj):世界坐标系原点在j号相机坐标系下的坐标,代表j号相机由相机坐标系转换到世界坐标系的旋转矩阵。
直线的方向向量由式(1-3)得出:
其中,K是相机内参矩阵,i1的像素坐标是(u1,v1),RT是由相机坐标系换到世界坐标系转的旋转矩阵,I的绝对值表示坐标(Xj,Yj,Zj)的模。
通过j号相机检校正,可以获得j号相机拍摄物点I的原始相片在世界坐标系下的相机外参参数,包括三个旋转参数和三个平移参数(式(1-1)是由世界坐标系转换相机坐标系,需要行逆变换)。
综合式(1-2)、(1-3)得:
摄影距离H是真实世界中的物点I到相机的距离,摄影距离H通过二维码识别,可得:
YI=H (1-6)
联合式(1-5)、(1-6)即可得到物点I在世界坐标系下的三维坐标(XI,YI,ZI),把三维坐标(XI,YI,ZI)投影到虚拟平面坐标系上,得到虚拟像点i2在虚拟平面坐标系上的坐标。以此类推,计算各个相机拍摄目标物的相片投影在虚拟平面坐标系上的初始投影矩阵。
初始投影矩阵可以是一个3*3的矩阵,它描述的是由原始图像到虚拟图像的一个投影变换,可以通过这个投影矩阵,把原始图像投影投射到虚拟图像上,再进行重采样、融合,才能得到拼接图像。
(3)通过目标检测(例如,YOLOV4)方法,将服务器上的灯光作为检测点。各个相机分别对服务器上的灯光进行拍摄,并确定出同一个灯光在不同相机拍摄图像中的灯光像点,作为同名点。例如,对于同一个灯光,灯光在第一相机拍摄灯光的像点是A点,第二相机拍摄灯光的像点是B点…第j相机拍摄灯光的像点是J点。A点至J点为同一个灯光检测点灯光对应的同名点。利用步骤(2)计算灯光同名点在虚拟平面坐标系上的投影位置,由于初始投影矩阵存在误差,同一个灯光对应在原始图像上的像素点,投影在虚拟像片上的像点位置不同,即产生投影误差。投影误差是同名点在虚拟像片上的像素坐标差。如果投影误差小于阈值,拼接较为准确,无需修正优化。那么可以直接构建投影图到畸变图的索引表,利用索引表,将初始投影矩阵转换的多个虚拟图像进行拼接,得到拼接图像。如果投影误差大于阈值,对初始投影矩阵进行修正处理,即非线性优化初始投影矩阵,得到目标投影矩阵。然后,直接构建投影图到畸变图的索引表,利用索引表,将目标投影矩阵转换的多个虚拟图像,进而进行拼接,得到拼接图像。
本实施例中,利用相机标定板,获得相机之间相对位置关系(R、T),通过二维码识别得到相机距离目标物的实时距离,根据多个相机相对位置关系和相机距离目标物的摄影距离,简单且快速计算初始投影矩阵,并对初始投影矩阵进行优化,得到目标投影矩阵,从而利用目标投影矩阵对相机获取的原始图像转换成虚拟图像进行拼接,不仅解决了不同距离下的投影矩阵计算问题,不需要建立标定场,节约了成本,提高了图像拼接速度,还提高了图像拼接的精确度。
在一种实施方式中,步骤S110包括:通过二维码获取多个相机与目标物之间的摄影距离。
一种示例中,二维码设置在目标物上,例如,设置在服务器表面,各个相机通过识别目标物上的二维码,获取相机自身与目标物之间的摄影距离,并将获取的摄影距离发送给图像拼接装置,用于计算初始投影矩阵。各个相机能够实时获取自身与目标物之间的摄影距离,使得计算得到的初始投影矩阵更加准确。
在一种实施方式中,步骤S130包括:
步骤S131:利用初始投影矩阵,计算多个同名点在对应的虚拟图像中的虚拟位置,并计算多个虚拟位置之间的偏差,得到投影误差;
步骤S132:在投影误差大于阈值的情况下,对多个虚拟位置进行平移修正;
步骤S133:根据多个修正后的虚拟位置坐标相同,计算得到平移参数;
步骤S134:根据平移参数和初始投影矩阵,得到目标投影矩阵。
一种示例中,获取原始图像上灯光坐标,通过目标检测、模板匹配找到同一个灯光在不同相机拍摄的图片上的位置,即:同名点。对同名点的坐标进行畸变矫正,得到畸变校正后的灯光像点坐标(xi,yi)。经过初始投影变换后的坐标(x′i,y′i)为(1-6)
其中,H:3*3的投影矩阵;H11:3*3矩阵中的第1行第1列;H12:3*3矩阵中的第1行第2列;H13:3*3矩阵中的第1行第3列;H21:3*3矩阵中的第2行第1列;H22:3*3矩阵中的第2行第2列;H23:3*3矩阵中的第2行第3列;(xi,yi)对应的齐次坐标形式(xi,yi,zi),zi=1。H13、H23为待优化的平移参数。
根据重叠区域同名点坐标相等的原则,有:
其中,下标共有3组,i和j分别代表相机编号,第i个相机和第j个相机,即(i,j)={(1,2),(2,3),(3,4)}。例如x′1-x′2=0,表示1号相机对应的投影图像上某个像素坐标经过平移修正后应与2号相机投图像经过平移修正后同名点坐标相等,可以列出3组共六个方程。六个方程中含有共8个平移参数,表示第i个相机,对应投影矩阵中的平移参数。由于式(1-6)中只有两个未知数H13、H23,展开后等价于二元一次方程,使用最小二拟合进行解算,求得平移参数H13、H23。
本实施方式中,4个相机固定在一个稳定的水平结构上,通过相机标定,可以校正相机的旋转,由于摄影距离的误差影响,会导致相机在平移参数上存在较大误差。由于在3*3的投影矩阵中,这两个参数H13、H23控制平移,而平移误差对应投影矩阵中的H13、H23。因此,通过平移参数重新计算投影矩阵,可以消除平移误差,得到目标投影矩阵,利用优化得到的目标投影矩阵提高拼接的精确度。
在一种实施方式中,还包括:
步骤S150:根据目标投影矩阵和多个相机的标定参数,对多个相机拍摄的原始图像进行正投影计算,得到各虚拟图像的有效范围;
步骤S160:获取各虚拟图像的重采样区域,并将各虚拟图像进行反投影计算和双线内插重采样,得到拼接图像上每个像素对应的双线性内插参数,构成索引表,以利用索引表对多个虚拟图像进行拼接。
一种示例中,在图像拼接之前,还需要构建索引表。如图6所示,索引表构建具体步骤如下:(a)使用投影矩阵、相机内参,通过图像正投影计算单张图像在虚拟拼接图像上的有效范围。图像正投影:由原始图像转换到虚拟像片上的变换过程。(b)计算每个虚拟图像在重叠范围的中心线,中心线左边取左图、右边取右图,获得每个虚拟图像在拼接图像上的重采样区域;(c)遍历重采样区域的每个像素,每个像素的坐标反投影到无畸变图像上的像素、再反投影到畸变图像上的像素,得到拼接图像上重采样区域中一个像素(整数)对应的原始图像上的像素(小数),进而可以计算出投影图像(虚拟图像)上任意一个像素对应原始图像上的四个整型像素,得到双线性内插的参数。图像反向投影:由虚拟像片转换到原始像片变换过程。无畸变图像是原始图像经过畸变校正后得到的图像,是在图像拼接中,一个用于计算的中间变量。畸变图像经过畸变校正,就可以得到无畸变图像。(d)拼接图像上每个像素对应的双线性内插参数构成索引表。4拼相机录制视频时,使用同一组投影参数,因此索引表只需初始化一次,避免重复计算。经过优化后的一帧图像拼接时间40ms,可以满足实时拼接需求。
本实施方式中,根据投影矩阵,通过坐标正反投影,计算出拼接图像时所需的双线性内插参数,构建插值索引表。减少了图像拼接过程中灰度插值参数的重复计算,达到了拼接加速的效果。
上述实施例中,通过优化完成的投影矩阵,将各路相机采集的原始图像投影至虚拟平面中,计算投影矩阵,进而得到虚拟图像,在虚拟平面内对虚拟图像进行拼接。利用初始投影矩阵将4个相机拍摄的4个原始图像投影至虚拟平面,得到对应的4个虚拟图像,将4个虚拟图像进行拼接,得到拼接图像。如图7所示,四拼相机装置拍摄机柜中服务器的原始图像。1号相机拍摄机柜中服务器的原始图像,利用初始投影矩阵得到的虚拟图像如图8所示;2号相机拍摄的机柜中服务器的原始图像,利用初始投影矩阵得到的虚拟图像如图9所示;3号相机拍摄的机柜中服务器的原始图像,利用初始投影矩阵得到的虚拟图像如图10所示;4号相机拍摄的机柜中服务器的原始图像,利用初始投影矩阵得到的虚拟图像如图11所示;最后基于相关接缝算法对接缝处进行处理,完成拼接图像的输出,输出的拼接图像如图12所示。
在另一种具体实施方式中,如图13所示,提供了一种图像拼接装置,包括:
初始投影矩阵计算模块110,用于根据多个相机的标定参数,以及多个相机与目标物之间的摄影距离,计算初始投影矩阵;
同名点确定模块120,用于在目标物上标定检测点,在多个相机拍摄图像中确定检测点对应的多个同名点;
目标投影矩阵生成模块130,用于在多个同名点的投影误差大于阈值的情况下,对初始投影矩阵进行修正处理,得到目标投影矩阵;
原始图像投影模块140,用于利用目标投影矩阵,将多个相机拍摄的原始图像转换成对应的多个虚拟图像;
虚拟图像拼接模块150,用于对各虚拟图像进行拼接,得到拼接图像。
在一种实施方式中,还包括:
摄影距离获取模块,用于通过二维码获取多个相机与目标物之间的摄影距离。
在一种实施方式中,目标投影矩阵生成模块,包括:
投影误差计算子模块,用于利用初始投影矩阵,计算多个同名点在对应的虚拟图像中的虚拟位置,并计算多个虚拟位置之间的偏差,得到投影误差;
平移修正子模块,用于在投影误差大于阈值的情况下,对多个虚拟位置进行平移修正;
平移参数计算子模块,用于根据多个修正后的虚拟位置坐标相同,计算得到平移参数;
目标投影矩阵计算子模块,用于利用平移参数修正初始投影矩阵,得到目标投影矩阵。
本申请实施例各装置中的各模块的功能可以参见上述方法中的对应描述,在此不再赘述。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
如图10所示,是根据本申请实施例的一种图像拼接方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图10所示,该电子设备包括:一个或多个处理器1001、存储器1002,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示图形用户界面(Graphical User Interface,GUI)的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图10中以一个处理器1001为例。
存储器1002即为本申请所提供的非瞬时计算机可读存储介质。其中,存储器存储有可由至少一个处理器执行的指令,以使至少一个处理器执行本申请所提供的一种图像拼接方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的一种图像拼接方法。
存储器1002作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的一种图像拼接方法对应的程序指令/模块(例如,附图13所示的初始投影矩阵计算模块110、同名点确定模块120、目标投影矩阵生成模块130、原始图像投影模块140、虚拟图像拼接模块150)。处理器1001通过运行存储在存储器1002中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的一种图像拼接方法。
存储器1002可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据一种图像拼接方法的电子设备的使用所创建的数据等。此外,存储器1002可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器1002可选包括相对于处理器1001远程设置的存储器,这些远程存储器可以通过网络连接至上述电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
上述电子设备还可以包括:输入装置1003和输出装置1004。处理器1001、存储器1002、输入装置1003和输出装置1004可以通过总线或者其他方式连接,图10中以通过总线连接为例。
输入装置1003可接收输入的数字或字符信息,以及产生与上述电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置1004可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(Liquid Cr10stal Displa10,LCD)、发光二极管(Light Emitting Diode,LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用集成电路(Application Specific Integrated Circuits,ASIC)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(programmable logic device,PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(Cathode Ray Tube,阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(Local Area Network,LAN)、广域网(Wide Area Network,WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
Claims (9)
1.一种图像拼接方法,其特征在于,包括:
根据多个相机的标定参数,以及所述多个相机与目标物之间的摄影距离,计算初始投影矩阵;
在所述目标物上标定检测点,在所述多个相机拍摄图像中确定所述检测点对应的多个同名点;
在所述多个同名点的投影误差大于阈值的情况下,对所述初始投影矩阵进行修正处理,得到目标投影矩阵;
利用所述目标投影矩阵,将所述多个相机拍摄的原始图像转换成对应的多个虚拟图像;
对各所述虚拟图像进行拼接,得到拼接图像。
2.根据权利要求1所述的方法,其特征在于,通过二维码获取所述多个相机与所述目标物之间的摄影距离。
3.根据权利要求1所述的方法,其特征在于,所述在所述多个同名点的投影误差大于阈值的情况下,对所述初始投影矩阵进行修正处理,得到目标投影矩阵,包括:
利用所述初始投影矩阵,计算所述多个同名点在对应的虚拟图像中的虚拟位置,并计算多个虚拟位置之间的偏差,得到所述投影误差;
在所述投影误差大于所述阈值的情况下,对所述多个虚拟位置进行平移修正;
根据多个修正后的虚拟位置坐标相同,计算得到平移参数;
利用所述平移参数修正所述初始投影矩阵,得到所述目标投影矩阵。
4.根据权利要求1所述的方法,其特征在于,还包括:
根据所述目标投影矩阵和所述多个相机的标定参数,对所述多个相机拍摄的原始图像进行正投影计算,得到各所述虚拟图像的有效范围;
获取各所述虚拟图像的重采样区域,并将各所述虚拟图像进行反投影计算和双线内插重采样,得到所述拼接图像上每个像素对应的双线性内插参数,构成索引表,以利用所述索引表对所述多个虚拟图像进行拼接。
5.一种图像拼接装置,其特征在于,包括:
初始投影矩阵计算模块,用于根据多个相机的标定参数,以及所述多个相机与目标物之间的摄影距离,计算初始投影矩阵;
同名点确定模块,用于在所述目标物上标定检测点,在所述多个相机拍摄图像中确定所述检测点对应的多个同名点;
目标投影矩阵生成模块,用于在所述多个同名点的投影误差大于阈值的情况下,对所述初始投影矩阵进行修正处理,得到目标投影矩阵;
原始图像投影模块,用于利用所述目标投影矩阵,将所述多个相机拍摄的原始图像转换成对应的多个虚拟图像;
虚拟图像拼接模块,用于对各所述虚拟图像进行拼接,得到拼接图像。
6.根据权利要求5所述的装置,其特征在于,还包括:
摄影距离获取模块,用于通过二维码获取所述多个相机与所述目标物之间的摄影距离。
7.根据权利要求5所述的装置,其特征在于,所述目标投影矩阵生成模块,包括:
投影误差计算子模块,用于利用所述初始投影矩阵,计算所述多个同名点在对应的虚拟图像中的虚拟位置,并计算多个虚拟位置之间的偏差,得到所述投影误差;
平移修正子模块,用于在所述投影误差大于所述阈值的情况下,对所述多个虚拟位置进行平移修正;
平移参数计算子模块,用于根据多个修正后的虚拟位置坐标相同,计算得到平移参数;
目标投影矩阵计算子模块,用于利用所述平移参数修正所述初始投影矩阵,得到所述目标投影矩阵。
8.一种电子设备,其特征在于,包括:
至少一个处理器;以及与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-4中任一项所述的方法。
9.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-4中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011548059.6A CN112581369A (zh) | 2020-12-24 | 2020-12-24 | 图像拼接方法以及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011548059.6A CN112581369A (zh) | 2020-12-24 | 2020-12-24 | 图像拼接方法以及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112581369A true CN112581369A (zh) | 2021-03-30 |
Family
ID=75139554
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011548059.6A Pending CN112581369A (zh) | 2020-12-24 | 2020-12-24 | 图像拼接方法以及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112581369A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113112553A (zh) * | 2021-05-26 | 2021-07-13 | 北京三快在线科技有限公司 | 双目相机的参数标定方法、装置、电子设备及存储介质 |
CN113240615A (zh) * | 2021-05-20 | 2021-08-10 | 北京城市网邻信息技术有限公司 | 图像处理方法、装置、电子设备和计算机可读存储介质 |
CN113450254A (zh) * | 2021-05-20 | 2021-09-28 | 北京城市网邻信息技术有限公司 | 图像处理方法、装置、电子设备和计算机可读存储介质 |
CN116418976A (zh) * | 2022-11-24 | 2023-07-11 | 北京的卢铭视科技有限公司 | 结构光相机的产测sdk授权方法、电子设备及存储介质 |
CN116612168A (zh) * | 2023-04-20 | 2023-08-18 | 北京百度网讯科技有限公司 | 图像处理方法、装置、电子设备、图像处理系统及介质 |
WO2023216822A1 (zh) * | 2022-05-13 | 2023-11-16 | 北京字节跳动网络技术有限公司 | 图像校正方法、装置、电子设备及存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101710932A (zh) * | 2009-12-21 | 2010-05-19 | 深圳华为通信技术有限公司 | 图像拼接方法及装置 |
CN103971353A (zh) * | 2014-05-14 | 2014-08-06 | 大连理工大学 | 采用激光辅助大型锻件测量图像数据的拼接方法 |
CN104807448A (zh) * | 2015-04-24 | 2015-07-29 | 北京林业大学 | 一种线路纵横断面地面立体摄影测算方法 |
CN105447850A (zh) * | 2015-11-12 | 2016-03-30 | 浙江大学 | 一种基于多视点图像的全景图拼接合成方法 |
CN107830813A (zh) * | 2017-09-15 | 2018-03-23 | 浙江理工大学 | 激光线标记的长轴类零件图像拼接及弯曲变形检测方法 |
CN109064404A (zh) * | 2018-08-10 | 2018-12-21 | 西安电子科技大学 | 一种基于多相机标定的全景拼接方法、全景拼接系统 |
CN109840884A (zh) * | 2017-11-29 | 2019-06-04 | 杭州海康威视数字技术股份有限公司 | 一种图像拼接方法、装置及电子设备 |
WO2019192358A1 (zh) * | 2018-04-02 | 2019-10-10 | 杭州海康威视数字技术股份有限公司 | 一种全景视频合成方法、装置及电子设备 |
US20190335099A1 (en) * | 2016-06-14 | 2019-10-31 | Hangzhou Hikvision Digital Technology Co., Ltd. | Panoramic camera and photographing method thereof |
CN110782394A (zh) * | 2019-10-21 | 2020-02-11 | 中国人民解放军63861部队 | 全景视频快速拼接方法及系统 |
CN111968181A (zh) * | 2020-08-21 | 2020-11-20 | 中科微至智能制造科技江苏股份有限公司 | 一种基于图像处理的包裹位置实时检测方法及系统 |
-
2020
- 2020-12-24 CN CN202011548059.6A patent/CN112581369A/zh active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101710932A (zh) * | 2009-12-21 | 2010-05-19 | 深圳华为通信技术有限公司 | 图像拼接方法及装置 |
CN103971353A (zh) * | 2014-05-14 | 2014-08-06 | 大连理工大学 | 采用激光辅助大型锻件测量图像数据的拼接方法 |
CN104807448A (zh) * | 2015-04-24 | 2015-07-29 | 北京林业大学 | 一种线路纵横断面地面立体摄影测算方法 |
CN105447850A (zh) * | 2015-11-12 | 2016-03-30 | 浙江大学 | 一种基于多视点图像的全景图拼接合成方法 |
US20190335099A1 (en) * | 2016-06-14 | 2019-10-31 | Hangzhou Hikvision Digital Technology Co., Ltd. | Panoramic camera and photographing method thereof |
CN107830813A (zh) * | 2017-09-15 | 2018-03-23 | 浙江理工大学 | 激光线标记的长轴类零件图像拼接及弯曲变形检测方法 |
CN109840884A (zh) * | 2017-11-29 | 2019-06-04 | 杭州海康威视数字技术股份有限公司 | 一种图像拼接方法、装置及电子设备 |
WO2019192358A1 (zh) * | 2018-04-02 | 2019-10-10 | 杭州海康威视数字技术股份有限公司 | 一种全景视频合成方法、装置及电子设备 |
CN109064404A (zh) * | 2018-08-10 | 2018-12-21 | 西安电子科技大学 | 一种基于多相机标定的全景拼接方法、全景拼接系统 |
CN110782394A (zh) * | 2019-10-21 | 2020-02-11 | 中国人民解放军63861部队 | 全景视频快速拼接方法及系统 |
CN111968181A (zh) * | 2020-08-21 | 2020-11-20 | 中科微至智能制造科技江苏股份有限公司 | 一种基于图像处理的包裹位置实时检测方法及系统 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113240615A (zh) * | 2021-05-20 | 2021-08-10 | 北京城市网邻信息技术有限公司 | 图像处理方法、装置、电子设备和计算机可读存储介质 |
CN113450254A (zh) * | 2021-05-20 | 2021-09-28 | 北京城市网邻信息技术有限公司 | 图像处理方法、装置、电子设备和计算机可读存储介质 |
CN113450254B (zh) * | 2021-05-20 | 2022-06-17 | 北京城市网邻信息技术有限公司 | 图像处理方法、装置、电子设备和计算机可读存储介质 |
CN113112553A (zh) * | 2021-05-26 | 2021-07-13 | 北京三快在线科技有限公司 | 双目相机的参数标定方法、装置、电子设备及存储介质 |
CN113112553B (zh) * | 2021-05-26 | 2022-07-29 | 北京三快在线科技有限公司 | 双目相机的参数标定方法、装置、电子设备及存储介质 |
WO2023216822A1 (zh) * | 2022-05-13 | 2023-11-16 | 北京字节跳动网络技术有限公司 | 图像校正方法、装置、电子设备及存储介质 |
CN116418976A (zh) * | 2022-11-24 | 2023-07-11 | 北京的卢铭视科技有限公司 | 结构光相机的产测sdk授权方法、电子设备及存储介质 |
CN116418976B (zh) * | 2022-11-24 | 2023-12-12 | 北京的卢铭视科技有限公司 | 结构光相机的产测sdk授权方法、电子设备及存储介质 |
CN116612168A (zh) * | 2023-04-20 | 2023-08-18 | 北京百度网讯科技有限公司 | 图像处理方法、装置、电子设备、图像处理系统及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112581369A (zh) | 图像拼接方法以及装置 | |
US11310480B2 (en) | Systems and methods for determining three dimensional measurements in telemedicine application | |
JP5580164B2 (ja) | 光学情報処理装置、光学情報処理方法、光学情報処理システム、光学情報処理プログラム | |
CN111750820B (zh) | 影像定位方法及其系统 | |
JP2019149809A (ja) | 撮像装置のモデリングおよび校正のためのシステムおよびその方法 | |
CN105453136B (zh) | 使用自动聚焦反馈进行立体侧倾校正的系统、方法及设备 | |
Im et al. | High quality structure from small motion for rolling shutter cameras | |
CN107358633A (zh) | 一种基于三点标定物的多相机内外参标定方法 | |
WO2021139176A1 (zh) | 基于双目摄像机标定的行人轨迹跟踪方法、装置、计算机设备及存储介质 | |
CN112288826B (zh) | 双目相机的标定方法、装置及终端 | |
JPWO2018235163A1 (ja) | キャリブレーション装置、キャリブレーション用チャート、チャートパターン生成装置、およびキャリブレーション方法 | |
JP2022501684A (ja) | 撮影に基づく3dモデリングシステムおよび方法、自動3dモデリング装置および方法 | |
CN108629829A (zh) | 一种球幕相机与深度相机结合的三维建模方法和系统 | |
CN112862897B (zh) | 一种基于相位移编码圆的相机离焦状态下的快速标定方法 | |
US9990739B1 (en) | Method and device for fisheye camera automatic calibration | |
CN111340737B (zh) | 图像矫正方法、装置和电子系统 | |
WO2020181409A1 (zh) | 拍摄装置参数标定方法、设备及存储介质 | |
US8509522B2 (en) | Camera translation using rotation from device | |
US20170289516A1 (en) | Depth map based perspective correction in digital photos | |
JP2014027528A (ja) | 射影変換映像生成装置及びそのプログラム、並びに、多視点映像表現装置 | |
Chatterjee et al. | A nonlinear Gauss–Seidel algorithm for noncoplanar and coplanar camera calibration with convergence analysis | |
CN111784842B (zh) | 三维重建方法、装置、设备及可读储存介质 | |
CN111432117A (zh) | 图像矫正方法、装置和电子系统 | |
JP2017103695A (ja) | 画像処理装置、画像処理方法、及びそのプログラム | |
JP5925109B2 (ja) | 画像処理装置、その制御方法、および制御プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |