Список литературы
-
Олифер В.Г., Олифер Н.А. Компьютерные сети. Принципы, технологии, протоколы, 2-е изд . СПб, Питер-пресс, 2002
-
Новиков Ю.В. Локальные сети : Архитектура, алгоритмы, проектирование Москва, ЭКОМ, 2000.
Разработка средств обучения КОДИРОВАНИЮ на языках высокого уровня с помощью игровых тренажеров
Соловьёв А.С., Алимов А.А. (ВолгГТУ, гр. ИВТ-364)
Научный руководитель – Шабалина О.А.
Волгоградский государственный технический университет
E-mail: andrey-solovyov@narod.ru
В настоящее время при обучении программированию возникает ряд проблем, связанных с недостатком уровня практических навыков решения задач, возникающих при составлении и кодировании алгоритмов. Актуальной остается проблема способа обучения. Широко развиваются альтернативные формы обучения на основе интерактивных электронных учебников, дистанционного обучения с использованием web-технологий и других программных систем, реализующих концепцию e-Learning.
В ходе исследования средств обучения был особо выделен игровой подход к обучению, который помогал преодолеть многие проблемы, такие, как, например, недостаток мотивации, недостаточность внимания к приобретению практических навыков при изучении синтаксиса языков программирования [2].
Обучение программированию предполагает как изучение синтаксиса языков программирования, основных принципов кодирования программ, так и получение навыков составления алгоритмов. В связи с этим, можно разделить курс обучения на две, разные с точки зрения методов программирования, части. Первая часть курса позволяет обучаемому приобрести навыки алгоритмизации. Это было решено реализовать на принципах визуального программирования. Такое решение позволяет абстрагировать изучение программирования на первом этапе от синтаксиса конкретных языков программирования и позволить сфокусировать внимание на составлении алгоритмов. Вторая часть курса позволяет получить навыки кодирования, используя синтаксическую и лексическую базу конкретного языка программирования высокого уровня. Такой подход в разделении курса позволил выделить задачу изучения синтаксиса от изучения алгоритмизации.
В ходе разработки концепции игровых тренажеров была использована концепция интерактивных обучающих систем [1]. С учетом двухуровневой структуры курса обучения было решено выделить два типа игровых тренажеров. Различие состоит в способе формирования программы: визуальный способ в случае с первой частью курса и структурного кодирования во втором случае. С точки зрения концепции игровых тренажеров, такие различия отражаются в правилах игры. Первый тип реализован как игра, использующая принципы визуального программирования для составления алгоритмов. Второй тип тренажера позволяет получать навыки кодирования программ, используя принципы структурного программирования на языках программирования высокого уровня.
Оба типа тренажеров в совокупности составляют комплекс средств обучения программированию. Использование комплекса реализует последовательное обучение. При этом тренажер, использующий принципы визуального программирования выступает, как введение в изучение программирования. С его помощью игрок получает представление об основах технологии программирования. Вторая часть курса позволит практиковаться в кодировании.
Игровые тренажеры кодирования реализованы на принципе игры, в которой необходимо формировать поведение игрового персонажа при помощи составления программ его действий. В ходе прохождения игры игроку ставятся задания, заключающиеся в совершении персонажем некой последовательности действий, задаваемой самим игроком, приводящей к получению желаемого, с точки зрения сюжета игры, результату.
В ходе разработки концепции комплекса средств обучения программированию была выделена архитектура. «Тренажер» включает в себя правила формирования поведения игрового персонажа, на основе которых игрок составляет алгоритм его функционирования («Поведение»). Используя игровое ядро, поведение переносится в игровой мир, в котором игроку предлагается проверить его на исполнение.
Рис. 1 Архитектура комплекса средств обучения программированию.
Тренажер взаимодействует с базой данных заданий, определяющей курс обучения. Курс сменный, что позволяет на основе одного и того же тренажера изучать несколько языков программирования. Для этого предусмотрен «Наполнитель курса», который используется экспертом в изучаемой области для составления заданий.
На разработку получено финансирование из средств Федерального фонда содействия развитию малых форм предприятий в научно-технической сфере. Было организовано малое предприятие, в рамках которого ведется реализация данной концепции. В настоящее время разработка находится на этапе физической реализации продукта.
Список литературы
1. Разработка игровых тренажеров для обучения программированию/А.С.Соловьев, А.А.Алимов// Третья международная научно-техническая конференция «Инфокоммуникационные технологии в науке, производстве и образовании (ИНФОКОМ-3)», г. Кисловодск, 1-5 мая 2008 г./ СевКавГТУ, филиал Ставропольского государственного технического университета – С. 255-267.
2. Разработка игровых тренажеров для обучения программированию/А.С. Соловьев, А.А.Алимов, О.А.Шабалина// ИННОВАЦИОННЫЕ ТЕХНОЛОГИИ В ОБУЧЕНИИ И ПРОИЗВОДСТВЕ: Материалы V Всероссийской научно-практической конференции, 4-6 декабря 2008 г.: В 3 т. Том 2. – Волгоград, 2008. – 225-229 с.
ПРОГРАММНЫЙ МОДУЛЬ ИНТЕРАКТИВНОЙ СЕГМЕНТАЦИИ РАСТРОВЫХ ОБЪЕКТОВ МЕТОДОМ АКТИВНЫХ КОНТУРОВ
Филиппов М.В. (КАСУ-042)
Научный руководитель – Петров В.О.
Камышинский технологический институт (филиал) ВолгГТУ
Тел.:(84457) 9-45-67; факс 9-43-62; E-mail: kti@kti.ru
Задача правильного выделения объектов интереса на растровом изображении является одной из важных составляющих автоматизированных систем распознавания форм и систем извлечения морфологических характеристик объекта. Универсальных способов выделить интересующий фрагмент изображения, до настоящего момента, не выявлено. В большинстве случаев человек принимает значительное активное участие при правильном выделении объекта. Актуальной задачей является качественное выделение растровых объектов, имеющих монотонную текстуру при не четких границах (рисунок 1). Прикладная область применения алгоритмов, решающих такого рода задачи: сегментация медико-биологических препаратов, сегментация дефектов литья в металлургии и т.п.
Рис. 1 – Растровый объект с нечеткими границами
Рынок программного обеспечения может предоставить удобные решения для ручного выделения растровых объектов, что очень критично с точки зрения точности результата и затраченного времени. Примеры таких программных продуктов: Addobe Photoshop, Nikon NX2, Paint.Net.
Авторами предлагается программа для интерактивной сегментации растровых объектов на изображении. Целевое предназначение программы – отделить объекты интереса от фона. Помимо полуавтоматического выделения остается возможность ручного выделения объектов. Выходом программы является файл специальной структуры для дальнейшего исследования интересующих объектов (сравнительный анализ, распознавание, формирование базы данных растровых объектов). Прикладное применение: подготовка файлов для распознавания и классификации изображений дефектов металлических отливок; подготовка информации для извлечения количественных характеристик из изображений медико-биологического препарата.
Основные принципы работы модуля интерактивной сегментации растровых объектов интереса методом активных контуров[1]. Суть алгоритма такова, что ищется оптимум между силами сдавливающих и распирающих заданный контур. Ниже дается описание алгоритма.
Под активным контуром понимается изменяемый контур, который состоит из n точек в двумерном пространстве:
V = {v1, …, vn}, где vi = (xi, yi), i = {1, …, n}
Каждая точка контура итеративно подходит к границе объекта, решая задачу минимизации критерия Ei. Для каждой точки, близкой к вершине vi считается значение Ei:
Ei = aEint(vi) + bEext(vi)
где Eint(vi) – энергетическая составляющая, зависящая от формы контура; Eext(vi) – энергетическая составляющая от свойств изображения, таких как градиент; a, b – весовые коэффициенты, обеспечивающие вклад каждой из энергий в общее уравнение критерия.
Ei, Eint, Eext – квадратные матрицы. Значение в центре каждой из матриц энергии соответствует энергии в точке vi (i-й вершины контура). Остальные значения в матрицах энергии соответствуют энергии в каждой точке, находящейся в окружении vi.
Другими словами, внутренняя энергия расширяет замкнутый контур, а внешняя не дает расти ему до бесконечности. Одним из способов заставить замкнутый контур увеличиваться, является итеративная миграция точек в противоположную от геометрического центра сторону. Минусом такого подхода является не равномерное «разрастание» контура при не выпуклых формах.
Внешняя энергия состоит из двух сил. Первая не дает отдельным точкам сильно отдалиться от соседних. Вторая притягивает контур к границам объекта. Авторы предлагают добавить еще один вид энергии, опираясь на особенности прикладной задачи (текстурная монотонность фона) – энергия «яркостной целостности». При разрастании замкнутого фона происходит расчет средней яркости выделяемого объекта и энергия «яркостной целостности» не позволит контуру перейти на другой объект, имеющий другую яркость. Это бывает нужно, когда отсутствуют явные границы объекта, при этом контур не сможет к ним «притянуться».
Таким образом, пользователю программы предоставляется универсальный механизм выделения растровых объектов, имеющих монотонную текстуру и не четкими границами.
Ниже, на рисунке 2 изображена экранная форма модуля интерактивной сегментации растровых объектов методом активных контуров.
Рисунок 2 – Экранная форма модуля интерактивной сегментации
Принципы работы модуля. Пользователю достаточно определить настроечные коэффициенты алгоритма, сформировать контур любой формы внутри интересующего объекта и нажать кнопку «Монтировать контур». Настроечные коэффициенты берутся в соответствии с особенностями прикладной задачи. Например, если отсутствует четкие границы, то коэффициент при энергии градиента следует сделать относительно не большим, а при энергии объекта (энергия яркостной целостности) наоборот, большим.
Разрабатываемый продукт найдет свое применение в большинстве предметных областях, где требуется работа с цифровыми изображениями. В частности, апробация работы комплекса будет проводиться в области дефектов металлического литья и медицине.
ПРОГРАММА, ИЗВЛЕКАЮЩАЯ КОЛИЧЕСТВЕННЫЕ
ХАРАКТЕРИСТИКИ РАСТРОВЫХ СЕГМЕНТОВ
Хрупин А.В. (КВТ-052)
Научный руководитель – Петров В.О.
Камышинский технологический институт (филиал) ВолгГТУ
Тел.:(84457) 9-45-67; факс 9-43-62; E-mail: kti@kti.ru
Процедура измерения объектов на растровом изображении встречается в различных сферах деятельности. В медицине – оценка параметров медико-биологического препарата (электрофорез белка), в металлургии – измерение метрических характеристик брака, в криминалистике – оценка физических размеров объектов на фотографии.
К количественным характеристикам можно отнести: свойства контура (степень округлости, степень шероховатости, моменты 2-й и 4-й степени и т.п.), общие свойства (средние значения яркости, контрастности, насыщенности, доли белых и черных точек и т.п.), свойства гистограмм (яркости, контрастности, насыщенности, других цветовых характеристик).
Подобных программ и систем до настоящего момента не найдено. Анализ осуществляется опытными специалистами, руководствуясь теоретическими знаниями и собственным опытом.
Авторы предлагают программу, позволяющую оперативно описать растровый объект интереса по множеству количественных критериев.
Входной информацией является множество файлов специальной структуры, которые подлежат различного рода измерениям. Структура файла описана в таблице 1.
Таблица 1 – Структура входного файла.
Название поля
|
Тип
|
Описание
|
Rimage
|
Bitmap
|
Фрагмент растрового изображения, содержащий объект интереса
|
Foto
|
Bitmap
|
Фотография, на которой содержится растровый объект интереса
|
ContourPoints
|
Point[]
|
Множество точек контура
|
Scale
|
Double
|
Масштаб
|
Text
|
String
|
Название объекта
|
Выходной информацией также является файл специальной структуры, описание которого содержится в таблице 2.
Таблица 2 – Структура выходного файла.
Название поля
|
Тип
|
Описание
|
Rimage
|
Bitmap
|
Фрагмент растрового изображения, содержащий объект интереса
|
Foto
|
Bitmap
|
Фотография, на которой содержится растровый объект интереса
|
ContourPoints
|
Point[]
|
Множество точек контура
|
Scale
|
Double
|
Масштаб
|
Text
|
String
|
Название объекта
|
ContourLength
|
Double
|
Длина контура
|
AverageBright
|
Double
|
Средняя яркость
|
AverageHue
|
Double
|
Средняя насыщенность
|
Продолжение таблицы 2
Название поля
|
Тип
|
Описание
|
AverageSaturation
|
Double
|
Средняя контрастность
|
RadiusProportion
|
Double
|
Отношения минимального радиуса к максимальному
|
RoughnessDegree
|
Double
|
Степень шероховатости
|
LowFrequencyQuota
|
Double
|
Отношение низких частот к высоким
|
Moment2
|
Double
|
Момент 2 степени
|
Moment4
|
Double
|
Момент 4 степени
|
Histogramm1
|
int[]
|
Гистограмма по яркости
|
Histogramm2
|
int[]
|
Гистограмма по контрастности
|
Histogramm3
|
int[]
|
Гистограмма по насыщенности
|
Histogramm4
|
int[]
|
Массив ширины гистограмм
|
WhiteDegree
|
Double
|
Количество белых точек на растровом объекте
|
BlackDegree
|
Double
|
Количество темных точек на растровом объекте
|
На рисунке 1 представлена экранная форма программы. Апробация основных алгоритмов осуществлялась на изображениях дефектов металлических отливок. В основной области программы сосредоточены результаты выполненных измерений. Далее, они используются в других программах, решающих задачу классификации объектов и распознавания образов.
Рис. 1 – Экранная форма программы
Программа извлекает количественные характеристики из растровых сегментов, вырезанных из фотографий ранее, затем сохраняет полученную информацию в файлы специальной структуры для дальнейших исследований. Прикладное применение: выявление информации для задач распознавания и классификации изображений дефектов металлических отливок; подготовка информации для сравнительного анализа характеристик медико-биологического препарата.
РАЗРАБОТКА ПРОГРАММЫ УПРАВЛЕНИЯ
МОБИЛЬНЫМ РОБОТОМ. РОБОТ–ОХОТНИК
Шеховцов А.В. (КВТ-052)
Научный руководитель – Шуляков Е.А.
Камышинский технологический институт (филиал) ВолгГТУ
Тел.: (84457) 9-45-67; факс 9-43-62; E-mail: kti@kti.ru
Робототехника – перспективное и популярное направление технических наук. В настоящее время является одной из движущих сил, определяющих прогресс во многих областях. К таким областям можно отнести как «традиционные» (промышленность, автоматизация производства, военное дело, медицина, космос) так и сравнительно молодые области (быт, индустрия развлечений, игрушки). Робототехника включает различные задачи и направления. К таким задачам можно отнести разработку механики, электроники и программную реализацию различных алгоритмов управления. Основой систем управления современных роботов и других современных устройств являются микроконтроллеры. Особенностью микроконтроллеров, является то, что с их помощью легче и зачастую гораздо дешевле реализовать различные схемы[1].
В рамках данной работы были поставлены две основные цели:
-
Необходимо изучить процесс программирования современной микропроцессорной системы. Необходимо изучить особенности программирования микроконтроллера, на котором построена система управления роботом.
-
После выполнения первой задачи следует разработать программу управления роботом, обеспечивающую поиск и преследование противника в пределах арены.
Общей целью работы можно назвать изучение принципов разработки программ для микропроцессорных систем и получение практических навыков в этой области.
Выполнение поставленных целей возможно при выполнении следующих задач: изучения модели робота, исследования средств разработки программ для микропроцессорных систем на базе микроконтроллеров Atmel семейства AVR, выбора среды программирования, разработки программы управления.
Для программирования микроконтроллеров AVR существует немало средств разработки. Среди компиляторов и отладчиков, существует ряд программных продуктов, в которых в наилучшей степени реализованы необходимые возможности по управлению аппаратными средствами микроконтроллеров AVR.
Были рассмотрены наиболее популярные компиляторы такие как компиляторы языков Ассемблер, Си и Бейсик. Были рассмотрены среды программирования, использующие перечисленные языки. Для рассмотрения были выбраны AVR Studio (Ассемблер), Code Vision AVR (СИ) и BASCOM AVR (Бейсик). На основе достоинств и недостатков перечисленных сред, в работе для выполнения задач по разработке программ для микроконтроллера была выбрана среда BASCOM AVR. Основными причинами выбора являются: простой интерфейс, лёгкая настройка, встроенный компилятор, программатор, построчный отладчик. Легкий для изучения Basic - подобный язык так же предпочтительней по сравнению с аналогами. При этом, несмотря на простоту языка, компилятор генерирует достаточно быстрый код. Так же неоспоримым преимуществом использования среды BASCOM является большое количество готовых библиотек.
Среда BASCOM является коммерческим продуктом. Однако ограничения на объем, кода демонстрационной версии программы несущественны и позволяют использовать среду в учебных целях.
Как уже упоминалось выше, основной задачей работы является разработка программы управления роботом. В рамках данной задачи необходимо разработать и программно реализовать следующие алгоритмы: алгоритм управления движением робота в пределах арены, алгоритм обнаружения противника, алгоритм преследования противника.
Ключевое значение в рамках данной работы имеет изучение имеющейся модели робота. Модель робота представляет собой небольшой мобильный робот, управляемый микроконтроллером ATmega8. Это достаточно мощный контроллер семейства MegaAVR с объемом памяти программ 8 Кб и большим количеством интегрированных периферийных устройств. Микроконтроллер легко программируется и имеет невысокую стоимость. Подсистема управления парой двигателей робота построена на микросхеме управления L293D. Обнаружение объектов перед роботом осуществляется при помощи инфракрасных датчиков отражения. Обнаружение границ арены осуществляется при помощи пары из инфракрасного фотодиода и инфракрасного фотоприёмника.
На данном этапе можно констатировать следующие результаты. Изучение модели робота привело к изучению микроконтроллера, на котором построена система управления, а именно микроконтроллера ATmega8. Были изучены спецификации по данному микроконтроллеру, изучены принципы управления ресурсами микроконтроллера (таймерами, портами и т.п.). Так же для понимания принципов управления подсистемой движения робота изучена логика работы драйвера двигателей L293D и логика работы датчиков. Проведён обзор сред программирования. Как уже упоминалось выше, была выбрана среда программирования BASCOM AVR. В настоящее время мною ведётся разработка программы управления именно в этой среде.
Список литературы
1. Голубцов М.С., Кириченкова А.В., Микроконтроллеры AVR: от простого к сложному. – М.: Солон-Р, 2005. – 302с.
2. Евстифеев А.В. Микроконтроллеры AVR семейств Tiny и Mega фирмы Atmel. – М.: Додэка XXI, 2005. – 560с.
Достарыңызбен бөлісу: |