[go: up one dir, main page]

EA040379B1 - METHOD AND DEVICE FOR ENCODING, DECODING VIDEO SIGNAL IN HIERARCHY OF QUALITY LEVELS - Google Patents

METHOD AND DEVICE FOR ENCODING, DECODING VIDEO SIGNAL IN HIERARCHY OF QUALITY LEVELS Download PDF

Info

Publication number
EA040379B1
EA040379B1 EA201492099 EA040379B1 EA 040379 B1 EA040379 B1 EA 040379B1 EA 201492099 EA201492099 EA 201492099 EA 040379 B1 EA040379 B1 EA 040379B1
Authority
EA
Eurasian Patent Office
Prior art keywords
residuals
signal
resolution
plane
representation
Prior art date
Application number
EA201492099
Other languages
Russian (ru)
Inventor
Лука Россато
Гвидо Меарди
Original Assignee
В-Нова Интернэшнл Лтд.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by В-Нова Интернэшнл Лтд. filed Critical В-Нова Интернэшнл Лтд.
Publication of EA040379B1 publication Critical patent/EA040379B1/en

Links

Description

Уровень техникиState of the art

В технике известны многочисленные методы сжатия и снятия сжатия многомерных сигналов или сигналов, развивающихся с течением времени. Это имеет отношение к аудиосигналам, видеосигналам и другим многомерным сигналам, например, объемным сигналам, используемым в научных и медицинских областях.Numerous techniques are known in the art for compressing and decompressing multidimensional signals or signals that evolve over time. This applies to audio signals, video signals, and other multi-dimensional signals such as surround signals used in scientific and medical applications.

Для достижения высоких коэффициентов сжатия, эти методы предусматривают использование пространственной и временной корреляции внутри сигнала. Например, традиционные способы идентифицируют эталон и пытаются определить разность сигнала между текущим местоположением и данным эталоном. Это осуществляется как в пространственной области, где эталоном является участок (например, блок или макроблок) ранее принятой и декодированной пространственной плоскости, так и во временной области, где единый временной экземпляр сигнала (например, кадр видео в последовательности кадров) используется в качестве эталона в течение определенного промежутка времени. Это имеет отношение, например, к алгоритмам сжатия семейства MPEG (Moving Pictures Expert Group), где ранее декодированные макроблоки используются в качестве эталонных в пространственной области, и I-кадры и Pкадры используются в качестве эталонных для последующих P-кадров во временной области.To achieve high compression ratios, these methods involve the use of spatial and temporal correlation within the signal. For example, conventional methods identify a reference and attempt to determine the signal difference between the current location and the given reference. This is done both in the spatial domain, where the reference is a section (eg, block or macroblock) of a previously received and decoded spatial plane, and in the time domain, where a single temporal signal instance (eg, a video frame in a sequence of frames) is used as a reference in during a certain period of time. This is relevant, for example, to MPEG (Moving Pictures Expert Group) compression algorithms, where previously decoded macroblocks are used as reference in the spatial domain, and I-frames and P-frames are used as reference for subsequent P-frames in the time domain.

Известные методы предусматривают использование пространственной корреляции и временной корреляции разнообразными способами, с применением нескольких разных методов для идентификации, упрощения, кодирования и передачи разностей. В соответствии с традиционными способами, для использования пространственной корреляции остатков в соответствующем блоке элементов изображения осуществляется преобразование области (например, в частотную область) и затем осуществляется удаление и квантование преобразованной информации с потерями, обычно привносящее, в той или иной степени, артефакты блочности. Напротив, во временной области традиционные способы предусматривают передачу квантованной разности между текущей выборкой и эталонной выборкой, подвергнутой компенсации движения. Для достижения максимального сходства между выборками, кодеры пытаются оценить модификации эталонного сигнала, происходящие с течением времени. В традиционных способах кодирования (например, технологиях семейства MPEG, VP8 и т.д.), это называется оцениванием и компенсацией движения.Known methods involve the use of spatial correlation and temporal correlation in a variety of ways, using several different methods to identify, simplify, encode and communicate differences. In accordance with traditional methods, in order to use the spatial correlation of the residuals in the corresponding block of pixels, a domain transformation (for example, to the frequency domain) is performed, and then the lossy transformed information is removed and quantized, usually introducing, to one degree or another, blocking artifacts. In contrast, in the time domain, conventional methods involve transmitting the quantized difference between the current sample and the motion-compensated reference sample. To achieve maximum similarity between samples, encoders try to estimate the modifications of the reference signal that occur over time. In traditional coding methods (eg, MPEG family technologies, VP8, etc.), this is called motion estimation and compensation.

Современные ЦП (центральные процессоры) и ГП (графические процессоры) обычно очень мощны; единый ГП может включать в себя несколько сотен вычислительных ядер для осуществления параллельной обработки информации. При использовании оборудования, созданного по современным технологиям, очень большие участки изображения могут сохраняться в кэш-памяти процессора для обработки. Необходимость фрагментации изображений на большое количество малых блоков, что было движущим фактором в период создания JPEG и MPEG, поскольку процессоры той эпохи могли единомоментно обрабатывать очень малые фрагменты видеоданных и, опять же, только последовательно, отпадает для современных ЦП и ГП. Таким образом, имеющаяся вычислительная мощность может, по большей части, оставаться неиспользуемой при реализации кодирования/декодирования MPEG-образных типов, притом что в сигнал без необходимости вносятся артефакты блочности.Modern CPUs (central processing units) and GPUs (graphic processing units) are usually very powerful; a single GPU can include several hundred processing cores for parallel processing of information. With modern technology equipment, very large portions of an image may be stored in the processor's cache for processing. The need to fragment images into a large number of small blocks, which was a driving factor during the creation of JPEG and MPEG, since the processors of that era could process very small pieces of video data at once and, again, only sequentially, is no longer for modern CPUs and GPUs. Thus, the available processing power can, for the most part, be left unused in the implementation of MPEG type encoding/decoding, while blocking artifacts are unnecessarily introduced into the signal.

Кроме того, по сравнению с тем, что имело место, когда разрабатывался MPEG, современные приложения обычно требуют кодирования видеосигнала гораздо более высокой четкости и гораздо более высокого качества воспроизведения в целом. В видеосигналах высокой четкости (например, fullHD, UltraHD) и высокого качества (например, где артефакты относительно незаметны по отношению к исходному сигналу), существует гораздо большее различие между областями с низкой детализацией (потенциально, даже расфокусированными) и областями с очень высокой детализацией. Это делает использование преобразований в частотной области, например, используемые в способах на основе JPEG и на основе MPEG еще менее пригодными для обработки и воспроизведения изображений, поскольку диапазон релевантных частот значительно расширяется.Also, compared to when MPEG was developed, today's applications typically require much higher definition video encoding and much higher overall playback quality. In high definition (e.g. fullHD, UltraHD) and high quality (e.g. where artifacts are relatively inconspicuous relative to the original signal) video signals, there is a much greater difference between areas of low detail (potentially even out of focus) and areas of very high detail. This makes the use of frequency domain transforms, such as those used in the JPEG-based and MPEG-based methods, even less suitable for image processing and reproduction, since the range of relevant frequencies is greatly expanded.

Кроме того, изображения более высокого разрешения включают в себя в более высокой степени шум камеры и/или зернистость пленки, т.е. очень детализированные высокочастотные пиксельные переходы, которые требуют кодирования большого количества битов, но которые могут быть совершенно нерелевантными для просмотра по сравнению с аналогичными высокочастотными пиксельными переходами границ объектов.In addition, higher resolution images include a higher degree of camera noise and/or film grain, i. highly detailed high-frequency pixel transitions that require a large number of bits to be encoded, but which may be completely irrelevant for viewing compared to similar high-frequency pixel transitions of object boundaries.

Другой аспект, которому не придается значение в уровне техники, за исключением нескольких попыток, состоит в требовании к масштабируемости качества. Способ кодирования с масштабированием позволяет кодировать единственную версию сжатого сигнала и обеспечивает доставку на разные уровни качества, доступности полосы и сложности декодера. Масштабируемость принималась во внимание в известных способах, таких как MPEG-SVC и JPEG2000, но, до сих пор, не находила достойного применения вследствие вычислительной сложности и, вообще говоря, неэффективности сжатия по сравнению с методами без масштабирования.Another aspect that is not given importance in the prior art, except for a few attempts, is the requirement for quality scalability. The scaling coding method allows a single version of the compressed signal to be encoded and delivers at different levels of quality, bandwidth availability, and decoder complexity. Scalability has been taken into account in known methods such as MPEG-SVC and JPEG2000, but has not yet been put to good use due to computational complexity and generally inefficient compression compared to non-scaling methods.

Ранее в качестве масштабируемой альтернативы стандартам JPEG/MPEG для кодирования/декодирования, в целях кодирования/декодирования использовались так называемые пирамиды Лапласа изображения. Например, традиционные системы пирамид Лапласа создавали изображения более низкого разрешения с использованием гауссовых фильтров и затем строили пирамиду разностей междуPreviously, as a scalable alternative to the JPEG/MPEG standards for encoding/decoding, so-called image Laplace pyramids were used for encoding/decoding purposes. For example, traditional Laplace pyramid systems created lower resolution images using Gaussian filters and then built a pyramid of differences between

- 1 040379 изображениями, полученные повышающей дискретизацией с помощью жестко запрограммированного декодера обратно от более низких уровней разрешение к исходному уровню. От использования кодирования с традиционными пирамидами Лапласа отказались по причине неэффективности сжатия.- 1,040,379 images upsampled by a hard-coded decoder back from lower resolution levels to the original level. The use of encoding with traditional Laplace pyramids was abandoned due to the inefficiency of compression.

Преобразования областей остатков, используемые до сих пор способами кодирования, отвечающими уровню техники (например, преобразования Фурье, дискретные косинусные преобразования, преобразования Адамара, вейвлетные преобразования и т.д.), страдают рядом недостатков.Residual domain transforms used so far by prior art coding methods (eg, Fourier transforms, discrete cosine transforms, Hadamard transforms, wavelet transforms, etc.) suffer from a number of disadvantages.

Прежде всего, сам выбор преобразования в частотную область не позволяет правильно использовать корреляцию между большими участками сигнала (т.е. участками с большим количеством выборок для каждого из измерений), поскольку сигналы реального мира обычно демонстрируют ограниченную степень периодичности. В результате, преобразования частотной области осуществляются на блоках, которые одновременно слишком велики и слишком малы: слишком велики, чтобы быть вычислительно простыми, слишком малы, чтобы в достаточной степени использовать корреляцию сигнала высокого разрешения. Например, чтобы использовать корреляцию достаточно большого множества выборок, одновременно управляя вычислительными сложностями, традиционные методы кодирования изображения и видеосигнала действуют на блоках 8x8, 16x16 или 32x32 элементов: очевидно, слишком малых для полного захвата корреляции шаблонов изображения в изображении высокой четкости (например, с 8 миллионами пикселей), но достаточно больших для поглощения значительной вычислительной мощности.First of all, the choice of the frequency domain transform itself does not allow correct use of the correlation between large sections of the signal (ie, sections with a large number of samples for each of the measurements), since real world signals usually exhibit a limited degree of periodicity. As a result, frequency domain transforms are performed on blocks that are both too large and too small: too large to be computationally simple, too small to sufficiently exploit high-resolution signal correlation. For example, to exploit the correlation of a large enough set of samples while managing computational complexity, traditional image and video coding methods operate on blocks of 8x8, 16x16, or 32x32 elements: obviously too small to fully capture image pattern correlation in a high-definition image (for example, with 8 millions of pixels), but large enough to absorb significant processing power.

Во-вторых, известные способы, использующие преобразования частотной области, неявно предполагают, что люди чувствительны к гармоникам (например, частотам цветовых переходов) вне зависимости от направления перехода, тогда как в ряде исследований было показано, что люди воспринимают четкость перехода гораздо лучше, чем точное направление/угол перехода, в особенности при наблюдении сложных форм.Secondly, known methods using frequency domain transforms implicitly assume that humans are sensitive to harmonics (e.g., color transition frequencies) regardless of the direction of the transition, while a number of studies have shown that people perceive the clarity of the transition much better than precise transition direction/angle, especially when observing complex shapes.

В-третьих, известные методы кодирования с потерями действуют посредством квантования результатов преобразования, неизбежно создавая две проблемы:Thirdly, known lossy coding methods operate by quantizing the results of the transformation, inevitably creating two problems:

(1) артефакты блочности между одним блоком и соседними, подлежащие коррекции посредством относительно сложных способов противоблоковой обработки изображений;(1) blocking artifacts between one block and adjacent blocks to be corrected by relatively complex anti-block image processing techniques;

(2) невозможность легко управлять максимальной ошибкой в кодированном изображении, поскольку фактические пиксельные значения являются результатом обратного преобразования деквантованных параметров, вследствие чего, ошибки квантования в квантованных параметрах блока объединяются друг с другом таким образом, что ими трудно управлять без нескольких повторных операций кодирования и/или чрезвычайно сложных схем квантования.(2) the inability to easily control the maximum error in the encoded image, because the actual pixel values are the result of the inverse transformation of the dequantized parameters, as a result, the quantization errors in the quantized block parameters are combined with each other in such a way that they are difficult to manage without several repeated encoding operations and/ or extremely complex quantization schemes.

Предотвращение артефактов блочности и гарантированое управление максимальной ошибкой являются чрезвычайно важными признаками, в особенности в таких областях применения, как формирование изображения в медицинских целях или профессиональная фотография/видеосъемка.Preventing blocking artifacts and ensuring maximum error control are extremely important features, especially in applications such as medical imaging or professional photography/videography.

Краткое описаниеShort description

Рассмотренные здесь варианты осуществления отличаются от традиционных систем и способов, обеспечивая новые способы квантования и/или преобразования информации элемента (например, остаточных данных) для реконструкции представления изображения, обеспечивая способы кодирования, характеризующиеся эффективным энтропийным кодированием, низкой вычислительной сложностью, параллелизмом, масштабируемостью, управлением ошибками и т.д. Рассмотренные здесь способы и варианты осуществления представляют инновационный подход к достижению результатов эффективного энтропийного кодирования, с низкой вычислительной сложностью, параллелизмом, масштабируемостью и управлением ошибками.The embodiments discussed herein differ from conventional systems and methods by providing new ways of quantizing and/or transforming element information (e.g., residual data) to reconstruct an image representation, providing encoding methods characterized by efficient entropy coding, low computational complexity, parallelism, scalability, control mistakes, etc. The methods and embodiments discussed herein present an innovative approach to achieve efficient entropy coding results with low computational complexity, concurrency, scalability, and error management.

Согласно своему самому широкому аспекту, рассмотренные здесь варианты осуществления включают в себя способ преобразования множеств элементов сигнала (т.е. подходящих последовательностей значений) во множества преобразованных элементов сигнала, для их эффективного энтропийного кодирования. Проиллюстрированные здесь варианты осуществления, в особенности, сосредоточены на неограничительном случае использования, в котором упомянутые элементы сигнала соответствуют остаточным данным, подлежащим прибавлению к прогнозируемому (т.е. предварительному) представлению изображения для получения целевого представления того же изображения, причем упомянутое прогнозируемое представление получается, по меньшей мере, частично, повышающей дискретизацией и/или обработкой представления того же изображения на более низком уровне качества (например, с более низким уровнем верности по сравнению с представлением исходного сигнала). Проиллюстрированные здесь варианты осуществления, в особенности, сосредоточены на неограничительных случаях, где более низкий уровень качества означает более низкое разрешение (т.е. более грубую сетку дискретизации) по одному или более из измерений сигнала, хотя специалисты в данной области техники могут без труда адаптировать одни и те же способы к случаям, когда сигнал на более низком уровне качества является сигналом с тем же разрешением и более низким уровнем детализации (например, без ограничения, более грубым квантованием значений элемента).According to its broadest aspect, the embodiments discussed herein include a method for converting chip sets (ie, suitable sequences of values) into transformed chip sets for efficient entropy coding. The embodiments illustrated herein are particularly focused on a non-limiting use case in which said signal elements correspond to residual data to be added to a predictive (i.e., provisional) image representation to obtain a target representation of the same image, said predictive representation being obtained, at least in part by upsampling and/or processing a representation of the same image at a lower quality level (eg, with a lower level of fidelity compared to the representation of the original signal). The embodiments illustrated here are particularly focused on non-limiting cases where a lower quality level means lower resolution (i.e., a coarser sampling grid) in one or more of the signal dimensions, although those skilled in the art can readily adapt the same methods to cases where the signal at a lower quality level is a signal with the same resolution and a lower level of detail (eg, without limitation, coarser quantization of element values).

Рассмотренные здесь варианты осуществления полезны наряду с традиционными способами кодирования и полезны наряду со способами многоуровневого кодирования, в других патентных заявках техThe embodiments discussed herein are useful along with traditional coding methods and useful along with layered coding methods, in other patent applications those

- 2 040379 же авторов описано множество других новых способов.- 2 040379 same authors described many other new ways.

Для простоты, проиллюстрированные здесь неограничительные варианты осуществления относятся к сигналу в виде последовательности многомерных выборок (т.е. множеств из одного или более элементов, организованных как массивы в одном или более измерениях, например, в порядке неограничительного примера, множеств элементов изображения, организованных как двухмерные изображения). В описании, термины изображение или плоскость (подразумеваемые в самом широком значении гиперплоскость , т.е. массив элементов с любым количеством измерений и данной сеткой дискретизации) часто будет использоваться для идентификации цифрового представления выборки сигнала вдоль последовательности выборок, причем каждая плоскость имеет данное разрешение для каждого из ее измерений (например, X и Y, в случае двух измерений), и содержит множество элементов плоскости (или элемент или пэл, для двухмерных изображений часто именуемых пикселями, для объемных изображений часто именуемых вокселями, и т.д.), характеризующихся одним или более значениями или настройками (например, в порядке неограничительных примеров, цветовыми настройками в подходящем цветовом пространстве, настройками, указывающими уровень плотность, настройками, указывающими уровни температуры, настройками, указывающими тон аудиосигнала, настройками, указывающими амплитуду, и т.д.). Каждый элемент плоскости идентифицируется подходящим множеством координат, указывающих целочисленные позиции упомянутого элемента в сетке дискретизации изображения. Измерения сигнала могут включать в себя только пространственные измерения (например, в случае изображения) или также временное измерение (например, в случае сигнала, развивающегося с течением времени).For simplicity, the non-limiting embodiments illustrated herein refer to a signal as a sequence of multidimensional samples (i.e., sets of one or more elements organized as arrays in one or more dimensions, e.g., by way of non-limiting example, sets of picture elements organized as 2D images). In the description, the terms image or plane (meaning in its broadest sense a hyperplane, i.e. an array of elements with any number of dimensions and a given sampling grid) will often be used to identify a digital representation of a signal sample along a sequence of samples, with each plane having a given resolution for each of its dimensions (for example, X and Y, in the case of two dimensions), and contains a set of elements of the plane (or element or pel, for two-dimensional images often referred to as pixels, for volumetric images often referred to as voxels, etc.) characterized by one or more values or settings (for example, by way of non-limiting examples, color settings in a suitable color space, settings indicating density level, settings indicating temperature levels, settings indicating audio tone, settings indicating amplitude, etc.) . Each element of the plane is identified by a suitable set of coordinates indicating the integer positions of said element in the image sampling grid. The signal dimensions may include only spatial dimensions (eg in the case of an image) or also a temporal dimension (eg in the case of a signal evolving over time).

В порядке неограничительных примеров, сигналом может быть изображение, аудиосигнал, многоканальный аудиосигнал, видеосигнал, многовидовой видеосигнал (например, 3D-видео), пленоптический сигнал, мультиспектральный сигнал, объемный сигнал (например, формирование изображения в медицинских целях, формирование изображения в научных целях, формирование голографического изображения и т.д.), объемный видеосигнал, или даже сигналы с более чем четырьмя измерениями.By way of non-limiting examples, the signal can be an image, an audio signal, a multichannel audio signal, a video signal, a multiview video signal (e.g., 3D video), a plenoptic signal, a multispectral signal, a surround signal (e.g., medical imaging, scientific imaging, holographic imaging, etc.), surround video, or even signals with more than four dimensions.

Для простоты, проиллюстрированные здесь неограничительные варианты осуществления часто относятся к сигналам, которые отображаются как 2D плоскости настроек (например, 2D изображения в подходящем цветовом пространстве), например, изображение или видеосигнал (т.е. последовательность 2D изображений, развивающихся с течением времени). Однако специалисты в данной области техники без труда могут применять те же принципы и способы к любым другим типам многомерного сигнала (например, объемным сигналам, видеосигналам, 3D видеосигналам, пленоптическим сигналам и т.д.). Проиллюстрированные здесь неограничительные варианты осуществления также часто иллюстрируют случаи сигналов, закодированных в многоуровневой иерархии уровней качества (LOQ), причем более высокие уровни качества в многоуровневой иерархии имеют все более высокое разрешение (т.е. увеличенное количество выборок для одного или более из измерений сигнала). Для простоты, проиллюстрированные здесь неограничительные варианты осуществления часто относятся к простому случаю, когда разрешение увеличивается с масштабным коэффициентом два для каждого из измерений сигнала, но специалисты в данной области техники без труда могут применять те же способы также к случаям с разными (и потенциально анизотропными) масштабными коэффициентами. При работе с сигналами, кодированными в многоуровневой иерархии уровней качества, остатки, позволяющие реконструировать настройки элементов данного LOQ, управляемые (например, совмещенные с) тем же элементом более низкого LOQ, демонстрируют важные корреляции, которые эффективно используются проиллюстрированными здесь неограничительными вариантами осуществления. Для простоты, будем называть управляющий элемент плоскости (или управляющий пэл) данного множества элементов плоскости на более высоком LOQ (управляемых пэлов) родительским элементом при более низком LOQ, который совмещен с данным множеством элементов плоскости на более высоком LOQ.For simplicity, the non-limiting embodiments illustrated here often refer to signals that are displayed as 2D adjustment planes (e.g., 2D images in a suitable color space), such as an image or video signal (i.e., a sequence of 2D images evolving over time). However, those skilled in the art can easily apply the same principles and techniques to any other type of multidimensional signal (eg, surround signals, video signals, 3D video signals, plenoptic signals, etc.). The non-limiting embodiments illustrated here also often illustrate cases of signals encoded in a layered hierarchy of quality levels (LOQ), with higher quality levels in the layered hierarchy having progressively higher resolution (i.e., an increased number of samples for one or more of the signal dimensions) . For simplicity, the non-limiting embodiments illustrated here often refer to the simple case where the resolution is increased by a scale factor of two for each of the signal measurements, but those skilled in the art can easily apply the same techniques to cases with different (and potentially anisotropic) scaling factors. When dealing with signals encoded in a multilevel hierarchy of quality levels, residuals that allow reconstructing the settings of a given LOQ element driven by (eg, co-aligned with) the same element of a lower LOQ exhibit important correlations that are effectively exploited by the non-limiting embodiments illustrated here. For simplicity, we will refer to the plane control element (or control pad) of a given plane element set at a higher LOQ (managed pads) as the parent element at a lower LOQ that is aligned with a given plane element set at a higher LOQ.

Дополнительно проиллюстрированные здесь неограничительные варианты осуществления предусматривают преобразование остаточных данных (т.е. информации о корректировках для применения к элементам сигнала для получения подходящего представления сигнала при данном уровне качества) для использования как корреляции между самими остатками, так и корреляции, которая существует между остатками и представления сигнала на более низком уровне качества. В частности, чтобы эффективно кодировать остаточные данные в цифровой битовый поток, необходимы две операции: квантование (т.е. присвоение каждому значению символ, принадлежащий данному конечному алфавиту символов) и энтропийное кодирование. Преобразование символов до энтропийного кодирования позволяет снизить изменчивость кодируемых символов, тем самым, повышая эффективность энтропийного кодера. Использование представления сигнала на более низком уровне качества позволяет прогнозировать часть остаточной информации на основании информации, уже имеющейся на декодере, дополнительно повышая эффективность кодирования. Преобразование блока остатков при одновременном использовании представления сигнала на более низком уровне качества, т.е. эффективная реализация многомасштабного преобразования, также позволяет использовать корреляцию сигнала по участку сигнала, который шире самого блока: таким образом, можно оставлять размер блока чрезвычайно малым (например, даже 2x2), одновременно используя корреляцию по гораздо более широкой области, достигая одновременно преимуществ вычислительной сложности и преимуществ эффективности кодирования.The non-limiting embodiments further illustrated herein provide for transforming the residual data (i.e., the adjustment information to apply to the chips to obtain a suitable representation of the signal at a given quality level) to use both the correlation between the residuals themselves and the correlation that exists between the residuals and signal presentation at a lower quality level. In particular, in order to efficiently encode residual data into a digital bitstream, two operations are needed: quantization (ie, assigning each value a symbol belonging to a given finite alphabet of symbols) and entropy coding. Converting characters to entropy encoding reduces the variability of the encoded characters, thereby increasing the efficiency of the entropy encoder. Using a signal representation at a lower quality level allows a portion of the residual information to be predicted based on the information already available at the decoder, further improving coding efficiency. Residual block transformation while using signal representation at a lower quality level, i.e. efficient implementation of multi-scale transformation, also allows the use of signal correlation over a portion of the signal that is wider than the block itself: thus, it is possible to keep the block size extremely small (for example, even 2x2), while using correlation over a much wider area, achieving both the advantages of computational complexity and benefits of coding efficiency.

- 3 040379- 3 040379

Проиллюстрированные здесь способы, по существу, позволяют преобразовывать остатки, чтобы минимизировать количество различных символов в совокупности множеств преобразованных квантованных остаточных данных и, таким образом, уменьшить размер битового потока, необходимый для кодирования и передачи упомянутой совокупности множеств. В некоторых описанных здесь неограничительных вариантах осуществления, этап квантования осуществляется после этапа преобразования на стороне кодирования (и, следовательно, до этапа обратного преобразования на стороне декодирования), аналогично тому, как это до сих пор делалось с традиционными способами кодирования. В других описанных здесь новых неограничительных вариантах осуществления, этап квантования осуществляется до этапа преобразования на стороне кодирования (и, следовательно, после этапа обратного преобразования на стороне декодирования), эффективно реализуя способ преобразования без потерь. Осуществление этапа квантования до этапа преобразования позволяет управлять (и, при необходимости, ограничивать) ошибки, вносимые кодированием с потерями, еще до начала более вычислительно интенсивных частей кодирования. Описанный здесь неограничительный вариант осуществления также позволяет эффективно пользоваться известными корреляциями между символами, полученными посредством преобразования без потерь.The methods illustrated herein essentially allow the residuals to be transformed to minimize the number of different symbols in the set of transformed quantized residual data sets and thus reduce the bitstream size required to encode and transmit said set of sets. In some non-limiting embodiments described herein, the quantization step is performed after the transform step on the encoding side (and therefore before the inverse transform step on the decoding side), in a manner similar to how it has been done with conventional encoding methods so far. In other novel non-limiting embodiments described herein, the quantization step is performed prior to the transform step on the encoding side (and hence after the inverse transform step on the decoding side), effectively implementing a lossless transform method. The implementation of the quantization step prior to the transformation step allows you to manage (and, if necessary, limit) the errors introduced by lossy coding, even before the more computationally intensive parts of the coding. The non-restrictive embodiment described here also allows efficient use of known inter-symbol correlations obtained through a lossless transform.

Проиллюстрированный здесь неограничительный вариант осуществления часто иллюстрируют преобразования разложения, применяемые к множествам 2x2 остатков. Его следует признать неограничительным, и специалисты в данной области техники без труда могут применять те же способы к множествам остатков другого размера, включающего в себя разные размеры для каждого измерения (например, множествам 2х 1 остатков) или более чем два измерения (например, множествам LxNxM остатков в объемном изображении или в видеосигнале, где третье измерение представляет время).The non-limiting embodiment illustrated here often illustrates decomposition transformations applied to 2x2 sets of residues. It should be recognized as non-restrictive, and those skilled in the art can easily apply the same techniques to different size residual sets, including different sizes for each dimension (e.g., 2 x 1 residual sets) or more than two dimensions (e.g., LxNxM sets residuals in a volumetric image or in a video signal, where the third dimension represents time).

В описанном здесь неограничительном варианте осуществления, первый процессор сигнала (кодер) выполнен с возможностью кодирования сигнала в иерархии уровней качества, тогда как второй процессор сигнала (декодер) выполнен с возможностью декодирования представления упомянутого сигнала в иерархии уровней качества.In the non-limiting embodiment described here, the first signal processor (encoder) is configured to encode a signal in a quality layer hierarchy, while the second signal processor (decoder) is configured to decode a representation of said signal in a quality layer hierarchy.

Кодер принимает сигнал на первом уровне качества и создает представление сигнала на втором уровне качества, причем второй уровень качества ниже, чем первый уровень качества. Затем кодер обрабатывает представление сигнала на втором уровне качества, создавая прогнозируемое представление сигнала на первом уровне качества. Затем кодер генерирует остаточные данные, причем упомянутые остаточные данные соответствуют разности между сигналом на первом уровне качества и прогнозируемым представлением сигнала на первом уровне качества. Затем кодер преобразует остаточные данные путем применения преобразования разложения, создавая параметры (компоненты или остаточные компоненты). Разложение остатков для получения остаточных компонент позволяет кодеру лучше использовать корреляцию между остатками; кроме того, некоторые из компонент лучше коррелируют, чем остатки с представлением сигнала на втором уровне качества, что позволяет легче передавать их, чем непреобразованные остатки. Затем кодер обрабатывает упомянутые компоненты, упомянутое прогнозируемое представление сигнала на первом уровне качества и упомянутое представление сигнала на втором уровне качества, создавая преобразованные остатки. Затем кодер кодирует упомянутое представление сигнала на втором уровне качества и упомянутые преобразованные остатки в соответствующие кодированные данные.The encoder receives a signal at a first quality level and creates a representation of the signal at a second quality level, the second quality level being lower than the first quality level. The encoder then processes the signal representation at the second quality level, producing a predictive representation of the signal at the first quality level. The encoder then generates residual data, said residual data corresponding to the difference between the signal at the first quality level and the predicted representation of the signal at the first quality level. The encoder then transforms the residual data by applying a decomposition transform, producing parameters (components or residual components). Decomposing residuals to obtain residual components allows the encoder to better exploit the correlation between residuals; in addition, some of the components correlate better than the residuals with the signal representation at the second quality level, which makes it easier to transmit them than the untransformed residuals. The encoder then processes said components, said predictive signal representation at the first quality level, and said signal representation at the second quality level, producing transformed residuals. The encoder then encodes said second quality level signal representation and said transformed residuals into the corresponding encoded data.

Декодер принимает упомянутые кодированные данные и реконструирует, по меньшей мере, частично на основании упомянутых кодированных данных, представления сигнала на втором уровне качества и реконструированных преобразованных остатков. Декодер обрабатывает представление сигнала на втором уровне качества, создавая прогнозируемое представление сигнала на первом уровне качества, причем первый уровень качества выше, чем второй уровень качества. Декодер обрабатывает упомянутое прогнозируемое представление сигнала на первом уровне качества, упомянутое представление сигнала на втором уровне качества и упомянутые реконструированные преобразованные остатки, создавая реконструированные компоненты. Декодер применяет преобразование обратного разложения к реконструированным компонентам, создавая реконструированные остатки. Декодер объединяет прогнозируемое представление сигнала на первом уровне качества с реконструированными остатками, создавая представление сигнала на первом уровне качества.The decoder receives said encoded data and reconstructs, based at least in part on said encoded data, the signal representation at the second quality level and the reconstructed transformed residuals. The decoder processes the signal representation at the second quality level, producing a predictive signal representation at the first quality level, the first quality level being higher than the second quality level. The decoder processes said predictive signal representation at the first quality level, said signal representation at the second quality level, and said reconstructed transformed residuals to produce reconstructed components. The decoder applies an inverse decomposition transformation to the reconstructed components, producing reconstructed residuals. The decoder combines the predicted representation of the signal at the first quality level with the reconstructed residuals, producing a representation of the signal at the first quality level.

