RU2333615C2 - Adaptive weighing of master images when decoding video signal - Google Patents
Adaptive weighing of master images when decoding video signal Download PDFInfo
- Publication number
- RU2333615C2 RU2333615C2 RU2005103830/09A RU2005103830A RU2333615C2 RU 2333615 C2 RU2333615 C2 RU 2333615C2 RU 2005103830/09 A RU2005103830/09 A RU 2005103830/09A RU 2005103830 A RU2005103830 A RU 2005103830A RU 2333615 C2 RU2333615 C2 RU 2333615C2
- Authority
- RU
- Russia
- Prior art keywords
- reference image
- motion
- image
- block
- index
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/577—Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/149—Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/189—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
- H04N19/192—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/189—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
- H04N19/196—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/189—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
- H04N19/196—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
- H04N19/197—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters including determination of the initial value of an encoding parameter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- General Physics & Mathematics (AREA)
- Algebra (AREA)
- Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Description
Перекрестная ссылка на родственные заявкиCross reference to related applications
По этой заявке испрашивается приоритет предварительной заявки на патент США с регистрационным номером 60/395.843 (номер реестра поверенного PU020340), озаглавленной "Adaptive Weighting Of Reference Pictures In Video CODEC" и поданной 15 июля 2002 г., которая полностью включена в материалы этой заявки посредством ссылки. Дополнительно, по этой заявке испрашивается приоритет предварительной заявки на патент США с регистрационным номером 60/395.874 (номер реестра поверенного PU020339), озаглавленной "Motion Estimation With Weighting Prediction" и поданной также 15 июля 2002 г., которая полностью включена в материалы этой заявки посредством ссылки.This application claims the priority of a provisional US patent application with registration number 60 / 395.843 (attorney registry number PU020340) entitled "Adaptive Weighting Of Reference Pictures In Video CODEC" and filed July 15, 2002, which is fully incorporated by reference in this application links. Additionally, this application claims the priority of a provisional US patent application with registration number 60 / 395.874 (attorney's registry number PU020339), entitled "Motion Estimation With Weighting Prediction" and filed July 15, 2002, which is fully incorporated in the materials of this application by links.
Область техники, к которой относится изобретениеFIELD OF THE INVENTION
Настоящее изобретение относится к видеодекодерам и, в частности, к использованию адаптивного взвешивания эталонных изображений в видеодекодерах.The present invention relates to video decoders and, in particular, to the use of adaptive weighting of reference images in video decoders.
Предшествующий уровень техникиState of the art
В основном, видеоинформация обрабатывается и передается в виде потоков битов. Обычные декодеры и кодеры сжатия видеосигнала ("КОДЕКи") достигают наибольшей эффективности осуществляемого ими сжатия посредством формирования предсказания эталонного изображения для изображения, которое должно быть кодировано, и кодирования разности между текущим изображением и предсказанием. Чем сильнее корреляция предсказания с текущим изображением, тем меньшее количество битов требуется для сжатия этого изображения, вследствие чего повышается эффективность процесса. Соответственно, является предпочтительным формировать лучшее возможное предсказание эталонного изображения.Basically, video information is processed and transmitted in the form of bit streams. Conventional decoders and video compression encoders ("CODECs") achieve the greatest efficiency of their compression by generating a prediction of the reference image for the image to be encoded and encoding the difference between the current image and the prediction. The stronger the correlation of the prediction with the current image, the fewer bits are required to compress this image, thereby increasing the efficiency of the process. Accordingly, it is preferable to generate the best possible prediction of the reference image.
Во многих стандартах сжатия видеосигнала, включая стандарты Экспертной группы по вопросам движущегося изображения MPEG-1, MPEG-2 и MPEG-4, в качестве предсказания для текущего изображения используется скомпенсированный по движению вариант предыдущего эталонного изображения и кодируется только разность между текущим изображением и предсказанием. Когда используется одно предсказание изображения ("P"-изображение), эталонное изображение не масштабируется при формировании скомпенсированного по движению предсказания. Когда используются двунаправленные предсказания изображений ("B"-изображения), формируются промежуточные предсказания из двух различных изображений, и затем два промежуточных предсказания усредняются с использованием равных весовых коэффициентов в (1/2, 1/2) для каждого для формирования одного усредненного предсказания. В упомянутых стандартах MPEG из двух эталонных изображений для B-изображений одно всегда соответствует направлению вперед и одно - направлению назад.Many video compression standards, including the standards of the MPEG-1, MPEG-2, and MPEG-4 Moving Image Expert Group, use the motion-compensated version of the previous reference image as the prediction for the current image and only the difference between the current image and the prediction is encoded. When a single image prediction (“P” image) is used, the reference image is not scaled to form a motion-compensated prediction. When bidirectional image predictions ("B" images) are used, intermediate predictions are generated from two different images, and then two intermediate predictions are averaged using equal weights in (1/2, 1/2) for each to produce one averaged prediction. In the mentioned MPEG standards of two reference images for B-images, one always corresponds to the forward direction and one to the backward direction.
СУЩНОСТЬ ИЗОБРЕТЕНИЯSUMMARY OF THE INVENTION
Упомянутые и другие отрицательные стороны и недостатки предшествующего уровня техники устраняются посредством системы и способа адаптивного взвешивания эталонных изображений в видеодекодерах.Mentioned and other negative aspects and disadvantages of the prior art are eliminated by means of a system and method for adaptive weighting of reference images in video decoders.
Раскрыты видеодекодер и соответствующие способы обработки данных видеосигнала для блока изображения и индекса конкретного эталонного изображения для предсказания этого блока изображения, которые используют адаптивное взвешивание эталонных изображений для усиления сжатия видеосигнала. Декодер содержит модуль весового коэффициента эталонного изображения для определения весового коэффициента, соответствующего упомянутому индексу конкретного эталонного изображения.A video decoder and corresponding methods for processing video data for an image block and an index of a specific reference image for predicting this image block are disclosed, which use adaptive weighting of the reference images to enhance compression of the video signal. The decoder comprises a weighting module of a reference image for determining a weighting coefficient corresponding to said index of a specific reference image.
Соответствующий способ декодирования видеосигнала включает в себя прием индекса эталонного изображения с данными, которые соответствуют этапу изображения, определение весового коэффициента для каждого принятого индекса эталонного изображения, извлечение эталонного изображения для каждого индекса, компенсацию движения извлеченного эталонного изображения и умножение скомпенсированного по движению эталонного изображения на соответствующий весовой коэффициент для формирования взвешенного скомпенсированного по движению эталонного изображения.A suitable video decoding method includes receiving a reference image index with data that corresponds to an image step, determining a weight coefficient for each received reference image index, extracting a reference image for each index, compensating for the motion of the extracted reference image, and multiplying the motion-compensated reference image with a corresponding weight coefficient for the formation of a weighted motion-compensated reference about the image.
Упомянутые и другие аспекты, признаки и преимущества настоящего изобретения станут ясны из последующего описания возможных вариантов осуществления, которые должны быть прочитаны совместно с приложенными чертежами.Mentioned and other aspects, features and advantages of the present invention will become apparent from the following description of possible embodiments that should be read in conjunction with the attached drawings.
ПЕРЕЧЕНЬ ФИГУР ЧЕРТЕЖЕЙLIST OF DRAWINGS FIGURES
Адаптивное взвешивание эталонных изображений в видеокодерах и видеодекодерах, в соответствии с принципами настоящего изобретения, иллюстрируется следующими показательными чертежами:Adaptive weighting of reference images in video encoders and video decoders, in accordance with the principles of the present invention, is illustrated by the following illustrative drawings:
Фиг.1 - блочная диаграмма для стандартного видеодекодера.Figure 1 is a block diagram for a standard video decoder.
Фиг.2 - блочная диаграмма для видеодекодера с адаптивным двойным предсказанием.2 is a block diagram for an adaptive dual prediction video decoder.
Фиг.3 - блочная диаграмма для видеодекодера с взвешиванием эталонного изображения в соответствии с принципами настоящего изобретения.Figure 3 is a block diagram for a video decoder with weighting a reference image in accordance with the principles of the present invention.
Фиг.4 - блочная диаграмма для стандартного видеокодера.4 is a block diagram for a standard video encoder.
Фиг.5 - блочная диаграмма для видеокодера с взвешиванием эталонного изображения в соответствии с принципами настоящего изобретения.5 is a block diagram for a video encoder with weighting a reference image in accordance with the principles of the present invention.
Фиг.6 - блок-схема последовательности операций процесса декодирования в соответствии с принципами настоящего изобретения.6 is a flowchart of a decoding process in accordance with the principles of the present invention.
Фиг.7 - блок-схема последовательности операций процесса кодирования в соответствии с принципами настоящего изобретения.7 is a flowchart of an encoding process in accordance with the principles of the present invention.
ПОДРОБНОЕ ОПИСАНИЕ ПРЕДПОЧТИТЕЛЬНЫХ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯDETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
Настоящее изобретение представляет устройство и способ для оценки вектора движения и адаптивного назначения весового коэффициента эталонного изображения. В некоторых видеопоследовательностях, в частности видеопоследовательностях с замиранием, текущее изображение или блок изображения, который должен быть кодирован, более сильно коррелирует с эталонным изображением, масштабированным весовым коэффициентом, чем непосредственно с эталонным изображением. Видеокодеки без применения весовых коэффициентов к эталонным изображениям для кодирования последовательностей с замиранием очень неэффективны. При использовании весовых коэффициентов в кодировании видеокодер должен определять и весовые коэффициенты, и вектора движения, но лучший выбор для каждого из них зависит от другого, с оценкой движения, обычно являющейся в вычислительном отношении наиболее интенсивной частью цифрового кодера сжатия видеосигнала.The present invention provides an apparatus and method for estimating a motion vector and adaptive weighting of a reference image. In some video sequences, in particular fading video sequences, the current image or image block to be encoded is more strongly correlated with the reference image, the scaled weight coefficient, than directly with the reference image. Video codecs without weighting reference images for coding fading sequences are very inefficient. When using weighting coefficients in coding, a video encoder must determine both weighting coefficients and motion vectors, but the best choice for each of them depends on the other, with motion estimation, which is usually the most intensive computational part of a digital video compression encoder.
В предложенном стандарте сжатия видеосигнала Объединенной группы по видеосигналам ("JVT") каждое P-изображение может использовать несколько эталонных изображений для формирования предсказания изображения, но каждый отдельный блок движения, или область 88 макроблока, использует только одно эталонное изображение для предсказания. Дополнительно к кодированию и передаче векторов движения для каждого блока движения или области 88 передается индекс эталонного изображения, указывающий, какое эталонное изображение используется. В кодере и в декодере хранится ограниченный набор возможных эталонных изображений, и передается количество допустимых эталонных изображений.In the proposed Video Compression Standard of the Combined Video Signal Group ("JVT"), each P-image may use several reference images to generate image prediction, but each individual motion block, or region 8 8 macroblock, uses only one reference image for prediction. In addition to encoding and transmitting motion vectors for each motion block or region 8 8, a reference image index indicating which reference image is used is transmitted. A limited set of possible reference images is stored in the encoder and in the decoder, and the number of valid reference images is transmitted.
В стандарте JVT для изображений с двойным предсказанием (также называемых "B"-изображений) для каждого блока движения или области 88 формируются два предсказателя, каждый из которых может быть из отдельного эталонного изображения, и эти два предсказателя усредняются для формирования одного усредненного предсказателя. Для блоков движения, кодированных с двойным предсказанием, оба эталонных изображения могут соответствовать направлению вперед, оба могут соответствовать направлению назад, или одно - направлению вперед и одно - направлению назад. Поддерживаются два списка доступных эталонных изображений, которые могут использоваться для предсказания. Два эталонных изображения определены как предсказатели списка 0 и списка 1. Для каждого эталонного изображения кодируется и передается индекс, ref_idx_I0 и ref_idx_I1, для эталонных изображений списка 0 и списка 1, соответственно. Изображения с двойным предсказанием, или "B"-изображения Объединенной группы по видеосигналам ("JVT") обеспечивают возможность адаптивного взвешивания двух предсказаний, т.е.In the JVT standard for dual-predicted images (also called “B” images) for each motion block or region 8 8, two predictors are formed, each of which may be from a separate reference image, and these two predictors are averaged to form one averaged predictor. For dual-prediction encoded motion blocks, both reference images can correspond to a forward direction, both can correspond to a backward direction, or one to a forward direction and one to a backward direction. Two lists of available reference images that can be used for prediction are supported. Two reference images are defined as predictors of list 0 and list 1. For each reference image, the index, ref_idx_I0 and ref_idx_I1, is encoded and transmitted for the reference images of list 0 and list 1, respectively. Double prediction images, or “B” images of the Joint Video Signal Group (“JVT”), allow adaptive weighting of two predictions, i.e.
Pred=[(P0)(Pred0)]+[(P1)(Pred1)]+D,Pred = [(P0) (Pred0)] + [(P1) (Pred1)] + D,
где P0 и P1 - весовые коэффициенты, Pred0 и Pred1 - предсказания эталонного изображения для списка 0 и списка 1, соответственно, а D - смещение.where P0 and P1 are weights, Pred0 and Pred1 are the predictions of the reference image for list 0 and list 1, respectively, and D is the offset.
Были предложены два способа для указания весовых коэффициентов. В первом, весовые коэффициенты определяются направлениями, которые используются для эталонных изображений. В этом способе, если индекс ref_idx_I0 не превышает ref_idx_I1, то используются весовые коэффициенты (1/2, 1/2), иначе используются коэффициенты (2, -1).Two methods have been proposed for indicating weights. In the first, weights are determined by the directions that are used for the reference images. In this method, if the index ref_idx_I0 does not exceed ref_idx_I1, then the weighting coefficients (1/2, 1/2) are used, otherwise the coefficients (2, -1) are used.
Во втором предложенном способе передается произвольное количество весовых коэффициентов для каждого раздела. Затем передается индекс весового коэффициента для каждого блока движения, или области 88 макроблока, которые используют двунаправленное предсказание. Декодер использует принятый индекс весового коэффициента для выбора соответствующего весового коэффициента из переданного набора для использования при декодировании блока движения, или области 88. Например, если на уровне раздела были переданы три весовых коэффициента, они должны соответствовать индексам 0, 1 и 2 весовых коэффициентов, соответственно.In the second proposed method, an arbitrary number of weights for each section is transmitted. Then the weighting index for each block of movement, or region 8, is transmitted. 8 macroblocks that use bidirectional prediction. The decoder uses the received weighting index to select the appropriate weighting factor from the transmitted set for use in decoding a motion block, or region 8 8. For example, if three weights were transmitted at the partition level, they should correspond to indices 0, 1, and 2 weights, respectively.
Последующее описание только иллюстрирует принципы изобретения. Соответственно, будет ясно, что специалисты в данной области техники смогут изобрести различные средства, которые, хотя не описаны и не представлены здесь явно, воплощают принципы изобретения и включены в его объем. Кроме того, все возможные варианты и условный язык, изложенные здесь, в основном предназначены специально для целей обучения, чтобы облегчить понимание принципов изобретения и концепций, внесенных изобретателем в развитие техники, и не должны рассматриваться как возможные варианты и условия, накладывающие ограничения. Кроме того, все описания изложенных здесь принципов, аспектов и вариантов осуществления изобретения, а также их конкретные возможные варианты предназначены для охвата их структурных и функциональных эквивалентов. Дополнительно, подразумевается, что такие эквиваленты включают в себя эквиваленты, известные в настоящее время, а также эквиваленты, которые будут разработаны в будущем, т.е. любые разработанные элементы, которые выполняют идентичную функцию, независимо от структуры.The following description only illustrates the principles of the invention. Accordingly, it will be clear that those skilled in the art will be able to invent various means that, although not described and not explicitly presented here, embody the principles of the invention and are included in its scope. In addition, all possible options and a conditional language set forth here are mainly intended specifically for educational purposes, in order to facilitate understanding of the principles of the invention and concepts introduced by the inventor in the development of technology, and should not be construed as possible options and conditions imposing restrictions. In addition, all descriptions of the principles, aspects, and embodiments of the invention set forth herein, as well as their specific possible options, are intended to cover their structural and functional equivalents. Additionally, it is understood that such equivalents include those currently known and those that will be developed in the future, i.e. any designed elements that perform an identical function, regardless of structure.
Так, например, для специалистов в данной области техники должно быть понятно, что блочные диаграммы здесь представляют концептуальные виды иллюстративных схем, воплощающих принципы изобретения. Аналогично, ясно, что любые блок-схемы последовательностей операций, схемы алгоритмов, диаграммы переходов между состояниями, псевдокод и т.д. представляют различные процессы, которые, по существу, могут быть представлены в машиночитаемом носителе, а также исполняться компьютером или процессором вне зависимости от того, изображен ли такой компьютер или процессор явно.So, for example, it should be understood by those skilled in the art that block diagrams here represent conceptual views of illustrative diagrams embodying the principles of the invention. Similarly, it is clear that any flowcharts, algorithms, state transition diagrams, pseudo-code, etc. represent various processes, which, in essence, can be represented in a computer-readable medium, as well as executed by a computer or processor, regardless of whether such a computer or processor is shown explicitly.
Функции различных элементов, изображенных на чертежах, могут быть обеспечены посредством использования специализированных аппаратных средств, а также аппаратных средств, которые могут выполнять программное обеспечение, совместно с соответствующим программным обеспечением. При обеспечении процессором функции могут обеспечиваться одним специализированным процессором, одним совместно используемым процессором или несколькими отдельными процессорами, некоторые из которых могут использоваться совместно. Кроме того, явное использование термина "процессор" или "контроллер" не должно рассматриваться как ссылка исключительно на аппаратные средства, которые могут выполнять программное обеспечение, и может неявно включать в себя, но не в ограничительном смысле, аппаратные средства цифрового процессора сигналов (ЦПС, DSP), постоянное запоминающее устройство (ПЗУ, ROM) для хранения программного обеспечения, оперативное запоминающее устройство (ОЗУ, RAM) и энергонезависимую память. Могут также быть включены другие аппаратные средства, стандартные и/или заказные. Аналогично, любые переключатели, изображенные на чертежах, только концептуальны. Их функция может выполняться посредством операции программных логических средств, специализированных логических средств, взаимодействия программного управления и специализированных логических средств, или даже вручную, конкретный способ может быть выбран средством реализующей стороной, как более определенно понятно из контекста.The functions of the various elements depicted in the drawings can be provided through the use of specialized hardware, as well as hardware that can run the software, together with the corresponding software. When provided with a processor, functions can be provided by one specialized processor, one shared processor, or several separate processors, some of which can be shared. In addition, the explicit use of the term “processor” or “controller” should not be construed as a reference solely to hardware that can run software, and may implicitly include, but not in a limiting sense, the hardware of a digital signal processor (DSP, DSP), read-only memory (ROM) for storing software, random access memory (RAM, RAM) and non-volatile memory. Other hardware, standard and / or custom, may also be included. Similarly, any switches shown in the drawings are only conceptual. Their function can be performed through the operation of software logic tools, specialized logic tools, the interaction of software control and specialized logic tools, or even manually, a specific method can be selected by the means of the implementing party, as is more specifically understood from the context.
Здесь, в формуле изобретения, любой элемент, выступающий в качестве средства выполнения конкретной функции, предназначен для охвата любого средства выполнения этой функции, включая, например, a) комбинацию элементов схемы, выполняющую указанную функцию, или b) программное обеспечение в любом виде для выполнения функции, включая, следовательно, встроенное программное обеспечение, микрокод и т.д., объединенное с соответствующими схемами для выполнения этого программного обеспечения. Изобретению, как оно определено упомянутой формулой изобретения, фактически, свойственно, что функциональные возможности, обеспеченные различными описанными средствами, объединяются и соединяются вместе, как того требует формула изобретения. Соответственно, заявитель рассматривает любые средства, которые могут обеспечивать упомянутые функциональные возможности, в виде эквивалента представленным здесь функциональным возможностям.Here, in the claims, any element that acts as a means of performing a specific function is intended to encompass any means of performing that function, including, for example, a) a combination of circuit elements performing that function, or b) any form of software to perform functions, including, therefore, firmware, microcode, etc., combined with appropriate circuits for running this software. The invention, as defined by the aforementioned claims, is in fact characteristic of the fact that the functionalities provided by the various described means are combined and connected together as required by the claims. Accordingly, the applicant considers any means that can provide the mentioned functionality, in the form of an equivalent to the functionality presented here.
Согласно фиг.1 стандартный видеодекодер обозначен в общем ссылочной позицией 100. Видеодекодер 100 содержит декодер 110 полей переменной длины (VLD), соединенный с возможностью обмена сигналами с обратным квантователем 120. Обратный квантователь 120 соединен с возможностью обмена сигналами с обратным преобразователем 130. Обратный преобразователь 130 соединен с возможностью обмена сигналами с первым входом сумматора, или суммирующего соединения 140, где выход суммирующего соединения 140 обеспечивают выход видеодекодера 100. Выход суммирующего соединения 140 соединен с возможностью обмена сигналами с хранилищем 150 эталонных изображений. Хранилище 150 эталонных изображений соединено с возможностью обмена сигналами с компенсатором 160 движения, который соединен с возможностью обмена сигналами со вторым входом суммирующего соединения 140.Referring to FIG. 1, a standard video decoder is denoted by a
Согласно фиг.2 видеодекодер с адаптивным двойным предсказанием обозначен в общем ссылочной позицией 200. Видеодекодер 200 содержит VLD 210, соединенный с возможностью обмена сигналами с обратным квантователем 220. Обратный квантователь 220 соединен с возможностью обмена сигналами с обратным преобразователем 230. Обратный преобразователь 230 соединен с возможностью обмена сигналами с первым входом суммирующего соединения 240, где выход суммирующего соединения 240 обеспечивает выход видеодекодера 200. Выход суммирующего соединения 240 соединен с возможностью обмена сигналами с хранилищем 250 эталонных изображений. Хранилище 250 эталонных изображений соединено с возможностью обмена сигналами с компенсатором 260 движения, который соединен с возможностью обмена сигналами с первым входом умножителя 270.2, an adaptive dual-predicted video decoder is generally designated 200.
VLD 210 дополнительно соединен с возможностью обмена сигналами со средством 280 поиска весового коэффициента эталонного изображения для предоставления средству 280 поиска индекса коэффициента адаптивного двойного предсказания (АДП, ABP). Первый выход средства 280 поиска предназначен для предоставления весового коэффициента и соединен с возможностью обмена сигналами со вторым входом умножителя 270. Выход 270 умножителя соединен с возможностью обмена сигналами с первым входом суммирующего соединения 290. Второй выход средства 280 поиска предназначен для предоставления смещения и соединен с возможностью обмена сигналами со вторым входом суммирующего соединения 290. Выход суммирующего соединения 290 соединен с возможностью обмена сигналами со вторым входом суммирующего соединения 240.The
Согласно фиг.3 видеодекодер с взвешиванием эталонного изображения обозначен в общем ссылочной позицией 300. Видеодекодер 300 содержит VLD 310, соединенный с возможностью обмена сигналами с обратным квантователем 320. Обратный квантователь 320 соединен с возможностью обмена сигналами с обратным преобразователем 330. Обратный преобразователь 330 соединен с возможностью обмена сигналами с первым входом суммирующего соединения 340, при этом выход суммирующего соединения 340 обеспечивает выход видеодекодера 300. Выход суммирующего соединения 340 соединен с возможностью обмена сигналами с хранилищем 350 эталонных изображений. Хранилище 350 эталонных изображений соединено с возможностью обмена сигналами с компенсатором 360 движения, который соединен с возможностью обмена сигналами с первым входом умножителя 370.3, a video decoder with reference image weighting is generally designated 300. Video decoder 300 includes a VLD 310 that is coupled to the inverse quantizer 320. The inverse quantizer 320 is coupled to the inverter 330. The inverter 330 is connected to the ability to exchange signals with the first input of the summing connection 340, while the output of the summing connection 340 provides the output of the video decoder 300. The output of the summing connection 340 is connected with the ability to exchange signals with a repository of 350 reference images. The storage 350 of reference images is connected with the possibility of exchanging signals with a compensator 360 motion, which is connected with the possibility of exchanging signals with the first input of the multiplier 370.
VLD 310 дополнительно соединен с возможностью обмена сигналами со средством 380 поиска весового коэффициента эталонного изображения для предоставления средству 380 поиска индекса эталонного изображения. Первый выход средства 380 поиска предназначен для предоставления весового коэффициента и соединен с возможностью обмена сигналами со вторым входом умножителя 370. Выход умножителя 370 соединен с возможностью обмена сигналами с первым входом суммирующего соединения 390. Второй выход средства 380 поиска предназначен для предоставления смещения и соединен с возможностью обмена сигналами со вторым входом суммирующего соединения 390. Выход суммирующего соединения 390 соединен с возможностью обмена сигналами со вторым входом суммирующего соединения 340.The VLD 310 is further coupled to a signal exchange with a weighting means search tool 380 for providing a reference image to provide a means for index search tool 380. The first output of the search means 380 is designed to provide a weighting factor and is connected with the possibility of exchanging signals with the second input of the multiplier 370. The output of the multiplier 370 is connected with the possibility of exchanging signals with the first input of the summing connection 390. The second output of the search means 380 is designed to provide bias and is connected with the possibility of signal exchange with the second input of the summing connection 390. The output of the summing connection 390 is connected with the possibility of exchanging signals with the second input of the summing connection 390 I 340.
Согласно фиг.4 стандартный видеокодер обозначен в общем ссылочной позицией 400. Вход в кодер 400 соединен с возможностью обмена сигналами с неинвертирующим входом суммирующего соединения 410. Выход суммирующего соединения 410 соединен с возможностью обмена сигналами с преобразователем 420 блоков. Преобразователь 420 соединен с возможностью обмена сигналами с квантователем 430. Выход квантователя 430 соединен с возможностью обмена сигналами с кодером полей переменной длины (VLC) 440, где выход VLC 440 является выходом кодера 400, доступным извне.4, a standard video encoder is generally designated 400. The input to the
Выход квантователя 430 дополнительно соединен с возможностью обмена сигналами с обратным квантователем 450. Обратный квантователь 450 соединен с возможностью обмена сигналами с обратным преобразователем 460 блоков, который, в свою очередь, соединен с возможностью обмена сигналами с хранилищем 470 эталонных изображений. Первый выход хранилища 470 эталонных изображений соединен с возможностью обмена сигналами с первым входом модуля 480 оценки движения. Вход в кодер 400 дополнительно соединен с возможностью обмена сигналами со вторым входом модуля 480 оценки движения. Выход блока 480 оценки движения соединен с возможностью обмена сигналами с первым входом компенсатора 490 движения. Второй выход хранилища 470 эталонных изображений соединен с возможностью обмена сигналами со вторым входом компенсатора 490 движения. Выход компенсатора 490 движения соединен с возможностью обмена сигналами с инвертирующим входом суммирующего соединения 410.The output of the
Согласно фиг.5 видеокодер с взвешиванием эталонного изображения обозначен в общем ссылочной позицией 500. Вход в кодер 500 соединен с возможностью обмена сигналами с неинвертирующим входом суммирующего соединения 510. Выход суммирующего соединения 510 соединен с возможностью обмена сигналами с преобразователем 520 блоков. Преобразователь 520 соединен с возможностью обмена сигналами с квантователем 530. Выход квантователя 530 соединен с возможностью обмена сигналами с VLC 540, где выход VLC 440 является выходом кодера 500, доступным извне.5, a video encoder with reference image weighting is indicated generally at 500. The input to the
Выход квантователя 530 дополнительно соединен с возможностью обмена сигналами с обратным квантователем 550. Обратный квантователь 550 соединен с возможностью обмена сигналами с обратным преобразователем 560 блоков, который, в свою очередь, соединен с возможностью обмена сигналами с хранилищем 570 эталонных изображений. Первый выход хранилища 570 эталонных изображений соединен с возможностью обмена сигналами с первым входом модуля 572 назначения весового коэффициента эталонного изображения. Вход в кодер 500 дополнительно соединен с возможностью обмена сигналами со вторым входом модуля 572 назначения весового коэффициента эталонного изображения. Выход модуля 572 назначения весового коэффициента эталонного изображения, указывающий весовой коэффициент, соединен с возможностью обмена сигналами с первым входом модуля 580 оценки движения. Второй выход хранилища 570 эталонных изображений соединен с возможностью обмена сигналами со вторым входом модуля 580 оценки движения.The output of the
Вход в кодер 500 дополнительно соединен с возможностью обмена сигналами с третьим входом модуля 580 оценки движения. Выход модуля 580 оценки движения, указывающий вектора движения, соединен с возможностью обмена сигналами с первым входом компенсатора 590 движения. Третий выход хранилища 570 эталонных изображений соединен с возможностью обмена сигналами со вторым входом компенсатора 590 движения. Выход компенсатора 590 движения, указывающий эталонное изображение, скомпенсированное по движению, соединен с возможностью обмена сигналами с первым входом умножителя 592. Выход модуля 572 назначения весового коэффициента эталонного изображения, указывающий весовой коэффициент, соединен с возможностью обмена сигналами со вторым входом умножителя 592. Выход умножителя 592 соединен с возможностью обмена сигналами с инвертирующим входом суммирующего соединения 510.The input to the
Согласно фиг.6 иллюстративный процесс декодирования данных видеосигнала для блока изображения обозначен в общем ссылочной позицией 600. Процесс включает в себя этап 610 начала, на котором передают управление этапу 612 ввода. На этапе 612 ввода принимают данные сжатого блока изображения и передают управление этапу 614 ввода. На этапе 614 ввода принимают по меньшей мере один индекс эталонного изображения с данными для блока изображения, при этом каждый индекс эталонного изображения соответствует конкретному эталонному изображению. На этапе 614 ввода передают управление функциональному этапу 616, на котором определяют весовой коэффициент, соответствующий каждому из принятых индексов эталонного изображения, и передают управление необязательному функциональному этапу 617. На необязательном функциональном этапе 617 определяют смещение, соответствующее каждому из принятых индексов эталонных изображений, и передают управление функциональному этапу 618. На функциональном этапе 618 извлекают эталонное изображение, соответствующее каждому из принятых индексов эталонных изображений, и передают управление функциональному этапу 620. На функциональном этапе 620, в свою очередь, выполняют компенсацию движения извлеченного эталонного изображения и передают управление функциональному этапу 622. На функциональном этапе 622 умножают скомпенсированное по движению эталонное изображение на соответствующий весовой коэффициент и передают управление необязательному функциональному этапу 623. На необязательном функциональном этапе 623 суммируют скомпенсированное по движению эталонное изображение с соответствующим смещением и передают управление функциональному этапу 624. На функциональном этапе 624, в свою очередь, формируют взвешенное скомпенсированное по движению эталонное изображение и передают управление этапу 626 завершения.6, an exemplary video signal decoding process for an image block is generally designated 600. The process includes a start block 610, where control is passed to the
Согласно фиг.7 иллюстративный процесс кодирования данных видеосигнала для блока изображения обозначен в общем ссылочной позицией 700. Процесс включает в себя этап 710 начала, на котором передают управление этапу 712 ввода. На этапе 712 ввода принимают, по существу, данные несжатого блока изображения и передают управление функциональному этапу 714. На функциональном этапе 714 назначают весовой коэффициент для блока изображения, соответствующий конкретному эталонному изображению, имеющему соответствующий индекс. На функциональном этапе 714 передают управление необязательному функциональному этапу 715. На необязательном функциональном этапе 715 назначают смещение для блока изображения, соответствующее конкретному эталонному изображению, имеющему соответствующий индекс. На необязательном функциональном этапе 715 передают управление функциональному этапу 716, на котором вычисляют вектора движения, соответствующие разности между блоком изображения и конкретным эталонным изображением, и передают управление функциональному этапу 718. На функциональном этапе 718, в соответствии с векторами движения, выполняют компенсацию движения конкретного эталонного изображения и передают управление функциональному этапу 720. На функциональном этапе 720, в свою очередь, умножают скомпенсированное по движению эталонное изображение на назначенный весовой коэффициент для формирования взвешенного скомпенсированного по движению эталонного изображения и передают управление необязательному функциональному этапу 721. На необязательном функциональном этапе 721, в свою очередь, суммируют скомпенсированное по движению эталонное изображение с назначенным смещением для формирования взвешенного скомпенсированного по движению эталонного изображения и передают управление функциональному этапу 722. На функциональном этапе 722 вычитают взвешенное скомпенсированное по движению эталонное изображение из, по существу, несжатого блока изображения и передают управление функциональному этапу 724. На функциональном этапе 724, в свою очередь, кодируют сигнал с разностью между, по существу, несжатым блоком изображения и взвешенным скомпенсированным по движению эталонным изображением вместе с соответствующим индексом конкретного эталонного изображения и передают управление этапу 726 завершения.7, an illustrative encoding process of video signal data for an image block is generally designated 700. The process includes a start block 710, where control is passed to the
В представленном возможном варианте осуществления, для каждого кодированного изображения или раздела, каждому допустимому эталонному изображению, в отношении которого могут быть кодированы блоки текущего изображения, сопоставлен весовой коэффициент. При кодировании или декодировании каждого отдельного блока в текущем изображении, для формирования взвешенного предсказателя, к эталонному предсказанию применяются весовой коэффициент(ы) и смещение(я), соответствующие его индексам эталонных изображений. Все блоки в разделе, которые кодируются относительно одинакового эталонного изображения, применяют к предсказанию эталонного изображения одинаковый весовой коэффициент.In the presented possible embodiment, for each encoded image or section, for each valid reference image, in relation to which blocks of the current image can be encoded, a weight coefficient is compared. When encoding or decoding each individual block in the current image, to form a weighted predictor, the weighting coefficient (s) and the offset (s) corresponding to its reference image indices are applied to the reference prediction. All blocks in a section that are encoded with respect to the same reference image apply the same weight to the prediction of the reference image.
Следует ли использовать адаптивное взвешивание при кодировании изображения или нет, может быть указано в наборе параметров изображения или наборе параметров последовательности, или в заголовке изображения или раздела. Для каждого раздела или изображения, использующего адаптивное взвешивание, может передаваться весовой коэффициент для каждого из допустимых эталонных изображений, которые могут использоваться для кодирования этого раздела или изображения. Количество допустимых эталонных изображений передается в заголовке раздела. Например, если для кодирования текущего раздела может использоваться три эталонных изображения, то передается до трех весовых коэффициентов, и они сопоставляются эталонному изображению с идентичным индексом.Whether adaptive weighting should be used when encoding an image or not can be indicated in the image parameter set or sequence parameter set, or in the image or section header. For each section or image using adaptive weighting, a weight coefficient can be transmitted for each of the valid reference images that can be used to encode that section or image. The number of valid reference images is transmitted in the section header. For example, if three reference images can be used to encode the current section, up to three weights are transmitted, and they are matched against the reference image with the same index.
Если не передается ни одного весового коэффициента, то используются веса, заданные по умолчанию. В одном варианте осуществления настоящего изобретения, когда не передается ни одного весового коэффициента, то используются веса, заданные по умолчанию (1/2, 1/2). Весовые коэффициенты могут передаваться с использованием кодов фиксированной или переменной длины.If no weights are transmitted, then the default weights are used. In one embodiment of the present invention, when no weight is transmitted, the default weights are used (1/2, 1/2). Weights can be transmitted using fixed or variable length codes.
В отличие от стандартных систем, каждый весовой коэффициент, который передается с каждым разделом, блоком или изображением, соответствует конкретному индексу эталонного изображения. Ранее, любой набор весовых коэффициентов, передаваемый с каждым разделом или изображением, не был сопоставлен какому-либо конкретному эталонному изображению. Вместо этого для каждого блока движения, или области 88 передавался индекс адаптивного взвешивания двойного предсказания для выбора, какой из весовых коэффициентов из передаваемого набора должен применяться для этого конкретного блока движения, или области 88.Unlike standard systems, each weighting factor that is transmitted with each section, block or image corresponds to a specific index of the reference image. Previously, any set of weights transmitted with each section or image has not been matched to any particular reference image. Instead, for each block of motion, or area 8 8, an adaptive dual prediction weighting index was transmitted to select which of the weights from the transmitted set should be applied to that particular motion block, or region 8 8.
В представленном варианте осуществления индекс весового коэффициента для каждого блока движения, или области 88 не передается явно. Вместо этого используется весовой коэффициент, сопоставленный передаваемому индексу эталонного изображения. Это существенно уменьшает объем непроизводительной служебной информации в передаваемом потоке битов для обеспечения возможности адаптивного взвешивания эталонных изображений.In the present embodiment, the weighting index for each block of motion, or region 8 8 is not transmitted explicitly. Instead, a weighting coefficient associated with the transmitted index of the reference image is used. This significantly reduces the amount of overhead overhead in the transmitted bitstream to enable adaptive weighting of reference images.
Упомянутые система и методика могут применяться к "P"-изображениям с предсказанием, которые кодируются одним предсказателем, или к "B"-изображениям с двойным предсказанием, которые кодируются двумя предсказателями. Ниже описаны процессы декодирования для случаев P- и B-изображений, которые имеют место и в кодере, и декодерах. В качестве альтернативы, упомянутая методика может применяться также к системам кодирования, использующим концепции, подобные I, B и P- изображениям.The aforementioned system and methodology can be applied to “P” prediction images that are encoded by one predictor, or to “B” dual-predicted images that are encoded by two predictors. The decoding processes for the cases of P- and B-images, which take place both in the encoder and in the decoders, are described below. Alternatively, the aforementioned technique can also be applied to coding systems using concepts like I, B and P-images.
Для однонаправленного предсказания в B-изображениях и для двунаправленного предсказания в B-изображениях могут использоваться идентичные весовые коэффициенты. Когда для макроблока используется один предсказатель, в P-изображениях или для однонаправленного предсказания в B-изображениях, для этого блока передается один индекс эталонного изображения. После того как в процессе декодирования на этапе компенсации движения создают предсказатель, к этому предсказателю применяют весовой коэффициент. Затем взвешенный предсказатель суммируют с кодированным остатком и в отношении результата суммирования выполняют отсечение по границам области для формирования декодированного изображения. При использовании для блоков в P-изображениях или для блоков в B-изображениях, которые используют только предсказание списка 0, взвешенный предсказатель формируют в виде:For unidirectional prediction in B-images and for bi-directional prediction in B-images, identical weights can be used. When a single predictor is used for a macroblock, in P-images or for unidirectional prediction in B-images, one index of the reference image is transmitted for this block. After the predictor is created in the motion compensation step in the decoding process, a weight factor is applied to this predictor. Then, the weighted predictor is summed with the encoded remainder and, with respect to the summation result, clipping along the boundaries of the region is performed to form a decoded image. When used for blocks in P-images or for blocks in B-images that use only the prediction of list 0, a weighted predictor is formed in the form:
где W0 - весовой коэффициент, сопоставленный эталонному изображению списка 0, D0 - смещение, сопоставленное эталонному изображению списка 0, и Pred0 - блок скомпенсированного по движению предсказания из эталонного изображения списка 0.where W0 is the weighting coefficient mapped to the reference image of list 0, D0 is the offset mapped to the reference image of list 0, and Pred0 is the motion-compensated prediction block from the reference image of list 0.
Для использования для блоков в B-изображениях, которые используют только предсказание списка 0, взвешенный предсказатель формируют в виде:For use for blocks in B-images that use only list 0 prediction, a weighted predictor is formed as:
где W1 - весовой коэффициент, сопоставленный эталонному изображению списка 1, D0 - смещение, сопоставленное эталонному изображению списка 1, и Pred1 - блок скомпенсированного по движению предсказания из эталонного изображения списка 1.where W1 is the weighting coefficient mapped to the reference image of list 1, D0 is the offset mapped to the reference image of list 1, and Pred1 is the motion-compensated prediction block from the reference image of list 1.
Для гарантии того, что результирующие значения будут находиться внутри допустимого диапазона значений пикселей, обычно от 0 до 255, может осуществляться отсечение по границам области в отношении взвешенных предсказателей. Точность умножения в формулах взвешивания может быть ограничена любым предварительно определенным количеством битов разрешения.To ensure that the resulting values are within an acceptable range of pixel values, typically from 0 to 255, clipping along the boundaries of the region with respect to weighted predictors can be performed. The accuracy of the multiplication in the weighting formulas can be limited by any predetermined number of resolution bits.
В случае с двойным предсказанием передаются индексы эталонного изображения для каждого из двух предсказателей. Для формирования двух предсказателей выполняется компенсация движения. Для формирования двух взвешенных предсказателей каждый предсказатель использует весовой коэффициент, сопоставленный со своим индексом эталонного изображения. Затем два взвешенных предсказателя усредняются вместе для формирования усредненного предсказателя, который затем складывается с кодированным остатком.In the case of dual prediction, reference image indices are transmitted for each of the two predictors. To form two predictors, motion compensation is performed. To form two weighted predictors, each predictor uses a weight coefficient mapped to its reference image index. Then, two weighted predictors are averaged together to form an averaged predictor, which is then added to the encoded remainder.
Для использования для блоков в B-изображениях, которые используют предсказатели списка 0 и списка 1, взвешенный предсказатель формируют в виде:For use for blocks in B-images that use the predictors of list 0 and list 1, a weighted predictor is formed as:
Для гарантии того, что результирующие значения будут находиться внутри допустимого диапазона значений пикселей, обычно от 0 до 255, к взвешенному предсказателю или любому из промежуточных значений в вычислении взвешенного предсказателя может быть применено отсечение по границам области.To ensure that the resulting values are within an acceptable range of pixel values, typically from 0 to 255, clipping along the boundaries of the region can be applied to the weighted predictor or any of the intermediate values in the calculation of the weighted predictor.
Соответственно, к предсказанию эталонного изображения декодера и кодера сжатия видеосигнала, которые используют несколько эталонных изображений, применяется весовой коэффициент. Весовой коэффициент адаптируется для отдельных блоков движения внутри изображения на основе индекса эталонного изображения, которое используется для этого блока движения. Так как индекс эталонного изображения уже передается в потоке битов сжатого видеосигнала, существенно уменьшается объем дополнительной непроизводительной служебной информации для адаптации весового коэффициента на основе блока движения. Все блоки движения, кодированные относительно одинакового эталонного изображения, применяют к предсказанию эталонного изображения одинаковый весовой коэффициент.Accordingly, a weighting factor is applied to the prediction of the reference image of the decoder and the video compression encoder that use several reference images. The weight coefficient is adapted for individual motion blocks within the image based on the index of the reference image that is used for this motion block. Since the index of the reference image is already transmitted in the bit stream of the compressed video signal, the amount of additional overhead service information for adapting the weight coefficient based on the motion block is significantly reduced. All motion blocks encoded with respect to the same reference image apply the same weight to the prediction of the reference image.
Специалисты в данной области техники на основе приведенных здесь принципов могут легко обнаружить указанные и другие признаки и преимущества настоящего изобретения. Понятно, что принципы настоящего изобретения могут быть реализованы в различных видах аппаратных средств, программного обеспечения, программно-аппаратных средств, специализированных процессорах или в их комбинациях.Those skilled in the art, based on the principles set forth herein, can readily discover these and other features and advantages of the present invention. It is understood that the principles of the present invention can be implemented in various types of hardware, software, firmware, specialized processors, or combinations thereof.
Наиболее предпочтительна реализация принципов настоящего изобретения в виде комбинации аппаратных средств и программного обеспечения. Кроме того, программное обеспечение, предпочтительно, реализуется в виде прикладной программы, физически реализованной в блоке памяти для хранения программ. Прикладная программа может быть загружена в вычислительное устройство, имеющее любую соответствующую архитектуру, и выполняться на нем. Предпочтительно, вычислительное устройство реализовано на платформе компьютера, имеющей такие аппаратные средства как один или большее количество центральных процессоров ("CPU"), оперативное запоминающее устройство ("RAM") и интерфейсы ввода/вывода ("I/O"). Платформа компьютера может включать в себя также код микрокоманд и операционную систему. Различные процессы и функции, описанные здесь, могут являться частью кода микрокоманд или частью прикладной программы, или любой их комбинацией, которая может выполняться CPU. Дополнительно, к платформе компьютера могут быть подсоединены разные другие периферийные устройства, такие как дополнительный блок памяти для хранения данных и печатающее устройство.Most preferred is the implementation of the principles of the present invention as a combination of hardware and software. In addition, the software is preferably implemented as an application program physically implemented in a memory unit for storing programs. An application program may be downloaded to and executed on a computing device having any appropriate architecture. Preferably, the computing device is implemented on a computer platform having hardware such as one or more central processing units (“CPUs”), random access memory (“RAM”), and input / output (“I / O”) interfaces. A computer platform may also include micro-command code and an operating system. The various processes and functions described herein may be part of the micro-command code or part of an application program, or any combination of them that can be executed by the CPU. Additionally, various other peripheral devices, such as an additional memory unit for storing data and a printing device, can be connected to the computer platform.
Также следует понимать, что так как некоторые из составляющих систему компонентов и способов, изображенных на приложенных чертежах, предпочтительно, реализованы в программном обеспечении, фактические связи между компонентами системы, или функциональными блоками процесса могут варьироваться в зависимости от того, как запрограммировано настоящее изобретение. При наличии приведенных здесь принципов специалист в данной области техники может предусмотреть указанные и подобные реализации или конфигурации настоящего изобретения.It should also be understood that since some of the components of the system and the methods depicted in the attached drawings are preferably implemented in software, the actual relationships between system components or process functional blocks may vary depending on how the present invention is programmed. In the presence of the principles set forth herein, one skilled in the art may envision these and similar implementations or configurations of the present invention.
Хотя здесь, согласно приложенным чертежам, были описаны иллюстративные варианты осуществления, понятно, что настоящее изобретение не ограничивается именно этими вариантами осуществления, и что специалист в данной области техники, не удаляясь от сути и не выходя за рамки объема настоящего изобретения, может внести различные изменения и модификации. Подразумевается, что все такие изменения и модификации включены в объем настоящего изобретения, определяемый приложенной формулой изобретения.Although illustrative embodiments have been described herein, according to the attached drawings, it is understood that the present invention is not limited to just these embodiments, and that one skilled in the art can make various changes without departing from the gist and without departing from the scope of the present invention. and modifications. It is intended that all such changes and modifications be included within the scope of the present invention as defined by the appended claims.
Claims (22)
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US39584302P | 2002-07-15 | 2002-07-15 | |
US39587402P | 2002-07-15 | 2002-07-15 | |
US60/395,843 | 2002-07-15 | ||
US60/395,874 | 2002-07-15 | ||
US10/410,481 | 2003-04-09 |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2005103830A RU2005103830A (en) | 2005-07-20 |
RU2333615C2 true RU2333615C2 (en) | 2008-09-10 |
Family
ID=35842357
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2005103829/09A RU2325783C2 (en) | 2002-07-15 | 2003-07-14 | Adaptive weighing of reference images during video signal coding |
RU2005103830/09A RU2333615C2 (en) | 2002-07-15 | 2003-07-14 | Adaptive weighing of master images when decoding video signal |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2005103829/09A RU2325783C2 (en) | 2002-07-15 | 2003-07-14 | Adaptive weighing of reference images during video signal coding |
Country Status (1)
Country | Link |
---|---|
RU (2) | RU2325783C2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2609064C2 (en) * | 2011-12-21 | 2017-01-30 | Сан Пэтент Траст | Image encoding method, image decoding method, image encoding device and image decoding device |
RU2699253C2 (en) * | 2010-09-03 | 2019-09-04 | Гуандун Оппо Мобайл Телекоммьюникейшнз Корп., Лтд. | Method and system for compensation of illumination and transition when encoding and processing video signal |
RU2710303C2 (en) * | 2011-11-08 | 2019-12-25 | Кт Корпорейшен | Video decoding method |
-
2003
- 2003-07-14 RU RU2005103829/09A patent/RU2325783C2/en active
- 2003-07-14 RU RU2005103830/09A patent/RU2333615C2/en active
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2699253C2 (en) * | 2010-09-03 | 2019-09-04 | Гуандун Оппо Мобайл Телекоммьюникейшнз Корп., Лтд. | Method and system for compensation of illumination and transition when encoding and processing video signal |
RU2710303C2 (en) * | 2011-11-08 | 2019-12-25 | Кт Корпорейшен | Video decoding method |
RU2609064C2 (en) * | 2011-12-21 | 2017-01-30 | Сан Пэтент Траст | Image encoding method, image decoding method, image encoding device and image decoding device |
RU2609064C9 (en) * | 2011-12-21 | 2018-09-21 | Сан Пэтент Траст | Image encoding method, image decoding method, image encoding device and image decoding device |
Also Published As
Publication number | Publication date |
---|---|
RU2005103830A (en) | 2005-07-20 |
RU2325783C2 (en) | 2008-05-27 |
RU2005103829A (en) | 2005-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6496056B2 (en) | Adaptive weighting of reference pictures in video coding | |
JP6370359B2 (en) | Adaptive weighting of reference pictures in video decoding | |
RU2342803C2 (en) | Implicit weighing of basic images in video coder | |
JP4533841B2 (en) | Motion estimation by weighted prediction | |
RU2333615C2 (en) | Adaptive weighing of master images when decoding video signal |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PD4A | Correction of name of patent owner | ||
PC41 | Official registration of the transfer of exclusive right |
Effective date: 20191111 |