Компьютерное зрение: настройка сегментации. График среза потенциалов
Я пытался научить себя некоторым простым алгоритмам компьютерного зрения и пытаюсь решить проблему, где у меня есть немного искаженное шумом изображение, и все, что я пытаюсь сделать, это отделить черный фон от переднего плана, который имеет некоторый сигнал. Теперь фоновые RGB-каналы не полностью равны нулю, так как могут иметь некоторый шум. Тем не менее, человеческий глаз может легко отличить передний план от фона.
Итак, я использовал алгоритм SLIC, чтобы разбить изображение на супер-пиксели. Идея состоит в том, что, поскольку изображение искажено шумом, выполнение статистики для исправлений может привести к лучшей классификации фона и переднего плана из-за более высокого SNR.
После этого я получаю около 100 патчей, которые должны иметь схожий профиль, и результат SLIC кажется разумным. Я читал о разрезах графов (статья Колмогорова), и мне показалось, что мне нужно попробовать что-то вроде бинарной задачи. Итак, я построил граф, который является MRF первого порядка, и у меня есть ребра между ближайшими соседями (4-связный граф).
Теперь мне было интересно, какие возможные унарные и двоичные термины я могу использовать здесь для своей сегментации. Итак, я подумал об унарном термине, я могу смоделировать его как простой гауссов, где фон должен иметь нулевую среднюю интенсивность, а передний план должен иметь некоторое ненулевое среднее. Хотя я изо всех сил пытаюсь понять, как это закодировать. Должен ли я просто предположить некоторую дисперсию шума и вычислить вероятности напрямую, используя статистику исправлений?
Точно так же, для соседних патчей я хочу побудить их использовать похожий ярлык, но я не уверен, какой двоичный термин я могу создать, который отражает это. Кажется, что разница между меткой (1 или 0) кажется странной...
Извините за скучный вопрос. Надеясь, кто-то может дать полезный совет о том, как начать.
1 ответ
Вы можете построить свою модель CRF на основе суперпикселей, чтобы суперпиксель имел соединение с другим суперпикселем, если он является его соседом.
Для вашей статистической модели Pixel Wise Posteriors просты и дешевы в вычислении.
Итак, я предлагаю следующее для одинарных терминов CRF:
- Построить гистограммы переднего плана и фона поверх текстуры на пиксель (при условии, что у вас есть маска или разумное количество отмеченных пикселей переднего плана (заметьте, не суперпиксели)).
- Для каждого суперпикселя сделайте предположение о независимости пикселей внутри него, чтобы вероятность того, что суперпиксели будут передним или задним планом, является продуктом каждого наблюдения в суперпикселе (на практике мы суммируем журналы). Индивидуальные термины вероятности взяты из созданных вами гистограмм.
- Вычислите апостериорные значения для переднего плана как совокупную вероятность, описанную выше для переднего плана, деленную на сумму совокупных вероятностей обоих. Аналогично для фона.
Попарные члены между суперпикселями могут быть такими же простыми, как разница между средними наблюдаемыми текстурами (по пикселям) для каждого прохода через ядро, например радиальной базисной функцией.
В качестве альтернативы, вы можете вычислить гистограммы по каждой наблюдаемой суперпиксельной текстуре (опять же, по пикселям) и вычислить расстояние Бхаттачарьи между каждой соседней парой суперпикселей.