Hi Daniel V ;)<br><br>You&#39;re right, that might not be the best way to go. I thought that it might simply be faster to do a topological operation rather than a DB edit. To be honest, I&#39;d stay away from any 3D objects like volumes because it&#39;d just get pretty complicated if you use them... As far as I know ;) Could be wrong. My suggestion would use the following steps:<br>

<br>

1. Make terrain raster<br>2. Make surface raster<br>-- Here I&#39;m assuming that for you basically have only two height &quot;layers&quot; - i.e. no points that contain information between the surface raster and terrain (like bushes beneath a tree cover).<br>



3. Make a relative digital surface model (rDSM) (r.mapcalc --&gt; rDSM = surface - terrain)<br>4. Reclassify the rDSM into the different classes you&#39;re interested in<br>5. Convert the reclassified raster into an area vector file.<br>



-- This makes a 2D map of polygons that cover the same areas as the raster classes.<br>6. Extract the points inside the different different height classes (v.select)<br><br>However, if you&#39;re working with regularly spaced points that pass onto a regular grid (=1 pt. / raster pixel) you could always use r.stats to tell you how much area is in each raster category. Then you really wouldn&#39;t need vectors at all.<br>


<br>Daniel L.<br clear="all">

<p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px"><span style="font-size:13px;font-family:arial,sans-serif"></span></p><p>--<br></p><p>B.Sc. Daniel Lee<br>
Geschäftsführung für Forschung und Entwicklung<br>ISIS - International Solar Information Solutions GbR<br>Vertreten durch: Daniel Lee, Nepomuk Reinhard und Nils Räder<br></p><p>Deutschhausstr. 10<br>35037 Marburg<br>Festnetz: <a value="+4964213796256" style="color:rgb(28,81,168)">+49 6421 379 6256</a><br>



Mobil: <a value="+4917661277269" style="color:rgb(28,81,168)">+49 176 6127 7269</a><br>E-Mail: <a href="mailto:Lee@isi-solutions.org" style="color:rgb(28,81,168)" target="_blank">Lee@isi-solutions.org</a><br>Web: <a href="http://www.isi-solutions.org/" style="color:rgb(28,81,168)" target="_blank">http://www.isi-solutions.org</a></p>



<p>ISIS wird gefördert durch die Bundesrepublik Deutschland, Zuwendungsgeber: Bundesministerium für Wirtschaft und Technologie aufgrund eines Beschlusses des Deutschen Bundestages, sowie durch die Europäische Union, Zuwendungsgeber: Europäischer Sozialfonds.<br>



Zusätzliche Unterstützung erhält ISIS von dem Entrepreneurship Cluster Mittelhessen, der Universität Marburg, dem Laboratory for Climatology and Remote Sensing und dem GIS-Lab Marburg.</p><p></p><br>
<br><br><div class="gmail_quote">Am 30. März 2012 14:09 schrieb Daniel Victoria <span dir="ltr">&lt;<a href="mailto:daniel.victoria@gmail.com" target="_blank">daniel.victoria@gmail.com</a>&gt;</span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">



Hi Daniel Lee (two Daniels changing emails is a hard thing to follow...)<br>
<br>
I can create the different height classes raster easily but I&#39;m not<br>
sure how to get the lidar points from the cloud that are in each<br>
vertical slice.<br>
<br>
Maybe work with raster volumes? Is there a way to cross points at<br>
different volumes?<br>
<br>
The fact is, I&#39;m not seeing how to do this without having to import<br>
the lidar point cloud.<br>
<br>
Schematically, what I want to do is count the number of points that<br>
are in the vertical bins 1 2, (g is ground), a vertical slice...<br>
         ___<br>
         | . :<br>
bin 2  | :<br>
         | .<br>
         -----<br>
bin 1  | ...<br>
         | .<br>
        ggggg<br>
