CN116385532A - 无人机定位方法、装置、无人机和存储介质 - Google Patents
无人机定位方法、装置、无人机和存储介质 Download PDFInfo
- Publication number
- CN116385532A CN116385532A CN202211734829.5A CN202211734829A CN116385532A CN 116385532 A CN116385532 A CN 116385532A CN 202211734829 A CN202211734829 A CN 202211734829A CN 116385532 A CN116385532 A CN 116385532A
- Authority
- CN
- China
- Prior art keywords
- scene
- optical flow
- unmanned aerial
- aerial vehicle
- flow field
- 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
- 238000000034 method Methods 0.000 title claims abstract description 60
- 230000003287 optical effect Effects 0.000 claims abstract description 189
- 230000033001 locomotion Effects 0.000 claims abstract description 28
- 238000004590 computer program Methods 0.000 claims abstract description 23
- 238000012549 training Methods 0.000 claims description 45
- 238000000605 extraction Methods 0.000 claims description 32
- 239000011159 matrix material Substances 0.000 claims description 21
- 230000006870 function Effects 0.000 claims description 18
- 230000009466 transformation Effects 0.000 claims description 18
- 238000006243 chemical reaction Methods 0.000 claims description 13
- 230000008569 process Effects 0.000 abstract description 7
- 230000003993 interaction Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000002829 reductive effect Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 239000013598 vector Substances 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000036961 partial effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012384 transportation and delivery Methods 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- 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/30244—Camera pose
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
本申请涉及一种一种无人机定位方法、装置、无人机、计算机可读存储介质和计算机程序产品。所述方法包括:实时采集无人机所在场景的场景图像;基于相邻两帧场景图像,确定场景中相邻两帧之间的光流场,以及无人机移动引起的场景的刚性光流场;通过光流场和刚性光流场确定无人机的位置坐标。采用本方法能够从而实现对无人机的定位,保障无人机在信号干扰或者遮挡的情况下能够正常工作,不受限于光线条件,适用范围广。此外,采用本方法可以实现无人机自主定位,省去了无人机与地面控制设施之间的交互过程,定位实时性更高。
Description
技术领域
本申请涉及自动控制技术领域,特别是涉及一种无人机定位方法、装置、无人机、计算机可读存储介质和计算机程序产品。
背景技术
随着无人机产业的不断发展,民用无人机在室内和室外环境中的应用数量和重要程度也在逐渐增加,如快递的运输和投递、用于地理绘图的航拍、灾区的临时网络覆盖、在核电站内进行侦察等。无人机完成预定任务过程中,必须全部或部分地自主飞行。为了支持无人机的自主飞行,地面控制设施需要持续地定位和监测无人机的位置,并将这一信息发送给无人机的导航控制器,以提供无人机的自主导航能力。
目前无人机定位常采用卫星惯性导航定位技术,但是卫星惯性导航定位一般适用于室外的空旷环境,室内环境存在信号干扰或者遮挡,导致定位准确度下降,无人机无法正常工作。因此,亟需一种无人机定位方法,弥补现有定位方法在信号干扰或者遮挡的情况下定位不准确的不足,保证无人机正常工作。
发明内容
基于此,有必要针对上述技术问题,提供一种在信号干扰或者遮挡的情况下能够准确定位的无人机定位方法、装置、无人机、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种无人机定位方法。所述方法包括:
实时采集无人机所在场景的场景图像;
基于相邻两帧所述场景图像,确定相邻两帧所述场景图像之间所述场景的光流场,以及所述无人机移动引起的所述场景的刚性光流场;
通过所述光流场和所述刚性光流场确定所述无人机的位置坐标。
在其中一个实施例中,所述基于相邻两帧所述场景图像,确定相邻两帧之间所述场景的光流场,包括:
提取相邻两帧所述场景图像中所述场景的共有特征;
根据相邻两帧所述场景图像的共有特征得到所述场景的光流场。
在其中一个实施例中,所述根据相邻两帧所述场景图像的共有特征得到所述场景的光流场,包括:
对相邻两帧所述场景图像的共有特征进行特征增强,得到优化特征;
对相邻两帧所述场景图像的优化特征进行特征匹配,获得匹配结果;
基于所述匹配结果确定所述场景中各像素点的估计光流,得到光流场。
在其中一个实施例中,所述提取相邻两帧所述场景图像中所述场景的共有特征,包括:
通过特征提取模型提取每帧所述场景图像中所述场景的共有特征;其中,所述特征提取模型的训练方法,包括:
获取训练数据集;所述训练数据集包括同一场景的连续白天图像和连续夜间图像;
通过待训练特征提取模型,对同一所述场景的连续白天图像和连续夜间图像进行特征提取,获得白天共有特征、白天私有特征、夜间共有特征和夜间私有特征;
根据所述白天共有特征、所述白天私有特征、所述夜间共有特征和所述夜间私有特征进行白天图像重建和夜间图像重建,得到白天重建图像和夜间重建图像;
根据所述训练数据集、所述白天重建图像和所述夜间重建图像,计算损失函数值,并以所述损失函数值最小化为目标,更新所述待训练特征提取模型的参数,直至达到训练结束条件,获得训练完成的所述特征提取模型。
在其中一个实施例中,所述获取训练数据集,包括:
通过同一场景的非成对白天和黑夜图像训练白天-黑夜图像转换网络;
利用训练完成的所述白天-黑夜图像转换网络生成连续白天图像对应的连续黑夜图像,以得到训练数据集。
在其中一个实施例中,所述实时采集无人机所在场景的场景图像,包括:实时采集无人机所在场景的场景图像,并获得每帧所述场景图像的深度场;
所述基于相邻两帧所述场景图像,确定所述无人机移动引起的所述场景的刚性光流场,包括:
根据相邻两帧所述场景图像的深度场、预设刚度场及相机姿态,确定所述场景图像中各像素点的刚性光流表达式;
通过所述场景图像中各像素点的刚性光流表达式得到所述场景的刚性光流场。
在其中一个实施例中,所述通过所述光流场和所述刚性光流场确定所述无人机的位置坐标,包括:
根据所述光流场和所述刚性光流场之间的关系建模,以确定所述场景中相机的位姿变换矩阵;
根据所述位姿变换矩阵确定所述场景的相机姿态;
根据所述相机姿态确定所述无人机的位置坐标。
第二方面,本申请还提供了一种无人机定位装置。所述装置包括:
数据采集模块,用于实时采集无人机所在场景的场景图像;
光流场确定模块,用于基于相邻两帧所述场景图像,确定所述场景中相邻两帧之间的光流场,以及所述无人机移动引起的所述场景的刚性光流场;
定位模块,用于通过所述刚性光流场和所述光流场确定所述无人机的位置坐标。
第三方面,本申请还提供了一种无人机。所述无人机包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
实时采集无人机所在场景的场景图像;
基于相邻两帧所述场景图像,确定相邻两帧所述场景图像之间所述场景的光流场,以及所述无人机移动引起的所述场景的刚性光流场;
通过所述光流场和所述刚性光流场确定所述无人机的位置坐标。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
实时采集无人机所在场景的场景图像;
基于相邻两帧所述场景图像,确定相邻两帧所述场景图像之间所述场景的光流场,以及所述无人机移动引起的所述场景的刚性光流场;
通过所述光流场和所述刚性光流场确定所述无人机的位置坐标。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
实时采集无人机所在场景的场景图像;
基于相邻两帧所述场景图像,确定相邻两帧所述场景图像之间所述场景的光流场,以及所述无人机移动引起的所述场景的刚性光流场;
通过所述光流场和所述刚性光流场确定所述无人机的位置坐标。
上述无人机定位方法、装置、无人机、计算机可读存储介质和计算机程序产品,实时采集无人机所在场景的场景图像;基于相邻两帧场景图像,确定场景中相邻两帧之间的光流场,以及无人机移动引起的场景的刚性光流场;通过光流场和刚性光流场确定无人机的位置坐标。从而得到各个像素点在相邻两帧场景图像之间的估计光流值构成的光流场,以及各个像素点在相邻两帧场景图像之间的刚性光流值构成的刚性光流场,由于刚性光流值因无人机移动引起,且与无人机的位置坐标相关,因此基于光流场与刚性光流值之间的关系可以得到无人机的位置坐标,从而实现对无人机的定位,保障无人机在信号干扰或者遮挡的情况下能够正常工作。此外,通过实现无人机自主定位,省去了无人机与地面控制设施之间的交互过程,定位实时性更高。
附图说明
图1为一个实施例中无人机定位方法的应用环境图;
图2为一个实施例中无人机定位方法的流程示意图;
图3为一个实施例中基于相邻两帧场景图像,确定相邻两帧之间场景的光流场的流程示意图;
图4为一个实施例中确定估计光流的流程示意图;
图5为一个实施例中特征提取模型的训练方法的流程示意图;
图6为一个实施例中训练数据集的生成流程示意图;
图7为一个实施例中特征提取模型的部分训练过程示意图;
图8为一个实施例中无人机定位装置的结构框图;
图9为一个实施例中无人机的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
目前无人机定位常采用卫星惯性导航定位技术、动作捕捉定位、UWB(Ultra WideBand,超宽带)定位以及SLAM(Simultaneous Localization And Mapping,同时定位与地图构建)定位等。卫星惯性导航定位一般适用于室外的空旷环境,如果存在信号干扰或者遮挡,则准确度会下降。动作捕捉定位和UWB定位需要在无人机的飞行区域预先布置各种设备,因此无法在未知区域使用。SLAM定位中,基于激光雷达的定位在移动较快的情况下会丢失数据,同时其处理速度较慢,输出频率较低。基于多传感器融合的定位需要安装额外的传感器,必然会增加无人机重量,降低无人机续航。同时为了对多种传感器数据进行处理,会消耗更多的电量。基于此,本申请提供一种在信号干扰或者遮挡的情况下、白天和黑夜都能够准确定位的无人机定位方法。
本申请实施例提供的无人机定位方法,可以应用于无人机,如图1所示,无人机包括相连接的图像采集装置102和处理器104,图像采集装置102实时采集无人机所在场景的场景图像,并传输至处理器104;处理器104基于相邻两帧场景图像,确定相邻两帧场景图像之间场景的光流场,以及无人机移动引起的场景的刚性光流场;通过光流场和刚性光流场确定无人机的位置坐标。其中,图像采集装置102可以为RGB-D(Red Green Blue-Depth)相机,或者其它类型的可以获取到采集到的每帧图像的深度场的深度相机,为了便于说明,下述均以图像采集装置102为RGB-D相机为了进行说明。
在另一个实施例中,处理器104通过网络与服务器进行通信,图像采集装置102实时采集无人机所在场景的场景图像,并传输至处理器104;处理器104通过网络传输至服务器,服务器基于相邻两帧场景图像,确定相邻两帧场景图像之间场景的光流场,以及无人机移动引起的场景的刚性光流场;通过光流场和刚性光流场确定无人机的位置坐标。服务器可以是设置于地面的独立的服务器或者是多个服务器组成的服务器集群来实现,服务器还可以是云端服务器。
在一个实施例中,如图2所示,提供了一种无人机定位方法,以该方法应用于图1中的处理器为例进行说明,包括以下步骤:
步骤200,实时采集无人机所在场景的场景图像。
RGB-D相机可以采集无人机所在场景的场景图像以及每一帧场景图像的深度场,场景可以是室内场景也可以是室外场景,场景图像可以是光线充足时的场景图像,如白天场景图像,也可以是光线不足时的场景图像,如黑夜场景图像等。
步骤300,基于相邻两帧场景图像,确定相邻两帧场景图像之间场景的光流场,以及无人机移动引起的场景的刚性光流场。
光流场包括场景中各像素点的估计光流,刚性光流场包括场景中各像素点的刚性流(即刚性光流),深度场包括场景中各像素点的深度。其中,可以通过训练好的光流生成网络,确定像素点在前一帧场景图像到当前帧场景图像之间的估计光流,从而得到光流场。
在确定刚性流时,可以将相机的位姿变换矩阵作为未知变量,利用相机的位姿变换矩阵以及每一帧场景图像的深度场得到刚性光流表达式,各像素点的刚性光流表达式构成刚性光流场。
步骤400,通过光流场和刚性光流场确定无人机的位置坐标。
由于相邻两帧之间的刚性光流场与光流场理论上应该相等,因此,通过对光流场和刚性光流场建模,可以求解出相机的位姿变换矩阵,从而根据位姿变换矩阵得到相机姿态,进而得到相机的位置坐标。由于RGB-D相机设置在无人机机身上,随机身的移动而移动,且与机身之间不会发生相对运动,因此相机的位置即为无人机的位置。
上述无人机定位方法,实时采集无人机所在场景的场景图像;基于相邻两帧场景图像,确定场景中相邻两帧之间的光流场,以及无人机移动引起的场景的刚性光流场;通过光流场和刚性光流场确定无人机的位置坐标。从而得到各个像素点在相邻两帧场景图像之间的估计光流值构成的光流场,以及各个像素点在相邻两帧场景图像之间的刚性光流值构成的刚性光流场,由于刚性光流值因无人机移动引起,与其位置坐标相关的,因此基于光流场与刚性光流值之间的关系可以得到无人机的位置坐标,从而实现对无人机的定位,保障无人机在信号干扰或者遮挡的情况下能够正常工作。此外,通过实现无人机自主定位,省去了无人机与地面控制设施之间的交互过程,定位实时性更高,且无人机智能化程度更高。而且,本实施例中的定位方法不仅可以满足光线条件好的白天的定位需求,还可以满足光线环境较差的黑夜中的定位需求,适用范围更广。
在一个实施例中,如图3所示,步骤300中,基于相邻两帧场景图像,确定相邻两帧之间场景的光流场,包括:步骤310,提取相邻两帧场景图像中场景的共有特征;步骤320,根据相邻两帧场景图像的共有特征得到场景的光流场。
对于同一个场景的白天和夜晚图像,尽管图像的照明是完全不同的,但是光流信息应该是一致的,因此一个场景对应的白天图像和夜间图像的基本信息应该是相似的,基于此,可以把一幅图像分成共有特征与私有特征两部分,共有特征也为不变特征,即当场景图像发生变化时保持不变的特征。
本实施例中,为了保证场景在不同光线环境下光流的一致性,去除了私有特征的干扰,通过共有特征确定光流场,得到的光流场的可靠性更高,同时使得该无人机定位方法能够满足各种光线环境下的定位需求。
在一个实施例中,步骤320包括:对相邻两帧场景图像的共有特征进行特征增强,得到优化特征;对相邻两帧场景图像的优化特征进行特征匹配,获得匹配结果;基于匹配结果确定场景中各像素点的估计光流,得到光流场。
本实施例中,通过全局匹配的光流估算方法生成光流场,通过进行特征增强,能够得到的质量更高的优化特征,从而基于高质量的可区别的特征进行匹配,得到更准确的估计光流。
具体的,参照图4,针对相邻两帧场景图像I1与I2,他们的共有特征F1与F2可以通过权重共享的卷积神经网络中相对独立的提取出来,而基于多头注意力机制的Transformer模型可以用注意力机制建模两个集合之间的相互关系,因此可以使用Transformer模型提高F1与F2的相互依赖性。由于F1与F2只是两组特征,没有空间位置的概念,因此可以首先在特征中添加固定的二维正弦和余弦位置编码,添加位置信息能够使匹配过程在考虑特征相似度的同时考虑特征之间的空间距离,有助于提高性能。在添加位置信息后,执行六个堆叠的自注意力、交叉注意力和前馈网络来提高初始特征的质量。具体来说,对于自注意力,query(查询)、key(键)和value(值)是相同的特征,对于交叉注意力,query不同,key和value相同,以引入它们的相互依赖性,从而提高共有特征的质量。
还需要说明的是,标准的Transformer体系结构中的一个问题是由于成对注意力操作而产生的二次计算复杂度。为了提高效率,具体采用Swin Transformer的移动局部窗口注意方法,但是与Swin Transformer使用固定窗口大小不同,本实施例中,首先确定局部窗口的数量,然后将共有特征切割为对应数量的特征窗口,最后设置滑动窗口大小与特征窗口大小相同。例如,如果使用K*K个局部窗口,那么将输入尺寸为H*W的特征进行切割,每个小特征窗口的大小为并在每个局部窗口内独立的执行自注意和交叉注意。对于每两个连续的局部窗口,本实施例中将窗口分区移动/>以引入跨窗口连接,具体可以将特征划分成2*2个窗口。
光流估计算法中,在进行特征匹配时,可以通过比较相邻两帧场景图像的优化特征的相似性来进行匹配,确定匹配成功的像素点在相邻两帧之间的估计光流,具体的匹配过程不需要限定。然而,匹配的方式对于场景中存在遮挡和/或超出边界的像素无效,会出现未匹配成功的情况,为了解决这个问题,在未匹配成功时,可以根据光流场和图像本身具有很高的结构相似性的特点,通过计算特征的自相似性,从而将匹配像素点中的高质量的光流预测传播到未经匹配的像素,得到遮挡和/或超出边界的像素的估计光流。以上操作可以通过一个自注意力层实现,不再进行赘述。
在另一个实施例中,步骤300中,基于相邻两帧场景图像,确定相邻两帧之间场景的光流场可以包括:基于相邻两帧场景图像和光流估计模型确定相邻两帧之间场景的光流场。
其中,光流估计模型可以包括光流估计子模型和特征提取模型,特征提取模型用于提取各帧场景图像中的共有特征,光流估计子模型根据相邻两帧场景图像中的共有特征得到场景中各像素点的估计光流。光流估计子模型的构建方法可以参照上述实施例。进一步地,光流估计模型还可以采用有监督方式进行,例如可以使用EPE(End-Point-Error,终点误差)损失函数约束上述过程,定义为预测的每个像素的估计光流和真实值之间的欧式距离,损失函数值被定义为LEPE:
LEPE=||Vi-Vgt||2
其中,Vi表示估计光流,Vgt表示真实光流(为给定值),以损失函数值LEPE最小化为目标,调整光流估计模型的参数,直至LEPE符合要求,获得训练完成的光流估计模型,通过该光流估计模型获取的估计光流更可靠。
在一个实施例中,如图5所示,步骤310包括:通过特征提取模型提取每帧场景图像中场景的共有特征。其中,特征提取模型的训练方法包括步骤311-步骤314。
步骤311,获取训练数据集;训练数据集包括同一场景的连续白天图像和连续夜间图像。
其中,获取训练数据集具体可以包括:通过同一场景的非成对白天和黑夜图像训练白天-黑夜图像转换网络;利用训练完成的白天-黑夜图像转换网络生成连续白天图像对应的连续黑夜图像,以得到训练数据集。
现有的定位算法中都未考虑如夜间环境的低光环境,同时缺少黑夜训练数据集。可以理解的是,同一个场景的白天和黑夜成对图像实际上是无法获取到的,因此本实施例中,通过训练得到训练完成的白天-黑夜图像转换网络,以通过白天-黑夜图像转换网络得到同一场景的连续黑夜图像,用于训练特征提取模型,以完善夜间定位功能。
具体的,参照图6,首先使用Shift数据集提供非成对白天与黑夜图像,训练出一种可进行白天—黑夜之间图像转换的CycleGAN网络(即白天-黑夜图像转换网络),通过训练完成的CycleGAN转换网络,针对Shift数据集提供的连续白天图像,生成对应的连续黑夜图像,从而得到训练数据集。
步骤312,通过待训练特征提取模型,对同一场景的连续白天图像和连续夜间图像进行特征提取,获得白天共有特征、白天私有特征、夜间共有特征和夜间私有特征。
场景图像包括共有特征与私有特征两部分,如图7所示,对于给定两个连续的白天图像和两个连续的黑夜图像,可以使用共享权重的共有特征提取器提取白天和夜晚的共有特征,用于后续估计光流生成。使用白天私有特征提取器和夜晚私有特征提取器分别提取白天和夜晚的私有特征,用于辅助共有特征提取器。图像的私有特征和共有特征是互补的,完全不同的。因此,还利用直接正交损失和Gram正交损失来保证私有特征和不变特征是完全不同的。
对于直接正交损失,由于私有特征和共有特征的尺寸较大,首先采用一个具有1×1卷积核的卷积层减小复杂度,然后将简化后的特征调整成为一维向量,最后计算私有特征向量与不变特征向量的内积,即为正交性损失,损失被定义为Lf:
其中,V是将多维特征转换为一维特征的运算,vi和vp分别表示私有特征和共有特征,vi d表示白天共有特征,vi p表示夜间共有特征,vp d表示白天私有特征,vp n表示夜间私有特征。
对于Gram正交损失,Gram矩阵被广泛使用来标识特征的风格,而私有特征和共有特征具有不同的风格,因此,首先计算私有特征和不变特征的Gram矩阵ηp和ηi,然后将其调整成为一维向量,最后计算这些向量之间的正交损失,损失被定义为Lg:
最终的正交损失被定义为Lortho:Lortho=Lf+Lg。
步骤313,根据白天共有特征、白天私有特征、夜间共有特征和夜间私有特征进行白天图像重建和夜间图像重建,得到白天重建图像和夜间重建图像。
使用白天共有特征、白天私有特征进行白天图像重建,得到白天重建图像;使用夜间共有特征和夜间私有特征进行夜间图像重建,得到夜间重建图像。
步骤314,根据训练数据集、白天重建图像和夜间重建图像,计算损失函数值,并以损失函数值最小化为目标,更新待训练特征提取模型的参数,直至达到训练结束条件,获得训练完成的特征提取模型。
图像重建后,还需要使用重建损失函数计算损失函数值,可以定义损失函数值为Lrecons:
其中,Id表示白天图像,In表示夜间图像,Id表示白天重建图像,In表示夜间重建图像;x∈[1,N],N是Id和In的像素数量。
在上述网络中,充分考虑了白天与低光中存在的域转移,设计了域转移模块以分离出白天与低光图像中的共有特征和私有特征,同时使用共有特征进行光流估计。在特征匹配部分,改进了Swin Transformer中固定窗口大小,转而通过固定窗口数量以平衡性能与质量。针对于遮挡和超出边界的像素,通过计算特征的自相似性进而完成光流的传播,以生成最终的光流。
在另一个实施例中,特征提取模型可以包括共有特征提取子模型、私有特征提取子模型和图像重建子模型;根据训练数据集、共有特征提取子模型和私有特征提取子模型,得到同一场景的白天共有特征、白天私有特征、夜间共有特征和夜间私有特征;根据白天共有特征、白天私有特征、夜间共有特征、夜间私有特征和图像重建子模型进行白天图像重建和夜间图像重建,得到白天重建图像和夜间重建图像;最后根据训练数据集、白天重建图像和夜间重建图像,计算损失函数值,并以损失函数值最小化为目标,更新待训练特征提取模型的参数,直至达到训练结束条件,获得训练完成的特征提取模型。
在一个实施例中,实时采集无人机所在场景的场景图像,包括实时采集无人机所在场景的场景图像,并获得每帧场景图像的深度场。步骤300中,基于相邻两帧场景图像,确定无人机移动引起的场景的刚性光流场包括:根据相邻两帧场景图像的深度场、预设刚度场及相机姿态,确定场景图像中各像素点的刚性光流表达式;通过场景图像中各像素点的刚性光流表达式得到场景的刚性光流场。
为了得到刚性光流表达式,需要引入额外变量-刚度W(W=0或1),则可以将光流看作是与相机移动与场景结构相关的刚性流和描述一般物体运动的无约束流的组合。刚性流,即当某一像素点W=1时所产生的光流完全由相机移动以及场景的移动产生;所谓无约束流,即当W=0时,光流的产生除了包含一般的运动之外,还会包含物体本身形变产生的流。因此,为了准确估计无人机位置,本实施例中假设场景中所有物体都是刚性的,选用W=1时的刚性流完成后面的计算,极大的减小由环境因素带来的误差。
在获取到场景图像时,同时获取到了每帧图像的深度场,即可以确定每个像素点的深度,进而通过将刚性变换T应用于深度和刚度确定的场景中得到刚性流r,假设πt(θj)带包给定相机姿态下在时间t,将与θj相关联的三维点坐标投影到相机成像平面中的像素坐标,可以用下式表示:
则刚性流可以表示为:rt(j)=πt(θj)-πt-1(θj)
其中,rt(j)表示时刻t时像素j产生的刚性流,K表示相机内参矩阵,Ti表示时刻i时相机的刚性变换,θj表示像素j的深度,[xj,yj,1]T表示像素j的坐标,其中1表示成像平面的z坐标限制为1。
在一个实施例中,通过光流场和刚性光流场确定无人机的位置坐标,包括:根据光流场和刚性光流场之间的关系建模,以确定场景中相机的位姿变换矩阵;根据位姿变换矩阵确定场景中各像素点相关的相机姿态;根据相机姿态确定无人机的位置坐标。
每两帧之间的刚性流因为相机移动真实产生的,为是带有相机姿态的表达式,每两帧之间的估计光流是通过上述模型得到的,每个像素点在每两帧之间的刚性流和估计流之间具有一定的关系,因此建模后可以通过各个像素点确定出相机姿态,从而确定出无人机的位置。
本实施例中,无人机定位基于生成的光流和无人机上装载的RGB-D相机共同完成,在获取到场景图像后,基于上述实施例得到两帧之间的光流场和刚性光流场后可以对光流场和刚性光流场之间的关系建模。以其中一个像素为例,其刚性流rt(j)和估计流X之间进行建模:
其中,概率密度函数ρ(·||·)代表在估计流的条件下获得刚性流的概率,具体可以使用高斯分布计算。上式中,只有T是未知变量,最终可以建模为:
从而通过上式即可计算出相机的位姿变换矩阵(即刚性变换T),进而可以根据位姿变换矩阵确定相机姿态,根据相机姿态即可确定出相机位置坐标,即无人机的位置坐标,实现无人机定位。其中,根据位姿变换矩阵确定相机姿态以及确定相机位置坐标的方式不需要限定。
上述无人机定位方法,在数据集上,基于Shift数据集和CycleGAN算法,生成了成对的白天与低光数据集,用于光流估计网络的训练。在光流估计网络中,由于在同一场景下,白天与低光环境中生成的光流应相同,同时充分考虑了白天与低光中存在的域转移,设计了域转移模块,用于分离出白天与低光图像中的不变特征与私有特征,同时使用不变特征进行光流估计。在特征匹配部分,改进了Swin Transformer中固定窗口大小的做法,转而通过固定窗口数量以平衡性能与质量。针对于遮挡和超出边界的像素,通过计算特征的自相似性进而完成光流的传播,以生成最终的光流。基于生成的光流,通过对无人系统位置和估计光流之间进行建模,可以时刻估计无人系统的当前位置,实现无人系统的定位。该定位方法可应用于室内、室外环境,不受光线环境限制,适用范围广泛。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的无人机定位方法的无人机定位装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个无人机定位装置实施例中的具体限定可以参见上文中对于无人机定位方法的限定,在此不再赘述。
在一个实施例中,如图8所示,提供了一种无人机定位装置,包括:数据采集模块10、光流场确定模块20和定位模块30,其中:
数据采集模块10,用于实时采集无人机所在场景的场景图像。
光流场确定模块20,用于基于相邻两帧场景图像,确定场景中相邻两帧之间的光流场,以及无人机移动引起的场景的刚性光流场。
定位模块30,用于通过刚性光流场和光流场确定无人机的位置坐标。
在一个实施例中,光流场确定模块20,还用于提取相邻两帧场景图像中场景的共有特征;根据相邻两帧场景图像的共有特征得到场景的光流场。
在一个实施例中,光流场确定模块20,还用于对相邻两帧场景图像的共有特征进行特征增强,得到优化特征;对相邻两帧场景图像的优化特征进行特征匹配,获得匹配结果;基于匹配结果确定场景中各像素点的估计光流,得到光流场。
在一个实施例中,光流场确定模块20,还用于通过特征提取模型提取每帧场景图像中场景的共有特征。
在一个实施例中,光流场确定模块20,还用于获取训练数据集;训练数据集包括同一场景的连续白天图像和连续夜间图像;通过待训练特征提取模型,对同一场景的连续白天图像和连续夜间图像进行特征提取,获得白天共有特征、白天私有特征、夜间共有特征和夜间私有特征;根据白天共有特征、白天私有特征、夜间共有特征和夜间私有特征进行白天图像重建和夜间图像重建,得到白天重建图像和夜间重建图像;根据训练数据集、白天重建图像和夜间重建图像,计算损失函数值,并以损失函数值最小化为目标,更新待训练特征提取模型的参数,直至达到训练结束条件,获得训练完成的特征提取模型。
在一个实施例中,光流场确定模块20,还用于通过非成对白天和黑夜图像训练白天-黑夜图像转换网络;利用训练完成的白天-黑夜图像转换网络生成连续白天图像对应的连续黑夜图像,以得到训练数据集。
在一个实施例中,数据采集模块10,还用于实时采集无人机所在场景的场景图像,并获得每帧场景图像的深度场;光流场确定模块20,用于根据相邻两帧场景图像的深度场、预设刚度场及相机姿态,确定场景图像中各像素点的刚性光流表达式;通过场景图像中各像素点的刚性光流表达式得到场景的刚性光流场。
在一个实施例中,定位模块30,还用于根据光流场和刚性光流场之间的关系建模,以确定场景中相机的位姿变换矩阵;根据位姿变换矩阵确定场景的相机姿态;根据相机姿态确定无人机的位置坐标。
上述无人机定位装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于无人机中的处理器中,也可以以软件形式存储于无人机中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种无人机,其内部结构图可以如图9所示。该无人机包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该无人机的处理器用于提供计算和控制能力。该无人机的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该无人机的数据库用于存储处理器需要处理的数据,例如各帧场景图像及其深度场、各帧场景图像中的各像素点的估计光流、刚性流等等数据。该无人机的输入/输出接口用于处理器与外部设备之间交换信息。该无人机的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种无人机定位方法。
本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的无人机的限定,具体的无人机可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种无人机,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种无人机定位方法,其特征在于,所述方法包括:
实时采集无人机所在场景的场景图像;
基于相邻两帧所述场景图像,确定相邻两帧所述场景图像之间所述场景的光流场,以及所述无人机移动引起的所述场景的刚性光流场;
通过所述光流场和所述刚性光流场确定所述无人机的位置坐标。
2.根据权利要求1所述的方法,其特征在于,所述基于相邻两帧所述场景图像,确定相邻两帧之间所述场景的光流场,包括:
提取相邻两帧所述场景图像中所述场景的共有特征;
根据相邻两帧所述场景图像的共有特征得到所述场景的光流场。
3.根据权利要求2所述的方法,其特征在于,所述根据相邻两帧所述场景图像的共有特征得到所述场景的光流场,包括:
对相邻两帧所述场景图像的共有特征进行特征增强,得到优化特征;
对相邻两帧所述场景图像的优化特征进行特征匹配,获得匹配结果;
基于所述匹配结果确定所述场景中各像素点的估计光流,得到光流场。
4.根据权利要求2所述的方法,其特征在于,所述提取相邻两帧所述场景图像中所述场景的共有特征,包括:
通过特征提取模型提取每帧所述场景图像中所述场景的共有特征;其中,所述特征提取模型的训练方法,包括:
获取训练数据集;所述训练数据集包括同一场景的连续白天图像和连续夜间图像;
通过待训练特征提取模型,对同一所述场景的连续白天图像和连续夜间图像进行特征提取,获得白天共有特征、白天私有特征、夜间共有特征和夜间私有特征;
根据所述白天共有特征、所述白天私有特征、所述夜间共有特征和所述夜间私有特征进行白天图像重建和夜间图像重建,得到白天重建图像和夜间重建图像;
根据所述训练数据集、所述白天重建图像和所述夜间重建图像,计算损失函数值,并以所述损失函数值最小化为目标,更新所述待训练特征提取模型的参数,直至达到训练结束条件,获得训练完成的所述特征提取模型。
5.根据权利要求4所述的方法,其特征在于,所述获取训练数据集,包括:
通过同一场景的非成对白天和黑夜图像训练白天-黑夜图像转换网络;
利用训练完成的所述白天-黑夜图像转换网络生成连续白天图像对应的连续黑夜图像,以得到训练数据集。
6.根据权利要求1至5任意一项所述的方法,其特征在于:
所述实时采集无人机所在场景的场景图像,包括:实时采集无人机所在场景的场景图像,并获得每帧所述场景图像的深度场;
所述基于相邻两帧所述场景图像,确定所述无人机移动引起的所述场景的刚性光流场,包括:
根据相邻两帧所述场景图像的深度场、预设刚度场及相机姿态,确定所述场景图像中各像素点的刚性光流表达式;
通过所述场景图像中各像素点的刚性光流表达式得到所述场景的刚性光流场。
7.根据权利要求6所述的方法,其特征在于,所述通过所述光流场和所述刚性光流场确定所述无人机的位置坐标,包括:
根据所述光流场和所述刚性光流场之间的关系建模,以确定所述场景中相机的位姿变换矩阵;
根据所述位姿变换矩阵确定所述场景的相机姿态;
根据所述相机姿态确定所述无人机的位置坐标。
8.一种无人机定位装置,其特征在于,所述装置包括:
数据采集模块,用于实时采集无人机所在场景的场景图像;
光流场确定模块,用于基于相邻两帧所述场景图像,确定所述场景中相邻两帧之间的光流场,以及所述无人机移动引起的所述场景的刚性光流场;
定位模块,用于通过所述刚性光流场和所述光流场确定所述无人机的位置坐标。
9.一种无人机,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211734829.5A CN116385532A (zh) | 2022-12-31 | 2022-12-31 | 无人机定位方法、装置、无人机和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211734829.5A CN116385532A (zh) | 2022-12-31 | 2022-12-31 | 无人机定位方法、装置、无人机和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116385532A true CN116385532A (zh) | 2023-07-04 |
Family
ID=86973811
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211734829.5A Pending CN116385532A (zh) | 2022-12-31 | 2022-12-31 | 无人机定位方法、装置、无人机和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116385532A (zh) |
-
2022
- 2022-12-31 CN CN202211734829.5A patent/CN116385532A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102126724B1 (ko) | 포인트 클라우드 데이터를 복구하기 위한 방법 및 장치 | |
CN111862126B (zh) | 深度学习与几何算法结合的非合作目标相对位姿估计方法 | |
US20210390329A1 (en) | Image processing method, device, movable platform, unmanned aerial vehicle, and storage medium | |
Lin et al. | Autonomous aerial navigation using monocular visual‐inertial fusion | |
RU2713611C2 (ru) | Способ моделирования трехмерного пространства | |
Bianchi et al. | UAV localization using autoencoded satellite images | |
CN110969648B (zh) | 一种基于点云序列数据的3d目标跟踪方法及系统 | |
JP7439153B2 (ja) | 全方位場所認識のためのリフトされたセマンティックグラフ埋め込み | |
CN112184768B (zh) | 基于激光雷达的sfm重建方法、装置和计算机设备 | |
US11948309B2 (en) | Systems and methods for jointly training a machine-learning-based monocular optical flow, depth, and scene flow estimator | |
CN115900710A (zh) | 基于视觉信息的动态环境导航方法 | |
CN113283525A (zh) | 一种基于深度学习的图像匹配方法 | |
CN111812978B (zh) | 一种多无人机协作slam方法与系统 | |
Saleem et al. | Neural network-based recent research developments in SLAM for autonomous ground vehicles: A review | |
CN116097307A (zh) | 图像的处理方法及相关设备 | |
CN104463962B (zh) | 基于gps信息视频的三维场景重建方法 | |
CN117132737B (zh) | 一种三维建筑模型构建方法、系统及设备 | |
US20220164595A1 (en) | Method, electronic device and storage medium for vehicle localization | |
CN113112547A (zh) | 机器人及其重定位方法、定位装置及存储介质 | |
Li et al. | Monocular 3-D Object Detection Based on Depth-Guided Local Convolution for Smart Payment in D2D Systems | |
US20230105331A1 (en) | Methods and systems for semantic scene completion for sparse 3d data | |
CN116385532A (zh) | 无人机定位方法、装置、无人机和存储介质 | |
Ding et al. | Stereo vision SLAM-based 3D reconstruction on UAV development platforms | |
KR102615412B1 (ko) | 비주얼 로컬라이제이션을 수행하기 위한 방법 및 장치 | |
Shen et al. | Incremental learning-based land mark recognition for mirco-UAV autonomous landing |
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 |