Научная статья на тему 'Images Compression by using cubic spline-functions methods'

Images Compression by using cubic spline-functions methods Текст научной статьи по специальности «Математика»

CC BY
35
34
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
КОДУВАННЯ ЗОБРАЖЕНЬ / СТИСНЕННЯ ЗОБРАЖЕНЬ / РАСТРОВі ЗОБРАЖЕННЯ / КОЕФіЦієНТИ СПЛАЙНФУНКЦії / АПРОКСИМУЮЧИЙ ПОЛіНОМ / IMAGES CODING / COMPRESSION IMAGES / RASTER IMAGES / COEFFICIENTS OF THE SPLINE FUNCTION / APPROXIMATING POLYNOMIAL

Аннотация научной статьи по математике, автор научной работы — Kotsuibivska K., Chaikovska O., Tolmach M., Khrushch S.

The object of research is image compression algorithms based on mathematical methods. The main problem with image compression is loss of quality during recovery. The approach is proposed in which the user can determine the quality of the reconstructed image itself. This is achieved due to the use of the spline interpolation method, which allows to set the compression ratio, thus controlling the quality of the decoded image. The use of the spline function for image compression makes it possible to reduce the processing time of files due to the simplicity of the mathematical model of the algorithm. Given the accuracy of the restored image, the algorithm determines the size of the compressed file, depending on the color scale. As a result of the analysis of the proposed development, the compression coefficients are shown, which show that the size of the compressed image can be smaller than the original image by 50-70 %. The decoding is performed using known spline function coefficients. The result is compared with the original file. The difference between the intensity of the points of the source and decoded images determines the quality of the restoration. An algorithm is obtained that allows one to specify the accuracy of the reconstructed image. This result depends on the weighting coefficients of the spline function, which affect the accuracy of the construction of the approximating polynomial. A feature of the proposed approach is the ability of the user to specify the accuracy and quality of the image after decoding. This is achieved due to the fact that points close in intensity value are restored with a small error. In this paper, let’s propose an approach involving the sequential extraction of blocks of points of equal intensity. For the selected blocks, an approximating polynomial is constructed based on the spline function, and the coefficients of the polynomial are transferred to a file containing information for image reconstruction. So it is possible to obtain large compression ratios by building a polynomial for blocks containing points that are close in intensity.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Images Compression by using cubic spline-functions methods»

БОТ: 10.15587/2312-8372.2018.134978

СТИСНЕННЯ ЗОБРАЖЕНЬ МЕТОДАМИ КУБ1ЧНИХ СПЛАЙН-ФУНКЦ1Й

Коцюбiвська К. I., Чайковська О. А., Толмач М. С., Хрущ С. С.

1. Вступ

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

Однак в процесi перетворення аналогового сигналу в цифрову форму значно розширюеться смуга частот, яку займають цi сигнали, що вимагае каналiв передачi з високою пропускною здатшстю та великих об'емiв пам'ят для 1х зберiгання. Особливо це вщноситься до зображень, тому актуальним е виконання стиснення зображень перед !х збереженням i передачею по каналах зв'язку.

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

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

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

2. Об'ект дослщження та його технологiчний аудит

Об 'ектом дослгдження е алгоритми стиснення зображень на основi математичних методiв. Основною задачею новоi розробки е тдвищення показникiв стиснення при малих втратах точностi зображення. Головною оцшкою точностi зображення е вiзуальна яюсть, характеристикою методу е швидкодiя.

Найбшьш розповсюдженою комерцiйною технологiею е методика jpeg, в якш стиснення досягаеться за рахунок косинус-розкладу Фур'е. 1нший пiдхiд може бути реалiзований на основi сингулярного використання матрицi. Модифжац1я iснуючих технологiй полягае в розробщ нових математичних пiдходiв та алгоршшв, а також створення нових програмних технологiй та розв'язкiв [1].

Першими для архiвацii зображень стали застосовуватися алгоритми, якi використовувалися i використовуються в системах резервного копiювання, при створенш дистрибутивiв i т. п. Ц алгоритми архiвували iнформацiю без змш. Однак основною тенденцiею останшм часом стало використання нових клашв зображень. Старi алгоритми перестали задовольняти вимогам, що пред'являються до архiвацii.

Багато зображень практично не стискалися. Це призвело до створення нового типу алгоршшв, якi стискають з втратою iнформацii. Як правило, коефщент архiвацii, а отже, ступшь втрат якосп в них, можна задавати. При цьому досягаеться компромiс м1ж розмiром i якiстю зображень.

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