<br>
Cheers and many thanks for the attention<br>
Daniel V<br>
<div><div><br>
<br>
On Fri, Mar 30, 2012 at 8:08 AM, Daniel Lee &lt;<a href="mailto:lee@isi-solutions.org" target="_blank">lee@isi-solutions.org</a>&gt; wrote:<br>
&gt; Hi Daniel,<br>
&gt;<br>
&gt; You could try making different rasters with classes (0-5m over ground, 5-10m<br>
&gt; over ground, etc.) and then convert them into polygons, then check how many<br>
&gt; points are inside them. I&#39;m not sure if it&#39;d be faster than the way you<br>
&gt; suggested originally, though, when you think that you&#39;d have to make the<br>
&gt; rasters first, etc.<br>
&gt;<br>
&gt; I ended up giving up on large vector operations with LiDAR point clouds in<br>
&gt; GRASS 6.4 because it simply took way too long, but I was dealing with<br>
&gt; millions of points. For such a small dataset it&#39;s probably fine, since as<br>
&gt; long as you know your script is okay you can let it run through your lunch<br>
&gt; break ;)<br>
&gt;<br>
&gt;<br>
&gt; Daniel<br>
&gt;<br>
&gt; --<br>
&gt;<br>
&gt; B.Sc. Daniel Lee<br>
&gt; Geschäftsführung für Forschung und Entwicklung<br>
&gt; ISIS - International Solar Information Solutions GbR<br>
&gt; Vertreten durch: Daniel Lee, Nepomuk Reinhard und Nils Räder<br>
&gt;<br>
&gt; Deutschhausstr. 10<br>
&gt; 35037 Marburg<br>
&gt; Festnetz: <a href="tel:%2B49%206421%20379%206256" value="+4964213796256" target="_blank">+49 6421 379 6256</a><br>
&gt; Mobil: <a href="tel:%2B49%20176%206127%207269" value="+4917661277269" target="_blank">+49 176 6127 7269</a><br>
&gt; E-Mail: <a href="mailto:Lee@isi-solutions.org" target="_blank">Lee@isi-solutions.org</a><br>
&gt; Web: <a href="http://www.isi-solutions.org" target="_blank">http://www.isi-solutions.org</a><br>
&gt;<br>
&gt; ISIS wird gefördert durch die Bundesrepublik Deutschland, Zuwendungsgeber:<br>
&gt; Bundesministerium für Wirtschaft und Technologie aufgrund eines Beschlusses<br>
&gt; des Deutschen Bundestages, sowie durch die Europäische Union,<br>
&gt; Zuwendungsgeber: Europäischer Sozialfonds.<br>
&gt; Zusätzliche Unterstützung erhält ISIS von dem Entrepreneurship Cluster<br>
&gt; Mittelhessen, der Universität Marburg, dem Laboratory for Climatology and<br>
&gt; Remote Sensing und dem GIS-Lab Marburg.<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; Am 30. März 2012 13:00 schrieb Daniel Victoria &lt;<a href="mailto:daniel.victoria@gmail.com" target="_blank">daniel.victoria@gmail.com</a>&gt;:<br>
&gt;<br>
&gt;&gt; I need to calculate the number of points at different height levels. That<br>
&gt;&gt; is, how many points are from 0 to 5 meters? And from 5 to 10? And so on. So<br>
&gt;&gt; I believe I need to work with vector points and a database. Or is there<br>
&gt;&gt; another way?<br>
&gt;&gt; Thanks<br>
&gt;&gt; Daniel<br>
&gt;&gt;<br>
&gt;&gt; On Mar 30, 2012 6:47 AM, &quot;Daniel Lee&quot; &lt;<a href="mailto:lee@isi-solutions.org" target="_blank">lee@isi-solutions.org</a>&gt; wrote:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Hi there,<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; I don&#39;t work too much with vectors, but my personal experience with them<br>
&gt;&gt;&gt; has been fairly slow, perhaps due to the topology. If you have access to the<br>
&gt;&gt;&gt; raw point cloud, you could try importing the ground and surface points as<br>
&gt;&gt;&gt; separate rasters using r.in.xyz and then use r.mapcalc to get the height by<br>
&gt;&gt;&gt; subtracting the ground from the surface raster. Or do you definitely need<br>
&gt;&gt;&gt; vector points as an output?<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Best,<br>
&gt;&gt;&gt; Daniel<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; --<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; B.Sc. Daniel Lee<br>
&gt;&gt;&gt; Geschäftsführung für Forschung und Entwicklung<br>
&gt;&gt;&gt; ISIS - International Solar Information Solutions GbR<br>
&gt;&gt;&gt; Vertreten durch: Daniel Lee, Nepomuk Reinhard und Nils Räder<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Deutschhausstr. 10<br>
&gt;&gt;&gt; 35037 Marburg<br>
&gt;&gt;&gt; Festnetz: <a href="tel:%2B49%206421%20379%206256" value="+4964213796256" target="_blank">+49 6421 379 6256</a><br>
&gt;&gt;&gt; Mobil: <a href="tel:%2B49%20176%206127%207269" value="+4917661277269" target="_blank">+49 176 6127 7269</a><br>
&gt;&gt;&gt; E-Mail: <a href="mailto:Lee@isi-solutions.org" target="_blank">Lee@isi-solutions.org</a><br>
&gt;&gt;&gt; Web: <a href="http://www.isi-solutions.org" target="_blank">http://www.isi-solutions.org</a><br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; ISIS wird gefördert durch die Bundesrepublik Deutschland,<br>
&gt;&gt;&gt; Zuwendungsgeber: Bundesministerium für Wirtschaft und Technologie aufgrund<br>
&gt;&gt;&gt; eines Beschlusses des Deutschen Bundestages, sowie durch die Europäische<br>
&gt;&gt;&gt; Union, Zuwendungsgeber: Europäischer Sozialfonds.<br>
&gt;&gt;&gt; Zusätzliche Unterstützung erhält ISIS von dem Entrepreneurship Cluster<br>
&gt;&gt;&gt; Mittelhessen, der Universität Marburg, dem Laboratory for Climatology and<br>
&gt;&gt;&gt; Remote Sensing und dem GIS-Lab Marburg.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Am 29. März 2012 22:59 schrieb Daniel Victoria<br>
&gt;&gt;&gt; &lt;<a href="mailto:daniel.victoria@gmail.com" target="_blank">daniel.victoria@gmail.com</a>&gt;:<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Hi all,<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; I&#39;m trying to calculate the height from the ground of several lidar<br>
&gt;&gt;&gt;&gt; points (15million) in order to get the number of points that occur at<br>
&gt;&gt;&gt;&gt; different height levels. I read some older posts about using r.in.xyz<br>
&gt;&gt;&gt;&gt; (or r.in.lidar in grass 7) but I could not understand how to count the<br>
&gt;&gt;&gt;&gt; number or points that have height from 0 to 5 m above the ground, for<br>
&gt;&gt;&gt;&gt; instance. So, I&#39;m trying to do the following.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; 1) import points using v.in.lidar (Grass 7 ubuntu linux)<br>
&gt;&gt;&gt;&gt; 2) create a column in the database for the ground height and one for<br>
&gt;&gt;&gt;&gt; elevation<br>
&gt;&gt;&gt;&gt; 3) populate height column from ground raster (generate in another<br>
&gt;&gt;&gt;&gt; process) using v.what.rast<br>
&gt;&gt;&gt;&gt; 4) calculate elevation as zcoord - ground for each point (v.db.update)<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; As you might imagine, this takes a long time. Just to import a 400Mb<br>
&gt;&gt;&gt;&gt; lidar file takes around 50min.<br>
&gt;&gt;&gt;&gt; Is there any easier way that I&#39;m not envisioning?<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; I&#39;m running Grass 7 with liblas on a Ubuntu Virtual Machine and sqlite<br>
&gt;&gt;&gt;&gt; backend.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Thanks<br>
&gt;&gt;&gt;&gt; Daniel<br>
&gt;&gt;&gt;&gt; _______________________________________________<br>
&gt;&gt;&gt;&gt; grass-user mailing list<br>
&gt;&gt;&gt;&gt; <a href="mailto:grass-user@lists.osgeo.org" target="_blank">grass-user@lists.osgeo.org</a><br>
&gt;&gt;&gt;&gt; <a href="http://lists.osgeo.org/mailman/listinfo/grass-user" target="_blank">http://lists.osgeo.org/mailman/listinfo/grass-user</a><br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;<br>
</div></div></blockquote></div><br>