CN106096082A - 一种基于数据分块及并行处理的碰撞检测方法 - Google Patents

一种基于数据分块及并行处理的碰撞检测方法 Download PDF

Info

Publication number
CN106096082A
CN106096082A CN201610368306.1A CN201610368306A CN106096082A CN 106096082 A CN106096082 A CN 106096082A CN 201610368306 A CN201610368306 A CN 201610368306A CN 106096082 A CN106096082 A CN 106096082A
Authority
CN
China
Prior art keywords
bounding box
node
deblocking
collision
parallel processing
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.)
Pending
Application number
CN201610368306.1A
Other languages
English (en)
Inventor
许启金
于启万
别长报
吴翔
叶辉
郑浩
吴伟
廖志斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
State Grid Corp of China SGCC
Suzhou Power Supply Co of State Grid Anhui Electric Power Co Ltd
Original Assignee
State Grid Corp of China SGCC
Suzhou Power Supply Co of State Grid Anhui Electric Power Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by State Grid Corp of China SGCC, Suzhou Power Supply Co of State Grid Anhui Electric Power Co Ltd filed Critical State Grid Corp of China SGCC
Priority to CN201610368306.1A priority Critical patent/CN106096082A/zh
Publication of CN106096082A publication Critical patent/CN106096082A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/36Circuit design at the analogue level
    • G06F30/367Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于数据分块及并行处理的碰撞检测方法,通过构建虚拟物体的包围盒树,以各节点的包围盒为数据库,根据计算机流程数将数据库进行分块;通过数据分块,可以有效减少每个处理器处理的任务数,避免数据分配不均匀造成的延误。流水线方法为一种典型的并行处理方法,将问题分为若干个解决步骤,各步骤由独立的处理器执行,通过加速各处理器从而提高整条流水线速度。

Description

一种基于数据分块及并行处理的碰撞检测方法
技术领域
本发明涉及一种碰撞检测方法,具体是一种基于数据分块及并行处理的碰撞检测方法。
背景技术
碰撞检测是虚拟现实技术的重要组成部分,其主要任务是检测各种物体模型之间是否发生碰撞,如果发生碰撞则给出碰撞信息,同时指导系统进行下一步的操作。碰撞检测的基础是现实生活中两个不可穿透的对象不能同时共享同一片空间区域的事实。目前,按照检测对象的性质,碰撞检测可以分为基于时间域和基于空间域的检测算法,在此基础上又可以进一步划分为不同的种类。
随着网络技术的发展和虚拟现实技术的兴起,碰撞检测问题再一次成为研究的热点。虚拟场景的规模不断扩大,模型的精度也越来越高,通过减少碰撞检测的次数来加快算法成为研究的重点方向。
发明内容
针对上述现有技术存在的问题,本发明提供一种基于数据分块及并行处理的碰撞检测方法,数据分块和并行技术引入碰撞检测中,提高了物体碰撞检测速度,快速识别碰撞结果。
为了实现上述目的,本发明采用的技术方案是:该种基于数据分块及并行处理的碰撞检测方法,包括以下步骤:
(1)以虚拟物体几何全集的包围盒作为根节点,根据与分裂平面的位置将所有元素分为数量相当的两部分,分别建立包围盒;其中,以包围盒在此方向上最长轴为方向轴选择分裂平面;
(2)以上述这两部分为根节点自顶向下进行递归分治,叶节点的个数满足条件2m≤M,m为包围盒层数,M为处理器数;
(3)采用数据分块技术分割包围盒树,以每个叶节点的包围盒为一个数据块组成数据 库,各层的每个数据块由计算机对应的一个处理器负责,将各物体的碰撞问题细分为数据块中几何元素的碰撞检测;
(4)检测环境中两虚拟物体几何全集的包围盒,若发生碰撞,对物体的边界进行预处理,以各自叶节点为当前节点;
(5)取两物体的当前结点的包围盒逐一配对进行碰撞测试,若不发生碰撞,则停止遍历,若发生碰撞,则将当前节点存入链表中,链表中各数据相互独立,由各处理器并行进行访问调用,并作为下次碰撞检测的初选范围;
(6)以当前节点的上层根节点为当前结点,递归执行步骤(5)。
进一步,所述包围盒为轴对齐包围盒AABB或者方向包围盒OBB或者k-dop包围盒。
进一步,所述各叶节点包围盒的碰撞测试均为相互独立,无直接相关联,存储在数据链表中,各处理器并行进行访问。
进一步,所述步骤(5)中根据物体运动的连续性,下次检测链表中的各节点,由各节点碰撞状态变化确定检测范围;可避免后续的冗余检测。
与现有技术相比,本发明采用数据分块和并行处理相结合的方式,通过数据分块,可以有效减少每个处理器处理的任务数,避免数据分配不均匀造成的延误。流水线处理为一种典型的并行处理方法,将问题分为若干个解决步骤,各步骤由独立的处理器执行,通过加速各处理器从而提高整条流水线速度。
附图说明
图1是本发明的流程图;
图2是本发明中包围盒树的示意图。
具体实施方式
下面将对本发明作进一步说明。
如图1和图2所示,本发明包括以下步骤:
(1)以虚拟物体几何全集的包围盒作为根节点,根据与分裂平面的位置将所有元素分为数量相当的两部分,分别建立包围盒;其中,以包围盒在此方向上最长轴为方向轴选择 分裂平面;
(2)以上述这两部分为根节点自顶向下进行递归分治,叶节点的个数满足条件2m≤M,m为包围盒层数,M为处理器数;
(3)采用数据分块技术分割包围盒树,以每个叶节点的包围盒为一个数据块组成数据库,各层的每个数据块由计算机对应的一个处理器负责,将各物体的碰撞问题细分为数据块中几何元素的碰撞检测(碰撞检测即为检测各包围盒是否有交集);
(4)检测环境中两虚拟物体几何全集的包围盒,若发生碰撞,对物体的边界进行预处理,以各自叶节点为当前节点;
(5)取两物体的当前结点的包围盒逐一配对进行碰撞测试,若不发生碰撞,则停止遍历,若发生碰撞,则将当前节点存入链表中,链表中各数据相互独立,由各处理器并行进行访问调用,并作为下次碰撞检测的初选范围;
(6)以当前节点的上层根节点为当前节点,递归执行步骤(5)。
进一步,所述包围盒为轴对齐包围盒AABB或者方向包围盒OBB或者k-dop包围盒。
进一步,所述各叶节点包围盒的碰撞测试均为相互独立,无直接相关联,存储在数据链表中,各处理器并行进行访问。
进一步,所述步骤(5)中根据物体运动的连续性,下次检测链表中的各节点,由各节点碰撞状态变化确定检测范围。
整个检测过程中,需要多次执行操作各数据块,各节点包围盒的碰撞测试是相互独立、算法相同的,没有直接相关联,应用流水线技术动态划分总任务进程,避免数据分配不均匀造成的延误,操作同步执行,不需要对任务加锁,加速检测速度。算法如下:

