# Research on Tennis Motion Evaluation Method and System Based on Deep Learning

Authors: Huan Chang
Journal: International Transactions on Electrical Energy Systems
 (2022)

---

## Abstract

The current tennis training lacks the guidance to standardize the user action evaluation method; it is difficult to use the human movement analysis related technology to evaluate the user action and feedback. In this paper, a real-time evaluation algorithm for human movements in tennis training with the monocular camera is studied. Aiming at solving the problem of making use of temporal and spatial information of behavior sequence, an improved preprocessing algorithm based on depth image and bone data was proposed, and bone joint feature vectors were constructed to describe the topological shape of the human skeleton. A five-channel convolutional neural network (5C-CNN) model is proposed to effectively train multimodal behavior data. In order to solve the problem of human motion direction, the counterclockwise rotation angle of limbs was proposed as a motion evaluation feature. The experimental test on the MSR Action 3D database shows that the accuracy of the method for tennis movement evaluation reaches 98.1%, which verifies the validity of the model construction.


---

## Body

## 1. Introduction

In recent years, computers and artificial intelligence have developed rapidly. How to combine sports with computer technology to obtain more accurate training and competition data and feed them back to people, so that people can learn and master sports skills quickly and easily, and improve people's physical and mental quality has become a hot topic. This has become a new research hotspot. At the same time, in the context of the continuous improvement of the level of urban modernization, in order to ensure and maintain public security, monitoring equipment is everywhere; computer vision field is paying more and more attention to the detection and recognition of human itself and its behavior [1]. And the research on multimedia sensor networks is more. Camera-based behavior recognition and action recognition have been widely used in various fields, such as security monitoring. Once an emergency occurs, the camera can promptly alarm and notify relevant personnel to deal with it. In film and television animation and game industry, the movements of virtual animated characters can directly capture the real movements of actors, and users can control the game characters through their own body movements; Some simulation experience in online shopping, you can try on clothes to simulate the actual effect. Motion evaluation can be used in medical rehabilitation training and sports teaching to provide users with evaluation results and help correct movements.


## 2. Literature Review

Action recognition can be defined as a supervised classification problem. In the training stage, the motion recognition model is learned from the prelabeled observation data. In the test stage, the learned model is used to predict the actions contained in the unknown observation data. Generally speaking, the complete action recognition process includes feature extraction, action detection, action learning, and action classification. In recent years, the research on human motion evaluation and analysis can be divided into three categories: one is based on inertial sensors, the other is based on wireless signals, and the third is based on computer vision [2].Human motion evaluation and analysis methods based on computer vision have been widely studied and discussed in academia and industry. Motion energy images (MEI) were used to represent the location of the action, and motion history images (MHI) were used to represent the time sequence of the action. The average motion energy (AME) of the foreground and mean motion shape (MME) of the contour are used to describe the motion. The human contours of each frame are projected onto a two-dimensional plane, and a series of contours form a three-dimensional form, called space-time volume (STV). The temporal and spatial features are extracted by the Poisson equation.Many of the above methods and features are mainly used for behavior recognition or action recognition but are not suitable for fine real-time motion evaluation due to their coarse feature description granularity. There are many researches on human pose estimation in this field. Human pose estimation is to describe human postural movements by obtaining skeleton nodes. The common method is to use the depth camera (RGB-D camera) to obtain the distance information, which can build a three-dimensional model and get the accurate node. Microsoft’s Kinect device for motion-sensing games, released in 2010, is equipped with a depth camera, so it is often used as an input device for attitude estimation in research on visual algorithms. The joint position of the 3D skeleton model is combined with a particle swarm optimization support vector machine to do human motion recognition. The action forests (AF) model is proposed, which is an extension of the random forest algorithm to fit skeleton features in three-dimensional space through different decision functions [3]. Their method is not limited by background and camera position and can achieve the real-time classification of human actions. Better feature extraction of objects can be achieved with deep learning, weighted hierarchical depth motion maps (WHDMM), and three-channel deep convolutional neural networks. The human skeleton was divided into five joint groups, and the features of each group were coded in the temporal and spatial domains. The deep convolutional neural network was used for motion classification. A deep learning framework based on three-dimensional skeleton information is proposed. The framework focuses on the spatial structure of skeleton joints and the time information between multiple frames. The proposed deep network separates the input multimode signals and automatically encodes the features. Based on the feature structure, a structure sparse several learning machines is proposed, which uses the mixed norm to regularize to obtain better classification performance.At present, there are many researches on human posture estimation and action recognition, and various new methods emerge endlessly. However, there are few researches on human motion evaluation at present. Motion evaluation is to evaluate the similarity between standard degree and template degree of human actions. The challenge of this task is that two-dimensional images lack distance information, have poor accuracy, and have high requirements for real-time performance. In recent years, the demand for relevant consumer markets is increasing, so human motion evaluation has gradually become a focus of researchers [4].


## 3. Real-Time Human Motion Evaluation Algorithm Based on Monocular Camera

The tennis training robot only captures video images through the monocular camera, so the real-time evaluation algorithm of human movement applied to the robot is mainly divided into four steps: (1) video image preprocessing, (2) extraction of two-dimensional skeleton nodes from images, (3) single-frame real-time evaluation of human motion, and (4) comprehensive assessment of human motion.


### 3.1. Human Motion Video Preprocessing Technology

Firstly, adjust the brightness of the video image captured by the camera. Generally, the brightness adjustment method uniformly handles the image as a whole, but this method is not very effective in the case of inconsistent brightness in each part of the image. Yuan et al. therefore proposed a method to automatically correct the image exposure, taking into account both the visibility of individual domains and the relative contrast between regions. The S-shaped gamma curve corresponding to the image was obtained. Finally, the processed image was output according to this curve so that the brightness of each area of the image was more appropriate.The automatic correction image exposure method is used to segment the input image first, and different regions in the image will be allocated to their respective region blocks according to the color gray threshold. After that, the original image is normalized and divided into 11 levels according to brightness [5]. The results of image segmentation are combined according to levels. Then, according to the median brightness value V, the layered image was divided into the underexposure region and overexposure region, and the images in these two regions were processed with a gamma curve with the corresponding gamma value of 2.2 and 0.455, respectively. After that, the Canny operator was used to extract the edges of the original image after underexposure and the image after overexposure as details, and the ratio of the details of the underexposure area and overexposure area to all details of the original image vs and vh were calculated. Then the ratio Ci of the number of pixels in each layer to the total number of pixels in the image was calculated. In addition, the ratio of the number of pixels θi in the important region to the total number of pixels in the image was obtained by the facial sky detector.This likelihood function can increase the brightness of the underexposed area and decrease the brightness of the overexposed area. Meanwhile, it has no effect on the middle region (V region). After that, an S-shaped curve is used to map the brightness of each pixel globally to the desired exposure [6].Given the temporal correlation between video frames, the background changes are not very dramatic, so there is no need to process each frame individually. Since the background between adjacent frames is basically very similar and the lighting conditions do not often change suddenly, that is, the background is relatively stable, this paper obtains the S-shaped curve periodically and adjusts the brightness according to the same S-shaped curve for each frame within the period. After experimental tests, the period is set to 500 frames, and the average frame rate of processing is about 23.9 frames per second, ensuring real-time performance.In addition, as the brightness of the image is adjusted, some noise in the video image will become obvious. In order to meet the real-time performance of the video, the constant time median filtering is used here to denoise the image, and the size of the wave template is set as 3 × 3. Similarly, the average frame rate of the median filtering denoising test after brightness adjustment is about 23.8 frames per second, which has little influence on the speed [7].


### 3.2. Feature Extraction of Skeletal Data

#### 3.2.1. Form Conversion of Bone Node Data

The bone movement sequence in the database MSR Action 3D is the bone data arranged in time sequence. Each group of bone data contains 20 three-dimensional coordinates of bone nodes, and each node has a fixed node label, as shown in Table1. The bone data at a certain time is called a behavior frame of the bone movement sequence. Since the skeleton data stored in the MSR Action 3D database is constructed based on the Kinect V1 coordinate system, they should be reconstructed in the real-world Cartesian coordinate system in order to maintain the invariance of viewpoints and facilitate standardization research [1].Table 1
Human skeleton node name and corresponding label.
GradeName0Hip center1Mid-spine2Center of shoulders3Head4Left shoulder5Left elbow6Left wrist joint7Left hand8Right shoulder9Right elbow0Right wrist1Right hand2Left hip3Left knee4Left ankle5Left foot6Right hip7Right knee8Right ankle9Right footIn order to construct the bone motion sequence into a planar grid structure similar to RGB images, form transformation of bone node data is required. In this paper, 3D coordinates of bone nodes obtained from the reconstructed coordinate system are transformed into a 3D matrix of bone nodes. Specifically, thex, y, and z direction of the K-th bone node xki,xki,xki of the bone data of FRAME L in the real-world coordinate system corresponds to the R, G, and B channels of RGB images. If the RGB image is regarded as a three-dimensional matrix, each matrix represents a color channel, that is, the R matrix stores the X coordinates of bone nodes of all frames in a sequence, the G matrix stores the Y coordinates of the bone nodes of all frames in the sequence, and the B matrix stores the Z coordinates of the bone nodes of all frames in the sequence. The rows of each matrix are used to store the corresponding coordinates of each frame, and the columns of each matrix are used to store the corresponding coordinates of all frames. Therefore, the number of rows of the matrix represents the frame number N of the bone movement sequence [8]. The number of matrix columns represents the number of bone nodes in each frame n. Meanwhile, the sequence of matrix rows is the time sequence of bone movement sequence, and the sequence of matrix columns is the label sequence of bone nodes. According to the above construction principle, a three-dimensional matrix of the Nxnx3 structure can be obtained to represent each bone motion sequence. Because the MSR Action 3D database contains 567 bone motion sequences, a total of 567 groups of a three-dimensional matrix of bone nodes can be obtained.


#### 3.2.2. Normalized Skeleton Node Matrix