В описанном здесь неограничительном варианте осуществления, остаточные компоненты получаются путем вычислений, содержащих суммы и/или разности между остатками, и остатки получаются путем вычислений, содержащих суммы и/или разности между остаточными компонентами. В неограничительном варианте осуществления, операции, осуществляемые для кодирования преобразованных остатков, включают в себя выбор подмножества преобразованных остатков, соответствующих подмножеству смежных остатков в плоскости остатков на первом уровне качества, генерацию значения, по меньшей мере, частично на основании представления сигнала на втором (более низком) уровне качества, и объединение упомянутого значения с по меньшей мере одной из остаточных компонент, создавая подмножество преобразованных остатков, соответствующих упомянутому подмножеству остатков.In the non-limiting embodiment described here, the residuals are obtained by calculations containing the sums and/or differences between the residuals, and the residuals are obtained by calculations containing the sums and/or differences between the residuals. In a non-limiting embodiment, the operations performed to encode the transformed residuals include selecting a subset of the transformed residuals corresponding to a subset of adjacent residuals in the residual plane at a first quality level, generating a value at least in part based on a signal representation at a second (lower) ) quality level, and combining said value with at least one of the residual components, creating a subset of transformed residuals corresponding to said subset of residuals.

В других описанных здесь неограничительных вариантах осуществления, декодер обрабатывает коIn other non-limiting embodiments described here, the decoder processes the

- 4 040379 дированные данные, генерируя множество остатков, соответствующих корректировкам, подлежащим осуществлению, в элементы прогнозируемого представления сигнала на первом уровне качества для создания представления сигнала на первом уровне качества, причем упомянутое прогнозируемое представление сигнала на первом уровне качества создается декодером, по меньшей мере, частично на основании представления сигнала на втором уровне качества, причем второй уровень качества ниже, чем первый уровень качества. Декодер принимает кодированные данные, соответствующие преобразованным остаткам, и создает, по меньшей мере, частично на основании упомянутых кодированных данных, реконструированные остаточные компоненты. Затем декодер генерирует множество реконструированных остатков путем применения обратного разложения к реконструированным остаточным компонентам.- 4 040379 coded data, generating a plurality of residuals corresponding to adjustments to be made into elements of a predictive signal representation at a first quality level to create a signal representation at a first quality level, said predictive signal representation at a first quality level being generated by a decoder of at least based in part on representing the signal at a second quality level, the second quality level being lower than the first quality level. The decoder receives encoded data corresponding to the transformed residuals and generates, at least in part based on said encoded data, reconstructed residual components. The decoder then generates a set of reconstructed residuals by applying an inverse decomposition to the reconstructed residual components.

В неограничительном варианте осуществления, декодер создает упомянутые реконструированные остаточные компоненты также, по меньшей мере, частично на основании представления сигнала на втором (более низком) уровне качества. В неограничительном варианте осуществления, для каждого подмножества элементов сигнала на первом уровне качества, декодер создает множество параметров (реконструированных преобразованных остатков). Декодер создает значение, соответствующее упомянутому множеству параметров, причем упомянутое значение, по меньшей мере, частично основано на представлении сигнала на втором (более низком) уровне качества.In a non-limiting embodiment, the decoder generates said reconstructed residual components also based at least in part on the representation of the signal at the second (lower) quality level. In a non-limiting embodiment, for each subset of chips at the first quality level, the decoder generates a set of parameters (reconstructed transformed residuals). The decoder generates a value corresponding to said set of parameters, said value being at least partially based on the representation of the signal at a second (lower) quality level.

Затем декодер объединяет один или более параметров с упомянутым значением, создавая множество реконструированных остаточных компонентов, соответствующих упомянутому подмножеству элементов сигнала на первом уровне качества. Затем декодер обрабатывает реконструированные остаточные компоненты путем применения обратного разложения, создавая множество реконструированных остатков. В неограничительном варианте осуществления, каждый реконструированный остаток во множестве получается путем вычисления сумм и/или разностей между реконструированными остаточными компонентами.The decoder then combines one or more parameters with said value, producing a set of reconstructed residuals corresponding to said subset of chips at the first quality level. The decoder then processes the reconstructed residuals by applying inverse decomposition, producing a plurality of reconstructed residuals. In a non-limiting embodiment, each reconstructed residual in the set is obtained by calculating the sums and/or differences between the reconstructed residual components.

В некоторых описанных здесь неограничительных вариантах осуществления, реконструированные преобразованные остатки деквантуются до обработки для создания реконструированных остаточных компонентов, т.е. деквантование осуществляется до применения обратного разложения. В неограничительном варианте осуществления, операции деквантования, применяемые к каждому реконструированному преобразованному остатку (или к каждой реконструированной остаточной компоненте) изменяются на основании относительной позиции соответствующего преобразованного остатка во множестве преобразованных остатков.In some non-limiting embodiments described herein, the reshaped transformed residues are dequantized prior to processing to create the reshaped residual components, i.e. dequantization is carried out before applying the inverse decomposition. In a non-limiting embodiment, the dequantization operations applied to each reconstructed transformed residue (or each reconstructed residual component) are changed based on the relative position of the corresponding transformed residue in the set of transformed residues.

В других описанных здесь неограничительных вариантах осуществления, операции деквантования применяются после обратного разложения, деквантуя реконструированные остатки.In other non-limiting embodiments described herein, dequantization operations are applied after the reverse decomposition, dequantizing the reconstructed residues.

В некоторых описанных здесь неограничительных вариантах осуществления, упомянутое значение, объединенное с множеством реконструированных преобразованных остатков для создания соответствующего множества остаточных компонентов, соответствует среднему остатков во множестве (прогнозируемое среднее). В неограничительном варианте осуществления, прогнозируемое среднее множества остатков создается путем усреднения множества элементов прогнозируемого представления сигнала на первом (более высоком) уровне качества и вычитания соответствующего элемента представления сигнала на втором (более низком) уровне качества.In some non-limiting embodiments described herein, said value, combined with a set of reconstructed transformed residuals to create a corresponding set of residuals, corresponds to the mean of the residuals in the set (predicted mean). In a non-limiting embodiment, a predicted mean of a plurality of residuals is generated by averaging the plurality of predicted signal representation bins at the first (higher) quality level and subtracting the corresponding signal representation bin at the second (lower) quality level.

В некоторых описанных здесь неограничительных вариантах осуществления, разложение остатков на первом (более высоком) LOQ пользуется преимуществом того факта, что подмножество остатков, соответствующее данному подмножеству элементов плоскости (управляемых пэлов) коррелирует со значением управляющего пэла на более низком LOQ, поскольку сумма среднего прогнозируемых элементов (известного декодеру) и среднего остатков (реконструируемых декодером) соответствует значению управляющего пэла (также известному декодеру). Фактически, в отсутствие операций квантования, среднее остатков (или, эквивалентно, сумму остатков) можно точно определить по информации, уже известной на стороне декодера еще до начала для обеспечения остаточных данных. Существует несколько способов использования возможности вычисления прогнозируемого среднего остатков для повышения эффективности кодирования и декодирования остатка. В неограничительном варианте осуществления, плоскость остатков на первом LOQ делится на блоки 2x2. Для каждого блока 2x2, один из остатков не кодируется (т.е. не передается на декодер), поскольку декодер реконструирует его из трех других и из прогнозируемого среднего остатков (т.е. декодер имеет информацию, которая необходима для создания недостающих остатков на основании трех других остатков каждого блока 2x2). Когда остаточные данные квантуются, этот вариант осуществления концентрирует все накопленные ошибки квантования на одном из четырех остатков каждого блока 2x2. Другие неограничительные варианты осуществления избегают этой проблемы (по-прежнему сохраняя преимущество эффективности использования информации прогнозируемого среднего) путем применения преобразования разложения к каждому блоку остатков.In some non-limiting embodiments described here, the decomposition of the residuals at the first (higher) LOQ takes advantage of the fact that the subset of residuals corresponding to a given subset of plane elements (driven pads) correlates with the control pad value at the lower LOQ, since the sum of the average of the predicted pads (known to the decoder) and the average of the residuals (reconstructed by the decoder) corresponds to the control cell value (also known to the decoder). In fact, in the absence of quantization operations, the average of the residuals (or equivalently, the sum of the residuals) can be accurately determined from information already known at the decoder side prior to beginning to provide residual data. There are several ways to use the ability to calculate the predicted average of the residuals to improve the efficiency of encoding and decoding the residual. In a non-limiting embodiment, the residual plane at the first LOQ is divided into 2x2 blocks. For each 2x2 block, one of the residuals is not encoded (i.e., not transmitted to the decoder) because the decoder reconstructs it from the other three and from the predicted average residuals (i.e., the decoder has the information it needs to generate the missing residuals based on three other remnants of each 2x2 block). When the residual data is quantized, this embodiment concentrates all accumulated quantization errors on one of the four residuals of each 2x2 block. Other non-limiting embodiments avoid this problem (still retaining the efficiency advantage of using predicted mean information) by applying a decomposition transformation to each block of residuals.

В некоторых описанных здесь неограничительных вариантах осуществления, кодер применяет преобразование направленного разложения к каждому блоку 2x2 остатков двухмерной плоскости остатков, соответствующих представлению сигнала на первом уровне качества. В таких вариантах осуществления, четыре остаточных компоненты соответствуют четырем направлениям изменчивости для остаIn some non-limiting embodiments described herein, the encoder applies a directional decomposition transform to each block of 2x2 residuals of a two-dimensional residual plane corresponding to a signal representation at a first quality level. In such embodiments, the four residual components correspond to the four directions of variability for the remainder.

- 5 040379 точного блока 2x2: среднее (А, соответствующее наклону интенсивности, в принципе, ортогональное плоскости блока 2x2, сумма остатков, деленная на четыре), горизонтальный наклон (H, соответствующая горизонтальной разности остатков, сумма остатков слева минус сумма остатков справа), вертикальный наклон (V, соответствующий вертикальной разности остатков, сумма остатков сверху минус сумма остатков снизу) и диагональный наклон (D, соответствующий оставшимся разностям, не объясняемым простым направленным переходом в блоках 2x2 остатков).- 5 040379 fine 2x2 block: mean (A corresponding to intensity slope, in principle orthogonal to the plane of the 2x2 block, sum of residuals divided by four), horizontal slope (H corresponding to horizontal difference of residuals, sum of residuals on the left minus sum of residuals on the right), the vertical slope (V corresponding to the vertical difference of the residuals, the sum of the residuals above minus the sum of the residuals below) and the diagonal slope (D corresponding to the remaining differences not explained by a simple directional transition in 2x2 residual blocks).

Разность между средней компонентой A и прогнозируемым средним (например, без ограничения, вычисленным как сумма среднего прогнозируемых элементов минус управляющий элемент на более низком LOQ) называется дельта среднего или 5a. δa часто равна нулю для сигналов реального мира, и, в результате, часто бывает предпочтительно вычислять δa и энтропийно кодировать 5a, а не компоненту А. Горизонтальный и вертикальный наклоны блока 2x2 остатков представляют интенсивность и направление перехода: для традиционных сигналов, они, скорее всего, локально коррелируют, что, опять же, повышает эффективность энтропийного кодирования.The difference between the mean A component and the predicted mean (eg, without limitation, computed as the sum of the mean of the predicted items minus the control on the lower LOQ) is called the mean delta or 5 a . δ a is often zero for real world signals and, as a result, it is often preferable to calculate δ a and entropy encode 5 a rather than the A component. are likely to be locally correlated, which again improves the efficiency of entropy coding.

Другие неограничительные варианты осуществления применяют другие способы направленного разложения, причем по меньшей мере один из преобразованных остатков в данном множестве преобразованных остатков соответствует направленному наклону значений множества остатков, которое соответствует упомянутому данному множеству преобразованных остатков. Неограничительный вариант осуществления вычисляет преобразованные остатки путем осуществления вычислений, которые включают в себя операции обработки изображений (например, направленные преобразования, вычисления сплайнов, фильтр Собеля, вычисления градиента и т.д.).Other non-limiting embodiments employ other directional decomposition methods, wherein at least one of the transformed residues in a given transformed residue set corresponds to a directional slope of the values of the residue set that corresponds to said given transformed residue set. A non-limiting embodiment computes the transformed residuals by performing calculations that include image processing operations (eg, directional transforms, spline calculations, Sobel filter, gradient calculations, etc.).

В описанном здесь неограничительном варианте осуществления, для каждого блока NxM остатков (например, без ограничения, для каждого блока 2x2 остатков) в плоскости остатков кодер создает множество параметров, соответствующих преобразованным остаткам. Затем кодер делит параметры на подмножества - каждое из упомянутых подмножеств соответствует одному и тому же классу преобразованных остатков, причем каждый элемент подмножества соответствует блоку остатков - и по отдельности кодирует каждое из подмножеств (т.е. подмножества кодируются по отдельности, и параметры, используемые для энтропийного кодирования каждого из подмножеств, не зависят от энтропийного кодирования других подмножеств).In the non-limiting embodiment described here, for each block of NxM residuals (eg, without limitation, for each block of 2x2 residuals) in the residual plane, the encoder generates a set of parameters corresponding to the transformed residuals. The encoder then divides the parameters into subsets - each of said subsets corresponds to the same class of transformed residuals, with each element of the subset corresponding to a block of residuals - and individually encodes each of the subsets (i.e., the subsets are encoded separately, and the parameters used for entropy coding of each of the subsets do not depend on the entropy coding of other subsets).

В некоторых описанных здесь неограничительных вариантах осуществления, кодер осуществляет направленное разложение на блоках 2x2 остатков, и по отдельности (т.е. индивидуально) кодирует четыре подмножества параметров δa, H, V и D.In some non-limiting embodiments described herein, the encoder performs directional decomposition on 2x2 blocks of residuals, and individually (i.e., individually) encodes the four subsets of parameters δ a , H, V, and D.

В других неограничительных вариантах осуществления по меньшей мере один кодированный параметр соответствует нескольким преобразованным остаткам одного и того же блока остатков. В неограничительном варианте осуществления, кодер осуществляет направленное разложение на блоках 2x2 остатков, и для каждого блока 2x2 остатков создает единый параметр (т.е. Единый символ), соответствующий четырем параметрам δa, H, V, D, причем упомянутый параметр оказывается единственным кодированным параметром, соответствующим упомянутому блоку остатков. В других неограничительных вариантах осуществления, подмножества параметров δa и параметров D кодируются по отдельности, тогда как параметры H и V обрабатываются для создания единственного подмножества параметров, в котором каждый параметр соответствует параметру H и параметру V данного блока 2x2 остатков.In other non-limiting embodiments, at least one encoded parameter corresponds to multiple transformed residues of the same block of residues. In a non-restrictive embodiment, the encoder performs directional decomposition on 2x2 blocks of residuals, and for each block of 2x2 residuals creates a single parameter (i.e., a single symbol) corresponding to the four parameters δ a , H, V, D, with said parameter being the only encoded parameter corresponding to the mentioned block of residuals. In other non-limiting embodiments, the parameter subsets δ a and D parameters are encoded separately, while the H and V parameters are processed to create a single parameter subset in which each parameter corresponds to the H parameter and the V parameter of a given block of 2x2 residuals.

В других описанных здесь неограничительных вариантах осуществления, декодер принимает данные, соответствующие преобразованным остаткам для управляемых пэлов (т.е. для элементов представления на данном LOQ сигнала, декодированного в многоуровневой иерархии LOQ). Для реконструкции остатков на основании преобразованных остатков, декодер объединяет преобразованные остатки с параметрами, по меньшей мере, частично на основании представления сигнала на более низком LOQ, чем упомянутый данный LOQ. В неограничительном варианте осуществления, декодер объединяет один из преобразованных остатков с разностью между настройкой управляющего пэла на более низком LOQ и средним прогнозируемых настроек (т.е. настроек до прибавления остатков) управляемых пэлов на данном LOQ. В неограничительном варианте осуществления, каждый преобразованный остаток соответствует блоку остатков и влияет на значения всех остатков, которые принадлежат соответствующему ему блоку.In other non-limiting embodiments described herein, the decoder receives data corresponding to the transformed residuals for the controlled pels (ie, for the representation elements at a given LOQ of a signal decoded in a multilevel LOQ hierarchy). To reconstruct the residuals based on the transformed residuals, the decoder combines the transformed residuals with parameters based at least in part on representing the signal at a lower LOQ than said given LOQ. In a non-limiting embodiment, the decoder combines one of the converted residuals with the difference between the control pad setting at the lower LOQ and the average of the predicted settings (ie, settings before adding residues) of the control pads at that LOQ. In a non-limiting embodiment, each transformed residual corresponds to a block of residuals and affects the values of all residuals that belong to its corresponding block.

В других описанных здесь неограничительных вариантах осуществления, кодер выбирает блок остатков в плоскости остатков на первом (более высоком) LOQ и создает множество параметров, по меньшей мере, частично на основании остатков в упомянутом блоке и на основании представления сигнала на втором (более низком) LOQ.In other non-limiting embodiments described here, the encoder selects a block of residuals in the plane of residuals at the first (higher) LOQ and creates a set of parameters based at least in part on the residuals in said block and based on the signal representation at the second (lower) LOQ .

В других описанных здесь неограничительных вариантах осуществления, декодер принимает множество параметров, соответствующих блоку остатков в плоскости остатков на первом (более высоком) LOQ и создает множество остатков, по меньшей мере, частично на основании упомянутого множества параметров и на основании реконструированного представления сигнала на втором (более низком) LOQ.In other non-limiting embodiments described here, the decoder receives a set of parameters corresponding to a block of residuals in the plane of residuals at the first (higher) LOQ and creates a set of residuals based at least in part on said set of parameters and based on the reconstructed signal representation on the second ( lower) LOQ.

В соответствии с дополнительными неограничительными вариантами осуществления, входной сигнал кодируется и декодируется согласно способу многоуровневого иерархического кодирования, и плосAccording to additional non-limiting embodiments, the input signal is encoded and decoded according to a layered hierarchical coding method, and

- 6 040379 кости остатков для соседних выборок во временном измерении создаются, по меньшей мере, частично на основании одного и того же множества элементов (опорная плоскость), путем компенсации движения упомянутой опорной плоскости и путем ее объединения с относительными остатками, согласно способам, описанным в других патентных заявках тех же авторов. В неограничительном варианте осуществления, преобразованные относительные остатки основаны, по меньшей мере, частично на упомянутой опорной плоскости. В неограничительном варианте осуществления, опорная плоскость и плоскости относительных остатков кодируются и декодируются согласно описанным здесь способам.- 6 040379 residual bones for adjacent samples in the time dimension are created at least partially based on the same set of elements (reference plane), by compensating for the movement of said reference plane and by combining it with relative residuals, according to the methods described in other patent applications by the same authors. In a non-limiting embodiment, the converted relative residuals are based at least in part on said reference plane. In a non-limiting embodiment, the reference plane and relative residual planes are encoded and decoded according to the methods described herein.

Заметим, что рассмотренные здесь варианты осуществления можно реализовать в программном обеспечении или оборудовании или можно реализовать с использованием комбинации программного обеспечения и оборудования, и могут включать в себя конфигурацию одного или более компьютеризированных устройств, маршрутизаторов, сети, рабочих станций, карманных или портативных компьютеров, планшетов, мобильных телефонов, игровых консолей, телевизионных приставок и т.д., для осуществления и/или поддержки любой или всех из раскрытых здесь операций способа. Другими словами, одно или более компьютеризированных устройств или процессоров могут быть запрограммированы и/или выполнены с возможностью действовать объясненным здесь образом для осуществления различных вариантов осуществления.Note that the embodiments discussed herein may be implemented in software or hardware, or may be implemented using a combination of software and hardware, and may include the configuration of one or more computerized devices, routers, networks, workstations, PDAs, laptops, tablets. , mobile phones, game consoles, set-top boxes, etc., to perform and/or support any or all of the method steps disclosed herein. In other words, one or more computerized devices or processors may be programmed and/or configured to operate in the manner explained herein to carry out various embodiments.

Помимо рассмотренных выше методов, другие рассмотренные здесь варианты осуществления включают в себя программы, реализованные программными средствами, для осуществления этапов и операций, кратко перечисленных выше и подробно раскрытых ниже. Один такой вариант осуществления содержит считываемый компьютером аппаратный ресурс хранения (т.е. нетранзиторные считываемые компьютером среды), на которых закодированы логика, инструкции, и т.д. компьютерной программы, которая, при выполнении на компьютеризированном устройстве, имеющем процессор и соответствующую память, программирует и/или предписывает процессору осуществлять любую из раскрытых здесь операций. Такие конфигурации можно обеспечивать в виде программного обеспечения, кода и/или других данных (например, структур данных), размещенных или кодированных в считываемой компьютером среде, например, оптической среде (например, CD-ROM, DVD-ROM или BLU-RAY), карте флэш-памяти, гибком или жестком диске или любой другой среде, способной хранить считываемые компьютером инструкции, например, микропрограмму или микрокод в одной или более из микросхем ПЗУ или ОЗУ или ППЗУ или в виде специализированной интегральной схемы (ASIC). Программное обеспечение или микропрограмма или другая подобная конфигурации может быть установлена на компьютеризированное устройство, чтобы предписывать компьютеризированному устройству осуществлять объясненные здесь методы.In addition to the techniques discussed above, other embodiments discussed herein include software programs to perform the steps and operations summarized above and detailed below. One such embodiment comprises a computer-readable hardware storage resource (ie, non-transitive computer-readable media) on which logic, instructions, etc. are encoded. a computer program that, when executed on a computerized device having a processor and associated memory, programs and/or directs the processor to perform any of the operations disclosed herein. Such configurations may be provided in the form of software, code, and/or other data (e.g., data structures) hosted or encoded in a computer-readable medium, such as an optical medium (e.g., CD-ROM, DVD-ROM, or BLU-RAY), a flash memory card, a floppy or hard disk, or any other medium capable of storing computer-readable instructions, such as firmware or microcode, in one or more ROM or RAM or PROM chips or in the form of an application specific integrated circuit (ASIC). Software or firmware or other such configuration may be installed on the computerized device to cause the computerized device to carry out the methods explained here.

Соответственно, один конкретный вариант осуществления настоящего раскрытия относится к компьютерному программному продукту, который включает в себя считываемую компьютером аппаратную среду хранения, в которой хранятся инструкции для поддержки операций обработки сигнала.Accordingly, one particular embodiment of the present disclosure relates to a computer program product that includes a computer-readable hardware storage medium that stores instructions to support signal processing operations.

Для наглядности добавлен порядок выполнения этапов. Эти этапы можно осуществлять в любом подходящем порядке.For clarity, the order of the steps has been added. These steps can be performed in any suitable order.

Другие варианты осуществления настоящего раскрытия включают в себя программы, реализованные программными средствами, микропрограмму и/или соответствующее оборудование для осуществления любых кратко перечисленных выше и подробно раскрытых ниже этапов и операций варианта осуществления способа.Other embodiments of the present disclosure include software programs, firmware, and/or related hardware for performing any of the steps and operations of a method embodiment summarized above and detailed below.

Кроме того, следует понимать, что рассмотренные здесь систему, способ, устройство, инструкции в считываемых компьютером средах хранения и т.д. можно реализовать строго в виде программы, реализованной программными средствами, в виде комплекса программного обеспечения, микропрограммы и/или оборудования или только аппаратными средствами, например, в процессоре, или в операционной системе или в прикладной программе и т.д.In addition, it should be understood that the system, method, apparatus, instructions in computer-readable storage media, etc. discussed herein are may be implemented strictly as a program implemented in software, as a set of software, firmware, and/or hardware, or only in hardware, such as in a processor, or in an operating system, or in an application program, etc.

Как рассмотрено выше, раскрытые здесь методы хорошо подходят для использования программных, микропрограммных и/или аппаратных приложениях, которые обрабатывают сигналы и создают битовые потоки кодированных данных, или которые обрабатывают битовые потоки кодированных данных и создают представления сигналов. Однако следует отметить, что рассмотренные здесь варианты осуществления не ограничиваются использованием в таких приложениях, и что рассмотренные здесь методы хорошо подходят и для других приложений.As discussed above, the techniques disclosed herein are well suited for use in software, firmware, and/or hardware applications that process signals and generate coded data bitstreams, or that process coded data bitstreams and create signal representations. However, it should be noted that the embodiments discussed here are not limited to use in such applications, and that the methods discussed here are well suited for other applications.

Дополнительно, заметим, что хотя каждый из различных описанных здесь признаков, методов конфигураций и т.д., можно рассматривать в разных местах этого раскрытия, предполагается, что каждый из принципов может выполняться независимо друг от друга или совместно друг с другом. Соответственно, одно или более описанных здесь настоящих изобретений, вариантов осуществления и т.д. можно реализовать и рассматривать многими разными способами.Additionally, note that while each of the various features, configuration methods, etc. described herein may be considered at different places in this disclosure, it is contemplated that each of the principles may be performed independently of or in conjunction with each other. Accordingly, one or more of the present inventions, embodiments, etc. described herein can be implemented and viewed in many different ways.

Кроме того, заметим, что в этом предварительном рассмотрении рассмотренных здесь вариантов осуществления не указан каждый вариант осуществления и/или более новый аспект настоящего раскрытия или заявленного(ых) изобретения(й). Напротив, это краткое описание представляет только общие варианты осуществления и соответствующие признаки новизны по сравнению с традиционными методами. Дополнительные детали и/или возможные перспективы (перестановки) изобретения(й) читательAlso, note that this preliminary review of the embodiments discussed herein does not specify every embodiment and/or newer aspect of the present disclosure or the claimed invention(s). On the contrary, this brief description represents only general embodiments and corresponding novelties compared to conventional methods. Additional details and/or possible perspectives (permutations) of the invention(s) reader

- 7 040379 сможет найти в разделе Подробное описание и соответствующих фигурах настоящего раскрытия, которые дополнительно рассмотрены ниже.- 7 040379 can be found in the Detailed Description section and the corresponding figures of this disclosure, which are discussed further below.

Краткое описание чертежейBrief description of the drawings

Вышеописанные и другие задачи, признаки и преимущества изобретения явствуют из нижеследующего подробного описания рассмотренных здесь предпочтительных вариантов осуществления, проиллюстрированных в прилагаемых чертежах, в которых аналогичные ссылочные позиции относятся к одним и тем же частям на разных видах. Чертежи не обязательно выполнены в масштабе, но упор делается на иллюстрацию вариантов осуществления, концепций, принципов и т.д.The above and other objects, features and advantages of the invention will appear from the following detailed description of the preferred embodiments discussed herein, illustrated in the accompanying drawings, in which like reference numerals refer to the same parts throughout the various views. The drawings are not necessarily drawn to scale, but emphasis is placed on illustrating embodiments, concepts, principles, etc.

Фиг. 1А, 1В, 1С, 1D и 1E - иллюстративные схемы, описывающие системы кодирования и декодирования согласно проиллюстрированным здесь неограничительным вариантам осуществления.Fig. 1A, 1B, 1C, 1D, and 1E are illustrative diagrams describing encoding and decoding systems according to the non-limiting embodiments illustrated herein.

Фиг. 2А и 2В - иллюстративные схемы, описывающие многоуровневое иерархическое декодирование и кодирование согласно проиллюстрированным здесь неограничительным вариантам осуществления.Fig. 2A and 2B are exemplary diagrams describing multi-layer hierarchical decoding and coding according to the non-restrictive embodiments illustrated herein.

Фиг. 3А, 3В, 3С, 3D, 3Е и 3F иллюстрируют разложение и обратное разложение остатков согласно проиллюстрированным здесь неограничительным вариантам осуществления.Fig. 3A, 3B, 3C, 3D, 3E, and 3F illustrate decomposition and decompression of residues according to the non-limiting embodiments illustrated herein.

Фиг. 4А, 4В, 4С и 4D - иллюстративные схемы, описывающие обратное разложение согласно проиллюстрированным здесь неограничительным вариантам осуществления.Fig. 4A, 4B, 4C, and 4D are illustrative diagrams describing inverse decomposition according to the non-limiting embodiments illustrated herein.

Фиг. 5 иллюстрирует операции, осуществляемые декодером согласно проиллюстрированному здесь неограничительному варианту осуществления.Fig. 5 illustrates operations performed by a decoder according to the non-limiting embodiment illustrated here.

Фиг. 6 иллюстрирует блок-схема операций кодера, осуществляющего направленное разложение согласно проиллюстрированным здесь неограничительным вариантам осуществления.Fig. 6 illustrates a block diagram of an encoder performing directional decomposition according to the non-limiting embodiments illustrated herein.

Фиг. 7 иллюстрирует блок-схему операций декодера, осуществляющего обратнонаправленное разложение согласно проиллюстрированным здесь неограничительным вариантам осуществления.Fig. 7 illustrates a flow diagram of a decoder performing reverse decomposition according to the non-limiting embodiments illustrated herein.

Фиг. 8 - иллюстративная схема компьютерной системы, которая обеспечивает обработку данных согласно описанным здесь вариантам осуществления.Fig. 8 is an illustrative diagram of a computer system that provides data processing in accordance with the embodiments described herein.

Фиг. 9 - иллюстративная схема кодирования информации согласно рассмотренным здесь вариантам осуществления.Fig. 9 is an exemplary information encoding scheme according to the embodiments discussed herein.

Фиг. 10 и 11 - иллюстративные блок-схемы операций иллюстративных способов согласно рассмотренным здесь вариантам осуществления.Fig. 10 and 11 are exemplary flowcharts of operations of exemplary methods according to the embodiments discussed herein.

Подробное описание и дополнительная сводка вариантов осуществленияDetailed Description and Additional Summary of Embodiments

Проиллюстрированные здесь способы пригодны для любого типа многомерных сигналов, включающих в себя, без ограничения, звуковые сигналы, многоканальные звуковые сигналы, изображения, двухмерные изображения, видеосигналы, многовидовые видеосигналы, 3D видеосигналы, объемные сигналы, объемное видеосигналы, сигналы формирования изображения в медицинских целях, сигналы с более чем четырьмя измерениями и т.д.The methods illustrated here are suitable for any type of multi-dimensional signal, including, but not limited to, audio signals, multi-channel audio signals, images, 2D images, video signals, multi-view video signals, 3D video signals, surround signals, surround video signals, medical imaging signals, signals with more than four dimensions, etc.

