Алгоритми стиснення даних

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

Московський державний університет імені Ломоносова

Механіко-математичний факультет

Курсова робота

на тему «Алгоритми стиснення даних»

Студент третього курсу І. Межиров

Науковий керівник А. Шень

Москва 2004

Зміст

Введення 1

Основний алгоритм порівняння пари літер 3

Швидкий відмову для пари різних букв 5

Отримання монохромних зображень 7

Посилання 9

Введення

У цій роботі описується спосіб поліпшення стиснення файлів формату DjVu.

Файл формату DjVu зберігає в стислому вигляді одне або кілька растрових зображень, при цьому, чим більше ці зображення схожі на друкований текст, тим краще стиснення. На відміну від стиснення алгоритмом JPEG, при стисканні у DjVu краю букв не розмиваються.

Цей формат був придуманий і розвивався в фірмі AT & T між 1995 і 1999 роками. У 2000 році всі права були продані фірмі LizardTech. У тому ж році LizardTech опублікувала частина коду під ліцензією GPL. На основі цього коду група розробників, яка працювала над цим проектом в AT & T, створила свій незалежний варіант (теж під ліцензією GPL), який називається DjVuLibre [1]. У безкоштовно доступні програми є можливості розархівування та перегляду DjVu-файлів, але тільки демонстраційне стиснення. На жаль, ці програми не працюють під Windows (хіба що через cygwin - перенесення середовища Unix в Windows). Програми з повними можливостями продаються фірмою LizardTech; з її сайту [4] можна також безкоштовно завантажити програму для перегляду DjVu під Windows.

У DjVu-файлі зберігається окремо фон, передній план і монохромний маска, яка визначає, які пікселі зображення належать фону, а які - переднього плану. Фон і передній план кодуються алгоритмом IW 44, який, як і JPEG, кілька розмиває зображення. Автори стверджують, що IW 44 досягає зменшення розмірів файлу в два рази в порівнянні з JPEG при тому ж рівні спотворень.

Чорно-біла маска кодується алгоритмом JB 2. Цей алгоритм досягає стиснення в 4-6 разів кращого, ніж TIFF - G 4 (CCITT / MMR Group 4). Як і у випадку з багатьма іншими алгоритмами (МРЗ, наприклад), алгоритм декодировщик визначено жорстко, проте в алгоритмі кодувальника можливі зміни, що покращують стиснення.

Частина DjVu-файлу, стисла за алгоритмом JB 2, є заархівованих послідовність команд. Ці команди можуть мати вигляд "поставити таке-то зображення в таку-то крапку", а можуть мати вигляд "поставити одне з раніше зустрічалися зображень в таку-то крапку". Тому що в першому випадку команда містить ціле зображення, хай і заархівовані, а в другому випадку - всього лише номер, то ясно, що чим більше елементарних зображень однакові, тим краще буде стиснення.

Зображення, яке надходить на вхід кодувальника, поділяється на букви виділенням чорних компонент зв'язності. Алгоритм розрахований на те, що елементарними зображеннями будуть якраз літери, і дійсно, після такого розбиття зазвичай залишаються окремі букви, хоча і шматки в 2-3 букви теж часто зустрічаються.

У відсканованому документі, швидше за все, не буде жодної пари однакових зображень літер, хоча буде дуже багато літер, не відрізняються для людини. Якщо навчитися розбивати букви на класи можна відрізнити, то можна замінити всі літери в класі на одну. Людина не помітить змін у зображенні, а розмір файлу сильно зменшиться.

За допомогою алгоритмів, розроблених автором, розмір файлу зменшується на 55 ± 5% (для сторінок, які містять лише текст; малюнки та діаграми зменшують цей показник, оскільки займають багато місця і не стискаються). Єдина некомерційна програма для ЛВ2-стиснення, cjb 2 з DjVuLibre, досягає зменшення розміру тільки на 30 ± 5%.

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