Використання алгоритму, що розробляеться, дозволить отримати хорошi показники стиснення, причому не виконуючи складних обчислень, що збтьшуе швидкодю.

3. Мета та задачi дослщження

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

Для досягнення поставленоi мети необхщно виконати наступнi задачi:

1. Обгрунтувати переваги стиснення на основi кубiчних сплайн-функцiй.

2. Проаналiзувати яюсть стиснення зображень з використанням методу сплайновоi iнтерполяцii.

3. Порiвняти отримаш результати з вже iснуючими стандартами.

4. Дослщження кнуючих рiшень проблеми

Вс алгоритми стиснення оперують вхщним потоком iнформацii, мiнiмальною одиницею яко!' е бiт, а максимальною - кшька бiт, байт чи кшька байт. Метою процесу стиснення, як правило, е одержання бшьш компактного вихщного потоку iнформацiйних одиниць з деякого початкового некомпактного вхщного потоку за допомогою деякого 1'хнього перетворення.

Останшм часом зображення та шюстрацн стали використовуватися повсюди. Проблема, пов'язана з 1'хшм великим розмiром, з'явилася при робот i на робочих станщях, i на персональних комп'ютерах. Зважаючи на те, що звичайно використовуеться кшька шюстрацш, i те, що вони часто бувають набагато бшьшого розмiру (наприклад, при кольоровому друш), зберiгати 1'х у неупакованому виглядi стае накладно. В останш роки рiшенню цiеi проблеми придшяеться досить серйозна увага [1-5]. Розроблено велику кшьюсть рiзних алгоритмiв архiвацii графiки: використовувалися як видозмiненi ушверсальш, так i абсолютно новi алгоритми, орiентованi тiльки на зображення. Бшьш того, були розроблеш алгоритми, орiентованi тiльки на конкретний клас зображень.

Проведемо пор^вняння вщомих методв кодування, вказавши к переваги та недолки.

Групове кодування - найбiльш вщомий простий пiдхiд i алгоритм стиснення шформацн оборотним шляхом - це кодування серш послiдовностей (RLE). Проблема вшх аналогiчних методiв полягае у визначенш способу, за допомогою якого алгоритм декодування м^ би вiдрiзнити в результуючому потоцi байтiв кодовану серш вщ iнших - некодованих послщовностей байтiв, що вимагае додаткових витрат. Даш методи, як правило, досить ефективш для стиснення растрових графiчних зображень (BMP, PCX, TIF, GIF), тому що останш мютять досить багато довгих серш послщовностей байпв, що повторюються. Недолшом методу RLE е досить низький стетнь стиснення

файив з малим числом серiй i, що ще гiрше - з малим числом повторюваних байтiв у серiях. При використаннi адаптивного кодування Хаффмена [1] ускладнення алгоритму полягае в необхщност постiйного коректування дерева i кодiв символiв основного алфашту вiдповiдно до статистики вхiдного потоку, що змшюеться. Основним же недолжом даного методу е те, що при кодуванш потоку з двосимвольним алфавитом стиснення завжди вiдсутне, тому що незважаючи на рiзнi iмовiрностi появи символiв у вхiдному потощ алгоритм фактично зводить ïx до 1/2 [1]. При розробщ методу арифметичного кодування виникають двi проблеми: по-перше, необxiдна арифметика з плаваючою точкою, теоретично, необмеженоï точностi, i, по-друге, результат кодування стае вщомий лише при закшченш вxiдного потоку. Алгоритм Лемпеля-Згва-Велча (LZW) вiдрiзняють висока швидюсть роботи як при упакуванш, так i при розпакуванш, досить скромнi вимоги до пам'ят i проста апаратна реалiзацiя, але недолiком е низький ступiнь стиснення в порiвняннi зi схемою двостутнчастого кодування [2]. Особливiстю фрактального стиснення е потреба в колосальних обчислювальних потужностях при арxiвацiï. Найвiдомiшою програмою-арxiваторм та сьогоднiшнiй день е конвертор графiчниx файлiв фiрми Microsoft, що опираеться на використання методу стиснення JPEG. Не дуже приемною властивютю JPEG е те, що нерщко горизонтальш i вертикальш смуги на дисплеï абсолютно не видимi, i можуть проявитися тшьки при друщ у виглядi муарового вiзерунка. У вшх наведених алгоритмiв по сьогодшшшх мiркаx, занадто маленький коефiцiент арxiвацiï.

Основними теxнiчними характеристиками процесiв стиснення i результат 1'хньо1' роботи е:

- стетнь стиснення (compress rating) чи вщношення (ratio) обсягiв вихщного i результуючого потокiв;

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

