掌桥专利:专业的专利平台
掌桥专利
首页

数据处理方法、终端和服务器

文献发布时间:2023-06-19 11:50:46


数据处理方法、终端和服务器

技术领域

本申请涉及图像测量技术领域,尤其涉及一种数据处理方法、终端和服务器。

背景技术

基站站点在建设的过程中,需要勘测站点的信息,包括站点大小、站点内的设备的尺寸、型号、位置以及设备之间连接关系、相对位置等信息。通过采集站点现场的图像数据,以获取站点清晰完整的信息,实现站点数字化,为后续的站点设计和运维等工作提供数据支持。

现有技术中,作业员手持相机在被测场景内拍摄基于中心投影的框幅图像,完成采集后将框幅图像上传至服务器,服务器根据框幅图像计算图像位姿,进而实现站点数字化。

由于单张框幅图像视场角有限,为计算图像位姿,需保证采集的框幅图像之间具有足够的重叠率,才能够满足位姿计算要求,对图像采集人员的技能要求较高,框幅图像的不合格率较高,当采集的框幅图像不合格时,需要图像采集人员重新上站采集,耗时费力。

发明内容

本申请实施例提供了一种数据处理方法,用于根据全景图像进行目标场景三维重建,可以降低对图像采集人员的技能要求,提高图像三维重建的成功率,避免图像采集人员反复上站采集数据。

本申请第一方面提供了一种数据处理方法,包括:终端获取全景图像序列,该全景图像序列包括以不同位姿对目标场景拍摄的多张全景图像,该多张全景图像包括连续拍摄的第一全景图像和第二全景图像;在该第二全景图像的重叠度大于或等于第一阈值的情况下,该终端向服务器发送包括该第一全景图像和该第二全景图像的目标全景图像序列,该第二全景图像的重叠度为该第二全景图像与该第一全景图像的重叠区域占该第二全景图像的比例,该目标全景图像序列为该多张全景图像的一部分,该目标全景图像序列用于该目标场景的三维重建。

本申请实施例提供的数据处理方法,终端获取全景图像序列后,可以对连续拍摄得到的第一全景图像和第二全景图像的重叠度进行检测,在重叠度大于或等于第一阈值的情况下,可以向服务器发送包括第一全景图像和第二全景图像的目标全景图像序列,用于目标场景的三维重建。由于全景图像采集的信息全面,可以降低对于图像采集人员的技能要求。此外,终端通过筛选全景图像,可以降低图像不合格率,避免图像采集人员反复上站采集数据。

在第一方面的一种可能的实现方式中,该第二全景图像为在该第一全景图像拍摄之后连续拍摄的图像。

本申请实施例提供的数据处理方法,第二全景图像为第一全景图像之后拍摄的图像,终端采集全景图像序列需经历一段时长的连续拍摄,本方案中将采集的第二全景图像,与采集到前一张第一全景图像进行重叠度检测,可以即时获取第二全景图像的重叠度是否满足预设要求,使得图像采集人员快速确定当前采集图像是否合格,便于在采集图像不合格时即时补拍,避免整组全景图像序列拍摄完成后由于重叠度不合格而导致的全景图像序列重新采集。

在第一方面的一种可能的实现方式中,该目标全景图像序列中的特定标志物的数量大于或等于第二阈值,该特定标志物为设置在该目标场景中用于进行图像尺寸标定的标志物。

本申请实施例提供的数据处理方法,对全景图像序列的多张全景图像中出现的特定标志物进行检测,确定全景图像序列中特定标志物的数量大于或等于预设的第二阈值,需要说明的是,若目标场景中设置的特定标志物由多个标志物组成,可以分别检测每种标志物在全景图像序列中的数量,分别确定每种标志物的数量大于或等于预设的阈值,可选的,每种标志物的数量阈值相同。由于全景图像序列中特定标志物的数量大于或等于预设阈值,则可以根据该全景图像序列确定特定标志物在目标场景中的位置,可以用于进行图像尺寸标定,提升三维建模时的精确度。

在第一方面的一种可能的实现方式中,该目标全景图像序列中还包括拍摄有特定标志物的第三全景图像,该特定标志物为设置在该目标场景中用于进行图像尺寸标定的标志物,该方法还包括:该终端确定在该第三全景图像中的特定标志物的位置范围;该终端向该服务器发送该位置范围,该位置范围用于确定在该第三全景图像中该特定标志物的位置。

本申请实施例提供的数据处理方法,终端可以检测拍摄有特定标志物的第三全景图像中特定标志物的位置范围,并向服务器发送该位置范围用于确定该特定标志物的精确位置,避免在全部第三全景图像中检测特定标志物,可以减少计算量。

在第一方面的一种可能的实现方式中,该目标全景图像序列的相机位姿的误差小于或等于第三阈值,该目标全景图像序列的相机位姿根据该目标全景图像序列的同名像点进行位姿恢复确定,该同名像点为该目标全景图像序列中重叠度满足第一预设条件的图像对的像点。

本申请实施例提供的数据处理方法,终端可以进行相机位姿估计,确定误差小于或等于预设阈值的全景图像序列为目标全景图像序列,由此,可以提高目标场景三维重建的成功率。

在第一方面的一种可能的实现方式中,该同名像点为该图像对投影至三维球面,由基于网格的运动统计法GMS获取。

本申请实施例提供的数据处理方法,通过将目标全景图像序列中重叠度满足第一预设条件的图像对投影至三维球面确定同名像点,通过网格划分、运动统计特性的方法可以迅速剔除错误匹配,以此来提高匹配的稳定性。

在第一方面的一种可能的实现方式中,该目标全景图像序列的相机位姿误差为,将目标场景中的物点根据该目标全景图像序列的该相机位姿投影至三维球面形成的点,与该物点在该目标全景图像序列中的像点转换至该三维球面形成的点之间的球面距离。

本申请实施例提供的数据处理方法,将一个特征点物点在世界坐标系中的坐标反投影到图像上的像点坐标,与物点对应的图像中同名像点坐标之间的距离可以用于度量相机位姿的误差,在三维球面中计算相机位姿误差,可以减少计算量。

在第一方面的一种可能的实现方式中,该方法还包括:该终端向该服务器发送该目标全景图像序列的相机位姿,该相机位姿用于实现该目标场景的三维重建。

本申请实施例提供的数据处理方法,终端可以将目标全景图像序列的相机位姿发送给服务器,用于实现目标场景的三维重建,在该方案中,服务器获取终端发送的相机位姿后,可以以该相机位姿为初始位姿进行计算,减少计算量,提升是三维重建速度。

在第一方面的一种可能的实现方式中,该目标全景图像序列还满足第二预设条件;该第二预设条件包括以下至少一种:该全景图像的模糊度满足预设的第三预设条件;以及,该全景图像的曝光度满足预设的第四预设条件;以及,该全景图像的该无效区域占比小于或等于第五阈值,该无效区域包括拍摄到的该目标场景外的区域,该无效区域包括以下至少一个:行人区域、道路车辆区域和天空区域。

本申请实施例提供的数据处理方法,终端该可以对获取的全景图像根据多种可能的预设条件组合进行筛选,包括模糊度、曝光度等图像质量指标和图像的无效区域占比,筛选出的满足预设条件的目标图像序列实现目标场景三维重建的成功率较高。

本申请实施例的第二方面提供了一种数据处理方法,包括:服务器接收终端发送的全景图像序列,该全景图像序列包括以不同位姿对目标场景依序拍摄的多张全景图像;该服务器根据该全景图像序列的同名像点确定该全景图像序列的相机位姿,以实现该目标场景的三维重建,该全景图像序列的相机位姿的误差小于或等于第一阈值。

