用于终端设备的户型图生成方法、装置、设备及介质与流程

文档序号:32443274发布日期:2022-12-06 22:59阅读:51来源:国知局
用于终端设备的户型图生成方法、装置、设备及介质与流程

1.本技术涉及虚拟现实技术领域,尤其涉及一种用于终端设备的户型图生成方法、装置、设备及介质。


背景技术:

2.在现有的房屋模型构建方案中,通常由终端设备采用定位与地图构建(simultaneous localization and mapping,简称slam)技术对目标房屋进行拍摄,获取目标房屋对应的图像深度信息,并将获取到的图像深度信息上传至后端设备或服务器,由后端的制作人员根据图像深度信息进行点位拼接及三维建模,生成目标房屋对应的全景图和/或平面户型图。
3.然而,从前端采集图像深度信息到上传后端,并由后端的制作人员根据图像深度信息进行点位拼接及三维建模,整个制作周期比较长、人工制作成本高;并且,slam定位信息容易丢失,后端的制作人员难以识别信息的完整性,以此进行点位拼接及三维建模的准确性也难以保证。


技术实现要素:

4.本技术的多个方面提供一种用于终端设备的户型图生成方法、装置、设备及介质,用以在移动端共同完成房屋信息拍摄及户型图生成,并且在生成户型图过程中,可以根据rgb信息对点云数据着色的结果,确定房屋中的墙体、门体、窗体在户型图中的位置,得到的户型图信息更丰富、完整。
5.本技术实施例提供一种用于终端设备的户型图生成方法,包括:获取目标房屋中各空间对象对应的点云数据和全景图,所述点云数据和全景图分别由与所述终端设备通信连接的激光扫描设备和rgb相机获得,所述全景图中包括各空间对象的墙体、门体和/或窗体;根据所述激光扫描设备和所述rgb相机之间的标定参数,确定所述点云数据对应的全景像素坐标,以及所述全景像素坐标在所述全景图中对应的rgb图像信息;根据所述rgb图像信息,对所述点云数据进行着色处理;基于着色后的点云数据,生成所述目标房屋对应的点云平面图,所述点云平面图中包括所述各空间对象的墙体对应的轮廓线;以及确定与所述各空间对象的门体和/或窗体分别对应的目标点云数据;根据点云数据到点云平面图的投影关系,在所述点云平面图的轮廓线上标记与所述目标点云数据对应的门体轮廓和/或窗体轮廓,并将标记后的点云平面图作为所述目标房屋对应的户型图,以用于展示。
6.在一可选实施例中,根据所述激光扫描设备和rgb相机之间的标定参数,确定所述点云数据对应的全景像素坐标,以及所述全景像素坐标在所述全景图中对应的rgb图像信息,包括:根据所述激光扫描设备和rgb相机之间的标定参数,将所述点云数据对应的每个三维点云坐标转换为相机坐标系下对应的相机坐标;以及将所述相机坐标转换为球坐标系下对应的球坐标,并基于球坐标与像素坐标的对应关系,确定对应的全景像素坐标;以及从所述全景图中,确定每个全景像素坐标分别对应的rgb图像信息。
7.在一可选实施例中,所述方法还包括:针对任意两个点位,根据在所述两个点位分别获取的点云数据及其对应的rgb图像信息进行点云配准,以得到所述两个点位之间的旋转平移矩阵。
8.在一可选实施例中,所述点云平面图支持编辑操作,所述方法还包括:响应在所述点云平面图上对目标点云数据执行的调整操作,调整所述目标点云数据的形态;以及根据所述目标点云数据调整形态前后分别对应的三维点云坐标及其对应的rgb图像信息,进一步进行点云配准,得到调整前后对应的旋转平移矩阵。
9.在一可选实施例中,根据所述rgb图像信息,对所述点云数据进行着色处理,包括:根据所述终端设备的显示限制条件,确定每次着色处理的点云范围;获取与所述点云范围对应的目标rgb图像信息;以及采用3d渲染引擎,对所述点云范围对应的目标点云数据绘制与所述目标rgb图像信息对应的纹理信息,以对所述目标点云数据进行着色处理。
10.在一可选实施例中,根据着色后的点云数据,生成所述目标房屋对应的点云平面图,包括:基于着色后的点云数据,生成所述目标房屋对应的三维点云模型;对所述三维点云模型做平面投影,得到所述目标房屋对应的点云平面图。
11.在一可选实施例中,确定与所述各空间对象的门体和/或窗体分别对应的目标点云数据,包括:根据所述三维点云模型对应的纹理信息,确定各空间对象的目标门体和/或目标窗体分别对应的三维点云坐标;以及根据所述三维点云坐标,确定各空间对象的目标门体和/或目标窗体分别对应的目标点云数据。
12.在一可选实施例中,根据点云数据到点云平面图的投影关系,在所述点云平面图的轮廓线上标记与所述目标点云数据对应的门体轮廓和/或窗体轮廓,包括:根据点云数据到点云平面图的投影关系,在点云平面图上确定与所述目标点云数据对应的目标位置,所述目标位置在所述点云平面图的轮廓线上;在所述点云平面图上对应所述目标位置处执行标记操作,以标记各空间对象的门体轮廓和/或窗体轮廓。
13.本技术实施例还提供一种用于移动端的户型图生成装置,包括:获取模块,用于获取目标房屋中各空间对象对应的点云数据和全景图,所述点云数据和全景图分别由与所述终端设备通信连接的激光扫描设备和rgb相机获得,所述全景图中包括各空间对象的墙体、门体和/或窗体;第一确定模块,用于根据所述激光扫描设备和所述rgb相机之间的标定参数,确定所述点云数据对应的全景像素坐标,以及所述全景像素坐标在所述全景图中对应的rgb图像信息;处理模块,用于根据所述rgb图像信息,对所述点云数据进行着色处理;生成模块,用于基于着色后的点云数据,生成所述目标房屋对应的点云平面图,所述点云平面图中包括所述各空间对象的墙体对应的轮廓线;第二确定模块,用于确定与所述各空间对象的门体和/或窗体分别对应的目标点云数;标记模块,用于根据点云数据到点云平面图的投影关系,在所述点云平面图的轮廓线上标记与所述目标点云数据对应的门体轮廓和/或窗体轮廓,并将标记后的点云平面图作为所述目标房屋对应的户型图,以用于展示。
14.本技术实施例还提供一种终端设备,包括:处理器和存储器,在所述处理器执行所述计算机程序时,用于实现所述方法中的任一步骤。
15.本技术实施例还提供一种存储有计算机程序的计算机可读存储介质,当所述计算机程序被处理器执行时,致使所述处理器实现所述方法中的各步骤。
16.在本技术实施例中,通过获取目标房屋中各空间对象的点云数据和全景图,可以
确定各空间对象的墙体、门体和/或窗体在全景图中对应的rgb图像信息;基于此,可以根据rgb图像信息对点云数据进行着色处理,以及基于着色后的点云数据,生成目标房屋对应的点云平面图、确定与各空间对象的门体和/或窗体分别对应的目标点云数据;进一步,根据点云数据到点云平面图的映射关系,可以在点云平面图中对应墙体的轮廓线上标记与目标点云数据对应的门体轮廓和窗体轮廓。通过这种方式,可以得到包括墙体轮廓、门体轮廓和窗体轮廓的户型图,户型图信息更丰富、完整;并且,该方法实现了在移动端共同完成拍摄及户型图生成功能,有助降低人工成本,以及提升生成户型图的准确性。
附图说明
17.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
18.图1为本技术实施例提供的一种房屋户型图生成方法的流程图;
19.图2a为本技术实施例提供的一种目标房屋对应的三维点云模型示意图;
20.图2b为本技术实施例提供的一种支持编辑功能的部分全景图;
21.图2c为本技术实施例提供的一种缺少点云数据的点云平面图;
22.图2d为本技术实施例提供的一种补充点云数据之后的点云平面图;
23.图2e为本技术实施例提供的一种带有轮廓线的点云平面图;
24.图2f为本技术实施例提供的另一种带有轮廓线的点云平面图;
25.图3为本技术实施例提供的一种户型图生成装置的结构示意图;
26.图4为本技术实施例提供的一种终端设备的结构示意图。
具体实施方式
27.为使本技术的目的、技术方案和优点更加清楚,下面将结合本技术具体实施例及相应的附图对本技术技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
28.由于现有的户型图生成方案是由前端负责采集房屋数据,后端负责点位拼接及建模的方式,这个过程不仅耗时长,人工成本高,而且准确性难以保证。为此,本技术实施例提供一种用于移动端的户型图生成方法,该方法可以实现在移动端共同完成房屋信息拍摄及户型图生成功能,有助降低人工成本,提升生成户型图的准确性;并且,在生成户型图过程中,通过采集房屋的全景图和点云数据,根据全景图中的rgb信息对点云数据着色处理,可以确定墙体、门体、窗体在房屋中的位置;进而,利用着色后的点云数据生成房屋对应的户型图,户型图信息更丰富、完整。
29.下面结合附图对本技术实施例提供的户型图生成方法进行详细说明。
30.图1为本技术实施例提供的户型图生成方法的流程图,该方法应用于移动设备,如图1所示,方法包括:
31.s1、获取目标房屋中各空间对象对应的点云数据和全景图,点云数据和全景图分别由与终端设备通信连接的激光扫描设备和rgb相机获得,全景图中包括各空间对象的墙体、门体和/或窗体;
32.s2、根据激光扫描设备和rgb相机之间的标定参数,确定点云数据对应的全景像素坐标,以及全景像素坐标在全景图中对应的rgb图像信息;
33.s3、根据rgb图像信息,对点云数据进行着色处理;
34.s4、基于着色后的点云数据,确定与各空间对象的门体和/或窗体分别对应的目标点云数据;
35.s5、根据着色后的点云数据,生成目标房屋对应的点云平面图,点云平面图中包括各空间对象的墙体对应的轮廓线;
36.s6、根据点云数据到点云平面图的投影关系,在点云平面图的轮廓线上标记与目标点云数据对应的门体轮廓和/或窗体轮廓,并将标记后的点云平面图作为目标房屋对应的户型图,以用于展示。
37.在本技术实施例中,通过使用与终端设备通信连接的激光扫描设备和rgb相机,可以分别获取目标房屋中各空间对象对应的点云数据和全景图,进而,可以从全景图中确定各空间对象的墙体、门体和/或窗体的位置信息。在本技术实施例中,不限定获取各空间对象对应的点云数据和图全景图的具体方式,在一可选实例中,可以依次采用激光扫描设备对各空间对象进行激光扫描,获取各空间对象对应的点云数据,以及采用rgb相机对各空间对象进行拍摄,获取各空间对象对应的全景图;在另一可选实施例中,也可以同时采用激光扫描设备和rgb相机对各空间对象进行激光扫描和全景拍摄,获取目标房屋对应的点云数据和全景图。进一步可选地,在同时采用激光扫描设备和rgb相机对各空间对象进行激光扫描和全景拍摄时,激光扫描设备和rgb相机按照设定的标定参数进行拍摄,该标定参数反映了激光扫描设备和rgb相机之间的相对位姿关系。在本技术实施例中,不限定获取标定参数的具体方式,可选地,该标定参数可以是默认的标定参数,也可以是拍摄人员根据目标房屋的现场环境设置的标定参数,还可以是通过特定算法实时生成的标定参数,具体可根据实际需求确定。
38.基于此,在获取到各空间对象对应的点云数据和全景图的情况下,可以根据激光扫描设备和rgb相机之间的标定参数,确定点云数据对应的全景像素坐标,以及全景像素坐标在全景图中对应的rgb图像信息,以根据rgb图像信息,对点云数据进行着色处理。通过这种方式,可以利用着色后的点云数据体现各空间对象中的环境信息,其中,环境信息包括但不限于各空间对象中的墙体、门体、窗体、床、桌子、椅子、沙发等对象对应的位置信息。进一步,基于着色后的点云数据,可以生成目标房屋对应的点云平面图,该点云平面图中包括各空间对象的墙体对应的轮廓线,以及确定与各空间对象的门体和/或窗体分别对应的目标点云数据;进而,根据点云数据到点云平面图的投影关系,可以在点云平面图的轮廓线上标记与目标点云数据对应的门体轮廓和/或窗体轮廓,以及将标记后的点云平面图作为目标房屋对应的户型图,可以从该户型图中清楚获知目标房屋对应的户型信息。
39.在本技术实施例中,不限定确定点云数据对应的全景像素坐标,以及全景像素坐标在全景图中对应的rgb图像信息的具体方式。可选地,可以根据激光扫描设备和rgb相机之间的标定参数,将点云数据对应的每个三维点云坐标转换为相机坐标系下对应的相机坐标;可选地,可以采用公式point2=[r t]*point1,在将点云数据对应的每个三维点云坐标point1(x,y,z,l)转换为相机坐标系下对应的相机坐标point2;其中,[r t]激光扫描设备和rgb相机所在点位对应的旋转平移矩阵,该旋转平移矩阵可以由激光扫描设备和rgb相机
之间的标定参数确定,具体的确定方式与标定参数的获取方式对应,在此不做限定。
[0040]
进一步,在得到相机坐标的情况下,可以将相机坐标转换为球坐标系下对应的球坐标,以基于球坐标与像素坐标的对应关系,确定对应的全景像素坐标。可选地,可以通过公式lon=atan(x,z),lat=asin(y/point2.norm)将相机坐标point2转换为球坐标系下对应的球坐标,以及通过公式u=(0.5-lon/(2*π)),v=(0.5

lat/π)确定球坐标对应的全景像素坐标(u,v);其中,lon为球坐标的经度,lat为球坐标的维度。基于此,在得到每个点云数据对应的全景像素坐标的情况下,可以从全景图中确定每个全景像素坐标分别对应的rgb图像信息(r,g,b)。
[0041]
由于利用激光扫描设备和rgb相机对各空间对象进行扫描及全景拍摄时,会在不同的空间对象中进行多次扫描及拍摄,或者针对同一空间位置分别在不同点位进行扫描及拍摄。因此,对于获取到的点云数据及全景图是否准确,可以通过不同点位获取到的点云数据和全景图进行校正。以对同一空间位置对应不同点位的点云数据和全景图进行校正为例,本技术实施例并不限定校正的具体方式,在一可选实施例中,可以将同一空间位置对应的点云数据和全景图进行相互映射,即将点云数据对应的三维点云坐标映射为全景像素坐标,将全景图中的全景像素坐标映射为三维点云坐标,以根据映射后的三维点云坐标和全景像素坐标对映射前的三维点云坐标和全景像素坐标进行校正。
[0042]
在另一可选实施例中,对于同一空间位置,针对在任意两个点位分别获取的点云数据和全景图,可以根据两个点位分别对应的点云数据及其对应的rgb图像信息进行点云配准,以得到两个点位之间的旋转平移矩阵,进而根据求得的旋转平移矩阵对该空间位置对应的点云数据集全景图进行校正。在本实施例中,不限定进行点云配准的具体方式,可选地,可以采用最近迭代算法(icp,iterative closest point)进行点云配准,也可以采用正态分布点云算法(normal distribution transform,ndt)进行点云配准,当然并不限于此,具体可以根据实际需求而定。
[0043]
进一步可选地,为了得到更为准确的户型图信息,本技术实施例中的点云平面图支持编辑功能,以在上述自动校正效果不理想的情况下,还可以通过手动编辑点云平面图的方式,进一步校正点云数据。可选地,工作人员可以针对点云平面图中与各空间对象中实际环境信息不符的目标点云数据执行调整操作,以校正不符合要求的目标点云数据。基于此,在响应到在点云平面图上对目标点云数据执行的调整操作的情况下,可以调整目标点云数据的形态,基于此,可以根据目标点云数据调整形态前后分别对应的三维点云坐标及其对应的rgb图像信息,进一步进行点云配准,以得到调整前后对应的旋转平移矩阵,进而根据调整前后对应的旋转平移矩阵对调整位置对应的点云数据进行校正。关于对点云平面图中的点云数据进行调整的具体方式可参见后续实施例,在此暂不详述。
[0044]
基于上述,终端设备在获取到准确的点云数据及其对应的grb图像信息的情况下,可以根据rgb图像信息,对点云数据进行着色处理。在本技术实施例中,由于终端设备的显示屏有限,对各空间对象扫描的点云数据量庞大,终端设备的显示屏不能一次性显示全部的点云数据。因此,在对点云数据进行着色处理时,可以根据终端设备的显示限制条件,确定每次着色处理的点云范围,并获取与点云范围对应的目标rgb图像信息。进而,采用3d渲染引擎对点云范围对应的目标点云数据绘制与目标rgb图像信息对应的纹理信息,以对目标点云数据进行着色处理。在本技术实施例中,不限定终端设备的显示限制条件对应的具
体数据,根据显示屏尺寸及分辨率的不同,显示限制条件也会不同。相应地,在对点云数据进行着色处理时,不限定使用的3d渲染引擎的类型,根据终端设备系统类型的不同,使用的3d渲染引擎也会不同,若终端设备是互联网操作系统(internetwork operating system,ios),则可以使用scenekit渲染引擎进行着色处理;若终端设备是安卓系统(android),则可以使用opengl es(opengl for embedded systems)渲染引擎进行着色处理,当然并不限于此。
[0045]
在本技术实施例中,并不限定每次着色处理的点云范围,例如,针对一个空间对象对应的点云数据,可以从中确定天花板、地面、四周墙体分别对应的点云数据,并将天花板、地面、四周墙体分别对应的点云数据依次作为每次着色处理的点云范围,以对花板、地面、四周墙体分别对应的点云数据依次进行着色处理;又例如,针对每个空间对象对应的点云数据,可以从中确定天花板和/或地面对应的点云数据,并将天花板和/或地面对应的点云数据作为每次着色处理的点云范围,仅对天花板和/或地面对应的点云数据进行着色处理;对于四周墙体而言,可以根据着色后的天花板和/或地面对应的形状及高度信息确定,进而可以对四周墙体进行统一着色,无需一一确定墙体对应的点云数据,有助于加快着色效率。
[0046]
进一步,在对点云数据着色后,可以根据着色后的点云数据,生成目标房屋对应的点云平面图。在本技术实施例中,不限定生成点云平面图的具体方式,可选地,可以基于着色后的点云数据,生成目标房屋对应的三维点云模型,进而对三维点云模型做平面投影,得到目标房屋对应的点云平面图。需要说明的是,本技术实施例并不限定对点云数据进行着色处理以及根据点云数据生成三维点云模型的先后顺序,可以如上述实施例所述,先对点云数据进行着色处理,再根据着色后的点云数据生成目标房屋对应的三维点云模型;也可以先根据点云数据生成目标房屋对应的三维点云模型,再对三维点云模型着色处理。
[0047]
图2a为根据目标房屋空间各空间对象的点云数据生成的三维点云模型,如图2a所示,从三维点云模型中可以确定各空间对象的天花板、地面、四周墙体对应的位置。基于此,若先生成三维点云模型,再对三维点云模型进行着色处理,则在对三维点云模型进行着色处理时,可以在终端设备的显示屏中依次显示三维点云模型中各空间对象的天花板、地面、四周墙体并作为每次着色处理的点云范围,以对三维点云模型中各空间对象的天花板、地面、四周墙体依次进行着色处理;或者,显示三维点云模型中各空间对象的天花板和/或地面作为每次着色处理的点云范围,对各空间对象的天花板和/或地面进行着色处理,以及对各空间对象的四周墙体进行统一着色处理。
[0048]
在执行着色处理之后,三维点云模型中的各空间对象便包含与全景图中各空间对象对应的纹理信息。基于此,可以根据三维点云模型对应的纹理信息,确定各空间对象的目标门体和/或目标窗体分别对应的三维点云坐标,以根据各空间对象的目标门体和/或目标窗体分别对应的三维点云坐标,确定各空间对象的目标门体和/或目标窗体分别对应的目标点云数据。进一步,根据点云数据到点云平面图的投影关系,可以在点云平面图上确定与目标点云数据对应的目标位置,以在点云平面图上对应目标位置处执行标记操作,标记各空间对象的门体轮廓和/或窗体轮廓。由于各空间对象中的门体和/或窗体均安装在墙体中,因此,目标点云数据投影在点云平面图上的目标位置在墙体对应的轮廓线上,通过执行标记操作,可在墙体对应的轮廓线上区分门体位置和窗体位置,使得户型图信息更完整、丰富。
[0049]
在本技术实施例中,由于目标房屋中可能包括家具等物体,激光扫描设备在对目标房屋进行激光扫描时,可能存在无法扫描到墙体的点云数据盲区,或者将扫描到的家具等物体识别为墙体,则激光扫描设备获取的点云数据可能存在缺失、多余、错误等其他问题。另外,rgb相机获取的全景图也可能存在错误,例如,空间对象的墙线、门框、窗框等都是直线,但是在全景图中被渲染成了曲线。为了在生成户型图之前,得到准确的户型图信息,在本技术实施例中,除了上述实施例中通过全景像素坐标与三维点云坐标相互映射的方式和点云配准的方式对点云数据和全景图进行校正之外,本技术实施例还可以通过如下方式,对点云数据和全景图的准确性进行校正,以基于后校正的点云数据和全景图,得到与目标房屋实际信息匹配的平面户型图。
[0050]
在本技术实施例中,为了对全景图进行校正,本技术实施例提供的全景图支持编辑功能,工作人员可以在全景图中选择不符合要求的墙线、门框、窗框并对其进行调整,以得到符合要求的全景图。基于此,若全景图中存在水平宽度不符合要求的目标门体和/或目标窗体,工作人员可以在全景图中选择目标门体和/或目标窗体,并对目标门体和/或目标窗体执行水平宽度调整操作。如图2b所示,工作人员还可以对门体轮廓、窗体轮廓进行手动调整;由于门体轮廓、窗体轮廓投影后在点云平面图上对应的门体轮廓、窗体轮廓是一个线段,门体轮廓对应的线段应该与门体的水平宽度对应,窗体轮廓对应的线段应该与窗体的水平宽度对应。因此,可以通过在全景图中对门体、窗体的水平宽度进行调整来实现对门体轮廓、窗体轮廓的调整。
[0051]
进一步,在响应到对全景图中的目标门体和/或目标窗体的水平宽度进行调整操作的情况下,可以根据调整后的目标门体和/或目标窗体分别对应的全景像素坐标,同步更新三维点云模型中对应的三维点云坐标,以在对三维点云模型作平面投影之后,点云平面图中对应目标门体的轮廓线与全景图中目标门体的水平宽度对应,和/或对应目标窗体的轮廓线与全景图中目标窗体的水平宽度对应。
[0052]
由于激光扫描设备在对各空间对象进行扫描时,可能无法扫描到各空间对象中被桌子、椅子、衣柜、床等家具遮挡住的部分墙体,则在基于点云数据生成三维点云模型时,与这部分墙体对应的空间位置处可能没有对应的点云数据,或者将扫描到的桌子、椅子、衣柜、床等家具对应的点云数据确定为这部分墙体对应的点云数据,进而导致点云数据有误差,生成的三维点云模型也不准确,则由此生成的三维点云模型以及投影得到的点云平面图也不准确。由图2a所示的三维点云模型可知,通过三维点云模型能够识别出各空间对象的墙体对应的整体轮廓,但各空间对象的真实信息并不一定能完整的体现到三维点云模型中。因此,基于三维点云模型投影得到的点云平面图也可能与各空间对象对应的真实户型结构不相符。例如,三维点云模型中应该投影到点云平面图上的点云数据没有投影到点云平面图上;又例如,三维点云模型中没有点云数据的空间位置在点云平面图上却有对应的投影区域;又例如,三维点云模型中对应墙体的点云数据虽然投影到点云平面图上,但其对应的轮廓线与墙体的实际位置并不对应,等等。
[0053]
针对可能存在的错误情况,在下述实施例中,将结合附图对不同情况下的错误点云的校正方式进行说明。
[0054]
情况1:点云平面图上“缺失”点云数据的投影信息。
[0055]
图2c为对三维点云模型做平面投影得到的点云平面图,如图2c所示,该点云平面
图中存在至少一个空缺部分,这不符合房屋的户型、格局要求,以图2c中的空缺部分为例,这有可能是被其他物体挡住的墙体没有被激光扫描设备扫描到造成的。因此,在根据扫描获取的点云数据生成三维点云模型时,会出现“空缺”的现象,进而基于该三维点云模型投影得到的点云平面图同样出现“空缺”。针对这种情况,本技术实施例还可以根据全景图,确定各空间对象的墙体对应的全景像素坐标,以及根据全景像素坐标与三维点云坐标的映射关系,确定在三维点云模型中对应的三维点云坐标,进而判断该三维点云坐标对应的空间位置是否有对应的点云数据。若三维点云模型中对应该三维点云坐标的空间位置中存在没有点云数据的第一空间位置,则在三维点云模型中对应第一空间位置处补充点云数据,并将补充的点云数据投影到点云平面图上,以对点云平面图中的墙体轮廓进行修正。图2d为根据补充点云数据之后的三维点云模型投影得到的点云平面图,如图2d所示,在对三维点云模型中补充点云数据之后,三维点云模型投影得到的点云平面图符合实际户型要求,更能真实的体现了目标房屋的户型效果。
[0056]
在本技术实施例中,点云平面图支持编辑功能,若点云平面图中对应墙体的轮廓线中有“缺失”,则工作人员还可以在点云平面图上针对缺失轮廓线的位置执行轮廓线添加操作。可选地,工作人员可以根据全景图确定点云平面图中确实轮廓线的目标位置,并在点云平面图中选择该目标位置以及对目标位置执行轮廓线添加操作;进一步,在响应到针对目标位置执行的轮廓线添加操作的情况下,可以在点云平面图上对应目标位置处添加轮廓线。在本技术实施例中,不限定在目标位置处添加轮廓线的具体方式,可选地,在获取到工作人员选择的目标位置并响应到对目标位置执行添加轮廓线操作的情况下,可以直接在点云平面图上显示轮廓线,以补充缺失的轮廓线;或者,工作人员也可以从用于对点云平面图进行编辑的工具栏中选择轮廓线组件,将轮廓线组件拖动到点云平面图上的目标位置处,以补充缺失的轮廓线。
[0057]
在本技术实施例中,对于自动添加新轮廓线的方式,并不限新轮廓线在点云平面图上的初始位置,初始位置可以是与目标位置预设范围内的任一位置,也可以直接显示在目标位置处;若初始位置不在目标位置处,工作人员可进一步对新轮廓线执行移动及形体调整操作,以将新轮廓线移动到目标位置处,以与已有的轮廓线端部连接。进一步,针对在工作人员选择轮廓线组件以添加轮廓线的情况下,也不限定轮廓线组件的添加方式,可选地,工作人员可以将选择的轮廓线组件先拖动到点云平面图上的任一位置,再对拖动到点云平面图上的轮廓线组件进行移动及形态调整,以将其添加到目标位置处,与已有的轮廓线端部连接。进一步可选地,为了快速补充缺失的轮廓线,本技术实施例提供轮廓线端点吸附功能,即在工作人员将轮廓线移动至点目标位置处的预设范围的情况下,新轮廓线的两端与已有轮廓线的端部可以自动连接,这样,有助于提升轮廓线添加的速度和准确性。关于对轮廓线执行移动操作级形态调整的具体方式可参见下述实施例,在此暂不详述。
[0058]
情况2:点云平面图上有“多余”投影信息。
[0059]
图2e为根据各空间对象的点云数据得到的一种点云平面图,根据图2e可以看出,目标房屋包括三个空间对象,分别为图2e中上部分的矩形对应的空间对象,以及下部分左右两侧的矩形分别对应的空间对象。由于激光扫描设备在进行激光扫描时,会在不同的空间对象进行激光扫描,或者在不同点位针对同一空间位置进行激光扫描;并且,激光扫描设备在不同点位针对同一空间位置获取的点云数据也会存在细微误差,这可能导致相邻空间
对象之间的墙体对应的点云数据在点云平面图上投影得到的轮廓线不准确。例如,如图2e所示,上部分的矩形空间对象与下部分两个矩形空间对象彼此之间是相邻的空间对象,他们之间应该仅有一面墙体分隔。
[0060]
但是,在图2e所示的点云平面图像上可以看出,用于分隔上部分矩形空间对象与下部分两个矩形空间对象之间的存在两条轮廓线,上部分矩形空间对象与下部分两个矩形空间对象之间是分离的,这与实际要求并不相符。因此,在对三维点云模型做平面投影之后,还可以先确定点云平面图上对应各空间对象的目标投影轮廓,并根据全景图确定各空间对象之间的相对位置关系,基于该相对位置关系,确定点云平面图上对应各空间对象的目标投影轮廓与目标房屋的实际户型要求是够一致;若确定不一致,则根据各空间对象之间的相对位置关系,调整点云平面图上对应各空间对象的目标投影轮廓位置,使各空间对象的目标投影轮廓的边缘对齐,以得到与实际墙体位置对应的轮廓线。
[0061]
在本技术实施例中,不限定根据各空间对象的相对位置关系,调整点云平面图上目标投影轮廓位置的具体方式,可选地,可以在对三维点云模型进行投影时自动根据各空间对象的相对位置关系,调整点云平面图上各目标投影轮廓的位置;在另一可选实施例中,在对三维点云模型进行投影时不做调整,工作人员可以在点云平面图上针对与墙体位置不对应的轮廓线手动调整,以得到与各空间对象的墙体位置对应的轮廓线。图2f为调整轮廓线位置之后的点云平面图,如图2f所示,调整之后,用于分隔上部分矩形空间对象与下部分两个矩形空间对象之间的墙体只对应一两条轮廓线,符合实际要求。
[0062]
由于激光扫描设备在对各空间对象进行激光扫描时可能存在误差,因此,在根据获取的点云数据生成的三维点云模型中,可能存在将空间对象中不是墙体的空间位置识别为墙体的情况,即基于三维点云模型投影得到的点云平面图中可能存在“多余”的轮廓线。因此,在对点云数据进行修正时,除了补充点云数据的方式,本技术实施例还提供了对各空间对象中不是墙体的空间位置被识别为墙体的情况,在三维点云模型中删除对应的点云数据,以对点云数据进行修正。可选地,可以根据全景图,确定各空间对象中不是墙体的空间位置对应的全景像素坐标,以及根据全景像素坐标与三维点云坐标之间的映射关系,确定在三维点云模型中对应的三维点云坐标,以确定三维点云模型中对应该三维点云坐标的第二空间位置处是否存在对应墙体形态的点云数据;若存在,则删除对应的点云数据,以得到与实际户型信息相符的点云数据。在本技术实施例中,不限定在第二空间位置处删除点云形态的具体方式,可选地,可以直接删除第二空间位置处对应的三维点云坐标,也可以将第二空间位置处原本对应墙体形态的三维点云坐标调整为对应地面形态的三维点云坐标,以对点云数据进行修正。
[0063]
在本技术实施例中,不限定在第二空间位置处删除点云数据的时机,可选地,可以在对三维点云模型做平面投影之前或者在对对三维点云模型做平面投影的过程中执行删除动作,这样,投影得到的点云平面图上得到的轮廓线即为修正后的轮廓线;在另一可选实施例中,也可以在对三维点云模型做平面投影之后删除第二空间位置处对应的点云数据,并在确定第二空间位置的情况下,删除第二空间位置处的点云数据以及在点云平面图上对应的轮廓线。针对在对三维点云模型做平面投影之后删除点云数据的情况,本技术实施例不限定执行删除动作的具体方式,可选地,在通过上述方式确定第二空间位置的情况下,可以自动删除三维点云模型中第二空间位置处的点云数据,以及基于三维点云坐标的投影关
系,在点云平面图上删除对应的轮廓线;在另一可选实施例中,工作人员也可以根据全景图,确定点云平面图上不应该存在轮廓线的目标位置,并通过手动删除的方式在点云平面图上删除目标位置对应的轮廓线;基于此,在响应到点云平面图上目标位置对应的轮库线被删除的情况下,基于三维点云坐标的投影关系,自动删除三维点云模型中对应空间位置处的点云数据。
[0064]
情况3:点云平面图上有“错误”的投影信息。
[0065]
在本技术实施例中,“错误”的投影信息是指扫描到了各空间对象中的墙体、门体、窗体以及其他对象对应的点云数据,但是在三维点云模型中存在与各空间对象中的墙体、门体、窗体以及其他对象的实际形态不一致的点云数据,和/或,在对三维点云模型做平面投影之后得到的点云平面图中,存在与各空间对象中的墙体、门体、窗体以及其他对象的投影形态不一致的投影信息。例如,空间对象中的墙体是直的,但在三维点云模型中对应墙体的点云形态却是曲面的。针对这种情况,需要对与墙体位置不对应的轮廓线进行调整。
[0066]
在一可选实施例中,工作人员可以从点云平面图上选择与墙体位置不对应的目标轮廓线并对其进行移动操作,则在响应到点云平面图上的目标轮廓线被选择的情况下,可以确定被选择的目标轮廓线在点云平面图上对应的初始位置;进一步,在响应到对被选择的目标轮廓线执行的移动操作的情况下,可以获取移动操作终止时对应的目标位置,并将被选择的目标轮廓线从初始位置移动到目标位置,以调整目标轮廓线的位置;其中,移动操作是指轮廓线的至少一端对应的点云数据以及两端之间的点云数据从初始位置移动到目标位置。
[0067]
在另一可选实施例中,工作人员还可以对点云形态不符合要求的目标轮廓线进行形态调整,则在响应到对被选择的目标轮廓线中的任一部分执行形态调整操作的情况下,可以获取被调整部分的目标轮廓线对应的初始形态,以及获取调整操作结束时被调整部分的目标轮廓线对应的目标形态,将被调整部分的目标轮廓线由初始形态调整为目标形态,并将被选择的目标轮廓线调整后的整体形态作为被选择的目标轮廓线对应的形态;其中,形态调整操作是指轮廓线的两端对应的点云数据不移动,而对轮廓线两端之间的点云数据进行移动,例如,将原本弯曲的轮廓线调整为直的轮廓线,当然并不限于此。
[0068]
通过上述方式,可以在得到点云平面图之前、得到点云平面图过程中,或者在得到点云平面图之后,对错误的点云数据以及点云平面图上错误的轮廓线进行修正,基于此得到的户型图信息更为准确。当然,为了更清楚、直观的从户型图中了解目标房屋的格局以及各空间对象的功能,本技术实施例还支持在点云平面图上对目标房屋中各空间对象的类型进行标记操作,以获得信息更完整、丰富的户型图。可选地,在得到点云平面图的情况下,可以根据全景图或者着色后的三维点云模型,确目标房屋中的各空间对象的类型,以在点云平面图中对各空间对象对应的投影区域进行类型标记。
[0069]
基于上述,在得到准确的点云数据的情况下,还可将更新后的点云数据输入模型制作终端,以供模型制作终端根据更新后的点云数据,制作目标房屋对应的三维模型和平面户型图模型,以应用到线上的房屋租赁、买卖、家装等场景中。
[0070]
在本技术实施例中,通过获取目标房屋中各空间对象的点云数据和全景图,可以确定各空间对象的墙体、门体和/或窗体在全景图中对应的rgb图像信息;基于此,可以根据rgb图像信息对点云数据进行着色处理,以及基于着色后的点云数据,生成目标房屋对应的
点云平面图、确定与各空间对象的门体和/或窗体分别对应的目标点云数据;进一步,根据点云数据到点云平面图的映射关系,可以在点云平面图中对应墙体的轮廓线上标记与目标点云数据对应的门体轮廓和窗体轮廓。通过这种方式,可以得到包括墙体轮廓、门体轮廓和窗体轮廓的户型图,户型图信息更丰富、完整;并且,该方法实现了在移动端共同完成拍摄及户型图生成功能,有助降低人工成本,以及提升生成户型图的准确性。
[0071]
需要说明的是,上述实施例所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。比如,步骤s1至步骤s6的执行主体可以为设备a;又比如,步骤s1的执行主体可以为设备a,步骤s2步骤s6的执行主体可以为设备b;等等。
[0072]
另外,在上述实施例及附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如s1、s2等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
[0073]
基于上述,本技术实施例还提供一种房屋户型图生成装置,例如房屋户型图生成装置可实现为通信控制器(communication control unit,ccu)中的虚拟装置,例如应用程序。如图3所示,房屋户型图生成装置包括:获取模块301、第一确定模块302、处理模块303、生成模块304、第二确定模块305和标记模块306;其中,获取模块301用于获取目标房屋中各空间对象对应的点云数据和全景图,点云数据和全景图分别由与终端设备通信连接的激光扫描设备和rgb相机获得,全景图中包括各空间对象的墙体、门体和/或窗体;第一确定模块302用于根据激光扫描设备和rgb相机之间的标定参数,确定点云数据对应的全景像素坐标,以及全景像素坐标在全景图中对应的rgb图像信息;处理模块303用于根据rgb图像信息,对点云数据进行着色处理;第二确定模块304用于基于着色后的点云数据,确定与各空间对象的门体和/或窗体分别对应的目标点云数据;生成模块305用于生成目标房屋对应的点云平面图,点云平面图中包括各空间对象的墙体对应的轮廓线;标记模块306用于根据点云数据到点云平面图的投影关系,在点云平面图的轮廓线上标记与目标点云数据对应的门体轮廓和/或窗体轮廓,并将标记后的点云平面图作为目标房屋对应的户型图,以用于展示。
[0074]
在一可选实施例中,第一确定模块302在根据激光扫描设备和rgb相机之间的标定参数,确定点云数据对应的全景像素坐标,以及全景像素坐标在全景图中对应的rgb图像信息时,用于:根据激光扫描设备和rgb相机之间的标定参数,将点云数据对应的每个三维点云坐标转换为相机坐标系下对应的相机坐标;以及将相机坐标转换为球坐标系下对应的球坐标,并基于球坐标与像素坐标的对应关系,确定对应的全景像素坐标;以及从全景图中,确定每个全景像素坐标分别对应的rgb图像信息。
[0075]
在一可选实施例中,第一确定模块302还用于:针对任意两个点位,根据在两个点位分别获取的点云数据及其对应的rgb图像信息进行点云配准,以得到两个点位之间的旋转平移矩阵。
[0076]
在一可选实施例中,点云平面图支持编辑操作,第一确定模块302还用于:响应在点云平面图上对目标点云数据执行的调整操作,调整目标点云数据的形态;以及根据目标
点云数据调整形态前后分别对应的三维点云坐标及其对应的rgb图像信息,进一步进行点云配准,得到调整前后对应的旋转平移矩阵。
[0077]
在一可选实施例中,处理模块303在根据rgb图像信息,对点云数据进行着色处理时,用于:根据终端设备的显示限制条件,确定每次着色处理的点云范围;获取与点云范围对应的目标rgb图像信息;以及采用3d渲染引擎,对点云范围对应的目标点云数据绘制与目标rgb图像信息对应的纹理信息,以对目标点云数据进行着色处理。
[0078]
在一可选实施例中,生成模块305在根据着色后的点云数据,生成目标房屋对应的点云平面图时,用于:基于着色后的点云数据,生成目标房屋对应的三维点云模型;对三维点云模型做平面投影,得到目标房屋对应的点云平面图。
[0079]
在一可选实施例中,第二确定模块304在确定与各空间对象的门体和/或窗体分别对应的目标点云数据时,用于:根据三维点云模型对应的纹理信息,确定各空间对象的目标门体和/或目标窗体分别对应的三维点云坐标;以及根据三维点云坐标,确定各空间对象的目标门体和/或目标窗体分别对应的目标点云数据。
[0080]
在一可选实施例中,标记模块306在根据点云数据到点云平面图的投影关系,在点云平面图的轮廓线上标记与目标点云数据对应的门体轮廓和/或窗体轮廓时,用于:根据点云数据到点云平面图的投影关系,在点云平面图上确定与目标点云数据对应的目标位置,目标位置在点云平面图的轮廓线上;在点云平面图上对应目标位置处执行标记操作,以标记各空间对象的门体轮廓和/或窗体轮廓。
[0081]
需要说明的是,关于上述装置中各模块的具体功能和实现过程,可参见上述方法实施例,在此不再赘述。
[0082]
本技术实施例还提供一种终端设备,图4为终端设备的结构示意图,如图4所示,终端设备包括:处理器41以及存储有计算机程序的存储器42;其中,处理器41和存储器42可以是一个或多个。
[0083]
存储器42,主要用于存储计算机程序,这些计算机程序可被处理器41执行,致使处理器41控制终端设备实现相应功能、完成相应动作或任务。除了存储计算机程序之外,存储器42还可被配置为存储其它各种数据以支持在终端设备上的操作。这些数据的示例包括用于在终端设备上操作的任何应用程序或方法的指令。
[0084]
存储器42,可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。
[0085]
在本技术实施例中,并不限定处理器41的实现形态,例如可以是但不限于cpu、gpu或mcu等。处理器41可以看作是终端设备的控制系统,可用于执行存储器42中存储的计算机程序,以控制终端设备实现相应功能、完成相应动作或任务。值得说明的是,根据终端设备实现形态以及所处于场景的不同,其所需实现的功能、完成的动作或任务会有所不同;相应地,存储器42中存储的计算机程序也会有所不同,而处理器41执行不同计算机程序可控制终端设备实现不同的功能、完成不同的动作或任务。
[0086]
在一些可选实施例中,如图4所示,终端设备还可包括:显示器43、电源组件44以及通信组件45等其它组件。图4中仅示意性给出部分组件,并不意味着终端设备只包括图4所
示组件,针对不同的应用需求,终端设备还可以包括其他组件,例如,在存在语音交互需求的情况下,如图4所示,终端设备还可以包括音频组件46。关于终端设备可包含的组件,具体可视终端设备的产品形态而定,在此不做限定。
[0087]
在本技术实施例中,当处理器41执行存储器42中的计算机程序时,以用于:获取目标房屋中各空间对象对应的点云数据和全景图,点云数据和全景图分别由与终端设备通信连接的激光扫描设备和rgb相机获得,全景图中包括各空间对象的墙体、门体和/或窗体;根据激光扫描设备和rgb相机之间的标定参数,确定点云数据对应的全景像素坐标,以及全景像素坐标在全景图中对应的rgb图像信息;根据rgb图像信息,对点云数据进行着色处理;基于着色后的点云数据,生成目标房屋对应的点云平面图,点云平面图中包括各空间对象的墙体对应的轮廓线;以及确定与各空间对象的门体和/或窗体分别对应的目标点云数据;根据点云数据到点云平面图的投影关系,在点云平面图的轮廓线上标记与目标点云数据对应的门体轮廓和/或窗体轮廓,并将标记后的点云平面图作为目标房屋对应的户型图,以用于展示。
[0088]
在一可选实施例中,处理器41在根据激光扫描设备和rgb相机之间的标定参数,确定点云数据对应的全景像素坐标,以及全景像素坐标在全景图中对应的rgb图像信息时,用于:根据激光扫描设备和rgb相机之间的标定参数,将点云数据对应的每个三维点云坐标转换为相机坐标系下对应的相机坐标;以及将相机坐标转换为球坐标系下对应的球坐标,并基于球坐标与像素坐标的对应关系,确定对应的全景像素坐标;以及从全景图中,确定每个全景像素坐标分别对应的rgb图像信息。
[0089]
在一可选实施例中,处理器41还用于:针对任意两个点位,根据在两个点位分别获取的点云数据及其对应的rgb图像信息进行点云配准,以得到两个点位之间的旋转平移矩阵。
[0090]
在一可选实施例中,点云平面图支持编辑操作,处理器41还用于:响应在点云平面图上对目标点云数据执行的调整操作,调整目标点云数据的形态;以及根据目标点云数据调整形态前后分别对应的三维点云坐标及其对应的rgb图像信息,进一步进行点云配准,得到调整前后对应的旋转平移矩阵。
[0091]
在一可选实施例中,处理器41在根据rgb图像信息,对点云数据进行着色处理时,用于:根据终端设备的显示限制条件,确定每次着色处理的点云范围;获取与点云范围对应的目标rgb图像信息;以及采用3d渲染引擎,对点云范围对应的目标点云数据绘制与目标rgb图像信息对应的纹理信息,以对目标点云数据进行着色处理。
[0092]
在一可选实施例中,处理器41在根据着色后的点云数据,生成目标房屋对应的点云平面图时,用于:基于着色后的点云数据,生成目标房屋对应的三维点云模型;对三维点云模型做平面投影,得到目标房屋对应的点云平面图。
[0093]
在一可选实施例中,处理器41在确定与各空间对象的门体和/或窗体分别对应的目标点云数据时,用于:根据三维点云模型对应的纹理信息,确定各空间对象的目标门体和/或目标窗体分别对应的三维点云坐标;以及根据三维点云坐标,确定各空间对象的目标门体和/或目标窗体分别对应的目标点云数据。
[0094]
在一可选实施例中,处理器41在根据点云数据到点云平面图的投影关系,在点云平面图的轮廓线上标记与目标点云数据对应的门体轮廓和/或窗体轮廓时,用于:根据点云
数据到点云平面图的投影关系,在点云平面图上确定与目标点云数据对应的目标位置,目标位置在点云平面图的轮廓线上;在点云平面图上对应目标位置处执行标记操作,以标记各空间对象的门体轮廓和/或窗体轮廓。
[0095]
需要说明的是,关于上述终端设备中处理器的具体功能,可参见上述方法实施例,在此不再赘述。
[0096]
相应地,本技术实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被执行时能够实现上述方法实施例中可由终端设备执行的各步骤。
[0097]
上述实施例中的通信组件被配置为便于通信组件所在设备和其他设备之间有线或无线方式的通信。通信组件所在设备可以接入基于通信标准的无线网络,如wifi,2g、3g、4g/lte、5g等移动通信网络,或它们的组合。在一个示例性实施例中,通信组件经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。
[0098]
上述实施例中的显示器包括屏幕,其屏幕可以包括液晶显示器(lcd)和触摸面板(tp)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。
[0099]
上述实施例中的电源组件,为电源组件所在设备的各种组件提供电力。电源组件可以包括电源管理系统,一个或多个电源,及其他与为电源组件所在设备生成、管理和分配电力相关联的组件。
[0100]
上述图实施例中的音频组件,可被配置为输出和/或输入音频信号。例如,音频组件包括一个麦克风(mic),当音频组件所在设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器或经由通信组件发送。在一些实施例中,音频组件还包括一个扬声器,用于输出音频信号。
[0101]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0102]
本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0103]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特
定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0104]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0105]
在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
[0106]
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
[0107]
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0108]
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0109]
以上所述仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1