ЭНЦИКЛОПЕДИЯ УЧИТЕЛЯ ИНФОРМАТИКИ

VI. Информационные технологии

2. Технологии обработки графической информации

История компьютерной графики

Первоначально практически все ЭВМ работали с числовыми и символьными данными. В качестве устройств ввода и вывода использовались специальные пульты, перфокарты и телетайпы — печатающие машины.

В декабре 1951 года инженер Массачусетсского технологического института Джей У. Форрестер продемонстрировал новый компьютер “Вихрь”, принципиальным отличием которого было устройство вывода, формировавшее изображение на экране электронно-лучевой трубки. Изображение формировалось из отдельных светящихся точек. Позднее для оперативного управления компьютером во время управления комплексами ПВО было разработано первое интерактивное устройство ввода — световой пистолет.

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

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

Следующим шагом в развитии этого направления стала разработка в 1961–1962 году Айвеном Сазерлендом первой интерактивной программы для выполнения чертежей — Sketchpad (Блокнот). Программа впервые реализовала принцип интерактивного рисования отдельных графических примитивов (отрезков и дуг) из отдельных точек и последующих операций с ними. Интерактивность достигалась применением светового пера для указания необходимых координат. Примерно в то же время была разработана первая система автоматизированного проектирования (DAC-1), но она требовала ввода координат примитивов с клавиатуры.

Наиболее существенной трудностью при работе с графикой была высокая загрузка центрального процессора и памяти, поскольку изображение полностью формировалось с помощью ЦП. Для преодоления этого затруднения были разработаны системы с памятью регенерации (позднее — видеопамятью), снимавшие с центрального процессора нагрузку. В таких системах каждая точка изображения описывалась некоторым числом. Практически все мониторы были монохромными, позволяли работать только с одним цветом (не обязательно белым).

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

Появление в начале 80-х годов высокоскоростных и дешевых запоминающих устройств на основе микросхем позволило активно развивать это направление.

Основные характеристики растровой графики

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

Основное окно редактора растровой графики Adobe Photoshop с отмеченными основными элементными

Чем выше количество точек на единицу площади, чем выше количество цветов каждой точки, тем выше возможное качество изображения, но тем больше объем памяти, необходимый для хранения и обработки изображения. Например, при использовании 24 бит для представления цвета каждой точки может быть использовано 16 777 216 (224) оттенков, и изображение размером 1280 ґ 1024 точки (разрешение современного монитора) будет занимать как минимум 3840 Кб памяти.

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

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

Несмотря на универсальность, этот способ представления информации имеет целый ряд недостатков. К ним относятся: зависимость (причем квадратичная) качества изображения от его объема, трудность выделения и манипуляции отдельными осмысленными элементами, существенное падение качества изображения в результате геометрических преобразований.

Для преодоления этих недостатков программы работы с растровой графикой предусматривают средства создания составных изображений с помощью механизма слоев (layers) — накладывающихся друг на друга плоскостей, в каждой из которых используется только часть точек, механизма фильтров — преобразующих цвета пикселей с учетом некоторых параметров (выполняя, например, размытие или внесение геометрических искажений), управления цветовыми каналами и способом взаимодействия отдельных слоев.

Программы работы с растровой графикой имеют в своем составе большой набор способов изменения цвета пикселей, для этого используется метафора “инструмента” — модели кисти или карандаша с изменяемыми параметрами. Пользователь может создавать библиотеки таких инструментов.

Как было показано выше, при хранении и обработке растровая графика требует большого объема памяти. Поэтому при разработке способов ее хранения и передачи часто используют сжатие — преобразование, позволяющее уменьшить объем при хранении. Существует большое количество различных методов сжатия графической информации, подробнее о них рассказано в статье “Сжатие” 2.

Примеры программных средств

Adobe Photoshop, GIMP, Corel Painter

2.2. Цветовые модели

Один из самых важных вопросов при организации обработки графических данных — это представление и кодирование цвета.

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

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

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

В случае, когда используется печатающее устройство, на котором чернильная точка либо есть, либо нет, оттенок задается некоторой матрицей (например — 4 ґ 4 точки), количество чернильных точек в матрице точек будет образовывать оттенок.

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

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

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

Для каждого конкретного изображения все, что передается одним из компонентов цвета, также называется “каналом”.

Наиболее популярны сейчас следующие модели:

Модель восприятия HLS

Модель подразумевает образование цвета из трех основных компонентов:

Hue — оттенок цвета;

Lights — яркость;

Saturation — насыщенность.

При ее использовании считается, что все оттенки заданы на едином цветовом круге. Поэтому первый параметр задает градус поворота от эталонного оттенка (0 — белый). Остальные параметры задаются в процентах как положение между максимальными и минимальными доступными значениями.

Модель также известна под названиями HSL, HIS и другими.

Эта модель наиболее приближена к человеческому восприятию и описанию цвета. Она применяется в основном для описания цвета при анализе его восприятия человеком.

Аддитивная модель цвета RGB

В этой модели цвет образуется смешиванием трех компонентов:

Red — красный;

Green — зеленый;

Blue — голубой.

В данном случае цвет образуется из света нескольких источников (в том случае, когда источники излучают свет и он может быть “просуммирован”); модель является аддитивной.

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

