基于三维地图重建和抽取的子图的超低比特率编码方法与流程

文档序号:16815716发布日期:2019-02-10 14:28阅读:114来源:国知局
基于三维地图重建和抽取的子图的超低比特率编码方法与流程

本公开内容可适用于与高级驾驶员辅助系统(adas)一起使用的超低比特率编码法,其中跳过对背景对象的编码并且对前景中的感兴趣区域对象进行编码。



背景技术:

用于高级驾驶员辅助系统的当前编码方法对在整个场景中的对象进行编码,所述场景包括静态背景对象。在编码过程中包含背景对象的这种方法需要处理和存储大量对于驾驶员来说微不足道的信息。



技术实现要素:

在一个实施例中,一种超低速率视频编码的方法,包括捕获视频流内的帧,捕获帧的全局位置(globalposition),捕获帧的前进方向(heading),将全局位置和前进方向链接到帧,基于帧的全局位置和帧的前进方向确定帧的前景(foreground),确定前景内的至少一个感兴趣区域,分析该至少一个感兴趣区域,基于全局位置和前进方向从帧中移除背景,其中背景(background)与前景是互补的,并且对前景、全局位置、前进方向和该至少一个感兴趣区域进行编码。

在另一个实施例中,一种超低速率视频解码的方法,包括解码视频流内的帧的已编码前景,其中已编码前景至少包括帧的全局位置和帧的前进方向,提取帧的全局位置和帧的前进方向,基于帧的全局位置和帧的前进方向接收局部图像,并混合局部图像和前景。

附图说明

在附图中:

图1是根据本公开的一个实施例的第一系统布局;

图2是根据本公开的一个实施例的第二系统布局;

图3是视频流的未修改帧的图示;

图4是根据本公开的一个实施例的具有一般对象识别的视频流的帧的图示;

图5是根据本公开的一个实施例的移除了背景的视频流的帧的图示;

图6是根据本公开的一个实施例的视频流的帧的第一图示,其中识别了背景、前景和感兴趣区域;

图7是根据本公开的一个实施例的视频流的帧的第二图示,其中识别了背景、前景和感兴趣区域;

图8是根据本公开的一个实施例的编码流程图;

图9是根据本公开的一个实施例的第一编码方法;

图10是根据本公开的一个实施例的第二编码方法;

图11是根据本公开的一个实施例的第一解码方法;和

图12是根据本公开的一个实施例的第二解码方法。

具体实施方式

以下列出的实施例仅用于示出该装置和方法的应用,而不是限制范围。对该装置和方法的等同形式的修改应被归类为权利要求的范围内。

现代3d投影技术提供了静态场景的详细信息,如建筑物、街道和高速公路。3d街景视图提供道路以及周围建筑物的高分辨率图像。

在扩展的视觉应用中,该系统集成了视觉(图像/视频)作为主要数据输入,其与雷达、激光雷达、红外线、全球定位系统(gps)等其他信息相结合,以提供额外的数据输入。

来自静态场景中的信息是有用的,但是,处理重复的静态场景需要大量的存储和处理工作。一种可能提出的方法预处理视频流内的帧,以移除静态背景图像,并且这可以导致图像/视频序列被压缩到低得多的比特率。该系统集成到工业标准格式,包括但不限于运动图像专家组4(mpeg4)、h.264和高效视频编码法(hevc)。

该方法可以与高级驾驶员辅助系统(adas)协同工作。它可以利用adas的信息获得语义分割和对象检测,其将视频场景分离成背景对象,例如建筑物、天空、树木等,以及诸如车辆、道路标志和行人等感兴趣区域(rois)对象。

在一个例子中,该方法跳过对背景对象的编码,并仅将roi对象编码为压缩的比特流,这导致比特率的降低。

图1描绘了用于与诸如汽车、半挂车或类似的移动平台结合使用的示例电子系统。电子系统100可以是用于执行与过程800、900、1000、1100或1200的一个或多个部分或步骤的操作相关联的软件的计算设备,或者由图8-12提供的部件和过程。电子系统100可以是嵌入式计算机、个人计算机或移动设备(例如平板电脑、笔记本电脑、智能电话、个人数字助理(pda)),或其他其中嵌入或耦合了一个或多个处理器的触摸屏或电视,或具有无线连接的任何其他种类的计算机相关电子设备。

