{'fraction_non_alphanumeric': 0.03418522720487251, 'fraction_numerical': 0.01788380008359706, 'mean_word_length': 4.787973043027475, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 1, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
End-to-End Human Pose and Mesh Reconstruction with Transformers

We present a new method, called MEsh TRansfOrmer (METRO), to reconstruct 3D human pose and mesh vertices from a single image. Our method uses a transformer encoder to jointly model vertex-vertex and vertex-joint interactions, and outputs 3D joint coordinates and mesh vertices simultaneously. Compared to existing techniques that regress pose and shape parameters, METRO does not rely on any parametric mesh models like SMPL, thus it can be easily extended to other objects such as hands. We further relax the mesh topology and allow the transformer self-attention mechanism to freely attend between any two vertices, making it possible to learn non-local relationships among mesh vertices and joints. With the proposed masked vertex modeling, our method is more robust and effective in handling challenging situations like partial occlusions. METRO generates new state-of-the-art results for human mesh reconstruction on the public Human3.6M and 3DPW datasets. Moreover, we demonstrate the generalizability of METRO to 3D hand reconstruction in the wild, outperforming existing state-of-the-art methods on FreiHAND dataset. Code and pre-trained models are available at https://github.com/microsoft/MeshTransformer.


Introduction
3D human pose and mesh reconstruction from a single image has attracted a lot of attention because it has many applications including virtual reality, sports motion analysis, neurodegenerative condition diagnosis, etc. It is a challenging problem due to complex articulated motion and occlusions.
Recent work in this area can be roughly divided into two categories. Methods in the first category use a parametric model like SMPL [29] and learn to predict shape and pose coefficients [14,26,39,22,24,34,44,23]. Great success has been achieved with this approach. The strong prior encoded in the parametric model increases its robustness to environment variations. A drawback of this approach is that the pose and shape spaces are constrained by the limited ex- emplars that are used to construct the parametric model. To overcome this limitation, methods in the second category do not use any parametric models [25,8,32]. These methods either use a graph convolutional neural network to model neighborhood vertex-vertex interactions [25,8], or use 1D heatmap to regress vertex coordinates [32]. One limitation with these approaches is that they are not efficient in modeling non-local vertex-vertex interactions.
Researchers have shown that there are strong correlations between non-local vertices which may belong to different parts of the body (e.g. hand and foot) [55]. In computer graphics and robotics, inverse kinematics techniques [2] have been developed to estimate the internal joint positions of an articulated figure given the position of an end effector such as a hand tip. We believe that learning the correlations among body joints and mesh vertices including both short range and long range ones is valuable for handling challenging poses and occlusions in body shape reconstruction. In this paper, we propose a simple yet effective framework to model global vertex-vertex interactions. The main ingredient of our framework is a transformer.
Recent studies show that transformer [53] significantly improves the performance on various tasks in natural lan-guage processing [4,9,40,41]. The success is mainly attributed to the self-attention mechanism of a transformer, which is particularly effective in modeling the dependencies (or interactions) without regard to their distance in both inputs and outputs. Given the dependencies, transformer is able to soft-search the relevant tokens and performs prediction based on the important features [4,53].
In this work, we propose METRO, a multi-layer Transformer encoder with progressive dimensionality reduction, to reconstruct 3D body joints and mesh vertices from a given input image, simultaneously. We design the Masked Vertex Modeling objective with a transformer encoder architecture to enhance the interactions among joints and vertices. As shown in Figure 1, METRO learns to discover both short-and long-range interactions among body joints and mesh vertices, which helps to better reconstruct the 3D human body shape with large pose variations and occlusions.
Experimental results on multiple public datasets demonstrate that METRO is effective in learning vertex-vertex and vertex-joint interactions, and consequently outperforms the prior works on human mesh reconstruction by a large margin. To the best of our knowledge, METRO is the first approach that leverages a transformer encoder architecture to jointly learn 3D human pose and mesh reconstruction from a single input image. Moreover, METRO is a general framework which can be easily applied to predict a different 3D mesh, for example, to reconstruct a 3D hand from an input image.
In summary, we make the following contributions.
• We introduce a new transformer-based method, named METRO, for 3D human pose and mesh reconstruction from a single image.
• We design the Masked Vertex Modeling objective with a multi-layer transformer encoder to model both vertex-vertex and vertex-joint interactions for better reconstruction.
• METRO achieves new state-of-the-art performance on the large-scale benchmark Human3.6M and the challenging 3DPW dataset.
• METRO is a versatile framework that can be easily realized to predict a different type of 3D mesh, such as 3D hand as demonstrated in the experiments. METRO achieves the first place on FreiHAND leaderboard at the time of paper submission.

Related Works
Human Mesh Reconstruction (HMR): HMR is a task of reconstructing 3D human body shape, which is an active research topic in recent years. While pioneer works have demonstrated impressive reconstruction using various sensors, such as depth sensors [33,48] or inertial measurement units [20,54], researchers are exploring to use a monocular camera setting that is more efficient and convenient. However, HMR from a single image is difficult due to complex pose variations, occlusions, and limited 3D training data.
Prior studies propose to adopt the pre-trained parametric human models, i.e., SMPL [29], STAR [35], MANO [43], and estimate the pose and shape coefficients of the parametric model for HMR. Since it is challenging to regress the pose and shape coefficients directly from an input image, recent works further propose to leverage various human body priors such as human skeletons [26,39] or segmentation maps [34], and explore different optimization strategies [24,22,51,14] and temporal information [23] to improve reconstruction.
On the other hand, instead of adopting a parametric human model, researchers have also proposed approaches to directly regress 3D human body shape from an input image. For example, researchers have explored to represent human body using a 3D mesh [25,8], a volumetric space [52], or an occupancy field [46,47]. Each of the prior works addresses a specific output representation for their target application. Among the literature, the relevant study is GraphCMR [25], which aims to regress 3D mesh vertices using graph convolutional neural networks (GCNNs). Moreover, recent proposed Pose2Mesh [8] is a cascaded model using GCNNs. Pose2Mesh reconstructs human mesh based on the given human pose representations.
While GCNN-based methods [8,25] are designed to model neighborhood vertex-vertex interactions based on a pre-specified mesh topology, it is less efficient in modeling longer range interactions. In contrast, METRO models global interactions among joints and mesh vertices without being limited by any mesh topology. In addition, our method learns with self-attention mechanism, which is different from prior studies [8,25].

Attentions and Transformers:
Recent studies [36,28,53] have shown that attention mechanisms improve the performance on various language tasks. Their key insight is to learn the attentions to soft-search relevant inputs that are important for predicting an output [4]. Vaswani et al. [53] further propose a transformer architecture based solely on attention mechanisms. Transformer is highly parallelized using multi-head self-attention for efficient training and inference, and leads to superior performance in language modeling at scale, as explored in BERT [9] and GPT [40,41,5]. Inspired by the recent success in neural language field, there is a growing interest in exploring the use of transformer architecture for various vision tasks, such as learning the pixel distributions for image generation [7,37] and classification [7,10], or to simplify object detection as a set Figure 2: Overview of the proposed framework. Given an input image, we extract an image feature vector using a convolutional neural network (CNN). We perform position encoding by adding a template human mesh to the image feature vector by concatenating the image feature with the 3D coordinates (x i , y i , z i ) of every body joint i, and 3D coordinates (x j , y j , z j ) of every vertex j. Given a set of joint queries and vertex queries, we perform self-attentions through multiple layers of a transformer encoder, and regress the 3D coordinates of body joints and mesh vertices in parallel. We use a progressive dimensionality reduction architecture (right) to gradually reduce the hidden embedding dimensions from layer to layer. Each token in the final layer outputs 3D coordinates of a joint or mesh vertex. Each encoder block has 4 layers and 4 attention heads. H denotes the dimension of an image feature vector.
prediction problem [6]. However, 3D human reconstruction has not been explored along this direction.
In this study, we present a multi-layer transformer architecture with progressive dimensionality reduction to regress the 3D coordinates of the joints and vertices. Figure 2 is an overview of our proposed framework. It takes an image of size 224 × 224 as input, and predicts a set of body joints J and mesh vertices V . The proposed framework consists of two modules: Convolutional Neural Network, and Multi-Layer Transformer Encoder. First, we use a CNN to extract an image feature vector from an input image. Next, Multi-Layer Transformer Encoder takes as input the feature vector and outputs the 3D coordinates of the body joint and mesh vertex in parallel. We describe each module in details as below.

Convolutional Neural Network
In the first module of our framework, we employ a Convolutional Neural Network (CNN) for feature extraction. The CNN is pre-trained on ImageNet classification task [45]. Specifically, we extract a feature vector X from the last hidden layer. The extracted feature vector X is typically of dimension 2048. We input the feature vector X to the transformer for the regression task.
With this generic design, it allows an end-to-end training for human pose and mesh reconstruction. Moreover, transformer can easily benefit from large-scale pre-trained CNNs, such as HRNets [56]. In our experiments, we conduct analysis on the input features, and discover that highresolution image features are beneficial for transformer to regress 3D coordinates of body joints and mesh vertices.

Multi-Layer Transformer Encoder with Progressive Dimensionality Reduction
Since we need to output 3D coordinates, we cannot directly apply the existing transformer encoder architecture [10,6] because they use a constant dimensionality of the hidden embeddings for all the transformer layers. Inspired by [18] which performs dimentionality reduction gradually with multiple blocks, we design a new architecture with a progressive dimensionality reduction scheme. As shown in Figure 2 right, we use linear projections to reduce the dimensionality of the hidden embedding after each encoder layer. By adding multiple encoder layers, the model is viewed as performing self-attentions and dimensionality reduction in an alternating manner. The final output vectors of our transformer encoder are the 3D coordinates of the joints and mesh vertices.
As illustrated in Figure 2 left, the input to the transformer encoder are the body joint and mesh vertex queries. In the same spirit as positional encoding [53,25,13], we use a template human mesh to preserve the positional information of each query in the input sequence. To be specific, we concatenate the image feature vector X ∈ R 2048×1 with the 3D coordinates (x i , y i , z i ) of every body joint i. This forms a set of joint queries . Similarly, we conduct the same positional encoding for every mesh vertex j, and form a set of vertex queries

Masked Vertex Modeling
Prior works [9,49] use the Masked Language Modeling (MLM) to learn the linguistic properties of a training corpus. However, MLM aims to recover the inputs, which cannot be directly applied to our regression task.
To fully activate the bi-directional attentions in our transformer encoder, we design a Masked Vertex Modeling (MVM) for our regression task. We mask some percentages of the input queries at random. Different from recovering the masked inputs like MLM [9], we instead ask the transformer to regress all the joints and vertices.
In order to predict an output corresponding to a missing query, the model will have to resort to other relevant queries. This is in spirit similar to simulating occlusions where partial body parts are invisible. As a result, MVM enforces transformer to regress 3D coordinates by taking other relevant vertices and joints into consideration, without regard to their distances and mesh topology. This facilitates both short-and long-range interactions among joints and vertices for better human body modeling.

Training
To train the transformer encoder, we apply loss functions on top of the transformer outputs, and minimize the errors between predictions and ground truths. Given a dataset where T is the total number of training images. I ∈ R w×h×3 denotes an RGB image.V 3D ∈ R M ×3 denotes the ground truth 3D coordinates of the mesh vertices and M is the number of vertices. J 3D ∈ R K×3 denotes the ground truth 3D coordinates of the body joints and K is the number of joints of a person. Similarly,J 2D ∈ R K×2 denotes the ground truth 2D coordinates of the body joints.
Let V 3D denote the output vertex locations, and J 3D is the output joint locations, we use L 1 loss to minimize the errors between predictions and ground truths: It is worth noting that, the 3D joints can also be calculated from the predicted mesh. Following the common practice in literature [8,22,25,24], we use a pre-defined regression matrix G ∈ R K×M , and obtain the regressed 3D joints by J reg 3D = GV 3D . Similar to prior works, we use L 1 loss to optimize J reg 3D : 2D re-projection has been commonly used to enhance the image-mesh alignment [22,25,24]. Also, it helps visualize the reconstruction in an image. Inspired by the prior works, we project the 3D joints to 2D space using the estimated camera parameters, and minimize the errors between the 2D projections and 2D ground truths: where the camera parameters are learned by using a linear layer on top of the outputs of the transformer encoder.
To perform large-scale training, it is highly desirable to leverage both 2D and 3D training datasets for better generalization. As explored in literature [34,22,25,24,23,8,32], we use a mix-training strategy that leverages different training datasets, with or without the paired image-mesh annotations. Our overall objective is written as: where α and β are binary flags for each training sample, indicating the availability of 3D and 2D ground truths, respectively.

Implementation Details
Our method is able to process arbitrary sizes of mesh. However, due to memory constraints of current hardware, our transformer processes a coarse mesh: (1) We use a coarse template mesh (431 vertices) for positional encoding, and transformer outputs a coarse mesh; (2) We use learnable Multi-Layer Perceptrons (MLPs) to upsample the coarse mesh to the original mesh (6890 vertices for SMPL human mesh topology); (3) The transformer and MLPs are trained end-to-end; Please note that the coarse mesh is obtained by sub-sampling twice to 431 vertices with a sampling algorithm [42]. As discussed in the literature [25], the implementation of learning a coarse mesh followed by upsampling is helpful to reduce computation. It also helps avoid redundancy in original mesh (due to spatial locality of vertices), which makes training more efficient.

Experimental Results
We first show that our method outperforms the previous state-of-the-art human mesh reconstruction methods on Hu-man3. 6M

Datasets
Following the literature [34,22,25,24,23,8,32], we conduct mix-training using 3D and 2D training data. We describe each dataset below. Human3.6M [21] is a large-scale dataset with 2D and 3D annotations. Each image has a subject performing a different action. Due to the license issue, the groundtruth 3D meshes are not available. Thus, we use the pseudo 3D meshes provided in [8,32] for training. The pseudo labels are created by model fitting with SMPLify-X [38]. For evaluation, we use the groundtruth 3D pose labels provided in Human3.6M for fair comparison. Following the common setting [50,25,22], we train our models using subjects S1, S5, S6, S7 and S8. We test the models using subjects S9 and S11. 3DPW [54] is an outdoor-image dataset with 2D and 3D annotations. The training set consists of 22K images, and the test set has 35K images. Following the previous stateof-the-arts [23], we use 3DPW training data when conducting experiments on 3DPW. UP-3D [26] is an outdoor-image dataset. Their 3D annotations are created by model fitting. The training set has 7K images. MuCo-3DHP [31] is a synthesized dataset based on MPI-INF-3DHP dataset [30]. It composites the training data with a variety of real-world background images. It has 200K training images. COCO [27] is a large-scale dataset with 2D annotations. We also use the pseudo 3D mesh labels provided in [24], which are fitted with SMPLify-X [38]. MPII [1] is an outdoor-image dataset with 2D pose labels. The training set consists of 14K images. FreiHAND [61] is a 3D hand dataset. The training set consists of 130K images, and the test set has 4K images.
We demonstrate the generalizability of our model on this dataset. We use the provided set for training, and conduct evaluation on their online server.

Evaluation Metrics
We report results using three standard metrics as below. The unit for the three metrics is millimetter (mm).
PA-MPJPE: PA-MPJPE, or Reconstruction Error [60], is another metric for this task. It first performs a 3D alignment using Procrustes analysis (PA) [12], and then computes MPJPE. PA-MPJPE is commonly used for evaluating 3D reconstruction [60] as it measures the errors of the reconstructed structure without regard to the scale and rigid pose (i.e., translations and rotations).

MPVE:
Mean-Per-Vertex-Error (MPVE) [39] measures the Euclidean distances between the ground truth vertices and the predicted vertices.

Main Results
We compare METRO with the previous state-of-the-art methods on 3DPW and Human3.6M datasets. Following the literature [23,24,22,25], we conduct mix-training using 3D and 2D training data. The results are shown in Table 1. Our method outperforms prior works on both datasets.
First of all, we are interested in how transformer works for in-the-wild reconstruction of 3DPW. As shown in the left three columns of Table 1, our method outperforms VIBE [23], which was the state-of-the-art method on this dataset. It is worth noting that, VIBE is a video-based approach, whereas our method is an image-based approach.
In addition, we evaluate the performance on the in-door scenario of Human3.6M. We follow the setting in the prior arts [24,32], and train our model without using 3DPW data. The results are shown in the right two columns of Table 1. Our method achieves better reconstruction performance, especially on PA-MPJPE metric. The two datasets Human3.6M and 3DPW have different challenges. The scenes in 3DPW have more severe occlusions. The scenes in Human3.6 are simpler and the challenge is more on how to accurately estimate body shape. The fact that METRO works well on both datasets demonstrates that it is both robust to occlusions and capable of accurate body shape regression.

Ablation Study
Effectiveness of Masked Vertex Modeling: Since we design a Masked Vertex Modeling objective for transformer, one interesting question is whether the objective is useful. Table 2 shows the ablation study on Human3.6M. We observe that Masked Vertex Modeling significantly improves the results. Moreover, we study how many percentage of query tokens should be masked. We vary the maximum masking percentage, and Table 3 Table 4: Performance comparison with the state-of-the-art methods, evaluated on FreiHAND online server. METRO outperforms previous state-of-the-art approaches by a large margin.
Non-local Interactions: To further understand the effect of METRO in learning interactions among joints and mesh vertices, we conduct analysis on the self-attentions in our transformer. Figure 3 shows the visualization of the self-attentions and mesh reconstruction. For each row in Figure 3, we show the input image, and the self-attentions between a specified joint and all the mesh vertices. The brighter color indicates stronger attention. At the first row, the subject is severely occluded and the right body parts are invisible. As we predict the location of right wrist, METRO attends to relevant non-local vertices, especially those on the head and left hand. At the bottom row, the subject is heavily bended. For the head position prediction, METRO attends to the feet and hands (6th column at the bottom row). It makes sense intuitively since the hand and foot positions provide strong cues to the body pose and subsequently the head position. Moreover, we observe the model performs self-attentions in condition to the input image. As shown in the second row of Figure 3, when predicting the location of right wrist, METRO focuses more on the right foot which is different from the attentions in the other three rows.
We further conduct quantitative analysis on the nonlocal interactions. We randomly sample 5000 images from 3DPW test set, and estimate an overall self-attention map. It is the average attention weight of all attention heads at the last transformer layer. We visualize the interactions among 14 body joints and 431 mesh vertices in Figure 4. Each pixel shows the intensity of self-attention, where darker color indicates stronger attention. Note that the first 14 columns are the body joints, and the rest of them represent the mesh vertices. We observe that METRO pays strong attentions to the vertices on the lower arms and the lower legs. This is consistent with the inverse kinematics literature [2] where the interior joints of a linked figure can be estimated from the position of an end effector.
Input Representations: We study the behaviour of our transformer architecture by using different CNN backbones. We use ResNet50 [16] and HRNet [56] variations for this experiment. All backbones are pre-trained on the 1000-  Table 5: Analysis on different backbones, evaluated on Hu-man3.6M. All backbones are pre-trained on ImageNet. We observe that increasing the number of filters in the high resolution feature maps of HRNet is beneficial to mesh regression.

Input
Wrist Thumb Index Middle Ring Pinky Output Figure 5: Qualitative results of our method on FreiHAND test set. We visualize the self-attentions between a specified joint and all the mesh vertices, where brighter color indicates stronger attention. METRO is a versatile framework that can be easily extended to 3D hand reconstruction.
class image classification task of ImageNet [45]. For each backbone, we extract a global image feature vector X ∈ R 2048×1 , and feed it into the transformer. In Table 5, we observe our transformer achieves competitive performance when using a ResNet50 backbone. As we increase the channels of the high-resolution feature maps in HRNet, we observe further improvement.
Generalization to 3D Hand in-the-wild: METRO is capable of predicting arbitrary joints and vertices, without the dependencies on adjacency matrix and parametric coefficients. Thus, METRO is highly flexible and general for mesh reconstruction of other objects. To demonstrate this capability, we conduct experiment on FreiHAND [61]. We train our model on FreiHAND from scratch, and evaluate results on FreiHAND online server. Table 4 shows the comparison with the prior works. METRO outperforms previous state-of-the-art methods by a large margin. Without using any external training data, METRO achieved the first place on FreiHAND leaderboard at the time of paper sub-mission 1 . Figure 5 shows our qualitative results with non-local interactions. In the appendix, we provide further analysis on the 3D hand joints, and show that the self-attentions learned in METRO are consistent with inverse kinematics [2].

Conclusion
We present a simple yet effective mesh transformer framework to reconstruct human pose and mesh from a single input image. We propose the Masked Vertex Modeling objective to learn non-local interactions among body joints and mesh vertices. Experimental results show that, our method advances the state-of-the-art performance on 3DPW, Human3.6M, and FreiHAND datasets.
A detailed analysis reveals that the performance improvements are mainly attributed to the input-dependent non-local interactions learned in METRO, which enables predictions based on important joints and vertices, regardless of the mesh topology. We further demonstrate the generalization capability of the proposed approach to 3D hand reconstruction.

A. Additional Reference
We would like to add additional references (HKMR [11], Arnab et al. [3], Zeng et al. [58], Zhang et al. [59], DenseRaC [57], HoloPose [15]). Among the new references, HKMR [11] regresses SMPL parameters by leveraging a pre-specified hierarchical kinematic structure that consists of a root chain and five child chains corresponding to 5 end effectors (head, left/right arms, left/right legs). Holo-Pose [15] estimates rotation angles of body joints, and uses it as the prior to guide part-based human mesh reconstruction. Zeng et al. [58] designs the continuous UV map to preserve neighboring relationships of the mesh vertices. Zhang et al. [59] addresses the occlusion scenario by formulating the task as a UV-map inpainting problem. Since 3DPW is a relatively new benchmark, most literature reported results on Human3.6M, but not 3DPW. We have added their Hu-man3.6M results in Table 6. As we can see, our method outperforms all of the prior works by a large margin.
Recently, researchers are exploring the transformer models for other 3D vision topics, such as multi-view human pose estimation [17] and hand pose estimation based on point could [19]. We encourage the readers to undertake these studies for further explorations.

B. Implementation Details and Computation Resource
We develop METRO using PyTorch and Huggingface transformer library. We conduct training on a machine equipped with 8 NVIDIA V100 GPUs (32GB RAM) and we use batch size 32. Each epoch takes 32 minutes and we train for 200 epochs. Overall, our training takes 5 days. We use the Adam optimizer and a step-wise learning rate decay. We set the initial learning rate as 1 × 10 −4 for both transformer and CNN backbone. The learning rate is decayed by a factor of 10 at the 100th epoch. Our multi-layer transformer encoder is randomly initialized, and the CNN backbone is initialized with ImageNet pre-trained weights. Following [25,24], we apply standard data augmentation during training.
We evaluate the runtime speed of our model using a machine equipped with a single NVIDIA P100 GPU (16GB RAM). Our runtime speed is about 12 fps using batch size 1. The runtime speed can be accelerated to around 24 fps using batch size 32. Table 7 shows the details of each module in METRO.
For our masked vertex modeling, following BERT [9], we implement it by using a pre-defined special [MASK] token (2051-D floating value vector in our case) to replace the randomly selected input queries.

C. Progressive Dimensionality Reduction
Since we gradually reduce the hidden sizes in the transformer architecture, one interesting question is whether such a progressive dimensionality reduction scheme is useful. We have conducted an ablation study on different schemes, and Table 6 shows the comparison. In Table 6, the row "(H+3)→3" corresponds to a baseline using one linear projection H + 3 to 3. The result is poor. Row "(H+3)→H/2→3" is another baseline which keeps a smaller dimension throughout the network. The result is also bad. Our finding is that large-step (steep) dimension reduction does not work well for 3D mesh regression. Our progressive scheme is inspired by [18] which performed dimensionality reduction gradually with multiple blocks.

D. Positional Encoding
Since our positional encoding is different from the conventional one, one may wonder what if we use sinusoidal functions [53] but not a template mesh. We have compared our method with the conventional positional encoding which uses sinusoidal functions, and Table 8 shows the results. We see that using sinusoidal functions is slightly worse. This is probably because directly encoding coordinates makes it more efficient to learn 3D coordinate regres-sion. Figure 8 shows a qualitative comparison with the previous image-based state-of-the-art methods [32,25] in challenging scenarios. These methods only use a single frame as input. In the first row, the subject is heavily bending. Prior works have difficulty in reconstructing a correct body shape for the subject. In contrast, our method reconstructs a reasonable human mesh with correct pose. In the second row, the subject is occluded by the vehicle. We see that prior works are sensitive to the occlusions, and failed to generate correct human mesh. In contrast, our method performs more robustly in this occlusion scenario. In the bottom row, the subject is sitting on the chair. Our method reconstructed a better human mesh compared to the previous state-of-theart methods. Figure 9 shows the qualitative results of our method on 3D hand reconstruction. Without making any modifications to the network architecture, our method works well for hands and is robust to occlusions. It demonstrates our method's advantage that it can be easily extended to other types of objects.

F. Non-local Interactions of Hand Joints
We further conduct quantitative analysis on the non-local interactions among hand joints learned by our model. We randomly sample 1000 samples from FreiHAND test set, and estimate an overall self-attention map. Figure 10 shows the interactions among 21 hand joints. There are 21 rows and 21 columns. Pixel (i, j) represents the amount of attention that hand joint i attends to joint j. A darker color indicates stronger attention. We can see that the wrist joint (column 0) receives strong attentions from all the joints. Intuitively wrist joint acts like a "root" of the hand's kinematics tree. In addition, columns 4, 8, 12, and 16 receive strong attentions from many other joints. These columns correspond to the tips of thumb, index, middle, and ring fingers, respectively. These finger tips are end effectors [2] and they can be used to estimate the interior joint positions in inverse kinematics. On the other hand, the tip of pinky only receives  attentions from the joints on the ring finger. This is probably because pinky is not as active as the other fingers and its motion is more correlated to the ring finger compared to the other fingers.

G. Test-Time Augmentation for FreiHAND
We have explored test-time augmentation in our Frei-HAND experiments. We do not use test-time augmentation in Human3.6M and 3DPW experiments. Given a test image, we apply different rotations and scaling to the test image. We then feed these transformed images to our model, and average the results to obtain the final output mesh. In order to compute an average 3D mesh, we perform 3D alignment (i.e., Procrustes analysis [12]) to normalize the output meshes. In Table 9, we empirically observed that such an implementation is helpful to improve 0.4 PA-MPVPE on FreiHAND test set.

H. Limitations
As METRO is a data-driven approach, it may not perform well when the testing sample is very different from the training data. We show some example failure cases in Figure 7 where the test images are downloaded from the Internet. First, as shown in Figure 7(a), we observed that if the target body shape is very different from the existing training data (i.e., SMPL style data), our method may not faithfully reconstruct the muscles of the subject. Secondly, as shown in Figure 7(b), our model fails to reconstruct a correct mesh due to the fact that there is no glove data in the training set. Finally, the proposed method is a mesh-specific approach. If we were to apply our pre-trained right-hand model to the left-hand images, as can be seen in Figure 7(c), our model will not work well. How to develop a unified model for different 3D objects is an interesting future work.   The definition of the 21 joints is shown in Figure 11. Figure 11: Definition of the hand joints. The illustration is adapted from [8].