Вы находитесь на странице: 1из 71

«Санкт-Петербургский государственный электротехнический университет

«ЛЭТИ» им. В.И. Ульянова (Ленина)»


(СПбГЭТУ «ЛЭТИ»)

Направление 11.03.01 - Радиотехника


Профиль Радиоэлектронные системы
Факультет РТ
Кафедра РС

К защите допустить
Зав. кафедрой _________________

ВЫПУСКНАЯ КВАЛИФИКАЦИОННАЯ РАБОТА


БАКАЛАВРА

Тема: АЛГОРИТМ АДАПТИВНОЙ СЕЛЕКЦИИ КОМПАКТНЫХ


ОБЪЕКТОВ НА ЦИФРОВЫХ ИЗОБРАЖЕНИЯХ РТС НАБЛЮДЕ-
НИЯ

Студент Норман Р.М.


подпись

Руководитель д.т.н., проф. Волков В.Ю.


(Уч. степень, уч. звание) подпись

Консультанты к.т.н., доц. Иванов А.Н.


(Уч. степень, уч. звание) подпись

к.т.н., доц. Маругин А.С.


(Уч. степень, уч. звание) подпись

Санкт-Петербург
2020
ЗАДАНИЕ
НА ВЫПУСКНУЮ КВАЛИФИКАЦИОННУЮ РАБОТУ

Утверждаю
Зав. кафедрой РС
________________________
« 11 » марта 2020 г.

Студент Норман Р.М. Группа 6102


Тема работы: Алгоритм адаптивной селекции компактных объектов на циф-
ровых изображениях РТС наблюдения
Место выполнения ВКР: СПбГЭТУ «ЛЭТИ», кафедра РС
Исходные данные (технические требования): среда программирования
MATLAB, код алгоритма адаптивной селекции объектов для решения задач
выделения предметов интереса на цифровых изображениях
Содержание ВКР: введение, адаптивная селекция объектов, алгоритм адап-
тивной селекции компактных объектов на цифровых изображениях, заклю-
чение
Перечень отчетных материалов: пояснительная записка, иллюстративный
материал, код алгоритма адаптивной селекции объектов в программной
среде MATLAB, презентация в среде PowerPoint
Дополнительные разделы: Безопасность жизнедеятельности

Дата выдачи задания Дата представления ВКР к защите


« 12 » марта 2020 г. « 12 » июня 2020 г.

Студент Норман Р.М.

Руководитель д.т.н., проф. Волков В.Ю.


(Уч. степень, уч. звание)

2
КАЛЕНДАРНЫЙ ПЛАН ВЫПОЛНЕНИЯ
ВЫПУСКНОЙ КВАЛИФИКАЦИОННОЙ РАБОТЫ

Утверждаю
Зав. кафедрой РС
________________________
« 11 » марта 2020 г.

Студент Норман Р.М. Группа 6102


Тема работы: Алгоритм адаптивной селекции компактных объектов на циф-
ровых изображениях РТС наблюдения

№ Срок выполне-
Наименование работ
п/п ния
1 Обзор литературы по теме работы 01.02 – 15.02
2 Введение 16.02 – 29.02
3 Раздел «Адаптивная селекция объектов» 01.03 – 14.03
Раздел «Алгоритм селекции компактных объектов
4 15.03 – 10.04
на цифровых изображениях»
5 Дополнительный раздел 11.04 – 24.04
6 Заключение 25.04 – 30.04
7 Оформление пояснительной записки 01.02 – 20.05
8 Оформление иллюстративного материала 01.05 – 20.05

Студент Норман Р.М.

Руководитель д.т.н., проф. Волков В.Ю.


(Уч. степень, уч. звание)

3
РЕФЕРАТ
Пояснительная записка 71 стр., 37 рис., 0 табл., 21 ист., 3 прил.
ЦИФРОВЫЕ ИЗОБРАЖЕНИЯ, ОБРАБОТКА ИЗОБРАЖЕНИЙ, ОБНА-
РУЖЕНИЕ ОБЪЕКТОВ, СЕЛЕКЦИЯ ОБЪЕКТОВ, МНОГОПОРОГОВАЯ
ОБРАБОТКА, АДАПТИВНЫЙ ПОРОГ, ПРОСТРАНСТВО ПРИЗНАКОВ,
АПРИОРНАЯ НЕОПРЕДЕЛЁННОСТЬ
Объектом исследования является алгоритм многопороговой обработки
цифровых изображений с последующими адаптивными обнаружением и се-
лекцией компактных объектов, реализованный в среде разработки MATLAB.
Цель работы – рассмотрение проблемы выделения объектов на изобра-
жениях, исследование и модификация алгоритма адаптивной селекции объек-
тов для решения задач выделения компактных объектов на цифровых изобра-
жениях радиотехнических систем дистанционного наблюдения с учётом по-
мех и шумов; получение и анализ статистических свойств селектируемых эле-
ментов.
Для решения поставленной задачи были смоделированы тестовые изоб-
ражения и использованы полученные радиотехническими системами дистан-
ционного наблюдения и технического зрения цифровые изображения радио-
локации и мониторинга; исследован и модифицирован алгоритм выделения
объектов, произведена адаптивная селекция компактных объектов интереса по
геометрическому критерию, получены и исследованы статистические свой-
ства выделяемых объектов, рассмотрены вопросы безопасности жизнедея-
тельности при использовании данного алгоритма.

4
ABSTRACT
The object of research is an algorithm for multi-threshold processing of digital
images with subsequent adaptive detection and selection of compact objects, imple-
mented in the MATLAB development environment.
The purpose of the work is to consider the problem of selecting objects in
images, research and modification of the adaptive object selection algorithm for
solving the problems of selecting compact objects in digital images of radio engi-
neering systems of remote observation, taking into account interference and noise,
obtaining and analyzing the statistical properties of the selected elements.
To solve this problem test images was modeled and used the obtained radio
systems remote surveillance and machine vision digital image radar and monitoring;
an algorithm to detect objects produced by the adaptive selection of compact objects
of interest is investigated according to geometric criteria, the statistical properties of
allocated objects and the issues of safety when using this algorithm are obtained and
investigated.

5
СОДЕРЖАНИЕ

ВВЕДЕНИЕ .......................................................................................................... 8
ПОСТАНОВКА ЗАДАЧИ ................................................................................. 10
1. АДАПТИВНАЯ СЕЛЕКЦИЯ ОБЪЕКТОВ ................................................ 12
1.1. Многопороговая обработка изображений ............................................ 13
1.2. Иерархическая структура изображений ............................................... 15
1.3. Адаптивная пороговая селекция ........................................................... 21
1.4. Селекция объектов по площади ............................................................ 22
2. АЛГОРИТМ АДАПТИВНОЙ СЕЛЕКЦИИ КОМПАКТНЫХ ОБЪЕКТОВ
НА ЦИФРОВЫХ ИЗОБРАЖЕНИЯХ ............................................................... 24
2.1. Структура алгоритма адаптивной селекции объектов ......................... 24
2.2. Анализ цифровых изображений, содержащих чистый шум ................ 30
2.3. Анализ адаптивной пороговой селекции объектов на тестовых
изображениях .................................................................................................. 34
2.4. Анализ адаптивной селекции объектов на изображениях РТС
наблюдения ..................................................................................................... 39
3. БЕЗОПАСНОСТЬ ЖИЗНЕДЕЯТЕЛЬНОСТИ ........................................... 49
3.1. Введение ................................................................................................. 49
3.2. Анализ работы алгоритма с точки зрения безопасности
жизнедеятельности ......................................................................................... 50
3.3. Выводы ................................................................................................... 54
ЗАКЛЮЧЕНИЕ .................................................................................................. 56
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ .......................................... 58
ПРИЛОЖЕНИЕ А. КОД АЛГОРИТМА АДАПТИВНОЙ СЕЛЕКЦИИ
ОБЪЕКТОВ НА ЦИФРОВЫХ ИЗОБРАЖЕНИЯХ .......................................... 60
ПРИЛОЖЕНИЕ Б. КОД МОДИФИЦИРОВАННОГО АЛГОРИТМА
АДАПТИВНОЙ СЕЛЕКЦИИ ДЛЯ ПОЛУЧЕНИЯ СТАТИСТИЧЕСКИХ
ХАРАКТЕРИСТИК ВЫДЕЛЕНИЯ ОБЪЕКТОВ ............................................. 64

6
ПРИЛОЖЕНИЕ В. РЕЗУЛЬТАТЫ СЕЛЕКЦИИ ОБЪЕКТОВ НА
ИЗОБРАЖЕНИЯХ РТС НАБЛЮДЕНИЯ ........................................................ 70

7
ВВЕДЕНИЕ
Многие задачи обнаружения, выделения и селекции объектов самых раз-
личных форм и размеров на изображениях играют ключевые роли и являются
существенными в различных областях исследований науки и техники. Доста-
точно показательным примером являются системы дистанционного радиови-
дения, которые могут использовать телевизионные камеры, инфракрасные ка-
меры, акустические и лазерные локаторы. Основными задачами данных си-
стем являются идентификация объектов, наблюдение за ними, сопоставление
и совмещение изображений от разных сенсоров и датчиков, а также восстанов-
ление изображений [1].
Современный мир и осуществляющаяся в нём деятельность побуждают
исследования по систематизации земной и водной местностей с помощью си-
стем дистанционного наблюдения. Одной из основных целей обработки дан-
ных мониторинга является извлечение и получение информации из изображе-
ний и её дальнейшее преобразование в знания.
Объектам интереса, по большей части, характерна большая компакт-
ность и более регулярная структура, чем объектам, их окружающим. Они
имеют разнообразные и изменяющиеся размеры и формы, а охватывающий их
фон может быть весьма интенсивным и нестационарным. К тому же, областям
изображений, которые представляют интерес, присущи небольшие отношения
сигнал/фон, а сами изображения могут иметь низкое качество, нечёткие гра-
ницы раздела объектов и относительно малое число уровней квантования. Фон
также может включать объекты, которые по структуре похожи с элементами
интереса. Данные особенности определяют высокую сложность обработки и
последующей селекции.
В современных системах дистанционного наблюдения часто интегриру-
ются данные от различных источников в рамках географических информаци-
онных систем (ГИС) специального назначения, что обуславливает актуаль-
ность раннего перехода от исходного растрового к структурированному (объ-

8
ектному или признаковому) представлению изображений. Существует боль-
шое разнообразие методов сегментации объектов для различных приложений
анализа изображений не только в системах дистанционного наблюдения, но и
в других системах анализа данных [2],[3]. Разнообразие доступных методов
создаёт проблему выбора наилучшего алгоритма для решения задачи в усло-
виях априорной неопределённости. Оно также усложняет воспроизводимость
результатов, учитывая количество свободных входных параметров, которые
устанавливают пользователем и которые часто выбираются субъективно.
До осуществления операций селекции происходит формирование обла-
стей объектов, которые формируются из первоначально единого сегмента с
последующей его фрагментацией на составляющие отдельные части. Указан-
ный подход оказывается конструктивен для сегментации изображений, полу-
ченных системами дистанционного зондирования. Однако ему свойственны и
существенные ограничения. В первую очередь, это сложность вычислитель-
ных процедур, которая связана с решением задач оптимизации, и требование
высокого быстродействия вычислителей, поскольку зачастую количество со-
здаваемых объектов оказывается достаточно большим. Кроме того, получае-
мые с помощью указанного метода результаты зависят от выбора начальных
точек в последовательности итераций, что нередко приводит к зависимости
решения от изменения начальных условий.
В традиционных схемах сегментации используются признаки, выделяе-
мые из исходного изображения, и лишь косвенно учитываются свойства объ-
ектов интереса. В частности, широко используются свойства изображения, за-
висящие от способа их формирования: гистограммы исходного изображения,
свойства границ областей сегментации (перепадов интенсивности) и контуров
отдельных объектов. С другой стороны, для сегментации практически не ис-
пользуются результаты последующей селекции объектов [1].
Таким образом, в настоящей выпускной квалификационной работе рас-
сматривается принцип работы алгоритма адаптивной селекции объектов, кото-

