RU2619198C1 - Video decoding method - Google Patents

Video decoding method

Info

Publication number
RU2619198C1
RU2619198C1 RU2016114731A RU2016114731A RU2619198C1 RU 2619198 C1 RU2619198 C1 RU 2619198C1 RU 2016114731 A RU2016114731 A RU 2016114731A RU 2016114731 A RU2016114731 A RU 2016114731A RU 2619198 C1 RU2619198 C1 RU 2619198C1
Authority
RU
Grant status
Grant
Patent type
Prior art keywords
block
candidate
prediction
pu
current block
Prior art date
Application number
RU2016114731A
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
Grant date

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]

Abstract

FIELD: physics.
SUBSTANCE: video decoding method includes the steps of obtaining the quantized transformation coefficients of the current block and the reference image index from the bitstream; obtaining the transformation coefficients by inverse quantizing the quantized transformation coefficients; obtaining the difference samples of the current block by inverse transforming the transformation coefficients; obtaining the spatial vector-candidate for the neighboring space block movement relative to the current block; selecting the associated image related to the temporary vector-candidate of the current block movement, based on the reference image index; obtaining the temporal vector-candidate of the current block movement on the associated block. The associated block is included in the associated image; generating the list of the movement vector-candidates containing a spatial movement vector-candidate and a temporary movement vector-candidate; determining the movement vector predictor based on the list of the movement vector-candidates and the candidate index of the current block. The candidate index indicates one of the movement vector-candidates contained in the list of the movement vector-candidates; obtaining the prediction samples of the current block using the movement vector predictor; and reconstructing the current block using the prediction samples and the difference samples of the current block.
EFFECT: efficient video decoding.
6 cl, 8 dwg

Description

Настоящая заявка выделена из заявки №2014119545 на выдачу патента РФ на изобретение, поданной 08.11.2012, с испрашиванием приоритета по дате подачи первых заявок KR 10-2011-0116126 и KR 10-2012-0125799, поданных в патентное ведомство Кореи 08.11.2011 и 08.11.2012 соответственно. The present application is isolated from the application for issuance №2014119545 RF patent, filed on 08.11.2012, claiming priority filing date of the first application KR 10-2011-0116126 and KR 10-2012-0125799, filed in the Korean Patent Office on 08.11.2011 and 08.11.2012 respectively.

Область техники, к которой относится изобретение TECHNICAL FIELD OF THE INVENTION

Настоящее изобретение относится к кодированию и декодированию видеоданных, более конкретно к способу декодирования видеосигнала. The present invention relates to encoding and decoding video, and more particularly to a method for video decoding.

Уровень техники BACKGROUND

В последнее время в различных отраслях растет потребность в использовании видеоданных с большим разрешением и высоким качеством, таких как видеоданные высокого качества (HD; high-definition) и сверхвысокого качества (UHD; ultrahigh-definition). Recently, in various industries is increasing need for the use of video with high resolution and high quality, such as high quality video data (HD; high-definition) and very high quality (UHD; ultrahigh-definition). По мере повышения разрешения и качества видеоданных возрастает и объем данных по отношению к существующим в настоящее время обычным видеоданным. With increasing resolution and quality of video data increases, and the amount of data in relation to existing at present conventional video data. Соответственно, при передаче видеоданных с использованием, например, существующих в настоящее время проводных и беспроводных широкополосных линий связи или хранении видеоданных на существующих в настоящее время носителях информации возрастают затраты на передачу и хранение видеоданных. Accordingly, in the transmission of video data using, for example, currently existing wired or wireless broadband lines or video stored on currently available information carriers are increasing the cost of transmission and storage of video data. Для решения этих проблем, возникающих при увеличении разрешения и качества видеоданных, могут быть использованы высокоэффективные способы сжатия видеоданных. To solve these problems by increasing the resolution and quality of video data high-efficiency video compression methods may be used.

Способ сжатия видеоданных содержит различные способы, такие как способ межкадрового предсказания для предсказания значений пикселей, содержащихся в текущем изображении, на основании предыдущих или последующих изображений относительно текущего изображения, способ внутрикадрового предсказания для предсказаний значений пикселей в текущем изображении с использованием информации о пикселе в текущем изображении и способ энтропийного кодирования путем присваивания короткого кода значению с высокой частотой появления и присваивания дл video data compression method includes various methods such as a method of interframe prediction for predicting the pixel values ​​contained in the current image, based on previous or subsequent images from the current image, the method of intra prediction for prediction of the pixel values ​​in the current image using information about the pixel in the current image and a method of entropy encoding by assigning a short code value with high frequency of appearance and for the assignment нного кода значению с низкой частотой появления. nnogo code value with a low frequency of appearance. Видеоданные могут быть эффективно сжаты и переданы или сохранены с использованием таких способов сжатия видеоданных. The video data can be efficiently compressed and transmitted or stored using techniques such video compression.

Раскрытие изобретения SUMMARY OF THE iNVENTION

Целью аспекта настоящего изобретения является предложение способа декодирования видеосигнала для повышения эффективности декодирования видеоданных. The purpose of this aspect of the invention is to provide a video decoding method for video decoding improve efficiency.

В варианте осуществления настоящего изобретения предлагается способ декодирования видеосигнала. In an embodiment of the present invention there is provided a video decoding method. Способ включает получение квантованных коэффициентов преобразования текущего блока и индекса опорного изображения из битового потока; The method includes obtaining quantized transform coefficients of the current block and the reference image index from the bitstream; получение коэффициентов преобразования путем обратного квантования квантованных коэффициентов преобразования; obtaining transformation coefficients by inverse quantizing the quantized transform coefficients; получение разностных образцов текущего блока путем выполнения обратного преобразования коэффициентов преобразования; obtaining difference samples of the current block by performing inverse transform of transform coefficients; получение пространственного вектора-кандидата перемещения по соседнему в пространстве блоку относительно текущего блока; obtaining spatial candidate motion vector for the neighboring block in the space relative to the current block; выбор связанного изображения, относящегося к временному вектору-кандидату перемещения текущего блока, на основании индекса опорного изображения; selection of related images relating to the time-candidate motion vector of the current block based on the reference image index; получение временного вектора-кандидата перемещения текущего блока по связанному блоку, при этом связанный блок включен в связанное изображение; obtaining temporal candidate vector of the current block on the associated unit, wherein the associated unit is included in the associated image; генерирование списка векторов-кандидатов перемещения, содержащего пространственный вектор-кандидат перемещения и временной вектор-кандидат перемещения; generating a list of candidate motion vectors having a spatial vector and a candidate motion vector candidate temporal displacement; определение предсказателя вектора перемещения на основании списка векторов-кандидатов перемещения и индекса кандидата текущего блока, при этом индекс кандидата указывает один из векторов-кандидатов перемещения, содержащихся в списке векторов-кандидатов перемещения; determining a motion vector predictor based on a list of candidate vectors and the displacement of the current block the candidate index, the index of the candidate indicates one of motion of candidate vectors contained in the list of candidate motion vectors; получение образцов предсказания текущего блока с использованием предсказателя вектора перемещения; obtaining a prediction of the current block of samples using the motion vector predictor; и реконструирование текущего блока с использованием образцов предсказания и разностных образцов текущего блока. and reconstructing the current block using the prediction difference samples and the samples of the current block.

В таком способе связанное изображение может иметь временной порядок, отличный от текущего изображения, содержащего текущий блок. In such a process image may have associated temporal order is different from the current picture containing the current block.

Связанный блок может представлять собой блок, соответствующий той же позиции, что и текущий блок. Bound block may be a block corresponding to the same position as the current block.

Соседний в пространстве блок может включать по меньшей мере один из числа левого соседнего блока и верхнего соседнего блока. The adjacent space unit may include at least one from among the left adjacent block and a top neighboring block.

Множество векторов-кандидатов перемещения в списке векторов-кандидатов перемещения может быть расположено в порядке приоритета. A lot of movement candidate vectors in the list of candidate vectors of movement can be arranged in order of priority.

Множество векторов-кандидатов перемещения может быть расположено в порядке, соответствующем пространственному вектору-кандидату перемещения и временному вектору-кандидату перемещения. The set of candidate motion vectors can be arranged in the order corresponding to the spatial displacement vector candidates and temporal candidate vector displacement.

Технический результат The technical result

В соответствии с настоящим изобретением способ сканирования для коэффициентов преобразования определяют с использованием режима деления блока предсказания, иными словами, выраженной анизотропией (направленностью) или конкретной текстурой блока предсказания, тем самым повышая эффективность кодирования и декодирования. In accordance with the present invention a method for scanning transform coefficients using the determined prediction block dividing mode, in other words, the pronounced anisotropy (oriented) or specific texture prediction block, thereby improving coding efficiency and decoding.

Краткое описание чертежей BRIEF DESCRIPTION OF DRAWINGS

На фиг. FIG. 1 показана функциональная схема устройства кодирования видеоданных в соответствии с примерным вариантом осуществления настоящего изобретения. 1 shows a functional diagram of a video encoding apparatus according to an exemplary embodiment of the present invention.

На фиг. FIG. 2 показана функциональная диаграмма устройства декодирования видеоданных в соответствии с примерным вариантом осуществления настоящего изобретения. 2 shows a functional diagram of a video decoding apparatus according to an exemplary embodiment of the present invention.

На фиг. FIG. 3 схематично показан способ сканирования коэффициентов в соответствии с настоящим изобретением. 3 schematically shows a method of scanning the coefficients in accordance with the present invention.

На фиг. FIG. 4 показан способ определения и кодирования способа сканирования на основании режима деления блока предсказания в соответствии с примерным вариантом осуществления настоящего изобретения. 4 illustrates a method of determining and encoding method dividing the scan based on the prediction block mode in accordance with an exemplary embodiment of the present invention.

На фиг. FIG. 5 показан способ определения и кодирования способа сканирования в делении асимметричного перемещения (asymmetric motion partition, AMP) в соответствии с примерным вариантом осуществления настоящего изобретения. 5 illustrates a method of determining and encoding method in the division scanning asymmetric displacement (asymmetric motion partition, AMP) in accordance with an exemplary embodiment of the present invention.

На фиг. FIG. 6 показан способ определения и кодирования способа сканирования для внутрикадрового предсказания на малых расстояниях (short distance intra prediction, SDIP) в соответствии с примерным вариантом осуществления настоящего изобретения. 6 illustrates a method of determining and encoding method for intra prediction of scanning over small distances (short distance intra prediction, SDIP) in accordance with an exemplary embodiment of the present invention.

На фиг. FIG. 7 показана обобщенная схема операции кодирования видеоданных в соответствии с настоящим изобретением. 7 shows a generic operation of video coding scheme according to the present invention.

На фиг. FIG. 8 показана обобщенная схема операции декодирования видеоданных в соответствии с настоящим изобретением. 8 shows a generalized diagram of a video decoding operation in accordance with the present invention.

Осуществление изобретения EMBODIMENTS

Настоящее изобретение может быть изменено или модифицировано различными способами и может быть проиллюстрировано со ссылкой на различные примеры вариантов осуществления, некоторые из которых будут описаны и показаны на чертежах. The present invention may be changed or modified in various ways and can be illustrated with reference to various exemplary embodiments, some of which are described and shown in the drawings. Однако эти варианты осуществления не предназначены для ограничения изобретения, но предполагают включение всех модификаций, аналогов и замен, соответствующих духу и объему охраны изобретения. However, these embodiments are not intended to limit the invention, but are intended to include all modifications, analogs and substitutions within the spirit and scope of the invention. Одинаковые обозначения позиций на чертежах относятся к одним и тем же элементам во всем документе. Identical reference numerals in the drawings refer to the same elements throughout the document.

Хотя могут быть использованы термины «первый», «второй» и т.д. Although the terms "first" can be used, "second", etc. для описания различных элементов, эти элементы не должны ограничиваться этими терминами. to describe various elements, these elements should not be limited by these terms. Эти термины использованы только для различения одного элемента от другого элемента. These terms are only used to distinguish one element from another element. Например, первый элемент может быть назван вторым элементом, а второй элемент подобным образом может быть назван первым элементом без выхода за пределы сущности настоящего изобретения. For example, a first element can be named the second element, and similarly the second element may be termed a first element without departing from the spirit of the present invention. Термин «и/или» включает все и любые комбинации множества соответствующих перечисленных элементов. The term "and / or" includes any and all combinations of the respective plurality of listed items.

Следует понимать, что когда элемент описывают как «соединенный с» или «связанный с» другим элементом, такой элемент может быть напрямую соединен или связан с другим элементом или промежуточными элементами. It should be understood that when an element is described as "coupled to" or "coupled to" another element, the element can be directly connected or coupled to another element or intermediate elements. С другой стороны, когда элемент описывают как «напрямую соединенный с» или «напрямую связанный с» другим элементом, промежуточные элементы отсутствуют. On the other hand, when an item described as "directly connected to" or "directly connected to" another element, no intervening elements present.

Использованная в данном документе терминология используется только с целью описания частных вариантов осуществления и не предназначена для ограничения изобретения. terminology used herein is used only for the purpose of describing particular embodiments only and is not intended to limit the invention. Как использовано в данном документе, формы единственного числа предполагают также включение форм множественного числа кроме случаев, когда из контекста ясно следует обратное. As used herein, the singular forms also are intended to include plural forms unless the context indicates clearly otherwise. Также ясно, что термины «содержит», «включает» и/или «имеет», использованные в данном описании, указывают на наличие указанных признаков, целых систем, шагов, операций, элементов и/или других компонентов, но не препятствуют наличию или добавлению одного или более других признаков, целых систем, шагов, операций, элементов, компонентов и/или их объединений. It is also clear that the terms "comprises", "includes" and / or 'has' used in this specification, specify the presence of stated features, integers systems, steps, operations, elements, and / or other components but does not preclude the presence or addition of one or more other features, integers systems, steps, operations, elements, components, and / or their associations.

В дальнейшем примерные варианты осуществления изобретения будут описаны детально со ссылкой на сопровождающие чертежи. In further exemplary embodiments of the invention will be described in detail with reference to the accompanying drawings. Одинаковые ссылочные обозначения на чертежах относятся к аналогичным элементам во всем документе, и избыточные описания одинаковых элементов будут здесь опущены. Identical reference numerals in the drawings refer to like elements throughout the document, and redundant description of the same elements will be omitted here.

На фиг. FIG. 1 показана функциональная схема устройства кодирования видеоданных в соответствии с примерным вариантом осуществления настоящего изобретения. 1 shows a functional diagram of a video encoding apparatus according to an exemplary embodiment of the present invention.

Как показано на фиг. As shown in FIG. 1, устройство 100 кодирования видеоданных содержит модуль 110 деления изображения, модули 120 и 125 предсказания, модуль 130 преобразования, модуль 135 квантизации (квантования), модуль 160 переупорядочения, модуль 165 энтропийного кодирования, модуль 140 деквантизации, модуль 145 обратного преобразования, модуль 150 фильтрации и память (запоминающее устройство) 155. 1, the device 100 video coding comprises an image division unit 110, modules 120 and 125 of the prediction unit 130 conversion unit 135 quantizing (quantization) unit 160 reordering unit 165 entropy encoding unit 140, dequantization, inverse transform module 145, module 150 filter and a memory (storage device) 155.

