filaPro/oneformer3d

error registering module

meehirmhatrepy opened this issue · 3 comments

(openmmlab) C:\Users\mmhatre\Downloads\oneformer3d-main (1)\oneformer3d-main>python tools/train.py configs/oneformer3d_1xb2_s3dis-area-5.py
03/21 11:43:37 - mmengine - INFO -

System environment:
sys.platform: win32
Python: 3.8.18 | packaged by conda-forge | (default, Dec 23 2023, 17:17:17) [MSC v.1929 64 bit (AMD64)]
CUDA available: True
MUSA available: False
numpy_random_seed: 1445522337
GPU 0: NVIDIA RTX 2000 Ada Generation Laptop GPU
CUDA_HOME: C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8
NVCC: Cuda compilation tools, release 11.8, V11.8.89
MSVC: Microsoft (R) C/C++ Optimizing Compiler Version 19.39.33521 for x64
GCC: n/a
PyTorch: 2.2.1+cu118
PyTorch compiling details: PyTorch built with:

  • C++ Version: 201703

  • MSVC 192930151

  • Intel(R) Math Kernel Library Version 2020.0.2 Product Build 20200624 for Intel(R) 64 architecture applications

  • Intel(R) MKL-DNN v3.3.2 (Git Hash 2dc95a2ad0841e29db8b22fbccaf3e5da7992b01)

  • OpenMP 2019

  • LAPACK is enabled (usually provided by MKL)

  • CPU capability usage: AVX2

  • CUDA Runtime 11.8

  • NVCC architecture flags: -gencode;arch=compute_37,code=sm_37;-gencode;arch=compute_50,code=sm_50;-gencode;arch=compute_60,code=sm_60;-gencode;arch=compute_61,code=sm_61;-gencode;arch=compute_70,code=sm_70;-gencode;arch=compute_75,code=sm_75;-gencode;arch=compute_80,code=sm_80;-gencode;arch=compute_86,code=sm_86;-gencode;arch=compute_90,code=sm_90;-gencode;arch=compute_37,code=compute_37

  • CuDNN 8.7

  • Magma 2.5.4

  • Build settings: BLAS_INFO=mkl, BUILD_TYPE=Release, CUDA_VERSION=11.8, CUDNN_VERSION=8.7.0, CXX_COMPILER=C:/actions-runner/_work/pytorch/pytorch/builder/windows/tmp_bin/sccache-cl.exe, CXX_FLAGS=/DWIN32 /D_WINDOWS /GR /EHsc /Zc:__cplusplus /bigobj /FS /utf-8 -DUSE_PTHREADPOOL -DNDEBUG -DUSE_KINETO -DLIBKINETO_NOCUPTI -DLIBKINETO_NOROCTRACER -DUSE_FBGEMM -DUSE_XNNPACK -DSYMBOLICATE_MOBILE_DEBUG_HANDLE /wd4624 /wd4068 /wd4067 /wd4267 /wd4661 /wd4717 /wd4244 /wd4804 /wd4273, LAPACK_INFO=mkl, PERF_WITH_AVX=1, PERF_WITH_AVX2=1, PERF_WITH_AVX512=1, TORCH_VERSION=2.2.1, USE_CUDA=ON, USE_CUDNN=ON, USE_EXCEPTION_PTR=1, USE_GFLAGS=OFF, USE_GLOG=OFF, USE_MKL=ON, USE_MKLDNN=ON, USE_MPI=OFF, USE_NCCL=OFF, USE_NNPACK=OFF, USE_OPENMP=ON, USE_ROCM=OFF, USE_ROCM_KERNEL_ASSERT=OFF,

    TorchVision: 0.17.1+cu118
    OpenCV: 4.9.0
    MMEngine: 0.10.3

Runtime environment:
cudnn_benchmark: False
mp_cfg: {'mp_start_method': 'fork', 'opencv_num_threads': 0}
dist_cfg: {'backend': 'nccl'}
seed: 1445522337
Distributed launcher: none
Distributed training: False
GPU number: 1

