全景图像拼接方法、装置以及计算机可读存储介质与流程

文档序号:20267112发布日期:2020-04-03 18:32阅读:108来源:国知局
全景图像拼接方法、装置以及计算机可读存储介质与流程

本发明涉及图像处理技术领域,尤其涉及一种全景图像拼接方法、装置以及计算机可读存储介质。



背景技术:

需要说明的是,本部分所记载的内容并不代表都是现有技术。

全景图像拼接在一些装置中发挥着重要的作用,例如在车辆中,全景图像拼接对于泊车是非常重要的。全景图像是通过设置在装置的四周的摄像头拍摄的图像拼接而成。现有的拼接方法一般是在设备的周围铺设格子布,然后将拍摄得到的格子布角点投影到预先生成的格子布图像中,从而计算出投影变换的单应矩阵,该方法的效果好坏与格子布的规则程度有关,格子布越规则,则拼接效果越好,当格子布铺设不好时,根据标定结果拼接得到的全景图像会存在错位或扭曲。



技术实现要素:

鉴于此,为了在一定程度上解决相关技术中的技术问题之一,有必要提供一种全景图像拼接方法、装置以及计算机可读存储介质,能够更好地得到全景图像。

本发明第一方面提供一种全景图像拼接方法,所述方法包括以下步骤:

将具有多个摄像头的设备放置于具有若干标定点的标定场中并确保相邻所述摄像头之间的图像具有重叠部分;

以所述设备中心作为坐标原点以及设定的坐标系确定所述标定点的坐标;

根据所设置全景图像的尺寸以及每个像素代表的物理尺寸,将所述标定点的坐标转化为虚拟全景图像中的像素坐标;

通过所述摄像头分别获取所述设备周围的标定场各个方向的图像以及获取所述图像中标定点的像素坐标;

将每个所述摄像头得到的图像中的标定点投影到虚拟全景图像中对应标定点的像素坐标处并计算出各个方向的单应矩阵;

根据所述单应矩阵将所述设备各个方向的摄像头拍摄的图像经过投影变换,投影到虚拟全景图像进行拼接融合处理得到所述全景图像。

进一步的,在确定所述标定点的坐标之后,还包括对所述标定点的坐标进行修正的步骤,修正方法具体为:

其中,所述标定点的坐标为pi'(xi',yi'),修正后的所述标定点坐标为pi”(xi”,yi”),θ为预定的角度修正量,ex为预定的所述设备的横向偏移修正量,ey为预定的所述设备的纵向偏移修正量;

其中,使用修正后的所述标定点坐标为pi”(xi”,yi”)转化为虚拟全景图像中的像素坐标。

进一步的,通过以下方式将所述标定点的坐标转化为虚拟全景图像中的像素坐标:

其中,所述标定点的坐标为pi'(xi',yi'),所述标定点转化到虚拟全景图像中的像素坐标为q(ui,vi),w为所设置的全景图像的尺寸,h为所设置的全景图像的高度,f为所设置的每个像素代表的物理尺寸。

进一步的,所述设备的一侧边缘的中点pf(xf,yf)和相对侧边缘的中点pb(xb,yb)之间的连线的中点作为坐标原点,pb朝pf的方向作为y轴,垂直于该方向向右为x轴,得到所述坐标系。

进一步的,所述以所述设备中心作为坐标原点以及设定的坐标系确定所述标定点的坐标,包括:

确定所述标定点在标定场中的初始坐标pb(xb,yb);

将所述标定点的初始坐标pb(xb,yb)按照公式pi'=r·pi+t转换到所述坐标系下,得到所述标定点的坐标pi'(xi',yi');

其中,

上式中,

进一步的,所述设备为车辆。

进一步的,所述标定点标定在水平地面上。

本发明第二方面提供一种全景图像拼接装置,所述装置包括:

转化模块,适于将具有多个摄像头的设备放置于具有若干标定点的标定场中并确保相邻所述摄像头之间的图像具有重叠部分时,根据所设置全景图像的尺寸以及每个像素代表的物理尺寸,将所述标定点的坐标转化为虚拟全景图像中的像素坐标;其中,所述标定点的坐标通过所述设备中心作为坐标原点以及设定的坐标系来确定;

获取模块,用于通过所述摄像头分别获取所述设备周围的标定场各个方向的图像以及获取所述图像中标定点的像素坐标;

