40 lines
1.2 KiB
Python
40 lines
1.2 KiB
Python
from argparse import ArgumentParser
|
|
|
|
from mmdet3d.apis import inference_segmentor, init_model, show_result_meshlab
|
|
|
|
|
|
def main():
|
|
parser = ArgumentParser()
|
|
parser.add_argument('pcd', help='Point cloud file')
|
|
parser.add_argument('config', help='Config file')
|
|
parser.add_argument('checkpoint', help='Checkpoint file')
|
|
parser.add_argument(
|
|
'--device', default='cuda:0', help='Device used for inference')
|
|
parser.add_argument(
|
|
'--out-dir', type=str, default='demo', help='dir to save results')
|
|
parser.add_argument(
|
|
'--show', action='store_true', help='show online visuliaztion results')
|
|
parser.add_argument(
|
|
'--snapshot',
|
|
action='store_true',
|
|
help='whether to save online visuliaztion results')
|
|
args = parser.parse_args()
|
|
|
|
# build the model from a config file and a checkpoint file
|
|
model = init_model(args.config, args.checkpoint, device=args.device)
|
|
# test a single image
|
|
result, data = inference_segmentor(model, args.pcd)
|
|
# show the results
|
|
show_result_meshlab(
|
|
data,
|
|
result,
|
|
args.out_dir,
|
|
show=args.show,
|
|
snapshot=args.snapshot,
|
|
task='seg',
|
|
palette=model.PALETTE)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
main()
|