03/21 11:43:37 - mmengine - INFO - Config:
class_names = [
'ceiling',
'floor',
'wall',
'beam',
'column',
'window',
'door',
'table',
'chair',
'sofa',
'bookcase',
'board',
'clutter',
'unlabeled',
]
custom_hooks = [
dict(after_iter=True, type='EmptyCacheHook'),
]
custom_imports = dict(imports=[
'oneformer3d',
])
data_prefix = dict(
pts='points',
pts_instance_mask='instance_mask',
pts_semantic_mask='semantic_mask')
data_root = 'data/s3dis/'
dataset_type = 'S3DISSegDataset_'
default_hooks = dict(
checkpoint=dict(
scope='mmdet3d',
interval=16,
max_keep_ckpts=1,
rule='greater',
save_best=[
'all_ap_50%',
'miou',
],
type='CheckpointHook'),
logger=dict(scope='mmdet3d', interval=50, type='LoggerHook'),
param_scheduler=dict(scope='mmdet3d', type='ParamSchedulerHook'),
sampler_seed=dict(scope='mmdet3d', type='DistSamplerSeedHook'),
timer=dict(scope='mmdet3d', type='IterTimerHook'),
visualization=dict(scope='mmdet3d', type='Det3DVisualizationHook'))
default_scope = 'mmdet3d'
env_cfg = dict(
cudnn_benchmark=False,
dist_cfg=dict(backend='nccl'),
mp_cfg=dict(mp_start_method='fork', opencv_num_threads=0))
label2cat = dict({
0: 'ceiling',
1: 'floor',
10: 'bookcase',
11: 'board',
12: 'clutter',
13: 'unlabeled',
2: 'wall',
3: 'beam',
4: 'column',
5: 'window',
6: 'door',
7: 'table',
8: 'chair',
9: 'sofa'
})
launcher = 'none'
load_from = 'work_dirs/tmp/instance-only-oneformer3d_1xb2_scannet-and-structured3d.pth'
log_level = 'INFO'
log_processor = dict(
scope='mmdet3d', by_epoch=True, type='LogProcessor', window_size=50)
metric_meta = dict(
classes=[
'ceiling',
'floor',
'wall',
'beam',
'column',
'window',
'door',
'table',
'chair',
'sofa',
'bookcase',
'board',
'clutter',
'unlabeled',
],
dataset_name='S3DIS',
ignore_index=[
13,
],
label2cat=dict({
0: 'ceiling',
1: 'floor',
10: 'bookcase',
11: 'board',
12: 'clutter',
13: 'unlabeled',
2: 'wall',
3: 'beam',
4: 'column',
5: 'window',
6: 'door',
7: 'table',
8: 'chair',
9: 'sofa'
}))
model = dict(
backbone=dict(
num_planes=[
64,
128,
192,
256,
320,
],
return_blocks=True,
type='SpConvUNet'),
criterion=dict(
inst_criterion=dict(
fix_dice_loss_weight=True,
fix_mean_loss=True,
iter_matcher=True,
loss_weight=[
0.5,
1.0,
1.0,
0.5,
],
matcher=dict(
costs=[
dict(type='QueryClassificationCost', weight=0.5),
dict(type='MaskBCECost', weight=1.0),
dict(type='MaskDiceCost', weight=1.0),
],
type='HungarianMatcher'),
non_object_weight=0.05,
num_classes=13,
type='InstanceCriterion'),
num_semantic_classes=13,
sem_criterion=dict(loss_weight=5.0, type='S3DISSemanticCriterion'),
type='S3DISUnifiedCriterion'),
data_preprocessor=dict(type='Det3DDataPreprocessor'),
decoder=dict(
activation_fn='gelu',
attn_mask=True,
d_model=256,
dropout=0.0,
fix_attention=True,
hidden_dim=1024,
in_channels=64,
iter_pred=True,
num_classes=13,
num_heads=8,
num_instance_classes=13,
num_instance_queries=400,
num_layers=3,
num_semantic_queries=13,
objectness_flag=True,
type='QueryDecoder'),
in_channels=6,
min_spatial_shape=128,
num_channels=64,
num_classes=13,
test_cfg=dict(
inst_score_thr=0.0,
matrix_nms_kernel='linear',
nms=True,
npoint_thr=300,
num_sem_cls=13,
obj_normalization=True,
obj_normalization_thr=0.01,
pan_score_thr=0.4,
sp_score_thr=0.15,
stuff_cls=[
0,
1,
2,
3,
4,
5,
6,
12,
],
thing_cls=[
7,
8,
9,
10,
11,
],
topk_insts=450),
train_cfg=dict(),
type='S3DISOneFormer3D',
voxel_size=0.05)
num_channels = 64
num_instance_classes = 13
num_semantic_classes = 13
optim_wrapper = dict(
clip_grad=dict(max_norm=10, norm_type=2),
optimizer=dict(lr=0.0001, type='AdamW', weight_decay=0.05),
type='OptimWrapper')
param_scheduler = dict(begin=0, end=512, power=0.9, type='PolyLR')
resume = False
sem_mapping = [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
]
test_area = 5
test_cfg = dict(type='TestLoop')
test_dataloader = dict(
batch_size=1,
dataset=dict(
ann_file='s3dis_infos_Area_5.pkl',
backend_args=None,
box_type_3d='Depth',
data_prefix=dict(
pts='points',
pts_instance_mask='instance_mask',
pts_semantic_mask='semantic_mask'),
data_root='data/s3dis/',
pipeline=[
dict(
coord_type='DEPTH',
load_dim=6,
shift_height=False,
type='LoadPointsFromFile',
use_color=True,
use_dim=[
0,
1,
2,
3,
4,
5,
]),
dict(
type='LoadAnnotations3D',
with_bbox_3d=False,
with_label_3d=False,
with_mask_3d=True,
with_seg_3d=True),
dict(
flip=False,
img_scale=(
1333,
800,
),
pts_scale_ratio=1,
transforms=[
dict(
color_mean=[
127.5,
127.5,
127.5,
],
type='NormalizePointsColor_'),
],
type='MultiScaleFlipAug3D'),
dict(keys=[
'points',
], type='Pack3DDetInputs_'),
],
test_mode=True,
type='S3DISSegDataset_'),
num_workers=1,
persistent_workers=True,
sampler=dict(shuffle=False, type='DefaultSampler'))
test_evaluator = dict(
id_offset=65536,
inst_mapping=[
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
],
metric_meta=dict(
classes=[
'ceiling',
'floor',
'wall',
'beam',
'column',
'window',
'door',
'table',
'chair',
'sofa',
'bookcase',
'board',
'clutter',
'unlabeled',
],
dataset_name='S3DIS',
ignore_index=[
13,
],
label2cat=dict({
0: 'ceiling',
1: 'floor',
10: 'bookcase',
11: 'board',
12: 'clutter',
13: 'unlabeled',
2: 'wall',
3: 'beam',
4: 'column',
5: 'window',
6: 'door',
7: 'table',
8: 'chair',
9: 'sofa'
})),
min_num_points=1,
sem_mapping=[
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
],
stuff_class_inds=[
0,
1,
2,
3,
4,
5,
6,
12,
],
submission_prefix_instance=None,
submission_prefix_semantic=None,
thing_class_inds=[
7,
8,
9,
10,
11,
],
type='UnifiedSegMetric')
test_pipeline = [
dict(
coord_type='DEPTH',
load_dim=6,
shift_height=False,
type='LoadPointsFromFile',
use_color=True,
use_dim=[
0,
1,
2,
3,
4,
5,
]),
dict(
type='LoadAnnotations3D',
with_bbox_3d=False,
with_label_3d=False,
with_mask_3d=True,
with_seg_3d=True),
dict(
flip=False,
img_scale=(
1333,
800,
),
pts_scale_ratio=1,
transforms=[
dict(
color_mean=[
127.5,
127.5,
127.5,
],
type='NormalizePointsColor_'),
],
type='MultiScaleFlipAug3D'),
dict(keys=[
'points',
], type='Pack3DDetInputs_'),
]
train_area = [
1,
2,
3,
4,
6,
]
train_cfg = dict(max_epochs=512, type='EpochBasedTrainLoop', val_interval=16)
train_dataloader = dict(
batch_size=2,
dataset=dict(
datasets=[
dict(
ann_file='s3dis_infos_Area_1.pkl',
backend_args=None,
box_type_3d='Depth',
data_prefix=dict(
pts='points',
pts_instance_mask='instance_mask',
pts_semantic_mask='semantic_mask'),
data_root='data/s3dis/',
filter_empty_gt=True,
pipeline=[
dict(
coord_type='DEPTH',
load_dim=6,
shift_height=False,
type='LoadPointsFromFile',
use_color=True,
use_dim=[
0,
1,
2,
3,
4,
5,
]),
dict(
type='LoadAnnotations3D',
with_bbox_3d=False,
with_label_3d=False,
with_mask_3d=True,
with_seg_3d=True),
dict(num_points=180000, type='PointSample_'),
dict(num_classes=13, type='PointInstClassMapping_'),
dict(
flip_ratio_bev_horizontal=0.5,
flip_ratio_bev_vertical=0.5,
sync_2d=False,
type='RandomFlip3D'),
dict(
rot_range=[
0.0,
0.0,
],
scale_ratio_range=[
0.9,
1.1,
],
shift_height=False,
translation_std=[
0.1,
0.1,
0.1,
],
type='GlobalRotScaleTrans'),
dict(
color_mean=[
127.5,
127.5,
127.5,
],
type='NormalizePointsColor_'),
dict(
keys=[
'points',
'gt_labels_3d',
'pts_semantic_mask',
'pts_instance_mask',
],
type='Pack3DDetInputs_'),
],
type='S3DISSegDataset_'),
dict(
ann_file='s3dis_infos_Area_2.pkl',
backend_args=None,
box_type_3d='Depth',
data_prefix=dict(
pts='points',
pts_instance_mask='instance_mask',
pts_semantic_mask='semantic_mask'),
data_root='data/s3dis/',
filter_empty_gt=True,
pipeline=[
dict(
coord_type='DEPTH',
load_dim=6,
shift_height=False,
type='LoadPointsFromFile',
use_color=True,
use_dim=[
0,
1,
2,
3,
4,
5,
]),
dict(
type='LoadAnnotations3D',
with_bbox_3d=False,
with_label_3d=False,
with_mask_3d=True,
with_seg_3d=True),
dict(num_points=180000, type='PointSample_'),
dict(num_classes=13, type='PointInstClassMapping_'),
dict(
flip_ratio_bev_horizontal=0.5,
flip_ratio_bev_vertical=0.5,
sync_2d=False,
type='RandomFlip3D'),
dict(
rot_range=[
0.0,
0.0,
],
scale_ratio_range=[
0.9,
1.1,
],
shift_height=False,
translation_std=[
0.1,
0.1,
0.1,
],
type='GlobalRotScaleTrans'),
dict(
color_mean=[
127.5,
127.5,
127.5,
],
type='NormalizePointsColor_'),
dict(
keys=[
'points',
'gt_labels_3d',
'pts_semantic_mask',
'pts_instance_mask',
],
type='Pack3DDetInputs_'),
],
type='S3DISSegDataset_'),
dict(
ann_file='s3dis_infos_Area_3.pkl',
backend_args=None,
box_type_3d='Depth',
data_prefix=dict(
pts='points',
pts_instance_mask='instance_mask',
pts_semantic_mask='semantic_mask'),
data_root='data/s3dis/',
filter_empty_gt=True,
pipeline=[
dict(
coord_type='DEPTH',
load_dim=6,
shift_height=False,
type='LoadPointsFromFile',
use_color=True,
use_dim=[
0,
1,
2,
3,
4,
5,
]),
dict(
type='LoadAnnotations3D',
with_bbox_3d=False,
with_label_3d=False,
with_mask_3d=True,
with_seg_3d=True),
dict(num_points=180000, type='PointSample_'),
dict(num_classes=13, type='PointInstClassMapping_'),
dict(
flip_ratio_bev_horizontal=0.5,
flip_ratio_bev_vertical=0.5,
sync_2d=False,
type='RandomFlip3D'),
dict(
rot_range=[
0.0,
0.0,
],
scale_ratio_range=[
0.9,
1.1,
],
shift_height=False,
translation_std=[
0.1,
0.1,
0.1,
],
type='GlobalRotScaleTrans'),
dict(
color_mean=[
127.5,
127.5,
127.5,
],
type='NormalizePointsColor_'),
dict(
keys=[
'points',
'gt_labels_3d',
'pts_semantic_mask',
'pts_instance_mask',
],
type='Pack3DDetInputs_'),
],
type='S3DISSegDataset_'),
dict(
ann_file='s3dis_infos_Area_4.pkl',
backend_args=None,
box_type_3d='Depth',
data_prefix=dict(
pts='points',
pts_instance_mask='instance_mask',
pts_semantic_mask='semantic_mask'),
data_root='data/s3dis/',
filter_empty_gt=True,
pipeline=[
dict(
coord_type='DEPTH',
load_dim=6,
shift_height=False,
type='LoadPointsFromFile',
use_color=True,
use_dim=[
0,
1,
2,
3,
4,
5,
]),
dict(
type='LoadAnnotations3D',
with_bbox_3d=False,
with_label_3d=False,
with_mask_3d=True,
with_seg_3d=True),
dict(num_points=180000, type='PointSample_'),
dict(num_classes=13, type='PointInstClassMapping_'),
dict(
flip_ratio_bev_horizontal=0.5,
flip_ratio_bev_vertical=0.5,
sync_2d=False,
type='RandomFlip3D'),
dict(
rot_range=[
0.0,
0.0,
],
scale_ratio_range=[
0.9,
1.1,
],
shift_height=False,
translation_std=[
0.1,
0.1,
0.1,
],
type='GlobalRotScaleTrans'),
dict(
color_mean=[
127.5,
127.5,
127.5,
],
type='NormalizePointsColor_'),
dict(
keys=[
'points',
'gt_labels_3d',
'pts_semantic_mask',
'pts_instance_mask',
],
type='Pack3DDetInputs_'),
],
type='S3DISSegDataset_'),
dict(
ann_file='s3dis_infos_Area_6.pkl',
backend_args=None,
box_type_3d='Depth',
data_prefix=dict(
pts='points',
pts_instance_mask='instance_mask',
pts_semantic_mask='semantic_mask'),
data_root='data/s3dis/',
filter_empty_gt=True,
pipeline=[
dict(
coord_type='DEPTH',
load_dim=6,
shift_height=False,
type='LoadPointsFromFile',
use_color=True,
use_dim=[
0,
1,
2,
3,
4,
5,
]),
dict(
type='LoadAnnotations3D',
with_bbox_3d=False,
with_label_3d=False,
with_mask_3d=True,
with_seg_3d=True),
dict(num_points=180000, type='PointSample_'),
dict(num_classes=13, type='PointInstClassMapping_'),
dict(
flip_ratio_bev_horizontal=0.5,
flip_ratio_bev_vertical=0.5,
sync_2d=False,
type='RandomFlip3D'),
dict(
rot_range=[
0.0,
0.0,
],
scale_ratio_range=[
0.9,
1.1,
],
shift_height=False,
translation_std=[
0.1,
0.1,
0.1,
],
type='GlobalRotScaleTrans'),
dict(
color_mean=[
127.5,
127.5,
127.5,
],
type='NormalizePointsColor_'),
dict(
keys=[
'points',
'gt_labels_3d',
'pts_semantic_mask',
'pts_instance_mask',
],
type='Pack3DDetInputs_'),
],
type='S3DISSegDataset_'),
],
type='ConcatDataset'),
num_workers=3,
persistent_workers=True,
sampler=dict(shuffle=True, type='DefaultSampler'))
train_pipeline = [
dict(
coord_type='DEPTH',
load_dim=6,
shift_height=False,
type='LoadPointsFromFile',
use_color=True,
use_dim=[
0,
1,
2,
3,
4,
5,
]),
dict(
type='LoadAnnotations3D',
with_bbox_3d=False,
with_label_3d=False,
with_mask_3d=True,
with_seg_3d=True),
dict(num_points=180000, type='PointSample_'),
dict(num_classes=13, type='PointInstClassMapping_'),
dict(
flip_ratio_bev_horizontal=0.5,
flip_ratio_bev_vertical=0.5,
sync_2d=False,
type='RandomFlip3D'),
dict(
rot_range=[
0.0,
0.0,
],
scale_ratio_range=[
0.9,
1.1,
],
shift_height=False,
translation_std=[
0.1,
0.1,
0.1,
],
type='GlobalRotScaleTrans'),
dict(color_mean=[
127.5,
127.5,
127.5,
], type='NormalizePointsColor_'),
dict(
keys=[
'points',
'gt_labels_3d',
'pts_semantic_mask',
'pts_instance_mask',
],
type='Pack3DDetInputs_'),
]
val_cfg = dict(type='ValLoop')
val_dataloader = dict(
batch_size=1,
dataset=dict(
ann_file='s3dis_infos_Area_5.pkl',
backend_args=None,
box_type_3d='Depth',
data_prefix=dict(
pts='points',
pts_instance_mask='instance_mask',
pts_semantic_mask='semantic_mask'),
data_root='data/s3dis/',
pipeline=[
dict(
coord_type='DEPTH',
load_dim=6,
shift_height=False,
type='LoadPointsFromFile',
use_color=True,
use_dim=[
0,
1,
2,
3,
4,
5,
]),
dict(
type='LoadAnnotations3D',
with_bbox_3d=False,
with_label_3d=False,
with_mask_3d=True,
with_seg_3d=True),
dict(
flip=False,
img_scale=(
1333,
800,
),
pts_scale_ratio=1,
transforms=[
dict(
color_mean=[
127.5,
127.5,
127.5,
],
type='NormalizePointsColor_'),
],
type='MultiScaleFlipAug3D'),
dict(keys=[
'points',
], type='Pack3DDetInputs_'),
],
test_mode=True,
type='S3DISSegDataset_'),
num_workers=1,
persistent_workers=True,
sampler=dict(shuffle=False, type='DefaultSampler'))
val_evaluator = dict(
id_offset=65536,
inst_mapping=[
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
],
metric_meta=dict(
classes=[
'ceiling',
'floor',
'wall',
'beam',
'column',
'window',
'door',
'table',
'chair',
'sofa',
'bookcase',
'board',
'clutter',
'unlabeled',
],
dataset_name='S3DIS',
ignore_index=[
13,
],
label2cat=dict({
0: 'ceiling',
1: 'floor',
10: 'bookcase',
11: 'board',
12: 'clutter',
13: 'unlabeled',
2: 'wall',
3: 'beam',
4: 'column',
5: 'window',
6: 'door',
7: 'table',
8: 'chair',
9: 'sofa'
})),
min_num_points=1,
sem_mapping=[
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
],
stuff_class_inds=[
0,
1,
2,
3,
4,
5,
6,
12,
],
submission_prefix_instance=None,
submission_prefix_semantic=None,
thing_class_inds=[
7,
8,
9,
10,
11,
],
type='UnifiedSegMetric')
work_dir = './work_dirs\oneformer3d_1xb2_s3dis-area-5'

