автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.11, диссертация на тему:Методы программирования систем технического зрения реального времени
Автореферат диссертации по теме "Методы программирования систем технического зрения реального времени"
На правах рукописи
Богу славским Андрей Александрович
МЕТОДЫ ПРОГРАММИРОВАНИЯ СИСТЕМ ТЕХНИЧЕСКОГО ЗРЕНИЯ РЕАЛЬНОГО ВРЕМЕНИ
05.13.11 - Математическое и программное обеспечение вычислительных машин, комплексов л компьютерных сетей.
Автореферат диссертации на соискание ученой степени доктора физико-математических наук
Москва - 2006
Работа выполнена в Институте прикладной математики им. М.В. Келдыша РАН (г. Москва)
Научный консультант: доктор физико-математических наук, профессор Соколов Сергей Михайлович
Официальные оппоненты:
доктор физико-математических наук Горбунов-Посадов Михаил Михайлович
Ведущая организация: Московский государственный университет им. М.В. Ломоносова (факультет ВМК).
Защита состоится " 14 " ноября 2006 г. в 11 час. на заседании Диссертационного совета Д 002.024.01 при Институте прикладной математики им. М.В. Келдыша РАН по адресу: 125047, Москва, Миусская пл., 4.
С диссертацией можно ознакомиться в библиотеке Института прикладной математики им. М.В.Келдыша РАН.
доктор физико-математических наук, профессор Зенкевич Станислав Леонидович
доктор физико-математических наук, профессор Обухов Юрий Владимирович
Автореферат разослан " 2006 г.
Ученый секретарь диссертационного совета
доктор физико-математических наук ¿¡/¿г^В*-*—---— Полилова Т.А.
ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ
Развитие робототехнических систем и систем автоматизации производства все активнее выдвигает требование по оснащению этих систем компьютерным видением. Достижения в развитии аппаратных средств сбора зрительных данных и ввода их в ЭВМ позволяют ставить и решать сложные задачи по машинной обработке видеоинформации. Особое место среди таких задач занимают задачи, требующие решения в масштабе реального времени, задаваемого внешними процессами.
К задачам обработки зрительных данных в реальном времени относятся мониторинг состояния различных объектов и систем, инспекционный технологический контроль, слежение за подвижными объектами, обработка зрительной информации в информационных системах манипуля-ционных и подвижных робототехнических комплексов. Во всех перечисленных приложениях требуется обеспечить в реальном времени получение и обработку зрительных данных с целью обнаружения на сформированных цифровых изображениях образов объектов интереса или их частей.
Отечественная практика применения систем технического зрения (СТЗ), а также ряд зарубежных работ, свидетельствуют о целесообразности использования в качестве базовой ЭВМ в СТЗ реального времени персональных компьютеров общего назначения. Это делает возможным внедрение прикладных СТЗ для решения народнохозяйственных задач, в которых существенное значение имеет доступность аппаратных компонентов автоматизированных систем обработки зрительной информации, а также возможность применения готового прикладного программного обеспечения для представления и обработки результатов, полученных с помощью СТЗ реального времени.
Сдерживающим фактором, особенно на стадии разработки систем технического зрения реального времени, является отсутствие методов программирования подобных систем. Существующие примеры программных средств для сбора и обработки зрительных данных не учитывают специфики требований реального времени или являются узко специализированными под решение отдельно взятой задачи с использованием жестко определенных аппаратных и программных средств. Известные в настоящее время коммерческие пакеты обработки изображений и средства для ускорения разработки приложений автоматизации производства на основе подхода быстрой разработки приложений, как правило, предлагают пользователю платформу, закрытую для модернизации и недостаточно документированную в плане выбранной программной архитектуры.
В диссертации предлагаются методы программирования систем технического зрения реального времени, восполняющие этот пробел. Эти методы обеспечивают разработку ПрО СТЗ реального времени и применимы для построения СТЗ на базе общедоступных персональных компьютеров.
Эти методы программирования применялись для разработки ряда СТЗ реального времени прикладного и научного назначения. Среди них - СТЗ для определения взаимного расположения частей пантографов в движении, СТЗ для определения местоположения контактного провода железной дороги по высоте и в плане в процессе движения электроподвижного состава, СТЗ для контроля качества металлического порошка в порошковой металлургии, СТЗ для слежения за процессом сближения и стыковки космического корабля с Международной космической станцией, СТЗ в составе ма-нипуляционных робототехнических систем «глаз-рука».
Важным этапом в процессе проектирования и разработки ПрО является формирование программной архитектуры. Она описывает назначение и типы структурных частей программной системы, а также способы взаимодействия этих частей. В настоящее время известны общепринятые архитектуры для применения в области разработки ПрО массового назначения (например, архитектура интерактивных приложений, клиент-серверных систем и др.), но для разработки ПрО СТЗ реального времени унифицированной программной архитектуры не существует. В данной работе предлагается архитектура ПрО СТЗ реального времени. Она определяет назначение и взаимодействие компонентов ПрО, использование которых упрощает разработку ПрО СТЗ реального времени для обработки полутоновых и цветных изображений с возможностью использования нескольких полей зрения.
Эта архитектура была сформирована в результате анализа опыта разработки более 10 прикладных СТЗ. Применение этой архитектуры позволило повторно использовать в процессе разработки ПрО СТЗ реального времени проектные решения и компоненты ПрО. В качестве структурных частей наиболее высокого уровня в ПрО СТЗ выделяются три параллельные подсистемы: подсистема интерфейса пользователя, подсистема ввода зрительных данных и подсистема обработки зрительных данных. Таким образом, предлагаемая архитектура ПрО СТЗ предназначена для использования в ПрО СТЗ, которое рассчитано на функционирование в среде многозадачной операционной системы (ОС) с поддержкой многопоточности.
Актуальность предлагаемых методов программирования связана также с тем, что в качестве базовой ОС для разработки ПрО СТЗ оказывается возможным выбрать ОС общего назначения. Критерием, позволяющим сделать такой выбор, является возможность соблюдения временных ограничений, характерных для конкретной прикладной задачи. В реализованных СТЗ удалось обеспечить обработку зрительных данных в реальном масштабе времени, сравнимым с кадровой частотой телевизионного стандарта, в ОС общего назначения семейства Microsoft Windows NT/XP. Разработанная архитектура не ориентирована исключительно на ОС данного семейства и допускает применение в среде других ОС.
В качестве методологии проектирования общего назначения в настоящее время распространен объектно-ориентированный подход. Известны технологии применения объектно-ориентированного подхода, специализированные для разработки ПрО систем реального времени. Но их перенос для проектирования ПрО СТЗ затруднителен в связи со спецификой СТЗ. В качестве характерных особенностей ПрО СТЗ можно указать: 1) опосредованное получение сведений о внешних событиях в результате обработки зрительных данных; и 2) сложность выбора представительных тестовых данных до этапа опытной эксплуатации системы. Эти особенности требуют, во-первых, обеспечения обработки зрительных данных в реальном времени с учетом того, что временные затраты на обработку и применяемые алгоритмы могут сильно зависеть от текущего состояния программной системы, и, во-вторых, в ПрО СТЗ необходимы отладочные средства, позволяющие обнаруживать необрабатываемые образцы изображений в процессе штатного функционирования системы с целью последующей модификации алгоритмов обработки.
С учетом приведенных особенностей рассматриваемых задач обработки зрительных данных и для упрощения применения объектно-ориентированного подхода к разработке ПрО СТЗ в данной работе была выполнена классификация компонентов ПрО СТЗ в рамках предлагаемой программной архитектуры. Эти компоненты реализуются в виде классов на языке программирования Си++.
Спроектированные с учетом решения ряда прикладных задач компоненты ПрО СТЗ были использованы для реализации каркаса ПрО СТЗ реального времени для многозадачной операционной системы. Этот каркас представляет собой заготовку приложения, которую требуется доработать для использования в конкретной задаче. Каркас реализует взаимодействие подсистем ПрО СТЗ в рамках предлагаемой многопоточной архитектуры. Аналогов каркаса для разработки ПрО СТЗ, открытых для повторного использования на уровне исходных текстов, в настоящее время не известно.
При проектировании и использовании каркаса в качестве одной из основных целей ставилась задача изоляции подсистемы обработки зрительных данных от остальных подсистем ПрО СТЗ, так чтобы эта подсистема не зависела от деталей интерфейса с пользователем и с аппаратным обеспечением СТЗ, а также могла быть перенесена на другие платформы с минимальными изменениями. Для сокращения платформно-зависимых деталей реализации в подсистеме обработки зрительных данных в каркасе ПрО СТЗ были предусмотрены программные интерфейсы, представляющие функциональность компонентов для взаимодействия с пользователем и аппаратурой на уровне СТЗ (например, интерфейс абстрактного «Источника ввода зрительных данных»).
Особенностью разрабатываемого каркаса ПрО СТЗ является направленность на функционирование ПрО СТЗ в двух режимах — в режиме на-
стройки и в автоматическом режиме. Использование двух режимов работы связано с тем, что в настоящее время пока не удается обеспечить полностью автоматическую обработку зрительных данных без наложения сильных ограничений на структуру наблюдаемых сцен и условия освещения, что не всегда возможно в нелабораторных условиях. Режим настройки в ПрО СТЗ предназначен для интерактивной проверки корректности функционирования аппаратной части СТЗ, для проверки хода обработки изображений и настройки параметров обработки изображений (например, выбор зон контроля), а также для просмотра результатов обработки отдельных изображений и данных, полученных в автоматическом режиме. В автоматическом режиме выполняется обработка зрительных данных в реальном времени.
Для организации обработки зрительных данных в реальном времени существенно сокращение времени и повышение надежности обработки. С этой целью в ПрО СТЗ предлагается применять алгоритмы обработки последовательностей изображений на основе использования комбинированных методов распознавания объектов «снизу-вверх» для первоначального обнаружения и «сверху-вниз» для прослеживания объектов.
В процессе обработки методом «снизу-вверх» признаки, выделяемые на изображении, посредством последовательной проверки гипотез преобразуются в признаки более высокого уровня. На конечном этапе обработки принимается решение об обнаружении объекта интереса. Решение о неудачном результате обработки изображения может быть принято после проверки одной из промежуточных гипотез. В случае успешного обнаружения образа объекта интереса на текущем изображении при анализе последующих изображений временные затраты могут быть сокращены за счет применения обработки методом «сверху-вниз». Она заключается в подтверждении гипотезы расположения образа интереса в местоположении, вычисленном с учетом прогноза.
Алгоритмы обнаружения образов объектов методами «снизу-вверх» и «сверху-вниз» в ПрО СТЗ комбинируются для построения высокоуровневого алгоритма обработки зрительных данных, обеспечивающего решение целевой задачи конкретной СТЗ. Для применения в составе высокоуровневых алгоритмов, разрабатываемых с учетом априорных сведений из предметной области, также был сформирован набор низкоуровневых алгоритмов реального времени.
На основе предлагаемой программной архитектуры ПрО СТЗ и с применением разработанного каркаса ПрО СТЗ были успешно решены более 10 задач обработки зрительных данных в реальном времени. Разработанные СТЗ можно разделить на три категории: СТЗ для мониторинга состояния механических систем, СТЗ для инспекционного технологического контроля и СТЗ для слежения за подвижными объектами.
Исследования в области разработки методов программирования СТЗ реального времени были поддержаны грантами РФФИ №02-01-00671 ("Исследование механики и управления движением робототехнических систем в реальном времени с использованием зрительных сенсоров"), № 02-07-90425 ("Создание телекоммуникационных ресурсов для исследования и информационного обеспечения распределенных мобильных систем"), №03-07-06101 ("Исследование ввода и обработки зрительных данных с использованием камер произвольного доступа к элементам растра (СМОЗ-камер)"), грантом Президента РФ МК-3386.2004.9 («Разработка методов программирования систем технического зрения реального времени») и грантом Фонда содействия отечественной науке (программа «Кандидаты и доктора наук РАН» за 2004 и 2005 г.).
Цель работы заключается в разработке методов программирования систем технического зрения реального времени. Эти методы основаны на применении унифицированной архитектуры ПрО СТЗ, реализующего эту архитектуру каркаса ПрО СТЗ реального времени и методов проектирования высокоуровневых алгоритмов обработки зрительных данных. Особое внимание уделялось применимости предлагаемых методов программирования для разработки СТЗ на базе общедоступных программных и аппаратных компонентов персональных компьютеров. Также ставилась цель применения разрабатываемых методов программирования для решения прикладных и научных задач обработки зрительных данных в реальном времени.
Научная новизна. Разработана новая архитектура ПрО СТЗ реального времени для применения в среде многозадачных ОС с поддержкой многопоточности. Сформирована структура подсистем интерфейса пользователя, ввода и обработки зрительных данных в ПрО СТЗ. В функционировании ПрО СТЗ выделены два основных режима — автоматический и режим настройки. Спроектированы способы взаимодействия подсистем ПрО СТЗ в двух режимах, обеспечивающие средства контроля оператором или разработчиком ПрО хода обработки зрительных данных, а также обработку в реальном времени.
На основе предлагаемой архитектуры разработан каркас ПрО СТЗ реального времени. В нем реализованы параллельные подсистемы ПрО СТЗ. Этот каркас предназначен для наращивания применительно к решению конкретной задачи обработки зрительных данных в реальном времени. В состав подсистем каркаса ПрО СТЗ входят компоненты ПрО, оформленные в виде классов на языке Си++. Доработка каркаса в конкретной прикладной задаче выполняется в прогнозируемых точках роста ПрО на основе использования расширяемых классов каркаса. Разработанный каркас ПрО СТЗ является новым.
Предлагаемые методы программирования обеспечивают повторное и многократное использование компонентов ПрО СТЗ при решении задач обработки зрительных данных в реальном времени за счет повторного использования проектных решений и способов их реализации.
В работе предлагаются методы проектирования высокоуровневых алгоритмов обработки зрительных данных реального времени. Они основаны на выделении в высокоуровневом алгоритме ПрО СТЗ двух отдельных алгоритмов, выполняющих обработку в случае первоначального обнаружения объекта и в случае его прослеживания. В первом случае обработка выполняется методом «снизу-вверх» с учетом априорных сведений из предметной области задачи о структуре обрабатываемых изображений, во втором — методом «сверху-вниз», когда дополнительно могут учитываться результаты обработки предыдущих изображений и прогноз положения образов объектов интереса на новых изображениях. Для применения алгоритмов такой структуры в каркасе ПрО СТЗ реализованы специальные программные компоненты — базовые классы и интерфейсы, которые являются новыми.
Для применения в составе высокоуровневых алгоритмов обработки был сформирован набор алгоритмов низкого уровня, в которых не используется априорных сведений из предметной области задачи, но которые ориентированы на функционирование в реальном времени (в качестве примеров можно назвать алгоритм шаблонного сопоставления изображений, алгоритм трассировки контуров, алгоритм стековой заливки с бинаризацией по диапазону, алгоритмы для выборки граничных точек с фильтрацией по выпуклой оболочке). Основной метод обеспечения функционирования в реальном времени в этих алгоритмах заключается в сокращении объема обрабатываемых зрительных данных и в учете при низкоуровневой обработке временных ограничений, указываемых при вызове соответствующего низкоуровневого алгоритма.
Все полученные результаты диссертации являются новыми.
Практическая ценность работы. Предлагаемые методы программирования были разработаны и использованы в процессе решения ряда прикладных и научных задач обработки зрительных данных в реальном времени. При этом было спроектировано и реализовано ПрО более десяти СТЗ реального времени. Среди них можно выделить СТЗ для мониторинга состояния механических систем, СТЗ для инспекционного технологического контроля и СТЗ для слежения за подвижными объектами.
К разработанным СТЗ для мониторинга состояния механических систем, в частности, относятся СТЗ для определения взаимного расположения частей пантографов в движении; СТЗ для определения местоположения контактного провода железной дороги по высоте и в плане в процессе движения электроподвижного состава; СТЗ для определения колебаний
контактного провода железной дороги; СТЗ для обнаружения дефектов верхнего строения железнодорожного пути. Перечисленные СТЗ позволяют получать информацию о состоянии механических систем бесконтактным способом, и в ряде случаев позволяют получить данные, недоступные иными измерительными методами. Например, СТЗ для определения местоположения контактного провода (в плане и по высоте относительно оси пути) предназначена для использования в составе передвижной лаборатории комплексной диагностики (ПЛКД) в процессе движения по железнодорожному перегону. Получаемые данные необходимы для обеспечения безопасности движения. Человек не может выполнять подобные измерения вручную (минимальные требования - 4 измерения в секунду). Существующие контактные методы позволяют выполнять измерения только с использованием пантографа вагона-лаборатории в ограниченном диапазоне скоростей движения. СТЗ при решении данной задачи позволяет выполнять определение интересующих параметров с требуемой частотой и использовать пантограф локомотива, что невозможно в случае контактных методов.
В целях инспекционного технологического контроля, в частности, были разработаны СТЗ для контроля качества металлического порошка в порошковой металлургии; СТЗ для контроля чистоты жидкости в емкостях на движущемся конвейере. Эти СТЗ позволяют автоматизировать рутинные и утомительные для оператора-человека операции контроля состояния производственной продукции.
Для решения задач, связанных со слежением за подвижными объектами, были разработаны СТЗ в составе системы «глаз-рука», выполняющей захват подвижного объекта; СТЗ в составе системы «глаз-рука», формирующей траекторию объекта; СТЗ для слежения за низколетящими целями на расстояниях прямой видимости; СТЗ для слежения за движущейся малоразмерной целью; СТЗ для слежения за процессом сближения и стыковки космического корабля с Международной космической станцией. Эти СТЗ также имеют важное практическое значение. Например, СТЗ в составе систем «глаз-рука» предназначены для получения в режиме реального времени данных, необходимых для определения параметров движения объектов манипулирования, совершающих заранее неизвестное движение в операционном пространстве манипуляционного робототехнического комплекса.
Все перечисленные СТЗ были разработаны с использованием единых методов, позволяющих добиться обработки зрительных данных в режиме реально го времени в среде распространенных операционных систем семейства MS Windows NT/XP и с использованием доступных устройств формирования изображений. В качестве базовой ЭВМ в перечисленных СТЗ были использованы Intel-совместимые персональные компьютеры. Возможность использования общедоступных аппаратных и программных
компонентов в СТЗ реального времени обусловливает особую практическую важность предлагаемых методов программирования, значительно расширяя сферу применения СТЗ в прикладных задачах.
Апробация работы. Основные результаты диссертации были представлены на Всероссийской с участием стран СНГ конференции "Распознавание образов и анализ изображений: новые информационные технологии" (Ульяновск, 1995 г.), на научно-технической конференции "Экстремальная робототехника" (Санкт-Петербург, 1996, 2001 и 2004 г.), на Международной конференции по интеллектуальным роботам и системам IEEE/RSJ International Conference on Intelligent Robots and Systems IROS'97 (Гренобль, Франция, 1997 г.), на Международной конференции по робототехнике и автоматизации IEEE International Conference on Robotics and Automation ICRA'98 (Левен, Бельгия, 1998 г.), на Международной конференции по адаптивным роботам и GSLT International Conference on Adaptive Robots and General System Logical Theory (Санкт-Петербург, 1998 и 2004 г.), на научной школе-конференции "Мобильные роботы и мехатрон-ные системы" (Москва, 1998, 2000, 2003, 2004 и 2005 г.), на Международной конференции "Применение новых технологий в образовании" (Троицк, 1999 г.), на российской научно-технической конференции "Неразру-шающий контроль и диагностика" (Москва, 1999 г.), на Международной научно-практической конференции "Народное образование в XXI веке" (Москва, 2001), на Международном семинаре по компьютерным наукам и информационным технологиям 3-rd International Workshop on Computer Science and Information Technologies CSIT'2001 (Уфа, 2001), на Международной конференции по мехатронике Mechatronics Forum International Conference (Твент, Нидерланды, 2002 г.), на Международной конференции по организации систем, кибернетике и информатике International Conference Systemics, Cybernetics and Informatics SCI 2002 и SCI 2003 (Орландо, США, 2002 и 2003 г.), на Международной конференции по компьютерным, коммуникационным и технологиям управления International Conference on Computer, Communication and Control Technologies CCCT2003 (Орландо, США, 2003 г.), на Всероссийской научной конференции "Методы и средства обработки информации" (Москва, 2003 и 2005 г.), на научно-технической конференции "30 лет металлургии гранул" (Москва, Всероссийский институт легких сплавов ВИЛС, 2003 г.), на Международной конференции по информатике в области управления, автоматизации и робототехники First International Conference on Informatics in Control, Automation and Robotics ICINCO 2004 (Сетубал, Португалия, 2004 г.).
Результаты диссертации также докладывались на научном семинаре по робототехнике ИПМ им. М.В. Келдыша РАН (май 1998 г.); на Всероссийском семинаре под руководством академика Д.Е. Охоцимского "Механика и управление робототехническими системами с элементами искусст-
венного интеллекта" (МГУ им. М.В. Ломоносова, 1998), на семинаре "Машинная графика и обработка изображений" под руководством профессора Ю.М. Баяковского (МГУ им. М.В. Ломоносова, декабрь 2005), на совместном научном семинаре ИПМ им. М.В. Келдыша РАН под руководством профессора М.Р. Шура-Буры (май 2006 г).
Публикации. По результатам работы имеется 46 публикаций, включая 6 статей в журналах и сборниках [8, 16, 18, 34, 45, 46], 32 доклада на конференциях [1, 2, 4-7, 11, 13-15, 17, 19-22, 25-33, 35-39, 42-44] (29 статей и 3 тезиса) и 8 препринтов [3, 9,10, 12, 23,24,40,41].
Структура диссертации. Диссертация состоит из введения, четырех глав, заключения и списка литературы. Диссертация содержит 304 страницы основного текста, 95 рисунков, список литературы состоит из 255 ссылок.
СОДЕРЖАНИЕ РАБОТЫ
Во введении дается обоснование актуальности темы диссертации, рассматриваются задачи исследования, приводятся основные результаты и формулируются защищаемые положения. Демонстрируется практическая значимость результатов работы и кратко описывается содержание диссертации.
В первой главе рассматриваются основные методы программирования, предназначенные для разработки ПрО СТЗ реального времени. СТЗ представляют собой системы реального времени, которые наряду с общими для систем реального времени свойствами параллельности и необходимости удовлетворения определенных временных ограничений, характеризуются тем свойством, что информация о внешних событиях в ПрО СТЗ поступает не в непосредственно пригодном для машинного использования виде, а формируется в результате программной обработки зрительных данных, представленных в форме цифровых изображений.
Для уточнения требований, предъявляемых к методам программирования СТЗ, в первой главе сначала кратко рассматриваются несколько примеров реализованных СТЗ реального времени. В частности, это СТЗ для определения взаимного расположения частей пантографов в движении; СТЗ для определения местоположения контактного провода железной дороги по высоте и в плане в процессе движения электроподвижного состава; СТЗ для контроля качества металлического порошка; СТЗ для контроля чистоты жидкости в емкостях на движущемся конвейере; СТЗ для слежения за процессом сближения и стыковки космического корабля с Международной космической станцией. У этих и других реализованных СТЗ уда-
ется выделить общие части, которые могут быть реализованы однотипно -в частности, это программные компоненты для сбора зрительных данных и компоненты для организации интерфейса пользователя. Уникальной и наиболее сложной в проектировании и реализации частью каждой из рассмотренных СТЗ является цикл реального времени и высокоуровневые алгоритмы обработки зрительных данных, учитывающие априорные сведения из предметной области задачи.
По результатам анализа ПрО разработанных прикладных СТЗ можно заключить, что методы их программирования должны обеспечивать решение как типичных проблем разработки ПрО, так и проблем, специфических для СТЗ реального времени.
Среди общих проблем разработки ПрО можно выделить следующие: необходимость быстрого прототипирования; повторное и многократное использование программных компонентов; сопровождаемость и удобочитаемость исходного текста. Эти проблемы в настоящее время еще не получили окончательного решения. В качестве общепринятого в настоящее время подхода к разработке ПрО, по опыту практического использования упрощающего решение перечисленных проблем, можно выделить объектно-ориентированный подход. Поэтому для разработки ПрО СТЗ с целью обеспечения дальнейшего сопровождения, модификации и повторного использования ПрО, в качестве базового предлагается применять объектно-ориентированный подход. Однако этот подход имеет общий характер и не является специализированным для разработки ПрО СТЗ. Для его специализации к разработке ПрО СТЗ необходим учет особенностей, характерных для этих систем. В качестве таких особенностей в результате анализа прикладных задач были выделены следующие:
1) Типичные операции в цикле реального времени. В ПрО СТЗ можно выделить цикл реального времени. В нем должно обеспечиваться получение данных от различных устройств, в первую очередь, от источника (или нескольких источников) зрительных данных, обработка этих данных и использование результатов обработки. Для ускорения разработки ПрО СТЗ целесообразно формирование заготовки такого цикла, оформленного в виде компонента, допускающего модификацию применительно к конкретной задаче.
2) Прогнозируемые точки роста ПрО СТЗ. В качестве наиболее вероятных вариантов изменения ПрО СТЗ можно выделить цикл реального времени и высокоуровневые алгоритмы обработки изображений.
3) Наличие повторно используемых компонентов в высокоуровневых алгоритмах обработки зрительных данных. Эти алгоритмы должны обеспечивать надежное получение информации о содержании наблюдаемых сцен по данным цифровых изображений. Для обеспечения функционирования в реальном времени в структуре этих алгоритмов учитываются свойства конкретной прикладной задачи. Разработку этих алгоритмов
можно упростить за счет использования низкоуровневых алгоритмов обработки, предназначенных для решения задач определенного класса (например, для обнаружения объектов с прямолинейными краями или для слежения за объектами, для которых известна модель движения, и
др-)-
4) Интерфейс пользователя должен обеспечивать взаимодействие оператора и СТЗ, в процессе которого оператору необходимо выводить сведения о текущем состоянии системы и при необходимости предоставлять средства для контроля хода обработки зрительных данных. В интерфейсе пользователя необходимо учитывать возможность работы с СТЗ как оператора, эксплуатирующего СТЗ в штатном режиме, так и разработчика (на этапе разработки ПрО СТЗ и на этапе опытной эксплуатации системы).
5) Требования к СТЗ в части содержания обработки зрительных данных обычно сложно точно выделить на этапе проектирования СТЗ. В связи с этим требуется предусмотреть средства отладки и тестирования ПрО СТЗ, позволяющие, кроме устранения ошибок ПрО, выполнять уточнение требований к алгоритмам обработки изображений на этапе разработки СТЗ и на этапе опытной эксплуатации СТЗ.
6) Предполагаемый срок разработки типичной СТЗ лежит в пределах 6-10 месяцев при разработке 1-3 программистами.
С учетом перечисленных особенностей, предлагаемые методы программирования ПрО СТЗ основаны на повторном использовании архитектуры ПрО СТЗ, реализации этой архитектуры в форме компонентного каркаса, и использовании способов проектирования высокоуровневых алгоритмов обработки зрительных данных с применением повторно используемых компонентов, представляющих низкоуровневые алгоритмы обработки.
Для ускорения разработки ПрО СТЗ могут использоваться готовые программные компоненты для ввода и обработки зрительных данных. С целью обеспечения независимости ПрО СТЗ от закрытых внешних компонентов предусматривается их опосредованное использование с применением специально оформленного слоя программных абстракций.
Применение объектно-ориентированного подхода для разработки ПрО СТЗ выполняется в рамках итеративного проектирования и реализации. Каждая итерация разработки сопровождается построением рабочей версии ПрО СТЗ. Спецификой ПрО СТЗ является то, что переход к новой итерации разработки происходит не только в связи с уточнением и расширением сформулированных человеком требований, но и в связи с обнаружением новых типов изображений, не обрабатываемых на текущей итерации. Для документирования проектных решений предлагается использовать подмножество языка моделирования иМЬ: диаграммы классов, со-
стояний и последовательностей. При использовании итеративных схем разработки применительно к ПрО СТЗ можно перечислить следующие особенности:
• изменчивость требований к ПрО СТЗ и сложность их формализации;
• сложность планирования сроков разработки алгоритмов обработки зрительных данных (в связи с чем затруднительно применение схем с короткими итерациями);
• длительный срок опытной эксплуатации (например, при разработке промышленных зрительных систем обычно более 50% затрат приходится на настройку системы на этапе опытной эксплуатации).
Критичным этапом при разработке ПрО СТЗ является выделение классов ПрО. Выделение классов выполняется с учетом требований к СТЗ, которые могут быть заданы в форме сценариев работы оператора с системой. Описание сценариев также может дополняться описанием взаимодействия программных и аппаратных компонентов СТЗ. Спецификой ПрО СТЗ является дополнение сценариев, связанных с обработкой зрительных данных, представительными тестовыми данными. Сценарии этой категории используются при верификации ПрО для установления корректности его функционирования согласно сформулированным требованиям. Выделяемые в ПрО СТЗ классы относятся к трем основным категориям: классы аналитической модели (классы предметной области), классы реализации и классы проектирования. Классы проектирования образуют классы, которые включаются в состав компонентного каркаса ПрО СТЗ. В зависимости от решаемой задачи, перечисленные категории допускают дальнейшее разделение.
Одним из механизмов документирования и повторного использования архитектурных принципов разработки ПрО являются шаблоны проектирования. Шаблон проектирования представляет собой описание взаимодействия объектов и классов, адаптированных для решения типичной задачи проектирования в конкретном контексте. Применительно к ПрО СТЗ был сформирован ряд шаблонов проектирования: «Монокулярная СТЗ», «Поле зрения», «Временной прогноз», «Отложенное конструирование», «Верификация гипотез распознавания» и др. Предлагаемые шаблоны проектирования относятся к трем категориям: проектирование архитектуры ПрО СТЗ; обработка зрительных данных и отладка и тестирование.
Среди шаблонов проектирования ПрО СТЗ особое место занимает каркас приложения, представляющий собой расширение шаблона проектирования «Монокулярная СТЗ». Каркас приложения - это крупномасштабный архитектурный шаблон, предполагающий расширение для разработки приложений в конкретной прикладной области. При увеличении размеров и сложности программных систем, проектирование и специфика-
ция общей структуры системы становится не менее значимым вопросом, чем выбор алгоритмов и структур данных для организации вычислений. Структурные вопросы включают в себя организацию системы как совокупности компонентов; глобальные управляющие структуры; протоколы связи, синхронизации и доступа к данным; назначение функциональных обязанностей проектным элементам; вопросы масштабирования и производительности; прогнозирование развития программной системы; выбор среди альтернатив проектирования. Все перечисленные вопросы, относящиеся к уровню проектирования программной архитектуры, в рассматриваемых СТЗ могут быть решены унифицированным образом, и реализация этих архитектурных аспектов предусматривается в каркасе ПрО СТЗ.
Выбор языка программирования для реализации ПрО СТЗ является важным вопросом, требующим рассмотрения с точки зрения обеспечения эффективности, надежности, доступности инструментальных средств и обеспечения отладки. В качестве языка программирования для реализации ПрО СТЗ был выбран язык Си++. Этот выбор был сделан с учетом наличия стандарта языка, доступностью средств разработки на ПК общего назначения, и поддержки средств объектно-ориентированного программирования в сочетании со строгой типизацией. Хотя Си++ непосредственно не предназначен для программирования в реальном времени (например, в языке не содержится средств параллельного программирования), но он может быть расширен для этой цели путем использования в среде соответствующих операционных систем и применения дополнительных библиотек.
В качестве базовой операционной системы для ПрО СТЗ на ПК общего назначения были выбраны ОС семейства MS Windows NT. Эти ОС обеспечивают многозадачность с диспетчеризацией потоков; в них имеется подсистема ввода зрительных данных DirectShow, для которой доступно большое количество устройств ввода; а также ПрО промежуточного уровня для интеграции ПрО СТЗ с прикладными программами для представления, обработки и долговременного хранения результатов, полученных в ПрО СТЗ. Однако ОС семейства Windows NT без использования дополнительных подсистем реального времени не являются ОС реального времени, и в них возможны задержки планирования потоков и обработки прерываний порядка десятков миллисекунд. Поэтому при разработке архитектуры ПрО СТЗ предусматривалась возможность переноса ПрО в среду других ОС. Для учета этого факта ПрО СТЗ построено на основе использования потоков, которые в качестве диспетчеризуемой минимальной единицы используются в большинстве современных POSIX-совместимых операционных систем.
Вторая глава содержит описание предлагаемой архитектуры ПрО СТЗ реального времени и компонентного каркаса, реализующего эту архитектуру в среде ОС семейства MS Windows NT/XP.
Каркас ПрО СТЗ содержит программные компоненты, общие для рассматриваемых прикладных СТЗ. Этот каркас используется в качестве заготовки для разработки новых СТЗ и дополняется компонентами, спроектированными применительно к решению конкретной прикладной задачи. Каркас ПрО СТЗ представляет собой программу, обеспечивающую ввод зрительных данных от различных источников и передачу этих данных на программную обработку, которая непосредственно в каркасе не реализована. В каркасе предусмотрены операции, связанные с организацией ввода и обработки зрительных данных, а также с представлением этих данных, промежуточных и окончательных результатов их обработки. Каркас позволяет выполнять обработку цветных и полутоновых изображений в составе одной СТЗ, выполнять обработку в нескольких полях зрения и разрабатывать распределенные СТЗ.
Применение каркаса ПрО СТЗ при решении однотипных задач обработки зрительных данных направлено на повышение степени повторного использования (как на уровне проектирования, так и на уровне реализации), упрощения модификации ПрО, сокращения времени разработки и усилий в области поддержки разработанного ПрО.
В каркасе ПрО определены набор абстрактных классов, общая для рассматриваемых СТЗ реального времени программная архитектура, общее поведение, структуры данных и интерфейс пользователя. Одним из центральных компонентов, входящих в состав каркаса ПрО СТЗ, является класс «Изображение». Объекты этого класса используются во всех подсистемах ПрО СТЗ для работы со зрительными данными в форме цифровых изображений.
В каркасе предусмотрены не только наборы классов, но и реализована определенная модель взаимодействия объектов этих классов. Эта модель реализована так, что в ней предусмотрены определенные места для добавления новых компонентов - «точки роста» программной системы. Компонентами, входящими в состав каркаса ПрО СТЗ, являются объекты, классы и подсистемы ПрО. Основными и наиболее крупными компонентами каркаса ПрО являются подсистемы, которым соответствуют параллельные исполняемые потоки.
С учетом опыта разработки ПрО прикладных СТЗ в состав каркаса были включены классы нескольких категорий, которые используются для организации трех основных параллельных подсистем ПрО СТЗ. К категориям классов ПрО СТЗ относятся классы архитектуры ПрО СТЗ, классы интерфейса пользователя, классы для представления алгоритмов обработки изображений и классы для работы с устройствами ввода зрительных данных. Совокупности взаимодействующих классов этих категорий образуют основные подсистемы ПрО СТЗ: интерфейс пользователя, ввод и обработка зрительных данных. Взаимодействие этих подсистем определяется архитектурой ПрО СТЗ и это взаимодействие также реализовано в каркасе.
Таким образом каркас ПрО СТЗ включает в себя реализованные типичные подсистемы ПрО СТЗ, содержащие как окончательно реализованные объекты классов, так и объекты, которые должны быть доработаны с учетом требований конкретной прикладной задачи.
Важной архитектурной особенностью каркаса ПрО СТЗ является реализация двух режимов функционирования ПрО СТЗ - автоматического режима и режима настройки. Для представления режимов функционирования сформированы специальные классы. Они содержат исполняемые потоки, реализующие цикл реального времени ПрО СТЗ в каждом из режимов работы. Объекты-режимы выполняют координирующую роль по отношению к подсистемам ПрО СТЗ. Действия по координации этих подсистем производятся в составе цикла реального времени. Инкапсуляция двух вариантов цикла реального времени в объектах-режимах является проектным решением, направленным на обеспечение работы СТЗ в реальном времени. При проектировании конкретной СТЗ выполняется анализ временных затрат в пределах объектов-режимов и при необходимости производится статическая или динамическая настройка приоритета потока в составе объекта-режима.
Подсистема интерфейса пользователя
Объект Режим настпойки'
Копировать
Получить изображение ^
Обработать изображение
*>
Отобразить >еэультаты
Выключить
Подсистема обработки изображений
Выполнить р
Открыть буфер
Подсистема ввода зрительных данных
грацию клиента
съеме кэдрз
Отменить Р'- 'истрацию клиента ,
Рис. 1. Диаграмма последовательностей действий объектов и подсистем ПрО СТЗ в режиме настройки.
В режиме настройки оператор должен иметь возможность проверки корректности функционирования аппаратной части СТЗ, проверки хода
обработки изображений на тестовых изображениях или на текущих изображениях полей зрения, настройки параметров обработки изображений, а также просмотра результатов обработки отдельных изображений и данных, полученных в автоматическом режиме. Основное назначение режима настройки заключается в том, чтобы оператор мог выполнить настройку СТЗ для учета изменений, которые могли произойти во внешней среде и которые не могут быть учтены автоматически. Например, это может быть настройка областей первоначального обнаружения объектов. Режим настройки также используется в процессе разработки СТЗ в отладочных целях. Для этого в каркасе ПрО СТЗ предусмотрены возможности просмотра программистом отладочных результатов, в частности, трассировочного журнала с информацией о ходе обработки изображений. В режиме настройки ввод изображений и функционирование системы контролируется оператором. Взаимодействие подсистем ПрО СТЗ в режиме настройки показано на рис. 1.
В автоматическом режиме ПрО СТЗ обрабатывает зрительные данные в реальном времени в соответствии с логикой цикла реального времени СТЗ. Поступающие изображения передаются на обработку объектам, инкапсулирующим алгоритмы обработки зрительных данных. Результаты сохраняются или немедленно используются, например, для управления исполнительными устройствами. Возможности оператора по управлению системой ограничены с целью обеспечения работы в реальном времени. Функционирование системы определяется структурой цикла реального времени ПрО СТЗ, инкапсулированного в объекте «Автоматический режим». Масштаб реального времени в большинстве рассматриваемых СТЗ определяется кадровой частотой источника зрительных данных. Взаимодействие подсистем ПрО СТЗ в автоматическом режиме показано на рис. 2.
Особенностью ПрО СТЗ является то, что на этапе разработки алгоритмов обработки зрительных данных разработчик должен иметь возможность контролировать корректность обработки (посредством анализа обнаруживаемых на изображениях признаков и искомых образов объектов интереса), а также контролировать соблюдение временных ограничений реального времени. Каркас ПрО СТЗ спроектирован с учетом этих требований разработки ПрО СТЗ - упрощение контроля процесса обработки зрительных данных и контроля временных ограничений. Контроль хода обработки зрительных данных упрощается за счет того, в режиме настройки каркас фактически представляет наращиваемую среду разработки ПрО СТЗ. Контроль временных ограничений упрощается благодаря применению фиксированной архитектуры ПрО СТЗ с известными временными накладными расходами, привносимыми собственно архитектурными решениями, например, операциями копирования зрительных данных при использовании буфера кадра.
Рис. 2. Диаграмма последовательностей действий объектов и подсистем ПрО СТЗ в автоматическом режиме.
Графический интерфейс пользователя (ГИП) в ПрО СТЗ выполняет операции как для организации взаимодействия с оператором СТЗ, так и с разработчиком в целях отладки ПрО СТЗ. Взаимодействие подсистем реального времени (ввода и обработки зрительных данных) с подсистемой ГИП основано на использовании отключаемых буферов кадров, соответствующих каждому полю зрения СТЗ. В режиме настройки ГИП позволяет отобразить параметры СТЗ, которые удается представить в виде визуальных объектов в окне поля зрения. В автоматическом режиме для обработки зрительных данных в реальном времени временные затраты на операции ГИП сокращаются за счет использования синхронных операций отображения по требованию подсистем реального времени и запрещения длительных операций, доступных в режиме настройки.
Основу подсистемы ввода зрительных данных в каркасе ПрО СТЗ составляют интерфейсы и классы для представления источников зрительных данных. Источники зрительных данных в рассматриваемых СТЗ делятся на два типа: источники реального времени, которым сопоставлен некоторый зрительный датчик (например, это устройства ввода зрительных данных телевизионного стандарта), и источники квазиреального времени, не имеющие фиксированного временного масштаба и не сопоставленные непосредственно какому-либо зрительному датчику (например, это графические файлы и файлы видеопоследовательностей). В составе каркаса ПрО
СТЗ источники обоих типов имеют унифицированное программное представление и являются взаимозаменяемыми.
В ПрО СТЗ были выделены алгоритмы обработки зрительных данных двух типов - низкоуровневые и высокоуровневые алгоритмы. К низкоуровневым алгоритмам были отнесены алгоритмы, которые проектируются и выполняются без учета априорных сведений относительно структуры наблюдаемых сцен. Высокоуровневые алгоритмы проектируются и реализуются применительно к конкретной прикладной задаче, решаемой с помощью СТЗ. Низкоуровневые алгоритмы оформляются в виде функций или классов-оболочек. Для представления высокоуровневых алгоритмов в каркасе ПрО СТЗ сформирован базовый класс, от которого в прикладных СТЗ наследуются классы, выполняющие обработку зрительных данных для решаемой прикладной задачи.
Каркас ПрО СТЗ допускает применение в СТЗ для обработки цветных изображений. Для этой цели в каркасе ПрО СТЗ классы основных подсистем, в интерфейсе которых есть функции-члены с параметрами класса «Изображение», реализованы в двух вариантах — в расчете на обработку полутоновых и цветных изображений.
Физически каркас ПрО СТЗ реализован в виде совокупности файлов исходного текста на языке программирования Си++, которые копируются для создания нового проекта. Каркас оформлен в виде совокупности классов. Часть классов используется в неизменном виде, часть переопределяется или заменяется применительно к решению конкретной задачи. При использовании каркаса в качестве основных этапов разработки ПрО СТЗ можно перечислить следующие:
1) сбор представительных образцов зрительных данных;
2) проектирование высокоуровневого алгоритма обработки зрительных данных и оформление этого алгоритма в виде объекта, который может быть включен в состав каркаса ПрО СТЗ;
3) проектирование цикла реального времени ПрО СТЗ и оформление этого цикла в виде объекта, подключаемого к каркасу;
4) тестирование ПрО СТЗ на представительных образцах зрительных данных;
5) проектирование интерфейса пользователя.
Перечисленные этапы разработки выполняются с использованием итеративного подхода к разработке ПрО. Их последовательность не является жестко фиксированной в порядке приведенного перечисления.
В каркасе ПрО СТЗ с целью упрощения переноса ПрО СТЗ на другие платформы были выделены платформно-зависимые и платформно-независимые компоненты. К платформно-зависимым относятся компоненты, связанные с работой с аппаратными устройствами и взаимодействием с операционной системой. К платформно-независимым относятся компоненты, обеспечивающие обработку зрительных данных. Интерфейс между
платформно-зависимыми и платформно-независимыми компонентами построен на основе использования класса «Изображение».
В третьей главе описываются методы проектирования высокоуровневых алгоритмов обработки зрительных данных для СТЗ реального времени, в которых объекты интереса или их части на обрабатываемых изображениях удается представить с помощью структурных геометрических моделей, в качестве примитивных элементов содержащих признаки типа «ступенчатый край».
Среди задач автоматизированной обработки зрительных данных в реальном времени задачи слежения за движущимися объектами занимают одно из центральных мест. Цель слежения обычно заключается в определении траектории движущихся объектов в окружающем пространстве и снабжении этой информацией потребителей: людей-операторов или исполнительные механизмы различных устройств. Для достижения поставленной цели в СТЗ, прежде всего, решается задача определения траектории образов прослеживаемых объектов на изображении. Автоматическая обработка зрительных данных в процессе слежения за движущимися объектами в реальном времени может осложняться несколькими факторами: образ объекта на изображении с течением времени может меняться вследствие изменения относительного расположения объекта и зрительного датчика; образ объекта на изображении может пропадать при перекрытии образами других объектов или при выходе за пределы поля зрения датчика; модель движения объекта может быть априорно неизвестна. Указанные причины затрудняют разработку СТЗ для слежения за движущимися объектами и, в особенности, таких систем, которые бы допускали перенастройку для слежения за движущимися объектами в различных прикладных задачах без необходимости разработки нового алгоритма обработки зрительных данных для обнаружения новых разновидностей объектов.
Предлагаемые методы проектирования высокоуровневых алгоритмов обработки предназначены для использования в СТЗ для слежения за движущимися объектами в реальном времени, в таком классе задач:
• движущиеся объекты постоянно видны в поле зрения;
• движущиеся объекты наблюдаются в одном и том же ракурсе;
• характер движения объектов априорно известен.
Примерами подобных прикладных СТЗ, реализованных в процессе выполнения данной работы, являются СТЗ для определения местоположения контактного провода железной дороги по высоте и в плане в процессе движения электроподвижного состава, СТЗ для определения взаимного расположения частей пантографов в движении и СТЗ для определения колебаний контактного провода железной дороги.
В СТЗ для определения местоположения контактного провода высота провода относительно оси пути может быть определена посредством
определения высоты пантографа (рис. 3,4). Для вычисления значений высоты пантографа выполняется поиск образа планки токоприемника на изображении и учитываются априорно известные параметры относительного расположения зрительного датчика (телевизионной камеры) и пантографа. Данные о высоте пантографа могут использоваться для оценки состояния контактной сети железной дороги и для экспериментальной оценки характеристик пантографа. Поэтому автоматизация зрительного анализа поведения пантографов электроподвижного состава является важной задачей как для верификации моделей новых конструкций пантографов, так и для инспекционного контроля состояния контактной сети в процессе ее штатной эксплуатации.
Образ пантографа в течение последовательности изображений движется преимущественно в вертикальном направлении (при расположении поля зрения, показанном на рис. 3,4). Телевизионная камера может быть установлена не на локомотиве, а на следующем за ним вагоне-лаборатории. В таком случае образ пантографа на последовательности изображений может смещаться и в горизонтальном направлении (рис. 3). Величина горизонтального смещения увеличивается при прохождении криволинейных участков железнодорожного пути.
Рис. 3. Пантограф электровоза ВЛ-80. (Изображение получено в процессе инспекционного объезда передвижной лаборатории комплексной диагностики Забайкальской железной дороги).
Рис. 4. Пантограф скоростного пригородного электропоезда. (Изображение получено в процессе испытательных объездов).
Образы пантографов различных конструкций на изображениях отличаются друг от друга (рис. 3,4), но в области токосъемной каретки имеют похожую структуру. Обычно на изображении в области верхней части пантографа присутствуют один или два фрагмента, которые можно приближенно считать прямоугольными. Яркость пикселей в этих фрагментах существенно отличается от яркости пикселов фона. Для вычисления высоты пантографа необходимо определить положение верхней стороны верх-
ней прямоугольной области образа пантографа - положение образа верхней планки пантографа.
В подобных СТЗ при получении данных для оценки динамических характеристик пантографа может дополнительно предусматриваться определение относительного расположения и других частей пантографа (рис. 5). По каждому из определяемых параметров СТЗ должна формировать последовательность значений величин, которым сопоставлена временная метка и/или местоположение полученных значений на железнодорожном перегоне. На рис. 5 представлена схема, иллюстрирующая параметры относительного расположения частей пантографа TGV (французские железные дороги).
Рис. 5. Схема расположения определяемых параметров при слежении за движением паптографа электровоза TGV. Цифрами отмечены прослеживаемые части пантографа (1-4) и базовый уровень (5), относительно которого определяется высота расположения частей пантографа. Кроме значений высоты (эти параметры показаны на схеме стрелками), СТЗ определяет угол наклона верхней планки (1) относительно нижней планки (2) и базового уровня (5).
В приведенных примерах и в других подобных задачах, когда образ прослеживаемого объекта удается представить в виде совокупности известных характерных признаков с априорно известными пространственными отношениями, для слежения за объектом в реальном времени предлагается использовать унифицированные программные конструкции, обеспечивающие обнаружение соответствующих моделей образов на изображениях. Характерные признаки, образующие эти модели, могут быть однотипными (например, прямолинейные края) или принадлежать ограниченному множеству признаков. При использовании структурного метода построения модели образа искомого объекта характерные признаки в модели связываются пространственными отношениями, задающими относительное расположение этих признаков на изображении. Такое построение программного обеспечения позволяет не только повысить эффективность
процесса разработки СТЗ для конкретной задачи, но и уменьшить время обработки анализируемых изображений.
В рассматриваемых СТЗ требуются методы обнаружения объектов, которые были бы пригодны для функционирования в реальном времени, и работоспособны на сценах с неуправляемым освещением (при условии соблюдения перечисленных выше ограничений). В связи с этим, требуется рассмотрение следующих задач, в каждой из которых необходимо учитывать направленность на функционирование ПрО СТЗ в реальном времени:
1) представление модели объекта интереса;
2) организация обнаружения образа объекта интереса на изображении;
3) способы использования априорной информации.
Совместное решение перечисленных задач в рассматриваемых СТЗ обеспечивается посредством специальной организации двух высокоуровневых алгоритмов обработки. Первый предназначается для первоначального обнаружения объектов интереса, а второй — для обнаружения объектов с учетом результатов обработки предыдущих изображений (для сопровождения образа объекта интереса). В структуре обоих высокоуровневых алгоритмов учитывается априорная информация об обрабатываемых сценах и структурные геометрические модели объектов интереса.
В соответствии с предлагаемым подходом, структурная геометрическая модель (СГМ) рассматривается как средство для управления вычислительным процессом обнаружения объекта интереса. СГМ используется на этапе проектирования высокоуровневого алгоритма обработки зрительных данных и в процессе его выполнения. Этот алгоритм, реализующий процедуру обнаружения объекта интереса, представляет собой алгоритм построения подграфа графа сцены в соответствии с априорной информацией из прикладной области задачи, структурной геометрической моделью образа объекта интереса и информацией о результатах обработки предыдущих изображений (на этапе сопровождения объекта интереса). Эти источники информации позволяют ограничить глубину поиска на графе описания сцены. Сам граф в ПрО СТЗ непосредственно не формируется. Предполагается, что он задан неявно в форме входного цифрового изображения. На изображении присутствуют характерные признаки, которые могут быть согласно с используемой СГМ объединены в признаки более высокого уровня, интерпретируемые применительно к решаемой прикладной задаче.
Метод проектирования высокоуровневых алгоритмов обработки изображений на основе обнаружения объектов с использованием структурных геометрических моделей показал свою высокую эффективность на примере решения ряда прикладных задач. В реализованных СТЗ образы объектов описывались с помощью структурных моделей, состоящих из элементов типа «полигональная область». Стороны полигональных облас-
тей на изображении формируют характерные признаки типа «ступенчатый край». Модель может быть задана либо в явном виде, с использованием классов для представления модели и ее частей, либо неявно в форме последовательности операций, выполняемых в составе высокоуровневого алгоритма обработки.
Обеспечение обработки в реальном времени при поиске структурных геометрических моделей производится за счет следующих приемов:
1) Частичная обработка моделей. Для обнаружения модели достаточно выделить на изображении не все стороны полигональных областей, а только заданное количество, считающееся в конкретной задаче достаточным для достоверного обнаружения объекта интереса. Для каждой из обнаруживаемых сторон на изображении выполняется поиск ограниченного количества краевых признаков (обычно 2-3), распределенных по длине стороны, а не всех контурных точек, образующих сторону полигональной области.
2) Для обнаружения объектов интереса в условиях возможного перекрытия нескольких полигональных областей (в частности, при появлении образов, перекрывающих образ объекта интереса), в описание геометрической модели добавляются приоритеты поиска. Эти приоритеты указывают необходимость и порядок обнаружения сторон полигональных областей, так что для принятия гипотезы о наличии области достаточно обнаружение сторон с одинаковыми приоритетами. Значение приоритета характеризует достоверность обнаружения области в результате обнаружения заданного подмножества сторон.
3) Применение поиска методом «сверху-вниз», если на предыдущих изображениях объекты интереса уже были обнаружены. На этапе первоначального обнаружения и применении поиска методом «снизу-вверх» для сокращения времени поиска возможно использование априорной информации о примерном расположении объекта, которая доступна в случае, если в данной задаче поле зрения было организовано специальным образом.
Опыт разработки прикладных СТЗ с применением алгоритмов поиска образов объектов с использованием СГМ продемонстрировал возможность обеспечения обработки в реальном времени зрительных данных, представленных в виде видеосигнала телевизионного стандарта, на базе общедоступных ПК. К этим СТЗ относятся: СТЗ для определения взаимного расположения частей пантографов в движении, СТЗ для определения местоположения контактного провода железной дороги в процессе движения электровоза, СТЗ для определения колебаний контактного провода железной дороги, СТЗ для определения силы взаимодействия токоприемника локомотива с контактным проводом. Автоматизация обработки зрительных данных в перечисленных задачах позволяет получить информацию о
движущихся объектах, которую сложно получить другими способами, например, с помощью контактных измерительных средств или ручного выполнения измерений человеком.
Применение описанного метода проектирования высокоуровневых алгоритмов позволяет не только обеспечить обработку изображений в реальном времени, но и упростить решение прикладных задач благодаря возможности быстрого макетирования высокоуровневого алгоритма обработки зрительных данных для прикладных задач инспекционного контроля путем модификации базового алгоритма поиска объектов на основе использования новой геометрической модели образа объекта.
В четвертой главе рассматриваются методы проектирования и реализации высокоуровневых алгоритмов обработки зрительных данных для СТЗ реального времени, в которых образы объектов интереса на обрабатываемых изображениях имеют непостоянную структуру.
Изменения формы и структуры образов объектов интереса могут быть связаны как с изменением геометрических характеристик наблюдаемого объекта, например, вследствие относительного движения его частей, так и с изменением относительной ориентации или расстояния между объектом и зрительным датчиком. Эти особенности необходимо учитывать при разработке ПрО СТЗ, чтобы обеспечивать надежное обнаружение образов объектов интереса в реальном времени. Для этой цели может использоваться априорная информация, характеризующая возможные изменения формы и структуры образов объектов интереса на обрабатываемых изображениях. Методы проектирования высокоуровневых алгоритмов обработки зрительных данных, основанные на использовании априорной информации, были успешно применены для решения нескольких прикладных задач, в частности, были разработаны и применены на практике СТЗ для слежения за процессом сближения и стыковки космического корабля (КК) с Международной космической станцией (МКС), СТЗ для слежения за движущейся малоразмерной целью, СТЗ для слежения за низколетящими целями на расстояниях прямой видимости.
Для слежения за образами движущихся объектов (целями) в ПрО СТЗ обычно используются два основных источника информации: модель движения цели и модель ее образа на изображении. Модель движения может быть получена на основе априорной информации, например, посредством анализа движения образцов целей на тестовых видеопоследовательностях. При формировании модели образа цели обычно совместно учитываются особенности относительного расположения зрительного датчика и наблюдаемых целей, а также геометрические свойства объектов-целей. Затем в процессе слежения среди информации, извлеченной из зрительных данных, выполняется поиск модели, совместимой с известной системе
слежения моделью движения и моделью образа цели в текущий момент времени.
В качестве основного примера, на котором демонстрируются описываемые методы программирования, выбрана СТЗ для автоматизации визуального мониторинга процессов сближения и стыковки КК и МКС. Сближение и стыковка являются одними из наиболее сложных и ответственных этапов в управлении полетами космических аппаратов. Рассматриваемая СТЗ была спроектирована и разработана для использования в качестве дополнительного средства наблюдения за сближением и стыковкой беспилотных кораблей «Прогресс» с Международной космической станцией. СТЗ обрабатывает полутоновые изображения, поступающие с ТВ-камеры, установленной на КК «Прогресс». Данные обработки изображений, полученные с помощью этой СТЗ, используются в качестве исходных данных для расчета параметров относительного движения космического корабля и станции (дальность, скорость, угловые отклонения). Все результаты в масштабе реального времени предоставляются операторам, контролирующим процесс сближения и стыковки (рис. 6).
Рис. 6. Основное окно СТЗ для слежения за процессом сближения и стыковки космического корабля и Международной космической станции.
Образ МКС на разных расстояниях имеет различную структуру (рис. 7). Например, на расстояниях порядка 100 м хорошо заметны солнечные батареи и внешний контур станции. На расстояниях менее 45 м становится хорошо виден стыковочный узел, а на расстояниях менее 30 м становится видна крестообразная стыковочная мишень (стыковка выполняется
таким образом, что мишень на изображении расположена ниже стыковочного узла).
Рис. 7. Примеры изображений, обрабатываемых СТЗ для слежения за процессом сближения и стыковки космического корабля с Международной космической станцией, (а) Расстояние между КК и МКС составляет 106 м. (б) Расстояние между КК и МКС составляет 19 м.
Структура образов объектов интереса служит критерием классификации входных изображений. Классом изображений будем называть совокупность изображений, на которых образы объекта интереса описываются одним и тем же набором характерных признаков.
В СТЗ для слежения за сближением и стыковкой КК и МКС в результате анализа образцов изображений в интервале прослеживаемых расстояний (от 100 до 0 м) были выделены четыре класса изображений, на которых можно указать однотипные наборы признаков для обнаружения образа станции и ее частей. Эти классы изображений соответствуют четырем различным фрагментам прослеживаемого интервала дальностей.
В процессе разработки рассматриваемых СТЗ проектирование высокоуровневого алгоритма обработки изображений выполняется в виде композиции алгоритмов, выполняющих обработку изображений различных классов. Последовательность операций по обработке текущего изображения показана на рис. 8. На все операции «обработать изображение» накладываются временные ограничения, зависящие от масштаба реального времени конкретной СТЗ.
(а)
(б)
Рис. 8. Диаграмма взаимодействия алгоритмов обработки изображений в процессе обработки текущего изображения з.тд (1:). Вызов на его обработку Ргс(атд(1:)) перенаправляется согласно классу изображения. Эти действия выполняются в составе высокоу ровневого алгоритма обработки изображений СТЗ.
В СТЗ для слежения за процессом сближения и стыковки КК и МКС высокоуровневый алгоритм обработки зрительных данных должен обеспечивать обнаружение объектов интереса с учетом возможности запуска автоматической обработки в произвольный момент времени в процессе сближения КК и МКС. Для этого в каждом из четырех алгоритмов для различных классов изображений (интервалов расстояний) реализованы собственные варианты поиска методами «снизу-вверх» и «сверху-вниз». Таким образом, эти алгоритмы могут применяться как для первоначального обнаружения, так и для прослеживания объекта интереса. В зависимости от интервала расстояний, на который рассчитан алгоритм обработки, в нем производится обнаружение образов различных частей станции:
• Изображение класса 1 (дальность от 100 м до 45 м). Выполняется поиск поперечного сечения станции на основе обнаружения его кругового контура.
• Изображение класса 2 (дальность от 45 м до 25 м). Выполняется поиск поперечного сечения станции на основе обнаружения образа стыковочного узла.
• Изображение класса 3 (дальность от 25 м до 15 м). Производится поиск мишени.
• Изображение класса 4 (дальность от 15м до Ом). Выполняется поиск мишени: сначала обнаруживается перекрестие, затем метки мишени.
Под согласованным применением алгоритмов обработки будем понимать такой способ обработки поступающих изображений видеопоследовательности, при котором обеспечивается выбор алгоритма обработки, со-
ответствующего классу текущего обрабатываемого изображения. Т.е. вариант применяемого алгоритма обработки зрительных данных должен быть согласован с текущим состоянием объекта интереса. Данные о текущем состоянии объекта интереса в ПрО СТЗ могут быть доступны из двух информационных источников:
1) Результаты обработки предыдущих изображений видеопоследовательности.
2) Модель движения объекта интереса.
В зависимости от количества обработанных изображений, в ПрО СТЗ могут быть доступны либо первый, либо оба информационных источника, либо ни одного из них. Эти состояния можно рассмотреть в качестве основных возможных состояний ПрО СТЗ, в каждом из которых планирование действий в цикле реального времени должно приводить к выбору алгоритма обработки зрительных данных, обеспечивающего успешную обработку текущего изображения.
Для выбора текущего алгоритма для обработки поступающих изображений в ПрО СТЗ добавлен объект «Селектор класса текущего изображения». В случае, если сформирован прогноз движения объекта интереса по результатам обработки предыдущих изображений, выбор алгоритма производится на основе этого прогноза. Иначе, при отсутствии сведений о текущем положении объекта интереса, происходит перебор алгоритмов до нахождения алгоритма, выполняющего устойчивое обнаружение (т.е. подтверждающееся посредством обработки последовательности изображений заданной длительности). Для обеспечения корректной работы переключателя алгоритмов обработки основным требованием, предъявляемым к этим алгоритмам, является отсутствие ложных срабатываний на изображениях, принадлежащих интервалам дальностей, соответствующих другим алгоритмам.
Для настройки параметров низкоуровневых алгоритмов обработки зрительных данных в ПрО СТЗ применяется шаблон «Адаптивные параметры обработки». Он построен по аналогии с шаблоном проектирования «Прогнозирование местоположения объектов», согласно которому в процессе обработки последовательности изображений длительность обработки можно уменьшить и упростить выполняемые операции за счет использования априорной информации или результатов обработки предыдущих изображений для вычисления текущего положения объекта интереса. Шаблон «Адаптивные параметры обработки» предполагает вычисление параметров алгоритмов обработки с учетом достоверности сведений о расположении объектов интереса на обрабатываемом изображении. Если доступен достоверный прогноз положения объекта, то чувствительность алгоритмов обработки может быть увеличена, а количество данных, требуемых для подтверждения обнаружения объекта — уменьшено.
Описанные подходы иллюстрируются эффективным применением в различных практических задачах.
В СТЗ для слежения' за низколетящими целями выделение классов изображений выполнено на основе разбиения допустимого интервала расстояний между зрительным датчиком и объектом слежения. В каждом из трех выделенных классов при обнаружении кандидатов на цель и сопровождении выделенной цели используются собственные наборы ограничений на изменения формы и вид траектории цели.
В СТЗ для слежения за движущейся малоразмерной целью классы изображений были выделены на основе анализа допустимых траекторий движения образа объекта интереса — пятна лазерного целеуказателя. В зависимости от класса траектории применяются различные способы построения траектории движения образа цели и ее сопровождения на последовательности изображений. По мере накопления данных о кандидатах на цель в ПрО СТЗ производится верификация класса обрабатываемых изображений.
В заключении сформулированы основные результаты диссертации.
ПОЛОЖЕНИЯ, ВЫНОСИМЫЕ НА ЗАЩИТУ
1) Архитектура ПрО СТЗ реального времени для обработки полутоновых и цветных изображений с возможностью использования нескольких полей зрения.
2) Схема компонентной классификации и проектирования объектов ПрО СТЗ, основанная на выделении классов для представления понятий, относящихся к подсистемам ПрО СТЗ.
3) Каркас ПрО СТЗ реального времени для многозадачных операционных систем семейства Windows NT/XP, предназначенный для использования в широком круге прикладных и научных задач.
4) Организация алгоритмов обработки последовательностей изображений с использованием комбинированных методов распознавания объектов для первоначального обнаружения и для прослеживания объектов.
5) Структура алгоритмов обработки зрительных данных для обнаружения объектов с образами изменяющейся структуры на основе иерархического разделения высокоуровневого алгоритма обработки зрительных данных СТЗ на алгоритмы, соответствующие различным классам изображений.
6) СТЗ для решения прикладных и научных задач обработки зрительных данных в реальном времени. Разработанный каркас и повторно используемые компоненты ПрО СТЗ были использованы для разработки следующих СТЗ реального времени: СТЗ для определения взаимного расположения частей пантографов в движении; СТЗ для определения ме-
стоположения контактного провода железной дороги по высоте и в плане в процессе движения электроподвижного состава; СТЗ для определения колебаний контактного провода железной дороги; СТЗ для обнаружения дефектов верхнего строения железнодорожного пути; СТЗ для определения силы взаимодействия токоприемника локомотива с контактным проводом; СТЗ для контроля качества металлического порошка в порошковой металлургии; СТЗ для контроля чистоты жидкости в емкостях на движущемся конвейере; СТЗ для слежения за низколетя-шими целями на расстояниях прямой видимости; СТЗ в составе системы "глаз-рука", выполняющей захват подвижного объекта; СТЗ в составе системы "глаз-рука", формирующей траекторию объекта; СТЗ для слежения за движущейся малоразмерной целью для применения в системах визуализации бесконтактных измерений; СТЗ для слежения за процессом сближения и стыковки космического корабля с Международной космической станцией.
ПЕЧАТНЫЕ РАБОТЫ ПО ТЕМЕ ДИССЕРТАЦИИ
1. Соколов С.М., Богуславский А.А. Графический интеллектуальный интерфейс для СТЗ, функционирующих в супервизорном и автономном режимах. // Материалы 2-й Всероссийской с участием стран СНГ конференции "Распознавание образов и анализ изображений: новые информационные технологии", Ульяновск, апрель 1995, с. 86-89.
2. Соколов С.М., Богуславский А.А. Графический интеллектуальный интерфейс для информационной системы мобильного робота, функционирующего в супервизорном и автономном режимах. // Материалы VII научно-технической конференции "Экстремальная робототехника", Санкт-Петербург, апрель 1996, с.221-226.
3. Охоцимский Д.Е., Платонов А.К., Белоусов И. Р., Богуславский А.А., и др. Автоматический захват подвижного объекта _ роботом-манипулятором: Препринт ИПМ им. М.В. Келдыша РАН № 78. М.,
1996. 24 с.
4. Sokolov S.M., Boguslavsky А.А. Real time visión systems based on PC. // Proc. 13,h ISPE/IEE International Conference on CAD/CAM, Robotics & Factories of the Future'97, Universidad Technológica de Pereira, Columbia,
1997, p.336-342.
5. Okhotsimsky D.E, Platonov A.K., Belousov I.R., Boguslavsky A.A., et al. Vision system for automatic capturing a moving object by the robot manipulator // Proc. IEEE/RSJ Intern. Conf. on Intelligent Robots and Systems IROS'97, Grenoble, France, Sept. 7-11,1997, p. 1073-1079.
6. Okhotsimsky D.E, Platonov A.K, Belousov I.R., Boguslavsky A.A., et al. Real time hand-eye system: interaction with moving objects // Proc. IEEE In-
tern. Conf. on Robotics and Automation ICRA'98, Leuven, Belgium, May 15-20, 1998, p.1683-1688.
7. Okhotsimsky D.E., Platonov A.K., Belousov I.R., Boguslavsky A.A., et al. Dynamic Model Approach for Automatic Robot Interaction with Fast Mobile Objects. // Proc. of the Workshop "Adaptive Robots & General System Logical Theory", St.-Petersburg, Russia, July 7-10, 1998, p.41-46.
8. Охоцимский Д.Е., Платонов А.К., Белоусов И.P., Богуславский A.A., и др. Захват подвижного объекта роботом-манипулятором. // Известия J РАН, "Механика твердого тела". №4, 1998, с. 102-116.
9. Богуславский A.A., Соколов С.М. Графический интерфейс систем технического зрения на базе персональных компьютеров: Препринт ИПМ им. М.В. Келдыша РАН № 24. М., 1998. 24 с.
Ю.Богуславский A.A., Соколов С.М. Интерфейс с аппаратным обеспечением и хранение данных в системах технического зрения на базе персональных компьютеров: Препринт ИПМ им. М.В. Келдыша РАН № 68. М., 1998.22 с.
11.Белоусов И.Р., Богуславский A.A., Емельянов С.Н., и др. Система "глаз-рука" в задачах взаимодействия робота с подвижными объектами // Труды научной школы-конференции "Мобильные роботы и мехатрон-ные системы", Москва, 3-4 декабря, 1998, с.10-56.
12,Охоцимский Д.Е., Платонов А.К., Белоусов И.Р., Богуславский A.A., и др. Взаимодействие робота-манипулятора с подвижными объектами: Препринт ИПМ им. М.В. Келдыша РАН № 6. М., 1999. 24 с.
13.Богуславский A.A., Соколов С.М., Мерзликин И.В. Система технического зрения реального времени в лабораторном практикуме по физике. // Материалы X Международной конференции "Применение новых тех- , нологий в образовании", Троицк, 30 июня — 3 июля 1999, с.42-43.
14.Богуславский A.A., Соколов С.М., Егиазарян A.B., и др. Информационно-справочная система для паспортизации и контроля состояния объектов инфраструктуры железной дороги. // Материалы 15-й российской ■ научно-технической конференции "Неразрушающий контроль и диагностика", Москва, 28 июня - 2 июля 1999, с. 192.
15.Богуславский A.A., Соколов С.М. Система поддержки принятия решения в составе железнодорожной передвижной лаборатории комплекс- . ной диагностики. // Материалы 15-й российской научно-технической конференции "Неразрушающий контроль и диагностика", Москва, 28 июня - 2 июля 1999, с. 217.
16.Охоцимский Д.Е., Платонов А.К., Белоусов И.Р., Богуславский A.A., и др. Взаимодействие робота-манипулятора с подвижными объектами / Сб. "Пространства жизни". - М: Наука, 1999, с. 181-192.
17.Богуславский A.A., Сербенюк Н.С., Соколов С.М. Конический сенсор для навигации подвижного робота по маякам. // Материалы научной
школы-конференции "Мобильные роботы и мехатронные системы", Москва, МГУ им. М.В. Ломоносова, 5-6 декабря 2000, с.42-55. .Белоусов И.Р., Богуславский А.А., Емельянов С.Н., и др. Взаимодейст-f вие робота-манипулятора с подвижными объектами. // Известия РАН, "Механика твердого тела", № 1, 2001, с. 194-204.
19,Охоцимский Д.Е., Платонов А.К., Белоусов И.Р., Богуславский А.А., и др. Алгоритмы управления роботом-манипулятором в задачах взаимодействия с быстрыми подвижными объектами. // Материалы 12-й научно-технической конференции "Экстремальная робототехника", Санкт-Петербург, 17-19 апреля 2001, с. 53-57.
20.Богуславский А.А., Соколов С.М. Устройство и применение систем технического зрения для измерения параметров колебательных процессов в подготовке учителей физики. // Материалы конференции "Повышение эффективности подготовки учителей физики, информатики и технологии в условиях новой образовательной парадигмы", Екатеринбург, 21-22 апреля 2001, с. 176-177.
21.Богуславский А.А., Соколов С.М. Верификация математической модели колебательных процессов сложных механических систем с использованием систем технического зрения. // Материалы Международной научно-практической конференции "Народное образование в XXI веке", Москва, 6-7 июня 2001, с. 77-78.
22.Boguslavskiy А.А., Kirilchenko А.А., Sokolov S.M., et al. Fundamentals of Construction of Multifunctional Information System of Mobile Robotics complexes. // Proc. 3-rd International Workshop on Computer Science and Information Technologies CSIT'2001, Ufa, Yangantau, Russia, September 21-26, 2001, Vol.2, p.141-151.
23.Богуславский А. А., Сербенюк H.C., Соколов С.М. СТЗ для навигации подвижного робота по маякам на основе анализа конической проекции окружающего пространства на ТВ камеру: Препринт ИПМ им. М.В. Келдыша РАН № 96. М„ 2001. 21 с.
24.Богуславский А.А., Соколов С.М. Программно-аппаратные средства ввода зрительных данных в память персонального компьютера: Препринт ИПМ им. М.В. Келдыша РАН № 52. М., 2002. 22 с.
25.Boguslavsky А.А., Sokolov S.M., Sazonov V.V. Computer Vision for Control and Research of Mechanical Systems. // Proc. 8th Mechatronics Forum International Conference, University of Twente, Netherlands, June 24-26, 2002, p.1096-1105.
26.Boguslavsky A.A., Sokolov S.M., Trifonov O.V., Yaroshevsky V.S. Intellectual information system for mobile robot control. // Proc. Intern. Conf. on Systemics, Cybernetics and Informatics (SCI 2002), Orlando, Florida, USA, July 14-18, 2002, p.620-627.
27.Boguslavsky A.A., Sokolov S.M. Component Approach To The Applied Visual System Software Development. // Proc. 7th Intern. Conf on Sys-
temics, Cybernetics and Informatics (SCI 2003), Orlando, Florida, USA, July 27-30, 2003, p.419-425.
28.Boguslavsky A.A., Sokolov S.M. Realtime Vision System For Product Check On The Moving Conveyor. // International Conference on Computer, Communication and Control Technologies (CCCT 2003), Orlando, Florida, USA, July 31-August 1-2, 2003, p.963-970.
29.Богуславский A.A., Соколов С.M. Компонентные технологии отладки для систем технического зрения реального времени. // Труды Первой Всероссийской научной конференции "Методы и средства обработки информации", МГУ им. М.В. Ломоносова, Москва, 1-3 октября 2003, с.304-310.
30.Соколов С.М., Богуславский A.A., Кошелев В.Я., Касаткин В.В., Автоматизированная система визуального контроля чистоты и грансостава массы гранул. // Материалы научно-технической конференции "30 лет металлургии гранул". Всероссийский институт легких сплавов ВИЛС, 2003, с. 44-45.
31.Богуславский A.A., Платонов А.К., Сербенюк U.C. Система машинного видения робота "Трикол". // Материалы научной школы-конференции "Мобильные роботы и мехатронные системы", Москва, МГУ им. М.В. Ломоносова, 17-18 ноября 2003, с. 21-34.
32.Богуславский A.A., Соколов С.М. Компонентные методы разработки программного обеспечения СТЗ. // Материалы научной школы-конференции "Мобильные роботы и мехатронные системы", Москва, МГУ им. М.В. Ломоносова, 17-18 ноября 2003, с. 35-49.
33.Соколов С.М., Ярошевский B.C., Трифонов О.В., Богуславский A.A. Система избирательного осмотра окружающего пространства для мобильного робота. // Материалы научной школы-конференции "Мобильные роботы и мехатронные системы", Москва, МГУ им.
./-чМ.В. Ломоносова, 17-18 ноября 2003, с. 50-59.
(ЗД/Богуславский A.A., Сазонов В.В., Соколов С.М., Земсков B.C., и др. О влиянии микроускорений на распределение примеси в кристаллах InSbiTe, выращенных в орбитальном полете методом бестигельной зонной плавки. // Космические исследования, т. 42, 2004, с. 155-161.
35.Boguslavsky A.A., Sazonov V.V., Sokolov S.M., Smirnov A.I., Saigi-raev K.S. Automatic Vision-based Monitoring of the Spacecraft Docking Approach with the International Space Station. // Proc of the First International Conference on Informatics in Control, Automation and Robotics (ICINCO 2004), Setúbal, Portugal, August 25-28, 2004, Vol. 2, p.79-86.
36.Богуславский A.A., Соколов С.М. Алгоритмы для слежения за малоразмерной целью в составе СТЗ. // Материалы научной школы-конференции "Мобильные роботы и мехатронные системы", Москва, МГУ им. М.В. Ломоносова, 5-6 апреля 2004, с. 114-125.
37.Богуславский A.A., Соколов С.М. Система технического зрения со структурированным подсветом для избирательного осмотра сцены. // Материалы 15-й научно-технической конференции "Экстремальная робототехника", Санкт-Петербург, 6-7 апреля 2004, с. 223-230.
38.Богуславский A.A., Логинов A.A., Соколов С.М. Программные средства визуализации для поддержки принятия решений при телеуправлении мобильным роботом. //Материалы 15-й научно-технической конференции "Экстремальная робототехника", Санкт-Петербург, 6-7 апреля 2004, с. 241-248.
39.Соколов С.М., Кондриков С.С., Богуславский A.A. Исследование графовых структур для информационных систем мобильных роботов. // Труды школы-конференции «Адаптивные роботы-2004», Санкт-Петербург, 8-11 июня 2004, с. 67-71.
40.Богуславский A.A., Сазонов В.В., Соколов С.М., Миронос Н.В., Тюр-нин П.Г. Расчет силы взаимодействия контактного провода и токоприемника электроподвижного состава по видеоинформации: Препринт ИПМ им. М.В. Келдыша РАН № 86. М., 2004. 32 с.
41.Богуславский A.A., Сазонов В.В., Соколов С.М., Смирнов А.И., Сайги-раев Х.У. Автоматический мониторинг стыковки космического корабля с орбитальной станцией по видеоинформации: Препринт ИПМ им. М.В. Келдыша РАН № 74. М., 2004. 23 с.
42.Богуславский A.A., Соколов С.М. Компонентный каркас для разработки систем технического зрения реального времени. // Труды Второй Всероссийской научной конференции "Методы и средства обработки информации", Москва, МГУ им. М.В. Ломоносова, 5-7 октября 2005, с. 337-343.
43.Соколов С.М., Кондриков С.С., Богуславский A.A. Распознавание символьной информации в СТЗ реального времени. // Материалы научной школы-конференции "Мобильные роботы и мехатронные системы", Москва, МГУ им. М.В. Ломоносова, 21-22 марта 2005, ч. 2, с. 63-72.
44.Соколов С.М., Логинов A.A., Богуславский A.A., Применение структурированного подсвета для восстановления формы объектов. // Материалы научной школы-конференции "Мобильные роботы и мехатронные системы", Москва, МГУ им. М.В.Ломоносова, 21-22 марта 2005, ч. 2, с. 89-98.
45.Богуславский A.A., Соколов С.М. Обнаружение образов объектов с изменяющейся структурой в системах технического зрения реального времени. // Информационные технологии и вычислительные системы,
е- № 1,2006, с. 61-77.
йщБогуславский A.A., Соколов С.М. Обнаружение образов объектов на изображениях с использованием структурных геометрических моделей в СТЗ реального времени // Программирование, № 3, 2006, с. 66-80.
Оглавление автор диссертации — доктора физико-математических наук Богуславский, Андрей Александрович
ВВЕДЕНИЕ.
ГЛАВА 1. АСПЕКТЫ КОМПОНЕНТНОЙ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ СТЗ.
1.1 Введение.
1.2 Примеры разработанных СТЗ реального времени.
1.3 Обзор программных средств для ввода и обработки зрительных данных
1.4 Объектно-ориентированный подход к разработке ПрО СТЗ.
1.5 Итеративные схемы применения объектно-ориентированного подхода
1.6 Выделение классов в ПрО СТЗ.
1.7 Шаблоны проектирования ПрО.
1.8 Примеры шаблонов проектирования ПрО СТЗ.
1.9 Выбор языка программирования для реализации ПрО СТЗ.
1.10 Базовая операционная система для ПрО СТЗ.
1.11 Выводы по первой главе.
ГЛАВА 2. КАРКАС ПрО СТЗ РЕАЛЬНОГО ВРЕМЕНИ.
2.1 Введение.
2.2 Режимы работы ПрО СТЗ.
2.3 Взаимодействие подсистем ПрО СТЗ.
2.4 Представление цифровых изображений.
2.5 Долговременно хранимые параметры объектов ПрО СТЗ.
2.6 Источники зрительных данных в ПрО СТЗ.
2.7 Определение времени в ПрО СТЗ.
2.8 Классы подсистемы интерфейса пользователя ПрО СТЗ.
2.9 Алгоритмы обработки зрительных данных в ПрО СТЗ.
2.10 ПрО СТЗ для обработки цветных изображений.
2.11 Выводы по второй главе.
ГЛАВА 3. ПОИСК ОБРАЗОВ ОБЪЕКТОВ НА ИЗОБРАЖЕНИЯХ В РЕАЛЬНОМ ВРЕМЕНИ С ИСПОЛЬЗОВАНИЕМ СТРУКТУРНЫХ ГЕОМЕТРИЧЕСКИХ МОДЕЛЕЙ.
3.1 Введение.
3.2 Элементы структурных геометрических моделей образов объектов.
3.3 Структурная геометрическая модель образа объекта на изображении
3.4 Обнаружение отрезков на контурных изображениях в СТЗ реального времени.
3.5 Алгоритмы выделения низкоуровневых признаков для обнаружения объектов с использованием СГМ.
3.6 Первоначальный поиск образа объекта с использованием СГМ.
3.7 Поиск образа объекта с учетом прогноза его местоположения.
3.8 Применение алгоритмов обнаружения образов объектов с использованием СГМ в ПрО СТЗ.
3.9 Проектирование и реализация алгоритмов обнаружения объектов с использованием СГМ.
3.10 Отладка ПрО СТЗ реального времени.
3.11 Выводы по третьей главе.
ГЛАВА 4. ОБНАРУЖЕНИЕ ОБРАЗОВ ОБЪЕКТОВ С ИЗМЕНЯЮЩЕЙСЯ СТРУКТУРОЙ.
4.1 Введение.
4.2 Априорная информация об образах объектов интереса.
4.3 Алгоритмы обработки изображений.
4.4 Обнаружение образа МКС на расстояниях от 100 м до 45 м.
4.5 Обнаружение образа МКС на расстояниях от 45 м до 25 м.
4.6 Выделение образа стыковочной мишени на расстояниях от 25 м до 15 м
4.7 Поиск образа стыковочной мишени на расстояниях менее 15 м.
4.8 Выбор алгоритмов обработки изображений в автоматическом режиме
4.9. Обнаружение образа малоразмерной цели.;.
4.10. Выводы по четвертой главе.
Введение 2006 год, диссертация по информатике, вычислительной технике и управлению, Богуславский, Андрей Александрович
Развитие робототехнических систем и систем автоматизации производства все активнее выдвигает требование по оснащению этих систем компьютерным видением. Достижения в развитии аппаратных средств сбора зрительных данных и ввода их в ЭВМ позволяют ставить и решать сложные задачи по машинной обработке видеоинформации. Особое место среди таких задач занимают задачи, требующие решения в масштабе реального времени, задаваемого внешними процессами.
К задачам обработки зрительных данных в реальном времени относятся мониторинг состояния различных объектов и систем [1-7], инспекционный технологический контроль [8-13], слежение за подвижными объектами [1418], обработка зрительной информации в информационных системах манипу-ляционных и подвижных робототехнических комплексов [19-26]. Во всех перечисленных приложениях требуется обеспечить в реальном времени получение и обработку зрительных данных с целью обнаружения на сформированных цифровых изображениях образов объектов интереса или их частей.
Отечественная практика применения систем технического зрения (СТЗ), а также анализ опубликованных зарубежных работ, свидетельствуют о целесообразности использования в качестве базовой ЭВМ в СТЗ реального времени персональных компьютеров общего назначения. Это делает возможным внедрение прикладных СТЗ для решения народнохозяйственных задач, в которых существенное значение имеет доступность аппаратных компонентов автоматизированных систем обработки зрительной информации, а также возможность применения готового прикладного программного обеспечения для представления и обработки результатов, полученных с помощью СТЗ реального времени.
Сдерживающим фактором, особенно на стадии разработки систем технического зрения реального времени, является отсутствие методов программирования подобных систем. Существующие примеры программных средств для сбора и обработки зрительных данных не учитывают специфики требований реального времени или являются узко специализированными под решение отдельно взятой задачи с использованием жестко определенных аппаратных и программных средств. Известные в настоящее время коммерческие пакеты обработки изображений и средства для ускорения разработки приложений автоматизации производства на основе подхода быстрой разработки приложений, как правило, предлагают пользователю платформу, закрытую для модернизации и недостаточно документированную в плане выбранной программной архитектуры.
В диссертации предлагаются методы программирования систем технического зрения реального времени, восполняющие этот пробел. Эти методы обеспечивают разработку ПрО СТЗ реального времени и применимы для построения СТЗ на базе общедоступных персональных компьютеров. Эти методы программирования применялись для разработки ряда СТЗ реального времени прикладного и научного назначения. Среди них - СТЗ для определения взаимного расположения частей пантографов в движении, СТЗ для определения местоположения контактного провода железной дороги по высоте и в плане в процессе движения электроподвижного состава, СТЗ для контроля качества металлического порошка в порошковой металлургии, СТЗ для слежения за процессом сближения и стыковки космического корабля с Международной космической станцией, СТЗ в составе манипуляционных робото-технических систем "глаз-рука".
Важным этапом в процессе проектирования и разработки ПрО является формирование программной архитектуры. Она описывает назначение и типы структурных частей программной системы, а также способы взаимодействия этих частей. В настоящее время известны общепринятые архитектуры для применения в области разработки ПрО массового назначения (например, архитектура интерактивных приложений, клиент-серверных систем и др.), но для разработки ПрО СТЗ реального времени унифицированной программной архитектуры не существует. В данной работе предлагается архитектура ПрО
СТЗ реального времени. Она определяет назначение и взаимодействие компонентов ПрО, использование которых упрощает разработку ПрО СТЗ реального времени для обработки полутоновых и цветных изображений с возможностью использования нескольких полей зрения.
Эта архитектура была сформирована в результате анализа опыта разработки 12 прикладных СТЗ. Применение этой архитектуры позволило повторно использовать в процессе разработки ПрО СТЗ реального времени проектные решения и компоненты ПрО. В качестве структурных частей наиболее высокого уровня в ПрО СТЗ выделяются три параллельные подсистемы: подсистема интерфейса пользователя, подсистема ввода зрительных данных и подсистема обработки зрительных данных. Предлагаемая архитектура предназначена для использования в ПрО СТЗ, которое рассчитано на функционирование в среде многозадачной операционной системы (ОС) с поддержкой многопоточности.
Актуальность предлагаемых методов программирования связана также с тем, что в качестве базовой ОС для разработки ПрО СТЗ оказывается возможным выбрать ОС общего назначения. Критерием, позволяющим сделать такой выбор, является возможность соблюдения временных ограничений, характерных для конкретной прикладной задачи. В реализованных СТЗ удалось обеспечить обработку зрительных данных в реальном масштабе времени, сравнимым с кадровой частотой телевизионного стандарта, в ОС общего назначения семейства Microsoft Windows NT/XP [27]. Разработанная архитектура не ориентирована исключительно на ОС данного семейства и допускает применение в среде других ОС.
В качестве методологии проектирования общего назначения в настоящее время распространен объектно-ориентированный подход. Известны технологии применения объектно-ориентированного подхода, специализированные для разработки ПрО систем реального времени [28]. Но их перенос для проектирования ПрО СТЗ затруднителен в связи со спецификой СТЗ. В качестве характерных особенностей ПрО СТЗ можно указать: 1) опосредованное получение сведений о внешних событиях в результате обработки зрительных данных; и 2) сложность выбора представительных тестовых данных до этапа опытной эксплуатации системы. Эти особенности требуют, во-первых, обеспечения обработки зрительных данных в реальном времени с учетом того, что временные затраты на обработку и применяемые алгоритмы могут сильно зависеть от текущего состояния программной системы, и, во-вторых, в ПрО СТЗ необходимы отладочные средства, позволяющие обнаруживать необрабатываемые образцы изображений в процессе штатного функционирования системы с целью последующей модификации алгоритмов обработки.
С учетом приведенных особенностей рассматриваемых задач обработки зрительных данных и для упрощения применения объектно-ориентированного подхода к разработке ПрО СТЗ в данной работе была выполнена классификация компонентов ПрО СТЗ в рамках предлагаемой программной архитектуры. Эти компоненты реализуются в виде классов на языке программирования Си++.
Спроектированные с учетом решения ряда прикладных задач компоненты ПрО СТЗ были использованы для реализации каркаса ПрО СТЗ реального времени для многозадачной операционной системы. Этот каркас представляет собой заготовку приложения, которую требуется доработать для использования в конкретной задаче. Каркас реализует взаимодействие подсистем ПрО СТЗ в рамках предлагаемой многопоточной архитектуры. Аналогов каркаса для разработки ПрО СТЗ, открытых для повторного использования на уровне исходных текстов, в настоящее время не известно.
При проектировании и использовании каркаса в качестве одной из основных целей ставилась задача изоляции подсистемы обработки зрительных данных от остальных подсистем ПрО СТЗ, так чтобы эта подсистема не зависела от деталей интерфейса с пользователем и с аппаратным обеспечением СТЗ, а также могла быть перенесена на другие платформы с минимальными изменениями. Для сокращения платформно-зависимых деталей реализации в подсистеме обработки зрительных данных в каркасе ПрО СТЗ были предусмотрены программные интерфейсы, представляющие функциональность компонентов для взаимодействия с пользователем и аппаратурой на уровне СТЗ (например, интерфейс абстрактного "Источника ввода зрительных данных").
Особенностью разработанного каркаса ПрО СТЗ является направленность на функционирование ПрО СТЗ в двух режимах - в режиме настройки и в автоматическом режиме. Использование двух режимов работы связано с тем, что в настоящее время пока не удается обеспечить полностью автоматическую обработку зрительных данных без выполнимости сильных ограничений на структуру наблюдаемых сцен и условия освещения, что не всегда возможно в нелабораторных условиях. Режим настройки в ПрО СТЗ предназначен для интерактивной проверки корректности функционирования аппаратной части СТЗ, для проверки хода обработки изображений и настройки параметров обработки изображений (например, выбор зон контроля), а также для просмотра результатов обработки отдельных изображений и данных, полученных в автоматическом режиме. В автоматическом режиме выполняется обработка зрительных данных в реальном времени.
Для организации обработки зрительных данных в реальном времени существенно сокращение времени и повышение надежности обработки. С этой целью в ПрО СТЗ предлагается применять алгоритмы обработки последовательностей изображений на основе использования комбинированных методов распознавания объектов "снизу-вверх" для первоначального обнаружения и "сверху-вниз" для прослеживания объектов.
В процессе обработки методом "снизу-вверх" признаки, выделяемые на изображении, посредством последовательной проверки гипотез преобразуются в признаки более высокого уровня. На конечном этапе обработки принимается решение об обнаружении объекта интереса. Решение о неудачном результате обработки изображения может быть принято после проверки одной из промежуточных гипотез. В случае успешного обнаружения образа объекта интереса на текущем изображении при анализе последующих изображений временные затраты могут быть сокращены за счет применения обработки методом "сверху-вниз". Она заключается в подтверждении гипотезы расположения образа интереса в местоположении, вычисленном с учетом прогноза.
Алгоритмы обнаружения образов объектов методами "снизу-вверх" и "сверху-вниз" в ПрО СТЗ комбинируются для построения высокоуровневого алгоритма обработки зрительных данных, обеспечивающего решение целевой задачи конкретной СТЗ. Для применения в составе высокоуровневых алгоритмов, разрабатываемых с учетом априорных сведений из предметной области, также был сформирован набор низкоуровневых алгоритмов реального времени.
Исследования в области разработки методов программирования СТЗ реального времени были поддержаны грантами РФФИ №02-01-00671 ("Исследование механики и управления движением робототехнических систем в реальном времени с использованием зрительных сенсоров"), № 02-07-90425 ("Создание телекоммуникационных ресурсов для исследования и информационного обеспечения распределенных мобильных систем"), № 03-07-06101 ("Исследование ввода и обработки зрительных данных с использованием камер произвольного доступа к элементам растра (CMOS-камер)"), грантом Президента РФ МК-3386.2004.9 ("Разработка методов программирования систем технического зрения реального времени") и грантом Фонда содействия отечественной науке (программа "Кандидаты и доктора наук РАН" за 2004/2005 г.).
Цель работы заключается в разработке методов программирования систем технического зрения реального времени. Эти методы основаны на применении унифицированной архитектуры ПрО СТЗ, реализующего эту архитектуру каркаса ПрО СТЗ реального времени, и методов проектирования высокоуровневых алгоритмов обработки зрительных данных. Особое внимание уделялось применимости предлагаемых методов программирования для разработки СТЗ на базе общедоступных программных и аппаратных компонентов персональных компьютеров. Также ставилась цель применения разрабатываемых методов программирования для решения прикладных и научных задач обработки зрительных данных в реальном времени.
Научная новизна. Разработана новая архитектура ПрО СТЗ реального времени для применения в среде многозадачных ОС с поддержкой многопо-точности. Сформирована структура подсистем интерфейса пользователя, ввода и обработки зрительных данных в ПрО СТЗ. В функционировании ПрО СТЗ выделены два основных режима - автоматический и режим настройки. Спроектированы способы взаимодействия подсистем ПрО СТЗ в двух режимах, обеспечивающие средства контроля оператором или разработчиком ПрО хода обработки зрительных данных, а также обработку в реальном времени.
На основе предлагаемой архитектуры разработан каркас ПрО СТЗ реального времени. В нем реализованы параллельные подсистемы ПрО СТЗ. Этот каркас предназначен для наращивания применительно к решению конкретной задачи обработки зрительных данных в реальном времени. В состав подсистем каркаса ПрО СТЗ входят компоненты ПрО, оформленные в виде классов на языке Си++. Доработка каркаса в конкретной прикладной задаче выполняется в прогнозируемых точках роста ПрО с использованием расширяемых классов каркаса. Разработанный каркас ПрО СТЗ является новым.
Предлагаемые методы программирования обеспечивают повторное и многократное использование компонентов ПрО СТЗ при решении задач обработки зрительных данных в реальном времени за счет повторного использования проектных решений и способов их реализации.
В работе предлагаются методы проектирования высокоуровневых алгоритмов обработки зрительных данных реального времени. Они основаны на выделении в высокоуровневом алгоритме ПрО СТЗ двух отдельных алгоритмов, выполняющих обработку в случае первоначального обнаружения объекта и в случае его прослеживания. В первом случае обработка выполняется методом "снизу-вверх" с учетом априорных сведений из предметной области задачи о структуре обрабатываемых изображений, во втором - методом "сверху-вниз", когда дополнительно могут учитываться результаты обработки предыдущих изображений и прогноз положения образов объектов интереса на новых изображениях. Для применения алгоритмов такой структуры в каркасе ПрО СТЗ реализованы специальные программные компоненты - базовые классы и интерфейсы, которые являются новыми.
Для применения в составе высокоуровневых алгоритмов обработки был сформирован набор алгоритмов низкого уровня, в которых не используется априорных сведений из предметной области задачи, но которые ориентированы на функционирование в реальном времени (например, алгоритм трассировки контуров). Основной метод обеспечения функционирования в реальном времени в этих алгоритмах заключается в сокращении объема обрабатываемых зрительных данных и в учете при низкоуровневой обработке временных ограничений, указываемых при вызове соответствующего низкоуровневого алгоритма.
Все полученные результаты диссертации являются новыми.
Практическая ценность работы. Предлагаемые методы программирования были разработаны и использованы в процессе решения ряда прикладных и научных задач обработки зрительных данных в реальном времени. При этом было спроектировано и реализовано ПрО двенадцати СТЗ реального времени. Среди них можно выделить СТЗ для мониторинга состояния механических систем, СТЗ для инспекционного технологического контроля и СТЗ для слежения за подвижными объектами.
К разработанным СТЗ для мониторинга состояния механических систем, в частности, относятся СТЗ для определения взаимного расположения частей пантографов в движении; СТЗ для определения местоположения контактного провода железной дороги по высоте и в плане в процессе движения электроподвижного состава; СТЗ для определения колебаний контактного провода железной дороги; СТЗ для обнаружения дефектов верхнего строения железнодорожного пути. Перечисленные СТЗ позволяют получать информацию о состоянии механических систем бесконтактным способом, и в ряде случаев позволяют получить данные, недоступные иными методами. Например, СТЗ для определения местоположения контактного провода (в плане и по высоте относительно оси пути) предназначена для использования в составе передвижной лаборатории комплексной диагностики (ПЖД) в процессе движения по железнодорожному перегону. Получаемые данные необходимы для обеспечения безопасности движения. Человек не может выполнять подобные измерения вручную (минимальные требования - 4 измерения в секунду). Существующие контактные методы позволяют выполнять измерения только с использованием пантографа вагона-лаборатории в ограниченном диапазоне скоростей движения. СТЗ при решении данной задачи позволяет выполнять определение интересующих параметров с требуемой частотой и использовать пантограф локомотива, что невозможно в случае контактных методов.
В целях инспекционного технологического контроля, в частности, были разработаны СТЗ для контроля качества металлического порошка в порошковой металлургии; СТЗ для контроля чистоты жидкости в емкостях на движущемся конвейере. Эти СТЗ позволяют автоматизировать рутинные и утомительные для оператора-человека операции контроля состояния производственной продукции.
Для решения задач, связанных со слежением за подвижными объектами, были разработаны СТЗ в составе системы "глаз-рука", выполняющей захват подвижного объекта; СТЗ в составе системы "глаз-рука", формирующей траекторию объекта; СТЗ для слежения за низколетящими целями на расстояниях прямой видимости; СТЗ для слежения за движущейся малоразмерной целью; СТЗ для слежения за процессом сближения и стыковки космического корабля с Международной космической станцией. Эти СТЗ также имеют важное практическое значение. Например, СТЗ в составе систем "глаз-рука" предназначены для получения в режиме реального времени данных, необходимых для определения параметров движения объектов манипулирования, совершающих заранее неизвестное движение в операционном пространстве манипуляционного робототехнического комплекса.
Все перечисленные СТЗ были разработаны с использованием единых методов, позволяющих добиться обработки зрительных данных в режиме реального времени в среде распространенных операционных систем семейства MS Windows NT/XP и с использованием доступных устройств формирования изображений. В качестве базовой ЭВМ в перечисленных СТЗ были использованы Intel-совместимые персональные компьютеры. Возможность использования общедоступных аппаратных и программных компонентов в СТЗ реального времени обусловливает особую практическую важность предлагаемых методов программирования, значительно расширяя сферу применения СТЗ в прикладных задачах.
Апробация работы. Основные результаты диссертации были представлены на Всероссийской с участием стран СНГ конференции "Распознавание образов и анализ изображений: новые информационные технологии" (Ульяновск, 1995 г.), на научно-технической конференции "Экстремальная робототехника" (Санкт-Петербург, 1996, 2001 и 2004 г.), на Международной конференции по интеллектуальным роботам и системам IEEE/RSJ International Conference on Intelligent Robots and Systems IROS'97 (Гренобль, Франция, 1997 г.), на Международной конференции по робототехнике и автоматизации IEEE International Conference on Robotics and Automation ICRA'98 (Левей, Бельгия, 1998 г.), на Международной конференции по адаптивным роботам и GSLT International Conference on Adaptive Robots and General System Logical Theory (Санкт-Петербург, 1998 и 2004 г.), на научной школе-конференции "Мобильные роботы и мехатронные системы" (Москва, 1998, 2000, 2003, 2004 и 2005 г.), на Международной конференции "Применение новых технологий в образовании" (Троицк, 1999 г.), на российской научно-технической конференции "Неразрушающий контроль и диагностика" (Москва, 1999 г.), на Международной научно-практической конференции "Народное образование в XXI веке" (Москва, 2001), на Международном семинаре по компьютерным наукам и информационным технологиям 3-rd International Workshop on Computer Science and Information Technologies CSIT'2001 (Уфа, 2001), на Международной конференции по мехатронике Mechatronics Forum International Conference (Твент, Нидерланды, 2002 г.), на Международной конференции по организации систем, кибернетике и информатике International Conference Systemics, Cybernetics and Informatics (Орландо, CILIA, 2002 и 2003 г.), на Международной конференции по компьютерным, коммуникационным и технологиям управления International Conference on Computer, Communication and Control Technologies CCCT 2003 (Орландо, США, 2003 г.), на Всероссийской научной конференции "Методы и средства обработки информации" (Москва, 2003 и 2005 г.), на научно-технической конференции "30 лет металлургии гранул" (Москва, Всероссийский институт легких сплавов ВИЛС, 2003 г.), на Международной конференции по информатике в области управления, автоматизации и робототехники First International Conference on Informatics in Control, Automation and Robotics ICINCO 2004 (Сетубал, Португалия, 2004 г.).
Результаты диссертации также докладывались на научном семинаре по робототехнике ИПМ им. М.В. Келдыша РАН (май 1998), на научном семинаре "Программирование" ИПМ им. М.В. Келдыша РАН под руководством профессора М.Р. Шура-Буры (ноябрь 1998), на Всероссийском семинаре под руководством академика Д.Е. Охоцимского "Механика и управление робото-техническими системами с элементами искусственного интеллекта" (МГУ им. М.В. Ломоносова, ноябрь 1998), на семинаре "Машинная графика и обработка изображений" под руководством профессора Ю.М. Баяковского (МГУ им. М.В. Ломоносова, декабрь 2005), на совместном научном семинаре ИПМ им. М.В. Келдыша РАН под руководством профессора М.Р. Шура-Буры (май 20006 г.).
В диссертации на защиту выносятся следующие положения.
1) Архитектура ПрО СТЗ реального времени для обработки полутоновых и цветных изображений с возможностью использования нескольких полей зрения.
2) Схема компонентной классификации и проектирования объектов ПрО СТЗ, основанная на выделении классов для представления понятий, относящихся к подсистемам ПрО СТЗ.
3) Каркас ПрО СТЗ реального времени для многозадачных операционных систем семейства Windows NT/XP, предназначенный для использования в широком круге прикладных и научных задач.
4) Организация алгоритмов обработки последовательностей изображений с использованием комбинированных методов распознавания объектов для первоначального обнаружения и для прослеживания объектов
5) Структура алгоритмов обработки зрительных данных для обнаружения объектов с образами изменяющейся структуры на основе иерархического разделения высокоуровневого алгоритма обработки зрительных данных СТЗ на алгоритмы обработки, соответствующие различным классам изображений.
6) СТЗ для решения прикладных и научных задач обработки зрительных данных в реальном времени. Разработанный каркас и повторно используемые компоненты ПрО СТЗ были применены для разработки следующих СТЗ реального времени: СТЗ для определения взаимного расположения частей пантографов в движении; СТЗ для определения местоположения контактного провода железной дороги по высоте и в плане в процессе движения электроподвижного состава; СТЗ для определения колебаний контактного провода железной дороги; СТЗ для обнаружения дефектов верхнего строения железнодорожного пути; СТЗ для определения силы взаимодействия токоприемника локомотива с контактным проводом; СТЗ для контроля качества металлического порошка в порошковой металлургии; СТЗ для контроля чистоты жидкости в емкостях на движущемся конвейере; СТЗ для слежения за низколетящими целями на расстояниях прямой видимости; СТЗ в составе системы "глаз-рука", выполняющей захват подвижного объекта; СТЗ в составе системы "глаз-рука", формирующей траекторию объекта; СТЗ для слежения за движущейся малоразмерной целью для применения в системах визуализации бесконтактных измерений; СТЗ для слежения за процессом сближения и стыковки космического корабля с Международной космической станцией.
Публикации. По результатам работы имеется 46 публикаций [29-74] включая 6 статей в журналах и сборниках [36, 44, 46, 62, 73, 74], 32 доклада на конференциях [29, 30, 32-35, 39, 41-43, 45, 47-50, 53-61, 63, 64-67, 70-72] (29 статей и 3 тезиса) и 8 препринтов [31,37,38,40,51,52,68,69].
Структура диссертации. Диссертация состоит из введения, четырех глав, заключения и списка литературы.
Заключение диссертация на тему "Методы программирования систем технического зрения реального времени"
4.10. Выводы по четвертой главе
В данной главе рассмотрены методы разработки и реализации алгоритмов высокого уровня ПрО СТЗ, обеспечивающие в масштабе реального времени обнаружение и прослеживание образов объектов с изменяющейся структурой. Основным ограничением на изменение структуры прослеживаемых объектов является предположение о том, что количество и характерные свойства допустимых вариантов образов объектов интереса или разновидностей траекторий движения этих образов априорно известны.
С учетом априорной информации на этапе проектирования ПрО СТЗ выполняется выделение ограниченного количества различных классов обрабатываемых изображений, на которых можно указать образы объектов интереса одинаковой структуры в терминах характерных признаков изображений. Структура образов объектов интереса может рассматриваться как применительно к геометрическим свойствам этих образов на обрабатываемых изображениях, так и применительно к свойствам движения образов на некоторой последовательности изображений. В соответствии с этим производится иерархическая декомпозиция высокоуровневого алгоритма обработки зрительных данных СТЗ на алгоритмы обработки, соответствующие отдельным классам изображений.
При проектировании алгоритма обработки каждого класса изображений используются особенности образов объектов интереса, присутствующих на изображениях соответствующего класса. В каждом из алгоритмов обработки реализуется два варианта обработки: методом «сверху-вниз» и «снизу-вверх». При поиске «сверху-вниз» учитывается прогноз местоположения образов объектов интереса.
Описанные подходы иллюстрируются эффективным применением в различных практических задачах.
В СТЗ для слежения за процессом сближения и стыковки КК и МКС выделенные классы изображений соответствуют различным интервалам расстояний между КК и МКС. В каждом классе изображений образ объекта интереса описывается отдельной моделью, состоящей из априорной известных структурных элементов с известными геометрическими свойствами. Для обеспечения обработки изображений в ПрО СТЗ используется объект «Селектор класса текущего изображения». Выбор алгоритма обработки для текущего изображения видеопоследовательности выполняется с учетом результатов обработки предыдущих изображений (в том числе представленных в виде сформированной модели движения объекта интереса) или посредством подбора алгоритма, обеспечивающего получение успешного результата. В качестве критерия корректного выбора рассматривается факт успешной обработки заданной последовательности изображений с использованием одного и того же высокоуровневого алгоритма обработки. В связи с этим критически важным требованием к высокоуровневым алгоритмам обнаружения образов различных классов в данной СТЗ является требование отсутствия ложных срабатываний, в первую очередь, на изображениях, содержащих образы других классов.
В СТЗ для слежения за движущейся малоразмерной целью классы изображений были выделены на основе анализа допустимых траекторий движения образа объекта интереса - пятна лазерного целеуказателя. В зависимости от класса траектории применяются различные способы построения траектории движения образа цели и ее сопровождения на последовательности изображений. По мере накопления данных о кандидатах на цель в ПрО СТЗ производится верификация класса обрабатываемых изображений.
Разработанная СТЗ реального времени для слежения за движущейся малоразмерной целью (пятном лазерного целеуказателя) рассчитана на применение в бесконтактных измерительных системах, в которых местоположение апертуры выполняемых измерений на объектах интереса демонстрируется оператору с использованием лазерного целеуказателя. Примерами таких систем являются триангуляционная дальнометрическая система, состоящая из видеокамеры и устройства структурированной подсветки, а также ручной бесконтактный оптический пирометр с жестко закрепленным на нем лазерным целеуказателем. В случае применения СТЗ в составе триангуляционной дальнометрической системы сопровождение цели может выполняться с учетом модели управления устройством структурированной подсветки. При использовании совместно с ручным оптическим пирометром слежение за целью усложняется за счет того, что перемещение прибора с установленным целеуказателем осуществляется оператором-человеком вручную и относительно характера движения цели не удается сделать строгих априорных допущений.
В СТЗ для слежения за низколетящими целями выделение классов изображений выполнено на основе разбиения допустимого интервала расстояний между зрительным датчиком и объектом слежения. В каждом из трех выделенных классов при обнаружении кандидатов на цель и сопровождении выделенной цели используются собственные наборы ограничений на изменения формы и вид траектории цели.
ЗАКЛЮЧЕНИЕ
При выполнении исследований по тематике представленной диссертационной работы были получены следующие основные результаты.
1) Разработана архитектура ПрО СТЗ реального времени для обработки полутоновых и цветных изображений с возможностью использования нескольких полей зрения.
В качестве высокоуровневых структурных частей в ПрО СТЗ выделены три параллельные подсистемы: подсистема интерфейса пользователя, подсистема ввода и подсистема обработки зрительных данных. Предлагаемая архитектура предназначена для использования в ПрО СТЗ, которое рассчитано на функционирование в среде многозадачной ОС с поддержкой многопоточно-сти. Разработанная архитектура может применяться для разработки ПрО СТЗ, рассчитанного на использование в среде ОС общего назначения (при условии выполнимости временных ограничений конкретной прикладной задачи) и на базе стандартных персональных компьютеров.
Предлагаемая архитектура ПрО СТЗ рассчитана на реализацию двух основных режимов работы СТЗ - автоматического режима и режима настройки. Наличие двух режимов обеспечивает сочетание возможностей функционирования в реальном времени, и контроля и настройки оператором или разработчиком ПрО СТЗ алгоритмов обработки зрительных данных.
2) Сформирована схема компонентной классификации и проектирования объектов ПрО СТЗ, основанная на выделении классов для представления понятий, относящихся к подсистемам ПрО СТЗ.
В качестве компонентов ПрО СТЗ рассматриваются классы, реализующие понятия, относящиеся к основным подсистемам ПрО СТЗ. Выделение классов выполняется на основе анализа сценариев функционирования ПрО СТЗ. Сценарии, связанные с обработкой зрительных данных, дополняются представительными тестовыми данными. Эти сценарии используются при верификации ПрО СТЗ для установления корректности его функционирования согласно сформулированным на этапе проектирования требованиям. Совокупности классов, использовавшиеся при разработке ряда прикладных СТЗ, были использованы для формирования шаблонов проектирования ПрО СТЗ.
Шаблоны проектирования представляют собой способы решения типовых задач разработки ПрО СТЗ, ориентированные на повторное использование. Они предназначены для упрощения разработки ПрО СТЗ реального времени. Эти шаблоны проектирования были разделены на категории, связанные с построением архитектуры ПрО СТЗ, с обработкой зрительных данных и с отладкой и тестированием ПрО СТЗ. Среди шаблонов проектирования были разработаны следующие: «Монокулярная СТЗ», «Поле зрения», «Прогноз местоположения образов объектов», «Отложенное конструирование объектов ПрО», «Верификация гипотез распознавания», «Отладочный журнал хода обработки зрительных данных» и ряд других. На основе разработанных шаблонов проектирования были реализованы повторно используемые компоненты ПрО СТЗ (в форме классов на языке Си++).
3) Каркас ПрО СТЗ реального времени для многозадачных операционных систем семейства Windows NT/XP, предназначенный для использования в широком круге прикладных и научных задач.
В каркасе ПрО СТЗ определены набор абстрактных классов, общая для рассматриваемых СТЗ реального времени программная архитектура, общее поведение, общие структуры данных и общий интерфейс пользователя. Каркас ПрО СТЗ предназначен для упрощения решения однотипных задач обработки зрительных данных за счет повторного использования компонентов ПрО и проектных решений. Каркас реализует взаимодействие подсистем ПрО СТЗ в рамках предлагаемой многопоточной архитектуры.
В ПрО СТЗ были выделены два режима работы: режим настройки и автоматический режим. Режим настройки предназначен для интерактивной проверки функционирования аппаратной части СТЗ, для проверки хода обработки изображений и настройки параметров обработки, а также для просмотра результатов обработки отдельных изображений и данных, полученных в автоматическом режиме. В автоматическом режиме выполняется обработка зрительных данных в реальном времени. В каркасе ПрО СТЗ предусмотрены классы для реализации выделенных режимов работы.
Программные компоненты для реализации архитектурного понятия «режим» в ПрО СТЗ служат основой для разработки ПрО распределенных СТЗ реального времени, в которых для каждого узла проектируются собственные объекты-режимы. Эти объекты, соответствующие режимам функционирования всех узлов распределенной СТЗ, совмещаются в одном приложении с учетом условия взаимно-исключающей активизации этих объектов для функционирования на конкретном узле. Такая архитектура ПрО СТЗ существенно упрощает развертывание и сопровождение распределенных СТЗ реального времени за счет унификации исполняемых модулей на узлах СТЗ.
Проведены исследования по организации аппаратно-независимого ввода зрительных данных в ПрО СТЗ с использованием зрительных датчиков и устройств ввода зрительных данных общего назначения. В результате в каркас ПрО СТЗ были встроены программные компоненты, реализующие абстрактный программный «Источник зрительных данных», допускающий специализацию для взаимодействия с широким спектром доступных устройств ввода.
4) Предложена организация алгоритмов обработки последовательностей изображений на основе использования комбинированных методов распознавания объектов для первоначального обнаружения и для прослеживании объектов. В первом случае обработка выполняется методом «снизу-вверх» с учетом априорных сведений из предметной области задачи о структуре обрабатываемых изображений, во втором - методом «сверху-вниз», когда дополнительно учитываются результаты обработки предыдущих изображений и прогноз местоположения объектов интереса на новых изображениях. Для реализации алгоритмов такой структуры в каркасе ПрО СТЗ предусмотрены готовые программные компоненты - базовые классы и интерфейсы.
Для обеспечения обработки зрительных данных в реальном времени в задачах для слежения за подвижными объектами был предложен метод проектирования высокоуровневых алгоритмов обработки зрительных данных, предназначенных для решения целевой задачи в СТЗ рассматриваемого класса. Этот метод основан на применении структурных геометрических моделей образов объектов интереса. Модели используются в качестве описания объектов интереса и позволяют учесть априорную информацию об их образах с целью обеспечения обработки в реальном времени.
В соответствии с предлагаемым подходом, структурная геометрическая модель (СГМ) рассматривается как средство для управления вычислительным процессом обнаружения образа объекта интереса. СГМ используется на этапе проектирования высокоуровневого алгоритма обработки зрительных данных и в процессе его выполнения. Алгоритм, реализующий процедуру обнаружения объекта интереса, представляет собой алгоритм построения подграфа графа сцены в соответствии с априорной информацией из прикладной области задачи, структурной геометрической моделью образа объекта интереса и информацией о результатах обработки предыдущих изображений (на этапе сопровождения объекта интереса). Эти источники информации позволяют ограничить глубину поиска на графе описания сцены. Сам граф в ПрО СТЗ непосредственно не формируется. Предполагается, что он задан неявно в форме входного цифрового изображения. На изображении присутствуют характерные признаки, которые могут быть согласно с используемой СГМ объединены в признаки более высокого уровня, интерпретируемые применительно к решаемой прикладной задаче.
Применение описанного метода проектирования высокоуровневых алгоритмов позволяет не только обеспечить обработку изображений в реальном времени, но и упростить решение прикладных задач благодаря возможности быстрого макетирования высокоуровневого алгоритма обработки зрительных данных для прикладных задач инспекционного контроля путем модификации базового алгоритма поиска объектов на основе использования новой геометрической модели образа объекта.
5) Разработана структура алгоритмов обработки зрительных данных для обнаружения объектов с образами изменяющейся структуры. Эти алгоритмы разрабатываются с учетом выделения на множестве обрабатываемых изображений подмножеств изображений (классов изображений), на которых можно указать образы объектов интереса одинаковой структуры в терминах характерных признаков изображений. В соответствии с выделенными классами выполняется иерархическое разделение высокоуровневого алгоритма обработки зрительных данных СТЗ на алгоритмы обработки, соответствующие различным классам изображений. Для выбора текущего алгоритма обработки в ПрО СТЗ вводится объект-переключатель алгоритмов, осуществляющий переключение в соответствии с результатами обработки изображений в предшествующие моменты времени, с учетом априорных сведений из предметной области, или перебором доступных алгоритмов обработки до обнаружения режима устойчивого обнаружения объектов интереса.
6) Разработанные методы программирования ПрО СТЗ были успешно применены для решения ряда прикладных задач обработки зрительных данных в реальном времени. Эти задачи можно разделить на категории мониторинга состояния механических систем, инспекционного технологического контроля и слежения за подвижными объектами.
С применением разработанного каркаса и повторно используемых компонентов ПрО СТЗ были разработаны следующие СТЗ реального времени:
• СТЗ для определения взаимного расположения частей пантографов в движении;
• СТЗ для определения местоположения контактного провода железной дороги по высоте и в плане в процессе движения электроподвижного состава;
• СТЗ для определения колебаний контактного провода железной дороги;
• СТЗ для обнаружения дефектов верхнего строения железнодорожного пути;
• СТЗ для определения силы взаимодействия токоприемника локомотива с контактным проводом;
• СТЗ для контроля качества металлического порошка в порошковой металлургии;
• СТЗ для контроля чистоты жидкости в емкостях на движущемся конвейере;
• СТЗ для слежения за низколетящими целями на расстояниях прямой видимости;
• СТЗ в составе системы "глаз-рука", выполняющей захват подвижного объекта;
• СТЗ в составе системы "глаз-рука", формирующей траекторию объекта;
• СТЗ для слежения за движущейся малоразмерной целью для применения в системах визуализации бесконтактных измерений;
• СТЗ для слежения за процессом сближения и стыковки космического корабля с Международной космической станцией.
Результаты диссертации были представлены в 46 публикациях [29-74].
Библиография Богуславский, Андрей Александрович, диссертация по теме Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
1. Sheikh Y., Zhai Y., Shafique K., Shah M. Visual Monitoring of Railroad Grade Crossing. // Proc. of the SP1., Vol. 5403,2004, p. 654-660.
2. Cathey F.W., Dailey D.J. A Novel Technique to Dynamically Measure Vehicle Speed using Uncalibrated Roadway Cameras. // Proc. of the IEEE Intelligent Vehicles Symposium, Las Vegas, NV, USA, June 6-8,2005.
3. Desurmont X., Messen J., Parisot C., Delaigle J.-F. A Step to Cognitive Vision Systems for Common Videosurveillance. // Workshop on the Integration of Knowledge, Semantics and Digital Media Technology (WIAMIS'05), Montreux, Switzerland, April 2005.
4. Kocak D., Lobo N., Widder E. Computer Vision Techniques for Quantifying, Tracking, and Identifying Bioluminescent Plankton. // IEEE Journal of Oceanic Engineering, Vol. 24, No. 1, January 1999, p. 81-95.
5. Borromeo S., Aparicio J.L. Precision of computer vision systems for real-time inspection of contact wire wear in railways. // Proc. of the SPIE International Society for Optical Engineering, vol. 5679,2005, p.18-26.
6. Инновации/Техническое зрение/''ReCar" система распознавания номеров автомобилей, 2005, http://www.mallenom.ru/innovisionrecar.php.
7. АПК "Поток" узнает автомобиль по номеру // Транспортное дело России, №3(12), 2003.
8. Ayub М.А., Jackson M.R. 2D-Paterned Shape Cutting of Elastic Web Fabrics Using Vision Directed Laser: Design and Realisation. // Proc. 8th Mechatronics Forum International Conference, University of Twente, Netherlands, June 2426,2002, p. 878-888.
9. Carew Т. Ghita 0., Whelan P.F. A Vision System for Detecting Surface Faults on Painted Slates. // Proc. 8th Mechatronics Forum International Conference, University of Twente, Netherlands, June 24-26,2002, p. 653-662
10. Zhang L., Su Z., King Т., Dehghani A., Greenwood B. Mechatronics and Machine Vision For Removing Contaminants from Wool. // Proc. 8th Mechatronics Forum International Conference, University of Twente, Netherlands, June 2426,2002, p. 899-908.
11. Институт информационных технологий ИИТ, Системы компьютерного зрения, 2005, http://www.iitvision.ru/.
12. Javed О., Rasheed Z., Alatas О., Shah М. KNIGHT: a real time surveillance system for multiple overlapping and non-overlapping cameras. // Proc. of the International Conference on Multimedia and Expo ICME'03, July 6-9, 2003, Vol. 1, p. 649-652.
13. Drummond Т., Cipolla R. Real-time tracking of complex structures with on-line camera calibration. // Image and Vision Computing, Vol. 20, No. 5-6, 2002, p. 427-433.
14. Coifman В., Beymer D., McLauchlan P., Malik J. A real-time computer vision system for vehicle tracking and traffic surveillance. // Transportation Research, Part С 6,1998, p. 271-288.
15. Davies D., Palmer P., Mirmehdi M. Robust tracker of small, fast-moving low-contrast targets. // Proc. of the IX European Signal Processing Conference, September 1998, Vol. Ill, p. 1545-1548.
16. Bhanu В., Das S., Roberts В., Duncan D. System for Obstacle Detection During Rotorcraft Low Attitude Flight. // IEEE Transactions on Aerospace and Electronic Systems, Vol. 32, No. 3, July 1996, p. 875-897.
17. Li X., Zong G., Bi S. Development of Global Vision System for Biological Automatic Micro-Manipulation System. // Proc. of the IEEE International Conference on Robotics and Automation, Seoul, Korea, May 21-26, 2001, p. 127132.
18. Sanz P.J., del Pobil A.P., Inesta J.M., Recatala G. Vision-Guided Grasping of Unknown Objects for Service Robots. // Proc. of the IEEE International Conference on Robotics and Automation, Leuven, Belgium, May 1998, p. 3018-3025.
19. Borangiu Т., Anton F.D., Tunaru S., Dogar A., Manu M. High Speed, Multitasking Visual Robot Guidance. // Proc. of the 15th International Conference on Control Systems and Computer Science, Bucharest, Romania, May 25-27,2005, Vol. l,p. 502-507.
20. Lange F., Wunsch P., Hirzinger G. Predictive Vision Based Control of High Speed Industrial Robot Paths. // Proc. of the IEEE International Conference on Robotics and Automation, Leuven, Belgium, May 1998, p. 2646-2651.
21. Nakai H., Taniguchi Y., Uenohara M. at al. A Volleyball Playing Robot. // Proc. of the IEEE International Conference on Robotics and Automation, Leuven, Belgium, May 1998, p. 1083-1089.
22. Ehrenmann M., Lutticke Т., Dillmann R. Dynamic Gestures as an Input Device for Directing a Mobile Platform. // Proc. of the IEEE International Conference on Robotics and Automation, Seoul, Korea, May 21-26,2001, p. 2596-2601.
23. Рихтер Дж. Windows для профессионалов: создание эффективных Win32-приложений с учетом специфики 64-разрядной версии Windows. / Пер. с англ. 4-е изд. - СПб: Питер, 2001. - 752 с.
24. Гома X. Проектирование систем реального времени, параллельных и распределенных приложений. / Пер. с англ. М.: ДМК Пресс, 2002. - 704 с.
25. Зб.Охоцимский Д.Е., Платонов А.К., Белоусов И.Р., Богуславский А.А., и др. Захват подвижного объекта роботом-манипулятором. // Известия РАН, "Механика твердого тела". №4,1998, с. 102-116.
26. Богуславский А.А., Соколов С.М. Графический интерфейс систем технического зрения на базе персональных компьютеров: Препринт ИПМ им. М.В. Келдыша РАН № 24. М., 1998. 24 с.
27. Богуславский А.А., Соколов С.М. Интерфейс с аппаратным обеспечением и хранение данных в системах технического зрения на базе персональных компьютеров: Препринт ИПМ им. М.В. Келдыша РАН № 68. М., 1998. 22 с.
28. Богуславский А.А., Соколов С.М. Система поддержки принятия решения в составе железнодорожной передвижной лаборатории комплексной диагностики. // Материалы 15-й российской научно-технической конференции
29. Богуславский А.А., Сербенюк Н.С., Соколов С.М. Конический сенсор для навигации подвижного робота по маякам. // Материалы научной школы-конференции "Мобильные роботы и мехатронные системы", Москва, МГУ им. М.В. Ломоносова, 5-6 декабря 2000, с.42-55.
30. Богуславский A.A., Сербенюк H.C., Соколов C.M. СТЗ для навигации подвижного робота по маякам на основе анализа конической проекции окружающего пространства на ТВ камеру: Препринт ИПМ им. М.В. Келдыша РАН №96. М., 2001.21 с.
31. Богуславский А.А., Соколов С.М. Программно-аппаратные средства ввода зрительных данных в память персонального компьютера: Препринт ИПМ им. М.В. Келдыша РАН № 52. М., 2002. 22 с.
32. Boguslavsky А.А., Sokolov S.M., SazonovV.V. Computer Vision for Control and Research of Mechanical Systems. // Proc. 8th Mechatronics Forum International Conference, University of Twente, Netherlands, June 24-26, 2002, p.1096-1105.
33. Boguslavsky A.A., Sokolov S.M., Trifonov O.V., Yaroshevsky V.S. Intellectual information system for mobile robot control. // Proc. Intern. Conf. on Systemics, Cybernetics and Informatics (SCI 2002), Orlando, Florida, USA, July 14-18, 2002.
34. Boguslavsky A.A., Sokolov S.M. Component Approach To The Applied Visual System Software Development. // Proc. 7th Intern. Conf on Systemics, Cybernetics and Informatics (SCI 2003), Orlando, Florida, USA, July 27-30,2003.
35. Boguslavsky A.A., Sokolov S.M. Realtime Vision System For Product Check On The Moving Conveyor. // International Conference on Computer, Communication and Control Technologies (CCCT 2003), Orlando, Florida, USA, July 31-August 1-2,2003.
36. Богуславский А.А., Платонов А.К., СербенюкН.С. Система машинного видения робота "Трикол". // Материалы научной школы-конференции "Мобильные роботы и мехатронные системы", Москва, МГУ им. М.В. Ломоносова, 17-18 ноября 2003, с. 21-34.
37. Богуславский А.А., Соколов С.М. Компонентные методы разработки программного обеспечения СТЗ. // Материалы научной школы-конференции "Мобильные роботы и мехатронные системы", Москва, МГУ им. М.В. Ломоносова, 17-18 ноября 2003, с. 35-49.
38. Богуславский A.A., Соколов С.М. Алгоритмы для слежения за малоразмерной целью в составе СТЗ. // Материалы научной школы-конференции
39. Мобильные роботы и мехатронные системы", Москва, МГУ им. М.В. Ломоносова, 5-6 апреля 2004, с. 81-90.
40. Богуславский А.А., Соколов С.М. Система технического зрения со структурированным подсветом для избирательного осмотра сцены. // Материалы 15-й научно-технической конференции "Экстремальная робототехника", Санкт-Петербург, 6-7 апреля 2004, с. 93-98.
41. Соколов С.М., Кондриков С.С., Богуславский А.А. Исследование графовых структур для информационных систем мобильных роботов. // Труды школы-конференции "Адаптивные роботы-2004", Санкт-Петербург, 8-11 июня 2004, с.39-42.
42. Богуславский А.А., Сазонов В.В., Соколов С.М., Миронос Н.В., Тюрнин П.Г. Расчет силы взаимодействия контактного провода и токоприемника электроподвижного состава по видеоинформации: Препринт ИПМ им. М.В. Келдыша РАН № 86. М., 2004. 32 с.
43. Богуславский А.А., Сазонов В.В., Соколов С.М., Смирнов А.И., Сайгираев Х.У. Автоматический мониторинг стыковки космического корабля с орбитальной станцией по видеоинформации: Препринт ИПМ им. М.В. Келдыша РАН № 74. М., 2004.23 с.
44. Богуславский А.А., Соколов С.М. Обнаружение образов объектов с изменяющейся структурой в системах технического зрения реального времени. // Информационные технологии и вычислительные системы, № 1, 2006, с. 61-77.
45. Богуславский А.А., Соколов С.М. Обнаружение образов объектов на изображениях с использованием структурных геометрических моделей в СТЗ реального времени. // Программирование, № 3,2006, с. 66-80
46. Буч Г. Объектно-ориентированный анализ и проектирование с примерами приложений на Си++. / Пер. с англ. СПб.: Невский Диалект, 1998. -560 с.
47. Meyer В. Object-Oriented Software Construction, Second Edition. Prentice Hall, 1997.-1254 p.
48. Страуструп Б. Язык программирования С++. Третье издание. СПб.: Невский Диалект, 2000. - 991 с.
49. Pesce M.D. Programming Microsoft DirectShow for Digital Video and Television. Redmond, Washington, USA: Microsoft Press, 2003. - 450 p.
50. Таненбаум Э. Современные операционные системы. 2-е изд. / Пер. с англ. СПб.: Питер, 2002. -1040 с.
51. Янг С. Алгоритмические языки реального времени: конструирование и разработка. / Пер. с англ. М.: Мир, 1985. - 400 с.81.0лссон Г., Пиани Дж. Цифровые системы автоматизации и управления. / Пер. с англ. СПб.: Невский Диалект, 2001. - 557 с.
52. Мартин Д. Программирование для вычислительных систем реального времени. / Пер. с англ. М.: Наука, 1975. - 360 с.
53. West P. High Speed, Real-Time Machine Vision. Imagenation and Automated Vision Systems, Inc., 2001, http://www.imagenation.com.
54. Бокс Д. Сущность технологии СОМ. Библиотека программиста. / Пер. с англ. СПб.: Питер, 2001. - 400 с.
55. Просиз Дж. Программирование для Microsoft .NET. / Пер. с англ. М.: Из-дательско-торговый дом "Русская редакция", 2003. - 704 с.
56. Монсон-Хейфел P. Enterprise JavaBeans, 3-е изд. / Пер. с англ. СПб.: Символ-Плюс, 2002. - 672 с.
57. Уайтеккер Дж., Воас Дж. 50 лет программирования: основные принципы качества. // Открытые системы, № 3,2003, с. 58-63.
58. Горбунов-Посадов М.М. Расширяемые программы. М.: Полиптих, 1999. -336 с.
59. Шрайбер С. Недокументированные возможности Windows 2000. Библиотека программиста. СПб.: Питер, 2002. - 544 с.
60. Adobe Premiere 4.0. User Guide. Adobe Systems Inc., 1994. - 321 p.
61. What is WDM? The Imaging Source Europe GmbH, 2005, http://www.1394imaging.com/en/resources/whitepapers.
62. What are Capture SDKs? The Imaging Source Europe GmbH, 2001, http:\\www.theimagingsource.com\prod\soft\softbgcapsdk.htm.
63. Video Capture Technologies, Microsoft Corporation, 2001, http:\\www.microsoft.com\hwdev\tech\stream\vidcap\default.asp.
64. MIL-Lite version 3.1. User Guide and Command Reference. Matrox Electronic Systems Ltd., 1996. - 420 p.
65. LEADTOOLS 12 API. LEAD Technologies Inc., Charlotte, USA, 2000. -1558 p.
66. HALCON Version 6.0 User's Manual. MVTec Software GmbH, Munich, Germany, 2000, http:\\www.mvtec.com\halcon.
67. Eckstein W., Steger C. The Halcon Vision System: An Example for Flexible Software Architecture. // Proc. of the 3rd Japanese Conference on Practical Applications of Real-Time Image Processing, 1999, p. 18-23.
68. OpenCV Library User Guide. Intel Research Lab, 2000. - 420 p.
69. Bradski G. OpenCV: Examples of Use and New Applications in Stereo, Recognition and Tracking. // Proc. 15th International Conference on Vision Interface, Calgary, Canada, May 27-29,2002, p. 347-348.
70. Intel Image Processing Library. Reference Manual. Intel Corp., USA, 1999.-286 p.
71. Matrox Inspector 3.1. Matrox Electronic Systems Ltd., http:\\www.matrox.com\imaging\products\inspector\binspector.pdf.
72. ActivVision Tools. MVTec Software GmbH, Munich, Germany, 2001, http:Wwww.activ-vision-tools.com.
73. Трельсен Э. Модель COM и применение ATL 3.0. / Пер. с англ. СПб.: БХВ-Петербург, 2001. - 928 с.
74. AdOculos 4.0, DBS GmbH, Bremen, Germany, 1998, http:Wwww.dbs-imaging.com.
75. Klinger T. Image Processing with Lab VIEW and IMAQ Vision. Prentice Hall, 2003.-319 p.
76. Pisoft Image Framework 8.0, Институт информационных технологий, Лаборатория компьютерного зрения, Москва, 2000, http:Wwww.iitvision.ru\pisoft.htm.
77. Olson T.J., Klop N.G., Hyett M.R., Carnell S.M. MAVIS: A Visual Environment for Active Computer Vision. // Proc. of the IEEE Workshop on Visual Languages, Seattle, Washington, USA, September 15-18,1992, p. 170-176.
78. Зюбин В. Графика или текст: какой язык нужен программисту? // Открытые системы, №1,2004, с. 54-58.
79. Йодан Э. Структурное проектирование и конструирование программ. / Пер. с англ. -М.: Мир, 1979.-415 с.
80. ВиртН. Алгоритмы и структуры данных. / Пер. с. англ. -СПб.: Невский Диалект, 2001.-352 с.
81. Stein J. Object-Oriented Programming and Database Design. // Dr. Dobb's Journal of Software Tools for the Professional Programmer, No. 137, March 1988, p. 18.
82. Paulus D., Niemann H. Object-Oriented Programming for Image Analysis. / Current Topics of Pattern Recognition Research (editor J. Menon), Volume 1 -Research Trends, India, 1996, p. 185-204.
83. Hager G.D., Toyama К. X Vision: A Portable Substrate for Real-Time Vision Applications. // Computer Vision and Image Understanding. Vol. 69, No. 1,1998, p. 23-37.
84. Grange S, Fong T.W., Baur C. TLIB: a real-time computer vision library for HCI. // Digital Image Computing Techniques and Applications Conference, IAPR/IEEE, Sydney, Australia, December, 2003, p. 1017-1026.
85. Chang H., Ikeuchi K., Kanade T. Model-Based Vision System by Object-Oriented Programming. / Technical report CMU-RI-TR-88-03, Robotics Institute, Carnegie Mellon University, February 1988,35 p.
86. Paulus D., Ahlrichs U., Heigl В., Denzler J., Hornegger J., Zobel M., Niemann H. Active Knowledge-Based Scene Analysis. // Videre: Journal of Computer Vision Research, MIT Press, Winter 2000, Vol. 1, No. 4.
87. Shapiro L.G., Stockman G.C. Computer Vision. Prentice Hall, 2001. -580 p.
88. Koenderink J.J., van Doom A.J. The internal representation of solid shape with respect to vision. // Biological Cybernetics, Vol. 32,1979, p. 211-216.
89. JacobsonL, BoochG., RumbaughJ. The Unified Software Development Process. USA: Addison-Wesley, 1999. - 463 p.
90. Kruchten P. The Rational Unified Process An Introduction, 2nd edition. -USA: Addison-Wesley, 2000. - 320 p.
91. Бек К. Экстремальное программирование. / Пер. с англ. СПб.: Питер, 2002.-224 с.
92. Ларман К. Применение UML и шаблонов проектирования. 2-е издание. / Пер. с англ. М.: Издательский дом "Вильяме", 2002. - 624 с.
93. Буч Г., Рамбо Д., Джекобсон А. Язык UML. Руководство пользователя. / Пер. с англ. М.: ДМК, 2000. - 432 с.
94. Бок К. UML 2: модель деятельности и модель действий. // Открытые системы, № 2,2004, с. 38-43.
95. Selic В., Gullekson G., Ward P. Real-Time Object-Oriented Modeling. -John Wiley & Sons, NY, 1994. 525 p.
96. Huang H.M., Messina E., Scott H., Albus J. et al. Open System Architecture for Real-time Control Using a UML Based Approach. // Proc. of the 1st ICSE Workshop on Describing Software Architecture with UML, Toronto, Canada, May 15,2001.
97. Barros E.A., Franceschetti N.N., Ferreirazy G. Development of self-propelled high speed ship models. // Proc. 8th Mechatronics Forum International Conference, University of Twente, Netherlands, June 24-26, 2002, p. 5061.
98. Bastidas G., Miyagi P.E. Okamoto J. Modelling integration of systems in intelligent buildings through mechatronics approach. // Proc. 8th Mechatronics Forum International Conference, University of Twente, Netherlands, June 2426,2002, p. 202-211.
99. KerstenM., MatthesJ., Manga C.F., ZipserS., Keller H.B. Customizing UML for the development of distributed reactive systems and code generation to Ada 95. // Ada User Journal, Vol. 23, No. 3, September 2002.
100. Bauckhage C., Fritsch J., Rohlfing K.J., Wachsmuth S., Sagerer G. Evaluating Integrated Speech- and Image Understanding. // Proc. IEEE International Conference on Multimodal Interfaces (ICMI'02), Pittsburgh, PA, USA, 2002, p. 9-14.
101. Cockburn A. Writing Effective Use Cases. USA, Massachusetts: Addison-Wesley, 2000.-304 p.
102. Rubin D. Uses of Use Cases, http://www.softstar-inc.com/Download/Uses of Use Case.pdf.
103. Jacobson I., Christerson M., Jonsson P., Overgaard G., Object-Oriented Software Engineering: A Use Case Driven Approach. USA, Massachusetts: Addison-Wesley, 1992. - 552 p.
104. Jacobson I., Ericsson M., Jacobson A., The Object Advantage: Business Process Reengineering With Object Technology. USA, Massachusetts: Addi-son-Wesley, 1995.-368 p.
105. БаддТ. Объектно-ориентированное программирование в действии. / Пер. с англ. СПб.: Питер, 1997. - 460 с.
106. Гамма Э., Хелм Р., Джонсон Р., Влиссидес Дж. Приемы объектно-ориентированного проектирования. Паттерны проектирования. / Пер. с англ. СПб.: Питер, 2001. - 368 с.
107. Александреску А. Современное проектирование на Си++. / Пер. с англ. М.: Издательский дом "Вильяме", 2002. - 336 с.
108. Meyers S. More Effective С++. USA: Addison Wesley, 1996. - 224 p.
109. Haering N., Lobo N. A Framework for Designing Event Detectors. / Technical Report CS-TR-99-01, University of Central Florida, Orlando, USA, January 1999,39 p.
110. Uhl R.G., Lobo N. A Framework for Recognizing a Facial Image from a Police Sketch. // Proc of the IEEE International Conference on Computer Vision and Pattern Recognition, San Francisco, California, USA, June 18-20, 1996, p. 586-593.
111. Schneider S.A., Chen V.W., Pardo-Castellote G. The ControlShell Component-Based Real-Time Programming System. // Proc. IEEE International Conference on Robotics and Automation, Nagoya, Japan, May 21-27, 1995, p. 2381-2388.
112. Barendt N.A., Merat F.L., Podgursky A., Blanchard E. A Distributed, Object-Oriented Software Architecture for Platform-Independent Machine Vision.
113. Proc. IASTED International Conference on Robotics and Manufacturing, Banff, Canada, 1998.
114. Balkenius C., Kopp L. The XT-1 Vision Architecture. // Proc. of the Symposium on Image Analysis, Lund University, Sweden, 1996, p. 39-43.
115. Frangois A., Medioni G., A Modular Middleware Flow Scheduling Framework. // Proc. ACM Multimedia 2000, Los Angeles, California, USA, November 2000, p. 371-374.
116. Frangois A. Components for Immersion. // Proc. IEEE International Conference on Multimedia and Expo, Lausanne, Switzerland, August 2002.
117. Franfois A. Software Architecture for Computer Vision: Beyond Pipes and Filters. / IRIS Technical Report IRIS-03-420, University of Southern California, Los Angeles, USA, July 2003,27 p.
118. Mirmehdi M., Palmer P.L., Kittler J., Dabis H. Complex Feedback Strategies for Hypothesis Generation and Verification. // Proc. 7th British Machine Vision Conference, University of Edinburgh, UK, 1996.
119. Пратт Т., Зелковиц M. Языки программирования: разработка и реализация. СПб.: Питер, 2002. - 688 с.
120. Cyliax I. Software Development for RTOSs. // Circuit Cellar INK, the Computer Applications Journal. №93, April 1998, p. 53-59.
121. American National Standard for Information Systems Programming Language С X3.159. American National Standards Institute (ANSI), New York, 1989.
122. Programming Language С++. International Standard 14882, ISO/IEC 14882,1998.
123. Яншин B.B., Калинин Г.А. Обработка изображений на языке Си для IBM PC: Алгоритмы и программы. М.: Мир, 1994. - 240 с.
124. Линдли К. Практическая обработка изображений на языке Си. / Пер. с англ. М.: Мир, 1996. - 512 с.
125. Szyperski C. Component Software: Beyond Object-Oriented Programming. New York, NY, USA: ACM Press/Addison-Wesley Publishing, 1998. -411 p.
126. Волш А.И. Основы программирования на Java для World Wide Web. -К.: Диалектика, 1996. 512 с.
127. Стивене У. UNIX: взаимодействие процессов. СПб.: Питер, 2002. -576 с.
128. Solomon D.A., Russinovich М.Е. Inside Microsoft Windows 2000, Third Edition. Redmond, Washington, USA: Microsoft Press, 2000. - 944 p.
129. Кёртен P. Введение в QNX Neutrino 2. Руководство по программированию приложений реального времени в QNX Realtime Platform. / Пер. с англ. СПб.: ООО "Издательство "Петрополис", 2001. - 480 с.
130. Kolnick F. The QNX 4 Real-time Operating System. Canada: Basis Computer Systems Inc., 1998. - 936 p.
131. Collier J. An overview tutorial of the VxWorks Real-Time Operating System, 2004, http://www.cross-comp.com/pages/embedded/index.php.
132. Oney W. Programming the Microsoft Windows Driver Model, Second Edition. Redmond, Washington, USA: Microsoft Press, 1999. - 800 p.
133. Timmerman M., Beneden B.V., Uhres L. Windows NT Real-Time Extensions: Better or Worse? // Real-Time Magazine, № 3, 1998, p. 11-19.
134. Timmerman M., Monfret J. Windows NT as Real-Time OS? // Real-Time Magazine, № 2,1997, p. 6-14.
135. Cherepov M., Hirst M., Jones С., Zimmerman M. Hard Real-Time with Ven-turcom RTX on Microsoft Windows XP and Windows XP Embedded, 2002, http://windowsfordevices.com/articles/AT3618198049.html.
136. Straumann T. Open Source Real Time Operating Systems Overview. // Proc. 8th International Conference on Accelerator & Large Experimental Physics Control Systems, San Jose, California, USA, 2001, p. 235-237.
137. Черемисин А., Кобызев О. Linux реального времени. // Открытые системы, №9-10, 1999.
138. Broenink J.F., Jovanovic D.S., Hilderink G.H. Controlling a Mechatronic Set-Up Using Real-Time Linux and CTC++. // Proc. 8th Mechatronics Forum International Conference, University of Twente, Netherlands, June 24-26, 2002, p. 1323-1331.
139. Silly-Chetto M., Garcia Т., Lucas G., Orhant Y. On using Real-Time Linux in a mobile robot application. // Proc. 7th Intern. Conf on Systemics, Cybernetics and Informatics (SCI 2003), Orlando, Florida, USA, July 27-30, 2003.
140. Fayad M.E., Johnson R.E., Schmidt D.C. Building Application Frameworks: Object-Oriented Foundations of Framework Design. USA, New York: John Wiley and Sons, 1999. - 688 p.
141. Керниган Б.В., ПайкР. Практика программирования. / Пер. с англ. -СПб: Невский Диалект, 2001. 381 с.
142. Ватолин Д., Ратушняк А., Смирнов М., Юкин В. Методы сжатия данных. М.:Диалог МИФИ, 2002. - 384 с.
143. Petzold С. Programming Windows, Fifth Edition. Redmond, Washington, USA: Microsoft Press, 1998. -1479 p.
144. Zukowski J. Mastering Java 2. USA: Sybex, Inc. 1998. -1244 p.
145. Prosise J. Programming Windows with MFC, 2nd ed. Redmond, Washington, USA: Microsoft Press, 1999. -1376 p.
146. Багуи С. Объектно-ориентированные базы данных: достижения и проблемы. // Открытые системы, № 3,2004, с. 12-18.
147. ГукМ. Аппаратные интерфейсы ПК. Энциклопедия. СПб.: Питер, 2002.-528 с.
148. Pasqualini A. An investigation on visual servo control schemes for assembly applications. // Proc. 8th Mechatronics Forum International Conference, University of Twente, Netherlands, June 24-26,2002, p. 1116-1125.
149. Роджерс Д. Алгоритмические основы машинной графики. / Пер. с англ.- М.: Мир, 1989.-512 с.
150. Фоли Дж., вэн Дэм А. Основы интерактивной машинной графики: В 2-х книгах. Кн. 1. / Пер. с англ. М.: Мир, 1985. - 368 с.
151. National Instruments Measurement Encyclopedia. National Instruments, Austin, Texas, USA, 2004, http://zone.ni.com/devzone/nidzgloss.nsf/glossary.
152. Прэтт У. Цифровая обработка изображений: В 2 кн. / Пер. с англ. М.: Мир, 1982.-Кн. 1.310 с.; Кн. 2.480 с.
153. Horn В.К.Р. Robot Vision. USA, Massachusetts: MIT Press, 1986. -480 p.
154. Sonka M., Hlavac V., Boyle R. Image Processing: Analysis, and Machine Vision. 2nd edition. UK: Thomson-Engineering, 1998. - 800 p.
155. Jain R., Kasturi R, Schunck B.G. Machine Vision. USA, New York: McGraw-Hill, 1995.-549 p.
156. Davies E.R. Machine Vision: Theory, Algorithms, Practicalities. 2nd edition.- USA, California, San Diego: Academic Press, 1997. 934 p.
157. Форсайт Д., Понс Д. Компьютерное зрение. Современный подход. / Пер. с англ. М.: Вильяме, 2004. - 928 с.
158. Ballard D.H., Brown C.M. Computer Vision. Prentice Hall, 1982. -523 pg.
159. Maxwell B.A. Teaching computer vision to computer scientists: issues and a comparative textbook review. // International Journal of Pattern Recognition and Artificial Intelligence, Vol. 12, No. 8,1998, p. 1035-1051.
160. Farooq U., King Т., Gaskell P.H., Kapur N. A mechatronic approach for automatic inspection of deformable webs. // Proc. 8th Mechatronics Forum International Conference, University of Twente, Netherlands, June 24-26, 2002, p. 663-674.
161. Henten E.J., Van Tuijl B.A.J., Hemming J., Kornet J.G., Bontsema J. CUPID An Autonomous Cucumber Picking Device. // Proc. 8th Mechatronics Forum International Conference, University of Twente, Netherlands, June 24-26, 2002, p. 633-642.
162. Bamforth P., Jackson M., Williams K. High Accuracy Automated Scalloping of Decorative Lace. // Proc. 8th Mechatronics Forum International Conference, University of Twente, Netherlands, June 24-26,2002, p. 889-898.
163. Wallick M., Lobo N., Shah M. A Computer Vision Framework for Analyzing Projections from Video of Lectures. // Proc. ISCA 9th International Conference for Intelligent Systems, Louisville, KY, USA, June 2000.
164. Lipton A.J., Fujiyoshi H., Patil R.S. Moving Target Classification and Tracking from Real-time Video. // Proc. of the DARPA Image Understanding Workshop, Monterey, California, USA, 1998, p. 129-136.
165. Betke M., Haritaoglu E., Davis L.S. Multiple Vehicle Detection and Tracking in Hard Real Time. / Technical report CS-TR-3667, University of Maryland, July 1996,23 p.
166. Bertozzi M., Broggi A. GOLD: A Parallel Real-Time Stereo Vision System for Generic Obstacle and Lane Detection. // IEEE Transactions on Image Processing, Vol. 7, No. 1, January 1998, p. 62-81.
167. Moon I., Miura J., Shirai Y. Automatic Extraction of Visual Landmarks for a Mobile Robot under Uncertainty of Vision and Motion. // Proc. of the IEEE International Conference on Robotics and Automation, Seoul, Korea, May 21-26, 2001, p. 1188-1193.
168. Дуда P., Харт П. Распознавание образов и анализ сцен. / Пер. с англ. -М.: Мир, 1976.-512 с.
169. Huttenlocher D. Edge Detection. Cornell University, 1995, http://www.cs.wisc.edu/~dyer/ai-qual/huttenlocher-edges95.pdf.
170. Эксперименты с машинным зрением. / В.П. Андреев, Д.А. Белов, Г.Г. Вайнштейн, Е.А. Москвина. -М.: Наука, 1987. 128 с.
171. Введение в контурный анализ и его приложения к обработке изображений и сигналов. / Я.А. Фурман, А.В. Кревецкий, А.К. Передреев, А.А. Ро-женцов, Р.Г. Хафизов, И.Л. Егошина, А.Н. Леухин; под ред. Я.А. Фурмана. М.: ФИЗМАТЛИТ, 2002. - 592 с.
172. Гостев И.М. Об одном методе получения контуров изображений. // Известия академии наук, Теория и системы управления, № 3,2004, с. 97-104.
173. Canny J. A Computational Approach to Edge Detection. // IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 8, No. 6, November 1986, p. 679-698.
174. Ruzon M.A., Tomasi C. Color Edge Detection with the Compass Operator. // Proc. of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR '99), Fort Collins, Colorado, USA, June 23-25,1999, Vol. 2, p. 160-166.
175. Nalwa V.S., Binford Т.О. On detecting edges. // IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 8, No. 6, November 1986, p. 699714.
176. Nevatia R. A color edge detector and its use in scene segmentation. // IEEE Transactions on Systems, Man and Cybernetics, Vol. 7, No. 11, November 1977, p. 820-826.
177. Абду И., Прэтт У. Количественный расчет детекторов контуров, основанных на подчеркивании перепадов яркости с последующим пороговым ограничением. //ТИИЭР, Т. 67, № 5, 1979, с. 59-70.
178. Фу К. Структурные методы в распознавании образов. / Пер. с англ. -М.: Мир, 1977.-319 с.
179. Perona P., Malik J. Detecting and localizing edges composed of steps, peaks and roofs. // Proc. of the 3rd IEEE International Conference on Computer Vision (ICCV '90), Osaka, Japan, December 4-7,1990, p. 52-57.
180. Duda R.O., Hart P.E. Use of the Hough transform to detect lines and curves in pictures. // Communications of the ACM, Vol. 15, No. 1,1972, p. 11-15.
181. Burns J.R., Hanson A.R., Riseman E.M. Extracting straight lines. // IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 8, No. 4,1986, p. 425-455.
182. Rosenfeld A., Johnston E. Angle Detection on Digital Curves. // IEEE Transactions on Computers, Vol. 22,1973, p. 875-878.
183. Teh C.H., Chin R.T. On the Detection of Dominant Points in Digital Curves. // IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 11, 1989, p. 859-872.
184. Douglas D., Peuker T. Algorithms for the reduction of the number of points required to represent a digitised line or its caricature. // The Canadian Cartographer, Vol 10,1973, p. 112-122.
185. Visvalingam M., Whyatt J.D. The Douglas-Peucker Algorithm for Line Simplification: Re-evaluation through Visualization. // Computer Graphics Forum, Vol. 9, September 1990, p. 213-228.
186. Rosin P.L. Techniques for Assessing Polygonal Approximations of Curves. // IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 19, No. 6, June 1997, p. 659-666.
187. Freeman, H. Computer processing of line-drawing images. // ACM Computing Surveys, Vol. 6, March 1974, p. 57-97.
188. Bajcsy P. Automatic Extraction of Isocontours From Historical Maps. // Proc. 7th Intern. Conf on Systemics, Cybernetics and Informatics (SCI 2003), Orlando, Florida, USA, July 27-30,2003.
189. Хюккель M. Оператор нахождения контуров на кодированных изображениях. / Интегральные роботы. М.: Мир, Вып. 1, 1973, с. 225-240.
190. Welch G., Bishop G. An Introduction to the Kalman Filter. / Technical Report TR 95-041, University of North Carolina, Department of Computer Science, USA, 1995,44 p.
191. MaybeckP.S. Stochastic models, estimation and control: Volume 1. New York: Academic Press, 1979. —423 p.
192. Davies D., Palmer P., Mirmehdi M. Detection and Tracking of Very Small Low Contrast Objects. // Proc. 9th British Machine Vision Conference (BMVC'98), University of Southampton, UK, 1998, p. 599-608.
193. Lowe D.G. Robust model-based motion tracking through the integration of search and estimation. // Int. Journal of Computer Vision, Vol. 8, No. 2, 1992, p. 113-122.
194. Mills S., Pridmore Т., Hills M. Tracking in a Hough Space with Extended Kalman Filter. // Proc. 14th British Machine Vision Conference (BMVC 2003), UK, September 2003, p. 173-182.
195. Pylkko H., Riekki J., Roning J. Real-Time Color-Based Tracking via a Marker Interface. // Proc. of the IEEE International Conference on Robotics and Automation, Seoul, Korea, May 21-26,2001, p. 1214-1219.
196. Shah M., Rangarajan K., Tsai P.-S. Motion Trajectories. // IEEE Transactions on Systems, Man and Cybernetics, Vol. 23, No. 4, July/August 1993, p. 1138-1150.
197. Тэллес M., Хсих Ю. Наука отладки. / Пер. с англ. М.: КУДИЦ-ОБРАЗ, 2003.-560 с.
198. Robbins J. Debugging Applications. -Redmond, Washington, USA: Microsoft Press, 2000.-466 p.
199. Tweed D., Calway A. Tracking Many Objects Using Subordinated CONDENSATION. // Proc. 13th British Machine Vision Conference, BMVA Press, UK, 2002, p. 283-292.
200. BlosteinS., Huang T. Detecting small, moving objects in image sequences using sequential hypothesis testing. // IEEE Transactions on Signal Processing, Vol. 39, No. 7,1991, p. 1611-1629.
201. Cohen I., Medioni G. Detecting and Tracking Moving Objects in Video from an Airborne Observer. // Proc. of the IEEE Image Understanding Workshop, Monterey, CA, USA, November 20-23,1998, p. 217-222.
202. Huttenlocher D.P., NohJ.J., RucklidgeWJ. Tracking non-rigid objects in complex scenes. // Proc. of the 4th IEEE International Conference on Computer Vision (ICCV '93), Berlin, Germany, May, 1993, p. 93-101.
203. Zabih R., Woodfill J. Non-parametric local transforms for computing visual correspondence. // Proc. of the 3rd European Conference on Computer Vision, Stockholm, Sweden, May 2-6,1994, p. 151-158.
204. Yau W.G., Fu L.C., Liu D. Design and Implementation of Visual Servoing System for Realistic Air Target Tracking. // Proc. of the IEEE International Conference on Robotics and Automation, Seoul, Korea, May 21-26, 2001, p. 229-234.
205. Broek S.P., Bakker E.J., de Lange D.J., Theil A. Detection and classification of infrared decoys and small targets in a sea background. // Proc. of the SPIE, Vol. 4029, July 2000, p. 70-80.
206. US Patent № 3069654. Method and means for recognizing complex patterns. / Hough P.V.C. December 18,1962.
207. Leavers V. Which Hough transform? // Computer Vision, Graphics, and Image Processing: Image Understanding. Vol. 58, No. 2,1993, p. 250-264.
208. Davies E.R. A high speed algorithm for circular object location. // Pattern Recognition Letters. Vol. 6, No. 5,1987, p. 323-333.
209. Meer P. Robust Techniques For Computer Vision. / Emerging Topics in Computer Vision (editors Medioni G., Kang S.) Prentice Hall, 2004,688 p.
210. Fischler М.А., Bolles R.C. Random sample consensus: A paradigm for model fitting with applications to image analysis and automated cartography. // Communications of the ACM, Vol. 24, No. 6,1981, p. 381-395.
211. Уидроу Б., Стирнз С. Адаптивная обработка сигналов. / Пер. с англ. -М.: Радио и связь, 1989. 440 с.
212. Vaswani N., Agrawal А.К., Zheng Q., Chellappa R. Moving Object Detection and Compression in IR Sequences. / Computer Vision Beyond the Visible Spectrum (editors Bhanu В., Pavlidis I.) Springer, 2003, Chapter 5, p. 153177.
213. Кормен Т., Лейзерсон Ч., Ривест Р. Алгоритмы: построение и анализ. / Пер. с англ. М.: МЦНМО, 2001. - 960 с.
214. Sethi I., Jain R. Finding trajectories of feature points in a monocular image sequence. // IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 9, No. 1,1987, p. 56-73.
-
Похожие работы
- Управление прикладными программами и организация справочно-информационных подсистем
- Интеграция разнородных языковых механизмов в рамках одного языка программирования
- Метод точных штрафных функций для линейных смешанных целочисленных задач оптимизации
- Разработка структурно-функциональных методов в параллельном программировании
- Расширенный атрибутивный метод спецификации семантики для реализации языка программирования задач реального времени
-
- Системный анализ, управление и обработка информации (по отраслям)
- Теория систем, теория автоматического регулирования и управления, системный анализ
- Элементы и устройства вычислительной техники и систем управления
- Автоматизация и управление технологическими процессами и производствами (по отраслям)
- Автоматизация технологических процессов и производств (в том числе по отраслям)
- Управление в биологических и медицинских системах (включая применения вычислительной техники)
- Управление в социальных и экономических системах
- Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
- Системы автоматизации проектирования (по отраслям)
- Телекоммуникационные системы и компьютерные сети
- Системы обработки информации и управления
- Вычислительные машины и системы
- Применение вычислительной техники, математического моделирования и математических методов в научных исследованиях (по отраслям наук)
- Теоретические основы информатики
- Математическое моделирование, численные методы и комплексы программ
- Методы и системы защиты информации, информационная безопасность