Motion capture data mapping method, apparatus, storage medium, and electronic device

CN115775292BActive Publication Date: 2026-09-25WELLINK TECH CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202211452471.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-21
Publication Date
2026-09-25
Estimated Expiration
2042-11-21

AI Technical Summary

Technical Problem

但是对于多条动作捕捉数据,映射到定义模型上会消耗大量的时间,导致动画的动作制作周期较长

Benefits of technology

1.将运动物体的一系列动作进行捕捉,得到动作捕捉源数据,将运动物体对应的模型与定义模型建立骨骼一对一的映射关系,接着保留动作捕捉源数据中反映动作特征的关键的帧数据,删减其他多余的帧数据,得到目标动作捕捉数据,根据建立好的映射关系,将目标动作捕捉数据的每一帧数据按照映射关系映射到定义模型上,无需将整个动作捕捉源数据映射到定义模型上,也能达到驱使定义模型执行相对应的动作的效果。从而节省动作捕捉数据映射到定义模型上的时间,缩短动画的动作制作周期。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115775292B_ABST
    Figure CN115775292B_ABST
Patent Text Reader

Abstract

The application relates to a motion capture data mapping method and device, a storage medium and an electronic device. The method comprises the following steps: acquiring motion capture source data of a moving object; establishing a mapping relationship between the motion capture source data and a definition model; deleting frame data in the motion capture source data according to a preset rule to obtain target motion capture data; and mapping the target motion capture data to the definition model based on the mapping relationship. According to the established mapping relationship, each frame of data of the target motion capture data is mapped to the definition model according to the mapping relationship, without the need to map the entire motion capture source data to the definition model, and the effect of driving the definition model to perform corresponding actions can be achieved. Therefore, the time for mapping the motion capture data to the definition model is saved, and the action production cycle of the animation is shortened.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of data mapping technology, specifically to a motion capture data mapping method, apparatus, storage medium, and electronic device. Background Technology

[0002] Motion capture involves placing trackers on key parts of a moving object, using a motion capture system to capture the tracker's position, and then processing this data with a computer to obtain three-dimensional spatial coordinates. This motion capture data is essentially three-dimensional spatial coordinate data. Once the data is recognized by a computer, it can be applied in fields such as animation production, gait analysis, biomechanics, and ergonomics.

[0003] In related technologies, to enable realistic simulation of human movements in the 3D defined models of game engines, motion capture data is typically mapped onto the defined models, driving them to perform corresponding actions, thereby making the animations of the defined models more vivid. However, mapping multiple motion capture data points onto the defined models consumes a significant amount of time, resulting in a long animation production cycle. Summary of the Invention

[0004] To save time in mapping motion capture data onto a defined model and shorten the animation production cycle, this application provides a motion capture data mapping method, apparatus, storage medium, and electronic device.

[0005] The first aspect of this application provides a motion capture data mapping method, specifically including: Acquire motion capture source data of moving objects; Establish a mapping relationship between the motion capture source data and the defined model; Frame data is removed from the motion capture source data according to preset rules to obtain target motion capture data; Based on the mapping relationship, the target motion capture data is mapped onto the defined model.

[0006] By employing the above technical solution, a series of movements of a moving object are captured to obtain motion capture source data. A one-to-one mapping relationship is established between the model corresponding to the moving object and the defined model. Then, key frames reflecting the motion characteristics in the motion capture source data are retained, while other redundant frames are removed to obtain target motion capture data. Based on the established mapping relationship, each frame of the target motion capture data is mapped onto the defined model. This achieves the effect of driving the defined model to perform corresponding actions without mapping the entire motion capture source data onto the defined model. This saves time in mapping motion capture data to the defined model and shortens the animation production cycle.

[0007] Optionally, after acquiring the motion capture source data of the moving object, the method further includes: Determine whether the timecode of the motion capture source data is zero; If it is not zero, then the timecode is reset to zero frames.

[0008] By adopting the above technical solution, if the timecode of the motion capture source data is not zero after acquisition, it indicates that the timecode does not run from the beginning to the end of the timeline, which can easily cause discontinuity in the timecode. To address the case where the timecode is not zero, it is reset to zero frames, thus displaying the frame number of the motion capture source data more accurately and facilitating subsequent frame data filtering.

[0009] Optionally, establishing the mapping relationship between the motion capture source data and the defined model includes: According to preset fixed attributes, the motion capture source data and the defined model are adjusted so that the initial posture of the moving object model corresponding to the motion capture source data is consistent with the initial posture of the defined model. The fixed attributes include the initial bone displacement information, bone rotation information and bone scaling information of the model. Establish a mapping relationship between the adjusted motion capture source data and the defined model.

