Abstract
In this paper, we propose an end-to-end learning strategy to generate textures of human bodies under the supervision of person re-identification. (更具体的意思是啥,怎么就在ReID监督下生成human body的texture?)
we render the synthetic images with textures extracted from the inputs and maximize the similarity between the rendered and input images by using the re-identification network as the perceptual metrics.
我们用提取自输入的texture渲染合成图像,并且通过使用ReID网络作为the perceptual metrics来最大化渲染的版本和输入的图像之间的相似性。
Experiment results on pedestrain images show that our model can generate the texture from a single image. 他们还说他们生成的纹理质量高于其他的生成纹理的方法。
那么问题来了
- 如何提取的纹理? generate the texture from a single image.
- 如何渲染?
the perceptual metrics什么意思?
Introduction
先是讲到了从single image来生成3D human model越发引起关注,因为3D human model越发在虚拟现实,clothes try-on里有用途。
Estimating the pose and shape of the human body 什么意思? 是不是生成3D human model就干的这个事。
Contribution
-
Introduce the re-identification to supervise our texture generation model
确实是用ReID作为监督信号来监督texture generation model.
为什么能这么操作?
1. 因为纹理信息可以用来区别或者characterized不同person identity, 反过来the re-id network can serve as the distance metric for the textures partially observed from different viewpoints
2. 因为the re-id network can extract the body features while eliminating the influence of pose and background variations.
因为,上述两个原因才用re-id来监督texture generation networks的training process.就是Re-ID的网络反过来吧,可以充当度量不同视角下观察到的纹理
也就是利用texture来做Re-ID, 反过来用ReID的网络来反映texture.
如何生成的这个texture image?
也就是为啥本来只给一个single image就到最后生成了他对应的texture image,感觉很不显然啊
we reuse a simplified SAN (语义对齐网络, i.e., SAN-PG) which consists of the SA-Enc and SA-Dec,but with only the reconstruction loss (具体指的哪个loss?) 这应该就是那三个不同重构目标那个,即
the same encoder-decoder networks but with different reconstruction objectives of reconstructing
the (1) input image, (2) pose aligned person image, (3) texture image.
而生成texture image这个刚好应该是第三种这个重构目标
然后注意到不是scratch的用SAN来提取,肯定是用哪个pretrained model作为特征提取器来提取。 这个用来生成纹理图像的预训练模型叫做SAN-PG(pseudo groundtruth). 而这个模型是在合成的PIT数据集上训练的。然后拿过来这个预训练的模型直接用来生成texture image.
但是action recognition任务里证实了it is beneficial to pretrain the network on dataset synthesized with highly diversified textures.
即we train the SAN-PG with our synthesized PIT dataset, the SAN-PG model is then used to generate groundtruth texture image for reID dataset.
也就是说这个pretrained model是在合成数据集上训练过的,而且这个合成数据集要满足一定的特点,比如:highly diversified textures.
至于如何利用合成的PIT dataset来训练的SAN-PG, 暂时先不细究.
为了能end-to-end,他们render images with the SMPL body model(借助3D human body来渲染图像? 渲染的最后结果长啥样?)
好神奇,怎么还能用re-identification loss, 因为本来的话,是有commonly used 的image generation tasks专用的那些other loss functions.而且这还是主要创新点,即证实了re-id loss在texture generation任务的有效性。
They render the image with textures generated in different training epochs. 什么意思?到底是生成3D model在先,然后把每点扣下来形成纹理,还是先生成纹理在先,然后利用纹理合成3D human model?
具体流程 Specific Procedure
- 用HMR(是一种方法的名字)预测SMPL human body model的参数,从预测到的参数计算出body mesh 至此,3D human body先获得 SMPL来刻画人的3D模型或者Mesh的话,取决于三个参数, β , θ , γ \beta,\theta,\gamma β,θ,γ. 而这三个参数就是用HMR在迭代回归模块下来产生的。
- 用U-Net作为纹理生成器来从single image里生成texture. 为什么这里一点没提是用合成数据训练的呢?纹理的生成到底是在3D human body上扣下来的还是咋的?如果是扣下来的,那么扣下来之前学着UV map去建立对应,如果不是扣下来,就不能学UV map了。
用在合成数据集上训练的SAN,但是这个SAN的架构应该是U-Net吧? MicrosoftAsia里面说,会利用CNN-based, U-Net当然也是CNN-based. 但是,为什么MicrosoftAsia这个不提U-Net呢,而是说强调是编码和解码器,用的到底是不是一个玩意? - 用上一步生成的texture并通过可微分的渲染器(Opendr)来render the human body image. 更准确地应该是human body mesh吧?
- 原始输入和对应的rendered version被送入一个Re-ID预训练模型(是指用合成的PIT数据集训练的那个模型么?), 这个模型的作用是让rendered version与input尽可能相似。
- 为了让生成的纹理更加逼真,more realistic, 在face parts最小化生成的和3D 扫描的纹理之间的差异(difference) 即对脸部部分要求更高,与3D 扫描做标杆比齐
![整体流程](https://img-blog.csdnimg.cn/20200601045036753.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hlYXZlbmVyV2Vu,size_16,color_FFFFFF,t_70#pic_center)
对上述流程图的解释
对纹理图像的解释
- 左上角头部信息,这个就算看不到脸,同样会有这样的有脸,肉色皮肤的效果。
- 左下角感觉是整体的颜色? 还是只是上衣的颜色?
- 右上角是描述的下半身
- 右下角偏上是描述的上半身
- 最右下脚感觉是手或者其他含有肉色皮肤的部分。