一种地图中人行横道的渲染方法及相关装置与流程

未命名 08-14 阅读:141 评论:0


1.本技术涉及图像渲染技术领域,特别是涉及一种地图中人行横道的渲染方法及相关装置。


背景技术:

2.随着地图使用需求的快速发展,高精度地图需要细致地刻画行驶道路的相关元素,在车道线等基本元素的基础上,增加人行横道等道路元素,还原真实的行驶道路,增加行驶场景的真实感,以提升高精度地图的体验感。
3.相关技术中,高精度地图增加人行横道仅仅是指对应行驶道路简单地渲染预设类型的人行横道。
4.然而,上述方法中对应行驶道路简单地渲染预设类型的人行横道,使得高精度地图中人行横道的渲染准确度较差,导致人行横道的渲染效果相较于真实的行驶道路和行驶场景存在一定差异,从而降低高精度地图的体验感。


技术实现要素:

5.为了解决上述技术问题,本技术提供了一种地图中人行横道的渲染方法及相关装置,实现快速、简单、有效地渲染高精度地图中人行横道,能够提高人行横道的渲染准确度,使得人行横道的渲染效果进一步还原真实的行驶道路、增加行驶场景的真实感,从而提升高精度地图的体验感。
6.本技术实施例公开了如下技术方案:
7.一方面,本技术实施例提供一种地图中人行横道的渲染方法,所述方法包括:
8.获取地图中待渲染人行横道的每个预设外轮廓点的渲染纹理坐标;
9.根据多个所述预设外轮廓点对所述待渲染人行横道的待渲染轮廓区域进行三角化,获得所述待渲染轮廓区域的多个三角形区域;
10.根据多个所述预设外轮廓点对应的多个渲染纹理坐标,对多个所述三角形区域进行人行横道标示线的纹理渲染,在所述地图中获得所述待渲染人行横道的已渲染人行横道。
11.另一方面,本技术实施例提供一种地图中人行横道的渲染装置,所述装置包括:获取单元、三角化单元和渲染单元;
12.所述获取单元,用于获取地图中待渲染人行横道的每个预设外轮廓点的渲染纹理坐标;
13.所述三角化单元,用于根据多个所述预设外轮廓点对所述待渲染人行横道的待渲染轮廓区域进行三角化,获得所述待渲染轮廓区域的多个三角形区域;
14.所述渲染单元,用于根据多个所述预设外轮廓点对应的多个渲染纹理坐标,对多个所述三角形区域进行人行横道标示线的纹理渲染,在所述地图中获得所述待渲染人行横道的已渲染人行横道。
15.另一方面,本技术实施例提供一种计算机设备,所述计算机设备包括处理器以及存储器:
16.所述存储器用于存储计算机程序,并将所述计算机程序传输给所述处理器;
17.所述处理器用于根据所述计算机程序中的指令执行前述任一方面所述的方法。
18.另一方面,本技术实施例提供一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行前述任一方面所述的方法。
19.另一方面,本技术实施例提供一种计算机程序产品,包括计算机程序,当其在计算机设备上运行时,使得所述计算机设备执行时实现前述任一方面所述的方法。
20.由上述技术方案可以看出,获取地图中待渲染人行横道的每个预设外轮廓点的渲染纹理坐标;该纹理坐标获取方式能够快速、简单、有效地确定待渲染人行横道的每个预设外轮廓点对应人行横道标示线的纹理像素点。通过多个预设外轮廓点三角化待渲染人行横道的待渲染轮廓区域得到多个三角形区域;按照多个预设外轮廓点对应的多个渲染纹理坐标,基于人行横道标示线纹理渲染多个三角形区域得到已渲染人行横道;该纹理渲染方式在确定每个预设外轮廓点对应人行横道标示线的纹理像素点的基础上,能够快速、简单、有效地一次性渲染待渲染人行横道中多条人行横道标示线得到已渲染人行横道。基于此,该方法基于外轮廓点的纹理坐标进行纹理渲染得到人行横道,实现快速、简单、有效地渲染高精度地图中人行横道,能够提高人行横道的渲染准确度,使得人行横道的渲染效果进一步还原真实的行驶道路、增加行驶场景的真实感,从而提升高精度地图的体验感。
附图说明
21.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术成员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
22.图1为本技术实施例提供的一种高精度地图的示意图;
23.图2为本技术实施例提供的一种地图中人行横道的渲染方法的系统架构示意图;
24.图3为本技术实施例提供的一种地图中人行横道的渲染方法的流程图;
25.图4为本技术实施例提供的一种待渲染人行横道的人行横道角度的示意图;
26.图5为本技术实施例提供的一种三角化待渲染人行横道的待渲染轮廓区域得到多个三角形区域的示意图;
27.图6为本技术实施例提供的一种基于人行横道标示线纹理渲染多个三角形区域得到已渲染人行横道的示意图;
28.图7为本技术实施例提供的一种构建第一人行横道的第一外框矩形和第二人行横道的第二外框矩形的示意图;
29.图8为本技术实施例提供的一种第一外框矩形扩展为第一扩展矩形和第一外框矩形扩展为第二扩展矩形的示意图;
30.图9为本技术实施例提供的一种第一人行横道和第二人行横道合并为待渲染人行横道的示意图;
31.图10为本技术实施例提供的一种第一夹角角度和第二夹角角度的示意图;
32.图11为本技术实施例提供的一种地图中人行横道的渲染装置的结构图;
33.图12为本技术实施例提供的一种服务器的结构图;
34.图13为本技术实施例提供的一种终端的结构图。
具体实施方式
35.下面结合附图,对本技术的实施例进行描述。
36.现阶段,参见图1,图1为本技术实施例提供的一种高精度地图的示意图;其中,高精度地图需要细致地刻画行驶道路相关的人行横道,通常是对应行驶道路简单地渲染预设类型的人行横道。
37.然而,经过研究发现,上述方法中对应行驶道路简单地渲染预设类型的人行横道,使得高精度地图中人行横道的渲染准确度较差,导致人行横道的渲染效果相较于真实的行驶道路和行驶场景存在一定差异,从而降低高精度地图的体验感。
38.本技术实施例提供一种地图中人行横道的渲染方法,获取地图中待渲染人行横道的每个预设外轮廓点的渲染纹理坐标;该纹理坐标获取方式能够快速、简单、有效地确定待渲染人行横道的每个预设外轮廓点对应人行横道标示线的纹理像素点。通过多个预设外轮廓点三角化待渲染人行横道的待渲染轮廓区域得到多个三角形区域;按照多个预设外轮廓点对应的多个渲染纹理坐标,基于人行横道标示线纹理渲染多个三角形区域得到已渲染人行横道;该纹理渲染方式在确定每个预设外轮廓点对应人行横道标示线的纹理像素点的基础上,能够快速、简单、有效地一次性渲染待渲染人行横道中多条人行横道标示线得到已渲染人行横道。
39.接下来,将对地图中人行横道的渲染方法的系统架构进行介绍。参见图2,图2为本技术实施例提供的一种地图中人行横道的渲染方法的系统架构示意图,该系统架构中包括终端201和服务器202,响应于待行驶对象在终端201中针对高精度地图的开启操作,服务器202在高精度地图中渲染人行横道,以便终端201显示渲染后的高精度地图。
40.其中,终端201包括但不限于智能手机、平板电脑、笔记本电脑、台式计算机、智能语音交互设备、智能家电、车载终端、飞行器等,但并不局限于此。服务器202可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器。终端201以及服务器202可以通过有线或无线通信方式进行直接或间接地连接,本技术在此不做限制。例如终端201以及服务器202可以通过网络连接,该网络可以是有线或无线网络。
41.服务器202获取地图中待渲染人行横道的每个预设外轮廓点的渲染纹理坐标。作为一种示例,待渲染人行横道的多个预设外轮廓点包括p1点、p2点、
……
和pw点,pk点的渲染纹理坐标为tk'(u,v),k=1,2,
……
,w。
42.服务器202根据多个预设外轮廓点对待渲染人行横道的待渲染轮廓区域进行三角化,获得待渲染轮廓区域的多个三角形区域。作为一种示例,在上述示例的基础上,通过p1点、p2点、
……
和pw点三角化待渲染人行横道的待渲染轮廓区域得到多个三角形区域。
43.服务器202根据多个预设外轮廓点对应的多个渲染纹理坐标,对多个三角形区域进行人行横道标示线的纹理渲染,在地图中获得待渲染人行横道的已渲染人行横道。作为一种示例,在上述示例的基础上,按照p1点、p2点、
……
和pw点对应的多个渲染纹理坐标t1'
(u,v)、t2'(u,v)、
……
和tw'(u,v),基于人行横道标示线纹理渲染多个三角形区域得到已渲染人行横道。
44.也就是说,纹理坐标获取方式能够快速、简单、有效地确定待渲染人行横道的每个预设外轮廓点对应人行横道标示线的纹理像素点;纹理渲染方式在确定每个预设外轮廓点对应人行横道标示线的纹理像素点的基础上,能够快速、简单、有效地一次性渲染待渲染人行横道中多条人行横道标示线得到已渲染人行横道。基于此,该方法基于外轮廓点的纹理坐标进行纹理渲染得到人行横道,实现快速、简单、有效地渲染高精度地图中人行横道,能够提高人行横道的渲染准确度,使得人行横道的渲染效果进一步还原真实的行驶道路、增加行驶场景的真实感,从而提升高精度地图的体验感。
45.需要说明的是,在本技术实施例中,计算机设备可以是服务器或终端,本技术实施例提供的方法可以由终端或服务器单独执行,也可以由终端和服务器配合执行。其中,图2对应的实施例主要以服务器执行本技术实施例提供的方法为例进行介绍。
46.此外,当本技术实施例提供的方法由终端单独执行时,其执行方法与图2对应的实施例类似,主要是将服务器换成终端。另外,当由终端和服务器配合执行本技术实施例提供的方法时,需要体现在前端界面上的步骤可以由终端执行,而一些需要后台计算、无需体现在前端界面上的步骤可以由服务器执行。
47.此外,本技术实施例可应用于各种场景,包括但不限于地图场景、交通场景、驾驶场景、车载场景等。
48.此外,当本技术实施例提供的方法涉及到的获取地图中各个数据的步骤实施,在本技术以上实施例运用到具体产品或技术中时,相关数据收集、使用和处理过程应该遵守国家法律法规要求,符合合法、正当、必要的原则,不涉及获取法律法规禁止或限制的数据类型,不会妨碍地图应用程序的正常运行。
49.接下来,将以服务器执行本技术实施例提供的方法为例、结合附图对本技术实施例提供的地图中人行横道的渲染方法进行详细介绍。参见图3,图3为本技术实施例提供的一种地图中人行横道的渲染方法的流程图,方法包括:
50.s301:获取地图中待渲染人行横道的每个预设外轮廓点的渲染纹理坐标。
51.由于相关技术中,高精度地图增加人行横道仅仅是指对应行驶道路简单地渲染预设类型的人行横道,使得高精度地图中人行横道的渲染准确度较差,导致人行横道的渲染效果相较于真实的行驶道路和行驶场景存在一定差异,从而降低高精度地图的体验感。
52.因此,本技术实施例中,为了解决上述问题,基于人行横道标示线的纹理,考虑先确定待渲染人行横道的每个预设外轮廓点对应人行横道标示线的纹理像素点,即,需要获取地图中待渲染人行横道的每个预设外轮廓点的渲染纹理坐标;再对待渲染人行横道的待渲染轮廓区域进行纹理渲染,以便快速、简单、有效地一次性渲染待渲染人行横道中多条人行横道标示线得到已渲染人行横道。
53.进一步地,通过较为复杂的几何算法逐条计算待渲染人行横道中每条人行横道标示线的覆盖范围,并逐条渲染每条人行横道标示线,以便在地图中得到已渲染人行横道;计算量较大耗费较多计算资源,实施过程相对繁琐,导致高精度地图中人行横道的渲染速度较慢,从而影响高精度地图的流畅度,降低高精度地图的体验感。
54.为了解决该问题,考虑到待渲染人行横道与地图正北方向可能存在一定的夹角,
该夹角角度即为待渲染人行横道的人行横道角度,且待渲染人行横道还具有用于控制待渲染人行横道中多条人行横道标示线之间的密度的纹理重复长度;则上述确定每个预设外轮廓点对应人行横道标示线的纹理像素点,实际上是指通过地图中每个预设外轮廓点的预设位置坐标预设位置坐标,结合前述人行横道角度和前述纹理重复长度,坐标计算以快速、简单、有效地得到每个预设外轮廓点的渲染纹理坐标。因此,本技术提供了一种可能的实现方式,s301例如具体可以为:根据地图中每个预设外轮廓点的预设位置坐标、待渲染人行横道的人行横道角度和待渲染人行横道的纹理重复长度进行坐标计算,获得每个预设外轮廓点的渲染纹理坐标;人行横道角度是待渲染人行横道与地图正北方向的夹角角度。
55.该纹理坐标获取方式无需复杂的几何运算,能够快速、简单、有效地确定待渲染人行横道的每个预设外轮廓点对应人行横道标示线的纹理像素点,节省计算资源,以便后续快速、简单、有效地一次性渲染待渲染人行横道中多条人行横道标示线得到已渲染人行横道。
56.在s301具体实现时,首先,需要将每个预设外轮廓点的预设位置坐标绕多个预设外轮廓点的目标几何平均点旋转人行横道角度,得到一个新的纹理坐标作为每个预设外轮廓点的旋转纹理坐标,以便使得待渲染人行横道中人行横道标示线与地图正北方向的夹角角度匹配人行横道角度;即,将每个预设外轮廓点的预设位置坐标、目标几何平均点的预设纹理坐标和人行横道角度对应的旋转矩阵,以第一运算方式运算得到每个预设外轮廓点的旋转纹理坐标。然后,还需要考虑通过纹理重复长度更新前述新的纹理坐标,得到另一个新的纹理坐标作为每个预设外轮廓点的渲染纹理坐标,以便控制待渲染人行横道中多条人行横道标示线之间的密度;即,将每个预设外轮廓点的旋转纹理坐标和纹理重复长度,以第二运算方式运算得到每个预设外轮廓点的渲染纹理坐标。因此,本技术提供了一种可能的实现方式,坐标计算包括第一运算和第二运算,s301例如可以包括如下s3011-s3012(图中未示出):
57.s3011:对每个预设外轮廓点的预设位置坐标、多个预设外轮廓点的目标几何平均点的预设纹理坐标、以及人行横道角度对应的旋转矩阵进行第一运算,获得每个预设外轮廓点的旋转纹理坐标;预设纹理坐标是多个预设外轮廓点对应的多个预设位置坐标的几何平均值。
58.其中,每个预设外轮廓点的预设位置坐标是在地图坐标系中根据每个预设外轮廓点与坐标原点之间的位置关系确定的。
59.s3012:对每个预设外轮廓点的旋转纹理坐标和纹理重复长度进行第二运算,获得每个预设外轮廓点的渲染纹理坐标。
60.作为一种示例,待渲染人行横道的多个预设外轮廓点包括p1点、p2点、
……
和pw点,p1点、p2点、
……
和pw点的目标几何平均点为p点,在地图的坐标系中,预设外轮廓点pk点的预设位置坐标为pk(x,y),k=1,2,
……
,w;p点的预设纹理坐标为p(x,y),待渲染人行横道的人行横道角度为α;待渲染人行横道的纹理重复长度为l。
61.首先,在α对应的旋转矩阵为r(α)的基础上,将pk(x,y)和p(x,y)按照减法运算相减得到差值,将该差值和r(α)按照乘法运算相乘得到乘积,将该乘积和p(x,y)按照加法运算相加,得到pk点的旋转纹理坐标为tk(u,v),即,tk(u,v)=[pk(x,y)-p(x,y)]
×
r(α)+p(x,y);然后,将tk(u,v)和l按照除法运算相除,得到pk点的渲染纹理坐标为tk'(u,v),即,tk'
(u,v)=tk(u,v)/l。
[0062]
其中,参见图4,图4为本技术实施例提供的一种待渲染人行横道的人行横道角度的示意图;人行横道角度是α待渲染人行横道与地图正北方向的夹角角度(图4中的α)。
[0063]
此外,本技术实施例中,上述s302或s3011-s3012借助图形处理器(graphics processing unit,gpu)上的着色器完成,进一步节省中央处理器(central processing unit,cpu)的计算资源,以便后续进一步快速、简单、有效地渲染高精度地图中人行横道,从而进一步提升高精度地图的流畅度和体验感。
[0064]
s302:根据多个预设外轮廓点对待渲染人行横道的待渲染轮廓区域进行三角化,获得待渲染轮廓区域的多个三角形区域。
[0065]
本技术实施例中,在执行s301得到待渲染人行横道的每个预设外轮廓点的渲染纹理坐标之后,需要以此对待渲染人行横道的待渲染轮廓区域进行纹理渲染;而纹理渲染的前提是通过多个预设外轮廓点三角化待渲染人行横道的待渲染轮廓区域得到多个三角形区域;其中,多个预设外轮廓点是多个三角形区域的多个顶点。
[0066]
在s302具体实现时,在多个预设外轮廓点中每两个相邻的预设外轮廓点作为一个三角区域的两个顶点基础上,在确定该三角区域的另一个顶点时,将目标几何平均点直接作为该三角区域的另一个顶点,相较于从多个预设外轮廓点中确定该三角区域的另一个顶点更加快速、简单、有效;基于此,连接每个预设外轮廓点与目标几何平均点,能够快速、简单、有效地一次性三角化待渲染人行横道的待渲染轮廓区域,得到待渲染人行横道的多个三角形区域。因此,本技术提供了一种可能的实现方式,s302例如具体可以为:通过连接每个预设外轮廓点与目标几何平均点对待渲染轮廓区域进行三角化,获得多个三角形区域。
[0067]
作为一种示例,参见图5,图5为本技术实施例提供的一种三角化待渲染人行横道的待渲染轮廓区域得到多个三角形区域的示意图。在上述示例的基础上,w为12,针对待渲染人行横道的多个预设外轮廓点p1点、p2点、
……
和p
12
点所形成的待渲染轮廓区域,连接p1点、p2点、
……
和p
12
点中每个预设外轮廓点与目标几何平均点p点,三角化待渲染轮廓区域得到多个三角形区域。
[0068]
s303:根据多个预设外轮廓点对应的多个渲染纹理坐标,对多个三角形区域进行人行横道标示线的纹理渲染,在地图中获得待渲染人行横道的已渲染人行横道。
[0069]
本技术实施例中,在执行s302得到待渲染人行横道的待渲染轮廓区域的多个三角形区域之后,按照多个预设外轮廓点对应的多个渲染纹理坐标,基于人行横道标示线纹理渲染多个三角形区域得到已渲染人行横道。该纹理渲染方式在确定每个预设外轮廓点对应人行横道标示线的纹理像素点的基础上,能够快速、简单、有效地一次性渲染待渲染人行横道中多条人行横道标示线得到已渲染人行横道。
[0070]
对应于上述s302的具体实现方式,在s303具体实现时,由于目标几何平均点是每个三角区域的一个顶点,且将目标几何平均点的预设纹理坐标和纹理重复长度,以第二运算方式运算得到目标几何平均点的渲染纹理坐标,在针对多个三角形区域进行人行横道标示线的纹理渲染,还需要增加目标几何平均点的渲染纹理坐标,基于人行横道标示线纹理渲染多个三角形区域得到已渲染人行横道。因此,本技术提供了一种可能的实现方式,s303例如具体可以为:根据目标几何平均点的渲染纹理坐标和多个预设外轮廓点对应的多个渲染纹理坐标,对多个三角形区域进行人行横道标示线的纹理渲染,在地图中获得已渲染人
行横道;目标几何平均点的渲染纹理坐标是对预设纹理坐标和纹理重复长度进行第二运算获得的。
[0071]
作为一种示例,参见图6,图6为本技术实施例提供的一种基于人行横道标示线纹理渲染多个三角形区域得到已渲染人行横道的示意图。在上述示例的基础上,按照待渲染人行横道的多个预设外轮廓点p1点、p2点、
……
和p
12
点对应的多个渲染纹理坐标t1'(u,v)、t2'(u,v)、
……
和t
12
'(u,v),以及目标几何平均点p点的渲染纹理坐标p(u,v),基于人行横道标示线纹理渲染图5所示的多个三角形区域得到已渲染人行横道;其中,p(u,v)是将p点的预设纹理坐标p(x,y)和纹理重复长度l按照除法运算相除得到的,即,p(u,v)=p(x,y)/l。
[0072]
此外,考虑到数据分布式处理方式,实际应用中同一人行横道的多个外轮廓点可能被分布式处理,导致高精度地图中渲染得到的同一人行横道不连贯,从而降低高精度地图的体验感。因此,本技术实施例中,当地图中存在待渲染的相邻两个人行横道,即,第一人行横道和第二人行横道时,在执行s301之前,需要先确定第一人行横道的第一外框矩形和第二人行横道的第二外框矩形,再确定第一外框矩形向第二外框矩形方向的第一扩展矩形和第二外框矩形向第一外框矩形方向的第二扩展矩形。基于此,在第一人行横道与地图正北方向的夹角角度为第一夹角角度,第二人行横道与地图正北方向的夹角角度为第二夹角角度的基础上,判断第一扩展矩形和第二扩展矩形是否相交,且第一夹角角度与第二夹角角度的角度差异是否符合预设差异,若是,表示第一人行横道和第二人行横道是同一人行横道,则将第一人行横道和第二人行横道合并为待渲染人行横道;若否,将第一人行横道与第二人行横道依次作为待渲染人行横道。
[0073]
其中,考虑到第一人行横道与地图正北方向存在夹角角度,即,第一夹角角度,为了使得第一人行横道的第一外框矩形更贴合第一人行横道的第一轮廓区域,需要将第一人行横道的每个第一外轮廓点绕多个第一外轮廓点的第一几何平均点顺时针旋转第一夹角角度,以便通过多个旋转后的第一外轮廓点确定第一外框矩形。同理,考虑到第二人行横道与地图正北方向存在夹角角度,即,第二夹角角度,为了使得第二人行横道的第二外框矩形更贴合第二人行横道的第二轮廓区域,同样需要将第二人行横道的每个第二外轮廓点绕多个第二外轮廓点的第二几何平均点顺时针旋转第二夹角角度,以便通过多个旋转后的第二外轮廓点确定第二外框矩形。
[0074]
其中,第一外框矩形向第二外框矩形方向的第一扩展矩形,实际上是将第一外框矩形中与第二外框矩形相邻的第一外框边向外扩展一个车道线距离(即,第一距离)得到的;也就是说,第一距离为第一人行横道对应的多个第一车道线中两个第一车道线之间的距离。同理,第二外框矩形向第一外框矩形方向的第二扩展矩形,实际上也是将第二外框矩形中与第一外框矩形相邻的第二外框边向外扩展另一个车道线距离(即,第二距离)得到的;也就是说,第二距离为第二人行横道对应的多个第二车道线中两个第二车道线之间的距离。综上,本技术提供了一种可能的实现方式,待渲染人行横道的获得步骤例如可以包括如下s1-s4(图中未示出):
[0075]
s1:若第一人行横道具有相邻的第二人行横道,将第一人行横道的每个第一外轮廓点绕多个第一外轮廓点的第一几何平均点顺时针旋转第一夹角角度,获得第一人行横道的第一外框矩形;第一夹角角度是第一人行横道与地图正北方向的夹角角度。
[0076]
在s1具体实现时,首先,获取地图中每个第一外轮廓点的第一位置坐标;然后,将每个第一外轮廓点的第一位置坐标绕第一几何平均点旋转第一夹角角度,得到一个新的坐标作为每个预设外轮廓点的第一旋转坐标,即,将每个第一外轮廓点的第一位置坐标、第一几何平均点的第一预设坐标和第一夹角角度对应的旋转矩阵,以第三运算方式运算得到每个第一外轮廓点的第一旋转坐标;最后,通过多个第一外轮廓点对应的多个第一旋转坐标,确定第一外框矩形的多个第一顶点坐标,以构建第一人行横道的第一外框矩形。因此,本技术提供了一种可能的实现方式,s1例如可以包括如下s11-s14(图中未示出):
[0077]
s11:获取地图中每个第一外轮廓点的第一位置坐标。
[0078]
具体地,每个第一外轮廓点的第一位置坐标是在地图的坐标系中,根据每个第一外轮廓点与坐标原点之间的位置关系确定的。
[0079]
s12:对每个第一位置坐标、第一几何平均点的第一预设坐标和第一夹角角度对应的旋转矩阵进行第三运算,获得每个第一外轮廓点的第一旋转坐标;第一预设坐标是多个第一外轮廓点对应的多个第一位置坐标的几何平均值。
[0080]
s13:根据多个第一外轮廓点对应的多个第一旋转坐标,确定第一外框矩形的多个第一顶点坐标。
[0081]
在s13具体实现时,第一人行横道的第一外框矩形需要包括旋转后的多个第一外轮廓点,在第一旋转坐标包括x轴上的坐标和y轴上的坐标,即,第一x轴坐标和第一y轴坐标的基础上,先在多个第一外轮廓点对应的多个第一旋转坐标中,可以基于多个第一x轴坐标确定最小第一x轴坐标和最大第一x轴坐标,并基于多个第一y轴坐标确定最小第一y轴坐标和最大第一y轴坐标;再以第一x轴坐标和第一y轴坐标的坐标组合方式,组合小第一x轴坐标、最大第一x轴坐标、最小第一y轴坐标和最大第一y轴坐标,即可得到用于构建第一外框矩形的多个第一顶点坐标。因此,本技术提供了一种可能的实现方式,第一旋转坐标包括第一x轴坐标和第一y轴坐标,s13例如可以包括如下s13a-s13b(图中未示出):
[0082]
s13a:在多个第一旋转坐标中,确定最小第一x轴坐标、最大第一x轴坐标、最小第一y轴坐标和最大第一y轴坐标。
[0083]
s13b:对最小第一x轴坐标、最大第一x轴坐标、最小第一y轴坐标和最大第一y轴坐标进行第一x轴坐标和第一y轴坐标的坐标组合,获得多个第一顶点坐标。
[0084]
其中,多个第一顶点坐标包括(最小第一x轴坐标,最大第一y轴坐标)、(最小第一x轴坐标,最小第一y轴坐标)、(最大第一x轴坐标,最小第一y轴坐标)和(最大第一x轴坐标,最大第一y轴坐标)。
[0085]
s14:根据多个第一顶点坐标进行矩形构建,获得第一外框矩形。
[0086]
作为一种示例,第一人行横道的多个第一外轮廓点包括a1点、a2、点
……
和am点,a1点、a2点、
……
和am点的第一几何平均点为a点,第一外轮廓点ai点的第一位置坐标为ai(x,y),i=1,2,
……
,m;a点的第一预设坐标为a(x,y);第一夹角角度为α1。在α1对应的旋转矩阵为r(α1)的基础上,将ai(x,y)和a(x,y)按照减法运算相减得到差值,将该差值和r(α1)按照乘法运算相乘得到乘积,将该乘积和a(x,y)按照加法运算相加,得到ai点的第一旋转坐标为ai'(x,y),即,ai'(x,y)=[ai(x,y)-a(x,y)]
×
r(α1)+a(x,y);通过a1点、a2点、
……
和am点对应的多个第一旋转坐标a1'(x,y)、a2'(x,y)、
……
和am'(x,y),确定第一外框矩形的多个第一顶点坐标为(x
1min
,y
1max
)、(x
1min
,y
1min
)、(x
1max
,y
1min
)和(x
1max
,y
1max
),以构建第一人行横
点、b2点、
……
和bn点的目标几何平均点为b点,第二外轮廓点bj点的第二位置坐标为bj(x,y),j=1,2,
……
,n;b点的第二预设坐标为b(x,y);第二夹角角度为α2;第三运算为乘法运算。在α2对应的旋转矩阵为r(α2)的基础上,将bj(x,y)和b(x,y)按照减法运算相减得到差值,将该差值和r(α2)按照乘法运算相乘得到乘积,将该乘积和b(x,y)按照加法运算相加,得到bj点的第二旋转坐标为bj'(x,y),即,bj'(x,y)=[bj(x,y)-b(x,y)]
×
r(α2)+b(x,y);通过b1点、b2点、
……
和bn点对应的多个第二旋转坐标b1'(x,y)、b2'(x,y)、
……
和bn'(x,y),确定第二外框矩形的多个第二顶点坐标为(x
2min
,y
2max
)、(x
2min
,y
2min
)、(x
2max
,y
2min
)和(x
2max
,y
2max
),以构建第二人行横道的第二外框矩形。
[0099]
作为一种示例,参见图7,图7为本技术实施例提供的一种构建第一人行横道的第一外框矩形和第二人行横道的第二外框矩形的示意图。在上述示例的基础上,m为5,n为8,将图7中(a)所示第一人行横道的多个第一外轮廓点a1点、a2点、
……
和a5点分别绕a1点、a2点、
……
和a5点的第一几何平均点a点顺时针旋转第一夹角角度α1,并将图7中(a)所示第二人行横道的多个第二外轮廓点b1点、b2点、
……
和b8点分别绕b1点、b2点、
……
和b8点的第二几何平均点b点顺时针旋转第二夹角角度α2,得到图7中(b)所示旋转后的a1点、旋转后的a2点、
……
和旋转后的a5点,以及旋转后的b1点、旋转后的b2点、
……
和旋转后的b8点。
[0100]
基于图7中(b)所示旋转后的a1点、旋转后的a2点、
……
和旋转后的am点,构建第一人行横道的第一外框矩形701,基于图7中(b)旋转后的b1点、旋转后的b2点、
……
和旋转后的b8点,构建第二人行横道的第二外框矩形702。
[0101]
s3:若第一扩展矩形与第二外框矩形的第二扩展矩形相交,且第一夹角角度与第二夹角角度的角度差异符合预设差异,对第一人行横道与第二人行横道进行合并,获得待渲染人行横道;第二扩展矩形是将第二外框矩形中与第一外框矩形相邻的第二外框边向外扩展第二距离获得的,第二距离为第二人行横道对应的多个第二车道线中两个第二车道线之间的距离。
[0102]
作为一种示例,参见图8,图8为本技术实施例提供的一种第一外框矩形扩展为第一扩展矩形和第一外框矩形扩展为第二扩展矩形的示意图。在上述示例的基础上,将图7中(c)所示第一外框矩形701与第二外框矩形702相邻的第一外框边向外扩展第一距离得到第一扩展矩形801,第一距离为第一人行横道对应的多个第一车道线中两个第一车道线之间的距离;将图7中(c)所示第二外框矩形702与第一外框矩形701相邻的第二外框边向外扩展第二距离得到第二扩展矩形802,第二距离为第二人行横道对应的多个第二车道线中两个第二车道线之间的距离。
[0103]
在s3具体实现时,判断得到第一人行横道和第二人行横道是同一人行横道时,首先,需要在第一人行横道的多个第一外轮廓点中,确定用于与第二人行横道合并的第一待合并点;即,确定第一扩展矩形中与第二扩展矩形相交的第一扩展边,以便在多个第一外轮廓点中确定与第一扩展边的每个顶点距离最近的第一外轮廓点作为第一待合并点;同理,需要在第二人行横道的多个第二外轮廓点中,确定用于与第一人行横道合并的第二待合并点;即,确定第二扩展矩形中与第一扩展矩形相交的第二扩展边,以便在多个第二外轮廓点中确定与第二扩展边的每个顶点距离最近的第二外轮廓点作为第二待合并点。然后,舍弃在合并第一人行横道和第二人行横道时,可能冗余的第一待合并点之间的第一待舍弃点、第一待合并点确定的第一轮廓边、第二待合并点之间的第二待舍弃点、以及第二待合并点
确定的第二轮廓边。最后,对应连接第一待合并点和第二待合并点即可得到待渲染人行横道;第一待合并点和第二待合并点之间的连线不相交。因此,本技术提供了一种可能的实现方式,s3中对第一人行横道与第二人行横道进行合并,获得待渲染人行横道的步骤,例如可以包括如下s31-s33(图中未示出):
[0104]
s31:确定第一扩展矩形中与第二扩展矩形相交的第一扩展边、多个第一外轮廓点中与第一扩展边的每个顶点距离最近的第一待合并点、第二扩展矩形中与第一扩展矩形相交的第二扩展边、以及多个第二外轮廓点中与第二扩展边的每个顶点距离最近的第二待合并点。
[0105]
s32:舍弃多个第一外轮廓点中第一待合并点之间的第一待舍弃点、第一待合并点确定的第一轮廓边、多个第二外轮廓点中第二待合并点之间的第二待舍弃点、以及第二待合并点确定的第二轮廓边。
[0106]
s33:对第一待合并点和第二待合并点进行连接,获得待渲染人行横道;第一待合并点和第二待合并点之间的连线不相交。
[0107]
基于此,通过s31-s33的实现方式,待渲染人行横道的多个预设外轮廓点包括多个第一外轮廓点和多个第二外轮廓点中除第一待舍弃点和第一待舍弃点之外的多个其他外轮廓点,人行横道角度具体为第一夹角角度、第二夹角角度以及第一夹角角度与第二夹角角度的平均夹角角度中的任意一种。
[0108]
作为一种示例,参见图9,图9为本技术实施例提供的一种第一人行横道和第二人行横道合并为待渲染人行横道的示意图。在上述示例的基础上,通过图7中(a)所示第一人行横道的多个第一外轮廓点a1点、a2点、
……
和a5点,以及第二人行横道的多个第二外轮廓点b1点、b2点、
……
和b8点,图8所示第一扩展矩形801和第二扩展矩形802,在a1点、a2点、
……
和a5点中确定用于与第二人行横道合并的两个第一待合并点为a4点和a5点;同理,在b1点、b2点、
……
和b8点中,确定用于与第一人行横道合并的第二待合并点为b1点和b3点。舍弃a4点和a5点确定的第一轮廓边a4a5边、b1点和b3点之间的第二待舍弃点b2点、以及b1点和b3点确定的第二轮廓边b1b3边。对应连接a4点和b3点、以及a5点和b1点即可得到待渲染人行横道。即,待渲染人行横道的多个预设外轮廓点p1点、p2点、
……
和p
12
点包括a1点、a2点、
……
和a5点、以及b1点、b2点、
……
和b8点中除b2点之外的12个其他外轮廓点,人行横道角度α为第一夹角角度α1、第二夹角角度α2以及α1与α2的平均夹角角度中的任意一种。
[0109]
s4:若第一扩展矩形与第二扩展矩形不相交,或角度差异不符合预设差异,将第一人行横道与第二人行横道依次确定为待渲染人行横道。
[0110]
基于此,通过s4的实现方式,待渲染人行横道具体为第一人行横道时,多个预设外轮廓点包括多个第一外轮廓点,人行横道角度具体为第一夹角角度;待渲染人行横道具体为第二人行横道时,多个预设外轮廓点包括多个第二外轮廓点,人行横道角度具体为第二夹角角度。
[0111]
此外,由于相关技术中,第一人行横道与地图正北方向的夹角角度,即,第一夹角角度是需要通过高精度采集设备采集得到的,对数据采集的要求较高;为了解决该问题,本技术实施例中,考虑到第一人行横道对应的第一车道线与地图正北方向的夹角角度,相当于第一人行横道与地图正北方向的夹角角度,在第一人行横道对应的多个第一车道线的基础上,先选取最小弯曲程度对应的第一车道线作为目标车道线,再将目标车道线上与第一
人行横道相邻的两个车道线点以指向第一人行横道连接得到车道线点连线,计算车道线点连线和地图正北方向的夹角角度作为第一夹角角度。因此,本技术提供了一种可能的实现方式,第一夹角角度的获得步骤例如可以包括s5-s6(图中未示出):
[0112]
s5:在第一人行横道对应的多个第一车道线中,将最小弯曲程度对应的第一车道线确定为目标车道线。
[0113]
在s5具体实现时,在每个第一车道线上具有多个车道线点时,可以通过每个第一车道线上的多个车道线点,可以角度计算得到每个第一车道线的平均变化角度,该每个第一车道线的平均变化角度可以表示每个第一车道线的弯曲程度,平均变化角度越大表示弯曲程度越大;基于此,选取平均变化角度对应的第一车道线作为目标车道线。因此,本技术提供了一种可能的实现方式,s5例如可以如下s51-s52(图中未示出):
[0114]
s51:根据每个第一车道线上的多个车道线点进行角度计算,获得每个第一车道线的表示弯曲程度的平均变化角度。
[0115]
在s51具体实现时,针对每个第一车道线上的多个车道线点而言,将每三个相邻的车道线点中每两个相邻的车道线点进行连线,并计算连线之间的夹角角度作为车道线角度,可以得到每个第一车道线对应的多个车道线角度;基于此,将每个第一车道线对应的多个车道线角度求平均,即可得到每个第一车道线的平均变化角度。因此,本技术提供了一种可能的实现方式,s51例如可以包括如下s51a-s51b(图中未示出):
[0116]
s51a:对每个第一车道线上每三个相邻的车道线点中每两个相邻的车道线点之间连线进行夹角运算,获得每个第一车道线对应的多个车道线角度。
[0117]
s51b:对每个第一车道线上对应的多个车道线角度进行均值计算,获得每个第一车道线的平均变化角度。
[0118]
s52:将最小平均变化角度对应的第一车道线确定为目标车道线。
[0119]
s6:根据目标车道线上与第一人行横道相邻的两个车道线点指向第一人行横道的车道线点连线和地图正北方向进行夹角运算,获得第一夹角角度。
[0120]
同理,本技术提供了一种可能的实现方式,第二夹角角度的获得步骤例如可以包括s7-s8(图中未示出):
[0121]
s7:在第二人行横道对应的多个第二车道线中,将最小弯曲程度对应的第二车道线确定为预设车道线。
[0122]
其中,本技术提供了一种可能的实现方式,s7例如可以如下s71-s72(图中未示出):
[0123]
s71:根据每个第二车道线上的多个车道线点进行角度计算,获得每个第二车道线的表示弯曲程度的平均变化角度。
[0124]
进一步地,本技术提供了一种可能的实现方式,s71例如可以包括如下s71a-s71b(图中未示出):
[0125]
s71a:对每个第二车道线上每三个相邻的车道线点中每两个相邻的车道线点之间连线进行夹角运算,获得每个第二车道线对应的多个车道线角度。
[0126]
s71b:对每个第二车道线上对应的多个车道线角度进行均值计算,获得每个第二车道线的平均变化角度。
[0127]
s72:将最小平均变化角度对应的第二车道线确定为预设车道线。
[0128]
s8:根据预设车道线上与第二人行横道相邻的两个车道线点指向第二人行横道的车道线点连线和地图正北方向进行夹角运算,获得第二夹角角度。
[0129]
作为一种示例,参见图10,图10为本技术实施例提供的一种第一夹角角度和第二夹角角度的示意图。其中,图10中(a)表示第一人行横道对应的多个第一车道线中最小弯曲程度对应的第一车道线,即,目标车道线为车道线1001,车道线1001上与第一人行横道相邻的两个车道线点为c点和d点,以指向第一人行横道连线得到车道线点连线为cd连线,计算cd连线和地图正北方向的夹角角度作为第一夹角角度α1。图10中(b)表示第二人行横道对应的多个第二车道线中最小弯曲程度对应的第二车道线,即,预设车道线为车道线1002,车道线1002上与第二人行横道相邻的两个车道线点为e点和f点,以指向第二人行横道连线得到车道线点连线为ef连线,计算ef连线和地图正北方向的夹角角度作为第二夹角角度α2。
[0130]
由上述技术方案可以看出,获取地图中待渲染人行横道的每个预设外轮廓点的渲染纹理坐标;该纹理坐标获取方式能够快速、简单、有效地确定待渲染人行横道的每个预设外轮廓点对应人行横道标示线的纹理像素点。通过多个预设外轮廓点三角化待渲染人行横道的待渲染轮廓区域得到多个三角形区域;按照多个预设外轮廓点对应的多个渲染纹理坐标,基于人行横道标示线纹理渲染多个三角形区域得到已渲染人行横道;该纹理渲染方式在确定每个预设外轮廓点对应人行横道标示线的纹理像素点的基础上,能够快速、简单、有效地一次性渲染待渲染人行横道中多条人行横道标示线得到已渲染人行横道。基于此,该方法基于外轮廓点的纹理坐标进行纹理渲染得到人行横道,实现快速、简单、有效地渲染高精度地图中人行横道,能够提高人行横道的渲染准确度,使得人行横道的渲染效果进一步还原真实的行驶道路、增加行驶场景的真实感,从而提升高精度地图的体验感。
[0131]
需要说明的是,本技术在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。
[0132]
基于图2对应实施例提供的地图中人行横道的渲染方法,本技术实施例还提供一种地图中人行横道的渲染装置,参见图11,图11为本技术实施例提供的一种地图中人行横道的渲染装置的结构图,该地图中人行横道的渲染装置1100包括:获取单元1101、三角化单元1102和渲染单元1103;
[0133]
获取单元1101,用于获取地图中待渲染人行横道的每个预设外轮廓点的渲染纹理坐标;
[0134]
三角化单元1102,用于根据多个预设外轮廓点对待渲染人行横道的待渲染轮廓区域进行三角化,获得待渲染轮廓区域的多个三角形区域;
[0135]
渲染单元1103,用于根据多个预设外轮廓点对应的多个渲染纹理坐标,对多个三角形区域进行人行横道标示线的纹理渲染,在地图中获得待渲染人行横道的已渲染人行横道。
[0136]
在一种可能的实现方式中,获取单元1101,具体用于:
[0137]
根据地图中每个预设外轮廓点的预设位置坐标、待渲染人行横道的人行横道角度和待渲染人行横道的纹理重复长度进行坐标计算,获得每个预设外轮廓点的渲染纹理坐标;人行横道角度是待渲染人行横道与地图正北方向的夹角角度。
[0138]
在一种可能的实现方式中,坐标计算包括第一运算和第二运算;获取单元1101,具体用于:
[0139]
对每个预设外轮廓点的预设位置坐标、多个预设外轮廓点的目标几何平均点的预设纹理坐标、以及人行横道角度对应的旋转矩阵进行第一运算,获得每个预设外轮廓点的旋转纹理坐标;预设纹理坐标是多个预设外轮廓点对应的多个预设位置坐标的几何平均值;
[0140]
对每个预设外轮廓点的旋转纹理坐标和纹理重复长度进行第二运算,获得每个预设外轮廓点的渲染纹理坐标。
[0141]
在一种可能的实现方式中,三角化单元1102,具体用于:
[0142]
通过连接每个预设外轮廓点与目标几何平均点对待渲染轮廓区域进行三角化,获得多个三角形区域;
[0143]
渲染单元1103,具体用于:
[0144]
根据目标几何平均点的渲染纹理坐标和多个预设外轮廓点对应的多个渲染纹理坐标,对多个三角形区域进行人行横道标示线的纹理渲染,在地图中获得已渲染人行横道;目标几何平均点的渲染纹理坐标是对预设纹理坐标和纹理重复长度进行第二运算获得的。
[0145]
在一种可能的实现方式中,装置还包括:旋转单元、扩展单元、合并单元和确定单元;
[0146]
旋转单元,用于若第一人行横道具有相邻的第二人行横道,将第一人行横道的每个第一外轮廓点绕多个第一外轮廓点的第一几何平均点顺时针旋转第一夹角角度,获得第一人行横道的第一外框矩形;第一夹角角度是第一人行横道与地图正北方向的夹角角度;
[0147]
扩展单元,用于将第一外框矩形中与第二人行横道的第二外框矩形相邻的第一外框边向外扩展第一距离,获得第一扩展矩形;第二外框矩形是将第二人行横道的每个第二外轮廓点绕多个第二外轮廓点的第二几何平均点顺时针旋转第二夹角角度获得的,第二夹角角度是第二人行横道与地图正北方向的夹角角度,第一距离为第一人行横道对应的多个第一车道线中两个第一车道线之间的距离;
[0148]
合并单元,用于若第一扩展矩形与第二外框矩形的第二扩展矩形相交,且第一夹角角度与第二夹角角度的角度差异符合预设差异,对第一人行横道与第二人行横道进行合并,获得待渲染人行横道;第二扩展矩形是将第二外框矩形中与第一外框矩形相邻的第二外框边向外扩展第二距离获得的,第二距离为第二人行横道对应的多个第二车道线中两个第二车道线之间的距离;
[0149]
确定单元,用于若第一扩展矩形与第二扩展矩形不相交,或角度差异不符合预设差异,将第一人行横道与第二人行横道依次确定为待渲染人行横道。
[0150]
在一种可能的实现方式中,合并单元,具体用于:
[0151]
确定第一扩展矩形中与第二扩展矩形相交的第一扩展边、多个第一外轮廓点中与第一扩展边的每个顶点距离最近的第一待合并点、第二扩展矩形中与第一扩展矩形相交的第二扩展边、以及多个第二外轮廓点中与第二扩展边的每个顶点距离最近的第二待合并点;
[0152]
舍弃多个第一外轮廓点中第一待合并点之间的第一待舍弃点、第一待合并点确定的第一轮廓边、多个第二外轮廓点中第二待合并点之间的第二待舍弃点、以及第二待合并点确定的第二轮廓边;
[0153]
对第一待合并点和第二待合并点进行连接,获得待渲染人行横道;第一待合并点
和第二待合并点之间的连线不相交。
[0154]
在一种可能的实现方式中,待渲染人行横道是对第一人行横道与第二人行横道进行合并获得时,多个预设外轮廓点包括多个第一外轮廓点和多个第二外轮廓点中除第一待舍弃点和第一待舍弃点之外的多个其他外轮廓点,人行横道角度具体为第一夹角角度、第二夹角角度以及第一夹角角度与第二夹角角度的平均夹角角度中的任意一种;待渲染人行横道具体为第一人行横道时,多个预设外轮廓点包括多个第一外轮廓点,人行横道角度具体为第一夹角角度;待渲染人行横道具体为第二人行横道时,多个预设外轮廓点包括多个第二外轮廓点,人行横道角度具体为第二夹角角度。
[0155]
在一种可能的实现方式中,旋转单元,具体用于:
[0156]
获取地图中根据每个第一外轮廓点与第一几何平均点之间的位置关系,确定每个第一外轮廓点的第一位置坐标;
[0157]
对每个第一位置坐标、第一几何平均点的第一预设坐标和第一夹角角度对应的旋转矩阵进行第三运算,获得每个第一外轮廓点的第一旋转坐标;第一预设坐标是多个第一外轮廓点对应的多个第一位置坐标的几何平均值;
[0158]
根据多个第一外轮廓点对应的多个第一旋转坐标,确定第一外框矩形的多个第一顶点坐标;
[0159]
根据多个第一顶点坐标进行矩形构建,获得第一外框矩形。
[0160]
在一种可能的实现方式中,旋转单元,具体用于:
[0161]
在多个第一旋转坐标中,确定最小第一x轴坐标、最大第一x轴坐标、最小第一y轴坐标和最大第一y轴坐标;
[0162]
对最小第一x轴坐标、最大第一x轴坐标、最小第一y轴坐标和最大第一y轴坐标进行第一x轴坐标和第一y轴坐标的坐标组合,获得多个第一顶点坐标。
[0163]
在一种可能的实现方式中,装置还包括:运算单元;
[0164]
确定单元,还用于在第一人行横道对应的多个第一车道线中,将最小弯曲程度对应的第一车道线确定为目标车道线;
[0165]
运算单元,用于根据目标车道线上与第一人行横道相邻的两个车道线点指向第一人行横道的车道线点连线和地图正北方向进行夹角运算,获得第一夹角角度。
[0166]
在一种可能的实现方式中,确定单元,具体用于:
[0167]
根据每个第一车道线上的多个车道线点进行角度计算,获得每个第一车道线的表示弯曲程度的平均变化角度;
[0168]
将最小平均变化角度对应的第一车道线确定为目标车道线。
[0169]
在一种可能的实现方式中,确定单元,具体用于:
[0170]
对每个第一车道线上每三个相邻的车道线点中每两个相邻的车道线点之间连线进行夹角运算,获得每个第一车道线上对应的多个车道线角度;
[0171]
对每个第一车道线上的对应的多个车道线角度进行均值计算,获得每个第一车道线的平均变化角度。
[0172]
由上述技术方案可以看出,获取地图中待渲染人行横道的每个预设外轮廓点的渲染纹理坐标;该纹理坐标获取方式能够快速、简单、有效地确定待渲染人行横道的每个预设外轮廓点对应人行横道标示线的纹理像素点。通过多个预设外轮廓点三角化待渲染人行横
道的待渲染轮廓区域得到多个三角形区域;按照多个预设外轮廓点对应的多个渲染纹理坐标,基于人行横道标示线纹理渲染多个三角形区域得到已渲染人行横道;该纹理渲染方式在确定每个预设外轮廓点对应人行横道标示线的纹理像素点的基础上,能够快速、简单、有效地一次性渲染待渲染人行横道中多条人行横道标示线得到已渲染人行横道。基于此,该方法基于外轮廓点的纹理坐标进行纹理渲染得到人行横道,实现快速、简单、有效地渲染高精度地图中人行横道,能够提高人行横道的渲染准确度,使得人行横道的渲染效果进一步还原真实的行驶道路、增加行驶场景的真实感,从而提升高精度地图的体验感。
[0173]
本技术实施例还提供了一种计算机设备,该计算机设备可以是服务器,参见图12,图12为本技术实施例提供的一种服务器的结构图,服务器1200可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器,例如cpu1222,以及存储器1232,一个或一个以上存储应用程序1242或数据1244的存储介质1230(例如一个或一个以上海量存储设备)。其中,存储器1232和存储介质1230可以是短暂存储或持久存储。存储在存储介质1230的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1222可以设置为与存储介质1230通信,在服务器1200上执行存储介质1230中的一系列指令操作。
[0174]
服务器1200还可以包括一个或一个以上电源1226,一个或一个以上有线或无线网络接口1250,一个或一个以上输入输出接口1258,和/或,一个或一个以上操作系统1241,例如windows server
tm
,mac os x
tm
,unix
tm
,linux
tm
,freebsd
tm
等等。
[0175]
在本实施例中,由服务器1200中的中央处理器1222可以执行以下步骤:
[0176]
获取地图中待渲染人行横道的每个预设外轮廓点的渲染纹理坐标;
[0177]
根据多个预设外轮廓点对待渲染人行横道的待渲染轮廓区域进行三角化,获得待渲染轮廓区域的多个三角形区域;
[0178]
根据多个预设外轮廓点对应的多个渲染纹理坐标,对多个三角形区域进行人行横道标示线的纹理渲染,在地图中获得待渲染人行横道的已渲染人行横道。
[0179]
本技术实施例提供的计算机设备还可以是终端,参见图13,图13为本技术实施例提供的一种终端的结构图。以终端为智能手机为例,智能手机包括:射频(radio frequency,rf)电路1310、存储器1320、输入单元1330、显示单元1340、传感器1350、音频电路1360、无线保真(wireless fidelity,wifi)模块1370、处理器1380、以及电源1390等部件。输入单元1330可包括触控面板1331以及其他输入设备1332,显示单元1340可包括显示面板1341,音频电路1360可以包括扬声器1361和传声器1362。本领域技术人员可以理解,图13中示出的智能手机结构并不构成对智能手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0180]
存储器1320可用于存储软件程序以及模块,处理器1380通过运行存储在存储器1320的软件程序以及模块,从而执行智能手机的各种功能应用以及数据处理。存储器1320可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据智能手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1320可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
[0181]
处理器1380是智能手机的控制中心,利用各种接口和线路连接整个智能手机的各个部分,通过运行或执行存储在存储器1320内的软件程序和/或模块,以及调用存储在存储器1320内的数据,执行智能手机的各种功能和处理数据。可选的,处理器1380可包括一个或多个处理单元;优选的,处理器1380可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1380中。
[0182]
在本实施例中,智能手机中的处理器1380可以执行以下步骤:
[0183]
获取地图中待渲染人行横道的每个预设外轮廓点的渲染纹理坐标;
[0184]
根据多个预设外轮廓点对待渲染人行横道的待渲染轮廓区域进行三角化,获得待渲染轮廓区域的多个三角形区域;
[0185]
根据多个预设外轮廓点对应的多个渲染纹理坐标,对多个三角形区域进行人行横道标示线的纹理渲染,在地图中获得待渲染人行横道的已渲染人行横道。
[0186]
根据本技术的一个方面,提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,当所述计算机程序在计算机设备上运行时,使得所述计算机设备执行上述实施例各种可选实现方式中提供的方法。
[0187]
根据本技术的一个方面,提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行上述实施例各种可选实现方式中提供的方法。
[0188]
上述各个附图对应的流程或结构的描述各有侧重,某个流程或结构中没有详述的部分,可以参见其他流程或结构的相关描述。
[0189]
本技术的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0190]
在本技术所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0191]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0192]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以
是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0193]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储计算机程序的介质。
[0194]
以上所述,以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术成员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围。

