Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kompyuternaya_grafika_otvety_na_voprosy.docx
Скачиваний:
26
Добавлен:
22.04.2019
Размер:
760.87 Кб
Скачать

Основные этапы

  1. Символы первичного алфавита m1 выписывают в порядке убывания вероятностей.

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

  3. В префиксном коде для первой части алфавита присваивается двоичная цифра «0», второй части — «1».

  4. Полученные части рекурсивно делятся и их частям назначаются соответствующие двоичные цифры в префиксном коде.

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

[Править] Алгоритм вычисления кодов Шеннона — Фано

Код Шеннона — Фано строится с помощью дерева. Построение этого дерева начинается от корня. Всё множество кодируемых элементов соответствует корню дерева (вершине первого уровня). Оно разбивается на два подмножества с примерно одинаковыми суммарными вероятностями. Эти подмножества соответствуют двум вершинам второго уровня, которые соединяются с корнем. Далее каждое из этих подмножеств разбивается на два подмножества с примерно одинаковыми суммарными вероятностями. Им соответствуют вершины третьего уровня. Если подмножество содержит единственный элемент, то ему соответствует концевая вершина кодового дерева; такое подмножество разбиению не подлежит. Подобным образом поступаем до тех пор, пока не получим все концевые вершины. Ветви кодового дерева размечаем символами 1 и 0, как в случае кода Хаффмана.

При построении кода Шеннона — Фано разбиение множества элементов может быть произведено, вообще говоря, несколькими способами. Выбор разбиения на уровне n может ухудшить варианты разбиения на следующем уровне (n + 1) и привести к неоптимальности кода в целом. Другими словами, оптимальное поведение на каждом шаге пути ещё не гарантирует оптимальности всей совокупности действий. Поэтому код Шеннона — Фано не является оптимальным в общем смысле, хотя и дает оптимальные результаты при некоторых распределениях вероятностей. Для одного и того же распределения вероятностей можно построить, вообще говоря, несколько кодов Шеннона — Фано, и все они могут дать различные результаты. Если построить все возможные коды Шеннона — Фано для данного распределения вероятностей, то среди них будут находиться и все коды Хаффмана, то есть оптимальные коды.

[Править] Пример кодового дерева

Исходные символы:

  • A (частота встречаемости 50)

  • B (частота встречаемости 39)

  • C (частота встречаемости 18)

  • D (частота встречаемости 49)

  • E (частота встречаемости 35)

  • F (частота встречаемости 24)

Кодовое дерево

Полученный код: A — 11, B — 101, C — 100, D — 00, E — 011, F — 010.

Кодирование Шеннона — Фано является достаточно старым методом сжатия, и на сегодняшний день оно не представляет особого практического интереса. В большинстве случаев, длина последовательности, сжатой по данному методу, равна длине сжатой последовательности с использованием кодирования Хаффмана. Но на некоторых последовательностях могут сформироваться неоптимальные коды Шеннона — Фано, поэтому более эффективным считается сжатие методом Хаффмана.

  1. Сжатие графических данных.

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

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

Сжатие без потерь используется, когда важна идентичность сжатых данных оригиналу. Обычный пример — исполняемые файлы и исходный код. Некоторые графические файловые форматы, такие как PNG, используют только сжатие без потерь; тогда как другие (TIFF, MNG) или GIF могут использовать сжатие как с потерями, так и без.

АРХИВАЦИЯ И КОМПРЕССИЯ

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

В зависимости от того, в каком объекте размещены данные, подлежащие сжатию различают:

  1. Сжатие (архивация) файлов: используется для уменьшения размеров файлов при подготовке их к передаче каналами связи или к транспортированию на внешних носителях маленькой емкости;

  2. Сжатие (архивация) папок: используется как средство уменьшения объема папок перед долгим хранением, например, при резервном копировании;

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

Алгоритм RLE.

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

Алгоритм LZW.