- яюсть стиснення - величина, що показуе наскшьки сильно упакований вихщний потж визначаеться вiдношенням розмiру упакованого файлу до розмiру файлу, отриманого пiсля застосування до нього повторного стиснення по цьому ж чи шшому алгоритмов^

Щоб коректно оцшювати напрямок змiни алгоритмiв, недостатньо визначити тшьки класи зображень. Необхщно задати i визначенi критерп, одними з яких е прший, середнiй i кращий коефiцiенти стиснення. Тобто частка, на яку зросте розмiр зображення, якщо вихщш данi будуть найпршими; деякий середньостатистичний коефiцiент для того класу зображень, на який орiентований алгоритм; i, нарештi, кращий коефщент. Останнiй необxiдний лише теоретично, оскшьки показуе степiнь стиснення найкращого (як правило, абсолютно чорного) зображення, нерщко фшсованого розмiру.

Далi будуть розглянул статичнi растровi зображення, що представляють собою двовимiрний масив чисел - пiкселiв. Усi зображення можна тдроздшити на двi групи: з палпрою i без не!'. У зображень з палпрою в пiкселi збер^аеться

число - шдекс у деякому одномiрному BeKTopi кольорiв, що називаеться палпрою. Найчастiше зустрiчаються палiтри з 16 i 256 кольорiв.

Першими для архiвацiï зображень стали застосовуватися алгоритми стиснення без втрат. Ti, що використовувалися i використовуються в системах резервного котювання, при створеннi дистрибутивiв i т. п. Однак час не стопъ на мiсцi, i основною тенденщею сьогоднi стало використання нових клашв зображень. Старi алгоритми перестали задовольняти вимогам, висунутим до архiвацiï. Це привело до створення нового типу алгорштв - стиснення iз втратою iнформацiï. Як правило, у них можна задавати коефщент архiвацiï i, отже, степiнь втрат якостт При цьому досягаеться компромю мiж розмiром i якiстю зображень.

Базовим методом цифрового кодування зображень е iмпульсно-кодова модулящя (1КМ). Вона характеризуеться тим, що кожному закодованому в цифрову форму слову вщповщае квантований у чаш i по амплiтудi вщлш вщеошформацп [3]. При цьому повинш виконуватися вимоги теореми дискретизацп:

fg = 2co, (1)

де с - максимальна частота сигналу.

Для запоб^ання появи фальшивих контурiв для одноï складовоï кольору необхiдно не менш 50 рiвнiв квантування, що вщповщае 6-8 розрядному слову на кожен елемент кольорово!' складово!' зображення. Через велик обсяги iнформацiï 1КМ використовуеться лише при внутрютудшнш передачi телевiзiйних сигналiв паралельним кодом. 1КМ е базовим, каношчним представленням зображення в цифровш формi [3].

Серед статистичних методiв найбiльш широке застосування знайшли блоковi методи кодування зображень. Даш методи працюють у такий спошб. Блоки розмiром M*N елементiв кодуються вiдповiдно до iмовiрностi 1'хньо1' появи. Для найбшьше ймовiрносних блокiв використовуються коротк кодовi слова, а для менш ймовiрностних - довгi кодовi слова (алгоритм Хаффмана), у результат чого досягаеться стиснення даних [4, 5]. Коефщенти стиснення при використанш цих методiв можуть досягати 4-5.

Огляд л^ературних джерел показав, що основними напрямками вирiшення проблеми стиснення зображень е використання wavelet-кодування [1-3] та використання формату jpeg для зменшення об'ему фалiв зображень [4, 5]. Також запропоновано методику зменшення розмiру фалiв зображень на основi методiв масштабування [6]. Велика кшьюсть робiт присвячена використанню комбiнованих методiв стиснення зображень [7-10].

Зокрема, робота [1] присвячена огляду i порiвнянню вщомих методiв стиснення зображень. Авторами [2, 3] при порiвняннi рiзних методiв кодування також вiдзначено, що при покращенш якостi вiдновленого зображення зменшуеться коефiцiент стиснення. Особливо така проблема зустрiчаеться для зображень з насиченою кольоровою гамою.

При робот з растровими зображеннями первинною задачею, перед будь-якою обробкою, е визначення штенсивностей точок. Авторами роботи [4] також запропонований метод побудови полiномiальноï функцп вщновлення, але виxiдний файл уже буде мютити векторне зображення. Такий метод дае досить хороше спiввiдношення мiж коефщентом стиснення та якiстю вiдновленного зображення.

