融合神经网络的布料碰撞检测算法
摘 要
目的 针对当前在虚拟环境中布料柔体碰撞检测效率慢和准确性低的问题,提出一种根节点双层包围盒树结构和融合OpenNN (open neural networks library)神经网络加速预测碰撞检测的算法。方法 首先改进了碰撞检测常用的包围盒技术,提出根节点双层包围盒算法,减少包围盒的构造时间。其次使用神经网络优化碰撞检测技术,利用神经网络可以处理大量数据的优势,每次可以检测大量基本图元是否发生碰撞,解决了碰撞检测计算复杂性高的问题。最后准确地找到碰撞粒子并做出碰撞响应。结果 在相同的复杂布料模型情况下,根节点双层包围盒算法在运行速度上比传统混合包围盒算法快,耗时缩减了5.51%~11.32%。基于OpenNN算法的总耗时比根节点双层包围盒缩减了11.70%,比融合DNN (deep neural network)的自碰撞检测算法减少了6.62%。随着碰撞检测难度的增大,当布料模型的精度增加84%时,传统物理碰撞检测方法用时增加96%,融合DNN的自碰撞检测算法用时增加90.11%,而本文基于神经网络的算法用时仅增加了68.37%,同时表现出更高的稳定性,满足使用者对实时性的要求。结论 对于模拟场景中简单模型的碰撞,本文提出的根节点双层包围盒算法比传统的包围盒方法耗时短。对于复杂模型,基于OpenNN神经网络的碰撞检测算法在效率上优于传统的包围盒算法和融合DNN的自碰撞检查算法,而且模拟效果的准确性也得以保证,是一种高效的碰撞检测方法。
关键词
Neural network fusion based cloth collision detection algorithm
Jin Yanxia, Ma Bo, Jia Yao, Chen Zhixu, Lu Ye(School of Big Data, North University of China, Taiyuan 030051, China) Abstract
Objective Computer graphics based cloth simulation method is developed on the aspects of film and television industry, game animation and mechanical simulation. The collision detection algorithm is a key step of cloth simulation for the operation of the simulation system. The collision detection algorithm resists the virtual penetration of objects. Reliability and real-time features have been the two key issues for collision detection. The algorithms reliability is related to the clarification of accurate objects features, which plays an important role in the field of mechanical simulation and virtual surgery. Real-time ability is required to have fast computing power, and the high requirements of gaming industry. The current challenge of collision detection algorithms is the incompatibility of the two features. Recent multi-precision cloth model is based on high accuracy and low accuracy both. However, the response efficiency and reliability of this model is challenged to precision improvement. The efficiency cannot be guaranteed high-precision cloth models in common. A low-precision cloth model is subjected to the reliability of the simulation effect. The cloth issues are required to complete the collision processing in a short time. Collision detection is costly and time consuming. The penetration issues will be occurred in low response of collision. Efficient collision detection algorithms aid to improve the efficiency of the simulation system. Our open neural networks library (OpenNN) based collision detection algorithm is facilitated to improve the low speed and inaccuracy of cloth soft body collision detection in a virtual environment. Method First, the bounding box technology is commonly improved in collision detection. Our network uses the existing bounding box technology to illustrate a root node double-layer bounding box algorithm, which uses the clarified axis aligned bounding box(AABB) and sphere bounding box to remove basic primitives quickly that have not collided. Second, a collision detection algorithm is proposed based on an OpenNN neural network. The cloth soft body detection needs to process a large amount of basic primitive information in the collision detection process, and the neural network can process a large amount of data. Our research proposes a new collision detection method, which provides an effective way for the detection process. The collision object and its particles collide scenario are obtained through the simulation of the physical cloth system and the orientations of the cloth particles. The integrated data set is segmented into training subset, selection subset and test subset. They account for 60%, 20%, and 20% of the original data set, respectively. The position of the cloth particles and the position of the collision object are input into the neural network model, and the neural network model is used to predict which particles in the cloth will collide. The calculation of in situ new particles eliminates the collision in respond to the colliding particles. Result The same complex cloth detection model is through cloth simulation experiments and compare to the detection time consumption of single bounding box algorithm, hybrid bounding box algorithm, root node double-layer bounding box algorithm, deep neural network (DNN) fused self-collision detection algorithm, and OpenNN based collision detection algorithm. The root node dual-layer bounding box algorithm is optimized due to shortened time is from 5.51% to 11.32%. The total time based on the OpenNN algorithm is reduced by 11.70% compared to the root node dual-layer bounding box algorithm. In comparison with the DNN fused self-collision detection algorithm, it is reduced by 6.62%. The accuracy of the cloth model increases by 84%, the time used by the traditional physical collision detection method has increased by 96%, and the DNN fused self-collision detection algorithm has increased by 90.11%. Our improved OpenNN neural network based collision detection algorithm increases the detection time by 68.37%. Meanwhile, the algorithm can predict collision particles accurately and effectively. Through the collision experiment with sharp objects in extreme scenarios, there is no penetration appeared, which verifies the reliability of our algorithm. Conclusion Our root node dual-layer bounding box algorithm is time efficiency for the collision of simple models in the simulation scene. An OpenNN neural network based collision detection algorithm has its priorities for complicated models.
Keywords
collision detection cloth simulation neural network axis aligned bounding box(AABB) double-layer bounding box
|