[0010] By adopting the above technical solution, after acquiring the motion capture source data, the coordinate information of the three-dimensional space in the motion capture source data and the defined model is adjusted. The bone displacement information, bone rotation information and bone scaling information of the initial posture of the moving object model and the defined model are close to the preset fixed attributes. This ensures that the initial posture of the moving object model and the initial posture of the defined model are as consistent as possible before the motion capture data is mapped onto the defined model. Finally, the adjusted motion capture data and the defined model are mapped to each other, so that the defined model can accurately reproduce a series of actions corresponding to the motion capture data and improve the vividness of the action effects.

[0011] Optionally, establishing a mapping relationship between the adjusted motion capture source data and the defined model includes: Compare the bone names of the model corresponding to the moving object and the defined model; Establish the adjusted mapping relationship between the motion capture source data and the defined model based on consistent bone names.

[0012] By adopting the above scheme, the names of each bone in the model of the moving object corresponding to the motion capture source data are compared with the names of each bone in the defined model. A correspondence is established for bones with the same names. Then, a mapping relationship is established between the motion capture source data with the same bone name and the same bone in the defined model. Similarly, a mapping relationship can also be established between other bones in the defined model and the corresponding motion capture source data. This makes it possible to establish an accurate mapping relationship between the motion capture source data as a whole and the defined model, so that the subsequent defined model can reproduce the motion effect of the motion capture source data.

[0013] Optionally, the step of deleting frame data from the motion capture source data according to preset rules to obtain target motion capture data includes: Obtain the peak points and key extreme points of velocity change corresponding to the frame number in the motion capture source data; The target motion capture data is obtained by removing frame data from the motion capture source data, excluding the peak points and the key extreme points of velocity change.

[0014] By adopting the above technical solution, since the motion capture source data consists of multiple frames, each frame corresponds to the action of the moving object, each frame corresponds to a value, and each frame corresponds to a motion trajectory point. Then, the turning point of the value change is determined as the peak point, that is, the key point corresponding to the key frame, which can reflect the key actions in the motion change. In addition, the key extreme points of velocity change are the points of acceleration trend and deceleration trend selected between the peak points, which can reflect the key motion state in the motion change. Finally, the peak points and the key extreme points of velocity change are extracted, and the other frame data is deleted to obtain the target motion capture data. This reduces the amount of data mapped to the defined model without affecting the mapping effect, and saves the time consumed by mapping.

[0015] Optionally, obtaining the peak points and key extreme points of velocity change corresponding to the frame number in the motion capture source data includes: The peak point of the motion capture source data is determined based on the change in displacement values ​​between adjacent frames of the motion capture source data, wherein the change in displacement values ​​is the magnitude of the change in coordinate values ​​on the x-axis, y-axis, and z-axis. Calculate the frame difference between adjacent peak points and compare the frame difference with a preset value; If the frame difference is greater than a preset value, then a critical extreme point of velocity change is selected between adjacent peak points.

[0016] By employing the above technical solution, if the displacement value corresponding to a frame number preceding a certain frame increases, and the displacement value corresponding to a frame number following a certain frame decreases, then the point corresponding to that frame is determined as a peak point; conversely, if the displacement value corresponding to a frame number preceding a certain frame decreases, and the displacement value corresponding to a frame number following a certain frame increases, then the point corresponding to that frame is also a peak point. After determining the peak points, the frame number difference between adjacent peak points is calculated. If the frame number difference is greater than a preset value, it indicates a large frame number difference, and selecting points between adjacent peak points where the displacement velocity increases or decreases is more representative as key extreme points of velocity change. Conversely, if the frame number difference is less than the preset value, it indicates a small frame change, and selecting key extreme points of velocity change between adjacent peak points is not very meaningful. This allows for a more accurate and objective selection of frame data that reflects key actions.

[0017] Optionally, if the frame difference is greater than a preset value, then selecting key extreme points of velocity change between adjacent peak points includes: If the frame difference is greater than a preset value, then the numerical change trend between adjacent peak points is determined; If the numerical change trend is increasing, then any acceleration point between adjacent peak points is selected as the critical extreme point of velocity change. If the numerical change is indeed a decreasing change, then any deceleration point between adjacent peak points is selected as the critical extreme point of the velocity change.

[0018] By adopting the above technical solution, the acceleration point is the point where the speed increases, and the deceleration point is the point where the speed decreases. If the displacement value between adjacent peak points gradually increases, then any acceleration point between adjacent peak points is selected as the key extreme point of speed change; if the displacement value between adjacent peak points gradually decreases, then any deceleration point between adjacent peak points is selected as the key extreme point of speed change, thereby more accurately determining the frame data reflecting the key motion state of the moving object.

[0019] A second aspect of this application provides a motion capture data mapping device, specifically comprising: The motion capture data acquisition module is used to acquire motion capture source data of moving objects; The mapping relationship establishment module is used to establish the mapping relationship between the motion capture source data and the defined model; The data reduction module is used to reduce the frame data in the motion capture source data according to preset rules to obtain the target motion capture data; The data mapping module is used to map the target motion capture data onto the defined model based on the mapping relationship.

