Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Вопросы к экзамену ИВТ.docx
Скачиваний:
12
Добавлен:
26.09.2019
Размер:
183.75 Кб
Скачать

21. Системы управления базами данных (субд). Классификация субд. Архитектура субд, История развития субд. Инструментальные средства быстрой разработки прикладных программ (rad).

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

Архитектура:

ядро, которое отвечает за управление данными во внешней и оперативной памяти, и журнализацию

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

подсистему поддержки времени исполнения, которая интерпретирует программы манипуляции данными, создающие пользовательский интерфейс с СУБД

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

Классификации СУБД

По модели данных: Иерархические - дерево, состоящее из объектов различных уровней. Между объектами существуют связи, каждый объект может включать в себя несколько объектов более низкого уровня. Сетевые - уровень, элемент (узел), связь. Узел — это совокупность атрибутов данных, описывающих некоторый объект. Несмотря на то, что эта модель решает некоторые проблемы, связанные с иерархической моделью, выполнение простых запросов остается достаточно сложным процессом. Если необходимо изменить структуру данных, то нужно изменить и приложение. Реляционные - характеризуются простотой структуры данных, удобным для пользователя табличным представлением и возможностью использования формального аппарата алгебры отношений и реляционного исчисления для обработки данных. Реляционная модель ориентирована на организацию данных в виде двумерных таблиц. Объектно-ориентированная — система управления базами данных, основанная на объектной модели данных. Эта система управления обрабатывает данные как абстрактные объекты, наделённые свойствами, в виде неструктурированных данных, и использующие методы взаимодействия с другими объектами окружающего мира. Объектно-реляционные - Oracle Database, Informix, DB2

По степени распределённости

Локальные СУБД Распределённые СУБД

По способу доступа к БД

Файл-серверные

Примеры: Microsoft Access, Paradox, dBase, FoxPro, Visual FoxPro.

Клиент-серверные

Примеры: Oracle, Firebird, Interbase, IBM DB2, Informix, MS SQL Server, Sybase Adaptive Server Enterprise, PostgreSQL, MySQL, Caché, ЛИНТЕР

Встраиваемые

Примеры: OpenEdge, SQLite, BerkeleyDB, Firebird Embedded, Microsoft SQL Server Compact, ЛИНТЕР.

История

Предшественницами СУБД были файловые системы. В середине 60-х годов корпорация IBM совместно с фирмой NAA (North American Aviation) разработали первую СУБД - иерархическую систему IMS (Information Management System) - она до сих пор остается основной иерархической СУБД, используемой на большинстве крупных мейнфреймов.

60-х годов было появление системы IDS. Развитие этой системы привело к созданию нового типа систем управления базами данных - сетевых СУБД. Сетевая СУБД создавалась для представления более сложных взаимосвязей между данными, чем те, которые можно было моделировать с помощью иерархических структур, и послужили основой для разработки первых стандартов БД. Для создания таких стандартов в 1965 году на конференции CODASYL (Conference on Data Systems Languages) была сформирована рабочая группа List Processing Task Force.

В 1970 году Э. Ф. Кодд , работавший в корпорации IBM, опубликовал статью о реляционной модели данных, позволявшей устранить недостатки прежних моделей. Вслед за этим появилось множество экспериментальных реляционных СУБД, а первые коммерческие продукты появились в конце 70-х - начале 80-х годов. Особенно следует отметить проект System R, разработанный в корпорации IBM в конце 70-х годов (Astrahan et al., 1976). Этот проект был задуман с целью доказать практичность реляционной модели, что достигалось посредством реализации предусмотренных ею структур данных и требуемых функциональных возможностей. На основе этого проекта были получены важнейшие результаты.

Был разработан структурированный язык запросов SQL, который с тех пор стал стандартным языком любых реляционных СУБД.

В 80-х годах были созданы различные коммерческие реляционные СУБД - например, DB2 или SQL/DS корпорации IBM, Oracle корпорации Oracle , др.