本申请实施例提供的数据处理方法,服务器接收终端发送的全景图像序列后,相机位姿的的误差小于或等于第一阈值,这样,服务器根据该全景图像实现三维重建的成功率较高。

在第二方面的一种可能的实现方式中,该同名像点为该全景图像序列中重叠度满足预设条件的图像对的像点,

本申请实施例提供的数据处理方法,重叠度满足预设条件的图像对被用于进行图像匹配,确定同名点,可以提高计算效率。

在第二方面的一种可能的实现方式中,该同名像点为该图像对投影至三维球面,由基于网格的运动统计法GMS获取。

本申请实施例提供的数据处理方法,将目标全景图像序列中重叠度满足第一预设条件的图像对投影至三维球面确定同名像点,通过网格划分、运动统计特性的方法可以迅速剔除错误匹配,以此来提高匹配的稳定性。

在第二方面的一种可能的实现方式中,该服务器检测该全景图像中的无效区域,该无效区域包括拍摄到的该目标场景外的区域,该无效区域包括以下至少一个:行人区域、道路车辆区域和天空区域;该同名像点为该全景图像中该无效区域之外的像点。

本申请实施例提供的数据处理方法,服务器检测全景图像中的无效区域,在去除无效区域后的有效图像区域搜索同名像点,进行图像匹配,可以提高确定同名像点的效率。

在第二方面的一种可能的实现方式中,该全景图像序列中包括拍摄有特定标志物的全景图像,该特定标志物为设置在该目标场景中用于进行图像尺寸标定的标志物;该服务器根据该全景图像序列的同名像点确定该全景图像序列的相机位姿包括:该服务器根据该同名像点和该特定标志物的位置确定该全景图像的相机位姿,该相机位姿用于实现该目标场景的三维重建。

本申请实施例提供的数据处理方法,全景图像序列中包括拍摄有特定标志物的全景图像,用于进行图像尺寸标定,同名像点和该特定标志物的位置确定该全景图像的相机位姿,可以提高计算精度。

在第二方面的一种可能的实现方式中,该服务器接收来自该终端的该全景图像的特定标志物的位置范围;该服务器从该特定标志物的位置范围中确定该特定标志物的位置。

本申请实施例提供的数据处理方法,服务器接收终端发送的特定标志物的位置范围,根据该位置范围确定该特定标志物的精确位置,避免在全景图像整体中检测特定标志物,可以减少计算量。

在第二方面的一种可能的实现方式中,该方法还包括:该服务器接收来自该终端的该全景图像序列的第一相机位姿,该第一相机位姿为该终端确定的该全景图像序列的相机位姿;该服务器根据该第一相机位姿确定该全景图像序列的第二相机位姿,该第二相机位姿的精度高于该第一相机位姿。

本申请实施例提供的数据处理方法,服务器接收来自终端的全景图像序列的相机位姿发送,可以以该相机位姿为初始位姿进行计算,减少计算量,提升是三维重建速度。

在第二方面的一种可能的实现方式中,该全景图像序列满足第一预设条件,该第一预设条件包括以下至少一个:该全景图像序列中的第二全景图像的重叠度大于或等于预设的第二阈值,该第二全景图像为在第一全景图像拍摄之后连续拍摄得到,该第二全景图像的重叠度为该第二全景图像与该第一全景图像的重叠区域占该第二全景图像的比例;以及,该全景图像序列中的特定标志物的数量大于或等于预设的特定标志物标识数量阈值;以及,该全景图像的模糊度满足第二预设条件;以及,该全景图像的曝光度满足第三预设条件;以及,该全景图像序列的相机位姿的误差小于或等于第三阈值,该全景图像序列的相机位姿根据该全景图像序列的同名像点进行位姿恢复确定,该同名像点为该目标全景图像序列中重叠度满足预设条件的图像对的像点。

本申请实施例提供的数据处理方法,服务器可以对获取的全景图像序列根据多种可能的预设条件组合进行筛选,包括模糊度、曝光度等图像质量指标、连续拍摄图像的重叠度,特定标志物的数量等,筛选出的满足预设条件的目标图像序列实现目标场景三维重建的成功率较高。

本申请实施例第三方面提供了一种终端,包括:获取模块,用于获取全景图像序列,该全景图像序列包括以不同位姿对目标场景拍摄的多张全景图像,该多张全景图像包括连续拍摄的第一全景图像和第二全景图像;发送模块,用于在该第二全景图像的重叠度大于或等于第一阈值的情况下,向服务器发送包括该第一全景图像和该第二全景图像的目标全景图像序列,该第二全景图像的重叠度为该第二全景图像与该第一全景图像的重叠区域占该第二全景图像的比例,该目标全景图像序列为该多张全景图像的一部分,该目标全景图像序列用于该目标场景的三维重建。

在第三方面的一种可能的实现方式中,该第二全景图像为在该第一全景图像拍摄之后连续拍摄的图像。

在第三方面的一种可能的实现方式中,该目标全景图像序列中的特定标志物的数量大于或等于第二阈值,该特定标志物为设置在该目标场景中用于进行图像尺寸标定的标志物。

在第三方面的一种可能的实现方式中,该目标全景图像序列中还包括拍摄有特定标志物的第三全景图像,该特定标志物为设置在该目标场景中用于进行图像尺寸标定的标志物,该终端还包括:确定模块,用于确定在该第三全景图像中的特定标志物的位置范围;该发送模块还用于,向该服务器发送该位置范围,该位置范围用于确定在该第三全景图像中该特定标志物的位置。

在第三方面的一种可能的实现方式中,该目标全景图像序列的相机位姿的误差小于或等于第三阈值,该目标全景图像序列的相机位姿根据该目标全景图像序列的同名像点进行位姿恢复确定,该同名像点为该目标全景图像序列中重叠度满足第一预设条件的图像对的像点。

在第三方面的一种可能的实现方式中,该同名像点为该图像对投影至三维球面,由基于网格的运动统计法GMS获取。

在第三方面的一种可能的实现方式中,该目标全景图像序列的相机位姿误差为,将目标场景中的物点根据该目标全景图像序列的该相机位姿投影至三维球面形成的点,与该物点在该目标全景图像序列中的像点转换至该三维球面形成的点之间的球面距离。

在第三方面的一种可能的实现方式中,该发送模块还用于:向该服务器发送该目标全景图像序列的相机位姿,该相机位姿用于实现该目标场景的三维重建。

在第三方面的一种可能的实现方式中,该目标全景图像序列还满足第二预设条件;该第二预设条件包括以下至少一种:该全景图像的模糊度满足预设的第三预设条件;以及,该全景图像的曝光度满足预设的第四预设条件;以及,该全景图像的该无效区域占比小于或等于第五阈值,该无效区域包括拍摄到的该目标场景外的区域,该无效区域包括以下至少一个:行人区域、道路车辆区域和天空区域。

本申请实施例第四方面提供了一种服务器,其特征在于,包括:接收模块,用于接收终端发送的全景图像序列,该全景图像序列包括以不同位姿对目标场景依序拍摄的多张全景图像;确定模块,用于根据该全景图像序列的同名像点确定该全景图像序列的相机位姿,以实现该目标场景的三维重建,该全景图像序列的相机位姿的误差小于或等于第一阈值。

在第四方面的一种可能的实现方式中,该同名像点为该图像对投影至三维球面,由基于网格的运动统计法GMS获取。

