CN117875147B - 雨雾现象实时仿真的方法及系统、存储介质 - Google Patents
雨雾现象实时仿真的方法及系统、存储介质 Download PDFInfo
- Publication number
- CN117875147B CN117875147B CN202410269505.1A CN202410269505A CN117875147B CN 117875147 B CN117875147 B CN 117875147B CN 202410269505 A CN202410269505 A CN 202410269505A CN 117875147 B CN117875147 B CN 117875147B
- Authority
- CN
- China
- Prior art keywords
- raindrop
- wind
- fog
- particles
- rain
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 96
- 238000003860 storage Methods 0.000 title claims abstract description 16
- 239000002245 particle Substances 0.000 claims abstract description 242
- 238000004088 simulation Methods 0.000 claims abstract description 102
- 230000008033 biological extinction Effects 0.000 claims abstract description 90
- 230000033001 locomotion Effects 0.000 claims abstract description 86
- 238000009826 distribution Methods 0.000 claims abstract description 63
- 230000000694 effects Effects 0.000 claims abstract description 48
- 239000003595 mist Substances 0.000 claims abstract description 42
- 238000007664 blowing Methods 0.000 claims abstract description 40
- 230000006399 behavior Effects 0.000 claims abstract description 27
- 238000005516 engineering process Methods 0.000 claims abstract description 20
- 230000009471 action Effects 0.000 claims abstract description 15
- 230000003993 interaction Effects 0.000 claims abstract description 15
- 230000008569 process Effects 0.000 claims description 29
- 238000009877 rendering Methods 0.000 claims description 24
- 238000004364 calculation method Methods 0.000 claims description 23
- 230000000007 visual effect Effects 0.000 claims description 23
- 238000013507 mapping Methods 0.000 claims description 14
- 238000000149 argon plasma sintering Methods 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 13
- 238000010521 absorption reaction Methods 0.000 claims description 12
- 238000005070 sampling Methods 0.000 claims description 7
- 238000006467 substitution reaction Methods 0.000 claims description 6
- 230000008859 change Effects 0.000 description 18
- 230000006870 function Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 14
- 239000007788 liquid Substances 0.000 description 8
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 8
- 230000007613 environmental effect Effects 0.000 description 7
- 230000000704 physical effect Effects 0.000 description 6
- 238000011160 research Methods 0.000 description 6
- 230000007423 decrease Effects 0.000 description 5
- 238000007654 immersion Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000005484 gravity Effects 0.000 description 4
- 238000011423 initialization method Methods 0.000 description 4
- 230000005855 radiation Effects 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000001795 light effect Effects 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000009472 formulation Methods 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002688 persistence Effects 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 238000005096 rolling process Methods 0.000 description 2
- 239000007921 spray Substances 0.000 description 2
- 238000004544 sputter deposition Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 description 1
- 230000032900 absorption of visible light Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000004040 coloring Methods 0.000 description 1
- 230000002301 combined effect Effects 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000005315 distribution function Methods 0.000 description 1
- 238000005562 fading Methods 0.000 description 1
- 230000031700 light absorption Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000010355 oscillation Effects 0.000 description 1
- 238000011002 quantification Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000001172 regenerating effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明涉及计算机图形学和物理仿真的交叉领域,公开了雨雾现象实时仿真的方法及系统、存储介质,其方法包括:根据实际雨滴大小分布概率,生成雨滴粒子,计算每个雨滴粒子在空气阻力和风力作用下的运动轨迹,模拟雨滴粒子在不同风力条件下的运动行为;基于雨滴粒子运动的模拟结果,设定散射参数和消光参数用于反映雨滴粒子与雾气的物理特性;通过计算机图形学技术模拟雨滴粒子在不同风力条件下的行为,以及雨滴粒子与雾气在风中的相互作用,从而实现风吹雾现象的仿真;利用实现风吹雾现象的散射参数和消光参数,采用Beer‑Lambert消光定律计算光线通过风吹雾现象时的衰减,模拟光线在雨滴粒子和雾气中的散射效果;本发明提升了雨雾仿真的真实感和动态性。
Description
技术领域
本发明涉及计算机图形学和物理仿真的交叉领域,尤其涉及雨雾现象实时仿真的方法及系统、存储介质。
背景技术
雨作为一种常见的天气现象,在影视作品,电子游戏等领域中起到了烘托氛围增加沉浸感的作用,有着广泛的应用。在计算机图形学中雨场景的真实感绘制是一个重要的研究内容。过去,雨场景渲染的研究内容主要集中在雨滴的形态和物理属性,雨场景的真实感不仅在于雨滴的形态和物理属性,更体现在雨场景中的各种自然现象,只有少量的研究关注到了雨场景中的各种自然现象,但还没有一个基于物理模型的实时风吹雾现象渲染方法。另外,雨场景的真实绘制还能帮助交通安全和计算视觉领域解决因为缺乏合适的降雨照片数据集导致无法测试算法在雨环境下的健壮性的问题。
本发明属于计算机图形学和物理仿真的交叉领域,专注于实时仿真自然现象中的雨雾效果,这一领域历来面临着将复杂的自然现象以计算效率高且视觉真实性强的方式呈现的挑战。雨雾效果的仿真不仅要求准确模拟雨滴的生成、分布和运动,还需考虑光线如何在这样的环境中传播,包括光线的散射和衰减等。
随着计算机图形学技术的进步和计算能力的提升,近年来在实时渲染技术、粒子系统模拟,以及光线传播模型(如基于物理的渲染技术)等方面取得了显著的发展,这些技术进步为更加真实地仿真雨雾及其他复杂自然现象提供了可能。
本发明在这样的背景下提出,通过结合现代计算机图形学技术和精确的物理模型,旨在解决实时仿真雨雾现象时遇到的技术难题。
发明内容
针对上述当前不存在基于物理模型的实时风吹雾现象渲染方法的问题,本发明提供雨雾现象实时仿真的方法及系统、存储介质,本发明通过精确模拟雨滴粒子的生成、运动轨迹以及雨滴与雾气对光线的散射和衰减效应,提升了雨雾仿真的真实感和动态性;本发明利用基于实际雨滴大小分布概率的粒子生成方法,结合动量守恒方程计算雨滴在不同风力作用下的运动,以及应用散射参数、消光参数和Beer-Lambert消光定律精确模拟光线传播效果,这些技术的综合应用,使得仿真场景不仅在视觉上更加丰富和生动,还能够精确反映风吹雾现象下光线与雨滴、雾气的相互作用,为研究和应用提供了高度真实的雨雾现象仿真工具,显著提高了仿真技术的应用价值和技术水平。
如图1所示,雨雾现象实时仿真的方法,包括以下步骤:
根据实际雨滴大小分布概率,生成雨滴粒子,计算每个雨滴粒子在空气阻力和风力作用下的运动轨迹,模拟雨滴粒子在不同风力条件下的运动行为;
本发明的仿真首先依据如Marshall-Palmer分布等实际观察到的雨滴大小分布概率来生成雨滴粒子,这一步骤确保了模拟的雨滴能够在大小上反映真实世界的统计特性,从而提高仿真的真实性;通过概率密度函数(PDF)计算每个尺寸雨滴的出现概率,进而根据这个概率分布生成具有不同直径的雨滴粒子,这种方法允许模拟过程在生成雨滴时考虑到实际降雨中雨滴大小的多样性;每个生成的雨滴粒子在仿真环境中的运动都受到空气阻力和风力的影响,通过动力学模型计算这些外力对雨滴速度和方向的影响,模拟雨滴在风中的运动轨迹;运动轨迹的计算基于动量守恒方程,该方程考虑了雨滴的质量、速度以及受到的外力(如风力和空气阻力),为每个雨滴粒子提供了在特定时间内的位置和速度更新。
通过上述原理,雨滴粒子生成及运动模拟模块能够:反映真实降雨事件中的雨滴大小分布,增加场景的真实感;模拟雨滴在不同风力条件下的运动行为,包括风向和风速的变化,使雨滴的运动轨迹与真实情况更为一致。
另外,本发明中,通过计算得到的阻力,可以更新雨滴的速度和位置,雨滴在下落或被风吹动过程中的速度会因为空气阻力而发生变化,这种变化通过动力学方程计算得到,进而更新雨滴的运动轨迹。
风力对雨滴的运动影响主要体现在风的方向和速度上,风力会改变雨滴的下落路径,使其偏离垂直下落的轨迹,通过将风速向量添加到雨滴的速度向量中,可以模拟这一效应。在考虑风力作用时,动量守恒方程用于描述雨滴在风中的运动。考虑了雨滴的质量、初始速度、风速以及作用时间,计算在风力作用下雨滴的最终速度和位置。
本发明考虑空气阻力和风力对雨滴运动的影响能够显著提高雨雾现象仿真的真实性。空气阻力使得雨滴下落速度不会无限增加,而是趋向于一个终端速度,这与现实中的雨滴下落行为相匹配。同时,风力的引入使得雨滴的运动轨迹可以模拟实际环境中雨滴受风吹偏的现象,增加了仿真场景的动态感和真实感。综合考虑空气阻力和风力的计算,不仅增强了雨滴粒子运动模拟的物理准确性,也为后续的风吹雾现象仿真和光线散射效果模拟提供了重要的基础。
基于雨滴粒子运动的模拟结果,设定散射参数和消光参数用于反映雨滴粒子与雾气的物理特性;通过计算机图形学技术模拟雨滴粒子在不同风力条件下的行为,以及雨滴粒子与雾气在风中的相互作用,从而实现风吹雾现象的仿真;
本发明中散射参数和消光参数是用于描述光线在介质中传播时的物理特性。散射参数主要反映了光线与介质(雨滴和雾气)相互作用时的散射强度,而消光参数则综合了散射和吸收两种效应,描述了光线穿过介质时的总衰减率。这些参数的设定基于雨滴粒子的运动模拟结果,如雨滴的分布、大小、速度及其与风的相互作用等,通过这些数据可以精确调整散射和消光参数,以模拟不同环境条件下雨滴和雾气对光线传播的影响。
利用计算机图形学技术,如柏林噪声、粒子系统等,模拟雨滴粒子在不同风力条件下的行为及其与雾气的相互作用。这些技术能够生成复杂且动态变化的自然现象,如风吹雨和雾。散射参数和消光参数通过图形渲染管线应用,影响雨滴和雾气在视觉上的表现,如光线散射、阴影形成、光晕效果等,从而实现风吹雾现象的真实感仿真。
利用实现风吹雾现象的散射参数和消光参数,采用Beer-Lambert消光定律计算光线通过风吹雾现象时的衰减,模拟光线在雨滴粒子和雾气中的散射效果。
散射参数表示光线与介质(雨滴或雾气)相互作用时发生散射的程度,它决定了光线被介质偏转的强度和方向;消光参数综合了散射和吸收效应,描述光线在穿过介质时的总体衰减程度,它是评估光线强度随距离减少的关键参数。
散射参数反映了光线与雨滴、雾气相互作用时的散射强度。基于雨滴粒子的运动模拟结果,包括雨滴的大小、分布和速度,可以评估雨滴对光线散射的贡献程度。对于不同大小和速度的雨滴,散射效果可能不同。大雨滴可能导致更强的光线偏折,而雨滴的运动速度和方向影响散射光线的分布。因此,通过分析雨滴粒子的统计特性和动态行为,可以精细调整散射参数以模拟这些效果。
消光参数考虑了散射和吸收对光线传播的综合影响。基于雨滴和雾气的密度、大小及其在风中的分布情况,消光参数可以被调整以反映光线穿过雨雾环境时的衰减。雨滴粒子运动的模拟结果提供了雨雾环境的动态变化信息,如雨滴在风中的移动趋势和雾气的密集区域。这些信息对于确定光线穿越介质时遭遇的散射和吸收事件数量至关重要,从而准确设定消光参数。
通过基于雨滴粒子运动的模拟结果调整散射和消光参数,可以实现更加动态和真实的雨雾现象仿真。光线在雨滴和雾气中的散射和衰减效果能够随着天气条件的变化而变化,为用户提供沉浸式的视觉体验。这种方法使得光线效果能够精确反映雨雾环境的物理特性,如雨后初晴时光晕的形成、雨中远景的模糊等,大幅提升了场景的逼真度和视觉效果的细腻度。
Beer-Lambert消光定律提供了一个计算光线穿过介质时衰减的量化方法,这一定律使得能够根据散射参数和消光参数计算光线通过风吹雾现象处理的雨雾环境时的衰减,为模拟光线在雨滴和雾气中的散射效果提供了基础。
本发明通过精确计算光线在雨雾环境中的衰减,仿真效果能够更真实地反映光线与雨滴、雾气相互作用时的物理现象,如光晕、阴影等视觉效果;结合风吹雾现象,这一方法允许仿真场景中的光线效果随着风力和雨雾密度的变化而动态变化,增加了场景的生动性和沉浸感。
优选的,所述生成雨滴粒子的过程包括以下步骤:
基于Marshall-Per分布公式,计算雨滴大小分布的概率密度函数,计算公式如下:
其中,是常数,/>,/>表示每立方米空气中直径为/>的雨滴粒子数量,记为密度函数/>;通过这一分布,可以精确地模拟出实际降雨中雨滴大小的多样性,为仿真提供基础;
通过求解概率密度函数的反函数,找到概率/>和直径/>的对应关系/>,根据随机生成的概率值计算出对应的雨滴粒子直径;通过概率密度函数的反函数,将随机生成的概率值映射到特定的雨滴直径,这一映射确保了生成的雨滴直径遵循实际的大小分布,提高了仿真的真实性;
确定雨滴粒子直径的范围[],代入计算对应的概率范围[];
对于每一个雨滴粒子,使用均匀分布的随机方式在概率范围[]内生成概率值/>,将概率值/>代入关系式/>得到对应的直径/>并将此直径赋予当前雨滴粒子,并生成雨滴粒子;通过设定雨滴直径的最小值和最大值,可以控制生成雨滴的大小范围,从而模拟不同强度的降雨;在给定的概率范围内,通过随机生成概率值并将其转换为对应的雨滴直径,完成雨滴粒子的生成过程。
雨滴的大小直接影响其在空气中的下落速度和运动轨迹。根据斯托克斯定律,较大的雨滴由于重力作用更强,其下落速度比较小的雨滴快。此外,当考虑风力作用时,较大的雨滴受风的影响相对较小,因为它们的惯性更大。因此,雨滴大小分布对模拟雨滴在不同风力条件下的运动行为至关重要。
在视觉上,雨滴大小分布影响雨幕的密度和透明度,以及雨滴在光线照射下产生的高光效果。较大的雨滴会在视觉上产生更明显的光线折射和反射效果,增加场景的真实感。同时,雨滴的大小和分布也影响到雨滴击打物体表面时产生的溅射效果。
雨滴大小分布还影响散射参数和消光参数的设定。不同大小的雨滴对光线的散射和吸收作用不同,这需要在计算散射参数和消光参数时加以考虑。精确模拟这些效应对于实现真实的风吹雾现象和光线散射效果至关重要。
通过精确模拟不同大小雨滴的动力学行为,可以实现风中雨滴运动的动态变化,增加仿真场景的动态感和层次感;逼真的雨滴大小分布可以显著增强雨滴击打地面和物体时的视觉效果,包括溅射模式和水珠流动路径,提高场景的整体真实感;合理的散射和消光参数设定,基于真实的雨滴大小分布,可以更好地模拟雨中光线的散射和衰减,尤其是在模拟强光源或夜景时的光晕效果。
本发明通过精确反映实际雨滴大小的分布,该过程能够在仿真环境中重现真实世界的降雨现象,增加仿真的真实感;考虑到不同大小的雨滴在下落速度、受风影响的程度等方面的差异,这一方法能够模拟出更加复杂和多样化的雨雾现象。
优选的,所述计算雨滴粒子在空气阻力和风力作用下的运动轨迹包括:
为每个雨滴粒子指定初始位置和速度;确保每个雨滴粒子在模拟开始时有一个明确的状态,包括它们在仿真空间中的起始点和初始移动速度;
基于空气阻力及风力的影响,使用动量守恒方程来描述雨滴粒子在空气中的运动;
根据雨滴粒子的速度和形状,计算雨滴粒子受到的空气阻力;
将风力作为外部力加入动量方程中,风力方向和强度根据仿真环境设定;
利用数值方法求解动量方程,更新雨滴粒子的位置和速度,得到雨滴粒子的运动轨迹;利用数值方法求解动量方程,更新雨滴粒子的位置和速度,这个过程通常涉及时间步进方法,如欧拉方法或Runge-Kutta方法,通过迭代计算在每个时间点上雨滴的位置和速度;通过求解过程,最终得到雨滴粒子的运动轨迹,这些轨迹反映了雨滴在模拟环境中的移动路径,包括由于风力和空气阻力造成的偏移和加速情况。
使用动量守恒方程时:动量守恒方程来描述雨滴粒子在受到空气阻力和风力影响下的运动,动量守恒方程考虑了雨滴粒子的质量、受力情况以及速度变化,是计算雨滴运动轨迹的核心原理;根据雨滴粒子的速度和形状(通常假设为球形),计算雨滴粒子受到的空气阻力,空气阻力与雨滴的速度平方成正比,是雨滴下落速度不断变化的重要因素;将风力作为外部力加入动量方程中,风力的方向和强度根据仿真环境设定,这允许模拟雨滴在风中的运动轨迹,包括风速和风向对雨滴运动的影响。
本发明中的仿真方法通过精确模拟雨滴在空气阻力和风力作用下的运动轨迹,大幅提升了雨雾现象实时仿真的真实性,它能够反映出在不同风力条件下雨滴的运动行为和相互作用,从而在视觉上重现雨天的动态效果;仿真不仅能展示静态的雨滴分布,还能模拟雨滴在风中的动态行为,如被风吹斜、加速下落等,为观察者提供了更加丰富和生动的视觉体验。
优选的,所述进行风吹雾现象的仿真的过程包括:
为雨滴粒子和雾气设置初始的散射参数和消光参数,所述散射参数和消光参数用于描述雨滴粒子和雾气对光线的散射和吸收能力;散射参数和消光参数 是关键因素,用于描述雨滴和雾气对光线的散射和吸收能力,这些参数基于雨滴和雾气的物理特性,如大小、密度和分布,反映了它们如何影响光线的传播;初始设定这些参数是基于预期的雨雾环境条件和光学特性,为仿真提供一个起点。
利用柏林噪声作为基础,将雨滴粒子的运动速度映射到纹理上,模拟风力对雨滴粒子和雾气的影响;柏林噪声是一种广泛用于生成自然现象纹理的技术,特别适合用于创建自然现象的纹理,如山脉、云彩和水流等,在雨雾现象仿真中,柏林噪声可以用来模拟风力对雨滴和雾气动态分布的影响,增加视觉上的真实感和复杂度,通过模拟随机性产生更加真实的视觉效果;将雨滴粒子的运动速度映射到纹理上,可以模拟风力对雨滴和雾气的动态影响,从而实现风吹雨和雾的视觉效果;这一步骤通过计算雨滴在风中的速度变化,并将这些变化应用于纹理生成过程,从而模拟风对雨滴运动的影响以及雾气的流动效果。
柏林噪声通过多个不同尺度的噪声函数叠加生成,每层噪声称为一个“章”。通过控制每个章的频率和振幅,柏林噪声可以生成复杂而又不重复的模式;将雨滴粒子的运动速度映射到柏林噪声上,意味着雨滴的移动、分布和变化受到生成的噪声模式的影响。这种映射可以模拟雨滴在风中的随机运动和集群分布。
通过调整噪声参数,如频率和振幅,可以模拟不同风力条件下雨滴和雾气的运动特性;强风条件下的雨滴分布可能更加分散,而轻风条件下则可能更加集中;利用映射后的柏林噪声生成纹理,这些纹理可以直接用于渲染雨滴和雾气的视觉效果;纹理中的噪声模式反映了风吹雨和雾的动态变化,为观众提供了更加丰富和真实的视觉体验。
本发明通过使用柏林噪声映射过程在风吹雾现象仿真中,仿真场景中的雨滴和雾气显示出随风变化的动态行为,增加了场景的生动性;通过精细控制噪声参数,仿真的雨滴和雾气可以在视觉上更接近真实世界的自然现象,提高了仿真的沉浸感。
根据模拟结果,优化调整散射参数和消光参数,用于反映风吹雨和雾中光线的散射和衰减现象;模拟结果基于初步的仿真,观察雨滴和雾气对光线的影响,如散射和衰减现象;根据观察到的效果,对散射参数和消光参数进行优化调整,以更准确地模拟光线在风吹雨和雾中的行为;调整这些参数是为了确保仿真结果能够真实反映风吹雾现象中光线的散射和衰减效果,包括光线强度的变化和方向的偏移。
将调整后的散射参数和消光参数应用于渲染过程,使用计算机图形学方法渲染出风吹雾现象的视觉效果。这一步骤涉及复杂的光线追踪技术和着色算法,以准确渲染出光线在雨滴和雾气中传播时的动态变化;渲染出的效果包括光线散射产生的光晕、雾气中的光线衰减等,为观察者提供了沉浸式的视觉体验。
本发明通过精细调整散射和消光参数,并利用柏林噪声等技术,仿真过程能够有效地模拟风吹雨和雾的动态变化,提高了场景的真实性和视觉效果的动态性;优化后的参数使得光线在雨雾环境中的散射和衰减效果更加准确,增加了仿真场景的视觉丰富性和复杂性。
优选的,所述利用柏林噪声作为基础,将雨滴粒子的运动速度映射到纹理上,模拟风力对雨滴粒子和雾气的影响的过程包括:
根据风向创建一个平面,该平面的朝向通过风方向的叉积获得,位置随机设置在相机周围;通过根据风向创建一个平面,为模拟风吹雨和雾提供了一个基础框架;平面的朝向是通过风方向的叉积获得的,确保了平面正确地反映了风的方向;平面位置的随机设置意味着雨滴和雾气被模拟为在不同位置受风力影响,增加了场景的动态性和多样性;
将风速分解为水平方向和垂直方向的分量;将风速分解为水平和垂直方向的分量,是为了更准确地模拟风力对雨滴的影响;这种分解使得可以单独考虑风速在不同方向上的作用;
基于得到的风速分量计算雨滴粒子的速度;基于得到的风速分量,计算雨滴粒子的速度,这一步骤考虑了风力如何直接影响雨滴的运动,包括加速或改变雨滴的下落方向;
将雨滴粒子的速度映射为柏林噪声的水平和垂直采样速度;将雨滴粒子的速度映射为柏林噪声的水平和垂直采样速度,是利用柏林噪声生成自然现象纹理的关键步骤;柏林噪声能够产生复杂且连续的随机纹理,模拟自然界中风吹雨和雾的不规则性和随机性;
将映射后的速度投影到之前创建的平面上;将映射后的速度投影到之前创建的平面上,这一步骤通过纹理映射技术实现,使得雨滴和雾气在视觉上展现出被风力影响的效果。
本发明通过柏林噪声映射过程,模拟的风吹雾现象不仅在视觉上增加了真实性,还提供了动态变化的效果,反映了风力如何实时改变雨滴和雾气的运动状态;利用柏林噪声技术,仿真效果在视觉上更加丰富和多样,能够更好地模拟自然界中风吹雨和雾的复杂现象,为用户提供了更加沉浸和真实的体验。
优选的,所述基于得到的风速分量计算雨滴粒子的速度的计算表达式为:
其中,表示雨滴粒子在水平方向的速度;/>表示雨滴粒子在垂直方向的速度;,/>;/>是上一时刻的雨滴粒子速度,/>是计算机每帧的渲染间隔,单位为秒;/>和/>分别是风在水平和垂直方向上的速度;/>是雨滴粒子的直径;/>是空气密度;/>是雨滴粒子的密度;/>是雨滴粒子的阻力系数。
上述计算表达式描述了如何根据风速分量计算雨滴粒子在水平和垂直方向的速度,这考虑到了风力对雨滴运动的直接影响,包括风速改变雨滴下落的方向和速度;将风速分解为水平方向和垂直方向的分量是关键,因为它允许模拟更为复杂的风向效果,而非仅仅是单一方向上的风力作用;通过考虑雨滴的形状、直径、密度以及空气密度和阻力系数,模型精确反映了空气阻力对雨滴速度的影响。这些参数共同决定了雨滴在风中的运动状态。雨滴直径和空气密度 直接影响雨滴受到的空气阻力大小,进而影响雨滴的加速度和最终速度;雨滴密度和阻力系数是确定雨滴如何响应空气阻力和风力的关键因素,不同的雨滴密度和形状会导致不同的阻力系数。
本发明通过对风速分量的精确计算,仿真能够模拟雨滴在变化的风力条件下的真实运动,包括风速和风向的变化对雨滴运动轨迹的影响;考虑到空气密度和雨滴的物理特性,仿真模型能够适应不同的环境条件,如不同的气候和天气状况,增强了仿真场景的适用性和真实感。
优选的,通过实现风吹雾现象的散射参数和消光参数,采用Beer-Lambert消光定律对每个像素或光线路径进行计算,确定光线穿过雨雾环境时的衰减程度,进而完成对光线穿过风吹雾现象时的衰减的计算;
利用计算得到的光线衰减数据,模拟光线在雨滴粒子和雾气中的散射效果。
优选的,所述Beer-Lambert消光定律的计算表达式为:
其中,是降雨时,相机的接收功率;/>是未下雨时,相机的接收功率,单位为W;d是光线的传播距离,单位是km;/>是消光系数,单位是/>;s是距离发射源的距离,单位是km。
Beer-Lambert消光定律是描述光线通过吸收介质时强度衰减的基本定律。在雨雾现象的仿真中,该定律用于计算光线穿过含有雨滴粒子和雾气的空气时的衰减程度。通过精确计算光线的衰减和散射效果,仿真能够更真实地反映雨雾环境中光线的行为,包括由于雨滴和雾气引起的光晕、模糊等视觉效果。利用散射参数和消光参数的调整,结合风力对雨滴和雾气的动态影响,仿真可以模拟风吹雾现象中光线效果的变化,如光线方向的改变、光强的变化等,增加了场景的动态性和沉浸感。
消光系数是一个关键参数,用于描述光线通过介质(如雨滴和雾气)时的衰减程度。它通常由两部分组成:散射系数和吸收系数。
散射系数描述了介质对光线的散射能力,它依赖于介质的粒子大小、形状和分布。在雨雾环境中,散射系数可以基于雨滴和雾气的特性(如雨滴大小分布)来计算。
吸收系数描述了介质吸收光线的能力,与介质的化学组成有关。在雨雾仿真中,通常假设雨水和雾气的吸收系数相对较小,因为水对可见光的吸收较弱。
根据雨雾环境的不同条件,消光系数的调整是必要的,以确保仿真结果的真实性和准确性:当雨滴或雾气的密度增加时,散射系数应相应增加,因为光线通过的粒子数量增多,散射事件变得更频繁;雨滴的大小直接影响散射系数,大雨滴会导致更强的散射效果,通过分析雨滴大小分布,可以调整散射系数以反映不同大小雨滴的散射效应;在不同的光照条件下,如直射阳光与阴天,消光系数可能需要不同的调整,以模拟光线在这些条件下的实际衰减;根据仿真的目标,如需突出雾气中的光线散射或创建特定的视觉效果,消光系数可以相应调整,以达到预期的仿真效果。
在实际应用中,确定和调整消光系数通常涉及到综合考虑多种因素,包括雨滴和雾气的物理特性、环境条件以及仿真的具体需求。通过精细调整消光系数,可以使仿真结果在视觉上更加真实和准确,更好地反映雨雾环境中光线的行为。
如图2所示,雨雾现象实时仿真的系统,包括:
雨滴粒子生成及运动模拟模块,所述雨滴粒子生成及运动模拟模块用于根据实际雨滴大小分布概率,生成雨滴粒子,计算每个雨滴粒子在空气阻力和风力作用下的运动轨迹,模拟雨滴粒子在不同风力条件下的运动行为;此模块基于实际观察到的雨滴大小分布概率(如Marshall-Palmer分布)生成雨滴粒子,确保了仿真中雨滴的多样性和真实性;然后,通过计算每个雨滴粒子在空气阻力和风力作用下的运动轨迹,模拟了雨滴在不同风力条件下的行为;这一过程涉及到动力学原理的应用,考虑了雨滴与空气之间的相互作用;通过精确模拟雨滴的生成和运动,该模块提高了雨雾场景的真实感,使得仿真效果能够反映出雨滴在自然环境中的动态变化。
风吹雾仿真模块,所述风吹雾仿真模块基于雨滴粒子运动的模拟结果,设定散射参数和消光参数用于反映雨滴粒子与雾气的物理特性;通过计算机图形学技术模拟雨滴粒子在不同风力条件下的行为,以及雨滴粒子与雾气在风中的相互作用,从而实现风吹雾现象的仿真;依据雨滴粒子运动的模拟结果,此模块通过设定散射参数和消光参数来模拟雨滴粒子与雾气的物理特性;利用计算机图形学技术,模拟了雨滴粒子在不同风力条件下的行为及其与雾气在风中的相互作用,实现了风吹雾现象的仿真;该模块能够动态地模拟风吹时雨滴和雾气的行为,增加了场景的动态性和视觉复杂度,提升了仿真的沉浸感和真实性。
光线散射模拟模块,所述光线散射模拟模块利用实现风吹雾现象的散射参数和消光参数,采用Beer-Lambert消光定律计算光线通过风吹雾现象时的衰减,模拟光线在雨滴粒子和雾气中的散射效果;结合风吹雾现象的散射参数和消光参数,采用Beer-Lambert消光定律,此模块计算光线通过风吹雾现象时的衰减,并模拟光线在雨滴粒子和雾气中的散射效果;这涉及到复杂的光线传播计算,以及光线与雨滴、雾气相互作用的模拟;通过精确计算光线衰减和散射,该模块能够生动地再现光线在雨雾中的行为,如光晕、阴影等视觉效果,进一步提高了仿真场景的真实性和视觉效果。
一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现所述雨雾现象实时仿真的方法的步骤。
相比于现有技术,本发明的优点及有益效果在于:本发明通过综合运用物理模型和计算机图形学技术,实现了高度真实的雨雾现象仿真;本发明采用基于实际雨滴大小分布概率的方法生成雨滴粒子,保证了雨滴的多样性和真实性;本发明利用动量方程计算雨滴在空气阻力和风力作用下的运动轨迹,模拟了雨滴在不同风力条件下的行为,增强了场景的动态性;本发明通过调整散射参数和消光参数,结合Beer-Lambert消光定律,精确计算光线通过雨雾环境时的衰减,模拟了光线在雨滴和雾气中的散射效果;本发明使得仿真场景在视觉上更加丰富和生动,提升了雨雾现象的真实感和视觉效果;本发明在雨雾现象仿真领域取得了显著的技术进步,为相关领域的研究和应用提供了新的可能性。
附图说明
图1为本发明方法的流程示意图;
图2为本发明系统的结构框图;
图3为本发明实施例中不同大小(0.5-2.5毫米)的雨滴形状示意图;
图4为本发明实施例中1ms短曝光拍摄图片与0ms正常曝光拍摄图片的对比图;
图5为本发明实施例中为环境贴图E和雨滴视野相交区域F的示意图;
图6为本发明实施例中光线碰撞到介质后会产生四种事件的示意图;
图7为本发明实施例中在三种不同的降雨量下消光系数随着距离变化示意图;
图8为本发明实施例中空中透视模型示意图;
图9为本发明实施例中瑞典暴风雨天气下出现的风吹雨现象示意图;
图10为本发明实施例中印度暴风雨天气下出现的风吹雨现象示意图;
图11为本发明实施例中的雨滴直径数量对比图;
图12a-图12d分别为本发明实施例中原场景、失去消光系数、具有消光系数和内散射、伴随消光系数、内散射及降雨的图像;
图13a-图13d分别为本发明实施例中原场景、仅有雨、仅有雾、具有雨及雾的图像。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显的,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。
附图中示出了一些方框图和/或流程图。应理解,方框图和/或流程图中的一些方框或其组合可以由计算机程序指令来实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,从而这些指令在由该处理器执行时可以创建用于实现这些方框图和/或流程图中所说明的功能/操作的装置。本公开的技术可以硬件和/或软件(包括固件、微代码等)的形式来实现。另外,本公开的技术可以采取存储有指令的计算机可读存储介质上的计算机程序产品的形式,该计算机程序产品可供指令执行系统使用或者结合指令执行系统使用。
本发明主要的研究内容是雨天空气中的小液滴受到风的影响后形成的风吹雾现象。这个现象由三部分内容构成:①直径较大的雨滴以条纹的形式下落形成的降雨;②小雨滴悬浮在空气中,受到风的影响后形成的飘动的雾;③光线在与空气中的雨滴接触后发生散射,导致了雨天能见度的下降。
首先,本发明基于粒子系统实现了降雨,提出了两种雨滴大小模型的概率密度函数的计算方法来优化雨滴粒子直径的初始化;其次,对于风吹雾现象,本发明参考喷淋液滴在空气环境下的运动特性得到了小雨滴的动量方程,然后基于马尔可夫假设化简了动量方程的求解过程,得到了雨滴粒子的运动特征并利用柏林噪声纹理来实现风吹雾现象。最后,本发明基于Beer-Lambert消光定律计算了与雨天能见度下降有关的消光系数,该方式相比之前使用经验模型和数值逼近的结果来模拟雨天的光散射现象具有更高拓展性。本发明的主要贡献有:
①一套更适合粒子系统中雨滴粒子属性初始化的流程。通过推导雨滴粒子大小分布的概率密度函数,使其能更方便的初始化数万个雨粒子。
②一种基于Beer-Lambert消光定律推导的,具有广泛适用性的求解消光系数解析解的方法。
③一种新的降雨现象—风吹雾现象的建模和渲染。基于马尔可夫假设求解了雨滴粒子的运动特征方程,使用柏林噪声作为风吹雾的纹理进行渲染。这个现象可基于风速和相机属性自适应生成。
雨条纹的实现方式大致可以分为两类:基于滚动降雨纹理和基于粒子系统。在实时渲染领域,人们通常借助粒子系统来实现雨条纹的渲染,因为它具有更高的灵活性。基于粒子系统实现雨条纹的关键在于如何将雨滴粒子的性质赋予粒子。现有文献[Garg2006]提出了一个完整的预计算雨条纹数据库,以消耗内存为代价降低了初始化雨滴粒子外观的流程,该模型包含光照方向、观察方向和雨滴粒子振荡形状之间的复杂交互作用,在此之前粒子系统的雨条纹通常是从视频中提取的[Wang 2006]。现有文献[Centelles 2009]分析了雨的物理性质,根据降雨类型的不同,初始化不同的粒子属性。现有文献[Patow 2013]通过将接触到物体表面的粒子随机重生在雨滴粒子开始下落处的方式降低粒子初始化的计算量。但是这些文章都没有提出一种符合雨滴粒子大小分布的粒子直径初始化方法。不仅会导致视觉上真实感的降低而且会对程序的健壮性的判断产生影响。
以往雨天能见度衰减的实现方式大多都是非物理的经验模型,忽略了消光系数和雨滴粒子分布之间的联系。但是,自由空间光学文章(FSO)[Grabner 2014]和气象学文章[Uijlenhoet 2011]描述了两者之间的联系是不可忽视的。[Weber 2015]在渲染雨天能见度衰减时考虑了雨滴粒子分布,降雨强度以及相机参数对能见度衰减的影响。但在建模内散射的贡献时,没有考虑空中透视模型[Preetham]中雨天消光系数的影响而是直接使用了Mie散射系数,使得内散射贡献被过度放大。本发明在考虑了雨滴粒子分布,降雨强度对能见度衰减影响的基础上推导了消光系数的解析解,并且本发明的推导过程可以适用于更多的雨滴粒子大小分布模型。
一个雨场景中存在着数百万个移动的雨滴粒子,为了能够使用粒子系统来模拟这些雨滴粒子,本发明需要初始化它们的形态,速度以及外观等物理特性。而雨滴粒子的这些属性环环相扣:雨滴粒子的形状需要的参数有雨滴粒子的速度以及人眼的视觉暂留时间;雨滴粒子末端速度通常和雨滴粒子的直径有关;雨滴粒子的直径需要借助雨滴粒子大小分布得到;雨滴粒子的外观则由环境光照和环境贴图按照一定的权重决定。
通过测量提出了雨滴粒子谱的负指数形式:
其中,D表示雨滴粒子直径,单位是mm。是一个值为8000常数,单位/>。。R表示降雨率,单位为mm/hr。N(D,/>)表示降雨量为R时每立方米空气中,直径为D的雨滴粒子数量。表1给出了不同降雨类型对应的降雨强度R。
表 1降雨类型与降雨强度对照表
公式(1)可以通过输入参数直径D和降雨量R得到对应的雨滴粒子数量,但对于粒子系统,按照雨滴粒子大小分布赋予当前粒子一个随机直径值的流程会更加方便。本发明提出了一种适合上述流程的初始化方法:
①求解所使用的雨滴粒子大小分布的概率密度函数。
②找到概率P和直径D的对应关系。
③确定雨滴粒子直径的范围[,/>],代入/>中计算对应的概率范围[,/>]
④对于每一个粒子,使用均匀分布的随机方式生成概率范围内的某一概率,然后将生成的/>代入关系式/>得到对应的直径/>并将直径赋予当前粒子。
步骤①②③可以提前计算,实际初始化粒子时,只需要对每个粒子进行一次步骤④的操作。下面对步骤①和②的求解方法做详细的解释:
对于步骤①中的求解方法,视/>的形式而定:对于容易求得广义积分值的雨滴粒子分布模型,比如:本发明使用的Marshall-Palmer分布,使用公式(2)会更加有效;对于不容易求解的类型,可以通过离散化直径范围的方法计算,如公式(3)所示。
/>
其中,表示离散化的采样间隔,对于以mm为单位的雨滴粒子直径,推荐使用的采用间隔是0.1mm。/>和/>分别表示选取雨滴粒子直径区域的最小值和最大值。。
对于步骤②中的求解方法,会因为步骤①中选取求解/>的方法而不同:使用公式(2)求解/>,得到的结果是一个公式,可以通过反函数得到/>;使用公式(3)求解/>,得到的结果是一组半径和概率对应的数据,可以将该数组保存为查询表,方便后续步骤查询。
将公式(1)的Marshall-Palmer分布函数代入公式(2)得到了对应的指数分布概率密度函数,然后求其反函数得到对应关系/>,如公式(4)所示:
获得了雨滴粒子直径之后,就可以初始化雨滴粒子的速度、形状和外观颜色。
雨滴粒子下落过程中,受到重力,空气阻力和空气浮力的共同作用。雨滴粒子首先会自由落体的加速,然后空气阻力会迅速增大,最后与空气浮力联合抵消重力。此时雨滴粒子以一个最大速度做匀速直线运动,这个最大速度被定义为终端速度。目前,液滴大小与末端速度之间的关系通常用指数或幂等式来描述。
其中,D表示雨滴粒子的直径,单位是cm。表示直径为D的雨滴粒子对应的终端速度,单位为/>。当/>,/>时,得到的曲线在雨渲染领域常用的0.05≤D≤0.5 cm的范围内,和现有文献[Gunn, Kinzer]的自然雨滴粒子终端速度测量数据非常吻合。
因为不同直径的雨滴粒子会受到不同的大气压力,随着雨滴粒子直径的变大,雨滴粒子的形状从球体逐渐的变为椭球体,如图3所示。将雨滴粒子的形状描述为球体的10阶余弦扭曲。然而,因为人眼的视觉暂留现象或者相机曝光时间的存在,人眼看到或者相机拍摄到的雨滴粒子并不是椭圆形的,而是细长的线状[Wang et al.],图4展示了相机在1ms短曝光时间和30ms正常曝光下拍摄到的雨照片。雨纹的长度可以简单地计算成。
图 4中,左侧为1ms短曝光拍摄的图片,可以看到雨滴粒子近似球体,明亮且不透明;右侧为30ms正常曝光下的图片,可以看到雨滴粒子被拉长成雨条纹,相比左侧更加透明。
基于粒子系统实现的雨场景中,因为雨滴粒子数量多,形状细长,下落速度快的特点,绝大部分的雨滴粒子都是使用的Axial Billboard 渲染的,这保证了雨滴粒子只会跟随摄影机沿垂直轴旋转,降低了计算量的同时,也避免了使用滚动纹理实现雨滴粒子时必须解决的问题—当观察者朝着上空或地面看时,雨朝着错误的方向移动的问题。
雨滴粒子的亮度是由雨滴粒子表面折射的环境光强度决定的,其视场约165°,而镜面反射和内部反射只对雨滴粒子边缘有所贡献。水滴折射其视野辐射的94%,反射整个环境贴图辐射的6%。另外,当雨滴粒子投影到屏幕上时,其宽度只有几个像素,外观上的细节信息通常可以忽略。因此,只需要考虑雨滴粒子的平均亮度:
其中,是雨滴粒子视野和环境相交区域F的平均值,/>是环境贴图/>的平均值。如图 5的左侧为雨滴粒子的视场范围,图5为环境贴图E和雨滴粒子视野相交区域F。
雨天,当雨滴粒子落入云层下方较为干燥的空气中时,雨滴粒子蒸发成水蒸气,导致空气中的水汽大量增加,当空气温度和露点之间的差值小于 2.5°时,空气中的部分水汽就会凝结而生成降雨雾。当光线穿过这片降雨区域时会和区域内的介质发生碰撞。不同的介质会与光产生不同的相互作用,如图5所示。吸收和向外散射之和称为消光,会降低传播光线的辐射强度,而发射和内散射是将其他光子增加到当前光路中,会提高传播光线的辐射强度。
本发明先是考虑了雨滴粒子导致的消光现象,推导出了消光系数的解析解。然后,将解析解应用于大气散射模型来模拟雨雾天的光散射现象。本发明的模拟过程是基于后期处理的,只需要场景的深度信息,所以计算的复杂度不依赖场景的复杂度。
如图6所示,光线碰撞到介质后会产生的四种事件,由左至右分别为:吸收、发射、外散射、内散射。因为雨滴粒子本身不会发光,所以不存在发射(Emission)。
本发明考虑雨滴粒子的消光作用。穿过降雨的光学或近红外信号的功率损失可以用Beer-Lambert消光定律来描述,见公式(7)。
其中,是降雨时,相机的接收功率;/>是未下雨时,相机的接收功率,单位为W。d是光线的传播距离,单位是km。/>是消光系数,单位是/>,但这并不是本发明期望的单位,所以需要将得到的消光系数除以/>,将/>变换为/>。/>其中的s是距离发射源的距离,单位是km。
本发明假设空气中的参与介质是均匀分布的,所以是一个只和雨滴粒子分布N(D)有关的量,积分项/>可以转化为:/>。另外,因为雨滴粒子的尺寸远大于Mie散射的极限的波长,那么/>可以表示为:
其中,N(D)就是雨滴粒子大小分布模型。将本发明使用的Marshall-Palmer分布代入公式(7)通过积分可得消光系数:
再将公式(9)回代到公式(7)中,得到雨滴粒子的消光模型:
同样的,如果换成别的有解析解形式的雨滴粒子大小分布,比如。只需要修改/>和/>即可。对基于Marshall-Palmer模型的消光系数的计算结果进行了拟合:
在实际使用时,基于公式(7)的公式计算法具有更好的泛用性。拟合法和公式计算法运算复杂度几乎一致,因为公式计算法的,只有在用户改变降雨量R后,需要计算一次。本发明分别将降雨量为5mm/hr、15mm/hr以及30mm/hr代入公式(10)计算随着距离增加对应的消光系数值对比,如图7所示,在三种不同的降雨量下,消光系数随着距离呈指数形式的降低。
本发明已经建模了雨天的消光现象。消光的其中一个原因是光线碰撞到介质后向四面八方散射,导致入射光强度降低。那么其他光路的光线也有可能会散射到当前光路,增强当前光路的入射光强度。所以需要考虑内散射的贡献。空中透视模型(AerialPerspective Model),其原理如图8所示,这个模型在计算晴朗天空下的光散射现象有较好的效果,其雨天的内散射贡献部分可以写成:
其中,是内散射贡献,/>是太阳直接光照的强度,/>是雨天总的散射系数,已在前文中推导出其解析解。/>是散射方程,表示雨天光线从/>方向散射到方向的比例。
从公式(12)可以看到,想要通过空中透视模型计算雨天的内散射贡献需要知道雨天介质的散射方程,但目前还没有适合雨天的散射方程。所以使用一种目前在计算机图形学和计算机视觉中广泛使用的大气散射模型:
其中,表示原图像的颜色;/>是降雨时相机接收到的图像;前半部分表示雨天消光的影响,后半部分/>构成了内散射的贡献。
风吹雨现象的出现通常是因为空气中悬浮的液滴等颗粒受到强风的影响,整体向着风吹的方向运动。图9给出了瑞典在暴风雨天气下出现的风吹雨现象。图10的雨雾现象发生在印度的暴风雨天,强大的风力带动了空气中的小雨滴粒子,形成了快速移动的“雾”。
这种复杂的现象既要建模液滴本身的物理特性又要考虑液滴间的相互作用,在雨渲染领域还没有一个明确的实现方法。本发明参考了喷淋液滴在空气环境下的运动特性,基于图形渲染的原理,把这个现象看作马尔可夫过程来解决运动模型计算复杂的问题,然后将液滴速度映射到柏林噪声纹理的采样上,来模拟风吹雨现象。
在假设液滴为独立刚性球体的前提下,给出了单个球形液滴的运动模型,该方法综合考虑重力、浮生力和曳力的作用得到液滴与时间相关的动量方程:
其中,液滴水平方向的速度,/>液滴垂直方向的速度,/>风水平方向的速度,风垂直方向的速度,V是特征速度(风和液滴之间速度差的绝对值),单位m/s。/>是空气的密度,/>是雨滴粒子的密度,单位是/>。g是重力加速度,/>。是液滴在运动方向上的横截面积,单位/>。/>是液滴的体积,单位/>。/>是一个与雷诺系数有关的无量纲值。/>的估计方法为:
其中,是风环境的动力黏度,单位是/>。
求解公式(15)的难点在于雷诺系数的特征速度V需要知道当前时刻液滴的速度,导致无法求出简洁的解析解。然而,计算机渲染画面的过程是以帧为单位,并不是连续的。在这很短的时间段内,假设:①风速的起始速度为0。②在计算特征速度V的过程中,上一时刻的液滴速度等于当前时刻液滴的速度。因为在迭代的过程中上一时刻的液滴速度是已知量,所以/>可以视为一个常量。基于以上的假设,求解出公式(14)的解析解为:
其中,,/>。/>是上一时刻的液滴速度。t是计算机每帧的渲染间隔,单位为s。考虑到t的值很小,在风吹雨的应用环境中tan函数的定义域可以很好的控制在/>内。
通过计算公式(16)来获得液滴运动特征,但用粒子来模拟包含数百万液滴风吹雨现象是十分困难的。所以本发明提出了一套使用纹理模拟的流程:
首先,根据风向创建一个平面,平面的朝向可以通过风方向的叉积获得,平面的位置随机在相机周围;然后,将风速分解为水平方向和垂直方向,将得到的风速代入公式(16)计算液滴的速度;最后,将液滴的速度映射为柏林噪声的水平和垂直采样速度然后投影到创建的平面上。
平面的长度PL和高度PH视相机与雾的距离而定。雾将会在相机周围随机产生。
另外,还需要使用深度消退来隐藏半透明的雾与不透明物体接缝处的瑕疵。
本发明使用NVIDIA GeForce RTX 3060 Ti 8GB的GPU在1080p的分辨率下测试光散射现象和风吹雾现象。本发明提供的所有图像都是实时仿真的屏幕截图。因为过远的雨滴粒子投影在相机上的图像几乎不可见,所以雨滴粒子仅在相机周围生成,并且越靠近相机的地方生成的雨滴粒子数量越多。
首先,需要验证提出的雨粒子直径初始化方法是符合Marshall-Palmer分布的。按照表2的参数,随机生成了8000颗雨粒子的直径。然后,按照0.1mm的间隔统计雨滴粒子数量,这么做的好处是方便雨滴粒子数量的可视化,也符合Marshall-Palmer分布的统计思想,其结果如图11所示。
表 2雨滴粒子初始化流程基本参数表
将雨滴粒子直径范围代入到公式(4)中获得对应的概率范围。
可以通过图11观察到,使用本发明的初始化方法得到的雨滴粒子直径分布和使用Marshall-Palmer分布计算得到的雨滴粒子直径分布是十分吻合的。如图11所示,其中,虚线为采用本发明技术的结果数据,可以发现两条曲线几乎重合,说明本发明的雨滴粒子直径初始化方法是符合Marshall-Palmer分布的。
然后,本发明使用一个场景来展示雨天的光散射现象,这个场景具有广阔的视野以便观察者能更好的感受到能见度随着距离的增加而降低,如图12a-图12d所示。可以看到在降雨量为30mm/hr的前提下,随着距离的提升,消光系数逐渐降低,导致远处的场景变暗。但在加入内散射项后,即考虑到降雨雾以及雨滴粒子的几何散射对光线的影响,远处场景的亮度提升了并且颜色更加接近雾和水滴。因为本发明的方法是基于后处理的,只需要知道场景的深度信息。并且公式(7)中的可通过预计算得到,实际使用时每个像素只需要进行一次乘法运算和一次指数运算。该方法在本场景的渲染用时是。
如图13a-图13d所示,采用本发明技术进行处理的原始图片、仅雨滴粒子、仅风吹雾现象以及综合考虑的结果。雨的方向和风吹雾的方向保持一致。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例,或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框,以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器 (CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存 (PRAM)、静态随机存取存储器 (SRAM)、动态随机存取存储器 (DRAM)、其他类型的随机存取存储器 (RAM)、只读存储器 (ROM)、电可擦除可编程只读存储器 (EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘 (DVD) 或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本发明中的界定,计算机可读介质不包括暂存电脑可读媒体 (transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所做的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.雨雾现象实时仿真的方法,其特征在于,包括以下步骤:
基于Marshall-Palmer分布公式,计算实际雨滴大小分布概率,生成雨滴粒子,计算每个雨滴粒子在空气阻力和风力作用下的运动轨迹,模拟雨滴粒子在不同风力条件下的运动行为;
基于雨滴粒子运动的模拟结果,设定散射参数和消光参数用于反映雨滴粒子与雾气的物理特性;通过计算机图形学技术模拟雨滴粒子在不同风力条件下的行为,以及雨滴粒子与雾气在风中的相互作用,得到雨滴粒子的运动轨迹并完成风力对雨滴粒子和雾气的影响的模拟,从而实现风吹雾现象的仿真;
利用实现风吹雾现象的散射参数和消光参数,采用Beer-Lambert消光定律计算光线通过风吹雾现象时的衰减,模拟光线在雨滴粒子和雾气中的散射效果。
2.根据权利要求1所述的雨雾现象实时仿真的方法,其特征在于,所述生成雨滴粒子的过程包括以下步骤:
基于Marshall-Palmer分布公式,计算雨滴大小分布的概率密度函数,计算公式如下:
其中,是常数,/>,/>表示每立方米空气中直径为/>的雨滴粒子数量,记为密度函数/>;
通过求解概率密度函数的反函数,找到概率/>和直径/>的对应关系/>,根据随机生成的概率值计算出对应的雨滴粒子直径;
确定雨滴粒子直径的范围[],代入计算对应的概率范围[/>];
对于每一个雨滴粒子,使用均匀分布的随机方式在概率范围[]内生成概率值/>,将概率值/>代入关系式/>得到对应的直径/>并将此直径赋予当前雨滴粒子,并生成雨滴粒子。
3.根据权利要求1所述的雨雾现象实时仿真的方法,其特征在于,所述计算雨滴粒子在空气阻力和风力作用下的运动轨迹包括:
为每个雨滴粒子指定初始位置和速度;
基于空气阻力及风力的影响,使用动量守恒方程来描述雨滴粒子在空气中的运动;
根据雨滴粒子的速度和形状,计算雨滴粒子受到的空气阻力;
将风力作为外部力加入动量方程中,风力方向和强度根据仿真环境设定;
利用数值方法求解动量方程,更新雨滴粒子的位置和速度,得到雨滴粒子的运动轨迹。
4.根据权利要求1所述的雨雾现象实时仿真的方法,其特征在于,所述进行风吹雾现象的仿真的过程包括:
为雨滴粒子和雾气设置初始的散射参数和消光参数,所述散射参数和消光参数用于描述雨滴粒子和雾气对光线的散射和吸收能力;
利用柏林噪声作为基础,将雨滴粒子的运动速度映射到纹理上,模拟风力对雨滴粒子和雾气的影响;
根据模拟结果,优化调整散射参数和消光参数,用于反映风吹雨和雾中光线的散射和衰减现象;
将调整后的散射参数和消光参数应用于渲染过程,使用计算机图形学方法渲染出风吹雾现象的视觉效果。
5.根据权利要求4所述的雨雾现象实时仿真的方法,其特征在于,所述利用柏林噪声作为基础,将雨滴粒子的运动速度映射到纹理上,模拟风力对雨滴粒子和雾气的影响的过程包括:
根据风向创建一个平面,该平面的朝向通过风方向的叉积获得,位置随机设置在相机周围;
将风速分解为水平方向和垂直方向的分量;
基于得到的风速分量计算雨滴粒子的速度;
将雨滴粒子的速度映射为柏林噪声的水平和垂直采样速度;
将映射后的速度投影到之前创建的平面上。
6.根据权利要求5所述的雨雾现象实时仿真的方法,其特征在于,所述基于得到的风速分量计算雨滴粒子的速度的计算表达式为:
其中,表示雨滴粒子在水平方向的速度;/>表示雨滴粒子在垂直方向的速度;,/>;/>是上一时刻的雨滴粒子速度,/>是计算机每帧的渲染间隔,单位为秒;/>和/>分别是风在水平和垂直方向上的速度;/>是雨滴粒子的直径;/>是空气密度;/>是雨滴粒子的密度;/>是雨滴粒子的阻力系数。
7.根据权利要求1所述的雨雾现象实时仿真的方法,其特征在于,通过实现风吹雾现象的散射参数和消光参数,采用Beer-Lambert消光定律对每个像素或光线路径进行计算,确定光线穿过雨雾环境时的衰减程度,进而完成对光线穿过风吹雾现象时的衰减的计算;
利用计算得到的光线衰减数据,模拟光线在雨滴粒子和雾气中的散射效果。
8.根据权利要求7所述的雨雾现象实时仿真的方法,其特征在于,所述Beer-Lambert消光定律的计算表达式为:
其中,是降雨时,相机的接收功率;/>是未下雨时,相机的接收功率,单位为W;d是光线的传播距离,单位是km;/>是消光系数,单位是/>;s是距离发射源的距离,单位是km。
9.雨雾现象实时仿真的系统,其特征在于,包括:
雨滴粒子生成及运动模拟模块,所述雨滴粒子生成及运动模拟模块基于Marshall-Palmer分布公式,计算实际雨滴大小分布概率,生成雨滴粒子,计算每个雨滴粒子在空气阻力和风力作用下的运动轨迹,模拟雨滴粒子在不同风力条件下的运动行为;
风吹雾仿真模块,所述风吹雾仿真模块基于雨滴粒子运动的模拟结果,设定散射参数和消光参数用于反映雨滴粒子与雾气的物理特性;通过计算机图形学技术模拟雨滴粒子在不同风力条件下的行为,以及雨滴粒子与雾气在风中的相互作用,得到雨滴粒子的运动轨迹并完成风力对雨滴粒子和雾气的影响的模拟,从而实现风吹雾现象的仿真;
光线散射模拟模块,所述光线散射模拟模块利用实现风吹雾现象的散射参数和消光参数,采用Beer-Lambert消光定律计算光线通过风吹雾现象时的衰减,模拟光线在雨滴粒子和雾气中的散射效果。
10.一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1~8任一项所述雨雾现象实时仿真的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410269505.1A CN117875147B (zh) | 2024-03-11 | 2024-03-11 | 雨雾现象实时仿真的方法及系统、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410269505.1A CN117875147B (zh) | 2024-03-11 | 2024-03-11 | 雨雾现象实时仿真的方法及系统、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117875147A CN117875147A (zh) | 2024-04-12 |
CN117875147B true CN117875147B (zh) | 2024-06-07 |
Family
ID=90577666
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410269505.1A Active CN117875147B (zh) | 2024-03-11 | 2024-03-11 | 雨雾现象实时仿真的方法及系统、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117875147B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4313726A (en) * | 1979-06-29 | 1982-02-02 | The United States Of America As Represented By The Administrator Of National Aeronautics And Space Administration | Environmental fog/rain visual display system for aircraft simulators |
CN102323971A (zh) * | 2011-05-19 | 2012-01-18 | 北京航空航天大学 | 一种基于采样装置的多属性的雨的模拟方法 |
CN112116689A (zh) * | 2020-09-22 | 2020-12-22 | 威创集团股份有限公司 | 一种实时雨雪特效渲染方法和装置 |
CN112433934A (zh) * | 2020-11-03 | 2021-03-02 | 腾讯科技(深圳)有限公司 | 仿真测试方法、装置、计算机设备和存储介质 |
CN115081300A (zh) * | 2022-06-01 | 2022-09-20 | 东南大学 | 基于虚拟仿真评估智能驾驶车辆恶劣天气视距安全的方法 |
CN116258802A (zh) * | 2022-12-28 | 2023-06-13 | 网易互动娱乐私人有限公司 | 动态天气粒子特效的处理方法、装置、设备及存储介质 |
CN116628953A (zh) * | 2023-05-06 | 2023-08-22 | 吉林大学 | 一种虚拟点云的模拟方法及装置 |
CN117131312A (zh) * | 2023-10-20 | 2023-11-28 | 西安电子科技大学 | 一种雨后环境下的红外场景数值计算方法 |
CN117129390A (zh) * | 2023-10-26 | 2023-11-28 | 北京中科技达科技有限公司 | 一种基于线阵摄像的降雨粒子实时监测系统及方法 |
CN117636157A (zh) * | 2023-11-13 | 2024-03-01 | 南京林业大学 | 利用地面激光扫描确定银杏秋季落叶期物候变化的方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007007312A2 (en) * | 2005-07-13 | 2007-01-18 | Ramot At Tel-Aviv University Ltd. | Monitoring and mapping of atmospheric phenomena |
US7692647B2 (en) * | 2006-09-14 | 2010-04-06 | Microsoft Corporation | Real-time rendering of realistic rain |
-
2024
- 2024-03-11 CN CN202410269505.1A patent/CN117875147B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4313726A (en) * | 1979-06-29 | 1982-02-02 | The United States Of America As Represented By The Administrator Of National Aeronautics And Space Administration | Environmental fog/rain visual display system for aircraft simulators |
CN102323971A (zh) * | 2011-05-19 | 2012-01-18 | 北京航空航天大学 | 一种基于采样装置的多属性的雨的模拟方法 |
CN112116689A (zh) * | 2020-09-22 | 2020-12-22 | 威创集团股份有限公司 | 一种实时雨雪特效渲染方法和装置 |
CN112433934A (zh) * | 2020-11-03 | 2021-03-02 | 腾讯科技(深圳)有限公司 | 仿真测试方法、装置、计算机设备和存储介质 |
CN115081300A (zh) * | 2022-06-01 | 2022-09-20 | 东南大学 | 基于虚拟仿真评估智能驾驶车辆恶劣天气视距安全的方法 |
CN116258802A (zh) * | 2022-12-28 | 2023-06-13 | 网易互动娱乐私人有限公司 | 动态天气粒子特效的处理方法、装置、设备及存储介质 |
CN116628953A (zh) * | 2023-05-06 | 2023-08-22 | 吉林大学 | 一种虚拟点云的模拟方法及装置 |
CN117131312A (zh) * | 2023-10-20 | 2023-11-28 | 西安电子科技大学 | 一种雨后环境下的红外场景数值计算方法 |
CN117129390A (zh) * | 2023-10-26 | 2023-11-28 | 北京中科技达科技有限公司 | 一种基于线阵摄像的降雨粒子实时监测系统及方法 |
CN117636157A (zh) * | 2023-11-13 | 2024-03-01 | 南京林业大学 | 利用地面激光扫描确定银杏秋季落叶期物候变化的方法 |
Non-Patent Citations (4)
Title |
---|
光在雨中传输的研究;胡中华;陈家璧;刘雅;;大学物理;20070715(第07期);全文 * |
降雨对激光通信传输的影响研究;杨庆浩;赵娜英;杨雪健;夏勇;;西安科技大学学报;20160930(第05期);全文 * |
雨滴前向散射对光传输影响的研究;栗伟珉;敖发良;于胜云;;光子技术;20061230(第04期);全文 * |
非视线紫外通信大气传输特性的蒙特卡罗模拟;贾红辉;常胜利;杨建坤;杨俊才;季家;;光子学报;20070515(第05期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN117875147A (zh) | 2024-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Dobashi et al. | A simple, efficient method for realistic animation of clouds | |
Starik et al. | Simulation of rain in videos | |
CN107077756B (zh) | 三维对象可视化方法、可视化装置、计算机可读存储介质 | |
Rousseau et al. | Realistic real-time rain rendering | |
US7940268B2 (en) | Real-time rendering of light-scattering media | |
US7940269B2 (en) | Real-time rendering of light-scattering media | |
CN108537869B (zh) | 一种基于级联纹理的圆锥追踪动态全局光照方法 | |
CN106570215A (zh) | 一种基于时变气象数据的热带气旋动态仿真方法 | |
Dobashi et al. | Animation of clouds using cellular automaton | |
Weber et al. | A multiscale model for rain rendering in real-time | |
Hillaire | A scalable and production ready sky and atmosphere rendering technique | |
Schneider | Real-time volumetric cloudscapes | |
Harris et al. | Real-time cloud rendering for games | |
Zhou et al. | Fogshop: Real-time design and rendering of inhomogeneous, single-scattering media | |
CN117875147B (zh) | 雨雾现象实时仿真的方法及系统、存储介质 | |
Dobashi et al. | A controllable method for animation of earth-scale clouds | |
Nishita et al. | Modeling and rendering methods of clouds | |
CN102402795B (zh) | 估计均匀介质中光散射的方法 | |
Babić | Volumetric Atmospheric Effects Rendering | |
Seron et al. | Visualizing sunsets through inhomogeneous atmospheres | |
Wang | Real-time rendering of daylight sky scene for virtual environment | |
Xu et al. | Rendering and modeling of stratus cloud using weather forecast data | |
Nilsson | 3D Cloud Visualization In Real-Time | |
Bittner | The Current State of the Art in Real-Time Cloud Rendering With Raymarching | |
CN108961412B (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 |