Compared with the method of coding the bone motion sequence into a multicolor space-time map, the actual RGB image is not constructed in this paper. Instead, the 3D coordinates of the bone nodes in the MSR Action 3D database are used to convert them into a 3D matrix of the bone nodes. This way not only describes the changes of coordinates during motion in detail but also better extracts the behavioral features of temporal information. But, as the input of the CNN model, you need to get bone matrix normalized processing nodes because different skeletal motion sequence of the frame numberN is not the same; this leads to obtaining the three-dimensional matrix size or big or small [9]. Generally speaking, the normalization of skeletal motion sequence can be carried out by interception or supplement. Interception usually refers to discarding part of a sequence with more target frames, and supplement refers to filling in zero part of a sequence with less target frames. However, one problem is how to select the target frame number. If the target frame number is too small, a lot of information will be lost, and incomplete data is not conducive to the improvement of behavior recognition rate. If the number of target frames is too large, it will cause a lot of zero filling, and redundant data is not conducive to efficient network training. In view of the above problems, this paper made statistics on the frames of different bone motion sequences in the MSR Action 3D database, as shown in Figure 1. The statistical results showed that more than 90% of the frames of bone motion sequences in the database were below 54 frames, so the target frame T of this paper was selected as 54 frames. Next, the bone motion sequence is normalized, and the main algorithm steps are as follows:(1)
IfN > T, the [T, N] frame was intercepted and discarded, and the [0, T] month frame was used as the normalized bone motion sequence [10](2)
IfN < T, the [0, T] frame is used as the normalized bone motion sequence(3)
IfN = T, [0, T] frame is used as the normalized bone motion sequence without any processingFigure 1
Frame statistics histogram of skeleton sequence in the MSR Action 3D database.After the above algorithm steps, the normalized skeleton motion sequence can be obtained, and then the normalized skeleton node matrix can be obtained [11]. Because the MSR Action 3D database is built based on Kinect V1, each frame of bone data has 20 three-dimensional coordinates of bone nodes, that is, n = 20, so the size of the bone node matrix obtained is 54 × 20 × 3.


#### 3.2.3. Characteristic Representation of Skeletal Joint Structure

The column order of the bone node matrix is represented as the label order of bone nodes. In fact, the obtained bone node matrix cannot extract the three-dimensional structure of bone data because the bone nodes represented by continuous labels may not have a bone joint connection in human skeleton structure. To solve this problem, this paper proposes bone joint feature vectors to further improve the spatial details of behavior. In this paper, the direction of the bone joint is defined for the human skeleton structure, but the original bone node label sequence is not changed, and no. 0 is the center label of the node. IfBιn⟶ were used to represent the NTH bone joint with orientation in frame I bone data, S was used to represent the K-th bone node of the bone data in frame I, namely S=xki,yki,zki, the orientation of each bone joint is defined as a bone node Sstar. The bone node Send points to another adjacent position, and its expression is shown in the following equations:(1)Bιn⟶=Sstart−Send,(2)Bιn=Sstart−Send.


#### 3.2.4. The Sequence of Skeletal Joint Features

BnL obtained above is the feature vector of skeletal joints constructed. In order to clarify the sequence of skeletal joint features and further reflect the overall skeletal shape, human skeletal architecture is divided into three parts: right, middle, and left. The right part includes the right hand and right leg; the middle part is the torso; and the left part includes the left hand and left leg [12]. The topological structure of the human skeleton can be obtained by splicing the obtained bone joint features according to the three parts of right, middle, and left, and the obtained bone node matrix will also be arranged in this order. Since every frame of bone data in the MSR Action 3D database contains 20 three-dimensional coordinates of bone nodes, 19 bone joint feature vectors Bιn⟶ will be obtained accordingly. In order to maintain the same data size with the bone node matrix and facilitate the training of the CNN model of the same type, the bone node with center no. 0 should be set as a bone joint feature vector Bι0⟶, and the value of this feature vector is 0⟶. In summary, all bone joint feature vectors Bι⟶ of bone data in frame i are expressed as follows:(3)Bι⟶=Bιn⟶=Sstart−Send,n=1,2,3,…,19∪Bι0⟶=0⟶.Meanwhile, the number of target frames of bone joint features should be consistent with the bone node matrix, that is,T = 54 frames. After the processing of the above algorithm, the bone node matrix and bone joint feature vectors with dimensions of 54 × 20 × 3 can be obtained. They not only can extract the three-dimensional coordinate changes of bone motion sequence but also can extract the topological structure of human bone data, so as to fully describe the spatial characteristics and time information of behavioral bone sequence, laying a solid foundation for the subsequent training of CNN model. The overall process of the bone data feature extraction algorithm is shown in Figure 2.Figure 2
Flow chart of bone data feature extraction algorithm.


### 3.3. Convolutional Neural Network Model Design

A five-channel convolutional neural network (5C-CNN) is proposed. The first three channels of the model are used to train the DM matrix, and the last two channels are used to train the bone node matrix and bone joint feature vector. By improving the network level of VGG-16, the single-channel structure of the 5C-CNN model is designed. How to select the classification fusion method matching the model is a problem to be discussed in the following sections [13].


#### 3.3.1. Dual-Flow Convolutional Neural Network Model

The dual-flow CNN model is a network architecture containing spatiotemporal information (Figure3). The dual-flow network has two independent branches, and each branch is called a stream. These two streams can be trained at the same time, and then the information obtained by them can be fused. The fused information can be the primary features extracted by the convolution layer or the recognition results output by the classification layer. The fused content depends on the specific period of fusion [14]. This paper selects the method of late fusion for modeling and analysis and then introduces several common late fusion integration decisions.Figure 3
Schematic diagram of late fusion principle.The average method is a process of adding and averaging the output results of multiple base classifiers in corresponding categories. The calculation process is shown in equation (4):(4)yi=1n∑i=1nPi,where n represents the number of base classifiers and Pt represents the probability vector of each base classifier. This method can average the impact of each data on the whole, so as to eliminate the contribution of outstanding data and obtain relatively smooth results. Dual-stream CNN model just applies this classification and fusion method. According to the basic idea of the mean value method, the weight mean method and the adaptive weight mean method are also followed. The weight mean method considers the contribution of each data to the overall weight, but the selection of weight value depends heavily on personal experience, as shown in the following formula:(5)yi=∑i=1nwiPi,(6)∑i=1nwi=1,wherewi is the weight value of probability vector Pi of each base classifier. However, the adaptive weighted average method can automatically select weights compared with the weighted average method to avoid the influence of artificial subjective factors, and its principle will not be described in detail here.The maximum method is the process of comparing the output results of multiple base classifiers in corresponding categories and taking the maximum value. The calculation process is shown in the following equation:(7)yi=MaxPi,i∈n.The method selects the salient data of each base classifier as the final probability vector, but this also removes the contribution of other data to the overall result.The product method is a process of multiplying the output results of multiple base classifiers in corresponding categories and taking the product value. The calculation process is shown in the following equation:(8)yi=∏i=1nPi.In this method, the product of the bit data of each base classifier is taken as the final probability vector, which may lead to a large fluctuation of the overall result [15].In the above formula, the base classifier probability vectorPi is used to obtain the integrated decision output yi. Of course, the base classifier feature vector can also be used for decision integration. In order to obtain the maximum probability label of the known category j, we convert yi into Pj|yi,label, and the specific acquisition process of the label is shown in the following formula:(9)label=argmaxjPj|yi.


#### 3.3.2. The Overall Structure Design of the Model

(1) Five-Channel Convolutional Neural Network Model. In this paper, a five-channel convolutional neural network (5C-CNN) model is proposed based on the idea of dual-flow CNN architecture, and the five channels are equivalent to five flows, in order to extract the behavioral characteristics of the multiview data of Kinect. The depth motion map DMMv contains three views, namely front view DMMf, side view DMMs, and top view DMMt. The views in these three directions occupy three CNN channels (3C-CNN), which are used to extract three-dimensional spatial features and time information of the depth image of human behavior. The remaining bone node matrix and bone joint feature vectors occupy the other two CNN channels (2C-CNN), which are used to extract three-dimensional motion coordinates and topological shapes of human bone data. The overall network architecture is shown in Figure 4. CNNs of the five channels all adopt the same network structure and training parameters. They are independent of each other and can be trained at the same time, but the corresponding classification results can be fused and output through the integrated decision method. Therefore, the 5C-CNN model facilitates the parallel training of multimodal data, which provides multifeature information of behavior, making the space-time details of human behavior more fully described than single data, and the normalized data form also reduces the training difficulty of the model.Figure 4
Flow chart of five-channel convolutional neural network.(2) Single-Channel Convolutional Neural Network Architecture. The 5C-CNN model architecture also needs to specifically design its single-channel CNN structure. To solve this design problem, there are two solutions: one is to use the existing classical CNN model for transfer learning. This scheme has high feasibility, but at the same time, the problem is that the classical CNN models are mostly trained and tested based on ImageNet image sets, and fine-tuning on MSR Action 3D database, which is much smaller than ImageNet image sets, is not enough to train millions of deep network parameters, which is prone to overfitting phenomenon. Another solution is to modify the classic CNN model for learning on the MSR Action 3D database, which requires adding or removing some network layers. However, compared with the first scheme, overfitting phenomenon can be avoided to a certain extent. Therefore, this paper chooses the second scheme to design the single-channel CNN structure in this paper. MSR Action 3D is a medium-sized database, while the existing CNN models with high accuracy have many network layers and huge hidden layer parameters. Therefore, based on various excellent models, this paper decided to improve the VGG-16 model with an outstanding performance by reducing the number of channels and network layers, so as to better adapt to the size of the database. The specific improvements based on the VGG-16 model are as follows.The single-channel CNN structure constructed in this paper is shown in Figure5, which has 10 training layers, including 4 convolutional layers, 4 pooling layers, and 2 full connection layers, excluding the final classification layer. Compared with the VGG-16 model, this network deletes 9 convolution layers, 1 full connection layer, and 1 pooling layer, and its structure is relatively simple, which is more suitable for MSR Action 3D database expansion training with small data volume. For depth images, the model input is DMMv scaled to 224∗224. For bone data, the model input is a 54 × 20 × 3 3D matrix. The kernel size and number of convolutional layers (Convl∼Conv4) are 7 × 7 × 32, 5 × 5 × 64, and 3 × 3 × 128, respectively. The stride of the convolution layer is 1. The padding algorithm is adopted to avoid discarding feature map information in the process of convolution [16]; A pooling layer is connected behind each convolutional layer, and a 2 × 2 pooling kernel is selected to carry out max pooling, and the stride of pooling layer is 2 to avoid the blurring effect of average pooling. Of the 2 fully connected layers, the first fully connected layer produces 1,024 neuron nodes (FC-1024 output); since the MSR Action 3D database has 20 behavior categories, the second fully connected layer produces 20 neuron nodes (FC-20 output). At the same time, both the convolutional layer and the first fully connected layer adopt modified linear unit (ReLU activation function) to accelerate network training, so as to improve CNN feature learning ability. After the ReLU function of the first full connection layer, the dropout regularization technique is used to remove some neuron nodes and corresponding input-output connections with probability 0.5 to enhance the model generalization ability and prevent overfitting. The principle is shown in the following equation:(10)fi′=m∗ReLUWT∗fi,where m is the Bernoulli distribution binary number, wT is the weight of the network, fi is the input, and fi′ is the output of the first full connection layer. The final classification layer selects the softmax classifier, which can be used to obtain the probability label of input data to known categories. The formula is(11)Py=j|x=exTwj∑k=1kexTwk,where x is the output of the last fully connected layer, J is the predicted category, W is the neuron weight, k is the number of target categories, and P is the probability of predicting class J, and then through equation (11), label+argmaxxjPj|yi, the maximum probability label of the known category can be obtained.Figure 5
Single channel convolutional neural network architecture.