在第四方面的一种可能的实现方式中,该服务器还包括:检测模块,用于检测该全景图像中的无效区域,该无效区域包括拍摄到的该目标场景外的区域,该无效区域包括以下至少一个:行人区域、道路车辆区域和天空区域;该同名像点为该全景图像中该无效区域之外的像点。

在第四方面的一种可能的实现方式中,该全景图像序列中包括拍摄有特定标志物的全景图像,该特定标志物为设置在该目标场景中用于进行图像尺寸标定的标志物;该确定模块还用于,根据该同名像点和该特定标志物的位置确定该全景图像的相机位姿,该相机位姿用于实现该目标场景的三维重建。

在第四方面的一种可能的实现方式中,该接收模块还用于,接收来自该终端的该全景图像的特定标志物的位置范围;该确定模块还用于,从该特定标志物的位置范围中确定该特定标志物的位置。

在第四方面的一种可能的实现方式中,该接收模块还用于,接收来自该终端的该全景图像序列的第一相机位姿,该第一相机位姿为该终端确定的该全景图像序列的相机位姿;该确定模块还用于,根据该第一相机位姿确定该全景图像序列的第二相机位姿,该第二相机位姿的精度高于该第一相机位姿。

在第四方面的一种可能的实现方式中,该全景图像序列满足第一预设条件,该第一预设条件包括以下至少一个:该全景图像序列中的第二全景图像的重叠度大于或等于预设的第二阈值,该第二全景图像为在第一全景图像拍摄之后连续拍摄得到,该第二全景图像的重叠度为该第二全景图像与该第一全景图像的重叠区域占该第二全景图像的比例;以及,该全景图像序列中的特定标志物的数量大于或等于预设的特定标志物标识数量阈值;以及,该全景图像的模糊度满足第二预设条件;以及,该全景图像的曝光度满足第三预设条件;以及,该全景图像序列的相机位姿的误差小于或等于第三阈值,该全景图像序列的相机位姿根据该全景图像序列的同名像点进行位姿恢复确定,该同名像点为该目标全景图像序列中重叠度满足预设条件的图像对的像点。

本申请实施例第五方面提供了一种终端,其特征在于,包括处理器和存储器,该处理器和该存储器相互连接,其中,该存储器用于存储计算机程序,该计算机程序包括程序指令,该处理器用于调用该程序指令,执行如上述第一方面以及各种可能的实现方式中任一项该的方法。

本申请实施例第六方面提供了一种服务器,其特征在于,包括处理器和存储器,该处理器和该存储器相互连接,其中,该存储器用于存储计算机程序,该计算机程序包括程序指令,该处理器用于调用该程序指令,执行如上述第二方面以及各种可能的实现方式中任一项该的方法。

本申请实施例第七方面提供了一种数据处理装置,其特征在于,包括处理器和存储器,该处理器和该存储器相互连接,其中,该存储器用于存储计算机程序,该计算机程序包括程序指令,该处理器用于调用该程序指令,执行如上述第一方面和第二方面以及各种可能的实现方式中任一项该的方法。

本申请实施例第八方面提供了一种包含指令的计算机程序产品,其特征在于,当其在计算机上运行时,使得该计算机执行如上述第一方面和第二方面以及各种可能的实现方式中任一项该的方法。

本申请实施例第九方面提供了一种计算机可读存储介质,包括指令,其特征在于,当该指令在计算机上运行时,使得计算机执行如上述第一方面和第二方面以及各种可能的实现方式中任一项该的方法。

本申请实施例第十方面提供了一种一种芯片,包括处理器。处理器用于读取并执行存储器中存储的计算机程序,以执行上述任一方面任意可能的实现方式中的方法。可选地,该芯片该包括存储器,该存储器与该处理器通过电路或电线与存储器连接。进一步可选地,该芯片还包括通信接口,处理器与该通信接口连接。通信接口用于接收需要处理的数据和/或信息,处理器从该通信接口获取该数据和/或信息,并对该数据和/或信息进行处理,并通过该通信接口输出处理结果,该通信接口可以是输入输出接口。

从以上技术方案可以看出,本申请实施例具有以下优点:

本申请实施例提供的数据处理方法,由于全景图像采集的信息全面,可以降低对于图像采集人员的技能要求。终端获取全景图像序列后,将筛选重叠度满足预设重叠度阈值的全景图像,发送给服务器用于目标场景的三维重建,终端通过筛选全景图像,可以降低图像不合格率,避免图像采集人员反复上站采集数据。

终端采集全景图像序列需经历一段时长的连续拍摄,本方案中将采集的第二全景图像,与采集到前一张第一全景图像进行重叠度检测,可以即时获取第二全景图像的重叠度是否满足预设要求,使得图像采集人员快速确定当前采集图像是否合格,便于在采集图像不合格时即时补拍,避免整组全景图像序列拍摄完成后由于重叠度不合格而导致的全景图像序列重新采集。

服务器获取经筛选的满足预设重叠度阈值的全景图像,可以提高三维重建的成功率,避免图像采集人员反复上站采集数据。

附图说明

图1为本申请实施例中勘测场景示意图;

图2为本申请实施例中数据处理方法的实施例示意图;

图3为本申请实施例中相机位姿计算的坐标系示意图;

图4为本申请实施例中图像语义分割识别结果的示意图;

图5为本申请实施例中数据处理方法的另一个实施例示意图;

图6为本申请实施例中终端的一个实施例示意图;

图7为本申请实施例中服务器的一个实施例示意图;

图8为本申请实施例中终端的另一个实施例示意图;

图9为本申请实施例中服务器的另一个实施例示意图;

图10为本申请实施例中数据处理装置的一个实施例示意图。

具体实施方式

本申请实施例提供了一种数据处理方法,用于根据全景图像进行目标场景三维重建,可以降低对图像采集人员的技能要求,提高图像三维重建的成功率,避免图像采集人员反复上站采集数据。

下面结合附图,对本申请的实施例进行描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。本领域普通技术人员可知,随着技术的发展和新场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块。在本申请中出现的对步骤进行的命名或者编号,并不意味着必须按照命名或者编号所指示的时间/逻辑先后顺序执行方法流程中的步骤,已经命名或者编号的流程步骤可以根据要实现的技术目的变更执行次序,只要能达到相同或者相类似的技术效果即可。

为了便于理解,下面对本申请涉及的部分技术术语进行简要介绍:

全景图像:广义的全景图像是指广角图,即视角较大的图像。本申请实施例中特指水平视角呈360度,垂直视角呈180度的图像,全景图像可以通过不同的投影方式实现,常见的包括:等角投影、等矩形投影(equirectangular projection)、正交投影和等积投影等,具体此处不做限定。由于全景图像需要将尽可能大的三维场景投影到有限的二维图像平面内呈现和存储,由各种投影方式产生的全景图像均存在较大的图像变形。

全景相机:用于采集全景图像,全景相机设置有至少两个鱼眼镜头,或多个广角镜头,或多个普通镜头,具体此处不做限定。各镜头采集的图像经过拼接技术可以转换为全景图像,具体拼接方法不做限定。

全景图像序列:在不同时间、不同方位对目标依序连续获取的系列全景图像,本申请中主要涉及对一个场景或站点进行连续拍摄获取的系列全景图像。

图像重叠区域:指在两张图像中包含相同物体的图像区域,图像重叠区域占图像整体的比例为重叠度。

图像位姿:指相机在拍摄该图像时的相机位姿,相机的位姿即相机在空间中的位置和相机的朝向,可以分别看作相机从原始参考位置到当前位置的平移变换和旋转变换。

图像匹配:从两张有重叠信息的图像中,提取每张图像的特征点及特征点对应的特征向量做为描述子,利用特征向量确定两张图像中对应相同物点的像点。不同图像中对应相同物点的多个像点称为同名像点。

