我们实验室就是做虚拟服装试穿的。我们学校研究这个课题的实验室已经做了很多年了。很多人听说”虚拟试衣“马上就想到了用在网店上。可惜,目前在桌面端运行的程序都难以实时,放在网页里恐怕更难以运行了。目前这一领域仍有很多难点尚待突破。难点有:
1.获取用户体型数据,建立人体三维模型
最新进展 :论文Scanning 3D Full Human Bodies using Kinects
http://www.math.zju.edu.cn/ligangliu/CAGD/Projects/Kinects-CapturingHumans/商业成品 微软Kinect Fusion
http://msdn.microsoft.com/en-us/library/dn188670.aspx从这两个进展看,这一难点基本搞定了。但用户扫描自身时,应该不会特地穿着紧身衣或者裸体,所以要想估算出用户真实的体型还是有些麻烦的。有篇论文专门讲了怎么从穿了衣服的人体模型估算真实体型的,这里不列举了。
2.布料模拟
难在实时的碰撞检测。试穿涉及到多层布料之间的碰撞检测、布料自身碰撞检测、布料与人体的碰撞检测。另外要模拟出各种材质如丝绸、的确良等等布料的物理特性也是有难度的。碰撞检测有离散碰撞检测和连续碰撞检测(CCD)。CCD的效果要比离散的好,不会出现衣服穿透人体、衣服之间互相穿透,但计算速度较慢,难以达到实时。
论文1 asynchronous contact mechanics
http://www.cs.columbia.edu/cg/ACM/论文2 (在论文1的基础上进行了加速、优化)
http://www.cs.columbia.edu/cg/spacm/spacm.html这里仅仅列举出布料碰撞检测的论文,还有很多关于服装的皱褶生成、适应多姿态人体的论文,就不一一列举了。
国外有一款软件Marvelous Designer
http://www.marvelousdesigner.com/似乎已经解决了上述难点,但我还不清楚背后的算法是怎样的。