[发明专利]基于K_DOPs快速连续碰撞检测方法有效
申请号: | 201210020950.1 | 申请日: | 2012-01-30 |
公开(公告)号: | CN102609321A | 公开(公告)日: | 2012-07-25 |
发明(设计)人: | 张平;杜广龙 | 申请(专利权)人: | 华南理工大学 |
主分类号: | G06F11/00 | 分类号: | G06F11/00 |
代理公司: | 广州粤高专利商标代理有限公司 44102 | 代理人: | 何淑珍 |
地址: | 510640 广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 k_dops 快速 连续 碰撞 检测 方法 | ||
技术领域
本发明属于机器人运动领域,特别涉及一种在机器人运动时实时进行碰撞检测的方法。
背景技术
碰撞检测算法在机器人运动领域有很长的研究历史,实时碰撞检测是机器人领域中一个非常关键的问题。目前已经有比较多可行的碰撞检测算法,但随着诸如虚拟现实等新兴领域的涌现及随之而来的人们对交互实时性,场景真实性要求的不断提高,碰撞检测技术所面临的问题也日益突出,其中最核心的问题是如何有效地提高碰撞检测的速度。
目前常用的方法主要分为两类:离散法和连续法。离散法是通过定时计算每个时间点状态来确定碰撞情况,但这种方法会出现刺穿和漏检现象。为了克服离散法的缺点,连续法通过计算对象在整个运动路径上的状态来确定碰撞情况,从而避免了出现刺穿和漏检现象,当然连续法相对于离散法慢。
K-DOPs全称是K-Discrete Orientation Polytopes,K-DOPs算法属于一种凸多面体碰撞检测算法。其中,静态K-DOPs算法的实现过程是首先建立静态K-DOPs包围盒,然后在离散时间点上进行包围盒的相交测试从而判断两个物体是否有碰撞可能(James T.Klosowski,Martin Held,JosephS.B.Mitchell,Henry Sowizral,Karel Zikan.Efficient Collision Detection Using Bounding VolumeHierarchies of k-DOPs[J]和Stephane Redon,Abderrahmane Kheddary,Sabine Coquillart.FastContinuous Collision Detection between Rigid Bodies[J])。本发明就是基于静态K-DOPs算法实现的,在本发明中遍历检测的所有包围盒都是利用已经计算好的静态K-DOPs包围盒所计算出来的路径包围盒,而不是静态包围盒。本发明只是借用了静态包围盒检测技术中的遍历算法和分割算法。其中,路径包围盒是一个包含对象在该路径运动过程中所经过的空间的最小K-DOPs包围盒。
发明内容
本发明的目的是克服现有技术存在的上述不足,提供一种可以有效地避免离散检测算法中的刺穿和漏检现象并且精度高和性能好的基于K_DOPs快速连续碰撞检测方法。本发明基于间隔插值技术和静态K_DOPs碰撞检测技术,先对两个对象的运动路径进行间隔插值拟合,然后利用静态K_DOPs检测算法计算插值后的碰撞子区间,对碰撞子区间进行不断的插值拟合再检测,直到碰撞区间小于一个给定值,然后对这个最小区间进行三角片对的连续检测,具体技术方案如下。
基于K_DOPs快速连续碰撞检测方法,包括如下步骤:
S1、给定初始时间点和终止时间点,用静态K_DOPs算法检测两个对象在初始点和终止点是否发生碰撞,如果有发生碰撞,则退出。否则,转步骤2。
S2、根据两个对象的运动路径进行包围盒动态相交检测。
S3、若两个对象的K_DOPs包围盒不相交,退出,否则转步骤4。
S4、对发生碰撞的包围盒中的基本元素进行碰撞检测。
S5、若基本元素发生碰撞,则报告碰撞并退出,否则报告没有发生碰撞并退出。
上述步骤S1中首先构建两个对象的静态K_DOPs包围盒,然后在离散时间点上进行包围盒的相交测试从而判断两个物体是否有碰撞可能。
所述步骤S2包括以下步骤:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华南理工大学,未经华南理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210020950.1/2.html,转载请声明来源钻瓜专利网。