CN111461998A - 一种环境重建方法及装置 - Google Patents
一种环境重建方法及装置 Download PDFInfo
- Publication number
- CN111461998A CN111461998A CN202010166067.8A CN202010166067A CN111461998A CN 111461998 A CN111461998 A CN 111461998A CN 202010166067 A CN202010166067 A CN 202010166067A CN 111461998 A CN111461998 A CN 111461998A
- Authority
- CN
- China
- Prior art keywords
- image data
- pose estimation
- points
- estimation result
- point
- 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 59
- 239000011159 matrix material Substances 0.000 claims abstract description 54
- 238000012545 processing Methods 0.000 claims abstract description 51
- 238000000746 purification Methods 0.000 claims abstract description 12
- 238000004422 calculation algorithm Methods 0.000 claims description 38
- 238000004590 computer program Methods 0.000 claims description 23
- 238000001514 detection method Methods 0.000 claims description 15
- 238000005457 optimization Methods 0.000 claims description 8
- 230000004807 localization Effects 0.000 claims description 6
- 230000011218 segmentation Effects 0.000 claims description 4
- 238000012360 testing method Methods 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000004044 response Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/80—Geometric correction
-
- 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
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B29/00—Maps; Plans; Charts; Diagrams, e.g. route diagram
- G09B29/003—Maps
- G09B29/005—Map projections or methods associated specifically therewith
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Mathematical Physics (AREA)
- Business, Economics & Management (AREA)
- Educational Administration (AREA)
- Educational Technology (AREA)
- Image Analysis (AREA)
- Studio Devices (AREA)
Abstract
本申请适用于即时定位技术领域,提供了一种环境重建方法,包括:对影像数据进行畸变处理,获得畸变处理后的影像数据,对畸变处理后的影像数据进行检测获得特征点,并对特征点进行特征提纯获得本质矩阵,根据本质矩阵进行初步位姿估计获得初步位姿估计结果,然后对初步位姿估计结果进行优化,根据优化后的位姿估计结果进行环境重建,获得定位轨迹地图,本申请充分融合了特征法和像素梯度跟踪的前端视觉里程计方法的优点,减小了计算量,降低了设备成本,进而提高了图像的有效信息利用率和算法的运行效率。
Description
技术领域
本申请属于即时定位技术领域,尤其涉及一种环境重建方法及装置。
背景技术
随着无人驾驶领域的飞速发展,即时定位功能的重要性越来越强。
现有的即时定位技术通常采用特征点法和直接法,是较为成熟的即时定位和环境重建方法。
然而,通过上述方法进行即时定位和环境重建容易由于计算量大,设备成本高、鲁棒性低产生计算速度慢、精确度不高,无法满足市场日益增长的需求。
发明内容
本申请实施例提供了一种环境重建方法及装置,可以解决现有技术计算量大,设备成本高、鲁棒性低产生计算速度慢、精确度不高,无法满足市场日益增长的需求的问题。
第一方面,本申请实施例提供了一种环境重建方法,包括:
对影像数据进行畸变处理,获得畸变处理后的影像数据;
对所述畸变处理后的影像数据进行检测,获得特征点;
对所述特征点进行特征提纯,获得本质矩阵;
根据所述本质矩阵进行初步位姿估计,获得初步位姿估计结果;
对所述初步位姿估计结果进行优化,根据优化后的位姿估计结果进行环境重建,获得定位轨迹地图。
第二方面,本申请实施例提供了一种环境重建装置,包括:
畸变处理模块,用于对影像数据进行畸变处理,获得畸变处理后的影像数据;
特征点检测模块,用于对所述畸变处理后的影像数据进行检测,获得特征点;
特征提纯模块,用于对所述特征点进行特征提纯,获得本质矩阵;
位姿估计模块,用于根据所述本质矩阵进行初步位姿估计,获得初步位姿估计结果;
环境重建模块,用于对所述初步位姿估计结果进行优化,根据优化后的位姿估计结果进行环境重建,获得定位轨迹地图。
第三方面,本申请实施例提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面中任一项所述的环境重建方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述第一方面中任一项所述的环境重建方法。
第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面中任一项所述的环境重建方法。
可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
本申请实施例通过对畸变处理后的影像数据进行检测获得特征点,对特征点进行特征提纯获得本质矩阵,根据本质矩阵进行初步位姿估计并优化,以实现纯视觉传感器定位建图,获得定位轨迹地图,充分融合了特征法和像素梯度跟踪的前端视觉里程计方法的优点,减小了计算量,降低了设备成本,进而提高了图像的有效信息利用率和算法的运行效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的环境重建方法的流程示意图;
图2是本申请一实施例提供的特征像素梯度测距算法的流程图;
图3是本申请一实施例提供的关键点定位的应用场景示意图;
图4是本申请一实施例提供的位姿优化的应用场景示意图;
图5是本申请另一实施例提供的定位轨迹地图结果示意图;
图6是本申请一实施例提供的环境重建装置的结构示意图;
图7是本申请实施例提供的终端设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
本申请实施例提供的环境重建方法可以应用于手机、平板电脑、可穿戴设备、车载设备、增强现实(Augmented Reality,AR)/虚拟现实(Virtual Reality,VR)设备、笔记本电脑、超级移动个人计算机(Ultra-Mobile Personal Computer,UMPC)、上网本、个人数字助理(Personal Digital Assistant,PDA)等终端设备上,本申请实施例对终端设备的具体类型不作任何限制。
例如,所述终端设备可以是WLAN中的站点(STAION,ST),可以是蜂窝电话、无绳电话、会话启动协议(Session InitiationProtocol,SIP)电话、无线本地环路(WirelessLocal Loop,WLL)站、个人数字处理(Personal Digital Assistant,PDA)设备、具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它处理设备、车载设备、车联网终端、电脑、膝上型计算机、手持式通信设备、手持式计算设备、卫星无线设备、无线调制解调器卡、电视机顶盒(Set Top Box,STB)、用户驻地设备(Customer Premise Equipment,CPE)和/或用于在无线系统上进行通信的其它设备以及下一代通信系统,例如,5G网络中的移动终端或者未来演进的公共陆地移动网络(Public Land Mobile Network,PLMN)网络中的移动终端等。
图1示出了本申请提供的环境重建方法的示意性流程图,作为示例而非限定,该方法可以应用于上述任一终端设备中。
S101、对影像数据进行畸变处理,获得畸变处理后的影像数据;
在具体应用中,获取通过前端相机获取到的影像数据,并对影像数据进行畸变处理,获得畸变处理后的影像数据。其中,相机可以是单目相机、双目相机或者深度相机;影像数据可以是视频或多个连续帧的图片。畸变处理是指通过获取图像的畸变参数,以纠正由于相机前方透镜对成像过程中的光线传播产生影响而使得图像产生的畸变现象,例如直线变成曲线等。在相机坐标系中的任意一个点P(X,Y,Z)上可能存在的径向畸变和切向畸变。
S102、对所述畸变处理后的影像数据进行检测,获得特征点;
在具体应用中,通过第一预设算法,在畸变处理后的影像数据的相邻两帧图像之间进行初步的特征点定位;包括:1、确定畸变处理后的影像数据中的关键点;2、在关键点满足条件时,根据像素梯度判定角点检测成功的关键点是否追踪成功,判定角点检测成功且追踪成功的关键点为特征点。
S103、对所述特征点进行特征提纯,获得本质矩阵;
在具体应用中,可通过第三预设算法对所有的特征点进行特征提纯,获得影像数据的本质矩阵。第三预设算法包括但不限于随机采样一致性算法(Random SampleConsensus,RANSAC)。
其中,本质矩阵是指归一化图像坐标下的基础矩阵的特殊形式,归一化图像坐标为当前像素坐标左乘相机矩阵的逆。
由于在像素点的匹配和跟踪过程中,通常会出现一些错误的点的对应关系。可通过第三预设算法(如随机采样一致性算法)处理异常值,在每次迭代中,从任一组对应关系中随机抽取五个点,根据上述五个点之间的对应关系计算基本矩阵,并通过获得的基本矩阵检查除上述五个点以外的其他点是否为异常值点。在预设次数的迭代后终止运算,并获取最大点数的本质矩阵作为影像数据的本质矩阵。
其中,对应关系是指对环境中的任意一个物体在连续拍摄后,该物体的特征点在多帧连续的图像中呈现出一条的线,并且对该物体的每个特征点都跟踪成功,则上述线即为该物体的特征点之间的对应关系。
S104、根据所述本质矩阵进行初步位姿估计,获得初步位姿估计结果;
在具体应用中,设定本质矩阵表示为E=[t]×R,其中R表示旋转矩阵,[t]×表示t的反对称矩阵。若第k帧相机矩阵表示为P-[I|0]的时候,通过公式(1)对本质矩阵进行奇异值分解(Skngular Value Decomposktkon,SVD),可获得第k-1帧的摄像机矩阵为[R|t],获得相机的位姿变换量(也即初步位姿估计结果),包括:旋转矩阵和平移矩阵Rpos tpos。
E=U∑VT
[t]x=VW∑VT
R=UW-1VT (1)。
S105、对所述初步位姿估计结果进行优化,根据优化后的位姿估计结果进行环境重建,获得定位轨迹地图。
在具体应用中,对获得的初步位姿估计结果进行深层过滤,根据短时间内相邻帧特征点的亮度值变化不大,可计算获得任意一个特征点在周围的像素梯度光度误差,通过第二预设算法不断优化位姿,获得优化后的位姿估计结果,并进行环境重建获得定位轨迹地图。其中,第二预设算法包括但不限于高斯牛顿算法。
在本实施例中,上述步骤S101至S105可通过特征像素梯度测距算法(FeaturePixel Gradient Odometry,FPGO)实现。
图2示例性的示出了FPGO算法的流程图。
在一个实施例中,所述步骤S101,包括:
计算所述影像数据的畸变参数;
根据所述畸变参数对所述影像数据进行去畸变处理,获得畸变处理后的影像数据。
在具体应用中,通过将影像数据的三维空间点投影到归一化像素平面上,设定归一化坐标为(x,y)T。
通过公式(2)对归一化平面上的任意一个点进行径向畸变和切向畸变纠正,其中r表示点p距离系原点的距离。
然后通过内参数矩阵将畸变纠正后的点投影到像素平面进行去畸变处理(如公式(3)),获得该点在平整图像上的正确位置,直接还原实际拍摄的环境信息:
在一个实施例中,所述步骤S102,包括:
S1021、对所述影像数据进行关键点定位,确定关键点;
S1022、通过第一预设算法对关键点进行角点匹配,获得匹配成功的关键点;其中,第一预设算法包括加速分割测试特征检测算法;
S1023、计算匹配成功的关键点的像素梯度;
S1024、获取像素梯度满足预设梯度条件的匹配成功的关键点作为特征点。
在具体应用中,第一预设算法包括但不限于加速分割测试特征检测(Featuresfrom Accelerated Segment Test,FAST)算法。通过以任一点作为中心点,获取与中心点之间距离为N的像素点作为相邻像素点,获取相邻像素点和中心点的灰度值的差值大于或等于预设灰度阈值的数量,若数量大于或等于预设数量阈值,则判定该中心点为关键点,并通过第一预设算法对关键点进行角点匹配,获取所有角点匹配的成功的关键点的像素梯度,获取像素梯度满足预设梯度条件的匹配成功的关键点作为特征点。其中,预设灰度阈值和预设数量阈值可根据实际情况进行具体设定。例如,设定预设灰度阈值为所有相邻像素点的平均值;设定预设数量阈值为75%的相邻像素点的数量。
由于图像函数f(x,y)在任一点(x,y)的梯度是一个具有大小和方向的矢量,在此,设为Gx和Gy分别表示x方向和y方向的梯度,则任一点的梯度的矢量可以表示为:
其中,梯度方向表示为:
φ(x,y)=arctan(Gy/Gx) (5);
梯度幅值表示为:
例如,通过第一预设算法(如FAST算法)对每个点进行角点检测,获取角点检测成功的关键点,计算任意相邻两帧关键点之间的像素梯度方向大小和梯度幅值的大小的差值,若任意相邻两帧关键点之间的像素梯度方向大小的差值小于预设梯度阈值,并且任意相邻两帧关键点之间的梯度幅值大小的差值小于预设幅值阈值,则确定角点检测成功的关键点追踪成功,判定该关键点为特征点,可进行下一步计算。其中,预设梯度条件包括但不限于预设梯度阈值和预设幅值阈值,预设梯度阈值和预设幅值阈值可根据实际情况进行具体设定。例如,设定预设梯度阈值和预设幅值阈值为第k帧的30%,若第k帧影像数据和第k-1帧影像数据中,角点检测成功的关键点之间的像素梯度方向大小的差值为第k帧像素梯度方向的25%,且关键点之间的梯度幅值大小的差值的差值为20%,则确定该关键点追踪成功,判定该关键点为特征点。
在一个实施例中,所述步骤S102之后,还包括:
若所述关键点的数量小于预设数目,则返回执行对所述畸变处理后的影像数据进行检测,获得特征点及之后的步骤。
在具体应用中,在对影像数据进行像素梯度跟踪时,由于相机视野在每个时刻的变化不同,容易出现丢失关键点的现象,因此,通常设定预设数目以防止关键点的数量过小。若关键点的数量小于预设数目,则返回执行上述步骤S102及之后的步骤。其中,预设数目可根据实际情况进行具体设定;例如,设定预设数目为3000,若检测到的关键点的数量为2000,则系统自动返回执行上述步骤S102及之后的步骤。
在一个实施例中,所述步骤S1021,包括:
以影像数据的任一像素点为中心点,获取与中心点之间距离为N的像素点作为相邻像素点;其中,N为大于0的整数;
获取灰度值与中心点灰度值的差值大于预设灰度阈值的相邻像素点的数量;
若所述数量大于预设数量阈值,则判定所述中心点为关键点。
在具体应用中,如图3所示,假设有一个点p为中心点。
首先,获取与中心点P之间的距离为N的所有相邻点像素点,(如图3中,设定N为3,故中心点P有16个相邻像素点),计算上述所有相邻像素点的灰度值与中心点的灰度值的差值,获取与中心点灰度值的差值大于预设灰度阈值的相邻像素点的数量,若数量大于预设数量阈值,则判定该中心点为关键点。其中,预设灰度阈值和预设数量阈值可根据实际情况进行具体设定。例如,设定预设灰度阈值为所有相邻像素点的平均值;设定预设数量阈值为75%的相邻像素点的数量。若某中心点的相邻像素点的个数为16,则预设数量阈值为60*75%=12,若在该中心点的16个相邻像素点中存在14个相邻像素点的灰度值与中心点的灰度值的差值大于所有相邻像素点的平均值,则判定该中心点为关键点。
作为示例而非限定,为提高计算速度,可首先选取主要相邻像素点,然后通过获取主要相邻像素点与中心点的灰度值的差值的数量并进行比较,以判定中心点是否为关键点。例如,可每隔3个相邻像素点设定一个主要相邻像素点,如图3中的1、5、9和13等四个点,若上述四个主要相邻像素点中有3个主要相邻像素点灰度值与中心点灰度值的差值大于所有相邻像素点的平均值,则判定该中心点为关键点。
在一个实施例中,所述步骤S104,包括:
确定第k帧影像数据和第k-1帧影像数据中特征点的对应关系;其中,k为大于0的整数;
根据所述本质矩阵对所述对应关系进行计算,获得初步位姿估计结果。
在具体应用中,通过检测第k帧影像数据的特征点和第k-1帧影像数据中特征点,可确定任两帧中的所有特征点之间的对应关系,并通过本质矩阵对预设特征点数目的特征点之间的对应关系进行计算,获得初步位姿估计结果。其中,预设特征点数目可根据实际情况进行具体设定,例如,设定预设特征点数目为5,则通过本质矩阵对两个连续帧中的五个特征点之间的对应关系进行计算,获得初步位姿估计结果。
在一个实施例中,所述步骤S105,包括:
根据第二预设算法对所述初步位姿估计结果进行残差优化处理,获得优化后的位姿估计结果;其中,第二预设算法包括高斯牛顿算法;
根据优化后的位姿估计结果进行环境重建,获得定位轨迹地图。
在具体应用中,如图4所示,假设相邻两帧之间的初步位姿估计结果为:Tk,k-1,将其初始化为单位矩阵。根据上述步骤S101至S104已获得第k-1帧影像数据的特征点的位置和特征点的深度。设定Ik-1中任一特征点位置为(u,v),深度为d,通过初步位姿估计结果Tk,k-1,获得该特征点在当前帧的三维坐标pk,通过相机内参将该特征点投影到Ik的图像平面(u′,v′),完成重投影。由于短时间内相邻帧的特征点的亮度值变化不大,可获得该特征点在周围的像素梯度光度误差,并通过第二预设算法多次优化位姿使得残差最小,如公式(7)至公式(9):
计算得到增量方程,迭代增量为ξ:
JTJξ=-JT6I(0) (8);
其中的雅可比矩阵为图像残差对李代数的求导,通过如下链式法则得到,完成对初步位姿结果的优化;
通过本质矩阵可以得到两帧影像数据的相对位置关系,在假设第k-1幅图像的相机矩阵为基础矩阵的情况下,第k幅图像可对应相机矩阵。因此我们对每次计算的相对位姿变化量进行累加,可获得最终的旋转矩阵和平移矩阵Rpos tpos。
Rpos=RRpos
tpos=tpos+tRpos (10);
从而得到定位轨迹,定位轨迹地图结果如图5所示。
本实施例通过对畸变处理后的影像数据进行检测获得特征点,对特征点进行特征提纯获得本质矩阵,根据本质矩阵进行初步位姿估计并优化,以实现纯视觉传感器定位建图,获得定位轨迹地图,充分融合了特征法和像素梯度跟踪的前端视觉里程计方法的优点,减小了计算量,降低了设备成本,进而提高了图像的有效信息利用率和算法的运行效率。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
对应于上文实施例所述的环境重建方法,图6示出了本申请实施例提供的环境重建装置的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。
参照图6,该环境重建装置100包括:
畸变处理模块101,用于对影像数据进行畸变处理,获得畸变处理后的影像数据;
特征点检测模块102,用于对所述畸变处理后的影像数据进行检测,获得特征点;
特征提纯模块103,用于对所述特征点进行特征提纯,获得本质矩阵;
位姿估计模块104,用于根据所述本质矩阵进行初步位姿估计,获得初步位姿估计结果;
环境重建模块105,用于对所述初步位姿估计结果进行优化,根据优化后的位姿估计结果进行环境重建,获得定位轨迹地图。
在一个实施例中,所述对畸变处理模块101,包括:
第一计算单元,用于计算所述影像数据的畸变参数;
畸变处理单元,用于根据所述畸变参数对所述影像数据进行去畸变处理,获得畸变处理后的影像数据。
在一个实施例中,所述特征点检测模块102,包括:
关键点定位单元,用于对所述影像数据进行关键点定位,确定关键点;
角点匹配单元,用于通过第一预设算法对关键点进行角点匹配,获得匹配成功的关键点;其中,第一预设算法包括加速分割测试特征检测算法;
第二计算单元,用于计算匹配成功的关键点的像素梯度;
获取单元,用于获取像素梯度满足预设梯度条件的匹配成功的关键点作为特征点。
在一个实施例中,所述关键点定位单元,包括:
第一获取子单元,用于以影像数据的任一像素点为中心点,获取与中心点之间距离为N的像素点作为相邻像素点;其中,N为大于0的整数;
第二获取子单元,用于获取灰度值与中心点灰度值的差值大于预设灰度阈值的相邻像素点的数量;
判断子单元,用于若所述数量大于预设数量阈值,则判定所述中心点为关键点。
在一个实施例中,所述环境重建装置100,包括:
返回执行模块,用于若所述关键点的数量小于预设数目,则返回执行对所述畸变处理后的影像数据进行检测,获得特征点及之后的步骤。
在一个实施例中,所述位姿估计模块104,包括:
确定单元,用于确定第k帧影像数据和第k-1帧影像数据中特征点的对应关系;其中,k为大于0的整数;
第三计算单元,用于根据所述本质矩阵对所述对应关系进行计算,获得初步位姿估计结果。
在一个实施例中,所述环境重建模块105,包括:
位姿优化单元,用于根据第二预设算法对所述初步位姿估计结果进行残差优化处理,获得优化后的位姿估计结果;其中,第二预设算法包括高斯牛顿算法;
环境重建单元,用于根据优化后的位姿估计结果进行环境重建,获得定位轨迹地图。
本实施例通过对畸变处理后的影像数据进行检测获得特征点,对特征点进行特征提纯获得本质矩阵,根据本质矩阵进行初步位姿估计并优化,以实现纯视觉传感器定位建图,获得定位轨迹地图,充分融合了特征法和像素梯度跟踪的前端视觉里程计方法的优点,减小了计算量,降低了设备成本,进而提高了图像的有效信息利用率和算法的运行效率。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
图7为本申请一实施例提供的终端设备的结构示意图。如图7所示,该实施例的终端设备7包括:至少一个处理器70(图7中仅示出一个)处理器、存储器71以及存储在所述存储器71中并可在所述至少一个处理器70上运行的计算机程序72,所述处理器70执行所述计算机程序72时实现上述任意各个环境重建方法实施例中的步骤。
所述终端设备7可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。该终端设备可包括,但不仅限于,处理器70、存储器71。本领域技术人员可以理解,图7仅仅是终端设备7的举例,并不构成对终端设备7的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。
所称处理器70可以是中央处理单元(Central Processing Unit,CPU),该处理器70还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器71在一些实施例中可以是所述终端设备7的内部存储单元,例如终端设备7的硬盘或内存。所述存储器71在另一些实施例中也可以是所述终端设备7的外部存储设备,例如所述终端设备7上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字卡(Secure Digital,SD),闪存卡(Flash Card)等。进一步地,所述存储器71还可以既包括所述终端设备7的内部存储单元也包括外部存储设备。所述存储器71用于存储操作系统、应用程序、引导装载程序(BootLoader)、数据以及其他程序等,例如所述计算机程序的程序代码等。所述存储器71还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例还提供了一种终端设备,该终端设备包括:至少一个处理器、存储器以及存储在所述存储器中并可在所述至少一个处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任意各个方法实施例中的步骤。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在移动终端上运行时,使得移动终端执行时实现可实现上述各个方法实施例中的步骤。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random AccessMemory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/网络设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/网络设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (10)
1.一种环境重建方法,其特征在于,包括:
对影像数据进行畸变处理,获得畸变处理后的影像数据;
对所述畸变处理后的影像数据进行检测,获得特征点;
对所述特征点进行特征提纯,获得本质矩阵;
根据所述本质矩阵进行初步位姿估计,获得初步位姿估计结果;
对所述初步位姿估计结果进行优化,根据优化后的位姿估计结果进行环境重建,获得定位轨迹地图。
2.如权利要求1所述的环境重建方法,其特征在于,所述对影像数据进行畸变处理,获得畸变处理后的影像数据,包括:
计算所述影像数据的畸变参数;
根据所述畸变参数对所述影像数据进行去畸变处理,获得畸变处理后的影像数据。
3.如权利要求1所述的环境重建方法,其特征在于,所述对所述畸变处理后的影像数据进行检测,获得特征点,包括:
对所述影像数据进行关键点定位,确定关键点;
通过第一预设算法对关键点进行角点匹配,获得匹配成功的关键点;其中,第一预设算法包括加速分割测试特征检测算法;
计算匹配成功的关键点的像素梯度;
获取像素梯度满足预设梯度条件的匹配成功的关键点作为特征点。
4.如权利要求3所述的环境重建方法,其特征在于,所述对所述影像数据进行关键点定位,确定关键点,包括:
以影像数据的任一像素点为中心点,获取与中心点之间距离为N的像素点作为相邻像素点;其中,N为大于0的整数;
获取灰度值与中心点灰度值的差值大于预设灰度阈值的相邻像素点的数量;
若所述数量大于预设数量阈值,则判定所述中心点为关键点。
5.如权利要求1所述的环境重建方法,其特征在于,所述对所述畸变处理后的影像数据进行关键点定位,确定关键点之后,包括:
若所述关键点的数量小于预设数目,则返回执行对所述畸变处理后的影像数据进行检测,获得特征点及之后的步骤。
6.如权利要求1所述的环境重建方法,其特征在于,所述根据所述本质矩阵进行初步位姿估计,获得初步位姿估计结果,包括:
确定第k帧影像数据和第k-1帧影像数据中特征点的对应关系;其中,k为大于0的整数;
根据所述本质矩阵对所述对应关系进行计算,获得初步位姿估计结果。
7.如权利要求1所述的环境重建方法,其特征在于,所述对所述初步位姿估计结果进行优化,根据优化后的位姿估计结果进行环境重建,获得定位轨迹地图,包括:
根据第二预设算法对所述初步位姿估计结果进行残差优化处理,获得优化后的位姿估计结果;其中,第二预设算法包括高斯牛顿算法;
根据优化后的位姿估计结果进行环境重建,获得定位轨迹地图。
8.一种环境重建装置,其特征在于,包括:
畸变处理模块,用于对影像数据进行畸变处理,获得畸变处理后的影像数据;
特征点检测模块,用于对所述畸变处理后的影像数据进行检测,获得特征点;
特征提纯模块,用于对所述特征点进行特征提纯,获得本质矩阵;
位姿估计模块,用于根据所述本质矩阵进行初步位姿估计,获得初步位姿估计结果;
环境重建模块,用于对所述初步位姿估计结果进行优化,根据优化后的位姿估计结果进行环境重建,获得定位轨迹地图。
9.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010166067.8A CN111461998A (zh) | 2020-03-11 | 2020-03-11 | 一种环境重建方法及装置 |
PCT/CN2020/139758 WO2021179745A1 (zh) | 2020-03-11 | 2020-12-26 | 一种环境重建方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010166067.8A CN111461998A (zh) | 2020-03-11 | 2020-03-11 | 一种环境重建方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111461998A true CN111461998A (zh) | 2020-07-28 |
Family
ID=71685740
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010166067.8A Pending CN111461998A (zh) | 2020-03-11 | 2020-03-11 | 一种环境重建方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111461998A (zh) |
WO (1) | WO2021179745A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111784784A (zh) * | 2020-09-07 | 2020-10-16 | 蘑菇车联信息科技有限公司 | Imu内参的标定方法、装置、电子设备仪及存储介质 |
CN112541423A (zh) * | 2020-12-09 | 2021-03-23 | 北京理工大学重庆创新中心 | 一种同步定位与地图构建方法和系统 |
WO2021179745A1 (zh) * | 2020-03-11 | 2021-09-16 | 中国科学院深圳先进技术研究院 | 一种环境重建方法及装置 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116229037B (zh) * | 2023-04-24 | 2023-07-28 | 深圳锐盟半导体有限公司 | 一种图像识别方法、系统、装置及存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102435188A (zh) * | 2011-09-15 | 2012-05-02 | 南京航空航天大学 | 一种用于室内环境的单目视觉/惯性全自主导航方法 |
CN104374395A (zh) * | 2014-03-31 | 2015-02-25 | 南京邮电大学 | 基于图的视觉slam方法 |
CN106920259A (zh) * | 2017-02-28 | 2017-07-04 | 武汉工程大学 | 一种定位方法及系统 |
CN107833249A (zh) * | 2017-09-29 | 2018-03-23 | 南京航空航天大学 | 一种基于视觉引导的舰载机着陆过程姿态预估方法 |
CN108090954A (zh) * | 2017-12-15 | 2018-05-29 | 南方医科大学南方医院 | 基于图像特征的腹腔环境地图重建与腹腔镜定位的方法 |
CN108648270A (zh) * | 2018-05-12 | 2018-10-12 | 西北工业大学 | 基于eg-slam的无人机实时三维场景重建方法 |
CN109871024A (zh) * | 2019-01-04 | 2019-06-11 | 中国计量大学 | 一种基于轻量级视觉里程计的无人机位姿估计方法 |
CN110108258A (zh) * | 2019-04-09 | 2019-08-09 | 南京航空航天大学 | 一种单目视觉里程计定位方法 |
CN110503688A (zh) * | 2019-08-20 | 2019-11-26 | 上海工程技术大学 | 一种用于深度相机的位姿估计方法 |
WO2019233090A1 (zh) * | 2018-06-07 | 2019-12-12 | 驭势科技(北京)有限公司 | 一种同时定位与建图的方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9946264B2 (en) * | 2016-03-22 | 2018-04-17 | Sharp Laboratories Of America, Inc. | Autonomous navigation using visual odometry |
CN109813334B (zh) * | 2019-03-14 | 2023-04-07 | 西安工业大学 | 基于双目视觉的实时高精度车辆里程计算方法 |
CN111461998A (zh) * | 2020-03-11 | 2020-07-28 | 中国科学院深圳先进技术研究院 | 一种环境重建方法及装置 |
-
2020
- 2020-03-11 CN CN202010166067.8A patent/CN111461998A/zh active Pending
- 2020-12-26 WO PCT/CN2020/139758 patent/WO2021179745A1/zh active Application Filing
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102435188A (zh) * | 2011-09-15 | 2012-05-02 | 南京航空航天大学 | 一种用于室内环境的单目视觉/惯性全自主导航方法 |
CN104374395A (zh) * | 2014-03-31 | 2015-02-25 | 南京邮电大学 | 基于图的视觉slam方法 |
CN106920259A (zh) * | 2017-02-28 | 2017-07-04 | 武汉工程大学 | 一种定位方法及系统 |
CN107833249A (zh) * | 2017-09-29 | 2018-03-23 | 南京航空航天大学 | 一种基于视觉引导的舰载机着陆过程姿态预估方法 |
CN108090954A (zh) * | 2017-12-15 | 2018-05-29 | 南方医科大学南方医院 | 基于图像特征的腹腔环境地图重建与腹腔镜定位的方法 |
CN108648270A (zh) * | 2018-05-12 | 2018-10-12 | 西北工业大学 | 基于eg-slam的无人机实时三维场景重建方法 |
WO2019233090A1 (zh) * | 2018-06-07 | 2019-12-12 | 驭势科技(北京)有限公司 | 一种同时定位与建图的方法及装置 |
CN109871024A (zh) * | 2019-01-04 | 2019-06-11 | 中国计量大学 | 一种基于轻量级视觉里程计的无人机位姿估计方法 |
CN110108258A (zh) * | 2019-04-09 | 2019-08-09 | 南京航空航天大学 | 一种单目视觉里程计定位方法 |
CN110503688A (zh) * | 2019-08-20 | 2019-11-26 | 上海工程技术大学 | 一种用于深度相机的位姿估计方法 |
Non-Patent Citations (1)
Title |
---|
卢涛: "面向户外AR应用的视觉SLAM系统研究与实现", no. 2, pages 032 - 36 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021179745A1 (zh) * | 2020-03-11 | 2021-09-16 | 中国科学院深圳先进技术研究院 | 一种环境重建方法及装置 |
CN111784784A (zh) * | 2020-09-07 | 2020-10-16 | 蘑菇车联信息科技有限公司 | Imu内参的标定方法、装置、电子设备仪及存储介质 |
CN111784784B (zh) * | 2020-09-07 | 2021-01-05 | 蘑菇车联信息科技有限公司 | Imu内参的标定方法、装置、电子设备仪及存储介质 |
CN112541423A (zh) * | 2020-12-09 | 2021-03-23 | 北京理工大学重庆创新中心 | 一种同步定位与地图构建方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2021179745A1 (zh) | 2021-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111145238B (zh) | 单目内窥镜图像的三维重建方法、装置及终端设备 | |
CN110322500B (zh) | 即时定位与地图构建的优化方法及装置、介质和电子设备 | |
CN110246147B (zh) | 视觉惯性里程计方法、视觉惯性里程计装置及移动设备 | |
CN111461998A (zh) | 一种环境重建方法及装置 | |
CN107292949B (zh) | 场景的三维重建方法、装置及终端设备 | |
CN111428575B (zh) | 一种基于孪生网络的针对模糊目标的跟踪方法 | |
CN110070598B (zh) | 用于3d扫描重建的移动终端及其进行3d扫描重建方法 | |
CN112435193B (zh) | 一种点云数据去噪的方法、装置、存储介质和电子设备 | |
CN110349212B (zh) | 即时定位与地图构建的优化方法及装置、介质和电子设备 | |
CN112652020B (zh) | 一种基于AdaLAM算法的视觉SLAM方法 | |
CN114187333A (zh) | 一种图像对齐方法、图像对齐装置及终端设备 | |
CN113763466B (zh) | 一种回环检测方法、装置、电子设备和存储介质 | |
CN112258647B (zh) | 地图重建方法及装置、计算机可读介质和电子设备 | |
CN110880160B (zh) | 图片帧超分方法、装置、终端设备及计算机可读存储介质 | |
CN112907657A (zh) | 一种机器人重定位方法、装置、设备及存储介质 | |
CN109816709B (zh) | 基于单目摄像头的深度估计方法、装置及设备 | |
CN115937839A (zh) | 一种大角度车牌图像识别方法、计算设备及存储介质 | |
CN115115530B (zh) | 一种图像去模糊的方法、装置、终端设备及介质 | |
CN115690845A (zh) | 一种运动轨迹预测方法及装置 | |
CN112288817B (zh) | 基于图像的三维重建处理方法及装置 | |
CN112950709B (zh) | 一种位姿预测方法、位姿预测装置及机器人 | |
CN111339226B (zh) | 一种基于分类检测网络构建地图方法及装置 | |
CN113497886B (zh) | 视频处理方法、终端设备及计算机可读存储介质 | |
CN116266356A (zh) | 全景视频转场渲染方法、装置和计算机设备 | |
CN109919998B (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 |