一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种场景语义分割方法、系统、终端设备及可读存储介质

2022-09-15 06:11:39 来源:中国专利 TAG:


1.本发明属于三维场景理解领域,涉及一种场景语义分割方法、系统、终端设备及可读存储介质。


背景技术:

2.室内三维场景是三维虚拟世界的重要组成部分,不仅可以用于虚拟现实、影视动画中对环境的呈现,而且是机器人、游戏、教育等有交互需求的应用中承载交互的主体。面对大量的三维场景数据,如何对其进行表征和分析,以利于数据的理解,是一个重要的研究方向。
3.早期的场景表示和分析方法主要基于对场景几何的分析。最典型的思路是通过建立场景图来表示场景中的物体及不同物体之间的空间关系。根据空间关系的紧密程度,可以分为简单空间关系表示和复杂空间关系表示。
4.为了对场景的整体或局部的功能进行分析,研究者将人引入场景中,通过对人的信息与场景信息的联合建模分析来理解场景。对环境的承载功能的相关研究为这类场景分析方法奠定了理论基础。后续的研究包括在二维场景中添加合理的人物交互,rgb-d场景的分析。
5.上述工作中,交互特征主要是通过静态人体姿态和周围环境几何来表示的。这种仅考虑静态交互的方法没有对场景中的运动特征进行编码,这导致算法难以分析出场景的某些不合理布局。例如,场景的某一部分被封闭而无法进入;或者场景中心某一必经之路过于狭窄。


技术实现要素:

6.本发明的目的在于解决现有技术中的问题,提供一种基于连通性和归一分割的场景语义分割方法、系统、终端设备及可读存储介质。受到场景中人物运动分析相关研究的启发,本发明在场景分析中考虑人与场景的动态交互特征。人物运动轨迹包含场景与人丰富的交互信息,对于场景的语义理解,有着十分重要的作用。
7.为达到上述目的,本发明采用以下技术方案予以实现:
8.第一方面,本发明提供一种场景语义分割方法,包括以下步骤:
9.对输入的三维模型场景进行三角化处理,生成若干导航网格;
10.将若干导航网络的并集构成可行走区域,在可行走区域进行均匀采点,得到样本点坐标,所有样本点构成场景的交互点集;
11.采用a-star算法和拐角点算法在导航网格中计算模拟路径,分别计算所有交互点集中样本点两两之间的最短路径;
12.根据最短路径计算得到每一个样本点的连通性数值;
13.根据每一个样本点的连通性数值,计算每条边上的权重,从而构建出无向图的相似度矩阵;
truth图,(f)为场景渲染图。
具体实施方式
35.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
36.因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
37.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
38.在本发明实施例的描述中,需要说明的是,若出现术语“上”、“下”、“水平”、“内”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
39.此外,若出现术语“水平”,并不表示要求部件绝对水平,而是可以稍微倾斜。如“水平”仅仅是指其方向相对“竖直”而言更加水平,并不是表示该结构一定要完全水平,而是可以稍微倾斜。
40.在本发明实施例的描述中,还需要说明的是,除非另有明确的规定和限定,若出现术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
41.下面结合附图对本发明做进一步详细描述:
42.参见图1,本发明实施例公开了一种场景语义分割方法,包括以下步骤:
43.s1对输入的三维模型场景进行三角化处理,生成若干导航网格;具体如下:
44.对模型数据某一高度的可行走区域进行三角化,得到该高度下的导航网格;导航网格的外在形式为一系列互相邻接的凸多边形,在凸多边形内部,没有障碍物,人物能够在某个凸多边形内部进行移动。
45.s2将若干导航网络的并集构成可行走区域,在可行走区域进行均匀采点,得到样本点坐标,所有样本点构成场景的交互点集;
46.将场景的可行走区域俯视图均匀划分为n
×
n的方格,取每个方格的边长为0.36m,取方格的中心坐标作为采集的样本点坐标,所有样本点构成场景的所有交互点集。
47.s3采用a-star算法和拐角点算法在导航网格中计算模拟路径,分别计算所有交互点集中样本点两两之间的最短路径;
48.(1)使用a-star算法遍历网格,通过最小化代价函数,找到一条从起点到终点的所
经过的多边形序列,多边形序列构成通道;
49.代价函数f(n)的计算方式如公式(1)所示:
50.f(n)=g(n) h(n)
ꢀꢀꢀꢀꢀ
(1)
51.式中:g(n)为从初始点到当前位置的实际路径长度,h(n)为从当前点到终点的预计最优路径估计的距离;g(n)设定为起点与所经过的三角形的几何中心的线段的长度和,而h(n)则设定为当前点与终点的欧式距离;通过计算当前节点邻节点的f值,选取邻节点中f值最小的节点作为当前节点的下一节点,以此来确定一组从起始节点到终节点的序列;
52.通过a-star算法得到一组从起点到终点的节点序列之后,由于每个节点表示的是一个三角形,因此便得到了一组三角形序列,将这组三角形序列展开,便得到了一条从起点到终点的通道;
53.(2)采用拐角点算法,确定一条通道中的最短折线路径;算法的输入是三角形序列,输出是起点到终点的折线路径,步骤如下:
54.1)以起始点为顶点,起始三角形与下一个三角形公共边的端点为两个顶点,构建漏斗形区域;
55.2)判断下一个节点是否在最初漏斗形区域的内侧;若左侧边在内侧,则将左侧边线向内侧移动,若右侧边在内侧,则将右侧边向内移动;
56.3)若某一左侧节点在漏斗区域的右侧边界以下,则可得到下一个拐角节点;同理,若某一右侧节点的漏斗区域在左侧边界以下,则可得到下一个拐角节点;
57.4)循环上述操作,得到所有的拐角节点;
58.5)依次连接所有拐点即为折线路径。
59.s4根据最短路径计算得到每一个样本点的连通性数值;
60.根据下式计算每一个样本点的连通性:
[0061][0062]
式中:n表示场景中样本点的个数,path(i,j)表示从i样本点到j样本点的最短路径长度,dis(i,j)表示从i点到j点的欧式距离;ε(j!=i)是指示函数,当j=i时,其值为0,当j!=i时,其值为1。
[0063]
s5根据每一个样本点的连通性数值,计算每条边上的权重,从而构建出无向图的相似度矩阵;
[0064]
将场景中均匀采集的样本点作为构建图的顶点,使用点与点的连通性之差构建顶点与顶点之间边的权重;相似度矩阵w的构建方式如式(3)所示:
[0065][0066]
其中:w
ij
表示相似度矩阵w第i行第j列的元素值,p
ij
代表i点和j点的路径长度,r和σ
x
为参数,ci和cj分别表示样本点i和j的连通性。
[0067]
s6使用归一分割对无向图进行场景语义分割。
[0068]
(1)计算相似度矩阵w的拉普拉斯矩阵,计算公式为l=d-w,其中d为相似度矩阵w
的度矩阵,即将相似度矩阵w的每一列元素加起来放在对角线上,其余元素为0;
[0069]
(2)计算广义特征值问题lu=λdu中的前k个特征向量u1,

