Может ли OpenCV cv::resize() изменить минимальное и максимальное значения изображения? (с использованием метода INTER_LINEAR)

Допустим, у меня есть изображение в оттенках серого (размер 640 × 480) с минимальной интенсивностью пикселей = 23 и максимальной интенсивностью = 245.

Если я изменю его размер с помощью cv::resize() с INTER_LINEAR на 1920×1080, могут ли измениться минимальная и максимальная интенсивности? Моя минимальная интенсивность стала 25, а максимальная интенсивность 247. Любое возможное неправильное использование, которое приводит к этому?

Можно ли ограничить cv::resize изменением размера только в пределах минимальных максимальных значений?

Я попытался нормализовать изображение после изменения размера с помощью NORM_MINMAX и исходных значений min max, но результаты выглядят не так. У меня нет возможности использовать INTER_NEAREST. Выглядит крайне размыто.

Я хочу сохранить исходные минимальные и максимальные значения, но изменить размер с помощью INTER_LINEAR. Является ли это возможным?


person user2880062    schedule 26.04.2017    source источник


Ответы (1)


Нет, на мой взгляд, невозможно сохранить минимальные/максимальные значения любыми методами с использованием интерполяции. См. Билинейная интерполяция для получения дополнительной информации и понимания того, почему минимальные/максимальные значения могут больше не присутствовать в изображение с измененным размером.

Если вы хотите сохранить исходные минимальные/максимальные значения, вам придется выполнить постобработку вручную без каких-либо гарантий, что визуальный результат будет хорошим.

Возможное решение:

  • размер одного изображения изменен с помощью INTER_LINEAR
  • еще один с INTER_NEAREST
  • fuse the two images:
    • I_res(i,j)=I_near(i,j) when I_near(i,j)==min or max
    • I_res(i,j)=I_linear(i,j) иначе

Но таким образом вы испортите формулу, используемую для линейной интерполяции.

person Catree    schedule 26.04.2017
comment
Спасибо @Catree. Если я изменю размер изображения, а затем нормализую новое изображение между исходными значениями minmax, меня ждет что-то непредвиденное? Кажется, это работает на данный момент. - person user2880062; 26.04.2017
comment
Да, нормализация диапазона также должна работать (предпочтительнее моего подхода). - person Catree; 26.04.2017