diff --git a/core/trainer.py b/core/trainer.py
index b8ae434..87bd834 100644
--- a/core/trainer.py
+++ b/core/trainer.py
@@ -215,7 +215,7 @@ class WeightedProcrustesTrainer:
# Inlier prediction with 6D ConvNet
inlier_timer.tic()
reg_sinput = ME.SparseTensor(reg_feats.contiguous(),
- coords=reg_coords.int()).to(self.device)
+ coordinates=reg_coords.int(), device="cuda")
reg_soutput = self.inlier_model(reg_sinput)
inlier_timer.toc()
@@ -396,7 +396,7 @@ class WeightedProcrustesTrainer:
inlier_timer.tic()
reg_sinput = ME.SparseTensor(reg_feats.contiguous(),
- coords=reg_coords.int()).to(self.device)
+ coordinates=reg_coords.int(), device="cuda")
reg_soutput = self.inlier_model(reg_sinput)
inlier_timer.toc()
@@ -630,10 +630,10 @@ class WeightedProcrustesTrainer:
def generate_inlier_input(self, xyz0, xyz1, iC0, iC1, iF0, iF1, len_batch, pos_pairs):
# pairs consist of (xyz1 index, xyz0 index)
stime = time.time()
- sinput0 = ME.SparseTensor(iF0, coords=iC0).to(self.device)
+ sinput0 = ME.SparseTensor(iF0, coordinates=iC0, device="cuda")
oF0 = self.feat_model(sinput0).F
- sinput1 = ME.SparseTensor(iF1, coords=iC1).to(self.device)
+ sinput1 = ME.SparseTensor(iF1, coordinates=iC1, device="cuda")
oF1 = self.feat_model(sinput1).F
feat_time = time.time() - stime
diff --git a/dataloader/threedmatch_loader.py b/dataloader/threedmatch_loader.py
index 99ba346..d45ad0d 100644
--- a/dataloader/threedmatch_loader.py
+++ b/dataloader/threedmatch_loader.py
@@ -75,8 +75,8 @@ class IndoorPairDataset(PairDataset):
xyz0_th = torch.from_numpy(xyz0)
xyz1_th = torch.from_numpy(xyz1)
- sel0 = ME.utils.sparse_quantize(xyz0_th / self.voxel_size, return_index=True)
- sel1 = ME.utils.sparse_quantize(xyz1_th / self.voxel_size, return_index=True)
+ _, sel0 = ME.utils.sparse_quantize(xyz0_th / self.voxel_size, return_index=True)
+ _, sel1 = ME.utils.sparse_quantize(xyz1_th / self.voxel_size, return_index=True)
# Make point clouds using voxelized points
pcd0 = make_open3d_point_cloud(xyz0[sel0])
diff --git a/model/pyramidnet.py b/model/pyramidnet.py
index 8a0b9aa..0a643e3 100644
--- a/model/pyramidnet.py
+++ b/model/pyramidnet.py
@@ -15,7 +15,7 @@ from model.residual_block import get_block, conv, conv_tr, conv_norm_non
class PyramidModule(ME.MinkowskiNetwork):
NONLINEARITY = 'ELU'
NORM_TYPE = 'BN'
- REGION_TYPE = ME.RegionType.HYPERCUBE
+ REGION_TYPE = ME.RegionType.HYPER_CUBE
def __init__(self,
inc,
@@ -93,7 +93,7 @@ class PyramidNet(ME.MinkowskiNetwork):
DEPTHS = [1, 1, 1, 1]
# None b1, b2, b3, btr3, btr2
# 1 2 3 -3 -2 -1
- REGION_TYPE = ME.RegionType.HYPERCUBE
+ REGION_TYPE = ME.RegionType.HYPER_CUBE
# To use the model, must call initialize_coords before forward pass.
# Once data is processed, call clear to reset the model before calling initialize_coords
diff --git a/model/residual_block.py b/model/residual_block.py
index f933be5..02985cb 100644
--- a/model/residual_block.py
+++ b/model/residual_block.py
@@ -17,12 +17,12 @@ def conv(in_channels,
kernel_size=3,
stride=1,
dilation=1,
- has_bias=False,
+ bias=False,
region_type=0,
dimension=3):
if not isinstance(region_type, ME.RegionType):
if region_type == 0:
- region_type = ME.RegionType.HYPERCUBE
+ region_type = ME.RegionType.HYPER_CUBE
elif region_type == 1:
region_type = ME.RegionType.HYPERCROSS
else:
@@ -49,8 +49,8 @@ def conv_tr(in_channels,
kernel_size,
stride=1,
dilation=1,
- has_bias=False,
- region_type=ME.RegionType.HYPERCUBE,
+ bias=False,
+ region_type=ME.RegionType.HYPER_CUBE,
dimension=-1):
assert dimension > 0, 'Dimension must be a positive integer'
kernel_generator = ME.KernelGenerator(
@@ -75,7 +75,7 @@ def conv_tr(in_channels,
kernel_size=kernel_size,
stride=stride,
dilation=dilation,
- has_bias=has_bias,
+ bias=bias,
kernel_generator=kernel_generator,
dimension=dimension)
@@ -174,7 +174,7 @@ def conv_norm_non(inc,
stride,
dimension,
bn_momentum=0.05,
- region_type=ME.RegionType.HYPERCUBE,
+ region_type=ME.RegionType.HYPER_CUBE,
norm_type='BN',
nonlinearity='ELU'):
return nn.Sequential(
@@ -184,7 +184,7 @@ def conv_norm_non(inc,
kernel_size=kernel_size,
stride=stride,
dilation=1,
- has_bias=False,
+ bias=False,
region_type=region_type,
dimension=dimension),
get_norm(norm_type, outc, bn_momentum=bn_momentum, dimension=dimension),
diff --git a/model/resunet.py b/model/resunet.py
index 831517f..136104a 100644
--- a/model/resunet.py
+++ b/model/resunet.py
@@ -18,7 +18,7 @@ class ResUNet(ME.MinkowskiNetwork):
BLOCK_NORM_TYPE = 'BN'
CHANNELS = [None, 32, 64, 128]
TR_CHANNELS = [None, 32, 64, 64]
- REGION_TYPE = ME.RegionType.HYPERCUBE
+ REGION_TYPE = ME.RegionType.HYPER_CUBE
# To use the model, must call initialize_coords before forward pass.
# Once data is processed, call clear to reset the model before calling initialize_coords
@@ -43,7 +43,7 @@ class ResUNet(ME.MinkowskiNetwork):
kernel_size=conv1_kernel_size,
stride=1,
dilation=1,
- has_bias=False,
+ bias=False,
dimension=D)
self.norm1 = get_norm(NORM_TYPE, CHANNELS[1], bn_momentum=bn_momentum, dimension=D)
@@ -61,7 +61,7 @@ class ResUNet(ME.MinkowskiNetwork):
kernel_size=3,
stride=2,
dilation=1,
- has_bias=False,
+ bias=False,
dimension=D)
self.norm2 = get_norm(NORM_TYPE, CHANNELS[2], bn_momentum=bn_momentum, dimension=D)
@@ -79,7 +79,7 @@ class ResUNet(ME.MinkowskiNetwork):
kernel_size=3,
stride=2,
dilation=1,
- has_bias=False,
+ bias=False,
dimension=D)
self.norm3 = get_norm(NORM_TYPE, CHANNELS[3], bn_momentum=bn_momentum, dimension=D)
@@ -97,7 +97,7 @@ class ResUNet(ME.MinkowskiNetwork):
kernel_size=3,
stride=2,
dilation=1,
- has_bias=False,
+ bias=False,
dimension=D)
self.norm3_tr = get_norm(
NORM_TYPE, TR_CHANNELS[3], bn_momentum=bn_momentum, dimension=D)
@@ -116,7 +116,7 @@ class ResUNet(ME.MinkowskiNetwork):
kernel_size=3,
stride=2,
dilation=1,
- has_bias=False,
+ bias=False,
dimension=D)
self.norm2_tr = get_norm(
NORM_TYPE, TR_CHANNELS[2], bn_momentum=bn_momentum, dimension=D)
@@ -135,7 +135,7 @@ class ResUNet(ME.MinkowskiNetwork):
kernel_size=1,
stride=1,
dilation=1,
- has_bias=False,
+ bias=False,
dimension=D)
# self.block1_tr = BasicBlockBN(TR_CHANNELS[1], TR_CHANNELS[1], bn_momentum=bn_momentum, D=D)
@@ -146,7 +146,7 @@ class ResUNet(ME.MinkowskiNetwork):
kernel_size=1,
stride=1,
dilation=1,
- has_bias=True,
+ bias=True,
dimension=D)
def forward(self, x):
@@ -185,8 +185,8 @@ class ResUNet(ME.MinkowskiNetwork):
if self.normalize_feature:
return ME.SparseTensor(
out.F / (torch.norm(out.F, p=2, dim=1, keepdim=True) + 1e-8),
- coords_key=out.coords_key,
- coords_manager=out.coords_man)
+ coordinate_map_key=out.coords_key,
+ coordinate_manager=out.coords_man)
else:
return out
@@ -202,7 +202,7 @@ class ResUNetBNF(ResUNet):
class ResUNetBNFX(ResUNetBNF):
- REGION_TYPE = ME.RegionType.HYPERCROSS
+ REGION_TYPE = ME.RegionType.HYPER_CROSS
class ResUNetSP(ME.MinkowskiNetwork):
@@ -213,7 +213,7 @@ class ResUNetSP(ME.MinkowskiNetwork):
# None b1, b2, b3, btr3, btr2
# 1 2 3 -3 -2 -1
DEPTHS = [None, 1, 1, 1, 1, 1, None]
- REGION_TYPE = ME.RegionType.HYPERCUBE
+ REGION_TYPE = ME.RegionType.HYPER_CUBE
# To use the model, must call initialize_coords before forward pass.
# Once data is processed, call clear to reset the model before calling initialize_coords
@@ -238,7 +238,7 @@ class ResUNetSP(ME.MinkowskiNetwork):
kernel_size=conv1_kernel_size,
stride=1,
dilation=1,
- has_bias=False,
+ bias=False,
region_type=REGION_TYPE,
dimension=D)
self.norm1 = get_norm(NORM_TYPE, CHANNELS[1], bn_momentum=bn_momentum, dimension=D)
@@ -260,7 +260,7 @@ class ResUNetSP(ME.MinkowskiNetwork):
kernel_size=1,
stride=1,
dilation=1,
- has_bias=False,
+ bias=False,
dimension=D)
self.norm2 = get_norm(NORM_TYPE, CHANNELS[2], bn_momentum=bn_momentum, dimension=D)
@@ -281,7 +281,7 @@ class ResUNetSP(ME.MinkowskiNetwork):
kernel_size=1,
stride=1,
dilation=1,
- has_bias=False,
+ bias=False,
dimension=D)
self.norm3 = get_norm(NORM_TYPE, CHANNELS[3], bn_momentum=bn_momentum, dimension=D)
@@ -302,7 +302,7 @@ class ResUNetSP(ME.MinkowskiNetwork):
kernel_size=1,
stride=1,
dilation=1,
- has_bias=False,
+ bias=False,
dimension=D)
self.norm3_tr = get_norm(
NORM_TYPE, TR_CHANNELS[3], bn_momentum=bn_momentum, dimension=D)
@@ -324,7 +324,7 @@ class ResUNetSP(ME.MinkowskiNetwork):
kernel_size=1,
stride=1,
dilation=1,
- has_bias=False,
+ bias=False,
region_type=REGION_TYPE,
dimension=D)
self.norm2_tr = get_norm(
@@ -346,7 +346,7 @@ class ResUNetSP(ME.MinkowskiNetwork):
kernel_size=1,
stride=1,
dilation=1,
- has_bias=False,
+ bias=False,
region_type=REGION_TYPE,
dimension=D)
@@ -358,7 +358,7 @@ class ResUNetSP(ME.MinkowskiNetwork):
kernel_size=1,
stride=1,
dilation=1,
- has_bias=True,
+ bias=True,
dimension=D)
def forward(self, x):
@@ -402,14 +402,14 @@ class ResUNetSP(ME.MinkowskiNetwork):
if self.normalize_feature:
return ME.SparseTensor(
out.F / (torch.norm(out.F, p=2, dim=1, keepdim=True) + 1e-8),
- coords_key=out.coords_key,
- coords_manager=out.coords_man)
+ coordinate_map_key=out.coords_key,
+ coordinate_manager=out.coords_man)
else:
return out
class ResUNetBNSPC(ResUNetSP):
- REGION_TYPE = ME.RegionType.HYPERCROSS
+ REGION_TYPE = ME.RegionType.HYPER_CROSS
class ResUNetINBNSPC(ResUNetBNSPC):
@@ -421,7 +421,7 @@ class ResUNet2(ME.MinkowskiNetwork):
BLOCK_NORM_TYPE = 'BN'
CHANNELS = [None, 32, 64, 128, 256]
TR_CHANNELS = [None, 32, 64, 64, 128]
- REGION_TYPE = ME.RegionType.HYPERCUBE
+ REGION_TYPE = ME.RegionType.HYPER_CUBE
# To use the model, must call initialize_coords before forward pass.
# Once data is processed, call clear to reset the model before calling initialize_coords
@@ -445,7 +445,7 @@ class ResUNet2(ME.MinkowskiNetwork):
kernel_size=conv1_kernel_size,
stride=1,
dilation=1,
- has_bias=False,
+ bias=False,
region_type=REGION_TYPE,
dimension=D)
self.norm1 = get_norm(NORM_TYPE, CHANNELS[1], bn_momentum=bn_momentum, dimension=D)
@@ -464,7 +464,7 @@ class ResUNet2(ME.MinkowskiNetwork):
kernel_size=3,
stride=2,
dilation=1,
- has_bias=False,
+ bias=False,
region_type=REGION_TYPE,
dimension=D)
self.norm2 = get_norm(NORM_TYPE, CHANNELS[2], bn_momentum=bn_momentum, dimension=D)
@@ -483,7 +483,7 @@ class ResUNet2(ME.MinkowskiNetwork):
kernel_size=3,
stride=2,
dilation=1,
- has_bias=False,
+ bias=False,
region_type=REGION_TYPE,
dimension=D)
self.norm3 = get_norm(NORM_TYPE, CHANNELS[3], bn_momentum=bn_momentum, dimension=D)
@@ -502,7 +502,7 @@ class ResUNet2(ME.MinkowskiNetwork):
kernel_size=3,
stride=2,
dilation=1,
- has_bias=False,
+ bias=False,
region_type=REGION_TYPE,
dimension=D)
self.norm4 = get_norm(NORM_TYPE, CHANNELS[4], bn_momentum=bn_momentum, dimension=D)
@@ -521,7 +521,7 @@ class ResUNet2(ME.MinkowskiNetwork):
kernel_size=3,
stride=2,
dilation=1,
- has_bias=False,
+ bias=False,
region_type=REGION_TYPE,
dimension=D)
self.norm4_tr = get_norm(
@@ -541,7 +541,7 @@ class ResUNet2(ME.MinkowskiNetwork):
kernel_size=3,
stride=2,
dilation=1,
- has_bias=False,
+ bias=False,
region_type=REGION_TYPE,
dimension=D)
self.norm3_tr = get_norm(
@@ -561,7 +561,7 @@ class ResUNet2(ME.MinkowskiNetwork):
kernel_size=3,
stride=2,
dilation=1,
- has_bias=False,
+ bias=False,
region_type=REGION_TYPE,
dimension=D)
self.norm2_tr = get_norm(
@@ -581,7 +581,7 @@ class ResUNet2(ME.MinkowskiNetwork):
kernel_size=1,
stride=1,
dilation=1,
- has_bias=False,
+ bias=False,
dimension=D)
# self.block1_tr = BasicBlockBN(TR_CHANNELS[1], TR_CHANNELS[1], bn_momentum=bn_momentum, D=D)
@@ -592,7 +592,7 @@ class ResUNet2(ME.MinkowskiNetwork):
kernel_size=1,
stride=1,
dilation=1,
- has_bias=True,
+ bias=True,
dimension=D)
def forward(self, x):
@@ -643,8 +643,8 @@ class ResUNet2(ME.MinkowskiNetwork):
if self.normalize_feature:
return ME.SparseTensor(
out.F / (torch.norm(out.F, p=2, dim=1, keepdim=True) + 1e-8),
- coords_key=out.coords_key,
- coords_manager=out.coords_man)
+ coordinate_map_key=out.coordinate_map_key,
+ coordinate_manager=out.coordinate_manager)
else:
return out
@@ -666,7 +666,7 @@ class ResUNetBN2C(ResUNet2):
class ResUNetBN2CX(ResUNetBN2C):
- REGION_TYPE = ME.RegionType.HYPERCROSS
+ REGION_TYPE = ME.RegionType.HYPER_CROSS
class ResUNetBN2D(ResUNet2):
@@ -688,7 +688,7 @@ class ResUNetBN2F(ResUNet2):
class ResUNetBN2FX(ResUNetBN2F):
- REGION_TYPE = ME.RegionType.HYPERCROSS
+ REGION_TYPE = ME.RegionType.HYPER_CROSS
class ResUNet2v2(ME.MinkowskiNetwork):
@@ -699,7 +699,7 @@ class ResUNet2v2(ME.MinkowskiNetwork):
# None b1, b2, b3, b4, btr4, btr3, btr2
# 1 2 3 4,-4,-3,-2,-1
DEPTHS = [None, 1, 1, 1, 1, 1, 1, 1, None]
- REGION_TYPE = ME.RegionType.HYPERCUBE
+ REGION_TYPE = ME.RegionType.HYPER_CUBE
# To use the model, must call initialize_coords before forward pass.
# Once data is processed, call clear to reset the model before calling initialize_coords
@@ -724,7 +724,7 @@ class ResUNet2v2(ME.MinkowskiNetwork):
kernel_size=conv1_kernel_size,
stride=1,
dilation=1,
- has_bias=False,
+ bias=False,
dimension=D)
self.norm1 = get_norm(NORM_TYPE, CHANNELS[1], bn_momentum=bn_momentum, dimension=D)
@@ -743,7 +743,7 @@ class ResUNet2v2(ME.MinkowskiNetwork):
kernel_size=3,
stride=2,
dilation=1,
- has_bias=False,
+ bias=False,
dimension=D)
self.norm2 = get_norm(NORM_TYPE, CHANNELS[2], bn_momentum=bn_momentum, dimension=D)
@@ -762,7 +762,7 @@ class ResUNet2v2(ME.MinkowskiNetwork):
kernel_size=3,
stride=2,
dilation=1,
- has_bias=False,
+ bias=False,
dimension=D)
self.norm3 = get_norm(NORM_TYPE, CHANNELS[3], bn_momentum=bn_momentum, dimension=D)
@@ -781,7 +781,7 @@ class ResUNet2v2(ME.MinkowskiNetwork):
kernel_size=3,
stride=2,
dilation=1,
- has_bias=False,
+ bias=False,
dimension=D)
self.norm4 = get_norm(NORM_TYPE, CHANNELS[4], bn_momentum=bn_momentum, dimension=D)
@@ -800,7 +800,7 @@ class ResUNet2v2(ME.MinkowskiNetwork):
kernel_size=3,
stride=2,
dilation=1,
- has_bias=False,
+ bias=False,
dimension=D)
self.norm4_tr = get_norm(
NORM_TYPE, TR_CHANNELS[4], bn_momentum=bn_momentum, dimension=D)
@@ -820,7 +820,7 @@ class ResUNet2v2(ME.MinkowskiNetwork):
kernel_size=3,
stride=2,
dilation=1,
- has_bias=False,
+ bias=False,
dimension=D)
self.norm3_tr = get_norm(
NORM_TYPE, TR_CHANNELS[3], bn_momentum=bn_momentum, dimension=D)
@@ -840,7 +840,7 @@ class ResUNet2v2(ME.MinkowskiNetwork):
kernel_size=3,
stride=2,
dilation=1,
- has_bias=False,
+ bias=False,
dimension=D)
self.norm2_tr = get_norm(
NORM_TYPE, TR_CHANNELS[2], bn_momentum=bn_momentum, dimension=D)
@@ -860,7 +860,7 @@ class ResUNet2v2(ME.MinkowskiNetwork):
kernel_size=1,
stride=1,
dilation=1,
- has_bias=False,
+ bias=False,
dimension=D)
# self.block1_tr = BasicBlockBN(TR_CHANNELS[1], TR_CHANNELS[1], bn_momentum=bn_momentum, dimension=D)
@@ -871,7 +871,7 @@ class ResUNet2v2(ME.MinkowskiNetwork):
kernel_size=1,
stride=1,
dilation=1,
- has_bias=True,
+ bias=True,
dimension=D)
self.weight_initialization()
@@ -932,8 +932,8 @@ class ResUNet2v2(ME.MinkowskiNetwork):
if self.normalize_feature:
return ME.SparseTensor(
out.F / (torch.norm(out.F, p=2, dim=1, keepdim=True) + 1e-8),
- coords_key=out.coords_key,
- coords_manager=out.coords_man)
+ coordinate_map_key=out.coords_key,
+ coordinate_manager=out.coords_man)
else:
return out
@@ -977,7 +977,7 @@ class ResUNet2SP(ME.MinkowskiNetwork):
BLOCK_NORM_TYPE = 'BN'
CHANNELS = [None, 32, 64, 128, 256]
TR_CHANNELS = [None, 32, 64, 64, 128]
- REGION_TYPE = ME.RegionType.HYPERCUBE
+ REGION_TYPE = ME.RegionType.HYPER_CUBE
# To use the model, must call initialize_coords before forward pass.
# Once data is processed, call clear to reset the model before calling initialize_coords
@@ -1001,8 +1001,8 @@ class ResUNet2SP(ME.MinkowskiNetwork):
kernel_size=conv1_kernel_size,
stride=1,
dilation=1,
- has_bias=False,
- region_type=ME.RegionType.HYPERCUBE,
+ bias=False,
+ region_type=ME.RegionType.HYPER_CUBE,
dimension=D)
self.norm1 = get_norm(NORM_TYPE, CHANNELS[1], bn_momentum=bn_momentum, dimension=D)
@@ -1021,7 +1021,7 @@ class ResUNet2SP(ME.MinkowskiNetwork):
kernel_size=3,
stride=1,
dilation=1,
- has_bias=False,
+ bias=False,
region_type=REGION_TYPE,
dimension=D)
self.norm2 = get_norm(NORM_TYPE, CHANNELS[2], bn_momentum=bn_momentum, dimension=D)
@@ -1041,7 +1041,7 @@ class ResUNet2SP(ME.MinkowskiNetwork):
kernel_size=3,
stride=1,
dilation=1,
- has_bias=False,
+ bias=False,
region_type=REGION_TYPE,
dimension=D)
self.norm3 = get_norm(NORM_TYPE, CHANNELS[3], bn_momentum=bn_momentum, dimension=D)
@@ -1061,8 +1061,8 @@ class ResUNet2SP(ME.MinkowskiNetwork):
kernel_size=3,
stride=1,
dilation=1,
- has_bias=False,
- region_type=ME.RegionType.HYPERCUBE,
+ bias=False,
+ region_type=ME.RegionType.HYPER_CUBE,
dimension=D)
self.norm4 = get_norm(NORM_TYPE, CHANNELS[4], bn_momentum=bn_momentum, dimension=D)
@@ -1071,7 +1071,7 @@ class ResUNet2SP(ME.MinkowskiNetwork):
CHANNELS[4],
CHANNELS[4],
bn_momentum=bn_momentum,
- region_type=ME.RegionType.HYPERCUBE,
+ region_type=ME.RegionType.HYPER_CUBE,
dimension=D)
self.conv4_tr = conv_tr(
@@ -1080,8 +1080,8 @@ class ResUNet2SP(ME.MinkowskiNetwork):
kernel_size=3,
stride=2,
dilation=1,
- has_bias=False,
- region_type=ME.RegionType.HYPERCUBE,
+ bias=False,
+ region_type=ME.RegionType.HYPER_CUBE,
dimension=D)
self.norm4_tr = get_norm(
NORM_TYPE, TR_CHANNELS[4], bn_momentum=bn_momentum, dimension=D)
@@ -1100,7 +1100,7 @@ class ResUNet2SP(ME.MinkowskiNetwork):
kernel_size=3,
stride=2,
dilation=1,
- has_bias=False,
+ bias=False,
region_type=REGION_TYPE,
dimension=D)
self.norm3_tr = get_norm(
@@ -1120,7 +1120,7 @@ class ResUNet2SP(ME.MinkowskiNetwork):
kernel_size=3,
stride=2,
dilation=1,
- has_bias=False,
+ bias=False,
region_type=REGION_TYPE,
dimension=D)
self.norm2_tr = get_norm(
@@ -1140,7 +1140,7 @@ class ResUNet2SP(ME.MinkowskiNetwork):
kernel_size=1,
stride=1,
dilation=1,
- has_bias=False,
+ bias=False,
dimension=D)
# self.block1_tr = BasicBlockBN(TR_CHANNELS[1], TR_CHANNELS[1], bn_momentum=bn_momentum, D=D)
@@ -1151,7 +1151,7 @@ class ResUNet2SP(ME.MinkowskiNetwork):
kernel_size=1,
stride=1,
dilation=1,
- has_bias=True,
+ bias=True,
dimension=D)
def forward(self, x):
@@ -1205,8 +1205,8 @@ class ResUNet2SP(ME.MinkowskiNetwork):
if self.normalize_feature:
return ME.SparseTensor(
out.F / (torch.norm(out.F, p=2, dim=1, keepdim=True) + 1e-8),
- coords_key=out.coords_key,
- coords_manager=out.coords_man)
+ coordinate_map_key=out.coords_key,
+ coordinate_manager=out.coords_man)
else:
return out
@@ -1218,4 +1218,4 @@ class ResUNetBN2SPC(ResUNet2SP):
class ResUNetBN2SPCX(ResUNetBN2SPC):
- REGION_TYPE = ME.RegionType.HYPERCROSS
+ REGION_TYPE = ME.RegionType.HYPER_CROSS
diff --git a/scripts/train_3dmatch.sh b/scripts/train_3dmatch.sh
index 668a7ca..71a9cf0 100755
--- a/scripts/train_3dmatch.sh
+++ b/scripts/train_3dmatch.sh
@@ -64,8 +64,8 @@ python train.py \
$MISC_ARGS 2>&1 | tee -a $LOG
# Test
-python -m scripts.test_3dmatch \
- $MISC_ARGS \
- --threed_match_dir ${THREED_MATCH_DIR} \
- --weights ${OUT_DIR}/best_val_checkpoint.pth \
- 2>&1 | tee -a $LOG
+#python -m scripts.test_3dmatch \
+# $MISC_ARGS \
+# --threed_match_dir ${THREED_MATCH_DIR} \
+# --weights ${OUT_DIR}/best_val_checkpoint.pth \
+# 2>&1 | tee -a $LOG
root@3f73bd4901b9:/app/DeepGlobalRegistration# echo "" | tee -a $LOG
root@3f73bd4901b9:/app/DeepGlobalRegistration# nvidia-smi | tee -a $LOG
Tue Mar 2 12:10:42 2021
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 450.102.04 Driver Version: 450.102.04 CUDA Version: 11.0 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 GeForce RTX 2070 Off | 00000000:08:00.0 Off | N/A |
| 29% 31C P8 14W / 175W | 552MiB / 7981MiB | 5% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
+-----------------------------------------------------------------------------+