[0020] By adopting the above technical solution, after the motion capture data acquisition module obtains the motion capture source data of the moving object, the mapping relationship establishment module establishes a one-to-one mapping relationship between the motion capture source data and the definition model. Then, the data reduction module reduces the frame data in the motion capture source data according to preset rules to obtain the target motion capture data. Finally, the data mapping module maps the target motion capture data to the definition model based on the established mapping relationship, thereby saving time in mapping motion capture data to the definition model.

[0021] In summary, this application includes at least one of the following beneficial technical effects: 1. A series of movements of a moving object are captured to obtain motion capture source data. A one-to-one mapping relationship is established between the model corresponding to the moving object and the defined model. Then, key frames reflecting the motion characteristics in the motion capture source data are retained, while other redundant frames are removed to obtain target motion capture data. Based on the established mapping relationship, each frame of the target motion capture data is mapped onto the defined model. This achieves the effect of driving the defined model to perform the corresponding action without mapping the entire motion capture source data onto the defined model. This saves time in mapping motion capture data to the defined model and shortens the animation production cycle.

[0022] 2. Since motion capture source data consists of multiple frames, each frame corresponds to the motion of the object, a numerical value, and a motion trajectory point. The turning points of numerical value changes are then identified as peak points, i.e., the key points corresponding to key frames, reflecting key actions in the motion changes. Additionally, key extreme points of velocity change are selected between the peak points as points of acceleration and deceleration trends, reflecting key motion states in the motion changes. Finally, the peak points and key extreme points of velocity change are extracted, and other frame data is removed to obtain the target motion capture data. This reduces the amount of data mapped to the defined model without affecting the mapping effect, effectively saving mapping time. Attached Figure Description

[0023] Figure 1 This is a flowchart illustrating a motion capture data mapping method provided in an embodiment of this application; Figure 2 This is a flowchart illustrating another motion capture data mapping method provided in an embodiment of this application; Figure 3 This is a schematic diagram of a T-shaped definition model showing different bones provided in an embodiment of this application; Figure 4 This is a schematic diagram of the skeletal distribution of a defined model provided in an embodiment of this application; Figure 5This is a flowchart illustrating another motion capture data mapping method provided in an embodiment of this application; Figure 6 This is a schematic diagram of the distribution of peak points and key extreme points of velocity change provided in an embodiment of this application; Figure 7 This is a schematic diagram of the structure of a motion capture data mapping device provided in an embodiment of this application; Figure 8 This is a schematic diagram of another motion capture data mapping device provided in an embodiment of this application.

[0024] Figure labeling: 11. Motion capture data acquisition module; 12. Mapping relationship establishment module; 13. Data deletion module; 14. Data mapping module. Detailed Implementation

[0025] To enable those skilled in the art to better understand the technical solutions in this specification, the technical solutions in the embodiments of this specification will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments.

[0026] In the description of the embodiments in this application, words such as "illustrative," "for example," or "for example" are used to indicate examples, illustrations, or explanations. Any embodiment or design described as "illustrative," "for example," or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or designs. Rather, the use of words such as "illustrative," "for example," or "for example" is intended to present the relevant concepts in a specific manner.

[0027] See Figure 1 This application discloses a flowchart of a motion capture data mapping method, which can be implemented using a computer program or run on a motion capture data mapping device based on the von Neumann architecture. The computer program can be integrated into an application or run as a standalone utility application, specifically including: S101: Acquire motion capture source data of moving objects.

[0028] Specifically, a motion capture (Mocap) system captures positional information from trackers positioned on key parts of the skeleton of a moving object, thereby obtaining the object's real-time motion. This information is then processed and transformed to obtain frame data containing three-dimensional spatial coordinates—the motion capture source data. The tracker, or motion tracker, is a device that uses sensors and software to track the movement of an object in three-dimensional space, helping to obtain the object's position, speed, direction, and whether it collides with other entities. Motioncapture is a motion capture technology that enables data collection, processing, management, and provides interfaces to numerous 3D modeling software and motion capture hardware systems. In this embodiment, the motion capture system may use Cortex software; in other embodiments, NOKOV software may also be used.

[0029] S102: Establish the mapping relationship between motion capture source data and the defined model.

[0030] Specifically, the defined model is pre-defined and contains skeletal data consistent with the skeleton of the moving object. In this embodiment, the moving object is a real human body, and the defined model is a 3D virtual model of an animated character. The skeletal data includes bone names and the relative positions of each bone. Each bone corresponds to a different part of the defined model, and also to a different part of the real human body.

