Спрошу ещё тут... Может кто-то подкинет идейку. задачу постараюсь описать конкретнее)
Необходимо сгладить полученные экспериментальные данные, которые представляют собой двумерный массив – поэтому сглаживание нужно двумерное. Простое поочерёдное сглаживание вначале горизонтально, а затем – вертикально - даёт неудовлетворительный результат. Далее по этим данным будет браться первая и вторая производные. Поэтому хочется сгладить кубическим сплайном – т.к. «Кубический сплайн гарантирует непрерывность первой и второй производных функции».
Сформировал массив значений для аппроксимации, приведённой процедурой. Это стандартный csv-файл(его понимает Excel). (Для аппроксимации всегда будет массив размерностью [0..N,0..M]. Каждое значение отделено - ; а каждая новая линия начинается с новой строки).
for (int i = 0; i < MyRestoreData.Grid.ProectionX_Count; i++)
{
string stLine = "";
for (int j = 0; j < MyRestoreData.Grid.ProectionY_Count; j++)
{
string val = MyRestoreData.SmoothAreaExtremums[i, j].ToString();
stLine += val;
if (j != MyRestoreData.Grid.GridWidthCount - 1)
stLine += ";";
}
MyFile.WriteLine(stLine);
}
Для наглядности также сформировал по этим данным изображение. На двумерном изображении каждая полоса говорит об изменении величины на единицу и построил 3D. Хотя эти построения мне не нужны – привожу их лишь для наглядности и понимания вида данных.
Математическая литература мне даётся очень тяжело, поэтому надеюсь на какие-то конкретные подсказки. Литературы по этому поводу переискал кучу по поводу сплайн сглаживания поверхностью попадались лишь научные статьи. Да и убил времени на это не мало – пытаясь как-то сгладить поочерёдным проходом по горизонтали и вертикали, играясь с весовыми коэффициентами... для математический операций использую alglib и ILNumerics.Net.
кажется как-то используют тензорное произведение, но я честно говоря не понял что там и как. Есть смысл пытаться разобраться? если кто знает объясните пожалуйста на пальцах.
Фото:
http://s58.radikal.ru/i161/1103/20/1e2c85819998.jpg
http://i065.radikal.ru/1103/11/7418f6db145c.jpg
Ссылка на тему на исходниках. то тут не получилось файл залить
http://forum.sources.ru/index.php?showtopic=328168
Спасибо.