Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Лабораторная работа №2. Варианты заданий приведены в Приложении 1.





 

Варианты заданий приведены в Приложении 1.

Пункты 6-9 задания являются факультативными.

Порядок выполнения задания:

 

1) Провести «вручную» сжатие 2-х фрагментов данных методом группового кодирования. Сравнить полученные коэффициенты сжатия.

2) Провести «вручную» сжатие 2-х фрагментов данных методом LZW. Сравнить полученные коэффициенты сжатия.

3) Провести «вручную» сжатие 2-х фрагментов данных c применением кодов Хаффмана. Сравнить полученные коэффициенты сжатия.

4) Провести «вручную» сжатие фрагмента данных c применением алгоритмов RLE, LZW и кодов Хаффмана. Описать полученные результаты и сделать соответствующие выводы.

 

Приложение 1. Варианты заданий.

Числа в таблице соответствуют номерам цепочек данных. В пунктах 17-26 данных для кодирования числа обозначают индексы строк и столбцов для выделения рабочего блока из общей матрицы изображения.

  Номер задания
1 (RLE) 2 (LZW) 3 (Haffman) 4 (все три метода) 5 JPEG
Вариант 1 1,2 5,6 9,10   17,22
Вариант 2 1,4 5,8 9,12   18,23
Вариант 3 3,2 7,6 11,10   19,24
Вариант 4 3,4 7,8 11,12   20,25
Вариант 5 1,2 5,8 11,10   21,26
Вариант 6 1,4 7,6 11,12   19,22
Вариант 7 3,2 7,8 9,10   20,23
Вариант 8 3,4 5,6 9,12   21,24
Вариант 9 1,2 7,8 9,10   17,25
Вариант 10 1,4 5,6 11,10   18,26

 

Данные для кодирования:

1) bbbbbbbccccccbbcaaaaaaabbbccccaaaaaaabbbbbaaaaadddddddddaaaadd

2) cbcbbbbcdccddaddabbddccaaaccddddccbbbaaadddddbbbbcacccddaabb

3) aaaaaccccaaccccbbccccccccfffffffffffffssssssssaaaaaabbbbbcccbbbbbffbbbb

4) ccccccbbaaccaddcdacdbcadcdadaaaddacaccadaabbbacadcccadbcbbbcbcbd

 

5) baaccbccbcabaccabbaabaaabcc

6) babaabbaabbaaabbbaaaaa

7) abbabbabaabbabbbba

8) aaacbcbbbbcccbbbcacc

 

9) dcafbfbabggbceffgggfhhhgghhhefffsffaabbabchhabffccaf

10) faaadddddbbbccbaffbbbaabbabbbabbfcadcbfababadddab

11) gdadafghggfghababahbagggabcdcdcahhggaghhhgacagca

12) bbffdddedffdfdccdcadcddddacacacccaccaccadccfcc

 

13) abaacadbbaaaaadcda

14) aacaddddccdbbaaaaad

15) bbbacadbccadcbaaadcda

16) abaaabbccdabaacadb

 

17) 250-257, 200-207

18) 290-297, 170-177

19) 50-57, 60-67

20) 150-157, 141-148

21) 220-227, 300-307

22) 121-128, 145-152

23) 122-129, 146-153

24) 123-130, 147-154

25) 140-147, 170-177

26) 123-130, 296-303

Приложение 2. Инструкции по выполнению пп. 6-9 задания.

Программная реализация алгоритма сжатия RLE в виде процедуры (функции) может быть выполнена на любом доступном языке высокого уровня, таком как Pascal (в среде Delphi) или C++ (в средах Воrland Builder или Microsoft Visual), однако следует учитывать, что при вызове процедуры в основной программе используется т.н. «паскалевское»(__stdcall) соглашение о передаче параметров.

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

1) основная программа RLE.exe загружает исходный файл изображения и динамическую библиотеку в оперативную память;

2) из динамической библиотеки вызывается функция CompressImage c четырьмя параметрами:

- pInBuf – массив исходных данных;

- pOutBuf – массив сжатых данных;