Для простоты, на протяжении описания, проиллюстрированные варианты осуществления обычно предусматривают случай использования 2D изображений (например, либо отдельных изображений, либо кадров/полей видеосигнала), причем каждый элемент (в таком неограничительном примерном случае обычно именуемый пикселем, в более общем случае именуемый пэлом) характеризуется множеством настроек цвета или другого параметра в подходящем цветовом пространстве (например, YUV, RGB, HSV, и т.д.). Разные цветовые плоскости (например, плоскость яркости, Y, и две плоскости цветности, U и V) часто кодируются по отдельности и часто с разными разрешениями (вследствие более низкой чувствительности человеческого глаза к информации цветности).For simplicity, throughout the description, the illustrated embodiments typically provide for the case of using 2D images (e.g., either single images or frames/fields of a video signal), with each element (in such a non-limiting exemplary case usually referred to as a pixel, more generally referred to as a pel) characterized by a set of color or other parameter settings in a suitable color space (eg YUV, RGB, HSV, etc.). Different color planes (eg, a luminance plane, Y, and two chrominance planes, U and V) are often encoded separately and often at different resolutions (due to the lower sensitivity of the human eye to chrominance information).

Способы и проиллюстрированные здесь варианты осуществления можно использовать совместно друг с другом и/или с другими способами. Многие из предпочтительных проиллюстрированных здесь вариантов осуществления описывают методы и алгоритмы с целью достижения сжатия, т.е. кодирования подходящего представления сигнала с минимальным количеством битов. Это также является неограничительным примером: другие неограничительные варианты осуществления преследуют другие цели, например, многомасштабное кодирование и декодирование, адаптивную потоковую передачу, надежную и эффективную фильтрацию, шумоподавление сигнала (например, шумоподавление изображения, шумоподавление видеосигнала и т.д.), улучшения сигнала (например, передискретизацию сигнала, расперемежение и т.д.), генерацию метрик качества сигнала, идентификацию контента, машинное зрение, шифрование сигнала (например, защищенную связь) и т.д.The methods and embodiments illustrated herein may be used in conjunction with each other and/or with other methods. Many of the preferred embodiments illustrated herein describe methods and algorithms for achieving compression, i. encoding a suitable representation of the signal with a minimum number of bits. This is also a non-limiting example: other non-restrictive embodiments pursue other goals, such as multiscale encoding and decoding, adaptive streaming, reliable and efficient filtering, signal denoising (e.g., image denoising, video denoising, etc.), signal enhancements ( eg, signal resampling, deinterleaving, etc.), generation of signal quality metrics, content identification, machine vision, signal encryption (eg, secure communication), etc.

На фиг. 1А показана иллюстративная схема, описывающая неограничительные варианты осуществления систем кодирования и декодирования, использующих проиллюстрированные здесь способы.In FIG. 1A is an exemplary diagram describing non-limiting embodiments of encoding and decoding systems using the methods illustrated herein.

Кодер 110 принимает сигнал 100 (например, двухмерное изображение) и кодирует его в поток 115 данных. Декодер 120 принимает поток 115 данных и создает реконструированный сигнал 130. Реконструированный сигнал 130 может быть идентичен или всего лишь, по существу, аналогичен исходному сигналу 100 в зависимости от того, является ли кодирование/декодирование с потерями или без потерь.Encoder 110 receives a signal 100 (eg, a two-dimensional image) and encodes it into a data stream 115 . Decoder 120 receives data stream 115 and generates reconstructed signal 130. Reconstructed signal 130 may be identical or only substantially similar to original signal 100 depending on whether the encoding/decoding is lossy or lossless.

В одном варианте осуществления, кодер 111 принимает исходный сигнал 140 (видеосигнал, т.е. последовательность из нескольких кадров двухмерных изображений) и кодирует его в поток 116 данных, передаваемый по соответствующей линии связи целевому получателю. Декодер 121 на стороне получа- 8 040379 теля принимает поток 116 данных и создает реконструированный сигнал 150, в котором реконструированные изображения 150-1, 150-2,...,150-n являются реконструированными представлениями, соответствующими исходным изображениям 140-1, 140-2,...,140-n. Реконструированные изображения 150-1 могут быть идентичны или, по существу, аналогичны исходным изображениям 140-1 в зависимости от того, является ли соответствующее кодирование и/или декодирование с потерями или без потерь; реконструированные изображения 150-2 могут быть идентичны или, по существу, аналогичны исходным изображениям 140-2 в зависимости от того, является ли соответствующее кодирование и/или декодирование с потерями или без потерь; реконструированные изображения 150-3 могут быть идентичны или, по существу, аналогичны исходным изображениям 140-3 в зависимости от того, является ли соответствующее кодирование и/или декодирование с потерями или без потерь; и т.д.In one embodiment, the encoder 111 takes the source signal 140 (a video signal, ie, a sequence of several frames of two-dimensional images) and encodes it into a data stream 116 transmitted over the appropriate communication line to the target recipient. The decoder 121 on the receiver side receives the data stream 116 and generates a reconstructed signal 150 in which the reconstructed images 150-1, 150-2,...,150-n are reconstructed representations corresponding to the original images 140-1, 140 -2,...,140-n. The reconstructed images 150-1 may be identical or substantially similar to the original images 140-1 depending on whether the corresponding encoding and/or decoding is lossy or lossless; the reconstructed images 150-2 may be identical or substantially similar to the original images 140-2 depending on whether the corresponding encoding and/or decoding is lossy or lossless; the reconstructed images 150-3 may be identical or substantially similar to the original images 140-3 depending on whether the corresponding encoding and/or decoding is lossy or lossless; etc.

В соответствии с дополнительными вариантами осуществления, кодер 112 принимает исходный сигнал 160 (объемный сигнал, включающий в себя несколько элементов) и кодирует его в поток 117 данных. Декодер 122 принимает поток 117 данных и создает реконструированный сигнал 170 (например, представление исходного сигнала).In accordance with additional options for implementation, the encoder 112 receives the original signal 160 (surround signal, which includes several elements) and encodes it into the stream 117 data. Decoder 122 receives data stream 117 and creates a reconstructed signal 170 (eg, a representation of the original signal).

На фиг. 1В показана неограничительная иллюстративная схема, демонстрирующая систему многомасштабного кодирования и декодирования согласно рассмотренным здесь вариантам осуществления.In FIG. 1B is a non-restrictive illustrative diagram illustrating a multi-scale encoding and decoding system according to the embodiments discussed herein.

В одном варианте осуществления, кодер 111 принимает исходный сигнал 140 и кодирует его в многомасштабный поток 116 данных. В этом иллюстративном варианте осуществления, декодер 121-2 принимает поток 116 данных и создает реконструированный сигнал на более низком LOQ 151 (например, включающий в себя кадры 151-1, 151-2 и т.д.) на первом (более низком) уровне качества, чем исходный сигнал и/или сигнал 150.In one embodiment, encoder 111 takes the original signal 140 and encodes it into a multiscale data stream 116. In this exemplary embodiment, decoder 121-2 receives data stream 116 and creates a reconstructed signal at a lower LOQ 151 (eg, including frames 151-1, 151-2, etc.) at a first (lower) level quality than the original signal and/or signal 150.

Дополнительно, в этом иллюстративном варианте осуществления, декодер 121-1 принимает поток 116 данных и создает реконструированный сигнал на более высоком LOQ 150 (например, на втором уровне качества). В этом иллюстративном варианте осуществления, второй уровень качества выше первого.Additionally, in this exemplary embodiment, decoder 121-1 receives data stream 116 and creates a reconstructed signal at a higher LOQ 150 (eg, second quality level). In this exemplary embodiment, the second quality level is higher than the first.

В неограничительном варианте осуществления, второй уровень качества имеет более высокое разрешение (пространственное и/или временное), чем первый уровень качества. В другом неограничительном варианте осуществления, декодер 121-2 использует методы декодирования на основе MPEG (например, MPEG2, MPEG4, h.264 и т.д.) для декодирования потока 116 данных. В еще одном неограничительном варианте осуществления, декодер 121-1 создает реконструированный сигнал на более низком LOQ 151 и затем реконструирует или выводит реконструированный сигнал на более высоком LOQ 150, по меньшей мере, частично на основании первого воспроизведения реконструированного сигнала на более низком LOQ 151. Другими словами, декодер 121-1 использует первый участок кодированного в потоке 116 данных для воспроизведения представлений сигнала 151 (например, 151-1, 151-2 и т.д.). После этого, декодер 121-1 использует второй участок данных в потоке 116 данных для повышающей дискретизации и модификации представлений сигнала 151 в представления сигнала 150.In a non-limiting embodiment, the second quality level has a higher resolution (spatial and/or temporal) than the first quality level. In another non-limiting embodiment, decoder 121-2 uses MPEG-based decoding techniques (eg, MPEG2, MPEG4, h.264, etc.) to decode data stream 116. In yet another non-limiting embodiment, decoder 121-1 generates the reconstructed signal at the lower LOQ 151 and then reconstructs or outputs the reconstructed signal at the higher LOQ 150 at least in part based on the first playback of the reconstructed signal at the lower LOQ 151. In others in other words, decoder 121-1 uses the first portion of data encoded in stream 116 to reproduce representations of signal 151 (eg, 151-1, 151-2, etc.). Thereafter, decoder 121-1 uses the second chunk of data in data stream 116 to upsample and modify signal representations 151 into signal representations 150.

В неограничительном варианте осуществления, второй уровень качества имеет разрешение, полученное повышающей дискретизацией с масштабным коэффициентом два в каждом пространственном измерении первого уровня качества. Например, поток 116 данных может быть сконфигурирован для включения первого участка данных реконструкции, указывающего, как воспроизводить исходный элемент представления сигнала на первом уровне качества. Дополнительные данные реконструкции в потоке 116 данных может указывать, как преобразовывать элемент на первом уровне качества в несколько элементов на втором уровне качества. В порядке неограничительного примера, несколько элементов на втором уровне качества обеспечивают более высокое разрешение исходного элемента на первом уровне качества. Повторяя эти этапы, низкое разрешение изображения можно преобразовывать в изображения более высокого разрешения. Изображения более высокого разрешения обеспечивают больше деталей изображения (поскольку оно включает в себя намного больше элементов изображения) и, таким образом, возможно, являются более привлекательными для наблюдателя.In a non-limiting embodiment, the second quality level has a resolution obtained by upsampling with a scale factor of two in each spatial dimension of the first quality level. For example, data stream 116 may be configured to include a first chunk of reconstruction data indicating how to reproduce the original signal representation element at a first quality level. Additional reconstruction data in data stream 116 may indicate how to transform an element at the first quality level into multiple elements at the second quality level. By way of non-limiting example, multiple elements at the second quality level provide a higher resolution of the original element at the first quality level. By repeating these steps, low resolution images can be converted to higher resolution images. Higher resolution images provide more image detail (because it includes many more image elements) and thus arguably be more attractive to the viewer.

В других неограничительных вариантах осуществления, второй уровень качества имеет разрешение, полученное повышающей дискретизацией с конкретным масштабным коэффициентом (включающим в себя нецелые масштабные коэффициенты и/или масштабные коэффициенты, равные 1) каждого из измерений сигнала.In other non-limiting embodiments, the second quality level has a resolution obtained by upsampling with a specific scale factor (including non-integer scale factors and/or scale factors equal to 1) of each of the signal measurements.

В порядке примера, в неограничительном иллюстративном варианте осуществления, декодирующий процессор сигнала телевизионного декодера (например, без ограничения, телевизионной приставки) программируется для реализации способа, как показано на фиг. 1В, причем поток 116 данных соответствует принятому широковещательному сигналу. Таким образом, традиционные декодеры принимают один и тот же поток 116 данных, но просто игнорируют дополнительные данные, что позволяет реконструировать представления сигнала на более высоком уровне качества. Как упомянуто, более высокий уровень качества может быть представлением сигнала с более высоким разрешением.By way of example, in a non-limiting illustrative embodiment, the decoding signal processor of a television decoder (eg, without limitation, a set-top box) is programmed to implement the method as shown in FIG. 1B, with data stream 116 corresponding to the received broadcast signal. Thus, conventional decoders receive the same data stream 116 but simply ignore the additional data, allowing the signal representations to be reconstructed at a higher quality level. As mentioned, a higher quality level may be a higher resolution signal representation.

В других неограничительных вариантах осуществления, сервер потоковой передачи обрабатывает кодированный поток 116 данных и, в соответствии с характеристиками декодера и/или с перегрузкой полосы, генерирует версию потока данных, который включает в себя только кодированные данные, не- 9 040379 обходимые для декодирования сигнала, до данного уровня качества (в отличие от максимально возможного уровня качества). В таком примере, полоса не растрачивается на передачу данных, которые не будут использоваться для реконструкции представления исходного сигнала.In other non-limiting embodiments, the streaming server processes the encoded data stream 116 and, in accordance with the characteristics of the decoder and/or bandwidth congestion, generates a version of the data stream that includes only the encoded data needed to decode the signal, to a given quality level (as opposed to the highest possible quality level). In such an example, no bandwidth is wasted on transmitting data that will not be used to reconstruct the representation of the original signal.

Фиг. 1С иллюстрирует неограничительный иллюстративный вариант осуществления многоуровневого иерархического кодирования и декодирования двухмерного изображения, с масштабными коэффициентами два в обоих измерениях между любыми последующими уровнями качества согласно рассмотренным здесь вариантам осуществления.Fig. 1C illustrates a non-restrictive exemplary embodiment of multi-level hierarchical encoding and decoding of a two-dimensional image, with scaling factors of two in both dimensions between any subsequent quality levels, according to the embodiments discussed here.

В этом иллюстративном варианте осуществления, изображение 130-3 является представлением изображения при данном уровне качества, и, в частности, имеет разрешение 8x8 элементов. Изображение 130-4 является представлением того же изображения на ближайшем снизу уровне качества и имеет разрешение 4x4 элемента.In this exemplary embodiment, image 130-3 is a representation of an image at a given quality level, and specifically has a resolution of 8x8 pixels. Image 130-4 is a representation of the same image at the next lower quality level and has a resolution of 4x4 elements.

Элемент 130-4-1 более низкого LOQ совмещен с элементами 130-3-1, 130-3-2, 130-3-3 и 130-3-4 более высокого LOQ. В этом иллюстративном варианте осуществления, элемент 130-4-1, таким образом, является управляющим элементом (или управляющим пэлом или родительским элементом) элементов 130-3-1, 130-3-2, 130-3-3 и 130-3-4 (управляемых элементов или подэлементов).The lower LOQ element 130-4-1 is aligned with the higher LOQ elements 130-3-1, 130-3-2, 130-3-3 and 130-3-4. In this exemplary embodiment, element 130-4-1 is thus the control element (or control panel or parent element) of elements 130-3-1, 130-3-2, 130-3-3, and 130-3- 4 (managed elements or sub-elements).

Другие неограничительные варианты осуществления применяют те же способы на изображениях с более чем двумя измерениями, создавая многоуровневые иерархии с подходящими масштабными коэффициентами для каждого уровня, включающими в себя нецелые масштабные коэффициенты и/или разные масштабные коэффициенты для разных измерений и/или разные масштабные коэффициенты по иерархии.Other non-limiting embodiments apply the same techniques on images with more than two dimensions, creating layered hierarchies with appropriate scale factors for each level, including non-integer scale factors and/or different scale factors for different dimensions and/or different scale factors across the hierarchy .

Фиг. 1D иллюстрирует другой неограничительный иллюстративный вариант осуществления многоуровневого иерархического кодирования и декодирования двухмерного изображения, с масштабными коэффициентами два в обоих измерениях между LOQ N-1 и LOQ N согласно рассмотренным здесь вариантам осуществления.Fig. 1D illustrates another non-restrictive exemplary embodiment of layered hierarchical encoding and decoding of a 2D image, with scaling factors of two in both dimensions between LOQ N-1 and LOQ N, according to the embodiments discussed here.

Родительский элемент 130-(N-1)-1 с LOQ N-1 (управляющий элемент) совмещен с соответствующими четырьмя подэлементами 130-N-1 с LOQ N (управляемыми элементами). В общем случае, родительский элемент 130-(N-1)-1 используется как основа для воспроизведения (например, путем повышающей дискретизации, сопровождаемой корректировками с использованием остаточных данных) соответствующих четырех подэлементов 130-N-1.The parent element 130-(N-1)-1 with LOQ N-1 (control element) is aligned with the corresponding four sub-elements 130-N-1 with LOQ N (control elements). In general, parent element 130-(N-1)-1 is used as the basis for reproducing (eg, by upsampling followed by adjustments using residual data) the respective four sub-elements 130-N-1.

Фиг. 1E иллюстрирует другой неограничительный иллюстративный вариант осуществления многоуровневого иерархического кодирования и декодирования двухмерного изображения, с нецелыми масштабными коэффициентами 3/2 в обоих измерениях между LOQ N-1 и LOQ N согласно рассмотренным здесь вариантам осуществления.Fig. 1E illustrates another non-restrictive exemplary embodiment of layered hierarchical encoding and decoding of a 2D image, with non-integer scaling factors of 3/2 in both dimensions between LOQ N-1 and LOQ N, according to the embodiments discussed here.

Родительский блок 130-(N-1)-2 с LOQ N-1 (группа управляющих элементов, поскольку в этом случае ни один элемент с LOQ N-1 точно не совмещен со множеством элементов с LOQ N) совмещен с подэлементами 130-N-2 с LOQ N (множеством управляемых элементов). В этом неограничительном примере, вычисление прогнозируемого среднего для остатков, соответствующих подэлементам 130-N-2 может требовать обработки как прогнозируемого представления подэлементов 130-N-2, так и родительского блока 130-(N-1)-2 (в отличие от единичного родительского элемента).Parent block 130-(N-1)-2 with LOQ N-1 (group of controls, since in this case no element with LOQ N-1 is exactly aligned with multiple elements with LOQ N) is aligned with sub-elements 130-N- 2 with LOQ N (Many Controlled Elements). In this non-limiting example, calculating the predicted average of the residuals corresponding to subelements 130-N-2 may require processing both the predictive representation of subelements 130-N-2 and the parent block 130-(N-1)-2 (as opposed to a single parent element).

Для простоты и с целью дополнительной иллюстрации, следующие участки раскрытия включают в себя примеры, использующие масштабные коэффициенты два от одного уровня качества к следующему. Однако специалисты в данной области техники без труда могут приспособить все способы, описанные здесь для многоуровневых иерархий, с любым из нескольких различных типов масштабных коэффициентов, включающих в себя анизотропные и/или нецелые масштабные коэффициенты.For simplicity and for purposes of further illustration, the following portions of the disclosure include examples using scale factors of two from one quality level to the next. However, those skilled in the art can easily adapt all of the methods described here for multi-level hierarchies to any of several different types of scale factors, including anisotropic and/or non-integer scale factors.

На фиг. 2А показана иллюстративная схема, описывающая декодирование сигнала в многоуровневой иерархии уровней качества согласно рассмотренным здесь вариантам осуществления.In FIG. 2A is an exemplary diagram describing signal decoding in a layered hierarchy of quality levels according to the embodiments discussed herein.

В этом иллюстративном варианте осуществления декодер 210 принимает данные 200-1 реконструкции и создает декодированное изображение 245-(N-1) с LOQ N-1 (в этом примере, нижним уровнем качества или более низким уровнем качества).In this exemplary embodiment, decoder 210 receives reconstruction data 200-1 and creates a decoded image 245-(N-1) with LOQ N-1 (in this example, lower quality level or lower quality level).

Вычислитель прогнозирования для следующего LOQ 220-1 обрабатывает изображение 245-(N-1) операциями, указанными соответствующими параметрами для операций 215-1, создавая прогнозируемое изображение 225-1. Предполагая коэффициент увеличения масштаба 2x2, вычислитель 220-1 создает прогнозируемое изображение 225-1, указывающее настройки для блока 8x8 элементов.The prediction calculator for the next LOQ 220-1 processes the image 245-(N-1) with the operations indicated by the corresponding parameters for the operations 215-1, producing a prediction image 225-1. Assuming a 2x2 zoom factor, calculator 220-1 creates a predictive image 225-1 indicating settings for an 8x8 block.

Декодер 230 принимает данные 200-2 реконструкции и создает остатки 240 (т.е. данные реконструкции или остаточные данные). В этом иллюстративном варианте осуществления, остатки 240 могут представлять собой матрицу 8x8 информации настроек элементов, согласующейся с количеством элементов в изображении 245-N.Decoder 230 receives reconstruction data 200-2 and creates residuals 240 (ie, reconstruction data or residual data). In this exemplary embodiment, the residuals 240 may be an 8x8 matrix of element setting information consistent with the number of elements in the image 245-N.

Прогнозируемое изображение 225-1, также создаваемое вычислителем 220, также может представлять собой матрицу 8x8 информации настроек элементов, согласующейся с количеством элементов в изображении 245-N.The predictive image 225-1, also generated by calculator 220, may also be an 8x8 matrix of element setting information consistent with the number of elements in image 245-N.

В одном варианте осуществления повышающая дискретизация изображения 245-(N-1) в прогнози- 10 040379 руемое изображение 225-1 является всего лишь изображениями основы, включающими в себя 8x8 элементов. Прогнозируемое изображение 225-1 и остатки 240 объединяются, на поэлементной основе, создавая декодированное изображение 245-N, которое является представлением сигнала с LOQ N (например, 8x8 элементов). В одном варианте осуществления, остатки 240 включают в себя множество 8x8 элементов, которые суммируются или объединяются с элементами в прогнозируемом изображении 225-1 для создания изображения 245-N. Применение остатков 240 к прогнозируемому изображению 225-1 создает более точное представление сигнала на соответствующем уровне качества. Другими словами, представление сигнала 245-N является более точным представлением исходного сигнала, чем прогнозируемое изображение 225-1.In one embodiment, the upsampling of image 245-(N-1) into predictive image 225-1 is just base images including 8x8 elements. The predicted picture 225-1 and the residuals 240 are combined, on an element-by-element basis, to create a decoded image 245-N, which is a signal representation with LOQ N (eg, 8x8 elements). In one embodiment, residuals 240 include a plurality of 8x8 elements that are added or combined with elements in predictive image 225-1 to create image 245-N. Applying residuals 240 to predictive image 225-1 creates a more accurate representation of the signal at an appropriate quality level. In other words, the signal representation 245-N is a more accurate representation of the original signal than the predicted image 225-1.

Представления сигнала на каждом следующим в порядке возрастания LOQ можно создавать согласно тому же способу: создание, на основании представления на текущем LOQ, прогнозируемого представления на следующем в порядке возрастания LOQ; декодирование остатков; объединение прогнозируемого представления на более высоком LOQ с декодированными остатками, создавая представление сигнала на более высоком LOQ. Объединение может включать в себя, для каждого элемента в массиве, выбор положения элемента в прогнозируемом изображении 225-1 и остатках 240 и суммирование значений для создания значения для соответствующего элемента в изображении 245-N.Signal representations at each ascending LOQ may be created according to the same method: generating, based on the representation at the current LOQ, a predictive representation at the next ascending LOQ; decoding residuals; combining the predicted representation at the higher LOQ with the decoded residuals, producing a representation of the signal at the higher LOQ. The merging may include, for each element in the array, selecting the position of the element in the predictive image 225-1 and the residuals 240 and summing the values to create a value for the corresponding element in the image 245-N.

В неограничительном варианте осуществления декодер 210 использует, для декодирования данных 200-1 реконструкции, способ декодирования, который отличается от способа декодирования, используемого декодером 230. В одном неограничительном иллюстративном варианте осуществления, декодер 210 реализует способ декодирования H.264.In a non-limiting embodiment, decoder 210 uses, to decode reconstruction data 200-1, a decoding method that is different from the decoding method used by decoder 230. In one non-limiting illustrative embodiment, decoder 210 implements an H.264 decoding method.

В других неограничительных вариантах осуществления декодер 230 создает остатки 240 на основании множества кодированных данных (кодированные данные опорной плоскости) которое используется также для создания остатков для соседнего изображения в последовательности изображений.In other non-limiting embodiments, decoder 230 creates residuals 240 based on a set of encoded data (reference plane encoded data) that is also used to generate residuals for an adjacent image in the image sequence.

Таким образом, любой подходящий алгоритм повышающей дискретизации можно использовать для преобразования сигнала или изображения основы на первом уровне качества в прогнозируемое изображение более высокого разрешения на следующем в порядке возрастания уровне качества.Thus, any suitable upsampling algorithm can be used to convert a baseband signal or image at the first quality level to a higher resolution predictive image at the next quality level in ascending order.

На фиг. 2В показана иллюстративная схема, описывающая кодер, кодирующий сигнал в многоуровневой иерархии уровней качества согласно рассмотренным здесь вариантам осуществления.In FIG. 2B is an exemplary diagram describing an encoder encoding a signal in a layered hierarchy of quality levels according to the embodiments discussed herein.

Процессор сигнала, сконфигурированный как кодер, принимает в качестве входного изображения 130-0 с LOQ #0, например, изображение с более высоким разрешением. Изображение 130-0 обрабатывается понижающим дискретизатором 250-0, создавая изображение 130-1 с LOQ #-1. Изображение 130-1 обрабатывается понижающим дискретизатором 251-1, создавая изображение 130-2 на следующем в порядке убывания LOQ #-2. Этот процесс понижающей дискретизации повторяется, пока не будет создано изображение 130-В на нижнем LOQ #В (еще более низком уровне качества).The signal processor configured as an encoder receives as an input image 130-0 with LOQ #0, for example, a higher resolution image. Image 130-0 is downsampled 250-0 to create image 130-1 with LOQ #-1. Image 130-1 is processed by the downsampler 251-1 to create image 130-2 at the next in descending order LOQ #-2. This downsampling process is repeated until a 130-B image is created at a lower LOQ #B (an even lower quality level).

После создания изображения 130-В на самом низком уровне качества, кодер начинает создавать данные реконструкции (остаточные данные или корректировочные значения), которые потребуются на стороне декодирования (т.е. на декодере) для реконструкции представления исходного сигнала на разных уровнях качества (или, точнее говоря, многоуровневой иерархии представлений сигнала).After creating the image 130-B at the lowest quality level, the encoder begins to create reconstruction data (residual data or correction values) that will be required on the decoding side (i.e., at the decoder) to reconstruct the representation of the original signal at different quality levels (or, more precisely, a multi-level hierarchy of signal representations).

В этом иллюстративном варианте осуществления с этой целью кодер создает данные реконструкции для нижнего LOQ (начального LOQ для реконструкция сигнала), и затем имитирует все операции, которые будут осуществляться декодером для постепенной реконструкции, на основании более низкого LOQ, к каждому следующему в порядке возрастания LOQ. Создание корректировочных значений для каждого элемента при перемещении вверх по иерархии, позволяет соответствующему декодеру воспроизводить представление исходного сигнала на каждом из нескольких уровней качества.In this illustrative embodiment, for this purpose, the encoder creates reconstruction data for the lower LOQ (the initial LOQ for signal reconstruction), and then simulates all the operations that will be performed by the decoder for gradual reconstruction, based on the lower LOQ, to each next LOQ in ascending order. . Creating adjustment values for each element as you move up the hierarchy allows the appropriate decoder to reproduce a representation of the original signal at each of several quality levels.

В одном варианте осуществления самый низкий уровень качества является самым низким разрешением. Последовательно более высокие уровни качества представляют представления сигнала с более высоким разрешением.In one embodiment, the lowest quality level is the lowest resolution. Successively higher quality levels represent higher resolution representations of the signal.

В этом иллюстративном варианте осуществления изображение 130-В обрабатывается вычислителем 260+В остатка, создавая остаточные данные RB 270+В. Остаточные данные 270+В обрабатывается генератором данных 280+В реконструкции, с образованием данных 290+В реконструкции.In this exemplary embodiment, image 130-B is processed by residual calculator 260+B to produce residual data R B 270+B. The 270+V residual data is processed by the 280+V reconstruction data generator to generate 290+V reconstruction data.

Данные 290+В реконструкции обрабатывается имитационным декодером 2100+В, с образованием представления сигнала 245-В на нижнем LOQ #В и прогнозируемого представления 225-(В+1) с LOQ #(В+1). Прогнозируемые представления на любом данном LOQ #N обрабатываются кодером совместно с соответствующим изображением 130-N для создания остаточных данных.The reconstruction data 290+B is processed by the simulation decoder 2100+B to form a signal representation 245-B at the lower LOQ #B and a predictive representation 225-(B+1) with LOQ #(B+1). The predicted views at any given LOQ #N are processed by the encoder in conjunction with the corresponding picture 130-N to create residual data.

Вычислитель 261 остатка принимает изображение 130-1 с LOQ #-1 и прогнозируемое представление 225-(-1) с LOQ #-1, создавая остаточные данные 271. В одном варианте осуществления, остаточные данные 271 (или данные реконструкции) включают в себя корректировочные значения, подлежащие применению к принятому прогнозируемому представлению 225-(-1) для воспроизведения представления сигнала на соответствующем уровне качества #-1. Остаточные данные 271 обрабатывается генератором данных 281 реконструкции, с образованием данных 291 реконструкции.Residual calculator 261 receives image 130-1 with LOQ #-1 and predictive representation 225-(-1) with LOQ #-1, producing residual data 271. In one embodiment, residual data 271 (or reconstruction data) includes correction values to be applied to the received predictive representation 225-(-1) to reproduce the signal representation at the corresponding quality level #-1. The residual data 271 is processed by the reconstruction data generator 281 to generate reconstruction data 291 .

Данные 291 реконструкции обрабатывается имитационным декодером 2101, с образованием предThe reconstruction data 291 is processed by the simulation decoder 2101 to form a pre

- 11 040379 ставления сигнала 245-1 с LOQ #-1 и прогнозируемого представления 225-0 с LOQ #0.- 11 040379 setting signal 245-1 with LOQ #-1 and predictive presentation 225-0 with LOQ #0.

Вычислитель 260 остатка принимает исходное изображение 130-0 с LOQ #0 и прогнозируемое представление 225-0 с LOQ #0, создавая остаточные данные 270. В одном варианте осуществления, остаточные данные 270 (или данные реконструкции) включают в себя корректировочные значения, подлежащие применению к принятому прогнозируемому представлению 225-0 для воспроизведения представления сигнала на соответствующем уровне качества #0. Остаточные данные 270 обрабатывается генератором данных 280 реконструкции, с образованием данных 290 реконструкции.Residual calculator 260 receives original image 130-0 with LOQ #0 and predictive representation 225-0 with LOQ #0, producing residual data 270. In one embodiment, residual data 270 (or reconstruction data) includes correction values to be applied to the received predictive representation 225-0 to reproduce the signal representation at the corresponding quality level #0. The residual data 270 is processed by the reconstruction data generator 280 to generate reconstruction data 290 .

Данные 290 реконструкции обрабатывается имитационным декодером 2100, с образованием представления сигнала 245-0, которое является представлением сигнала на самом высоком LOQ в иерархии представлений, которые будут генерироваться на стороне декодирования.The reconstruction data 290 is processed by the simulation decoder 2100 to form a signal representation 245-0, which is the highest LOQ signal representation in the representation hierarchy to be generated on the decoding side.

В неограничительном варианте осуществления кодер удостоверяется в том, что представление 2450 надлежащим образом аналогично исходному изображению 130-0, согласно метрике качества. Если значение метрики качества падает ниже порога, кодер повторно обрабатывает данные реконструкции для одного или более LOQ (например, корректируя подходящие параметры кодирования), пока метрика качества для сходства между 245-0 и 130-0 не превысит порог.In a non-limiting embodiment, the encoder makes sure that the representation 2450 is appropriately similar to the original image 130-0 according to the quality metric. If the quality metric value falls below the threshold, the encoder reprocesses the reconstruction data for one or more LOQs (eg, adjusting the appropriate encoding parameters) until the quality metric for similarity between 245-0 and 130-0 exceeds the threshold.

