PanopticSegForLargeScalePointCloud icon indicating copy to clipboard operation
PanopticSegForLargeScalePointCloud copied to clipboard

for instance dataset after 31 epochs of training

Open aaaaasleep opened this issue 2 years ago • 5 comments

Thanks for your work, but we ran into a difficult issue while using it. We look forward to hearing from you. Here is the problem description: (1) Entering the scorer unet network at 31 epochs, an epoch takes an hour and a half, and is now at 42 epochs, and after that is the same speed to 150 epochs? (2) In the area4_ablation_3heads_5.yaml file PointGroup:prepare_epoch: 120 and scorer_unet:prepare_epoch: 30 I don't quite understand the meaning of these two, I hope you can answer it! Looking forward to your reply, thank you.

aaaaasleep avatar Jan 17 '24 02:01 aaaaasleep

Hi,

  1. Yes, after 30 epochs, the scorenet is integrated into the training process. Thus, the speed will be about the same.
  2. In the file you mentioned, there are two models, one called PointGroup and another called PointGroup-PAPER. We are using PointGroup-PAPER, so you should focus on the settings and parameters specified for PointGroup-PAPER only. Hope it helps.

bxiang233 avatar Apr 12 '24 05:04 bxiang233

Thank you for your work. I'm having problems with the evaluation, he outputs all nan and doesn't generate the 3d forest segmentation rendering properly, here's the result of the evaluation.

evaluation_stats_FOR.py:170: RuntimeWarning: invalid value encountered in double_scalars iou = true_positive_classes[i] / float(gt_classes[i] + positive_classes[i] - true_positive_classes[i]) evaluation_stats_FOR.py:173: RuntimeWarning: invalid value encountered in double_scalars log_string('Semantic Segmentation oAcc: {}'.format(sum(true_positive_classes) / float(sum(positive_classes)))) Semantic Segmentation oAcc: nan evaluation_stats_FOR.py:176: RuntimeWarning: invalid value encountered in true_divide np.mean(true_positive_classes[sem_classcount] / gt_classes[sem_classcount]))) Semantic Segmentation mAcc: nan Semantic Segmentation IoU: [nan, nan, nan] Semantic Segmentation mIoU: nan

/root/miniconda3/envs/torchpoint3denv/lib/python3.8/site-packages/numpy/core/fromnumeric.py:3419: RuntimeWarning: Mean of empty slice. return _methods._mean(a, axis=axis, dtype=dtype, /root/miniconda3/envs/torchpoint3denv/lib/python3.8/site-packages/numpy/core/_methods.py:188: RuntimeWarning: invalid value encountered in double_scalars ret = ret.dtype.type(ret / rcount) evaluation_stats_FOR.py:199: DeprecationWarning: np.float is a deprecated alias for the builtin float. To silence this warning, use float by itself. Doing this will not modify any behavior and is safe. If you specifically wanted the numpy scalar type, use np.float64 here. Deprecated in NumPy 1.20; for more details and guidance: https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations tp = np.asarray(tpsins[i_sem]).astype(np.float) evaluation_stats_FOR.py:200: DeprecationWarning: np.float is a deprecated alias for the builtin float. To silence this warning, use float by itself. Doing this will not modify any behavior and is safe. If you specifically wanted the numpy scalar type, use np.float64 here. Deprecated in NumPy 1.20; for more details and guidance: https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations fp = np.asarray(fpsins[i_sem]).astype(np.float) evaluation_stats_FOR.py:204: RuntimeWarning: invalid value encountered in double_scalars rec = tp / total_gt_ins[i_sem] Instance Segmentation: Instance Segmentation MUCov: [nan] Instance Segmentation mMUCov: nan Instance Segmentation MWCov: [nan] Instance Segmentation mMWCov: nan Instance Segmentation Precision: [0.] Instance Segmentation mPrecision: 0.0 Instance Segmentation Recall: [nan] Instance Segmentation mRecall: nan Instance Segmentation F1 score: nan Instance Segmentation RQ: [ 0. nan] Instance Segmentation meanRQ: nan Instance Segmentation SQ: [0. 0.] Instance Segmentation meanSQ: 0.0 Instance Segmentation PQ: [ 0. nan] Instance Segmentation meanPQ: nan Instance Segmentation PQ star: [nan nan] Instance Segmentation mean PQ star: nan Instance Segmentation RQ (things): [nan] Instance Segmentation meanRQ (things): nan Instance Segmentation SQ (things): [0.] Instance Segmentation meanSQ (things): 0.0 Instance Segmentation PQ (things): [nan] Instance Segmentation meanPQ (things): nan Instance Segmentation RQ (stuff): [0.] Instance Segmentation meanRQ (stuff): 0.0 Instance Segmentation SQ (stuff): [0.] Instance Segmentation meanSQ (stuff): 0.0 Instance Segmentation PQ (stuff): [0.] Instance Segmentation meanPQ (stuff): 0.0

My encountered problems are as follows:

  1. The visualization of assessment indicators and forests is not generated properly in my code
  2. there are no files in the training generated viz folder, what is causing this problem I hope you can help me solve these problems, thanks again for your hard work!

aaaaasleep avatar May 14 '24 08:05 aaaaasleep

Thank you for your work. I'm having problems with the evaluation, he outputs all nan and doesn't generate the 3d forest segmentation rendering properly, here's the result of the evaluation.

evaluation_stats_FOR.py:170: RuntimeWarning: invalid value encountered in double_scalars iou = true_positive_classes[i] / float(gt_classes[i] + positive_classes[i] - true_positive_classes[i]) evaluation_stats_FOR.py:173: RuntimeWarning: invalid value encountered in double_scalars log_string('Semantic Segmentation oAcc: {}'.format(sum(true_positive_classes) / float(sum(positive_classes)))) Semantic Segmentation oAcc: nan evaluation_stats_FOR.py:176: RuntimeWarning: invalid value encountered in true_divide np.mean(true_positive_classes[sem_classcount] / gt_classes[sem_classcount]))) Semantic Segmentation mAcc: nan Semantic Segmentation IoU: [nan, nan, nan] Semantic Segmentation mIoU: nan

