一种基于三维引擎对移动终端三维图像数据的处理方法
【技术领域】
[0001]本发明涉及三维立体图像领域,尤其涉及一种基于三维引擎对移动终端三维图像数据的处理方法。
【背景技术】
[0002]因为三维立体图视觉上层次分明色彩鲜艳,具有很强的视觉冲击力,让观看的人驻景时间长,留下深刻的印象。立体图给人以真实、栩栩如生,物呼之欲出,有身临其境的感觉,有很高的艺术欣赏价值,所述,三维图像技术在图像制作领域具有极其重要的作用。
[0003]如本领域技术人员知,通过网络浏览器呈现三维的产品,不但逼真,而且还可以动态展示产品的组合过程,特别适合远程浏览,免去了在营销过程中寄送样品的费用和时间,对于不方便携带的产品,更可以用电脑展示给客户,大大的增强了产品的竞争力。
[0004]综上,现有三维图像技术主要被广泛应用在PC上,但,随着移动终端设备的快速发展,对三维图像技术的使用需求并不满足于仅仅在PC上使用,而现有应用于移动终端的三维图像技术存在以下不足:受限于移动设备性能,伪三维图像被大量使用;图像在运动过程中不流畅、视觉效果差;文件过大,加载缓慢,流量费用高。
【发明内容】
[0005]本发明的目的在于提供一种基于三维引擎对移动终端三维图像数据的处理方法,从而解决现有技术中存在的前述问题。
[0006]为了实现上述目的,本发明所述基于三维引擎对移动终端三维模型数据的处理方法,该方法具体按照下述步骤实现:
[0007]SI,使用移动终端或PC,选取数据库中存储的任意一个基模型,分析得到基模型的结构数据;
[0008]S2,在基模型的基础上,按预先设定的阈值对结构数据中的三角面数、布线约束和贴图规格进行设定,得到模型初体;
[0009]S3,对模型初体进行提取压缩处理,得到并展示三维立体图像模型。
[0010]优选地,步骤S2,具体按照下述方法实现:
[0011]S21,获取并存储结构数据中面数的总数和面数的复杂度,并按照预先设定的三角面数阈值进行设定;
[0012]S22,获取结构数据中每个转角结构特征,然后按照预先设定的布线约束进行设定;
[0013]S23,获取并判断结构数据中的材质分布,然后按照预先设定的贴图图片的规格进行贴图处理。
[0014]更优选地,步骤S21,具体按照下述方法实现:以模型表面每平方分米包含的结构变化数量为判断依据,0-1个/dm2为平滑部分,2-5个/dm2为较复杂部分,6-10个/dm2为复杂部分;区分并获取基模型的平滑部分、较复杂部分和复杂部分,根据预先设定的三角面数阈值进行面数调整,所述预先设定的三角面数阈值包括:平滑部分,三角面数按照2?20个/dm2;较复杂部分,三角面数按照20?50个/dm 2;复杂部分,三角面数按照50?200个/dm2 ο
[0015]更优选地,所述预先设定的三角面数阈值还包括:基模型的三角面数总和小于等于10万。
[0016]更优选地,步骤S22,具体按照下述步骤实现:获取结构数据中每个转角角度α,然后按照预先设定的转角角度α与布线约束中布线数对应关系进行设定;所述预先设定的转角角度α与布线数对应关系,如下所述:构成α>150°的转角结构时,设置的横向结构线的数量为7段;构成150° < α <90°的转角结构时,设置的横向结构线的数量为11段;构成30° < α <90°的转角结构时,设置的横向结构线的数量为15段;构成α< 30°的转角结构时,设置的横向结构线的数量为19段。
[0017]更优选地,步骤S23,具体按照下述方法实现:获取基模型中细节展示区的数据和其材质数据;判断基模型的表面材质数据;依据表面材质数据和细节展示区材质数据,粘贴透明贴图或不透明贴图。
[0018]更优选地,所述透明贴图采用带alpha通道的.png压缩格式,所述不透明贴图采用.jpg格式;两种贴图的宽高均用2的η次方像素表示,且所述透明贴图和所述不透明贴图的贴图分辨率相同。
[0019]更优选地,步骤S3,所述压缩处理使用三重技术实现压缩,具体按照下述方法实现:
[0020]S31、以4_16bit固定位长记录模型初体内的数据;对模型初体中的数据进行分析,得到顶点信息、UV信息和三角化序列和其比特数据,将其比特数据压缩至4-16bit固定位长,并记录;
[0021]S32、对模型初体内的数据顶点、UV和三角序列分别建立字典;记录同一平面上的顶点数据,任意一轴的完全相同坐标值数据,形成数据顶点字典;记录在纵横分列均匀的网格中,有规律重复的顶点UV数据,形成数据UV字典;记录任意一个顶点连接的三角形的个数m,形成所述顶点的三角序列数据字典。
[0022]S33、快速解压,以变体散列链作为字典查找算法基础,设定字典大小为32K。
[0023]优选地,所述移动终端的最低配置要求包括..CPU:MSM8226/8626或同级以上;GPU:Andreno 200 或同级以上;RAM:512MB。
[0024]本发明的有益效果是:
[0025]1、本发明所述方法对三维立体图像中的材质均进行模型匹配设置,提高三维立体图像与周围场景配合度,如三维立体图像中的反光点随图像活动而实时变化,而反光点反射的图像也随着场景的变化而实时变化。
[0026]2、因为本申请对构成图像的面数、布线数和贴图数均进行模型化设定,所以构建的三维立体图像与实物无偏差,且在三维图像的运动过程中,流畅、视觉效果极好。
[0027]3、经过本申请所述的压缩方法,得到的三维图像的容量大小是现有方法制作的三维图像的百分之九到百分之二十,利于传输。
【附图说明】
[0028]图1是所述基于三维引擎对移动终端三维模型数据的处理方法的流程图。
【具体实施方式】
[0029]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图,对本发明进行进一步详细说明。应当理解,此处所描述的【具体实施方式】仅仅用以解释本发明,并不用于限定本发明。
[0030]实施例
[0031]本实施例中所述基于三维引擎对移动终端三维模型数据的处理方法,该方法具体按照下述步骤实现:
[0032]SI,使用移动终端或PC,选取数据库中存储的任意一个基模型,分析得到基模型的结构数据;
[0033]S2,在基模型的基础上,按预先设定的阈值对结构数据中的三角面数、布线约束和贴图规格进行设定,得到模型初体;
[0034]S3,对模型初体进行提取压缩处理,得到并展示三维立体图像模型。
[0035]更详细的解释说明:
[0036](一 )步骤S2,具体按照下述方法实现:
[0037]S21,获取并存储结构数据中面数的总数和面数的复杂度,并按照预先设定的三角面数阈值进行设定;
[0038]S22,获取结构数据中每个转角结构特征,然后按照预先设定的布线约束进行设定;
[0039]S23,获取并判断结构数据中的材质分布,然后按照预先设定的贴图图片的规格进行贴图处理。
[0040]关于三角面数,如本领域技术人员知,构成几何体的三角面数量总和称为几何体的面数,模型面数直接影响到三维引擎的渲染效率和网络传输效率,要在保证视觉效果的基础上尽量经济化控制面数使用。在本申请中控制整体模型三角面数在10万以内。故步骤S21,按照下述方法实现:以模型表面每平方分米包含的结构变化数量为判断依据,0-1个/dm2为平滑部分,2-5个/dm 2为较复杂部分,6-10个/dm2为复杂部分;区分并获取基模型的平滑部分、较复杂部分和复杂部分,根据预先设定的三角面数阈值进行面数调整;所述预先设定的三角面数阈值包括:平滑部分,面数按照2?20个/dm2;较复杂部分,面数按照20?50个/dm2;复杂部分,面数按照50?200个/dm 2。
[0041]关于布线约束,构成几何体的分段数成为几何体的布线方式,模型表面的分段数直接影响到三维模型结构表现效果和模型面数,要在保证结构表现清晰的基础上尽量选用经济的布线方案,布线段数为构成一个角度结构时所需要的横向结构线的数量,数量越多构成结构越圆滑,相应面数也越多,反之则结构尖锐,但面数少。故,步骤S22,具体按照下述步骤实现:获取结构数据中每个转角角度α,然后按照预先设定的转角角度α与布线数对应关系进行设定;所述预先设定的转角角度α与布线数对应关系,如下所述:构成α >150°的转角结构时,设置的横向结构线的数量为7段;构成150° < α < 90°的转角结构时,设置的横向结构线的数量为11段;构成30° < α <90°的转角结构时,设置的横向结构线的数量为15段;构成α <30°的转角结构时,设置的横向结构线的数量为19段。
[0042]关于贴图图片的规格,步骤S23,具体按照下述方法实现:获取基模型中细节展示区的数据和其材质数据;判断基模型的表面材质数据;依据表面材质数据和细节展示区材质数据,粘贴透明贴图或不透明贴图。
[0043]如本领域技术人员知,对于模型中需要体现极为细节的部分和表面材质部分则采用贴图方式,这样既可以保证效果又节省硬件渲染资源,贴图的文件格式和尺寸会直接影响渲染资源。贴图文件分为透明贴图和不透明贴图,透明贴图即为需要透出该面片后边的其他结构,如车窗、中网等部件,不透明部分基本上表现的是结构和材质部分,如仪表盘、皮革材质等。透明贴图均采用带a