Можливість «ні» існує тільки для прискорення. Якщо алгоритм замість «ні» буде завжди говорити «може бути», то результат не зміниться, але швидкість впаде (у програмі швидкість падає в 4,5 рази).

Будемо вважати, що алгоритм не помиляється, коли говорить «так», бо в іншому випадку ніякої алгоритм класифікації не застрахований від помилок.

Розглянемо всі літери в тексті і застосуємо до кожної пари порівняння. Тепер оголосимо класами зв'язкові компоненти щодо відповіді «так». Це і буде та відповідь, яка видає програма. Однак програма працює швидше за рахунок того, що класів зазвичай набагато (в середньому в 5-10 разів) менше, ніж літер. Крім того, вона враховує відповіді «ні».

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

Отже, візьмемо нову букву і по черзі порівняємо її з усіма наявними класами. Порівняння літери з класом влаштовано так: літера порівнюється з усіма елементами класу до отримання першої відповіді «так» чи «ні», який і оголошується результатом порівняння літери з класом. Якщо всі порівняння дали «може бути», то результатом порівняння літери з класом буде «ні».

Тепер об'єднаємо букву і всі класи, що дали відповідь «так», в один клас, після чого перейдемо до наступної букви.

Алгоритм порівняння пари букв повинен не помилятися, якщо він говорить «так» чи «ні»; при цьому алгоритм тим краще, чим менша кількість разів він говорить «може бути».

Основний алгоритм порівняння пари літер

У DjVuLibre 3.5 використовується простий алгоритм порівняння пари літер. Зображення накладаються одне на інше і вважається кількість відрізняються пікселів. Якщо ця кількість не перевищує 6% від їх загального числа (в одній з картинок), то букви вважаються однаковими. Поріг у 6% підбирався експериментально і, до речі, іноді дає помилки, ототожнюючи літери «и» і «н».

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

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

Спосіб полягає в наступному: визначається деякий перетворення чорно-білого зображення - «очищення». У ході очищення білі пікселі залишаються білими. Після декількох послідовних очисток зображення перестає мінятися. Чорні пікселі, що вижили всі очищення, оголошуються найбільш важливими; важливість інших чорних крапок зменшується в геометричній прогресії в міру того, на скільки очисток менше вони витримали.

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

Під час першого проходу деякі чорні пікселі можуть бути оголошені кандидатами на видалення. Під час другого проходу деякі кандидати можуть бути видалені, тобто перефарбовані у білий.

Під час першого проходу піксель оголошується кандидатом на видалення, якщо він і його вісім сусідів не розфарбовані жодним з наступних п'яти способів з точністю до поворотів і відбиттів:

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

У разі якщо піксель лежить на кордоні зображення, його сусіди, які лежать за межами зображення, вважаються білими.

Перші два правила означають, що зв'язність букви щодо переходів від пікселя до одного з його чотирьох сусідів не повинна порушуватися.

Третє правило забороняє видалення одиночних пікселів.

Четверте правило означає, що тільки пікселі з кордону чорного і білого можуть бути видалені.

П'яте правило допомагає зберегти форму літери при очищенні, забороняючи видаляти «виступаючі» пікселі.

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

Пікселі, що стали білими, беруть участь в наступних тестах вже як білі. Це гарантує збереження зв'язності в зображенні.

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

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

У першому тесті знаменник геометричної прогресії, за якою убуває рівень важливості чорних крапок, дорівнює 0, тобто враховуються тільки найважливіші пікселі. Нехай максимальний рівень важливості дорівнює 1, тоді якщо число штрафних очок менше 2,1% від площі зображення (враховуючи і білі і чорні пікселі), то вони визнаються однаковими; якщо більше 5%, то явно різними.

У другому тесті знаменник геометричної прогресії дорівнює 0,85. Якщо штраф менше 3,1% площі, зображення вважаються однаковими, якщо більше 7,8% - свідомо різними.

