CN104766371A - Collision detection method for objects in large-scale scene - Google Patents

Collision detection method for objects in large-scale scene Download PDF

Info

Publication number
CN104766371A
CN104766371A CN201510173408.3A CN201510173408A CN104766371A CN 104766371 A CN104766371 A CN 104766371A CN 201510173408 A CN201510173408 A CN 201510173408A CN 104766371 A CN104766371 A CN 104766371A
Authority
CN
China
Prior art keywords
mtd
msub
mtr
epsiv
aabb bounding
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
CN201510173408.3A
Other languages
Chinese (zh)
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.)
Nanjing Institute of Technology
Original Assignee
Nanjing Institute of Technology
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 Nanjing Institute of Technology filed Critical Nanjing Institute of Technology
Priority to CN201510173408.3A priority Critical patent/CN104766371A/en
Publication of CN104766371A publication Critical patent/CN104766371A/en
Pending legal-status Critical Current

Links

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

The invention provides a collision detection method for objects in a large-scale scene. The method includes the first step of establishing an AABB bounding box, the second step of conducting dimension reduction processing, the third step of obtaining a dynamic list and the fourth step of carrying out collision detection calculation. The Sweep and Prune algorithm is comprehensively used, objects which do not collide in the future are removed by scanning states of moving objects in the three-dimensional scene, and therefore the calculation quantity of collision detection is greatly reduced, and real-time rendering efficiency of a physical engine is improved. The latest research achievements of current computer vision and physical engine technical fields are introduced into a power transmission line inspection simulating training system, and a virtual power transmission line inspection training environment which has high simulation, is interactive and is deeply immersed is showed to trainees on the basis of an efficient large-scale scene collision detection algorithm. The collision detection method lays key theory and application foundations for the collision detection technology and physical engine technology in electric system simulation training and has very good application prospects.

Description