9
рая осуществляется на основе результатов многопороговой обработки изобра-
жений. Особенность данной методики состоит в изучении апостериорной ин-
формации о свойствах селектируемого объекта для различных значений порога
и выборе его оптимального значения на основании заданного критерия, опира-
ющегося на скалярный или векторный признак объекта. Объединение дескрип-
торов объекта в различных бинарных слоях, соответствующих различным по-
рогам, реализовано на основе решения обобщенной задачи сегментации, приво-
дящей к иерархическому множеству объектов. Таким образом, за счёт углуб-
лённой предварительной обработки удаётся улучшить характеристики как сег-
ментации изображения в целом, так и селекции объектов по ряду критериев, а
именно, обеспечить сохранность формы селектируемых объектов. Платой за
это является необходимость выполнения ресурсоемкой процедуры многопоро-
говой обработки, что в некоторой степени может быть компенсировано относи-
тельной простотой алгоритма и возможностью его параллельной реализации
[4].

ПОСТАНОВКА ЗАДАЧИ
Пусть имеются цифровые изображения, полученные радиотехниче-
скими системами наблюдения, дистанционного зондирования земной поверх-
ности, системами технического зрения, мониторинга и радиовидения и содер-
жащие на себе объекты, представляющие непосредственный интерес для ана-
лиза и рассмотрения. Такие объекты могут иметь произвольную ориентацию
и размеры по отношению ко всему изображению. При этом форма и располо-
жение этих объектов могут быть любыми. Ставится задача рассмотреть про-
блему выделения объектов на цифровых изображениях; исследовать извест-
ный многопороговый алгоритм, основанный на инвариантном по масштабу
геометрическом критерии (коэффициенте удлинения периметра), который ре-
ализует адаптивную пороговую селекцию описанных объектов на изображе-
ниях радиотехнических систем наблюдения; модифицировать его для после-

10
дующего достижения результатов его работы по селекции и получения стати-
стических зависимостей и характеристик выделяемых объектов (зависимостей
числа выделенных объектов от порогового уровня, общего количества изоли-
рованных объектов до и после селекции от значения порога, коэффициента
удлинения периметра от числа объектов и др.).

11
1. АДАПТИВНАЯ СЕЛЕКЦИЯ ОБЪЕКТОВ

В теории и практике распознавания объектов на изображениях в системах


дистанционного зондирования, технического зрения и при обработке данных
наибольшего внимания заслуживает подход с использованием многопороговой
обработки (см. 1.1.). При достаточно малых уровнях квантования порогов набор
получающихся бинарных слоев сохраняет всю информацию, которая содержалась
в исходном изображении. В то же время каждый бинарный слой легко подверга-
ется морфологической обработке при относительно небольших вычислительных
затратах. Исторически первыми развивались методы независимой обработки каж-
дого бинарного слоя в целях селекции объектов по заданным признакам.
Предлагаемый метод предусматривает установку для каждой категории
объектов интереса своего значения порога, который выбирается по определён-
ному критерию. При этом для описания категории объектов можно использовать
различные параметры, например, площадь объекта, его ориентацию, или инвари-
антные характеристики, такие как отношение квадрата периметра к площади, ко-
эффициент сжатия эллипса, а также другие геометрические или текстурные харак-
теристики (см. 1.3.). Как правило, категория объектов задается соответствующим
скалярным или векторным признаком. В этом случае на каждом двоичном слое
производится селекция объектов, удовлетворяющих заданным свойствам, и порог
бинаризации для каждого из таких объектов выбирается индивидуально, исходя
из принятого критерия оптимизации. Предложенный алгоритм нетрудно автома-
тизировать, что приводит к адаптивным методам установки локального порога на
уровне каждого выделенного объекта.
Однако изложенный подход не позволяет установить индивидуальный по-
рог для каждого объекта интереса, если такие объекты относятся к различным ка-
тегориям. Для выбора локального порога требуется установить связи между от-
дельными слоями, и принадлежность каждого пиксела к тому же самому, или к

12
новому объекту, который возникает на месте прежнего ввиду эффекта фрагмента-
ции при возрастании порогового уровня. Требуется установление связи между
пикселями с одинаковыми координатами на разных двоичных слоях [4].

1.1. Многопороговая обработка изображений


В данной работе рассмотрены методы селекции с использованием мно-
гопороговой обработки изображений. Такая обработка преобразует исходное
монохромное изображение в набор бинарных сечений (срезов). В случае су-
щественно большого числа порогов допустимо считать, что потери информа-
ции при таком преобразовании отсутствуют. К тому же обработка бинарных
изображений осуществляется намного легче и быстрее, чем обработка много-
уровневых изображений.
При объединении полученных бинарных срезов в дальнейшем будут
учитываться особенности изменений областей, занятых объектами, при повы-
шении порогового уровня. В результате этого формируется трёхмерная струк-
тура (см. 1.2.), в которой каждый объект занимает некоторый объём. В неко-
торых случаях одиночный пиксель изображения может принадлежать не-
скольким объектам одновременно. Осуществляемая в дальнейшем селекция
будет осуществляться с использованием различных геометрических крите-
риев [1]. Результаты селекции объектов при каждом значении порога могут
использоваться для адаптации пороговых уровней и для результирующей сег-
ментации изображения и селекции объектов на нём.
Существуют различные варианты использования многопороговой обра-
ботки в целях осуществления сегментации изображений. Они достаточно по-
дробно рассмотрены в работах [5] – [7]. В основном многопороговая селекция
объектов на изображении основана на свойствах гистограммы интенсивности
исходного изображения. В большинстве случаев последним шагом является
выбор единственного, глобального, оптимального порогового значения, тогда

13
как для каждого объекта требуется установить свой локальный порог. Свой-
ства объектов интереса и результаты их селекции при этом никак не учитыва-
ются.
Для осуществления селекции требуется описание ожидаемых свойств
объектов, которые непосредственно представляют интерес. Основными пред-
положениями являются связность соседних пикселей в области объекта инте-
реса и изолированность одного объекта от другого. Обычно в практических
задачах существует достаточно серьёзный недостаток информации об объек-
тах, за исключением классического размера и некоторых соображений отно-
сительно площади, периметра, формы и их ориентации на плоскости.
Иная идея состоит в выборе и установке оптимального порогового зна-
чения по критерию максимума гистограммы числа объектов и/или суммарной
площади, которую используют объекты, попадающие в заданный диапазон
площадей, по результатам произведённой предшествующей селекции объек-
тов для совокупности тестовых значений порога. Данный метод был представ-
лен в работах [8], [9] для селекции объектов, имеющих достаточно малую пло-
щадь. Его эффективность проявляется в наличии на исследуемых изображе-
ниях множества однотипных, схожих объектов, когда выбор наилучшего по-
рога основывается на достаточную статистику. Однако, в условиях малых вы-
борок предпочтительным оказывается анализ гистограммы суммарных площа-
дей.
Развитие данной идеи напрямую связано с принятием во внимание
формы и вида объектов, подлежащих последующей селекции. Однако, если
описанная выше методика не позволяет строго однозначно определить
наилучший оптимальный порог, то простейшим вариантом будет являться вы-
бор одного из ближайших по величине локальных экстремумов гистограммы.
В этом случае в качестве дополнительного критерия рассматривается геомет-
рический параметр объекта, например, отношение квадрата периметра к его
площади или отношение квадрата главной оси описывающего эллипса к пло-
щади объекта. Такой способ, например, применяется для селекции некоторых
14
видов клеток на микроскопических изображениях биологических срезов [10],
[11].
Последующее исследование описанного метода изложено в следующих
разделах данной работы и подразумевает под собой оценивание геометриче-
ских параметров объектов на бинарных изображениях после многопороговой
обработки и селекции их по заданному заранее геометрическому признаку. В
дальнейшем выбор оптимального порогового значения осуществляется в со-
ответствии с экстремумом оцениваемого параметра. В следующих разделах
исследуется метод селекции компактных объектов. Применённый способ сег-
ментации достаточно подробно проанализирован и исследован на тестовых,
испытательных изображениях с различными значениями отношения сиг-
нал/шум, а также на изображениях, регистрируемых реальными дистанцион-
ными системами наблюдения и системами технического зрения.

1.2. Иерархическая структура изображений


Трёхмерная структура изображений представляет значительный интерес в
основе многопороговой обработки изображений. Данную «систему» можно сфор-
мировать путём введения некоторого параметра, определяющего связи между
пикселями. Такая структура будет является трёхмерной иерархической, в основа-
нии которой имеется единственный бинарный (белый) объект на плоскости моно-
хромного изображения, который получается при нулевом значении порога и рав-
ный по площади всему изображению. Используя в качестве оси ординат последо-
вательно увеличивающегося значения порога, имеется возможность наблюдать на
данной структуре появление отдельных нулевых (чёрных) точек на бинарном
изображении вышележащего слоя, а затем их последующее объединение с форми-
рованием определённых областей внутри исходного объекта, который, в свою оче-
редь, также уменьшается в размерах (по площади), и, наконец, при некотором зна-
чении порога разрушении изначального объекта с образованием двух и более от-
делённых друг от друга элементов. Такой эффект аналогичен проникновению ну-