[0031] After acquiring the motion capture source data of the moving object, since the motion capture source data is composed of frames of motion capture data, each frame of motion capture source data (i.e., each frame of data) is extracted from the motion capture source data using Adobe Premiere software. Each frame of motion capture source data contains the motion data of different bones (different parts of the moving object) of the corresponding moving object. Then, the programmable tools provided by the Motion Capture system decompose each frame of motion capture source data into the motion data of the corresponding different bones. Finally, using a frame-by-frame approach, a one-to-one mapping relationship is established between the motion data of the different bones decomposed in each frame of motion capture source data and the same bones corresponding to the defined model, thereby ultimately realizing the mapping relationship between the overall motion capture source data and the defined model.

[0032] S103: Frame data in the motion capture source data is removed according to preset rules to obtain target motion capture data.

[0033] In one feasible approach, the peak points and key extreme points of velocity change corresponding to the frame number in the motion capture source data are obtained; The target motion capture data is obtained by removing frame data from the motion capture source data, excluding peak points and key extreme points of velocity changes.

[0034] Specifically, since the standard frame rate for animation is 24 frames per second, frames per second actually refers to the number of frames displayed per second in an animation or video. Frame data refers to the motion data corresponding to each frame in the motion capture source data, i.e., the corresponding motion trajectory points. After establishing the mapping relationship between the motion capture source data and the defined model, the frame data corresponding to key points such as peak points and critical extreme points of speed change are retained from the motion capture source data, while other frame data is removed, ultimately obtaining the target motion capture data. Among them, the values ​​of points adjacent to the peak point are increasing or decreasing. Critical extreme points of speed change are points where the motion speed increases or decreases. It should be noted that key points are the motion trajectory points corresponding to key frames. A key frame refers to the frame in which the key action of the character or object's motion change occurs. For example, if the motion animation corresponding to the motion capture source data is 2 seconds, that is, there are 48 frames of frame data. The number of frames corresponding to the peak points and critical extreme points of speed change is 30 frames. Then, the remaining 18 frames of frame data are removed, and the target motion capture data is 30 frames of frame data.

[0035] S104: Based on the mapping relationship, map the target motion capture data onto the defined model.

[0036] Specifically, after obtaining the target motion capture data, each frame of motion capture data is decomposed into motion data for different bones. Then, the motion data of different bones is converted into motion-driven data corresponding to that frame. Finally, based on the mapping relationship, the pre-built MotionBuilder software maps the frame-by-frame motion-driven data from the target motion capture data to the corresponding bones of the defined model. This allows different bones in the defined model to reproduce the motion effects of the motion capture source data under the drive of the corresponding motion-driven data. The mapping of target motion capture data to the defined model is essentially the process of establishing a correspondence between data elements between the two data models; this process is called data mapping. It should be noted that bones are crucial for the defined model to move.

[0037] See Figure 2 This application discloses a flowchart of another motion capture data mapping method, which can be implemented using a computer program or run on a motion capture data mapping device based on the von Neumann architecture. The computer program can be integrated into an application or run as a standalone utility application, specifically including: S201: Acquire motion capture source data of moving objects.

[0038] For details, please refer to step S101, which will not be repeated here.

[0039] S202: Determine if the timecode of the motion capture source data is zero; S203: If not zero, reset the timecode to zero frames.

[0040] Specifically, timecode is the time encoding recorded by a camera for each frame when recording image signals. It's a digital signal used in streaming. This signal assigns a number to each frame in the video to represent the hour, minute, second, and frame number. All digital cameras have timecode functionality, while analog cameras generally do not. The standard timecode format is HH:MM:SS:FF (hour, minute, second, and frame value). The first three formats are similar to clock times, each with a maximum value of 23, 59, and 59 respectively. The fourth format represents the frame number of the video or animation, and its maximum value is determined by the frame rate mode. After acquiring motion capture source data, it checks whether the motion capture source data starts from frame zero, i.e., whether the fourth value of the timecode for the first recorded image is zero. If it is not zero, it means the motion capture source data does not start from frame zero, and then the fourth value of the timecode is reset to zero. This ensures that the motion capture source data changes continuously from frame 0 to frame n. For example, if the timecode of the first image is 00:00:00:10, it means that the motion capture source data is counted sequentially from frame 10 downwards. The timecode should be reset to frame zero, i.e., 00:00:00:00.

[0041] S204: Adjust the motion capture source data and the defined model according to the preset fixed attributes so that the initial posture of the moving object model corresponding to the motion capture source data is consistent with the initial posture of the defined model. The fixed attributes include the initial bone position information, bone rotation information and bone scaling information of the model. Specifically, fixed attributes are used to characterize the initial pose information of the model desired by the motion capture creators. The model's pose is constrained by the bone position information (3D spatial coordinates), rotation information (rotation angle of the bone relative to normal conditions), and scaling information (bone size scaling information) of different bones. If there are issues such as improper mapping during motion capture, the model corresponding to the motion capture source data may differ from the defined model's posture. Furthermore, during motion capture, a scaling ratio is obtained based on the dimensions of different parts of the actual moving object and the corresponding parts of the defined model. Even after scaling, the height ratio of the model corresponding to the motion capture source data and the defined model may still differ, leading to poor matching when mapping the motion capture source data to the defined model. Therefore, both the motion capture source data and the defined model are adjusted towards preset fixed attributes to ensure that the initial pose of the model corresponding to the motion capture source data is as consistent as possible with that of the defined model.

