Claims (21)
1. Способ восстановления изображения (10) из потока данных (12), в который изображение кодировано в единицах слайсов (14), на которые разбито изображение (10), причем способ содержит декодирование слайсов (14) из потока данных (12) в соответствии с порядком (16) слайсов, и при этом способ реагирует на участок (18) синтаксического элемента в текущем слайсе из упомянутых слайсов, чтобы декодировать текущий слайс в соответствии с одним из по меньшей мере двух режимов (20, 22), причем 1. A method for restoring an image (10) from a data stream (12), into which the image is encoded in units of slices (14), into which the image (10) is divided, and the method includes decoding slices (14) from the data stream (12) in accordance with the order (16) of slices, and wherein the method responds to a syntactic element portion (18) in the current slice of said slices to decode the current slice in accordance with one of at least two modes (20, 22), wherein
в соответствии с первым (20) из упомянутых по меньшей мере двух режимов, текущий слайс декодируют из потока данных (12), используя контекстно-адаптивное энтропийное декодирование (24), включающее в себя выведение контекстов через границы слайсов, непрерывное обновление вероятностей символа контекстов и инициализацию (38, 40) вероятностей символа в зависимости от сохраненных состояний вероятностей символа ранее декодированного слайса, и декодирование с предсказанием через границы слайсов, иin accordance with the first (20) of the at least two modes, the current slice is decoded from the data stream (12) using context-adaptive entropy decoding (24), which includes inferring contexts across slice boundaries, continuously updating contexts' symbol probabilities, and initializing (38, 40) symbol probabilities depending on the stored symbol probability states of the previously decoded slice, and predictive decoding across slice boundaries, and
в соответствии со вторым (22) из упомянутых по меньшей мере двух режимов, текущий слайс декодируют из потока данных (12), используя контекстно-адаптивное энтропийное декодирование с ограничением вывода контекстов, чтобы не пересекать границы слайсов, непрерывное обновление вероятностей символа контекстов и инициализацию вероятностей символа независимо от любого ранее декодированного слайса и декодирование с предсказанием с ограничением декодирования с предсказанием, чтобы не пересекать границы слайсов,in accordance with the second (22) of the at least two modes mentioned, the current slice is decoded from the data stream (12) using context-adaptive entropy decoding with context output constraint not to cross slice boundaries, continuous updating of contexts symbol probabilities and initialization of probabilities symbol independent of any previously decoded slice and predictive decoding with predictive decoding constrained to not cross slice boundaries,
причем изображение (10) разбивается на блоки (32) кодирования, скомпонованные в строки и столбцы и имеющие порядок (36) сканирования растра, определенный между ними, и способ содержит ассоциирование каждого слайса (14) с непрерывным поднабором блоков (32) кодирования в порядке (36) сканирования растра так, что поднаборы следуют друг за другом согласно порядку (36) сканирования растра в соответствии с порядком слайсов, иwherein the image (10) is divided into encoding blocks (32) arranged in rows and columns and having a raster scan order (36) defined between them, and the method comprises associating each slice (14) with a contiguous subset of encoding blocks (32) in order (36) scanning the raster such that the subsets follow each other according to the order of (36) scanning the raster according to the slice order, and
при этом способ содержит этап, на котором сохраняют вероятности символа, полученные при контекстно-адаптивном энтропийном декодировании ранее декодированного слайса вплоть до второго блока (32) кодирования, в строке в соответствии с порядком (36) сканирования растра и, при инициализации вероятностей символа для контекстно-адаптивного энтропийного декодирования текущего слайса в соответствии с первым режимом, проверяют, является ли первый блок кодирования непрерывного поднабора блоков (32) кодирования, ассоциированного с текущим слайсом, первым блоком (32) кодирования в строке в соответствии с порядком сканирования растра, и если это так, то инициализируют (40) вероятности символа для контекстно-адаптивного энтропийного декодирования текущего слайса в зависимости от сохраненных вероятностей символа, полученных при контекстно-адаптивном энтропийном декодировании ранее декодированного слайса вплоть до второго блока кодирования, в строке в соответствии с порядком (36) сканирования растра, и если это не так, то инициализируют (38) вероятности символа для контекстно-адаптивного энтропийного декодирования текущего слайса в зависимости от вероятностей символа, полученных при контекстно-адаптивном энтропийном декодировании ранее декодированного слайса до конца ранее декодированного слайса,wherein the method comprises a stage at which the symbol probabilities obtained during the context-adaptive entropy decoding of the previously decoded slice up to the second encoding block (32) are stored in a line in accordance with the raster scanning order (36) and, when initializing the symbol probabilities for the context - adaptive entropy decoding of the current slice in accordance with the first mode, checking whether the first encoding block of the contiguous subset of encoding blocks (32) associated with the current slice is the first encoding block (32) in the line in accordance with the raster scan order, and if it is so, then initialize (40) the symbol probabilities for context-adaptive entropy decoding of the current slice depending on the stored symbol probabilities obtained during context-adaptive entropy decoding of the previously decoded slice up to the second encoding block, in a line in accordance with the scan order (36) raster, and if this is not the case, then initialize (38) the symbol probabilities for context-adaptive entropy decoding of the current slice depending on the symbol probabilities obtained from context-adaptive entropy decoding of the previously decoded slice to the end of the previously decoded slice,
причем в первом и втором режиме декодирование с предсказанием ограничено в тайлах, на которые изображение подразделено. Moreover, in the first and second modes, predictive decoding is limited to the tiles into which the image is divided.
2. Способ по п. 1, содержащий разбиение блоков преобразования цветности иначе, чем блоков преобразования яркости в ответ на информацию в потоке данных. 2. The method of claim 1, comprising partitioning the chroma conversion blocks differently than the luma conversion blocks in response to information in the data stream.
3. Способ по п. 1, причем способ содержит, в ответ на участок (18) синтаксического элемента в текущем слайсе из слайсов (14), декодирование текущего слайса в соответствии с одним из по меньшей мере трех режимов, а именно в одном из первого (20) и третьего режима (42) или второго режима (22), причем3. The method according to claim 1, wherein the method comprises, in response to a portion (18) of a syntactic element in the current slice of slices (14), decoding the current slice in accordance with one of at least three modes, namely one of the first (20) and the third mode (42) or the second mode (22), and
в соответствии с третьим режимом (42) текущий слайс декодируют из потока данных, используя контекстно-адаптивное энтропийное декодирование с ограничением вывода контекстов так, чтобы не пересекать границы слайсов, непрерывное обновление вероятностей символа упомянутых контекстов и инициализацию вероятностей символа независимо от ранее декодированного слайса, и декодирование с предсказанием через границы слайсов,in accordance with the third mode (42), the current slice is decoded from the data stream using context-adaptive entropy decoding with constraining the output of contexts so as not to cross slice boundaries, continuously updating the symbol probabilities of said contexts, and initializing the symbol probabilities independently of the previously decoded slice, and predictive decoding across slice boundaries,
причем один из первого и третьего режимов выбирают в зависимости от синтаксического элемента.wherein one of the first and third modes is selected depending on the syntactic element.
4. Способ кодирования изображения (10) в поток данных (12) в единицах слайсов (14), на которые разбито изображение (10), причем способ содержит кодирование слайсов (14) в поток данных (12) в соответствии с порядком (16) слайсов, и способ содержит этапы, на которых:4. A method for encoding an image (10) into a data stream (12) in units of slices (14) into which the image (10) is divided, the method comprising encoding slices (14) into a data stream (12) in accordance with the order (16) slices, and the method contains the steps of:
определяют участок (18) синтаксического элемента для текущего слайса из упомянутых слайсов и кодируют участок (18) синтаксического элемента в текущий слайс, так что участок синтаксического элемента сигнализирует текущий слайс должен кодироваться в соответствии с одним из по меньшей мере двух режимов (20, 22) и determine a syntactic element portion (18) for the current slice of said slices and encode the syntactic element portion (18) into the current slice such that the syntactic element portion signals the current slice to be encoded in accordance with one of at least two modes (20, 22) And
если текущий слайс должен кодироваться в соответствии с первым (20) из упомянутых по меньшей мере двух режимов, кодируют текущий слайс в поток данных (12), используя контекстно-адаптивное энтропийное кодирование (24), включающее в себя выведение контекстов через границы слайсов, непрерывное обновление вероятностей символа контекстов и инициализацию (38, 40) вероятностей символа в зависимости от сохраненных состояний вероятностей символа ранее кодированного слайса, и кодирование с предсказанием через границы слайсов, и if the current slice is to be encoded in accordance with the first (20) of the at least two modes mentioned, encode the current slice into the data stream (12) using context-adaptive entropy encoding (24), including inferring contexts across slice boundaries, continuous updating the symbol probabilities of the contexts and initializing (38, 40) the symbol probabilities depending on the stored symbol probability states of the previously encoded slice, and predictive encoding across slice boundaries, and
если текущий слайс должен кодироваться в соответствии со вторым (22) из упомянутых по меньшей мере двух режимов, кодируют текущий слайс в поток данных (12), используя контекстно-адаптивное энтропийное кодирование с ограничением вывода контекстов, чтобы не пересекать границы слайсов, непрерывное обновление вероятностей символа контекстов и инициализацию вероятностей символа независимо от любого ранее кодированного слайса, и кодирование с предсказанием с ограничением кодирования с предсказанием, чтобы не пересекать границы слайсов,if the current slice is to be encoded in accordance with the second (22) of the at least two modes mentioned, encode the current slice into the data stream (12) using context-adaptive entropy encoding with context output constraint not to cross slice boundaries, continuously updating probabilities symbol contexts and initializing symbol probabilities independent of any previously encoded slice, and predictive coding with a predictive coding constraint to not cross slice boundaries,
причем изображение (10) разбивается на блоки (32) кодирования, скомпонованные в строки и столбцы и имеющие порядок (36) сканирования растра, определенный между ними, и способ содержит ассоциирование каждого слайса (14) с непрерывным поднабором блоков (32) кодирования в порядке (36) сканирования растра, так что поднаборы следуют друг за другом согласно порядку (36) сканирования растра в соответствии с порядком слайсов, иwherein the image (10) is divided into encoding blocks (32) arranged in rows and columns and having a raster scan order (36) defined between them, and the method comprises associating each slice (14) with a contiguous subset of encoding blocks (32) in order (36) scanning the raster such that the subsets follow each other according to the order of (36) scanning the raster according to the slice order, and
при этом способ дополнительно содержит этап, на котором сохраняют вероятности символа, полученные при контекстно-адаптивном энтропийном кодировании ранее кодированного слайса вплоть до второго блока (32) кодирования в строке в соответствии с порядком (36) сканирования растра и, при инициализации вероятностей символа для контекстно-адаптивного энтропийного кодирования текущего слайса в соответствии с первым режимом проверяют, является ли первый блок кодирования непрерывного поднабора блоков (32) кодирования, ассоциированного с текущим слайсом, первым блоком (32) кодирования в строке в соответствии с порядком сканирования растра, и если это так, то инициализируют (40) вероятности символа для контекстно-адаптивного энтропийного кодирования текущего слайса в зависимости от сохраненных вероятностей символа, полученных при контекстно-адаптивном энтропийном кодировании ранее кодированного слайса вплоть до второго блока кодирования, в строке в соответствии с порядком (36) сканирования растра, и если это не так, инициализируют (38) вероятности символа для контекстно-адаптивного энтропийного кодирования текущего слайса в зависимости от вероятностей символа, полученных при контекстно-адаптивном энтропийном кодировании ранее декодированного слайса до конца ранее кодированного слайса,wherein the method further comprises a step of storing the character probabilities obtained during context-adaptive entropy encoding of the previously encoded slice up to the second encoding block (32) in the line in accordance with the raster scanning order (36) and, when initializing the character probabilities for the context - adaptive entropy encoding of the current slice in accordance with the first mode, checking whether the first encoding block of the contiguous subset of encoding blocks (32) associated with the current slice is the first encoding block (32) in the line in accordance with the raster scanning order, and if so , then initialize (40) the symbol probabilities for context-adaptive entropy encoding of the current slice depending on the stored symbol probabilities obtained during context-adaptive entropy encoding of the previously encoded slice up to the second encoding block, in a line in accordance with the raster scanning order (36) , and if this is not the case, initialize (38) the symbol probabilities for context-adaptive entropy encoding of the current slice depending on the symbol probabilities obtained by context-adaptive entropy encoding of the previously decoded slice to the end of the previously encoded slice,
причем в первом и втором режиме кодирование с предсказанием ограничено в тайлах, на которые подразделено изображение. wherein in the first and second modes, predictive coding is limited to the tiles into which the image is divided.
5. Способ по п. 4, содержащий разбиение блоков преобразования цветности иначе, чем блоков преобразования яркости.5. The method according to claim 4, comprising partitioning the chrominance conversion blocks differently than the luminance conversion blocks.
6. Поток данных, кодированный с использованием способа по п. 4.6. Data stream encoded using the method according to claim 4.
7. Поток данных по п. 6, причем блоки преобразования цветности разбиты иначе, чем блоки преобразования яркости.7. Data flow according to claim 6, wherein the chroma conversion blocks are divided differently than the luminance conversion blocks.
8. Компьютерная программа, имеющая программный код для выполнения при запуске на компьютере способа по п. 1 или 4.8. A computer program having program code for executing the method according to claim 1 or 4 when running on a computer.