一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

全景图像处理方法、设备及存储介质与流程

2022-12-07 02:30:07 来源:中国专利 TAG:


1.本技术涉及图像处理技术领域,尤其涉及一种全景图像处理方法、设备及存储介质。


背景技术:

2.随着全景视频(图像)技术的不断发展,人们可以通过车载显示屏观看车辆的全景环视视频,从而进行车辆环视。车辆环视能够实时查看车辆周围的情况,因此,需要比较高的实时性。但是,在现有技术中,需要依赖于cpu(central processing unit,中央处理器)与gpu(graphics processing unit,图形处理器,又称显示核心、视觉处理器、显示芯片)之间的数据传输完成全景环视图的生成过程,进而导致处理耗时增加。同时,由于既需要占用gpu、又需要占用cpu,占用较多系统计算资源,因而导致现有的车辆环视图像的展示方式的实时性和流畅性较差。因此,一种新的解决方案亟待提出。


技术实现要素:

3.本技术实施例提供一种全景图像处理方法、设备及存储介质,用以提高全景图像拼接的实时性。
4.本技术实施例提供一种全景图像处理方法,包括:通过gpu获取多张图像;分别对所述多张图像进行颜色通道扩充,得到多张扩充图像;分别对所述多张扩充图像进行颜色空间变换,得到多张中间图像;根据所述多张图像与全景模型上的多个子区域的对应关系,确定所述多张中间图像中的像素点与各自对应的子区域中的像素点的映射关系;根据所述映射关系,将所述多张中间图像渲染到各自对应的子区域中,得到在所述全景模型上拼接形成的全景图。
5.进一步可选地,通过gpu获取多张图像,包括:获取多个图像采集设备采集到的多帧原始图像;对所述多帧原始图像分别进行畸变校正,得到所述多张扩充图像。
6.进一步可选地,分别对所述多张图像进行颜色通道扩充,得到多张扩充图像,包括:针对所述多张图像中第一图像的任一像素点,将所述像素点缺失的颜色通道,作为目标通道;获取所述目标通道对应的至少一个备选通道值;根据所述备选通道值,确定所述像素点在所述目标通道中的目标通道值。
7.进一步可选地,获取所述目标通道对应的至少一个备选通道值,包括:从所述第一图像中,确定第一像素周围预设范围内的至少一个像素点;将所述至少一个像素点在所述目标通道中各自对应的通道值,作为所述至少一个备选通道值。
8.进一步可选地,根据所述备选通道值,确定所述像素点在所述目标通道中的通道值,包括:从所述至少一个备选通道值中,选择任一个备选通道值,作为所述目标通道值;或者,计算所述至少一个备选通道值的平均值,并将所述平均值作为所述目标通道值。
9.进一步可选地,分别对所述多张扩充图像进行颜色空间变换,得到多张中间图像,包括:根据颜色转换矩阵,分别将所述多张图像从yuv颜色空间转换为rgb颜色空间,得到所
述多张中间图像。
10.进一步可选地,所述多张图像各自对应的子区域是根据所述多张图像各自对应的所述图像采集设备覆盖的视场范围,对预置的空间模型进行分块处理得到的;所述多个图像采集设备采集到的图像中的像素点与各自对应的子区域中的像素点的映射关系是根据所述多个图像采集设备各自的相机参数以及所述多个图像采集设备各自的拍摄内容标定得到的。
11.本技术实施例还提供一种全景图像处理装置,包括:图像采集模块,用于获取所述多个图像采集设备采集到的所述多帧原始图像;颜色通道扩充模块,用于分别对所述多张图像进行颜色通道扩充,得到多张扩充图像;颜色空间变换模块,用于分别对所述多张扩充图像进行颜色空间变换,得到多张中间图像;图像拼接模块,用于:确定所述多张中间图像中的像素点与各自对应的子区域中的像素点的映射关系;以及,根据所述映射关系,将所述多张中间图像渲染到各自对应的子区域中,得到在所述全景模型上拼接形成的全景图。
12.本技术实施例还提供一种终端设备,包括:存储器、处理器和显示组件;所述存储器,用于存储一条或多条计算机指令;所述处理器用于执行所述一条或多条计算机指令以用于:通过所述通信组件以及所述显示组件执行全景图像处理方法中的步骤。
13.本技术实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被执行时能够实现全景图像处理方法中的步骤。
14.本技术实施例提供的全景图像处理方法、设备及存储介质中,能够通过gpu对图像采集设备拍摄到的多个图像进行颜色通道扩充、颜色空间变换,得到多个中间图像,并根据映射关系将多个中间图像映射到全景模型上各自对应的子区域中,得到多张中间图像拼接形成的全景图。在这种实施方式中,基于gpu实现图像渲染前的预处理操作以及渲染操作,可降低对cpu的依赖,一方面减少了图像数据在cpu以及gpu之间进行传输所需的时间成本,另一方面降低了对cpu资源的占用率,有利于提高全景图像拼接的处理效率,提升车辆环视功能的实时性、流畅性。
附图说明
15.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
16.图1为本技术一示例性实施例提供一种全景图像处理方法的结构示意图;
17.图2为本技术一示例性实施例提供一种中间图像的渲染示意图;
18.图3为本技术一示例性实施例提供的畸变校正示意图;
19.图4为本技术一示例性实施例提供的全景图像处理装置的结构示意图;
20.图5为本技术一示例性实施例提供的终端设备的结构示意图。
具体实施方式
21.为使本技术的目的、技术方案和优点更加清楚,下面将结合本技术具体实施例及相应的附图对本技术技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
22.针对现有技术中,车辆环视图像的展示方式的实时性较差,不利于日常使用的技术问题,在本技术一些实施例中,提供了一种全景图像处理方法。在该全景图像处理方法中,终端设备能够通过gpu对图像采集设备拍摄到的多张图像进行处理得到全景拼接的所需的纹理资源,并通过gpu基于该纹理资源进行全景图像的渲染,提高了全景图像拼接的处理效率,有利于提升车辆的实时环视功能的实时性、流畅性。以下结合附图,详细说明本技术各实施例提供的技术方案。
23.图1为本技术一示例性实施例提供的全景图像处理方法的流程示意图,如图1所示,该方法包括:
24.步骤11、通过gpu获取多张图像。
25.步骤12、通过gpu分别对所述多张图像进行颜色通道扩充,得到多张扩充图像。
26.步骤13、通过gpu分别对所述多张扩充图像进行颜色空间变换,得到多张中间图像。
27.步骤14、通过gpu根据所述多个图像与全景模型上的多个子区域的对应关系,确定所述多张中间图像中的像素点与各自对应的子区域中的像素点的映射关系。
28.步骤15、通过gpu根据所述映射关系,将所述多张中间图像渲染到各自对应的子区域中,得到在所述全景模型上拼接形成的全景图。
29.本实施例可由车载终端设备执行,该车载终端设备可固定安装在车辆中;除车载终端之外,本实施例也可由智能手机、平板电脑等可移动的终端执行,本实施例不做限制。
30.在本实施例中,多张图像可分别通过多个图像采集设备在相同时刻采集得到图像数据获取。其中,图像采集设备可以设置在车辆上,也可以安装在无人机上,本实施例不做限制。多个图像采集设备可以进行连续的图像采集,得到视频数据。多个图像采集设备也可按照设定的采集频率进行图像采集,得到离散的图像数据。gpu获取的多张图像,可以是多个图像采集设备在同一时刻拍摄到的离散的图像,也可以是从多个图像采集设备采集到的视频中获取到的时间戳相同的视频帧图像,本实施例不做限制。
31.其中,该多张图像可以是图像采集设备采集到的原始图像,也可以是原始图像经过图像处理算法得到的图像,本实施例不做限制。
32.其中,图像采集设备的数量可以是4、6、8等等,本实施例不做限制。其中,多个图像采集设备可安装在车辆上,优选地,多个图像采集设备的拍摄范围之和能够完整覆盖车辆周边360
°
的范围,各个图像采集设备的拍摄范围可以有重合。
33.例如,在一些实施例中,可以分别在车身的前方、后方、左侧和右侧各设置1个图像采集设备,即,共设置4个图像采集设备。再例如,可以分别在车身的前方、后方各设置1个图像采集设备,并分别在车身的左侧和右侧各设置2个图像采集设备,即,共设置6个图像采集设备。再例如,可以分别车身的前方、后方、左侧和右侧各设置2个车载图像采集设备,即,共设置8个图像采集设备。其他可能的设置方式在本技术中不再一一列出。
34.通常情况下,图像采集设备采集到的图像会压缩传输,导致传输到gpu的图像的颜色通道通常是缺失的。因此,在本实施例中,通过gpu获取多张图像后,需要分别对多张图像进行颜色通道扩充。在本实施例中,为便于描述和区分,将颜色通道扩充得到的图像,描述为扩充图像。对多张图像进行颜色通道扩充,可得到多张扩充图像。
35.例如,图像采集设备拍摄到的图像中的像素点采用yuv颜色空间进行表示时,yuv
颜色空间采用y通道、u通道和v通道表示像素点的值,其中,“y”表示明亮度,也就是灰阶值,“u”和“v”表示的则是色度。然而,图像压缩后传输到gpu时,图像中的像素点通常只有y通道和u通道的信息,或者,只有y通道和v通道的信息,存在颜色通道缺失的情况。而gpu无法对这样的图像数据直接处理,因此,需要预先进行图像的像素点的颜色通道扩充,得到扩充图像,以使扩充后的像素点不存在通道缺失现象。
36.在进行颜色通道扩充后,gpu需要分别对多张扩充图像进行颜色空间变换。在本实施例中,为便于描述和区分,将颜色空间变换得到的图像,描述为中间图像。对多张扩充图像进行颜色空间变换,可得到多张中间图像。
37.其中,颜色空间指的是用来准确定义和形成不同种类颜色的一种特定空间模型,常用的颜色空间模型有:rgb(红、绿、蓝)颜色空间、cmy(青、洋红、黄)颜色空间、hsl(色相、饱和度、亮度)颜色空间、yuv(灰阶值、色度、色度)颜色空间等等。本实施例中,将以rgb颜色空间和yuv颜色空间为例,来对颜色空间变换进行举例说明。示例地,当扩充图像对应的颜色空间为yuv颜色空间时,在本步骤中,gpu可分别将多张扩充图像对应的yuv颜色空间转换为rgb颜色空间,从而得到多张中间图像。
38.基于上述步骤获取到的多张中间图像,可作为全景模型的纹理图片,对全景模型实现渲染展示。
39.在本实施例中,可预先建立一全景模型,该全景模型可以是碗状模型、球状模型、半球状模型等等,本实施例不做限制。其中,构造该全景模型时,可以将车辆在地面的投影中心为坐标系原点,根据车身所在的空间区域构建指定形状的空间模型。在构造得到全景模型后,可根据图像采集设备在车身上的安装位置,对全景模型进行分区,得到全景模型对应的多个子区域。
40.全景模型上的多个子区域中,每个子区域均对应一张图像。从而,gpu可获取多张图像与全景模型上的多个子区域的对应关系,确定每张中间图像中的像素点与各自对应的子区域中的像素点的映射关系。可选地,多张图像与全景模型上的多个子区域的对应关系,可根据多个图像采集设备与全景模型上的多个子区域的对应关系确定。
41.示例地,车辆四周设置有设备1、设备2、设备3以及设备4共四个图像采集设备,这四个图像采集设备在同一时刻分别采集了图像1、图像2、图像3以及图像4。经过后续的颜色通道扩充和颜色空间变换处理,得到了四张中间图像:图像1对应的中间图像1、图像2对应的中间图像2、图像3对应的中间图像3、图像4对应的中间图像4。根据图像采集设备的安装位置,可将全景模型划分为4个子区域,分别为图像1对应的子区域1、图像2对应的子区域2、图像3对应的子区域3以及图像4对应的子区域4。
42.可选地,多张图像与全景模型上的多个子区域的对应关系,也可根据图像的标签与全景模型上的多个子区域的对应关系确定。例如,a图像标识是a,与全景图上的子区域a对应,可被渲染展示在子区域a中;b图像标识是b,与全景图上的子区域b对应,可被渲染展示在子区域b中。
43.根据上述对应关系,可得到中间图像的像素点和中间图像所属的采集设备对应的子区域中的像素点的映射关系。即:中间图像1中的像素点与子区域1中的像素点的映射关系、中间图像2中的像素点与子区域2中的像素点的映射关系、中间图像3中的像素点与子区域3中的像素点的映射关系、中间图像4中的像素点与子区域4中的像素点的映射关系。
44.在本实施例中,确定上述映射关系后,gpu可根据该映射关系,将每个采集设备对应的中间图像,渲染到每个采集设备对应的子区域中,多张中间图像在全景模型上进行图像拼接,即可形成全景图像。以一张中间图像a来举例说明,中间图像a是由图像采集设备a采集到的图像经过处理得到的。图像采集设备a对应于全景模型中的一个子区域b。中间图像中a的像素点与子区域s中的像素点存在的映射关系s。基于本步骤,可将中间图像a的所有像素点按照该映射关系s,全部渲染到全景模型上对应的子区域s中。同理,可对每个中间图像执行上述基于映射关系的渲染操作。当所有中间图像都渲染到各自所属的子区域中时,全景模型上每个子区域都可渲染出对应场景的像素点,从而完成图像拼接,形成全景图。
45.继续沿用前述例子,如图2所述,gpu可将中间图像1渲染到子区域1中、将中间图像2渲染到子区域2中、将中间图像3渲染到子区域3中、将中间图像4渲染到子区域4中。中间图像1、中间图像2、中间图像3、中间图像4可在全景模型上进行拼接,得到车辆所在空间的环视全景图。在环视全景图中,子区域1可展示图像采集设备1的视场范围内的场景、子区域2可展示图像采集设备2的视场范围内的场景、子区域3可展示图像采集设备3的视场范围内的场景、子区域4可展示图像采集设备4的视场范围内的场景。
46.本实施例中,终端设备能够通过gpu对图像采集设备拍摄到的多个图像进行颜色通道扩充、颜色空间变换,得到多个中间图像,并根据映射关系将多个中间图像渲染到全景模型上各自对应的子区域中,得到多张中间图像拼接形成的全景图。在这种实施方式中,基于gpu实现图像渲染前的预处理操作以及渲染操作,可降低对cpu的依赖,一方面减少了图像数据在cpu以及gpu之间进行传输所需的时间成本,另一方面降低了对cpu资源的占用率,有利于提高全景图像拼接的处理效率,提升车辆环视功能的实时性、流畅性。
47.进一步可选地,在终端设备完成图像拼接,形成全景图像后,可以将全景图像通过显示组件进行显示。用户可根据需求,可以对显示界面进行缩放和视角切换。例如:当显示界面显示的车辆前方物体过小,无法看清时,通过两个手指在屏幕上的滑动,可以实现画面的放大。除此之外,手指在屏幕上的滑动,可以实现自由视角的观看;双击某个区域,经过3d(3-dimension,三维)拾取处理得知是哪个相机图像区域,根据某个相机的外参来确定虚拟相机的相机参数,就可以观看某一个相机视角下的视频图像。
48.在一些示例性的实施例中,gpu在根据多个图像采集设备与全景模型上的多个子区域的对应关系,确定多张中间图像中的像素点与各自对应的子区域中的像素点的映射关系并进行全景图的拼接之前,gpu可预先建立车辆所在空间的三维空间模型,以下将进行进一步说明。
49.可选地,gpu可建立指定形状的空间模型。这个该空间模型的中心点以车辆中心点为准原点,可以为半球体、圆柱体碗状等等,本实施例不做限制。
50.接下来,可根据所述多个图像采集设备各自覆盖的视场范围,对所述空间模型进行分块处理,得到所述多个图像采集设备各自对应的子区域。比如,设置在车辆上的图像采集设备数量为六个,那么需要对空间模型进行分块处理,将这个空间模型分成六个子区域。子区域的数量由图像采集设备的数量来决定,可以为4、6、8等等,本实施例不做限制。
51.接下来,可根据所述多个图像采集设备各自的相机参数以及所述多个图像采集设备各自的拍摄内容,标定得到所述多个图像采集设备采集到的图像中的像素点与各自对应
的子区域中的像素点的映射关系。
52.其中,相机参数包括内部参数和外部参数。内部参数指的是与相机自身特性相关的参数,比如相机的焦距、像素大小等,一般以4
×
4外参矩阵的形式参与运算和表示。外部参数指的是世界坐标系中的参数,比如相机的位置、旋转方向等,一般以4
×
4外参矩阵的形式参与运算和表示。
53.在一些可选的实施例中,为提升拼接得到的全景图的视觉效果,gpu获取到的多帧图像,可以是对多个图像采集设备采集到的多帧原始图像进行畸变处理得到的。
54.基于此,前述实施例中的步骤11提出的通过gpu获取多张图像方法,可基于以下步骤实现:
55.步骤111、获取车辆上的多个图像采集设备采集到的多帧原始图像。
56.步骤112、对所述多帧原始图像分别进行畸变校正,得到多张图像。
57.其中,获取到多个图像采集设备采集到的多帧原始图像后,针对图像采集设备拍摄到的每一帧原始图像,该原始图像存在畸变,后续步骤中需要进行畸变校正,以去除畸变。其中,畸变矫正指的是将实际像素点还原到理论像素点的位置的过程。其中,畸变校正处理可以根据图像采集设备的内部参数和畸变参数实现。
58.示例性地,内部参数和畸变参数可内置于图像采集设备中,在该步骤中进行直接调取即可。
59.或者,内部参数和畸变参数可通过标定得到,并在畸变校正处理过程中进行调用。
60.示例性地,待标定相机的内参和畸变参数的标定步骤可包括:
61.获取原始图像;
62.其后,可基于图像坐标系与相机坐标系之间的变化关系,采用本领域技术人员可知的任一种方式,求解待图像采集设备的内参和畸变参数。
63.示例性的,以图像采集设备为车载鱼眼摄像头为例,对该车载鱼眼摄像头进行标定,即包括求解其内参及畸变参数。
64.示例性的,图像采集设备的内参可包括为fx、fy、u0、v0;其中,fx和fy为图像采集设备的焦距,可为根据单位尺寸上的像素,将物理长度单位换算成的像素焦距,以与其他参数的单位保持一致;u0和v0为图像的中心点像素坐标。畸变参数可为求解图像采集设备的相机模型对应的多项式,计算出来的多项式的系数,可包括多项式中的不同次项的对应系数,例如可以k1、k2、k3和k4等表示,在此不限定。
65.原始图像是由哪一图像采集设备采集到的,则可利用该图像采集设备的内部参数和畸变参数对这一原始图像进行畸变校正处理。如图3所示,图像采集设备拍摄出的原始图像会存在枕形畸变或桶形畸变,经畸变校正后,可得到畸变校正后的图像(即图3中所示正常物体)。进而,cpu可基于畸变校正后的图像进行后续处理,不再赘述。
66.前述实施例中的步骤12提出了通过gpu分别对多张图像进行颜色通道扩充,得到多张扩充图像的实施方式。以下将以任一张图像为例,对颜色通道扩充的可选实施方式进行示例性说明。可选地,步骤12可基于以下步骤实现:
67.步骤121、针对多张图像中第一图像的任一像素点,将所述像素点缺失的颜色通道,作为目标通道。
68.其中,第一图像指的是多张图像中的任意一张,由于对每张图像的颜色通道扩充
都是相同的步骤,所以此处使用一张图像来举例,其他图像的颜色通道扩充同理。
69.针对第一图像中的任意一个像素点,可将此像素点缺失的颜色通道作为目标通道。比如,第一图像中存在一个像素点a,a仅包含y通道和u通道,则缺失的v通道就是目标通道。
70.接下来,可执行以下步骤122和步骤123来进一步获取备选通道值,并确定目标通道的通道值。该目标通道的通道值,可描述为目标通道值。
71.步骤122、获取所述目标通道对应的至少一个备选通道值。
72.步骤123、根据所述备选通道值,确定所述像素点在所述目标通道中的目标通道值。
73.可选地,在步骤122中,目标通道对应的至少一个备选通道值,可以预先设定,也可根据该像素点周围的其他像素点的在目标通道中的通道值确定。
74.在一些可选的实例中,步骤122提出的获取所述目标通道对应的至少一个备选通道值,可基于以下步骤实现:
75.步骤1221、从第一图像中,确定第一像素点周围预设范围内的至少一个像素点。
76.步骤1222、将所述至少一个像素点在所述目标通道中各自对应的通道值,作为所述至少一个备选通道值。
77.示例地,第一像素点(第一图像中的任一像素点)周边预设范围的像素点可以是与该第一像素点处于同一行、且与该第一像素点相邻的像素点,也可以是与该第一像素点处于同一列、且与该第一像素点相邻的像素点,本实施例不做限制。例如,图像的一行依次包括a1~a20这20个像素点,则第一像素点a1周边预设范围的像素点是a2,第一像素点a2周边预设范围的像素点是a1和a3。
78.若第一像素点a1仅包含y通道和u通道的信息,则缺失通道v通道就是目标通道。若第一像素点a1周边预设范围的像素点为像素点a2,且a2在通道v中的值为v1,则可将像素点a2的v通道的通道值v1作为备选通道值。若第一像素点周边预设范围内存在2个像素点,且每个像素点在v通道都具有对应的通道值,则可将这2个像素点在v通道的通道值作为第一像素点的备选通道值。
79.在获取所述目标通道对应的至少一个备选通道值之后,前述实施例记载的步骤123提出的在根据所述备选通道值,确定所述像素点在所述目标通道中的通道值,可包括:
80.实施方式一、从所述至少一个备选通道值中,选择任一个备选通道值,作为所述目标通道值。比如,可选的备选通道值有两个,分别为v1和v2。此时,可在两个备选通道值中任选一个,作为目标通道值。
81.实施方式二、计算所述至少一个备选通道值的平均值,并将所述平均值作为所述目标通道值。比如,可选的备选通道有两个,分别为v1和v2。此时,可计算v1和v2的平均值得到v3,并将v3作为目标通道值。
82.上述实施方式一、实施方式二可任选一个单独执行,本实施例不做限制。
83.在得到扩充图像之后,gpu可执行前述实施例记载的步骤13,分别对所述多张扩充图像进行颜色空间变换,得到多张中间图像。若扩充图像位于yuv颜色空间,则gpu可根据颜色转换矩阵,分别将所述多张扩充图像从yuv颜色空间转换为rgb颜色空间,得到所述多张中间图像。
84.其中,颜色转换矩阵用于将扩充图像中的像素点对应的颜色空间转换为目标颜色空间。示例地,扩充图像中的像素点对应的颜色空间为yuv颜色空间,目标颜色空间为rgb颜色空间。通过颜色转换矩阵,即可将扩充图像中的像素点的yuv颜色空间转换为rgb颜色空间,从而得到中间图像。
85.通过这种颜色空间变换的方法,得到中间图像,全程使用gpu即可完成,无需调用cpu进行处理,很大程度上减少了资源占用。
86.需要说明的是,上述实施例所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。比如,步骤12至步骤14的执行主体可以为设备a;又比如,步骤12和13的执行主体可以为设备a,步骤14的执行主体可以为设备b;等等。
87.另外,在上述实施例及附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如11、12等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。
88.需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
89.本技术实施例还提供一种全景图像处理装置,该处理装置可实现为gpu中的虚拟装置,例如应用程序。如图4所示,该全景图像处理装置包括:图像采集模块401、颜色通道扩充模块402、颜色空间变换模块403、图像拼接模块404。
90.其中,图像采集模块401,用于通过gpu获取多张图像。
91.颜色通道扩充模块402,用于分别对所述多张图像进行颜色通道扩充,得到多张扩充图像。
92.颜色空间变换模块403,用于分别对所述多张扩充图像进行颜色空间变换,得到多张中间图像。
93.图像拼接模块404,用于确定所述多张中间图像中的像素点与各自对应的子区域中的像素点的映射关系;以及,根据所述映射关系,将所述多张中间图像渲染到各自对应的子区域中,得到在所述全景模型上拼接形成的全景图。
94.进一步可选地,图像采集模块401在通过gpu获取多张图像时,具体用于:获取所述多个图像采集设备采集到的多帧原始图像;对所述多帧原始图像分别进行畸变校正,得到所述多张图像。
95.进一步可选地,颜色通道扩充模块402在分别对所述多张图像进行颜色通道扩充,得到多张扩充图像时,具体用于:针对所述多张图像中第一图像的任一像素点,将所述像素点缺失的颜色通道,作为目标通道;获取所述目标通道对应的至少一个备选通道值;根据所述备选通道值,确定所述像素点在所述目标通道中的目标通道值。
96.进一步可选地,颜色通道扩充模块402在获取所述目标通道对应的至少一个备选通道值时,具体用于:从所述第一图像中,确定第一像素点周围预设范围内的至少一个像素点;将所述至少一个像素点在所述目标通道中各自对应的通道值,作为所述至少一个备选通道值。
97.进一步可选地,颜色通道扩充模块402在根据所述备选通道值,确定所述像素点在
所述目标通道中的通道值时,具体用于:从所述至少一个备选通道值中,选择任一个备选通道值,作为所述目标通道值;或者,计算所述至少一个备选通道值的平均值,并将所述平均值作为所述目标通道值。
98.进一步可选地,颜色空间变换模块403在分别对所述多张扩充图像进行颜色空间变换,得到多张中间图像时,具体用于:根据颜色转换矩阵,分别将所述多张扩充图像从yuv颜色空间转换为rgb颜色空间,得到所述多张中间图像。
99.进一步可选地,图像拼接模块404具体用于:建立指定形状的空间模型;根据所述多张图像各自对应的图像采集设备覆盖的视场范围,对所述空间模型进行分块处理,得到所述多个图像采集设备各自对应的子区域;根据所述多个图像采集设备各自的相机参数以及所述多个图像采集设备各自的拍摄内容,标定得到所述多个图像采集设备采集到的图像中的像素点与各自对应的子区域中的像素点的映射关系。
100.本实施例中,gpu可基于全景图像处理装置对图像采集设备拍摄到的多个图像进行颜色通道扩充、颜色空间变换,得到多个中间图像,并根据映射关系将多个中间图像渲染到全景模型上各自对应的子区域中,得到多张中间图像拼接形成的全景图。在这种实施方式中,基于gpu实现图像渲染前的预处理操作以及渲染操作,可降低对cpu的依赖,一方面减少了图像数据在cpu以及gpu之间进行传输所需的时间成本,另一方面降低了对cpu资源的占用率,有利于提高全景图像拼接的实时性,提升车辆环视功能的实时性、流畅性。
101.图5是本技术一示例性实施例提供的终端设备的结构示意图,如图5所示,该终端设备包括:存储器501以及处理器502。
102.存储器501,用于存储计算机程序,并可被配置为存储其它各种数据以支持在终端设备上的操作。这些数据的示例包括用于在终端设备上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
103.其中,存储器501可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。
104.处理器502,可实现为终端设备中的gpu。处理器502与存储器501耦合,用于执行存储器501中的计算机程序,以用于:通过gpu获取多张图像;分别对所述多张图像进行颜色通道扩充,得到多张扩充图像;分别对所述多张扩充图像进行颜色空间变换,得到多张中间图像;根据所述多个图像采集设备与全景模型上的多个子区域的对应关系,确定所述多张中间图像中的像素点与各自对应的子区域中的像素点的映射关系;根据所述映射关系,将所述多张中间图像渲染到各自对应的子区域中,得到所述多张图像在所述全景模型上拼接形成的全景图。
105.进一步可选地,处理器502在通过gpu获取多张图像时,具体用于:获取所述多个图像采集设备采集到的多帧原始图像;对所述多帧原始图像分别进行畸变校正,得到所述多张图像。
106.进一步可选地,处理器502还用于:针对所述多张图像中第一图像的任一像素点,将所述像素点缺失的颜色通道,作为目标通道;获取所述目标通道对应的至少一个备选通道值;根据所述备选通道值,确定所述像素点在所述目标通道中的目标通道值。
107.进一步可选地,处理器502在获取所述目标通道对应的至少一个备选通道值时,具体用于:从所述第一图像中,确定第一像素点周围预设范围内的至少一个像素点;将所述至少一个像素点在所述目标通道中各自对应的通道值,作为所述至少一个备选通道值。
108.进一步可选地,处理器502还用于:从所述至少一个备选通道值中,选择任一个备选通道值,作为所述目标通道值;或者,计算所述至少一个备选通道值的平均值,并将所述平均值作为所述目标通道值。
109.进一步可选地,处理器502在分别对所述多张扩充图像进行颜色空间变换,得到多张中间图像时,具体用于:根据颜色转换矩阵,分别将所述多张扩充图像从yuv颜色空间转换为rgb颜色空间,得到所述多张中间图像。
110.进一步可选地,处理器502还用于:建立指定形状的空间模型;根据所述多张图像各自对应的图像采集设备覆盖的视场范围,对所述空间模型进行分块处理,得到所述多个图像采集设备各自对应的子区域;根据所述多个图像采集设备各自的相机参数以及所述多个图像采集设备各自的拍摄内容,标定得到所述多个图像采集设备采集到的图像中的像素点与各自对应的子区域中的像素点的映射关系。
111.上述图5中的存储器可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。
112.进一步,如图5所示,该电子设备还包括:通信组件503、显示组件504、电源组件505等其它组件。图5中仅示意性给出部分组件,并不意味着电子设备只包括图5所示组件。
113.上述图5中的通信组件503被配置为便于通信组件所在设备和其他设备之间有线或无线方式的通信。通信组件所在设备可以接入基于通信标准的无线网络,如wifi,2g、3g、4g或5g,或它们的组合。在一个示例性实施例中,通信组件经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件可基于近场通信(nfc)技术、射频识别(rfid)技术、红外数据协会(irda)技术、超宽带(uwb)技术、蓝牙(bt)技术和其他技术来实现。
114.上述图5中的显示组件504包括屏幕,其屏幕可以包括液晶显示器(lcd)和触摸面板(tp)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。
115.其中,电源组件505,为电源组件所在设备的各种组件提供电力。电源组件可以包括电源管理系统,一个或多个电源,及其他与为电源组件所在设备生成、管理和分配电力相关联的组件。
116.本实施例中,终端设备能够通过gpu对图像采集设备拍摄到的多个图像进行颜色通道扩充、颜色空间变换,得到多个中间图像,并根据映射关系将多个中间图像渲染到全景模型上各自对应的子区域中,得到多张中间图像拼接形成的全景图。在这种实施方式中,基于gpu实现图像渲染前的预处理操作以及渲染操作,可降低对cpu的依赖,一方面减少了图像数据在cpu以及gpu之间进行传输所需的时间成本,另一方面降低了对cpu资源的占用率,
有利于提高全景图像拼接的实时性,提升车辆环视功能的实时性、流畅性。
117.相应地,本技术实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被执行时能够实现上述方法实施例中可由终端设备执行的各步骤。
118.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
119.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
120.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
121.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
122.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
123.内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
124.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
125.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要
素的过程、方法、商品或者设备中还存在另外的相同要素。
126.以上所述仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献