Швидкий відмову для пари різних букв

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

Пропонується алгоритм, який генерує по кожному зображенню коротке слово - «підпис». Підпис може мати будь-який наперед заданий розмір; зараз у програмі її довжина дорівнює 31 байту.

Підписи можна інтерпретувати як точки в багатовимірному евклідовому просторі і знаходити відстань між ними. Абсолютно однакові зображення, природно, потраплять в одну точку, а схожі букви будуть близькі. Якщо відстань занадто велика, то букви можна вважати різними.

Алгоритм працює наступним чином. Прямокутник букви розрізається на дві частини по горизонталі, але не обов'язково навпіл, а так, щоб число чорних пікселів по обидві сторони розрізу було приблизно рівним. Якщо ні одного чорного пікселя не було, то розріз проводиться посередині. Потім кожен з двох одержані прямокутників розрізається навпіл вертикальним розрізом за тим же правилом: число пікселів по різні боки розрізу повинно бути приблизно рівним. Потім кожен з чотирьох прямокутників розрізається по горизонталі і так далі, горизонтальні і вертикальні розрізи чергуються.

Положення кожного розрізу відповідає число від 0 до 1: 0 відповідає крайньому лівому або крайнього верхнього положення, 1 - крайнього правого або крайнього нижнього. Кожен розріз породжує два прямокутника, які теж можуть бути розрізані. Таким чином, виходить двійкове дерево, в кожній вершині якого стоїть число від 0 до 1. Для зберігання в байті числа можна перенормировать в інтервал від 0 до 255 і округлити.

Дерево розрізів вкладається в одну послідовність за наступним правилом: весь прямокутник зображення відповідає першому числу в послідовності; якщо якийсь прямокутник відповідає елементу номер п, то прямокутники, які з нього вийшли розрізом, відповідають елементам номер 2п і 2п + 1.

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

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

Якщо вважати елементарними спотвореннями зрушення точок графіка по вертикалі, то відстанню стане щось подібне до інтеграла від | / - д \ \ точний вигляд залежить від вартості, приписуваною елементарним спотворень. Однак вертикальне зміщення всього графіка на 1 зазвичай вважається меншим спотворенням, ніж накладення випадкового шуму, за модулем не перевершує 0,5. Значить, однакове зміщення великого числа точок коштує дешевше, ніж зміщення кожної точки окремо.

Алгоритми, що використовують вейвлети, цей факт до уваги. У найпростішому варіанті розкладання по вейвлета будується так. Спочатку в перший вейв-років-коеффіціент записується середнє значення по всьому відрізку. Потім відрізок розрізається на дві рівні частини, і різниця в середньому значенні в лівій і правій частині записується в другій вейвлет-коеффіціент. Цей процес розрізів навпіл і виписування різниці в середніх триває далі з кожним з отриманих відрізків.

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

Однак сканер зазвичай спотворює зразки по-іншому: він спотворює ще й аргументи функцій, тобто зміщує точки на графіку горизонтально. Такі перекручування відповідають уявленню f = g про h, причому міра цих спотворень тим більше, чим далі h від тотожної функції. Можливо, інтеграл від (h! - I) 2 добре наближає квадрат шуканого відстані; але горизонтальні спотворення зазвичай змішані з вертикальними, і тому потрібен спосіб, що дозволяє знаходити наближення стійко до вертикальних спотворень.

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

У програмі при підрахунку різниці елементи підпису додатково множились на коеффіціент, в геометричній прогресії залежить від рівня розрізу. Підібрані експериментально пороги такі: відмова від пари букв, якщо відстань більше 170 (знаменник 0,9, з рівнями важливості), або якщо відстань більше 250 (знаменник 1,15, з рівнями важливості), або якщо відстань більше 215 (без прогресії і без рівнів важливості).

Отримання монохромних зображень

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

