I am trying to figure out the best way to deal with the noise introduced by water in PS. I am producing orthos and DSMs along a river corridor with two reservoirs, so there is water in every photo. Masking isn't an option. In much of the water-covered area, the vertex density is very high, with z values +/- 20-30 meters from the actual water surface/ground elevations.
I think that my biggest problem is that I am not sure what the best program would be where I could export the mesh from PS, process the data, then import it back to a mesh. Ideally, with the program, I would be able to run spatial algorithms on the mesh to smooth it, or to completely delete areas where the standard deviations or other calculated values (by vertex) exceed a given threshold.
When I have dealt with noisy areas in spatial data before, I apply a z-score filter to a moving kernel within the point cloud or grid, where for a given kernel:
z = |x - ?|/?
where
x is the value of the cell at the center of the kernel
? is the mean value of the cells within the kernel
? is the standard deviation of the cells within the kernel, and
z is the z-score for the cell at the center of the kernel.
If a cell (or point) exceeds a given z-score (usually 2.5 - 3), I exclude it and interpolate the surface from neighboring points. Where I have areas that are particularly noisy, this technique doesn't work, but the standard deviation becomes so large that I can filter the points by excluding the points where the standard deviation exceeds a threshold. For example, in the noisy water data, the standard deviation is about 2x that of the forested riverbanks because the noise from water goes both above and below the surface.
So to remove noise in water areas, what program could I use to apply the above method, or is there a better way?
I am used to processing in CARIS and ArcGIS, but I am happy to use another program if I need to. Ideally I will be able to work with 10M+ vertices. Meshlab seems like I could potentially figure out how to do that with filters, but it starts to bog down and crash quite a bit when vertices approach more than about 2M, and I don't think it uses GPU very well.
I have a dual quad core machine with 48GB RAM and 2 x NVidia GTX 560 Ti.
Thank you for any insight or suggestions.
Andy