В другом неограничительном варианте осуществления кодер удостоверяется в том, что величина битового потока, необходимая для кодирования данных 290, 291,...,290+В реконструкции, ниже максимального порога. Если необходимая величина битового потока выше порога, кодер повторно обрабатывает данные реконструкции для одного или более LOQ (например, корректируя подходящие параметры кодирования), пока необходимый объем данных, подлежащих передаче в битовом потоке, не окажется ниже порога.In another non-restrictive embodiment, the encoder makes sure that the amount of bitstream required to encode reconstruction data 290, 291,...,290+B is below a maximum threshold. If the required bitstream value is above a threshold, the encoder reprocesses the reconstruction data for one or more LOQs (eg, adjusting the appropriate encoding parameters) until the required amount of data to be transmitted in the bitstream is below the threshold.

Фиг. 3А и 3В иллюстрируют пример направленного разложения согласно рассмотренным здесь вариантам осуществления. Направленное разложение применяется к группировкам из блоков 2x2 остатков, в случае 2D повышающей дискретизации с масштабным коэффициентом два в обоих измерениях (т.е. для каждого родительского элемента с LOQ #(N-1) существует четыре управляемых пэла (т.е. элемента изображения) на следующем в порядке возрастания LOQ #N, и, следовательно, четыре остатка нужно декодировать, чтобы надлежащим образом реконструировать упомянутые управляемые пэлы.Fig. 3A and 3B illustrate an example of directional decomposition according to the embodiments discussed here. Directional decomposition is applied to groupings of 2x2 blocks of residuals, in the case of 2D upsampling with a scale factor of two in both dimensions (i.e. for each parent element with LOQ #(N-1) there are four managed pals (i.e. picture elements ) on the next in ascending order LOQ #N, and therefore four residues need to be decoded in order to properly reconstruct said controlled pads.

Направленное разложение представляет способ кодирования данных реконструкции (например, остаточных данных) полезным образом.Directional decomposition provides a way to encode reconstruction data (eg, residual data) in a useful way.

В этом примере предполагается, что блок остатков 300 представляет собой участок плоскости остаточных данных на данном LOQ #N, который обрабатывается декодером и объединяется с прогнозируемым представлением сигнала на данном LOQ #N для создания представления сигнала на упомянутом данном LOQ #N. В частности, блок остатков 300 образован четырьмя остатками ri,j, ri,j+1, ri+1,j и ri+1,j+1. Остаток ri,j представляет собой корректировочное значение, указывающее, как модифицировать соответствующий элемент pi,j в прогнозируемом изображении для воспроизведения представления элемента xi,j; данные реконструкции ri,j+1 представляет собой корректировочное значение, указывающее, как модифицировать соответствующий элемент pi,j+1 в прогнозируемом изображении для воспроизведения представления элемента xi,j+1; данные реконструкции ri+1,j представляет собой корректировочное значение, указывающее, как модифицировать соответствующий элемент Pi+1,j в прогнозируемом изображении для воспроизведения представления элемента xi+1,j; данные реконструкции ri+1,j+1 представляет собой корректировочное значение, указывающее, как модифицировать соответствующий элемент Pi+1,j+1 в прогнозируемом изображении для воспроизведения представления элемента xi+1,j+1.In this example, it is assumed that residual block 300 is a portion of the residual data plane at a given LOQ #N that is processed by a decoder and combined with a predicted signal representation at a given LOQ #N to create a signal representation at said given LOQ #N. In particular, the block of residues 300 is formed by four residues ri,j, ri,j +1 , r i+1 ,j and r i+1 ,j +1 . The remainder ri,j is an adjustment value indicating how to modify the corresponding element pi,j in the prediction image to reproduce the representation of the element xi,j; the reconstruction data ri,j +1 is an adjustment value indicating how to modify the corresponding element pi,j +1 in the prediction image to reproduce the representation of the element xi,j +1 ; reconstruction data r i+1 ,j is a correction value indicating how to modify the corresponding element P i+1 ,j in the prediction image to reproduce the representation of element x i+1 ,j; reconstruction data r i+1 ,j +1 is an adjustment value indicating how to modify the corresponding element P i+1 ,j +1 in the prediction image to reproduce the representation of element x i+1 ,j +1 .

В частности, блок остатков 300 соответствует блоку 305 элементов изображения xi,j, xi,j+1, xi+1,j, xi+1,j+1 c LOQ #N, управляемых родительским элементом y1 306 на более низком LOQ #(N-1), который был сгенерирован кодером на основании элементов изображения с LOQ #N.In particular, the block of residuals 300 corresponds to the block 305 of pixel elements xi,j, xi,j +1 , x i+1 ,j, x i+1 ,j +1 c LOQ #N controlled by the parent element y 1 306 at the lower LOQ #(N-1), which was generated by the encoder based on the pixels with LOQ #N.

В этом неограничительном варианте осуществления настройки y1 родительского элемента генерировались посредством квантования взвешенного среднего настроек элементов, соответствующих блоку 300, согласно одному из нескольких алгоритмов понижающей дискретизации, например, ядра билинейной фильтрации и с позицией дискретизации родительского элемента, находящейся в центре блока (т.е. в неограничительном случае билинейной фильтрации родительский элемент соответствует простому среднему управляемых пэлов). В результате, сумма остатков управляемых пэлов (т.е. сумма ry, ri,j+1, ri+1,j и ri+1,j+1) зависит, по меньшей мере, частично от настройки родительского элемента y1; фактически, в отсутствие операций квантования, она будет точно определяться родительским элементом, который уже известен декодеру из времени начала реконструкции блока 300.In this non-restrictive embodiment, the parent element settings y 1 were generated by quantizing the weighted average of the element settings corresponding to block 300 according to one of several downsampling algorithms, such as a bilinear filter kernel, and with the parent element sampling position being at the center of the block (i.e. .in the non-restrictive case of bilinear filtering, the parent element corresponds to the simple average of the controlled pels). As a result, the sum of the residuals of the controlled pels (i.e. the sum of ry, ri,j +1 , r i+1 ,j and r i+1 ,j +1 ) depends at least in part on the setting of the parent element y 1 ; in fact, in the absence of quantization operations, it will be exactly determined by the parent element, which is already known to the decoder from the start time of block 300 reconstruction.

Чтобы надлежащим образом использовать такую информацию, рассмотренный здесь кодер осуществляет преобразование разложения, которое совместно пользуется преимуществом двух типов корреляции:To make proper use of such information, the encoder discussed here performs a decomposition transformation that takes advantage of two types of correlation together:

(1) автокорреляции между остатками блока 300, и (2) корреляции между остатками блока 300, прогнозируемыми элементами, соответствующими блоку 300, и родительскому элементу.(1) autocorrelations between block 300 residuals, and (2) correlations between block 300 residuals, predictors corresponding to block 300, and the parent element.

Как упомянуто, разложение является способом кодирования остатков 300 в разные форматы (например, направленные компоненты 320 и затем преобразованные остатки 350, которые больше подходятAs mentioned, decomposition is a way of encoding residues 300 into different formats (for example, directed components 320 and then converted residues 350 that are more suitable

- 12 040379 для передачи по линии связи на удаленное целевое устройство, которое декодирует данные для воспроизведения изображения).- 12 040379 for transmission over the link to a remote target device that decodes the data to reproduce the image).

В частности, в этом иллюстративном варианте осуществления, чтобы использовать автокорреляцию между остатками, кодер применяет к остаткам преобразование направленного разложения, создавая четыре направленных компонента A, H, V и D:Specifically, in this exemplary embodiment, in order to exploit autocorrelation between residuals, the encoder applies a directional decomposition transform to the residuals, producing four directional components A, H, V, and D:

A - среднее остатков гц, Гц+1, η+υ, Γί+υ+1;A - the average of the residues g c , Hz+1, η+ υ , Γί+ υ +1;

H - горизонтальный/широтный наклон упомянутых остатков;H is the horizontal/latitudinal slope of said residues;

V - вертикальный/продольный наклон упомянутых остатков;V is the vertical/longitudinal slope of said residues;

D - диагональный/наклонный наклон упомянутых остатков. В общем случае, значения H, V, и D включают в себя достаточную информацию декодирования для преобразования значения А в более конкретные настройки для каждого из остаточных компонентов ry, ry+i, ri+1,j, ri+y+i.D is the diagonal/oblique slope of said remnants. In general, the H, V, and D values include sufficient decoding information to convert the A value to more specific settings for each of the residual components ry, ry + i, r i+1 ,j, ri+y+i.

С геометрической точки зрения, преобразование эквивалентно замене четырех выборок в пространстве их представлением, заданным плоскостью, находящейся на оси z со средним выборок и наклону, соответственно, для реконструкции 4 выборок, как показано на фиг. 3А.From a geometric point of view, the transformation is equivalent to replacing the four samples in space with their representation given by the plane being on the z-axis with mean of the samples and slope, respectively, for a 4-sample reconstruction as shown in FIG. 3A.

Как упомянуто выше, преобразование преследует две цели: использование корреляции между остатками (например, направленной корреляции линий и типичных шаблонов изображения) и снижение информационной энтропии, соответствующей среднему А, которое легко прогнозируется на стороне декодера, по меньшей мере, частично на основании прогнозируемых значений.As mentioned above, the transformation has two goals: exploiting the correlation between the residuals (e.g., directional correlation of lines and typical image patterns) and reducing the information entropy corresponding to the average A, which is easily predictable at the decoder side, at least in part based on the predicted values.

На стороне кодера, кодер знает, что родительский элемент был вычислен согласно формуле 3.12 на фиг. 3В. Разность δa между y и y1 обусловлена ошибками, генерируемыми в процессах квантования/деквантования. Согласно уравнению 3.14 на фиг. 3В, вычитая из y1 среднее значение прогнозов p для настроек x управляемых пэлов, можно генерировать прогноз (РА, для прогнозируемого среднего) для среднего значения четырех остатков 300, так что разность между А и РА равна δа.On the encoder side, the encoder knows that the parent has been computed according to formula 3.12 in FIG. 3B. The difference δ a between y and y 1 is due to errors generated in the quantization/dequantization processes. According to equation 3.14 in FIG. 3B, by subtracting from y 1 the average of the predictions p for the control panel settings x, one can generate a prediction (PA, for the predicted average) for the average of the four residues 300 such that the difference between A and PA is δ a .

В этом иллюстративном варианте осуществления, кодер, таким образом, генерирует преобразованные остатки 350 следующим образом: обрабатывает остатки 300 с помощью блока 310 направленного разложения, создавая направленные компоненты 320. В частности, направленные компоненты вычисляются согласно вычислениям, проиллюстрированным в формуле 3.11:In this exemplary embodiment, the encoder thus generates the transformed residuals 350 as follows: processes the residuals 300 with the directional decomposition block 310, producing directional components 320. In particular, the directional components are computed according to the calculations illustrated in formula 3.11:

создает прогнозируемое среднее 340;creates a predicted average of 340;

обрабатывает направленные компоненты 320 и прогнозируемое среднее 340 с помощью вычислителя 330 преобразованных остатков, создавая преобразованные остатки 350.processes the directional components 320 and the predicted mean 340 with the transformed residual calculator 330 to produce the transformed residuals 350.

В неограничительном варианте осуществления, δa вычисляется согласно формуле δа=А-РА=А-(у'k,hAvgP), где AvgP - среднее значение прогнозов р для настроек x управляемых пэлов.In a non-limiting embodiment, δ a is calculated according to the formula δ a =A-PA=A-(y' k ,hAvgP), where AvgP is the average value of the predictions p for the settings x of the controlled pels.

В неограничительном варианте осуществления, при вычислении направленных компонент 320 кодер не производит деление на 4 как указано в формуле 3.11 на фиг. 3В, для сокращения вычислений, необходимых для процесса обратного разложения, необходимого на стороне декодирования.In a non-limiting embodiment, when calculating the directional components 320, the encoder does not divide by 4 as indicated in formula 3.11 in FIG. 3B in order to reduce the computation required for the inverse decomposition process required at the decoding side.

В неограничительном варианте осуществления, декодер принимает преобразованные остатки δa, H, V, D (вычисленные кодером, как описано выше) и вычисляет остатки ri,j, ry+1, ri+1,j, ri+1,j+1, сначала создавая прогнозируемое среднее РА и реконструируя компоненты A, H, V, D, и затем решая уравнение, указанное в формуле 3.11, относительно ri,j, ry+i, ri+1,j, ri+1,j+1.In a non-restrictive embodiment, the decoder receives the transformed residuals δ a , H, V, D (calculated by the encoder as described above) and computes the residuals ri,j, ry +1 , r i+1 ,j, ri+1,j+1 , by first creating the predicted mean RA and reconstructing the A, H, V, D components, and then solving the equation in Equation 3.11 for ri,j, ry + i, r i+1 ,j, r i+1 ,j + 1 .

В другом неограничительном варианте осуществления, декодер принимает преобразованные остатки δa, H, V, D и вычисляет A согласно формуле А=δа+(y'k,h-AvgP), где AvgP - среднее значение прогнозов p для настроек х управляемых пэлов. С точки зрения информационной энтропии, преимущество передачи/приема δa (т.е. разности между фактическим средним остатков и прогнозируемым средним остатков) вместо значения А (среднего) основано на том факте, что δa с большой степенью вероятности равна нулю (или близка к нулю), поэтому нулевой символ становится с большей вероятностью встречается в последовательности кодированных преобразованных остатков, что повышает эффективность кодирования. Другими словами, передача значения δa в отличие от передачи значения А позволяет экономить на количестве битов данных, которые необходимо кодировать остатки 300. Вычислив А в этом примере, декодер вычисляет остатки ri,j, ri,j+1, ri+1,j, ri+1,j+1, решая уравнение, указанное в 3.11, относительно ri,j, ri,j+1, ri+1,j, ri+1j+1Как указано выше, разложение остатков 300 с целью последующего создания преобразованных остатков 350 пользуется преимуществом корреляции между остатками. В неограничительном варианте осуществления, разложение позволяет разделять остатки на постоянную части и одну или более переменных частей. Некоторые из преобразованных элементов могут быть прогнозируемыми, что облегчает их передачу. В одном варианте осуществления, преобразованные остатки 350 получаются на основании комбинации сумм и/или разностей между отдельными компонентами.In another non-restrictive embodiment, the decoder receives the transformed residuals δ a , H, V, D and calculates A according to the formula A=δ a +(y' k , h -AvgP), where AvgP is the average value of the predictions p for the settings x of the controlled pels . From the point of view of information entropy, the advantage of transmitting/receiving δ a (i.e. the difference between the actual mean of the residuals and the predicted mean of the residuals) instead of the value of A (average) is based on the fact that δ a is very likely to be zero (or close to to zero), so the null character becomes more likely to occur in the sequence of encoded transformed residues, which improves coding efficiency. In other words, passing the value δ a, as opposed to passing the value A, saves on the number of data bits that need to be encoded remainders 300. Having calculated A in this example, the decoder calculates the remainders ri,j, ri,j +1 , r i+1 , j, r i+1 ,j +1 , solving the equation in 3.11 for ri,j, ri,j +1 , r i+1 ,j, ri+1j+1 generating transformed residuals 350 takes advantage of the correlation between residuals. In a non-limiting embodiment, decomposition allows the residues to be separated into a constant portion and one or more variable portions. Some of the transformed elements may be predictive, making them easier to convey. In one embodiment, the converted residuals 350 are obtained based on a combination of sums and/or differences between the individual components.

Как показывают уравнения, начиная с вектора r (содержащего четыре остатка 300, например ri,j) кодер вычисляет вектор l, где вектор l содержит четыре параметра, выведенных из среднего А, горизонтального наклона H, вертикального наклона V и диагонального наклона D. В частности, вектор l вычисляется путем умножения вектора r на матрицу М. Декодер принимает параметры, позволяющие ему реконструировать вектор l (в частности, в вышеописанном неограничительном варианте осуществления,As the equations show, starting with a vector r (containing the four remainders 300, such as ri,j), the encoder computes a vector l, where the vector l contains four parameters derived from mean A, horizontal slope H, vertical slope V, and diagonal slope D. In particular, , the vector l is calculated by multiplying the vector r by the matrix M. The decoder receives parameters that allow it to reconstruct the vector l (in particular, in the non-restrictive embodiment described above,

- 13 040379 вместо приема параметра А, декодер принимает параметр δω указывающий разность между А и прогнозируемым средним остатков РА). Реконструировав l, декодер реконструирует вектор r путем умножения матрицы, обратной матрице M, на вектор l. Как следует из нижеследующих уравнений на фиг. 3В, в неограничительном варианте осуществления матрица M-1 идентична матрице M:- 13 040379 instead of receiving the parameter A, the decoder receives the parameter δ ω indicating the difference between A and the predicted average of the residuals PA). Having reconstructed l, the decoder reconstructs the vector r by multiplying the matrix inverse of the matrix M by the vector l. As follows from the following equations in Fig. 3B, in a non-restrictive embodiment, matrix M -1 is identical to matrix M:

I — М - гI - M - g

' 1 1 ' eleven 1 1 1 Ί 1 Ί roo r oo 4v -1 -1 -eleven 1 1 -1 -1 'Ll 'll 1 1 eleven -1 -1 -1 -1 % % J -1 J- 1 -1 -1 Cib Cib

В другом неограничительном варианте осуществления разные остатки во множестве преобразованных остатков квантуются согласно разными параметрами квантования. Это объясняется разной относительной важностью направленных компонент для воспринимаемого качества, что позволяет по-разному квантовать определенные преобразованные остатки, чем другие, без заметных различий в качестве. Другими словами, как упомянуто, данные реконструкции или остаточные данные на каждом соответствующем уровне качества, к которому относятся данные, отвечают за добавление деталей обратно в прогнозируемое представление сигнала, благодаря чему, создаваемое представление сигнала более точно отражает исходный сигнал для соответствующего уровня качества.In another non-limiting embodiment, different residuals in the set of transformed residuals are quantized according to different quantization parameters. This is due to the different relative importance of the directional components to perceived quality, which allows certain transformed residuals to be quantized differently than others without noticeable differences in quality. In other words, as mentioned, the reconstruction data or residual data at each respective quality level to which the data belongs is responsible for adding detail back to the predicted signal representation, whereby the generated signal representation more accurately reflects the original signal for the corresponding quality level.

Например, преобразованные остатки, соответствующие средним или диагональным компонентам, квантуются агрессивнее, чем другие. В одном варианте осуществления декодер деквантует разные остатки согласно разным параметрам деквантования. В другом варианте осуществления разные параметры квантования позволяют повышать точность вертикального наклона и горизонтального наклона остатков (к которым человеческий глаз особенно чувствителен) независимо от точности диагональной/наклонной информации, так что, в случае артефактов квантования (например, ошибок изображения, которые возникают вследствие фильтрации для экономии битов данных), вносимых сжатием, конкретные компоненты остатков привилегированны в отношении выделения битовой скорости.For example, the transformed residuals corresponding to the mean or diagonal components are quantized more aggressively than others. In one embodiment, the decoder dequantizes different residuals according to different dequantization parameters. In another embodiment, different quantization parameters make it possible to improve the accuracy of the vertical tilt and horizontal tilt of the residuals (to which the human eye is particularly sensitive) independently of the accuracy of the diagonal/tilt information, so that, in the case of quantization artifacts (e.g., image errors that arise due to filtering for saving data bits) contributed by compression, particular components of the residuals are favored with respect to bit rate allocation.

В другом неограничительном варианте осуществления параметры H и V квантуются по-разному согласно оценке объемов горизонтальной против вертикальной корреляции в сигнале (например, поле в чересстрочном видео часто характеризуется более высокой горизонтальной корреляцией, чем вертикальной корреляцией что позволяет эффективно кодировать его посредством квантования H и V по-разному).In another non-limiting embodiment, the H and V parameters are quantized differently according to an estimate of the amounts of horizontal vs. vertical correlation in the signal (e.g., a field in interlaced video often has higher horizontal correlation than vertical correlation, allowing it to be efficiently coded by quantizing H and V by in different ways).

В другом неограничительном варианте осуществления, для последнего уровня качества, декодер принимает только параметры, соответствующие H и V, и реконструирует полное множество направленных компонент (и затем остатки) устанавливая А и D на значения, принятые по умолчанию.In another non-restrictive embodiment, for the last quality level, the decoder takes only the parameters corresponding to H and V and reconstructs the full set of directional components (and then the residuals) by setting A and D to default values.

Другие неограничительные варианты осуществления применяют аналогичные способы преобразования остатков для кодирования и/или декодирования остатков для множеств управляемых пэлов, обладающих более чем двумя измерениями (например, в порядке неограничительного примера, остатков для множеств из восьми управляющих пэлов, полученных посредством трехмерной операции повышающей дискретизации), и/или разных масштабных коэффициентов от более низкого LOQ к следующему в порядке возрастания LOQ.Other non-limiting embodiments employ similar residual transformation techniques to encode and/or decode residuals for control pad sets having more than two dimensions (e.g., by way of non-limiting example, residues for sets of eight control pads obtained by a 3D upsampling operation), and/or different scaling factors from the lower LOQ to the next in ascending LOQ order.

Специалисты в данной области техники без труда может вывести матрицу преобразования, подлежащую использованию в других вариантах осуществления, выполняя операции повышающей дискретизации, предусматривающие более чем два измерения (например, в порядке неограничительного примера, операции, предусматривающие два пространственных измерения и временное измерение, все с масштабным коэффициентом два, реконструкция 8 управляемых пэлов с более высоким LOQ для каждого управляющего пэла с более низким LOQ). В порядке неограничительного примера, объемная повышающая дискретизация с масштабным коэффициентом два во всех измерениях требует матрицы 8x8 преобразование разложения остатка, вычисляющей 8 направленных градиентов/остаточных наклонов. В неограничительном варианте осуществления, для каждого блока сигнала 2x2x2 кодер вычисляет (и декодер принимает и декодирует) один параметр, соответствующий среднему остаточному значению, и 7 параметров, соответствующих 7 значений остаточного наклона.Those skilled in the art can easily derive the transformation matrix to be used in other embodiments by performing upsampling operations involving more than two dimensions (e.g., by way of non-limiting example, operations involving two spatial dimensions and a temporal dimension, all scaled by a factor of two, reconstruction of the 8 higher LOQ controlled pods for each lower LOQ controlled pal). By way of non-limiting example, volume upsampling with a scale factor of two in all dimensions requires an 8x8 matrix transformation of the residual decomposition computing 8 directional gradients/residual slopes. In a non-limiting embodiment, for each block of a 2x2x2 signal, the encoder calculates (and the decoder receives and decodes) one parameter corresponding to the mean residual value and 7 parameters corresponding to the 7 residual slope values.

В другом неограничительном варианте осуществления, и кодер, и декодер действуют по отдельности во временном и пространственных измерениях. Временной наклон передается и декодируется в первую очередь, и затем оставшиеся 6 значений (по 3 для каждой пространственной плоскости) передаются как наклонные пространственные значения.In another non-limiting embodiment, both the encoder and the decoder operate separately in temporal and spatial dimensions. Temporal tilt is transmitted and decoded first, and then the remaining 6 values (3 for each spatial plane) are transmitted as spatial tilt values.

В другом неограничительном варианте осуществления кодер и декодер используют способ полноценного направленного разложения в двух измерениях (например, на кодере, для каждого блока 2x2 остатков: вычисление среднего А, горизонтального наклона H, вертикального наклона V и диагонального наклона D остатков, и затем кодирование, вместо среднего А, разности δa между средним А и прогнози- 14 040379 руемым средним РА; на декодере: прием разности δα между средним А и прогнозируемым средним РА, горизонтальным наклоном H, вертикальным наклоном V и диагональным наклоном D, и вычисление из таких параметров четырех остатков), и затем частичное направленное разложение в третьем измерении (например, во времени, вычисление, кодирование и декодирование только наклона между двумя средними значениями блоков 2x2 остатков).In another non-restrictive embodiment, the encoder and decoder use a full directional decomposition method in two dimensions (e.g., at the encoder, for each block of 2x2 residuals: calculating mean A, horizontal slope H, vertical slope V, and diagonal slope D of residuals, and then encoding, instead of mean A, the difference δ a between mean A and predicted mean PA, at the decoder: receiving the difference δ α between mean A and predicted mean PA, horizontal slope H, vertical slope V, and diagonal slope D, and calculation from such parameters four residuals), and then a partial directional decomposition in the third dimension (eg, in time, calculating, encoding and decoding only the slope between the two averages of the 2x2 blocks of residuals).

В другом неограничительном варианте осуществления кодер может выбирать вариант во избежание передачи одного остатка для каждого множества остатков, соответствующих одному и тому же управляющему пэлу на более низком LOQ. Это эквивалентно квантованию 5a на нуль, независимо от его фак тического значения.In another non-limiting embodiment, the encoder may choose to avoid transmitting one residue for each set of residues corresponding to the same control pad at a lower LOQ. This is equivalent to quantizing 5a to zero, regardless of its actual value.

В других неограничительных вариантах осуществления декодер принимает полные множества остатков и использует избыточность в остаточной информации в целях исправления ошибок или обнаружения ошибок, что повышает надежность передачи.In other non-limiting embodiments, the decoder receives complete sets of residuals and exploits redundancy in the residual information for error correction or error detection purposes, which improves transmission reliability.

В других неограничительных вариантах осуществления с масштабными коэффициентами среди LOQ, отличных от 2 для одного или более направлений, кодер и декодер вычисляют прогнозируемое среднее для множества остатков, по меньшей мере, частично на основании значений нескольких элемен тов представления сигнала на более низком LOQ.In other non-limiting embodiments, with scaling factors among LOQs other than 2 for one or more directions, the encoder and decoder calculate a predicted mean over multiple residuals based at least in part on the values of multiple signal bins at the lower LOQ.

В других неограничительных вариантах осуществления кодер применяет преобразования разложения на конкретные множества остатков, с целью максимизации количества преобразованных остатков, которым назначается значение, равное нулю. Это обусловлено тем, что энтропийное методы кодирования более эффективны при сжатии потока чисел, которые включают в себя более высокий процент значений, равный нулю. В неограничительном варианте осуществления, параметры, соответствующие применяемым преобразованиям разложения, передаются на декодер, совместно с данными реконструкции.In other non-limiting embodiments, the encoder applies decomposition transformations into particular sets of residues in order to maximize the number of transformed residues that are assigned a value of zero. This is because entropy encoding methods are more efficient at compressing a stream of numbers that include a higher percentage of zero values. In a non-limiting embodiment, the parameters corresponding to the applied decomposition transforms are transmitted to the decoder, along with the reconstruction data.

В неограничительном варианте осуществления кодер выбирает множества остатков разных изображений на одном и том же LOQ в последовательности изображений, упомянутые множества остатков, соответствующих одному и тому же положению (т.е. множеству координат) по нескольким последовательным изображениям (например, нескольким позициям дискретизации во времени). Для каждой данной позиции во множествах остатков, кодер выбирает остатки множеств, которые находятся в этой позиции (например, временная последовательность остатков с течением времени) и генерирует последовательность преобразованных остатков, начиная со значения, соответствующего среднему упомянутых остатков и затем, в соответствии с каждым данным остатком, значений, соответствующих этапу между предыдущим остатком и данным остатком. Таким образом, кодер очень эффективно представляет последовательность нескольких значений, которые постоянны некоторое время, затем меняются на другое значение и после этого снова остаются постоянными: фактически, такая последовательность представляется только двумя значениями, отличными от нуль (т.е. значением, соответствующим среднему, и значением, соответствующим пэлу, где происходит смена этапов). В таком варианте осуществления, для реконструкции исходных остатков, декодер обрабатывает преобразованные остатки и вычисляет остатки путем умножения преобразованных остатков на, например, следующие матрицы (в зависимости от количества остатков в последовательности):In a non-limiting embodiment, the encoder selects multiples of different picture residuals on the same LOQ in a picture sequence, said residual sets corresponding to the same position (i.e., set of coordinates) across multiple consecutive pictures (e.g., multiple sampling positions in time ). For each given position in the residual sets, the encoder selects the residuals of the sets that are at that position (e.g., the temporal sequence of the residuals over time) and generates a sequence of transformed residuals starting with a value corresponding to the average of said residuals and then, according to each data remainder, values corresponding to the stage between the previous remainder and this remainder. Thus, the encoder very effectively represents a sequence of several values that are constant for a while, then change to another value, and then remain constant again: in fact, such a sequence is represented by only two non-zero values (i.e., the value corresponding to the average, and the value corresponding to the pad where the stage change occurs). In such an embodiment, to reconstruct the original residuals, the decoder processes the transformed residuals and computes the residuals by multiplying the transformed residuals by, for example, the following matrices (depending on the number of residuals in the sequence):

Μ2Μ2

32 132 1

-132 1-132 1

-1-221-1-221

-1 -2 -3 1-1 -2 -3 1

-1 -2 -3 -4? , и т.д.-1 -2 -3 -4 ? , etc.

На фиг. 3F показана иллюстративная схема, демонстрирующая генерацию данных реконструкции согласно рассмотренным здесь вариантам осуществления.In FIG. 3F is an exemplary diagram illustrating reconstruction data generation according to the embodiments discussed herein.

Как показано, оборудование компьютерной обработки на фиг. 3F выполнено с возможностью создания данных реконструкции согласно рассмотренным здесь вариантам осуществления. Как показано, при кодировании, алгоритм 371 понижающей дискретизации принимает и обрабатывает блок 305, включающий в себя X11, Х12, Х21, Х22. Каждое из этих значений X11, Х12, Х21, Х22 представляет соответствующую настройку, связанную с соответствующим элементом.As shown, the computer processing equipment of FIG. 3F is configured to generate reconstruction data according to the embodiments discussed herein. As shown, when encoding, the downsampling algorithm 371 receives and processes a block 305 including X11, X12, X21, X22. Each of these values X11, X12, X21, X22 represents a corresponding setting associated with the corresponding element.

В одном варианте осуществления алгоритм 371 понижающей дискретизации принимает и обрабатывает массив X на первом уровне качества и преобразует массив значений x (X11, Х12, Х21, Х22) в единое значение у (например, репрезентативное значение 361). Алгоритм 371 квантователя преобразуетIn one embodiment, the downsampling algorithm 371 receives and processes the array X at a first quality level and converts the array of x values (X11, X12, X21, X22) into a single y value (eg, representative value 361). The quantizer algorithm 371 transforms

- 15 040379 значение у в у1 (например, квантованное репрезентативное значение 362, также указанное как 306 на фиг. 3В). Алгоритм 373 повышающей дискретизации, связанный с кодером, посредством обработки представления сигнала на более низком LOQ #2, инициирует повышающую дискретизацию значения 3 62 (например, y1) в прогнозируемое представление (P11, P12, Р21, Р22), соответствующее исходному представлению сигнала (X11, Х12, Х21, Х22). Разностная функция 376 создает данные реконструкции или остаточные данные 300 как разность между исходным сигналом, указанным посредством X11, Х12, Х21, Х22, и прогнозируемым представлением P11, P12, Р21, Р22 для создания корректировочных значений R11, R12, R21, R22. В одном варианте осуществления, корректировочное значение R11=X11-P11; корректировочное значение R12=X12-P12; корректировочное значение R21=X21-P21; и корректировочное значение R22=X22-P22.- 15 040379 the value of y in y 1 (for example, the quantized representative value of 362, also indicated as 306 in Fig. 3B). The upsampling algorithm 373 associated with the encoder, by processing the signal representation at the lower LOQ #2, initiates upsampling of the value 3 62 (eg, y 1 ) into the predicted representation (P11, P12, P21, P22) corresponding to the original signal representation ( X11, X12, X21, X22). The difference function 376 creates reconstruction data or residual data 300 as the difference between the original signal indicated by X11, X12, X21, X22 and the predicted representation P11, P12, P21, P22 to create correction values R11, R12, R21, R22. In one embodiment, the correction value R11=X11-P11; correction value R12=X12-P12; correction value R21=X21-P21; and correction value R22=X22-P22.

Ресурс 377 процессора принимает первое множество корректировочных значений (например, остаточные данные 300 или корректировочные значения R11, R12, R21, R22). Первое множество корректировочных значений указывает корректировки, которые должны быть осуществлены в отношении прогнозируемого представления (Р11, Р12, Р21, Р22) сигнала, генерируемого на соответствующем уровне #1 для реконструкции представления сигнала (X11, Х12, Х21, Х22) на первом уровне качества. Ресурс 377 процессора обрабатывает первое множество корректировочных значений R11, R12, R21, R22. Ресурс 377 процессора выводит второе множество корректировочных значений (или преобразованные остатки 350 или 5a, H, V, D) на основании первого множества корректировочных значений R11, R12, R21, R22 и представления сигнала, например, у1 на втором уровне качества.Processor resource 377 receives a first set of adjustment values (eg, residual data 300 or adjustment values R11, R12, R21, R22). The first set of adjustment values indicates adjustments to be made to the predictive representation (P11, P12, P21, P22) of the signal generated at the corresponding level #1 for reconstructing the representation of the signal (X11, X12, X21, X22) at the first quality level. Processor resource 377 processes the first set of adjustment values R11, R12, R21, R22. Processor resource 377 outputs a second set of correction values (or converted residuals 350 or 5 a , H, V, D) based on the first set of correction values R11, R12, R21, R22 and a signal representation of, for example, y 1 at a second quality level.

В этом примере, уровень качества #2 ниже уровня качества #1. Сигнал может быть изображением, включающим в себя несколько элементов. В порядке неограничительного примера, уровень качества #1 может быть разрешением первого изображения; уровень качества #2 может быть разрешением второго изображения. Разрешение второго изображения ниже по разрешению, чем разрешение первого изображения.In this example, quality level #2 is below quality level #1. The signal may be an image that includes several elements. By way of non-limiting example, quality level #1 may be the resolution of the first image; quality level #2 may be the resolution of the second image. The resolution of the second image is lower in resolution than the resolution of the first image.

Заметим, опять же, что сигнал, кодируемый оборудованием кодера на фиг. 3F, может быть любым подходящим типом сигнала. Например, сигналом может быть двухмерное изображение; сигналом может быть видеосигнал; сигналом может быть объемное изображение; и т.д.Note, again, that the signal encoded by the encoder hardware in FIG. 3F may be any suitable signal type. For example, the signal may be a two-dimensional image; the signal may be a video signal; the signal can be a three-dimensional image; etc.

В другом конкретном варианте осуществления, ресурс 377 процессора включает в себя процессор 396 данных реконструкции. Процессор 396 данных реконструкции преобразует остаточные данные 300 в компонентные значения А, H, V и D. Как упомянуто, значения А, H, V и D является кодированным представлением остатков 300. По меньшей мере, частично на основании значения y1 и направленных компонент А, H, V и D, преобразователь 397 данных реконструкции создает корректировочные значения 5a, H, V, D (преобразованные остаточные данные 350).In another specific embodiment, processor resource 377 includes a reconstruction data processor 396 . The reconstruction data processor 396 converts the residual data 300 into A, H, V, and D component values. As mentioned, the A, H, V, and D values are an encoded representation of the residuals 300. Based at least in part on the value of y 1 and the directional components of A , H, V, and D, reconstruction data converter 397 generates correction values 5 a , H, V, D (transformed residual data 350).

В одном неограничительном иллюстративном варианте осуществления, ресурс 377 процессора выводит множество корректировочных значений 5a, H, V, D (преобразованные остаточные данные 350) посредством обработки множества корректировочных значений R11, R12, R21, R22 для создания нескольких корректировочных компонент А, H, V и D, которые представляют множество корректировочных значений R11, R12, R21, R22. Преобразователь 397 данных реконструкции создает множество корректировочных данных δa, H, V, D (преобразованные остаточные данные 350) на основании комбинации по меньшей мере одного из нескольких корректировочных компонент, например значения А, с по меньшей мере одной настройкой, связанной с представлением сигнала, например у1, на уровне качества #2.In one non-limiting exemplary embodiment, processor resource 377 outputs a plurality of correction values 5 a , H, V, D (transformed residual data 350) by processing a plurality of correction values R11, R12, R21, R22 to create multiple correction components A, H, V and D, which represent a plurality of adjustment values R11, R12, R21, R22. The reconstruction data converter 397 creates a set of correction data δ a , H, V, D (transformed residual data 350) based on a combination of at least one of several correction components, for example an A value, with at least one setting associated with the signal representation, for example, 1 , at quality level #2.

Как упомянуто, одно или более из корректировочных значений δa, H, V, D (преобразованных остаточных данных 350) можно вычислить на основании линейной комбинации множества корректировочных значений R11, R12, R21, R22 с представлением сигнала (например, y1) на уровне качества #2. Например, значение δa можно вычислить на основании разности между средним значением А (средним значений X11, Х12, Х21, Х22), генерируемым алгоритмом 372 квантователя, и прогнозируемым средним, создаваемым, по меньшей мере, частично на основании среднего элементов (P11, P12, Р21, Р22) в блоке 393 (например, [Р11+Р12+Р21+Р22]/4).As mentioned, one or more of the correction values δ a , H, V, D (transformed residual data 350) can be calculated based on a linear combination of a plurality of correction values R11, R12, R21, R22 with a signal representation (for example, y 1 ) at the level quality #2. For example, the value δ a can be calculated based on the difference between the average A (average of X11, X12, X21, X22) generated by the quantizer algorithm 372 and the predicted average generated at least in part based on the average of the elements (P11, P12 , P21, P22) at block 393 (eg, [P11+P12+P21+P22]/4).

В порядке примера предположим, что данные в блоке 305 (соответствующем участке элементов в плоскости элементов, которые дискретизируются с понижением) включает в себя: X11=10, Х12=20, Х21=25, Х22=30. В этом примере, алгоритм 371 понижающей дискретизации создает значение y=21,25 с использованием среднего элементов X11, Х12, Х21, Х22. Единое значение y=21,25 на уровне качества #2 является репрезентативным значением настроек, связанным с элементами X11, Х12, Х21, Х22.By way of example, suppose that the data in block 305 (corresponding to the bin plane area of the bins that are downsampled) includes: X11=10, X12=20, X21=25, X22=30. In this example, the downsampling algorithm 371 generates a value of y=21.25 using the average elements X11, X12, X21, X22. A single y=21.25 value at quality level #2 is a representative setting value associated with elements X11, X12, X21, X22.

Предположим, что алгоритм 372 квантователя квантует значение y=21,25 для создания y'=21. В одном варианте осуществления, квантование включает в себя сравнение принятого значения, например y=21,25 с несколькими диапазонами. В этом примере предполагается, что любым значениям в диапазоне А1 между 21 и 21,999 назначаются значение 21. Значение y=21,25 попадает в диапазон А1 и, таким образом, квантуется и получает значение 21 в результате квантования алгоритмом 372 квантователя.Assume that the quantizer algorithm 372 quantizes the value y=21.25 to create y'=21. In one embodiment, quantization includes comparing a received value, such as y=21.25, with multiple ranges. In this example, it is assumed that any values in the range A1 between 21 and 21.999 are assigned the value 21. The value y=21.25 falls within the range A1 and is thus quantized to a value of 21 as a result of quantization by the quantizer algorithm 372.

Как рассмотрено ранее, рассмотренные здесь варианты осуществления включают в себя повышающую дискретизацию квантованного значения y'=21 (также, по меньшей мере, частично на основании соседних с ним элементов) во множество прогнозируемых значений P11, P12, Р21, Р22. В этом примереAs previously discussed, the embodiments discussed herein include upsampling a quantized value y'=21 (also based at least in part on its neighbors) into a set of predictive values P11, P12, P21, P22. In this example

- 16 040379 предполагается, что применение алгоритма 373 повышающей дискретизации создает настройки Р11=10,- 16 040379 it is assumed that the application of the upsampling algorithm 373 creates settings P11=10,

Р12=15, Р21=20, Р22=25. Эти значения P аппроксимируют настройки исходных значений X (X11, Х12,P12=15, P21=20, P22=25. These P values approximate the settings of the original X values (X11, X12,

Х21, Х22), но нуждается в некоторой коррекции.X21, X22), but needs some correction.

Рассмотренные здесь варианты осуществления включают в себя применение разностной функции 376 для создания значений R (R11, R12, R21, R22). Например, разностная функция 376 задает R11=X11P11 (R11=10-10=0); разностная функция 376 задает R12=X12-P12 (R12=20-15=5); разностная функция 376 задает R21=X21-P21 (R21=25-20=5); разностная функция 376 задает R22=X2-P22 (R22=30-25=5).The embodiments discussed herein include applying the difference function 376 to generate R(R11, R12, R21, R22) values. For example, the difference function 376 sets R11=X11P11 (R11=10-10=0); difference function 376 sets R12=X12-P12 (R12=20-15=5); difference function 376 sets R21=X21-P21 (R21=25-20=5); the difference function 376 sets R22=X2-P22 (R22=30-25=5).

В соответствии с предыдущими уравнениями, процессор 396 данных реконструкции создает настройки для А, H, V и D на основании настроек R11, R12, R21, R22 на уровне качества #1. Например, согласно соответствующей матрицы, процессор 396 данных реконструкции создает направленные компоненты 320 следующим образом:In accordance with the previous equations, the reconstruction data processor 396 creates settings for A, H, V, and D based on the settings of R11, R12, R21, R22 at quality level #1. For example, according to the corresponding matrix, the reconstruction data processor 396 creates directional components 320 as follows:

А=[Rl1+R12+R21+R22]/4=[0+5+5+5]/4=3,75A=[Rl1+R12+R21+R22]/4=[0+5+5+5]/4=3.75

Н=[Rl1-R12+R21-R22]/4=[0-5+5-5]/4=1,25H=[Rl1-R12+R21-R22]/4=[0-5+5-5]/4=1.25

V=[Rl1+R12-R21-R22]/4=[0+5-5-5]/4=1,25V=[Rl1+R12-R21-R22]/4=[0+5-5-5]/4=1.25

D=[Rl1-R12-R21+R22]/4=[0-5-5+5 ]/4=-1,25D=[Rl1-R12-R21+R22]/4=[0-5-5+5 ]/4=-1.25

На основании этих значений для А, H, V и D, преобразователь 397 данных реконструкции создает преобразованные остатки 300 (δa, H, V, D) следующим образом:Based on these values for A, H, V, and D, reconstruction data converter 397 generates transformed residuals 300 (δ a , H, V, D) as follows:

5а = среднее - прогнозируемое среднее = {3,75-[у1-(Pl1 + Р12 +Р21+Р22)/4]}=5 a = mean - predicted mean = {3.75 - [y 1 - (Pl1 + P12 + P21 + P22) / 4]} =

5а = {3,75- [21- (10 + 15+2 0 + 25)/4] }=3,75-(21-17,5)=3,75-3,5=0,255 a \u003d {3.75- [21- (10 + 15 + 2 0 + 25) / 4] } \u003d 3.75- (21-17.5) \u003d 3.75-3.5 \u003d 0.25

В этом примере, ресурс 377 процессора создает преобразованные остаточные данные 350 следующим образом:In this example, the processor resource 377 creates the transformed residual data 350 as follows:

ба=0,25b a =0.25

Н=1,25H=1.25

V=l,25V=l,25

D=-l,25D=-l,25

Соответственно, оборудование кодера, как рассмотрено здесь, принимает представление сигнала (X11, Х12, Х21, Х22) на уровне качества #1. Алгоритм 371 понижающей дискретизации кодера на фиг. 3F создает представление сигнала у на уровне качества #2 на основании представления сигнала (X11, Х12, Х21, Х22) на уровне качества #1. Алгоритм 373 повышающей дискретизации создает прогнозируемое представление сигнала P11, P12, Р21, Р22 на уровне качества #1 из представления сигнала на уровне качества #2. Например, алгоритм 372 квантователя создает y1 из y. Алгоритм 373 повышающей дискретизации, посредством обработки представления сигнала на уровне качества #2, преобразует y1 в P11, P12, Р21, Р22. Как упомянуто, разностная функция 376 создает множество корректировочных значений R11, R12, R21, R22 как разность между представлением сигнала R11, R12, R21, R22 на уровне качества #1 и прогнозируемое представление сигнала P11, P12, Р21, Р22 на уровне качества #1. Процессор 396 данных реконструкции создает форматированное множество корректировочных значений (например, направленные компоненты 320) из множества корректировочных значений R11, R12, R21, R22. Как следует из его названия, преобразователь 397 данных реконструкции преобразует форматированное множество корректировочных значений во множество корректировочных значений δa, H, V, D.Accordingly, the encoder hardware as discussed here receives a signal representation (X11, X12, X21, X22) at quality level #1. The encoder downsampling algorithm 371 in FIG. 3F creates a signal representation y at quality level #2 based on the signal representation (X11, X12, X21, X22) at quality level #1. The upsampling algorithm 373 creates a predictive representation of the signal P11, P12, P21, P22 at quality level #1 from the representation of the signal at quality level #2. For example, the quantizer algorithm 372 creates y 1 from y. The upsampling algorithm 373 converts y 1 into P11, P12, P21, P22 through quality level #2 signal representation processing. As mentioned, the difference function 376 creates a set of correction values R11, R12, R21, R22 as the difference between the signal representation R11, R12, R21, R22 at quality level #1 and the predicted signal representation P11, P12, P21, P22 at quality level #1 . The reconstruction data processor 396 creates a formatted set of adjustment values (eg, directional components 320) from the set of adjustment values R11, R12, R21, R22. As its name suggests, reconstruction data converter 397 converts the formatted correction value set into a correction value set δ a , H, V, D.

Рассмотренные здесь варианты осуществления может дополнительно включать в себя дополнительное оборудование кодера и программное обеспечение для кодирования множества корректировочных значений δa, H, V, D и представления сигнала y1 на уровне качества #2 в соответствующую кодированную информацию. Ресурс передатчика передает соответствующую кодированную информацию по линии связи на оборудование обработки декодера (см. фиг. 5 для неограничительного примера декодирования).The embodiments discussed herein may further include additional encoder hardware and software for encoding a plurality of correction values δ a , H, V, D and representing signal y 1 at quality level #2 into corresponding encoded information. The transmitter resource transmits the corresponding encoded information over the link to the decoder processing equipment (see FIG. 5 for a non-limiting example of decoding).

В соответствии с фиг. 5, оборудование обработки декодера принимает кодированную информацию. Из кодированной информации, оборудование обработки декодера получает (путем декодирования) данные реконструкции, например, значение y1=21. Значение y1 указывает, как реконструировать представление сигнала для блока 306 (фиг. 3В) на уровне качества #2. Из принятой кодированной информации, оборудование обработки декодера получает (путем декодирования) множество корректировочных значений δa, H, V, D.In accordance with FIG. 5, the decoder processing equipment receives the encoded information. From the encoded information, the decoder processing equipment obtains (by decoding) reconstruction data, for example, the value y1=21. The value of y 1 indicates how to reconstruct the signal representation for block 306 (FIG. 3B) at quality level #2. From the received encoded information, the decoder processing equipment obtains (by decoding) a set of correction values δ a , H, V, D.

Оборудование обработки декодера воспроизводит прогнозируемое представление сигнала Р11=(элемент 500-1-1), Р12 (элемент 500-1-2), Р21 (элемент 500-1-3), Р22 (элемент 500-1-4) на уровне качества #1 по меньшей мере, частично на основании значения у1 в полученных данных реконструкции. Оборудование обработки декодера выводит корректировочное значение (прогнозируемое среднее или РА), например, значение 430-5 на основании обработки настроек, связанных с прогнозируемым представлением сигнала, и полученные данные реконструкции (например, y1=21). В этом иллюстративном варианте осуществления, блок 520 генерирует корректировочное значение 430-5 равным y1 минус сред- 17 040379 нее прогнозов AvgP (например, [(Р11+Р12+Р21+Р22)/4). Напомним, что алгоритм 373 повышающей дискретизации (также используемый оборудованием обработки декодера), применяемый к y1 и соседним с ним элементам в оборудовании обработки декодера, создает значения Р11=10, Р12=15, Р21=20, Р22=25. Заметим, что конкретный алгоритм, подлежащий использованию для повышающей дискретизации значения y1, может быть указан в данных, принятых оборудованием обработки декодера. В частности, для данного элемента предварительного представления сигнала на более высоком уровне качества, создание настроек для упомянутого данного элемента может содержать: прием метаданных, связанных с операциями повышающей дискретизации, которые должны быть использованы для создания, на основании представления сигнала на более низком уровне качества, предварительного представления сигнала на более высоком уровне качества; идентифицируют операцию повышающей дискретизации (например, без ограничения, коэффициенты ядра повышающей дискретизации), как указано метаданными; и применяют операцию к подмножеству элементов представления сигнала на более низком уровне качества для вывода настроек для упомянутого данного элемента предварительного представления сигнала на более высо ком уровне качества.The decoder processing equipment reproduces the predictive representation of the signal P11=(element 500-1-1), P12 (element 500-1-2), P21 (element 500-1-3), P22 (element 500-1-4) at the quality level #1 based at least in part on the y value of 1 in the resulting reconstruction data. The decoder processing equipment outputs a correction value (predicted average or PA), for example, a value of 430-5, based on the processing of the settings associated with the predicted signal representation, and the obtained reconstruction data (for example, y1=21). In this exemplary embodiment, block 520 generates an adjustment value 430-5 equal to y 1 minus the average of AvgP predictions (eg, [(P11+P12+P21+P22)/4). Recall that the upsampling algorithm 373 (also used by the decoder processing equipment) applied to y 1 and its neighbors in the decoder processing equipment produces the values P11=10, P12=15, P21=20, P22=25. Note that the particular algorithm to be used for upsampling the value of y 1 may be indicated in the data received by the processing equipment of the decoder. In particular, for a given element of signal pre-representation at a higher quality level, creating settings for said given element may comprise: receiving metadata associated with upsampling operations to be used to create, based on the signal representation at a lower quality level, preliminary presentation of the signal at a higher quality level; identifying an upsampling operation (eg, without limitation, upsampling kernel coefficients) as indicated by the metadata; and applying the operation to the subset of the lower quality level signal presentation elements to output the settings for said given signal preview element at the higher quality level.

Таким образом блок 520 обработки создает y1-AvgP=21-[ (10 + 15+20 + 25)/4]=21-17,5=3,5Thus, processing unit 520 creates y 1 -AvgP=21-[ (10 + 15+20 + 25)/4]=21-17.5=3.5

Функция 562 суммирует дельту 445-1 (например, δα=0,25), полученную путем декодирования, как рассмотрено выше) и значение РА=3.5 для создания сигнала 430-5, например, значения 3,75 (т.е. среднего А=3,75). Таким образом, оборудование обработки декодера использует выведенное корректировочное значение (например, РА=3,5) как основу для модификации значения 5а=0,25 в корректировочное значение А=3,75)Function 562 sums the delta 445-1 (e.g., δ α =0.25) obtained by decoding as discussed above) and the value of PA=3.5 to create a signal 430-5, e.g., a value of 3.75 (i.e., the average A=3.75). Thus, the decoder processing equipment uses the derived correction value (e.g., PA=3.5) as the basis for modifying the value 5a =0.25 into the correction value A=3.75)