Розглядаючи метод [5], автор зазначив, що отриманий растр менш надлишковий. Перетворення можна застосовувати для зображень з великими площами рiвноï зафарбованостг Дане кодування зворотне, тобто зображення вщновлюеться без втрат. Це перетворення знижуе ентропiю, отже пiдвищуе стутнь стиснення.

Також цiкавою е модель стиснення 1СА [6], в основi яко1' лежить розбиття зображення на невелик областi для подальшо1' оброки з використанням комбшованого методу дельта функцп та функцп щшьност розподшу Гауса.

Особливостi wavelet-кодування, методiв кодування без втрат полягають у тому, що вони стали основою для подальших дослщжень [7-10], але поки що використовуються для двовимiрниx зображень.

5. Методи дослщжень

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

В кодуючих системах з штерполяшею на передаючш сторонi значення яскравост апроксимуються неперервними функцiями з рашше встановленою точнiстю. Iнтерполяцiя може проводитись вздовж стрiчки розгортки або охвачувати деяку частину площини зображення.

1нтерполятор нульового порядку працюе наступним чином: для вшх елементiв зображення встановлений однаковий iнтервал допустимих спотворень, в межах якого будуеться набiр вiдрiзкiв горизонтальних прямих максимально!' довжини без додаткових обмежень на розмщення 1'х початкових та кiнцевиx точок. Всiлякий елемент зображення перекриваеться яким-небудь iз цих вiдрiзкiв. По каналу зв'язку передаються вертикальна координата кожного вiдрiзка та його довжина, виражена числом елеменлв. При вiдновленi зображення на приймальш сторонi всi елементи в межах вiдрiзку набувають рiвень, вщповщний його вертикальнiй координатi. Цей варiант штерполяцп надае бiльшу свободу в виборi можливих комбiнацiй вiдрiзкiв горизонтальних прямих та в зв'язку з цим дозволяе отримати найбшьш ефективне представлення вихщних даних за допомогою мтмально1' кшькосп вiдрiзкiв. Однак обсяг обчислювальних операцiй, необxiдниx для побудови такого оптимального наближення, часто виявляеться дуже великим. Спрощений варiант iнтерполяцiï нульового порядку представляе собою кодування довжин серш з вказуванням яскравостi першого елементу серп.

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

Полiномiнальнi функцп бшьш високого порядку, наприклад кубiчнi сплайни, також можуть бути застосоваш для кодування з iнтерполяцiею, однак пiдвищення порядку полiномiв супроводжуеться швидким з—та ^ лбсягу обчислень. Можна також ставити задачу двомiрноï iнтерполяцiï нульового та першого порядюв, однак вiдповiднi iнтерполятори важко реалiзувати на практицi.

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

Суть чи ядро програмного продукту, що розробляеться - реалiзацiя модуля вщновлення пропущених вiдлiкiв, використовуючи кубiчнi сплайн-функцп. Тому в цьому пiдроздiлi опишемо математичну сторону сплайново1' iнтерполяцiï.

Перед тим, як розглянути алгоритми стиснення зображень за допомогою згладжування, з'ясуемо суть само1' задачi згладжування.

Вимiрювальний прибор вiдповiдае на вхiдний сигнал xn вихiдним сигналом, при цьому числовий параметр n змiнюеться вщ 1 до N. Через загальну кiлькiсть N пар величин необхщно провести функцiю f(x) так, щоб можна було задати аналмчний зв'язок мiж вихiдним i вхiдним сигналами, тобто характеристику.

При штерполяцп шукана крива f(x) проходить через опорш точки f(xn)=yn. Знайдена функшя дозволяе обчислити вихщний сигнал f(x) також i мiж опорними точками xn<x<xn+1. При акпроксимацп шукану криву необхiдно провести по визначеному закону мiж парами величин (розшяних чи зашумлених), не добиваючись того, щоб на опорних точках значення функцп ствпадали з вимiряними значеннями yn.