基于网格的运动统计法(grid-based motion statistics,GMS):将运动平滑度作为一个统计量,进行局部区域的匹配的方法,用于快速、超鲁棒的特征匹配。

SFM:structure from motion,从多张图像中确定被摄物体的稀疏点云及图像的位姿(位置与姿态)的技术。

双目测量:已知两张图像对应的相机位姿,通过量测该两张图像中的同名像点,确定该点对应的物点的三维坐标的方法。

框幅图像:常见的手机或单反等拍摄的中心投影图像。

相对定向:恢复或确定像对在摄影时的相对关系。

PnP(pespective-n-point)算法:根据已知的n个空间3D点与图像2D点对应的点对,计算相机位姿的算法。

前方交会:根据已知的2张图像的位姿及图像同名像点,确定同名像点对应的物点的三维坐标。

为了解站点信息,通过采集站点的图像信息,基于图像信息进行三维重建,进而实现站点数字化,可以为后续设计或运维等提供数据支撑,例如获取站点大小、站点内的设备的尺寸、型号、位置以及设备之间连接关系、相对位置等信息。

作业员手持框幅相机,在被测场景内拍摄框幅图像,利用计算机视觉中SFM算法,计算图像拍摄时的相机位姿,结合双目测量功能完成数据采集。由于框幅图像的单张图像的视场角有限,为满足位姿计算要求,采集的多张图像之间需要包含足够的重复目标,对场景内目标进行双目测量,需要至少2张图像拍摄到目标,普通数据采集人员由于专业度不够或经验不足,易于产生拍摄漏洞。

由于根据图像信息进行序列图像位姿计算的过程计算量较大,耗时长,而终端的运算性能有限,因此,通常图像采集人员通过终端采集图像,直接将所有采集的图像上传至服务器侧,然后由服务器侧集中进行计算,一旦在服务器计算过程中出现采集图像不合格的情况,就需要图像采集人员再次上站进行拍摄,耗时费力。

服务器基于普通框幅图像的三维重建,当遇到场景中景物纹理单一或者景物较少时,获取的特征点非常相似或者缺少足够特征点被连续跟踪导致重建失败。

本申请实施例提供了一种数据处理方法,用于采集满足站点数字化要求的全景图像,可以提高采集全景图像的质量,降低图像采集人员再上站率。

请参阅图1,为本申请实施例中勘测场景示意图;

本申请实施例提供的图像采集方法,通过图像采集设备在站点中采集全景图像,首先,在拍摄场景中预先放置特定标志物,常见的特定标志物包括标靶或者标杆,其中,标杆两端的距离已知,标靶之间的距离和角度已知,图1示出了一种特定标志物,包括3个标靶,其中,1号标靶与2号标靶的距离为1米,1号标靶与3号标靶的距离也为1米,且1号标靶与2号、3号标靶的连线之间的夹角为90度,这样,3个标靶可以确定一个平面,可选的,1号标靶可以作为该平面的坐标系原点,由此,可以对拍摄图像进行尺寸标定。

然后图像采集人员使用图像采集设备进行单点图像拍摄,可选的,为了使得特定标志物被拍摄到,图像采集人员选定的拍摄点可以距离特定标志物一定距离,例如距离约一步半的位置,具体可以根据拍摄场景的不同而改变,此处不做具体限定。可选的,图像采集人员按照“一步一拍”的规则进行图像采集,图1示出了在该场景中“一步一拍”的拍摄轨迹。一步是指图像采集人员的一个步子,可以是走路或者跑步或者某种方式的移动的步子,此处对于一步的具体尺寸不做限定,需要说明的是,为实现三维重建,在一个场景中拍摄的一组图像需要覆盖全部场景。这里的一个场景可以是指一个房间内部,或者是室外,围绕目标拍摄物周围一圈,具体场景不做限定。

下面对本申请实施例提供的数据处理方法进行介绍,请参阅图2,为本申请实施例中数据处理方法的实施例示意图。

需要说明的是,通过本申请实施例提供的数据处理方法进行目标场景的三维重建的实现形式有多种:

一、可以由终端获取全景图像并进行图像位姿估计实现,实现过程请参考步骤201至步骤208,在步骤208之后可以直接根据相机位姿进行三维重建;

二、由终端将获取的全景图像上传至服务器,由服务器进行图像位姿估计实现,可参考步骤201、步骤209至213,终端直接将获取的全景图像序列上传服务器而不需要经步骤202至步骤208中的图像筛选;

三、终端获取全景图像并进行图像筛选,将符合预设条件的全景图像上传服务器,由服务器进行图像位姿估计实现,此处对于具体实现形式不做限定。下面,以第三种实现方式为例进行详细介绍。

201、终端获取全景图像;

图像采集设备用于采集全景图像,可以为配置全景相机的终端,或者为与终端具备通信连接的全景相机,具体此处不做限定。本申请实施例中,以智能终端加上外设全景相机为例进行说明,终端可以通过TypeC、蓝牙或wifi连接全景相机,通过客户端控制全景相机进行拍摄。

全景相机拍摄全景图像,并将全景图像发送至终端,终端获取全景图像,进而处理全景图像,实现图像预检测,确定拍摄的全景图像序列是否满足要求。

为计算图像位姿,需要获取至少两张全景图像,可选的,通过全景相机针对站点场景拍摄一组全景图像序列,包含多张全景图像,全景图像序列包含的全景图像数量此处不做限定。

202、终端对全景图像进行图像质量检测;

图像客观质量指标包括对焦、噪音、色彩、曝光和清晰度等,本实施例对于终端进行图像质量检测选取的客观质量指标的数量及类型不做限定。

可选的,终端检测该全景图像的曝光度和模糊度是否满足预设要求。下面分别进行介绍:

1)图像曝光度计算;

曝光度计算方法有多种,可选的,将图像由RGB空间转换到HSV色彩空间,得到图像每个像素的色相、饱和度、亮度,根据饱和度和亮度计算图像曝光度;可选的,还可以通过直接统计图像灰度直方图的算法计算曝光度,曝光度的计算方法具体此处不做限定。

得到拍摄图像的曝光度后,可以与预设的曝光度阈值进行比较,判断是否在阈值范围内,如果在阈值范围内,则图像曝光度合适,否则判定图像存在过度曝光或曝光不足,可选的,终端可以提示用户拍摄图像曝光异常。需要说明的是,曝光度阈值的具体范围此处不做限定。

本实施例中以采用灰度直方图分析算法为例进行介绍,设置曝光度阈值为1.0,若计算值大于1.0,则认为曝光异常。

可选的,若图像曝光度不合格,可以提示用户删除图像并重新拍摄。

2)图像模糊度计算;

模糊度的计算有多种,包括Tenengrad梯度方法、Laplacian梯度方法、梯度方差、或sobel模糊度检测算法等,具体此处不做限定。

计算拍摄图像模糊度值后,可以与预设的模糊度阈值进行比较,判断拍摄图像的模糊度是否在阈值范围内,若在阈值范围内,则图像的模糊度合格,否则不合格,可选的,终端可以提示用户拍摄图像存在模糊。模糊度阈值的具体范围此处不做限定,例如,设置模糊度阈值为6.0,若大于阈值,则认为图像模糊。

可选的,若图像模糊度不合格,可以提示用户删除图像并重新拍摄。

由于终端在获取全景图像后即可对图像质量进行检测,可以将检测结果及时反馈给图像采集人员,有助于提高全景图像合格率。

203、终端对全景图像进行无效区域检测;

