Ejemplo n.º 1
0
def test_Surface_Meshes():
    surface_meshes = shapenet.ShapeNet_Surface_Meshes(root=SHAPENET_ROOT,
                                                      cache_dir=CACHE_DIR,
                                                      categories=['can'],
                                                      train=True,
                                                      split=.1,
                                                      resolution=100,
                                                      smoothing_iterations=3,
                                                      mode='Tri')
    assert len(surface_meshes) == 10
    assert surface_meshes.cache_dir.exists()
    assert len(list(surface_meshes.cache_dir.rglob('*.p'))) == 10
    for smesh in surface_meshes:
        assert smesh['data']['vertices'].shape[0] > 0
        assert smesh['data']['faces'].shape[1] == 3

    shutil.rmtree('tests/datasets/cache/surface_meshes')

    surface_meshes = shapenet.ShapeNet_Surface_Meshes(root=SHAPENET_ROOT,
                                                      cache_dir=CACHE_DIR,
                                                      categories=['can'],
                                                      train=True,
                                                      split=.1,
                                                      resolution=100,
                                                      smoothing_iterations=3,
                                                      mode='Quad')
    assert len(surface_meshes) == 10
    assert surface_meshes.cache_dir.exists()
    assert len(list(surface_meshes.cache_dir.rglob('*.p'))) == 10
    for smesh in surface_meshes:
        assert smesh['data']['vertices'].shape[0] > 0
        assert smesh['data']['faces'].shape[1] == 4
    shutil.rmtree('tests/datasets/cache/voxels')
    shutil.rmtree('tests/datasets/cache/surface_meshes')
Ejemplo n.º 2
0
                                      cache_dir=args.cache_dir,
                                      categories=args.categories,
                                      train=True,
                                      split=.7,
                                      num_points=3000)
images_set = shapenet.ShapeNet_Images(root=args.shapenet_images_root,
                                      categories=args.categories,
                                      train=True,
                                      split=.7,
                                      views=23,
                                      transform=preprocess)
if args.latent_loss:
    mesh_set = shapenet.ShapeNet_Surface_Meshes(root=args.shapenet_root,
                                                cache_dir=args.cache_dir,
                                                categories=args.categories,
                                                resolution=100,
                                                train=True,
                                                split=.7,
                                                mode='Tri')
    train_set = shapenet.ShapeNet_Combination(
        [points_set, images_set, mesh_set])
    dataloader_train = DataLoader(train_set,
                                  batch_size=args.batch_size,
                                  shuffle=True,
                                  collate_fn=collate_fn,
                                  num_workers=8)
else:
    train_set = shapenet.ShapeNet_Combination([points_set, images_set])
    dataloader_train = DataLoader(train_set,
                                  batch_size=args.batch_size,
                                  shuffle=True,