Хотя с целью пояснения различных отличительных функций устройства кодирования видеоданных элементы на фиг. While, for purposes of explanation different distinctive features of video data elements encoding apparatus in FIG. 1 показаны независимо, данная конфигурация не означает, что каждый элемент представляет собой отдельный аппаратный компонент или программный компонент. 1 are shown independently, this configuration does not mean that each element is a separate hardware component or a software component. Иными словами, элементы показаны независимыми для удобства описания; In other words, independent elements shown for convenience of description; тогда как для выполнения функций два или более элементов могут быть объединены в один элемент, или один элемент может быть разделен на несколько элементов. whereas for the functions of two or more elements may be combined into one element, or one element can be divided into several elements. Варианты осуществления изобретения, в которых некоторые элементы объединены в один составной элемент и/или элемент разделен на несколько самостоятельных элементов, входят в объем охраны настоящего изобретения без выхода за пределы сущности настоящего изобретения. Embodiments of the invention in which certain elements are integrated into one component and / or element is divided into several independent elements, within the scope of protection of the present invention without departing from the spirit of the present invention.

Некоторые элементы не являются необходимыми для основных функций изобретения и могут быть необязательными компонентами лишь для улучшения характеристик. Some elements are not necessary for the basic functions of the invention and may be only optional components to improve the characteristics. Изобретение может быть осуществлено включением только необходимых для варианта осуществления изобретения компонентов, за исключением компонентов, использованных лишь для улучшения характеристик. The invention can be practiced include only necessary for the embodiment components except the components used only to improve performance. Структура, включающая в себя только необходимые компоненты, за исключением оптических компонентов, использованных лишь для улучшения характеристик, входит в объем охраны изобретения. A structure comprising only the necessary components, except for optical components used only for improving the characteristics, within the scope of the invention.

Модуль 110 деления изображения может разделять входное изображение на по меньшей мере один блок обработки (process unit). Image dividing unit 110 may divide the input image into at least one processing unit (process unit). При этом блок обработки может быть блоком предсказания (prediction unit, PU), блоком преобразования (transform unit, TU) или блоком кодирования (coding unit, CU). In this case the processing unit may be a prediction block (prediction unit, PU), the conversion unit (transform unit, TU) or coding unit (coding unit, CU). Модуль 110 деления изображения может разделять одно изображение на множество комбинаций блоков CU, PU и TU и выбирать одну комбинацию CU, PU и TU на основании заранее заданного критерия (например, функции стоимости), тем самым кодируя изображение. Image dividing unit 110 may divide one picture into a plurality of block combinations CU, PU and TU and to select one combination CU, PU and TU based on a predetermined criterion (e.g., the cost function), thereby encoding the image.

Например, одно изображение может быть разделено на несколько CU. For example, one image may be divided into several CU. Рекурсивная структура дерева, такая как структура дерева квадрантов, может быть использована для деления изображения на блоки CU. The recursive tree structure, the tree structure such as the quadrants may be used to divide the image on the CU blocks. CU, для которого изображение или CU максимального размера может быть корнем, может быть разделен на подблоки кодирования с таким же количеством дочерних узлов, как и у разделяемых блоков CU. CU, for which an image or CU maximum size may be the root, may be divided into sub coding with the same number of child nodes, like shared CU block. CU, который более не разделяют в соответствии с заранее заданным ограничением, является листовым (концевым) узлом. CU, which is not separated in accordance with a predetermined limitation is sheeting (end) node. Иными словами, при условии, что CU может быть разделен только на квадранты, одиночный CU может быть разделен самое большее на четыре различных CU. In other words, provided that the CU can be divided only into quadrants, single CU can be divided into at most four different CU.

В вариантах осуществления изобретения CU может быть использован для ссылки не только на блок для кодирования, но также на блок для декодирования. In embodiments, the CU can be used to refer not only to the unit for coding, but also on a block for decoding.

PU может быть разделен на по меньшей мере одну квадратную или прямоугольную форму с тем же размером, что у CU. PU can be divided into at least one square or rectangular shape with the same size that CU. Форма PU, выделенных из одного и того же CU, может отличаться друг от друга. Form PU, extracted from the same CU, may differ from each other.

При генерировании PU для внутрикадрового предсказания на основании CU и при условии, что CU не является минимальным CU, CU могут подвергать внутрикадровому предсказанию без деления на несколько PU (N×N). When generating PU for intra prediction based on CU and provided that the CU is not the minimum CU, CU may expose intraframe prediction without division into several PU (N × N).

Модули 120 и 125 предсказания могут включать модуль 120 межкадрового предсказания для выполнения межкадрового предсказания и модуль 125 внутрикадрового предсказания для выполнения внутрикадрового предсказания. Modules 120 and 125 may include a prediction unit 120 for performing inter prediction interframe prediction and intraframe prediction unit 125 to perform intra prediction. Модули 120 и 125 предсказания могут определять, какое из предсказаний, межкадровое или внутрикадровое, должно быть выполнено для PU, и могут определять характерную информацию (например, режим внутрикадрового предсказания, вектор перемещения и опорное изображение) определенного таким образом способа предсказания. Modules 120 and 125 may be prediction determine which of the predictions, interframe or intraframe must be satisfied for PU, and may determine the characteristic information (e.g., intra prediction mode, movement vector and the reference image) thus determined prediction method. При этом блок обработки, для которого выполняют предсказание, может быть отличным от блока обработки, для которого определены способ предсказания и характерная информация. Wherein the processing unit for which a prediction is performed, may be different from the processing unit for which the determined prediction method, and the characteristic information. Например, способ предсказания и режим предсказания могут быть определены для каждого PU, тогда как предсказание может быть выполнено для каждого TU. For example, the prediction method and the prediction mode can be defined for each PU, whereas the prediction may be performed for each TU. Разностное значение (разностный блок) между сгенерированным предсказанным блоком и оригинальным блоком может быть введено в модуль 130 преобразования. Difference value (difference block) generated between the predicted block and the original block may be introduced into the conversion unit 130. Кроме того, информация о режиме предсказания, информация о векторе перемещения и т.п., использованные для предсказания, могут быть закодированы вместе с разностным значением модулем 165 энтропийного кодирования и переданы в устройство декодирования. In addition, prediction mode information, motion vector information and the like used for prediction may be encoded together with the difference value of the entropy coding module 165 and transmitted to the decoder. При использовании конкретного режима кодирования оригинальный блок может быть закодирован и передан в устройство декодирования без генерирования блока предсказания модулями 120 и 125 предсказания. When using a specific encoding mode original block may be encoded and transmitted to the decoding device without generating a prediction block modules 120 and 125 prediction.

Модуль 120 межкадрового предсказания может предсказывать PU на основании информации о по меньшей мере одном изображении из числа изображения, предшествовавшего текущему изображению, и изображения, следующему за текущим изображением. Inter-frame prediction unit 120 can predict the PU based on information about at least one image from among the image preceding the current image and the image following the current image. Модуль 120 межкадрового предсказания может содержать модуль интерполяции опорного изображения, модуль предсказания перемещения и модуль компенсации перемещения. Inter-frame prediction unit 120 may comprise interpolating unit reference image motion prediction unit and motion compensation unit.

Модуль интерполяции опорного изображения может получать информацию об опорном изображении из памяти 155 и генерировать информацию о пикселе менее чем целый пиксел от опорного изображения. reference picture interpolation module may receive information about the reference image from memory 155 and generate information on pixel less than a pixel on the reference image. Для пикселов яркостного канала может быть использован 8-элементный интерполяционный фильтр с дискретным косинусным преобразованием (DCT) с переменным коэффициентом фильтра для генерирования информации о пикселе менее чем целый пиксел в элементах 1/4 пиксела. For 8-pixel interpolation filter element with a discrete cosine transform (DCT) with a variable filter coefficient can be used for the luminance channel information generation pixel less than a pixel in the 1/4 pixel elements. В случае пикселов цветностного канала может быть использован 4-элементный интерполяционный фильтр с дискретным косинусным преобразованием (DCT) с переменным коэффициентом фильтра для генерирования информации о пикселе менее чем целый пиксел в элементах 1/8 пиксела. In the case of chroma pixels channel can be used 4-interpolation filter element with a discrete cosine transform (DCT) with a variable filter coefficient to generate information on pixel less than a pixel in the 1/8 pixel elements.

Модуль предсказания перемещения может выполнять предсказание перемещения (motion prediction) на основании опорного изображения, интерполированного модулем интерполяции опорного изображения. movement prediction module may perform motion prediction (motion prediction) based on the reference image, the interpolation unit interpolating the reference image. Для вычисления вектора перемещения могут быть использованы различные подходы, такие как алгоритм блочного сравнения на основе полного поиска (full search-based block matching algorithm, FBMA), алгоритм трехшагового поиска (three-step search, TSS) и новый алгоритм трехшагового поиска (new three-step search, NTS). To compute the motion vector can be used a variety of approaches, such as a block matching algorithm based on a comprehensive search (full search-based block matching algorithm, FBMA), three-step search algorithm (three-step search, TSS) and a new algorithm for three-step search (new three -step search, NTS). Вектор перемещения имеет значение вектора перемещения в элементах 1/2 или 1/4 пиксела на основании интерполированного пиксела. motion vector has a value of a motion vector in units 1/2 or 1/4 pixel based on the interpolated pixel. Модуль предсказания перемещения может предсказывать текущий PU с использованием различных способов предсказания перемещения. motion prediction module can predict the current PU using different prediction methods movement. В качестве способа предсказания перемещения могут быть использованы различные способы, такие как режим пропуска, режим слияния и улучшенное предсказание вектора перемещения (advanced motion vector prediction, AMVP) и т.д. As a method of motion prediction Various methods can be used, such as skip mode, M mode, and improved prediction motion vector (advanced motion vector prediction, AMVP) etc.

Модуль 125 внутрикадрового предсказания может генерировать PU на основании информации об опорном пикселе, соседнем с текущим блоком. Module 125 may generate the intra-prediction based on the PU information on the reference pixel adjacent to the current block. Информация об опорном пикселе, соседнем с текущим блоком, является информацией о пикселе в текущем изображении. Information about the reference pixel adjacent to the current block is the pixel information in the current picture. Если опорный пиксел является пикселом, для которого выполняется межкадровое предсказание, поскольку блок, который включает в себя опорный пиксел, соседний с текущим PU, является блоком, для которого выполняется межкадровое предсказание, информация об опорном пикселе, включенная в блок, для которого выполняется межкадровое предсказание, может быть замещена информацией об опорном пикселе в блоке, для которого выполняется внутрикадровое предсказание. If the reference pixel is a pixel for which the inter-frame prediction, since a block which includes a reference pixel adjacent to the current PU, is a unit for which the inter-picture prediction, on the reference pixel information, included in the unit for which the inter-prediction It may be substituted with information on the reference pixel in a block for which intra prediction is performed. Иными словами, если опорный пиксел недоступен, информация о недоступном пикселе может быть замещена информацией о по меньшей мере одном опорном пикселе из доступных опорных пикселов. In other words, if the reference pixel is not available, the reach of the pixel information can be substituted with information on at least one reference pixel of available reference pixels.

Режим предсказания для внутрикадрового предсказания включает режим направленного предсказания, в котором используется информация об опорном пикселе в соответствии с направлением предсказания и режим ненаправленного предсказания, в котором информацию о направлении не используют для выполнения предсказания. prediction mode for intra prediction involves directional prediction mode, which uses the information on the reference pixel in accordance with the direction of prediction and a non-directional prediction mode, wherein the direction information is not used to perform the prediction. Режим для предсказания информации о яркостном канале и режим для предсказания информации о цветностном канале могут отличаться друг от друга. Mode for predicting luma information and prediction mode information on the chroma channels may differ from each other. Кроме того, информацию о режиме внутрикадрового предсказания, использованную для получения информации о яркостном канале или информации о предсказанном сигнале яркостного канала, можно использовать для предсказания информации о цветностном канале. In addition, information on the intra prediction mode that was used to receive the luminance information channel or the predicted luminance channel signal, can be used for prediction information of the chroma channels.

Если PU и TU имеют одинаковый размер при выполнении внутрикадрового предсказания, внутрикадровое предсказание для PU можно выполнить на основании левых пикселов, верхнего левого пиксела и верхних пикселов PU. If PU and TU are the same size when performing the intra prediction, intra-prediction for PU can be performed on the basis of left pixels, the top left pixel and the upper pixel PU. С другой стороны, если PU и TU имеют различные размеры при выполнении внутрикадрового предсказания, внутрикадровое предсказание можно выполнить с использованием опорных пикселов на основании TU. On the other hand, if PU and TU have different sizes when the intra-prediction, intra-prediction can be performed using reference pixels based on TU. Внутрикадровое предсказание с использованием деления N×N можно выполнить только для минимального CU. Intraframe prediction using N × N division can be performed only for the minimum CU.

В способе внутрикадрового предсказания предсказанный блок может быть сгенерирован в соответствии с режимом предсказания после применения фильтра адаптивного внутрикадрового сглаживания (adaptive intra smoothing, AIS). In the method of intra predicted block can be generated in accordance with prediction mode after applying the smoothing filter of the adaptive intra-frame (adaptive intra smoothing, AIS). К опорным пикселам могут быть применены различные типы фильтров AIS. By reference pixels may be employed various types of filters AIS. В способе внутрикадрового предсказания режим внутрикадрового предсказания текущего PU может быть предсказан по режиму внутрикадрового предсказания PU, соседнего с текущим PU. In the method of intra prediction mode of the current intra prediction PU can be predicted by intra prediction mode PU, adjacent to the current PU. При предсказании режима предсказания для текущего PU с использованием информации о режиме, предсказанной по соседнему PU, когда текущий PU и соседний PU имеют одинаковый режим внутрикадрового предсказания, информация, указывающая на то, что текущий PU и соседний PU имеют одинаковый режим предсказания, может быть передана с использованием заранее заданной информации о флаге. When predicting the prediction mode for the current PU from the predicted adjacent PU using a mode information when the current PU and a neighboring PU have the same mode of intra-prediction information indicating that the current PU and a neighboring PU have the same prediction mode, it can be transferred using predetermined information about the flag. Если текущий PU и соседний PU имеют различные режимы предсказания, информацию о режиме предсказания для текущего блока можно закодировать посредством энтропийного кодирования. If the current PU and a neighboring PU have different prediction modes, prediction mode information for the current block can be encoded by entropy coding.

Может быть сгенерирован разностный блок, содержащий разностную информацию, представляющую собой разность между оригинальным блоком PU и предсказанным блоком PU, сгенерированного на основании PU, сгенерированного модулями 120 и 125 предсказания. It may be generated difference block comprising difference information representing a difference between the original block and the predicted block PU PU, generated on the basis of PU, generated by modules 120 and 125 prediction. Сгенерированный разностный блок можно передать в модуль 130 преобразования. A generated difference block can be transmitted in the conversion unit 130.