В настоящее время существует несколько сотен различных реляционных СУБД для мейнфреймов и персональных ЭВМ. В качестве примера многопользовательских СУБД может служить система CA-OpenIngres фирмы Computer Associates и система Informix фирмы Informix Software, Inc. Примерами реляционных СУБД для персональных компьютеров являются Access и FoxPro фирмы Microsoft, Paradox и Visual dBase фирмы Borland, а также R-Base фирмы Microrim. Реляционные СУБД относятся к СУБД второго поколения. Однако реляционная модель также обладает некоторыми недостатками - в частности, ограниченными возможностями моделирования. Для решения этой проблемы был выполнен большой объем исследовательской работы. В 1976 году Чен предложил модель "сущность-связь" (Entity-Relationship model - ER-модель), которая в настоящее время стала основой методологии концептуального проектирования баз данных и методологии логического проектирования реляционных баз данных. В 1979 году Кодд сделал попытку устранить недостатки собственной основополагающей работы и опубликовал расширенную версию реляционной модели - RM/T (1979), затем еще одну версию - RM/V2 (1990). Попытки создания модели данных, позволяющей более точно описывать реальный мир, нестрого называют семантическим моделированием данных (semantic data modeling).

В ответ на все возрастающую сложность приложений баз данных появились две новые системы: объектно-ориентированные СУБД, или ОО СУБД (Object-Oriented DBMS - OODBMS), и объектно-реляционные СУБД, или ОР СУБД (Object-Relational DBMS - ORDBMS). Попытки реализации подобных моделей представляют собой СУБД третьего поколения.

В СССР в середине 70-х годов была разработана информационно-поисковая система, основу которой составляла универсальная объектно-ориентированная иерархическая СУБД, нашедшая широкое применение при решении задач проектирования и управления и предвосхитившая многие более поздние разработки такого рода.

RAD (от англ. rapid application development — быстрая разработка приложений) — концепция создания средств разработки программных продуктов, уделяющая особое внимание быстроте и удобству программирования, созданию технологического процесса, позволяющего программисту максимально быстро создавать компьютерные программы. Практическое определение: RAD — это жизненный цикл процесса проектирования, созданный для достижения более высокой скорости разработки и качества ПО, чем это возможно при традиционном подходе к проектированию. С конца XX века RAD получила широкое распространение и одобрение. Концепцию RAD также часто связывают с концепцией визуального программирования.

Среды разработки, частично использующие принципы RAD

Delphi, Macromedia Flash, Visual Basic

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

Модель данных строится по принципу взаимосвязанных таблиц - реляционной. Главное достоинство таблиц — в их понятности. Мы настолько привыкли к таблицам, что обычно не требуется никому объяснять, как ими пользоваться.

В реляционных БД строка таблицы называется записью, а столбец — полем.

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

Поля — это различные характеристики (иногда говорят — атрибуты) объекта. Значения полей в одной строчке относятся к одному объекту. Разные поля отличаются именами. Записи различаются значениями ключей.

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

В БД «Домашняя библиотека» разные книги могут иметь одного автора, могут совпадать названия книг, год издания, полка. Но инвентарный номер у каждой книги свой (поле НОМЕР). Он-то и является главным ключом для записей в этой базе данных.

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

В реляционных базах данных используются четыре основных типа полей:

числовой; символьный; дата; логический.

Числовой тип имеют поля, значения которых могут быть только числами. Например, в БД «Погода» три поля числового типа: ТЕМПЕРАТУРА, ДАВЛЕНИЕ, ВЛАЖНОСТЬ.

Символьный тип имеют поля, в которых будут храниться символьные последовательности (слова, тексты, коды и т.п.). Примерами символьных полей являются поля АВТОР и НАЗВАНИЕ в БД «Домашняя библиотека»; поле ТЕЛЕФОН в БД «Школы».

Тип «дата» имеют поля, содержащие календарные даты в форме «день/месяц/год» (в некоторых случаях используется американская форма: месяц/день/год). Тип «дата» имеет поле ДЕНЬ в БД «Погода».

Логический тип соответствует полю, которое может принимать всего два значения: «да» — «нет» или «истина» — «ложь» или (по-английски) «true» — «false». Если двоичную матрицу представить в виде реляционной БД (табл. 6.4, 6.5), то ее полям, принимающим значения «О» или «1», удобно поставить в соответствие логический тип. При этом «1» заменится на значение «истина», «О» — на значение «ложь».

Итак, значения полей — это некоторые величины определенных типов.

От типа величины зависят те действия, которые можно с ней производить.

Например, с числовыми величинами можно выполнять арифметические операции, а с символьными и логическими — нельзя.

Для взаимодействия пользователя с базами данных используют системы управления данными (СУБД).

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

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

Минимальные затраты. Низкая стоимость хранения и использования данных, минимизация затрат на внесение изменений.

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

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

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

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

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

