Поиск

Полнотекстовый поиск:
Где искать:
везде
только в названии
только в тексте
Выводить:
описание
слова в тексте
только заголовок

Рекомендуем ознакомиться

Информатика->Реферат
Основные идеи современной информационной технологии базируются на концепции, согласно которой данные должны быть организованы в базы данных с целью ад...полностью>>
Информатика->Реферат
Пособие предназначено для студентов экономических специальностей и со­ставлено на основе программы по курсу «Мировая экономика» В пособии содержатся м...полностью>>
Информатика->Реферат
В истории вычислительной техники можно проследить развитие двух основных областей ее использования Первая область - применение вычислительной техники ...полностью>>
Информатика->Реферат
На первом этапе проектирования базы данных необходимо определить цель создания базы данных, основные ее функции и информацию, которую она должна содер...полностью>>

Главная > Дипломная работа >Информатика

Сохрани ссылку в одной из сетей:

2.2.4 Градація яскравостей зображень

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

На Рис.3 представлені результати 4-х рівневої (2 біти) градації яскравостей пікселей зображення "Роза". В інтересах зіставлення на всіх 4-х зображень (включаючи вихідне) сума яскравостей пікселей однакова.

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

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

4-х рівневі градуйовані зображення

рівномірна розбивка

пропонований метод

"прямий"

"зворотній"

Вихідне зображення

Графіки зміни критерію інформативності

"прямий" метод

"зворотній" метод

Рисунок 2.3. Результати градації зображення "роза"

3. Розробка ефективного алгоритму кодування зображень на основі зміни градації яскравості

Для написання програми було обрано мову програмування Delphi 7.0, тому що вона містить всі необхідні компоненти для створення віконних додатків, а також багато модулів для роботи із зображеннями.

3.1 Загальна структура програми

Рисунок 3.1 - Загальна структура програми.

3.2 Розробка алгоритму основної програми

Розробимо схему алгоритму основної програми, в якій будемо використовувати функції, приведені нижче у розділі:

Рисунок 3.2- Схема алгоритму основної програми

Рисунок 3.2- Продовження схеми алгоритму основної програми

3.3 Розробка алгоритму завантаження зображення з файлу

У тому числі, для завантаження нашого зображення ми можемо скористуватися стандартним класом TBitmap, який дозволяє одразу преобразувати. bmp-зображення у матричний вид. При цьому всі параметри зображення зберігаються у відповідних масивах та змінних класу, які ми потім зможемо використовувати для проведення квантування та кодування зображення. Натомість, ми запропонуємо алгоритм, який одразу буде завантажувати зображення із преобразуванням його у 256 градацій сірого відтінку (див. пункт 3.5):

3.4 Розробка перетворення кольорового зображення у чорно-біле

Відповідно до особливостей представлення чорно-білих зображень (256 градацій сірого кольору), кожен піксель такого зображення має відповідати рівню яскравості кольору початкового зображення. Тобто для того, щоб ми змогли перетворити кольорове зображення, нам потрібно порахувати яскравість кожного пікселю зображення, та задати колір відповідної RGB-складної як рівень яскравості попереднього пікселю (нагадаємо, що у чорно-білому зображенні усі компоненти RGB мають однакове значення).

Рівень яскравості кожного пікселя розраховується по формулі

Lij = (30 * Rij + 59 * Gij + 11 * Bij) div 100 (3.1)

Таким чином, кожному пікселю початкового зображення потрібно змінити значення на отримане за формулою (3.1), що приведе до зміни картинки наступним чином:

Рисунок 3.3 Зміна кольору зображення на чорно-білий

3.5 Розрахунки гістограми яскравостей

Вектор яскравості (гистограмма):

(3.2)

де n - кількість градацій яскравості в зображенні.

Компонента вектора яскравості - це кількість пикселей з даним значенням яскравості:

, k=1. n (3.3)

На основі цих формул, ми можемо побудувати гістограму яскравостей по зображенню, яка буде заполнюватися наступним чином:

Побудувати масив з 256 елементів (кожен елемент якого відповідає одному рівню яскравості нашого зображення), кожен елемент спочатку дорівнює 0.

Заповнити масив наступним чином: взяти піксель зображення, який має координати в матриці [1,1], отримати його яскравість, значення яскравості - номер елемента нашого масива, додати до цього елемента масива 1, перейти до наступного пікселя зображення.