Алгоритми iнтерполяцiï функцш по точним даним, визначеним на дискретш множинi точок, як правило, основаш на використаннi iнтерполяцiйних многочлешв Лагранжа. При цьому вiдносно функцп (р(х), яка штерполюеться, вводиться апрюрне припущення про те, що вона мае похщш до деякого порядку.

1нша, близька до проблеми штерполяцп, задача виникае в тому випадку, коли значення задано1' функцп ((х) вiдомi в вузлових точках не точно, а з деякою похибкою, максимальна величина яко1' для кожно1' точки задаеться в якост апрюрно1' шформацп. В цьому випадку задача полягае в побудовi тако1' криво!', яка б найкращим чином апроксимувала функцiю, задану з випадковими

похибками в вузлових точках. Така задача зазвичай розв'язуеться на основi методу найменших квадрапв.

Останнiм часом теорiя iнтерполяцii збагатилася новими методами, що отримали назву сплайнових iнтерполяцiй. Слщ вiдзначити, що сплайном зазвичай е визначена в областi В кусково-полiномiальна функцiя, тобто функцiя, для яко! iснуе розбиття В на тдобласт таке, що всерединi кожного елементу розбиття функщя являе собою многочлен деяко1' степенi т. Крiм того, ця функщя, як правило, неперервна в област В разом з похщними (т-1) порядку. Найбiльш розповсюдженими в технiцi стали сплайни - многочлени третього порядку.

Нехай на вщр1зку [а, Ь] осп л* задана сггка а=х0<х1<... <х„=Ь, в вузлах яко1

задан 1 значения {/к}"к=0 функцп ]'(х), визначено!' на [а, Ь]. Тод1 задача кусково

кубiчноi iнтерполяцii ставиться наступним чином. На вiдрiзку [а, Ь] необхiдно знайти функцiю %(х), яка задовольняе умовам:

1) g(x) належить класу С(22(а, Ь), тобто неперервна разом зi своiми похiдними до другого порядку включно;

2) на кожному з вiдрiзкiв ^к-1, xk] g(x) е кубiчним многочленом вигляду:

ё(х) = ёк(х) = ^^(хкх)1,к = 1„. " (2)

1=0

3) в вузлах сггки \хк Ук_{) виконуються р1вносп:

фк)=/к, {к=0,1,.,п)\ (3)

4) ^/(х) задовольняе граничним умовам:

/(а)=/(Ь)=0. (4)

Переваги обраноi iнтерполяцii стануть зрозумiлими пiзнiше, коли встановимо екстремальну властивiсть так визначено!' функци g(x).

Покажемо, що поставлена задача на знаходження iнтерполюючоi кусково-кубiчноi функцii g(x) мае едине ршення. Для цього скористаемося сформульованими вище умовами.

Оскшьки друга похiдна функцii g(x) наперервна та лшшна на кожному вiдрiзку сiтки xi] (¡=1,...,п), можемо записати при xi-1<X<Xi:

// / \ ОС > ОС ОС ОС •л / ^ \

ё//(х) = т^^— + щ——(5)

де hi=Xi-Xi-1, mk=g//(xk). Проiнтегруемо двiчi обидвi частини рiвностi (5). Отримаемо:

g(x) = 7ИМ

эс I Д.) ^ X \)

Ь 171, ■

6 к

+ А

к

ьД-

¡-1

к

(6)

де та Д- - деякi константи iнтегрування, що обчислюються з умови g(xi_1)=f_1, g(xi)=fi. Шдставляючи x=xi та x=xi-1 в (6) отримаемо:

ё(х) = т1_1

( ОС ^ ОС^) (^ОС )

6/г

+ т

64

/м-

т^г: 6

2 Л

-г/- _ 'V*

.Л/ ■ ./V

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

к

+

171-Н, б"

2 Л

х хм

+ 171

к

-Ц..

6 '

(7)

(8)

1з (8) знаходимо односторонш границi похiдноi в точках x1, x2, ..., xn—1, i вiдповiдно до умови неперервностi функцп та g(x) на [^ Ь], та умови неперервностi g(x) в точках x1, x2, ..., xn-1 отримаемо п—1 рiвняння:

к к + км. к^

— т. , +—-—т.

6 ,-1 3 , 6 ,+1

к

к

(9)

Доповнюючи цi рiвняння з умов (4) рiвностями m0=mn=0, отримуемо лшшну алгебраiчну систему для знаходження невiдомих m1, m2, ..., mn—1:

Am=Hf.

(10)

Квадратна матриця А мае вигляд:

А =

0

0

0

К_1 К+К_х

(11)

вектори m таf i прямокутна матриця H такi:

1 -] 1

К V К К; к.

0 1 о

н = К V К К;

О

о

о

о о

1 1

V К-х К;

О

о

к

Матриця А симетрична зi строгою дiагональною перевагою. Коефщенти т1? т2, ..., тп-1 визначаються з системи (10) однозначно. Отже, сплайн-функщя g(x) також однозначно вщновлюеться по формулам (7) i задача про знаходження кусково-кубiчноi функцii g(x) мае едине рiшення.

Кубiчнi сплайни володiють дуже важливою властивiстю, яка обумовлюе високу ефектившсть сплайн-штерполяцп. А саме, розглянемо на вщргзку [а, Ь] клас Ь], який складаеться з функцш, як\ мають додаваем! з квадратом

