CN108062758A - 一种基于图像分割算法的人群生成仿真方法及系统 - Google Patents
一种基于图像分割算法的人群生成仿真方法及系统 Download PDFInfo
- Publication number
- CN108062758A CN108062758A CN201810161589.1A CN201810161589A CN108062758A CN 108062758 A CN108062758 A CN 108062758A CN 201810161589 A CN201810161589 A CN 201810161589A CN 108062758 A CN108062758 A CN 108062758A
- Authority
- CN
- China
- Prior art keywords
- model
- point
- texture mapping
- new
- mapping
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/136—Segmentation; Edge detection involving thresholding
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computer Graphics (AREA)
- Image Generation (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于图像分割算法的人群生成仿真方法及系统,构建人群仿真三维人物模型或者从人群仿真人物模型库中选择已有三维人物模型;对三维人物模型的外观进行纹理贴图绘制并保存纹理贴图;展开原始纹理贴图,将展开后的原始纹理贴图存储到人物模型纹理贴图库中,并从人物模型纹理贴图库中提取纹理贴图;使用图像分割算法对纹理贴图进行分割处理,删除纹理贴图中多余的边和点,得到新的纹理贴图;将新的纹理贴图映射到三维人物模型上;删除三维人物模型多余的边和点,生成新人物模型;新人物模型存储在人物精简模型库中;将原始纹理贴图赋予新人物模型,对带有纹理贴图的新人物模型进行保存,存储到完整人物库中。提高人群仿真的计算效率。
Description
技术领域
本发明涉及人群仿真技术领域,特别涉及一种基于图像分割算法的人群生成仿真方法及系统。
背景技术
现如今对人群仿真技术的关注度越来越高,同时对人群仿真的应用也越来越多,由于人口数目的不断增加,而且重点公共场合的人群密度较高,所以大量的人群带来的各种问题值得重视。目前人群仿真被应用在很多的领域,诸如人群疏散的路径规划、公共场所的人员流动、人口聚集地人群仿真等。
目前社会对人群仿真的需求日益增加,尤其对高仿真度,高人群多样性,高交互性,高计算效率的人群仿真需求量逐渐增大,现在对人群的仿真已经比较真实可观。为了丰富人群多样性,通常在人群的外观多样性和动作多样性方面着手,比如不同的虚拟人物可以有不同的体型特征,如高矮胖瘦等,不同的人物可以有不同衣着打扮等。在动作多样性方面,可以给人物不同的行为动作或者不同的人物在执行同一动作的时候有细微的差别。人群多样性的增加可以提高角色的独特性从而提高人群仿真的真实感。
当前人群仿真的人群构建会占用大量系统资源,降低人群仿真计算效率。在提高人群仿真人群多样性方面,目前已经有很多的成果,虽然效果明显,但在提高人群多样性的同时往往会消耗掉大量的系统资源,降低计算效率,因此尚缺乏既能提高人群多样性又能高效利用系统资源保证较高的计算效率的方法。
发明内容
为了解决以往在构建人群仿真中的人群或者在提高人群多样性的时候会增大系统资源的开销从而降低计算效率的缺点,本发明提出一种基于图像分割算法的人群生成仿真方法及系统。
一种基于图像分割算法的人群生成仿真方法,包括:
步骤(1):构建人群仿真三维人物模型或者从人群仿真人物模型库中选择已有三维人物模型;
步骤(2):对三维人物模型的外观进行纹理贴图绘制并保存纹理贴图;或者,从人物纹理贴图库中调用已有的纹理贴图,使用已有的纹理贴图对三维人物模型的外观进行纹理贴图绘制并保存纹理贴图;保存的纹理贴图即为原始纹理贴图;
步骤(3):展开原始纹理贴图,将展开后的原始纹理贴图存储到人物模型纹理贴图库中,并从人物模型纹理贴图库中提取纹理贴图;
步骤(4):使用图像分割算法对纹理贴图进行分割处理,删除纹理贴图中多余的边和点,得到新的纹理贴图;
步骤(5):将新的纹理贴图映射到三维人物模型上;
步骤(6):删除三维人物模型多余的边和点,生成新人物模型;新人物模型存储在人物精简模型库中;
步骤(7):将原始纹理贴图赋予新人物模型,对带有纹理贴图的新人物模型进行保存,存储到完整人物库中。
所述步骤(1)的构建人群仿真三维人物模型步骤为:通过人工建模的方式获得三维人物模型或者通过对人进行三维扫描从而获得三维人物模型。
所述步骤(2)的人物纹理贴图库:用于存储修饰人物模型的表面的纹理贴图,所述纹理贴图,包括:原始人物模型的纹理贴图以及经过处理的人物模型的纹理贴图。人物模型的纹理贴图通过手工绘制或者用纹理贴图绘制软件进行绘制。
所述步骤(4)使用图像分割算法对纹理贴图进行分割处理的步骤为:
首先采用区域生长算法进行初步分割,然后使用等周图像分割算法进行精细分割。
采用区域生长算法进行初步分割:
先对待分割的区域找出一个种子像素作为生长起点,然后将种子像素周围设定范围邻域中与种子像素具有相似性质的像素合并到种子像素所在的区域中,再将合并到种子像素所在的区域中的像素作为新的种子像素重复以上操作,直到没有满足条件的像素能被包括进来为止,从而完成对图像的初步分割。
所述具有相似性质,是指种子像素周围设定范围邻域中的某个像素的灰度值与该像素所处邻域的灰度平均值作差,将差值与邻域的背景灰度值进行比较,若差值小于邻域的背景灰度值,则表示当前像素与种子像素相似。
使用等周图像分割算法进行精细分割:
将采用区域生长算法进行初步分割得到的图像中每个区域看成图的顶点,相邻区域使用边进行连接,建立新的浓缩图,计算区域分割所得每个区域的平均灰度,将每个区域的平均灰度值作为边的权值,计算所有边的权值,并建立稀疏拉普拉斯矩阵;
选取平均灰度最大的区域作为新的基点;
根据新的基点去掉对应矩阵的行和列,得到新矩阵;
设定阈值,通过与阈值进行比较,如果点的像素小于设定阈值,则当前节点属于前景,佛足额当前节点属于背景;对每个点进行一次分割,把图像一分为二;
递归分割,直到子分割的等周数大于设定的临界参数为止,获得最终的分割结果。
使用图像分割算法提取出图像目标,提取的图像目标为纹理贴图中的边和点,所述边和点分别对应人物模型中的边和点,然后删除多余的边和点,以达到精简人物模型纹理贴图的作用。既避免了区域生长算法的过分割,又比直接使用等周图像分割算法更为精确。
所述步骤(4)删除纹理贴图中多余的边和点的步骤为:
步骤(401):寻找外围轮廓边缘的点,查看各点与外围轮廓的边形成的夹角内角的度数,并且比较外围轮廓的点与外围轮廓的边生成的夹角的内角度数的大小,选取内角度数最小的点作为第一点;
步骤(402):保留第一点,并且该点不进行标记,沿外围轮廓边缘标记与第一点相邻的点,然后依次隔一个标记一个点,直到将整个外围轮廓边缘上的点按规则标记完;
步骤(403):以外围轮廓上的未标记的点为起点,沿与之相连的线到下一点,并且标记从该点通过每条直接与之相连的连线能到达的第一个点;
步骤(404):以标记点为起始点,沿与之相连的线到下一点,并且不标记从该点通过每条直接与之相连的连线能到达的第一个点;然后依次隔一个标记一个点;
步骤(405):通过步骤(401)到步骤(404):获得标记点,并规定当某点周围只有一个不能确定是否为标记点时,那么该某点为不标记点,删除两端都是标记点的线段,并且将标记点也删除。
步骤(406):在对外围轮廓处理完成后,向内部重新勾画新的内部轮廓,重复步骤(401)到步骤(405)。
所述步骤(5)的步骤为:将新的纹理贴图的边和点分别与三维人物模型的边和点一一对应。
所述步骤(6)的步骤为:针对原始三维人物模型,保留原始三维人物模型跟新的纹理贴图对应的边和点,删除原始三维人物模型中没有跟纹理贴图进行对应的边和点,保证处理后的三维人物模型的边和点跟新的纹理贴图中的边和点一一对应,不存在三维人物模型中的边和点多于或者少于新纹理贴图中的边和点的情况。
所述步骤(7)的步骤为:将人物模型纹理贴图库中的纹理贴图附着在人物精简模型库的新人物模型上。
将原始的高精度的三维人物模型和进行精简的新人物模型,同时放在三维空间的同一个位置,将两个模型对齐放置;将新人物模型使用映射,并把映射的映射源规定为原始的高精度三维人物模型;然后修改具有映射的新人物模型的映射框架,确保新人物模型的映射框架完全包裹高精度的三维人物模型的所有部分;然后对具有映射的精简的新人物模型进行烘焙,将高精度的三维人物模型的各个细节信息映射到精简的新人物模型上,所述细节信息,包括Diffuse、Specular或Normal。
一种基于图像分割算法的人群生成仿真系统,包括:
人物模型构建模块,用于构建人群仿真三维人物模型或者从人群仿真人物模型库中选择已有三维人物模型;
纹理贴图模块,用于对三维人物模型的外观进行纹理贴图绘制并保存纹理贴图;或者,从人物纹理贴图库中调用已有的纹理贴图,对三维人物模型的外观进行纹理贴图绘制并保存纹理贴图;保存的纹理贴图即为原始纹理贴图;
纹理贴图展开提取模块,用于展开三维人物模型的纹理贴图,将展开后的三维人物模型的纹理贴图存储到人物模型纹理贴图库中,并从人物模型纹理贴图库中提取纹理贴图;
纹理贴图处理模块,用于使用图像分割算法对纹理贴图进行分割处理,删除纹理贴图中多余的边和点,得到新的纹理贴图;
纹理贴图模型映射模块,用于将新的纹理贴图映射到三维人物模型上;
人物模型处理模块,用于删除三维人物模型多余的边和点,生成新人物模型;新人物模型存储在人物精简模型库中;
模型附图模块,用于将原始纹理贴图赋予新人物模型,对带有纹理贴图的新人物模型进行保存,存储到完整人物库中。
所述人群仿真人物模型库,用于存储三维人物模型,通过人工建模的方式获得三维人物模型或者通过对人进行三维扫描从而获得三维人物模型。
所述人物纹理贴图库,用于存储修饰人物模型的表面的纹理贴图,所述纹理贴图,包括:原始人物模型的纹理贴图以及经过处理的人物模型的纹理贴图。人物模型的纹理贴图通过手工绘制或者用纹理贴图绘制软件进行绘制。
所述对纹理贴图进行分割处理:
使用图像分割算法提取出图像目标,提取的图像目标为纹理贴图中的边和点,所述边和点分别对应人物模型中的边和点,然后删除多余的边和点,以达到精简人物模型纹理贴图的作用。
所述将处理后的纹理贴图映射到三维人物模型上,是将处理后的纹理贴图的边和点分别与三维人物模型的边和点一一对应。
所述删除三维人物模型多余的边和点,生成新模型:
针对原始三维人物模型,保留原始三维人物模型跟新的纹理贴图对应的边和点,删除原始三维人物模型中没有跟纹理贴图进行对应的边和点,保证处理后的三维人物模型的边和点跟新的纹理贴图中的边和点一一对应,不存在三维人物模型中的边和点多于或者少于新纹理贴图中的边和点的情况。
所述将原始纹理贴图赋予新模型,是:
将人物模型纹理贴图库中的纹理贴图附着在人物精简模型库的新人物模型上。
将原始的高精度的三维人物模型和进行精简的新人物模型,同时放在三维空间的同一个位置,将两个模型对齐放置;将新人物模型使用映射,并把映射的映射源规定为原始的高精度三维人物模型;然后修改具有映射的新人物模型的映射框架,确保新人物模型的映射框架完全包裹高精度的三维人物模型的所有部分;然后对具有映射的精简的新人物模型进行烘焙,将高精度的三维人物模型的各个细节信息映射到精简的新人物模型上,所述细节信息,包括Diffuse、Specular或Normal。
采用本发明的技术方案的有益效果是:
1、在基本保持原有人群仿真人群多样性的情况下,有效的降低了系统资源的使用,提高了原有人群仿真的计算效率。
2、相比于其他通过提高三维人物模型的复杂度来提高人群多样性的方法节省更多系统资源且能保持较高的计算效率。
3、创建了丰富的数据库。随着系统的产生和使用,系统的数据库中的内容会随着时间的变化收集更多数据从而变得越来越丰富,为以后的仿真带来更丰富的数据库。
4、本发明为已有的人群仿真人群模型进行优化,从而在基本达到原有人群仿真人群模型多样性的基础上,降低系统资源的使用,进而增加原人群仿真的计算效率,达到高计算效率的效果。
5、本发明创建了一个人群仿真的数据库。各个模块都会收集大量的关于人群仿真人群的数据和信息,并且随着系统运作时间的增长,该系统的数据库会变得非常丰富和强大,从而为以后的人群仿真提供丰富的数据库。
附图说明
构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。
图1为本发明结构示意图。
图2为本发明流程图。
图3为选定模型图。
图4为所采用的纹理贴图。
图5为提取出的纹理贴图。
图6-1是对纹理贴图进行处理后生成的灰度直方图。
图6-2是将纹理贴图二值化的图像。
图7为完成删除操作后的纹理贴图。
图8为删除原始模型多余边和点后得到模型。
图9为将原始模型的细节信息以及绘制的贴图赋予新模型后的效果。
图10为原始模型附着原始纹理贴图的效果。
图11为处理后的效果。
图12为原始效果。
具体实施方式
应该指出,以下详细说明都是例示性的,旨在对本申请提供进一步的。除非另有指明,本文使用的所有技术和科学术语具有与本申请所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
实施例1:
如图1所示,一种基于图像分割算法的人群生成仿真系统,包括:人群仿真人物模型库、人物纹理贴图库、人物模型纹理贴图库、纹理贴图处理模块、纹理贴图模型映射模块、人物模型处理模块、人物精简模型库、模型附图模块和完整人物库。
人群仿真人物模型库,存储大量的人群仿真所需要的人群的模型,包括低级模型和高级模型以及为了提高人群仿真人群多样性而进行真实化、个性化、复杂化等处理的人物模型。该人群仿真人物模型库中的人物模型可以通过多种方式获得,可通过人工建模的方式或者通过三维扫描工具对人进行扫描从而获得人物模型,该人物模型库中应尽量包含大量的人物模型,以满足人群仿真中对人物模型的需要。
人物纹理贴图库,包含原有人物模型的纹理贴图以及为了提高人群仿真人群多样性而进行真实化、个性化、复杂化等处理的人物模型的纹理贴图。人物模型的纹理贴图可通过手工绘制或者用纹理贴图绘制软件进行绘制。该人物纹理贴图库应包含大量的可以用来对人物表面进行修饰的纹理贴图,以满足人物模型表面的纹理贴图的多样性。
人物模型纹理贴图库,包含人物模型的纹理贴图,作用是对人群仿真人物模型库中选定的人物模型进行纹理贴图展开,可通过各种软件进行拆分,并将展开后的纹理贴图存储到该人物模型纹理贴图库,以方便以后使用。
纹理贴图处理模块,用于处理人物模型的纹理贴图,作用是从人物模型纹理贴图库中调取人物模型纹理贴图并生成图片,并对该纹理贴图进行图像分割,可以使用多种图像分割算法提取出目标图像,提取目标为该纹理贴图中的边和点,这些边和点分别对应人物模型中的边和点,然后在该纹理贴图像处理模块中对各条边和各个点进行简化处理操作,删除多余的边和点,以达到精简人物模型纹理贴图的作用。该步骤图像分割算法采用首先基于区域生长算法进行初步分割,然后使用等周分割进行细分的方法。
首先基于区域生长算法进行初步分割;在初步分割完成后将一些过于琐碎的区域(总像素少于10)简单地并入到与其邻接的相似度最接近的一个区域中,由于这些区域的数量比较多,按照此方法可以避免复杂的计算量,同时也影响不到图像中的主要信息,而且可以使得接下来的等周分割算法求解规模减小,递归次数显著降低,从而提高速度与质量。
首先基于区域生长算法进行初步分割:
步骤(4-1-1):先对种子进行选择,种子的选择要在灰度值低的背景区域上进行,本实施例使用带分割图像的水平和竖直两个方向的投影直方图求取种子点,投影直方图就是每一行或者每一列上的每一个像素点的灰度值的总和,即:
sum_xi为竖直方向的投影直方图,sum_yj为水平方向的投影直方图。其中0≤i<M,0≤j<N,M为图像的宽度,N为图像的高度。得到投影直方图以后,分别求取水平,竖直两个方向上投影直方图的最小值点,并将其交叉点设定为种子点,则种子点(i0,j0)的求取公式如下:
步骤(4-1-2):以该种子像素为中心检查它的邻域像素,将考核像素的灰度值与目标灰平均值及背景灰度值进行比较,即判断下面的式子是否成立:
|I(x,y)-Mean|<|I(x,y)-255|
其中,I(x,y)为点(x,y)的灰度值,Mean为当前属于目标的像素点的平均灰度值:
M0为当前属于目标的像素的总数。如果该式子成立,则将点(x,y)并入目标区域。
步骤(4-1-3):以新合并的像素为中心,返回到步骤(4-1-2),检查新像素的邻域,直到区域不能进一步扩张。
步骤(4-1-4):返回到步骤(4-1-1),继续扫描直到不能发现没有归属的像素,则结束整个生长过程。为了加快分割速度,首先是不考虑生长边界的曲率对生长速度的影响,其次是将基于边界强度变化的生长速度函数用一个距离函数代替,方法如下:设s0是种子点,d(s)是距离函数,R是待扩展的点的集合,为点s的灰度,为已扩展的点的颜色的平均值。
(a)令R={s0},d(s0)=0,其余的点的d值为+∞;
(b)若R为空,或是R中的点的最小d值大于阈值参数,则算法结束;
否则进行如下几步:
(1)从R中取出d值最小的点s,标记其为已扩展点,更新
(2)检查点s的连通域,若其中点q不是已扩展点,则计算若d<d(q),则d(q)←d,并将q放入R。
其中punish是一个惩罚函数,其目的是将生长边界的强度变化体现到距离函数d中。这样当边界颜色值变化越大,生长的速度越慢。在算法实现中,将punish函数定义成为一个二值函数即可产生比较好的效果。
在区域生长完成后将一些过于琐碎的区域(总像素少于10)简单地并入到与其邻接的相似度最接近的一个区域中,由于这些区域的数量比较多,按照此方法可以避免复杂的计算量,同时也影响不到图像中的主要信息,而且可以使得接下来的等周分割算法求解规模减小,递归次数显著降低,从而提高速度与质量。
使用等周分割进行细分:
步骤(4-2-1):将区域初步分割而成的图像中每个区域看成图的顶点,就可以建立新的浓缩图Gl=(Vl,El)。步骤(4-2-2):采用式子wij=exp(-β(Ii-Ij)2),其中β是可选参数,及是新图顶点的强度,在这里取每个区域的平均灰度。计算所有边的权值。
步骤(4-2-3):建立新的矩阵L1。
步骤(4-2-4):计算区域分割所得每个区域的平均灰度,选取平均灰度最大的区域作为新的基点,
步骤(4-2-5):根据去除对应矩阵的行和列得到通过计算得到
步骤(4-2-6):根据低等周率的分割条件对各点进行分割,设定阈值α,对每个点,根据完成一次分割。
步骤(4-2-7):递归执行,直到小于分割条件。
使用上述方法进行分割,既避免了区域生长算法的过分割,又比直接使用等周分割方法分割的更为精确。
纹理贴图模型映射模块,将纹理贴图映射到原始的人物模型上,作用是使用人物模型纹理贴图经过纹理贴图处理模块处理后得到的新的纹理贴图,映射到原始模型上,并和原始模型中的边和点进行对应,并将映射好了的模型保存,以便其他模块调用。
人物模型处理模块,用于处理映射后的人物模型,作用是对纹理贴图模型映射模块映射好了的人物模型进行处理,保留原始模型跟新的纹理贴图对应的边和点,删除原始模型中没有跟纹理贴图进行对应的边和点,保证处理后的模型的边和点跟新的纹理贴图中的边和点一一对应,不存在模型中的边和点多于或者少于新纹理贴图中的边和点的情况。
人物精简模型库,包含人物精简后的模型,用来存储经过人物模型处理模块处理后的模型,该模块存储有大量的人物模型处理模块处理后的模型,以方便其他模块进行调用。
模型附图模块,调取人物纹理贴图库中的人物纹理贴图和人物精简模型库中的人物模型,并将人物纹理贴图库中的人物纹理贴图附着在人物精简模型库中的人物模型上。将原始的较高精度的模型和进行优化了的精简模型同时放在三维空间的同一个位置,尽可能的将两个模型对齐放置。将精简的模型使用映射,并把映射的映射源规定为原始的高精度模型。然后修改具有映射的精简模型的映射框架,确保精简模型的映射框架可以完全包裹高精度模型的所有部分。然后对具有映射的精简模型进行烘焙,将高精度模型的各个细节包括Diffuse、Specular、Normal等信息映射到精简模型上。并将原始纹理贴图附着到精简模型上。
完整人物库,用来存储带纹理贴图的完整人物模型,用于存储模型附图模块处理后的人物模型,该完整人物库模块存储有大量的带有纹理贴图的人物模型,以方便人群仿真系统的调用。
本实施例是对人群仿真人物模型库中的人物模型进行处理,包括低级模型和高级模型以及为了提高人群仿真人群多样性而进行真实化、个性化、复杂化等处理的人物模型。在基本保持原有人群仿真人群多样性的情况下,有效的降低了系统资源的使用,提高了原有人群仿真的计算效率。再者相比于其他通过提高三维人物模型的复杂度以及贴图纹理的复杂度来提高人群多样性的方法节省更多系统资源且能保持较高的计算效率。
实施例2:
本实施例按照以下步骤进行,具体流程如图2所示。本实施例基于计算机系统,使用maya、matlab等工具进行操作。
本实施例是对原有人群仿真系统中的人物模型库中的人物模型按照本发明的系统和方法进行的人物模型简化处理,从而达到为已有的人群仿真人群模型进行优化,在基本达到原有人群仿真人群模型多样性的基础上,降低系统资源的使用,进而增加原人群仿真的计算效率,达到高计算效率的效果。
步骤(1):调用人群仿真人物模型。调用的模型如图3所示。
步骤(2):对人物模型的外观进行纹理贴图绘制并保存或者使用已有的纹理贴图。所采用的纹理贴图如图4所示。
步骤(3):展开三维模型的纹理贴图并提取纹理贴图。提取出的纹理贴图如图5所示。
步骤(4):选择某种图像分割算法对纹理贴图进行分割。该实施例使用的是结合空间信息的全局分割方法,二维Fishier准则函数算法,将Fisher准则函数作为判决函数时,分割效果较好,可以分割出比例悬殊的小目标,但由于该算法仅仅利用了像素的灰度信息,当图像中噪声较强时,分割效果不理想。因此,为了能够较好的去除噪声,准确分割出裂纹,二维Fisher准则函数分割算法不仅利用像素的灰度信息,而且利用像素的空间信息,以二维直方图为基础选取最佳分割阈值。
设图像的灰度级为L(L=0,1,...,255)f(x,y)为图像在点(x,y)的灰度值,g(x,y)为以点(x,y)为中心,k×k邻域内的平均灰度值,具体表达式为:
其中,1≤x≤M,1≤y≤N,M、N为图像的宽度和高度,k一般取3。定义二维直方图N(i,j)为f(x,y)=i且g(x,y)=j的像素个数的集合。根据二维直方图特征,定义二维Fisher准则判决函数为:
其中
在二维直方图上选择不同的阈值(s,t),当JF(s,t)最大时,即为最佳分割阈值。
在matlab中对图5进行处理生成灰度直方图如图6-1所示,并将纹理贴图二值化如图6-2所示。
步骤(5):整理纹理贴图的结构并删除多余的边和点。以头部轮廓为例,按某一简化方法进行删除,选择如下方法:
步骤(5-1)寻找头部轮廓边缘的点,查看各点与外部轮廓的边形成的夹角内角的度数,并且比较外部轮廓的点与轮廓的边生成的夹角的内角度数的大小,选取内角度数最小的点作为第一点。
步骤(5-2)保留步骤(5-1)的第一点,并且该点不进行标记,沿轮廓边缘标记与第一点相邻的点,然后依次隔一个标记一个点,直到将整个轮廓边缘上的点按规则标记完。
步骤(5-3)以轮廓上的未标记的点为起点,沿与之相连的线到下一点,并且标记从该点通过每条直接与之相连的连线能到达的第一个点。
步骤(5-4)以标记点为起始点,沿与之相连的线到下一点,并且不标记从该点通过每条直接与之相连的连线能到达的第一个点。
步骤(5-5)通过步骤(5-1)-步骤(5-4)获得标记点,并规定当某点周围只有一个不能确定是否为标记点时,那么该某点为不标记点,删除两端都是标记点的线段,并且将标记点也删除。
步骤(5-6)在对外围轮廓处理完成后,向内部重新勾画新的内部轮廓,重复(5-1)到(5-5)步骤。
完成删除操作后的纹理贴图如图7所示。
步骤6:将纹理贴图映射到人物模型上。
步骤7:删除模型多余边和点生成新模型。删除原始模型多余边和点后得到如图8所示的模型。
步骤8:将原始模型的细节信息以及绘制的贴图赋予新模型。调取人物纹理贴图库中的人物纹理贴图和人物精简模型库中的人物模型,并将人物纹理贴图库中的人物纹理贴图附着在人物精简模型库中的人物模型上。将原始的较高精度的模型和进行优化了的精简模型同时放在三维空间的同一个位置,尽可能的将两个模型对齐放置。将精简的模型使用映射,并把映射的映射源规定为原始的高精度模型。然后修改具有映射的精简模型的映射框架,确保精简模型的映射框架可以完全包裹高精度模型的所有部分。然后对具有映射的精简模型进行烘焙,将高精度模型的各个细节包括Diffuse、Specular、Normal等信息映射到精简模型上。并将原始纹理贴图附着到精简模型上。新模型如图9.
步骤9:保存处理后带有纹理贴图的新模型。
图10为原始模型附着原始纹理贴图的效果,图9为通过本发明的系统和方法处理后的效果,基本和图10效果相同,但是经过本发明的系统和方法处理后的人物模型减少了大量的边和点以及面,图11为处理后的效果,图12为原始效果。因此,通过本发明的系统和方法处理后,可以得到与原始模型基本相同的视觉效果,同时大大的减少了系统资源的使用,提高了人群仿真的计算效率,效果明显。
实施例3:
本发明还提供了一种人群仿真数据库。该发明建立以后,该发明的人群仿真人物模型库、人物纹理贴图库、人物模型纹理贴图库、纹理贴图处理模块、纹理贴图模型映射模块、人物模型处理模块、人物精简模型库、模型附图模块等模块都会收集大量的关于人群仿真人群的数据和信息,并且随着系统运作时间的增长,该系统的数据库会变得非常丰富和强大,从而为以后的人群仿真提供丰富的数据库。并且会随着时间的推移变得更加的丰富,对以后人群仿真有极大的价值和意义。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种基于图像分割算法的人群生成仿真方法,其特征是,包括:
步骤(1):构建人群仿真三维人物模型或者从人群仿真人物模型库中选择已有三维人物模型;
步骤(2):对三维人物模型的外观进行纹理贴图绘制并保存纹理贴图;或者,从人物纹理贴图库中调用已有的纹理贴图,使用已有的纹理贴图对三维人物模型的外观进行纹理贴图绘制并保存纹理贴图;保存的纹理贴图即为原始纹理贴图;
步骤(3):展开原始纹理贴图,将展开后的原始纹理贴图存储到人物模型纹理贴图库中,并从人物模型纹理贴图库中提取纹理贴图;
步骤(4):使用图像分割算法对纹理贴图进行分割处理,删除纹理贴图中多余的边和点,得到新的纹理贴图;
步骤(5):将新的纹理贴图映射到三维人物模型上;
步骤(6):删除三维人物模型多余的边和点,生成新人物模型;新人物模型存储在人物精简模型库中;
步骤(7):将原始纹理贴图赋予新人物模型,对带有纹理贴图的新人物模型进行保存,存储到完整人物库中。
2.如权利要求1所述的一种基于图像分割算法的人群生成仿真方法,其特征是,所述步骤(1)的构建人群仿真三维人物模型步骤为:通过人工建模的方式获得三维人物模型或者通过对人进行三维扫描从而获得三维人物模型;
所述步骤(2)的人物纹理贴图库:用于存储修饰人物模型的表面的纹理贴图,所述纹理贴图,包括:原始人物模型的纹理贴图以及经过处理的人物模型的纹理贴图;人物模型的纹理贴图通过手工绘制或者用纹理贴图绘制软件进行绘制。
3.如权利要求1所述的一种基于图像分割算法的人群生成仿真方法,其特征是,所述步骤(4)使用图像分割算法对纹理贴图进行分割处理的步骤为:
首先采用区域生长算法进行初步分割,然后使用等周图像分割算法进行精细分割。
4.如权利要求3所述的一种基于图像分割算法的人群生成仿真方法,其特征是,
采用区域生长算法进行初步分割:
先对待分割的区域找出一个种子像素作为生长起点,然后将种子像素周围设定范围邻域中与种子像素具有相似性质的像素合并到种子像素所在的区域中,再将合并到种子像素所在的区域中的像素作为新的种子像素重复以上操作,直到没有满足条件的像素能被包括进来为止,从而完成对图像的初步分割;
所述具有相似性质,是指种子像素周围设定范围邻域中的某个像素的灰度值与该像素所处邻域的灰度平均值作差,将差值与邻域的背景灰度值进行比较,若差值小于邻域的背景灰度值,则表示当前像素与种子像素相似;
使用等周图像分割算法进行精细分割:
将采用区域生长算法进行初步分割得到的图像中每个区域看成图的顶点,相邻区域使用边进行连接,建立新的浓缩图,计算区域分割所得每个区域的平均灰度,将每个区域的平均灰度值作为边的权值,计算所有边的权值,并建立稀疏拉普拉斯矩阵;选取平均灰度最大的区域作为新的基点;根据新的基点去掉对应矩阵的行和列,得到新矩阵;
设定阈值,通过与阈值进行比较,如果点的像素小于设定阈值,则当前节点属于前景,佛足额当前节点属于背景;对每个点进行一次分割,把图像一分为二;
递归分割,直到子分割的等周数大于设定的临界参数为止,获得最终的分割结果。
5.如权利要求1所述的一种基于图像分割算法的人群生成仿真方法,其特征是,
所述步骤(4)删除纹理贴图中多余的边和点的步骤为:
步骤(401):寻找外围轮廓边缘的点,查看各点与外围轮廓的边形成的夹角内角的度数,并且比较外围轮廓的点与外围轮廓的边生成的夹角的内角度数的大小,选取内角度数最小的点作为第一点;
步骤(402):保留第一点,并且该点不进行标记,沿外围轮廓边缘标记与第一点相邻的点,然后依次隔一个标记一个点,直到将整个外围轮廓边缘上的点按规则标记完;
步骤(403):以外围轮廓上的未标记的点为起点,沿与之相连的线到下一点,并且标记从该点通过每条直接与之相连的连线能到达的第一个点;
步骤(404):以标记点为起始点,沿与之相连的线到下一点,并且不标记从该点通过每条直接与之相连的连线能到达的第一个点;然后依次隔一个标记一个点;
步骤(405):通过步骤(401)到步骤(404):获得标记点,并规定当某点周围只有一个不能确定是否为标记点时,那么该某点为不标记点,删除两端都是标记点的线段,并且将标记点也删除;
步骤(406):在对外围轮廓处理完成后,向内部重新勾画新的内部轮廓,重复步骤(401)到步骤(405)。
6.如权利要求1所述的一种基于图像分割算法的人群生成仿真方法,其特征是,
所述步骤(5)的步骤为:将新的纹理贴图的边和点分别与三维人物模型的边和点一一对应;
所述步骤(6)的步骤为:针对原始三维人物模型,保留原始三维人物模型跟新的纹理贴图对应的边和点,删除原始三维人物模型中没有跟纹理贴图进行对应的边和点,保证处理后的三维人物模型的边和点跟新的纹理贴图中的边和点一一对应,不存在三维人物模型中的边和点多于或者少于新纹理贴图中的边和点的情况。
7.如权利要求1所述的一种基于图像分割算法的人群生成仿真方法,其特征是,
所述步骤(7)的步骤为:将人物模型纹理贴图库中的纹理贴图附着在人物精简模型库的新人物模型上;
将原始的高精度的三维人物模型和进行精简的新人物模型,同时放在三维空间的同一个位置,将两个模型对齐放置;将新人物模型使用映射,并把映射的映射源规定为原始的高精度三维人物模型;然后修改具有映射的新人物模型的映射框架,确保新人物模型的映射框架完全包裹高精度的三维人物模型的所有部分;然后对具有映射的精简的新人物模型进行烘焙,将高精度的三维人物模型的各个细节信息映射到精简的新人物模型上,所述细节信息,包括Diffuse、Specular或Normal。
8.一种基于图像分割算法的人群生成仿真系统,其特征是,包括:
人物模型构建模块,用于构建人群仿真三维人物模型或者从人群仿真人物模型库中选择已有三维人物模型;
纹理贴图模块,用于对三维人物模型的外观进行纹理贴图绘制并保存纹理贴图;或者,从人物纹理贴图库中调用已有的纹理贴图,对三维人物模型的外观进行纹理贴图绘制并保存纹理贴图;保存的纹理贴图即为原始纹理贴图;
纹理贴图展开提取模块,用于展开三维人物模型的纹理贴图,将展开后的三维人物模型的纹理贴图存储到人物模型纹理贴图库中,并从人物模型纹理贴图库中提取纹理贴图;
纹理贴图处理模块,用于使用图像分割算法对纹理贴图进行分割处理,删除纹理贴图中多余的边和点,得到新的纹理贴图;
纹理贴图模型映射模块,用于将新的纹理贴图映射到三维人物模型上;
人物模型处理模块,用于删除三维人物模型多余的边和点,生成新人物模型;新人物模型存储在人物精简模型库中;
模型附图模块,用于将原始纹理贴图赋予新人物模型,对带有纹理贴图的新人物模型进行保存,存储到完整人物库中。
9.如权利要求8所述的一种基于图像分割算法的人群生成仿真系统,其特征是,
所述删除三维人物模型多余的边和点,生成新模型:
针对原始三维人物模型,保留原始三维人物模型跟新的纹理贴图对应的边和点,删除原始三维人物模型中没有跟纹理贴图进行对应的边和点,保证处理后的三维人物模型的边和点跟新的纹理贴图中的边和点一一对应,不存在三维人物模型中的边和点多于或者少于新纹理贴图中的边和点的情况。
10.如权利要求8所述的一种基于图像分割算法的人群生成仿真系统,其特征是,
所述将原始纹理贴图赋予新模型,是:
将人物模型纹理贴图库中的纹理贴图附着在人物精简模型库的新人物模型上;
将原始的高精度的三维人物模型和进行精简的新人物模型,同时放在三维空间的同一个位置,将两个模型对齐放置;将新人物模型使用映射,并把映射的映射源规定为原始的高精度三维人物模型;然后修改具有映射的新人物模型的映射框架,确保新人物模型的映射框架完全包裹高精度的三维人物模型的所有部分;然后对具有映射的精简的新人物模型进行烘焙,将高精度的三维人物模型的各个细节信息映射到精简的新人物模型上,所述细节信息,包括Diffuse、Specular或Normal。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810161589.1A CN108062758B (zh) | 2018-02-27 | 2018-02-27 | 一种基于图像分割算法的人群生成仿真方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810161589.1A CN108062758B (zh) | 2018-02-27 | 2018-02-27 | 一种基于图像分割算法的人群生成仿真方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108062758A true CN108062758A (zh) | 2018-05-22 |
CN108062758B CN108062758B (zh) | 2019-06-28 |
Family
ID=62134652
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810161589.1A Expired - Fee Related CN108062758B (zh) | 2018-02-27 | 2018-02-27 | 一种基于图像分割算法的人群生成仿真方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108062758B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109118566A (zh) * | 2018-09-13 | 2019-01-01 | 网易(杭州)网络有限公司 | 贴图的压缩方法、装置、存储介质和电子装置 |
CN111243099A (zh) * | 2018-11-12 | 2020-06-05 | 联想新视界(天津)科技有限公司 | 一种处理图像的方法和装置以及在ar设备中显示图像的方法和装置 |
CN112906241A (zh) * | 2021-03-17 | 2021-06-04 | 青岛慧拓智能机器有限公司 | 矿区自动驾驶仿真模型构建方法、装置、介质及电子设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020190997A1 (en) * | 1998-05-29 | 2002-12-19 | Barcena Luis A. | Methods and apparatus for radiometrically accurate texture-based graphic primitive rendering technique |
EP1816606A1 (en) * | 2004-11-01 | 2007-08-08 | Sony Computer Entertainment Inc. | Drawing device and drawing method |
CN101739719A (zh) * | 2009-12-24 | 2010-06-16 | 四川大学 | 二维正面人脸图像的三维网格化方法 |
CN103021017A (zh) * | 2012-12-04 | 2013-04-03 | 上海交通大学 | 基于gpu加速的三维场景重建方法 |
CN103106684A (zh) * | 2013-01-15 | 2013-05-15 | 北京农业信息技术研究中心 | 一种带叶状态树木形态结构三维重建的方法和系统 |
CN103258344A (zh) * | 2013-04-10 | 2013-08-21 | 山东华戎信息产业有限公司 | 一种植物三维重建中纹理的自动提取方法 |
CN103400003A (zh) * | 2013-07-22 | 2013-11-20 | 西安电子科技大学 | 基于gpu编程实现激光雷达场景仿真方法 |
-
2018
- 2018-02-27 CN CN201810161589.1A patent/CN108062758B/zh not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020190997A1 (en) * | 1998-05-29 | 2002-12-19 | Barcena Luis A. | Methods and apparatus for radiometrically accurate texture-based graphic primitive rendering technique |
EP1816606A1 (en) * | 2004-11-01 | 2007-08-08 | Sony Computer Entertainment Inc. | Drawing device and drawing method |
CN101739719A (zh) * | 2009-12-24 | 2010-06-16 | 四川大学 | 二维正面人脸图像的三维网格化方法 |
CN103021017A (zh) * | 2012-12-04 | 2013-04-03 | 上海交通大学 | 基于gpu加速的三维场景重建方法 |
CN103106684A (zh) * | 2013-01-15 | 2013-05-15 | 北京农业信息技术研究中心 | 一种带叶状态树木形态结构三维重建的方法和系统 |
CN103258344A (zh) * | 2013-04-10 | 2013-08-21 | 山东华戎信息产业有限公司 | 一种植物三维重建中纹理的自动提取方法 |
CN103400003A (zh) * | 2013-07-22 | 2013-11-20 | 西安电子科技大学 | 基于gpu编程实现激光雷达场景仿真方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109118566A (zh) * | 2018-09-13 | 2019-01-01 | 网易(杭州)网络有限公司 | 贴图的压缩方法、装置、存储介质和电子装置 |
CN111243099A (zh) * | 2018-11-12 | 2020-06-05 | 联想新视界(天津)科技有限公司 | 一种处理图像的方法和装置以及在ar设备中显示图像的方法和装置 |
CN111243099B (zh) * | 2018-11-12 | 2023-10-27 | 联想新视界(天津)科技有限公司 | 一种处理图像的方法和装置以及在ar设备中显示图像的方法和装置 |
CN112906241A (zh) * | 2021-03-17 | 2021-06-04 | 青岛慧拓智能机器有限公司 | 矿区自动驾驶仿真模型构建方法、装置、介质及电子设备 |
CN112906241B (zh) * | 2021-03-17 | 2023-07-04 | 青岛慧拓智能机器有限公司 | 矿区自动驾驶仿真模型构建方法、装置、介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN108062758B (zh) | 2019-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106600679B (zh) | 一种三维模型数据简化的方法 | |
CN108961390A (zh) | 基于深度图的实时三维重建方法 | |
CN109903396A (zh) | 一种基于曲面参数化的牙齿三维模型自动分割方法 | |
CN101339670B (zh) | 一种计算机辅助的三维颅面复原方法 | |
CN109410321A (zh) | 基于卷积神经网络的三维重建方法 | |
CN109118588B (zh) | 一种基于块分解的彩色lod模型自动生成方法 | |
CN108062758B (zh) | 一种基于图像分割算法的人群生成仿真方法及系统 | |
CN102542593A (zh) | 一种基于视频解译的交互式视频风格化渲染方法 | |
CN105528485B (zh) | 一种从位图自动轮廓提取及路径生成的方法 | |
CN111784840B (zh) | 基于矢量数据自动分割lod层级三维数据单体化方法及系统 | |
CN109544681A (zh) | 一种基于点云的果实三维数字化方法 | |
Zamuda et al. | Vectorized procedural models for animated trees reconstruction using differential evolution | |
CN101251932A (zh) | 基于物理的植物叶子模拟方法 | |
CN106709171B (zh) | 一种基于重复模式发现的印花图案生成方法 | |
CN104063888B (zh) | 一种基于非真实感的波谱艺术风格绘制方法 | |
CN106709883A (zh) | 基于联合双边滤波和尖锐特征骨架提取的点云去噪方法 | |
CN109410133A (zh) | 一种基于3dmm的人脸纹理修复方法 | |
CN115661404A (zh) | 一种多细粒度树木实景参数化建模方法 | |
CN100375124C (zh) | 一种骨架化物体重建方法 | |
CN110377960A (zh) | 基于b样条体的生物组织非均匀多孔支架的构建存储方法 | |
CN114782645B (zh) | 虚拟数字人制作方法、相关设备及可读存储介质 | |
CN112561844B (zh) | 一种融合纹理结构的数码迷彩图案自动生成方法 | |
Remacle et al. | Fast and robust mesh generation on the sphere—Application to coastal domains | |
CN104794750A (zh) | 一种基于空间殖民算法的树点云三维重建方法 | |
CN104851131A (zh) | 一种局部精度约束的三维地形生成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20190628 |