### 3.4. Comprehensive Assessment of Human Motion

Dynamic time warping algorithm traverses all frames of the template video and all frames of input video but cannot find a path with minimum cumulative distance in real time, so it is difficult to meet the requirements of real time. Therefore, the action of template video is segmented to search, and the search scope is specified to reduce the time complexity of path search, and the result can be calculated timely when the action video frame ends.First, a 2-xm two-dimensional matrix D is established, where N is the total number of frames of the input video, the twist is the total number of frames of the template video, and matrix element D (I, j) is the cumulative distance between the vector formed by 13 rotation angles of the input video frame I and the rotation angle vector of the template video frame J, which is calculated as follows:(12)di,j=dmin+∑k=1nΔαk2,where △ak is the difference of the K-th counterclockwise rotation angle between the input video and the template video, dmin is the minimum distance obtained in the previous step, initial position dmin = 0, and other positions are from the upper adjacent position (i − 1, j) of the current position (I, j), the left adjacent position (i, j − 1), and the upper left corner position (i − 1, j − 1).(13)dmin=mindi−1,j,di,j−1,di−1,j−1.The initial position of the structured path is (1, 1), and the end position of the first segment is (n, je), where the ordinate of the end point satisfiesje∈m+1−Rstep,m+1+Rstep, that is, the search scope of the regular path is limited to the diagonal band with a width of 2RStep + 1, so there is no need for global search and the computation is reduced. Then, move Rstep each time to conduct a new path search. The cumulative minimum distance and C are selected among these structured paths, and the path length K is calculated [17]. The average distance of each step is D = c/K, which is converted into fractional sd by the following formula:(14)sd=11+hd,where h = 0.25 K is the coefficient to adjust the decrease of the score. In this way, when d is 0, the two time series are completely consistent, and sd is 1. When D is larger, the similarity of the two time series is smaller, and sd is closer to 0.


## 3.1. Human Motion Video Preprocessing Technology

Firstly, adjust the brightness of the video image captured by the camera. Generally, the brightness adjustment method uniformly handles the image as a whole, but this method is not very effective in the case of inconsistent brightness in each part of the image. Yuan et al. therefore proposed a method to automatically correct the image exposure, taking into account both the visibility of individual domains and the relative contrast between regions. The S-shaped gamma curve corresponding to the image was obtained. Finally, the processed image was output according to this curve so that the brightness of each area of the image was more appropriate.The automatic correction image exposure method is used to segment the input image first, and different regions in the image will be allocated to their respective region blocks according to the color gray threshold. After that, the original image is normalized and divided into 11 levels according to brightness [5]. The results of image segmentation are combined according to levels. Then, according to the median brightness value V, the layered image was divided into the underexposure region and overexposure region, and the images in these two regions were processed with a gamma curve with the corresponding gamma value of 2.2 and 0.455, respectively. After that, the Canny operator was used to extract the edges of the original image after underexposure and the image after overexposure as details, and the ratio of the details of the underexposure area and overexposure area to all details of the original image vs and vh were calculated. Then the ratio Ci of the number of pixels in each layer to the total number of pixels in the image was calculated. In addition, the ratio of the number of pixels θi in the important region to the total number of pixels in the image was obtained by the facial sky detector.This likelihood function can increase the brightness of the underexposed area and decrease the brightness of the overexposed area. Meanwhile, it has no effect on the middle region (V region). After that, an S-shaped curve is used to map the brightness of each pixel globally to the desired exposure [6].Given the temporal correlation between video frames, the background changes are not very dramatic, so there is no need to process each frame individually. Since the background between adjacent frames is basically very similar and the lighting conditions do not often change suddenly, that is, the background is relatively stable, this paper obtains the S-shaped curve periodically and adjusts the brightness according to the same S-shaped curve for each frame within the period. After experimental tests, the period is set to 500 frames, and the average frame rate of processing is about 23.9 frames per second, ensuring real-time performance.In addition, as the brightness of the image is adjusted, some noise in the video image will become obvious. In order to meet the real-time performance of the video, the constant time median filtering is used here to denoise the image, and the size of the wave template is set as 3 × 3. Similarly, the average frame rate of the median filtering denoising test after brightness adjustment is about 23.8 frames per second, which has little influence on the speed [7].


## 3.2. Feature Extraction of Skeletal Data

### 3.2.1. Form Conversion of Bone Node Data

The bone movement sequence in the database MSR Action 3D is the bone data arranged in time sequence. Each group of bone data contains 20 three-dimensional coordinates of bone nodes, and each node has a fixed node label, as shown in Table1. The bone data at a certain time is called a behavior frame of the bone movement sequence. Since the skeleton data stored in the MSR Action 3D database is constructed based on the Kinect V1 coordinate system, they should be reconstructed in the real-world Cartesian coordinate system in order to maintain the invariance of viewpoints and facilitate standardization research [1].Table 1
Human skeleton node name and corresponding label.
GradeName0Hip center1Mid-spine2Center of shoulders3Head4Left shoulder5Left elbow6Left wrist joint7Left hand8Right shoulder9Right elbow0Right wrist1Right hand2Left hip3Left knee4Left ankle5Left foot6Right hip7Right knee8Right ankle9Right footIn order to construct the bone motion sequence into a planar grid structure similar to RGB images, form transformation of bone node data is required. In this paper, 3D coordinates of bone nodes obtained from the reconstructed coordinate system are transformed into a 3D matrix of bone nodes. Specifically, thex, y, and z direction of the K-th bone node xki,xki,xki of the bone data of FRAME L in the real-world coordinate system corresponds to the R, G, and B channels of RGB images. If the RGB image is regarded as a three-dimensional matrix, each matrix represents a color channel, that is, the R matrix stores the X coordinates of bone nodes of all frames in a sequence, the G matrix stores the Y coordinates of the bone nodes of all frames in the sequence, and the B matrix stores the Z coordinates of the bone nodes of all frames in the sequence. The rows of each matrix are used to store the corresponding coordinates of each frame, and the columns of each matrix are used to store the corresponding coordinates of all frames. Therefore, the number of rows of the matrix represents the frame number N of the bone movement sequence [8]. The number of matrix columns represents the number of bone nodes in each frame n. Meanwhile, the sequence of matrix rows is the time sequence of bone movement sequence, and the sequence of matrix columns is the label sequence of bone nodes. According to the above construction principle, a three-dimensional matrix of the Nxnx3 structure can be obtained to represent each bone motion sequence. Because the MSR Action 3D database contains 567 bone motion sequences, a total of 567 groups of a three-dimensional matrix of bone nodes can be obtained.


### 3.2.2. Normalized Skeleton Node Matrix

Compared with the method of coding the bone motion sequence into a multicolor space-time map, the actual RGB image is not constructed in this paper. Instead, the 3D coordinates of the bone nodes in the MSR Action 3D database are used to convert them into a 3D matrix of the bone nodes. This way not only describes the changes of coordinates during motion in detail but also better extracts the behavioral features of temporal information. But, as the input of the CNN model, you need to get bone matrix normalized processing nodes because different skeletal motion sequence of the frame numberN is not the same; this leads to obtaining the three-dimensional matrix size or big or small [9]. Generally speaking, the normalization of skeletal motion sequence can be carried out by interception or supplement. Interception usually refers to discarding part of a sequence with more target frames, and supplement refers to filling in zero part of a sequence with less target frames. However, one problem is how to select the target frame number. If the target frame number is too small, a lot of information will be lost, and incomplete data is not conducive to the improvement of behavior recognition rate. If the number of target frames is too large, it will cause a lot of zero filling, and redundant data is not conducive to efficient network training. In view of the above problems, this paper made statistics on the frames of different bone motion sequences in the MSR Action 3D database, as shown in Figure 1. The statistical results showed that more than 90% of the frames of bone motion sequences in the database were below 54 frames, so the target frame T of this paper was selected as 54 frames. Next, the bone motion sequence is normalized, and the main algorithm steps are as follows:(1)
IfN > T, the [T, N] frame was intercepted and discarded, and the [0, T] month frame was used as the normalized bone motion sequence [10](2)
IfN < T, the [0, T] frame is used as the normalized bone motion sequence(3)
IfN = T, [0, T] frame is used as the normalized bone motion sequence without any processingFigure 1
Frame statistics histogram of skeleton sequence in the MSR Action 3D database.After the above algorithm steps, the normalized skeleton motion sequence can be obtained, and then the normalized skeleton node matrix can be obtained [11]. Because the MSR Action 3D database is built based on Kinect V1, each frame of bone data has 20 three-dimensional coordinates of bone nodes, that is, n = 20, so the size of the bone node matrix obtained is 54 × 20 × 3.