Именно цветовая модель RGB используется и при описании возможностей различных графических устройств. Цветовое пространство в этом случае характеризуют количеством битов, отводимых на сохранение цвета. Чаще всего используются режимы HighColor (16 бит, в соотношении 5:6:5 или 5:5:5) и TrueColor (24 бита, в соотношении 8:8:8).

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

Каждый компонент задается силой светимости, 0 соответствует отсутствию света. Таким образом, цвет 0-0-0 — это черный, цвет из равных долей каждого компонента — один из оттенков серого, а цвет с максимальными значениями компонентов — белый.

Субстрактивная модель цвета CMYK

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

Cyan — голубой;

Magenta — фиолетовый;

Yellow — желтый.

Эти цвета получаются вычитанием из чистого белого цветов аддитивной модели.

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

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

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

Именно из-за использования такой модели часто при печати сложных материалов указывают “печать в три краски” или “печать в четыре краски”.

 2.3. Векторная графика

Существенным недостатком растровой графики является трудность манипуляции отдельными объектами и выполнение геометрических преобразований. Одно из следствий этого — трудности в организации качественного вывода на различных устройствах и затруднения при изображении новых, не сфотографированных объектов.

Кроме того, очень быстро растет объем изображения (и необходимой для него памяти) при увеличении линейных размеров.

Для преодоления этих трудностей применяется подход, подразумевающий хранение и обработку изображения не в виде растра, а в виде некоторых отдельных элементов (графических примитивов). Элементами обычно являются математические объекты с заданными конкретными параметрами. Параметры позволяют выполнить визуализацию элементов на устройстве вывода (растеризацию), исходя из его характеристики и заданного “окна” просмотра.

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

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

Рисунок в векторном графическом редакторе Corel Draw с основными элементами редактирования

К минусам этой формы представления относится отсутствие общих стандартов (практически у каждого редактора есть свои собственные форматы и особенности) и высокие требования к системным ресурсам, особенно — ресурсам вычислительным.

В программах подготовки векторных изображений работа строится вокруг объектов (примитивов), обладающих некоторыми свойствами.

Наиболее распространенными примитивами являются: отрезки, прямоугольники и их производные (со сглаженными углами), эллипсы и их части, кривые Безье (математические кривые третьего порядка, задаваемые 4 точками), а также составленные из них сложные контуры. Одним из типовых объектов является текст, написанный, как правило, контурным шрифтом (векторным по сути).

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

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

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

Редакторы векторной графики позволяют группировать объекты и создавать таким образом сложные объекты для выполнения операций над ними как над единым целым.

Объекты могут быть упорядочены друг относительно друга, распределены на плоскости как “на поверхности”, так и “по вертикали”.

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

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

Примеры программных средств

CorelDraw, Adobe Illustrator, OpenOffice Draw

2.4. Трехмерная графика 

Построение трехмерного изображения

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

При формировании трехмерного изображения (статического или динамического) его построение рассматривается в пределах некоторого пространства координат, которое называется сценой. Сцена подразумевает работу в объемном, трехмерном мире — поэтому и направление получило название трехмерной (3-Dimensional, 3D) графики.

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

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

Рабочее пространство системы подготовки
трехмерной графики Blender (пример с сайта
http://www.blender.org
)

После формирования каркаса (“проволочной сетки”) выполняется закрашивание — придание поверхностям объектов некоторых свойств. Свойства поверхности в первую очередь определяются ее световыми характеристиками: светимостью, отражающей способностью, поглощающей способностью и рассеивающей способностью. Этот набор характеристик позволяет определить материал, поверхность которого моделируется (металл, пластик, стекло и т.п.). Прозрачные и полупрозрачные материалы обладают еще рядом характеристик.

Как правило, во время выполнения этой процедуры выполняется и отсечение невидимых поверхностей. Существует много методов выполнения такого отсечения, но самым популярным стал метод
Z-буфера
, когда создается массив чисел, обозначающий “глубину” — расстояние от точки на экране до первой непрозрачной точки. Следующие точки поверхности будут обработаны только тогда, когда их глубина будет меньше, и тогда координата Z уменьшится. Мощность этого метода напрямую зависит от максимально возможного значения удаленности точки сцены от экрана, т.е. от количества битов на точку в буфере.

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

Для придания объектам реалистичности поверхность объектов “обтягивается” текстуройизображением (или процедурой, его формирующей), определяющим нюансы внешнего вида. Процедура называется “наложением текстуры”. Во время наложения текстуры применяются методы растяжения и сглаживания — фильтрация. Например, упоминаемая в описании видеокарт анизотропная фильтрация, не зависящая от направления преобразования текстуры.

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

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

Второй метод — метод излучательности — предусматривает расчет интегральной светимости всех участков, попадающих в кадр, и обмен светом между ними.

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

Таким образом, в результате большого количества вычислений появляется возможность создавать изображения, трудноотличимые от фотографий. Для уменьшения количества вычислений стараются уменьшить число объектов и там, где это возможно, заменить расчет фотографией; например, при формировании фона изображения.