Claims (4)

1.一种基于数据分块及并行处理的碰撞检测方法,其特征在于,包括以下步骤:
(1)以虚拟物体几何全集的包围盒作为根节点,根据与分裂平面的位置将所有元素分为数量相当的两部分,分别建立包围盒;
(2)以上述这两部分为根节点自顶向下进行递归分治,叶节点的个数满足条件2m≤M,m为包围盒层数,M为处理器数;
(3)采用数据分块技术分割包围盒树,以每个叶节点的包围盒为一个数据块组成数据库,各层的每个数据块由计算机对应的一个处理器负责,将各物体的碰撞问题细分为数据块中几何元素的碰撞检测;
(4)检测环境中两虚拟物体几何全集的包围盒,若发生碰撞,对物体的边界进行预处理,以各自叶节点为当前节点;
(5)取两物体的当前结点的包围盒逐一配对进行碰撞测试,若不发生碰撞,则停止遍历,若发生碰撞,则将当前节点存入链表中,链表中各数据相互独立,由各处理器并行进行访问调用,并作为下次碰撞检测的初选范围;
(6)以当前节点的上层根节点为当前节点,递归执行步骤(5)。
2.根据权利要求1所述的一种基于数据分块及并行处理的碰撞检测方法,其特征在于,所述包围盒为轴对齐包围盒AABB或者方向包围盒OBB或者k-dop包围盒。
3.根据权利要求1所述的一种基于数据分块及并行处理的碰撞检测方法,其特征在于,所述各叶节点包围盒的碰撞测试均为相互独立,无直接相关联,存储在数据链表中,各处理器并行进行访问。
4.根据权利要求1所述的一种基于数据分块及并行处理的碰撞检测方法,其特征在于,所述步骤(5)中根据物体运动的连续性,下次检测链表中的各节点,由各节点碰撞状态变化确定检测范围。
CN201610368306.1A 2016-05-24 2016-05-24 一种基于数据分块及并行处理的碰撞检测方法 Pending CN106096082A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610368306.1A CN106096082A (zh) 2016-05-24 2016-05-24 一种基于数据分块及并行处理的碰撞检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610368306.1A CN106096082A (zh) 2016-05-24 2016-05-24 一种基于数据分块及并行处理的碰撞检测方法

Publications (1)

Publication Number Publication Date
CN106096082A true CN106096082A (zh) 2016-11-09

Family