15
левых точек, или перколяции, приводившая к разрушению или исчезновению пер-
воначального, целостного объекта. В конечном счёте на месте исходного объекта
происходит образование новых отдельных объектов, которые, в свою очередь,
также могут прекратить существование при увеличении порогового значения.
Описанный уровень порога, при котором объект делится на элементы или исче-
зает, называется порогом перколяции для рассматриваемого объекта [12].
При достижении определённого значения порога объект интереса превра-
щается в совокупность элементов различной площади. При этом появляется во-
прос о преемственности какого-либо из образовавшихся элементов к первоначаль-
ному целостному объекту. В качестве «наследника» можно выбрать тот сформи-
ровавшийся объект, который занимает наибольшую площадь, однако таких эле-
ментов может быть несколько. Кроме того, площади, которые имеют новые объ-
екты, могут быть относительно небольшими по сравнению с изначальной площа-
дью исходного объекта. Следовательно, ставится задача введения количествен-
ного критерия, по величине которого можно сделать заключение о том, является
ли новый фрагмент продолжением исходного, или сформировавшиеся элементы
стоит воспринимать как новые элементы со своей площадью.
Рассмотрим ситуацию, при которой значение порога равно T = 0, при этом I
(x, y) > 0 удовлетворяется для всего изображения. Таким образом, образовывается
бинарный слой, который содержит один глобальный изолированный объект с ба-
зовым размером (площадью) S0, который, в свою очередь, ровняется полному раз-
меру изображения (см. нижний слой на рис. 1). Затем значение данного порога T
увеличивается на ΔT, и некоторые пиксели оказываются ниже заданного порога
ΔT, и, таким образом, создаётся новый двоичный слой, удовлетворяющий I (x, y) >
ΔT. Если шаг изменения порога ΔT сравнительно мал, и только небольшая часть
пикселей выпадает из объекта, глобальный бинарный объект сохраняется как со-
вокупность связных точек с уменьшенной площадью ST, меньшей по сравнению
со значением площади объекта на первом бинарном слое (ST < S0).
На каждом шаге отношение площадей объектов, расположенных на сосед-
них слоях ST+ΔT/ST, описывает долю связных пикселей, сохранившихся в пределах
16
изолированного объекта. До тех пор, пока данной отношение равно или превы-
шает одну вторую, «верхний» объект следует рассматривать как однозначного
преемника «нижнего» объекта, который, в свою очередь, является его единствен-
ным предшественником. Дальнейшие добавки к порогу оставляют всё большее
количество пикселей ниже новых порогов T+k.ΔT, где k – целочисленный номер
слоя, k = 0,1, …, N. Наряду с этим площадь объекта уменьшается.
В конечном счёте, увеличение порога приводит к образованию разрывов в
исходном глобальном объекте, а затем, к отделению от него изолированных фраг-
ментов. Значение ST+ΔT/ST, равное отношению площадей объектов на соседних
слоях изображения и обозначаемое как Kp, можно считать характеристикой «со-
храняемости» или устойчивости (персистентности) объекта при увеличении по-
рога [13, c. 171].
В определённой критической точке, которая характеризуется как порог пер-
коляции Tc, доля пикселей с интенсивностью ниже этого порога становится доста-
точно большой, и эти пиксели станут сливаться вместе, тем самым образуя гло-
бальный большой разрыв, который ограничен только размером изображения. А
это, в свою очередь, приводит к фрагментации, дроблению и уничтожению перво-
начального основного объекта. Этот переход следует определять термином перко-
ляция [12].
На том основании, что теория перколяции достаточно хорошо представлена
в статистической физике и действительно широко используется в различных об-
ластях науки и техники – от моделирования диффузии до распространения лесных
пожаров, в данной работе рассматриваются теоретические основы довольно про-
стых примеров, которые и по сей день актуальны для понимания методологии ана-
лиза изображений, связанной с перколяцией.
Если определить условие сохранения объекта на каждом шаге увеличения
порога как Kp ≥ 0,5, то при фрагментации объекта на две равные части всегда будет
выполняться неравенство (с учётом того, что граничные пиксели выпадают из об-
щей площади) Kp < 0,5. Это в достаточной степени определит момент разрушения
первоначального объекта и возникновения в дальнейшем на его месте двух новых.
17
При значениях, больших половины (Kp > 0,5), условие сохранения объекта стано-
вится существенно жёстче, и, наоборот, при меньших Kp < 0,5 потребуется введе-
ние дополнительных ограничений на характеристики объектов для решения за-
дачи об однозначном определении преемника.
Нарушение условия сохранения рассматриваемого объекта при достижении
порога перколяции показывает либо то, что объект полностью исчез, либо он раз-
дробился на множество фрагментов, которые затем стали отдельными, независи-
мыми объектами интереса. Количество пикселей в объекте, которое оценивается
как отношение площади объекта при пороге перколяции к общей площади исход-
ного объекта (Pc = STc/S0), интенсивность в которых превышает значение порога
перколяции Tc, называется коэффициентом перколяции для данного рассматрива-
емого объекта.
Начальный бинарный слой (срез) для нового рассматриваемого объекта со-
здаётся в момент перколяции предшественника, затем новый объект сохраняется,
пока условие превышения интенсивности над порогом I(x, y) >Tk будет выпол-
няться до момента его разрушения. В данном случае коэффициент перколяции Pc
характеризует степень неоднородности текстуры поверхности объекта. Если объ-
ект имеет плоский пик (вершину) с постоянным значением интенсивности I(x, y)
= const, а также крутые кромки с резким изменением его изменением, то при пре-
вышении некоторого определённого порога данный элемент на изображении пол-
ностью пропадает, и, следовательно, коэффициент перколяции для всего объекта
равен единице, Pc = 1. В этом случае само значение интенсивности ни коим обра-
зом не влияет на величину коэффициента перколяции; по сути он будет являться
инвариантом к изменению сдвига и масштаба изображения. Однако, если же объ-
ект плавно и гладко меняет свою интенсивность по координатам изображения, то
есть в пределах кромки имеется малый градиент интенсивности, то преемствен-
ность между соседними срезами с увеличением порога будет сохраняться до тех
пор, пока выполняется условие ST+ΔT ≥ Kp·ST. Процесс уменьшения площади по-

18
добного объекта определённо может занять достаточное число шагов. Как резуль-
тат, на момент перколяции она будет малой, и это в дальнейшем определит не-
большое значение коэффициента перколяции Pc для данного объекта.
Для того, чтобы обеспечить единственность выбора преемника для исследу-
емого объекта интереса, в каждом из «верхних» слоев значение коэффициента
персистентности Kp должно оставаться в диапазоне между 0,5 и 1. При этом все
другие обособившиеся фрагменты этого объекта воспринимаются как новые.
Каждый из них изначально появляется для своего значения порога Tb, который
называется базовым. Для увеличения детализации и лучшей конкретизации струк-
туры изображения можно установить Kp = 1, что накладывает на «жизнь» исход-
ного объекта наиболее жесткие требования, когда потеря даже одного пикселя
приводит к образованию нового фрагмента. В ином случае, выбор Kp = 0,5 приво-
дит к значительному сокращению общего числа трёхмерных объектов, занимаю-
щих несколько бинарных слоев. Если же рассматривать значения коэффициента
персистентности, меньшие половины, Kp < 0,5, то в таких случаях объект может с
определённой долей вероятности получить несколько равноправных преемников
на более «верхних» слоях. При относительно малых значениях данного коэффи-
циента Kp, будет потеряна разрешающая способность из-за того, что все объекты
на «верхних» слоях окажутся «наследниками» исходного начального изображе-
ния [13].
На рис. 1 приведены модели многопорогового представления изображений.
Слева (рис. 1, а) представлена иерархическая структура случайного сигнала
(шума) «в разрезе» на бинарные слои, справа (рис. 1, в) – аналогичная структура
для двух объектов прямоугольной формы с наложенным на них аддитивным
шумом, по центру (рис. 1, б) – примеры цифровых изображений, соответству-
ющих таким трёхмерным моделям. Тональность кодирует номер объекта при
решении обобщенной задачи иерархической сегментации, охватывающей не-
сколько последовательно расположенных двоичных слоев. Изменения тональ-

19
ности изображения по слоям от «нижнего» к «верхнему» показывает фрагмен-
тацию объекта при увеличении порога до момента достижения порога перко-
ляции и полного исчезновения данного объекта.
Реальные сцены, отображаемые на цифровых изображениях, довольно не-
однородны, показывая статистические свойства, которые сильно отличаются от
чистого шума, и включают различные значения Pc. Поэтому коэффициент перко-
ляции Pc является количественной характеристикой изменения объекта при мно-
гопороговой обработке. Данный коэффициент отражает связь между двумя бинар-
ными (двоичными) слоями (исходным и конечным) для каждого объекта на таком
изображении. При этом коэффициент персистентности Kp описывает связи между
двумя соседними бинарными слоями [4].

Рисунок 1 – Многопороговое представление изображений, содержащих


а) случайное поле интенсивности (шум), б) два прямоугольных объекта с
наложенным аддитивным шумом, в) детальная иллюстрация двух объектов
прямоугольной формы на фоне шума [4]
20
В результате применения указанных критериев формируется трёхмерная
иерархическая структура для каждого объекта, который больше не принадлежит
единственному двоичному слою, а занимает в структуре несколько бинарных
слоёв k = 0, …, K до достижения своего порога перколяции. Формирование такой
структуры позволяет решать часто встречающиеся задачи селекции объектов и
сегментации изображения, при этом решения могут различаться в зависимости от
критериев, которые будут описаны в подразделе 1.3. настоящей работы.

1.3. Адаптивная пороговая селекция


Среди самых различных практических задач, которые в данный момент ре-
шаются с помощью предложенного трёхмерного представления с использованием
многопороговой обработки, наиболее важной является адаптивная пороговая се-
лекция объектов. В этом случае каждый пиксель на изображении будет отнесен
только к одному локализованному объекту. Для каждого выбранного объекта ин-
тереса, который охватывает несколько бинарных слоев в таком трёхмерном пред-
ставлении, оптимальный порог Topt, который соответствует слою с его лучшим
плоским представлением, может быть выбран по различным геометрическим или
текстурным критериям.
Таким критерием может быть площадь или диапазон площадей селектиру-
емых объектов. Он наиболее эффективен в случае селекции множества однотип-
ных, похожих объектов, когда можно ограничиться единственным глобальным
порогом. Однако неудобство его применения связано с необходимостью задания
абсолютных значений площади в пикселях.
В других же случаях, особенно на практике, площадь неизвестна, её значе-
ния могут различаться для разных объектов, и требуется селекция по форме. По-
этому развитие данной идеи связано именно с учётом формы селектируемых объ-
ектов. Геометрическим инвариантом является коэффициент удлинения пери-
метра PS = P2/4πS, где P – периметр объекта, S – его площадь. Этот коэффициент
является мерой компактности области [11]. Другим геометрическим инвариан-
том, который также характеризует компактность, служит коэффициент удлинения
21
главной оси L описывающего эллипса PL = πL2/4S. Далее в разделе 1.4. рассматри-
вается селекция объектов по площади, которая включает в себя оценивание таких
геометрических параметров объектов интереса на всех двоичных изображениях
после многопороговой обработки и селекции их по заданному геометрическому
признаку [1].

1.4. Селекция объектов по площади


При такой селекции объектов считается, что основным и свойством, отли-
чающим объект интереса от шумового фона, является связность смежных пиксе-
лей на бинарном изображении IT. Рассмотрим пороговую обработку изображений
на примере алгоритма, реализующего адаптивную пороговую селекцию связан-
ных объектов в целях выделения компактных, мелкомасштабных объектов инте-
реса по площади. Структура такого алгоритма приведена на рис. 2.

Рисунок 2 – Структура алгоритма селекции объектов по площади


На вход данной системы подаётся исследуемое изображение, которое
впоследствии подвергается пороговой обработке. В первом блоке, имеющим
название «Регистрация», происходит приём этого цифрового изображения, ко-
торое представляется двумерным массивом на прямоугольной сетке отсчётов.
Фильтр F осуществляет предварительные фильтрацию и сглаживание вход-
ного изображения для его улучшения, подчёркивания перепадов и границ, а
также устранения нестационарности фона и различных импульсных помех