[0042] For example, such as Figure 3 The diagram illustrates a T-shaped defined model displaying different skeletons according to an embodiment of this application. The defined model is a 3D human body model, with its initial pose being T-shaped and the hands horizontal. The initial pose of the model corresponding to the motion capture source data is with hands hanging down, and the corresponding motion effect is with the hands raised from hanging down to horizontal. Based on this, when the motion capture source data is mapped onto the defined model, the defined model performs the action of raising the hands from horizontal to vertical. Clearly, the defined model does not accurately reproduce the motion corresponding to the motion capture source data. Therefore, fixed attributes can be defined as the skeleton position information, skeleton rotation information, and scaling information corresponding to the T-shaped pose of the model, ensuring that the initial pose of the model corresponding to the motion capture source data is consistent with the initial pose of the defined model, thereby allowing the defined model to better reproduce the motion effect corresponding to the motion capture source data.

[0043] S205: Establish a mapping relationship between the adjusted motion capture source data and the defined model.

[0044] In one feasible approach, the model corresponding to the moving object is compared with the bone name of the defined model; Establish a mapping relationship between the adjusted motion capture source data and the defined model, ensuring consistency in bone names.

[0045] Specifically, after adjusting the motion capture source data and the defined model according to preset fixed attributes, the bone names in the model of the moving object corresponding to the motion capture source data are compared with the bone names in the defined model. For example, Figure 4 The diagram shown is a schematic diagram of the skeletal distribution of a defined model provided in an embodiment of this application. The skeletal names include: head, neck, left collar, left upper arm, left lower arm, left hand, left upper leg, left lower leg, left foot, chest, hips, right collar, right upper arm, right lower arm, right hand, right upper leg, right lower leg, and right foot.

[0046] If the bone names match, the bones in the motion capture data's corresponding moving object model are matched one-to-one with the bones in the defined model that have the same bone names. Simultaneously, the programmable tools provided by the motion capture system decompose each frame of motion capture data into motion data for different bones, establishing a one-to-one mapping between these motion data and the bones with the same names in the defined model. This process is repeated frame by frame to ultimately establish a mapping between the overall motion capture source data and the defined model. It should be noted that during the mapping process, the following situations may occur: if the frame data decomposes into motion data for the same bone, then that frame data is directly mapped to the same bone in the defined model; otherwise, if the frame data decomposes into motion data for different bones, then a one-to-one mapping is established between the motion data and the corresponding bones in the defined model based on the bone names.

[0047] S206: Frame data in the motion capture source data is removed according to preset rules to obtain target motion capture data.

[0048] S207: Based on the mapping relationship, map the target motion capture data onto the defined model.

[0049] For details, please refer to steps S103-S104, which will not be repeated here.

[0050] See Figure 5 This application discloses a flowchart of another motion capture data mapping method, which can be implemented using a computer program or run on a motion capture data mapping device based on the von Neumann architecture. The computer program can be integrated into an application or run as a standalone utility application, specifically including: S301: Acquire motion capture source data of moving objects; S302: Establish the mapping relationship between motion capture source data and the defined model; For details, please refer to steps S101-S102, which will not be repeated here.

[0051] S303: Determine the peak point of the motion capture source data based on the change in displacement values ​​between adjacent frames of the motion capture source data. The change in displacement values ​​is the magnitude of the change in coordinate values ​​on the x-axis, y-axis, and z-axis.

[0052] Specifically, after determining the mapping relationship between the motion capture source data and the defined model, the coordinates of the motion trajectory points in each frame of the motion capture source data on the x-axis in 3D space are obtained. Simultaneously, the number of adjacent frames on the time axis is selected, and the coordinates of the motion trajectory points corresponding to those adjacent frames on the x-axis in 3D space are obtained. This process is repeated for each adjacent frame. For example... Figure 6 The diagram illustrates the distribution of peak points and key extreme points of velocity changes. By comparing the x-axis coordinates of these different motion trajectory points, if there is an inflection point where the coordinate values ​​change (i.e., displacement changes), and the trends of coordinate value changes before and after the inflection point are opposite, then this inflection point is determined as the peak point on the x-axis. Similarly, by comparing the coordinate values ​​of motion trajectory points in adjacent frames on the y-axis in 3D space, the peak points on the y-axis are determined; and by comparing the coordinate values ​​of motion trajectory points in adjacent frames on the z-axis in 3D space, the peak points on the z-axis are determined. The time axis is used to organize and control multiple frames within a certain time period. It should be noted that because the peak points of the motion capture source data are different on the x, y, and z axes, it is necessary to determine the peak points on each of these axes separately.

