Select to view content in your preferred language

How can I count neighbour number in 1m distance for every point?

1127
7
10-02-2013 07:43 AM
GucluSen
Emerging Contributor
Hi everyone,

I work with Lidar data and want to count neighbour number.
How can I count neighbour number for every lidar points in 1m distance?

Thanks,
Tags (1)
0 Kudos
7 Replies
JimCousins
MVP Alum
an inelegant solution is to buffer your points by 1m.
Perform a spatial join on the buffer output to the points, choosing "Each polygon will be given a summary of the numeric attributes of the poitns that fall inside it, and a count field showing how many fall inside it."
The (resulting count -1) will give you the number of neighbors in 1m radius.
Regards,
Jim
0 Kudos
GucluSen
Emerging Contributor
Using buffer for each points is good idea, I want to use that way.

Thanks Jim.
0 Kudos
GISDev1
Deactivated User
That depends which distance you are referring to. 1 meter in 2-D distance in X-Y plane, or 3-D distance in X-Y-Z plane?
0 Kudos
GucluSen
Emerging Contributor
That depends which distance you are referring to. 1 meter in 2-D distance in X-Y plane, or 3-D distance in X-Y-Z plane?


If it's possible, I want to calculate 3D point buffer.
I want to learn which point is located the crowded point density and which point is located low point density.
That way, The points which is located crowded point region is my special points and I want to delete low point density.
0 Kudos
XanderBakker
Esri Esteemed Contributor
I would like to advise against using a (3D) buffer methodology. LiDAR / LAS dataset tend to be very large when it comes to the number of points and LAS dataset are not a valid data type to use in these type of tools. Now you could convert your LAS data to a point featureclass, but determining for each point the number of neighbors in a 3D environment will take a long time to process.

When you work with LiDAR data, use LAS tools to process them. In your case to get an impression of where "dense" areas are use the LAS Point Statistics As Raster (Data Management) tool. Use CELLSIZE as sampling type and 1 as sampling value to get the statistics per 1 m².

There are several methods to choose from:

  • PULSE_COUNT�??The number of last return points.

  • POINT_COUNT�??The number of points from all returns.

  • PREDOMINANT_LAST_RETURN�??The most frequent last return value.

  • PREDOMINANT_CLASS�??The most frequent class code.

  • INTENSITY_RANGE�??The range of intensity values.

  • Z_RANGE�??The range of elevation values.


There is also another Help topic on Estimating forest canopy density and height that provides some helpful information.

Kind regards,

Xander
0 Kudos
TimBarnes
Frequent Contributor
Xander - is that a true 1m 'distance' though? (i.e. the cell will be a 1m square placed at the centre point of each location...or simply within a 1m grid whose cell center might be arbitrarily placed) as opposed to a 1m buffer (i.e. a circle). I guess it depends how accurate the result needs to be and that needs to take into account any xyz error in the lidar points which, at this scale, might make my question moot.

I agree though, finding exactly how many other lidar points are within a 1m distance of every lidar point is an extremely heavy calculation.
0 Kudos
XanderBakker
Esri Esteemed Contributor
Hi Tim,

This method will not give you a true distance of 1m. Each cell will have an 1x1m area and statistics will be based on all points within the area of a cell.

Kind regards,

Xander
0 Kudos