друп похiднi. Поставимо задачу пошуку iнтерполяцiйноi функцii:

М£^2[й, Ь], и(хк) = /к, к = 0,1,---,п, (12)

яка мiнiмiзуе функщон°л

ф(и) = \[и//(: л2о. (13)

на класл Ь\. Стверджуеться, що мш1мум такого функцюнала досягаеться

на кусково-кубiчнiй сплайн-функцн g(x), яку щойно побудували. Насправд^ розглянемо величину:

ф(м -£) = -¿'^вх. (14)

1нтегруючи по частинам \ використовуючи власти воет! функцш g \ и & 1У22, отримаемо:

Ф(м-Я) = Ф(и)-Ф(£)-2£ \ (15)

/-1

але g///=ck=const на вiдрiзку [хк-1, хк], тому:

Ф(и - Я) = Ф(и) - Ф(я) -2^, (и - £)| 1 = Ф(и) - Ф^ ^

к=\

Звiдси та з (14) випливае, що:

ф(ё) = ф(м)-ф(м-£)<ф(м). (16)

Таким чином на кусково-кубiчнiй функци g(x) реатзуеться мшмум функцюналу (13). Неважко показати, що шших точок мшмуму у функцiоналу немае [7].

Базуючись на (12), (13), можна дати шше, екв1валентне визначення кусково-куб1чно1 сплайн-функцп: це така функщя п класу Ь\, яка

приймае в вузлах сттки задане значення та мiнiмiзуе функщонал (13).

Кубiчнi сплайн-функцii володiютъ хорошими апрксимуючими властивостями. Якщо функцiя яка iнтерполюетъся належитъ класу С(к)[а, Ь] (к=0,1,2,3,4), то для функци похибки р(х)=/(х)^(х) справедливi нерiвностi:

тах

а]х]Ь

<р(р\х)\]Ск^р, !г>р (17)

де С - невщ'емна константа, яка не залежить вщ сггки, /г = тахр, - х{_{\.

Ш<п

Суть самого метода стиснення полягае в наступному: спочатку берутъ першi двi точки з обласп згладжування. Обчислюютъся коефщенти полшома Р(х), i будуетъся згладжуюча крива для обраних точок. Значення коефшденпв заноситься в як1йсъ шший файл. Використовуючи цей самий полшом, будуетъся сгладжуюча крива для наступних двох точок, до тих тр, поки рiзниця м1ж початковими значеннями функци в цих точках i значеннями, отриманими в резулътатi штерполяцп, не перевищуватимутъ якогосъ заданого значення Л:

Л=(Р(хп)-уп), (18)

де Р(хп) - штерполяцшш значення; уп - початковi значення.

Для точок, де значення Л перевищуе задане, знову знаходять значення коефiцiентiв полiнома Р(х), i повторюють алгоритм спочатку.

Даний алгоритм може бути ефективно застосований для зображень з малою ктькютю колъорiв (чорно-бтих зображень). Осктьки при великш кiлъкостi колъорiв, а вщповщно i змiнi iнтенсивностей точок, виникае необхщшсть вели^' кiлъкостi розрахункiв для обчислення коефiцiентiв. Це приводить до зниження

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

Зазвичай растрове зображення представляеться масивом точок, значення яких вщповщае штенсивностг Ще один полягае в розбитл матрицi на невелик квадрати, наприклад, 4x4, для яких знаходять середне значення штенсивносл, яке i передаеться в iнший файл. Таким чином замiсть 16 точок отримуемо 1. Для вщновлення зображення мiж отриманими точками проводять апроксимуючий або штерполюючий полiном.

6. Результати досл1джень

Основними етапами процесу кодування зображень е:

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

2. Субдискретизащя компонент кольоровостi усередненням груп пiкселiв (тiльки для кольорових зображень), що дозволяе без втрат якост зменшити обсяг iнформацii в два рази.

3. Задаеться рiзницевий коефшденг А, який показуе наскiльки вiдрiзняеться значення полiному в данiй точщ вiд початкового значення штенсивностт

4. Для двох точок зображення будуеться полiном третьо!' степенi, яким дат згладжуються наступнi двi точки, до тих тр, поки рiзниця м1ж значенням полiному в точцi та початковим значенням в нш не в1^знятиметься на задану величину А.

5. Вщновлення пропущених вiдлiкiв штерполяцшним многочленом

(формуються вщлши низькочастотно! компоненти зображення - Х(т],т>) ).

6. Формування вiдлiкiв рiзницевоi (високочастотно!) компоненти зображення та !х квантування:

п

