Local density tool values

Feel free to ask any question here
Post Reply
vgadoury
Posts: 5
Joined: Tue Sep 06, 2011 3:22 pm

Local density tool values

Post by vgadoury »

Hi,

First, many thanks for this great software. It's quite useful and a lot more intuitive than most other tools I've tried.

Concerning the local density tool (Tools/Other/Density), I can't find any information about it on the documentation, wiki or forum. How is it computed and what is the value's unit? Does this tool use a method described somewhere in a paper? At first I thought it would give something normalized in pt/unit³, but it seems to give higher values (or I might have overestimated my point cloud density!)

Thanks a lot,

Vincent

Edit : I just realized searching "density" or "local density" on the forum gives no result because the term is apparently too common, not because it's not used. Using Google I got a few pages about this tool, but not much answer about the current implementation...
daniel
Site Admin
Posts: 7710
Joined: Wed Oct 13, 2010 7:34 am
Location: Grenoble, France
Contact:

Re: Local density tool values

Post by daniel »

Hello,

indeed, the CloudCompare 2.3 documentation is still a "work in progress" (for 2 years now!).

In fact, the "compute density" tool is very simple and was just intended to give a quick and dirty overlook of the cloud density repartition:
- for each point of the cloud, it just looks for its nearest neighbor
- then it considers that the point is alone inside a ball with radius equal to the distance between the two points! So the density is simply 1/volume(Ball(r)) and therefore in 'pts per m^3'.

So it's highly approximative, but it can give interesting results if you apply afterwards a gaussian filter on the resulting scalar field (to spatially smooth these values). We could also have considered that the point is alone inside a disc to give a result in 'pts per m^2' (but the approximation would have been even worse :).

It would be very interesting to add a finer algorithm to compute density (properly), even if slower, and give the user the choice between both methods.

Daniel
Post Reply