22
[11]. Следующие затем квантователи формируют, как показано на рисунке 2,
M бинарных слоёв, полученных путём деления трёхмерного изображения с ис-
пользованием порогов Tm, где 𝑚 = ̅̅̅̅̅̅
1, 𝑀. Далее созданные двоичные слои по-
ступают на вход системы из k каналов. Каждый канал в такой группе настроен
на определённый диапазон площадей изолированных объектов Sk, где 𝑘 =
̅̅̅̅̅
1, 𝐾. Каналы включают в себя преселекторы таких объектов и счётчики, кото-
рые подсчитывают число выделенных объектов и входящих в их состав пик-
селей. В результате адаптации для каждого такого канала выбирается своё зна-
чение порога 𝑇𝑚𝑘 , то есть свой бинарный слой, который содержит отселекти-
рованные наилучшим способом объекты, имеющие площадь в заданном диа-
пазоне. Соответственно, на выходе каналов образуется множество таких
слоёв. Затем они поступают в блок, в котором осуществляется выбор того, ко-
торый соответствует максимальному числу пикселей. Номер этого канала и
значение порогового уровня (номер слоя) передаются из него в выходной се-
лектор. Он передаёт на выход бинарное изображение из первого входа, соот-
ветствующее параметрам, поступившим на его второй вход [4].

23
2. АЛГОРИТМ АДАПТИВНОЙ СЕЛЕКЦИИ КОМПАКТНЫХ ОБЪЕК-
ТОВ НА ЦИФРОВЫХ ИЗОБРАЖЕНИЯХ

2.1. Структура алгоритма адаптивной селекции объектов

Данный алгоритм был осуществлён, а затем модифицирован и исследо-


ван в среде разработки MATLAB и основан на базе всех тех условий и пред-
ставлений, которые описаны в первой части настоящей работы. В данном раз-
деле рассматривается его структура и основные составляющие блоки.
Непосредственно перед началом работы алгоритма осуществляется
определение исходных параметров Kp, Smin, PSmax, Tstep (шаг, с которым будет про-
ходить анализ трёхмерной структуры), начальное и наибольшее возможное числа
объектов Nobj и maxobj, а также общее число бинарных слоёв Tmax, на которые де-
лится рассматриваемое изображение. В дальнейшем значения этих констант под-
лежат варьированию для разных изображений в целях получения наиболее луч-
шего вида представленных на них объектов.
Затем происходит загрузка исходного изображения, которая выполня-
ется командой imread('название изображения.формат'). После этого определя-
ются размеры данного изображения в пикселях, и если величина его третьей
координаты превышает единицу, то полученное системой цифровое полно-
цветное изображение переводится в полутоновое чёрно-белое. По окончании
такого преобразования это изображение для наглядности выводится с помо-
щью специальной команды imshow(). Последующие операции будут произво-
диться именно с ним.
На следующем этапе происходит подготовка пустых массивов для хра-
нения будущих результатов при помощи команды deal([]) и определение ре-
шающей статистики для каждого объекта, подвергающегося селекции, а также
расчёт значений оптимальных порогов для каждого такого селектируемого
объекта. Данные операции осуществляются командами
Ps_base = NaN(max_obj,length(T_step+1:T_step:T_max))
T_opt = NaN(max_obj,1)
24
V_opt = NaN(max_obj,1),
где в качестве параметров функции NaN используются вышеописанные пара-
метры, установка значений которых производилась до начала работы алго-
ритма.
Далее в параметры S{1} и I{1} закладываются результаты поиска свя-
занных компонент, которые содержатся в бинарном изображении, и массив
нулей (пустая матрица), размер которого равен произведению результата
предыдущей операции и размера изображения для хранения изображения с от-
меченными изолированными объектами.
На следующем этапе работы алгоритма происходит проверка значений
площадей объектов с использованием цикла по числу связанных объектов пу-
тём сравнения с заданным ранее параметром Smin для уменьшения общего числа
расчётов. При этом объекты, имеющие площадь в пикселях, меньшую по своему
значению, чем Smin, в дальнейшем не учитываются как представляющие интерес.
Выполняется селекция объектов по площади (подробнее в 2.2.).
В части алгоритма, следующей далее, осуществляется основная идея
многопороговой обработки изображений и селекции объектов на них. Она ре-
ализуется в пошаговом, пороговым (цикловом) прохождении по трёхмерной
иерархической структуре. Значение шага прохождения Tstep при этом может из-
меняться пользователем. Вначале, для каждого значения порога T полученное
ранее чёрно-белое изображение подвергается бинаризации. При этом пиксели,
превышающие по своему значению интенсивности значение порога Т, заменя-
ются единицей, а те пиксели, которые, интенсивность которых оказалась
меньше порогового уровня, обращаются в ноль. Затем на бинарных слоях,
каждый из которых соответствует своему порогу, производятся поиск и выде-
ление связанных компонентов (изолированных объектов). Фактически, выпол-
няется поиск и выделение единиц из множества нулей (см. рис. 3) посредством
выполнения команды S{T}=bwconncomp(бинарный слой) и измерение свойств
(в данном случае, периметра) для каждого связанного объекта в S{T}, который

25
является структурой, возвращаемой описанной командой bwconncomp(). По-
следующие блоки будут входить в состав этого же цикла, поскольку они вы-
полняют расчёт определённых параметров для каждого значения порога Т.

Рисунок 3 – Фрагмент результата бинаризации цифрового изображения


Далее исследуемый алгоритм переходит к исполнению другого под-
цикла по всем таким изолированным объектам (строки кода 57-59, Приложе-
ние А), в котором реализуется определение координаты первой точки в рас-
сматриваемом (текущем) объекте и нахождение числа базовых объектов. Это
достигается путём применения команд
cur_crd = S{T}.PixelIdxList{i}(1)
base_num = I{T-T_step}(cur_crd).
Затем следует второй цикл (строки кода 61-68, Приложение А), обеспе-
чивающий определение числа объектов на один слой ниже (на предыдущем
слое).
Последующий блок подразумевает собой проверку двух соседних слоёв
трёхмерной иерархической структуры на устойчивость и сохранение на них
объектов с применением вышеописанного коэффициента персистентности Kp.
В неё входит расчёт площади и периметра «родительского» объекта, значения
которых используются для определения меры компактности (коэффициента
удлинения периметра), равной отношению квадрата периметра рассматривае-
мого объекта к его площади, а также для создания нового базового объекта. На

26
протяжении всего выполнения глобального цикла по многопороговой обра-
ботке изображения отображаются значения пороговых уровней Tk в команд-
ном окне MATLAB в целях контролирования собираемых статистик.
После этого реализуется цикл (строки кода 122-136, Приложение А) над
всеми анализируемыми объектами, расположенными на один слой ниже, ко-
торые не имели «преемников». На этом основная, глобальная часть алгоритма
заканчивается.
На завершающем этапе осуществляется вывод изображения, представ-
ляющего собой бинарной слой при оптимальном значении порога, содержа-
щего наилучшим образом отселектированные объекты. При этом справа от
него размещается цветовая шкала, которая показывает значение площади объ-
екта. Данные операции реализуются с использованием команд
figure
imagesc(I_P)
colorbar,
где I_P – бинарный слой, обеспечивающий наиболее приемлемое отображение
выделенных объектов с сохранением их формы.
Помимо этого, данный алгоритм адаптивного выделения объектов на
цифровых изображениях содержит возможность пообъектного вывода резуль-
татов селекции. Пример отображений результатов работы алгоритма приведён
на рис. 4.

27
а) б)

в) г)

д) е)

Рисунок 4 – Отображение результатов селекции: а) исходное изображение


[14]; б) общий результат; в) – е) пообъектный вывод результатов

28
На рис. 4, а представлено исходное изображение, подвергающееся даль-
нейшей обработке, на рис. 4, б – итоговый результат селекции всех полезных
объектов, представляющих непосредственный интерес, на рис. 4, в – е пока-
зана возможность одиночного вывода объектов интереса.
Рассматриваемая в подразделе 1.4. структурная схема алгоритма адап-
тивной селекции по площади отвечает требованиям и принципам построения
исследуемого алгоритма и может быть подробно отображена и дополнена для
полного соответствия (см. рис. 5).

Рисунок 5 – Структурная схема исследуемого алгоритма селекции объ-


ектов на цифровых изображениях
Полный код исследуемого алгоритма, осуществляющего адаптивную се-
лекцию объектов на цифровых изображениях, приведён в Приложении А.
Для получения наиболее информативного и статистического описания и
представления осуществляемой операции по выделению объектов были реа-
лизованы в среде MATLAB создание и вывод графических зависимостей се-
лектируемых объектов, характеризующие выполняемый процесс по обнару-
жению и локализации полезных объектов. Такими статистическими характе-
ристиками являются зависимость коэффициента удлинения периметра от
числа объектов, зависимости количества объектов от порогового уровня до и
после селекции, зависимость числа выделенных объектов от значения порога
и др.

29
Код алгоритма адаптивной селекции объектов, модифицированный для
получения статистических характеристик выделяемых элементов с возможно-
стью их графического представления, приведён в Приложении Б.
В подразделах 2.2. – 2.4. исследуется работа алгоритма адаптивной се-
лекции объектов на цифровых изображениях.

2.2. Анализ цифровых изображений, содержащих чистый шум

Рассмотрим цифровое изображение, сгенерированное в программной


среде MATLAB командой
I_src = uint8(randn(256).*256),
где I_src – переменная, хранящая в себе созданное изображение, uint8 – ко-
манда, которая преобразует элементы массива в скобках в 8-разрядные целые
числа, randn – команда, возвращающая матрицу 256 на 256, содержащую псев-
дослучайные значения, полученные из стандартного нормального распределе-
ния. Таким образом, было создано цифровое тестовое изображение размером
256×256 пикселей, представляющее собой чистое гауссовское шумовое поле
(см. рис. 6), бинаризации (без селекции (см. рис. 7) и с селекциями по площади)
которого анализируется далее.

Рисунок 6 – Тестовое изображение, содержащее чистый шум

30
Рисунок 7 – Бинаризация чистого шума без селекции по площади
(Smin=0)
Максимальное количество изолированных объектов на таком поле воз-
никает при пороговом уровне T = 150 и достигает 4900. В основном, это мел-
кие объекты, площадь которых не превышает 10 пикселей и которые не пред-
ставляют из себя информационно-полезных объектов интереса. К тому же, та-
кое большое количество элементов существенно перегружает вычислитель, не
обладающий высоким быстродействием. Так, проведённые эксперименты по-
казали, что простая бинаризация такого случайного поля без селекции по пло-
щади занимает в среднем 80 минут, в то время как на бинаризацию с устране-
нием объектов, площадь которых не превышает 5-и пикселей, затрачивается
около 16 минут, 20-и квадратных пикселей – 3 минуты. По этой причине реко-
мендуется удалять слишком мелкие объекты перед выделением по геометри-
ческому признаку (коэффициенту удлинения периметра). Таким образом, по-
является необходимость осуществления предварительной селекции по пло-
щади с использованием параметра Smin.
Так, на рис. 8 – 10 представлены изолированные объекты после селекции
по площади с Smin = 5, 10 и 20 соответственно.

31
Рисунок 8 – Результат селекции объектов по площади с Smin = 5

Рисунок 9 – Результат селекции объектов по площади с Smin = 10

Рисунок 10 – Результат селекции объектов по площади с Smin = 20


32
Как следует из приведённых результатов по выделению объектов: пред-
варительная селекция по площади с использованием Smin позволяет суще-
ственно уменьшить число изолированных объектов после бинаризации, т.е.
минимизировать «мусорные», шумовые и фоновые элементы, имеющие незна-
чительную площадь. Это хорошо прослеживается из рис. 11, на котором пред-
ставлены зависимости количества изолированных объектов от порога, где
верхняя кривая отображает количество объектов до селекции, а нижняя – по-
сле селекции с данными значениями Smin.

