Map Generation

I'm also working on robot map building at the moment but in my case, because of computational constraints (and I'm using a dual Arduino setup!!) , I moved the calculations to an external computer and it looks like this will work well.

About your question:

Does anyone know of a program, like matlab perhaps that is capable of taking a 2D matrix, and chracteristing it as 3D function?

I never thought about things this way and it's very interesting, but in my view:

  1. Should you consider to use it on an external computer (read common PC), an array of 12096 elements is not a problem, so I wouldn't use that function. But,
  2. if you plan to use that hypothetical 3D function on the robot on the UNO, you potentially use up less memory but you need to consider the very likely possibility that the UNO will just be bogged down by way too many slow floating point divisions and multiplications once you start manipulating the function to generate something useful...
  3. I would consider decreasing the grid resolution, what is the size of your machine? For many cases a grid (matrix) that is much smaller than the machine itself adds no advantage to the goal.

Good luck!