Данные, полученные путем декодирования принятой информации также включает в себя получение значений для H, V и D. В этом примере, значения таковы: H=1,25, V=1,25, и D=-1,25.The data obtained by decoding the received information also includes obtaining values for H, V, and D. In this example, the values are: H=1.25, V=1.25, and D=-1.25.

Затем оборудование обработки декодера применяет модифицированное множество корректировочных значений (например, А, Н, V, D) к воспроизводимому прогнозируемому представлению сигнала Р11, Р12, Р21, Р22 для создания представления сигнала 550-1 на уровне качества #1. Например, оборудование обработки декодера применяет строку сумматоров, связанных со значениями 532 матрицы для создания:The decoder processing equipment then applies the modified set of correction values (eg, A, H, V, D) to the reproduced predictive signal representation P11, P12, P21, P22 to create signal representation 550-1 at quality level #1. For example, the decoder processing hardware uses a row of adders associated with matrix values 532 to create:

элемент 550-1-1=элемент 500-1-1+(A 455-1+H 455-2+V 455-3+D 455-4) = 10+(3,75+(-1,25)+(-1,25)+(-1,25))=10=Х11;element 550-1-1=element 500-1-1+(A 455-1+H 455-2+V 455-3+D 455-4) = 10+(3.75+(-1.25)+ (-1.25)+(-1.25))=10=X11;

элемент 550-1-2=элемент 500-1-2+(А 455-1-Н 455-2+V 455-3-D 455-4) = 15+(3,7 5-(-1,25) + (-1,25)-(-1,25)) =20=Х12;element 550-1-2 = element 500-1-2+(A 455-1-H 455-2+V 455-3-D 455-4) = 15+(3.7 5-(-1.25) + (-1.25) - (-1.25)) \u003d 20 \u003d X12;

элемент 550-1-3=элемент 500-1-3+(А 455-1-Н 455-2+V 455-3-Delement 550-1-3=element 500-1-3+(A 455-1-H 455-2+V 455-3-D

455-4) = 20+(3,75+(-1,25) - (-1,25) - (-1,25) )=25=Х21; и элемент 550-1-4=элемент 500-1-4+(А 455-1-Н 455-2-V 455-3+D455-4) \u003d 20 + (3.75 + (-1.25) - (-1.25) - (-1.25)) \u003d 25 \u003d X21; and element 550-1-4=element 500-1-4+(A 455-1-H 455-2-V 455-3+D

455-4) = 2 5+(3,7 5-(-1,25)-(-1,25) + (-1,25)) =3 0=Х12 .455-4) \u003d 2 5 + (3.7 5- (-1.25) - (-1.25) + (-1.25)) \u003d 3 0 \u003d X12.

Соответственно, получая остаточные данные, например, у1=21 и значения 5а=,25, H=-1,25, V=-1,25 и D=-1,25, оборудование обработки декодера может воспроизводить исходные значения X11, Х12, Х21 и Х22.Accordingly, by obtaining the residual data, for example, y1=21 and values 5a =.25, H=-1.25, V=-1.25, and D=-1.25, the decoder processing equipment can reproduce the original values X11, X12 , X21 and X22.

В соответствии с дополнительными вариантами осуществления на фиг. 9, рассмотренное здесь оборудование обработки кодера может быть выполнено с возможностью создания нескольких множеств данных 910 реконструкции. Например, первый участок сигнала, например, элементы X можно обрабатывать и кодировать для создания множества данных 910-1 реконструкции, как рассмотрено ранее. Аналогично тому, как рассмотрено ранее, кодер может быть выполнен с возможностью создания множества данных 910-2 реконструкции на основании элементов Z11, Z12, Z21 и Z22.In accordance with additional embodiments in FIG. 9, the encoder processing hardware discussed herein may be configured to generate multiple reconstruction data sets 910. For example, the first portion of the signal, such as X elements, may be processed and encoded to create a reconstruction data set 910-1 as previously discussed. Similarly as discussed previously, the encoder may be configured to generate a reconstruction data set 910-2 based on elements Z11, Z12, Z21, and Z22.

Как рассмотрено, каждое множество данных 910 реконструкции может включать в себя настройки для нескольких компонент, например, А (первой компоненты), H (второй компоненты), V (третьей компоненты) и D (четвертой компоненты) посредством преобразованного значения δa (первого преобразованного значения), Н (второго преобразованного значения), V (третьего преобразованного значения) и D (четвертого преобразованного значения). Первое преобразованное значение, например, 5a (дельта среднего) в каждом из множеств соответствует первому классу атрибутов; второе преобразованное значение в каждом из множеств соответствует второму классу атрибутов, например, горизонтальному (Н); третье преобразованное значение в каждом из множеств соответствует третьему классу атрибутов, например, вертикальному (V); четвертое преобразованное значение в каждом из множеств соответствует четвертому классу атрибутов, например, диагональному (D).As discussed, each reconstruction data set 910 may include settings for multiple components, e.g., A (first component), H (second component), V (third component), and D (fourth component) by means of the transformed value δa (the first transformed value ), H (second converted value), V (third converted value), and D (fourth converted value). The first converted value, for example, 5 a (delta mean) in each of the sets corresponds to the first attribute class; the second converted value in each of the sets corresponds to the second attribute class, for example, horizontal (H); the third transformed value in each of the sets corresponds to the third attribute class, for example, vertical (V); the fourth transformed value in each of the sets corresponds to the fourth attribute class, for example, diagonal (D).

- 18 040379- 18 040379

В одном варианте осуществления оборудование обработки кодера создает первую группировку 9251 для включения значения первой компоненты из каждого из нескольких множеств данных 910 реконструкции. Например, группировка 925-1 включает в себя компонентные значения Sa1, δa2,... .In one embodiment, the encoder processing hardware creates a first grouping 9251 to include a first component value from each of multiple reconstruction data sets 910. For example, grouping 925-1 includes component values S a1 , δ a 2,... .

Оборудование обработки кодера создает группировку 925-2 для включения значения второй компоненты, например H, из каждого из нескольких множеств данных 910 реконструкции. Например, группировка 925-2 включает в себя компонентные значения H1, H2,... .The encoder processing hardware creates a grouping 925-2 to include a second component value, such as H, from each of the multiple reconstruction data sets 910. For example, grouping 925-2 includes component values H1, H2,... .

Оборудование обработки кодера создает группировку 925-3 для включения значения третьей компоненты, например V, из каждого из нескольких множеств данных 910 реконструкции. Например, группировка 925-3 включает в себя компонентные значения V1, V2,... .The encoder processing hardware creates a grouping 925-3 to include a third component value, such as V, from each of the multiple reconstruction data sets 910. For example, grouping 925-3 includes component values V1, V2,... .

Оборудование обработки кодера создает группировку 925-4 для включения значения третьей компоненты, например D, из каждого из нескольких множеств данных 910 реконструкции. Например, группировка 925-4 включает в себя компонентные значения D1, D2,... .The encoder processing hardware creates a grouping 925-4 to include a third component value, such as D, from each of the multiple reconstruction data sets 910. For example, grouping 925-4 includes component values D1, D2,... .

В одном варианте осуществления оборудование обработки кодера кодирует группировки независимо друг от друга. Например, оборудование обработки кодера энтропийно кодирует первую группировку 925-1 в кодированную информацию 965-1 независимо от энтропийного кодирования второй группировки 925-2 в кодированную информацию 965-2.In one embodiment, the encoder processing hardware encodes the groupings independently of each other. For example, the encoder processing equipment entropy encodes the first grouping 925-1 into encoded information 965-1 independently of entropy encoding the second grouping 925-2 into encoded information 965-2.

В других неограничительных вариантах осуществления группировки преобразованных значений получаются группированием преобразованных значений, соответствующих одному и тому же участку сигнала (например, мозаичному элементу сигнала), и, таким образом, индивидуальным кодированием преобразованных остатков, соответствующих каждому мозаичному элементу сигнала. В других неограничительных вариантах осуществления, преобразованные значения, соответствующие одному и тому же множеству остаточных данных 910, назначаются данному символу, и оборудование обработки кодера кодирует последовательность символов, причем каждый из символов соответствует одному из множеств остаточных данных 910.In other non-limiting embodiments, groupings of transformed values are obtained by grouping the transformed values corresponding to the same signal tile (eg, tile), and thus individually encoding the transformed residuals corresponding to each tile. In other non-limiting embodiments, transformed values corresponding to the same residual data set 910 are assigned to a given symbol, and the encoder processing hardware encodes a sequence of symbols, with each of the symbols corresponding to one of the residual data sets 910.

