Интерпретация отрицательных значений SSIM (метрика структурного сходства изображения) для scikit-изображения

Я использую scikit-изображение SSIM, чтобы сравнить сходство между двумя изображениями. Дело в том, что я получаю отрицательные значения, которые не подходят для моей цели. Я понимаю, что диапазон значений SSIM должен составлять от -1 до 1, но мне нужно получить только положительное значение, и я хочу, чтобы это значение уменьшалось по мере увеличения сходства между двумя изображениями. Я думал о двух способах решения этой проблемы. Во-первых, вычитая значение SSIM из 1:

Similarity Measure=(1-SSIM)

Теперь он дает ноль в случае идеального совпадения (SSIM=1) и 1, когда нет сходства (SSIM=0). Но, поскольку SSIM также приводит к отрицательным значениям между -1 и 0, я также получаю значения больше 1, что я не знаю, как интерпретировать. В частности, я не знаю, когда SSIM возвращает отрицательные значения, что это значит. Изображения с значениями SSIM между -1 и 0 менее похожи, чем изображения с SSIM 0? Потому что, если это не так, то моя мера сходства вызовет проблему (она приводит к значениям больше 1, когда SSIM отрицателен, что означает меньшее сходство по сравнению со случаем SSIM = 0). Еще одна мера, которую я собирался использовать, - это структурное различие (DSSIM), которое определяется следующим образом:

DSSIM=(1-SSIM)/2

Это вернет 0, когда два изображения абсолютно одинаковы, что я и ищу, но DSSIM=1, когда SSIM=-1, что соответствует отсутствию подобия, и возвращает 1/2, когда SSIM=0. Опять же, это может быть полезно только тогда, когда SSIM с отрицательными значениями показывает меньшее сходство, чем SSIM=0, что, как я уже упоминал, является тем, о чем я не знаю, и не смог найти ничего, что объясняло бы соответствие каждого значения SSIM в Условия уровня сходства между двумя изображениями. Я надеюсь, что кто-то может помочь мне с такой интерпретацией или каким-то образом получить только значения 0 и 1 для SSIM.

Изменить: как я уже упоминал в комментариях, SSIM может быть отрицательным, и это вызвано ковариацией двух изображений, которые могут быть отрицательными. В исходном коде Skimage SSIM ковариантность двух изображений представлена ​​vxy, и в некоторых случаях она может быть отрицательной. Что касается интерпретации отрицательных значений SSIM с точки зрения сходства, я все еще не уверен, но в этой статье говорится, что это происходит, когда локальная структура изображения инвертирована. Тем не менее, я видел это для изображений, которые не похожи на перевернутую структуру друг друга. Но, я думаю, здесь важен локальный, это означает, что два изображения могут не выглядеть как инвертированные версии друг друга, но их структура локально инвертирована. Это правильная интерпретация?

1 ответ

Да, сходство двух изображений с SSIM = 0 лучше, чем SSIM = -1, поэтому вы можете использовать 1 - (1 + SSIM) /2

Другие вопросы по тегам