电子系统100可以包括用于各种类型的计算机可读介质和用于各种其他类型的计算机可读介质的接口。在所描绘的例子中,电子系统100包括总线124、一个或多个处理器118、系统存储器112、只读存储器(rom)116、永久存储设备110、输入设备接口120、输出设备接口114,以及一个或多个网络接口122。在一些实施中,电子系统100可以包括其他计算设备或电路,或者与其他计算设备或电路集成,用于先前描述的各种部件和步骤的操作。在本公开的一个实施例中,一个或多个处理器118通过总线124被耦合到相机126、全球定位系统(gps)模块128和前进方向模块130,其可以包括加速度计、陀螺仪等。

总线124共同表示通信地连接电子系统100的众多内部设备的所有系统、外围设备和芯片组总线。例如,总线124通信地连接带有rom116的处理器118、系统存储器112、永久存储设备110、相机126、gps模块128和前进方向模块130。

一个或多个处理器118从这些各种存储器单元检索要执行的指令和要处理的数据,以执行本主题公开的过程。一个或多个处理单元可以是不同实施中的单个处理器或多核处理器。

rom116存储由一个或多个处理器118和电子系统的其他模块使用的静态数据和指令。另一方面,永久存储设备110是读写存储设备。该设备是非易失性存储器单元,其即使在电子系统100关闭时也存储指令和数据。本主题公开的一些实施例使用大容量存储设备(例如磁盘或光盘及其对应的硬盘驱动器)作为永久存储设备110。

其他实施使用可移动存储设备(比如软盘、闪存驱动器及其对应的软盘驱动器)作为永久存储设备110。与永久存储设备110类似,系统存储器112是读写存储器。然而,与永久存储设备110不同,系统存储器112是易失性读写存储器,例如随机存取存储器。系统存储器112存储处理器在运行时需要的一些指令和数据。在一些实施中,本主题公开的过程被存储在系统存储器112、永久存储设备110、和/或rom116中。处理器118从这些各种存储器单元检索要执行的指令和要处理的数据,以便执行一些实施的过程。

总线124还分别连接到输入和输出设备接口120和114。输入设备接口120使用户能够向电子系统传达信息和选择命令。与输入设备接口120一起使用的输入设备包括,例如字母数字键盘和指点设备(也称为“光标控制设备”)。输出设备接口114使得能够,例如,显示由电子系统100产生的图像。与输出设备接口114一起使用的输出设备包括,例如打印机和显示设备,例如阴极射线管(crt)或液晶显示器(lcd)。一些实施包括诸如触摸屏的设备,其既用作输入设备也用作输出设备。

最后,如图1所示,总线124还通过网络接口122将电子系统100耦合到网络(未示出)。网络接口122可以包括,例如无线接入点(例如蓝牙或wi-fi)或用于连接到无线接入点的无线电电路。网络接口122还可以包括用于将计算机连接到计算机网络(例如局域网(“lan”)、广域网(“wan”)、无线lan、或内联网、或多个网络中的一个网络(如互联网))的一部分的硬件(如以太网硬件)。电子系统100的任一或所有部件可以与本主题公开一起使用。

虽然上述讨论主要涉及执行软件的微处理器或多核处理器,但是一些实施由一个或多个集成电路执行,例如专用集成电路(asic)或现场可编程门阵列(fpga)。在一些实施中,这种集成电路执行存储在电路自身上的指令。

如在本申请的说明书和任意权利要求中所使用的,术语“计算机”、“服务器”、“处理器”和“存储器”都指电子设备或其他技术设备。这些术语不包括人或人类群体。出于说明的目的,术语显示或显示装置意味着显示在电子设备上。

为了提供与用户的交互,本说明书中描述的主题的实施可以在具有显示设备(例如为crt(阴极射线管)或lcd(液晶显示器)监视器,用于向用户显示信息)的计算机上、以及键盘和指点设备(例如鼠标或跟踪球,用户可以通过它们向计算机提供输入)上实现。其他类型的设备也可用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈,例如视觉反馈、听觉反馈或触觉反馈;并且来自用户的输入可以以任何形式接收,包括声学、语音或触觉输入。

本说明书中描述的主题的实施例可以在包括后端部件(例如作为数据服务器)、或包括中间件部件(例如应用服务器)、或包括前端部件(例如具有图形用户界面的客户端计算机,用户可以通过该图形用户界面与本说明书中描述的主题的实施进行交互)、或包括一个或多个这样的后端、中间件或前端部件的任何组合的计算系统中实现。通信网络的例子包括局域网(“lan”)、广域网(“wan”)、互联网络(例如因特网)和对等网络(例如adhoc对等网络)。