Модуль 130 преобразования может преобразовывать разностный блок с использованием способа преобразования, такого как дискретное косинусное преобразование (Discrete Cosine Transform, DCT) или дискретное синусное преобразование (Discrete Sine Transform, DST). Conversion module 130 may convert the difference block using a transform method such as DCT (Discrete Cosine Transform, DCT) or discrete sine transform (Discrete Sine Transform, DST). Разностный блок содержит информацию о разности между PU, сгенерированном модулями 120 и 125 предсказания, и оригинальным блоком. Difference block includes difference information between PU, generated modules 120 and 125 of the prediction and the original block. Способ преобразования, подлежащий использованию для преобразования разностного блока, может быть выбран среди DCT и DST на основании информации о режиме внутрикадрового предсказания, примененного к PU, который использовался для генерирования разностного блока. Converting method to be used for converting the difference block may be selected among DCT and DST based on information about intra-prediction mode applied to the PU, which was used to generate a difference block.

Модуль 135 квантизации (квантования) может квантовать значения, преобразованные в частотную область модулем 130 преобразования. Quantization module 135 (quantization) may be quantized values, converted to frequency domain conversion module 130. Коэффициент квантования может меняться в соответствии с конкретным блоком или значимостью изображения. quantization factor may vary according to the particular image block or significance. Значения, выгруженные из модуля 135 квантизации, могут передаваться в модуль 140 деквантизации и модуль 160 переупорядочения. The values ​​that have been uploaded from the module 135 quantization, can be transmitted to the module 140 and dequantization unit 160 reordering.

Модуль 160 переупорядочения может переупорядочивать коэффициенты в соответствии с квантованными разностными значениями. The reordering unit 160 may rearrange the coefficients in accordance with the quantized difference values.

Модуль 160 переупорядочения может менять двумерный (2D) блок коэффициентов на одномерный (1В) вектор коэффициентов путем сканирования коэффициентов. The reordering unit 160 may change a two-dimensional (2D) block of coefficients at a one-dimensional (1B) vector coefficients by coefficient scan. Например, модуль 125 переупорядочения может менять двумерный блок коэффициентов на одномерный вектор коэффициентов путем сканирования от коэффициентов постоянной составляющей (DC) до коэффициентов высокочастотной области с использованием сканирования зигзагом. For example, the reordering unit 125 may change the two-dimensional block of coefficients into one-dimensional vector of coefficients by scanning the coefficients from the DC component (DC) to the high-frequency domain coefficients using a zigzag scan. Вместо сканирования зигзагом может быть использовано вертикальное сканирование для сканирования двумерного блока коэффициентов в вертикальном направлении и горизонтальное сканирование для сканирования двумерного блока коэффициентов в горизонтальном направлении в зависимости от размера TU и режима внутрикадрового предсказания. Instead zigzag scanning may be used to scan vertical scan two-dimensional coefficients of the block in the vertical direction and horizontal scanning for scanning two-dimensional coefficients of the block in the horizontal direction depending on the size of the TU and the intra prediction mode. Иными словами, используемый способ сканирования может быть выбран на основании размера TU и режима внутрикадрового предсказания среди сканирования зигзагом, вертикального сканирования и горизонтального сканирования. In other words, the scanning method used can be selected based on the size of the TU and the intra-prediction mode among a zigzag scanning, vertical scanning and horizontal scanning.

Модуль 165 энтропийного кодирования может выполнять энтропийное кодирование на основании значений, полученных модулем 160 переупорядочения. Entropy encoding module 165 may perform entropy coding based on values ​​obtained by the reordering module 160. Для энтропийного кодирования могут быть использованы различные способы кодирования, такие как экспоненциальный код Голомба (exponential Golomb coding), контекстно-адаптивное кодирование переменной длины (context-adaptive variable length coding, CAVLC) или контекстно-адаптивное двоичное арифметическое кодирование (context-adaptive binary arithmetic coding, CABAC). For entropy encoding may be employed various encoding methods such as Exponential-Golomb coding (exponential Golomb coding), context adaptive variable length coding (context-adaptive variable length coding, CAVLC) or context adaptive binary arithmetic coding (context-adaptive binary arithmetic coding, CABAC).

Модуль 165 энтропийного кодирования может кодировать разнообразную информацию, такую как информацию о разностных коэффициентах или информацию о типе блока для CU, информацию о режиме предсказания, информацию о блоке деления, информацию о PU, информацию о блоке передачи, информацию о векторе перемещения, информацию об опорном кадре, информацию о блоке интерполяции и информацию о фильтрации из модуля 160 переупорядочения и модулей 120 и 125 предсказания. The module 165 of entropy coding may encode a variety of information, such as information on the difference coefficients or the information on the block type for CU, information on the prediction mode information, division unit information about PU, information transmission unit, information on the movement vector information on the reference frame interpolation block of information and filtering information from the reordering module 160 and modules 120 and 125 prediction.

Модуль 165 энтропийного кодирования может осуществлять энтропийное кодирование коэффициентов CU, введенных из модуля 160 переупорядочения. The module 165 may perform entropy encoding, entropy encoding CU coefficients input from the reordering unit 160.

Модуль 140 деквантизации и модуль 145 обратного преобразования деквантуют значения, которые квантованы модулем 135 квантизации и выполняют обратное преобразование значений, преобразованных модулем 130 преобразования. Dequantization unit 140 and inverse transform unit 145 dequantizes the values ​​that are quantized and the quantization unit 135 perform inverse transform values ​​conversion unit 130 the conversion. Разностные значения, сгенерированные модулем 140 деквантизации и модулем 145 обратного преобразования, могут быть добавлены в предсказанный PU. Difference values ​​generated dequantization unit 140 and inverse transform module 145, can be added to the predicted PU. Предсказанный PU может быть предсказан модулем предсказания вектора перемещения, модулем компенсации перемещения и модулем внутрикадрового предсказания модулей 120 и 125 предсказания. The predicted PU can be predicted motion vector prediction module, and the motion compensation module intra prediction module 120 and modules 125 prediction. Реконструированный блок может быть сгенерирован путем добавления разностных значений к предсказанному PU (предсказанным значениям). The reconstructed block may be generated by adding a difference value to the predicted PU (predicted values).

Модуль 150 фильтрации может содержать по меньшей мере один из числа фильтра подавления блочности, модуля смещения и адаптивного петлевого фильтра (adaptive loop filter, ALF). Filtering module 150 may comprise at least one from among the deblocking filter, offset module and an adaptive loop filter (adaptive loop filter, ALF).

Фильтр подавления блочности (deblocking filter) может удалять искажения блока, сгенерированные на границах между блоками в реконструированном изображении. Deblocking filter (deblocking filter) may suppress remove block distortion generated at the boundaries between blocks in the reconstructed image. Решение о применении фильтра подавления блочности к текущему блоку может быть принято на основании пикселов, содержащихся в нескольких строках или колонках блока. The decision to use deblocking filter to the current block may be made based on pixels contained in several rows or columns of the block. Если к блоку применяют фильтр подавления блочности, может быть применен сильный фильтр или слабый фильтр в зависимости от требуемой интенсивности фильтрации подавления блочности. If the block use deblocking filter, a strong filter or a weak filter, depending on the desired intensity of the deblocking filter can be applied. При выполнении горизонтальной фильтрации и вертикальной фильтрации при использовании фильтра подавления блочности горизонтальная фильтрация и вертикальная фильтрация могут быть выполнены параллельно. When performing horizontal filtering and vertical filtering by using a filter blocking suppression horizontal filtering and vertical filtering may be performed in parallel.

Модуль смещения может применять смещение от оригинального изображения в единицах пиксела к изображению, для которого завершена операция подавления блочности. bias module may apply an offset from the original image in pixel units to the image to which the deblocking operation is completed. Область, к которой может быть применено смещение, может быть определена после деления пикселов изображения на заранее определенное количество областей. Field of the offset can be applied, can be determined after dividing the image pixels into a predetermined number of areas. Смещение может быть применено к определенной таким образом области с учетом информации о границах каждого пиксела и способа применения смещения к определенной области. The offset can be applied to the thus defined area based on information about the boundaries of each pixel and a method of applying an offset to a certain area.

ALF может выполнять фильтрацию на основании результата сравнения прошедшего фильтрацию реконструированного изображения и оригинального изображения. ALF may perform filtering based on the comparison result of the past filtering the reconstructed image and the original image. Пикселы, содержащиеся в изображении, могут быть разделены на заранее заданные группы, может быть определен фильтр, применяемый к каждой группе, и для каждой группы может быть выполнена дифференциальная фильтрация. The pixels contained in the image can be divided into pre-defined groups, the filter may be defined to apply to each group, and the differential filtering may be performed for each group. Информация о том, следует ли применять ALF, может быть передана для каждого блока кодирования (CU), и размер и коэффициент применяемого ALF может различаться для каждого блока. Information about whether to apply the ALF, can be transmitted for each coding unit (CU), and the size and the coefficient used ALF can vary for each block. ALF может быть нескольких типов, и количество коэффициентов, содержащихся в соответствующем фильтре, может различаться. ALF can be of several types, and the number of the coefficients contained in the corresponding filter may vary. Кроме того, фильтр ALF той же формы (фиксированной формы) может быть применен к блоку независимо от свойств блока. Moreover, the filter ALF same mold (fixed mold) can be used to block regardless of block properties.

Память (запоминающее устройство) 155 может хранить реконструированный блок или изображение, выданное модулем 150 фильтрации, и сохраненный реконструированный блок или изображение могут быть поданы в модули 120 и 125 предсказания при выполнении межкадрового предсказания. RAM (Random Access Memory) 155 may store the reconstructed block or image yielded filtering module 150, and the stored reconstructed image block, or may be fed to the modules 120 and 125 when the prediction interframe prediction.

На фиг. FIG. 2 показана функциональная схема устройства декодирования видеоданных в соответствии с примерным вариантом осуществления настоящего изобретения. 2 shows a functional diagram of a video decoding apparatus according to an exemplary embodiment of the present invention.

Как показано на фиг. As shown in FIG. 2, устройство 200 декодирования видеоданных может содержать модуль 210 энтропийного декодирования, модуль 215 переупорядочения, модуль 220 деквантизации (деквантования), модуль 225 обратного преобразования, модули 230 и 235 предсказания, модуль 240 фильтрации и память 245. 2, the video decoding apparatus 200 may comprise an entropy decoding unit 210, a reordering unit 215, dequantization unit 220 (dequantization), inverse transform module 225, modules 230 and 235 of the prediction filter unit 240 and a memory 245.

При поступлении битового потока видеоданных от устройства кодирования видеоданных входной битовый поток может быть декодирован в соответствии с операцией, обратной к операции кодирования видеоданных, выполняемой в устройстве кодирования видеоданных. On admission video bitstream from a video encoder input bit stream can be decoded in accordance with an operation inverse to the operation of video coding performed in the coding apparatus of video data.

Модуль 210 энтропийного декодирования может выполнять энтропийное декодирование в соответствии с операцией, обратной к операции энтропийного кодирования модулем энтропийного кодирования устройства кодирования видеоданных. Entropy decoding unit 210 may perform entropy decoding in accordance with an operation inverse to the operation of the entropy encoding unit entropy encoding the video coding device. Например, для энтропийного кодирования могли быть использованы различные способы, такие как экспоненциальный код Голомба, CAVLC или САВАС в соответствии со способом, использованным устройством кодирования видеоданных. For example, various methods can be used for entropy coding, such as Exponential-Golomb coding, CAVLC or CABAC according to the method used video coding device.

Модуль 210 энтропийного декодирования может декодировать информацию, связанную с межкадровым предсказанием и внутрикадровым предсказанием, выполняемым устройством кодирования. Entropy decoding unit 210 may decode information associated with the inter prediction and intra prediction performed by the encoding device.

Модуль 215 переупорядочения может переупорядочивать битовый поток, прошедший энтропийное декодирование в модуле 210 энтропийного декодирования, на основании способа переупорядочения модуля кодирования. Reordering module 215 may reorder the bit stream past entropy decoding unit 210 entropy-decoding, based on the method of coding the reordering module. Модуль 215 переупорядочения может реконструировать и переупорядочивать коэффициенты в форме одномерного вектора в коэффициенты в двумерном блоке. Reordering module 215 can remodel and rearrange the coefficients in the form of a one-dimensional vector into a two-dimensional coefficients of the block. Модуль 215 переупорядочения может получать информацию о сканировании коэффициентов, выполненном устройством кодирования, и может выполнять переупорядочение с использованием способа обратного сканирования коэффициентов на основании порядка сканирования, в котором сканирование выполнено устройством кодирования. Reordering module 215 may receive information about scanning of coefficients performed by the coding apparatus, and can perform the reordering process using the reverse scan of the coefficients based on the scanning order in which the scan performed by the coding apparatus.

Модуль 220 деквантизации выполнен с возможностью выполнять деквантование на основании параметра квантования (квантизации), полученного из устройства кодирования, и переупорядоченных коэффициентов блока. De-quantization module 220 configured to perform a dequantization on the basis of the quantization parameter (quantization) obtained from the encoding device and the reordered block coefficients.

Модуль 225 обратного преобразования может выполнять обратное DCT и обратное DST результата квантования, выполненного устройством кодирования видеоданных, подвергнутого DCT и DST в модуле преобразования. Inverse transform module 225 may perform inverse DCT and DST inverse quantization result by the video coding device, subjected to DCT and DST transform module. Обратное преобразование можно выполнять на основании блока передачи, определенного устройством кодирования видеоданных. The inverse transform can be performed on the basis of the transmission unit from an image data encoding device. Модуль преобразования устройства кодирования видеоданных может выборочно выполнять DCT и DST в зависимости от множества элементов информации, таких как способ предсказания, размер текущего блока и направление предсказания и т.д., а модуль 225 обратного преобразования устройства декодирования видеоданных может выполнять обратное преобразование на основании информации о преобразовании, выполненном модулем преобразования устройства кодирования видеоданных. video data encoding apparatus converting unit may selectively perform the DCT and DST, depending on many items of information such as the prediction method, the size of the current block and the prediction direction, etc., and reverse video decoder converting unit 225 may perform an inverse transformation on the basis of the information the transformation, the device converting the video coding module.

Модули 230 и 235 предсказания могут генерировать блок предсказания (предсказанный блок) на основании информации о генерировании блока предсказания, полученной от модуля 210 энтропийного декодирования, и информации о декодированном ранее блоке или изображении, поступившей из памяти 245. Modules 230 and 235 may generate a prediction block prediction (predicted block) based on the information about the generation of the prediction block obtained from the entropy decoding unit 210, and information about the previously decoded image block or provided from the memory 245.

По аналогии с операцией устройства кодирования видеоданных, как описано выше, если PU и TU имеют одинаковый размер при выполнении внутрикадрового предсказания, внутрикадровое предсказание для PU выполняют на основании левых пикселов, верхнего левого пиксела и верхних пикселов PU. By analogy with the operation of the video data coding device as described above, if PU and TU are the same size when performing the intra prediction, intra prediction is to operate on the basis of PU left pixel, the upper left pixel and the upper pixel PU. С другой стороны, если PU и TU имеют различные размеры при выполнении внутрикадрового предсказания, внутрикадровое предсказание можно выполнить с использованием опорных пикселов на основании TU. On the other hand, if PU and TU have different sizes when the intra-prediction, intra-prediction can be performed using reference pixels based on TU. Внутрикадровое предсказание с использованием деления N×N можно использовать только для минимального CU. Intraframe prediction using fission N × N can be used only for the minimum CU.

