HuguesTHOMAS / KPConv-PyTorch

Kernel Point Convolution implemented in PyTorch
MIT License
783 stars 155 forks source link

Logic on SemanticKitti testing code #32

Closed DiegoWangSys closed 3 years ago

DiegoWangSys commented 4 years ago

Thanks for your excellent work! The ending criteria for testing SemanticKitti test Dataset(with on_val=False) seems to require the minimum Frame Potentials greater than 100? And I don't understand what this potential means and I have already produced the ".npy" files in /test/probs/ which is the prediction results, but the test_model.py program keeps changing these .npy files. What's more, the mIoU could only be calculated if I turn the "on_val=True", so why can't I get the mIoU on test set and what is the stopping logic for the testing program?

Thanks in advance.

HuguesTHOMAS commented 4 years ago

Hi @DiegoWangSys,

Thanks for your interest. The ending criterion means that any point of the dataset will have been "seen" and predicted at least a hundred times. Understand that the corresponding prediction is averaged by a voting scheme, which makes it better and better as your potential grows. In practice, you dont really need a hundred votes, so you can stop at potential greater than 10 or 20 and already have the best prediction score.

About the "on_val=False", it means that we predict the test scene and therefore cannot measure the performances as the groundtruth is not provided.

Best, Hugues