- •Основи комп’ютерної графіки
- •Класи зображень
- •Джерела надлишковості зображень
- •Основні етапи кодування (ущільнення) зображень
- •Алгоритми ущільнення зображень без втрат
- •Алгоритм rle (групового кодування )
- •Кодування Хаффмана
- •Метод ущільнення зображень відповідно стандарту jpg
- •Загальні відомості про стеганографію
- •Основні положення теорії комп’ютерної стеганографії
- •Протоколи стеганосистем
- •Безключові сгсистеми
- •Стеганоситеми з секретним ключем
- •Стеганосистеми з відкритим ключем
- •Принципи стеганографічного аналізу
- •Можливі атаки на стеганографічні системи
- •Основні етапи практичного самоаналізу
Метод ущільнення зображень відповідно стандарту jpg
Основною особливістю алгоритму ущільнення jpg є використання дискретного косинус перетворення для представлення зображення в частотному вигляді, в результаті отримується зображення представлене набором матриць коефіцієнтів базисних функцій, які несуть інформацію про рівень зміни яскравості пікселів певної частоти зустрічаємості в блоці зображень. В основному всі зображення складаються з низькочастотних та середньо частотних коефіцієнтів, тому значення високочастотних близькі до нуля і в подальшому ними можна знехтувати. На цьому принципі будується метод ущільнення jpg.
Етапи кодування згідно стандарту jpg
на першому етапі відбувається перехід до іншої системи. Перетворення простору кольору RGB в простір YCbCr (Y-яскравість, CbCr – відтінки кольорів). Перевагою простору кольору YCbCr є виділення значущих і менш значущих компонент кольору, відповідно до властивостей зорової системи людини.
Переведення в систему YCr:
Y= 0,299R+0.587G+0.114B
Cb=-0.1687R-0.3313G+0.5B+128
Cr=0.5R-0.4187G-0.0813B+128
Переводимо назад в RGB
R= Y+1,402(Cb-128)
G= Y-0,34414(Cb-128)+0,71414(Cr-128)
B= Y+1,772(Cb-128)
дискретизація
людське око більш чутливе до яскравості ніж до відтінку цього кольору
В більшості jpg зображень яскравість Y береться для кожного пікселя, тоді як CbCr їх середня величина для блоку 2х2 пікселя.
3) зсув рівня
Всі восьми бітові величини без знаку у зображення зміщені за рівнем: вони перетворюються в восьми бітове знакове представлення шляхом віднімання 128 з їхньої величини.
4) дискретний косинус перетворення (ДКП)
ДКП застосовується до матриць значень кожного каналу кореня RGB (YCbCr або іншої системи) розміром 8х8
Пряме:
Зворотнє
Де С(x,y) та S(x,y) -елементи оригінального та відновленого за коефіцієнтом ДКП зображення розміром NxN.
x,y – просторові координати пікселів зображення
F(U,V)- масив коефіцієнтів ДКП
C(U)=1/ , якщо U=0 I C(U)=1, U>0
C(V)= 1/ , якщо V =0 C(V)=1 V>0
0 7
-
- 377
-39
10
7
0
-54
-50
12
0
4
6
2
2
5
2
-2
2
1
1
0
5)етап квантування
етап, на якому відбувається найбільш значне ущільнення зображення. Метою квантування є оримання якомога мулевих значень ВЧ значень ДКП. Це досягається шляхом ділення матриць з коефіцієнтами на одну з таблиць квантування.
Q – коефіцієнт ущільнення, який може приймати значення від 1 до 25.
Алгоритм
Здійснюється формування вектору даних з матриці квантова них коефіцієнтів.
6)кодування нулів RLE. На цьому етапі відбувається ущільнення інформації на якість зображення вона не впливає. Матриця квантова них коефіцієнтів у вигляд вектора містить у собі довгі послідовності 0. послідовність 0, яка йде перед не мулевим значенням записується одним числом.
7)Кодування Хаффмана дозволяє представити десяткові числа коротші бітові послідовності порівняно з їхніми двійковими представленнями. Після кодування Хаффмана отримана інформація разом з використовуваними таблицями квантування та кодами Хаффмана записується у файл jpg. Зворотній алгоритм йде навпаки, тільки до RLE, то QLC.