计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离,并且通常通过通信网络进行交互。客户端和服务器的关系由于在相应的计算机上运行、并且彼此具有客户端-服务器关系的计算机程序而产生。在客户端设备处生成的数据(例如用户交互的结果)可以从服务器处的客户端设备被接收。

图2描绘了第二示例电子系统200。该系统具有相机126,其可以是具有镜头和互补金属氧化物半导体(cmos)图像传感器的相机、红外图像传感器、激光雷达图像传感器、雷达图像传感器或类似物。该系统包括全球定位设备128,例如gps、全球导航卫星系统(gnss)、格洛纳斯(glonass)、北斗(bds)、伽利略、印度区域导航卫星系统(irnss)、准天顶卫星系统(qzss)、传奇(legenda)或类似物。该系统还包括陀螺仪210和加速度计212中的至少一个。视频编码器216能够以标准化格式编码,所述标准格式例如为高级视频编码(avc)/高效视频编码(hevc),片上系统(soc)214平台(cpu/gpu)以诸如3g、4g、长期演进(lte)、5g等格式将218与周围环境无线地联通。

图3描绘了视频流的未编辑帧310。在该帧内是固定不动的对象,其包括背景、感兴趣区域(例如街道上的人、街道标志等)。这个未编辑视频流帧显示了该帧中的大量对象,其中大多数对于一组特定的动作(如高级驾驶员辅助)来说是不感兴趣的。

图4描绘了视频流的已编辑帧410。在该已编辑帧中,示出了感兴趣区域的剪裁,其中语义分割检测自由空间、障碍物等。这对感兴趣区域的检测提供了辅助。在一个例子中,对感兴趣区域进行编码,并且去除非roi,如图5的510中所示。还示出了基于对象类别的自适应量化,其中roi被分配到不同的类别,例如车辆和行人,这可能导致针对不同对象的视频压缩的不同量化级别。可变量化还可以应用于roi内的对象以确定其对象类别。

图6描绘了城市内的视频流的分段帧610,其具有背景612,红色边界内的前景感兴趣区域614,和绿色框内所示的前景感兴趣区域内的个别对象616。在该例子中,将从该帧中擦除背景,并且将对前景和感兴趣对象进行编码。量化级别可以从背景到单独的感兴趣对象而变化。

图7描绘了高速公路上的视频流的分段帧710,其具有背景712,红色边界内的前景感兴趣区域714和绿色框内所示的前景感兴趣区域内的个别对象716。在该例子中,将从帧中擦除背景,并且将对前景和感兴趣对象进行编码。量化级别可以从背景到个别感兴趣对象而变化。

图8描绘了系统和方法的一个例子。在该例子中,视频相机模块810以指定的分辨率和帧速率捕获视觉图像。该相机可以是基于cmos的相机、红外相机、激光雷达、雷达或类似物。

gps可以以一定的速率和精度提供实时位置信息。加速度计和进一步的数字滤波可以提高采样率和准确度。陀螺仪和离线校准可以提供相机的正确视角。从gps获得的位置信息和从陀螺仪获得的视角作为元数据被记录用于帧,并且被多路复用到比特流。

高级驾驶员辅助系统814(adas)可以接收输出的图像分割信息816和对象检测信息812。

编码器818包括来自当前帧的场景分析(820),其被用于为该帧设置pic_init_qp,其中pic_init_qp包含用于avc/hevc标准编码的初始量化步长。该值是场景复杂度和场景重要性的函数。场景复杂度是视频压缩效率的一个因素。更复杂的场景可能需要更多比特以相同质量或更高量化进行编码,以在损害重建的图片的质量的同时保持比特率。第二个术语,场景重要性,是为了帮助这种权衡,并由应用用户可配置。

在一个例子中roi裁剪822通过图像语义分割与adas系统一起发生,以检测自由空间、障碍物等。在相同的过程中,该方法提供有用的洞察到感兴趣区域(rois)。在该示例系统中,包括在roi中的宏块被编码,而其他剩余区域被移除或涂黑。

自适应量化824可以基于对象类别,并且可以通过识别roi可以属于不同的类别(如车辆或行人)来进行,这可能暗示了用于视频压缩的不同量化级别。可变量化可以用于适合其对象类别的对象。

