Ru
En

Новые образовательные стратегии в современном информационном пространстве

New Educational Strategies in Modern Information Space - 2022

Баранова Е. В.

профессор кафедры цифрового образования

 РГПУ им. А.И. Герцена,

г. Санкт-Петербург

Солодкая М. А.
студентка 4 курса института информационных
технологий и технологического образования
РГПУ им. Герцена,
г. Санкт-Петербург

 

Методика обучения бакалавров педагогического образования технологиям компьютерного зрения

 

Статья посвящена вопросу обучения студентов технологиям компьютерного зрения. Рассмотрены разработанные авторами компоненты методики, включая содержание обучения, теоретический материал и лабораторный работы, демонстрационные примеры, наглядно иллюстрирующие алгоритмы компьютерного зрения, примеры тестов для контроля знаний. Программная реализация алгоритмов осуществляется на языке Python с использованием библиотек Numpy и OpenCV.

 

Baranova E. V.

doctor of Pedagogical Sciences, Professor,

HSPU

St. Petersburg, Russia

Solodkaya M. A.

student of the Institute of Information

technology and technology education,

HSPU

St. Petersburg, Russia

 

Methodology for teaching bachelors of pedagogical education in computer vision technologies

 

The article is devoted to teaching students computer vision technologies (CV). The authors consider various components of the methodology developed by them, including the content of training, theoretical materials and laboratory work, demonstrative examples that clearly illustrate CV algorithms, and examples of tests for knowledge control. The software implementation of the algorithms is carried out   using Python and the Numpy and OpenCV libraries.

 

Технологии искусственного интеллекта (ИИ) используются в различных сферах нашей жизни, таких как: логистика, финансы, медицина, военное дело, спорт, образование и во многих других. Искусственный интеллект и вычисления высокого уровня могут привести к новым формам представления и передачи информации и знаний, которые, в свою очередь, помогут решить сложнейшие задачи человечества. 

 

Одной из таких технологий искусственного интеллекта является компьютерное зрение (Computer vision, CV). Компьютерное зрение — это научное направление в области искусственного интеллекта и связанные с ним технологии получения изображений объектов реального мира, их обработки и использования полученных данных для решения разного рода прикладных задач без участия (полного или частичного) человека [4]. К таким задачам CV относятся: детектирование объектов, трекинг объектов, распознавание образов, сегментация, оценка глубины расстояния [5].

 

CV основывается на машинном обучении, которое, в свою очередь, является наукой о том, как заставить ИИ учиться и действовать как человек, а также сделать так, чтобы он сам постоянно улучшал свое обучение и способности на основе предоставленных нами данных о реальном мире [3]. Также CV использует особенности глубокого обучения. Глубокое обучение — это разновидность машинного обучения на основе искусственных нейронных сетей [1].

 

Встретить изобретение, которое основано на компьютерном зрении, несложно. С помощью систем CV Экзамус разработал технологию, которая анализирует поведение пользователей любых онлайн-сервисов с помощью распознавания лиц и обнаружения эмоций. Экзамус — система онлайн-прокторинга, которая решает ряд задач, в том числе, идентификация личности учащегося; анализ поведения учащегося в части соблюдения правил проведения онлайн-испытаний [6].

 

Таким образом, с каждым годом разработок, в которых применяются технологии CV, все больше.

 

Помимо этого, ИИ постепенно внедряют в учебные заведения, но не только как разработку, но и как обучение школьников ИИ, как это произошло в конце января 2021 года, когда в российскую начальную школу ввели обучение основам ИИ. Таким образом, специалисты, владеющие технологиями ИИ, востребованы уже сегодня, а не только в будущем.

 

Тема нашего исследования – разработка подходов к обучению будущих специалистов в области информатизации образования технологиям компьютерного зрения в условиях быстрых темпов их развития.  

 

Актуальность исследования определяется противоречием между необходимостью освоения технологий искусственного интеллекта, в частности, компьютерного зрения, школьниками, учителями, студентами, преподавателями вузов и недостатком методических материалов для этого освоения.

 

Разрабатываемая методика обучения студентов технологиям CV направлена на формирование у студентов следующих компетенций:

знать - основные понятия технологий компьютерного зрения, алгоритмы обработки (сущность, математический аппарат, назначение, области использования), способы программной реализации алгоритмов для решения различных задач с помощью языка программирования Python;

уметь: отбирать алгоритмы для решения различных классов задач, разрабатывать программы на языке Python с использованием пакета Numpy и библиотеки OpenCV для реализации технологий CV;

владеть: базовыми технологиями компьютерного зрения, инструментами для их программной реализации.

 

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

 

Структурно содержание обучения технологиям CV включает два базовых компонента: изучение алгоритмов и осуществление программной реализации простых алгоритмов.

 

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

 

Для рассмотрения в курсе были выбраны следующие алгоритмы: обработки изображений, вычисление разности между кадрами, отслеживание объектов. Основываясь на полученных знаниях, студент сможет расширить знания о языке программирования Python и овладеть основными навыками работы с технологиями CV.

 

В качестве языка для программной реализации был выбран язык Python, содержащий набор пакетов и библиотек, позволяющих разрабатывать программы, использующие в своей работе функции CV. Например, пакет Numpy предназначен для работы с большими многомерными массивами и матрицами. Библиотека OpenCV-Python содержит алгоритмы CV, обработки статичного изображения и видеоизображения. Все библиотеки представлены с открытым исходным кодом, что позволяет при обучении не только их использовать для реализации алгоритмов, но совместно со студентами анализировать программный код. Известно, что изучение профессионально написанного программного кода способствует у обучающихся развитию навыков программирования.

 