8КВ (Ш\ >т2 ) = X А /1Ц777! >т2 ) ~ Л / }'

де х(т1,т?),Х(т1,т?) - вщповщно значення вщлшв початкового зображення та низькочастотно1' компоненти; Л]- - кроки квантування початкового сигналу; 4 - пороги квантування вхщного сигналу; 1{•} - единична функщя.

7. Кодування вiдлiкiв високочастотно1' та низькочастотно1' компоненти (тiльки опорш вiдлiки) методами статистичного кодування.

Вщновлення - це зворотнiй процес кодуванню, з тею рiзницею, що немае необхщносп обчислення коефщенпв сплайн-функци та вщсутне квантування. Зрозумло, що схема вщновлення проспша i, вщповщно, процес вщновлення швидший вщ процесу кодування. Експериментальш дослщження показали, що коефщент прискорення операци вщновлення знаходиться в дапазот 8-15 % вщ часу кодування даних.

6.1. Перетворення зображення в оптимальний кольоровий проспр

Цей алгоритм призначений для перетворення RGB сигналу в сигнал YUV, де Y - ярюсний сигнал, U i V - кольорорiзницевi сигнали. Це перетворення дозволяе зменшити надмiрнiсть зображення.

Перетворення виконуеться вщ точки до точки за наступними формулами:

Y = 0.3-iv+ 0.59-G+ 0.11-5;

U = -0A5-R-0.2 9 G + 0.44 - Я; (20)

У = 0.62-Д-0.52-С-0.1-Д

де R, G, B - кольоровi сигнали зображення (червоний, зелений i синш вщповщно).

6.2. Розробка алгоритму кодування зображень методом кубiчних сплайн-функцiй

Першим етапом виконання алгоритму кодування е розрахунок коефщенлв кубiчноï сплайн-функцп. Для цього беруться двi точки з област даних i для них будуеться полшом.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

На другому еташ наступш двi точки згладжуються вже побудованим полшомом, що повторюеться до тих тр, поки рiзниця мiж значенням полiному в данiй точш та ïï початковим значенням не вiдрiзнятиметься на задану величину А. Якщо в якшсь точцi n значення рiзницi (P(xn)-f(xn)) перевищуе значення А, то для цiеï точки, та наступноï сусiдньоï з нею будуються новий полiном. Значення першо!' точки та (n-1)1 точки заносяться в допомiжний файл. Побудова полшому проводиться спочатку по строкам, а потм по стовбцям.

Заключним етапом кодування зображення методом сплайново!' штерполяцп е квантування, яке виконуеться по рiвномiрнiй шкалт

6.3. Розробка алгоритму декодування зображень

Вхщним потоком даних для алгоритму декодування будуть значення точок, занесет до файлу, та значення коефщеплв кубiчноï сплайн-функци на вщповщних вiдрiзках. Таким чином, алгоритм декодування спрощуеться, оскiльки немае необхщност розраховувати коефiцiенти сплайну.

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

Другий i заключний етап роботи алгоритму декодування - об'еднання вщновленого зображення з квантованими вщлшами та нормалiзацiя вихiдного потоку (перевiрка на переповнення).

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

зображення, який визначаеться як pÏ3Hnu^ м1ж значенням штенсивносп точки в вихдному файлi га декодованому.

Для порiвняння стандарт JPEG обраний не випадково. Це один i3 найбшьш розповсюджених сгандаргiв стиснення графiчних зображень. Тому цей стандарт е аналогом, з яким можемо порiвнюваги огриманi результата

При кодуванш за стандартом JPEG застосовувалася програма ACDSee 32. Отримаш результати по шести рiзним файлам зведемо в таблицю (табл. 1).

Таблиця 1

Зведена таблиця результа^в експериментальних дослiджень_

1м'я фала Розм1р файлу, байт

BMP JPEG ICP

128018.bmp 1 087 074 115 140 57 794

Cat.bmp 958 878 75 759 68 470

Cindy04.bmp 387 654 42 764 35 017

Girl.bmp 192 054 15 408 14 387

Lake.bmp 921 654 284 755 101 996

Bull.bmp 663 542 ^ 101 281 60 511

За часом роботи конвертер у формат JPEG працював у 2-2,5 рази швидше шж дана розробка. Однак, у наявност перевага в коефiцiентi стиснення. Причому, на зображеннях, як не мають велико!' кiлькостi контурiв, кодувальник ICP кодував зображення в 1,8-2,1 рази ефектившше, нiж JPEG.

7. SWOT-аналiз результатiв дослiджень

