一种车载非GPU渲染360度立体环视实现方法转让专利

申请号 : CN201810566248.2

文献号 : CN108765499B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 缪其恒苏巍刘振发严静王江明许炜

申请人 : 浙江零跑科技有限公司

摘要 :

本发明涉及一种车载非GPU渲染360度立体环视实现方法,包括下列步骤:①离线标定相机参数,生成相机标定参数配置文件;②建立立体环境模型,根据相机标定参数配置文件与预设渲染点位置,生成鱼眼相机图像输入对应到环视辅助视角的离线辅助视角映射表;③压缩映射表文件;④映射表在线载入,实时解压离线辅助视角映射表压缩文件,更新鱼眼输入权重系数,实时显示辅助视角。本发明在传统2D环视系统硬件架构上,不利用GPU渲染实现任意视角的辅助显示,包括动态连续视角切换,有更好的辅助显示体验;相比于现有的3D环视系统,在确保同等辅助视觉效果前提下,大大降低成本。本发明具有很好的通用性,具有很强的实际应用价值。

权利要求 :

1.一种车载非GPU渲染360度立体环视实现方法,其特征在于包括下列步骤:①离线标定相机参数,生成相机标定参数配置文件;

②生成离线辅助视角映射表;

所述的步骤②包括下列步骤:

(21)建立立体环境模型,生成立体环境模型(X,Y)与鱼眼输入视角图像(u,v)的映射关系F,即:[X,Y]=F(u,v);

(22)计算辅助视角映射关系,生成辅助视角(u’,v’)与立体环境模型(X,Y)的映射关系H,即:[u’,v’]=H(X,Y);

所述的步骤(22)为:将3D自身车辆模型按外部几何位置置于步骤(21)建立的立体环境模型中,根据应用模式,设定若干渲染点以及渲染所用虚拟相机参数,包括焦距、视场角以及全局坐标,利用小孔成像原理,通过计算,生成辅助视角(u’,v’)与立体环境模型(X,Y)的映射关系H,即:[u’,v’]=H(X,Y);

(23)生成鱼眼输入权重系数;

(24)计算辅助视角与鱼眼输入视角映射关系:合并步骤(21)与步骤(22)中生成的两映射表,辅助视角中各点的亮度值为相关输入视角像素点亮度值与相应权重系数乘积之和,即:[u’,v’]=H(F(u,v));

③压缩映射表文件;

④映射表在线载入,并实时显示辅助视角;

所述的步骤④包括下列步骤:

(41)实时解压离线辅助视角映射表压缩文件;

所述的步骤(41)为:先启动立体环视系统中的操作系统,将步骤③中压缩的映射表文件拷贝至内存中,并解压初始视角放入映射表寄存器中,映射表寄存器内容动态更新,以最新载入的映射表替换映射表寄存器中最早存在的映射表;然后在分线程中,根据车辆操作信号以及应用层视角切换模式定义,按应用需求解压后续所需视角映射表文件,更新映射表寄存器中的映射表内容;

(42)更新鱼眼输入权重系数;

所述的步骤(42)为:鱼眼输入总权重系数W’(u,v)计算方法如下:Wi’(u,v)=Wi(u,v)*Ki,其中,Ki为各相机光照补偿系数;

光照补偿计算方法如下:

提取相邻鱼眼相机重合区域平均亮度,通过调整各相机亮度增益,使重合区域亮度差最小,即均衡各鱼眼相机亮度,此过程通过以下最小化误差函数error来获得相机增益:其中,Nij为相机i重叠于相机j的像素个数,gaini,gainj分别是相机i和j的增益,是相机i在与相机j重叠区域的像素平均值,σN是归一化的亮度误差的标准方差,σg是增益的标准方差,

n是相机的个数;

(43)实时显示辅助视角;

所述的步骤(43)为:在主线程中,获取映射表寄存器中显示位的映射表地址,基于步骤(42)获得的鱼眼输入总权重系数以及相应鱼眼输入图像,利用remap函数实现辅助视角渲染。

2.根据权利要求1所述的一种车载非GPU渲染360度立体环视实现方法,其特征在于所述的步骤①为:利用预设标定靶以及标定场地,对车载各鱼眼相机的内部参数及外部参数进行离线标定,生成相机标定参数配置文件。

3.根据权利要求1所述的一种车载非GPU渲染360度立体环视实现方法,其特征在于所述的步骤(21)为:建立立体环境模型,立体环境模型由平面、柱面以及球面三部分组成,由步骤①中生成的相机标定参数配置文件将鱼眼图像矫正后,根据小孔成像原理获得立体环境模型(X,Y)与鱼眼输入视角图像(u,v)映射关系F,即:[X,Y]=F(u,v)。

