CN117455767B - 全景图像拼接方法、装置、设备及存储介质 - Google Patents
全景图像拼接方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN117455767B CN117455767B CN202311798424.2A CN202311798424A CN117455767B CN 117455767 B CN117455767 B CN 117455767B CN 202311798424 A CN202311798424 A CN 202311798424A CN 117455767 B CN117455767 B CN 117455767B
- Authority
- CN
- China
- Prior art keywords
- images
- spliced
- image
- adjacent
- standard
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 239000011159 matrix material Substances 0.000 claims abstract description 161
- 238000006243 chemical reaction Methods 0.000 claims description 37
- 238000004590 computer program Methods 0.000 claims description 12
- 238000012545 processing Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 7
- 238000005457 optimization Methods 0.000 description 7
- 238000013507 mapping Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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
-
- 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/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- 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/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/32—Indexing scheme for image data processing or generation, in general involving image mosaicing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Image Processing (AREA)
- Stereoscopic And Panoramic Photography (AREA)
Abstract
本发明公开一种全景图像拼接方法、装置、设备及存储介质,该方法包括:获取所有的待拼接图像;将相邻的所述待拼接图像对应的相机之间进行立体校正,得到对应的基线长度、内参矩阵以及旋转矩阵;根据所述基线长度、内参矩阵以及旋转矩阵将所述相邻的待拼接图像进行拼接,得到拼接图像;确定相邻的所述拼接图像之间的重叠图像,根据所述重叠图像将所述相邻的拼接图像进行拼接,得到全景图像。从数学层面实现全景图像拼接,并解决视场角缺失的问题。
Description
技术领域
本发明涉及图像处理技术领域,尤其涉及一种全景图像拼接方法、装置、设备及存储介质。
背景技术
全景拼接是将多幅图像拼接成一幅大尺度图像。目前最常用的全景图像拼接法是基于特征点匹配实现的,该方法实现全景图像拼接最重要的两个步骤就是特征点匹配和图像匹配;特征点匹配,即找到两幅图像相同的特征点进行匹配;图像匹配,即找到两幅图像之间重叠的部分进行拼接。其中,特征点匹配法实现全景图像拼接的方法主要包括基于全局映射的全景图像拼接、基于局部映射的全景图像拼接和基于seam(拼缝线)的全景图像拼接。此外,还存在其他全景图像拼接法如基于立体校正的全景图像拼接。上述方法均能够实现全景图像拼接,但是当前基于特征点匹配的全景图像拼接法需要通过某种优化方式求得最优解,该过程并没有给出显式的公式推导,无法从数学层面进行分析。而当前基于立体校正的拼接方法在拼接的视场角超过180°时存在像素缺失的问题。
发明内容
本发明所要解决的技术问题是:提供一种全景图像拼接方法、装置、设备及存储介质,从数学层面实现全景图像拼接,并解决视场角缺失的问题。
为了解决上述技术问题,本发明采用的技术方案为:
一种全景图像拼接方法,包括:
获取所有的待拼接图像;
将相邻的所述待拼接图像对应的相机之间进行立体校正,得到对应的基线长度、内参矩阵以及旋转矩阵;
根据所述基线长度、内参矩阵以及旋转矩阵将所述相邻的待拼接图像进行拼接,得到拼接图像;
确定相邻的所述拼接图像之间的重叠图像,根据所述重叠图像将所述相邻的拼接图像进行拼接,得到全景图像。
为了解决上述技术问题,本发明采用的另一种技术方案为:
一种全景图像拼接装置,包括:
获取模块,用于获取所有的待拼接图像;
校正模块,用于将相邻的所述待拼接图像对应的相机之间进行立体校正,得到对应的基线长度、内参矩阵以及旋转矩阵;
第一拼接模块,用于根据所述基线长度、内参矩阵以及旋转矩阵将所述相邻的待拼接图像进行拼接,得到拼接图像;
全景拼接模块,用于确定相邻的所述拼接图像之间的重叠图像,根据所述重叠图像将所述相邻的拼接图像进行拼接,得到全景图像。
为了解决上述技术问题,本发明采用的另一种技术方案为:
一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述一种全景图像拼接方法中的各个步骤。
为了解决上述技术问题,本发明采用的另一种技术方案为:
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述一种全景图像拼接方法中的各个步骤。
本发明的有益效果在于:将用于拍摄待拼接图像的相邻相机通过立体校正的方式确定两个相机之间的基线长度以及位姿关系,即旋转矩阵;从而将相邻相机拍摄的待拼接图像通过各自的内参矩阵、旋转矩阵以及基线长度实现拼接,以得到两张相邻待拼接图像组成的拼接图像;在得到所有的拼接图像后,确定相邻的拼接图像之间的重叠图像,根据重叠图像将两个拼接图像再次进行拼接,最终得到完整的全景图像。以此方式,将共有的重叠图像在不同拼接图像的位姿关系作为两个相邻的拼接图像进行拼接的中间参数,达到从数学层面完成全景图像拼接的效果,避免采用特征点匹配时需要进行优化求解的问题。同时相比于现有技术中逐一进行立体校正后拼接的方式,本发明将待拼接图像进行立体校正后投影于三维空间完成全景图像拼接,由于图像在三维空间中的旋转不会有像素损失,能够有效避免相机在二维平面进行立体校正时由于旋转角度过大,而造成的边缘像素缺失问题。
附图说明
图1为本发明实施例提供的一种全景图像拼接方法的步骤流程图;
图2为本发明实施例提供的一种全景图像拼接方法的拼接示意图;
图3为本发明实施例提供的一种全景图像拼接装置的结构示意图;
图4为本发明实施例提供的一种电子设备的结构示意图;
标号说明:
300、一种全景图像拼接装置;301、获取模块;302、校正模块;303、第一拼接模块;304、全景拼接模块;400、一种电子设备;401、存储器;402、处理器。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
请参照图1,本发明实施例提供了一种全景图像拼接方法,包括:
获取所有的待拼接图像;
将相邻的所述待拼接图像对应的相机之间进行立体校正,得到对应的基线长度、内参矩阵以及旋转矩阵;
根据所述基线长度、内参矩阵以及旋转矩阵将所述相邻的待拼接图像进行拼接,得到拼接图像;
确定相邻的所述拼接图像之间的重叠图像,根据所述重叠图像将所述相邻的拼接图像进行拼接,得到全景图像。
从上述描述可知,本发明的有益效果在于:将用于拍摄待拼接图像的相邻相机通过立体校正的方式确定两个相机之间的基线长度以及位姿关系,即旋转矩阵;从而将相邻相机拍摄的待拼接图像通过各自的内参矩阵、旋转矩阵以及基线长度实现拼接,以得到两张相邻待拼接图像组成的拼接图像;在得到所有的拼接图像后,确定相邻的拼接图像之间的重叠图像,根据重叠图像将两个拼接图像再次进行拼接,最终得到完整的全景图像。以此方式,将共有的重叠图像在不同拼接图像的位姿关系作为两个相邻的拼接图像进行拼接的中间参数,达到从数学层面完成全景图像拼接的效果,避免采用特征点匹配时需要进行优化求解的问题。同时相比于现有技术中逐一进行立体校正后拼接的方式,本发明将待拼接图像进行立体校正后投影于三维空间完成全景图像拼接,由于图像在三维空间中的旋转不会有像素损失,能够有效避免相机在二维平面进行立体校正时由于旋转角度过大,而造成的边缘像素缺失问题。
进一步地,所述根据所述基线长度、内参矩阵以及旋转矩阵将所述相邻的待拼接图像进行拼接,得到拼接图像包括:
将所述相邻的待拼接图像分别根据对应的所述内参矩阵以及旋转矩阵投影至立体空间,得到相邻的立体图像;
获取预设的深度信息,根据所述深度信息对所述相邻的立体图像分别进行缩放处理,得到相邻的标准图像;
根据所述基线长度平移所述相邻的标准图像,得到拼接图像。
由上述描述可知,先将相邻的相机拍摄的待拼接图像分别通过其内参矩阵和旋转矩阵投影到立体空间,得到两张相邻的立体图像,即此时两张立体图像之间为相对平行的关系;再将立体图像投影至预设的深度信息下,得到两张相邻的标准图像,即此时两张标准图像之间的尺度一致;在此深度信息下将其中一张标准图像移动基线长度即可完成当前深度信息下两个相邻待拼接图像之间的拼接,得到拼接图像。选取两两相邻的待拼接图像进行立体校正的方式,能够有效避免不相邻的待拼接图像在立体校正时存在旋转角度过大而造成像素缺失的问题,提高全景图像拼接效果。
进一步地,所述确定相邻的所述拼接图像之间的重叠图像,根据所述重叠图像将所述相邻的拼接图像进行拼接,得到全景图像包括:
确定相邻的所述拼接图像之间的重叠图像,分别获取所述重叠图像在所述拼接图像中的立体图像;
根据所述立体图像之间的转换关系对所述相邻的拼接图像进行拼接,得到全景图像。
由上述描述可知,由于拼接图像是由两张相邻的待拼接图像拼接而成的,因此在两张相邻的拼接图像之间必然存在共有的重叠图像。而基于特征点匹配的全景拼接方法其本质就是为了查找到两张图像之间共有的重叠图像,只是在传统的特征点匹配法中,两张图像之间属于独立的图像,因此需要通过优化方式查找到最优的特征点进行匹配处理。而在本发明中,通过相邻的图像进行拼接,在拼接图像中人为构造了“特征点”即重叠图像进行拼接,避免了采用特征点匹配时需要进行优化求解的问题。
进一步地,所述根据所述立体图像之间的转换关系对所述相邻的拼接图像进行拼接,得到全景图像包括:
在所述相邻的拼接图像中随机选择一张标准拼接图像,并将另一张标记为非标准拼接图像;
计算所述非标准拼接图像对应的立体图像与所述标准拼接图像对应的立体图像之间的转换关系;
根据所述转换关系对所述标准拼接图像和所述非标准拼接图像进行拼接,得到全景图像。
由上述描述可知,在相邻的拼接图像之间的位姿关系也存在一定的差异,因此拼接图像之间无法直接进行拼接。而是基于重叠图像在不同拼接图像之间的坐标关系,将不同的拼接图像进行坐标转换后,完成全景图像拼接。其中,重叠图像在不同拼接图像之间的坐标关系是通过内参矩阵和旋转矩阵进行转换得到,因此通过获取重叠图像在不同拼接图像中的立体图像,即可得到对应的坐标关系;再通过联立两张已知的立体图像即可得到两张立体图像的转换关系,并以此对两张相邻的拼接图像进行坐标转换,得到全景图像;以此方式,实现从数学层面对图像拼接进行推导、分析和处理,无需对图像的像素拼接和数据处理,也无需进行特征点匹配求解。
进一步地,所述根据所述转换关系对所述标准拼接图像和所述非标准拼接图像进行拼接,得到全景图像包括:
根据所述转换关系将所述非标准拼接图像转换至所述标准拼接图像的坐标系中,得到目标拼接图像;
根据所述基线长度向所述标准拼接图像的方向平移所述目标拼接图像,得到待校正图像;
根据所述标准拼接图像中未重叠图像对应的旋转矩阵将所述待校正图像进行校正,得到全景图像。
由上述描述可知,选定标准拼接图像后,将非标准拼接图像根据转换关系投影至标准拼接图像的坐标系中,得到目标拼接图像,则此时标准拼接图像和非标准拼接图像位于同一坐标系中,在此情况下,只需要将目标拼接图像向标准拼接图像平移基线长度,即可完成两张拼接图像的拼接,得到待校正图像;同时通过标准拼接图像中未重叠图像对应的旋转矩阵对待校正图像进行校正,以表面全景图像出现整体倾斜的问题。在此拼接过程中,本发明并未对图像的像素点进行相关处理,而是基于图像之间的坐标关系进行转换处理和拼接,即全景图像拼接通过图像的坐标计算得到,从数学层面完成拼接过程,无需图像处理,简化了全景图像拼接的过程,提高拼接效率。
进一步地,所述将相邻的所述待拼接图像对应的相机之间进行立体校正,得到对应的基线长度、内参矩阵以及旋转矩阵包括:
对所有所述待拼接图像对应的相机分别进行单目标定,得到每一所述相机对应的初始内参矩阵和畸变参数;
根据所述初始内参矩阵和畸变参数对所有所述相机分别进行畸变校正,得到每一所述相机对应的标准内参矩阵;
根据所述标准内参矩阵在相邻的所述待拼接图像对应的相机之间进行双目立体标定和立体校正,得到对应的基线长度、内参矩阵以及旋转矩阵。
由上述描述可知,先通过对每一相机进行畸变校正后,再对两两相邻的相机之间进行双目立体标定和立体校正,即可得到两个相邻相机之间相对的基线长度、内参矩阵和旋转矩阵,以便后续对相邻待拼接图像进行投影,提高投影准确性。
进一步地,所述将相邻的所述待拼接图像对应的相机之间进行立体校正,得到对应的基线长度、内参矩阵以及旋转矩阵包括:
对所有所述待拼接图像对应的相机分别进行单目标定后,在所有所述相机之间进行多目立体标定,得到每一所述相机对应的内参矩阵和外参矩阵;
根据所述外参矩阵在相邻的所述待拼接图像对应的相机之间进行立体校正,得到对应的基线长度以及旋转矩阵。
由上述描述可知,可先对所有相机进行多目立体标定,由此得到所有相机对应的内参矩阵和外参矩阵,再基于外参矩阵对两两相邻的相机之间进行立体校正,从而得到对应的基线长度和旋转矩阵,以便后续对相邻待拼接图像进行投影,提高拼接效率。
请参照图3,本发明另一实施例提供了一种全景图像拼接装置,包括:
获取模块,用于获取所有的待拼接图像;
校正模块,用于将相邻的所述待拼接图像对应的相机之间进行立体校正,得到对应的基线长度、内参矩阵以及旋转矩阵;
第一拼接模块,用于根据所述基线长度、内参矩阵以及旋转矩阵将所述相邻的待拼接图像进行拼接,得到拼接图像;
全景拼接模块,用于确定相邻的所述拼接图像之间的重叠图像,根据所述重叠图像将所述相邻的拼接图像进行拼接,得到全景图像。
请参照图4,本发明另一实施例提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的一种全景图像拼接方法中的各个步骤。
本发明另一实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的一种全景图像拼接方法中的各个步骤。
从上述描述可知,本发明的有益效果在于:将用于拍摄待拼接图像的相邻相机通过立体校正的方式确定两个相机之间的基线长度以及位姿关系,即旋转矩阵;从而将相邻相机拍摄的待拼接图像通过各自的内参矩阵、旋转矩阵以及基线长度实现拼接,以得到两张相邻待拼接图像组成的拼接图像;在得到所有的拼接图像后,确定相邻的拼接图像之间的重叠图像,根据重叠图像将两个拼接图像再次进行拼接,最终得到完整的全景图像。以此方式,将共有的重叠图像在不同拼接图像的位姿关系作为两个相邻的拼接图像进行拼接的中间参数,达到从数学层面完成全景图像拼接的效果,避免采用特征点匹配时需要进行优化求解的问题。同时相比于现有技术中逐一进行立体校正后拼接的方式,本发明将待拼接图像进行立体校正后投影于三维空间完成全景图像拼接,由于图像在三维空间中的旋转不会有像素损失,能够有效避免相机在二维平面进行立体校正时由于旋转角度过大,而造成的边缘像素缺失问题。
本发明实施例提供的一种全景图像拼接方法、装置、设备及存储介质,可应用于全景相机中,从数学层面实现全景图像拼接,并解决视场角缺失的问题,同时能够实现由全景图像分析确定相机参数,以下通过具体实施例来说明:
请参照图1至图2,本发明的实施例一为:
一种全景图像拼接方法,包括:
S110、获取所有的待拼接图像。
在一些实施例中,以水平环形设置(即相机所拍摄的视场角为360°)的三个相机分别拍摄对应的待拼接图像进行全景图像拼接。假设三个相机沿顺时针方向依次为P1、P2和P3,分别获取每个相机拍摄的待拼接图像,则可获取到三张待拼接图像分别为p1、p2和p3。
需要说明的是,待拼接图像的排列顺序与拍摄待拼接图像的相机顺序相同。
S120、将相邻的待拼接图像对应的相机之间进行立体校正,得到对应的基线长度、内参矩阵以及旋转矩阵。
具体地,步骤120包括:
S1201、对所有待拼接图像对应的相机分别进行单目标定,得到每一相机对应的初始内参矩阵和畸变参数;
在一些实施例中,对各个相机P1、P2和P3分别进行单目标定,得到相机P1、P2和P3对应的初始内参矩阵和畸变参数。其中,相机P1对应的初始内参矩阵和畸变参数分别为K1和D1;相机P2对应的初始内参矩阵和畸变参数分别为K2和D2;相机P3对应的初始内参矩阵和畸变参数分别为K3和D3。
S1202、根据初始内参矩阵和畸变参数对所有相机分别进行畸变校正,得到每一相机对应的标准内参矩阵;
在一些实施例中,通过初始内参矩阵和畸变参数分别对相机P1、P2和P3进行畸变校正,则畸变校正后的相机为P1’、P2’和P3’;畸变校正后的相机P1’、P2’和P3’,其标准内参矩阵等于初始内参矩阵,而对应的畸变参数等于0。即,相机P1’对应的标准内参矩阵为K1,畸变参数为0;相机P2’对应的标准内参矩阵为K2,畸变参数为0;相机P3’对应的标准内参矩阵为K3,畸变参数为0。
S1203、根据标准内参矩阵在相邻的待拼接图像对应的相机之间进行双目立体标定和立体校正,得到对应的基线长度、内参矩阵以及旋转矩阵。
在一些实施例中,相机P1’、P2’和P3’中两两相邻的相机为一组目标相机进行双目立体标定和立体校正,此处双目立体标定和立体校正的具体方法不进行限定。以相邻的相机P1’和P2’为第1组目标相机进行双目立体标定与立体校正,则相机P1’的内参矩阵和旋转矩阵分别为K12_1和R12_1;相机P2’的内参矩阵和旋转矩阵分别为K12_2和R12_2。以相邻的相机P2’和P3’为第2组目标相机进行双目立体标定与立体校正,则相机P2’的内参矩阵和旋转矩阵分别为K23_1和R23_1;相机P3’的内参矩阵和旋转矩阵分别为K23_2和R23_2。其中,环形设置的相机P1’与相机P3’之间虽然也相邻,但是其所拍摄的待拼接图像并不需要进行拼接,因此不需要以相机P1’与相机P3’进行双目立体标定和立体校正。由此可知,相机P2’在进行两两立体校正时,与相机P1’进行立体校正和与相机P3’进行立体校正对应的内参矩阵和旋转矩阵均不同。
在一些实施例中,当第1组目标相机进行立体校正后,可得到像素坐标系与世界坐标系相互转换的重投影矩阵。根据重投影矩阵、相机P1’的主点坐标、相机P2’的主点坐标以及校正后的相机焦距即可得到第1组目标相机对应的基线长度。其中,主点坐标表示相机坐标系的原点在像素坐标系的映射点。第1组目标相机对应的基线长度与第2组目标相机对应的基线长度相同。
S130、根据基线长度、内参矩阵以及旋转矩阵将相邻的待拼接图像进行拼接,得到拼接图像。
在一些实施例中,以相邻的两张待拼接图像为一组目标图像,根据其基线长度、内参矩阵以及旋转矩阵将该组目标图像进行拼接,即可得到该组目标图像对应的拼接图像。即拼接图像是由两张待拼接图像组成。
具体地,步骤S130包括:
S1301、将相邻的待拼接图像分别根据对应的内参矩阵以及旋转矩阵投影至立体空间,得到相邻的立体图像。
需要说明的是,所述立体空间即为三维空间。
在一些实施例中,待拼接图像p1、p2和p3中两两相邻的图像为一组目标图像进行拼接,得到拼接图像。以相邻的待拼接图像p1和p2为第1组目标图像,先根据待拼接图像p1对应的内参矩阵K12_1和旋转矩阵R12_1将待拼接图像p1上的像素点投影至立体空间中,得到p1对应的立体图像p1_rectify;再根据待拼接图像p2对应的内参矩阵K12_2和旋转矩阵R12_2将待拼接图像p2上的像素点投影至立体空间中,得到p2对应的立体图像p2_rectify。以待拼接图像p1为例,其投影步骤具体为:先将待拼接图像p1上的像素点根据内参矩阵K12_1投影至立体空间中,得到,其中p1_3d为待拼接图像p1上的像素点P1’投影到立体空间的映射点,K12_1-1表示内参矩阵的逆矩阵;再将映射点p1_3d通过旋转矩阵R12_1进行旋转,得到/>,其中p1_revolve为映射点旋转后的点,重复上述步骤,直至待拼接图像p1的所有像素点完成投影与旋转,则在第1组目标图像中待拼接图像p1对应的立体图像为/>。同理可得,在第1组目标图像中待拼接图像p2对应的立体图像为/>。以相邻的待拼接图像p2和p3为第2组目标图像,同理可得,在第2组目标图像中待拼接图像p2对应的立体图像为/>,在第2组目标图像中待拼接图像p3对应的立体图像为/>。此时,第1组目标图像中p1_rectify与p2_rectify为第1组相邻的立体图像;第2组目标图像中p2’_rectify与p3_rectify为第2组相邻的立体图像。
S1302、获取预设的深度信息,根据深度信息对相邻的立体图像分别进行缩放处理,得到相邻的标准图像。
在一些实施例中,深度信息根据用户的需求进行设定。假设深度信息为distance,则此时根据深度信息对第1组相邻的立体图像分别进行缩放处理,得到立体图像p1_rectify对应的标准图像为p1_distance,立体图像p2_rectify对应的标准图像为p2_distance,此时标准图像p1_distance和p2_distance中像素坐标的z坐标均等于distance,第1组相邻的标准图像为p1_distance和p2_distance。同理可得,第2组相邻的标准图像为p2’_distance和p3_distance。
S1303、根据基线长度平移相邻的标准图像,得到拼接图像。
在一些实施例中,将同一组相邻的标准图像中排列顺序靠后的标准图像向排列顺序靠前的标准图像移动基线长度,得到拼接图像。以第1组相邻的标准图像为例其移动步骤具体为:将标准图像p2_distance中像素坐标的x坐标均向标准图像p1_distance的方向移动基线长度baseline后,则完成标准图像p1_distance和p2_distance的拼接,得到第1组相邻的标准图像对应的拼接图像为p12_3d。同理可得,第2组相邻的标准图像对应的拼接图像为p23_3d。此时,拼接图像p12_3d与拼接图像p23_3d相邻。
S140、确定相邻的拼接图像之间的重叠图像,根据重叠图像将相邻的拼接图像进行拼接,得到全景图像。
在一些实施例中,将相邻的两张拼接图像为一组目标图像进行拼接,得到全景图像。
具体地,步骤S140包括:
S1401、确定相邻的拼接图像之间的重叠图像,分别获取重叠图像在拼接图像中的立体图像;
在一些实施例中,以相邻的拼接图像p12_3d和p23_3d为一组目标图像进行拼接,确定拼接图像p12_3d和p23_3d之间的重叠图像为p2,则分别获取重叠图像在拼接图像p12_3d和p23_3d中的立体图像为p2_rectify和p2’_rectify。
S1402、根据立体图像之间的转换关系对相邻的拼接图像进行拼接,得到全景图像。
S1402包括:
步骤A、在相邻的拼接图像中随机选择一张标准拼接图像,并将另一张标记为非标准拼接图像。
在一些实施例中,在一组相邻的拼接图像p12_3d和p23_3d中选择拼接图像p12_3d作为标准拼接图像,并将同组中的另一张拼接图像p23_3d标记为非标准拼接图像。
步骤B、计算非标准拼接图像对应的立体图像与标准拼接图像对应的立体图像之间的转换关系。
在一些实施例中,联合非标准拼接图像p23_3d对应的立体图像p2’_rectify和标准拼接图像p12_3d对应的立体图像p2_rectify计算两者的转换关系,立体图像,立体图像/>,则得到立体图像p2’_rectify转换为立体图像p2_rectify的转换关系为:
。
需要说明的是,待拼接图像p1和p2进行拼接后,得到拼接图像p12_3d,此时,待拼接图像p1与p2上的像素点均位于拼接图像p12_3d这统一坐标系中,即拼接图像p12_3d为完成部分拼接的一个像素点坐标集。同理,待拼接图像p2和p3进行拼接后,得到拼接图像p23_3d,此时,待拼接图像p2与p3上的像素点均位于拼接图像p23_3d这统一坐标系中,即拼接图像p23_3d为完成部分拼接的另一个像素点坐标集。在拼接图像p12_3d和p23_3d这两个像素点坐标集中都包含了待拼接图像p2变换后的像素点坐标,因此通过联立待拼接图像p2在这两个像素点坐标集中的变换关系,即可将拼接图像p23_3d中的像素点变换到拼接图像p12_3d中。由此,本申请基于待拼接图像p1、p2和p3两两之间的对应拼接图像以及重叠图像在不同拼接图像中的立体图像,即可推导完成全景图像拼接,无需对进行图像处理和分析,只需要通过对图像像素进行坐标转换。在已知图像对应相机的内参矩阵和旋转矩阵的情况下,基于上述描述的图像转换公式可直接完成全景图像拼接,实现从数学层面的分析与处理。
步骤C、根据转换关系对标准拼接图像和非标准拼接图像进行拼接,得到全景图像。
具体地,步骤C包括:
步骤C1、根据转换关系将非标准拼接图像转换至标准拼接图像的坐标系中,得到目标拼接图像;
在一些实施例中,根据转换关系将非标准拼接图像p23_3d上的像素点转换到标准拼接图像p12_3d的坐标系中,具体表示为,得到目标拼接图像/>。此时的目标拼接图像/>和标准拼接图像p12_3d位于同一坐标系中。
步骤C2、根据基线长度向标准拼接图像的方向平移目标拼接图像,得到待校正图像。
在一些实施例中,将目标拼接图像中像素坐标的x坐标均向标准拼接图像p12_3d的方向移动基线长度baseline后,则完成目标拼接图像/>和标准拼接图像p12_3d的拼接,得到待校正图像为p123_3d。
在步骤C3、根据标准拼接图像中未重叠图像对应的旋转矩阵将待校正图像进行校正,得到全景图像。
在一些实施例中,标准拼接图像p12_3d中未重叠图像为原始待拼接图像p1,则p1对应的旋转矩阵为R12_1,根据旋转矩阵R12_1将待校正图像p123_3d旋转至立体空间p1_3d的坐标系中,得到全景图像为p123_d’。
在一些实施例中,由于待拼接图像p1、p2和p3是由水平环形设置的相机拍摄,因此需要将全景图像p123_d’投影至单位球面(球面半径为1个单位)后再投影至平面,至此完成待拼接图像p1、p2和p3在深度distance下的全景拼接。
在一些实施例中,基于本申请所述的一种全景图像拼接方法还能够反向解析相机参数。例如,可以将上述图像转换公式中部分变量作为未知量进行求解。假设现场存在多台相机未进行内参和外参标定的情况下,可先通过相机拍摄各个视角的实际场景图,再通过特征点匹配等全景拼接方法完成拼接得到对应的全景图像,并得到原始的实际场景图与全景图像之间的对应关系,以此关系作为上述图像转换公式中的已知量,构建优化目标函数,即可优化出公式中的未知量,即各个相机内参和外参。
需要说明的是,以水平环形设置的三个相机为例,当三个环形设置的相机通过现有技术中的立体校正法进行全景拼接时,由于三个相机之间的夹角较大,因此每个相机都需要旋转较大的角度,而立体校正是在二维空间上将一个相机绕光心转动一定角度,当旋转的角度越大,图像边界上的像素点会损失越多,所以,当采用传统的立体校正法进行全景拼接时很容易出现边缘像素点损失的情况。而本申请是通过两两相邻的相机进行立体校正后得到拼接图像,再通过对拼接图像进行坐标转换,减少了每个相机需要旋转的角度,从而避免边缘像素点的损失,提高全景拼接效果。
本发明的实施例二为:
一种全景图像拼接方法,其与实施例一的不同之处在于:步骤S120的具体实现方式不同。在本实施例中,步骤S120包括:
S210、对所有待拼接图像对应的相机分别进行单目标定后,在所有相机之间进行多目立体标定,得到每一相机对应的内参矩阵和外参矩阵;
需要说明的是,多目立体标定即多个相机同时进行立体标定。
在一些实施例中,相机P1、P2以及P3对应的内参矩阵分别为K1、K2以及K3,对应的外参矩阵分别为R1和t1、R2和t2以及R3和t3。
S220、根据外参矩阵在相邻的待拼接图像对应的相机之间进行立体校正,得到对应的基线长度以及旋转矩阵。
在一些实施例中,以相邻的相机P1和P2为第1组目标相机进行立体校正,则相机P1的旋转矩阵为R12_1;相机P2的旋转矩阵为R12_12。以相邻的相机P2和P3为第2组目标相机进行立体校正,则相机P2的旋转矩阵为R23_1;相机P3的旋转矩阵分别为R23_2。由此可知,相机P2在进行两两立体校正时,与相机P1进行立体校正和与相机P3进行立体校正对应的旋转矩阵均不同,但内参矩阵保持不变。
请参照图3,本发明的实施例三为:
一种全景图像拼接装置300,包括:
获取模块301,用于获取所有的待拼接图像;
校正模块302,用于将相邻的所述待拼接图像对应的相机之间进行立体校正,得到对应的基线长度、内参矩阵以及旋转矩阵;
第一拼接模块303,用于根据所述基线长度、内参矩阵以及旋转矩阵将所述相邻的待拼接图像进行拼接,得到拼接图像;
全景拼接模块304,用于确定相邻的所述拼接图像之间的重叠图像,根据所述重叠图像将所述相邻的拼接图像进行拼接,得到全景图像。
在一些实施例中,该全景图像拼接装置300可以为用于拍摄全景图像的相机。
请参照图4,本发明的实施例四为:
一种电子设备400,包括存储器401、处理器402及存储在存储器401上并可在处理器402上运行的计算机程序,所述处理器402执行所述计算机程序时实现上述实施例一或实施例二的一种全景图像拼接方法中的各个步骤。
本发明的实施例五为:
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现实施例一或实施例二的一种全景图像拼接方法中的各个步骤。
综上所述,本发明提供的一种全景图像拼接方法、装置、设备及存储介质,将用于拍摄待拼接图像的相邻相机通过立体校正的方式确定两个相机之间的基线长度以及位姿关系,即旋转矩阵;从而将相邻相机拍摄的待拼接图像通过各自的内参矩阵、旋转矩阵以及基线长度实现拼接,以得到两张相邻待拼接图像组成的拼接图像;在得到所有的拼接图像后,确定相邻的拼接图像之间的重叠图像,根据重叠图像将两个拼接图像再次进行拼接,最终得到完整的全景图像。本申请在完成全景拼接的过程中,仅通过内参矩阵和旋转矩阵,对待拼接图像中的像素点坐标进行投影、旋转与平移,无需对进行图像处理和分析,只需要通过对图像像素进行坐标转换。在已知图像对应相机的内参矩阵和旋转矩阵的情况下,基于预设的图像转换公式可直接完成全景图像拼接,实现从数学层面的全景拼接,避免采用特征点匹配时需要进行优化求解的问题。同时相比于现有技术中逐一进行立体校正后拼接的方式,本发明将待拼接图像进行立体校正后投影于三维空间完成全景图像拼接,由于图像在三维空间中的旋转不会有像素损失,能够有效避免相机在二维平面进行立体校正时由于旋转角度过大,而造成的边缘像素缺失问题,并且本申请根据用户输入的深度信息和已经标定的内参矩阵和旋转矩阵进行拼接,不受实际场景的影响,保证拼接效果。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (6)
1.一种全景图像拼接方法,其特征在于,包括:
获取所有的待拼接图像;
将相邻的所述待拼接图像对应的相机之间进行立体校正,得到对应的基线长度、内参矩阵以及旋转矩阵;
根据所述基线长度、内参矩阵以及旋转矩阵将相邻的所述待拼接图像进行拼接,得到拼接图像;
确定相邻的所述拼接图像之间的重叠图像,根据所述重叠图像将相邻的所述拼接图像进行拼接,得到全景图像;
所述根据所述基线长度、内参矩阵以及旋转矩阵将相邻的所述待拼接图像进行拼接,得到拼接图像包括:
将相邻的所述待拼接图像分别根据对应的所述内参矩阵以及旋转矩阵投影至立体空间,得到相邻的立体图像;
获取预设的深度信息,根据所述深度信息对所述相邻的立体图像分别进行缩放处理,得到相邻的标准图像;
根据所述基线长度平移所述相邻的标准图像,得到拼接图像;
所述确定相邻的所述拼接图像之间的重叠图像,根据所述重叠图像将相邻的所述拼接图像进行拼接,得到全景图像包括:
确定相邻的所述拼接图像之间的重叠图像,分别获取所述重叠图像在所述拼接图像中的立体图像;
根据所述立体图像之间的转换关系对相邻的所述拼接图像进行拼接,得到全景图像;
所述根据所述立体图像之间的转换关系对相邻的所述拼接图像进行拼接,得到全景图像包括:
在相邻的所述拼接图像中随机选择一张标准拼接图像,并将另一张标记为非标准拼接图像;
计算所述非标准拼接图像对应的立体图像与所述标准拼接图像对应的立体图像之间的转换关系;
根据所述转换关系对所述标准拼接图像和所述非标准拼接图像进行拼接,得到全景图像;
所述根据所述转换关系对所述标准拼接图像和所述非标准拼接图像进行拼接,得到全景图像包括:
根据所述转换关系将所述非标准拼接图像转换至所述标准拼接图像的坐标系中,得到目标拼接图像;
根据所述基线长度向所述标准拼接图像的方向平移所述目标拼接图像,得到待校正图像;
根据所述标准拼接图像中未重叠图像对应的旋转矩阵将所述待校正图像进行校正,得到全景图像。
2.根据权利要求1所述的一种全景图像拼接方法,其特征在于,所述将相邻的所述待拼接图像对应的相机之间进行立体校正,得到对应的基线长度、内参矩阵以及旋转矩阵包括:
对所有所述待拼接图像对应的相机分别进行单目标定,得到每一所述相机对应的初始内参矩阵和畸变参数;
根据所述初始内参矩阵和畸变参数对所有所述相机分别进行畸变校正,得到每一所述相机对应的标准内参矩阵;
根据所述标准内参矩阵在相邻的所述待拼接图像对应的相机之间进行双目立体标定和立体校正,得到对应的基线长度、内参矩阵以及旋转矩阵。
3.根据权利要求1所述的一种全景图像拼接方法,其特征在于,所述将相邻的所述待拼接图像对应的相机之间进行立体校正,得到对应的基线长度、内参矩阵以及旋转矩阵包括:
对所有所述待拼接图像对应的相机分别进行单目标定后,在所有所述相机之间进行多目立体标定,得到每一所述相机对应的内参矩阵和外参矩阵;
根据所述外参矩阵在相邻的所述待拼接图像对应的相机之间进行立体校正,得到对应的基线长度以及旋转矩阵。
4.一种全景图像拼接装置,其特征在于,包括:
获取模块,用于获取所有的待拼接图像;
校正模块,用于将相邻的所述待拼接图像对应的相机之间进行立体校正,得到对应的基线长度、内参矩阵以及旋转矩阵;
第一拼接模块,用于根据所述基线长度、内参矩阵以及旋转矩阵将相邻的所述待拼接图像进行拼接,得到拼接图像;
全景拼接模块,用于确定相邻的所述拼接图像之间的重叠图像,根据所述重叠图像将相邻的所述拼接图像进行拼接,得到全景图像;
所述根据所述基线长度、内参矩阵以及旋转矩阵将相邻的所述待拼接图像进行拼接,得到拼接图像包括:
将相邻的所述待拼接图像分别根据对应的所述内参矩阵以及旋转矩阵投影至立体空间,得到相邻的立体图像;
获取预设的深度信息,根据所述深度信息对所述相邻的立体图像分别进行缩放处理,得到相邻的标准图像;
根据所述基线长度平移所述相邻的标准图像,得到拼接图像;
所述确定相邻的所述拼接图像之间的重叠图像,根据所述重叠图像将相邻的所述拼接图像进行拼接,得到全景图像包括:
确定相邻的所述拼接图像之间的重叠图像,分别获取所述重叠图像在所述拼接图像中的立体图像;
根据所述立体图像之间的转换关系对相邻的所述拼接图像进行拼接,得到全景图像;
所述根据所述立体图像之间的转换关系对相邻的所述拼接图像进行拼接,得到全景图像包括:
在相邻的所述拼接图像中随机选择一张标准拼接图像,并将另一张标记为非标准拼接图像;
计算所述非标准拼接图像对应的立体图像与所述标准拼接图像对应的立体图像之间的转换关系;
根据所述转换关系对所述标准拼接图像和所述非标准拼接图像进行拼接,得到全景图像;
所述根据所述转换关系对所述标准拼接图像和所述非标准拼接图像进行拼接,得到全景图像包括:
根据所述转换关系将所述非标准拼接图像转换至所述标准拼接图像的坐标系中,得到目标拼接图像;
根据所述基线长度向所述标准拼接图像的方向平移所述目标拼接图像,得到待校正图像;
根据所述标准拼接图像中未重叠图像对应的旋转矩阵将所述待校正图像进行校正,得到全景图像。
5.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-3任意一项所述的一种全景图像拼接方法中的各个步骤。
6.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-3任意一项所述的一种全景图像拼接方法中的各个步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311798424.2A CN117455767B (zh) | 2023-12-26 | 2023-12-26 | 全景图像拼接方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311798424.2A CN117455767B (zh) | 2023-12-26 | 2023-12-26 | 全景图像拼接方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117455767A CN117455767A (zh) | 2024-01-26 |
CN117455767B true CN117455767B (zh) | 2024-05-24 |
Family
ID=89595220
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311798424.2A Active CN117455767B (zh) | 2023-12-26 | 2023-12-26 | 全景图像拼接方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117455767B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109064404A (zh) * | 2018-08-10 | 2018-12-21 | 西安电子科技大学 | 一种基于多相机标定的全景拼接方法、全景拼接系统 |
CN109087244A (zh) * | 2018-07-26 | 2018-12-25 | 贵州火星探索科技有限公司 | 一种全景图像拼接方法、智能终端及存储介质 |
CN110782394A (zh) * | 2019-10-21 | 2020-02-11 | 中国人民解放军63861部队 | 全景视频快速拼接方法及系统 |
WO2022100242A1 (zh) * | 2020-11-12 | 2022-05-19 | Oppo广东移动通信有限公司 | 图像处理方法、装置、电子设备和计算机可读存储介质 |
CN116012227A (zh) * | 2022-12-30 | 2023-04-25 | 中联重科股份有限公司 | 图像处理方法、装置、存储介质及处理器 |
CN117196955A (zh) * | 2023-10-11 | 2023-12-08 | 深圳金三立视频科技股份有限公司 | 一种全景图像拼接方法及终端 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010133007A1 (en) * | 2009-05-21 | 2010-11-25 | Intel Corporation | Techniques for rapid stereo reconstruction from images |
US20180192033A1 (en) * | 2016-12-30 | 2018-07-05 | Google Inc. | Multi-view scene flow stitching |
US11257272B2 (en) * | 2019-04-25 | 2022-02-22 | Lucid VR, Inc. | Generating synthetic image data for machine learning |
US20220318948A1 (en) * | 2021-03-27 | 2022-10-06 | Mitsubishi Electric Research Laboratories, Inc. | System and Method of Image Stitching using Robust Camera Pose Estimation |
-
2023
- 2023-12-26 CN CN202311798424.2A patent/CN117455767B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109087244A (zh) * | 2018-07-26 | 2018-12-25 | 贵州火星探索科技有限公司 | 一种全景图像拼接方法、智能终端及存储介质 |
CN109064404A (zh) * | 2018-08-10 | 2018-12-21 | 西安电子科技大学 | 一种基于多相机标定的全景拼接方法、全景拼接系统 |
CN110782394A (zh) * | 2019-10-21 | 2020-02-11 | 中国人民解放军63861部队 | 全景视频快速拼接方法及系统 |
WO2022100242A1 (zh) * | 2020-11-12 | 2022-05-19 | Oppo广东移动通信有限公司 | 图像处理方法、装置、电子设备和计算机可读存储介质 |
CN116012227A (zh) * | 2022-12-30 | 2023-04-25 | 中联重科股份有限公司 | 图像处理方法、装置、存储介质及处理器 |
CN117196955A (zh) * | 2023-10-11 | 2023-12-08 | 深圳金三立视频科技股份有限公司 | 一种全景图像拼接方法及终端 |
Also Published As
Publication number | Publication date |
---|---|
CN117455767A (zh) | 2024-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2018068719A1 (zh) | 一种图像拼接方法及装置 | |
WO2021120407A1 (zh) | 一种基于多对双目相机的视差图像拼接与可视化方法 | |
TWI555378B (zh) | 一種全景魚眼相機影像校正、合成與景深重建方法與其系統 | |
CN111598993B (zh) | 基于多视角成像技术的三维数据重建方法、装置 | |
CN105379264B (zh) | 用于成像设备建模与校准的系统和方法 | |
CN101673395B (zh) | 图像拼接方法及装置 | |
US20210150762A1 (en) | Camera calibration using depth data | |
CN106981078B (zh) | 视线校正方法、装置、智能会议终端及存储介质 | |
US9025862B2 (en) | Range image pixel matching method | |
CN108886611A (zh) | 全景立体视频系统的拼接方法和装置 | |
CN106357991A (zh) | 图像处理方法、图像处理装置及显示系统 | |
CN202075794U (zh) | 一种无人机航摄立体成像处理设备 | |
CN106709865B (zh) | 一种深度图像合成方法及装置 | |
WO2019047847A1 (zh) | 一种虚拟现实的六自由度三维重构方法、系统及便携式终端 | |
CN103345736A (zh) | 一种虚拟视点绘制方法 | |
WO2014110954A1 (en) | Method, device and computer-readable storage medium for panoramic image completion | |
CN110602474B (zh) | 一种图像视差的确定方法、装置及设备 | |
CN108269234B (zh) | 一种全景相机镜头姿态估计方法及全景相机 | |
CN117053707A (zh) | 三维重建方法、装置和系统、三维扫描方法和三维扫描仪 | |
TWI820246B (zh) | 具有像差估計之設備、估計來自廣角影像的像差之方法及電腦程式產品 | |
KR20060056050A (ko) | 자동화된 360°파노라마 이미지 생성 방법 | |
CN117196955A (zh) | 一种全景图像拼接方法及终端 | |
US20190011826A1 (en) | Method and device for generating panoramic images | |
CN103489165B (zh) | 一种面向视频拼接的小数查找表生成方法 | |
CN117455767B (zh) | 全景图像拼接方法、装置、设备及存储介质 |
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 | ||
GR01 | Patent grant |