Спонсор: Intel
Северный (Арктический) федеральный университет им. М.В. Ломоносова
Опубликован: 23.10.2013 | Доступ: свободный | Студентов: 1444 / 463 | Длительность: 09:26:00
Специальности: Программист
Лекция 1:

Новые возможности в человеко-машинном интерфейсе

Лекция 1: 123 || Лекция 2 >
Аннотация: В данной лекции дается введение в предмет естественно-интуитивного взаимодействия с компьютером, обсуждается история его развития, рассматриваются новые возможности в человеко-машинном интерфейсе, основные понятия естественно (который очень легко изучить) - интуитивного (привычного) интерфейса, преимущества использования. Аппаратная поддержка. Обзор средств и инструментов Perceptual Computing. Сравнение Perceptual Computing SDK. Примеры приложений.

Введение

Презентацию к лекции можно скачать здесь.

Электронно-вычислительные машины заняли место рядом с человеком с середины XX века, и со временем взаимодействие человека и компьютера только увеличивается. Наверно, не осталось сферы человеческой деятельности, где так или иначе не используются вычислительные устройства. И, если на заре развития электронно-вычислительной техники общаться с компьютерами могли только "посвященные", человек был вынужден использовать язык понятный машине, то в современной действительности вычислительные устройства становятся все более дружественными и для взаимодействия с компьютером серьезной подготовки человеку уже не требуется, разумеется, если это взаимодействие не предполагает решения сложных профессиональных задач.

Вполне объяснимо стремление разработчиков сделать взаимодействие с вычислительными устройствами как можно более естественным для человека. Развитие этого направления сдерживалось недостаточным технологическим уровнем. Однако в последнее время в деле гуманизации пользовательских интерфейсов наметились серьезные продвижения. Появление сенсорных экранов и функций множественного касания (multitouch) позволяет взаимодействовать с компьютером на интуитивном уровне, это подтверждается быстрым освоением подобных устройств детьми. Если следовать дальше, было бы логичным ожидать от компьютеров способности понимать словесные команды, реагировать на мимику и жесты людей, анализировать поведение человека и включенность его в окружающую действительность. И, оказывается, эти ожидания не напрасны, современное развитие технологий обработки речи, изображений и видео, выводит взаимодействие человека с компьютером на новый этап.

Появились идеи естественно-интуитивного взаимодействия человека с компьютером (perceptual computing), предполагающие способность вычислительных устройств понимать человека через физический контакт, словесные команды и жесты. Разработчикам программного обеспечения использование новых идей позволит создавать приложения, вносящие ощущение присутствия и погружения. Такого эффекта можно добиться реализацией возможностей отслеживания жестов рук и пальцев, анализа лица (мимики), распознавания голоса (речи), отслеживания перемещений 2D/3D объектов. Умение разрабатывать такие приложения в ближайшем будущем будет востребовано. Данный курс предлагает изучить инструмент Intel Perceptual Computing SDK и научиться с его помощью добавлять элементы естественно-интуитивного взаимодействия в свои приложения. В дополнение к бесплатному комплекту средств разработки Intel разработчикам понадобится интерактивная камера Interactive Gesture Camera производства компании Creative. Эта камера очень похожа на бесконтактный игровой контроллер Kinect от Microsoft, только меньше по размеру. Но главная разница между этими устройствами состоит в том, что интерактивная камера от Creative разработана для работы на более близких дистанциях и поэтому может распознавать движения пальцев. Корпорация Intel использовала возможности этой камеры в своем SDK, позволяющем разработчикам создавать следующее поколение естественного, современного ПО с элементами (эффектом) присутствия.

История развития человеко-компьютерного взаимодействия

Идеи цифровых вычислительных машин начали развиваться еще в XVIII-XIX веках, компьютерные технологии стали доступны в середине XX века. Первые электронно-вычислительные машины были ориентированы, в первую очередь, на выполнение трудоемких расчетов и на взаимодействие со специалистами. Например, для первой электронной машины ENIAC (1943 г.) ввод программы выполнялся с помощью переключателей и гибких кабелей со штекерами, вставляемыми в нужные разъемы.

Взаимодействие человека и ЭВМ ENIAC (From IBM Archives)

Рис. 1.1. Взаимодействие человека и ЭВМ ENIAC (From IBM Archives)

В ЭВМ Mark I (1945 г.) уже использовались перфоленты с нанесенной на них программой, что несколько облегчило труд оператора. Перфоленты и перфокарты долго оставались носителями информации, которые использовались для хранения программ и ввода их в ЭВМ для исполнения.

Устройство чтения перфолент ЭВМ Mark I (From Harvard University Cruft Photo Laboratory)

Рис. 1.2. Устройство чтения перфолент ЭВМ Mark I (From Harvard University Cruft Photo Laboratory)

В 1960 году Дж.К.Р. Ликлайдер (J.R.Licklider) выдвинул идею "симбиоза человека и компьютера" – объединения человеческого интеллекта и вычислительной техники для управления информацией. Предложил промежуточные цели, достижение которых предполагает реализацию данной идеи.

Ближайшие цели:

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

Среднесрочные цели:

  • координация объединения разработчиков для проектирования и программирования больших систем;
  • способность ЭВМ распознавать речь оператора;
  • способность ЭВМ распознавать рукописные тексты;
  • возможность использования светового пера, в качестве устройства ввода координат и указки (световое перо – светочувствительное устройство, позволяющее выбрать точку экрана дисплея, указывая на нее).