计算模块,用于将每个所述摄像头得到的图像中的标定点投影到虚拟全景图像中对应标定点的像素坐标处并计算出各个方向的单应矩阵;

处理模块,用于根据所述单应矩阵将所述设备各个方向的摄像头拍摄的图像经过投影变换,投影到虚拟全景图像进行拼接融合处理得到所述全景图像。

本发明第三方面提供一种设备,所述设备包括:

处理器;以及

存储装置,该存储装置包括有处理器可执行指令,所述可执行指令在由处理器执行时用于执行所述的全景图像拼接方法的步骤。

本发明第四方面提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的全景图像拼接方法的步骤。

通过以上方案可知,本发明以设备中心作为坐标原点以及设定的坐标系确定所述标定点的坐标,根据所设置全景图像的尺寸以及每个像素代表的物理尺寸,将所述标定点的坐标转化为虚拟全景图像中的像素坐标,通过所述摄像头分别获取所述设备周围的标定场各个方向的图像以及获取所述图像中标定点的像素坐标,将每个所述摄像头得到的图像中的标定点投影到虚拟全景图像中对应标定点的像素坐标处并计算出各个方向的单应矩阵,根据所述单应矩阵将所述设备各个方向的摄像头拍摄的图像经过投影变换,投影到虚拟全景图像进行拼接融合处理得到所述全景图像,本发明通过测量的手段确定标定点与设备的位置关系,并根据该位置关系生成虚拟全景图像,然后将不同的摄像头拍摄到的标定点投影到虚拟全景图像中,计算出单应矩阵,不论标定点的布置相对于设备是否规则,都可以得到标定点在全景图像的准确位置,因此,根据投影关系计算所得的单应矩阵可信度较高,可以有效地减少拼接错位和扭曲的现象发生,得到较好的拼接效果。

附图说明

图1为本发明的第一实施例的全景图像拼接方法的结构示意图。

图2为本发明具体实施方式中,标定点相对于设备的位置示意图。

图3为本发明具体实施方式中的坐标系示意图。

图4为摄像头拍摄到的标志点示意图。

图5为标志点转化为全景图像中的像素坐标示意图。

图6为本发明的第二实施例的全景图像拼接方法的结构示意图。

图7为本发明的设备的结构示意图。

图8为本发明的全景图像拼接装置的结构示意图。

如下具体实施方式将结合上述附图进一步说明本发明。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得所有其他实施例,都属于本发明的保护范围。可以理解的是,附图仅仅提供参考与说明用,并非用来对本发明加以限制。

本发明第一实施例提供的一种全景图像拼接方法,如图1所示,所述可以方法包括以下步骤。

s100:将具有多个摄像头的设备放置于具有若干标定点的标定场中并确保相邻所述摄像头之间的图像具有重叠部分。

如图2所示,在具体实施方式中,所述设备优选为车辆,当然,其他能够拼接或者需要使用全景图像的设备当然适用于本发明。

所述摄像头优选为四个均匀分别在设备四周的摄像头(例如鱼眼摄像头),采用四个摄像头能够较好地获得设备四周的图像。

标定点预先设定在标定场中,具体可设置在标定场的水平地面上,这样有利于得到竖直朝向地面的全景图像,有利于辅助泊车;或者可以在设备放置后将标定点设置在设备的周边并使得标定点能够相应地能够被相邻摄像头之间拍摄到。

采用四个摄像头时,设定标定点p1、p2、p3、p4、p5、p6、p7、p8,每个摄像头能够分别拍摄四个标定点,其中,两个同侧的标定点能够分别被相邻的另一个摄像头所拍摄,具体的,p1、p2为前视摄像头和左视摄像头的公共标定点;p3、p4为左视摄像头和后视摄像头的公共标定点;p5、p6为前视摄像头和右视摄像头的公共标定点;p7、p8为右视摄像头和后视摄像头的公共标定点。

s110:以所述设备中心作为坐标原点以及设定的坐标系确定所述标定点的坐标。

可以通过以下方式来确定所述设备的中心:

所述设备的一侧边缘的中点pf(xf,yf)和相对侧边缘的中点pb(xb,yb)之间的连线的中点作为坐标原点,pb朝pf的方向作为y轴,垂直于该方向向右为x轴,得到所述坐标系。

例如以车辆为例,如图3所示,可以以所述车辆的前侧边缘的中点pf(xf,yf)和后侧边缘的中点pb(xb,yb)之间的连线的中点作为坐标原点,俯视时,朝车前方为y轴,朝车右方为x轴,得到车身坐标系。