Traceback (most recent call last):
File "tools/train.py", line 136, in
main()
File "tools/train.py", line 125, in main
runner = Runner.from_cfg(cfg)
File "C:\Users\mmhatre\AppData\Local\anaconda3\envs\openmmlab\lib\site-packages\mmengine\runner\runner.py", line 462, in from_cfg
runner = cls(
File "C:\Users\mmhatre\AppData\Local\anaconda3\envs\openmmlab\lib\site-packages\mmengine\runner\runner.py", line 429, in init
self.model = self.build_model(model)
File "C:\Users\mmhatre\AppData\Local\anaconda3\envs\openmmlab\lib\site-packages\mmengine\runner\runner.py", line 836, in build_model
model = MODELS.build(model)
File "C:\Users\mmhatre\AppData\Local\anaconda3\envs\openmmlab\lib\site-packages\mmengine\registry\registry.py", line 570, in build
return self.build_func(cfg, *args, **kwargs, registry=self)
File "C:\Users\mmhatre\AppData\Local\anaconda3\envs\openmmlab\lib\site-packages\mmengine\registry\build_functions.py", line 232, in build_model_from_cfg
return build_from_cfg(cfg, registry, default_args)
File "C:\Users\mmhatre\AppData\Local\anaconda3\envs\openmmlab\lib\site-packages\mmengine\registry\build_functions.py", line 100, in build_from_cfg
raise KeyError(
KeyError: 'S3DISOneFormer3D is not in the mmdet3d::model registry. Please check whether the value of S3DISOneFormer3D is correct or it was registered as expected. More details can be found at https://mmengine.readthedocs.io/en/latest/advanced_tutorials/config.html#import-the-custom-module'

(openmmlab) C:\Users\mmhatre\Downloads\oneformer3d-main (1)\oneformer3d-main>python tools/train.py configs/oneformer3d_1xb2_s3dis-area-5.py
Traceback (most recent call last):
File "tools/train.py", line 15, in
MODELS.module_dict['S3DISOneFormer3D']
KeyError: 'S3DISOneFormer3D'

Please follow #17.

Would you please help me with specific steps to do?
I am not able to follow #17 or #10.
really appreciate the help.

So adding PYTHONPATH before the script doesn't fix the problem?

Btw, I also notices that you are using much recent versions of pytorch and mmengine, that we use. Our versions are set in Dockerfile.