Фиг. 3С иллюстрирует неограничительный вариант осуществления направленного разложения, применяемого к группировкам двух остатков, в случае 2D повышающей дискретизации с масштабным коэффициентом два в горизонтальном измерении и один в вертикальном измерении (т.е. для каждого родительского элемента с LOQ #(N-1) существляет два управляемых пэла на следующем в порядке возрастания LOQ #N, и, следовательно, два остатка нужно декодировать, чтобы надлежащим образом реконструировать упомянутые управляемые пэлы) согласно рассмотренным здесь вариантам осуществления.Fig. 3C illustrates a non-restrictive embodiment of directional decomposition applied to groupings of two residuals, in the case of 2D upsampling with a scale factor of two in the horizontal dimension and one in the vertical dimension (i.e., for each parent element with LOQ #(N-1) there are two managed pals on the next in ascending order LOQ #N, and therefore two residues need to be decoded to properly reconstruct said managed pals) according to the embodiments discussed here.

Кодер вычисляет, согласно формуле 3.21, две направленных компоненты А (для среднего) и Т (для наклона), и затем создает преобразованные остатки δa и Т, где δа вычисляется как разность между А и прогнозируемым средним РА, и РА вычисляется как разность между значением у1 элемента 308 и средним AvgP прогнозируемых значений, соответствующих двум элементам 307.The encoder calculates, according to formula 3.21, the two directional components A (for the mean) and T (for the slope), and then creates the transformed residuals δ a and T, where δ a is calculated as the difference between A and the predicted mean PA, and PA is calculated as the difference between the value of y 1 element 308 and the average AvgP of the predicted values corresponding to two elements 307.

Фиг. 3D иллюстрирует неограничительный вариант осуществления направленного разложения, применяемого к группировкам блоков 2x2 остатков, в случае 2D повышающей дискретизации с масштабным коэффициентом два в обоих измерениях (т.е. для каждого родительского элемента с LOQ #(N1) существует четыре управляемых пэла на следующем в порядке возрастания LOQ #N, и, следовательно, четыре остатка нужно декодировать, чтобы надлежащим образом реконструировать упомянутые управляемые пэлы) согласно рассмотренным здесь вариантам осуществления.Fig. 3D illustrates a non-restrictive embodiment of directional decomposition applied to 2x2 block groupings of residuals, in the case of 2D upsampling with a scale factor of two in both dimensions (i.e., for each parent element with LOQ #(N1) there are four managed pals in the next in order increasing LOQ #N, and therefore four residues need to be decoded in order to properly reconstruct said controlled pals) according to the embodiments discussed here.

Блок остатков 300 представляет собой участок плоскости остаточных данных на данном LOQ #N, который обрабатывается декодером и объединяется с прогнозируемым представлением сигнала на данном LOQ #N для создания представления сигнала на упомянутом данном LOQ #N. В частности, блок остатков 300 выполнен из четырех остатков ry, ri,j+1, ri+1,j и ri+1,j+1.Residual block 300 is a portion of the residual data plane at a given LOQ #N that is processed by a decoder and combined with a predicted signal representation at a given LOQ #N to create a signal representation at said given LOQ #N. Specifically, the block of residues 300 is made up of four residues ry, ri,j +1 , r i+1 ,j and r i+1 ,j +1 .

Остатки 300 обрабатываются блоком 310 направленного разложения согласно формуле 3.11, с образованием направленных компонент 320. Затем направленные компоненты 320 и прогнозируемое среднее 340 обрабатываются вычислителем 330 преобразованных остатков, с образованием преобразованных остатков 350. Затем преобразованные остатки 350 квантуются квантователем 360, с образованием квантованных преобразованных остатков 370.Residuals 300 are processed by a directional decomposition block 310 according to Formula 3.11 to form directional components 320. Directional components 320 and predicted mean 340 are then processed by a transformed residuals calculator 330 to form transformed residuals 350. The transformed residuals 350 are then quantized by quantizer 360 to form quantized transformed residuals. 370.

В неограничительном варианте осуществления квантованные преобразованные остатки 370 затем дополнительно обрабатываются и кодируются в кодированные данные реконструкции. В неограничительном варианте осуществления квантованные преобразованные остатки для полного сигнала группируются в отдельные группировки, которые по отдельности энтропийно кодируются в отдельные множества кодированных данных реконструкции. В неограничительном варианте осуществления отдельные группировки соответствуют отдельным классам преобразованных остатков (например, без ограничения, квантованным преобразованным остаткам, соответствующим компонентам H для полного сигнала против квантованных преобразованных остатков, соответствующих компонентам V для полного сигнала, и т.д.). В другом неограничительном варианте осуществления отдельные группировки соответствуют отдельным участкам сигнала (например, без ограничения, мозаичным элементам сигнала).In a non-limiting embodiment, the quantized transformed residuals 370 are then further processed and encoded into encoded reconstruction data. In a non-limiting embodiment, the quantized transformed residuals for the total signal are grouped into separate groupings, which are individually entropy encoded into separate reconstruction encoded data sets. In a non-limiting embodiment, the individual groupings correspond to individual classes of transformed residuals (eg, without limitation, quantized transformed residuals corresponding to H components for the total signal versus quantized transformed residuals corresponding to V components for the total signal, etc.). In another non-limiting embodiment, the individual groupings correspond to individual sections of the signal (eg, without limitation, signal tiles).

В соответствии с фиг. 3D блок 310 направленного разложения создает форматированное множествоIn accordance with FIG. 3D directional decomposition block 310 creates a formatted set

- 19 040379 корректировочных значений, например, направленные компоненты 320 из множества остатков 300 (например, корректировочных значений). Вычислитель 330 преобразует форматированное множество корректировочных значений, например, направленные компоненты 320, в преобразованные остатки 350 (например, корректировочные значения). Затем кодер применяет алгоритм 360 квантователя к множеству корректировочных значений (преобразованных остатков 350) для создания множества квантованных корректировочных значений, например, квантованного преобразованного остатка 370.- 19 040379 correction values, eg directional components 320 of the plurality of residues 300 (eg correction values). The calculator 330 converts the formatted set of adjustment values, eg, directional components 320, into transformed residuals 350 (eg, adjustment values). The encoder then applies the quantizer algorithm 360 to the set of correction values (transformed residuals 350) to create a set of quantized correction values, such as quantized transformed residual 370.

В одном варианте осуществления множество корректировочных значений δa, H, V, D представляет собой вектор, включающий в себя несколько компонент данных реконструкции (например, компоненту 5a, компоненту H, компоненту V, компоненту D). Квантователь 360 квантует каждую из корректировочных компонент для создания квантованного множества корректировочных значений, например остатков 370.In one embodiment, the set of correction values δ a , H, V, D is a vector including multiple reconstruction data components (eg, 5a component, H component, V component, D component). Quantizer 360 quantizes each of the correction components to create a quantized set of correction values, such as residuals 370.

Разные компоненты в преобразованных остатках 350 можно квантовать согласно разным правилам. Например, первое множество диапазонов можно использовать для квантования компоненты 5a в соответствующих остатках 370. Каждому диапазону может назначаться соответствующее значение. В зависимости от того, в какой из диапазонов попадает значение компоненты 5a, соответствующее значение, назначенное диапазону, затем назначается компоненте 5a в качестве квантованного значения для компоненты.Different components in the transformed residues 350 can be quantized according to different rules. For example, the first set of ranges can be used to quantize the 5a component in the respective residuals 370. Each range can be assigned a corresponding value. Depending on which of the ranges the value of component 5a falls in, the corresponding value assigned to the range is then assigned to component 5a as the quantized value for the component.

Второе множество диапазонов можно использовать для квантования компоненты H в соответствующих остатках 370. Каждому диапазону во втором множестве может назначаться соответствующее квантованное значение. В зависимости от того, в какой из диапазонов во втором множестве попадает значение компоненты H, соответствующее значение, назначенное диапазону, затем назначается компоненте H в качестве квантованного значения для компоненты.The second set of ranges may be used to quantize the H component in the respective residuals 370. Each range in the second set may be assigned a corresponding quantized value. Depending on which of the ranges in the second set the value of the H component falls in, the corresponding value assigned to the range is then assigned to the H component as the quantized value for the component.

Таким образом, множество разных диапазонов квантования можно использовать для генерации квантованных значений для каждого из различных типов компонент 5a, H, V, D. Как упомянуто, квантование используется для генерации аналогичных настроек для, в остальном, разных компонентных настроек. Квантование снижает объем данных, который требуется для захвата сигнала.Thus, a variety of different quantization ranges can be used to generate quantized values for each of the different component types 5a, H, V, D. As mentioned, quantization is used to generate similar settings for otherwise different component settings. Quantization reduces the amount of data required to capture a signal.

Соответственно, рассмотренные здесь варианты осуществления включают в себя оборудование компьютерного процессора для квантования первой компоненты корректировочных данных в векторе 5а, H, V, D на основании первых правил квантования. Оборудование компьютерного процессора квантует вторую компоненту корректировочных данных в векторе на основании вторых правил квантования. Вторые правила квантования отличаются от первых правил квантования.Accordingly, the embodiments discussed herein include computer processor hardware for quantizing the first correction data component in vector 5a, H, V, D based on first quantization rules. The computer processor hardware quantizes the second component of the correction data in the vector based on the second quantization rules. The second quantization rules are different from the first quantization rules.

Фиг. 3Е иллюстрирует другой неограничительный вариант осуществления квантования и преобразования блока 2x2 остатков 300, причем остатки квантуются до преобразования согласно рассмотренным здесь вариантам осуществления. Следует подчеркнуть, что квантование до преобразования является важным и дополнительным новым этапом, предусмотренным этим изобретением, поскольку до сих пор, в традиционных способах кодирования квантование применялось после преобразования, по причинам, которые включают в себя возможность квантования определенных преобразованных параметров тяжелее, чем другие, т.е., вообще говоря, придания более высокоприоритетным частям преобразования более высокой битовой скорости.Fig. 3E illustrates another non-restrictive embodiment of quantizing and transforming a 2x2 block of residuals 300, with the residuals being quantized prior to transform according to the embodiments discussed herein. It should be emphasized that pre-transform quantization is an important and additional new step provided by this invention, since, until now, traditional coding methods have applied post-transform quantization, for reasons that include the possibility of quantizing certain transformed parameters more heavily than others, i.e., That is, generally speaking, giving the higher priority parts of the transform a higher bit rate.

Как показано на фиг. 3Е, в этом неограничительном варианте осуществления квантование остатка осуществляется до перехода к этапу преобразования, и, в частности, квантователь 380 обрабатывает остатки 300, создавая квантованные остатки 309.As shown in FIG. 3E, in this non-limiting embodiment, the quantization of the residual is performed prior to proceeding to the transform step, and in particular, the quantizer 380 processes the residuals 300 to produce quantized residuals 309.

Квантованные остатки 309 обрабатываются блоком 315 направленного разложения без потерь, который создает направленные компоненты 325 (ldc) без потерь посредством обработки вектора четырех квантованных остатков 309 (qr) согласно следующей формуле:The quantized residuals 309 are processed by a lossless directional decomposition block 315, which produces lossless directional components 325 (ldc) by processing a vector of four quantized residuals 309 (qr) according to the following formula:

ldc- М дгldc- M dg

Необходимо подчеркнуть, что количество битов, необходимое для направленных компонентов 325 без потерь больше, чем количество битов, используемых для описания квантованных остатков 309, поскольку направленные компоненты 325 без потерь получаются путем осуществления операций сложения и вычитания квантованных остатков 309.It should be emphasized that the number of bits required for the lossless directional components 325 is greater than the number of bits used to describe the quantized residuals 309, since the lossless directional components 325 are obtained by performing addition and subtraction operations on the quantized residuals 309.

Направленные компоненты 325 без потерь и прогнозируемая сумма 345 обрабатываются вычислителем 335 преобразованных остатков, с образованием преобразованных остатков 355.The lossless directional components 325 and the predicted sum 345 are processed by the transformed residual calculator 335 to form the transformed residuals 355.

В неограничительном варианте осуществления квантование остатков 300 в квантователе 380, по меньшей мере, частично основано на параметрах, создаваемых посредством обработки всей плоскости остатков, к которым принадлежат остатки 300 (т.е. на основании полного сигнала).In a non-limiting embodiment, the quantization of residues 300 in quantizer 380 is based at least in part on parameters generated by processing the entire plane of residues to which residues 300 belong (ie, based on the total signal).

В неограничительном варианте осуществления квантование остатков 300 осуществляется квантоваIn a non-limiting embodiment, the quantization of residues 300 is performed by quantization

- 20 040379 телем 380 способом оптимизации, который гарантирует, что разность между реконструированным элементом (т.е. комбинацией прогнозируемого элемента и соответствующего ему остатка) и соответствующим элементом в исходном сигнале ниже данного порога максимальной ошибки, эффективно гарантирует управление ошибками представления сигнала, реконструированного на декодере. В некоторых неограничительных вариантах осуществления квантование остатков 300 осуществляется на основании параметров, которые создаются посредством обработки, по существу, полного сигнала и/или всей плоскости остатков, которая содержит остатки 300. В неограничительном варианте осуществления это достигается посредством обработки полного сигнала и всей плоскости остатков, генерации карты приоритетов, которая назначает значение приоритета каждому остатку в плоскости остатков; затем квантование остатков осуществляется, по меньшей мере, частично на основании упомянутых значений приоритета.- 20 040379 an optimization method that ensures that the difference between the reconstructed element (i.e., the combination of the predicted element and its corresponding residual) and the corresponding element in the original signal is below a given maximum error threshold effectively guarantees error control of the representation of the signal reconstructed at decoder. In some non-limiting embodiments, the quantization of the residuals 300 is based on parameters that are generated by processing the substantially complete signal and/or the entire residual plane that contains the residuals 300. In a non-limiting embodiment, this is achieved by processing the total signal and the entire residual plane, generating a priority map that assigns a priority value to each residual in the residual plane; the residuals are then quantized at least in part based on said priority values.

В неограничительном варианте осуществления преобразованные остатки представляют собой символы, выбранные в наборах символов, имеющих разное количество битов (т.е. суммарное количество символов) на основании относительной позиции каждого преобразованного остатка в векторе преобразованных остатков 355.In a non-limiting embodiment, the transformed residuals are symbols selected in character sets having a different number of bits (i.e., total number of symbols) based on the relative position of each transformed residual in the vector of transformed residuals 355.

Как рассмотрено выше, при желании, квантование можно осуществлять непосредственно на остатках 300 до разложения на соответствующие значения. Например, алгоритм 380 квантователя принимает первое множество корректировочных значений (остатков 300) и создает квантованное множество корректировочных значений, например, квантованный остаток 309. В одном варианте осуществления блок 315 направленного разложения применяет одну или более не имеющих потерь и обратимых операций на принятом квантованном множестве корректировочных значений для создания промежуточного множества корректировочных значений, например S, V1, Н1, D1. Вычислитель 335 принимает значение (например, прогнозируемая сумма), выведенное, по меньшей мере, частично на основании представления сигнала на втором уровне качества и прогнозируемого представления сигнала на первом уровне качества. Вычислитель 335 использует значение (например, прогнозируемую сумму 345) для преобразования промежуточного множества корректировочных значений S, V1, Н1, D1 в преобразованный остаток 355 (например, 5s, H1, V1, D1).As discussed above, if desired, quantization can be performed directly on the residues 300 before decomposing into appropriate values. For example, quantizer algorithm 380 receives a first set of correction values (residuals 300) and creates a quantized correction value set, such as quantized residual 309. In one embodiment, directional decomposition block 315 applies one or more lossless and reversible operations on the received quantized correction set. values to create an intermediate set of adjustment values, such as S, V 1 , H 1 , D 1 . The calculator 335 receives a value (eg, a predicted sum) derived at least in part based on the signal representation at the second quality level and the predicted signal representation at the first quality level. Calculator 335 uses the value (eg, predicted sum 345) to convert an intermediate set of adjustment values S, V 1 , H 1 , D 1 into a converted remainder 355 (eg, 5s, H 1 , V 1 , D 1 ).

В одном варианте осуществления настройки квантованного множества корректировочных значений (например, квантованные остатки 309) создаются таким образом, что разности между настройками во множестве из квантованного множества корректировочных значений (например, квантованными остатками 309) и соответствующими настройками во множестве корректировочных значений (например, настройками 300) ниже порогового значения ошибки.In one embodiment, the settings of the quantized adjustment value set (eg, quantized residuals 309) are created such that the differences between the settings in the set of quantized adjustment value sets (eg, quantized residuals 309) and the corresponding settings in the adjustment value set (eg, settings 300 ) below the error threshold.

Дополнительные варианты осуществленияAdditional Embodiments

Как рассмотрено выше, корректировочные значения можно квантовать в любой подходящий момент в процессе кодирования. Заметим, что в соответствии с другими дополнительными вариантами осуществления множество корректировочных значений относится к реконструкции некоторого конкретного положения в плоскости нескольких элементов, которые кодируются на разных уровнях качества. Каждый из различных участков элементов в плоскости можно квантовать разными объемами в зависимости от упомянутого конкретного положения, где находятся соответствующие элементы. Например, в относительно однородных областях сигнала, соответствующая область можно квантовать в меньшей степени для сохранения хорошего качества сигнала таких областей; области высокой контрастности можно квантовать в меньшей степени для сохранения хорошего качества сигнала таких областей; области в сигнале, где обнаруживаются конкретный объект, например, человек или текст, можно квантовать в меньшей степени для сохранения хорошего качества сигнала таких областей; и т.д. Соответственно, рассмотренные здесь варианты осуществления могут включать в себя квантование корректировочного значения в зависимости от атрибутов сигнала, к которому относится множество корректировочных значений. В соответствии с дополнительными вариантами осуществления, множество корректировочных значений может представлять собой вектор, включающий в себя несколько компонент данных реконструкции (например, компоненту δ, компоненту H, компоненту V, компоненту D). При кодировании, два или более из этих компонентов можно объединять и представлять единым кодированным символом.As discussed above, the correction values may be quantized at any suitable time during the encoding process. Note that, in accordance with other additional embodiments, the set of correction values refers to the reconstruction of some particular position in the plane of several elements that are encoded at different quality levels. Each of the different portions of the elements in the plane can be quantized with different volumes depending on the specific location mentioned where the corresponding elements are located. For example, in relatively homogeneous areas of the signal, the corresponding area can be quantized to a lesser extent to maintain good signal quality of such areas; areas of high contrast can be quantized to a lesser extent to maintain good signal quality of such areas; areas in the signal where a specific object, such as a person or text, is detected, can be quantized to a lesser extent to maintain good signal quality of such areas; etc. Accordingly, the embodiments discussed herein may include quantizing the correction value depending on the attributes of the signal to which the plurality of correction values relate. According to further embodiments, the set of adjustment values may be a vector including multiple reconstruction data components (eg, δ component, H component, V component, D component). When encoding, two or more of these components may be combined and represented as a single encoded symbol.

Как упомянуто, каждую из нескольких областей исходного сигнала можно кодировать с использованием соответствующего множества корректировочных значений (например, δ, H, V, D). Например, первый участок или область сигнала можно кодировать посредством первого множества корректировочных значений (например, δ1, H1, V1, D1); второй участок или область сигнала можно кодировать посредством второго множества корректировочных значений (например, 52, H2, V2, D2); третий участок или область сигнала можно кодировать посредством третьего множества корректировочных значений (например, δ3, Н3, V3, D3); и т.д. Рассмотренные здесь варианты осуществления могут включать в себя кодирование каждого по меньшей мере из двух из нескольких множеств данных реконструкции (например, δ, H, V, D) или их участков с использованием общего символа. Соответственно, единый символ можно использовать для представления настроек для нескольких множеств корректировочных значений.As mentioned, each of the multiple regions of the original signal may be encoded using a corresponding set of correction values (eg, δ, H, V, D). For example, the first section or area of the signal can be encoded by the first set of correction values (eg, δ 1 , H 1 , V 1 , D 1 ); the second portion or region of the signal may be encoded with a second set of correction values (eg, 52, H 2 , V 2 , D 2 ); the third portion or region of the signal may be encoded by a third set of correction values (eg, δ 3 , H 3 , V 3 , D 3 ); etc. The embodiments discussed herein may include encoding each of at least two of several reconstruction data sets (eg, δ, H, V, D) or portions thereof using a common symbol. Accordingly, a single symbol may be used to represent settings for multiple sets of adjustment values.

Фиг. 4А иллюстрирует неограничительный вариант осуществления обратнонаправленного разложения, осуществляемого устройством декодера согласно рассмотренным здесь вариантам осуществлеFig. 4A illustrates a non-restrictive embodiment of reverse decomposition performed by a decoder apparatus according to the embodiments discussed herein.

- 21 040379 ния.- 21 040379 niya.

Блок 410 обратнонаправленного разложения принимает пять плоскостей элементов с разрешением XxY: плоскость 400-5 прогнозируемых средних значений и четыре плоскости преобразованных остатков: плоскость δ 400-1, плоскость H 400-2, плоскость V 400-3 и плоскость D 400-4.The backward decomposition block 410 receives five feature planes with XxY resolution: a 400-5 predicted mean plane and four transformed residual planes: a 400-1 δ plane, a 400-2 H plane, a 400-3 V plane, and a 400-4 D plane.

Блок 410 обрабатывает принятые плоскости согласно обратнонаправленному разложению, создавая плоскость остатков с разрешением 2Xx2Y 420.Block 410 processes the received planes according to the backward decomposition, producing a residual plane with a resolution of 2Xx2Y 420.

В неограничительном варианте осуществления, блок 410 выбирает соответствующие элементы в пяти входных плоскостях, и для каждой группировки соответствующих элементов осуществляет обратнонаправленное разложение, реконструируя направленные компоненты и затем надлежащим образом суммируя и вычитая направленные компоненты для создания множества остатков, соответствующих группировке.In a non-restrictive embodiment, block 410 selects the appropriate elements in the five input planes, and for each grouping of the corresponding elements, back-decomposes by reconstructing the directional components and then adding and subtracting the directional components appropriately to create a set of residuals corresponding to the grouping.

Фиг. 4В иллюстрирует другой неограничительный вариант осуществления обратнонаправленного разложения согласно рассмотренным здесь вариантам осуществления. В частности, схема иллюстрирует операции, осуществляемые процессором сигнала, сконфигурированного как декодер, для реконструкции множества остатков 480.Fig. 4B illustrates another non-limiting embodiment of reverse decomposition according to the embodiments discussed herein. In particular, the diagram illustrates the operations performed by a signal processor configured as a decoder to reconstruct a set of residues 480.

Четыре квантованных параметра Q(δА) 430-1, Q(H) 430-2, Q(V) 430-3 и Q(D) 430-4 обрабатываются, соответственно, деквантователем 440-1, деквантователем 440-2, деквантователем 440-3 и деквантователем 440-4. Деквантователь 440-1 создает параметр деквантованной дельты 445-1, который обрабатывается объединителем 450 и объединяется с прогнозируемым средним 430-5, создавая деквантованную среднюю компоненту 455-1. Деквантователь 440-2 создает деквантованную горизонтальную компоненту 4552. Деквантователь 440-3 создает деквантованную вертикальную компоненту 455-3. Деквантователь 440-4 создает деквантованную диагональную компоненту 455-4.The four quantized parameters Q(δ A ) 430-1, Q(H) 430-2, Q(V) 430-3 and Q(D) 430-4 are processed respectively by dequantizer 440-1, dequantizer 440-2, dequantizer 440-3 and dequantizer 440-4. The dequantizer 440-1 creates a dequantized delta parameter 445-1, which is processed by the combiner 450 and combined with the predicted mean 430-5 to create the dequantized mean component 455-1. Dequantizer 440-2 creates a dequantized horizontal component 4552. Dequantizer 440-3 creates a dequantized vertical component 455-3. The dequantizer 440-4 creates a dequantized diagonal component 455-4.

Параметры 455-1, 455-2, 455-3 и 455-4 обрабатываются блоком 470 обратнонаправленного разложения, согласно вычислениям, соответствующим матрице М 460, с образованием остатков 480.Parameters 455-1, 455-2, 455-3, and 455-4 are processed by the reverse decomposition block 470, according to calculations corresponding to matrix M 460, to form residues 480.

В неограничительном варианте осуществления, матрица М 460 соответствует шестнадцати коэффициентам, и остатки 480 получаются посредством операций сложения и вычитания параметров 455-1, 4 55-2, 455-3, 455-4, согласно упомянутым коэффициентам. В неограничительном варианте осуществления, остатки 480 являются множеством четырех остатков, и каждый из упомянутых остатков получается путем умножения каждого из параметров 455-1, 455-2, 455-3, 455-4 на коэффициент матрицы М 460 и затем суммирования результатов упомянутых умножений. В другом неограничительном варианте осуществления, матрица М 460 является матрицей 4x4, и вектор остатков 480 получается путем умножения вектора параметров 455-1, 455-2, 455-3, 455-4 на матрицу М 460.In a non-limiting embodiment, the matrix M 460 corresponds to sixteen coefficients, and the remainders 480 are obtained by adding and subtracting parameters 455-1, 455-2, 455-3, 455-4, according to the mentioned coefficients. In a non-limiting embodiment, residues 480 are a set of four residues, and each of said residues is obtained by multiplying each of parameters 455-1, 455-2, 455-3, 455-4 by a matrix factor M 460 and then summing the results of said multiplications. In another non-limiting embodiment, the matrix M 460 is a 4x4 matrix and the residual vector 480 is obtained by multiplying the parameter vector 455-1, 455-2, 455-3, 455-4 by the matrix M 460.

В неограничительном варианте осуществления, каждый из деквантователей 440-1, 440-2, 440-3 и 440-4 осуществляет операции квантования согласно конкретным параметрам квантования (например, операции деквантования, осуществляемые на параметре 430-1 отличаются от операций деквантования, осуществляемых на параметре 430-2).In a non-limiting embodiment, dequantizers 440-1, 440-2, 440-3, and 440-4 each perform quantization operations according to specific quantization parameters (e.g., dequantization operations performed on parameter 430-1 are different from dequantization operations performed on parameter 430-2).

Как показано на фиг. 4В, разные операции деквантования можно применять к принятым квантованным данным, например, Q(δА) 430-1, Q(H) 430-2, Q(V) 430-3 и Q(D) 430-4. Деквантователь 440-1 применяет первую операцию деквантования для воспроизведения первого корректировочного значения, например, деквантованной дельты 445-1; деквантователь 440-2 применяет вторую операцию деквантования для воспроизведения второго корректировочного значения 455-2; деквантователь 440-3 применяет третью операцию деквантования для воспроизведения третьего корректировочного значения 455-3; деквантователь 440-4 применяет четвертую операцию деквантования для воспроизведения четвертого корректировочного значения 455-4. Каждая операция деквантования может быть уникальна по отношению друг к другу.As shown in FIG. 4B, different dequantization operations can be applied to the received quantized data, such as Q( δA ) 430-1, Q(H) 430-2, Q(V) 430-3, and Q(D) 430-4. The dequantizer 440-1 applies the first dequantization operation to reproduce the first correction value, such as the dequantized delta 445-1; the dequantizer 440-2 applies the second dequantization operation to reproduce the second correction value 455-2; the dequantizer 440-3 applies the third dequantization operation to reproduce the third correction value 455-3; the dequantizer 440-4 applies the fourth dequantization operation to reproduce the fourth correction value 455-4. Each dequantization operation may be unique with respect to each other.

Фиг. 4С иллюстрирует другой неограничительный вариант осуществления обратнонаправленного разложения, осуществляемого процессором сигнала, сконфигурированного как декодер, для реконструкции множества четырех остатков 480 согласно рассмотренным здесь вариантам осуществления.Fig. 4C illustrates another non-restrictive embodiment of reverse decomposition performed by a signal processor configured as a decoder to reconstruct a set of four residues 480 according to the embodiments discussed here.

Вариант осуществления, показанный на фиг. 4С, осуществляет операции, которые аналогичны осуществляемым согласно варианту осуществления, проиллюстрированному на фиг. 4В, за исключением того, что в этом случае декодер принимает только два квантованных параметра Q(H) и Q (V) для реконструкции блока 2x2 четырех остатков 480. Это обусловлено тем, что информация, переносимая параметрами 430-1 и 430-4 на фиг. 4В, вообще говоря, менее важна для восприятия качества, поэтому, в соответствии с ограничениями по полосе, декодер, показанный на фиг. 4С, имеет возможность реконструировать остатки 480 только на основании 430-2 и 430-3, подставляя вместо 430-1 и 430-4 значение, принятое по умолчанию (например, без ограничения, нуль).The embodiment shown in FIG. 4C performs operations that are similar to those carried out according to the embodiment illustrated in FIG. 4B, except that in this case the decoder only receives two quantized parameters Q(H) and Q(V) to reconstruct the 2x2 block of four residues 480. This is because the information carried by parameters 430-1 and 430-4 on fig. 4B is generally less important to the perception of quality, therefore, due to bandwidth limitations, the decoder shown in FIG. 4C is able to reconstruct residuals 480 based on 430-2 and 430-3 only by substituting a default value (eg, without limitation, zero) for 430-1 and 430-4.

Параметры 430-2 и 430-3 обрабатываются деквантователями 440-2 и 440-3, создавая параметры 4552 и 455-3. Блок 470 принимает прогнозируемое среднее 430-5, деквантованную горизонтальную компоненту 455-2, деквантованную вертикальную компоненту 455-3 и нулевое значение 440-6, создавая остатки 480 согласно вычислениям, соответствующим матрице М 460.Parameters 430-2 and 430-3 are processed by dequantizers 440-2 and 440-3 creating parameters 4552 and 455-3. Block 470 receives a predicted mean 430-5, a dequantized horizontal component 455-2, a dequantized vertical component 455-3, and a zero value 440-6, producing residuals 480 according to the calculations corresponding to matrix M 460.

Фиг. 4D иллюстрирует неограничительный вариант осуществления обратного разложения без по- 22 040379 терь, осуществляемого процессором сигнала, сконфигурированного как декодер, для реконструкции множества четырех остатков 483 согласно рассмотренным здесь вариантам осуществления. Вариант осуществления иллюстрирует обратное разложение с образованием блока из четырех квантованных остатков 481, преобразованных посредством преобразования разложения без потерь, т.е. с помощью операций квантования, осуществляемых до преобразования, а не после преобразования.Fig. 4D illustrates a non-restrictive, lossless inverse decomposition performed by a signal processor configured as a decoder to reconstruct a set of four residues 483 according to the embodiments discussed herein. An embodiment illustrates the inverse decomposition to form a block of four quantized residues 481 transformed by a lossless decomposition transformation, i.e. using quantization operations performed before the transformation, and not after the transformation.

Преобразованный остаток Rt 1, 432-1, параметр, образованный 2 битами, принимается объединителем 451 и объединяется с прогнозируемой суммой 432-5, параметром, образованным n+2 битами, с образованием суммы S квантованных остатков 457-1, параметра, образованного n+2 битами.The transformed residual R t 1 , 432-1, the parameter formed by 2 bits, is received by the combiner 451 and combined with the predicted sum 432-5, the parameter formed by n+2 bits, to form the sum S of quantized residuals 457-1, the parameter formed by n +2 bits.

Преобразованные остатки R/ 432-2, параметр, образованный n+1 битами, Rt3 432-3, параметр, образованный n+1 битами, и R/ 432-4, параметр, образованный n битами, принимаются и обрабатываются реконструктором 495 избыточных битов совместно с суммой S квантованных остатков 457-1. Реконструктор 495 избыточных битов использует известную избыточность информации, генерируемую разложением без потерь, которое осуществлялось на стороне кодера, и создает дополнительные биты для 4322, 432-3 и 432-4 путем использования в качестве младшего бита младший бит 457-1 и в качестве второго после младшего бита, прибавленного к 432-4, результат операции исключающего ИЛИ (XOR) соответствующих битов 457-1, 432-2 и 432-3. Таким образом, реконструктор 495 избыточных битов создает четыре параметра S 457-1, Н1 457-2, V1 457-3 и D1 457-4, образованные n+2 битами и характеризующиеся тем, что все они имеют один и тот же младший бит и вторые после младшего биты, в результате чего, количество единиц в упомянутых вторых после младшего битах является четным числом.The converted residuals R/ 432-2, a parameter formed by n+1 bits, Rt 3 432-3, a parameter formed by n+1 bits, and R/ 432-4, a parameter formed by n bits, are received and processed by the redundant bit reconstructor 495 together with the sum S of quantized residues 457-1. The redundant bit reconstructor 495 uses the known redundancy of information generated by the lossless decomposition that was performed on the encoder side and creates additional bits for 4322, 432-3 and 432-4 by using the least significant bit of 457-1 as the least significant bit and as the second after the least significant bit added to 432-4 is the exclusive OR (XOR) result of the corresponding bits 457-1, 432-2 and 432-3. Thus, redundant bit reconstructor 495 creates four parameters S 457-1, H 1 457-2, V 1 457-3 and D 1 457-4 formed by n+2 bits and characterized in that they all have the same the least significant bit and the second after the least significant bit, as a result, the number of ones in said second after the least significant bit is an even number.

Параметры 457-1, 457-2, 457-3 и 457-4 обрабатываются посредством обратнонаправленного разложения 472 согласно операциям, соответствующим параметрам, включенным в матрицу М 460, с образованием множества из четырех квантованных остатков 482, причем каждый из упомянутых квантованных остатков образован n битами.Parameters 457-1, 457-2, 457-3, and 457-4 are processed by reverse decomposition 472 according to operations corresponding to the parameters included in the matrix M 460 to form a set of four quantized residues 482, each of said quantized residues being formed by n bits.

Затем квантованные остатки 482 обрабатываются деквантователем 442 с образованием остатков 483.The quantized residues 482 are then processed by dequantizer 442 to form residues 483.

Описанные операции, осуществляемые блоком 495 реконструкции избыточных битов для реконструкции избыточной информации в параметрах 457-1, 457-2, 457-3 и 457-4 (которая является известным следствием преобразования без потерь, которое осуществлялось на стороне кодера) являются просто неограничительным вариантом осуществления. Специалисты в данной области техники могут предложить несколько других способов выделения упомянутой избыточной информации на стороне кодера (таким образом, избегая кодирования и передачи избыточной информации) и ее реконструкции на стороне декодера.The described operations performed by redundant bit reconstructor 495 for reconstructing redundant information in parameters 457-1, 457-2, 457-3 and 457-4 (which is a well-known consequence of the lossless transformation that was performed on the encoder side) are just a non-restrictive embodiment. . Those skilled in the art can suggest several other ways of extracting said redundant information on the encoder side (thus avoiding encoding and transmitting redundant information) and reconstructing it on the decoder side.

Как показано, множество корректировочных значений может представлять собой вектор из нескольких корректировочных компонент Rt 1, R/, R/, R‘4. Применяя матрицу 460 и соответствующую обработку к вектору из нескольких корректировочных компонент, оборудование обработки декодера выводит множество квантованных корректировочных значений, например, остатков 482. С помощью деквантователя 442, оборудование обработки декодера применяет алгоритм деквантования к множеству квантованных корректировочных значений, например, остаткам 482 для создания множества деквантованных корректировочных значений, например, остатков 483 (т.е. данных реконструкции). В одном варианте осуществления, оборудование обработки декодера применяет множество из деквантованного множества корректировочных значений, например остатков 483, к предварительному представлению сигнала для создания рассмотренного здесь вторичного представления сигнала.As shown, the set of adjustment values may be a vector of several adjustment components R t 1 , R/, R/, R' 4 . By applying a matrix 460 and appropriate processing to a vector of multiple correction components, the decoder processing hardware outputs a set of quantized correction values, such as residuals 482. With a dequantizer 442, the decoder processing hardware applies a dequantization algorithm to a set of quantized correction values, such as residuals 482, to create a plurality of dequantized correction values, eg, residuals 483 (ie reconstruction data). In one embodiment, the decoder processing equipment applies a plurality of the dequantized correction value set, eg residuals 483, to the pre-representation of the signal to create the secondary signal representation discussed herein.

В одном варианте осуществления для вывода множества деквантованных корректировочных значений, оборудование обработки декодера может быть выполнено с возможностью применения объединителя 451 для модификации конкретной корректировочной компоненты в векторе для создания модифицированного вектора из нескольких корректировочных компонент (например, остатка 457-1, остатка 4322, остатка 432-3, остатка 432-4). Одна или более из нескольких корректировочных компонент в модифицированном множестве могут иметь разные битовые длины. Оборудование обработки декодера применяет первый алгоритм к модифицированному вектору (например, остатку 457-1, остатку 432-2, остатку 4322, остатку 432-4) из нескольких корректировочных компонент для надлежащей корректировки битовых длин компонент в модифицированном множестве до общей длины, например n+2, как в этом неограничительном иллюстративном варианте осуществления.In one embodiment, to output a plurality of dequantized correction values, the decoder processing hardware may be configured to use combiner 451 to modify a particular correction component in the vector to create a modified vector from multiple correction components (e.g., residual 457-1, residual 4322, residual 432 -3, remainder 432-4). One or more of the multiple correction components in the modified set may have different bit lengths. The decoder processing equipment applies the first algorithm to the modified vector (e.g., residual 457-1, residual 432-2, residual 4322, residual 432-4) of multiple adjustment components to properly adjust the bit lengths of the components in the modified set to a total length, such as n+ 2 as in this non-restrictive illustrative embodiment.

Фиг. 5 иллюстрирует неограничительный вариант осуществления операций, осуществляемых декодером, согласно рассмотренным здесь вариантам осуществления. Декодер реконструирует, на основании множества из четырех прогнозируемых элементов 500-1 с LOQ #1, на соответствующем элементе представления сигнала с более низким LOQ #2 и на четырех параметрах 445-1, 455-2, 455-3 и 455-4, четыре элемента 550-1 представления сигнала с LOQ #1.Fig. 5 illustrates a non-restrictive embodiment of the operations performed by a decoder according to the embodiments discussed herein. The decoder reconstructs, based on the set of four predictive elements 500-1 with LOQ #1, on the corresponding signal representation element with lower LOQ #2 and on the four parameters 445-1, 455-2, 455-3 and 455-4, four signal representation element 550-1 with LOQ #1.

Блок 520 обрабатывает четыре элемента 500-1 и соответствующий элемент представления 510 с LOQ #2, создавая прогнозируемое среднее (РА) 430-5.Block 520 processes the four elements 500-1 and the corresponding representation element 510 with LOQ #2, producing a predictive mean (PA) 430-5.

Прогнозируемое среднее 430-5 объединяется с параметром дельта 445-1, создавая параметр А 4551.The predicted mean of 430-5 is combined with the delta of 445-1 to create the A of 4551.

Параметры 455-1, 455-2, 455-3 и 455-4 объединяются с элементами 500-1-1, 500-1-2, 500-1-3 и 500- 23 040379Parameters 455-1, 455-2, 455-3 and 455-4 are combined with elements 500-1-1, 500-1-2, 500-1-3 and 500-23 040379

1-4 согласно операциям (сложения и/или вычитания), указанным на фиг. 5, создавая элементы 550-1-1,1-4 according to the operations (addition and/or subtraction) shown in FIG. 5, creating elements 550-1-1,

550-1-2, 550-1-3 и 550-1-4. Например, элемент 550-1-1 получается путем прибавления 455-1, 455-2, 455-3 и 455-4 к 500-1-1; элемент 550-1-2 получается путем прибавления 455-1 и 455-3 и путем вычитания 455-2 и 455-4 к 500-1-2; и т.д.550-1-2, 550-1-3 and 550-1-4. For example, element 550-1-1 is obtained by adding 455-1, 455-2, 455-3 and 455-4 to 500-1-1; element 550-1-2 is obtained by adding 455-1 and 455-3 and subtracting 455-2 and 455-4 to 500-1-2; etc.

В неограничительном варианте осуществления, элементы 500-1-1, ..., 500-1-4 имеют n битов, 455-1, ..., 455-4 имеют n+2 бита, и для каждого элемента 550-1-n сложение и вычитание, показанные на фиг. 5, сначала выполняются на параметрах 455-1, ..., 455-4 (образуя результат из n+2 битов), затем результат делится на 4 (т.е. последние два бита исключаются), с образованием параметра из n битов, и затем упомянутый параметр из n битов суммируется с соответствующим элементом 500-1-n, создавая элемент 5501-n.In a non-restrictive embodiment, elements 500-1-1, ..., 500-1-4 have n bits, 455-1, ..., 455-4 have n+2 bits, and for each element 550-1- n addition and subtraction shown in FIG. 5 are first performed on parameters 455-1, ..., 455-4 (forming a result of n+2 bits), then the result is divided by 4 (i.e., the last two bits are excluded), forming a parameter of n bits, and then said parameter of n bits is added to the corresponding element 500-1-n, creating an element 5501-n.

Соответственно, оборудование обработки декодера, показанное на фиг. 5, принимает информацию настроек или значение y1, связанное с представлением сигнала 510 на уровне качества #2. Оборудование обработки декодера принимает множество корректировочных значений (например, дельту 445-1, H 4552, V455-3 и D 455-4). Оборудование обработки декодера создает предварительное представление сигнала (например, сигнал 500-1) на уровне качества #1 на основании информации настроек элементов представления сигнала 510 на уровне качества #2. Оборудование обработки декодера создает второе представление сигнала, например, представление 550-1 на уровне качества #2 на основании множества корректировочных значений (например, дельты 445-1, H 455-2, V 455-3 и D 455-4) и предварительного представления сигнала 510 на уровне качества #2. Как показано, создание второго представления сигнала, например, сигнала 550-1 может включать в себя: модификацию множества корректировочных значений дельта 445-1, H 455-2, V 455-3 и D 455-4, по меньшей мере, частично на основании предварительного представления сигнала 550-1 на уровне качества #1. Оборудование обработки декодера применяет модифицированное множество корректировочных значений А 455-1, H 455-2, V455-3 и D 455-4 к предварительному представлению сигнала 500-1 для создания второго представления сигнала 550-1.Accordingly, the decoder processing equipment shown in FIG. 5 receives setting information or a value of y 1 associated with a signal representation 510 at quality level #2. The decoder processing hardware receives a plurality of correction values (eg, delta 445-1, H 4552, V455-3, and D 455-4). The decoder processing equipment generates a signal preview (eg, signal 500-1) at quality level #1 based on the setting information of signal presentation elements 510 at quality level #2. The decoder processing hardware creates a second signal representation, such as a 550-1 representation at quality level #2, based on a plurality of adjustment values (eg, deltas 445-1, H 455-2, V 455-3, and D 455-4) and the pre-representation signal 510 at quality level #2. As shown, creating a second representation of a signal, such as signal 550-1, may include: modifying a set of delta 445-1, H 455-2, V 455-3, and D 455-4 correction values based at least in part on 550-1 signal preview at quality level #1. The decoder processing equipment applies the modified set of correction values A 455-1, H 455-2, V455-3, and D 455-4 to the pre-signal representation 500-1 to create the second signal representation 550-1.

В соответствии с дополнительными вариантами осуществления, информацию настроек, например у1, можно рассматривать как первую информацию настроек. Модификация множества корректировочных значений, например, дельты 445-1, H 455-2, V455-3 и D 455-4 может включать в себя: на блоке 520 обработки, прием первой информации у1 настроек. Первая информация у1 настроек связана с предварительным представлением сигнала 500-1. Блок 520 обработки принимает вторую информацию настроек, например, настройки элемента 500-1-1 (Р11), элемента 500-1-2 (P12), элемента 500-1-3 (P21) и элемента 500-1-4 (Р22). Вторая информация настроек связана с представлением сигнала на уровне качества #1. Предварительное представление сигнала 500-1 выводится, по меньшей мере, частично на основании первой информации у1 настроек. Блок 520 обработки применяет математический алгоритм к комбинации первой информации у1 настроек и второй информации настроек для создания модификационного значения, например, значения 430-5. Функция 562 применяет модификационное значение 430-5 к множеству корректировочных значений (например, дельте 445-1) для создания модифицированного множества корректировочных значений, которое включает в себя значение А 455-1.According to further embodiments, the setting information, for example y 1 , can be considered as the first setting information. Modifying a plurality of adjustment values, such as delta 445-1, H 455-2, V455-3, and D 455-4, may include: at processing block 520, receiving first information at 1 settings. The first information at settings 1 is related to signal preview 500-1. The processing unit 520 receives the second setting information, for example, the settings of element 500-1-1 (P11), element 500-1-2 (P 12 ), element 500-1-3 (P 21 ), and element 500-1-4 ( R 22 ). The second setting information is related to the representation of the signal at quality level #1. A preview of the signal 500-1 is derived at least in part based on the first information y 1 settings. The processing unit 520 applies a mathematical algorithm to the combination of the first setting information of 1 and the second setting information to generate a modification value, for example, a value of 430-5. Function 562 applies modification value 430-5 to the adjustment value set (eg, delta 445-1) to create a modified adjustment value set that includes value A 455-1.

В одном варианте осуществления, функция 562 принимает а компоненту данных, например, дельту 445-1 из множества корректировочных значений, включающих в себя дельту 445-1, H 455-2, V455-3 и D 455-4. В одном варианте осуществления, одна или более из нескольких компонент во множестве корректировочных значений включает в себя информацию направленного наклона.In one embodiment, function 562 receives a data component, eg, delta 445-1 from a set of adjustment values including delta 445-1, H 455-2, V455-3, and D 455-4. In one embodiment, one or more of the multiple components in the correction value set includes directional slope information.

Функция 562 суммирует модификационное значение 430-5 и извлеченную компоненту дельта 445-1 для модификации компоненты дельта обратно в среднее 455-1. Путем применения значений 532 матрицы (т.е. путем выполнения операций сложения и вычитания согласно значениям 532 матрицы), оборудование обработки декодера модифицирует настройки каждого из нескольких элементов в предварительном представлении сигнала на втором уровне качества с использованием модифицированной компоненты дельта 455-1. Другими словами, оборудование обработки декодера, показанное на фиг. 5 использует значение 430-5 для модификации каждого из предварительного представления сигнала 500-1 для создания второго представления сигнала 550-1.Function 562 adds the modification value 430-5 and the extracted delta component 445-1 to modify the delta component back to the mean 455-1. By applying the matrix values 532 (i.e., by performing addition and subtraction operations according to the matrix values 532), the decoder processing hardware modifies the settings of each of the multiple elements in the second quality level signal pre-representation using the modified delta component 455-1. In other words, the decoder processing equipment shown in FIG. 5 uses the value 430-5 to modify each of the preliminary signal representation 500-1 to create a second signal representation 550-1.

Как рассмотрено, декодирование можно осуществлять на каждом из нескольких уровней вверх по иерархии из нескольких уровней. Заметим, что второе представление сигнала 550-1 затем можно использовать как основу для создания предварительного представления сигнала на следующем в порядке возрастания уровне качества.As discussed, decoding may be performed at each of several levels up a hierarchy of several levels. Note that the second signal representation 550-1 can then be used as the basis for creating a signal preview at the next quality level in ascending order.

Кроме того, как рассмотрено ранее, представление сигнала 510 на уровне качества #2 может быть первым уровнем качества и представляет разрешение первого изображения. Уровень качества #1 может быть разрешением второго изображения, которое ниже разрешения первого изображения. Таким образом, представление сигнала 510 на одном уровне качества включает в себя первое множество элементов изображения (например, без ограничения, один элемент y1). Представление сигнала, например, сигнала 500-1 и 550-1, включает в себя второе множество элементов изображения (например, без ограничения, четыре элемента x11, x12, x21 и х22).In addition, as discussed earlier, the representation of signal 510 at quality level #2 may be the first quality level and represents the resolution of the first image. Quality level #1 may be the resolution of the second image, which is lower than the resolution of the first image. Thus, the representation of signal 510 at one quality level includes a first plurality of pixels (eg, without limitation, one element y 1 ). The signal representation, such as signal 500-1 and 550-1, includes a second plurality of pixels (eg, without limitation, four elements x11, x 12 , x 21 and x 22 ).

Как упомянуто выше, данные реконструкции, включающие в себя данные 510 реконструкции, например, у1 и корректировочные значения δА 445-1, H 455-2, V455-3 и D 455-4, могут дополнительноAs mentioned above, the reconstruction data, including reconstruction data 510, for example, y 1 and correction values δ A 445-1, H 455-2, V455-3 and D 455-4, may additionally

- 24 040379 включать в себя метаданные. Оборудование обработки декодера, показанное на фиг. 5, может быть выполнено с возможностью приема метаданных, связанных с множеством корректировочных значений. Посредством обработки метаданных, оборудование обработки декодера идентифицирует одну или более операций, подлежащих применению к данным реконструкции для воспроизведения представления сигнала 550-1 с использованием метаданных. Например, в одном варианте осуществления оборудование обработки декодера применяет идентифицированные одну или более операций к множеству корректировочных значений и/или значению у1 для вывода второго представления сигнала 550-1 из предварительного представления сигнала 500-1.- 24 040379 include metadata. The decoder processing equipment shown in FIG. 5 may be configured to receive metadata associated with a plurality of adjustment values. Through the metadata processing, the decoder processing equipment identifies one or more operations to be applied to the reconstruction data to reproduce the signal representation 550-1 using the metadata. For example, in one embodiment, the decoder processing equipment applies the identified one or more operations to the set of correction values and/or the value y 1 to derive the second representation of the signal 550-1 from the preliminary representation of the signal 500-1.

Дополнительно, рассмотренные здесь варианты осуществления могут включать в себя прием метаданных, связанных с множеством корректировочных значений. Оборудование обработки декодера может быть выполнено с возможностью идентификации одной или более операций, указанных метаданными. Оборудование обработки декодера применяет одну или более идентифицированных операций к множеству корректировочных значений для вывода второго представления сигнала 550-1 из предварительного представления сигнала 500-1.Additionally, embodiments discussed herein may include receiving metadata associated with a plurality of adjustment values. The decoder processing hardware may be configured to identify one or more of the operations indicated by the metadata. The decoder processing equipment applies one or more of the identified operations to the set of correction values to derive a second signal representation 550-1 from the preliminary signal representation 500-1.

Один рассмотренный здесь вариант осуществления включает в себя линейное применение модифицированного множества корректировочных значений к предварительному представлению сигнала. Например, применение значений 532 матрицы может включать в себя создание второго представления сигнала 550-1 посредством линейного применения (например, с помощью показанных функций суммы и разности) модифицированного множества корректировочных значений, например, среднего А 455-1, H 455-2, V 455-3 и D 455-4 к предварительному представлению сигнала 500-1.One embodiment discussed herein involves linearly applying a modified set of correction values to a signal pre-representation. For example, applying matrix values 532 may include generating a second representation of signal 550-1 by linearly applying (eg, using the sum and difference functions shown) a modified set of adjustment values, such as mean A 455-1, H 455-2, V 455-3 and D 455-4 to signal pre-submission 500-1.

Таким образом, как показано, с помощью значений 532 матрицы, оборудование обработки декодера создает второе представление сигнала 550-1 путем применения модифицированного множества корректировочных значений среднего А 455-1, H 455-2, V455-3 и D 455-4 к предварительному представлению сигнала 500-1. Модифицированное множество корректировочных значений включает в себя вектор взвешенных значений (указанных функциями сложения и функциями вычитания), применяемых к предварительному представлению сигнала 500-1 в соответствии со значениями 532 матрицы.Thus, as shown with the matrix values 532, the decoder processing equipment creates a second representation of the signal 550-1 by applying a modified set of mean correction values A 455-1, H 455-2, V455-3, and D 455-4 to the pre-representation signal 500-1. The modified set of adjustment values includes a vector of weighted values (indicated by addition functions and subtraction functions) applied to signal preview 500-1 in accordance with matrix values 532.

В соответствии с еще одним иллюстративным вариантом осуществления, вектор, соответствующий среднему А 455-1, H 455-2, V455-3 и D 455-4, представляет модифицированное множество корректировочных значений. Оборудование обработки декодера может быть выполнено с возможностью создания вторичного представления сигнала 550-1 путем применения модифицированного множества корректировочных значений к предварительному представлению сигнала 500-1. Вектор корректировочных значений можно применять оборудованием обработки декодера к предварительному представлению для создания вторичного представления сигнала 550-1 в соответствии с весовыми коэффициентами, указанными значениями 532 матрицы.In accordance with another illustrative embodiment, the vector corresponding to the average A 455-1, H 455-2, V455-3 and D 455-4 represents a modified set of adjustment values. The decoder processing hardware may be configured to create a secondary representation of the signal 550-1 by applying a modified set of correction values to the preliminary representation of the signal 500-1. The correction value vector may be applied by the decoder processing hardware to the pre-representation to generate a secondary representation of the signal 550-1 in accordance with the weighting factors indicated by the matrix values 532.

Значения матрицы можно изменять и выбирать из группы возможных матриц, содержащих:Matrix values can be changed and selected from a group of possible matrices containing:

р 5 4 3 21 h -1 4 3 21p 5 4 3 21 h -1 4 3 21

-1 -2 3 21 ’j 1 -1' -2-32I h -1 -2 -3 -41 (1 _2 -3 -4 -5j-1 -2 3 21 'j 1 -1' -2-32I h -1 -2 -3 -41 (1 _2 -3 -4 -5j

Наподобие рассмотренного ранее, данные реконструкции, включающие в себя данные 510 реконструкции, например, у1 и корректировочные значения дельта 445-1, H 455-2, V455-3 и D 455-4, могут приниматься в качестве кодированной информации.As discussed previously, reconstruction data including reconstruction data 510, for example, y 1 and correction values delta 445-1, H 455-2, V455-3, and D 455-4, may be received as encoded information.

Оборудование обработки декодера, принимающее такие данные, может быть выполнено с возможностью декодирования кодированной информации в несколько символов. Оборудование обработки декодера может быть выполнено с возможностью извлечения символа из нескольких символов и, в зависимости от кодирования, создавая любую одну или более компонент во множестве корректировочных значений дельта 445-1, H 455-2, V455-3 и D 455-4 из извлеченного символа.The decoder processing equipment receiving such data may be configured to decode the encoded information into multiple symbols. The decoder processing equipment may be configured to extract a symbol from multiple symbols and, depending on the encoding, producing any one or more components in the set of delta 445-1, H 455-2, V455-3, and D 455-4 adjustment values from the extracted symbol.

На фиг. 6 показана блок-схема операций, демонстрирующая неограничительный вариант осуществления, реализующий направленное разложение в цикле многоуровневого иерархического кодирования согласно рассмотренным здесь вариантам осуществления.In FIG. 6 is a flowchart showing a non-restrictive embodiment implementing directed decomposition in a layered hierarchical coding loop according to the embodiments discussed herein.

Процессор сигнала, сконфигурированный как кодер, принимает сигнал при данном уровне качества (самый высокий LOQ), осуществляет операции понижающей дискретизации, пока не будет создано представление сигнала на нижнем LOQ (причем упомянутый нижний LOQ ниже самого высокого LOQ), кодирует представление сигнала на нижнем LOQ подходящим способом кодирования, создавая кодированные данные реконструкции, и затем обрабатывает упомянутые кодированные данные реконструкцииA signal processor configured as an encoder receives the signal at a given quality level (highest LOQ), performs downsampling operations until a lower LOQ representation of the signal is created (with said lower LOQ being lower than the highest LOQ), encodes the lower LOQ representation of the signal by a suitable encoding method, generating encoded reconstruction data, and then processes said encoded reconstruction data

- 25 040379 для имитации операций, осуществляемых на стороне декодирования, создавая декодированное представление сигнала на нижнем LOQ (этап 6.01 на фиг. 6).- 25 040379 to simulate operations performed on the decoding side, creating a decoded representation of the signal at the lower LOQ (step 6.01 in Fig. 6).

Создав декодированное представление сигнала на нижнем LOQ, кодер входит в цикл обработки, который повторяется для каждого следующего в порядке возрастания LOQ, обрабатывая иерархию LOQ уровень за уровнем до самого высокого LOQ.Having created a decoded representation of the signal at the lower LOQ, the encoder enters a processing loop that repeats for each successive LOQ in ascending order, processing the LOQ hierarchy level by level up to the highest LOQ.

В частности, кодер обрабатывает декодированное представление сигнала на данном LOQ (более низком LOQ) и создает прогнозируемое представление сигнала на следующем в порядке возрастания LOQ. Затем кодер создает остаточные данные, причем упомянутые остаточные данные соответствуют разности между исходным представлением сигнала на следующем в порядке возрастания LOQ и прогнозируемым представлением сигнала на следующем в порядке возрастания LOQ (этап 6.02).In particular, the encoder processes the decoded representation of the signal at a given LOQ (lower LOQ) and creates a predicted representation of the signal at the next LOQ in ascending order. The encoder then generates residual data, said residual data corresponding to the difference between the original signal representation at the next ascending LOQ and the predicted signal representation at the next ascending LOQ (step 6.02).

Затем кодер разделяет остаточные данные на группировки остатков (например, без ограничения, смежные группировки 2x2 остатков) и для каждой группировки осуществляет преобразование направленного разложения, создавая направленные компоненты (этап 6.03).The encoder then separates the residual data into groups of residuals (eg, without limitation, adjacent 2x2 groupings of residuals) and for each grouping performs a directional decomposition transformation, producing directional components (step 6.03).

Затем кодер создает четыре отдельные плоскости направленных компонент (среднюю, горизонтальную, вертикальную, диагональную), причем соответствующие элементы упомянутых четырех плоскостей соответствуют одной и той же группировки остатков (этап 6.04).The encoder then creates four separate directional component planes (middle, horizontal, vertical, diagonal), with the corresponding elements of said four planes corresponding to the same residual grouping (step 6.04).

Затем кодер создает плоскость прогнозируемых средних компонент, где каждый из элементов упомянутой плоскости является прогнозируемым средним для соответствующей группировки остатков, вычисленной на основании разности между средним соответствующих прогнозируемых элементов на следующем в порядке возрастания LOQ и соответствующим элементом на более низком LOQ. Кодер создает плоскость компонент дельты, причем каждый элемент плоскости вычисляется как разность между соответствующей средней компонентой и соответствующей прогнозируемой средней компонентой. Плоскость дельты заменяется плоскостью средних значений, с образованием множества из четырех преобразованных направленных компонент дельта, H, V и D (этап 6.05).The encoder then creates a predicted component means plane, where each of the elements of said plane is the predicted mean for the respective residual grouping, calculated based on the difference between the mean of the respective predictive elements in the next ascending LOQ and the corresponding element in the lower LOQ. The encoder creates a delta component plane, with each element of the plane calculated as the difference between the corresponding mean component and the corresponding predicted mean component. The delta plane is replaced by the mean plane, resulting in a set of four transformed directional delta components, H, V and D (step 6.05).

Затем кодер квантует плоскости преобразованных направленных компонент, создавая плоскости квантованных преобразованных направленных компонентов (этап 6.06).The encoder then quantizes the planes of the transformed directional components, producing planes of quantized transformed directional components (step 6.06).

Затем квантованные преобразованные направленные компоненты кодируются с образованием кодированных данных реконструкции (этап 6.08).The quantized transformed directional components are then encoded to form encoded reconstruction data (step 6.08).

Затем, для перехода на следующий уровень в иерархии, кодер имитирует операции декодирования, которые будут осуществляться на стороне декодирования, создавая декодированное представление сигнала на следующем в порядке возрастания LOQ. С этой целью, кодер деквантует плоскости квантованных преобразованных направленных компонентов; объединяет плоскость деквантованных дельт с плоскостью прогнозируемых средних значений, реконструируя плоскость деквантованных средних компонент; вычисляет остаточные данные путем осуществления, для каждой группировки четырех остатков, обратнонаправленного разложения соответствующих направленных компонент А, H, V и D; объединяет остаточные данные с прогнозируемым представлением сигнала на следующем в порядке возрастания LOQ, создавая декодированное представление сигнала на следующем в порядке возрастания LOQ (этап 6.07).Then, to move to the next level in the hierarchy, the encoder simulates the decoding operations that would be performed on the decoding side, producing a decoded representation of the signal at the next LOQ in ascending order. To this end, the encoder dequantizes the planes of the quantized transformed directional components; combines the plane of dequantized deltas with the plane of predicted means, reconstructing the plane of dequantized mean components; calculates the residual data by performing, for each grouping of the four residuals, a reverse decomposition of the respective directional components A, H, V, and D; combines the residual data with the predicted signal representation at the next ascending LOQ, producing a decoded signal representation at the next ascending LOQ (step 6.07).

При этом, если следующий в порядке возрастания LOQ не является самым высоким LOQ, кодер переходит к следующему уровню в иерархии, возвращаясь к этапу 6.02, где, для следующего уровня в иерархии, представление сигнала на следующем в порядке возрастания LOQ, который только что был декодирован, становится декодированным представлением сигнала на более низком LOQ.Here, if the next LOQ in ascending order is not the highest LOQ, the encoder proceeds to the next level in the hierarchy, returning to step 6.02 where, for the next level in the hierarchy, the representation of the signal at the next LOQ in ascending order that has just been decoded , becomes the decoded representation of the signal at the lower LOQ.

В других неограничительных вариантах осуществления операции квантования, применяемые к каждой плоскости преобразованных направленных компонент, основаны на параметрах, которые специфичны для каждого класса преобразованных направленных компонент (например, без ограничения, уровень квантования, применяемый к диагональным компонентам, сильнее, чем уровень квантования, применяемый к горизонтальным и/или вертикальным компонентам).In other non-limiting embodiments, the quantization operations applied to each plane of the transformed directional components are based on parameters that are specific to each class of transformed directional components (e.g., without limitation, the quantization level applied to the diagonal components is stronger than the quantization level applied to horizontal and/or vertical components).

В других неограничительных вариантах осуществления кодер, вместо создания и кодирования четырех отдельных плоскостей преобразованных компонент, создает и кодирует группировки из четырех преобразованных компонент, причем каждая из упомянутых группировок соответствует группировке из четырех остатков в плоскости остатков.In other non-limiting embodiments, the encoder, instead of creating and encoding four separate planes of transformed components, creates and encodes groupings of four transformed components, each of said groupings corresponding to a grouping of four residues in the plane of residues.

В других неограничительных вариантах осуществления кодер осуществляет операции квантования на этапе 6.02, создавая квантованные остатки. В таких вариантах осуществления операции разложения и обратного разложения являются операциями без потерь, т.е. к направленным компонентам и/или преобразованным направленным компонентам не применяется никакого дополнительного квантования.In other non-limiting embodiments, the encoder performs quantization operations in step 6.02, creating quantized residuals. In such embodiments, the decomposition and inverse decomposition operations are lossless operations, i. no additional quantization is applied to the directional components and/or the transformed directional components.

В других неограничительных вариантах осуществления представление сигнала на нижнем LOQ кодируется посредством способа на основе MPEG; таким образом, традиционные декодеры, которые не выполнены с возможностью обработки и реконструкции более высоких LOQ в иерархии, по меньшей мере, способны декодировать представления сигнала на нижнем LOQ.In other non-limiting embodiments, the lower LOQ representation of the signal is encoded using an MPEG-based method; thus, conventional decoders that are not configured to process and reconstruct higher LOQs in the hierarchy are at least capable of decoding lower LOQ signal representations.

На фиг. 7 показана блок-схема операций, демонстрирующая неограничительный вариант осуществления, реализующий обратнонаправленное разложение в цикле многоуровневого иерархического декодирования согласно рассмотренным здесь вариантам осуществления.In FIG. 7 is a flowchart showing a non-restrictive embodiment implementing reverse decomposition in a layered hierarchical decoding loop according to the embodiments discussed herein.

- 26 040379- 26 040379

Процессор сигнала, сконфигурированный как декодер, принимает и декодирует кодированные данные, соответствующие нижнему уровню качества, создавая декодированное представление сигнала на упомянутом нижнем LOQ (этап 7.01).The signal processor, configured as a decoder, receives and decodes encoded data corresponding to the lower quality level, producing a decoded representation of the signal at said lower LOQ (step 7.01).

Создав декодированное представление сигнала на нижнем LOQ, декодер входит в цикл декодирования, который повторяется для каждого следующего в порядке возрастания LOQ, реконструируя иерархию LOQ уровень за уровнем до самого высокого LOQ.Having created a decoded representation of the signal at the lower LOQ, the decoder enters a decoding loop that repeats for each successive LOQ in ascending order, reconstructing the LOQ hierarchy level by level up to the highest LOQ.

В частности, декодер обрабатывает декодированное представление сигнала на данном LOQ (более низком LOQ), декодирует данные реконструкции, соответствующие следующему в порядке возрастания LOQ и создает четыре плоскости квантованных параметров. Затем декодер осуществляет подходящие операции деквантования на упомянутых плоскостях квантованных параметров, создавая деквантованные преобразованные параметры (этап 7.02).In particular, the decoder processes the decoded representation of the signal at a given LOQ (lower LOQ), decodes reconstruction data corresponding to the next LOQ in ascending order, and creates four quantized parameter planes. The decoder then performs suitable dequantization operations on said quantized parameter planes, producing dequantized transformed parameters (step 7.02).

Затем декодер создает прогнозируемое представление сигнала на следующем в порядке возрастания LOQ, путем использования операций повышающей дискретизации и/или других операций обработки сигнала, указанных принятым параметрам (этап 7.03).The decoder then creates a predictive representation of the signal at the next LOQ in ascending order, by using upsampling operations and/or other signal processing operations indicated by the received parameters (step 7.03).

Для каждой группировки из четырех деквантованных преобразованных параметров (дельта, H, V, D), соответствующих группировке из четырех остатков, декодер создает параметр прогнозируемого среднего, вычисленный на основании разности между соответствующим элементом сигнала на более низком LOQ и средним четырех соответствующих элементов прогнозируемого представления сигнала на следующем в порядке возрастания LOQ. для каждой группировки, прогнозируемое среднее объединяется с деквантованной компонентой дельта, создавая деквантованную среднюю компоненту (этап 7.04).For each grouping of four dequantized transformed parameters (delta, H, V, D) corresponding to a grouping of four residuals, the decoder creates a predictive mean parameter calculated based on the difference between the corresponding signal bin at the lower LOQ and the average of the four corresponding bins of the predicted signal representation on the next LOQ in ascending order. for each grouping, the predicted mean is combined with the dequantized delta component to create the dequantized mean component (step 7.04).

Затем, для каждой группировки декодер осуществляет обратное соответствующих деквантованных компонент среднего, H, V и D, создавая четыре остатка. В частности, каждый из остатков получается путем осуществления линейной комбинации (т.е. сумм и/или разностей, с подходящими коэффициентами) деквантованных компонент среднего, H, V и D. Таким образом, декодер создает плоскость остатков на следующем в порядке возрастания LOQ (этап 7.05).Then, for each grouping, the decoder inverses the corresponding dequantized components of the mean, H, V, and D, producing four residuals. In particular, each of the residuals is obtained by performing a linear combination (i.e., sums and/or differences, with appropriate coefficients) of the dequantized components of the mean, H, V, and D. Thus, the decoder creates a residual plane at the next in ascending order LOQ ( step 7.05).

Затем декодер объединяет прогнозируемое представление сигнала на следующем в порядке возрастания LOQ с созданными остатками, реконструируя декодированное представление сигнала на следующем в порядке возрастания LOQ (этап 7.06).The decoder then combines the predicted signal representation at the next ascending LOQ with the generated residuals, reconstructing the decoded signal representation at the next ascending LOQ (step 7.06).

При этом, если следующий в порядке возрастания LOQ не является самым высоким LOQ, декодер переходит к декодированию следующего уровня в иерархии, возвращаясь к этапу 7.02, в котором, для следующего LOQ в иерархии, представление сигнала на следующем в порядке возрастания LOQ, которое только что было декодировано, становится декодированным представлением сигнала на более низком LOQ.Here, if the next LOQ in ascending order is not the highest LOQ, the decoder proceeds to decode the next level in the hierarchy, returning to step 7.02, in which, for the next LOQ in the hierarchy, the signal representation at the next LOQ in ascending order, which has just was decoded becomes the decoded representation of the signal at the lower LOQ.

В других неограничительных вариантах осуществления операции деквантования осуществляются после преобразования обратного разложения, деквантуя остатки вместо того, чтобы деквантовать преобразованные параметры.In other non-limiting embodiments, the dequantization operations are performed after the inverse transformation, dequantizing the residuals instead of dequantizing the transformed parameters.

На фиг. 8 показана блок-схема компьютерной системы 800, которая обеспечивает компьютерную обработку согласно рассмотренным здесь вариантам осуществления.In FIG. 8 is a block diagram of a computer system 800 that provides computer processing according to the embodiments discussed herein.

Компьютерная система 800 может представлять собой или, по меньшей мере, включать в себя компьютеризированное устройство, например, персональный компьютер, схему обработки, телевизор, устройство воспроизведения, устройство кодирования, рабочую станцию, портативное вычислительное устройство, мобильный телефон, планшет, консоль, телевизионную приставку, сетевой терминал, устройство обработки, сетевое устройство, действующее как коммутатор, маршрутизатор, сервер, клиент и т.д.Computer system 800 may be, or at least include, a computerized device, such as a personal computer, a processing circuit, a television, a playback device, an encoder, a workstation, a portable computing device, a mobile phone, a tablet, a console, a set-top box , network terminal, processing device, network device acting as a switch, router, server, client, etc.

Заметим, что нижеследующее рассмотрение обеспечивает базовый вариант осуществления, указывающий, как осуществлять функциональные возможности, связанные с рассмотренным ранее процессором сигнала. Однако следует отметить, что фактическая конфигурация для осуществления описанных здесь операций может изменяться в зависимости от соответствующего применения.Note that the following discussion provides a basic embodiment indicating how to implement the functionality associated with the previously discussed signal processor. However, it should be noted that the actual configuration for carrying out the operations described here may vary depending on the respective application.

Как показано, компьютерная система 800 настоящего примера содержит шину 811 связи, которая обеспечивает связь со считываемыми компьютером средами 812 хранения, например, нетранзиторной считываемой компьютером средой хранения и т.д., в которой может храниться и из которой может извлекаться цифровая информация.As shown, the computer system 800 of the present example includes a communication bus 811 that allows communication with computer-readable storage media 812, such as non-transitive computer-readable storage media, etc., in which digital information can be stored and retrieved.

Компьютерная система 800 может дополнительно содержать процессор 813, интерфейс 814 вводавывода и интерфейс 817 связи.Computer system 800 may further include a processor 813, an I/O interface 814, and a communication interface 817.

В одном варианте осуществления интерфейс 814 ввода-вывода обеспечивает возможность соединения с хранилищем 880 и, при наличии, с экранным дисплеем, громкоговорителями, периферийными устройствами 816, например, клавиатурой, компьютерной мышью и т.д.In one embodiment, I/O interface 814 provides connectivity to storage 880 and, if present, to an on-screen display, speakers, peripherals 816 such as a keyboard, computer mouse, and so on.

Как кратко упомянуто выше, считываемые компьютером среды 812 хранения могут представлять собой любое подходящее устройство и/или оборудование, например, память, оптическое запоминающее устройство, твердотельное запоминающее устройство, жесткий диск, флоппи-диск и т.д. В одном варианте осуществления, среды 812 хранения представляют собой нетранзиторные среды хранения (т.е. среды не на основе несущих волн), выполненные с возможностью хранения инструкций, связанных с приложением 840-1 процессора сигнала. Инструкции выполняются соответствующим ресурсом, напримерAs briefly mentioned above, computer-readable storage media 812 can be any suitable device and/or equipment, such as memory, optical storage, solid state storage, hard drive, floppy disk, and so on. In one embodiment, storage media 812 are non-transient storage media (ie, non-carrier wave media) configured to store instructions associated with signal processor application 840-1. Instructions are executed by the appropriate resource, e.g.

- 27 040379 процессором 813, для осуществления любой из рассмотренных здесь операций.- 27 040379 processor 813, to perform any of the operations discussed here.

Интерфейс 817 связи позволяет компьютерной системе 800 осуществлять связь по сети 890 для извлечения информации из удаленных источников и осуществлять связь с другими компьютерами, коммутаторами, клиентами, серверами и т.д. Интерфейс 814 ввода-вывода также позволяет процессору 813 извлекать или пытаться извлечь сохраненную информацию из хранилища 880.Communication interface 817 allows computer system 800 to communicate over network 890 to retrieve information from remote sources and communicate with other computers, switches, clients, servers, and so on. I/O interface 814 also allows processor 813 to retrieve or attempt to retrieve stored information from store 880.

Как показано, считываемые компьютером среды 812 хранения можно кодировать с помощью приложения 840-1 процессора сигнала, выполняемого процессором 813, как процесса 840-2.As shown, computer-readable storage media 812 can be encoded by signal processor application 840-1 executed by processor 813 as process 840-2.

Заметим, что компьютерную систему 800 можно реализовать для включения считываемых компьютером сред 812 хранения для хранения данных и/или логических инструкций.Note that computer system 800 can be implemented to include computer-readable storage media 812 for storing data and/or logical instructions.

Код, связанный с приложением 840-1 процессора сигнала, может реализовать функциональные возможности проиллюстрированных здесь процессоров сигнала и/или других ресурсов, необходимых для реализации рассмотренного здесь изобретения.Code associated with the signal processor application 840-1 may implement the functionality of the signal processors illustrated here and/or other resources necessary to implement the invention discussed here.

При выполнении одного варианта осуществления процессор 813 обращается к считываемым компьютером средам 812 хранения через шину 811 связи для запуска, выполнения, исполнения, интерпретации или иного осуществления инструкций приложения 840-1 процессора сигнала, хранящихся в считываемых компьютером средах 812 хранения. Выполнение приложения 840-1 процессора сигнала создает функциональные возможности обработки на процессоре 813. Другими словами, процесс 840-2 процессора сигнала, связанный с процессором 813, представляет один или более аспектов выполнения приложения 840-1 процессора сигнала в или на процессоре 813 в компьютерной системе 800.In one embodiment, processor 813 accesses computer-readable storage media 812 via communication bus 811 to execute, execute, execute, interpret, or otherwise implement signal processor application 840-1 instructions stored in computer-readable storage media 812. Execution of signal processor application 840-1 creates processing functionality on processor 813. In other words, signal processor process 840-2 associated with processor 813 represents one or more aspects of the execution of signal processor application 840-1 at or on processor 813 in a computer system. 800.

Специалистам в данной области техники очевидно, что компьютерная система 800 может включать в себя другие процессы и/или программные и аппаратные компоненты, например, операционную систему или другое программное обеспечение, которое управляет выделением и использованием ресурсов обработки оборудования для выполнения приложения 840-1 процессора сигнала.Those skilled in the art will appreciate that computer system 800 may include other processes and/or software and hardware components, such as an operating system or other software, that controls the allocation and use of hardware processing resources to execute signal processor application 840-1. .

В соответствии с различными вариантами осуществления заметим, что компьютерная система может представлять собой любой из различных типов устройств, включающих в себя, но без ограничения, персональную компьютерную систему, настольный компьютер, портативный компьютер, ноутбук, компьютер типа нетбук, универсальную компьютерную систему, карманный компьютер, рабочую станцию, сетевой компьютер, сервер приложений, запоминающее устройство, бытовое электронное устройство, например, камеру, ручную камеру, телевизионную приставку, мобильное устройство, смартфон, планшет, консоль для видеоигр, карманное устройство для видеоигр, периферийное устройство, например, коммутатор, модем, маршрутизатор или, в общем случае, любой тип вычислительного или электронного устройства.In accordance with various embodiments, note that a computer system may be any of various types of devices, including, but not limited to, a personal computer system, a desktop computer, a laptop computer, a laptop computer, a netbook computer, a mainframe computer system, a pocket computer. , workstation, network computer, application server, mass storage device, consumer electronic device such as a camera, handheld camera, set-top box, mobile device, smartphone, tablet, video game console, handheld video game device, peripheral device such as a switch, modem, router, or, more generally, any type of computing or electronic device.

Функциональные возможности, поддерживаемые различными ресурсами, будут проиллюстрированы ниже на блок-схемах операций, представленных на фиг. 10-11. Заметим, что этапы, изображенные на нижеописанных блок-схемах операций, могут выполняться в любом подходящем порядке.The functionality supported by the various resources will be illustrated below in the flowcharts shown in FIG. 10-11. Note that the steps depicted in the flowcharts described below may be performed in any suitable order.

На фиг. 10 показана блок-схема 1000 операций, демонстрирующая иллюстративный способ согласно описанным здесь неограничительным вариантам осуществления. Заметим, что это несколько перекликается с рассмотренными выше принципами.In FIG. 10 is a flowchart 1000 illustrating an exemplary method according to the non-limiting embodiments described herein. Note that this is somewhat in line with the principles discussed above.

В блоке обработки 1010, оборудование компьютерного процессора принимает первое множество корректировочных значений, причем первое множество корректировочных значений указывает корректировки, которые должны быть осуществлены в отношении прогнозируемого представления сигнала, генерируемого на первом уровне качества, для реконструкции представления сигнала на первом уровне качества.In processing block 1010, the computer processor hardware receives a first set of adjustment values, the first set of adjustment values indicating adjustments to be made to the predicted signal representation generated at the first quality level in order to reconstruct the signal representation at the first quality level.

В блоке обработки 1020, оборудование компьютерного процессора обрабатывает первое множество корректировочных значений.In processing block 1020, the computer processor hardware processes the first set of adjustment values.

В блоке обработки 1030, оборудование компьютерного процессора выводит второе множество корректировочных значений на основании первого множества корректировочных значений и на основании представления сигнала на втором уровне качества. Второй уровень качества ниже, чем первый уровень качества.In processing block 1030, the computer processor hardware outputs a second set of correction values based on the first set of correction values and based on the representation of the signal at the second quality level. The second quality level is lower than the first quality level.

На фиг. 11 показана блок-схема 1100 операций, демонстрирующая иллюстративный способ согласно описанным здесь неограничительным вариантам осуществления. Заметим, что это несколько перекликается с рассмотренными выше принципами.In FIG. 11 is a flowchart 1100 illustrating an exemplary method according to the non-limiting embodiments described herein. Note that this is somewhat in line with the principles discussed above.

В блоке обработки 1110, оборудование компьютерного процессора принимает информацию настроек, связанную с представлением сигнала на первом уровне качества.In processing block 1110, the computer processor hardware receives setting information related to representing the signal at the first quality level.

В блоке обработки 1120, оборудование компьютерного процессора принимает множество корректировочных значений.In processing block 1120, the computer processor hardware receives a plurality of adjustment values.

В блоке обработки 1130, оборудование компьютерного процессора создает предварительное представление сигнала на втором уровне качества на основании информации настроек. Второй уровень качества выше первого уровень качества.In processing block 1130, the computer processor hardware creates a second quality level signal preview based on the setting information. The second quality level is higher than the first quality level.

В блоке обработки 1140, оборудование компьютерного процессора создает вторичное представление сигнала на втором уровне качества на основании множества корректировочных значений и предварительного представления сигнала на втором уровне качества.In processing block 1140, the computer processor hardware creates a secondary representation of the signal at the second quality level based on the plurality of adjustment values and the preliminary representation of the signal at the second quality level.

- 28 040379- 28 040379

Заметим, опять же, что раскрытые здесь методы хорошо подходят для кодирования и декодирования в иерархических системах. Однако следует отметить, что рассмотренные здесь варианты осуществления не ограничиваются использованием в таких приложениях, и что рассмотренные здесь методы хорошо подходят и для других приложений.Note, again, that the methods disclosed here are well suited for encoding and decoding in hierarchical systems. However, it should be noted that the embodiments discussed here are not limited to use in such applications, and that the methods discussed here are well suited for other applications.

На основании изложенного здесь описания, многочисленные конкретные детали изложены для обеспечения полного понимания заявленного предмета изобретения. Однако специалистам в данной области техники понятно, что заявленный предмет изобретения можно осуществлять на практике без этих конкретных деталей. В других случаях, способы, устройства, системы и т.д., известные специалистам, не описаны подробно, чтобы не затемнять заявленный предмет изобретения. Некоторые участки подробного описания были представлены в отношении алгоритмов или символических представлений операций на битах данных или двоичных цифровых сигналов, хранящихся в памяти вычислительной системы, например, памяти компьютера. Эти алгоритмические описания или представления являются примерами методов, используемых специалистами в области обработки данных для передачи предмета своей работы другим специалистам в технике. Описанный здесь алгоритм, в общем случае, считается самосогласованной последовательностью операций или аналогичной обработки, приводящей к нужному результату. В этом контексте, операции или обработка предусматривают физическую манипуляцию физических величин. Обычно, хотя не обязательно, такие величины могут принимать форму электрических или магнитных сигналов, допускающих сохранение, перенос, объединение, сравнение или другое манипулирование. Иногда бывает удобно, в основном, по причинам общего использования, рассматривать такие сигналы как биты, данные, значения, настройки, элементы, символы, знаки, термины, числа, цифры и т.п. Однако следует понимать, что все эти и аналогичные термины должны быть связаны с надлежащими физическими величинами и являются всего лишь удобными ярлыками.Based on the description set forth here, numerous specific details are set forth in order to provide a thorough understanding of the claimed subject matter. However, those skilled in the art will appreciate that the claimed subject matter may be practiced without these specific details. In other cases, methods, devices, systems, etc. known to those skilled in the art are not described in detail so as not to obscure the claimed subject matter. Some portions of the detailed description have been presented in relation to algorithms or symbolic representations of operations on bits of data or binary digital signals stored in the memory of a computing system, such as computer memory. These algorithmic descriptions or representations are examples of methods used by data scientists to convey the subject matter of their work to other technicians. The algorithm described here is generally considered to be a self-consistent sequence of operations or similar processing leading to the desired result. In this context, operations or processing involve the physical manipulation of physical quantities. Typically, though not necessarily, such quantities may take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, or otherwise manipulated. It is sometimes convenient, mainly for reasons of common use, to consider such signals as bits, data, values, settings, elements, characters, characters, terms, numbers, digits, and the like. However, it should be understood that all of these and similar terms are to be associated with the proper physical quantities and are merely convenient labels.

Если конкретно не указано обратное, как следует из нижеследующего рассмотрения, очевидно, что на протяжении это описание изобретения использование таких терминов, как обработка, вычисление, вычисление, создание, определение и т.п. относятся к действиям или процессам вычислительной платформы, например, компьютера или аналогичного электронного вычислительного устройства, которое манипулирует данными или преобразует данные, представленные в качестве физических электронных или магнитных величин в блоках памяти, регистрах или других устройствах хранения информации, устройствах передачи или устройствах отображения вычислительной платформы.Unless specifically stated to the contrary, as follows from the following discussion, it is obvious that throughout this description of the invention the use of terms such as processing, calculation, calculation, creation, definition, and the like. refers to the activities or processes of a computing platform, such as a computer or similar electronic computing device, that manipulates data or transforms data represented as physical electronic or magnetic quantities in memory units, registers or other information storage devices, transmission devices or display devices of the computing platform .

Хотя это изобретение было конкретно показаны и описаны со ссылками на его предпочтительные варианты осуществления, специалистам в данной области техники понятно, что можно предложить различные изменения в форме и деталях, не выходящие за рамки сущности и объема настоящей заявки которые определяются нижеследующей формуле изобретения. Такие изменения подлежат включению в объем настоящей заявки. Поэтому вышеприведенное описание вариантов осуществления настоящей заявки не подлежит ограничению. Напротив, любые ограничения изобретения представлены в нижеследующей формуле изобретения.While this invention has been specifically shown and described with reference to its preferred embodiments, those skilled in the art will appreciate that various changes in form and detail may be made without departing from the spirit and scope of the present application as defined by the following claims. Such changes are to be included within the scope of this application. Therefore, the above description of the embodiments of the present application is not to be limited. On the contrary, any limitations of the invention are set forth in the following claims.

Claims (16)

ФОРМУЛА ИЗОБРЕТЕНИЯCLAIM 1. Способ кодирования видеосигнала, содержащий посредством оборудования компьютерной обработки прием (6.01) плоскости видеосигнала с первым разрешением, причем плоскость содержит плоскость пикселей;1. A method for encoding a video signal, comprising, by means of computer processing equipment, receiving (6.01) a video signal plane with a first resolution, the plane containing a pixel plane; понижающую дискретизацию (6.01) плоскости видеосигнала для генерирования представления плоскости со вторым разрешением, причем второе разрешение ниже, чем первое разрешение;downsampling (6.01) the video plane to generate a representation of the plane with a second resolution, the second resolution being lower than the first resolution; создание (6.01, 6.02) предсказанной плоскости сигнала с первым разрешением посредством получения кодированной плоскости сигнала со вторым разрешением и повышающей дискретизации сымитированного декодирования кодированной плоскости сигнала со вторым разрешением;generating (6.01, 6.02) a predicted first resolution signal plane by obtaining a second resolution coded signal plane and upsampling the simulated decoding of the second resolution coded signal plane; создание (6.02) остаточных данных как разности между принятой плоскостью видеосигнала с первым разрешением и предсказанной плоскостью видеосигнала с первым разрешением;creating (6.02) residual data as a difference between the received video plane with the first resolution and the predicted video plane with the first resolution; обработку (6.03, 6.04) остаточных данных с использованием направленного разложения для генерирования наборов направленных компонент (320), причем направленное разложение применяется к 2x2 блокам остатков для генерирования, для каждого 2x2 блока, четырех направленных компонент:processing (6.03, 6.04) of the residual data using directional decomposition to generate sets of directional components (320), with directional decomposition applied to 2x2 blocks of residuals to generate, for each 2x2 block, four directional components: А - среднее значение блока остатков,A - the average value of the block of residuals, Н - горизонтальная разность в пределах блока остатков,H - horizontal difference within the block of residuals, V - вертикальная разность в пределах блока остатков иV is the vertical difference within the block of residuals and D - диагональная разность в пределах блока остатков;D - diagonal difference within the block of residuals; выведение (6.05) наборов преобразованных остатков (350) из наборов направленных компонентов (320) посредством корректировки средней направленной компоненты каждого набора направленных компонент (320), включающее в себя определение предсказанного среднего значения для каждого 2x2 блока как разности между квантованным пиксельным значением при втором разрешении, представляющим блок, и средним значениемderiving (6.05) the sets of transformed residuals (350) from the sets of directional components (320) by adjusting the average directional component of each set of directional components (320), including determining the predicted mean value for each 2x2 block as the difference between the quantized pixel value at the second resolution , representing the block, and the average - 29 040379 соответствующего блока в предсказанной плоскости сигнала, и вычитание предсказанного среднего значения из средней направленной компоненты для блока остатков;- 29 040379 of the corresponding block in the predicted signal plane, and subtracting the predicted mean from the mean directional component for the block of residuals; квантование (6.06) наборов преобразованных остатков (350); и кодирование (6.08) квантованных наборов преобразованных остатков для вывода кодированных данных реконструкции для передачи в оборудование обработки декодера для декодирования.quantization (6.06) of sets of transformed residues (350); and encoding (6.08) the quantized transformed residual sets to output encoded reconstruction data for transmission to the decoder processing equipment for decoding. 2. Способ по п.1, дополнительно содержащий этап, на котором передают кодированные данные реконструкции в оборудование обработки декодера.2. The method of claim 1, further comprising transmitting encoded reconstruction data to the decoder processing equipment. 3. Способ по п.1, в котором каждый набор преобразованных остатков относится к реконструкции конкретного положения в плоскости видеосигнала с первым разрешением; и в котором наборы преобразованных остатков квантуются в зависимости от атрибутов изображения в конкретных положениях.3. The method according to claim 1, in which each set of transformed residues refers to the reconstruction of a specific position in the plane of the video signal with a first resolution; and in which the sets of transformed residuals are quantized depending on the attributes of the image at particular positions. 4. Способ по п.1, в котором наборы преобразованных остатков квантуются в зависимости от атрибутов изображения частей кадра видеосигнала, которые соответствуют наборам преобразованных остатков, причем одно или более из однородных областей изображения, областей изображения с резким контрастом и областей изображения с обнаруженным объектом квантуются в меньшей степени.4. The method of claim 1, wherein the sets of transformed residuals are quantized depending on the image attributes of portions of the video signal frame that correspond to the sets of transformed residuals, wherein one or more of uniform image regions, sharp contrast image regions, and object detected image regions are quantized. less. 5. Способ по п.1, содержащий кодирование по меньшей мере двух направленных компонент с использованием одного символа.5. The method of claim 1, comprising encoding at least two directional components using one symbol. 6. Способ декодирования видеосигнала, содержащий посредством оборудования компьютерной обработки прием (7.01) декодированных пиксельных значений, связанных с плоскостью видеосигнала с первым разрешением;6. A method for decoding a video signal, comprising, by means of computer processing equipment, receiving (7.01) decoded pixel values associated with a video signal plane with a first resolution; прием (7.02) кодированных данных реконструкции для видеосигнала;receiving (7.02) encoded reconstruction data for the video signal; декодирование (7.02) кодированных данных реконструкции для получения квантованных наборов преобразованных остатков;decoding (7.02) the encoded reconstruction data to obtain quantized sets of transformed residuals; деквантование (7.02) квантованных наборов преобразованных остатков для получения наборов преобразованных остатков;dequantization (7.02) of the quantized sets of transformed residues to obtain sets of transformed residues; создание (7.03) предварительного представления плоскости видеосигнала со вторым разрешением посредством повышающей дискретизации упомянутых пиксельных значений, причем второе разрешение выше, чем первое разрешение;creating (7.03) a second resolution preview of the video plane by upsampling said pixel values, the second resolution being higher than the first resolution; генерирование (7.04, 7.05) плоскости остатков из наборов преобразованных остатков посредством выполнения обратнонаправленного разложения, при этом каждый набор преобразованных остатков содержит четыре направленных компоненты, соответствующих соответствующим 2x2 блокам плоскости остатков, причем направленные компоненты содержат δ - скорректированное среднее значение блока остатков,generating (7.04, 7.05) a residual plane from the transformed residual sets by performing a backwards decomposition, where each transformed residual set contains four directional components corresponding to corresponding 2x2 blocks of the residual plane, the directional components containing δ - the adjusted mean of the residual block, H - горизонтальная разность в пределах блока остатков,H - horizontal difference within the block of residuals, V - вертикальная разность в пределах блока остатков иV is the vertical difference within the block of residuals and D - диагональная разность в пределах блока остатков, и создание (7.06) вторичного представления плоскости видеосигнала со вторым разрешением посредством объединения плоскости остатков и предварительного представления плоскости видеосигнала со вторым разрешением, при этом способ дополнительно содержит создание (7.05) предсказанного среднего параметра для каждого 2x2 блока, выводимого из набора преобразованных остатков, причем предсказанный средний параметр вычисляется как разность между соответствующим пиксельным значением для блока с первым разрешением и средним значением соответствующего блока в предварительном представлении плоскости видеосигнала со вторым разрешением; и выполнение объединения посредством сложения предсказанных средних параметров с соответствующими скорректированными средними направленными компонентами во время создания вторичного представления плоскости видеосигнала, чтобы восстановить средние направленные компоненты для плоскости остатков.D is the diagonal difference within a block of residuals, and generating (7.06) a second resolution video plane secondary representation by combining the residual plane and a second resolution video plane pre-representation, the method further comprising generating (7.05) a predicted mean parameter for each 2x2 block , derived from the set of transformed residuals, wherein the predicted mean is calculated as the difference between the corresponding pixel value for the first resolution block and the mean of the corresponding block in the second resolution video plane preview; and performing combining by adding the predicted averages with the corresponding adjusted average directional components at the time of creating the video plane secondary representation to recover the average directional components for the residual plane. 7. Способ по п.6, в котором выполнение объединения предсказанных средних параметров включает в себя суммирование каждого предсказанного среднего параметра и соответствующего скорректированного среднего направленного компонента для модификации скорректированного среднего направленного компонента.7. The method of claim 6, wherein performing combining the predicted means includes summing each predicted mean and the corresponding adjusted mean directional component to modify the adjusted mean directional component. 8. Способ по п.7, дополнительно содержащий модификацию настроек каждого из множества пиксельных элементов в предварительном представлении плоскости видеосигнала со вторым разрешением на основе модифицированной направленной компоненты.8. The method of claim 7, further comprising modifying the settings of each of the plurality of pixel elements in the second resolution video plane preview based on the modified directional component. 9. Способ по п.6, в котором предварительное представление плоскости видеосигнала со вторым разрешением является предсказанным представление плоскости видеосигнала со вторым разрешением; и в котором вторичное представление плоскости видеосигнала со вторым разрешением используется в качестве основы для создания предварительного представления плоскости видеосигнала с третьим разре-9. The method of claim 6, wherein the second resolution video plane preview is a predicted second resolution video plane representation; and wherein the secondary video plane representation at a second resolution is used as the basis for generating a preliminary video plane representation at a third resolution. - 30 040379 шением, причем третье разрешение выше, чем второе разрешение.- 30 040379 resolution, the third resolution being higher than the second resolution. 10. Способ по п.6, дополнительно содержащий прием метаданных, связанных с кодированными данными реконструкции; идентификацию операцию повышающей дискретизации, которая определена метаданными; и применение операции повышающей дискретизации для выведения предварительного представления плоскости видеосигнала со вторым разрешением.10. The method of claim 6, further comprising receiving metadata associated with the encoded reconstruction data; identifying an upsampling operation that is specified by the metadata; and applying an upsampling operation to derive a preview of the second resolution video plane. 11. Способ по п.6, дополнительно содержащий создание вторичного представления плоскости видеосигнала со вторым разрешением посредством линейного применения плоскости остатков к предварительному представлению плоскости видеосигнала.11. The method of claim 6, further comprising generating a secondary representation of the video plane with a second resolution by linearly applying the residual plane to the preliminary representation of the video plane. 12. Способ по п.6, в котором направленные компоненты представляются в виде вектора значений, и каждый блок остатков извлекается из направленных компонент с использованием весовых коэффициентов, которые определены матрицей.12. The method of claim 6, wherein the directional components are represented as a vector of values, and each block of residuals is extracted from the directional components using weights that are defined by a matrix. 13. Способ по п.6, дополнительно содержащий прием кодированных данных реконструкции; декодирование кодированных данных реконструкции в множество символов; извлечение символа из множества символов и создание квантованных преобразованных остатков из извлеченного символа.13. The method of claim 6, further comprising receiving encoded reconstruction data; decoding the encoded reconstruction data into a plurality of symbols; extracting a symbol from the plurality of symbols; and generating quantized transformed residuals from the extracted symbol. 14. Способ по п.6, дополнительно содержащий применение первой операции деквантования для воспроизведения первого преобразованного остатка; и применение второй операции деквантования для воспроизведения второго преобразованного остатка, причем первая операция деквантования отличается от второй операции деквантования.14. The method of claim 6, further comprising applying a first dequantization operation to reproduce the first converted residue; and applying a second dequantization operation to reproduce the second transformed residue, wherein the first dequantization operation is different from the second dequantization operation. 15. Устройство кодирования/декодирования видеосигнала, содержащее процессор и память, в которую помещают программные инструкции для процессора для осуществления способа по любому из пп.114.15. A video encoder/decoder comprising a processor and a memory in which program instructions are placed for the processor to implement the method of any one of claims 114. 16. Машиночитаемый носитель информации, содержащий инструкции для процессора устройства кодирования/декодирования видеосигнала для осуществления операций способа по любому из пп.1-14.16. A computer-readable storage medium containing instructions for the processor of the video encoder/decoder to perform the operations of the method according to any one of claims 1-14.
EA201492099 2012-05-14 2013-05-13 METHOD AND DEVICE FOR ENCODING, DECODING VIDEO SIGNAL IN HIERARCHY OF QUALITY LEVELS EA040379B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US61/646,797 2012-05-14
US61/647,426 2012-05-15

Publications (1)

Publication Number Publication Date
EA040379B1 true EA040379B1 (en) 2022-05-25

Family

ID=

Similar Documents

Publication Publication Date Title
US11622112B2 (en) Decomposition of residual data during signal encoding, decoding and reconstruction in a tiered hierarchy
KR102287947B1 (en) Apparatus and method for performing artificial intelligence encoding and artificial intelligence decoding of image
CN106068645B (en) Method for full parallax squeezed light field 3D imaging system
WO2021161028A1 (en) Use of tiered hierarchical coding for point cloud compression
US20240040160A1 (en) Video encoding using pre-processing
US11259005B1 (en) Method for compressing light-field data
EA040379B1 (en) METHOD AND DEVICE FOR ENCODING, DECODING VIDEO SIGNAL IN HIERARCHY OF QUALITY LEVELS
US20250063173A1 (en) Digital image processing
US20250322547A1 (en) Use of tiered hierarchical coding for point cloud compression
Khaidem et al. An Integrated Representation & Compression Scheme Based on Convolutional Autoencoders with 4D-DCT Perceptual Encoding for High Dynamic Range Light Fields
HK1203265B (en) Decomposition of residual data during signal encoding, decoding and reconstruction in a tiered hierarchy
HK1230822B (en) Methods for full parallax compressed light field 3d imaging systems
HK1230822A1 (en) Methods for full parallax compressed light field 3d imaging systems