Tensorflow 如何用3D模型而不是一百万张图像来训练GAN

Tensorflow 如何用3D模型而不是一百万张图像来训练GAN,tensorflow,3d,generative-adversarial-network,Tensorflow,3d,Generative Adversarial Network,我正试图用TensorFlow在椅子的3D模型上训练GAN。目的是使GAN模型具有椅子的完整背景,然后能够基于3D模型生成椅子的图像 我一直在做的是将一个3D模型读入python,并围绕它的(x,y,z)轴旋转模型,并存储图像(用于训练)。结果是从各个角度拍摄了130万张椅子图像。我想知道是否有更好的方法来代替为一个3D模型生成一百万张图像 让GAN学习3D模型,然后在真实场景中使用所学的椅子模型生成图像,效率会更高 我正在使用Python代码旋转3D模型并保存图像 from stl impor

我正试图用TensorFlow在椅子的3D模型上训练GAN。目的是使GAN模型具有椅子的完整背景,然后能够基于3D模型生成椅子的图像

我一直在做的是将一个3D模型读入python,并围绕它的(x,y,z)轴旋转模型,并存储图像(用于训练)。结果是从各个角度拍摄了130万张椅子图像。我想知道是否有更好的方法来代替为一个3D模型生成一百万张图像

让GAN学习3D模型,然后在真实场景中使用所学的椅子模型生成图像,效率会更高

我正在使用Python代码旋转3D模型并保存图像

from stl import mesh
from mpl_toolkits import mplot3d
from matplotlib import pyplot

stl_mesh = mesh.Mesh.from_file('./chair.stl')

def generate_save_figure(elev,azim,dist):         
    figure = pyplot.figure(figsize=(1,1))
    axes = mplot3d.Axes3D(figure)
    axes.grid(False)
    axes._axis3don=False    
    axes.add_collection3d(mplot3d.art3d.Poly3DCollection(stl_mesh.vectors))
    scale = stl_mesh.points.flatten(-1)
    axes.auto_scale_xyz(scale, scale, scale)
    axes.view_init(elev=elev,azim=azim)
    axes.dist = dist
    axes.autoscale(True)
    figure.savefig('./numpy-stl-images/elev({})-azim({})-dist({}).png'.format(elev,azim,dist))   
    print('saved elev {}, azim {}, dist {}'.format(elev,azim,dist))
    del figure,axes,scale
    pyplot.close('all')

for elev in range(0,180,1):
    for azim in range(0,360,1):
        for dist in range(5,25,1):
            generate_save_figure(elev,azim,dist)
链接到我正在处理的github回购协议,了解此问题的其他上下文(请注意,主席数据集尚不可用)

是用3D数据训练ML模型的答案

我不明白为什么有人会否决这样的问题。网上有一些文本,比如:他们使用了一个叫做宜家的数据集。谢谢,这篇论文是从图像到三维模型的。这与我的目的相反。相反,我尝试在3D模型上训练一个GAN模型来生成图像:)这个github链接涵盖了许多人工智能的3D白皮书,其中没有一篇涉及我们实验室正在研究的用户案例。你能在真实的szene中生成这些图像吗?我目前正在处理一个类似的问题,并对您的结果感兴趣。@progNewbie我确实从各个角度生成了图像,但在生成真实场景方面没有取得多大进展。您可以在此链接中找到生成的图像。