技术特征:
1.一种地图中人行横道的渲染方法,其特征在于,所述方法包括:获取地图中待渲染人行横道的每个预设外轮廓点的渲染纹理坐标;根据多个所述预设外轮廓点对所述待渲染人行横道的待渲染轮廓区域进行三角化,获得所述待渲染轮廓区域的多个三角形区域;根据多个所述预设外轮廓点对应的多个渲染纹理坐标,对多个所述三角形区域进行人行横道标示线的纹理渲染,在所述地图中获得所述待渲染人行横道的已渲染人行横道。2.根据权利要求1所述的方法,其特征在于,所述获取地图中待渲染人行横道的每个预设外轮廓点的渲染纹理坐标,具体为:根据所述地图中每个所述预设外轮廓点的预设位置坐标、所述待渲染人行横道的人行横道角度和所述待渲染人行横道的纹理重复长度进行坐标计算,获得每个所述预设外轮廓点的渲染纹理坐标;所述人行横道角度是所述待渲染人行横道与地图正北方向的夹角角度。3.根据权利要求2所述的方法,其特征在于,所述坐标计算包括第一运算和第二运算;所述根据每个所述预设外轮廓点的预设位置坐标、所述待渲染人行横道的人行横道角度和所述待渲染人行横道的纹理重复长度进行坐标计算,获得每个所述预设外轮廓点的渲染纹理坐标,包括:对每个所述预设外轮廓点的预设位置坐标、多个所述预设外轮廓点的目标几何平均点的预设纹理坐标、以及所述人行横道角度对应的旋转矩阵进行所述第一运算,获得每个所述预设外轮廓点的旋转纹理坐标;所述预设纹理坐标是多个所述预设外轮廓点对应的多个预设位置坐标的几何平均值;对每个所述预设外轮廓点的旋转纹理坐标和所述纹理重复长度进行所述第二运算,获得每个所述预设外轮廓点的渲染纹理坐标。4.根据权利要求3所述的方法,其特征在于,所述根据多个所述预设外轮廓点对所述待渲染人行横道的待渲染轮廓区域进行三角化,获得所述待渲染轮廓区域的多个三角形区域,具体为:通过连接每个所述预设外轮廓点与所述目标几何平均点对所述待渲染轮廓区域进行三角化,获得多个所述三角形区域;所述根据多个所述预设外轮廓点对应的多个渲染纹理坐标,对多个所述三角形区域进行人行横道标示线的纹理渲染,在所述地图中获得所述待渲染人行横道的已渲染人行横道,具体为:根据所述目标几何平均点的渲染纹理坐标和多个所述预设外轮廓点对应的多个渲染纹理坐标,对多个所述三角形区域进行人行横道标示线的纹理渲染,在所述地图中获得所述已渲染人行横道;所述目标几何平均点的渲染纹理坐标是对所述预设纹理坐标和所述纹理重复长度进行所述第二运算获得的。5.根据权利要求1所述的方法,其特征在于,所述待渲染人行横道的获得步骤,包括:若第一人行横道具有相邻的第二人行横道,将所述第一人行横道的每个第一外轮廓点绕多个所述第一外轮廓点的第一几何平均点顺时针旋转第一夹角角度,获得所述第一人行横道的第一外框矩形;所述第一夹角角度是所述第一人行横道与所述地图正北方向的夹角角度;
将所述第一外框矩形中与所述第二人行横道的第二外框矩形相邻的第一外框边向外扩展第一距离,获得第一扩展矩形;所述第二外框矩形是将所述第二人行横道的每个第二外轮廓点绕多个所述第二外轮廓点的第二几何平均点顺时针旋转第二夹角角度获得的,所述第二夹角角度是所述第二人行横道与所述地图正北方向的夹角角度,所述第一距离为所述第一人行横道对应的多个第一车道线中两个第一车道线之间的距离;若所述第一扩展矩形与所述第二外框矩形的第二扩展矩形相交,且所述第一夹角角度与所述第二夹角角度的角度差异符合预设差异,对所述第一人行横道与所述第二人行横道进行合并,获得所述待渲染人行横道;所述第二扩展矩形是将所述第二外框矩形中与所述第一外框矩形相邻的第二外框边向外扩展第二距离获得的,所述第二距离为所述第二人行横道对应的多个第二车道线中两个第二车道线之间的距离;若所述第一扩展矩形与所述第二扩展矩形不相交,或所述角度差异不符合所述预设差异,将所述第一人行横道与所述第二人行横道依次确定为所述待渲染人行横道。6.根据权利要求5所述的方法,其特征在于,所述对所述第一人行横道与所述第二人行横道进行合并,获得所述待渲染人行横道,包括:确定所述第一扩展矩形中与所述第二扩展矩形相交的第一扩展边、多个所述第一外轮廓点中与所述第一扩展边的每个顶点距离最近的第一待合并点、所述第二扩展矩形中与所述第一扩展矩形相交的第二扩展边、以及多个所述第二外轮廓点中与所述第二扩展边的每个顶点距离最近的第二待合并点;舍弃多个所述第一外轮廓点中所述第一待合并点之间的第一待舍弃点、所述第一待合并点确定的第一轮廓边、多个所述第二外轮廓点中所述第二待合并点之间的第二待舍弃点、以及所述第二待合并点确定的第二轮廓边;对所述第一待合并点和所述第二待合并点进行连接,获得所述待渲染人行横道;所述第一待合并点和所述第二待合并点之间的连线不相交。7.根据权利要求6所述的方法,其特征在于,所述待渲染人行横道是对所述第一人行横道与所述第二人行横道进行合并获得时,多个所述预设外轮廓点包括多个所述第一外轮廓点和多个所述第二外轮廓点中除所述第一待舍弃点和所述第一待舍弃点之外的多个其他外轮廓点,所述人行横道角度具体为所述第一夹角角度、所述第二夹角角度以及所述第一夹角角度与所述第二夹角角度的平均夹角角度中的任意一种;所述待渲染人行横道具体为所述第一人行横道时,所述多个所述预设外轮廓点包括多个所述第一外轮廓点,所述人行横道角度具体为所述第一夹角角度;所述待渲染人行横道具体为所述第二人行横道时,所述多个所述预设外轮廓点包括多个所述第二外轮廓点,所述人行横道角度具体为所述第二夹角角度。8.根据权利要求5所述的方法,其特征在于,所述将第一人行横道的每个第一外轮廓点绕多个所述第一外轮廓点的第一几何平均点顺时针旋转第一夹角角度,获得所述第一人行横道的第一外框矩形,包括:获取所述地图中每个所述第一外轮廓点的第一位置坐标;对每个所述第一位置坐标、所述第一几何平均点的第一预设坐标和所述第一夹角角度对应的旋转矩阵进行第三运算,获得每个所述第一外轮廓点的第一旋转坐标;所述第一预设坐标是多个所述第一外轮廓点对应的多个第一位置坐标的几何平均值;
根据多个所述第一外轮廓点对应的多个第一旋转坐标,确定所述第一外框矩形的多个第一顶点坐标;根据多个所述第一顶点坐标进行矩形构建,获得所述第一外框矩形。9.根据权利要求5所述的方法,其特征在于,所述第一夹角角度的获得步骤,包括:在所述第一人行横道对应的多个第一车道线中,将最小弯曲程度对应的第一车道线确定为目标车道线;根据所述目标车道线上与所述第一人行横道相邻的两个车道线点指向所述第一人行横道的车道线点连线和所述地图正北方向进行夹角运算,获得所述第一夹角角度。10.根据权利要求9所述的方法,其特征在于,所述在所述第一人行横道对应的多个第一车道线中,将最小弯曲程度对应的第一车道线确定为目标车道线,包括:根据每个所述第一车道线上的多个车道线点进行角度计算,获得每个所述第一车道线的表示弯曲程度的平均变化角度;将最小平均变化角度对应的第一车道线确定为所述目标车道线。11.根据权利要求10所述的方法,其特征在于,所述根据每个所述第一车道线上的多个车道线点进行角度计算,获得每个所述第一车道线的表示弯曲程度的平均变化角度,包括:对每个所述第一车道线上每三个相邻的车道线点中每两个相邻的车道线点之间连线进行夹角运算,获得每个所述第一车道线上对应的多个车道线角度;对每个所述第一车道线上的对应的多个车道线角度进行均值计算,获得每个所述第一车道线的平均变化角度。12.一种地图中人行横道的渲染装置,其特征在于,所述装置包括:获取单元、三角化单元和渲染单元;所述获取单元,用于获取地图中待渲染人行横道的每个预设外轮廓点的渲染纹理坐标;所述三角化单元,用于根据多个所述预设外轮廓点对所述待渲染人行横道的待渲染轮廓区域进行三角化,获得所述待渲染轮廓区域的多个三角形区域;所述渲染单元,用于根据多个所述预设外轮廓点对应的多个渲染纹理坐标,对多个所述三角形区域进行人行横道标示线的纹理渲染,在所述地图中获得所述待渲染人行横道的已渲染人行横道。13.一种计算机设备,其特征在于,所述计算机设备包括处理器以及存储器:所述存储器用于存储计算机程序,并将所述计算机程序传输给所述处理器;所述处理器用于根据所述计算机程序中的指令执行权利要求1-11任一项所述的方法。14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机程序,当所述计算机程序在计算机设备上运行时,使得所述计算机设备执行权利要求1-11任一项所述的方法。15.一种计算机程序产品,包括计算机程序,其特征在于,当所述计算机程序在计算机设备上运行时,使得所述计算机设备执行权利要求1-11任一项所述的方法。

技术总结
本申请公开一种地图中人行横道的渲染方法及相关装置,应用于地图领域,获取地图中待渲染人行横道的每个预设外轮廓点的渲染纹理坐标;通过多个预设外轮廓点三角化待渲染人行横道的待渲染轮廓区域得到多个三角形区域;按照多个预设外轮廓点对应的多个渲染纹理坐标,以人行横道标示线纹理渲染多个三角形区域得到已渲染人行横道。该方法基于外轮廓点的纹理坐标进行纹理渲染得到人行横道,实现快速、简单、有效地渲染高精度地图中人行横道,能够提高人行横道的渲染准确度,使得人行横道的渲染效果进一步还原真实的行驶道路、增加行驶场景的真实感,从而提升高精度地图的体验感。从而提升高精度地图的体验感。从而提升高精度地图的体验感。


技术研发人员:崔盼盼
受保护的技术使用者:腾讯科技(深圳)有限公司
技术研发日:2023.05.17
技术公布日:2023/8/13
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