### 3.2.3. Characteristic Representation of Skeletal Joint Structure

The column order of the bone node matrix is represented as the label order of bone nodes. In fact, the obtained bone node matrix cannot extract the three-dimensional structure of bone data because the bone nodes represented by continuous labels may not have a bone joint connection in human skeleton structure. To solve this problem, this paper proposes bone joint feature vectors to further improve the spatial details of behavior. In this paper, the direction of the bone joint is defined for the human skeleton structure, but the original bone node label sequence is not changed, and no. 0 is the center label of the node. IfBιn⟶ were used to represent the NTH bone joint with orientation in frame I bone data, S was used to represent the K-th bone node of the bone data in frame I, namely S=xki,yki,zki, the orientation of each bone joint is defined as a bone node Sstar. The bone node Send points to another adjacent position, and its expression is shown in the following equations:(1)Bιn⟶=Sstart−Send,(2)Bιn=Sstart−Send.


### 3.2.4. The Sequence of Skeletal Joint Features

BnL obtained above is the feature vector of skeletal joints constructed. In order to clarify the sequence of skeletal joint features and further reflect the overall skeletal shape, human skeletal architecture is divided into three parts: right, middle, and left. The right part includes the right hand and right leg; the middle part is the torso; and the left part includes the left hand and left leg [12]. The topological structure of the human skeleton can be obtained by splicing the obtained bone joint features according to the three parts of right, middle, and left, and the obtained bone node matrix will also be arranged in this order. Since every frame of bone data in the MSR Action 3D database contains 20 three-dimensional coordinates of bone nodes, 19 bone joint feature vectors Bιn⟶ will be obtained accordingly. In order to maintain the same data size with the bone node matrix and facilitate the training of the CNN model of the same type, the bone node with center no. 0 should be set as a bone joint feature vector Bι0⟶, and the value of this feature vector is 0⟶. In summary, all bone joint feature vectors Bι⟶ of bone data in frame i are expressed as follows:(3)Bι⟶=Bιn⟶=Sstart−Send,n=1,2,3,…,19∪Bι0⟶=0⟶.Meanwhile, the number of target frames of bone joint features should be consistent with the bone node matrix, that is,T = 54 frames. After the processing of the above algorithm, the bone node matrix and bone joint feature vectors with dimensions of 54 × 20 × 3 can be obtained. They not only can extract the three-dimensional coordinate changes of bone motion sequence but also can extract the topological structure of human bone data, so as to fully describe the spatial characteristics and time information of behavioral bone sequence, laying a solid foundation for the subsequent training of CNN model. The overall process of the bone data feature extraction algorithm is shown in Figure 2.Figure 2
Flow chart of bone data feature extraction algorithm.


## 3.2.1. Form Conversion of Bone Node Data

The bone movement sequence in the database MSR Action 3D is the bone data arranged in time sequence. Each group of bone data contains 20 three-dimensional coordinates of bone nodes, and each node has a fixed node label, as shown in Table1. The bone data at a certain time is called a behavior frame of the bone movement sequence. Since the skeleton data stored in the MSR Action 3D database is constructed based on the Kinect V1 coordinate system, they should be reconstructed in the real-world Cartesian coordinate system in order to maintain the invariance of viewpoints and facilitate standardization research [1].Table 1
Human skeleton node name and corresponding label.
GradeName0Hip center1Mid-spine2Center of shoulders3Head4Left shoulder5Left elbow6Left wrist joint7Left hand8Right shoulder9Right elbow0Right wrist1Right hand2Left hip3Left knee4Left ankle5Left foot6Right hip7Right knee8Right ankle9Right footIn order to construct the bone motion sequence into a planar grid structure similar to RGB images, form transformation of bone node data is required. In this paper, 3D coordinates of bone nodes obtained from the reconstructed coordinate system are transformed into a 3D matrix of bone nodes. Specifically, thex, y, and z direction of the K-th bone node xki,xki,xki of the bone data of FRAME L in the real-world coordinate system corresponds to the R, G, and B channels of RGB images. If the RGB image is regarded as a three-dimensional matrix, each matrix represents a color channel, that is, the R matrix stores the X coordinates of bone nodes of all frames in a sequence, the G matrix stores the Y coordinates of the bone nodes of all frames in the sequence, and the B matrix stores the Z coordinates of the bone nodes of all frames in the sequence. The rows of each matrix are used to store the corresponding coordinates of each frame, and the columns of each matrix are used to store the corresponding coordinates of all frames. Therefore, the number of rows of the matrix represents the frame number N of the bone movement sequence [8]. The number of matrix columns represents the number of bone nodes in each frame n. Meanwhile, the sequence of matrix rows is the time sequence of bone movement sequence, and the sequence of matrix columns is the label sequence of bone nodes. According to the above construction principle, a three-dimensional matrix of the Nxnx3 structure can be obtained to represent each bone motion sequence. Because the MSR Action 3D database contains 567 bone motion sequences, a total of 567 groups of a three-dimensional matrix of bone nodes can be obtained.


## 3.2.2. Normalized Skeleton Node Matrix

Compared with the method of coding the bone motion sequence into a multicolor space-time map, the actual RGB image is not constructed in this paper. Instead, the 3D coordinates of the bone nodes in the MSR Action 3D database are used to convert them into a 3D matrix of the bone nodes. This way not only describes the changes of coordinates during motion in detail but also better extracts the behavioral features of temporal information. But, as the input of the CNN model, you need to get bone matrix normalized processing nodes because different skeletal motion sequence of the frame numberN is not the same; this leads to obtaining the three-dimensional matrix size or big or small [9]. Generally speaking, the normalization of skeletal motion sequence can be carried out by interception or supplement. Interception usually refers to discarding part of a sequence with more target frames, and supplement refers to filling in zero part of a sequence with less target frames. However, one problem is how to select the target frame number. If the target frame number is too small, a lot of information will be lost, and incomplete data is not conducive to the improvement of behavior recognition rate. If the number of target frames is too large, it will cause a lot of zero filling, and redundant data is not conducive to efficient network training. In view of the above problems, this paper made statistics on the frames of different bone motion sequences in the MSR Action 3D database, as shown in Figure 1. The statistical results showed that more than 90% of the frames of bone motion sequences in the database were below 54 frames, so the target frame T of this paper was selected as 54 frames. Next, the bone motion sequence is normalized, and the main algorithm steps are as follows:(1)
IfN > T, the [T, N] frame was intercepted and discarded, and the [0, T] month frame was used as the normalized bone motion sequence [10](2)
IfN < T, the [0, T] frame is used as the normalized bone motion sequence(3)
IfN = T, [0, T] frame is used as the normalized bone motion sequence without any processingFigure 1
Frame statistics histogram of skeleton sequence in the MSR Action 3D database.After the above algorithm steps, the normalized skeleton motion sequence can be obtained, and then the normalized skeleton node matrix can be obtained [11]. Because the MSR Action 3D database is built based on Kinect V1, each frame of bone data has 20 three-dimensional coordinates of bone nodes, that is, n = 20, so the size of the bone node matrix obtained is 54 × 20 × 3.


## 3.2.3. Characteristic Representation of Skeletal Joint Structure

The column order of the bone node matrix is represented as the label order of bone nodes. In fact, the obtained bone node matrix cannot extract the three-dimensional structure of bone data because the bone nodes represented by continuous labels may not have a bone joint connection in human skeleton structure. To solve this problem, this paper proposes bone joint feature vectors to further improve the spatial details of behavior. In this paper, the direction of the bone joint is defined for the human skeleton structure, but the original bone node label sequence is not changed, and no. 0 is the center label of the node. IfBιn⟶ were used to represent the NTH bone joint with orientation in frame I bone data, S was used to represent the K-th bone node of the bone data in frame I, namely S=xki,yki,zki, the orientation of each bone joint is defined as a bone node Sstar. The bone node Send points to another adjacent position, and its expression is shown in the following equations:(1)Bιn⟶=Sstart−Send,(2)Bιn=Sstart−Send.


## 3.2.4. The Sequence of Skeletal Joint Features

BnL obtained above is the feature vector of skeletal joints constructed. In order to clarify the sequence of skeletal joint features and further reflect the overall skeletal shape, human skeletal architecture is divided into three parts: right, middle, and left. The right part includes the right hand and right leg; the middle part is the torso; and the left part includes the left hand and left leg [12]. The topological structure of the human skeleton can be obtained by splicing the obtained bone joint features according to the three parts of right, middle, and left, and the obtained bone node matrix will also be arranged in this order. Since every frame of bone data in the MSR Action 3D database contains 20 three-dimensional coordinates of bone nodes, 19 bone joint feature vectors Bιn⟶ will be obtained accordingly. In order to maintain the same data size with the bone node matrix and facilitate the training of the CNN model of the same type, the bone node with center no. 0 should be set as a bone joint feature vector Bι0⟶, and the value of this feature vector is 0⟶. In summary, all bone joint feature vectors Bι⟶ of bone data in frame i are expressed as follows:(3)Bι⟶=Bιn⟶=Sstart−Send,n=1,2,3,…,19∪Bι0⟶=0⟶.Meanwhile, the number of target frames of bone joint features should be consistent with the bone node matrix, that is,T = 54 frames. After the processing of the above algorithm, the bone node matrix and bone joint feature vectors with dimensions of 54 × 20 × 3 can be obtained. They not only can extract the three-dimensional coordinate changes of bone motion sequence but also can extract the topological structure of human bone data, so as to fully describe the spatial characteristics and time information of behavioral bone sequence, laying a solid foundation for the subsequent training of CNN model. The overall process of the bone data feature extraction algorithm is shown in Figure 2.Figure 2
Flow chart of bone data feature extraction algorithm.


## 3.3. Convolutional Neural Network Model Design

A five-channel convolutional neural network (5C-CNN) is proposed. The first three channels of the model are used to train the DM matrix, and the last two channels are used to train the bone node matrix and bone joint feature vector. By improving the network level of VGG-16, the single-channel structure of the 5C-CNN model is designed. How to select the classification fusion method matching the model is a problem to be discussed in the following sections [13].


