CN116612059A - 图像处理方法及装置、电子设备、存储介质 - Google Patents
图像处理方法及装置、电子设备、存储介质 Download PDFInfo
- Publication number
- CN116612059A CN116612059A CN202310871670.XA CN202310871670A CN116612059A CN 116612059 A CN116612059 A CN 116612059A CN 202310871670 A CN202310871670 A CN 202310871670A CN 116612059 A CN116612059 A CN 116612059A
- Authority
- CN
- China
- Prior art keywords
- pixel point
- panoramic
- map
- pixel
- environment
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 53
- 238000000034 method Methods 0.000 claims abstract description 64
- 238000001514 detection method Methods 0.000 claims abstract description 53
- 230000000007 visual effect Effects 0.000 claims abstract description 17
- 230000007613 environmental effect Effects 0.000 claims description 196
- 238000012545 processing Methods 0.000 claims description 46
- 230000004927 fusion Effects 0.000 claims description 37
- 238000004590 computer program Methods 0.000 claims description 22
- 230000009467 reduction Effects 0.000 claims description 21
- 238000006243 chemical reaction Methods 0.000 claims description 18
- 238000013507 mapping Methods 0.000 claims description 18
- 238000005070 sampling Methods 0.000 claims description 16
- 238000012937 correction Methods 0.000 claims description 13
- 238000012216 screening Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 18
- 230000008569 process Effects 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 12
- 235000004522 Pentaglottis sempervirens Nutrition 0.000 description 10
- 238000013473 artificial intelligence Methods 0.000 description 9
- 240000004050 Pentaglottis sempervirens Species 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 238000000605 extraction Methods 0.000 description 5
- 238000011176 pooling Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000007499 fusion processing Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000002864 sequence alignment Methods 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration by the use of more than one image, e.g. averaging, subtraction
-
- G06T5/77—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
Abstract
本申请的实施例公开了一种图像处理方法及装置、电子设备、存储介质,该方法包括:在获取到针对移动系在指定时刻所处的环境拍摄得到的、且所对应的视角不完全相同的多张环境图后,先对多张环境图进行融合,得到移动对象在指定时刻的全景环境图,并查找移动对象在早于指定时刻的历史时刻的历史全景环境图,以及移动对象在历史时刻与指定时刻之间的移动信息,从而根据移动信息以及历史全景环境图对指定时刻的全景环境图进行修正。本申请实施例的技术方案可以提升全景环境图的质量,进而提升检测准确度。
Description
技术领域
本申请涉及计算机领域,具体而言,涉及一种图像处理方法及装置、电子设备、存储介质、程序产品。
背景技术
为进行自动驾驶、智能导航等,通常需要对移动对象(例如,车辆等)所处的环境进行拍摄,以基于拍摄得到的图像检测移动对象所处的环境中的障碍物、车道线、红绿灯等目标。为提升检测全面性,可以从不同视角对移动对象所处的环境进行拍摄。
相关技术中,在拍摄得到多张视角不同的图像后,通常对多张图像分别进行检测,再根据多张图像分别对应的检测结果确定最终的检测结果,由于单张图像的视角有限、受不利因素的影响较大,单张图像的质量较低,根据单张图像进行检测容易出现目标分裂、目标闪现等问题,使得单张图像的检测准确度较低,进而降低了最终的检测结果的准确度。
发明内容
本申请的实施例提供了一种图像处理方法及装置、电子设备、存储介质、程序产品,可以提升环境图的质量,进而提升检测准确度。
根据本申请实施例的一个方面,提供了一种图像处理方法,所述方法包括:
获取针对移动对象在指定时刻所处的环境拍摄得到的多张环境图;其中,所述多张环境图对应的视角不完全相同;对所述多张环境图进行融合,得到所述移动对象在所述指定时刻的全景环境图;查找所述移动对象在历史时刻的历史全景环境图,以及所述移动对象在所述历史时刻与所述指定时刻之间的移动信息;其中,所述历史时刻早于所述指定时刻;根据所述移动信息以及所述历史全景环境图,对所述全景环境图进行修正。
根据本申请实施例的一个方面,提供了一种图像处理装置,所述装置包括:
获取模块,配置为获取针对移动对象在指定时刻所处的环境拍摄得到的多张环境图;其中,所述多张环境图对应的视角不完全相同;融合模块,配置为对所述多张环境图进行融合,得到所述移动对象在所述指定时刻的全景环境图;查找模块,配置为查找所述移动对象在历史时刻的历史全景环境图,以及所述移动对象在所述历史时刻与所述指定时刻之间的移动信息;其中,所述历史时刻早于所述指定时刻;修正模块,配置为根据所述移动信息以及所述历史全景环境图,对所述全景环境图进行修正。
在一示例性实施例中,基于前述方案,该装置还包括检测模块,配置为:对修正后的全景环境图和所述历史全景环境图中位于同一位置的像素点的像素参数进行拼接,得到融合全景环境图;根据所述融合全景环境图检测所述移动对象在所述指定时刻所处的环境中包含的障碍物,得到障碍物检测结果;其中,所述障碍物检测结果中包含障碍物的位置、尺寸、方向角、移动速度中的至少一种。
在一示例性实施例中,基于前述方案,在所述移动信息包含所述移动对象在所述历史时刻与所述指定时刻之间的移动速度和移动方向的条件下,所述修正模块具体配置为:根据所述移动速度、以及所述历史时刻与所述指定时刻之间的时差,计算所述移动对象在所述历史时刻与所述指定时刻之间的移动距离;根据所述移动距离和所述移动方向,查找所述历史全景环境图与所述全景环境图的重叠区域;根据所述历史全景环境图中处于所述重叠区域内的第一图像数据,对所述全景环境图中处于所述重叠区域内的第二图像数据进行修正。
在一示例性实施例中,基于前述方案,所述修正模块具体配置为:根据所述历史全景环境图中所述重叠区域与所述移动对象之间的距离计算所述第一图像数据对应的权重,并根据所述全景环境图中所述重叠区域与所述移动对象之间的距离计算所述第二图像数据对应的权重;其中,权重与距离负相关;根据计算出的权重对所述第一图像数据和所述第二图像数据进行融合,得到修正后的第二图像数据。
在一示例性实施例中,基于前述方案,所述融合模块具体配置为:对所述多张环境图分别进行特征提取,得到多张特征图;其中,所述多张特征图中包含所述多张环境图分别对应的特征图;对所述多张特征图进行融合,得到所述全景环境图。
在一示例性实施例中,基于前述方案,所述融合模块具体配置为:按照多种下采样参数分别对每张环境图进行下采样处理,得到所述每张环境图对应的多张初始特征图;对所述多张初始特征图进行融合,得到所述每张环境图对应的特征图。
在一示例性实施例中,基于前述方案,所述融合模块具体配置为:对每张初始特征图中包含的图像数据进行降维处理,得到降维处理后的多张初始特征图;其中,所述降维处理后的多张初始特征图所包含的图像数据的维度相匹配;从降维处理后的多张初始特征图中筛选出尺寸最大的目标初始特征图以及除所述目标初始特征图之外的其他初始特征图;对所述其他初始特征图进行上采样处理,得到所对应的尺寸与所述目标初始特征图的尺寸相匹配的其他初始特征图;对所述目标初始特征图和上采样处理后的其他初始特征图分别包含的图像数据进行融合,得到所述每张环境图对应的特征图。
在一示例性实施例中,基于前述方案,所述融合模块具体配置为:获取每张特征图对应的图像坐标系与所述全景环境图对应的世界坐标系之间的坐标转换参数;对所述每张特征图中包含的每个像素点的深度进行检测,得到所述每个像素点的深度值;根据所述坐标转换参数、所述每个像素点的深度值,以及所述每个像素点在所述图像坐标系中的坐标,计算所述每个像素点在所述世界坐标系中对应的世界坐标;根据所述每个像素点对应的世界坐标,将所述每个像素点映射至所述世界坐标系中,得到所述全景环境图。
在一示例性实施例中,基于前述方案,所述融合模块具体配置为:根据所述每个像素点对应的世界坐标,查找所述每个像素点在所述全景环境图中所对应的目标像素点;若所述多张特征图中存在多个像素点对应于同一目标像素点,则对所述多个像素点的像素参数进行融合,得到所述同一目标像素点的像素参数。
在一示例性实施例中,基于前述方案,所述融合模块具体配置为:根据多个指定深度对所述每个像素点的像素参数进行检测,得到所述每个像素点在所述多个指定深度分别对应的像素参数;根据所述多个指定深度对所述每个像素点的深度进行检测,得到所述每个像素点的深度概率分布;其中,所述深度概率分布中包含所述每个像素点的深度属于每个指定深度的概率;根据所述每个像素点的深度概率分布,对所述每个像素点在所述多个指定深度分别对应的像素参数进行融合,得到所述每个像素点的融合像素参数;根据所述每个像素点对应的世界坐标,查找所述每个像素点在所述全景环境图中所对应的目标像素点,并根据所述每个像素点的融合像素参数更新所述目标像素点的像素参数。
在一示例性实施例中,基于前述方案,在所述世界坐标系是以所述移动对象所处的位置为原点建立的三维坐标系的条件下,所述融合模块具体配置为:根据所述每个像素点对应的世界坐标,计算所述每个像素点与所述移动对象之间的水平距离;若所述水平距离处于设定距离区间,则将所述每个像素点映射至所述世界坐标系中;若所述水平距离没有处于所述设定距离区间,则丢弃所述每个像素点。
在一示例性实施例中,基于前述方案,在所述世界坐标系是以所述移动对象所处的位置为原点建立的三维坐标系的条件下,所述融合模块具体配置为:根据所述每个像素点对应的世界坐标,计算所述每个像素点与所述移动对象之间的高度差;若所述高度差小于或等于设定高度阈值,则将所述每个像素点映射至所述世界坐标系中;若所述高度差大于所述设定高度阈值,则丢弃所述每个像素点。
根据本申请实施例的一个方面,提供了一种电子设备,包括:
一个或多个处理器;存储装置,用于存储一个或多个计算机程序,当所述一个或多个计算机程序被所述一个或多个处理器执行时,使得所述电子设备实现如前所述的图像处理方法。
根据本申请实施例的一个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序被电子设备的处理器执行时,使电子设备实现如前所述的图像处理方法。
根据本申请实施例的一个方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如前所述的图像处理方法。
在本申请的实施例所提供的技术方案中,在获取到针对移动系在指定时刻所处的环境拍摄得到的、且所对应的视角不完全相同的多张环境图后,先对多张环境图进行融合,得到移动对象在指定时刻的全景环境图,并查找移动对象在早于指定时刻的历史时刻的历史全景环境图,以及移动对象在历史时刻与指定时刻之间的移动信息,从而根据移动信息以及历史全景环境图对指定时刻的全景环境图进行修正,相比相关技术,一方面,指定时刻的全景环境图融合了指定时刻对应的视角不完全相同的多张环境图,不仅扩大了全景环境图的视角,并且,融合过程中多张环境图能够互相补偿,降低了不利因素的影响,提升了全景环境图的质量,基于该全景环境图进行检测等,可以避免目标分裂、目标闪现等问题,提升检测准确度;另一方面,基于历史时刻的历史全景环境图以及移动对象的移动信息对指定时刻的全景环境图进行修正,可以进一步提升指定时刻的全景环境图的质量,从而进一步提升检测准确度。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
图1是本申请的一示例性实施例示出的实施环境的示意图。
图2是本申请的一示例性实施例示出的图像处理方法的流程图。
图3是本申请的一示例性实施例示出的相机部署位置示意图。
图4是本申请的另一示例性实施例示出的图像处理方法的流程图。
图5是本申请的一示例性实施例示出的历史时刻的环境图与全景环境图的示意图。
图6是本申请的一示例性实施例示出的当前时刻的环境图与全景环境图的示意图。
图7是本申请的另一示例性实施例示出的图像处理方法的流程图。
图8是本申请的另一示例性实施例示出的重叠区域的示意图。
图9是本申请的另一示例性实施例示出的图像处理方法的流程图。
图10是本申请的另一示例性实施例示出的图像处理方法的流程图。
图11是本申请的另一示例性实施例示出的图像处理方法的流程图。
图12是本申请的一示例性实施例示出的环境图的处理过程示意图。
图13是本申请的另一示例性实施例示出的图像处理方法的流程图。
图14是本申请的另一示例性实施例示出的图像处理方法的流程图。
图15A是本申请的一示例性实施例示出的深度示意图。
图15B是本申请的一示例性实施例示出的深度检测示意图。
图16是本申请的另一示例性实施例示出的图像处理方法的流程图。
图17是本申请的另一示例性实施例示出的图像处理方法的流程图。
图18是本申请的另一示例性实施例示出的图像处理方法的流程图。
图19是本申请的另一示例性实施例示出的图像处理方法的流程图。
图20是本申请的另一示例性实施例示出的图像处理方法的流程图。
图21是本申请的一示例性实施例示出的图像处理过程的框图。
图22是本申请的一示例性实施例示出的图像处理装置的示意图。
图23示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
还需要说明的是:在本申请中提及的“多个”是指两个或者两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
以下对本申请实施例的技术方案进行详细介绍:
相关技术中,在拍摄得到多张视角不同的图像后,通常对多张图像分别进行检测,再根据多张图像分别对应的检测结果确定最终的检测结果,由于单张图像的视角有限,受不利因素的影响较大,单张图像的质量较低,针对单张图像进行检测容易出现目标分裂、目标闪现等问题,使得单张图像的检测准确度较低,进而降低了最终的检测结果的准确度。基于此,本申请的实施例提供了一种图像处理方法及装置、电子设备、存储介质、程序产品,可以提升环境图的质量,进而提升检测准确度。
请参阅图1,图1是本申请涉及的一种实施环境的示意图,该实施环境包括终端设备110和服务器120。终端设备110和服务器120之间通过有线或者无线网络进行通信,终端设备110可以将自身的数据上传至服务器120,也可以从服务器120获取数据。
其中,终端设备110可以包括但不限于智能手机、平板、笔记本电脑、计算机、智能语音交互设备、智能家电、车载终端、飞行器、远程驾驶终端等等;服务器120可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)以及大数据和人工智能平台等基础云计算服务的云服务器,本处不对终端设备和服务器的具体形式进行限制。
需要说明的是,图1中的终端设备110以及服务器120的数量仅仅是示意性的,根据实际需要,可以具有任意数量的终端设备110以及服务器120。
在一示例性实施例中,本申请的实施例提供的图像处理方法可以由终端设备110执行。示例性的,终端设备110可以在获取到针对移动对象在指定时刻所处的环境拍摄得到的、且所对应的视角不完全相同的多张环境图后,可以对多张环境图进行融合,得到移动对象在指定时刻的全景环境图,并查找移动对象在早于指定时刻的历史时刻的历史全景环境图,以及移动对象在历史时刻与指定时刻之间的移动信息,以根据移动信息以及历史全景环境图,对全景环境图进行修正。相比相关技术,一方面,指定时刻的全景环境图融合了指定时刻对应的视角不完全相同的多张环境图,不仅扩大了全景环境图的视角,并且,融合过程中多张环境图可以互相补偿,降低了天气、光线强度等因素的影响,提升了全景环境图的质量,基于该全景环境图进行检测等,可以避免目标分裂、目标闪现等问题,提升检测准确度;另一方面,由于不同时刻拍摄得到的图像中所对应的拍摄区域可能存在重叠,因此,基于历史时刻的历史全景环境图以及移动对象的移动信息对指定时刻的全景环境图进行修正,可以进一步提升指定时刻的全景环境图的质量,从而进一步提升检测准确度。
在另一示例性实施例中,服务器120可以具有与终端设备110相似的功能,从而执行本申请实施例提供的图像处理方法。示例性的,服务器120可以在获取到针对移动对象在指定时刻所处的环境拍摄得到的、且所对应的视角不完全相同的多张环境图后,可以对多张环境图进行融合,得到移动对象在指定时刻的全景环境图,并查找移动对象在早于指定时刻的历史时刻的历史全景环境图,以及移动对象在历史时刻与指定时刻之间的移动信息,以根据移动信息以及历史全景环境图,对全景环境图进行修正。
在另一示例性实施例中,终端设备110和服务器120还可以共同执行本申请的实施例提供的图像处理方法。示例性的,终端设备110可以获取到针对移动对象在指定时刻所处的环境拍摄得到的、且所对应的视角不完全相同的多张环境图,然后,将多张环境图发送至服务器120。服务器120对多张环境图进行融合,得到移动对象在指定时刻的全景环境图,并查找移动对象在早于指定时刻的历史时刻的历史全景环境图,以及移动对象在历史时刻与指定时刻之间的移动信息,以根据移动信息以及历史全景环境图,对全景环境图进行修正。
本申请的实施例中涉及到环境图、全景环境图等与用户相关的数据,在本申请的方法应用于具体产品或技术中时,其均为获得用户许可或者同意,且相关的数据的提取、使用和处理均遵守当地安全标准和当地法律法规的规定。本申请的实施例可以应用于不同的场景,例如,可以应用于自动驾驶等场景,对应的,移动对象为车辆。
参见图2,图2是本申请的一示例性实施例示出的一种图像处理方法的流程图。该方法可以应用于图1所示的实施环境,其可以由图1所示的实施环境中的终端设备110执行,也可以由图1所示的实施环境中的服务器120执行,或者,也可以由图1所示的实施环境中的终端设备110和服务器120共同执行。
如图2所示,在一示例性实施例中,图像处理方法可以包括步骤S210-步骤S240,详细介绍如下:
步骤S210,获取针对移动对象在指定时刻所处的环境拍摄得到的多张环境图;其中,多张环境图对应的视角不完全相同。
需要说明的是,移动对象是指任意能够移动的物体,包括但不限于人物、车辆。环境图是指包含移动对象所处环境的图像。指定时刻是指任意需要检测移动对象所处环境的时刻,该指定时刻可以是周期性的,也就是说,可以周期性获取移动对象的全景环境图。
在移动对象的移动过程中,为了确定移动对象所处环境中的障碍物、车道线等,可以在指定时刻对移动对象所处的环境进行拍摄,得到移动对象在指定时刻所处的环境图,其中,在指定时刻拍摄得到的环境图包含拍摄时刻与指定时刻相同的环境图,以及拍摄时刻与指定时刻相近的环境图中的至少一种;其中,拍摄时刻与指定时刻相近可以是指拍摄时刻与指定时刻之间的时差小于设定时长阈值,该设定时长阈值的具体取值可以根据实际需要灵活设置,例如,可以设置为0.01、0.02秒等,或者,设定时长阈值可以根据移动对象的移动速度确定,其中,移动速度越快,设定时长阈值越小,即,移动速度与设定时长阈值负相关。
为了更加全面的检测移动对象所处环境,可以从不同视角拍摄移动对象在指定时刻所处的环境,得到多张视角不完全的环境图。
在一可选的实施方式中,多张视角不完全的环境图可以是多个视角不同的相机在指定时刻(或与指定时刻相近的时刻)对移动对象所处的环境拍摄得到的,其中,这多个视角不同的相机可以部署在移动对象、路侧单元、红绿灯装置、建筑物等中的至少一种上,例如,参见图3,若移动对象为车辆,可以通过部署在车辆周围的多个不同视角的相机310拍摄得到多张视角不同的环境图;又例如,可以通过部署在路侧单元上的相机以及部署在车辆上的相机拍摄车辆所处的环境,从而得到多张视角不同的环境图。
在另一可选的实施方式中,多张视角不完全的环境图可以是同一相机从不同视角针对移动对象在指定时刻所处的环境进行拍摄得到的,例如,该相机从某一视角对移动对象在指定时刻所处的环境进行拍摄后,立即进行旋转,以从另一视角对移动对象在指定时刻所处的环境进行拍摄,从而得到多张不同时间的环境图。
步骤S220,对多张环境图进行融合,得到移动对象在指定时刻的全景环境图。
全景图是指尽可能多的展现出周围环境的图像。因此,在获取到针对移动对象在指定时刻所处的环境拍摄得到的多张视角不完全相同的环境图后,对其进行融合,可以得到移动对象在指定时刻的全景环境图。该全景环境图可以是鸟瞰视角的环境图,即,鸟瞰图。
其中,具体融合方式可以根据实际需要灵活设置,例如,可以将每张环境图中的每个像素点投影至设定的世界坐标系中,从而得到全景环境图。
步骤S230,查找移动对象在历史时刻的历史全景环境图,以及移动对象在历史时刻与指定时刻之间的移动信息;其中,历史时刻早于指定时刻。
历史时刻是指早于指定时刻的时刻,为了提升修正准确性,历史时刻可以是早于指定时刻、且与指定时刻之间的时差小于设定时长的时刻。为了进一步提升修正准确性,可以设置多个历史时刻,从而根据多个历史时刻分别对应的全景环境图对指定时刻的全景环境图进行修正。
历史全景环境图是指移动对象在历史时刻的全景环境图,历史全景环境图的生成方式与指定时刻的全景环境图的生成方式类似,即,先获取针对移动对象在历史时刻所处的环境拍摄得到的多张视角不完全相同的环境图,再对其进行融合,得到历史全景环境图,可选的,还可以对历史全景环境图进行修正,修正方式与指定时刻的全景环境图的修正方式类似,此处不再赘述。
移动信息用于描述移动对象的移动情况,包括但不限于移动速度、移动方向、移动加速度等中的至少一种。
在移动对象的移动过程中,其所处环境不断发生变化,但相近时刻的环境图中可能会拍摄到同一区域(例如,同一棵树、同一商店等),因此,可以先查找历史全景环境图,以及移动对象在历史时刻与指定时刻之间的移动信息。
其中,移动对象在历史时刻与指定时刻之间的移动信息可以包含移动对象在历史时刻的移动信息与移动对象在指定时刻的移动信息中的最大值、最小值、中间值、平均值,移动对象在历史时刻的移动信息,移动对象在指定时刻的移动信息,以及移动对象在历史时刻和指定时刻的中间时刻的移动信息等中的至少一种。
步骤S240,根据移动信息以及历史全景环境图,对全景环境图进行修正。
根据移动信息以及历史全景环境图,可以对指定时刻的全景环境图中包含的内容进行修正,从而得到更加准确指定时刻的全景环境图。
在图2所示的实施例中,一方面,指定时刻的全景环境图融合了指定时刻对应的视角不完全相同的多张环境图,不仅扩大了全景环境图的视角,并且,融合过程中多张环境图能够互相补偿,降低了天气、光线强度等因素的影响,提升了全景环境图的质量,基于该全景环境图进行检测等,可以避免目标分裂、目标闪现等问题,提升检测准确度;另一方面,由于不同时刻拍摄得到的图像中所对应的拍摄区域可能存在重叠,因此,基于历史时刻的历史全景环境图以及移动对象的移动信息对指定时刻的全景环境图进行修正,可以进一步提升指定时刻的全景环境图的质量,从而进一步提升检测准确度。
在一示例性实施例中,参见图4,图4是本申请的另一示例性实施例示出的图像处理方法的流程图。该方法可以应用于图1所示的实施环境,其可以由图1所示的实施环境中的终端设备110执行,也可以由图1所示的实施环境中的服务器120执行,或者,也可以由图1所示的实施环境中的终端设备110和服务器120共同执行。
如图4所示,该方法包括步骤S210-步骤S240,以及步骤S410-步骤S420,其中,步骤S410-步骤S420的详细介绍如下:
步骤S410,对修正后的全景环境图和历史全景环境图中位于同一位置的像素点的像素参数进行拼接,得到融合全景环境图。
需要说明的是,对修正后的指定时刻的全景环境图和历史环境图进行拼接,可以得到指定时刻的融合全景环境图,在拼接过程中,将修正时刻的全景环境图的像素点和历史环境图中的像素点按照位置一一映射,并将修正时刻的全景环境图的每个像素点的像素参数与其对应的历史环境图中的像素点的像素参数进行拼接,得到融合全景环境图。例如,在一可选的示例中,将修正后的指定时刻的全局环境图中左上角像素点的像素参数与历史全景环境图中左上角像素点的像素参数进行拼接,将修正后的指定时刻的全局环境图中右下角像素点的像素参数与历史全景环境图中右下角像素点的像素参数进行拼接,并依此对修正后的指定时刻的全局环境图中的每个像素点的像素参数与历史全景环境图中对应像素点的像素参数进行拼接,从而得到指定时刻的融合全景环境图,例如,假设修正后的全景环境图和历史全景环境图的宽度方向上的像素点数量、高度方向上的像素点数量、像素参数的维度分别为(200,200,64),若历史全景环境图的数量为N-1,则拼接得到的融合全景环境图的宽度方向上的像素点数量、高度方向上的像素点数量、像素参数的维度分别为(200,200,N×64)。
步骤S420,根据融合全景环境图检测移动对象在指定时刻所处的环境中包含的障碍物,得到障碍物检测结果;其中,障碍物检测结果中包含障碍物的位置、尺寸、方向角、移动速度中的至少一种。
其中,障碍物的类别包括但不限于车辆、人物、动物等中的至少一种。
在得到指定时刻对应的融合全景环境图后,可以根据融合全景环境图检测移动对象在指定时刻所处环境中包含的障碍物,得到障碍物检测结果。例如,在一可选的示例中,假设障碍物和移动对象均为车辆,参见图5所示,在某一历史时刻从移动对象510的左前方、正前方、右前方、左侧、正后方以及右侧共6个视角拍摄了移动对象510所处的环境,分别得到环境图521-526,其中,左前方和正前方对应的环境图521和522中均拍摄到车辆531的车头部分,左侧对应的环境图524中拍摄到了车辆532的车尾部分,正后方对应的环境图525中拍摄到了的车辆533的车头部分,也就是说,在移动对象的左前方、左侧以及正后方分别存在车辆531-533,则历史时刻对应的全景环境图540中,检测到障碍物车辆531、车辆532以及车辆533;在该历史时刻的下一时刻(指定时刻),参见图6所示,从移动对象510的左前方、正前方、右前方、左侧、正后方以及右侧共6个视角拍摄了移动对象所处的环境,分别对应于环境图611-616,其中,左侧对应的环境图614中拍摄到车辆531的车尾部分,也就是说,车辆531由移动对象510的左前方移动到了移动对象510的左侧,右侧对应的环境图616中拍摄到了车辆533的侧面部分,也就是说,车辆531由移动对象510的正后方移动到了移动对象510的右侧,因此,在指定时刻对应的全景环境图620中,检测到障碍物车辆531和车辆533。
在一可选的实施方式中,还可以将融合全景环境图输入至三维目标检测模型,从而得到障碍物检测结果;其中,三维目标检测模型是一种机器学习模型,用于检测目标的位置、尺寸等信息。
可选的,在一定的条件下(例如,移动对象的移动速度较慢、历史时刻与指定时刻之间的时长较短等中的至少一种条件),指定时刻的全景环境图与历史时刻的全景环境图之间的拍摄区域基本重叠,因此,也可以不对指定时刻的全景环境图进行修正,直接将指定时刻的全景环境图与历史时刻的全景环境图中位于同一位置的像素点的像素参数进行拼接,得到融合全景环境图,再基于该融合全景环境图进行障碍物检测。或者,可以在满足设定条件(例如,移动对象的移动速度较慢、历史时刻与指定时刻之间的时长较短等至少一种)的情况下,将指定时刻的全景环境图与历史时刻的全景环境图中位于同一位置的像素点的像素参数进行拼接,得到融合全景环境图,再基于该融合全景环境图进行障碍物检测;在不满足设定条件的情况下,对指定时刻的全景环境图进行修正,并基于修正后的全景环境图进行障碍物检测。
需要说明的是,图4所示的步骤S210-步骤S240的具体实现细节可以参照图2所示的步骤S210-步骤S240,此处不再赘述。
在图4所示的实施例中,对修正后的指定时刻的全景环境图与历史全景环境图中同一位置的像素点的像素参数进行拼接,使得得到的融合全景环境图中不仅包含指定时刻的全景环境图的特征,还包含历史时刻的全景环境图的特征图,基于融合全景环境图进行障碍物检测,可以提升检测准确性。
在一示例性实施例中,参见图7,图7是本申请的另一示例性实施例示出的图像处理方法的流程图。该方法可以应用于图1所示的实施环境,其可以由图1所示的实施环境中的终端设备110执行,也可以由图1所示的实施环境中的服务器120执行,或者,也可以由图1所示的实施环境中的终端设备110和服务器120共同执行。
如图7所示,在移动信息包含移动对象在历史时刻与指定时刻之间的移动速度和移动方向的条件下,该方法包括步骤S210-步骤S230,以及步骤S710-步骤S730,其中,步骤S710-步骤S730的详细介绍如下:
步骤S710,根据移动速度、以及历史时刻与指定时刻之间的时差,计算移动对象在历史时刻与指定时刻之间的移动距离。
在移动信息包含移动对象在历史时刻与指定时刻之间的移动速度和移动方向的条件下,可以先计算历史时刻与指定时刻之间的时差,根据该时差与移动速度,可以计算出移动对象在历史时刻与指定时刻之间的移动距离。可选的,可以将该时差与移动速度之间的乘积作为移动距离,或者,还可以根据移动速度、移动加速度以及时差计算移动距离。
步骤S720,根据移动距离和移动方向,查找历史全景环境图与全景环境图的重叠区域。
根据移动距离和移动方向,可以查找出历史全景环境图与指定时刻的全景环境图之间的重叠区域,该重叠区域是在历史时刻和指定时刻均拍摄到的区域,也就是说,历史全景环境图中的重叠区域与指定时刻的全景环境图中的重叠区域所对应的拍摄区域相同。例如,参见图8所示,图8中,左侧的图表征历史时刻车辆(移动对象)的历史全景环境图,右侧的图表征指定时刻车辆的全景环境图,从历史时刻至指定时刻车辆向正前方移动了一定的距离,根据该距离可以确定历史全景环境图中的区域810与指定时刻的全景环境图中的区域820重叠,即,区域810和区域820为重叠区域。
步骤S730,根据历史全景环境图中处于重叠区域内的第一图像数据,对全景环境图中处于重叠区域内的第二图像数据进行修正。
图像数据用于描述图像中包含的像素点的特征,其包括图像中每个像素点的像素参数,例如,每个像素点的颜色、亮度、透明度等参数。
第一图像数据是历史全景环境图中处于重叠区域内的图像数据;第二图像数据是指定时刻的全景环境图中处于重叠区域内的图像数据;承接前例,第一图像数据为图8中的区域810,第二图像数据为图8中的区域820。
由于第一图像数据和第二图像数据对应于同一拍摄区域,因此,可以根据第一图像数据对第二图像数据进行修正。
需要说明的是,图7所示的步骤S210-步骤S230的具体实现细节可以参照图2所示的步骤S210-步骤S230,此处不再赘述。
在图7所示的实施例中,根据移动速度、以及历史时刻与指定时刻之间的时差,计算移动对象在历史时刻与指定时刻之间的移动距离,并根据该移动距离,根据移动距离和移动方向,查找历史全景环境图与全景环境图的重叠区域,根据历史全景环境图中处于重叠区域内的第一图像数据,对全景环境图中处于重叠区域内的第二图像数据进行修正,可以提升修正准确度,进而提升修正后的全景环境图的质量。
在一示例性实施例中,参见图9,图9是本申请的另一示例性实施例示出的图像处理方法的流程图。该方法可以应用于图1所示的实施环境,其可以由图1所示的实施环境中的终端设备110执行,也可以由图1所示的实施环境中的服务器120执行,或者,也可以由图1所示的实施环境中的终端设备110和服务器120共同执行。
如图9所示,该方法包括步骤S210-步骤S230、步骤S710-步骤S720,以及步骤S910-步骤S920,其中,步骤S910-步骤S920的详细介绍如下:
步骤S910,根据历史全景环境图中重叠区域与移动对象之间的距离计算第一图像数据对应的权重,并根据全景环境图中重叠区域与移动对象之间的距离计算第二图像数据对应的权重;其中,权重与距离负相关。
由于移动对象是移动的,在不同时刻,其与环境中的同一区域之间的距离不同,而距离与拍摄清晰度有关,在与该区域之间的距离较近时,针对该区域拍摄得比较清晰,而在与该区域之间的距离较远时,针对该区域拍摄得比较模糊;也不同,因此,可以根据历史全景环境图中重叠区域与移动对象之间的距离计算其对应的第一图像数据的权重,其中,距离越长,权重值越低。对应的,根据指定时刻的全景环境图中重叠区域与移动对象之间的距离计算其对应的第一图像数据的权重,其中,距离越长,权重值越低。
步骤S920,根据计算出的权重对第一图像数据和第二图像数据进行融合,得到修正后的第二图像数据。
根据第一图像数据和第二图像数据各自对应的权重,对第一图像数据和第二图像数据进行融合,得到修正后的第二图像数据。
具体融合方式可以根据实际需要灵活设置,在一可选的实施方式中,可以根据第一图像数据和第二图像数据各自对应的权重,对第一图像数据和第二图像数据进行加权求和,得到修正后的第二图像数据。在另一可选的实施方式中,可以对第一图像数据和第二图像数据进行比较,若第一图像数据和第二图像数据中存在不匹配的像素点,则根据第一图像数据和第二图像数据中权重值较高的图像数据对第二图像数据中不匹配的像素点进行更新,例如,假设第一图像数据的左上角有一辆车,而第二图像数据的左上角没有车,则表明第一图像数据和第二图像数据的左上角对应的像素点不匹配,若第一图像数据的权重值较高,则基于第一图像数据,对第二图像数据的左上角的像素点进行更新,使得第二图像数据的左上角包含车;若第二图像数据的权重值较高,则不对第二图像数据的左上角进行更新。
需要说明的是,图9所示的步骤S210-步骤S230的具体实现细节可以参照图2所示的步骤S210-步骤S230,图9所示的步骤S710-步骤S720的具体实现细节可以参照图7所示的步骤S710-步骤S720,此处不再赘述。
在图9所示的实施例中,根据与移动对象之间的距离确定权重,再根据确定出的权重对第一图像数据和第二图像数据进行融合,得到修正后的第二图像数据,可以提升修正准确度,进而提升修正后的全景环境图的质量。
在一示例性实施例中,参见图10,图10是本申请的另一示例性实施例示出的图像处理方法的流程图。该方法可以应用于图1所示的实施环境,其可以由图1所示的实施环境中的终端设备110执行,也可以由图1所示的实施环境中的服务器120执行,或者,也可以由图1所示的实施环境中的终端设备110和服务器120共同执行。
如图10所示,该方法包括步骤S210、步骤S1010-步骤S1020,以及步骤S230-步骤S240,其中,步骤S1010-步骤S1020的详细介绍如下:
步骤S1010,对多张环境图分别进行特征提取,得到多张特征图;其中,多张特征图中包含多张环境图分别对应的特征图。
针对多张环境图中的每张环境图,可以对其进行特征提取,从而得到多张环境图分别对应的特征图,即,得到多张特征图。
其中,特征提取的具体方式可以根据实际需要灵活设置,在一可选的实施方式中,可以根据卷积模块对环境图进行卷积,从而得到环境图对应的特征图,该卷积模块可以是基于卷积神经网络构建的。
步骤S1020,对多张特征图进行融合,得到全景环境图。
对多张环境图分别对应的特征图进行融合,可以得到指定时刻的全景环境图。
需要说明的是,图10所示的步骤S210、步骤S230-步骤S240的具体实现细节可以参照图2所示的步骤S210、步骤S230-步骤S240,此处不再赘述。
在图10所示的实施例中,对多张环境图分别对应的特征图进行融合,得到全景环境图,不仅能够降低数据处理量,还可以提升全景环境图的质量。
在一示例性实施例中,参见图11,图11是本申请的另一示例性实施例示出的图像处理方法的流程图。该方法可以应用于图1所示的实施环境,其可以由图1所示的实施环境中的终端设备110执行,也可以由图1所示的实施环境中的服务器120执行,或者,也可以由图1所示的实施环境中的终端设备110和服务器120共同执行。
如图11所示,该方法包括步骤S210、步骤S1110-步骤S1120、步骤S1020,以及步骤S230-步骤S240,其中,步骤S1110-步骤S1120的详细介绍如下:
步骤S1110,按照多种下采样参数分别对每张环境图进行下采样处理,得到每张环境图对应的多张初始特征图。
下采样参数是指下采样过程中涉及的参数,包括但不限于下采样倍数、卷积核的大小、步长、图像数据的维度等中的至少一种。
针对每张环境图,按照不同的下采样参数分别对其进行下采样,从而得到该张环境图对应的多张初始特征图。可选的,针对每张特征图,可以对其进行下采样得到一张初始特征图后,再对该初始特征图进行下采样得到另一张初始特征图,进而得到多张所对应的下采样参数不同的特征图。
步骤S1120,对多张初始特征图进行融合,得到每张环境图对应的特征图。
对每张环境图对应的多张初始特征图进行融合,可以得到每张环境图对应的特征图。例如,参见图12所示,将B张宽为H、高为W、图像数据维度C=3的环境图(B,H,W,C=3)输入至多个卷积模块后,多个卷积模块可以对每张环境图采用不同的卷积参数进行卷积,从而进行下采样,得到第一初始特征图集合F1= Tensor([B,C=1024,H / 16,W / 16]),再对F1中的每张初始特征图进行下采样,得到第二初始特征图集合F2= Tensor([B,C=2048,H /32,W / 32]),其中,F1中包含分别对B张环境图进行16倍下采样,并进行特征提取到的B张初始特征图,每一张初始特征图的宽为H/16,高为W/16,图像数据维度C=1024;F2中包含分别对B张环境图进行32倍下采样,并进行特征提取到的B张初始特征图,每一张初始特征图的宽为H/32,高为W/32,图像数据维度C=2048;再对F1和F2中,同一环境图对应的初始特征图进行融合,得到特征图集合F,其中,F中包含多张环境图分别对应的特征图。其中,Tensor是指多维数组,也就是说,第一初始特征图集合表征为数组的形式。
需要说明的是,图11所示的步骤S210、步骤S230-步骤S240的具体实现细节可以参照图2所示的步骤S210、步骤S230-步骤S240,图11所示的步骤S1020的具体实现细节可以参照图10所示的步骤S1020,此处不再赘述。
在图11所示的实施例中,按照多种下采样参数分别对每张环境图进行下采样处理,得到每张环境图对应的多张初始特征图,从而能够提取到环境图中不同尺寸的目标的特征图,使得对多张初始特征图进行融合,得到的每张环境图对应的特征图中包含不同尺寸的目标的特征,进而提升目标检测的准确度。
在一示例性实施例中,参见图13,图13是本申请的另一示例性实施例示出的图像处理方法的流程图。该方法可以应用于图1所示的实施环境,其可以由图1所示的实施环境中的终端设备110执行,也可以由图1所示的实施环境中的服务器120执行,或者,也可以由图1所示的实施环境中的终端设备110和服务器120共同执行。
如图13所示,该方法包括步骤S210、步骤S1110、步骤S1310-步骤S1340、步骤S1020,以及步骤S230-步骤S240,其中,步骤S1310-步骤S1340的详细介绍如下:
步骤S1310,对每张初始特征图中包含的图像数据进行降维处理,得到降维处理后的多张初始特征图;其中,降维处理后的多张初始特征图所包含的图像数据的维度相匹配。
在对多张初始特征图进行融合的过程中,多张初始特征图包含的图像数据的维度需要相匹配,而根据不同的下采样参数采样得到多张初始特征图所包含的图像数据的维度不匹配,因此,可以先对每张初始特征图中包含的图像数据进行降维处理,使得降维处理后的多张初始特征图所包含的图像数据的维度相匹配。
在一可选的实施方式中,可以从每张环境图包含的多张初始特征图分别对应的图像数据维度中筛选出最小维度,并将该多张初始特征图中每张初始特征图所包含的图像数据维度降维至与该最小维度相匹配,例如,假设某一环境图包含3张初始特征图,分别对应的图像数据维度为512、1024、256,则将每张初始特征图的图像数据维度降低至256。
在一可选的实施方式中,可以将每张初始特征图的图像数据维度降低至设定维度,该设定维度为预先设置的一个维度,具体取值可以根据实际需要灵活设置,例如,可以设置为512等。
步骤S1320,从降维处理后的多张初始特征图中筛选出尺寸最大的目标初始特征图以及除目标初始特征图之外的其他初始特征图。
目标初始特征图是指每张环境图对应的多张初始特征图中尺寸最大的初始特征图;其他初始特征图是指每张环境图对应的多张初始特征图中除尺寸最大的初始特征图之外的初始特征图。
在对多张初始特征图进行融合的过程中,多张初始特征图的尺寸需要相匹配,而根据不同的下采样参数采样得到多张初始特征图的尺寸不匹配,因此,可以先从降维处理后的多张初始特征图中筛选出目标初始特征图以及其他初始特征图。
步骤S1330,对其他初始特征图进行上采样处理,得到所对应的尺寸与目标初始特征图的尺寸相匹配的其他初始特征图。
对其他初始特征图进行上采样处理,使得上采样处理后的其他初始特征图的尺寸与目标初始特征图的尺寸相匹配。
步骤S1340,对目标初始特征图和上采样处理后的其他初始特征图分别包含的图像数据进行融合,得到每张环境图对应的特征图。
经过降维和上采样处理后,每张环境图对应的目标初始特征图和上采样处理后的其他初始特征图的图像数据维度以及尺寸相匹配,对目标初始特征图和上采样处理后的其他初始特征图分别包含的图像数据进行融合,得到每张环境图对应的特征图。
在一可选的实施方式中,可以对目标初始特征图和上采样处理后的其他初始特征图分别包含的图像数据进行相加处理后,进一步进行特征提取,得到每张环境图对应的特征图。例如,承接上例,假设多张环境图进行下采样后得到F1= Tensor([B,C=1024,H / 16,W / 16])和第二初始特征图集合F2= Tensor([B,C=2048,H / 32,W / 32]),则可以采用以下公式对F1和F2中对应于同一环境图的多张初始特征图进行融合:
F(i)=Conv3×3(Up(Conv1×1(fi2))+ Conv1×1(fi1))
其中,F(i)是第i张环境图对应的特征图;fi1是F1中第i张环境图对应的初始特征图,即,对第i张环境图进行16倍下采样得到的初始特征图;fi2是F2中第i张环境图对应的初始特征图,即,对第i张环境图进行32倍下采样得到的初始特征图;Conv1×1是指降维处理;Up是指上采样处理;Conv3×3是指对融合后的初始特征图进一步特征提取,从而得到B张特征图。例如,可以得到B张宽为H/32,高为W/32,图像数据维度为512的特征图,即Tensor([B,C=512,H / 16,W / 16])。
需要说明的是,图13所示的步骤S210、步骤S230-步骤S240的具体实现细节可以参照图2所示的步骤S210、步骤S230-步骤S240,图13所示的步骤S1020的具体实现细节可以参照图10所示的步骤S1020,图13所示的步骤S1110的具体实现细节可以参照图11所示的步骤S1110,此处不再赘述。
在图13所示的实施例中,对每张环境图对应的多张初始特征图进行降维、上采样,使得多张初始特征图之间的图像数据维度、尺寸相匹配,提升了多张初始特征图之间的匹配度,再对这多种初始特征图进行融合,得到该环境图对应的特征图,提升了特征图的准确度。
在一示例性实施例中,参见图14,图14是本申请的另一示例性实施例示出的图像处理方法的流程图。该方法可以应用于图1所示的实施环境,其可以由图1所示的实施环境中的终端设备110执行,也可以由图1所示的实施环境中的服务器120执行,或者,也可以由图1所示的实施环境中的终端设备110和服务器120共同执行。
如图14所示,该方法包括步骤S210、步骤S1010、步骤S1410-步骤S1440,以及步骤S230-步骤S240,其中,步骤S1410-步骤S1440的详细介绍如下:
步骤S1410,获取每张特征图对应的图像坐标系与全景环境图对应的世界坐标系之间的坐标转换参数。
图像坐标系是以图像中的某一个像素点为原点建立的二维坐标系,例如,可以将图像的左上角作为图像坐标系的原点。
世界坐标系是以三维世界中的任意一个点为原点建立的三维坐标系,例如,可以是以移动对象的位置为原点建立的三维坐标系,其可以包含x、y、z轴,其中,z轴可以对应于真实环境中的垂直方向(即,高度)。
图像坐标系与世界坐标系之间的坐标转换参数用于描述图像坐标系与世界坐标系之间的映射关系,从而将像素点的坐标在图像坐标系和世界坐标系之间进行转换。
为了将特征图中的像素点映射至世界坐标系中,以形成全局环境图,可以先获取图像坐标系与世界坐标系之间的坐标转换参数。
在一可选的实施方式中,相机标定中包含相机内参数和相机外参数,相机内参数是指与相机自身特性相关的参数,包括但不限于焦距、像素大小等,用于确定图像坐标系和相机坐标系之间的转换关系,相机坐标系通常是以相机的位置为原点建立的三维坐标系;相机外参数用于描述相机坐标系与世界坐标系之间的转换关系。因此,可以先确定每张特征图所属的相机,并获取该相机的相机内参数和相机外参数,从而根据相机内参数和相机外参数确定该特征图的图像坐标系和世界坐标系之间的坐标转换参数。其中,特征图所属的相机是指拍摄特征图对应的环境图的相机。
步骤S1420,对每张特征图中包含的每个像素点的深度进行检测,得到每个像素点的深度值。
像素点的深度用于描述图像中的像素点与相机之间的距离。例如,参见图15A所示,环境图是相机1510对环境中包含的、与相机1510之间的距离不同的多个物体进行拍摄得到的图像,对该环境图进行特征提取得到的特征图中,不同像素点与相机1510之间的距离不完全相同,因此,不同像素点的深度不完全相同。
为了将二维的图像转换至三维中,因此,可以对每张特征图进行深度检测,得到该特征图中每个像素点的深度值。
在一可选的实施方式中,还可以预先设置多个指定深度,并对每个像素点的深度进行检测,以从多个指定深度中选择一个指定深度作为该像素点的深度值。例如,承接上例,参见图15B所示,假设包含59个指定深度,在得到Tensor([B,C=512,H / 16,W / 16])之后,可以将Tensor([B,C=512,H / 16,W / 16])输入至卷积模块并进行深度检测,得到B张宽为H/32,高为W/32,图像数据维度为(64+59)的特征图Tensor([B,C=123,H / 16,W /16]),其中,123维度的图像数据中包含59维度的深度数据,以及64维度的颜色、亮度、透明度等除深度数据之外的图像数据。
步骤S1430,根据坐标转换参数、每个像素点的深度值,以及每个像素点在图像坐标系中的坐标,计算每个像素点在世界坐标系中对应的世界坐标。
世界坐标是指在世界坐标系中的坐标。
根据图像坐标系与世界坐标系之间的转换参数、特征图中每个像素点的深度值、以及每个像素点在图像坐标系中的坐标,可以计算出每个像素点的世界坐标。
在一可选的示例中,可以通过以下公式计算每个像素点的世界坐标:
(bx,by,bz) = R×f_inv×(depth×pix_x,depth×pix_y,1)
其中,(bx,by,bz)是指任一特征图中的任一像素点在世界坐标系中的世界坐标,R是该特征图所属相机的外参数矩阵,用于描述该特征图所属相机的相机坐标系与世界坐标系之间的转换参数;f_inv是该特征图所属相机的内参数矩阵f的逆矩阵,f用于描述该特征图所属相机的相机坐标系转换为该特征图所属的图像坐标系的转换关系;depth是该像素点的深度值;pix_x、pix_y分别是该像素点在图像坐标系中的x轴和y轴上的坐标。
步骤S1440,根据每个像素点对应的世界坐标,将每个像素点映射至世界坐标系中,得到全景环境图。
将多张特征图包含的每个像素点映射至其对应的世界坐标,从而将多张特征图进行融合,得到全景环境图。
需要说明的是,图14所示的步骤S210、步骤S230-步骤S240的具体实现细节可以参照图2所示的步骤S210、步骤S230-步骤S240,图14所示的步骤S1010的具体实现细节可以参照图10所示的步骤S1010,此处不再赘述。
在图14所示的实施例中,对每张特征图中包含的每个像素点的深度进行检测,得到每个像素点的深度值,从而根据该特征图对应的图像坐标系与全景环境图对应的世界坐标系之间的坐标转换参数、每个像素点的深度值,以及每个像素点在图像坐标系中的坐标,计算每个像素点在世界坐标系中对应的世界坐标,以根据每个像素点对应的世界坐标,将每个像素点映射至世界坐标系中,得到全景环境图,提升了映射准确性,进而提升了全景环境图的质量。
在一示例性实施例中,参见图16,图16是本申请的另一示例性实施例示出的图像处理方法的流程图。该方法可以应用于图1所示的实施环境,其可以由图1所示的实施环境中的终端设备110执行,也可以由图1所示的实施环境中的服务器120执行,或者,也可以由图1所示的实施环境中的终端设备110和服务器120共同执行。
如图16所示,该方法包括步骤S210、步骤S1010、步骤S1410-步骤S1430、步骤S1610-步骤S1620,以及步骤S230-步骤S240,其中,步骤S1610-步骤S1620的详细介绍如下:
步骤S1610,根据每个像素点对应的世界坐标,查找每个像素点在全景环境图中所对应的目标像素点。
全景环境图中包含多个像素点,每个像素点有对应的世界坐标。
目标像素点是指特征图中的像素点对应的全景环境图中的像素点,也就是说,特征图中像素点对应的世界坐标与其对应的目标像素点的世界坐标相匹配。
在一可选的实施方式中,若世界坐标系是以移动对象的位置为中心创建的三维坐标系,全景深度图在世界坐标系中x方向上的覆盖范围为J1米~J1米,y方向上的覆盖范围-J2米~J2米,z方向上的覆盖范围为-J3米~J3米,分辨率为j米,也就是说,全景环境图中的每个像素点对应于三维空间中的j米×j米×j米的空间,在此条件下,可以根据每个像素点对应的世界坐标、J1、J2、J3以及j确定该像素点在全景环境图中对应的目标像素点。例如,假设J3为0(即,全景环境图为二维图像),J1、J2均为50米,j为0.5米,也就是说,全景环境图中x方向上一共有200个像素点,y方向上有200个像素点,则可以通过以下方式确定每个像素点对应的目标像素点:
Xgrid = (bx - (-50))/ 0.5
Ygrid = (by - (-50))/ 0.5
其中,bx、by分别为特征图中任一像素点对应的世界坐标系中x、y方向上的坐标,该像素点对应的目标像素点为全景环境图中的x方向上的第Xgrid、y方向上的第Ygrid个像素点,例如,假设特征图中某像素点对应的世界坐标为{x=50米,y=-50米},则其对应的目标像素点为全景环境图中x方向上的第100个、y方向上的第-100个像素点。
步骤S1620,若多张特征图中存在多个像素点对应于同一目标像素点,则对多个像素点的像素参数进行融合,得到同一目标像素点的像素参数。
像素点的像素参数用于描述像素点的颜色、亮度、透明度等特征。
在投影的过程中,会存在特征图中包含的多个像素点投影至世界坐标系中的同一位置,即,特征图中包含多个像素点对应于同一目标像素点,其中,对应于同一目标像素点的多个像素点可以属于同一特征图,例如,垂直于地面的电线杆,在投影过程中会投影至同一位置;或者,对应于同一目标像素点的多个像素点可以属于不同特征图,例如,多张特征图的拍摄区域重叠,则会导致其投影至同一位置。
因此,在同一目标像素点对应于特征图中多个像素点的条件下,可以对多个像素点的像素参数进行融合,得到该目标像素点的像素参数。可选的,可以对这多个像素点的像素参数进行池化,得到该目标像素点的像素参数,其中,可以通过池化神经网络对这多个像素点的像素参数进行池化。在池化过程中,可以计算这多个像素点的像素参数的和、平均值、最大值、最小值等中的一个,将计算得到的值作为该目标像素点的像素参数。在一可选的示例中,可以通过以下公式进行池化:
sum-pooling = sum(k1+k2+…+kn)
其中,sum-pooling是指目标像素点的像素参数,sum()是指求和运算,k1、k2、kn是指特征图中对应于该目标像素点的多个像素点分别对应的像素参数。
可选的,若目标像素点只对应于多张特征图中的一个像素点,则可以将特征图中的该像素点的像素参数作为该目标像素点的像素参数。
需要说明的是,图16所示的步骤S210、步骤S230-步骤S240的具体实现细节可以参照图2所示的步骤S210、步骤S230-步骤S240,图16所示的步骤S1010的具体实现细节可以参照图10所示的步骤S1010,图16所示的步骤S1410-步骤S1430的具体实现细节可以参照图14所示的步骤S1410-步骤S1430,此处不再赘述。
在图16所示的实施例中,若多张特征图中存在多个像素点对应于全景环境图中的同一目标像素点,则对多个像素点的像素参数进行融合,得到该目标像素点的像素参数,从而提升全景环境图的准确度和质量。
在一示例性实施例中,参见图17,图17是本申请的另一示例性实施例示出的图像处理方法的流程图。该方法可以应用于图1所示的实施环境,其可以由图1所示的实施环境中的终端设备110执行,也可以由图1所示的实施环境中的服务器120执行,或者,也可以由图1所示的实施环境中的终端设备110和服务器120共同执行。
如图17所示,该方法包括步骤S210、步骤S1010、步骤S1410-步骤S1430、步骤S1710-步骤S1740,以及步骤S230-步骤S240,其中,步骤S1710-步骤S1740的详细介绍如下:
步骤S1710,根据多个指定深度对每个像素点的像素参数进行检测,得到每个像素点在多个指定深度分别对应的像素参数。
多个指定深度为预先设置的多个深度,根据多个指定深度对特征图中的每个像素点的像素参数进行检测,从而得到每个像素点在多个指定深度分别对应的像素参数,同一指定深度对应的特征图包含多个像素点的像素参数则构成了该特征图在该指定深度的特征子图。例如,假设多个指定深度包含1米、2米、3米……59米,则针对每张特征图进行检测,可以得到任一像素点的像素参数pv1、pv2、pv3……pv59,其中,pv1为该像素点在1米对应的像素参数,pv2包含该像素点在2米对应的像素参数……pv59包含该像素点在59米对应的像素参数;特征图包含的多个像素点分别对应的pv1可以构成该特征图在1米处的特征子图,特征图包含的多个像素点分别对应的pv2可以构成该特征图在2米处的特征子图……特征图包含的多个像素点分别对应的pv59可以构成该特征图在59米处的特征子图。
步骤S1720,根据多个指定深度对每个像素点的深度进行检测,得到每个像素点的深度概率分布;其中,深度概率分布中包含每个像素点的深度属于每个指定深度的概率。
根据多个指定深度对特征图中的每个像素点的深度进行检测,得到每个像素点的深度概率分布,其中,深度概率分布中包含每个像素点的深度属于每个指定深度的概,例如,承接上例,在多个指定深度包含1米、2米、3米……59米的条件下,可以得到任一像素点的深度为1米的概率alpha1,深度为2米的概率alpha2……以及深度为59米的概率alpha59。
步骤S1730,根据每个像素点的深度概率分布,对每个像素点在多个指定深度分别对应的像素参数进行融合,得到每个像素点的融合像素参数。
根据每个像素点的深度概率分布,对该像素点在多个指定深度分别对应的像素参数进行加权求和,可以得到该像素点的融合像素参数,可选的,可以根据以下公式计算融合像素参数:
PV = sum(alpha1×pv1+alpha2×pv2+…+alpha59×pv59)
其中,PV为特征图中任一像素点的融合特征参数,alpha1、alpha2……alpha59分别为该像素点在1米、2米……59米处的像素参数;pv1、pv2……pv59分别为该像素点的深度是1米的概率、是2米的概率……是59米的概率。
可选的,在计算融合像素参数之前,还可以对每个像素点的深度概率分布进行归一化,使得每个像素点的深度概率分布中包含的多个概率的和为1,例如,可以基于softmax函数进行归一化处理。
步骤S1740,根据每个像素点对应的世界坐标,查找每个像素点在全景环境图中所对应的目标像素点,并根据每个像素点的融合像素参数更新目标像素点的像素参数。
在得到特征图中每个像素点的融合像素参数后,可以根据该像素点对应的世界坐标,确定其在全景环境图中对应的目标像素点,并根据该像素点的融合像素点参数更新该目标像素点的像素参数。
可选的,若任一目标像素点对应于特征图中的一个像素点,则可以将该像素点的融合像素参数作为该目标像素点的像素参数,若任一目标像素点对应于特征图中的多个像素点,则可以对这多个像素点的融合像素参数进行融合,得到该目标像素点的像素参数,具体融合方式与前述步骤S1620类似,此处不再赘述。
需要说明的是,图17所示的步骤S210、步骤S230-步骤S240的具体实现细节可以参照图2所示的步骤S210、步骤S230-步骤S240,图17所示的步骤S1010的具体实现细节可以参照图10所示的步骤S1010,图17所示的步骤S1410-步骤S1430的具体实现细节可以参照图14所示的步骤S1410-步骤S1430,此处不再赘述。
在图17所示的实施例中,根据每个像素点的深度概率分布,对每个像素点在多个指定深度分别对应的像素参数进行融合,得到每个像素点的融合像素参数,再根据每个像素点对应的世界坐标,查找每个像素点在全景环境图中所对应的目标像素点,并根据每个像素点的融合像素参数更新目标像素点的像素参数,可以提升目标像素点的像素参数的准确度,进而提升全景环境图的质量。
在一示例性实施例中,参见图18,图18是本申请的另一示例性实施例示出的图像处理方法的流程图。该方法可以应用于图1所示的实施环境,其可以由图1所示的实施环境中的终端设备110执行,也可以由图1所示的实施环境中的服务器120执行,或者,也可以由图1所示的实施环境中的终端设备110和服务器120共同执行。
如图18所示,在世界坐标系是以移动对象所处的位置为原点建立的三维坐标系的条件下,该方法包括步骤S210、步骤S1010、步骤S1410-步骤S1430、步骤S1810-步骤S1830,以及步骤S230-步骤S240,其中,步骤S1810-步骤S1830的详细介绍如下:
步骤S1810,根据每个像素点对应的世界坐标,计算每个像素点与移动对象之间的水平距离。
水平距离是指在水平面上的距离。
世界坐标系的原点可以是移动对象所处的位置,在此条件下,根据每个像素点对应的世界坐标,可以计算出该像素点与移动对象之间的水平距离。
步骤S1820,若水平距离处于设定距离区间,则将每个像素点映射至世界坐标系中。
设定距离区间是指预先设定的、全景环境图的覆盖范围,例如,可以设置为移动对象的横向-50m~50m,纵向-50m~50m,也就是说,全景环境图是包含移动对象的横向-50m~50m,纵向-50m~50m范围内的环境图。
若任一像素点与移动对象之间的水平距离处于设定距离区域,则表明该像素点与移动对象之间的距离较近,拍摄清晰度较高,对自动驾驶等的帮助较大,因此,可以将该像素点映射至世界坐标系中。
步骤S1830,若水平距离没有处于设定距离区间,则丢弃每个像素点。
若任一像素点与移动对象之间的水平距离没有处于设定距离区域,则表明该像素点与移动对象之间的距离较远,拍摄清晰度较低,对自动驾驶等的帮助较小,因此,可以丢弃该像素点,即,不将该像素点投影至世界坐标系中。
需要说明的是,图18所示的步骤S210、步骤S230-步骤S240的具体实现细节可以参照图2所示的步骤S210、步骤S230-步骤S240,图18所示的步骤S1010的具体实现细节可以参照图10所示的步骤S1010,图18所示的步骤S1410-步骤S1430的具体实现细节可以参照图14所示的步骤S1410-步骤S1430,此处不再赘述。
在图18所示的实施例中,将与移动对象之间的水平距离没有处于设定距离区间的像素点进行丢弃,从而提升了全景环境图的清晰度的准确度。
在一示例性实施例中,参见图19,图19是本申请的另一示例性实施例示出的图像处理方法的流程图。该方法可以应用于图1所示的实施环境,其可以由图1所示的实施环境中的终端设备110执行,也可以由图1所示的实施环境中的服务器120执行,或者,也可以由图1所示的实施环境中的终端设备110和服务器120共同执行。
如图19所示,在世界坐标系是以移动对象所处的位置为原点建立的三维坐标系的条件下,该方法包括步骤S210、步骤S1010、步骤S1410-步骤S1430、步骤S1910-步骤S1930,以及步骤S230-步骤S240,其中,步骤S1910-步骤S1930的详细介绍如下:
步骤S1910,根据每个像素点对应的世界坐标,计算每个像素点与移动对象之间的高度差。
高度差是指在高度方向上的距离。
在世界坐标系的原点为移动对象所处的位置的条件下,可以根据每个像素点对应的世界坐标,计算出该像素点的高度与移动对象的高度之间的差距,即,高度差。
步骤S1920,若高度差小于或等于设定高度阈值,则将每个像素点映射至世界坐标系中。
设定高度阈值是预先设定的、全景环境度的高度范围,其具体取值可以根据实际需要灵活设置,例如,可以设置为0,也就是说,只保留与移动对象处于同一水平面的像素点。
若高度差小于或等于设定高度阈值,则表明该像素点与移动对象之间的距离较小,对自动驾驶等的帮助较大,因此,可以将该像素点映射至世界坐标系中。
步骤S1930,若高度差大于设定高度阈值,则丢弃每个像素点。
若高度差大于设定高度阈值,则表明该像素点与移动对象之间的距离较大,对自动驾驶等的帮助较小,例如,若移动对象为车辆,则天空中的云、鸟等对车辆的行驶影响较小,因此,可以丢弃该像素点,即,不将该像素点投影至世界坐标系中。
需要说明的是,图19所示的步骤S210、步骤S230-步骤S240的具体实现细节可以参照图2所示的步骤S210、步骤S230-步骤S240,图19所示的步骤S1010的具体实现细节可以参照图10所示的步骤S1010,图19所示的步骤S1410-步骤S1430的具体实现细节可以参照图14所示的步骤S1410-步骤S1430,此处不再赘述。
在图19所示的实施例中,将与移动对象之间的高度差大于设定高度阈值的像素点进行丢弃,从而滤除对移动对象影响较低的像素点,从而降低数据处理量,并提升了目标检测准确度。
在一示例性实施例中,以移动对象为部署有多个视角不同的相机的目标车辆、全景环境图为鸟瞰图、指定时刻为当前时刻为例进行说明,参见图20所示,图20为以示例性实施例提供的图像处理方法的流程图,图像处理方法可以由图1所示的实施环境中的终端设备110执行,也可以由图1所示的实施环境中的服务器120执行,或者,也可以由图1所示的实施环境中的终端设备110和服务器120共同执行。
如图20所示,图像处理方法包括步骤S2001-步骤S2008,详细介绍如下:
步骤S2001,通过目标车辆上部署的多个视角不同的相机分别对当前时刻目标车辆所处的环境进行拍摄,得到多张环境图。
其中,计算每种类型对象的采样概率的具体方式可以参见前述实施例的记载,此处不再赘述。
步骤S2002,采用不同的卷积参数分别对每张环境图进行卷积,得到每张环境图对应的多张初始特征图,并对每张环境图对应的多张初始特征图进行融合,得到每张环境图对应的特征图。
其中,每张环境图对应的多张初始特征图所对应的下采样倍数、像素参数的维度不同,从而使得这多张初始特征图对应的尺寸、像素参数的维度均不同。
对每张环境图对应的多张初始特征图进行融合,得到每张环境图对应的特征图的具体方式可以参见前述实施例的记载,此处不再赘述。
步骤S2003,对每张特征图进行深度检测,得到每张特征图中每个像素点的深度值和融合像素参数。
其中,得到多张特征图中每个像素点的深度值和融合像素参数的具体方式可以参见前述实施例的记载,此处不再赘述。
步骤S2004,根据每张特征图对应的每个像素点的深度值和融合像素参数,生成每张特征图对应的视椎点云。
在生成每张特征图对应的视椎点云的过程中,获取每张特征图对应的图像坐标系与该特征图所属相机的相机坐标系之间的转换参数(即,相机内参数),并根据每张特征图中每个像素点的深度值、在该特征图对应的图像坐标系中的坐标以及相机内参数计算该像素点在相机坐标系中的相机坐标,并根据该像素点的融合像素参数以及该像素点的相机坐标将该像素点映射至相机坐标系中,从而得到该特征图对应的视椎点云。
步骤S2005,将每张特征图对应的视椎点云中的每个像素点投影至鸟瞰图对应的世界坐标系中,得到当前时刻的鸟瞰图。
其中,可以根据每张特征图对应的视椎点云中的每个像素点的相机坐标以及该特征图所属相机的相机坐标系与鸟瞰图对应的世界坐标系之间的转换参数(即,相机外参数),计算该像素点在世界坐标系中的世界坐标,并根据该像素点的世界坐标确定其在鸟瞰图中对应的目标像素点,并根据该像素点的融合像素参数确定该目标像素点的像素参数,从而得到当前时刻的鸟瞰图。
其中,若鸟瞰图中的任一目标像素点对应于特征图中的多个像素点,则对这多个像素点分别对应的融合像素参数进行相加处理,得到该目标像素点的像素参数;若鸟瞰图中的任一目标像素点对应于特征图中的一个像素点,则将特征图中该像素点的融合像素参数作为该目标像素点的像素参数。
为了避免鸟瞰图的覆盖范围过大,导致鸟瞰图不清晰的情况,在将特征图中的像素点投影至世界坐标系的过程中,可以将特征图中与目标车辆之间的水平距离大于50m、且所对应世界坐标系中的z坐标不为0(即,与目标车辆不处于同一高度)的像素点进行丢弃。
步骤S2006,根据历史时刻的鸟瞰图、目标车辆在历史时刻的移动速度和移动方向对当前时刻的鸟瞰图进行修正。
其中,具体修正方式可以参见前述实施例中的记载,此处不再赘述。
步骤S2007,将当前时刻的鸟瞰图中每个像素点的像素参数与历史时刻的鸟瞰图中对应像素点的像素参数进行拼接,得到当前时刻的融合鸟瞰图。
其中,具体拼接方式可以参见前述实施例的记载。
步骤S2008,根据当前时刻的融合鸟瞰图、当前时刻拍摄到的多张环境图进行目标检测,得到目标检测结果。
其中,检测的目标可以是指定类型的障碍物,例如,车辆等。
可选的,可以通过三维目标检测模型从当前时刻的融合鸟瞰图、当前时刻拍摄到的多张环境图中检测到当前时刻目标车辆所处环境中的障碍物。
在一可选的实施方式中,步骤S2002-步骤S2008可以通过三维目标检测模型来实现,该三维目标检测模型是基于人工智能技术创建的、用于检测三维目标的模型。其中,人工智能(Artificial Intelligence, AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习、自动驾驶、智慧交通等几大方向。
其中,参见图21所示,三维目标检测模型包含多相机卷积神经网络、视角变换网络、多相机池化模块、时序对齐模块、三维目标检测模块,其中,将当前时刻多相机拍摄到的多张环境图输入至三维目标检测模型中,多相机卷积神经网络对每张环境图进行卷积,得到每张环境图对应的特征图;视角变换网络中可以包含深度预测模块、视椎点云生成模块、鸟瞰图生成模块,其中,深度预测模块对每张环境图进行深度检测,得到每张特征图中每个像素点的深度值和融合像素参数,视椎点云生成模块根据每张特征图中每个像素点的深度值和融合像素参数生成每张特征图对应的视椎点云,鸟瞰图生成模块根据多张特征图分别对应的视椎点云生成当前时刻的鸟瞰图;在多张特征图中的多个像素点对应于鸟瞰图中的同一目标像素点的条件下,多相机池化模块将这多个像素点分别的融合像素参数进行池化,得到该目标像素点的像素参数;时序对齐模块用于基于目标车辆的移动参数以及历史时刻的鸟瞰图对当前时刻的鸟瞰图进行修正,并将修正后的鸟瞰图的像素参数与当前时刻的鸟瞰图的像素参数进行拼接,得到当前时刻的融合鸟瞰图;三维目标检测模块可以基于卷积核为1×1的卷积模块来构建,用于根据当前时刻的融合鸟瞰图预测目标车辆在当前时刻所处环境中的障碍物的位置、尺寸、方向角、速度等中的至少一种,得到检测结果。
需要说明的是,图20中的步骤S2001-步骤S2008的具体实现方式已在前述实施例中详细介绍,此处不再赘述。
基于图20提供的图像处理方法,融合鸟瞰图中融合了指定时刻不同视角的环境图、以及历史时刻的鸟瞰图,基于融合鸟瞰图进行目标检测,可以避免目标分裂、目标闪现、检测模型标定敏感等问题,提升检测准确度。
参见图22,图22是本申请的一示例性实施例示出的图像处理装置的框图。如图22所示,该装置包括:
获取模块2201,配置为获取针对移动对象在指定时刻所处的环境拍摄得到的多张环境图;其中,多张环境图对应的视角不完全相同;融合模块2202,配置为对多张环境图进行融合,得到移动对象在指定时刻的全景环境图;查找模块2203,配置为查找移动对象在历史时刻的历史全景环境图,以及移动对象在历史时刻与指定时刻之间的移动信息;其中,历史时刻早于指定时刻;修正模块2204,配置为根据移动信息以及历史全景环境图,对全景环境图进行修正。
在一示例性实施例中,基于前述方案,该装置还包括检测模块,配置为:对修正后的全景环境图和历史全景环境图中位于同一位置的像素点的像素参数进行拼接,得到融合全景环境图;根据融合全景环境图检测移动对象在指定时刻所处的环境中包含的障碍物,得到障碍物检测结果;其中,障碍物检测结果中包含障碍物的位置、尺寸、方向角、移动速度中的至少一种。
在一示例性实施例中,基于前述方案,在移动信息包含移动对象在历史时刻与指定时刻之间的移动速度和移动方向的条件下,修正模块2204具体配置为:根据移动速度、以及历史时刻与指定时刻之间的时差,计算移动对象在历史时刻与指定时刻之间的移动距离;根据移动距离和移动方向,查找历史全景环境图与全景环境图的重叠区域;根据历史全景环境图中处于重叠区域内的第一图像数据,对全景环境图中处于重叠区域内的第二图像数据进行修正。
在一示例性实施例中,基于前述方案,修正模块2204具体配置为:根据历史全景环境图中重叠区域与移动对象之间的距离计算第一图像数据对应的权重,并根据全景环境图中重叠区域与移动对象之间的距离计算第二图像数据对应的权重;其中,权重与距离负相关;根据计算出的权重对第一图像数据和第二图像数据进行融合,得到修正后的第二图像数据。
在一示例性实施例中,基于前述方案,融合模块2202具体配置为:对多张环境图分别进行特征提取,得到多张特征图;其中,多张特征图中包含多张环境图分别对应的特征图;对多张特征图进行融合,得到全景环境图。
在一示例性实施例中,基于前述方案,融合模块2202具体配置为:按照多种下采样参数分别对每张环境图进行下采样处理,得到每张环境图对应的多张初始特征图;对多张初始特征图进行融合,得到每张环境图对应的特征图。
在一示例性实施例中,基于前述方案,融合模块2202具体配置为:对每张初始特征图中包含的图像数据进行降维处理,得到降维处理后的多张初始特征图;其中,降维处理后的多张初始特征图所包含的图像数据的维度相匹配;从降维处理后的多张初始特征图中筛选出尺寸最大的目标初始特征图以及除目标初始特征图之外的其他初始特征图;对其他初始特征图进行上采样处理,得到所对应的尺寸与目标初始特征图的尺寸相匹配的其他初始特征图;对目标初始特征图和上采样处理后的其他初始特征图分别包含的图像数据进行融合,得到每张环境图对应的特征图。
在一示例性实施例中,基于前述方案,融合模块2202具体配置为:获取每张特征图对应的图像坐标系与全景环境图对应的世界坐标系之间的坐标转换参数;对每张特征图中包含的每个像素点的深度进行检测,得到每个像素点的深度值;根据坐标转换参数、每个像素点的深度值,以及每个像素点在图像坐标系中的坐标,计算每个像素点在世界坐标系中对应的世界坐标;根据每个像素点对应的世界坐标,将每个像素点映射至世界坐标系中,得到全景环境图。
在一示例性实施例中,基于前述方案,融合模块2202具体配置为:根据每个像素点对应的世界坐标,查找每个像素点在全景环境图中所对应的目标像素点;若多张特征图中存在多个像素点对应于同一目标像素点,则对多个像素点的像素参数进行融合,得到同一目标像素点的像素参数。
在一示例性实施例中,基于前述方案,融合模块2202具体配置为:根据多个指定深度对每个像素点的像素参数进行检测,得到每个像素点在多个指定深度分别对应的像素参数;根据多个指定深度对每个像素点的深度进行检测,得到每个像素点的深度概率分布;其中,深度概率分布中包含每个像素点的深度属于每个指定深度的概率;根据每个像素点的深度概率分布,对每个像素点在多个指定深度分别对应的像素参数进行融合,得到每个像素点的融合像素参数;根据每个像素点对应的世界坐标,查找每个像素点在全景环境图中所对应的目标像素点,并根据每个像素点的融合像素参数更新目标像素点的像素参数。
在一示例性实施例中,基于前述方案,在世界坐标系是以移动对象所处的位置为原点建立的三维坐标系的条件下,融合模块2202具体配置为:根据每个像素点对应的世界坐标,计算每个像素点与移动对象之间的水平距离;若水平距离处于设定距离区间,则将每个像素点映射至世界坐标系中;若水平距离没有处于设定距离区间,则丢弃每个像素点。
在一示例性实施例中,基于前述方案,在世界坐标系是以移动对象所处的位置为原点建立的三维坐标系的条件下,融合模块2202具体配置为:根据每个像素点对应的世界坐标,计算每个像素点与移动对象之间的高度差;若高度差小于或等于设定高度阈值,则将每个像素点映射至世界坐标系中;若高度差大于设定高度阈值,则丢弃每个像素点。
需要说明的是,上述实施例所提供的图像处理装置与上述实施例所提供的图像处理方法属于同一构思,其中各个模块和单元执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。
本申请的实施例还提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个计算机程序,当一个或多个计算机程序被一个或多个处理器执行时,使得电子设备实现上述各个实施例中提供的图像处理方法。
图23示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
需要说明的是,图23示出的电子设备的计算机系统2300仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图23所示,计算机系统2300包括中央处理单元(Central Processing Unit,CPU)2301,其可以根据存储在只读存储器(Read-Only Memory,ROM)2302中的计算机程序或者从储存部分2308加载到随机访问存储器(Random Access Memory,RAM)2303中的计算机程序而执行各种适当的动作和处理,例如执行上述实施例中的图像处理方法。在RAM 2303中,还存储有系统操作所需的各种计算机程序和数据。CPU 2301、ROM 2302以及RAM 2303通过总线2304彼此相连。输入/输出(Input /Output,I/O)接口2303也连接至总线2304。
在一些实施例中,以下部件连接至I/O接口2303:包括键盘、鼠标等的输入部分2306;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid CrystalDisplay,LCD)等以及扬声器等的输出部分2307;包括硬盘等的储存部分2308;以及包括诸如LAN(Local Area Network,局域网)卡、调制解调器等的网络接口卡的通信部分2309。通信部分2309经由诸如因特网的网络执行通信处理。驱动器2310也根据需要连接至I/O接口2303。可拆卸介质2311,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器2310上,以便于从其上读出的计算机程序根据需要被安装入储存部分2308。
特别地,根据本申请的实施例,实现图像处理方法的计算机程序可以承载在计算机可读介质上,该计算机程序可以通过通信部分2309从网络上被下载和安装,和/或从可拆卸介质2311被安装。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储计算机程序的有形介质,该计算机程序可以被指令执行系统、装置或者器件使用或者与其结合使用。计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序,这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读介质包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机程序的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
本申请的另一方面还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被电子设备的处理器执行时,使电子设备实现如前的图像处理方法。该计算机可读存储介质可以是上述实施例中描述的电子设备中所包含的,也可以是单独存在,而未装配入该电子设备中。
本申请的另一方面还提供了一种计算机程序产品,该计算机程序产品包括计算机程序,计算机程序被处理器执行时实现上述各个实施例中提供的图像处理方法。其中,该计算机程序可以存储在计算机可读存储介质中。
上述内容,仅为本申请的较佳示例性实施例,并非用于限制本申请的实施方案,本领域普通技术人员根据本申请的主要构思和精神,可以十分方便地进行相应的变通或修改,故本申请的保护范围应以权利要求书所要求的保护范围为准。
Claims (16)
1.一种图像处理方法,其特征在于,所述方法包括:
获取针对移动对象在指定时刻所处的环境拍摄得到的多张环境图;其中,所述多张环境图对应的视角不完全相同;
对所述多张环境图进行融合,得到所述移动对象在所述指定时刻的全景环境图;
查找所述移动对象在历史时刻的历史全景环境图,以及所述移动对象在所述历史时刻与所述指定时刻之间的移动信息;其中,所述历史时刻早于所述指定时刻;
根据所述移动信息以及所述历史全景环境图,对所述全景环境图进行修正。
2.如权利要求1所述的方法,其特征在于,在所述根据所述移动信息以及所述历史全景环境图,对所述全景环境图进行修正之后,所述方法还包括:
对修正后的全景环境图和所述历史全景环境图中位于同一位置的像素点的像素参数进行拼接,得到融合全景环境图;
根据所述融合全景环境图检测所述移动对象在所述指定时刻所处的环境中包含的障碍物,得到障碍物检测结果;其中,所述障碍物检测结果中包含障碍物的位置、尺寸、方向角、移动速度中的至少一种。
3.如权利要求1所述的方法,其特征在于,所述移动信息包含所述移动对象在所述历史时刻与所述指定时刻之间的移动速度和移动方向;所述根据所述移动信息以及所述历史全景环境图,对所述全景环境图进行修正,包括:
根据所述移动速度、以及所述历史时刻与所述指定时刻之间的时差,计算所述移动对象在所述历史时刻与所述指定时刻之间的移动距离;
根据所述移动距离和所述移动方向,查找所述历史全景环境图与所述全景环境图的重叠区域;
根据所述历史全景环境图中处于所述重叠区域内的第一图像数据,对所述全景环境图中处于所述重叠区域内的第二图像数据进行修正。
4.如权利要求3所述的方法,其特征在于,所述根据所述历史全景环境图中所述重叠区域包含的第一图像数据,对所述全景环境图中所述重叠区域包含的第二图像数据进行修正,包括:
根据所述历史全景环境图中所述重叠区域与所述移动对象之间的距离计算所述第一图像数据对应的权重,并根据所述全景环境图中所述重叠区域与所述移动对象之间的距离计算所述第二图像数据对应的权重;其中,权重与距离负相关;
根据计算出的权重对所述第一图像数据和所述第二图像数据进行融合,得到修正后的第二图像数据。
5.权利要求1所述的方法,其特征在于,所述对所述多张环境图进行融合,得到所述移动对象在所述指定时刻的全景环境图,包括:
对所述多张环境图分别进行特征提取,得到多张特征图;其中,所述多张特征图中包含所述多张环境图分别对应的特征图;
对所述多张特征图进行融合,得到所述全景环境图。
6.如权利要求5所述的方法,其特征在于,所述对所述多张环境图分别进行特征提取,得到多张特征图,包括:
按照多种下采样参数分别对每张环境图进行下采样处理,得到所述每张环境图对应的多张初始特征图;
对所述多张初始特征图进行融合,得到所述每张环境图对应的特征图。
7.如权利要求6所述的方法,其特征在于,所述对所述多张初始特征图进行融合,得到所述每张环境图对应的特征图,包括:
对每张初始特征图中包含的图像数据进行降维处理,得到降维处理后的多张初始特征图;其中,所述降维处理后的多张初始特征图所包含的图像数据的维度相匹配;
从降维处理后的多张初始特征图中筛选出尺寸最大的目标初始特征图以及除所述目标初始特征图之外的其他初始特征图;
对所述其他初始特征图进行上采样处理,得到所对应的尺寸与所述目标初始特征图的尺寸相匹配的其他初始特征图;
对所述目标初始特征图和上采样处理后的其他初始特征图分别包含的图像数据进行融合,得到所述每张环境图对应的特征图。
8.如权利要求5所述的方法,其特征在于,所述对所述多张特征图进行融合,得到所述全景环境图,包括:
获取每张特征图对应的图像坐标系与所述全景环境图对应的世界坐标系之间的坐标转换参数;
对所述每张特征图中包含的每个像素点的深度进行检测,得到所述每个像素点的深度值;
根据所述坐标转换参数、所述每个像素点的深度值,以及所述每个像素点在所述图像坐标系中的坐标,计算所述每个像素点在所述世界坐标系中对应的世界坐标;
根据所述每个像素点对应的世界坐标,将所述每个像素点映射至所述世界坐标系中,得到所述全景环境图。
9.如权利要求8所述的方法,其特征在于,所述根据所述每个像素点对应的世界坐标,将所述每个像素点映射至所述世界坐标系中,得到所述全景环境图,包括:
根据所述每个像素点对应的世界坐标,查找所述每个像素点在所述全景环境图中所对应的目标像素点;
若所述多张特征图中存在多个像素点对应于同一目标像素点,则对所述多个像素点的像素参数进行融合,得到所述同一目标像素点的像素参数。
10.如权利要求8所述的方法,其特征在于,所述根据所述每个像素点对应的世界坐标,将所述每个像素点映射至所述世界坐标系中,得到所述全景环境图,包括:
根据多个指定深度对所述每个像素点的像素参数进行检测,得到所述每个像素点在所述多个指定深度分别对应的像素参数;
根据所述多个指定深度对所述每个像素点的深度进行检测,得到所述每个像素点的深度概率分布;其中,所述深度概率分布中包含所述每个像素点的深度属于每个指定深度的概率;
根据所述每个像素点的深度概率分布,对所述每个像素点在所述多个指定深度分别对应的像素参数进行融合,得到所述每个像素点的融合像素参数;
根据所述每个像素点对应的世界坐标,查找所述每个像素点在所述全景环境图中所对应的目标像素点,并根据所述每个像素点的融合像素参数更新所述目标像素点的像素参数。
11.如权利要求8所述的方法,其特征在于,所述世界坐标系是以所述移动对象所处的位置为原点建立的三维坐标系;所述根据所述每个像素点对应的世界坐标,将所述每个像素点映射至所述世界坐标系中,得到所述全景环境图,包括:
根据所述每个像素点对应的世界坐标,计算所述每个像素点与所述移动对象之间的水平距离;
若所述水平距离处于设定距离区间,则将所述每个像素点映射至所述世界坐标系中;
若所述水平距离没有处于所述设定距离区间,则丢弃所述每个像素点。
12.如权利要求8所述的方法,其特征在于,所述世界坐标系是以所述移动对象所处的位置为原点建立的三维坐标系;所述根据所述每个像素点对应的世界坐标,将所述每个像素点映射至所述世界坐标系中,得到所述全景环境图,包括:
根据所述每个像素点对应的世界坐标,计算所述每个像素点与所述移动对象之间的高度差;
若所述高度差小于或等于设定高度阈值,则将所述每个像素点映射至所述世界坐标系中;
若所述高度差大于所述设定高度阈值,则丢弃所述每个像素点。
13.一种图像处理装置,其特征在于,所述装置包括:
获取模块,配置为获取针对移动对象在指定时刻所处的环境拍摄得到的多张环境图;其中,所述多张环境图对应的视角不完全相同;
融合模块,配置为对所述多张环境图进行融合,得到所述移动对象在所述指定时刻的全景环境图;
查找模块,配置为查找所述移动对象在历史时刻的历史全景环境图,以及所述移动对象在所述历史时刻与所述指定时刻之间的移动信息;其中,所述历史时刻早于所述指定时刻;
修正模块,配置为根据所述移动信息以及所述历史全景环境图,对所述全景环境图进行修正。
14.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个计算机程序,当所述一个或多个计算机程序被所述一个或多个处理器执行时,使得所述电子设备实现权利要求1-12中的任一项所述的图像处理方法。
15.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,当所述计算机程序被电子设备的处理器执行时,使所述电子设备实现权利要求1-12中的任一项所述的图像处理方法。
16.一种计算机程序产品,其特征在于,包括计算机程序,所述计算机程序被处理器执行时实现权利要求1-12中的任一项所述的图像处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310871670.XA CN116612059B (zh) | 2023-07-17 | 2023-07-17 | 图像处理方法及装置、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310871670.XA CN116612059B (zh) | 2023-07-17 | 2023-07-17 | 图像处理方法及装置、电子设备、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116612059A true CN116612059A (zh) | 2023-08-18 |
CN116612059B CN116612059B (zh) | 2023-10-13 |
Family
ID=87683837
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310871670.XA Active CN116612059B (zh) | 2023-07-17 | 2023-07-17 | 图像处理方法及装置、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116612059B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113641967A (zh) * | 2021-07-08 | 2021-11-12 | 荣耀终端有限公司 | 一种可穿戴设备解锁终端设备的方法及通信系统 |
CN114723955A (zh) * | 2022-03-30 | 2022-07-08 | 上海人工智能创新中心 | 图像处理方法、装置、设备和计算机可读存储介质 |
CN114913290A (zh) * | 2022-05-24 | 2022-08-16 | 北京地平线信息技术有限公司 | 多视角融合的场景重建方法、感知网络训练方法及装置 |
WO2022199472A1 (zh) * | 2021-03-23 | 2022-09-29 | 长沙智能驾驶研究院有限公司 | 障碍物检测方法、车辆、设备及计算机存储介质 |
-
2023
- 2023-07-17 CN CN202310871670.XA patent/CN116612059B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022199472A1 (zh) * | 2021-03-23 | 2022-09-29 | 长沙智能驾驶研究院有限公司 | 障碍物检测方法、车辆、设备及计算机存储介质 |
CN113641967A (zh) * | 2021-07-08 | 2021-11-12 | 荣耀终端有限公司 | 一种可穿戴设备解锁终端设备的方法及通信系统 |
CN114723955A (zh) * | 2022-03-30 | 2022-07-08 | 上海人工智能创新中心 | 图像处理方法、装置、设备和计算机可读存储介质 |
CN114913290A (zh) * | 2022-05-24 | 2022-08-16 | 北京地平线信息技术有限公司 | 多视角融合的场景重建方法、感知网络训练方法及装置 |
Non-Patent Citations (1)
Title |
---|
曹立波;夏家豪;廖家才;张冠军;张瑞锋;: "基于3D空间球面的车载全景快速生成方法", 中国公路学报, no. 01 * |
Also Published As
Publication number | Publication date |
---|---|
CN116612059B (zh) | 2023-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112085845B (zh) | 基于无人机影像的室外场景快速三维重建装置 | |
CN112085844B (zh) | 面向野外未知环境的无人机影像快速三维重建方法 | |
US11482014B2 (en) | 3D auto-labeling with structural and physical constraints | |
CN110675418B (zh) | 一种基于ds证据理论的目标轨迹优化方法 | |
CN111222395B (zh) | 目标检测方法、装置与电子设备 | |
KR20200110120A (ko) | 3d-vr 멀티센서 시스템 기반의 도로 시설물 관리 솔루션을 구현하는 시스템 및 그 방법 | |
CN113052066B (zh) | 三维目标检测中基于多视图和图像分割的多模态融合方法 | |
CN113359782B (zh) | 一种融合lidar点云与图像数据的无人机自主选址降落方法 | |
CN112465970A (zh) | 导航地图构建方法、装置、系统、电子装置和存储介质 | |
CN111080784A (zh) | 一种基于地面图像纹理的地面三维重建方法和装置 | |
CN115147328A (zh) | 三维目标检测方法及装置 | |
CN113421217A (zh) | 可行驶区域检测方法和装置 | |
CN110909656A (zh) | 一种雷达与摄像机融合的行人检测方法和系统 | |
CN114550117A (zh) | 一种图像检测方法和装置 | |
CN116844129A (zh) | 多模态特征对齐融合的路侧目标检测方法、系统及装置 | |
CN116612059B (zh) | 图像处理方法及装置、电子设备、存储介质 | |
CN115861601A (zh) | 一种多传感器融合感知方法及装置 | |
CN115240168A (zh) | 感知结果获取方法、装置、计算机设备、存储介质 | |
CN112258568B (zh) | 一种高精度地图要素的提取方法及装置 | |
CN117274526A (zh) | 神经网络模型训练方法和生成图像的方法 | |
CN113724311B (zh) | 深度图获取方法、设备及存储介质 | |
CN112950709A (zh) | 一种位姿预测方法、位姿预测装置及机器人 | |
CN116778262B (zh) | 一种基于虚拟点云的三维目标检测方法和系统 | |
CN115049895B (zh) | 一种图像属性识别方法、属性识别模型训练方法及装置 | |
CN115829898B (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 | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40091902 Country of ref document: HK |