/root/miniconda3/envs/torchpoint3denv/lib/python3.8/site-packages/numpy/core/fromnumeric.py:3419: RuntimeWarning: Mean of empty slice. return _methods._mean(a, axis=axis, dtype=dtype, /root/miniconda3/envs/torchpoint3denv/lib/python3.8/site-packages/numpy/core/_methods.py:188: RuntimeWarning: invalid value encountered in double_scalars ret = ret.dtype.type(ret / rcount) evaluation_stats_FOR.py:199: DeprecationWarning: np.float is a deprecated alias for the builtin float. To silence this warning, use float by itself. Doing this will not modify any behavior and is safe. If you specifically wanted the numpy scalar type, use np.float64 here. Deprecated in NumPy 1.20; for more details and guidance: https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations tp = np.asarray(tpsins[i_sem]).astype(np.float) evaluation_stats_FOR.py:200: DeprecationWarning: np.float is a deprecated alias for the builtin float. To silence this warning, use float by itself. Doing this will not modify any behavior and is safe. If you specifically wanted the numpy scalar type, use np.float64 here. Deprecated in NumPy 1.20; for more details and guidance: https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations fp = np.asarray(fpsins[i_sem]).astype(np.float) evaluation_stats_FOR.py:204: RuntimeWarning: invalid value encountered in double_scalars rec = tp / total_gt_ins[i_sem] Instance Segmentation: Instance Segmentation MUCov: [nan] Instance Segmentation mMUCov: nan Instance Segmentation MWCov: [nan] Instance Segmentation mMWCov: nan Instance Segmentation Precision: [0.] Instance Segmentation mPrecision: 0.0 Instance Segmentation Recall: [nan] Instance Segmentation mRecall: nan Instance Segmentation F1 score: nan Instance Segmentation RQ: [ 0. nan] Instance Segmentation meanRQ: nan Instance Segmentation SQ: [0. 0.] Instance Segmentation meanSQ: 0.0 Instance Segmentation PQ: [ 0. nan] Instance Segmentation meanPQ: nan Instance Segmentation PQ star: [nan nan] Instance Segmentation mean PQ star: nan Instance Segmentation RQ (things): [nan] Instance Segmentation meanRQ (things): nan Instance Segmentation SQ (things): [0.] Instance Segmentation meanSQ (things): 0.0 Instance Segmentation PQ (things): [nan] Instance Segmentation meanPQ (things): nan Instance Segmentation RQ (stuff): [0.] Instance Segmentation meanRQ (stuff): 0.0 Instance Segmentation SQ (stuff): [0.] Instance Segmentation meanSQ (stuff): 0.0 Instance Segmentation PQ (stuff): [0.] Instance Segmentation meanPQ (stuff): 0.0

My encountered problems are as follows:

  1. The visualization of assessment indicators and forests is not generated properly in my code
  2. there are no files in the training generated viz folder, what is causing this problem I hope you can help me solve these problems, thanks again for your hard work!

Hi, did you successfully output some visual results? like Instance_Results_forEval_#NUMBER#.ply? You could open the visual files by cloudcompare software.

  1. there are no files in the training generated viz folder, what is causing this problem --> This is not the problem, because I commented the code for outputing some intermediate results.

bxiang233 avatar May 15 '24 07:05 bxiang233

Thank you for your answer, I ran the python evaluation_stats_FOR.py line of command and no eval folder appeared as well as the visual, I didn't see Instance_Results_forEval_#NUMBER#.ply, I made changes to all of my paths, what could be the reason for this result. Are the results of the files Instance_results_forEval*.ply and Semantic_results_forEval*.ply generated after training is complete? Thank you for your careful interpretation!

aaaaasleep avatar May 15 '24 10:05 aaaaasleep

Hello author, I also have the above problem, but when I change the float to float64, although the code succeeds, but after loading the breakpoint in the base_model if make_optimizer_step: self._grad_scale.step(self._optimizer), _grad_scale changed to None, have you ever encountered this problem? @bxiang233 ,In the meantime I use your dockerfile to build the environment

Jack-Dong-Dong avatar Dec 24 '24 03:12 Jack-Dong-Dong