Модули 230 и 235 предсказания могут содержать модуль определения PU, модуль межкадрового предсказания и модуль внутрикадрового предсказания. Modules 230 and 235 may comprise a prediction determination unit PU, inter prediction unit and the intra prediction module. Модуль определения PU может принимать различную информацию, такую как информацию о PU, информацию о режиме предсказания способа внутрикадрового предсказания и информацию, относящуюся к предсказанию перемещения способа межкадрового предсказания и т.д. PU determination unit may receive a variety of information, such as information on PU, mode information about the prediction method and the intra-prediction information relating to prediction of inter-frame prediction method displacement, etc. из модуля 210 энтропийного декодирования, и определять PU для текущего CU. the module 210 of entropy decoding and determine the PU of the current CU. Модуль определения PU может определять, выполнять ли межкадровое или внутрикадровое предсказание для PU. PU determination unit may determine whether to perform interframe or intraframe prediction for PU. Модуль 230 межкадрового предсказания может выполнять межкадровое предсказание для текущего PU на основании информации о по меньшей мере одном изображении из числа предыдущего изображения и последующего изображения относительно текущего изображения, включающего текущий PU. Inter prediction module 230 may perform inter prediction for the current PU based on information about at least one image from among the images of the previous and subsequent images with respect to the current picture, including the current PU. Модуль 230 межкадрового предсказания может использовать информацию, необходимую для межкадрового предсказания для текущего PU, полученную от устройства кодирования видеоданных. Inter prediction module 230 may utilize the information needed for inter prediction for the current PU, received from the video encoding apparatus.

Для выполнения межкадрового предсказания на основании CU может быть определено, является ли способ предсказания перемещения для PU, содержащегося в CU, режимом пропуска, режимом слияния или режимом AMVP. To perform the inter prediction based on the CU can be determined whether the method of motion prediction for the PU, contained in the CU, skip mode, merge mode or AMVP mode.

Модуль 235 внутрикадрового предсказания может генерировать блок предсказания на основании информации о пикселе в текущем изображении. Module 235 may generate the intra prediction block based on the information about the pixel in the current image. Если PU является блоком PU, для которого выполняется внутрикадровое предсказание, внутрикадровое предсказание можно выполнить на основании информации о режиме внутрикадрового предсказания для PU, полученной от устройства кодирования видеоданных. If a PU unit PU, for which the intra-prediction, intra-prediction can be made based on information about intra-prediction mode for the PU, received from the video encoding apparatus. Модуль 235 внутрикадрового предсказания может содержать фильтр AIS, модуль интерполяции опорного пиксела и фильтр DC. Module 235 may comprise intra prediction AIS filter module interpolation reference pixel and filter DC. Фильтр AIS выполняет фильтрацию опорных пикселов текущего блока. AIS filter performs filtering of the reference pixels of the current block. Фильтр AIS может принимать решение о применении фильтра в зависимости от режима предсказания для текущего PU. AIS filter may take a decision on the application of the filter depending on the prediction mode for the current PU. Фильтрация AIS может выполняться для опорных пикселов текущего блока с использованием режима предсказания для PL) и информации о фильтре AIS, полученной от устройства кодирования видеоданных. AIS filtering may be performed for the reference pixels of the current block using the prediction mode for PL) and information about the AIS filter received from the video encoding apparatus. Если режим предсказания для текущего блока является режимом, где фильтрация AIS не применяется, фильтр AIS можно не применять. If the prediction mode for the current block is a mode where no filtering is applied AIS, AIS filter may be omitted.

Если режим предсказания для PU является режимом предсказания с выполнением внутрикадрового предсказания на основании значений пикселов, полученных интерполяцией опорных пикселов, модуль интерполяции опорных пикселов может генерировать опорные пикселы в единицах дробных пикселей меньших, чем целый пиксел (т.е. полный пиксел), путем интерполяции опорных пикселов. If the prediction mode is the prediction mode PU with performing intra prediction based on pixel values ​​obtained by interpolation reference pixels, the reference pixel interpolating unit may generate the reference pixels in units of fractional pixels smaller than a pixel (i.e., full pixel) by interpolation reference pixels. Если режим предсказания текущего PU является режимом предсказания с генерированием блока предсказания без интерполяции опорных пикселов, опорные пикселы можно не интерполировать. If the prediction mode of the current prediction mode is the PU to generate the prediction block without interpolation reference pixels, the reference pixels can not be interpolated. Фильтр DC может генерировать блок предсказания посредством фильтрации, если режим предсказания для текущего блока является режимом DC. DC filter may generate a prediction block by filtering if the prediction mode for the current block is the DC mode.

Реконструированный блок или изображение может быть передан в модуль 240 фильтрации. The reconstructed block or image can be transferred to the filter module 240. Модуль 240 фильтрации содержит фильтр подавления блочности, модуль смещения и ALF. Filtering module 240 comprises deblocking filter, offset module and ALF.

Устройство кодирования видеоданных может предоставлять информацию о том, применен ли фильтр подавления блочности к соответствующему блоку или изображению, и информацию о применении сильного фильтра или слабого фильтра при использовании фильтра подавления блочности. video data encoding apparatus may provide information about whether the suppression filter is applied to the corresponding block deblocking or image and information on the use of a strong or a weak filter when the filter using a deblocking filter. В фильтр подавления блочности устройства кодирования видеоданных из устройства кодирования видеоданных может быть передана информация о фильтре подавления блочности, и он может выполнять фильтрацию подавления блочности в отношении соответствующего блока. The deblocking filter unit coding video data from the video encoding apparatus may be provided with information about the deblocking filter, and it can perform deblocking filtering with regard to the corresponding block.

Модуль смещения может применять смещение к реконструированному изображению на основании информации о типе смещения и значении смещения, примененных к изображению при операции кодирования. bias module may apply an offset to the reconstructed image based on the type information and the offset value of the offset applied to the image when the coding operation.

ALF может быть применен к CU на основании информации о применении ALF, информации о коэффициентах ALF и т.д., полученной от устройства кодирования. ALF may be applied to a CU on the basis of information about the application of ALF, ALF coefficient information etc. received from the encoding apparatus. Информация об ALF может быть включена и передана в отдельном наборе параметров. Information about the ALF can be included and transmitted in a separate set of parameters.

Память 245 может хранить реконструированное изображение или блок для использования в качестве опорного изображения или опорного блока и передавать реконструированное изображение в модуль вывода. Memory 245 may store the reconstructed image block or for use as a reference image or reference block and transmit the reconstructed image to the output unit.

Как описано выше, в вариантах осуществления изобретения термин «блок кодирования» используют для блока для кодирования в целях удобства описания. As described above, in embodiments of the invention, the term "coding block" is used for the block for encoding in order convenience of description. Однако термин «блок кодирования» можно также использовать для блока для декодирования. However, the term "coding block" may also be used for the block to be decoded.

Далее на фиг. Further, in FIG. 3-8 будут проиллюстрированы способы сканирования, основанные на режимах предсказания и режимах деления в соответствии с примерными вариантами осуществления настоящего изобретения, реализуемые в соответствии с функциями модулей устройства кодирования и устройства декодирования, описанных выше на фиг. 3-8 will illustrate the scanning methods are based on the prediction mode and dividing in accordance with exemplary embodiments of the present invention implemented in accordance with the functions of the modules encoding apparatus and decoding apparatus described above in FIGS. 1 и 2, которые подпадают в границы охраны настоящего изобретения. 1 and 2 that fall within the boundaries of protection of the present invention.

На фиг. FIG. 3 схематично показаны способы сканирования коэффициентов в соответствии с настоящим изобретением. 3 schematically shows the methods of scanning the coefficients in accordance with the present invention.

Как показано на фиг. As shown in FIG. 3, способы сканирования могут включать горизонтальное сканирование 310, вертикальное сканирование 320, сканирование 330 зигзагом или вертикально-диагональное сканирование 340. В данном случае один из этих способов сканирования, показанных на фиг. 3, scanning means may include 310 horizontal scan, vertical scan 320, 330 zigzag scanning or vertical-diagonal scan 340. In this case, one of these scan methods shown in Figs. 3, можно использовать на основании формы деления PU, и двумерный блок квантованных коэффициентов преобразования может быть заменен на одномерный вектор коэффициентов преобразования посредством сканирования. 3, can be used based on the shape dividing PU, and two-dimensional block of quantized transform coefficients can be replaced by a one-dimensional vector of transform coefficients by scanning.

Горизонтальное сканирование 310, сканирующее коэффициенты преобразования в горизонтальном направлении, может быть применено, например, если PU является делением, являющимся вертикально ориентированным блоком, таким как блок N×2N. Horizontal scan 310, a scanning transform coefficients in a horizontal direction may be applied, for example, when PU is division, which is vertically oriented block, such as block N × 2N. Вертикально ориентированный блок с большой вероятностью включает текстуру вертикального компонента, где коэффициенты преобразования с большой вероятностью распределяются в горизонтальном направлении. A vertically oriented block with a high probability texture includes a vertical component, wherein the transform coefficients are likely to be distributed in the horizontal direction. Таким образом, порядок сканирования, показанный в способе 310 на фиг. Thus, the scan order shown in the method 310 of FIG. 3, может быть применен к сканированию коэффициентов преобразования. 3 can be applied to scan the transform coefficients.

Вертикальное сканирование 320, сканирующее коэффициенты преобразования в вертикальном направлении, может быть применено, например, если PU является делением, являющимся горизонтально ориентированным блоком, таким как блок 2N×N. Vertical scan 320, a scanning transform coefficients in the vertical direction may be applied, for example, when PU is division, which is horizontally oriented block, such as block of 2N × N. Горизонтально ориентированный блок с большой вероятностью включает текстуру горизонтального компонента, в котором коэффициенты преобразования с большой вероятностью распределяются в вертикальном направлении. Horizontally oriented block with a high probability texture includes a horizontal component, wherein the transform coefficients are likely to be distributed in the vertical direction. Таким образом, порядок сканирования, показанный в способе 320 на фиг. Thus, the scan order shown in the method 320 of FIG. 3, может быть применен к сканированию коэффициентов преобразования. 3 can be applied to scan the transform coefficients.

Сканирование 330 зигзагом или вертикально-диагональное сканирование 340 может быть применени, если PU не обладает выраженной анизотропией (направленностью) или определенным компонентом текстуры. 330 zigzag scanning or vertical-diagonal scan 340 may be use if the PU does not have a pronounced anisotropy (oriented) or specific component of the texture. Например, сканирование 330 зигзагом или вертикально-диагональное сканирование 340 может быть применено к квадратному блоку 2N×2N или N×N. For example, the zigzag scan 330 or vertically diagonal scan 340 may be applied to a square block 2N × 2N or N × N.

На фиг. FIG. 3 в качестве примеров осуществления настоящего изобретения приведены способы сканирования, и настоящее изобретение ими не ограничивается. 3 as an example of the present invention are methods for scanning, and the present invention is not limited thereto. Альтернативные способы сканирования, выполняемые в другом порядке, также могут быть использованы наряду со способами сканирования на фиг. Alternative methods of scanning performed in different order, may also be used along with the methods of the scan in Fig. 3. 3.

Как описано выше, если PU является делением, таким как блок N×2N или блок 2N×N, эти блоки могут с большой вероятностью обладать определенным компонентом текстуры или сильной анизотропией. As described above, if the PU is dividing, such as an N × 2N block or block 2N × N, these blocks can with high probability to have a certain component or texture strong anisotropy. Соответственно, в зависимости от формы деления PU используют горизонтальное сканирование или вертикальное сканирование. Accordingly, depending on the shape dividing PU use horizontal scan or vertical scan. Однако, несмотря на то, что PU является делением, таким как блок N×2N или блок 2N×N, эти блоки могут обладать незначительной анизотропией или не содержать определенный компонент текстуры. However, despite the fact that PU is dividing, such as an N × 2N block or block 2N × N, these blocks may have a slight anisotropy or may not contain a specific texture components. В таком случае использование определенных способов сканирования, например горизонтального сканирования блока N×2N и вертикального сканирования блока 2N×N, может не быть эффективным. In this case, the use of certain scanning methods, for example horizontal scanning unit N × 2N and vertical scanning unit 2N × N, may not be effective. Таким образом, требуется способ эффективного сканирования и кодирования коэффициентов преобразования. Thus, an effective method for scanning and encoding the transform coefficients.

На фиг. FIG. 4 показан способ определения способа сканирования и кодирования информации о нем на основании режима деления PU в соответствии с примерным вариантом осуществления настоящего изобретения. 4 illustrates a method for determining the scanning method and coding information or based on PU division mode in accordance with an exemplary embodiment of the present invention.

Как показано на фиг.4, одиночный CU в режиме межкадрового предсказания может быть разделен на PU одинакового размера или разных размеров. As shown in Figure 4, a single CU in inter prediction mode can be divided into PU same size or different sizes. Например, CU может быть разделен на блок 400 2N×N, блок 410 N×2N, блок 420 2N×2N или блок 430 N×N. For example, CU can be divided into block 400 2N × N, 410 N × 2N, block 420 2N × 2N unit 430 or N × N. Режимы деления PartMode PU могут быть определены на основании размеров разделенных PU. PartMode PU division modes may be determined based on the size-separated PU.

Режимы деления PartMode PU могут включать режим PART_2N×N, в котором CU разделяют на блоки 400 2N×N, режим PART_N×2N, в котором CU разделяют на блоки 410 N×2N, режим PART_2N×2N, в котором CU разделяют на блоки 420 2N×2N и режим PART_N×N, в котором CU разделяют на блоки 430 N×N. PartMode PU division modes may include a mode PART_2N × N, wherein the CU is divided into blocks 400 2N × N, PART_N × 2N mode, wherein the CU is divided into blocks 410 N × 2N, PART_2N × 2N mode, wherein the CU is divided into blocks 420 2N × 2N and PART_N × N mode, wherein the CU is divided into blocks 430 N × N.

В настоящем варианте осуществления изобретения способ сканирования определяют на основании режима деления PU, в котором может быть учтена форма деления режима деления. In the present embodiment, the scanning method is determined based on PU dividing mode, wherein the shape dividing dividing mode may be considered. Иными словами, могут быть получены возможные способы сканирования с учетом форм деления блоков PU, среди которых способ сканирования может быть определен на основании RDO. In other words, the possible ways of scanning with the shapes of blocks dividing PU, among which the scanning method can be determined on the basis of RDO can be prepared.

Если режим деления указывает на горизонтально ориентированную форму, например, режим деления является режимом PART_2N×N, в котором CU разделен на блоки 400 2N×N, блоки с вероятностью могут содержать определенный компонент текстуры или обладать анизотропией (например, горизонтальный компонент текстуры или коэффициенты преобразования, распределенные в вертикальном направлении). If division mode indicates a horizontally oriented shape, for example, dividing mode is a mode PART_2N × N, wherein the CU is divided into blocks 400 2N × N, blocks likely to contain a certain component texture or have anisotropy (e.g., the horizontal component of the texture or transform coefficients distributed in the vertical direction). Как возможный способ сканирования может быть определено вертикальное сканирование с учетом такой формы деления. As a possible way to scanning can be defined vertical scanning according to the form of such division. Так же как возможный способ сканирования, может быть определено сканирование зигзагом (или вертикально-диагональное сканирование), учитывая, что блоки с вероятностью могут не содержать определенного компонента текстуры или обладать анизотропией. As well as a possible method of scanning may be determined zigzag scanning (or vertically scanning the diagonal), considering that the blocks with the probability may not contain a specified component texture or have anisotropy. Иными словами, для режима деления горизонтально ориентированной формы из двух возможных способов сканирования, а именно вертикального сканирования и сканирования зигзагом (или вертикально-диагонального сканирования) может быть выбран способ сканирования, имеющий минимальную RDO. In other words, the mode for dividing a horizontally oriented shape of the two possible ways of scanning, namely, the vertical scanning and a zigzag scanning (or vertically scanning diagonal) may be selected scanning method having the minimum RDO.