Одно из самых важных преимуществ современных СУБД состоит в логической и физической независимости данных. Например, база данных, реализованная в СУБД DBASE, физически содержит, как минимум, три файла. В то же время эту же базу данных можно перенести в СУБД Microsoft Access, где она физически разместится в одном файле. При этом логическая организация данных не изменится.

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

Далее на примере одной из самых распространенных систем управления базами данных - Microsoft Access входит в состав популярного пакета Microsoft Office - мы познакомимся с основными типами данных, способами создания баз данных и с приемами работы с базами данных.

Существует огромное количество СУБД, например: Lotus Approach, Visual FoxPro, Borland Paradox, Borland dBase.

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

Внешние ключи используются для организации связей между таблицами базы данных (родительскими и дочерними) и для поддержания ограничений ссылочной целостности данных. В СУБД SYBASE SQL Anywhere ссылочная целостность проверяется при:

удаление записей родительской таблицы;

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

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

Построение информационно – логической модели данных

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

Информационные объекты

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

Информационный объект имеет множество реализаций – экземпляров объекта. Например каждый экземпляр информационного объекта СТУДЕНТ содержит значения реквизитов по конкретному студенту. Экземпляр объекта должен однозначно определять среди всего множества экземпляров, т.е. идентифицировать значением уникального (первичного) ключа информационного объекта. Уникальность ключа означает, что любе значение ключа не может повториться в каком–либо другом экземпляре объекта.

Простой ключ состоит из одного реквизита, а составной ключ - из нескольких реквизитов.

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

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

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

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

Примерами зарубежных реляционных СУБД для ПЭВМ являются следующие:

dBaseIII Plus и dBase IY (фирма Ashton-Tate), DB2 (IBM), R:BASE (Microrim), FoxPro ранних версий и FoxBase (Fox Software), Paradox и dBASE for Windows (Borland), FoxPro более поздних версий, Visual FoxPro и Access (Microsoft), Clarion (Clarion Software), Ingres (ASK Computer Systems), Oracle (Oracle).

К отечественным СУБД реляционного типа относятся системы: ПАЛЬМА (ИК АН УССР), а также система HyTech (МИФИ).

23. Физическая реализация баз данных. СУБД ACCESS и её настройка. Режимы создания таблиц. Типы данных, используемых в полях таблицы. Настройка свойств полей таблицы. Контроль вводимых данных в поля таблицы: бизнес-правила и маски ввода. Реализация связей между таблицами базы данных (построение схемы данных). Реализация примеров.

24. Состав приложений, работающих с базой данных. Формы, запросы, отчеты. Способы построения форм в ACCESS. Настройка форм и элементов управления. Реализация примеров. Создание запросов к базе данных. Способы построения запросов: SQL и QBE. Условия отбора данных в запросах. Параметрические запросы. Реализация запросов в рассматриваемых примерах. Понятие отчета. Этапы построения отчета. Группировка данных в отчете. Настройка внешнего вида отчета. Реализация отчетов в рассматриваемых примерах.

25. Основы представления графических данных. Методы представления графических изображений. Векторная графика. Растровая графика. Фрактальная графика. Трехмерная графика и анимация. Компьютерная графика в Интернете.

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

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

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

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

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

При использовании растровой графики с помощью определенного числа бит кодируется цвет каждого мельчайшего элемента изображения - пиксела. Изображение представляется в виде большого числа мелких точек, называемых пикселами. Каждый из них имеет свой цвет, в результате чего и образуется рисунок, аналогично тому, как из большого числа камней или стекол создается мозаика или витраж, из отдельных стежков- вышивка, а из отдельных гранул серебра- фотография. При использовании растрового способа в ЭВМ под каждый пиксел отводится определенное число бит, называемое битовой глубиной. Каждому цвету соответствует определенный двоичный код (т.е. Код из нулей и единиц). Например, если битовая глубина равна 1, т.е. Под каждый пиксел отводится 1 бит, то 0 соответствует черному цвету, 1 -белому, а изображение может быть только черно-белым. Если битовая глубина равна 2, т.е. Под каждый пиксел отводится 2 бита, 00- соответствует черному цвету, 01- красному , 10 - синему , 11- черному , т.е. В рисунке может использоваться четыре цвета. Далее, при битовой глубине 3 можно использовать 8 цветов, при 4 - 16 и т.д. Поэтому, графические программы позволяют создавать изображения из 2, 4, 8, 16 , 32, 64, ... , 256, и т.д. Цветов. Понятно, что с каждым увеличением возможного количества цветов (палитры) вдвое, увеличивается объем памяти, необходимый для запоминания изображения (потому что на каждый пиксел потребуется на один бит больше).

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

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

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

