CN117409127A - 基于人工智能的实时水墨流体渲染方法和装置 - Google Patents
基于人工智能的实时水墨流体渲染方法和装置 Download PDFInfo
- Publication number
- CN117409127A CN117409127A CN202311723590.6A CN202311723590A CN117409127A CN 117409127 A CN117409127 A CN 117409127A CN 202311723590 A CN202311723590 A CN 202311723590A CN 117409127 A CN117409127 A CN 117409127A
- Authority
- CN
- China
- Prior art keywords
- fluid
- rendering
- color
- ink
- real
- 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.)
- Granted
Links
- 239000012530 fluid Substances 0.000 title claims abstract description 254
- 238000009877 rendering Methods 0.000 title claims abstract description 135
- 238000000034 method Methods 0.000 title claims abstract description 65
- 238000013473 artificial intelligence Methods 0.000 title claims abstract description 24
- 239000002245 particle Substances 0.000 claims abstract description 64
- 230000033001 locomotion Effects 0.000 claims abstract description 57
- 238000009792 diffusion process Methods 0.000 claims abstract description 41
- 230000000694 effects Effects 0.000 claims abstract description 41
- 238000004088 simulation Methods 0.000 claims abstract description 38
- 239000003086 colorant Substances 0.000 claims abstract description 30
- 239000000049 pigment Substances 0.000 claims abstract description 24
- 230000035515 penetration Effects 0.000 claims description 22
- 238000004590 computer program Methods 0.000 claims description 19
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 claims description 18
- 230000006399 behavior Effects 0.000 claims description 15
- 238000004364 calculation method Methods 0.000 claims description 11
- 230000008859 change Effects 0.000 claims description 11
- 238000006073 displacement reaction Methods 0.000 claims description 11
- 238000003860 storage Methods 0.000 claims description 10
- 230000003993 interaction Effects 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 7
- 230000001133 acceleration Effects 0.000 claims description 5
- 230000005540 biological transmission Effects 0.000 claims description 5
- 238000010422 painting Methods 0.000 abstract description 9
- 238000011161 development Methods 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 10
- 230000000007 visual effect Effects 0.000 description 10
- 238000011160 research Methods 0.000 description 9
- 230000002452 interceptive effect Effects 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 239000003973 paint Substances 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000009472 formulation Methods 0.000 description 2
- 238000007654 immersion Methods 0.000 description 2
- 239000007788 liquid Substances 0.000 description 2
- 238000000342 Monte Carlo simulation Methods 0.000 description 1
- 238000004040 coloring Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000002844 melting Methods 0.000 description 1
- 230000008018 melting Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/02—Non-photorealistic rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
- G06T15/205—Image-based rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
- G06T15/80—Shading
- G06T15/87—Gouraud shading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T90/00—Enabling technologies or technologies with a potential or indirect contribution to GHG emissions mitigation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明属于人工智能技术领域,公开了一种基于人工智能的实时水墨流体渲染方法和装置,所述方法包括:基于构建的流体体积网格模型和流场数据,计算流体颗粒的运动轨迹和颜色属性,将运动轨迹的颜色属性输入预先构建的颗粒着色器中,以得到所述颗粒着色器输出的颗粒扩散和碰撞行为数据;基于流体运动模拟运算,响应于颜色选择指令,将选中的颜色添加至颜料库中,并根据预设频率进行颜色的混合和渲染;在所述流体体积网格模型的每个网格单元上计算经过颜色混合和渲染后的流体的参数,并将得到的流体的参数输入并输出到流体着色器中完成渲染。该方法和装置能够模拟水墨的渗透、混合和扩散等特性,使得仿真效果更加接近真实水墨画效果。
Description
技术领域
本发明涉及机器学习技术领域,特别涉及一种基于人工智能的实时水墨流体渲染方法和装置。
背景技术
水墨流体渲染的历史背景可以追溯到传统水墨画的艺术实践和文化传统。在传统水墨画中,艺术家使用墨汁和水的混合物表达出流动、渗透和混合的效果,从而营造出独特的氛围和艺术表现。随着计算机图形学和数字艺术的发展,人们开始尝试将传统水墨的艺术效果应用于计算机图形渲染中。这种技术的发展可以追溯到20世纪80年代和90年代,当时计算机图形学领域开始探索以物理模型为基础的渲染方法,包括模拟光线传播和材料特性等。在2000年左右,学术界和艺术家开始注意到水墨的独特效果,并探索如何通过计算机图形学来模拟和再现这种效果。研究学者开始提出各种各样的水墨流体渲染方法和算法,以实现逼真的水墨效果。这些方法包括基于粒子系统的渲染、基于流体动力学的模拟、混合渲染技术等。随着硬件技术的进步,特别是GPU的发展和计算能力的提升,水墨流体渲染可以更加高效地实现实时渲染。这使得水墨流体渲染技术逐渐在影视制作、游戏开发和艺术创作等领域得到应用和推广。
目前,水墨流体渲染仍然是一个活跃的研究和实践领域,艺术家和研究者不断探索和创新,以进一步改进和发展水墨流体渲染的方法和技术。同时,计算机图形学和计算机艺术的发展也为水墨流体渲染提供了更多的可能性和应用场景。总而言之,水墨流体渲染的历史背景可以追溯到传统水墨画的艺术实践,经过计算机图形学和数字艺术的发展,逐渐形成了一门独特的艺术和技术领域。它在20世纪末和21世纪初开始引起人们的关注,并在不断地研究和实践中不断发展和完善。
水墨流体渲染在计算机图形学和艺术领域具有广泛的应用和意义价值。艺术创作:水墨流体渲染技术使得艺术家能够在计算机中创作具有水墨画效果的艺术作品。这为艺术家提供了丰富的创作手段和表现形式,扩展了传统水墨艺术的边界。通过在虚拟环境中模拟水墨的渗透、混合和扩散等特性,艺术家能够表达出独特的氛围、流动感和艺术表现力。视觉效果和影视制作:水墨流体渲染技术在影视制作和视觉效果领域具有广泛应用。通过将水墨流体渲染效果应用于电影、动画、特效等场景,能够增加视觉的艺术感和独特的视觉风格。水墨流体渲染可以为影视作品带来独特的艺术效果,丰富视觉的层次感和观赏体验。游戏开发:水墨流体渲染技术在游戏开发中起到重要作用。通过应用水墨流体渲染效果,游戏开发者能够创造出独特的游戏世界和角色表现。水墨流体渲染不仅可以使游戏画面更加独特、有趣,还可以增加游戏的氛围和沉浸感。这对游戏的艺术价值和玩家体验具有积极影响。艺术教育和研究:水墨流体渲染技术也在艺术教育和研究领域发挥重要作用。通过传授水墨流体渲染技术,艺术教育能够拓宽学生的艺术创作思路和技巧,启发他们对艺术的理解和表现能力。此外,水墨流体渲染的研究对于计算机图形学、计算机视觉等领域的学术研究和技术发展也具有重要意义。总之,水墨流体渲染技术在艺术创作、视觉效果、游戏开发以及艺术教育和研究等方面具有广泛的应用和意义。它为艺术家和设计师提供了丰富的创作手段和表现形式,丰富了视觉的表达和艺术的边界,同时水墨流体渲染的技术研究和应用能够推动计算机图形学和计算机视觉等领域的发展。
因此,基于人工智能的实时水墨流体渲染方法和装置,以提高计算效率,并使得仿真效果更加接近真实水墨画效果,就成为本领域技术人员亟待解决的问题。
发明内容
本发明实施例提供了一种基于人工智能的实时水墨流体渲染方法和装置,以解决现有技术存在的问题。为了对披露的实施例的一些方面有一个基本的理解,下面给出了简单的概括。该概括部分不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围。其唯一目的是用简单的形式呈现一些概念,以此作为后面的详细说明的序言。
本发明提供了一种基于人工智能的实时水墨流体渲染方法,所述方法包括:
建立流体体积网格模型和流场数据;
基于所述流体体积网格模型和流场数据,计算流体颗粒的运动轨迹和颜色属性,将运动轨迹的颜色属性输入预先构建的颗粒着色器中,以得到所述颗粒着色器输出的颗粒扩散和碰撞行为数据;
基于流体运动模拟运算,响应于颜色选择指令,将选中的颜色添加至颜料库中,并根据预设频率进行颜色的混合和渲染;
在所述流体体积网格模型的每个网格单元上计算经过颜色混合和渲染后的流体的参数,并将得到的流体的参数输入并输出到流体着色器中完成渲染。
在一些实施例中,建立流体体积网格模型和流场数据,具体包括:
构建出离散化的流体模拟区域,将水墨流体分割成多个网格单元;
基于流体运动模拟运算初始化网格;
实时模拟流体的运动和网格形状。
在一些实施例中,实时模拟流体的运动和网格形状,具体包括:
基于流体的质量守恒原则,建立连续性方程;基于流体的动量守恒原则,建立动量守恒方程;
计算所述动量守恒方程的质量流动项,以得到流场节点的加速度;
计算所述动量守恒方程的对流项,以得到流体速度场中的动量向流体周围的扩散和传递程度;
计算所述动量守恒方程的压力梯度项,以得到流体由于压力场梯度引起的动量变化;
计算所述动量守恒方程的粘性项,以得到流体粘性导致的动量耗散程度。
在一些实施例中,计算流体颗粒的运动轨迹和颜色属性,具体包括:
对于每个颗粒,计算其在当前时间步长内的扩散位移;
根据扩散位移更新网格位置。
在一些实施例中,基于流体运动模拟运算,响应于颜色选择指令,将选中的颜色添加至颜料库中,并根据预设频率进行颜色的混合和渲染,具体包括:
将交互操作所选中的颜色添加至颜料库中,颜料库以纹理格式存储颜色信息;
根据颜色添加的频率,对颜料库中的颜色进行混合;
使用加权平均法将颜色进行平滑混合,将混合后的颜色应用于网格节点的渲染,根据节点属性和混合权重进行颜色插值。
在一些实施例中,将得到的流体的参数输入并输出到流体着色器中完成渲染,之后还包括:
从渲染结果中提取颜色值和深度值;
基于深度值和颜色值,计算每个像素点的水墨渗透程度;
根据深度值模拟渗透的深浅,或根据颜色值模拟渗透的扩散效果,通过修改渗透程度改变渲染结果的透明度和浓度,以模拟水墨被纸张吸收和扩散的效果。
本发明还提供了一种基于人工智能的实时水墨流体渲染装置,所述装置包括:
模型构建单元,用于建立流体体积网格模型和流场数据;
颗粒属性计算单元,用于基于所述流体体积网格模型和流场数据,计算流体颗粒的运动轨迹和颜色属性,将运动轨迹的颜色属性输入预先构建的颗粒着色器中,以得到所述颗粒着色器输出的颗粒扩散和碰撞行为数据;
颜色添加单元,用于基于流体运动模拟运算,响应于颜色选择指令,将选中的颜色添加至颜料库中,并根据预设频率进行颜色的混合和渲染;
渲染生成单元,用于在所述流体体积网格模型的每个网格单元上计算经过颜色混合和渲染后的流体的参数,并将得到的流体的参数输入并输出到流体着色器中完成渲染。
本发明还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如上所述的方法的步骤。
本发明还提供了一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述方法的步骤。
本发明还提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上所述的方法。
本发明所提供的基于人工智能的实时水墨流体渲染方法和装置,通过建立流体体积网格模型和流场数据;基于所述流体体积网格模型和流场数据,计算流体颗粒的运动轨迹和颜色属性,将运动轨迹的颜色属性输入预先构建的颗粒着色器中,以得到所述颗粒着色器输出的颗粒扩散和碰撞行为数据;基于流体运动模拟运算,响应于颜色选择指令,将选中的颜色添加至颜料库中,并根据预设频率进行颜色的混合和渲染;在所述流体体积网格模型的每个网格单元上计算经过颜色混合和渲染后的流体的参数,并将得到的流体的参数输入并输出到流体着色器中完成渲染。该方法和装置能够模拟水墨的渗透、混合和扩散等特性,使渲染结果更加逼真,实时水墨流体渲染方法可以在较短的时间内处理和渲染大量的流体粒子或网格单元,提高了计算效率,并使得仿真效果更加接近真实水墨画效果。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1是根据一示例性实施例示出的基于人工智能的实时水墨流体渲染方法的流程图;
图2是根据一示例性实施例示出的基于人工智能的实时水墨流体渲染装置的结构图之一;
图3是根据一示例性实施例示出的计算机设备的结构示意图。
具体实施方式
以下描述和附图充分地示出本文的具体实施方案,以使本领域的技术人员能够实践它们。一些实施方案的部分和特征可以被包括在或替换其他实施方案的部分和特征。本文的实施方案的范围包括权利要求书的整个范围,以及权利要求书的所有可获得的等同物。本文中,术语“第一”、“第二”等仅被用来将一个元素与另一个元素区分开来,而不要求或者暗示这些元素之间存在任何实际的关系或者顺序。实际上第一元素也能够被称为第二元素,反之亦然。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的结构、装置或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种结构、装置或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的结构、装置或者设备中还存在另外的相同要素。本文中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
本文中的术语 “纵向”、 “横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本文和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。在本文的描述中,除非另有规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是机械连接或电连接,也可以是两个元件内部的连通,可以是直接相连,也可以通过中间媒介间接相连,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。
本文中,除非另有说明,术语“多个”表示两个或两个以上。
本文中,字符“/”表示前后对象是一种“或”的关系。例如,A/B表示:A或B。
本文中,术语“和/或”是一种描述对象的关联关系,表示可以存在三种关系。例如,A和/或B,表示:A或B,或,A和B这三种关系。
在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
为了解决现有技术中存在的问题,本发明提出的一种利用GPU Shader计算的实时水墨流体渲染方法,用以解决实时性、水墨特性模拟、光照和阴影模拟、网格化和采样优化、后处理处理效果和效率等技术问题。通过研究和优化这些问题,可以实现高效、逼真而艺术性的水墨流体渲染效果。
请参考图1,图1是根据一示例性实施例示出的基于人工智能的实时水墨流体渲染方法的流程图之一。
在一种具体实施方式中,本发明提供了一种基于人工智能的实时水墨流体渲染方法包括以下步骤:
S110:建立流体体积网格模型和流场数据;建立流体模型时,使用基于网格或粒子的流体模拟算法,生成流体模型。采用Navier-Stokes方程和SPH方法等实时模拟流体的运动和颜料传输,基于计算结果实现网格节点和流场数据的更新,以提供后续渲染和交互所需的基础数据。
S120:基于所述流体体积网格模型和流场数据,计算流体颗粒的运动轨迹和颜色属性,将运动轨迹的颜色属性输入预先构建的颗粒着色器中,以得到所述颗粒着色器输出的颗粒扩散和碰撞行为数据;借助GPU的执行能力并行计算液体颗粒(Particles)的运动轨迹和颜色属性,模拟颗粒的扩散和碰撞行为。
S130:基于流体运动模拟运算,响应于颜色选择指令,将选中的颜色添加至颜料库中,并根据预设频率进行颜色的混合和渲染;具体地,基于流体运动模拟运算,引入交互操作,将交互操作所选中的颜色添加至颜料库中,并根据频率进行颜色的混合和渲染,计算流体的密度、速度和力等物理量,并输出到Fluid Shader中进行渲染。
S140:在所述流体体积网格模型的每个网格单元上计算经过颜色混合和渲染后的流体的参数,并将得到的流体的参数输入并输出到流体着色器中完成渲染。通过将流体模型渲染成水墨风格,使用着色器来模拟水墨渗透和散射等效应,以更好的实现水墨画的效果。
在步骤S110中,建立流体体积网格模型和流场数据,具体包括:
构建出离散化的流体模拟区域,将水墨流体分割成多个网格单元;
基于流体运动模拟运算初始化网格;
实时模拟流体的运动和网格形状。
其中,实时模拟流体的运动和网格形状,具体包括:
基于流体的质量守恒原则,建立连续性方程;基于流体的动量守恒原则,建立动量守恒方程;
计算所述动量守恒方程的质量流动项,以得到流场节点的加速度;
计算所述动量守恒方程的对流项,以得到流体速度场中的动量向流体周围的扩散和传递程度;
计算所述动量守恒方程的压力梯度项,以得到流体由于压力场梯度引起的动量变化;
计算所述动量守恒方程的粘性项,以得到流体粘性导致的动量耗散程度。
在一个具体使用场景中,首先初始化网格,为每个网格节点设置初始状态,每个节点设置初始位置、初始速度和初始质量等;
设置网格大小,网格宽度为:网格高度为:/>;
节点位置坐标为:,通过网格行列索引确认节点坐标,其中,/>和/>表示为:
;
其中,表示节点的列索引,/>表示节点的行索引,采用归一化的坐标,使得节点位置在/>范围内。
节点速度为:
;
即在每个节点上的流速向量,表示流体在该位置的速度。
节点质量为:
;
流体质量是由流体单元密度决定,所以用密度代替质量,表示为:
;
基于流体运动模拟运算采用Navier-Stokes方程和SPH方法等实时模拟流体的运动和网格的形状。
具体地,基于流体的质量守恒原则,即流体在任何给定时刻的质量保持不变,建立连续性方程:
;
其中,代表流体质量,/>代表时间,/>代表流场速度,代表计算流场节点的散度,描述流体在每个点处的流量与质量变化的关系,其中,/>代表散度,/>在速度向量场/>的计算公式为:
;
其中,,/>分别表示速度向量场/>在/>和/>的方向上的偏导数,通过对速度向量场/>各个方向偏导数求和,得到节点/>的流量。
基于流体的动量守恒原则,可以推导出流体运动的速度变化、压力分布等相关量,建立动量守恒方程表示形式如下:
;
动量守恒方程中,质量流动项:
;
它动量守恒方程中的一个重要部分,它代表了流体的质量随时间的变化率,即流场节点的加速度。
其中,代表流体节点质量,/>代表时间,/>代表流场节点速度,质量流动项代表了流体质量密度在时间上的变化率。其中,流体节点的质量速度表示为:
;
即质量密度和速度场的乘积,表示在给定的时间和位置上通过单位面积的区域的流体质量。
质量流动项对于流场中的每个节点表示了流场节点在单位时间内进出该点的质量变化。符合流体中的质量守恒原理,即在任何给定时刻,流体质量的总量应该保持不变。
动量守恒方程中,对流项:
;
表示了速度场的散度以及流体密度和速度场的乘积的点积,代表了流体速度场中的动量向流体周围的扩散和传递。其中,代表梯度运算符,流体质量的流动项:
;
代表了流体质量的传递和流动,其中代表流体节点质量,/>代表流场节点速度。对流项在流体模拟和渲染中能够捕捉到流体的扩散、混合和湍流等动力学行为。对流体动量的梯度运算,描述了流体动量的传递和流动。根据速度场的变化和流体密度的梯度,可以了解流体中动量传递的方向和强度。
动量守恒方程中,压力梯度项:
;
表示了由于压力场梯度引起的动量变化。其中,代表梯度运算符,/>表示压力场,压力梯度是压力场/>的梯度/>。
动量守恒方程中,粘性项:
;
表示了流体粘性导致的动量耗散现象。其中,表示动力粘度系数,为常量,代表速度场拉普拉斯算子,表示速度场梯度的散度;
其中表示拉普拉斯(Laplace)算子,其定义如下:
;
该运算为求标量函数梯度场的散度,将其作用于速度场时,得到:
;
动量守恒方程中,代表外力项。
基于计算结果实现网格节点和流场数据的更新,以提供后续渲染和交互所需的基础数据。
网格节点位置的更新通过以下公式实现:
;
其中,,/>分别是速度场在位置/>处的水平和垂直分量,/>是时间步长。
在步骤S120中,计算流体颗粒的运动轨迹和颜色属性,具体包括:
对于每个颗粒,计算其在当前时间步长内的扩散位移;
根据扩散位移更新网格位置。
基于步骤S110得到的计算结果,获取网格节点位置更新数据,使用蒙特卡罗方法模拟颗粒的扩散和碰撞行为。对于每个颗粒,计算其在当前时间步长内的扩散位移,扩散位移计算公式如下:
;
其中,是扩散位移,/>是扩散系数,/>是时间步长,/>是服从标准正态分布的随机数。
根据扩散位移更新网格位置:
;
其中,是更新后的位置,/>是当前位置。
碰撞行为的模拟采用弹性碰撞模型,检测其与其他颗粒或环境之间的碰撞,根据碰撞规则更新颗粒的速度或位置。
在一些实施例中,基于流体运动模拟运算,响应于颜色选择指令,将选中的颜色添加至颜料库中,并根据预设频率进行颜色的混合和渲染,具体包括:
将交互操作所选中的颜色添加至颜料库中,颜料库以纹理格式存储颜色信息;
根据颜色添加的频率,对颜料库中的颜色进行混合;
使用加权平均法将颜色进行平滑混合,将混合后的颜色应用于网格节点的渲染,根据节点属性和混合权重进行颜色插值。
具体地,基于流体运动模拟运算,引入交互操作,将交互操作所选中的颜色添加至颜料库中,并根据频率进行颜色的混合和渲染。将交互操作所选中的颜色添加至颜料库中,颜料库以纹理格式存储颜色信息。根据颜色添加的频率,对颜料库中的颜色进行混合。使用加权平均法将颜色进行平滑混合,将混合后的颜色应用于网格节点的渲染,根据节点属性和混合权重进行颜色插值。
在一个具体使用场景中,执行GPU的Fluid Simulation阶段,对于流体体积数据的渲染,可以使用GPU Compute Shader进行并行计算,在每个网格单元上重新计算流体的密度、速度和力等物理量,并输出到Fluid Shader中进行渲染。GPU Shader在FluidSimulation中具有并行计算的特征,因此充分利用GPU的并行计算能力和高吞吐量,以及GPU Shader灵活的存储和访问方式,优化运算效率,为流体模拟提供快速而高效的计算和渲染。根据实时需求进行动态调整和优化,适应不同规模和复杂度的Fluid Simulation任务。
在一些实施例中,将得到的流体的参数输入并输出到流体着色器中完成渲染,之后还包括:
从渲染结果中提取颜色值和深度值;
基于深度值和颜色值,计算每个像素点的水墨渗透程度;
根据深度值模拟渗透的深浅,或根据颜色值模拟渗透的扩散效果,通过修改渗透程度改变渲染结果的透明度和浓度,以模拟水墨被纸张吸收和扩散的效果。
这样,将流体模型渲染成水墨风格,使用着色器来模拟水墨渗透和散射等效应,以更好的实现水墨画的效果。在这个阶段,使用着色器来模拟水墨渗透效应,以更好的实现水墨画的效果。从GPU Shader输出的渲染结果中提取颜色值和深度值,基于深度值和颜色值,计算每个像素点的水墨渗透程度。根据深度信息来模拟渗透的深浅,或根据颜色信息来模拟渗透的扩散效果,通过修改渗透程度来改变渲染结果的透明度和浓度,模拟水墨被纸张吸收和扩散的效果。使用插值方法来调整渗透程度的变化,以获得更逼真的水墨渗透效果。
本发明提供的渲染方法,基于GPU Shader计算的实时水墨流体渲染方法,能够模拟水墨的渗透、混合和扩散等特性,使渲染结果更加逼真。通过在计算机中模拟水墨的流动和行为,可以实现具有艺术感和独特氛围的水墨效果,使渲染图像更加生动和具有表现力、丰富的艺术创作性,为艺术家提供了更多的创作手段和表现形式。艺术家可以通过调整参数和控制流体的行为,创造出独特的艺术作品。水墨流体渲染的直观性和灵活性使得艺术家能够表达个人想法和情感,创作出更具创意和独特性的作品。实时水墨流体渲染方法在影视制作、游戏开发等领域具有广泛应用,通过应用水墨流体渲染效果,可以赋予影视作品和游戏场景独特的艺术视觉效果和风格。水墨流体渲染能够增加视觉的层次感和艺术感,吸引观众或玩家的注意力,提升视觉体验和沉浸感。实时水墨流体渲染方法可以在较短的时间内处理和渲染大量的流体粒子或网格单元。这种实时性可以提供更高的计算效率,使得水墨流体渲染能够在实时应用中得到广泛应用,例如游戏中的实时渲染和交互。除此之外,实时水墨流体渲染方法为计算机图形学和计算机艺术领域的教育和研究提供了新的领域和方向。学生和研究人员可以通过学习和研究水墨流体渲染方法,拓宽对计算机图形学和计算机艺术的理解,推动相关技术和领域的发展。
在上述具体实施方式中,本发明所提供的基于人工智能的实时水墨流体渲染方法,通过建立流体体积网格模型和流场数据;基于所述流体体积网格模型和流场数据,计算流体颗粒的运动轨迹和颜色属性,将运动轨迹的颜色属性输入预先构建的颗粒着色器中,以得到所述颗粒着色器输出的颗粒扩散和碰撞行为数据;基于流体运动模拟运算,响应于颜色选择指令,将选中的颜色添加至颜料库中,并根据预设频率进行颜色的混合和渲染;在所述流体体积网格模型的每个网格单元上计算经过颜色混合和渲染后的流体的参数,并将得到的流体的参数输入并输出到流体着色器中完成渲染。该方法能够模拟水墨的渗透、混合和扩散等特性,使渲染结果更加逼真,实时水墨流体渲染方法可以在较短的时间内处理和渲染大量的流体粒子或网格单元,提高了计算效率,并使得仿真效果更加接近真实水墨画效果。
除了上述方法,本发明还提供了一种基于人工智能的实时水墨流体渲染装置,如图2所示,所述装置包括:
模型构建单元210,用于建立流体体积网格模型和流场数据;
颗粒属性计算单元220,用于基于所述流体体积网格模型和流场数据,计算流体颗粒的运动轨迹和颜色属性,将运动轨迹的颜色属性输入预先构建的颗粒着色器中,以得到所述颗粒着色器输出的颗粒扩散和碰撞行为数据;
颜色添加单元230,用于基于流体运动模拟运算,响应于颜色选择指令,将选中的颜色添加至颜料库中,并根据预设频率进行颜色的混合和渲染;
渲染生成单元240,用于在所述流体体积网格模型的每个网格单元上计算经过颜色混合和渲染后的流体的参数,并将得到的流体的参数输入并输出到流体着色器中完成渲染。
在一些实施例中,建立流体体积网格模型和流场数据,具体包括:
构建出离散化的流体模拟区域,将水墨流体分割成多个网格单元;
基于流体运动模拟运算初始化网格;
实时模拟流体的运动和网格形状。
在一些实施例中,实时模拟流体的运动和网格形状,具体包括:
基于流体的质量守恒原则,建立连续性方程;基于流体的动量守恒原则,建立动量守恒方程;
计算所述动量守恒方程的质量流动项,以得到流场节点的加速度;
计算所述动量守恒方程的对流项,以得到流体速度场中的动量向流体周围的扩散和传递程度;
计算所述动量守恒方程的压力梯度项,以得到流体由于压力场梯度引起的动量变化;
计算所述动量守恒方程的粘性项,以得到流体粘性导致的动量耗散程度。
在一些实施例中,计算流体颗粒的运动轨迹和颜色属性,具体包括:
对于每个颗粒,计算其在当前时间步长内的扩散位移;
根据扩散位移更新网格位置。
在一些实施例中,基于流体运动模拟运算,响应于颜色选择指令,将选中的颜色添加至颜料库中,并根据预设频率进行颜色的混合和渲染,具体包括:
将交互操作所选中的颜色添加至颜料库中,颜料库以纹理格式存储颜色信息;
根据颜色添加的频率,对颜料库中的颜色进行混合;
使用加权平均法将颜色进行平滑混合,将混合后的颜色应用于网格节点的渲染,根据节点属性和混合权重进行颜色插值。
在一些实施例中,将得到的流体的参数输入并输出到流体着色器中完成渲染,之后还包括:
从渲染结果中提取颜色值和深度值;
基于深度值和颜色值,计算每个像素点的水墨渗透程度;
根据深度值模拟渗透的深浅,或根据颜色值模拟渗透的扩散效果,通过修改渗透程度改变渲染结果的透明度和浓度,以模拟水墨被纸张吸收和扩散的效果。
在上述具体实施方式中,本发明所提供的基于人工智能的实时水墨流体渲染装置,通过建立流体体积网格模型和流场数据;基于所述流体体积网格模型和流场数据,计算流体颗粒的运动轨迹和颜色属性,将运动轨迹的颜色属性输入预先构建的颗粒着色器中,以得到所述颗粒着色器输出的颗粒扩散和碰撞行为数据;基于流体运动模拟运算,响应于颜色选择指令,将选中的颜色添加至颜料库中,并根据预设频率进行颜色的混合和渲染;在所述流体体积网格模型的每个网格单元上计算经过颜色混合和渲染后的流体的参数,并将得到的流体的参数输入并输出到流体着色器中完成渲染。该装置能够模拟水墨的渗透、混合和扩散等特性,使渲染结果更加逼真,实时水墨流体渲染方法可以在较短的时间内处理和渲染大量的流体粒子或网格单元,提高了计算效率,并使得仿真效果更加接近真实水墨画效果。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储静态信息和动态信息数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现上述方法实施例中的步骤。
本领域技术人员可以理解,图3中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
本发明并不局限于上面已经描述并在附图中示出的结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
Claims (10)
1.一种基于人工智能的实时水墨流体渲染方法,其特征在于,所述方法包括:
建立流体体积网格模型和流场数据;
基于所述流体体积网格模型和流场数据,计算流体颗粒的运动轨迹和颜色属性,将运动轨迹的颜色属性输入预先构建的颗粒着色器中,以得到所述颗粒着色器输出的颗粒扩散和碰撞行为数据;
基于流体运动模拟运算,响应于颜色选择指令,将选中的颜色添加至颜料库中,并根据预设频率进行颜色的混合和渲染;
在所述流体体积网格模型的每个网格单元上计算经过颜色混合和渲染后的流体的参数,并将得到的流体的参数输入并输出到流体着色器中完成渲染。
2.根据权利要求1所述的基于人工智能的实时水墨流体渲染方法,其特征在于,建立流体体积网格模型和流场数据,具体包括:
构建出离散化的流体模拟区域,将水墨流体分割成多个网格单元;
基于流体运动模拟运算初始化网格;
实时模拟流体的运动和网格形状。
3.根据权利要求2所述的基于人工智能的实时水墨流体渲染方法,其特征在于,实时模拟流体的运动和网格形状,具体包括:
基于流体的质量守恒原则,建立连续性方程;基于流体的动量守恒原则,建立动量守恒方程;
计算所述动量守恒方程的质量流动项,以得到流场节点的加速度;
计算所述动量守恒方程的对流项,以得到流体速度场中的动量向流体周围的扩散和传递程度;
计算所述动量守恒方程的压力梯度项,以得到流体由于压力场梯度引起的动量变化;
计算所述动量守恒方程的粘性项,以得到流体粘性导致的动量耗散程度。
4.根据权利要求1所述的基于人工智能的实时水墨流体渲染方法,其特征在于,计算流体颗粒的运动轨迹和颜色属性,具体包括:
对于每个颗粒,计算其在当前时间步长内的扩散位移;
根据扩散位移更新网格位置。
5.根据权利要求1所述的基于人工智能的实时水墨流体渲染方法,其特征在于,基于流体运动模拟运算,响应于颜色选择指令,将选中的颜色添加至颜料库中,并根据预设频率进行颜色的混合和渲染,具体包括:
将交互操作所选中的颜色添加至颜料库中,颜料库以纹理格式存储颜色信息;
根据颜色添加的频率,对颜料库中的颜色进行混合;
使用加权平均法将颜色进行平滑混合,将混合后的颜色应用于网格节点的渲染,根据节点属性和混合权重进行颜色插值。
6.根据权利要求1所述的基于人工智能的实时水墨流体渲染方法,其特征在于,将得到的流体的参数输入并输出到流体着色器中完成渲染,之后还包括:
从渲染结果中提取颜色值和深度值;
基于深度值和颜色值,计算每个像素点的水墨渗透程度;
根据深度值模拟渗透的深浅,或根据颜色值模拟渗透的扩散效果,通过修改渗透程度改变渲染结果的透明度和浓度,以模拟水墨被纸张吸收和扩散的效果。
7.一种基于人工智能的实时水墨流体渲染装置,其特征在于,所述装置包括:
模型构建单元,用于建立流体体积网格模型和流场数据;
颗粒属性计算单元,用于基于所述流体体积网格模型和流场数据,计算流体颗粒的运动轨迹和颜色属性,将运动轨迹的颜色属性输入预先构建的颗粒着色器中,以得到所述颗粒着色器输出的颗粒扩散和碰撞行为数据;
颜色添加单元,用于基于流体运动模拟运算,响应于颜色选择指令,将选中的颜色添加至颜料库中,并根据预设频率进行颜色的混合和渲染;
渲染生成单元,用于在所述流体体积网格模型的每个网格单元上计算经过颜色混合和渲染后的流体的参数,并将得到的流体的参数输入并输出到流体着色器中完成渲染。
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1-6中任一项所述的方法的步骤。
9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-6任一项所述方法的步骤。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311723590.6A CN117409127B (zh) | 2023-12-15 | 2023-12-15 | 基于人工智能的实时水墨流体渲染方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311723590.6A CN117409127B (zh) | 2023-12-15 | 2023-12-15 | 基于人工智能的实时水墨流体渲染方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117409127A true CN117409127A (zh) | 2024-01-16 |
CN117409127B CN117409127B (zh) | 2024-04-05 |
Family
ID=89493022
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311723590.6A Active CN117409127B (zh) | 2023-12-15 | 2023-12-15 | 基于人工智能的实时水墨流体渲染方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117409127B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050042916A (ko) * | 2003-11-04 | 2005-05-11 | 강문구 | 입자동역학 해석기법과 볼륨렌더링 기법을 이용한 실시간 유체유동 시뮬레이션 및 렌더링 방법 |
CN102496177A (zh) * | 2011-12-05 | 2012-06-13 | 中国科学院自动化研究所 | 三维水墨动画的制作方法 |
CN104463847A (zh) * | 2014-08-05 | 2015-03-25 | 华南理工大学 | 一种水墨画特色渲染方法 |
KR101527678B1 (ko) * | 2014-02-10 | 2015-06-09 | 한국과학기술원 | 페인팅 시뮬레이션 방법 및 장치 |
US20180322661A1 (en) * | 2017-05-08 | 2018-11-08 | Adobe Systems Incorporated | Interactive color palette interface for digital painting |
CN110322540A (zh) * | 2019-07-09 | 2019-10-11 | 北京电影学院 | 基于流体力学与gpu优化渲染的可交互水墨模拟方法 |
CN114937116A (zh) * | 2022-02-16 | 2022-08-23 | 上海金角鱼软件有限公司 | 针对高速旋转的运动模糊特效渲染方法 |
CN115587551A (zh) * | 2022-12-12 | 2023-01-10 | 北京航空航天大学 | 一种高超声速飞行器防热结构烧蚀行为多尺度预测方法 |
CN115906703A (zh) * | 2022-12-05 | 2023-04-04 | 东北大学 | 一种用于实时交互应用的gpu流体仿真方法 |
CN116384207A (zh) * | 2023-05-17 | 2023-07-04 | 核工业航测遥感中心 | 基于风场流动轨迹和流动纹理的属性值融合渲染方法 |
-
2023
- 2023-12-15 CN CN202311723590.6A patent/CN117409127B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050042916A (ko) * | 2003-11-04 | 2005-05-11 | 강문구 | 입자동역학 해석기법과 볼륨렌더링 기법을 이용한 실시간 유체유동 시뮬레이션 및 렌더링 방법 |
CN102496177A (zh) * | 2011-12-05 | 2012-06-13 | 中国科学院自动化研究所 | 三维水墨动画的制作方法 |
KR101527678B1 (ko) * | 2014-02-10 | 2015-06-09 | 한국과학기술원 | 페인팅 시뮬레이션 방법 및 장치 |
CN104463847A (zh) * | 2014-08-05 | 2015-03-25 | 华南理工大学 | 一种水墨画特色渲染方法 |
US20180322661A1 (en) * | 2017-05-08 | 2018-11-08 | Adobe Systems Incorporated | Interactive color palette interface for digital painting |
CN110322540A (zh) * | 2019-07-09 | 2019-10-11 | 北京电影学院 | 基于流体力学与gpu优化渲染的可交互水墨模拟方法 |
CN114937116A (zh) * | 2022-02-16 | 2022-08-23 | 上海金角鱼软件有限公司 | 针对高速旋转的运动模糊特效渲染方法 |
CN115906703A (zh) * | 2022-12-05 | 2023-04-04 | 东北大学 | 一种用于实时交互应用的gpu流体仿真方法 |
CN115587551A (zh) * | 2022-12-12 | 2023-01-10 | 北京航空航天大学 | 一种高超声速飞行器防热结构烧蚀行为多尺度预测方法 |
CN116384207A (zh) * | 2023-05-17 | 2023-07-04 | 核工业航测遥感中心 | 基于风场流动轨迹和流动纹理的属性值融合渲染方法 |
Non-Patent Citations (4)
Title |
---|
周守东;: "基于Woodcock Tracking的快速蒙特卡罗直接体绘制方法", 系统仿真学报, no. 05, 8 May 2017 (2017-05-08) * |
覃海宁;: "三维光纤图形特征的体绘制改进方法研究与仿真", 激光杂志, no. 09, 25 September 2016 (2016-09-25) * |
赵凡;张文俊;王少波;张族锦;: "一种基于流体动力学模拟的水墨渲染方法", 微型电脑应用, no. 03, 20 March 2010 (2010-03-20) * |
钱小燕;肖亮;吴慧中;: "一种流体艺术风格的自适应LIC绘制方法", 计算机研究与发展, no. 09, 15 September 2007 (2007-09-15) * |
Also Published As
Publication number | Publication date |
---|---|
CN117409127B (zh) | 2024-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Gaboury | Image objects: An archaeology of computer graphics | |
Kazi et al. | Draco: bringing life to illustrations with kinetic textures | |
Iizuka et al. | An interactive design system for pop-up cards with a physical simulation | |
KR100568563B1 (ko) | 입자동역학 해석기법과 볼륨렌더링 기법을 이용한 실시간 유체유동 시뮬레이션 및 렌더링 방법 | |
Romeo et al. | Data‐Driven Facial Simulation | |
CN117409127B (zh) | 基于人工智能的实时水墨流体渲染方法和装置 | |
CN116310013A (zh) | 动画渲染方法、装置、计算机设备及计算机可读存储介质 | |
CN116933674A (zh) | 基于lbm的快速流体模拟方法 | |
Yuan et al. | The Fusion Method of Virtual Reality Technology and 3D Movie Animation Design. | |
Wang et al. | Computer Aided Animation Art Design and Production Based on Virtual Reality Technology | |
Boes | Playing architecture: The usability of a game engine as a real-time design tool | |
Lan | Development and Application of 3D Modeling in Game | |
Xu et al. | Real-time ink simulation using a grid-particle method | |
Limano | Realistic or iconic 3D animation (adaptation study with theory uncanny valley) | |
Lin et al. | Particle System Applied to Simulation Technology of Transformation between Fluid and Moving Solid | |
Li | Ancient Architecture Animation Design Method of 3D Technology and Its Application | |
Yang | Architectural Roaming Animation Based on VR Technology | |
Tang et al. | Research on facial expression animation based on 2d mesh morphing driven by pseudo muscle model | |
Khode et al. | College Campus Virtual Experience Simulator | |
Sun | Design and Implementation of a Small Plant Scene Interactive Animation System Based on Delta3D Game Engine | |
Grier | A Tool for Creating Expressive Control Over Fur and Feathers | |
Wu et al. | Unity3D Based on the Impact of Landscape Planning and Design Virtual and Realistic | |
Fun et al. | Non-photorealistic outdoor scene rendering: techniques and application | |
Gao | The Film and Television Department, Wuxi City College of Vocational Technology, Wuxi, Jiangsu, China gzp121@ 126. com | |
Fu et al. | Design of immersive display system based on 3D virtual engine |
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 |