Разработка алгоритма обнаружения наростов ракушечника на сооружениях
Задачу обнаружения колоний ракушечника на видеоизображениях можно представить как задачу классификации, в которой необходимо проклассифицировать каждый кадр изображения в режиме реального времени на принадлежность к одному из двух классов: «изображение с ракушками» (класс «Ракушки») или «изображение без ракушек» (класс «Нет ракушек»).
Поскольку данный дефект появляется в кадре не внезапно, а постепенно, то алгоритм должен иметь некоторый порог срабатывания по превышению которого изображения начинают относиться к классу «Ракушки».Для решения поставленной задачи классификации изображений использовался статистический подход [211], который заключался в следующем. На первом этапе определяется набор статистических параметров вычисленных по данным изображения, которые используются для классификации. Далее определяется обучающая выборка изображений, для каждого изображения из выборки вычисляются заданные статистические параметры. Классификация изображений в обучающей выборке выполняется вручную. Анализ статистических параметров, собранных по обучающей выборке, позволяет выявить корреляционные зависимости между значениями параметров и классом, к которому принадлежат изображения.
Главной проблемой при использовании статистического подхода является определение параметров изображений, значения которых коррелируют с наличием ракушек в кадре. Так как наросты ракушечника имеют хаотическую форму и расположение в кадре, то определить указанные параметры изображения в явном виде не представлялось возможным. В предложенном нами методе используемые для классификации изображений статистические параметры получены в неявном виде с использованием метода главных компонент.
Подробная блок-схема алгоритма обработки изображения для обнаружения ракушечника в видекадрах приведена на рис. 7.5. Алгоритм состоит из следующей последовательности основных шагов:
• исходное видеоизображение подвергается предварительной обработке для дальнейшего анализа;
• по результатам предварительной обработки изображения вычисляется полный вектор статистических параметров;
• полный вектор статистических параметров с использованием метода главных компонент проецируется на оси первых главных компонент (это позволяет исключить избыточные коррелированные между собой параметры и сократить количество параметров используемых при классификации).
• значения первых главных компонент подаются на вход обученной вероятностной нейронной сети, которая собственно и выполняет процедуру классификации исходного видеоизображения, вычисляя для него вероятность принадлежности к одному из классов: «ракушки» или «нет ракушек».
Рис. 7.5. Блок-схема алгоритма обнаружения ракушечника в видеокадрах.
Статистические параметры для каждого видеокадра вычисляются по данным трех изображений, которые являются производными от оригинального цветного видеоизображения. Такими изображениями являются: (а) полутоновое изображение с градациями серого; (б) контурное изображение с градиентами ярко-
сти, полученное обработкой полутонового изображения фильтром Лапласа 3x3; (в) изображение в стандартном цветовом пространстве XYZ. Здесь канал Y - соответствует яркости пикселя изображения, а каналы XhZсодержат информацию о цвете пикселя. Следует заметить, что цветовая информация в X и Z каналах в некоторой мере коррелированна с яркостной составляющей.
Для полутонового и градиентного изображения вычислялись следующие статистические параметры: энтропия изображения (мера количества информации в изображении) и «сжатая» 16-элементная частотная гистограмма. Энтропия вычислялась из полной частотной гистограммы изображения по формуле где G = 256 - число полутонов в изображении;
- вероятность появления к-того полутона в изображении, которая вычисляется как
-
значение к-того элемента полной гистограммы изображения, N-M - число пикселей в изображении).
Энтропия является мерой количества информации в видеоизображении. Энтропия, вычисленная по частотной гистограмме полутонового изображения, характеризует разнообразие тонального содержания изображения, а вычисленная по частотной гистограмме контурного изображения определяет спектр значений локальных градиентов яркости.
Сжатая 16-элементная гистограмма вычисляется из полной (256-элементной) частотной гистограммы. В сжатой гистограмме каждый элемент содержит сле- дующюу статистику по соответствующим ему 16 элементам полной гистограммы (рис. 7.6): 1) среднее значение для соответствующих элементов;
2) стандартное отклонение значений этих элементов.
Рис. 7.6. Вычисление сжатой 16-элементной гистограммы
Для изображения в цветовом пространстве XYZ собирается статистика по распределению цветовой информации в каналах XhZ. Для этого строится двумерная частотная гистограмма Hxz{i,f)размером 64 на 64 элемента, что дает 4096 параметров. Для существенного сжатия информации о распределении цве-
329
тов под данным гистограммы вычисляются 16 статистических пространственных моментов [158] Mχχ(p,q), p,q -Or1,:2,3.
Все перечисленные параметры были помещены в полный вектор статистических параметров, размерность которого составила 82 элемента.
Классификация изображений в данном методе выполняется нейронной сетью, которая была обучена на изображениях обучающей выборки, выбранных случайным образом из видеозаписи реальной видеоинспекции, где имеются кадры с ракушечником. Анализ статистических параметров, вычисленных для изображений обучающей выборки, показал, что многие из 82 параметров вектора статистики коррелированны между собой и, таким образом, являются избыточными. Кроме того, при большой размерности входного вектора обучение нейронной сети требует больших вычислительных затрат. Для уменьшения размерности полного вектора статистических параметров был использован метод главных компонент.
Метод главных компонент позволяет определить новое векторное пространство, которое определено набором ортогональных векторов, названных главными компонентами.
Главные компоненты ортогональны и поэтому независимы друг от друга, т.е. они не коррелированны между собой. Векторное пространство исходных статистических параметров линейно связано с пространством главных компонент, поэтому для вычисления значений главных компонент требуются минимальные вычислительные ресурсы. Линейное преобразование между векторными пространствами определяется один раз и при работе алгоритма представлено постоянной матрицей.Для разработанного классификатора изображений при помощи метода главных компонент были получены коэффициенты для линейной редукции полного вектора статистических параметров к вектору из 5-ти первых взаимно ортогональных главных компонентов, суммарная дисперсия которых составляла более 80% суммарной дисперсии исходного вектора.
Используемая для классификации видеоизображений вероятностная нейронная сеть имеет 5 входов (по числу главных компонентов) и 1 выход. На выходе нейронная сеть выдает вероятность наличия ракушечника в изображении. Для 330
обучения нейронной сети использовалась обучающая выборка из 205 случайно выбранных из видеозаписи подводной инспекции изображений. Изображения обучающей выборки были вручную проклассифицированы на 3 класса: а) изображения, не содержащие ракушки; б) изображения, содержащие ракушки; в) изображения, возможно содержащие ракушки (похожие на ракушки). На рис. 7.7 показаны графики значений первых трех главных компонентов обучающей выборки. Круглыми маркерами обозначены значения соответствующие изображениям класса 1 (класс «отсутствие ракушек»), квадратные маркеры — изображениям класса 2 (класс «ракушки»), треугольные маркеры — изображениям класса 3 (класс «похоже на ракушки»).
Корректность классификации с использованием обученной нейронной сети была проверена на другой тестовой выборке из 154 случайных кадров. Доля корректно классифицированных видеокадров составила около 90% кадров из тестовой выборки.
Рассмотренный алгоритм классификации был реализован в системе обработки изображения в виде набора обрабатывающих фильтров, соединенных в обрабатывающий изображения граф (см. рис. 7.8). На выходе обрабатывающего 331
графа для каждого видеокадра вычисляется вероятность наличия в этом кадре ракушечника. При превышении определенного порога (который устанавливался в режиме диалога), система генерировала событие обнаружения дефекта в текущем обрабатываемом кадре. Видеокадры с обнаруженным ракушечником классифицировались системой как дефекты и сохранялись в базе данных отчета о видеоинспекции.
Для программы UWScan был разработан еще один алгоритм, который предназначался для определения «ключевых» кадров во входном видеопотоке для составления автоматического отчета о видеоинспекции. Ключевыми видеокадрами являются кадры, в которых видеоизображение и его содержание значительно изменилось по сравнению с предшествующими кадрами — появились (или исчезли) объекты, цвета, тона; изменилась структура кадра, и т.д. Данные видеокадры, как правило, представляют наибольший интерес при анализе результатов видеоинспекции. Данный алгоритм во многом аналогичен алгоритму обнаружения ракушечника, однако в нем не использовалась нейронная сеть. Ключевые видеокадры определялись по величине нормы разницы между полными векторами статистических параметров следующих друг за другом с некоторым интервалом видеокадрах. Как только указанная величина превышала динамически устанавливаемый порог, то в системе генерировалось событие обнаружения ключевого видеокадра.
Рис. 7.8. Граф обработки изображения
Оба указанных алгоритма, реализованные в программе UWScan работали с
высоким быстродействием. Например, при размере изображения размером в 320x240 точек оба алгоритма работали в реальном масштабе времени на процессоре Celeron 1 ГГц для частоты смены кадров в стандарте NTSC, что составляет 29.9 кадров в секунду. Процессор Pentium 4 1.8 ГГц позволял с той же частотой обрабатывать кадры размером 640 х 480 точек.
Таким образом, разработанная программа позволяет в автоматическом режиме и в реальном масштабе времени производить контроль текущего состояния и диагностику типовых дефектов различных подводных объектов: трубопроводов, коммуникаций, портовых сооружений. Исходной информацией для программы является видеопоток, получаемый в реальном времени от видеосистемы телеуправляемого подводного робота. Программная система позволяет гибко подстраиваться на различные типы дефектов и устойчиво работает при типичных низкокачественных подводных видеоизображениях.
7.2.