4.根据权利要求1或3所述的一种车载非GPU渲染360度立体环视实现方法,其特征在于所述的步骤(23)为:在各鱼眼输入图像上添加一维权重通道,鱼眼输入权重系数包括接缝融合权重系数,接缝融合权重系数采用预设渐进权重系数Wi(u,v);对于相邻相机视场未重合区域,W(u,v)=1;对于相邻相机视场重合区域,0<W(u,v)<1。

5.根据权利要求1所述的一种车载非GPU渲染360度立体环视实现方法,其特征在于所述的步骤③为:步骤②获得的离线辅助视角映射表文件按lz4压缩方式进行压缩,并将压缩后的文件存入系统FLASH中。

说明书 :

一种车载非GPU渲染360度立体环视实现方法

技术领域

[0001] 本发明涉及一种汽车视觉系统,尤其涉及一种车载非GPU渲染360度立体环视实现方法。

背景技术

[0002] 智能化是汽车行业发展的重要趋势之一,视觉系统在汽车主动安全领域应用越来越广。360度环视系统是现有高级汽车辅助安全系统之一,此类系统可以在低速工况下为驾
驶员提供车辆周围情况,为驾驶员低速操作(如泊车等)提供视觉辅助,已经成为众多量产
车型的标准配置。
[0003] 现有汽车立体环视系统大多只提供俯视视角下车辆周围环境的平面示意图,视野范围有限,一般只能辅助显示车辆周围2~3米以内的区域,且非道路平面部分物体映射变
形严重。并且,此类系统不同应用下的辅助视角为单个镜头输入场景的离散视点,辅助场景
应用较为单一。现有立体环视系统多基于GPU(图形处理器)的强大图形渲染能力,系统硬件
架构相比于2D环视系统完全不同,并且成本显著提升。

发明内容

