[发明专利]基于CNN布料褶皱识别的多精度网格精化方法有效
申请号: | 201910768724.3 | 申请日: | 2019-08-20 |
公开(公告)号: | CN110555899B | 公开(公告)日: | 2022-09-16 |
发明(设计)人: | 靳雁霞;贾瑶 | 申请(专利权)人: | 中北大学 |
主分类号: | G06T13/40 | 分类号: | G06T13/40;G06N3/04 |
代理公司: | 太原申立德知识产权代理事务所(特殊普通合伙) 14115 | 代理人: | 张向莹 |
地址: | 030051*** | 国省代码: | 山西;14 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 cnn 布料 褶皱 识别 精度 网格 方法 | ||
1.基于CNN布料褶皱识别的多精度网格精化方法,其特征在于,包括以下步骤:
步骤1.建立人体模型,进行动画模拟,提取关键动画帧并对其褶皱部分进行分割,将分割好的模型以图片格式存储;所述建立人体模型,进行动画模拟的具体过程及遵循的原则为:
步骤1.1计算布料运动的运动状态:设初始运动状态为(x0,v0)
A·Δv=b (2)
其中,x是3n×1维状态矢量,v是3n×1维速度矢量,M是3n×3n的质量矩阵,f是力矢量,n为布料的质点数,Δv为速度变化量,A和b分别为:
其中,f0为初始力矢量,v0为初始速度,Δt为时间变化量,由公式(1)-(4)得到无约束下的目标状态(x1,v1);
步骤1.2在人体模型的动画模拟过程中,布料与人体的碰撞处理使用全局约束,当布料与人体将要发生碰撞时,在即将碰撞的质点处增加约束集g,
g(p,p1,p2,p3)=[(p3-p2)(p1-p2)](p-p2)-d≥0 (5)
其中,p为质点,p1,p2,p3是布料三角面片的顶点,d是一个可控校正量;
步骤1.3当x1不符合当前约束集时,根据公式(9)计算Δx,
由公式(6)-(8)的隐式约束方程推导得到动态约束下的Δx计算公式(9),
x(t+Δt)=x(t)+Δtv(t+Δt) (7)
g(x(t+Δt))=0 (8)
约束状态下:
将公式(9)代入公式(10)得出
公式(11)即是新状态下的约束集g,
其中,λ为拉格朗日乘子,Δx为状态矢量增量,
步骤1.4由步骤1.3得到Δx,更新x1=x1+Δx,修改约束集g,计算
得到新状态(x1,v1),根据公式(1)-(12)进行布料和人体之间的碰撞及动画模拟;
步骤2.将分割好的模型作为卷积神经网络的输入,通过卷积神经网络CNN训练得到最终的识别结果,即为褶皱的识别;
步骤3.对识别的褶皱部分采用像素网格加精;
步骤4.将精化后的四边形网格转化为三角形网格,进行布料模拟。
2.根据权利要求1所述的基于CNN布料褶皱识别的多精度网格精化方法,其特征在于,所述步骤2将分割好的模型作为卷积神经网络的输入,通过卷积神经网络CNN训练得到最终的识别结果,即为褶皱的识别;具体的训练过程为:
步骤2.1将步骤1中分割好的模型图片参数设置为227×227×3,作为卷积神经网络CNN的输入;
步骤2.2将卷积神经网络CNN的网络框架设置为5个卷积层,3个池化层,以及3个全连接层;
步骤2.3进行误差分析,目的是使真实值和预测值误差最小,其公式如下:
其中,n表示训练样例,k表示维数,tk为真实值,yk为预测值;
当误差En的精度达到98%及以上,训练结束,得到输出,即布料的褶皱识别。
3.根据权利要求1所述的基于CNN布料褶皱识别的多精度网格精化方法,其特征在于,所述步骤3对识别的褶皱部分采用像素网格加精;具体为:
首先设定网格加精的弯曲度阈值,然后将需加精的像素网格精度与设定的弯曲度阈值进行比较,当像素网格精度大于设定的弯曲度阈值时,对像素网格进行加精,直至精度达到设定的阈值;当像素网格精度小于或等于设定的弯曲度阈值时,则不进行加精。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中北大学,未经中北大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910768724.3/1.html,转载请声明来源钻瓜专利网。