Введение 4
1 Анализ предметной области программного обеспечения встраиваемых
систем 10
1.1 Программное обеспечение встраиваемых систем 10
1.2 Выводы по главе 13
2 Обзор алгоритмов обработки изображений и детектирования объектов 14
2.1 Основные виды алгоритмов распознавания объектов 14
2.1.1 Алгоритм сопоставления шаблонов 15
2.1.2 Метод поиска ключевых точек 15
2.2 Влияние внешних факторов на работу алгоритмов распознавания 16
2.3 Предобработка изображений средствами библиотеки OpenCV 19
2.3.1 Сглаживающие фильтры 19
2.3.2 Фильтры с использованием морфологических преобразований 21
2.3.3 Выравнивание гистограмм 23
2.4 Выводы по главе 24
3 Метод генетического программирования для генерации процедур
предобработки изображений с помощью деревьев решений 26
3.1 Эволюционные алгоритмы и деревья решений 26
3.2 Представление процедур обработки изображений с помощью деревьев
решений 27
3.3 Эволюция процедур обработки изображений 29
3.4 Функция фитнесса генетического алгоритма 32
3.5 Генерация произвольной процедуры обработки 34
3.6 Мутация 37
3.7 Скрещивание 39
3.8 Выводы по главе 39
4 Практическое внедрение и результаты экспериментов 40
4.1 Аппаратная часть стенда 42
4.1.1 Центральный вычислитель 43
4.1.2 Датчик освещенности 44
4.1.3 Датчик частиц 45
4.1.4 Датчик расстояния 46
4.1.5 IP-камера 47
4.2 Описание программного обеспечения стенда 48
4.2.1 Деревья решений 49
4.2.2 Операции над деревьями решений 50
4.2.3 Генерация системы обнаружения объекта 52
4.3 Экспериментальные исследования 53
4.3.1 Методика проведения эксперимента 54
4.3.2 Проведение эксперимента и результаты анализа данных 56
4.4 Выводы по главе 59
Заключение 60
Список сокращений 61
Список использованных источников 62
Приложение
Актуальность работы. Современные встраиваемые системы (ВС) управления представляют собой результат междисциплинарного проектирования. Известно, что номенклатура и диапазон применения таких систем довольно широки: автоматизация производств, системы управления и контроля, автодорожные и транспортные системы, космические системы, авионика и ракетостроение, военно-промышленные комплексы и др. [1,2,3]. Традиционное представление вычислительной элементной базы таких систем выходит далеко за границы описания только конструкции и схемотехники, затрагивая все больше вопросы усложнения алгоритмов работы, повышения уровня гибкости и абстракции проектирования программного обеспечения (ПО) [2].
Технология адаптивного управления также является обширной темой, наиболее часто такие технологии применяются во встраиваемых системах обработки изображений, поиска и анализа различных объектов на основе получения визуальной информации [4]. Данные системы представляют собой аппаратно-программные комплексы (АПК) и предназначены для идентификации в режиме реального времени объектов контроля с помощью распознавания образов на изображениях, полученных посредством видеокамер [5].
В настоящее время существует несколько основных подходов к разработке программного обеспечения таких систем. Один из них основывается на использовании библиотек процедур, реализующих различные алгоритмы обработки и обнаружения объектов на изображении [6]. Обычно такие библиотеки содержат несколько сотен процедур которые разделяются на группы: геометрические преобразования изображений, фильтрация,
обнаружение объектов по некоторым признакам и т.д. [5]. К библиотекам такого рода относятся AForge.NET [7], VXL [8], LTI и библиотека OpenCV [9], которую стоит отметить особенно, т.к. она является библиотекой с открытым исходным кодом и содержит значительное количество встроенных алгоритмов обработки изображений. Разработчику предоставляется возможность самостоятельно выбрать интересующие его процедуры и интегрировать в программное обеспечение разрабатываемой встраиваемой системы.
В основе другого подхода лежит идея использования специализированных программно-аппаратных комплексов. Системы, построенные по этому принципу, уже содержат необходимый набор процедур обработки под некую узкоспециализированную задачу, но кроме того позволяют конечному пользователю настраивать некоторые заранее предопределенные параметры функционирования [10].
Исследованиям теории управления означенных систем посвящены работы Ю.М. Баяковского, У. Претта, Т.С.Хуанга, Д. А. Форсайта, Р. Гонсалеса, Д.Ю. Буряка, Значительный вклад в разработку методов и алгоритмов адаптивного управления внесли Д.Л. Фогель. Б.А. Алпатов, С.Ю. Желтов, М.Н. Красильщиков, Г.Г. Себряков,В.Д. Курганов, В.К. Баклицкий.
Тем не менее, известные работы не позволяют однозначно утверждать о создании эффективных, с современной точки зрения, подходов к разработке программного обеспечения для адаптивного управления встраиваемыми системами обработки изображений. Предварительный анализ позволяет выделить ряд принципиальных положений, а именно:
• известно большое число алгоритмов обработки изображений, однако для подавляющего числа этих алгоритмов нельзя заранее предсказать насколько оптимально их применение к некоторой конкретной задаче [11];
• почти для каждой задачи всегда можно подобрать ряд алгоритмов, для ее решения, но выбор наиболее подходящего в большинстве случаев основывается на результатах тестирования. При этом разработчик или пользователь готовой системы вынужден создавать и тестировать различные комбинации существующих или уже реализованных в системе алгоритмов;
• программно-алгоритмическое обеспечение предъявляет определенные требования к изображениям, содержащим образы детектируемых или анализируемых объектов. Многие встраиваемые системы применяются в сложных нестационарных условиях эксплуатации, например, когда освещенность зоны контроля является переменчивой и непредсказуемой, а объекты контроля обладают различными характеристиками и могут быть загрязнены. При этом, как правило, в системах используются средства формирований изображений (видеокамеры, объективы, средства освещения и т. п.) которые не учитывают особенности работы конкретных алгоритмов распознавания [12]. Это приводит к тому, что в сложных условиях большинство средств формирования изображений представляют низкокачественные изображения объектов, которые малопригодны для работы. Из-за этого эффективность алгоритмов распознавания и, как следствие, самой встраиваемой системы управления значительно снижается;
• адаптивные свойства систем, в основном, нацелены на повышение качества изображений распознаваемых объектов (адаптивное управление параметрами средств формирования изображений), в то время как это свойство не распространяется на сами алгоритмы обработки и не затрагивает более высокий уровень поведения встраиваемой системы [11]. Таким образом, в тематике адаптивного управления встраиваемыми
системами, актуальной задачей является разработка новых способов управления встраиваемыми системами. Требуется переход от адаптивного управления аппаратной частью систем, которое по существу представляет собой подстройку той или иной аппаратуры по ограниченным параметрам и для ограниченного набора функций системы к адаптивному управлению системой в целом. Следовательно, необходима реализация нового принципа программирования таких систем.
На основании вышеизложенного, можно сделать обоснованное предположение о том, что значимые результаты могут быть получены при использовании генетического программирования, например, на базе эволюционных алгоритмов. При этом следует использовать известные решения в сфере обработки изображений, с помощью уже реализованных библиотек алгоритмов [11]. Возникает потребность в интегрированном подходе и проведения исследований для определения технических возможностей адаптивного управления встраиваемыми системами обработки изображений в сочетании с информацией об окружающих условиях, показателями параметров внешней среды, критически влияющих на основные алгоритмы распознавания объектов[12].
То есть, необходимо не только совершенствовать библиотеки или алгоритмы обработки изображений (что несомненно важно), но в первую очередь разрабатывать новые принципы их использования. Кроме того, крайне важно разработать алгоритмы конструирования процедур распознавания с привязкой к конкретным условиям эксплуатации; требуется особое программное решение, позволяющее обеспечить возможность анализа полученных данных, что позволит осуществить разработку адекватных моделей развития встраиваемых систем.
Цель и задачи. Основной целью проводимого исследования является разработка метода генетического программирования для формирования системы обнаружения объекта и программно-аппаратного комплекса на основе модуля адаптивного интеллектуального агента.
Для достижения поставленной цели определены следующие основные задачи исследования:
1) обзор основных алгоритмов детектирования объектов и алгоритмов обработки изображений, реализованных в библиотеке OpenCV, способных повысить эффективность работы системы распознавания при негативном влиянии окружающей среды на качество изображений;
2) разработка метода автоматического генерирования эффективных процедур фильтрации изображений в виде деревьев решений с использованием адаптации к показателям датчиков окружающей среды и деревьев решений;
3) разработка системы критериев и параметров для оценки качества работы предложенного способа;
4) проведение испытаний полученного подхода на действующем производстве. Сбор, обработка и интерпретация данных о качестве работы программно-аппаратного комплекса.
Научная новизна. Предложен метод генетического программирования, базирующийся на принципе поиска дерева алгоритмов функционирования системы, позволяющий осуществлять выбор процедуры управления ВС в изменяющихся условиях окружающей среды.
Практические результаты работы. Основным, практическим результатом исследования является разработанное алгоритмическое, программное и аппаратное обеспечение промышленного комплекса, примененного на действующем производстве при производстве литых дисков в компании К&К г. Красноярск (справка о внедрении см. приложение В).
Положения, выносимые на защиту
1. Метод генетического программирования алгоритма работы системы распознавания объектов.
2. Метод автоматического генерирования популяции, отличающийся от известных способом адаптивного выбора структуры деревьев решений из процедур библиотеки обработки изображений и показаний датчиков внешней среды, позволяющий повысить эффективность решения задач распознавания объектов в сложных условиях применения.
3. Метод селекции и мутации для генетического программирования, отличающийся от известных селективным способом формирования и отбора
последующих поколений особей в зависимости от приведенной оценки погрешностикачества работы системы обнаружения объектов.
4. Алгоритмическое и программное обеспечение комплекса ВС.
5. Результаты практического внедрения аппаратно-программного модуля.
Достоверность обеспечена корректным эволюционных алгоритмов и библиотек непротиворечивостью исследованиям других сертифицированного программного и аппаратного обеспечения, необходимым объемом экспериментальных исследований, а также подтверждается результатами практических исследований.
Публикации. Основное содержание диссертации отражено в 2 печатных работах (в том числе одна статья в издании, рекомендованном ВАК), получено свидетельство о регистрации программ для ЭВМ №2018612519 от 18 февраля 2018 г.
Личный вклад автора. Основные результаты, изложенные в работе, получены либо непосредственно автором, либос егоучастием.
Объем и структура диссертации. Полный объем диссертации составляет 71 страницу, в том числе: 30 иллюстрации, 10 таблиц, 3 приложения, список литературы из 31 источника.
Данная работа посвящена исследованию методов и средств самоадаптивного управления встраиваемыми системами, а также разработке метода и программного обеспечения на основе эволюционных методов и генетического программирования. Для достижения цели, заявленной в работе, был осуществлён обзор и анализ существующих методов разработки интеллектуальных систем для программного обеспечения ВС. На основании проведённого анализа были обозначены основные задачи, определены методы их решения. Была разработана схема работы встраиваемой системы, для которой было выбрано соответствующее оборудование и разработан алгоритм функционирования. Разработанная система была внедрена в эксплуатацию на действующем предприятии ООО «K&K» г. Красноярск, при производстве автомобильных дисков на автоматизированной линии механообработки. Результаты диссертационной работы послужат материалом для дальнейших исследований применения эволюционных методов для разработки самоадаптивных интеллектуальных систем управления ВС.
1. Букатов, А. А. Программирование многопроцессорных вычислительных систем : учебное пособие / А. А. Букатов, В. Н. Дацюк, А. И. Жегуло. - Ростов- на-Дону : Изд-во ООО «ЦВВР», 2003. - 208с.
2. Гэри, М. Вычислительные машины и трудноразрешимые задачи : пер. с англ. /М.Гэри, Д. Джонсон. - Москва:Мир, 1982. - 416с.
3. Vahid F. Hardware/Software Codesign / F. Vahid // Proceedings of International Workshop, Colorado :Estes Park,2002. 2002. -P. 1-6.
4. Алпатов. Б. А. Системы автоматического обнаружения и сопровождения объектов. Обработка изображений и управление : науч. изд. / Б. А. Алпатов. - Москва : Радиотехника, 2008. - 176 с.
5. Обработка и анализ цифровых изображений с примерами на LabVIEW IMAQ Vision : учеб. пособие / Ю. В. Визильтер, C. Ю. Желтов, В. А. Князь, А. Н. Ходарев, А. В. Моржин. - Москва :ДМКПресс, 2007. - 464с.
6. Гонсалес Р. Цифровая обработка изображений / Р. Гонсалес, Р. Вудс. - Москва :Техносфера,2006. - 1072 с.
7. AForge.NET Framework [Электронный ресурс] // Google Code - Режим доступа: http://code.google.com/p/aforge/
8. VXL Framework [Электронный ресурс] // Google Code - Режим доступа: http://code.google.com/p/vxl/
9. Bradsky G. Learning OpenCV. Computer Vision with the OpenCV Library / G. Bradsky,A. Kaebler. - New York : O'RELLY, 2008. - 253 с.
10. Евдокимов, Ю. К. Система технического зрения для геометрических микроизмерений / Ю. К. Евдокимов, М. И. Николаев // Вестник КГТУ. — 2006. —Выпуск 4(44). — С. 21 -23.
11. Davies E. R. Machine Vision: Theory, Algorithms, Practicalities : Academic Press/ E. R. Davies. - San Diego :Elsevier,1997. - 750 c.
12. Проненко В. Д. Оценка эффективности разработанного программного комплекса, использующего-поиск визуальной информации в базе данных при принятии решений. / В. Д. Проненко // Вестник РГРТУ - 2005. - № 4. - С. 31-34.
13. Платунов А. Е. Архитектурная модель цифровых вычислительных систем для встроенных применений. // Изв. вузов. Приборостроение. Т.44. №3. 2001. С.8 -15.
14. Платунов А. Е. Заказные вычислительные платформы информационно- управляющих систем. Презентация компании ЛМТ. // Электронные компоненты. № 12. 2005. С. 42.
15. Рыбаков А. П. Современные открытые международные стандарты для построения интегрированных измерительных и управляющих систем реального времени // Мир компьютерной автоматизации. 1995. - №1. - С.5 - 12.
16. Blume H. Parallel Predictive Motion Estimation using Object Recognition Methods / H. Blume, A. Amer // Proceedings of the European Workshop and Exhibition on Image Format Conversion and Transcoding. - vol. 9. - no. 2. - PP. 813¬631.
17. Горбань A. H. Обучение нейронных сетей / А. Н. Горбань. - Москва : СП «ПараГраф»,1990.160с.
18. Mari M. Interactive object detection using a fuzzy image segmentation approach. / M. Mari // Machine GRAPHICS & VISION 1998. - vol. 7. - no. 4. - PP. 765-780.
19. Bishop С. M. Neural Networks and Pattern Recognition / C. M. Bishop. - Oxford : Press, 1995.-168p.
20. Fogel L. J. Artificial Intelligence throw Simulated Evolution / J. L. Fogel, A. J. Owens. - New York : Wiley, 1966. - 265 p.
21. Mandavilli S. Adaptation in genetic algorithms / S. Mandavilli, L. M. Patnaik // In: Genetic algorithms for pattern recognition. CRC Press. - 1996. - P.45- 64.
22. Скобцов Ю. А. Основы эволюционных вычислений / Ю. А. Скобцов. - Донецк :ДонНТУ, 2008. -326с.
23. Eiben A. Adaptation in evolutionary computation: a survey / A. Eiben, R. Hinterding, Z. Michalevicz // Proceedings of IEEE international conference on evolutionary computation., New York : Piscataway, 1997 - P.65 - 69.
24. Фурман, Я. А. Введение в контурный анализ, приложения к обработке изображений и сигналов / Я. А. Фурман, А. В. Кревецкий, А. К. Передреев [и др.] ; под. общ. ред. Я. А. Фурмана. — Изд. 2-е, испр. - Москва : ФИЗМАТЛИТ, 2003.—592с.
25. Seeger U. R. Fast corner detection in grey-level images/ U. R. Seeger // Pattern Recogn.Lett.,1994,№15(7),pp.669-675.
26. Максимов H. A. Алгоритмы цифровой обработки изображений : Учеб. Пособие / H.A. Максимов, A. C. Василевский. - Москва : Изд-во МАИ, 1995, 31
с.
27. Lee C. H. Fast Motion Estimation Algorithm Based on the Block Sum Pyramid /C.H. Lee // IEEE Trans. Image Processing, vol. 6,pp. 1587 - 1 591, Nov. 1997.
28. Николаев, М. И. Аппаратная реализация системы технического зрения для измерения геометрии микрообъектов Текст. / М. И. Николаев // Электронное приборостроение. Научно-практический сборник. Выпуск 3(44). —Казань:ЗАО«Новое знание», 2005. - С.19 - 29.
29. Koza, John R. Genetic Programming: On Programming Computer by Means of Natural Selection and Genetics / John R. Koza. Cambridge, MA: The MIT Press, 1992.
30. Goldberg, D.E. Genetic Algorithms in Search, Optimization, and Machine Learning / D.E. Goldberg. Reading, Massachusetts: Addison-Wesley, 1989.
31. Compact Optical Dust Sensor [Электронный ресурс] // SparkFun - Режим доступа: https://www.sparkfun.com/datasheets/Sensors/gp2y1010au_e.pdf