В то же время, если режим деления указывает на вертикально ориентированную форму, например, режим деления является режимом PART_N×2N, в котором CU разделен на блоки 410 N×2N, блоки с вероятностью могут содержать определенный компонент текстуры или обладать анизотропией (например, вертикальный компонент текстуры или коэффициенты преобразования, распределенные в горизонтальном направлении). At the same time, if the division mode indicates a vertically oriented shape, for example, dividing mode is a mode PART_N × 2N, wherein the CU is divided into blocks 410 N × 2N, blocks likely to contain a certain component texture or have anisotropy (e.g., vertical texture components or transform coefficients are distributed in the horizontal direction). Как возможный способ сканирования может быть определено горизонтальное сканирование с учетом такой формы деления. As a possible method of scanning may be determined horizontal scanning according to the form of such division. Так же как возможный способ сканирования, может быть определено сканирование зигзагом (или вертикально-диагональное сканирование), учитывая, что блоки с вероятностью могут не содержать определенного компонента текстуры или обладать анизотропией. As well as a possible method of scanning may be determined zigzag scanning (or vertically scanning the diagonal), considering that the blocks with the probability may not contain a specified component texture or have anisotropy. Иными словами, для режима деления вертикально ориентированной формы из двух возможных способов сканирования, а именно горизонтального сканирования и сканирования зигзагом (или вертикально-диагонального сканирования), может быть выбран способ сканирования, имеющий минимальную RDO. In other words, the vertically oriented dividing mode shapes of the two possible ways of scanning, namely, the horizontal scanning and the zigzag scanning (or vertically scanning diagonal) may be selected scanning method having the minimum RDO.

Между тем, для режима деления квадратной формы, например режима PART_2N×2N, в котором CU разделен на блоки 420 2N×2N, или режима PART_N×N, в котором CU разделен на блоки 430 N×N, может быть использовано сканирование зигзагом (или вертикально-диагональное сканирование). Meanwhile, for the mode of division of square shape, e.g. PART_2N × 2N mode, wherein the CU is divided into blocks 420 2N × 2N, or mode PART_N × N, wherein the CU is divided into blocks 430 N × N, the scan zigzag can be used (or vertical-diagonal scan).

В таблице 1 представлены доступные способы сканирования в соответствии с режимами деления PU в соответствии с примерным вариантом осуществления настоящего изобретения. Table 1 presents the available scanning methods in accordance with the PU division modes in accordance with an exemplary embodiment of the present invention. Здесь в режиме PART_2N×N и режиме PART_N×2N может быть выбран один способ сканирования с учетом RDO двух возможных способов сканирования. Here, in the mode PART_2N × N mode and PART_N × 2N may be selected by one scanning method considering two possible ways RDO scan.

Figure 00000001

Когда способ сканирования определен на основании режима деления PU, как описано выше, коэффициенты преобразования могут быть просканированы с использованием определенного таким образом способа сканирования. When the scanning method determined based on PU dividing mode as described above, the transform coefficients may be scanned using a particular scanning method thereby. Информация об определенном способе сканирования может быть закодирована и передана в устройство декодирования. Information about a specific method of scanning may be encoded and transmitted to the decoder. Информацию о способе сканирования можно указать с использованием флага, например флага isZigZagScanFlag, указывающего, используется ли сканирование зигзагом. Information about the scanning method can be specified using a flag, such isZigZagScanFlag flag indicating whether the zigzag scan is used.

Например, когда режим деления PU является режимом PART_2N×N, информацию об определенном таким образом способе сканирования вертикальным сканированием и сканированием зигзагом (или вертикально-диагональным сканированием) можно закодировать с использованием флага, и информацию о флаге можно передать в устройство декодирования. For example, when the division mode is a mode PU PART_2N × N, information about a particular process thereby scan and vertical scan zigzag scanning (or vertically diagonal scanning) can be coded using the flag and flag information can be transmitted to the decoder. В режиме PART_2N×N флаг isZigZagScanFlag может быть установлен равным 1, если определено выполнение сканирования зигзагом, и флаг isZigZagScanFlag может быть установлен равным 0, если определено выполнение вертикального сканирования. In mode PART_2N × N isZigZagScanFlag flag may be set to 1 if the defined performance zigzag scanning, and isZigZagScanFlag flag may be set to 0 if a specific implementation of vertical scanning. В то же время, если режим деления PU является режимом PART_N×2N, информацию об определенном таким образом способе сканирования горизонтальным сканированием и сканированием зигзагом (или вертикально-диагональным сканированием) можно закодировать с использованием флага, например флага isZigZagScanFlag, и информацию о флаге можно передать в устройство декодирования. At the same time, if the division mode PU is a mode PART_N × 2N, information about a particular way the process of scanning the horizontal scanning and scanning zigzag (or vertical-diagonal scan) can be coded using a flag, such isZigZagScanFlag flag, and the flag information can be transmitted a decoding apparatus.

На фиг.5 показан способ определения способа сканирования и кодирования информации о нем в делении асимметричного перемещения (asymmetric motion partition, AMP) в соответствии с примерным вариантом осуществления настоящего изобретения. 5 shows a method for determining the scanning method and coding information about it in the division asymmetric displacement (asymmetric motion partition, AMP) in accordance with an exemplary embodiment of the present invention.

Как описано выше, одиночный CU в режиме межкадрового предсказания может быть разделен на PU одинакового размера или разных размеров. As described above, a single CU in inter prediction mode can be divided into PU same size or different sizes. Как показано на фиг. As shown in FIG. 5, блок 64×64 может быть разделен на блок 16×64, блок 48×64, блок 64×16 или блок 64×48, т.е. 5, a block of 64 × 64 can be divided into block 16 × 64 × 48 block 64 block 64 × 16 or 64 × 48 block, i.e. блоки различной формы. blocks of various shapes. Этот режим деления называют AMP. This division is called AMP. AMP можно применять к делению CU для повышения эффективности кодирования, если изображение содержит нерегулярные структуры изображения. AMP can be used to divide CU to improve the coding efficiency if the picture contains images irregular structure.

Слева направо на фиг.5 AMP содержит режим PART_nL×2N, в котором CU разделен на блоки 500 размером nL×2N, режим PART_nR×2N, в котором CU разделен на блоки 510 размером nR×2N, режим PART_2N×nU, в котором CU разделен на блоки 520 размером 2N×nU, и режим PART_2N×nD, в котором CU разделен на блоки 530 размером 2N×nD. From left to right in Figure 5 comprises AMP mode PART_nL × 2N, wherein the CU is divided into blocks of size 500 nL × 2N, PART_nR × 2N mode, wherein the CU is divided into blocks of 510 size nR × 2N, PART_2N × nU mode in which CU It is divided into blocks of 520 size 2N × nU, and mode PART_2N × nD, wherein the CU is divided into blocks of 530 size 2N × nD. Здесь в режиме PART_nL×2N и режиме PART_nR×2N PU может иметь размер 501 и 512 1/2N×2N или размер 502 и 511 3/2N×2N. Here, in the mode PART_nL × 2N and mode PART_nR × 2N PU may have a size of 501 512 and 1 / 2N × 2N or 502 and 511 size 3 / 2N × 2N. В режиме PART_2N×nU и PART_2N×nD PU может иметь размер 521 и 532 2N×1/2N или размер 522 и 531 2N×3/2N. In mode PART_2N × nU and PART_2N × nD PU may have a size of 521 and 532 2N × 1 / 2N or size 522 and 531 2N × 3 / 2N.

Как описано на фиг. As described in FIG. 4, в соответствии с вариантом осуществления настоящего изобретения способ сканирования может быть определен на основании режима деления, иными словами, размера разделенного блока в AMP. 4, according to an embodiment of the present invention, a method of scanning may be determined based on the division mode, in other words, the size of the divided block in the AMP. Иными словами, возможные способы сканирования могут быть получены с учетом форм деления AMP, среди которых способ сканирования можно определять на основании RDO. In other words, possible methods of scanning can be obtained with the dividing AMP forms, including scanning method may be determined based RDO.

Например, для вертикально ориентированного блока (блока, чья высота больше, чем его ширина) в режиме 1/2N×2N, такого как левый блок 501 блока 500 nL×2N и правый блок 512 блока 510 блока nR×2N, как возможные способы сканирования могут быть определены горизонтальное сканирование с учетом определенного компонента текстуры или анизотропии, которыми может обладать вертикально ориентированный блок (например, вертикальный компонент текстуры, и коэффициенты преобразования, распределенные в горизонтальном направлении), или сканирование зигзагом (или вертика For example, for a vertically oriented block (block whose height is greater than its width) in mode 1 / 2N × 2N, such as the left block 501 block 500 nL × 2N and right block 512 block unit 510 nR × 2N, both possible methods for scanning It can be determined horizontal scanning according to the particular component or anisotropic texture which may have a vertically oriented block (e.g., a vertical component texture, and transform coefficients are distributed in the horizontal direction) or a zigzag scanning (or TOWER ьно-диагональное сканирование) с учетом того, что вертикально ориентированный блок не обладает определенным компонентом текстуры или анизотропией. no-diagonal scanning) given the fact that a vertically oriented block has no particular component or texture anisotropy. В данном случае из двух возможных способов сканирования можно выбирать способ сканирования, обладающий минимальной RDO. In this case, of the two possible ways of scanning may be selected scanning method having minimum RDO.

В то же время, для горизонтально ориентированного блока (блока, чья ширина больше, чем его высота) в режиме 2N×1/2N, такого как верхний блок 521 блока 520 2N×nU и нижний блок 532 блока 530 2N×nD, как возможные способы сканирования могут быть определены вертикальное сканирование с учетом определенного компонента текстуры или анизотропии, которыми может обладать горизонтально ориентированный блок (например, горизонтальная текстура или коэффициенты преобразования, распределенные в вертикальном направлении), или сканирование зигзагом (или вертикально-ди At the same time, for a horizontally oriented blocks (block, whose width is greater than its height) in 2N mode × 1 / 2N, such as the upper block 521 block 520 2N × nU and the lower block 532 block 530 2N × nD, as a possible vertical scanning means scanning with the specified component texture or anisotropy may be determined, which can have a horizontally oriented block (e.g., horizontal or texture transform coefficients, distributed in the vertical direction), or a zigzag scanning (or vertically-di агональное сканирование) с учетом того, что горизонтально ориентированный блок не обладает определенным компонентом текстуры или анизотропией. agonal scanning) considering that the horizontally oriented block has no particular component or texture anisotropy. В данном случае из двух возможных способов сканирования можно выбирать способ сканирования, обладающий минимальной RDO. In this case, of the two possible ways of scanning may be selected scanning method having minimum RDO.

Между тем, сканирование зигзагом (или вертикально-диагональное сканирование) можно использовать для больших разделенных частей nL×2N 500, nR×2N 510, 2N×nUl 520 и 2N×nD 530 (т.е. режимов 3/2N×2N и 2N×3/2N). Meanwhile, the zigzag scanning (or vertically diagonal scanning) can be used for large parts separated by 500 nL × 2N, nR × 2N 510, 2N × nUl 520 and 2N × nD 530 (i.e., mode 3 / 2N × 2N and 2N × 3 / 2N). Иными словами, сканирование зигзагом (или вертикально-диагональное сканирование) можно использовать для правого деления 502 блока 500 nL×2N, левого деления 512 блока 510 nR×2N, нижнего деления 522 блока 520 2N×nU и верхнего деления 53 блока 530 2N×nD. In other words, zigzag scanning (or vertically diagonal scanning) can be used for the right division 502, block 500 nL × 2N, the left division 512 block 510 nR × 2N, 520 2N × nU lower fission 522 block and the upper dividing 53 the block 530 2N × nD .

Когда способ сканирования определен на основании режима AMP, как описано выше, информация об определенном таким образом способе сканирования может быть закодирована. When the scanning method determined based on the AMP mode as described above, of a certain thus scanning method information may be encoded. Например, как описано выше на фиг. For example, as described above in FIG. 4, в режиме PART_nL×2N и режиме PART_nR×2N и для вертикально ориентированных блоков 501 и 512 (т.е. режима 1/2N×2N) флаг isZigZagScanFlag может быть установлен равным 1, если используется сканирование зигзагом, и флаг isZigZagScanFlag может быть установлен равным 0, если используется горизонтальное сканирование. 4, in PART_nL × 2N mode and PART_nR × 2N and vertically aligned blocks 501 and 512 (i.e., mode 1 / 2N × 2N) isZigZagScanFlag flag may be set to 1 if the zigzag scan is used and the flag can be isZigZagScanFlag It is set to 0 if the horizontal scan is used. В режимах PART_2N×nU и PART_2N×nD и для горизонтально ориентированных блоков 521 и 532 (т.е. режима 2N×1/2N) флаг isZigZagScanFlag может быть установлен равным 1, если используется сканирование зигзагом, и флаг isZigZagScanFlag может быть установлен равным 0, если используется вертикальное сканирование. In modes PART_2N × nU and PART_2N × nD and horizontally oriented blocks 521 and 532 (i.e., mode 2N × 1 / 2N) isZigZagScanFlag flag may be set to 1 if using a zigzag scanning, and isZigZagScanFlag flag may be set to 0 when vertical scanning is used. Эта информация о флаге может быть закодирована и передана в устройство декодирования. This information about the flag can be encoded and transmitted to the decoder.

На фиг. FIG. 6 показан способ определения способа сканирования и кодирования информации о нем для внутрикадрового предсказания на малых расстояниях (short distance intra prediction, SDIP) в соответствии с примерным вариантом осуществления настоящего изобретения. 6 illustrates a method for determining the scanning method and coding information about it to the intra prediction at small distances (short distance intra prediction, SDIP) in accordance with an exemplary embodiment of the present invention.

SDIP относится к способу деления CU на PU размером 2N×2N, PU размером N×N, PU размером 1/2N×2N или PU размером 2N×1/2N и выполнению внутрикадрового предсказания для разделенного PU. SDIP relates to a method for dividing CU PU size 2N × 2N, PU size N × N, PU size 1 / 2N × 2N or PU size 2N × 1 / 2N and performing intra prediction for the divided PU. При выполнении SDIP расстояние между опорным пикселом внутрикадрового предсказания и целевым опорным пикселом может быть уменьшено в сравнении с обычным внутрикадровым предсказанием с использованием квадратного PU. SDIP When the distance between the reference pixel and the target intraframe prediction reference pixel may be reduced compared with the conventional intra-prediction using square PU. Таким образом, разностное значение, являющееся значением разности между оригинальным пикселом и предсказанным целевым пикселом (предсказанным пикселом), уменьшается, что приводит к повышению эффективности кодирования. Thus, the difference value being a difference value between the original pixel and the target pixel is predicted (predicted pixel) is reduced, resulting in improved coding efficiency.

