CN113298923B - 一种仿真电子画的生成方法、装置、设备及存储介质 - Google Patents
一种仿真电子画的生成方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN113298923B CN113298923B CN202110603127.2A CN202110603127A CN113298923B CN 113298923 B CN113298923 B CN 113298923B CN 202110603127 A CN202110603127 A CN 202110603127A CN 113298923 B CN113298923 B CN 113298923B
- Authority
- CN
- China
- Prior art keywords
- character
- character string
- target object
- primitive
- characters
- 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 86
- 230000008569 process Effects 0.000 claims abstract description 42
- 238000004088 simulation Methods 0.000 claims abstract description 11
- 238000004364 calculation method Methods 0.000 claims abstract description 5
- 238000013507 mapping Methods 0.000 claims description 59
- 230000007613 environmental effect Effects 0.000 claims description 8
- 230000003044 adaptive effect Effects 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 4
- 238000010422 painting Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 5
- 230000001788 irregular Effects 0.000 description 5
- 230000003068 static effect Effects 0.000 description 5
- 230000009466 transformation Effects 0.000 description 5
- 238000011161 development Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000013519 translation Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 235000014653 Carica parviflora Nutrition 0.000 description 2
- 241000243321 Cnidaria Species 0.000 description 2
- 241000533950 Leucojum Species 0.000 description 2
- 235000008331 Pinus X rigitaeda Nutrition 0.000 description 2
- 241000018646 Pinus brutia Species 0.000 description 2
- 235000011613 Pinus brutia Nutrition 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000007639 printing Methods 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 241000196324 Embryophyta Species 0.000 description 1
- 241001422033 Thestylus Species 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000009833 condensation Methods 0.000 description 1
- 230000005494 condensation Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000005034 decoration Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000035558 fertility Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000010410 layer Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000035800 maturation Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 239000011664 nicotinic acid Substances 0.000 description 1
- 235000015097 nutrients Nutrition 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 210000000056 organ Anatomy 0.000 description 1
- 239000003973 paint Substances 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 239000002689 soil Substances 0.000 description 1
- 238000005507 spraying Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 210000003462 vein Anatomy 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/04—Texture mapping
-
- 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
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种仿真电子画的生成方法、装置、设备及存储介质,该方法包括:针对具有自相似性的目标对象,为目标对象的结构设置字符串,字符串中的多个字符分别表示结构中彼此相似的子结构;根据目标对象的生长规则对字符串进行多次更新;在字符串的每一次更新中,遍历字符串中的字符、绘制表示子结构的目标图元;当确认遍历完字符串中所有的字符时,输出由目标图元组合得到的图像;将字符串在多次更新的过程中所获得的多帧图像按照时间序列进行展示,以仿真目标对象的生长过程。上述方法可以在低成本的硬件设备上实现,对计算性能的要求较低,利用字符串的更新过程模拟目标对象的生长过程具有一定的动态连续性,使得绘制得到的电子画更为逼真。
Description
技术领域
本发明实施例涉及电子绘画技术,尤其涉及一种仿真电子画的生成方法、装置、设备及存储介质。
背景技术
随着科技的进步与发展,现有的装饰画主要分为静态和动态两种。
静态画一般为手绘画、电子扫描画、印刷画、喷绘画等;诸如印刷画、喷绘画等电子类绘画过于普通,且原版画的价位过高、在市面上并不普适,静态画容易导致审美疲劳,因此在静态画的基础上发展了动态画。动态画的实现技术一般包括如下三类:1、改单层画纸为多层画纸,利用机械装置动态显示;2、利用芯片显示影像;3、根据AI智能改变现有图画的局部位置(类似蒙娜丽莎的眨眼);由此可知,大部分的动态画均为电子画,同样是基于静态画纸来实现的,无法改变已有的画纸或芯片,无法仿真真实的动态场景及对象,动态的显示效果缺乏细节的描绘,且AI智能算法对图画的动态改变范围较小,显示对象的效果也不够真实,更进一步的,若利用三维扫描建模的方式创建动态画则对硬件设备要求过高、参数繁杂且需要现实物体参考。
发明内容
本发明实施例提出了一种仿真电子画的生成方法、装置、设备及存储介质,以解决现有动态电子画如何实现低成本、高仿真度的问题。
第一方面,本发明实施例提供了一种仿真电子画的生成方法,所述方法包括:
针对具有自相似性的目标对象,为所述目标对象的结构设置字符串,所述字符串中的多个字符分别表示所述结构中彼此相似的子结构;
根据所述目标对象的生长规则对所述字符串进行多次更新;
在所述字符串的每一次更新中,遍历所述字符串中的所述字符、绘制表示所述子结构的目标图元;
当确认遍历完所述字符串中所有的所述字符时,输出由所述目标图元组合得到的图像;
将所述字符串在多次更新的过程中所获得的多帧所述图像按照时间序列进行展示,以仿真所述目标对象的生长过程。
可选的,所述针对具有自相似性的目标对象,为所述目标对象的结构设置字符串,包括:
获取具有自相似性的目标对象的结构;
将所述结构划分为多个彼此相似的子结构;
构造表示所述子结构的类、作为图元类;
使用字符关联所述图元类、确定由所述字符构成的字符串表示目标对象的结构的字符串。
可选的,所述构造表示所述子结构的类、作为图元类,包括:
确定所述子结构的属性,所述属性至少包括所述子结构的体积、形状、姿态、颜色以及生长周期;
按照所述属性确定多个成员变量;
确定由多个所述成员变量构造的类为图元类。
可选的,所述根据所述目标对象的生长规则对所述字符串进行多次更新,包括:
确定表示所述目标对象的生长规则的字符映射集合,所述字符映射集合包括多个将所述字符串内的字符替换成预设的字符子串的映射规则,每个所述映射规则表示一种所述生长规则;
当所述字符串满足预设的更新条件时,获取模拟所述目标对象的生长环境的环境参数;
依据所述环境参数从所述字符映射集合中挑选出一个所述映射规则对所述字符串进行更新。
可选的,所述依据所述环境参数从所述字符映射集合中挑选出一个所述映射规则对所述字符串进行更新,包括:
在所述字符映射集合中,按照所述环境参数计算每个所述映射规则的概率分布;
基于所述概率分布为所述字符串中的每个字符匹配在更新中使用的所述映射规则;
针对每个所述字符,从与所述字符匹配的映射规则中读取预设的字符子串,用所述字符子串替换所述字符;
当确定完成所述字符串中所有所述字符的替换操作时,确定所述字符串完成一次更新。
可选的,所述在所述字符串的每一次更新中,遍历所述字符串中的所述字符、绘制表示所述子结构的目标图元,包括:
在所述字符串的每一次更新中,遍历所述字符串中的所述字符;
针对每个所述字符,按照所述字符所关联的图元类绘制表示所述子结构的初始图元,所述图元类为依据所述子结构的属性构造的类;
对所述初始图元绘制轮廓、粘贴纹理,得到目标图元。
可选的,所述对所述初始图元绘制轮廓、粘贴纹理,得到目标图元,包括:
从所述初始图元中抽取样条线;
确定所述样条线的生成规则、拼接规则,为所述初始图元构建适配的分形样条生成类;
应用所述分形样条生成类对所述初始图元绘制轮廓;
为绘制轮廓完成的初始图元粘贴纹理,得到目标图元。
第二方面,本发明实施例还提供了一种仿真电子画的生成装置,所述装置包括:
字符串设置模块,用于针对具有自相似性的目标对象,为所述目标对象的结构设置字符串,所述字符串中的多个字符分别表示所述结构中彼此相似的子结构;
字符串更新模块,用于根据所述目标对象的生长规则对所述字符串进行多次更新;
目标图元绘制模块,用于在所述字符串的每一次更新中,遍历所述字符串中的所述字符、绘制表示所述子结构的目标图元;
图像输出模块,用于当确认遍历完所述字符串中所有的所述字符时,输出由所述目标图元组合得到的图像;
图像仿真模块,用于将所述字符串在多次更新的过程中所获得的多帧所述图像按照时间序列进行展示,以仿真所述目标对象的生长过程。
第三方面,本发明实施例还提供了一种计算机设备,所述计算机设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的仿真电子画的生成方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所述的仿真电子画的生成方法。
本发明通过针对具有自相似性的目标对象,为目标对象的结构设置字符串,字符串中的多个字符分别表示结构中彼此相似的子结构;根据目标对象的生长规则对字符串进行多次更新;在字符串的每一次更新中,遍历字符串中的字符、绘制表示子结构的目标图元;当确认遍历完字符串中所有的字符时,输出由目标图元组合得到的图像;将字符串在多次更新的过程中所获得的多帧图像按照时间序列进行展示,以仿真目标对象的生长过程。上述方法可以在低成本的硬件设备上进行实现,对计算性能的要求较低,同时利用字符串的更新过程模拟目标对象的生长过程具有一定的动态连续性,仿真该生长过程绘制动态电子画更为贴近目标对象本身的生长环境场景,使得绘制得到的电子画更为逼真,且参考目标对象的生长规则以及综合考量目标对象的生长环境设置电子画的预设参数,参数的种类贴近目标对象的自身属性,具有较高的参考价值,更进一步的,对目标对象设置字符串,字符串中的字符表征的是目标对象的子结构,对字符串进行更新,则子结构也会进一步得到细化,即绘制的仿真电子画中含有大量细节,便于后续对细节进行逐步完善,仿真度较高,且对子结构进行更新仅需指定字符串的初始状态与迭代规则,目标对象的初始模型可以由字符串自动生成,无需记录模型形状的大量信息,整个仿真电子画的生成过程简单易操作、且自由度高。
附图说明
图1为本发明实施例一提供的一种仿真电子画的生成方法的流程图;
图2为本发明实施例一提供的一种仿真电子画的示意图;
图3为本发明实施例二提供的一种仿真电子画的生成装置的结构示意图;
图4为本发明实施例三提供的一种计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
应注意到:在本发明实施例的描述中,术语“第一”、“第二”、“第三”等次序词仅用于区分描述,而不能理解为指示或暗示相对重要性。
实施例一
图1为本发明实施例一提供的一种仿真电子画的生成方法的流程图,本实施例可适用于对具有自相似性的目标对象进行生长仿真、绘制目标对象的电子画的情况,该方法可以由仿真电子画的生成装置来执行,该仿真电子画的生成装置可以由软件和/或硬件实现,可配置在计算机设备中,例如,服务器、工作站、个人电脑,等等,该方法具体包括如下步骤:
S110、针对具有自相似性的目标对象,为目标对象的结构设置字符串。
自相似性是指一个对象的部分与整体具有自仿射变换关系的相似,也就是常说的分形的概念,分形常用于指对象的组成部分与整体以某种方式相似的形,分形一般具有下面5个基本特征或性质:①形态的不规则性;②结构的精细性;③局部与整体的自相似性;④维数的非整数性;⑤生成的迭代性。分形几何与大自然中的各种形态是具有非常紧密的联系的,如天空的云团、植物的叶脉、海岸线的形状等,可以看出分形的形态是极其不规则的,并且具有非常精细的结构,如著名的Koch曲线等,无论把其放大多少倍,都能看到其局部与整体的相似性及精致性。
在本实施例中,目标对象是指具有自相似性的对象,该对象的局部结构特征与整体结构特征是相似的,目标对象可以是生物体也可以是非生物体,例如树、花、海螺、珊瑚、松果等相对具有分形概念的生物,例如雪花、山川、水流等具有分形概念的非生物,本实施例对此不作具体限定。
本实施例针对具有自相似性的目标对象,为目标对象的结构设置字符串,是为了实现对目标对象的结构进行仿真,将结构转换为字符串,使得目标对象的表达更为简单清晰,易于后续的更新操作。其中,为目标对象的结构所设置的字符串包括多个字符,多个字符分别表示结构中彼此相似的子结构。
在一种实现方式中,为目标对象的结构设置字符串可以包括如下具体步骤:
S1101、获取具有自相似性的目标对象的结构。
S1102、将结构划分为多个彼此相似的子结构。
可以理解的是,上述所述的子结构可以依据一定的迭代规则拼接为目标对象的完整的结构。
S1103、构造表示子结构的类、作为图元类。
在具体实现中,可以确定子结构的属性,该属性至少包括子结构的体积、形状、姿态、颜色以及生长周期;按照属性确定多个成员变量,例如,成员变量可以包括子结构的生长时长、子结构的大小、子结构的颜色,还可以包括对子结构进行姿态变换的平移量、偏转角度等等,本实施例对成员变量的具体内容不作限定;待成员变量设置完成后,确定由多个成员变量构造的类为图元类。可以理解的是,本实施例中的图元类可以表达为一个具体的三维图形或一个三维变换矩阵(包括平移、旋转、缩放等信息)。
S1104、使用字符关联图元类、确定由字符构成的字符串表示目标对象的结构的字符串。
在一种优选的实现方式中,可以通过定义指针的方式使用字符关联图元类,即利用字符型的指针指向图元类存储的物理地址,将字符与图元类进行关联,从而确定由字符构成的字符串表示目标对象的结构的字符串,则可以理解的是,此时字符串中的元素实质是包括字符以及指向实例化的图元类的指针。需要说明的是,本实施例还可以通过链表、队列、栈、数组等其他方式来使用字符关联图元类、确定由字符构成的字符串表示目标对象的结构的字符串,本实施例对此不作具体限定。
S120、根据目标对象的生长规则对字符串进行多次更新。
在一种优选的实施方式中,S120可以包括如下步骤:
S1201、确定表示目标对象的生长规则的字符映射集合。
该字符映射集合包括多个将字符串内的字符替换成预设的字符子串的映射规则,每个映射规则表示一种生长规则。
其中,字符子串的实质是字符串,但本实施例中为了便于区别描述,将字符串内的每个字符待对应替换的字符串称为字符子串。
S1202、当表示目标对象的结构的字符串满足预设的更新条件时,获取模拟目标对象的生长环境的环境参数。
环境参数是模拟目标对象的生长环境的全局变量,能够影响图元类的初始值与映射规则的概率分布,对于目标对象为生物体而言,环境参数可以是用于模拟重力、光照、温度、养料对生物生长的影响因素。
S1203、依据环境参数从字符映射集合中挑选出一个映射规则对字符串进行更新。
具体的,可以在字符映射集合中,按照环境参数计算每个映射规则的概率分布;基于概率分布为字符串中的每个字符匹配在更新中使用的映射规则;针对每个字符,从与字符匹配的映射规则中读取预设的字符子串,用字符子串替换字符;当确定完成字符串中所有字符的替换操作时,确定字符串完成一次更新。需要说明的是,在本实施例中的每一次更新中,用字符子串替换字符得到新的字符串时,新的字符串中的元素仍旧包括多个字符,本实施例不对字符子串进行具体的限定,可以理解的是,字符子串也是由多个字符所组成,所以每次更新后的新的字符串中会包含比更新前的字符串更多的字符个数,且新的字符串中的每个字符依旧可以在下一次更新过程中被其他的字符子串所替换,即在初始的字符串完成多次更新后,新的字符串中的字符的总数量会远远大于初始的字符串中的字符的总数量。
S130、在字符串的每一次更新中,遍历字符串中的字符、绘制表示子结构的目标图元。
在一种优选的实施方式中,可以在字符串的每一次更新中,遍历字符串中的字符;针对每个字符,按照字符所关联的图元类绘制表示子结构的初始图元,图元类为依据子结构的属性构造的类,初始图元的实质是图像数据,但该图像数据仅表示目标对象的子结构,并非完整的目标对象,因此为了区别整体的描述,将表示子结构的图像数据称为初始图元;当初始图元绘制完成时,对该初始图元绘制轮廓、粘贴纹理,得到目标图元。
其中,对初始图元绘制轮廓、粘贴纹理,得到目标图元,具体可以包括:从初始图元中抽取样条线;确定样条线的生成规则、拼接规则,为初始图元构建适配的分形样条生成类;应用分形样条生成类对初始图元绘制轮廓;为绘制轮廓完成的初始图元粘贴纹理,得到目标图元。本实施例中的分形样条生成类的实质是类,为初始图元构建适配的分形样条生成类可以参考从初始图元中抽取出的任意样条线,比对不同样条线之间的合成规则、确定样条线构成子结构的拼接规则等,将样条线相互之间的联系关系表示为类的成员变量,依据该成员变量构建类、作为适配初始图元的分形样条生成类,用于为初始图元绘制轮廓。可以理解的是,应用分形样条生成类对初始图元绘制轮廓,可以应用分形样条生成类对图元类中的三维图形生成不规则的样条线、拼成不规则在的几何体,例如,当目标对象为树木时,绘制树木的三维图形,可以用不规则样条几何体去做树皮上的粗糙线条,主要用来做树皮上的具体细节。
S140、当确认遍历完字符串中所有的字符时,输出由目标图元组合得到的图像。
在对更新后的字符串进行字符遍历时,针对每个字符所关联的图元类,读取图元类的内部参数进行状态转移,确定绘制的三维图形的大小、颜色、形状等特征,为初始完成绘制的三维图形应用分形样条生成类,计算三维图形的分形样条线的轮廓,绘制表示目标对象子结构的初始图元的轮廓,并在轮廓绘制完成的初始图元上应用表征光照、材质等纹理,得到目标图元;当确认遍历完整个字符串中所有的字符时,统计所有的目标图元,将目标图元按照预先遍历的顺序进行拼接组合,得到表示目标对象整体结构的图像。可以理解的是,在将多个目标图元组合成表示目标对象的结构的图像时,可以根据字符串中图元类记载的三维变换矩阵(包括平移、旋转、缩放等信息)对目标图元进行顺序拼接、姿态调整,最终组成完整的目标对象。
S150、将字符串在多次更新的过程中所获得的多帧图像按照时间序列进行展示,以仿真目标对象的生长过程。
在本实施例中,可以统计字符串在多次更新过程中所获得的多帧图像,例如可以将字符串每次更新后输出的图像存储在本地或服务器,预设固定的时间周期,当到达一个时间周期时,定期从本地或服务器中读取在该时间周期内存储的多帧图像,按照存储的时间顺序依次读取图像,将多帧图像进行连续展示,以仿真目标对象的生长过程。或者,也可以模拟目标对象真实的生长周期,确定生长周期中固定的几个时间节点,按照时间节点预先设置好多个时间周期,每当字符串完成多次更新后达到某个时间周期时(即满足某个时间节点),则将当前时间周期内所存储的多帧图像陆续叠加显示,以仿真目标对象的生长过程。或者,还可以将多次更新过程中获取的所有图像设置为一个图像集合,每隔预设的帧数从图像集合中抽样不同的图像帧进行显示,例如每隔2帧从图像集合中获取一帧图像进行显示,还可以设定每帧图像的显示时间,例如每隔5帧从图像集合中抽取一帧图像显示5s,等等,本实施例对具体仿真目标对象的生长过程不作限定。
需要说明的是,本实施例中所构建的图元类中还可以包含预设的生长周期参数,当字符串的更新次数满足预设的总次数时,则可以修改字符串中图元类的生长周期参数,以使字符串的更新过程更加符合目标对象的生长过程,使得依据字符串所绘制的图像更加贴近目标对象的生长发育过程。
为了便于本领域技术人员对本发明有更深入的了解,本实施例下面列举一个具体示例来说明本发明中的仿真电子画的生成方法。
在一个具体示例中,本发明的生成方法可以基于LinderMayer系统(简称L系统)实现,假设目标对象为生物体,在绘制生物体的电子画时,可以将生物体用相对简单的、带有分形特征的图元类描述,每个图元类可以代表生物体的器官或某一部分结构,而生物体的整个结构可以用字符串表示,串中字符可表示图元类或绘制中的平移、旋转、缩放等变换操作。进一步的,可以根据字符串中的信息在指定位置绘制多个图形,最终将多个图形合成完整的生物体。在具体绘制过程中,还可以用指定的字符子串替代字符串中的字符,不断替换更新字符串中的字符,可表示细节更多的生物体,模拟生物的生长发育过程。在该示例中,绘制生物体细节时,使用分形理论可绘制形状不规则、带有生物特征的模型,创造复杂而暗含规律的纹理,增强绘制的精细度与真实感。
在本示例的具体实现中,L系统原本的含义是由三元组构成:<V,w,P>。在L系统的原始含义中,V表示符号集,w表示初始的字符串,P表示重写规则以及重写操作。本示例基于L系统进行定义和规则上的改进,在改进后的系统中,V仍旧表示符号集,w表示目标对象的结构的字符串,P表示目标对象的生长规则。(也可以成为系统中的迭代规则)
可以理解的是,最简单的L系统的重写规则P是一一对应的(字符->字符子串)的二元组的集合,就是一个映射规则map,字符相当于关键字key,字符子串则可以表示为与关键字对应的值value。重写操作就是将初始的字符串中的每个P(指针)中能找到的字符key替换为字符子串value。例如,在L系统中的一种表示可以为:V={a,b};w=a;P={(a->b),(b->ab)},则字符串w迭代几次之后的结果是:a—b—ab--bab—abbab;该过程演示了“字符子串如何替换字符”。
在本示例中,用字符串表示生物体的结构、对字符串进行更新迭代的具体过程如下所示:
预先在改进后的L系统中设定V={F,+,-,[,]};w=F;P={F->F[+F][-F]}。
对字符串w进行多次更新之后的结果如下:
初始状态:F
第一次更新:F[+F][-F]
第二次更新:F[+F][-F][+F[+F][-F]][-F[+F][-F]]
第三次更新:
F[+F][-F][+F[+F][-F]][-F[+F][-F]][+F[+F][-F][+F[+F][-F]][-F[+F][-F]]][-F[+F][-F][+F[+F][-F]][-F[+F][-F]]]
用上述更新好的字符串表示生物体的结构:为每个字符赋予具体的含义。本示例展示的是在二维平面上绘制简单的图像,可以仅由一种笔画绘制,前进的步长和选择的角度可以是预先确定的参数。其中,“F”表示画笔前进l个步长,绘制一条线段;“-”表示画笔逆时针旋转θ;“+”表示画笔顺时针旋转θ;“[”表示画笔存储在当前位置(入栈),“]”表示画笔获取栈顶位置(出栈)。于是,一个字符串可以控制画笔的绘制轨迹,进而控制了对生物体的结构进行绘制的轨迹。第三次更新后的字符串所绘制得到的图像如图2所示。
本示例中的上述方法可以在低成本的硬件条件下进行实现,仅需要一个控制板,一个电子芯片和一个显示屏或者是投影屏。预先在控制板上输入初始参数,以及控制电子画的循环动态速度或控制电子画定格,对于树花海螺珊瑚松果等相对具有分形概念的生物,设定的初始参数包括①生长程度:出生期、发育期、成熟期、衰亡期等;②天气情况:春夏秋冬雨雪晴风;③土壤情况:稀薄普通肥沃;重④力设定:和地球重力的比例等等。对于雪花、山川、水流等具有分形概念的非生物,设定的初始参数包括大小、角度、颜色等。其中,电子芯片中集成有仿真电子画的生成方法,可以利用分形概念以及预先配置的代码生成电子画。而显示屏或投影屏可以将电子画的某一阶段或整个过程循环显示,或者将电子画定格在最喜欢的某一时刻。通过这种方式显示出来的动态电子画,可以循环显示生物成长或非生物凝结的某一过程,或者定格在最喜欢的某一刻;如果对此有了审美疲劳,可以重新设置初始参数,或者保持初始参数不变,再随机生成一次仿生图画。
本发明的仿真电子画的生成方法不仅可以用于生成电子画,应用于装饰、游戏、娱乐等领域,也能用于科研、地理信息领域,有助于推导地球生物圈生命过程的各类规则,以及预测地球外各类不同生存条件下生物产生和发育生长的规律与可能的形态。
本发明实施例通过针对具有自相似性的目标对象,为目标对象的结构设置字符串,字符串中的多个字符分别表示结构中彼此相似的子结构;根据目标对象的生长规则对字符串进行多次更新;在字符串的每一次更新中,遍历字符串中的字符、绘制表示子结构的目标图元;当确认遍历完字符串中所有的字符时,输出由目标图元组合得到的图像;将字符串在多次更新的过程中所获得的多帧图像按照时间序列进行展示,以仿真目标对象的生长过程。上述方法可以在低成本的硬件设备上进行实现,对计算性能的要求较低,同时利用字符串的更新过程模拟目标对象的生长过程具有一定的动态连续性,仿真该生长过程绘制动态电子画更为贴近目标对象本身的生长环境场景,使得绘制得到的电子画更为逼真,且参考目标对象的生长规则以及综合考量目标对象的生长环境设置电子画的预设参数,参数的种类贴近目标对象的自身属性,具有较高的参考价值,更进一步的,对目标对象设置字符串,字符串中的字符表征的是目标对象的子结构,对字符串进行更新,则子结构也会进一步得到细化,即绘制的仿真电子画中含有大量细节,便于后续对细节进行逐步完善,仿真度较高,且对子结构进行更新仅需指定字符串的初始状态与迭代规则,目标对象的初始模型可以由字符串自动生成,无需记录模型形状的大量信息,整个仿真电子画的生成过程简单易操作、且自由度高。
实施例二
图3为本发明实施例二提供的一种仿真电子画的生成装置的结构示意图,该装置具体可以包括如下模块:
字符串设置模块301,用于针对具有自相似性的目标对象,为所述目标对象的结构设置字符串,所述字符串中的多个字符分别表示所述结构中彼此相似的子结构;
字符串更新模块302,用于根据所述目标对象的生长规则对所述字符串进行多次更新;
目标图元绘制模块303,用于在所述字符串的每一次更新中,遍历所述字符串中的所述字符、绘制表示所述子结构的目标图元;
图像输出模块304,用于当确认遍历完所述字符串中所有的所述字符时,输出由所述目标图元组合得到的图像;
图像仿真模块305,用于将所述字符串在多次更新的过程中所获得的多帧所述图像按照时间序列进行展示,以仿真所述目标对象的生长过程。
在本发明的一个实施例中,所述字符串设置模块301包括:
结构获取子模块,用于获取具有自相似性的目标对象的结构;
子结构划分子模块,用于将所述结构划分为多个彼此相似的子结构;
图元类构造子模块,用于构造表示所述子结构的类、作为图元类;
字符串设置子模块,用于使用字符关联所述图元类、确定由所述字符构成的字符串表示目标对象的结构的字符串。
在本发明的一个实施例中,所述图元类构造子模块包括:
属性确定单元,用于确定所述子结构的属性,所述属性至少包括所述子结构的体积、形状、姿态、颜色以及生长周期;
成员变量确定单元,用于按照所述属性确定多个成员变量;
图元类确定单元,用于确定由多个所述成员变量构造的类为图元类。
在本发明的一个实施例中,所述字符串更新模块302包括:
字符映射集合确定子模块,用于确定表示所述目标对象的生长规则的字符映射集合,所述字符映射集合包括多个将所述字符串内的字符替换成预设的字符子串的映射规则,每个所述映射规则表示一种所述生长规则;
环境参数获取子模块,用于当所述字符串满足预设的更新条件时,获取模拟所述目标对象的生长环境的环境参数;
更新子模块,用于依据所述环境参数从所述字符映射集合中挑选出一个所述映射规则对所述字符串进行更新。
在本发明的一个实施例中,所述更新子模块包括:
概率分布计算单元,用于在所述字符映射集合中,按照所述环境参数计算每个所述映射规则的概率分布;
映射规则匹配单元,用于基于所述概率分布为所述字符串中的每个字符匹配在更新中使用的所述映射规则;
字符替换单元,用于针对每个所述字符,从与所述字符匹配的映射规则中读取预设的字符子串,用所述字符子串替换所述字符;
更新完成单元,用于当确定完成所述字符串中所有所述字符的替换操作时,确定所述字符串完成一次更新。
在本发明的一个实施例中,所述目标图元绘制模块303包括:
字符遍历子模块,用于在所述字符串的每一次更新中,遍历所述字符串中的所述字符;
初始图元绘制子模块,用于针对每个所述字符,按照所述字符所关联的图元类绘制表示所述子结构的初始图元,所述图元类为依据所述子结构的属性构造的类;
目标图元确定子模块,用于对所述初始图元绘制轮廓、粘贴纹理,得到目标图元。
在本发明的一个实施例中,所述目标图元确定子模块包括:
样条线抽取单元,用于从所述初始图元中抽取样条线;
样条生成类确定单元,用于确定所述样条线的生成规则、拼接规则,为所述初始图元构建适配的分形样条生成类;
轮廓绘制单元,用于应用所述分形样条生成类对所述初始图元绘制轮廓;
纹理绘制单元,用于为绘制轮廓完成的初始图元粘贴纹理,得到目标图元。
本发明实施例所提供的仿真电子画的生成装置可执行本发明任意实施例所提供的仿真电子画的生成方法,具备执行方法相应的功能模块和有益效果。
实施例三
图4为本发明实施例三提供的一种计算机设备的结构示意图,如图4所示,该计算机设备包括处理器400、存储器401、通信模块402、输入装置403和输出装置404;计算机设备中处理器400的数量可以是一个或多个,图4中以一个处理器400为例;计算机设备中的处理器400、存储器401、通信模块402、输入装置403和输出装置404可以通过总线或其他方式连接,图4中以通过总线连接为例。
存储器401作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的仿真电子画的生成方法对应的模块(例如,如图3所示的仿真电子画的生成装置中的字符串设置模块301、字符串更新模块302、目标图元绘制模块303、图像输出模块304和图像仿真模块305)。处理器400通过运行存储在存储器401中的软件程序、指令以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现上述的仿真电子画的生成方法。
存储器401可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器401可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器401可进一步包括相对于处理器400远程设置的存储器,这些远程存储器可以通过网络连接至计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
通信模块402,用于与显示屏建立连接,并实现与显示屏的数据交互。
输入装置403可用于接收输入的数字或字符信息,以及产生与计算机设备的用户设置以及功能控制有关的键信号输入。
输出装置404可包括显示屏等显示设备。
需要说明的是,输入装置403和输出装置404的具体组成可以根据实际情况设定。
本实施例提供的计算机设备,可执行本发明任一实施例提供的仿真电子画的生成方法,具备相应的功能和有益效果。
实施例四
本发明实施例四还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一实施例的仿真电子画的生成方法。
该仿真电子画的生成方法包括:
针对具有自相似性的目标对象,为所述目标对象的结构设置字符串,所述字符串中的多个字符分别表示所述结构中彼此相似的子结构;
根据所述目标对象的生长规则对所述字符串进行多次更新;
在所述字符串的每一次更新中,遍历所述字符串中的所述字符、绘制表示所述子结构的目标图元;
当确认遍历完所述字符串中所有的所述字符时,输出由所述目标图元组合得到的图像;
将所述字符串在多次更新的过程中所获得的多帧所述图像按照时间序列进行展示,以仿真所述目标对象的生长过程。
当然,本发明实施例所提供的计算机可读存储介质,其计算机程序不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的仿真电子画的生成方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述仿真电子画的生成装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (8)
1.一种仿真电子画的生成方法,其特征在于,包括:
针对具有自相似性的目标对象,为所述目标对象的结构设置字符串,所述字符串中的多个字符分别表示所述结构中彼此相似的子结构;
根据所述目标对象的生长规则对所述字符串进行多次更新;
在所述字符串的每一次更新中,遍历所述字符串中的所述字符、绘制表示所述子结构的目标图元;
当确认遍历完所述字符串中所有的所述字符时,输出由所述目标图元组合得到的图像;
将所述字符串在多次更新的过程中所获得的多帧所述图像按照时间序列进行展示,以仿真所述目标对象的生长过程;
所述根据所述目标对象的生长规则对所述字符串进行多次更新,包括:
确定表示所述目标对象的生长规则的字符映射集合,所述字符映射集合包括多个将所述字符串内的字符替换成预设的字符子串的映射规则,每个所述映射规则表示一种所述生长规则;
当所述字符串满足预设的更新条件时,获取模拟所述目标对象的生长环境的环境参数;
依据所述环境参数从所述字符映射集合中挑选出一个所述映射规则对所述字符串进行更新;
所述依据所述环境参数从所述字符映射集合中挑选出一个所述映射规则对所述字符串进行更新,包括:
在所述字符映射集合中,按照所述环境参数计算每个所述映射规则的概率分布;
基于所述概率分布为所述字符串中的每个字符匹配在更新中使用的所述映射规则;
针对每个所述字符,从与所述字符匹配的映射规则中读取预设的字符子串,用所述字符子串替换所述字符;
当确定完成所述字符串中所有所述字符的替换操作时,确定所述字符串完成一次更新。
2.根据权利要求1所述的方法,其特征在于,所述针对具有自相似性的目标对象,为所述目标对象的结构设置字符串,包括:
获取具有自相似性的目标对象的结构;
将所述结构划分为多个彼此相似的子结构;
构造表示所述子结构的类、作为图元类;
使用字符关联所述图元类、确定由所述字符构成的字符串表示目标对象的结构的字符串。
3.根据权利要求2所述的方法,其特征在于,所述构造表示所述子结构的类、作为图元类,包括:
确定所述子结构的属性,所述属性至少包括所述子结构的体积、形状、姿态、颜色以及生长周期;
按照所述属性确定多个成员变量;
确定由多个所述成员变量构造的类为图元类。
4.根据权利要求1-3任一所述的方法,其特征在于,所述在所述字符串的每一次更新中,遍历所述字符串中的所述字符、绘制表示所述子结构的目标图元,包括:
在所述字符串的每一次更新中,遍历所述字符串中的所述字符;
针对每个所述字符,按照所述字符所关联的图元类绘制表示所述子结构的初始图元,所述图元类为依据所述子结构的属性构造的类;
对所述初始图元绘制轮廓、粘贴纹理,得到目标图元。
5.根据权利要求4所述的方法,其特征在于,所述对所述初始图元绘制轮廓、粘贴纹理,得到目标图元,包括:
从所述初始图元中抽取样条线;
确定所述样条线的生成规则、拼接规则,为所述初始图元构建适配的分形样条生成类;
应用所述分形样条生成类对所述初始图元绘制轮廓;
为绘制轮廓完成的初始图元粘贴纹理,得到目标图元。
6.一种仿真电子画的生成装置,其特征在于,包括:
字符串设置模块,用于针对具有自相似性的目标对象,为所述目标对象的结构设置字符串,所述字符串中的多个字符分别表示所述结构中彼此相似的子结构;
字符串更新模块,用于根据所述目标对象的生长规则对所述字符串进行多次更新;
目标图元绘制模块,用于在所述字符串的每一次更新中,遍历所述字符串中的所述字符、绘制表示所述子结构的目标图元;
图像输出模块,用于当确认遍历完所述字符串中所有的所述字符时,输出由所述目标图元组合得到的图像;
图像仿真模块,用于将所述字符串在多次更新的过程中所获得的多帧所述图像按照时间序列进行展示,以仿真所述目标对象的生长过程;
所述字符串更新模块包括:
字符映射集合确定子模块,用于确定表示所述目标对象的生长规则的字符映射集合,所述字符映射集合包括多个将所述字符串内的字符替换成预设的字符子串的映射规则,每个所述映射规则表示一种所述生长规则;
环境参数获取子模块,用于当所述字符串满足预设的更新条件时,获取模拟所述目标对象的生长环境的环境参数;
更新子模块,用于依据所述环境参数从所述字符映射集合中挑选出一个所述映射规则对所述字符串进行更新;
所述更新子模块包括:
概率分布计算单元,用于在所述字符映射集合中,按照所述环境参数计算每个所述映射规则的概率分布;
映射规则匹配单元,用于基于所述概率分布为所述字符串中的每个字符匹配在更新中使用的所述映射规则;
字符替换单元,用于针对每个所述字符,从与所述字符匹配的映射规则中读取预设的字符子串,用所述字符子串替换所述字符;
更新完成单元,用于当确定完成所述字符串中所有所述字符的替换操作时,确定所述字符串完成一次更新。
7.一种计算机设备,其特征在于,所述计算机设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-5中任一所述的仿真电子画的生成方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1-5中任一所述的仿真电子画的生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110603127.2A CN113298923B (zh) | 2021-05-31 | 2021-05-31 | 一种仿真电子画的生成方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110603127.2A CN113298923B (zh) | 2021-05-31 | 2021-05-31 | 一种仿真电子画的生成方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113298923A CN113298923A (zh) | 2021-08-24 |
CN113298923B true CN113298923B (zh) | 2023-11-07 |
Family
ID=77326480
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110603127.2A Active CN113298923B (zh) | 2021-05-31 | 2021-05-31 | 一种仿真电子画的生成方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113298923B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114546558B (zh) * | 2022-02-21 | 2024-06-04 | 金蝶云科技有限公司 | 图纸处理方法、装置、计算机设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017067456A1 (zh) * | 2015-10-20 | 2017-04-27 | 华中科技大学 | 一种识别图像中的字符串的方法和装置 |
CN108734751A (zh) * | 2018-05-08 | 2018-11-02 | 中山大学 | 一种基于随机分形的多孔介质细观结构模型生成方法 |
CN111797594A (zh) * | 2020-06-29 | 2020-10-20 | 深圳壹账通智能科技有限公司 | 基于人工智能的字符串处理方法及相关设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20130115770A (ko) * | 2012-04-13 | 2013-10-22 | 한국전자통신연구원 | 3차원 나무 영상 생성 장치 및 그 방법 |
-
2021
- 2021-05-31 CN CN202110603127.2A patent/CN113298923B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017067456A1 (zh) * | 2015-10-20 | 2017-04-27 | 华中科技大学 | 一种识别图像中的字符串的方法和装置 |
CN108734751A (zh) * | 2018-05-08 | 2018-11-02 | 中山大学 | 一种基于随机分形的多孔介质细观结构模型生成方法 |
CN111797594A (zh) * | 2020-06-29 | 2020-10-20 | 深圳壹账通智能科技有限公司 | 基于人工智能的字符串处理方法及相关设备 |
Non-Patent Citations (3)
Title |
---|
基于虚拟器官 L 系统的植物生长模拟;杨旨窈等;《软件》;正文第1-3章 * |
杨旨窈等.基于虚拟器官 L 系统的植物生长模拟 .《软件》.2018,正文第1-3章. * |
虚拟植物生长的双尺度自动机模型;赵星等;《计算机学报》;正文第2-3章 * |
Also Published As
Publication number | Publication date |
---|---|
CN113298923A (zh) | 2021-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Muhar | Three-dimensional modelling and visualisation of vegetation for landscape simulation | |
US9262853B2 (en) | Virtual scene generation based on imagery | |
Deussen et al. | Realistic modeling and rendering of plant ecosystems | |
Lim et al. | Three-dimensional visualization forest of landscapes by VRML | |
CN106251389A (zh) | 制作动画的方法和装置 | |
CN113593051B (zh) | 一种实景可视化方法及大坝可视化方法及计算机设备 | |
TW200945253A (en) | Geospatial modeling system providing simulated tree trunks and branches for groups of tree crown vegetation points and related methods | |
CN103984553A (zh) | 一种3d桌面显示方法和系统 | |
CN101251932A (zh) | 基于物理的植物叶子模拟方法 | |
CN111104702A (zh) | 一种基于ue4的堤防工程可视化仿真的实现方法 | |
CN113298923B (zh) | 一种仿真电子画的生成方法、装置、设备及存储介质 | |
Jianbo | VR-based Urban Landscape Artistic Design. | |
CN110400366B (zh) | 一种基于OpenGL的实时洪水灾害可视化仿真方法 | |
CN104978765B (zh) | 基于草图的树木枝干三维模型构建方法 | |
Sen et al. | Modelling trees and their interaction with the environment: A survey | |
Williams et al. | A time-line approach for the generation of simulated settlements | |
CN113160368A (zh) | 动画数据的处理方法及装置 | |
CN111563963A (zh) | 一种龙卷风气象模拟方法、智能终端及存储介质 | |
CN112132938A (zh) | 模型元素的形变处理、画面渲染方法、装置、设备及介质 | |
Wells | Generating enhanced natural environments and terrain for interactive combat simulations (genetics) | |
US10140758B1 (en) | Texturing models of structures | |
KR20130073523A (ko) | 사실적인 실시간 모델링 시스템 및 방법 | |
Lu et al. | Design and implementation of three-dimensional game engine | |
Wang et al. | Design and implementation for virtual forest scene synthesis-editing system | |
Liu et al. | Three-Dimensional Modeling Technology of Virtual Plant in Digital Landscape |
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 |