открытая система для автоматизации обработки, анализа и распознавания изображений
Классы МПК: | G06F15/18 с модификацией программ, осуществляемой самой машиной в соответствии с опытом, накопленным машиной за время полного цикла работы; самообучающиеся машины G06K9/00 Способы и устройства для считывания и распознавания напечатанных или написанных знаков или распознавания образов, например отпечатков пальцев G06T1/00 Обработка данных изображения общего применения |
Автор(ы): | Гуревич И.Б. (RU), Мурашов Д.М. (RU), Хилков А.В. (RU) |
Патентообладатель(и): | Общество с ограниченной ответственностью "ИНФОРМАЦИОННЫЕ ИССЛЕДОВАНИЯ" ("ИЗУЧЕНИЕ, АНАЛИЗ, ОЦЕНИВАНИЕ, РАСПОЗНАВАНИЕ") (RU), Гуревич Игорь Борисович (RU) |
Приоритеты: |
подача заявки:
2003-03-20 публикация патента:
10.12.2004 |
Изобретение относится к информатике и вычислительной технике. Его использование для автоматизации обработки, анализа и распознавания изображений обеспечивает технический результат в виде расширения номенклатуры классов задач и видов обрабатываемых объектов, в том числе изображений произвольного вида, расширения набора алгоритмов обработки и анализа изображений и накопителей для визуализации данных. Система включает в себя блок 34 исполнения задания, блок 36 анализа результатов обработки, дисплей 42 и базу 60 данных результатов обработки. Технический результат достигается благодаря тому, что в неё введены центральный блок 1 управления и обмена, интерфейс 2 пользователя, рабочая база 10 данных, запоминающий блок 12 длительного хранения, системная база 20 данных, блок 30 управления исполнением заданий, блок 40 визуализации и блок 50 управления и настройки. 4 з.п. ф-лы, 2 ил.
Формула изобретения
1. Открытая система для автоматизации обработки, анализа и распознавания изображений, включающая блок исполнения задания, связанный своими выходами с базой данных результатов обработки и с блоком анализа результатов обработки, средства визуализации с дисплеем, отличающаяся тем, что в нее введены центральный блок управления и обмена, интерфейс пользователя, рабочая база данных, запоминающий блок длительного хранения, системная база данных, блок управления исполнением заданий, блок визуализации и блок управления и настройки, связанный двунаправленными шинами передачи управляющих и информационных сигналов с управляющим входом-выходом базы данных результатов обработки и с первым входом-выходом центрального блока управления и обмена, второй, третий, четвертый, пятый и шестой входы-выходы которого соединены отдельными двунаправленными шинами соответственно с первым выходом-входом блока управления исполнением заданий, выходом-входом системной базы данных, выходом-входом блока визуализации, выходом-входом интерфейса пользователя и первым выходом-входом рабочей базы данных, второй вход-выход которой подключен к управляющему выходу-входу запоминающего блока длительного хранения, информационный выход-вход которого подсоединен к информационному входу-выходу рабочей базы данных, связанной своим выходом с первым входом блока визуализации, выход которого подключен ко входу дисплея, а второй и третий входы - к выходу системной базы данных и, соответственно, к третьему выходу блока исполнения задания, первый выход которого подсоединен ко входу блока анализа результатов обработки, а второй - ко входу базы данных результатов обработки, связанной своим выходом со входом запоминающего блока длительного хранения, выход блока анализа результатов обработки соединен со входом центрального блока управления и обмена, управляющий выход которого подключен к управляющему входу блока управления исполнением заданий, подсоединенного своим управляющим выходом к управляющему входу, а вторым выходом-входом - ко входу-выходу блока исполнения задания.
2. Система по п. 1, отличающаяся тем, что блок управления исполнением заданий содержит блок формирования задания на обработку изображения и блок банка алгоритмических модулей, управляющий вход которого связан с первым управляющим выходом блока формирования задания на обработку изображения, а выход-вход является вторым выходом-входом блока управления исполнением заданий, первым выходом-входом и управляющим входом которого являются соответственно выход-вход и управляющий вход блока формирования задания на обработку изображения, второй управляющий выход которого является управляющим выходом блока управления исполнением заданий.
3. Система по п. 1, отличающаяся тем, что системная база данных содержит интерфейсный блок системной базы данных, диспетчер системной базы данных, базу данных алгоритмов, базу данных программных модулей, базу данных типов параметров и базу данных каталогов, первый выход-вход и выход интерфейсного блока являются соответственно выходом-входом и выходом системной базы данных, а второй выход-вход интерфейсного блока связан с первым входом-выходом диспетчера системной базы данных, второй, третий, четвертый и пятый входы-выходы которого соединены отдельными двунаправленными шинами с выходами-входами соответственно базы данных алгоритмов, базы данных программных модулей, базы данных типов параметров и базы данных каталогов.
4. Система по п. 1, отличающаяся тем, что рабочая база данных содержит интерфейсный блок рабочей базы данных и последовательно соединенные двунаправленными шинами запоминающий блок, запоминающий блок данных для отката и запоминающий блок данных для глубокого отката, управляющие входы которых подключены к управляющему выходу интерфейсного блока, первый выход-вход и выход которого являются соответственно первым выходом-входом и выходом рабочей базы данных, вторым входом-выходом которой является второй выход-вход интерфейсного блока, третий выход-вход которого связан с первым информационным входом-выходом запоминающего блока, второй информационный вход-выход которого является информационным входом-выходом рабочей базы данных.
5. Система по любому из пп. 1-4, отличающаяся тем, что база данных результатов обработки содержит взаимосвязанные двунаправленной шиной интерфейсный блок переменной структуры и запоминающий блок данных результата обработки, вход которого является входом базы данных результатов обработки, выход интерфейсного блока переменной структуры является выходом базы данных результатов обработки, а управляющий вход-выход - управляющим входом-выходом базы данных результатов обработки.
Описание изобретения к патенту
Изобретение относится к информатике и вычислительной технике и может быть использовано для автоматизации обработки, анализа и распознавания изображений.
Анализ и распознавание изображений является приоритетным направлением информатики, прикладной математики и информационных технологий (см., например, А.Л.Горелик, И.Б.Гуревич, В.А.Скрипкин. “Современное состояние проблемы распознавания. Некоторые аспекты”. М.: Радио и связь, 1985. С.162; И.Б.Гуревич. “Проблема распознавания изображений” // “Распознавание, классификация, прогноз. Математические методы и их применение": Ежегодник / Под ред. Ю.И.Журавлева. М.: Наука, 1989. Вып.1. С.280-329.). Задачи анализа и распознавания изображений широко распространены в промышленности, медицине, автоматизации научных исследований, экологии, геологии, экономике, прогнозировании природных катастроф и чрезвычайных ситуаций, военном деле и других отраслях. Для решения этих задач созданы алгоритмическо-программные системы, использующие современные вычислительные средства (см., например, публикации WO 00/13142 A1, G 06 T 5/50, 09.03.2000; WO 00/26857 A1, G 06 T 11/00, 11.05.2000; WO 01/67389 A1, G 06 T 1/00, 13.09.2001; WO 99/53445 A1, G 06 T 17/00, 21.10.1999; WO 99/63320 A3, G 06 F 17/60, 09.12.1999; RU 2159958 C1, G 06 К 9/36, G 06 Т 1/00, 27.11.2000; RU 2160467 C1, G 06 К 9/00, 10.12.2000; ЕР 0393823 В1, G 06 T 7/20, 24.05.1995; ЕР 0637814 А2, G 06 T 15/10, 08.02.1995; ЕР 0666546 A1, G 06 T 11/00, G 06 T 11/60, 09.08.1995; ЕР 0681267 А2, G 06 T 1/20, 08.11.1995; ЕР 0725367 A1, G 06 T 15/50, 07.08.1996; RU 99113845 А, G 06 T 9/00, 27.04.2001; RU 99120046 A, G 06 K 9/46, 20.11.2001; RU 2172018 С2, G 06 T 1/60, Н 04 N 7/08, 10.08.2001; RU 2173880 С2, G 06 К 9/46, 20.09.2001).
Информационно-вычислительные и математические аспекты проблемы рассмотрены достаточно подробно (см., например, Ю.И.Журавлев, И.Б.Гуревич. “Распознавание образов и распознавание изображений // Распознавание, классификация, прогноз. Математические методы и их применение": Ежегодник. Вып.2. М.: Наука, 1989. С.5-72; I.B.Gurevitch “The Descriptive Framework for an Image Recognition Problem" // Proceedings of The 6th Scandinavian Conference on Image Analysis, Oulu, June 19-22, 1989: in 2 volumes, V.1: Pattern Recognition Society of Finland, 1989. - Р.220-227; Ю.И.Журавлев, И.Б.Гуревич. “Распознавание образов и анализ изображений" // Искусственный интеллект: в 3-х книгах. Книга 2: Модели и методы: Справочник. М.: Радио и связь, 1990. С.149-191; Ю.И.Журавлев, И.Б.Гуревич. Методы и средства преобразования и обработки информации в задачах распознавания образов и анализа изображений // Параллельная обработка информации: в 5 т., т.5: Проблемно-ориентированные и специализированные средства обработки информации. - Киев: Наукова думка, 1990. - С.218-318).
Известен способ и система идентификации цифровых двухмерных объектов, в частности, распознавание в рамках известного алфавита (RU 2163394 С2, G 06 K 9/00, 20.02.2001). Способ предусматривает получение с помощью вычислительной системы сегментированных изображений объектов. По сегментированному изображению объекта генерируется обучающая выборка с использованием операций поворота и изменения масштаба, формируются описания в виде функциональных зависимостей статистических оценок признаков от размера сегментированных изображений объектов, измеряются размеры и вычисляются нормированные признаки формы выбранного объекта. Затем выбираются признаки формы, хранящиеся в памяти вычислительной системы, и осуществляется идентификация выбранного объекта на основе данных сравнения.
Ряд разработок касается методов адаптивного распознавания информационных образов и систем для их реализации. Так, в изобретении (RU 2132061 С1, G 01 N 33/48, G 06 K 9/62, 20.06.1999) описана адаптивная автоматическая сегментация и распознавание клеток на изображениях цитологических препаратов. В процессе сегментации границ оцифрованный кадр разбивается на фасеты и далее формируются границы структур клеток.
Известно также устройство для обработки цветных изображений с адаптивной гибридной фильтрацией изображений (RU 2159958 С1, G 06 K 9/36, G 06 T 1/00, 27.11.2000). Устройство содержит блок управления, блок синхронизации, блоки формирования окрестности и апертуры, блоки вычисления норм, локальных дисперсий полезного сигнала, блок вычисления значений выражения фильтра и другие функциональные блоки. Система предназначена для обработки спектрозональных изображений, представляемых векторными сигналами.
В другом изобретении описана система для адаптивного распознавания информационных образов (RU 2160467 С1, G 06 K 9/00, 12.10.2000), которая хотя и улучшает качество изображения, но имеет жестко фиксированные допустимые базисные функции обработки изображений.
Известны способ и система для конструирования средств обработки изображений (WO 01/67389 A1, G 06 T 1/00, 13.09.2001), которая содержит средства ввода изображений, запоминания, обработки изображений и визуализации. Эта система представляет собой многофункциональное средство анализа изображений, предназначенное для разработки приложений, исследований и обучения. Система включает
- ядро системы, которое состоит из модулей, вызывающих операторы, управляющие операциями ввода/вывода и переводящие объекты данных во внутренний язык системы;
- средства управления данными, которые отвечают за управление основной памятью (оптимизированной для обработки изображений), а также за создание, управление и уничтожение графических объектов и кортежей;
- средства алгоритмического наполнения - библиотеку, включающую более 750 операторов для анализа изображений и визуализации данных;
- инструментальное средство HDevelop для ускоренной разработки программ анализа изображений (Computer Aided Vision Engineering CAVE - tool);
- средства отладки;
- базу знаний операторов, которая содержит справочную информацию по каждому оператору системы (имена и количество операторов, типы параметров, предлагаемые значения параметров).
Это - открытая система, в которой поддерживаются два основных метода программирования: а) интерактивная разработка программ с помощью HDevelop; б) с использованием внешних компиляторов языков С и C++ (имеется интерфейс для этих языков).
Данная система является ближайшим аналогом патентуемой системы, однако ей свойственны недостатки, которые сводятся к следующему:
а) не поддерживается технология "Plug-in" для загрузки интерфейсов визуализации и редактирования новых типов данных, введенных пользователем;
б) требуется наличие на ЭВМ операционных систем уровня не ниже Windows NT 4.0;
в) не предусмотрена возможность одновременного выполнения нескольких задач внутри оболочки (отсутствует многопоточная исполняющая подсистема);
г) отсутствуют средства редактирования информации об алгоритмах набора баз данных, что не позволяет вносить дополнительную информацию об алгоритмах.
Кроме того, недостаток ближайшего аналога, как и других вышеупомянутых систем, состоит в том, что они являются “закрытыми” или “квазиоткрытыми”, поскольку алгоритмы обработки и анализа изображений задаются при разработке системы и изменение заданного набора алгоритмов либо не предусматривается, либо требует высокой квалификации пользователя. Это обстоятельство не позволяет или существенно затрудняет добавление или замену алгоритмов на новые в процессе обработки изображений. Кроме того, назначением известных систем является решение прикладных задач, но не разработка и тестирование новых алгоритмов решения прикладных задач анализа и оценивания информации, представленной в виде изображений.
Задачей изобретения является построение открытой системы для автоматизации разработки, исследования и тестирования алгоритмов обработки, анализа и распознавания информации, представленной в виде изображений, а также автоматизации решения прикладных задач принятия решений, в которых исходная информация представляется в виде изображений произвольной природы и характера.
Технический результат - расширение номенклатуры классов задач и видов обрабатываемых объектов, в том числе изображений произвольного вида, расширение набора алгоритмов обработки и анализа изображений и накопителей для визуализации данных.
Технический результат обеспечивается тем, что открытая система для автоматизации обработки, анализа и распознавания изображений включает блок исполнения задания, связанный своими выходами с базой данных результатов обработки и с блоком анализа результатов обработки, средства алгоритмического наполнения, средства визуализации с дисплеем. В систему введены центральный блок управления и обмена, интерфейс пользователя, рабочая база данных, запоминающий блок длительного хранения, системная база данных, блок управления исполнением заданий, блок визуализации и блок управления и настройки, связанный двунаправленными шинами передачи управляющих и информационных сигналов с управляющим входом-выходом базы данных результатов обработки и с первым входом-выходом центрального блока управления и обмена, второй, третий, четвертый, пятый и шестой входы-выходы которого соединены отдельными двунаправленными шинами соответственно с первым выходом-входом блока управления исполнением заданий, выходом-входом системной базы данных, выходом-входом блока визуализации, выходом-входом интерфейса пользователя и первым выходом-входом рабочей базы данных. Второй вход-выход рабочей базы данных подключен к управляющему выходу-входу запоминающего блока длительного хранения, информационный выход-вход которого подсоединен к информационному входу-выходу рабочей базы данных, связанной своим выходом с первым входом блока визуализации, выход которого подключен к входу дисплея, а второй и третий входы - к выходу системной базы данных и соответственно к третьему выходу блока исполнения задания, первый выход которого подсоединен к входу блока анализа результатов обработки, а второй - к входу базы данных результатов обработки, связанной своим выходом с входом запоминающего блока длительного хранения. Выход блока анализа результатов обработки соединен с входом центрального блока управления и обмена, управляющий выход которого подключен к управляющему входу блока управления исполнением заданий, подсоединенного своим управляющим выходом к управляющему входу, а вторым выходом-входом - к входу-выходу блока исполнения задания.
Система может характеризоваться и тем, что блок управления исполнением заданий содержит блок формирования задания на обработку изображения и блок банка алгоритмических модулей, управляющий вход которого связан с первым управляющим выходом блока формирования задания на обработку изображения, а выход-вход является вторым выходом-входом блока управления исполнением заданий, первым выходом-входом и управляющим входом которого являются соответственно выход-вход и управляющий вход блока формирования задания на обработку изображения, второй управляющий выход которого является управляющим выходом блока управления исполнением заданий.
Система может характеризоваться также тем, что системная база данных содержит интерфейсный блок системной базы данных, диспетчер системной базы данных, базу данных алгоритмов, базу данных программных модулей, базу данных типов параметров и базу данных каталогов, первый выход-вход и выход интерфейсного блока являются соответственно выходом-входом и выходом системной базы данных, а второй выход-вход интерфейсного блока связан с первым входом-выходом диспетчера системной базы данных, второй, третий, четвертый и пятый входы-выходы которого соединены отдельными двунаправленными шинами с выходами-входами соответственно базы данных алгоритмов, базы данных программных модулей, базы данных типов параметров и базы данных каталогов.
Система может характеризоваться и тем, что рабочая база данных содержит интерфейсный блок рабочей базы данных и последовательно соединенные двунаправленными шинами запоминающий блок, запоминающий блок данных для отката и запоминающий блок данных для глубокого отката, управляющие входы которых подключены к управляющему выходу интерфейсного блока, первый выход-вход и выход которого являются соответственно первым выходом-входом и выходом рабочей базы данных, вторым входом-выходом которой является второй выход-вход интерфейсного блока, третий выход-вход которого связан с первым информационным входом-выходом запоминающего блока, второй информационный вход-выход которого является информационным входом-выходом рабочей базы данных.
Система может характеризоваться, кроме того, тем, что база данных результатов обработки содержит взаимосвязанные двунаправленной шиной интерфейсный блок переменной структуры и запоминающий блок данных результата обработки, вход которого является входом базы данных результатов обработки, выход интерфейсного блока переменной структуры является выходом базы данных результатов обработки, а управляющий вход-выход - управляющим входом-выходом базы данных результатов обработки.
В основе построения патентуемой системы лежат следующие положения. Системы обработки и распознавания изображений, как упомянуто выше, строятся по принципу закрытости набора допустимых преобразований, т.е. алгоритмы обработки заданы заранее и не могут изменяться пользователем в процессе функционирования системы. В основе патентуемой системы реализован иной принцип анализа и обработки изображений - открытости и адаптивности набора допустимых преобразований. Основы методологии построения таких систем заложены в работе Yu.Zhuravlev, I.B.Gurevitch, S.V.Ilyinski et al. "Development and Investigation of the Mathematical and Computational Basis for a System of Information Technologies of Pattern Recognition and Image Understanding" // Pattern Recognition and Image Analysis: Advances in Mathematical Theory and Applications. 1993, v.3, N 3., pp.266-282, и развиты в работе И.Б.Гуревич, Ю.И.Журавлев, Д.М.Мурашов и др. “Система автоматизации научных исследований в области анализа и понимания изображений на основе накопления и использования знаний. Ч.1” // Автометрия. - 1999. - №6. - С.23-50. В соответствии с этой методологией алгоритм преобразования (обработки, анализа, распознавания) строится средствами программного комплекса по блочно-структурному принципу. Если нужный блок в структуре алгоритма отсутствует, он может быть добавлен или сконструирован средствами самой патентуемой системы (макрокоманды или сценарии). Это позволяет пользователю расширять набор алгоритмов обработки и анализа изображений в алгоритмическом банке и пополнять информацию для их поиска в базах данных. Этот же метод используется и для расширения наборов типов обрабатываемых данных. Возможно, например, добавить пирамидальное представление изображения или изображение с “легендой” - семантическим описанием, которое может быть использовано алгоритмом обработки. Расширение набора накопителей для визуализации данных существенно облегчает обработку, многоаспектный анализ, распознавание и классификацию изображений произвольной природы.
Теоретической основой алгоритмического наполнения системы и сценариев, доступных пользователю, является дескриптивный подход к анализу и распознаванию изображений (И.Б.Гуревич “Проблема распознавания изображений” // “Распознавание, классификация, прогноз. Математические методы и их применение": Ежегодник / Под ред. Ю.И.Журавлева. М.: Наука, 1989. Вып.1. С.280-329; I.B.Gurevitch “The Descriptive Framework for an Image Recognition Problem" // Proceedings of The 6th Scandinavian Conference on Image Analysis, Oulu, June 19-22, 1989: in 2 volumes, V.1: Pattern Recognition Society of Finland, 1989. - P.220-227; I.B.Gurevitch “Descriptive Technique for Image Description, Representation and Recognition" // Pattern Recognition and Image Analysis: Advances in Mathematical Theory and Applications in the USSR. 1991. V.1, N 1. P.50-53). Соответственно, обработка, преобразование, анализ и распознавание изображений в системе реализуются посредством следующих основных методов, предусмотренных дескриптивным подходом: а) стандартизация описаний задач обработки и анализа изображений; б) стандартизация описаний процедур обработки и анализа изображений; в) использование единой формальной системы для описания и реализации операций над процедурами обработки и анализа изображений и моделями изображений (алгебры изображений и дескриптивные алгебры изображений); г) использование комбинаций базовых процедур преобразования изображений; д) приведение изображений к виду, удобному для распознавания (синтез и формализация описаний изображений, представление изображений “признаками” и моделями, воспроизведение в описании структуры, семантических и пространственных отношений изображения); е) осуществление распознавания изображений на основе методов идентификации, оценки близости изображений в пространствах описаний и сопоставления представлений изображений; ж) использование свойств инвариантности и эквивалентности изображений.
Существо изобретения поясняется на чертежах, где на фиг.1 представлена блок-схема патентуемой системы; на фиг.2 - вид окна оболочки системы.
Открытая система для автоматизации обработки, анализа и распознавания изображений (фиг.1) включает центральный блок 1 управления и обмена, связанный с интерфейсом 2 пользователя, рабочей базой 10 данных, системной базой 20 данных, блоком 30 управления исполнением заданий, блоком 40 визуализации, блоком 50 управления и настройки.
Рабочая база 10 данных включает интерфейсный блок 11 рабочей базы данных, который обеспечивает управление визуализацией данных, управление данными и их сохранением, а также формирование резервных массивов данных для отката. Рабочая база 10 данных имеет в своем составе запоминающие блоки 14, 16 и 18.
Интерфейсный блок 11 рабочей базы данных связан с запоминающим блоком 12 длительного хранения, который связан с запоминающим блоком 14. Интерфейсный блок 11 рабочей базы данных также связан с блоком 14. Функции запоминающего блока 14 состоят в хранении данных, например, в выделенной области оперативной памяти ЭВМ и в предоставлении доступа к данным. Запоминающий блок 14 также обеспечивает подсчет количества выданных для использования ссылок. Запоминающий блок 14 связан с запоминающими блоками 16 данных для отката и 18 данных для глубокого отката. Запоминающий блок 16 данных для отката обеспечивает резервный блок данных для отката, а блок 18 данных - резервный блок данных для глубокого отката.
Центральный блок 1 управления и обмена связан с системной базой 20 данных. Системная база 20 данных содержит интерфейсный блок 21 системной базы данных, связанный с диспетчером 22 системной базы данных. Диспетчер 22 системной базы данных связан с базой данных 23 алгоритмов, базой данных 24 программных модулей, базой данных 25 типов параметров, базой данных 26 каталогов.
Центральный блок 1 управления и обмена связан также с блоком 30 управления исполнением заданий. Блок 30 содержит блок 32 формирования задания на обработку изображения, связанный с блоком 34 исполнения задания, который связан с блоком 36 анализа результатов обработки. Выход блока 36 анализа связан с центральным блоком 1 управления и обмена. Блоки 32 и 34, кроме того, связаны с блоком 38 банка алгоритмических модулей.
Центральный блок 1 управления и обмена связан с блоком 40 визуализации, к другим входам которого подключены интерфейсный блок 11 рабочей базы данных, интерфейсный блок 21 системной базы данных, блок 34 исполнения задания, а к выходу - дисплей 42.
Центральный блок 1 управления и обмена связан с блоком 50 управления и настройки, которой связан с базой 60 данных результатов обработки, имеющей в своем составе интерфейсный блок 62 переменной структуры и связанный с ним запоминающий блок 64 данных результата обработки. Интерфейсный блок 62 переменной структуры также соединен с запоминающим блоком 12 длительного хранения.
В функции центрального блока 1 управления и обмена входит управление рабочей базой 10 данных и базой 60 данных результатов обработки, т.е. выдача команды на создание нового массива данных и служебной информации и закрытие уже существующего и зарегистрированного массива данных и служебной информации, передача команд от интерфейса 2 пользователя любому интерфейсному блоку, поддержка списка созданных блоков 11, 21 и 62 - накопителей для визуализации данных.
Далее, центральный блок 1 управления и обмена осуществляет передачу команд от одного накопителя к другому, передачу команд на изменение порядка формирования изображения от интерфейса 2 пользователя блоку 40 визуализации, формирование списка накопителей, удовлетворяющих условию запроса.
Функции запоминающего блока 12 длительного хранения состоят в обеспечении длительного хранения блока данных - файла, а также в обеспечении поиска данных по запросу из интерфейсного блока 11 рабочей базы данных и из блока 50 управления и настройки.
Для обеспечения функционирования баз данных 23-26, входящих в системную базу 20 данных, предназначены интерфейсный блок 21 и диспетчер 22 системной базы данных. Интерфейсный блок 21 и диспетчер 22 системной базы данных баз данных обеспечивают прием команд на редактирование баз данных, а также визуализацию информации из баз данных. Диспетчер 22 системной базы данных выполняет ввод-вывод информации баз данных, поиск информации по запросу, поддержку семантических связей между базами данных, а также обеспечение трансакций.
Базы данных, входящие в системную базу 20 данных, обеспечивают выполнение следующих функций:
- база 23 данных алгоритмов обеспечивает хранение информации об алгоритмах и функциях, добавление, удаление, изменение записей и их упорядочение, а также поиск записей;
- база 24 данных программных модулей обеспечивает хранение информации о зарегистрированных программных модулях, добавление, удаление, изменение записей и их упорядочение, а также поиск записей;
- база 25 данных типов параметров обеспечивает хранение информации о типах параметров, которые допустимо использовать, и соответственно добавление, удаление, изменение записей и их упорядочение, а также поиск записей;
- база 26 данных каталогов выполняет поддержку древовидного каталога алгоритмов, а также добавление, удаление, изменение записей и их упорядочение и, кроме того, поиск записей.
Блок 30 управления исполнением заданий обеспечивает формирование задания на обработку изображения, исполнение такого задания в многопоточном режиме и анализ его результатов. Он может работать в 2 режимах - отладочном и штатном. Соответственно, блок 32 формирования задания на обработку изображения обеспечивает следующие функции: проводит анализ информации об алгоритме, составление списков параметров по информации от блока управления, составление списка для выбора значений каждого параметра, выбор значений параметров по команде от интерфейса 2 пользователя. Одновременно при выборе значений параметров по команде от центрального блока 1 управления и обмена блок 11 осуществляет блокирование запоминающего блока 14 от совместного использования и копирование содержимого блока 14 в запоминающий блок 16, а блока 16 - в блок 18 для обеспечения возможности отката производимой операции. Если содержимое блока 14 не модифицировалось и данные не обрабатывались, то блоки 16 и 18 могут не содержать данных. Если данные из рабочей базы 10 данных еще не были затребованы на обработку, то блоки 16 и 18 не содержат информации (пустые). Кроме того, блок 32 проводит загрузку необходимого алгоритмического модуля и поиск необходимой функции, выдачу команд на блокирование данных, проверку корректности выбора параметров. Блок 32 осуществляет передачу блоку 34 исполнения задания адреса функции, данных, ссылок на блоки данных, а также формирует действия на возможный отказ от исполнения задания.
Блок 34 исполнения задания соответственно обеспечивает исполнение задания, изменение его приоритета, а также отражение степени завершенности. Блок 36 анализа результатов обработки осуществляет анализ результатов исполнения задания блока 34, выдачу команд на снятие блокировки данных и на создание нового контейнера данных блоком 50.
В состав блока 30 управления исполнением заданий входит блок 38 банка алгоритмических модулей, который обеспечивает хранение алгоритмических модулей и поиск модулей по запросу из блока 32 формирования задания на обработку изображения.
Функции блока 50 управления и настройки состоят в формировании нового массива данных и служебной информации в базе 60 данных результатов обработки посредством интерфейсного блока 62 переменной структуры, а также соответствующую подготовку системной базы 20 данных и интерфейсного блока 21 системной базы данных. Функции интерфейсного блока 62 переменной структуры обеспечивают визуализацию, управление и сохранение данных, а также формирование резервных блоков данных для отката.
Интерфейсный блок 62 переменной структуры (так же, как и блок 11) предназначен для хранения данных в выделенной области оперативной памяти ЭВМ, предоставлении доступа к данным, освобождения оперативной памяти, занятой данными, а также для подсчета количества выданных ссылок для использования.
Блок 40 визуализации поддерживает формирование изображения на экране дисплея 42, наложение в нужном порядке изображений от различных интерфейсов системы, а также изменение порядка формирования изображения на экране дисплея 42 по команде от центрального блока 1 управления и обмена.
Патентуемая система может быть реализована в виде многомашинного комплекса, в зависимости от требований к производительности системы, поскольку она допускает параллельное выполнение операций и действий. При невысоких требованиях к производительности система или отдельные ее части могут быть реализованы на нескольких или на одной персональной ЭВМ. Патентуемые структурные принципы позволяют использовать современные принципы проектирования программ для реализации на одной персональной ЭВМ. Работоспособность патентуемой системы подтверждена опытной эксплуатацией ее программной модели, спроектированной для использования в среде Windows, позволяющей использовать OLE-технологию связывания и внедрения объектов, при этом такие блоки, как 11, 32 и 62 соответственно представлены как OLE-накопители.
Система работает следующим образом.
Изображение, или числовая матрица, или последовательность изображений, подлежащие по выбору пользователя обработке и анализу, по команде центрального блока 1 управления и обмена и интерфейсного блока 11 рабочей базы данных считывается из запоминающего блока 12 длительного хранения в запоминающий блок 14, в котором с помощью протоколов согласования данных формируется содержимое рабочей базы 10 данных для этого изображения.
Далее, центральным блоком 1 управления и обмена выдается команда системной базе 20 данных на выбор необходимого алгоритма для обработки данного изображения, сохраняемого в блоке 14. Запрос алгоритма формируется через интерфейсный блок 21 системной базы данных и диспетчер 22 из баз данных 23, 24, 25 и 26. Алгоритм выбирается из каталога, находится по ключевому слову или более сложному запросу.
Информация о найденном алгоритме через центральный блок 1 управления и обмена поступает в блок 30 управления исполнением заданий и передается блоку 32 формирования задания на обработку изображения. Блок 32 предоставляет пользователю выбор параметров алгоритма из подготовленных списков возможных вариантов. Эти списки формируются центральным блоком 1 управления и обмена по информации о типе параметра и дополнительных ограничениях на свойства этого параметра. Так, например, если указывается число соседей (“связность”) каждого пиксела, то возможны только три варианта: 4, 6 и 8. Блок 32 фиксирует выбор пользователя, блокирует использованные данные от постороннего доступа (из другого задания), находит программный модуль в блоке 38 банка алгоритмических модулей и передает задание на исполнение в блок 34. Блок 34 исполнения задания контролирует исполнение задания и позволяет увеличить или уменьшить его приоритет (одновременно могут исполняться несколько заданий), показывает степень завершенности задания. После завершения исполнения задания блок 34 передает результаты в блок 36 анализа результатов обработки.
Блок 36 анализирует результат окончания работы алгоритма и передает команду на освобождение заблокированных данных. Если результатом работы является новое содержимое запоминающего блока 64 данных результата обработки, то блок 36 анализа передает команду блоку 50 управления и настройки.
Для этого блок 50 управления и настройки из запоминающего блока 64 данных результата обработки запрашивает информацию о типе данных, по которой центральный блок 1 управления и обмена подбирает настройку интерфейсного блока 62 переменной структуры, благодаря чему впоследствии и создается новый массив данных и служебной информации в базе 60 данных результатов обработки. При необходимости этот массив в базе 60 данных результатов обработки может быть использован в следующем задании или сохранен в запоминающем блоке 12 длительного хранения. Результатом работы является как обработанное изображение, так и последовательность операций (алгоритмов, заданий), использованная для синтеза этого изображения. Эта последовательность может быть сохранена в системной базе 20 данных, посредством интерфейсного блока 21 и диспетчера 22 системной базы данных в соответствующих базах данных как новый алгоритм обработки, добавляемый набору допустимых преобразований.
Блок 40 визуализации в процессе функционирования системы позволяет сформировать результирующий вид совокупности данных для вывода на дисплей 42. Результирующий вид формируется как совокупность окон, каждое из которых содержит один из результатов визуализации данных или результат работы служебного накопителя (например, информационного). Типичный вид окна оболочки системы, реализованной в операционной системе семейства Windows, представлен на фиг.2. Видно, что верхняя часть экрана представляет собой меню и панель инструментов для управления активным окном, в центральной части экрана размещены панели системной базы 20 данных, блока 34 исполнения задания, а также ряд изображений, визуализированных графически и в виде таблицы чисел (базы 10 и 60 данных).
Система с помощью объектных библиотек (блок 38 банка алгоритмических модулей) и дополнительной информации в системной базе 20 данных (базы данных 23, 24, 25 и 26) поддерживает операции чтения, распределения в памяти, сохранения, копирования со следующими типами объектов: векторы (целые числа, действительные числа с плавающей запятой), матрицы (целые числа, действительные числа с плавающей запятой, структурные), изображения (1-, 4-, 8-, 16-, 24-, 32-бит/пиксел) в форматах BMP, TIFF, PCX, JPEG (чтение и сохранение для TIFF, PCX, JPEG), фрагменты векторов и матриц. Система включает, в частности, следующие базовые средства для обработки изображений: аффинные преобразования, преобразования Фурье, Габора, вейвлет-преобразования; матричную фильтрацию, выделение яркостных переходов и контуров, методы сегментации, морфологические операции, методы анализа текстур, алгоритмы факторного анализа, алгоритмы распознавания и принятия решений.
По технологии plug-in в систему в процессе эксплуатации могут быть добавлены новые алгоритмы обработки, преобразования, анализа и распознавания изображений, средства визуализации, расширенные средства поиска в базе данных. Это осуществляется без изменения основы системы (управляющих связей и архитектуры) с сохранением уже накопленных знаний в базах данных (их количество также может быть увеличено). Так, например, удачная последовательность алгоритмов анализа изображений может быть добавлена как новый алгоритм с описанием, указывающим рекомендуемые области компетенции.
Таким образом, в процессе использования системы количество алгоритмов растет, расширяется также и информация о них в базах данных, добавляются новые описания, необходимые для поиска и использования алгоритмов, что расширяет возможности системы.
Патентуемый объект реализован в открытой системе “Черный квадрат. Версия 1.1”, предназначенной для автоматизации научных исследований в области обработки, анализа и распознавания изображений на базе ПЭВМ.
Класс G06F15/18 с модификацией программ, осуществляемой самой машиной в соответствии с опытом, накопленным машиной за время полного цикла работы; самообучающиеся машины
Класс G06K9/00 Способы и устройства для считывания и распознавания напечатанных или написанных знаков или распознавания образов, например отпечатков пальцев
Класс G06T1/00 Обработка данных изображения общего применения