Найпростіший спосіб для цього - оголосити всі пікселі темніше половини білого чорними, а інші - білими. Під Linux це виконується командою pgmtopbm - threshold, а під Windows цю операцію виконує стандартний редактор Paint, коли зберігає кольорові картинки як монохромні.

Цей спосіб добре працює тільки тоді, коли зображення вже схоже на монохромне. Однак, якщо в ньому є дуже бліді букви або затемнені поля, то в результаті одні контури можуть пропасти, а інші - з'явитися. Щоб справлятися з такими випадками, потрібен алгоритм, який звертає більше уваги на різкість кордонів і правильність ліній, ніж на абсолютну величину кольору.

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

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

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

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

Розфарбуємо контури в чорний і білий кольори так, щоб максимізувати описану нижче функцію. При цьому кожен піксель отримає той колір, який має найбільший внутрішній із містять його контурів.

Побудуємо функцію виграшу від розмальовки дерева контурів, яку треба спрямувати до максимуму. При цьому можна заборонити деякі розмальовки, присвоївши їм спеціальне значення «мінус нескінченність».

Покладемо виграш рівним сумі по всіх контурах наступної величини. Фіктивний кореневої контур повинен бути білим (цим і досягається видалення полів); ​​таким чином, чорний кореневої контур заборонений. Контур, що має той же колір, що й батько, дає нульовий внесок у виграш. У наступних випадках контуру заборонено мати колір, відмінний від кольору батька: якщо окремий алгоритм для фільтрування непотрібних контурів визнав його сміттям; якщо контур освітлюючий, а батько білий; або якщо контур затемнюють, а батько чорний. Якщо ж батько затемняють контуру білий, а сам контур чорний, або батько освітлюючого контуру чорний, а сам контур білий, то його внесок у виграш дорівнює різкості.

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

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

Алгоритм для усунення сміття - частина, що вимагає найбільшої ручного настроювання. Максимальний рівень яскравості будемо вважати рівним 255. У програмі прийнято наступне правило: контур вважається підозрілим, якщо він затемнюють і його рівень (як лінії рівня) менше 156 або якщо він освітлює і його рівень більше 100; підозрілий контур вважається сміттям, якщо його різкість менше 10000 або ставлення до його різкості до його довжини менше 100.

Час роботи всього алгоритму пропорційно числу пікселів, час роботи другої частини, розмальовки дерева, пропорційно числу контурів. На практиці програма працює швидко, як не дивно, навіть швидше, ніж pgmtopbm - threshold.

Посилання

[1] Сайт DjVuLibre: http://djvu.sourceforge.net

З нього можна завантажити архіватор і програму для перегляду DjVu під Unix з вихідним кодом.

[2] Сайті DjVuZone: http: / / www. Dj vuzone. Org Різні ресурси, присвячені DjVu.

[3] Сервер Any 2 DjVu: http: / / ciny 2 djvu. Djvuzone. Org

Стискає надіслані на нього зображення з якістю комерційних програм.

[4] Сайт фірми LizardTech: http: / / www. Lizardtech. Com

З нього можна завантажити plug - in до Internet Explorer 'y для Windows. Остання версія на момент написання цього посилання займає 7,5 Мб.

[5] Plug - in на МЦНМО: http: / / www. Mccme. Ru / free - books / 4 djvu / djvuwebbrowserplugin _ en. Exe Сервер МЦНМО зберігає стару версію того ж plug - in 'a для Windows, що займає 1,7 Мб.

[6] Статті, викладені фірмою LizardTech (у тому числі всі перелічені нижче) можна завантажити звідси: http: / / www. Lizardtech. Com / solutions / doc / doc _ techpapers. Php

[7] Artem Mikheev, Luc Vincent, Mike Hawrylycz, Leon Bottou. Electronic Document Publishing using DjVu. Proceedings DAS'02, Fifth IAPR International Workshop on Document Analysis Systems, Princeton, NJ, August 2002.

