CN115345930A - 模型训练方法、视觉定位方法、装置和设备 - Google Patents
模型训练方法、视觉定位方法、装置和设备 Download PDFInfo
- Publication number
- CN115345930A CN115345930A CN202110518372.3A CN202110518372A CN115345930A CN 115345930 A CN115345930 A CN 115345930A CN 202110518372 A CN202110518372 A CN 202110518372A CN 115345930 A CN115345930 A CN 115345930A
- Authority
- CN
- China
- Prior art keywords
- sample
- image
- images
- sensor data
- information
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- 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/20081—Training; Learning
-
- 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/20084—Artificial neural networks [ANN]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本发明实施例提供一种模型训练方法、视觉定位方法、装置和设备。其中,模型训练方法包括:获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据;根据传感器数据,从多个图像中确定锚样本、与锚样本相对应的正样本、与锚样本相对应的负样本;对锚样本、正样本及负样本进行学习训练,获得深度神经网络模型,深度神经网络模型用于基于图像进行视觉定位操作。本实施例提供的技术方案,能够获取用于基于图像进行视觉定位操作的深度神经网络模型,由于深度神经网络模型能够对多个不同环境的多个不同图像进行准确地识别,进而可以进行准确地视觉定位操作,有效地解决了因各种环境变化导致的视觉定位失败或不稳定的问题。
Description
技术领域
本发明涉及定位技术领域,尤其涉及一种模型训练方法、视觉定位方法、装置和设备。
背景技术
随着科学技术的飞速发展,视觉定位技术的应用领域越来越广泛,例如:无人驾驶领域、机器人导航领域、增强现实等领域。以无人驾驶领域为例,视觉定位技术可以通过相机拍摄的图像对无人车自身的位置进行实时定位,从而给无人车规划和控制提供车辆自身的位置信息和姿态信息。
在进行视觉定位操作时,定位的精确度对无人车的控制精度和车辆安全有着至关重要的影响。然而,在真实的无人车运营场景中,视觉定位算法也面临着各种环境变化导致的巨大挑战,例如:光照、天气、季节和场景变化等极端环境变化会降低视觉定位的精确度,进而降低了无人车的控制精确度和车辆运行的安全程度。
发明内容
鉴于此,本发明实施例提供了一种模型训练方法、视觉定位方法、装置和设备,可以解决视觉定位过程中由于极端环境变化导致的定位失败问题,提高了在不同光照、天气、季节和不同场景下的定位操作的鲁棒性。
第一方面,本发明实施例提供了一种模型训练方法,包括:
获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据;
根据所述传感器数据,从所述多个图像中确定锚样本、与锚样本相对应的正样本、与锚样本相对应的负样本;
对所述锚样本、所述正样本及所述负样本进行学习训练,获得深度神经网络模型,所述深度神经网络模型用于基于图像进行视觉定位操作。
第二方面,本发明实施例提供了一种模型训练装置,包括:
第一获取模块,用于获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据;
第一确定模块,用于根据所述传感器数据,从所述多个图像中确定锚样本、与锚样本相对应的正样本、与锚样本相对应的负样本;
第一训练模块,用于将所述锚样本、所述正样本及所述负样本进行学习训练,获得深度神经网络模型,所述深度神经网络模型用于基于图像进行视觉定位操作。
第三方面,本发明实施例提供一种电子设备,包括处理器和存储器,存储器用于存储一条或多条计算机指令,其中,一条或多条计算机指令被处理器执行时实现上述第一方面中的模型训练方法。
第四方面,本发明实施例提供了一种计算机存储介质,用于储存存储计算机程序,计算机程序使计算机执行时实现上述第一方面中的模型训练方法。
第五方面,本发明实施例提供了一种视觉定位方法,包括:
获取车辆在空间中所采集到的待分析图像;
确定用于对所述待分析图像进行分析处理的同步定位与建图SLAM数据库,所述SLAM数据库中包括多个标准图像以及与各个标准图像相对应的标准地点信息;
将所述待分析图像和所述SLAM数据库输入至深度神经网络模型,获得所述车辆在空间中的定位信息,其中,所述深度神经网络模型被训练为用于基于图像进行视觉定位操作。
第六方面,本发明实施例提供了一种视觉定位装置,包括:
第二获取模块,用于获取车辆在空间中所采集到的待分析图像;
第二确定模块,用于确定用于对所述待分析图像进行分析处理的同步定位与建图SLAM数据库,所述SLAM数据库中包括多个标准图像以及与各个标准图像相对应的标准地点信息;
第二定位模块,用于将所述待分析图像和所述SLAM数据库输入至深度神经网络模型,获得所述车辆在空间中的定位信息,其中,所述深度神经网络模型被训练为用于基于图像进行视觉定位操作。
第七方面,本发明实施例提供一种电子设备,包括处理器和存储器,存储器用于存储一条或多条计算机指令,其中,一条或多条计算机指令被处理器执行时实现上述第五方面中的视觉定位方法。
第八方面,本发明实施例提供了一种计算机存储介质,用于储存存储计算机程序,计算机程序使计算机执行时实现上述第五方面中的视觉定位方法。
第九方面,本发明实施例提供了一种视觉定位方法,包括:
获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据;
根据所述传感器数据,从所述多个图像中确定锚样本、与锚样本相对应的正样本、与锚样本相对应的负样本;
将所述锚样本、所述正样本及所述负样本作为待训练模型的入参,执行所述待训练模型得到损失函数;
根据所述损失函数对所述待训练模型进行优化,获得优化后模型,所述优化后模型用于对车辆进行视觉定位。
第十方面,本发明实施例提供了一种视觉定位装置,包括:
第三获取模块,用于获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据;
第三确定模块,用于根据所述传感器数据,从所述多个图像中确定锚样本、与锚样本相对应的正样本、与锚样本相对应的负样本;
第三处理模块,用于将所述锚样本、所述正样本及所述负样本作为待训练模型的入参,执行所述待训练模型得到损失函数;
第三优化模块,用于根据所述损失函数对所述待训练模型进行优化,获得优化后模型,所述优化后模型用于对车辆进行视觉定位。
第十一方面,本发明实施例提供一种电子设备,包括处理器和存储器,存储器用于存储一条或多条计算机指令,其中,一条或多条计算机指令被处理器执行时实现上述第九方面中的视觉定位方法。
第十二方面,本发明实施例提供了一种计算机存储介质,用于储存存储计算机程序,计算机程序使计算机执行时实现上述第九方面中的视觉定位方法。
本实施例提供的技术方案,通过获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据,根据传感器数据从多个图像中确定锚样本、与锚样本相对应的正样本、与锚样本相对应的负样本,而后对锚样本、正样本及负样本进行学习训练,从而获得能够实现进行准确视觉定位操作的深度神经网络模型,具体的,上述的深度神经网络模型能够对与多个不同环境相对应的多个不同图像进行准确地分析识别,而后基于识别结果实现视觉定位操作,并且保证了视觉定位操作的准确性,同时有效地解决了因各种环境变化导致的视觉定位失败或不稳定的问题,从而有效地提高了该方法的实用性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种模型训练方法的场景流程图;
图2为本发明实施例提供的一种模型训练方法的流程示意图;
图3为本发明实施例提供的获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据的流程示意图;
图4为本发明实施例提供的另一种模型训练方法的流程示意图;
图5为本发明实施例提供的又一种模型训练方法的流程示意图;
图6为本发明实施例提供的另一种模型训练方法的流程示意图;
图7为本发明实施例提供的对所述锚样本、所述正样本及所述负样本进行学习训练,获得深度神经网络模型的流程示意图;
图8为本发明实施例提供的另一种模型训练方法的流程示意图;
图9为本发明实施例提供的一种视觉定位方法的场景示意图;
图10为本发明实施例提供的一种视觉定位方法的流程示意图;
图11为本发明实施例提供的另一种视觉定位方法的流程示意图;
图12为本发明应用实施例提供的一种视觉定位方法的流程示意图;
图13为本发明实施例提供的一种模型训练装置的结构示意图;
图14为与图13所示实施例提供的模型训练装置相对应的电子设备的结构示意图;
图15为本发明实施例提供的一种视觉定位装置的结构示意图;
图16为与图15所示实施例提供的视觉定位装置相对应的电子设备的结构示意图;
图17为本发明实施例提供的另一种视觉定位方法的流程示意图;
图18为本发明实施例提供的另一种视觉定位装置的结构示意图;
图19为与图18所示实施例提供的视觉定位装置相对应的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种,但是不排除包含至少一种的情况。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于识别”。类似地,取决于语境,短语“如果确定”或“如果识别(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当识别(陈述的条件或事件)时”或“响应于识别(陈述的条件或事件)”。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者系统中还存在另外的相同要素。
为了便于理解本实施例的技术方案,下面对现有技术进行相关说明:
视觉定位算法在无人驾驶领域、机器人导航领域和增强现实等领域中都有着重要的应用,以无人驾驶领域为例,通过相机拍摄的图像对无人车自身的位置进行实时定位,从而给无人车规划和控制提供车辆自身的位置信息和姿态信息。
具体的,现有技术中视觉定位算法包括以下步骤:提取手工设计的图像关键点特征,例如:尺度不变特征变换(Scale-invariant feature transform,简称SIFT)、增强特征(Speeded Up Robust Features,简称SURF)、面向快速旋转简约特征(Or iented Fast andRotated Brief,简称ORB)等;然后再通过图像的关键点特征与地图中的关键点特征进行匹配,最后通过特征点匹配关系求解相机在世界坐标系下的位姿,从而获取车体的位置和姿态。
在进行视觉定位操作时,定位的精确度对无人车的控制精度和车辆安全有着至关重要的影响。然而,在真实的无人车运营场景中,视觉定位算法也面临着各种环境变化导致的巨大挑战,例如:光照变化(由相机光线变化引起,如相机背光和过曝光)、天气变化(阴天、雨、雪等天气)、季节变化(春夏秋冬导致的环境变化)、场景变化(运营场景变化,比如:开放道路和封闭社区)等极端环境变化会降低视觉定位的精确度,进而降低了无人车的控制精确度和车辆运行的安全程度。
具体的,为了解决因各种环境变化导致的视觉定位失败或不稳定的问题,本实施例提供了一种模型训练方法、视觉定位方法、装置和设备,其中,该模型训练方法的执行主体为模型训练装置,视觉定位方法的执行主体为视觉定位装置,上述的模型训练装置和视觉定位装置通信连接有待定位目标(无人车、无人船、无人飞行器、移动机器人等等)的控制器,以针对待定位目标实现视觉定位操作。
如图1所示,待定位目标(车辆)上可以设置有用于采集或生成与多个不同环境相对应的多个图像的图像采集装置(例如:照相机、摄像机、具有图像采集能力的其他装置等等),多个图像中可以包括与多个不同环境相对应的多个不同环境特征,在获取到多个图像之后,图像采集装置可以将多个图像传输至模型训练装置。此外,待定位目标上还可以设置有多个传感器,上述的传感器用于在待定位目标进行移动的过程中采集相对应的传感器数据,传感器数据可以与上述的图像相对应,具体实现时,传感器数据中可以包括定位数据、加速度数据、角速度数据等等。在获取到传感器数据之后,多个传感器可以将多个传感器数据传输至模型训练装置。
模型训练装置,可以是指具有模型训练能力的设备,具体实现时,其可以实现为电子设备、服务器等等,其中,服务器通常是指利用网络进行信息规划的服务器。在物理实现上,模型训练装置可以是任何能够提供计算服务,响应服务请求,并进行处理的设备,例如,可以是常规服务器、云服务器、云主机、虚拟中心等。模型训练装置的构成主要包括处理器、硬盘、内存、系统总线等和通用的计算机架构类似。
具体的,模型训练装置可以获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据,而后根据传感器数据,从多个图像中确定锚样本、与锚样本相对应的正样本、与锚样本相对应的负样本,并对锚样本、正样本及负样本进行学习训练,从而可以获得能够实现进行精确视觉定位操作的深度神经网络模型。
需要注意的是,上述模型训练方法、视觉定位方法可以用于无人车上,此时,用于实现模型训练方法、视觉定位方法的执行主体模型训练装置、视觉定位装置可以设置于待识别车辆上。具体的,对于模型训练装置、视觉定位装置而言,可以根据不同类型的车辆对模型训练装置、视觉定位装置进行调整,即根据车辆类型的不同,模型训练装置、视觉定位装置中所包括的算法模块也会有所不同,此时,模型训练装置不仅可以实现模型训练操作,还可以实现的其他操作;视觉定位装置不仅可以实现视觉定位操作,还可以实现的其他操作。例如,对于物流车辆、公共服务车辆、医疗服务车辆、终端服务车辆会涉及不同的模型训练装置、视觉定位装置。下面分别针对这四种自动驾驶车辆对模型训练装置、视觉定位装置中所包括的算法模块进行举例说明:
其中,物流车辆是指物流场景中使用的车辆,例如:可以是带自动分拣功能的物流车辆、带冷藏保温功能的物流车辆、带测量功能的物流车辆。这些物流车辆会涉及不同的算法模块。
例如,对于物流车辆,可以带有自动化的分拣装置,该分拣装置可以在物流车辆到达目的地后自动把货物取出并搬送、分拣、存放。这就涉及用于货物分拣的算法模块,该算法模块主要实现货物取出、搬运、分拣以及存放等逻辑控制。
又例如,针对冷链物流场景,物流车辆还可以带有冷藏保温装置,该冷藏保温装置可以实现运输的水果、蔬菜、水产品、冷冻食品以及其它易腐烂的食品进行冷藏或保温,使之处于合适的温度环境,解决易腐烂食品的长途运输问题。这就涉及用于冷藏保温控制的算法模块,该算法模块主要用于根据食品(或物品)性质、易腐性、运输时间、当前季节、气候等信息动态、自适应计算冷餐或保温的合适温度,根据该合适温度对冷藏保温装置进行自动调节,这样在车辆运输不同食品或物品时运输人员无需手动调整温度,将运输人员从繁琐的温度调控中解放出来,提高冷藏保温运输的效率。
又例如,在大多物流场景中,是根据包裹体积和/或重量进行收费的,而物流包裹的数量非常庞大,单纯依靠快递员对包裹体积和/或重量进行测量,效率非常低,人工成本较高。因此,在一些物流车辆中,增设了测量装置,可自动测量物流包裹的体积和/或重量,并计算物流包裹的费用。这就涉及用于物流包裹测量的算法模块,该算法模块主要用于识别物流包裹的类型,确定物流包裹的测量方式,如进行体积测量还是重量测量或者是同时进行体积和重量的组合测量,并可根据确定的测量方式完成体积和/或重量的测量,以及根据测量结果完成费用计算。
其中,公共服务车辆是指提供某种公共服务的车辆,例如:可以是消防车、除冰车、洒水车、铲雪车、垃圾处理车辆、交通指挥车辆等。这些公共服务车辆会涉及不同算法模块。
例如,对于自动驾驶的消防车,其主要任务是针对火灾现场进行合理的灭火任务,这就涉及用于灭火任务的算法模块,该算法模块至少需要实现火灾状况的识别、灭火方案的规划以及对灭火装置的自动控制等逻辑。
又例如,对于除冰车,其主要任务是清除路面上结的冰雪,这就涉及除冰的算法模块,该算法模块至少需要实现路面上冰雪状况的识别、根据冰雪状况制定除冰方案,如哪些路段需要采取除冰,哪些路段无需除冰,是否采用撒盐方式、撒盐克数等,以及在确定除冰方案的情况下对除冰装置的自动控制等逻辑。
其中,医疗服务车辆是指能够提供一种或多种医疗服务的自动驾驶车辆,该种车辆可提供消毒、测温、配药、隔离等医疗服务,这就涉及提供各种自助医疗服务的算法模块,这些算法模块主要实现消毒需求的识别以及对消毒装置的控制,以使消毒装置为病人进行消毒,或者对病人位置的识别,控制测温装置自动贴近病人额头等位置为病人进行测温,或者,用于实现对病症的判断,根据判断结果给出药方并需要实现对药品/药品容器的识别,以及对取药机械手的控制,使之按药方为病人抓取药品,等等。
其中,终端服务车辆是指可代替一些终端设备面向用户提供某种便利服务的自助型的自动驾驶车辆,例如这些车辆可以为用户提供打印、考勤、扫描、开锁、支付、零售等服务。
例如,在一些应用场景中,用户经常需要到特定位置去打印或扫描文档,费时费力。于是,出现一种可以为用户提供打印/扫描服务的终端服务车辆,这些服务车辆可以与用户终端设备互联,用户通过终端设备发出打印指令,服务车辆响应打印指令,自动打印用户所需的文档并可自动将打印出的文档送至用户位置,用户无需去打印机处排队,可极大地提高打印效率。或者,可以响应用户通过终端设备发出的扫描指令,移动至用户位置,用户将待扫描的文档放置的服务车辆的扫描工具上完成扫描,无需到打印/扫描机处排队,省时省力。这就涉及提供打印/扫描服务的算法模块,该算法模块至少需要识别与用户终端设备的互联、打印/扫描指令的响应、用户位置的定位以及行进控制等。
又例如,随着新零售场景的开展,越来越多的电商借助于自助售货机将商品销售送到了各大办公楼、公共区,但这些自助售货机被放置在固定位置,不可移动,用户需要到该自助售货机跟前才能购买所需商品,便利性还是较差。于是出现了可提供零售服务的自助驾驶车辆,这些服务车辆可以承载商品自动移动,并可提供对应的自助购物类APP或购物入口,用户借助于手机等终端通过APP或购物入口可以向提供零售服务的自动驾驶车辆进行下单,该订单中包括待购买的商品名称、数量以及用户位置,该车辆收到下单请求之后,可以确定当前剩余商品是否具有用户购买的商品以及数量是否足够,在确定具有用户购买的商品且数量足够的情况下,可携带这些商品自动移动至用户位置,将这些商品提供给用户,进一步提高用户购物的便利性,节约用户时间,让用户将时间用于更为重要的事情上。这就涉及提供零售服务的算法模块,这些算法模块主要实现响应用户下单请求、订单处理、商品信息维护、用户位置定位、支付管理等逻辑。
本实施例提供的技术方案,通过获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据,根据传感器数据从多个图像中确定锚样本、与锚样本相对应的正样本、与锚样本相对应的负样本,而后对锚样本、正样本及负样本进行学习训练,从而获得能够实现进行准确视觉定位操作的深度神经网络模型,具体的,上述的深度神经网络模型能够对与多个不同环境相对应的多个不同图像进行准确地分析识别,而后基于识别结果实现视觉定位操作,并保证了视觉定位操作的准确性,同时有效地解决了因各种环境变化导致的视觉定位失败或不稳定的问题,从而有效地提高了该方法的实用性。
另外,下述各方法实施例中的步骤时序仅为一种举例,而非严格限定。
图1为本发明实施例提供的一种模型训练方法的场景流程图;图2为本发明实施例提供的一种模型训练方法的流程示意图;参考附图1-图2所示,本实施例提供了一种模型训练方法,该模型训练方法的执行主体为模型训练装置,可以理解的是,该模型训练装置可以实现为软件、或者软件和硬件的组合。具体的,该方法可以包括:
步骤S201:获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据。
其中,多个不同环境包括以下至少之一:多个不同的时间段、多个不同的天气、多个不同的运营场景,具体的,多个不同的时间段可以包括以下至少之一:上午时间段的任意时间点、中午时间段的任意时间点、下午时间段的任意时间点、晚间时间段的任意时间点等等;多个不同的天气可以包括以下至少之一:春天天气、夏天天气、春天天气、冬天天气、雨雪天气、风沙天气等等;多个不同的运营场景可以包括以下至少之一:开放道路场景、室内场景、封闭社区场景等等。可以理解的是,多个不同环境并不限于上述所描述的场景,本领域技术人员可以根据具体的应用场景和应用需求对多个不同环境进行设置,在此不再赘述。
具体的,为了能够实现对待定位对象进行视觉定位操作,待定位对象上可以设置有图像采集装置和传感器,其中,图像采集装置用于对待定位对象在不同环境中的图像进行采集,从而可以获得与多个不同环境相对应的多个图像,传感器用于对待定位对象所对应的移动状态进行检测,移动状态可以包括:定位信息和姿态信息等等。在一些实例中,传感器数据包括以下至少之一:惯性测量单元的检测数据、全球定位系统的检测数据。可以理解的是,惯性测量单元的检测数据可以包括:待定位对象所对应的加速度信息、角速度信息、姿态信息等等,全球定位系统的检测数据可以包括:全球定位系统的定位数据。
在通过图像采集装置获取到与多个不同环境相对应的多个图像时,则可以通过传感器获取到与各个图像相对应的传感器数据,可以理解的是,传感器数据与图像之间存在对应关系;在获取到多个图像与各个图像相对应的传感器数据之后,则可以将与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据主动或者被动地传输至模型训练装置,从而使得模型训练装置可以准确、有效地获取到多个图像和传感器数据。
步骤S202:根据传感器数据,从多个图像中确定锚样本、与锚样本相对应的正样本、与锚样本相对应的负样本。
在获取到传感器数据和多个图像之后,则可以基于传感器数据对多个图像进行分析处理,以确定锚样本、与锚样本相对应的正样本和与锚样本相对应的负样本。其中,锚样本可以是多个图像中所包括的任意一个图像,正样本可以是指与锚样本之间存在设定关系的图像,负样本可以是指与锚样本之间不存在设定关系的图像。
在一些实例中,设定关系可以包括:与锚样本存在共视关系、且与锚样本之间的距离小于预设范围,即与锚样本存在共视关系可以是指与正样本相对应的拍摄角度和与锚样本相对应的拍摄角度相同,且与正样本相对应的拍摄地点和与锚样本相对应的拍摄地点之间的距离不会较远。
在一些实例中,根据传感器数据,从多个图像中确定锚样本、与锚样本相对应的正样本、与锚样本相对应的负样本可以包括:在多个图像中,选取一个图像作为锚样本;根据传感器信息,在多个图像中确定与锚样本存在设定关系的图像,作为正样本;根据传感器信息,在多个图像中确定与锚样本不存在设定关系的图像,作为负样本。
举例来说,多个图像中包括图像1、图像2、图像3、图像4和图像5,传感器数据可以包括:与图像1相对应的传感器数据1、与图像2相对应的传感器数据2、与图像3相对应的传感器数据3、与图像4相对应的传感器数据4以及与图像5相对应的传感器数据5。
以多个图像中所包括的图像1作为锚样本为例,在获取到上述多个传感器数据之后,则可以基于传感器数据1和传感器数据2检测锚样本与图像2之间是否存在设定关系、基于传感器数据1和传感器数据3检测锚样本与图像3之间是否存在设定关系、基于传感器数据1和传感器数据4检测锚样本与图像4之间是否存在设定关系、基于传感器数据1和传感器数据5检测锚样本与图像5之间是否存在设定关系。
当锚样本与图像2之间存在设定关系、锚样本与图像3之间存在设定关系时,则可以将图像2和图像3确定为与锚样本相对应的正样本。当锚样本与图像4之间不存在设定关系、锚样本与图像5之间不存在设定关系时,则可以将图像4和图像5确定为与锚样本相对应的负样本,从而有效地实现了对锚样本、与锚样本相对应的正样本、与锚样本相对应的负样本进行确定的准确可靠性。
步骤S203:对锚样本、正样本及负样本进行学习训练,获得深度神经网络模型,深度神经网络模型用于基于图像进行视觉定位操作。
在获取到锚样本、正样本和负样本之后,则可以对锚样本、正样本和负样本进行学习训练,从而可以获得深度神经网络模型,所获得的深度神经网络模型用于基于图像进行视觉定位操作。由于深度神经网络模型含有大量可学习的参数,因此,所训练的深度神经网络模型可以更好地解决因光照变化(如过曝光)、极端天气变化、以及季节和场景变化和视角变化等问题所导致的定位不准确的问题。
本实施例提供的模型训练方法,通过获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据,根据传感器数据从多个图像中确定锚样本、与锚样本相对应的正样本、与锚样本相对应的负样本,而后对锚样本、正样本及负样本进行学习训练,从而获得能够实现进行准确视觉定位操作的深度神经网络模型,具体的,上述的深度神经网络模型能够对与多个不同环境相对应的多个不同图像进行准确地分析识别,而后基于识别结果实现视觉定位操作,并且保证了视觉定位操作的准确性,同时有效地解决了因各种环境变化导致的视觉定位失败或不稳定的问题,从而有效地提高了该方法的实用性。
图3为本发明实施例提供的获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据的流程示意图;在上述实施例的基础上,继续参考附图3所示,本实施例提供了一种获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据的实现方式,具体的,本实施例中的获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据可以包括:
步骤S301:获取与多个不同环境相对应的所有图像以及与各个图像相对应的所有传感器数据。
其中,为了能够提高对深度神经网络模型进行学习训练的质量,则可以获取与多个不同环境相对应的所有图像以及与各个图像相对应的所有传感器数据。可以理解的是,所有图像中的不同图像中可以对应有相同或者不同的图像质量,所有传感器数据中的不同传感器数据可以对应有相同或者不同的数据准确度。例如:所有图像中的某些图像的图像清晰度较高(图像质量高),所有图像中的某些图像的图像清晰度较低(图像质量低);所有传感器数据中的某些传感器数据的数据准确度较高,所有传感器数据中的某些传感器数据的数据准确度较低。
步骤S302:识别所有传感器数据中所包括的无效数据。
在利用传感器获取到所有传感器数据时,由于某些传感器数据的数据准确度较高,某些传感器数据的数据准确度较低。因此,为了能够提高对深度神经网络模型进行学习训练的质量和效率,则可以识别所有传感器中所包括的无效数据,该无效数据可以包括以下至少之一:异常数据、重复数据,其中,异常数据可以是指超出预设范围的传感器数据。
在一些实例中,识别所有传感器数据中所包括的无效数据包括:识别所有传感器中是否存在重复数据,若存在重复数据,则可以将重复数据确定为无效数据;而后获取用于对所有传感器数据的预设范围,将所有传感器数据与预设范围进行分析比较,在传感器数据超出预设范围时,则将传感器数据确定异常数据;在传感器数据位于预设范围内,则将传感器数据确定为有效数据。
步骤S303:去除所有传感器数据中所包括的无效数据,获得目标传感器数据。
在获取到所有传感器数据中所包括的无效数据之后,则可以去除所有传感器数据中所包括的无效数据,从而可以获得目标传感器数据。
步骤S304:在所有图像中,将与目标传感器数据所对应的图像确定为目标图像。
由于传感器数据与图像之间存在对应关系,因此,在获取到目标传感器数据之后,则可以在所有图像中将与目标传感器数据所对应的图像确定为目标图像,该目标图像用于进行学习训练、以生成深度神经网络模型。
本实施例中,通过获取与多个不同环境相对应的所有图像以及与各个图像相对应的所有传感器数据,识别所有传感器数据中所包括的无效数据,并去除所有传感器数据中所包括的无效数据,获得目标传感器数据,而后在所有图像中,将与目标传感器数据所对应的图像确定为目标图像,从而有效地使得用于进行学习训练的图像不包括无效数据,这样在基于上述不包括无效数据的图像进行学习训练时,有效地提高了对深度神经网络模型进行学习训练的质量和效果。
图4为本发明实施例提供的另一种模型训练方法的流程示意图;在上述实施例的基础上,参考附图4所示,在识别所有传感器数据中所包括的无效数据之前,本实施例中的方法还可以包括:
步骤S401:获取与各个图像和传感器数据相对应的定位置信度。
步骤S402:基于定位置信度在所有图像以及与各个图像相对应的所有传感器数据中,确定备选图像以及与备选图像相对应的传感器数据。
为了进一步提高对深度神经网络模型进行学习训练的质量,在识别所有传感器数据中所包括的无效数据之前,则可以获取与各个图像和传感器数据相对应的定位置信度。具体的,可以利用预设算法或者预先训练好的机器学习模型对所有图像和传感器数据进行分析处理,从而可以获得与各个图像和传感器数据相对应的定位置信度,该定位置信度用于标识在利用各个图像和传感器数据进行视觉定位操作时所对应的精确度。可以理解的是,与各个图像和传感器数据相对应的定位置信度越高,利用上述的各个图像和传感器数据进行学习训练时,所获得的深度神经网络模型的定位精确度越高。
在获取到与各个图像和传感器数据相对应的定位置信度之后,则可以基于定位置信度在所有图像以及与各个图像相对应的所有传感器数据中,确定备选图像以及与备选图像相对应的传感器数据。在一些实例中,基于定位置信度在所有图像以及与各个图像相对应的所有传感器数据中,确定备选图像以及与备选图像相对应的传感器数据可以包括:在定位置信度小于或等于预设阈值时,则去除与定位置信度相对应的图像和传感器数据,获得备选图像以及与备选图像相对应的备选传感器数据。
具体的,在获取到定位置信度之后,则可以将定位置信度与预设阈值进行分析比较,在定位置信度小于或等于预设阈值时,则说明与该定位置信度相对应的图像和传感器数据的定位精确度较低,进而则可以去除与定位置信度相对应的图像和传感器数据,从而可以获得备选图像以及与备选图像相对应的备选传感器数据。
本实施例中,通过获取与各个图像和传感器数据相对应的定位置信度,而后基于定位置信度在所有图像以及与各个图像相对应的所有传感器数据中,确定备选图像以及与备选图像相对应的备选传感器数据,从而有效地实现了可以获取到定位置信度较高的备选图像以及与备选图像相对应的备选传感器数据,这样在利用备选图像以及备选传感器数据进行学习训练时,则可以获得视觉定位精确度较高的深度神经网络模型,进一步提高了视觉定位操作的实用性。
图5为本发明实施例提供的又一种模型训练方法的流程示意图;在上述实施例的基础上,继续参考附图5所示,在识别所有传感器数据中所包括的无效数据之前,本实施例中的方法还可以包括:
步骤S501:获取模型需求信息。
步骤S502:在所有图像和所有传感器数据中,确定与模型需求信息相对应的备选图像以及与备选图像相对应的备选传感器数据。
其中,为了保证深度神经网络模型所适用的范围和使用的精确度,则可以获取模型需求信息,该模型需求信息可以包括以下至少之一:光线较强的图像和传感器数据、光线较暗的图像和传感器数据、白天时间段的图像和传感器数据、夜间时间段的图像和传感器数据等等。可以理解的是,本领域技术人员可以根据不同的应用场景和应用需求来设置不同的模型需求信息,在对模型需求信息配置完毕之后,则可以将配置完的模型需求信息存储在预设区域中,通过访问预设区域即可获取到模型需求信息。
在获取到模型需求信息之后,则可以在所有图像和所有传感器数据中,确定与模型需求信息相对应的备选图像以及与备选图像相对应的备选传感器数据。在一些实例中,在所有图像和所有传感器数据中,确定与模型需求信息相对应的备选图像以及与备选图像相对应的备选传感器数据可以包括:获取与模型需求信息相对应的需求特征;确定与所有图像相对应的图像特征,在图像特征与需求特征相匹配时,则将与图像特征相对应的图像和传感器数据确定为与模型需求信息相对应的备选图像以及与备选图像相对应的备选传感器数据。在图像特征与需求特征不匹配时,则将与图像特征相对应的图像确定为无效图像,并可以将所有图像中的无效图像删除。
本实施例中,通过获取模型需求信息,而后在所有图像和所有传感器数据中,确定与模型需求信息相对应的备选图像以及与备选图像相对应的备选传感器数据,从而有效地实现了可以获取到满足模型需求信息的备选图像以及与备选图像相对应的备选传感器数据,这样在利用备选图像以及备选传感器数据进行学习训练时,则可以获得满足场景需求、设计需求的深度神经网络模型,进一步提高了该深度神经网络模型的实用性。
图6为本发明实施例提供的另一种模型训练方法的流程示意图;在上述实施例的基础上,继续参考附图6所示,在多个图像中,选取一个图像作为锚样本之后,本实施例中的方法还可以包括:
步骤S601:在多个图像中,获取与锚样本相对应的所有相似样本图像。
其中,在多个图像之后,则可以将任意一个图像确定为锚样本,而后对锚样本与其他图像进行分析处理,以获取与锚样本相对应的所有相似样本图像,可以理解的是,与锚样本相对应的相似样本图像的数量可以为一个或多个,并且,相似样本图像与锚样本之间的相似度大于或等于预设阈值。
在一些实例中,在多个图像中,获取与锚样本相对应的所有相似样本图像可以包括:在多个图像中,将任意一个图像确定为锚样本;确定锚样本与其他图像之间的相似度,在相似度大于或等于预设阈值时,则可以将相似度所对应的图像确定为与锚样本相对应的相似样本图像。
步骤S602:根据传感器信息,获取相似样本图像与锚样本之间的相对位姿信息和特征点匹配信息。
其中,在获取到相似样本图像与锚样本之后,则可以基于传感器信息对相似样本图像与锚样本进行分析处理,以确定相似样本图像与锚样本之间的相对位姿信息和特征点匹配信息。可以理解的是,相似样本图像与锚样本之间的相对位姿信息可以是指第一相机位姿信息(第一目标位姿信息)与第二相机位姿信息(第二目标位姿信息)之间的相对位姿偏差,其中,第一相机位姿信息是指在采集相似样本图像时所对应的位姿信息,第二相机位姿信息是指在采集锚样本时所对应的位姿信息;或者,相似样本图像与锚样本之间的相对位姿信息可以是指在采集相似样本图像时所对应的第一车辆位姿信息与在采集锚样本时所对应的第二车辆位姿信息之间的相对位姿偏差。
在一些实例中,在获取到传感器信息之后,则可以基于传感器信息、利用同步定位与建图(Simultaneous Localization And Mapping,简称SLAM)算法对场景进行建图,在建图过程中可以获得相似样本图像与锚样本之间的相对位姿信息和特征点匹配信息。
在另一些实例中,根据传感器信息,获取相似样本图像与锚样本之间的相对位姿信息可以包括:获取与相似样本图像相对应的第一传感器信息以及与锚样本相对应的第二传感器信息;基于第一传感器信息和第二传感器信息,确定相似样本图像与锚样本之间的相对位姿信息。
具体的,第一传感器信息中可以包括与相似样本图像相对应的第一位姿信息,第二传感器信息中可以包括与锚样本相对应的第二位姿信息,在获取到第一位姿信息和第二位姿信息之后,则可以对第一位姿信息和第二位姿信息进行分析处理,从而可以获得位姿偏移信息,并可以将位姿偏移信息确定为相似样本图像与锚样本之间的相对位姿信息。
当然的,本领域技术人员还可以采用其他的方式来获取相似样本图像与锚样本之间的相对位姿信息和特征点匹配信息,只要能够稳定地获取到相似样本图像与锚样本之间的相对位姿信息和特征点匹配信息即可,在此不再赘述。
步骤S603:基于相对位姿信息和特征点匹配信息,检测相似样本图像与锚样本是否存在设定关系。
在获取到相对位姿信息和特征点匹配信息之后,则可以对相对位姿信息和特征点匹配信息进行分析处理,以检测相似样本图像与锚样本之间是否存在设定关系。在一些实例中,基于相对位姿信息和特征点匹配信息,检测相似样本图像与锚样本是否存在设定关系可以包括:在相对位姿信息小于或等于预设阈值、且特征匹配信息大于或等于预设阈值时,则确定相似样本图像与锚样本之间存在设定关系;在相对位姿信息大于预设阈值、或者特征匹配信息小于预设阈值时,则确定相似样本图像与锚样本之间不存在设定关系。
具体的,在获取到相对位姿信息和特征匹配信息之后,则可以将相对位姿信息与预设阈值、特征匹配信息与预设阈值进行分析比较,需要注意的是,用于对相对位姿信息进行分析比较的预设阈值与用于对特征匹配信息进行分析处理的预设阈值可以相同或者不同。
在相对位姿信息小于或等于预设阈值时,则说明在获取相似样本图像时的车辆姿态或者相机姿态与在获取锚样本时的车辆姿态或者相机姿态基本相同;在相对位姿信息大于预设阈值时,则说明在获取相似样本图像时的车辆姿态或者相机姿态与在获取锚样本时的车辆姿态或者相机姿态不同。在特征匹配信息大于或等于预设阈值时,则说明相似样本图像与锚样本之间的相似度较高;在特征匹配信息小于预设阈值时,则说明相似样本图像与锚样本之间的相似度较低。
在相对位姿信息小于或等于预设阈值、且特征匹配信息大于或等于预设阈值时,则确定相似样本图像与锚样本之间存在设定关系;在相对位姿信息大于预设阈值、或者特征匹配信息小于预设阈值时,则确定相似样本图像与锚样本之间不存在设定关系,从而有效地实现了可以基于相对位姿信息和特征点匹配信息,检测相似样本图像与锚样本是否存在设定关系。
本实施例中,在多个图像中,通过获取与锚样本相对应的所有相似样本图像,并根据传感器信息获取相似样本图像与锚样本之间的相对位姿信息和特征点匹配信息,而后根据相对位姿信息和特征点匹配信息来检测相似样本图像与锚样本是否存在设定关系,从而有效地实现了对相似样本图像与锚样本是否存在设定关系进行检测的准确可靠性,进一步保证了对深度神经网络模型进行训练的质量和效率。
图7为本发明实施例提供的对锚样本、正样本及负样本进行学习训练,获得深度神经网络模型的流程示意图;在上述任意一个实施例的基础上,继续参考附图7所示,本实施例提供了一种对锚样本、正样本及负样本进行学习训练的实现方式,具体的,本实施例中的对锚样本、正样本及负样本进行学习训练,获得深度神经网络模型可以包括:
步骤S701:获取用于对锚样本、正样本及负样本进行分析处理的损失函数。
步骤S702:利用损失函数对锚样本、正样本及负样本进行学习训练,获得深度神经网络模型。
其中,在获取到锚样本、正样本和负样本之后,则可以获取与锚样本、正样本和负样本相对应的损失函数,该损失函数用于最小化锚样本与正样本之间的匹配距离、并最大化锚样本与负样本之间的匹配距离。在一些实例中,损失函数可以为triplet损失函数。
在获取到损失函数之后,则可以基于损失函数对锚样本、正样本及负样本进行学习训练,从而可以获得深度神经网络模型,这样有效地保证了对深度神经网络模型进行训练的质量和效率。
图8为本发明实施例提供的另一种模型训练方法的流程示意图;在上述任意一个实施例的基础上,继续参考附图8所示,在获得深度神经网络模型之后,本实施例中的方法还可以包括:
步骤S801:获取待定位目标在空间中所采集到的待分析图像。
步骤S802:确定用于对待分析图像进行分析处理的多个标准图像,每个标准图像相对应的标准地点信息。
步骤S803:将待分析图像和多个标准图像输入至深度神经网络模型,获得待定位目标在空间中的定位信息。
其中,在获取到深度神经网络模型之后,则可以利用深度神经网络模型进行视觉定位操作,具体的,当用户存在视觉定位需求时,则可以获取待定位目标在空间中所采集的待分析图像,待定位目标可以包括以下至少之一:车辆、船舶、飞机、无人车、无人船、无人飞行器、移动机器人等等。
为了能够准确地实现视觉定位操作,则可以确定用于对待分析图像进行分析处理的多个标准图像,每个标准图像相对应的标准地点信息。可以理解的是,上述多个标准图像与待定位目标所在的空间相对应,在待定位目标所在的空间不同时,所对应的多个标准图像也不同。
在获取到待分析图像和多个标准图像之后,则可以将待分析图像和多个标准图像输入至深度神经网络模型,该深度神经网络模型可以在多个标准图像中识别出与待分析图像相匹配的目标标准图像,而后可以将目标标准图像所对应的标准地点信息确定为待定位目标在空间中的定位信息,从而有效地实现了视觉定位操作,进一步提高了深度神经网络模型的实用性。
图9为本发明实施例提供的一种视觉定位方法的场景示意图;图10为本发明实施例提供的一种视觉定位方法的流程示意图;参考附图9-图10所示,本实施例提供了一种视觉定位方法,该视觉定位方法的执行主体为视觉定位装置,可以理解的是,该视觉定位装置可以实现为软件、或者软件和硬件的组合。具体的,该方法可以包括:
步骤S1001:获取车辆在空间中所采集到的待分析图像。
步骤S1002:确定用于对待分析图像进行分析处理的同步定位与建图SLAM数据库,SLAM数据库中包括多个标准图像以及与各个标准图像相对应的标准地点信息。
步骤S1003:将待分析图像和SLAM数据库输入至深度神经网络模型,获得车辆在空间中的定位信息,其中,深度神经网络模型被训练为用于基于图像进行视觉定位操作。
下面对上述各个步骤的具体实现过程进行详细阐述:
步骤S1001:获取车辆在空间中所采集到的待分析图像。
其中,车辆上可以设置有图像采集装置,该图像采集装置用于对车辆在不同环境中的图像进行采集,这样可以获得与多个不同环境相对应的待分析图像。当存在视觉定位需求时,则可以将与多个不同环境相对应的待分析图像主动或者被动地传输至视觉定位装置,从而使得视觉定位装置可以准确、有效地获取到车辆在空间中所采集到的待分析图像。
步骤S1002:确定用于对待分析图像进行分析处理的同步定位与建图SLAM数据库,SLAM数据库中包括多个标准图像以及与各个标准图像相对应的标准地点信息。
为了能够准确地实现对车辆进行视觉定位操作,则可以确定用于对待分析图像进行分析处理的同步定位与建图SLAM数据库,SLAM数据库中可以包括多个标准图像以及与各个标准图像相对应的标准地点信息。可以理解的是,上述SLAM数据库与车辆所在的空间相对应,在车辆所在的空间不同时,与上述空间相对应的SLAM数据库也不同。
步骤S1003:将待分析图像和SLAM数据库输入至深度神经网络模型,获得车辆在空间中的定位信息,其中,深度神经网络模型被训练为用于基于图像进行视觉定位操作。
在获取到待分析图像和SLAM数据库之后,则可以将待分析图像和SLAM数据库输入至深度神经网络模型,该深度神经网络模型可以在SLAM数据库中所包括的多个标准图像中识别出与待分析图像相匹配的目标标准图像,而后可以将目标标准图像所对应的标准地点信息确定为车辆在空间中的定位信息,从而有效地实现了视觉定位操作,进一步提高了该视觉定位方法的实用性。
本实施例提供的视觉定位方法,通过获取车辆在空间中所采集到的待分析图像,并确定用于对待分析图像进行分析处理的同步定位与建图SLAM数据库,而后将待分析图像和SLAM数据库输入至深度神经网络模型,从而能够准确地识别出车辆在空间中的定位信息;另外,由于深度神经网络模型可以对各个环境特征相对应的图像进行分析识别,这样有效地解决了在视觉定位过程中由于极端环境变化导致的定位失败问题,提高了在不同光照、天气、季节和不同场景下的定位操作的鲁棒性,进一步保证了该方法使用的准确可靠性。
图11为本发明实施例提供的另一种视觉定位方法的流程示意图;在上述实施例的基础上,参考附图11所示,其中,车辆上可以设置有惯性测量单元;在获得车辆在空间中的定位信息之后,本实施例中的方法还可以包括:
步骤S1101:获取惯性测量单元的检测数据。
步骤S1102:基于检测数据,确定车辆的姿态信息。
步骤S1103:根据姿态信息和定位信息,生成与车辆相对应的导航信息。
其中,车辆上可以设置有惯性测量单元,该惯性测量单元可以对车辆运行过程中的运行状态进行实时检测,从而可以获得检测数据,该检测数据可以包括:车辆运行的加速度、车辆运行的角速度等等;在获取到上述检测数据之后中,可以对检测数据进行分析处理,从而可以确定车辆的姿态信息,该姿态信息即为车辆在世界坐标系下的位姿信息,因此,车辆的姿态信息可以包括:车辆的车头朝向。
在获取到车辆的姿态信息之后,则可以基于姿态信息和定位信息,生成与车辆相对应的导航信息,所生成的导航信息可以包括以下至少之一:道路信息、移动速度信息等等,从而基于导航信息控制车辆进行移动,进一步保证了车辆运行的安全可靠性。
具体应用时,本应用实施例提供了一种视觉定位方法,该视觉定位方法通过大规模地对不同光照、天气、季节和不同场景下的图像数据进行不断训练和更新视觉特征,可以得到深度神经网络模型,而后可以利用深度神经网络模型进行视觉定位操作,从而解决了视觉定位过程中由于极端环境变化导致的定位失败问题,同时也提升了在不同环境条件下的特征稳定性和定位效果的鲁棒性。具体的,以车辆作为待定位目标为例进行说明,参考附图12所示,该方法可以包括以下步骤:
步骤1:回归测试。
车辆上设置有相机、全球定位系统GPS、惯性测量单元IMU,控制车辆在不同的运营场景中、不同时间段、不同天气下进行移动,从而可以通过相机获取到在不同时间段、不同天气、不同运营场景下的图像,通过GPS获取到车辆在不同时间段、不同天气、不同运营场景中与图像相对应的定位信息,通过IMU获取到车辆在不同时间段、不同天气、不同运营场景中与图像相对应的姿态信息,即持续对车辆进行路测。总的来说,通过相机、GPS和IMU获取到图像、传感器数据和车辆状态等数据,从而可以持续建立大规模的不同光照、不同天气、不同场景下的数据集。
步骤2:数据挖掘。
在获取到与不同光照、不同天气、不同场景相对应的数据集之后,则可以对数据集中的数据进行数据挖掘处理,具体的,数据挖掘操作可以包括被动挖掘操作和主动挖掘操作。
其中,被动挖掘操作主要用于识别出定位效果不好的数据,具体的,可以获取与数据相对应的视觉定位置信度,而后基于视觉定位置信度挖掘出定位效果不好的数据,这些定位质量不好的数据往往都是由于各种环境变化导致的,为了能够保证对深度神经网络模型进行学习训练的质量,则可以将上述定位效果不好的数据删除。
另外,主动挖掘操作主要用于识别出对模型训练操作有用或者有效的数据,具体的,可以获取模型需求信息,模型需求信息可以包括:光线过强的数据、光线过暗的数据等等,基于模型需求信息和挖掘算法主动挖掘出数据集中的数据是否为有效数据,这样在获取到上述模型训练操作所需要的有效数据,而后基于上述的有效数据进行模型训练操作时,所生成的深度神经网络模型可以对不同光照、不同天气、不同场景所对应的数据进行分析处理,进一步提高了该方法的适用范围。
步骤3:数据筛选。
对数据挖掘之后的数据进一步筛选操作,以剔除进行数据挖掘之后的数据中所包括的噪声数据(例如:传感器异常数据)或重复数据,最终可以筛选出用于进行模型训练的有效数据。
步骤4:模型训练。
利用筛选出的有效数据进行学习训练,从而可以获得深度神经网络模型,在利用该深度神经网络模型进行视觉定位操作时,可以提升视觉定位操作的稳定性。
其中,深度神经网络模型主要由一个共享的主干网络(backbone)和两个头分支(head)组成:1)主干网络可以是任意的主干网络,例如:视觉几何网络(Visual GeometryGroup Network,简称VGG)、深度残差网络(Deep residual network,ResNet)等,考虑到视觉定位操作的实时性,本应用实施例优选的主干网络可以为MobileNet网络。2)头分支(head):包括特征点检测分支和特征描述分支,其中,特征点检测分支由主干网络输出的特征经过卷积层和归一化层输出得到,而特征描述分支由主干网络输出的特征经过多层卷积得到。
在进行模型训练操作时,可以包括以下步骤:
步骤41:图像关联的关系识别。
根据筛选的有效数据和记录的传感器信息(图像、IMU、GPS等信息),利用SLAM建图算法对场景进行建图,在建图过程中可以获得两帧相近图像之间的相对位姿关系以及特征点匹配关系,其中,相对位姿关系是指两帧相近的图像所对应的车辆姿态之间所对应的相对位姿信息。
在另一些实例中,上述相对位姿信息还可以通过激光传感器进行获取,具体的,通过激光传感器获取到与一图像所对应的第一位姿信息以及与另一图像所对应的第二位姿信息,基于第一位姿信息和第二位姿信息即可确定与两帧相近图像所对应的位姿对应关系。
步骤42:训练样本。
在获取到所有有效的图像之后,可以将任意一个图像确定为锚样本(Anchorexample),而后确定与锚样本相对应的正样本(Positive example)和负样本(Negativeexample),即每一组训练样本包含三幅图像:锚样本、正样本、负样本。
对于每一个筛选出的锚样本A,基于相对位姿信息和特征点匹配关系确定与锚样本A存在共视关系的所有图像,具体的,在相对位姿信息小于预设偏差、特征点匹配关系大于预设阈值时,则可以确定锚样本与图像之间存在共视关系;在相对位姿信息大于或等于预设偏差、特征点匹配关系小于或等于预设阈值时,则可以确定锚样本与图像之间不存在共视关系。
在确定与锚样本A存在共视关系的所有图像之后,可以将上述图像所对应的位置信息与锚样本A所对应的位置信息之间的距离与预设范围进行分析比较,在上述位置信息小于预设范围(例如:5m、6m、7m或者10m等等)时,则可以将与锚样本A存在共视关系、且与锚样本A相对应的距离小于预设范围的图像确定为正样本P。如果与锚样本A不存在共视关系、或者与锚样本A相对应的距离大于或等于预设范围的图像确定为负样本N。
步骤43:模型训练。
基于锚样本、正样本和负样本进行学习训练,从而可以获得深度神经网络模型。
在另一些实例中,将锚样本、正样本和负样本输入到(预先设置的)深度神经网络模型中,并利用triplet损失函数最小化锚样本和正样本之间的匹配距离,同时最大化锚样本和负样本之间的匹配距离,并利用反向传播算法对模型参数进行更新,进而可以获得深度神经网络模型,该深度神经网络模型可以对各个环境中所对应的图像进行分析识别。
步骤5:视觉定位。
在获取到深度神经网络模型之后,则可以利用深度神经网络模型对车辆进行实时的视觉定位操作。此外,还可以基于视觉定位结果对深度神经网络模型进行优化更新操作,这样有利于提高深度神经网络模型所对应的识别精确度。
本应用实施例提供的视觉定位方法,通过持续的大规模数据采集,并挖掘和筛选其中有效的训练数据,而后基于训练数据获得深度神经网络模型,或者可以对配置的深度神经网络模型进行更新,从而提升该深度神经网络模型的稳定性,使其在不同光照、不同天气、不同季节和不同场景下都能鲁棒地定位,进而可以解决各种环境变化导致的定位失败或者不稳定的问题,进一步提高了该方法使用的准确可靠性。
图13为本发明实施例提供的一种模型训练装置的结构示意图;参考附图13所示,本实施例提供了一种模型训练装置,该模型训练装置用于执行上述图2所对应的模型训练方法,该模型训练装置可以包括:第一获取模块11、第一确定模块12以及第一训练模块13。具体的,
第一获取模块11,用于获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据;
第一确定模块12,用于根据传感器数据,从多个图像中确定锚样本、与锚样本相对应的正样本、与锚样本相对应的负样本;
第一训练模块13,用于将锚样本、正样本及负样本进行学习训练,获得深度神经网络模型,深度神经网络模型用于基于图像进行视觉定位操作。
在一些实例中,多个不同环境包括以下至少之一:多个不同的时间段、多个不同的天气、多个不同的运营场景。
在一些实例中,传感器数据包括以下至少之一:惯性测量单元的检测数据、全球定位系统的检测数据。
在一些实例中,在第一获取模块11获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据时,该第一获取模块11用于:获取与多个不同环境相对应的所有图像以及与各个图像相对应的所有传感器数据;识别所有传感器数据中所包括的无效数据;去除所有传感器数据中所包括的无效数据,获得目标传感器数据;在所有图像中,将与目标传感器数据所对应的图像确定为目标图像。
在一些实例中,无效数据包括以下至少之一:异常数据、重复数据。
在一些实例中,在识别所有传感器数据中所包括的无效数据之前,本实施例中的第一获取模块11和第一确定模块12用于执行以下步骤:
第一获取模块11,用于获取与各个图像和传感器数据相对应的定位置信度;
第一确定模块12,用于基于定位置信度在所有图像以及与各个图像相对应的所有传感器数据中,确定备选图像以及与备选图像相对应的传感器数据。
在一些实例中,在第一确定模块12基于定位置信度在所有图像以及与各个图像相对应的所有传感器数据中,确定备选图像以及与备选图像相对应的传感器数据时,该第一确定模块12用于执行:在定位置信度小于或等于预设阈值时,则去除与定位置信度相对应的图像和传感器数据,获得备选图像以及与备选图像相对应的备选传感器数据。
在一些实例中,在识别所有传感器数据中所包括的无效数据之前,本实施例中的第一获取模块11和第一确定模块12用于执行以下步骤:
第一获取模块11,用于获取模型需求信息;
第一确定模块12,用于在所有图像和所有传感器数据中,确定与模型需求信息相对应的备选图像以及与备选图像相对应的备选传感器数据。
在一些实例中,在第一确定模块12根据传感器数据,从多个图像中确定锚样本、与锚样本相对应的正样本、与锚样本相对应的负样本时,该第一确定模块12用于执行:在多个图像中,选取一个图像作为锚样本;根据传感器信息,在多个图像中确定与锚样本存在设定关系的图像,作为正样本;根据传感器信息,在多个图像中确定与锚样本不存在设定关系的图像,作为负样本。
在一些实例中,设定关系包括:与锚样本存在共视关系、且与锚样本之间的距离小于预设范围。
在一些实例中,在多个图像中,选取一个图像作为锚样本之后,本实施例中的第一获取模块11和第一确定模块12用于执行以下步骤:
第一获取模块11,用于在多个图像中,获取与锚样本相对应的所有相似样本图像;
第一获取模块11,用于根据传感器信息,获取相似样本图像与锚样本之间的相对位姿信息和特征点匹配信息;
第一确定模块12,用于基于相对位姿信息和特征点匹配信息,检测相似样本图像与锚样本是否存在设定关系。
在一些实例中,在第一获取模块11根据传感器信息,获取相似样本图像与锚样本之间的相对位姿信息时,该第一获取模块11可以用于执行:获取与相似样本图像相对应的第一传感器信息以及与锚样本相对应的第二传感器信息;基于第一传感器信息和第二传感器信息,确定相似样本图像与锚样本之间的相对位姿信息。
在一些实例中,在第一确定模块12基于相对位姿信息和特征点匹配信息,检测相似样本图像与锚样本是否存在设定关系时,该第一确定模块12用于执行以下步骤:在相对位姿信息小于或等于预设阈值、且特征匹配信息大于或等于预设阈值时,则确定相似样本图像与锚样本之间存在设定关系;在相对位姿信息大于预设阈值、或者特征匹配信息小于预设阈值时,则确定相似样本图像与锚样本之间不存在设定关系。
在一些实例中,在第一训练模块13对锚样本、正样本及负样本进行学习训练,获得深度神经网络模型时,该第一训练模块13用于执行:获取用于对锚样本、正样本及负样本进行分析处理的损失函数;利用损失函数对锚样本、正样本及负样本进行学习训练,获得深度神经网络模型。
在一些实例中,损失函数用于最小化锚样本与正样本之间的匹配距离、并最大化锚样本与负样本之间的匹配距离。
在一些实例中,在获得深度神经网络模型之后,本实施例中的第一获取模块11和第一确定模块12用于执行以下步骤:
第一获取模块11,用于获取待定位目标在空间中所采集到的待分析图像;
第一确定模块12,用于确定用于对待分析图像进行分析处理的多个标准图像,每个标准图像相对应的标准地点信息;将待分析图像和多个标准图像输入至深度神经网络模型,获得待定位目标在空间中的定位信息。
图13所示装置可以执行图1至图8、图12所示中的实施例的方法,本实施例未详细描述的部分,可参考对图1至图8、图12所示中的实施例的相关说明。该技术方案的执行过程和技术效果参见图1至图8、图12所示实施例中的描述,在此不再赘述。
在一个可能的设计中,图13所示模型训练装置的结构可实现为一电子设备,该电子设备可以是手机、平板电脑、服务器等各种设备。如图14所示,该电子设备可以包括:第一处理器21和第一存储器22。其中,第一存储器22用于存储支持电子设备执行上述图1-图8、图12所示中的至少部分实施例中提供的模型训练方法的程序,第一处理器21被配置为用于执行第一存储器22中存储的程序。
程序包括一条或多条计算机指令,其中,一条或多条计算机指令被第一处理器21执行时能够实现如下步骤:
获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据;
根据传感器数据,从多个图像中确定锚样本、与锚样本相对应的正样本、与锚样本相对应的负样本;
对锚样本、正样本及负样本进行学习训练,获得深度神经网络模型,深度神经网络模型用于基于图像进行视觉定位操作。
可选地,第一处理器21还用于执行前述图1-图8、图12所示中的至少部分实施例中的全部或部分步骤。
其中,电子设备的结构中还可以包括第一通信接口23,用于电子设备与其他设备或通信网络通信。
另外,本发明实施例提供了一种计算机存储介质,用于储存电子设备所用的计算机软件指令,其包含用于执行上述图1-图8、图12所示中的至少部分实施例中模型训练方法所涉及的程序。
图15为本发明实施例提供的一种视觉定位装置的结构示意图;参考附图15所示,本实施例提供了一种视觉定位装置,该视觉定位装置用于执行上述图10所对应的视觉定位方法,该视觉定位装置可以包括:第二获取模块31、第二确定模块32以及第二定位模块33。具体的,
第二获取模块31,用于获取车辆在空间中所采集到的待分析图像;
第二确定模块32,用于确定用于对待分析图像进行分析处理的同步定位与建图SLAM数据库,SLAM数据库中包括多个标准图像以及与各个标准图像相对应的标准地点信息;
第二定位模块33,用于将待分析图像和SLAM数据库输入至深度神经网络模型,获得车辆在空间中的定位信息,其中,深度神经网络模型被训练为用于基于图像进行视觉定位操作。
在一些实例中,车辆上设置有惯性测量单元;在获得车辆在空间中的定位信息之后,本实施例中的第二获取模块31和第二确定模块32可以用于执行以下步骤:
第二获取模块31,用于获取惯性测量单元的检测数据;
第二确定模块32,用于基于检测数据,确定车辆的姿态信息;根据姿态信息和定位信息,生成与车辆相对应的导航信息。
图15所示装置可以执行图9至图12所示中的实施例的方法,本实施例未详细描述的部分,可参考对图9至图12所示中的实施例的相关说明。该技术方案的执行过程和技术效果参见图9至图12所示实施例中的描述,在此不再赘述。
在一个可能的设计中,图15所示视觉定位装置的结构可实现为一电子设备,该电子设备可以是手机、平板电脑、服务器等各种设备。如图16所示,该电子设备可以包括:第二处理器41和第二存储器42。其中,第二存储器42用于存储支持电子设备执行上述图9至图12所示中的至少部分实施例中提供的视觉定位方法的程序,第二处理器41被配置为用于执行第二存储器42中存储的程序。
程序包括一条或多条计算机指令,其中,一条或多条计算机指令被第二处理器41执行时能够实现如下步骤:
获取车辆在空间中所采集到的待分析图像;
确定用于对待分析图像进行分析处理的同步定位与建图SLAM数据库,SLAM数据库中包括多个标准图像以及与各个标准图像相对应的标准地点信息;
将待分析图像和SLAM数据库输入至深度神经网络模型,获得车辆在空间中的定位信息,其中,深度神经网络模型被训练为用于基于图像进行视觉定位操作。
可选地,第二处理器41还用于执行前述图9至图12所示中的至少部分实施例中的全部或部分步骤。
其中,电子设备的结构中还可以包括第二通信接口43,用于电子设备与其他设备或通信网络通信。
另外,本发明实施例提供了一种计算机存储介质,用于储存电子设备所用的计算机软件指令,其包含用于执行上述图9至图12所示中的至少部分实施例中视觉定位方法所涉及的程序。
图17为本发明实施例提供的另一种视觉定位方法的流程示意图;参考附图17所示,本实施例提供了另一种视觉定位方法,该视觉定位方法的执行主体为视觉定位装置,可以理解的是,该视觉定位装置可以实现为软件、或者软件和硬件的组合。具体的,该方法可以包括:
步骤S1701:获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据。
步骤S1702:根据所述传感器数据,从所述多个图像中确定锚样本、与锚样本相对应的正样本、与锚样本相对应的负样本。
其中,本实施例中步骤S1701-步骤S1702的具体实现过程、实现效果与上述实施例中步骤S201-步骤S202的具体实现过程、实现效果相类似,具体可参考上述陈述内容,在此不再赘述。
步骤S1703:将所述锚样本、所述正样本及所述负样本作为待训练模型的入参,执行所述待训练模型得到损失函数。
其中,预先设置有用于对车辆进行视觉定位操作的待训练模型,待训练模型所对应的定位精确度不满足预设要求,尤其是在多个不同环境中进行视觉定位操作的定位精确度较低。因此,为了能够提高视觉定位操作的精确度,则可以将所获取到的锚样本、正样本和负样本作为待训练模型的入参,控制待训练模型执行操作,从而可以得到与上述待训练模型相对应的损失函数,该损失函数用于最小化所述锚样本与所述正样本之间的匹配距离、并最大化所述锚样本与所述负样本之间的匹配距离。
步骤S1704:根据所述损失函数对所述待训练模型进行优化,获得优化后模型,所述优化后模型用于对车辆进行视觉定位。
在获取到损失函数之后,则可以根据损失函数对待训练模型进行优化处理,从而可以获得优化后模型,该优化后模型用于对车辆进行视觉定位操作,这样有效地提高了在不同光照、天气、季节和不同场景下的定位操作的鲁棒性。
本实施例提供的视觉定位方法,通过获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据,根据所述传感器数据,从所述多个图像中确定锚样本、与锚样本相对应的正样本、与锚样本相对应的负样本,并将所述锚样本、所述正样本及所述负样本作为待训练模型的入参,执行所述待训练模型得到损失函数,而后根据所述损失函数对所述待训练模型进行优化,获得用于对车辆进行视觉定位的优化后模型,这样有效地解决了视觉定位过程中由于极端环境变化导致的定位失败问题,并提高了在不同光照、天气、季节和不同场景下的定位操作的鲁棒性,进一步提高了该视觉定位方法使用的准确可靠性。
图18为本发明实施例提供的另一种视觉定位装置的结构示意图;参考附图18所示,本实施例提供了另一种视觉定位装置,该视觉定位装置用于执行上述图17所对应的视觉定位方法,该视觉定位装置可以包括:第三获取模块51、第三确定模块52、第三处理模块53以及第三优化模块54。具体的,
第三获取模块51,用于获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据;
第三确定模块52,用于根据所述传感器数据,从所述多个图像中确定锚样本、与锚样本相对应的正样本、与锚样本相对应的负样本;
第三处理模块53,用于将所述锚样本、所述正样本及所述负样本作为待训练模型的入参,执行所述待训练模型得到损失函数;
第三优化模块54,用于根据所述损失函数对所述待训练模型进行优化,获得优化后模型,所述优化后模型用于对车辆进行视觉定位。
图18所示装置可以执行图17所示中的实施例的方法,本实施例未详细描述的部分,可参考对图17所示中的实施例的相关说明。该技术方案的执行过程和技术效果参见图17所示实施例中的描述,在此不再赘述。
在一个可能的设计中,图18所示视觉定位装置的结构可实现为一电子设备,该电子设备可以是手机、平板电脑、服务器等各种设备。如图19所示,该电子设备可以包括:第三处理器61和第三存储器62。其中,第三存储器62用于存储支持电子设备执行上述图17所示中的至少部分实施例中提供的视觉定位方法的程序,第三处理器61被配置为用于执行第三存储器62中存储的程序。
程序包括一条或多条计算机指令,其中,一条或多条计算机指令被第三处理器61执行时能够实现如下步骤:
获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据;
根据所述传感器数据,从所述多个图像中确定锚样本、与锚样本相对应的正样本、与锚样本相对应的负样本;
将所述锚样本、所述正样本及所述负样本作为待训练模型的入参,执行所述待训练模型得到损失函数;
根据所述损失函数对所述待训练模型进行优化,获得优化后模型,所述优化后模型用于对车辆进行视觉定位。
可选地,第三处理器61还用于执行前述图17所示中的至少部分实施例中的全部或部分步骤。
其中,电子设备的结构中还可以包括第三通信接口63,用于电子设备与其他设备或通信网络通信。
另外,本发明实施例提供了一种计算机存储介质,用于储存电子设备所用的计算机软件指令,其包含用于执行上述图17所示中的至少部分实施例中视觉定位方法所涉及的程序。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助加必需的通用硬件平台的方式来实现,当然也可以通过硬件和软件结合的方式来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以计算机产品的形式体现出来,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (12)
1.一种模型训练方法,包括:
获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据;
根据所述传感器数据,从所述多个图像中确定锚样本、与锚样本相对应的正样本、与锚样本相对应的负样本;
对所述锚样本、所述正样本及所述负样本进行学习训练,获得深度神经网络模型,所述深度神经网络模型用于基于图像进行视觉定位操作。
2.根据权利要求1所述的方法,其中,获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据,包括:
获取与所述多个不同环境相对应的所有图像以及与各个图像相对应的所有传感器数据;
识别所有传感器数据中所包括的无效数据;
去除所有传感器数据中所包括的无效数据,获得目标传感器数据;
在所有图像中,将与所述目标传感器数据所对应的图像确定为目标图像。
3.根据权利要求2所述的方法,其中,在识别所有传感器数据中所包括的无效数据之前,所述方法还包括:
获取与各个图像和传感器数据相对应的定位置信度;
基于所述定位置信度在所有图像以及与各个图像相对应的所有传感器数据中,确定备选图像以及与所述备选图像相对应的传感器数据。
4.根据权利要求2所述的方法,其中,在识别所有传感器数据中所包括的无效数据之前,所述方法还包括:
获取模型需求信息;
在所有图像和所有传感器数据中,确定与所述模型需求信息相对应的备选图像以及与所述备选图像相对应的备选传感器数据。
5.根据权利要求1所述的方法,其中,根据所述传感器数据,从所述多个图像中确定锚样本、与锚样本相对应的正样本、与锚样本相对应的负样本,包括:
在所述多个图像中,选取一个图像作为锚样本;
根据所述传感器信息,在所述多个图像中确定与所述锚样本存在设定关系的图像,作为正样本;
根据所述传感器信息,在所述多个图像中确定与所述锚样本不存在设定关系的图像,作为负样本。
6.根据权利要求5所述的方法,其中,在所述多个图像中,选取一个图像作为锚样本之后,所述方法还包括:
在所述多个图像中,获取与所述锚样本相对应的所有相似样本图像;
根据所述传感器信息,获取所述相似样本图像与所述锚样本之间的相对位姿信息和特征点匹配信息;
基于所述相对位姿信息和特征点匹配信息,检测所述相似样本图像与所述锚样本是否存在设定关系。
7.根据权利要求6所述的方法,其中,根据所述传感器信息,获取所述相似样本图像与所述锚样本之间的相对位姿信息,包括:
获取与所述相似样本图像相对应的第一传感器信息以及与所述锚样本相对应的第二传感器信息;
基于所述第一传感器信息和所述第二传感器信息,确定所述相似样本图像与所述锚样本之间的相对位姿信息。
8.根据权利要求6所述的方法,其中,基于所述相对位姿信息和特征点匹配信息,检测所述相似样本图像与所述锚样本是否存在设定关系,包括:
在所述相对位姿信息小于或等于预设阈值、且所述特征匹配信息大于或等于预设阈值时,则确定所述相似样本图像与所述锚样本之间存在设定关系;
在所述相对位姿信息大于预设阈值、或者所述特征匹配信息小于预设阈值时,则确定所述相似样本图像与所述锚样本之间不存在设定关系。
9.根据权利要求1-8中任意一项所述的方法,其中,对所述锚样本、所述正样本及所述负样本进行学习训练,获得深度神经网络模型,包括:
获取用于对所述锚样本、所述正样本及所述负样本进行分析处理的损失函数;
利用所述损失函数对所述锚样本、所述正样本及所述负样本进行学习训练,获得所述深度神经网络模型。
10.根据权利要求1-8中任意一项所述的方法,其中,在获得深度神经网络模型之后,所述方法还包括:
获取待定位目标在空间中所采集到的待分析图像;
确定用于对所述待分析图像进行分析处理的多个标准图像,每个标准图像相对应的标准地点信息;
将所述待分析图像和所述多个标准图像输入至深度神经网络模型,获得所述待定位目标在空间中的定位信息。
11.一种视觉定位方法,包括:
获取车辆在空间中所采集到的待分析图像;
确定用于对所述待分析图像进行分析处理的同步定位与建图SLAM数据库,所述SLAM数据库中包括多个标准图像以及与各个标准图像相对应的标准地点信息;
将所述待分析图像和所述SLAM数据库输入至深度神经网络模型,获得所述车辆在空间中的定位信息,其中,所述深度神经网络模型被训练为用于基于图像进行视觉定位操作。
12.一种视觉定位方法,包括:
获取与多个不同环境相对应的多个图像以及与各个图像相对应的传感器数据;
根据所述传感器数据,从所述多个图像中确定锚样本、与锚样本相对应的正样本、与锚样本相对应的负样本;
将所述锚样本、所述正样本及所述负样本作为待训练模型的入参,执行所述待训练模型得到损失函数;
根据所述损失函数对所述待训练模型进行优化,获得优化后模型,所述优化后模型用于对车辆进行视觉定位。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110518372.3A CN115345930A (zh) | 2021-05-12 | 2021-05-12 | 模型训练方法、视觉定位方法、装置和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110518372.3A CN115345930A (zh) | 2021-05-12 | 2021-05-12 | 模型训练方法、视觉定位方法、装置和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115345930A true CN115345930A (zh) | 2022-11-15 |
Family
ID=83946815
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110518372.3A Pending CN115345930A (zh) | 2021-05-12 | 2021-05-12 | 模型训练方法、视觉定位方法、装置和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115345930A (zh) |
-
2021
- 2021-05-12 CN CN202110518372.3A patent/CN115345930A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Maddern et al. | 1 year, 1000 km: The oxford robotcar dataset | |
US10915793B2 (en) | Method and system for converting point cloud data for use with 2D convolutional neural networks | |
US10628890B2 (en) | Visual analytics based vehicle insurance anti-fraud detection | |
US11113526B2 (en) | Training methods for deep networks | |
CN108318043A (zh) | 用于更新电子地图的方法、装置和计算机可读存储介质 | |
US11829136B2 (en) | Asset delivery system | |
CN107436153A (zh) | 基于实时交通信息在无人驾驶车辆中提供内容的系统和方法 | |
US11829959B1 (en) | System and methods for fully autonomous potholes detection and road repair determination | |
Warren et al. | Towards visual teach and repeat for GPS-denied flight of a fixed-wing UAV | |
EP3516607A1 (en) | Autonomous vehicles performing inventory management | |
US11047690B2 (en) | Automated emergency response | |
CN115900712A (zh) | 一种信源可信度评价组合定位方法 | |
Patterson et al. | Utilizing geographic information system data for unmanned aerial vehicle position estimation | |
CN115170652A (zh) | 全局重定位方法、装置、电子设备及计算机存储介质 | |
US20230394694A1 (en) | Methods and apparatus for depth estimation using stereo cameras in a vehicle system | |
CN115345930A (zh) | 模型训练方法、视觉定位方法、装置和设备 | |
JP6894395B2 (ja) | 情報取得装置及び情報集計システム並びに情報集計装置 | |
WO2023122708A1 (en) | Systems and methods of image analysis for automated object location detection and management | |
WO2023129483A1 (en) | Optimizing placement of an asset array in a loading area | |
CN115727857A (zh) | 定位方法、定位装置、车辆、存储介质和程序产品 | |
CN115171061A (zh) | 车辆检测方法、装置和设备 | |
CN115035490A (zh) | 目标检测方法、装置、设备和存储介质 | |
CN113963027B (zh) | 不确定性检测模型的训练、不确定性的检测方法及装置 | |
Arvidsson et al. | Drone navigation and license place detection for vehicle location in indoor spaces | |
CN115235458A (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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20230717 Address after: Room 437, Floor 4, Building 3, No. 969, Wenyi West Road, Wuchang Subdistrict, Yuhang District, Hangzhou City, Zhejiang Province Applicant after: Wuzhou Online E-Commerce (Beijing) Co.,Ltd. Address before: Room 01, 45 / F, AXA building, 8 Shanton Road, Singapore Applicant before: Alibaba Singapore Holdings Ltd. |