а) б) в)
Рисунок 11 – Зависимости количества изолированных объектов от порогового
уровня до (синяя кривая) и после селекции (красная кривая) с параметром: а)
Smin=5; б) Smin=10; в) Smin=20
В дополнение к вышеизложенному стоит учесть, что ограничение мак-
симального значения для коэффициента удлинения периметра PS приводит к
дополнительному удалению шумовых объектов, имеющих слишком большие
коэффициенты удлинения. Полагается, что эти объекты имеют фрактальные
структуры и не представляют собой объекты интереса. Значение PSmax является
важным параметром для адаптивной селекции объектов. Исследуемый алго-
ритм выделения объектов интереса удаляет те объекты, для которых PS ≥ PSmax.
Таким образом, можно сделать вывод, что предварительная селекция
объектов по площади уменьшает вероятность появления шумовых объектов,
по сравнению с простой бинаризацией, при этом она практически не влияет на
значения коэффициента удлинения периметра PS для остальных объектов.

33
2.3. Анализ адаптивной пороговой селекции объектов на тестовых
изображениях

В подразделе далее в качестве стандартного примера для более показа-


тельной селекции компактных объектов осуществляется анализ работы иссле-
дуемого алгоритма на так называемых тестовых изображениях. Одно из таких
приведено на рис. 12. Оно представляет собой совокупность компактных фраг-
ментов, расположенных на поле исследования размером 256×256 пикселей в
матричном виде и имеющих форму квадрата с размерами 16×16 пикселей каж-
дый, и наложенный на них аддитивный белый шум. В данном случае отноше-
ние сигнал/шум по контрасту q в каждом пикселе, расположенном на объекте,
примерно равняется единице и составляет 1,163.

Рисунок 12 – Исследуемое тестовое изображение, содержащее 49 объектов


квадратной формы, искажённых аддитивным белым шумом
Данное изображение, полученное в результате моделирования, в ходе
работы исследуемого алгоритма было преобразовано в 8-битный цифровой
формат для получения значений интенсивностей в интервале [0;255]. После
проведения операции сравнения с порогом T формируются несколько бинар-
ных изображений, являющихся результатом работы алгоритма. Так, на рис. 13
показаны двоичное изображение, являющееся результатом селекции компакт-
ных объектов при Smin = 125 и PSmax = 25 и трёхмерная иерархическая струк-
тура.

34
а) б)
Рисунок 13 – Результат выделения: а) изолированные объекты после селек-
ции; б) представление трёхмерной многопороговой структуры
Такой результат выделения компактных объектов интереса получен при
оптимальном значении порога и обеспечивает приемлемый вид, который за-
ключается в сохранении формы полезных объектов и достаточно малом числе
ложных фрагментов, образовавшихся при обработке изображения.
На рис. 14 приведены результаты однопороговой селекции связных объ-
ектов на этом же изображении. При последовательном снижении порога T от
его оптимального значения (см. рис. 14, а) наблюдается присоединение фоно-
вых пикселей, которые принадлежат к границам и окружающим эти объекты
шуму. Для такой ситуации наиболее характерным является формирование на
границах компактных объектов новых отростков, которые разрастаются, а за-
тем и вовсе делают соседние элементы на изображении сливающимися; обра-
зуются так называемые конгломераты. При этом очевидно, что число объектов
интереса может уменьшаться. К тому же, в шумовых областях возможно по-
явление ложных фрагментов, значение площади которых может достигать зна-
чений площадей полезных объектов.
Наоборот же, при последовательном повышении порога (см. рис. 14, б),
которое необходимо для минимизации числа ложных фрагментов, прослежи-
вается потеря пикселей в области объектов интереса вплоть до их полного ис-

35
чезновения. Так, при малых отношениях сигнал/шум полезные объекты пре-
терпевают значительные деформации своих границ. Они существенно искажа-
ются и впоследствии образуют так называемые фракталы. Это приводит к су-
щественному увеличению периметра таких объектов, и соответственно, к по-
вышению значений коэффициента PS.

а) б)
Рисунок 14 – Два вида искажения формы компактных объектов после осу-
ществления операции селекции: а) при уменьшении порога, б) при увеличе-
нии порога
Для наглядного представления изменения общего количества связанных
объектов Nobj от порогового уровня T на рис. 15, а приведено графическое отоб-
ражение зависимости числа связанных объектов от значения порога. Как мо-
жет быть видно из рис. 13 и 15: все 49 квадратных объектов интереса на дан-
ном тестовом изображении выделились должным образом. К тому же следует
подчеркнуть сам результат проведённой адаптивной селекции с точки зрения
имеющегося количества объектов на изображении как до селекции, так и по-
сле неё. На рис. 15, б представлена типичная зависимость числа изолирован-
ных объектов от порогового значения. При этом верхняя кривая отображает
число объектов без селекции, а нижняя кривая – после селекции.

36
а) б)

Рисунок 15 – Графическое отображение зависимостей: а) общего количества


связанных объектов от порогового уровня; б) числа изолированных компакт-
ных объектов от порога до селекции (верхняя кривая) и после селекции (ниж-
няя кривая)
Сравнительно лучшие результаты селекции на аналогичном тестовом
изображении достигаются путём использования более высокого значения от-
ношения сигнал/шум по контрасту q. Объекты интереса на таком изображении
имеют отношение сигнал/шум в каждом пикселе q = 2,326 (см. рис. 16).

Рисунок 16 – Тестовое изображение с q = 2,326


Результатом операции по селекции компактных объектов на таком изоб-
ражении служит бинарный слой, полученный при тех же значениях Smin и PSmax
(см. рис. 17). Как может быть видно, выделяемые объекты интереса имеют бо-
лее предпочтительный вид с точки зрения наглядности для наблюдателя по
37
сравнению с объектами, полученными для первого тестового изображения, в
силу большего значения отношения сигнал/шум по контрасту q.

Рисунок 17 – Результат выделения компактных объектов на тестовом цифро-


вом изображении
Помимо этого, достаточно наглядным следует привести описывающий
анализ другого тестового изображения, которое в свою очередь также было
смоделировано для исследования на нём алгоритма по выделению объектов
интереса. Такое изображение (см. рис. 18) включает в себя набор объектов пря-
моугольной формы, длины которых увеличиваются при расположении слева
направо при сохранении неизменности их ширины. Данные объекты искажены
наложенным аддитивным гауссовским шумом. Отношение сигнал/шум по
контрасту q при этом возрастает от верхних фрагментов к низшим.

Рисунок 18 – Исследуемое тестовое изображение, содержащее прямоуголь-


ные объекты разных размеров, имеющих разное отношение «сигнал/шум»
38
Исследуемый алгоритм адаптивной селекции компактных объектов на
данном цифровом изображении реализован при Smin = 140 и PSmax = 25, а также
получена графическая зависимость числа изолированных объектов от порого-
вого значения (см. рис. 19, а-б соответственно). Данный результат выделения
объектов подчёркивает очевидный факт, заключающийся в том, что обнару-
жение и последующая селекция элементов интереса даёт тем лучший резуль-
тат, чем большее отношение сигнал/шум по контрасту имеют объекты (их пик-
сели) на фоне помехи.

а) б)
Рисунок 19 – Результат работы алгоритма: а) селекция разноразмерных объ-
ектов на тестовом изображении, имеющих разное значение q; б) зависимости
числа изолированных объектов от порога до и после селекции

2.4. Анализ адаптивной селекции объектов на изображениях РТС


наблюдения

В данном подразделе настоящей выпускной квалификационной работы


осуществляется исследование и анализ работы алгоритма по выделению объ-
ектов интереса на изображениях, полученных радиотехническими системами
наблюдения, системами радиовидения, мониторинга и телевизионными каме-
рами.

39
Так, для более показательного и детального представления о влиянии
значения коэффициента персистентности на конечный результат осуществля-
емой алгоритмом адаптивной селекции можно использовать изображение, по-
лученное системой дистанционного зондирования акватории и содержащее
объекты интереса, а именно, лодки, которые подвергаются последующему вы-
делению из фона (см. рис. 20).

Рисунок 20 – Исходное для обработки изображение, полученное системой


дистанционного зондирования водной поверхности [14]

На рис. 21 – 24 отображены результаты работы данного алгоритма по


обнаружению и селекции данных объектов, полученные для значений коэф-
фициента персистентности 0,5, 0,7, 0,85 и 1 соответственно.

40
Рисунок 21 – Результаты работы алгоритма по обнаружению и селекции объ-
ектов интереса при значении коэффициента персистентности, равном поло-
вине
Как можно заметить из рис. 21, значение коэффициента персистентности
Kp = 0,5 является граничным для выполнения условия сохранения рассматривае-
мого объекта. При этом хорошо видно, что рассматриваемые объекты либо пол-
ностью исчезли, либо они раздробились на некое множество фрагментов, которые
затем стали отдельными, независимыми объектами интереса. Также следует под-
черкнуть, что выбор Kp = 0,5 приводит к значительному сокращению общего числа
трёхмерных объектов, которые занимают несколько двоичных слоёв – данный ри-
сунок это наглядно демонстрирует.

41
Рисунок 22 – Результаты работы алгоритма по обнаружению и селекции объ-
ектов интереса при значении коэффициента персистентности, равном 0,7

Рисунок 23 – Результаты работы алгоритма по обнаружению и селекции объ-


ектов интереса при значении коэффициента персистентности, равном 0,85

42
Рисунок 24 – Результаты работы алгоритма по обнаружению и селекции объ-
ектов интереса при значении коэффициента персистентности, равном еди-
нице
Полученные экспериментально результаты подчёркивают, что уста-
новка коэффициента персистентности Kp = 1 ведёт к существенному увеличе-
нию детализации и получению лучшей конкретизации структуры изображения,
что накладывает на «жизнь» исходного объекта наиболее жесткие требования
вплоть до того случая, когда потеря даже одного пикселя приводит к образованию
нового фрагмента.
В дополнение к вышеизложенному в качестве типичного примера далее
рассматриваются изображения, полученные системами дистанционного зон-
дирования земной поверхности и прилегающих к ним акваторий. Данные
изображения представлены ниже на рис. 25. Задача обнаружения и последую-
щей селекции состоит в том, чтобы определить и локализовать в этих сценах
компактные предметы, представляющие непосредственный интерес (в данном
случае: самолёты, лодки, автомобили, здания). Предлагаемый метод применён
при Smin = 370 и PSmax = 70 (для первого изображения), при Smin = 110 и PSmax =
5 (для второго изображения), при Smin = 170 и PSmax = 15 (для третьего изобра-
жения), при Smin = 180 и PSmax = 80 (для четвёртого изображения), при Smin = 140
43
и PSmax = 40 (для пятого изображения). Дополнительные примеры решения за-
дач по выделению объектов интереса приведены в Приложении В.