[0004] 本发明为了解决上述技术问题,提供一种车载非GPU渲染360度立体环视实现方法,其能够在现有2D环视系统的硬件架构下,实现任意视角的辅助显示,包括动态连续视角
切换,有更好的辅助显示体验;相比于现有的3D环视系统,本发明能在实现同等辅助效果的
情况下,避免GPU硬件模块所引入的成本提升。
[0005] 本发明的上述技术问题主要是通过下述技术方案得以解决的:本发明一种车载非GPU渲染360度立体环视实现方法,包括下列步骤:
[0006] ①离线标定相机参数,生成相机标定参数配置文件;
[0007] ②生成离线辅助视角映射表;
[0008] ③压缩映射表文件;
[0009] ④映射表在线载入,并实时显示辅助视角。
[0010] 本发明提出了一种可以在传统2D环视系统硬件架构上,不利用GPU渲染能力实现立体环视功能的方法。本发明实现汽车任意视角的辅助显示,包括动态连续视角切换,有更
好的辅助显示体验,而且大大减少成本。本发明的硬件架构通用性更强,可以适用于各种自
定义辅助视角显示。
[0011] 作为优选,所述的步骤①为:利用预设标定靶以及标定场地,对车载各鱼眼相机的内部参数及外部参数进行离线标定,生成相机标定参数配置文件。包括鱼眼相机内部参数
(焦距、光心)、畸变系数以及外部参数(旋转参数、平移参数)。
[0012] 作为优选,所述的步骤②包括下列步骤:
[0013] (21)建立立体环境模型,生成立体环境模型(X,Y)与鱼眼输入视角图像(u,v)的映射关系F,即:[X,Y]=F(u,v);
[0014] (22)计算辅助视角映射关系,生成辅助视角(u’,v’)与立体环境模型(X,Y)的映射关系H,即:[u’,v’]=H(X,Y);
[0015] (23)生成鱼眼输入权重系数;
[0016] (24)计算辅助视角与鱼眼输入视角映射关系:合并步骤(21)与步骤(22)中生成的两映射表,辅助视角中各点的亮度值为相关输入视角像素点亮度值与相应权重系数乘积之
和,即:[u’,v’]=H(F(u,v))。
[0017] 离线构建立体环境模型与车辆模型,根据相机标定参数配置文件与预设渲染点位置,生成原视角输入图像与渲染后辅助视角的映射关系,即生成从鱼眼图像输入对应到环
视辅助视角的映射表。
[0018] 作为优选,所述的步骤(21)为:建立立体环境模型,立体环境模型由平面、柱面以及球面三部分组成,由步骤①中生成的相机标定参数配置文件将鱼眼图像矫正后,根据小
孔成像原理获得立体环境模型(X,Y)与鱼眼输入视角图像(u,v)映射关系F,即:[X,Y]=F
(u,v)。
[0019] 作为优选,所述的步骤(22)为:将3D自身车辆模型按外部几何位置置于步骤(21)建立的立体环境模型中,根据应用模式,设定若干渲染点以及渲染所用虚拟相机参数,包括
焦距、视场角以及全局坐标,利用小孔成像原理,通过计算,生成辅助视角(u’,v’)与立体环
境模型(X,Y)的映射关系H,即:[u’,v’]=H(X,Y)。
[0020] 作为优选,所述的步骤(23)为:在各鱼眼输入图像上添加一维权重通道,鱼眼输入权重系数包括接缝融合权重系数,接缝融合权重系数采用预设渐进权重系数Wi(u,v);对于
相邻相机视场未重合区域,W(u,v)=1;对于相邻相机视场重合区域,0<W(u,v)<1。
[0021] 作为优选,所述的步骤③为:步骤②获得的离线辅助视角映射表文件按lz4压缩方式进行压缩,并将压缩后的文件存入系统FLASH中。
[0022] 作为优选,所述的步骤④包括下列步骤:
[0023] (41)实时解压离线辅助视角映射表压缩文件;
[0024] (42)更新鱼眼输入权重系数;
[0025] (43)实时显示辅助视角。
[0026] 作为优选,所述的步骤(41)为:先启动立体环视系统中的操作系统,将步骤③中压缩的映射表文件拷贝至内存中,并解压初始视角放入映射表寄存器中,映射表寄存器内容
动态更新,以最新载入的映射表替换映射表寄存器中最早存在的映射表;然后在分线程中,
根据车辆操作信号以及应用层视角切换模式定义,按应用需求解压后续所需视角映射表文
件,更新映射表寄存器中的映射表内容。初始视角包括显示主视角和预定义模式切换预读
入视角若干。映射表寄存器定义为长度固定的映射表存放空间。车辆操作信号包括档位切
换、转向等信号。
[0027] 作为优选,所述的步骤(42)为:鱼眼输入总权重系数W’(u,v)计算方法如下:Wi’(u,v)=Wi(u,v)*Ki,其中,Ki为各相机光照补偿系数;
[0028] 所述的步骤(43)为:在主线程中,获取映射表寄存器中显示位的映射表地址,基于步骤(42)获得的鱼眼输入总权重系数以及相应鱼眼输入图像,利用remap函数采用双线性/
最近邻方式实现辅助视角渲染,从而实时显示辅助视角。
[0029] 本发明的有益效果是:利用通用的remap函数替代GPU渲染功能,可实现任意自定义辅助视角显示。相比于已有的2D环视系统,本发明的通用性以及辅助显示的体验更好。相
比于已有的3D环视系统,本发明能在实现同等辅助效果的情况下,避免GPU硬件模块所引入
的成本提升。此外,本发明运算单元在环视系统不作用的工况下,可复用作其他辅助驾驶功
能处理单元,而GPU渲染引擎不具备此功能,因此本发明具有更好的通用性,具有很强的实
际应用价值。

附图说明

[0030] 图1是本发明非GPU渲染360度立体环视系统的一种系统结构示意图。
[0031] 图2是本发明中立体环境模型的一种切面示意图。
[0032] 图中1.平面,2.柱面,3.球面。

具体实施方式