### 3.3.1. Dual-Flow Convolutional Neural Network Model

The dual-flow CNN model is a network architecture containing spatiotemporal information (Figure3). The dual-flow network has two independent branches, and each branch is called a stream. These two streams can be trained at the same time, and then the information obtained by them can be fused. The fused information can be the primary features extracted by the convolution layer or the recognition results output by the classification layer. The fused content depends on the specific period of fusion [14]. This paper selects the method of late fusion for modeling and analysis and then introduces several common late fusion integration decisions.Figure 3
Schematic diagram of late fusion principle.The average method is a process of adding and averaging the output results of multiple base classifiers in corresponding categories. The calculation process is shown in equation (4):(4)yi=1n∑i=1nPi,where n represents the number of base classifiers and Pt represents the probability vector of each base classifier. This method can average the impact of each data on the whole, so as to eliminate the contribution of outstanding data and obtain relatively smooth results. Dual-stream CNN model just applies this classification and fusion method. According to the basic idea of the mean value method, the weight mean method and the adaptive weight mean method are also followed. The weight mean method considers the contribution of each data to the overall weight, but the selection of weight value depends heavily on personal experience, as shown in the following formula:(5)yi=∑i=1nwiPi,(6)∑i=1nwi=1,wherewi is the weight value of probability vector Pi of each base classifier. However, the adaptive weighted average method can automatically select weights compared with the weighted average method to avoid the influence of artificial subjective factors, and its principle will not be described in detail here.The maximum method is the process of comparing the output results of multiple base classifiers in corresponding categories and taking the maximum value. The calculation process is shown in the following equation:(7)yi=MaxPi,i∈n.The method selects the salient data of each base classifier as the final probability vector, but this also removes the contribution of other data to the overall result.The product method is a process of multiplying the output results of multiple base classifiers in corresponding categories and taking the product value. The calculation process is shown in the following equation:(8)yi=∏i=1nPi.In this method, the product of the bit data of each base classifier is taken as the final probability vector, which may lead to a large fluctuation of the overall result [15].In the above formula, the base classifier probability vectorPi is used to obtain the integrated decision output yi. Of course, the base classifier feature vector can also be used for decision integration. In order to obtain the maximum probability label of the known category j, we convert yi into Pj|yi,label, and the specific acquisition process of the label is shown in the following formula:(9)label=argmaxjPj|yi.


### 3.3.2. The Overall Structure Design of the Model

(1) Five-Channel Convolutional Neural Network Model. In this paper, a five-channel convolutional neural network (5C-CNN) model is proposed based on the idea of dual-flow CNN architecture, and the five channels are equivalent to five flows, in order to extract the behavioral characteristics of the multiview data of Kinect. The depth motion map DMMv contains three views, namely front view DMMf, side view DMMs, and top view DMMt. The views in these three directions occupy three CNN channels (3C-CNN), which are used to extract three-dimensional spatial features and time information of the depth image of human behavior. The remaining bone node matrix and bone joint feature vectors occupy the other two CNN channels (2C-CNN), which are used to extract three-dimensional motion coordinates and topological shapes of human bone data. The overall network architecture is shown in Figure 4. CNNs of the five channels all adopt the same network structure and training parameters. They are independent of each other and can be trained at the same time, but the corresponding classification results can be fused and output through the integrated decision method. Therefore, the 5C-CNN model facilitates the parallel training of multimodal data, which provides multifeature information of behavior, making the space-time details of human behavior more fully described than single data, and the normalized data form also reduces the training difficulty of the model.Figure 4
Flow chart of five-channel convolutional neural network.(2) Single-Channel Convolutional Neural Network Architecture. The 5C-CNN model architecture also needs to specifically design its single-channel CNN structure. To solve this design problem, there are two solutions: one is to use the existing classical CNN model for transfer learning. This scheme has high feasibility, but at the same time, the problem is that the classical CNN models are mostly trained and tested based on ImageNet image sets, and fine-tuning on MSR Action 3D database, which is much smaller than ImageNet image sets, is not enough to train millions of deep network parameters, which is prone to overfitting phenomenon. Another solution is to modify the classic CNN model for learning on the MSR Action 3D database, which requires adding or removing some network layers. However, compared with the first scheme, overfitting phenomenon can be avoided to a certain extent. Therefore, this paper chooses the second scheme to design the single-channel CNN structure in this paper. MSR Action 3D is a medium-sized database, while the existing CNN models with high accuracy have many network layers and huge hidden layer parameters. Therefore, based on various excellent models, this paper decided to improve the VGG-16 model with an outstanding performance by reducing the number of channels and network layers, so as to better adapt to the size of the database. The specific improvements based on the VGG-16 model are as follows.The single-channel CNN structure constructed in this paper is shown in Figure5, which has 10 training layers, including 4 convolutional layers, 4 pooling layers, and 2 full connection layers, excluding the final classification layer. Compared with the VGG-16 model, this network deletes 9 convolution layers, 1 full connection layer, and 1 pooling layer, and its structure is relatively simple, which is more suitable for MSR Action 3D database expansion training with small data volume. For depth images, the model input is DMMv scaled to 224∗224. For bone data, the model input is a 54 × 20 × 3 3D matrix. The kernel size and number of convolutional layers (Convl∼Conv4) are 7 × 7 × 32, 5 × 5 × 64, and 3 × 3 × 128, respectively. The stride of the convolution layer is 1. The padding algorithm is adopted to avoid discarding feature map information in the process of convolution [16]; A pooling layer is connected behind each convolutional layer, and a 2 × 2 pooling kernel is selected to carry out max pooling, and the stride of pooling layer is 2 to avoid the blurring effect of average pooling. Of the 2 fully connected layers, the first fully connected layer produces 1,024 neuron nodes (FC-1024 output); since the MSR Action 3D database has 20 behavior categories, the second fully connected layer produces 20 neuron nodes (FC-20 output). At the same time, both the convolutional layer and the first fully connected layer adopt modified linear unit (ReLU activation function) to accelerate network training, so as to improve CNN feature learning ability. After the ReLU function of the first full connection layer, the dropout regularization technique is used to remove some neuron nodes and corresponding input-output connections with probability 0.5 to enhance the model generalization ability and prevent overfitting. The principle is shown in the following equation:(10)fi′=m∗ReLUWT∗fi,where m is the Bernoulli distribution binary number, wT is the weight of the network, fi is the input, and fi′ is the output of the first full connection layer. The final classification layer selects the softmax classifier, which can be used to obtain the probability label of input data to known categories. The formula is(11)Py=j|x=exTwj∑k=1kexTwk,where x is the output of the last fully connected layer, J is the predicted category, W is the neuron weight, k is the number of target categories, and P is the probability of predicting class J, and then through equation (11), label+argmaxxjPj|yi, the maximum probability label of the known category can be obtained.Figure 5
Single channel convolutional neural network architecture.


## 3.3.1. Dual-Flow Convolutional Neural Network Model

The dual-flow CNN model is a network architecture containing spatiotemporal information (Figure3). The dual-flow network has two independent branches, and each branch is called a stream. These two streams can be trained at the same time, and then the information obtained by them can be fused. The fused information can be the primary features extracted by the convolution layer or the recognition results output by the classification layer. The fused content depends on the specific period of fusion [14]. This paper selects the method of late fusion for modeling and analysis and then introduces several common late fusion integration decisions.Figure 3
Schematic diagram of late fusion principle.The average method is a process of adding and averaging the output results of multiple base classifiers in corresponding categories. The calculation process is shown in equation (4):(4)yi=1n∑i=1nPi,where n represents the number of base classifiers and Pt represents the probability vector of each base classifier. This method can average the impact of each data on the whole, so as to eliminate the contribution of outstanding data and obtain relatively smooth results. Dual-stream CNN model just applies this classification and fusion method. According to the basic idea of the mean value method, the weight mean method and the adaptive weight mean method are also followed. The weight mean method considers the contribution of each data to the overall weight, but the selection of weight value depends heavily on personal experience, as shown in the following formula:(5)yi=∑i=1nwiPi,(6)∑i=1nwi=1,wherewi is the weight value of probability vector Pi of each base classifier. However, the adaptive weighted average method can automatically select weights compared with the weighted average method to avoid the influence of artificial subjective factors, and its principle will not be described in detail here.The maximum method is the process of comparing the output results of multiple base classifiers in corresponding categories and taking the maximum value. The calculation process is shown in the following equation:(7)yi=MaxPi,i∈n.The method selects the salient data of each base classifier as the final probability vector, but this also removes the contribution of other data to the overall result.The product method is a process of multiplying the output results of multiple base classifiers in corresponding categories and taking the product value. The calculation process is shown in the following equation:(8)yi=∏i=1nPi.In this method, the product of the bit data of each base classifier is taken as the final probability vector, which may lead to a large fluctuation of the overall result [15].In the above formula, the base classifier probability vectorPi is used to obtain the integrated decision output yi. Of course, the base classifier feature vector can also be used for decision integration. In order to obtain the maximum probability label of the known category j, we convert yi into Pj|yi,label, and the specific acquisition process of the label is shown in the following formula:(9)label=argmaxjPj|yi.


## 3.3.2. The Overall Structure Design of the Model

