This article explains how PIX4Dmapper calculate a volume by providing the functions being used within PIX4Dmapper.
PIX4Dmapper calculates the volume as follows:
1. The user draws a volume in the Volumes view. For more information about how to draw a Volume: How to draw a Volume.
Volume drawn in the Volumes view.
The base of the volume.
2. PIX4Dmapper projects a grid with GSD spacing on the base.
Projected grid on the base of the volume: This drawing is a sketch and does not depict the real dimensions of the grid. The grid has a very small interval (the GSD).
3. For each cell i of the grid, its volume (Vi) is given by:
Vi = Li * Wi * Hi
Li = the length of the cell.
Wi = the width of the cell.
Hi = the height of the cell.
The Length (Li) and Width (Wi) are equal to the project's GSD.
Li =Wi = GSD
The Height (Hi) is given by:
Hi = ZTi - ZBi
ZTi = the terrain altitude of each cell at the center of the cell.
ZBi = the base altitude of each cell at the center of the cell.
Therefore, the volume Viof cell i is given by:
Vi = GSD*GSD* (ZTi - ZBi)
Volume of one cell of the base.
4. PIX4Dmapper calculates 2 volumes:
- The Cut volume Vc is the volume between the base and the 3D terrain, when the terrain is higher than the base.
Cut volume = VC = VC1 + VC2 +...VCN
VC1...N = Cut volume for cell i..N
- The Fill volume VF is the volume between the base and the terrain when the terrain is lower than the base.
Fill volume = VF = VF1 + VF2 +...VFN
VF1...N = Fill volume for cell i...N.
5. The Total volume is given by:
Total Volume = VT =VC+ VF
For more information about the error in Volume calculation: Error estimation in volume calculation.
Article feedback (for troubleshooting, post here instead)
I have gone through all the mechanism in calculating the volume with Pix4D after the step 3 is processed. I do understand how it works in general, however, I have a specific question regarding the height of cell. As given in this equation :
Vi = Li*Wi*Hi ; where Vi = Volume
Wi = width
It is explained that, Li*Wi= GSD. I have understood this concept and can visualized it. However, in order to trigger the Hi or the height of the cell, what is the simple explanation regarding this. since, for instance, the stockpile measurement when the shape is irregular. How do the Pix4D draw the length out of this equation.
Your explanation is highly appreciated
The GSD of each cell is multiplied by the height at the center of the cell. The GSDs are always small enough, so we just consider the height at the center as even if the shape is irregular, the height will not vary a lot. The smaller the GSDs, more accurate is the volume calculated.
I want to create Volumetric analysis tool in my web application. How can i do that?
We have Pix4DEngine Cloud API right now. We planned to develop our own portal for user to view and do volumetric Analysis on-the-fly. So please help us, how to do this thing with Pix4DEngine Cloud API.
There are three key portions to creating a tool like that.
The first is to define the area of interest. Whether this is through submitting a file with coordinates or clicking marks around a model you need to be able to create a polygon with those coordinates. There are many options through Potree or Three.js to create the interface for clicking/coordinate marking.
The second is the library/code piece to do the volumetric calculation. Something like this library [link removed] which takes in those coordinates and calculates the volume from the DSM product is necessary. There are other mesh/volume calculators out there that was just the first I found in a cursory search.
The third item would be the infrastructure between the two. Things like creating the necessary input file from your clicks on the model, to pulling the DSM file, to running the library and reporting back to the Cloud interface widget. That may be an oversimplification but the point is there.
I hope this helps!
One of my client would like to know the volume of sand available below the actual surface down to 100ft, is it possible to do the calculation with this option? If yes how to do this?
This tool would most likely not fit your needs. This tool can only use points on the surface of the model to set the measuring planes and would need either a visible protrusion/mound to measure cut or a visible hole to measure fill. Essentially only what can be seen by the images can be measured. You could use the data products such as the point cloud or orthomosaic to define a polygon of the area you want to measure and then take the surface area and multiply it by the height you wish to measure downward to get a basic estimate. That, however, would be assuming the nature of that material and you would not be able to truly determine if that volume is sand or bedrock or another material without more comprehensive sensors and study.
Thanks Timothy, this is what I said to my client but I just want to double check with your team.
I am having a problem obtaining a volume from a project on the cloud, I have uploaded the project and all the files. All scale and orientation are solved manually, no GPS. Still I am getting an error when I trace a polygon for measuring a volume. Thank you for your help.
Do you still have issues with volumes or has the problem been solved in this other post? :)
No it's solved thank you !!
When doing a volume calculation is the toe editable? (meaning when i have defined the area can i add a node to further refine the volume area, seems to be not possible??)
You cannot add a new vertex, but you can edit (move around) the existing vertices. I hope it helps :)
Thanks for the response!