Добрый вечер!
Имеется два графика, у которых различаются шкалы по оси абсцисс и ординат. Один из них - модельный спектр с известными, правильными длинами волн (

, 

); другой - экспериментальный спектр, снятый с установки, и по оси абсцисс там - номер пикселя на камере (

, 

). Задача: подобрать такие коэффициенты полинома 

, чтобы спектры как можно лучше "сходились" (см. ниже). Приблизительно известны начальные значения 

 и 

, а 

 на первых порах можно и вовсе считать нулём, поскольку он отвечает за аберрации спектрографа и является очень маленьким (

) по сравнению с остальными.
Проблема 1: оба спектра известны в дискретных, в общем случае никогда не совпадающих точках (для модельного спектра это чисто техническая проблема, связанная с тем, что смена сетки выполняется гораздо дольше, чем расчёт спектра). Решение: заранее возьмём модельный спектр с запасом по диапазону длин волн и числу точек, чтобы экспериментальный скорее всего оказался между его границами. Рассчитаем длины волн для экспериментального спектра, исходя из приблизительно известных начальных значений. Объединим обе шкалы и линейно интерполируем оба спектра в точках, в которых значение не известно. Имея общую шкалу, попробуем максимизировать коэффициент корреляции 

 по 

.
Проблема 2: у этой задачи есть несколько очень узких локальных оптимумов, а глобальный оптимум с правильным ответом почти невозможно найти: (картинки больше 

 пикселей)
"В лоб" это всё решается с трудом: известные мне 
алгоритмы оптимизации застревают в локальных минимумах и/или норовят сбежать в область, где спектры почти не перекрываются. Табулировать коэффициент корреляции на достаточно мелкой сетке, чтобы потом брать максимум и назначать очень жёсткие ограничения для оптимизатора, долго и ненадёжно.
При склеивании панорам из фотографий сначала находят "особенности", а потом соотносят их друг с другом, но в моих одномерных графиках всего 1 канал и одно измерение, а не двумерная матрица RGB. Плюс, все пики похожи друг на друга.
Как ещё можно найти коэффициенты 

?