CN114494384B - 建筑物阴影分析方法、装置、设备及存储介质 - Google Patents

建筑物阴影分析方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN114494384B
CN114494384B CN202111617955.8A CN202111617955A CN114494384B CN 114494384 B CN114494384 B CN 114494384B CN 202111617955 A CN202111617955 A CN 202111617955A CN 114494384 B CN114494384 B CN 114494384B
Authority
CN
China
Prior art keywords
building
shadow
interpolation
coordinate
depth
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.)
Active
Application number
CN202111617955.8A
Other languages
English (en)
Other versions
CN114494384A (zh
Inventor
戴雪峰
李晶云
王金玉
冯丽影
王卫京
戴冬冬
江恒
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jiwei Space Information Co ltd
Original Assignee
Beijing Jiwei Space Information Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Jiwei Space Information Co ltd filed Critical Beijing Jiwei Space Information Co ltd
Priority to CN202111617955.8A priority Critical patent/CN114494384B/zh
Publication of CN114494384A publication Critical patent/CN114494384A/zh
Application granted granted Critical
Publication of CN114494384B publication Critical patent/CN114494384B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/507Depth or shape recovery from shading

Abstract

本发明属于图形处理技术领域,公开了一种建筑物阴影分析方法、装置、设备及存储介质。本发明通过在当前时刻为预设采样时刻时,获取预设插值点在预设坐标系下的初始插值坐标,根据当前光照信息确定对应的变换矩阵,根据变换矩阵对初始插值坐标进行坐标变换,获得目标插值坐标,根据目标插值坐标确定预设插值点的插值深度,根据待分析建筑物对应的阴影贴图,根据阴影贴图确定待分析建筑物在阴影贴图下的贴图深度,根据插值深度和贴图深度确定待分析建筑物的阴影率。与现有技术需要人工统计太阳照射次数分析阴影率相比,本发明根据插值点的插值深度和待分析建筑物在阴影贴图上的深度确定待分析建筑物的阴影率,提升了阴影率的分析速率和准确性。

Description

建筑物阴影分析方法、装置、设备及存储介质
技术领域
本发明涉及图像处理技术领域,尤其涉及一种建筑物阴影分析方法、装置、设备及存储介质。
背景技术
随着科学技术的发展和社会的进步,城市化的发展速度越来越快。随着城市化的加速发展,城市中的建筑物也日益高大,因此建筑物的阴影率分析也更加困难。目前的通过人工统计建筑物的日照次数来对建筑物的阴影率进行分析的方式效率低,并且阴影率分析准确性差,极其浪费时间。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种建筑物阴影分析方法、装置、设备及存储介质,旨在解决现有技术通过人工分析建筑物阴影率效率低以及准确性差的技术问题。
为实现上述目的,本发明提供了一种建筑物阴影分析方法,所述方法包括以下步骤:
在当前时刻为预设采样时刻时,获取预设插值点在预设坐标系下的初始插值坐标;
根据当前光照信息确定对应的变换矩阵;
根据所述变换矩阵对所述初始插值坐标进行坐标变换,获得目标插值坐标;
根据所述目标插值坐标确定所述预设插值点的插值深度;
根据待分析建筑物对应的阴影贴图,根据所述阴影贴图确定所述待分析建筑物在所述阴影贴图下的贴图深度;
根据所述插值深度和所述贴图深度确定所述待分析建筑物的阴影率。
可选地,所述根据当前光照信息确定对应的变换矩阵,包括:
根据当前光照信息确定当前太阳光照方向;
根据所述当前太阳光照方向确定对应的变换矩阵。
可选地,所述根据所述当前太阳光照方向确定对应的变换矩阵,包括:
根据所述太阳光照方向确定太阳在所述预设坐标系下的太阳模拟位置;
根据所述太阳模拟位置和所述太阳光照方向确定对应的变换矩阵。
可选地,所述根据所述变换矩阵对所述初始插值坐标进行坐标变换,获得目标插值坐标,包括:
根据所述变换矩阵中的视图矩阵生成视图坐标系;
将所述预设坐标系下的初始插值坐标转换为所述视图坐标系下的初始插值坐标;
根据所述变换矩阵中的裁切矩阵确定裁切范围,根据所述裁切范围对所述视图坐标系下的初始插值坐标进行裁切,获得目标插值坐标。
可选地,所述根据待分析建筑物对应的阴影贴图,根据所述阴影贴图确定所述待分析建筑物在所述阴影贴图下的贴图深度,包括:
获取待分析建筑物在所述预设坐标系下的初始顶点坐标;
根据所述变换矩阵对所述初始顶点坐标进行坐标变换,获取目标顶点坐标;
根据所述目标顶点坐标确定所述待分析建筑物对应的阴影贴图;
根据所述阴影贴图确定所述待分析建筑物在所述阴影贴图下的贴图深度。
可选地,所述根据所述变换矩阵对所述初始顶点坐标进行坐标变换,获取目标顶点坐标,包括:
根据所述视图矩阵将所述预设坐标系下的初始顶点坐标转换为所述视图坐标系下的初始顶点坐标;
根据所述裁切矩阵对所述视图坐标系下的初始顶点坐标进行裁切,获得目标顶点坐标。
可选地,所述根据所述目标顶点坐标确定所述待分析建筑物对应的阴影贴图,包括:
根据所述目标顶点坐标确定所述待分析建筑物的顶点深度;
根据预设着色策略对所述顶点深度进行光栅化处理,获得所述待分析建筑物对应的阴影贴图。
此外,为实现上述目的,本发明还提出一种建筑物阴影分析装置,所述建筑物阴影分析装置包括:
采样模块,用于在当前时刻为预设采样时刻时,获取预设插值点在预设坐标系下的初始插值坐标;
矩阵模块,用于根据当前光照信息确定对应的变换矩阵;
坐标变换模块,用于根据所述变换矩阵对所述初始插值坐标进行坐标变换,获得目标插值坐标;
插值深度模块,用于根据所述目标插值坐标确定所述预设插值点的插值深度;
贴图模块,用于根据待分析建筑物对应的阴影贴图,根据所述阴影贴图确定所述待分析建筑物在所述阴影贴图下的贴图深度;
分析模块,用于根据所述插值深度和所述贴图深度确定所述待分析建筑物的阴影率。
此外,为实现上述目的,本发明还提出一种建筑物阴影分析设备,所述建筑物阴影分析设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的建筑物阴影分析程序,所述建筑物阴影分析程序配置为实现如上文所述的建筑物阴影分析方法的步骤。
此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有建筑物阴影分析程序,所述建筑物阴影分析程序被处理器执行时实现如上文所述的建筑物阴影分析方法的步骤。
本发明通过在当前时刻为预设采样时刻时,获取预设插值点在预设坐标系下的初始插值坐标,根据当前光照信息确定对应的变换矩阵,根据所述变换矩阵对所述初始插值坐标进行坐标变换,获得目标插值坐标,根据所述目标插值坐标确定所述预设插值点的插值深度,根据待分析建筑物对应的阴影贴图,根据所述阴影贴图确定所述待分析建筑物在所述阴影贴图下的贴图深度,根据所述插值深度和所述贴图深度确定所述待分析建筑物的阴影率。与现有技术需要人工统计太阳照射次数分析阴影率相比,本发明根据插值点的插值深度和待分析建筑物在阴影贴图上的深度确定待分析建筑物的阴影率,提升了阴影率的分析速率和准确性。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的建筑物阴影分析设备的结构示意图;
图2为本发明建筑物阴影分析方法第一实施例的流程示意图;
图3为本发明建筑物阴影分析方法第二实施例的流程示意图;
图4为本发明建筑物阴影分析方法第三实施例的流程示意图;
图5为本发明建筑物阴影分析装置第一实施例的结构框图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的建筑物阴影分析设备结构示意图。
如图1所示,该建筑物阴影分析设备可以包括:处理器1001,例如中央处理器(Central Processing Unit,CPU)和/或图形处理器(Graphics Processing Unit,GPU)、通信总线1002、用户接口1003、网络接口1004、存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(Wireless-Fidelity,Wi-Fi)接口)。存储器1005可以是高速的随机存取存储器(Random Access Memory,RAM),也可以是稳定的非易失性存储器(Non-Volatile Memory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的结构并不构成对建筑物阴影分析设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及建筑物阴影分析程序。
在图1所示的建筑物阴影分析设备中,网络接口1004主要用于与网络服务器进行数据通信;用户接口1003主要用于与用户进行数据交互;本发明建筑物阴影分析设备中的处理器1001、存储器1005可以设置在建筑物阴影分析设备中,所述建筑物阴影分析设备通过处理器1001调用存储器1005中存储的建筑物阴影分析程序,并执行本发明实施例提供的建筑物阴影分析方法。
本发明实施例提供了一种建筑物阴影分析方法,参照图2,图2为本发明一种建筑物阴影分析方法第一实施例的流程示意图。
本实施例中,所述建筑物阴影分析方法包括以下步骤:
步骤S10:在当前时刻为预设采样时刻时,获取预设插值点在预设坐标系下的初始插值坐标。
应当理解的是,本实施例方法的执行主体可以是具有数据处理、网络通信以及程序运行功能的建筑物阴影分析设备,例如,手机、平板电脑、笔记本电脑等,或者是其他能够实现相同或相似功能的装置或设备,以下以建筑物阴影分析设备为例进行说明。
需要说明的是,预设采样时刻可以是需要进行太阳光照采样的时刻,预设插值点可以是阴影率采样范围内根据预设间隔距离设置的点,预设插值点坐标可以是基于三维坐标系的三维坐标。预设坐标系可以是三维的世界坐标系,世界坐标系下的点以计算机内存中的x、y和z三轴都为0的这个点为原点计算相对位置的坐标。
应当理解的是,为了确保阴影率采样精准性,建筑物阴影分析设备需要根据预设时间间隔多次获取预设时间范围内预设插值点在预设坐标系下的初始插值坐标,例如预设时间间隔为2小时,预设时间范围为6:00-18:00,因此预设采样时刻分别为6:00、8:00、10:00、12:00、14:00、16:00以及18:00。在预设时间范围内,建筑物阴影分析设备在当前时刻为预设采样时刻时,获取预设插值点在预设坐标系下的初始插值坐标。
在具体实现中,例如,预设时间间隔为4小时,预设时间范围为8:00-16:00,因此建筑物阴影分析设备在当前时刻为8:00、12:00以及16:00时,获取预设插值点在预设坐标系下的三维初始插值坐标为(a、b、c)。
步骤S20:根据当前光照信息确定对应的变换矩阵。
需要说明的是,光照信息可以是太阳光照的方向或太阳位置等信息。变换矩阵可以是根据光照信息确定的裁切矩阵(Projection Matrix)和视图矩阵(View Matrix)。
应当理解的是,建筑物阴影分析设备根据太阳位置和太阳方向构造获得视图矩阵,根据太阳的光照特性确定裁切矩阵。
进一步地,为了提高坐标转换的准确性,上述步骤S20,还包括:
S201:根据当前光照信息确定当前太阳光照方向;
S202:根据所述当前太阳光照方向确定对应的变换矩阵。
需要说明的是,当前太阳光照方向可以是当前时刻为预设采样时刻时获取的预设采样点的太阳光照的方向。
应当理解的是,建筑物阴影分析设备获取预设采样时间范围内预设采样时刻的太阳光照射方向,若预设采样时间范围为6:00–18:00,预设采样时间间隔为2小时一次,则需要采样的时间点为6:00、8:00、10:00、12:00、14:00,16:00以及18:00。通过这些采样的时间点会得到如下的一组太阳光照方向dir0={x,y,z},dir1,dir2,dir3...dir6。这些方向是三维向量。该步骤在CPU内计算完成,运行环境为浏览器内核,使用Javascript实现。
进一步地,为了使变换矩阵转换坐标更加准确,上述步骤S202,还包括:
根据所述太阳光照方向确定太阳在所述预设坐标系下的太阳模拟位置;
根据所述太阳模拟位置和所述太阳光照方向确定对应的变换矩阵。
需要说明的是,太阳模拟位置可以是太阳在预设坐标系下的模拟位置。
应当理解的是,由于在地理信息中使用真实的太阳位置会造成数据精度不足的问题,所以太阳位置不应计算为真实位置,因此建筑物阴影分析设备需要模拟生成太阳在预设坐标系下的模拟位置。太阳的位置被设置在分析空间几何体中心o{x,y,z}据太阳位置1000单位的位置上。参照公式1,其计算公式如下所示,其中,sun_position表示太阳模拟位置、o表示几何体中心、dir表示太阳光照方向。
sun_postition=o+1000×normalize(dir0) 公式1
需要说明的是,太阳的方向如果不是单位向量需要做单位化,因此在该步骤计算得到了太阳的模拟位置。在该位置能够模拟与真实太阳等效的各种参数,通过这些参数可以构造出我们下一步中的视图矩阵(View Matrix)。该步骤在CPU内计算完成。运行环境为浏览器内核,使用Javascript实现。
步骤S30:根据所述变换矩阵对所述初始插值坐标进行坐标变换,获得目标插值坐标。
需要说明的是,坐标变换可以是根据变换矩阵中的视图矩阵和裁切矩阵对初始插值坐标的变换。目标插值坐标可以是进行矩阵变换后的预设插值点的坐标。
应当理解的是,参照公式2,公式2为目标插值坐标转换公式,其中,targetPosition为初始插值坐标、glPosition为目标插值坐标。建筑物阴影分析设备根据变换矩阵中的视图矩阵对初始插值坐标进行坐标转换,再根据变换矩阵中的裁切矩阵对转换后的初始插值点坐标进行坐标裁切,获得目标插值坐标。
glPosition=ProjectionMatrix×ViewMatrixi×targetPosition 公式2
步骤S40:根据所述目标插值坐标确定所述预设插值点的插值深度。
需要说明的是,插值深度可以是预设插值点在预设采样时间范围内被太阳光照的前后位置关系。
参照公式3,公式3为插值深度计算公式,其中target Depth为插值深度,glPosition为目标插值坐标。
Figure BDA0003435950010000071
应当理解的是,建筑物阴影分析设备根据所述目标插值坐标确定所述预设插值点的插值深度,插值深度会作为一个管道传入片元着色。接下来预设插值点会进行光栅化,也就是这些预设插值点会渲染成计算机屏幕的像素。每个顶点都对应屏幕像素,屏幕其余像素没有被对应顶点的会在显卡内完成颜色的插值计算。接下来片元着色阶段,该阶段完成对屏幕上的每个像素点着色。参照公式4,这里会执行公式4,在顶点着色阶段传入在屏幕范围内显示建筑物顶点的先后关系会转换成一个0到1区间内的浮点数值,这个数值叫做深度。在公式3内转换成颜色,最终在计算机内存中以图片的方式[ShadowMap1,ShadowMap2,…,ShadowMap6]保存。
该步骤在GPU帧循环的顶点着色过程执行,本方法计算使用的是WebGL2 API实现,当然该过程可在任何图形库API实现。由于GPU内部是很多个流处理器。因此这些插值点是同时被传入到多个流处理器内单独执行计算。该过程较CPU通过循环的方式一次的执行速度要快很多倍。
colori=vec4(depthi,0,0,1) 公式4
步骤S50:根据待分析建筑物对应的阴影贴图,根据所述阴影贴图确定所述待分析建筑物在所述阴影贴图下的贴图深度。
需要说明的是,阴影贴图可以是保存有待分析建筑物深度的图片,贴图深度可以是待分析建筑物被光照的先后关系,贴图深度以图片的形式保存。
步骤S60:根据所述插值深度和所述贴图深度确定所述待分析建筑物的阴影率。
需要说明的是,阴影率可以是待分析建筑物被太招照射到的次数与分析总次数的占比。
应当理解的是,建筑物阴影分析设备将插值深度targetDepth与待分析建筑物的贴图深度mapDepth进行标记,深度值较大的表示离太阳远,深度值小的表示离太阳近。根据这个规则,targetDepth大于mapDepth代表采样点被建筑挡住,没有受到太阳。targetDepth小于mapDepth代表采样点没被建筑挡住,受到太阳。若targetDepth小于mapDepth,记为接受一次太阳照射,循环上述步骤,直至计算完所有采样时刻,最后进行阴影率统计计算。参照公式5,公式5为待分析建筑物的阴影率计算公式,其中,θ表示待分析建筑物的阴影率、A表示太阳照射到的次数、B表示分析总次数。
Figure BDA0003435950010000081
在具体实现中,例如,预设时间范围为6:00-18:00、预设时间间隔为4小时,因此预设采样时间为6:00、10:00、14:00以及18:00这4个时间点,因此分析总次数为4次。建筑物阴影分析设备根据插值深度和贴图深度确定待分析建筑物被太招照射到的次数为3次,因此待分析建筑物的阴影率为3/4,即阴影率为75%。
本实施例通过在当前时刻为预设采样时刻时,获取预设插值点在预设坐标系下的初始插值坐标,根据当前光照信息确定对应的变换矩阵,根据所述变换矩阵对所述初始插值坐标进行坐标变换,获得目标插值坐标,根据所述目标插值坐标确定所述预设插值点的插值深度,根据待分析建筑物对应的阴影贴图,根据所述阴影贴图确定所述待分析建筑物在所述阴影贴图下的贴图深度,根据所述插值深度和所述贴图深度确定所述待分析建筑物的阴影率。与现有技术需要人工统计太阳照射次数分析阴影率相比,本发明根据插值点的插值深度和待分析建筑物在阴影贴图上的深度确定待分析建筑物的阴影率,提升了阴影率的分析速率和准确性。
参考图3,图3为本发明一种建筑物阴影分析方法第二实施例的流程示意图。
基于上述第一实施例,在本实施例中,所述步骤S30,包括:
步骤301:根据所述变换矩阵中的视图矩阵生成视图坐标系。
需要说明的是,视图矩阵可以是用于将预设坐标系下的坐标转换为视图坐标系下的坐标的矩阵,视图矩阵是根据太阳光照方向和太阳位置等光照信息确定的。视图坐标系可以是以采样相机在预设坐标系下的采样坐标为原点计算相对位置的坐标系。
步骤302:将所述预设坐标系下的初始插值坐标转换为所述视图坐标系下的初始插值坐标。
需要说明的是,参照公式6,公式6为将所述预设坐标系下的初始插值坐标转换为所述视图坐标系下的初始插值坐标的转换公式。其中,glPosition表示视图坐标系下的初始插值坐标、position表示预设坐标系下的初始插值坐标、ViewMatrix表示视图矩阵。
glPostion=ViewMatrix×position 公式6
步骤303:根据所述变换矩阵中的裁切矩阵确定裁切范围,根据所述裁切范围对所述视图坐标系下的初始插值坐标进行裁切,获得目标插值坐标。
需要说明的是,裁切矩阵可以是用于将视图坐标系下的初始插值坐标进行裁切的矩阵,裁切矩阵是通过太阳的光照特性得到的。裁切范围可以是需要被裁切剔除的插值点的范围,裁切范围外的插值坐标需要被裁切剔除。
应当理解的是,由于太阳是平行光,因此建筑物阴影分析设备需要使用正交矩阵构建。这两个矩阵的构建方式均使用计算机图形学中经典的矩阵构建公式,所以此处不再赘述。
例如,计算机图形学中经典的矩阵构建公式可以得到一个裁切矩阵ProjectionMatrix和多个视图矩阵,ViewMatrix 0、ViewMatrix 1、ViewMatrix2...ViewMatrix 6,其中,多个视图矩阵分别对应不同采样时间点的太阳光照,ViewMatrix0对应6:00的太阳光照、ViewMatrix 1对应8:00的太阳光照、ViewMatrix 2对应10:00的太阳光照、ViewMatrix 3对应12:00的太阳光照、ViewMatrix 4对应14:00的太阳光照、ViewMatrix 5对应16:00的太阳光照、ViewMatrix 6对应18:00的太阳光照。
本实施例通过根据所述变换矩阵中的视图矩阵生成视图坐标系,将所述预设坐标系下的初始插值坐标转换为所述视图坐标系下的初始插值坐标,根据所述变换矩阵中的裁切矩阵确定裁切范围,根据所述裁切范围对所述视图坐标系下的初始插值坐标进行裁切,获得目标插值坐标。由于本发明通过视图矩阵和裁切矩阵对预设插值点的初始插值坐标进行矩阵变换,获得目标插值坐标,提升了对预设插值点采样的准确性,视图矩阵对预设坐标系下的坐标进行转换,提升了插值坐标分析效率。裁切矩阵缩小了坐标分析范围,使坐标分析更加准确。
参考图4,图4为本发明一种建筑物阴影分析方法第三实施例的流程示意图。
基于上述X实施例,在本实施例中,所述步骤S50,包括:
步骤S501:获取待分析建筑物在所述预设坐标系下的初始顶点坐标。
需要说明的是,初始顶点坐标可以使待分析建筑物的建筑物顶点在预设坐标系下的坐标。
步骤S502:根据所述变换矩阵对所述初始顶点坐标进行坐标变换,获取目标顶点坐标。
需要说明的是,坐标变换可以是根据变换矩阵中的视图矩阵和裁切矩阵对初始插值坐标的变换。目标顶点坐标可以是进行矩阵变换后的建筑物顶点的坐标。
应当理解的是,参照公式7,公式7为目标插值坐标转换公式,其中,buildPosition为初始顶点坐标、glPosition为目标顶点坐标。建筑物阴影分析设备根据变换矩阵中的视图矩阵对初始顶点坐标进行坐标转换,再根据变换矩阵中的裁切矩阵对转换后的初始顶点坐标进行坐标裁切,获得目标顶点坐标。
glPosition=ProjectionMatrix×ViewMatrixi×buildPosition 公式7
进一步地,为了提升对建筑物顶点坐标处理的效率,上述步骤S502,还包括:
步骤S5021:根据所述视图矩阵将所述预设坐标系下的初始顶点坐标转换为所述视图坐标系下的初始顶点坐标;
步骤S5022根据所述裁切矩阵对所述视图坐标系下的初始顶点坐标进行裁切,获得目标顶点坐标。
需要说明的是,视图矩阵用于将预设坐标系下的点转换为视图坐标系下的点,即预设坐标系下的点以计算机内存中的x、y、z三轴都为0的这个点为原点计算相对位置的坐标。而视图坐标系是以相机的预设坐标为原点计算相对位置的坐标。
裁切矩阵用于将视图坐标系下的顶点做裁切,经过转换,在裁切范围外的点会被剔除,不会在显示器上绘制。在裁切范围上的点会在屏幕所在位置绘制。
应当理解的是,视图矩阵根据太阳位置sun_position与太阳方向dir构造得到,而裁切矩阵(ProjectionMatrix)是通过太阳的光照特性得到的。由于太阳是平行光,需要使用正交矩阵构建。这两个矩阵的构建方式均使用计算机图形学中经典的矩阵构建公式,所以此处不再赘述。最终可以得到一个裁切矩阵ProjectionMatrix和多个视图矩阵ViewMatrix 0、ViewMatrix 1...ViewMatrix 6。多个视图矩阵分别对应不同时间段的太阳光照。该步骤在GPU内计算完成。运行环境为浏览器内核,使用Javascript实现。该部分计算得到的矩阵会在下一阶段中传入GPU。
步骤S503:根据所述目标顶点坐标确定所述待分析建筑物对应的阴影贴图。
需要说明的是,阴影贴图可以是保存有待分析建筑物深度的图片。
进一步地,为了对建筑物的顶点深度进行有效处理,以获得准确的阴影贴图,上述步骤S503,还包括:
步骤S5031:根据所述目标顶点坐标确定所述待分析建筑物的顶点深度;
步骤S5032:根据预设着色策略对所述顶点深度进行光栅化处理,获得所述待分析建筑物对应的阴影贴图。
需要说明的是,预设着色策略可以是对建筑物顶点进行光栅化处理的策略。
应当理解的是,建筑物阴影分析确定建筑物顶点在这个时间段内被阳光照射的前后位置关系,即待分析建筑物的顶点深度之后,深度数值会作为一个管道传入片元着色。然后对建筑物顶点进行光栅化,也就是这些顶点会渲染成计算机屏幕的像素。
每个顶点都对应屏幕像素,屏幕其余像素没有被对应顶点的会在显卡内完成颜色的插值计算。接下来片元着色阶段,该阶段完成对屏幕上的每个像素点着色。在顶点着色阶段传入在屏幕范围内显示建筑物顶点的先后关系会转换成一个0到1区间内的浮点数值,最终在计算机内存中以图片的方式保存。
步骤S504:根据所述阴影贴图确定所述待分析建筑物在所述阴影贴图下的贴图深度。
需要说明的是,贴图深度可以是待分析建筑物被光照的先后关系,贴图深度以图片的形式保存。
本实施例通过获取待分析建筑物在所述预设坐标系下的初始顶点坐标,根据所述变换矩阵对所述初始顶点坐标进行坐标变换,获取目标顶点坐标,根据所述目标顶点坐标确定所述待分析建筑物对应的阴影贴图根据所述阴影贴图确定所述待分析建筑物在所述阴影贴图下的贴图深度。由于本发明是通过变换矩阵对建筑物的顶点坐标进行处理,以获得建筑物的目标顶点坐标,然后根据目标顶点坐标确定建筑物在阴影贴图下的贴图深度,提升了待分析建筑的阴影贴图的生成效率,提升了用户体验。
此外,本发明实施例还提出一种存储介质,所述存储介质上存储有建筑物阴影分析程序,所述建筑物阴影分析程序被处理器执行时实现如上文所述的建筑物阴影分析方法的步骤。
由于本存储介质采用了上述所有实施例的全部技术方案,因此至少有上述实施例的技术方案所带来的所有有益效果,在此不再一一赘述。
参照图5,图5为本发明建筑物阴影分析装置第一实施例的结构框图。
如图5所示,本发明实施例提出的建筑物阴影分析装置包括:
采样模块10,用于在当前时刻为预设采样时刻时,获取预设插值点在预设坐标系下的初始插值坐标;
矩阵模块20,用于根据当前光照信息确定对应的变换矩阵;
坐标变换模块30,用于根据所述变换矩阵对所述初始插值坐标进行坐标变换,获得目标插值坐标;
插值深度模块40,用于根据所述目标插值坐标确定所述预设插值点的插值深度;
贴图模块50,用于根据待分析建筑物对应的阴影贴图,根据所述阴影贴图确定所述待分析建筑物在所述阴影贴图下的贴图深度;
分析模块60,用于根据所述插值深度和所述贴图深度确定所述待分析建筑物的阴影率。
所述矩阵模块20,还用于根据当前光照信息确定当前太阳光照方向,根据所述当前太阳光照方向确定对应的变换矩阵。
所述矩阵模块20,还用于根据所述太阳光照方向确定太阳在所述预设坐标系下的太阳模拟位置,根据所述太阳模拟位置和所述太阳光照方向确定对应的变换矩阵。
所述坐标变换模块30,还用于根据所述变换矩阵中的视图矩阵生成视图坐标系,将所述预设坐标系下的初始插值坐标转换为所述视图坐标系下的初始插值坐标,根据所述变换矩阵中的裁切矩阵确定裁切范围,根据所述裁切范围对所述视图坐标系下的初始插值坐标进行裁切,获得目标插值坐标。
所述贴图模块50,还用于获取待分析建筑物在所述预设坐标系下的初始顶点坐标,根据所述变换矩阵对所述初始顶点坐标进行坐标变换,获取目标顶点坐标,根据所述目标顶点坐标确定所述待分析建筑物对应的阴影贴图,根据所述阴影贴图确定所述待分析建筑物在所述阴影贴图下的贴图深度。
所述贴图模块50,还用于根据所述视图矩阵将所述预设坐标系下的初始顶点坐标转换为所述视图坐标系下的初始顶点坐标,根据所述裁切矩阵对所述视图坐标系下的初始顶点坐标进行裁切,获得目标顶点坐标。
所述贴图模块50,还用于根据所述目标顶点坐标确定所述待分析建筑物的顶点深度,根据预设着色策略对所述顶点深度进行光栅化处理,获得所述待分析建筑物对应的阴影贴图。
本实施例通过在当前时刻为预设采样时刻时,获取预设插值点在预设坐标系下的初始插值坐标,根据当前光照信息确定对应的变换矩阵,根据所述变换矩阵对所述初始插值坐标进行坐标变换,获得目标插值坐标,根据所述目标插值坐标确定所述预设插值点的插值深度,根据待分析建筑物对应的阴影贴图,根据所述阴影贴图确定所述待分析建筑物在所述阴影贴图下的贴图深度,根据所述插值深度和所述贴图深度确定所述待分析建筑物的阴影率。与现有技术需要人工统计太阳照射次数分析阴影率相比,本发明根据插值点的插值深度和待分析建筑物在阴影贴图上的深度确定待分析建筑物的阴影率,提升了阴影率的分析速率和准确性。
应当理解的是,以上仅为举例说明,对本发明的技术方案并不构成任何限定,在具体应用中,本领域的技术人员可以根据需要进行设置,本发明对此不做限制。
需要说明的是,以上所描述的工作流程仅仅是示意性的,并不对本发明的保护范围构成限定,在实际应用中,本领域的技术人员可以根据实际的需要选择其中的部分或者全部来实现本实施例方案的目的,此处不做限制。
另外,未在本实施例中详尽描述的技术细节,可参见本发明任意实施例所提供的建筑物阴影分析方法,此处不再赘述。
此外,需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器(Read Only Memory,ROM)/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (9)

1.一种建筑物阴影分析方法,其特征在于,所述建筑物阴影分析方法包括:
在当前时刻为预设采样时刻时,获取预设插值点在预设坐标系下的初始插值坐标;
根据当前太阳光照信息确定对应的变换矩阵;
根据所述变换矩阵对所述初始插值坐标进行坐标变换,获得目标插值坐标;
根据所述目标插值坐标确定所述预设插值点的光照插值深度;
确定待分析建筑物对应的阴影贴图,根据所述阴影贴图确定所述待分析建筑物在所述阴影贴图下的贴图深度;
根据所述光照插值深度和所述贴图深度确定所述待分析建筑物的光照阴影率;
所述确定待分析建筑物对应的阴影贴图,根据所述阴影贴图确定所述待分析建筑物在所述阴影贴图下的贴图深度,包括:
获取待分析建筑物在所述预设坐标系下的初始顶点坐标;
根据所述变换矩阵对所述初始顶点坐标进行坐标变换,获取目标顶点坐标;
根据所述目标顶点坐标确定所述待分析建筑物对应的阴影贴图;
根据所述阴影贴图确定所述待分析建筑物在所述阴影贴图下的贴图深度;
所述根据所述光照插值深度和所述贴图深度确定所述待分析建筑物的光照阴影率,包括:
根据所述光照插值深度和所述贴图深度统计所述待分析建筑物在预设采样时间内被太阳照射的次数,基于统计结果确定所述待分析建筑物的光照阴影率。
2.如权利要求1所述的建筑物阴影分析方法,其特征在于,所述根据当前太阳光照信息确定对应的变换矩阵,包括:
根据当前太阳光照信息确定当前太阳光照方向;
根据所述当前太阳光照方向确定对应的变换矩阵。
3.如权利要求2所述的建筑物阴影分析方法,其特征在于,所述根据所述当前太阳光照方向确定对应的变换矩阵,包括:
根据所述太阳光照方向确定太阳在所述预设坐标系下的太阳模拟位置;
根据所述太阳模拟位置和所述太阳光照方向确定对应的变换矩阵。
4.如权利要求1至3中任一项所述的建筑物阴影分析方法,其特征在于,所述根据所述变换矩阵对所述初始插值坐标进行坐标变换,获得目标插值坐标,包括:
根据所述变换矩阵中的视图矩阵生成视图坐标系;
将所述预设坐标系下的初始插值坐标转换为所述视图坐标系下的初始插值坐标;
根据所述变换矩阵中的裁切矩阵确定裁切范围,根据所述裁切范围对所述视图坐标系下的初始插值坐标进行裁切,获得目标插值坐标。
5.如权利要求4所述的建筑物阴影分析方法,其特征在于,所述根据所述变换矩阵对所述初始顶点坐标进行坐标变换,获取目标顶点坐标,包括:
根据所述视图矩阵将所述预设坐标系下的初始顶点坐标转换为所述视图坐标系下的初始顶点坐标;
根据所述裁切矩阵对所述视图坐标系下的初始顶点坐标进行裁切,获得目标顶点坐标。
6.如权利要求5所述的建筑物阴影分析方法,其特征在于,所述根据所述目标顶点坐标确定所述待分析建筑物对应的阴影贴图,包括:
根据所述目标顶点坐标确定所述待分析建筑物的顶点深度;
根据预设着色策略对所述顶点深度进行光栅化处理,获得所述待分析建筑物对应的阴影贴图。
7.一种建筑物阴影分析装置,其特征在于,所述建筑物阴影分析装置包括:
采样模块,用于在当前时刻为预设采样时刻时,获取预设插值点在预设坐标系下的初始插值坐标;
矩阵模块,用于根据当前太阳光照信息确定对应的变换矩阵;
坐标变换模块,用于根据所述变换矩阵对所述初始插值坐标进行坐标变换,获得目标插值坐标;
光照插值深度模块,用于根据所述目标插值坐标确定所述预设插值点的光照插值深度;
贴图模块,用于确定待分析建筑物对应的阴影贴图,根据所述阴影贴图确定所述待分析建筑物在所述阴影贴图下的贴图深度;
分析模块,用于根据所述光照插值深度和所述贴图深度确定所述待分析建筑物的光照阴影率;
所述贴图模块,还用于获取待分析建筑物在所述预设坐标系下的初始顶点坐标;根据所述变换矩阵对所述初始顶点坐标进行坐标变换,获取目标顶点坐标;根据所述目标顶点坐标确定所述待分析建筑物对应的阴影贴图;根据所述阴影贴图确定所述待分析建筑物在所述阴影贴图下的贴图深度;
所述分析模块,还用于根据所述光照插值深度和所述贴图深度统计所述待分析建筑物在预设采样时间内被太阳照射的次数,基于统计结果确定所述待分析建筑物的光照阴影率。
8.一种建筑物阴影分析设备,其特征在于,所述建筑物阴影分析设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的建筑物阴影分析程序,所述建筑物阴影分析程序配置为实现如权利要求1至6中任一项所述的建筑物阴影分析方法。
9.一种存储介质,其特征在于,所述存储介质上存储有建筑物阴影分析程序,所述建筑物阴影分析程序被处理器执行时实现如权利要求1至6任一项所述的建筑物阴影分析方法。
CN202111617955.8A 2021-12-27 2021-12-27 建筑物阴影分析方法、装置、设备及存储介质 Active CN114494384B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111617955.8A CN114494384B (zh) 2021-12-27 2021-12-27 建筑物阴影分析方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111617955.8A CN114494384B (zh) 2021-12-27 2021-12-27 建筑物阴影分析方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN114494384A CN114494384A (zh) 2022-05-13
CN114494384B true CN114494384B (zh) 2023-01-13

Family

ID=81495286

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111617955.8A Active CN114494384B (zh) 2021-12-27 2021-12-27 建筑物阴影分析方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN114494384B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109919911A (zh) * 2019-01-26 2019-06-21 中国海洋大学 基于多视角光度立体的移动三维重建方法
CN109993823A (zh) * 2019-04-11 2019-07-09 腾讯科技(深圳)有限公司 阴影渲染方法、装置、终端及存储介质
CN110517346A (zh) * 2019-08-30 2019-11-29 腾讯科技(深圳)有限公司 虚拟环境界面的展示方法、装置、计算机设备及存储介质
CN113096021A (zh) * 2019-12-23 2021-07-09 中国移动通信有限公司研究院 一种图像处理方法、装置、设备及存储介质
CN113269863A (zh) * 2021-07-19 2021-08-17 成都索贝视频云计算有限公司 一种基于视频图像的前景物体阴影实时生成方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6646640B2 (en) * 2001-02-06 2003-11-11 Sony Computer Entertainment Inc. System and method for creating real-time shadows of complex transparent objects
CN108038897B (zh) * 2017-12-06 2021-06-04 北京像素软件科技股份有限公司 阴影贴图生成方法及装置
CN112419472B (zh) * 2019-08-23 2022-09-30 南京理工大学 一种基于虚拟阴影图的增强现实实时阴影生成方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109919911A (zh) * 2019-01-26 2019-06-21 中国海洋大学 基于多视角光度立体的移动三维重建方法
CN109993823A (zh) * 2019-04-11 2019-07-09 腾讯科技(深圳)有限公司 阴影渲染方法、装置、终端及存储介质
CN110517346A (zh) * 2019-08-30 2019-11-29 腾讯科技(深圳)有限公司 虚拟环境界面的展示方法、装置、计算机设备及存储介质
CN113096021A (zh) * 2019-12-23 2021-07-09 中国移动通信有限公司研究院 一种图像处理方法、装置、设备及存储介质
CN113269863A (zh) * 2021-07-19 2021-08-17 成都索贝视频云计算有限公司 一种基于视频图像的前景物体阴影实时生成方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Interactive screenspace fragment rendering for direct illumination from area lights using gradient aware subdivision and radial basis function interpolation;Ming Di Koa et al;《Computers & Graphics》;20170531;第64卷;37-50 *
Robust estimation of surface properties and interpolation of shadow/specularity components;Mark S.Drew et al;《Image and Vision Computing》;20120531;第30卷(第4-5期);317-331 *
实时动态软阴影技术研究与应用;王英;《中国优秀硕士学位论文全文数据库(电子期刊)》;20110315;第2011年卷(第03期);全文 *

Also Published As

Publication number Publication date
CN114494384A (zh) 2022-05-13

Similar Documents

Publication Publication Date Title
CN107358643B (zh) 图像处理方法、装置、电子设备及存储介质
CN104881839B (zh) 一种基于并行加速的热点图生成方法
CN111369657B (zh) 三维热力图的生成方法、装置、计算机设备和存储介质
EP3255612A1 (en) System and method for tessellation in an improved graphics pipeline
CN103810728A (zh) 用于将经修改的覆盖数据输入像素着色器的系统和方法
CN110917617B (zh) 水波纹图像的生成方法、装置、设备及存储介质
CN110570506B (zh) 一种地图资源管理方法、装置、计算设备及存储介质
CN110728333B (zh) 日照时长分析方法、装置、电子设备以及存储介质
CN111538799A (zh) 热力图构建方法、设备、存储介质及装置
CN109685873A (zh) 一种人脸重建方法、装置、设备和存储介质
CN115375868A (zh) 地图显示和遥感地图显示方法、计算设备以及存储介质
CN110782391B (zh) 驾驶仿真场景中的图像处理方法、装置及存储介质
CN115512025A (zh) 模型渲染性能的检测方法、装置、电子设备及存储介质
CN111583398A (zh) 图像显示的方法、装置、电子设备及计算机可读存储介质
CN108375806A (zh) 气象地图的获取方法和装置
CN113827958B (zh) 岩浆渲染方法、装置、设备和存储介质
CN114494384B (zh) 建筑物阴影分析方法、装置、设备及存储介质
JP6223916B2 (ja) 情報処理装置、方法及びプログラム
CN112734900A (zh) 阴影贴图的烘焙方法、装置、设备及计算机可读存储介质
WO2023005934A1 (zh) 数据处理方法、系统及电子设备
Qiu et al. Web-based 3D map visualization using WebGL
CN116342724A (zh) 热力图对象生成方法、装置以及计算机可读存储介质
CN112017159B (zh) 一种遥感场景下的地面目标真实感仿真方法
CN114742931A (zh) 渲染图像的方法、装置、电子设备及存储介质
CN114996374A (zh) 在线数据可视化实现方法、系统、设备及介质

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