Таким чином, ми отримаємо гістограму яскравості нашого зображення.

3.6 Розробка функції обчислення порогового значення відрізку масиву яскравостей зображення

Для початку, введемо умовні позначення, для спрощення орієнтування у функції GetMedian:

Вхідні дані: GisYar - масив гістограми яскравостей зображення, a1 - початковий елемент відрізку, на якому буде виконуватися квантування яскравостей, a2 - кінцевий елемент відрізку, Koef - коефіцієнт ентропійності, отриманий на основі методу, викладеного у главі 2.2.4

Вихідні дані: Elem - номер елементу масиву, який буде пороговим значенням (тобто відрізок початкового масив GisYar [a1; a2] буде поделено елементом Elem на 2 кластери)

Тимчасові дані: MasTemp - масив довжиною (a2-a1), кожним елементом якого буде сума попередніх його елементів, Sum - проміжна сума.

Рисунок 3.4 - Алгоритм функції обчислення порогового значення.

3.7 Розробка рекурсивної процедури розділення масиву гістограми яскравостей та складання масиву відповідностей елементів палітри

Введемо умовні позначення процедури DelenieNa2:

Вхідні дані: a1 - початковий елемент відрізку масиву, на якому буде виконуватися процедура, a2 - кінцевий елемент відрізку, level - рівень глибини рекурсії, Maxlevel - максимальна глибина рекурсії для обранох кількості кольорів.

Тимчасові дані: Med - пороговий елементу масиву, отриманий в результаті виконання функції GetMedian, InfCrit - номер кольору нової палітри для зображення, Sootv - масив відповідностей (256 елементів, у який для кожного елементу буде заноситися значення номеру кванту, для якого потім ми отримаємо новий колір).

Рисунок 3.5 - Алгоритм рекурсивної процедури складення масиву відповідностей.

3.8 Розробка функції ентропійного кодування зображення

Введемо умовні позначення функції DecreaseColor, результатом якої стане стисле зображення:

Вхідні дані: bmpPicture - початкове зображення, OldColor - кількість кольорів у початковому зображенні (дорівнює 255), NewColor - кількість кольорів у стислому зображенні, GisYar - масив гістограми яскравостей зображення, Koef - коефіцієнт ентропійності.

Тимчасові дані: Maxlevel - максимальна глибина рекурсії для обранох кількості кольорів, InfCrit - номер кольору нової палітри для зображення, ColNew - масив довжиною NewColor, з новими значеннями яскравостей для отримання стислого зображення, TempMas - тимчасовий масив яскравостей, Sootv - масив відповідностей, TempSootv - тимчасовий масив відповідностей.

MasPos - масив позиції порогових значень.

Рисунок 3.6 - Алгоритм функції ентропійного кодування.

Рисунок 3.6 - продовження алгоритму функції.

Рисунок 3.6 - Продовження алгоритму функції

3.9 Опис використаних компонентів

Компонент TForm

Хоча компонент TForm відсутній у палітрі компонентів, але все-таки має властиві для нього властивості, події.

Отже, компонент TForm це вікно у віконному додатку. Воно може бути мінімум одне, максимальне обмеження на кількість не накладається. Перше створене вікно в додатку автоматично стає головним. При закритті головного вікна додаток завершує свою роботу й займана їм пам'ять звільняється.

Якщо необхідно, щоб головне вікно форми автоматично не з'являлося на екрані, то в події OnCreate для цього вікна, або в програмі DPR до команди створення головного вікна необхідно вказати наступний рядок:

// Код DelphiApplication. ShowMainForm: =false;

У цій команді вказується, що в цьому додатку заборонене відображення головної форми (вікна). У цьому випадку програмістові потрібно самостійно викликати команду

// Код DelphiForm1. Show;

для відображення цього вікна. Тут Form1 - головне вікно додатка.

Даний метод може виявитися корисним для висновку запиту пароля на запуск програми. Саме це діалогове вікно потрібно показати користувачеві перед показом головного вікна, але не роблячи його головним вікном, тобто при закритті вікна уведення пароля, додаток не завершує свою роботу. І при уведенні невірного пароля можна без проблем завершити роботу програми командою

// Код DelphiForm1. Close;