Алгоритм LZW. Алгори́тм Ле́мпеля — Зи́ва — Ве́лча (Lempel-Ziv-Welch, LZW) — это универсальный алгоритм сжатия данных без потерь, созданный Абрахамом Лемпелем (англ. Abraham Lempel), Якобом Зивом (англ. Jacob Ziv) и Терри Велчем (англ. Terry Welch). Он был опубликован Велчем в 1984 году, в качестве улучшенной реализации алгоритма LZ78, опубликованного Лемпелем и Зивом в1978 году. Алгоритм разработан так, чтобы его можно было быстро реализовать, но он не обязательно оптимален, поскольку он не проводит никакого анализа входных данных.

1. Инициализация словаря всеми возможными односимвольными фразами. Инициализация входной фразы w первым символом сообщения. 2. Найти в словаре строку W наибольшей длины, которая совпадает с последними принятыми символами. 3. Считать очередной символ K из кодируемого сообщения. 4. Если КОНЕЦ_СООБЩЕНИЯ, то выдать код для W, иначе 5. Если фраза WK уже есть в словаре, присвоить входной фразе W значение WK и перейти к Шагу 3, иначе выдать код W, добавить WK в словарь, присвоить входной фразе W значение K и перейти к Шагу 3. 6. Конец На момент своего появления алгоритм LZW давал лучший коэффициент сжатия, для большинства приложений, чем любой другой хорошо известный метод того времени. Он стал первым широко используемым на компьютерах методом сжатия данных. Алгоритм был реализован в программе compress, которая стала более или менее стандартной утилитой Unix-систем приблизительно в 1986 году. Несколько других популярных утилит-архиваторов также используют этот метод или близкие к нему. В 1987 году алгоритм стал частью стандарта на формат изображений GIF. Он также может (опционально) использоваться в форматеTIFF. В настоящее время, алгоритм содержится в стандарте PDF.

  1. Форматы графических файлов. Растровые форматы.

Форматы графических файлов

GIF - Compuserve Graphics Interchange Format

TIFF - Aldus & Microsoft Tag Image File Format

РСХ - ZSoft РС Paintbrush format

RLE - Compuserve & Teletext Run Length Encoded

ВМР - Microsoft Windows BitMaP

LBM - Deluxe Paint format

PIC - Pictor/PC Paint forma

МАС - MacPaint format

IMG - Gem Paint format

CUT - Dr. Halo Cut files

TGA - Targa format

JPEG - Joint Photographic Experts Group

MEPG - Moving Pictures Experts Group

FLC - AutodeskAnimator

растровые (TIFF, GIF, BMP, JPEG);

GIF формат разработан в CompuServe Incorporation для хранения и транспортировки растровых изображений. Поддерживаемая цветовая модель - индексированные цветные изображения. Использует метод кодирования LZW (Lempel, Ziv & Welch), дающий высокий коэффициент сжатия. Позволяет содержать в одном файле несколько изображений, не связанных между собой. Поддерживается многими разработчиками графических систем.

TIFF разработан фирмами Aldus и Microsoft главным образом для настольных издательских систем. Распространенность этого формата обусловлена его гибкостью в части поддерживаемых способов кодирования и цветовых моделей изображения. TIFF поддерживает двух-уровневые (bi-level), монохромные (gray-scale), индексированные цветные (paletted color), и полные цветные (full RGB) изображения. Для кодирования различных изображений или его частей могут применяться различные методы, в частности LZW. Кроме того, TIFF содержит метрические характеристики изображения - размер, плотность и пр. Предусмотрена возможность записи в один файл нескольких изображений и/или копий одного изображения с различными метрическими характеристиками.

BMP (от англ. Bitmap Picture) — формат хранения растровых изображений.

С форматом BMP работает огромное количество программ, так как его поддержка интегрирована в операционные системы Windows и OS/2. Файлы формата BMP могут иметь расширения .bmp, .dib и .rle. Кроме того, данные этого формата включаются в двоичные файлы ресурсов RES и в PE-файлы.

Глубина цвета в данном формате может быть 1, 2, 4, 8, 16, 24, 32, 48 бит на пиксел, максимальные размеры изображения 65535×65535 пикселов. Однако, глубина 2 бит официально не поддерживается.

В формате BMP есть поддержка сжатия по алгоритму RLE, однако теперь существуют форматы с более сильным сжатием, и из-за большого объёма BMP редко используется в Интернете, где для сжатия без потерь используются PNG и более старый GIF.

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

  1. Форматы графических файлов. Векторные форматы.

Форматы графических файлов

GIF - Compuserve Graphics Interchange Format

TIFF - Aldus & Microsoft Tag Image File Format

РСХ - ZSoft РС Paintbrush format

RLE - Compuserve & Teletext Run Length Encoded

ВМР - Microsoft Windows BitMaP

LBM - Deluxe Paint format

PIC - Pictor/PC Paint forma

МАС - MacPaint format

IMG - Gem Paint format

CUT - Dr. Halo Cut files

TGA - Targa format

JPEG - Joint Photographic Experts Group

MEPG - Moving Pictures Experts Group

FLC - AutodeskAnimator

векторные (AI, CDR, FH7, DXF);

Ai-Векторный формат файлов, создаваемых программой Adobe Illustrator. У Adobe Illustrator большое число версий - Adobe Illustrator 3, Adobe Illustrator 4, Adobe Illustrator 5 и т.д. Формат ai каждой новой версии несовместим с более старыми версиями, что означает, например, файл, сохраненный в версии Adobe Illustrator 9 может быть открыт в более новой версии программы (Adobe Illustrator 10, CS, CS2 и т.д.), но не может быть открыт в более старой версии программы (Adobe Illustrator 8, 7, 6 и т.д.), хотя с версии Adobe Illustrator 10 поддерживается возможность импорта файлов более новых версий. Формат обеспечивает очень высокое качество рисунков, но по ряду параметров плохо совместим с другими программами (например, различные эффекты Adobe Illustrator и градиентная заливка могут не передаваться в другие форматы).

Cdr-Векторный формат файлов, создаваемых программой CorelDraw. У CorelDraw большое число версий - CorelDraw 3, CorelDraw 4, CorelDraw 5 и т.д. Формат cdr каждой новой версии несовместим с более старыми версиями, что означает, например, файл, сохраненный в версии CorelDraw 9 может быть открыт в более новой версии программы (CorelDraw 10, 11, 12 и т.д.), но не может быть открыт в более старой версии программы (CorelDraw 8, 7, 6 и т.д.). Формат обеспечивает очень высокое качество рисунков, но по ряду параметров плохо совместим с другими программами (например, различные эффекты CorelDraw и градиентная заливка могут не передаваться в другие форматы).

Eps-Относительно универсальный векторный формат файлов, поддерживаемый большинством векторных редакторов - CorelDraw, Adobe Illustrator, Macromedia FreeHand и различными узкоспециализированными программами (для плоттерной резки, гравировки, выжигания на дереве и т.д.). Формат имеет много версий и, к сожалению, каждая программа поддерживает его только до опеределенной версии (например, CorelDraw поддерживает только версии до EPS 7). Формат обеспечивает очень высокое качество рисунков.

wmf

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

(Векторные форматы:

2D

Scalable Vector Graphics (SVG и SVGZ)

Encapsulated PostScript (EPS)

Метафайлы Windows: WMF, EMF

Файлы CorelDraw: →CDR, CMX

Adobe Illustrator (AI)

XAR

3D

COLLADA — формат, разработанный для обмена между 3D приложениями.

SKP

STL - A stereolithography format.

U3D - Universal 3D file format

VRML -- Virtual Reality Modeling Language

X3D

.3ds

3DXML

Формат X файла)

  1. Понятие цвета и его характеристики.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]