RU2500067C2 - Image compression method - Google Patents
Image compression method Download PDFInfo
- Publication number
- RU2500067C2 RU2500067C2 RU2012107969/08A RU2012107969A RU2500067C2 RU 2500067 C2 RU2500067 C2 RU 2500067C2 RU 2012107969/08 A RU2012107969/08 A RU 2012107969/08A RU 2012107969 A RU2012107969 A RU 2012107969A RU 2500067 C2 RU2500067 C2 RU 2500067C2
- Authority
- RU
- Russia
- Prior art keywords
- image
- boundary conditions
- pattern
- array
- compression
- Prior art date
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Description
Изобретение относится к области обработки цифровых сигналов и может быть использовано для сжатия (компрессии) статических и динамических изображений, то есть преобразования данных с целью уменьшения их объема, как без потерь, так и с потерями части информации.The invention relates to the field of digital signal processing and can be used for compression (compression) of static and dynamic images, that is, data conversion in order to reduce its volume, both without loss and with the loss of part of the information.
В современном мире наблюдается лавинообразный рост медиа-контента, поэтому сжатие данных является актуальным направлением научных исследований.In the modern world, an avalanche-like growth of media content is observed, therefore data compression is an actual area of scientific research.
Известны способы сжатия данных без потерь, основанные на использовании статистической информации (повторении, автокорреляции), и сжатие с потерями, основанное на удалении избыточной (не существенной или не критической) информации (Ватолин Д., Ратушняк А., Смирнов М., Юкин В. Методы сжатия данных. М.: Диалог - МИФИ, 2003; Сэломон Д. Сжатие данных, изображений и звука. М.: ТЕХНОСФЕРА, 2004). Применяют данные способы как по отдельности, так и в различных сочетаниях. Сжатие без потерь применяют к двухуровневым (однобитным), многоуровневым и полноцветным изображениям. Наиболее распространены реализации алгоритмов, ориентированных на сжатие растровых изображений без потерь, GIF (S.Blackstock. LZW and GIF explained. http://www.martinreddy.net/gfx/2d/GIF-comp.txt) (статические и динамические изображения) и PNG (PNG home page. http://www.libpng.org/pub/png/png.html). В основе данных способов лежат словарные кодирования на основе модификации преобразования Хаффмана и LZ77, LZ78 (LZW - Lempel, Ziv, Welch).Known methods of lossless data compression based on the use of statistical information (repetition, autocorrelation) and lossy compression based on the removal of redundant (not significant or non-critical) information (Watolin D., Ratushnyak A., Smirnov M., Yukin V Methods of data compression. M: Dialog - MEPhI, 2003; Salomon D. Compression of data, images and sound. M.: TECHNOSPHERE, 2004). These methods are applied both individually and in various combinations. Lossless compression is applied to two-level (single-bit), multi-level and full-color images. The most common implementations of lossless bitmap compression algorithms are GIF (S.Blackstock. LZW and GIF explained. Http://www.martinreddy.net/gfx/2d/GIF-comp.txt) (static and dynamic images) and PNG (PNG home page. http://www.libpng.org/pub/png/png.html). These methods are based on vocabulary encodings based on modifications of the Huffman transform and LZ77, LZ78 (LZW - Lempel, Ziv, Welch).
Известен фрактальный способ сжатия изображений, основанный на том, что изображение можно представить более компактно с помощью коэффициентов системы итерируемых функций (D.Saupe, R.Hamzaoui, H.Hartenstein. Fractal image compression - An introductory overview, in: Fractal Models for Image Synthesis, Compression, and Analysis, D.Saupe, J.Hart (eds.), ACM SIGGRAPH'96 Course Notes).A fractal image compression method is known, based on the fact that an image can be represented more compactly using coefficients of a system of iterable functions (D. Saupe, R. Hamzaoui, H. Hartenstein. Fractal image compression - An introductory overview, in: Fractal Models for Image Synthesis , Compression, and Analysis, D. Saupe, J. Hart (eds.), ACM SIGGRAPH'96 Course Notes).
Известны способы, в которых из изображений, применяя метод «brush fire» (лесной пожар), формируют скелет многоугольника толщиной 1-2 пикселя, являющийся диаграммой Вороного. К сложностям практической реализации таких методов относится: формирование корректного скелета в виде связного графа (Скиена С. Алгоритмы. Руководство по разработке. - 2-е изд. Пер. с англ. - СПб.: БХВ-Петербург, 2011).Known methods are those in which the images using the brush fire method (forest fire) form a polygon skeleton 1-2 pixels thick, which is a Voronoi diagram. The difficulties in the practical implementation of such methods include: the formation of the correct skeleton in the form of a connected graph (Skien S. Algorithms. Development Guide. - 2nd ed. Transl. From English. - SPb .: BHV-Petersburg, 2011).
Известен интерполяционный способ сжатия телевизионного сигнала (патент РФ №2131172, дата приоритета 10.12.1996, МПК H04N 5/335, опубликовано 27.05.1999 г.), в основе которого лежит искусственное исключение фрагментов сигналов строк и их восстановление с помощью интерполяции по фрагментам не исключенных частей строк, что позволит сократить избыточность телевизионного сигнала.A known interpolation method for compressing a television signal (RF patent No. 2111172, priority date 10/12/1996, IPC H04N 5/335, published 05/27/1999), which is based on the artificial exclusion of fragments of signal lines and their recovery using interpolation by fragments not excluded parts of lines, which will reduce the redundancy of the television signal.
Известен способ сжатия с потерями на базе дискретно-косинусного преобразования (ДКП), предназначенный для статических и динамических изображений, который является наиболее близким по совокупности существенных признаков к заявляемому способу и принят в качестве прототипа (Стивен Смит. Цифровая обработка сигналов. Практическое руководство для инженеров и научных работников. Пер. с англ. Линовича А.Ю., Витязева С.В., Гусинского И.С. - М.: Додека-XXI, 2011, стр.548). В этом способе распространенный формат JPEG использует для сжатия дискретно-косинусное преобразование (ДКП) с последующим модифицированным преобразованием Хаффмана. Основой JPEG-сжатия является получение пространственного спектра изображения с последующим исключением некоторой части спектральных компонентов, позволяющее впоследствии восстановить изображение в достаточном качестве. Полученный спектр изображения в силу того, что он может содержать значительное число повторяющихся отдельных элементов и цепочек, эффективно сжимают.There is a method of lossy compression based on discrete cosine transform (DCT), designed for static and dynamic images, which is the closest in combination of essential features to the claimed method and adopted as a prototype (Stephen Smith. Digital signal processing. A practical guide for engineers and scientific workers.Translated from English by Linovich A.Yu., Vityazev S.V., Gusinsky I.S. - M .: Dodeka-XXI, 2011, p. 548). In this method, the common JPEG format uses the discrete cosine transform (DCT) for compression, followed by a modified Huffman transform. The basis of JPEG compression is to obtain the spatial spectrum of the image, followed by the exclusion of some of the spectral components, which subsequently allows you to restore the image in sufficient quality. The resulting image spectrum, due to the fact that it can contain a significant number of repeating individual elements and chains, is effectively compressed.
При JPEG-сжатии пространственный спектр получают путем двумерного ДКП матрицы изображения U размером M×N в соответствии с выражением:In JPEG compression, the spatial spectrum is obtained by two-dimensional DCT of the image matrix U of size M × N in accordance with the expression:
где 0≤p≤M-1, 0≤q≤N-1;where 0≤p≤M-1, 0≤q≤N-1;
Значения Bpq называют ДКП матрицы U.The values of B pq are called the DCT of the matrix U.
Обратное ДКП реализуется согласно выражениям:Reverse DCT is implemented according to the expressions:
где 0≤m≤M-1, 0≤n≤N-1;where 0≤m≤M-1, 0≤n≤N-1;
В реализации алгоритма JPEG-сжатия исходное изображение после преобразования из цветового пространства RGB в YCrCb разделяется на квадратные блоки размером 8×8 или реже 16×16, для которых производится ДКП. Коэффициенты дискретных косинусных преобразований фильтруются с удалением некоторых (в зависимости от степени сжатия) значений, квантируются, а затем кодируются при помощи модифицированного преобразования Хаффмана. В результате этих преобразований получается массив данных, существенно меньший по размеру, чем исходное изображение, содержащий информацию, по которой можно восстановить исходное изображение с некоторой, в зависимости от степени сжатия, точностью. Восстановление изображения происходит в обратной последовательности: сначала сжатое изображение подвергается обратному модифицированному преобразованию Хаффмана, затем обратному ДКП. Недостатком JPEG-сжатия на основе ДКП является потеря целостности изображения, возникающая в результате специфических артефактов «блочности» (контрастное выделение областей 8×8 или 16×16) в восстановленном изображении. Артефакт «блочности» является следствием отсутствия «гладкой сшивки» областей, выделенных для ДКП. К следующему недостатку можно отнести потерю контрастности, что проявляется в «размытии» границ между различными объектами изображения и является следствием фильтрации (удаления при сжатии) высокочастотных составляющих. Артефакт «размытия» допустим в фотографических изображениях, но в некоторых видах изображения, например космических снимках, изображениях для печати, где необходимо сохранить контраст, «размытие» недопустимо. При сжатии без потерь в формате JPEG возможно сохранение контрастности границ объектов, при этом размер сжатого изображения остается достаточно большим, что тоже является недостатком. JPEG формат не обеспечивает эффективное сжатие изображений, содержащих большие пространства одного цвета или плавного градиента.In the implementation of the JPEG compression algorithm, the original image after conversion from the RGB color space to YCrCb is divided into square blocks of size 8 × 8 or less 16 × 16, for which DCT is performed. The coefficients of discrete cosine transforms are filtered to remove some (depending on the degree of compression) values, quantized, and then encoded using a modified Huffman transform. As a result of these transformations, an array of data is obtained that is significantly smaller than the original image containing information from which it is possible to restore the original image with some accuracy, depending on the degree of compression. Image restoration occurs in the reverse order: first, the compressed image undergoes the inverse modified Huffman transform, then the inverse DCT. The disadvantage of DCT-based JPEG compression is the loss of image integrity resulting from specific “blocking” artifacts (contrast highlighting of 8 × 8 or 16 × 16 regions) in the reconstructed image. The artifact of “blocking” is a consequence of the lack of “smooth cross-linking” of the areas allocated for DCT. The next drawback is the loss of contrast, which is manifested in the “blurring” of the boundaries between different image objects and is a consequence of the filtering (removal during compression) of high-frequency components. The artifact of “blurring” is acceptable in photographic images, but in some types of images, such as satellite images, images for printing, where it is necessary to maintain contrast, “blurring” is unacceptable. When lossless compression in JPEG format, it is possible to maintain the contrast of the boundaries of objects, while the size of the compressed image remains large enough, which is also a drawback. JPEG format does not provide effective compression of images containing large spaces of the same color or smooth gradient.
Заявляемое изобретение устраняет потерю целостности изображения, повышает эффективность сжатия изображений, содержащих большие участки одного тона или градиента (цвета, яркости), сохраняет контрастность границ между различными объектами изображения.The claimed invention eliminates the loss of integrity of the image, increases the compression efficiency of images containing large areas of the same tone or gradient (color, brightness), preserves the contrast of the borders between different image objects.
Указанная задача решается за счет того, что изображения (статические или динамические) рассматриваются как дискретные полевые структуры, полное численное описание которых (то есть значения во всех дискретных точках по координатам пространства и (или) времени) можно определить путем решения уравнений Лапласа или Пуассона, располагая исходными данными в качестве граничных (краевых) условий.This problem is solved due to the fact that images (static or dynamic) are considered as discrete field structures, a complete numerical description of which (that is, values at all discrete points by the coordinates of space and (or) time) can be determined by solving the Laplace or Poisson equations, having initial data as boundary (boundary) conditions.
Сущность изобретения заключается в том, что при сжатии изображения (статического или динамического) происходит отыскание массива данных, названного в рамках изобретения «паттерн», являющегося массивом граничных условий и позволяющего с заданной степенью точности, путем численного решения уравнений Лапласа или Пуассона, восстановить исходное изображение. Полученный паттерн содержит некоторое (в большинстве случаев достаточно значительное) число повторяющихся элементов и последовательностей, что позволяет эффективно сжимать паттерн стандартными методами, например на основе модификации преобразования Хаффмана, или LZ78, или арифметического кодирования. В случае применения для формирования паттерна и восстановления изображения уравнения Пуассона, подлежит определению функция правой части, правильный подбор которой может в значительной мере способствовать сжатию изображения.The essence of the invention lies in the fact that when compressing an image (static or dynamic), a data array is found that is called “pattern” in the framework of the invention, which is an array of boundary conditions and allows, with a given degree of accuracy, by numerically solving the Laplace or Poisson equations, to restore the original image . The resulting pattern contains a certain (in most cases quite significant) number of repeating elements and sequences, which allows you to effectively compress the pattern using standard methods, for example, based on a modification of the Huffman transform, or LZ78, or arithmetic coding. In the case of applying the Poisson equation for pattern formation and image restoration, the function of the right part is to be determined, the correct selection of which can greatly contribute to image compression.
Предлагаемый способ отличается от способов JPEG тем, что в нем для сжатия изображения используется не получение пространственного спектра, а формирование краевых условий для решения дифференциальных уравнений (Пуассона или Лапласа), позволяющих восстановить изображение. При этом может быть учтен и пространственный спектр, в случае если для формирования паттерна и восстановления изображения выбирают уравнения Пуассона, и если в правой части уравнения Пуассона содержится функция (или функциональный ряд), позволяющая учесть пространственный спектр. Таким образом, предлагаемый способ позволяет при сохранении малого числа низкочастотных составляющих сохранить мелкие (высокочастотные) детали изображения за счет паттерна граничных условий. Применение дифференциальных уравнений второго порядка позволяет отслеживать изменение изменений (амплитуды при переходе от точки к точке (от пикселя к пикселю), описывающей яркость, насыщенность или другую характеристику изображения в зависимости от выбранной цветовой схемы) и сохранять только те значения, в которых изменения изменений являются существенными, т.е. превосходят численно указанное значение, определяющее степень сжатия. Таким образом, в отличие от JPEG-преобразования для сжатия и восстановления изображения рассматривается не пространственный спектр изображения, а его пространственная «дифференциальная структура», т.е. наличие и численная величина изменения изменений, что позволяет эффективно сжимать области градации (цвета, яркости и т.д.) и в некоторых случаях производить более эффективное сжатие по сравнению с JPEG.The proposed method differs from JPEG methods in that it does not use spatial spectrum acquisition to compress the image, but rather the formation of boundary conditions for solving differential equations (Poisson or Laplace) that allow reconstructing the image. In this case, the spatial spectrum can be taken into account if the Poisson equations are chosen for pattern formation and image restoration, and if a function (or functional series) is included in the right side of the Poisson equation that allows one to take into account the spatial spectrum. Thus, the proposed method allows, while maintaining a small number of low-frequency components, to preserve small (high-frequency) image details due to the pattern of boundary conditions. The use of second-order differential equations allows you to track the change in changes (amplitude during the transition from point to point (from pixel to pixel), which describes the brightness, saturation or other characteristic of the image depending on the selected color scheme) and save only those values in which changes are significant, i.e. exceed numerically the specified value that determines the degree of compression. Thus, in contrast to JPEG-conversion for image compression and restoration, it is not the spatial spectrum of the image that is considered, but its spatial "differential structure", i.e. the presence and numerical value of the change changes, which allows you to effectively compress the gradation region (color, brightness, etc.) and in some cases produce more efficient compression compared to JPEG.
Изображение (статическое или динамическое) рассматривается как пространственно-неразделимая, многомерная полевая структура. В случае статического изображения - двумерная (аналог плоскопараллельного поля), в случае динамического изображения - трехмерная (аналог трехмерного поля или плоскопараллельного поля, изменяющегося во времени). Таким образом, изображение можно описать уравнениями в частных производных.An image (static or dynamic) is considered as a spatially inseparable, multidimensional field structure. In the case of a static image - two-dimensional (analogue of a plane-parallel field), in the case of a dynamic image - three-dimensional (analogue of a three-dimensional field or plane-parallel field that changes in time). Thus, the image can be described by partial differential equations.
Для двумерного случая:For the two-dimensional case:
- уравнением Лапласа:- Laplace equation:
- уравнением Пуассона:- Poisson equation:
Для трехмерного случая (для динамических изображений, видеопотока):For the three-dimensional case (for dynamic images, video stream):
- уравнением Лапласа:- Laplace equation:
- уравнением Пуассона:- Poisson equation:
где использованы следующие обозначения: x, y - пространственные координаты, t - третья пространственная координата или время, U - значение амплитуды в компоненте выбранного цветового пространства изображения, f - функция, связывающая закономерности изменения изображения с изменением пространственных координат.where the following notation is used: x, y - spatial coordinates, t - third spatial coordinate or time, U - amplitude value in the component of the selected color space of the image, f - function connecting the patterns of image change with the change in spatial coordinates.
При сжатии изображения решается обратная задача к решению уравнений (3)-(6), то есть производится отыскание граничных условий. Такой массив граничных условий в рамках данного изобретения именуется паттерном изображения или кратко паттерном. В случае выбора уравнений Пуассона также подлежит отысканию функция f. После формирования паттерна к нему может быть применен стандартный способ сжатия, применяемый к массивам данных, содержащих значительное число повторяющихся символов, например, на основе модификации преобразования Хаффмана, или LZ78, или арифметического кодирования.When compressing the image, the inverse problem to solving equations (3) - (6) is solved, that is, the boundary conditions are found. Such an array of boundary conditions within the framework of this invention is referred to as an image pattern or short pattern. In the case of choosing the Poisson equations, the function f is also to be found. After the pattern is formed, a standard compression method can be applied to it, applied to data arrays containing a significant number of repeating characters, for example, based on a modification of the Huffman transform, or LZ78, or arithmetic coding.
Разархивирование сжатого изображения сводится к извлечению паттерна (и функции f в случае уравнений Пуассона) из архива (на основе ранее выбранного способа архивации), далее решение уравнений Лапласа или Пуассона производится на основании известных краевых условий, например, методом конечных разностей.Unzipping a compressed image reduces to extracting the pattern (and function f in the case of Poisson equations) from the archive (based on the previously selected archiving method), then the Laplace or Poisson equations are solved based on known boundary conditions, for example, by the finite difference method.
Заявляемый способ иллюстрируется чертежами, где изображены:The inventive method is illustrated by drawings, which depict:
фиг.1 - возможные варианты выбора шаблонов дифференцирования для двухмерного (x,y) и трехмерного (x,y,t) пространств;figure 1 - possible choices of differentiation patterns for two-dimensional (x, y) and three-dimensional (x, y, t) spaces;
фиг.2 - исходное изображение черно-белое с градациями серого от 0 до 255, длина массива изображения 152100 байт. Изображение содержит мелкие и крупные пространственные элементы;figure 2 - the original image is black and white with gradations of gray from 0 to 255, the length of the image array is 152100 bytes. The image contains small and large spatial elements;
фиг.3 - визуализация массива граничных условий, названного в рамках способа «паттерн», паттерн содержит 42639 элементов граничных условий (отличных от нуля) и 109461 нулей;figure 3 - visualization of an array of boundary conditions, called in the framework of the method "pattern", the pattern contains 42639 elements of the boundary conditions (non-zero) and 109461 zeros;
фиг.4 - результат восстановления изображения за 20 итераций, по паттерну (фиг.3), без предильтрации;figure 4 - the result of image restoration for 20 iterations, according to the pattern (figure 3), without pre-filtering;
фиг.5 - результат восстановления изображения за 20 итераций, по паттерну (фиг.3), с применением предфильтрации;figure 5 - the result of image restoration for 20 iterations, according to the pattern (figure 3), using prefiltration;
фиг.6 - графики суммы невязок по всем точкам решетки, узлами которой являются пиксели изображения. По вертикальной оси сумма невязки, по горизонтальной номер итерации. Отображены графики для случая восстановления изображения: с применением предфильтрации; без применения предфильтрации. Очевидно, что применение предфильтрации позволяет многократно ускорить сходимость итерационного процесса, т.е. скорость восстановления изображения;6 is a graph of the sum of residuals for all points of the lattice, the nodes of which are the image pixels. On the vertical axis, the sum of the residual, on the horizontal iteration number. The graphs for the case of image restoration are displayed: using prefiltration; without applying prefiltration. Obviously, the use of prefiltration can accelerate the convergence of the iterative process many times, i.e. image recovery speed;
фиг.7 - исходное полноцветное изображение 800×654, число байт в 24-битной палитре - 1353600;Fig.7 - the original full-color image 800 × 654, the number of bytes in the 24-bit palette - 1353600;
фиг.8 - паттерн, полученный для цветовой палитры RGB, число значащих байт - 307358, нулей - 1046242. Отношение числа значащих элементов (байт) паттерна к объему исходного изображения (байт): 0,2271;Fig - the pattern obtained for the RGB color palette, the number of significant bytes - 307358, zeros - 1046242. The ratio of the number of significant elements (bytes) of the pattern to the volume of the original image (bytes): 0.2271;
фиг.9 - восстановленное изображение по паттерну (Фиг.8), стоит обратить внимание на то, что несмотря на значительное сокращение объема информации мелкие (высокочастотные) детали (фактура скатерти) сохранились;Fig.9 is a restored image according to the pattern (Fig.8), it is worth paying attention to the fact that despite a significant reduction in the amount of information, small (high-frequency) details (tablecloth texture) are preserved;
фиг.10 - паттерн, полученный для цветовой палитры YCrCB, число значащих байт - 141449, нулей - 1212151, при примерно одинаковом качестве восстановленных изображений (Фиг.9 и Фиг.11). Отношение числа значащих элементов (байт) паттерна к объему исходного изображения (байт): 0,1045. Число значащих элементов в 2,17 раза меньше, чем в паттерне на Фиг.8;figure 10 - the pattern obtained for the YCrCB color palette, the number of significant bytes - 141449, zeros - 1212151, with approximately the same quality of the restored images (Fig.9 and Fig.11). The ratio of the number of significant elements (bytes) of the pattern to the volume of the original image (bytes): 0.1045. The number of significant elements is 2.17 times less than in the pattern in FIG. 8;
фиг.11 - восстановленное изображение по паттерну (Фиг.10). Стоит обратить внимание на то, что несмотря на значительное сокращение объема информации мелкие (высокочастотные) детали (фактура скатерти) сохранились;11 is a restored image according to the pattern (Figure 10). It is worth paying attention to the fact that despite a significant reduction in the amount of information, small (high-frequency) details (tablecloth texture) have been preserved;
фиг.12 - одно из стандартных тестовых изображений (The USC-SIPI Image Database http://sipi.usc.edu/database/), исходное изображение - слева (размер, в формате bmp 24-bit, 196608 байт), восстановленное - справа;Fig - one of the standard test images (The USC-SIPI Image Database http://sipi.usc.edu/database/), the original image is on the left (size, in bmp 24-bit format, 196608 bytes), restored - on right;
фиг.13 - паттерн для изображения (фиг.12), число исключенных элементов (нулей) 134831;Fig - pattern for the image (Fig), the number of excluded elements (zeros) 134831;
фиг.14 - одно из стандартных тестовых изображений (в формате bmp 24-bit), размер 786432 байт;Fig - one of the standard test images (in bmp 24-bit format), the size of 786432 bytes;
фиг.15 - паттерн для изображения (фиг.14), число исключенных элементов (нулей) 535552;Fig - pattern for the image (Fig), the number of excluded elements (zeros) 535552;
фиг.16 - восстановленное изображение по паттерну (фиг.15).Fig.16 is a restored image according to the pattern (Fig.15).
Для раскрытия способа рассмотрим последовательность процедуры сжатия и процедуры восстановления изображения. Процедура сжатия на основании уравнений Лапласа состоит в отыскании граничных условий для решения уравнения в частных производных (в соответствии с выбранным ранее шаблоном). Выбор шаблона зависит от конкретной реализации предлагаемого способа. Отыскание граничных условий (паттерна) производится путем расчета значений частных производных второго порядка в каждой точке изображения с последующим вычислением разности с фактическими значениями в соответствующей точке. Полученная разность является критерием для принятия решения оставить данную точку для паттерна или исключить, численное значение критерия будет соответствовать «степени» сжатия. При нулевом значении критерия происходит сжатие без потерь. Для цветных изображений преобразование можно производить в любом заранее выбранном цветовом пространстве, например RGB или YCrCb. Преобразование производится отдельно для каждого канала цветовой палитры. В специальных исследованиях было показано, что в цветовой палитре YCrCb, для некоторых изображений, можно добиться более высокой степени сжатия, чем в палитре RGB.To disclose the method, consider the sequence of the compression procedure and the image recovery procedure. The compression procedure based on the Laplace equations consists in finding the boundary conditions for solving the partial differential equation (in accordance with the previously selected template). The choice of template depends on the specific implementation of the proposed method. Finding the boundary conditions (pattern) is done by calculating the values of the partial derivatives of the second order at each point in the image, followed by calculating the difference with the actual values at the corresponding point. The difference obtained is a criterion for making a decision to leave this point for the pattern or to exclude it, the numerical value of the criterion will correspond to the “degree” of compression. When the value of the criterion is zero, lossless compression occurs. For color images, conversion can be performed in any pre-selected color space, such as RGB or YCrCb. Conversion is done separately for each channel in the color palette. Special studies have shown that in the YCrCb color palette, for some images, a higher degree of compression can be achieved than in the RGB palette.
Запишем всю процедуру в формальном виде для двумерного статического изображения при выбранном шаблоне (фиг.1). В общем случае шаблон может быть любой конфигурации, позволяющей эффективно решать уравнения в частных производных. Пусть двумерный массив изображения характеризуется множеством значений Ux,y, где x, y - координаты соответствующей точки. Произведем вычисление разностного значения фактической величины Ux,y, в массиве изображения, и результата решения уравнения Лапласа:We write the entire procedure in a formal form for a two-dimensional static image with the selected template (Fig. 1). In the general case, the template can be of any configuration that allows one to efficiently solve partial differential equations. Let a two-dimensional image array be characterized by a set of values U x, y , where x, y are the coordinates of the corresponding point. We will calculate the difference value of the actual value U x, y , in the image array, and the result of solving the Laplace equation:
При выбранном критерии h, произведем сравнение |ΔUx,y| (абсолютного значения) разности с величиной h, если условие (|ΔUx,y|≥h) истинно, то Ux,y будет частью паттерна, если ложно, то Ux,y исключается из паттерна и на место Ux,y, у записывается некоторый (численный) признак (например, ноль) по которому можно будет определить, что данная точка с координатами (x,y) не является граничным условием, а требует вычисления. Очевидно, что в результате вычислений происходит переход от целочисленных значений U к значениям с плавающей точкой. Избежать этого можно заменяя операцию деления операцией поразрядного сдвига. Решение задачи на множестве целых чисел позволяет существенно ускорить процедуру формирования паттерна. При выборе практической реализации нужно учитывать условия конкретных задач и доступность вычислительных ресурсов.For the selected criterion h, we compare | ΔU x, y | (absolute value) of the difference with the value h, if the condition (| ΔU x, y | ≥h) is true, then U x, y will be part of the pattern; if false, then U x, y is excluded from the pattern and replaced by U x, y , some (numerical) sign (for example, zero) is written by which it will be possible to determine that a given point with coordinates (x, y) is not a boundary condition, but requires calculation. Obviously, as a result of the calculations, there is a transition from integer values of U to floating-point values. This can be avoided by replacing the division operation with a bitwise shift operation. Solving a problem on a set of integers allows you to significantly speed up the process of forming a pattern. When choosing a practical implementation, it is necessary to take into account the conditions of specific tasks and the availability of computing resources.
Необходимо отметить, что точки, расположенные по краям изображения (для статического двумерного изображения четыре вектора), являются граничными условиями и для них описанные вычисления не применяются, возможно их непосредственное копирование в массив граничных условий или рассмотрение точек, расположенных по краям изображения, как одномерных векторов, к которым можно применить уравнения вида
В случае динамического изображения принципиальный подход остается прежним. Уравнение расчета разности будет иметь следующий вид:In the case of a dynamic image, the principle approach remains the same. The equation for calculating the difference will have the following form:
К плоскостям, ограничивающим рассматриваемую область, может быть применен вышеописанный способ формирования паттерна для двумерного изображения или непосредственное копирование в массив граничных условий.To the planes bounding the region under consideration, the above-described method of forming a pattern for a two-dimensional image or direct copying into an array of boundary conditions can be applied.
При использовании в качестве основы для вычисления паттерна уравнения Пуассона возникает вопрос в определении правой части функции f(x,y) - для двумерного случая, f(x,y,t) - для трехмерного случая. Функцию f необходимо выбирать таким образом, чтобы рассчитываемый паттерн содержал наименьшее число элементов, являющихся граничными условиями. При этом сама функция будет определена набором коэффициентов, хранение которых может требовать значительного объема памяти. Решение можно определить как минимизацию числа граничных элементов, образующих паттерн, и коэффициентов функции f при сохранении достаточного качества восстанавливаемого изображения. Рассмотрим некоторые варианты функции f:When using the Poisson equation as the basis for calculating the pattern, the question arises of determining the right-hand side of the function f (x, y) for the two-dimensional case, f (x, y, t) for the three-dimensional case. The function f must be chosen so that the calculated pattern contains the smallest number of elements that are the boundary conditions. In this case, the function itself will be determined by a set of coefficients, the storage of which may require a significant amount of memory. The solution can be defined as minimizing the number of boundary elements forming the pattern and the coefficients of the function f while maintaining sufficient quality of the reconstructed image. Consider some options for the function f:
- плоскость: f(x,y)=ax+by+с;- plane: f (x, y) = ax + by + c;
- обратное дискретное косинусное преобразование (см. (2)), всего пространства изображения:is the inverse discrete cosine transform (see (2)), of the entire image space:
- разнообразные вейвлет-функции, с помощью набора вейвлет-коэффициентов позволяющие вычислить с заданной точностью значения в пространстве изображения;- a variety of wavelet functions, using a set of wavelet coefficients that allow you to calculate the values in the image space with a given accuracy;
- массив дискретных значений, соответствующий средним значениям в областях, полученных разбиением изображения на прямоугольники (в двумерном случае) или параллелепипеды (в трехмерном случае).- an array of discrete values corresponding to the average values in the areas obtained by dividing the image into rectangles (in the two-dimensional case) or parallelepipeds (in the three-dimensional case).
Очевидно, что в качестве правой части могут выбираться и любые другие функции (функциональные ряды), наиболее подходящие для конкретного случая. В качестве примера рассмотрим более подробно ДКП. ДКП в зависимости от степени сжатия изображения позволяет сохранять или исключать высокочастотные («мелкие») детали, а предлагаемый способ может отлично сохранять «мелкие» детали изображения. Таким образом, можно использовать несколько низкочастотных компонент ДКП в качестве правой части уравнения Пуассона. Аналогично можно использовать вейвлет- преобразование в качестве правой части уравнения Пуассона, позволяющей учесть особенности пространственного спектра изображения.Obviously, any other functions (functional series) that are most suitable for a particular case can be selected as the right-hand side. As an example, consider the DCT in more detail. DCT, depending on the degree of image compression, allows you to save or exclude high-frequency ("small") details, and the proposed method can perfectly save "small" image details. Thus, several low-frequency DCT components can be used as the right-hand side of the Poisson equation. Similarly, you can use the wavelet transform as the right side of the Poisson equation, allowing you to take into account the features of the spatial spectrum of the image.
При ограниченном числе разрядов на сохранение одного канала цветовой схемы имеется ограничение на возможные значения. Например, при восьми разрядах на каждый канал в цветовой схеме RGB допустимые значения ограничены диапазоном 0-255. Граничные значения в паттерне записываются путем копирования соответствующих значений из исходного изображения, прочие значения в паттерне заполняются заранее выбранной величиной, например нулем. Если же в точках паттерна встретится ноль, то отличить его от прочих нулей, которыми записаны точки, не являющиеся граничными условиями, будет невозможно. Для восприятия человеком градация в пределах 1/256 будет незаметной, но если необходимо иметь возможность сохранять изображение без потерь, то возникающую ошибку необходимо корректировать, для коррекции можно использовать битовую маску изображения.With a limited number of bits to save one channel of the color scheme, there is a limit on the possible values. For example, with eight bits per channel in the RGB color scheme, valid values are limited to a range of 0-255. The boundary values in the pattern are recorded by copying the corresponding values from the original image, other values in the pattern are filled with a pre-selected value, for example, zero. If a zero occurs at the points of the pattern, then it will be impossible to distinguish it from other zeros that record points that are not boundary conditions. For human perception, the gradation within 1/256 will be imperceptible, but if you need to be able to save the image without loss, then the error that needs to be corrected, you can use the image bit mask for correction.
В результате изложенных выше преобразований формируется паттерн, содержащий значительное число повторяющихся элементов, к такому паттерну можно эффективно применять алгоритмы сжатия на основе стандартных преобразований: Хаффмана, LZ78, арифметического кодирования.As a result of the above transformations, a pattern is formed containing a significant number of repeating elements. Compression algorithms based on standard transformations such as Huffman, LZ78, and arithmetic coding can be effectively applied to such a pattern.
Обратное преобразование заключается в восстановлении исходного изображения по паттерну. Наиболее очевидным решением является применение итерационного метода конечных разностей, граничными условиями для решения является паттерн. При таком подходе время вычислений для восстановления изображения в достаточно высоком качестве может быть значительным, особенно при больших размерах изображения. Поэтому в рамках рассматриваемого способа предлагается использовать предфильтрацию. Смысл предфильтрации состоит в ускорении сходимости процесса итерационных вычислений методом конечных разностей. Рассмотрим возможный вариант реализации предфильтрации, на примере двумерного изображения. Предфильтрация производится последовательно сначала в направлении Х, а затем в направлении Y или наоборот. Итак, совершим проход по первой (первой из тех, к которым применялся разностный способ формирования паттерна, крайние строки являются граничными условиями, см. выше) строке, если встречаем элемент, являющийся элементом граничного условия, запоминаем его значение и двигаемся далее, пока не встретим следующий элемент, являющийся элементом граничного условия. Зная значение двух граничных элементов, в пределах одного вектора, применяем аппроксимацию (например, линейную) для вычисления значений элементов, расположенных между ними. Таким образом, аппроксимируем все значения в пределах одной строки. Последовательно проходим все строки в направлении Х, а затем совершаем такой же проход по всем строкам в направлении Y. При проходе по строкам в направлении Y учитываем ранее полученные значения (при проходе по X) и вычисляем фактическое значение как среднее между проходом в направлении Х и Y.The inverse transformation is to restore the original image according to the pattern. The most obvious solution is to use the iterative finite difference method; the boundary conditions for the solution are the pattern. With this approach, the computation time for restoring an image in a sufficiently high quality can be significant, especially with large image sizes. Therefore, in the framework of the method under consideration, it is proposed to use prefiltration. The meaning of prefiltration is to accelerate the convergence of the process of iterative calculations by the finite difference method. Consider a possible implementation of prefiltration, for example, a two-dimensional image. Prefiltration is performed sequentially first in the X direction, and then in the Y direction, or vice versa. So, let’s go through the first (the first of those to which the difference method of patterning was applied, extreme lines are boundary conditions, see above) line, if we meet an element that is an element of the boundary condition, remember its value and move on until we meet the next element, which is an element of the boundary condition. Knowing the value of two boundary elements within the same vector, we use an approximation (for example, linear) to calculate the values of the elements located between them. Thus, we approximate all the values within the same row. Successively go through all the lines in the X direction, and then make the same passage along all the lines in the Y direction. When passing through the lines in the Y direction, we take into account the previously obtained values (when passing along X) and calculate the actual value as the average between the passage in the X direction and Y.
Возможно добавить предфильтрующие проходы по диагоналям.It is possible to add pre-filtering passes along the diagonals.
При использовании уравнений Пуассона в качестве функции, осуществляющей «предфильтрацию», можно использовать уравнение правой части совместно с описанным выше проходом в направлениях Х и Y.When using the Poisson equations as a function that performs “pre-filtering”, the right-hand side equation can be used together with the passage described above in the X and Y directions.
Результатом такой предфильтрации является массив данных, который можно рассматривать как часть вычислений, полученную в результате выполнения некоторого итерационного приближения. Описанная выше предфильтрация позволяет существенно ускорить сходимость итерационного процесса, а значит, ускорить процесс восстановления изображения. Дальнейшие итерационные вычисления можно производить методом конечных разностей. Критерием к завершению вычислений может служить численная оценка невязки. Такой поход позволяет достаточно быстро сформировать изображение (например, на экране монитора) и последовательно, продолжая итерации и периодически обновляя изображение, повышать его визуальное качество (прогрессирующее декодирование).The result of this pre-filtering is a data array that can be considered as part of the calculations obtained as a result of performing some iterative approximation. The pre-filtering described above can significantly accelerate the convergence of the iterative process, and therefore, accelerate the image recovery process. Further iterative calculations can be performed using the finite difference method. The criterion for completing the calculations can be a numerical estimate of the residual. This approach allows you to quickly create an image (for example, on a monitor screen) and sequentially, continuing iteration and periodically updating the image, to increase its visual quality (progressive decoding).
Описанный способ возможно применять к динамическим (трехмерным) изображениям, используя в качестве еще одной координаты время f(x,y,t). Возможно применение способа в других многомерных изображениях, например в трехмерном телевидении, где в зависимости от реализации может быть от четырех (три пространственных и время) и более координат.The described method can be applied to dynamic (three-dimensional) images using the time f (x, y, t) as another coordinate. It is possible to use the method in other multidimensional images, for example, in three-dimensional television, where, depending on the implementation, there may be four (three spatial and time) and more coordinates.
Для реализации предлагаемого способа необходимо выполнить последовательность действий, отвечающую всем признакам алгоритма.To implement the proposed method, it is necessary to perform a sequence of actions that meets all the signs of the algorithm.
Порядок последовательности действий способа строго определен и детерминирован.The order of the sequence of actions of the method is strictly defined and determined.
Обобщенный алгоритм сжатия двумерного статического изображения (применяется уравнение Лапласа). В описании алгоритма изображение, паттерн - являются целочисленными, двумерными массивами значений (в узлах сетки изображения - пикселях).A generalized compression algorithm for a two-dimensional static image (the Laplace equation is applied). In the description of the algorithm, the image, pattern - are integer, two-dimensional arrays of values (in the nodes of the image grid - pixels).
1. Формируем паттерн изображения, являющийся массивом граничных условий для решения уравнений Лапласа или Пуассона при восстановлении. В случае если применяется уравнение Пуассона, производим расчет необходимых коэффициентов, однозначно описывающих правую часть уравнения Пуассона.1. We form an image pattern, which is an array of boundary conditions for solving the Laplace or Poisson equations during restoration. If the Poisson equation is applied, we calculate the necessary coefficients that uniquely describe the right side of the Poisson equation.
2. Если необходимо сохранять изображение без потерь, формируем битовую матрицу (массив), позволяющую произвести коррекцию изображения при восстановлении. Битовую маску также сжимаем, например, способом кодирования длин серий RLE.2. If it is necessary to save the image without loss, we form a bit matrix (array) that allows for image correction during restoration. The bitmask is also compressed, for example, by encoding the lengths of the RLE series.
3. Применяем к полученному паттерну стандартный способ компрессии, позволяющий эффективно сжимать данные, содержащие значительное число повторяющихся элементов.3. We apply the standard compression method to the resulting pattern, which allows us to efficiently compress data containing a significant number of repeating elements.
Обобщенный алгоритм восстановления изображения:Generalized image recovery algorithm:
1. Производим операцию разархивирования паттерна в соответствии со способом его упаковки. В случае необходимости производим разархивирование коэффициентов (в случае использования уравнения Пуассона) и битовой матрицы (для восстановления изображения без потерь).1. We perform the operation of unzipping the pattern in accordance with the method of its packaging. If necessary, we unzip the coefficients (in the case of using the Poisson equation) and the bit matrix (to restore the image without loss).
2. Производим предфильтрацию, используя поученный (в пункте 1) паттерн. Целью предфильтрации является ускорение процесса сходимости итерационного процесса восстановления изображения по паттерну.2. We perform prefiltration using the pattern learned in (clause 1). The purpose of prefiltration is to accelerate the convergence process of the iterative process of image restoration according to the pattern.
3. Производим расчет (восстановление) изображения по паттерну, используя в качестве области восстановления (массива, в котором будет получено восстановленное изображение) массив, полученный на этапе предфильтрации. Критерием окончания расчетов может быть заданное число итераций или значение невязки (контролирующее сходимость итерационного процесса).3. We calculate (restore) the image according to the pattern, using the array obtained at the prefiltration stage as the recovery area (array in which the restored image will be received). The criterion for the end of the calculations may be a given number of iterations or the value of the residual (controlling the convergence of the iterative process).
4. В случае если необходимо восстановить изображение без потерь, производим коррекцию с помощью битовой маски.4. In case it is necessary to restore the image without loss, we perform the correction using a bit mask.
Таким образом, предлагаемый способ устраняет потерю целостности изображения, повышает эффективность сжатия изображений, содержащих большие участки одного тона или градиента (цвета, яркости), и сохраняет контрастность границ между различными объектами изображения.Thus, the proposed method eliminates the loss of image integrity, increases the compression efficiency of images containing large areas of the same tone or gradient (color, brightness), and maintains the contrast of the borders between different image objects.
Claims (2)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2012107969/08A RU2500067C2 (en) | 2012-03-01 | 2012-03-01 | Image compression method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2012107969/08A RU2500067C2 (en) | 2012-03-01 | 2012-03-01 | Image compression method |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2012107969A RU2012107969A (en) | 2013-09-10 |
RU2500067C2 true RU2500067C2 (en) | 2013-11-27 |
Family
ID=49164583
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2012107969/08A RU2500067C2 (en) | 2012-03-01 | 2012-03-01 | Image compression method |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2500067C2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2722223C1 (en) * | 2019-04-16 | 2020-05-28 | Вадим Иванович Филиппов | METHOD OF COMPRESSING MULTIDIMENSIONAL IMAGES BY APPROXIMATING ELEMENTS OF SPACES Lp{(0, 1]m}, p IS GREATER THAN OR EQUAL TO 1 AND LESS THAN ∞, BY SYSTEMS OF COMPRESSIONS AND SHIFTS OF ONE FUNCTION BY FOURIER-TYPE SERIES WITH INTEGER COEFFICIENTS AND INTEGER DECOMPOSITION OF ELEMENTS OF MULTIMODULAR SPACES |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SU1295443A2 (en) * | 1985-09-17 | 1987-03-07 | Московский Институт Радиотехники,Электроники И Автоматики | Device for colour displaying of information |
US7577313B1 (en) * | 2003-12-30 | 2009-08-18 | Adobe Systems Incorporated | Generating synthesized texture in differential space |
US7626517B2 (en) * | 2001-07-27 | 2009-12-01 | Kabushiki Kaisha Toshiba | Data retrieving method, data retrieving apparatus, data compression method and data compression apparatus |
RU2008133622A (en) * | 2006-02-17 | 2010-02-20 | Майкрософт Корпорейшн (Us) | PERCEPTIONAL PREVIEW |
US8059903B2 (en) * | 2004-11-17 | 2011-11-15 | National University Corporation Shizuoka University | Data compression-decompression method, program, and electronic device |
-
2012
- 2012-03-01 RU RU2012107969/08A patent/RU2500067C2/en active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SU1295443A2 (en) * | 1985-09-17 | 1987-03-07 | Московский Институт Радиотехники,Электроники И Автоматики | Device for colour displaying of information |
US7626517B2 (en) * | 2001-07-27 | 2009-12-01 | Kabushiki Kaisha Toshiba | Data retrieving method, data retrieving apparatus, data compression method and data compression apparatus |
US7577313B1 (en) * | 2003-12-30 | 2009-08-18 | Adobe Systems Incorporated | Generating synthesized texture in differential space |
US8059903B2 (en) * | 2004-11-17 | 2011-11-15 | National University Corporation Shizuoka University | Data compression-decompression method, program, and electronic device |
RU2008133622A (en) * | 2006-02-17 | 2010-02-20 | Майкрософт Корпорейшн (Us) | PERCEPTIONAL PREVIEW |
Also Published As
Publication number | Publication date |
---|---|
RU2012107969A (en) | 2013-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10432971B2 (en) | Image data compression and decompression using minimize size matrix algorithm | |
US6347157B2 (en) | System and method for encoding a video sequence using spatial and temporal transforms | |
JPH05500294A (en) | Improved image compression method and apparatus | |
JPH03192876A (en) | Picture coder | |
JPH10503359A (en) | Method and apparatus for reducing image data compression noise | |
US7778468B2 (en) | Decoding apparatus, dequantizing method, and program thereof | |
Siddeq et al. | A novel 2D image compression algorithm based on two levels DWT and DCT transforms with enhanced minimize-matrix-size algorithm for high resolution structured light 3D surface reconstruction | |
Cui et al. | An efficient deep quantized compressed sensing coding framework of natural images | |
RU2500067C2 (en) | Image compression method | |
Salih et al. | Image compression for quality 3D reconstruction | |
US6584225B1 (en) | Frequency domain halftoning | |
JP6684229B2 (en) | Precision and quantization method applicable to wavelet transform matrix | |
Biswas | Segmentation based compression for graylevel images | |
US6633679B1 (en) | Visually lossless still image compression for CMYK, CMY and Postscript formats | |
JP3833224B2 (en) | Encoding method and apparatus, computer program, and computer-readable storage medium | |
CN110691245B (en) | Image processing method, data processing system, and computer-readable storage medium | |
Khan et al. | A hybrid image compression technique using quadtree decomposition and parametric line fitting for synthetic images | |
Rodrigues et al. | Image Compression for Quality 3D Reconstruction | |
Pancholi et al. | Tutorial review on existing image compression techniques | |
Santosh et al. | Absolute Moment Block Truncation Coding For Color Image Compression | |
Kumar et al. | An image compression algorithm for gray scale image | |
JPH09121349A (en) | Method and apparatus for coding/decoding digital image | |
Kurin et al. | Video Data Compression Coder Based on the Method of Structural Digital Image Representation | |
Kumar et al. | Aggrandize Bit Plane Coding using Gray Code Method | |
Siddeq | Novel methods of image compression for 3D reconstruction |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PD4A | Correction of name of patent owner | ||
PC41 | Official registration of the transfer of exclusive right |
Effective date: 20220120 |