无效区域是拍摄图像中除目标场景外无价值的部分图像,例如,运动物体等,常见的如数据采集人员或道路车辆等。终端预设无效区域的类型,例如定义拍摄图像中的运动物体为无效区域,并计算拍摄图像中无效区域的占比。

可选的,利用图像识别方法,识别拍摄图像中的无效区域,并计算拍摄图像中无效区域的占比,与预设的无效区域阈值进行比较,如果在阈值范围内,则图像合格,否则图像不合格。可选的,可以预设有效区域的阈值,并计算图像的有效区域占比,具体此处不再赘述。

示例性的,无效区域阈值为70%,利用MobileNet模型对全景图像进行语义分割,识别图像中运动区域范围,统计每张图像的运动区域范围在图像中占比,如果大于70%,则判断该图像的无效区域占比不合格。

可选的,若全景图像的无效区域大于预设的无效区域阈值,可以提示用户删除图像并重新拍摄。

204、终端检测连续两张图像的重叠度;

为减少手机的全景图像匹配步骤的计算量,可以对连续拍摄的全景图像序列的重叠度进行检测,并判断是否满足预设的重叠度阈值,若满足阈值,则图像重叠度合格,如果不满足,则全景图像重叠度不合格,需要重新拍摄。

示例性的,预设重叠度阈值为30%,终端获取第二张全景图像后,将与获取的第一张全景图像进行重叠度检测,若两张图像的重叠度大于或等于30%,则确定第二张图像的重叠度满足要求,否则提示重新拍摄第二张图像。类似地,终端获取第三张图像后,将第三张图像与第二张图像进行重叠度检测,以确定第三张图像是否满足重叠度要求。

需要说明的是,步骤205为可选步骤,可以执行,也可以不执行,具体此处不做限定。

205、终端对全景图像序列进行特定标志物统计;

图像中的特定标志物可以用于作为控制信息,预先定义特定标志物在全景图像中出现的数量阈值,以保证最后计算的图像位姿能够进行双目测量或矢量建模。数量阈值例如为2或3等,具体数值此处不做限定。

终端获取一个场景的全景图像序列后,将对该全景图像序列中所有全景图像中出现的特定标志物进行统计,特定标志物可能有多个,若每个特定标志物在该全景图像序列中出现的数量,大于或等于预设的该特定标志物的数量阈值,则该全景图像序列合格,否则整组全景图像序列不合格,提示用户特征标志物拍摄数据不足,需要重新拍摄。可选的,根据检测结果提示拍摄控制信息是否满足要求。

首先,终端需要识别每张全景图像中的特定标志物,可选的,利用MobileNet模型进行图像识别,识别每张图像中的特定标志物,并判断标志物的数量是否满足预设特定标志物的数量阈值。可选的,为提高计算速度,可以将特定标志物识别与无效区域识别进行合并,例如在获取一张全景图像后,利用MobileNet模型同时识别无效区域及特定标志物。

然后,终端统计全景图像序列中特定标志物数量,示例性的,若特定标志物为3个标靶,分别为1号标靶、2号标靶和3号标靶,终端需要对每张全景图像中进行识别,确定标靶类型和数量,然后统计全景图像序列所有的标靶类型和数量,例如,统计15张图像中出现标靶的类型以及数量,1号标靶的数量为4,2号标靶的为3,3号标靶的数量为5,预设的特定标志物的数量阈值为2,由于1号标靶、2号标靶以及3号标靶的数量均大于预设阈值2,因此,判断该全景图像序列的特定标志物数量合格,若1号标靶、2号标靶或3号标靶的数量小于2,则该全景图像序列不合格,可以提升用户重新进行拍摄。

可选的,为提高计算速度,可以在步骤203中,同时识别无效区域及特定标志物,记录每张全景图像的特定标志物的种类及数量,然后在本步骤中统计特定标志物数量是否满足要求即可。

206、图像检索;

为减少手机的全景图像匹配步骤的计算量,可以对全景图像序列进行图像检索,确定每张全景图像与该全景图像序列中其他图像之间的重叠关系,确定用于后续图像匹配的图像对。

可选的,按照一定的方法缩小图像后再确定图像之间的重叠度。例如缩小图像至图像像幅的水平方向和垂直方向的像素数都小于2000,然后对缩小全景图像进行图像检索,可以减少计算量。

可选的,预设重叠度阈值,确定与每张图像的重叠度高于该重叠度阈值的图像作为进行图像匹配的图像,例如,第二张至第四张图像及第六张图像与第一张图像的重叠度分别高于该重叠度阈值,则确定第二张至第四张图像及第六张图像分别与第一张图像进行图像匹配,即确定了四个图像对。

可选的,确定每张图像对应的重叠度最高的5张图像作为进行图像匹配的图像,例如,第二张至第六张图像为与第一张图像重叠度最高的5张图像,则确定第二张至第六张图像分别与第一张图像进行图像匹配。

207、图像匹配;

根据步骤207中图像检索获取的图像对进行图像匹配,以确定图像对中的同名像点。

进行图像特征点匹配的算法有多种,包括尺度不变性特征变换(scale-invariantfeature transform,SIFT)算法、加速鲁棒性特征(speeded up robust features,SURF)算法,或者ORB(oriented FAST and rotated BRIEF)算法,ORB算法是一种快速特征点提取和描述的算法,主要分为两部分,分别是特征点提取和特征点描述。特征提取是由FAST(features from accelerated segment test)算法发展来的,特征点描述是根据BRIEF(binary robust independent elementary features)特征描述算法改进而来。本申请对于匹配算法的具体类型不做限定,下面以改进的orb算法为例进行介绍。

传统的匹配算法是基于普通框幅图像的中心投影模型的匹配策略,本实施例提出基于三维球面坐标系,在全景球面空间搜索同名像点的匹配策略。本申请对传统的orb算法进行改进,在提取orb特征点后,将图像投影到三维球面上,在球面上划分网格,利用基于网格的运动统计法(grid-based motion statistics,GMS)确定同名像点,通过网格划分、运动统计特性的方法可以迅速剔除错误匹配,以此来提高匹配的稳定性。

可选的,利用基于RANSAC的二次多项式模型,剔除误匹配点,优化匹配结果,实现全景图像快速、高可靠匹配。

208、终端进行相机位姿恢复;

相机位姿恢复(pose estimation)的方式有多种,包括SFM(structure frommotion)技术,或者同步定位与地图构建(simultaneous localization and mapping,SLAM)技术等,具体此处不做限定,本实施例中以基于SFM技术进行相机位姿恢复进行介绍。

本申请对已有的SFM算法进行改进,根据全景图像的特点,提出基于三维球面坐标的相对定向、PnP和前方交会等算法。计算各全景图像对应的相机位姿,若相机位姿的误差小于或等于预设阈值,则计算成功,若相机位姿的误差大于预设阈值,则计算失败。可选的,若计算失败可以提示用户重新拍摄全景图像序列。

根据全景图像序列计算得到特征点物点在世界坐标系中的坐标,以及单张全景图像对应的相机位姿,包括图像的拍摄中心在世界坐标系中的坐标,以及世界坐标系与以拍摄中心为原点的三维球面坐标系之间的变换矩阵。将一个特征点物点在世界坐标系中的坐标反投影到图像上的像点坐标,与物点对应的图像中同名像点坐标之间的距离可以用于度量相机位姿的误差。可选的,若多个特征点反投影至图像后与对应像点的距离的标准差是否小于或等于阈值,则确定该图像的相机位姿计算成功。

请参阅图3,为本申请实施例中相机位姿计算的坐标系示意图。