44
Рисунок 25 – Примеры решения задачи по селекции объектов интереса: слева
– исходные изображения [15]–[19]; справа – результаты селекции
Рассмотрим цифровое изображения, полученное системами радиовиде-
ния и мониторинга поверхности Земли в целях исследования статистических
зависимостей и характеристик осуществляемой операции по селекции анти-
компактных (удлинённых) объектов. Так, на рис. 26 представлен фрагмент
описанного изображения, содержащий предметы, представляющие непосред-
ственный интерес – дороги, на рис. 27 приведён результат выделения на нём
таких объектов – бинарный слой, соответствующий оптимальному значению
порога Topt при Smin = 180, PSmax = 80, на рис. 28 отображена графическая зави-
симость коэффициента удлинения периметра от числа изолированных объек-
тов, на рис. 29 – зависимости количества объектов от порогового уровня до и
после селекции, на рис. 30 – зависимость количества связанных сегментов от
значения порога.

45
Рисунок 26 – Фрагмент исходного изображения для идентификации компакт-
ных объектов интереса [20]

Рисунок 27 – Бинарный слой, соответствующий оптимальному порогу – ре-


зультат выделения дорог

46
Рисунок 28 – Зависимость значений коэффициента удлинения периметра PS
от числа изолированных объектов Nobj

Рисунок 29 – Зависимости количества объектов от порогового уровня (верх-


няя кривая – до селекции, нижняя кривая – после селекции)

47
Рисунок 30 – Зависимость общего числа связанных объектов от значения по-
рога

48
3. БЕЗОПАСНОСТЬ ЖИЗНЕДЕЯТЕЛЬНОСТИ
3.1. Введение
Данный раздел настоящей выпускной квалификационной работы посвя-
щён основам безопасности жизнедеятельности при работе с исследуемым про-
граммным обеспечением и включает в себя поиск определённых, конкретных
инженерных и технических решений, направленных на обеспечение безопас-
ной и безвредной деятельности человека на производстве, в быту и практиче-
ски во всех других сферах науки и техники, что, в целом, относится к основам
эргономики программного обеспечения и рассмотрения факторов, определяю-
щих взаимодействия человека с описанной системой. При этом разрабатывае-
мые мероприятия могут затрагивать как инженерный продукт, так и средства,
и условия его проектирования, изготовления и будущего использования. Ос-
новой для достижения цели является решение задачи на базе требований нор-
мативно-технической документации (стандарты, нормы, правила и прин-
ципы). Важной особенностью является тот факт, что проектирование, произ-
водство и использование новых потребительских продуктов для решения ра-
диотехнических задач различного назначения, создание и последующее ис-
пользование новых технологий обработки неотъемлемо сопровождается по-
тенциальной небезопасностью в ходе проектировки или дальнейшего исполь-
зования конечного продукта.
В настоящей выпускной квалификационной работе исследуется алго-
ритм адаптивной селекции объектов на цифровых изображениях в радиотех-
нических системах дистанционного наблюдения. В ходе выполнения работы
был исследован исходный алгоритм, впоследствии данный алгоритм был мо-
дифицирован и усовершенствован для достижения результатов его работы по
селекции и получения статистических зависимостей и характеристик выделя-
емых объектов (зависимости числа связанных объектов от порогового уровня,
общего количества изолированных объектов до и после селекции от значения
порога, коэффициента удлинения периметра от числа объектов и др.), которые

49
представляют непосредственный интерес в практических задачах, выполняе-
мых системами технического видения и зрения. Код для анализа алгоритма
был реализован в программной среде MATLAB, фрагмент которого представ-
лен на рис. 31.

Рисунок 31 – Среда разработки MATLAB и представленный в ней фрагмент


кода исследуемого алгоритма, осуществляющего выделение объектов на
изображениях РТС

3.2. Анализ работы алгоритма с точки зрения безопасности жиз-


недеятельности
Программная среда MATLAB, которая является пакетом прикладных
программ для решения задач технических вычислений, а также реализованный
в ней алгоритм адаптивной селекции объектов на цифровых изображениях
полностью соответствуют требованиям ГОСТ Р ИСО 9241-210, 2012 [21]. Дан-
ное программное обеспечение абсолютно пригодно для выполнения постав-
ленных задач, а именно, для решения практических задач по выделению объ-

50
ектов интереса в системах технического зрения и дистанционного зондирова-
ния земной поверхности и прилегающих к ним акваторий. Код исследуемого
алгоритма представляет собой сочетание построчного набора команд и функ-
ций, а также прилагаемых к ним пояснительных комментариев, что, без-
условно, отвечает требованиям по информативности и пригодности для инди-
видуализации и обучения других людей. К тому же, программный код рас-
сматриваемого алгоритма состоит из обособленных разделов, сформирован-
ных на основе соображений понимания технологической реализуемости, что
непосредственно коррелирует со стандартами зрительного восприятия, каса-
ющихся чёткости, разборчивости, понятности и распознаваемости.
Помимо этого, среда разработки программного обеспечения MATLAB
предоставляет удобный интерфейс для создания и исследования программных
продуктов в целях решения разнообразных инженерно-технических (в том
числе, радиотехнических) задач. Благодаря использованию данной среды су-
щественно упрощается процесс взаимодействия конечного пользователя с ко-
дом исследуемого алгоритма. Вместе с этим, в процессе создания самого алго-
ритма, программная среда разработки MATLAB позволяет значительно
уменьшить временные затраты на реализацию поставленной технической за-
дачи по сравнению с ручными вычислениями или без использования специа-
лизированно направленной программной среды разработки, что не может не
соответствовать постановленным требованиям будущего пользователя.
Как было изложено выше, исследуемый код алгоритма адаптивной се-
лекции компактных объектов на цифровых изображениях РТС был реализован
в среде MATLAB. В целях облегчения последующего использования будущим
пользователем конечным программным продуктом применялись следующие
методы и способы, направленные на улучшение понимания и представления
кода алгоритма:
1). Использование построчного комментирования кода. Такое комментирова-
ние строчек кода осуществлялось в процессе анализа работы исследуемого ал-
горитма и при дальнейшей разработке программы. Данная функция упрощает
51
понимание выполняемых преобразований в среде разработки для нового и по-
вышает информативность текста для более продвинутого пользователей.
2). Использование пошагового разделения кода алгоритма. Данный процесс
заключается в том, что после прохождения k-го шага, выполнение кода алго-
ритма выделения объектов приостанавливается и остаётся в режиме «ожида-
ния» до последующего его возобновления. В такие моменты в окне «Command
Window» достаточно наглядно и удобно наблюдать изменение значений или
формирование новых переменных, производящихся на текущем k-ом шаге.
Аналогичным образом может происходить наблюдение изменяющихся пара-
метров по графикам и бинарным изображениям. Такая операция существенно
упрощает поиск решения поставленной задачи, в данном случае задачи выде-
ления интересуемых объектов наблюдения, поскольку таким образом можно
сделать заключение о наличии или отсутствии «предметов» интереса.
3). Использование вынесения переменных из отдельных функций и выраже-
ний в тело программы. Благодаря такому «преобразованию» при необходимо-
сти появляется возможность более быстрым способом изменять значения тре-
буемых параметров и констант.
4). Использование вынесения и формирования отдельных блоков (абзацев)
кода. Осуществление такой операции информирует пользователя о конце
определённого раздела и начале следующего. Предпринятая мера позволяет
значительно упростить зрительное и информативное восприятие кода алго-
ритма и сократить время, которое необходимо для его полного понимания бу-
дущим пользователем.

52
Рисунок 32 – Реализация совершенствования кода алгоритма в среде
MATLAB для последующего улучшения понимания и восприятия
На рис. 32 представлено изображение кода программы, в котором осу-
ществлено вынесение и идентификация независимых (в том числе и началь-
ных) переменных, а также произведено построчное комментирование команд
из тела алгоритма.
Немаловажным следует отметить игнорирование аспектов безопасности
жизнедеятельности при работе с данным кодом исследуемого алгоритма. Если
не учитывать вопросы повышения удобства и эргономичности при разработке
и использовании программного продукта, то может увеличиться количество
времени, необходимое для решения поставленной задачи, при этом повыша-
ется умственная и психическая нагрузки. Это, в свою очередь, может привести
к развитию различного рода заболеваний, таких как:
1). Ухудшение зрения (боль и усталость глаз; сухость в глазах; жжение и зуд
глаз; покраснение глаз и лопнувшие в них сосуды; нечёткость видения; двое-
ние в глазах; потребность в очках или линзах; повышенная чувствительность
к яркому свету; возможная боль в голове, плечах, шее, спине и др.).

53
2). Умственное утомление (сужение кровеносных сосудов, посредством кото-
рых сердце и мозг человека получают необходимые для жизнеподдержания
вещества; учащение сердцебиения (тахикардия); головная боль (напр. миг-
рень) и др.).
3). Стресс (тревожные расстройства; обсессивно-компульсивные расстрой-
ства; невроз; неконтролируемая тревога и беспокойство; мышечное напряже-
ние и перенапряжение; усталость; повышенная раздражительность; нетерпе-
ливость; бессонница; расстройства сна и др.).
4). Снижение уровня бодрствования (изменение альфа-ритма ЭЭГ; ухудшение
зрительно-моторной координации и др.).
5). Снижение работоспособности труда (увеличение времени работы, что ока-
зывает неблагоприятное влияние на конечный результат с точки зрения не
только самого времени, но и качества продукта; повышение вероятности до-
пускания ошибок при работе; падение продуктивности и эффективности и
др.).
6). Снижение креативной и творческой инициативы (неудовлетворённость ра-
ботой; эмоциональное выгорание; уменьшение желания самореализации в
данной сфере и др.).

3.3. Выводы
Таким образом можно сделать заключение о том, что безопасность
жизнедеятельности действительно является одним из ключевых вопросов и
факторов при разработке и пользовании исследуемого алгоритма. Правила эр-
гономики, которые устанавливаются и рекомендуются для комфортного и без-
опасного взаимодействия человека с данной системой, необходимо учитывать
в целях создания и поддержания оптимальной и благоприятной в отношении
здоровья человека рабочей среды для решения поставленных инженерно-тех-
нических задач. Также стоит принимать во внимание, что повышение удобства
использования будущими пользователями конечного программного продукта

54
может способствовать повышению их профессионального качества и мастер-
ства, приобретению новых профессиональных навыков для достижения необ-
ходимой технологической результативности и экономической эффективности.
Учитывая всё вышеизложенное, можно заключить, что интерфейс ис-
пользуемого программного обеспечения (среда разработки MATLAB) и рас-
сматриваемого в нём кода алгоритма адаптивной селекции компактных объек-
тов на цифровых изображениях радиотехнических систем наблюдения абсо-
лютно удобен и пригоден для дальнейшей работы и использования будущими
пользователями, а также полностью соответствует требованиям и стандартам
ГОСТ Р ИСО 9241 [21].

55
ЗАКЛЮЧЕНИЕ

В результате выполнения выпускной квалификационной работы была


