УДК 004.932
С.С. Кулбаев, А.А. Немеров, А.С. Крупский
Оценка эффективности сервиса сжатия цифровых изображений на высокопроизводительной вычислительной системе
Проведен краткий обзор проблемы сжатия изображений. Описан параллельный фрактальный алгоритм. Спроектирован и реализован в сервис-ориентированной системе доступа к высокопроизводительной вычислительной системе сервис сжатия цифровых изображений на основе параллельного фрактального алгоритма. Представлены и проанализированы результаты эффективности работы сервиса с учетом задержек сети.
Ключевые слова: параллельный фрактальный алгоритм, сервис-ориентированная система, WiMAX.
Цифровые изображения и системы передачи информации стали неотъемлемой частью современного мира. Одной из важнейших задач при работе с цифровыми изображениями является их сжатие. Сжатие изображений важно для оптимального хранения и передачи. Алгоритмы сжатия делятся на два больших класса: без потерь и с потерями. Алгоритмы с потерями обладают существенно большим коэффициентом сжатия, но восстановленное (декодированное) изображение не полностью соответствует исходному. На практике используемой мерой качества изображения является критерий соотношения сигнал/шум (PSNR). Эта мера аналогична среднеквадратическому отклонению, но пользоваться ею удобнее из-за логарифмического масштаба шкалы [1].
С увеличением мощности доступных пользователю вычислительных систем, а также с ростом пропускной способности и качества обслуживания вычислительных сетей возникают новые, всё более трудоёмкие задачи. Пользователи еще нуждаются и в ближайшее время будут нуждаться в решении задач, которые не могут быть выполнены за приемлемое время или с приемлемой точно -стью на персональном компьютере или мобильном устройстве.
В случае если задачу нельзя решить за приемлемое время на определенной вычислительной системе из-за недостатка ресурсов, возможным выходом является передача задачи целиком или по частям для решения на другой, более мощной вычислительной системе. В этом качестве целесообразно использовать высокопроизводительную вычислительную систему (ВПВС). В настоящее время наиболее распространены кластерные системы из-за того, что они относительно недороги (в сравнении с суперкомпьютерами) и легко масштабируемы.
В данной статье рассматривается работа сервиса сжатия изображений, реализованного в системе БУРАН [2]. Сервис для сжатия использует параллельный фрактальный алгоритм [3]. Данная система развернута на вычислительном кластере кафедры АСУ ТУСУРа [4].
Параллельный фрактальный алгоритм. Методы кодирования строятся по принципу устранения избыточности информации. Для уменьшения объёмов хранимых и передаваемых данных используются различные методы их сжатия. При этом степень сжатия и корректность восстановления изображения зависят от применяемого алгоритма, а сложные, детально проработанные алгоритмы требуют наличия значительных вычислительных ресурсов.
В качестве экспериментального алгоритма были выбраны базовый алгоритм фрактального сжатия изображений и его параллельная версия, описанная в работе [3]. Для поиска доменных блоков применяется метод полного перебора без предварительной классификации изображений.
Базовый алгоритм фрактального кодирования изображения описывается следующим образом:
1. Изображение M х N пикселей разбивается на множество R-блоков (ранговые блоки (г)) Rl,R2,...,Rr , где Rf, i = 1,...,г есть квадратный BхB пиксельный фрагмент изображения.
2. Изображение покрывается последовательностью D-блоков (доменные блоки) Di,D2,...,Dd , где Df - представляющие квадратные (возможно пересекающиеся) 2B х 2B пиксельные фрагменты. Домены могут быть разного размера, и их количество может исчисляться сотнями и тысячами.
3. Для каждого рангового блока находят домен и соответствующее преобразование, которое наилучшим образом покрывает ранговый блок. Обычно это аффинное преобразование.
4. Если достаточно точного соответствия не получилось, то разбиваем ранговые блоки на меньшие блоки. Данный процесс продолжается до тех пор, пока не получим приемлемого соответствия при заданной допустимой погрешности или размер рангового блока достигнет заданного минимального значения.
Как правило, в работах, посвященных исследованию алгоритмов фрактального сжатия, накладывается такое ограничение, что алгоритм должен обеспечивать приемлемое время сжатия на вычислительной машине пользователя [5, 6]. Поскольку полный перебор при поиске соответствия доменных и ранговых блоков приводит к большому количеству операций, то усилия разработчиков, в основном, направлены на сокращение количества сравнений блоков за счет предварительной классификации. Сокращение числа рассматриваемых блоков неизбежно приводит к большим потерям качества по сравнению с полным перебором. В работе [3] ограничение на производительность вычислительной системы было ослаблено исходя из того, что высокопроизводительные системы разных классов становятся все более доступными для конечных пользователей.
Организация доступа к высокопроизводительной вычислительной системе в сервис-ориентированной системе. Алгоритм параллельного фрактального сжатия был реализован в сервис-ориентированной системе БУРАН в виде прикладного сервиса. На рис. 1 показано взаимодействие пользователей с сервис-ориентированной системой. В качестве пользователя может выступать кто угодно, главное - сформировать правильный запрос системе. Сама сервис-ориентированная система развернута на ВПВС, которая состоит из нескольких вычислительных узлов.
В системе можно выделить две основные части: это подсистема исполнения и подсистема балансировки нагрузки. Для того чтобы реализовать параллельный фрактальный алгоритм, потребовалось добавить компоненты в подсистему исполнения. Сама подсистема исполнения имеет трехслойную архитектуру. Она разделена на слой сервисов, слой агентов и слой решателей. Понадобилось добавить один сервис, один агент и три решателя.
В качестве сервиса выступает SOAP веб-сервис, который принимает на вход несжатое изображение, а по завершении работы возвращает сжатое изображение. После принятия запроса сервис регистрирует задачу в реестре задач и переходит в режим ожидания ее выполнения.
Агент реализует параллельный алгоритм фрактального сжатия, но не занимается вычислениями непосредственно, а вызывает соответствующие решатели. Таким образом, агент инкапсулирует алгоритм и не зависит от реализации. Параллелизм присутствует уже на уровне агента, он разбивает алгоритм на потоки, которые могут решаться на разных вычислителях.
Решатели занимаются непосредственно вычислениями. Реализовано три решателя: 1) поиск ранговых блоков; 2) поиск доменных блоков; 3) нахождение доменного блока по ранговому блоку.
Решатели зависят от архитектуры вычислительной системы и используют ее особенности для максимально быстрого решения задач. Данные решатели реализованы с использованием MPI.
В следующих разделах показаны результаты вычислительного эксперимента по сжатию изображений, проведенного в данной системе.
Оценка эффективности сети в зависимости от поведения клиента. При помощи сетевого симулятора, была проведена оценка эффективности при передаче данных по сети WiMAX [7] в зависимости от частоты запросов клиента к сетевой подсистеме и от величины формируемых им порций данных. Критерием эффективности был выбран объём переданных данных. В результате наибольший объём передачи был достигнут при частоте отправки в 0,005 с. Следует отметить, что процесс симуляции начинается со второй секунды.
Передача данных в сети 3x3, период 0,005с.
Передача данных в сети 4x4, период 0,005с.
Пакет 10240 -
Пакет 20480 - -
Пакет 30720
Пакет 40960 Пакет 51200
- Пакет 61440
/-"
- s
1 Пакет 10240 -
Пакет 20430 - -
Пакет 30720
Пакет 40960 —-,'-..•'* Пакет 51200 '
- Пакет 61440' ..■•' У у'
- /*.'■
-
о 2 4 б s
Секунды
Передача данных в сети 5x5, период 0,005с.
Э 2 4 6 8
Секунды
Передача данных в сети 6x6, период 0,005с.
Пакет 10240 Пакет 20480 Пакет 30720 Пакет 40960 Пакет 51200 Пакет 61440.'
Пакет 10240 -Пакет 20480 -Пакет 30720 ■■■ Пакет 40960 -Пакет 51200 -Пакет 61440 /
5е+06
468 10 0246
Секунды Секунды
Рис. 2. Пропускная способность сети при изменении размера
Результаты приведены для квадратной сети передачи со стороной квадрата от трёх до шести. На основе экспериментальных данных, приведённых на рис. 2 можно сделать вывод, что наибольшая эффективность использования сети достигается при передаче клиентом информации порциями по 40960 байт. При этом эффективность падает с увеличением размера сети. Эффективность сети шесть на шесть по сравнению с сетью 3x3 меньше на 2,7932% по объёму переданной информации за 8 с. Данное различие может быть связано с разностью задержки при инициализации сети.
Оценка фактического качества обслуживания системы. Эксперимент основан на сжатии клиентского изображения в формате bmp сервисом. Предполагается, что клиент и сервер расположены на диагонали квадратной сети. Для тестов использовались цветные (RGB) изображения из базы данных группы фрактального кодирования и анализа (fractal coding and analysis group) [8]. После получения изображения и сжатия фрактальным алгоритмом происходит отправка сжатого изображения клиенту. Для определения пропускной способности беспроводной сети (рис. 2) использовался сетевой симулятор. Симуляция проводилась на квадратной матрице беспроводных узлов (WiMAX) со стороной от трёх до шести. В зависимости от размера сети за 8 с симуляции передаётся различный объём данных. Время, необходимое для передачи исходного bmp изображения на сер-
вер и передачи сжатого фрактальным алгоритмом изображения клиенту определено на основе полученных данных нагрузочного тестирования (см. рис. 2) и приведено в табл. 1.
Таблица 1
Время передачи изображений по сети_
BMP файл от клиента к серверу Фрактально сжатый файл от сервера к клиенту
Изображение Размерность сети Изображение Размерность сети
3x3 4x4 5x5 6x6 3x3 4x4 5x5 6x6
Время, с Время, с
clegg 1,409871 1,983073 2,556275 3,129477 clegg 0,221323 0,321513 0,421693 0,521873
fry mire 1,659860 2,262279 2,864697 3,467175 fry mire 0,273787 0,373966 0,474147 0,574332
lena3 2,157969 3,189584 4,221127 5,252638 lena3 0,210172 0,310362 0,410542 0,510722
monarch 2,37786 3,495279 4,612613 5,729948 monarch 0,215867 0,316057 0,416237 0,516417
peppers3 2,211842 3,270407 4,015168 5,387391 peppers3 0,208798 0,308985 0,409168 0,509348
sail 1,560100 2,268274 2,976376 3,684478 sail 0,225014 0,325205 0,425385 0,525564
serrano 1,608401 2,321126 3,03378 3,746433 serrano 0,216384 0,316574 0,416754 0,516934
Время работы фрактального алгоритма и общее время обработки системой запроса с учётом времени передачи приведено в табл. 2.
Таблица 2
Время обработки запроса системой
Время работы фрактального сжатия Время обработки системой
Изображение Время сжатия на 64 ядрах, с Время декодера, с Размер файла, кб SSIM PSNR, дБ Изображение Размерность сети
3x3 4x4 5x5 6x6
Время, с
clegg 155,529 0,24 167,8 0,998 31,326 clegg 157,160195 157,8336 158,507 159,1804
frymire 443,582 0,25 584,1 0,989 30,69 frymire 445,515648 446,2182 446,9208 447,6235
lena3 28,484 0,051 79,3 0,987 38,243 lena3 30,8521413 31,98395 33,11567 34,24736
monarch 66,466 0,081 124,5 0,998 40,813 monarch 69,0596996 70,27734 71,49485 72,71236
peppers3 24,361 0,054 68,4 0,989 39,753 peppers3 26,7816401 27,94039 28,78534 30,25774
sail 79,114 0,104 197,1 0,994 38,62 sail 80,8991149 81,70748 82,51576 83,32404
serrano 64,239 0,103 128,6 0,989 34,288 serrano 66,0637849 66,8767 67,68953 68,50237
Выводы. Доля времени, требующегося на пересылку, по сравнению со временем обработки запроса мала. Сервис может работать либо как сервис сжатия изображений со значительными затратами времени (порядка сотен секунд), либо как хранилище сжатых графических файлов. В этом случае выигрыш во времени передачи по WiMAX составляет порядка десятков миллисекунд на одно изображение, что может быть существенно при большой интенсивности запросов. В целом среднее время пересылки изображения сжатого набора тех же JPEG составляет 0,3020058 с, BMP -3,0988292 с, а изображения, сжатого фрактальным алгоритмом, - 0,2988493 с на данном наборе тестовых изображений. В среднем применение алгоритма фрактального сжатия при использовании сервиса в качестве сервера хранения и сжатия изображений, обеспечивает уменьшение использования сети на 2,1% для пересылки уже сжатого фрактальным алгоритмом изображения по сравнению с JPEG.
Данные разработки использованы в НИР, выполняемой по ФЦП «Научные и научно-педагогические кадры инновационной России» (соглашение 14.132.21.1798; шифр заявки 2012-1.3.2-12000-2011-005).
Литература
1. Тропченко А.Ю. Методы сжатия изображений, аудиосигналов и видео: учеб. пособие / А.Ю. Тропченко, А. А. Тропченко. - СПб.: СПбГУ ИТМО, 2009. - 108 с.
2. Свидетельство о государственной регистрации программы для ЭВМ №2013611351. Буран (Snow Storm) 2011 / И.В. Бойченко, Е.В. Бортников, А.А. Немеров и др. - Заявка №2012618426. Дата поступления 27 ноября 2012 г. Зарегистрировано в Реестре программ для ЭВМ 9 января 2013 г.
3. Эксперимент по фрактальному сжатию RGB-изображений на вычислительном кластере / И.В. Бойченко, С.С. Кулбаев, А.А. Немеров, В.В. Голенков. // Изв. Том. политехн. ун-та. - Томск: Изд-во ТПУ, 2012. - Т. 322, №5. - С. 87-92.
4. Бойченко И.В. Вычислительный кластер ТУСУРа: старт // Информационные системы: тр. постоянно действующего науч. техн. семинара / ТУСУР. Отд. проблем информатизации ТНЦ СО РАН / под ред. А.М. Корикова. - Томск: ТУСУР, 2008. - Вып. 5. - С. 3-12.
5. Денисюк А.А. Фрактальное сжатие изображений / А.А. Денисюк, А.А. Полупанов // Перспективные информационные технологии и интеллектуальные системы. - 2006. - № 4. - С. 24-29.
6. Илюшин С.В. Ускорение фрактального сжатия изображений путем классификации блоков по полярному углу их центров МАСС // T-Comm. Телекоммуникации и транспорт. - 2011. - № 4. -С. 43-47.
7. IEEE Standard for Local and metropolitan area networks. Part 16: Air Interface for Broadband Wireless Access Systems // IEEE Std 802.16-2009 (Revision of IEEE Std 802.16-2004). pp.C1-2004, May 29 2009. doi: 10.1109/IEEESTD.2009.5062485) [Электронный ресурс]. - Режим доступа: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=5062485&isnumber=5062484, для зарегистрированных пользователей (дата обращения: 05.11.2013).
8. Test image repository // Fractal coding and analisys group. 2011 [Электронный ресурс]. - Режим доступа: http://links.uwaterloo.ca/Repository.html, свободный (дата обращения: 10.11.2013).
Кулбаев Сабырбек Саадатбекович
Мл. науч. сотрудник каф. автоматизированных систем управления (АСУ) ТУСУРа
Тел.: 8-906-955-13-01
Эл. почта: [email protected]
Немеров Александр Александрович
Мл. науч. сотрудник каф. АСУ ТУСУРа
Тел.: 8-923-401-27-87
Эл. почта: [email protected]
Крупский Александр Сергеевич
Аспирант каф. АСУ ТУСУРа
Тел.: 8-923-420-93-52
Эл. почта: [email protected]
Kulbaev S.S., Nemerov A.A., Krupsky A.S.
Efficiency evaluation of the service of digital image compressing on high-performance computing system
In the article we give a brief overview of the problem of image compression and the description of a parallel fractal algorithm. We designed and implemented a service-oriented access system to high-performance computing system service of digital image compression, based on a parallel fractal algorithm. We presented and analyzed the efficiency of the service, taking into account network delays. Keywords: parallel fractal algorithm, service-oriented system, WiMAX.