ID=57229494

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610368306.1A Pending CN106096082A (zh) 2016-05-24 2016-05-24 一种基于数据分块及并行处理的碰撞检测方法

Country Status (1)

Country Link
CN (1) CN106096082A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106469138A (zh) * 2016-09-29 2017-03-01 东软集团股份有限公司 词云的生成方法及装置
WO2022121525A1 (zh) * 2020-12-11 2022-06-16 中兴通讯股份有限公司 三维场景数据的渲染方法及装置、存储介质、电子装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101593366A (zh) * 2009-06-24 2009-12-02 北京航空航天大学 一种基于平衡二叉树的大规模虚拟场景碰撞检测方法
CN102446122A (zh) * 2011-12-21 2012-05-09 上海电机学院 一种基于包围盒树的碰撞检测方法
CN102663825A (zh) * 2012-02-29 2012-09-12 中山大学 一种三维碰撞检测方法
CN102193837B (zh) * 2011-04-26 2012-12-05 浙江大学 一种基于前线的包围盒碰撞检测方法
CN102393826B (zh) * 2011-07-15 2013-01-30 浙江大学 一种基于多核并行处理的柔性场景连续碰撞检测方法
CN104867177A (zh) * 2014-12-23 2015-08-26 上海电机学院 一种基于包围盒树法的并行碰撞检测方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101593366A (zh) * 2009-06-24 2009-12-02 北京航空航天大学 一种基于平衡二叉树的大规模虚拟场景碰撞检测方法
CN102193837B (zh) * 2011-04-26 2012-12-05 浙江大学 一种基于前线的包围盒碰撞检测方法
CN102393826B (zh) * 2011-07-15 2013-01-30 浙江大学 一种基于多核并行处理的柔性场景连续碰撞检测方法
CN102446122A (zh) * 2011-12-21 2012-05-09 上海电机学院 一种基于包围盒树的碰撞检测方法
CN102663825A (zh) * 2012-02-29 2012-09-12 中山大学 一种三维碰撞检测方法
CN104867177A (zh) * 2014-12-23 2015-08-26 上海电机学院 一种基于包围盒树法的并行碰撞检测方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106469138A (zh) * 2016-09-29 2017-03-01 东软集团股份有限公司 词云的生成方法及装置
CN106469138B (zh) * 2016-09-29 2020-07-17 东软集团股份有限公司 词云的生成方法及装置
WO2022121525A1 (zh) * 2020-12-11 2022-06-16 中兴通讯股份有限公司 三维场景数据的渲染方法及装置、存储介质、电子装置

Similar Documents

Publication Publication Date Title
TWI395155B (zh) 用於處理射線之方法與系統以及包括相關聯資料之機器可存取媒體
US9342065B2 (en) Path interference and generation device and method
EP2973427B1 (en) Continuous interaction learning and detection in real-time
CN105700956A (zh) 用于处理分布式作业的方法和系统
CN106096082A (zh) 一种基于数据分块及并行处理的碰撞检测方法
US20200143904A1 (en) Predicting molecular properties of molecular variants using residue-specific molecular structural features
CN108725437A (zh) 一种自动停车入库方法和装置
WO2018083512A1 (en) Process and system for providing a machining method for manufacturing a feature in a part
CN102393826A (zh) 一种基于多核并行处理的柔性场景连续碰撞检测方法
US20140074538A1 (en) Stack handling operation method, system, and computer program
CN104268427A (zh) 面向车身多工位装配过程的多偏差源在线诊断系统及方法
Lu et al. Modeling and simulation of aircraft assembly line based on quest
US20150103080A1 (en) Computing device and method for simulating point clouds
CN107457793A (zh) 利用多机器人动态用户框进行动态激光触摸感测
CN102902769A (zh) 一种云计算平台数据库基准测试系统及其方法
KR101542558B1 (ko) 웨이퍼 수율 맵을 분석하는 방법 및 상기 방법을 기록한 기록매체
CN102819237A (zh) 一种实体法铣削仿真过程中仿真目标毛坯的产生方法
US9208535B2 (en) Method and apparatus for graphical processing unit (GPU) accelerated large-scale web community detection
von Boeselager et al. Model‐Based Design and Experimental Evaluation of a High‐Throughput Electrode Feeding and Stacking Process
Du et al. A rapid oriented detection method of virtual components for augmented assembly
US9262572B2 (en) Fast and accurate capacitance checker
Weber et al. Workpiece positioning based on supervised learning methods for simulation-based optimization of virtual tooling processes
CN104461478A (zh) 三次元云端离线编程系统及方法
CN102810058A (zh) 量测编程坐标系刷新系统及方法
US20160357879A1 (en) Method and apparatus for checking the buildability of a virtual prototype

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20161109