(1) Five-Channel Convolutional Neural Network Model. In this paper, a five-channel convolutional neural network (5C-CNN) model is proposed based on the idea of dual-flow CNN architecture, and the five channels are equivalent to five flows, in order to extract the behavioral characteristics of the multiview data of Kinect. The depth motion map DMMv contains three views, namely front view DMMf, side view DMMs, and top view DMMt. The views in these three directions occupy three CNN channels (3C-CNN), which are used to extract three-dimensional spatial features and time information of the depth image of human behavior. The remaining bone node matrix and bone joint feature vectors occupy the other two CNN channels (2C-CNN), which are used to extract three-dimensional motion coordinates and topological shapes of human bone data. The overall network architecture is shown in Figure 4. CNNs of the five channels all adopt the same network structure and training parameters. They are independent of each other and can be trained at the same time, but the corresponding classification results can be fused and output through the integrated decision method. Therefore, the 5C-CNN model facilitates the parallel training of multimodal data, which provides multifeature information of behavior, making the space-time details of human behavior more fully described than single data, and the normalized data form also reduces the training difficulty of the model.Figure 4
Flow chart of five-channel convolutional neural network.(2) Single-Channel Convolutional Neural Network Architecture. The 5C-CNN model architecture also needs to specifically design its single-channel CNN structure. To solve this design problem, there are two solutions: one is to use the existing classical CNN model for transfer learning. This scheme has high feasibility, but at the same time, the problem is that the classical CNN models are mostly trained and tested based on ImageNet image sets, and fine-tuning on MSR Action 3D database, which is much smaller than ImageNet image sets, is not enough to train millions of deep network parameters, which is prone to overfitting phenomenon. Another solution is to modify the classic CNN model for learning on the MSR Action 3D database, which requires adding or removing some network layers. However, compared with the first scheme, overfitting phenomenon can be avoided to a certain extent. Therefore, this paper chooses the second scheme to design the single-channel CNN structure in this paper. MSR Action 3D is a medium-sized database, while the existing CNN models with high accuracy have many network layers and huge hidden layer parameters. Therefore, based on various excellent models, this paper decided to improve the VGG-16 model with an outstanding performance by reducing the number of channels and network layers, so as to better adapt to the size of the database. The specific improvements based on the VGG-16 model are as follows.The single-channel CNN structure constructed in this paper is shown in Figure5, which has 10 training layers, including 4 convolutional layers, 4 pooling layers, and 2 full connection layers, excluding the final classification layer. Compared with the VGG-16 model, this network deletes 9 convolution layers, 1 full connection layer, and 1 pooling layer, and its structure is relatively simple, which is more suitable for MSR Action 3D database expansion training with small data volume. For depth images, the model input is DMMv scaled to 224∗224. For bone data, the model input is a 54 × 20 × 3 3D matrix. The kernel size and number of convolutional layers (Convl∼Conv4) are 7 × 7 × 32, 5 × 5 × 64, and 3 × 3 × 128, respectively. The stride of the convolution layer is 1. The padding algorithm is adopted to avoid discarding feature map information in the process of convolution [16]; A pooling layer is connected behind each convolutional layer, and a 2 × 2 pooling kernel is selected to carry out max pooling, and the stride of pooling layer is 2 to avoid the blurring effect of average pooling. Of the 2 fully connected layers, the first fully connected layer produces 1,024 neuron nodes (FC-1024 output); since the MSR Action 3D database has 20 behavior categories, the second fully connected layer produces 20 neuron nodes (FC-20 output). At the same time, both the convolutional layer and the first fully connected layer adopt modified linear unit (ReLU activation function) to accelerate network training, so as to improve CNN feature learning ability. After the ReLU function of the first full connection layer, the dropout regularization technique is used to remove some neuron nodes and corresponding input-output connections with probability 0.5 to enhance the model generalization ability and prevent overfitting. The principle is shown in the following equation:(10)fi′=m∗ReLUWT∗fi,where m is the Bernoulli distribution binary number, wT is the weight of the network, fi is the input, and fi′ is the output of the first full connection layer. The final classification layer selects the softmax classifier, which can be used to obtain the probability label of input data to known categories. The formula is(11)Py=j|x=exTwj∑k=1kexTwk,where x is the output of the last fully connected layer, J is the predicted category, W is the neuron weight, k is the number of target categories, and P is the probability of predicting class J, and then through equation (11), label+argmaxxjPj|yi, the maximum probability label of the known category can be obtained.Figure 5
Single channel convolutional neural network architecture.


## 3.4. Comprehensive Assessment of Human Motion

Dynamic time warping algorithm traverses all frames of the template video and all frames of input video but cannot find a path with minimum cumulative distance in real time, so it is difficult to meet the requirements of real time. Therefore, the action of template video is segmented to search, and the search scope is specified to reduce the time complexity of path search, and the result can be calculated timely when the action video frame ends.First, a 2-xm two-dimensional matrix D is established, where N is the total number of frames of the input video, the twist is the total number of frames of the template video, and matrix element D (I, j) is the cumulative distance between the vector formed by 13 rotation angles of the input video frame I and the rotation angle vector of the template video frame J, which is calculated as follows:(12)di,j=dmin+∑k=1nΔαk2,where △ak is the difference of the K-th counterclockwise rotation angle between the input video and the template video, dmin is the minimum distance obtained in the previous step, initial position dmin = 0, and other positions are from the upper adjacent position (i − 1, j) of the current position (I, j), the left adjacent position (i, j − 1), and the upper left corner position (i − 1, j − 1).(13)dmin=mindi−1,j,di,j−1,di−1,j−1.The initial position of the structured path is (1, 1), and the end position of the first segment is (n, je), where the ordinate of the end point satisfiesje∈m+1−Rstep,m+1+Rstep, that is, the search scope of the regular path is limited to the diagonal band with a width of 2RStep + 1, so there is no need for global search and the computation is reduced. Then, move Rstep each time to conduct a new path search. The cumulative minimum distance and C are selected among these structured paths, and the path length K is calculated [17]. The average distance of each step is D = c/K, which is converted into fractional sd by the following formula:(14)sd=11+hd,where h = 0.25 K is the coefficient to adjust the decrease of the score. In this way, when d is 0, the two time series are completely consistent, and sd is 1. When D is larger, the similarity of the two time series is smaller, and sd is closer to 0.


## 4. Experimental Comparison and Analysis

A 5C-CNN model for human behavior recognition based on Kinect multiview features was proposed, and the five channels of the model were used to train the depth images and bone data acquired by the preprocessing algorithm. In this chapter, the MSR Action 3D database is used to carry out the recognition experiment, further discuss and analyze the influence of different integration decisions on the recognition results, and propose the classification fusion method most suitable for the algorithm model in this paper. Then the results of other algorithms based on the same database are compared to evaluate the feasibility of the proposed algorithm and verify the validity of the model.


### 4.1. Experimental Data Setting

In this paper, the MSR Action 3D database published by Microsoft is used for experiments. The database, collected by the Kinect depth sensor, includes 20 different movements performed by 10 subjects facing the camera, with each subject performing each movement two to three times. A total of 567 human behavior depth image sequences or bone motion sequences are included, so the DM skeleton node matrix and bone joint feature vectors obtained by the preprocessing algorithm have 567 groups. In order to facilitate the algorithm performance comparison, the behavioral data of subjects 1, 3, 5, 7, and 9 were taken as the training set, and the behavioral data of subjects 2, 4, 6, 8, and 10 were taken as the test set, that is, the cross-validation method was used for the experiment. This setting is more challenging than dividing 20 actions into three behavior subsets (AS1, AS2, and AS3). Due to a large number of test samples, the identification effect of the algorithm can be accurately evaluated, as shown in Table2 for the numbering sequence and sequence quantity of each behavior in the MSR Action 3D database.Table 2
Behaviorlabel and sequence number.
NameNumber of sequencesHigh wave27Wave horizontally27Hammer27Catch the ball26Forward26High toss26Draw X28Tick30Circle30Clap hands30Waving with both hands30Side punch30Bend over30Kick30Side kick20Jogging30Tennis swing30Tennis serve30Golf swing30Catch and throw30


### 4.2. Network Model Training

The hardware platform of this experiment is the 4th generation Intel Core i5-421 OUdual core CPU, Nvidia GeForce 820 Mgraphics card, and 64 Windows 10 system. The software platform is MATLAB 2019b. Before the training of the 5C-CNN model, the depth images and bone data obtained by the preprocessing algorithm were normalized, and the DMM was uniformly adjusted to224∗224, and the bone node matrix and bone joint feature vector were uniformly adjusted to 54 × 20 × 3. The specific training steps of the model were as follows:(1)
The network structure is initialized: According to the single-channel CNN structure, the ReLU activation function, dropout regularization, and other related parameters of convolutional kernel pooling were set. The bias was uniformly set to randomly initialize the network weights of each layer according to Gaussian distribution.(2)
Training parameter initialization: Adam optimizer was selected for each CNN optimization algorithm, and the initial learn rate was set to 0.001. The number of iterations (Max Epoch) was set to 50, and the sample size (mini-batch size) was set to 128 based on experience. The execution environment is set to default (the default is to test the GPU first and then the CPU if it is unavailable).(3)
The normalized 3D matrix of DM skeleton nodes and the feature vectors of bone joints were taken as the input of the model. After forward propagation, the model was entered into the pooling layer of each convolutional layer, the full connection layer, and the classifier, and a probability value containing the prediction of various categories was output [18].(4)
The loss function is used to calculate the deviation between the actual output value of forward propagation and the ideal target value.(5)
Adam optimization algorithm is adopted in this process. Its relative gradient descent method can solve the problems of sparse gradient and noise and can also automatically adjust the learning rate, so as to update the network weights better and reduce the loss bias of the cost function.(6)
Repeat steps (3)–(5) for all data in the training set until the training times meet the set value. The overall training process is shown in Figure6.Figure 6
Model training process.After the above training steps, all the network weights and structural parameters of the 5C-CNN model have been optimized, and the human behavior in the training set can be correctly classified. When the DMMv bone node matrix and bone joint feature vector of the test set are uniformly input into the trained model, five sets of behavior probabilities can be obtained through forward propagation, and the probability vector of each kind of behavior is integrated decision output, and the obtained value is the output probability of each behavior to be recognized.


### 4.3. Experimental Results and Analysis

#### 4.3.1. The Influence of Integration Decision on Identification Result

