51347

Основы сжатия. 2D Дискретное косинусное преобразование

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

Информатика, кибернетика и программирование

Цель работы: Написать программу осуществляющую прямое и обратное двумерное ДКП Дискретное Косинусное преобразование над выбранным изображением. Общий вид программы следующий: Здесь мы видим следующие элементы управления: Загрузить изображение загружает изображение и выводит в Imge Прямое 2DДКП преобразование Делает прямое преобразование и сохраняет в фаил Обратное 2DДКП преобразование Делает обратное преобразование из файла полученного ранее Код программы:...

Русский

2014-02-09

150.5 KB

27 чел.

Лабораторная работа 5.

Основы сжатия. 2D Дискретное косинусное преобразование


Выполнил: Шуклецов М.А.

 ФРТ, гр. 2106

Цель работы: Написать программу, осуществляющую прямое и обратное двумерное ДКП (Дискретное Косинусное преобразование) над выбранным изображением. Промежуточный массив данных сохранить во временный файл dct2d.data. После обратного преобразования результат вывести на экран.

Общий вид программы следующий:

Здесь мы видим следующие элементы управления:

«Загрузить изображение» - загружает изображение и выводит в Image

«Прямое 2D-ДКП преобразование» - Делает прямое преобразование и сохраняет в фаил

«Обратное 2D-ДКП преобразование» - Делает обратное преобразование из файла, полученного ранее

Код программы:

//---------------------------------------------------------------------------

#include <vcl.h>

#pragma hdrstop

#include "Unit1.h"

#include "cos_functions.h"    //Подключение внешних функций

#include "dct.h"

#include "extern.h"

#include "matrix_and_images.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

//---------------------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

       : TForm(Owner)

{

}

//---------------------------------------------------------------------------

double CosMatrix[8][8];     //Объявление матрицы 8х8 для прямого ДКП

double CosMatrix_T[8][8];    //Объявление матрицы 8х8 для обратного ДКП

int dct_size = 8;      //Объявление размера для ДКП

//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)

{

if (OpenPictureDialog1->Execute())

       {

          try{

          Image_2D_Source->Picture->LoadFromFile(OpenPictureDialog1->FileName);

             }

           catch (EInvalidGraphic &Ex){

        ShowMessage("Ошибка загрузки изображения");

          }

       }

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)