Как показано на фиг.6, один CU может быть разделен на PU с различными размерами в зависимости от свойств изображения. As shown in Figure 6, a CU may be divided into PU with different sizes depending on the image properties. Например, CU размером 32×32 можно разделять на четыре PU 610, 620, 630 и 640 размером 16×16. For example, CU size of 32 × 32 can be divided into four PU 610, 620, 630 and 640 of 16 × 16. PU 610 размером 16×16 можно дополнительно разделять на четыре PU 611, 612, 613 и 615 размером 4×16, из которых PU 611 размером 4×16 можно дополнительно разделять на четыре PU 611-1, 611-2, 611-3 и 611-4 размером 1×16. PU 610 of 16 × 16 can be further divided into four PU 611, 612, 613, and 615 a size of 4 × 16, of which the PU 611 of 4 × 16 may be further divided into four PU 611-1, 611-2, 611-3 and 611-4 size of 1 × 16.

Таким же образом PU 630 размером 16×16 можно дополнительно разделять на четыре PU 8×8. Likewise PU 630 of 16 × 16 can be further divided into four 8 × 8 PU. PU 631 размером 8×8 можно дополнительно разделять на четыре PU 631-1, 631-2, 631-3 и 631-4 размером 2×8. PU 631 of 8 × 8 can be further split into four PU 631-1, 631-2, 631-3 and 631-4 of 2 × 8. Также PU 632 размером 8×8 можно дополнительно разделять на четыре PU размером 4×4, из которых PU 632-1 размером 4×4 можно дополнительно разделять на четыре PU размером 1×4. PU 632 is also an 8 × 8 can be further split into four PU size of 4 × 4, of which the PU 632-1 size of 4 × 4 may be further divided into four PU size of 1 × 4.

Как описано выше со ссылкой на фиг. As described above with reference to FIG. 4 и 5, способ сканирования определяют на основании режима деления PU в SDIP, иными словами, размера PU в настоящем варианте осуществления изобретения. 4 and 5, the scan method determined based on PU division mode SDIP, in other words, the size of PU in this embodiment. Иными словами, возможные способы сканирования получают с учетом форм деления PU, среди которых определяют способ сканирования на основании RDO. In other words, possible methods of scanning is obtained with the division forms PU, among which define scanning method based RDO.

Например, если режимом деления PU в SDIP является режим 1/2N×2N, который имеет вертикально ориентированную форму деления, такую как PU 611, 612, 613 и 614 размером 4×16, PU 631-1, 631-2, 631-3 и 631-4 размером 2×8 и PU размером 1×4, как возможные способы сканирования могут быть определены горизонтальное сканирование и сканирование зигзагом (или вертикально-диагональное сканирование) с учетом определенного компонента текстуры или анизотропии (например, вертикальная текстура и коэффициенты преобразования, распределенные в горизонтальном направлении). For example, if PU division mode is a mode SDIP 1 / 2N × 2N, which has vertically oriented dividing shape, such as PU 611, 612, 613, and 614 a size of 4 × 16, PU 631-1, 631-2, 631-3 and 631-4 a 2 × 8 and PU size of 1 × 4 as possible ways of scanning and horizontal scan zigzag scanning can be determined (or vertical-diagonal scan) with the specific component or texture anisotropy (e.g., vertical and texture transform coefficients, distributed in the horizontal direction). В данном случае из двух возможных способов сканирования можно выбрать способ сканирования, обладающий минимальной RDO. In this case, of the two possible ways of scanning the scanning method can be chosen with a minimum RDO.

В то же время, если режимом деления PU в SDIP является режим 2N×1/2N, имеющий горизонтально ориентированную форму деления, такую как PU размером 16×4, PU размером 8×2 и PU размером 4×1, как возможные способы сканирования могут быть определены вертикальное сканирование и сканирование зигзагом (или вертикально-диагональное сканирование) с учетом определенного компонента текстуры или анизотропии (например, горизонтальная текстура и коэффициенты преобразования, распределенные в вертикальном направлении). At the same time, if the PU division mode in SDIP is mode 2N × 1 / 2N, having a horizontally oriented division form, such as PU size of 16 × 4, PU size 8 × 2 and PU size of 4 × 1 as possible ways of scanning may We are determined and vertical scan zigzag scanning (or vertically diagonal scanning) given a particular component or texture anisotropy (e.g., horizontal and texture transform coefficients, distributed in the vertical direction). В данном случае из двух возможных способов сканирования можно выбрать способ сканирования, обладающий минимальной RDO. In this case, of the two possible ways of scanning the scanning method can be chosen with a minimum RDO.

Информация об определенном таким образом способе сканирования может быть закодирована с использованием флага, например флага isZigZagScanFlag, и передана в устройство декодирования, как описано выше на фиг. Information about a specific scanning method thus can be encoded by using a flag, such flag isZigZagScanFlag, and transmitted to the decoder as described above in FIG. 4 и 5. 4 and 5.

На фиг. FIG. 7 показана обобщенная схема способа кодирования видеоданных в соответствии с настоящим изобретением. 7 shows a generalized diagram of a method of encoding video data according to the present invention. Каждый шаг на фиг. Each step in FIG. 7 может выполняться соответствующими модулями устройства кодирования видеоданных на фиг. 7 may be performed by the respective units of video encoding apparatus in FIG. 1. 1.