[0033] 下面通过实施例,并结合附图,对本发明的技术方案作进一步具体的说明。
[0034] 实施例:本实施例的一种车载非GPU渲染360度立体环视实现方法,所用的车载非GPU渲染360度立体环视系统如图1所示,系统的输入为四路鱼眼相机输入,经过离线标定以
及渲染配置文件生成、在线映射表解压和实时辅助视角显示,输出为车辆周围360度全景辅
助视图。
[0035] 车载非GPU渲染360度立体环视实现方法,包括下列步骤:
[0036] ①离线标定相机参数,生成相机标定参数配置文件:利用预设标定靶以及标定场地,对车载各鱼眼相机的内部参数及外部参数进行离线标定,包括鱼眼相机内部参数(焦
距、光心)、畸变系数以及外部参数(旋转参数、平移参数),生成相机标定参数配置文件;
[0037] ②生成离线辅助视角映射表,包括下列步骤:
[0038] (21)建立立体环境模型,立体环境模型由平面、柱面以及球面三部分组成,如图2所示,R1、R2、R3为立体环境模型可配置参数,由步骤①中生成的相机标定参数配置文件将
鱼眼图像矫正后,根据小孔成像原理获得立体环境模型(X,Y)与鱼眼输入视角图像(u,v)映
射关系F,即:[X,Y]=F(u,v);
[0039] (22)将3D自身车辆模型按外部几何位置置于步骤(21)建立的立体环境模型中,根据相应应用模式,设定若干渲染点以及渲染所用虚拟相机参数,包括焦距、视场角以及全局
坐标,利用小孔成像原理,通过计算,生成辅助视角(u’,v’)与立体环境模型(X,Y)的映射关
系H,即:[u’,v’]=H(X,Y):
[0040] (23)生成鱼眼输入权重系数:在各鱼眼输入图像上添加一维权重通道,鱼眼输入权重系数包括接缝融合权重系数,接缝融合权重系数采用预设渐进权重系数Wi(u,v);对于
相邻相机视场未重合区域,W(u,v)=1;对于相邻相机视场重合区域,0<W(u,v)<1;
[0041] (24)计算辅助视角与鱼眼输入视角映射关系:合并步骤(21)与步骤(22)中生成的两映射表,辅助视角中各点的亮度值为相关输入视角像素点亮度值与相应权重系数乘积之
和,即:[u’,v’]=H(F(u,v));即生成从鱼眼图像输入对应到环视辅助视角的映射表,获得
离线辅助视角映射表文件;
[0042] ③压缩映射表文件:对步骤②获得的离线辅助视角映射表文件按1z4压缩方式进行压缩,并将压缩后的文件存入系统FLASH中;
[0043] ④映射表在线载入,并实时显示辅助视角,包括下列步骤:
[0044] (41)实时解压离线辅助视角映射表压缩文件:先启动立体环视系统中的操作系统,将步骤③中压缩的映射表文件拷贝至内存中,并解压初始视角(包括显示主视角和预定
义模式切换预读入视角若干)放入映射表寄存器中,映射表寄存器定义为长度固定的映射
表存放空间,映射表寄存器内容动态更新,以最新载入的映射表替换映射表寄存器中最早
存在的映射表;然后在分线程中,根据车辆操作信号(包括档位切换、转向等)以及应用层视
角切换模式定义,按应用需求解压后续所需视角映射表文件,更新映射表寄存器中的映射
表内容;
[0045] (42)更新鱼眼输入权重系数:鱼眼输入总权重系数W’(u,v)计算方法如下:Wi’(u,v)=Wi(u,v)*Ki,其中,Ki为各相机光照补偿系数;
[0046] 光照补偿计算方法如下:
[0047] 提取相邻鱼眼相机重合区域平均亮度,通过调整各相机亮度增益,使重合区域亮度差最小,即均衡各鱼眼相机亮度,此过程通过以下最小化误差函数error来获得相机增
益:
[0048]
[0049] 其中,Nij为相机i重叠于相机j的像素个数,
[0050] gaini,gainj分别是相机i和j的增益,
[0051] 是相机i在与相机j重叠区域的像素平均值,
[0052] σN是归一化的亮度误差的标准方差,
[0053] σg是增益的标准方差,
[0054] n是相机的个数;
[0055] (43)实时显示辅助视角:在主线程中,获取映射表寄存器中显示位的映射表地址,基于步骤(42)获得的鱼眼输入总权重系数以及相应鱼眼输入图像,利用remap函数(采用双
线性/最近邻方式)实现辅助视角渲染,最后在视觉界面实时显示全景辅助视图。
[0056] 本发明提出了一种可以在传统2D环视系统硬件架构上,不利用GPU渲染能力实现立体环视功能的方法。本发明利用通用的remap函数替代GPU渲染功能,可实现任意自定义
辅助视角显示。将接缝融合与光照补偿算法合并到同一个权重mask中,减少算法总步骤以
及运算数。相比于已有的2D环视系统,本发明的通用性以及辅助显示的体验更好;相比于已
有的3D环视系统,本发明能在实现同等辅助效果的情况下,避免GPU硬件模块所引入的成本
提升。此外,本发明所用运算单元在环视系统不作用的工况下,可复用做其他辅助驾驶功能
处理单元,而GPU渲染引擎不具备此功能,因而,本发明有更好的通用性,具备很强的实际应
用价值。