The trained 5C-CNN model is tested, and five groups of different behavior probabilities can be obtained in the classification stage. In the fusion stage, three different integration decision methods, such as average method, maximum method, and product method, are adopted, and the final behavior recognition results are shown in Table3. It can be seen from Table 3 that the behavior recognition rate based on the average value method is the highest, reaching 98.1, 0.3 higher than that based on the maximum value method and 0.5 higher than that based on the product method, thus indicating that the integrated decision making using average value method can achieve better behavior recognition effect. The reason is that when the output results of corresponding categories are integrated decision output by five base classifiers, the average method balances the influence of each data on the whole and eliminates outstanding data contribution. Even if a certain channel has bad results, the noise contained in various behavior predictions can be well contained, and relatively smooth results can be obtained. The maximum value method selects the prominent data of each base classifier as the final probability vector. Because the MSR Action 3D database has partially similar human actions, it is easy to have multiple different predicted peaks, resulting in decision deviation of the integration results. The product method synthesizes the influence of all data in each behavior category on the whole and takes the product of the bit-data of each base classifier as the final probability vector. This leads to better good results and worse bad results, bringing a certain degree of exclusion. When a poor prediction category appears, the integration results will introduce a lot of noise and enhance the influence of poor data. The experimental results show that the ensemble decision based on the average method has a higher behavior recognition rate. Therefore, the 5C-CNN model in this paper adopts the average method to output the ensemble decision in the fusion stage.Table 3
Identification results of different integration decisions.
Integrated decision-making methodMean value method (%)Maximum method (%)Product method (%)Discrimination98.197.897.6As shown by the confusion matrix in this article, the third (hammering) behavior has a 95.7% recognition rate, and the fifth (forward dash) behavior has a 3.3% probability of being identified. The fourth behavior (catch) was identified only 83.3% of the time, and the sixth behavior (high throw) was identified 16.7% of the time. The sixth (high throw) behavior was identified 92.7% of the time, and the twentieth (catch and throw) behavior was identified 7.3% of the time. The recognition rate of the ninth (tick) behavior was 98.7%, and the probability of the eighth (tick) behavior was 1.3%. The twentieth (catching and throwing) behavior was identified 90.6% of the time; the thirteenth (bending) behavior was identified 2.7% of the time; and the eighteenth (serving) behavior was identified 6.7% of the time. The rest of the actions have a 100% recognition rate. The above behaviors are confused and recognized largely because different behaviors have a similar appearance and local features. The late multimodal fusion of depth motion map, bone node matrix, and bone joint feature vector still loses some behavioral details, resulting in insufficient spatiotemporal information extracted from the model to fully describe the behaviors. Another reason is that the training data of the 5C-CNN model are insufficient. In order to avoid the overfitting phenomenon, it is necessary to manually set the number of iterations and interrupt network learning in advance, resulting in a less obvious test recognition effect of some behaviors. To solve the problem of insufficient model training samples, technical means such as data enhancement can be tried. The recognition accuracy of the remaining behaviors is ideal, which is attributed to the relatively clean background of the behavior sequence in the MSR Action 3D database, and the generated 3D matrix and 3D node matrixBιi⟶ of the DMMv do not have too much noise interference, and the features extracted from the model are enough to distinguish most behaviors [19].


#### 4.3.2. Comparison of Methods Based on MSR Action 3D Database

After discussing and analyzing the influence of different integration decision methods on the behavior recognition results, the average method integration decision is proposed, which is most suitable for the algorithm model in this paper. Experimental results show that the average recognition rate of the proposed algorithm on the MSR Action 3D database reaches 98.1, which verifies the validity of the 5C-CNN model. Furthermore, the recognition performance of the 5C-CNN model based on the mean method integrated decision on the MSR Action 3D database test set is further analyzed through the confusion matrix. In this paper, other literature algorithms using the same experimental settings on the same database are compared. The experimental results are shown in Table4.Table 4
Experimental results on MSR Action 3D database.
MethodDiscrimination (%)The method of this paper98.1Bag of 3D points74.7DMM-HOG85.5DMM-LBp90.5SNV93.5HON4D88.9F94.9LAE88.2MP93.6Weight fusion94.5Literature98.5According to the analysis in Table4, when the algorithm in this paper is compared with the human behavior recognition algorithm based only on depth images, the recognition accuracy is nearly 12.6% higher than the DMM-HOG method. Compared with the DMM-LBP method, the recognition accuracy is 7.6%. Compared with normal vector coding (SNV), the recognition accuracy is nearly 4.6% higher. Compared with the FD method, the recognition accuracy is 3.2% higher. When the proposed algorithm is compared with the human behavior recognition algorithm based only on bone data, the recognition accuracy is nearly 9.9% higher than the learning actionlet ensemble (LAE) method. Compared with the moving poselets (MP) method, the recognition accuracy is nearly 4.5% higher [20]. When the proposed algorithm is compared with the human behavior recognition algorithm based on depth images and bone data, the recognition accuracy is nearly 3.6% higher than the weight fusion method. But they were nearly 0.4% less accurate. FD method with a high recognition rate among the three research directions is selected to compare the classification and recognition performance of the four methods including the algorithm in this paper, as shown in Figure 7.Figure 7
The classification recognition performance of this paper is compared with the other three methods.


## 4.1. Experimental Data Setting

In this paper, the MSR Action 3D database published by Microsoft is used for experiments. The database, collected by the Kinect depth sensor, includes 20 different movements performed by 10 subjects facing the camera, with each subject performing each movement two to three times. A total of 567 human behavior depth image sequences or bone motion sequences are included, so the DM skeleton node matrix and bone joint feature vectors obtained by the preprocessing algorithm have 567 groups. In order to facilitate the algorithm performance comparison, the behavioral data of subjects 1, 3, 5, 7, and 9 were taken as the training set, and the behavioral data of subjects 2, 4, 6, 8, and 10 were taken as the test set, that is, the cross-validation method was used for the experiment. This setting is more challenging than dividing 20 actions into three behavior subsets (AS1, AS2, and AS3). Due to a large number of test samples, the identification effect of the algorithm can be accurately evaluated, as shown in Table2 for the numbering sequence and sequence quantity of each behavior in the MSR Action 3D database.Table 2
Behaviorlabel and sequence number.
NameNumber of sequencesHigh wave27Wave horizontally27Hammer27Catch the ball26Forward26High toss26Draw X28Tick30Circle30Clap hands30Waving with both hands30Side punch30Bend over30Kick30Side kick20Jogging30Tennis swing30Tennis serve30Golf swing30Catch and throw30


## 4.2. Network Model Training

The hardware platform of this experiment is the 4th generation Intel Core i5-421 OUdual core CPU, Nvidia GeForce 820 Mgraphics card, and 64 Windows 10 system. The software platform is MATLAB 2019b. Before the training of the 5C-CNN model, the depth images and bone data obtained by the preprocessing algorithm were normalized, and the DMM was uniformly adjusted to224∗224, and the bone node matrix and bone joint feature vector were uniformly adjusted to 54 × 20 × 3. The specific training steps of the model were as follows:(1)
The network structure is initialized: According to the single-channel CNN structure, the ReLU activation function, dropout regularization, and other related parameters of convolutional kernel pooling were set. The bias was uniformly set to randomly initialize the network weights of each layer according to Gaussian distribution.(2)
Training parameter initialization: Adam optimizer was selected for each CNN optimization algorithm, and the initial learn rate was set to 0.001. The number of iterations (Max Epoch) was set to 50, and the sample size (mini-batch size) was set to 128 based on experience. The execution environment is set to default (the default is to test the GPU first and then the CPU if it is unavailable).(3)
The normalized 3D matrix of DM skeleton nodes and the feature vectors of bone joints were taken as the input of the model. After forward propagation, the model was entered into the pooling layer of each convolutional layer, the full connection layer, and the classifier, and a probability value containing the prediction of various categories was output [18].(4)
The loss function is used to calculate the deviation between the actual output value of forward propagation and the ideal target value.(5)
Adam optimization algorithm is adopted in this process. Its relative gradient descent method can solve the problems of sparse gradient and noise and can also automatically adjust the learning rate, so as to update the network weights better and reduce the loss bias of the cost function.(6)
Repeat steps (3)–(5) for all data in the training set until the training times meet the set value. The overall training process is shown in Figure6.Figure 6
Model training process.After the above training steps, all the network weights and structural parameters of the 5C-CNN model have been optimized, and the human behavior in the training set can be correctly classified. When the DMMv bone node matrix and bone joint feature vector of the test set are uniformly input into the trained model, five sets of behavior probabilities can be obtained through forward propagation, and the probability vector of each kind of behavior is integrated decision output, and the obtained value is the output probability of each behavior to be recognized.


## 4.3. Experimental Results and Analysis

### 4.3.1. The Influence of Integration Decision on Identification Result

The trained 5C-CNN model is tested, and five groups of different behavior probabilities can be obtained in the classification stage. In the fusion stage, three different integration decision methods, such as average method, maximum method, and product method, are adopted, and the final behavior recognition results are shown in Table3. It can be seen from Table 3 that the behavior recognition rate based on the average value method is the highest, reaching 98.1, 0.3 higher than that based on the maximum value method and 0.5 higher than that based on the product method, thus indicating that the integrated decision making using average value method can achieve better behavior recognition effect. The reason is that when the output results of corresponding categories are integrated decision output by five base classifiers, the average method balances the influence of each data on the whole and eliminates outstanding data contribution. Even if a certain channel has bad results, the noise contained in various behavior predictions can be well contained, and relatively smooth results can be obtained. The maximum value method selects the prominent data of each base classifier as the final probability vector. Because the MSR Action 3D database has partially similar human actions, it is easy to have multiple different predicted peaks, resulting in decision deviation of the integration results. The product method synthesizes the influence of all data in each behavior category on the whole and takes the product of the bit-data of each base classifier as the final probability vector. This leads to better good results and worse bad results, bringing a certain degree of exclusion. When a poor prediction category appears, the integration results will introduce a lot of noise and enhance the influence of poor data. The experimental results show that the ensemble decision based on the average method has a higher behavior recognition rate. Therefore, the 5C-CNN model in this paper adopts the average method to output the ensemble decision in the fusion stage.Table 3
Identification results of different integration decisions.
Integrated decision-making methodMean value method (%)Maximum method (%)Product method (%)Discrimination98.197.897.6As shown by the confusion matrix in this article, the third (hammering) behavior has a 95.7% recognition rate, and the fifth (forward dash) behavior has a 3.3% probability of being identified. The fourth behavior (catch) was identified only 83.3% of the time, and the sixth behavior (high throw) was identified 16.7% of the time. The sixth (high throw) behavior was identified 92.7% of the time, and the twentieth (catch and throw) behavior was identified 7.3% of the time. The recognition rate of the ninth (tick) behavior was 98.7%, and the probability of the eighth (tick) behavior was 1.3%. The twentieth (catching and throwing) behavior was identified 90.6% of the time; the thirteenth (bending) behavior was identified 2.7% of the time; and the eighteenth (serving) behavior was identified 6.7% of the time. The rest of the actions have a 100% recognition rate. The above behaviors are confused and recognized largely because different behaviors have a similar appearance and local features. The late multimodal fusion of depth motion map, bone node matrix, and bone joint feature vector still loses some behavioral details, resulting in insufficient spatiotemporal information extracted from the model to fully describe the behaviors. Another reason is that the training data of the 5C-CNN model are insufficient. In order to avoid the overfitting phenomenon, it is necessary to manually set the number of iterations and interrupt network learning in advance, resulting in a less obvious test recognition effect of some behaviors. To solve the problem of insufficient model training samples, technical means such as data enhancement can be tried. The recognition accuracy of the remaining behaviors is ideal, which is attributed to the relatively clean background of the behavior sequence in the MSR Action 3D database, and the generated 3D matrix and 3D node matrixBιi⟶ of the DMMv do not have too much noise interference, and the features extracted from the model are enough to distinguish most behaviors [19].