确定坐标系后,可以确定每一所述标定点相对的坐标,具体可以通过测量的方式确定每一所述标定点相对的坐标,也可以采用以下方式确定所述标定点相对的坐标。

首先,确定所述标定点在标定场中的初始坐标pb(xb,yb)。不管设备放置的角度或者中心位置如何,此初始坐标pb(xb,yb)是不变的,可以通过高精度gps设备按顺序依次测量地面标定点的坐标p1、p2、p3、p4、p5、p6、p7、p8。

最后,将所述标定点的初始坐标pb(xb,yb)按照公式pi'=r·pi+t转换到所述坐标系下,得到所述标定点的坐标pi'(xi',yi')。

其中,

上式中,

如此,只需要获取设备中心在标定场的坐标即可得到坐标系以及标定点在坐标系下的坐标。

s120:根据所设置全景图像的尺寸以及每个像素代表的物理尺寸,将所述标定点的坐标转化为虚拟全景图像中的像素坐标。

在可选的实施方式中,可以通过以下方式将所述标定点的坐标转化为虚拟全景图像中的像素坐标:

其中,所述标定点的坐标为pi'(xi',yi'),所述标定点转化到虚拟全景图像中的像素坐标为q(ui,vi),w为所设置的全景图像的尺寸,h为所设置的全景图像的高度,f为所设置的每个像素代表的物理尺寸。例如,设置全景图像的像素尺寸为750×1000,每个像素代表0.02米。

在四张图像中,如图4所示,标定点在前图像中的像素点为p1_f、p5_f、p2_f、p6_f,在右图像中的像素点为p5_r、p7_r、p6_r、p8_r,在后图像中的像素点为p7_b、p3_b、p8_b、p4_b,在左图像中的像素点为p3_l、p1_l、p4_l、p2_l。

s130:通过所述摄像头分别获取所述设备周围的标定场各个方向的图像以及获取所述图像中标定点的像素坐标。

通过四周的摄像头获取的四周的图像后,可以进行去畸变处理之后来获取图像中标定点的像素坐标。

s140:将每个所述摄像头得到的图像中的标定点投影到虚拟全景图像中对应标定点的像素坐标处并计算出各个方向的单应矩阵。

s150:根据所述单应矩阵将所述设备各个方向的摄像头拍摄的图像经过投影变换,投影到虚拟全景图像进行拼接融合处理得到所述全景图像。

投影方式如图5所示。

在本实施例中,本发明通过测量的手段确定标定点与设备的位置关系,并根据该位置关系生成虚拟全景图像,然后将不同的摄像头拍摄到的标定点投影到虚拟全景图像中,计算出单应矩阵,不论标定点的布置相对于设备是否规则,都可以得到标定点在全景图像的准确位置,因此,根据投影关系计算所得的单应矩阵可信度较高,可以有效地减少拼接错位和扭曲的现象发生,得到较好的拼接效果。

本发明第二实施例提供的一种全景图像拼接方法,如图6所示,所述可以方法包括以下步骤。

s200:将具有多个摄像头的设备放置于具有若干标定点的标定场中并确保相邻所述摄像头之间的图像具有重叠部分。

s210:以所述设备中心作为坐标原点以及设定的坐标系确定所述标定点的坐标。

s220:对所述标定点的坐标进行修正。

修正方法具体为:

其中,所述标定点的坐标为pi'(xi',yi'),修正后的所述标定点坐标为pi”(xi”,yi”),θ为预定的角度修正量,ex为预定的所述设备的横向偏移修正量,ey为预定的所述设备的纵向偏移修正量。

由于设备的侧边缘或设备中心有时并没有具体的位置,因此,在测量得到设备中心时会有误差,导致设备的朝向是正前方的,但是最后拼接得到的全景图像视角却非正前方,即与设备朝向不一致,对标定点的坐标进行修正,修正后可以改变全景图像视角方向从而使其与设备朝向一致。

上述θ、ex以及ey为人为给定的,在首次修正时,可以给定一个相对较小的值进行修正,若根据修正后的标定点的坐标拼接的图像效果仍然不佳,则可以给定更佳的述θ、ex以及ey值进行修正,直到得到满意的全景图像。

s230:根据所设置全景图像的尺寸以及每个像素代表的物理尺寸,将修正后的所述标定点的坐标转化为虚拟全景图像中的像素坐标。