В отличие от растровой и векторной графики преподавание фрактальной графики не привязывается к изучению возможностей построения или обработки изображения в каком-либо графическом редакторе (например, MS Paint, Adobe Photoshop, Corel PHOTO-PAINT – растровые, Corel Draw, Corel Xara – векторные графические пакеты). Но необходимо заметить, что такой вариант не исключается, и в качестве примеров фрактальных графических редакторов можно привести Art Dabbler, Fractal Design Painter.

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

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

Для получения трёхмерного изображения на плоскости требуются следующие шаги:

Моделирование — создание трёхмерной математической модели сцены и объектов в ней.

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

Вывод полученного изображения на устройство вывода — дисплей или принтер.

Однако, в связи с попытками создания 3D-дисплеев и 3D-принтеров, трёхмерная графика не обязательно включает в себя проецирование на плоскость.

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

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

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

Цвет аддитивный и субтрактивный

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

Система цветов RGB

Монитор компьютера создает цвет непосредственно излучением света и, использует схему цветов RGB. Если с близкого расстояния посмотреть на экран монитора, то можно заметить, что он состоит из мельчайших точек красного, зелёного и синего цветов. Компьютер может управлять количеством света, излучаемого через любую окрашенную точку и, комбинируя различные сочетания любых цветов, может создать любой цвет. Будучи определена природой компьютерных мониторов, схема RGB является самой популярной и распространённой, но у неё есть недостаток: компьютерные рисунки не всегда должны присутствовать только на мониторе, иногда их приходится распечатывать, тогда необходимо использовать другую систему цветов - CMYK.

Система цветов CMYK

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

Системы цветов HSB и HSL

Системы цветов HSB и HSL базируется на ограничениях, накладываемых аппаратным обеспечением. В системе HSB описание цвета представляется в виде тона, насыщенности и яркости. В другой системе HSL задаётся тон, насыщенность и освещённость. Тон представляет собой конкретный оттенок цвета. Насыщенность цвета характеризует его относительную интенсивность или частоту. Яркость или освещённость показывают величину чёрного оттенка добавленного к цвету, что делает его более тёмным. Система HSB хорошо согласовывается с моделью восприятия цвета человеком, то есть он является эквивалентом длины волны света. Насыщенность - интенсивность волны, а яркость - общее количество света. Недостатком этой системы является то, что для работы на мониторах компьютера её необходимо преобразовать в систему RGB, а для четырехцветной печати в систему CMYK.

Индексированный цвет, работа с палитрой

Все описанные ранее системы цветов имели дело со всем спектром цветов. Индексированные палитры цветов - это наборы цветов, из которых можно выбрать необходимый цвет. Преимуществом ограниченных палитр является то, они что занимают гораздо меньше памяти, чем полные системы RGB и CMYK. Компьютер создаёт палитру цветов и присваивает каждому цвету номер от 1 до 256. Затем при сохранении цвета отдельного пиксела или объекта компьютер просто запоминает номер, который имел этот цвет в палитре. Для запоминания числа от 1 до 256 компьютеру необходимо всего 8 бит. Для сравнения полный цвет в системе RGB занимает 24 бита, а в системе CMYK - 32.

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

Основные цветовые модели

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

Модель RGB

RGB — это модель, используемая при задании и описании цветов на экране монитора. В нее входят следующие основные цветовые компоненты:

• Red — красный;

• Green — зеленый;

• Blue — синий.

Значения цветовых составляющих могут изменяться в пределах от 0 до 255.

Модель CMYK

Цветовая модель CMYK используется при задании и описании цветов в публикациях, предназначенных для печати. Основные цветовые компоненты этой модели:

• Cyan — голубой;

• Magenta — пурпурный;

• Yellow — желтый;

• Black — черный.

Значения цветовых составляющих могут изменяться в пределах от О до 100 %. Цветовой охват модели CMYK меньше, чем моделей RGB и HSB.

Модель HSB

Цветовая модель HSB наиболее близка к физическому восприятию цвета человеком. В ней для описания цвета используются три компонента.

