WO2020133447A1 - 一种三维轨迹数据的异常值处理方法及光学动作捕捉方法 - Google Patents
一种三维轨迹数据的异常值处理方法及光学动作捕捉方法 Download PDFInfo
- Publication number
- WO2020133447A1 WO2020133447A1 PCT/CN2018/125721 CN2018125721W WO2020133447A1 WO 2020133447 A1 WO2020133447 A1 WO 2020133447A1 CN 2018125721 W CN2018125721 W CN 2018125721W WO 2020133447 A1 WO2020133447 A1 WO 2020133447A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- dimensional
- data
- value
- trajectory data
- outlier
- Prior art date
Links
- 230000002159 abnormal effect Effects 0.000 title claims abstract description 87
- 238000003672 processing method Methods 0.000 title claims abstract description 72
- 238000000034 method Methods 0.000 title claims abstract description 57
- 230000033001 locomotion Effects 0.000 title claims abstract description 55
- 230000003287 optical effect Effects 0.000 title claims abstract description 39
- 238000012545 processing Methods 0.000 claims abstract description 63
- 238000005259 measurement Methods 0.000 claims abstract description 52
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 17
- 230000008859 change Effects 0.000 claims abstract description 11
- 230000006870 function Effects 0.000 claims description 43
- 238000005457 optimization Methods 0.000 claims description 27
- 238000009826 distribution Methods 0.000 claims description 23
- 238000001914 filtration Methods 0.000 claims description 23
- 230000008569 process Effects 0.000 claims description 16
- 238000010606 normalization Methods 0.000 claims description 11
- 238000012216 screening Methods 0.000 claims description 11
- 238000004364 calculation method Methods 0.000 claims description 10
- 238000007781 pre-processing Methods 0.000 claims description 7
- 238000003860 storage Methods 0.000 claims description 5
- 230000005856 abnormality Effects 0.000 claims description 4
- 230000000694 effects Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 239000003550 marker Substances 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000008054 signal transmission Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010835 comparative analysis Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000005021 gait Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/10—Image enhancement or restoration using non-spatial domain filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/04—Indexing scheme for image data processing or generation, in general involving 3D image data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20024—Filtering details
Definitions
- the invention relates to motion capturing technology, and in particular to a method for processing abnormal values of three-dimensional trajectory data and an optical motion capturing method.
- Motion capture refers to the setting of a tracker at a key part of a moving object, the position of the tracker is captured by the motion capture system, and then processed by a computer to obtain three-dimensional space coordinate data.
- the three-dimensional space coordinate data is recognized by the computer, it can be used in animation production, gait analysis, biomechanics, ergonomics and other fields.
- the live-action images captured by multiple cameras are replaced with digital models to capture and record the actions of the actors during the performance, and then synchronize these actions to the virtual characters in the computer, so that the actions of the virtual characters and real people There is no difference to achieve a realistic and natural effect.
- optical motion capture has become an important research branch in motion capture technology with its advantages of high acquisition accuracy and real-time feedback.
- Common optical motion capture is mostly based on the principle of computer vision.
- the position of the point in space at this moment can be determined, and when the camera continuously shoots at a sufficiently high rate, the three-dimensional trajectory of the point can be obtained from the image sequence.
- the optical motion capture system has been widely used in the field of games and movies. The task of motion capture is completed by monitoring and tracking specific light points on the target (such as capturing balls or reflective marker points).
- the points correspond to a special part of the capture target, so the movement of the light spot can be mapped into the segmented displacement of the target, and even the movement form of a target with a very complex structure (such as the human body), based on the high number of light spots and high positioning accuracy Next, it is also possible to construct every detailed joint movement of the target.
- Optical motion capture systems that use markers often include functional units such as optical markers (also called markers), motion capture cameras (referred to as motion capture cameras for short), signal transmission equipment, and data processing centers.
- markers also called markers
- motion capture cameras referred to as motion capture cameras for short
- signal transmission equipment When a moving object is pasted with a marked point and moved, multiple motion capture cameras will simultaneously shoot the moving object from different angles, obtain an image of the marked point on it, and preprocess the captured image to obtain the two-dimensional position of the marked point
- the signal transmission device transmits the two-dimensional position information of the marked point to the data processing center in real time, and the data processing center will calculate the three-dimensional space coordinates of the marked point according to a preset algorithm (such as stereo vision matching algorithm, etc.) In order to obtain the movement trajectory of the moving object and realize the spatial positioning of the moving object.
- a preset algorithm such as stereo vision matching algorithm, etc.
- the capture camera when the capture camera takes an image of a marked point, if the capturing environment changes, it will affect the positioning accuracy of the three-dimensional space coordinates of the marked point. For example, when there is sudden light in the capture environment, sudden addition of other objects, occlusion, etc., the calculated three-dimensional space coordinates of the marked point will appear outliers. If these outliers are not processed, they will eventually affect the movement. The positioning accuracy of the object.
- the present application provides a three-dimensional trace data outlier processing method and an optical motion capture method.
- an embodiment provides a three-dimensional trajectory data outlier processing method, including the following steps:
- Input step input three-dimensional trajectory data of a measurement object, the three-dimensional trajectory data includes a plurality of three-dimensional data of the measurement object during the movement process;
- Judgment step judge whether each three-dimensional data is normal or abnormal by the kernel function value of probability density in the standard Gaussian distribution;
- Processing step fitting the updated value of the three-dimensional data that is the abnormal value according to the three-dimensional data that is the normal value to update the three-dimensional trajectory data;
- Output step output the updated 3D trajectory data.
- the pre-processing step includes: performing average centralization processing and normalization on each of the three-dimensional data.
- the judgment step includes:
- Filtering step filtering each of the three-dimensional data in the three-dimensional trajectory data to obtain filtered three-dimensional data
- the first calculation step compare each of the three-dimensional data with the corresponding filtered three-dimensional data to calculate the Euclidean distance
- Second calculation step Substitute each Euclidean distance into the standard Gaussian distribution probability density function to calculate the corresponding kernel function value
- Comparison step compare the kernel function value of each Euclidean distance in the standard Gaussian distribution probability density function with a preset threshold to determine whether the three-dimensional data corresponding to the Euclidean distance is normal or Outliers.
- an embodiment provides a method for optimizing outlier processing of three-dimensional trajectory data, including the outlier processing method described in the first aspect, further including the following steps:
- a threshold adjustment step adjusting a preset threshold in the outlier processing method according to a first preset rule, where the first preset rule includes gradually increasing the threshold in a preset step;
- Iterative processing step update the three-dimensional trajectory data based on the adjusted threshold value according to the outlier processing method, if the number of changes in the updated three-dimensional trajectory data is within a preset range and the adjusted threshold value does not exceed Preset maximum threshold, continue to adjust the threshold according to the first preset rule, and update the current 3D trajectory data based on the adjusted threshold according to the outlier processing method until the updated 3D trajectory data Stop the iterative processing step when the number of changes of the outliers outside the preset range exceeds the preset maximum number of times or the adjusted threshold exceeds the preset maximum threshold;
- Optimization output step output the last updated 3D trajectory data as optimized 3D trajectory data.
- an embodiment provides a method for processing outlier fitting of three-dimensional trajectory data, which includes the outlier optimization processing method described in the second aspect above, and further includes the following steps:
- the first step determine whether each three-dimensional data in the optimized three-dimensional trajectory data output by the outlier optimization processing method is a normal value or an abnormal value;
- the second step adjust the three-dimensional data corresponding to several normal values in the optimized three-dimensional trajectory data to abnormal values according to the second preset rule;
- the third step according to the 3D data corresponding to the remaining normal values in the optimized 3D trajectory data, the updated values of all the 3D data that are abnormal values are obtained to update the optimized 3D trajectory data;
- the fourth step output the updated three-dimensional trajectory data.
- an embodiment provides an optical motion capture method, including the following steps:
- the input three-dimensional trajectory data is updated by the method described in the first aspect, the second aspect, or the third aspect to optically position the measurement object according to the output three-dimensional trajectory data.
- an optical motion capture device including:
- a processor configured to implement the method described in any one of the first, second, third, and fourth aspects by executing the program stored in the memory.
- an embodiment provides a computer-readable storage medium, including a program, which can be executed by a processor to implement any of the above-mentioned first, second, third, and fourth aspects The method described in one aspect.
- An outlier processing method and optical motion capturing method for three-dimensional trajectory data wherein the requested outlier processing method includes an input step, a judgment step, a processing step, an output step, etc.
- the optimization processing method includes threshold adjustment steps, iterative processing steps, and optimization output steps.
- the requested outlier fitting processing method includes judging outliers, adjusting outliers, updating and outputting 3D trajectory data, etc., and requesting protected optical actions.
- the capturing method includes acquiring a two-dimensional image of the measuring point, acquiring three-dimensional trajectory data of the measuring point, and processing abnormal values of the three-dimensional trajectory data.
- the kernel function value corresponding to the standard Gaussian distribution probability density function is used to determine whether each three-dimensional data is normal or abnormal, so that the kernel function value and the preset threshold in the Gaussian distribution can be effectively Comparison can not only increase the accuracy of judgment, but also allow users to flexibly change judgment conditions according to their needs.
- a threshold adjustment step and an iterative processing step are set to further update the three-dimensional trajectory data, so that the optical motion capture system finds the adaptive threshold required for judgment, and also makes the three-dimensional trajectory The number of outlier 3D data in the data is kept within a reasonable range, which further reduces the influence of outliers on the measurement results.
- the outlier fitting processing method several normal The three-dimensional data corresponding to the value is adjusted to an abnormal value.
- the abnormal value can be filtered by expanding the scope of the investigation to further find out the undetected abnormal value, thereby maximizing the interference of the three-dimensional data as the abnormal value and ensuring the measurement
- the measurement accuracy of the three-dimensional trajectory data of the object because the method for processing the outliers of the three-dimensional trajectory data of the measurement object is provided, the optical motion capture system can eliminate some The desired three-dimensional data, thereby avoiding measurement errors caused by capturing environmental changes, also helps to improve the positioning accuracy of the measurement object.
- the outlier processing method, outlier optimization processing method, and outlier fitting processing method protected by the present application adopt relatively simple judgment logic and data types, avoiding the judgment existing in the existing outlier processing method
- the problems of harsh conditions and strict standardization of data types are conducive to simplifying processing algorithms and improving the efficiency of optical motion capture systems.
- Figure 1 is a flowchart of the outlier processing method
- FIG. 2 is a flowchart of the judgment steps in the outlier processing method
- Figure 3 is a schematic diagram of Gaussian distribution
- Fig. 4 is a schematic diagram of curve fitting, in which Fig. 4(a) is a fitting curve formed by three-dimensional data corresponding to normal values, and Fig. 4(b) is a model formed by the updated values of three-dimensional data corresponding to abnormal values obtained by fitting Curve
- FIG. 5 is a flowchart of an abnormal value optimization processing method
- FIG. 6 is a flowchart of a method for processing outlier fitting
- FIG. 8 is a schematic structural diagram of an optical motion capture device.
- connection and “connection” in this application, unless otherwise specified, include direct and indirect connection (connection).
- the existing optical motion capture system often has the problem of poor positioning accuracy of the measurement point when performing motion capture on the measurement object.
- the reason is that there are too many three-dimensional abnormal values in the three-dimensional trajectory data of the measurement point.
- some existing outlier processing methods for 3D trajectory data still cannot solve the problem of outliers in 3D trajectory data.
- the inventive concept of the present application is to propose another outlier processing method for the three-dimensional trajectory data of the measurement object.
- the present application discloses a method for processing outlier values of three-dimensional trajectory data, which includes steps S110-S150, which are described separately below.
- Step S110 an input step: input three-dimensional trajectory data of a measurement object, and the three-dimensional trajectory data includes a plurality of three-dimensional data of the measurement object during movement.
- the measurement object here may be a measurement object in an optical motion capture system, such as a human body, a capture ball, a movable object, etc.; the measurement object may specifically be a measurement point on the measurement object, such as being arranged at a human joint Reflective mark on the point, or the reflective mark on the capture ball or other object.
- the method for obtaining the three-dimensional trajectory data of a measurement object will be described in the fourth embodiment below.
- Step S120 a pre-processing step: perform average centralization processing and normalization processing on each three-dimensional data in the three-dimensional trajectory data.
- mean centered processing refers to the variable minus its mean. In fact, it is a translation process. The center of all 3D data after translation is (0,0,0).
- the normalization process is to limit the data to be processed to a certain range after processing.
- the specific function is to summarize the statistical distribution of the unified sample, which is usually expressed by the function normalized. Normalization is a statistical probability distribution between 0-1, and normalization is a statistical coordinate distribution over a certain interval. At present, the normalization method has two forms, one is to change the number to a decimal between (0, 1), and the other is to change the dimensional expression to the dimensionless expression. Since normalization is a commonly used technical means in data processing, it will not be described in detail here.
- step S120 only makes the three-dimensional data obtain better processing effect.
- this step S120 can also be ignored, so that the input three-dimensional trajectory data directly Each three-dimensional data undergoes the next judgment process.
- Step S130 a judging step: judging whether each three-dimensional data is a normal value or an abnormal value through the kernel function value of the standard Gaussian distribution probability density.
- this step S130 may include steps S131-S134, which are respectively described as follows.
- Step S131 a filtering step: filtering each three-dimensional data in the three-dimensional trajectory data to obtain filtered three-dimensional data respectively.
- the filtering process includes a weighted mean filtering process, which performs weighted mean filtering on each three-dimensional data multiple times in succession until the preset number of cycles is reached.
- weighted mean filtering algorithm is often expressed by the function weighted filter. Its principle is to multiply the consecutive N times of sampling values by different weighting coefficients and then calculate the accumulation. The weighting coefficients are generally small first and then large to highlight the latter. The effect of several samplings strengthens the system's understanding of the changing trends of parameters. Each weighting coefficient is a decimal less than 1, and the end condition that the sum is equal to 1 is satisfied. The cumulative sum after this weighting operation is the effective sample value. Generally speaking, the later the sampling times are, the larger the ratio is. This can increase the proportion of new samples in the average.
- the weighted average filtering process can highlight part of the signal to resist another part of the signal, in order to improve the sensitivity of changes in the sampled value. Since the weighted mean filtering algorithm is a commonly used technical means in data processing, it will not be described in detail here.
- Step S132 a first calculation step: compare each three-dimensional data with its corresponding filtered three-dimensional data, and calculate Euclidean distances respectively.
- the Euclidean distance is the straight-line distance between two points.
- the Euclidean distance between the two is expressed as
- Step S133 the second calculation step: Substitute each Euclidean distance into the standard Gaussian distribution probability density function to calculate the corresponding kernel function value.
- the standard Gaussian distribution probability density function can be represented by the function Gaussian probability.
- the set X of Euclidean distances follows a normal distribution with a mathematical expectation of ⁇ and a variance of ⁇ 2, it is recorded as X ⁇ N( ⁇ , ⁇ 2), which is expressed as
- the expected value ⁇ determines its position
- its standard deviation ⁇ determines the amplitude of the distribution.
- the kernel function of the probability density of the Gaussian distribution is used for analysis, namely
- the Euclidean distance is used as a random variable of the probability density function of the Gaussian distribution.
- the x-axis represents the Euclidean distance
- the y-axis represents the value of the kernel function
- F is the three-dimensional space
- the probability density kernel function value in the normalized Gaussian distribution is y1.
- the kernel function value is actually a value within (0, 1).
- Step S134 the comparison step: compare the kernel function value of the probability density function of each Euclidean distance in the standard Gaussian distribution with a preset threshold to determine whether the three-dimensional data corresponding to the Euclidean distance is normal or Outliers.
- the three-dimensional data corresponding to the Euclidean distance is determined to be a normal value, otherwise, then It is determined that the three-dimensional data corresponding to the Euclidean distance is an outlier.
- a logical array may be used to count the number of three-dimensional data that are outliers in the three-dimensional trajectory data. Specifically, comparing the three-dimensional data in sequence, if the kernel function value corresponding to the Euclidean distance is greater than or equal to the threshold, record 1 in the logical array; if the kernel function value corresponding to the Euclidean distance is less than the threshold, then Record 0 in the logical data.
- Step S140 a processing step: fitting the updated value of the three-dimensional data that is the abnormal value according to the three-dimensional data that is the normal value to update the three-dimensional trajectory data.
- the processing step includes a curve fitting step, where the curve fitting step includes: forming a spline curve based on the three-dimensional data of normal values, and the formed spline curve can be seen in the curve segment in FIG. 4(a); The updated value of the 3D data that is an outlier is fitted on the spline curve. The updated value that is fitted can be seen in the broken line segment in Figure 4(b); the updated value obtained by the fitting replaces the abnormal value in the 3D trajectory data 3D data to update 3D trajectory data.
- the updated value of the three-dimensional data that is an abnormal value is fitted on the spline curve according to the cubic spline interpolation algorithm.
- the cubic spline interpolation algorithm can be expressed by the function cubic spline interpolation, use the fitted polynomial to calculate the function value, insert the calculated function value between the original experimental points, and then fit according to all the experimental points Into a curve. Since the cubic spline interpolation algorithm is a common technical means in data processing, it will not be described in detail here.
- Step S150 an output step: output the updated three-dimensional trajectory data.
- the present application discloses an outlier optimization processing method of three-dimensional trajectory data, which not only includes the outlier processing method disclosed in the first embodiment, but also includes steps S210-S230, the following Explain separately.
- Step S210 a threshold adjustment step: adjust the preset threshold in the outlier processing method disclosed in the first embodiment according to a first preset rule, where the first preset rule includes gradually increasing the threshold by a preset step.
- Step S220 iterative processing step: update the three-dimensional trajectory data based on the adjusted threshold according to the outlier processing method disclosed in the first embodiment, if the number of changes in the updated three-dimensional trajectory data is within a preset range and after adjustment Does not exceed the preset maximum threshold, continue to adjust the current threshold according to the first preset rule, and update the current three-dimensional trajectory data based on the adjusted threshold according to the abnormal value processing method disclosed in Embodiment 1 until after the update
- the iterative processing step is stopped.
- this step S220 may include steps S221-S229, which are respectively described as follows.
- step S221 it is determined whether the adjusted threshold exceeds the maximum threshold. If yes, step S230 is entered; otherwise, step S222 is entered.
- Step S222 Based on the adjusted threshold, update the three-dimensional trajectory data according to the outlier processing method disclosed in the first embodiment.
- the outlier processing method For a specific introduction to the outlier processing method, reference may be made to the content of Embodiment 1, and details are not repeated here.
- step S223 the number of abnormal values in the updated three-dimensional trajectory data is obtained through a filtering step.
- the filtering step here includes: filtering the updated 3D trajectory data to obtain the number of outliers before the fitting of the 3D data, so as to obtain the number of changes of the outliers in the updated 3D trajectory data according to the number of outliers obtained by the filtering .
- the three-dimensional data for abnormal values will be marked as the first value, and the three-dimensional data for normal values will be marked as the second value; according to all the first and second values A first logical array corresponding to the three-dimensional trajectory data is formed, and the three-dimensional data before the fitting is filtered according to the number of first values in the first logical array as the number of abnormal values.
- three-dimensional data for outliers will be marked as 0 (that is, the first value), and three-dimensional data for normal values will be marked as 1 (that is, the second value), and eventually a logical array W consisting of 0 and 1 will be obtained.
- W [0,1,0,0,1,1,1...1].
- step S224 it is determined whether the number of abnormal values obtained by the screening is zero, that is, whether there are abnormal values in the three-dimensional trajectory data. If it is determined in step S223 that the number of outliers obtained by screening is zero, then return to threshold adjustment step S210 to readjust threshold Y; if it is determined in step S223 that the number of outliers obtained by screening is not zero, then proceed to step S225 and calculate the number of changes in the number of three-dimensional trajectory outlier data obtained updated abnormal value, and determines whether screened ⁇ i in the preset range.
- Step S225 Obtain the changed number of abnormal values in the updated three-dimensional trajectory data, and determine whether the changed number ⁇ i of the filtered abnormal values is within a preset range, if yes, go to step S229, otherwise go to step S226.
- m is three-dimensional data
- f is the total number of three-dimensional data
- the parameters ⁇ x , ⁇ y , ⁇ z of the three-dimensional data in the x, y, and z coordinate directions can be obtained, and the parameters ⁇ x , ⁇ y , ⁇
- the maximum value in z is taken as the number of changes ⁇ i in which the three-dimensional data is an abnormal value in this iterative processing step.
- the relationship between the two conditions is determined as "and", i.e., when two conditions are met is determined that the number of abnormal variation ⁇ i values within a preset range.
- the third value ⁇ 3 in the judgment condition can be specifically set according to the actual situation, for example, it can be set to any value of 5-10% of the number of three-dimensional data in the three-dimensional trajectory data; the fourth value ⁇ 4 in the judgment condition can be Set to 10.
- step S225 determines whether the current threshold Y is set appropriately. Relative to normal values, the number of outliers is still relatively small. If the number of outliers in this calculation increases a lot at once, or the number of outliers in this calculation is different from the number of outliers in the previous calculation If it is too large, it indicates that the current threshold may not be set properly, which results in many normal values being misjudged as abnormal values. Thus, the number of variations in the output of the abnormality determination value if ⁇ i is within a preset range, the number of outliers to consider the output of this calculation is reasonable, and the last calculated output value calculated this time the number of abnormal output Is the difference in the number of outliers reasonable?
- the number of times that is still not within the preset range, that is, the parameter ⁇ represents the number of times that the number of changes of the abnormal value in the updated three-dimensional trajectory data is not within the preset range.
- the parameter ⁇ may be a counter, so that it is possible to easily count the number of times that the number of abnormal value changes is still not within the preset range.
- step S227 it is determined whether the parameter ⁇ exceeds the preset maximum number of times. If yes, step S230 is executed to output the three-dimensional trajectory data obtained in this iterative processing step. If not, step S228 is entered.
- step S225 due to the problem that the number of abnormal value changes is unreasonable in step S225, it is necessary to reduce the value of the step size ⁇ in step S228.
- the purpose of decreasing ⁇ is to verify whether the unreasonable number of abnormal value changes is caused by the unreasonable threshold setting. If the number of outlier changes is still unreasonable after adjusting the value of ⁇ multiple times in succession, it indicates that some of the normal values are regarded as outliers. Therefore, in this embodiment, steps S226 and S227 need to be added to record the abnormality. The number of times the value changes is not within the preset range, so that the iterative process can be terminated when the maximum number of times is reached.
- Step S229 when the number of change abnormal value determination screened ⁇ i is within a preset range, the parameter ⁇ to zero, then returns to step S210 to zero the parameter ⁇ .
- the three-dimensional trajectory data M i obtained in this iteration processing step S220 is used as the three-dimensional trajectory data input in the next iteration processing step to achieve the real-time iterative optimization effect of the three-dimensional trajectory data.
- Step S230 an optimization output step: output the last updated three-dimensional trajectory data as the optimized three-dimensional trajectory data.
- the present application also discloses an outlier fitting processing method of three-dimensional trajectory data, including the outlier optimization processing method disclosed in the second embodiment, and further including steps S310-S340, Each is explained below.
- Step S310 the first step: determine whether each of the three-dimensional data in the optimized three-dimensional trajectory data output by the outlier optimization processing method disclosed in the second embodiment is a normal value or an abnormal value.
- the optimized three-dimensional trajectory data output in step S230 in the second embodiment is actually the last three-dimensional trajectory data updated in step S222. Then, here can be based on steps S110-S130 in the first embodiment To determine whether each 3D data in the optimized 3D trajectory data is a normal value or an abnormal value.
- the three-dimensional data for abnormal values is marked as a fifth value (eg, 0), and the three-dimensional data for normal values is marked as a sixth value (eg, 1); according to all fifth values and sixth values
- an abnormal value judgment step may be added after step S310, specifically: judging whether there is an abnormal value (or a fifth value of 0) in the second logical array M, and if so, proceeding to step S320, otherwise outputting optimized three-dimensional trajectory data .
- the purpose of setting the abnormal value judgment step is to introduce an exit mechanism to prevent the fifth value 0 from being found in step S320; of course, the abnormal value judgment step may not be set here, which is considered to be in step S320 When the fifth value of 0 cannot be found in, no adjustment is made to the optimized 3D trajectory data.
- Step S320 the second step: adjust the three-dimensional data corresponding to several normal values in the optimized three-dimensional trajectory data to abnormal values according to the second preset rule.
- the second preset rule here includes: setting the sixth value 1 adjacent to the fifth value 0 in the second logical array M to the fifth value 0, according to the newly set fifth value 0 Adjust the corresponding three-dimensional data in the optimized three-dimensional trajectory data to abnormal values.
- Step S330 the third step: fitting all the updated values of the 3D data that are outliers according to the 3D data corresponding to the remaining normal values in the optimized 3D trajectory data to update the optimized 3D trajectory data.
- a spline curve is formed according to the three-dimensional data corresponding to the remaining normal values in the optimized three-dimensional trajectory data, and the updated value of the three-dimensional data that is an abnormal value is fitted on the formed spline curve, and the fitting An updated value is obtained to replace the three-dimensional data with abnormal values in the optimized three-dimensional trajectory data, so as to update the optimized three-dimensional trajectory data.
- an updated value of the three-dimensional data that is an abnormal value is fitted on the formed spline curve according to the cubic spline interpolation algorithm.
- curve fitting and cubic spline interpolation reference may be made to step S140 in Embodiment 1, which will not be repeated here.
- the present application discloses an optical motion capturing method, which includes steps S410-S430, which will be described separately below.
- Step S410 Acquire a two-dimensional image of a measurement object in the motion space.
- the two-dimensional image of the measurement object is obtained through the following links:
- optical mark may be a catch ball (an optical mark point is formed on the catch ball) on the measurement object.
- other marking methods may also be used, which is not limited here.
- the acquired two-dimensional images should include image information of each measurement point on the measurement object. For example, taking pictures of the measurement object at the same time point through cameras arranged in multiple positions, and taking pictures of the measurement object at different time points in the time series by each camera, thereby obtaining multiple sets of two-dimensional images in the time series, Each set of two-dimensional images includes multiple two-dimensional images at the same time point.
- Step S420 Obtain the three-dimensional trajectory data of the measurement object according to the acquired two-dimensional image.
- the acquired two-dimensional image is processed according to an image three-dimensional reconstruction algorithm to obtain three-dimensional trajectory data of measurement points on the measurement object.
- the three-dimensional data corresponding to the measurement point of the two-dimensional image at the time of shooting can be obtained when any group of two-dimensional images are processed by the image three-dimensional reconstruction algorithm, and after the three-dimensional reconstruction of each group of two-dimensional images You can get the three-dimensional trajectory data of the measuring point during the movement.
- image three-dimensional reconstruction algorithm may use the existing three-dimensional reconstruction technology or the future three-dimensional reconstruction technology, which is not limited here.
- Step S430 Perform abnormal value processing on the three-dimensional trajectory data obtained in step S420.
- the input three-dimensional trajectory data is updated by the outlier processing method disclosed in the first embodiment, the outlier optimization processing method disclosed in the second embodiment, or the outlier fitting processing method disclosed in the third embodiment To eliminate the undesired 3D data in the 3D trajectory data.
- the three-dimensional trajectory data output after the outlier processing includes a series of three-dimensional coordinates of the measurement point in three-dimensional space, then the spatial position of the measurement point at any time can be accurately obtained based on the three-dimensional trajectory data In order to realize the optical operation point of the measuring object.
- the present application also discloses an optical motion capture device 5, which includes a memory 51 and a processor 52, wherein the memory 51 is used to store programs, and the processor 52 is used to execute the programs stored in the memory 51
- an optical motion capture device 5 which includes a memory 51 and a processor 52, wherein the memory 51 is used to store programs, and the processor 52 is used to execute the programs stored in the memory 51
- the method disclosed in any one of Embodiment 1, Embodiment 2 and Embodiment 3 is used.
- the program may be stored in a computer-readable storage medium, and the storage medium may include: read-only memory, random access memory, magnetic disk, optical disk, hard disk, etc.
- the computer executes the program to realize the above functions.
- the program is stored in the memory of the device, and when the program in the memory is executed by the processor, all or part of the above functions can be realized.
- the program may also be stored in a storage medium such as a server, another computer, a magnetic disk, an optical disk, a flash disk, or a mobile hard disk, and saved by downloading or copying Go to the memory of the local device or update the version of the system of the local device.
- a storage medium such as a server, another computer, a magnetic disk, an optical disk, a flash disk, or a mobile hard disk, and saved by downloading or copying Go to the memory of the local device or update the version of the system of the local device.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
一种三维轨迹数据的异常值处理方法及光学动作捕捉方法,其中请求保护的异常值处理方法包括输入步骤、判断步骤、处理步骤、输出步骤等环节,请求保护的光学动作捕捉方法包括获取测量点二维图像、计算三维轨迹数据、三维轨迹数据异常值处理等环节。由于提供了三维轨迹数据的异常值处理方法,使得光学动作捕捉系统能够消除三维轨迹数据中一些不期望的三维数据,从而避免捕捉环境变化所带来的测量误差,也有助于提高测量对象的定位精度。由于处理方法中均采用了较为简单的判断逻辑和数据类型,避免了现有异常值处理方法中存在的判断条件苛刻、数据类型严格标准化的问题,有利于简化异常值处理算法,提升光学动作捕捉系统的工作效率。
Description
本发明涉及运动捕捉技术,具体涉及一种三维轨迹数据的异常值处理方法及光学动作捕捉方法。
运动捕捉技术(Motion capture,简称Mocap)是指在运动物体的关键部位设置跟踪器,由动捕系统捕捉跟踪器位置,再经过计算机处理后得到三维空间坐标的数据。当三维空间坐标数据被计算机识别后,可以应用在动画制作、步态分析、生物力学、人机工程等领域。特别是在电影特效领域,将多个摄影机捕捉到的真人影像换为数字模型,捕捉并记录演员表演时的动作,然后把这些动作同步到电脑中的虚拟角色上,使虚拟角色的动作和真人毫无差别,以达到逼真、自然的效果。
目前,光学式动作捕捉凭借着采集精度高、可实时反馈等优势已成为运动捕捉技术中的重要研究分支。常见的光学式运动捕捉大多基于计算机视觉原理,从理论上说,对于空间中的一个点,只要它能同时为两部相机所见,则根据同一时刻两部相机所拍摄的图像和相机参数,可以确定这一时刻该点在空间中的位置,而当相机以足够高的速率连续拍摄时,从图像序列中就可以得到该点的三维运动轨迹。凭借该技术发展的光学式动捕系统已在游戏和电影领域广泛应用,通过对目标上特定光点(比如捕捉球或反光标记点)的监视和跟踪来完成运动捕捉的任务,由于每一个光点都对应一个捕捉目标的特殊部位,所以光点的移动就可以映射成为目标的分段位移,甚至是结构非常复杂的目标(比如人体)的运动形态,在高光点数量、高定位精度的基础下,也能够构建出目标物每一个细致关节的移动。
采用标记点的光学动作捕捉系统往往包括光学标记点(也可称为marker)、动作捕捉相机(简称动捕相机)、信号传输设备、数据处理中心等功能单元。当运动物体粘贴上标记点并运动时,多个动捕相机会从不同角度同时拍摄运动物体,获取其上标记点的图像,并将拍摄到的图像进行预处理,获取标记点的二维位置信息;于此同时,信号传输设备将标记点的二维位置信息实时地传输至数据处理中心,数据处理中心将根据预设的算法(如立体视觉匹配算法等)计算出标记点的三维空间坐 标,从而获得运动物体的运动轨迹,实现运动物体的空间定位。
在光学动作捕捉过程中,动捕相机在拍摄标记点的图像时,若捕捉环境发生变化,则会对标记点的三维空间坐标的定位精度造成影响。例如,当捕捉环境突然出现强光、其它物体突然加入、遮挡等情形时,计算出的标记点的三维空间坐标则会出现异常值,如果不对这些出现的异常值进行处理,则最终会影响运动物体的定位精度。
当前,在对标记点运动过程形成的三维轨迹数据中的异常值进行处理时,常用的做法是线性差值,该种方法简单实用,当存在大量非异常信息损失的情形;另一种做法是矩阵降维,该种方法对处理的标记点的来源有具体要求,要求运动物体必须全身配置大量的标记点,并要求由标记点的点云构成的矩阵是非满秩的,致使应用条件较为苛刻;还有字典学习的方法,该种方法要求事先预备一个标准的数据库然后才能进行数据处理,该方法则存在算法处理过程比较耗时的问题。
发明内容
有鉴于此,为克服上述光学动作捕捉应用中三维轨迹数据的异常值处理方法的不足,本申请提供一种三维轨迹数据的异常值处理方法及光学动作捕捉方法。
根据第一方面,一种实施例中提供一种三维轨迹数据的异常值处理方法,包括以下步骤:
输入步骤:输入一测量对象的三维轨迹数据,所述三维轨迹数据包括所述测量对象在运动过程中的多个三维数据;
判断步骤:通过标准高斯分布中概率密度的核函数值判断每个三维数据为正常值还是为异常值;
处理步骤:根据为正常值的三维数据拟合得到为异常值的三维数据的更新值,以更新所述三维轨迹数据;
输出步骤:输出更新后的三维轨迹数据。
在所述输入步骤之后且判断步骤之前还包括预处理步骤,所述预处理步骤包括:将每个所述三维数据进行均值中心化处理和归一化。
所述判断步骤包括:
滤波步骤:将所述三维轨迹数据中的各个所述三维数据进行滤波处理,分别得到滤波后的三维数据;
第一计算步骤:将各个所述三维数据与其对应的滤波后的三维数据 进行比较,分别计算欧几里得距离;
第二计算步骤:将各个所述欧几里得距离代入标准高斯分布概率密度函数,计算对应的核函数值;
比较步骤:将每一个欧几里得距离在所述标准高斯分布概率密度函数中的核函数值与预设的阈值进行比较,以判断该欧几里得距离对应的三维数据为正常值还是为异常值。
根据第二方面,一种实施例中提供一种三维轨迹数据的异常值优化处理方法,包括上述第一方面所述的异常值处理方法,还包括以下步骤:
阈值调整步骤:按照第一预设规则调整所述异常值处理方法中的预设的阈值,所述第一预设规则包括以预设的步长逐渐增大所述阈值;
迭代处理步骤:基于调整后的阈值根据所述异常值处理方法来更新所述三维轨迹数据,若更新后的三维轨迹数据中异常值的变化个数在预设范围内且调整后的阈值未超过预设的最大阈值,则继续按照所述第一预设规则调整所述阈值,并基于调整后的阈值根据所述异常值处理方法来更新当前的三维轨迹数据,直至更新后的三维轨迹数据中异常值的变化个数在所述预设范围外的次数超过预设的最大次数或者调整后的阈值超过预设的最大阈值时,停止迭代处理步骤;
优化输出步骤:将最后一次更新的三维轨迹数据作为优化后的三维轨迹数据进行输出。
根据第三方面,一种实施例中提供一种三维轨迹数据的异常值拟合处理方法,包括上述第二方面所述的异常值优化处理方法,还包括以下步骤:
第一步骤:判断所述异常值优化处理方法所输出的优化后的三维轨迹数据中的各三维数据为正常值还是为异常值;
第二步骤:根据第二预设规则将优化后的三维轨迹数据中若干个正常值对应的三维数据调整为异常值;
第三步骤:根据优化后的三维轨迹数据中剩余的正常值对应的三维数据拟合得到所有为异常值的三维数据的更新值,以更新优化后的三维轨迹数据;
第四步骤:输出更新后的三维轨迹数据。
根据第四方面,一种实施例中提供一种光学动作捕捉方法,包括以下步骤:
获取运动空间中一测量对象的二维图像;
根据获取的二维图像得到所述测量对象的三维轨迹数据;
通过上述第一方面、第二方面或第三方面中所述的方法对输入的三维轨迹数据进行更新,以根据输出的三维轨迹数据对所述测量对象进行光学定位。
根据第五方面,一种实施例中提供一种光学动作捕捉装置,包括:
存储器,用于存储程序;
处理器,用于通过执行所述存储器存储的程序以实现上述第一方面、第二方面、第三方面和第四方面中任意一个方面所述的方法。
根据第六方面,一种实施例中提供一种计算机可读存储介质,包括程序,所述程序能够被处理器执行以实现上述第一方面、第二方面、第三方面和第四方面中任意一方面所述的方法。
本申请的有益效果是:
依据上述实施例的一种三维轨迹数据的异常值处理方法及光学动作捕捉方法,其中,请求保护的异常值处理方法包括输入步骤、判断步骤、处理步骤、输出步骤等环节,请求保护的异常值优化处理方法包括阈值调整步骤、迭代处理步骤、优化输出步骤等环节,请求保护的异常值拟合处理方法包括判断异常值、调整异常值、更新和输出三维轨迹数据等环节,请求保护的光学动作捕捉方法包括获取测量点二维图像、获取测量点的三维轨迹数据、三维轨迹数据的异常值处理等环节。第一方面,在异常值处理方法中通过标准高斯分布概率密度函数对应的核函数值来判断每个三维数据为正常值还是为异常值,使得高斯分布中核函数值与预设阈值能够进行有效的比较,不但能够增加判断的精确度,还能让用户根据需求而灵活地改变判断条件。第二方面,在异常值优化处理方法中,设置阈值调整步骤和迭代处理步骤来对三维轨迹数据进行进一步地更新,从而使得光学动作捕捉系统找到判断所需的自适应的阈值,也使得三维轨迹数据中为异常值的三维数据的数目保持在合理范围内,进一步地减小异常值对测量结果的影响;第三方面,在异常值拟合处理方法中,通过将三维轨迹数据中若干个正常值对应的三维数据调整为异常值,可通过扩大排查范围的方式对异常值进行筛选,进一步地找出未检测出来的异常值,从而最大限度地排除为异常值的三维数据的干扰,保证测量对象的三维轨迹数据的测量精确度;第四方面,在光学动作捕捉方法 中,由于为测量对象的三维轨迹数据提供了异常值的处理方法,使得光学动作捕捉系统能够消除三维轨迹数据中一些不期望的三维数据,从而避免捕捉环境变化所带来的测量误差,也有助于提高测量对象的定位精度。第五方面,本申请保护的异常值处理方法、异常值优化处理方法以及异常值拟合处理方法中均采用了较为简单的判断逻辑和数据类型,避免了现有异常值处理方法中存在的判断条件苛刻、数据类型严格标准化的问题,有利于简化处理算法,提升光学动作捕捉系统的工作效率。
图1为异常值处理方法的流程图;
图2为异常值处理方法中判断步骤的流程图;
图3为高斯分布的示意图;
图4为曲线拟合的示意图,其中图4(a)为正常值对应的三维数据形成的拟合曲线,图4(b)为拟合得到异常值对应的三维数据的更新值所形成的拟合曲线;
图5为异常值优化处理方法的流程图;
图6为异常值拟合处理方法的流程图;
图7为光学动作捕捉方法的流程图;
图8为光学动作捕捉装置的结构示意图。
下面通过具体实施方式结合附图对本发明作进一步详细说明。其中不同实施方式中类似元件采用了相关联的类似的元件标号。在以下的实施方式中,很多细节描述是为了使得本申请能被更好的理解。然而,本领域技术人员可以毫不费力的认识到,其中部分特征在不同情况下是可以省略的,或者可以由其他元件、材料、方法所替代。在某些情况下,本申请相关的一些操作并没有在说明书中显示或者描述,这是为了避免本申请的核心部分被过多的描述所淹没,而对于本领域技术人员而言,详细描述这些相关操作并不是必要的,他们根据说明书中的描述以及本领域的一般技术知识即可完整了解相关操作。
另外,说明书中所描述的特点、操作或者特征可以以任意适当的方式结合形成各种实施方式。同时,方法描述中的各步骤或者动作也可以按照本领域技术人员所能显而易见的方式进行顺序调换或调整。因此,说明书和附图中的各种顺序只是为了清楚描述某一个实施例,并不意味 着是必须的顺序,除非另有说明其中某个顺序是必须遵循的。
本文中为部件所编序号本身,例如“第一”、“第二”等,仅用于区分所描述的对象,不具有任何顺序或技术含义。而本申请所说“连接”、“联接”,如无特别说明,均包括直接和间接连接(联接)。
需要说明的是,现有的光学动作捕捉系统对测量对象进行动作捕捉时往往存在测量点定位精度差的问题,究其原因是因为测量点的三维轨迹数据中存在过多的为异常值的三维数据,现有的一些针对三维轨迹数据的异常值处理方法仍旧不能较好地解决三维轨迹数据中的异常值问题,相反还存在精度低、应用苛刻的诸多限制。由此,本申请的发明构思是:提出另一种针对测量对象的三维轨迹数据的异常值处理方法,通过判断异常值、拟合更新三维数据、迭代优化、拟合优化等方法尽可能地将三维轨迹数据中为异常值的三维数据转化为正常值,从而为用户提供异常值处理效果好、处理效率高的解决方案。下面将结合实施例对本申请请求保护的技术方案进行详细说明。
实施例一:
请参考图1,本申请公开一种三维轨迹数据的异常值处理方法,其包括步骤S110-S150,下面分别说明。
步骤S110,输入步骤:输入一测量对象的三维轨迹数据,该三维轨迹数据包括测量对象在运动过程中的多个三维数据。
需要说明的是,这里的测量对象可以为光学动作捕捉系统中的被测对象,例如人体、捕捉球、可移动物体等;测量对象可以具体为被测对象上的测量点,如布置在人体关节上的反光标记点,或者是捕捉球或其他被测物上的反光标记点。关于如何得到一测量对象的三维轨迹数据的方法将在下文的实施例四中进行说明。
步骤S120,预处理步骤:将三维轨迹数据中的每个三维数据进行均值中心化处理和归一化处理。
在数据处理过程中,不同评价指标往往具有不同的量纲和量纲单位,这样会影响到数据分析的结果。为了消除指标之间的量纲影响,需要进行数据预处理(包括中心化和归一化),以解决数据指标之间的可比性。原始数据经过处理后,各指标处于同一数量级,适合进行综合对比评价。
其中,均值中心化处理(Mean Centered)是指变量减去它的均值。其实就是一个平移的过程,平移后所有三维数据的中心都是(0,0,0)。 而归一化处理就是要把需要处理的数据经过处理后限制在一定范围内,具体作用是归纳统一样本的统计分布性,常用函数normalized来表示。归一化在0-1之间是统计的概率分布,归一化在某个区间上是统计的坐标分布。当前,归一化方法有两种形式,一种是把数变为(0,1)之间的小数,一种是把有量纲表达式变为无量纲表达式。由于归一化是数据处理中常用的技术手段,因此这里不再对其进行详细说明。
本领域的技术人员应当理解,对每个三维数据进行均值中心化处理和归一化处理的目的增强每个三维数据的收敛特性,是为了给后面数据处理过程提供方便,同时也能够保证程序运行时收敛加快。此外,归一化有助于使得没有可比性的三维数据变得具有可比性,同时又保持相比较的两个数据之间具有较高的相对关系。
本领域的技术人员还应当理解,步骤S120的预处理过程只是使得三维数据获得更好的处理效果,在另一个实施例中,也可以忽略该步骤S120,从而直接对输入的三维轨迹数据中的每个三维数据进行下一步的判断处理。
步骤S130,判断步骤:通过标准高斯分布概率密度的核函数值判断每个三维数据为正常值还是为异常值。在一实施例中,见图2,该步骤S130可包括步骤S131-S134,分别说明如下。
步骤S131,滤波步骤:将三维轨迹数据中的各个三维数据进行滤波处理,分别得到滤波后的三维数据。在一具体实施例中,滤波处理包括加权均值滤波处理,对每个三维数据进行连续多次的加权均值滤波,直至达到预设的循环次数。
需要说明的是,加权均值滤波算法常用函数weighted average filter来表示,它的原理是对连续N次采样值分别乘上不同的加权系数之后再求累加,加权系数一般先小后大,以突出后面若干采样的效果,加强系统对参数变化趋势的认识。各个加权系数均为小于1的小数,且满足总和等于1的结束条件。这样加权运算之后的累加和即为有效采样值。一般来说采样次数越靠后,取的比例越大,这样可增加新采样在平均值中所占的比重。加权均值滤波处理可突出一部分信号抵制另一部分信号,以提高采样值变化的灵敏度。由于加权均值滤波算法是数据处理中常用的技术手段,因此这里不再对其进行详细说明。
步骤S132,第一计算步骤:将各个三维数据与其对应的滤波后的三 维数据进行比较,分别计算欧几里得距离。
需要说明的是,欧几里得距离即两点间的直线距离,例如,对于x、y,两者之间的欧几里得距离表示为
那么,对于三维空间中的两个三维数据a(x
1,y
1,z
1)、b(x
2,y
2,z
2),它们之间的欧几里得距离表示为
步骤S133,第二计算步骤:将各个欧几里得距离代入标准高斯分布概率密度函数,计算对应的核函数值。
需要说明的是,标准高斯分布概率密度函数可用函数Gaussian probability density来表示。例如,若欧几里得距离的集合X服从一个数学期望为μ、方差为σ^2的正态分布,记为X~N(μ,σ^2),用公式表示为
在本实施例中,由欧几里得距离作为高斯分布概率密度函数的随机变量,可见图3,x轴表示欧几里得距离,y轴表示核函数值,|x-u|
F即为三维空间中两点间的欧几里得距离。例如,对于欧几里得距离d1,其在归一化的高斯分布中的概率密度核函数值为y1。本实施例中,核函数值实际上是在(0,1]内的一个数值。
步骤S134,比较步骤:将每一个欧几里得距离在标准高斯分布概率密度函数的核函数值与预设的阈值进行比较,以判断该欧几里得距离对应的三维数据为正常值还是为异常值。
在一实施例中,若任意一欧几里得距离在标准高斯分布中的核函数 值大于或等于预设的阈值,则判断该欧几里得距离对应的三维数据为正常值,反之,则判断该欧几里得距离对应的三维数据为异常值。
需要说明的是,欧几里得距离值越大,即偏离0值越多,其对应的核函数值就越小,那么相应地输出异常值的概率则越大。
在一具体实施例中,可采用逻辑数组来统计三维轨迹数据中为异常值的三维数据的个数。具体来说,依次对各个三维数据进行比较,若欧几里得距离对应的核函数值大于或等于阈值,在逻辑数组中记录1;若欧几里得距离对应的核函数值小于阈值,则在逻辑数据中记录0。最终将得到一个由0和1组成的逻辑数组W,如W=[0,1,0,0,1,1,1……1],该逻辑数据W中的0表示为三维轨迹数据中相应的三维数据为异常值,而1表示三维轨迹数据中相应的三维数据为正常值。
步骤S140,处理步骤:根据为正常值的三维数据拟合得到为异常值的三维数据的更新值,以更新三维轨迹数据。
在一实施例中,处理步骤包括曲线拟合步骤,这里的曲线拟合步骤包括:根据为正常值的三维数据形成样条曲线,形成的样条曲线可见图4(a)中的曲线片段;在样条曲线上拟合出为异常值的三维数据的更新值,拟合出的更新值可见图4(b)中的虚线片段;用拟合得到的更新值替换三维轨迹数据中为异常值的三维数据,以更新三维轨迹数据。
在一具体实施例中,根据三次样条插值算法在样条曲线上拟合出为异常值的三维数据的更新值。需要说明的是,三次样条插值算法可用函数cubic spline interpolation表示,利用拟合的多项式计算函数值,将计算的函数值插入到原有的实验点之间,然后再根据所有的实验点拟合成曲线。由于三次样条插值算法属于数据处理中常见的技术手段,因此这里不再对其进行详细说明。
步骤S150,输出步骤:输出更新后的三维轨迹数据。
实施例二:
请参考图5,在实施例一的基础上,本申请公开一种三维轨迹数据的异常值优化处理方法,其不但包括实施例一中公开的异常值处理方法,还包括步骤S210-S230,下面分别说明。
步骤S210,阈值调整步骤:按照第一预设规则调整实施例一公开的异常值处理方法中预设的阈值,这里的第一预设规则包括以预设的步长逐渐增大该阈值。
在一具体实施例中,阈值的调整方式可以是:Y=Y*(1+ρ)。其中,ρ为阈值的步长,ρ的取值范围为(0,1)。
步骤S220,迭代处理步骤:基于调整后的阈值根据实施例一公开的异常值处理方法来更新三维轨迹数据,若更新后的三维轨迹数据中异常值的变化个数在预设范围内且调整后的阈值未超过预设的最大阈值,则继续按照第一预设规则调整当前的阈值,并基于调整后的阈值根据实施例一公开的异常值处理方法来更新当前的三维轨迹数据,直至更新后的三维轨迹数据中异常值的变化个数在预设范围外的次数超过预设的最大次数或者调整后的阈值超过预设的最大阈值时,停止迭代处理步骤。
在一实施例中,可见图5,该步骤S220可包括步骤S221-S229,分别说明如下。
步骤S221,判断调整后的阈值是否超过最大阈值,若是则进入步骤S230,若否则进入步骤S222。
步骤S222,基于调整后的阈值根据实施例一公开的异常值处理方法来更新三维轨迹数据。关于异常值处理方法的具体介绍可参考实施例一的内容,这里不再进行赘述。
步骤S223,通过一筛选步骤获得更新后的三维轨迹数据中异常值的数目。这里的筛选步骤包括:从更新的三维轨迹数据中筛选得到拟合前的三维数据为异常值的数目,以根据筛选得到的异常值的数目获取更新后的三维轨迹数据中异常值的变化个数。
在一实施例中,在更新的三维轨迹数据中,将为异常值的三维数据标记为第一值,将为正常值的三维数据标记为第二值;根据所有的第一值和第二值形成所述三维轨迹数据对应的第一逻辑数组,以根据第一逻辑数组中第一值的数目对拟合前的三维数据为异常值的数目进行筛选。
例如,将为异常值的三维数据标记为0(即第一值),将为正常值的三维数据标记为1(即第二值),最终将得到一个由0和1组成的逻辑数组W,如W=[0,1,0,0,1,1,1……1]。统计该逻辑数据W中的0的数目就可以得到三维轨迹数据中为异常值的数目(该过程可参考实施例一中的步骤S134)。
步骤S224,判断筛选得到的异常值的数目是否为零,即判断三维轨迹数据中是否存在异常值。若步骤S223中判断筛选得到的异常值的数目为零,则返回阈值调整步骤S210,以重新调整阈值Y;若步骤S223中判 断筛选得到的异常值的数目不为零,则进入步骤S225,计算获得更新后的三维轨迹数据中异常值的数目,以及判断筛选得到的异常值的变化个数Δ
i是否在所述预设范围内。
步骤S225,获得更新后的三维轨迹数据中异常值的变化个数,判断筛选得到的异常值的变化个数Δ
i是否在预设范围内,若是则进入步骤S229,若否则进入步骤S226。
下面将通过一个具体实施例说明:如何根据筛选得到的异常值的数目获取更新后的三维轨迹数据中异常值的变化个数,可参考下面的步骤(1)至(4)。
(1)分别获取上一次的迭代处理步骤中和本次的迭代处理步骤中的三维轨迹数据M
i-1、M
i,其中下标i表示迭代处理序号;
(2)计算三维轨迹数据M
i-1中每相邻两个三维数据在一个各个坐标(即x,y,z)方向上的差值,得到第一差值数组d
1;计算三维轨迹数据M
i中每相邻两个三维数据在同一个坐标方向上的差值,得到第二差值数组d
2;所述第一差值数组d
1和所述第二差值数组d
2分别公式表示为
其中,m为三维数据,f为三维数据的总数目,2:f表示从第二个三维数据历遍到第f个三维数据,1:f-1表示从第一个三维数据历遍到第f-1个三维数据;其中,d1、d2两个数组各包括在x、y,z方向上的F-1个值。
(3)计算第一差值数组d
1中每一个数值与所述第二差值数组d
2中相对应的数值之间的差值,若该差值大于预设的差值限制值,则将三维数据在一个坐标方向上对应的参数Δ累计加一,直至所述第一差值数组d
1或所述第二差值数组d
2中的所有数值计算完毕;
(4)根据上面的步骤(1)至(3)可得到三维数据分别在x、y、z坐标方向上的参数Δ
x、Δ
y、Δ
z,将所述参数Δ
x、Δ
y、Δ
z中的最大值作为本次迭代处理步骤中三维数据为异常值的变化个数Δ
i。
在一实施例中,当判断异常值的数目不超过预设的第三值τ
3,且判断异常值的变化个数Δ
i与上一次筛选步骤中得到的异常值的变化个数Δ
i-1之间的差值不超过预设的第四值τ
4时,则判断异常值的变化个数Δ
i 在预设范围内。
在本实施例中,上述的两个判断条件之间的关系为“和”,即两个判断条件同时满足时才认为异常值的变化个数Δ
i在预设范围内。而且,判断条件中第三值τ
3可根据实际情况而具体设定,例如可以设置为三维轨迹数据中三维数据数目的5-10%中的任一值;判断条件中第四值τ
4可以设置为10。
需要说明的是,步骤S225的目的是为了确定当前的阈值Y设置得是否合适。相对正常值来说,异常值的数目还是比较较少,若本次计算中异常值的个数一下子增加了很多,或者本次计算中的异常值数目与上一次计算的异常值数目相差太大,则表明当前的阈值可能设置得不合适,导致很多正常值也被误判异常值。因此,在判断输出结果中异常值的变化个数Δ
i是否在预设范围内时,需要考虑本次计算输出的异常值数目是否合理,以及本次计算输出的异常值数目与上一次计算输出的异常值数目之差是否合理。
步骤S226,当判断筛选得到的异常值的变化个数Δ
i在预设范围之外,则将一参数δ累计加一,该参数δ用于记录多次连续迭代处理之后异常值的变化个数仍不在预设范围内的次数,即参数δ表示更新后的三维轨迹数据中异常值的变化个数在不在预设范围内的次数。
需要说明的是,实际应用中,参数δ可以为一个计数器,这样就能够方便地统计异常值的变化个数仍不在预设范围内的次数。
步骤S227,判断参数δ是否超过预设的最大次数,若是则执行步骤S230,以输出本次迭代处理步骤中得到的三维轨迹数据,若否则进入步骤S228。
需要说明的是,这里的最大次数可根据用户的实际需求而设定,这里不做限制。
步骤S228,减小阈值调整步骤S221中阈值的步长ρ,以新的步长ρ′(该ρ′小于ρ)来调整阈值Y。
需要说明的是,由于在步骤S225中出现了异常值变化个数不合理的问题,因此,本步骤S228需要调小步长ρ的取值。调小ρ目的是用于验证异常值变化个数不合理是否是因阈值设置不合理导致的。若在连续多次调小ρ的取值之后异常值的变化个数还是不合理,则表明到一部分正常值被当成异常值,故本实施例中需要添加步骤S226和步骤S227, 用来记录异常值的变化个数不在预设范围内的次数,从而在达到最大次数时能够终止迭代处理过程。
步骤S229,当判断筛选得到的异常值的变化个数Δ
i在预设范围内,则将参数δ归零,将参数δ归零之后返回以执行步骤S210。
在另一个实施例中,将本次迭代处理步骤S220中获得的三维轨迹数据M
i作为下一次迭代处理步骤中输入的三维轨迹数据,以实现三维轨迹数据的实时迭代优化效果。
步骤S230,优化输出步骤:将最后一次更新的三维轨迹数据作为优化后的三维轨迹数据进行输出。
实施例三:
请参考图6,在实施例二的基础上,本申请还公开一种三维轨迹数据的异常值拟合处理方法,包括实施例二中公开的异常值优化处理方法,还包括步骤S310-S340,下面分别说明。
步骤S310,第一步骤:判断实施例二中公开的异常值优化处理方法所输出的优化后的三维轨迹数据中的各三维数据为正常值还是为异常值。
在一实施例中,实施例二中步骤S230输出的优化后的三维轨迹数据实际上就是最后一次在步骤S222中更新得到的三维轨迹数据,那么,这里可根据实施例一中的步骤S110-S130来判断优化后的三维轨迹数据中的各个三维数据为正常值还是为异常值。
在一具体实施例中,将为异常值的三维数据标记为第五值(例如0),将为正常值的三维数据标记为第六值(例如1);根据所有的第五值和第六值形成优化后的三维轨迹数据对应的第二逻辑数组M,例如M=[0,1,0,0,1,1,1……1],以根据第二逻辑数组M中的0、1来获得异常值、正常值分别对应的三维数据。
这里可以在步骤S310之后添加一个异常值判断步骤,具体为:判断第二逻辑数组M中是否存在异常值(或第五值0),若是则进入步骤S320,若否则输出优化后的三维轨迹数据。需要说明的是,设置该异常值判断步骤的目的是:引入一个退出机制,以防在步骤S320中无法找到第五值0;当然,这里也可以不设置该异常值判断步骤,认为在步骤S320中无法找到第五值0的情形下,不对优化后的三维轨迹数据进行任何调整。
步骤S320,第二步骤:根据第二预设规则将优化后的三维轨迹数据中若干个正常值对应的三维数据调整为异常值。
在一实施例中,这里的第二预设规则包括:将第二逻辑数组M中与第五值0相邻的第六值1设置为第五值0,以根据新设置的第五值0将优化后的三维轨迹数据中对应的三维数据调整为异常值。
步骤S330,第三步骤:根据优化后的三维轨迹数据中剩余的正常值对应的三维数据拟合得到所有为异常值的三维数据的更新值,以更新优化后的三维轨迹数据。
在一实施例中,根据优化后的三维轨迹数据中剩余的正常值对应的三维数据形成样条曲线,在形成的样条曲线上拟合出为异常值的三维数据的更新值,用拟合得到更新值替换所述优化后的三维轨迹数据中为异常值的三维数据,以更新所述优化后的三维轨迹数据。
在一具体实施例中,根据三次样条插值算法在形成的样条曲线上拟合出为异常值的三维数据的更新值。关于曲线拟合和三次样条插值的说明可参考实施例一中的步骤S140,这里不再进行赘述。
步骤S340,第四步骤:输出步骤S330中更新后的三维轨迹数据。
实施例四:
请参考图7,本申请公开一种光学动作捕捉方法,其包括步骤S410-S430,下面分别说明。
步骤S410,获取运动空间中一测量对象的二维图像。在一实施例中,通过以下环节获取测量对象的二维图像:
(1)对一测量对象进行光学标记,将光学标记后形成的光学标记点作为测量对象上的测量点。这里的光学标记可以是在测量对象上设置捕捉球(捕捉球上形成有光学标记点),当然,也可以采用其它标记方法,这里不做限制。
(2)在运动空间中,从多个角度和多个连续时间点上分别获取测量对象的二维图像,获取的二维图像应当包括测量对象上各测量点的图像信息。例如,通过多个位置布设的相机在同一时间点上对测量对象进行拍照,及每个相机在时间序列的不同时间点上对测量对象进行拍照,从而获得时间序列上的多组二维图像,每组二维图像包括同一时间点上的多幅二维图像。
步骤S420,根据获取的二维图像得到测量对象的三维轨迹数据。在 一实施例中,根据一图像三维重建算法对获取的二维图像进行处理,以得到测量对象上测量点的三维轨迹数据。
需要说明的是,通过图像三维重建算法对任意一组二维图像进行处理时可获得该组二维图像在拍摄时间点时测量点对应的三维数据,而对每组二维图像进行三维重建之后就可得到测量点在运动过程中的三维轨迹数据。
需要说明的是,图像三维重建算法可采用现有的三维重建技术,也可以采用未来出现的三维重建技术,这里不做限制。
步骤S430,将步骤S420中得到的三维轨迹数据进行异常值处理。
在一实施例中,通过实施例一中公开的异常值处理方法、实施例二公开的异常值优化处理方法,或者实施例三中公开的异常值拟合处理方法对输入的三维轨迹数据进行更新,以消除三维轨迹数据中不期望的三维数据。
本领域的技术人员可以理解,异常值处理之后输出的三维轨迹数据包括了测量点在三维空间中的一系列三维坐标,那么,就可以根据三维轨迹数据准确地获知测量点在任意时刻的空间位置,从而实现对测量对象进行光学动作点位。
相应地,请参考图8,本申请还公开一种光学动作捕捉装置5,其包括存储器51和处理器52,其中存储器51用于存储程序,处理器52用于通过执行存储器51中存储的程序以实施例一、实施例二和实施例三中任一项实施例所公开的方法。
本领域技术人员可以理解,上述实施方式中各种方法的全部或部分功能可以通过硬件的方式实现,也可以通过计算机程序的方式实现。当上述实施方式中全部或部分功能通过计算机程序的方式实现时,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器、随机存储器、磁盘、光盘、硬盘等,通过计算机执行该程序以实现上述功能。例如,将程序存储在设备的存储器中,当通过处理器执行存储器中程序,即可实现上述全部或部分功能。另外,当上述实施方式中全部或部分功能通过计算机程序的方式实现时,该程序也可以存储在服务器、另一计算机、磁盘、光盘、闪存盘或移动硬盘等存储介质中,通过下载或复制保存到本地设备的存储器中,或对本地设备的系统进行版本更新,当通过处理器执行存储器中的程序时,即可实现上述实施方式中全部或 部分功能。
以上应用了具体个例对本发明进行阐述,只是用于帮助理解本发明,并不用以限制本发明。对于本发明所属技术领域的技术人员,依据本发明的思想,还可以做出若干简单推演、变形或替换。
Claims (27)
- 一种三维轨迹数据的异常值处理方法,其特征在于,包括以下步骤:输入步骤:输入一测量对象的三维轨迹数据,所述三维轨迹数据包括所述测量对象在运动过程中的多个三维数据;判断步骤:通过标准高斯分布概率密度的核函数值判断每个三维数据为正常值还是为异常值;处理步骤:根据为正常值的三维数据拟合得到为异常值的三维数据的更新值,以更新所述三维轨迹数据;输出步骤:输出更新后的三维轨迹数据。
- 如权利要求1所述的异常值处理方法,其特征在于,在所述输入步骤之后且判断步骤之前还包括预处理步骤,所述预处理步骤包括:将每个所述三维数据进行均值中心化处理和归一化处理。
- 如权利要求2所述的异常值处理方法,其特征在于,所述判断步骤包括:滤波步骤:将所述三维轨迹数据中的各个所述三维数据进行滤波处理,分别得到滤波后的三维数据;第一计算步骤:将各个所述三维数据与其对应的滤波后的三维数据进行比较,分别计算欧几里得距离;第二计算步骤:将各个所述欧几里得距离代入标准高斯分布概率密度函数,计算对应的核函数值;比较步骤:将每一个欧几里得距离在所述标准高斯分布概率密度函数的核函数值与预设的阈值进行比较,以判断该欧几里得距离对应的三维数据为正常值还是为异常值。
- 如权利要求3所述的异常值处理方法,其特征在于,所述滤波步骤中的滤波处理包括加权均值滤波处理,对每个所述三维数据进行连续多次的加权均值滤波,直至达到预设的循环次数。
- 如权利要求3所述的异常值处理方法,其特征在于,在所述比较步骤中,若任意一欧几里得距离在所述标准高斯分布概率密度的核函数值大于或等于所述阈值,则判断该欧几里得距离对应的三维数据为正常值,反之,判断该欧几里得距离对应的三维数据为异常值。
- 如权利要求1-5任一项所述的异常值处理方法,其特征在于,所述处理步骤包括曲线拟合步骤,所述曲线拟合步骤包括:根据为正常值的三维数据形成样条曲线,在所述样条曲线上拟合出为异常值的三维数据的更新值,用拟合得到的更新值替换所述三维轨迹数据中为异常值的三维数据,以更新所述三维轨迹数据。
- 如权利要求6所述的异常值处理方法,其特征在于,根据三次样条插值算法在所述样条曲线上拟合出为异常值的三维数据的更新值。
- 一种三维轨迹数据的异常值优化处理方法,其特征在于,包括如权利要求3至7中任一项所述的异常值处理方法,还包括以下步骤:阈值调整步骤:按照第一预设规则调整所述异常值处理方法中预设的阈值,所述第一预设规则包括以预设的步长逐渐增大所述阈值;迭代处理步骤:基于调整后的阈值根据所述异常值处理方法来更新所述三维轨迹数据,若更新后的三维轨迹数据中异常值的变化个数在预设范围内且调整后的阈值未超过预设的最大阈值,则继续按照所述第一预设规则调整所述阈值,并基于调整后的阈值根据所述异常值处理方法来更新当前的三维轨迹数据,直至更新后的三维轨迹数据中异常值的变化个数在所述预设范围外的次数超过预设的最大次数或者调整后的阈值超过预设的最大阈值时,停止迭代处理步骤;优化输出步骤:将最后一次更新的三维轨迹数据作为优化后的三维轨迹数据进行输出。
- 如权利要求8所述的异常值优化处理方法,其特征在于,在所述迭代处理步骤中,通过一筛选步骤获得更新后的三维轨迹数据中异常值的变化个数,所述筛选步骤包括:从更新的三维轨迹数据中筛选得到拟合前的三维数据为异常值的数目,根据筛选得到的异常值的数目获取更新后的三维轨迹数据中异常值的变化个数。
- 如权利要求9所述的异常值优化处理方法,其特征在于,所述从更新的三维轨迹数据中筛选得到拟合前的三维数据为异常值的数目,包括:在更新的三维轨迹数据中,将为异常值的三维数据标记为第一值,将为正常值的三维数据标记为第二值;根据所有的第一值和第二值形成所述三维轨迹数据对应的第一逻辑数组,以根据所述第一逻辑数组中第一值的数目对拟合前的三维数据为异常值的数目进行筛选。
- 如权利要求9所述的异常值优化处理方法,其特征在于,所述根据筛选得到的异常值的数目获取更新后的三维轨迹数据中异常值的变化个数,包括:分别获取上一次的迭代处理步骤中和本次的迭代处理步骤中的三维轨迹数据M i-1、M i,其中下标i表示迭代处理序号;计算三维轨迹数据M i-1中每相邻两个三维数据在一个坐标方向上的差值,得到第一差值数组d 1;计算三维轨迹数据M i中每相邻两个三维数据在同一个坐标方向上的差值,得到第二差值数组d 2;所述第一差值数组d 1和所述第二差值数组d 2分别公式表示为其中,m为三维数据,f为三维数据的总数目,2:f表示从第二个三维数据历遍到第f个三维数据,1:f-1表示从第一个三维数据历遍到第f-1个三维数据;计算所述第一差值数组d 1中每一个数值与所述第二差值数组d 2中相对应的数值之间的差值,若该差值大于预设的差值限制值,则将三维数据在一个坐标方向上对应的参数Δ累计加一,直至所述第一差值数组d 1或所述第二差值数组d 2中的所有数值计算完毕;依此得到三维数据分别在x、y、z坐标方向上的参数Δ x、Δ y、Δ z,将所述参数Δ x、Δ y、Δ z中的最大值作为本次迭代处理步骤中三维数据为异常值的变化个数Δ i。
- 如权利要求9所述的异常值优化处理方法,其特征在于,在所述迭代处理步骤中,所述筛选步骤之后包括:判断筛选得到的异常值的数目是否为零,若是则返回所述阈值调整步骤以重新调整所述阈值,若否则继续判断筛选得到的异常值的变化个数Δ i是否在所述预设范围内。
- 如权利要求12所述的异常值处理方法,其特征在于,判断筛选得到的异常值的变化个数Δ i是否在所述预设范围内,包括:当判断异常值的数目不超过预设的第三值τ 3,和判断异常值的变化个数Δ i与上一次筛选步骤中得到的异常值的变化个数Δ i-1之间的差值不超过预设的第四值τ 4时,则判断异常值的变化个数Δ i在预设范围内。
- 如权利要求13所述的异常值优化处理方法,其特征在于,若判断筛选得到的异常值的变化个数Δ i在所述预设范围内,则包括:将本 次迭代处理步骤中获得的三维轨迹数据M i作为下一次迭代处理步骤中输入的三维轨迹数据。
- 如权利要求13所述的异常值优化处理方法,其特征在于,若判断筛选得到的异常值的变化个数Δ i在所述预设范围之外,则包括:将一参数δ累计加一,所述参数δ用于记录多次连续迭代处理之后异常值的变化个数仍不在预设范围内的次数;判断所述参数δ是否超过预设的最大次数时,若是则执行所述优化输出步骤,以输出本次迭代处理步骤中得到的三维轨迹数据,若否则减小所述阈值调整步骤中所述阈值的步长,以新的步长调整所述阈值。
- 如权利要求15所述的异常值处理方法,其特征在于,若判断筛选得到的异常值的变化个数Δ i在预设范围内,则将所述参数δ归零。
- 一种三维轨迹数据的异常值拟合处理方法,其特征在于,包括根据权利要求8至16中任一项所述的异常值优化处理方法,还包括以下步骤:第一步骤:判断所述异常值优化处理方法所输出的优化后的三维轨迹数据中的各三维数据为正常值还是为异常值;第二步骤:根据第二预设规则将优化后的三维轨迹数据中若干个正常值对应的三维数据调整为异常值;第三步骤:根据优化后的三维轨迹数据中剩余的正常值对应的三维数据拟合得到所有为异常值的三维数据的更新值,以更新优化后的三维轨迹数据;第四步骤:输出更新后的三维轨迹数据。
- 如权利要求17所述的异常值拟合处理方法,其特征在于,在所述第一步骤中,将为异常值的三维数据标记为第五值,将为正常值的三维数据标记为第六值;根据所有的第五值和第六值形成优化后的三维轨迹数据对应的第二逻辑数组,以根据所述第二逻辑数组中的第五值来获得异常值、正常值分别对应的三维数据。
- 如权利要求18所述的异常值拟合处理方法,其特征在于,还包括:判断所述第二逻辑数组中是否存在第五值,若是则执行所述第二步骤,若否则输出优化后的三维轨迹数据。
- 如权利要求19所述的异常值拟合处理方法,其特征在于,在所述第二步骤中所述第二预设规则包括:将所述第二逻辑数组中与第五值相邻的第六值设置为第五值,以根据新设置的第五值将所述优化后的三维轨迹数据中对应的三维数据调整为异常值。
- 如权利要求20所述的异常值拟合处理方法,其特征在于,在所述第三步骤中,根据所述优化后的三维轨迹数据中剩余的正常值对应的三维数据形成样条曲线,在形成的样条曲线上拟合出为异常值的三维数据的更新值,用拟合得到更新值替换所述优化后的三维轨迹数据中为异常值的三维数据,以更新所述优化后的三维轨迹数据。
- 如权利要求21所述的异常值拟合处理方法,其特征在于,根据三次样条插值算法在形成的样条曲线上拟合出为异常值的三维数据的更新值。
- 一种光学动作捕捉方法,其特征在于,包括以下步骤:获取运动空间中一测量对象的二维图像;根据获取的二维图像得到所述测量对象的三维轨迹数据;通过权利要求1-22中任一项所述的方法对输入的三维轨迹数据进行更新,以根据输出的三维轨迹数据对所述测量对象进行光学定位。
- 如权利要求23所述的光学动作捕捉方法,其特征在于,所述获取运动空间中一测量对象的二维图像,包括:对所述测量对象进行光学标记,将光学标记后形成的光学标记点作为所述测量对象上的测量点;在运动空间中,从多个角度和多个连续时间点上分别获取所述测量对象上任意一测量点的二维图像。
- 如权利要求24所述的光学动作捕捉方法,其特征在于,根据一图像三维重建算法对获取的二维图像进行处理,以得到所述测量点的三维轨迹数据。
- 一种光学动作捕捉装置,其特征在于,包括:存储器,用于存储程序;处理器,用于通过执行所述存储器存储的程序以实现如权利要求1-25中任一项所述的方法。
- 一种计算机可读存储介质,其特征在于,包括程序,所述程序能够被处理器执行以实现如权利要求1-25中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2018/125721 WO2020133447A1 (zh) | 2018-12-29 | 2018-12-29 | 一种三维轨迹数据的异常值处理方法及光学动作捕捉方法 |
CN201880034543.1A CN110770793B (zh) | 2018-12-29 | 2018-12-29 | 一种三维轨迹数据的异常值处理方法及光学动作捕捉方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2018/125721 WO2020133447A1 (zh) | 2018-12-29 | 2018-12-29 | 一种三维轨迹数据的异常值处理方法及光学动作捕捉方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020133447A1 true WO2020133447A1 (zh) | 2020-07-02 |
Family
ID=69328558
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2018/125721 WO2020133447A1 (zh) | 2018-12-29 | 2018-12-29 | 一种三维轨迹数据的异常值处理方法及光学动作捕捉方法 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110770793B (zh) |
WO (1) | WO2020133447A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114124340A (zh) * | 2020-08-28 | 2022-03-01 | 京东方科技集团股份有限公司 | 物联网节点的时间同步方法、装置、存储介质及电子设备 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112580630B (zh) * | 2020-12-23 | 2024-09-24 | 上海有个机器人有限公司 | 机器人反光标志的识别方法、系统、机器人及计算机存储介质 |
CN116612243B (zh) * | 2023-07-21 | 2023-09-15 | 武汉国遥新天地信息技术有限公司 | 一种光学动作捕捉系统三维轨迹异常点抑制和处理方法 |
CN117523678B (zh) * | 2024-01-04 | 2024-04-05 | 广东茉莉数字科技集团股份有限公司 | 一种基于光学动作数据的虚拟主播区分方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120277635A1 (en) * | 2011-04-29 | 2012-11-01 | Tsai Ming-June | Body motion staff, producing module, image processing module and motion replication module |
CN104361621A (zh) * | 2014-10-20 | 2015-02-18 | 厦门大学 | 一种基于四维球面轨迹的运动编辑方法 |
CN108288300A (zh) * | 2018-01-12 | 2018-07-17 | 北京蜜枝科技有限公司 | 人体动作捕捉与骨骼数据映射系统及其方法 |
CN108734762A (zh) * | 2018-05-18 | 2018-11-02 | 河南恒康伟业智能科技有限公司 | 运动轨迹仿真方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103716579B (zh) * | 2012-09-28 | 2017-05-10 | 中国科学院深圳先进技术研究院 | 视频监控方法及系统 |
EP3361949B1 (en) * | 2015-10-14 | 2020-06-17 | Curvebeam LLC | System for three dimensional measurement of foot alignment |
-
2018
- 2018-12-29 WO PCT/CN2018/125721 patent/WO2020133447A1/zh active Application Filing
- 2018-12-29 CN CN201880034543.1A patent/CN110770793B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120277635A1 (en) * | 2011-04-29 | 2012-11-01 | Tsai Ming-June | Body motion staff, producing module, image processing module and motion replication module |
CN104361621A (zh) * | 2014-10-20 | 2015-02-18 | 厦门大学 | 一种基于四维球面轨迹的运动编辑方法 |
CN108288300A (zh) * | 2018-01-12 | 2018-07-17 | 北京蜜枝科技有限公司 | 人体动作捕捉与骨骼数据映射系统及其方法 |
CN108734762A (zh) * | 2018-05-18 | 2018-11-02 | 河南恒康伟业智能科技有限公司 | 运动轨迹仿真方法及系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114124340A (zh) * | 2020-08-28 | 2022-03-01 | 京东方科技集团股份有限公司 | 物联网节点的时间同步方法、装置、存储介质及电子设备 |
CN114124340B (zh) * | 2020-08-28 | 2024-07-26 | 京东方科技集团股份有限公司 | 物联网节点的时间同步方法、装置、存储介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110770793A (zh) | 2020-02-07 |
CN110770793B (zh) | 2023-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020133448A1 (zh) | 一种三维轨迹数据的拟合处理方法及光学动作捕捉方法 | |
WO2020133447A1 (zh) | 一种三维轨迹数据的异常值处理方法及光学动作捕捉方法 | |
JP7375192B2 (ja) | ターゲット追跡方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラムプロダクト | |
WO2022002150A1 (zh) | 一种视觉点云地图的构建方法、装置 | |
CN106780557B (zh) | 一种基于光流法和关键点特征的运动目标跟踪方法 | |
CN105069424B (zh) | 面部快速识别系统和方法 | |
US10163257B2 (en) | Constructing a 3D structure | |
WO2020107312A1 (zh) | 一种刚体配置方法及光学动作捕捉方法 | |
CN115345905A (zh) | 目标对象跟踪方法、装置、终端及存储介质 | |
CN111368733B (zh) | 一种基于标签分布学习的三维手部姿态估计方法、存储介质及终端 | |
CN110232705A (zh) | 一种融合分数阶变分调整的反向低秩稀疏学习目标跟踪方法 | |
Wu et al. | Multi‐camera 3D ball tracking framework for sports video | |
CN116740126A (zh) | 目标跟踪方法、高速相机及存储介质 | |
CN113139540B (zh) | 背板检测方法及设备 | |
CN113065523B (zh) | 目标追踪方法及装置、电子设备和存储介质 | |
CN111161348A (zh) | 一种基于单目相机的物体位姿估计方法、装置及设备 | |
Jia et al. | A Novel Improved Probability‐Guided RANSAC Algorithm for Robot 3D Map Building | |
Huang et al. | A survey of feature matching methods | |
Hong et al. | A Transformer-based multi-modal fusion network for 6D pose estimation | |
CN110322475B (zh) | 一种视频的稀疏检测方法 | |
CN108898636B (zh) | 一种基于改进pso的相机一维标定方法 | |
Peng et al. | Opto‐electric target tracking algorithm based on local feature selection and particle filter optimization | |
CN117953252B (zh) | 高速公路资产数据自动化采集方法及系统 | |
CN111814869B (zh) | 一种同步定位与建图的方法、装置、电子设备及存储介质 | |
Chakravorty et al. | Tracking using numerous anchor points |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 18944702 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 18944702 Country of ref document: EP Kind code of ref document: A1 |