Введение
Пожары являются одной из наиболее опасных и разрушительных природных
катастроф, причиняющих серьезный вред окружающей среде и человеческим
жизням. Обнаружение пожаров в ранней стадии является критически важным для
предотвращения их распространения и уменьшения ущерба. Однако, в условиях
большого объема данных и переменной освещенности, задача обнаружения пожаров
в видеоизображениях является сложной[1].
Существует ряд методов и алгоритмов, используемых для обнаружения пожаров в
видеоизображениях, включая пороговые методы, методы машинного обучения и
41
методы на основе модели случайных полей Маркова [2]. Каждый из этих методов
имеет свои преимущества и ограничения.
Цель данной работы заключается в разработке алгоритма обнаружения пожара в
видеоизображениях в реальном времени на основе модели случайных полей
Маркова, который может быть использован в системах мониторинга и безопасности.
Методология
Для обнаружения пожаров в видеоизображениях были использованы пороговые
методы и сверточные нейронные сети. Однако, пороговые методы имеют низкую
точность и высокую чувствительность к освещенности, а обучение сверточных
нейронных сетей требует большого количества размеченных данных.
Разработанный алгоритм на основе модели случайных полей Маркова показал
высокую точность и эффективность в обнаружении пожаров в видеоизображениях в
реальном времени. Он может быть расширен и улучшен путем включения других
функций обработки изображений, таких как цветовая корректировка, адаптивная
фильтрация и сегментация объектов.
Алгоритм обнаружения пожара на основе MRF начинается с чтения видео и
предварительной обработки изображений для удаления помех и улучшения
качества изображения. Затем производится расчет разницы кадров в изображении,
чтобы выявить изменения в изображении, которые могут быть связаны с
возникновением пожара.
Предложенный алгоритм включает следующую последовательность действий:
1.
Чтение видео.
Этот шаг заключается в получении последовательности кадров
из видеофайла. Пусть
- последовательность кадров видео. Каждый
кадр
I
t
- это изображение с размером
, где
и h - ширина и высота изображения
соответственно.
2.
Удаление различных помех с изображения.
На этом этапе мы убираем
нежелательные помехи, такие как шум и блики на изображениях, чтобы повысить
качество изображения. Для этого можно использовать различные методы
фильтрации изображений, такие как медианный фильтр или фильтр Гаусса.
3.
Расчет разницы кадров в изображении.
Для обнаружения движения в кадрах
видео мы вычисляем разницу между текущим кадром и предыдущим кадром. Это
можно выразить следующей формулой [3]:
|
|
,
где
D
t
- это изображение разницы между кадрами
I
t
и
I
t-1
.
4.
Сегментация изображения по MRF.
На этом этапе мы используем MRF (Markov
Random Fields) для сегментации изображения на различные области. MRF - это
модель вероятностного распределения, которая представляет сегментированное
изображение как граф, где узлы представляют пиксели, а ребра соединяют
близлежащие пиксели. Мы определяем функцию энергии для каждого узла и ребра
графа MRF, чтобы минимизировать ошибку сегментации. Пусть S – это
сегментированное изображение, где каждый пиксель
p
i
принадлежит одному из k
классов сегментации, тогда функция энергии MRF может быть записана следующим
образом[4-6]:
∑
∑
(
)
,
где U
i
(S
i
)- это потенциал узла, который определяет, насколько хорошо пиксель p
i
соответствует классу S
i
, а V
i,j
(S
i
,S
j
) - это потенциал ребра, который определяет,
насколько хорошо пиксели p
i
и p
j
соответствуют классам S
i
и S
j
соответственно.
Формула энергии MRF имеет вид:
∑
∑
(
)
,
где S - это вектор классов пикселей, N - общее количество пикселей в
изображении, i,j - индексы пикселей, а S
i
, S
j
- классы соответствующих пикселей.
42
Таким образом, MRF алгоритм используется для сегментации изображений путем
расчета энергии как суммы потенциалов узлов и ребер для каждого пикселя.
Функции потенциалов оцениваются на основе яркости, текстуры и контекста
пикселей, а разница между связанными пикселями определяет функцию потенциала
ребра. Итеративный процесс поля средних используется для обновления
вероятностей принадлежности к каждому классу для каждого пикселя, что дает
сегментированное изображение. Байесовский классификатор используется для
обнаружения
пожара
на
сегментированном
изображении.
Результаты
классификации и сегментации наложены на оригинальное изображение для
визуализации.
|