CN103679751A - 一种基于量子计算的碰撞检测方法 - Google Patents
一种基于量子计算的碰撞检测方法 Download PDFInfo
- Publication number
- CN103679751A CN103679751A CN201310636229.XA CN201310636229A CN103679751A CN 103679751 A CN103679751 A CN 103679751A CN 201310636229 A CN201310636229 A CN 201310636229A CN 103679751 A CN103679751 A CN 103679751A
- Authority
- CN
- China
- Prior art keywords
- quantum
- probability
- convex closure
- particle
- gate
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
技术领域 本发明涉及一种基于量子计算的碰撞检测方法,属于计算机图形学技术领域。
背景技术 近年来,随着计算机图形学(Computer Graphics,CG)产业的飞速发展,碰撞检测技术在从二维层面向三维扩展中日趋成熟,碰撞检测已成为目前广泛应用的能够真实检测运动物体运动相交状态的技术。碰撞检测是检测虚拟空间运动物体相交状况的技术,其基于计算机图形学原理,通过三维建模采集运动物体的图像,之后对该图像的数据进行处理,以判断运动物体的空间相交状况。碰撞检测广泛应用于虚拟现实、机器人运动规划、影视制作、游戏娱乐和计算机动画等领域;传统的碰撞检测方法是采用外形近似于运动物体的包围盒代替物体来判断物体的相交状态,该方法简单,较容易忽略复杂物体的细节,使检测精度低。
发明内容 针对上述技术问题, 本发明提供了一种基于量子计算的碰撞检测方法,以解决现有技术提供的碰撞检测方法因物体复杂度增加导致碰撞检测精度和效率逐渐降低的问题。
为实现上述目的,本发明所采用的技术解决方案是:一种基于量子计算的碰撞检测方法,所述方法包括以下步骤:
1)采集运动物体在当前帧的图像数据,分别建立两个物体的凸包,同时构建形成凸包的参数集;
2) 把凸包上的顶点看成是量子粒子群中的粒子,用随机惯性权重改变粒子的惯性权重,扩大搜索空间;
4) 根据变异概率,用量子Hadamard门兑换两个概率幅,实现量子变异;
5) 跟踪粒子运动轨迹,根据参数集计算两个凸包上的距离差,输出最小距离差;
6) 根据距离差与设定值的关系,判断两个物体是否发生碰撞。
所述采集运动物体在当前帧的图像数据,分别建立两个物体的凸包,同时构建形成凸包的参数集包括以下步骤:
记录当前帧中所述被检测物体的运动图像数据,形成物体的顶点集;取图像数据边缘的四条边上的四个端点,获取顶点集的包围盒;删除位于该四边形内部的顶点,计算四条边外部距离最远的顶点,若所述点都是垂直于边的端点,将其加入凸包中。
其中,边的两个顶点和一个新的凸顶点形成三角形,删除三角形内部的点;对于凸包上的新边,递归地重复前述的同一个过程,直到没有顶点位于边外时终止;建立凸包的步骤为:
构建凸包时形成的参数集的步骤为:
进一步地,用随机惯性权重改变粒子的惯性权重,扩大搜索空间;自适应权重的更新步骤为:
用量子旋转门和量子 门改变量子位概率幅,更新量子状态的具体步骤为:
3)否则
根据变异概率,用量子Hadamard门兑换两个概率幅的步骤为:
根据参数集计算所述凸包间的距离差的具体步骤为:
步骤1)随机初始化粒子群;
步骤2)变换解空间,计算粒子的适应度;
比较粒子目前的位置与当前最优位置,若粒子目前的位置比当前的最优位置好,则用目前的位置替换当前的最优位置;若目前全局最优位置比到目前为止搜索到的全局最优位置好,则用目前全局最优位置替换全局最优位置;
步骤3)更新粒子状态,用随机惯性权重更新量子惯性权重,用量子旋转门和更新量子位概率幅;
步骤4)根据变异概率,对粒子用量子Hadamard门实现变异操作;
步骤5)如果适应度值小于或等于设定值,则输出全局最优值,结束程序,否则返回步骤2循环计算,直到达到最大迭代次数或是满足收敛条件为止。
更进一步地,根据距离差与设定值的关系,判断两个物体是否发生碰撞的具体步骤为:
若距离差大于设定值,则两个物体未碰撞;若距离差小于或等于设定值,则两个物体发生碰撞。
一种基于量子计算的碰撞检测方法,其有益效果是:
1 )使用自适应变异惯性权重增强效果;2 )将用随机惯性权重改变粒子的惯性权重、用量子旋转门和量子门改变量子位概率幅和用量子Hadamard门兑换两个概率幅三者结合;应用本发明实施例提供的碰撞检测方法对复杂物体进行检测时,同时改变粒子运动的速度和方向,而不是使其速度与方向分别改变,充分考虑了物体运动的复杂性,从而提高了检测精度;本发明对比已有技术具有以下显著优点:用随机惯性权重改变粒子的惯性权重、用量子旋转门和量子门改变量子位概率幅和用量子Hadamard门兑换两个概率幅,三者结合后显著提高了碰撞检测的效率。
附图说明
图1是本发明实施例提供的碰撞检测方法的流程图;
图2是采用本发明实施例1提供的碰撞检测方法与现有碰撞检测方法的效果对比图;
图3是采用本发明实施例2提供的碰撞检测方法与现有碰撞检测方法的效果对比图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明的基本思想是:采集运动物体的顶点在当前帧的位置数据,分别建立被测物体的凸包,同时构建形成凸包的参数集。用基于量子计算的方法计算两个凸包间的距离差来判断两个物体是否碰撞。
图1示出了本发明实施例提供的碰撞检测方法的流程。
实施例1
在步骤S101中,采集运动物体的顶点在当前帧的位置数据,分别建立两个物体的凸包,同时构建形成凸包的参数集。
其中的运动图像数据可以是多个标记点在运动图像上的位置,具体可以是物体顶点的 、 、轴的坐标。记录当前帧中所述凸包顶点的运动图像数据。取图像数据边缘的四条边上的四个端点,获取顶点集的包围盒。删除位于该四边形内部的顶点,计算四条边外部距离最远的顶点,若所述点都是垂直于边的端点,将其加入凸包中,其中边的两个顶点和这一个新的凸顶点形成了一个三角形。删除三角形内部的点。对于凸包上的新边,递归地重复前述的同一个过程,直到没有顶点位于边外时终止,形成凸包。该参数集包括:由两个凸包所处空间位置构成的点集、以及由所述物体形成两个凸包的实数集。
在步骤S102中,把凸包上的顶点看成是量子粒子群中的粒子,用随机惯性权重改变粒子的惯性权重,以扩大粒子的搜索空间。用量子旋转门和量子门改变量子位概率幅。用量子Hadamard门兑换两个概率幅,使量子位能同时改变粒子运动的速度和方向。跟踪粒子运动轨迹,以寻找最快速使距离差取得最小值的粒子;假设量子幅角为,经过量子旋转门变化后,量子幅相位为。有时量子位概率幅会限定在一个小范围内,量子门改变量子位概率幅的范围。令变异概率为,为每个粒子均设定一个随机数,,若,则随机选择该粒子上个量子位,用量子Hadamard门变换两个概率幅,实际上是对量子位幅角的一种旋转,使量子位绕轴和轴分别旋转,增加位幅角,增加了种群多样性。如设某一量子位幅角为,则变异后的幅角为,即下一时刻的量子位幅角与前一时刻量子位幅角有关,减少冗余计算。假定有两多面体 和,且和位于同一参考坐标系(否则可将转换至的空间内),则两凸多面体之间的的距离为:
在步骤S103中,根据距离差与设定值的关系,判断两个物体是否发生碰撞,
实施例2
在步骤S101中,采集运动物体的顶点在当前帧的位置数据,分别建立两个物体的凸包,同时构建形成凸包的参数集。
其中的运动图像数据可以是多个标记点在运动图像上的位置,具体可以是物体顶点的 、 、轴的坐标。记录当前帧中所述凸包顶点的运动图像数据。取图像数据边缘的四条边上的四个端点,获取顶点集的包围盒。删除位于该四边形内部的顶点,计算四条边外部距离最远的顶点,若所述点都是垂直于边的端点,将其加入凸包中,其中边的两个顶点和这一个新的凸顶点形成了一个三角形。删除三角形内部的点。对于凸包上的新边,递归地重复前述的同一个过程,直到没有顶点位于边外时终止,形成凸包。该参数集包括:由两个凸包所处空间位置构成的点集、以及由所述物体形成两个凸包的实数集。
在步骤S102中,把凸包上的顶点看成是量子粒子群中的粒子,用随机惯性权重改变粒子的惯性权重,以扩大粒子的搜索空间。用量子旋转门改变量子位概率幅。用量子Hadamard门兑换两个概率幅,使粒子运动的速度和方向能同时改变。跟踪粒子运动轨迹,以寻找最快速使距离差取得最小值的粒子;假设量子幅角为,经过量子旋转门变化后,量子幅相位为,从而改变量子概率幅。令变异概率为,为每个粒子均设定一个随机数,,若,则随机选择该粒子上个量子位,用量子Hadamard门变换两个概率幅,实际上是对量子位幅角的一种旋转,使量子位绕轴和轴分别旋转,增加位幅角,增加了种群多样性。如设某一量子位幅角为,则变异后的幅角为,即下一时刻的量子位幅角与前一时刻量子位幅角有关,减少冗余计算。假定有两多面体 和,且和位于同一参考坐标系(否则可将转换至的空间内),则两凸多面体之间的的距离为:
在步骤S103中,根据距离差与设定值的关系,判断两个物体是否发生碰撞,
图2示采用本发明实施例1提供的碰撞检测方法与现有碰撞检测方法的效果对比图;图3示采用本发明实施例2提供的碰撞检测方法与现有碰撞检测方法的效果对比图;图示用在相同的最大迭代次数下对比两种方法计算的距离差值(单位为毫米)方法显示本发明实施例提供的碰撞检测方法和现有碰撞检测方法的效果对比。图示中叠加显示了每次迭代计算的距离差。星型线条为现有碰撞检测方法产生的实验结果,直线条为本发明实施例提供的碰撞检测方法产生的实验结果。为明确显示算法效果,将现有碰撞检测的效果值都增加了0.1毫米。
应用本发明实施例提供的碰撞检测方法对复杂物体进行检测时,用物体上的点作为基本图元进行计算,充分考虑了物体运动的复杂性。在寻找最小距离差的计算过程中,同时改变了粒子运动的速度和方向,而不是分步改变其运动速度与方向,从而提高了检测速度。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
Claims (8)
1.一种基于量子计算的碰撞检测方法,其特征是所述方法包括以下步骤:
1)采集运动物体在当前帧的图像数据,分别建立两个物体的凸包,同时构建形成凸包的参数集;
2) 把凸包上的顶点看成是量子粒子群中的粒子,用随机惯性权重改变粒子的惯性权重,扩大搜索空间;
3) 用量子旋转门和量子 门改变量子位概率幅,更新量子状态;
4) 根据变异概率,用量子Hadamard门兑换两个概率幅,实现量子变异;
5) 跟踪粒子运动轨迹,根据参数集计算两个凸包上的距离差,输出最小距离差;
6) 根据距离差与设定值的关系,判断两个物体是否发生碰撞。
2.根据权利要求1所述的一种基于量子计算的碰撞检测方法,其特征是所述采集运动物体在当前帧的图像数据,分别建立两个物体的凸包,同时构建形成凸包的参数集包括以下步骤:记录当前帧中所述被检测物体的运动图像数据,形成物体的顶点集;取图像数据边缘的四条边上的四个端点,获取顶点集的包围盒;删除位于该四边形内部的顶点,计算四条边外部距离最远的顶点,若所述点都是垂直于边的端点,将其加入凸包中。
7.根据权利要求1所述的一种基于量子计算的碰撞检测方法,其特征是根据参数集计算所述凸包间的距离差的具体步骤为:
步骤1)随机初始化粒子群;
步骤2)变换解空间,计算粒子的适应度;
比较粒子目前的位置与当前最优位置,若粒子目前的位置比当前的最优位置好,则用目前的位置替换当前的最优位置;若目前全局最优位置比到目前为止搜索到的全局最优位置好,则用目前全局最优位置替换全局最优位置;
步骤3)更新粒子状态,用随机惯性权重更新量子惯性权重,用量子旋转门和更新量子位概率幅;
步骤4)根据变异概率,对粒子用量子Hadamard门实现变异操作;
步骤5)如果适应度值小于或等于设定值,则输出全局最优值,结束程序,否则返回步骤2循环计算,直到达到最大迭代次数或是满足收敛条件为止。
8.根据权利要求1所述的一种基于量子计算的碰撞检测方法,其特征是根据所述距离差与设定值的关系,判断两个物体是否发生碰撞的具体步骤为:若距离差大于设定值,则两个物体未碰撞;若距离差小于或等于设定值,则两个物体发生碰撞。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310636229.XA CN103679751B (zh) | 2013-12-03 | 2013-12-03 | 一种基于量子计算的碰撞检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310636229.XA CN103679751B (zh) | 2013-12-03 | 2013-12-03 | 一种基于量子计算的碰撞检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103679751A true CN103679751A (zh) | 2014-03-26 |
CN103679751B CN103679751B (zh) | 2016-08-17 |
Family
ID=50317201
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310636229.XA Active CN103679751B (zh) | 2013-12-03 | 2013-12-03 | 一种基于量子计算的碰撞检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103679751B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104851110A (zh) * | 2015-04-21 | 2015-08-19 | 南京邮电大学 | 基于量子粒子群优化的视觉跟踪方法 |
CN110162536A (zh) * | 2019-04-10 | 2019-08-23 | 深圳大学 | 一种量子搜索方法、系统、电子装置及存储介质 |
CN111467796A (zh) * | 2020-04-02 | 2020-07-31 | 北京代码乾坤科技有限公司 | 分布式物理结算方法和装置 |
CN114254546A (zh) * | 2022-02-11 | 2022-03-29 | 中国空气动力研究与发展中心计算空气动力研究所 | 一种稀薄气体粒子碰撞模拟计算方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102999661A (zh) * | 2012-11-16 | 2013-03-27 | 上海电机学院 | 基于粒子群优化的并行碰撞检测系统及方法 |
-
2013
- 2013-12-03 CN CN201310636229.XA patent/CN103679751B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102999661A (zh) * | 2012-11-16 | 2013-03-27 | 上海电机学院 | 基于粒子群优化的并行碰撞检测系统及方法 |
Non-Patent Citations (5)
Title |
---|
KUK-HYUN HAN等: "Quantum-Inspired Evolutionary Algorithms With a New Termination Criterion, Gate, and Two-Phase Scheme", 《IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION》 * |
WEI ZHAO等: "Research on Collision Detection Algorithm Based on Particle Swarm Optimization", 《SPRINGER BERLIN HEIDELBERG》 * |
延丽平等: "具有自适应随机惯性权重的PSO算法", 《计算机工程与设计》 * |
李士勇等: "求解连续空间优化问题的量子粒子群算法", 《量子电子学报》 * |
赵伟等: "基于非线性规划的凸多面体间碰撞检测算法", 《吉林大学学报 (工学版)》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104851110A (zh) * | 2015-04-21 | 2015-08-19 | 南京邮电大学 | 基于量子粒子群优化的视觉跟踪方法 |
CN110162536A (zh) * | 2019-04-10 | 2019-08-23 | 深圳大学 | 一种量子搜索方法、系统、电子装置及存储介质 |
CN111467796A (zh) * | 2020-04-02 | 2020-07-31 | 北京代码乾坤科技有限公司 | 分布式物理结算方法和装置 |
CN111467796B (zh) * | 2020-04-02 | 2023-05-02 | 北京代码乾坤科技有限公司 | 分布式物理结算方法和装置 |
CN114254546A (zh) * | 2022-02-11 | 2022-03-29 | 中国空气动力研究与发展中心计算空气动力研究所 | 一种稀薄气体粒子碰撞模拟计算方法 |
CN114254546B (zh) * | 2022-02-11 | 2023-04-18 | 中国空气动力研究与发展中心计算空气动力研究所 | 一种稀薄气体粒子碰撞模拟计算方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103679751B (zh) | 2016-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104268943B (zh) | 一种基于欧拉‑拉格朗日耦合方法的流体仿真方法 | |
Spillmann et al. | An adaptive contact model for the robust simulation of knots | |
CN103679751A (zh) | 一种基于量子计算的碰撞检测方法 | |
CN103679271B (zh) | 基于Bloch球面坐标及量子计算的碰撞检测方法 | |
CN104123747B (zh) | 多方式触控三维建模方法和系统 | |
CN105469406A (zh) | 一种基于包围盒与空间划分的虚拟物体碰撞检测方法 | |
Levine et al. | A Peridynamic Perspective on Spring-Mass Fracture. | |
CN103236079A (zh) | 一种基于三维模型体素化的内部球改进构造方法 | |
CN102999661A (zh) | 基于粒子群优化的并行碰撞检测系统及方法 | |
CN103699715A (zh) | 一种基于光滑粒子流体动力学和非线性有限元的流固耦合方法 | |
CN103324784B (zh) | 一种基于局部约束的网格模型碰撞处理方法 | |
CN107222873A (zh) | 一种面向三维有向感知模型的wmsn全目标覆盖方法 | |
US10108172B2 (en) | Spiral toolpaths for high-speed machining of polygonal pockets | |
CN103337091A (zh) | 一种基于厚度的柔性场景连续碰撞检测方法 | |
CN104778737B (zh) | 基于gpu的大规模落叶实时渲染方法 | |
Tang et al. | Hierarchical and controlled advancement for continuous collision detectionof rigid and articulated models | |
Favilli et al. | Geometric deep learning for statics-aware grid shells | |
CN106658537A (zh) | 构建无人机自组织网络节点的三维时空相关群组移动模型的方法及系统 | |
Im et al. | Visual simulation of rapidly freezing water based on crystallization | |
Wong et al. | Continuous collision detection for deformable objects using permissible clusters | |
Tang et al. | FLAT: Flux-Aware Imperceptible Adversarial Attacks on 3D Point Clouds | |
Zeng et al. | Coverage optimization algorithm for multi-robot system based on virtual force refinement | |
CN104615481B (zh) | 一种基于簇聚类的风吹有叶树摇曳模拟方法 | |
Luo et al. | AE-Reorient: Active Exploration Based Reorientation for Robotic Pick-and-Place | |
Waszak | Limbless movement simulation with a particle‐based system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |