User Tools

Site Tools


tutorials:using-point-cloud-to-validate-model

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
tutorials:using-point-cloud-to-validate-model [2024/10/29 18:25] – created timtutorials:using-point-cloud-to-validate-model [2024/11/06 15:42] (current) – [Steps] tim
Line 1: Line 1:
-====== Idea ======+====== Using a point cloud to validate a simulation ======
  
-The idea is to use a point cloud of a measured tree and "move it over" the simulate tree to see how similar the tree and the measurements are. In the following the point cloud ware artificially created and fits the tree therefore very well. 
  
-====== Generating a volume ======+===== Idea =====
  
-volumes in GroIMP can be handled using most operators known from set theory, therefore it is also possible to create a union out two volumes by using the logical or operator ''|''. This can be used to create one volume out of all elements from the simulation with a simple query:+The idea is to take a point cloud of a measured tree and 'move it over' it on the simulated tree to see how similar the tree and the measurements are. In the following, the point cloud (shown in the figure below) has been artificially created and therefore fits the tree very well. 
 + 
 +|{{ :tutorials:valid_pc.png?600 | }}| 
 +|Generated example point cloud and two models with 99% and 85% accuracy|  
 + 
 +The example model can be found in the [[https://gallery.grogra.de/project_gallery/6728954ce2f11365175b52ba|GroIMP gallery]]  
 +===== Steps ===== 
 + 
 +  - Import the point cloud as a graph into the growth model. (see [[tutorials:pointcloud-io|here]])   
 +  - Grow the model to the right size (e.g. the age of the measured plant)  
 +  - Build the mathematical volume of the simulated plant  
 +  - Querying the points of the point cloud to estimate the coverage of the model  
 +===== Generating a volume ===== 
 + 
 +volume in GroIMP can be handled with most operators known from set theory, os it is also possible to create a union of two volumes by using the logical or operator''|''. This can be used to create one volume from all elements of the simulation with a simple query:
 <code java> <code java>
 Volume v = volume(first((*F*))); Volume v = volume(first((*F*)));
Line 14: Line 27:
  
  
-====== Counting the points ======+===== Counting the points =====
  
-A volume in GroIMP comes with contains functionthat checks if a point is included in the volume.  +A volume in GroIMP comes with contains function that checks if a point is contained in the volume.  
-This can be used in XL query to count all point included in the volume created above:+This can be used in an XL query to count all points contained in the volume created above:
 <code java> <code java>
 long inside = count((*p:Point,(v.contains(p,false)==true)*)); long inside = count((*p:Point,(v.contains(p,false)==true)*));
Line 24: Line 37:
 </code>  </code> 
  
-Therefore the output from the last line above creates the relative portion of points inside of the simulated structure.  +The output from the last line above produces the relative proportions of points inside the simulated structure. 
- +
- +
  
 +This approach can easily be extended to bounding boxes or more abstract shapes.  
tutorials/using-point-cloud-to-validate-model.1730222731.txt.gz · Last modified: 2024/10/29 18:25 by tim