{

DCT_2D_Full("sourse", Image_2D_Source->Picture->Bitmap->Handle, dct_size);  

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button3Click(TObject *Sender)

{

IDCT_2D_Full("sourse", Image_2D_Dest);

}

//---------------------------------------------------------------------------

Вывод: Мы использовали заимствованную функцию, которая совершает ДКП при этом при прямом проходе создает временный фаил ”source” с размерами получаемыми через ярлык Image_2D_Source->Picture->Bitmap->Handle и размерами шага рамки в 8 пикселей. При обратном проходе берется вышеописанный фаил и изображение выводиться во 2 рамке.


 

А также другие работы, которые могут Вас заинтересовать

42792. Разработка технологического процесса термической обработки для изготовления кузовов и крыльев легковых автомобилей 380.16 KB
  Анализ условий работы кузовов крыльев автомобилей и выбор марки стали .3 Выбор марки стали для горячей штамповки . 35 Приложение 36 РЕФЕРАТ Курсовая работа содержит информацию о разработке технологического процесса термической обработки кузовов и крыльев легковых автомобилей из стали 5ХНМ. Проведен анализ условий работы кузовов и крыльев легковых автомобилей материалов применяемых для производства данной детали на основании чего выбрана марка стали разработан технологический...
42793. Диагностика финансового состояния предприятия на примере ОАО «Электроприбор» 130.25 KB
  Горячкина Факультет заочного образования Кафедра: Финансы и диагностика предприятия КУРСОВАЯ РАБОТА по дисциплине: Анализ финансовохозяйственной деятельности предприятия на тему: Диагностика финансового состояния предприятия на примере ОАО Электроприбор Выполнил: студент 37ЭК3 группы ФЗО Аладьев Н. Анализ имущества и положения...
42794. Технико-экономический расчет для участка распределительной сети 10/0,4 кВ 135.31 KB
  Годовой фонд основной заработной платы одного работника при повременной оплате труда определяется по формуле: ФЗП г о = Бч ∙ Фд ∙ к ∙ Ч руб 4 [ 9 ] где Б ч минимальная часовая ставка оплаты труда минимальный часовой тариф руб час; Фд действ. Минимальная часовая ставка оплаты труда рассчитывается по формуле: Б ч = ЗПм Н руб ч...
42795. ТЯГОВАЯ ПОДСТАНЦИЯ ПЕРЕМЕННОГО ТОКА 6.73 MB
  Пояснительная записка к курсовому проекту ОТЖТ. 18 сентября 2012 года ЗАДАНИЕ На курсовой проект студента группы ЭХ136III курса Батиенко Максима специальности Электроснабжение по отраслям по дисциплине Электрические подстанции 1 Тема курсового проекта Тяговая подстанция переменного тока.2 Транзитная тяговая подстанция переменного тока электрифицированной железной дороги 220 35 275 кВ 3 Курсовой проект состоит из двух частей.6 1Структурная схема тяговой подстанции переменного тока 220 35 275 кВ.
42796. Организационные и технические мероприятия безопасного проведения работ с электроустановками до 1000 В 1.05 MB
  Электроснабжение является неотъемлемой частью жизни каждого человека. С давних времен основной задачей электроснабжения было обеспечение объектов электрической энергией. С помощью электрической энергии освещаются помещения, осуществляется автоматическое управление производственными процессами, приводятся в движение миллионы станков и механизмов и многое другое.
42797. Электроснабжение узловой распределительной подстанции 325.95 KB
  Потребитель Марка PкВТ IА Об мин Cos φ КПД Компрессора АИР200L6 30 596 980 086 90 Насосы АИР200L6 30 596 980 086 90 Распеделение нагрузок по пунктам питания. В сп1 входят: Компрессорная установка P= 30кВТ Kи=07 cos φ= 08; зарядноподзорядный агрегат АБ типа ВАЗП Р=23кВТ Ки=07 cos φ=08; синхронный компенсатор Р=80кВТ Ки=07 cos φ=07; Насос системы охлаждения АТ Р=226кВТ Ки=07 cos φ=08; Отопление вентиляция и освещение ОПУ Р=9 Ки=06 cos φ=08. Подпись Лист 6 В сп2 входят: электронагреватель для выключателей и приводов...
42798. Разработка микропроцессорной системы на базе КР 580 238.9 KB
  Интерфейсный модуль обеспечивает параллельный ввод вывода информации с 2х УВВ ключи светодиоды с помощью БИС КР580ВВ55 расположенный по адресу 10h. Для того чтобы подключить к МП память и устройство ввода вывода в системе организован 3х шинный доступ: 1 Шина адреса МП подключается с помощью буферных регистров КР580ИР82 2 Шина данных и управления формируется системный контроллер КР580ВК28 Тактированиеформирование импульсов по переключению системы из 1 состояния в другое осуществляется тактовым генератором КР580ГФ24 Изм. Шина адреса...
42799. Метод Флетчера-Ривса 3.14 MB
  Все описываемые градиентные методы основаны на итерационной процедуре реализуемой в соответствии с формулой Где текущее приближение к решению ; параметр характеризующий длину шага; направление поиска управляемых переменных x. Первый называется методом градиентного спуска с постоянным шагом. Где направление движения на каждом шаге совпадает с антиградиентом функции. А длина шага задается пользователем и остается постоянной до тех пор пока функция убывает в точках последовательности .
42800. Анализ информационных потребностей пользователей предметной области «Народное образование области» 684.5 KB
  Вместе с тем информационные потребности пользователей меняются со временем, что должно быть учтено в методике проектирования КИМПО: она должна быть ориентирована не столько на первоначальное создание модели, сколько на интеграцию новой информационной потребности с текущей моделью.