рассмотрена задача выделения объектов на изображениях радиотехнических
систем наблюдения. В ходе работы был исследован и впоследствии модифи-
цирован алгоритм адаптивной селекции компактных объектов в программной
среде разработки MATLAB. Достигнуты результаты селекции объектов инте-
реса на тестовых полях и реальных снимках, получены и проанализированы
статистические характеристики селектируемых объектов, рассмотрены ас-
пекты безопасности жизнедеятельности при использовании данного алго-
ритма.
Было выяснено, что исследуемый алгоритм основан на углублённой
предварительной многопороговой обработке исходного изображения и выде-
лении объектов, удовлетворяющих определённым требованиям и ограниче-
ниям по размерам (площади) и форме, в бинарных сечениях с последующим
выбором оптимального порога, реализуемого по результатам селекции.
При таком рассматриваемом способе удаётся должным образом улуч-
шить характеристики как сегментации изображения, так и селекции по ряду
критериев, например, сохранения формы анализируемых объектов, за счёт ис-
пользования результатов селекции для установки порога (использования апо-
стериорной информации о свойствах объектов).
Недостатком данного алгоритма по выделению компактных объектов
интереса является его высокая вычислительная сложность за счёт выполнения
необходимой ресурсоёмкой процедуры многопороговой обработки, что суще-
ственно ограничивает его применимость и эмпирическую используемость.
При этом плата за это может отчасти компенсироваться относительной про-
стотой рассматриваемого метода и возможностью его параллельной реализа-
ции.

56
Также следует заключить, что рассматриваемые в работе примеры по-
добных задач по выделению объектов интереса на изображениях РТС наблю-
дения хоть и являются достаточно естественными и тривиальными, однако,
позволяют понять и установить ряд основных принципов и глобальных зако-
номерностей, которые присущи гораздо более сложным практическим зада-
чам, характеризующимися наличием априорной неопределённости о свой-
ствах селектируемых объектов и недостаточным быстродействием применяе-
мых вычислителей, для решения которых рассматриваемый алгоритм остаётся
весьма действенным и эффективным.

57
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
1. Волков В. Ю., Маркелов О. А., Богачев М. И. Сегментация изображений и
селекция объектов на основе многопороговой обработки // Изв. вузов России.
Радиоэлектроника. 2018. Т. 22, вып. № 3. С. 38–49.
2. Towards a (GE)OBIA 2.0 Manifesto-Achievements and Open Challenges in In-
formation & Knowledge Extraction from Big Earth Data / S. Lang, A. Baraldi, D.
Tiede, G. Hay, T. Blaschke // GEOBIA'2018, Montpellier, 18–22 June, 2018.
3. Gao G. Statistical Modeling of SAR Images: A Survey // Sensors. 2010, вып. №
10, 1. С. 775–795.
4. Богачев М.И., Волков В.Ю., Маркелов О. А. Иерархическая сегментация и
адаптивная селекция объектов при многопороговой обработке изображений //
Изв. вузов России. Радиоэлектроника. 2019, вып. № 3. С. 24–35.
5. Blaschke T. Object Based Image Analyses for Remote Sensing // ISPRS J. of
Photogrammetry and Remote Sensing. 2010, вып. № 65, 1. С. 2–16.
6. K-means Multi-Threshold Image Segmentation based on Firefly Algorithm // J.
Yang, Y. Yang, W. Yu, J. Feng, J. Yang // Proc. of 3rd Int. Conf. on Multimedia
Technology (ICMT-13). Paris: Atlantis Press. 2013. С. 134–142.
7. Волков В.Ю. Адаптивное выделение мелких объектов на цифровых изобра-
жениях // Изв. вузов России. Радиоэлектроника. 2017, вып. № 1. С. 87–93.
8. Fast and Simple Tool for the Quantification of Biofilm-Embedded Cells Sub-Pop-
ulations from Fluorescent Microscopic Images / M. Bogachev, V. Volkov, O.
Markelov, E. Trizna, D. Baydamshina, V. Melnikov, R. Murtazina, P. Zelenikhin, I.
Sharafutdinov, A. Kayumov // PLoS One. 2018, вып. № 13, 3. С. 29–48.
9. Selection and Quantification of Objects in Microscopic Images: from Multi-Cri-
teria to Multi-Threshold Analysis / M. Bogachev, V. Volkov, G. Kolaev, L. Cher-
nova, I. Vishnyakov, A. Kayumov // Bionanoscience. 2019, вып. № 9, 1. С. 59–65.
10. Клюев Н. Ф. Обнаружение импульсных сигналов с помощью накопителей
дискретного действия. М.: Сов. радио. 1963. 111 с.
11. Волков В. Ю. Адаптивное выделение мелких объектов на цифровых изоб-
ражениях // Изв. вузов России. Радиоэлектроника. 2017, вып. № 1. С. 17–28.
58
12. Bunde A., Havlin S. Fractals and disordered systems. Springer-Verlag Berlin, Hei-
delberg, 1996.
13. V. Yu. Volkov, M. I. Bogachev, A. R. Kayumov Object Selection in Computer Vi-
sion: From Multi-thresholding to Percolation Based Scene Representation // Computer
Vision in Advanced Control Systems-5. Advanced Decisions in Technical and Medical
Applications. 2020, вып. № 175, 5. С. 161-194.
14. Marina Boats Yachts Stock Photos // Dreams Time. URL: https://www.dream-
stime.com/photos-images/marina-boats-yachts.html (дата обращения: 04.05.2020)
15. Dozens of 737 MAX jetliners cover a parking lot at Boeing's factory in Seattle,
Washington // Instagram. URL: https://www.instagram.com/p/B1OtK-iFklm/ (дата
обращения: 04.05.2020).
16. Без описания // Pexels. URL: https://www.pexels.com/photo/boats-on-body-of-
water-2496535/ (дата обращения: 04.05.2020).
17. Без описания // Freepik. URL: https://image.freepik.com/free-photo/_51195-
3627.jpg (дата обращения: 04.05.2020).
18. Поселок Кременкуль - съемка с дрона Mavic Pro Platinum. Видео 4К // Best
Library. URL: https://bestlibrary.org.ru/v/250878 (дата обращения: 04.05.2020).
19. Без описания // Pexels. URL: https://images.pexels.com/pho-
tos/2805314/pexels-photo-2805314.jpeg?auto=compress&cs=ti-
nysrgb&fit=crop&h=627&w=1200 (дата обращения: 04.05.2020).
20. Преимущества коммерческой съемки с воздуха // Фото&Путешествия.
URL: https://memblog.ru/uroki/kommercheskaya-semka.html (дата обращения:
04.05.2020).
21. ГОСТ Р ИСО 9241-210 – 2012. Эргономика взаимодействия человек–си-
стема. Человеко-ориентированное проектирование интерактивных систем М.:
Стандартинформ, 2013.

59
ПРИЛОЖЕНИЕ А. КОД АЛГОРИТМА АДАПТИВНОЙ СЕЛЕКЦИИ ОБЪ-
ЕКТОВ НА ЦИФРОВЫХ ИЗОБРАЖЕНИЯХ

clear all; %удаление элементов (очистка) из РО, освобождение системной па-


мяти
close all; % удаление и закрытые всех окон (фигур)
clc; % очистка командного окна

% Определение входных параметров и коэффициентов


T_max = 256; % максимальное число двоичных слоёв(порогов)
T_step = 1; % шаг прохождения по структуре изображения
max_obj = 100000; % максимальное число объектов
N_obj = 0; % начальное количество объектов

Kp = 0.9; % значение коэффициента персистентности


S_min = 130; % наименьшее число пикселей для требуемого режима работы
(мин. площадь)
Ps_max = 40; % максимальное значение коэффициента Ps

% Блок регистрации обрабатываемого изображения


I_src = imread('boats_big.jpg'); % загрузка изображения
[m,n,k]=size(I_src) % определение размера загружаемого изображения
if k>1, I_src=rgb2gray(I_src); % преобразование изображения в оттенки серого
end;
figure(10000), imshow(I_src); % вывод бинарного изображения

% Подготовка пустых массивов для загрузки результатов


[I{1:T_max}] = deal([]);
[S{1:T_max}] = deal([]);
[P{1:T_max}] = deal([]);

[S_base{1:max_obj}] = deal([]);
[P_base{1:max_obj}] = deal([]);

Ps_base = NaN(max_obj,length(T_step+1:T_step:T_max)); % Решающая стати-


стика для каждого объекта
T_opt = NaN(max_obj,1); V_opt = NaN(max_obj,1); % Оптимальные зна-
чения порогов для каждого объекта

I_T = (I_src > 0);


S{1} = bwconncomp(I_T);
I{1} = zeros(S{1}.ImageSize);

60
% Проверка площади на Smin
for i=1:1:S{1}.NumObjects,
if (length(S{1}.PixelIdxList{i}) >= S_min)
N_obj = N_obj + 1;
S_base{N_obj} = S{1}.PixelIdxList{i};
I{1}(S{1}.PixelIdxList{i}) = N_obj;
end;
end;

flag_suc = zeros(N_obj,1);

Ts = 1;
T_scale = T_step+1:T_step:T_max;

% Цикловое (пороговое) прохождение по структуре изображения


for T = T_step+1:T_step:T_max, % значения цикловой переменной (порога)
I_T = (I_src >= T); %бинаризация ("1" - выше порога, "0" - ниже порога)
S{T} = bwconncomp(I_T); % нахождение связанных компонентов
P{T} = regionprops(S{T},'Perimeter'); % измерение набора свойств для каж-
дого связанного объекта (в данном случае - периметра)

I{T} = zeros(S{T}.ImageSize); % подготовка пустого массива для загрузки


изобр-ния с помеченными изолир. объектами

for i=1:1:S{T}.NumObjects, % цикл по всем изолированным объектам


cur_crd = S{T}.PixelIdxList{i}(1); % Определение координаты первой
точки в текущем объекте
base_num = I{T-T_step}(cur_crd); % Нахождение числа базовых объек-
тов

if (base_num)
j = 1;
while(isempty(find([S{T-T_step}.PixelIdxList{j}] == cur_crd, 1)))
j = j + 1; % Нахождение числа объектов на один слой
ниже (предыдущий слой)
if (j > S{T-T_step}.NumObjects)
break;
end;
end;

if (length(S{T}.PixelIdxList{i}) > Kp * length(S{T-T_step}.Pix-


elIdxList{j})) % Проверка двух соседних слоёв на персистентность объектов

61
% Здесь и далее: Работа с родительским объектом -> использование
существующего базового номера
I{T}(S{T}.PixelIdxList{i}) = base_num;
S_base{base_num} = S{T}.PixelIdxList{i}; % площадь об.
P_base{base_num} = P{T}(i).Perimeter; % периметр об.
Ps_base(base_num,Ts) = P_base{base_num} * P_base{base_num} / 4 /
3.1415926 / length(S_base{base_num}); % мера компактности (Ps)
flag_suc(j) = 1;
else
if (length(S{T}.PixelIdxList{i}) >= S_min)

% Операции по созданию нового базового объекта -> предлагае-


мый новый базовый номер
N_obj = N_obj + 1; % инкремент числа об.
S_base{N_obj} = S{T}.PixelIdxList{i}; % площадь об.
P_base{N_obj} = P{T}(i).Perimeter; % периметр об.
Ps_base(N_obj,Ts) = P_base{N_obj} * P_base{N_obj} / 4 /
3.1415926 / length(S_base{N_obj}); % мера компактности
I{T}(S{T}.PixelIdxList{i}) = N_obj; % "маркировка" пикселей,
принадлежащих изолированному объекту по его номеру
end;
end;
end;
end;

disp(T) % отображение массива порогов без доп. информации (для кон-


троля исполнения программы)

% В разделе далее: Цикл над всеми объектами на 1 слой ниже, которые не


имели преемников

