Thanks a ton people!!! ExtremelyRandomizedTrees.jl: Might be really good, but errored a lot on version 4. ApproXD.jl: Very cool, I'll come back to that later, but for now: "What Lininterp cannot do: Multidimensional extrapolation" which I need (and accept is prone to silliness). Plus, according to the examples, the known xdata needs to be on a grid. My x,y,z are not equally spaced that way, they are scattered. compute the distances: I started with that, and in light of these results I might fall back to doing just that. Polyharmonic Splines: does exactly what I want, but not faster than just distances (but probably a lot more accurate). CHull.jl: might be awesome for this, but I didn't quickly see how I can use it to interpolate and extrapolate.
I feel like I owe you guys some background: I have some color-map functions that take a value, let's call it X (for some 0<X<1 and for some -pi/2<X<pi/2) and return an RGB. I need to use these to convert images that have colors that are similar (but not always identical) to the RGB values from these color-maps back to the value (X) that would have resulted in said RGB (so it's like the inverse of those color-map functions). After much trial and error, I think that since the images I want to convert this way are all 8-bit, the fastest way would be to construct a lookup table for all 2^(8*3) possible RGB combinations. This table (Dict) will take any RGB value from those images I need to convert and return X. This makes sense because I have only 4 such color-map functions, and potentially endless amounts of images to convert (currently a couple of tera). So I think I'll use simple distances, run that once, save those lookup tables and use them again and again on new images. On Thursday, May 14, 2015 at 4:19:18 AM UTC+10, Luke Stagner wrote: > > You can use Polyharmonic Splines > <http://nbviewer.ipython.org/gist/lstagner/04a05b120e0be7de9915> > > > On Wednesday, May 13, 2015 at 5:33:08 AM UTC-7, Yakir Gagnon wrote: >> >> I have a bunch (~1000) of x,y,z and a corresponding value, V. One unique >> V for each x,y,z. I want to interpolate and extrapolate "wildly" (so I >> really don't care about how accurate or correct it is). The x,y,z I have >> are not regularly spaced or anything. They're scattered across some range >> (they all share similar ranges), and I want to know what value (i.e. new V) >> I should be getting at new and regularly spaced x,y,z. I think >> Matlab's griddata would do what I want. >> I tired following the "lower-level" functionality from Grid.jl, >> Interpolations.jl, and Dierckx.jl, but couldn't figure out how to get this >> to work. >> I think I need to fit some curve to my scattered points and then use that >> to find the values at the new xyz (at least that's how I think griddata >> works)... Any good simple ideas out there? >> >>