Esempio n. 1
0
N0 = 2048
N1 = 1000
N2 = 500
N3 = 100
num_classes = len(classes)
init_lr = 0.0001
num_epochs = 3

problem_type = 'm0'
criterion = loss_m0(1.0)

# DATA
# datasets
real_data = MultibinImages(augmented_path, 'real', problem_type, kmeans_file)
render_data = MultibinImages(render_path, 'render', problem_type, kmeans_file)
test_data = Pascal3dAll(pascal3d_path, 'test')
# setup data loaders
real_loader = DataLoader(real_data,
                         batch_size=4,
                         shuffle=True,
                         num_workers=num_workers,
                         pin_memory=True,
                         collate_fn=my_collate)
render_loader = DataLoader(render_data,
                           batch_size=4,
                           shuffle=True,
                           num_workers=num_workers,
                           pin_memory=True,
                           collate_fn=my_collate)
test_loader = DataLoader(test_data, batch_size=32, collate_fn=my_collate)
print('Real: {0} \t Render: {1} \t Test: {2}'.format(len(real_loader),
Esempio n. 2
0
ndim = 4
num_classes = len(classes)

if not args.multires:
    criterion = RelaXedProbabilisticLossQ(1.0, kmeans_file,
                                          geodesic_loss(reduce=False).cuda())
else:
    criterion = RelaXedProbabilisticMultiresLossQ(
        1.0, kmeans_file,
        geodesic_loss(reduce=False).cuda())

# DATA
# datasets
real_data = XPBDGeneratorQ(args.augmented_path, 'real', kmeans_file)
render_data = XPBDGeneratorQ(args.render_path, 'render', kmeans_file)
test_data = Pascal3dAll(args.pascal3d_path, 'test', 'quaternion')
# setup data loaders
real_loader = DataLoader(real_data,
                         batch_size=args.num_workers,
                         shuffle=True,
                         num_workers=args.num_workers,
                         pin_memory=True,
                         collate_fn=my_collate)
render_loader = DataLoader(render_data,
                           batch_size=args.num_workers,
                           shuffle=True,
                           num_workers=args.num_workers,
                           pin_memory=True,
                           collate_fn=my_collate)
test_loader = DataLoader(test_data, batch_size=32, collate_fn=my_collate)
print('Real: {0} \t Render: {1} \t Test: {2}'.format(len(real_loader),
kmeans = pickle.load(open(kmeans_file, 'rb'))
kmeans_dict = kmeans.cluster_centers_
num_clusters = kmeans.n_clusters

# relevant variables
ndim = 3
num_classes = len(classes)

criterion1 = SimpleLoss(args.alpha)
criterion2 = GeodesicLoss(args.alpha, kmeans_file, geodesic_loss().cuda())

# DATA
# datasets
real_data = GBDGenerator(args.augmented_path, 'real', kmeans_file)
render_data = GBDGenerator(args.render_path, 'render', kmeans_file)
test_data = Pascal3dAll(args.pascal3d_path, 'val')
# setup data loaders
real_loader = DataLoader(real_data,
                         batch_size=args.num_workers,
                         shuffle=True,
                         num_workers=args.num_workers,
                         pin_memory=True,
                         collate_fn=my_collate)
render_loader = DataLoader(render_data,
                           batch_size=args.num_workers,
                           shuffle=True,
                           num_workers=args.num_workers,
                           pin_memory=True,
                           collate_fn=my_collate)
test_loader = DataLoader(test_data, batch_size=32, collate_fn=my_collate)
print('Real: {0} \t Render: {1} \t Test: {2}'.format(len(real_loader),
Esempio n. 4
0
kmeans = pickle.load(open(kmeans_file, 'rb'))
kmeans_dict = kmeans.cluster_centers_
num_clusters = kmeans.n_clusters

# relevant variables
ndim = 3
num_classes = len(classes)

criterion1 = SimpleLoss(args.alpha)
criterion2 = GeodesicLoss(args.alpha, kmeans_file, geodesic_loss().cuda())

# DATA
# datasets
real_data = GBDGenerator(args.augmented_path, 'real', kmeans_file)
render_data = GBDGenerator(args.render_path, 'render', kmeans_file)
test_data = Pascal3dAll(args.pascal3d_path, 'test')
# setup data loaders
real_loader = DataLoader(real_data, batch_size=args.num_workers, shuffle=True, num_workers=args.num_workers, pin_memory=True, collate_fn=my_collate)
render_loader = DataLoader(render_data, batch_size=args.num_workers, shuffle=True, num_workers=args.num_workers, pin_memory=True, collate_fn=my_collate)
test_loader = DataLoader(test_data, batch_size=32, collate_fn=my_collate)
print('Real: {0} \t Render: {1} \t Test: {2}'.format(len(real_loader), len(render_loader), len(test_loader)))

if np.isinf(args.max_iterations):
	max_iterations = min(len(real_loader), len(render_loader))
else:
	max_iterations = args.max_iterations

# my_model
if not args.multires:
	model = OneBinDeltaModel(args.feature_network, num_classes, num_clusters, args.N0, args.N1, args.N2, ndim)
else:
# relevant variables
num_workers = 4
N0 = 2048
N1 = 1000
N2 = 500
num_classes = len(classes)
init_lr = 0.0001
num_epochs = 3
num_clusters = kmeans.n_clusters
kmeans_dict = kmeans.cluster_centers_

# DATA
# datasets
real_data = GBDGenerator(augmented_path, 'real', kmeans_file)
render_data = GBDGenerator(render_path, 'render', kmeans_file)
test_data = Pascal3dAll(pascal3d_path, 'val')
# setup data loaders
real_loader = DataLoader(real_data,
                         batch_size=4,
                         shuffle=True,
                         num_workers=num_workers,
                         pin_memory=True,
                         collate_fn=my_collate)
render_loader = DataLoader(render_data,
                           batch_size=4,
                           shuffle=True,
                           num_workers=num_workers,
                           pin_memory=True,
                           collate_fn=my_collate)
test_loader = DataLoader(test_data, batch_size=32, collate_fn=my_collate)
print('Real: {0} \t Render: {1} \t Test: {2}'.format(len(real_loader),