for j=1:1:S{T-T_step}.NumObjects,
if (length(flag_suc)>=j)
if (flag_suc(j)==0)
cur_crd = S{T-T_step}.PixelIdxList{j}(1);
if (cur_crd)
base_num = I{T-T_step}(cur_crd);
if (base_num)
[V_opt(base_num),T_opt(base_num)] = min(Ps_base(base_num,:));
S_base{base_num} =
find(I{T_scale(T_opt(base_num))}(:)==base_num);
if (length(S_base{base_num}) > S_min)
% figure(base_num);
% plot(T_scale,Ps_base(base_num,:),'b*');

62
end;
end;
end;
end;
end;
end;

% Флаги, указывающие, есть ли у объектов преемники в следующем слое


flag_suc = zeros(S{T}.NumObjects,1);
Ts = Ts + 1;
end;

I_P = zeros(S{1}.ImageSize);

for i=1:1:N_obj
if ~isnan(V_opt(i))
if (length(S_base{i}) > S_min)
if (V_opt(i) < Ps_max) % проверка на Psmax
%I_P = zeros(S{1}.ImageSize);
%I_P(S_base{i}) = T_scale(T_opt(i));
% I_P(S_base{i}) = V_opt(i);
I_P(S_base{i}) = length(S_base{i});
%I_P(S_base{i}) = 255;
% figure(i), imagesc(I_P); % пообъектный вывод элементов селекции
% colorbar; % установка цветовой шкалы
end;
end;
end;
end;

figure(100001); % создание окна для вывода изображения


imagesc(I_P); % вывод изображения с масштабир. данных для использ. пол-
ной цветовой карты
colorbar; % добавление цветовой шкалы справа от изображения

63
ПРИЛОЖЕНИЕ Б. КОД МОДИФИЦИРОВАННОГО АЛГОРИТМА АДАП-
ТИВНОЙ СЕЛЕКЦИИ ДЛЯ ПОЛУЧЕНИЯ СТАТИСТИЧЕСКИХ ХАРАК-
ТЕРИСТИК ВЫДЕЛЕНИЯ ОБЪЕКТОВ
clear all; %удаление элементов (очистка) из РО, освобождение системной па-
мяти
close all; % удаление и закрытые всех окон (фигур)
clc; % очистка командного окна

tic

% Определение входных параметров и коэффициентов


T_max = 256; % максимальное число двоичных слоёв(порогов)
T_step = 1; % шаг прохождения по структуре изображения
max_obj = 100000; % максимальное число объектов
N_obj = 0; % начальное количество объектов

Kp = 0.9; % значение коэффициента персистентности


S_min = 5; % наименьшее число пикселей для требуемого режима работы
(мин. площадь)
Ps_max = 300; % максимальное значение коэффициента Ps

% Блок регистрации обрабатываемого изображения


I_src = uint8(randn(256).*256); % генерирование чистого шума (нормальное
распределение)
%I_src = imread('bereg.jpg'); % загрузка исходного изображения
[m,n,k] = size(I_src) % определение размера загружаемого изображения
if k > 1, I_src = rgb2gray(I_src); % преобразование изображения в оттенки се-
рого
end;

% Подготовка пустых массивов для загрузки результатов


maI = max(I_src(:));
miI = min(I_src(:));

I_src = mat2gray(I_src); % мин. и макс. значения для определения интенсивно-


сти
I_src = uint8(I_src.*255); % преобразование интенсивности в 8-битные числа
[0;255]
figure(100000), imshow(I_src); % вывод ч-б изображения

% ts=input('STOP','s');

% Подготовка пустых массивов для загрузки результатов


64
[I{1:T_max}] = deal([]);
[S{1:T_max}] = deal([]);
[P{1:T_max}] = deal([]);
[S_base{1:max_obj}] = deal([]);
[P_base{1:max_obj}] = deal([]);

Ps_base = NaN(max_obj,length(T_step+1:T_step:T_max)); % Решающая стати-


стика для каждого объекта
T_opt = NaN(max_obj,1); V_opt = NaN(max_obj,1); % Оптимальные зна-
чения порогов для каждого объекта

I_T = (I_src > 0);


S{1} = bwconncomp(I_T);
I{1} = zeros(S{1}.ImageSize);

% Проверка площади на Smin (селекция по площади)


for i=1:1:S{1}.NumObjects
if (length(S{1}.PixelIdxList{i}) >= S_min)
N_obj = N_obj + 1;
S_base{N_obj} = S{1}.PixelIdxList{i};
I{1}(S{1}.PixelIdxList{i}) = N_obj;
end;
end;

flag_suc = zeros(N_obj,1);

Ts = 1;
T_scale = T_step+1:T_step:T_max;
size(T_scale) % 1 85
NTs = (T_max - T_step - 1)/T_step; %84

% массивы для количества объектов


NOB = zeros(size(T_scale));
NoB = zeros(size(T_scale));
nob = zeros(size(T_scale));

THRESHOLD = zeros(size(T_scale));
% NOB = zeros(NTs,1);
% nob = zeros(NTs,1);

% пороговое (шаговое) "прохождение" по структуре изображения


for T = T_step+1:T_step:T_max

THRESHOLD(Ts) = T_scale(Ts);

65
I_T = (I_src >= T);
S{T} = bwconncomp(I_T); % нахождение связанных компонентов
P{T} = regionprops(S{T},'Perimeter'); % измерение набора свойств для каж-
дого связанного объекта (в данном случае - периметра)

I{T} = zeros(S{T}.ImageSize);
NOB(Ts) = S{T}.NumObjects;

n_obj = 0;

for i = 1:1:S{T}.NumObjects %цикл по изолированным объектам

cur_crd = S{T}.PixelIdxList{i}(1); % Определение координаты первой


точки в текущем объекте
base_num = I{T-T_step}(cur_crd); % Нахождение числа базовых объек-
тов
if (base_num)
j = 1;
while(isempty(find([S{T-T_step}.PixelIdxList{j}] == cur_crd, 1)))
j = j + 1; % Нахождение числа объектов на один слой
ниже (предыдущий слой)
if (j > S{T-T_step}.NumObjects)
break;
end;
end;
if (length(S{T}.PixelIdxList{i}) > Kp * length(S{T-T_step}.Pix-
elIdxList{j})) % Проверка двух соседних слоёв на персистентность объектов

% Здесь и далее: Работа с родительским объектом -> использование


существующего базового номера
I{T}(S{T}.PixelIdxList{i}) = base_num;
S_base{base_num} = S{T}.PixelIdxList{i}; % площадь об.
P_base{base_num} = P{T}(i).Perimeter; % периметр об.
Ps_base(base_num,Ts) = P_base{base_num} * P_base{base_num} / 4 /
3.1415926 / length(S_base{base_num}); % мера компактности
flag_suc(j) = 1;
else
if (length(S{T}.PixelIdxList{i}) >= S_min)

% Операции по созданию нового базового объекта -> предлагае-


мый новый базовый номер
N_obj = N_obj + 1; n_obj = n_obj + 1; % инкремент числа об.
S_base{N_obj} = S{T}.PixelIdxList{i}; % площадь об.

66
P_base{N_obj} = P{T}(i).Perimeter; % периметр об.
Ps_base(N_obj,Ts) = P_base{N_obj} * P_base{N_obj} / 4 /
3.1415926 / length(S_base{N_obj}); % мера компактности
I{T}(S{T}.PixelIdxList{i}) = N_obj;
end;
end;
end;
end;

NoB(Ts) = N_obj;
nob(Ts) = n_obj;

disp(T) % отображение массива порогов (без указания имени и другой опи-


сат. информации)

% В разделе далее: Цикл над всеми объектами на 1 слой ниже, которые не


имели приемников

for j = 1:1:S{T-T_step}.NumObjects,
if (length(flag_suc)>=j)
if (flag_suc(j)==0)
cur_crd = S{T-T_step}.PixelIdxList{j}(1);
if (cur_crd)
base_num = I{T-T_step}(cur_crd);
if (base_num)
[V_opt(base_num),T_opt(base_num)] = min(Ps_base(base_num,:));
S_base{base_num} =
find(I{T_scale(T_opt(base_num))}(:)==base_num);
if (length(S_base{base_num}) > S_min)
% figure(base_num);
% plot(T_scale,Ps_base(base_num,:),'b*');
end;
end;
end;
end;
end;
end;

% Флаги, указывающие, есть ли у объектов преемники в следующем слое


flag_suc = zeros(S{T}.NumObjects,1);
Ts = Ts + 1;

end;

67
PS_MIN = zeros(N_obj,1); LENGTH = zeros(N_obj,1);

N_obj = N_obj %
I_P = zeros(S{1}.ImageSize);

n_select = 0;

for i = 1:1:N_obj
if ~isnan(V_opt(i))
if (length(S_base{i}) > S_min)
LENGTH(i) = length(S_base{i}); % L = LENGTH(i)
% PS_MIN(i) = V_opt(i); % V_opt(i) = Psmin for T_opt
if (V_opt(i) < Ps_max) % проверка на Psmax
n_select = n_select + 1;
PS_MIN(i) = V_opt(i); % V_opt(i) = Psmin for T_opt
I_P(S_base{i}) = T_scale(T_opt(i));
% I_P(S_base{i}) = V_opt(i);
% I_P(S_base{i}) = length(S_base{i});
% I_P(S_base{i}) = 255;
end;
end;
end;
end;

figure(100001); % вывод изображения из массива


imagesc(I_P); % вывод изображения с масштабир. данных для использ. пол-
ной цветовой карты
colorbar; % добавление цветовой шкалы справа от изображения
title('Topt'); % создание заголовка

% Переидентификация переменных
n_select = n_select
NOB1 = NOB
NoB1 = NoB
nob1 = nob
THRESHOLD1 = THRESHOLD
PS_MIN1 = PS_MIN'
LENGTH1 = LENGTH'

% Вывод графических зависимостей количества объектов от порога до и по-


сле селекции
figure(1000001),
plot(T_scale(1:NTs),NOB(1:NTs),T_scale(1:NTs),NoB(1:NTs));
grid; xlabel('T'), ylabel('NOB, NoB');

68
figure(1000002),
plot(T_scale(1:NTs),NoB(1:NTs),T_scale(1:NTs),nob(1:NTs));
grid; xlabel('T'), ylabel('NoB, nob');

% Вывод графической зависимости числа выделенных объектов от порога


figure(1000003),
plot(T_scale(1:NTs), nob(1:NTs));
grid; xlabel('T'), ylabel('nob');

% Вывод графической зависимости значений оптимального порога от номера


изолированного объекта
Y0 = ones(N_obj,1); Y0 = Y0*S_min;
figure(2000001), plot(2:N_obj,LENGTH(2:N_obj),2:N_obj,Y0(2:N_obj),'b--');
xlabel('Nobj'), ylabel('LENGTH for Topt'), grid;

% Вывод графической зависимости коэффициента Ps от количества объектов


figure(2000002), plot(1:N_obj,PS_MIN); grid
xlabel('Nobj'), ylabel('Ps min for Topt'),
title(['Ps max = ', num2str(Ps_max)]);

ts = input('STOP','s');
END = 0

toc

69
ПРИЛОЖЕНИЕ В. РЕЗУЛЬТАТЫ СЕЛЕКЦИИ ОБЪЕКТОВ НА
ИЗОБРАЖЕНИЯХ РТС НАБЛЮДЕНИЯ

70
71