CN110533694A - 图像处理方法、装置、终端及存储介质 - Google Patents
图像处理方法、装置、终端及存储介质 Download PDFInfo
- Publication number
- CN110533694A CN110533694A CN201910821803.6A CN201910821803A CN110533694A CN 110533694 A CN110533694 A CN 110533694A CN 201910821803 A CN201910821803 A CN 201910821803A CN 110533694 A CN110533694 A CN 110533694A
- Authority
- CN
- China
- Prior art keywords
- image frame
- current image
- pose
- feature point
- feature
- 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 21
- 238000012545 processing Methods 0.000 claims abstract description 89
- 238000000034 method Methods 0.000 claims abstract description 32
- 238000000605 extraction Methods 0.000 claims abstract description 16
- 230000007613 environmental effect Effects 0.000 claims abstract 3
- 238000004590 computer program Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 14
- 238000005457 optimization Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 238000009877 rendering Methods 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000011521 glass Substances 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/292—Multi-camera tracking
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
Abstract
本发明实施例公开了一种图像处理方法、装置、终端及存储介质,其中方法包括:获取终端采集到的当前图像帧;基于环境地图模型中的地图特征点的第一亮度值、所述当前图像帧上与所述地图特征点匹配的投影特征点的第二亮度值进行位姿跟踪处理,得到所述当前图像帧对应的目标位姿信息;如果所述当前图像帧满足关键图像帧的选取条件,则对所述当前图像帧进行特征提取处理,得到所述当前图像帧的目标特征集合;将目标位姿信息、当前图像帧与目标特征集合关联存储到重定位数据库中,重定位数据库中存储有至少一组位姿信息、图像帧和特征集合的关联关系。采用本发明实施例可以较快的确定当前图像帧对应的目标位姿信息。
Description
技术领域
本申请涉及互联网技术领域,尤其涉及一种图像处理方法、装置、终端及存储介质。
背景技术
随着科技的发展,越来越多的智能终端应运而生,比如虚拟现实(VR)头盔、增强现实(AR)眼镜以及机器人等。在这些终端中,位姿跟踪是关键技术之一,所谓位姿跟踪是指确定终端每一次运行时,终端所处的位置和姿态。位姿跟踪方法可包括视觉里程计法,所谓视觉里程计法是通过配置于终端上的摄像装置采集图像数据,通过图像数据的图像特征以及其他运动约束等参数进行位姿估计,从而实现位姿跟踪。
目前常用的视觉里程计法是基于特征标识的视觉里程计法,具体地,检测每一次采集的图像数据中包括的所有特征点并提取各个特征点对应的特征标识,再基于特征标识建立环境地图模型和图像数据之间的匹配关系,进一步基于匹配关系进行优化处理得到位姿信息。由于图像数据包括的特征点数量较多,提取特征标识的过程相当耗时,导致位姿跟踪较慢。因此,在位姿跟踪领域中,如何有效的实现位姿跟踪成为研究的热点问题。
发明内容
本发明实施例提供了一种图像处理方法、装置、终端及存储介质,可以较快的确定当前图像帧对应的目标位姿信息以实现位姿跟踪。
一方面,本发明实施例提供了一种图像处理方法,包括:
获取当前时刻采集到的当前图像帧;
基于环境地图模型中的地图特征点的第一亮度值、所述当前图像帧上与所述地图特征点匹配的投影特征点的第二亮度值进行位姿跟踪处理,得到所述当前图像帧对应的目标位姿信息,所述投影特征点是将所述地图特征点投影到所述当前图像帧上得到的特征点;
如果所述当前图像帧满足关键图像帧的选取条件,则对所述当前图像帧进行特征提取处理,得到所述当前图像帧的目标特征集合;
将所述目标位姿信息、当前图像帧以及所述目标特征集合关联存储到重定位数据库中,所述重定位数据库中存储有至少一组位姿信息、图像帧和特征集合的关联关系。
另一方面,本发明实施例提供了一种图像处理装置,包括:
获取单元,用于获取当前时刻采集到的当前图像帧;
获取单元,还用于基于环境地图模型中的地图特征点的第一亮度值、所述当前图像帧上与所述地图特征点匹配的投影特征点的第二亮度值进行位姿跟踪处理,得到所述当前图像帧对应的目标位姿信息,所述投影特征点是将所述地图特征点投影到所述当前图像帧上得到的特征点;
处理单元,用于如果所述当前图像帧满足关键图像帧的选取条件,则对所述当前图像帧进行特征提取处理,得到所述当前图像帧的目标特征集合;
存储单元,用于将所述目标位姿信息、当前图像帧以及所述目标特征集合关联存储到重定位数据库中,所述重定位数据库中存储有至少一组位姿信息、图像帧和特征集合的关联关系。
再一方面,本发明实施例提供了一种终端,所述终端包括:
处理器,适于实现一条或多条指令;以及,
计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行如下步骤:
获取当前时刻采集到的当前图像帧;
基于环境地图模型中的地图特征点的第一亮度值、所述当前图像帧上与所述地图特征点匹配的投影特征点的第二亮度值进行位姿跟踪处理,得到所述当前图像帧对应的目标位姿信息,所述投影特征点是将所述地图特征点投影到所述当前图像帧上得到的特征点;
如果所述当前图像帧满足关键图像帧的选取条件,则对所述当前图像帧进行特征提取处理,得到所述当前图像帧的目标特征集合;
将所述目标位姿信息、当前图像帧以及所述目标特征集合关联存储到重定位数据库中,所述重定位数据库中存储有至少一组位姿信息、图像帧和特征集合的关联关系。
本发明实施例中,基于地图特征点的第一亮度值和投影特征点的第二亮度值进行位姿跟踪处理,得到当前图像帧对应的目标位姿信息,与现有技术中基于特征标识建立环境地图模型和图像数据之间的匹配关系进行位姿跟踪相比,基于亮度值的位姿跟踪处理方式,计算过程比较简单,可以提高位姿跟踪的速度。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本发明实施例提供的一种虚拟现实头盔的应用场景图;
图1b是本发明实施例提供的一种机器人的应用场景图;
图1c是本发明实施例提供的图像处理方案的框架图;
图2是本发明实施例提供的一种图像处理方法的流程示意图;
图3是本发明实施例提供的一种确定第一亮度值的示意图;
图4是本发明实施例提供的另一种图像处理方法的示意图;
图5是本发明实施例提供的一种确定初始位姿的示意图;
图6是本发明实施例提供的一种图像处理装置的结构示意图;
图7是本发明实施例提供的一种终端的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
本发明实施例提供了一种图像处理方案,该图像处理方案可以应用于对帧率要求较高且具有重定位要求的终端中以实现位姿跟踪,比如虚拟现实(Virtual Reality,VR)头盔、增强现实(Augmented Reality,AR)眼镜以及机器人。可选的,VR头盔的应用场景图可参考图1a所示,101表示VR头盔,用户佩戴VR头盔后,可以将用户对外界的视觉、听觉封闭,引导用户产生一种身在虚拟环境中的感觉。例如在图1a中,当用户佩戴VR眼睛后用户进入到虚拟环境中,用户感觉自己处于马路中间。可选的,机器人的应用场景图可参见图1b所示,假设机器人102获取到在当前环境中自动运行的任务,机器人可以根据其上配置的摄像装置采集图像帧,基于每一时刻采集到的当前图像帧进行位姿跟踪以实现在当前环境中避开障碍,自动运行的任务。
在VR/AR中,如果渲染帧率过小比如小于90Hz,VR/AR中呈现的画面可能出现卡顿的现象,使用户产生不适,因此,在VR/AR产品中通常要求渲染帧率大于90Hz。经实践表明,本发明实施例提供的图像处理方案如果应用在VR/AR终端中,渲染帧率可达到100Hz,能够满足VR/AR高渲染帧率的要求。其次,在VR/AR中,如果对VR头盔或者AR眼镜的位姿跟踪处理失败,容易导致用户切换到一个不正确的视角,影响用户体验,采用本发明实施例所述的图像处理方案可以在位姿跟踪失败时基于重定位数据库中存储的数据进行位姿的重新计算,从而提升了位姿跟踪的鲁棒性。
在一个实施例中,本发明实施例提供的图像处理方案的框架图可如图1c所示。图1c所述的图像处理方案的实现步骤主要包括:首先,获取当前时刻采集到的当前图像帧,其中,当前图像帧可以是终端调用图像传感器或者其他可获取图像帧的摄像装置获取到的;然后,对当前图像帧进行帧到模型匹配处理,其中,帧到模型匹配中的帧是指当前图像帧,模型是指环境地图模型,环境地图模型中存储有多个地图点,这些地图点是根据采集到当前图像帧之前获取到的关键图像帧确定的,对于具体的确定方法将在后面描述。
所述帧到模型匹配处理可以指基于环境地图模型中的地图特征点的第一亮度值和所述当前图像帧上与所述地图特征点匹配的投影特征点的第二亮度值进行位姿跟踪处理,得到所述当前图像帧对应的目标位姿信息,所述投影特征点是将所述地图特征点投影到所述当前图像帧上得到的特征点。所述当前图像帧对应的目标位姿信息反映了终端或者说拍摄装置在获取当前图像帧时所处的位置和姿态。
为了提高位姿跟踪的准确性,在得到目标位姿信息后,可以对目标位姿信息以及环境地图模型进行进一步优化,具体的优化方法可包括局部优化和全局优化。
所谓局部优化可以指选取满足预设条件的一部分图像帧,基于这部分图像帧对应的位姿信息和优化算法对环境地图模型以及当前图像帧的目标位姿信息进行优化,以调整环境地图模型中地图特征点以及上述一部分图像帧中各帧图像对应的位姿信息,使得当前图像帧中投影特征点的第二亮度值与相应的地图特征点的第一亮度值之间的均方误差最小。其中,预设条件可以指预设的时间条件或者空间距离条件等,比如时间条件可以为前一个图像帧,或者前两秒获取到的图像帧;再如,空间距离条件可以为,选取在当前图像帧附近一定距离范围内的图像帧。所述全局优化可以指基于终端开始运行到当前时间为止采集到的所有图像帧的位姿信息,结合优化算法,对环境地图模型以及目标位姿进行优化。
例如,假设终端从开始运行到当前时间为止,一共运行了10秒钟,假设一秒钟可采集30个图像帧,则全局优化是指获取10秒钟内采集到的300个图像帧,基于300图像帧各自对应的位姿信息以及优化算法对环境地图模型和目标位姿信息进行优化;局部优化是指获取满足预设条件的一部分图像帧,比如前两秒的60个图像帧,也就是说基于当前时刻采集到的图像帧和前两秒采集到的60个图像帧对应的位姿信息对目标位姿信息和环境地图模型进行优化处理。
在一个实施例中,输出当前图像帧对应的目标位姿信息之后,可进一步检测当前图像帧是否为关键图像帧。如果当前图像帧为关键图像帧,则对当前图像帧进行特征提取处理,得到目标特征集合,并目标特征集合和目标位姿信息关联存储到重定位数据库中,以便于后续图像帧在位姿定位处理失败时,可以基于当前帧的目标位姿信息和目标特征集合进行重定位处理。
基于上述描述,本发明实施例提供了一种图像处理方法的流程示意图,如图2所示。图2所述的图像处理方法可以由终端执行,具体可由终端的处理器执行。图2所示的图像处理方法可包括如下步骤:
步骤S201、获取当前时刻采集到的当前图像帧。
在一个实施例中,当前图像帧可以是由具有摄像功能的终端自身采集的;或者,当前图像帧也可以是由配置于终端上的摄像装置采集的,比如配置于终端上的图像传感器或者相机等摄像装置;或者,当前图像帧还可以是由独立的摄像装置采集到传输给终端的,对于获取当前图像帧的具体方式本发明实施例中不作具体限定,可以根据实际应用需求自行设置。
步骤S202、基于环境地图模型中的地图特征点的第一亮度值、当前图像帧上与地图特征点匹配的投影特征点的第二亮度值进行位姿跟踪处理,得到当前图像帧对应的目标位姿信息。
在一个实施例中,环境地图模型是根据当前时刻的历史时间内获取到的关键图像帧生成的,具体地:针对历史时间内某个目标关键图像帧,提取该目标关键图像帧中包括的各个特征点;对各个特征点进行深度估计处理,得到各个特征点对应的三维空间坐标,每一个三维空间坐标点称为一个地图点;依次类推,按照该种方法对历史时间内的所有关键帧进行与目标关键帧相同的处理,可以得到多个地图点,多个地图点组成了环境地图模型。
应当理解的,随着终端运行时间的推移,关键图像帧的数量不断增多,不断会有新的地图点加入到环境地图模型中,随着时间的推移,环境地图模型是动态变化的。
在步骤S202中,所述环境地图模型中的地图点是指截止到当前时刻为止,环境地图模型中包括的地图点中的任意一个地图点。与所述地图特征点匹配的投影特征点是指将环境地图模型中该地图点投影到当前图像帧上得到的特征点。其中,将环境地图模型中的地图点投影到当前图像帧上的实施方式可以为:获取当前图像帧对应的预测位姿,利用预测位姿将环境地图模型中的地图特征点投影到当前图像帧中。其中,利用预测位姿将环境地图模型中的地图特征点投影到当前图像帧中的实施方式可以是:根据预测位姿确定地图特征点投影到当前图像帧中的位置,将该地图点投影到当前图像帧的该位置上。换句话说,根据预测位置确定地图特征点投影到当前图像帧中的位置可以理解为以当前图像帧的预测位姿来看,这个地图特征点应该出现在当前图像帧的哪里。
应当理解的,上述只是以地图特征点中的任意一个地图特征点为例描述如何将地图特征点投影到当前图像帧中,得到与其匹配的投影特征点,对于环境地图模型中的所有地图点都做相同处理,在当前图像帧上可以得到多个投影特征点。为了方便描述,在下面涉及到地图特征点和投影特征点的描述中,均以环境地图模型中包括的任意一个为例进行描述。
在一个实施例中,上述当前图像帧对应的预测位姿可以是用户指定的,也可以是根据前一图像帧对应的历史位姿信息确定的;或者,也可以根据前N帧图像对应的历史位姿信息确定的,其中N为大于等于2的正整数;或者,也可以是根据重定位数据库中的数据确定。
在一个实施例中,所述根据前一图像帧对应的历史位姿信息确定当前图像帧对应的预测位姿的实施方式可以为:将前一图像帧对应的历史位姿信息中所指示的历史位姿确定为当前图像帧的预测位姿,由于两帧图像之间的时间间隔比较短,可以认为在较短时间内终端移动距离比较短,所以两帧图像各自对应的位姿差距也较小,可以近似的将前一图像帧的历史位姿确定为当前图像帧的预测位姿。在其他可选的方式中,还可以对前一图像帧对应的历史位姿进行预设变换处理后,得到当前图像帧对应的预测位姿,例如根据终端运动速度以及各帧图像之间的间隔时间设置一个权重系数,将前一图像帧对应的历史位姿乘以权重系数后的结果,作为当前图像帧对应的预测位姿。
再一个实施例中,获取当前图像帧的前一图像帧和前两帧图像,假设前一图像帧对应的历史位姿信息为第一历史位姿信息,前两帧图像对应的历史位姿信息为第二历史位姿信息。可选的,所述根据前N帧图像各自对应的历史位姿信息确定当前图像帧对应的预测位姿的实施方式可以为:获取第一历史位姿信息中所述指示的第一历史位姿和第二历史位姿信息中所指示的第二历史位姿;确定第一历史位姿和第二历史位姿之间的位姿误差,该位姿误差可以反映出在获取两帧图像的时间内,终端的位姿变化情况以及变化程度;进一步的,再根据位姿误差和第一历史位姿确定当前图像帧对应的预测位姿。
又一个实施例中,所述根据重定位数据库中的数据确定当前图像帧对应的预测位姿的实施方式可以为:对当前图像帧进行特征提取,得到当前图像帧对应的目标特征集合;在重定位数据库中查找到与目标特征集合匹配的匹配特征集合,然后基于匹配特征集合关联的位姿信息确定当前图像帧对应的预测位姿。目标特征集合中包括的元素可以是至少一个特征点,也可以是至少一个特征标识,每个特征标识用于表示一类特征点。应当理解的,目标特征集合和匹配特征集合相匹配可以指目标特征集合中包括的各个元素和匹配特征集合中包括的各个元素完全相同;或者,还可以指目标特征集合和匹配特征集合中相同的元素个数超过数量阈值。
在其他实施例中,终端可以随机选择上述任意一种方式来获取当前图像帧对应的预测位姿。或者,终端也可以设置一个用于确定采用上述哪种方式获取当前图像帧对应的预测位姿的确定规则,终端根据确定规则选择相应的上述方式获取当前图像帧对应的预测位姿。例如,终端设置的确定规则可以是:首先尝试根据前一图像帧的历史位姿信息获取当前图像帧对应的预测位姿,当获取前一图像帧的历史位姿信息失败时,根据重定位数据中的数据获取当前图像帧对应的预测位姿。再如,终端设置的确定规则可以是:根据重定位数据库中的数据获取当前图像帧对应的预测图像位姿。
在一个实施例中,将环境模型地图上的地图特征点投影到当前图像帧上的投影特征点之后,可以获取投影特征点在当前图像帧上的第二亮度值。应当理解的,一般根据图像进行位姿跟踪的场景中,所需要的图像是灰度图像,本发明实施例中所述的当前图像帧也指灰度图像,在灰度图像中,某个像素点的亮度值即等于该像素点的像素值,因此,所述获取投影特征点在当前图像帧上的第二亮度值也即获取投影特征点在当前图像帧上的像素值。
所谓特征点是指图像中比较特殊的点,该类特殊的点与其周围的其他点区别较大,比如可以将图像中梯度较大的点确定为特征点。图像中的每个特征点都是拍摄环境中某个空间点在拍摄参数和拍摄环境下投影装置上得到的,也就是说每个特征点都与拍摄环境中的一个空间点对应的,例如图像中桌角这一特征点,对应拍摄环境中桌子的一个。另外,如果摄像装置的拍摄参数以及拍摄环境不变,同一个特征点在投影到不同帧图像中时,其亮度相差应该不大或者说不超过一个亮度阈值。因此,本发明实施例基于这一原则,获取地图特征点的第一亮度值,通过第一亮度值和第二亮度值进行位姿跟踪处理。其中,由前述可知,环境地图模型中的地图特征点是根据当前时刻之前采集到的关键图像帧确定的,也就是说每个地图特征点对应一个空间点,这个空间点对应图像上的特征点,这个图像上的特征点的亮度值就是该地图特征点的亮度值。
应当理解的,对于某个地图特征点而言,其对应的空间点可能在很多关键图像帧中均有对应的特征点,换句话说,该空间点可能被很多关键图像帧都采集到。例如,参考图3为本发明实施例提供的一种确定第一亮度值的示意图,假设A点为环境地图模型中存储的一个地图特征点,与A对应的空间点为P,采集到空间点P的关键图像帧包括两个如第一关键图像帧和第二关键图像帧,假设在第一关键图像帧中与P对应的特征点为A1,在第二关键图像帧中与P对应的特征点为A2。
此种情况下,可以依据各个关键图像帧被采集到的时间顺序选择一个目标关键图像帧,将目标关键图像帧中与地图特征点对应的特征点的亮度值确定为该地图特征点的第一亮度值。例如,采集到第一关键图像帧的时间为10时31分20秒,采集到第二关键图像帧的时间为10时31分25秒,当前时间10时31分30秒,则可以将第二关键图像帧确定为目标关键图像帧,将B2的亮度值确定地图特征点A的第一亮度值。
在其他实施例中,也可以将各个关键图像帧上与地图特征点对应的各个特征点的亮度值取平均值,作为地图特征点对应的第一亮度值。也即分别求出B1和B2的亮度值,将两者的平均值确定为地图特征点A的第一亮度值。
在一个实施例中,获取到第一亮度值和第二亮度值之后,根据按照减少第一亮度值和第二亮度值之间的差值的原则,进行位姿跟踪处理,得到当前图像帧对应的目标位姿信息。直到第一亮度值和第二亮度值之间的亮度差值小于亮度差阈值时,将当前的位姿信息确定为当前图像帧的目标位姿信息。
步骤S203、如果当前图像帧满足关键图像帧的选取条件,则对当前图像帧进行特征提取处理,得到当前图像帧的目标特征集合。
步骤S204、将目标位姿信息、当前图像帧以及目标特征集合关联存储到重定位数据库中。
其中,关键图像帧的选取条件可以是将所有采集到的图像作为关键图像帧,或者可以是预设一些选取规则,将符合选取规则的帧图像确定为关键图像帧。例如,设置一个时间间隔,每隔一个预设的时间间隔采集到的帧图像作为关键图像帧,假设设置时间间隔为30ms,将监测采集帧图像的时间,如果采集到某个帧图像的时间距离采集上一次关键图像帧之间的间隔等于30ms,则确定该帧图像满足关键图像帧的提取条件。或者,选取规则还可以是一个当前图像帧与上一个关键图像帧之间的平移量,如果平移量超过某个预设值则确定当前图像帧满足关键图像帧的提取条件。
在一个实施例中,如果当前图像帧满足关键图像帧的选取条件,则当前图像帧是新增的关键图像帧,将当前图像帧的目标特征集合、当前图像帧与当前图像帧对应的目标位姿信息关联存储到重定位数据库中。其中,目标特征集合中可包括多个特征点,这些特征点是对当前图像帧进行特征点提取得到的;或者,目标特征集合中可包括特征标识,每个特征标识对应一类特征点。
本发明实施例中,获取终端采集到的当前图像帧,并基于环境地图模型中的地图特征点的第一亮度值、当前图像帧上与地图特征点匹配的投影特征点的第二亮度值进行位姿跟踪处理,得到当前图像帧对应的目标位姿信息;如果当前图像帧满足关键图像帧的选取条件,则对当前图像帧进行特征提取处理,得到当前图像帧的目标特征集合;将目标位姿信息、当前图像帧与目标特征集合关联存储到重定位数据库中。与现有技术中基于特征标识建立环境地图模型和图像数据之间的匹配关系进行位姿跟踪相比,基于亮度值的位姿跟踪处理的计算方式比较简单,可以提高位姿跟踪的速度。
参考图4,本发明实施例还提供了的另一种图像处理方法的流程示意图,图4所示的图像处理方法可以应用于终端中。具体的,图4所示的图像处理方法可包括如下步骤:
步骤S401、获取当前时刻采集到的当前图像帧。
在一个实施例中,步骤S401中包括的一些可行的方式可参考图2中相应步骤的描述,在此不再赘述。
步骤S402、如果获取当前图像帧的前一图像帧对应的历史位姿信息成功,则根据前一图像帧对应的历史位姿信息获取当前图像帧对应的预测位姿。
在一个实施例中,终端可以记录采集到每一帧图像的时间,如果预先设置一秒采集30帧图像,那么采集连续两个相邻帧图像之间的时间间隔是1/30。可选的,终端可以根据采集到当前图像帧的时间和上述的时间间隔确定终端采集前一图像帧是否成功。具体可选的,如果检测到采集当前图像帧的当前时间与终端中保存采集到当前图像帧的相邻帧图像的时间之间的时间间隔等于1\30,表明该相邻帧图像是与当前图像帧连续相邻的两个帧图像,也就是说该相邻帧图像是当前图像帧的前一图像帧,也就是说终端采集前一图像帧成功。反之,如果时间间隔大于1\30,则表明在当前图像帧和相邻帧图像之间出现了丢帧情况,也就是说终端采集前一图像帧失败,相邻帧图像不是当前图像帧的前一图像帧,可能是当前图像帧的前N帧图像,其中,N为大于等于2的正整数。在一个实施例中,造成出现丢帧情况的原因可能是用户用手遮挡终端上的摄像装置控制终端运行了一段时间,这样一来,在这段时间内,摄像装置采集不到图像,也就出现了丢帧情况。
在一个实施例中,终端在每一次获取到一帧图像对应的位姿信息后,会将帧图像和位姿信息关联存储,因此,终端在采集到当前图像帧时,终端如果采集前一图像帧成功,则终端中保存有前一图像帧对应的历史位姿信息,也可以理解为获取前一图像帧的历史位姿信息成功;反之,终端如果采集前一图像帧失败,则终端中没有保存前一图像帧对应的历史位姿信息,也可以理解为获取前一图像帧的历史位姿信息失败。
在一个实施例中,可以根据获取前一图像帧的历史位姿信息是否成功,采用不同的方法获取当前图像帧对应的预测位姿。
具体地,如果获取前一图像帧对应的历史位姿信息成功,则根据前一图像帧对应的历史位姿获取当前图像帧对应的预测位姿,具体的实施方式可以为:根据历史位姿信息中所指示的历史位姿对当前图像帧进行位姿初始化处理,得到当前图像帧对应的初始位姿;获取前一图像帧中包括的第一特征点对应的位置和深度,并基于位置、深度以及所述初始位姿将第一特征点投影到当前图像帧上,得到在当前图像帧上与第一特征点匹配的匹配特征点;基于第一特征点在前一图像帧中的第三亮度值,以及匹配特征点在当前图像帧上的第四亮度值之间的亮度差值,对初始位姿进行优化处理,得到当前图像帧对应的预测位姿。
其中,根据历史位姿对当前图像帧进行位姿初始化处理可以是直接将历史位姿作为当前图像帧的初始位姿;或者,还可以是对历史位姿进行预设的运算变换得到当前图像帧的初始位姿。应当理解的,前一图像帧上可以包括多个特征点,这里所述的第一特征点是指前一图像帧中的任意一个特征点,为了方便描述,下面以第一特征点为例介绍。
在一个实施例中,所述获取前一图像帧中包括的第一特征点对应的位置和深度,并基于位置和深度将第一特征点投影到当前图像帧上,得到在当前图像帧上与第一特征点匹配的匹配特征点,可以包括:获取第一特征点在前一图像帧中的位置和深度;基于第一特征点的位置、深度将第一特征点以及三维空间坐标系投影到三维空间中,得到第一特征点对应的第一空间点,此时使用的三维空间的坐标系是基于采集前一图像帧时的历史位姿确定的,为了提高投影的准确性,需要对当前的三维空间坐标系进行位姿转换,可选的,基于当前图像帧的初始位姿对三维空间坐标系进行位姿转换;然后基于转换后的三维空间坐标系将第一空间点投影到当前图像帧上。
例如,参考图5为发明实施例提供的一种确定预测位姿的示意图,假设501表示前一图像帧,502表示当前图像帧,前一图像帧501包括的特征点为u1、u2和u3,已知三个特征点在前一图像帧501上的位置和深度;基于各自的位置和深度,以及三维空间坐标系投影到三维空间中,分别对应三个空间点p1、p2和p3。进一步的,基于当前图像帧对应的初始位姿对三维空间坐标系进行位姿转换,基于位姿转换后的三维空间坐标系将是空间点p1、p2和p3投影到当前图像帧502上,得到当前图像帧502上与u1、u2和u3的匹配特征点v1、v2和v3。
在一个实施例中,所述基于第一特征点在前一图像帧中的第三亮度值,以及匹配特征点在当前图像帧上的第四亮度值之间的亮度差值,对初始位姿进行优化处理,得到当前图像帧对应的预测位姿,包括:按照减小第三亮度值与第四亮度值之间的亮度差值,不断更新优化初始位姿,每次得到新的初始位姿都重复执行上述图5所示的过程,直到第三亮度值与第四亮度值之间的亮度差值小于亮度阈值,将此时的初始位姿确定为当前图像帧对应的预测位姿。
步骤S403、如果获取当前图像帧的前一图像帧对应的历史位姿信息失败,则根据重定位数据库中存储的至少一组位姿信息、图像帧与特征集合的关联关系获取当前图像帧对应的预测位姿。
在一个实施例中,所述如果获取当前图像帧的前一图像帧对应的历史位姿信息失败,则根据重定位数据库中存储的至少一个位姿信息与特征集合的关联关系获取当前图像帧对应的预测位姿,包括:获取所述当前图像帧对应的目标特征集合;在所述重定位数据库中查找与所述目标特征集合匹配的匹配特征集合;基于所述匹配特征集合相关联的关联位姿信息和关联帧图像确定所述当前图像帧对应的预测位姿。
其中,由前述可知,目标特征集合中可以包括当前图像帧的特征点对应的特征标识,每一个特征标识表示一类特征点,不同类别的特征点用于反映该特征点对应了拍摄环境中的哪些物体。例如,拍摄环境中桌子腿不同位置对应的几个特征点是属于同一类别的特征点;再如,拍摄环境中在不同角度拍摄到的同一个物品不同位置对应的特征点可以是属于同一类别的特征点。由于当前图像帧包括的特征点数量为至少一个,并且这些特征点所属的特征点类型不同,所以目标特征集合中可包括至少一个特征标识。
在一个实施例中,如果目标特征集合以及重定位数据库中存储的各个特征集合中均包括特征标识,则所述在所述重定位数据库中查找与所述目标特征集合匹配的匹配特征集合的实施方式可以为:将目标特征集合中各个特征标识与重定位数据库中的每个特征集合进行比较;如果目标特征集合中包括的各个特征标识完全出现在某个特征集合中,则可以将该特征集合确定为与目标特征集合匹配的匹配特征集合。可选的,如果目标特征集合中的各个特征标识完全出现在多个重定位数据库的特征集合中,将这些特征集合称为候选特征集合,则可以分别获取目标特征集合与这些候选特征集合的匹配度,将匹配度最高的候选特征集合确定为与目标特征集合匹配的匹配特征集合。
可选的,获取目标特征集合和与候选特征集合的匹配度可以是依据各个候选特征集合中包括的特征标识的数量确定,某个候选集合中包括的特征标识的数量越多,该候选集合与目标特征集合之间的匹配度越大。
例如,目标特征集合包括特征标识010,特征标识000,以及特征标识110;通过在重定位数据库中查找发现,这些特征标识出现在某个特征集合中,则可以将该特征集合确定为目标特征集合相匹配的匹配特征集合。如果通过在重定位数据库中查找发现,这些特征标识出现在两个特征集合中,其中,一个特征集合包括010、000、110、100,另外一个特征集合包括010、000、110、100、111;则终端可以选择将包括010、000、110、100的特征集合作为目标特征集合相匹配的匹配特征集合。
在一个实施例中,由前述可知,重定位数据库中存储有至少一组位姿信息、帧图像和特征集合的关联关系,在确定了与目标特征集合对应的匹配特征集合后,可以在重定位数据中找到与匹配特征集合相关联的关联位姿信息和关联帧图像,然后基于关联位姿信息和关联帧图像确定当前图像帧的初始位姿。可选的,所述基于关联位姿信息和关联帧图像确定当前图像帧的预测位姿的实施方式与基于前一图像帧的历史位姿信息确定当前图像帧的预测位姿相同,可参见步骤S402中描述,在此不再赘述。
步骤S404、采用当前图像帧对应的预测位姿将环境地图模型上的地图特征点投影到当前图像帧上得到投影特征点,并获取地图特征点的第一亮度值和投影特征点的第二亮度值之间的亮度差值。
步骤S405、按照减小亮度差值的原则对预测位姿进行优化,得到当前图像帧对应的目标位姿信息。
在一个实施例中,步骤S404的实施方式可以为:根据当前图像帧对应的预测位姿计算将环境地图模型上的地图特征点投影到当前图像帧上的投影位置;按照该投影位置将地图特征点投影到当前图像帧上。
在一个实施例中,通过步骤S402和步骤S403的描述可知,当前图像帧的预测位置是估计得到的,与当前图像帧的真是位姿是存在位姿误差的,因此,地图特征点在当前图像帧上的投影位置也不是地图特征点在当前图像帧上的真实位置,在步骤S404和步骤S405中可以通过找到地图特征点在当前图像帧上的真实位置来进一步优化当前图像帧的预测位置,从而得到当前图像帧对应的目标位姿。
在一个实施例中,基于光度不变假设,地图特征点在其对应的关键图像帧中的第一亮度值应该与其在当前图像帧中的第二亮度值差不多,本发明实施例中基于第一亮度值和第二亮度值之间的亮度差值进行投影位置的优化,进一步基于优化后的投影位置优化预测位姿。
在一个实施例中,步骤S405的实施方式可以为:按照减小亮度差值的原则对投影位置进行优化;根据优化后的投影位置优化预测位姿,得到当前图像帧对应的目标位姿信息。
步骤S406、如果当前图像帧满足关键图像帧的选取条件,则对当前图像帧进行特征提取处理,得到当前图像帧对应的目标特征集合,并将目标位姿信息、当前图像帧进和目标特征集合关联存储到重定位数据库中。
在一个实施例中,步骤S406的实施方式可以为:提取所述当前图像帧包括的至少一个特征点,并确定各个特征点所属的特征点类型;基于所述各个特征点所属的特征点类型获取各个特征点对应的特征标识,其中,一个特征标识用于标识一个特征点类型;基于所述各个特征点对应的特征标识确定目标特征集合。
应当理解的,将当前图像帧、目标位姿信息以及目标特征集合关联存储到重定位数据库中,可以丰富重定位数据库中的数据,为下一次重定位时提供更多的选择,有利于提高重定位的准确性。
步骤S407、提取当前图像帧中包括的目标特征点,对目标特征点进行深度估计得到目标特征点对应的目标地图特征点,将目标地图特征点添加到环境地图模型中,以更新环境地图模型。
在一个实施例中,如果检测到当前图像帧是新的关键图像帧,则可以将当前图像帧中包括的目标特征点经过处理添加到环境地图模型中,以更新环境地图模型,以便于在后续基于环境地图模型进行位姿跟踪时,准确性更高。
本发明实施例中,获取当前时刻采集到的当前图像帧;如果获取当前图像帧的前一图像帧对应的历史位姿信息成功,则根据前一图像帧对应的历史位姿信息获取当前图像帧对应的预测位姿;如果获取当前图像帧的前一图像帧对应的历史位姿信息失败,则根据重定位数据库中存储的至少一个位姿信息、帧图像与特征集合的关联关系获取当前图像帧对应的预测位姿;进一步的,采用当前图像帧对应的预测位姿将环境地图模型上的地图特征点投影到当前图像帧上得到投影特征点,并获取地图特征点的第一亮度值和投影特征点的第二亮度值之间的亮度差值,按照减小亮度差值的原则对预测位姿进行优化,得到当前图像帧对应的目标位姿信息。在上述过程中,基于亮度匹配原则进行跟踪优化处理得到当前图像帧的目标位姿信息计算方式简单,可有效提高位姿跟踪的速度。
在一个实施例中,终端中可运行有第一线程和第二线程,图4所示的图像处理方法可以是终端调用第一线程和第二线程执行的,具体的,步骤S401-步骤S405可以是终端调用第一线程执行的;步骤S406和步骤S407是终端调用第二线程执行的。通过不同线程执行位姿跟踪的步骤和更新环境地图模型以及重定位数据库的步骤,可以减少更新环境地图模型以及重定位数据库对位姿跟踪速度的影响,有利于快速实现位姿跟踪。
另外,如果当前图像帧是新的关键图像帧,将当前图像帧对应的目标位姿信息、当前图像帧以及目标特征集合添加到重定位数据库中以丰富重定位数据库中的数据,以便于后续在基于重定位数据库确定后续图像帧的预测位姿时,可以更准确。此外,将当前图像帧包括的目标特征点经过处理得到目标地图点,添加到环境地图模型中以更新环境地图模型,有利于在后续基于环境地图模型和亮度匹配原则进行位姿跟踪时,具有较高的准确性。
基于上述的图像处理方法,本发明实施例还提供了一种图像处理装置,所述图像处理装置可执行图2和图4所示的图像处理方法。请参考图6,所述图像处理装置可运行如下单元:
获取单元601,用于获取当前时刻采集到的当前图像帧;
处理单元602,还用于基于环境地图模型中的地图特征点的第一亮度值、所述当前图像帧上与所述地图特征点匹配的投影特征点的第二亮度值进行位姿跟踪处理,得到所述当前图像帧对应的目标位姿信息,所述投影特征点是将所述地图特征点投影到所述当前图像帧上得到的特征点;
所述处理单元602,用于如果所述当前图像帧满足关键图像帧的选取条件,则对所述当前图像帧进行特征提取处理,得到所述当前图像帧的目标特征集合;
存储单元603,用于将所述目标位姿信息、当前图像帧以及所述目标特征集合关联存储到重定位数据库中,所述重定位数据库中存储有至少一组位姿信息、图像帧和特征集合的关联关系。
在一个实施例中,所述处理单元602在述基于环境地图模型中的地图特征点的第一亮度值、所述当前图像帧上与所述地图特征点匹配的投影特征点的第二亮度值进行位姿跟踪处理,得到所述当前图像帧对应的目标位姿信息时,执行如下操作:获取所述当前图像帧对应的预测位姿;获取所述第一亮度值和所述第二亮度值之间的亮度差值,所述投影特征点是根据所述预测位姿将所述地图特征点投影到所述当前图像帧上得到的;按照减小所述亮度差值的原则优化所述预测位姿,并根据优化后的预测位姿确定所述当前图像帧对应的目标位姿信息。
在一个实施例中,所述处理单元602在获取当前图像帧对应的预测位姿时,执行如下操作:获取所述当前图像帧的前一图像帧对应的历史位姿信息,并根据所述历史位姿信息获取所述当前图像帧对应的预测位姿;或者,根据所述重定位数据库中存储的至少一组位姿信息、图像帧与特征集合的关联关系获取所述当前图像帧对应的预测位姿。
在一个实施例中,所述处理单元602在根据所述当前图像帧的前一图像帧对应的历史位姿信息获取所述当前图像帧对应的预测位姿时,执行如下操作:根据所述历史位姿信息中所指示的历史位姿对所述当前图像帧进行位姿初始化处理,得到所述当前图像帧对应的初始位姿;获取所述前一图像帧中包括的第一特征点对应的位置和深度,并基于所述位置、深度以及所述初始位姿将所述第一特征点投影到所述当前图像帧上,得到在所述当前图像帧上与所述第一特征点匹配的匹配特征点;基于所述第一特征点在所述前一图像帧中的第三亮度值,以及所述匹配特征点在所述当前图像帧上的第四亮度值之间的亮度差值,对所述初始位姿进行优化处理,得到所述当前图像帧对应的预测位姿。
在一个实施例中,所述处理单元602在根据所述重定位数据库中存储的至少一组位姿信息、图像帧与特征集合的关联关系获取所述当前图像帧对应的预测位姿时3,执行如下操作:获取所述当前图像帧对应的目标特征集合;在所述重定位数据库中查找与所述目标特征集合匹配的匹配特征集合;基于所述匹配特征集合相关联的关联位姿信息和关联图像帧确定所述当前图像帧对应的预测位姿。
在一个实施例中,所述处理单元602在对所述当前图像帧进行特征提取处理,得到所述当前图像帧的目标特征集合时,执行如下操作:提取所述当前图像帧包括的至少一个目标特征点,并确定各个目标特征点所属的特征点类型;基于所述各个目标特征点所属的特征点类型获取各个目标特征点对应的特征标识,其中,一个特征标识用于标识一个特征点类型;基于所述各个目标特征点对应的特征标识确定目标特征集合。
在一个实施例中,终端中运行第一线程和第二线程,所述目标位姿信息是调用所述第一线程基于环境地图模型中的地图特征点的第一亮度值、所述当前图像帧上与所述地图特征点匹配的投影特征点的第二亮度值进行位姿跟踪处理得到的;所述当前图像帧的目标特征集合是调用所述第二线程对所述当前图像帧进行特征提取处理得到的,以及调用所述第二线程将所述当前图像帧的目标特征集合、当前图像帧与所述目标位姿信息关联存储在重定位数据库中的。
在一个实施例中,所述处理单元602还用于:如果所述当前图像帧满足关键图像帧的选取条件,则对所述当前图像帧进行特征点提取,得到所述当前图像帧包括的目标特征点;对所述目标特征点进行深度估计,得到所述目标特征点对应的目标地图特征点;将所述目标地图特征点添加到所述环境地图模型中,以更新所述环境地图模型。
根据本发明的一个实施例,图2和图4所示的方法所涉及的各个步骤可以是由图6所示的图像处理装置中的各个单元来执行的。例如,图2所示的步骤S201可由图6中所述的图像处理装置中获取单元601来执行,步骤S202和步骤S203可由图中所述的图像处理装置中的处理单元602来执行,步骤S204可由图6所述的图像处理装置中的存储单元603来执行;又如,图4中所示的步骤S401可由图6所示的图像处理装置中获取单元601来执行,步骤S402-步骤S405以及步骤S407可由6所示的图像处理装置中的处理单元602来执行,步骤S406可由图6所示的图像处理装置中的存储单元603来执行。
根据本发明的另一个实施例,图6所示的图像处理装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本发明的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本发明的其它实施例中,基于图像处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
根据本发明的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算设备上运行能够执行如图2或图4中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图6中所示的图像处理装置,以及来实现本发明实施例图像处理方法。所述计算机程序可以记载于例如计算机可读存储介质上,并通过计算机可读存储介质装载于上述计算设备中,并在其中运行。
本发明实施例中,获取终端采集到的当前图像帧,并基于环境地图模型中的地图特征点的第一亮度值、当前图像帧上与地图特征点匹配的投影特征点的第二亮度值进行位姿跟踪处理,得到当前图像帧对应的目标位姿信息;如果当前图像帧满足关键图像帧的选取条件,则对当前图像帧进行特征提取处理,得到当前图像帧的目标特征集合;将目标位姿信息、当前图像帧与目标特征集合关联存储到重定位数据库中。与现有技术中提取当前图像帧中的所有特征点相比,基于亮度值的位姿跟踪处理的计算方式比较简单,可以提高位姿跟踪的速度。
基于上述方法实施例以及装置实施例的描述,本发明实施例还提供了一种终端,参考图7为本发明实施例提供的一种终端的结构示意图。图7所示,该终端可包括处理器701以及计算机存储介质702。
计算机存储介质702可以存储在服务器的存储器中,所述计算机存储介质702用于存储计算机程序,所述计算机程序包括程序指令,所述处理器701用于执行所述计算机存储介质702存储的程序指令。处理器701或称CPU(Central Processing Unit,中央处理器))是服务器的计算核心以及控制核心,其适于实现一条或多条指令,具体适于加载并执行一条或多条指令从而实现相应方法流程或相应功能;在一个实施例中,本发明实施例所述的处理器701可以用于执行:获取当前时刻采集到的当前图像帧;基于环境地图模型中的地图特征点的第一亮度值、所述当前图像帧上与所述地图特征点匹配的投影特征点的第二亮度值进行位姿跟踪处理,得到所述当前图像帧对应的目标位姿信息,所述投影特征点是将所述地图特征点投影到所述当前图像帧上得到的特征点;如果所述当前图像帧满足关键图像帧的选取条件,则对所述当前图像帧进行特征提取处理,得到所述当前图像帧的目标特征集合;将所述目标位姿信息、当前图像帧以及所述目标特征集合关联存储到重定位数据库中,所述重定位数据库中存储有至少一组位姿信息、图像帧和特征集合的关联关系。
本发明实施例还提供了一种计算机存储介质(Memory),所述计算机存储介质是电子设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机存储介质既可以包括电子设备中的内置存储介质,当然也可以包括电子设备所支持的扩展存储介质。计算机存储介质提供存储空间,在该存储空间中存放了适于被处理器701加载并执行的一条或多条指令,这些指令可以是一个或多个计算机程序(包括程序代码)。需要说明的是,此处的计算机存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器;可选的还可以是至少一个位于远离前述处理器的计算机存储介质。
在一个实施例中,所述处理器701在基于环境地图模型中的地图特征点的第一亮度值、所述当前图像帧上与所述地图特征点匹配的投影特征点的第二亮度值进行位姿跟踪处理,得到所述当前图像帧对应的目标位姿信息时,执行如下操作:获取所述当前图像帧对应的预测位姿;获取所述第一亮度值和所述第二亮度值之间的亮度差值,所述投影特征点是根据所述预测位姿将所述地图特征点投影到所述当前图像帧上得到的;按照减小所述亮度差值的原则优化所述预测位姿,并根据优化后的预测位姿确定所述当前图像帧对应的目标位姿信息。
在一个实施例中,所述处理器701在获取当前图像帧对应的预测位姿时,执行如下操作:获取所述当前图像帧的前一图像帧对应的历史位姿信息,并根据所述历史位姿信息获取所述当前图像帧对应的预测位姿;或者,根据所述重定位数据库中存储的至少一组位姿信息、图像帧与特征集合的关联关系获取所述当前图像帧对应的预测位姿。
在一个实施例中,所述处理器701在根据所述当前图像帧的前一图像帧对应的历史位姿信息获取所述当前图像帧对应的预测位姿时,执行如下操作:根据所述历史位姿信息中所指示的历史位姿对所述当前图像帧进行位姿初始化处理,得到所述当前图像帧对应的初始位姿;获取所述前一图像帧中包括的第一特征点对应的位置和深度,并基于所述位置、深度以及所述初始位姿将所述第一特征点投影到所述当前图像帧上,得到在所述当前图像帧上与所述第一特征点匹配的匹配特征点;基于所述第一特征点在所述前一图像帧中的第三亮度值,以及所述匹配特征点在所述当前图像帧上的第四亮度值之间的亮度差值,对所述初始位姿进行优化处理,得到所述当前图像帧对应的预测位姿。
在一个实施例中,所述处理器701在根据所述重定位数据库中存储的至少一组位姿信息、图像帧与特征集合的关联关系获取所述当前图像帧对应的预测位姿时,执行如下操作:获取所述当前图像帧对应的目标特征集合;在所述重定位数据库中查找与所述目标特征集合匹配的匹配特征集合;基于所述匹配特征集合相关联的关联位姿信息和关联图像帧确定所述当前图像帧对应的预测位姿。
在一个实施例中,所述处理器701在对所述当前图像帧进行特征提取处理,得到所述当前图像帧的目标特征集合时,执行如下操作:提取所述当前图像帧包括的至少一个目标特征点,并确定各个目标特征点所属的特征点类型;基于所述各个目标特征点所属的特征点类型获取各个目标特征点对应的特征标识,其中,一个特征标识用于标识一个特征点类型;基于所述各个目标特征点对应的特征标识确定目标特征集合。
在一个实施例中,终端中运行第一线程和第二线程,所述目标位姿信息是调用所述第一线程基于环境地图模型中的地图特征点的第一亮度值、所述当前图像帧上与所述地图特征点匹配的投影特征点的第二亮度值进行位姿跟踪处理得到的;所述当前图像帧的目标特征集合是调用所述第二线程对所述当前图像帧进行特征提取处理得到的,以及调用所述第二线程将所述当前图像帧的目标特征集合、当前图像帧与所述目标位姿信息关联存储在重定位数据库中的。
在一个实施例中,所述处理器701还用于:如果所述当前图像帧满足关键图像帧的选取条件,则对所述当前图像帧进行特征点提取,得到所述当前图像帧包括的目标特征点;对所述目标特征点进行深度估计,得到所述目标特征点对应的目标地图特征点;将所述目标地图特征点添加到所述环境地图模型中,以更新所述环境地图模型。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明部分实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (11)
1.一种图像处理方法,其特征在于,包括:
获取当前时刻采集到的当前图像帧;
基于环境地图模型中的地图特征点的第一亮度值、所述当前图像帧上与所述地图特征点匹配的投影特征点的第二亮度值进行位姿跟踪处理,得到所述当前图像帧对应的目标位姿信息,所述投影特征点是将所述地图特征点投影到所述当前图像帧上得到的;
如果所述当前图像帧满足关键图像帧的选取条件,则对所述当前图像帧进行特征提取处理,得到所述当前图像帧的目标特征集合;
将所述目标位姿信息、当前图像帧以及所述目标特征集合关联存储到重定位数据库中,所述重定位数据库中存储有至少一组位姿信息、图像帧和特征集合的关联关系。
2.如权利要求1所述的方法,其特征在于,所述基于环境地图模型中的地图特征点的第一亮度值、所述当前图像帧上与所述地图特征点匹配的投影特征点的第二亮度值进行位姿跟踪处理,得到所述当前图像帧对应的目标位姿信息,包括:
获取所述当前图像帧对应的预测位姿;
获取所述第一亮度值和所述第二亮度值之间的亮度差值,所述投影特征点是根据所述预测位姿将所述地图特征点投影到所述当前图像帧上得到的;
按照减小所述亮度差值的原则优化所述预测位姿,并根据优化后的预测位姿确定所述当前图像帧对应的目标位姿信息。
3.如权利要求2所述的方法,其特征在于,所述获取当前图像帧对应的预测位姿,包括:
获取所述当前图像帧的前一图像帧对应的历史位姿信息,并根据所述历史位姿信息获取所述当前图像帧对应的预测位姿;或者,
根据所述重定位数据库中存储的至少一组位姿信息、图像帧和特征集合的关联关系获取所述当前图像帧对应的预测位姿。
4.如权利要求3所述的方法,其特征在于,所述根据所述当前图像帧的前一图像帧对应的历史位姿信息获取所述当前图像帧对应的预测位姿,包括:
根据所述历史位姿信息中所指示的历史位姿对所述当前图像帧进行位姿初始化处理,得到所述当前图像帧对应的初始位姿;
获取所述前一图像帧中包括的第一特征点对应的位置和深度,并基于所述位置、深度以及所述初始位姿将所述第一特征点投影到所述当前图像帧上,得到在所述当前图像帧上与所述第一特征点匹配的匹配特征点;
基于所述第一特征点在所述前一图像帧中的第三亮度值,以及所述匹配特征点在所述当前图像帧上的第四亮度值之间的亮度差值,对所述初始位姿进行优化处理,得到所述当前图像帧对应的预测位姿。
5.如权利要求3所述的方法,其特征在于,所述根据所述重定位数据库中存储的至少一组位姿信息、图像帧和特征集合的关联关系获取所述当前图像帧对应的预测位姿,包括:
获取所述当前图像帧对应的目标特征集合;
在所述重定位数据库中查找与所述目标特征集合匹配的匹配特征集合;
基于所述重定位数据中所述匹配特征集合相关联的关联位姿信息和关联图像帧确定所述当前图像帧对应的预测位姿。
6.如权利要求1所述的方法,其特征在于,所述对所述当前图像帧进行特征提取处理,得到所述当前图像帧的目标特征集合,包括:
提取所述当前图像帧包括的至少一个目标特征点,并确定各个目标特征点所属的特征点类型;
基于所述各个目标特征点所属的特征点类型获取各个目标特征点对应的特征标识,其中,一个特征标识用于标识一个特征点类型;
基于所述各个目标特征点对应的特征标识确定目标特征集合。
7.如权利要求1所述的方法,其特征在于,所述终端中运行第一线程和第二线程,所述方法还包括:
所述目标位姿信息是调用所述第一线程基于环境地图模型中的地图特征点的第一亮度值、所述当前图像帧上与所述地图特征点匹配的投影特征点的第二亮度值进行位姿跟踪处理得到的;
所述当前图像帧的目标特征集合是调用所述第二线程对所述当前图像帧进行特征提取处理得到的,以及调用所述第二线程将所述当前图像帧的目标特征集合、当前图像帧以及所述目标位姿信息关联存储在重定位数据库中。
8.如权利要求1所述的方法,其特征在于,所述方法还包括:
如果所述当前图像帧满足关键图像帧的选取条件,则对所述当前图像帧进行特征点提取,得到所述当前图像帧包括的目标特征点;
对所述目标特征点进行深度估计处理,得到所述目标特征点对应的目标地图特征点;
将所述目标地图特征点添加到所述环境地图模型以更新所述环境地图模型。
9.一种图像处理装置,其特征在于,包括:
获取单元,用于获取当前时刻采集到的当前图像帧;
处理单元,还用于基于环境地图模型中的地图特征点的第一亮度值、所述当前图像帧上与所述地图特征点匹配的投影特征点的第二亮度值进行位姿跟踪处理,得到所述当前图像帧对应的目标位姿信息,所述投影特征点是将所述地图特征点投影到所述当前图像帧上得到的特征点;
所述处理单元,用于如果所述当前图像帧满足关键图像帧的选取条件,则对所述当前图像帧进行特征提取处理,得到所述当前图像帧的目标特征集合;
存储单元,用于将所述目标位姿信息、当前图像帧以及所述目标特征集合关联存储到重定位数据库中,所述重定位数据库中存储有至少一组位姿信息、图像帧和特征集合的关联关系。
10.一种终端,其特征在于,还包括:
处理器,适于实现一条或多条指令;以及,
计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行如权利要求1-8任一项所述的图像处理方法。
11.一种计算机存储介质,其特征在于,所述计算机存储介质中存储有计算机程序指令,所述计算机程序指令被处理器执行时,用于执行如权利要求1-8任一项所述的图像处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910821803.6A CN110533694B (zh) | 2019-08-30 | 2019-08-30 | 图像处理方法、装置、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910821803.6A CN110533694B (zh) | 2019-08-30 | 2019-08-30 | 图像处理方法、装置、终端及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110533694A true CN110533694A (zh) | 2019-12-03 |
CN110533694B CN110533694B (zh) | 2024-02-09 |
Family
ID=68666033
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910821803.6A Active CN110533694B (zh) | 2019-08-30 | 2019-08-30 | 图像处理方法、装置、终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110533694B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111709973A (zh) * | 2020-06-16 | 2020-09-25 | 北京百度网讯科技有限公司 | 目标跟踪方法、装置、设备及存储介质 |
CN112393723A (zh) * | 2020-11-27 | 2021-02-23 | 北京三快在线科技有限公司 | 一种定位方法、设备、介质及无人设备 |
CN112489224A (zh) * | 2020-11-26 | 2021-03-12 | 北京字跳网络技术有限公司 | 图像绘制方法、装置、可读介质及电子设备 |
CN112948411A (zh) * | 2021-04-15 | 2021-06-11 | 深圳市慧鲤科技有限公司 | 位姿数据的处理方法及接口、装置、系统、设备和介质 |
CN113409373A (zh) * | 2021-06-25 | 2021-09-17 | 浙江商汤科技开发有限公司 | 图像处理方法及相关终端、设备和存储介质 |
CN114088103A (zh) * | 2022-01-19 | 2022-02-25 | 腾讯科技(深圳)有限公司 | 车辆定位信息的确定方法和装置 |
CN115952248A (zh) * | 2022-12-20 | 2023-04-11 | 阿波罗智联(北京)科技有限公司 | 终端设备的位姿处理方法、装置、设备、介质及产品 |
WO2023179342A1 (zh) * | 2022-03-25 | 2023-09-28 | 北京字跳网络技术有限公司 | 重定位方法及相关设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6677987B1 (en) * | 1997-12-03 | 2004-01-13 | 8×8, Inc. | Wireless user-interface arrangement and method |
KR100777199B1 (ko) * | 2006-12-14 | 2007-11-16 | 중앙대학교 산학협력단 | 이동 객체 추적 장치 및 그 방법 |
US20100150401A1 (en) * | 2008-12-16 | 2010-06-17 | Victor Company Of Japan, Limited | Target tracker |
JP2014211846A (ja) * | 2013-04-22 | 2014-11-13 | 富士通株式会社 | 目標追尾装置及び目標追尾プログラム |
US20140369557A1 (en) * | 2013-06-14 | 2014-12-18 | Qualcomm Incorporated | Systems and Methods for Feature-Based Tracking |
JP2017151535A (ja) * | 2016-02-22 | 2017-08-31 | 株式会社リコー | 画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラム |
CN110009739A (zh) * | 2019-01-29 | 2019-07-12 | 浙江省北大信息技术高等研究院 | 移动摄像机的数字视网膜的运动特征的提取与编码方法 |
-
2019
- 2019-08-30 CN CN201910821803.6A patent/CN110533694B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6677987B1 (en) * | 1997-12-03 | 2004-01-13 | 8×8, Inc. | Wireless user-interface arrangement and method |
KR100777199B1 (ko) * | 2006-12-14 | 2007-11-16 | 중앙대학교 산학협력단 | 이동 객체 추적 장치 및 그 방법 |
US20100150401A1 (en) * | 2008-12-16 | 2010-06-17 | Victor Company Of Japan, Limited | Target tracker |
JP2014211846A (ja) * | 2013-04-22 | 2014-11-13 | 富士通株式会社 | 目標追尾装置及び目標追尾プログラム |
US20140369557A1 (en) * | 2013-06-14 | 2014-12-18 | Qualcomm Incorporated | Systems and Methods for Feature-Based Tracking |
JP2017151535A (ja) * | 2016-02-22 | 2017-08-31 | 株式会社リコー | 画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラム |
CN110009739A (zh) * | 2019-01-29 | 2019-07-12 | 浙江省北大信息技术高等研究院 | 移动摄像机的数字视网膜的运动特征的提取与编码方法 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111709973A (zh) * | 2020-06-16 | 2020-09-25 | 北京百度网讯科技有限公司 | 目标跟踪方法、装置、设备及存储介质 |
CN111709973B (zh) * | 2020-06-16 | 2024-02-20 | 北京百度网讯科技有限公司 | 目标跟踪方法、装置、设备及存储介质 |
CN112489224A (zh) * | 2020-11-26 | 2021-03-12 | 北京字跳网络技术有限公司 | 图像绘制方法、装置、可读介质及电子设备 |
CN112393723A (zh) * | 2020-11-27 | 2021-02-23 | 北京三快在线科技有限公司 | 一种定位方法、设备、介质及无人设备 |
CN112393723B (zh) * | 2020-11-27 | 2023-10-24 | 北京三快在线科技有限公司 | 一种定位方法、设备、介质及无人设备 |
CN112948411A (zh) * | 2021-04-15 | 2021-06-11 | 深圳市慧鲤科技有限公司 | 位姿数据的处理方法及接口、装置、系统、设备和介质 |
CN113409373A (zh) * | 2021-06-25 | 2021-09-17 | 浙江商汤科技开发有限公司 | 图像处理方法及相关终端、设备和存储介质 |
CN114088103A (zh) * | 2022-01-19 | 2022-02-25 | 腾讯科技(深圳)有限公司 | 车辆定位信息的确定方法和装置 |
CN114088103B (zh) * | 2022-01-19 | 2022-05-20 | 腾讯科技(深圳)有限公司 | 车辆定位信息的确定方法和装置 |
WO2023179342A1 (zh) * | 2022-03-25 | 2023-09-28 | 北京字跳网络技术有限公司 | 重定位方法及相关设备 |
CN115952248A (zh) * | 2022-12-20 | 2023-04-11 | 阿波罗智联(北京)科技有限公司 | 终端设备的位姿处理方法、装置、设备、介质及产品 |
Also Published As
Publication number | Publication date |
---|---|
CN110533694B (zh) | 2024-02-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110533694A (zh) | 图像处理方法、装置、终端及存储介质 | |
US10540772B2 (en) | Feature trackability ranking, systems and methods | |
CN108665508B (zh) | 一种即时定位与地图构建方法、装置及存储介质 | |
CN107633526B (zh) | 一种图像跟踪点获取方法及设备、存储介质 | |
KR20220009393A (ko) | 이미지 기반 로컬화 | |
CN110648397B (zh) | 场景地图生成方法、装置、存储介质及电子设备 | |
US10217221B2 (en) | Place recognition algorithm | |
CN109410316B (zh) | 物体的三维重建的方法、跟踪方法、相关装置及存储介质 | |
CN111709973B (zh) | 目标跟踪方法、装置、设备及存储介质 | |
US11922658B2 (en) | Pose tracking method, pose tracking device and electronic device | |
JP6609640B2 (ja) | 電子デバイス上における環境マッピング用のフィーチャ・データの管理 | |
US10861185B2 (en) | Information processing apparatus and method of controlling the same | |
CN109086725B (zh) | 手部跟踪方法及机器可读存储介质 | |
CN113112542A (zh) | 一种视觉定位方法、装置、电子设备及存储介质 | |
CN112967340A (zh) | 同时定位和地图构建方法、装置、电子设备及存储介质 | |
KR20190078890A (ko) | 그리드 기반의 평면 추정 방법 및 장치 | |
WO2020019353A1 (zh) | 跟踪控制方法、设备、计算机可读存储介质 | |
CN117455989A (zh) | 室内场景slam追踪方法、装置、头戴式设备及介质 | |
CN110738175A (zh) | 人脸图像处理方法、装置、计算机设备和存储介质 | |
CN112016609B (zh) | 一种图像聚类方法、装置、设备及计算机存储介质 | |
CN114022567A (zh) | 位姿跟踪方法、装置、电子设备及存储介质 | |
CN109960961A (zh) | 行人识别方法和装置 | |
CN112947748A (zh) | 增强现实ar远程交互方法及其系统 | |
US9361540B2 (en) | Fast image processing for recognition objectives system | |
KR101828340B1 (ko) | 객체 추출 방법 및 그 장치 |
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 |