Как показано на фиг. As shown in FIG. 7, CU текущего изображения вводится в устройство кодирования (S700). 7, CU is introduced into the current image encoding apparatus (S700). Если введенный CU является блоком CU режима межкадрового предсказания, CU режима межкадрового предсказания («межкадровый CU») может содержать множество блоков PU режима межкадрового предсказания («межкадровый PU») и обладать одним из двух режимов предсказания (PreMode), режимом пропуска («MODE_SKIP») и межкадровым режимом («MODE_INTER»). If the entered CU is a unit CU mode of interframe prediction, CU mode interframe prediction ( "interframe CU») may comprise a plurality of blocks PU mode interframe prediction ( "interframe PU») and have one of the two prediction modes (PreMode), skip mode ( «MODE_SKIP ") and interframe mode (« MODE_INTER »).

CU в режиме MODE_SKIP более не разделяют на меньшие PU и для него размещают информацию о перемещении о PU в режиме деления PartMode в PART_2N×2N. CU in MODE_SKIP mode is no longer divided into smaller PU and for him place the information on the movement of the PU in PartMode division mode PART_2N × 2N.

CU в режиме MODE_INTER может быть разделен на PU четырех типов, в которых в устройство декодирования посредством синтаксических конструкций на уровне CU может быть передана информация о том, что режим предсказания является режимом MODE_INTER (PredMode= =MODE_INTER), и информация о том, какой из режимов деления PART_2N×2N, PART_2N×N, PART_N×2N и PART_N×N используется (т.е. информация о том, что PartMode= =PART_2N×2N, PartMode= =PART_2N×N, PartMode= =PART_N×2N или PartMode= =PART_N×N). CU in MODE_INTER mode can be divided into PU four types in which the decoder means syntax for CU level can be transmitted to the information that the prediction mode is the mode MODE_INTER (PredMode = = MODE_INTER), and information about what kind of dividing modes PART_2N × 2N, PART_2N × N, PART_N × 2N and PART_N × N is used (i.e., information that PartMode = = PART_2N × 2N, PartMode = = PART_2N × N, PartMode = = PART_N × 2N or PartMode = = PART_N × N).

Устройство кодирования выполняет предсказание перемещения для текущего межкадрового PU (S710). The encoding apparatus performs motion prediction for the current interframe PU (S710). Когда CU разделен на множество PU, вводят кодируемый в настоящий момент PU («текущий PU»). When the CU is divided into a plurality of PU, injected encoded currently PU ( «current PU»). Устройство кодирования может выполнять предсказание перемещения для текущего PU с использованием предыдущего кадра, последующего кадра или предыдущего и последующего кадров по отношению к текущему кадру. The encoding apparatus may perform motion prediction for the current PU using a previous frame, subsequent frame or the previous and subsequent frames to the current frame. Информации о перемещении для текущего PU, такие как вектор перемещения, индекс опорного изображения и индекс направления предсказания, могут быть получены посредством предсказания перемещения. Motion information for the current PU, such as displacement vector, the reference image index and index direction prediction, may be obtained by motion prediction.

Устройство кодирования может определять значение предсказания перемещения текущего PU в режиме межкадрового предсказания (S720). The encoding apparatus may determine the prediction value of the current move in PU inter prediction mode (S720). Информацию о перемещении для текущего PU не передают устройству декодирования в неизменном виде, однако разностные значения от предсказанных значений, полученных от соседних блоков во времени и пространстве, передают в устройство декодирования для повышения эффективности сжатия. Movement information for the currently transmitted unit PU does not decode unchanged, but the difference value between the predicted values ​​derived from neighboring blocks in time and space, is transmitted to the decoder to improve compression efficiency. Способ предсказания перемещения может включать режим слияния и режим AMVP, которые могут быть использованы для определения значения предсказания перемещения. The prediction method may include moving and merging AMVP mode mode, which can be used for determining the prediction value move.

В режиме слияния кандидаты на слияние получают на основании информации о перемещении блоков, соседних с текущим PU во времени и пространстве. The merge mode for merging candidates obtained on the basis of information on the movement blocks adjacent to the current PU in time and space. Если среди кандидатов имеется кандидат, имеющий ту же информацию о перемещении, что и текущий PU, устройство кодирования может передать флаг Merge_Flag, указывающий на использование режима слияния, и индекс кандидата, имеющего ту же информацию о перемещении, что и текущий PU, в устройство декодирования. If among the candidates there is a candidate that has the same information about how to move as the current PU, the encoder can transmit Merge_Flag flag indicating the use of the merger regime and the candidate code having the same movement information as the current PU, the decoder . Конкретно, устройство кодирования определяет значение доступного временного предсказателя вектора перемещения (motion vector predictor, MVP) с использованием индекса refldxLX опорного изображения, указывающего на опорное изображение, полученное при предсказании перемещения, и создает список кандидатов на слияние (MergeCandList). Specifically, the encoding device determines an available temporary predictor motion vector (motion vector predictor, MVP) using refldxLX reference image index indicating the reference image obtained by predicting motion, and generates a list of candidates for merger (MergeCandList). Если в списке имеется кандидат, имеющий ту же информацию о перемещении, что и текущий PU, устройство кодирования назначает флагу Merge_Flag значение 1 и кодирует индекс Mergejdx кандидата. If the list contains a candidate having the same information on the movement, as the current PU, the encoder assigns flag Merge_Flag 1, and encodes the index Mergejdx candidate.

В режиме AMVP устройство кодирования определяет кандидатов AMVP на основании информации о перемещении для блоков, соседних с текущим PU во времени и пространстве. In AMVP mode coding device determines AMVP candidates based on the moving information for blocks adjacent to the current PU in time and space. Иными словами, устройство кодирования определяет значение предсказателя вектора перемещения mvpLX для компонента яркостного канала. In other words, the encoding device determines a motion vector predictor value mvpLX for luma component. Конкретно, устройство кодирования определяет пространственные векторы-кандидаты перемещения (MVP) соседних PU для текущего PU. Specifically, the encoding device determines the spatial displacement vector candidate (MVP) of the current neighboring PU PU. Устройство кодирования определяет временной вектор-кандидат перемещения связанного блока с использованием индекса RefldxLX опорного изображения, полученного при предсказании перемещения. The encoding device determines temporal candidate motion vector associated with the block index RefldxLX reference image obtained by predicting motion. Устройство кодирования создает список MVP mvpListLX на основании пространственных векторов-кандидатов перемещения и временного вектора-кандидата перемещения. The encoding apparatus generates a list based MVP mvpListLX spatial candidate motion vectors and temporal motion vector candidate. Если большинство векторов перемещения имеет одинаковое значение в списке MVP, устройство кодирования удаляет векторы перемещения, отличные от вектора перемещения, имеющего наибольший приоритет, из списка MVP. If the majority of motion vectors has the same value in the MVP list coding apparatus removes motion vectors other than the motion vector having the highest priority, a list of the MVP. В данном случае векторы перемещения могут обладать приоритетом в порядке векторов (mvLXA) перемещения левых соседних блоков с текущим PU, векторов (mvLXB) перемещения верхних соседних блоков с текущим PU и вектора (mvLXCol) перемещения временного связанного блока, являющихся доступными. In this case, the motion vectors can have priority in order vectors (mvLXA) move left neighboring blocks to the current PU, vectors (mvLXB) moving the upper neighboring blocks to the current vector and PU (mvLXCol) moving the temporary bonded body that are accessible. Из списка MVP выбирают вектор перемещения наилучшего предсказателя среди векторов-кандидатов перемещения в качестве предсказанного значения mvpLX. MVP is selected from the list of best predictor motion vector among motion as a predicted value candidate mvpLX-vectors. Наилучший предсказатель является блоком-кандидатом, минимизирующим функцию стоимости соотношения между скоростью и искажениями (rate-distortion, RD), например, J MotSAD с учетом стоимости передачи бита и суммы абсолютной разницы (sum of absolute difference, SAD). The best predictor of a candidate block that minimizes the cost function relation between speed and distortion (rate-distortion, RD), for example, J MotSAD considering the bit value and the sum of absolute difference (sum of absolute difference, SAD) .

Устройство кодирования кодирует информацию о перемещении для текущего PU (S730). The encoding device encodes information about how to move the current PU (S730). Когда для предсказания перемещения текущего PU используется режим слияния, если кандидат, имеющий ту же информацию о перемещении, что и текущий PU, присутствует среди кандидатов на слияние, устройство кодирования указывает на то, что к текущему PU применяют режим слияния, и кодирует и передает флаг Merge_Flag, указывающий на использование режима слияния, и индекс Merge_Idx кандидата, имеющего ту же информацию о перемещении, что и текущий PU, в устройство декодирования. When the motion prediction of the current PU used fusion regime if the candidate having the same movement information as the current PU, is present among the candidates for merger, the encoder indicates that the current PU used merging mode, and encodes and transmits the flag Merge_Flag, indicating the use of the merge mode and the index Merge_Idx candidate having the same movement information as the current PU, in the decoding device.

Если для предсказания перемещения текущего PU используют режим AMVP, устройство кодирования определяет кандидата, минимизирующего функцию стоимости, среди кандидатов AMVP путем сравнения информации о векторе перемещения кандидатов AMVP с информацией о векторе перемещения текущего PU. If motion prediction is used AMVP PU current mode, the encoding device determines the candidate which minimizes the cost function among candidates AMVP by comparing the information about the displacement vector candidates AMVP information about the current displacement vector PU. Устройство кодирования выполняет компенсацию перемещения с использованием кандидата, минимизирующего функцию стоимости, и разностного значения между информацией о перемещении кандидата, минимизирующего функцию стоимости, и информацией о перемещении текущего PU, тем самым получая разностный сигнал. The encoding apparatus performs motion compensation using the candidate which minimizes the cost function, and a difference value between the conveyance information candidate which minimizes the cost function, and information about how to move the current PU, thereby obtaining a difference signal. Иными словами, устройство кодирования может выполнять энтропийное кодирование разности между вектором перемещения текущего PU и вектором перемещения наилучшего предсказателя. In other words, the encoding apparatus may perform entropy coding of the difference between the motion vector of the current PU and the best motion vector predictor.

Устройство кодирования получает разностный сигнал путем определения разности в пикселах между значением пиксела текущего блока и значением пиксела блока предсказания посредством компенсации перемещения (S740) и преобразует разностный сигнал (S750). The encoding device obtains the difference signal by determining the difference in pixels between the current block pixel value and the prediction pixel block by motion compensation (S740) and converts the difference signal (S750).

Разностный сигнал кодируется путем преобразования, в котором для преобразования может быть использовано ядро транскодирования. The difference signal is coded by transformation, wherein the transformation for the core can be used for transcoding. Ядро транскодирования может иметь форму 2×2, 4×4, 8×8, 16×16, 32×32 или 64×64, при этом ядро, используемое для преобразования, может быть определено заблаговременно. transcoding core may take the form of 2 × 2, 4 × 4, 8 × 8, 16 × 16, 32 × 32 or 64 × 64, while the engine used for conversion, it may be determined in advance. В данном случае коэффициенты преобразования генерируются путем преобразования и формируют двумерный блок. In this case, the transform coefficients are generated by converting and generating two-dimensional block. Например, коэффициенты С преобразования для блока n×n могут быть выведены по формуле 1. For example, the coefficients for converting n × n block can be derived from formula 1.

[формула 1] [Formula 1]

Figure 00000002

В данном случае C(n, n) - матрица n×n коэффициентов преобразования, Т(n, n) - матрица n×n ядра преобразования, а В(n, n) - матрица n×n разностного блока. In this case the C (n, n) - n × n matrix of transform coefficients T (n, n) - n × n matrix transformation nucleus, and B (n, n) - n × n matrix difference block.

Коэффициенты преобразования, вычисленные по формуле 1, квантуют. The transform coefficients, computed from the formula 1, are quantized.

На основании RDO устройство кодирования определяет, что именно передавать: разностный сигнал или коэффициенты преобразования (S760). Based RDO coding device determines that it is to transmit: the difference signal or transform coefficients (S760). Если предсказание выполнено надлежащим образом, разностный сигнал может быть передан в неизмененном виде, без транскодирования. If the prediction is properly performed, the difference signal may be transmitted unaltered without transcoding. В данном случае устройство кодирования может сравнивать функции стоимости до/после транскодирования и выбирать способ с минимальной стоимостью. In this case, the coding device can compare the cost function before / after transcoding method and selecting a minimum cost.

Устройство кодирования может передавать тип сигнала, предназначенного для передачи (например, разностный сигнал или коэффициенты преобразования), в отношении текущего блока и передавать сигнал в устройство декодирования. The encoding device may send type of signal to be transmitted (e.g., the difference signal or transform coefficients) for the current block, and transmit the signal to the decoding apparatus. Например, если передача разностного сигнала в неизменном виде без транскодирования имеет минимальную стоимость, устройство кодирования может передать разностный сигнал в отношении текущего блока. For example, if the difference signal pass unchanged without transcoding has a minimum value, the encoder may transmit the difference signal for the current block. Если передача коэффициентов преобразования имеет минимальную стоимость, устройство кодирования может передать коэффициенты преобразования в отношении текущего блока. If the transmission of transform coefficients has a minimum value, the encoder may transmit transform coefficients for the current block.

Устройство кодирования сканирует коэффициенты преобразования (S770). The encoding device scans the transform coefficients (S770). Устройство кодирования посредством сканирования преобразует квантованные коэффициенты преобразования формы двумерного блока в коэффициенты преобразования формы одномерного вектора. The encoding device by scanning converts the quantized transform coefficients in the form of two-dimensional block transform coefficients form a one-dimensional vector. В данном случае на основании размера PU, иными словами, режима деления PU может быть выбрано горизонтальное сканирование, вертикальное сканирование и сканирование зигзагом (или вертикально-диагональное сканирование) для сканирования коэффициентов преобразования. In this case, based on PU size, in other words, dividing the PU mode horizontal scanning, vertical scanning and zig-zag scanning may be selected (or vertical-diagonal scan) for scanning transform coefficients.

Конкретно, на основании форм деления PU могут быть определены возможные режимы (способы) сканирования, среди которых режим сканирования определяют на основании RDO. Specifically, based on division forms PU can be determined by the possible modes (ways) scanning including scanning mode is determined based on RDO. Если режим деления PU имеет вертикально ориентированную форму деления, в качестве возможных режимов сканирования определяют горизонтальное сканирование и сканирование зигзагом (или вертикально-диагональное сканирование). If PU division mode having a vertically oriented dividing a shape as possible scanning modes determined horizontal scanning and zigzag scanning (or vertically scanning the diagonal). Если режим деления PU имеет горизонтально ориентированную форму деления, в качестве возможных режимов сканирования определяют вертикальное сканирование и сканирование зигзагом (или вертикально-диагональное сканирование). If PU division mode has a horizontally oriented division form as possible scanning modes and determine the vertical scan zigzag scanning (or vertically scanning the diagonal). Затем из возможных режимов сканирования выбирают режим сканирования с минимальной RDO. Then possible scanning modes selected scan mode with minimal RDO.

В данном случае, как описано выше на фиг. In this case, as described above in FIG. 4 и 6, такие режимы сканирования могут быть применены к режимам деления PU при межкадровом предсказании, например режимам блока N×2N, блока 2N×N, блока 2N×2N, блока N×N, блока 2N×nU, блока 2N×nD, блока nL×2N и блока nR×2N и режимам деления PU в режиме внутрикадрового предсказания (например, SDIP), например режимам блока 1/2N×2N, блока 2N×1/2N, блока N×N и блока 2N×2N. 4 and 6, such scanning modes may be applied to the modes of division PU when interframe prediction such regimes block N × 2N, block 2N × N, block 2N × 2N, block N × N, block 2N × nU, block 2N × nD, nL × 2N block and block nR × 2N and dividing PU modes in the intra prediction mode (e.g., SDIP), e.g. regimes unit 1 / 2N × 2N, 2N × 1 unit / 2N, N × N block, and the block 2N × 2N. В этом отношении соответствующие описания опущены, поскольку уже полностью приведены ранее. In this regard, the corresponding descriptions are omitted, as already completely given earlier.

Устройство кодирования может осуществлять энтропийное кодирование передаваемой информации (S780). The encoding apparatus may perform entropy coding of the transmitted information (S780). Иными словами, устройство кодирования может осуществлять энтропийное кодирование сканированных коэффициентов преобразования и информации о режиме предсказания. In other words, the encoding apparatus may perform entropy encoding the scanned transform coefficients, and prediction mode information. Закодированная информация может формировать сжатый битовый поток и храниться или передаваться через абстрактный уровень сети (network abstraction layer, NAL). The coded information may generate a compressed bit stream and stored or transmitted via a network abstract layer (network abstraction layer, NAL).

На фиг. FIG. 8 показана обобщенная схема способа декодирования видеоданных в соответствии с настоящим изобретением. 8 shows a generalized diagram of a method of decoding video data according to the present invention. Каждый шаг на фиг. Each step in FIG. 8 может быть выполнен соответствующими модулями устройства декодирования видеоданных на фиг. 8 may be formed corresponding modules video decoding apparatus in FIG. 2. 2.

Как показано на фиг. As shown in FIG. 8, устройство декодирования может выполнять энтропийное декодирование принятого битового потока (S800). 8, the decoding apparatus may perform entropy decoding the received bitstream (S800). Устройство декодирования может идентифицировать тип блока по таблице переменной длины кодирования (variable length coding, VLC) для распознавания режима предсказания текущего блока. The decoding apparatus can identify the type of the block on the table variable length coding (variable length coding, VLC) for identifying the prediction mode of the current block. Дополнительно устройство кодирования может идентифицировать информацию о том, является ли переданная информация о текущем блоке разностным сигналом или коэффициентами преобразования. Additionally, the encoder may identify information on whether the transmitted information about the current block or a difference signal conversion coefficients. В зависимости от результата устройство декодирования может получать разностный сигнал или коэффициенты преобразования для текущего блока. Depending on the result of the decoding apparatus can receive the difference signal and transform coefficients of the current block.

Устройство декодирования может определять способ сканирования (S810). The decoding apparatus may determine the scanning method (S810). Иными словами, устройство декодирования определяет способ сканирования на основании режима деления PU с использованием информации, переданной из устройства кодирования. In other words, the decoding device determines the scanning method based on PU division mode using the information transmitted from the coding apparatus. Переданная информация может быть флагом, указывающим, используется ли сканирование зигзагом (например, флагом isZigZagScanFlag). The transmitted information may be a flag indicating whether the zigzag scanning is used (e.g., isZigZagScanFlag flag).

Конкретно, если режим деления PU имеет вертикально ориентированную форму деления или горизонтально ориентированную форму деления, устройство декодирования декодирует флаг, указывающий на использование сканирования зигзагом, и определяет способ сканирования на основании значения декодированного флага. Specifically, if the division mode PU has a vertically-oriented shape or a horizontally oriented division division shape decoding unit decodes a flag indicating whether to use a zigzag scan and determines the scanning method based on the value of the decoded flag. Если режим деления PU имеет вертикально ориентированную форму деления, устройство декодирования выбирает сканирование зигзагом или горизонтальное сканирование на основании значения декодированного флага. If PU division mode having a vertically oriented dividing form, the decoding apparatus picks zigzag scanning or horizontal scanning based on the value of the decoded flag. Если режим деления PU имеет горизонтально ориентированную форму деления, устройство декодирования выбирает сканирование зигзагом или вертикальное сканирование на основании значения декодированного флага. If PU division mode has a horizontally oriented division form, the decoding apparatus picks up the zigzag scan or vertical scan based on the value of the decoded flag. Например, если флаг isZigZagScanFlag равен 1, выбирают сканирование зигзагом, тогда как горизонтальное сканирование (для режима деления, имеющего вертикально ориентированную форму деления)/вертикальное сканирование (для режима деления, имеющего горизонтально ориентированную форму деления) может быть использовано, если флаг isZigZagScanFlag равен 0. For example, if isZigZagScanFlag flag is 1, the selected scan zigzag pattern, whereas the horizontal scanning operation (for dividing mode having a vertically oriented shape division) / vertical scanning operation (for dividing mode having a horizontally oriented division form) may be used if the flag isZigZagScanFlag is 0 .

В данном случае, как описано выше на фиг. In this case, as described above in FIG. 4 и 6, эти способы сканирования могут применяться для режимов деления PU при межкадровом предсказании, например режимов блока N×2N, блока 2N×N, блока 2N×2N, блока N×N, блока 2N×nU, блока 2N×nD, блока nL×2N и блока nR×2N, и режимов деления PU при внутрикадровом предсказании (например, SDIP), например режимов блока 1/2N×2N, блока 2N×1/2N, блока N×N и блока 2N×2N. 4 and 6, the methods of scanning can be used for PU dividing modes for inter-frame prediction, such as block mode N × 2N, block 2N × N, block 2N × 2N, block N × N, block 2N × nU, block 2N × nD, block nL × 2N block and nR × 2N, PU and dividing the intra prediction modes (e.g., SDIP), such as block modes 1 / 2N × 2N, 2N × 1 unit / 2N, N × N block, and the block 2N × 2N. В этом отношении соответствующие описания опущены, поскольку уже полностью приведены ранее. In this regard, the corresponding descriptions are omitted, as already completely given earlier.

Между тем, сканирование зигзагом может использоваться для режима деления, имеющего квадратную форму, такого как режим блока 2N×2N и блока N×N, или для правого деления режима блока nL×2N, левого деления режима блока nR×2N, нижнего деления режима блока 2N×nU или верхнего деления режима блока 2N×nD как больших частей деления в AMP. Meanwhile, the zigzag scanning can be used for dividing mode having a square shape, such as a block mode of 2N × 2N and block N × N, or to the right division nL × 2N block mode, the left division nR block mode × 2N, lower divider mode 2N × nU or top divider mode 2N × nD both large pieces of division in AMP.

Устройство декодирования может выполнять обратное сканирование прошедшего энтропийное декодирование разностного сигнала или коэффициентов преобразования (S820). The decoding apparatus may perform an inverse scan past entropy decoding the difference signal or transform coefficients (S820). Устройство декодирования может генерировать разностный блок посредством обратного сканирования в случае разностного сигнала и может генерировать двумерный блок преобразования посредством обратного сканирования в случае коэффициентов преобразования. The decoding apparatus may generate the difference block by a reverse scan in the case the difference signal and can generate two-dimensional inverse transform block by scanning in the case of transform coefficients. Когда блок преобразования сгенерирован, устройство декодирования может деквантовать и выполнить обратное преобразование блока преобразования, тем самым получая разностный блок. When the conversion unit is generated, the decoding apparatus can perform dequantize and inverse transform block, thereby obtaining difference block. Операция получения разностного блока путем обратного преобразования блока преобразования выражена в формуле 2. Operation obtaining difference block by inverse conversion converting unit expressed in Formula 2.

[формула 2] [Formula 2]

Figure 00000003

В данном случае В(n, n) - матрица n×n разностного блока, Т(n, n) - матрица n×n ядра преобразования и С(n, n) - матрица n×n коэффициентов преобразования. In this case, B (n, n) - n × n matrix of difference block, T (n, n) - n × n matrix core transform and C (n, n) - n × n matrix of transform coefficients.

Устройство декодирования может выполнять межкадровое предсказание (S830). The decoding apparatus may perform interframe prediction (S830). Устройство декодирования может декодировать информацию о режиме предсказания и выполнять межкадровое предсказание в соответствии с режимом предсказания. A decoding apparatus can decode the information on the prediction mode and perform inter prediction according to the prediction mode.

Например, если режим PredMode предсказания является режимом слияния (например, PredMode= = MODE_SKIP && Merge_Flag= =1), устройство декодирования может определять вектор mvLX перемещения компоненты яркостного канала и индекс refldxLX опорного изображения для режима слияния. For example, if the prediction mode is PredMode merge mode (e.g., PredMode = = MODE_SKIP && Merge_Flag = = 1), the decoding apparatus may determine the displacement vector components mvLX luminance channel and index refldxLX reference image to merge mode. С этой целью устройство декодирования может определять кандидатов на слияние по делениям PU (т.е. блоков предсказаний), соседних с текущим PU в пространстве. To this end, the decoding apparatus may determine the candidates for merger of divisions PU (i.e., block prediction), adjacent to the current PU in the space. Устройство декодирования может определять индекс refldxLX опорного изображения с тем, чтобы получить временного кандидата на слияние для текущего PU. The decoding apparatus may determine an index refldxLX reference image in order to receive the temporary fusion candidate for the current PU. Устройство декодирования может определять значение доступного временного предсказателя вектора перемещения (motion vector predictor, MVP) с использованием определенного таким образом индекса опорного изображения. The decoding apparatus may determine the temporary value available predictor motion vector (motion vector predictor, MVP) using the thus determined reference image index. Если количество NumMergeCand кандидатов в списке MergeCandList кандидатов на слияние, составленном из пространственных кандидатов на слияние и временного кандидата на слияние, равно 1, устройство декодирования назначает индекс (Merge_Idx) кандидата на слияние равным 1. В противном случае устройство декодирования может назначить индекс кандидата на слияние равным принятому индексу слияния. If the number of candidates in NumMergeCand MergeCandList list of candidates for merger, composed of candidates for merging spatial and temporal candidate for fusion is 1, the decoding apparatus assigns index (Merge_Idx) candidate for fusion to 1. Otherwise, the decoding apparatus can designate index candidate for merger equal to the received index merging. Устройство декодирования определяет вектор (mvLX) перемещения кандидата на слияние, указанного принятым индексом слияния и индексом (refldxLX) опорного изображения. The decoding apparatus determines the vector (mvLX) moving the candidate fusion, said fusion accepted index and index (refldxLX) reference image. Устройство декодирования может использовать определенные таким образом вектор перемещения и индекс опорного изображения для компенсации перемещения. The decoding apparatus may use the thus determined movement vector index and the reference picture for motion compensation.

Если режим PredMode предсказания является режимом AMVP, устройство декодирования может определять индекс (refldxLX) опорного изображения для текущего PU и может определять значение (mvpLX) предсказателя вектора перемещения компонента яркостного канала с использованием индекса опорного изображения. If PredMode prediction mode is a mode AMVP, the decoding apparatus may determine an index (refldxLX) reference image for the current PU and may determine a value (mvpLX) predictor motion vector of the luminance component of the channel using the reference image index. Конкретно, устройство декодирования может определять пространственные векторы-кандидаты перемещения (MVP) соседних PU для текущего PU и определять временной вектор-кандидат перемещения (MVP) связанного блока, на который указывает индекс опорного изображения. Specifically, the decoding apparatus may determine the spatial displacement vector candidate (MVP) of the current neighboring PU PU and determine temporal candidate motion vector (MVP) of the bonded body, which indicates a reference image index. Устройство декодирования может генерировать список MVP (mvpListLX) на основании определенных таким образом пространственных векторов-кандидатов перемещения и временного вектора-кандидата перемещения. The decoding apparatus may generate a list MVP (mvpListLX) based on the thus determined candidate vectors spatial and temporal movement displacement vector candidate. Если множество векторов перемещения в списке MVP имеет одинаковое значение, устройство декодирования может удалить векторы перемещения, отличающиеся от вектора перемещения с наибольшим приоритетом, из списка MVP. If a plurality of motion vectors MVP in the list has the same value, the decoder may remove movement vectors differing from the motion vector with the highest priority, a list of the MVP. В данном случае, как описано выше, векторы перемещения обладают приоритетом в порядке вектора (mvLXA) перемещения левого соседнего блока с текущим PU, вектора (mvLXB) перемещения верхнего соседнего блока с текущим PU и вектора (mvLXCol) перемещения временного связанного блока, которые являются доступными. In this case, as described above, displacement vectors have priority vector order (mvLXA) move the left neighboring block to the current PU, vector (mvLXB) movement of the upper neighboring block to the current PU and the vector (mvLXCol) moving the temporary bonded body that are accessible . Если количество NumMVPCand(LX) кандидатов MVP в списке MVP равно 1, устройство декодирования может установить индекс mvpldx кандидата MVP равным 0. Если количество кандидатов MVP равно 2 или более, устройство декодирования может установить индекс mvpldx кандидата MVP равным принятому значению индекса. If the amount NumMVPCand (LX) in the list of candidate MVP MVP equals 1, the decoding apparatus may determine the candidate MVP mvpldx index equal to 0. If the number of candidate MVP is 2 or more, the decoding apparatus may determine the candidate MVP mvpldx index equal to the received index value. Устройство декодирования может определять вектор перемещения, указанный mvpldx, среди кандидатов MVP в списке MVP (mvpListLX) как значение mvpLX предсказателя вектора перемещения. The decoding apparatus may determine the vector displacement, said mvpldx, among the candidates on the list MVP MVP (mvpListLX) mvpLX predictor as the value of the displacement vector. Устройство декодирования может определять вектор mvLX перемещения с использованием значения mvpLX предсказателя вектора перемещения и формулы 3. The decoding apparatus may determine the movement vector mvLX using values ​​mvpLX predictor motion vector and Formula 3.

[формула 3] [Formula 3]

Figure 00000004

Figure 00000005

В данном случае mvLX[0], mvdLX[0] и mvpLX[0] - компоненты x информации о векторе LX перемещения (т.е. компоненты x mvLX, mvdLX и mvpLX), a mvLX[1], mvdLX[1] и mvpLX[1] - компоненты у информации о векторе LX перемещения (т.е. компоненты у mvLX, mvdLX и mvpLX). In this case mvLX [0], mvdLX [0] and mvpLX [0] - x component information LX displacement vector (i.e., components x mvLX, mvdLX and mvpLX), a mvLX [1], mvdLX [1], and mvpLX [1] - y components LX information about displacement vector (i.e. components at mvLX, mvdLX and mvpLX).

Устройство декодирования может определить реконструированный сигнал (S840). The decoding apparatus may determine a reconstructed signal (S840). Например, устройство декодирования может добавлять разностный сигнал к сигналу предыдущего кадра (т.е. предсказанный сигнал) для генерирования реконструированного сигнала. For example, the decoding device may add the difference signal to the signal of the previous frame (i.e., the predicted signal) for generating the reconstructed signal. Устройство декодирования может добавлять сигнал предсказания предыдущего кадра, который получен компенсацией перемещения с использованием определенного вектора перемещения, к декодированному разностному сигналу для текущего PU, тем самым генерируя реконструированный сигнал. The decoding device may add the previous frame prediction signal, which is obtained by motion compensation using a particular motion vector to the decoded residual signal for the current PU, thereby generating a reconstructed signal.

Хотя способы были описаны в виде последовательности этапов или блоков на основании обобщенных схем вышеупомянутых вариантов осуществления изобретения, настоящее изобретение не ограничивается вышеупомянутой последовательностью этапов. Although methods have been described in a series of steps or blocks based on the generalized schemes above embodiments, the present invention is not limited to the aforementioned sequence of steps. Некоторые этапы могут выполняться в порядке, отличном от описанного выше, или одновременно. Some steps may be performed in an order different from that described above or simultaneously. Также специалистам в данной области должно быть понятно, что этапы, показанные на обобщенных схемах, не являются ограничивающими и в схему могут включаться дополнительные этапы, либо один или более этапов могут быть удалены из схемы без влияния на объем настоящего изобретения. Also, those skilled in the art will appreciate that the steps shown in the generalized schemes are not limiting and circuit may include additional steps, or one or more steps can be removed from the circuit without affecting the scope of the present invention.

Тогда как было показано и описано со ссылкой на сопроводительные чертежи несколько примерных вариантов осуществления изобретения, специалистам в данной области должно быть очевидно, что на основании приведенных выше описаний могут быть сделаны различные модификации и вариации без отхода от сущности настоящего изобретения. Then as has been shown and described with reference to the accompanying drawings of several exemplary embodiments, those skilled in the art it will be apparent that based on the above descriptions can be made different modifications and variations without departing from the spirit of the present invention. Примерные варианты осуществления изобретения приведены не для ограничения принципа настоящего изобретения, но для иллюстрации настоящего изобретения и не для ограничения пределов сущности настоящего изобретения. Exemplary embodiments are not to limit the principle of the present invention, but to illustrate the present invention and not to limit the scope of spirit of the present invention. Пределы сущности настоящего изобретения определены приложенной формулой изобретения, и все различия в пределах сущности предполагают включение их в приложенную формулу настоящего изобретения. Within the spirit of the invention defined by the appended claims, and all differences within the spirit suggest their inclusion in the appended claims the present invention.

Claims (16)

  1. 1. Способ декодирования видеосигнала, включающий: 1. A method of video decoding comprising:
  2. получение квантованных коэффициентов преобразования текущего блока и индекса опорного изображения из битового потока; obtaining quantized transform coefficients of the current block and the reference image index from the bitstream;
  3. получение коэффициентов преобразования путем обратного квантования квантованных коэффициентов преобразования; obtaining transformation coefficients by inverse quantizing the quantized transform coefficients;
  4. получение разностных образцов текущего блока путем выполнения обратного преобразования коэффициентов преобразования; obtaining difference samples of the current block by performing inverse transform of transform coefficients;
  5. получение пространственного вектора-кандидата перемещения по соседнему в пространстве блоку относительно текущего блока; obtaining spatial candidate motion vector for the neighboring block in the space relative to the current block;
  6. выбор связанного изображения, относящегося к временному вектору-кандидату перемещения текущего блока, на основании индекса опорного изображения; selection of related images relating to the time-candidate motion vector of the current block based on the reference image index;
  7. получение временного вектора-кандидата перемещения текущего блока по связанному блоку, при этом связанный блок включен в связанное изображение; obtaining temporal candidate vector of the current block on the associated unit, wherein the associated unit is included in the associated image;
  8. генерирование списка векторов-кандидатов перемещения, содержащего пространственный вектор-кандидат перемещения и временной вектор-кандидат перемещения; generating a list of candidate motion vectors having a spatial vector and a candidate motion vector candidate temporal displacement;
  9. определение предсказателя вектора перемещения на основании списка векторов-кандидатов перемещения и индекса кандидата текущего блока, при этом индекс кандидата указывает один из векторов-кандидатов перемещения, содержащихся в списке векторов-кандидатов перемещения; determining a motion vector predictor based on a list of candidate vectors and the displacement of the current block the candidate index, the index of the candidate indicates one of motion of candidate vectors contained in the list of candidate motion vectors;
  10. получение образцов предсказания текущего блока с использованием предсказателя вектора перемещения; obtaining a prediction of the current block of samples using the motion vector predictor; и and
  11. реконструирование текущего блока с использованием образцов предсказания и разностных образцов текущего блока. reconstructing a current block using a prediction difference samples and the samples of the current block.
  12. 2. Способ по п. 1, отличающийся тем, что связанное изображение имеет временной порядок, отличный от текущего изображения, содержащего текущий блок. 2. The method of claim. 1, characterized in that a linked image has a time order different from the current picture containing the current block.
  13. 3. Способ по п. 2, отличающийся тем, что связанный блок представляет блок, соответствующий той же позиции, что и текущий блок. 3. The method of claim. 2, characterized in that the associated block is the block corresponding to the same position as the current block.
  14. 4. Способ по п. 1, отличающийся тем, что соседний в пространстве блок включает по меньшей мере один из числа левого соседнего блока и верхнего соседнего блока. 4. The method of claim. 1, characterized in that in the space adjacent block includes at least one from among the left adjacent block and a top neighboring block.
  15. 5. Способ по п. 4, отличающийся тем, что множество векторов-кандидатов перемещения в списке векторов-кандидатов перемещения расположено в порядке приоритета. 5. The method of claim. 4, wherein the plurality of candidate motion vectors in the list of candidate motion vectors is arranged in order of priority.
  16. 6. Способ по п. 5, отличающийся тем, что множество векторов-кандидатов перемещения расположено в порядке, соответствующем пространственному вектору-кандидату перемещения и временному вектору-кандидату перемещения. 6. The method of claim. 5, characterized in that a plurality of candidate motion vectors arranged in the order corresponding to the spatial displacement vector candidates and temporal candidate vector displacement.
RU2016114731A 2012-11-08 2012-11-08 Video decoding method RU2619198C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2016114731A RU2619198C1 (en) 2012-11-08 2012-11-08 Video decoding method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2016114731A RU2619198C1 (en) 2012-11-08 2012-11-08 Video decoding method

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
RU2014119545A Division RU2585976C2 (en) 2011-11-08 2012-11-08 Method and apparatus for coefficient scan based on partition mode of prediction unit

Publications (1)

Publication Number Publication Date
RU2619198C1 true RU2619198C1 (en) 2017-05-12

Family

ID=58716055

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2016114731A RU2619198C1 (en) 2012-11-08 2012-11-08 Video decoding method

Country Status (1)

Country Link
RU (1) RU2619198C1 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2350040C1 (en) * 2002-04-23 2009-03-20 Нокиа Корпорейшн Method and device for instructions of quantiser parameters in video coding system
WO2009051419A2 (en) * 2007-10-16 2009-04-23 Lg Electronics Inc. A method and an apparatus for processing a video signal
JP2009224854A (en) * 2008-03-13 2009-10-01 Toshiba Corp Image encoding device and method
RU2406258C2 (en) * 2006-03-27 2010-12-10 Квэлкомм Инкорпорейтед Method and system for coding and decoding of information related to compression of video signal
WO2011054879A2 (en) * 2009-11-06 2011-05-12 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Hybrid video coding
WO2011128259A1 (en) * 2010-04-13 2011-10-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. A video decoder and a video encoder using motion-compensated prediction

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2350040C1 (en) * 2002-04-23 2009-03-20 Нокиа Корпорейшн Method and device for instructions of quantiser parameters in video coding system
RU2406258C2 (en) * 2006-03-27 2010-12-10 Квэлкомм Инкорпорейтед Method and system for coding and decoding of information related to compression of video signal
WO2009051419A2 (en) * 2007-10-16 2009-04-23 Lg Electronics Inc. A method and an apparatus for processing a video signal
JP2009224854A (en) * 2008-03-13 2009-10-01 Toshiba Corp Image encoding device and method
WO2011054879A2 (en) * 2009-11-06 2011-05-12 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Hybrid video coding
WO2011128259A1 (en) * 2010-04-13 2011-10-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. A video decoder and a video encoder using motion-compensated prediction

Similar Documents

Publication Publication Date Title
US20130336591A1 (en) Intra prediction method of chrominance block using luminance sample, and apparatus using same
US20130272405A1 (en) Intra prediction method and apparatus using the method
KR20110017783A (en) Method and apparatus for video encoding considering scanning order of coding units with hierarchical structure, and method and apparatus for video decoding considering scanning order of coding units with hierarchical structure
US20130089144A1 (en) Methods and apparatuses of encoding/decoding intra prediction mode using candidate intra prediction modes
US20130022115A1 (en) Apparatus and method for encoding image
US20130287104A1 (en) Method for encoding video information and method for decoding video information, and apparatus using same
US9225990B2 (en) Method and apparatus for coefficient scan based on partition mode of prediction unit
US20150245077A1 (en) Entropy decoding method, and decoding apparatus using same
US20140126643A1 (en) Method for setting motion vector list and apparatus using same
US9294775B2 (en) Adaptive transform method based on in-screen prediction and apparatus using the method
US20140079128A1 (en) Method for generating prediction block in amvp mode
WO2013036041A2 (en) Method for deriving a temporal predictive motion vector, and apparatus using the method
US20130136183A1 (en) Apparatus for decoding motion information in merge mode
KR20120086232A (en) Method for encoding/decoding video for rate-distortion optimization and apparatus for performing the same
US9148666B2 (en) Method for storing motion information and method for inducing temporal motion vector predictor using same
US20140348241A1 (en) Method for inducing prediction motion vector and apparatuses using same
KR101197176B1 (en) Methods of derivation of merge candidate block and apparatuses for using the same
US20140341284A1 (en) Method and device for sharing a candidate list
US20160165260A1 (en) Scalable video signal encoding/decoding method and apparatus
KR20120066593A (en) Decoding method of inter coded moving picture
KR20150038688A (en) Intra-prediction method, and encoder and decoder using same
US9432684B2 (en) Method and apparatus for encoding image, and method and apparatus for decoding image
US20130329807A1 (en) Method for scanning transform coefficient and device therefor
CN104067617B (en) The method of decoding a video signal
KR101496830B1 (en) Methods of derivation of temporal motion vector predictor and appratuses using the same