Твердотельная модель и итоговый результат обсчета модели (пример с сайта http://www.blender.org)

Анимация и виртуальная реальность

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

Позже были разработаны специально предназначенные для обсчета и формирования изображений аппаратные средства — 3D-акселераторы. Это позволило в упрощенной форме выполнять такое формирование в реальном масштабе времени, что и используется в современных компьютерных играх. Фактически, сейчас даже обычные видеокарты включают в себя такие средства и являются своеобразными мини-компьютерами узкого назначения.

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

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

Для воплощения такой реалистичности создаются специальные методы расчета параметров и преобразования объектов — изменения прозрачности воды от ее движения, расчет поведения и внешнего вида огня, взрывов, столкновения объектов и т.д. Такие расчеты носят достаточно сложный характер, и для их реализации в современных программах предложен целый ряд методов.

Один из них — это обработка и использование шейдеровпроцедур, изменяющих освещенность (или точное положение) в ключевых точках по некоторому алгоритму. Такая обработка позволяет создавать эффекты “светящегося облака”, “взрыва”, повысить реалистичность сложных объектов и т.д.

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

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

Примеры программных продуктов

Maya, 3DStudio, Blender

Методические рекомендации

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

В основной школе рассматривают два вида графики: растровую и векторную. Обсуждаются вопросы отличия одного вида от другого, как следствие — положительные стороны и недостатки. Сферы применения этих видов графики позволят ввести названия конкретных программных продуктов, позволяющих обрабатывать тот или иной вид графики. Поэтому материалы по темам: растровая графика, цветовые модели, векторная графика — будут востребованы в большей мере в основной школе. В старшей школе эта тема дополняется рассмотрением особенностей научной графики и возможностями трехмерной графики. Поэтому будут актуальны темы: фотореалистичные изображения, моделирование физического мира, сжатие и хранение графических и потоковых данных.

Большую часть времени занимают практические работы подготовки и обработки графических изображений с использованием растровых и векторных графических редакторов. В основной школе это, как правило, Adobe Photoshop, CorelDraw и/или MacromediaFlach. Различие между изучением тех или иных программных пакетов в основной и старшей школе в большей мере проявляется не в содержании, а в формах работы. В основной школе это практическая (лабораторная) работа, в результате которой учащимися осваивается программный продукт. В старшей школе основной формой работы становится индивидуальный практикум или проект, где главной составляющей является содержание поставленной задачи, а используемые для ее решения программные продукты остаются лишь инструментом.

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

3. Мультимедиа-технологии

3.1. Представление звука

Как известно из курса физики, звук — это воспринимаемые человеком колебания среды (воздуха или воды). Как и любая волна, звуковая волна характеризуется двумя основными параметрами — амплитудой (величиной колебания) и частотой (количеством колебаний за единицу времени). Эти параметры в физических звуковых волнах постоянно изменяются; воспринимая их, мы слышим звук.

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

Схема выполнения дискретизации и оцифровки звуковой волны

Для выполнения оцифровки звука он с помощью микрофона может переводиться и в электрические колебания. Процесс оцифровки звука — это составление таблицы замеров возникающего напряжения. Замеры выполняются через определенные равные промежутки времени. Для того чтобы охарактеризовать этот промежуток, указывают частоту дискретизацииколичество замеров за одну секунду. Точность оцифровки напрямую зависит от частоты: чем чаще замеры, тем точнее может быть передано колебание звука при воспроизведении. Понятно, что частота дискретизации не должна быть ниже частоты самого звука.

Второй параметр, от которого зависит точность воспроизведения, — это количество возможных градаций напряжения, которое зависит от количества битов, отведенных на запись значения.

Объем получающихся данных достаточно большой. Например, при записи 16-битного звука с частотой
22 КГц одна минута звучания займет в памяти 60 секунд * 22 000 значений * 2 байта = 2 460 000 байт.

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

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

Первые попытки применения систем работы со звуком на персональных компьютерах начались с появлением в конце 1980-х годов первой платы, позволявшей синтезировать звук: звукового устройства AdLib Music Synthesizer компании AdLib. Используя метод частотной модуляции, плата позволяла синтезировать звуки, примерно передающие несложные мелодии. Существенной особенностью стала поддержка взаимодействия с электронными инструментами — по стандарту MIDI. Плата также содержала и синтезатор звука, позволявший моделировать звучание нескольких музыкальных инструментов одновременно (т.е. нескольких голосов). В первой версии платы обеспечивалась возможность звучания 6 голосов.

Активное применение средств работы со звуком в повседневной практике началось с появлением в 1989 году доступной по цене платы расширения (позднее платы выпускались под торговой маркой SoundBlaster) компании Creative. Отличительной особенностью этой платы была возможность точного воспроизведения звука в достаточно широком диапазоне частот (от 22 Гц до 22 КГц) и с достаточно высокой частотой дискретизации — 2 кГц, 8 бит (воспроизведение) и 11 кГц, 8 бит (запись). Для кодирования звука в этих платах использовался метод импульсно-кодовой модуляции (Pulse-Code Modulation). Суть метода состоит в измерении значения сигнала с определенной частотой, которая равняется максимальному значению частоты изменения в измеряемом спектре. Точность кодирования в этом случае зависит, во-первых, от максимальной частоты дискретизации, а во-вторых — от разрядности.

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

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

Существенным направлением совершенствования системы работы со звуком являются средства воссоздания объемного звучания, т.е. такого воспроизведения звука, при котором его источники “локализуются” в окружающем слушателя пространстве. Первым средством такого рода было введение в 70-х годах стереозвука (двухканального воспроизведения).

Позже — сначала для кинотеатров, а после и для обычной техники — появились каналы и средства воспроизведения низких и сверхнизких частот, сабвуфера. Такая система представления звука получила обозначение “2.1-канальная” (2 основных и один дополнительный канал).

В более современных системах, например популярной DolbyDigital AC3, используется 5 каналов для звука обычных частот (левый, правый и центральный передние каналы, левый и правый задние каналы) и сабвуфер. Такие системы называют “5.1-канальными”.

 3.2. Обработка и синтез звука

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

 Оцифрованный звук

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

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

Существенной особенностью программ обработки звука являются средства визуализации и анализа звукового файла.

Пример обработки оцифрованного звука в программе WaveLab

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

При вводе и выводе звука применяется программный аналог эквалайзера (equalizer — то, что делает равным, балансир) — устройства, регулирующего громкость звука в зависимости от его частоты. Эквалайзер подразумевает работу с несколькими диапазонами частот (полосами), не менее трех. Профессиональные программные эквалайзеры обеспечивают работу со сложными графиками преобразования, на которые наносится произвольное количество точек.

Большинство потребителей не редактирует звуковые файлы и, соответственно, применяет программы, обеспечивающие только воспроизведение звука, — плееры. Для достижения различных эффектов при воспроизведении в комплекте с плеерами поставляются заранее подготовленные наборы настроек эквалайзеров — пресеты (preset — предустановка).

Примеры программных средств работы с оцифрованным звуком

SoundForge, CuBase, Audacity, WaveLab

3.3. Программы синтеза звука

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

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

Для синтеза звука в этом случае применяются средства, получившие названия секвенсоров (синтезаторов). Такое средство синтезирует звук на основе указания тона (ноты), времени ее звучания и образца звучания того или иного инструмента. Образец звучания называется сэмплом (sample — пример, образец).

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

При хранении и обмене синтезируемая мелодия описывается стандартизированным набором команд, получившим название MIDI (Musical Instrument Digital Interface). Стандарт включает в себя протоколы взаимодействия аппаратных средств (например, звуковой карты и отдельного устройства-синтезатора) и описание формата хранения файлов.

Для ввода мелодии в стандарте MIDI в компьютер применяется специальное средство ввода — MIDI-клавиатура. Фактически она похожа на клавиатуру пианино, но предназначена для передачи соответствующих нот звуковой карте — для последующего синтеза звука заданным инструментом. Программы синтеза мелодий отображают набранные ноты в соответствии с музыкальной нотацией и позволяют редактировать их.

Пример описния мелодии в программе Guitar Pro 5

Примеры программных средств синтеза звука

Cakewalk Sonar, Guitar Pro, Rosegarden

3.4. Представление видеоданных

Видеоизображение — одно из самых эффективных и самых требовательных средств представления информации.

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

До 90-х годов основными методами представления видеоданных были аналоговые методы. Обработка и редактирование данных выполнялись с помощью подхода, который сейчас называется линейный видеомонтаж (Linear Video Editing). При этом подходе данные всегда поступают на вход системы обработки последовательно, и система не может произвольно выбирать материалы, то есть монтаж из нескольких фрагментов выполняется всегда линейно.

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

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

Создание видеофайла в программе Movie Maker.
На рисунке отмечены основные средства выполнения видеомонтажа

При захвате видеосигнала его необходимо сохранить на некотором цифровом носителе. Формат хранения видеофайлов подразумевает обязательное использование средств сжатия видеоизображения. В настоящий момент существует большое количество различных средств сжатия видеоданных (см. “Методы сжатия”). Некоторые файловые форматы подразумевают использование определенных средств кодирования (Windows Media Video, Motion Picture Group), некоторые являются контейнерами для хранения содержимого с различными методами сжатия (Audio Video Interleave — чередование аудио и видео).

Средства проигрывания, как правило, используют для отображения такого видеосодержимого специализированные программы кодирования-декодирования (кодеки). При отсутствии средства декодирования просмотр созданного файла становится невозможным.

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

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

Активное применение и большие возможности систем нелинейного видеомонтажа привели к тому, что постепенно большая часть задач по обработке видеосигнала стала выполняться с помощью цифровых средств. Появились и завоевали большую популярность цифровые средства для съемки и записи видео. Основным форматом кодирования и записи в этом случае является формат Digital Video, предполагающий отдельное сжатие каждого кадра с помощью алгоритма на базе JPEG. Применение этого формата позволяет не использовать специализированные платы видеозахвата, а ограничиться обычными средствами подключения высокоскоростных устройств (в частности, универсальной шиной USB 2.0 или IEEE 1394, FireWire).

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

Примеры программных средств

Adobe Premiere, Windows Movie Maker

3.5. Сжатие данных

Общей проблемой при обработке различных потоковых данных является их объем. Практически всегда качество воспроизведения оцифрованного потока зависит от частоты дискретизации, а чем больше частота — тем больше объем.

Для решения этой проблемы при хранении и распространении цифровых данных, в особенности видео и аудио, применяют различные методы сжатия.

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

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

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

Для сложных изображений такой метод малоэффективен, поэтому в промышленных форматах применяют другие методы. Например, один из универсальных алгоритмов LZW (назван по фамилиям авторов Якоб Лемпель, Абрахам Зив и Терри Велч). Этот алгоритм подразумевает создание во время обработки специального словаря уже встречавшихся фрагментов. При кодировании последовательности байтов заменяются на их номера по словарю, причем номера часто встречающихся последовательностей имеют меньшее количество битов, чем редко встречающихся. Этот способ активно применяется при сжатии самых разных данных, в том числе и графических. Такой способ сжатия применяется в графическом формате TIFF, в популярном формате GIF. Аналогичные методы применяются и в современном формате PNG (Portable Network Graphic), разработанном специально для применения в сетевых приложениях.

Нужно отметить, что алгоритмы сжатия применяются не только для работы с графическими данными (где они фактически необходимы), но и для хранения и пересылки других данных. Программы, реализующие применение этих методов, получили название архиваторов. Современные архиваторы при упаковке данных позволяют сохранять файловую структуру, применяют сложные комбинации методов сжатия в зависимости от типа и особенностей упаковываемой информации. Методы сжатия используют такое общее свойство представления информации в цифровом виде, как избыточность.

С появлением средств оцифровки изображений появилась существенная проблема: в фотоизображениях практически не встречались точно повторяющиеся последовательности точек. С учетом роста частоты дискретизации и небольшой емкости носителей, это затрудняло их обработку и применение. Фактически средний жесткий диск мог хранить только 45–50 изображений высокого качества.

Для решения этой проблемы группой специалистов был разработан специальный формат и способ сжатия, получивший название JPEG (Joint Photographic Expert Group, объединенная группа экспертов-фотографов). Алгоритм сжатия, предложенный ими, подразумевал сжатие с потерей качества. Его достоинством было то, что “силу” сжатия можно было указывать изначально и таким образом находить компромисс между качеством и объемом изображения. Первый стандарт этого алгоритма был принят в 1991 году.

Алгоритм JPEG предусматривает перевод изображения в более пригодную для сжатия цветовую модель — YСrCb (Яркость, Хроматический красный, Хроматический синий). За счет того, что человеческий глаз более чувствителен к яркости, чем к цвету, появляется возможность сжимать цветовые компоненты сильнее. В дальнейшем операции над компонентами выполняются отдельно. Изображение разбивается на фрагменты размером 8 ґ 8 пикселей, и внутри объектов выполняется целый ряд преобразований, некоторые из которых сглаживают разницу между пикселями. В зависимости от заданного параметра степени сжатия можно сглаживать разницу сильнее или слабее.

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

Алгоритм JPEG — один из базовых алгоритмов сжатия изображений. Его широкое распространение позволило резко расширить возможности и сферу применения цифровых методов обработки изображения. Несмотря на то, что существовали и существуют методы, обеспечивающие более высокое качество и степень сжатия, этот алгоритм получил широкое распространение за счет низких аппаратных требований и высокой скорости работы.

Следующим шагом стала разработка группы методов, предназначенных для сжатия потоковых данных (видео и аудио). Существенной особенностью этих данных является их очень большой объем и постепенное изменение (из-за высокой частоты между двумя соседними кадрами, как правило, разница невелика). Сжатый видео- и/или аудиопоток характеризуется чаще всего общим показателем битрейтом (bit rate — битовая скорость) — количеством битов на одну секунду использования, которое получается после упаковки.

Первым был разработан и принят в 1992 году стандарт MPEG-1, включавший в себя способ сжатия видео в поток до 1,5 Мбит, аудио в поток 64, 128 или 192 Кбит/с на канал, а также алгоритмы синхронизации. Стандарт описывал не алгоритмы, а формат получающегося битового потока. Это позволило в дальнейшем разработать множество реализаций алгоритмов кодирования и декодирования. Стандарт применялся для создания видео и CD.

Особенную популярность завоевала реализация MPEG-1 для упаковки звука. Применяется для этого стандарт MPEG-1 Layer 3 (сокращенно названный MP3). При сжатии этим методом используется сжатие с потерей информации. Причем учитывается особенность слухового восприятия: если рядом расположены две частоты, то более громкая “перекрывает” более тихую. Таким образом, ее можно сгладить без ощутимой потери качества звука.

Следующим шагом была разработка и принятие в 1995 году стандарта MPEG-2, предусматривающего работу с более качественным видеопотоком, скорость которого могла изменяться от 3 до 10 Мбит/с. Эта группа методов применяется при создании DVD-дисков.

Группа стандартов, получившая позднее название MPEG-4, изначально проектировалась для работы с очень низкими потоками, но в дальнейшем претерпела много изменений. В основном эти изменения касались введения интеллектуальных методов — например, описания параметров отображения лиц или синтеза речи.

Несмотря на большое разнообразие, в основе всех этих алгоритмов лежит общий подход к кодированию/декодированию. Во-первых, одной из основ сжатия кадров является алгоритм JPEG. В рамках этого подхода рассматриваются три вида кадров: ключевой кадр, сохраняемый в потоке полностью (intrapictures), кадры, сжатые со ссылкой на предыдущее изображение (predicted), и кадры, ссылающиеся на два кадра (bidirection).

В случае использования ссылок на кадры записывается и сжимается не весь кадр, а только его изменившиеся части. Двунаправленные и ключевые кадры позволяют сократить накапливающиеся ошибки. Во время сжатия каждое изображение разбивается на макроблоки, разбивающие кадр на отдельные квадраты по 16 пикселей (алгоритм разбиения значительно сложнее, но в этом тексте он подробно не рассматривается). Отсюда вытекает ограничение: размеры кадра должны быть кратны 16.

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

Технически кодекиотдельные программы, вызываемые проигрывателями для декодирования потока, а средствами сохранения — для его сжатия. Кодек отмечается в начале файла (или сетевого потока), и его наличие — важное условие работы с мультимедиа-данными. Многие кодеки не поставляются с операционной системой, а устанавливаются дополнительно. Для удобства их часто собирают в пакеты (codec-pack).

Примеры программных средств

DivX, XviD, Lame MP3 encoder, QuickTime

 3.6. Мультимедиа

Слово “мультимедиа” (лат. Multum+Medium — “несколько материалов”) было впервые использовано в 1965 году при описании Exploding Plastic Inevitable — шоу, объединявшего рок-музыку, световые эффекты, кино и нетрадиционные графические произведения.

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

В 90-х годах, с появлением доступных цифровых технологий, под термином “мультимедиа” стали понимать объединение в едином продукте разных форм представления информации: текста, статических иллюстраций, звуковых и видеофрагментов, анимации с навигационными (т.е. связующими) компонентами. Мультимедиа в данном случае обозначает не объединение носителей (одно из значений слова “media”) информации, а объединение именно нескольких ее форм.

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

Различают мультимедийные продукты по форме хранения и использования: хранимые (в виде файла или набора файлов) на локальном носителе и потоковые — показываемые по мере получения данных по каналам связи.

Среди наиболее часто упоминающихся примеров таких продуктов можно привести:

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

2. Компьютерные игры. Этот вид продуктов хорошо знаком практически всем пользователям персональных компьютеров. Стоит отметить, что именно этот вид продуктов является одним из основных движущих факторов всего направления.

3. Гипермедиа-продукты. Как правило, так называют замкнутые продукты, родственные презентациям, но добавляющие к содержимому элементы управления содержанием и его отображением, в частности — гипертекст.

4. Мультимедиа-продукты, предназначенные для работы в условиях глобальной сети Интернет. Такие продукты ориентируются на взаимодействие с серверами для обмена данными и на передачу данных в потоковом режиме.

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

Примеры программных средств

Microsoft PowerPoint, Adobe Flash, OpenOffice.org Impress

3.7. Преобразование представлений информации. Автоматизация ввода

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

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

Вот несколько наиболее часто решаемых задач такого типа.

Рабочее окно распознавания текста Abbyy FineReader

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

Программные средства распознавания текста обеспечивают: прием изображения со сканера или графического файла, распознавание структуры листа, распознавание текста и последующее редактирование (исправление неверно распознанных элементов), и сохранение полученного результата. Точность распознавания в современных системах такого рода находится на уровне 97–99%. Для повышения качества распознавания такие системы позволяют проводить обучение, т.е. модифицировать базу средств распознавания.

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

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

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

“Бытовые” средства распознавания графических примитивов позволяют подготовить векторное изображение (для плаката, например) по ранее нарисованному на бумаге.

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

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

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

Задача синтеза речи. Часто бывает трудно или неудобно использовать экран для чтения текста (например, в транспорте), или хотелось бы получить информацию по голосовому каналу связи. В этом случае применяют программы синтеза речи.

Технически эти программы проще, чем программы распознавания, но безупречной их работу назвать сложно — “начитанный” такими программами текст часто оказывается неестественным и плохо воспринимается человеком. Трудности возникают при расстановке ударений, интонировании предложений и фраз, чтении неизвестных системе слов.

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

Операционные системы Microsoft Windows в своем составе имеют общий интерфейс такого рода — MicrosoftSpeech. Для этого интерфейса могут быть разработаны системы произнесения текста — так называемого “голоса”. Интерфейс позволяет разрабатывать программы, использующие синтез речи. В частности, один из новых стандартов языков для разработки web-сайтов предусматривает голосовое взаимодействие — чтение страниц и распознавание команд перехода по ссылкам.

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

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

В настоящий момент решений такого рода не существует. Современные методы создания обучающихся систем для распознавания образов в приведенных системах используются как дополнительные средства поиска решений.

Примеры программных средств

Abbyy FineReader, Dragon NaturallySpeaking, Corel Trace

Методические рекомендации

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

Для основной школы можно использовать материалы по темам: методы сжатия и хранение мультимедиа-данных (в контексте изучения темы “Архивирование и разархивирование”); мультимедиа, объединение различных видов информации в едином продукте. Хотя стандартом основной школы по информатике предусмотрено изучение темы: “Звуки и видеоизображение. Композиция и монтаж. Использование простых анимационных графических объектов”, контроль за освоением этих тем не предусмотрен (в стандарте эти элементы содержания выделены курсивом). Темы будут достаточно усвоены в том случае, когда в школе работает телецентр или видеостудия и монтаж фильмов или презентаций, запись фонограмм и прочая деятельность выполняется учащимися под руководством педагога. А в рамках уроков по информатике на это просто не хватает учебного времени.

Вопросы представления и технологии обработки звука и видео отсутствуют в контрольных измерительных материалах ЕГЭ по информатике. Но в экзаменационных билетах по информатике за курс среднего (полного) общего образования на обоих уровнях проверяются теоретические знания по темам: кодирование звуковой информации, форматы звуковых файлов, ввод и обработка звуковых файлов, использование инструментов специального программного обеспечения и цифрового оборудования для создания и преобразования звуковых файлов.

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

Примыкает к этим темам и группа вопросов, связанных с преобразованием информации из одного вида в другой (распознавание текста, векторизация изображений, речевой ввод и вывод). Эти вопросы по усмотрению учителя могут изучаться как отдельно, так и в сочетании с темой “Средства и технологии создания и преобразования информационных объектов” в старшей школе.

4. Электронные таблицы

4.1. Краткая история развития

Несмотря на то что выполнение всевозможных расчетов — это изначальное назначение компьютеров, в течение довольно долгого времени в практике работы многих пользователей персональных ЭВМ текущие простые расчеты практически не выполнялись.

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

Ситуация кардинально изменилась в 1979 году, когда студентами Гарвардского университета Дэном Бриклином и Бобом Франкстоном была разработана программа VisiCalc (“Визуальный калькулятор”) для персональных компьютеров Apple II. Программа была разработана для быстрого выполнения типовых бухгалтерских расчетов, которые до того выполнялись в книге, методом заполнения соответствующих граф.

Окно программы работы с электронными таблицами OpenOffice.org Calc
с основными рабочими элементами

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

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

Следующим шагом в развитии идеи электронных таблиц было появление в 1982 году продукта Lotus 1-2-3. Его отличительной чертой была интеграция в систему средств визуализации данных — т.е. построения всевозможных диаграмм, а также доступ к данным, полученным с помощью запросов к базам данных.

Еще одним ключевым шагом в развитии современных электронных таблиц была возможность работы с несколькими связанными таблицами одновременно. В некоторых продуктах набор связанных таблиц рассматривался в виде книги, в некоторых — трехмерного куба.

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

 Структура электронной таблицы

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

Каждый столбец и каждая строка имеют название или номер. В традиционных решениях строки получали номера, а столбцы — буквенные обозначения. В современных электронных таблицах столбцы также нумеруются. Это связано с тем, что возможное количество столбцов в современных реализациях электронных таблиц велико.

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

Каждая ячейка на листе имеет координаты, задающие ее положение в таблице; они указываются как названия (номера) строки и столбца, на пересечении которых находится ячейка. В некоторых процессорах способ записи координат может меняться в зависимости от настроек. Традиционно столбцы обозначаются буквами (A, B, C и т.д.; после 26-го столбца начинаются двухбуквенные сочетания AA, AB), а строки — числами. Ячейка B2, таким образом, оказывается в столбце B, в строке № 2. В новых версиях Microsoft Excel ячейка может быть обозначена номером строки и столбца (R2C2) — это позволяет работать с таблицами, в которых больше 255 столбцов.

Информация в ячейках электронной таблицы

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

Для получения данных из других ячеек на них можно сослаться (поставить ссылку) при записи формул, указав координаты ячейки. Координаты могут быть записаны двумя способами: как относительные (координаты, которые зависят от положения формулы и при ее переносе или копировании изменятся на вектор смещения) и как абсолютные (не зависящие от положения формулы). По умолчанию ссылки вводятся как относительные (A1 или R[1]C[1]), при необходимости сделать абсолютную ссылку используют дополнительное обозначение ($A$1 или R1C1). Ссылка может включать в себя и название листа, на котором расположена таблица. Например, в табличном процессоре Microsoft Excel: Объекты!B99 — ячейка B99 на листе Объекты.

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

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

В современных системах (Microsoft Excel, OpenOffice.Org Calc, QuattroPro) пространство таблицы заранее размечено на ячейки, пользователь вводит в ячейки данные и формулы выполнения вычислений. Операции вставки столбца и строки не изменяют фактически доступное пространство.

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

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

Примеры программных продуктов

Microsoft Excel, OpenOffice.org Calc

4.2. Обработка данных в электронной таблице

Основным средством вычислений и преобразований данных в электронных таблицах являются формулы. Формулой в электронных таблицах называется выражение, результат которого присваивается ячейке и отображается в ячейке таблицы вместо самой формулы (если не включен специальный режим отображения формул). В наиболее популярных табличных процессорах Microsoft Excel и OpenOffice.Org Calc запись формулы начинается со знака равенства. Увидеть и отредактировать формулу можно в стандартном элементе управления — строке формул.

Ввод формулы в Microsoft Excel. Используется мастер вставки функций

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

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

Каждая функция для ее вызова имеет уникальное имя. Для упрощения работы оно, как правило, написано сокращением названия на естественном языке (на приведенном рисунке функция СЧЕТЕСЛИ выполняет подсчет значений, удовлетворяющих некоторому условию; СУММ — суммирование аргументов и т.д.). Функции построены по общему правилу: они вызываются с некоторыми аргументами и возвращают единственное значение — результат обработки. Аргументы функции при вызове перечисляются через запятую. В зависимости от характера функции число аргументов может быть фиксированным или изменяющимся. В качестве аргумента может быть передано конкретное значение или ссылка. Ссылкой может быть задана одна ячейка или некоторая прямоугольная область — диапазон ячеек.

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

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

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

Помимо обработки данных, функции могут также использоваться и для организации оформления (например, условные и финансовые функции). Чаще всего эти возможности используются для визуального выделения строк или отдельных ячеек, на которые пользователь должен обратить особое внимание.

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

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

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

4.3. Деловая графика в электронных таблицах

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

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

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

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

Диаграмма строится в некоторой системе координат. По одной из осей отсчитываются категории, по второй — значения. Диапазон значений определяется автоматически на основе имеющихся данных.

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

1. Гистограмма (столбчатая диаграмма). В этом типе диаграмм данные отображаются в виде вертикальных или горизонтальных столбцов. Высота (или длина) каждого столбца соответствует отображаемому значению. Если отображается несколько согласованных рядов, то столбцы либо строятся рядом, либо один над другим — это позволяет оценить соотношение величин.

2. Круговая диаграмма. В этом типе диаграмм величины отражаются секторами круга. Чем больше величина, тем большую долю круга занимает ее отображение. Объемный вариант такой диаграммы предусматривает “нарезку” некоторого диска.

3. График. В этих диаграммах значения величин отображаются высотой точки графика. Точки соединяются линиями.

4. Поверхность. Диаграмма, в которой ряды становятся линиями для некоторой поверхности в объеме.

5. Лепестковая диаграмма. Каждый ряд отображается как линия, соединяющая точки на радиусах.

Графики и поверхности в Microsoft Excel

Большинство диаграмм может быть построено как в виде плоской фигуры, так и в виде объемной фигуры. Объемные диаграммы часто являются псевдо-трехмерными, то есть объем используется не для показа большего количества данных, а только для изменения внешнего вида диаграммы. Например, столбчатая диаграмма может быть построена и с помощью трехмерных объектов — параллелепипедов, цилиндров, конусов.

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

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

После построения диаграмма может быть оформлена или переделана — может быть изменен ее тип, заданы названия осей, способ отображения легенды, цвета, подписи и другие параметры.

Методические рекомендации

Электронные таблицы изучаются в основной и старшей школе. При этом различаются цели, содержание и методы обучения.

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

Основная организационная форма работы — урок, где используются устоявшиеся в дидактике методы обучения.

Можно выделить следующие вопросы для изучения по данной теме в основной школе:

1. Области применения электронных таблиц.

2. Среда табличного процессора, режимы работы, система команд.

3. Обрабатываемые данные.

4. Методы адресации (виды и способы реализации).

5. Используемые функции.

6. Графическое представление данных.

7. Сортировка и фильтрация данных.

8. Работа с электронной таблицей как с базой данных (при использовании макросов и внешних приложений).

9. Использование электронных таблиц для решения задач численного моделирования.

На начальном этапе знакомства с возможностями электронных таблиц используют демонстрацию и практические упражнения. Поскольку интерфейс программ компании MS сходный, используется методический прием по выделению знакомых учащимся команд в среде электронной таблицы. Данный прием нацеливает учащихся на исследовательские методы работы и вырабатывает самостоятельный поисковый стиль работы (учащиеся не ждут готовых алгоритмов работы, а сами находят наиболее эффективные приемы для решения различных задач). Следует обратить внимание на переход от небольших упражнений, позволяющих освоить некоторые приемы работы, целью которых является именно освоение электронной таблицы как инструмента для дальнейшего использования при решении практических задач, к самим содержательным задачам.

Для развития практических умений и формирования устойчивых навыков работы в среде электронной таблицы необходимо подготовить несколько лабораторных (практических) работ по наиболее часто решаемым задачам: статистическая обработка данных (нахождение среднего значения, минимального и максимального), табулирование функции, сортировка и фильтрация данных, построение диаграмм. Задача учителя на данном этапе — осуществить подборку и постановку задач таким образом, чтобы была возможность их решения разными способами: средствами электронной таблицы, а в дальнейшем и на языке программирования. Учащиеся должны научиться самостоятельно определять, какой из способов для конкретной задачи эффективней.

В старшей школе цели несколько иные, с большей ориентацией на будущую профессиональную деятельность.

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

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

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

4.4. Геоинформационные системы

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

Геоинформационные системы — чрезвычайно мощный инструмент интеграции данных, так или иначе связанных с земной поверхностью, удобное средство визуализации этих данных. Существующие геоинформационные системы позволяют выполнить три основных задачи: создание базы геоданных (собственно географическая информация — модели данных, векторные объекты, геодезические привязки, растровые объекты), визуализацию данных (построение на основе базы геоданных всевозможных карт и схем) и геообработку, т.е. получение новых наборов данных на основании уже существующих.

Основным средством выполнения этих задач в ГИС являются карты. Карта — схематическое изображение участка земной поверхности. Карты в ГИС могут быть сделаны многослойными. Каждый слой отражает те или иные типовые данные, связанные с точками на карте: дороги, коммуникации, состав почв, изменения температуры, полезные ископаемые, строения и т.д.

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

Современные карты чаще всего строятся на основании анализа спутниковых снимков с использованием средств векторизации, рассмотренных в разделе “Мультимедиа”. После векторизации карты проходят тщательную проверку по большому количеству критериев. Например, уточняются на основе геодезических замеров.

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

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

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

В последнее время появились системы, предоставляющие доступ к просмотру географической информации с помощью среды Интернет. В таких системах предоставляется доступ к картам-схемам крупных городов, транспортных сетей, скомпилированным базам данных спутниковых фотографий. К этим данным “привязываются” данные о внешнем виде домов (трехмерные модели), информация о предприятиях и учреждениях, средства поиска оптимальных маршрутов. На основе этих данных, используя стандартные средства обмена данными в сети, строятся смешанные сервисы — например, позволяющие привязывать к картам из общедоступных сервисов различные факты о зонах на карте.

Сервис размещения пометок на карте (http://www.wikimapia.org),
составленной из спутниковых снимков

Продолжение