• Hue — цветовой тон. Изменяется в пределах от 0 до 360°.

• Saturation — насыщенность. Изменяется в пределах от 0 до 100 %.

• Brightness — яркость. Изменяется в пределах от 0 до 100 %.

Режим Grayscale

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

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

Монохромный (1 бит на пиксель)

16 цветов (4 бита на пиксель)

256 цветов (8 бит на пиксель)

32’658 цветов (15 бит на пиксель)

65’536 цветов (16 бит на пиксель)

16’777’216 цветов (24/32 бита на пиксель)

Цвет каждого пикселя определяется всего лишь одним битом информации

1 байт несет информацию о 8 соседних пикселях

Это позволяет отображать изображения, состоящие всего из двух цветов – черного и белого

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

256-цветный режим

Цвет каждого пикселя определяется индексом цвета в специальной таблице, называемой палитрой

На хранение состояния одного пикселя отводится один байт

Данная таблица содержит информацию о цвете каждого из 256 цветов

15-ти и 16-битные форматы пикселей (High-Color)

Информация о цвете одного пикселя хранится в двух байтах

В 15-битном режиме на хранение информации о цветовых компонентах отводится по 5 бит (32 градации)

В 16 битном режиме на зеленый цвет отводится 6 бит, на синий и красный - по 5

Сам по себе пиксел в файле пока не представляет собой чего-то определенного, это всего лишь информация о цвете, но только до тех пор, пока не произойдет его визуализация на дисплее или принтере, вот тут то он и обретает физический размер, а значит, выходное разрешение изображения в целом. У принтера и монитора оно так же различно. Разрешающая способность монитора зависит непосредственно от качества и размера дисплея, который измеряется, как правило, в дюймах. Не последнюю роль в генерации пикселов играет видеокарта и ее ПО, поддерживающее работу видеосистемы в целом. Существуют определенные режимы дисплея, в которых он способен работать: 640×480; 600×800; 800×600; 960×600; 1024×768; 1088×612; 1152×864; 1240×1024; 1280×720; 1280×768; 1280×800; 1280×960; 1280×1024 точек и даже выше. Жидкокристаллические, в отличие от аналоговых ЭЛТ-мониторов, рассчитаны на применение какого-то одного фиксированного разрешения и подразумевают его смену только как временную, допустим для настройки, но вместе с тем новейшие ЖК-модели позволяют манипуляцию режимами.

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

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

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

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

Ресемплирование (изменение глубины цвета растрового изображения) - это изменение начальной глубины цвета файла. Некоторые оцифровывающие устройства выдают растровую информацию с глубиной цвета, превышающую достаточное для печати значение 8 бит на канал. Это иногда оправдано, так как большее значение бит на канал позволяет задавать большее число градаций цвета, что требуется, например, при сильной, "кардинальной" цветокоррекции - сильном осветлении или затенении отдельных участков. Однако, в большинстве случаев для хранения растровых данных в различных цветовых моделях с лихвой достаточно глубины цвета 8 бит на канал. Кроме того, один из стандартов JPEG - сжатия для RGB изображений подразумевает использование разного количества бит для разных цветовых составляющих (наименьшее количество бит используется для зеленого канала, так как человеческий глаз различает в нем минимальное число оттенков). Также большинство фильтров Adobe Photoshop рассчитано на работу с изображениями с глубиной цвета именно 8 бит (с изображением, использующим нестандартную глубину цвета, становится практически невозможно работать, так как большинство фильтров рассчитаны на значение глубины цвета в 8 бит).

Ниже описан ряд наиболее распространенных графических форматов.

PCX - Простейший растровый формат. Первоначально этот формат использовался в программе PaintBrush фирмы Zsoft, однако в последствии получил широкое распространение среди пакетов редактирования растровых изображений, хотя до сих пор не признан в качестве официального стандарта. К сожалению, в процессе своей эволюции PCX претерпел настолько значительные изменения, что современная версия формата, поддерживающая 24-разрядный цветовой режим, не может использоваться старыми программами. С самого "рождения" формат PCX был ориентирован на существующие видеоадаптеры (сначала EGA, потом VGA) и поэтому является аппаратно-зависимым. В PCX используется схема сжатия данных RLE, позволяющая уменьшать размер файла, например, на 40- 70%, если используется 16 и менее цветов, и на 10- 30% для 256-цветных изображений.

