• A
  • A
  • A
  • АБВ
  • АБВ
  • АБВ
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта

Бакалаврская программа «Программная инженерия»

Учебная практика студентов 1 курса

С 29 июня по 11 июля 2015 г. студенты образовательной программы бакалавриата «Программная инженерия» проходили учебную практику. В рамках практики студенты познакомились с основами компьютерного зрения и обработки изображений (преп. Елена Сибирцева), языка программирования Python (преп. Сергей Пронин, Александр Балабан), прикладной теории автоматов  (ст. преп. Леонид Дворянский). Преподавателям помогали учебные ассистенты – студенты 2 и 3 курсов ОП Программной инженерии.

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

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

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

К наиболее интересным проектам, выполненным студентами:

·        Идентификация  логотипа на фото;

·        Распознавание деталей изображения, например, цвет глаз,  и замена этих деталей на другие;

·        Определение по фотографии резистора значения сопротивления;

·        Распознавание графа – по изображению графа создается описание;

·        Выделение кадра из видеопотока по какому-либо признаку, например, по улыбке;

·        Раскрашивание черно-белых узоров комплиментарными цветами

·        Определение количества слов-«паразитов» в речи человека по аудиозаписи в реальном времени.

В рамках сжатого курса по теории автоматов и теории трансляторов студенты изучили основы построения трансляторов (компиляторов) с помощью современного инструмента создания компиляторов (или «compiler compiler») ANTLRv4. Конечно, создание мощного оптимизирующего индустриального компилятора (такого как Visual Studio Microsoft C/C++ compiler или C++ для GNU Compiler Collection) это задача которая решается силами целого коллектива разработчиков. Однако, освоившись с технологией создания трансляторов, студенты 1 курса уже предложили интересные идеи по написанию небольших языков:

·        для управления процессами операционной системы;

·        с поддержкой сохранения истории изменений переменных с возможностью отката;

·        для симуляции биологических систем;

·        для симуляции работы аэропорта.

Дворянский Леонид Владимирович
Научно-учебная лаборатория процессно-ориентированных информационных систем (ПОИС): Научный сотрудник

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

(Учебные курсы и исследования в области трансляции и разработки языков программирования: 

dragonbook.stanford.edu, groups.csail.mit.edu/commit/, www.cl.cam.ac.uk/research/cprg/research.html,

www.eecs.berkeley.edu/Research/Areas/PS/

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