Долгосрочные цели:

  • понимание ЭВМ естественного языка;
  • способность ЭВМ распознавать речь произвольного пользователя;
  • эвристическое программирование, т.е. "интеллектуализация" работы программы путем придания ей большей гибкости и эвристичности "мышления".

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

В 1963 году Айвен Сазерленд (Ivan Sutherland) разработал SketchPad – графический комплекс, прообраз будущих САПР, оказавший огромное влияние на формирование базовых принципов графических пользовательских интерфейсов. Основные идеи: использование объектно-ориентированной модели, любой нарисованный элемент представлялся n-компонентной структурой, его можно было копировать, перемещать, поворачивать или масштабировать, сохраняя основные свойства. Впервые были реализованы алгоритм прорисовки окон и алгоритм обрезки.

Еще одно важное имя в истории развития вычислительной техники: Дуглас Энгельбарт (Douglas C. Engelbart). В середине 60-х годов командой Дугласа Энгельбарта разработана среда NLS (oN-LineSystem), включающая в себя принципиально новую операционную систему, универсальный язык программирования, электронную почту, разделенные экраны телеконференций, систему контекстной помощи. Представлен прототип т.н. WIMP-интерфейса, т. е. интерфейса, использующего понятия окон (windows), пиктограмм (icons), меню (menus) и указателей (pointers), являющихся ключевыми и для сегодняшних графических пользовательских программ и сред. Среда широкого распространения не получила, но как побочный эффект проекта NLS был изобретен первый манипулятор типа мышь, без которого сложно представить любое взаимодействие с компьютером в современной действительности. К оконной среде NLS существующие манипуляторы (джойстики, световые перья и прочие) категорически не подходили, в этой области было проведено целое исследование, итогом которого и стала мышка.

Первая мышь (1964 год)

Рис. 1.3. Первая мышь (1964 год)

В конце 60-х годов XX века, технологический уровень позволил задумываться о создании персонального компьютера. В 1969 году американский математик Алан Кей защитил докторскую диссертацию, в которой разработал принципы создания персонального компьютера. С 1971 года Алан Кей занимался теоретической разработкой прототипа персонального компьютера, названного им Dynabook, в исследовательском центре фирмы Xerox в Пало-Альто (Palo Alto Research Center, PARC). Этот компьютер, не превышающий размер блокнота, должен был обладать возможностями для обработки текстов и графической информации, а также служить средством связи с удаленными базами данных. Кроме того, этот компьютер должен был быть недорогим и доступным широкому кругу покупателей.

Концепция Dynabook описывала то, что сейчас известно как ноутбук, или планшетный ПК. Для Dynabook был спроектирован и смоделирован графический интерфейс Star GUI, одним из основных принципов управления новым компьютером должен был стать не ввод команд с клавиатуры, а выбор их с помощью "мыши" из предлагаемого меню. Графический интерфейс Star стал прототипом интерфейса Macintosh.

Несмотря на то, что графический интерфейс был описан еще в начале 70-х годов, а идеи появились еще раньше, в реальности взаимодействие пользователя с ЭВМ обеспечивалось за счет, так называемого, интерфейса командной строки (CLI, Command Line Interface). В процессе взаимодействия человек вводил команды, а компьютер реагировал соответствующим образом, разумеется, ни о каком дружественном интерфейсе речи не шло. Пользователь должен был точно знать, какая команда приведет к выполнению нужных ему действий и правильно ввести ее в командную строку.

К концу 70-х годов не только стало понятно, что при создании персональных компьютеров необходимо учитывать удобство пользователей, но и накопились технологии, позволяющие реализовать, так называемое, эргономическое проектирование вычислительной техники. Стали появляться персональные компьютеры с графическим интерфейсом, спроектированные с учетом удобства пользователя. В связи с этим назрела необходимость изучения человеко-компьютерного взаимодействия в университетах при подготовке специалистов в области компьютерных наук.

Человеко-компьютерное взаимодействие (HCI, Human-Computer Interaction) – это дисциплина, имеющая дело с проектированием, оцениванием и реализацией интерактивных вычислительных систем для использования человеком, а также с изучением основных явлений, связанных с этими вопросами.

Такое определение было сформулировано в отчете группы, ответственной за разработку рекомендаций к образовательной программе в области человеко-компьютерного взаимодействия (август, 1988). Группа была сформирована из членов ассоциации по вычислительной технике (ACM, Association for Computing Machinery). ACM и IEEE Computer Society, крупнейшие научно-профессиональные сообщества специалистов по вычислительной технике, играют ключевую роль в разработке образовательных программ в области компьютерных наук. После этого отчета модуль HCI (человеко-компьютерное взаимодействие) включается как обязательная часть в курс компьютерные науки.

Эволюцию устройств ввода/вывода можно представить следующей таблицей:

Устройства ввода Устройства вывода
На заре эры вычислительной техники переключатели и гибкие кабели со штекерами, перфолента и перфокарты, клавиатура экран дисплея, телетайп, принтеры
Недавнее прошлое клавиатура, (+ управление курсором), световое перо, джойстик, мышь, микрофон прокручиваемый "стеклянный телетайп", текстовый терминал, аудио
Наши дни цифровые перчатки и костюмы, естественный язык, интерактивная камера наголовный дисплей, повсеместные вычисления, автономные агенты
Ближайшее будущее ? ?
Лекция 1: 123 || Лекция 2 >
Гульзия Калымова
Гульзия Калымова
Александр Радченко
Александр Радченко
Алмаз Зарипов
Алмаз Зарипов
Россия, Набережные Челны