Текст (PDF):
Читать
Скачать
Введение
Распознавание объектов аквакультуры, в частности промысловых гидробионтов, на статическом или динамическом изображении является одним из приоритетных направлений модернизации и технологического развития систем машинного зрения.
Актуальной задачей биотехнологий является синтез естественных и инженерных наук, позволяющий наиболее полно реализовать возможности определения наличия и количества различных подводных объектов, присутствующих на конкретном изображении, в условиях повышенной флуктуации. Под флуктуацией в данном исследовании следует понимать плотность воды в окрестностях кри-тических точек, приводящую к сильному рассея-нию света и потере прозрачности (опалесценция). Флуктуация значительно снижает качество распознавания промысловых гидробионтов в их естественной среде обитания. Задача идентификации объектов аквакультуры зачастую ставится перед системами управления и принятия решений.
Подсчет объектов аквакультуры на рыбоводном хозяйстве требуется при перекачке и отгрузке товарной рыбы, а также для отслеживания количества рыбы в процессе ее роста. Это позволяет проводить анализ и вносить коррективы в режим питания гидробионтов, следить за их состоянием, проводить научные исследования. Реализация подсчета гидробионтов компьютерным зрением расширит возможности нейронных систем воспринимать подводное пространство, разделять его на структурированные логические части, игнорируя флуктуации, и выполнять удаленное взаимодей-ствие с объектами аквакультуры.
Определение размерной характеристики рыбных особей в неопределенном количестве – сложная задача в промышленном рыбоводстве. Проблема заключается в необходимости прямого воздействия на живых рыб, которое вызывает ухудшение их состояния или даже гибель, поэтому прямые методы учета, как правило, применяются при отслеживании только старших возрастных групп рыб, когда операции, связанные с пересчетом особей, уже не вызывают значительного вымирания или травмирования пересчитываемых или измеряемых особей.
Правовых и нормативно-технических документов, относящихся к методам учета в рыбоводстве, не существует, однако условно их можно разделить по способу реализации:
– на прямые – подсчет и измерение отдельных единиц гидробионтов;
– статистические – массовое измерение пара-метра у всей группы объектов аквакультуры с последующим расчетом этого параметра по случайной выборке и экстраполяции этих данных на всю совокупность измеряемых объектов.
При наличии в штате рыбоводной организации квалифицированных рыбоводов ошибка подсчета одним из способов в среднем составляет 5–10 %, однако, как было сказано ранее, присутствует вероятность повреждения и последующей гибели гидробионтов, что особенно неблагоприятно в отношении ценных промысловых пород из отряда осетрообразных.
В настоящее время для решения задачи пере-счета гидробионтов не используются инновационные технологии. В аспекте распознавания объектов машинным зрением существует ряд извест-ных методов, однако, согласно литературным источникам, их адаптация к рыбоводческой дея-тельности и работа по устранению естественных флуктуаций на изображении не проводились, что, как следствие, при использовании классических методов распознавания не приведет к достаточной адекватности выделения и подсчета гидробионтов и не позволит достичь требуемых показателей в реальных задачах.
Современные технологии, применяемые для идентификации различных объектов на изображении, неэффективны при наличии на нем множества целевых объектов – в этом случае необходимо выделение зоны, в которой находится идентифицируемый объект. Главный пример – системы видеонаблюдения, где вместо обработки цельного изображения обрабатывается множество кадров. Из этого следует, что для эффективного распознавания гидробионтов требуются способы разделения изображения на зоны по различным отличительным чертам и отделения требуемых объектов не только от фона, но и с учетом флуктуаций, находящихся на поверхности воды.
Из анализа практических данных следует, что среди всех математических моделей и методов распознавания образов наиболее качественными и перспективными являются нейронные сети (НС) [1]. Следовательно, необходима разработка программного обеспечения на основе метода выделения объектов аквакультуры для создания обучающей выборки и последующего распознавания гидробионтов на статических и динамических изображениях в условиях визуального отклонения от привычных форм идентификации объектов.
Формальная постановка задачи распознавания образов гидробионтов
Идентификация гидробионтов – классификация отдельных объектов по тем или иным отличительным чертам. В этой классификации применяются объекты-образцы, прошедшие классификацию прежде – так называемые «прецеденты».
Для решения конкретной задачи условно принимается следующий факт: образы распределены на классы, в состав каждого класса входит определенное число прецедентов. Для обеспечения успешного процесса классификации считываются данные об объекте, именуемые «признаками». Совокупность признаков одного объекта складываются в единый вектор – вектор признаков. Ему соответствует один конкретный образ [2].
Классификатор в данном процессе выполняет функцию распределения объектов по классам
в зависимости от их вектора признаков (рис. 1).
Рис. 1. Классификация объектов по признакам
Fig. 1. Classification of objects by characteristics
Для разработки системы классификации требуется решить следующие задачи:
1) генерация признаков (назначение способа выбора вектора признаков);
2) селекция признаков (выбор наиболее значимых признаков);
3) создание классификатора (выбор способа построения классификатора);
4) количественная оценка системы (способ анализа качества разработанной системы).
Анализ научно-методического аппарата позволил выявить определенные противоречия в теории и практике. Для решения практических задач необходимо повышение качества изображения для распознавания объектов.
Формальная постановка задачи – разработка метода выделения объектов аквакультуры для создания обучающей выборки и последующего распознавания гидробионтов на статических и динамических изображениях, обеспечивающих улучшение работы НС без снижения скорости распознавания объектов в условиях сильного рассеяния света и потери прозрачности водного пространства.
Реализацию разработки программного обеспечения для распознавания объектов аквакультуры предполагается осуществить на основе модели YOLOv5, а также собственной методики полуавтоматического формирования эффективных визуальных обучающих выборок. Итогом научного исследования станет программный комплекс, реализующий разработанные алгоритмы и позволяющий выделять и распознавать гидробионтов на цифровых изображениях с применением разработанной методики создания обучающих выборок
в условиях флуктуации.
Применение модели YOLOv5 как метод распознавания образов
You Only Look Once (YOLO) – архитектура сверточных НС, применяемая не только в рамках распознавания объектов, но и для их выделения, при этом сверточная сеть применяется один раз ко всему изображению, в то время как аналоги –
несколько, к разным секторам изображения. Нейронная сеть разделяет изображение условной «сеткой» и выделяет определенные участки ограничивающими рамками с подписью вероятности того, что в них есть искомые объекты (рис. 2).
Рис. 2. Принцип распознавания объектов на изображении
Fig. 2. Principle of object recognition in an image
После стадии подачи изображения на вход НС на ее выходе должен оказаться алгебраический объект (тензор) размером S × S × (B ⋅ (4 + 1) + C), где S – размер изображения; B – количество содержащих рамок, предсказываемых каждой ячейкой; C – количество классов; 4 – количество содержащих рамок; 1 – предсказание объектности.
В общем виде схема сверточной НС представлена на рис. 3.
Рис. 3. Общая схема работы нейронной сети YOLO: W – ширина; H – высота
Fig. 3. General layout of the YOLO neural network: W - widthbox; H - heightbox
В теории сверточных сетей одним из главных терминов является «feature map» – отображение функций, где входное изображение сворачивается с помощью ядра свертки для получения характеристик изображения (рис. 4).
Рис. 4. Принцип ядра свертки
Fig. 4. Convolution kernel principle
Когда сверточная НС извлекает признаки изображения снизу вверх, количество карт признаков (фактически количество ядер свертки) будет увеличиваться, пространственная информация будет становиться все меньше и меньше, а ее характеристики также увеличатся. Векторы признаков, полученные после того, как числа на рис. 4 появляются в пространстве сверточной НС, отображаются
в двухмерном и трехмерном пространствах.
Фактически сверточная НС YOLO работает следующим образом: система изменяет размер входного изображения до 448 × 448, запускает единственную сверточную сеть на изображении и пороговое значение результирующих обнаружений по достоверности модели. Сверточная сеть одновременно предсказывает многоуровневые ограничительные рамки и статистическую вероятность определения для этих рамок.
Усилия исследователей в области обнаружения объектов сосредоточены на быстром создании стандартных способов обнаружения. Модель YOLO является самым быстрым НС детектором
в истории обнаружения объектов и в два раза более точным, чем любой другой детектор в реальном времени.
Формирование изображения объекта под водой
Подводная область, у которой нет недостатка
в больших наборах данных изображений, не дает возможности воспользоваться всей мощью методов компьютерного зрения и машинного обучения отчасти потому, что вода маскирует многие важные, с точки зрения вычислений, особенности сцены. Подводная фотография эквивалентна фотографии, сделанной в воздухе, но покрытой густым цветным туманом под воздействием источника света, засветов в виде белых пятен, интенсивность которых меняется в зависимости от расстояния.
Формирование подводного изображения регулируется уравнением вида
Ic = Dc + Bс,
где Ic – изображение, захваченное камерой (с искаженными цветами); c = R, G, B – цветовой канал; Dc – прямой сигнал, который содержит информацию о (ослабленной) сцене; Bc – обратное рассеяние, аддитивный сигнал, ухудшающий изображение из-за света, отраженного от частиц, взвешенных в толще воды (рис. 5).
Рис. 5. Зависимость интенсивности цвета от глубины подводного изображения объекта
Fig. 5. Dependence of color intensity on the depth of the object underwater image
Компоненты Dc и Bc регулируются двумя раз-личными коэффициентами, и – коэффициентами широкополосного затухания (RGB) и обратного рассеяния соответственно.
Переменная Dc содержит сцену с ослабленными цветами, а Bc – это ухудшающий сигнал, который сильно зависит от оптических свойств воды
и в конечном итоге доминирует в изображении. На рис. 5 показаны относительные величины Dc и Bc для набора калибровочных мишеней, применяемых для настроек цифровой камеры при определенных условиях съемки.
Традиционные методы коррекции изображения объектов под водой, которые изменяют качество отображения объекта под водой, являются нестабильными и слишком чувствительными
к настройке и работают только для коротких диапазонов расстояний до объектов. Таким образом, анализ больших наборов подводных данных зачастую проводится в ручном режиме. В среднем эксперт тратит больше 2 часов на идентификацию и подсчет рыб по видео продолжительностью один час.
Анализ существующих методов устранения флуктуаций
Проводя исследования в области исправления или удаления флуктуаций, следует выделить три основных метода:
– Sea-thru, позволяющий последовательно «удалять» воду с подводных изображений;
– Dark Channel Prior, «удаляющий» атмосферные помехи в виде тумана, дымки;
– Fusion, предназначенный для улучшения цифровых изображений и объектов, находящихся под водой.
Метод Sea-thru направлен на последовательное «удаление» воды с подводных изображений, поэтому большие наборы данных можно анализировать с большей эффективностью. Метод работает следующим образом: для изображения в формате RGBD он оценивает обратное рассеяние способом Dark Channel Prior, разработанный для «удаления» дымки и тумана, но с использованием известной карты дальности. Метод использует структуру оптимизации для оценки коэффициента ослабления, зависящего от дальности, с использованием карты освещения, полученной в качестве входных данных среднего цвета локального пространства [3]. Зависящий от расстояния коэффициент затухания можно смоделировать как двучленную экспоненту, что значительно уменьшает количество неизвестных коэффициентов на этапе оптимизации.
Расширенная форма уравнения в методе
Sea-thru формулируется как
где Jc – сцена без ослабления, которая была бы снята в месте расположения камеры, если бы не было затухания по оси z; z – расстояние между камерой
и объектами в сцене вдоль линии взгляда, это вуалирующий свет; векторы
и представляют зависимости коэффициентов от диапазона z, коэффициента отражения ρ, спектра окружающего света е, спектрального отклика камеры Sc, а также коэффициента физического рассеяния и ослабления луча водным объектом b и β, – все перечисленные коэффициенты являются функциями длины волны λ.
Коэффициенты ослабления могут быть измерены с помощью оптических приборов, таких как трансмиссометры или спектрометры. Однако их нельзя использовать для получения изображений
в исходном виде из-за различий в спектральной чувствительности и угле приема. Кроме того,
у этих инструментов высокая стоимость, они громоздки и неудобны в использовании. Таким образом, лучше всего оценивать коэффициенты ослабления непосредственно по изображениям. Самый простой метод для этого – сфотографировать калибровочную мишень на известных расстояниях.
В исследовании [4] берутся коэффициенты оцененного вуалирующего света без учета цвета освещения, что важно при коррекции изображений речных промысловых гидробионтов.
Подводная съемка является сложной задачей из-за физических свойств среды. В отличие от обычных, подводные изображения плохо видны из-за ослабления распространяемого естественного или искусственного света. Свет ослабляется экспоненциально с увеличением расстояния и глубины, в основном из-за эффектов поглощения и рассеяния. Поглощение существенно снижает световую энергию, в то время как рассеяние вызывает изменение направления света.
В компьютерном зрении и компьютерной графике широко используется модель для описания формирования изображения флуктуаций, которая выглядит следующим образом:
где I – наблюдаемая интенсивность; J – яркость сцены; A – глобальный атмосферный свет; t – пропускание света водной средой, описывающее часть света, которая не рассеивается и достигает камеры. Цель удаления флуктуаций – восстановить J, A и t из I.
Когда атмосфера однородна, пропускание света водной средой t можно выразить как
где β – коэффициент рассеяния атмосферы;
d – глубина сцены. Таким образом, яркость сцены уменьшается экспоненциально с глубиной сцены d.
Случайное затухание света является основной причиной появления «тумана» на изображении,
в то время как часть света, рассеянная обратно от среды вдоль поля зрения, значительно ухудшает контраст сцены. Эти свойства подводной среды отображают такие сцены с плохим контрастом,
из-за этого далекие объекты кажутся туманными.
Геометрически уравнение отображения дымки означает, что в цветовом пространстве RGB векторы A, и копланарны, а их конечные точки коллинеарны. Передача t – это отношение двух отрезков прямой:
.
На практике в обычной морской воде объекты на расстоянии более 10 м почти неразличимы,
а цвета блеклые, поскольку их характерные длины волн срезаются в зависимости от глубины воды. Что касается речной воды или воды в УЗВ, то условия дальности видимости значительно хуже.
Метод Fusion основан на принципе слияния
и, в отличие от вышеописанных методов, не требует нескольких изображений, выводя входные данные только из исходного ухудшенного изображения. Поскольку процесс деградации подводных сцен является одновременно мультипликативным и аддитивным, традиционные методы улучшения, такие как баланс белого, цветокоррекция, вырав-нивание гистограммы, показали сильные ограни-чения для такой задачи. Вместо прямой фильтра-ции входного изображения метод Fusion работает на слиянии схемы, основанной на внутренних свойствах исходного изображения.
Метод Fusion применяет стратегию временной двусторонней фильтрации для версии кадров с балансировкой белого, которая направлена на уменьшение шума и сглаживание кадров при сохранении временной когерентности.
На рис. 6 приведен пример одного и того же полутонового изображения с измененной яркостью.
Рис. 6. Пример изменения параметра освещенности для конкретного изображения
Fig. 6. Example of changing the illumination parameter for a specific image
Для человека не возникает трудности связать все примеры одним понятием, но для распознающей системы каждый из них кодируется совершенно разными числовыми значениями.
Выбор подходящего значения σg для одновременной борьбы с шумом при сохранении краев затруднен. Высокие значения σg приводят к появлению ореолов, в то время как малые значения σg не могут в достаточной степени снизить нежела-тельный шум. Вместо того чтобы просто сравни-вать интенсивности, как D(p,s) = Ip – Is, Fusion вы-числяет сумму квадратов разностей (SSD) между небольшой пространственной окрестностью Ψ вокруг s и p, взвешенной с помощью размытия по Гауссу Γ(x, y):
Успех методов подобного синтеза во многом зависит от выбора входных параметров, поэтому метод Fusion исследуется как набор операторов для преодоления ограничений, характерных для подводной среды.
Таким образом, можно сделать вывод, что существующие методы коррекции изображения только частично могут быть полезны при распознавании гидробионтов, поэтому разработка соб-ственного метода для удаления флуктуаций явля-ется задачей актуальной и требует дальнейших исследований.
Обучающая выборка для распознавания объектов аквакультуры
Чтобы произвести распознавание образа, необходим процесс обучения для НС на основании набора примеров – обучающей выборки [1]. В теории НС обучающей выборкой принято называть определенный набор предметов прецедентного свойства, которые можно выделить из общего ряда на основании особых признаков.
На качество распознавания требуемых объектов в равной степени влияют два фактора: нейросетевая архитектура и обучающая выборка, на которой проводилось обучение [3]. Следует отметить, что ключевым фактором является именно выборка для обучения, поскольку если выборка будет сгенерирована некорректно, результат распознавания
не будет удовлетворительным.
Первичное обучение сверточных слоев использует на наборе данных первые 20 сверточных слоев, за которыми следуют слой среднего пула
и полносвязный слой. Затем преобразуется модель для выполнения обнаружения. Добавление как сверточных, так и подключенных слоев в предварительно обученные сети повышает производительность распознавания.
При добавлении четырех сверточных слоев
и двух полносвязных слоев со случайно инициализированными весами обнаружение требует детальной визуальной информации, поэтому входное разрешение сети увеличивается с 224 × 224 до
448 × 448. Последний слой предсказывает как вероятности классов, так и координаты ограничивающей рамки. Нормализуется ширина и высота ограничивающей рамки по ширине и высоте изображения, чтобы они находились между 0 и 1. Параметризация координаты ограничивающей рамки x и y выглядит как смещение определенного местоположения ячейки сетки, чтобы они также были в диапазоне между 0 и 1.
В YOLO используется линейная функция активации для конечного слоя, а все остальные слои используют следующую негерметичную выпрямленную линейную активацию:
Следует обратить внимание, что функция по-терь распознает ошибку классификации только
в том случае, если объект присутствует в этой ячейке сетки.
Особенностью выборки для СНС YOLO является то, что пути к изображениям, координаты выделенных областей и их классы записываются
в файлы XML. Для лучшей работы алгоритма изображения для обучения необходимо использовать те материалы, на которых будет производиться обработка, например изображения рыб ценных пород в установках замкнутого водоснабжения, где при создании цифрового изображения гидробионты находятся под некоторым углом, что приводит к визуальным искажениям на поверхности воды. Исходя из этого необходимо обучить алгоритм для детекции объектов таким образом, чтобы изображения, на которых была обучена НС, минимально отличались от тех, которые будут идентифицироваться в реальных задачах.
Таким образом, обучающая выборка генерируется из подходящих изображений, размещенных
в сети Интернет, с учетом погрешности угла наклона камеры или при помощи ручной съемки на похожих объектах. Размер обучающей выборки может сильно варьировать в зависимости от характера задачи.
Для обучения СНС YOLO использовались данные «Sturgeon». Сбор данных осуществляется на основе сервисов Flicr, Google images, Yandex images. Для обучения CHC YOLO использовалось 650 изображений с последующей обучающей выборкой в количестве 2 000 объектов. На рис. 7 представлены примеры изображений обучающей выборки.
Рис. 7. Примеры изображений для обучающей выборки
Fig. 7. Examples of images for the training sample
Корректировка параметров изображения строилась на основе освещенности и интенсивности цветов изображений, в данном исследовании – путем изменения дополнительного тангенса угла наклона характеристической кривой структуры изображе-ния, построенной в логарифмических координатах.
С помощью разработанного программного обеспечения проводилась разметка промысловых гидробионтов для обучающей выборки (рис. 8).
Рис. 8. Создание обучающей выборки для распознавания гидробионтов
Fig. 8. Developing a training sample for recognizing aquatic organisms
Пути к изображениям, координаты выделенных областей и их классы записываются в файлы XML, которые затем преобразуются в формат, пригодный для обучения сверточной НС в соответствующих фреймворках.
Исходя из вышесказанного, можно сделать
вывод о перспективности разработки программного обеспечения по распознаванию промысловых гидробионтов.
Тестирование программного обеспечения для детектирования промысловых гидробионтов
Модель YOLOv5 использует код PyTorch, для которого необходимо загрузить требуемые библиотеки. Затем определяем некоторые переменные и параметры, которые нам понадобятся. Па-раметр «Weights» представляет собой конфигурацию соответствующих предварительно обученных весов.
Поскольку распознаются только промысловые гидробионты, объекты будут выделяться единым цветом, поэтому генерация случайных цветов исключена. В настройках тестовой версии программного обеспечения заложены изменения цветовой гаммы для различных объектов. Поскольку ПО для создания обучающей выборки разработано в рамках научного исследования, в дальнейшем не будет зависимости от сущности идентифицируемых на изображениях объектов.
Загружаются примеры изображений из заранее подготовленного репозитория (заранее созданной обучающей выборки). До начала создания выборки необходимо адаптировать изображение под единый размер, чтобы оно подходило в качестве входных данных для НС. В рамках научного исследования предусмотрено оптимизационное ПО под единый размер статического изображения, с увеличением плотности ближайших пикселей. Нормализация значения пикселей происходит в диапазоне от 0 до 1, при этом изменятся размер изображения (до 416 × 416) и его форма.
В связи с тем, что в исследовании распознаются промысловые гидробионты, в качестве объекта распознавания выступает осетр. Задаются форма, цвет и метки для выделяемых объектов.
Изображение из подготовленного репозитория, проходя через НС, получает выходные параметры для каждой клетки сверточной НС YOLO (рис. 9).
Рис. 9. Выходные параметры для каждой клетки сверточной НС YOLO
Fig. 9. Output parameters for each YOLO SNS cell
Координатами выступают значения объекта на изображении x, y, w, h в сумме с оценкой достоверности установленной ограничивающей рамки. Параметр «Objectness» определяется с помощью метрики IoU (Intersectionover-Union – метрика степени пересечения между двумя ограничивающими рамками) во время обучения. Распознанные гидробионты в разработанном программном обеспечении выделяются рамками с подписью вероятности того, что исходный объект находится на изображении. Кроме того, реализована функция подсчета детектированных объектов (рис. 10).
Рис. 10. Итоговый результат системы распознавания промысловых гидробионтов
Fig. 10. Final result of the recognition system for commercial hydrobionts
Следует отметить, что скорость распознавания напрямую зависит не только от качества обучающей выборки и объема изображений, но и от технических характеристик электронной вычислительной машины. Тестирование производилось на процессоре Core i5, 2.53 ГГц с оперативной памятью 8 ГБ, время распознавания – 0,971 с.
Заключение
Обоснован выбор модели YOLO для исследования и описан принцип ее работы. Обоснована важность обучающей выборки и ее влияние на качество распознавания образов нейронной сетью.
Описаны принцип и последовательность разработки программного обеспечения для комплексного исследования в области распознавания различных объектов аквакультуры. Протестировано и описано тестовое распознавание промысловых гидробионтов, в частности из отряда осетрообразных. Проведен анализ существующих методов улучшения изображений с флуктуациями.
Задача удаления флуктуаций и улучшения качества входных изображений требует дальнейших исследований