[8] Patrick Haffher, Leon Bottou, Yann LeCun, Luc Vincent, A General Segmentation Scheme for DjVu Document Compression. Proceedings ISMM'02, International Symposium on Mathematical Morphology, Sydney, Australia, April 2002.

[9] Leon Bottou, Patrick Haffner, Yann LeCun, Efficient Compression of Digital Documents to Multilayer Raster Formats. Proceedings ICDAR'Ol, International Conference on Document Analysis and Recognition, Seattle, WA, September 2001.

[10] Yann LeCun, Leon Bottou, Patrick Haffner, Jeffery Triggs, Luc Vincent, Bill Riemers, Overview of the DjVu Document Compression Technology. Proceedings SDIUT'Ol, Symposium on Document Understanding Technologies, pp.119-122, Columbia, MD, April 2001.

[11] Yann LeCun, Leon Bottou, Andrei Erofeev, Patrick Haffner, Bill Riemers, DjVu Document Browsing with On-Demand Loading and Rendering of Image Components. Proceedings of SPIE's Internet Imaging II, San Jose, CA, February 2001.

[12] Leon Bottou, Patrick Haffner, Yann Le Cun, Paul Howard, Pascal Vincent, DjVu: Un Systeme de Compression d'Images pour la Distribution Reticulaire de Documents Numerises. Actes de la Conference Internationale Francophone sur l'Ecrit et le Document, Lyon, France, July 2000.

[13] Patrick Haffner, Yann Le Cun, Leon Bottou, Paul Howard, Pascal Vincent. Color Documents on the Web with DjVu. Proceedings of the International Conference on Image Processing, Vol. 1, pp. 239-243, Kobe, Japan, October 1999.

[14] Patrick Haffner, Leon Bottou, Paul Howard, Yann Le Cun. DjVu: Analyzing and Compressing Scanned Documents for Internet Distribution. Proceedings ICDAR'99, International Conference on Document Analysis and Recognition, pp. 625-628, 1999.

[15] Yann Le Cun, Leon Bottou, Patrick Haffner, Paul Howard, DjVu: a Compression Method for Distributing Scanned Documents in Color over the Internet, Color 6, 1ST, 1998.

[16] Leon Bottou, Patrick Haffner, Paul Howard, Patrice Simard, Yoshua Bengio, Yann Le Cun, Browsing Through High Quality Document Images with DjVu. Proceedings of IEEE Advances in Digital Libraries'98, IEEE, 1998.

[17] Leon Bottou, Patrick Haffner, Paul Howard, Patrice Simard, Yoshua Bengio, Yann Le Cun, High Quality Document Image Compression with DjVu. Journal of Electronic Imaging, Vol. 7, No. 3, pp. 410-425, SPIE, 1988.

[18] Leon Bottou, Steven Pigeon, Lossy Compression of Partially Masked Still Images. Анотація в Proceedings of IEEE Data Compression Conference DCC'98, pp. 528-537, Snowbird, March 1998; повна версія по адресою http://www.lizardtech.com/solutions/doc/techpapers/1998_lossy_masked.dj vu

[19] Leon Bottou, Paul Howard, Yoshua Bengio, The Z-Coder Adaptive Binary Coder. Proceedings of IEEE Data Compression Conference DCC'98, pages 13-22, Snowbird, March 1998.

Додати в блог або на сайт

Цей текст може містити помилки.

Програмування, комп'ютери, інформатика і кібернетика | Курсова
58.1кб. | скачати


Схожі роботи:
Алгоритми стиснення даних 2
Ентропія складних повідомлень надмірність джерела Мета стиснення даних і типи систем стиснення
Стиснення даних при передачі зображень
Алгоритми і організація даних
Структури та алгоритми обробки даних
Алгоритми і структури даних Програмування у Cі
Стиснення інформації
Синдром тривалого стиснення
Система стиснення і ущільнення каналів
© Усі права захищені
написати до нас