Третьи вопросы билетов
1.Предмет и области применения кг
Компьютерная графика (КГ) – это область информатики, включающая все аспекты формирования изображений с помощью компьютеров. В том случае, если пользователь может управлять характеристиками объектов, говорят об интерактивной компьютерной графике.
Cсовременные системы машинной графики позволяют создавать изображения, практически неотличимые по качеству от фотографических снимков.
При обработке информации, связанной с изображением на мониторе, принято выделять три основных направления: распознавание образов, обработку изображений и машинную графику.
Основная задача распознавания образов состоит в преобразовании уже имеющегося изображения на формально понятный язык символов. Распознавание образов, или система технического зрения (COMPUTER VISION), – совокупность методов, позволяющих получить описание изображения, поданного на вход, либо отнести заданное изображение к некоторому классу. Одной из задач COMPUTER VISION является так называемая «скелетизация» объектов, при которой восстанавливается некая основа объекта, его «скелет».
Обработка изображений (IMAGE PROCESSING) рассматривает задачи, в которых и входные, и выходные данные являются изображениями, например, передача изображения с устранением шумов и сжатием данных, переход от одного вида изображения к другому (от цветного к черно-белому) и т.д.
Компьютерная (машинная) графика (COMPUTER GRAPHICS) воспроизводит изображение в случае, когда исходной является информация неизобразительной природы, например визуализация экспериментальных данных в виде графиков, гистограмм или диаграмм, вывод информации на экран в компьютерных играх, синтез сцен на тренажерах.
Входные данные — величины, которые задаются до начала работы алгоритма или определяются динамически во время его работы. Входные данные берутся из определенного набора объектов.
Области применения компьютерной графики:
1. Отображение информации. Отображение статистических данных, результатов моделирования.
2. Проектирование.
– Системы CAD/CAM используются сегодня в различных областях инженерной конструкторской деятельности: от проектирования микросхем до создания самолетов.
– Архитектура. Есть ряд эффектных применений КГ в области проектирования стадионов и дизайна спортивного инвентаря.
– Медицина.
3. Моделирование. Моделирование реальной обстановки (симуляторы), построение фотореалистических изображений, формирование виртуальной реальности (VR – virtual reality).
4. Пользовательский интерфейс, например MS Windows, X-Windows, Mac OS и др.
Сегодня интерактивная машинная графика стала доступна уже не только узкому кругу специалистов. Мощные процессоры и современные программы сделали общение человека с ЭВМ настолько простым, что рисовать и даже проектировать с помощью ЭВМ может практически любой пользователь”.
2D-графика достигла максимальной скорости (для классических задач и разрешений). Все поставляемые сегодня ПК имеют возможности 3D-графики.
Активно развивается «новое» направление КГ – обработка видеоинформации.
История развития КГ. Современные тенденции развития КГ.
История компьютерной графики (КГ) тесно связана с этапами развития аппаратного обеспечения вычислительной техники.
Первые системы компьютерной графики появились вместе с первыми цифровыми компьютерами. Началом эры КГ можно считать проект 1950 года WHIRLWIND ("вихрь"). Его система уже имела дисплей. «Вихрь» стал основой создания опытного образца системы воздушной защиты как средства преобразования данных, полученных от радара, в наглядную форму.
Середина 1960-х – период плодотворной работы и в промышленных приложениях КГ. Сначала появилась цифровая электронная чертежная машина фирмы Itek. В 1964 году появилась DAC-1 – система автоматизированного проектирования, разработанная совместно с IBM. Первые запоминающие электронно-лучевые трубки появились в 1968 году, когда фирма Computer Displays создала систему ARDS, а Computek – свою серию 400.
В конце шестидесятых - начале семидесятых годов в области КГ начали работать новые фирмы. С появлением разнообразных пакетов программ, облегчающих процесс создания изображений, чертежей и интерфейсов системы "под ключ" стали совершенствоваться, что почти полностью изолировали пользователя от проблем, связанных с программным обеспечением. В конце семидесятых годов в КГ произошли значительные изменения. Память для дисплеев стала дешевле, появилась возможность создания растровых дисплеев, имеющих множество преимуществ: вывод больших массивов данных, устойчивое, немерцающее изображение, работа с цветом и недорогие мониторы. Впервые стало возможно получение блестящей цветовой гаммы.
В 1970-х помимо клавиатуры и светового пера так же появилась мышь, трекбол, графический планшет и дигитайзеры, а также сенсорные устройства. Высокоскоростные электростатические графопостроители позволяли быстро получать высококачественные монохромные копии. Менее дорогие многоперьевые крупноформатные электромеханические графопостроители формировали цветные копии. Ленточные регистраторы и струйные графопостроители также стали использоваться для получения цветных изображений.
Развитие систем CAD/CAM начиналось с мэйнфреймов, работающих с каркасными моделями. К середине восьмидесятых рабочие станции стали уже обычным средством.
В 1984 году появилась модель Apple Macintosh с графическим интерфейсом пользователя. Первоначально областью применения ПК были не графические приложения, а работа с текстовыми процессорами и электронными таблицами.В конце 80-х рабочие станции приобрели возможности вывода фотореалистических изображений в реальном масштабе времени. Манипулятор "мышь" стал естественным графическим устройством ввода, наряду с сенсорными системами, которые также нашли свое место в числе оборудования КГ.
В конце десятилетия акцент сдвинулся в сторону обработки, хранения и передачи сканируемых пиксельных изображений. Стала более реальной возможность создания стереоизображений и стереоскопических очков или полноэкранного жидкокристаллического дисплея с поляризующими панелями.
В конце 90-х становятся обычным явлением высокоскоростные сети. Появляются системы, которые распознают индивидуальные особенности пользователя на основе экспертных технологий. На разных стадиях разработки находятся способы организации интерфейсов на базе голоса и жестов.
Сегодня интерактивная машинная графика стала доступна уже не только узкому кругу специалистов. Мощные процессоры и современные программы сделали общение человека с ЭВМ настолько простым, что рисовать и даже проектировать с помощью ЭВМ может практически любой пользователь”.
2D-графика достигла максимальной скорости (для классических задач и разрешений). Все поставляемые сегодня ПК имеют возможности 3D-графики.
Активно развивается «новое» направление КГ – обработка видеоинформации.
Электронно-лучевые трубки:
электронно-лучевая трубка (ЭЛТ), используемая в видеомониторах. Катод нагревают до тех пор, пока возбужденные электроны не создадут расширяющегося облака. Эти электроны притягиваются к сильно заряженному положительному аноду. На внутреннюю сторону расширенного конца ЭЛТ нанесен люминофор. Облако электронов с помощью электронных линз фокусируется в узкий, строго параллельный пучок. Теперь сфокусированный электронный луч дает одно яркое пятно в центре ЭЛТ. Луч отклоняется или позиционируется влево или вправо от центра и выше или ниже центра с помощью усилителей горизонтального и вертикального отклонения. В цветной растровой ЭЛТ находятся три электронные пушки, по одной на каждый основной цвет: красный, зеленый и синий. Для того чтобы электронные пушки возбуждали только соответствующие им точки люминофора (например, красная пушка возбуждала только точку красного люминофора), между электронными пушками и поверхностью экрана помещена перфорированная металлическая решетка. Это так называемая теневая маска стандартной цветной ЭЛТ с теневой маской. Процесс преобразования хранящейся в буфере кадра растровой картинки в упорядоченный набор точек на телеэкране называется растровой разверткой. Минимальной скоростью вывода или изменения изображения является 25 кадров в секунду при условии, что минимальная скорость регенерации или воспроизведения в два раза больше, т. е. 50 кадр/с.
ЖК дисплеи: Процесс формирования изображений.
Молекулы ЖК являются стержнеобразными органическими соединениями и находятся в различных ориентациях в этих фазах. Если температура понижается, то в ЖК совершаются переходы через различные фазы, т.о. увеличивается упорядоченность, и в конце концов наступает твердое состояние.
Экран на динамическом рассеивании:
Две прозрачные пластинки, между ними жидкие кристаллы. Подано напряжение. Часть света отражается, и образуются цвета. Кристаллы выстраиваются определенным образом, создавая на экране изображение.
Экран на основе твист-эффекта:
Меняется плоскость поляризации. При подаче напряжения угол изменяется.
Для решения проблемы быстродействия были разработаны ЖК-дисплеи с активной матрицей, в которых каждый пиксель снабжен независимо управляемым тонкопленочным транзистором (TFT).
Плазменные дисплеи:
принцип работы: с двух сторон располагаются металлизированные полоски, В середине – диэлектрик с отверстиями. В отверстиях – газ. Все это склеивают. Одна пластинка служит катодом (К), другая – анодом(А).
API
Интерфейс между прикладной программой и графической системой – это множество функций, которые в совокупности образуют графическую библиотеку. Спецификация этих функций и есть то, что мы называем интерфейсом прикладного программирования (API –Appli cation programmer’s interface). Для программиста, занимающегося разработкой прикладной программы, существует только API, таким образом, он избавлен от необходимости вникать в подробности работы аппаратуры и программной реализации функций графической библиотеки. Программируемый интерфейс приложений (API) состоит из функций, управляющих 3D-конвейером на программном уровне, но при этом может использовать преимущества аппаратной реализации 3D при наличии этой возможности. Если имеется аппаратный ускоритель, API использует его преимущества, если нет, то API работает с оптимальными настройками, рассчитанными на самые обычные системы. Таким образом, благодаря применению API любое количество программных средств может поддерживаться любым количеством аппаратных 3D-ускорителей.
Конвейерный принцип обработки информации
Описывая технологии, применяемые в 3D-графических акселераторах, попробуем разобраться, каким же образом применение всех эффектов позволяет получить целостную картину. 3D-графика реализуется с помощью многоступенчатого механизма, называемого конвейером рендеринга.
Конвейерная обработка позволяет ускорить выполнение расчетов за счет того, что вычисления для следующего объекта могут быть начаты до окончания вычислений предыдущего. Конвейер рендеринга может быть разделен на 2 стадии: геометрическая обработка и растеризация.
1) Подготовка отсечения
Масштабирование
Освещение
Разбиение на примитивы
2) Удаление невидимых поверхностей
Z-Buffer, текстурирование
Туман
Прозрачность
Сглаживание
Pixel
Графический конвейер на стадии геометрической обработки выполняется преобразование координат (вращение, перенос и масштабирование всех объектов), отсечение невидимых частей объектов, расчет освещения, определение цвета каждой вершины с учетом всех световых источников и процесс деления изображения на более мелкие формы. Для описания характера поверхности объекта она делится на всевозможные многоугольники. Наиболее часто используется деление на треугольники и четырехугольники. Координаты объектов переводятся из вещественного в целочисленное представление для ускорения вычислений. На этапе рендеринга применяются эффекты в следующей последовательности: удаление скрытых поверхностей, наложение с учетом перспективы текстур с использованием z-буфера, применение эффектов тумана и полупрозрачности. После этого очередная точка считается готовой к помещению в буфер со следующего кадра. В отличие от геометрического этапа, зависящего от вычислительной мощности процессора, выполняющего все вычисления, этап рендеринга интенсивно использует ресурсы памяти. Для каких целей используется память, установленная на плате 3D-акселератора. В ней дополнительно хранятся текстуры, z-буфер и буфер следующего кадра.
2.Основы человеко-машинного взаимодействия (HCI)
Центральным понятием курса является термин «человеко-машинное взаимодействие» – Human-computer interaction (HCI).
Неразрывно связаны с ним понятия: эргономика, юзабилити, интерфейс, пользователь.
Факторы, значимые для HCI:
- эргономичность HCI;
- окружение HCI (средства взаимодействия, гипермедиа и Web, средства связи);
- разработка и развитие систем, ориентированных на пользователя;
- модели пользователя (восприятие, моторика, мышление, взаимодействие, организация работы, адаптация к многообразию);
- принципы разработки удобных пользовательских HCI;
- критерии и проверка легкости использования.
Человеко-компьютерное взаимодействие (HCI) — это изучение, планирование и разработка взаимодействия между людьми (пользователями) и компьютерами. Зачастую его рассматривают как совокупность науки о компьютерах, бихевиоризма, проектирования и других областей исследования. Взаимодействие между пользователями и компьютерами происходит на уровне пользовательского интерфейса (или просто интерфейса), который включает в себя программное и аппаратное обеспечение; например, образы или объекты, отображаемые на экранах дисплеев, данные, полученные от пользователя посредством аппаратных устройств ввода (таких как клавиатуры и мыши) и другие взаимодействия пользователя с крупными автоматизированными системами, такими как воздушное судно и электростанция.
Ассоциация вычислительной техники рассматривает взаимодействие человека и компьютера как «дисциплину, занимающуюся проектированием, оценкой и осуществлением работы интерактивных вычислительных систем для использования человеком, а также изучением происходящих процессов.» Важным аспектом человеко-компьютерного взаимодействия является обеспечение удовлетворения пользователей (см. Computer user satisfaction).
В связи с тем, что человеко-компьютерное взаимодействие изучается как с человеческой стороны, так и с компьютерной, то знания, полученные в ходе исследования, опираются как на человеческий фактор, так и на компьютерный. С компьютерной стороны важны технологии компьютерной графики, операционных систем, языков программирования и среды разработки. С человеческой стороны, теория коммуникации, графическое и производственное проектирование, лингвистика, социология, когнитивная психология и такие человеческие факторы как удовлетворение пользователей. Также имеет значение инженерия и проектирование. Благодаря междисциплинарному характеру человеко-компьютерного взаимодействия, люди с разным уровнем подготовки вносят вклад в его успех. Иногда человеко-компьютерное взаимодействие называют как человеко-машинное взаимодействие, так и компьютерно-человеческое взаимодействие.
Важным критерием является внимание к человеко-компьютерному взаимодействию, так как плохо разработанные интерфейсы могут стать причиной многих непредвиденных проблем. Классическим примером этого является авария на АЭС Три-Майл-Айленд, где в ходе расследования было выявлено, что, по крайне мере, частичную ответственность за катастрофу несёт на себе проектирование интерфейса. Подобным образом, аварии в авиации возникали вследствие решения производителей использовать нестандартные воздушные приборы и/или расположение штурвала. Хотя предполагалось, что новые конструкции более совершенны касательно основного человеко-компьютерного взаимодействия, пилотам было присуще «стандартное» расположение и, таким образом, концептуально хорошая идея, не повлекла желаемые результаты.
Основной задачей человеко-компьютерного взаимодействия является улучшение взаимодействия между человеком и компьютером, делая компьютеры более удобными (юзабельными) и восприимчивыми к потребностям пользователей. В частности, человеко-компьютерное взаимодействие занимается:
· методологией и развитием проектирования интерфейсов (т. е., исходя из требований и класса пользователей, проектирование наилучшего интерфейса в заданных рамках, оптимизация под требуемые свойства, такие как обучаемость и эффективность использования);
· методами реализации интерфейсов (например, программные инструментарии, библиотеки и рациональные алгоритмы);
· методами для оценки и сравнения таких интерфейсов;
· разработкой новых интерфейсов и методов взаимодействия (англ.)русск.;
· развитием описательных и прогнозируемых моделей;
· теорией взаимодействия.
Долгосрочной задачей человеко-компьютерного взаимодействия является разработка системы, которая снизит барьер между человеческой когнитивной моделью того, чего они хотят достичь и пониманием компьютера поставленных перед ним задач.
Специалисты человеко-компьютерного взаимодействия — это, как правило, разработчики, занимающиеся практическим применением методик разработки к реальным всемирным проблемам. Их работа, зачастую, вращается вокруг разработки графических- и веб-интерфейсов.
Исследователи человеко-компьютерного взаимодействия занимаются развитием новых методик проектирования, проведением экспериментов с новыми аппаратными устройствами, созданием прототипов новых систем программного обеспечения, изучением новых парадигм для взаимодействия и развитием теорий и моделей взаимодействия.
В изучении персонального информационного менеджера (ПИМ), взаимодействие человека с компьютером находится в обширной информационной среде — люди могут работать с различными формами информации, некоторые из которых компьютерные, многие — нет (к примеру доски, блокноты, стикеры, стикеры на магнитах), чтобы понять и эффективно воздейстовать на желаемые изменения своего мира. В области совместной работы акцент делается на использование вычислительных систем в поддержку совместной работы группы людей. Принципы управления командной работой расширяют сферу компьютерно-поддерживаемой совместной работы на организационном уровне и могут быть реализованы без использования компьютерных систем.
Создание качественного человеко-компьютерного интерфейса, который можно назвать точкой связи между человеком и компьютером, есть конечная цель изучения человеко-компьютерного взаимодействия.
Обмен информацией между человеком и компьютером можно определить как узел взаимодействия. Узел взаимодействия включает в себя несколько аспектов:
· Область задач: условия и цели, ориентированные на пользователя
· Область машины: среда с которой взаимодействует компьютер, то есть ноутбук студента в комнате в общежитии колледжа
· Области интерфейса: непересекающиеся области, касающиеся процессов человека и компьютера, не относящиеся к сфере взаимодействия
· Входящий поток: поток информации, который начинается в области задач, когда пользователь имеет несколько задач, которые требуют использования компьютера
· Выходной поток: поток информации, который возникает в машине
· Обратная связь: узлы взаимодействия, проходящие через интерфейс, оцениваются, модерируются и подтверждаются, так как они проходят от человека через интерфейс к компьютеру и обратно.
Человеко-компьютерное
взаимодействие имеет различия с человеческим фактором (учитываемым в эргономике и юзабилити) в том, что человеко-компьютерное взаимодействие
акцентирует своё внимание больше на пользователях, работающих предпочтительнее
с компьютерами, чем с другими видами техники или артефактами. Также
человеко-компьютерное взаимодействие акцентирует своё внимание на реализации
программного обеспечения и оборудования для поддержки человеко-компьютерного
взаимодействия. Таким образом, человеческий фактор является более
широким понятием; и человеко-компьютерное взаимодействие может быть
охарактеризовано как человеческий фактор — хотя некоторые
специалисты пытаются разделить данные области.
Также человеко-компьютерное взаимодействие отличается от человеческого
фактора меньшим акцентированием внимания на задачах и процедурах и гораздо
меньшим акцентированием на физическую нагрузку, истекающую из формы дизайна устройств интерфейса (таких как клавиатура и мышь).
Человеко-компьютерное взаимодействие получило развитие в контексте разнонаправленных научных векторов (компьютерная графика, инженерная психология, эргономика, теория организации, когнитивная наука, информатика и многие др.)
Началом эргономической фазы человеко-компьютерного взаимодействия можно считать диссертацию Сазерленда (Sutherland, 1963), которая определила развитие компьютерной графики как науки. При этом компьютерная графика нуждалась в эргономических проектах с целью эффективного управления сложными моделями CAD/CAM систем. Исследования в этой области были продолжены в работах «Man-machine symbiosis» (Licklider, 1960), «Augmentation of human intellect» (Engelbart, 1963) и «Dynabook» (Кей и Голдберг, 1977). В результате научных исследований получили развитие те инструменты, без которых трудно представить сейчас работу с компьютером: «мышь», поэлементно-адресуемое (bitmap) отображение, «окно», метафора рабочего стола, point-and-click редакторы.
Так же проблематика производимых человеком операций за компьютером была естественным продолжением классических целей инженерной психологии, за исключением того, что новые проблемы имели существенный когнитивный, коммуникационный и интерактивный характер, ранее не рассматриваемый в инженерной психологии и способствовали продвижению, таким образом, инженерной психологии в этом направлении.
Эргономические исследования также подчёркивали связь условий работы с явлениями, вызывающими напряжение (стресс), такими, как: рутинная работа, сидячее положение, зрительное восприятие визуальных образов на дисплеях и многими другими, до этого не рассматриваемые как взаимосвязанные.
Наконец, вопрос: «как использование компьютерной техники вписывается в проектирование технологии производства?» вывел взаимодействие с компьютерами на уровень эффективной организации труда и включил даже в проблематику социального управления.
Гипермедиа (hypermedia) -
применение принципов гипертекста к средствам мультимедиа.
Гипермедиа - метод дискретного представления информации на узлах,
соединяемых при помощи ссылок. Данные могут быть представлены в виде текста,
графики, звукозаписей, видеозаписей, мультипликации, фотографий или исполняемой
документации.
Гипермедиа - термин, введённый Тедом Нельсоном, и использованный в его работе Complex
information processing: a file structure for the complex, the changing and the
indeterminate 1965 год . Гипермедиа — это
гипертекст, в который включены графика, звук, видео, текст и ссылки, для того
чтобы создать основу нелинейной среды информации. Гипермедиа соотносится с
определением мультимедиа, которое используется чтобы описать неинтерактивные
последовательные данные также как и гипермедиа.
Всемирная Паутина - классический пример гипермедиа, где интерактивные единицы
соседствуют с мультимедийными.
Гипермедиа (hypermedia) -
применение принципов гипертекста к средствам мультимедиа.
Гипермедиа - метод дискретного представления информации на узлах,
соединяемых при помощи ссылок. Данные могут быть представлены в виде текста,
графики, звукозаписей, видеозаписей, мультипликации, фотографий или исполняемой
документации.
Гипермедиа - термин, введённый Тедом Нельсоном, и использованный в его работе Complex
information processing: a file structure for the complex, the changing and the
indeterminate 1965 год . Гипермедиа — это
гипертекст, в который включены графика, звук, видео, текст и ссылки, для того
чтобы создать основу нелинейной среды информации. Гипермедиа соотносится с
определением мультимедиа, которое используется чтобы описать неинтерактивные
последовательные данные также как и гипермедиа.
Всемирная Паутина - классический пример гипермедиа, где интерактивные единицы
соседствуют с мультимедийными.
3.Разработка и развитие систем, ориентированных на пользователя.
При оценке текущего пользовательского интерфейса или разработке нового интерфейса следует иметь в виду следующие принципы разработки:
· С самого начала необходимо акцентировать своё внимание на пользователях и задачах: установить количество пользователей, требуемых для выполнения задачи и определить подходящих пользователей; кто-либо никогда не использовавший интерфейс, либо тот, кто никогда не будет его использовать в будущем является неподходящим пользователем. Кроме того, необходимо определить какие задачи и как часто будут выполнять пользователи.
· Эмпирические измерения (англ.)русск.: на ранней стадии провести тест интерфейса с реальными пользователями, которые используют интерфейс каждый день. Имейте в виду, что результаты могут измениться, если уровень производительности пользователя не является точным отображением реального человеко-компьютерного взаимодействия. Установить количественные особенности практичности, такие как: количество пользователей, выполняющих задачи, время выполнения задачи, и количество ошибок, сделанных в ходе выполнения задачи.
· Итеративное проектирование (англ.)русск.: после определения количества пользователей, поставленных задач, эмпирических измерений, выполните следующие шаги итеративной разработки:
1. разработайте пользовательский интерфейс,
2. проведите тестирование,
3. проанализируйте результаты,
4. повторите предыдущие шаги.
4.Математические основы компьютерной графики. Геометрические преобразования.
Аффинные преобразования на плоскости.
Допустим, на плоскости введена прямолинейная координатная система. Тогда каждой точке М ставится в соответствие упорядоченная пара чисел (х, у) ее координат (рис. 1). Вводя на плоскости еще одну прямолинейную систему координат, мы ставим в соответствие той же точке М другую пару чисел - (х*, у*).
Переход от одной прямолинейной координатной системы на плоскости к другой описывается следующими соотношениями:
где a, b, l, g, m, d – произвольные числа, связанные
неравенством
Формулы (*) можно рассматривать двояко: либо сохраняется точка и изменяется координатная система (рис. 2) – в этом случае произвольная точка М остается той же, изменяются лишь ее координаты, либо изменяется точка и сохраняется координатная система (рис. 3) – формулы (*) задают отображение, переводящее произвольную точку M(x,y) в точку М*(х*, у*), координаты которой определены в той же координатной системе.
Рис. 1 |
Рис. 2 |
Рис. 3 |
В дальнейшем мы будем рассматривать формулы (*) как правило, согласно которому в заданной системе прямолинейных координат преобразуются точки плоскости.
В аффинных преобразованиях плоскости особую роль играют несколько важных частных случаев. При исследовании геометрического смысла числовых коэффициентов в формулах (*) для этих случаев нам удобно считать, что заданная система координат является прямоугольной декартовой.
1. Поворот вокруг начальной точки на угол j описывается формулами:
2. Растяжение (сжатие) вдоль координатных осей можно задать так:
х* = aх, у*=dу, а > 0, d > 0 .
Например, растяжение (сжатие) вдоль оси абсцисс обеспечивается при условии, что a > 1 (0 < a < 1).
3. Отражение (относительно оси абсцисс) задается при помощи формул:
х* = х, у* = -у.
4. Параллельный перенос обеспечивают соотношения
x* = x + l,
у* = у + m..
Выбор этих четырех частных случаев определен двумя обстоятельствами.
1. Каждое из приведенных преобразований имеет простой и наглядный геометрический смысл (геометрическим смыслом наделены и постоянные числа, входящие в приведенные формулы).
2. Любое преобразование вида (*) всегда можно представить в виде последовательного исполнения простейших преобразований.
Для эффективного использования этих известных формул более удобной является их матричная запись.
,
,
Этого можно достичь, например, так: перейти к описанию произвольной точки плоскости тройкой чисел.
Для решения таких задач, как движение объектов и их частей, управления камерой применяются аффинные преобразования (АП), рассмотрим их основные свойства:
1) точки, лежащие на одной прямой, после преобразования лежат на одной прямой;
2) пересекающиеся прямые остаются пересекающимися, а параллельные – параллельными;
3) при АП пространства пересекающиеся плоскости остаются пересекающимися, параллельные – параллельными, а скрещивающиеся – скрещивающимися;
4) при АП сохраняются отношения площадей двух квадратов на плоскости и отношение объемов двух кубов в пространстве.
Пусть М - произвольная точка плоскости с координатами х и у, вычисленными относительно заданной прямолинейной координатной системы. Однородными координатами этой точки называется любая тройка одновременно неравных нулю чисел x1, x2, x3, связанных с заданными числами x и y следующими соотношениями:
x1/x3=x, x2/x3=y.
При решении задач компьютерной графики однородные координаты обычно вводятся так: произвольной точке М(х, у) плоскости ставится в соответствие точка М*(х,у,1) в пространстве. Произвольная точка на прямой, соединяющей начало координат, точку 0(0, 0, 0) с точкой М*(х, у, 1), может быть задана тройкой чисел вида (hx, hy, h).
Будем считать, что h¹0. Вектор с координатами hx, hy, h является направляющим вектором прямой, соединяющей точки 0(0, 0, 0) и М*(х, у, 1). Эта прямая пересекает плоскость z = 1 в точке (х, у, 1), которая однозначно определяет точку (х, у) координатной плоскости ху.
При помощи троек однородных координат и матриц третьего порядка можно описать любое аффинное преобразование плоскости. В самом деле, считая h = 1, сравним две записи: помеченную символом * и матричную:
Нетрудно заметить, что после перемножения выражений, стоящих в правой части последнего соотношения, мы получим обе формулы (*) и верное числовое равенство 1 == 1. Тем самым сравниваемые записи можно считать равносильными.
Выпишем соответствующие матрицы третьего порядка для базовых аффинных преобразований:
1. Матрица вращения (rotation)
|
2. Матрица растяжения (сжатия) (dilatation)
|
3. Матрица переноса (translation)
|
4. Матрица отражения (reflection) |
Проецирование. Общий вид преобразований в пространстве. Виды проекций.
Трехмерных объекты, на бумаге и на экране дисплея, вычерчиваются при помощи двухмерных проекций. В плоской проекции каждая точка предмета отображается определенным образом на плоскость проекции, и её образ называется точкой проекции. Если линии, соединяющие точки предмета с соответствующими точками отображения, параллельны, то мы имеем плоскую параллельную проекцию. Если же линии сходятся в одной общей точке, то получаемое изображение называется центральной проекцией, или перспективным изображением предмета.
Проецирование эквивалентно сдвигу картинной плоскости и предмета до тех пор, пока плоскость проекции не пройдет через начало координат. Чтобы восстановить точку объекта, необходимо выполнить обратные преобразования.
|
где a, d, е – масштабирование: m, n, l –
смещение; |
Параллельные проекции можно разделить на следующие группы:
1) ортографическая проекция (параллельно одной из координатных плоскостей) координатная плоскость параллельна или совпадает с одной из координатных плоскостей. Если она параллельна, то необходимо координаты исходной точки умножить на матрицу сдвига с параметром m или n или l <>0.
2) аксонометрическая проекция (проектирующие прямые перпендикулярны картинной плоскости):
– триметрическая (нормальный вектор картинной плоскости образует с ортами координатных осей попарно различные углы);
– диметрическая (два угла между нормалью картинной плоскости и координатными осями равны);
– изометрическая (три угла между нормалью картинной плоскости и координатными осями равны); Каждый из трех видов аксонометрических проекций получается комбинацией поворотов, за которой следует параллельное проектирование. Например, поворот вокруг оси ординат, оси абцисс и проектирование вдоль оси аппликат.
3) Проекции, для получения которых используется пучок прямых, не перпендикулярных плоскости экрана, называют косоугольными.
– Свободная-;кабинетная.Среди перспективных проекций выделяются:-одноточечная (r ¹ 0);-двухточечная (p, q ¹ 0);-трехточечная (p, q, r ¹ 0).
На фотографиях, картинах, экране изображения кажутся нам естественными и правильными. Такие проекции называют перспективными. Одно из их основных свойств – более удаленные предметы изображаются в меньших масштабах, а параллельные прямые, в общем случае, не параллельны. Обычная перспективная проекция – это центральная проекция на плоскость прямыми лучами, проходящими через точку – центр проецирования. Один из проецирующих лучей перпендикулярен к плоскости проецирования и называется главным. Точка пересечения этого луча и плоскости проекции – главная точка картины.
Когда нужно показать широкую панораму или окружающее нас пространство, плоская картина становится неэффективной. Можно представить себе зрителя окруженным цилиндрической или сферической (полусферической) поверхностью, на которую нанесено изображение. Чтобы на экране изображение воспринималось правильным, на пленке оно должно быть построено по специальным алгоритмам. Такие разнообразные проекции называются специальными.
В OpenGL ортографическая проекция задается функциями:
- glOrtho(left, right, bottom, top, near, far), где near >0, far >0.
- glOrtho2D(left, right, bottom, top), где near=0, far=1.
В OpenGL перспективная проекция задается функциями:
- glFrustum(left, right, bottom, top, near, far), где near >0 , far >0;
- gluPerespective(fovy,aspect,near,far) – параметр fovy задает угол видимости в направлении оси OY в градусах, центрированный относительно этой оси.
Используемый в OpenGL и других графических API подход базируется на методике нормализации проецирования (projection normalization), которая предусматривает сведение всех типов проекций к ортогональной, для чего выполняется предварительной искажение исходных объектов.
Структура взаимосвязей между системами координат
Координаты определяются осями ( х – ось абсцисс, у - ось ординат)
Расстояние определяется проекциями
^
Точка О – полюс, - полярный угол ,
r – полярное расстояние.
M(r, )
Соответственно
^
Есть некая плоскость Z проекция на точку M
угол - полярное
расстояние
угол - долгота
Соответственно
1.
2.
3.
^
|
|
|
|
|
|
|
|
|
|
|
|
0 в середине экрана у Картезианской системе координат.
(.) Все наши
представления в векторах, в виде матрицы
Формы восприятия и выражения во многих областях науки и искусства, в конечном
счете, опираются на симметрию, используемую и проявляющуюся в специфических
понятиях и средствах. Симметрию любого предмета можно описать в терминах его
элементов симметрии, но также симметрия предмета допускает описание и в
терминах операций симметрии.
·
5. Растровое преобразование графических примитивов.
Алгоритм Брезенхе́ма (англ. Bresenham's line algorithm) — это алгоритм, определяющий, какие точки двумерного растра нужно закрасить, чтобы получить близкое приближение прямой линии между двумя заданными точками. Это один из старейших алгоритмов в машинной графике — он был разработан Джеком Е. Брезенхэмом (Jack E. Bresenham) в компании IBM в 1962 году. Алгоритм широко используется, в частности, для рисования линий на экране компьютера. Существует обобщение алгоритма Брезенхэма для построения кривых 2-го порядка.
Отрезок
проводится между двумя точками — и
, где в этих
парах указаны колонка и строка, соответственно, номера которых растут вправо и
вниз. Сначала мы будем предполагать, что наша линия идёт вниз и вправо, причём
горизонтальное расстояние
превосходит
вертикальное
, то есть наклон
линии от горизонтали — менее 45°. Наша цель состоит в том, чтобы для
каждой колонки x между
и
, определить, какая строка y ближе всего к линии, и
нарисовать точку
.
Общая формула линии между двумя точками:
Поскольку
мы знаем колонку , то строка
получается округлением к целому следующего значения:
Однако,
вычислять точное значение этого выражения нет необходимости. Достаточно
заметить, что растёт от
и за каждый шаг мы добавляем к
единицу
и добавляем к
значение наклона
которое можно вычислить заранее. Более того, на каждом шаге мы делаем одно из двух: либо сохраняем тот же y, либо увеличиваем его на 1.
Что
из этих двух выбрать — можно решить, отслеживая значение ошибки,
которое означает — вертикальное расстояние между текущим значением y
и точным значением y для текущего x. Всякий раз, когда мы
увеличиваем x, мы увеличиваем значение ошибки на величину наклона s,
приведённую выше. Если ошибка превысила 0.5, линия стала ближе к следующему y,
поэтому мы увеличиваем y на единицу, одновременно уменьшая значение
ошибки на 1. В реализации алгоритма, приведённой ниже, plot(x,y)
рисует
точку, а abs
возвращает абсолютную величину числа:
function line(x0, x1, y0, y1)
int deltax := abs(x1 - x0)
int deltay := abs(y1 - y0)
real error := 0
real deltaerr := deltay / deltax
int y := y0
for x from x0 to x1
plot(x,y)
error := error + deltaerr
if error >= 0.5
y := y + 1
error := error - 1.0
Проблема
такого подхода — в том, что с вещественными величинами, такими как error
и deltaerr
, компьютеры
работают относительно медленно. Кроме того, при вычислениях с плавающей точкой
может накапливаться ошибка. По этим причинам, лучше работать только с целыми
числами. Это можно сделать, если умножить все используемые вещественные
величины на deltax
.
Единственная проблема — с константой 0.5 — но в данном случае
достаточно умножить обе части неравенства на 2. Получаем следующий код:
function line(x0, x1, y0, y1)
int deltax := abs(x1 - x0)
int deltay := abs(y1 - y0)
int error := 0
int deltaerr := deltay
int y := y0
for x from x0 to x1
plot(x,y)
error := error + deltaerr
if 2 * error >= deltax
y := y + 1
error := error - deltax
Умножение на 2 для целых чисел можно реализовать битовым сдвигом влево. Однако, если число отрицательное, при сдвиге пропадёт бит знака.
Теперь мы можем быстро рисовать линии, направленные вправо-вниз с величиной наклона меньше 1. Осталось распространить алгоритм на рисование во всех направлениях. Это достигается за счёт зеркальных отражений, то есть заменой знака (шаг в 1 заменяется на −1), обменом переменных x и y, обменом координат начала отрезка с координатами конца.
Алгоритм Брезенхема для генерации окружности.
В растр нужно разлагать не только линейные, но и другие, более сложные функции. Разложению конических сечений, т. е. окружностей, эллипсов, парабол, гипербол, было посвящено значительное число работ . Наибольшее внимание, разумеется, уделено окружности. Один из наиболее эффективных и простых для понимания алгоритмов генерации окружности принадлежит Брезенхему . Для начала заметим, что необходимо сгенерировать только одну восьмую часть окружности. Остальные ее части могут быть получены последовательными отражениями, как это показано на рис. 5.1. Если сгенерирован первый октант (от 0 до 45° против часовой стрелки), то второй октант можно получить зеркальным отражением относительно прямой у = х, что дает в совокупности первый квадрант. Первый квадрант отражается относительно прямой х = 0 для получения соответствующей части окружности во втором квадранте. Верхняя полуокружность отражается относительно прямой у = 0 для завершения построения. На рис. 5.1 приведены двумерные матрицы соответствующих преобразований.
6. Отсечение геометрических примитивов при построении изображения на компьютере
Алгоритм Коэна — Сазерленда (англ. Cohen-Sutherland) — алгоритм отсечения отрезков, то есть алгоритм, позволяющий определить часть отрезка, которая пересекает прямоугольник. Был разработан Дэном Коэном и Айвеном Сазерлендом в Гарварде в 1966—1968 гг., и опубликован на конференции AFIPS в 1968
Алгоритм разделяет плоскость на 9 частей прямыми, которые образуют стороны прямоугольника. Каждой из 9 частей присваивается четырёхбитный код. Биты (от младшего до старшего) значат «левее», «правее», «ниже», «выше». Иными словами, у тех трёх частей плоскости, которые слева от прямоугольника, младший бит равен 1, и так далее.
Алгоритм определяет код конечных точек отрезка. Если оба кода равны нулю, то отрезок полностью находится в прямоугольнике. Если битовое И кодов не равно нулю, то отрезок не пересекает прямоугольник (т.к. это значит, что обе конечные точки отрезка находятся с одной стороны прямоугольника). В прочих случаях, алгоритм выбирает конечную точку, находящуюся вне прямоугольника, находит ближайшую к ней точку пересечения отрезка с одной из линий, образующей стороны прямоугольника, и использует эту точку пересечения как новую конечную точку отрезка. Укороченный отрезок снова пропускается через алгоритм.
Реализация алгоритма для трёхмерной модели идентична двумерной реализации, за исключением того, что вместо четырёхразрядного кода применяется шестиразрядный (дополнительные два бита глубины).
Пример реализации на языке C для двумерной модели:
#define LEFT 1 /* двоичное 0001 */
#define RIGHT 2 /* двоичное 0010 */
#define BOT 4 /* двоичное 0100 */
#define TOP 8 /* двоичное 1000 */
/* точка */
struct point {
double x, y;
};
/* прямоугольник */
struct rect {
double x_min, y_min, x_max, y_max;
};
/* вычисление кода точки
r : указатель на struct rect; p : указатель на struct point */
#define vcode(r, p) \
((((p)->x < (r)->x_min) ? LEFT : 0) + /* +1 если точка левее прямоугольника */ \
(((p)->x > (r)->x_max) ? RIGHT : 0) + /* +2 если точка правее прямоугольника */\
(((p)->y < (r)->y_min) ? BOT : 0) + /* +4 если точка ниже прямоугольника */ \
(((p)->y > (r)->y_max) ? TOP : 0)) /* +8 если точка выше прямоугольника */
/* если отрезок ab не пересекает прямоугольник r, функция возвращает -1;
если отрезок ab пересекает прямоугольник r, функция возвращает 0 и отсекает
те части отрезка, которые находятся вне прямоугольника */
int cohen_sutherland (const struct rect *r, struct point *a, struct point *b)
{
int code_a, code_b, code; /* код конечных точек отрезка */
struct point *c; /* одна из точек */
code_a = vcode(r, a);
code_b = vcode(r, b);
/* пока одна из точек отрезка вне прямоугольника */
while (code_a | code_b) {
/* если обе точки с одной стороны прямоугольника, то отрезок не пересекает прямоугольник */
if (code_a & code_b)
return -1;
/* выбираем точку c с ненулевым кодом */
if (code_a) {
code = code_a;
c = a;
} else {
code = code_b;
c = b;
}
/* если c левее r, то передвигаем c на прямую x = r->x_min
если c правее r, то передвигаем c на прямую x = r->x_max */
if (code & LEFT) {
c->y += (a->y - b->y) * (r->x_min - c->x) / (a->x - b->x);
c->x = r->x_min;
} else if (code & RIGHT) {
c->y += (a->y - b->y) * (r->x_max - c->x) / (a->x - b->x);
c->x = r->x_max;
}/* если c ниже r, то передвигаем c на прямую y = r->y_min
если c выше r, то передвигаем c на прямую y = r->y_max */
else if (code & BOT) {
c->x += (a->x - b->x) * (r->y_min - c->y) / (a->y - b->y);
c->y = r->y_min;
} else if (code & TOP) {
c->x += (a->x - b->x) * (r->y_max - c->y) / (a->y - b->y);
c->y = r->y_max;
}
/* обновляем код */
if (code == code_a)
code_a = vcode(r,a);
else
code_b = vcode(r,b);
}
/* оба кода равны 0, следовательно обе точки в прямоугольнике */
return 0;
}
Пример реализации на языке C для трёхмерной модели:
#define BOTTOM 1 // 00 000001
#define LEFT 2 // 00 000010
#define TOP 4 // 00 000100
#define RIGHT 8 // 00 001000
#define BACK 16 // 00 010000
#define FRONT 32 // 00 100000
typedef struct Area {
float xlt,ylt,zlt; // Координаты левого верхнего угла ближней грани
float xrb,yrb,zrb; // Координаты правого нижнего угла дальней грани
} Area;
int GetCode ( const float point[1][4], const Area &anArea ) {
int code = 0;
if ( point[0][1] > anArea.ylt ) // Точка выше области отсечения
code |= TOP;
else if ( point[0][1] < anArea.yrb )// Точка ниже области отсечения
code |= BOTTOM;
if ( point[0][0] > anArea.xrb ) // Точка правее области отсечения
code |= RIGHT;
else if ( point[0][0] < anArea.xlt )// Точка левее области отсечения
code |= LEFT;
if ( point[0][2] < anArea.zlt ) // Точка перед областью отсечения
code |= FRONT;
else if ( point[0][2] > anArea.zrb )// Точка заобластью отсечения
code |= BACK;
return code;
}
// Трёхмерное отсечение методом Коэна-Сазерленда.
// beg - координаты начала отрезка [xn,yn,zn,1]
// end - координаты конца отрезка [xk,yk,zk,1]
// anArea - координаты отсекающей области
void CS_Clip( const float beg[1][4], const float end[1][4], const Area &anArea )
{
// Коды концов отрезка
int outcode0 = 0, outcode1 = 0, outcodeOut = 0;
char codes[2][7] = {"000000","000000"};
float temp[2][1][4];
// Флаг видимости и флаг завершения отсечения
bool accept = false, done = false;
outcode0 = GetCode( beg, codes[0],anArea ); // Вычисляем начальные коды концов отрезка
outcode1 = GetCode( end, codes[1],anArea );
do
{
float x, y, z;
if (!( outcode0 | outcode1 )) { // Отрезок полностью видимый
accept = true;
done = true;
}
else if ( outcode0 & outcode1 ) // Отрезок полностью невидимый
done = true;
else { // Отрезок частично видимый. Вычисление точек пересечения отрезка и области отсечения
outcodeOut = outcode0 ? outcode0: outcode1;
if( outcodeOut & TOP ) {
x = beg[0][0]+(end[0][0]-beg[0][0])*(anArea.ylt-beg[0][1])/(end[0][1]-beg[0][1]);
z = beg[0][2]+(end[0][2]-beg[0][2])*(anArea.ylt-beg[0][1])/(end[0][1]-beg[0][1]);
y = anArea.ylt;
}
else if( outcodeOut & BOTTOM ) {
x = beg[0][0]+(end[0][0]-beg[0][0])*(anArea.yrb-beg[0][1])/(end[0][1]-beg[0][1]);
z = beg[0][2]+(end[0][2]-beg[0][2])*(anArea.yrb-beg[0][1])/(end[0][1]-beg[0][1]);
y = anArea.yrb;
}
else if( outcodeOut & RIGHT ) {
y = beg[0][1]+(end[0][1]-beg[0][1])*(anArea.xrb-beg[0][0])/(end[0][0]-beg[0][0]);
z = beg[0][2]+(end[0][2]-beg[0][2])*(anArea.xrb-beg[0][0])/(end[0][0]-beg[0][0]);
x = anArea.xrb;
}
else if( outcodeOut & LEFT ) {
y = beg[0][1]+(end[0][1]-beg[0][1])*(anArea.xlt-beg[0][0])/(end[0][0]-beg[0][0]);
z = beg[0][2]+(end[0][2]-beg[0][2])*(anArea.xlt-beg[0][0])/(end[0][0]-beg[0][0]);
x = anArea.xlt;
}
else if( outcodeOut & FRONT ) {
x = beg[0][0]+(end[0][0]-beg[0][0])*(anArea.zlt-beg[0][2])/(end[0][2]-beg[0][2]);
y = beg[0][1]+(end[0][1]-beg[0][1])*(anArea.zlt-beg[0][2])/(end[0][2]-beg[0][2]);
z = anArea.zrb;
}
else if( outcodeOut & BACK ) {
x = beg[0][0]+(end[0][0]-beg[0][0])*(anArea.zrb-beg[0][2])/(end[0][2]-beg[0][2]);
y = beg[0][1]+(end[0][1]-beg[0][1])*(anArea.zrb-beg[0][2])/(end[0][2]-beg[0][2]);
z = anArea.zlt;
}
if ( outcodeOut == outcode0 ) {
temp[0][0][0] = x;
temp[0][0][1] = y;
temp[0][0][2] = z;
outcode0 = GetCode( temp[0],codes[0],anArea );
}
else {
temp[1][0][0] = x;
temp[1][0][1] = y;
temp[1][0][2] = z;
outcode1 = GetCode( temp[1], codes[1],anArea );
}
}
}while ( !done );
if( accept ) { // Отрезок полностью видимый. Вывод отрезка на экран.
LINE(temp[0],temp[1]);
|
Рис. 5.1. Генерация полной окружности из дуги в первом октанте.
Для вывода алгоритма рассмотрим первую четверть окружности с центром в начале координат. Заметим, что если работа алгоритма начинается в точке х = 0, у = R, то при генерации окружности по часовой стрелке в первом квадранте у является монотонно убывающей функцией аргументам (рис. 5.2). Аналогично, если исходной точкой является у = 0, х == R, то при генерации окружности против часовой стрелки х будет монотонно убывающей функцией аргумента у. В нашем случае выбирается генерация по часовой стрелке с началом в точке х = 0, у = R. Предполагается, что центр окружности и начальная точка находятся точно в точках растра.
Для любой заданной точки на окружности при генерации по часовой стрелке существует только три возможности выбрать следующий пиксел, наилучшим образом приближающий окружность: горизонтально вправо, по диагонали вниз и вправо, вертикально вниз. На рис. 5.3 эти направления обозначены соответственно mH, mD, mV. Алгоритм выбирает пиксел, для которого минимален квадрат расстояния между одним из этих пикселов и окружностью, т. е. минимум из
mH = |(xi + 1)2 + (yi)2 -R2|
mD = |(xi + 1)2 + (yi -1)2 -R2|
mV = |(xi )2 + (yi -1)2 -R2|
Рис. 5.2. Окружность в первом квадранте. |
|
Рис.5.3. Выбор пикселов в первом квадранте. |
Вычисления можно упростить, если заметить, что в окрестности точки (xi,yi,) возможны только пять типов пересечений окружности и сетки растра, приведенных на рис. 5.4.
|
Рис. 5.4. Пересечение окружности и сетки растра.
Разность между квадратами расстояний от центра окружности до диагонального пиксела (xi, + 1, уi - 1) и от центра до точки на окружности R2 равна
i = (xi + 1)2 + (yi -1)2 -R2
Как и в алгоритме Брезенхема для отрезка, для выбора соответствующего пиксела желательно использовать только знак ошибки, а не ее величину.
При i < 0 диагональная точка (xi, + 1, уi - 1) находится внутри реальной окружности, т. е. это случаи 1 или 2 на рис. 5.4. Ясно, что в этой ситуации следует выбрать либо пиксел (xi, + 1, уi), т. е. mH, либо пиксел (xi, + 1, уi - 1), т. е. mD. Для этого сначала рассмотрим случай 1 и проверим разность квадратов расстояний от окружности до пикселов в горизонтальном и диагональном направлениях:
= |(xi + 1)2 + (yi )2 -R2| - |(xi + 1)2 + (yi -1)2 -R2|
При < 0 расстояние от окружности до диагонального пиксела больше, чем до горизонтального. Напротив, если > 0, расстояние до горизонтального пиксела больше. Таким образом,
при <= 0 выбираем mH в (xi, + 1, уi - 1)
при > 0 выбираем mD в (xi, + 1, уi - 1)
При = 0, когда расстояние от окружности до обоих пикселов одинаковы, выбираем горизонтальный шаг.
Количество вычислений, необходимых для оценки величины , можно сократить, если заметить, что в случае 1
(xi + 1)2 + (yi )2 -R2 >= 0
(xi + 1)2 + (yi -1)2 -R2 < 0
так как диагональный пиксел (xi, + 1, уi - 1) всегда лежит внутри окружности, а горизонтальный (xi, + 1, уi ) - вне ее. Таким образом, можно вычислить по формуле
= (xi + 1)2 + (yi )2 -R2 + (xi + 1)2 + (yi -1)2 -R2
Дополнение до полного квадрата члена (yi )2 с помощью добавления и вычитания - 2yi + 1 дает
= 2[(xi + 1)2 + (yi -1)2 -R2] + 2yi - 1
В квадратных скобках стоит по определению i и его подстановка
= 2( i + yi ) - 1
существенно упрощает выражение.
Рассмотрим случай 2 на рис. 5.4 и заметим, что здесь должен быть выбран горизонтальный пиксел (xi, + 1, уi), так как .у является монотонно убывающей функцией. Проверка компонент показывает, что
(xi + 1)2 + (yi )2 -R2 < 0
(xi + 1)2 + (yi -1)2 -R2 < 0
поскольку в случае 2 горизонтальный (xi, + 1, уi) и диагональный (xi, + 1, уi -1) пикселы лежат внутри окружности. Следовательно, < 0, и при использовании того же самого критерия, что и в случае 1, выбирается пиксел (xi, + 1, уi).
Если i > 0, то диагональная точка (xi, + 1, уi -1) находится вне окружности, т. е. это случаи 3 и 4 на рис. 5.4. В данной ситуации ясно, что должен быть выбран либо пиксел (xi, + 1, уi -1), либо (xi, , уi -1). Аналогично разбору предыдущего случая критерий выбора можно получить, рассматривая сначала случай 3 и проверяя разность между квадратами расстояний от окружности до диагонального mD и вертикального mV пикселов,
т. е. ' = |(xi + 1)2 + (yi -1)2 -R2| - |(xi)2 + (yi -1)2 -R2 |
При' < 0 расстояние от окружности до вертикального пиксела (xi, , уi -1) больше и следует выбрать диагональный шаг к пикселу (xi, + 1, уi -1). Напротив, в случае' > 0 расстояние от окружности до диагонального пиксела больше и следует выбрать вертикальное движение к пикселу (xi, , уi -1). Таким образом,
при ' <= 0 выбираем mD в (xi +1, , уi -1)
при ' > 0 выбираем mV в (xi, , уi -1)
Здесь в случае ' = 0, т. е. когда расстояния равны, выбран диагональный шаг.
Проверка компонент ' показывает, что
(xi )2 + (yi -1)2 -R2 >= 0
(xi + 1)2 + (yi -1)2 -R2 < 0
поскольку для случая 3 диагональный пиксел (xi +1, уi -1) находится вне окружности, тогда как вертикальный пиксел (xi, , уi -1) лежит внутри ее. Это позволяет записать ' в виде
' = (xi +1)2 + (yi -1)2 -R2 + (xi )2 + (yi -1)2 -R2
Дополнение до полного квадрата члена (xi)2 с помощью добавления и вычитания 2xi + 1 дает
' = 2[(xi +1)2 + (yi -1)2 -R2] - 2xi - 1
Использование определения i приводит выражение к виду
' = 2( i - xi )- 1
Теперь, рассматривая случай 4, снова заметим, что следует выбрать вертикальный пиксел (xi, уi -1), так как у является монотонно убывающей функцией при возрастании х.
Проверка компонент ' для случая 4 показывает, что
(xi +1)2 + (yi -1)2 -R2 > 0
(xi )2 + (yi -1)2 -R2 > 0
поскольку оба пиксела находятся вне окружности. Следовательно, ' > 0 и при использовании критерия, разработанного для случая 3, происходит верный выбор mV.
Осталось проверить только случай 5 на рис. 5.4, который встречается, когда диагональный пиксел (xi, , уi -1) лежит на окружности, т. е. i = 0. Проверка компонент показывает, что
(xi +1)2 + (yi)2 -R2 > 0
(xi +1)2 + (yi -1)2 -R2 = 0
Следовательно, > 0 и выбирается диагональный пиксел (xi +1 , уi -1) . Аналогичным образом оцениваем компоненты ' :
(xi +1)2 + (yi -1)2 -R2 = 0
(xi +1)2 + (yi -1)2 -R2 < 0
и ' < 0, что является условием выбора правильного диагонального шага к (xi +1 , уi -1) . Таким образом, случай i = 0 подчиняется тому же критерию, что и случай i < 0 или i > 0. Подведем итог полученных результатов:
i < 0
<= 0 выбираем пиксел (xi +1 , уi ) - mH
> 0 выбираем пиксел (xi +1 , уi -1) - mD
i > 0
' <= 0 выбираем пиксел (xi +1 , уi -1) - mD
' > 0 выбираем пиксел (xi , уi -1)- mV
i = 0 выбираем пиксел (xi +1 , уi -1) - mD
Легко разработать простые рекуррентные соотношения для реализации пошагового алгоритма. Сначала рассмотрим горизонтальный шаг mH к пикселу (xi + 1, уi). Обозначим это новое положение пиксела как (i + 1). Тогда координаты нового пиксела и значение i равны
xi+1 = xi +1
yi+1 = yi
i+1 = (xi+1 +1)2 + (yi+1 -1)2 -R2 i + 2xi+1+ 1
Аналогично координаты нового пиксела и значение i для шага mD к пикселу (xi + 1, уi -1) таковы:
xi+1 = xi +1
yi+1 = yi -1
i+1 = i + 2xi+1 - 2yi+1 +2
То же самое для шага mV к (xi, уi -1)
xi+1 = xi
yi+1 = yi -1
i+1 = i - 2yi+1 +1
Реализация алгоритма Брезенхема на псевдокоде для окружности приводится ниже.
Пошаговый алгоритм Брезенхема для генерации окружности в первом квадранте
все переменные - целые
инициализация переменных
xi = 0
yi = R
i = 2(1 - R)
Предел = 0
1 Plot (xi, yi
if yi <= Предел then 4
Выделение случая 1 или 2, 4 или 5, или 3
if i < 0 then 2
ifi > 0 then 3
if i= 0 then 20
определение случая 1 или 2
2 = 2i + 2уi - 1
if <= 0 then 10
if > 0 then 20
определение случая 4 или 5
3 = 2i + 2хi - 1
if <= 0 then 20
if > 0 then 30
выполнение шагов
шаг к mH
10 хi = хi + 1
i = i+ 2хi + 1
gо to 1
шаг mD
20 хi = хi + 1
yi = yi + 1
i = i+ 2хi - 2уi+ 2
gо to 1
4 finish
Переменная предела устанавливается в нуль для окончания работы алгоритма на горизонтальной оси, в результате генерируется окружность в первом квадранте. Если необходим лишь один из октантов, то второй октант можно получить с помощью установки Предел = Integer (R/sqrt(2)), а первый - с помощью отражения второго октанта относительно прямой у = х (рис. 5.1). Блок-схема алгоритма приводится на рис. 5.5.
|
Рис. 5.5. Блок-схема пошагового алгоритма Брезенхема для генерации окружности в первом квадранте.
Пример 5.1. Алгоритм Брезенхема для окружностию
Рассмотрим окружность радиусом 8 с центром в начале координат. Генерируется только первый квадраннт.
начальные установки
x = 0
y = 8
= 2(1-8) = -14
Предел = 0
Пошаговое выполнение основного цикла
1 Plot (0,8)
yi > Предел (продолжать)
i < 0 go to 2
2 go to 10
10 x = 0+1 = 1
i = -14 +2 + 1 = -11
go to 1
1 Plot (1,8)
yi > Предел (продолжать)
i < 0 go to 2
2 go to 10
10 x = 1+1 = 1
i = -11 +2(2) + 1 = -6
go to 1
1 Plot (2,8)
...
Продолжать
Результаты всех последовательных проходов алгоритма сведены в таблицу. Список пикселов выбранных алгоритмов состоит из (0,8), (1,8), (2,8), (3,7), (4,7), (5,6), (6,5), (7,4), (7,3), (8,2), (8,1), (8,0).
Plot |
i |
|
' |
x |
y |
|
-14 |
|
|
0 |
8 |
(0,8) |
|
|
|
|
|
|
-11 |
-13 |
|
0 |
8 |
(1,8) |
|
|
|
|
|
|
-6 |
-7 |
|
2 |
8 |
(2,8) |
|
|
|
|
|
|
-12 |
3 |
|
3 |
7 |
(3,7) |
|
|
|
|
|
|
-3 |
11 |
|
4 |
7 |
(4,7) |
|
|
|
|
|
|
-3 |
7 |
|
5 |
6 |
(5,6) |
|
|
|
|
|
|
1 |
5 |
|
6 |
5 |
(6,5) |
|
|
|
|
|
|
9 |
|
-11 |
7 |
4 |
(7,4) |
|
|
|
|
|
|
4 |
|
3 |
7 |
3 |
(7,3) |
|
|
|
|
|
|
18 |
|
-7 |
8 |
2 |
(8,2) |
|
|
|
|
|
|
17 |
|
19 |
8 |
1 |
(8,1) |
|
|
|
|
|
|
18 |
|
17 |
8 |
0 |
(8,0) |
|
|
|
|
|
алгоритм завершен.
Результаты показаны на рис.5.6. вместе с реальной окружностью. Алгоритм легко обобщается для других квадрантов или дуг окружностей.
|
Во многих задачах компьютерной графики часто приходится иметь дело с отсечением не только простым прямоугольным окном, но и окном достаточно произвольной геометрии. В частности, такие задачи могут возникнуть при использовании перспективных проекций трехмерных сцен, но не только в этих случаях. Поэтому актуальной является задача отсечения выпуклым многоугольником. Ясно, что простой анализ с помощью кодов Сазерленда-Коэна в такой ситуации неприменим. Здесь нужен надежный и достаточно эффективный алгоритм нахождения точки пересечения двух произвольно ориентированных отрезков, а также алгоритм определения местоположения точки относительно многоугольника (внутри, снаружи или на границе).
Рассмотрим
задачу о пересечении отрезка с концами с
выпуклым многоугольником, заданным списком ребер. Ребро может быть задано в
виде пары точек из множества вершин многоугольника
(рис.
5.7). То обстоятельство, что многоугольник выпуклый, является очень
существенным: это позволяет использовать достаточно простой алгоритм,
использующий внутренние нормали к его сторонам. Под внутренней нормалью
понимается вектор, перпендикулярный стороне и направленный внутрь
многоугольника. Как и в предыдущем алгоритме, воспользуемся параметрическим
уравнением прямой, проходящей через концы отрезка:
.
Если при некотором значении параметра
эта
прямая пересекается с прямой, проходящей через точки
,
то вектор, соединяющий произвольную точку ребра с точкой
,
будет перпендикулярен вектору нормали. Следовательно, скалярное
произведение векторов
и
будет
равно нулю. Отсюда путем несложных выкладок получаем
..
Рис. 5.7. Пересечение отрезка многоугольником
Конечно,
использование этой формулы предполагает, что ,
т.е. что отрезок не параллелен стороне многоугольника, но этот случай
рассматривается отдельно. Найденная точка принадлежит отрезку при условии
.
Условие принадлежности этой точки ребру многоугольника также можно выразить
через скалярное произведение, так как векторы
и
в
этом случае должны быть одинаково направленными, т.е.
.
Для каждого отрезка возможны три случая взаимного расположения с многоугольником:
· точек пересечения нет;
· существует одна точка пересечения;
· существуют две точки пересечения.
В
каждом из этих вариантов для нахождения пересечения отрезка с окном необходимо
уметь определять принадлежность точки выпуклому многоугольнику. Из рис.
5.7 видно, что если для любой точки ,
принадлежащей многоугольнику (или его границе), и произвольной точки ребра
построить
вектор
,
то выполняется условие
,
поскольку угол между векторами не может превышать 90
.
Таким образом, если данное условие выполняется для всех ребер многоугольника,
то точка является внутренней.
Таким образом, алгоритм отсечения отрезка начинается с анализа расположения концов отрезка по отношению к окну. Если обе точки лежат внутри окна, то отрезок полностью видимый, и дальнейший поиск прекращается. Если только одна из точек лежит внутри окна, то имеет место случай II, и предстоит найти одну точку пересечения. И, наконец, если обе точки лежат вне окна, то существуют либо две точки пересечения (отрезок пересекает две границы окна), либо ни одной (отрезок полностью невидим). Впрочем, две точки пересечения могут совпадать (если отрезок проходит через вершину многоугольника), но этот случай в дополнительном анализе не нуждается.
Далее
выполняется цикл по всем ребрам многоугольника с целью нахождения точек
пересечения. Для каждого ребра перед началом поиска пересечения необходимо
проверить, не параллельно ли оно с отрезком. Если это так, то можно вычислить
расстояние от одного из концов отрезка до прямой, проходящей через ребро .
При
отрезок
лежит на прямой, и остается определить взаимное расположение концов отрезка и
концов ребра, что можно сделать простым покоординатным сравнением. При
отрезок
не имеет общих точек с данным ребром.
От задачи отсечения отрезков можно перейти к более сложной: клиппирование произвольных многоугольников. Если многоугольник невыпуклый, то в результате пересечения даже с прямоугольным окном может получиться несколько не связанных между собой фигур.
Рис. 5.8. Отсечение невыпуклого многоугольника
Когда
стоит задача штрихования замкнутой области одновременно с задачей отсечения, то
важно правильно определить принадлежность вновь полученных фигур внутренней или
внешней части исходного многоугольника. Пусть исходный многоугольник задан
упорядоченным списком вершин ,
соответствующих ребрам
.
Для отсечения такого многоугольника прямоугольным окном можно применить
алгоритм, предложенный Сазерлендом и Ходжменом. Идея его заключается в
последовательном отсечении части многоугольника прямыми, соответствующими
сторонам окна. Результатом его работы является упорядоченный список вершин,
лежащих в видимой части окна. На каждом шаге алгоритма образуется некоторая
промежуточная фигура, также представленная упорядоченным списком вершин и
ребер. Пример таких последовательных отсечений показан на рис.
5.9. В процессе отсечения последовательно обходится список вершин, причем
каждая очередная точка за исключением первой рассматривается как конечная точка
ребра, начальной точкой которого является предшествующая точка из списка.
Порядок, в котором рассматриваются стороны окна, не имеет значения. В процессе
обхода формируется список новых вершин многоугольника.
увеличить изображение
Рис. 5.9. Последовательные шаги клиппирования произвольного
многоугольника
На первом шаге для первой вершины в списке определяется ее принадлежность видимой области. Если она видима, то она становится первой точкой первого обрабатываемого ребра и заносится в список новых вершин. Если же она невидима, то в список новых вершин не заносится, но все равно становится первой точкой ребра.
Для анализируемого ребра возможны четыре случая расположения относительно окна.
1. Ребро полностью видимо. Очередная точка заносится в список новых вершин (предыдущая уже должна находиться в этом списке, поскольку ребро полностью видимо).
2. Ребро полностью невидимо. Никаких действий не производится.
3. Ребро выходит из области. Находится точка пересечения ребра со стороной окна и заносится в список новых ребер.
4. Ребро входит в область. Также отыскивается точка пересечения со стороной окна и заносится в список новых вершин. Конечная точка тоже заносится в список новых вершин.
В
этом алгоритме постоянно приходится определять видимость точки по отношению к
конкретному ребру отсекающего окна. Окно также можно задать в виде
упорядоченного списка вершин. Если обход вершин окна осуществляется по часовой
стрелке, то его внутренняя область будет расположена по правую сторону от
границы. При этом расположение точки относительно
прямой, которой принадлежит ребро, можно устанавливать различными способами:
1.
Выбирается
начальная точка данного ребра и
строится вектор
и вектор внутренней
нормали
к границе (ребру)
окна. Вычисляется скалярное произведение
. Если
, то точка
является видимой.
2.
Строится
пространственный вектор (третью координату
можно положить равной нулю). Вектор
(также
пространственный, лежащий в той же плоскости, что и
) направлен вдоль
ребра (с учетом направления обхода). Вычисляется векторное
произведение
. Если координата
у вектора
положительна, то
точка
лежит справа от
ребра (является видимой).
3. Выписывается каноническое уравнение прямой, проходящей через ребро:
4.
Для
произвольной внутренней точки окна вычисляется
значение
, а также для точки
вычисляется
. Если числа
и
имеют одинаковый
знак, то точка
является видимой.
Наиболее просто эти алгоритмы реализуются в случае отсечения прямоугольным окном со сторонами, параллельными осям координат.
7. Удаление невидимых поверхностей и линий при построении изображения на компьютере
Задача удаления невидимых линий и поверхностей является одной из
наиболее сложных в машинной графике. Алгоритмы удаления невидимых линий и
поверхностей служат для определения линий ребер, поверхностей или объемов,
которые видимы или невидимы для наблюдателя, находящегося в заданной точке
пространства.
Необходимость удаления невидимых линий, ребер, поверхностей или объемов
проиллюстрирована рис.3.1. На рис.4.1, а приведен типичный каркасный чертеж
куба. Его можно интерпретировать двояко: как вид куба сверху, слева или
снизу, справа. Удаление тех линий или поверхностей, которые невидимы с
соответствующей точки зрения, позволяют избавиться от неоднозначности.
Результаты показаны на рис.4.1, b и c.
Сложность задачи удаления невидимых линий и поверхностей привела к
появлению большого числа, различных способов ее решения. Многие из них
ориентированы на специализированные приложения. Наилучшего решения общей
задачи удаления невидимых линий и поверхностей не существует. Для
моделирования процессов в реальном времени, например, для авиа тренажеров,
требуются быстрые алгоритмы, которые могут порождать результаты с частотой
видео генерации (30 кадр/с). Для машинной мультипликации требуются
алгоритмы, которые могут генерировать сложные реалистические изображения, в
которых представлены тени, прозрачность и фактура, учитывающие эффекты
отражения и преломления цвета в мельчайших оттенках. Подобные алгоритмы
работают медленно, и зачастую на вычисления требуется несколько минут или
даже часов. Строго говоря, учет эффектов прозрачности, фактуры, отражения и
т. п. не входит в задачу удаления невидимых линий или поверхностей.
Естественнее считать их частью процесса визуализации изображения. Процесс
визуализации является интерпретацией или представлением изображения или
сцены в реалистической манере. Однако многие из этих эффектов встроены в
алгоритмы удаления невидимых поверхностей и поэтому будут затронуты.
Существует тесная взаимосвязь между скоростью работы алгоритма и
детальностью его результата. Ни один из алгоритмов не может достигнуть
хороших оценок для этих двух показателей одновременно. По мере создания все
более быстрых алгоритмов можно строить все более детальные изображения.
Реальные задачи, однако, всегда будут требовать учета еще большего
количества деталей.
Алгоритмы удаления невидимых линий или поверхностей можно
классифицировать по способу выбора системы координат или пространства, в
котором они работают. Алгоритмы, работающие в объектном пространстве, имеют
дело с физической системой координат, в которой описаны эти объекты. При
этом получаются весьма точные результаты, ограниченные, вообще говоря, лишь
точностью вычислений. Полученные изображения можно свободно увеличивать во
много раз. Алгоритмы, работающие в объектном пространстве, особенно полезны
в тех приложениях, где необходима высокая точность. Алгоритмы же,
работающие в пространстве изображения, имеют дело с системой координат того
экрана, на котором объекты визуализируются. При этом точность вычислений
ограничена разрешающей способностью экрана. Результаты, полученные в
пространстве изображения, а затем увеличенные во много раз, не будут
соответствовать исходной сцене. Алгоритмы, формирующие список приоритетов
работают попеременно в обеих упомянутых системах координат.
Объем вычислений для любого алгоритма, работающего в объектном
пространстве, и сравнивающего каждый объект сцены со всеми остальными
объектами этой сцены, растет теоретически как квадрат числа объектов ( n2
). Аналогично, объем вычислений любого алгоритма, работающего в
пространстве изображения и сравнивающего каждый объект сцены с позициями
всех пикселов в системе координат экрана, растет теоретически, как nN.
Здесь n обозначает количество объектов (тел, плоскостей или ребер) в сцене,
а N - число пикселов. Теоретически трудоемкость алгоритмов, работаюoих в
объектном пространстве, меньше трудоемкости алгоритмов, работающих в
пространстве изображения, при n < N. Поскольку N обычно равно ( 512 )2, то
теоретически большинство алгоритмов следует реализовывать в объектном
пространстве. Однако на практике это не так. Дело в том, что алгоритмы,
работающие в пространстве изображения, более эффективны потому, что для них
легче воспользоваться преимуществом когерентности при растровой реализации.
Далее дается изложение некоторых алгоритмов, работающих как в объектном
пространстве, так и в пространстве изображения. Каждый из них иллюстрирует
одну или несколько основополагающих идей теории алгоритмов удаления
невидимых линий и поверхностей.
1. Алгоритм плавающего горизонта
Алгоритм плавающего горизонта чаще всего используется для удаления
невидимых линий трехмерного представления функций, описывающих поверхность
в виде
F ( x, у, z ) = 0
Подобные функции возникают во многих приложениях в математике, технике,
естественных науках и других дисциплинах.
Существует много алгоритмов, использующих этот подход. Поскольку в
приложениях в основном нас интересует описание поверхности, этот алгоритм
обычно работает в пространстве изображения. Главная идея данного метода
заключается в сведении трехмерной задачи к двумерной путем пересечения
исходной поверхности последовательностью параллельных секущих плоскостей,
имеющих постоянные значения координат x, y или z.
На рис. 3.2 приведен пример, где указанные параллельные плоскости
определяются постоянными значениями z. Функция F ( x, у, z ) = 0 сводится к
последовательности кривых, лежащих в каждой из этих параллельных
плоскостей, например к последовательности
y = f ( x, z ) или y = g ( y, z )
где z постоянно на каждой из заданных параллельных плоскостей.
Итак, поверхность теперь складывается из последовательности кривых,
лежащих в каждой из этих плоскостей, как показано на рис. 3.3. Здесь
предполагается, что полученные кривые являются однозначными функциями
независимых переменных. Если спроецировать полученные кривые на плоскость z
= 0, то сразу становится ясна идея алгоритма удаления невидимых участков
исходной поверхности. Алгоритм сначала упорядочивает плоскости
z = const по возрастанию расстояния до них от точки наблюдения. Затем для
каждой плоскости, начиная с ближайшей к точке наблюдения, строится кривая,
лежащая на ней. Алгоритм удаления невидимой линии заключается в следующем:
Если на текущей плоскости при некотором заданном значении x
соответствующее значение y на кривой больше значения y для всех
предыдущих кривых при этом значении x, то текущая кривая видима в
этой точке; в противном случае она невидима.
Реализация данного алгоритма достаточно проста. Для хранения максимальных
значений y при каждом значении x используется массив, длина которого равна
числу различимых точек (разрешению) по оси x в пространстве изображения.
Значения, хранящиеся в этом массиве, представляют собой текущие значения
«горизонта». Поэтому по мере рисования каждой очередной кривой этот
горизонт «всплывает». Фактически этот алгоритм удаления невидимых линий
работает каждый раз с одной линией.
Алгоритм работает очень хорошо до тех пор, пока какая-нибудь очередная
кривая не окажется ниже самой первой из кривых. Как показано на рис.3.4,а.
Подобные кривые, естественно, видимы и представляют собой нижнюю сторону
исходной поверхности. Однако алгоритм будет считать их невидимыми. Нижняя
сторона поверхности делается видимой, если модифицировать этот алгоритм,
включив в него нижний горизонт, который опускается вниз по ходу работы
алгоритма. Это реализуется при помощи второго массива, длина которого равна
числу различимых точек по оси x в пространстве изображения. Этот массив
содержит наименьшие значения y для каждого значения x. Алгоритм теперь
становится таким:
Если на текущей плоскости при некотором заданном значении x
соответствующее значение y на кривой больше максимума или меньше
минимума по y для всех предыдущих кривых при этом x, то текущая
кривая видима. В противном случае она невидима.
Полученный результат показан на рис. 3.4, b.
В изложенном алгоритме предполагается, что значение функции, т. е. y,
известно для каждого значения x в пространстве изображения. Однако если
для каждого значения x нельзя указать (вычислить) соответствующее ему
значение у, то невозможно поддерживать массивы верхнего и нижнего плавающих
горизонтов. В таком случае используется линейная интерполяция значений у
между известными значениями для того, чтобы заполнить массивы верхнего и
нижнего плавающих горизонтов, как показано на рис. 3.5. Если видимость
кривой меняется, то метод с такой простой интерполяцией не даст корректного
результата. Этот эффект проиллюстрирован рис. 3.6,а. Предполагая, что
операция по заполнению массивов проводится после проверки видимости,
получаем, что при переходе текущей кривой от видимого к невидимому
состоянию (сегмент АВ на рис. 3.6,а), точка (xn+k, yn+k ) объявляется
невидимой. Тогда участок кривой между точками (xn, yn) и (xn+k, yn+k ) не
изображается и операция по заполнению массивов не производится. Образуется
зазор между текущей и предыдущей кривыми Если на участке текущей кривой
происходит переход от невидимого состояния к видимому (сегмент CD на рис.
3.6,а), то точка (xm+k, ym+k ) объявляется видимой, а участок кривой между
точками (xm, ym) и (xm+k, ym+k ) изображается и операция по заполнению
массивов проводится. Поэтому изображается и невидимый кусок сегмента CD.
Кроме того, массивы плавающих горизонтов не будут содержать точных значений
у. А это может повлечь за собой дополнительные нежелательные эффекты для
последующих кривы. Следовательно,
необходимо решать задачу о поиске точек пересечения сегментов текущей и
предшествующей кривых.
Существует несколько методов получения точек пересечения кривых. На
растровых дисплеях значение координаты x можно увеличивать на 1, начиная с
xn или xm (рис. 3.6,а). Значение у, соответствующее текущему значению
координаты х в пространстве изображения, получается путем добавления к
значению у, соответствующему предыдущему значению координаты x,
вертикального приращения (y вдоль заданной кривой. Затем определяется
видимость новой точки с координатами (x + 1, y + (y ). Если эта точка
видима, то активируется связанный с ней пиксел. Если невидима, то пиксел не
активируется, а x увеличивается на 1. Этот процесс продолжается до тех пор,
пока не встретится xn+k или xm+k. Пересечения для растровых дисплеев
определяются изложенным методом с достаточной точностью. Близкий и даже
более элегантный метод определения пересечений основан на двоичном поиске.
Точное значение точки пересечения двух прямолинейных отрезков, которые
интерполируют текущую и предшествующую кривые, между точками (xn, yn) и
(xn+k, yn+k ) (рис. 3.6) задается формулами:
[pic]
где
[pic]
а индексы c и p соответствуют текущей и предшествующей кривым. Полученный
результат показан на рис. 3.6,b. Теперь алгоритм излагается более
формально.
Если на текущей плоскости при некотором заданном значении x
соответствующее значение y на кривой больше максимума или меньше
минимума по y для всех предыдущих кривых при этом x, то текущая
кривая видима. В противном случае она невидима.
Если на участке от предыдущего (xn) до текущего (xn+k) значения x
видимость кривой изменяется, то вычисляется точка пересечения (xi).
Если на участке от xn до xn+k сегмент кривой полностью видим, то он
изображается целиком; если он стал невидимым, то изображается
фрагмент от xn до xi; если же он стал видимым, то изображается
фрагмент от xi до xn+k.
Заполнить массивы верхнего и нижнего плавающих горизонтов.
Изложенный алгоритм приводит к некоторым дефектам, когда кривая,
лежащая в одной из более удаленных от точки наблюдения плоскостей,
появляется слева или справа из-под множества кривых, лежащих в плоскостях,
которые ближе к указанной точке наблюдения. Этот эффект продемонстрирован
на рис. 3.7, где уже обработанные плоскости n - 1 и n расположены ближе к
точке наблюдения. На рисунке показано, что получается при обработке
плоскости n + 1. После обработки кривых n - 1 и n верхний горизонт для
значений x = 0 и 1 равен начальному значению у; для значений x от 2 до 17
он равен ординатам кривой n; а для значений 18, 19, 20 - ординатам кривой n
- 1. Нижний горизонт для значений x = 0 и 1 равен начальному значению у;
для значений x = 2, 3, 4 – ординатам кривой n; а для значений x от 5 до 20
- ординатам кривой n - 1. При обработке текущей кривой (n + 1) алгоритм
объявляет ее видимой при x = 4. Это показано сплошной линией на рис. 3.7.
Аналогичный эффект возникает и справа при x = 18. Такой эффект приводит к
появлению зазубренных боковых ребер. Проблема с зазубренностью боковых
ребер решается включением в массивы верхнего и нижнего горизонтов ординат,
соответствующих штриховым линиям на рис. 3.7. Это можно выполнить
эффективно, создав ложные боковые ребра. Приведем алгоритм, реализующий эту
идею для обеих ребер.
Обработка левого бокового ребра:
Если Pn является первой точкой на первой кривой, то запомним Pn в
качестве Pn(1 и закончим заполнение. В противном случае создадим
ребро, соединяющее Pn и Pn(1.
Занесем в массивы верхнего и нижнего горизонтов ординаты этого
ребра и запомним Pn в качестве Pn(1.
Обработка правого бокового ребра:
Если Pn является последней точкой на первой кривой, то запомним Pn в
качестве Pn(1 и закончим заполнение. В противном случае создадим
ребро, соединяющее Pn и Pn(1.
Занесем в массивы верхнего и нижнего горизонтов ординаты этого
ребра и запомним Pn в качестве Pn(1.
Теперь полный алгоритм выглядит так:
Для каждой плоскости z = const.
Обработать левое боковое ребро.
Для каждой точки, лежащей на кривой из текущей плоскости:
Если при некотором заданном значении x соответствующее значение у
на кривой больше максимума или меньше минимума по у для всех
предыдущих кривых при этом x, то кривая видима (в этой точке). В
противном случае она невидима.
Если на сегменте от предыдущего (xn) до текущего (xn+k) значения x
видимость кривой изменяется, то вычисляется пересечение (xi).
Если на участке от xn до (xn+k) сегмент кривой полностью видим, то
он изображается целиком; если он cтал невидимым, то изображается
его кусок от xn до xi; если же он стал видимым, то изображается его
кусок от xi до xn+k.
Заполнить массивы верхнего и нижнего плавающих горизонтов.
Обработать правое боковое ребро.
Если функция содержит очень острые участки (пики), то приведенный
алгоритм может дать некорректные результаты. Во избежании этого если
встречаются узкие участки, то функцию следует вычислять в большем числе
точек.
На рис. 3.8 показан типичный результат работы алгоритма плавающего
горизонта. Запись этого алгоритма приводиться ниже.
Алгоритм плавающего горизонта
Гэкран – разрешение экрана в горизонтальном направлении
Вэкран – разрешение экрана в вертикальном направлении
Верх – массив, содержащий координаты верхнего горизонта
Низ – массив, содержащий координаты нижнего горизонта
Y – текущее значение функции y = f ( x, z ) при z = const
Тфлаг – флаг видимости для текущей точки
Пфлаг – флаг видимости для предыдущей точки, равный
0 = невидима
1 = видима и выше верхнего горизонта
-1 = видима и ниже нижнего горизонта
Draw – графическая команда, которая чертит видимую линию между точками,
заданными их координатами.
Xmin, Xmax – минимальная и максимальная абсциссы функции
Xшаг – шаг приращения вдоль оси x
Zmin, Zmax – минимальная и максимальная аппликата функции
Zшаг – шаг между плоскостями z = const
Dimension Верх (Гэкран), Низ (Гэкран)
инициализация переменных
Xлевое = (1; Yлевое = (1; Xправое = (1; Yправое = (1
инициализация массивов горизонтов
Верх = 0
Низ = Вэкран
Вычисление функции на каждой плоскости z = const, начиная с ближайшей к
наблюдателю плоскости Zmax
for z = Zmax to Zmin step ( Zшаг
инициализация предыдущих значений по x и y: Xпред и Yпред
Xпред = Xmin
Yпред = f (Xmin, z)
если используется видовое преобразование, то его нужно применить к
Xпред, Yпред, z в данной точке
обработка левого бокового ребра
call Обрребра (Xпред, Yпред, Xлев, Yлев; Верх, Низ)
call Видимость (Xпред, Yпред, Верх, Низ; Пфлаг)
для каждой точки на кривой, лежащей в плоскости z = const
for x = Xmin to Xmax step Xшаг
y = f (x, z)
если используется видовое преобразование, то его нужно применить к
данной точке
проверка видимости текущей точки и заполнение соответствующего
массива горизонта
call Видимость (x, y, Верх, Низ; Тфлаг)
if Тфлаг = Пфлаг then
if (Тфлаг = 1) or (Тфлаг = (1) then
Draw (Xпред, Yпред, x, y)
call Горизонт (Xпред, Yпред, x, y; Верх, Низ)
end if
если видимость изменилась, то вычисляется пересечение и заполняется
массив горизонта
else
if Тфлаг = 0 then
if Пфлаг = 1 then
call Пересечение (Xпред, Yпред, x, y, Верх; Xi, Yi)
else
call Пересечение (Xпред, Yпред, x, y, Низ; Xi, Yi)
end if
Draw (Xпред, Yпред, Xi, Yi)
сall Горизонт (Xпред, Yпред, Xi, Yi, Верх, Низ)
else
if Тфлаг = 1 then
if Пфлаг = 0 then
call Пересечение (Xпред, Yпред, x, y, Верх; Xi, Yi)
Draw (Xi, Yi, x, y)
сall Горизонт (Xi, Yi, x, y; Верх, Низ)
else
call Пересечение (Xпред, Yпред, x, y, Низ; Xi, Yi)
Draw (Xпред, Yпред, Xi, Yi)
call Горизонт (Xпред, Yпред, Xi, Yi; Верх, Низ)
call Пересечение (Xпред, Yпред, x, y, Верх; Xi, Yi)
Draw (Xi, Yi, x, y)
call Горизонт (Xi, Yi, x, y; Верх, Низ)
end if
else
if Пфлаг = 0 then
call Пересечение (Xпред, Yпред, x, y, Верх; Xi, Yi)
Draw (Xi, Yi, x, y)
call Горизонт (Xi, Yi, x, y; Верх, Низ)
else
call Пересечение (Xпред, Yпред, x, y, Верх; Xi, Yi)
Draw (Xпред, Yпред, Xi, Yi)
call Горизонт (Xпред, Yпред, Xi, Yi; Верх, Низ)
call Пересечение (Xпред, Yпред, x, y, Низ; Xi, Yi)
Draw (Xi, Yi, x, y)
call Горизонт (Xi, Yi, x, y; Верх, Низ)
end if
end if
end if
end if
вновь инициализировать Пфлаг, Xпред, Yпред
Пфлаг = Тфлаг
Xпред = x
Yпред = y
next x
обработка правого концевого ребра
call Обрребра (x, y, Xправ, Yправ; Верх, Низ)
next z
finish
подпрограмма обработки бокового ребра
Subroutine Обрребра (x, y, Xребра, Yребра; Верх, Низ)
если Xребра = (1, то встречена первая кривая и ребро не создаётся
if Xребра = (1 then 1
call Горизонт (Xребра, Yребра, x, y; Верх, Низ)
1 Xребра = x
Yребра = y
return
подпрограмма определения видимости точки
Subroutine Видимость (x, y, Верх, Низ; Тфлаг)
видимость точки определяется по отношению к верхнему и нижнему
плавающим горизонтам. Если точка лежит на самом горизонте, то она
считается видимой.
Тфлаг = 0, если точка невидима
= 1, если она видима и выше верхнего горизонта
= (1, если она видима и ниже нижнего горизонта
x считается целой
if (y < Верх (x)) and (y > Низ (x)) then Тфлаг = 0
if y ( Верх (x) then Тфлаг = 1
if y ( Низ (x) then Тфлаг = (1
return
подпрограмма заполнения массивов плавающих горизонтов
Subroutine Горизонт (X1, Y1, X2, Y2; Верх, Низ)
Эта программа использует линейную интерполяцию для заполнения массивов
горизонтов между X1 и X2
Max (a, b) – определяет большее из a и b
Min (a, b) – определяет меньшее из a и b
проверка вертикальности наклона
if (X2 ( X1) = 0 then
Верх (X2) = Max (Верх (X2), Y2)
Низ (X2) = Min (Низ (X2), Y2)
else
Наклон = (Y2 ( Y1)/(X2 ( X1)
for x = X1 to X2 step 1
y = Наклон * (x ( X1) + Y1
Верх (x) = Max (Верх (x), y)
Низ (x) = Min (Низ (x), y)
next x
end if
return
подпрограмма вычисления пересечения текущей кривой с горизонтом
Subroutine Пересечение (X1, Y1, X2, Y2, Массив; Xi, Yi)
Эта процедура вычисляет пересечение двух отрезков прямых
Массив содержит информацию о соответствующем горизонте
Sign – функция принимающая значения (1, 0, 1, если знак её аргумента
<0, =0, >0 соответственно
проверка бесконечности наклона
if (X2 – X1) = 0 then
Xi = X2
Yi = Массив (X2)
else
вычисление пересечения
обход начинается с самой левой используемой точки
пересечение считается обнаруженным, когда изменяется знак разности
значений y
Наклон = (Y2 – Y1)/(X2 – X1)
Ysign = Sign (Y1 + Наклон ( Массив (X1 + 1))
Csign = Ysign
Yi = Y1 + Наклон
Xi = X1 + 1
while Csign = Ysign
Yi = Y1 + Наклон
Xi = X1 + 1
Csign = Sign (Yi - Массив (Xi))
end while
выбирается ближайшее целое число
if |Yi ( Наклон ( Массив (X1 – 1)| ( |Yi ( Наклон ( Массив (X1)| then
Yi = Y1 – Наклон
Xi = X1 – 1
end if
end if
return
В приведенных выше алгоритме и примере функция у = f (x, z)
рассматривалась только при z = const. Часто бывает удобно вычерчивать
кривые, полагая постоянными как z, так и x. При этом возникает эффект
перекрестной штриховки. На первый взгляд может показаться, что перекрестную
штриховку можно получить путем наложения двух результатов, образованных
плоскостями z = const и x = const. Однако это не так. Верный результат
получается при обработке тех кривых из числа лежащих в плоскостях z = const
и x = const, которые ближе всего к горизонтальным при обычном порядке их
следования. Однако после обработки каждой кривой, самой близкой к
горизонтальной, необходимо обрабатывать участки кривых, лежащих в
ортогональных ей плоскостях, которые находятся между указанной кривой и
кривой, следующей за ней. Разумеется, при обработке обеих
последовательностей кривых нужно использовать одни и те же массивы верхнего
и нижнего плавающих горизонтов. Если используется перекрестная штриховка,
то не надо формировать левое и правое боковые ребра.
2. Алгоритм Робертса
Алгоритм Робертса представляет собой первое известное решение задачи об
удалении невидимых линий . Это математически элегантный метод, работающий в
объектном пространстве. Алгоритм, прежде всего, удаляет из каждого тела те
ребра или грани, которые экранируются самим телом. Затем каждое из видимых
ребер каждого тела сравнивается с каждым из оставшихся тел для определения
того, какая его часть или части, если таковые есть, экранируются этими
телами. Поэтому вычислительная трудоемкость алгоритма Робертса растет
теоретически как квадрат числа объектов. Именно этот факт привёл к снижению
интереса к алгоритму Робертса. Однако математические методы, используемые в
этом алгоритме, просты, мощны и точны. Кроме того, этот алгоритм можно
использовать для иллюстрации некоторых важных концепций. Наконец, более
поздние реализации алгоритма, использующие предварительную приоритетную
сортировку вдоль оси z и простые габаритные или минимаксные тесты,
демонстрируют почти линейную зависимость от числа объектов.
В алгоритме Робертса требуется, чтобы все изображаемые тела или объекты
были выпуклыми. Невыпуклые тела должны быть разбиты на выпуклые части. В
этом алгоритме выпуклое многогранное тело с плоскими гранями должно
представляться набором пересекающихся плоскостей. Уравнение произвольной
плоскости в трехмерном пространстве имеет вид
ах + by + cz + d = 0 (3.1)
В матричной форме это выглядит так:
[pic]
или
[pic]
где [pic] представляет собой плоскость. Поэтому любое выпуклое твердое тело
можно выразить матрицей тела, состоящей из коэффициентов уравнений
плоскостей, т. е.
[pic]
где каждый столбец содержит коэффициенты одной плоскости.
Напомним, что любая точка пространства представима в однородных
координатах вектором
[pic]
Более того, если точка [S] лежит на плоскости, то [S]*[P]T = 0.
Если же [S] не лежит на плоскости, то знак этого скалярного произведения
показывает, по какую сторону от плоскости расположена точка. В алгоритме
Робертса предполагается, что точки, лежащие внутри тела, дают положительное
скалярное произведение.
Хотя уравнение плоскости (3.1) содержит четыре неизвестных
коэффициента, его можно нормировать так, чтобы d = 1 следовательно, трех
неколлинеарных точек достаточно для определения этих коэффициентов.
Подстановка координат трех неколлинеарных точек (x1, y1, z1), (x2, y2, z2),
(x2, y2, z2) в нормированное уравнение (3.1) дает:
ax1 + by1 + cz1 = (1
ax2 + by2 + cz2 = (1
ax3 + by3 + cz3 = (1
В матричной форме это выглядит так:
[pic]
или
[pic] (3.2)
Решение этого уравнения дает значения коэффициентов уравнения
плоскости:
[pic]
Другой способ используется, если известен вектор нормали к плоскости,
т. е.
n = ai + bj + ck
где i, j, k - единичные векторы осей x, y, z соответственно. Тогда
уравнение плоскости примет вид
ax + by + cz + d = 0 (3.3)
Величина d вычисляется с помощью произвольной точки на плоскости. В
частности, если компоненты этой точки на плоскости (х1, y1, z1) то:
d = ( (aх1 + by1 + cz1) (3.4)
Поскольку объем вычислений в алгоритмах удаления невидимых линий или
поверхностей растет с увеличением числа многоугольников, для описания
поверхностей выгодно использовать многоугольники с более чем тремя
сторонами. Эти многоугольники могут быть как невыпуклыми, так и неплоскими.
Метод, предложенный Мартином Ньюэлом, позволяет найти как точное решение
для уравнений плоскостей, содержащих плоские многоугольники, так и
«наилучшее» приближение для неплоских многоугольников. Этот метод
эквивалентен определению нормали в каждой вершине многоугольника
посредством векторного произведения прилежащих ребер и усреднения
результатов. Если a, b, c, d – коэффициенты уравнения плоскости, то
[pic] (3.5)
где
if i =n then j = 1 else j = i + 1
а d вычисляется с помощью любой точки на плоскости.
Перед началом работы алгоритма удаления невидимых линий или
поверхностей для получения желаемого вида сцены часто применяется
трехмерное видовое преобразование. Матрицы тел для объектов преобразованной
сцены можно получить или преобразованием исходных матриц тел или
вычислением новых матриц тел, используя преобразованные вершины или точки.
Если [В] - матрица однородных координат, представляющая исходные
вершины тела, а [Т] - матрица размером 4х4 видового преобразования, то
преобразованные вершины таковы:
[ВТ] = [В][T] (3.6)
где [ВТ] - преобразованная матрица вершин. Использование уравнения (3.2)
позволяет получить уравнения исходных плоскостей, ограничивающих тело:
[В][V] = [D] (3.7)
где [V] - матрица тела, а [D] в правой части - нулевая матрица. Аналогично
уравнения преобразованных плоскостей задаются следующим образом:
[ВТ][VТ] = [D] (3.8)
где [VТ] - преобразованная матрица тела. Приравнивая левые части уравнения
(3.7) и (3.8), получаем
[ВТ][VT] = [В][V]
Подставляя уравнение (3.6), сокращая на [В] и умножая слева на
[T]-1 имеем
[VT] = [T]-1[V]
Итак, преобразованная матрица тела получается умножением исходной матрицы
тела слева на обратную матрицу видового преобразования.
Тот факт, что плоскости имеют бесконечную протяженность и что скалярное
произведение точки на матрицу тела отрицательно, если точка лежит вне этого
тела, позволяет предложить метод, в котором матрица тела используется для
определения граней, которые экранируются самим этим телом. Отрицательное
скалярное произведение даёт только такая плоскость (столбец) в матрице
тела, относительно которой точка лежит снаружи.
Если зритель находится в бесконечности на положительной полуоси z и
смотрит на начало координат, то его взгляд направлен в сторону
отрицательной полуоси z. В однородных координатах вектор такого направления
равен:
[pic]
который служит, кроме того, образом точки, лежащей в бесконечности на
отрицательной полуоси z. Фактически [Е] представляет любую точку, лежащую
на плоскости z = ( (, т. е. любую точку типа (x, y, ( (). Поэтому, если
скалярное произведение [Е] на столбец, соответствующий какой-нибудь
плоскости в матрице тела, отрицательно, то [Е] лежит по отрицательную
сторону этой плоскости. Следовательно, эти плоскости невидимы из любой
точки наблюдения, лежащей в плоскости z = (, а пробная точка на z = ( (
экранируется самим телом, как показано на рис. 3.8. Такие плоскости
называются не лицевыми, а соответствующие им грани задними.
Следовательно,
[Е][V] < 0
является условием того, что плоскости – не лицевые, а их грани - задние.
Заметим, что для аксонометрических проекций (точка наблюдения в
бесконечности) это эквивалентно поиску положительных значений в третьей
строке матрицы тела.
Этот метод является простейшим алгоритмом удаления невидимых
поверхностей для тел, представляющих собой одиночные выпуклые
многогранники. Этот способ часто называют отбрасыванием задних плоскостей.
Для выпуклых многогранников число граней при этом сокращается примерно
наполовину. Метод эквивалентен вычислению нормали к поверхности для каждого
отдельного многоугольника. Отрицательность нормали к поверхности
показывает, что нормаль направлена в сторону от наблюдателя и,
Следовательно, данный многоугольник не виден.
Этот метод можно использовать также и для простой закраски.
Интенсивность или цветовой оттенок многоугольника делается пропорциональным
проекции нормали к поверхности на направление взгляда.
Данный метод определения не лицевых граней в результате формирует
аксонометрическую проекцию на некую плоскость, расположенную бесконечно
далеко от любой точки трехмерного пространства. Видовые преобразования,
включая перспективное, производятся до определения не лицевых плоскостей.
Когда видовое преобразование включает в себя перспективу, то нужно
использовать полное перспективное преобразование одного трехмерного
пространства в другое, а не перспективное проецирование на некоторую
двумерную плоскость. Полное перспективное преобразование приводит к
искажению трехмерного тела, которое затем проецируется на некую плоскость в
бесконечности, когда не лицевые плоскости уже определены. Этот результат
эквивалентен перспективному проецированию из некоторого центра на конечную
плоскость проекции.
Видовое преобразование можно применить к телу так, чтобы точка
наблюдения оставалась фиксированной. При другом способе тело остается
неподвижным. Соответствующие точка наблюдения и направление взгляда
получаются умножением справа на матрицу, обратную матрице видового
преобразования.
После определения нелицевых плоскостей остается найти нелицевые
отрезки. Нелицевой отрезок образуется в результате пересечения пары
нелицевых плоскостей. После первого этапа удаления нелицевых отрезков
необходимо выяснить, существуют ли такие отрезки, которые экранируются
другими телами на картинке или в сцене. Для этого каждый оставшийся отрезок
или ребро нужно сравнить с другими телами сцены или картинки. При этом
использование приоритетной сортировки (z–сортировки) и простого
минимаксного или габаритного с прямоугольной объемлющей оболочкой тестов
позволяет удалить целые группы или кластеры отрезков и тел. Например, если
все тела в сцене упорядочены в некотором приоритетном списке, использующем
значения z ближайших вершин для представления расстояния до наблюдателя, то
никакое тело из этого списка, у которого ближайшая вершина находится дальше
от наблюдателя, чем самая удаленная из концевых точек ребра, не может
закрывать это ребро. Более того, ни одно из оставшихся тел, прямоугольная
оболочка которого расположена полностью справа, слева, над или под ребром,
не может экранировать это ребро. Использование этих приемов значительно
сокращает число тел, с которыми нужно сравнивать каждый отрезок или ребро.
Для сравнения отрезка P1P2 с телом удобно использовать параметрическое
представление этого отрезка:
Р(t) = P1 + (Р2 - P1)t 0 ( t ( 1
v = s + dt
где v - вектор точки на отрезке, s - начальная точка, d - направление
отрезка. Необходимо определить, будет ли отрезок невидимым. Если он
невидим, то надо найти те значения t, для которых он невидим. Для этого
формируется другой параметрический отрезок от точки Р(t) до точки
наблюдения g:
Q(a,t) = u = v + ga = s + dt + ga 0 ( t (1, a ( 0
Здесь a и t выполняют аналогичные функции. Заданное значение t
указывает точку на отрезке P(t), а a указывает точку на отрезке,
проведенном от точки P(t) до точки наблюдения. Фактически Q(a,t)
представляет собой плоскость в трехмерном пространстве. Пара (a,t)
определяет точку на этой плоскости. Значение a положительно, поскольку
тела, экранирующие P(t) могут находиться только в той части этой плоскости,
которая заключена между отрезком P(t) и точкой наблюдения.
Скалярное произведение любой точки, лежащей внутри тела, на матрицу
тела положительно. Если же точка лежит внутри тела, то она невидима.
Поэтому для определения части отрезка, которая экранируется телом,
достаточно найти те значения a и t, для которых скалярное произведение
Q(a,t) = u на матрицу тела положительно. Это скалярное произведение равно:
h = u * [VT] = s * [VT] + td * [VT] + ag * [VT] >0 0 ( t ( 1, a ( 0
Если все компоненты h неотрицательны для некоторых t и a, отрезок при
этих значениях t экранируется данным телом. Обозначим
p = s * [VT]
q = d * [VT]
w = g * [VT]
запишем условия в виде
hj = pj + tqj + awj 0 ( t ( 1, a ( 0
где j - номер столбца в матрице тела. Эти условия должны выполняться при
всех значениях j, т. е. для всех плоскостей, ограничивающих объем тела.
Пограничный случай между видимостью и невидимостью возникает, когда hj = 0.
При hj = 0 точка лежит на плоскости. Полагая hj = 0 для всех плоскостей, мы
получим систему уравнений относительно a и t, которые должны
удовлетворяться одновременно. Результат можно получить путем совместного
решения всевозможных пар уравнений из этой системы, при этом будут найдены
все значения a и t, при которых изменяется значение видимости отрезка.
Схема решения показана на рис. 3.10. Число возможных решений при j
уравнениях (плоскостях) равно j(j ( 1)/2. Каждое решение в диапазонах 0 (
t ( 1, a ( 0, подставляется во все остальные уравнения для проверки того,
что условие hj ( 0 выполнено. Поиск корректных решений производится для
того, чтобы найти минимальное среди максимальных значений параметра
t(tminmax) и максимальное среди минимальных значений t(tmaxmin). Отрезок
невидим при (tmaxmin) < t < (tminmax). Последнее требование является
простым следствием из классической задачи линейного программирования.
Решение на границе a = 0 возникает в случае протыкания (объектов).
Один из приемов заключается в запоминании всех точек протыкания и в
добавлении к сцене отрезков, связывающих эти точки. Отрезки образуются
путем соединения каждой точки протыкания пары тел, связанных отношением
протыкания, со всеми остальными точками протыкания для этой пары объектов.
Затем проверяется экранирование этих отрезков данными телами. Видимые
отрезки образуют структуру протыкания.
Из практики известно, что решения удовлетворяющие неравенствам hj > 0,
могут существовать и за пределами области, ограниченной условиями 0 ( t ( 1
и a = 0. Поэтому три уравнения, описывающие эти границы, т.е. t = 0, t ( 1
= 0 и a = 0, нужно добавить к множеству уравнений hj = 0. Теперь число
решений равно (j + 2)(j + 3)/2, где j - количество плоскостей,
ограничивающих выпуклый объем тела.
Как упоминалось ранее, выбор максимального из минимального и
минимального из максимальных значений t среди возможных корректных решений
указанной системы уравнений является простой задачей линейного
программирования. Ее решение эквивалентно определению корректной
ограниченной области, получающейся в результате графического решения.
Предполагается, что этот алгоритм используется только для таких отрезков, о
которых известно, что они частично или полностью невидимы. Все нелицевые и
все полностью видимые отрезки выявлены и удалены до начала работы
алгоритма. Алгоритм начинает работу с такими значениями t и a, которые
являются решениями пары линейных уравнений с номерами е1 и е2, а также с
tmin и tmax (текущими минимальным и максимальным значениями t) и с n
(мощностью множества уравнений). На первом этапе алгоритма проверяется
выполнение условий hj > 0. Если эти условия выполнены, то на втором этапе
вычисляются значения tmin и tmax. Результатом являются значения tmaxmin и
tminmax.
Метод решения, обсуждавшийся выше, требует больших затрат машинного
времени. Поэтому стоит поискать более быстрые способы определения полностью
видимых отрезков. Основная: идея состоит в установлении того факта, что оба
конца отрезка лежат между точкой наблюдения и какой-нибудь видимой
плоскостью. Т.к.
u = s + td + ag
При a = 0 значение u задает сам отрезок. Далее, если a = 0, при t = 0 и t =
1 получаются концевые точки отрезка. Также известно, что
hj = u *[VT] = pj + qjt+ wja
и заметим, что при t = 0 pj является скалярным произведением концевой точки
отрезка и j-й плоскости, ограничивающей тело. Аналогично pj + qj является
скалярным произведением другой концевой точки отрезка и j-й плоскости,
ограничивающей тело. Наконец, напомним, что j-я плоскость, ограничивающая
тело, видима, если wj = 0. Поэтому, если wj ( О и pj ( 0, то один конец
отрезка лежит или на видимой плоскости или между видимой плоскостью и
точкой наблюдения. Если же pj + qj ( 0, то другой конец отрезка также лежит
либо на видимой плоскости, либо между этой плоскостью и точкой наблюдения.
Следовательно, отрезок полностью видим, если для любого j
wj ( О и pj ( 0 и pj + qj ( 0.
Эти условия гарантируют, что неравенства hj ( 0 не могут быть выполнены
ни при каких a ( 0 и 0 ( t ( 1. Поэтому никакая часть отрезка не может быть
невидимой, т. е. отрезок полностью видим.
Ниже приводится эффективная реализация алгоритма Робертса. Этот
алгоритм делится на три этапа. На первом этапе каждое тело анализируется
индивидуально с целью удаления нелицевых плоскостей. На втором этапе
проверяется экранирование оставшихся в каждом теле ребер всеми другими
телами с целью обнаружения их невидимых отрезков. На третьем этапе
вычисляются отрезки, которые образуют новые ребра при протыкании телами
друг друга. В данном алгоритме предполагается, что тела состоят из плоских
полигональных граней, которые в свою очередь состоят из рёбер, а ребра - из
отдельных вершин. Все вершины, ребра и грани связаны с конкретным телом.
Удаление нелицевых плоскостей
Для каждого тела в сцене:
Сформировать многоугольники граней и ребра, исходя из списка вершин
тела.
Вычислить уравнение плоскости для каждой полигональной грани тела.
Проверить знак уравнения плоскости:
Взять любую точку внутри тела, например усреднив координаты его
вершин.
Вычислить скалярное произведение уравнения плоскости и точки внутри
тела.
Если это скалярное произведение < О, то изменить знак уравнения этой
плоскости.
Сформировать матрицу тела.
Умножить ее слева на матрицу, обратную матрице видового
преобразования, включающего перспективу.
Вычислить и запомнить габариты прямоугольной объемлющей оболочки
преобразованного объема: xmin, xmax, ymin, ymax.
Определить нелицевые плоскости:
Вычислить скалярное произведение пробной точки, лежащей в
бесконечности, на преобразованную матрицу тела.
Если это скалярное произведение < О, то плоскость невидима.
Удалить весь многоугольник, лежащий в этой плоскости. Это избавляет
от необходимости отдельно рассматривать, невидимые линии,
образуемые пересечением пар невидимых плоскостей.
Удаление из каждого тела тех ребер, которые экранируются всеми остальными
телами в сцене:
Если задано только одно тело, то алгоритм завершается.
Сформировать приоритетный список этих тел:
Провести сортировку по z. Сортировка производится по максимальным
значениям координаты z вершин преобразованных тел. Первым в
упорядоченном списке и обладающим наибольшим приоритетом будет то
тело, у которого минимальное среди максимальных значений z. В
используемой правой системе координат это тело будет самым удаленным
от точки наблюдения, расположенной в бесконечности на оси z.
Для каждого тела из приоритетного списка:
Проверить экранирование всех лицевых ребер всеми другими телами
сцены. Тело, ребра которого проверяются, называется пробным объектом,
а тело, относительно которого в настоящий момент производится
проверка, называется пробным телом. Естественно, что нужно проверять
экранирование пробного объекта только теми пробными телами, у которых
ниже приоритеты.
Провести проверки экранирования для прямоугольных объемлющих оболочек
пробного объекта и пробного тела:
Если xmin (пробное тело) > xmax (пробный объект) или
xmax (пробное тело) < xmin (пробный объект) или
ymin (пробное тело) > ymax (пробный объект) или
ymax (пробное тело) < ymin (пробный объект),
то пробное тело не может экранировать ни одного ребра пробного объекта.
Перейти к следующему пробному телу. В противном случае:
Провести предварительные проверки протыкания, чтобы увидеть, не протыкается
ли пробное тело пробным объектом и существует ли возможность частичного
экранирования первого последним.
Сравнить максимальное значение z у пробного объекта с минимальным
значением z у пробного тела.
Если zmax (пробный объект) < zmin (пробное тело), то протыкание
невозможно. Перейти к следующему телу. В противном случае:
Проверить видимое протыкание.
Если zmin (пробный объект) > zmax (пробное тело), то пробный объект
может проткнуть переднюю грань пробного тела.
Установить флаг видимого протыкания для последующего использования.
Занести проткнутое тело в список протыканий.
Если xmax (пробное тело) > xmin (пробный объект) или
xmin (пробное тело) < xmax (пробный объект),
то пробный объект может проткнуть бок пробного тела.
Установить флаг видимого протыкания для последующего использования.
Завести тело в список протыканий.
Если ymax (пробное тело) > ymin (пробный объект) или
ymin (пробное тело) < ymax (пробный объект),
то пробный объект может проткнуть верх или виз пробного тела.
Установить флаг видимого протыкания для последующего использования.
Занести проткнутое тело в список протыканий.
Если список протыканий пуст, то устанавливать флаг протыкания не
надо.
Провести проверки экранирования ребер:
Вычислить s и d для ребра.
Вы числить p, q, w для каждой плоскости, несущей грань пробного тела.
Проверка полной видимости. Если ребро полностью, видимо, то перейти к
следующему ребру.
Сформировать уравнения hj = 0 и решить их, объединяя попарно и
включив в систему уравнения границ t = 0 и t = 1. Если установлен
флаг видимого протыкания, то в систему надо включить и уравнение
границы a = 0. Запомнить точки протыкания. В противном случае границу
a = 0 не учитывать.
Для каждой пары (t, a), являющейся решением проверить выполнение
условий 0 ( t ( 1, a ( 0 и hj > 0 для всех других плоскостей. Если
эти условия выполнены, то найти tmaxmin и tminmax.
Вычислить видимые участки отрезков и сохранить их для последующей
проверки экранирования телами с более низкими приоритетами.
Определить видимые отрезки, связывающие точки протыкания:
Если флаг видимого протыкания не установлен, перейти к процедуре
визуализации.
Если точек протыкания не обнаружено, перейти к процедуре
визуализации.
Сформировать все возможные ребра, соединяющие точки протыкания, для
пар тел, связанных отношением протыкания.
Проверить экранирование всех соединяющих ребер обоими телами,
связанными отношением протыкания.
Проверить экранирование оставшихся соединяющих ребер всеми прочими
телами сцены. Запомнить видимые отрезки.
Визуализировать оставшиеся видимые отрезки ребер.
3. Алгоритм использующий Z-буфер
Это один из простейших алгоритмов удаления невидимых поверхностей.
Работает этот алгоритм в пространстве изображения. Идея z-буфера является
простым обобщением идеи о буфере кадра. Буфер кадра используется для
запоминания атрибутов (интенсивности) каждого пиксела в пространстве
изображения. Z-буфер - это отдельный буфер глубины, используемый для
запоминания координаты z или глубины каждого видимого пиксела в
пространстве изображения. В процессе работы глубина или значение z каждого
нового пиксела, который нужно занести в буфер кадра, сравнивается с
глубиной того пиксела, который уже занесен в z-буфер. Если это сравнение
показывает, что новый пиксел расположен впереди пиксела, находящегося в
буфере кадра, то новый пиксел заносится в этот буфер и, кроме того,
производится корректировка z-буфера новым значением z. Если же сравнение
дает противоположный результат, то никаких действий не производится. По
сути, алгоритм является поиском по x и y наибольшего значения функции z (z,
y).
Главное преимущество алгоритма - его простота. Кроме того, этот
алгоритм решает задачу об удалении невидимых поверхностей и делает
тривиальной визуализацию пересечений сложных поверхностей. Сцены могут быть
любой сложности. Поскольку габариты пространства изображения фиксированы,
оценка вычислительной трудоемкости алгоритма не более чем линейна.
Поскольку элементы сцены или картинки можно заносить в буфер кадра или в z-
буфер в произвольном порядке, их не нужно предварительно сортировать по
приоритету глубины. Поэтому экономится вычислительное время, затрачиваемое
на сортировку по глубине.
Основной недостаток алгоритма - большой объем требуемой памяти. Если
сцена подвергается видовому преобразованию и отсекается до фиксированного
диапазона координат z значений, то можно использовать z-буфер с
фиксированной точностью. Информацию о глубине нужно обрабатывать с большей
точностью, чем координатную информацию на плоскости (x, y); обычно бывает
достаточно 20 бит. Буфер кадра размером 512х512х24 бит в комбинации с z-
буфером размером 512х512х20 бит требует почти 1.5 мегабайт памяти. Однако
снижение цен на память делает экономически оправданным создание
специализированных запоминающих устройств для z-буфера и связанной с ним
аппаратуры.
Альтернативой созданию специальной памяти для z-буфера является
использование для этой цели оперативной или массовой памяти. Уменьшение
требуемой памяти достигается разбиением пространства изображения на 4, 16
или больше квадратов или полос. В предельном варианте можно использовать z-
буфер размером в одну строку развертки. Для последнего случая имеется
интересный алгоритм построчного сканирования. Поскольку каждый элемент
сцены обрабатывается много раз, то сегментирование z-буфера, вообще говоря,
приводит к увеличению времени, необходимого для обработки сцены. Однако
сортировка на плоскости, позволяющая не обрабатывать все многоугольники в
каждом из квадратов или полос, может значительно сократить этот рост.
Другой недостаток алгоритма z-буфера состоит в трудоемкости и высокой
стоимости устранения лестничного эффекта, а также реализации эффектов
прозрачности и просвечивания.
Более формальное описание алгоритма z-буфера таково:
Заполнить буфер кадра фоновым значением интенсивности или цвета.
Заполнить z-буфер минимальным значением z.
Преобразовать каждый многоугольник в растровую форму в произвольном
порядке.
Для каждого Пиксел(x, y) в многоугольнике вычислить его глубину z (x,
y).
Сравнить глубину z (x, y) со значением Z буфер(x, y), хранящимися в z-
буфере в этой же позиции.
Если z (x, y) > z буфер (x, y), то записать атрибут этого
многоугольника (интенсивность, цвет и т. п.) в буфер кадра и заменить z-
буфер(x, y) на z (x, y).
В противном случае никаких действий не производить.
В качестве предварительного шага там, где это целесообразно,
применяется удаление нелицевых граней.
Если известно уравнение плоскости, несущей каждый многоугольник, то
вычисление глубины каждого пиксела на сканирующей строке можно проделать
пошаговым способом. Как известно уравнение плоскости имеет вид
ax + by + cz + d =0
z = ( ( ax + by + d)/c ( 0
Для сканирующей строки y = const. Поэтому глубина пиксела наэтой строке, у
которого x = x + (x, равна
z1 ( z = ( (ax1 + d)/c + (ax + d)/c = a(x ( x1)/c
или
z1 = z – (a/c)(x
Но (x = 1, поэтому z1 = ( (а/с).
Алгоритм, использующий z-буфер, можно также применить для построения
сечений поверхностей. Изменится только оператор сравнения:
z(x, y) > z-буфер(x, y) and z(x, y) ( Zсечения
где Zсечения - глубина искомого сечения. Эффект заключается в том, что
остаются только такие элементы поверхности, которые лежат на самом сечении
или позади него.
4. Алгоритм определения видимых поверхностей путём трассировки лучей
Оценки эффективности всех алгоритмов удаления невидимых поверхностей,
изложенных ранее, зависят от определенных характеристик когерентности той
сцены, для которой ведется поиск ее видимых участков. В отличие от них
трассировка лучей является методом грубой силы. Главная идея, лежащая в
основе этого метода, заключается в том, что наблюдатель видит любой объект
посредством испускаемого неким источником света, который падает на этот
объект и затем каким-то путем доходит до наблюдателя. Свет может достичь
наблюдателя, отразившись от поверхности, преломившись или пройдя через нее.
Если проследить за лучами света, выпущенными источником, то можно
убедиться, что весьма немногие из них дойдут до наблюдателя. Следовательно,
этот процесс был бы вычислительно неэффективен. В следствии этого было
предложено отслеживать (трассировать) лучи в обратном направлении, т. е. от
наблюдателя к объекту, как показано на рис. 3.11. В первом алгоритме
трассировка прекращалась, как только луч пересекал поверхность видимого
непрозрачного объекта; т. е. луч использовался только для обработки скрытых
или видимых поверхностей. С течением времени был реализован алгоритм
трассировки лучей с использованием общих моделей освещения. Эти алгоритмы
учитывают эффекты отражения одного объекта от поверхности другого,
преломления, прозрачности и затенения. Производится также устранение
ступенчатости. Рассмотрим применением метода трассировки лучей для
определения видимых или скрытых поверхностей.
Рис.3.11 служит иллюстрацией алгоритма трассировки лучей. В этом
алгоритме предполагается, что сцена уже преобразована в пространство
изображения. Перспективное преобразование не используется. Считается, что
точка зрения или наблюдатель находится в бесконечности на положительной
полуоси z. Поэтому все световые лучи параллельны оси z. Каждый луч,
исходящий от наблюдателя, проходит через центр пиксела на растре до сцены.
Траектория каждого луча отслеживается, чтобы определить, какие именно
объекты сцены, если таковые существуют, пересекаются с данным лучом.
Необходимо проверить пересечение каждого объекта сцены с каждым лучом. Если
луч пересекает объект, то определяются всевозможные точки пересечения луча
и объекта. Можно получить большое количество пересечений, если
рассматривать много объектов. Эти пересечения упорядочиваются по глубине.
Пересечение с максимальным значением z представляет видимую поверхность для
данного пиксела. Атрибуты этого объекта используются для определения
характеристик пиксела.
Если точка зрения находится не в бесконечности, алгоритм трассировки
лучей лишь незначительно усложняется. Здесь предполагается, что наблюдатель
по-прежнему находится на положительной полуоси z. Картинная плоскость, т.
е. растр, перпендикулярна оси z, как показано на рис 3.12. Задача состоит в
том, чтобы построить одноточечную центральную проекцию на картинную
плоскость.
Наиболее важным элементом алгоритма определения видимых поверхностей
путем трассировки лучей, является процедура определения пересечений. В
состав сцены можно включать любой объект, для которого можно создать
процедуру построения пересечений. Объекты сцены могут состоять из набора
плоских многоугольников, многогранников или тел, ограниченных или
определяемых квадратичными или биполиномиальными параметрическими
поверхностями. Поскольку 75-95% времени, затрачиваемого алгоритмом
трассировки лучей, уходит на определение пересечений, то эффективность
процедуры поиска пересечений оказывает значительно влияние на
производительность всего алгоритма. Вычислительная стоимость определения
пересечений произвольной пространственной прямой (луча) с одним выделенным
объектом может оказаться высокой. Чтобы избавиться от ненужного поиска
пересечений, производится проверка пересечения луча с объемной оболочкой
рассматриваемого объекта. И если луч не пересекает оболочки, то не нужно
больше искать пересечений этого объекта с лучом. В качестве оболочки можно
использовать прямоугольный параллелепипед или сферу. Хотя, как показано, на
рис. 3.13, использование сферы в качестве оболочки может оказаться
неэффективным, факт пересечения трехмерного луча со сферой определяется
очень просто. В частности, если расстояние от центра сферической оболочки
до луча превосходит радиус этой сферы, луч не пересекает оболочки.
Следовательно, он не может пересекаться и с объектом.
Поэтому тест со сферической оболочкой сводится к определению расстояния
от точки до трехмерной прямой, т. е. луча. Будем использовать
параметрическое представление прямой, проходящей через точки P1(x1, y1, z1)
и P2(x2, y2, z2) т. е.:
Р(t) = P1 + (P2 ( P1)t
с компонентами
x = x1 +(x2 ( x1)t = x1 +at
y = y1 +(y2 ( y1)t = y1 +bt
z = z1 +(z2 ( z1)t = z1 +ct
Тогда минимальное расстояние d от этой прямой до точки P0(x0, y0, z0)
равно:
d2 = (x ( x0)2 + (y ( y0)2 +(z ( z0)2
а параметр t, определяющий ближайшую точку Р(t) равен:
[pic]
Если d2 > R2, где R - радиус сферической оболочки, то луч не может
пересечься с объектом.
Выполнение габаритного теста с прямоугольной оболочкой в трехмерном
пространстве требует большого объема вычислений. При этом следует проверить
пересечение луча по меньшей мере с тремя бесконечными плоскостями,
ограничивающими прямоугольную оболочку. Поскольку точки пересечения могут
оказаться вне граней этого параллелепипеда, то для каждой из них следует,
кроме того, произвести проверку на охват или попадание внутрь.
Следовательно, для трех измерений тест с прямоугольной оболочкой
оказывается более медленным, чем тест со сферической оболочкой.
Одной простой процедурой можно свести тест с прямоугольной оболочкой к
сравнению знаков, упрощая тем самым вычисление пересечений с объектом, а
также сравнения по глубине среди точек пересечения. В этой процедуре
используются переносы и повороты вокруг координатных осей для того, чтобы
добиться совпадения луча с осью z. Аналогичным преобразованиям подвергается
и прямоугольная оболочка объекта. Луч пересекает оболочку, если в новой
перенесенной и повернутой системе координат знаки xmin и xmax, а так же
ymin и ymax. противоположны, как показано на рис. 3.14.
Рассмотрим упрощение вычислений точек пересечения луча и поверхности
второго порядка общего вида. В произвольной декартовой системе координат
поверхностей второго порядка является геометрическим местом точек,
координаты которых удовлетворяют уравнению:
Q (x, y, z) = a1x2 + a2y2 + a3z2 +
b1yz + b2xz + b3xy +
c1x + c2y + c3z +d = 0
После применения преобразования, которое является комбинацией переноса и
поворота и используется для совмещения луча с осью z, пересечение этого
луча с поверхностью, если оно имеет место, возникает при x = y = 0. Поэтому
в общем случае точки пересечения являются решениями уравнения:
[pic]
т.е.
[pic]
где штрих сверху обозначает коэффициенты общего уравнения поверхности
второго порядка после преобразования. Если [pic], то решения выражаются
комплексными числами и луч не пересекает поверхности. Если бесконечная
поверхность второго порядка (например, конус или цилиндр) ограничена
плоскостями, то эти плоскости также следует преобразовать и проверить на
пересечения. Если найдено пересечение с бесконечной ограничивающей
плоскостью, то необходимо, кроме того, произвести проверку на попадание
внутрь. Однако в преобразованной системе координат эту проверку можно
произвести на двумерной проекции фигуры, образованной пересечением
ограничивающей плоскости и квадратичной поверхности. Для получения точки
пересечения в исходной системе координат необходимо применить обратное
преобразование.
Вычисления пересечений для элементов биполиномиальных параметрических
поверхностей более сложны. Уиттед предложил простой метод разбиения для
элемента бикубической поверхности. Вычисления выполняются с элементом
поверхности в его исходном положении. Если луч пересекает сферическую
оболочку элемента поверхности, то этот кусок разбивается с помощью
алгоритма разбиения предложенного Кэтмулом. Затем луч проверяется на
пересечение со сферическими оболочками подэлементов. Если пересечение не
обнаружено, то луч не пересекается и с самим элементом. Если же луч
пересекается со сферической оболочкой какого-нибудь подэлемента, то
последний разбивается дальше. Процесс завершается, если ни одна из
сферических оболочек не пересечена или если достигнут заранее определенный
их минимальный размер. Эти сферические оболочки минимального размера и
являются искомыми пересечениями луча и элемента поверхности.
При реализации преобразования, совмещающего луч с осью z, метод
разбиения можно использовать скорее применительно к прямоугольным
оболочкам, чем к сферическим. Это сокращает число разбиений и увеличивает
эффективность алгоритма. Для параметрических поверхностей, обладающих
свойством выпуклой оболочки, например для поверхностей Безье и В-сплайнов,
число разбиений можно сократить дополнительно за счет усложнения алгоритма,
если для подэлементов воспользоваться их выпуклыми оболочками вместо
прямоугольных.
Кадзия разработал метод для биполиномиальных параметрических
поверхностей, который не требует их подразделения. Этот метод основан на
понятиях, заимствованных из алгебраической геометрии. Решения получающихся
при этом алгебраических уравнений высших степеней находятся численно.
Метод, подобный этому, можно реализовать в преобразованной системе
координат. Напомним, что биполиномиальная параметрическая поверхность
определяется уравнением
Q (u, w) = 0
с компонентами
x = f (u, w)
y = g (u, w)
z = h (u, w)
в преобразованной системе координат выполнено условие x = y = 0. Значит,
f (u, w) = 0
g (u, w) = 0
Совместное решение этой пары уравнений дает значения u и w для точек
пересечения. Подстановка этих значений в уравнение z = h (u, w) дает
компоненту z для точек пересечения. Неудача попытки найти действительное
решение означает, что луч не пересекает поверхность. Степень системы
уравнений для u, w равна произведению степеней биполиномиальных
поверхностей. Бикубическая поверхность, например, имеет шестую степень.
Следовательно, в общем случае потребуются численные методы решения. Там,
где это допустимо, для начального приближения u и w можно использовать
пересечения луча с выпуклой оболочкой. Для получения пересечений в исходной
системе координат, как и ранее, следует использовать обратное
преобразование.
Если трассируемый луч пересекает объекты сцены в нескольких точках, то
необходимо определить видимое пересечение. Для алгоритмов определения
видимости простых непрозрачных поверхностей пересечением с видимой
поверхностью будет точка с максимальным значением координаты z. Для более
сложных алгоритмов, учитывающих отражения и преломления, эти пересечения
следует упорядочить вдоль луча по расстоянию от его начала. В
преобразованной системе координат этой цели можно достичь простой
сортировкой по z.
Алгоритм трассировки лучей для простых непрозрачных поверхностей можно
представить следующим образом:
Подготовка данных для сцены:
Создать список объектов, содержащий по меньшей мере следующую
информацию:
Полное описание объекта: тип, поверхность, характеристики и т. п.
Описание сферической оболочки: центр и радиус,
Флаг прямоугольной оболочки. Если этот флаг поднят, то будет
выполнен габаритный тест с прямоугольной оболочкой, если же он
опушен, то тест выполняться не будет. Заметим, что габаритный тест
необходим не для всех объектов, например для сферы он не нужен.
Описание прямоугольной оболочки: xmin, xmax, ymin, ymax, zmin,
zmax.
Для каждого трассируемого луча:
Выполнить для каждого объекта трехмерный тест со сферической
оболочкой в исходной системе координат. Если луч пересекает эту
сферу, то занести объект в список активных объектов. Если список
активных объектов пуст, то изобразить данный пиксел с фоновым
значением интенсивности и продолжать работу. В противном случае,
перенести и повернуть луч так, чтобы он совместился с осью z.
Запомнить это комбинированное преобразование.
Для каждого объекта из списка активных объектов:
Если флаг прямоугольной оболочки поднят, преобразовать, используя
комбинированное преобразование, эту оболочку в систему координат, в
которой находится луч1 и выполнить соответствующий тест. Если
пересечения с лучом нет, то перейти к следующему объекту. В противном
случае преобразовать, используя комбинированное преобразование,
объект в систему координат, в которой находится луч, и определить его
пересечения с лучом, если они существуют. Занести все пересечения в
список пересечений.
Если список пересечений пуст, то изобразить данный пиксел с фоновым
значением интенсивности.
В противном случае определить z для списка пересечений.
Вычислить преобразование, обратное комбинированному преобразованию.
Используя это обратное преобразование, определить точку пересечения в
исходной системе координат.
Изобразить данный пиксел, используя атрибуты пересеченного объекта и
соответствующую модель освещенности.
Заметим, что алгоритм определения видимости простых непрозрачных
поверхностей, не требует вычислять преобразование, обратное
комбинированному, или определять точку пересечения в исходной системе
координат, если в модели освещения не возникает необходимость включения в
алгоритм свойств поверхности объекта или ее ориентации в точке пересечения.
Эти шаги включены в данный алгоритм для полноты и удобства при реализации
алгоритма трассировки лучей с учетом общей модели освещенности.
Две модификации этого простого алгоритма заметно повышают его
эффективность. Первая модификация основывается на понятии кластерных групп
пространственно связанных объектов. Например, предположим, что сцена
состоит из стола, на котором стоят ваза с фруктами и блюдо с конфетами. В
вазе лежат апельсин, яблоко, банан и груша. Блюдо содержит несколько конфет
разных форм и цветов. Вводятся сферические оболочки для групп или кластеров
связанных объектов, например для вазы и всех плодов в ней, для блюда и всех
конфет в нем, а также для стола и всех предметов на нем. Сферические
оболочки, охватывающие более чем один объект, называются сферическими
кластерами. Если это необходимо, то можно ввести и прямоугольные кластеры
Вводится, кроме того, наибольший сферический кластер, именуемый сферой
сцены, которая охватывает все объекты в этой сцене. Затем сферические
оболочки обрабатываются в иерархическом порядке. Если луч не пересекает
сферу сцены, то он не может пересечь и ни одного из ее объектов.
Следовательно, пиксел, соответствующий этому лучу, будет изображен с
фоновым значением интенсивности. Если же луч пересекает сферу сцены, то на
пересечение с лучом проверяются сферические кластеры и сферические оболочки
объектов, не содержащихся ни в одном из сферических кластеров,
принадлежащих кластеру сцены. Если луч не пересекает сферический кластер,
то сам этот кластер и все объекты или кластеры, содержащиеся в нем,
исключаются из дальнейшего рассмотрения. Если ли же луч пересекает кластер,
то эта процедура рекурсивно повторяется до тех пор, пока не будут
рассмотрены все объекты. Если луч пересекает сферическую оболочку некоего
объекта в какой-нибудь точке, то этот объект заносится в список активных
объектов. Эта процедура значительно сокращает количество вычислений точек
пересечения луча со сферическими оболочками и тем самым повышает
эффективность всего алгоритма.
Вторая модификация использует упорядочение по приоритет чтобы сократить
число объектов, для которых вычисляются пересечения с лучом. Вместо того,
чтобы немедленно производить вычисление пересечения объекта к лучом, как
это делается в изложенном выше простом алгоритме, объект помещается в
список пересечённых объектов. После рассмотрения всех объектов сцены
преобразованный список пересеченных объектов упорядочивается по приоритету
глубины. Для определения приоритетного порядка можно использовать центры
сферических оболочек или наибольшие (наименьшие) значения z прямоугольных
оболочек. Пересечения луча с объектами из списка пересеченных объектов
определяются в порядке их приоритетов. К сожалению точка пересечения луча с
первым из объектов в упорядоченном по приоритетам списке пересеченных
объектов необязательно будет видимой. Необходимо определить точки
пересечения луча со всеми потенциально видимыми объектами из множества {Q}
и занести их в список пересечений. Затем модифицированный алгоритм
упорядочивает этот список пересечений так, как это делалось и в простом
алгоритме. К счастью, множество {Q} потенциально видимых объектов обычно
значительно меньше числа объектов в списке пересеченных лучом.
Следовательно, эффективность алгоритма возрастет. Обе эти модификации
применимы также и к общему алгоритму трассировки лучей, учитывающему
отражение, преломление и прозрачность.
Изложенный выше простой алгоритм не использует того обстоятельства, что
некоторые грани многогранника являются нелицевыми и их можно сразу удалить,
не учитывается здесь и возможная когерентность сцены. Например, несуществен
порядок обработки пикселов. Вместе с тем рассмотрение этих пикселов в
порядке сканирования строки развертки позволило бы воспользоваться в
алгоритме когерентностью сканирующих строк. Другой подход может
заключаться в подразделении сцены, причем учет когерентности областей
привел бы к уменьшению числа объектов, рассматриваемых для каждого луча и,
следовательно, к повышению эффективности алгоритма. Хотя использование
подобных приемов повышает эффективность алгоритма определения видимости
непрозрачных поверхностей их невозможно применить в общем алгоритме
трассировки лучей, который учитывает отражение, преломление и прозрачность.
Например, если в алгоритме учтено отражение, то объект, который полностью
закрыт другим объектом, может оказаться видимым, как отражение от третьего
объекта. Поскольку метод трассировки лучей является метолом грубой силы,
алгоритмы определения видимости непрозрачных поверхностей, обсуждавшиеся
ранее, являются более эффективными.
Д. Рот указал, что алгоритм трассировки лучей можно использовать также
и для создания каркасных чертежей сплошных тел. При этом предполагается,
что лучи порождаются в том порядке, в каком происходит сканирование экрана,
т. е. сверху вниз и слева направо. Получающаяся процедура такова:
Если видимая поверхность для Пиксел(x, y) соответствует фону или
отличается от видимой поверхности для Пиксел(x – 1 , y) или для
Пиксел(x, y – 1), то изобразить этот пиксел. В противном случае пиксел
не изображать.
Алгоритм трассировки лучей можно использовать, кроме того, для
определения физических свойств сплошного тела. Полное рассмотрение этого
вопроса не входит в эту работу. Однако для иллюстрации этого подхода
приведем один пример. В частности, объем любого сплошного тела можно
определить, аппроксимируя его суммой маленьких прямоугольных
параллелепипедов. Это можно проделать, породив множество параллельных
лучей, расположенных на определенных расстояниях друг от друга. Точки
пересечения каждого луча с заданным объемом вычисляются и упорядочиваются
вдоль направления этого луча. Если подвергнуть луч переносу, совмещающему
его с осью z, как это было описано выше, то объем каждого прямоугольного
параллелепипеда будет равен:
[pic]
где lx и ly – расстояние между лучами по горизонтали и вертикали
соответственно. Каждое слагаемое (zi-1 – zi) представляет собой участок
луча, лежащий внутри заданного тела. Объем тела, следовательно, равен сумме
объемов всех таких прямоугольных параллелепипедов. Точность результатов
зависит от числа использованных лучей. Точность можно повысить, умеренно
увеличив объем вычислений и рекурсивно уменьшив размер «пиксела», в том
случае, если объемы смежных прямоугольных параллелепипедов различаются
более чем на заранее заданную величину. При таком подходе точнее
определяются объемы тех элементов тела, где имеют место быстрые изменения,
например в окрестностях ребер тел, ограниченных криволинейными
поверхностями.
Ввиду внутренне присущей алгоритму трассировки лучей параллельности
вычислений (здесь все лучи обрабатываются одинаково и независимо друг от
друга) его можно реализовать аппаратно на основе интегральных схем с
использованием методов параллельной обработки.
В отличие от алгоритма Робертса, Варнок в 1968 г. предложил алгоритм, работающий не в объектном пространстве, а в пространстве образа. Он также нацелен на изображение многогранников, а главная идея его основана на гипотезе о способе обработки информации, содержащейся в сцене, глазом и мозгом человека. Эта гипотеза заключается в том, что тратится очень мало времени и усилий на обработку тех областей, которые содержат мало информации. Большая часть времени и труда затрачивается на области с высоким информационным содержимым. Так, например, рассматривая помещение, в котором имеется только картина на стене, мы быстро осматриваем стены, пол и потолок, а затем все внимание сосредоточиваем на картине. В свою очередь, на этой картине, если это портрет, мы бегло отмечаем фон, а затем более внимательно рассматриваем лицо изображенного персонажа, в особенности глаза, губы. Как правило, достаточно детально рассматриваются еще и руки и с чуть меньшим вниманием - одежда.
В алгоритме Варнока и его вариантах делается попытка воспользоваться тем, что большие области изображения однородны. Такое свойство называют когерентностью, имея в виду, что смежные области (пиксели) вдоль обеих осей х и у имеют тенденцию к однородности.
В пространстве изображения рассматривается окно и решается вопрос о том, пусто ли оно, или его содержимое достаточно просто для визуализации. Если это не так, то окно разбивается на фрагменты до тех пор, пока содержимое фрагмента не станет достаточно простым для визуализации или его размер не достигнет требуемого предела разрешения. В последнем случае информация, содержащаяся в окне, усредняется, и результат изображается с одинаковой интенсивностью или цветом.
Конкретная реализация алгоритма Варнока зависит от метода разбиения окна и от деталей критерия, используемого для того, чтобы решить, является ли содержимое окна достаточно простым. В оригинальной версии алгоритма каждое окно разбивалось на четыре одинаковых подокна. Многоугольник, входящий в изображаемую сцену, по отношению к окну будем называть (рис. 6.3)
· внешним, если он целиком находится вне окна;
· внутренним, если он целиком расположен внутри окна;
· пересекающим, если он пересекает границу окна;
· охватывающим, если окно целиком расположено внутри него.
Рис. 6.3. Варианты расположения многоугольника по отношению к окну
Теперь можно в самом общем виде описать алгоритм.
Для каждого окна:
1. Если все многоугольники сцены являются внешними по отношению к окну, то оно пусто; изображается фоновым цветом и дальнейшему разбиению не подлежит.
2. Если только один многоугольник сцены имеет общие точки с окном и является по отношению к нему внутренним, то окно заполняется фоновым цветом, а сам многоугольник заполняется своим цветом.
3. Если только один многоугольник сцены имеет общие точки с окном и является по отношению к нему пересекающим, то окно заполняется фоновым цветом, а часть многоугольника, принадлежащая окну, заполняется цветом многоугольника.
4. Если только один многоугольник охватывает окно и нет других многоугольников, имеющих общие точки с окном, то окно заполняется цветом этого многоугольника.
5. Если существует хотя бы один многоугольник, охватывающий окно, то среди всех таких многоугольников выбирается тот, который расположен ближе всех многоугольников к точке наблюдения, и окно заполняется цветом этого многоугольника.
6. В противном случае производится новое разбиение окна.
Шаги 1–4 рассматривают ситуацию пересечения окна только с одним многоугольником. Они используются для сокращения числа подразбиений. Шаг 5 решает задачу удаления невидимых поверхностей. Многоугольник, находящийся ближе всех к точке наблюдения, экранирует все остальные.
Для реализации алгоритма необходимы функции, определяющие взаимное расположение окна и многоугольника, которые достаточно легко реализуются в случае прямоугольных окон и выпуклых многоугольников. Для определения, является ли многоугольник охватывающим, внешним или внутренним, можно воспользоваться, например, погружением многоугольника в прямоугольную оболочку. Для определения наличия пересечений можно использовать опорные прямые (так же, как использовались плоскости в алгоритме Робертса). Если же многоугольник невыпуклый, то задача усложняется. Методы решения такого рода задач будут рассмотрены в главе, относящейся к геометрическому поиску.
Следует заметить, что существуют различные реализации алгоритма Варнока. Были предложены варианты оптимизации, использующие предварительную сортировку многоугольников по глубине, т. е. по расстоянию от точки наблюдения, и другие.
Вейлер и Азертон попытались оптимизировать алгоритм Варнока в отношении числа выполняемых разбиений, перейдя от прямоугольных разбиений к разбиениям вдоль границ многоугольников (1977). Для этого они использовали ими же разработанный алгоритм отсечения многоугольников. Алгоритм работает в объектном пространстве, и результатом его работы являются многоугольники. В самом общем виде он состоит из четырех шагов.
1. Предварительная сортировка по глубине.
2. Отсечение по границе ближайшего к точке наблюдения многоугольника, называемое сортировкой многоугольников на плоскости.
3. Удаление многоугольников, экранируемых более близкими к точке наблюдения многоугольниками.
4. Если требуется, то рекурсивное разбиение и новая сортировка.
В процессе предварительной сортировки создается список приблизительных приоритетов, причем близость многоугольника к точке наблюдения определяется расстоянием до ближайшей к ней вершины. Затем выполняется отсечение по самому первому из многоугольников. Отсечению подвергаются все многоугольники из списка, причем эта операция выполняется над проекциями многоугольников на картинную плоскость. При этом создаются списки внешних и внутренних фигур. Все попавшие в список внешних не экранируются отсекающим многоугольником. Затем рассматривается список внутренних многоугольников и выполняется сортировка по расстоянию до отсекающего многоугольника. Если все вершины некоторого многоугольника оказываются дальше от наблюдателя, чем самая удаленная из вершин экранирующего, то они невидимы, и тогда они удаляются. После этого работа алгоритма продолжается с внешним списком.
Если какая-то из вершин внутреннего многоугольника оказывается ближе к наблюдателю, чем ближайшая из вершин экранирующего многоугольника, то такой многоугольник является частично видимым. В этом случае предварительный список приоритетов некорректен, и тогда в качестве нового отсекающего многоугольника выбирается именно этот "нарушитель порядка". При этом используется именно исходный многоугольник, а не тот, что получился в результате первого отсечения. Такой подход позволяет минимизировать число разбиений.
Этот алгоритм в дальнейшем был обобщен Кэтмулом (1974) для изображения гладких бикубических поверхностей. Его подход заключался в том, что разбиению подвергалась поверхность. Коротко этот алгоритм можно описать так:
1. Рекурсивно разбивается поверхность до тех пор, пока проекция элемента на плоскость изображения не будет покрывать не больше одного пикселя.
2. Определить атрибуты поверхности в этом пикселе и изобразить его.
Эффективность такого метода, как и алгоритм Варнока, зависит от эффективности разбиений. В дальнейшем этот алгоритм был распространен на сплайновые поверхности.
Это
один из простейших алгоритмов удаления невидимых поверхностей. Впервые он был
предложен Кэтмулом в 1975 г. Работает этот алгоритм в пространстве изображения.
Идея Z-буфера является простым обобщением идеи о буфере кадра. Буфер кадра
используется для запоминания атрибутов каждого пикселя в пространстве
изображения, а Z-буфер предназначен для запоминания глубины (расстояния от
картинной плоскости) каждого видимого пикселя в пространстве изображения.
Поскольку достаточно распространенным является использование координатной
плоскости в
качестве картинной плоскости, то глубина равна координате
точки,
отсюда и название буфера. В процессе работы значение глубины каждого нового
пикселя, который нужно занести в буфер кадра, сравнивается с глубиной того
пикселя, который уже занесен в Z-буфер. Если это сравнение показывает, что
новый пиксель расположен впереди пикселя, находящегося в буфере кадра, то новый
пиксель заносится в этот буфер и, кроме того, производится корректировка
Z-буфера новым значением глубины. Если же сравнение дает противоположный результат,
то никаких действий не производится. По сути, алгоритм является поиском по
и
наибольшего
значения функции
.
Главное преимущество алгоритма - его простота. Кроме того, этот алгоритм решает задачу об удалении невидимых поверхностей и делает тривиальной визуализацию пересечений сложных поверхностей. Сцены могут быть любой сложности. Поскольку габариты пространства изображения фиксированы, оценка вычислительной трудоемкости алгоритма не более чем линейна. Поскольку элементы сцены или картинки можно заносить в буфер кадра или в Z-буфер в произвольном порядке, их не нужно предварительно сортировать по приоритету глубины. Поэтому экономится вычислительное время, затрачиваемое на сортировку по глубине.
Основной недостаток алгоритма - большой объем требуемой памяти. В последнее время в связи с быстрым ростом возможностей вычислительной техники этот недостаток становится менее лимитирующим. Но в то время, когда алгоритм еще только появился, приходилось изобретать способы создания буфера как можно большего объема при имеющемся ресурсе памяти.
Например, можно разбивать пространство изображения на 4, 16 или больше прямоугольников или полос. В предельном варианте можно использовать буфер размером в одну строку развертки. Для последнего случая был разработан алгоритм построчного сканирования. Поскольку каждый элемент сцены обрабатывается много раз, то сегментирование Z-буфера, вообще говоря, приводит к увеличению времени, необходимого для обработки сцены.
Другой недостаток алгоритма состоит в трудоемкости реализации эффектов, связанных с полупрозрачностью, и ряда других специальных задач, повышающих реалистичность изображения. Поскольку алгоритм заносит пиксели в буфер кадра в произвольном порядке, то довольно сложно получить информацию, которая необходима для методов, основывающихся на предварительном анализе сцены.
В целом алгоритм выглядит так:
1. Заполнить буфер кадра фоновым значением цвета.
2. Заполнить Z -буфер минимальным значением z (глубины) .
3. Преобразовать изображаемые объекты в растровую форму в произвольном порядке.
4. Для каждого объекта:
4.1.
Для каждого пикселя образа
вычислить его глубину
.
4.2.
Сравнить глубину со
значением глубины, хранящимся в Z-буфере в этой же позиции.
4.3.
Если ,
то занести атрибуты пикселя в буфер кадра и заменить
.
В противном случае никаких действий не производить.
Алгоритм, использующий Z-буфер, можно также применять для построения сечений поверхностей. Изменится только оператор сравнения:
где
-
глубина искомого сечения.
Здесь мы рассмотрим группу методов, учитывающих специфику изображаемой сцены для удаления невидимых линий и поверхностей.
При изображении сцен со сплошным закрашиванием поверхностей можно воспользоваться методом художника: элементы сцены изображаются в последовательности от наиболее удаленных от наблюдателя к более близким. При экранировании одних участков сцены другими невидимые участки просто закрашиваются. Если вычислительная трудоемкость получения изображения для отдельных элементов достаточно высока, то такой алгоритм будет не самым лучшим по эффективности, но зато мы избежим анализа (и вполне возможно, тоже дорогостоящего), позволяющего установить, какие же из элементов изображать не надо в силу их невидимости. Например, при изображении правильного многогранника мы довольно легко можем упорядочить его грани по глубине, но такая сортировка для произвольного многогранника возможна далеко не всегда. Мы рассмотрим применение этого метода на примере изображения поверхности, заданной в виде однозначной функции двух переменных.
Пусть поверхность задана уравнением
В качестве
картинной плоскости выберем плоскость . В области задания
функции на осях координат построим сетку узлов:
Тогда
представляют
собой набор "высот" для данной поверхности по отношению к плоскости
.
Поверхность будем аппроксимировать треугольниками с вершинами в точках
так,
что каждому прямоугольнику сетки узлов будут соответствовать два треугольника:
и
.
Для построения наглядного изображения поверхности повернем ее на некоторый угол
сначала относительно оси
,
а затем относительно оси
,
причем направление вращения выберем таким образом, что точки, соответствующие
углам координатной сетки, расположатся в следующем порядке по удаленности от
картинной плоскости:
,
т.е. точка
окажется
наиболее близкой к картинной плоскости (и наиболее удаленной от наблюдателя).
Предполагается, что способ закрашивания треугольников уже определен. Тогда
процесс изображения поверхности можно коротко записать так:
При такой последовательности вывода изображения мы продвигаемся от самого удаленного треугольника к все более близким, частично закрашивая уже изображенные участки поверхности.
увеличить изображение
Рис. 6.4. Простое каркасное изображение с поверхности
увеличить изображение
Рис. 6.5. Каркасное изображение диагональными ребрами
Алгоритм
художника можно применять для полностью закрашенной сцены, а для каркасного
изображения, когда объект представляется в виде набора кривых или ломаных
линий, он непригоден. Для этого случая предложен еще один метод, весьма
эффективный - метод плавающего горизонта. Вернемся к предыдущему примеру
изображения поверхности. Каркасное изображение получается путем изображения
кривых, получаемых при пересечении этой поверхности плоскостями и
(рис.
6.4).
На
самом деле мы будем рисовать четырехугольник и одну диагональ. В процессе
рисования нам понадобятся два целочисленных массива: (нижний
горизонт) и
(верхний
горизонт) размерностью, соответствующей горизонтальному размеру экрана в
пикселях. Они нужны для анализа видимости участков изображаемых отрезков.
Сначала мы инициализируем верхний горизонт нулем, а нижний - максимальным
значением вертикальной координаты на экране. Каждая выводимая на экран точка
может закрывать другие точки, которые "скрываются за горизонтом". По
мере рисования нижний горизонт "опускается", а верхний
"поднимается", постепенно оставляя все меньше незакрытого
пространства. В отличие от метода художника, здесь мы продвигаемся от ближнего
угла к дальнему. Теперь опишем алгоритм подробнее.
Функция
в
этом фрагменте предназначена для вывода на экран отрезка прямой, причем в
момент инициализации очередного пикселя
она
выполняет следующие действия:
Таким образом, пиксель выводится только в том случае, если он выше верхнего или ниже нижнего горизонта, после чего его координаты уже сами становятся одним из горизонтов. А в целом алгоритм будет выглядеть так:
На рис. 6.5 приведен пример изображения поверхности с использованием этого алгоритма.
8. Кодирование и хранение изображений в компьютерной графике.
Ра́стровое изображе́ние — представляет собой сетку пикселей или цветных точек (обычно прямоугольную) на компьютерном мониторе, бумаге и других отображающих устройствах и материалах (растр).
Важными характеристиками изображения являются:
· количество пикселей — размер. Может указываться отдельно количество пикселей по ширине и высоте (1024×768, 640×480, …) или же, редко, общее количество пикселей (часто измеряется в мегапикселях);
·
количество
используемых цветов или глубина цвета (эти характеристики имеют следующую
зависимость: , где
— количество
цветов, а
— глубина
цвета);
· цветовое пространство (цветовая модель) RGB, CMYK, XYZ, YCbCr и др.
· разрешение — справочная величина, говорящая о рекомендуемом размере пикселя изображения.
Какие характеристики существуют у растрового изображения? Выделяют две основных: разрешение, и цветовая палитра. Мы говорили о них в предыдущих главах, но здесь обсудим их подробнее.
Давайте рассмотрим что такое экранные пиксели и пиксели изображения, их часто можно спутать друг с другом. Стандартный 15-дюймовый монитор имеет 800 экранных пикселей в длину и 600 в высоту. Эти экранные пиксели настолько маленькие, что их невозможно разглядеть. Каждый из них занимает площадь в 1\72 квадратного дюйма.
Разрешение растровой карты измеряется в точках на дюйм (dpi), это означает что в одном дюйме изображения, например при разрешении в 72 dpi, содержится 72 единичных элемента(пикселя, точек). Как можно по другому представить экранное разрешение? Например, размер экрана вашего монитора 800\600, это значит, что каждый экранный пиксель, занимает всего лишь 1\72 квадратного дюйма (один дюйм равен 2,54 сантиметра).
Для того чтобы понять разницу между экранными пикселями и пикселями изображения посмотрите на рисунки ниже, это одно и то же изображение, с разным увеличением. На первом рисунке каждому пикселю рисунка соответствует один пиксель, отображаемый монитором. На втором, каждому пикселю исходного изображения уже соответствует 16 пикселей в длину и 16 пикселей в высоту, всего 256 экранных пикселя.
Размер файла изображения напрямую зависит от количества пикселей в изображении. Поэтому чем больше размер, и разрешение рисунка, тем больше будет размер файла. Например, использование разрешения в 300 dpi для интернет неоправданно, потому что экранное разрешение всего 72 dpi. Вы не заметите разницы на экране, но размер файл значительно увеличится.
Второй основной характеристикой растрового изображения является цветовая палитра. Мы уже рассматривали ее в предыдущих главах, здесь мы лишь структурируем информацию. Итак, в растровой графике используются 5 видов палитр: bitmap, Grayscale, 8-битный, 16-битный и 24-битный цвета. Они выстроены в порядке увеличения количества цветов. То есть если мы один и тот же рисунок будем сохранять с разной цветовой палитрой от битмапа до 24-битного, размер файла будет возрастать.
Формат файла — способ сохранения электронных частей, из которых состоит компьютерный файл. Разные форматы организуют сохранение файлов по-разному. Рассматривать все существующие форматы растровой графики я не буду (да и не смог бы), рассмотрим лишь наиболее распространенные и популярные.
BMP
(Bit Map — битова карат). В этом формате первоначально использовалось
простейшее кодирование — по пикселам (самое неэкономное), которые обходились
последовательно по строкам, начиная с нижнего левого угла графического
изображения. Файлы этого формата входили в первые версии Windows.
В этом формате использовалось только 256 цветов, т.е. пиксел представляется
только одни байтом. В дальнейшем формат стал использоваться и для сохранения
полноцветных изображений. Формат BMP — один за стандартных
форматов растровой графики.
TIFF
(Taged Image File Format) — стандартный формат в топографической
графике и издательских системах. Файлы в формате TIFF обеспечивают лучшее
качество печати. Из-за большого размера, данный формат не применяется при
создании Web-сайтов и публикации в Интернет.
Формат TIFF относится к числу наиболее универсальных и распространенных форматов растровой графики. Он создавался в качестве межплатформенного универсального формата для цветных изображений. Работа с ним поддерживается почти всеми программами для работы с точечной графикой. Может хранить графику в монохромном виде, в RGB и CMYK цветовых представлениях.
Формат включает в себя внутреннюю компрессию. Он имеет открытую архитектуру — предусмотрена возможность объявления в заголовке сведений о типе изображения, т.е. его версии могут быть использованы в дальнейшем для представления новых разработок. В формате сохраняется и сопроводительная информация передаваемых изображений (подписи и пр.). Изображения в формате TIFF хранятся в файлах с расширением .tif.
Формат
GIF (Graphic Interchamge Format) — формат обмена графическими данными,
который служит для записи и хранения растровых графических изображений. Этот
формат отличается от других форматов растровой графики тем, что он долгое время
поддерживается в Интернете. Использует индексированные цвета (ограниченный
набор цветов). Это один из самых распространенных форматов картинок,
распространяемых в Интернет и применяемых при создании Web-сайтов.
Изображения в GIF формате хранятся в файлах с расширением .gif. К преимуществам GIF изображения относится то, что вид изображения не зависит от браузера и платформы. Лучше всего отображаются рисунки, чертежи и изображения с небольшим количеством однородных цветов, прозрачные изображения и анимационные последовательности (эта очень известная особенность данного формата графики). В GIF изображениях используется сжатие без потери информации.
Формат
JPEG (Joint Photographic Expert Group) — предназначен для хранения
изображений со сжатием. Применяющийся в нем метод сжатия изображений разработан
группой экспертов в области фотографии. Сразу становится ясной расшифровка
аббревиатуры JPEG — объединенная группа экспертов по обработке
фотоснимков.
JPEG — один из самых мощных алгоритмов сжатия изображения. Практически он является стандартом де-факто для хранения полноцветных изображений. Формат JPEG был создан для того, чтобы избавиться от ограничений которые налагались на изображения, созданные в GIF формате.
Алгоритм оперирует областями 8 ? 8, на которых яркость и цвет меняется сравнительно плавно. Сжатие в JPEG осуществляется за счет плавного изменения цветов в изображении. Обеспечивается высокий коэффициент сжатия, значение которого достигает 100 и зависит от допустимого уровня потерь изобразительной информации.
Формат широко используется в документах HTML и для передачи данных по сети. Сохраняет параметры графики в цветовом представлении RGB (как правило). Изображения в JPEG формате хранятся в файлах с расширением .jpg.
Программы, работающие с JPEG, используют алгоритмы сжатия с потерей информации, они исключают из изображения те данные, которые считаются несущественными. Перед применением алгоритма сжатия изображения делится на прямоугольные области. При сжатии есть риск получить нечеткое, размытое изображение с искажением деталей.
Данный
формат был разработан для замены JPEG. При сохранении
изображения с одинаковым уровнем сжатия изображения, сохраненные в формате JPEG
2000, получаются более четкими и занимают меньше места на диске. К
тому же, в этом формате решена проблема с появлением дефектов JPEG,
которые появлились при сохранении с большим коэффициетом сжатия (решетка из
блоков 8 ? 8 пикселей).
Поддержка формата реализована не во всех браузерах, что сильно мешает распространению этого формата.
PNG
(portable network graphics) — формат хранения растровой графики,
использующий сжатие без потерь. PNG — это свободный формат (в
отличии от GIF), поэтому получил широкое распространение.
Это очень мощный и широко применяемый формат в Интернете и других областях компьютерной графики.
Формат WMF (Windows Metafile Format) — используется для обмена графическими данными между приложениями ОС Microsoft Windows. В WMF файлах могут хранится как векторные, так и растровые изображения. Изображения в WMF формате хранятся в файлах с расширением .wmf.
Формат PSD (PhotoShop Document) — внутренний формат для пакета Adobe Photoshop. Позволяет сохранять слои в изображении и поддерживает все типы графики. Изображения в PSD формате хранятся в файлах с расширением .psd.
Формат CDR - внутренний формат для пакета программ фирмы CorelDRAW. Изображения и текст подготовленные в программе CorelDRAW в CDR формате, хранятся в файлах с расширением .cdr.
Иногда характеристики растрового изображения записывают в такой форме: 1024x768x24. Это означает, что ширина изображения равна 1024 пикселям, высота — 768 и глубина цвета равна 24. 1024x768 — рабочее разрешение для 15 — 17 дюймовых мониторов. Несложно догадаться, что размер несжатого изображения с такими параметрами будет равен 1024*768*24 = 18874368 байт. Это более 18 мегабайт — слишком много для одной картинки, особенно если требуется хранить несколько тысяч таких картинок — это не так уж много по компьютерным меркам. Вот почему компьютерную графику используют почти всегда в сжатом виде.
RLE (Run Length Encoding) — метод сжатия, заключающийся в поиске последовательностей одинаковых пикселей в сточках растрового изображения («красный, красный, ..., красный» записывается как «N красных»).
LZW (Lempel—Ziv—Welch) — более сложный метод, ищет повторяющиеся фразы — одинаковые последовательности пикселей разного цвета. Каждой фразе ставится в соответствие некоторый код, при расшифровке файла код замещается исходной фразой.
При сжатии файлов формата JPEG (с потерей качества) изображение разбивается на участки 8x8 пикселей, и в каждом участке их значение усредняется. Усреднённое значение располагается в левом верхнем углу блока, остальное место занимается меньшими по яркости пикселями. Затем большинство пикселей обнуляются. При расшифровке нулевые пиксели получают одинаковый цвет. Затем к изображению применяется алгоритм Хаффмана.
Алгоритм Хаффмана основан на теории вероятности. Сначала элементы изображения (пиксели) сортируются по частоте встречаемости. Затем из них строится кодовое дерево Хаффмана. Каждому элементу сопоставляется кодовое слово. При стремлении размера изображения к бесконечности достигается максимальность сжатия. Этот алгоритм также используется в архиваторах.
Сжатие применяется и для векторной графики, но здесь уже нет таких простых закономерностей, так как форматы векторных файлов достаточно сильно различаются по содержанию.
Ве́кторная гра́фика — способ представления объектов и изображений в компьютерной графике, основанный на использовании элементарных геометрических объектов, таких как точки, линии, сплайны и многоугольники. Объекты векторной графики являются графическими изображениями математических функций. Термин используется в противоположность к растровой графике, которая представляет изображение как матрицу фиксированного размера, состоящую из точек (пикселей) со своими геометрическими параметрами.
· Размер, занимаемый описательной частью, не зависит от реальной величины объекта, что позволяет, используя минимальное количество информации, описать сколько угодно большой объект файлом минимального размера.
· В связи с тем, что информация об объекте хранится в описательной форме, можно бесконечно увеличить графический примитив, например, дугу окружности, и она останется гладкой. С другой стороны, если кривая представлена в виде ломаной линии, увеличение покажет, что она на самом деле не кривая.
· Параметры объектов хранятся и могут быть легко изменены. Также это означает что перемещение, масштабирование, вращение, заполнение и т. д. не ухудшает качества рисунка. Более того, обычно указывают размеры в аппаратно-независимых единицах (англ. device-independent unit), которые ведут к наилучшей возможной растеризации на растровых устройствах.
· При увеличении или уменьшении объектов толщина линий может быть задана постоянной величиной, независимо от реального контура.
· Не каждый объект может быть легко изображен в векторном виде — для подобного оригинальному изображению может потребоваться очень большое количество объектов и их сложности, что негативно влияет на количество памяти, занимаемой изображением, и на время для его отображения (отрисовки).
· Перевод векторной графики в растр достаточно прост. Но обратного пути, как правило, нет — трассировка растра, при том что требует значительных вычислительных мощностей и времени, не всегда обеспечивает высокое качество векторного рисунка.
· Преимущество векторной картинки — масштабируемость — пропадает, когда начинаем иметь дело с особо малыми разрешениями графики (например, иконки 32×32 или 16×16). Чтобы не было «грязи», картинку под такие разрешения приходится подгонять вручную.
Функциональность
программного обеспечения - способность программного продукта выполнять набор
функций:
- определенных в его внешнем описании; и
- удовлетворяющих заданным или подразумеваемым потребностям пользователей.
9. Цвет в компьютерной графике. Цветовые измерения и цветовые модели.
Зако́н Гра́ссмана относится к двум различным законам Германа Грассмана:
· Закон Грассмана в оптике — эмпирическое наблюдение над цветом.
· Закон Грассмана в лингвистике описывает диссимиляционные фонологические процессы в древнегреческом языке и санскрите.
В середине прошлого века немецкий ученый Герман Грассман сформулировал три закона аддитивного синтеза цвета.
Любой цвет однозначно выражается тремя, если они линейно независимы. Линейная независимость заключается в том, что ни один из этих трех цветов нельзя получить сложением двух остальных.
При непрерывном изменении излучения цвет смеси также меняется непрерывно. Не существует такого цвета, к которому нельзя было бы подобрать бесконечно близкий.
Цвет смеси излучений зависит только от их цвета, а не от спектрального состава. Следствием является аддитивность цветовых уравнений: если цвета смешиваемых излучений описаны цветовыми уравнениями, то цвет смеси выражается суммой цветовых уравнений. Таким образом, если
Ц1 = R1R + G1G +
B1B,
Ц1 = R2R + G2G + B2B,
....................................
Цn = RnR + GnG + BnB,
то
Цсумм = (R1 + R2 + ... + Rn)R + (G1 + G2 + ... + Gn)G + (B1 + B2 + ... + Bn)B
Этот закон имеет первостепенное значение для теории цвета.
Основные характеристики цвета |
В начале прошлого столетия английским врачом и естествоиспытателем Юнгом была высказана гипотеза, а в дальнейшем развита физиологом Гельмгольцем, согласно которой число различных элементов, воспринимающих цвет, равно 3. Одни реагируют на красный, другие – на зеленый, а третьи – на синий цвета. При равном раздражении этих элементов мы воспринимаем белый цвет, при неравном – разные хроматические цвета и их оттенки. Трехцветная теория зрения (теория Юнга – Гельмгольца) в настоящее время получила наибольшее признание. Современная наука определяет цвет как ощущение, возникающее в органе зрения человека при воздействии на него света. В спектре белого солнечного света различают семь основных цветов (как было сказано выше). Все цвета подразделяются на ахроматические и хроматические: 1) ахроматические – белый, черный и все серые; 2) хроматические – все остальные. Для определения цвета исполняется система психофизических характеристик. Это: 1. Цветовой тон – качество цвета, когда этот цвет можно приравнять к одному из спектральных цветов. Другими словами – это само название цвета. 2. Светлота (степень отличия цвета от белого) – количественные различия внутри одного и того же цвета. Это наличие в цвете того или иного количества белого или черного. 3. Относительная яркость – отношение величины потока, отраженного от данной поверхности, к величине потока, падающего на нее. 4. Насыщенность (степень отличия цвета от равного по светлоте серого) – степень отличия хроматического цвета от равного по светлоте ахроматического. Насыщенность обычно заменяется чистотой. Насыщенность хроматической краски, в которую добавлены белила, значительно падает, при добавлении черного цвета насыщенность изменяется, но не так резко. При равной насыщенности цветов активнее воздействуют на глаз более светлые цвета, а при равной светлоте – более насыщенные. 5. Чистота цвета – доля чистого спектрального в общей яркости данного цвета. Самые чистые цвета – спектральные. Чистота ахроматических цветов равна 0, так же как и насыщенность. Сочетание цветового тона и насыщенности называют цветностью. Ахроматические цвета ее не имеют. Естественной шкалой цветовых тонов является спектр солнечного света, в котором цвета располагаются в определенной последовательности. При внимательном рассмотрении спектра можно заметить в его синем конце некоторую красноватость, а в красном, наоборот, синеватость. Смешав крайние спектральные цвета, получаем ряд пурпурных переходных тонов. Если добавить эти пурпурные тона к спектру и замкнуть его в кольцо, получится естественный цветовой круг с той же последовательностью цветовых тонов, что и в спектре. С физической точки зрения, все цвета равноправны, и ни один цвет не может быть выделен как обладающий каким-либо преимуществом. Можно лишь разделить их на две большие группы: 1) теплые цвета, как бы приближающиеся по восприятию к цвету теплых тел – огня, солнца, света; 2) холодные тона, близкие к цвету льда, воды, неба, сумерек. Взаимосвязи основных характеристик цвета могут быть представлены в виде пространственного цветового конуса (или, если говорить точнее, двух конусов) (рис. 13). Рис.
13. Пространственный цветовой конус. Осью конусов является ахроматическая ось с цветами ахроматического ряда – от белого в верхней точке, до черного – в нижней. На поверхности конусов по максимальному поперечному сечению расположены цвета максимальной насыщенности (на рисунке показаны лишь четыре главных цвета – желтый, красный, синий и зеленый). Все цвета одного цветового тона, находящиеся в плоскости соответствующего треугольника, образуют теневой ряд соответствующего цвета; на рисунке штриховкой показан теневой ряд красного цвета. Ясно, что цвета теневого ряда характеризуются одним цветовым тоном и отличаются один от другого только светлотой и насыщенностью. В частности, в теневом ряду красного цвета все цвета, расположенные по образующим конусов, по мере приближения к вершинам постепенно или осветляются, превращаясь, в конечном счете, в белый цвет, или затемняются, превращаясь в черный. Цвета в плоскости максимального поперечного сечения (основание конусов) с приближением к ахроматической оси, разбеливаясь, теряют свою насыщенность. Следует заметить, что при затемнении хроматического цвета насыщенность убывает в значительно меньшей степени, чем при его осветлении. Внутри плоскости треугольника, представляющего собой теневой ряд красного цвета, находятся все прочие цвета красного цветового тона с различными добавлениями к нему ахроматических смесей. Два рассмотренных одинаковых конуса, соединенных основаниями, – это так называемое замкнутое цветовое тело, которое было предложено Оствальдом. Оствальд составил также альбом, содержащий таблицы 24 спектральных цветов, включая и пурпурные. Для каждого цвета он дал восемь ступеней светлоты и насыщенности. Любой цветовой тон с его вариациями по светлоте и насыщенности располагается в составленном из 36 квадратов соответствующем равностороннем треугольнике. На рис. 14 показан такой треугольник для желтого цвета. В его вершинах находятся хроматический, белый и черный цвета, а по сторонам – ступени от хроматического цвета до белого, от белого до черного и от черного до хроматического. Все 24 однотоновых треугольника в совокупности представляют собой общую картину хроматических и ахроматических цветов, их различных светлот и насыщенностей. Рис. 14. Однотоновой равносторонний треугольник Если на белый экран направить два цветовых луча, например красный и желтый, на экране возникает промежуточный цвет – оранжевый. Такой же цвет мы получим (на некотором удалении), если одну или несколько форм рисунка на поверхности бумаги заполнить красными и желтыми точками, кружками или даже штрихами. Важно подчеркнуть, что чем меньше расстояния между точками, кружками, штрихами, чем меньше размеры этих элементов, тем явственнее эффект пространственного смешения. И еще: при оптическом смешении промежуточный цвет воспринимается более сложным, богатым ( по сравнению с промежуточным цветом при механическом смешении красок). Именно на оптическом смешении цветов основано восприятие картин, относящихся к течению пуантилизма (выполняются мелкими мазками правильной формы), многочисленных изделий декоративно-прикладного искусства (тканей, ковровых изделий, народных вышивок и пр.). Цвета, при оптическом смешении которых возникает ахроматический цвет, называются взаимно-дополнительными. При оптическом смешении двух цветов разной длины волны светлота получаемого цвета равна средней светлоте. Существует смешение цветов другого вида – вычитательное, или субстрактивное; оно дает совсем другие, по сравнению с оптическим смешением, практические результаты. Примером вычитательного смешения цветов может служить смешение, получаемое при наложении двух стекол (предположим, зеленого и синего) одно на другое. Каждое из стекол будет часть лучей поглощать, а часть пропускать. Через оба стекла пройдут только те лучи, которые пропускает то и другое стекло одновременно. Подобное же явление происходит при наложении красок одна на другую, при их механическом смешении. Всякая смесь красок представляет собой механическую смесь, в которой перемешаны частицы различных красок. В данном случае мы имеем в основном вычитательное смешение, хотя не обходится и без некоторой доли оптического смешения (в смеси ведь могут оказаться отдельные несмешивающиеся зерна красящих веществ). Восприятие мира цветов, взаимодействия их в сочетаниях всегда основаны если не на оптических смешениях, то на оптических противопоставлениях. Рассмотрим теперь, что такое контраст цветов. Если применительно к композиции понятие «контраст» означает всякое противопоставление двух свойств, то в цветоведении контраст – это кажущееся изменение цвета по светлоте (светлотный контраст) или цветовому тону (хроматический контраст) в зависимости от окружения. Вглядимся пристально в цветную фигуру, а затем переведем взгляд на белую поверхность – на последней возникает такое же изображение, но противоположного цвета. Если же долго смотреть на какой-то цвет, то начинает казаться, что последний постепенно темнеет и ахроматизируется. Эти явления связаны с адаптацией человеческого зрения: когда человек попадает в другие условия освещения, когда после одного цвета он смотрит на другой, ощущение, вызываемое вторым цветом, зависит от того, каким был первый цвет, поэтому второй цвет может казаться светлее, если первый цвет был темным, и наоборот. В данном случае это последовательный контраст цветов. Он имеет большое значение при работе художника с цветом: необходимо периодически снимать, если можно так выразиться, утомляемость глаз, чтобы видеть истинные, а не искаженные отношения цветов. Другое интересное явление, связанное с контрастом, возникает, когда какой-то цвет находится в окружении других цветов (ахроматических или хроматических). Если фон светлее хроматического цвета, последний кажется темнее. Ахроматический цвет, окруженный хроматическим, например зеленым, розовеет. А желтый цвет на фоне зеленого приобретает оттенок оранжевого. Изменение светлоты или цветового тона предмета в зависимости от окружения называется одновременным контрастом цветов. Одновременный контраст цветов отличается от последовательного тем, что два цвета рассматриваются не один после другого, а одновременно, когда один цвет окружает другой или примыкает к нему. Одновременный хроматический контраст цветов усиливается при увеличении площади цвета, который является фоном, и уменьшении площади цвета, на который этот контраст воздействует, а также при сближении светлот фона и цветной фигуры. Заметнее явление контраста и на границе сопоставляемых цветов, а также при обводке черным контуром границ контрастируемых цветов. Наконец, контраст проявляется активнее при условии большего периметра цветной фигуры, подвергаемой воздействию контраста; площадь фигуры в этом случае может оставаться неизменной. Явление одновременного цветового контраста широко используется в художественной практике, когда нужно усилить насыщенность цвета, особенно если он имеет мутный оттенок, или, наоборот, ослабить насыщенность цвета, сделать его более тусклым. Вопрос эмоционального воздействия цвета на человека достаточно сложен. В течение тысячелетий в психике и сознании человека закреплялись определенные сложноопосредованные ассоциации связи различных цветов с реальными жизненными явлениями и процессами. Не случайно вопросами психологии цвета занимались такие видные теоретики искусства и художники, как Гете, Леонардо да Винчи, Делакруа, Кандинский, Алпатов, Грабарь и др. Разные цвета являлись и являются символами жизни и смерти, ими выражают радость и горе. Следует, однако, отметить, что у разных народов один и тот же цвет нес неодинаковую эмоциональную нагрузку. Сегодня любая абсолютизация и канонизация цвета, даже имевшая достаточные основания в прошлые века, выглядит достаточно спорной и сомнительной. Многие авторы, отмечая совершенно правильное психологическое воздействие цвета на человека, тем не менее слишком категоричны в своих определениях. Можно только признать, что кроме основных характеристик цвета (цветового тона, светлоты и насыщенности) существуют и другие, в основе которых лежит его эмоциональное, психологическое восприятие. Принципиально разные ощущения вызывают у человека, например, теплые и холодные цвета, легкие и тяжелые и т.д. Конечно, мы воспринимаем различие теплых и холодных цветов потому, что привыкли цвет огня рассматривать как теплый, а зелено-синий цвет воды или льда связывать с ощущением холода. С другой стороны, оранжево-красный цвет даже в небольших количествах выделяется гораздо сильнее, чем синий или сине-зеленый. Мы его воспринимаем как активный, а синий и зеленый – как цвета пассивные. Цвет оранжевый или охры как бы приближает к нам окрашенные предметы, в то время как легкие сине-зеленые цвета как бы удаляют их от нас. В значительной степени влияние цвета на человека зависит от того, к какому объекту этот цвет относится, что изображает, в каком окружении находится. И тем не менее, например, одни цвета можно все же смело характеризовать как легкие, а другие – как тяжелые. К первым, более прозрачным и воздушным, обычно относят светлые, менее фактурные, холодные, напоминающие цвет неба, дали, воздушного пространства. Ко вторым следует отнести цвета темные, малонасыщенные, с активной фактурой, плотные (коричневые, черный, темно-серые и др.), тяжелые цвета как бы напоминают цвет земли. Любопытно еще одно обстоятельство: понятие теплоты цвета относительно. Так, карминно-красный цвет по отношению к оранжевому выглядит холодным, но воспринимается теплым по отношению к синему. Следует отметить и то обстоятельство, что противопоставление теплых и холодных цветов является основой взаимодействия цветов в искусстве. Даже легкое контрастирование цветов в указанном плане поднимает и активизирует эти цвета, делает их звучание богаче и ярче. Не менее сложным представляется вопрос гармонии цветов. Он с давних пор интересовал и художников, и многих ученых. Что же представляет собой гармония хроматических цветов? Какое содержание вкладывается в это понятие? Можно говорить о гармонии как о закономерном сочетании цветов. Правда, тут же надо сделать оговорку: всякая гармония означает определенную закономерность, но не всякая закономерность может вести к гармонии. В художественной практике при оценке сочетаемых цветов самое важное – их эмоциональная выразительность, способная вызвать чувственные переживания. Нельзя анализировать гармонические сочетания изолированно от эстетических вкусов и взглядов, сложившихся в ту или иную историческую эпоху. Именно от эстетических вкусов, взглядов той или иной эпохи зависит эстетический критерий оценки гармонических сочетаний. Во все времена эстетическая оценка цветовых отношений, в первую очередь, определялась отношениями цветовых тонов. Кроме того, в произведениях искусства большую роль играют сочетания цветовых тонов по светлоте. По-настоящему оценить сочетания цветовых тонов можно только с учетом их светлотных отношений. Поэтому-то любой цвет нельзя рассматривать изолированно от его насыщенности и особенно светлоты. Не случайно Коровин, говоря о значении живописи, на первое место ставил светлотные отношения (важно вначале установить, что светлее и темнее, и уже потом, что какого цвета). Действительно, один и тот же цвет в разном, если можно так выразиться, светлотном окружении производит иногда приятное, а иногда неприятное впечатление. Цвета, не сочетающиеся между собой, можно сделать гармоничными, изменив их фактуру. Часто цвета, недостаточно согласованные на плоскости, совсем по-другому начинают взаимодействовать в пространственных формах. Наконец, два цвета при равных их количествах нередко образуют неубедительное сочетание, а при изменении количества одного из цветов прекрасно «уживаются» один с другим. Из сказанного следует, что гармонию цветов можно и должно рассматривать как гармонию цветовых отношений, как совокупность цветовых комбинаций с учетом всех основных характеристик цветов – светлоты, насыщенности, цветового тона, а также формы и размеров занимаемых этими цветами площадей. Эстетически оценить указанную гармонию каким-либо иным способом, кроме визуального, не представляется возможным. Другими словами, главным эстетическим критерием гармонических сочетаний цветов является визуальная оценка. Гармонические сочетания цветов не надо рассматривать как точный закон, это реализация основных направлений художественного творчества, это возможность получения разнообразных, различных по эмоциональному звучанию сочетаний цветов. Знать закономерности построения цветовых гармоний необходимо, но пользоваться ими следует свободно, развивая творческую индивидуальность, чувство нового и современного. |
Цветовая модель — термин, обозначающий абстрактную модель описания представления цветов в виде кортежей чисел, обычно из трёх или четырёх значений, называемых цветовыми компонентами или цветовыми координатами. Вместе с методом интерпретации этих данных (например, определение условий воспроизведения и/или просмотра — то есть задание способа реализации), множество цветов цветовой модели определяет цветовое пространство.
|
ЦВЕТОВЫЕ ИЗМЕРЕНИЯ — методы измерения и количеств. выражения цвета.
Цветова́я температу́ра (спектрофотометрическая или колориметрическая температура; обозначается Тс) — характеристика хода интенсивности излучения источника света как функции длины волны в оптическом диапазоне. Согласно формуле Планка цветовая температура определяется как температура абсолютно чёрного тела, при которой оно испускает излучение того же цветового тона , что и рассматриваемое излучение. Характеризует относительный вклад излучения данного цвета в излучение источника, видимый цвет источника. Применяется в колориметрии, астрофизике (при изучении распределения энергии в спектрах звёзд). Измеряется в кельвинах и миредах.
В системах цифрового представления цвета, управление цветом — это контролируемое преобразование между разными моделями представления цвета различных устройств, таких как сканеры, цифровые видеокамеры, мониторы, Экраны телевизоров, принтеры и т. д.
Основная цель управления цветом, обеспечить хорошее соответствие цветопередачи у различных устройств. Например, видео, должно давать одинаковые цвета на компьютере мониторе, на плазменном экране и на единичном кадре, распечатанном на принтере. Управление цветом позволяет добиться одинаковых видимых результатов на всех этих устройствах, при условии, что они одинаковы в возможностях передачи заданной интенсивности цвета.
Частично эта технология включена в операционную систему, вспомогательные библиотеки, приложения и устройства. Для обеспечения кроссплатформенности, используются ICC- совместимые системы управления цветом. Международный Консорциум по Цвету (International Color Consortium, ICC) — это индустриальный консорциум который создал открытый стандарт Color Matching Module(CMM)(модуль цветового соответствия), действующий на уровне операционной системы, а также цветовые профили ICC для устройств и рабочих пространств(working spaces) (цветовые пространства, доступные для работы пользователей), помимо прочего существуют профили, встраиваемые в устройства. Всё это обеспечивает полноценный процесс преобразования цвета от источника к приемнику.
Существуют так же другие решения, подходящие для управления цветом, помимо использования ICC-профилей. Это отчасти связано с историей вопроса и частично из-за некоторых нужд, которые ICC стандарт обеспечить не в состоянии. Фильмы и индустрия телевещания используют множество схожих концепций, но они гораздо чаще ориентируются на узкие решения. Кино-индустрия, например, часто использует 3D LUT (таблица поиска) для представления полного цветового преобразования. На потребительском уровне, управление цветом в настоящее время применяется чаще к статичным изображениям, чем к видео, поскольку управление цветом на уровне видео, всё ещё в зачаточном состоянии.[1]
Алгоритмы обработки, хранения, передачи данных мультимедиа.
1.Понятие мультимедиа. Технология в области мультимедиа
Мультимедиа (multimedia, M-media; от лат. multum — много и media, medium — средоточие, средства) — компьютерная технология, обеспечивающие возможность создания, хранения и воспроизведения разнородной информации, включая текст, звук и графику (в том числе движущееся изображение и анимацию). Характеристикой мультимедийных систем является качество воспроизведения всех составляющих данных, а также возможность их взаимосвязанного или взаимодополняющего использования. Например, сочетание видеоряда с текстом и звуковым сопровождением; звуковых фрагментов музыкального произведения с текстовыми данными об исполняющих его музыкантах и инструментах; изображения художественного произведения с музыкальным фоном и текстом. Составными частями минимального комплекта системы мультимедиа помимо ПК являются дисководы CD-ROM или DVD, звуковая карта и стереофоническая система. Технология мультимедиа нашла применение в разработке Web-страниц и Web-приложений.
Аппаратные средства:
Все оборудование, отвечающее за звук, объединяется в звуковые кар-
ты, а за видео – в видеокарты.
Аппаратные средства мультимедиа:
− Средства звукозаписи (звуковые платы, микрофоны);
− Средства звуковоспроизведения (усилитель, колонки, акустические систе-
мы, наушники и гарнитуры);
− Манипуляторы (компьютерные мыши, джойстики, миди-клавиатуры);
− Средства «виртуальной реальности» (перчатки, очки, шлемы виртуальной
реальности, используемые в играх);
− Носители информации (CD, DVD и HDD);
− Средства передачи (мини видеокамеры, цифровые фотоаппараты);
− Средства записи (приводы CD / DVD-ROM , CDRW / DVD+RW, TV- и FM-
тюнеры);
− Средства обработки изображения (платы видеомонтажа, клавиатуры, гра-
фические акселераторы).
− Компьютер, телевизор, средства для получения и удобного восприятия ин-
формации и др.
Программные средства мультимедиа технологии
Программные средства мультимедиа складываются из трех компонентов:
1. Системные программные средства.
2. Инструментальные программные средства.3. Прикладные программные средства.
Системные программные средства
Системные программные средства – это набор программ, входящих в
состав операционной системы компьютера и осуществляющих управление
устройствами мультимедиа, причем это управление на двух уровнях – фи-
зическое управление вводом-выводом информации на низком уровне с
помощью машинных команд и управление пользователем характеристи-
ками устройств с помощью графического интерфейса, изображающего
пульт управления устройством, например регулировки громкости звука,
тембра, стереобаланса и т. д. Как правило, программы физического управ-
ления устройствами называют драйверами устройств.
Инструментальные программные средства
Инструментальные программные средства – программы позволяющие
модифицировать мультимедийные файлы и создавать мультимедийные
приложения.
Инструментальные программные средства – это пакеты программ для
создания мультимедийных приложений:
− редакторы неподвижных графических изображений,
− средства создания анимированных GIF-файлов,
− средства аудио- и видеомонтажа,
− средства создания презентаций,
− средства распознавания текстов, введенных со сканера,
− средства создания обучающих программ,
− системы распознавания голоса и преобразования звуковых файлов в тек-
стовые,
− системы создания приложений виртуальной реальности и другие.
Инструментальные средства существенно расширяют возможности
управления мультимедийными устройствами по сравнению с теми, кото-
рые предоставляют системные средства, но это всегда платные продукты
и некоторые из них стоят очень дорого, например профессиональные сис-
темы видеомонтажа.
Прикладные программные средства
Прикладные программные средства – это готовые и, как правило,
продаваемые программные системы на CD или DVD дисках – фильмы,
учебники, энциклопедии, игры, книги, виртуальные музеи, путеводители,
рекламные материалы и т. д.__
Комплекс аппаратных и программных средств мультимедиа позволяет пользователю работать в интерактивном режиме с разнородными данными (графикой, текстом, звуком, видео), организованными в виде единой информационной среды. Мультимедиа находит различное применение, включая образование, медицину, производство, науку, искусство и развлечения. В образовании, мультимедиа используется в учебных курсах, базирующихся на информационных технологиях (медиаобразование).
В
производстве, особенно в машиностроении, мультимедиа используется на стадии
проектирования (автоматизированное проектирование). В медицине мультимедиа
применяется в процессе обучения хирургов (виртуальная хирургия). В науке
мультимедиа используется для моделирования различных процессов. В искусстве
примерами мультимедиа являются специальные эффекты в кино, компьютерная
мультипликация, трехмерная графика. В области развлечений примером мультимедиа
являются компьютерные игры. Эти мультимедийные приложения позволяют
пользователям участвовать в их работе. Такую форму мультимедиа называют
диалоговой мультимедиа. Различные компоненты мультимедиа могут объединяться в
общий комплекс, называемый виртуальным миром. Эта методика используется в
некоторых играх, а также тренажерах полета для обучения пилотов. Разновидности
мультимедиа:
Гипермедиа (hypermedia, H-media) — расширение понятия гипертекст на
мультимедийные (в том числе аудио, трехмерные графические, анимационные) виды
организации структур записей данных.
Интерактивная мультимедиа (interactive (multi)media) — мультимедийная система,
обеспечивающая возможность произвольного управления видеоизображением и звуком
в режиме диалога.
Live video (реальное/живое видео) — характеристика системы мультимедиа с точки
зрения ее способности работать в реальном времени. Примерами могут служить
разработки IBM: Linkway Live и StoryBoard Live.
Стандарты MPC — группа стандартов на мультимедийные ПК, разработанных Рабочей
группой по мультимедийным ПК (Multimedia PC Working Group), которая является
подразделением Ассоциации издателей ПО (Software Publishers Associations).
Ранее Рабочая группа называлась Советом по маркетингу мультимедийных ПК
(Multimedia PC Marketing Council). Этот Совет принял стандарты MPC-1 и MPC-2,
устанавливающие для разработчиков программного обеспечения состав аппаратных
средств, относящихся к технологии мультимедиа, и требования по их сертификации.
В июне 1995 года вступил в силу стандарт MPC-3, который определил требования к
конфигурации мультимедийных ПК (в частности, для минимального варианта
комплектования): Pentium 75 МГц или его эквивалент, ОЗУ — 8 Мбайт, дисковод
CD-ROM с учетверенной скоростью, 16-разрядная цифровая аудиосистема,
таблично-волновой синтезатор, поддержка MPEG. Определены также требования к их
функциональным характеристикам (в частности, необходимость воспроизведения
полноэкранного видео), а также стандартный тестовый пакет ПО для испытаний
аппаратуры при ее лицензировании.
Основные
технические средства и решения в области мультимедиа:
Мультимедиа-процессор (multimedia processor) — процессор, поддерживающий режимы
мультимедиа. К этому классу процессоров относятся, в частности, разработки,
выполняемые по программе MMX. Предполагается, что мультимедийные процессоры
могут повысить качество воспроизведения динамичной графики и видео при
существенном сокращении схемных элементов ПЭВМ, в том числе микросхем и плат
расширения.
Мультимедийный ПК (MPC, Multimedia Personal Computer) — компьютер,
соответствующий требованиям стандартов MPC; торговая марка сертификата
соответствия требованиям стандартов MPC. По лицензии MPC Marketing Council
торговая марка Multimedia Personal Computer может ставиться на изделия трех
видов: ПЭВМ, устройства для их расширения и пакеты прикладных программ.
Домашний медиасервер (мультимедийный центр, медиа-центр; home media server,
media center) — мультимедийный ПК с возможностями воспроизведения и записи
цифровых изображений, музыки и видео, включая и телевизионные программы, а
также широкополосным доступом к Интернет-ресурсам, каналам обычного и
спутникового телевидения высокой четкости, передачам FM-радиостанций.
AMCA (Apple Media Control Architecture) — архитектура систем управления
носителями информации мультимедийных ПК фирмы Apple; стандарт для систем
мультимедиа, создаваемых на базе ПК Macintosh.
Multimedia control panel (панель управления мультимедиа) — панель, отображаемая
на экране ЭВМ и предназначенная для управления средствами мультимедиа (в том
числе музыкальными инструментами и другими периферийными устройствами), а также
для навигации в мультимедийных приложениях.
Multimedia applications (мультимедийные приложения) — вспомогательные средства,
обеспечивающие реализацию технологии мультимедиа.
MMX (MultiMedia eXtension, расширение мультимедиа) — технология для домашних ПК
на базе процессора Pentium, опубликована в марте 1996 года фирмой Intel,
которая предполагает интегрирование средств поддержки режимов мультимедиа в
архитектуру процессоров Intel.
VSA (Virtual System Architecture, архитектура виртуальной системы) —
мультимедийное средство, разработанная фирмой Cyrix для мультимедийных ПК,
представляет собой программно-аппаратный комплекс, который реализует свои
основные функции (центральный процессор, графический контроллер, схемы
управления шиной PCI математический сопроцессор, кэш-память, подсистемы
обработки видео и звука, графические акселераторы) с использованием
микропрограммных средств в одном модуле (MediaGX) без привлечения дополнительных
микросхем.
Термины
мультимедиа:
Инфотейнмент
(Infotainment, INFOrmation and enterTAINMENT; информирование развлечением) —
прикладное ПО, представляющее данные в развлекательной форме; наибольшее
развитие получило в мультимедийных системах на CD-ROM.
Аналоговый звук (analog sound) — звук, который мы слышим, имеет аналоговую
(непрерывную) форму акустических колебаний. Цифровая запись при воспроизведении
преобразуется в аналоговую форму. В прошлом большинство устройств записи звуков
были аналоговыми.
Цифровая звукозапись (digital audio) — запись, представляющая звуки в виде
последовательности нулей и единиц. При воспроизведении цифро-аналоговый
преобразователь воссоздает исходную форму звуковых волн. Цифровая звукозапись
используется на музыкальных компакт-дисках и в ПК.
Цифро-аналоговый преобразователь (ЦАП; DAC, Digital-to-Analogue Converter) —
электронное устройство, преобразующее сигнал из цифровой формы (двоичного кода)
в аналоговый, то есть непрерывный с соответственно изменяющейся величиной напряжения
и/или частоты. ЦАП используется при выводе данных из ЭВМ и необходимости их
последующего воспроизведения аналоговыми (не цифровыми) внешними устройствами,
например акустическими приставками.
Цифровой преобразователь (аналого-цифровой преобразователь, АЦП; digitizer,
analog-to-digital converter) — электронное устройство, преобразующее аналоговый
сигнал в цифровую форму; используется при вводе данных в ЭВМ (в том числе
результатов звукозаписи и видеоизображений).
RAMDAC — входящий в состав видеокарты цифро-аналоговый преобразователь, который
служит для преобразования результирующего потока данных, формируемого
видеоконтроллером, в уровни интенсивности цвета, подаваемого на монитор.
Поскольку мониторы используют аналоговый видеосигнал (за исключением плоскопанельных
мониторов), возможный диапазон цветности изображения определяется параметрами
RAMDAC, который состоит из трех цифро-аналоговых преобразователей (DAC), по
одному на каждый цветовой канал (красный, синий, зеленый — RGB) и SRAM для
хранения данных о гамма-коррекции.
AV (Audio/Video) — обозначение входа/выхода (звук/видеосигнал) низкочастотного
видеосигнала и его звукового сопровождения.
AVI-файл (Audio-Visual Interleave) — файл, записанный в формате, в котором
аудио- и видеоданные последовательно чередуются, что позволяет хранить на
компакт-диске (CD-ROM) записи движущихся изображений со звуковым
сопровождением.
Broadcast quality — по отношению к системам мультимедиа: высокое качество
изображения и его звукового сопровождения, сопоставимые с качеством
телевизионного изображения и студийной звукозаписи.
Понятие мультимедиа технологии
Сегодня сложилось три различных понимания слова мультимедиа.
1. Первое - это «мультимедиа как идея», т.е. новый подход к хранению информации различного типа.
По мере развития компьютерной техники появлялась возможность обработки все более разнообразной информации: начав с чисел, компьютер освоил работу с текстом; затем в сферу его интересов попали звуки и изображение; сегодня компьютер свободно обращается с озвучиванием и фрагментами видео.
Однако до последнего времени казалось, что текст - это текст, числа - нечто другое, даже оцифрованные звуки и изображения продолжали восприниматься как совершенно разные вещи, работой с ними занимались разные люди в разных специализированных учреждениях.
Сейчас кажется даже странным, что только более чем через 10 лет после начала компьютерной обработки изображения, речи, синтеза музыки возникла идея объединить все это в единое целое, которая получила название «мультимедиа».
2. Второе значение мультимедиа - это оборудование, которое позволяет работать с информацией различной природы. Это мультимедиа-платы, мультимедиа-комплексы, и, наконец, мультимедиа-центры.
3. Третье значение мультимедиа - это «мультимедиа-продукт» - продукт, составленный из данных всевозможных типов, да еще такой, в котором можно сориентироваться: каталог, энциклопедия. Чаще всего такой продукт ассоциируется с CD-ROM и DVD-ROM.
Мультимедиа-продукт может содержать не меньше информации, чем довольно большой музей или библиотека, а поскольку в принципе он доступен любому, значит, он должен быть организован так, чтобы в нем можно было разобраться без специального образования. Для этого создается система меню и ссылок, которая служит путеводителем в море данных. По главному меню можно оценить структуру материала и быстро отыскать нужный раздел, при желании легко можно пропустить неинтересное, получить справку, если вдруг встретилось непонятное слово или углубится в детали. Есть также докторские энциклопедии, в которых можно узнать все болезни, о первой помощи и т.д. Есть анатомические атласы, состоящие из статей, видеофрагментов, поясняющие деятельность отдельных органов, а также в виде толкового словаря. Есть также географические энциклопедии, например «Великие города мира» дает полную информацию о большинстве крупных городов.
Определение
Мультимедиа (multimedia) - это современная компьютерная информационная технология, позволяющая объединить в компьютерной системе текст, звук, видеоизображение, графическое изображение и анимацию (мультипликацию).
Мультимедиа - это сумма технологий, позволяющих компьютеру вводить, обрабатывать, хранить, передавать и отображать (выводить) такие типы данных, как текст, графика, анимация, оцифрованные неподвижные изображения, видео, звук, речь.
Несомненным достоинством и особенностью технологии являются следующие возможности мультимедиа, которые активно используются в представлении информации:
· возможность хранения большого объема самой разной информации на одном носителе (до 20 томов авторского текста, около 2000 и более высококачественных изображений, 30-45 минут видеозаписи, до 7 часов звука);
· возможность увеличения (детализации) на экране изображения или его наиболее интересных фрагментов, иногда в двадцатикратном увеличении (режим "лупа") при сохранении качества изображения. Это особенно важно для презентации произведений искусства и уникальных исторических документов;
· возможность сравнения изображения и обработки его разнообразными программными средствами с научно-исследовательскими или познавательными целями;
· возможность выделения в сопровождающем изображение текстовом или другом визуальном материале «горячих слов (областей)», по которым осуществляется немедленное получение справочной или любой другой пояснительной (в том числе визуальной) информации (технологии гипертекста и гипермедиа);
· возможность осуществления непрерывного музыкального или любого другого аудиосопровождения, соответствующего статичному или динамичному визуальному ряду;
· возможность использования видеофрагментов из фильмов, видеозаписей и т.д., функции "стоп-кадра", покадрового «пролистывания» видеозаписи;
· возможность включения в содержание диска баз данных, методик обработки образов, анимации (к примеру, сопровождение рассказа о композиции картины графической анимационной демонстрацией геометрических построений ее композиции) и т.д.;
· возможность подключения к глобальной сети Internet;
· возможность работы с различными приложениями (текстовыми, графическими и звуковыми редакторами, картографической информацией);
· возможность создания собственных «галерей» (выборок) из представляемой в продукте информации (режим «карман» или «мои пометки»);
· возможность «запоминания пройденного пути» и создания «закладок» на заинтересовавшей экранной «странице»;
· возможность автоматического просмотра всего содержания продукта («слайд-шоу») или создания анимированного и озвученного «путеводителя-гида» по продукту («говорящей и показывающей инструкции пользователя»); включение в состав продукта игровых компонентов с информационными составляющими;
· возможность «свободной» навигации по информации и выхода в основное меню (укрупненное содержание), на полное оглавление или вовсе из программы в любой точке продукта.
Классификация и области применения мультимедиа приложений
Мультимедиа приложения можно разделить по способу представления информации на линейные и нелинейные (интерактивные).
Интерактивный способ взаимодействия человека и компьютера наиболее полным образом представлен в категориях компьютерных игр. Нелинейный способ представления мультимедийных данных иногда называется «гипермедиа».
В качестве примера линейного и нелинейного способа представления информации, можно рассматривать такую ситуацию, как проведение презентации. Если презентация была записана на пленку и показывается аудитории, то этот способ донесения информации линейный, просматривающие данную презентацию не имеют возможности влиять на докладчика. В случае же живой презентации, аудитория имеет возможность задавать докладчику вопросы и взаимодействовать с ним прочим образом, что позволяет докладчику отходить от темы презентации, например, поясняя некоторые термины или более подробно освещая спорные части доклада. Таким образом, живая презентация может быть представлена, как нелинейный (интерактивный) способ подачи информации.
Области применения мультимедиа:
1. Деловая сфера:
· редакционная деятельность (ММ-издательства);
· информационная и рекламная продукция (презентации, брошюры, рекламные листки);
· интерактивные презентации;
· интерактивное обучение;
· Internet.
2. Образование:
Идея применения компьютера в обучении возникла довольно давно, но ее воплощение стало возможным лишь с появлением ПК, оснащенных мультимедиа устройствами.
Компьютеризация отечественной системы образования - тема обширная, многообразная и актуальная. Министерство образования и Государственный комитет по высшему образованию в России в последнее время уделяет все больше внимание обучающим программам. Республиканский центр интерактивных средств обучения разработал ряд мультимедиа учебников по естественным, гуманитарным и техническим циклам.
3. Развлечения: игры, фильмы, музыка, виртуальная реальность и т.д.
Мультимедиа продукты учебного назначения
1. Мультимедийные продукты, разрабатываемые преподавателями в соответствии с целями и задачами учебных курсов и дисциплин:
· курсы лекций, учебные пособия;
· учебные презентации;
· учебные фильмы, видеоуроки.
2. Электронные мультимедийные учебники, энциклопедии, словари, атласы географические и т.д.
3. Интерактивное дистанционное обучение посредством мультимедийных обучающих программ.
2.Графика как основа мультимедиа. Векторная и растровая графика
Чтобы изображение можно было хранить, просматривать и обрабатывать на компьютере, оно должно быть представлено в так называемом цифровом виде. Такое представление или, другими словами, описание изображения можно выполнить различными способами. Самый простой (по крайней мере, для понимания) способ состоит в том, чтобы каждый элемент изображения (точку или, как принято говорить, пиксел) описать отдельно. Описание точки это описание ее цвета. Все изображения, представленные таким способом, называют растровыми. Фотографии, произведения живописи, картинки с плавными переходами цветов обычно представляются в компьютере как растровые изображения. Для редактирования растровых изображений существуют специальные программные средства — графические растровые редакторы. Многие из них предназначены только для просмотра изображений и, возможно, некоторой коррекцией (яркости, контрастности, цветового баланса). Другие же являются мощными средствами не только для коррекции, но и для комбинирования фрагментов различных изображений (создания коллажей), а также для собственно рисования. Лидером среди редакторов растровых изображений является Adobe Photoshop. Однако следует заметить, что рисование «от нуля» в редакторах растровой графики, хотя это и возможно, является довольно сложным делом. Для этой цели лучше подходят редакторы так называемой векторной графики.
Векторные изображения описываются математическими формулами. В них элементами являются не пикселы, а объекты (линии, фигуры и т. п.). Например, чтобы описать такой объект, как отрезок прямой линии, требуется указать координаты его начала и конца, толщину и цвет линии. При растровом описании линии нам пришлось бы описывать каждую ее точку, причем чем толще линия, тем больше точек она содержит и тем объемнее ее общее описание. Рисовать картинки от руки в редакторах векторной графики существенно удобнее, чем в растровых. В частности, схемы и чертежи, а также рисунки типа плакатов (т. е. без плавных переходов цветов), несомненно, надо делать с помощью векторных редакторов. Однако они являются не очень хорошими помощниками при создании изображений с качеством фотографий или произведений живописи. Лидер среди векторных редакторов — CorelDRAW, хотя есть множество других векторных графических программ, например, Macromedia FreeHand и Macromedia Flash. Простейший векторный графический редактор входит в состав текстового процессора Word.
Растровые изображения плохо переносят масштабирование. Увеличение размеров картинки обычно приводит к ухудшению ее качества (проявляется зернистость). Если же требуется сохранить качество при увеличении размеров изображения, за что платят увеличением объема занимаемого места на диске. Качество векторного изображения практически не зависит от масштаба его представления и, следовательно, изменение масштаба не сказывается на объеме занимаемого места на диске. Это — одно из главных достоинств векторной графики.
Тенденция развития графических программ состоит в завоевании тех областей, для работы с которыми они изначально не предназначались. Таким образом, растровые и векторные редакторы стремятся сблизиться друг с другом по широте охвата и мощности своих средств. Photoshop сейчас не является чисто растровым редактором, a CorelDRAW имеет довольно развитые средства работы с растровой графикой. В настоящее время документ, создаваемый в мощном графическом редакторе, обычно является комбинированным, состоящим из множества объектов, различающихся способами описания (например, растровые и векторные изображения, текстовые поля). Документ может содержать информацию о слоях, прозрачности областей изображения и другую информацию. Таким образом, графический документ может иметь сложную объектную структуру.
Большинство начинающих заниматься компьютерной графикой обычно плохо разбирается, в каких случаях следует использовать тот или иной редактор. Часто бывает и так, что они пытаются в векторных редакторах применить технологии, естественные для растровых редакторов, и наоборот. Опытный специалист по компьютерной графике легко выберет наиболее подходящий редактор в зависимости от стоящей перед ним задачи. У него всегда под рукой и растровый, и векторный редактор. Поэтому в своей книге мы рассматриваем оба типа редакторов — растровый Photoshop и векторный Flash. Photoshop мы выбрали в силу его чрезвычайной популярности и огромных функциональных возможностей. К Flash мы обратились потому, что он является простым и достаточно удобным векторным редактором, имеет чрезвычайно мощные и удобные средства работы с анимационной графикой, а также потому, что его выходные файлы могут восприниматься Web-браузерами.
Итак, мы полагаем, что основные различия между растровой и векторной графикой ясны. Вместе с тем заметим, что обычно векторные редакторы могут импортировать растровые изображения в векторную графическую композицию и, наоборот, экспортируют векторные изображения в растровые. Например, Flash позволяет это делать.
Маски в компьютерной графике
При описании приемов компьютерной графики и работы с редакторами постоянно встречается понятие маски (mask). Поскольку внимания ему обычно уделяется не так уж и много, но как раз от масок большей частью и зависит успех описываемых методов обработки изображений, у новичков часто возникают трудности.
Если тем, кто работает с компьютерной графикой профессионально или достаточно часто, все понятно, то начинающие не всегда могут сразу сообразить, в чем суть предлагаемых им приемов. А так как все больше пользователей берется за создание Web-страничек, где на графике завязано очень многое, обстоятельный разговор о масках давно назрел.
Это я понял из общения с одним знакомым. Он, бедолага, с интересом читал мои предыдущие опусы, посвященные графике, но попытки сделать то же самое оказывались неудачными. И, как я понял, основная проблема в том, что он не умеет эффективно работать с масками.
Что же за чудо такое скрывается за этим термином? По определению, в компьютерной графике маска - это средство, позволяющее защитить от изменений некоторую часть растрового изображения. Нечто вроде трафарета. Маска состоит из открытых и закрытых для редактирования участков. В окне редактора при рисовании она представляется в виде бегущей черно-белой штриховой линии (marquee), очерчивающей эти участки. То есть компьютерный трафарет прозрачен, вы видите и то, что не попадает в его прорези.
В графических редакторах применяется и более наглядное представление маски - в основном при ее создании или изменении. В этом случае маска показывается в виде черно-белого изображения, соответствующего трафарету, вырезанному из черной бумаги. Белые участки на маске - прорези в трафарете, через которые можно добраться до обрабатываемой картинки.
При всем сходстве компьютерная маска имеет одно принципиальное отличие от того трафарета, которым привыкли пользоваться художники-оформители. Она может быть полупрозрачной. Под полупрозрачностью маски понимается то, что она пропускает изменения (воздействие инструментами рисования и фильтрами) к картинке в ослабленном виде. Степень ослабления определяется тоном полупрозрачных участков маски. Если черный цвет соответствует нулевой проницаемости, а белый - 100-процентной, то 50-процентный серый задает ослабление вдвое. Чем темнее оттенок серого на маске, тем меньше краски попадет в этом месте на изображение.
Во многих случаях маски создаются на короткое время - пока выполняется одно или несколько действий. Потом сбрасываются. Однако часто возникает необходимость сохранить с трудом созданную маску надолго - до конца редактирования изображения или чтобы ею можно было воспользоваться в следующий раз, например. В большинстве редакторов растровой графики для этого предусмотрены команды сохранения и загрузки масок.
Записываются маски в виде полутоновых черно-белых изображений, по размеру совпадающих с той картинкой, для которой они создавались. Такое изображение-трафарет можно поместить в отдельное окно редактора и, следовательно, в отдельный файл на диске. Однако многие форматы графических файлов (в частности, TIFF) позволяют к основным цветообразующим каналам (красному, зеленому, синему) добавлять дополнительные. Помещенная в такой канал маска будет записана в том же файле, что и изображение.
Размещение масок в дополнительных каналах удобно при работе. К сожалению, при этом заметно увеличивается размер графического файла. Особенно, если маски сложные. Прибавление к трем цветовым каналам четвертого способно привести к увеличению размера файла на треть
3.Алгоритмы обработки графической информации. Паrетная обработка пикселей.
Цифровой фильтр — в электронике любой фильтр, обрабатывающий цифровой сигнал с целью выделения и/или подавления определённых частот этого сигнала. В отличие от цифрового, аналоговый фильтр имеет дело с аналоговым сигналом, его свойства недискретны, соответственно передаточная функция зависит от внутренних свойств составляющих его элементов.
Цифровые фильтры на сегодняшний день применяются практически везде, где требуется обработка сигналов, в частности в спектральном анализе, обработке изображений, обработке видео, обработке речи и звука и многих других приложениях.
Преимуществами цифровых фильтров перед аналоговыми являются:
· Высокая точность (точность аналоговых фильтров ограничена допусками на элементы).
· Стабильность (в отличие от аналогового фильтра передаточная функция не зависит от дрейфа характеристик элементов).
· Гибкость настройки, лёгкость изменения.
· Компактность — аналоговый фильтр на очень низкую частоту (доли герца, например) потребовал бы чрезвычайно громоздких конденсаторов или индуктивностей.
Недостатками цифровых фильтров по сравнению с аналоговыми являются:
· Трудность работы с высокочастотными сигналами. Полоса частот ограничена частотой Найквиста, равной половине частоты дискретизации сигнала. Поэтому для высокочастотных сигналов применяют аналоговые фильтры, либо, если на высоких частотах нет полезного сигнала, сначала подавляют высокочастотные составляющие с помощью аналогового фильтра, затем обрабатывают сигнал цифровым фильтром.
· Трудность работы в реальном времени — вычисления должны быть завершены в течение периода дискретизации.
· Для большой точности и высокой скорости обработки сигналов требуется не только мощный процессор, но и дополнительное, возможно дорогостоящее, аппаратное обеспечение в виде высокоточных и быстрых ЦАП и АЦП.
Фильтр с конечной импульсной характеристикой (нерекурсивный фильтр, КИХ-фильтр) — один из видов электронных фильтров, характерной особенностью которого является ограниченность по времени его импульсной характеристики (с какого-то момента времени она становится точно равной нулю). Знаменатель передаточной функции такого фильтра — некая константа.
Фильтр с бесконечной импульсной характеристикой (рекурсивный фильтр, БИХ-фильтр) — электронный фильтр, использующий один или более своих выходов в качестве входа, то есть образует обратную связь.Основным свойством таких фильтров является то, что их импульсная переходная характеристика имеет бесконечную длину во временной области, а передаточная функция имеет дробно-рациональный вид. Такие фильтры могут быть как аналоговыми так и цифровыми.
Различают два вида реализации цифрового фильтра: аппаратный и программный. Аппаратные цифровые фильтры реализуются на элементах интегральных схем, тогда как программные реализуются с помощью программ, выполняемых ПЛИС, процессором или микроконтроллером. Преимуществом программных перед аппаратным является лёгкость воплощения, а также настройки и изменений, а также то, что в себестоимость такого фильтра входит только труд программиста. Недостаток — низкая скорость, зависящая от быстродействия процессора, а также трудная реализуемость цифровых фильтров высоког
4.Анимация, как последовательность изображений. Виды и области использования анимации.
Под термином анимация понимается последовательность сменяющихся изображений (кадров), в результате просмотра которой возникает иллюзия движения (плавного изменения формы и/или положения изображения). В Macromedia Flash реализовано два способа анимации:
· Покадровая анимация. Этот способ состоит в том, чтобы достаточно быстро пролистать заранее нарисованные кадры. В данном случае иллюзия движения возникает за счет выбора подходящих скорости перелистывания и степени похожести соседних кадров. Рассматриваемый способ аналогичен способу, применяемому при создании анимационных GIF-файлов (см. главу 3).
· Интерполяционная анимация. Этот способ заключается в том, чтобы создать несколько опорных (ключевых) кадров, а затем на их основе "вычислить" промежуточные кадры (tweening animation). Данный способ аналогичен рисованию гладкой линии, проходящей через указанные точки. Например, допустим, что требуется переместить какую-нибудь фигуру из левой части экрана в правую с помощью 25 кадров. В случае первого, покадрового, способа анимации нам придется нарисовать все двадцать пять кадров, и в каждом последующем кадре чуть-чуть сдвигать фигуру вправо. А если нужно сделать так, чтобы фигура, двигаясь вправо, постепенно исчезала или меняла форму? Очевидно, делать вручную каждый кадр в этом случае будет слишком утомительным занятием. Вот для таких ситуаций и предусмотрен второй способ анимации. В простейшем случае вам понадобится задать только два ключевых кадра: начальный и конечный. По умолчанию Flash рассчитывает промежуточные кадры по линейному закону, но можно задать и экспоненциальный закон.
Технологии
создания анимации
В настоящее время существует различные технологии создания анимации:
1. Классическая (традиционная) анимация представляет собой поочередную смену рисунков, каждый из которых нарисован отдельно. Это очень трудоемкий процесс, так как аниматорам приходится отдельно создавать каждый кадр.
2. Стоп-кадровая (кукольная) анимация. Размещенные в пространстве объекты фиксируются кадром, после чего их положение изменяется и вновь фиксируется.
3. Спрайтовая анимация реализуется при помощи языка программирования.
4. Морфинг - преобразование одного объекта в другой за счет генерации заданного количества промежуточных кадров (пример).
5. Цветовая анимация - при ней изменяется лишь цвет, а не положение объекта.
6. 3D-анимация создается при помощи специальных программ (например, 3D MAX). Картинки получаются путем визуализации сцены, а каждая сцена представляет собой набор объектов, источников света, текстур.
7.
Захват движения (Motion
Capture) - первое направление анимации, которое дает возможность
передавать естественные, реалистичные движения в реальном времени. Датчики
прикрепляются на живого актера в тех местах, которые будут приведены в
соответствие с контрольными точками компьютерной модели для ввода и оцифровки
движения. Координаты актера и его ориентация в пространстве передаются
графической станции, и анимационные модели оживают.
Существует два основных подхода к измерению: электромагнитные датчики и
оптические метки. Метод захвата движения применяется для анимирования виртуальных
моделей людей (или пришельцев, как в фильме Аватар) в современной
киноиндустрии.
Анимация (animation) — искусственное создание эффекта подвижного изображения путем быстрой смены последовательности кадров, фиксирующих отдельные фазы движения объектов или их состояния, смены сцен. Для хранения анимационных изображений служат специальные форматы. Наиболее распространенные из них FLI и GRASP.
FLI Animation, FLI, Flic — анимационный формат, разработанный фирмой Autodesk, используется для хранения анимационных последовательностей в графических приложениях, системах САПР и компьютерных играх на платформах корпорации Intel. FLI поддерживает 256 цветов на кадр (однако возможен их выбор из 16 млн. цветов); максимальный размер изображения 320х200, 64К х 64К; использует RLE-сжатие и дельта-кодирование (может работать и без сжатия); поддерживается программами Autodesk Animator и Animator Pro; имена файлов используют расширения *.fli (старая версия формата), *flc (более поздняя версия, поддерживаемая IBM Multimedia Tools Series, Microsoft Video for Windows и Autodesk Animator Pro).
GRASP (Graphical System for Presentation) — анимационный формат, разработанный фирмой Microtex Industries для MS-DOS, считается одним из простейших форматов, предназначенных для хранения изображений с низким разрешением, текста и простых звуков. Вместе с входящим в него редактором (grasp.exe) используется для создания презентаций, обучающих программ и игр. GRASP поддерживает 256 цветов; максимальный размер — переменный, имеет RLE-сжатие. В именах файлов могут быть использованы расширения: *.gl, *.clp, *.fnt. *.pic, *.set, *.txt.
Разновидности
анимации:
Компьютерная анимация (computer animation, computer-assisted animation) — процесс
создания графического движущегося и/или видоизменяющегося изображения с помощью
ЭВМ.
Алгоритмическая анимация (процедурная анимация, algorithmic animation,
procedural animation) — анимация в трехмерном пространстве, при которой
движение объектов описывается аналитически на основе формул, отображающих
простейшие виды движения (перемещение, поворот).
Behavioural animation — моделирование взаимного поведения объектов сцены — от
простых взаимных перемещений до сложных динамических взаимодействий.
CGI (Computer Generated Imagery, компьютерная генерация изображений) — термин,
распространяемый на системы, продукцию и область деятельности, связанные с
компьютерной анимацией (в том числе трехмерной).
Facial animation (анимация лица) — моделирование на ЭВМ реалистического
изображения динамики выражений человеческого лица или отдельных его частей.
Понятия
и термины, связанные с технологией анимации
Keyframe (ключевой кадр) — кадр файла цифрового видеофрагмента, содержащий
полное изображение, сжатие которого осуществляется исключительно путем удаления
избыточной информации внутри кадра. В эффектах анимации или движения — кадр,
запускаемый при изменении атрибута, чтобы зафиксировать его новое состояние.
Keyframe animation (Image-based) — анимация по ключевым кадрам, прием
автоматизированного создания последовательности кадров движущегося и/или
видоизменяющегося изображения, при котором промежуточные кадры анимационной
последовательности создаются путем интерполяции между двумя ключевыми кадрами
изображения.
Modeled animation (моделируемая анимация) — метод анимации, в соответствии с
которым все манипуляции с объектами производятся в трехмерном пространстве и
каждый кадр анимационной последовательности формируется как результат
проецирования текущего состояния трехмерной сцены на плоскость изображения
(экрана монитора).
Real-time animation (анимация в реальном масштабе времени) — создание
анимационной последовательности и динамическое управление ею в момент
визуализации.
Timing — технология создания эффекта реалистического движения объектов при
анимации с учетом характера объектов (формы, массы, расположения центра
тяжести), расстояния между ними и других условий. Основные положения
«тайминга»: частота смены кадров – 25 для видео и 24 для кино; чем ближе друг к
другу изображения на соседних кадрах, тем медленнее должны происходить их
действия; чем дальше друг от друга изображения на соседних кадрах, тем быстрее
должны быть действия.
Сцена (scene) — изображение трехмерного пространства объектов с расположенными
в нем объектами.
Плоскость изображения (image plane) — плоскость, на которой формируется
двумерное изображение визуализируемой сцены (как правило, совпадает с
плоскостью экрана).
Пространство объекта (object space) — реальная или искусственно созданная (в
том числе воображаемая) трехмерная область размещения изображаемого объекта или
объектов сцены.
Occlusion — преобразование сцены, в результате которого меняется положение
объектов.
Occlusion mask — растровый шаблон, определяющий, какая часть изображения должна
быть закрыта другими объектами.
Overlay plane (плоскость перекрытия) — дополнительный участок памяти для буфера
кадра, используемый при выводе на экран или принтер перекрывающихся
изображений.
Wipe — постепенная замена одного изображения другим путем перемещения границы,
разделяющей видимые части двух изображений.
Прозрачность (transparency) — свойство отдельных изображений объектов сцены
изменять параметры отображения при расположении за ними других объектов сцены
или при изменении фона (заднего плана).
Полупрозрачность (screen door transparency) — технический прием построения
изображений, связанный с неполным (частичным) отображением пикселей объектов
переднего плана, при котором остальные объекты сцены остаются или делаются
частично видимыми.
Невидимый объект (hidden object) — графический объект сцены, который не может
быть виден с текущей позиции наблюдения (закрыт от наблюдателя другими
объектами или находится вне зоны видимости).
Фон (фоновая плоскость; backdrop, background) — самая удаленная от зрителя
плоскость многослойного изображения на экране монитора, которая становится
видимой, когда все остальные плоскости изображения отсутствуют или являются
прозрачными.
Superimpose — размещение объекта, состоящего из прозрачных или полупрозрачных
областей, поверх других изображений (например, видеоизображения поверх текста).
Модель освещения (illumination model, lighting model) — аналитическое описание
освещения сцены и отдельных ее компонент с учетом законов геометрической
оптики.
Источник освещения (light source) — описание характеристик объекта сцены,
принимаемого за источник освещения (координаты, размеры, яркость, цвет
излучения).
Локальный источник освещения (local light source) — источник для «освещения»
отдельных участков сцены.
Lumakeying — управление (манипуляция) интенсивностью «освещения» изображения
путем изменения значения интенсивности каждого пикселя.
Luminance — отдельный сигнал или часть видеосигнала, управляющие яркостью
изображения.
In-betweening (заполнение промежутков) — технический прием (способ) формирования
последовательности изображений, занимающих промежуточное положение между двумя
ключевыми позициями движущегося объекта.
Inverse kinematics — способ определения движения системы связанных элементов
(частей) объекта, при котором для одного элемента задаются ключевые положения и
характер перемещения между ними, а положения и перемещения других элементов
рассчитываются автоматически с учетом связей в системе.
Rubber-banding — специальный прием трансформации объекта путем фиксации одной
его точки и изменения положения другой.
Rubber-stamping — размножение двумерных графических объектов путем
многократного их перемещения и фиксации вдоль траектории движения.
Scaling up (upsampling) — увеличение масштаба изображения.
Stretching (растяжение) — деформация изображения графического объекта путем
увеличения его масштаба вдоль одного направления и одновременного уменьшения в
перпендикулярном направлении (по аналогии с растяжением физических объектов).
Этот прием используется в анимации для отображения движущихся объектов.
Термины,
связанные с технологией создания 2D-анимационных фильмов:
Art boards — иллюстративный материал, создаваемый художником-постановщиком
анимационного фильма для художников фона.
Image boards — иллюстрации к основным моментам сюжета, которые определяют
постановку, раскраску анимационного фильма.
Storyboards (сториборды) — ряд рисунков, отражающих основные моменты сценария
анимационного фильма.
Art Director — художник-постановщик анимационного фильма, в его функции входит
подготовка сюжетных карточек, детализированных комплектов эскизов (model pack)
для раскадровщиков и художественных карточек для художников фона.
Charter Designer — разработчик персонажей, их внешнего вида и костюмов.
Animation Supervisor — контролер анимации.
Key animator (раскадровщик) — аниматор, выполняющий раскадровку (layout)
сторибордов, определяющую размеры сцены, положение камеры, положения героев и
вид фона.
BG artist — художник фона.
Inbetweener (фазовщик) — художник, заполняющий промежутки между ключевыми
кадрами.
Inbetweening (фазовка) — прорисовка промежуточных фаз анимации между ключевыми
кадрами.
Tweening — автоматическая фазовка, выполняемая компьютером по ключевым кадрам.
Shape Tweening — автоматическая фазовка изменений формы.
Motion Tweening — автоматическая фазовка движения и масштабирования.
Onion skinning — функция анимационных программ, позволяющая производить
полупрозрачный (подобно кальке) просмотр предыдущего или следующего рисунка на
одном кадре.
Time sheet, exposure sheet, xsheet — временной (экспозиционный) лист,
определяет время эпизода.
Библиотека позволяет:
· Имитировать движения составных частей изделия в процессе реальной работы (могут использоваться сопряжения деталей, накладываемые пользователем в процессе проектирования 3D-сборки). Для этих целей Библиотека позволяет задавать как перемещения компонентов, так и их вращательное движение.
· Автоматически проверять возможные коллизии (соударения деталей) в процессе движения для выявления ошибок в проектировании.
· Наглядно имитировать процесс «разборки-сборки» изделия для применения в интерактивных электронных технических руководствах (ИЭТР).
· Создавать диаграмму последовательных положений механизма — «кинограмму» (набор последовательных кадров в формате *.frw — фрагментов КОМПАС-График).
· Записывать видеоролик движения в формате avi. Воспроизведение возможно как на текущем шаге анимации, так и в целом.
Анимация состоит из последовательных шагов. На каждом шаге можно задавать различные виды движения деталей и параметры движения (скорость, частота вращения, время).
Сценарий процесса анимации сохраняется в текстовом файле стандартного XML-формата.
Библиотека анимации не только значительно повышает качество проектирования изделий в целом, его наглядность и удобство, но также и усиливает конкурентоспособность предприятия на этапах выполнения конкурсных проектов.
Форматы анимационных файлов
Растровые файлы
GIF — формат хранения графических изображений. Формат GIF способен хранить сжатые данные без потери качества в формате не более 256 цветов. Независящий от аппаратного обеспечения формат GIF был разработан в 1987 году (GIF87a) фирмой CompuServe для передачи растровых изображений по сетям. В 1989-м формат был модифицирован (GIF89a), были добавлены поддержка прозрачности и анимации. GIF использует LZW-компрессию, что позволяет неплохо сжимать файлы, в которых много однородных заливок (логотипы, надписи, схемы).
GIF широко используется на страницах Всемирной Паутины.
Изображение в формате GIF хранится построчно, поддерживается только формат с индексированной палитрой цветов. Стандарт разрабатывался для поддержки 256-цветовой палитры.
Недокументированной, но поддерживаемой возможностью является сохранение большего количества цветов с помощью анимированного GIF с нулевой задержкой между кадрами. При этом каждый кадр содержит свою палитру.
Один из цветов в палитре может быть объявлен «прозрачным». В этом случае в программах, которые поддерживают прозрачность GIF (например, большинство современных браузеров) сквозь пиксели, окрашенные «прозрачным» цветом будет виден фон. «Полупрозрачность» пикселей (технология альфа-канала) не поддерживается.
GIF использует формат сжатия LZW. Таким образом, хорошо сжимаются изображения, строки которых имеют повторяющиеся участки. Например, изображения в которых много пикселей одного цвета по горизонтали.
Алгоритм
сжатия LZW относится к форматам сжатия без потерь. Это означает, что
восстановленые из GIF данные будут в точности соответствовать
упакованым. Следует отметить, что это верно только для 8-битных изображений с
палитрой, для цветной фотографии потери будут обусловлены переводом её к 256
цветам.
Метод сжатия LZW разработан в 1978 году израильтянами Лемпелом и Зивом
и доработан позднее в США. Сжимает данные путём поиска одинаковых
последовательностей (они называются фразы) во всем файле. Выявленные
последовательности сохраняются в таблице, им присваиваются более короткие
маркеры (ключи). Так, если в изображении имеются наборы из розового, оранжевого
и зелёного пикселов, повторяющиеся 50 раз, LZW выявляет это,
присваивает данному набору отдельное число (например, 7) и затем сохраняет эти
данные 50 раз в виде числа 7. Метод LZW, так же, как и RLE,
лучше действует на участках однородных, свободных от шума цветов, он действует
гораздо лучше, чем RLE, при сжатии произвольных графических данных, но
процесс кодирования и распаковки происходит медленнее.
Формат GIF допускает чересстрочное хранение данных. При этом строки разбиваются на группы, и меняется порядок хранения строк в файле. При загрузке изображение проявляется постепенно, в несколько проходов. Благодаря этому, имея только часть файла, можно увидеть изображение целиком, но с меньшим разрешением.
В чересстрочном GIF’е сначала записываются строки 1, 5, 9 и т. д. Таким образом, загрузив 1/4 данных, пользователь будет иметь представление о целом изображении. Вторым проходом следуют строки 3, 7, 11, разрешение изображения в браузере ещё вдвое увеличивается. Наконец, третий проход передаёт все недостающие строки (2, 4, 6…). Таким образом, задолго до окончания загрузки файла пользователь может понять, что внутри и решить, стоит ли ждать полной загрузки изображения. Чересстрочная запись незначительно увеличивает размер файла, но это, как правило, оправдывается приобретаемым свойством.
Формат GIF поддерживает анимационные изображения. Фрагменты представляют собой последовательности нескольких статичных кадров, а также информацию о том, сколько времени каждый кадр будет показан на экране. Анимация может быть закольцована, тогда после последнего кадра будет вновь показан первый и так далее.
Существует две спецификации формата GIF — GIF 87a и GIF 89a.
Первая спецификация была создана в 1987 году компанией CompuServe для замены устаревшего формата RLE. GIF стал популярен в ходе развития интернета, так как позволял использовать более компактные (по размеру файла) по сравнению с другими форматами картинки на веб-страницах. Хотя к настоящему времени формат во многом устарел, и для его замены создан формат PNG, он по прежнему широко используется.
GIF первоначально был проприетарным форматом, однако срок его патентной защиты истёк. В США патент на алгоритм сжатия LZW, использующийся в GIF (патент № 4 558 302) истёк 20 июня 2003 года. Срок действия канадского патента завершился 7 июля 2004 года. Действие патента для Великобритании, Франции, Германии и Италии завершилось 18 июня 2004 года, а для Японии — 20 июня 2004 года.
Срок действия последнего патента на GIF истёк 11 августа 2006 года.
Медиаконтейнер, мультимедиаконтейнер (англ. Media container) — формат файла или потоковый формат (поток необязательно должен быть сохранён в виде файла), чьи спецификации определяют только способ сохранения данных (а не алгоритм кодирования) в пределах одного файла. Медиаконтейнер определяет, сколько метаданных фактически может быть сохранено, вместе с тем он не определяет никакую кодификацию самих данных. Медиаконтейнер фактически является метаформатом, так как он хранит данные и информацию о том, как данные будут сохраняться непосредственно внутри файла. Как следствие из этого, программа, которая способна корректно идентифицировать и открыть файл (прочитать поток), записанный в каком-либо формате, впоследствии может быть не способна декодировать фактические данные, записанные внутри медиаконтейнера, так как или метаданные в медиаконтейнере являются недостаточными, или программное обеспечение неспособно декодировать данные, закодированные в медиаконтейнере.
В теории формат-контейнер способен хранить любой тип данных, однако на практике для каждого типа данных существуют отдельные группы контейнеров. Эти группы «настроены» для специфических требований и информации, которая будет сохраняться в них. Медиаконтейнеры являются типичным примером такой группы файловых контейнеров, которые предназначены для сохранения медиаинформации, которая условно делится на изображения, видео и аудио. В случае фильмов медиаконтейнер должен не только сохранять видео- и аудиопоток, но и при воспроизведении обеспечивать их синхронизацию. Также в медиаконтейнере может сохраняться несколько однотипных потоков, например фильм (видео-поток) с несколькими звуковыми дорожками (аудиопотоками) и субтитрами (текстовыми потоками).
Контейнер файла используется для идентификации и чередования различных типов данных. Более простые контейнерные форматы могут содержать различные типы звуковых данных, закодированных определённым кодеком. Более сложные медиаконтейнеры могут поддерживать множественные аудио- и видеопотоки, текстовые субтитры, информацию о разделах (англ. chapter), метаданные (теги), наряду с информацией для синхронизации воспроизведения различных потоков одновременно. В большинстве случаев заголовок (англ. header) файла, большинство метаданных и синхронизационные данные определены форматом контейнера. Например, есть контейнеры, оптимизированные для видео низкого качества с низким битрейтом, а есть контейнеры, оптимизированные для больших файлов, содержащих множество потоков высокого качества.
Составные части контейнера файла имеют различные наименования. В RIFF и PNG их часто называют chunks (куски), в MPEG-TS их называют packets (пакеты), а вJPEG они называются «segments» (сегменты). Основной контент данных составных частей называется «данные» или «полезная нагрузка». В большинстве контейнерных форматов каждая составная часть в последовательности имеет свой заголовок (англ. header), в то время как медиаконтейнер TIFF вместо этого сохраняет смещения, что приводит к трудностям в сохранении информации. Модульные составные части облегчают восстановление других составных частей в случае повреждения файла или при «выпадении» кадров или при bit slip (англ.).
Некоторые медиаконтейнеры предназначены для сохранения только аудиоданных:
AIFF (формат файла IFF, широко используемый на платформе Mac OS)
WAV (формат файла RIFF, широко используемый на платформе Microsoft Windows)
XMF (англ. Extensible Music Format — расширяемый формат музыки)
Некоторые медиаконтейнеры предназначены для сохранения только статических изображений:
FITS (англ. Flexible Image Transport System — гибкая транспортная система изображения) — медиаконтейнер для статичных изображений, необработанных данных (англ. raw data) и связанных метаданных.
TIFF (англ. Tagged Image File Format — теговый файловый формат изображений) — медиаконтейнер для статичных изображений и связанных метаданных.
Большинство медиаконтейнеров приспособлено для сохранения всех или почти всех типов медиаинформации, включая аудио, видео и текст. Самые популярные из них:
3gp (используется на многих мобильных телефонах, основан на стандартизированном ISO формате медиафайлов, определён спецификаций MPEG-4 Part 12)
ANIM — медиаконтейнер для цифровой анимации на линейке классических компьютеров Commodore Amiga, следует основным спецификациям IFF ILBM.
ASF (англ. Advanced Systems Format — продвинутый системный формат) — стандартный медиаконтейнер для Microsoft WMA и WMV.
AVI (англ. Audio Video Interleave — чередование аудио и видео) — стандартный медиаконтейнер для Microsoft Windows, базируется на RIFF, один из самых распространённых.
CDXL (другое наименование для формата ANIM) — медиаконтейнер для анимации для Amiga CDTV и Amiga CD32.
DVR-MS (англ. Digital Video Recording — Microsoft — цифровая видеозапись — Майкрософт) — проприетарный медиаконтейнер, разработанный Microsoft и базирующийся на ASF. DVR-MS использует видео стандарта MPEG-2 и аудио стандартов MPEG-1 Layer II или Dolby Digital AC-3 (ATSC A/52).
IFF (англ. Interchange File Format — чередующийся файловый формат) — первый платформо-независимый медиаконтейнер.
Matroska (MKV, Матрёшка) — открытый свободный стандарт и медиаконтейнер.
MPEG-TS (англ. MPEG-2 transport stream — транспортный поток MPEG) — медиа-контейнер для цифрового широковещательного телевидения. Стандартно содержит несколько видео- и аудиопотоков и расписание телепрограмм (Electronic Program Guide).
MP4 (MPEG-4 Part 14) — медиаконтейнер, поддерживающий аудио и видео из группы MPEG-4.
MOV — медиаконтейнер для мультимедийного фреймворка QuickTime, разработанный Apple.
Ogg — медиаконтейнер для аудиокодека Vorbis от Xiph.org и видеокодека Theora.
OGM (Ogg Media) медиаконтейнер для кодеков от Xiph.org, более не поддерживаемый и формально отторгнутый Xiph.org.[1]
RealMedia — медиаконтейнер для RealVideo и RealAudio.
Есть также много других медиаконтейнеров, например NUT, MPEG-1, MXF, GXF, ratDVD, SVI, VOB и DivX Media Format.
В дополнение к «чистым» контейнерным форматам, которые определяют только «обёртку», а не алгоритм кодирования, есть некоторые файловые форматы, которые определяют и слой хранения, и слой кодирования, как часть модульного дизайна и для совместимости «снизу вверх». К таким медиаконтейнерам относятся JPEG File Interchange Format (JFIF) для JPEG-изображений и Portable Network Graphics (PNG). Такие полнофункциональные медиаконтейнеры (хотя понятие «медиаконтейнер» к ним не совсем применимо) называются «Single coding format» (русск. Единый формат кодирования).
Все различия между разными медиаконтейнерами происходят из пяти основ:
Популярность. Насколько распространён и поддерживается данный контейнер.
Размер файла. Показывает различие в файловом размере между двумя файлами, которые имеют одинаковый контент, но сохранены различными медиаконтейнерами.
Поддержка расширенной функциональности кодека. Старые медиаконтейнеры, такие как AVI, не поддерживают новые особенности кодеков, такие как B-кадры, переменный битрейт аудиопотока и переменную частоту кадров видеопотока. Контейнер может быть «взломан» для добавления поддержки, но это создаёт проблемы совместимости.
Поддержка расширенного контента. Поддерживает ли медиаконтейнер разделы, субтитры, мета-теги и пользовательские данные.
Поддержка потокового мультимедиа.
Remux (ремультиплексирование) — принятый в сфере видеокодирования термин, означающий перекомпоновку содержимого медиаконтейнера. Его важной особенностью является отсутствие перекодировки (сохранение исходного качества) основных элементарных потоков (видео- и аудиопотока). Заменяется лишь медиаконтейнер, также могут добавляться или удаляться субтитры, меню, множественные аудиопотоки (дополнительные звуковые дорожки) и прочие второстепенные данные.
Видеокодек — программа/алгоритм сжатия (то есть уменьшения размера) видеоданных (видеофайла, видеопотока). Кодек — файл-формула, которая определяет, каким образом можно «упаковать» видеоконтент и, соответственно, проиграть видео. Также возможно кодирование кроме видео и аудиоинформации, добавления субтитров, векторных эффектов и т. п.
Каждый кодируемый кадр видеопотока состоит из точек (пикселей), образующих матрицу (растр). Кодек отслеживает похожие массивы точек (например, синее небо на фоне) и, вместо того, чтобы запоминать информацию о каждой точке (яркость и цвет) отдельно, записывает лишь первую (ключевую) точку и счётчик с количеством повторений этой точки. То есть вместо описания, например, 1000 точек, может оказаться достаточно описать всего 1 точку + счётчик повторения. Это самый простой из методов сжатия.
Качеством здесь можно управлять, задавая величину, такую, что если отличие между точками меньше, то они считаются одинаковыми.
Более продвинутые форматы сжатия учитывают, кроме вышеупомянутой технологии, ещё и принципы движения массивов точек в изображении, сегментирование картинки на «квадратики» с различным качеством сжатия, применение последовательности кадров, кодированных по-разному и показанных в определённой последовательности. Самые новые кодеки учитывают психофизические свойства восприятия видео человеческим глазом и мозгом, что позволяет ещё сильнее уменьшать размер данных без «видимой потери качества».
Сжатие видео — уменьшение количества данных, используемых для представления видеопотока. Сжатие видео позволяет эффективно уменьшать поток, необходимый для передачи видео по каналам радиовещания, уменьшать пространство, необходимое для хранения данных на CD, DVD или жёстких дисках. Недостатки: при использования сжатия с потерями появляются характерные и хорошо заметные артефакты — например, блочность (разбиение изображения на блоки 8x8 пикселей), замыливание (потеря мелких деталей изображения) и т. д. Существуют и способы сжатия видео без потерь, но на сегодняшний день они уменьшают данные недостаточно.
Видео — это по существу трёхмерный массив цветных пикселей. Два измерения означают вертикальное и горизонтальное разрешение кадра, а третье измерение — это время. Кадр — это массив всех пикселей, видимых камерой в данный момент времени, или просто изображение. В видео возможны также так называемые полукадры (см.: чересстрочная развёртка).
Сжатие было бы невозможно, если бы каждый кадр был уникален и расположение пикселов было полностью случайным, но это не так. Поэтому можно сжимать, во-первых, саму картинку — например, фотография голубого неба без солнца фактически сводится к описанию граничных точек и градиента заливки. Во-вторых, можно сжимать похожие соседние кадры. В конечном счёте, алгоритмы сжатия картинок и видео схожи, если рассматривать видео как трёхмерное изображение со временем как третьей координатой.
Помимо сжатия с потерями видео также можно сжимать и без потерь. Это означает, что при декомпрессии результат будет в точности (бит к биту) соответствовать оригиналу. Однако при сжатии без потерь невозможно достигнуть высоких коэффициентов сжатия на реальном (не искусственном) видео. По этой причине практически всё широко используемое видео является сжатым с потерями. В частности, вопреки распространённому заблуждению, DVD диски и спутниковое вещание также содержат и передают сжатое видео.
Одна из наиболее мощных технологий позволяющая повысить степень сжатия — это компенсация движения. Её использование означает, что последующие кадры в потоке используют похожесть областей в предыдущих кадрах для увеличения степени сжатия.
На сегодня практически все алгоритмы сжатия видео (например, стандарты, принятые ITU-T или ISO) используют дискретное косинусное преобразование (DCT) или его модификации для устранения пространственной избыточности. Другие методы, такие как фрактальное сжатие и дискретное вейвлет-преобразование, также были объектами исследований, но сейчас обычно используются только для компресcии неподвижных изображений.
Использование большинства методов сжатия (таких, как дискретные косинусное преобразование и вейвлет-преобразование) влечёт также использование процесса квантования. Квантование может быть как скалярным, так и векторным, тем не менее, большинство схем сжатия на практике используют скалярное квантование вследствие его простоты.
Современное цифровое телевещание стало доступным именно благодаря видео-компрессии. Телевизионные станции могут транслировать не только видео высокой четкости (HDTV), но и несколько телеканалов в одном физическом телеканале (6 МГц).
Хотя большинство видеоконтента сегодня транслируется с использованием стандарта сжатия видео MPEG-2, тем не менее новые и более эффективные стандарты сжатия видео уже используются в телевещании — например H.264 и VC-1.
5.Работа со звуком. Основные свойства слуха
· Порог слышимости, минимальная величина звукового давления, при которой звук данной частоты может быть ещё воспринят ухом человека. Величину Порог слышимости принято выражать в децибеллах, принимая за нулевой уровень звукового давления 2×10-5 н/м2 или 2×10-4 н/м2 при частоте 1 кгц (для плоской звуковой волны). Порог слышимости зависит от частоты звука (рис.). При действии шумов и др. звуковых раздражений Порог слышимости для данного звука повышается (см. Маскировка звука), причём повышенное значение Порог слышимости сохраняется некоторое время после прекращения действия мешающего фактора, а затем постепенно возвращается к исходному уровню. У разных людей и у одних и тех же лиц в разное время Порог слышимости может различаться в зависимости от возраста, физиологического состояния, тренированности. Измерения Порог слышимости обычно производятся методами аудиометрии.
· Пороги слышимости при маскировке
·
· При одновременном воздействии на слух двух звуков один из них может прослушиваться на фоне другого звука. Этот эффект называется маскировкой. Маскирующее действие различных звуков выявляется путем определения повышения уровня порога слышимости испытательных тонов или узкополосных шумов NПС относительно уровня абсолютного порога слышимости NАПС
· Коэффициент маскировки КМ рассчитывается в децибелах как разность этих двух уровней
·
· Маскировка чистым тоном. На рис. 1.10 приведены кривые маскировки тона в диапазоне частот, когда мешающим звуком является тоже тон, но с фиксированной
· частотой FM = 1 кГц и разными уровнями звукового давления NM. По этим кривым определяется порог слышимости на конкретных частотах маскируемого тона FТ, и рассчитывается коэффициент маскировки NПС, дБ.
·
·
· Рис. 1.10. Кривые порога слышимости тона с частотой Ft при маскировке тоном с частотой Fm = 1 кГц и уровнем Nm, дБ
·
·
· Особенности маскировки чистым тоном. Эти особенности могут быть сформулированы следующим образом:
· ■ маскировка максимальна, когда частоты FT и FM близки, чем дальше по частоте они расположены друг от друга, тем меньше величина маскировки;
· ■ величина маскировки увеличивается по мере возрастания уровня мешающего тона NM;
· ■ кривые маскировки существенно несимметричны по шкале частот, у них более резкий спад в сторону низких частот и плавное понижение в сторону верхних частот, поэтому маскировка сильнее проявляется в области высоких частот;
· ■ сдвиг маскирующего звука по частоте приводит к изменению формы кривой маскировки.
· Если частота тона FT равна удвоенной, утроенной и выше частоте мешающего тона FM, то в широком диапазоне слышимости возникают биения, которые проявляются в виде провалов на графиках кривых маскировки. Эти биения, возникают из-за нелинейности слуха и тем заметнее, чем больше уровень мешающего тона.
· Если маскировка осуществляется сразу несколькими тонами (созвучием), то кривая порога слышимости во всем частотном диапазоне созвучия лежит выше абсолютного порога слышимости. В этом случае кривые порога слышимости имеют множество максимумов и зон биений. При малой громкости высокий тон хорошо слышен одновременно с низким тоном. При высокой громкости высокие частоты могут полностью маскироваться низкими.
· Маскировка узкополосным шумом. При маскировке тона с частотой FT узкополосным шумом с центральной частотой FM и уровнем интенсивности NM (рис. 1.11) кривые маскировки примерно такие же, как при маскировке тоном с некоторыми отличиями:
· ■ нет биений и провала коэффициента маскировки на средней частоте мешающего звука,
· ■ максимум маскировки на 4 дБ ниже максимума уровня интенсивности мешающего шума.
·
· Рис.1.11. Кривые порога слышимости тона с частотой FT при маскировке узкополосным шумом с центральной частотой FM = 1 кГц и уровнем NM, дБ
·
· Для тональных звуков выше 1 кГц маскирующее действие шума значительное, в то время как частоты на октаву ниже частоты FM практически не маскируются. Это очень важно, так как при дискретизации часто возникают искажения ниже спектра основного тона, которые не маскируются. Например, на частоте тона 9 кГц пятая гармоника ошибок квантования образует с частотой дискретизации 44 кГц паразитную составляющую с частотой 1 кГц.
· Графики на рис. 1.11 позволяют рассчитать допустимое отношение сигнал-шум квантования с учетом маскировки. Дело в том, что узкополосный шум маскирует не только тоны, но и широкополосные шумы квантования. Для маскирующих звуков большого уровня, например, 100 дБ, частотная область максимальной чувствительности к шумам квантования смещается в область 200.. .400 Гц и при этом порог слышимости при маскировке на 20 дБ выше порога слышимости в тишине.
· В этом диапазоне критические полосы слуха в 10 раз меньше таких полос в области 2...5 кГц. Поэтому для шума квантования с равномерной спектральной плотностью допустимое увеличение уровня шума в такой полосе составит Ю дБ. В результате порог слышимости шума увеличивается до 30 дБ. Если
· учесть, что пороговый уровень слышимости шума в тишине равен +12 дБ, то допустимое значение уровня шума квантования составит 42 дБ, а допустимое отношение сигнал/шум квантования 58 дБ (100-42). Поэтому величина отношения сигнал/шум равная 60 дБ является нормой при цифровой передаче узкополосных сигналов в широкополосных трактах.
· Маскировка шума квантования тональными звуками и узкополосными шумами имеет очень большое значение при кодировании звука, так как передавать составляющие спектра, которые маскируются, не нужно. Это позволяет существенно сократить необходимое число разрядов и, следовательно, избыточность в звуковых сигналах и скорости цифровых потоков.
· Смещение частоты маскирующего звука приводит к смещению кривой маскировки по оси частот. В области частот выше 1 кГц кривая маскировки меняется мало. На частотах ниже 1 кГц эта кривая видоизменяется достаточно сильно. Особенно важно, что она расширяется в область НЧ.
·
· Маскировка широкополосным белым шумом. При маскировке тона белым шумом кривые маскировки существенно видоизменяются (рис. 1.12).
·
·
· Рис. 1.12. Кривые порога слышимости тона с частотой FT при маскировке белым шумом с уровнем спектральной плотности N(RБШ ) М, дБ
·
· Эти особенности могут быть сформулированы следующим образом:
· ■ вместо уровня интенсивности для характеристики мощности шума используется уровень спектральной плотности мощности N(RБШ);
· ■ до частоты 500 Гц кривые маскировки идут горизонтально;
· ■ на частотах выше 500 Гц уровень порога маскировки повышается, это изменение составляет 3 дБ/октаву, и при увеличении частоты в 10 раз порог слышимости возрастает на 10 дБ.
· Такая зависимость объясняется тем, что органы слуха реагируют не на общую мощность, а на мощность шума в критических полосах слуха. Ниже 500 Гц все критические полосы слуха имеют одинаковую ширину, поэтому порог
· слышимости от частоты не зависит. В области частот, где ширина критических полос слуха пропорциональна средней частоте, при увеличении частоты в 10 раз порог слышимости возрастает на 10 дБ.
· При маскировке шумом слух разделяет широкополосный шум на частотные группы и может распознать испытательный тон с частотой FT лишь тогда, когда его уровень на несколько децибел ниже уровня мешающего шума в частотной группе, где находится тон.
· При маскировке белым шумом с уровнем спектральной плотности мощности N(RБШ) величина маскировки определяется как разность между величинами порога слышимости тона и абсолютного порога слышимости этого же звука. Например, при. N(RБШ) —40 дБ на частоте 1 кГц порог слышимости тона равен 58 дБ, а абсолютный порог слышимости — 3 дБ, поэтому величина маскировки составляет 55 дБ. На других частотах она будет иной.
· Равномерно маскирующий шум. Шум, который осуществляет одинаковую маскировку во всем частотном диапазоне, должен иметь до частоты 500 Гц спектральную плотность мощности как у белого шума RБШ Выше 500 Гц спектральная плотность мощности должна уменьшаться пропорционально частоте, как у розового шума. Такой шум называется равномерно маскирующим. Кривые маскировки таким шумом приведены на рис. 1.13. Расчет коэффициента маскировки производится так же, как и при белом шуме.
·
· Рис. 1.13. Кривые порога слышимости тона с частотой FT при равномерно маскирующем шуме
·
· Маскировка тона шумом внутри критической полосы слуха. При такой маскировке, предполагается, что ширина полосы белого шума равна ширине критической полосы слуха, и маскируемый тон находится посередине этой полосы. В такой ситуации величина маскировки оценивается с помощью коэффициента, показывающего, на сколько децибел порог слышимости маскируемого тона с частотой FT ниже уровня маскирующего шума NМШ в рассматриваемой критической полосе слуха.
· Этот коэффициент маскировки тона шумом ΔNМТШ определяется равенством
·
· где NПС -уровень порога слышимости тона при маскировке его шумом с уровнем NМШ
· Для белого шума с уровнем спектральной плотности мощности N(RБШ) уровень маскирующего шума NМШ в критической полосе ΔFКР, равен:
·
· До частоты 500 Гц значение коэффициента маскировки ΔNМТШ,. равно минус 2 дБ. С увеличением ширины критических полос слуха (на частотах выше 500 Гц) его величина уменьшается, достигая на самых верхних частотах значения минус S...6 дБ.
· Существенно хуже проявляется маскировка для ситуации, когда тон маскирует шум. Его ширина здесь по-прежнему равна критической полосе слуха. В этом случае коэффициент маскировки определяется равенством
·
· где NПСШ и NМТ — соответственно порог слышимости маскируемого тоном шума и уровень маскирующего тона в децибелах, и он изменяется от минус 5..7 дБ на самых низких частотах до значений минус 35...40 дБ для самых верхних.
· Графики маскировки при использовании шкалы высоты тона в барках. Кривые порога слышимости при построении кривых маскировки в шкале частот имеют сложную форму, которую трудно аппроксимировать. При переходе от частотной шкалы к шкале высоты тона z в барках эта проблема решается значительно проще. В этой шкале форма кривых маскировки не зависит от величины высоты тона z маскирующего тона и полностью определяется только уровнем его интенсивности. Поэтому в стандартах кодирования MPEG величина маскировки задается именно в шкале высоты тона в барках.
· В качестве примера на рис. 1.14 приведены графики для коэффициентов
· маскировки тона шумом и шума тоном внутри критической полосы слуха. На графиках по оси ординат откладывается величина коэффициента маскировки внутри критической полосы слуха. По оси абсцисс откладывается высота z в барках. Коэффициент маскировки рассчитывался с помощью аппроксимирующей функции
·
:
· Как видно, с увеличением высоты тона z коэффициент маскировки в обоих случаях уменьшается по линейному закону. Тон остается всегда слышимым, даже, если его уровень меньше уровня маскирующего звука. Маскировка шума тоном (график 2) проявляется значительно слабее.
·
· Рис. 1.14. Зависимости коэффициента маскировки внутри частотной группы от высоты тона в барках (1 - маскировка тона шумом, 2 -маскировка шума тоном)
·
· На рис. 1.15 приведены кривые маскировки вне критической полосы слуха В этом случае рассматривается маскировка составляющими одной полосы составляющих в других критических полосах. Маскирующими могут быть тоны или узкополосный шум. Графики справедливы в обоих случаях. Как видно, форма кривых маскировки не зависит от высоты мешающего тона ZM. Под коэффициентом маскировки при этом понимается уровень порога слышимости тона NПС при заданных значениях ZM и NM.
·
·
·
·
· Рис. 1.15. Зависимости порога слышимости тона с частотой Ft при маскировке тоном или узкополосным шумом от высоты тона в барках
Адаптация слуха
· При воздействии на барабанную перепонку уха достаточно длительного звука большой интенсивности воспринимаемая громкость постепенно уменьшается. Это значит, что во время действия длительного громкого звука падает чувствительность уха. После прекращения действия звука чувствительность слуха постепенно восстанавливается. Это явление называется адаптацией слуха. Явление адаптации слуха поясняется рис. 1.22 и рис. 1.23.
·
· Рис. 1.22. Графики адаптации слуха при увеличении звукового давления
·
· На этих рисунках в качестве примера приведено воздействие звука в виде импульсов длительностью по 2 минуты на чувствительность слуха. При уровне звукового давления 94 дБ (рис. 1.22, а) происходит плавное понижение воспринимаемого уровня громкости с 94 до 85 фон (рис. 1.22, б). Скорость падения уровня громкости по времени от 0 до 40 с высокая, затем она уменьшается почти до нуля.
· При последующем скачкообразном возрастании звукового давления на 6 дБ
· (рис. 1.22, б) уровень громкости сначала возрастает на 9 фон, а затем вновь начинает уменьшаться. Однако, уменьшение уровня громкости в этом случае заметно меньше
· (с 95 до 88 фон). Это значит, что степень адаптации тем выше, чем громче утомляющий звук.
· На рис. 1.23, б показано изменение воспринимаемого уровня громкости при скачкообразном уменьшении звукового давления с 94 до 85 дБ. При этом скачок уменьшения уровня громкости составляет почти 20 фон. Затем происходит адаптация слуха к тишине, и чувствительность уха частично восстанавливается, а воспринимаемый уровень громкости через 2 минуты возрастает на 12 фон.
·
· Рис. 1.23. Графики адаптации слуха при уменьшении звукового давления
·
· Таким образом, адаптация проявляется в виде потери чувствительности слуха при достаточно длительном воздействии громкого звука и восстановлении ее при уменьшении громкости утомляющего звука. Защитная способность уха обладает инерцией - этот механизм начинает работать через 30...40 мс после начала звука. Полная защита слуха от воздействия высоких уровней не достигается даже за 150 мс. Поэтому для слуха наиболее опасны очень коротки громкие звуки.
Звук в широком смысле — колебательное движение частиц упругой среды, распространяющееся в виде волн в газообразной, жидкой или твёрдой средах (см. также Упругие волны) в узком смысле — явление, субъективно воспринимаемое специальным органом чувств человека и животных. Человек слышит З. с частотой от 16 гц до 20 000 гц. Физическое понятие о З. охватывает как слышимые, так и неслышимые звуки. З. с частотой ниже 16 гц называется Инфразвуком, выше 20 000 гц — Ультразвуком; самые высокочастотные упругие волны в диапазоне от 109 до 1012—1013 гц относят к Гиперзвуку. Область инфразвуковых частот снизу практически не ограничена — в природе встречаются инфразвуковые колебания с частотой в десятые и сотые доли гц. Частотный диапазон гиперзвуковых волн сверху ограничивается физическими факторами, характеризующими атомное и молекулярное строение среды: длина упругой волны должна быть значительно больше длины свободного пробега молекул в газах и больше межатомных расстоянии в жидкостях и в твёрдых телах. Поэтому в воздухе не может распространяться гиперзвук с частотой 109 гц и выше, а в твёрдых телах — с частотой более 1012—1013 гц.
Основные характеристики звука. Важной характеристикой З. является его спектр, получаемый в результате разложения З. на простые гармонические колебания (т. н. частотный Звука анализ). Спектр бывает сплошной, когда энергия звуковых колебаний непрерывно распределена в более или менее широкой области частот, и линейчатый, когда имеется совокупность дискретных (прерывных) частотных составляющих. З. со сплошным спектром воспринимается как шум, например шелест деревьев под ветром, звуки работающих механизмов. Линейчатым спектром с кратными частотами обладают музыкальные З. (рис. 1); основная частота определяет при этом воспринимаемую на слух высоту звука (См. Высота звука), а набор гармонических составляющих — Тембр звука. В спектре З. речи (См. Речь) имеются форманты (См. Форманта) — устойчивые группы частотных составляющих, соответствующие определённым фонетическим элементам (рис. 2). Энергетической характеристикой звуковых колебаний является Интенсивность звука — энергия, переносимая звуковой волной через единицу поверхности, перпендикулярную направлению распространения волны, в единицу времени. Интенсивность З. зависит от амплитуды звукового давления (См. Звуковое давление), а также от свойств самой среды и от формы волны. Субъективной характеристикой З., связанной с его интенсивностью, является Громкость звука, зависящая от частоты. Наибольшей чувствительностью человеческое ухо обладает в области частот 1—5 кгц. В этой области Порог слышимости, т. е. интенсивность самых слабых слышимых звуков, по порядку величины равна 10-12вм/м2, а соответствующее звуковое давление — 10-5н/м2. Верхняя по интенсивности граница области воспринимаемых человеческим ухом З. характеризуется порогом болевого ощущения (См. Порог болевого ощущения), слабо зависящим от частоты в слышимом диапазоне и равным примерно 1 вм/м2. В ультразвуковой технике достигаются значительно большие интенсивности (до 104 квм/м2).
Источники звука — любые явления, вызывающие местное изменение давления или механическое напряжение. Широко распространены источники З. в виде колеблющихся твёрдых тел (например, диффузоры громкоговорителей и мембраны телефонов, струны и деки музыкальных инструментов; в ультразвуковом диапазоне частот — пластинки и стержни из пьезоэлектрических материалов (См. Пьезоэлектрические материалы) или магнитострикционных материалов (См. Магнитострикционные материалы)). Источниками З. могут служить и колебания ограниченных объёмов самой среды (например, в органных трубах, духовых музыкальных инструментах, свистках и т.п.). Сложной колебательной системой является Голосовой аппарат человека и животных. Возбуждение колебаний источников З. может производиться ударом или щипком (колокола, струны); в них может поддерживаться режим автоколебаний (См. Автоколебания) за счёт, например, потока воздуха (духовые инструменты). Обширный класс источников З. — Электроакустические преобразователи, в которых механические колебания создаются путём преобразования колебаний электрического тока той же частоты. В природе З. возбуждается при обтекании твёрдых тел потоком воздуха за счёт образования и отрыва вихрей, например при обдувании ветром проводов, труб, гребней морских волн. З. низких и инфранизких частот возникает при взрывах, обвалах. Многообразны источники акустических Шумов, к которым относятся применяемые в технике машины и механизмы, газовые и водяные струи. Исследованию источников промышленных, транспортных шумов и шумов аэродинамического происхождения уделяется большое внимание ввиду их вредного действия на человеческий организм и техническое оборудование.
Приёмники звука служат для восприятия звуковой энергии и преобразования её в др. формы. К приёмникам З. относится, в частности, слуховой аппарат человека и животных. В технике для приёма З. применяются главным образом электроакустические преобразователи: в воздухе — Микрофоны, в воде — Гидрофоны и в земной коре — Геофоны. Наряду с такими преобразователями, воспроизводящими временную зависимость звукового сигнала, существуют приёмники, измеряющие усреднённые по времени характеристики звуковой волны, например Диск Рэлея, Радиометр.
Распространение звуковых волн характеризуется в первую очередь скоростью звука (См. Скорость звука). В газообразных и жидких средах распространяются продольные волны (направление колебательного движения частиц совпадает с направлением распространения волны), скорость которых определяется сжимаемостью среды и её плотностью. Скорость З. в сухом воздухе при температуре 0°С составляет 330 м/сек, в пресной воде при 17°С — 1430 м/сек. В твёрдых телах, кроме продольных, могут распространяться поперечные волны, с направлением колебаний, перпендикулярным распространению волны, а также поверхностные волны (Рэлея волны). Для большинства металлов скорость продольных волн лежит в пределах от 4000 м/сек до 7000 м/сек, а поперечных — от 2000 м/сек до 3500 м/сек.
При распространении волн большой амплитуды (см. Нелинейная акустика) фаза сжатия распространяется с большей скоростью, чем фаза разрежения, благодаря чему синусоидальная форма волны постепенно искажается и звуковая волна превращается в ударную волну (См. Ударная волна). В ряде случаев наблюдается Дисперсия звука, т. е. зависимость скорости распространения от частоты. Дисперсия З. приводит к изменению формы сложных акустических сигналов, включающих ряд гармонических составляющих, в частности — к искажению звуковых Импульсов. При распространении звуковых волн имеют место обычные для всех типов волн явления интерференции и дифракции. В случае, когда размер препятствий и неоднородностей в среде велик по сравнению с длиной волны, распространение звука подчиняется обычным законам отражения и преломления волн и может рассматриваться с позиций геометрической акустики (См. Геометрическая акустика).
При распространении звуковой волны в заданном направлении происходит постепенное её затухание, т. е. уменьшение интенсивности и амплитуды. Знание законов затухания практически важно для определения предельной дальности распространения звукового сигнала. Затухание обусловливается рядом факторов, которые проявляются в той или иной степени в зависимости от характеристик самого звука (и в первую очередь, его частоты) и от свойств среды. Все эти факторы можно подразделить на две большие группы. В первую входят факторы, связанные с законами волнового распространения в среде. Так, при распространении в неограниченной среде З. от источника конечных размеров интенсивность его убывает обратно пропорционально квадрату расстояния. Неоднородность свойств среды вызывает рассеяние звуковой волны по различным направлениям, приводящее к ослаблению её в первоначальном направлении, например рассеяние З. на пузырьках в воде, на взволнованной поверхности моря, в турбулентной атмосфере (см. Турбулентность), рассеяние высокочастотного ультразвука в поликристаллических металлах, на дислокациях (См. Дислокации) в кристаллах. На распространение З. в атмосфере и в море влияет распределение температуры и давления, силы и скорости ветра. Эти факторы вызывают искривление звуковых лучей, т. е. рефракцию З., которая объясняет, в частности, тот факт, что по ветру З. слышен дальше, чем против ветра. Распределение скорости З. с глубиной в океане объясняет наличие т. н. подводного звукового канала, в котором наблюдается сверхдальнее распространение З., например З. взрыва распространяется в таком канале на расстояние более 5000 км.
Вторая группа факторов, определяющих затухание З., связана с физическими процессами в веществе — необратимым переходом звуковой энергии в др. формы (главным образом в тепло), т. е. с поглощением звука (См. Поглощение звука), обусловленным вязкостью и теплопроводностью среды («классическое поглощение»), а также переходом звуковой энергии в энергию внутримолекулярных процессов (молекулярное или релаксационное поглощение). Поглощение З. заметно возрастает с частотой. Поэтому высокочастотный ультразвук и гиперзвук распространяются, как правило, лишь на очень малые расстояния, часто всего на несколько см. В атмосфере, в водной среде и в земной коре дальше всего распространяются инфразвуковые волны, отличающиеся малым поглощением и слабо рассеиваемые. На высоких ультразвуковых и гиперзвуковых частотах в твёрдом теле возникает дополнительное поглощение, обусловленное взаимодействием волны с тепловыми колебаниями кристаллической решётки, с электронами и со световыми волнами. Это взаимодействие при определённых условиях может вызвать и «отрицательное поглощение», т. е. усиление звуковой волны.
Значение звуковых волн, а следовательно, и их изучение, которым занимается Акустика, чрезвычайно велико. С давних пор З. служит средством связи и сигнализации. Изучение всех его характеристик позволяет разработать более совершенные системы передачи информации, повысить дальность систем сигнализации, создать более совершенные музыкальные инструменты. Звуковые волны являются практически единственным видом сигналов, распространяющихся в водной среде, где они служат для целей подводной связи, навигации, локации (см. Гидроакустика). Низкочастотный звук является инструментом исследования земной коры. Практическое применение ультразвука создало целую отрасль современной техники — ультразвуковую технику. Ультразвук используется как для контрольно-измерительных целей (в частности, в дефектоскопии (См. Дефектоскопия)), так и для активного воздействия на вещество (ультразвуковая очистка, механическая обработка, сварка и т.п.). Высокочастотные звуковые волны и особенно гиперзвук служат важнейшим средством исследований в физике твёрдого тела.
Бинауральный слух
Бинауральным слухом называется его способность определять направление прихода звуковой волны, т.е. локализовать положение источника звука
в пространстве. Эта способность достигается благодаря пространственной не совмещенности двух ушей в сочетании с экранирующим влиянием головы. Это
приводит к тому, что всегда имеет место неидентичность возбуждения правого
левого уха. Этот факт обеспечивает человеку возможность воспринимать
пространственный звуковой мир и оценивать перемещение источников звука в
пространстве.
К числу основных свойств бинаурального слуха можно отнести:
■ пространственную локализацию;
■ эффект предшествования;
■ бинауральное суммирование громкости;
■ бинауральную демаскировку.
Такие возможности слуха достигаются благодаря трем факторам.
1. Временным — возникающим из-за несовпадения моментов воздействия одинаковых фаз звука на левое и правое ухо.
2. Амплитудным — возникающим из-за неодинаковой величины звуковых давлений на левое и правое ухо вследствие дифракции звуковой волны вокруг головы, например, образования акустической тени со стороны, обратной источнику звука.
3. Спектральным - возникающим из-за разницы в спектральном составе звуков, воспринимаемых левым и правым ухом, вследствие не одинакового экранирующего влияния головы и ушных раковин на низких и высоких звуковых частотах.
Локализация источников звука. Прослушивая звучание симфонического оркестра в концертном зале, слушатель отчетливо воспринимает и разделяет расположение инструментов в горизонтальной плоскости на сцене, их расположение по глубине, а также ощущает пространственность звукового образа. Механизмы локализации источников звука по глубине, в горизонтальной и вертикальной плоскостях, различаются.
Азимутальная локализация источников звука. Если под некоторым углом φ к медианной плоскости головы 1-1 слушателя находится источник звука (рис. 1.29), то фронтальная локализация включает определение азимута (угла φ) и расстояния 1 до источника звука. Вследствие дифракции звуковой волны вокруг головы слушателя и частотно-зависимого затухания этой волны с расстоянием 1 звуки к правому и левому ушам слушателя приходят не одинаковыми. Они отличаются по уровню интенсивности на величину ΔN и по времени — а величину Δt, а также являются функцией азимута и частоты. Эти параметры являются носителями информации о локализации источника звука.
Низкие частоты имеют длину волны больше, чем диаметр головы слушателя, поэтому они огибают голову и не дают акустической тени. Звуки высокой
частоты имеют длину волны меньше, чем диаметр головы слушателя, поэтому
они не проходят к левому уху. Возникающая при этом вследствие явления дифракции акустическая тень уменьшает интенсивность звука, поступающего левое ухо (рис. 1.30).
i
Рис. 1.29. Возникновение разности времени прихода звуковой волны в левое в
правое уши слушателя
Рис. 1.30. Образование акустической тени
Разность времени Δt прихода одинаковых фаз звука к ушам равна
Δt = Δx/C0,
где Δх- разность хода звуковой волны до левого и правого уха, Со- скорой распространение звука в воздухе.
Максимальная разность хода Δх =21 см при расположении источника под углом 90° (сбоку). Величина d больше средней базы между ушами В=18 см и меньше наикратчайшего расстояния вокруг головы, равного 26 см (рис. 1.29 )
Максимальное время задержки равно 0,63 мс. Это справедливо только для синусоидальных звуков с частотой не выше 800 Гц. На больших частотах время запаздывания становится больше половины периода колебания, поэтому понятие фазы теряет смысл.
Из опыта следует также, что чистые тоны высоких частот (свыше 8 кГц) почти не поддаются локализации. Также слабо выражена способность локализации на частотах ниже 300 Гц. На частотах меньше 150 Гц локализация отсутствует вообще. На этом основании неважно, где следует размещать НЧ акустические системы при стереовоспроизведении.
Наибольшая точность локализации достигается при восприятии сложных
ков и звуковых импульсов. При этом важным фактором является спектральный состав звуков. Так, если звук содержит НЧ и ВЧ составляющие и действует
углом 90° на правое ухо, то в левом ухе ВЧ составляющих не будет из-за
акустической тени головы.
Наименьший ощутимый угол восприятия отклонения источника звуковых импульсов равен 3°. Эту величину следует считать бинауральной разрешающей способностью слуха для фронтального направления. Точность локализации источников звука, расположенных слева и справа, значительно меньше и составляет примерно 12°. Для тылового направления эта величина равна около 6°.
При локализации источников звука параметры ΔN и Δt полностью взаимозаменяемы. При оценке азимута φ орган слуха обменивает эквивалентное значение интенсивностной разности ΔNЭK на временную разность
где К*- коэффициент эквивалентности. Суммарное значение эквивалентной
интенсивности ΔNСУМ
является дополнительным фактором для определения азимута.
Величины Δt и ΔN являются не только линейными функциями азимутального угла, но зависят также от частоты. Они изменяются при переходе от одной частотной группы слуха к другой, оставаясь примерно постоянными в пределах одной частотной группы. На низких частотах (ниже 500 Гц) ΔN « К*Δt. В диапазоне средних частот от 500 до 5000 Гц оба фактора ΔN и Δt примерно в равной степени способствуют созданию ощущения направления.
Таким образом, при оценке азимута источника звука голова и ушные раковины выполняют функцию пространственного фильтра. Суждение о величине углового смещения φ источника звука от медианной плоскости связано с оценкой слуховой системой временных Δt интенсивностных ΔN различий пары бинауральных звуков. Такая оценка осуществляется в каждой частотной группе слуха и сравнивается с заученными, приобретенными в результате опыта образцами, которые хранятся в слуховой памяти. Все это и позволяет определить азимут.
Локализация источников звука в вертикальной плоскости. Способность определять направление прихода звука в вертикальной плоскости у человека развита очень слабо, и разрешение составляет всего 10...150. Эта способность связана с ориентацией и формой ушей.
Механизм восприятия звука в плоскости фронт-тыл. Когда один источник излучения (А или В) расположен во фронтальной плоскости, или тыловой, что значения ΔN и Δt для них практически одинаковы, то тогда невозможно оценить азимутальный угол φ источника звука относительно медианной плоскости (рис. 1.31). Несмотря на это локализация оказывается безошибочной и за счет дополнительного спектрального анализа бинауральной пары звуков.
Орган слуха человека имеет как бы два разных механизма для оценка местоположения источника звука в пространстве. Один из них (фронт-тыл) определяет, находится ли источник спереди или сзади слушателя, другой определяет направление на источник звука относительно медианной плоскости (угол j) Если источники звука находятся в медианной плоскости, то r1 = r2.
|
Рис. 1.31. Схема восприятия звука в медианной плоскости фронт-тыл
Ключевым моментом для понимания работы механизма фронт-тыл при этом является зависимость, показанная на рис. 1.32. Эта обусловленность представляет собой график изменения разности уровней звукового давления ΔNФT на правое ухо и левое, в зависимости от частоты между уровнями давлений фронтального NФ и тылового NT громкоговорителей
ΔNФТ = NФ-Nт.
Как видно из графика, на одних частотных полосах NФ>Nт., на других - наоборот. Для уверенной фиксации слушателем фронтального или тылового направления достаточно иметь различие громкоговорителей по звуковому давлению больше 1.5...2 дБ. Условия работы фронт-тыл ухудшаются, если громкоговорители находятся вне медианной плоскости. Этот механизм вообще не работает при φ = 90° и 270°.
Локализация источников звука по глубине. Наряду с азимутом слушатель уверенно оценивает расстояние до источника звука.
1 При средних расстояниях до источника звука (3...15 м) приближение удаление источника звука сопровождается изменением его интенсивности. В
свободном звуковом поле на НЧ увеличение расстояния вдвое сопровождается уменьшением уровня звукового давления на 6 дБ. На слух расстояние всегда
является меньше, чем оно есть. Ошибка растет с увеличением расстояния.
2. На близких расстояниях (менее 3 м) на глубинную локализацию оказывает
влияние дифракция на ушной раковине и голове, т.е. сказывается разность
уровней интенсивности и временные задержки. Точность глубинной локализации
при смещении широкополосного источника от 50 до 150 см не превышает
15.-30%.
При больших расстояниях (свыше 15 м) начинает сказываться затухание, зависящее от расстояния, проходимого звуковой волной. При этом ВЧ составляющие затухают быстрее, меняется тембр. На распространение звука оказывают влияние влажность воздуха и направление ветра. Увеличение амплитуды НЧ составляющих спектра звука вызывает ощущение приближения источника звука. Искусственное уменьшение ВЧ составляющих спектра воспринимается как удаление источника звука.
В отличие от азимутальной локализации глубинная локализация возможна при моноуральном слушании, однако, бинауральное восприятие существенно повышает точность оценки расстояния. При этом орган слуха подсознательно оценивает величины Δt и NСР/ΔN, где NСР - среднее значение интенсивностей звуков, действующих на левое ухо и правое. При расстояниях больше Ю м эти факторы не работают.
6.Звук в мультимедиа. Кодирование, обработка и сжатие звука
Важнейшим этапом аналого-цифрового преобразования является дискретизация аналогового сигнала. Вместо термина «дискретизация» в технической литературе иногда употребляют термин «выборка», а в литературе, посвященной обработке звука используется понятие — «сэмплирование»*.
По определению, дискретизация - это процесс взятия отсчетов непрерывного во времени сигнала в равноотстоящих друг от друга по времени точках. Иными словами, в процессе дискретизации измеряется и запоминается уровень аналогового сигнала. Через заданный интервал времени, который называется интервалом дискретизации, процедура повторяется. Для качественного преобразования аналогового сигнала в цифровой необходимо производить достаточно большое количество отсчетов даже в течение одного периода изменения аналогового сигнала, другими словами, значение частоты дискретизации не может быть произвольным.
И действительно, значение частоты дискретизации фактически определяет ширину
полосы частот сигнала, который может быть записан с помощью используемой
цифровой системы. Ширина этой полосы не может быть больше половины значения
частоты дискретизации, как определяет теорема отсчетов
(Котельникова-Найквиста). Эта теорема имеет важнейшее значение в технике записи
и передачи звука в цифровой форме. Теорема гласит: сигнал, спектр частот
которого занимает область от FMИH до FМАКС
(низкочастотный звуковой сигнал), может быть полностью представлен своими
дискретными отсчетами с интервалом ТД, если ТД не
превышает
Другими словами, частота дискретизации в процессе
преобразования должна быть, как минимум, вдвое больше наивысшей частоты
звукового сигнала FМАКС.
Почему же именно в два раза? Да потому, что спектр сигнала, т, ванного с помощью АЦП в цифровую форму, имеет периодический характер
В соответствии с теоремой Фурье сигнал любой формы может быть представлен в виде суммы простейших синусоидальных колебаний разной частоты и амплитуды. По окончании аналого-цифрового преобразования звуковой сигнал, представленный в цифровой форме, содержит, кроме низкочастотных соответствующих исходному аналоговому сигналу, еще и высокочастотных компоненты (рис. 3.2). Эти компоненты есть повторение низкочастотного спектра сигнала в виде боковых полос с центрами в точках, кратных частоте дискретизации (fд, 2fд, Зfд, 4fд и т. д.).
Если уменьшить частоту дискретизации, то произойдет наложение (перекрытие) низкочастотной части спектра и боковой полосы с центром в точке Наложение спектров приведет к появлению новых спектральных составляющих сигнале и, следовательно, к невозможности его правильного восстановления
Рис. 3.2. Перекрытие спектров сигнала при дискретизаций
Классическим примером наложения спектров является случай, когда при просмотре кинофильма кажется, что колесо движущейся кареты крутится со скоростью, не соответствующей скорости движения кареты, или даже в обратную сторону. Возникновение этого эффекта обусловлено тем, что скорость смены кадров (частота дискретизации изображения) мала по сравнению с угловой скоростью вращения колеса.
Чтобы при записи звукового сигнала избежать наложения спектров, перед устанавливается фильтр низких частот (ФНЧ), подавляющий все частоты, лежащие выше частоты дискретизации. При этом желательно, чтобы фронты АЧХ этого фильтра были как можно круче.
Если учесть, что человек способен слышать звуковые колебания, частота которых находится в диапазоне от 16...20 Гц до 20 кГц, и с позиций теоремы отсчетов взглянуть на требования к частотным характеристикам высококачественной звукотехники (например, проигрывателей аудио компакт-дисков), становится ясно, что частота дискретизации исходного звукового сигнала должна составлять не менее 40 кГц. Реально для подобных систем частота дискретизации выбирается не менее 44,1 кГц. Стандартное значение частоты дискретизации большинства звуковых карт составляет 44,1 и 48,0 кГц.
Итак, результатом дискретизации является дискретный во времени сигнал, представляющий собой последовательность отсчетов — мгновенных значений уровня аналогового сигнала. Чем выше частота дискретизации, тем более точно будет восстановлен звуковой сигнал.
Процедура дискретизации технически реализуется с помощью устройства выборки/хранения. В качестве запоминающего элемента обычно используют конденсатор, заряжающийся до уровня напряжения входного сигнала. При этом потенциал заряда конденсатора соответствует мгновенному значению напряжения сигнала. Напряжение на конденсаторе сохраняется неизменным в течение некоторого отрезка времени, называемого временем хранения. В идеальном случае взятие отсчета должно происходить мгновенно, реально же длительность этого процесса составляет приблизительно 1 мкс.
Квантование
После дискретизации происходит второй этап аналого-цифрового
преобразования - квантование отсчетов. В процессе квантования производится измерение мгновенных значений уровня сигнала, полученных в каждом отсчете, причем осуществляется оно с точностью, которая напрямую зависит от количества разрядов, используемых для записи значения уровня.
Если, задав длину N кодового слова, записать значения уровня сигнала с мощью двоичных чисел, то количество возможных значений будет равно 2N. Естественно, что столько же может быть и уровней квантования. Например, если значение амплитуды отсчета представляется 16-разрядным кодовым словом, то максимальное количество градаций уровня сигнала (уровней квантования) будет равно 65536 (216). При 8-разрядном представлении будем иметь 256 (28) градаций уровня.
Необходимая разрядность представления значений отсчетов определяется динамическим диапазоном аналогового сигнала - разностью между уровнями самого сильного сигнала, который устройство в состоянии пропустить, и самого, еще различимого на фоне шумов.
С другой стороны, разрядность АЦП однозначно определяет динамический диапазон цифрового сигнала. Так, при 8-разрядном представлении значений отсчетов динамический диапазон составит 48, а при 16-разрядном -96дБ
Шумы квантования. Преобразование сигнала из аналоговой формы в цифровую можно произвести только с какой-то степенью точности, при этом, чем выше частота дискретизации и разрядность АЦП, тем точнее происходит преобразование.
Искажения сигнала, возникающие в процессе квантования отсчетов кут за собой потерю информации, которую при обратном цифро-аналоговом преобразовании в ходе воспроизведения записанного звукового сигнала ликвидировать или уменьшить практически невозможно
Например, если преобразовать линейно нарастающий по напряжению, аналоговый сигнал, то дискретный и восстановленный сигналы будут различаться на величину напряжения ошибки Uош (рис. 3.3). При записи звука зависимость ошибки от времени гораздо сложнее, а ее спектр подобен спектру белого шума и занимает частотный диапазон от нуля до частоты дискретизации
Рис. 3.3. Ошибки квантования
Появление ошибок квантования при записи звукового сигнала в цифровой форме эквивалентно добавлению к восстановленному сигналу некоторого шума. Поэтому ошибки квантования называются шумом квантования. Шум квантования можно рассматривать и как специфические искажения сигнала особенно заметные при малых его уровнях. Уровень шума квантования обычно измеряется в присутствии сигнала как уровень (в децибелах) относительно максимального значения сигнала. Чем меньше этот уровень, тем выше качества звука. Достижимый уровень шума определяется разрядностью квантования частотой дискретизации
Зависимость между числом двоичных разрядов N и относительным уровнем шума квантования Р для АЦП, работающего в двоичном коде, имеет достаточно простой вид:
Следовательно, для 16-разрядных АЦП и ЦДЛ уровень шума квантования составляет около -98 дБ (6x16+1,8 = 97,8). Такая разрядность используется при записи звука на компакт-диски.
В некоторых случаях допустим более высокий уровень собственного шума цифровой системы. Например, при передаче звукового сопровождения телепрограммы достаточно 12... 13 разрядов для представления звукового сигнала в цифровой форме и, следовательно, уровень шумов квантования может достигать значения от-78 до -72 дБ.
Следует отметить, что, если в исходном аналоговом сигнале уже содержится некоторый шум, то для высококачественной записи/воспроизведения звука разрешающую способность АЦП и ЦАП бессмысленно делать выше разности, соответствующей уровню шума. Данное обстоятельство позволяет установить разумные требования к техническим характеристикам ЦАП, АЦП и ему тракту записи/воспроизведения цифрового звукового сигнала.
Заметим, что характер воздействия шума на качество воспроизводимого сигнала в аналоговом и цифровом трактах звукозаписи принципиально различный В аналоговом тракте помехи суммируются с полезным сигналом, поэтому даже небольшой уровень шума существенно ухудшает качество звукового сигнала. В цифровой системе шум до некоторого, достаточно высокого (порогового) значения (точнее, до тех пор, пока еще удается правильно распознать передаваемое число) вообще не влияет на качество записи.
Затраты памяти на запись звука в цифровой форме. Зная разрядность АЦП, а точнее, количество разрядов, используемых для записи звукового сигнала в цифровой форме, можно получить некоторые интересные цифры.
Например, если умножить число разрядов кодового слова на частоту дискретизации сигнала, выраженную в герцах, то получим скорость передачи данных, которую должен обеспечивать цифровой канал записи/воспроизведения звука. Если теперь полученную скорость передачи данных умножить на общую Длительность звукового сигнала в секундах, получим объем памяти на магнитном носителе, например, на жестком диске, который потребуется для хранения звуковых данных. Как вы понимаете, в случае записи стереосигнала, когда запись идет по двум (левому и правому) стереоканалам, скорость передачи данных необходимый объем памяти удваиваются. Учет подобного рода информации поможет вам правильно оценить свои возможности перед записью на жесткий диск какого-нибудь звукового фрагмента.
Кодирование
Этой процедурой называют представление каждого уровня квантования i уi из
множества { уi }или каждого квантованного значения отсчета S(Qi) из
множества {S(Qi)} соответствующей ему конечной кодовой группой символов, называемой кодовым словом. Если код выбран, и множество его слов есть В, то операция кодирования представляет собой взаимно однозначное отображение {S(Qi)} в множество В. Чаще всего кодирование заключается в замене квантованного отсчета, которое можно рассматривать как некоторое число, его представлением в двоичной системе счисления. Двоичные кодовые слова имеют всего два кодовых символа 0 и 1. Число у в двоичной системе счисления представляется в виде
у = а m-1 2 m – 1+a m – 2 2 m -2 +…+ а 0 2 0,
где m - число разрядов (символов) в кодовом слове; а — число, принимающее значение
0 или 1. Разрядность двоичного кода m (число символов в кодовом слове) ставится в зависимость от количества разрешенных уровней квантована из множества { уi }, которое равно УМАКС. Двоичным m-разрядным кодом можно представить 2m различных кодовых слов и каждому числу из множества { уi } должно соответствовать определенное кодовое слово. Поэтому справедливо выражение
У макс ≤ 2m,
которым пользуются для согласованного выбора пары чисел m и у. Обычно в выражении (3.2) при первичном кодировании принимают знак равенства. Из общего числа элементов множества { уi } половина отводится для передачи мгновенных значений положительных полуволн ЗС, а другая половина - для передачи отрицательных полуволн. Каждая полуволна кодируется m -1 двоичными разрядами.
Кодовая комбинация, соответствующая числу n, содержит передаваемые последовательно символы а m-1, a m-2,…,a 0. Необходимое для кодирования число разрядов при данном максимальном числе уровней шкалы квантования у определяется из выражения m = log2(у MAKC). Если кодовое слово содержит m символов 0 и 1, то с помощью такого m разрядного двоичного кода можно закодировать числа до УМАКС = 2m. Так при m = 7 имеем максимальное число разрешенных уровней квантования, равное УМАКС =128, при m = 8, соответственно, УМАКС = 256, и при m = 16 - УМАКС = 65536.
Двоичные символы 0 и 1, входящие в состав кодовых слов, называю битами. Это слово произошло от английского «bit», составленного из словосочетания «binary digit», что в переводе с английского означает «двоичное число» Биты в кодовом слове имеют разный вес. Наименьший вес имеет младший бит а0, несущий информацию об одном шаге квантования. Старший значащий бит а m-1 несет информацию о 2 m-1 шагах квантования и имеет наибольший вес. Пусть например, кодируется отсчет, имеющий уровень квантования у = 115, а характеристика квантователя имеет максимальное число разрешенных уровней квантования у = 256. В этом случае кодовое слово будет иметь число разрядов m=log2 256 = 8 и кодируемый квантованный отсчет сигнала записывается в двоичной системе следующим образом:
у = 115 = 0·27+1·26+1·25+1·24+0·23+0·22+1·21+1·2°
и соответствующее ему кодовое слово имеет вид 01110011. Такой код называют
натуральным.
В цифровых системах связи и вещания распространены так называемые симметричные коды. Они характеризуются тем, что первый разряд кодового слова определяется полярностью сигнала, а остальные разряды несут информацию об абсолютном значении (модуле) кодируемого отсчета. Если кодируется сигнал положительной полярности, то первым битом кодового слова является 1, а если отрицательной полярности, то - 0. Разнополярные отсчеты, равные по абсолютному значению, в этом случае отличаются только первым символом в кодовом слове.
Обычно при передаче и записи к выходному сигналу АЦП добавляется дополнительная информация, служащая для повышения достоверности передачи и синхронизации. При этом кодовые слова, подвергаемые одновременной обработке, объединяются в блоки. Структура данных кодовых слов и отдельных символов в блоке называется форматом кода.
В цифровой звукотехнике стандартизованы два формата двоичного кодирования положительных и отрицательных чисел. В зарубежной технике в основном используется вариант, называемый 2S Complement format - двоичное Дополнение. В отечественной аппаратуре используется способ, называемый за Рубежом - offset binary (двоичный сдвиг).
В обоих форматах старший разряд является знаковым, при этом значащие положительные значения образуются обычным образом путем перевода десятичных значений в двоичные, а отрицательные значения - из соответствующих положительных путем инверсии значащей части и прибавления 1 в младшем Ряде. Однако есть и различие. В формате двоичного дополнения положительные числа обозначаются нулем - 0 в старшем разряде, а отрицательные -единицей (1); в формате двоичного сдвига - наоборот. Таким образом, переход из одного формата в другой сводится лишь к введению инверсии на знаковый разряд.
Все отечественные АЦП и ЦДЛ выполнены в формате двоичного сдвига, поэтому они не совместимы с импортной цифровой аппаратурой, в которой используется исключительно формат двоичного дополнения.
Дискретизация и квантование исходного сигнала, пропорционального передаваемому сообщению, являются первыми этапами кодирования. Для определения частоты дискретизации (тактовой частоты) используется теорема Котельникова, согласно которой
,
где - максимальная
частота спектра. Для телефонной передачи достаточно иметь
. Для перехода к
кодированному импульсному сигналу передается не бесконечное, а конечное число
разрешенных значений уровней дискретизированного сигнала, отстоящих друг от
друга на конечный интервал. Действительное значение сигнала заменяется
ближайшим разрешенным. Шкала разрешенных значений называется шкалой
квантования, а интервал между ними – шагом квантования. Квантование по сути
является округлением чисел. Естественно, чем меньше шаг квантования, тем ближе
квантованные значения к истинным.
Пусть
исходная функция подвержена дискретизации и квантованию.
Ошибкой кавнтования
называют разность между квантованным
значением
и
истинным значением
, т.е. передача квантованных значений
сигнала вместо истинных равносильна наложению на истинные значения помехи :
.
Последовательность и называют
помехой (или шумом) квантования.
Квантование позволяет производить дальнейшее кодирование сигнала (например, преобразовывать его в цифровой), и, кроме того, оно представляет собой мощное средство борьбы со случайными помехами, которые всегда возникают в системе связи. На приемном конце мы будем получать сигнал
где – мгновенное
напряжение помехи в момент отсчета. Помеха имеет случайный характер, никак не
контролируется, поэтому восстановить истинное значение
нельзя.
Если мы
знаем ,то
можно применить квантование с шагом, большим
. На приемной стороне сигнал
можно еще раз
проквантовать и, таким образом, избавиться от помехи. При округлении ближайшим
уровнем окажется тот, который передавался. Таким образом, повторное квантование
производит восстановление поврежденного помехой сигнала. Эту операцию можно
производить несколько раз, что предотвращает накопление помех. Это используется
в радиорелейных линиях связи.
Дискретизация и квантование сигналов
Любой звук (аудио сигнал) – это сложное по форме колебание, некая зависимость амплитуды звуковой волны от времени. Преобразование аналогового звукового сигнала в цифровой вид называется аналогово-цифровым преобразованием или оцифровкой. Процесс такого преобразования заключается в:
осуществлении замеров величины амплитуды аналогового сигнала с некоторым временным шагом – дискретизация; последующей записи полученных значений амплитуды в численном виде – квантование.
Процесс дискретизации по времени – это процесс получения мгновенных значений преобразуемого аналогового сигнала с определенным временным шагом, называемым шагом дискретизации (см рис.).
Дискретизация и квантование сигналов
Количество осуществляемых в одну секунду замеров величины сигнала называют частотой дискретизации или частотой выборки, или частотой сэмплирования (от англ. «sampling» – «выборка»). Очевидно, что чем меньше шаг дискретизации, тем выше частота дискретизации (то есть, тем чаще регистрируются значения амплитуды), и, значит, тем более точное представление о сигнале мы получаем. Это рассуждение подтверждается доказанной теоремой Котельникова (в зарубежной литературе встречается как теорема Шеннона, Shannon). Согласно этой теореме, аналоговый сигнал с ограниченным спектром может быть точно описан дискретной последовательностью значений его амплитуды, если эти значения следуют с частотой, как минимум вдвое превышающей наивысшую частоту спектра. На практике это означает следующее: для того, чтобы оцифрованный сигнал содержал информацию о всем диапазоне слышимых человеком частот исходного аналогового сигнала (0-20 кГц) необходимо, чтобы выбранное значение частоты дискретизации при оцифровке сигнала составляло не менее 40 кГц. Для завершения процесса оцифровки теперь осталось лишь записать измеренные мгновенные значения амплитуды сигнала в численной форме. Полученная последовательность чисел (по одному результату замера амплитуды сигнала на каждый шаг) и образует цифровую форму исходного аналогового сигнала – так называемый импульсный сигнал.
Большую часть информации об окружающей среде человек воспринимает через органы зрения и слуха. Это естественные для нас формы информации, которые мы сохраняем в виде изображений и звуковых записей на различных носителях.
Когда мы зрительно наблюдаем ту или иную область пространства и хотим сохранить ее описание, то приходим к выводу, что сделать это можно по-разному. Если планируется сохранить информацию в виде графического изображения, значит надо как-то описать каждый элемент области пространства. Но что это за элементы? Пространство непрерывно, одну и туже область можно разделить на десятки элементов, можно на тысячи, а можно согласиться с тем, что в нем бесчисленное количество элементов - различных точек, которые в свою очередь делятся на микроточки и т.д.
Компьютерная же память не резиновая. В ней невозможно сохранить бесконечно много информации. Только ограниченное количество, пусть и большое. Поэтому предполагаемое для описания пространство, должно быть умозрительно разделено на ограниченное количество элементов. И именно описание этих элементов будет сохранено в компьютерной памяти.
Дискретизация – это и есть разделение пространства или времени на фиксированные по размеру области (точки, которые точками, по сути, не являются) или отрезки. Так описываемое двумерное изображение разбивается на маленькие плоскости. В пределах каждой такой плоскости характеристики изображения считаются одинаковыми. Понятно, что при этом часть информации теряется. Мы не получаем точную копию реального объекта, мы лишь описываем его существенные характеристики.
Итак, мы условно разбили реальность на области и планируем хранить информацию только о них. Но какую информацию? Если это изображение, то наверно это должны быть какие-то характеристики изображения. Чем характеризуется изображение? Как минимум цветом и яркостью. А ведь эти характеристики также не дискретны, а могут иметь множество непрерывных значений и подзначений. Так степень яркости можно измерять очень точно, а можно приблизительно. Если обозначить полное отсутствие освещенности нулем, а ее максимальное значение – 99 и хранить только целые значения, то их окажется всего 100. Для возможности хранения 100 различных значений достаточно 27 = 128 бит. Но ведь можно измерять и сохранять степень яркости очень точно до тысячных долей единицы и тогда для хранения потребуется намного больше памяти (чтобы было можно записать туда все возможные значения).
Разделение непрерывного ряда значений какой-либо характеристики на ограниченное количество диапазонов называют квантованием. В компьютере сохраняется лишь номер диапазона, в который попало конкретное значение свойства.
Если при дискретизации разделяется время или пространство, то при квантовании этому подвергаются возможные значения свойств.
Понятно, что чем более дискретна и квантована естественная информация, тем более точно она сохранена в памяти компьютера. Однако этой памяти потребуется больше.
Человеческие органы чувств имеют свои ограничения. Поэтому различие в цвете двух точек мы можем не уловить, хотя их физические характеристики длин волн могут различаться. Поэтому в определенных значениях потеря информации может быть незаметна для человека.
Битрейт (англ. bit rate) — буквально, скорость прохождения битов информации. Битрейт принято использовать при измерении эффективной скорости передачи информации по каналу, то есть скорости передачи «полезной информации» (помимо таковой, по каналу может передаваться служебная информация — например, стартовые и стоповые биты при асинхронной передаче по RS-232 или контрольные символы при избыточном кодировании). Скорость передачи информации, учитывающую полную пропускную способность канала, измеряют в бодах.
Термин битрейт используется в двух основных значениях:
1. Характеристика канала или устройства — максимальное количество бит, которое можно передать в единицу времени.
2. Величина потока данных, передаваемого в реальном времени (минимальный размер канала, который сможет пропустить этот поток без задержек). Частный случай — битрейт сжатого звука или видео.
Битрейт выражается битами в секунду (бит/c, bps), а также производными величинами с приставками кило- (кбит/с, kbit/s, kbps), мега- (Мбит/с, Mbit/s, Mbps) и т. д.
В форматах потокового видео и аудио (например, MPEG и MP3), использующих сжатие c потерей качества, параметр «битрейт» выражает степень сжатия потока и, тем самым, определяет размер канала, для которого сжат поток данных. Чаще всего битрейт звука и видео измеряют в килобитах в секунду (англ. kilobit per second, kbps), реже — в мегабитах в секунду (только для видео).
Существует три режима сжатия потоковых данных:
1. с постоянным битрейтом (англ. Constant bitrate, CBR)
2. с переменным битрейтом (англ. Variable bitrate, VBR)
3. с усреднённым битрейтом (англ. Average bitrate, ABR)
Постоянный битре́йт — вариант кодирования потоковых данных, при котором пользователь изначально задаёт необходимый битрейт, который не меняется на протяжении всего файла.
Его главное достоинство — возможность довольно точно предсказать размер конечного файла.
Однако вариант с постоянным битрейтом не очень подходит для музыкальных произведений, звучание которых динамично изменяется во времени, так как не обеспечивает оптимального соотношения размер/качество.
С переменным битрейтом кодек выбирает значение битрейта исходя из параметров (уровня желаемого качества), причём в течение кодируемого фрагмента битрейт может изменяться. При сжатии звука нужный битрейт определяется на основе психоакустической модели. Данный метод даёт наилучшее соотношение качество/размер выходного файла, однако точный его размер оказывается очень плохо предсказуем. В зависимости от характера звука (или изображения, в случае кодирования видео), размер полученного файла может отличаться в несколько раз.
Усреднённый битрейт является гибридом постоянного и переменного битрейтов: битрейт в кбит/c задаётся пользователем, а программа варьирует его в некоторых пределах. Однако, в отличие от VBR, кодер с осторожностью использует максимально и минимально возможные значения битрейта, дабы не рисковать выйти за заданную пользователем среднюю величину. Также этот метод позволяет наиболее гибко задавать битрейт (для аудио это может быть любым числом между 8 и 320 кбит/с, против чисел, кратных 16 в методе CBR) и с гораздо большей (по сравнению с VBR) точностью предсказывать размер выходного файла.
Характерной особенностью большинства типов данных является их избыточность. Степень избыточности данных зависит от типа данных. Например, для видеоданных степень избыточности в несколько раз больше чем для графических данных, а степень избыточности графических данных, в свою очередь, больше чем степень избыточности текстовых данных. Другим фактором, влияющим на степень избыточности является принятая система кодирования. Примером систем кодирования могут быть обычные языки общения, которые являются ни чем другим, как системами кодирования понятий и идей для высказывания мыслей. Так, установлено, что кодирование текстовых данных с помощью средств русского языка дает в среднем избыточность на 20-25% большую чем кодирование аналогичных данных средствами английского языка.
Для человека избыточность данных часто связана с качеством информации, поскольку избыточность, как правило, улучшает понятность и восприятие информации. Однако, когда речь идет о хранении и передаче информации средствами компьютерной техники, то избыточность играет отрицательную роль, поскольку она приводит к возрастанию стоимости хранения и передачи информации. Особенно актуальной эта проблема стает в случае обработки огромных объемов информации при незначительных объемах носителей данных. В связи с этим, постоянно возникает проблема уменьшения избыточности или сжатия данных. Если методы сжатия данных применяются к готовым файлам, то часто вместо термина "сжатие данных" употребляют термин "архивация данных", сжатый вариант данных называют архивом, а программные средства, которые реализуют методы сжатия называются архиваторами.
В зависимости от того, в каком объекте размещены данные, подлежащие сжатию различают:
1. Сжатие (архивация) файлов: используется для уменьшения размеров файлов при подготовке их к передаче каналами связи или к транспортированию на внешних носителях маленькой емкости;
2. Сжатие (архивация) папок: используется как средство уменьшения объема папок перед долгим хранением, например, при резервном копировании;
3. Сжатие (уплотнение) дисков: используется для повышения эффективности использования дискового просторную путем сжатия данных при записи их на носителе информации (как правило, средствами операционной системы).
Существует много практических алгоритмов сжатия данных, но все они базируются на трех теоретических способах уменьшения избыточности данных. Первый способ состоит в изменении содержимого данных, второй - в изменении структуры данных, а третий - в одновременном изменении как структуры, так и содержимого данных.
Если при сжатии данных происходит изменение их содержимого, то метод сжатия называется необратимым, то есть при восстановлении (разархивировании) данных из архива не происходит полное восстановление информации. Такие методы часто называются методами сжатия с регулированными потерями информации. Понятно, что эти методы можно применять только для таких типов данных, для которых потеря части содержимого не приводит к существенному искажению информации. К таким типам данных относятся видео- и аудиоданные, а также графические данные. Методы сжатия с регулированными потерями информации обеспечивают значительно большую степень сжатия, но их нельзя применять к текстовым данным. Примерами форматов сжатия с потерями информации могут быть:
Если при сжатии данных происходит только изменение структуры данных, то метод сжатия называется обратимым. В этом случае, из архива можно восстановить информацию полностью. Обратимые методы сжатия можно применять к любым типам данных, но они дают меньшую степень сжатия по сравнению с необратимыми методами сжатия. Примеры форматов сжатия без потери информации:
Существует много разных практических методов сжатия без потери информации, которые, как правило, имеют разную эффективность для разных типов данных и разных объемов. Однако, в основе этих методов лежат три теоретических алгоритма:
Импульсно-кодовая модуляция (ИКМ, англ. Pulse Code Modulation, PCM) используется для оцифровки аналоговых сигналов. Практически все виды аналоговых данных (видео, голос, музыка, данные телеметрии, виртуальные миры) допускают применение ИКМ.
Чтобы получить на входе канала связи (передающий конец) ИКМ-сигнал из аналогового, мгновенное значение аналогового сигнала измеряется через равные промежутки времени. Количество оцифрованных значений в секунду (или скорость оцифровки, частота дискретизации) должно быть не ниже 2-кратной максимальной частоты в спектре аналогового сигнала (по теореме Котельникова). Мгновенное измеренное значение аналогового сигнала округляется до ближайшего уровня из нескольких заранее определённых значений. Этот процесс называется квантованием, а количество уровней всегда берётся кратным степени двойки, например, 8, 16, 32 или 64. Номер уровня может быть соответственно представлен 3, 4, 5 или 6 битами. Таким образом, на выходе модулятора получается набор битов (0 и 1).
На приёмном конце канала связи демодулятор преобразует последовательность битов в импульсы собственным генератором с тем же уровнем квантования, который использовал модулятор. Далее эти импульсы используются для восстановления аналогового сигнала в ЦАП.
Для хранения цифрового звука существует много различных способов. Как мы говорили, оцифрованный звук являет собой набор значений амплитуды сигнала, взятых через определенные промежутки времени. Таким образом, во-первых, блок оцифрованной аудио информации можно записать в файл «как есть», то есть последовательностью чисел (значений амплитуды). В этом случае существуют два способа хранения информации.
Первый - PCM (Pulse Code Modulation - импульсно-кодовая модуляция) - способ цифрового кодирования сигнала при помощи записи абсолютных значений амплитуд (бывают знаковое или беззнаковое представления). Именно в таком виде записаны данные на всех аудио CD.
Второй способ - ADPCM (Adaptive Delta PCM - адаптивная относительная импульсно-кодовая модуляция) – запись значений сигнала не в абсолютных, а в относительных изменениях амплитуд (приращениях). Во-вторых, можно сжать или упростить данные так, чтобы они занимали меньший объем памяти, нежели будучи записанными «как есть». Тут тоже имеются два пути.
Кодирование данных без потерь (lossless coding) - это способ кодирования аудио, который позволяет осуществлять стопроцентное восстановление данных из сжатого потока. К такому способу уплотнения данных прибегают в тех случаях, когда сохранение оригинального качества данных критично. Например, после сведения звука в студии звукозаписи, данные необходимо сохранить в архиве в оригинальном качестве для возможного последующего использования. Существующие сегодня алгоритмы кодирования без потерь (например, Monkeys Audio) позволяют сократить занимаемый данными объем на 20-50%, но при этом обеспечить стопроцентное восстановление оригинальных данных из полученных после сжатия. Подобные кодеры – это своего рода архиваторы данных (как ZIP, RAR и другие), только предназначенные для сжатия именно аудио.
Имеется и второй путь кодирования, на котором мы остановимся чуть подробнее, – кодирование данных с потерями (lossy coding). Цель такого кодирования - любыми способами добиться схожести звучания восстановленного сигнала с оригиналом при как можно меньшем объеме упакованных данных. Это достигается путем использования различных алгоритмов «упрощающих» оригинальный сигнал (выкидывая из него «ненужные» слабослышимые детали), что приводит к тому, что декодированный сигнал фактически перестает быть идентичным оригиналу, а лишь похоже звучит. Методов сжатия, а также программ, реализующих эти методы, существует много. Наиболее известными являются MPEG-1 Layer I,II,III (последним является всем известный MP3), MPEG-2 AAC (advanced audio coding), Ogg Vorbis, Windows Media Audio (WMA), TwinVQ (VQF), MPEGPlus, TAC, и прочие. В среднем, коэффициент сжатия, обеспечиваемый такими кодерами, находится в пределах 10-14 (раз). Надо особо подчеркнуть, что в основе всех lossy-кодеров лежит использование так называемой психоакустической модели, которая как раз и занимается «упрощением» оригинального сигнала. Говоря точнее, механизм подобных кодеров выполняет анализ кодируемого сигнала, в процессе которого определяются участки сигнала, в определенных частотных областях которых имеются неслышные человеческому уху нюансы (замаскированные или неслышимые частоты), после чего происходит их удаление из оригинального сигнала. Таким образом, степень сжатия оригинального сигнала зависит от степени его «упрощения»; сильное сжатие достигается путем «агрессивного упрощения» (когда кодер «считает» ненужными множественные нюансы), такое сжатие, естественно, приводит к сильной деградации качества, поскольку удалению могут подлежать не только незаметные, но и значимые детали звучания.
Как мы сказали, современных lossy-кодеров существует достаточно много. Наиболее распространенный формат – MPEG-1 Layer III (всем известный MP3). Формат завоевал свою популярность совершенно заслуженно – это был первый распространенный кодек подобного рода, который достиг столь высокого уровня компрессии при отличном качестве звучания. Сегодня этому кодеку имеется множество альтернатив, выбор остается за пользователем. К сожалению, рамки статьи не позволяют привести здесь тестирования и сравнения существующих кодеков, однако авторы статьи позволят себе привести некоторую информацию, полезную при выборе кодека.
Итак, преимущества MP3 – широкая распространенность и достаточно высокое качество кодирования, которое объективно улучшается благодаря разработкам различных кодеров MP3 энтузиастами (например, кодер Lame). Мощная альтернатива MP3 – кодек Microsoft Windows Media Audio (Файлы .WMA и .ASF). По различным тестам этот кодек показывает себя от «как MP3» до «заметно хуже MP3» на средних битрейтах, и, чаще, «лучше MP3» на низких битрейтах. Ogg Vorbis (файлы .OGG) – совершенно свободный от лицензирования кодек, создаваемый независимыми разработчиками. Чаще всего ведет себя лучше MP3, недостатком является лишь малая распространенность, что может стать критическим аргументом при выборе кодека для длительного хранения аудио. Вспомним и еще молодой кодек MP3 Pro, анонсированный в июле 2001 года компанией Coding Technologies совместно с Thomson Multimedia. Кодек является продолжением, или, точнее, развитием старого MP3 – он совместим с MP3 назад (полностью) и вперед (частично). За счет использования новой технологии SBR (Spectral Band Replication), кодек ведет себя заметно лучше других форматов на низких битрейтах, однако качество кодирования на средних и высоких битрейтах чаще уступает качеству почти всех описанных кодеков. Таким образом, MP3 Pro пригоден больше для ведения аудио трансляций в Internet, а также для создания превью песен и музыки.
Говоря о способах хранения звука в цифровом виде нельзя не вспомнить и о носителях данных. Всем привычный аудио компакт-диск, появившийся в начале 80-х годов, широкое распространение получил именно в последние годы (что связано с сильным удешевлением носителя и приводов). А до этого носителями цифровых данных являлись кассеты с магнитной лентой, но не обычные, а специально предназначенные для так называемых DAT-магнитофонов. Ничего примечательного – магнитофоны как магнитофоны, однако цена на них всегда была высокой, и такое удовольствие было не всем «по зубам». Эти магнитофоны использовались, в основном, в студиях звукозаписи. Преимущество таких магнитофонов было в том, что, не смотря на использование привычных носителей, данные на них хранились в цифровом виде и практически никаких потерь при чтении/записи на них не было (что очень важно при студийной обработке и хранении звука). Сегодня появилось большое количество различных носителей данных, кроме привычных всем компакт дисков. Носители совершенствуются и с каждым годом становятся более доступными и компактными. Это открывает большие возможности в области создания мобильных аудио проигрывателей. Уже сегодня продается огромное количество различных моделей переносных цифровых плееров. И, можно предположить, что это еще далеко не пик развития такого рода техники.
С точки зрения обычного пользователя выгоды много - компактность современных носителей информации позволяет ему, например, перевести все диски и пластинки из своей коллекции в цифровое представление и сохранить на долгие годы на небольшом трехдюймовом винчестере или на десятке-другом компакт дисков; можно воспользоваться специальным программным обеспечением и хорошенько «почистить» старые записи с бобин и пластинок, удалив из их звучания шумы и треск; можно также не просто скорректировать звучание, но и приукрасить его, добавить сочности, объемности, восстановить частоты. Помимо перечисленных манипуляций со звуком в домашних условиях, Интернет тоже приходит на помощь аудио-любителю. Например, сеть позволяет людям обмениваться музыкой, прослушивать сотни тысяч различных Интернет-радио станций, а также демонстрировать свое звуковое творчество публике, и для этого нужен всего лишь компьютер и Интернет. И, наконец, в последнее время появилась огромная масса различной портативной цифровой аудио аппаратуры, возможности даже самого среднего представителя которой зачастую позволяют с легкостью взять с собой в дорогу коллекцию музыки, равную по длительности звучания десяткам часов.
С точки зрения профессионала цифровой звук открывает поистине необъятные возможности. Если раньше звуковые и радио студии размещались на нескольких десятках квадратных метров, то теперь их может заменить хороший компьютер, который по возможностям превосходит десять таких студий вместе взятых, а по стоимости оказывается многократно дешевле одной. Это снимает многие финансовые барьеры и делает звукозапись более доступной и профессионалу и простому любителю. Современное программное обеспечение позволяет делать со звуком все что угодно. Раньше различные эффекты звучания достигались с помощью хитроумных приспособлений, которые не всегда являли собой верх технической мысли или же были просто устройствами кустарного изготовления. Сегодня, самые сложные и просто невообразимые раньше эффекты достигаются путем нажатия пары кнопок. Конечно, вышесказанное несколько утрировано и компьютер не заменяет человека – звукооператора, режиссера или монтажера, однако с уверенностью можно сказать, что компактность, мобильность, колоссальная мощность и обеспечиваемое качество современной цифровой техники, предназначенной для обработки звука, уже сегодня почти полностью вытеснило из студий старую аналоговую аппаратуру.
Конечно, цифровая техника тоже имеет свои недостатки. Многие (профессионалы и любители) отмечают, что аналоговый звук слушался живее. И это не просто дань прошлому. Как мы сказали выше, процесс оцифровки вносит определенную погрешность в звучание, кроме того, различная усиливающая цифровая аппаратура привносит так называемые «транзисторные шумы» и другие специфические искажения. Термину «транзисторный шум», пожалуй, нет точного определения, но можно сказать, что это хаотичные колебания в области высоких частот. Не смотря на то, что слуховой аппарат человека способен воспринимать частоты до 20 кГц, похоже, все-таки, человеческий мозг улавливает и более высокие частоты. И именно на подсознательном уровне человек все же ощущает аналоговое звучание чище, чем цифровое.
Впрочем, у цифрового представления данных есть одно неоспоримое и очень важное преимущество – при сохранном носителе данные на нем не искажаются с течением времени. Если магнитная лента со временем размагничивается и качество записи теряется, если пластинка царапается и к звучанию прибавляются щелчки и треск, то компакт-диск / винчестер / электронная память либо читается (в случае сохранности), либо нет, а эффект старения отсутствует. Важно отметить, мы не говорим здесь об Audio CD (CD-DA – стандарт, устанавливающий параметры и формат записи на аудио компакт диски) так как несмотря на то, что это носитель цифровой информации, эффект старения его, все же, не минует. Это связано с особенностями хранения и считывания аудио данных с Audio CD.
Информация на всех типах компакт-дисков хранится покадрово и каждый кадр имеет заголовок, по которому его возможно идентифицировать. Однако различные типы CD имеют различную структуру и используют различные методы маркировки кадров. Поскольку компьютерные приводы CD-ROM рассчитаны на чтение в основном Data-CD (надо сказать, что существуют различные разновидности стандарта Data-CD, каждый из которых дополняет основной стандарт CD-DA), они часто не способны правильно «ориентироваться» на Audio CD, где способ маркировки кадров отличен от Data-CD (на аудио CD кадры не имеют специального заголовка и для определения смещения каждого кадра необходимо следить за информацией в кадре). Это означает, что если при чтении Data-CD привод легко «ориентируется» на диске и никогда не перепутает кадры, то при чтении с аудио компакт диска привод не может ориентироваться четко, что при появлении, скажем, царапины или пыли может привести к чтению неправильного кадра и, как следствие, скачку или треску звучания. Эта же проблема (неспособность большинства приводов правильно позиционироваться на CD-DA) является причиной еще одного неприятного эффекта: копирование информации с Audio CD вызывает проблемы даже при работе с полностью сохранными дисками вследствие того, что правильное «ориентирование на диске» полностью зависит от считывающего привода и не может быть четко проконтролировано программным путем.
Повсеместное распространение и дальнейшее развитие уже упомянутых lossy-кодеров аудио (MP3, AAC и других) открыло широчайшие возможности распространения и хранения аудио. Современные каналы связи уже давно позволяют пересылать большие массивы данных за сравнительно небольшое время, однако самой медленной остается передача данных между конечным пользователем и поставщиком услуг связи. Телефонные линии, по которым пользователи в большинстве своем связываются с Интернетом, не позволяют осуществлять быструю передачу данных. Нечего и говорить, что такие объемы данных, какие занимает несжатая аудио и видео информация, передавать по привычным каналам связи придется очень долго. Однако появление lossy-кодеров, обеспечивающих десяти-пятнадцати кратное сжатие, превратило передачу и обмен аудио данными в повседневное занятие каждого пользователя Интернета и сняло все преграды, образованные слабыми каналами связи. Касательно этого нужно сказать, что развивающаяся сегодня семимильными шагами цифровая мобильная связь во многом обязана именно lossy-кодированию. Дело в том, что протоколы передачи аудио по каналам мобильной связи работают на приблизительно тех же принципах, что и известные всем музыкальные кодеры. Поэтому дальнейшее развитие в области кодирования аудио неизменно ведет к уменьшению стоимости передачи данных в мобильных системах, от чего конечный пользователь только выигрывает: дешевеет связь, появляются новые возможности, продлевается время работы батарей мобильных устройств и т.д. Не в меньшей степени lossy-кодирование помогает экономить деньги на покупке дисков с любимыми песнями – сегодня стоит только зайти в Интернет и там можно найти почти любую интересующую песню. Безусловно, такое положение вещей давно «мозолит глаза» звукозаписывающим компаниям – у них под носом люди вместо покупки дисков обмениваются песнями прямо через Интернет, что превращает некогда золотое дно в малоприбыльный бизнес, но это уже вопрос этики и финансов. Одно можно сказать с уверенностью: с таким положением вещей уже ничего нельзя поделать и бум обмена музыкой через Интернет, порожденный именно появлением lossy-кодеров, уже ничем не остановить. А это только на руку рядовому пользователю.
7.Аппаратное обеспечение и форматы потокового звука
Звуковые
платы могут быть построены с использованием разных технологий —
частотномодуляционного синтеза, простого сэмплерного преобразования и
табличноволнового синтеза. Эти методы синтеза были рассмотрены в главе № 1.
Существуют следующие разновидности звуковых карт:
Звуковые карты на синтезаторах с частотной модуляцией (FMсинтезаторы)
Музыкальные карты на табличноволновых синтезаторах (WTсинтезаторы, или
сэмплеры). (На таких картах размещаются также эффектпроцессоры, позволяющие
придавать звукам дополнительную окраску.)
Звукомузыкальные карты, представляющие комбинации FMWT
Музыкальные дочерние платы на WTсинтезаторах, которые устанавливаются в
26контактные разъемы основной карты
Основные параметры звуковой платы — разрядность, максимальная частота
дискретизации, количество звуковых каналов акустической системы, параметры
синтезатора, расширяемость, совместимость.
Для записи с аналоговых источников достаточно подключить эти источники к
линейному входу ПК посредством шнура .со стандартным разъемом MiniJack (RJ15).
Для подключения цифровых источников звука используются соответствующие
интерфейсные разъемы звуковой платы, например S/PDIF, ADAT и т.д.
Разработка звуковых плат
Сначала звуковые платы использовались только для игр. В конце 1980-х годов несколько компаний (AdLib, Roland и Creative Labs) представили свои продукты. В 1989 году компания Creative Labs выпустила стереозвуковую плату Game Blaster, предназначенную для использования с некоторыми играми. Но у многих покупателей возникал вопрос: "Зачем платить 100 долларов за устройство, которое озвучивает 50-долларовую игру?". Кроме того, из-за отсутствия стандартов приобретенная плата могла оказаться совершенно бесполезной для других игр.
Game Blaster был вскоре заменен стандартом Sound Blaster, который был совместим со звуковыми платами AdLib и Creative Labs Game Blaster и вскоре стал общепринятым. Оригинальная плата Sound Blaster имела встроенный разъем для микрофона, стереовы-ход и MIDI-порт для подключения к компьютеру синтезаторов или других музыкальных инструментов.
Таким образом было положено начало новой эры звуковых адаптеров с определенным набором функций, которая продолжается по сей день и охватывает как отдельные платы, так и интегрированные в системную плату звуковые микросхемы. Следующая модель, Sound Blaster Pro, обладала еще более продвинутыми функциями и улучшенным качеством звучания. Со временем Sound Blaster Pro и ее преемники стали, по сути, мировым стандартом для воспроизведения звука на компьютере.
Microsoft DirectX представляет собой целую серию программируемых интерфейсов приложения (Application Program Interfaces — API), которые внедряются между мультимедийными приложениями и аппаратными средствами. В отличие от программ MS DOS, разработчикам которых приходилось обеспечивать аппаратную поддержку с многочисленными моделями и марками звуковых плат, видеоадаптеров и игровых контроллеров, в Windows используется интерфейс DirectX, взаимодействующий непосредственно с устройствами аппаратного обеспечения.
Это повышает эффективность программ и освобождает разработчиков от необходимости изменять параметры приложений при работе с различными устройствами, так как можно использовать различные подпрограммы универсального интерфейса DirectX.
DirectX служит гарантией того, что новые звуковые платы и наборы микросхем системной логики будут должным образом работать с различными версиями Windows.
.
Разъемы звуковых плат
Большинство звуковых плат имеют одинаковые разъемы. Через эти миниатюрные (1/8 дюйма) разъемы сигналы подаются с платы на акустические системы, наушники и входы стереосистемы; к аналогичным разъемам подключается микрофон, проигрыватель компакт-дисков и магнитофон. На рис. показаны четыре типа разъемов, которые, как минимум, должны быть установлены на вашей звуковой плате. Цветовые обозначения разъемов каждого типа определены в руководстве PC99 Design Guide и могут варьироваться для различных звуковых адаптеров.
Линейный выход платы. Сигнал с этого разъема можно подать на внешние устройства — акустические системы, наушники или вход стереоусилителя, с помощью которого сигнал можно усилить до определенного уровня. В некоторых звуковых платах, например в Microsoft Windows Sound System, имеются два выходных гнезда: одно для сигнала левого канала, а другое — для правого.
Линейный вход платы. Этот входной разъем используется при микшировании или записи звукового сигнала, поступающего от внешней аудиосистемы на жесткий диск.
Разъем для акустической системы и наушников. Этот разъем присутствует не во всех платах и обеспечивает нормальный уровень громкости для наушников и небольших акустических систем. Выходная мощность большинства звуковых плат составляет примерно 4 Вт. В настоящее время, как правило, этот разъем используется для задних громкоговорителей в акустической системе с четырьмя источниками звука. Иногда разъем отключен по умолчанию; при подключении задних динамиков для активизации порта необходимо просмотреть параметры аудиоадаптера или конфигурационной утилиты.
Микрофонный вход, или вход монофонического сигнала. К этому разъему подключается микрофон для записи на диск голоса или других звуков. Запись с микрофона является монофонической. Для повышения качества сигнала во многих звуковых платах используется автоматическая регулировка усиления (Automatic Gain Control — AGC). Уровень входного сигнала при этом поддерживается постоянным и оптимальным для преобразования. Для записи лучше всего использовать электродинамический или конденсаторный микрофон, рассчитанный на сопротивление нагрузки от 600 Ом до 10 кОм. В некоторых дешевых звуковых платах микрофон подключается к линейному входу.
Разъем для джойстика/MIDI. Для подключения джойстика используется 15-контактный D-образный разъем. Два его контакта можно использовать для управления устройством MIDI, например клавишным синтезатором. (В этом случае необходимо приобрести Y-образный кабель.) Некоторые звуковые платы для устройств MIDI имеют отдельный разъем. В современных компьютерах порт для джойстика может иногда находиться на системной плате или на отдельной плате расширения. В этом случае при подключении игрового контроллера необходимо уточнить, какой именно используется в текущей конфигурации операционной системы. В некоторых новейших аудиоадаптерах и встроенных звуковых системах этот разъем отсутствует, поскольку новое поколение игровых манипуляторов подключается к разъему USB
Замечание
В новых системах со встроенной звуковой микросхемой нет разъема для джойстика и
разъема MIDI. Тем не менее цифровые игровые контроллеры, у которых есть игровой
порт или разъем USB, можно подключать к порту USB. И, как уже отмечалось,
устройства MIDI можно подключить к интерфейсному модулю с помощью разъема USB
Многие звуковые платы имеют специальный 4-контактный разъем (а иногда и не один) для подключения ко внутреннему накопителю CD-ROM (рис. 16.2). Подобное соединение позволяет передавать аудиосигналы с дисковода CD-ROM непосредственно к аудиоадаптеру и прослушивать аудиокомпакт-диски через акустическую систему.
Данные по этому внутреннему разъему не передаются на шину компьютера. При установке CD-ROM, CD-RW, дисковода DVD или нового звукового адаптера не забудьте соединить дисковод и звуковую плату с помощью внутреннего кабеля; в противном случае могут возникнуть проблемы с воспроизведением музыкальных компакт-дисков или звуковым сопровождением некоторых игр.
.
Дополнительные разъемы
Большинство современных звуковых адаптеров поддерживают возможности воспроизведения DVD, обработки звука и т. д., а следовательно, имеют несколько дополнительных разъемов.
· Вход и выход MIDI. Такой разъем, не совмещенный с игровым портом, позволяет одновременно использовать как джойстик, так и внешние устройства MIDI. Типичное расположение: внешнее устройство.
· Вход и выход SPDIF (SP/DIF). Этот разъем (Sony/Philips Digital Interface) используется для передачи цифровых аудиосигналов между устройствами без их преобразования к аналоговому виду. Некоторые производители интерфейс SPDIF называют Dolby Digital. Типичное расположение — внешнее устройство.
Замечание
В соединителях SPDIF используются кабели со стандартным разъемом RCA, имеющие
волновое сопротивление, равное 75 Ом (как и кабели составного видеосигнала).
Это позволяет использовать кабели составного видеосигнала, имеющие разъемы RCA,
с соединителями SPDIF. Несмотря на то что звуковые кабели тоже оснащены
разъемами RCA, их волновое сопротивление меньше, что ограничивает их
использование в таком качестве.
· CD SPDIF. Этот разъем предназначен для подключения накопителя CD-ROM к звуковой плате с помощью интерфейса SPDIF. Типичное расположение — задняя панель аудиоадаптера.
· Вход TAD. Разъем для подключения модемов с поддержкой автоответчика (Telephone Answering Device) к звуковой плате. Типичное расположение — задняя панель аудиоадаптера.
· Цифровой выход DIN. Этот разъем предназначен для подключения многоканальных цифровых акустических систем. Типичное расположение — внешнее устройство.
· Вход Aux. Обеспечивает подключение к звуковой карте других источников сигнала, например телетюнера. Типичное расположение — задняя панель аудиоадаптера.
· Вход I2S. Позволяет подключать к звуковой карте цифровой выход внешних источников, например DVD. Типичное расположение — задняя панель аудиоадаптера.
· Порт USB. Позволяет подключать звуковую плату к акустической системе USB, игровым контроллерам и другим USB-устройствам. В первом аудиоадаптере со встроенными портами USB — Hercules Game Theater XP — поддерживается только интерфейс USB 1.1. Тем не менее следующие версии этой модели будут оснащены USB 2.0. Типичное расположение — внешнее устройство.
· IEEE-1394. Посредством этого разъема к звуковой плате подключаются цифровые видеокамеры, сканеры, жесткие диски и другие устройства. В разъем SB 1394 аудиоадаптера Sound Blaster Audigy можно подключать как устройства ШЕЕ-1394, так и устройства, поддерживающие новый стандарт Creative Labs — SB 1394. Типичное расположение — дополнительная панель или внешнее устройство.
.
1. Аналоговый/цифровой выход
2. Линейный вход
3. Микрофонный вход
4. Передний линейный выход
5. Задний линейный выход
6. Порт SB1394 (по одному на плате и на внешнем модуле)
7. Вход/выход SPDIF
8. Оптический вход/выход
9. Выход для наушников
10. Регулятор громкости наушников
11. Левый/правый вход Aux
12. Линейный вход
13. Регулятор громкости для линейного входа
14. Вход/выход MIDI
Рис. Система Sound Blaster Audigy Platinum поставляется с внешним интерфейсным модулем Audigy Drive, который оснащен множеством полезных разъемов.
Дополнительные разъемы обычно располагаются непосредственно на звуковой плате или подсоединяются к внешнему блоку или дочерней плате. Например, Sound Blaster Audigy Platinum, Platinum EX и Hercules Game Theater представляют собой устройство, состоящее из двух частей. Сам звуковой адаптер подключается в разъем PCI, а дополнительные соединители подсоединяются к внешнему интерфейсному модулю (рис.), который устанавливается в неиспользуемый отсек дисковода. У профессионального аудиоадаптера Platinum EX есть внешний интерфейсный модуль с разнообразными разъемами. Для обеих моделей предусмотрен пульт дистанционного управления.
Уровень выходного аудиосигнала практически всех современных звуковых адаптеров регулируется с помощью диалогового меню Свойства: Звуки и аудиоустройства, открыть которое можно в окне Панель управления или в панели задач (рядом с часами). При переходе от обычного аудиоадаптера к профессиональной акустической системе Dolby Digital 5.1 необходимо настроить параметры в меню Громкость и выбрать нужные источники аудиосигнала, а также определить уровень громкости для входящего и исходящего аудиосигнала, генерируемого аудиоадаптером или внешним интерфейсным модулем.
В некоторых старых звуковых адаптерах есть специальный регулятор громкости, расположенный рядом с разъемами ввода-вывода. Подобный регулятор может вызвать некоторые затруднения, поскольку, если он выключен, пользователь будет долго искать причину плохого звучания.
В настоящее время все выпускаемые платы являются стереофоническими, поддерживающими стандарт MIDI.
Стереофонические звуковые платы одновременно воспроизводят (и записывают) несколько сигналов от двух различных источников. Сигнал — это один звук, производимый аудиоадаптером. В струнном квартете используется четыре сигнала — по одному на каждый инструмент. С другой стороны, такой полифонический музыкальный инструмент, как пианино, требует для каждой ноты аккорда отдельного сигнала. Следовательно, для точного воспроизведения игры пианиста понадобится 10 сигналов — по одному на каждый палец. Чем больше сигналов предусмотрено в адаптере, тем натуральнее оказывается его звучание. Наилучшие на сегодняшний день аудиоадаптеры способны одновременно воспроизводить до 1024 сигналов.
Популярные ранее микросхемы синтезатора, расположенные на системной плате (например, компании Yamaha), позволяли получить 11 (микросхема YM3812 или OPL2) и более сигналов; микросхема OPL3 поддерживала до 20 сигналов и стереофонический звук. Тем не менее для поддержки MIDI в большинстве современных звуковых систем используются записанные заранее звуковые схемы; подобные системы называются таблично-волновыми синтезаторами.
В таблично-волновых звуковых платах вместо синтезированных звуков, генерируемых микросхемой частотной модуляции, используются цифровые записи реальных инструментов и звуковых эффектов. Например, при воспроизведении таким аудиоадаптером звука трубы вы действительно слышите непосредственно звук трубы, а не его имитацию.
Первые звуковые платы, поддерживающие эту функцию, содержали до 1 Мбайт звуковых фрагментов, хранящихся в микросхемах памяти адаптера. Но в результате появления высокоскоростной шины PCI и увеличения объема оперативной памяти компьютеров в большинстве звуковых плат в настоящее время используется так называемый программируемый таблично-волновой метод, позволяющий загружать в оперативную память компьютера 2-8 Мбайт коротких звуковых фрагментов различных музыкальных инструментов.
В данный момент звуковые системы в полной мере поддерживают таблично-волновой синтез, а улучшенные звуковые функции DirectX 8.x и выше сделали возможным использование MIDI для записи игровых фонограмм.
Важнейшим фактором популярности MIDI является количество аппаратно реализуемых сигналов. Даже в наилучших звуковых адаптерах, таких, как Sound Blaster Audigy, аппаратно поддерживается только 64 сигнала; все остальные звуки, необходимые для воспроизведения MIDI-фонограммы, реализуются программно. Если звуковая плата поддерживает аппаратно только 32 сигнала MIDI или использует исключительно программный синтез, подумайте о приобретении новой модели.
В большинстве плат качество звучания соответствует качеству компакт-дисков с частотой дискретизации 44,1 кГц. При такой частоте на каждую минуту звучания при записи даже обычного голоса расходуется около 11 Мбайт дискового пространства. Чтобы уменьшить размеры звуковых файлов, во многих платах используется сжатие данных. Например, в плате Sound Blaster ASP 16 оно осуществляется в реальном времени (непосредственно при записи) со степенью сжатия звука 2:1, 3:1 или 4:1.
Поскольку для хранения звукового сигнала необходим большой объем дискового пространства, в большинстве звуковых плат выполняется его сжатие методом адаптивной дифференциальной импульсно-кодовой модуляции (Adaptive Differential Pulse Code Modulation — ADPCM), что позволяет сократить размер файла примерно на 50%. Посредством метода IMA-ADPCM 16-битовый линейный звуковой сигнал сжимается до 4 бит на каждый сигнал.
Правда, при этом ухудшается качество звука. Именно поэтому стандарта на ADPCM пока нет. Например, хотя компании Apple и Microsoft и внедряют поддержку IMA-ADPCM в свои продукты, делается это по-разному. Форматы AIFF от Apple и WAV от Microsoft несовместимы и для их воспроизведения нужен специальный программный проигрыватель.
Во время установки звукового адаптера происходит инсталляция нескольких кодеков (программ, выполняющих компрессию и декомпрессию видеоданных и стереофонического звука). Наряду со многими другими программами, устанавливается и одна из разновидностей ADPCM.
Для того чтобы определить, какие программы аудиосжатия установлены в вашей системе, откройте Панель управления (Control Panel) и дважды щелкните на значке Мультимедиа (Multimedia) (Windows 9x), Звуки и мультимедиа (Sounds and Multimedia) (Windows 2000) или Звуки и аудиоустройства (Windows XP). В операционной системе Windows 9x перейдите на вкладку Устройства (Devices) и щелкните на значке "+", который находится рядом с параметром Программы аудиосжатия (Audio Compression), для того чтобы открыть список установленных кодеков.
Перечень звуковых кодеков и их свойств в Windows 2000/XP расположен в меню Оборудование (Hardware). Для использования собственной аудиозаписи в другой системе оба компьютера должны использовать одну и ту же программу сжатия аудиоданных. Этот общий кодек, используемый для записи звуков, можно выбрать с помощью программы Звукозапись (Windows Sound Recorder).
Однако наиболее популярным стандартным алгоритмом сжатия является MPEG (Motion Pictures Experts Group), с помощью которого можно упаковывать как звук, так и изображение. Он популярен в "некомпьютерной" сфере и используется в DVD-проигрывателях. С помощью этого метода достигается степень сжатия 30:1 и даже выше. Популярный формат сжатия звуковых файлов .mp3 использует схемы сжатия, аналогичные MPEG.
Во многих звуковых платах используются процессоры цифровой обработки сигналов (Digital Signal Processor — DSP). Благодаря им платы стали более "интеллектуальными" и освободили центральный процессор компьютера от выполнения таких трудоемких задач, как очистка сигналов от шума и сжатие данных в реальном времени.
Процессоры устанавливаются во многих универсальных звуковых платах. Например, программируемый процессор цифровой обработки сигналов платы Sound Blaster Live! ЕМU10К2 сжимает данные, преобразует текст в речь и синтезирует так называемое трехмерное звучание. Кроме того, процессор поддерживает аппаратную акселерацию звука в соответствии с новейшими версиями стандартов DirectX/DirectSound 3D, благодаря чему реализуется одновременное воспроизведение нескольких звуков и их синхронизация с действиями, разворачивающимися в компьютерной игре.
Чтобы улучшить качество звука аудиопотоков, можно программно обновить DSP. Благодаря широкой распространенности аудиоадаптеров с высококачественными DSP пользователь имеет возможность проводить программное обновление устройства, а не тратить время и силы на его физическую замену.
Несмотря на то что к широким звуковым возможностям компьютеров все уже привыкли, требования к используемым звуковым устройствам существенно возросли, что повлекло за собой необходимость повышения мощности аппаратных средств. Унифицированное мультимедийное аппаратное обеспечение, используемое сегодня в большинстве компьютеров, не может в полной мере считаться совершенной мультимедийной системой, включающей следующие свойства:
· реалистичный объемный звук в компьютерных играх;
· высококачественный звук в DVD-фильмах;
· распознавание речи и голосовое управление;
· создание и запись звуковых файлов форматов MIDI, MP3, WAV и CD-Audio.
Благодаря широкому распространению звуковых адаптеров компьютерные игры вышли на качественно новый уровень. Поддержка трехмерного звука, цифровой системы объемного звучания и MIDI-музыки позволили достичь современным компьютерным играм более высокого уровня реализма, что было ранее невозможным даже при использовании наиболее совершенных видеоадаптеров. Обычное стереофоническое воспроизведение звука оказалось недостаточным для любителей компьютерных игр, жаждущих содрогнуться от рева монстров за собственной спиной или в полной мере прочувствовать атмосферу автомобильной катастрофы.
Чтобы ощутить себя реальным участником на поле боя, пользователям следует выбирать звуковую плату, поддерживающую четыре или более колонок, а также одну из технологий направленного звука, например EAX компании Creative Labs, используемую в Sound Blaster Live!/Audigy, или технологию 3D Positional Audio от Sensaura, применяемую компаниями ESS, VideoLogic, Analog Devices, C-Media и NVIDIA. Поддержка этих стандартов осуществлена во многих звуковых платах на аппаратном уровне или посредством эмуляции/преобразования программного обеспечения.
Звуковые платы, созданные в течение последних лет, достаточно успешно справляются с требованиями современных компьютерных игр, что происходит, большей частью, благодаря уровню эмуляции аппаратных средств (Hardware Emulation Layer — HEL), встроенному в DirectX. HEL предоставляет звуковым платам более ранних версий программную реализацию отсутствующих аппаратных возможностей, например трехмерного звука. Следует заметить, что выполнение эмуляции не обеспечивает должного качества звука и может ощутимо сказаться на скорости компьютерных игр.
Для полноценного участия в компьютерных баталиях следует обратить внимание на описанные ниже возможности звуковых плат.
· Поддержка трехмерного звука, реализованная в наборе микросхем. Выражение трехмерный звук означает, что звуки, соответствующие происходящему на экране, раздаются дальше или ближе, за спиной или где-то в стороне. Microsoft DirectX 8/9.x включает в себя поддержку трехмерного звука, однако для этого лучше использовать аудиоадаптер с аппаратно встроенной поддержкой трехмерного звука.
· DirectX 8/9.x может использоваться наряду с другими API трехмерного звука, к которым относятся, например, EAX и EAX 2.0 компании Creative, 3D Positional Audio компании Sensaura и технология A3D ныне не существующей компании Aureal.
· D-звуковое ускорение. Звуковые платы с наборами микросхем, поддерживающими эту возможность, имеют достаточно низкий коэффициент загрузки процессора, что приводит к общему увеличению скорости игр. Для получения наилучших результатов воспользуйтесь наборами микросхем, поддерживающих ускорение наибольшего числа 3D-потоков; в противном случае при обработке трехмерного звука центральный процессор может столкнуться с определенными трудностями, что в конечном счете скажется на скорости игры. Это особенно важно для систем с частотой процессора менее 1 ГГц или при работе с высоким разрешением и глубиной цвета (от 1024?768/32 бит).
· Игровые порты, поддерживающие игровые контроллеры с силовой обратной связью. Если компьютерные игры недостаточно корректно работают с контроллерами USB или игровые контроллеры с силовой обратной связью используют только сам игровой порт, проверьте его настройки.
Чтобы понять, что такое звуковые платы, сначала необходимо разобраться в некоторых терминах, например 16-разрядный, качество компакт-диска, порт MIDI и др. В описаниях новых технологий звукозаписи постоянно встречаются такие туманные понятия, как дискретизация и цифроаналоговый преобразователь — ЦАП (Digital-to-Analog Conversion — DAC). Эти понятия раскрываются ниже.
Природа звука
Для начала выясним, что такое звук. Звук — это колебания (волны), распространяющиеся в воздухе или другой среде от источника колебаний во всех направлениях. Когда волны достигают вашего уха, расположенные в нем чувствительные элементы воспринимают эту вибрацию и вы слышите звук.
Каждый звук характеризуется частотой и интенсивностью (громкостью).
Частота — это количество звуковых колебаний в секунду; она измеряется в герцах (Гц). Один цикл (период) — это одно движение источника колебания (туда и обратно). Чем выше частота, тем выше тон.
Человеческое ухо воспринимает лишь небольшой диапазон частот. Очень немногие слышат звуки ниже 16 Гц и выше 20 кГц (1 кГц = 1 000 Гц). Частота звука самой низкой ноты на рояле равна 27 Гц, а самой высокой — чуть больше 4 кГц. Наивысшая звуковая частота, которую могут передать радиовещательные FM-станции, — 15 кГц.
Громкость звука определяется амплитудой колебаний. Амплитуда звуковых колебаний зависит в первую очередь от мощности источника звука. Например, струна пианино при слабом ударе по клавише звучит тихо, поскольку диапазон ее колебаний невелик. Если же ударить по клавише посильнее, то амплитуда колебаний струны увеличится. Громкость звука измеряется в децибелах (дБ). Шорох листьев, например, имеет громкость около 20 дБ, обычный уличный шум — около 70 дБ, а близкий удар грома — 120 дБ.
Оценка качества звукового адаптера
Для оценки качества звукового адаптера используется три параметра:
· диапазон частот;
· коэффициент нелинейных искажений;
· отношение сигнал/шум.
Частотная характеристика определяет тот диапазон частот, в котором уровень записываемых и воспроизводимых амплитуд остается постоянным. Для большинства звуковых плат этот диапазон составляет от 30 Гц до 20 кГц.
Коэффициент нелинейных искажений характеризует нелинейность звуковой платы, т. е. отличие реальной кривой частотной характеристики от идеальной прямой, или, проще говоря, коэффициент характеризует чистоту воспроизведения звука. Каждый нелинейный элемент является причиной искажения. Чем меньше этот коэффициент, тем выше качество звука. Этот коэффициент может различаться для аудиоадаптеров с одинаковым набором микросхем. Модели с дешевыми компонентами зачастую имеют значительные искажения, что ухудшает качество звука.
Отношение сигнал/шум характеризует силу звукового сигнала по отношению к фоновому шуму (шипению). Чем больше показатель (в децибелах), тем лучше качество воспроизведения звука. Например, аудиоадаптер Sound Blaster Audigy имеет отношение 100 дБ, в то время как более старая звуковая плата характеризуется отношением 90 дБ.
Перечисленные факторы имеют важное значение для всех сфер применения аудиоадаптеров — от воспроизведения файла WAV до распознавания речи. Не забывайте о том, что дешевые микрофон и акустическая система могут свести на нет все преимущества дорогого аудиоадаптера.
Дискретизация
Если в компьютере установлена звуковая плата, то он может записывать звук в цифровой (называемой также дискретной) форме, в этом случае компьютер используется в качестве записывающего устройства. В состав звуковой платы входит небольшая микросхема — аналого-цифровой преобразователь, или АЦП (Analog-to-Digital Converter — ADC), который при записи преобразует аналоговый сигнал в цифровую форму, понятную компьютеру. Аналогично при воспроизведении цифроаналоговый преобразователь (Digital-to-Analog Converter — DAC) преобразует аудиозапись в звук, который способны воспринимать наши уши.
Дискретизацией называется процесс превращения исходного звукового сигнала в цифровую форму (рис.), в которой он и хранится для последующего воспроизведения. (Процесс преобразования в цифровую форму называется также оцифровыванием.) При этом сохраняются мгновенные значения звукового сигнала в определенные моменты времени, называемые выборками. Чем чаще берутся выборки, тем точнее цифровая копия звука соответствует оригиналу
.
Первым стандартом MPC предусматривался "8-разрядный" звук. Это не означает, что звуковые платы должны были вставляться в 8-разрядный разъем расширения. Разрядность звука характеризует количество бит, используемых для цифрового представления каждой выборки. При восьми разрядах количество дискретных уровней звукового сигнала составляет 256, а если использовать 16 бит, то их количество достигает 65 536. Современные высококачественные аудиоадаптеры поддерживают 24-битовую дискретизацию, причем количество дискретных уровней звукового сигнала составляет более чем 16,8 млн.
Большинство компаний, занимающихся изготовлением звуковых устройств (кроме Creative Labs и Philips), зависят от сторонних производителей звуковых микросхем.
· Cirrus Logic/Crystal Semiconductors.
· ESS Technology.
· C-Media Electronics (CMI).
· ForteMedia, Inc.
· Realtek.
Одним из наиболее сложных испытаний для звуковых плат, входящих в состав игровых систем, является выполнение задач, связанных с обработкой трехмерного звука. Существует несколько факторов, усложняющих решение задач подобного рода:
· разные стандарты позиционирования звука;
· аппаратное и программное обеспечение, используемое для обработки трехмерного звука;
· проблемы, связанные с поддержкой DirectX.
Позиционный звук
Позиционирование звука является общей технологией для всех 3D-звуковых плат и включает в себя настройку определенных параметров, таких, как реверберация или отражение звука, выравнивание (баланс) и указание на "расположение" источника звука. Все эти компоненты создают иллюзию звуков, раздающихся впереди, справа, слева от пользователя или даже за его спиной.
Наиболее важным элементом позиционного звука является функция преобразования HRTF (Head Related Transfer Function), определяющая изменение восприятия звука в зависимости от формы уха и угла поворота головы слушателя. Параметры этой функции определяют условия, при которых "реалистичный" звук может восприниматься совершенно иначе при повороте головы слушателя в ту или другую сторону.
Использование акустических систем с несколькими колонками, "окружающими" пользователя со всех сторон, а также сложные звуковые алгоритмы, дополняющие воспроизводимый звук управляемой реверберацией, позволяют сделать синтезированный компьютером звук еще более реалистичным.
Одной из наиболее существенных проблем, стоящих перед любителями компьютерных игр, является непрекращающаяся конкуренция между различными API, предназначенными для выполнения практически одних и тех же задач. Разработчикам компьютерных игр когда-то приходилось постоянно выбирать, поддерживать им графическую систему Glide или OpenGL, а также какому из стандартов трехмерного звука следует отдать предпочтение.
Недавние и текущие версии библиотеки Direct3D, входящей в Microsoft DirectX, поддерживают, в отличие от ее оригинальной версии, программное обеспечение сторонних производителей, что позволяет 3D-звуковым платам полноценно использовать технологии позиционирования звука.
В течение 1999 и первой половины 2000 года основными конкурентами в области 3D-игровых стандартов были технологии A3D компании Aureal и EAX (Environmental Audio Extensions) компании Creative Labs. Стандарт A3D, особенно версии 2.0, считался более прогрессивным, чем его соперник из компании Creative Labs. Несмотря на это, большинство разработчиков поддерживали технологию EAX. В середине 2000 года компания Aureal была закрыта, а затем поглощена Creative Labs. Эти события ознаменовали конец стандарта A3D как жизнеспособного игрового API.
Практически все новые звуковые платы, существующие на сегодняшнем рынке, поддерживают технологию EAX компании Creative Labs. Несмотря на это, многие производители аудиоадаптеров стараются расширить эффекты EAX с помощью звукового ядра Virtual Ear от компании Sensaura, которое позволяет пользователю изменять "местоположение" источника воспроизводимого звука, регулируя размер и форму используемого "уха". В настоящее время технология Virtual Ear используется в звуковых платах, поставляемых компаниями Aopen, Labway, Yamaha, Voyetra Turtle Beach, Guillemot и др.
Вторым по важности фактором качественного звучания являются различные способы реализации обработки трехмерного звука в звуковых платах. Существуют следующие основные методы обработки звука:
· централизованная обработка (для обработки трехмерного звука используется центральный процессор, что приводит к снижению общего быстродействия системы);
· обработка звуковой платы (которая называется также 3D-ускорением).
Обработка трехмерного звука в аудиоадаптерах происходит либо с использованием центрального процессора системы, либо с помощью мощного цифрового обработчика сигналов (DSP), выполняющего обработку непосредственно в звуковой плате. Звуковые платы, осуществляющие централизованную обработку трехмерного звука, могут стать основной причиной снижения частоты смены кадров (числа анимированных кадров, выводимых на экран за каждую секунду) при использовании функции трехмерного звука.
В звуковых платах со встроенным аудиопроцессором частота смены кадров при включении или отключении трехмерного звука почти не изменяется. 3D-ускорение поддерживается многими современными микросхемами, которые поставляются основными производителями звуковых плат и наборов микросхем, но количество поддерживаемых трехмерных звуковых потоков варьируется в зависимости от используемой микросхемы и может иногда ограничиваться из-за проблем с программными драйверами.
Технологии трехмерного звука и трехмерного видеоизображения представляют наибольший интерес прежде всего для разработчиков компьютерных игр.
Звуковой эффект (англ. Sound effect или англ. audio effect) — искусственно созданный или усиленный звук, или обработка звука, применяемый для подчеркивания художественного или иного содержания в кино, видео играх, музыке или других медиа.
Типичными звуковыми эффектами, которые применяются при подготовке аудиоматериала являются:
Временные преобразования
Дилей (delay) и эхо (Echo)
Дилей (Delay) - эффект, который добавляет к оригинальному сигналу
его копии с временной задержкой (больше 0.5 сек), с определённой вами
периодичностью повторений (обычно кратной темпу) и затуханием амплитуды.
Различают два вида этого эффекта:
Пример сложного дилея: повторение сигнала в правом канале с периодичностью n
и повторение сигнала в левом канале с периодичностью 2n.
Дилей является хорошим инструментом для придания стерео-эффектного звучания
композиции. Пользуясь дилеем имейте ввиду то что чрезмерное использование этого
эффекта может сделать композицию неразборчивой и может получиться
"каша".
В случае, если время задержки совпадает с темпом музыки, то глубина звучания
возрастает, а эффект остается незаметным.
Большинство звукооператоров устанавливает время задержки в соответствии с
темпом композиции. Дилэй подчиняют пульсу музыки и он добавляет пространства в
звук. Кажется, что задержанное повторение сигнала исчезает, а звучание
сглаживается.
Очень похожим на дилей является эффект эхо (Echo). Если дилей
просто добавляет к оригинальному сигналу его копии с определёнными значениями
периодичности и затухания, - то в эхо копии сигнала подвергаются спектральному
(частотному) изменению.
Вам ведь доводилось слышать эхо в жизни ?
К примеру, вы что-то крикнули и услышали отражение своего крика через определённый
промежуток времени.
Почему это произошло ?
Звуковая волна распространяется в воздушной среде (и не только), встречая на
своём пути препятствия. В зависимости от частоты звука – она может огибать это
препятствие или же отражаться от него. Чем ниже частота (больше длина звуковой
волны) – тем лучше она огибает препятствия. Звук отражается различным образом
от различных препятствий, именно это и учитывается в эффекте «Эхо». Дилей же
просто добавляет копии оригинального сигнала без изменения их частотных
характеристик.
Реверберация (Reverberation)
Реверберация — также является эффектом задержки звука, но в отличие от
эха оригинальный сигнал повторяется с гораздо меньшей периодичностью и затухает
соответственно быстрее.
Если эхо в реальных условиях может встретиться в горах и на улице, - то
реверберация - в закрытом помещении. Звуковая волна отражается от стенок
помещения, после чего опять отражается от стенок помещения – и так до тех пор
пока она не затихает. Реверберация очень хорошо различима в длинных туннелях,
пещерах, церквях, в объёмных помещениях с плохой акустикой (под плохой
акустикой также понимается полное отсутствие реверберации, что лишает звук
своей естественности). Звук различается после прекращения резонирования его
источника – это Вы слышите отражения звуковой волны от поверхностей помещения.
В начале к Вам возвращаются ранние отражения – непосредственно от поверхностей
помещения, потом с меньшей интенсивностью поступают отражения от отражений.
Реверберацию принято считать по формуле:
T= 0.164V/A , где V – объём помещения, А – звукопоглощение (зависит от
материала и типа поверхностей, их площадей). В Интернете есть калькулятор
реверберации помещения.
Короткая реверберация или короткие задержки придают звучанию объём.
Реверберация с затуханием меньше 1 с и задержки меньше 100 миллисекунд (обычно
их делают много короче) создают акустическое пространство вокруг звука,
особенно, если они идут по обоим стерео каналам.
Часто время затухания реверберации ставят как можно меньше, а для цифровых
устройств это очень трудная задача. Может получиться металлическое звучание.
Если такое случилось, можно исправить положение, увеличив время затухания, или
попробовать другой пресет, который даст более мягкое звучание, либо взять
другой ревербератор, который сможет работать с такими параметрами.
Реверберация звучит значительно лучше, если привязана к темпу записи.
Реверберацию настраивают под песню по удару рабочего барабана, а время
затухания подбирают так, чтобы звучание закончилось перед следующим ударом.
Задача — заставить реверберацию "дышать" вместе с музыкой.
Лучше всего — сначала сделать всё как можно больше при минимальном времени
реверберации, потом потихоньку прибавлять время, пока реверберация не встроится
в темп.
Предилэй ревербератора (пространство между затуханием ноты на дорожке-источнике
и началом реверберации) может значительно изменить звучание ревербератора и
обычно тоже рассчитывается по темпу музыки.
Основные регулируемые параметры, встречающиеся в современных цифровых
ревербераторах, представлены ниже:
Balance (Dry / Wet) — регулирует соотношение прямого звука (Dry) и
звука, обработанного эффектом (Wet).
Gate Reverb — тип специального «нелинейного» эффекта.
Density — плотность ранних (первичных) отражений, характеризует
геометрию имитируемого помещения.
Diffusion — плотность структуры ранних отражений, характеризует
расплывчатость реверберации, при низких значениях ощущается ее дискретность или
подобие эха.
Early Reflection Level — уровень ранних отражений, соотносится с
отражающими свойствами материалов помещения.
Er/Rev Balance — соотношение уровней ранних отражений и остатка
реверберации.
Feedback Level — уровень обратной связи.
Hight Cut — наличие фильтра НЧ (эквалайзера). Делает тембр реверберации
более мягким.
Hight Damp (LPF) — возможность демпфирования высокочастотных
составляющих спектра реверберации (иногда раздельно регулируется уровень и
частота). Основано на естественном эффекте более быстрого затухания
высокочастотного спектра звука в процессе акустической реверберации. В
некоторой степени имитирует свойства материалов отражающих поверхностей
помещения.
Liveness — характер затухания сигналов ранних отражений, их огибающая.
Low Cut — наличие фильтра ВЧ (эквалайзера).
Low Damp (HPF) — возможность демпфирования низкочастотных составляющих
реверберации (иногда раздельно регулируется уровень и частота).
Pre-Delay (Initial Delay) — интервал времени между приходом к слушателю
прямого, необработанного сигнала, и моментом появления самого первого «отраженного»
сигнала (фактически имитирует размеры помещения с учетом месторасположения
слушателя).
Release Density — плотность отражений конечной фазы реверберации.
Reverb Delay — промежуток между ранними отражениями и остатком
реверберации, который в одних процессорах отсчитывается относительно прямого
сигнала, а в других — относительно ранних отражений.
Reverb Send Level (Depth,Volume) — уровень реверберации. Основной
параметр, управляющий глубиной эффекта.
Reverb Time (Decay) — время реверберации.
Shape (Early Type) — форма нарастания ранних отражений.
Size (Room Size, Hall Size, Height, Width, Depth) — размеры (объем)
имитируемого помещения, ширина (Width), глубина (Depth), высота (Height).
Wall Vary — характеризует геометрию (неровности) отража¬ющих
поверхностей. Большие значения придают реверберации более рассеянный характер.
Вибрато (Vibrato)
Вибрато — периодические изменения высоты, громкости или тембра музыкального
звука. В струнных инструментах вызывается колебаниями пальца, в духовых инструментах
и у вокалистов — пульсацией воздушного давления.
Как правило, высота, громкость и тембр при исполнении на конкретном инструменте
не изменяются одновременно — какая-то из этих характеристик является
преобладающей, а остальные — побочным эффектом основной. Вибрато широко
распространено в рок-музыке, особенно в гитарных партиях. На электрической
гитаре вибрато может быть исполнено 2-мя способами: с помощью тремоло-машинки и
с помощью подёргивания прижатого к струне пальца.
Изменение фазы (Phasing)
Фазовые преобразования выполняются либо путем постоянного сдвига фазы сигнала,
либо путем наложения некоторой фазомодулирующей функции. Такие преобразования,
например, стерео сигнала, позволяют реализовать эффект вращения или
"объёмности" звука.
Фазер (Phaser) - устройство (аналоговое или программное) предназначенное для
сдвига фазы подаваемой на него звуковой волны, путём задержки последней на
незначительный временной промежуток (от 0.0001 мс до 20мс). В результате этого
эффекта звук приобретает новый оттенок
Флэнжер (Flanging)
Флэнжер - это практически тоже самое что и хорус (происходит небольшая задержка
сигнала), только с обратной связью (feedback), т. е. задержка еще раз
посылается в себя. Следовательно флэнжер с выключенным фидбэком становится хорусом!
Инвертирование фазы (Phase Invert)
Фазоинвертор (от фаза и инвертор) — устройство, преобразующее входной сигнал в
2 сигнала, сдвинутых по фазе на 180°.
Многоголосье (Chorus, Хорус)
Хорус (англ. chorus) — звуковой эффект или соответствующее устройство.
Имитирует хоровое звучание музыкальных инструментов. Эффект реализуется путем
добавления к исходному сигналу его собственной копии или копий, сдвинутых по
времени на величины порядка 20-30 миллисекунд, причем время сдвига непрерывно
изменяется.
Частотные преобразования
Частотные преобразования могут проводиться над спектром сигнала или над
частотой воспроизведения сигнала. На основе частотных преобразований спектра
реализуются различные фильтры и эквалайзеры. Принцип действия их состоит в следующем.
Входной сигнал раскладывается на частотные составляющие. Затем, в зависимости
от производимых действий, какие-то составляющие могут быть полностью
приглушены, а какие-то просто изменены по амплитуде. В результате на выходе
получается сигнал с отфильтрованными частотами. Частотные преобразования
применяются как для "технических нужд" (например, при очистке сигнала
от ненужных постоянных шумов), так и для придания звучанию новой окраски. Как
уже говорилось выше, разложение сигнала на частотные составляющие и их
дальнейшая обратная свертка в сигнал - достаточно трудоемкая операция, поэтому
частотные преобразования трудновыполнимы в режиме реального времени. Однако,
мощность современных процессоров иногда позволяет производить такие действия.
Эквалайзер
Звук обладает как амплитудной, так и частотной характеристикой. Так, например,
одни звуки располагаются в низкой частотной области (например бас и бас бочка),
другие в высокой (наприер хеты и пищание комара).
С помощью эквалайзера можно подавить определённые частоты, тем самым подчеркнув
другие.
Однако пользоваться эквализацией надо осторожно - потому что вырезав полосу
ненужного инструмента, можно вырезать часть полосы нужного, тем самым ухудшив
его качество звучания.
К тому же изменение частотной характеристики изменяет тембр, и например вокал
не рекомендуется обрабатывать эквалайзером потому что наша слух. система
слишком чувствительна к изменениям в этой области. Существует два типа
эквалайзеров: параметрический и графический. Параметрический эквалайзер
представляет из себя ряд бегунков, каждый из которых соответствует определённой
частотной полосе. Передвигая вправо или влево мы усиливаем или ослабляем
частоты в этой области (усиление частот - это плохо и если не ошибка, то не
лучшее решение...). В графическом же эквалайзере частоты сигнала подавляются в
зависимости от графика, который управляется с помощью мыши.
С помощью эквалайзера можно подправить частотную характеристику как отдельного
инструмента, так и всей композиции, однако это также не лучшее решение, лучшее
решение - изначально подобрать инструменты так, чтобы они не требовали
последующей эквализации. Кроме того, непрофессиональные акустические системы
обладают плохой АЧХ (Амплитудно-частотной характеристикой). Это значит то что одни
частоты в них воспроизводятся громче положенного, другие - тише. Эту проблему
можно решить выравниванием частот с помощью эквалайзера и приблизить АЧХ к
"прямой" как на студийных мониторах, но подчеркну только приблизить.
Выравнивание АЧХ рассмотрено позже.
Амплитудные преобразования (динамическая обработка звука)
Возьмите лист бумаги, сомните его в клубок - у него есть выступающие части. А
теперь сожмите его ещё больше! Выступающих частей стало меньше, клубок стал
более шарообразным! Со звуком во время компрессии происходит тоже самое -
выступающие части обрезаются, в следствии чего уменьшается динамический
диапазон (разница между самым большим и маленьким значением амплитуды). Вы
можете задать вопрос: Какая разница между компрессией и понижением громкости ?
При понижении громкости клочок бумаги просто уменьшается в масштабе.
При компрессии же он увеличивается в той степени, в которой обрезаются его
выступы. В следствии компрессии разница между самым громким и самым тихим
звуком уменьшается, музыка звучит в целом громче. Что же теряется при
достижении этой громкости ? Широкий динамический диапазон - это когда нота
имеет допустим 128 значений громкости. Узкий, когда она имеет допустим 12
значений громкости. Так, допустим в композиции из 1000 нот 20 имеют 128
значение громкости а 30 имеют 127-е значение громкости. При компрессии значение
громкости 20 нот приравнивается к 127 и общая громкость повышается на один
пункт. Компрессия позволяет добиться громкости звучания, кроме того она
позволяет сделать звук более чётким (при правильных настройках компрессии).
Так, например, когда происходит компрессия бас бочки важно начать компрессию не
с самого начала а немного позже - чтобы бочка имела характерный
"щелчок" в начале (это можно сделать используя параметры компрессии,
о которых речь пойдёт позже). В какой степени компрессировать материал -
зависит от его стиля и целях автора. Чем больше компрессии - тем меньше дышит
музыка. Если Вы стремитесь к написанию коммерческой музыки - без компрессии Вам
практически не обойтись.
Амплитудные преобразования выполняются над амплитудой сигнала. Такую процедуру
можно проделать двумя способами: либо умножая амплитуду сигнала на некоторое
фиксированное число, в результате чего получится одинаковое изменение
интенсивности сигнала на всей его протяженности, то есть усиление или
ослабление, либо изменяя амплитуду сигнала по какому-то закону, то есть умножая
амплитуду сигнала на модулирующую функцию. Последний процесс называется
амплитудной модуляцией.
Компрессия
Схематичное изображение работы компрессора
В компрессоре (Compressor) есть несколько основных параметров обработки звука:
Threshold - компрессор анализирует амплитуду (громкость) поступающего
сигнала и начинает работать как только она достишает значения Threshold.
Ratio (коэффициент компрессии) - соотношение входного сигнала к
выходному. Например, значение 4:1 означает, что при изменении входного сигнала
на 4dB, на выходе мы получим разницу в 1dB.
Attack - задаёт промежуток времени, после истечения которого компрессор
начинает работать (время отсчитывается после достижения значения Threshold ).
Release - время спада (восстановления чувствительности эффекта).
Gain - При помощи этого параметра задаётся уровень сигнала на выходе
компрессора. Значение задается в децибелах. Необходимо для восстановления того
же уровня сигнала после обработки компрессором.
Вид сигнала до обработки компрессором
Вид сигнала после обработки компрессором
Лимитер (Лимитер, максимайзер) отличается от компрессора тем, что
он работает более грубо, срабатывает сразу же и обрезает всё что выше
выставленного значения threshold:
Схематическое изображение работы лимитера
Пример работы лимитера
SideChaine
Также достаточно интересным является эффект SideChaine. Разница сайдчейна с
компрессором заключается в том, что в сайдчейне параметр Threshold задаётся не
громкостью входящего сигнала а наличием сигнала в другом канале. То есть, у нас
есть, например, бас бочка и бас, с помощью этого эффекта можно их запрограммировать
так, чтобы бас звучал когда нет сигнала в канале бас бочки. Также хочу заметить
то что кроме амплитудного сандчейна существует частотный сандчейн. Благодаря
использованию сандчейна можно добиться не только громкости - но и интересных
эффектов!
Экспандер
Экспандер отличается от компрессора тем, что он начинает работать после того
как сигнал станет не больше а меньше значения Theshold. Т.е. после того как
уровень сигнала преодолевает этот уровень - под действием экспандера он
становится ещё меньше (как долго - зависит от параметра Release). С помощью
экспандера удобно вырезать из записи нежелательные шумы, однако это требует
хорошей настройки параметров обработки а иногда и ручного управления. Лично я
не встречал частотных экспандеров, а ведь это могло бы заметно улучшить
качество его работы (экспандер продолжает работать до того как в оригинальном
сигнале появляются определённые частоты).
Модуляция
Амплитудная модуляция - это вид модуляции, при которой изменяемым параметром
является амплитуда. Т.е. звук дрожит с заданной периодичностью и амплитудой (в
случае большого значения называется риппером).
Главными варьируемыми (настраиваемыми) параметрами являются:
Initial delay — начальная задержка входного сигнала.
Modulation freq (speed) — частота модуляции.
Delay modulation — глубина циклической модуляции.
Amplitude modulation — модуляции амплитуды сигнала.
Feedback — относительная величина обратной связи.
Distortion. Эффект дистошн (от англ. "distortion" - искажение)
основывается на использовании амплитудной модуляции. Фактически это замена
одних значений амплитуд сигнала другими значениями. За счет переусиления, когда
происходит срезание верхушек входного сигнала, можно получить, например,
классический вариант гитары heavy metal (то есть сигналу придается скрежетание
или своеобразная "хрипота"). Применение такого эффекта приводит к
довольно резкому искажению входного сигнала (в зависимости от глубины
модуляции), в результате чего сигнал становится похож на прямоугольный, и как
следствие происходит расширение спектра сигнала.
Параллельная компрессия
Параллельной компрессии (Parallel Compression, Upward Compression, New York
Compression, иногда Side-Chain compression) приписываются многие чудеса. Это и
прозрачность звука, и сохранение его первоначальной окраски, и нежное обращение
с фронтами (transients) сигнала, и добавление такого «мяса» и «плотности»
которое обычным способом (downward compression)
получить очень тяжело или даже невозможно.
Параллельная компрессия - это такой способ компрессирования сигнала при котором
к необработанному (Dry) параллельно подмешивается компрессированный сигнал
(Wet).
Другие преобразования
Вокодер (Vocoder)
Вокодер в первую очередь предназначен для работы с вокалом. Вам наверняка
доводилось слышать голос "Робота" - это результат обработки вокала
вокодером. Вокодер работает с двумя источниками:
Далее происходит смешивание этих двух сигналов: Анализируются форманты вокала
(резонансные частоты голосового тракта) и передаются ко второму сигналу,
который и придаёт голосу новый окрас тембра.
Наиболее распространённые типы вокодеров:
8. Символы и шрифты
Шрифт (Schrift от нем. schreiben — писать) – это графический рисунок начертания букв и знаков, составляющих единую стилистическую и композиционную систему.
Шрифты создаются художниками в соответствии с образным замыслом, требованиями единства стиля и графической композиции, прикладными задачами, а также в соответствии с конкретными смысловыми и художественно-декоративными задачами.
Раньше термин “шрифт” имел более узкое понятие и означал набор символов определенной гарнитуры, размера и начертания. Гарнитура - это совокупность шрифтов, объединенных общими стилевыми признаками, отличными от других шрифтов. Но в настоящее время термины “гарнитура” и “шрифт” часто употребляются как синонимы.
Воображаемая линия, проходящая по нижнему краю основного элемента символа, называется базовой линией. Литера как будто лежит на этой линии.
Это
величина площадки, на которой размещается знак (буква). Размер кегля определяется
в пунктах. В основу измерений шрифтов положена система Дидо, распространенная в
Европе и принятая в России, и так называемая система Пика (англо-американская).
В любом случае, основной единицей измерения является пункт, равный в системе
Дидо 0,376 мм, а в системе Пика - 0,352
мм. Еще во времена металлического набора у наборщиков сложилось
профессиональное наименование кеглей различного размера:
кегль 6 пунктов - нонпарель,
кегль 8 пунктов - петит,
кегль 9 пунктов - боргес и т.д.
По ширине
шрифт бывает нормальный, узкий, широкий. Различают также пропорциональные
и моноширинные шрифты.
Пропорциональный шрифт отображает символы разной ширины, тогда как
непропорциональный, или моноширинный, шрифт использует знаки постоянной
фиксированной ширины.
Большинство людей находит пропорциональные шрифты более удобными для чтения, и поэтому эти шрифты чаще всего применяются в профессионально изданных печатных материалах. По той же причине, программы с графическим интерфейсом обычно используют пропорциональные шрифты. Однако, многие пропорциональные шрифты содержат знаки фиксированной ширины, так что, например, колонки чисел остаются выровненными.
Моноширинные шрифты лучше подходят для некоторых целей, поскольку их знаки выстраиваются в четкие, ровные колонки (для ручных пишущих машинок и алфавитно-цифровых компьютерных дисплеев, для большинства компьютерных программ с текстовым интерфейсом и пр.) Программисты, как правило, предпочитают моноширинные шрифты при редактировании исходного кода. В издательском деле, редакторы читают рукописи, набранные моноширинными шрифтами для облегчения редактирования, и присылать рукописи, набранные пропорциональным шрифтом, считается плохим тоном.
Начертания
шрифтов отличаются насыщенностью, пропорциями, контрастностью и наклоном
знаков.
Наиболее распространенные начертания - Normal (обычный), Bold (полужирный),
Italic (курсив или наклонный), Bold Italic (полужирный курсив или наклонный),
Condensed (узкий) и Extended (широкий).
Ошибочно мнение, что курсив и наклонный - это одно и то же. На самом деле, это
разные начертания.
Наклонный шрифт образуется простым искажением (наклоном) символов исходного
(Normal) шрифта. Буквы же в курсивном начертании имеют лишь сходство с прямыми
по стилю, но рисунок их совсем другой. Наклонное начертание может быть создано
программой, курсивное должно изначально содержаться в файле шрифта.
Насыщенность шрифта определяется изменением толщины основных и соединительных штрихов одноименных знаков в различных начертаниях и может меняться от светлой (Light) до сверхжирной (Ultra Bold).
Контрастность - один из основных признаков шрифта. Определяется отношением толщины соединительных и основных штрихов знаков. По этому признаку шрифты могут варьироваться от неконтрастных до сверхконтрастных.
Гарнитура – это объединение разных по кеглю и начертанию, но одинаковых по характеру рисунка шрифтов. Каждая гарнитура имеет своё наименование. Разработка гарнитур — сложная и трудоёмкая работа.
Засечки представляют собой небольшие элементы на концах штрихов букв. Существует большое разнообразие шрифтов как с засечками, так и без них. Обе группы содержат как гарнитуры, разработанные для набора больших объемов текста, так и предназначенные в основном для декоративных целей. Наличие или отсутствие засечек является лишь одним из многих факторов, которые учитываются при выборе шрифта.
Считается, что в длинных текстах легче читать шрифты с засечками, чем без них. Исследования этого вопроса объясняют причину этого эффекта в большей привычности к шрифтам с засечками. Как правило, в печатных работах, таких как газеты и книги, применяются шрифты с засечками. Веб-сайты могут не определять шрифт и использовать пользовательские настройки браузера. Но те из них, которые задают шрифт, обычно применяют шрифты без засечек, потому что считается, что, в отличие от печатных материалов, на компьютерных экранах с низким разрешением их читать легче.
Комплектность определяется полнотой знаков, необходимых для набора текста: строчных, прописных, цифр, знаков препинания и проч.
Кернинг и трекинг, будучи атрибутами символов, характеризуют не сами символы, а расстояние между ними, т.е. межсимвольные пробелы. Они необходимы для улучшения зрительного восприятия текста.
Кернингом
называется изменение ширины пробела для конкретных пар литер. Обычно кернинг
делается в сторону уменьшения пробела таким образом, что выступающие части
одной литеры пары заходят в пространство второй литеры. Результат - размещение
символов становится зрительно более равномерным. Фирменные шрифты снабжены
таблицами кернинга, то есть списком пар, для которых нужно сокращать пробел при
наборе текста. Это, например, ГО, ГА, АУ, Ст и другие. Если в шрифте есть
большая таблица пар кернинга, он будет хорошо и равномерно смотреться в разном
кегле.
Программы верстки снабжены возможностью автоматического кернинга, они имеют
собственные таблицы пар. В таких программах можно организовать автоматическую
корректировку пробелов в парах кернинга в тексте любой длины. После обработки
текста автоматическим кернингом в заголовках и другом крупном тексте дополнительно
проводят ручной кернинг, то есть символы сближают вручную. Чем крупнее текст,
тем большее значение для его внешнего вида имеет кернинг. Для проведения
ручного кернинга курсор должен быть установлен между сближаемыми символами. При
изменении значения кернинга первая литера остается на месте, вторая
перемещается.
Трекинг, в
отличие от кернинга, задается не для пары, а для нескольких символов и в данной
программе характеризует величину межсимвольного пробела в группе символов.
Пробелы меняются одинаково для всех выделенных символов. Если задавать трекинг
для выделенной пары, то он будет аналогичен кернингу.
Кернинг и трекинг измеряются в специальных относительных единицах - тысячных
долях круглой шпации (ems/1000), поскольку при смещении в паре важны не точные
значения, а их отношение к величине символов в конкретной гарнитуре. В данном
случае применение такой относительной единицы автоматически делает эти смещения
пропорциональными кеглю шрифта.
В полиграфии используются дополнительные единицы измерения - круглая шпация, полукруглая шпация, тонкая шпация, характеризующие горизонтальные размеры шрифта. Они соответствуют ширине заглавных букв М, N и строчной буквы t. Таким образом, круглая шпация примерно равна размеру шрифта, полукруглая шпация составляет 0,5 размера шрифта, а тонкая шпация - 0,25 размера шрифта. Поскольку все шрифты разные, то и ширина литеры М у них может различаться. Таким образом, значение круглой шпации колеблется в зависимости от кегля и гарнитуры. Шпации применяются при измерениях абзацных отступов, кернинга и других перемещениях символов.
Символ (из греч. σύμβολον) — это знак, изображение какой-нибудь вещи или животного для означения качества предмета[1]; условный знак каких-либо понятий, идей, явлений[2]. Федор Гиренок обращал внимание, что в современной культуре стерта разница "между знаком и символом", между тем как спецификой символа является указание на сверхреальное[3]
Понятие символа тесно соприкасается с такими категориями как художественный образ, аллегория и сравнение. Появившись в Древней Греции символ первоначально обозначал вещественный знак, имевший тайный смысл для группы лиц, объединенных вокруг какого-нибудь культа. Например, в эпоху поздней античности крест стал символом христианства. В новейшее время свастика стала символом фашизма.
А. Ф. Лосев определял символ как «субстанциальное тождество идеи и вещи»[4]. Всякий символ включает в себя вещь (образ), но не сводится к нему, поскольку подразумевает присутствие некоего смысла, нераздельно слитого с образом, но ему не тождественного. Образ и смысл образуют два элемента символа, немыслимые друг без друга. Посему символы существуют как символы (а не как вещи) только внутри интерпретаций[5].
В XX веке неокантианец Кассирер обобщил понятие символа и отнес к «символическим формам» широкий класс культурных явлений, таких как язык, миф, религия, искусство и наука, посредством которых человек упорядочивает окружающий его хаос. Ранее еще Кант доказывал, что искусство, будучи интуитивным способом представления, носит символический характер[6].
Как ни
обширно сегодня шрифтовое хозяйство и как ни велики резервы его обогащения за
счет электронной техники, шрифты конца XX века в основной массе или копируют,
или варьируют старые шрифты, в разработке которых участвовали Альд Мануций,
Леонардо Да Винчи, Лука Пачиоли, Альбрехт Дюрер, Клод Гарамон и другие знаменитые
художники и графики.
В исторической классификации все шрифты делятся по
вышеназванным признакам на три типа:
Антиква в свою очередь подразделяется на три группы, в которых варьируются сила контраста между штрихами и форма засечек. В старой, или гуманистической антикве контраст мало заметен, а засечки утолщены и слегка закруглены. В переходной антикве контраст умеренный, а конфигурация засечек приближена к форме треугольника. Для новой или классической антиквы характерны сильный контраст и тонкие, удлиненные засечки. Особое место среди шрифтов данного типа занимает так называемая ленточная антиква со слабо выраженными контрастом и засечками.
Египетские шрифты ведут свое происхождение от древнеегипетских письмен, выполненных на папирусе (причем некоторые имеют форму брусочков, например, Мемфис, отсюда современное название шрифтов – брусковые). Со временем часть египетских шрифтов эволюционировала в сторону утончения соединительных штрихов и засечек.
Шрифты типа гротеск не имеют ни контрастов, ни засечек, штрихи в них выделяются, как правило, жирностью начертания. Видимо, эта необычность рисунка и чернота линий послужила основанием для их названия (франц. Grotesque - причудливый, комичный). В рекламных отделах русских газет они появились в первой четверти XIX века и долгое время не выходили за пределы этого отдела. Сегодня, с большим основанием названные рубленными, эти шрифты широко применяются в заголовках и текстах.
Все типографские шрифты условно можно разделить на:
Текстовые шрифты — шрифты, предназначенные для печатания основного текста книг, журналов и газет; это шрифты сравнительно мелких кеглей — от 0 до 12 пунктов.
Титульные шрифты — шрифты более крупных кеглей — от 14 до 48 пунктов, применяемые для набора титулов, обложек, рубрик, газетных заголовков и различных акцидентных работ. Многие гарнитуры содержат титульные шрифты (по кеглю), другие же являются только титульными. Шрифты мелких и крупных кеглей одной и той же гарнитуры могут быть использованы: первые — как текстовые, вторые — как титульные.
Акцидентные шрифты — шрифты преимущественно декоративные, имитационные, а также шрифты крупных кеглей. К акцидентным шрифтам относятся плакатные и афишные шрифты. Кегль (размер) шрифта определяется по прописной (заглавной) букве.
В
государственном стандарте на шрифты все типографские шрифты
разделены на 6 основных групп и одну дополнительную. Существует самая
непосредственная связь между типографской и исторической классификациями. Из
трех разновидностей антиквы образованны три самостоятельные группы типографских
шрифтов: новые малоконтрастные соответствуют рисунку старой антиквы,
медиевальные – переходной, обыкновенные – классической. Ленточная антиква
получила в типографском каталоге название шрифта с едва наметившимися засечками.
Группа брусковых шрифтов вобрала в себя отличительные признаки египетских.
Популярные ныне рубленые шрифты и в старых, и в новых гарнитурах соблюдают
гротесковую природу шрифтов этого типа. Контрастные рубленые (например,
гарнитура Центральная) вместе с другими “нарушителями” стандарта оказались за
пределами классификации.
Гарнитуры – это подгруппы или подклассы шрифтов, одинаковых по
рисунку, свойственному той или иной группе, и разных по начертанию и кеглю. В
ГОСТе насчитывается около 40 типографских шрифтов, а в
практическом обиходе гораздо больше, что позволяет и индивидуализировать и
разнообразить шрифтовое оформление периодических изданий. Таким образом, в
соответствии с классификацией типографских шрифтов согласно ГОСТу, выделяют
следующие группы:
Группа рублёных шрифтов
В эту группу входят гарнитуры, не имеющие засечек, например: Журнальная
рублёная, Древняя, Плакатная,
Букварная группа шрифтов
Группа шрифтов с едва наметившимися засечками
Сюда входят гарнитуры, концы штрихов которых немного утолщены, например Октябрьская.
Группа медиевальных шрифтов
Это наиболее полная группа шрифтов. Засечки шрифтов, входящих в эту группу,
плавно сопрягаются с основными штрихами и, как правило, строятся как дуги
окружностей. Примеры гарнитур этой группы: Литературная, Банниковская,
Лазурского, Таймс.
Группа обыкновенных шрифтов
Шрифты этой группы имеют ярко выраженный контраст и длинные тонкие прямые
засечки, соединяющиеся с основными штрихами под прямым углом. Пример:
Обыкновенная новая, Елизаветинская, Бодони.
Группа брусковых шрифтов
Контраст в этих шрифтах отсутствует или малозаметен, утолщенные прямые засечки
соединяются с основными штрихами под прямым углом. Примеры: Брусковая газетная,
Балтика.
Группа новых малоконтрастных
шрифтов
Как правило, шрифты этой группы, которые характеризуют длинные закругленные
засечки, мягко сопрягающиеся с основными штрихами, используются при наборе
большого количества текста, в книгах и газетах. Примеры: Новая газетная,
Школьная, Бажановская, Журнальная, Академическая.
Группа дополнительных шрифтов
В эту группу входят все шрифты, которые нельзя отнести ни к одной из остальных
групп. Например, рукописные гарнитуры, такие как Жихаревская.
Приспосабливаясь
к широким возможностям электронной техники, художники создали массу новых
гарнитур, сохраняя традиции старых школ. Но новые технологии потребовали и
новых классификационных характеристик шрифтов, обусловленных системными и
фирменными различиями компьютеров и той языковой средой, в которой они
создавались. Ю. Ярмола в книге о компьютерных шрифтах приводит следующую их
классификацию, принятую в системе Microsoft Windows:
Roman – эта группа определяет шрифты с засечками (например, Таймс и Бодони);
Swiss – группа рубленных шрифтов с переменной толщиной штрихов (Гельветика, Футура и др.);
Modern – группа, в которую входят шрифты с постоянной толщиной штрихов (Курьер);
Script – группа рукописных
шрифтов;
Decorative – группа декоративных
шрифтов;
Don’t Know – шрифты, о которых нет информации.
Однако, данная классификация носит довольно общий характер. Более полно и
конкретно описание шрифтов по системе IBM Classification. Оно и более
приближенно к знакомой нам исторической классификации:
Первую группу здесь составляют шрифты Oldstyle Serifs, основанные на латинской
традиции XV – XVII веков. Они соотносятся с гуманистической антиквой,
подклассам (гарнитурам) этой группы присущи малая контрастность и плавный
переход штрихов к засечкам.
Группа Transitional Serifs унаследовали признаки переходной антиквы, а Modern Serifs – новой антиквы. Clarendon объединяет признаки первых двух групп. Далее следуют: однотипные с брусковыми, шрифты группы Slab Serifs, шрифты с засечками неопределенной формы Freedom Serifs, беззасечковые San Serifs, декоративные Ornamentals, рукописные Scripts и неподдающиеся определению No Classification. Каждая группа представлена подклассами – гарнитурами.
Компьютерные шрифты классифицируются также по методам их цифрового описания. По этой классификации шрифты бывают растровыми, штриховыми (векторными), контурными и алгоритмическими.
Кроме
указанных выше шрифтов, имеются и другие, специальные,
используемые для различных целей:
Шрифты, буквы которых выполнены с просветом между контурными
линиями (в некоторых шрифтах просветы делаются только в основных штрихах
букв).
Шрифты, буквы которых так или иначе связаны друг с другом:
соединены штрихами, заходят одна на другую или объединяются общим
контуром.
Шрифты, благодаря своему рисунку производящие впечатление
объемных.
Шрифты, буквы которых украшены (расцвечены, иллюминированы)
различными графическими средствами: штриховкой, заливкой, дополнительными
штрихами, оттенениямй, декоративными элементами и т.д.
Шрифты делятся по своему
назначению и области применения на книжные, рекламные, газетные,
плакатно-афишные, декоративные, картографические.
Выбор той или иной гарнитуры шрифта определяется самим изданием, его целью и
читательским адресом. В научно-популярном издании уместны одни шрифты, в
художественном – другие. Выбор шрифта определяет и способ печати. Всё это
привело к большому разнообразию шрифтов, отличающихся рядом признаков.
В
настоящее время пользователи имеют возможность использовать как растровые, так
и векторные шрифты.
Растровые шрифты при отсутствии динамической загрузки или
шрифтового картриджа должны быть предварительно загружены в лазерный принтер.
В векторных шрифтах буквы описаны не как растровые матрицы, а как
геометрические фигуры. Использование векторных шрифтов не ограничено перечнем
имеющихся кеглей, определяемых наличием соответствующих шрифтовых файлов.
При выборе шрифтов в соответствии с их назначением, предъявляются определенные требования к шрифтам:
Правильное использование шрифта играет важную роль. Шрифт должен быть не только красивым, но экономичным, что характеризуется емкостью и определяется средним количеством знаков, которые могут разместиться в строке, в полосе. С производственно-технологической точки зрения среди требований к шрифтам относят точность воспроизведения графики шрифта в разных видах печати - высокой, глубокой, плоской, механическая прочность и линейная точность шрифта как элемента печатной формы при получении оттисков в печатной машине. Под гигиеническими требованиями к шрифту понимается его удобочитаемость. исследования показали, что важно подбирать правильно и длину строки и размеры пробелов между словами. Например, для детей дошкольного и младшего школьного возраста необходимы четкие, простые по рисунку шрифты 12-16 пунктов, для взрослого читателя - шрифты 8-10 пунктов, в справочных изданиях - кегль шрифта может быть снижен. Результаты исследований также показали, что текст, набранный прописными буквами, замедляет скорость чтения, а кроме того, занимает больше места, порой на 50 процентов; курсив читать труднее, чем прямое начертание; очень короткие строки, так же как и очень длинные, читать труднее. При выборе основного шрифта издания следует принимать во внимание характеристики бумаги. Например, романские шрифты "старого стиля" удачно сочетаются с грубой бумагой, а шрифты стиля "модерн" лучше смотрятся на гладкой или мелованной бумаге. Кроме того, на выбор шрифта влияет способ печати. Например, некоторые шрифты из-за очень тонких засечек плохо воспроизводятся офсетной печатью.
Шрифты нельзя рассматривать как серый фон, обрамляющий рисунки. Это – важный элемент процесса коммуникаций, и многие Web-дизайнеры про него забывают в погоне за крутым и модным оформлением. Забудьте о моде. Люди заходят на страницу в поиске информации. Если посетитель не может прочитать информацию из-за того, что текст трудно читается, разве можно ожидать, что он поймет эту информацию?
Internet в той или иной форме существует на протяжении 40 лет, однако возраст Web не превышает десятилетия. Шрифты нас окружали с середины XV века. За это время они прошли путь от свинцовых литер до битов на компьютере, когда начали появляться описываемые проблемы. Развитие настольных издательских систем привело к упадку традиционной издательской деятельности. Типографские работники, которые прошли пятилетний курс обучения, внезапно исчезли, и вся работа легла на плечи дизайнеров. Когда появилась Web, искусство книгопечатания фактически исчезло, так как издательская деятельность в Web находится совершенно в другом измерении. В Web существуют только шрифты, а книгопечатание как искусство нельзя перенести в формат HTML.
Лучшее, на что можно надеяться, – это на то, что посетитель страницы имеет установленные шрифты Arial, Verdana, Helvetica и Sans Serif, которые используются благодаря дескрипторам <font> и <Font Face>. Хотя стили CSS (Cascading Style Sheet) были призваны решить эти ограничения, они оказываются "недоразвитыми", когда речь заходит о книгопечатании, а броузеры версии 3 и ниже неверно отображают эти стили. Хорошая полиграфия, использование шрифтов и техники печати только усиливают тезис о том, что это – отдельная область искусства. Нельзя сказать, что работа по созданию шрифтов Verdana и Georgia, проделанная Мэтью Картером (Matthew Carter), была''выполнена плохо. Однако даже эти два шрифта не обеспечивают хорошего отображения вне броузера.
Так в чем же дело? Ведь пиксель – отличная стартовая точка. Графические дизайнеры, работающие в печатных изданиях, вкладывают в свои рисунки тысячи таких пикселей на дюйм. Тысячи этих точек они направляют на высококачественные лазерные принтеры при печати. Web-дизайнеры не имеют возможности использовать такие высокоточные разрешения. Наша точность измеряется сотней пикселей на дюйм, так как мы взаимодействуем с публикой через экраны их компьютеров. При нашем разрешении на букве "Т", отображенной шрифтом Times Roman, будут видны засечки на концах линий, однако вряд ли удастся отличить шрифт Stone Sans от шрифта Univers. Страница, которая хорошо смотрится при разрешении 800x600, для просмотра в разрешении 1024x768 потребует лупы.
Без технологий Postscript и TrueType увеличение шрифта просто увеличивало бы количество используемых пикселей, образующих букву. В результате полностью бы терялся стиль. Шрифт Times стал бы выглядеть угловатым и неуклюжим. Засечки потеряли бы свою элегантность. Нижняя часть буквы "k" стала бы искривленной. Короче говоря, шрифты начали бы деформироваться, пока не стали бы вообще нечитаемыми.
Для того чтобы взять на вооружение преимущества векторной графики, Web-дизайнеры конвертировали свои шрифты в рисунки или, как в случае с Flash MX, внедряли шрифты в файлы. swf. Проделывая эту работу, они все равно превращали элегантные шрифты в нечитабельные и искаженные. Ими руководило не эстетическое чувство, а просто то, что начертание шрифта выглядело привлекательным. Ситуация становилась угрожающей. Хотя тема настоящего раздела – описание средств работы со шрифтами в приложениях Fireworks, Flash и Dreamweaver, некоторые теоретические сведения помогут вам лучше понять, о чем пойдет речь.
Web, будучи по своей сути ориентированной на экран, имеет достаточно низкое разрешение для шрифтов. При отображении на экране шрифты Postscript теряют свою четкость и растеризуются, когда они выводятся на принтер, то имеют тысячи пикселей, с которыми проводится работа.
Итак, при работе в Web все, чего можно ожидать, – это разрешение порядка 100 пикселей на дюйм. Но это – не все. В Web нет шрифтов Postscript. В ней существуют только пиксели-. При таких условиях теряются тонкости начертания шрифтов. И что еще хуже: когда текст переводится в графику, он становится невидимым для поисковых механизмов в Web. После того как строка текста переведена в графику (если к ней не применен дескриптор ALT), ее нельзя прочитать с помощью программ синтеза речи (screen reader), которые используют люди с ослабленным зрением. Их нельзя повторно использовать на странице, и к тому же время загрузки в броузер таких страниц значительно увеличивается. Тут же возникает вопрос об авторских правах. Ваша компания имеет лицензию на шрифты, которые установлены на вашем компьютере, потому что лицензия оплачена производителем программного обеспечения. Однако при этом вы не имеете право делать их доступными для посетителей своих Web-страниц. Результатом стал тот приемлемый минимум, который проявился в Web-полиграфии. (Подробно вопрос лицензирования обсуждается ниже.) Применяемые шрифты можно найти на любом персональном компьютере планеты, так как они устанавливаются вместе с операционной системой. Работа с растровыми шрифтами вернула нас к началу развития настольных издательских систем. Шрифты Postscript гораздо дороже в производстве, поэтому существует небольшое количество этих шрифтов, разработанных специально для разрешения экрана. Среди них – Charcoal, Verdana и Trebuchet.
Технология, которая стоит за компьютерными шрифтами, – достаточно сложная. И очень важно понять, что имеется в наличии, перед тем, как устанавливать шрифты. Шрифты можно разделить на две основные категории: растровые (bitmap) и Postscript.
Растровые шрифты отображают каждый символ по таблице пикселей, которые могут иметь значения 0 и 1. И именно это является причиной снижения качества шрифтов данного типа. Так как они составлены из пикселей, их чрезвычайно сложно масштабировать без серьезных потерь в разрешении. Когда удваивается размер символа, рисунок не делается больше – просто удваивается каждый пиксель. Результатом становятся расплывающиеся линии (рис. 7.10) или довольно сомнительное сходство с оригиналом.
Рис. 7.10. Буква из шрифта Times формата bitmap
Обратите внимание на расплывающиеся линии, являющиеся результатом подгонки кривых под таблицу пикселей. Вертикальные линии отображены удовлетворительно, в то время как кривые выглядят угловато.
С другой стороны, шрифты Postscript являются ни чем иным, как серией математических вычислений линий, кривых и тонких деталей (рис. 7.11). Это позволяет тексту стать масштабируемым без потери качества, так как математические формулы включают масштаб как один из параметров. Однако и здесь нужно сделать предупреждение. При маленьких размерах из шрифтов выбрасываются мелкие детали, что делает их неразборчивыми на экранах компьютеров.
Глиф (др.-греч. γλύφω — вырезаю, гравирую) — элемент письма, конкретное графическое представление графемы, иногда нескольких связанных графем (составной глиф), или только части графемы (например, диакритический знак). Два или более глифа, представляя один и тот же символ, используемые попеременно или выбранные в зависимости от контекста, называются аллографами друг друга. И если графема — это единица текста, то глиф — единица графики.
Глиф - это изображение (рисунок и/или надпись) на земле или камне, несущее смысловую нагрузку. Еще несколько веков назад создание глифов было делом повсеместным. Нанесение глифов имело не только практическое, но и в первую очередь - духовное значение и придавало особый статус подписанному предмету. Надписи наносились не только на все предметы ручной работы, но и на скалы, камни и земной ландшафт. Использование глифов преследовало различные цели - это могли быть сакральные глифы (надписи на культовых скульптурах или камнях), символизирующие что-либо глифы (прототип гербов и логотипов), глифы-информаторы (указания к использованию), глифы-указатели (дорога к храму или гигантские изображения на земле в помощь воздушной навигации) и т.д.. Глифы варьируются в размерах от нескольких миллиметров (например, надписи на культовых камнях) до нескольких сотен километров (многочисленные надписи и рисунки на ландшафте). В наши дни использование глифов значительно упростилось и чаще всего обусловлено рекламой (гигантские надписи названий фирм, изделий, популярных туристических мест).
Образец римского капитального письма. Надпись на колонне Траяна в Риме
Литера «А». Лука Пачоли, 1509 г. |
Литера «А». «Цветущий луг», Жоффруа Тори, 1526 г. |
Литера «А». Альбрехт Дюрер, 1528 г. |
Шрифт Николя Жансона |
Шрифт Альда Мануция |
Шрифт Клода Гарамона |
Титул первого тома собраний фрагментов греческих историков Мюллера. Париж, изд. Дидо, 1841 год.
В XVIII веке, наряду с европейскими начинают развиваться и русские шрифты, которые до этого развивались самостоятельно, имели основу греческую и назывались кириллица и глаголица.
Самые древние шрифты — устав и полуустав — выполнялись со всей строгостью и чёткостью, следуя правилу — уставу — от чего и пошли их названия. С развитием письменности появилась скоропись, которая отличалась быстрым, свободным стилем, с росчерками, петлями, выходящими далеко за границы рядов. Скоропись становится искусством каллиграфии XVII веке. Нею писались грамоты и официальные документы.
Подпись Богдана Хмельницкого, выполненная скорописью: «Богдан Хмельницкий, гетьман войська Запорожского, его королевской милости, рука власна.»
Устав, полуустав, скоропись, вязь — это формы рукописного шрифта. В середине XVI века появились первые книги, выполненные типографским шрифтом. Одной из таких книг была «Апостол» Ивана Фёдорова, изданная в 1564 году.
Новый книжный гражданский шрифт был утверждён Петром I и введён в 1708 году. Он был чёткий, округлый и рациональный — некий синтез традиционных шрифтов и антиквы.
На рубеже XVIII—XIX веков в искусстве шрифтов произошли значительные изменения — появились новые разнообразные шрифты для разных потребностей (книг, газет, плакатов, афиш, рекламы). Был разработан новый шрифт — египетский, который отличался одинаковой толщиной всех линий и засечек. Немного позже появился шрифт гротеск (рубленый), линии литер которого были одинаковой толщины, но засечек не имели. Было разработано целое семейство гротескных шрифтов.
ХХ век породил новые гротескные и рубленые шрифты, которые подчёркивали новый стиль в архитектуре и искусстве — конструктивизм. Среди новых шрифтов пользуются популярностью футура Поля Реннера, пеньо Кассандра, эрбар-гротеск Якова Эрбара и гилл-гротеск Эрика Гилла.
|
Пеньо Адольфа Кассандра |
Эрбар-гротеск Якоба Эрбара |
Гилл-гротеск Эрика Гилла |
Кегль — параметр шрифта, означающий высоту его литер. Кегль включает в себя высоту строчной буквы с самым длинным выносным элементом и пробельное расстояние снизу неё. Величина кегля определяется числом пунктов. Самые распространённые кегли для текстовых шрифтов — 6, 7, 8, 10, 11, 12. Шрифты 4 и 5 кеглей употребляются очень редко.
|
Этот раздел статьи ещё не написан. Согласно замыслу одного из участников Википедии, на
этом месте должен располагаться специальный раздел. |
|
|
Этот раздел статьи ещё не написан. Согласно замыслу одного из участников Википедии, на
этом месте должен располагаться специальный раздел. |
|
|
Этот раздел статьи ещё не написан. Согласно замыслу одного из участников Википедии, на
этом месте должен располагаться специальный раздел. |
|
Гарнитура шрифта — это типографский термин, объединяющий набор шрифтов, которые отличаются по размеру, начертанию, наличию или отсутствию засечек на концах линий, по соотношению размера высоты прописных и строчных знаков, величине верхних и нижних выносных элементов, плотности, т.е. близких по характеру и отличительным знакам рисунка.
|
Этот раздел статьи ещё не написан. Согласно замыслу одного из участников Википедии, на
этом месте должен располагаться специальный раздел. |
|
|
Этот раздел статьи ещё не написан. Согласно замыслу одного из участников Википедии, на
этом месте должен располагаться специальный раздел. |
|
|
Этот раздел статьи ещё не написан. Согласно замыслу одного из участников Википедии, на
этом месте должен располагаться специальный раздел. |
|
Чтобы просмотреть начертания знаков шрифта, а также его удобочитаемость, можно использовать специально составленную фразу — панграмму. Панграмма (c греч. «каждая буква»), или разнобуквица — текст, использующий все или почти все буквы алфавита. Панграммы используются для демонстрации шрифтов, проверки передачи текста по линиям связи, тестирования печатающих устройств и т. п.
Без «ъ»:
Каждая буква использована по одному разу:
Некоторые буквы употреблены более одного раза:
Для него характерно наличие прямых засечек и резкий контраст. По восприятию данный стиль более строгий по сравнению со старым. Его используют для заголовков и крупных надписей, а для длинных текстов он не особо удобен в силу большого контраста.
пример:
Arial
Helvetica
sans-serif
Comic Sans MS
Arial Black
Calibri
9.Текст и верстка. Текст в графике. Верстка текста с использованием HTML и CSS
Форматирование текста в HTML и его разметка |
Теперь посмотрим как происходит форматирование текста в HTML и его разметка при помощи тегов. Рассмотрим теги · Hпозволяет изменять размер заголовка. ·
P
|
10. Аналоговое и цифровое видео. Стандарты и технологии сжатия.
Оцифро́вка (англ. digitization) — описание объекта, изображения или аудио- видеосигнала (в аналоговом виде) в виде набора дискретных цифровых замеров (выборок) этого сигнала/объекта, при помощи той или иной аппаратуры, т. е. перевод его в цифровой вид, пригодный для записи на электронные носители.
Для оцифровки объект подвергается дискретизации (в одном или нескольких измерениях, например, в одном измерении для звука, в двух для растрового изображения) и аналогово-цифровому преобразованию конечных уровней.
Полученный в результате оцифровки массив данных («цифровое представление» оригинального объекта) может использоваться компьютером для дальнейшей обработки, передачи по цифровым каналам, сохранению на цифровой носитель. Перед передачей или сохранением цифровое представление, как правило, подвергается фильтрации и кодированию для уменьшения объема.
Иногда термин «оцифровка» используется в переносном смысле, в качестве замены для соответствующего термина[уточнить], при переводе информации из аналогового вида в цифровой. Например:
Для начала попробуем дать определение - что же такое потоковое видео, и где мы его можем встретить. Потоковое видео - это то видео, которое выгружает в сеть интернет ее пользователь. Это видео мы можем просмотреть при помощи встроенного на этой странице с видео специального flash-плеера. Такое видео можно смотреть еще до того, как оно полностью загрузится. Потоковое видео распространяется в Сети в flash-формате - .flv. Этот формат специально создан для сжатия и распространения видео файлов в интернете. Формат широко используется в социальных сетях (ВКонтакте, Одноклассники, Facebook) и различных видеохостингах, таких как YouTube или RuTube. Размеры сжатого в flv файла относительно невелики по сравнению с наиболее распространенным форматом видео avi. Например, если вы хотите "залить" в соц.сеть свой любимый фильм с какого-нибудь диска, то вам сначала надо будет преобразовать его в flash-формат. Можете сравнить - на выходе с конвертации получается файл размером 170-300 мегабайт, тогда как размер первоисточника был за 2 гигабайта.
Потоковое видео - главный источник видеоинформации в интернете. Благодаря своим маленьким размерам и повсеместному распространению в мировой паутине, он становится самым простым и доступным способом просматривания видеороликов в интернете. Но есть у потокового видео и свои определенные минусы. От слишком большого сжатия файла страдает качество картинки и качество звука. Картинка может запросто пойти по экрану "кубиками", а звук может временами пропадать, или превращаться в чистое шипение. Но, несмотря на это, потоковое интернет видео остается одним из самых распространенных типов видео, попутно являясь доступным для каждого пользователя сети интернет.
Перейти к: навигация, поиск
Ви́део (от лат. video — смотрю, вижу) — электронная технология формирования, записи, обработки, передачи, хранения и воспроизведения сигналов изображения, основанная на принципах телевидения, а также аудиовизуальное произведение, записанное на физическом носителе (видеокассете, видеодиске и т. п.).
Видеоза́пись — электронная технология записи визуальной информации, представленной в форме видеосигнала или цифрового потока видеоданных, на физический носитель с целью сохранения этой информации и возможности последующего её воспроизведения и отображения на устройстве вывода (монитора, экрана или дисплея).
Количество (частота) кадров в секунду — это число неподвижных изображений, сменяющих друг друга при показе 1 секунды видеозаписи и создающих эффект движения объектов на экране. Чем больше частота кадров, тем более плавным и естественным будет казаться движение. Минимальный показатель, при котором движение будет восприниматься однородным — примерно 16 кадров в секунду (это значение индивидуально для каждого человека). В кинематографе стандартная частота съёмки и проекции составляет 24 кадра в секунду. Системы телевидения PAL и SÉCAM используют 25 кадров в секунду (25 fps или 25 Герц), а система NTSC использует 30 кадров в секунду (точнее, 29,97 fps из-за необходимости кратного соответствия частоте поднесущей). Компьютерное видео хорошего качества, как правило, использует частоту 30 кадров в секунду. Верхняя пороговая частота мерцания, воспринимаемая человеческим мозгом, в среднем составляет 39-42 Герц и индивидуальна для каждого человека, а также зависит от условий наблюдения.[1] Некоторые современные профессиональные видеокамеры могут снимать с частотой до 120 кадров в секунду. Специальные камеры снимают с частотой до 1000 кадров в секунду, что необходимо, например, для детального изучения траектории полёта пули или структуры взрыва. Сверхскоростные киносъёмочные аппараты могут снимать несколько миллионов кадров в секунду. В них киноплёнка неподвижна и расположена на внутренней поверхности специального барабана, а изображение развёртывается вращающейся призмой. Существует и бескадровое видео. Принцип работы заключается в следующем: светочувствительные сенсоры с большой частотой передают данные о своём состоянии, которые параллельно записываются на носитель. Отдельных кадров при этом нет — только массивы информации с каждого из датчиков (пикселей) об их изменении во времени. При воспроизведении также нет кадров — на экране пиксели меняют свой цвет в соответствии с записанными массивами. Если пиксель не менял цвет, то он и не обновляется. Для наилучшего просмотра такого видео требуется специальный монитор.
Стандарт разложения определяет параметры телевизионной развёртки, применяемой для преобразования двумерного изображения в одномерный видеосигнал или поток данных. В конечном счёте, от стандарта разложения зависит количество элементов изображения и кадровая частота.
Развёртка может быть прогресси́вной (построчной) или чересстро́чной. При прогрессивной развёртке все горизонтальные линии (строки) изображения отображаются поочередно одна за другой. При чересстрочной развёртке каждый кадр разбивается на два поля (полукадра), каждое из которых содержит чётные или нечётные строки. За время одного кадра передаются два поля, увеличивая частоту мерцания кинескопа выше физиологического порога заметности. Чересстрочная развёртка была компромиссом, чтобы иметь возможность передачи по каналу с ограниченной полосой пропускания изображения с достаточно большой разрешающей способностью. Аналогично, в кинопроекторах использовался двухлопастный обтюратор, повышающий частоту мельканий на экране с 24 до 48 Гц.
Несмотря на недостатки, чересстрочная развёртка используется до сегодняшнего дня в телевидении стандартной четкости вследствие повсеместного распространения телевизоров, поддерживающих только такие стандарты. Такими недостатками являются, как правило, расщепление вертикальных границ горизонтально движущихся объектов (эффект «гребёнки» или «расчёски») и заметность мерцания на тонких фактурах.
Чересстрочную развёртку часто называют на английский манер интерле́йс (англ. interlace) или интерле́йсинг. Телевизоры с кинескопом, оснащенные разверткой 100 Гц мерцают с частотой, которая не воспринимается глазом. В таких приемниках изображение с чересстрочной разверткой отображается с удвоением кадров. ЖК- и LED-мониторы (телевизоры) вообще избавлены от мерцания. В таких приборах можно говорить только о скорости обновления изображения, поэтому чересстрочная развертка в них является лишь мерой условности, не влияющей на отображение. Для подавления неприятных эффектов, возникающих при просмотре чересстрочного видео на экране с прогрессивной разверткой, применяются специальные математические методы, именуемые деинтерлейсингом.
Новые цифровые стандарты телевидения, например, HDTV предусматривают прогрессивную развёртку. Новейшие технологии, позволяют имитировать прогрессивную развёртку при показе видео с чересстрочной. Последнюю обычно обозначают символом «i» после указания вертикального разрешения, например 720×576i×50. Прогрессивную развёртку обозначают символом «p», например 720p (означает видео с разрешением 1280×720 с прогрессивной разверткой). Также для отличия частоты кадров или полей может обозначатся такими же символами кадровая частота, например 24p, 50i, 50p.
Таблица EIA
До наступления цифровой эры видео, горизонтальная разрешающая способность аналоговой системы видеозаписи измерялась в вертикальных телевизионных линиях (твл) при помощи специальных телевизионных испытательных таблиц и обозначала количество элементов в строке видео изображения, зависящее от частотных характеристик устройства записи.
Вертикальная разрешающая способность в изображении заложена в стандарте разложения и определяется количеством строк.
Основная статья: Соотношение сторон экрана
Сравнение форматов кино и традиционных телевизионных
Соотношение ширины и высоты кадра (англ. aspect ratio) — важнейший параметр любой видеозаписи. С конца XIX века немые кинофильмы и, в последующем, фильмы «классического» формата, имели соотношение сторон экрана 4:3 (4 единицы в ширину к 3 единицам в высоту; в кинематографе записывается как 1,33:1). Считалось что, экран с таким соотношением сторон близок к полю зрения человеческого глаза. Появившееся вскоре телевидение переняло это соотношение и почти все аналоговые телесистемы (и, следовательно, телевизоры) имели соотношение сторон экрана 4:3. Первые компьютерные мониторы также унаследовали телевизионный стандарт соотношения сторон. Однако, в кинематографе уже в начале 1950-х годов с появлением панорамного, широкоэкранного и широкоформатного кино представления об идеальном экране пошатнулись. Широкоэкранные кинематографические системы обладали соотношениями сторон до 2,75:1, стремясь к максимальному «эффекту присутствия», чтобы сделать границы кадра малозаметными. Главная причина заключается в том, что поле бинокулярного зрения человека приближается к соотношению 2:1. Чтобы приблизить форму кадра к естественному полю зрения (и, следовательно, усилить восприятие фильма), и разрабатывались киносистемы с панорамным кадром. Демонстрация широкоэкранных фильмов по телевидению требовала или обрезки изображения при помощи пансканирования, или добавления пустых полей сверху и снизу, чтобы вписать фильм в экран леттербоксингом. Оба способа приводили к потерям частей изображения или его качества. На сегодняшний день классический формат 1,37:1 вообще не используется в кинематографе, полностью уступив своё место кашетированному кадру 1,85:1. Поэтому, при выборе соотношения сторон экрана телевидения высокой чёткости был одобрен стандарт 16:9 (1,78:1), более близкий распространённым форматам кино. Цифровое телевидение стандартной чёткости в основном так же ориентируется на соотношение 16:9, применяя цифровое анаморфирование. Всё это, по замыслу создателей, призвано глубже погрузить зрителя в атмосферу просматриваемого видеофильма. Есть и альтернативные объяснения переходу на широкий формат: возможность проката в залах, изначально не приспособленных для кино, стремление к ухудшению качества пиратских видеокопий и телевизионных копий.
Основная статья: Цифровое видео
Основное отличие от аналоговой видеозаписи в том, что вместо аналогового видеосигнала записываются цифровые данные. Цифровое видео может распространяться на различных видеоносителях, посредством цифровых видеоинтерфейсов в виде потока данных или файлов.
Сравнение стандартных разрешений видео
Любой цифровой видеосигнал, по аналогии с разрешением компьютерных мониторов, также характеризуется разрешением (англ. resolution), горизонтальным и вертикальным, измеряемым в пикселях. При оцифровке аналогового видео стандартной четкости разрешение составляет 720×576 пикселей для европейского стандарта разложения 625/50 (PAL и SÉCAM), при частоте кадров 50 Герц (два поля, 2×25); и 720×480 пикселей для американского стандарта разложения 525/60 (NTSC), при частоте 59,94 Герц (два поля, 2×29,97). В выражении 720×480 первым числом обозначается количество точек в строке (горизонтальное разрешение), а вторым числом количество активных строк, участвующих в построении изображения (вертикальное разрешение). Новый стандарт цифрового телевидения HDTV высокого разрешения (англ. high-definition) предполагает разрешения до 1920×1080 при частоте обновления 50 Герц (60 Гц для США) с прогрессивной развёрткой. То есть 1920 пикселей на строку, 1080 строк. Для телевидения стандартной чёткости цифровое разрешение не совпадает с обозначением стандарта разложения, поскольку не учитывает избыточную информацию, передаваемую только в аналоговом телевидении.
Разрешение в случае трёхмерного видео измеряется в вокселях — элементах изображения, представляющих точки (кубики) в трёхмерном пространстве. Например, для простого трёхмерного видео сейчас используется в основном разрешение 512×512×512, демонстрационные примеры такого видео доступны сегодня даже на КПК.
Количество цветов и цветовое разрешение видеозаписи описывается цветовыми моделями. Для стандарта PAL применяется цветовая модель YUV, для SÉCAM модель YDbDr, для NTSC модель YIQ, в компьютерной технике применяется в основном RGB (и αRGB), реже HSV, а в печатной технике CMYK. Количество цветов, которое может отобразить монитор или проектор зависит от качества монитора или проектора. Человеческий глаз может воспринять, по разным подсчётам, от 5 до 10 миллионов оттенков цветов. Количество цветов в видеозаписи определяется числом бит, отведённым для кодирования цвета каждого пикселя (англ. bits per pixel, bpp). 1 бит позволяет закодировать 2 цвета (обычно чёрный и белый), 2 бита — 4 цвета, 3 бита — 8 цветов, …, 8 бит — 256 цветов (28 = 256), 16 бит — 65 536 цветов (216), 24 бита — 16 777 216 цветов (224). В компьютерной технике имеется стандарт и 32 бита на пиксель (αRGB), но этот дополнительный α-байт (8 бит) используется для кодирования коэффициента прозрачности пикселя (α), а не для передачи цвета (RGB). При обработке пикселя видеоадаптером, RGB-значение будет изменено в зависимости от значения α-байта и цвета подлежащего пикселя (который станет «виден» через «прозрачный» пиксель), а затем α-байт будет отброшен, и на монитор пойдёт только цветовой сигнал RGB.
Ширина (иначе говорят скорость) видеопотока или битрейт (англ. bit rate) — это количество обрабатываемых бит видеоинформации за секунду времени (измеряется «бит/с» — бит в секунду или, чаще, «Мбит/с» — мегабит в секунду; в английском обозначении bit/s и Mbit/s соответственно). Чем выше ширина видеопотока, тем, как правило, лучше качество видео. Например, для формата VideoCD ширина видеопотока составляет всего примерно 1 Мбит/с, а для DVD составляет около 5 Мбит/с. Конечно, субъективно разницу в качестве нельзя оценить как пятикратную, но объективно это так. А формат цифрового телевидения HDTV использует ширину видеопотока около 10 Мбит/с. При помощи скорости видеопотока также очень удобно оценивать качество видео при его передаче через Интернет.
Различают два вида управления шириной потока в видеокодеке — постоянный битрейт (англ. constant bit rate, CBR) и переменный битрейт (англ. variable bit rate, VBR). Концепция VBR, ныне очень популярная, призвана максимально сохранить качество видео, уменьшая при этом суммарный объём передаваемого видеопотока. При этом на быстрых сценах движения, ширина видеопотока возрастает, а на медленных сценах, где картинка меняется медленно, ширина потока падает. Это очень удобно для буферизованных видеотрансляций и передачи сохранённого видеоматериала по компьютерным сетям. Но для безбуферных систем реального времени и для прямого эфира (например, для телеконференций) это не подходит — в этих случаях необходимо использовать постоянную скорость видеопотока.
Качество видеозаписи измеряется с помощью формальных метрик, таких, как PSNR или SSIM, или с использованием субъективного сравнения с привлечением экспертов.
Субъективное качество видео измеряется по следующей методике:
Несколько методов субъективной оценки описаны в рекомендациях ITU-T BT.500. Один из широко используемых методов оценки — это DSIS (англ. Double Stimulus Impairment Scale), при котором экспертам сначала показывают исходный видеоматериал, а затем обработанный. Затем эксперты оценивают качество обработки, варьируя свои оценки от «обработка незаметна» и «обработка улучшает видеоизображение» до «обработанный видеоматериал сильно раздражает».
Стереоскопическое видео или просто стереовидео (англ. stereoscopic video или 3D video) было очень популярно в конце XX века, и сейчас регулярно возникают волны интереса к нему. По всему миру есть кинотеатры, которые при помощи той или иной технологии воспроизводят стереоскопическое видео. Для стереовидео нужно два видеоканала, часто называемых слоями: один для левого глаза, другой для правого. Также необходимо обеспечить, чтобы в «свой» глаз попадала своя картинка. Таким образом у зрителя возникает чувство объёмности, трёхмерности видеоматериала, повышается реалистичность ощущения просмотра. Примерно такой же, но более слабый по качеству эффект даёт просмотр видео в пластиковых очках, где для одного глаза применяется красный светофильтр, а для другого — зелено-голубой. Это старый принцип анаглифической стерео-фотографии. Новые технологии, представленные в 2006 году, в частности HD DVD и диски Blu-Ray, позволяют переносить больше стереовидеоматериала и призваны сделать и домашнее стереоскопическое видео более доступным.
В первом отечественном стереокинотеатре «Москва», открывшемся 4 февраля 1941 года использовался экран с щелевым проволочным растром[2]. С 1947 года в кинотеатре «Стереокино» использовался стеклянный растровый экран с очень большим количеством микропризм. Растровые экраны позволяли наблюдать трёхмерное изображение без специальных очков.
После перестройки уникальный экран был вывезен в Одессу и пропал[источник?].
Видеоматериалы могут быть аналоговыми или цифровыми.
Телевизионные вещательные стандарты изображения Новые цифровые:
Старые аналоговые:
|
Стандарты видеоразъёмов
|
Аналоговые форматы видеозаписи
|
Цифровые форматы видеозаписи
|
Форматы цифровых оптических дисковых носителей
|
Форматы цифрового кодирования и сжатия
|
Видео формат |
Год |
Тип ленты |
Ширина пленки |
Тип сигнала |
Горизонтальное разрешение, твл |
Отношение сигнал/шум, дБ |
U-Matic |
1969 |
Оксидная |
3/4 дюйма |
Композитный |
280 |
45 |
1" Type C |
1976 |
Оксидная |
1 дюйм |
Композитный |
330 |
46 |
VHS |
1976 |
Оксидная |
1/2 дюйма |
Композитный |
240 |
46 |
Betacam |
1982 |
Оксидная |
1/2 дюйма |
Компонентный |
300 |
48 |
Video8 |
1985 |
Оксидная |
8 mm |
Композитный |
260 |
46 |
U-Matic SP |
1986 |
Металло-порошковая |
3/4 дюйма |
Композитный |
330 |
47 |
Betacam SP |
1986 |
Металло-порошковая |
1/2 дюйма |
Компонентный |
470 |
51 |
M II |
1986 |
Металло-порошковая |
1/2 дюйма |
Компонентный |
440 |
52 |
D1 |
1986 |
Металло-порошковая |
3/4 дюйма |
Цифровой 4:2:2 |
460 |
56 |
S-VHS |
1987 |
Оксидная |
1/2 дюйма |
Y/C |
400 |
47 |
D2 |
1988 |
Металло-порошковая |
3/4 дюйма |
Цифровой 4fsc |
450 |
54 |
Hi-8 |
1989 |
Металло-порошковая |
8 mm |
Y/C |
400 |
47 |
D3 |
1991 |
Металло-порошковая |
1/2 дюйма |
Цифровой 4fsc |
450 |
54 |
Digital Betacam |
1993 |
Металло-порошковая |
1/2 дюйма |
Цифровой 4:2:2 |
500 |
62 |
D-5 |
1994 |
Металло-порошковая |
1/2 дюйма |
Цифровой 4:2:2 |
450 |
54 |
DV |
1995 |
Металло-порошковая |
1/4 дюйма |
Цифровой 4:2:0 (PAL) 4:1:1 (NTSC) |
500 |
54 |
DVCPRO |
1995 |
Металло-порошковая |
1/4 дюйма |
Цифровой 4:1:1 |
530 |
55 |
Digital-S (D9) |
1995 |
Оксидная |
1/2 дюйма |
Цифровой 4:2:2 |
540 |
55 |
DVCAM |
1996 |
Металло-порошковая |
1/4 дюйма |
Цифровой 4:2:0 (PAL) 4:1:1 (NTSC) |
530 |
55 |
3gp, flv, avi, mpg, mov, swf, asf, mp4, wmv, mts, mkv…
Для того, чтобы перейти непосредственно к работе над фильмом, нам так или иначе придётся познакомиться с теорией цифрового видео. Не спешите делать недовольное лицо — речь идёт о вещах, применимых на практике, а не об абстрактных излияниях автора на философские темы. Рано или поздно вы столкнётесь с этим в своей работе над фильмом — и будет лучше, если вы получите представление о стандартах цифрового видео заранее.
Видеокамеры можно классифицировать по следующим условным признакам:
Мы не рассматриваем устаревшие аналоговые камеры VHS и Hi8, а так же модели с классической плёнкой.
Во всём мире существует несколько стандартов аналогового телевещания: PAL, SECAM и NTSC. Стандарт PAL используется в западной Европе, NTSC — в США, а SECAM — в восточной Европе, включая Россию. Стандарты PAL и SECAM похожи, и по этому всё оборудование, которое поддерживает один стандарт, работает и с другим.
Стандарт PAL предусматривает съёмку с частотой 25 кадров в секунду, а NTSC — с частотой 29,97 кадров в секунду.
Сложностей в выборе стандарта для нас быть не должно. В России и Европе в цифровом видео используется стандарт PAL, кроме того этот формат наиболее близок к киношным 24 кадрам в секунду. Все камеры, легально продающиеся в России, относятся к стандарту PAL. |
Cтандарт NTSC был утверждён в 1952 году национальным комитетом стандартов в области телевидения (National Television Standards Committee, сокращённо NTSC). Стандарт PAL был разработан в 1963 г, чтобы устранить недостатки американской системы NTSC при передаче цветов. PAL расшифровывается как Фазовая чередующаяся линия (Phase Alternation Line).
Необходимость придерживаться стандартов, принятых в середине прошлого века, не лучшим образом влияет на положение вещей в мире современного цифрового видео. В частности, сегодня абсолютное большинство цифровых видеокамер (кроме самых дорогих профессиональных моделей) работают в интерлейсном режиме, хотя со всех точек зрения (технической и логической) это уже не требуется. Мы ещё поговорим подробно на эту тему, а пока нужно просто отметить себе, что видео бывает прогрессивным и интерлейсным, и работать с ним нужно в том режиме, в котором оно было снято. То есть, в случае с любительским видео, мы будем работать в интерлейсном режиме.
Важно заметить, что интерлейсное видео всё-таки обладает некоторыми преимуществами, так что не нужно расстраиваться, что ваша камера умеет снимать только в таком режиме. И уж точно не следует с ходу при монтаже «убивать» интерлейсинг — он вам ещё пригодится!
Чтобы не писать лишнего и не запутывать читателя, далее мы будем рассматривать только видео стандарта PAL.
Кадры видео могут быть сняты в одной из двух пропорций (отношения ширины кадра к высоте):
Не смотря на то, что на картинке изображение с пропорцией 16:9 больше, чем 4:3, это не означает, что широкоэкранные камеры снимают лучше. Всё дело в прямоугольных пикселях — вскоре мы это рассмотрим.
Цифровое видео разделяют на две большие категории:
Обратите внимание, что в формате видео высокой чёткости вообще не предусмотрено пропорций изображения 4:3... Теперь вы знаете, почему сегодня так трудно найти в магазинах современный телевизор с такими пропорциями экрана, и не удивитесь, когда через пару-тройку лет все компьютерные мониторы тоже станут «широкими».
Важно заметить, что цифровое видео предусматривает использование не привычного квадратного, а прямоугольного пикселя. Именно по этому матрицы камер стандартного разрешения имеют разрешение 720x576 независимо от того, в каких пропорциях они снимают, 4:3 или 16:9. Тем не менее важно снимать именно с теми пропорциями, для которых камера была разработана, хотя их почти всегда можно поменять в настройках.
«Прямоугольность» пикселя (Pixel Aspect Ratio) влияет на ширину одного пикселя, высота при этом всегда остаётся неизменной. Например, в видео стандартного разрешения PAL DV значение Pixel Aspect Ratio равно 1,0926 для пропорций 4:3 и 1,4568 для пропорций 16:9.
Тему с прямоугольными пикселями понять весьма трудно, так что вот вам простой вывод:
Разумеется, камера высокой чёткости лучше, чем камера стандартной чёткости — по всем параметрам, кроме цены.
Независимо от разрешения изображения и стандарта видео камера может сохранять цифровой поток на одном из носителей:
Не смотря на почтенный возраст кассет, для съёмок фильма этот вариант предпочтительнее других. Если переводить всё в сухие цифры, то выходит, что на одну 60-минутную кассету помещается свыше 11 гигабайт информации, которая, к тому же, не сильно сжимается кодеками (об этом — чуть ниже).
Важно понимать, что сокращенное название жёсткого диска (HDD, Hard Disk Drive) и формата видео высокой чёткости (HD, High Definition) — принципиально разные вещи! Камеры с жёстким диском могут быть как высокого, так и стандартного разрешения — не запутайтесь и следите за количеством букв «D»!
Поскольку видео занимает слишком много места, все видеокамеры, от бытовых до самых дорогих, сжимают его одним из кодеков. Эти кодеки работают на аппаратном уровне и не могут быть отключены.
Для сохранения видео стандартного разрешения на кассеты DV используется одноимённый кодек. Его параметры стандартизированы, что позволяет просматривать записанные кассеты на любом оборудовании, имеющем логотип DV. Этот кодек хорош тем, что не смотря на большие объёмы сохраняемых файлов позволяет быстро получать любой кадр видеопоследовательности, что особенно важно при монтаже материала (работа с монтажной программой будет происходить без задержек).
Для сохранения видео высокого разрешения на кассеты DV используется кодек MPEG-2, широко использующийся повсюду — от DVD-дисков до цифрового телевещания. Для удобства (или для того, чтобы запутать покупателей) производители называют его HDV. Этот кодек — компромисс между объёмом файла и производительностью, позволяющий сохранить картинку с разрешением в четыре раза больше, чем у DV, при таких же размерах файла. Для монтажа такого видео подойдёт любой двуядерный процессор.
Для сохранения видео на такие носители, как жёсткий диск, оптические диски или флеш-память используются кодеки, которые сжимают видео в несколько раз сильнее, что предъявляет повышенные требования к оборудованию для монтажа и аккуратности работы. Во время монтажа такого видео нельзя допускать лишних пережатий, которые непременно скажутся на качестве готового фильма самым неприятным образом.
Для сохранения видео стандартного разрешения на оптические диски или жёсткий диск большинство камер используют кодек MPEG-2.
Для сохранения видео высокого разрешения на оптические диски или жёсткий диск используется кодек на основе алгоритма h.264, называемый AVCHD (кроме камер JVC, которые используют MPEG-2). В этом кодеке для сжатия каждого кадра используются не только предыдущие (как в MPEG-2), но и следующие кадры. Стоит ли говорить, что этот кодек предъявляет самые высокие требования к оборудованию? К примеру, на компьютере, где вы могли бы комфортно монтировать видео в формате DV, видео AVCHD может даже проигрываться с задержками! Для комфортного монтажа (т.е. такого монтажа, который не будет раздражать постоянными задержками и прерываниями) вам потребуется очень мощный компьютер.
Нужно понимать, что кодек, используемый в видеокамере, сильно влияет на процесс монтажа и никак не влияет на то, в каком кодеке вы сделаете готовый фильм. Одного пережатия при монтаже не удастся избежать никак, так что вы будете вольны выбрать любой кодек, который подойдёт для ваших нужд.
PAL,
NTSC, SECAM - это видеостандарты цветного
телевидения, принятые в различных странах.
В 1953 году в США появился первый из стандартов - ситема NTSC.
Разрешение экрана для этого стандарта составляет 720х480 пикселей, частота 30
кадров в секунду (kps). Такая частота обусловлена тем, что промышленный ток в
США имеет частоту 60 Гц. Система NTSC распространена в США, Канаде, Японии,
Мексике и некоторых других странах.
Немного позже, в 1956 году, Франция разработала стандарт SECAM.
Поскольку частота промышленного тока в Европе составляет 50 Гц, частота кадров
для SECAM - 25 kps.
В 1967 году началось вещание цветного телевидения данного стандарта во Франции
и Советском Союзе. Некоторые считают, что Советский Союз присоединился к
вещанию в этом стандарте в противовес США, но не будем забывать, что ток в СССР
имеет также частоту 50 Гц, а, кроме того, Франция предложила готовое
оборудование для вещания и льготные условия при покупке лицензии.
Таким образом эфирное телевидение в России и странах СНГ передается в стандарте
SECAM. Это относится также к Франции, ряду стран Африки, Азии и Южной Америки.
Сразу хочу оговориться, что кабельное телевидение в России вещает в стандарте
PAL.
Стандарт PAL разработан в Германии в 1967 году и используется
во всех странах Европы кроме вышеназванных, а также в Азии, Австралии и
некоторых странах Африки и Южной Америки.
Стандарты PAL и SECAM имеют одинаковую частоту кадров - 25 kps и одинаковое
разрешение экрана - 720х576.
В то время покупать телевизор в Западной Европе жителю СССР было рискованно –
он мог не принимать телевещание в СССР из-за отсутствия декодера PAL/SECAM.
Сейчас все телевизионные приемники, продающиеся в Европе и России, имеют такой
декодер и могут работать как в стандарте PAL, так и SECAM. А вот покупать
телевизор, например, в США для использования в России не следует –
видеостандарты несовместимы, это определяется различной частотой промышленного
тока.
Часто еще эти стандарты различают по числу строк: PAL и SECAM - 625 строк, NTSC
- 525 строк. Не все строки активные. Для PAL из 625 строк активными являются
576, а оставшиеся - вспомогательные, нужны для установки луча на начало и
подготовки к приему новой последовательности строк.
Отображение кадра на экран происходит в два прохода, а, значит, кадр состоит из
двух полукадров (полей). Каждый полукадр длится 1/50 секунды, а,
соответственно, кадр - 1/25 (для стандарта PAL). Значит, частота кадров
составляет 25 kps.
Для NTSC длительность полукадра 1/30 секунды, кадра - 1/30 сек.
В системе PAL проход начинается с нижнего поля, а в NTSC - с верхнего. Это
называется чересстрочная развертка.
Если вы занимаетесь монтажом видео, при выводе фильма обязательно нужно
обратить внимание на стандарт. Любая монтажная программа предложит вам выбор -
PAL или NTSC (стандарт SECAM в видеопроизводстве не применяется, только для
телевизионного вещания).
Если вы живете в Европе, выбираем видеостандарт PAL (25 кадров в секунду,
разрешение 720х576).
Если у вас есть фильм в стандарте NTSC, его можно переконвертировать в PAL с
помощью монтажной программы, например, Adobe Premiere, или
программы-кодировщика, например, Canopus ProCoder.
DVB-T (Digital Video Broadcasting —
Terrestrial) - стандарт для цифрового телевизионного и
радиовещания - подробнее...
QuickTime — проприетарная технология компании Apple, разработанная в 1991 году для воспроизведения цифрового видео, звука, текста, анимации, музыки и панорамных изображений в различных форматах.
QuickTime также является мультимедийным фреймворком, который могут использовать другие программы. Некоторые программы используют QuickTime для выполнения своих мультимедийных задач — например, iTunes, iMovie и Final Cut Pro производства самой Apple, а также различное программное обеспечение[уточнить] сторонних производителей — например, Adobe Photoshop CS4, Ulead Video Studio.
11. Редактирование и компоновка видео. Монтаж и его принципы.
Монтаж (фр. montage) видео- или аудиоматериала (в кинематографе, на телевидении, на радио, на звукозаписывающих студиях) — процесс переработки или реструктурирования изначального материала, в результате чего получается иной целевой материал. Считается, что монтажно-тонировочный период в кинопроизводстве не менее важен, чем съемочный: монтаж способен придать фильму нужный ритм и атмосферу. Различают внутрикадровый и межкадровый монтаж.
Линейный монтаж на телевидении.
Нелинейный монтаж на компьютере.
Линейный монтаж происходит чаще в реальном времени. Видео из нескольких источников (видеомагнитофонов, камер т. д.) поступает через коммутатор на приёмник (эфирный транслятор, записывающее устройство). В этом случае переключением источников сигнала занимается режиссёр линейного монтажа. О линейном монтаже также говорят в случае процесса урезания сцен в видеоматериале без нарушения их последовательности.
При нелинейном монтаже видео или кинопленка (которая может быть отсканирована и переведена в цифровой вариант) разделяется на фрагменты , после чего фрагменты записываются в нужной последовательности, в нужном формате на выбранный видеоноситель. При этом фрагменты могут быть урезаны, то есть не весь исходный материал попадает в целевую последовательность; подчас сокращения бывают очень масштабными.
В случае киноплёнки процесс[1] нелинейного монтажа происходит вручную: монтажёр с применением монтажного стола под руководством кинорежиссёра режет плёнку в нужных местах, а затем склеивает фрагменты в выбранной режиссёром последовательности.
Гибридный видеомонтаж имеет достоинства первых двух (нелинейная видеомонтажная система играет роль видеоисточника). Недостаток — более высокая цена.
В 1917 году Лев Кулешов написал о монтаже: «Для того, чтобы сделать картину, режиссёр должен скомпоновать отдельные снятые куски, беспорядочные и несвязные, в одно целое и сопоставить отдельные моменты в наиболее выгодной, цельной и ритмической последовательности, также, как ребенок составляет из отдельных, разбросанных кубиков с буквами целое слово или фразу».
Линейный монтаж — формирование единого аудио- или видеоряда из отдельных фрагментов исходных записей с одного магнитофона на другой с мастер-кассетой.
Линейный монтаж осуществляется прямой перезаписью с видеокамеры на видеомагнитофон в реальном времени, стыкуя видеофрагменты последовательно друг за другом. При этом обрезается брак, а вначале и конце добавляются заготовленные шаблоны. Использование дополнительных музыкальных фрагментов, фото и анимации ограничено.
Определить такой монтаж просто. Например, если оператор снимал событие цифровой камерой, и запись на VHS кассету сделана на стереовидеомагнитофоне, то при проигрывании такой записи на стереомагнитофоне Вы не услышите добавленной музыки, которая была записана в режиме «вставки», в то время как на обычном видеомагнитофоне звучание фонограммы будет полным.
Этот вид монтажа используют любители. Особого впечатления такие фильмы не производит.
Линейный монтаж производится на двух видеомагнитофонах в монтажной аппаратной после видеозаписи на ленточный носитель. С магнитной ленты с исходными материалами на первом магнитофоне выбираются фрагменты, которые переписываются на «мастер-кассету» второго магнитофона («сгон»). Это происходит либо в режиме «продолжение» (assemble), т.е. последовательно, либо в режиме «вставка» (insert), когда один фрагмент вставляется внутрь другого. При линейном монтаже число циклов перезаписи на аналоговых видеомагнитофонах не должно превышать 3-4 раз.
Эфирные копии применяются для передачи программы в эфир. Технические — используются для вспомогательных нужд.
Достоинства:
1) Сегодня в журналистской практике запись в основном производится на ленточные
носители, и при большом количестве «исходников» линейный монтаж осуществляется
быстрее, так как не надо тратить время на преобразование аналоговой информации
в цифровой вид.
2) Надежность аппаратуры и «обкатанная» технология.
3) При покадровой отработке монтажного листа легче уложиться в хронометраж
передачи, убрав или вставив нужный фрагмент.
Недостатки:
1) «Мастер» по техническим характеристикам всегда хуже «исходника» из-за
наложения структурных (на ленте) и контактных (трение о магнитную головку)
шумов.
2) Если для создания какого-либо эффекта требуется несколько перезаписей,
качество «мастера» снижается в геометрической прогрессии.
3) Аппаратура очень дорогая и громоздкая.
4) Даже незначительная ошибка монтажера при записи «мастера» повлечет
перезапись всей информации.
5) Не хватает специалистов старой школы, знающих эту операцию.
6) Большие временные затраты на поиск начала монтируемого фрагмента, перемотку
и репетицию, для уточнения монтажных точек.
Нелинейный монтаж осуществляется с цифровым видеоматериалом на дисковых устройствах, при этом не происходит процесс перезаписи, а изменяется последовательность адресов фрагментов передачи. Если исходный журналистский материал записывался на камеру с жестким диском, к нелинейному монтажу можно приступать сразу по окончании съемки. В случае использования видеокамер с ленточными носителями оцифровка занимает значительное время (реальное время записи). Операция может быть осуществлена даже на рабочем месте журналиста. При цифровой технологии число циклов перезаписей не должно превышать 20 раз. Примерный объем памяти для записи одночасовой передачи эфирного качества составляет 18 Гбайт.
Достоинства:
1) Отсутствие контактных и структурных шумов во время «сгона» видеоряда, так как
операция перезаписи отсутствует.
2) Прямой доступ к любому месту видеосюжета, так как ввиду отсутствия ленты ее
не надо перематывать.
3) Низкая стоимость аппаратуры.
4) Относительная легкость выполнения операции из-за возможности визуального
контроля частотного спектра на мониторе.
5) Возможность многоразового возврата к монтажу.
Недостатки:
1) Большое время оцифровки видеосигнала в случае применения ленточных
носителей.
2) Временные затраты на обратное преобразования сигнала в аналоговый вид (так
как в настоящее время основное телевещание происходит в аналоговом виде).
3) Трудность работы с большим количеством «исходников» из-за ограниченности дискового
пространства видеосервера.
В случае необходимости восстановления исходной информации частотный спектр сокращается, так как цифровой сигнал, как правило, подвергается компрессии.
03. Принципы монтажа
1. Все, что касается творчества в кино и на телевидении, зиждется на тех или других "причудах" нашего восприятия и "механизмах" работы сознания. На закономерности построения кадров при съемке и четкость выполнения авторских задач при монтаже влияют три десятка особенностей нашего восприятия, которые располагаются на разных уровнях прохождения зрительной информации через глаза до отделов мозга, которые ведут распознавание образов, увиденных на экране. Эти особенности сформировали десять принципов монтажа, соединения кадров, которые, в одном случае, следует строго соблюдать, а в другом, зная меру, - нарушать, т. е. пользоваться своим знанием для акцента, выделения чего-либо в произведении, сцене или эпизоде.
. Два подхода к монтажу кадров:
- комфортность просмотра, когда стыки между кадрами не воспринимаются,
- стык кадра как акцент (чтобы подчеркнуть разрыв в развитии сюжета и т.п.).
Ключевой вопрос: какие кадры стоит ставить рядом, а какие нет.
Принципы монтажа выявил Лев Кулешов, проанализировав анализ сотен фильмов.
3. Монтажная фраза - совокупность кадров, связанных по смыслу или эмоционально.
4. Ключевые принципы:
- единство направления движения,
- комфортная смена крупности.
10 принципов монтажа
1: Монтаж по крупности.
Кадры по крупности:
- деталь (макроплан),
- крупный,
- первый средний (поясной),
- второй средний (человек до колен),
- общий (человек в полный рост),
- дальний.
Легко и без спотыкания смотрится переход по крупности через план, от крупного ко второму среднему, от первого среднего к общему и обратно. Как бы исключение из этого правила составляют стыки детали и крупного плана, дальнего и общего планов. Отличие в крупности должно быть достаточно заметным, но не настолько резким, чтобы зритель потерял ориентацию, потерял ощущение, что на экране продолжает действовать один и тот же объект.
2: Монтаж по ориентации в пространстве.
Съемка двух взаимодействующих друг с другом объектов должна производиться строго с одной стороны от линии их взаимодействия. Решающим фактором является взгляд человека, а не поворот головы: даже если человек смотрит всего лишь вскользь от объектива чуть-чуть левее, всегда на экране взгляд будет направлен влево от оси камеры.
3: Монтаж по направлению движения главного объекта в кадре.
Запрещается изменять направление вектора движения объекта с правого на левое по отношению к вертикальной линии на стыке кадров. Если же это необходимо сделать, нужно его «объяснить», то есть показать поворот.
4: Монтаж по фазе движущихся в кадре объектов.
Все, что движется и снимается несколькими последовательными планами, должно быть смонтировано с соблюдением фаз, создавая впечатление непрерывности хода движения и действия. Особенно жестко необходимо выполнять это условие при съемках и монтаже идущего строя солдат. Когда снимается, к примеру, общий план шеренги и крупный план героя, идущего в строю, то, само собой разумеется, что движения рук и ног у нашего избранника и всего строя должны быть синхронными. По движениям плеч и головы зритель сразу может заметить, что герой идет не в ногу со своими однополчанами, если фазы взмахов рук не попадут в ритм шага строя.
5: Монтаж по темпу движения объектов.
Объект в рамках одной монтажной фразы должен двигаться с одинаковой скоростью. Стык кадров с движением в разном темпе будет не только означать продолжение действия, но еще станет выражать перемену в ходе событий.
6: Монтаж по композиции кадра (по смещению центра внимания).
При соединении кадров обязательно должно происходить смещение центра внимания. Практика показала, что такой перескок центра внимания по горизонтали для сохранения плавности перехода от кадра к кадру не должен превышать одной трети ширины экрана.
7: Монтаж по свету.
Если снимается какая-то единая сцена с непрерывным ходом развития событий, то характер и схема освещения должны быть сохранены от первого до последнего кадра. Это касается направления света (определяется в кадре по теням) и общая яркость кадра.
8: Монтаж по цвету.
В общей трактовке плавности перехода при изменении цветовых пятен от кадра к кадру существует одно простое правило: в предшествующем плане должно присутствовать пятно, которое занимает около одной трети площади в рамке кадра. Это послужит логичным и естественным оправданием для зрителя заполнения цветом всей площади следующего кадра. Зрительский глаз должен обязательно за что-то "зацепиться" в цветовом решении композиции, что-то "ухватить" в первом кадре, чтобы во втором для него не стало полной неожиданностью появление большого совершенно нового цветового фона или пятна.
9: Монтаж по смещению осей съемки.
Не следует снимать следующий кадр, находясь на оси объектива предыдущего. При съемке последовательно укрупняющихся планов одного объекта нужно смещаться с точки съемки, слегка меняя ось, чтобы несколько менялись пропорции в кадре и фон за объектом. Кроме того, "обегание" объекта при съемке позволяет дополнительно удовлетворить потребность человека разглядеть объект с разных сторон, как бы "ощупать" его глазами.
10: Монтаж по направлению основной движущейся массы в кадре.
а) Направления движущихся масс в соседних кадрах должны совпадать или иметь близкие векторные значения.
б) При монтаже кадра с полностью статичным изображением с кадром, в котором имеется движущаяся масса, эта масса должна занимать менее одной трети площади всего изображения.
в) Скорость движения масс в смежных кадрах должна полностью совпадать или быть достаточно близкой, т. е. темп движения в одном кадре не должен отличаться от темпа движения в следующем.
5. Еще несколько правил съемки и монтажа
- Движущийся в кадре предмет должен выйти за рамку.
- При склейке двух панорам они должны быть однонаправленными.
- При съемке панорам и отъездов-наездов нужно снять статичные 5-секундные кадры в начале и в конце, чтобы дать режиссеру возможность для монтажного маневра.
6. Типология монтажных соединений
Последовательный монтаж. Способ изложения содержания, при котором действие фильма или передачи продолжается без видимых для зрителя разрывов во времени.
Перемена точки съемки. Благодаря точно найденным различным точкам съемки и ракурсу мы получаем ощущение пространства, в котором происходит показываемое действие. Особенно выражено в спортивных съемках.
Причинно-следственная связь. Если герой повернулся, то в следующем кадре мы видим причину его реакции. И, наоборот, после кадра вошедшего человека в комнату или что-либо говорящего мы можем дать лицо героя на котором видна соответствующая реакция.
Перемена места действия. Обычно если два кадра действие, которых происходят в совершенно разных местах, монтируется рядом, то мы понимаем, что это новый эпизод сменил предыдущий.
Выделение детали. Чтобы подчеркнуть какую-то деталь, характерную для данного события, явления или персонажа в монтажную фразу врезается соответствующий макроплан рука, жест предмет и т.п. В телевизионных передачах и репортажах часто используются так называемые перебивки.
Параллельное действие. Это монтаж кадров или сцен, происходящих одновременно, но в разных местах. В современном телевидение такое часто происходит при ведении прямых передач из разных точек города, страны, мира.
Контрастное сопоставление. Фактически это столкновение кадром антонимов, то есть кадров или эпизодов общей тематической направленности, но противоположных по содержанию. (Кадров роскоши и нищеты, гурманства и голода, мира и войны и т.д.)
Ассоциация или аналогия. Ассоциативный монтаж предполагает косвенную, опосредованную связь между явлениями.
Прошедшее и будущее время. Обычно переход к эпизоду, действие которого происходило ранее того события, что мы только что видели на экране, происходит через «наплыв» или выделяется тонально. Скажем, если крупный план задумчивого лица героя медленно сменяет другое изображение, мы понимаем, что герой предался воспоминаниям.
Монтажный рефрен. Повторяя через определенное время один и тот же кадр, авторы акцентируют на нем внимание зрителя и тем самым вызывают у него определенные ассоциации.
Ритмичный монтаж. Имеется ввиду организация изобразительного материала в остром, захватывающем темпоритме. Чаще всего такого рода монтаж осуществляется под музыку.
Существует большое количество различных форматов видео и аудио. В то же время, большинство устройств (таких, как IPod) и программ (таких как Windows Media Player) зачастую поддерживают лишь несколько конкретных форматов. DVD или WMV видео не будет проигрываться, например, на IPod без конвертации в MP4 файл. В данной статье речь пойдет о программах для конвертации видео, точнее, о их бесплатных аналогах .
А теперь немного детальней об этих программах и некоторых других.
Все программы для сжатия видео условно можно условно разделить на несколько категорий.
1. Устройство-ориентированные программы подойдут нетребовательным пользователям, которым зачастую нужна лишь кнопка "конвертация" для получения вожделенного формата. Такие программы очень простые в использовании, содержат набор предварительных предустановок (пресетов), и лишь немногие предоставляют тонкие ручные настройки . Их цель - быстро и без проволочек конвертировать в определенный "аппаратный" формат (3gp, IPod, PSP, Xbox и т.д. ).
2. Так называемые, пользовательские программы, являются противоположностью для программ предыдущей категории. Они ориентированы на более искушенных и требовательных юзеров. Программы имеют много тонких ручных настроек и, в тоже время, предлагают предустановки для различных форматов. Обладают более сложным интерфейсом.
3. Гибридные программы - это некий компромисс между вышеупомянутыми категориями и подходят для любых типов задач. Подобные программы, как правило, обладают расширенным функционалом, к примеру, содержат встроенный видеоредактор, возможность выбора пресетов и доступа к ручным настройкам и т.п.
XMedia
Recode (скачать)
- качественный видеоконвертер с фунциями редактора (обрезка, изменение
разрешения и т.п.). Программа обладает удобным и строгим, я бы даже сказал
классическим интерфейсом и хорошим, чуть ли не эталонным (есть такое мнение)
качеством кодирования. Поддерживает множество предустановок кодирования для
разнообразных устройств, и, кроме того, присутствует возможность тонких ручных
настроек. Программа лишь формально отнесена к категории "гибридных".
На самом деле, она прекрасно вписалась бы в любую из категорий, т.е. программа
универсальна:) Размер: 6.2 Мб
ИМХО: У программы очень неплохое качество кодирования. Симпатичный и удобный интерфейс и то, что программа не требует установки (по крайней мере версия 3.0.1, т.е. фактически в портабл исполнении) усиливают впечатление от знакоства с программой до "очень приятно":)
iWisoft Video
Converter (скачать) - при старте запускает браузер для проверки
обновлений. К счастью, это единственный недостаток этого бесплатного
конвертера. Интерфейс программы продуман и прост в использовании. Содержит
хорошо организованный набор предварительных настроек, поддерживает их создание
и сохранение. Также программа имеет встроенный видеоредактор с помощью которого
можно наносить водяные знаки, обрезать и соединять видеофрагменты, менять
контраст, яркость, громкость звука, снимать скриншоты с видео и т.п.
Поддерживает пакетную обработку видео и аудио. Размер: 8,7 Мб
Format Factory - является хорошим
выбором практически для любых задач. Содержит пресеты для более 100 устройств,
преобразует в десятков форматов, а также позволяет производить ручные настройки
кодирования. Кроме того, как следует из названия, программа являет собой
фактически фабрику по конвертации. И конвертирует не только видео, но и аудио,
картинки, документы, словом, все что можно сжать или перевести в другой формат.
Также умеет создавать образы DVD и CD, производить риппинг DVD и Audio CD,
восстанавливать поврежденные аудио и видео файлы. Мультиязычна, есть русский и
украинский язык. Размер: 41,2 Мб
ИМХО: Универсальная программа, своего рода комбайн. Несмотря на это, обладает интуитивно понятным интерфейсом, правда несколько попсовым и перенасыщенным (ибо комбайн). Из явных недостатков - содержит встроенную рекламу.
FFCoder - объединяет под
одной оболочкой различные CLI-утилиты, каждая их которых лучшая в своем классе.
Как и большинство программ в этом обзоре, кроме всего прочего, утилита
поддерживает джентельменский набор функций для сжатия видео, обладая при этом
простым и изящным интерфейсом. Поддерживает весьма продвинутые конфигурации для
каждого видеоформата и кодека, вплоть до настроек освещения и рендеринга.
Несмотря на некоторые особенности (см. ниже), программа станет отличным выбором
для продвинутого пользователя, которому нужен полный контроль над процессом. А
особенность состоит в том, что программа требует Microsoft .NET Framework 2.0
(для XP) и Nero AAC codec. Впрочем все это она сама и загружает при установке.
Размер: 32 Мб
SUPER
-
имеет простой, но несколько раздражающий интерфейс (все настойки и пресеты в
одном окне). С ее помощью можно конвертировать файлы различных форматов
практически одним нажатием кнопки. По скорости кодирования SUPER обгоняет
многих своих конкурентов. Однако расплатой за это становится несколько мудреная
установка - программа навязчиво предлагает установить дополнительный софт,
который к конвертации видео имеет весьма отдаленное отношение. Размер: 38 Мб
ИМХО: Название программы говорит само за себя - автор попытался реализовать максимально функциональный и, при том, доступный конвертер видео. Тем не менее, ввиду вышеупомянутых недостатков программа оставляет не очень хорошее впечатление.
Pazera Video
Converters Suite -
это пакет из нескольких отдельных конверторов (AVI, MP4, MPEG, FLV, 3GP и т.п.
) объединенных под общей GUI (оболочкой). Каждый конвертер обладает несколькими
предустановками для конкретных устройств, и при том, дает возможность ручной
корректировки настроек, которые можно сохранять как пресеты . Оболочкой для
программы служит простой текстовой интерфейс. Также позволяет производить
"рип" CD-audio дисков и извлекать звуковую дорожку из видеофайлов.
Размер: 33,4 Мб
ИМХО: Достойный представитель программ для сжатия видео начального уровня, который тем не менее, дает возможность управлять основными настройками конвертации.
Miro Video Converter - очень простой
бесплатный конвертор. Просмотр видео на мобильном телефоне, КПК или приставке
стало обыденностью. Чтобы получить подобный формат видео, нет нужды вникать в
настройки, возиться с кодеками, разрешениями и интерлейсингом. Необходима лишь
одна заветная кнопка, которую жмешь и... Miro Video Converter — как раз и есть
такая кнопка. Предлагает набор пресетов для сжатия видео, но поддерживает
конвертацию только одного файла за раз. Размер: 37,8 Мб
3.6. Подготовка видео для мультимедиа
Редактирование и компоновка видео выполняются практически одинаково вне зависимости от того, подготавливается конечное видео для мультимедийной доставки или для передачи по сети либо записи на CD/DVD. Но для мультимедиа обычно требуется дополнительный этап подготовки материала для доставки. Необходимость в нём объясняется ограничениями конечной среды доставки и платформ воспроизведения, которые обычно не соответствуют платформе, использованной для редактирования и компоновки. На этом этапе нужно идти на компромиссы и решать, чем можно пожертвовать, чтобы удовлетворить требованиям видео возможностями среды доставки и маломощных компьютеров. В зависимости от материала выбор может быть разным. Например:
1. Размер кадра
Уменьшение размера видеокадра является относительно безболезненным способом
уменьшения размера и ширины полосы видеофайлов. Обычно люди сидят близко к
мониторам, поэтому изображение необязательно должно быть большим.
2. Частота смены
кадров
Так как компьютерные мониторы обновляются со значительно большей частотой (60
Hz и выше), то, используя кадры вчетверо меньшего размера и уменьшив частоту
смены кадров с 30 до 15 кадров в секунду, можно уменьшить объём данных в 8 раз.
3. Насыщенность
цвета
Ещё втрое уменьшить размер можно, приняв насыщенность цвета не 24 бит, которая
обычно используется для видео, а 8 бит. В этом случае применяются только цвета
стандартной палитры, индексированные цвета пользовательской палитры.
4. Качество
изображения
Если пункты 1-3 неприемлемы или недостаточно снижают требования видео,
возможно, придётся сжимать файл видео за счёт потери качества. Выше уже
описывались подходящие кодеки для сжатия видео.
Помимо принятия мер для уменьшения размера видео, также необходимо гарантировать его воспроизводимость на любой платформе. Может даже потребоваться создать несколько версий фильма для различных платформ.
Для видео, которое планируется распространять через сеть, часто создаётся несколько версий, подстроенных под скорости сетевых соединений пользователей.
Видео можно сжимать попутно при сохранении в каком-нибудь редакторе, либо воспользоваться специальными программами для сжатия видео, такими как Discreet Cleaner, Dr. DivX. Чтобы смягчить эффекты агрессивного сжатия, можно использовать подходящие фильтры; также можно одновременно построить и объединить различные версии фильма. В число дополнительных инструментов входят анализатор скорости передачи данных и окно предварительного просмотра, позволяющее наблюдать эффекты различных настроек.
Скачано с www.znanio.ru
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.