Формирование триплетных признаков распознавания сложноструктурированных изображений путём автоматической компьютерной генерации

Федотов Н.Г. , Кольчугин А.С., Романов С.В., Фионов Н.С.

ФОРМИРОВАНИЕ ТРИПЛЕТНЫХ ПРИЗНАКОВ РАСПОЗНАВАНИЯ СЛОЖНОСТРУКТУРИРОВАННЫХ ИЗОБРАЖЕНИЙ ПУТЁМ АВТОМАТИЧЕСКОЙ КОМПЬЮТЕРНОЙ ГЕНЕРАЦИИ

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

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

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

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

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

По результатам профилирования, построенного для изображений размером 700х700 с деревом функционалов 1:60:60 (для каждого T функционала вычисляется 60 P функционала, для каждого P функционала вычисляется 60 0 функционалов):

Вычисление T функционала * 92 %;

Вычисление P функционала * 8 %;

Вычисление 0 функционала < 1 %;

Из данных хорошо видно, что в первую очередь необходимо «ускорить» вычисление Т функционала.

Существует три схемы параллельных вычислений:

Симметричные потоки (все потоки выполняют одну и ту же функцию);

Конвейерное вычисление (результат работы одного потока является исходными данными для другого потока);

Смешенная схема (применяется только при очень большом количестве потоков);

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

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

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

Далее необходимо осуществить управление потоками. Количество порождаемых потоков не должно быть жестко детерминированным, так как это приведет к ухудшению производительности в случае несовпадения количества процессоров с количеством порожденных потоков. Все сканирующие прямые хранятся в одном объекте и их количество известно. Легко добавить в данный класс метод, возвращающий множество необработанных санирующих прямых или null, если все сканирующие прямые переданы на обработку. Получение потоком вместо исходных данных null приведет к его удалению. Результаты вычисления передаются объекту класса t_result. Все результаты вычислений хранят угол, для которого было сформировано данное множество сканирующих прямых, поэтому в классе хранения результата не составляет сложности отсортировать полученные данные, определить прогресс выполнения вычислений и сформировать событие окончания вычислений.

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

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

Методы стохастической геометрии позволяют получить новые конструктивные признаки распознавания со структурой в виде композиции трех функционалов.

Подход к формированию триплетных признаков на основе экстракции позволяет получать признаки, чувствительные к заданным геометрическим характеристикам.

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

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

Работа выполнена при поддержке гранта РФФИ №09-07-00089