输入:1或多张单个物体任意视角的图片 (encode成一个latent code)
输出:3D occupancy grid (323232)
loss: sum of voxel-wise 交叉熵。(虽然代码和这个有差别)

官方代码:

非官方torch代码:

https://rohitgirdhar.github.io/GenerativePredictableVoxels/

关于autoencoder的ablation study:
第16页, table 2 (FIg.7 里面其实没有消融实验, supllementary 里面也没有图)

网络结构:


输入单目深度图,输出体素。
方法:

左上:用AE来学习GT 3d voxel grid 的 latent code。
左中:3D EDGAN对输入的2.5D voxel grid 学习latent code,然后decode出3D grid。 其中监督用到latent code loss (用上一步的Gt latent code监督), depth loss:希望生成的结果和input的deapth相符(右上), GAN loss:生成的结果和GT 一起投入GAN。
右中:ELM:将结果二值化。传统方法是用阈值来二值化,但这样不太好,难以联系邻居的情况,做不到local continuity。这一部的loss是L1距离。
就只有GAN loss。
generator是 kernal size是4,stride2,batch norm and ReLU
discrininator几乎一样,但用Leaky ReLU。

这是generator。z是长度为z_size的latent code。
以下顺序都是B,C,XYZ,
先reshape一下,变成 B, z_size, 1,1,1
然后第一个反卷积,得到B, 512,4,4,4
最后就变成了B,1,64,64,64,64

显然我需要加一层。
100,64,32,32
100,32,64,64,64
100,1,128,128,128
这样就可以了。