s240:通过所述摄像头分别获取所述设备周围的标定场各个方向的图像以及获取所述图像中标定点的像素坐标。

s250:将每个所述摄像头得到的图像中的标定点投影到虚拟全景图像中对应标定点的像素坐标处并计算出各个方向的单应矩阵。

s260:根据所述单应矩阵将所述设备周围的标定场各个方向的摄像头拍摄的图像经过投影变换,投影到虚拟全景图像进行拼接融合处理得到所述全景图像。

图7为本发明提供设备100的一种实施例的结构图,所述设备100可包括处理器10、存储装置20以及全景图像拼接装置,还包括存储在所述存储装置20中并可向所述处理器10上运行的计算机程序,例如全景图像拼接程序等等。

所述处理器10可以是中央处理单元(cpu),还可以是其他通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述设备100的控制中心,利用各种接口和线路连接整个设备100的各个部分。

所述存储装置20可用于存储所述计算机程序和/或模块,所述处理器10通过运行或执行存储在所述存储装置20内的计算机程序和/或模块,以及调用存储在存储装置20内的数据,实现所述汽车的各种功能。所述存储装置20可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的程序等;存储数据区可存储根据手机的使用所创建的数据等。此外,存储装置20可以包括高速随机存取存储装置,还可以包括非易失性存储装置,例如硬盘、内存、插接式硬盘,智能存储卡,安全数字卡,闪存卡、至少一个磁盘存储装置件、闪存器件、或其他非易失性固态存储装置件。

图8为发明提供的全景图像拼接装置200的结构示意图,所述全景图像拼接装置200可以包括转化模块21、获取模块22、计算模块23以及处理模块24。

其中,所述转化模块21,适于将具有多个摄像头的设备放置于具有若干标定点的标定场中并确保相邻所述摄像头之间的图像具有重叠部分时,根据所设置全景图像的尺寸以及每个像素代表的物理尺寸,将所述标定点的坐标转化为虚拟全景图像中的像素坐标;其中,所述标定点的坐标通过所述设备中心作为坐标原点以及设定的坐标系来确定;

所述获取模块22,用于通过所述摄像头分别获取所述设备周围的标定场各个方向的图像以及获取所述图像中标定点的像素坐标;

所述计算模块23,用于将每个所述摄像头得到的图像中的标定点投影到虚拟全景图像中对应标定点的像素坐标处并计算出各个方向的单应矩阵;

所述处理模块24,用于根据所述单应矩阵将所述设备各个方向的摄像头拍摄的图像经过投影变换,投影到虚拟全景图像进行拼接融合处理得到所述全景图像。

进一步的,所述全景图像拼接装置200还包括修正模块25。

所述修正模块25用于,在确定所述标定点的坐标之后,对所述标定点的坐标进行修正。其中,修正方法具体为:

其中,所述标定点的坐标为pi'(xi',yi'),修正后的所述标定点坐标为pi”(xi”,yi”),θ为预定的角度修正量,ex为预定的所述设备的横向偏移修正量,ey为预定的所述设备的纵向偏移修正量;

其中,使用修正后的所述标定点坐标为pi”(xi”,yi”)转化为虚拟全景图像中的像素坐标。

进一步的,通过以下方式将所述标定点的坐标转化为虚拟全景图像中的像素坐标:

其中,所述标定点的坐标为pi'(xi',yi'),所述标定点转化到虚拟全景图像中的像素坐标为q(ui,vi),w为所设置的全景图像的尺寸,h为所设置的全景图像的高度,f为所设置的每个像素代表的物理尺寸。

进一步的,所述设备的一侧边缘的中点pf(xf,yf)和相对侧边缘的中点pb(xb,yb)之间的连线的中点作为坐标原点,pb朝pf的方向作为y轴,垂直于该方向向右为x轴,得到所述坐标系。

进一步的,所述以所述设备中心作为坐标原点以及设定的坐标系确定所述标定点的坐标,包括:

确定所述标定点在标定场中的初始坐标pb(xb,yb);

将所述标定点的初始坐标pb(xb,yb)按照公式pi'=r·pi+t转换到所述坐标系下,得到所述标定点的坐标pi'(xi',yi');

其中,

上式中,

进一步的,所述设备为车辆。

进一步的,所述标定点标定在水平地面上。

本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的全景图像拼接方法的步骤。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包括在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1