,uk;以u1,

,uk为列向量构建矩阵u∈rn×k;
[0070]
(3)令yi为矩阵u的第i个行向量,其中i=1,

,n;使用k-means算法对点集(yi)
i=1,

,n
进行聚类,得到聚类结果,不同的聚类类别表示场景中不同的房间,这样就对三维场景实现了分割。
[0071]
如图2所示,本发明实施例公开了一种场景语义分割系统,包括:
[0072]
导航网络生产模块,用于对输入的三维模型场景进行三角化处理,生成若干导航网格;
[0073]
采点模块,用于将若干导航网络的并集构成可行走区域,在可行走区域进行均匀采点,得到样本点坐标,所有样本点构成场景的交互点集;
[0074]
最短路径计算模块,用于采用a-star算法和拐角点算法在导航网格中计算模拟路径,分别计算所有交互点集中样本点两两之间的最短路径;
[0075]
连通性数值计算模块,用于根据最短路径计算得到每一个样本点的连通性数值;
[0076]
相似度矩阵构建模块,用于根据每一个样本点的连通性数值,计算每条边上的权重,从而构建出无向图的相似度矩阵;
[0077]
语义分割模块,用于使用归一分割对无向图进行场景语义分割。
[0078]
实施例:
[0079]
图3是本发明的整体流程图,本发明是基于连通性和归一分割的场景语义分割方法,其输入是三维室内场景模型,输出是对场景图的语义分割结果。首先,需要在场景的可行走区域上均匀采集人与场景的交互点,然后使用导航网格算法模拟计算两两交互点的路径距离,从而提取出三维场景的人物运动轨迹特征。在得到两两交互点的路径距离之后,计算每一个交互点的连通性。交互点和交互点之间,可通过基于连通性的权重值来构建交互点场景图。最后,使用归一分割(normalized-cut)算法来对带权重的场景图进行分割,从而完成三维场景的语义分割。
[0080]
步骤1、对输入的三维模型场景进行处理,生成导航网格。导航网格的外在形式是一系列互相邻接的凸多边形,在这些凸多边形内部,没有任何障碍物,人物是可以畅通无阻的在某个多边形内部进行移动的。
[0081]
通过对模型数据某一高度的可行走区域进行三角化,可得到该高度下的导航网格。因此在不同的高度下,可以计算得到不同的导航网格,如图4所示。
[0082]
步骤2、所有导航网格的并集就构成了可行走区域,在可行走区域进行均匀采点,得到样本点坐标,所有样本点构成场景的交互点集。
[0083]
在生成了导航网格之后,需要在导航网格所代表的可行走区域上进行采点。本发明采用均匀采样法,即将场景的可行走区域俯视图均匀划分为n
×
n的小方格,考虑到成年人行走的步长为0.4m左右,为了便于计算,取每个方格的边长为0.36m,然后取小方格的中心坐标作为采集的样本点坐标,如图5所示。
[0084]
步骤3、采用由a-star算法和拐角点算法在导航网格中计算模拟路径,分别计算所有样本点两两之间的最短路径。
[0085]
导航网格寻路算法,是在得到了导航网格所定义的二维平面上,进行寻路的一种
启发式算法。其核心是a-star算法和拐角点算法。
[0086]
导航网格寻路算法的第一个步骤是使用a-star算法遍历网格,通过最小化代价函数,找到一条从起点到终点的所经过的多边形序列,这些多边形序列,可以构成一个较宽的通道。
[0087]
代价函数f(n)的计算方式如公式(1)所示:
[0088]
f(n)=g(n) h(n)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
[0089]
式中:g(n)为从初始点到当前位置的实际路径长度,h(n)为从当前点到终点的预计最优路径估计的距离。g(n)设定为起点与所经过的三角形的几何中心的线段的长度和,而h(n)则设定为当前点与终点的欧式距离。通过计算当前节点邻节点的f值,选取邻节点中f值最小的节点作为当前节点的下一节点,以此来确定一组从起始节点到终节点的序列。
[0090]
通过a-star算法得到一组从起点到终点的节点序列之后,由于每个节点表示的是一个三角形,因此便得到了一组三角形序列,将这组三角形序列展开,便得到了一条从起点到终点的通道,导航网格算法的第二个步骤,是在第一步中得到的通道中,计算一条最短的路径。
[0091]
采用拐角点算法,可以确定一条通道中的最短折线路径。算法的输入是三角形序列,输出是起点到终点的折线路径,步骤如下:
[0092]
1)以起始点为顶点,起始三角形与下一个三角形公共边的端点为两个顶点,构建漏斗形区域。
[0093]
2)判断下一个节点是否在最初漏斗形区域的内测。若左侧边在内侧,则将左侧边线向内侧移动,若右侧边在内侧,则将右侧边向内移动。
[0094]
3)若某一左侧节点在漏斗区域的右侧边界以下,则可得到下一个拐角节点。同理,若某一右侧节点的漏斗区域在左侧边界以下,则可得到下一个拐角节点。
[0095]
4)循环上述操作,得到所有的拐角节点
[0096]
5)依次连接所有拐点即为折线路径
[0097]
如图6所示,图中的折线就是根据拐角点算法计算出的最短路径。
[0098]
步骤4、由计算出来的最短路径,计算得到每一个样本点的连通性数值。
[0099]
得到了路径之后,根据公式(2),来计算每一个交互点的连通性。
[0100][0101]
式中:n表示场景中样本点的个数,path(i,j)表示从i点到j点的最短路径长度,dis(i,j)表示从i点到j点的欧式距离。ε(j!=i)是指示函数,当j=i时,其值为0,当j!=i时,其值为1。
[0102]
通过实验发现,在卫生间,位置靠边的卧室,狭窄的封闭式厨房等区域,连通性比较差,而在客厅、餐厅等公共区域,连通性通常比较好。由此可见,连通性也可以对室内布局的私密性进行定量的描述。场景中有的区域是比较开阔的,可以较为方便的到达其他区域,而有的区域是相对封闭的,要去其它地方需要经过一定的绕道。如图6所示,位于场景中心开阔区域的交互点的连通性较好,而位于场景右上角边缘区域的交互点连通性较差。
[0103]
将连通性归一化为[0-1],并设定0为标准红色,1为标准蓝色,按照色带的均匀渐
programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
[0118]
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述移动终端的各种功能。
[0119]
所述移动终端集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
[0120]
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献