Контурный анализ и сверточные нейронные сети: обучение на малых неоднородных выборках

Достижения прошедших пяти лет в области искусственного интеллекта, обработки изображений и распознавания образов основаны на глубоком обучении и сверточных нейронных сетях (СНС) различных архитектур. Архитектуры нейронных сетей характеризуются достаточно высокой универсальностью и переносимостью между различными областями применения. Так архитектура U-net, первоначально разработанная для сегментации медицинских цитологических изображений, сейчас с успехом занимает лидирующие позиции в конкурсах по обработке ДЗЗ.

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

Но как решать задачу, если выборки недостаточно для обучения сети, изображения неравномерно распределены по классам (количество различается в десятки раз), репрезентативность изображений для классов различна (экземпляры одного класса различаются значительно, для второго практически одинаковы), а тестовые изображения значительно различаются с обучающими яркостью, контрастностью, пространственным разрешением, видом подстилающей поверхности?

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

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

Описание свойств контурного анализа, а также методика выбора оптимальных значений параметров для классов обучающей выборки приведена здесь. Характеристики обучающей выборки представлены в следующей таблице.

Тип самолета

Количество экземпляров

Количество элементов контура

Гистограмма распределения длины контура

Мин

Среднее

Макс

1.                 

B-1

17

1070

1132

1249

2.                 

B-52

10

1902

1945

1988

3.                 

C-5

20

2289

2404

2514

4.                 

C-37

11

1209

1227

1243

5.                 

C-130

135

1328

1570

1654

6.                 

C-135

81

1375

1420

1477

7.                 

P-3

92

1312

1458

1542

8.                 

S-3

64

1095

1132

1180

 

Тестовая выборка для проверки результата обучения представлена 20 изображениями: B-1 – 6 изображений, для проверки качества обучения по малой разнородной выборке, С-130 – 14 изображений – для самой представительной выборки. Изображения взяты из другого источника, имеют меньшее разрешение (0,3-0,5 м/точку против 0,15 м/точку – для обучающих), отличные значения яркости, схему освещения.  Примеры представлены ниже:

Образцы обучающей выборки Образцы тестовой выборки

Несмотря на одинаковую схему камуфляжа для объектов обеих выборок, визуальные различия весьма значительны.

Сравнение результатов метода на основе контурного анализа выполнено с ансамблем из 8 СНС, каждая из которых нацелена на определение объекта определенного типа. Архитектура сети является одним из лидеров конкурса по распознаванию кораблей на спутниковых снимках. В параметры сети внесены изменения, необходимые для используемых выборок.

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

Результаты работы сети на обучающей выборке представлены в следующей таблице.

№ типа
1
2
3
4
5
6
7
8
Название
B-1
B-52
C-5
C-37
C-130
C-135
P-3
S-3
Количество экземпляров
17
10
20
11
135
81
92
64
Ошибок 1 рода
3
0
0
0
0
0
0
9
Ошибок 2 рода
0
10
11
0
0
0
7
0

Высокое количество ошибок для классов B-52 и С-5 объясняется их малыми размерами и незначительными отличиями отдельных экземпляров. По всей видимости, темно-серый стандартный камуфляж транспортной и бомбардировочной авиации затрудняет выделение признаков для распознавания самолетов данных типов, поскольку класс С-37 (также очень компактный) распознается успешно за счет белого цвета его экземпляров.

Сравнительные результаты контурного и нейросетевого решений приведены в следующей таблице.

Метод распознавания

Ошибки на обучающей выборке

Ошибки на тестовой выборке

Общее количество ошибок

1 рода

2 рода

1 рода

2 рода

1 рода

2 рода

Контурный анализ

0

0

0

1

0

1

Ансамбль СНС

12

28

0

20

12

48

Видно, что обобщающие способности СНС невозможно использовать на столь малых выборках без использования специальных методик, таких как перенос обучения. Единственная ошибка, допущенная методами контурного анализа, обусловлена объективной необходимостью добавления в обучающую выборку самолетов класса В-1 в летном состоянии.

Дальнейшая работа будет посвящена разработке и исследованию метода сегментации аэрокосмических изображений для выделения контуров самолетов.