BMP - (Windows Bitmap) разрабатывался фирмой Microsoft как совместимый со всеми приложениями Windows. Для приложений в операционной системе OS/2 имеется собственная версия BMP. В формате BMP можно сохранять черно-белые, серые полутоновые, индексные цветные и цветные изображения системы RGB (но не двухцветные или цветные изображения системы CMYK). Недостаток этих графических форматов: большой объем. Следствие - малая пригодность для Internet-публикаций.

GIF - поддерживает до 256 цветов, позволяет задавать один из цветов как прозрачный, дает возможность сохранения с чередованием строк (при просмотре сначала выводится каждая 8-я, затем каждая 4-я и т.д. Это позволяет судить об изображении до его полной загрузки). Способен содержать несколько кадров в одном файле с последующей последовательной демонстрацией (т.н. "анимированный GIF"). Уменьшение размера файла достигается удалением из описания палитры неиспользуемых цветов и построчного сжатия данных (записывается количество точек повторяющегося по горизонтали цвета, а не каждая точка с указанием ее цвета). Такой алгоритм дает лучшие результаты для изображений с протяженными по горизонтали однотонными объектами. Для сжатия файла используется высокоэффективный алгоритм Лемпела - Зива - Велча (LZW)

TIFF (target image file format) - был разработан специально для использования в приложениях, связанных с компоновкой страницы и направлен на преодоление трудностей, которые возникают при переносе графических файлов с IBM-совместимых компьютеров на Macintosh и обратно. Он поддерживается всеми основными графическими пакетами и пакетами редактирования изображений и читается на многих платформах. Использует сжатие изображения (LZW). Формат TIFF очень удобен, но за это приходится расплачиваться огромными размерами получаемых файлов (например, файл формата А4 в цветовой модели CMYK с разрешением 300 dpi, обычно применяемым для высококачественной печати, имеет размер около 40 Мбайт). Кроме того, существует несколько "диалектов" формата, которые не каждая программа, поддерживающая TIFF, легко "понимает".

JPEG - миллионы цветов и оттенков, палитра не настраиваемая, предназначен для представления сложных фотоизображений. Разновидность progressive JPEG позволяет сохранять изображения с выводом за указанное количество шагов (от 3 до 5 в Photoshop'e) - сначала с маленьким разрешением (плохим качеством), на следующих этапах первичное изображение перерисовывается все более качественной картинкой. Анимация или прозрачный цвет форматом не поддерживаются. Уменьшение размера файла достигается сложным математическим алгоритмом удаления информации - чем заказываемое качество ниже, тем коэффициент сжатия больше, файл меньше. Главное, подобрать максимальное сжатие при минимальной потере качества. Последний идентифицирует и отбрасывает данные, которые человеческий глаз не в состоянии увидеть (незначительные изменения в цвете не различаются человеком, тогда как улавливается даже малейшая разница в интенсивности, поэтому JPEG меньше подходит для обработки черно-белых полутоновых изображений), что приводит к существенному уменьшению размера файла. Таким образом, в отличие от метода сжатия LZW или RLE в результате применения технологии JPEG данные теряются навсегда. Так, файл, однажды записанный в формате JPEG, а затем переведенный, скажем, в TIFF, уже не будет тем же, что и оригинал. Наиболее подходящий формат для размещения в Интернете полноцветных изображений. Вероятно, до появления мощных алгоритмов сжатия изображения без потери качества останется ведущим форматом для представления фотографий в Web.

PNG - пока малораспространен из-за слабой рекламы, создавался специально для Интернета как замена первых двух форматов и благодаря патентной политике Compuserve постепенно вытесняет GIF (см. выше). Позволяет выбирать палитру сохранения - серые полутона, 256 цветов, true color ("истинные цвета"). В зависимости от свойств изображения действительно иногда предпочтительнее GIF'a или JPG'a. Позволяет использовать "прозрачный" цвет, но, в отличие от GIF'a таких цветов может быть до 256. В отличие от GIF сжатие без потери качества производится и по горизонтали и по вертикали (алгоритм собственный, параметры тоже не настраиваемые). Не умеет создавать анимированные ролики (разрабатывается формат MNG).

PDF (Portable Document Format) - это пример смешанного формата, предназначенного для хранения текста и графики одновременно. В формате PDF сохраняются данные текстовым редактором Adobe Acrobat. Для сжатия графики применяется метод LZW.

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