avc/hevc编码器828被配置为无限长的图片组,其中第一瞬时解码器刷新(idr)之后是预测图片(p)。roi外的宏块以有效的方式(例如p-跳过模式)编码。编码器输出已编码比特流826,其可以反映诸如avc或hevc的标准。

为已编码帧记录时间、天气和其他支持性信息以及由gps给出的相机位置和陀螺仪给出的相机视角视图,并将其作为元数据插入比特流中(832)。

可选地,如果街道地图不可用,则可以利用并扩展具有深度抽取(830)的原始视频图片。较小分辨率的比特流可以在显示之前用作用于最终回放融合的补充源。

作为已编码视频的输入的图像的场景的静态部分,可以在给定相机的位置和视角的情况下被重建。

量化级别可以适应于对象类别和用户兴趣的感兴趣级别。

图9描绘了超低速率视频编码900的示例方法,包括捕获视频流内的帧(910),视频流可以是可见光谱、红外、激光雷达、雷达或类似物。该方法包括捕获帧的全局位置(912),其在一个例子中可以是gps系统或类似物。陀螺仪可以用于捕获帧的前进方向(914)以设置用于稍后查看的相机视角。此时,该方法提供将全局位置和前进方向链接到帧(916),以提供用于该帧的环境。该方法提供基于帧的全局位置和帧的前进方向确定帧的前景(918)。在该例子中,前景将包含驾驶员感感兴趣的那些项目,例如行人、其他汽车、道路等。在这个前景内,该方法确定前景内的至少一个感兴趣区域(920),并且分析至少一个感兴趣区域(922)。为了减少计算开销和存储,该方法提供基于全局位置和前进方向,从帧中移除背景,其中背景与前景互补(924)。对前景、连同全局位置、前进方向和至少一个感兴趣区域进行编码(926)。

图10描绘了超低速率视频编码的另一示例方法(1000),其中,前进方向由加速度计和陀螺仪中的至少一个提供。编码可以包括基于加速度计和陀螺仪中的至少一个来校准帧的角度(1010),将帧的全局位置和帧的前进方向存储到帧的元数据中(1012),并且将全局位置和校准角度存储到帧的元数据中(1014)。

编码还可以包括分割背景、前景和至少一个感兴趣区域(1016)以及识别前景中的对象(1018)。

该方法可以在移除背景之后基于视频流内的其余帧确定场景复杂度(1020),并且在移除背景之后基于视频流内的其余帧确定场景重要性(1022)。

编码可以提供对前景中的至少一个感兴趣对象进行量化(1024),并且将天气信息和时间存储到帧的元数据中(1026)。

该方法还提供利用前景、全局位置和前进方向重建帧(1028)和/或抽取捕获的帧(1030)。

可以通过利用由诸如avc/hevc等标准定义的标准解码过程来完成对已编码比特流的解码,其中重建roi内的内容。在一个例子中,解码帧包括提取与位置和相机视角有关的信息。

可以基于从位置和相机视角视图获得的信息以及时间和天气信息,来获得3d街景地图图片。

可以基于来自2d图像的位置、视角、时间和天气来渲染3d街景。如果街景地图不可用,则将抽取的比特流和上采样解码为原始尺寸。可以从已编码比特流中提取roi信息。

混合存储的图像和捕获的图像可以利用roi内的像素,并使用来自解码的比特流的值和来自渲染的3d街景图片的roi之外的像素。可以使用自适应混合来混合roi边界处的像素,其中可以使用特征匹配处理和多频带混合滤波器。

图11描绘了超低速率视频解码的示例方法(1100),包括解码视频流内的帧的已编码前景,其中已编码前景至少包括帧的全局位置和帧的前进方向(1110)。该方法还包括提取帧的全局位置和帧的前进方向(1112)。该方法还包括基于帧的全局位置和帧的前进方向来接收局部图像(1114),并且将局部图像和前景混合(1116)。

图12描绘了超低速率视频解码的另一例子(1200),其中混合是部分地基于天气信息和时间。如果局部图像不可用,该例子还可以包括解码帧的抽取的比特流和上采样(1210)。

该方法可以包括从前景和从编码前景的元数据中提取至少一个感兴趣区域(1212),并且包括在局部图像和前景的交叉点处进行自适应混合(1214)、特征匹配(1216)和/或多频带混合(1218)中的至少一个。