Strengths. Розроблений метод стиснення зображень дозволяе не тшьки скоротити час на обробку файлiв растрових зображень, але й отримати кращi спiввiдношення степенi стиснення та якост вiдновленого зображення. Крiм того розробка не потребуе особливих економiчних затрат, достатньо персонального комп'ютера. Важливою особливiстю розробленого алгоритму е можливютъ користувача самому обирати, якою буде яюсть вщновленого зображення.

Weaknesses. Використання запропонованого методу стиснення буде найбшьш ефективним для зображень, в яких штенсивност сусiднiх точок вiдрiзняються не дуже сильно, або послщовност точок однаково! iнтенсивностi досить великi. В шшому ж випадку коефiцiент стиснення буде не великим. Також такий метод не можна застосувати для 30-зображень.

Opportunities. В подальшому розвиток запропонованого методу можливий для дослiджень стиснення 30-зображень та вiдео файлiв.

Threats. Для застосування запропонованого методу для 30-зображень повинна використовуватись апроксимащя в просторг

8. Висновки

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

стиснення, але при цьому спостертаеться втрата якост вiдновленого зображення. Комбiноване використання методiв не тшьки зберiгае високу стетнь стиснення, але значно покращуе i яюсть вiдновленого зображення. Запропонований шдхщ стиснення зображень куб!чними сплайн-функщями не тшьки не потребуе використання додаткових тдход1в для покращення алгоритму, але й досить простий з математично1' точки зору, та з точки зору програмно1' реалiзацiï.

Розробка математично1' та алгоритмiчноï моделi розв'язку поставлено!' задачi стиснення зображень на основ! методу куб!чних сплайн-функцiй дала в результат не складну, з точки зору обчислень, методику. Такий тдхщ не тшьки покращить яюсть зображення тсля стиснення, але й не займатиме багато часу на обробку. Важливою перевагою отриманого алгоритму е те, що користувач сам може задавати точнють вщновленого зображення, залежно вщ подальшого його використання.

2. Анал!з результатв роботи показав, що вщношення об'ем!в початкового та стисненого файл!в для запропоновано1' методики складае 0,25-0,5, в той час коли юнуюч1 методи показують результат 0,5-0,7.

Лггература

1. Lezhnev V. G. Matematicheskie algoritmy szhatiya izobrazheniy. Krasnodar: Kuban. gos. un-t, 2009. 55 p.

2. Obzor algoritmov szhatiya s poteryami. URL: http://mf grsu.by/UchProc/livak/po/comprsite/theory fractal.html (Last accessed: 02.12.2017).

3. Metody szhatiya dannykh: Szhatie izobrazheniy. URL: http://www.compression.ru/book/part2/part2 3.htm (Last accessed: 04.12.2017).

4. Jiao L. C., Tan S., Liu F. Ridgelet theory: from ridgelet transform to curvelet // Chinese Journal of Engineering Mathematics. 2005. Vol. 22, No. 5. P. 761-773.

5. Chiang T.-H., Dung L.-R. A VLSI Progressive Coding for Wavelet-based Image Compression // IEEE Transactions on Consumer Electronics. 2007. Vol. 53, No. 2. P. 569-577. doi: http://doi.org/10.1109/tce.2007.381731

6. Velisavljevic V., Beferull-Lozano B., Vetterli M. Space-Frequency Quantization for Image Compression With Directionlets // IEEE Transactions on Image Processing. 2007. Vol. 16, No. 7. P. 1761-1773. doi: http://doi.org/10.1109/tip.2007.899183

7. Iano Y., da Silva F. S., Cruz A. L. M. A fast and efficient hybrid fractal-wavelet image coder // IEEE Transactions on Image Processing. 2006. Vol. 15, No. 1. P. 98-105. doi: http://doi.org/10.1109/tip.2005.860317

8. Utsugi A. Independent components of natural images under variable compression rate // Neurocomputing. 2002. Vol. 49, No. 1-4. P. 175-185. doi: http://doi.org/10.1016/s0925-2312(02)00530-1

9. Remya S., Dilshad Rasheed V. A. Resolution Progressive Compression of Encrypted Images // International Journal of Signal Processing Systems. 2013. Vol. 1, No. 1. P. 7-10. doi: http://doi.org/10.12720/ijsps.1.1.7-10

10. A Hybrid Compression Method for Integral Images Using Discrete Wavelet Transform and Discrete Cosine Transform / Elharar E. et al. // Journal of Display Technology. 2007. Vol. 3, No. 3. P. 321-325. doi: http://doi.org/10.1109/idt.2007.900915

i Надоели баннеры? Вы всегда можете отключить рекламу.