[0053] For example, selecting several adjacent frames from the motion capture source data, divided into frames 10, 11, 12, 13, and 14, the coordinates of the motion trajectory points on the x-axis in 3D space corresponding to these 5 frames are -8.5, -8, -7.5, -8.2, and -8.6, respectively. From the changes in coordinate values, it can be seen that the coordinate values ​​before -7.5 show an increasing trend, while the coordinate values ​​after -7.5 show a decreasing trend. Therefore, the motion trajectory point corresponding to -7.5 is determined as the peak point.

[0054] S304: Calculate the frame difference between adjacent peak points and compare the frame difference with a preset value.

[0055] Specifically, after determining the peak points corresponding to the frame counts in the motion capture source data, the frame counts of adjacent peak points are subtracted to obtain the frame count difference. Then, the frame count is compared with a preset value, where the preset value is the critical frame count difference used to determine key points based on speed changes. If the frame count difference is greater than the preset value, key points related to the motion state are further selected between adjacent peak points based on changes in motion speed to reflect the motion of the moving object. If the frame count difference is less than or equal to the preset value, it indicates that the frame count change amplitude corresponding to adjacent peak points is small, and further selection of key points related to the motion state based on changes in motion speed between adjacent peak points is not representative. In this embodiment, the preset value is 5 frames; in other embodiments, the preset value can also be set to 6 or 7 frames, or a value greater than 5 frames. It should be noted that the peak points on the x-axis, y-axis, and z-axis all need to undergo frame count difference comparison with the preset value separately.

[0056] S305: If the frame difference is greater than the preset value, then select the key extreme point of speed change between adjacent peak points.

[0057] In one feasible approach, if the frame difference is greater than a preset value, the trend of numerical change between adjacent peak points is determined. If the numerical change trend is increasing, then any acceleration point between adjacent peak points is selected as the critical extreme point of velocity change. If the numerical change is indeed decreasing, then any deceleration point between adjacent peak points is selected as the critical extreme point of the velocity change.

[0058] Specifically, such as Figure 6 As shown, if the frame difference is greater than a preset value, it is determined whether the numerical change between adjacent peak points is increasing or decreasing. If the numerical change between adjacent peak points is increasing, an acceleration point with increasing speed is selected between adjacent peak points, i.e., a critical extreme point of speed change. For example, the x-coordinates of adjacent peak points are -12 and -9, the corresponding frame numbers are 2 and 8, respectively, the frame difference is 6 frames, which is greater than the preset value, and the intermediate frame numbers are 3, 4, 5, 6, and 7, with corresponding coordinates of -11.5, -11, -10, -9.5, and -9.2. Next, the numerical difference is divided by one frame. The speed value from frame 2 to frame 3 is actually the difference between the two frames being 0.5; the speed value from frame 3 to frame 4 is 0.5; the speed value from frame 4 to frame 5 is 1; the speed value from frame 5 to frame 6 is 0.5; the speed value from frame 6 to frame 7 is 0.3; and the speed value from frame 7 to frame 8 is 0.2. It can be seen that the speed value from frame 4 to frame 5 is an increase compared to the speed value from frame 3 to frame 4. Therefore, the point corresponding to frame 5 is selected as the acceleration point and as the key extreme point of speed change. In other embodiments, an acceleration point and a deceleration point can be selected simultaneously between adjacent peak points as key extreme points of speed change, or only a deceleration point can be selected as the key extreme point of speed change. It should be noted that the corresponding point is the corresponding motion trajectory point.

[0059] If the numerical change between adjacent peak points is decreasing, then any deceleration point is selected as the critical extreme point of velocity change in this manner. In other embodiments, both an acceleration point and a deceleration point can be selected as critical extreme points of velocity change simultaneously, or only an acceleration point can be selected as the critical extreme point of velocity change. It should be noted that the peak points on the y-axis and the peak points on the z-axis also need to be selected as acceleration and deceleration points among adjacent peak points.

[0060] S306: Remove frame data from the motion capture source data, excluding peak points and critical extreme points of velocity changes, to obtain the target motion capture data.

[0061] Specifically, after determining the peak points and key extreme points of velocity change on the x, y, and z axes, the frame data corresponding to the peak points and key extreme points of velocity change are retained in the multi-frame data of the motion capture source data, while the frame data of other frames in the motion capture source data are deleted, and finally the target motion capture data is obtained.

[0062] S307: Based on the mapping relationship, the target motion capture data is mapped onto the defined model.

[0063] For details, please refer to step S104, which will not be repeated here.