### 4.3.2. Comparison of Methods Based on MSR Action 3D Database

After discussing and analyzing the influence of different integration decision methods on the behavior recognition results, the average method integration decision is proposed, which is most suitable for the algorithm model in this paper. Experimental results show that the average recognition rate of the proposed algorithm on the MSR Action 3D database reaches 98.1, which verifies the validity of the 5C-CNN model. Furthermore, the recognition performance of the 5C-CNN model based on the mean method integrated decision on the MSR Action 3D database test set is further analyzed through the confusion matrix. In this paper, other literature algorithms using the same experimental settings on the same database are compared. The experimental results are shown in Table4.Table 4
Experimental results on MSR Action 3D database.
MethodDiscrimination (%)The method of this paper98.1Bag of 3D points74.7DMM-HOG85.5DMM-LBp90.5SNV93.5HON4D88.9F94.9LAE88.2MP93.6Weight fusion94.5Literature98.5According to the analysis in Table4, when the algorithm in this paper is compared with the human behavior recognition algorithm based only on depth images, the recognition accuracy is nearly 12.6% higher than the DMM-HOG method. Compared with the DMM-LBP method, the recognition accuracy is 7.6%. Compared with normal vector coding (SNV), the recognition accuracy is nearly 4.6% higher. Compared with the FD method, the recognition accuracy is 3.2% higher. When the proposed algorithm is compared with the human behavior recognition algorithm based only on bone data, the recognition accuracy is nearly 9.9% higher than the learning actionlet ensemble (LAE) method. Compared with the moving poselets (MP) method, the recognition accuracy is nearly 4.5% higher [20]. When the proposed algorithm is compared with the human behavior recognition algorithm based on depth images and bone data, the recognition accuracy is nearly 3.6% higher than the weight fusion method. But they were nearly 0.4% less accurate. FD method with a high recognition rate among the three research directions is selected to compare the classification and recognition performance of the four methods including the algorithm in this paper, as shown in Figure 7.Figure 7
The classification recognition performance of this paper is compared with the other three methods.


## 4.3.1. The Influence of Integration Decision on Identification Result

The trained 5C-CNN model is tested, and five groups of different behavior probabilities can be obtained in the classification stage. In the fusion stage, three different integration decision methods, such as average method, maximum method, and product method, are adopted, and the final behavior recognition results are shown in Table3. It can be seen from Table 3 that the behavior recognition rate based on the average value method is the highest, reaching 98.1, 0.3 higher than that based on the maximum value method and 0.5 higher than that based on the product method, thus indicating that the integrated decision making using average value method can achieve better behavior recognition effect. The reason is that when the output results of corresponding categories are integrated decision output by five base classifiers, the average method balances the influence of each data on the whole and eliminates outstanding data contribution. Even if a certain channel has bad results, the noise contained in various behavior predictions can be well contained, and relatively smooth results can be obtained. The maximum value method selects the prominent data of each base classifier as the final probability vector. Because the MSR Action 3D database has partially similar human actions, it is easy to have multiple different predicted peaks, resulting in decision deviation of the integration results. The product method synthesizes the influence of all data in each behavior category on the whole and takes the product of the bit-data of each base classifier as the final probability vector. This leads to better good results and worse bad results, bringing a certain degree of exclusion. When a poor prediction category appears, the integration results will introduce a lot of noise and enhance the influence of poor data. The experimental results show that the ensemble decision based on the average method has a higher behavior recognition rate. Therefore, the 5C-CNN model in this paper adopts the average method to output the ensemble decision in the fusion stage.Table 3
Identification results of different integration decisions.
Integrated decision-making methodMean value method (%)Maximum method (%)Product method (%)Discrimination98.197.897.6As shown by the confusion matrix in this article, the third (hammering) behavior has a 95.7% recognition rate, and the fifth (forward dash) behavior has a 3.3% probability of being identified. The fourth behavior (catch) was identified only 83.3% of the time, and the sixth behavior (high throw) was identified 16.7% of the time. The sixth (high throw) behavior was identified 92.7% of the time, and the twentieth (catch and throw) behavior was identified 7.3% of the time. The recognition rate of the ninth (tick) behavior was 98.7%, and the probability of the eighth (tick) behavior was 1.3%. The twentieth (catching and throwing) behavior was identified 90.6% of the time; the thirteenth (bending) behavior was identified 2.7% of the time; and the eighteenth (serving) behavior was identified 6.7% of the time. The rest of the actions have a 100% recognition rate. The above behaviors are confused and recognized largely because different behaviors have a similar appearance and local features. The late multimodal fusion of depth motion map, bone node matrix, and bone joint feature vector still loses some behavioral details, resulting in insufficient spatiotemporal information extracted from the model to fully describe the behaviors. Another reason is that the training data of the 5C-CNN model are insufficient. In order to avoid the overfitting phenomenon, it is necessary to manually set the number of iterations and interrupt network learning in advance, resulting in a less obvious test recognition effect of some behaviors. To solve the problem of insufficient model training samples, technical means such as data enhancement can be tried. The recognition accuracy of the remaining behaviors is ideal, which is attributed to the relatively clean background of the behavior sequence in the MSR Action 3D database, and the generated 3D matrix and 3D node matrixBιi⟶ of the DMMv do not have too much noise interference, and the features extracted from the model are enough to distinguish most behaviors [19].


## 4.3.2. Comparison of Methods Based on MSR Action 3D Database

After discussing and analyzing the influence of different integration decision methods on the behavior recognition results, the average method integration decision is proposed, which is most suitable for the algorithm model in this paper. Experimental results show that the average recognition rate of the proposed algorithm on the MSR Action 3D database reaches 98.1, which verifies the validity of the 5C-CNN model. Furthermore, the recognition performance of the 5C-CNN model based on the mean method integrated decision on the MSR Action 3D database test set is further analyzed through the confusion matrix. In this paper, other literature algorithms using the same experimental settings on the same database are compared. The experimental results are shown in Table4.Table 4
Experimental results on MSR Action 3D database.
MethodDiscrimination (%)The method of this paper98.1Bag of 3D points74.7DMM-HOG85.5DMM-LBp90.5SNV93.5HON4D88.9F94.9LAE88.2MP93.6Weight fusion94.5Literature98.5According to the analysis in Table4, when the algorithm in this paper is compared with the human behavior recognition algorithm based only on depth images, the recognition accuracy is nearly 12.6% higher than the DMM-HOG method. Compared with the DMM-LBP method, the recognition accuracy is 7.6%. Compared with normal vector coding (SNV), the recognition accuracy is nearly 4.6% higher. Compared with the FD method, the recognition accuracy is 3.2% higher. When the proposed algorithm is compared with the human behavior recognition algorithm based only on bone data, the recognition accuracy is nearly 9.9% higher than the learning actionlet ensemble (LAE) method. Compared with the moving poselets (MP) method, the recognition accuracy is nearly 4.5% higher [20]. When the proposed algorithm is compared with the human behavior recognition algorithm based on depth images and bone data, the recognition accuracy is nearly 3.6% higher than the weight fusion method. But they were nearly 0.4% less accurate. FD method with a high recognition rate among the three research directions is selected to compare the classification and recognition performance of the four methods including the algorithm in this paper, as shown in Figure 7.Figure 7
The classification recognition performance of this paper is compared with the other three methods.


## 5. Conclusion

Based on OpenPose, the 2D skeleton joints of the human body were extracted from RGB images; the deficiency of the lack of orientation information of the cosine angle of limbs was analyzed; and the counterclockwise rotation angle of limbs was defined. According to the intensity of each rotation angle change, the dynamic time regularization algorithm used for calculating time series distance was improved to a piecewise dynamic time regularization algorithm by giving different weights. According to the time difference, the probability density function of Gaussian distribution was used as the correction coefficient to obtain the final comprehensive evaluation score. Finally, the construction of the experimental environment and data set is introduced, and the real-time performance and accuracy of the algorithm are tested and analyzed, respectively, to verify the feasibility and effectiveness of the algorithm.Referring to the idea of dual-flow CNN architecture, this paper proposes a 5C-CNN model, in which the first three channels are used to train the normalized depth motion graph, and the last two channels are used to train the normalized three-dimensional matrix of bone nodes and feature vectors of bone joints, thus effectively solving the training problem of multimodal behavior data in this paper. By improving the network hierarchy and filter parameters of VGG-16, the single-channel CNN structure of the model is designed for the MSR Action 3D database.In this paper, we carry out recognition experiments on the MSR Action 3D database, further discuss and analyze the influence of different integration decision methods on recognition results, and propose the average method integration decision, which is most suitable for the algorithm model in this paper. Experimental results show that the recognition accuracy of the proposed algorithm reaches 98.1%, which proves the feasibility of the preprocessing algorithm and the validity of the sc-CNN model construction. The obfuscation matrix is compared with other recognition algorithms on the same database, and the subsequent improvement of the algorithm is proposed.



---

*Source: 5430463-2022-09-09.xml*