У меня есть несколько фотографий растений (TIF-файлы). Каждая картинка содержит набор цветных фишек Манселла. «Истинные» значения RGB цветных чипов Munsell известны. Моя цель состоит в том, чтобы исправить цвета изображений, сравнивая «наблюдаемые» и «истинные» цвета цветных фишек Манселла.
Я пытался использовать простую линейную регрессию для каждого канала.
Вот пример для Красного канала: (РЕДАКТИРОВАНИЕ:)
x1 = mean_value_of_red_channel_of_observed_color_chip_1
x2 = mean_value_of_red_channel_of_observed_color_chip_2
y1 = red_value_of_true_color_chip_1
y2 = red_value_of_true_color_chip_2
x_mean = (x1+x2)/2
y_mean = (y1+y2)/2
slope = ((x1-x_mean)*(y1-y_mean)+(x2-x_mean)*(y2-y_mean))/((y1-y_mean)^2+(y2-y_mean)^2)
y_intercept = y_mean-(slope*x_mean)
corrected_red_channel_of_image = (slope*red_channel_of_image)+y_intercept
Результат не выглядит правильно:
Исходное изображение
Исправленное изображение
![Corrected Image](https://i.stack.imgur.com/FJh7G.png)
Для конвертации я использовал Python 3.6 с открытым CV.
Есть идеи, что я сделал не так?