[0064] The implementation principle of the motion capture data mapping method in this application embodiment is as follows: After obtaining the motion capture source data of the moving object, the motion capture source data and the defined model are adjusted according to the preset fixed attributes so that the initial posture of the moving object model corresponding to the motion capture source data is consistent with the initial posture of the defined model. Then, the adjusted motion capture source data and the defined model are mapped one-to-one according to the skeleton. Finally, the frame data in the motion capture source data is deleted according to the preset rules to obtain the target motion capture data. Based on the mapping relationship, the target motion capture data is mapped onto the defined model.

[0065] The following are embodiments of the apparatus described in this application, which can be used to execute the embodiments of the method described in this application. For details not disclosed in the apparatus embodiments of this application, please refer to the embodiments of the method described in this application.

[0066] Please see Figure 7 This is a schematic diagram of a motion capture data mapping device provided in an embodiment of this application. This motion capture data mapping device can be implemented as all or part of a device through software, hardware, or a combination of both. The device 1 includes a motion capture data acquisition module 11, a mapping relationship establishment module 12, a data deletion module 13, and a data mapping module 14.

[0067] The motion capture data acquisition module 11 is used to acquire motion capture source data of moving objects; The mapping relationship establishment module 12 is used to establish the mapping relationship between motion capture source data and the defined model; Data reduction module 13 is used to reduce frame data in motion capture source data according to preset rules to obtain target motion capture data; The data mapping module 14 is used to map target motion capture data onto a defined model based on mapping relationships.

[0068] Optional, such as Figure 8 As shown, device 1 also includes a zero-frame detection module 15, specifically used for: Determine if the timecode of the motion capture source data is zero; If it is not zero, the timecode is reset to zero frames.

[0069] Optionally, the mapping relationship establishment module 12 is specifically used for: Based on preset fixed attributes, the motion capture source data and the defined model are adjusted so that the initial pose of the moving object model corresponding to the motion capture source data is consistent with the initial pose of the defined model. The fixed attributes include the initial bone position information, bone rotation information and bone scaling information of the model. Establish a mapping relationship between the adjusted motion capture source data and the defined model.

[0070] Optionally, the mapping relationship establishment module 12 is also used for: Compare the bone names of the model corresponding to the moving object and the defined model; Establish a mapping relationship between the adjusted motion capture source data and the defined model, ensuring consistency in bone names.

[0071] Optional, data reduction module 13, specifically used for: Obtain the peak points and key extreme points of velocity change corresponding to the frame number in the motion capture source data; The target motion capture data is obtained by removing frame data from the motion capture source data, excluding peak points and key extreme points of velocity changes.

[0072] Optionally, data reduction module 13 is also used for: The peak point of the motion capture source data is determined based on the change in displacement values ​​between adjacent frames. The change in displacement values ​​is the magnitude of the change in coordinate values ​​on the x-axis, y-axis, and z-axis. Calculate the frame difference between adjacent peak points and compare the frame difference with a preset value; If the frame difference is greater than the preset value, then select the critical extreme point of velocity change between adjacent peak points.

[0073] Optionally, data reduction module 13 is also used for: If the frame difference is greater than a preset value, then the trend of numerical change between adjacent peak points is determined. If the numerical change trend is increasing, then any acceleration point between adjacent peak points is selected as the critical extreme point of velocity change. If the numerical change is indeed decreasing, then any deceleration point between adjacent peak points is selected as the critical extreme point of the velocity change.

[0074] It should be noted that the motion capture data mapping device provided in the above embodiments is only illustrated by the division of the above functional modules when executing the motion capture data mapping method. In practical applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. In addition, the motion capture data mapping device and the motion capture data mapping method embodiment provided in the above embodiments belong to the same concept, and the implementation process is detailed in the method embodiment, which will not be repeated here.

[0075] This application also discloses a computer-readable storage medium, which stores a computer program, wherein when the computer program is executed by a processor, it employs a motion capture data mapping method as described in the above embodiments.

[0076] The computer program can be stored in a computer-readable medium. The computer program includes computer program code, which can be in the form of source code, object code, executable file, or certain middleware. The computer-readable medium includes any entity or device capable of carrying computer program code, recording media, USB flash drive, portable hard drive, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc. It should be noted that the computer-readable medium includes, but is not limited to, the above-mentioned components.

[0077] The above-described motion capture data mapping method is stored in the computer-readable storage medium and loaded and executed on the processor to facilitate the storage and application of the method.

[0078] This application also discloses an electronic device in which a computer program is stored in a computer-readable storage medium. When the computer program is loaded and executed by a processor, the above-mentioned motion capture data mapping method is used.

[0079] The electronic device can be a desktop computer, a laptop computer, or a cloud server, and the electronic device includes, but is not limited to, a processor and a memory. For example, the electronic device may also include input / output devices, network access devices, and buses.

[0080] The processor can be a central processing unit (CPU). Of course, depending on the actual use, it can also be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), off-the-shelf programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor or any conventional processor, etc., and this application does not limit it.