图3涉及的坐标系包括:世界坐标系为O-XYZ,三维球面坐标系o-p0p1p2,图像平面坐标系uv。

其中,P点表示世界坐标系中的一个物点,[X Y Z]为物点P在世界坐标系中的坐标。o点为图像的拍摄中心,o点在世界坐标系中的坐标为[X

此外,R表示世界坐标系与三维球面坐标系之间的变换矩阵。

以PnP算法为例,在计算全景图像的相机位姿参数[X

其中,λ代表比例尺系数。

由于上述计算过程较复杂,本申请提供了简化算法,下面介绍本实施例中相机位姿的误差计算方法,在计算相机位姿误差时,将特征点物点反投影至三维球面坐标系,还将图像对应的像点投影至三维球面坐标系,在利用三维坐标计算时,定义三维空间中点与点或点与线的弧线距离阈值,以判断相机位姿计算是否成功。下面进行介绍:

预设三维球面上的弧长阈值T′,直接比较[p

其中,f为主距,即光心到成像面的距离。

类似地,在计算2张图像之间的相对位姿时,直接在三维球面坐标系中、进行计算。如公式(4),

其中,

若全景图像序列在本步骤中计算相机位姿时的误差满足阈值要求,则完成图像间初始位姿计算,获取每张全景图像对应的相机位姿,和拍摄场景的稀疏点云。全景图像序列合格,可选的,若计算失败,则提示用户重新进行拍摄。

本步骤根据全景图像的特点,进行基于三维图像空间球面坐标SFM构网,不再利用2维图像坐标进行相对定向、PnP等计算,而是将2维图像坐标转为3维空间球面坐标进行计算,从而可以减少计算量。

此外,相对于传统的SFM算法中每次增加一张图像进行局部优化,本步骤可以根据图像之间的同名像点对数,当满足预设条件是可以一次加入多张图像进行局部优化,预设条件可以是,未计算的图像与已经计算的图像之间的同名像点对数大于阈值,例如15,且PnP计算结果有效,由此,可以减少光束法平差优化次数,光束法平差是利用优化方法精确确定图像的位置与姿态的方法。可以减少计算量,降低计算时长,提高用户体验。

可选的,若仅通过终端进行位姿估计,可以根据本步骤获取的相机位姿进行目标场景的三维重建。

209、终端向服务器上传全景图像序列;

终端将全景图像序列发送至服务器,通信方式不做限定。

可选的,终端将特定标志物的检测结果发送给服务器。

可选的,终端将每张全景图像对应的相机位姿和拍摄场景的稀疏点云发送给服务器。

210、服务器进行干扰区域检测;

服务器接收终端发送的全景图像序列,并分别检测每张全景图像中的干扰区域,干扰区域是无需用于站点数字化的干扰信息,干扰区域可以预先定义,例如,设定图像中的运动物体和天空区域为干扰区域。需要说明的是,该干扰区域与步骤203中的无效区域的定义可以相同,也可以不同,具体此处不做限定。

可选的,通过图像识别的方法识别图像中的干扰区域,根据识别结果,生成每张图像的掩膜图片,保留非干扰区域,生成每张图像的掩膜图片;

可选的,考虑到全景图像的投影变形,直接利用图像识别算法进行语义分割识别率低。本实施例中,由于拍摄人员通常出现在图像下部区域,为便于识别图像下部区域中的干扰物,可以将图像各像点转换到三维球面坐标系上,对图像进行旋转变换,使得原全景图像下部区域,即主要的待识别区域旋转到球面的赤道区域,由于球面的赤道区域在转换为二维图像后的图像变形最小,由此可以提高图像语义分割识别率。

示例性的,利用DeepNet网络模型进行语义分割,同时识别匹配干扰区域,如天空、行人等,可选的,利用图像分割(graph cut)算法对标记为行人的区域进行优化,进一步提高分割精度。最后根据识别结果,制作相应的匹配掩膜图像,掩膜图像中灰度为0的像素表示干扰区域,灰度为255的像素表示非干扰区域。在图像特征点提取时,同时输入图像与对应的掩膜图像,掩膜图像中灰度为0的区域不提取特征点。

请参阅图4,为本申请实施例中图像语义分割识别结果的示意图。

左片为输入图像,右片为预测得到的语义分割识别结果,A区域表示天空,B区域表示有效区域,C区域表示特征标识物,D区域表示行人等运动物体构成的干扰区域。

211、服务器检测特定标志物;

服务器确定特定标志物在图像中的编号及精确位置。以特定标志物中的指定信息做为控制信息,保证计算图像位姿的所在的坐标系的比例尺正确。

可选的,在步骤205中终端通过预检测已经初步识别了特定标志物,因此,本步骤中服务器可以根据终端预检测上传的特定标志物检测结果,在识别的特定标志物的局部区域进行检测,确定特定标志物的精确位置。

可选的,利用DeepNet网络模型识别标靶区域。此外,为提高检测速度,可在步骤210进行对无效区域的识别的同时进行特定标志物的识别。

可选的,为确定特定标志物的精确位置,将全景图像中包含特定标志物的局部区域重新投影至中心投影平面,得到包含特定标志物的框幅图像,由此可以减少图像变形。然后,利用目标检测算法(例如Yolo v3)对特定标志物进行定位。示例性的,若特定标志物为标靶,对包含标靶的框幅图像进行二值化处理,分析二值化后的结果,确定标靶编号,利用圆形检测器,提取标靶中心点位置。

示例性的,基于原始全景图像在三维球面坐标系上进行旋转变换,得系列图像,其中,可以将全景图像中包含特定标志物,即标靶的局部区域重新投影至中心投影平面,得到包含标靶的框幅图像,由此可以减少标靶区域的图像变形,便于进行标靶精确定位。此外,还可以将原全景图像下部区域,即可能存在干扰的主要的待识别区域旋转到球面的赤道区域,并投影至中心投影平面,由于球面的赤道区域在转换为二维图像后的图像变形最小,由此可以提高图像语义分割识别率,此外,还可以将手持全景相机的图像采集人员转换至图像中间,易于被识别。

212、服务器进行图像匹配;

服务器根据图像检索获取高重叠度的图像对,或者,在步骤209中,服务器获取终端发送的图像对检测结果,确定图像之间的重叠关系,进而确定进行图像匹配的图像对。

根据步骤210干扰区域识别获取的全景图像和掩膜图像,对每张图像提取特征点,对图像对进行特征匹配,可选的,采用orb特征匹配算法进行匹配。可选的,若在步骤209中,服务器获取终端发送的图像匹配结果,可以该图像匹配结果作为匹配初始值,由此,可减少匹配搜索范围,提高匹配速度。

213、服务器进行相机位姿恢复;

服务器基于步骤212得到的匹配结果,进行相机位姿优化,并根据步骤211获取的特定标志物提取结果,精确确定每张全景图像的相机位姿和目标场景的稀疏点云。

可选的,若在步骤209中,服务器获取终端发送的终端预检测的位姿信息,可以该位姿信息作为位姿初始值进行检测,以减少计算量,提高位姿计算速度。

214、服务器实现站点数字化;

服务器存储全景图像序列的位姿信息和稀疏点云,据此进行立体量测和基于全景图像的矢量建模,从而实现站点数字化。

本申请实施例提供的数据处理方法,终端获取全景图像,通过终端进行预检测,将满足预设条件的全景图像发送给服务器用于站点的数字化,由于全景图像采集的信息全面,此外,终端通过预设条件筛选图像,可以降低图像不合格率,避免图像采集人员反复上站采集数据。

本申请实施例提供的数据处理方法,考虑到采集人员专业技能不足的问题,直接采集全景影像进行数据处理;在采集时,一边采集一边对采集的影像的本身质量进行检测,如曝光度、模糊度、无区域检测等,保证影像自身摄影质量;采集完成后,在手机端进行特定标志信息检测,预处理,再进行影像匹配、计算影像位姿估计,保证拍摄的多张影像能够精度确定拍摄时位姿,避免二次到现场采集。

针对全景影像变形较大的问题,对现有SFM算法进行改进,采用基于影像球面坐标的SFM构建,将全景影像坐标直接转到球面坐标进行相对定向、PnP求解等。

针对终端计算性能有限的问题,本申请实施例通过影像匹配的加速优化,包括缩小全景影像、图像检索,并提出基于球面网格的运动统计方法确定同名orb特征点,同时利用基于RANSAC的二次多项式模型,剔除误匹配点,优化匹配结果,实现全景影像快速、高可靠匹配。此外,对传统的SFM构建流程中每次只增加一张影像进行改进,本方案每次增加多张影像到已经构建的网络中,从而可以加快构网的速度,减少计算时间。从而可以解决手机无法进行全景影像SFM构网的问题,达到在用户可接受时间内实现手机预检测的效果。

本申请实施例提供的数据处理方法,可以适用于多种性能的终端设备,如表1所示,为测试手机预检测算法的性能,分别选择不同性能的手机进行测试,包括高端机(如华为mate 20pro)、中端机(如华为p10)、低端机(如荣耀9)。图像数量越多,计算时间越长。因而以勘测场景中较常处理的30张CV60相机图像为例进行统计,计算时间如表1所示。所有时间都在20分钟,在采集作业员可接受范围内。

表1手机预检测时间

经测试,加入手机预检测功能后,二次上站率由之前的30%降低到0,彻底杜绝二次上站。服务器算法优化后,合成成功率可达90%,相比现有的成功率60%有显著提高。

请参阅图5,为本申请实施例中数据处理方法的另一个实施例示意图;

本申请采集360度全景图像数据进行站点数字化信息采集,包括手机端侧及后台服务侧两部分工作。手机端侧,采集全景图像,进行图像质量检测和图像预处理,以及图像合成预检测,具体为改进的SFM位姿计算,通过该预检测确定是否能正确估算出每张图像拍摄时的相机位姿,如果满足要求,则将图像数据传递到后台服务器。服务器侧进行高精度图像合成,包括接收手机端发送的图像和位姿数据,对图像进行干扰区域识别,基于剔除干扰区域的位姿计算,结合手机端发送的位姿数据进行优化图像位姿计算处理,精确确定图像的位置以及姿态参数。

上面对本申请实施例中提供的数据处理方法进行了介绍,下面,将介绍实现该数据处理方法的终端和服务器。

请参阅图6,为本申请实施例中终端的一个实施例示意图;

本申请实施例提供了一种终端,包括:

获取模块601,用于获取全景图像序列,所述全景图像序列包括以不同位姿对目标场景拍摄的多张全景图像,所述多张全景图像包括连续拍摄的第一全景图像和第二全景图像;

发送模块602,用于在所述第二全景图像的重叠度大于或等于第一阈值的情况下,向服务器发送包括所述第一全景图像和所述第二全景图像的目标全景图像序列,所述第二全景图像的重叠度为所述第二全景图像与所述第一全景图像的重叠区域占所述第二全景图像的比例,所述目标全景图像序列为所述多张全景图像的一部分,所述目标全景图像序列用于所述目标场景的三维重建。

可选的,所述第二全景图像为在所述第一全景图像拍摄之后连续拍摄的图像。

可选的,所述目标全景图像序列中的特定标志物的数量大于或等于第二阈值,所述特定标志物为设置在所述目标场景中用于进行图像尺寸标定的标志物。

可选的,所述目标全景图像序列中还包括拍摄有特定标志物的第三全景图像,所述特定标志物为设置在所述目标场景中用于进行图像尺寸标定的标志物,所述终端还包括:

确定模块603,用于确定在所述第三全景图像中的特定标志物的位置范围;

所述发送模块602还用于,向所述服务器发送所述位置范围,所述位置范围用于确定在所述第三全景图像中所述特定标志物的位置。

可选的,所述目标全景图像序列的相机位姿的误差小于或等于第三阈值,所述目标全景图像序列的相机位姿根据所述目标全景图像序列的同名像点进行位姿恢复确定,所述同名像点为所述目标全景图像序列中重叠度满足第一预设条件的图像对的像点。

可选的,所述同名像点为所述图像对投影至三维球面,由基于网格的运动统计法GMS获取。

可选的,所述目标全景图像序列的相机位姿误差为,将目标场景中的物点根据所述目标全景图像序列的所述相机位姿投影至三维球面形成的点,与该物点在所述目标全景图像序列中的像点转换至所述三维球面形成的点之间的球面距离。

可选的,所述发送模块602还用于:

向所述服务器发送所述目标全景图像序列的相机位姿,所述相机位姿用于实现所述目标场景的三维重建。

可选的,所述目标全景图像序列还满足第二预设条件;

所述第二预设条件包括以下至少一种:

所述全景图像的模糊度满足预设的第三预设条件;以及,

所述全景图像的曝光度满足预设的第四预设条件;以及,

所述全景图像的所述无效区域占比小于或等于第五阈值,所述无效区域包括拍摄到的所述目标场景外的区域,所述无效区域包括以下至少一个:行人区域、道路车辆区域和天空区域。

请参阅图7,为本申请实施例中服务器的一个实施例示意图;

本申请实施例提供的服务器,包括:

接收模块701,用于接收终端发送的全景图像序列,所述全景图像序列包括以不同位姿对目标场景依序拍摄的多张全景图像;

确定模块702,用于根据所述全景图像序列的同名像点确定所述全景图像序列的相机位姿,以实现所述目标场景的三维重建,所述全景图像序列的相机位姿的误差小于或等于第一阈值。

可选的,所述同名像点为所述图像对投影至三维球面,由基于网格的运动统计法GMS获取。

可选的,所述服务器还包括:

检测模块703,用于检测所述全景图像中的无效区域,所述无效区域包括拍摄到的所述目标场景外的区域,所述无效区域包括以下至少一个:行人区域、道路车辆区域和天空区域;所述同名像点为所述全景图像中所述无效区域之外的像点。

可选的,所述全景图像序列中包括拍摄有特定标志物的全景图像,所述特定标志物为设置在所述目标场景中用于进行图像尺寸标定的标志物;

所述确定模块702还用于,根据所述同名像点和所述特定标志物的位置确定所述全景图像的相机位姿,所述相机位姿用于实现所述目标场景的三维重建。

可选的,所述接收模块701还用于,接收来自所述终端的所述全景图像的特定标志物的位置范围;

所述确定模块702还用于,从所述特定标志物的位置范围中确定所述特定标志物的位置。

可选的,所述接收模块701还用于,接收来自所述终端的所述全景图像序列的第一相机位姿,所述第一相机位姿为所述终端确定的所述全景图像序列的相机位姿;

所述确定模块702还用于,根据所述第一相机位姿确定所述全景图像序列的第二相机位姿,所述第二相机位姿的精度高于所述第一相机位姿。

可选的,所述全景图像序列满足第一预设条件,

所述第一预设条件包括以下至少一个:

所述全景图像序列中的第二全景图像的重叠度大于或等于预设的第二阈值,所述第二全景图像为在第一全景图像拍摄之后连续拍摄得到,所述第二全景图像的重叠度为所述第二全景图像与所述第一全景图像的重叠区域占所述第二全景图像的比例;以及,

所述全景图像序列中的特定标志物的数量大于或等于预设的特定标志物标识数量阈值;以及,

所述全景图像的模糊度满足第二预设条件;以及,

所述全景图像的曝光度满足第三预设条件;以及,

所述全景图像序列的相机位姿的误差小于或等于第三阈值,所述全景图像序列的相机位姿根据所述全景图像序列的同名像点进行位姿恢复确定,所述同名像点为所述目标全景图像序列中重叠度满足预设条件的图像对的像点。

请参阅图8,为本申请实施例中终端的另一个实施例示意图;

图8示出的是与本申请实施例提供的终端的部分结构的框图。该终端包括:图像采集单元1710、传感器1730、显示单元1740、输入单元1750、存储器1760、处理器1770、以及电源1780等部件。本领域技术人员可以理解,图8中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

下面结合图8对终端的各个构成部件进行具体的介绍:

图像采集单元1710,用于采集全景图像,在本申请实施例中用于获取目标场景的图像,图像采集单元1710可以通过全景相机采集全景图像,全景相机设置有至少两个鱼眼镜头,或多个广角镜头,或多个普通镜头,具体此处不做限定。各镜头采集的图像经过拼接技术可以转换为全景图像,具体拼接方法不做限定。图像采集单元可以与全景相机通过有线或无线连接,包括TypeC、蓝牙或wifi等,具体连接形式此处不做限定。

显示单元1740可用于显示由用户输入的信息或提供给用户的信息以及终端的各种菜单。包括向用于展示采集的全景图像。显示单元1740可包括显示面板1741,可选的,可以采用液晶显示器(liquid crystal display,LCD)、有机发光二极管(organic light-emitting diode,OLED)等形式来配置显示面板1741。进一步的,触控面板1751可覆盖显示面板1741,当触控面板1751检测到在其上或附近的触摸操作后,传送给处理器1770以确定触摸事件的类型,随后处理器1770根据触摸事件的类型在显示面板1741上提供相应的视觉输出。虽然在图8中,触控面板1751与显示面板1741是作为两个独立的部件来实现终端的输入和输入功能,但是在某些实施例中,可以将触控面板1751与显示面板1741集成而实现终端的输入和输出功能。

输入单元1750可用于接收输入的数字或字符信息,以及产生与终端的用户设置以及功能控制有关的键信号输入。具体地,输入单元1750可包括触控面板1751以及其他输入设备1752。触控面板1751,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1751上或在触控面板1751附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板1751可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1770,并能接收处理器1770发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1751。除了触控面板1751,输入单元1750还可以包括其他输入设备1752。具体地,其他输入设备1752可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。

存储器1760可用于存储软件程序以及模块,处理器1770通过运行存储在存储器1760的软件程序以及模块,从而执行终端的各种功能应用以及数据处理。存储器1760可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1760可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

处理器1770是终端的控制中心,利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器1760内的软件程序和/或模块,以及调用存储在存储器1760内的数据,执行终端的各种功能和处理数据,从而对终端进行整体监控。可选的,处理器1770可包括一个或多个处理单元;优选的,处理器1770可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1770中。

终端还包括给各个部件供电的电源1780(比如电池),优选的,电源可以通过电源管理系统与处理器1770逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。

尽管未示出,可选的,终端可以包括音频电路,音频电路包括扬声器和传声器,可提供用户与终端之间的音频接口。

尽管未示出,可选的,终端可以包括无线保真(wireless fidelity,WiFi)模块,WiFi属于短距离无线传输技术,终端通过WiFi模块可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。

尽管未示出,可选的,终端还可以包括射频(radio frequency,RF)电路。

尽管未示出,终端还可以包括蓝牙模块等,在此不再赘述。

尽管未示出,可选的,终端还可以包括GPS模块。

尽管未示出,可选的,终端还可以包括至少一种传感器,例如磁力计、惯性测量单元陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。

在本申请实施例中,该终端所包括的处理器1770还具有实现上述各数据处理方法的功能。

请参阅图9,为本申请实施例中服务器的另一个实施例示意图;

本实施例提供的服务器可以是独立的计算机设备,也可以是虚拟机VM,虚拟机可以运行于一个计算机设备上,也可以位于多个计算机设备上。该虚拟机还可以是不依赖于独立的计算机设备,而是从资源池中划分出来的计算和传输资源。一个计算机设备上的不同处理器,或者多个计算机设备上的不同处理器,具体此处不做限定。

该服务器1800可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器1801和存储器1802,该存储器1802中存储有程序或数据。

其中,存储器1802可以是易失性存储或非易失性存储。可选地,处理器1801是一个或多个中央处理器(CPU,Central Processing Unit,该CPU可以是单核CPU,也可以是多核CPU。处理器1801可以与存储器1802通信,在服务器1800上执行存储器1802中的一系列指令。

该服务器1800还包括一个或一个以上有线或无线网络接口1803,例如以太网接口。

可选地,尽管图9中未示出,服务器1800还可以包括一个或一个以上电源;一个或一个以上输入输出接口,输入输出接口可以用于连接显示器、鼠标、键盘、触摸屏设备或传感设备等,输入输出接口为可选部件,可以存在也可以不存在,此处不做限定。

本实施例中服务器1800中的处理器1801所执行的流程可以参考前述方法实施例中描述的方法流程,此处不加赘述。

请参阅图10,为本申请实施例中数据处理装置的一个实施例示意图;

全景相机,设置有至少两个鱼眼镜头,或多个广角镜头,或多个普通镜头,具体此处不做限定。各镜头采集的图像经过拼接技术可以转换为全景图像,具体拼接方法不做限定。

终端,包括手机、平板电脑或个人数字助理(personal digital assistant,PDA)等,具体此处不做限定。

终端硬件模块包括:处理器、存储器和通信接口。其中,通信接口用于与全景相机实现通信连接,包括各种形式的有线或无线连接,包括TypeC、蓝牙或wifi等,具体此处不做限定。存储器:用于存储数据和代码的存储介质。处理器:用于执行代码的处理器,比如ARM处理器。

终端软件模块包括:相机控制模块和相机预检测模块。相机控制模块:用于控制全景相机拍照,将图像从全景相机传输到手机。相机预检测算法与软件:本申请提出的算法与软件,用于对拍摄的图像进行质量检测,确定图像是否满足图像位姿计算要求。

服务器,可以是独立的计算机设备,也可以是虚拟机VM,虚拟机可以运行于一个计算机设备上,也可以位于多个计算机设备上。该虚拟机还可以是不依赖于独立的计算机设备,而是从资源池中划分出来的计算和传输资源。一个计算机设备上的不同处理器,或者多个计算机设备上的不同处理器,具体此处不做限定。

服务器硬件模块包括:处理器、存储器和通信接口。存储器可以是易失性存储或非易失性存储,该存储器中存储有程序或数据。

服务器运行的软件包括优化图像位姿计算模块、数据库和建模软件;优化图像位姿计算模块:本申请提出的改进算法,用于对图像位姿计算进行改进,提高位姿计算精度。数据用于存储图像、图像位姿参数、勘测数据及建模数据等。建模软件利用数据库中图像及其位姿信息进行场景建模,用于后续仿真,此外,虽然图中未示出,服务器还可以包括双目测距软件,用于计算图像位姿,测量目标位置和尺寸等勘测信息。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

相关技术
  • 终端访问系统服务器的数据处理方法与认证服务器
  • 数据处理方法、检测设备管理终端、用户终端及服务器
技术分类

06120113078784