#include <nedgrid.h>
kjb::Ned13_gp_reader::Ned13_gp_reader |
( |
const std::vector< std::string > & |
path = std::vector<std::string>() | ) |
|
|
inline |
static float kjb::Ned13_gp_reader::characteristic_length_squared |
( |
| ) |
|
|
inlinestatic |
characteristic length of squared exponential kernel function
Since it is about 10 m between points, sigma should be more than 10 m. Let's try a sigma of around 25. This function returns sigma squared. If you forget to square, you will regret it.
20 m (or 400 m squared) works well for elevation but shows artifacts in the incline map. Let's try 25 m. 8 Sep 2013: 25 m still shows artifacts. Let's try 40 m. 15 Sep 2014: Found, fixed a huge bug that basically ignored this value. Values from 20 squared to 30 squared work nicely. 40 squared looks like it might be too much.
Implementation note: This value interacts with 'train_rad_m' in nedget.cpp; the product determines how wide a sweep of training data is used. If you use 20 squared here, you should increase train_rad_m to about 7 or 8 to grab enough training data, otherwise you will see artifacts (i.e., elevations 140 m apart are not conditionally independent). If you increase this value to 22.4 or 30 squared, you can reduce train_rad_m to 6.
float kjb::Ned13_gp_reader::elevation_meters |
( |
const TopoFusion::pt & |
utm | ) |
|
|
virtual |
The documentation for this struct was generated from the following files: