Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lektsii_po_KG_rulez.doc
Скачиваний:
6
Добавлен:
25.08.2019
Размер:
726.02 Кб
Скачать

Алгоритм сжатия mpeg.

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

Основное различие – заполняется разница не между матрицами, а между кадрами видеоролика. Разница двух кадров группируется по частоте. Затем идёт усреднение и сжатие. Почему получается такой выигрыш? Сдвиг изображения от кадра к кадру составляет единицы пикселов, а само изображение не изменяется, поэтому такой выигрыш. Достоинства и недостатки такие же как и в формате JPEG. У MPEG более грубо усредняются кадры.

Алгоритм сжатия lzw.

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

Пример. aabcdabcddd

Сначала bc, потом ab, потом abc. Исходная таблица состоит из четырёх двухразрядных кодов.

a

000

b

001

c

010

d

011

ab

100

bc

101

abc

Длина исходного кода зависит от количества исходных символов. Есть ли какое-либо сочетание повторяющееся? Не хватает трёх разрядов, добавляем ещё. Полученный код получится избыточным. Поэтому задействованы не все комбинации. Достоинство: является не зависимым от начальной статистики. Мы получим свою таблицу кодировки для каждого набора данных. При передаче файла, таблица кодировки передаётся с данными. Используется в форматах TIFF, GIF. Пользователю математический аппарат знать не надо.

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

Формат dxf.

Представляет собой последовательность команд, которые записаны кодами ASCII. Каждая команда занимает две строки.

Строка 1 – код группы команды.

Строка 2 – сама команда.

В каждой группе могут быть различные форматы команд. Диапазон кодов команд ограничен числами от 0 до 999.

Группа

Тип

Содержание

0

string

Начало элемента

1

string

Текстовое значение, связанное с графическим примитивом

2

string

Имя элемента

3,4,5

string

Прочие текстовые значения или имена

6

string

Тип линии

7

string

Имя шрифта

8

string

Имя слоя

9

string

Имя переменной, который может использоваться в заголовке файла.

10

real

Первая координата по x

11-19

real

Прочие координаты по x

20

real

Первая координата по y

20-29

real

Прочие координаты по y

30

real

Первая координата по z

30-39

real

Прочие координаты по z

40-48

real

Параметры различных размеров

49

real

Для организации таблицы, в которой есть повторяющиеся значения

50-58

real

Угловые данные

Свободная зона

62

int

Номер цвета

66

boolean

Флаг «1»: дальше будут следовать графические примитивы;

Флаг «0»: данных дальше нет

70-78

boolean

Набор флагов, управляющими различными режимами

999

string

Позволяет записывать различные комментарии документов

Все команды разбиты на четыре части: заголовки, таблицы, примитивы, блоки. Ни один раздел не является обязательным. Единственной обязательной командой является 0 EOF – конец файла. Открытие и закрытие секций выполняется так:

0 section

0 endsec

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

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

0 SECTION

2

HEADER

9

$ …

0

ENDSEC

Где $ – это описание переменной. Далее следует таблица (толщина линии, виды шрифтов, используемые стандартные цвета).

0 SECTION

2

TABLES

0

ENDTAB

2

TABLES

0

ENDTAB

0

ENDSEC

Количество таблиц не ограничено. Названия видов таблиц:

LAYER

LTYPE

STYLE

VIEW

VPORT

VCS

LAYER.

Когда слой надо сделать невидимым, то после записи такого вида добавляется команда с номером 70. Эта команда управляется одним битом под номером 6.

LTYPE

Типы линий в одном слое. Имеется возможность создавать собственные типы, например

STYLE

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

VIEW

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

VPORT

Режим задания систем координат пользователя. Задаётся направление осей X, Y, Z. Система координат может быть задана нестандартно. Можно задавать большой набор трёхмерного просмотра объёмов кусков детали. Добавляется возможность поворота, угол вращения данного вида, коэффициент увеличения данного изображения, привязка к координатной сетке и параметры этой сетке, аксонометрический и изометрический стили.

В раздел блоков заносится информация об имеющихся графических элементах.

BLOCK – простой блок.

ATT DEF – команда группы 2.

10 x – блок базовой точки.

20 y

30 z

0 ENDBLK

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

VCS

Примитивы. Все стандартные элементы изображения. К стандартным относятся 16 типов.

  1. Линия.

0

LINE

  1. x начальная

20 y начальная

30 z начальная

11 x конечная

21 y конечная

31 z конечная

0

ENDLIN

Атрибуты задаются в разделе блоков.

  1. Точка. Для неё задаются координаты, угол наклона системы координат по отношению к мировым.

0

POINT

10

x

20

y

30

z

50

0

ENDPNT

  1. Окружность. Тип, трёхмерные координаты центра и радиус окружности.

  1. Дуга. Начальные координаты начала и конца, начальный угол и конечный.

  1. TRACE. Линия, которая проводится по четырём точкам. Фигура получается замкнутой.

  1. SOLID. Замыкание, заливка.

  1. Текст. По умолчанию – STANDART. Можно управлять любыми параметрами шрифта и задаётся цвет шрифта.

  1. SHAPE. Удаление символа или изменение параметров вывода конкретного символа.

  1. INSERT. Команда вставки. Берётся ранее описанное и его можно перенести в другой слой, одновременно выполнив над ним поворот и масштабирование.

  1. ATTRIBUTE. Обычно применяется в комплекте с INSERT. Этот элемент получают новые атрибуты.

  1. POLIGON.

  2. 3D FACE. Описание трёхмерной поверхности. Создаётся аппроксимирующая поверхность, есть флаг видимости краёв этой поверхности.

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

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