本领域的技术人员将了解,本文中所描述的各种说明性的块、模块、元件、部件、方法和算法可以被实施为电子硬件、计算机软件,或两者的组合。为了阐明硬件和软件的这种可互换性,上文已经在功能方面对各种说明性的块、模块、元件、部件、方法和算法进行了一般性描述。将这样的功能实施为硬件还是软件取决于强加于整个系统的特定应用和设计约束。技术人员可以针对每个特定应用以不同方式实施所描述的功能。在不脱离本主题技术(subjecttechnology)的范围的情况下,各种部件和块可以被不同地布置(例如以不同的顺序布置,或以不同的方式划分)。

应理解,所公开的过程中的步骤的特定顺序或层级旨在阐明示例方法。基于设计偏好,可以理解,过程中的步骤的特定顺序或层级可以被重新排列。一些步骤可以同时进行。所附方法权利要求以样本顺序呈现各个步骤的元素,并且并不意味着限于所呈现的特定顺序或层级。

提供先前的描述是为了使所属领域的技术人员能够实践本文中所描述的各种方面。前面的描述提供了主题技术的各种例子,并且主题技术不限于这些例子。对于本领域技术人员来说,对这些方面的各种修改是明显的,并且本文定义的一般原理可以被应用于其他方面。因此,权利要求不旨在限于本文所示的方面,而是旨在使全部范围与权利要求的语言表述相一致,其中对单数元素的引用并不旨在表示“一个且仅一个”,除非具体如此陈述,而是表示“一个或多个”。除非另外特别说明,否则术语“一些”是指一个或多个。男性中的代词(如他的)包括女性和中性(如她的和它的),反之亦然。标题和副标题(如果有的话)仅为了方便而使用,并不限制本发明。谓语“被配置以”、“可操作以”和“被编程以”并不暗示着主语的任何特定的有形的或无形的修改,而是旨在可被互换地使用。例如,被配置以监视和控制操作或部件的处理器还可以表示处理器被编程以监视和控制操作,或者处理器可操作以监视和控制操作。同样地,被配置以执行代码的处理器可以被解释为被编程以执行代码的处理器,或可操作以执行代码的处理器。

诸如“方面”之类的短语并不暗示这样的方面对于主题技术是必不可少的,或者这样的方面适用于主题技术的所有配置。涉及一方面的公开可能适用于所有配置、或一个或多个配置。一方面可以提供一个或多个例子。诸如方面的短语可以指一个或多个方面,反之亦然。诸如“实施例”之类的短语并不暗示这样的实施例对于主题技术是必不可少的、或者这样的实施例适用于主题技术的所有配置。涉及一个实施例的公开可以适用于所有实施例、或一个或多个实施例。一个实施例可以提供一个或多个示例。诸如“实施例”的短语可以指代一个或多个实施例,反之亦然。诸如“配置”之类的短语并不暗示这样的配置对于主题技术是必不可少的,或者这样的配置适用于主题技术的所有配置。涉及一种配置的公开可以适用于所有配置或一种或多种配置。一种配置可以提供一个或多个例子。诸如“配置”的短语可以指一个或多个配置,反之亦然。

本文使用词语“例子”来表示“用作例子或示出”。本文中描述为“例子”的任何方面或设计不必被解释为比其他方面或设计更优选或更具优势。

本领域普通技术人员已知或以后将知道的,贯穿本公开所描述的各个方面的元件的所有结构和功能等同物通过引用被明确地并入本文,并且旨在由权利要求书所涵盖。此外,无论在权利要求中是否明确地叙述了这样的公开,本文的公开都不旨在捐献于公众。任何权利要求的要素均不得根据35u.s.c.§112第六段的规定进行解释,除非使用短语“用于……的装置(meansfor)”明确叙述该要素,或者在方法权利要求的情况下,使用短语“用于……的步骤”叙述该要素。此外,关于在说明书或权利要求书中使用“包括”、“具有”或类似术语的含义,这样的术语旨在被包括在术语“包括”的方式内,类似于当“包括”在权利要求中被用作连接词时,对“包括”的解释那样。

对“一个实施例”、“实施例”、“一些实施例”、“各种实施例”或类似表述的引用表明特定元件或特性被包括在本发明的至少一个实施例中。虽然短语可能出现在各个地方,但短语不一定是指同一个实施例。结合本公开,本领域技术人员将能够设计和并入适合于实现上述功能的各种机制中的任何一种。

应理解,本公开仅教导了说明性的实施例的一个例子,并且本领域技术人员在阅读本公开之后可以容易地设计出本发明的许多变型,并且本发明的范围由以下权利要求确定。

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