Важным средством при обучении студентов технологиям CV являются демонстрационные примеры, наглядно иллюстрирующие работу алгоритмов. Авторами разработан на языке Python набор демонстрационных примеров, которые могут использоваться студентами при выполнении лабораторных работ. Демонстрационные примеры содержат код программы и комментарии, которые позволят студенту понять логику алгоритмов, реализованных в программе, назначение переменных, команд и методов. Например, следующий фрагмент демонстрационного примера поможет студентам понять реализацию алгоритма, который выполняет зеркальное отображение выбранного изображения: 

 

# добавление пакета из OpenCV

import cv2

# присваивание переменной pic изображения из файла image_1.jpg

pic = cv2.imread("image_1.jpg")

# вызов функции для отображения изображения по вертикали

flip = cv2.flip(pic, 1)

# отображение картинки на экране в окне flipped

cv2.imshow("flipped", flip)

# отображение картинки на экране в окне original

cv2.imshow("original", pic)

# ожидание нажатия любой клавиши на клавиатуре

cv2.waitKey(0)

 

Блок лабораторных работ предназначен для освоения студентами сути простых алгоритмов технологий CV, приобретения опыта программной реализации таких алгоритмов средствами языка Python. Лабораторные работы представляют собой пошаговую инструкцию по написанию программы, реализующей определенный алгоритм CV. Например, ниже представлен фрагмент лабораторной работы «Программа «Видеоизображение, показывающее только движущиеся объекты»:

1. Запустите рабочее пространство Spyder. Создайте новый файл

2. Импортируйте пакет:   import cv2

3. Объявите две переменные: frame и cap. Frame – переменная, которой будет присвоен размер изображения. Переменной cap присваивается объект захвата видео.

frame = 0

cap = cv2.VideoCapture(0)

4. Объявите функцию, вычисляющая разность между кадрами:

def diff_frame(prev_frame, cur_frame, next_frame):

5. Определите разность между текущим и предыдущим кадрами с помощью метода absdiff, а затем поместите значение в переменную frames_diff_1:

    frames_diff_1 = cv2.absdiff(next_frame, prev_frame)

 

Для успешного завершения обучения студентам необходимо выполнить все лабораторные работы.

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

Например, вопросы по теме «OpenCV-Python и его основные операции с изображениями», нацеленные на текущий контроль успеваемости студентов:

1. Для чего необходима функция cv2.resize()? Какие аргументы она использует?

2. Какие функции позволяют осуществить поворот изображения? В чем заключается назначение каждой из них?  В какой последовательности необходимо их использовать?

 

Помимо этого, система содержит итоговый контроль, реализованный в виде теста. Фрагмент итогового теста:

1. Как называется функция, создающая объект захвата видео?

  • cv2.imread();
  • cv2.VideoCapture();
  • cv2.VideoWriter();

2. Для чего предназначен пакет Numpy?

  • для работы с большими многомерными массивами и матрицами;
  • для обработки изображений;
  • для хранения объектов различных типов;

3. Какова особенность функции cv2.cvtColor()?

  • добавляет красочности изображению;
  • переводит исходное изображение в черно-белое;
  • переводит изображение в другое цветовое пространство.

После изучения теории, ответов на вопросы, выполнения лабораторных работ, прохождения итогового тестирования студентам предлагаются проекты для самостоятельной разработки, целью которых будет являться применение всех полученных знаний, умений и навыков на практике. В качестве примеров тем проектов можно привести, например, следующие: «Разработка программы для поиска объектов с помощью цветовых пространств», «Разработка программы для обнаружения лиц с использованием каскадом Хаара» и т.д.

 

Для оценки компонентов контроля предполагается разработать модель балльной-рейтинговой системы.

 

Мы предполагаем, что рассмотренный курс при подготовке бакалавров педагогического направления, специализирующихся в области информатики, позволит будущим педагогам понять технологии CV и использовать их в своей педагогической деятельности.

 

Разработанную методику предполагается апробировать в 2022 году с участием студентов старших курсов бакалавриата профиля «Информатика и информационные технологии в образовании», а также в рамках следующих мероприятий: «Продленка с Герценовским университетом» и «Технопарк универсальных педагогический компетенций».

 

Литература:

  1. Глубокое обучение и машинное обучение в Машинном обучении Azure. [Электронный ресурс]. Режим доступа: https://docs.microsoft.com/ (дата обращения: 29.01.2022)
  2. Джоши Пратик, Искусственный интеллект с примерами на Python. : Пер. с англ. - СПб. : ООО "Диалектика", 2019. - 448 с. - Парал. тит. англ. ISBN 978-5-907114-41-8 (рус.)
  3. Зуйкова А. Что такое машинное обучение и как оно работает. [Электронный ресурс]. Режим доступа: https://trends.rbc.ru (дата обращения: 29.01.2022)
  4. Машинное зрение. Что это и как им пользоваться? Обработка изображений оптического источника. [Электронный ресурс]. Режим доступа: https://habr.com/ru/post/350918/ (дата обращения: 28.01.2022)
  5. Технологии искусственного интеллекта, АПР. [Электронный ресурс]. Режим доступа: https://apr.moscow/content/data/5/Технологии%20искусственного%20интеллекта.pdf (дата обращения: 26.01.2022)
  6. Экзамус. [Электронный ресурс]. Режим доступа: https://ru.examus.net/about (дата обращения: 26.01.2022)

Оставить комментарий: