Skip to main content
Question

How to calculate an average z-value for a ground surface

  • March 3, 2022
  • 7 replies
  • 194 views

limo
Supporter
Forum|alt.badge.img+8
  • Supporter
  • 52 replies

Hi,

 

I will calculate the average z-value of a ground surface based on a point cloud.

So at the moment I am using SurfaceDraper to drap the ground on the surface. After that I am using BoundsExtractor. But here I have only the possibility to get the min_zvalue. I will get the average z-value calculated on all z-values of the polygon.

image 

How can I do this? I saw thatt there is also an elevation extracotr. But this transformer only extract the first z-value of the first coordinate. I cannot calculate the average on al z-values. Can anyone give me some help or hints?

7 replies

redgeographics
Celebrity
Forum|alt.badge.img+59
  • Celebrity
  • 3700 replies
  • March 3, 2022

You can use a PointCloudStatisticsCalculator for that.


limo
Supporter
Forum|alt.badge.img+8
  • Author
  • Supporter
  • 52 replies
  • March 3, 2022

But for this I calculate the average z value for the hole pointcloud?

I will calculate average z-value for the drapedfeatures (ground surface of a building) after using surface drapper.


limo
Supporter
Forum|alt.badge.img+8
  • Author
  • Supporter
  • 52 replies
  • March 3, 2022

I have an idea. Maybe I can use AttributeCreator and add z-value by using fme feature functios (@ZValue()). After that I could calculate the average with the statistic calculator. But the feature function (@ZValue()) return only one z-value but I need all to calculate the average...


caracadrian
Contributor
Forum|alt.badge.img+23
  • Contributor
  • 571 replies
  • March 3, 2022

But for this I calculate the average z value for the hole pointcloud?

I will calculate average z-value for the drapedfeatures (ground surface of a building) after using surface drapper.

Just clip the pointcloud by the building footprint and use inside in PointCloudStatisticsCalculator 


limo
Supporter
Forum|alt.badge.img+8
  • Author
  • Supporter
  • 52 replies
  • March 3, 2022

Just clip the pointcloud by the building footprint and use inside in PointCloudStatisticsCalculator 

Ok than I would calculate the z-mean for all points inside the groundpolygon. Is it possible to calculate the z-mean limited on the ground vertices?


kailinatsafe
Safer
Forum|alt.badge.img+23
  • Safer
  • 720 replies
  • March 3, 2022

I have an idea. Maybe I can use AttributeCreator and add z-value by using fme feature functios (@ZValue()). After that I could calculate the average with the statistic calculator. But the feature function (@ZValue()) return only one z-value but I need all to calculate the average...

Hello @limo​, just a thought (not tested), it may be easier to convert the ground surface to a point cloud using the PointCloudCombiner, and then try using a PointCloudStatsCalculator to get average? Best, Kailin


limo
Supporter
Forum|alt.badge.img+8
  • Author
  • Supporter
  • 52 replies
  • March 4, 2022

Hello @limo​, just a thought (not tested), it may be easier to convert the ground surface to a point cloud using the PointCloudCombiner, and then try using a PointCloudStatsCalculator to get average? Best, Kailin

Yes this works for me. But I think I do not have to convert the ground surface to a point cloud. Because after clipping point cloud by ground polygon the result is already the ground as pointcloud. So this works for me fine. Thanks @caracadrian​  and @kailinatsafe​ 

I was just thinking only to calculate the average of the vertices of the ground polygon.