# Towards Single 2D Image-Level Self-Supervision for 3D Human Pose and Shape Estimation
## 3 Method
### Network Architectures
#### 3.2.3 Mesh Training Stage  
At this stage, we trained the feature extractor \(f^{\text{Feat}}\), mesh estimator \(f^{\text{Mesh}}\), and the discriminator \(f^{\text{Disc}}\) with the aid of pre-trained networks obtained from the pre-training stage. We ran the training for \(T_{2}=10\) epochs using the loss \(L\) (Equation (1)) with a learning rate of \(5\times 10^{-6}\). The learning rate was decreased using the exponential learning rate decay, whose decay rate was set to 0.99 for each epoch. In the remainder of this subsection, we elaborate the sub-loss of the loss \(L\): \(L_{\text{IM}}\) and \(L_{\text{NR}}\). Image manipulation loss \(L_{\text{IM}}\).This loss consisted of sub-losses reflecting three self-supervision tasks (i.e., solving jigsaw puzzling, rotation prediction and part in-painting tasks). To enrich the feature extractor \(f^{\text{Feat}}\) using jigsaw puzzling, rotation prediction, and part in-painting tasks, we used the loss \(L_{\text{IM}}\) that combined losses defined in Equations (2)-(4). We used the same form of losses as Equations (2)-(4) while changing the target training network to \(f^{\text{Feat}}\):  
\[L_{\text{IM}}(f^{\text{Feat}}) = L_{\text{jigsaw}}(f^{\text{Feat}}|\mathbf{x},\mathbf{x}_{\text{ jigsaw}}) \tag{7}\] \[+L_{\text{rot}}(f^{\text{Feat}}|\mathbf{x}_{\text{rot}})\] \[+L_{\text{inp}}(f^{\text{Feat}}|\mathbf{x}_{\text{hole}}).\]  
Neural rendering loss \(L_{\text{NR}}\).This loss reflected the last self-supervision task (i.e., solving image projection task). Given a 2D image \(\mathbf{x}\), 3D human meshes are estimated by the sequential combination of \(f^{\text{Mesh}}\) and \(f^{\text{Feat}}\): \(f^{\text{Mesh}}(f^{\text{Feat}}(\mathbf{x}))\). Then, we can render estimated 3D meshes \(\mathbf{m}\) to images \(\mathbf{\hat{x}}_{\text{render}}\) and segmentation masks \(\mathbf{\hat{x}}_{\text{mask}}\) using the neural mesh renderer \(f^{\text{NMR}}\). \(L_{\text{RGB}}\) and \(L_{mask}\) are responsible for making two rendered images (i.e., \(\mathbf{\hat{x}}_{\text{render}}\) and \(\mathbf{\hat{x}}_{\text{mask}}\)) close to their original inputs, respectively. Additional losses \(L_{\text{disc}}\) and \(L_{\text{real}}\) are defined to train the discriminator and obtain more realistic images. The combination of four sub-losses is called the neural rendering loss \(L_{\text{NR}}\):  
\[L_{\text{NR}}(f^{\text{Feat}},f^{\text{Mesh}},f^{\text{Disc}}) = L_{\text{RGB}}(f^{\text{Feat}},f^{\text{Mesh}}|\mathbf{x}) \tag{8}\] \[+L_{\text{real}}(f^{\text{Feat}},f^{\text{Mesh}}|\mathbf{x})\] \[+L_{\text{mask}}(f^{\text{Feat}},f^{\text{Mesh}}|\mathbf{x})\] \[+L_{\text{disc}}(f^{\text{Disc}}|\mathbf{x},\mathbf{\hat{x}}_{ \text{renderbg}},\mathbf{\hat{x}}_{\text{inp}})\]  
where \(\mathbf{\hat{x}}_{\text{renderbg}}\) is the image that combines the rendered image \(\mathbf{\hat{x}}_{\text{render}}\) and a random background image \(\mathbf{x}_{\text{bg}}\). \(L_{\text{RGB}}(f^{\text{Feat}},f^{\text{Mesh}}|\mathbf{x})\) is in the same form as \(L_{\text{RGB}}(f^{\text{Tex}}|\mathbf{x})\) in Equation (6);however, the target training network is changed to \(f^{\text{Feat}}\) and \(f^{\text{Mesh}}\).