Comments (6)
Hi @last-one , to compute KNN, we use existing methods of NanoFLANN which relies on KD-trees and is therefore quite fast. To infer the semantics of a large-scale pc in the SemanticKITTI dataset, we sample 10^5 points as a set and then feed as many sets as possible into the GPU to parallelly process. This allows our RandLA-Net to achieve 23 frames/s on average. The code will be released soon.
For the implementation of KNN, you may refer: https://github.com/aboulch/ConvPoint
from randla-net.
@Yang7879, have a look at https://github.com/nicolas-chaulet/deeppointcloud-benchmarks
from randla-net.
Hi @Ghostish, thanks for your interest in our paper. Actually we use 10^5 pts in our experiments (clarified in #1 and will be updated in the next version).
We do not pre-compute the KNN. Instead, it's calculated within the neural network and the reported time in the paper (Sec 4.2) includes all operations such as neural processing, KNN and sampling of our framework. Indeed, KNN is also expensive and it can take nearly half of the total time. We believe this could be the future work to further improve the overall efficiency.
from randla-net.
Hi @Yang7879 , thanks for your great idea. But I also have the same question about KNN.
In Sec 4.2, the paper said the RandLA-Net takes the shortest time (translating to 23 frames per second) to infer the semantic labels for each large-scale point cloud (up to 10^6 points). Could you share the idea on computing the KNN. I don't find a way to compute the KNN of 10^6 points in 23 frames / s. Or do you compute the KNN of each frame in parallel? Could you share the inference time of each frame?
And looking forward to open source.
from randla-net.
@Yang7879 Thanks for your reply. Could share the inference time of a single frame? Because in most cases, the time of parallel computing does not have much reference value.
from randla-net.
@last-one There are many ways to evaluate the efficiency of different approaches. In our paper, for the fairest comparison that can be done, we obtain the total computation time for each approach, by treating it as a black box with the same validation set as the input and with the full utilization of the same hardware. Therefore, the averaged 23 frames per second is a rough but reasonable indication for our efficient RandLA-Net.
As to a strict frame rate you are eager to know, we are unfortunately unable to provide. It is non-trivial to conduct a strict experiment for all approaches, as it involves critical engineering tricks. For example, to what extent to parallelly process the point cloud? should we use single-float or double-float at inference? just to name a few.
If you need a strict time for your engineering work, you are encouraged to run experiments according to your specific hardware and software environments.
from randla-net.
Related Issues (20)
- No module named 'numpy.distutils._msvccompiler' in numpy.distutils; trying from distutils
- NPM3D中三个测试场景的语义分割结果存在极大差距
- I want train model on custom data like semantic3d, I have .las file but i don't know how to annotated and save in format like semantic3d dataset? HOT 2
- iou=0
- Failed : work_element_count > 0 (0 vs. 0)
- s3dis area1 验证miou不到20% HOT 3
- How to train only with XYZ.
- GPU memory RTX3090 HOT 3
- Import Error
- IOU of some lables is 0.00
- AttributeError: module 'tensorflow' has no attribute 'pyfunc'
- Environment Error HOT 1
- 网络中参数的shape
- 如何分割自己的数据集 HOT 1
- Inquiry Regarding Inference on Unlabeled Data Using RandLA-Net
- Coordinate System for S3DIS
- Caught a NaN error : 3
- ERROR:out of range
- 各种包的冲突严重!!!求解决 HOT 2
- Hello, I would like to calculate the model inference time and model size. How can I do that?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from randla-net.