Method for detecting object collision in large-scale scene
Technical Field
The invention is a mode identification method developed based on computer vision technology and three-dimensional physical engine technology, and has important application in virtual reality and computer simulation physical engines.
Background
The power transmission line simulation training has important significance for improving the operation skills of power workers, preventing casualty accidents and ensuring the safe and stable operation of a power grid. However, due to the high-risk industrial characteristics of the power grid and the special working environment, the traditional training mode cannot meet the requirement of electric power safety training, which is mainly reflected in the following aspects:
1) the transmission line distributes extensively, the circuit is long, the part is many, and traditional classroom teaching mode is difficult to convey the technical essential and the skill of circuit tour, even adopt on-the-spot practice training teaching also because the circuit defect and the trouble kind are miscellaneous and difficult to expand.
2) The traditional teaching and training mode enables the trainees to be in a passive state frequently and difficult to interact, so that the learning interest and subjective activity of the trainees are reduced, and the training effect and quality are influenced.
3) Due to the restriction of various fields, capital and other reasons, the practical training bases of all levels of electric power training institutions or units in a short time are difficult to build and slow to transform.
4) The field practical operation needs to consume a large amount of manpower and material resources, and the repeated drilling is difficult to meet due to the limitation of the number of operation stations.
The virtual reality technology refers to a multidisciplinary technology which simulates a virtual perception world with realistic visual and auditory sense of touch by a computer and immerses a user into the environment through some skills and various special equipment to realize browsing and interactive investigation of the virtual world object by the user. The virtual tour simulation training system for the power transmission line constructs a highly simulated power transmission production environment and a highly simulated technological process, reproduces the structure and the working principle of a power transmission facility, and can enable practice teaching to be no longer limited in tangible classes and laboratories. The virtual reality technology enables an operator to be immersed in a virtual environment simulated by a computer, and by means of the system, students can repeatedly and safely watch, play and practice, and observe and operate from all angles in an all-round manner. And he can play a role all the way through in the operation process and interact with the virtual entity in real time. The students can solve the problems in the interaction process through own perception and cognitive ability, summarize experience knowledge and fully exert subjective initiative.
Based on the analysis, in order to enable the power transmission line training technical means to better adapt to the requirements of power enterprise training work in new situation, the virtual reality technology is applied to construct a power virtual environment for operation skill training.
Therefore, the technology introduces the latest research results in the field of computer vision and physical engines into the power transmission line inspection simulation training system, and embodies the intersection of multiple disciplines and multiple fields by utilizing the large-scale scene collision detection algorithm based on the Sweep and Prunne algorithm. The large-scale scene collision detection algorithm based on the Sweep and round algorithm improves the collision detection efficiency, provides a key theory and application basis for the tour simulation training of the power transmission line, and has a very good application prospect.
Disclosure of Invention
In order to solve the defects in the prior art, the invention provides the method for detecting the object collision in the large-scale scene, which is simple and convenient to operate, and greatly improves the collision detection efficiency.
In order to solve the technical problem, the invention provides a method for detecting object collision in a large-scale scene, which is characterized by comprising the following steps: the method comprises the following steps:
step one, establishing an AABB bounding box: calculating an AABB bounding box for each object in a scene in a three-dimensional coordinate system, wherein the AABB bounding box of each object is a cubic box with a fixed size, and three coordinate axes of the three-dimensional coordinate system are respectively an x axis, a y axis and a z axis; the three sets of parallel edges of the AABB bounding box are parallel to the three coordinate axes of the three-dimensional coordinate system, respectively, wherein the points (x, y, z) within the AABB bounding box are all within two vertices of the AABB bounding box, i.e.:
xmin≤x≤xmax
ymin≤y≤ymax
zmin≤z≤zmax
two vertexes are respectively (x)min,ymin,zmin) And (x)max,ymax,zmax);
Step two, dimension reduction treatment: converting the AABB bounding boxes into a one-dimensional coordinate system from a three-dimensional coordinate system, taking an area between two end points as an interval after the AABB bounding boxes are converted into the one-dimensional coordinate system, and sequencing the end points of each AABB bounding box to obtain a sequencing list of the AABB bounding boxes;
step three, acquiring a dynamic list: calculating the collision time of the adjacent objects by adopting a Sweep and Prune algorithm from the ordered list of the AABB bounding boxes in the step two, determining the intersected AABB bounding boxes, and obtaining a dynamic list of the AABB bounding boxes according to the sequence of the collision time;
step four, collision detection calculation: and traversing the AABB bounding boxes in the dynamic list in the third step to obtain an intersected object pair.
In the third step, the collision time of the adjacent object is calculated by adopting a Sweep and round algorithm, and the specific calculation process is as follows: first, the positions of the object i and the object j are calculated, and the following equation is given:
mpid(si,j)=pid+vidsi,j+aid(si,j)2,d∈{x,y,z} (1)
mpid(si,j)=pjd+vjdsi,j+ajd(si,j)2,d∈{x,y,z} (2)
wherein, Pid,vid,aidRespectively representing the initial position, initial velocity, and acceleration, m, of the object ipid(si,j) Represents the time si,jThe position of the object i; pjd,vjd,ajdRespectively representing the initial position, initial velocity, and acceleration, m, of the object jpjd(si,j) Represents the time si,jThe location of object j; si,jRepresenting the time of movement of objects i and j;
when the object i and the object j collide, the positions of the object i and the object j are the same, and then:
mpid(si,j)-mpjd(si,j)=0 (3)
time of collision si,jThe expression of (a) is:
Δad(si,j)2+Δvdsi,j+Δpd=0 (4)
wherein Δ pd=pid-pjd
Δvd=vid-vjd
Δad=aid-ajd
When the object i and the object j collide linearly, the acceleration a of the twoidAnd ajdBoth 0, or when object i and object j collide nonlinearly, but the accelerations a of bothidAnd ajdEqual; in the formula (4), Δ ad0, time of collision s of object i and object ji,jBecomes:
Δvdsi,j+Δpd=0 (5)。
preferably, the present invention further comprises the step five: AABB bounding box updates.
Preferably, the AABB bounding box updates include AABB bounding box updates for objects that are deformed and AABB bounding box updates for objects that are not deformed.
Preferably, the updating of the AABB bounding box of the deformed object is specifically: regarding the two objects which deform after collision as a whole, a new AABB bounding box is established by using the method of the step one.
Preferably, the updating of the bounding box of the object without deformation is specifically as follows: an object which is not deformed in the three-dimensional space moves in a scene according to six degrees of freedom, and the object respectively translates to three coordinate axes and respectively rotates around the coordinate axes; after translation to three coordinate axes, the translation vector is:
T=(x,y,z)T
the corresponding matrix is transformed by rotation around three coordinate axes:
<math> <mrow> <mi>R</mi> <mrow> <mo>(</mo> <msub> <mi>&epsiv;</mi> <mi>x</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <mfenced open='(' close=')'> <mtable> <mtr> <mtd> <mn>1</mn> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mi>cos</mi> <msub> <mi>&epsiv;</mi> <mi>x</mi> </msub> </mtd> <mtd> <mi>sin</mi> <msub> <mi>&epsiv;</mi> <mi>x</mi> </msub> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mo>-</mo> <mi>sin</mi> <msub> <mi>&epsiv;</mi> <mi>x</mi> </msub> </mtd> <mtd> <mi>cos</mi> <msub> <mi>&epsiv;</mi> <mi>x</mi> </msub> </mtd> </mtr> </mtable> </mfenced> </mrow> </math>
<math> <mrow> <mi>R</mi> <mrow> <mo>(</mo> <msub> <mi>&epsiv;</mi> <mi>y</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <mfenced open='{' close=')'> <mtable> <mtr> <mtd> <mi>cos</mi> <msub> <mi>&epsiv;</mi> <mi>y</mi> </msub> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mo>-</mo> <mi>sin</mi> <msub> <mi>&epsiv;</mi> <mi>y</mi> </msub> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mn>1</mn> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mi>sin</mi> <msub> <mi>&epsiv;</mi> <mi>y</mi> </msub> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mi>cos</mi> <msub> <mi>&epsiv;</mi> <mi>y</mi> </msub> </mtd> </mtr> </mtable> </mfenced> </mrow> </math>
<math> <mrow> <mi>R</mi> <mrow> <mo>(</mo> <msub> <mi>&epsiv;</mi> <mi>z</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <mfenced open='(' close=')'> <mtable> <mtr> <mtd> <mi>cos</mi> <msub> <mi>&epsiv;</mi> <mi>z</mi> </msub> </mtd> <mtd> <mi>sin</mi> <msub> <mi>&epsiv;</mi> <mi>z</mi> </msub> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mo>-</mo> <mi>sin</mi> <msub> <mi>&epsiv;</mi> <mi>z</mi> </msub> </mtd> <mtd> <mi>cos</mi> <msub> <mi>&epsiv;</mi> <mi>z</mi> </msub> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> </mtable> </mfenced> </mrow> </math>
wherein,xyzis a rotation parameter.
Preferably, the invention further comprises an object collision screening process, wherein the object which is not collided is eliminated by using a sweep and deletion technology, and then the collision detection calculation is carried out on the deleted object.
The invention achieves the following beneficial technical effects: according to the method, the Sweep and round algorithm is comprehensively used, and objects which cannot collide in the future are removed according to the states of moving objects in the scanned three-dimensional scene, so that the calculated amount of collision detection is greatly reduced, and the real-time rendering efficiency of a physical engine is accelerated. The technology of the invention introduces the latest research results in the technical field of computer vision and physical engines into the inspection simulation training system of the power transmission line, and presents a virtual inspection training environment with high simulation, interaction and deep immersion for trainees on the basis of a high-efficiency large-scale scene collision detection algorithm. The character can not pass through the object in the scene, and a good human-computer interaction function is embodied. The collision detection speed of the algorithm is 40-50 fps. The real-time performance, the verisimilitude performance and the fluency of the three-dimensional picture are ensured.
Drawings
FIG. 1 is a schematic view of the dimension reduction process of the present invention;
FIG. 2 is a schematic diagram of a dynamic list of the present invention;
FIG. 3 is a graph comparing the detection efficiency of the collision detection using the method of the present invention with the detection efficiency of the collision detection using a conventional method.
Detailed Description
So that the examiner can better understand the technical features and technical contents of the present invention and the technical effects achieved thereby, the drawings of the present invention will be described in more detail with reference to the embodiments. However, the drawings are only for better illustration of the technical solution of the present invention, so the examiner should not limit the scope of the claims of the present invention with respect to the drawings.
The invention is further described with reference to the following figures and examples.
As shown in fig. 1-2, the present invention provides a method for detecting object collision in a large-scale scene, which is characterized in that: the method comprises the following steps:
step one, establishing an AABB bounding box: calculating an AABB bounding box for each object in a scene in a three-dimensional coordinate system, wherein the AABB bounding box of each object is a cubic box with a fixed size, and three coordinate axes of the three-dimensional coordinate system are respectively an x axis, a y axis and a z axis; three groups of parallel edges of the AABB bounding box are respectively parallel to three coordinate axes of a three-dimensional coordinate system, wherein points (x, y, z) in the AABB bounding box are respectively in two vertexes of the AABB bounding box, and the two vertexes are respectively (x)min,ymin,zmin) And (x)max,ymax,zmax) Namely:
xmin≤x≤xmax
ymin≤y≤ymax
zmin≤z≤zmax
because the geometric shapes of objects in a scene are different, if it is difficult to directly judge whether two objects are in contact, a box capable of surrounding the objects is established for each object, and it is simpler to detect whether the two boxes are intersected, at this time, the detection of two complex objects can be converted into the problem of detecting whether the two boxes are intersected, and if the surrounding boxes of the two complex objects are not intersected, the two complex objects are considered to be not intersected.
Step two, dimension reduction treatment: projecting the AABB bounding box on an x-axis, a y-axis and a z-axis from a three-dimensional coordinate system respectively, and selecting a vertex (x) from a projection pointmin,ymin,zmin) And (x)max,ymax,zmax) Sequencing two end points of a projection interval i of the AABB bounding box of the object i on each coordinate axis from small to large, wherein i is 1,2, N; for example: the end point of the projection interval of the object i on the x axis is xi,minAnd xi,max(ii) a If the projection intervals of the AABB bounding boxes of the two objects on the three coordinate axes are overlapped, the AABB bounding boxes of the two objects are definitely intersected, and the two objects are definitely collided.
Step three, acquiring a dynamic list: calculating the collision time of the adjacent objects by adopting a Sweep and Prune algorithm from the ordered list of the AABB bounding boxes in the step two, determining the intersected AABB bounding boxes, and obtaining a dynamic list of the AABB bounding boxes according to the sequence of the collision time;
taking the dynamic list of the x axis as an example, calculating the collision time of the adjacent objects by adopting a Sweep and Prune algorithm, wherein the specific calculation process comprises the following steps: first, the positions of the object i and the object j are calculated, and the following equation is given:
mpid(si,j)=pid+vidsi,j+aid(si,j)2,d∈{x,y,z} (1)
mpid(si,j)=pjd+vjdsi,j+ajd(si,j)2,d∈{x,y,z} (2)
wherein, Pid,vid,aidRespectively representing the initial position, initial velocity, and acceleration, m, of the object ipid(si,j) Represents the time si,jThe position of the object i; pjd,vjd,ajdRespectively representing the initial position, initial velocity, and acceleration, m, of the object jpjd(si,j) Represents the time si,jThe location of object j; si,jRepresenting the time of movement of objects i and j;
when the object i and the object j collide, the positions of the object i and the object j are the same, and then:
mpid(si,j)-mpjd(si,j)=0 (3)
time of collision si,jThe expression of (a) is:
Δad(si,j)2+Δvdsi,j+Δpd=0 (4)
wherein Δ pd=pid-pjd
Δvd=vid-vjd
Δad=aid-ajd
When the object i and the object j collide linearly, the acceleration a of the twoidAnd ajdBoth 0, or when object i and object j collide non-linearly, but bothAcceleration a ofidAnd ajdEqual; in the formula (4), Δ ad0, time of collision s of object i and object ji,jBecomes:
Δvdsi,j+Δpd=0 (5)
dynamic lists for the y-axis and z-axis can be obtained using the same method.
Step four, collision detection calculation: traversing the AABB bounding boxes in the dynamic list in the third step to obtain an intersected object pair; specifically, taking x-axis as an example, the end point of the projection interval i of the object i on the x-axis is xi,minAnd xi,maxThe end point of the projection interval i-1 of the object i-1 on the x axis is xi-1,minAnd xi-1,max(ii) a When the two intervals are ordered as x on the x-axisi-1,min,xi-1,max,xi,min,xi,maxThen, removing the object pairs corresponding to the interval i and the interval j from the dynamic list of the x axis; if the sequence of the interval i and the interval j on the x axis is xi-1,min,xi,min,xi-1,max,xi,maxObtaining an intersecting object pair; traversing all the objects in the dynamic list in such a way, and obtaining the object pairs to be intersected; the method of obtaining the y-axis and z-axis intersecting object pairs is the same as for the x-axis.
Step five: updating an AABB bounding box; the AABB bounding box update comprises AABB bounding box update of an object which is deformed and AABB bounding box update of an object which is not deformed;
the updating of the AABB bounding box of the deformed object is specifically as follows: regarding the two objects which deform after collision as a whole, a new AABB bounding box is established by using the method of the step one.
The updating of the bounding box of the object which is not deformed specifically comprises the following steps: an object which is not deformed in the three-dimensional space moves in a scene according to six degrees of freedom, and the object respectively translates to three coordinate axes and respectively rotates around the coordinate axes; after translation to three coordinate axes, the translation vector is:
T=(x,y,z)T
the corresponding matrix is transformed by rotation around three coordinate axes:
<math> <mrow> <mi>R</mi> <mrow> <mo>(</mo> <msub> <mi>&epsiv;</mi> <mi>x</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <mfenced open='(' close=')'> <mtable> <mtr> <mtd> <mn>1</mn> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mi>cos</mi> <msub> <mi>&epsiv;</mi> <mi>x</mi> </msub> </mtd> <mtd> <mi>sin</mi> <msub> <mi>&epsiv;</mi> <mi>x</mi> </msub> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mo>-</mo> <mi>sin</mi> <msub> <mi>&epsiv;</mi> <mi>x</mi> </msub> </mtd> <mtd> <mi>cos</mi> <msub> <mi>&epsiv;</mi> <mi>x</mi> </msub> </mtd> </mtr> </mtable> </mfenced> </mrow> </math>
<math> <mrow> <mi>R</mi> <mrow> <mo>(</mo> <msub> <mi>&epsiv;</mi> <mi>y</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <mfenced open='{' close=')'> <mtable> <mtr> <mtd> <mi>cos</mi> <msub> <mi>&epsiv;</mi> <mi>y</mi> </msub> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mo>-</mo> <mi>sin</mi> <msub> <mi>&epsiv;</mi> <mi>y</mi> </msub> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mn>1</mn> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mi>sin</mi> <msub> <mi>&epsiv;</mi> <mi>y</mi> </msub> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mi>cos</mi> <msub> <mi>&epsiv;</mi> <mi>y</mi> </msub> </mtd> </mtr> </mtable> </mfenced> </mrow> </math>
<math> <mrow> <mi>R</mi> <mrow> <mo>(</mo> <msub> <mi>&epsiv;</mi> <mi>z</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <mfenced open='(' close=')'> <mtable> <mtr> <mtd> <mi>cos</mi> <msub> <mi>&epsiv;</mi> <mi>z</mi> </msub> </mtd> <mtd> <mi>sin</mi> <msub> <mi>&epsiv;</mi> <mi>z</mi> </msub> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mo>-</mo> <mi>sin</mi> <msub> <mi>&epsiv;</mi> <mi>z</mi> </msub> </mtd> <mtd> <mi>cos</mi> <msub> <mi>&epsiv;</mi> <mi>z</mi> </msub> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> </mtable> </mfenced> </mrow> </math>
wherein,xyzis a rotation parameter.
In order to further improve the efficiency of collision detection, the invention also comprises an object collision screening process, which is to eliminate the objects which can not collide by using the sweeping and deleting technology and then to perform collision detection calculation on the deleted objects.
According to the invention, a Sweep and round algorithm based on dynamics is comprehensively used, and objects which cannot collide in the future are removed by scanning the states of moving objects in a three-dimensional scene, so that the calculated amount of collision detection is greatly reduced, and the real-time rendering efficiency of a physical engine is accelerated. As shown in fig. 3: the detection efficiency of the collision detection by applying the method of the invention is compared with the detection efficiency of the collision detection by using a common method, and the running time of the collision detection processed by the curve GJK algorithm of FIG. 3 is increased linearly along with the collision complexity, so the method is not suitable for the collision detection with multiple objects; compared with the Swep and round algorithm and the BSP-OBB algorithm, the method can realize more efficient processing of multi-object collision detection, but the calculation time of the Swep and round algorithm and the BSP-OBB algorithm is obviously longer than that of the dynamics-based Swep and round algorithm, so that the detection efficiency is obviously improved by adopting the detection method.
The present invention has been disclosed in terms of preferred embodiments, but it is not intended to be limited thereto, and all technical solutions obtained by substituting or converting equivalents thereof fall within the scope of the present invention.

Claims (8)

1. A method for detecting object collision in a large-scale scene is characterized in that: the method comprises the following steps:
step one, establishing an AABB bounding box: calculating an AABB bounding box for each object in a scene in a three-dimensional coordinate system, wherein the AABB bounding box of each object is a cubic box with a fixed size, and three coordinate axes of the three-dimensional coordinate system are respectively an x axis, a y axis and a z axis; the three sets of parallel edges of the AABB bounding box are parallel to the three coordinate axes of the three-dimensional coordinate system, respectively, wherein the points (x, y, z) within the AABB bounding box are all within two vertices of the AABB bounding box, i.e.:
xmin≤x≤xmax
ymin≤y≤ymax
zmin≤z≤zmax
two vertexes are respectively (x)min,ymin,zmin) And (x)max,ymax,zmax);
Step two, dimension reduction treatment: converting the AABB bounding boxes into a one-dimensional coordinate system from a three-dimensional coordinate system, taking an area between two end points as an interval after the AABB bounding boxes are converted into the one-dimensional coordinate system, and sequencing the end points of each AABB bounding box to obtain a sequencing list of the AABB bounding boxes;
step three, acquiring a dynamic list: calculating the collision time of the adjacent objects by adopting a Sweep and Prune algorithm from the ordered list of the AABB bounding boxes in the step two, determining the intersected AABB bounding boxes, and obtaining a dynamic list of the AABB bounding boxes according to the sequence of the collision time;
step four, collision detection calculation: and traversing the AABB bounding boxes in the dynamic list in the third step to obtain an intersected object pair.
2. The method of claim 1, wherein the method comprises: in the third step, the collision time of the adjacent objects is calculated by adopting a Sweep and round algorithm, and the specific calculation process is as follows: first, the positions of the object i and the object j are calculated, and the following equation is given:
mpid(si,j)=pid+vidsi,j+aid(si,j)2,d∈{x,y,z} (1)
mpid(si,j)=pjd+vjdsi,j+ajd(si,j)2,d∈{x,y,z} (2)
wherein, Pid,vid,aidRespectively representing the initial position, initial velocity, and acceleration, m, of the object ipid(si,j) Represents the time si,jThe position of the object i; pjd,vjd,ajdRespectively representing the initial position, initial velocity, and acceleration, m, of the object jpjd(si,j) Represents the time si,jThe location of object j; si,jRepresenting the time of movement of objects i and j;
when the object i and the object j collide, the positions of the object i and the object j are the same, and then:
mpid(si,j)-mpjd(si,j)=0 (3)
time of collision si,jThe expression of (a) is:
Δad(si,j)2+Δvdsi,j+Δpd=0 (4)
wherein Δ pd=pid-pjd
Δvd=vid-vjd
Δad=aid-ajd
3. The method of claim 2, wherein the method comprises: when the object i and the object j collide linearly, the acceleration a of the twoidAnd ajdBoth 0, or when object i and object j collide nonlinearly, but the accelerations a of bothidAnd ajdEqual; in the formula (4), Δ ad0, time of collision s of object i and object ji,jBecomes:
Δvdsi,j+Δpd=0 (5)。
4. the method of claim 1, wherein the method comprises: further comprises the following steps: AABB bounding box updates.
5. The method of claim 4, wherein the method comprises: the AABB bounding box update comprises an AABB bounding box update of an object which is deformed and an AABB bounding box update of an object which is not deformed.
6. The method of claim 5, wherein the method comprises: the updating of the AABB bounding box of the deformed object is specifically as follows: regarding the two objects which deform after collision as a whole, a new AABB bounding box is established by using the method of the step one.
7. The method of claim 5, wherein the method comprises: the updating of the bounding box of the object which is not deformed specifically comprises the following steps: an object which is not deformed in the three-dimensional space moves in a scene according to six degrees of freedom, and the object respectively translates to three coordinate axes and respectively rotates around the coordinate axes; after translation to three coordinate axes, the translation vector is:
T=(x,y,z)T
the corresponding matrix is transformed by rotation around three coordinate axes:
<math> <mrow> <mi>R</mi> <mrow> <mo>(</mo> <msub> <mi>&epsiv;</mi> <mi>x</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <mfenced open='(' close=')'> <mtable> <mtr> <mtd> <mn>1</mn> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mi>cos</mi> <msub> <mi>&epsiv;</mi> <mi>x</mi> </msub> </mtd> <mtd> <mi>sin</mi> <msub> <mi>&epsiv;</mi> <mi>x</mi> </msub> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mo>-</mo> <mi>sin</mi> <msub> <mi>&epsiv;</mi> <mi>x</mi> </msub> </mtd> <mtd> <mi>cos</mi> <msub> <mi>&epsiv;</mi> <mi>x</mi> </msub> </mtd> </mtr> </mtable> </mfenced> </mrow> </math>
<math> <mrow> <mi>R</mi> <mrow> <mo>(</mo> <msub> <mi>&epsiv;</mi> <mi>y</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <mtable> <mrow> <mfenced open='(' close=')'> <mtable> <mtr> <mtd> <mi>cos</mi> <msub> <mi>&epsiv;</mi> <mi>y</mi> </msub> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mo>-</mo> <mi>sin</mi> <msub> <mi>&epsiv;</mi> <mi>y</mi> </msub> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mn>1</mn> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mi>sin</mi> <msub> <mi>&epsiv;</mi> <mi>y</mi> </msub> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mi>cos</mi> <msub> <mi>&epsiv;</mi> <mi>y</mi> </msub> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtable> </mrow> </math>
<math> <mrow> <mi>R</mi> <mrow> <mo>(</mo> <msub> <mi>&epsiv;</mi> <mi>z</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <mfenced open='(' close=')'> <mtable> <mtr> <mtd> <mi>cos</mi> <msub> <mi>&epsiv;</mi> <mi>z</mi> </msub> </mtd> <mtd> <mi>sin</mi> <msub> <mi>&epsiv;</mi> <mi>z</mi> </msub> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mo>-</mo> <mi>sin</mi> <msub> <mi>&epsiv;</mi> <mi>z</mi> </msub> </mtd> <mtd> <mi>cos</mi> <msub> <mi>&epsiv;</mi> <mi>z</mi> </msub> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> </mtable> </mfenced> </mrow> </math>
wherein,xyzis a rotation parameter.
8. The method of claim 1, wherein the method comprises: the method also comprises an object collision screening process, wherein the object which cannot be collided is eliminated by using a sweeping and deleting technology, and then the collision detection calculation is carried out on the deleted object.
CN201510173408.3A 2015-04-13 2015-04-13 Collision detection method for objects in large-scale scene Pending CN104766371A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510173408.3A CN104766371A (en) 2015-04-13 2015-04-13 Collision detection method for objects in large-scale scene

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510173408.3A CN104766371A (en) 2015-04-13 2015-04-13 Collision detection method for objects in large-scale scene

Publications (1)

Publication Number Publication Date
CN104766371A true CN104766371A (en) 2015-07-08

Family

ID=53648176

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510173408.3A Pending CN104766371A (en) 2015-04-13 2015-04-13 Collision detection method for objects in large-scale scene

Country Status (1)

Country Link
CN (1) CN104766371A (en)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105844672A (en) * 2016-04-19 2016-08-10 华东师范大学 Rapid and continuous collision detection method for multi-joint model
CN107403048A (en) * 2017-07-28 2017-11-28 中国科学院国家天文台 Collision probability computational methods based on cube models
CN110309584A (en) * 2019-06-28 2019-10-08 江苏艾佳家居用品有限公司 3D object collision checking method and detection system under a kind of indoor environment
CN110806581A (en) * 2019-10-21 2020-02-18 边缘智能研究院南京有限公司 Medical cart anti-collision detection method, device and system
CN110930521A (en) * 2019-11-21 2020-03-27 哈尔滨理工大学 Dynamic collision detection method and system applied to dimension reduction in virtual surgery
CN111192354A (en) * 2020-01-02 2020-05-22 武汉瑞莱保能源技术有限公司 Three-dimensional simulation method and system based on virtual reality
CN111814970A (en) * 2020-06-28 2020-10-23 盾钰(上海)互联网科技有限公司 Real-time physical engine enhanced calculation method, medium and system based on neural network
CN111968149A (en) * 2020-07-17 2020-11-20 哈尔滨理工大学 Coarse collision detection method in large-scale scene
CN112286036A (en) * 2020-12-29 2021-01-29 四川写正智能科技有限公司 Prevent drowned intelligent wrist-watch
CN113074893A (en) * 2021-03-05 2021-07-06 西安工业大学 Collision detection method considering stress characteristic of scanning type measuring head
CN113961460A (en) * 2021-10-25 2022-01-21 北京构力科技有限公司 Collision detection method and device based on lightweight technology, electronic equipment and computer-readable storage medium
CN116449851A (en) * 2023-06-12 2023-07-18 泰坦(天津)能源技术有限公司 Intelligent obstacle avoidance control method and system for driller robot
US20230334779A1 (en) * 2020-08-31 2023-10-19 Siemens Industry Software Inc. Method of bounding spatial data

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101071515A (en) * 2007-06-25 2007-11-14 北京金山软件有限公司 Method for realizing three-dimensional game collision detection at server end
CN101093586A (en) * 2007-07-12 2007-12-26 上海交通大学 Parallel collision detection method of real time interactive operation oriented to complex scene
CN101593366A (en) * 2009-06-24 2009-12-02 北京航空航天大学 A kind of large-scale virtual scene collision checking method based on balanced binary tree
CN102509317A (en) * 2011-09-27 2012-06-20 北京像素软件科技股份有限公司 Implementation method of real-time collision detection system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101071515A (en) * 2007-06-25 2007-11-14 北京金山软件有限公司 Method for realizing three-dimensional game collision detection at server end
CN101093586A (en) * 2007-07-12 2007-12-26 上海交通大学 Parallel collision detection method of real time interactive operation oriented to complex scene
CN101593366A (en) * 2009-06-24 2009-12-02 北京航空航天大学 A kind of large-scale virtual scene collision checking method based on balanced binary tree
CN102509317A (en) * 2011-09-27 2012-06-20 北京像素软件科技股份有限公司 Implementation method of real-time collision detection system

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
DANIEL S. COMING ET AL.: ""Kinetic sweep and prune for multi-body continuous motion"", 《COMPUTERS & GRAPHICS》 *
李艳波 等: ""基于Snake模型的碰撞检测算法研究"", 《计算机应用研究》 *
王晓荣: ""基于AABB包围盒的碰撞检测算法的研究"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *
谭睿璞 等: ""一种快速的可变形物体的碰撞检测算法"", 《计算机工程与应用》 *
邹益胜 等: ""实时碰撞检测算法综述"", 《计算机应用研究》 *

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105844672A (en) * 2016-04-19 2016-08-10 华东师范大学 Rapid and continuous collision detection method for multi-joint model
CN107403048A (en) * 2017-07-28 2017-11-28 中国科学院国家天文台 Collision probability computational methods based on cube models
CN110309584A (en) * 2019-06-28 2019-10-08 江苏艾佳家居用品有限公司 3D object collision checking method and detection system under a kind of indoor environment
CN110309584B (en) * 2019-06-28 2022-07-08 江苏艾佳家居用品有限公司 3D object collision detection method and detection system in indoor environment
CN110806581B (en) * 2019-10-21 2022-03-29 边缘智能研究院南京有限公司 Medical cart anti-collision detection method, device and system
CN110806581A (en) * 2019-10-21 2020-02-18 边缘智能研究院南京有限公司 Medical cart anti-collision detection method, device and system
CN110930521A (en) * 2019-11-21 2020-03-27 哈尔滨理工大学 Dynamic collision detection method and system applied to dimension reduction in virtual surgery
CN110930521B (en) * 2019-11-21 2023-05-19 哈尔滨理工大学 Dynamic collision detection method and system applied to dimension reduction in virtual operation
CN111192354A (en) * 2020-01-02 2020-05-22 武汉瑞莱保能源技术有限公司 Three-dimensional simulation method and system based on virtual reality
CN111814970A (en) * 2020-06-28 2020-10-23 盾钰(上海)互联网科技有限公司 Real-time physical engine enhanced calculation method, medium and system based on neural network
CN111968149A (en) * 2020-07-17 2020-11-20 哈尔滨理工大学 Coarse collision detection method in large-scale scene
US20230334779A1 (en) * 2020-08-31 2023-10-19 Siemens Industry Software Inc. Method of bounding spatial data
CN112286036A (en) * 2020-12-29 2021-01-29 四川写正智能科技有限公司 Prevent drowned intelligent wrist-watch
CN113074893A (en) * 2021-03-05 2021-07-06 西安工业大学 Collision detection method considering stress characteristic of scanning type measuring head
CN113961460A (en) * 2021-10-25 2022-01-21 北京构力科技有限公司 Collision detection method and device based on lightweight technology, electronic equipment and computer-readable storage medium
CN116449851A (en) * 2023-06-12 2023-07-18 泰坦(天津)能源技术有限公司 Intelligent obstacle avoidance control method and system for driller robot
CN116449851B (en) * 2023-06-12 2023-09-08 泰坦(天津)能源技术有限公司 Intelligent obstacle avoidance control method and system for driller robot

Similar Documents

Publication Publication Date Title
CN104766371A (en) Collision detection method for objects in large-scale scene
Wójcicki Supporting the diagnostics and the maintenance of technical devices with augmented reality
CN106529838A (en) Virtual assembling method and device
Perret et al. Interactive assembly simulation with haptic feedback
Zhang et al. A novel animation authoring framework for the virtual teacher performing experiment in mixed reality
Aottiwerch et al. Design computer-assisted learning in an online Augmented Reality environment based on Shneiderman's eight Golden Rules
Mavridis et al. On the subjective difficulty of joystick-based robot arm teleoperation with auditory feedback
Jeng et al. Developing a Procedural Problem-solving-based Framework of Computational Thinking Components
Abdullah et al. Enhancing students' geometrical thinking levels through Van Hiele's phase-based Geometer's Sketchpad-aided learning
Kurbonov Simulation of the power supply system using industrial 4.0 wireless tools
Aldosari et al. Using haptic technology for education in chemistry
Aleotti et al. Programming manipulation tasks by demonstration in visuo-haptic augmented reality
Chen Teaching research of integrating virtual reality technology into environmental design professional courses
Ionescu Assembly: A Web-Based Multi-Robot Programming and Simulation Tool
Zhi et al. Learning Orbitally Stable Systems for Diagrammatic Teaching
Tan et al. Development of engineering courseware for university undergraduate teaching using computer animation
Hagiwara Cloud based VR system with immersive interfaces to collect multimodal data in human-robot interaction
Zhang et al. Application of 3D modeling technology in engineering graphics
Feng et al. Research on the visualization technology of diesel engine acoustic state based on augmented reality
Ye Visualization research of modern ceramic production art based on 3D modeling technology
Chi et al. The application of virtual reality technology in transmission live working training
Al-Allaq et al. The The Application of Virtual Reality to (Mechatronics Engineering) by Creating an Articulated Robotic Work Cell Using EON Reality V9. 22.24. 24477
Fakhrudinov et al. Application of the formal order analysis method in assessing the degree of compliance of models of three-dimensional objects
Dragoi et al. TOWARDS FACILITATING LEARNING AND IMPROVING EDUCATION WITH TIAGO ROBOT
Dewi et al. Analysis of Student Practical using Logger Pro to Improve Graphic Representation of Harmonic Oscillation Material

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EXSB Decision made by sipo to initiate 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: 20150708