- nInSize – размер входных данных;

- nOutSize – размер сжатых данных.

Функция реализует алгоритм и формирует массив сжатых данных;

3) Основная программа компонует новый файл изображения и записывает его на “жесткий” диск.

 

Ниже приведён пример шаблона реализации в среде программирования Delphi:

 

- создать новый проект с именем “RLE” c помощью мастера создания динамической библиотеки выбрав пункт меню Project / Add New Project / DLL Wizard;

- добавить в проект файл Module1.pas, выбрав команду Project / Add to Project (шаблоны файлов RLE.dpr и Module1.pas см. ниже);

- скомпилировать библиотеку RLE.dll и перенести её в каталог основной программы RLE.exe.

 

 

/////////////////////////////////////////////////////// Файл RLE.dpr /////////////////////////////////

library RLE;

 

 

uses

SysUtils,

Classes,

Module1 in 'Module1.pas'; {подключаем модуль файла Module1.pas}

exports

CompressImage name 'CompressImage '; {делаем функцию CompressImage экспортируемой }

 

begin

end.

 

 

/////////////////////////////////////////////////////// Файл Module1.pas /////////////////////////////////

unit Module1;

 

interface

type

TArray = array [0..9] of byte;

pArray = ^TArray; { объявляется тип указателя на массив элементов типа byte }

{ объявление процедуры CompressImage}

procedure CompressImage(pInBuf:pArray; pOutBuf:pArray; nInSize:longword; nOutSize:longword);

 

implementation

 

uses

Dialogs,

SysUtils;

 

{ определение процедуры CompressImage}

procedure CompressImage(pInBuf:pArray; pOutBuf:pArray; nInSize:longword; nOutSize:longword);

var

{ Здесь объявляются локальные переменные, например i: integer; Res: byte}

begin

{ Здесь размещается код алгоритма.

pInBuf – указатель на массив входных данных типа byte;

pOutBuf – указатель на массив выходных(сжатых) данных типа byte;

nInSize – размер входных данных, передаваемый процедуре;

nOutSize – размер выходных данных, вычисляемый процедурой;

Индексация массивов начинается с нуля.

Обращение к i-элементу массива по указателю выполняется в виде pInBuf^[i].

Пример:

for i:=0 to (n-1) do

begin

pOutBuf ^[i+1]:= pInBuf^[i];

end;

}

end;

 

end.

 

 

Лабораторная работа №2

Тема: Испытание материалов на сжатие. Определение механических характеристик материалов.

 

Цель работы:

1. Получить диаграммы сжатия чугуна, стали, дерева, бетона.

2. Определить характеристики прочности этих материалов.

3. Определить характеристики пластичности материалов.







Дата добавления: 2015-08-30; просмотров: 641. Нарушение авторских прав; Мы поможем в написании вашей работы!




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


Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...


Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...


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

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

Правила наложения мягкой бинтовой повязки 1. Во время наложения повязки больному (раненому) следует придать удобное положение: он должен удобно сидеть или лежать...

ТЕХНИКА ПОСЕВА, МЕТОДЫ ВЫДЕЛЕНИЯ ЧИСТЫХ КУЛЬТУР И КУЛЬТУРАЛЬНЫЕ СВОЙСТВА МИКРООРГАНИЗМОВ. ОПРЕДЕЛЕНИЕ КОЛИЧЕСТВА БАКТЕРИЙ Цель занятия. Освоить технику посева микроорганизмов на плотные и жидкие питательные среды и методы выделения чис­тых бактериальных культур. Ознакомить студентов с основными культуральными характеристиками микроорганизмов и методами определения...

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

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

Деятельность сестер милосердия общин Красного Креста ярко проявилась в период Тритоны – интервалы, в которых содержится три тона. К тритонам относятся увеличенная кварта (ув.4) и уменьшенная квинта (ум.5). Их можно построить на ступенях натурального и гармонического мажора и минора.  ...

Studopedia.info - Студопедия - 2014-2025 год . (0.012 сек.) русская версия | украинская версия