СПОСОБ СЖАТИЯ ГРАФИЧЕСКИХ ФАЙЛОВ
METHOD OF COMPRESSING GRAPHICS FILES

Изобретение относится к обработке, сжатию и передаче информации, в частности к способу сжатия графических файлов, и может быть использовано в системах передачи и приема сжатых графических файлов.
Из уровня техники известен способ (US 7020837, 28.03.2006) для эффективного сжатия графического содержания в сложных файлах PDF, содержащих комбинированные сложные графические страницы, каждая из которых составлена из базовой страницы и нуля или более наложений, а также страниц PDF. При этом страницы и графические элементы каждой страницы сохранены в статических файлах PDF.
Известен способ (CN 1595452, 16.03.2005) сжатия без потерь для графического файла, в котором сжимают графический файл согласно заданным параметрам длины регистра сжатия. Выбирают оптимальный параметр длины регистра сжатия. После этого сжимают графический файл согласно выбранному оптимальному параметру длины. Затем главная информация файла (графическая информация), информация сжатия и так далее вместе со сжатыми данными записываются в файле, тем самым формируя файл сжатия.
Недостатками известных способов является то, что после передачи сжатых файлов и их декомпрессии графическое изображение на выходе теряет четкость, при том что способы-аналоги обеспечивают относительно низкую степень сжатия, что не позволяет сжатые ими файлы передавать с большой скоростью по каналам передачи данных.
Наиболее близким по технической сущности к заявленному является контурный способ сжатия графических файлов (патент РФ №2339998, 06.03.2007 г.). В известном способе-прототипе кадр графического изображения уменьшают при помощи специальной функции (ресайза), по меньшей мере, в 4 раза, сжимают и сохраняют его в сжатом файле, который декомпрессируют и увеличивают, по меньшей мере, в 4 раза. Затем исходный кадр графического изображения накладывают на декомпрессионный увеличенный кадр, производят поиск разницы пиксельных значений между исходным кадром графического изображения и декомпрессионным увеличенным кадром из заданного значения контраста по признаку контрастных элементов при помощи арифметического вычитания друг из друга. Затем, полученный кадр со значениями контура контрастных элементов сжимают без потерь и сохраняют в сжатом файле.
Недостаток способа-прототипа состоит в том, что для изображений с достаточно низким показателем контрастности полученный кадр со значениями контура контрастных элементов будет содержать относительно малое число нулевых коэффициентов. В результате для него обеспечивается довольно низкая степень сжатия, что не позволяет сжатые файлы передавать с большой скоростью по каналам передачи данных. Кроме того, известный способ-прототип не обеспечивает максимально возможную степень сжатия кадра графического изображения исходя из заданного качества восстановленного и увеличенного кадра графического изображения.
Техническим результатом заявляемого способа является повышение степени сжатия графических файлов и скорости их передачи по каналам данных для заданной величины пикового отношения сигнал/шум.
Это достигается тем, что способ сжатия графических файлов, включающий операции изменения геометрических размеров исходных кадров графического изображения с последующей декомпрессией кадров графического изображения и качественной оценки параметров, отличается тем, что сначала задают число возможных градаций уменьшения геометрических размеров исходного кадра, затем уменьшают его геометрические размеры на величину первой градации, сжимают, декомпрессируют и увеличивают до исходного размера, после чего определяют величину пикового отношения сигнал/шум, характеризующую качество восстановленного кадра по сравнению с исходным, и сравнивают ее с предварительно заданным значением, при этом если полученное значение превысит заданное, то все операции повторяют для второй и последующих градаций до тех пор, пока величина пикового отношения сигнал/шум не станет меньше или равна заданному значению отношения сигнал/шум.
Заявленный способ поясняется чертежами, на которых показаны:
фиг.1 - принцип представления кадра графического изображения на основе 5 возможных градаций уменьшения его исходных геометрических размеров. Здесь L - горизонтальный размер кадра, выраженный в пикселях; H - вертикальный размер кадра, выраженный в пикселях;
фиг.2 - исходный кадр графического изображения и декомпрессированный кадр после сжатия его алгоритмом JPEG;
фиг.3 - увеличенный до исходного размера декомпрессированный кадр после сжатия алгоритмом JPEG его копии, геометрические размеры которой были уменьшены в 2 раза по отношению к исходному размеру, и увеличенный до исходного размера декомпрессированный кадр, после сжатия алгоритмом JPEG его копии, геометрические размеры которой были уменьшены в 3 раза по отношению к исходному размеру;
фиг.4 - увеличенный до исходного размера декомпрессированный кадр после сжатия алгоритмом JPEG его копии, геометрические размеры которой были уменьшены в 4 раза по отношению к исходному размеру, и увеличенный до исходного размера декомпрессированный кадр после сжатия алгоритмом JPEG его копии, геометрические размеры которой были уменьшены в 5 раза по отношению к исходному размеру.
Способ сжатия графических файлов JPEG (файл JPEG - сжатый файл с расширением *.jpg (англ. Joint Photographic Experts Group, по названию организации-разработчика)) реализуется следующим образом.
В конкретном примере реализации способа число градаций задано равным пяти.
1. Определяют число возможных градаций уменьшения геометрических размеров исходного кадра.
Градация уменьшения геометрических размеров исходного кадра d представляет шаг деления L - горизонтального размера кадра графического изображения в пикселях и H - вертикального размера кадра графического изображения согласно формулам:
d
d
где L - горизонтальный размер кадра графического изображения в пикселях для d-й градации (на шаге градации d); H - вертикальный размер кадра графического изображения в пикселях для d-й градации (на шаге градации d).
1
1
2
2
3
3
Согласно формуле (1) для первой градации d=1 (на 1-м шаге градации) геометрические размеры кадра графического изображения не изменяются: L=L и H=H. Для второй градации d=2-L=L/2 и H=H/2. Для третьей градации d=3-L=L/3 и H=H/3 и т.д.
Чем ниже пропускная способность и чем меньше свободного места на носителе информации, тем большим выбирают значение градаций.
В качестве примера на фиг.1 показаны геометрические размеры тестового кадра графического изображения для числа градаций d=5.
Реализовать процедуру уменьшения геометрических размеров кадра графического изображений для второй и последующих градаций можно при помощи ресайза, описанного в патенте РФ №2339998, 06.03,2007 г., или посредством программы «Microsoft office picture manager», которая входит в состав пакета программ «Средства Microsoft Office».
2. Задают качество восстановленного и увеличенного кадра графического изображения величиной пикового отношения сигнал/шум (PSNR) к исходному кадру. С учетом того, что исходное трехцветное изображение имеет 3 компоненты - R, G, B [см. Телевидение (общий курс), Под ред. П.В.Шмакова, М.: «Связь», 1970, с.41], то итоговое выражение для PSNR будет иметь вид:
k
где L - горизонтальный размер кадра графического изображения в пикселях; H - вертикальный размер кадра графического изображения; (Y(l, h)- l-е, h-е значение пикселя k-й компоненты исходного кадра графического изображения;
- l-е, h-е значение пикселя k-й компоненты декомпрессированного после сжатия и увеличенного до исходного геометрического размера кадра; B - число битов, отводимых на точку (в зависимости от количества представляемых цветов на каждую точку отводится от 1 до 48 битов); K=3 - число компонентов R, G, B.
Чем меньше различий в числовых значениях пикселей между исходным кадром графического изображения и декомпрессированным после сжатия и увеличенным до исходного геометрического размера кадра, тем выше значение показателя PSNR. Следовательно, тем меньше претерпевает изменений файл после процедур уменьшения геометрических размеров и сжатия с помощью алгоритма JPEG.
В исходном состоянии кадр графического изображения хранится в графическом файле BMP (от англ. Bitmap Picture - формат хранения растровых изображений, разработанный компанией Microsoft). После сжатия - в графическом файле JPEG.
доп
доп
Выбор заданного качества восстановленного и увеличенного кадра графического изображения PSNR определяется техническими возможностями системы передачи информации или свободным объемом носителя информации. Чем ниже пропускная способность и чем меньше свободного места на носителе информации, тем ниже выбирают исходное значение показателя PSNR.
1
1
3. Уменьшают геометрические размеры исходного кадра на значение первой градации L=L и H=H, после чего его сжимают.
Для градации d=1 геометрические размеры графического кадра не меняются. При сжатии кадра графического изображения используют алгоритм сжатия с потерями JPEG. В результате получают графический файл с расширением *.jpg.
Алгоритмы сжатия на базе алгоритма сжатия с потерями JPEG известны и описаны, например, в (Б.Скляр. Цифровая связь. Теоретические основы и практическое применение. Изд. 2-е, испр.: пер. с англ. - М.: Издательский дом «Вильямс», 2003. С.893-896).
4. Декомпрессируют сжатый графический файл с расширением *.jpg и увеличивают геометрические размеры графического файла до исходного размера. Для градации d=1 геометрические размеры декомпрессированного графического кадра не увеличивают.
Декомпрессировать сжатый графический файл с расширением *.jpg в графический файл с расширением *.bmp можно посредством программы Paint, которая входит в пакет стандартных программ операционной системы Windows любой версии.
Увеличить декомпрессированный файл можно при помощи ресайза, описанного в патенте РФ №2339998, 06.03.2007 г., или посредством программы «Microsoft office picture manager», которая входит в состав пакета программ «Средства Microsoft Office».
В качестве примера на фиг.2 представлен исходный кадр графического изображения и декомпрессированный кадр после сжатия его алгоритмом JPEG для градации d=1.
доп
5. Оценивают величину PSNR для градации d=1 и сравнивают ее с предварительно заданной величиной PSNR.
d
Для оценки пикового отношения сигнал/шум PSNR для декомпрессированного и увеличенного до исходного размера кадра графического изображения (для градации d=1 геометрические размеры кадра после декомпрессии не увеличивают) применяют формулу (2).
1
доп
Сравнивают величину PSNR для d=1 с величиной PSNR.
1
доп
1
доп
Если PSNR>PSNR, то этапы 3, 4 и 5 повторяют до тех пор, пока не будет выполнено условие PSNR≤PSNR.
Каждая последующая градация уменьшения геометрического размера исходного кадра ведет к ухудшению качества по показателю PSNR для декомпрессированного и увеличенного до исходного размера кадра.
В качестве примера на фиг.3 и 4 показаны декомпрессированные и увеличенные до исходного размера кадры для градаций d=2, d=3, d=4, d=5.
1
доп
1
доп
В качестве итогового сжатого графического файла с расширением *.jpg выбирают файл, полученный на последней градации, если выполняется условие PSNR=PSNR. В противном случае, если выполняется условие PSNR<PSNR, в качестве итогового сжатого графического файла с расширением *.jpg выбирают файл, полученный на предыдущей градации уменьшения геометрического размера исходного кадра.
1
2
3
4
5
В качестве примера, для тестового изображения на фиг.1 представлены оцененные величины по формуле (2) для 1, 2, 3, 4 и 5 градаций: PSNR=36,9384 дБ, PSNR=31,9429 дБ, PSNR=29,4774 дБ, PSNR=27,8353 дБ, PSNR=26,7854 дБ.
Объем исходного файла BMP кадра графического изображения составлял 921654 байт. Объемы сжатых файлов JPEG для 1, 2, 3, 4 и 5 градации соответственно 43943 байта, 13071 байт, 7026 байт, 4589 байт, 3331 байт.
Таким образом, благодаря новой совокупности существенных признаков, заключающихся в том, что определяют число возможных градаций уменьшения геометрических размеров исходного кадра, среди которых находят такую, при которой PSNR сжатого, а потом декомпрессированного и увеличенного до исходного размера кадра графического изображения к исходному кадру не превысит предварительно заданного PSNR, обеспечивается максимально возможная степень сжатия.