[0081] The memory can be an internal storage unit of an electronic device, such as a hard disk or RAM, or an external storage device, such as a plug-in hard disk, smart memory card (SMC), secure digital card (SD), or flash memory card (FC) equipped on the electronic device. Furthermore, the memory can be a combination of an internal storage unit and an external storage device. The memory is used to store computer programs and other programs and data required by the electronic device. The memory can also be used to temporarily store data that has been output or will be output. This application does not limit this.

[0082] In this electronic device, the motion capture data mapping method of the above embodiment is stored in the memory of the electronic device and loaded and executed on the processor of the electronic device for convenient use.

[0083] The foregoing description is merely an exemplary embodiment of this disclosure and should not be construed as limiting the scope of this disclosure. Any equivalent changes and modifications made in accordance with the teachings of this disclosure shall still fall within the scope of this disclosure. Other embodiments of this disclosure will be readily apparent to those skilled in the art upon consideration of the specification and practice of the disclosure herein. This application is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not described herein. The specification and embodiments are to be considered exemplary only, and the scope and spirit of this disclosure are defined by the claims.

Claims

1. A motion capture data mapping method, characterized in that, The method includes: Acquire motion capture source data of moving objects; Establish a mapping relationship between the motion capture source data and the defined model, wherein the defined model is a three-dimensional virtual model of the animated character, and the defined model is bound with bone data consistent with the skeleton of the moving object; The target motion capture data is obtained by deleting frame data from the motion capture source data according to preset rules, including: obtaining the peak points and key extreme points of velocity change corresponding to the number of frames in the motion capture source data, including: determining the peak points of the motion capture source data in the x, y, and z axes according to the displacement value change between adjacent frames of the motion capture source data, wherein the displacement value change is the magnitude of the coordinate value change in the x, y, and z axes; Calculate the frame difference between adjacent peak points and compare the frame difference with a preset value; wherein, the peak points on the x-axis, y-axis and z-axis are all processed by comparing the frame difference with the preset value respectively; If the frame difference is greater than a preset value, then key extreme points of velocity change on the x-axis, y-axis and z-axis are selected between adjacent peak points; Frame data other than the peak points and the key extreme points of velocity change are removed from the motion capture source data to obtain the target motion capture data; Based on the mapping relationship, the target motion capture data is mapped onto the defined model.

2. The motion capture data mapping method according to claim 1, characterized in that, After acquiring the motion capture source data of the moving object, the process also includes: Determine whether the timecode of the motion capture source data is zero; If it is not zero, then the timecode is reset to zero frames.

3. The motion capture data mapping method according to claim 1, characterized in that, The process of establishing the mapping relationship between the motion capture source data and the defined model includes: According to preset fixed attributes, the motion capture source data and the defined model are adjusted so that the initial posture of the moving object model corresponding to the motion capture source data is consistent with the initial posture of the defined model. The fixed attributes include the initial bone position information, bone rotation information and bone scaling information of the model. Establish a mapping relationship between the adjusted motion capture source data and the defined model.

4. The motion capture data mapping method according to claim 3, characterized in that, The step of establishing a mapping relationship between the adjusted motion capture source data and the defined model includes: Compare the bone names of the model corresponding to the moving object and the defined model; Establish a mapping relationship between the adjusted motion capture source data and the defined model based on consistent bone names.

5. The motion capture data mapping method according to claim 1, characterized in that, If the frame difference is greater than a preset value, then key extreme points of velocity change are selected between adjacent peak points, including: If the frame difference is greater than a preset value, then the numerical change trend between adjacent peak points is determined; If the numerical change trend is increasing, then any acceleration point between adjacent peak points is selected as the critical extreme point of velocity change. If the numerical change is indeed a decreasing change, then any deceleration point between adjacent peak points is selected as the critical extreme point of the velocity change.

6. A motion capture data mapping device for implementing the motion capture data mapping method according to any one of claims 1 to 5, characterized in that, include: The motion capture data acquisition module (11) is used to acquire motion capture source data of moving objects; The mapping relationship establishment module (12) is used to establish the mapping relationship between the motion capture source data and the defined model; The data deletion module (13) is used to delete frame data in the motion capture source data according to preset rules to obtain target motion capture data; The data mapping module (14) is used to map the target motion capture data onto the defined model based on the mapping relationship.

7. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is loaded and executed by the processor, it employs the method described in any one of claims 1-5.

8. An electronic device comprising a memory, a processor, and a computer program stored in the memory and capable of running on the processor, characterized in that, When the processor loads and executes the computer program, it employs the method described in any one of claims 1-5.

Citation Information

Patent Citations

  • Motion capture data key frame extracting method based on local linear imbedding

    CN104156986A

  • Motion data processing method, device and equipment and storage medium

    CN111325819A

  • Image data control method and device, electronic device and storage medium

    CN114419209A