Або дати команду завершення роботи додатка.

Як уже говорилося в попередніх уроках, кожний компонент у програмі, як і сама форма, має унікальне ім'я, зазначене у властивості Name. Заголовок вікна втримується у властивості Caption. По заголовку вікна користувач довідається про функціональне призначення програми або поточного вікна.

Крім заголовка у верхній частині вікна перебуває іконка й кнопки керування станом. За замовчуванням іконка така ж сама, як і іконка в проекті. Щоб перемінити іконку в поточному вікні необхідно в інспекторі об'єктів вибрати властивість Icon у якому вибрати відповідний файл-малюнок. Файл повинен бути з розширенням ICO.

Для того, щоб перемінити іконку в проекті, потрібно ввійти в меню "Project", далі "Options... ", на вкладці Application ви бачите поточний малюнок файлу проекту. Перемінити його можна кнопкою "Load Icon... ". Іконка проекту зберігається у файлі ресурсів з розширенням RES.

Властивість BorderStyle

bsDialog - У вікна немає іконки. Відображена тільки кнопка керування "Закрити". Розмір вікна постійний. Такий тип вікон застосовується найчастіше в діалогових вікнах, наприклад вікно запиту на збереження проекту, якщо ви намагаєтеся вийти з delphi не зробивши збереження.

bsNone - У вікна немає іконки, кнопок керування, заголовка. Розмір вікна постійний. Закрити таке вікно можна тільки програмно або за допомогою комбінації клавіш Alt+F4. Цей тип вікон застосовується в заставці при запуску програми. На вікні розташований компонент TImage, що містить малюнок.

bsSingle - У вікні присутнє іконка, є заголовок. Кнопки керування згорнути, розгорнути (відновити), закрити. Розмір вікна постійний.

bsSizeable - Тип вікна за замовчуванням. Має всі елементи, зазначені в попереднім значенні властивості плюс зміна розмірів вікна.

bsSizeToolWin - Цей тип вікна встановлений у вікні інспектора об'єктів. Таке вікно не має іконки, є заголовок, кнопка керування "закрити". Можна змінювати розмір вікна.

bsToolWindow - Аналогічний попередньому значенню, за винятком того, що не можна змінювати розміри вікна.

Всі вищеописані типи властивості BorderStyle установлюються тільки для працюючого додатка, тобто ми бачимо зміни в оформленні вікна тільки після запуску програми.

Властивість BorderIcons



Загрузить файл

Похожие страницы:

  1. Системи когенерації енергії

    Реферат >> Промышленность, производство
    ... і теплову енергію в централізованих системах теплозабезпечення (у вигляді пару і гарячої ... газотурбінної установки. В системах з замкненим тепловим циклом процеси ... іни з триступеневим розширенням і двоступеневим стисненням і процесом рекуперації. Рис. 9. ...
  2. Система живлення ВАЗ-2121

    Курсовая работа >> Транспорт
    ... палива "L-Jetronic” із карбюраторною системою живлення. Система живлення дизелів має відпов ... багато автомобілів іноземного виробництва із системою впорскування палива (інжектором). Застосування карбюратор ... об’єм,л 1.69 Степінь стиснення 83 Потужність,кВт 58 ...
  3. Система обробки аудіоінформації. Підсистема фільтрації і обробки сигналу

    Дипломная работа >> Информатика, программирование
    ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 11 1. РОЗРОБКА СИСТЕМИ ОБРОБКИ Аудиоинформация ... ... 14 1.1. Обґрунтування ... Функціональне призначення системи .. 20 1.3.3. Особливості системи та умови її ...
  4. Система охолодження ВАЗ-2107

    Курсовая работа >> Транспорт
    ... можна встановлювати і з двигунів 2108. система охолодження вентилятор термостат / —- крильчатка; ... водою і підводять у радіатор стиснене повітря під тиском 1 кгс/ ... навколишнього середовища, технічного обслуговування системи охолодження, її неполадки та методи ...
  5. Система запалювання від магнето

    Реферат >> Транспорт
    ... . Завдання : - визначити призначення та принцип дії системи запалювання від магнето - охарактеризувати особливості конструкц ... ів, кількості ділянок дотикання та сили їх стиснення. Параметром, що використовується для ...

Хочу больше похожих работ...

Generated in 0.001823902130127