УСТРОЙСТВО ВИДЕОКОДИРОВАНИЯ, СПОСОБ ВИДЕОКОДИРОВАНИЯ, ПРОГРАММА ВИДЕОКОДИРОВАНИЯ, УСТРОЙСТВО ВИДЕОДЕКОДИРОВАНИЯ, СПОСОБ ВИДЕОДЕКОДИРОВАНИЯ И ПРОГРАММА ВИДЕОДЕКОДИРОВАНИЯ
DEVICE OF VIDEO CODING, METHOD OF VIDEO CODING, PROGRAM OF VIDEO CODING, DEVICE OF VIDEO CODING, METHOD OF VIDEO CODING AND PROGRAM OF VIDEO CODING

Область техники
Настоящее изобретение относится к устройству видеокодирования, способу видеокодирования, программе видеокодирования, устройству видеодекодирования, способу видеодекодирования и программе видеодекодирования.
Предшествующий уровень техники
Для кодирования видеоданных используется, например, способ видеокодирования Н.264, который является международным стандартом, предложенным Секцией стандартов по телекоммуникациям Международного телекоммуникационного союза (ITU-T). Технология, основанная на способе видеокодирования Н.264, описана, например, в следующем непатентном документе (1).
В вышеупомянутом способе видеокодирования Н.264 избыточность видеокадров снижается, и объем информации уменьшается за счет компенсации движения и кодирования векторов движения. Согласно этому способу, область, в которой один вектор движения может компенсироваться, уменьшается, так чтобы поддерживать едва уловимое движение и увеличивать точность предсказания для межкадрового предсказания. С другой стороны, поскольку число векторов движения увеличивается, и объем информации становится огромным, это увеличение должно быть подавлено. В качестве способа увеличения точности предсказания при снижении числа векторов движения был предложен способ, раскрытый в следующем патентном документе (1).
Патентный документ 1: Японская выложенная патентная заявка № Р2-62180
Непатентный документ 1: Kakuno et al, “H.264/AVC Textbook Impress Standard Textbook Series”, Impress Net Business Company, 2004
Раскрытие изобретения
Проблема, решаемая изобретением
Однако даже в способе, раскрытом в вышеупомянутом патентном документе (1), вектора движения все еще требуются, и кодирование векторов движения является неизбежным. При этом условии требуется способ кодирования видеоданных, который далее улучшает эффективность сжатия.
Ввиду вышеизложенного целью настоящего изобретения является создание устройства видеокодирования, способа видеокодирования, программы видеокодирования, устройства видеодекодирования, способа видеодекодирования и программы видеодекодирования, которые обеспечивают более эффективное кодирование, чем случай выполнения кодирования путем межкадрового предсказания с использованием векторов движения.
Средства для решения проблемы
Устройство видеокодирования согласно настоящему изобретению представляет собой устройство видеокодирования для кодирования видеоданных в блочных единицах, содержащее средство деления для деления изображения кадра, составляющего видеоданные, во множество целевых блоков кодирования; средство кодирования для кодирования целевого блока кодирования; средство генерации репродуцированного изображения для генерации декодированного блока, который является репродуцированным сигналом целевого блока кодирования; средство хранения для хранения репродуцированных видеоданных, генерированных из репродуцированного сигнала; и средство генерации сигнала предсказания для генерации блока предсказания, который является сигналом предсказания целевого блока кодирования, с использованием шаблона, генерируемого из репродуцированного сигнала, который является смежным с целевым блоком кодирования в предварительно определенном позиционном соотношении и принадлежит к репродуцированным видеоданным, сохраненным в средстве хранения, отличающееся тем, что средство кодирования генерирует разностный блок, который является разностным сигналом целевого блока кодирования, путем вычитания блока предсказания из целевого блока кодирования в пиксельных единицах, и кодирует разностный блок, а средство генерации репродуцированного изображения генерирует декодированный разностный блок, который является репродуцированным сигналом разностного блока, кодированного средством кодирования, и генерирует блок декодирования путем суммирования декодированного разностного блока и блока предсказания в пиксельных единицах.
В устройстве видеокодирования, соответствующем настоящему изобретению, блок предсказания, который является репродуцированным сигналом целевого блока кодирования, генерируется с использованием шаблона, генерируемого из репродуцированного сигнала, который является смежным с целевым блоком кодирования в предварительно определенном позиционном соотношении и принадлежит к репродуцированным видеоданным. Кодирование выполняется с использованием этого блока предсказания. Иными словами, согласно устройству видеокодирования настоящего изобретения блок предсказания, который является сигналом предсказания, может генерироваться без использования вектора движения, и может быть реализовано эффективное кодирование.
Устройство видеокодирования, соответствующее настоящему изобретению, представляет собой устройство видеокодирования для кодирования видеоданных в блочных единицах, содержащее средство деления для деления изображения кадра, составляющего видеоданные, во множество целевых блоков кодирования; средство кодирования для кодирования целевого блока кодирования; средство генерации репродуцированного изображения для генерации блока декодирования, который является репродуцированным сигналом целевого блока кодирования; средство хранения для хранения репродуцированных видеоданных, генерированных из репродуцированного сигнала; средство поиска для поиска группы пикселей, которая является высококоррелированной с шаблоном, генерированным из репродуцированного сигнала, который является смежным с целевым блоком кодирования в предварительно определенном позиционном соотношении и принадлежит к репродуцированным видеоданным, сохраненным в средстве хранения, из репродуцированных видеоданных, сохраненных в средстве хранения; и средство определения сигнала предсказания для определения блока предсказания, который является сигналом предсказания целевого блока кодирования, из репродуцированных видеоданных, сохраненных в средстве хранения, на основе пиксельной группы, отыскиваемой средством поиска, и предварительно определенного позиционного соотношения, отличающееся тем, что средство кодирования генерирует разностный блок, который является разностным сигналом целевого блока кодирования, путем вычитания блока предсказания из целевого блока кодирования в пиксельных единицах, и кодирует разностный блок, а средство генерации репродуцированного изображения генерирует декодированный разностный блок, который является репродуцированным сигналом разностного блока, кодированного средством кодирования, и генерирует декодированный блок путем суммирования декодированного разностного блока и блока предсказания в пиксельных единицах. Соответственно этой конфигурации пиксельная группа, которая является высококоррелированной с шаблоном, отыскивается из репродуцированных видеоданных, и блок предсказания определяется на основе найденной пиксельной группы и вышеупомянутого предварительно определенного позиционного соотношения. Поэтому блок предсказания может быть определен без сбоя, так что настоящее изобретение может быть реализовано с определенностью.
Предпочтительно, что устройство кодирования движения дополнительно содержит средство оценивания для сравнения шаблона и репродуцированных видеоданных, сохраненных в средстве хранения, для оценивания пространственной непрерывности изображения целевого блока кодирования на основе результата сравнения; и средство установки для дальнейшего деления целевого блока кодирования и установки целевого блока кодировании, полученного делением, в качестве нового целевого блока кодирования, на основе пространственной непрерывности изображения, оцененной средством оценивания, и установки шаблона для нового целевого блока кодирования. Согласно этой конфигурации размер блока предсказания может быть соответственно выбран на основе пространственной непрерывности репродуцированных данных изображения. Поэтому эффективность кодирования улучшается, даже при кодировании видеоданных, в которых величина изменения движения является основной. Более того, эффективность предсказания сигнала предсказания улучшается путем изменения форм и размеров области шаблона и области предсказания в соответствии с характеристиками сигнала.
Устройство видеодекодирования согласно настоящему изобретению представляет собой устройство видеодекодирования для репродуцирования кодированных данных видеоданных в репродуцированные видеоданные в блочных единицах, содержащее средство декодирования для декодирования кодированных данных, требуемых для репродуцирования целевого блока декодирования, подлежащего декодированию; средство генерации репродуцированного изображения для генерации декодированного блока, который является репродуцированным сигналом целевого блока кодирования, из кодированных данных, декодированных средством декодирования; средство хранения для хранения репродуцированных видеоданных, генерированных из репродуцированного сигнала; и средство генерации сигнала предсказания для генерации блока предсказания, который является сигналом предсказания целевого блока декодирования, с использованием шаблона, генерируемого из репродуцированного сигнала, который является смежным с целевым блоком декодирования в предварительно определенном позиционном соотношении и принадлежит к репродуцированным видеоданным, сохраненным в средстве хранения, отличающееся тем, что средство декодирования генерирует декодированный разностный блок, который является разностным сигналом целевого блока декодирования, и средство генерации репродуцированного изображения генерирует декодированный блок путем суммирования декодированного разностного блока и блока предсказания в пиксельных единицах.
В устройстве видеодекодирования, соответствующем настоящему изобретению, блок предсказания генерируется, и видео декодируется точно так, как в вышеупомянутом устройстве видеокодирования. Иными словами, согласно устройству видеодекодирования настоящего изобретения видеоданные, эффективно кодированные вышеупомянутым устройством видеокодирования, могут быть корректно декодированы.
Устройство видеодекодирования, соответствующее настоящему изобретению, представляет собой устройство видеодекодирования для репродуцирования кодированных данных видеоданных в репродуцированные видеоданные в блочных единицах, содержащее средство декодирования для декодирования кодированных данных, требуемых для репродуцирования целевого блока декодирования, подлежащего декодированию; средство генерации репродуцированного изображения для генерации декодированного блока, который является репродуцированным сигналом целевого блока декодирования из кодированных данных, декодированных средством декодирования; средство хранения для хранения репродуцированных видеоданных, генерированных из репродуцированного сигнала; средство поиска для поиска группы пикселей, которая является высококоррелированной с шаблоном, генерированным из репродуцированного сигнала, который является смежным с целевым блоком декодирования в предварительно определенном позиционном соотношении и принадлежит к репродуцированным видеоданным, сохраненным в средстве хранения, из репродуцированных видеоданных, сохраненных в средстве хранения; и средство определения сигнала предсказания для определения блока предсказания, который является сигналом предсказания целевого блока декодирования, из репродуцированных видеоданных, сохраненных в средстве хранения, на основе группы пикселей, найденной средством поиска, и предварительно определенного позиционного соотношения, отличающееся тем, что средство декодирования генерирует декодированный разностный блок, который является разностным сигналом целевого блока декодирования, и средство генерации репродуцированного изображения генерирует блок декодирования путем суммирования декодированного разностного блока и блока предсказания в пиксельных единицах. Соответственно этой конфигурации видеоданные, кодированные вышеупомянутым устройством видеокодирования, могут быть корректно декодированы.
Предпочтительно, что устройство видеодекодирования дополнительно содержит средство оценивания для сравнения шаблона и репродуцированных видеоданных, сохраненных в средстве хранения, для оценивания пространственной непрерывности изображений целевого блока декодирования на основе результата сравнения; и средство установки для дальнейшего деления целевого блока декодирования и установки целевого блока декодирования, полученного делением, в качестве нового целевого блока декодирования, на основе пространственной непрерывности изображения, оцененной средством оценивания, и установки шаблона для нового целевого блока декодирования. Согласно этой конфигурации видеоданные, кодированные вышеупомянутым устройством видеокодирования, могут быть корректно декодированы.
Предпочтительным образом, средство кодирования генерирует сокращенный разностный блок, в котором число пикселей меньше, чем в разностном блоке, путем обработки сокращения, которая уменьшает число пикселей разностного блока посредством предварительно определенного способа, и кодирует сокращенный разностный блок, и средство генерации репродуцированного изображения генерирует декодированный сокращенный разностный блок, который является репродуцированным сигналом сокращенного разностного блока, и генерирует декодированный блок из декодированного сокращенного разностного блока путем обработки увеличения, которая увеличивает число пикселей посредством предварительно определенного способа. Согласно этой конфигурации число пикселей целевого сокращенного разностного блока кодирования может быть уменьшено, поэтому количество битов кодирования сигнала предсказания для плоской области, где эффективность предсказания для области, имеющей отличительные характеристики, является низкой, может быть эффективно снижено без снижения качества изображения.
Предпочтительным образом средство декодирования генерирует декодированный сокращенный разностный блок, в котором число пикселей меньше, чем в разностном блоке, путем декодирования кодированных данных, и средство генерации репродуцированного изображения генерирует декодированный блок из декодированного сокращенного разностного блока путем обработки увеличения, которая увеличивает число пикселей посредством предварительно определенного способа. Согласно этой конфигурации видеоданные, кодированные вышеупомянутым устройством видеокодирования, могут быть корректно декодированы.
Устройство видеокодирования согласно настоящему изобретению представляет собой устройство видеокодирования для кодирования видеоданных в блочных единицах, содержащее средство деления для деления изображения кадра, составляющего видеоданные, во множество целевых блоков кодирования в качестве целевой области кодирования; средство кодирования для кодирования целевого блока кодирования; средство генерации репродуцированного изображения для генерации декодированного блока, который является репродуцированным сигналом целевого блока кодирования; средство хранения для хранения репродуцированных видеоданных, генерированных из репродуцированного сигнала; и средство генерации сигнала предсказания для генерации блока предсказания, который является сигналом предсказания целевого блока кодирования, с использованием предварительно определенного способа, из репродуцированного сигнала, который является смежным с целевым блоком кодирования в предварительно определенном позиционном соотношении и принадлежит к репродуцированным видеоданным, сохраненным в средстве хранения, отличающееся тем, что средство кодирования генерирует сокращенный разностный блок, в котором число пикселей меньше, чем в разностном блоке, который является разностным сигналом целевого блока кодирования, полученного вычитанием блока предсказания из целевого блока кодирования в пиксельных единицах, с использованием обработки сокращения, которая уменьшает число пикселей разностного блока посредством предварительно определенного способа, и кодирует сокращенный разностный блок, и средство генерации репродуцированного изображения генерирует декодированный сокращенный разностный блок, который является репродуцированным сигналом сокращенного разностного блока, и генерирует декодированный блок из декодированного сокращенного разностного блока с использованием обработки увеличения, которая увеличивает число пикселей посредством предварительно определенного способа.
В устройстве видеокодирования согласно настоящему изобретению блок предсказания, который является сигналом предсказания целевого блока кодирования, генерируется из репродуцированного сигнала, который является соседним с целевым блоком кодирования в предварительно определенном позиционном соотношении и принадлежит к репродуцированным видеоданным. Более того, целевой сокращенный разностный блок кодирования, в котором число пикселей меньше, чем в разностном блоке, генерируется из блока предсказания. Иными словами, согласно устройству видеокодирования настоящего изобретения число пикселей целевого сокращенного разностного блока кодирования может быть уменьшено, поэтому количество битов кодирования сигнала предсказания для плоской области, где эффективность предсказания для области, имеющей отличительные характеристики, является низкой, может быть эффективно снижено без снижения качества изображения.
Устройство видеодекодирования согласно настоящему изобретению представляет собой устройство видеодекодирования для репродуцирования кодированных данных видеоданных в репродуцированные видеоданные в блочных единицах, содержащее средство декодирования для декодирования кодированных данных, требуемых для репродуцирования целевого блока декодирования, подлежащего декодированию; средство генерации репродуцированного изображения для генерации декодированного блока, который является репродуцированным сигналом целевого блока кодирования, из кодированных данных, декодированных средством декодирования; средство хранения для хранения репродуцированных видеоданных, генерированных из репродуцированного сигнала; и средство генерации сигнала предсказания для генерации блока предсказания, который является сигналом предсказания целевого блока декодирования, с использованием предварительно определенного способа, из репродуцированного сигнала, принадлежащего к репродуцированным видеоданным, который является смежным с целевым блоком декодирования в предварительно определенном позиционном соотношении и сохранен в средстве хранения, отличающееся тем, что
средство декодирования генерирует декодированный сокращенный разностный блок, в котором число пикселей меньше, чем в разностном блоке, который является разностным сигналом целевого блока декодирования, путем декодирования кодированных данных, и
средство генерации репродуцированного изображения генерирует декодированный блок из декодированного сокращенного разностного блока с использованием обработки увеличения, которая увеличивает число пикселей посредством предварительно определенного способа. Согласно этой конфигурации видеоданные, кодированные вышеупомянутым устройством видеокодирования, могут быть корректно декодированы.
Предпочтительным образом средство кодирования применяет обработку сокращения к целевому блоку кодирования и блоку предсказания соответственно для генерации сокращенного блока и сокращенного блока предсказания и генерирует сокращенный разностный блок путем вычитания сокращенного блока предсказания из сокращенного блока, и средство генерации репродуцированного изображения генерирует декодированный сокращенный разностный блок, который является репродуцированным сигналом сокращенного разностного блока, кодированного средством кодирования, генерирует декодированный сокращенный блок путем суммирования декодированного сокращенного разностного блока и сокращенного блока предсказания в пиксельных единицах и применяет обработку увеличения к декодированному сокращенному блоку для генерации декодированного блока. Согласно этой конфигурации сокращенный разностный блок в качестве целевого блока кодирования может быть генерирован без сбоя, так что настоящее изобретение может быть реализовано с определенностью.
Предпочтительным образом средство кодирования генерирует сокращенный разностный блок путем применения обработки сокращения к разностному блоку, и средство генерации репродуцированного изображения генерирует декодированный блок путем генерации декодированного сокращенного блока, который является репродуцированным сигналом сокращенного разностного блока, кодированного средством кодирования, генерирования декодированного разностного блока путем применения обработки увеличения к декодированному сокращенному блоку и суммирования декодированного разностного блока и блока предсказания в пиксельных единицах. Согласно этой конфигурации сокращенный разностный блок в качестве целевого блока кодирования может быть генерирован без сбоя, так что настоящее изобретение может быть реализовано с определенностью.
Предпочтительным образом средство генерации репродуцированного изображения генерирует декодированный блок путем генерации сокращенного блока предсказания путем применения обработки сокращения к блоку предсказания, генерирования декодированного сокращенного блока путем суммирования декодированного сокращенного разностного блока и сокращенного блока предсказания в пиксельных единицах и применения обработки увеличения к декодированному сокращенному блоку. Согласно этой конфигурации видеоданные, кодированные вышеупомянутым устройством видеокодирования, могут быть корректно кодированы.
Предпочтительным образом средство генерации репродуцированного изображения генерирует декодированный блок путем генерации декодированного разностного блока путем применения обработки увеличения к декодированному сокращенному разностному блоку и суммирования декодированного разностного блока и блока предсказания в пиксельных единицах. Согласно этой конфигурации видеоданные, кодированные вышеупомянутым устройством видеокодирования, могут быть корректно декодированы.
Предпочтительным образом средство определения сигнала предсказания выбирает один шаблон из множества шаблонов, имеющих различные формы. Согласно этой конфигурации блок предсказания может быть эффективно генерирован, и эффективность обработки кодирования может быть улучшена.
Предпочтительным образом средство определения сигнала предсказания выбирает один шаблон путем ссылки на репродуцированный сигнал репродуцированных видеоданных, сохраненных в средстве хранения, или информацию о репродуцированном сигнале. Согласно этой конфигурации шаблон может быть выбран надлежащим образом.
Предпочтительным образом средство кодирования кодирует информацию для определения шаблона, выбранного средством определения сигнала предсказания. Согласно этой конфигурации выбор шаблона в устройстве видеодекодирования становится проще, и может быть выполнено более эффективное декодирование.
Предпочтительным образом средство определения сигнала предсказания выбирает один шаблон из множества шаблонов, имеющих различные формы. Согласно этой конфигурации видеоданные, кодированные вышеупомянутым устройством видеокодирования, могут быть корректно декодированы.
Предпочтительным образом средство определения сигнала предсказания выбирает один шаблон путем ссылки на репродуцированный сигнал репродуцированных видеоданных, сохраненных в средстве хранения или информацию о репродуцированном сигнале. Согласно этой конфигурации видеоданные, кодированные вышеупомянутым устройством видеокодирования, могут быть корректно декодированы.
Предпочтительным образом средство декодирования декодирует информацию для специфицирования выбранного шаблона, и средство определения сигнала предсказания выбирает один шаблон из множества шаблонов, имеющих различные формы, путем ссылки на информацию для специфицирования выбранного шаблона, декодированную средством декодирования. Согласно этой конфигурации видеоданные, кодированные вышеупомянутым устройством видеокодирования, могут быть корректно декодированы.
Помимо описания настоящего изобретения как изобретения, относящегося к устройству видеокодирования и устройству видеодекодирования, настоящее изобретение может быть описано как изобретение, относящееся к способу видеокодирования, программе видеокодирования, способу видеодекодирования и программе видеодекодирования. Эти изобретения, по существу, характеризуют то же изобретение, но отличающихся категорий, и реализуют те же самые функции и имеют тот же самый эффект.
Способ видеокодирования согласно настоящему изобретению представляет собой способ видеокодирования для устройства кодирования видеоданных для кодирования видеоданных в блочных единицах, содержащий этап деления для деления изображения кадра, составляющего видеоданные, во множество целевых блоков кодирования; этап кодирования для кодирования целевого блока кодирования; этап генерации репродуцированного изображения для генерации декодированного блока, который является репродуцированным сигналом целевого блока кодирования; этап хранения для хранения репродуцированных видеоданных, генерированных из репродуцированного сигнала; и этап генерации сигнала предсказания для генерации блока предсказания, который является сигналом предсказания целевого блока кодирования, с использованием шаблона, генерируемого из репродуцированного сигнала, который является смежным с целевым блоком кодирования в предварительно определенном позиционном соотношении и принадлежит к репродуцированным видеоданным, сохраненным на этапе хранения, отличающийся тем, что на этапе кодирования генерируется разностный блок, который является разностным сигналом целевого блока кодирования, путем вычитания блока предсказания из целевого блока кодирования в пиксельных единицах, и разностный блок кодируется, а на этапе генерации репродуцированного изображения генерируется декодированный разностный блок, который является репродуцированным сигналом разностного блока, кодированного на этапе кодирования, и генерируется декодированный блок путем суммирования декодированного разностного блока и блока предсказания в пиксельных единицах.
Способ видеокодирования, соответствующий настоящему изобретению, представляет собой способ видеокодирования для устройства видеокодирования для кодирования видеоданных в блочных единицах, содержащий этап деления для деления изображения кадра, составляющего видеоданные, во множество целевых блоков кодирования; этап кодирования для кодирования целевого блока кодирования; этап генерации репродуцированного изображения для генерации блока декодирования, который является репродуцированным сигналом целевого блока кодирования; этап хранения для хранения репродуцированных видеоданных, генерированных из репродуцированного сигнала; этап поиска для поиска группы пикселей, которая является высоко коррелированной с шаблоном, генерированным из репродуцированного сигнала, который является смежным с целевым блоком кодирования в предварительно определенном позиционном соотношении и принадлежит к репродуцированным видеоданным, сохраненным на этапе хранения, из репродуцированных видеоданных, сохраненных на этапе хранения; и этап определения сигнала предсказания для определения блока предсказания, который является сигналом предсказания целевого блока кодирования, из репродуцированных видеоданных, сохраненных на этапе хранения, на основе группы пикселей, найденной на этапе поиска, и предварительно определенного позиционного соотношения, отличающийся тем, что на этапе кодирования генерируется разностный блок, который является разностным сигналом целевого блока кодирования, путем вычитания блока предсказания из целевого блока кодирования в пиксельных единицах, и разностный блок кодируется, а на этапе генерации репродуцированного изображения генерируется декодированный разностный блок, который является репродуцированным сигналом разностного блока, кодированного средством кодирования, и генерируется декодированный блок путем суммирования декодированного разностного блока и блока предсказания в пиксельных единицах.
Способ видеодекодирования согласно настоящему изобретению представляет собой способ видеодекодирования для устройства видеодекодирования для репродуцирования кодированных данных видеоданных в репродуцированные видеоданные в блочных единицах, содержащий этап декодирования для декодирования кодированных данных, требуемых для репродуцирования целевого блока декодирования, подлежащего декодированию; этап генерации репродуцированного изображения для генерации декодированного блока, который является репродуцированным сигналом целевого блока кодирования, из кодированных данных, декодированных на этапе декодирования; этап хранения для хранения репродуцированных видеоданных, генерированных из репродуцированного сигнала; и
этап генерации сигнала предсказания для генерации блока предсказания, который является сигналом предсказания целевого блока декодирования, с использованием шаблона, генерируемого из репродуцированного сигнала, который является смежным с целевым блоком декодирования в предварительно определенном позиционном соотношении и принадлежит к репродуцированным видеоданным, сохраненным на этапе хранения, отличающийся тем, что на этапе декодирования генерируется декодированный разностный блок, который является разностным сигналом целевого блока декодирования, и на этапе генерации репродуцированного изображения генерируется декодированный блок путем суммирования декодированного разностного блока и блока предсказания в пиксельных единицах.
Способ видеодекодирования, соответствующий настоящему изобретению, представляет собой способ видеодекодирования для устройства видеодекодирования для репродуцирования кодированных данных видеоданных в репродуцированные видеоданные в блочных единицах, содержащий этап декодирования для декодирования кодированных данных, требуемых для репродуцирования целевого блока декодирования, подлежащего декодированию; этап генерации репродуцированного изображения для генерации декодированного блока, который является репродуцированным сигналом целевого блока декодирования из кодированных данных, декодированных на этапе декодирования; этап хранения для хранения репродуцированных видеоданных, генерированных из репродуцированного сигнала; этап поиска для поиска группы пикселей, которая является высококоррелированной с шаблоном, генерированным из репродуцированного сигнала, который является смежным с целевым блоком декодирования в предварительно определенном позиционном соотношении и принадлежит к репродуцированным видеоданным, сохраненным на этапе хранения, из репродуцированных видеоданных, сохраненных на этапе хранения; и этап определения сигнала предсказания для определения блока предсказания, который является сигналом предсказания целевого блока декодирования, из репродуцированных видеоданных, сохраненных на этапе хранения, на основе группы пикселей, отыскиваемой на этапе поиска, и предварительно определенного позиционного соотношения, отличающийся тем, что на этапе декодирования генерируется декодированный разностный блок, который является разностным сигналом целевого блока декодирования, и на этапе генерации репродуцированного изображения генерируется блок декодирования путем суммирования декодированного разностного блока и блока предсказания в пиксельных единицах.
Способ видеокодирования согласно настоящему изобретению представляет собой способ видеокодирования для устройства видеокодирования для кодирования видеоданных в блочных единицах, содержащий этап деления для деления изображения кадра, составляющего видеоданные, во множество целевых блоков кодирования в качестве целевой области кодирования; этап кодирования для кодирования целевого блока кодирования; этап генерации репродуцированного изображения для генерации декодированного блока, который является репродуцированным сигналом целевого блока кодирования; этап хранения для хранения репродуцированных видеоданных, генерированных из репродуцированного сигнала; и этап генерации сигнала предсказания для генерации блока предсказания, который является сигналом предсказания целевого блока кодирования, с использованием предварительно определенного способа, из репродуцированного сигнала, который является смежным с целевым блоком кодирования в предварительно определенном позиционном соотношении и принадлежит к репродуцированным видеоданным, сохраненным на этапе хранения, отличающийся тем, что на этапе кодирования генерируется сокращенный разностный блок, в котором число пикселей меньше, чем в разностном блоке, который является разностным сигналом целевого блока кодирования, полученного вычитанием блока предсказания из целевого блока кодирования в пиксельных единицах, с использованием обработки сокращения, которая уменьшает число пикселей разностного блока посредством предварительно определенного способа, и сокращенный разностный блок кодируется, и на этапе генерации репродуцированного изображения генерируется декодированный сокращенный разностный блок, который является репродуцированным сигналом сокращенного разностного блока, и генерируется декодированный блок из декодированного сокращенного разностного блока с использованием обработки увеличения, которая увеличивает число пикселей посредством предварительно определенного способа.
Способ видеодекодирования согласно настоящему изобретению представляет собой способ видеодекодирования для устройства видеодекодирования для репродуцирования кодированных данных видеоданных в репродуцированные видеоданные в блочных единицах, содержащий этап декодирования для декодирования кодированных данных, требуемых для репродуцирования целевого блока декодирования, подлежащего декодированию; этап генерации репродуцированного изображения для генерации декодированного блока, который является репродуцированным сигналом целевого блока кодирования, из кодированных данных, декодированных на этапе декодирования; этап хранения для хранения репродуцированных видеоданных, генерированных из репродуцированного сигнала; и
этап генерации сигнала предсказания для генерации блока предсказания, который является сигналом предсказания целевого блока декодирования, с использованием предварительно определенного способа, из репродуцированного сигнала, принадлежащего к репродуцированным видеоданным, который является смежным с целевым блоком декодирования в предварительно определенном позиционном соотношении и сохранен в средстве хранения, отличающийся тем, что на этапе декодирования генерируется декодированный сокращенный разностный блок, в котором число пикселей меньше, чем в разностном блоке, который является разностным сигналом целевого блока декодирования, путем декодирования кодированных данных, и на этапе генерации репродуцированного изображения генерируется декодированный блок из декодированного сокращенного разностного блока с использованием обработки увеличения, которая увеличивает число пикселей посредством предварительно определенного способа.
Программа видеокодирования согласно настоящему изобретению представляет собой программу видеокодирования для управления устройством видеокодирования для кодирования видеоданных в блочных единицах, при этом программа заставляет устройство видеокодирования функционировать как средство деления для деления изображения кадра, составляющего видеоданные, во множество целевых блоков кодирования; средство кодирования для кодирования целевого блока кодирования; средство генерации репродуцированного изображения для генерации декодированного блока, который является репродуцированным сигналом целевого блока кодирования; средство хранения для хранения репродуцированных видеоданных, генерированных из репродуцированного сигнала; и средство генерации сигнала предсказания для генерации блока предсказания, который является сигналом предсказания целевого блока кодирования, с использованием шаблона, генерируемого из репродуцированного сигнала, который является смежным с целевым блоком кодирования в предварительно определенном позиционном соотношении и принадлежит к репродуцированным видеоданным, сохраненным в средстве хранения, отличающуюся тем, что средство кодирования генерирует разностный блок, который является разностным сигналом целевого блока кодирования, путем вычитания блока предсказания из целевого блока кодирования в пиксельных единицах, и кодирует разностный блок, а средство генерации репродуцированного изображения генерирует декодированный разностный блок, который является репродуцированным сигналом разностного блока, кодированного средством кодирования, и генерирует декодированный блок путем суммирования декодированного разностного блока и блока предсказания в пиксельных единицах.
Программа видеокодирования согласно настоящему изобретению представляет собой программу видеокодирования для управления устройством видеокодирования для кодирования видеоданных в блочных единицах, при этом программа заставляет устройство видеокодирования функционировать как средство деления для деления изображения кадра, составляющего видеоданные, во множество целевых блоков кодирования; средство кодирования для кодирования целевого блока кодирования; средство генерации репродуцированного изображения для генерации декодированного блока, который является репродуцированным сигналом целевого блока кодирования; средство хранения для хранения репродуцированных видеоданных, генерированных из репродуцированного сигнала; средство поиска для поиска группы пикселей, которая является высококоррелированной с шаблоном, генерированным из репродуцированного сигнала, который является смежным с целевым блоком кодирования в предварительно определенном позиционном соотношении и принадлежит к репродуцированным видеоданным, сохраненным в средстве хранения, из репродуцированных видеоданных, сохраненных в средстве хранения; и средство определения сигнала предсказания для определения блока предсказания, который является сигналом предсказания целевого блока кодирования, из репродуцированных видеоданных, сохраненных в средстве хранения, на основе группы пикселей, отыскиваемой средством поиска, и предварительно определенного позиционного соотношения, отличающуюся тем, что средство кодирования генерирует разностный блок, который является разностным сигналом целевого блока кодирования, путем вычитания блока предсказания из целевого блока кодирования в пиксельных единицах, и кодирует разностный блок, а средство генерации репродуцированного изображения генерирует декодированный разностный блок, который является репродуцированным сигналом разностного блока, кодированного средством кодирования, и генерирует декодированный блок путем суммирования декодированного разностного блока и блока предсказания в пиксельных единицах.
Программа видеодекодирования согласно настоящему изобретению представляет собой программу видеодекодирования для управления устройством видеодекодирования для репродуцирования кодированных данных видеоданных в репродуцированные видеоданные в блочных единицах, причем программа заставляет устройство видеодекодирования функционировать как средство декодирования для декодирования кодированных данных, требуемых для репродуцирования целевого блока декодирования, подлежащего декодированию; средство генерации репродуцированного изображения для генерации декодированного блока, который является репродуцированным сигналом целевого блока декодирования, из кодированных данных, декодированных средством декодирования; средство хранения для хранения репродуцированных видеоданных, генерированных из репродуцированного сигнала; и средство генерации сигнала предсказания для генерации блока предсказания, который является сигналом предсказания целевого блока декодирования, с использованием шаблона, генерируемого из репродуцированного сигнала, который является смежным с целевым блоком декодирования в предварительно определенном позиционном соотношении и принадлежит к репродуцированным видеоданным, сохраненным в средстве хранения, отличающуюся тем, что средство декодирования генерирует декодированный разностный блок, который является разностным сигналом целевого блока декодирования, и средство генерации репродуцированного изображения генерирует декодированный блок путем суммирования декодированного разностного блока и блока предсказания в пиксельных единицах.
Программа видеодекодирования согласно настоящему изобретению представляет собой программу видеодекодирования для управления устройством видеодекодирования для репродуцирования кодированных данных видеоданных в репродуцированные видеоданные в блочных единицах, причем программа заставляет устройство декодирования функционировать как средство декодирования для декодирования кодированных данных, требуемых для репродуцирования целевого блока декодирования, подлежащего декодированию; средство генерации репродуцированного изображения для генерации декодированного блока, который является репродуцированным сигналом целевого блока декодирования из кодированных данных, декодированных средством декодирования; средство хранения для хранения репродуцированных видеоданных, генерированных из репродуцированного сигнала; средство поиска для поиска группы пикселей, которая является высококоррелированной с шаблоном, генерированным из репродуцированного сигнала, который является смежным с целевым блоком декодирования в предварительно определенном позиционном соотношении и принадлежит к репродуцированным видеоданным, сохраненным в средстве хранения, из репродуцированных видеоданных, сохраненных в средстве хранения; и средство определения сигнала предсказания для определения блока предсказания, который является сигналом предсказания целевого блока декодирования, из репродуцированных видеоданных, сохраненных в средстве хранения, на основе пиксельной группы, найденной средством поиска, и предварительно определенного позиционного соотношения, отличающуюся тем, что средство декодирования генерирует декодированный разностный блок, который является разностным сигналом целевого блока декодирования, и средство генерации репродуцированного изображения генерирует декодированный блок путем суммирования декодированного разностного блока и блока предсказания в пиксельных единицах.
Программа видеокодирования согласно настоящему изобретению представляет собой программу видеокодирования для управления устройством видеокодирования для кодирования видеоданных в блочных единицах, при этом программа заставляет устройство видеокодирования функционировать как средство деления для деления изображения кадра, составляющего видеоданные, во множество целевых блоков кодирования в качестве целевой области кодирования; средство кодирования для кодирования целевого блока кодирования; средство генерации репродуцированного изображения для генерации декодированного блока, который является репродуцированным сигналом целевого блока кодирования; средство хранения для хранения репродуцированных видеоданных, генерированных из репродуцированного сигнала; и средство генерации сигнала предсказания для генерации блока предсказания, который является сигналом предсказания целевого блока кодирования, с использованием предварительно определенного способа, из репродуцированного сигнала, который является смежным с целевым блоком кодирования в предварительно определенном позиционном соотношении и принадлежит к репродуцированным видеоданным, сохраненным в средстве хранения, отличающуюся тем, что средство кодирования генерирует сокращенный разностный блок, в котором число пикселей меньше, чем в разностном блоке, который является разностным сигналом целевого блока кодирования, полученного вычитанием блока предсказания из целевого блока кодирования в пиксельных единицах, с использованием обработки сокращения, которая уменьшает число пикселей разностного блока посредством предварительно определенного способа, и кодирует сокращенный разностный блок, и средство генерации репродуцированного изображения генерирует декодированный сокращенный разностный блок, который является репродуцированным сигналом сокращенного разностного блока, и генерирует декодированный блок из декодированного сокращенного разностного блока с использованием обработки увеличения, которая увеличивает число пикселей посредством предварительно определенного способа.
Программа видеодекодирования согласно настоящему изобретению представляет собой программу видеодекодирования для управления устройством видеодекодирования для репродуцирования кодированных данных видеоданных в репродуцированные видеоданные в блочных единицах, причем программа заставляет устройство видеодекодирования функционировать как средство декодирования для декодирования кодированных данных, требуемых для репродуцирования целевого блока декодирования, подлежащего декодированию; средство генерации репродуцированного изображения для генерации декодированного блока, который является репродуцированным сигналом целевого блока декодирования, из кодированных данных, декодированных средством декодирования; средство хранения для хранения репродуцированных видеоданных, генерированных из репродуцированного сигнала; и средство генерации сигнала предсказания для генерации блока предсказания, который является сигналом предсказания целевого блока декодирования, с использованием предварительно определенного способа, из репродуцированного сигнала, принадлежащего к репродуцированным видеоданным, который является смежным с целевым блоком декодирования в предварительно определенном позиционном соотношении и сохранен в средстве хранения, отличающуюся тем, что средство декодирования генерирует декодированный сокращенный разностный блок, в котором число пикселей меньше, чем в разностном блоке, который является разностным сигналом целевого блока декодирования, путем декодирования кодированных данных, и средство генерации репродуцированного изображения генерирует декодированный блок из декодированного сокращенного разностного блока с использованием обработки увеличения, которая увеличивает число пикселей посредством предварительно определенного способа.
Устройство видеокодирования согласно настоящему изобретению представляет собой устройство видеокодирования для кодирования видеоданных, содержащее средство деления для деления изображения кадра, составляющего видеоданные, во множество областей в качестве целевых областей кодирования; средство кодирования для кодирования изображения каждой из областей, полученных путем деления средством деления; средство генерации репродуцированного изображения для генерации репродуцированного изображения из изображения, кодированного средством кодирования; средство хранения для хранения репродуцированного изображения, генерированного средством генерации репродуцированного изображения; средство поиска для поиска области изображения, высококоррелированного с репродуцированным изображением в области шаблона, которая является смежной с областью целевого изображения кодирования средством кодирования в предварительно определенном позиционном соотношении и является частью репродуцированного изображения, сохраненного в средстве хранения, из репродуцированного изображения, сохраненного в средстве хранения; и средство определения сигнала предсказания для определения сигнала предсказания в области, подлежащей кодированию из репродуцированного изображения, сохраненного в средстве хранения, на основе области, найденной средством поиска и предварительно определенного позиционного соотношения, отличающееся тем, что средство кодирования генерирует разностный сигнал между сигналом предсказания, определенным средством определения сигнала предсказания, и изображением области, подлежащей кодированию, и кодирует разностный сигнал.
В устройстве видеокодирования, соответствующем настоящему изобретению, область изображения, высококоррелированная с репродуцированным изображением области шаблона, которая является смежной с областью целевого изображения кодирования в предварительно определенном позиционном соотношении, отыскивается из репродуцированного изображения. Затем на основе найденной области и вышеупомянутого предварительно определенного позиционного соотношения сигнал прогнозирования целевой области кодирования определяется из репродуцированного изображения. Кодирование выполняется с использование этого сигнала предсказания. Иными словами, согласно устройству видеокодирования, соответствующему настоящему изобретению, сигнал предсказания может быть определен без использования вектора движения, и может быть реализовано эффективное кодирование.
Устройство видеодекодирования, соответствующее настоящему изобретению, представляет собой устройство видеодекодирования для декодирования видеоданных, в которых изображение кадра, разделенное на множество областей, является кодированным, содержащее средство декодирования для декодирования кодированных данных в каждой из областей; средство генерации репродуцированного изображения для генерации репродуцированного изображения из изображения, декодированного средством декодирования; средство хранения для хранения изображения, генерированного средством генерации репродуцированного изображения; средство поиска для поиска области изображения, высококоррелированного с репродуцированным изображением в области шаблона, которая является смежной с областью целевого изображения декодирования средством декодирования в предварительно определенном позиционном соотношении и которая является частью репродуцированного изображения, сохраненного в средстве хранения, из репродуцированного изображения, сохраненного в средстве хранения; и средство определения сигнала предсказания для определения сигнала предсказания в области, подлежащей декодированию, из репродуцированного изображения, сохраненного в средстве хранения, на основе области, найденной средством поиска, и предварительно определенного позиционного соотношения, отличающееся тем, что средство генерации репродуцированного изображения генерирует суммарный сигнал из сигнала предсказания, определенного средством определения сигнала предсказания, и изображения, декодированного средством декодирования, для генерации репродуцированного изображения.
В устройстве видеодекодирования, соответствующем настоящему изобретению, сигнал предсказания определяется тем же способом, что и в вышеупомянутом устройстве видеокодирования, и видео может быть декодировано. Иными словами, согласно устройству видеодекодирования, соответствующему настоящему изобретению, видеоданные, эффективно кодированные вышеупомянутым устройством видеокодирования, могут быть корректно декодированы.
Предпочтительным образом устройство видеокодирования дополнительно содержит средство оценивания для сравнения репродуцированного изображения шаблона и репродуцированного изображения, сохраненного в средстве хранения, для оценивания пространственной непрерывности изображения целевой области кодирования на основе результата сравнения; и средство установки для дальнейшего деления целевой области кодирования и установки области, полученной делением, в качестве новой целевой области кодирования на основе пространственной непрерывности изображения, оцененной средством оценивания, и установки области шаблона для новой целевой области кодирования. Согласно этой конфигурации размер области сигнала предсказания может быть надлежащим образом выбран на основе пространственной непрерывности, так что эффективность кодирования улучшается, даже при кодировании видеоданных, в которых изменение величины движения является значительным.
Предпочтительным образом, устройство видеодекодирования дополнительно содержит средство оценивания для сравнения репродуцированного изображения шаблона и репродуцированного изображения, сохраненного в средстве хранения, для оценивания пространственной непрерывности изображения целевой области декодирования на основе результата сравнения; и средство установки для дальнейшего деления целевой области декодирования и установки области, полученной делением, в качестве новой целевой области декодирования на основе пространственной непрерывности изображения, оцененной средством оценивания, и установки области шаблона для новой целевой области декодирования. Согласно этой конфигурации видеоданные, кодированные вышеупомянутым устройством видеокодирования, могут быть корректно декодированы.
Помимо описания настоящего изобретения как изобретения, относящегося к устройству видеокодирования и устройству видеодекодирования, настоящее изобретение может быть описано как изобретение, относящееся к способу видеокодирования, программе видеокодирования, способу видеодекодирования и программе видеодекодирования. Эти изобретения, по существу, характеризуют то же изобретение, но отличающихся категорий, и реализуют те же самые функции и имеют тот же самый эффект.
Способ видеокодирования согласно настоящему изобретению представляет собой способ видеокодирования для устройства видеокодирования для кодирования видеоданных, содержащий этап деления для деления изображения кадра, составляющего видеоданные, во множество областей в качестве целевых областей кодирования; этап кодирования для кодирования изображения каждой из областей, полученных путем деления на этапе деления; этап генерации репродуцированного изображения для генерации репродуцированного изображения из изображения, кодированного на этапе кодирования; этап хранения для хранения репродуцированного изображения, генерированного на этапе генерации репродуцированного изображения; этап поиска для поиска области изображения, высококоррелированного с репродуцированным изображением в области шаблона, которая является смежной с областью целевого изображения кодирования на этапе кодирования в предварительно определенном позиционном соотношении и является частью репродуцированного изображения, сохраненного на этапе хранения, из репродуцированного изображения, сохраненного на этапе хранения; и этап определения сигнала предсказания для определения сигнала предсказания в области, подлежащей кодированию из репродуцированного изображения, сохраненного на этапе хранения, на основе области, найденной на этапе поиска, и предварительно определенного позиционного соотношения, отличающийся тем, что на этапе кодирования генерируется разностный сигнал между сигналом предсказания, определенным на этапе определения сигнала предсказания, и изображением области, подлежащей кодированию, и этот разностный сигнал кодируется.
Программа видеокодирования согласно настоящему изобретению представляет собой программу видеокодирования для управления устройством видеокодирования для кодирования видеоданных, при этом программа заставляет устройство видеокодирования функционировать как средство деления для деления изображения кадра, составляющего видеоданные, во множество областей в качестве целевых областей кодирования; средство кодирования для кодирования изображения каждой из областей, полученных путем деления средством деления; средство генерации репродуцированного изображения для генерации репродуцированного изображения из изображения, кодированного средством кодирования; средство хранения для хранения репродуцированного изображения, генерированного средством генерации репродуцированного изображения; средство поиска для поиска области изображения, высоко коррелированного с репродуцированным изображением в области шаблона, которая является смежной с областью целевого изображения кодирования средством кодирования в предварительно определенном позиционном соотношении и является частью репродуцированного изображения, сохраненного в средстве хранения, из репродуцированного изображения, сохраненного в средстве хранения; и средство определения сигнала предсказания для определения сигнала предсказания в области, подлежащей кодированию, из репродуцированного изображения, сохраненного в средстве хранения, на основе области, найденной средством поиска, и предварительно определенного позиционного соотношения, отличающееся тем, что средство кодирования генерирует разностный сигнал между сигналом предсказания, определенным средством определения сигнала предсказания, и изображением области, подлежащей кодированию, и кодирует разностный сигнал.
Способ видеодекодирования согласно настоящему изобретению представляет собой способ видеодекодирования для устройства видеодекодирования для декодирования видеоданных, в которых изображение кадра, разделенное на множество областей, является кодированным, содержащий этап декодирования для декодирования кодированных данных в каждой из областей; этап генерации репродуцированного изображения для генерации репродуцированного изображения из изображения, декодированного на этапе декодирования; этап хранения для хранения изображения, генерированного на этапе генерации репродуцированного изображения; этап поиска для поиска области изображения, высококоррелированного с репродуцированным изображением в области шаблона, которая является смежной с областью целевого изображения декодирования на этапе декодирования в предварительно определенном позиционном соотношении и которая является частью репродуцированного изображения, сохраненного на этапе хранения, из репродуцированного изображения, сохраненного на этапе хранения; и этап определения сигнала предсказания для определения сигнала предсказания в области, подлежащей декодированию из репродуцированного изображения, сохраненного на этапе хранения, на основе области, найденной на этапе поиска, и предварительно определенного позиционного соотношения, отличающийся тем, что на этапе генерации репродуцированного изображения генерируется суммарный сигнал из сигнала предсказания, определенного на этапе определения сигнала предсказания, и изображения, декодированного на этапе декодирования, для генерации репродуцированного изображения.
Программа видеодекодирования согласно настоящему изобретению представляет собой программу видеодекодирования для управления устройством видеодекодирования для декодирования видеоданных, в которых изображение кадра, разделенное на множество областей, закодировано, при этом программа заставляет устройство видеодекодирования функционировать как средство декодирования для декодирования кодированных данных в каждой из областей; средство генерации репродуцированного изображения для генерации репродуцированного изображения из изображения, декодированного средством декодирования; средство хранения для хранения изображения, генерированного средством генерации репродуцированного изображения; средство поиска для поиска области изображения, высококоррелированного с репродуцированным изображением в области шаблона, которая является смежной с областью целевого изображения декодирования средством декодирования в предварительно определенном позиционном соотношении и которая является частью репродуцированного изображения, сохраненного в средстве хранения, из репродуцированного изображения, сохраненного в средстве хранения; и средство определения сигнала предсказания для определения сигнала предсказания в области, подлежащей декодированию, из репродуцированного изображения, сохраненного в средстве хранения, на основе области, найденной средством поиска, и предварительно определенного позиционного соотношения, отличающуюся тем, что средство генерации репродуцированного изображения генерирует суммарный сигнал из сигнала предсказания, определенного средством определения сигнала предсказания, и изображения, декодированного средством декодирования, для генерации репродуцированного изображения.
Эффект изобретения
В соответствии с настоящим изобретением отыскивается репродуцированная область, высококоррелированная с областью шаблона, которая является смежной с областью целевого изображения кодирования, в предварительно определенном позиционном соотношении, и определяется сигнал предсказания на основе найденной области и вышеупомянутого позиционного соотношения, так что эффективное кодирование может быть реализовано без использования вектора движения.
Краткое описание чертежей
Фиг.1 - диаграмма, изображающая конфигурацию устройства видеокодирования согласно первому варианту осуществления настоящего изобретения;
Фиг.2 - диаграмма, изображающая конфигурацию секции генерации предсказания устройства видеокодирования;
Фиг.3 - диаграмма, изображающая позиционное соотношение между областью шаблона и целевой областью предсказания;
Фиг.4 - диаграмма, изображающая детальную операцию для определения сигнала предсказания посредством согласования шаблона;
Фиг.5 - блок-схема, изображающая обработку, исполняемую устройством видеокодирования согласно первому варианту осуществления настоящего изобретения;
Фиг.6 - диаграмма, изображающая конфигурацию устройства видеодекодирования согласно первому варианту осуществления настоящего изобретения;
Фиг.7 - блок-схема, изображающая обработку, исполняемую устройством видеодекодирования согласно первому варианту осуществления настоящего изобретения;
Фиг.8 - диаграмма, изображающая конфигурацию секции генерации предсказания устройства видеокодирования согласно второму варианту осуществления;
Фиг.9 - диаграммы, изображающие разделенную целевую область предсказания во втором варианте осуществления;
Фиг.10 - блок-схема, изображающая обработку, исполняемую устройством видеокодирования согласно второму варианту осуществления настоящего изобретения;
Фиг.11 - блок-схема, изображающая обработку, исполняемую устройством видеодекодирования согласно второму варианту осуществления настоящего изобретения;
Фиг.12 - диаграммы, изображающие порядок кодирования;
Фиг.13 - диаграммы, изображающие пример позиционного соотношения области шаблона и целевой области предсказания согласно порядку кодирования;
Фиг.14 - диаграммы, изображающие функцию секции принятия решения во втором варианте осуществления;
Фиг.15 - диаграммы, изображающие функцию секции принятия решения во втором варианте осуществления;
Фиг.16 - диаграмма, изображающая конфигурацию программы видеокодирования согласно варианту осуществления настоящего изобретения;
Фиг.17 - диаграмма, изображающая конфигурацию программы видеодекодирования согласно варианту осуществления настоящего изобретения;
Фиг.18 - диаграмма, изображающая конфигурацию вариантной формы устройства видеокодирования согласно первому варианту осуществления;
Фиг.19 - диаграмма, изображающая конфигурацию вариантной формы устройства видеодекодирования согласно первому варианту осуществления;
Фиг.20 - диаграмма, изображающая конфигурацию вариантной формы секции генерации предсказания согласно первому варианту осуществления;
Фиг.21 - диаграмма, изображающая конфигурацию устройства видеокодирования согласно третьему варианту осуществления настоящего изобретения;
Фиг.22 - диаграмма, изображающая конфигурацию устройства видеодекодирования согласно третьему варианту осуществления настоящего изобретения;
Фиг.23 - диаграммы, изображающие обработку сокращения/увеличения блоков согласно третьему варианту осуществления;
Фиг.24 - блок-схема, изображающая обработку, исполняемую устройством видеокодирования согласно третьему варианту осуществления настоящего изобретения;
Фиг.25 - блок-схема, изображающая обработку, исполняемую устройством видеодекодирования согласно третьему варианту осуществления настоящего изобретения;
Фиг.26 - диаграмма, изображающая конфигурацию вариантной формы устройства видеокодирования согласно третьему варианту осуществления;
Фиг.27 - диаграмма, изображающая конфигурацию вариантной формы устройства видеодекодирования согласно третьему варианту осуществления;
Фиг.28 - диаграммы, изображающие другой пример обработки сокращения/увеличения блоков согласно третьему варианту осуществления;
Фиг.29 - диаграммы, изображающие другой пример обработки сокращения/увеличения блоков согласно третьему варианту осуществления;
Фиг.30 - диаграмма, изображающая конфигурацию вариантной формы устройства видеокодирования согласно третьему варианту осуществления;
Фиг.31 - диаграмма, изображающая конфигурацию вариантной формы устройства видеодекодирования согласно третьему варианту осуществления;
Фиг.32 - диаграмма, изображающая конфигурацию вариантной формы устройства видеокодирования согласно третьему варианту осуществления;
Фиг.33 - диаграмма, изображающая конфигурацию вариантной формы устройства видеодекодирования согласно третьему варианту осуществления;
Фиг.34 - диаграмма, изображающая конфигурацию вариантной формы устройства видеокодирования согласно третьему варианту осуществления;
Фиг.35 - диаграмма, изображающая конфигурацию вариантной формы устройства видеодекодирования согласно третьему варианту осуществления;
Фиг.36 - диаграмма, изображающая конфигурацию вариантной формы секции генерации предсказания согласно третьему варианту осуществления;
Фиг.37 - диаграммы, изображающие пример обработки предсказания согласно третьему варианту осуществления.
Пояснение ссылочных символов
100, 1800, 2100, 2600, 3000, 3200, 3400 - устройство видеокодирования
600, 1900, 2200, 2700, 3100, 3300, 3500 - устройство видеодекодирования
101 - секция деления области
102, 2102 - секция вычитания,
103, 2103 - секция преобразования
104, 2104, 3004 - секция кодирования
105, 602,2105, 2202 - секция инверсного преобразования
106, 603, 2106, 2203 - секция суммирования
107, 604 - секция хранения
108, 605, 800, 1108, 3408, 3505, 3608 - секция генерации предсказания
201, 802, 3602 - секция определения области шаблона
202 - секция согласования
2003, 804, 3603 - секция заполнения
601, 2201, 3101 - секция декодирования
801 - секция принятия решения
109, 2612, 3012 - секция выбора
204 - секция генерации сигнала
2110, 2207, 3210 - секция сокращения
2111, 2208, 3211, 3308 - секция увеличения
2613, 2709, 3109 - секция переключения
3013, 3110, переключатель
1600, 1700 - носители записи
1600а, 1700а - область хранения программы
1601 - программа видеокодирования
1701 - программа видеодекодирования
1601а, 1701а - основной модуль
1601b - модуль деления области
1601с - модуль вычитания
1601d - модуль преобразования
1601е - модуль кодирования
1601f, 1701c - модуль инверсного преобразования
1601g, 1701d - модуль суммирования
1601h, 1701e - модуль хранения
1601i, 1701f - модуль генерации предсказания
1601j, 1701g - модуль определения области шаблона
1601k, 1701h - модуль согласования
1601m, 1701i - модуль заполнения
1601b - модуль декодирования
Наилучший режим выполнения изобретения
Предпочтительные варианты осуществления устройства видеокодирования, способа видеокодирования, программы видеокодирования, устройства видеодекодирования, способа видеодекодирования и программы видеодекодирования согласно настоящему изобретении будут описаны ниже со ссылками на чертежи. При описании чертежей те же самые компоненты обозначены одинаковыми ссылочными позициями и для них избыточное описание опущено.
Первый вариант осуществления
На Фиг.1 показано устройство 100 видеокодирования, соответствующее первому варианту осуществления. Устройство 100 видеокодирования представляет собой устройство для кодирования видеоданных в блочных единицах. Устройство 100 видеокодирования кодирует видеоданные путем ввода изображений кадров, составляющих видеоданные, и кодирования изображений кадров последовательно. Устройство 100 видеокодирования реализовано такими аппаратными средствами, как устройство обработки информации, состоящее из центрального процессора (CPU), памяти кадров и жесткого диска. Устройство 100 видеокодирования реализует функциональные составные элементы, описанные ниже, путем работы этих составных элементов аппаратных средств.
Как показано на Фиг.1, устройство 100 видеокодирования содержит секцию 101 деления области, секцию 102 вычитания, секцию 103 преобразования, секцию 104 кодирования, секцию 105 инверсного преобразования, секцию 106 суммирования, секцию 107 хранения и секцию 108 генерации предсказания. Функция каждой секции описана ниже.
Секция 101 деления области представляет собой средство деления для деления изображения кадра, составляющего видео, которое введено во множество областей в качестве целевых областей кодирования. Иными словами, секция 101 деления области представляет собой средство деления для деления изображения кадра, составляющего видео, которое введено во множество целевых блоков кодирования. Более конкретно, секция 101 деления области делит предварительно определенный размер блока (например, целевой блок кодирования размером 8 пикселей × 8 пикселей). Исходное изображение, полученное делением, выводится в последовательности кодирования и вводится в секцию 102 вычитания. Последовательность вывода может быть последовательностью растрового сканирования слева сверху вниз направо изображения кадра, как показано на Фиг.12(а), или может представлять собой зигзагообразную последовательность, которая повторяет последовательность от левого конца кадра к правому концу кадра и последовательность от правого конца кадра к левому его концу, поочередно, по одному шагу в каждый данный момент времени, как показано на Фиг.12(b). Последовательность вывода сохраняется в секции 101 деления области заранее.
Секция 102 вычитания является составным элементом средства кодирования для генерации разностного сигнала между исходным сигналом целевого блока кодирования и сигнала предсказания, который описан ниже, и его вывода. Разностный сигнал генерируется путем вычитания сигнала предсказания целевого блока кодирования, который выводится из секции 108 генерации предсказания, из исходного сигнала целевого блока кодирования, который выводится из секции 101 деления области. Разностный сигнал, подлежащий выводу, представляет собой сигнал, который должен стать целевым для кодирования, и вводится в секцию 103 преобразования для кодирования.
Секция 103 преобразования является средством преобразования для преобразования разностного сигнала, который вводится из секции 102 вычитания, в соответствии с предварительно определенным способом преобразования, и выдачи данных коэффициентов преобразования. Для преобразования может быть использовано ортогональное преобразование, представленное дискретным косинусным преобразованием (ДКП). Реляционные выражения для преобразования сохранены в секции 103 преобразования заранее. Это преобразование может быть обратимым или необратимым. Это преобразование предназначено для выполнения кодирования, которое выполняется после этой операции более эффективно. Данные коэффициентов преобразования, которые выводятся, вводятся в секцию 104 кодирования и в секцию инверсного преобразования. Для сжатия объема информации коэффициент после ортогонального преобразования может быть квантован.
Секция 104 кодирования является составным элементом средства кодирования для выполнения энтропийного кодирования данных коэффициентов преобразования, которые вводятся из секции 103 преобразования. Кодированные данные становятся выходом устройства 100 видеокодирования. Для энтропийного кодирования может использоваться способ кодирования переменной длины, такой как кодирование Хаффмана, и способ арифметического кодирования, представленный основанным на контексте адаптивным двоичным арифметическим кодированием (CABAC). В обоих случаях объем информации может быть сжат путем изменения способа преобразования, основываясь на смещении вероятности генерации данных коэффициентов преобразования.
Секция 105 инверсного преобразования является составным элементом средства генерации репродуцированного изображения для генерации разностного сигнала, используемого для генерации репродуцированного изображения. Разностный сигнал генерируется путем выполнения инверсной обработки по отношению к обработке преобразования, выполненной в секции 103 преобразования над данными коэффициентов преобразования, которые вводятся из секции 103 преобразования. Реляционные выражения для инверсного преобразования сохранены в секции 105 инверсного преобразования заранее. Разностный сигнал, генерируемый в секции 105 инверсного преобразования, вводится в секцию 106 суммирования.
Секция 106 суммирования является составным элементом средства генерации репродуцированного изображения для генерации репродуцированного сигнала как суммарного сигнала путем суммирования сигнала предсказания, который выводится из последней упомянутой секции 108 генерации предсказания (то же, что и сигнал предсказания, который вводится в секцию 102 вычитания), и разностного сигнала, который генерируется секцией 105 инверсного преобразования. Здесь репродуцированный сигнал образует репродуцированное изображение. Репродуцированный сигнал, генерированный секцией 106 суммирования, является тем же самым, что и репродуцированный сигнал, генерированный в устройстве декодирования. Репродуцированный сигнал, генерированный секцией 106 суммирования, вводится в секцию 107 хранения.
Секция 107 хранения является средством хранения для хранения репродуцированного сигнала, который вводится из секции 106 суммирования, в запоминающее устройство в устройстве 100 видеокодирования, например, память кадров, в качестве репродуцированных видеоданных. Все репродуцированные сигналы сохраняются до тех пор, пока кодирование всех видеоданных не закончится. Таким способом репродуцированные видеоданные последовательно сохраняются.
Секция 108 генерации предсказания, которая является отличительной частью настоящего изобретения, считывает репродуцированное изображение, сохраненное в секции 107 хранения, и генерирует сигнал предсказания целевого блока предсказания (цели кодирования), основанного на репродуцированном сигнале. Ниже подробно описана работа секции 108 генерации предсказания. Фиг.2 показывает дополнительные детали функциональных блоков секции 108 генерации предсказания. Как показано на Фиг.2, секция 108 генерации предсказания состоит из секции 201 определения области шаблона, секции 202 согласования и секции 203 заполнения.
Секция 201 определения области шаблона является составным элементом средства поиска для определения области шаблона и сигнала этой области (шаблона), используемого для генерации сигнала предсказания на основе ввода из секции 107 хранения. Иными словами, секция 201 определения области шаблона является составным элементом средства поиска для генерации шаблона из репродуцированного сигнала, которая является смежной целевому блоку кодирования в предварительно определенном позиционном соотношении и принадлежит к репродуцированным видеоданным, сохраненным в секции 107 хранения. Секция 201 определения области шаблона является составным элементом средства генерации сигала предсказания для генерации блока предсказания, который является сигналом предсказания целевого блока кодирования, с использованием шаблона. Как показано на Фиг.3, область 301 шаблона является областью репродуцированного изображения, которая является смежной с областью 302 целевого изображения кодирования в предварительно определенном позиционном соотношении и сохранена в секции 107 хранения, то есть группа пикселей, образованная репродуцированным сигналом репродуцированных видеоданных. Более конкретно, группа пикселей с предварительно определенным размером, которая включает в себя группу пикселей, пространственно смежную с целевым блоком предсказания, и является репродуцированной областью, расположенной в том же кадре, что и целевой блок предсказания, сохраненный в секции 107 хранения, присваивается области шаблона. Поэтому положение области шаблона зависит от порядка кодирования (порядка обработки кодирования, которая выводится из секции 101 деления области) блока. В секции 201 определения области шаблона последующие условия для определения области шаблона сохранены заранее.
На Фиг.13 показан пример позиционного соотношения между областью шаблона и целевой областью предсказания. Как показано на Фиг.13(а), область 1301 шаблона является областью, расположенной слева и выше целевого блока 1302 предсказания, если порядок кодирования является порядком растрового кодирования. Как показано на Фиг.13(b), область 1303, расположенная слева и выше целевого блока 1302 предсказания, является областью, в которой репродуцированное изображение сохранено в области 107 хранения. Если порядок кодирования является зигзагообразным порядком, то положение области шаблона изменяется в зависимости от процесса развития кодирования. Если кодирование развивается слева направо на экране, как показано на Фиг.13(b), то целевой блок 1304 предсказания является областью, расположенной справа и выше целевого блока 1305 предсказания. Если кодирование развивается справа налево на экране, как показано на Фиг.13(с), то целевой блок 1304 предсказания является областью, расположенной слева и выше целевого блока 1305 предсказания.
Секция 202 согласования является средством поиска для выполнения согласования шаблона в репродуцированном изображении, сохраненном в секции 107 хранения как область поиска, с использованием репродуцированного сигнала области шаблона, определенной секцией 201 определения области шаблона, и поиска (обнаружения) области, в которой корреляция репродуцированного сигнала области шаблона является наивысшей в области поиска. Иными словами, секция 202 согласования является средством поиска для поиска группы пикселей, для которой корреляция шаблона, определенного секцией 201 определения области шаблона, высока, из репродуцированных видеоданных, сохраненных в секции 107 хранения. Секция 202 согласования также является компонентом средства генерации сигнала предсказания для генерации блока предсказания, который является сигналом предсказания целевого блока кодирования, с использованием шаблона. Согласование шаблона описано ниже более детально.
Секция 203 заполнения является средством определения сигнала предсказания для установки и определения сигнала предсказания, имеющего тот же размер, что и целевой блок предсказания, из репродуцированного изображения, на основе области (области высокой корреляции), найденной секцией 202 согласования, и позиционного соотношения между целевым блоком предсказания областью шаблона. Иными словами, секция 203 заполнения является средством определения сигнала предсказания для определения блока предсказания, который является сигналом предсказания целевого блока предсказания, из репродуцированных видеоданных, сохраненных в секции 107 хранения, на основе группы пикселей, найденной секцией 202 согласования, и вышеупомянутого позиционного соотношения. Секция 203 заполнения также является компонентом средства генерации сигнала предсказания для генерации блока предсказания, который является сигналом предсказания целевого блока предсказания, с использованием шаблона. Позиционное соотношение найденной области высокой корреляции и области изображения в качестве сигнала предсказания является тем же самым, что и позиционное соотношение между областью шаблона и целевым блоком предсказания. Например, если порядок кодирования блока является порядком растрового сканирования, то область, смежная с правой и нижней частью области высокой корреляции, является областью сигнала предсказания. Определенный сигнал предсказания выводится из секции 108 генерации предсказания и вводится в секцию 102 вычитания и секцию 106 суммирования.
Детальная операция определения сигнала предсказания путем согласования шаблона в секции 202 согласования и секции 203 заполнения описана ниже со ссылкой на Фиг.4. Секция 202 согласования выполняет согласование шаблона для поиска области, сходной с изображением области 401 шаблона из диапазонов 403 и 404 поиска. Диапазоны поиска включают репродуцированную область 403 в кадре (целевом кадре предсказания), включающем область 401 шаблона и целевую область 402 предсказания, и изображение 404 другого репродуцированного кадра. Сначала измеряется корреляция сигнала области 401 шаблона и сигнала группы пикселей, имеющей ту же форму, что и область 401 шаблона, в произвольном местоположении в диапазоне поиска. Для значения критериев оценивания, чтобы указать корреляцию, могут использоваться, например, критерий SAD (сумма абсолютных разностей), который указывает сумму абсолютных значений разностных сигналов, или критерий MSE (среднеквадратичная ошибка), который указывает среднеквадратичную ошибку разностных сигналов. Получают значения корреляции критериев оценивания для всех возможных групп пикселей в диапазоне поиска, и информация (адрес), которая указывает группу пикселей, у которой значение критериев оценивания минимально (изображение самой области 401 шаблона исключено), выводится в качестве результата поиска.
Секция 203 заполнения устанавливает группу пикселей, смежную с областью высокой корреляции, найденной путем согласования шаблона, в качестве сигнала предсказания. В области, в которой корреляция с областью шаблона высока, с высокой вероятностью возможно, что корреляция с областью, смежной с областью шаблона, тоже высока, так что эта область может использоваться как сигнал предсказания. Ввиду этого устанавливается способ предсказания согласно данному способу. Далее со ссылкой на блок-схему, представленную на Фиг.5, описывается обработка кодирования (способ видеокодирования) в устройстве 100 видеокодирования, согласно настоящему изобретению.
Когда целевые видеоданные кодирования вводятся в устройство 100 видеокодирования, каждое изображение кадра, составляющее видео, вводится в секцию 101 деления изображения. Изображение кадра, которое было введено, делится на множество блоков предварительно определенного размера с помощью секции 101 деления области (этап деления - S501). Обработка после этого проводится в блочных единицах. Блок вводится в секцию 102 вычитания как изображение целевой области кодирования.
Затем сигнал предсказания целевого блока кодирования генерируется секцией 108 генерации предсказания следующим образом. Порядок кодирования блока сообщается секции 108 генерации предсказания от контроллера (не показан), который управляет процессом кодирования в устройстве 100 видеокодирования. Либо секция 108 генерации предсказания сохраняет порядок кодирования блоков заранее. Сначала секция 201 определения области шаблона определяет область шаблона на репродуцированном изображении рядом с блоком (этап поиска - S502). Затем секция 202 согласования выполняет согласование шаблона для репродуцированного изображения в том же или другом кадре из целевого блока кодирования и находится область, высококоррелированная с репродуцированным сигналом области шаблона (этап поиска - S503). Затем секция 203 заполнения устанавливает область того же размера, что и целевой блок кодирования, которая является смежной с областью высокой корреляции, полученной согласованием шаблона, в предварительно определенном позиционном соотношении (справа и внизу в случае примера по Фиг.4), в качестве сигнала предсказания (этап определения сигнала предсказания - S504). Сигнал предсказания, который установлен, вводится в секцию 102 вычитания и секцию 106 суммирования.
Затем секция 102 вычитания генерирует разностный сигнал путем вычитания сигнала предсказания, который был введен из секции 108 генерации предсказания (секция 203 заполнения), из исходного изображения, которое было введено из секции 101 деления области, в пиксельной области (этап кодирования - S505). Генерированный разностный сигнал вводится в секцию 103 преобразования и преобразуется секцией 103 преобразования (S506). Преобразованный разностный сигнал вводится в секцию 104 кодирования и секцию 105 инверсного преобразования. Разностный сигнал после преобразования, который был введен в секцию 104 кодирования, энтропийно кодируется секцией 104 кодирования, и генерируются сжатые данные кодирования (этап кодирования - S507).
Разностный сигнал после преобразования, который был введен в секцию 105 инверсного преобразования, инверсно преобразуется секцией 105 инверсного преобразования, и генерируется разностный сигнал после инверсного преобразования (этап генерации репродуцированного изображения - S508). Разностный сигнал после инверсного преобразования вводится в секцию 106 суммирования, секция 106 суммирования суммирует разностный сигнал и сигнал предсказания, который был введен из секции 108 генерации предсказания (секции 203 заполнения) для генерации суммарного сигнала, который становится репродуцированным сигналом (этап генерации репродуцированного изображения - S509). Генерированный репродуцированный сигнал вводится в секцию 107 хранения и сохраняется в секции 1078 хранения с предварительно определенным адресом, соответствующим целевому кадру кодирования, например, в памяти кадров (этап сохранения - S510).
Затем принимается решение, завершена ли вышеописанная обработка (S502 - S510) во всех блока изображения кадра (S11). Если завершена, то обработка этого кадра заканчивается, сжатые данные кодирования после энтропийного кодирования секцией 104 кодирования выводятся, и запускается обработка следующего кадра. Если остались необработанные блоки, то запускается обработка следующего блока. Вышеуказанное решение может выполняться одним из вышеописанных компонентных элементов или может выполняться средством, которое предназначено для управления обработкой кодирования в устройстве 100 видеокодирования.
В вышеописанной обработке репродуцированный сигнал, сохраненный в секции 107 хранения, основан на разностном сигнале, который был преобразован секцией 103 преобразования и был инверсно преобразован секцией 105 инверсного преобразования. Это основано на предположении, что кодирование секцией 104 кодирования является реверсируемым, и в вышеописанной обработке получается репродуцированное изображение, подлежащее репродуцированию в устройстве декодирования.
В вышеописанной обработке был показан пример выполнения предсказания, основанный только на заполнении посредством согласования шаблона, но может быть включена и другая обработка. Например, в некоторых случаях репродуцированные смежные пиксели могут не существовать, когда кодируется верхний конец или оба края изображения кадра, и в таком случае смежные пиксели должны предполагаться существующими заранее, чтобы использовать предложенный способ. Для таких частей традиционное прогнозирование, использующее вектор движения, может быть лучшим для эффективного кодирования. Если эффективность кодирования улучшается путем использования предсказания, основанного на векторе движения, по сравнению с предсказанием, основанным на предложенном способе, не только на обоих краях экрана, но и в других случаях, то может использоваться предсказание, основанное на векторе движения. В этом случае оба способа могут эффективно использоваться, если информация, которая указывает, что был использован один из предложенного способа или способа, основанного на векторе движения, добавляется в заголовок информации блока.
Как описано выше, в соответствии с устройством 100 видеокодирования, соответствующим настоящему изобретению, межкадровое предсказание может выполняться без использования вектора движения, с использованием кодированного репродуцированного изображения, когда выполняется межкадровое предсказание, и поэтому обеспечивается эффективное кодирование. Иными словами, в данных, кодированных устройством 100 видеокодирования, соответствующим настоящему изобретению, по существу кодированы только преобразованные разностные сигналы, а вектор движения исключен, по сравнению с традиционным способом кодирования. В дополнение к этому, только репродуцированная область к этому моменту используется, когда определяется сигнал предсказания, так что данные могут всегда кодироваться в соответствии с последовательностью сканирования видеоданных.
Далее будет описано устройство видеодекодирования согласно предложенному варианту осуществления. На Фиг.6 показано устройство 600 видеодекодирования согласно предложенному варианту осуществления. Устройство 600 видеодекодирования представляет собой устройство для декодирования видеоданных, кодированных в устройстве 100 видеокодирования, и генерации репродуцированных видеоданных. Устройство 600 видеодекодирования реализовано такими аппаратными средствами, как устройство обработки информации, состоящее из центрального процессора (CPU), памяти кадров и жесткого диска. Устройство 600 видеодекодирования реализует функциональные составные элементы, описанные ниже, путем работы этих составных элементов аппаратных средств.
Как показано на Фиг.6, устройство 600 видеодекодирования содержит секцию 601 декодирования, секцию 602 инверсного преобразования, секцию 603 суммирования, секцию 604 хранения и секцию 605 генерации предсказания. Функция каждой секции описана ниже.
Секция 601 декодирования является средством декодирования сжатых данных кодирования, которые подаются на вход. Сжатые данные кодирования были кодированы устройством 100 видеокодирования, соответствующим предложенному варианту осуществления, как описано выше, где изображение кадра разделено на множество областей (целевые блоки кодирования) и кодировано (целевые блоки декодирования). Способ декодирования секции 601 декодирования соответствует способу энтропийного кодирования, использованному устройством 100 видеокодирования, и информация для декодирования сохранна в секции 601 декодирования заранее. Декодирование и вывод в секции 601 декодирования выполняются в блоках кодирования (блочных единицах), согласно порядку кодирования. Декодированные данные вводятся в секцию 602 инверсного преобразования.
Секция 602 инверсного преобразования является составным элементом средств генерации репродуцированного изображения для генерации разностного сигнала, используемого для генерации репродуцированного изображения путем выполнения инверсной обработки по отношению к обработке преобразования, выполненной устройством 100 видеокодирования, над данными, которые вводятся из секции 601 декодирования. Секция 602 инверсного преобразования соответствует секции 105 инверсного преобразования устройства 100 видеокодирования. Реляционные выражения для инверсного преобразования сохранены в секции 602 инверсного преобразования заранее. Разностный сигнал, генерируемый в секции 602 инверсного преобразования, вводится в секцию 603 суммирования.
Секция 603 суммирования является составным элементом средства генерации репродуцированного изображения для генерации репродуцированного сигнала как суммарного сигнала путем суммирования сигнала предсказания, который выводится из последней упомянутой секции 605 генерации предсказания, и разностного сигнала, который генерируется секцией 602 инверсного преобразования. Секция 603 суммирования соответствует секции 106 суммирования устройства 100 видеокодирования. Репродуцированный сигнал, генерированный секцией 106 суммирования, вводится в секцию 604 хранения и выводится на устройство 600 видеодекодирования.
Секция 604 хранения является средством хранения для хранения репродуцированного сигнала, который является блоком декодирования (декодированным целевым блоком кодирования), который вводится из секции 603 суммирования, в запоминающее устройство, предусмотренное в устройстве 600 видеодекодирования, например, память кадров, в качестве репродуцированных видеоданных. Секция 604 хранения соответствует секции 107 хранения устройства 100 видеокодирования. Все блоки декодирования сохраняются до тех пор, пока декодирование всех видеоданных не закончится. Таким способом репродуцированные видеоданные последовательно сохраняются.
Секция 605 генерации предсказания считывает репродуцированное изображение, сохраненное в секции 604 хранения, и генерирует сигнал предсказания целевого блока предсказания (цели декодирования), основанного на репродуцированном сигнале. Секция 605 генерации предсказания соответствует секции 108 генерации предсказания устройства 100 видеокодирования и имеет те же функции, поэтому ее описание опускается.
Далее со ссылкой на блок-схему, представленную на Фиг.7, описывается обработка декодирования (способ видеодекодирования) в устройстве 600 видеодекодирования, согласно настоящему изобретению. Предполагается, что сжатые данные кодирования, подлежащие декодированию в устройстве 600 видеодекодирования, были кодированы устройством 100 видеокодирования.
Когда целевые сжатые видеоданные кодирования, подлежащие декодированию, вводятся в устройство 600 видеодекодирования, декодирование выполняется секцией 601 декодирования (этап декодирования - S701). После декодирования данные преобразования выводятся в блочных единицах. Эти данные преобразования вводятся в секцию 602 инверсного преобразования секцией 601 декодирования. Информация положения в кадре целевого блока декодирования вводится в секцию 605 генерации предсказания от контроллера (не показан), управляющего обработкой декодирования в устройстве 600 видеодекодирования. Положение целевого блока декодирования зависит от порядка кодирования.
Затем сигнал предсказания целевого блока декодирования генерируется секцией 605 генерации предсказания следующим образом. Сначала секция 201 определения области шаблона определяет область шаблона на репродуцированном изображении рядом с блоком (этап поиска - S702). Затем секция 202 согласования выполняет согласование шаблона для репродуцированного изображения в том же или другом кадре из целевого блока кодировании и находится область, высококоррелированная с репродуцированным сигналом области шаблона (этап поиска - S703). Затем секция 203 заполнения устанавливает область того же размера, что и целевой блок кодирования, которая является смежной с областью высокой корреляции, полученной согласованием шаблона, в предварительно определенном позиционном соотношении (справа и внизу в случае примера по Фиг.4), в качестве сигнала предсказания (этап определения сигнала предсказания - S704). Сигнал предсказания, который установлен, вводится в секцию 603 суммирования.
Затем секция 602 инверсного преобразования выполняет инверсное преобразование над данными преобразования, которые введены из секции 601 декодирования и генерирует разностный сигнал (этап генерации репродуцированного изображения - S705). Последовательность обработки на этапах S702 - S704 и обработка на этапе S705 могут выполняться в обратной последовательности, поскольку требуется только, чтобы эти этапы обработки выполнялись перед обработкой на этапе S706 или позже, как описано ниже.
Затем секция 603 суммирования генерирует суммарный сигнал путем суммирования разностного сигнала, который введен из секции 602 инверсного преобразования, и сигнала предсказания, который введен из секции 605 генерации предсказания (секции 203 заполнения), и генерирует декодированный блок, который является репродуцированным сигналом (этап генерации репродуцированного изображения - S706). Генерированный декодированный блок вводится в секцию 604 хранения и сохраняется в секции 604 хранения с предварительно определенным адресом, соответствующим целевому кадру декодирования в памяти кадров (этап сохранения - S707).
Затем принимается решение, завершена ли вышеописанная обработка (S701 - S707) во всех блока изображения кадра (S708). Если она завершена и репродуцированное изображение кадра полное, то репродуцированное изображение кадра выводится на такое средство отображения, как экран (не показано). Изображение кадра может быть также выведено на другое устройство отображения. Если остались необработанные блоки, то запускается обработка следующего блока. Вышеуказанное решение может выполняться одним из вышеописанных компонентных элементов или может выполняться средством, которое предназначено для управления обработкой декодирования в устройстве 600 видеодекодирования.
Как описано выше, в соответствии с устройством 600 видеодекодирования согласно настоящему варианту осуществления, сигнал предсказания определяется и видео декодируется, подобно соответствующим операциям в устройстве 100 видеокодирования. Иными словами, согласно устройству 600 видеодекодирования, согласно настоящему варианту осуществления, видеоданные, эффективно кодированные в устройстве 100 видеокодирования, могут быть корректно декодированы для генерации репродуцированного изображения.
Для настоящего варианта осуществления возможны следующие вариантные формы. Изложенные ниже вариантные формы являются вариантными формами для устройства видеокодирования и устройства видеодекодирования, но также могут быть реализованы тем же способом для обработки видеокодирования и обработки видеодекодирования.
(1) Область поиска
Поскольку целевая область/диапазон поиска для согласования шаблона является репродуцированной областью (403) целевого кадра кодирования и репродуцированным изображением 404 репродуцированного кадра, то любое одно может быть выбрано в блоках кадра. Например, если диапазон поиска ограничен до репродуцированной области (403), то настоящее изобретение может также применяться к внутреннему кадру, для которого целью предсказания является только репродуцированные сигналы в кадре. Если диапазон поиска ограничен до репродуцированного изображения 404, то объем вычислений при межкадровом декодировании, включающий в себя межкадровое предсказание, может быть уменьшен. При условии режима предсказания, у которого целью поиска для согласования шаблона является репродуцированная область 403 (предсказание внутришаблонного согласования), и режима предсказания, у которого целью поиска для согласования шаблона является репродуцированное изображение 404 (предсказание межшаблонного согласования), то выбор одного из режимов предсказания в блочных единицах также является эффективным, поскольку объем вычислений при декодировании может быть уменьшен. В этом случае, как показано на Фиг.5, настоящее изобретение может комбинироваться с множеством режимов предсказания, описанных в непатентном документе (1). Определение диапазона поиска внутри каждого изображения в виде малой области, которая установлена заранее, также является эффективным, поскольку объем вычислений может быть уменьшен.
(2) Множество кадров
До сих пор число репродуцированных кадров в качестве цели согласования шаблона конкретно не устанавливалось, но установление целевого множества кадров является эффективным для повышения эффективности предсказания. В таком случае может быть включена репродуцированная область изображения внутри целевого кадра кодирования. Далее репродуцированное изображение репродуцированного кадра, которое становится целью согласования шаблона, и репродуцированная область изображения для целевого кадра кодирования совместно называются «опорным изображением опорного кадра». В этом случае опорное изображение может быть изображением высокого разрешения, которое включает в себя не только целочисленные пиксели, но и дробные пиксели, генерируемые обработкой фильтрации. Способ генерации дробных пикселей раскрыт, например, в непатентном документе (1). Номер опорного кадра, который должен быть выбран, может кодироваться в блочных единицах или единицах кадров или может выбираться по значению критериев оценивания, таких как SAD, без дополнительной информации. Если кодирование выполняется в явной форме, то исходный сигнал целевой области предсказания (в целевом блоке кодирования) и сигнал предсказания целевой области предсказания в целевом блоке кодирования), генерируемый из опорных изображений множества опорных кадров, сравниваются, и выбирается один опорный кадр.
Эта обработка кодирования может быть реализована путем добавления секции 109 выбора между секцией 108 генерации предсказания и секцией 102 вычитания в устройстве 100 видеокодирования по Фиг.1, как представлено на Фиг.18. Секция 109 выбора вычисляет значения критериев оценивания (например, SAD, MSE) с исходным сигналом целевого блока кодирования для сигналов предсказания, которые генерировала секция 108 генерации предсказания в отношении множества опорных кадров, и выбирает опорный кадр, у которого значение критериев оценивания является наименьшим. Номер выбранного опорного кадра энтропийно кодируется секцией 104 кодирования. Данная вариантная форма также может быть реализована при такой конфигурации, где обработка секции 109 выбора включена в секцию 108 генерации предсказания, поскольку может быть получен тот же самый результат обработки. В обработке декодирования секция 606 генерации предсказания генерирует сигнал предсказания с использованием опорного кадра, соответствующего номеру опорного кадра, декодированному в секции 601 декодирования, как показано на Фиг.19.
Вместо выбора одного опорного кадра и генерации сигнала предсказания целевого блока кодирования (обработка одного выбора кадра) могут быть выбраны два опорных кадра, так что сигналы предсказания целевых блоков кодирования, полученные из выбранных опорных кадров, усредняются в пиксельных блоках, и вычисляется окончательный сигнал предсказания (усредненная обработка). В этом случае кандидаты выбора сигнала предсказания целевого блока кодирования могут быть получены из одного и того же опорного кадра. Если два сигнала предсказания со смещением в один пиксель (или 1/2 пикселя, или 1/4 пикселя) друг от друга выбраны из того же самого опорного кадра, то точность вектора движения, который должен быть найден, может быть увеличена за счет интерполяционной обработки. Обработка сглаживания, которая имеет эффект удаления шумовых компонентов сигналов ошибки предсказания, в общем случае имеет хорошую совместимость с кодированием преобразования.
В случае выбора двух опорных кадров окончательный сигнал предсказания целевой области предсказания может быть вычислен путем взвешенного усреднения для каждого пикселя (обработка взвешивания и усреднения), вместо простого усреднения. Весовые коэффициенты могут быть постоянными значениями внутри блока или могут изменяться в пиксельных единицах. Способ установки весовых коэффициентов и способ кодирования не ограничены специальным образом, но могут быть применены способы, описанные в непатентном документе (1).
Другим способом является выбор нечетного числа опорных кадров и выбор центрального значения сигналов предсказания целевой области предсказания в пиксельных единицах (обработка предсказания центрального значения). Другим способом является выбор двух центральных значений сигналов предсказания целевой области предсказания в пиксельных единицах из четырех или более четных чисел кадров и вычисление значения предсказания путем усреднения или взвешенного усреднения. Такой способ предсказания с использованием центральных значений имеет эффект снижения усредненной ошибки предсказания.
Обработка усреднения, взвешенная обработка и обработка предсказания центрального значения могут быть реализованы секцией 1108 генерации предсказания, где секция 204 генерации сигнала добавлена к секции 108 генерации предсказания по Фиг.2, как показано на Фиг.20 (применимо к секции 108 генерации предсказания по Фиг.1 и к секции 605 генерации предсказания по Фиг.6). В секции 204 генерации сигнала на вход подаются сигналы предсказания целевых областей предсказания, генерированные множеством кадров, и генерируется окончательный сигнал предсказания с использованием вышеописанного способа обработки. Обработка секции 204 генерации сигнала может быть реализована с использованием информации, полученной из репродуцированного изображения или характеристических данных (например, вектора движения), принадлежащих к репродуцированному изображению (что является данными для репродуцированного изображения), так что та же самая обработка может быть выполнена на стороне декодирования.
Другим возможным способом является предоставление множества способов обработки, таких как обработка выбора одного кадра, обработка усреднения, обработка взвешенного усреднения и обработка предсказания центрального значения, и выбор способа обработки в блочных единицах или единицах кадров. В случае обработки предсказания с использованием шаблона, составленного из значений декодирования, движение, у которого значение критериев оценивания является оптимальным, не всегда минимизирует сигнал ошибки предсказания. Поэтому является эффективным выбирать соответствующий способ из множества способов обработки, где характеристики сигналов предсказания в целевых областях предсказания являются различными.
Возможным способом для выбора способа обработки является выбор на стороне кодирования способа, чтобы минимизировать сумму абсолютных значений ошибок предсказания для целевой области предсказания (или сумму квадратов ошибок предсказания) (секция выбора 109 на Фиг.18), и перенос его на сторону декодирования. Этот способ выбора может быть реализован заменой секции 108 генерации предсказания по Фиг.18 или секции 606 генерации предсказания по Фиг.19 на секцию 1108 генерации предсказания по Фиг.20. Секция 109 выбора по Фиг.18 выводит информацию о выбранном способе обработки, вместо номера выбранного опорного кадра, на секцию 104 кодирования. Этот способ также может быть реализован в конфигурации, где обработка секции 109 выбора включена в секцию 1108 генерации предсказания, поскольку получаемый результат является тем же самым.
Другим возможным способом является генерация сигнала предсказания области шаблона на основе соответствующего способа обработки и выбор способа обработки автоматически путем вычисления значения критериев оценивания (например, SAD, MSE) с сигналом генерации области шаблона. Например, в случае обработки усреднения сигнал предсказания вычисляется усреднением двух сигналов-кандидатов предсказания области шаблона в пиксельных блоках, и значение критериев оценивания вычисляется между вычисленным сигналом предсказания и репродуцированным сигналом области шаблона. Соответственно этому способу, способ обработки может быть однозначно определен с использованием информации, полученной из репродуцированного изображения или характеристических данных (например, вектора движения), принадлежащих репродуцированным данным, так что нет необходимости кодировать информацию по способу обработки.
Другим возможным способом является установка четырех коэффициентов в зависимости от комбинации значения дисперсии (TaV) сигнала в области шаблона и значения дисперсии (EvV) значений критериев оценивания для множества опорных кадров и выбор обработки усреднения, если TaV и EvV меньше, чем порог, обработки взвешенного усреднения, если только TaV меньше, чем порог, обработки предсказания центрального значения, если только EvV меньше, чем порог, и обработки выбора одного кадра, усреднения, если TaV и EvV больше, чем порог. В этом случае интенсивность характеристик области шаблона в пространственном направлении оценивается дисперсией репродуцированных сигналов области шаблона, и оценивает интенсивность характеристик области шаблона во временном направлении посредством дисперсии значений критериев оценивания. Согласно этому способу, способ обработки выбирается на основе предположения, что разность множества кандидатов сигналов предсказания в целевой области предсказания меньше, и эффект удаления шумов сигналов ошибок предсказания посредством сглаживания выше, так как значение дисперсии меньше. Такой способ автоматического выбора может быть реализован путем замены секции 108 генерации предсказания по Фиг.18 на секцию 1108 генерации предсказания по Фиг.20 и введения вышеупомянутого способа выбора в секцию 109 выбора по Фиг.18. В этом способе выбора также способ обработки может быть однозначно определен путем использования информации, полученной из репродуцированного изображения или характеристических данных (например, значения дисперсии), принадлежащих репродуцированному изображению, так что нет необходимости кодировать информацию по способу обработки. Поэтому выход из секции 109 выбора на секцию 104 кодирования может быть опущен.
В случае вышеупомянутого средства выбора с использованием значений дисперсии необходимо изменить вход в секцию 109 выбора с исходного сигнала целевого блока кодирования на репродуцированный сигнал области шаблона и добавить значения критериев оценивания множества опорных кадров к входу с секции 1108 генерации предсказания к секции 109 выбора. Этот способ может также быть реализован в конфигурации, где обработка секции 109 выбора включена в секцию 1108 генерации предсказания, поскольку результат, который должен быть получен, является тем же самым. Обработка на стороне декодирования может быть реализована путем замены секции 605 генерации предсказания на Фиг.6 комбинацией секции 1108 генерации предсказания по Фиг.20 и секцией 109 выбора по Фиг.18. Способ автоматического выбора не ограничен способом, рассмотренным здесь, но может быть реализован, если способ использует только информацию, полученную из репродуцированного изображения или характеристических данных, принадлежащих репродуцированному изображению.
(3) Конфигурация секции генерации предсказания
Секция 108 генерации предсказания состоит из секции 201 определения области шаблона, секции 202 согласования и секции 203 заполнения, но настоящее изобретение не ограничено этой конфигурацией, а может быть реализовано различными путями. Например, если репродуцированный сигнал области шаблона непосредственно вводится из репродуцированного сигнала целевого кадра кодирования в соответствии с предварительно определенной процедурой, то секция 201 определения области шаблона не является обязательной. Или, если сигнал предсказания целевой области предсказания одновременно получается, когда сигнал предсказания области шаблона получается из опорного кадра в секции 202 согласования, то сигнал предсказания может быть генерирован без секции заполнения.
(4) Размер целевого блока кодирования
В настоящем изобретении размер целевого блока кодирования составляет 8 пикселей × 8 пикселей, но поскольку изобретение может быть реализовано с другим размером блока, размер целевого блока кодирования не ограничен этим размером. Размер области шаблона тоже не ограничен размером, установленным в этом варианте осуществления. Например, вместо размера 8 пикселей × 8 пикселей, могут быть использованы различные размеры, такие как 12 пикселей × 12 пикселей, комбинируя область шаблона с целевой областью предсказания, или 10 пикселей × 10 пикселей, используя размер области шаблона, равный половине от вышеупомянутого размера. Также является эффективным изменять размеры области шаблона в блочных единицах или в единицах кадров. Обеспечение установления целевого блока кодирования и области шаблона с различными размерами также является эффективным для поддержки различных шаблонов в изображении, как показано в непатентном документе (1). В терминах внутришаблонного предсказания согласования и межшаблонного предсказания согласования, улучшения эффективности предсказания можно ожидать, если размер блока внутришаблонного предсказания согласования, у которого избыточность области шаблона и диапазон поиска обычно низки, снижается.
Предсказание согласно настоящему изобретению также может быть реализовано с использованием различных размеров блоков для целевого блока предсказания и целевого блока кодирования.
(5) Репродуцированный сигнал области шаблона
До сих пор репродуцированный сигнал области шаблона состоял из репродуцированного пикселя целевого кадра кодирования, но также могут использоваться другие репродуцированные пиксели в опорном кадре, которые известны стороне декодирования. Например, рассмотрим случай деления блока размером 8 пикселей × 8 пикселей целевой области предсказания на блоки размером 4 пикселя × 4 пикселя, и сигнал предсказания генерируется в 4 × 4-блочных единицах. Если область, объединяющая область шаблона и целевую область предсказания, является блоком размера 6 пикселей × 6 пикселей, то блок размером 4 пикселя × 4 пикселя области шаблона наверху слева блока размером 8 пикселей × 8 пикселей может содержать репродуцированные пиксели целевого кадра кодирования. Но в блоке размером 4 пикселя × 4 пикселя области шаблона наверху справа блока размером 8 пикселей × 8 пикселей, 6 пикселей × 2 пикселя на верхней стороне блока могут содержать репродуцированные пиксели целевого кадра кодирования, а 2 × 2 пикселя на левой стороне блока, которые не кодированы, заменяются 4 × 4-блочным сигналом предсказания сверху слева. Тем же путем, в случае 4 × 4-блока внизу слева 8 × 8-блока, 2 × 2 пикселей на верхней стороне блока и 4 × 4-блок внизу справа, где репродуцированные пиксели целевого кадра кодирования не кодированы для всех пикселей области шаблона, заменяются сигналами предсказания. Так же до сих пор репродуцированный сигнал области шаблона создавался получением репродуцированных пикселей блока, смежного с целевым блоком кодирования, однако репродуцированный сигнал области шаблона может генерироваться с использованием фильтра для удаления шума для репродуцированного сигнала. Например, если изображение имеет значительный шум, обнаружение движения, не затронутое шумом, может быть реализовано путем выполнения обработки фильтрации над репродуцированным сигналом области шаблона и опорным изображением.
(6) Значение критериев оценивания
До сих пор значение критериев оценивания для генерирования сигнала предсказания в целевой области путем согласования шаблона представляло собой сумму абсолютных разностей (SAD) между сигналом предсказания в целевой области и целевым сигналом, или среднеквадратичную ошибку (MSE), однако оно не ограничено этим. Например, значение, учитывающее размер вектора разностного движения, также может быть применено к значению критериев оценивания настоящего изобретения, как раскрыто в непатентном документе (2): T. Weigand et al., “Rate-constrained Coder Control and Comparison of Video Coding Standards”, IEEE Trans. Circuits and Systems for Video Technology, Vol.13, No.7, July 2003, pp.688-703.
Также является эффективным взвешивать абсолютное разностное значение или квадратичную ошибку каждого пикселя. Например, если значением оценивания является SAD, то возможен способ присвоения веса, такого как 4, к абсолютному разностному значению пикселя на границе области шаблона и области предсказания и уменьшения веса, такого как 3, 2, 1 по мере удаления от границы. Путем присвоения приоритета пикселям ближе к границе таким способом можно ожидать улучшения эффективности предсказания.
(7) Конфигурация секции инверсного преобразования
На Фиг.1 входом секции 105 инверсного преобразования является выход секции 103 преобразования, но может также быть выход секции 104 кодирования. В этом случае обработка секции 601 кодирования по Фиг.6 выполняется перед обработкой секции 105 инверсного преобразования. Настоящее изобретение также может быть реализовано путем интеграции обработок устройства видеокодирования и устройства видеодекодирования. Иными словами, также возможна конфигурация, где выход секции 104 кодирования обрабатывается секцией 601 декодирования по Фиг.6, и декодированное изображение вводится в секцию 107 хранения.
Второй вариант осуществления
Конфигурации устройств устройства видеокодирования и устройства видеодекодирования согласно второму варианту осуществления являются теми же самыми, что и конфигурации устройств согласно первому варианту осуществления, за исключением конфигурации секции генерации предсказания. Отличия секции генерации предсказания настоящего варианта осуществления от секции 105, 605 генерации предсказания первого варианта осуществления описаны ниже.
Как показано на Фиг.8, секция 800 генерации предсказания настоящего варианта осуществления состоит из секции 801 принятия решения, секции 802 определения области шаблона, секции 802 согласования и секции 804 заполнения.
Секция 801 принятия решения является средством оценивания для сравнения репродуцированного сигнала области шаблона и репродуцированного изображения, сохраненного в секции 107, 604 хранения, и оценивания пространственной непрерывности сигнала области, являющейся целью кодирования или декодирования (целевой блок предсказания, основанный на результате сжатия). Пространственная непрерывность является индексом для указания степени согласования характеристик движения, таких как направление и размер, в пространстве. Иными словами, если характеристики движения отличаются между верхней половиной и нижней половиной области, то не имеется пространственной непрерывности. Секция 801 принятия решения также является средством установки для деления целевой области кодирования или декодирования на основе оцененной пространственной непрерывности изображения и установки этой области, полученной путем деления, в качестве новой целевой области кодирования или декодирования (целевой области предсказания, области заполнения), а также установки области шаблона для этой новой области кодирования или декодирования. Секция 801 принятия решения анализирует репродуцированное изображение, сохраненное в секции 107, 604 хранения, определяет параметры предсказания, включая размер области шаблона и размер целевой области предсказания, и выводит эту информацию на секцию 802 определения области шаблона и секцию 804 заполнения. Конкретный способ определения параметров предсказания описан ниже.
Секция 802 определения области шаблона является составным элементом средства поиска для установки области шаблона, подлежащей использованию для генерации сигнала предсказания и изображения этой области на основе информации о размере области шаблона, которая введена из секции 801 принятия решения. Секция 802 определения области шаблона соответствует секции 201 определения области шаблона согласно первому варианту осуществления и имеет сходные функции.
Секция 803 согласования является средством поиска для выполнения согласования шаблона в репродуцированном изображении, сохраненном в секции 107, 604 хранения как область поиска, с использованием изображения области шаблона, которая установлена секцией 802 определения области шаблона, и поиска области, в которой корреляция с группой пикселей области шаблона является наивысшей в области поиска. Секция 803 согласования соответствует секции 202 согласования согласно первому варианту осуществления и имеет сходные функции.
Секция 804 заполнения является средством определения сигнала предсказания для установки и определения сигнала предсказания, имеющего тот же размер, что и целевой блок предсказания, из репродуцированного изображения, на основе области (области высокой корреляции), найденной секцией 803 согласования, и позиционного соотношения между целевым блоком предсказания и областью шаблона. Размер целевого блока предсказания в этом случае является тем, который был установлен секцией 801 принятия решения. Секция 804 заполнения соответствует секции 203 заполнения согласно первому варианту осуществления и имеет сходные функции.
Далее со ссылками на Фиг.14 и 15 будет описано, каким образом определяется размер шаблона и размер целевой области предсказания в секции 801 принятия решения. Для определения размера шаблона и размера целевой области предсказания используются репродуцированные пиксели, смежные с целевым блоком предсказания. На Фиг.14 показаны пиксели целевого блока 1401 предсказания и репродуцированные пиксели 1402 в смежной области. Как показано на Фиг.14(а) и (b), подготавливаются четыре области: область А, которая покрывает всю область 1402, смежную с целевым блоком 1401 предсказания, и области В, С и D, которые делят область 1402 и покрывают часть области 1402, соответственно (области В, С и D не перекрываются друг с другом, и если они объединяются, то становятся областью 1402).
A
B
C
D
A
B
C
D
A
A
B
C
D
Затем выполняется согласование шаблона для репродуцированного изображения, сохраненного в секции хранения, где областями шаблона являются области А, В, С и D, и соответственно определяется высококоррелированная область. В этом случае используется, например, SAD в качестве значения корреляции. SAD для каждой области А, В, С и D определяется как SAD, SAD, SAD и SAD, и SAD сравнивается с (SAD+ SAD + SAD). Если SAD намного больше, то оценивается, что нет пространственной непрерывности в области А, и также нет пространственной непрерывности в целевом блоке 1401 предсказания. Иными словами, как показано на Фиг.15, оценивается, что область 1501а, которая является высококоррелированной с областью А, и области 1501b, 1501c и 1501d, которые являются высококоррелированными с областями В, С и D, независимо существуют в области 1501 репродуцированного изображения. На основе этого оценивания принимается решение, что предсказание не действует удовлетворительным образом при согласовании шаблона в пространстве А (диссоциация определенного сигнала предсказания и целевого изображения кодирования или декодирования высока). Принятие решения, что SAD намного больше, чем SAD+ SAD + SAD, может быть выполнено путем установки порога заранее. Как только такое принятие решения осуществлено, размер области шаблона и размер целевой области предсказания устанавливаются как меньший, чем блок, путем дальнейшего деления блока. Размер целевой области предсказания в этом случае может быть размером соответственно делению областей В, С и D. Размер шаблона является размером, соответствующим размеру целевой области предсказания.
A
B
C
D
Если разность между SAD и (SAD+ SAD + SAD) мала, то оценивается, что имеет место пространственная непрерывность в области А, а также пространственная непрерывность в целевом блоке 1401 предсказания. На основе этого оценивания принимается решение, что согласование шаблона посредством области А является эффективным, и размер блока используется для целевой области предсказания (предполагается, что область предсказания является областью, где блок не делится). Области, делящие область 1402, смежную с целевым блоком 1401 предсказания, который использовался для принятия вышеуказанного решения, являются не только такими шаблонами, как области В, С и D, показанные на Фиг.14(b), но могут быть далее разделенными областями, как показано на Фиг.14(с).
В случае предсказания, основанного на согласовании шаблона, как в случае настоящего изобретения, точное предсказание не может быть выполнено, если только предсказание не основывается на векторе движения. Поэтому ошибки предсказания следует избегать в максимально возможной степени. Ошибка предсказания легко возникает, если размер области шаблона мал. В части, где движение является мелким, и пространственная непрерывность не существует, с другой стороны, мелкое движение не может быть обработано, и ошибки предсказания увеличиваются. Поэтому эффективным является улучшение вероятности в согласовании мелкого движения путем уменьшения размера области шаблона и размера целевой области предсказания, как показано в способе, соответствующем настоящему изобретению.
Переход предсказания, когда размер области шаблона и размер целевой области предсказания изменяются, будет описан со ссылкой на Фиг.9. Если пространственная непрерывность существует в области, смежной с целевым блоком 901 предсказания, и размер целевой области предсказания является полной областью целевого блока 901 предсказания, то обработка выполняется однократным согласованием шаблона, как в первом варианте осуществления. Например, будет описан случай, когда целевой блок 901 предсказания разделен на четыре области: область 901а, 901b, 901с и 901d, чтобы уменьшить размер целевой области предсказания, и размер области шаблона также уменьшается, как показано на Фиг.9. Предполагается, что области на левой и верхней стороне целевого блока 901 предсказания являются областями репродуцированного изображения.
Сначала, как показано на Фиг.9(а), область на левой и верхней стороне 902а верхней левой области 901а целевого блока 901 предсказания устанавливается на область шаблона, и сигнал предсказания устанавливается путем согласования шаблона. Затем, как показано на Фиг.9(b), верхняя область 902b правой области 901b области 901а устанавливается на область шаблона, и сигнал предсказания устанавливается путем согласования шаблона. Затем, как показано на Фиг.9(с), левая область 902с нижней области 901с области 901а, для которой сигнал предсказания установлен первым, устанавливается на область шаблона, и сигнал предсказания устанавливается путем согласования шаблона. Затем, как показано на Фиг.9(d), область на левой и верхней стороне 902b остальной области, которой является нижняя правая область 901d, включая области 901а, 901b и 901с, устанавливается на область шаблона, и сигнал предсказания устанавливается путем согласования шаблона, используя сигнал предсказания как целевой сигнал области шаблона. При этом сигнал предсказания устанавливается для всех областей целевого блока 901 предсказания, и кодирование и декодирование становятся возможными.
Для изменения размера области шаблона и размера целевой области предсказания область может быть разделена только по одному из вертикального или горизонтального направления, как показано на Фиг.9(е) и (f), вместо обоих, вертикального и горизонтального, направлений, как показано на Фиг.9(а)-(d). Например, если области высокой корреляции областей В, С, D и Е включены в область высокой корреляции в области А, и только область высокой корреляции в области F не включена на Фиг.14(b), то лучше разделить в вертикальном направлении, как показано на Фиг.9(е) и (f). Это объясняется тем, что может быть принято решение, что пространственная непрерывность нарушена между верхней половиной и нижней половиной целевого блока предсказания.
В этом случае, как показано на Фиг.9(е), области на левой и верхней стороне 902е верхней половинной области 901е целевого блока 901 предсказания устанавливаются на область шаблона, и сигнал предсказания устанавливается путем согласования шаблона. Затем, как показано на Фиг.9(f), левая область 902f нижней области 901f области 901e устанавливается на область шаблона, и сигнал предсказания устанавливается путем согласования шаблона. При этом сигнал предсказания устанавливается для всех областей целевого блока 901 предсказания, и кодирование и декодирования становятся возможными.
Ниже, со ссылкой на блок-схему, показанную на Фиг.10, описана обработка кодирования (способ видеокодирования) в устройстве видеокодирования согласно настоящему варианту осуществления.
Когда целевые видеоданные кодирования вводятся в устройство видеокодирования, каждое изображение кадра, составляющее видео, вводится в секцию 101 деления изображения. Изображение кадра, которое было введено, делится на множество блоков предварительно определенного размера с помощью секции 101 деления области (S1001). Обработка после этого проводится в блочных единицах. Блок вводится в секцию генерации предсказания и секцию 102 вычитания как изображение целевой области кодирования.
Затем сигнал предсказания целевого блока кодирования генерируется секцией 800 генерации предсказания следующим образом. Сначала, как упомянуто выше, секция 801 принятия решения определяет параметр предсказания, который должен использоваться для целевого блока кодирования, с использованием репродуцированных пикселей, смежных с целевым блоком кодирования (этап оценивания и этап принятия решения - S1002). Определенный параметр предсказания вводится в секцию 802 определения области шаблона. Основываясь на параметре предсказания, который был установлен, секция 802 определения области шаблона устанавливает целевую область кодирования и устанавливает репродуцированную группу пикселей, смежную с этой областью, на области репродуцированных пикселей (область шаблона) в качестве шаблона (S1003). В некоторых случаях целевая область кодирования, которая установлена здесь, может быть результатом деления целевого блока кодирования, как упомянуто выше. Затем секция 803 согласования выполняет согласование шаблона для репродуцированного изображения в том же или другом кадре из целевого блока кодировании, и отыскивается область, высококоррелированная с группой пикселей области шаблона (S1004). Затем секция 804 заполнения устанавливает область того же размера, что и целевой блок кодирования, которая является смежной с областью высокой корреляции, полученной согласованием шаблона, в предварительно определенном позиционном соотношении в качестве сигнала предсказания (S1005).
Затем принимается решение, установлен ли сигнал предсказания для всех областей целевого блока кодирования (S1006). Если сигнал предсказания не установлен для всех областей, то последовательность этапов обработки S1003 - S1005 повторяется до тех пор, пока сигнал предсказания не будет установлен для всех областей целевого блока кодирования. Вышеуказанное принятие решения может быть выполнено одним из вышеуказанных компонентных элементов или может быть выполнено средством, которое предназначено для управления обработкой кодирования в устройстве видеокодирования.
Обработка на последующих этапах (S1007 - S1013) является той же самой, что и соответствующая обработка на этапах (S505 - S511) в первом варианте осуществления.
Как описано выше, в соответствии с устройством видеокодирования, соответствующим настоящему изобретению, межкадровое предсказание может выполняться без использования вектора движения, с использованием кодированного репродуцированного изображения, когда выполняется межкадровое предсказание, и поэтому обеспечивается эффективное кодирование тем же методом, что и в первом варианте осуществления. Поскольку можно выбрать размер области сигнала предсказания, основываясь на пространственной непрерывности репродуцированного сигнала, эффективность кодирования повышается, даже для кодирования данных, в которых изменение величины движения является значительным.
Далее со ссылкой на блок-схему, представленную на Фиг.11, описывается обработка декодирования (способ видеодекодирования) в устройстве видеодекодирования, согласно настоящему изобретению. Предполагается, что сжатые данные кодирования, подлежащие декодированию в устройстве видеодекодирования, соответствующем настоящему варианту осуществления, были кодированы устройством видеокодирования, соответствующим настоящему варианту осуществления.
Когда целевые сжатые видеоданные кодирования, подлежащие декодированию, вводятся в устройство видеодекодирования, декодирование выполняется секцией 601 декодирования (S1101). После декодирования данные преобразования выводятся в блочных единицах. Эти данные преобразования вводятся в секцию 602 инверсного преобразования секцией 601 декодирования. Положение целевого блока декодирования зависит от порядка кодирования.
Затем сигнал предсказания целевого блока декодирования генерируется секцией 800 генерации предсказания следующим образом. Сначала секция 801 принятия решения определяет параметр предсказания для использования целевым блоком декодирования, используя репродуцированное изображение, смежное с целевым блоком декодирования, как описано выше (этап оценивания и этап принятия решения - S1102). Определенный параметр предсказания вводится в секцию 802 определения области шаблона. Основываясь на параметре предсказания, который был установлен, секция 802 определения области шаблона устанавливает целевую область декодирования и устанавливает репродуцированную группу пикселей, смежную с этой областью, в качестве шаблона (S1103). В некоторых случаях целевая область декодирования, которая установлена здесь, может быть результатом деления целевого блока кодирования, как упомянуто выше. Затем секция 803 согласования выполняет согласование шаблона для репродуцированного изображения в том же или другом кадре из целевого блока кодирования, и отыскивается область, высококоррелированная с репродуцированным сигналом области шаблона (S1104). Затем секция 804 заполнения устанавливает область того же размера, что и целевой блок декодирования, которая является смежной с областью высокой корреляции, полученной согласованием шаблона, в предварительно определенном позиционном соотношении в качестве сигнала предсказания (S1105).
Затем принимается решение, установлен ли сигнал предсказания для всех областей целевого блока декодирования (S1106). Если сигнал предсказания не установлен для всех областей, то последовательность этапов обработки S1103 - S1105 повторяется до тех пор, пока сигнал предсказания не будет установлен для всех областей целевого блока декодирования. Вышеуказанное принятие решения может быть выполнено одним из вышеуказанных компонентных элементов или может быть выполнено средством, которое предназначено для управления обработкой кодирования в устройстве видеодекодирования.
Обработка на последующих этапах (S1107 - S1110) является той же самой, что и соответствующая обработка на этапах (S705 - S708) в первом варианте осуществления. Последовательность обработки на этапах S1102 - S1106 и обработка на этапе S1107 может быть в обратной последовательности, при этом требуется только, чтобы эта обработка выполнялась перед обработкой на этапе S1108 или позже, как в первом варианте осуществления.
Как описано выше, в соответствии с устройством видеодекодирования, соответствующим настоящему варианту осуществления, сигнал предсказания определяется, и видео может декодироваться подобно соответствующим операциям в устройстве видеокодирования согласно настоящему варианту осуществления. Иными словами, согласно устройству видеодекодирования, согласно настоящему варианту осуществления, видеоданные, эффективно кодированные в устройстве видеокодирования согласно настоящему варианту осуществления, могут быть корректно декодированы для генерации репродуцированного изображения.
Для настоящего варианта осуществления возможны следующие вариантные формы. Изложенные ниже вариантные формы являются вариантными формами для устройства видеокодирования и устройства видеодекодирования, но также могут быть реализованы тем же способом для обработки видеокодирования и обработки видеодекодирования.
(1) Разделение области шаблона и целевой области предсказания
В приведенном выше описании секция 801 принятия решения на Фиг.8 одновременно определяет размер и форму целевой области предсказания и области шаблона, но размер и форма могут быть фиксированными. Поэтому настоящее изобретение может быть применено к случаю, когда размер и форма целевой области предсказания являются фиксированными, а размер или форма области и шаблона адаптивным образом переключаются. В этом случае выход из секции 801 принятия решения в секцию 804 заполнения не является необходимым. Например, на Фиг.14 можно выбрать шаблон для целевой области 1401 предсказания из области А, области В, области С и области D, показанным на Фиг.14(а) и (b). Шаблон для целевой области 1401 предсказания предпочтительно имеет непрерывность шаблона с целевой областью 1401 предсказания, и количество пикселей, составляющих непрерывный шаблон, является настолько большим, насколько возможно. Поэтому область А нормально является желательной, но если шаблон не является непрерывным в некотором направлении, то должен использоваться шаблон меньшего размера. Обработка принятия решения в секции 801 принятия решения не ограничена вышеописанным способом. Возможным способом является, например, сравнение сигнала предсказания области шаблона путем согласования шаблона с сигналом предсказания его области, где его область шаблона была действительно кодирована, и выбор формы и размера шаблона, у которого усредненная абсолютная разность мала. Вместо сигнала предсказания области шаблона путем согласования шаблона при кодировании репродуцированный сигнал сигнала предсказания области шаблона может репродуцироваться снова с использованием репродуцированного сигнала целевого блока кодирования, которому принадлежит область шаблона. Другим возможным способом является выбор формы и размера шаблона, у которого усредненная абсолютная разность сигнала предсказания области шаблона и целевого сигнала (репродуцированного сигнала) мала.
Способ сохранения непрерывности движения, а не шаблона, также является эффективным. Например, вычисляется разность вектора движения, когда область А определяется в качестве области шаблона, и вектора движения смежного блока или предсказанного вектора движения, вычисленного из смежного блока. И если разность векторов движения меньше, чем предварительно определенный порог, то полученный вектор движения рассматривается как вектор движения области предсказания. Если разность векторов движения больше, чем предварительно определенный порог, то вектор движения определяется для другой формы шаблона (например, областей В, С и D на Фиг.14(b) или областей В, D и F на Фиг.14(c)). И для каждой области шаблона вектор движения, когда пиксели в области были кодированы, и обнаруженный вектор движения сравниваются, и вектор движения, у которого разность мала, выбирается в качестве вектора движения предсказанной целевой области. Вместо вектора движения, когда пиксели в области были кодированы, репродуцированный сигнал целевого блока кодирования, которому принадлежит эта область, может быть использован вновь для обнаружения вектора движения. Любой из этих способов может быть реализован с использованием репродуцированного сигнала (информации в репродуцированном сигнале) или информации, выведенной из характеристических данных (например, вектора движения), принадлежащих репродуцированному сигналу. Также возможно сравнивать размеры векторов движения, обнаруженных с множеством форм шаблона, и определять форму шаблона и размер области предсказания. Также возможно сравнивать размеры векторов движения смежных блоков и определять форму шаблона и размер области предсказания.
Форма и размер шаблона как кандидата не ограничены теми, которые генерируются путем деления шаблона, как показано на Фиг.14. Например, в случае размера 8 пикселей × 8 пикселей, выбор размера, когда область шаблона и целевая область предсказания комбинируются, из 12 пикселей × 12 пикселей, 10 пикселей × 10 пикселей и 14 пикселей × 14 пикселей, включен в настоящую вариантную форму.
(2) Определение размеров области шаблона и целевой области предсказания
В вышеизложенном описании секция 801 принятия решения на Фиг.8 определяет размеры и формы области шаблона и целевой области предсказания, но информация об оптимальных размерах и формах, о которой принимается решение с использованием исходного сигнала целевой области предсказания (целевого блока кодирования), может быть кодирована. Этот способ определения может быть реализован, например, путем вывода сигналов предсказания целевых областей предсказания, которые секция 108 генерирования предсказания генерировала с использованием множества типов шаблонов, выбирая размер и форму шаблона, которые делают значение критериев оценивания (например, SAD, MSE) минимальным, секцией выбора и энтропийного кодирования этой информации секцией 104 кодирования, как показано на Фиг.18. Способ определения также может быть реализован конфигурацией, где обработка секции 109 выбора включена в секцию 108 генерации предсказания.
В некоторых случаях целевой сигнал области шаблона может не существовать, в зависимости от положения целевой области предсказания. В этом случае шаблон генерируется с использованием только существующих целевых сигналов. Например, область С, показанная на Фиг.14(b), становится областью шаблона на левом конце изображения, а область D становится областью шаблона на верхнем конце изображения.
Третий вариант осуществления
В случае предсказания движения согласно настоящему изобретению, которое использует шаблон, состоящий из репродуцированного сигнала, движение, при котором значение критериев оценивания разностного сигнала между целевым сигналом и сигналом предсказания области шаблона становится минимальным, детектируется в диапазоне поиска. Поэтому если целевой сигнал (источник) области шаблона имеет отличительные характеристики, то соответствующее предсказание движения может быть выполнено, основываясь на этих характеристиках. Однако если отличительных характеристик не имеется в целевом сигнале области шаблона, например, как в случае ровной области, то возможность обнаружения движения, которое отличается от действительного движения, становится выше, даже если значение критериев оценивания минимально. В этом случае, когда разность между сигналом предсказания и целевым сигналом в целевой области предсказания увеличивается, соответствующее количество битов кодирования также увеличивается. С другой стороны, в ровной области, где нет отличительных характеристик, сигнал имеет меньше высокочастотных компонентов, и пространственное сходство между сигналом и версией более низкого разрешения или прореженной версией упомянутого сигнала становится высоким. Поэтому, даже если разрешение целевого сигнала в целевой области предсказания снижается (или целевой сигнал в целевой области предсказания подвергается децимации (прореживанию)), сокращенный сигнал, который является прореженной версией целевого сигнала, кодируется, а на стороне декодирования декодированный сокращенный сигнал увеличивается до исходного разрешения простым способом, ухудшения относительно исходного сигнала можно избежать. Поэтому в настоящем варианте осуществления показан способ кодирования разности для ровной области, где разрешения целевого сигнала и сигнала предсказания целевой области предсказания снижаются, и разностный сигнал низкого разрешения кодируется (способ сокращения целевого блока кодирования и блока предсказания и кодирования сокращенного разностного блока).
В настоящем варианте осуществления для удобства блок, состоящий из сигнала предсказания, упоминается как блок предсказания, блок, состоящий из разностного блока, упоминается как разностный блок, и блок, состоящий из репродуцированного сигнала, упоминается как декодированный блок. Целевой блок кодирования относится к блоку, состоящему из исходного сигнала целевого кадра кодирования видеоданных.
На Фиг.21 показано устройство 2100 видеокодирования, соответствующее третьему варианту осуществления. Устройство 2100 видеокодирования может быть реализовано путем введения секции 2110 сокращения (обобщенный термин для секции 2110-1 сокращения и секции 2110-2 сокращения) и секции 2111 увеличения в устройство 100 видеокодирования по Фиг.1. Функции секции 2102 вычитания, секции 2103 преобразования, секции 2104 кодирования, секции 2105 инверсного преобразования и секции 2106 суммирования те же самые, что и функции секции 102 вычитания, секции 103 преобразования, секции 104 кодирования, секции 105 инверсного преобразования и секции 106 суммирования на Фиг.1, соответственно, только размер блока, подлежащего обработке, меньше (например, 4 пикселя × 4 пикселя). Что касается секции 2103 преобразования и секции 2105 инверсного преобразования, то секция 103 преобразования и секция 105 инверсного преобразования по Фиг.1 могут также обрабатывать блоки в единицах 4 пикселя × 4 пикселя, как показано в непатентном документе (1). В этом случае разница секции 103 преобразования и секции 105 инверсного преобразования по Фиг.1 и секции 2103 преобразования и секции 2105 инверсного преобразования по Фиг.21 состоит в том, что число блоков, подлежащих обработке, снижается с 4 до 1.
Секция 2110-1 сокращения и секция 2110-2 сокращения снижают разрешение целевого блока кодирования, полученного из секции 101 деления области, и разрешение блока предсказания, полученного из секции 108 генерации предсказания, до сокращенного целевого блока кодирования и сокращенного блока предсказания, соответственно, и выводят их на секцию 2102 вычитания. Секция 2102 вычитания вычисляет разность двух сокращенных блоков в пиксельных единицах и выводит сокращенный разностный блок на секцию 2103 преобразования. Секция 2103 преобразования выполняет обработку преобразования (и квантования), и данные преобразования (данные квантования) кодируются секцией 2104 кодирования. В то же самое время секция 2105 инверсного преобразования выполняет (инверсное квантование и) инверсное преобразование над данными преобразования (данными квантования) и выводит декодированный сокращенный разностный блок на секцию 2106 суммирования. Секция 2106 суммирования суммирует декодированный сокращенный разностный блок и сокращенный блок предсказания в пиксельных единицах и генерирует декодированный сокращенный блок. Секция 2111 увеличения увеличивает декодированный сокращенный блок в декодированный блок того же размера, что и целевой блок кодирования, и выводит результат на секцию 107 хранения. Обработка секции 2110 сокращения и секции 2111 увеличения описана ниже со ссылкой на Фиг.23.
На Фиг.22 показано устройство 2200 видеодекодирования, соответствующее третьему варианту осуществления. Устройство 2001 видеокодирования может быть реализовано путем введения секции 2207 сокращения и секции 2208 увеличения в устройство 600 видеодекодирования по Фиг.6. Обработка секции 2207 сокращения и секции 2208 увеличения имеет те же самые функции, что и для секции 2110 сокращения и секции 2111 увеличения по Фиг.21, соответственно. Функции секции 2201 декодирования, секции 2202 инверсного преобразования и секции 2203 суммирования те же самые, что и функции секции 601 декодирования, секции 602 инверсного преобразования и секции 603 суммирования на Фиг.6, соответственно, только размер блока, подлежащего обработке, меньше (например, 4 пикселя × 4 пикселя). Что касается секции инверсного преобразования, то секция 602 инверсного преобразования по Фиг.6 может также обрабатывать блоки в единицах 4 пикселя × 4 пикселя, как показано в непатентном документе (1), точно так, как в устройстве кодирования по Фиг.1. В этом случае разница секции 602 инверсного преобразования по Фиг.6 и секции 2202 инверсного преобразования по Фиг.22 состоит в том, что число блоков, подлежащих обработке, снижается с 4 до 1.
Секция 2207 сокращения снижает разрешение блока предсказания, полученного из секции 605 генерации предсказания, до сокращенного блока предсказания и выводят его на секцию 2203 суммирования. Секция 2203 суммирования суммирует декодированный сокращенный блок, декодированный путем обработки секции 2201 декодирования, секции 2202 инверсного преобразования, и сокращенный блок предсказания в пиксельных единицах и генерирует декодированный сокращенный блок. Аналогично случаю устройства кодирования по Фиг.22, секция 2202 инверсного преобразования может включать в себя обработку квантования. Секция 2208 увеличения увеличивает декодированный сокращенный блок в декодированный блок того же размера, что и блок декодирования, и выводит результат на секцию 604 хранения.
На Фиг.23 показана обработка сокращения/увеличения в секции 2110, 2207 сокращения и секции 2111, 2208 увеличения. Блок 2301 показывает блок перед сокращением. Обработка 2304 описывает способ генерации пикселей над блоком сокращения при обработке сокращения. j, k, m и n являются пикселями в блоке сокращения, где генерируется пиксель Р, который является пикселем в блоке 2301. В обработке 2304 обработка усреднения пикселей выполняется в 4-пиксельных единицах, и вычисляется пиксель в блоке сокращения. Блок 2302 показывает сокращенный блок, полученный обработкой сокращения.
Обработка 2305 показывает способ генерации пикселей в увеличенном блоке в обработке увеличения. Пиксели А-D являются пикселями в блоке 2302, а пиксели a-i являются пикселями в увеличенном изображении. В обработке 2305 выполняется обработка интерполяции/экстраполяции пикселей с использованием различных методов в зависимости от положения пикселей. Для пикселя а, где пикселем в смежном репродуцированном блоке является только пиксель А, пиксель А непосредственно используется в качестве пикселя а. Тем же путем пиксель, показанный белым кружком в блоке 2303, вычисляется копированием смежного пикселя на сокращенный блок. Для пикселей b-е, в смежном сокращенном блоке существует два пикселя. Поэтому эти пиксели вычисляются путем экстраполяции с использованием двух смежных пикселей на сокращенном блоке. Тем же путем пиксели, показанные черным квадратом в блоке 2303, вычисляются путем экстраполяции с использованием двух смежных пикселей на сокращенном блоке. Для пикселей f-i четыре пикселя существуют в смежном сокращенном блоке. Поэтому эти пиксели вычисляются путем обработки линейной интерполяции с использованием четырех смежных пикселей на сокращенном блоке. Тем же путем пиксели, показанные черным кружком в блоке 2303, вычисляются путем обработки линейной интерполяции с использованием четырех смежных пикселей на сокращенном блоке.
На Фиг.24 и Фиг.25 показана обработка видеокодирования и обработка видеодекодирования для реализации третьего варианта осуществления соответственно. Фиг.24 и Фиг.25 соответствуют Фиг.5 и Фиг.7 первого варианта осуществления, соответственно. На Фиг.24 и Фиг.25 обработка определения области шаблона (S502, S702), обработка согласования (S503, S703), обработка определения сигнала предсказания (S504) и обработка генерации сигнала предсказания (S704) на Фиг.5 и на Фиг.7 совместно упоминаются как обработка генерации сигнала предсказания (S2404, S2504). Этапы S2401, S2405, S2406, S2407, S2408, S2410 и S2411 на Фиг.24 соответствуют этапам S501, S505, S506, S507, S508, S510 и S511 на Фиг.5, соответственно. Эти этапы обработки, по существу, те же самые, соответственно, только размер блока, подлежащего обработке, отличается, поэтому их описание здесь опущено. Этапы S2501, S2505, S2507 и S2508 на Фиг.25 соответствуют этапам S701, S705, S707 и S708 на Фиг.7, соответственно. Эти этапы обработки, по существу, те же самые, соответственно, только размер блока, подлежащего обработке, отличается, поэтому их описание здесь опущено.
При обработке сокращения блока кодирования на этапе S2412 на Фиг.24 секция 2110-1 сокращения сокращает целевой блок кодирования, который должен вводится в секцию 101 деления области, до сокращенного целевого блока кодирования и выводит сокращенный блок на секцию 2102 вычитания. При обработке сокращения блока предсказания на этапе S2313 секция 2110-2 сокращения сокращает блок предсказания, который введен из секции 108 генерации предсказания, до сокращенного блока предсказания и выводит сокращенный блок на секцию 2102 вычитания и секцию 2106 суммирования. Путем последующей обработки на этапах S2405-S2408 выполняются обработки кодирования и декодирования сокращенного разностного блока и генерируется декодированный сокращенный разностный блок. При обработке генерации декодированного сокращенного блока на этапе S2409 секция 2106 суммирования суммирует сокращенный блок предсказания и декодированный сокращенный разностный блок в пиксельных единицах и генерирует декодированный сокращенный блок. При обработке увеличения на этапе S2414 секция 2111 увеличения увеличивает декодированный сокращенный блок до декодированного блока.
При обработке сокращения предсказания на этапе S2509 на Фиг.25 секция 2207 сокращения сокращает блок предсказания, который введен из секции 605 генерации предсказания, до сокращенного блока предсказания и выводит сокращенный блок на секцию 2203 суммирования. На этапе S2505 выполняется обработка декодирования сокращенного разностного блока и генерируется декодированный сокращенный разностный блок. При обработке генерации декодированного сокращенного блока на этапе S2506 секция 2203 суммирования суммирует сокращенный блок предсказания и декодированный сокращенный разностный блок в пиксельных единицах и генерирует декодированный сокращенный блок. При обработке увеличения на этапе S2510 секция 2208 увеличения увеличивает декодированный сокращенный блок до декодированного блока.
Для настоящего варианта осуществления возможны следующие вариантные формы. Изложенные ниже вариантные формы являются вариантными формами для устройства видеокодирования и устройства видеодекодирования, но также могут быть реализованы тем же способом для обработки видеокодирования и обработки видеодекодирования.
(1) Способ предсказания с использованием согласования шаблона
В настоящем варианте осуществления способ согласования шаблона в секции генерации предсказания не ограничен способом по Фиг.2. Иными словами, в настоящем варианте осуществления и вариантных формах может быть использован способ генерации сигнала предсказания с использованием согласования шаблона, описанного в первом варианте осуществления, втором варианте осуществления и их вариантных формах. Может быть добавлена секция выбора, как на Фиг.18 и 19, и секция 108, 605 генерации предсказания может быть заменена на секцию 1108 генерации предсказания, показанную на Фиг.20. Секции 108, 605 генерации предсказания могут быть также заменены на секцию 800 генерации предсказания, показанную на Фиг.8, поскольку поток ввода/вывода сигнала является тем же самым.
До сих пор способ генерации блока предсказания из репродуцированных видеоданных, сохраненных в секции 107, 604 хранения, использующий шаблон, был использован в качестве способа предсказания с использованием согласования шаблона. Однако также возможен способ генерации сигнала предсказания из репродуцированного сигнала шаблона посредством предварительно определенной процедуры, такой как внутриблочное предсказание, описанное в непатентном документе (1). Этот способ также эффективен, поскольку обработка кодирования/декодирования с использованием обработки сокращения/увеличения согласно настоящему варианту осуществления, имеет эффект уменьшения количества битов кодирования.
На Фиг.36 представлена конфигурация секции генерации предсказания согласно настоящей вариантой форме. На Фиг.36 показан пример внутриблочного предсказания, которое генерирует сигнал предсказания из сигнала шаблона. Способ генерации сигнала предсказания из репродуцированного сигнала шаблона может быть реализован путем замены секции 108 генерации предсказания согласно Фиг.21 и Фиг.22 на секцию 3608 генерации предсказания согласно Фиг.36. Секция 3602 определения области шаблона конструирует шаблон посредством 13 репродуцированных пикселей, смежных с целевым блоком кодирования. Секция 3603 заполнения генерирует блок предсказания из пикселей в шаблоне способом, показанным в обработке 3711 на Фиг.37. На Фиг.37 показано 9 типов способов заполнения, но настоящее изобретение может быть реализовано путем определения заранее, по меньшей мере, одного типа способа из этих 9 типов. Один тип способа может быть выбран из множества способов заполнения в секции заполнения, и блок предсказания, генерированный выбранным способом заполнения, может быть выведен. Способ выбора способа заполнения в этом случае не ограничен в настоящем изобретении. Информация о выбранном способе заполнения может быть передана, или для определения способа могут быть использованы только данные, которые совместно используются кодером (устройством видеокодирования) и декодером (устройством видеодекодирования).
Форма шаблона не ограничена показанной на Фиг.37. Настоящее изобретение может быть реализовано не только посредством шаблона, состоящего из пикселей на границе блока, но и шаблона, состоящего из пикселей, удаленных от границы шаблона, только если пиксели находятся в репродуцированной области кадра, к которому принадлежит целевой блок кодирования.
(2) Конфигурация секции сокращения/увеличения
В устройстве 2100 видеокодирования, показанном на Фиг.21, и в устройстве 2200 видеодекодирования, показанном на Фиг.22, декодированный блок генерируется путем сокращения разрешения целевого блока кодирования и блока предсказания для кодирования их разности и увеличения декодированного сокращенного блока. Однако снижение числа битов кодирования с использованием обработки сокращения/увеличения может также быть реализовано в другой конфигурации и не ограничено этим способом. Фиг.32 и 34 показывают другой пример устройства видеокодирования, а Фиг.33 и 35 показывают другой пример устройства видеодекодирования.
В устройстве 3200 видеокодирования, показанном на Фиг.32, не блок предсказания, а разностный блок, генерированный путем вычитания блока предсказания из целевого блока кодирования в пиксельных единицах, прореживается посредством секции 3210 сокращения. Декодированный сокращенный разностный блок увеличивается посредством секции 3211 увеличения, и увеличенный блок и блок предсказания суммируются в пиксельных единицах для генерации декодированного блока.
Устройство 3300 видеодекодирования, показанное на Фиг.33, соответствует устройству 3200 видеокодирования, показанному на Фиг.32. Блок предсказания не сокращается, а декодированный сокращенный разностный блок увеличивается посредством секции 3308 увеличения, и увеличенный блок и блок предсказания суммируются в пиксельных единицах для генерации декодированного блока.
Устройство 3400 видеокодирования, показанное на Фиг.34, имеет конфигурацию, где функции секции 2110-2 сокращения по Фиг.21 включены в секцию заполнения в секции 3408 генерации предсказания. Таким же образом, устройство 3500 видеодекодирования, показанное на Фиг.35, имеет конфигурацию, где секция 2207 сокращения по Фиг.22 включена в секцию заполнения в секции генерации предсказания. В этом случае секция заполнения может выполнять комбинацию обработки сокращения и обработки заполнения, чтобы непосредственно генерировать сокращенный блок предсказания. В секции 203 заполнения, показанной на Фиг.2, Фиг.8 или Фиг.20, память секции 203 заполнения имеет размер такой, что она может сохранить сокращенный блок предсказания, но не может сохранить блок предсказания, получает только необходимую информацию непосредственно из репродуцированных видеоданных в секции 107 хранения и генерирует сокращенный блок предсказания. В этом случае секция определения области шаблона и секция согласования могут получить все пиксели в области шаблона из репродуцированных видеоданных в секции 107 хранения, как упомянуто выше, или также может выполнить обработку сокращения для области шаблона и получить только необходимую информацию и выполнить обработку согласования. В устройстве 3500 видеодекодирования, показанном на Фиг.35, с другой стороны, секция определения области шаблона также может получить только необходимую информацию непосредственно из репродуцированных видеоданных в секции 604 хранения.
Конфигурация секции генерации предсказания в устройстве 3200, 3400 видеокодирования и в устройстве 3300, 3500 видеодекодирования может быть такой, как показано на Фиг.2 или на Фиг.36. Для включения секции выбора, как в случае устройства 1800 видеокодирования и устройства 1900 видеодекодирования, показанных на Фиг.18 и на Фиг.19, секция выбора может быть добавлена, так что секция генерации предсказания может быть заменена секцией генерации предсказания, показанной на Фиг.2 и Фиг.20. Секция генерации предсказания, показанная на Фиг.2, может быть заменена секцией генерации предсказания, показанной на Фиг.8, поскольку поток ввода/вывода сигнала является тем же самым.
На Фиг.21 декодированный сокращенный блок может быть сохранен непосредственно в памяти кадров, без выполнения обработки увеличения. В другом кадре согласование шаблона выполняется с сокращенным изображением, полученным с совместным помещением сокращенного блока, и генерируется сокращенный блок предсказания. Затем выполняется разностное кодирование сокращенного целевого блока кодирования и сокращенного блока предсказания. Или сокращенный блок предсказания может быть увеличен и может быть выполнено разностное кодирование этого блока предсказания и целевого блока кодирования. Таким же образом, на Фиг.22 декодированный сокращенный блок может быть сохранен в памяти кадров, без выполнения обработки увеличения. В другом кадре согласование шаблона выполняется с сокращенным изображением, полученным с совместным помещением сокращенного блока, и генерируется сокращенный блок предсказания. Затем сокращенный блок репродуцируется путем суммирования декодированного сокращенного разностного блока и сокращенного блока предсказания. Или сокращенный блок предсказания может быть увеличен, и декодированный блок может быть репродуцирован путем суммирования декодированного разностного блока и увеличенного блока. Таким образом, эффект уменьшения количества битов кодирования может быть реализован, даже если способ применения обработки сокращения и обработки увеличения изменяется.
Способ обработки сокращения и обработки увеличения может быть способом, показанным на Фиг.23, или может быть другим способом, описанным ниже.
(3) Способ выбора TMP-E, TMP-L
Устройство 2100 видеокодирования и устройство 2200 видеодекодирования, показанные на Фиг.21 и Фиг.22 являются конфигурациями устройств, которые используют обработку сокращения/увеличения в предположении, что структуры области шаблона являются плоскими. В практических терминах, однако, плоская часть и характеристическая часть сосуществуют в структурах изображений, так что конфигурация, которая описана в первом варианте осуществления, без выполнения обработки сокращения/увеличения, скомбинирована с настоящей конфигурацией. Фиг.26 показывает устройство 2600 видеокодирования, где устройства 100 и 2100 видеокодирования по Фиг.1 и Фиг.21 объединены, а Фиг.27 показывает устройство 2700 видеодекодирования, где устройства 600 и 2200 видеодекодирования по Фиг.6 и Фиг.22 объединены. На Фиг.26 и Фиг.27 блоки, имеющие те же самые функции, что и на Фиг.1 и Фиг.6, Фиг.21 и Фиг.22, обозначены теми же самыми номерами, так что их детальное описание здесь опущено.
На Фиг.26 целевые блоки кодирования, полученные делением посредством секции 101 деления области, вводятся в секцию 102 вычитания и секцию 2110-1, соответственно. Целевой блок кодирования кодируется двумя типами способов кодирования с предсказанием (режим ТМР-Е: способ кодирования устройства 100 видеокодирования по Фиг.1; режим ТМР-L: способ кодирования устройства 2100 видеокодирования по Фиг.21), и два типа данных преобразования (данных квантования) выводятся из секции 103 преобразования и секции 2103 преобразования на секцию 2613 переключения. Два типа блоков декодирования, которые были локально декодированы двумя типами методом, выводятся на секцию 2612 выбора. Секция 2612 выбора выбирает один тип из двух типов блоков декодирования и выводит информацию выбора на секцию 2613 переключения и секцию 2604 кодирования. Секция 2613 переключения выводит данные преобразования (данные квантования) на секцию 2604 кодирования в соответствии с информацией выбора. Секция кодирования энтропийно кодирует вместе информацию выбора и данные преобразования (данные квантования).
Способ выбора режима TMP-E и TMP-L посредством секции 2612 выбора является, например, способом сравнения разностных сигналов целевого блока кодирования, который вводится отдельно, и двух типов блоков декодирования, и выбора одного, у которого сумма квадрата разности меньше. При этом способе, однако, определенное количество битов кодирования не включено, так что способ кодирования, у которого эффективность кодирования высока, не выбирается. Способом выбора, с учетом эффективности кодирования, является способ, описанный, например, в непатентном документе (2). Согласно этому способу данные преобразования (данные квантования), генерированные двумя типами способов квантования предсказания, виртуально кодированы, соответственно. Затем полное искажение между декодированным блоком и целевым блоком кодирования (например, сумма квадрата разности) и взвешенное значение критериев оценивания количества битов кодирования вычисляются, соответственно, и способ кодирования, у которого значение критериев оценивания мало, выбирается. В соответствии с этим способом может быть выбран способ кодирования с предсказанием, у которого эффективность кодирования высока. Для кодирования данных преобразования (данных квантования) данные могут быть введены в секцию 2612 выбора и могут кодироваться в секции 2612 выбора или могут кодироваться в секции 2604 кодирования, и информация о количестве битов кодирования вводится в секцию выбора.
В случае устройства 2700 видеодекодирования, показанного на Фиг.27, секция 2701 декодирования энтропийно декодирует информацию выбора режима TMP-E/режима TMP-L и данные преобразования (данные квантования) на основе выбранного способа кодирования с предсказанием. Основываясь на информации выбора, секция 2709 переключения выводит данные преобразования (данные квантования) на секцию 602 инверсного преобразования, если информация выбора указывает режим TMP-E, и выводит данные преобразования (данные квантования) на секцию 2202 инверсного преобразования, если информация выбора указывает режим TMP-L. Данные преобразования (данные квантования) декодируются соответственно способу декодирования, указанному информацией выбора.
В вышеизложенном описании режимами TMP-E и TMP-L манипулируют как различными способами кодирования с предсказанием, и эта информация выбора кодируется на стороне кодирования. Однако два типа способов кодирования с предсказанием могут интерпретироваться как один тип, где он автоматически выбирается с использованием информации декодирования (информации, полученной из репродуцированного изображения или характеристических данных, принадлежащих репродуцированному изображению), совместно используемой стороной кодирования и стороной декодирования. Для характеристических данных могут использоваться целевые сигналы в области шаблона. Например, возможным способом является использование дисперсии целевых сигналов области шаблона. Иными словами, заранее устанавливается порог, и выбирается режим TMP-E, если значение дисперсии больше, чем порог, и выбирается режим TMP-L, если значение дисперсии меньше, чем порог. Другим возможным способом, иным, чем использование значения дисперсии, является вычисление градиента пикселей (разностных значений между смежными пикселями) целевых сигналов области шаблона, и выбор режима TMP-E, если число пикселей, у которых разностное значение превышает порог, больше, чем предварительно определенное значение, и выбор режима TMP-L, если оно меньше. Другим возможным способом является сравнение вектора движения, определенного при согласовании шаблона, и вектора движения, когда группа пикселей области шаблона декодирована (может отыскиваться снова с использованием сигнала блока декодирования), и выбор режима TMP-E, если эта разность меньше, чем предварительно определенный порог, и выбор режима TMP-L, если больше. Режимы TMP-E/TMP-L могут выбираться на основе размера полученного вектора движения или векторов движения смежных блоков. Эти варианты выбора, основанные на значении дисперсии, градиенте пикселей и векторе движения, могут комбинироваться. Если способы, используемые для выбора, различаются, то окончательный выбор может быть определен методом большинства, или также возможен способ передачи информации выбора, только если выбранные способы различаются, где может быть получен устойчивый результат выбора.
В этом случае в устройстве 2700 видеодекодирования по Фиг.27, где информация выбора не кодируется, должна быть добавлена секция выбора. Эта секция выбора выполняет те же самые операции, что и секция выбора устройства кодирования, и выводит информацию выбора на секцию 2709 переключения.
Секция генерации предсказания в каждом устройстве 2600, 2700, показанном на Фиг.26 и Фиг.27, не ограничена конфигурацией, показанной на Фиг.2, как упомянуто в вышеописанной вариантой форме (1). Также возможно применять конфигурацию, показанную на Фиг.8, Фиг.20 или Фиг.36.
В секции 3608 генерации предсказания, показанной на Фиг.36, можно применять обработку сокращения/увеличения, такую как TMP-L, только в случае предварительно определенного способа заполнения, и применять только дифференциальное кодирование, такое как TMP-E, в случае других способов заполнения. Другим возможным способом является применение таких способов кодирования, как TMP-L и TMP-E, к блокам предсказания, генерируемым с использованием способа заполнения, выбранного секцией заполнения, и выбор одного способа кодирования адаптивным образом.
(4) Адаптация к обычному способу кодирования с предсказанием
Вышеупомянутые способы кодирования с предсказанием TMP-E и TMP-L могут селективно использоваться в комбинации с множеством способов кодирования с предсказанием, описанных в непатентном документе (1) (режим межблочного предсказания и режим внутриблочного предсказания для кодирования векторов движения). В этом случае множество размеров блока может быть предоставлено для каждого способа кодирования с предсказанием. Оптимальный выбор способа кодирования с предсказанием и размера блока может быть реализован способом, показанным, например, в непатентном документе (2). Иными словами, это может быть реализовано путем объединения обычных способов кодирования с предсказанием с каждым устройством 2600 и 2700, показанным на Фиг.26 и Фиг.27 (способ генерации предсказания может быть модифицирован, как показано в вариантной форме (1)), и добавления секции выбора. Также возможно адаптировать только TMP-L к обычным способам кодирования с предсказанием. В этом случае обычные способы кодирования с предсказанием комбинируются с устройством 2100, 2200, показанным на Фиг.21 и Фиг.22, устройством 3200, 3300, показанным на Фиг.32 и Фиг.33, или устройством 3400, 3500, показанным на Фиг.34 и Фиг.35.
(5) Обработка сокращения/увеличения
Обработка сокращения блока посредством секции сокращения и обработка увеличения блока посредством секции увеличения не ограничены способом по Фиг.23. Фиг.28 и Фиг.29 показывают другие примеры.
На Фиг.28 блок 2801 показывает блок перед сокращением, а блок 2802 показывает сокращенный блок. В этом примере сокращенный блок генерируется простой дискретизацией пикселей без использования обработки фильтрации, такой как использовалась для обработки 2304. Обработка 2805 показывает способ генерации пикселей в блоке увеличения в обработке увеличения. Пиксели A-D показывают пиксели в блоке 2802, пиксели а-с показывают пиксели на увеличенном изображении. Пиксели A-D, которые являются исходными пикселями перед обработкой сокращения, непосредственно копируются на увеличенный блок 2803. Пиксели, удаленные обработкой сокращения, вычисляются простой линейной интерполяцией, как видно для пикселей а-с в обработке 2305. Пиксели, указанные квадратом в блоке 2803, также вычисляются обработкой линейной интерполяции с использованием смежных пикселей. Для пикселя, указанного черным квадратом верхнем конце и левом конце увеличенного блока 2803, существует только один или два смежных пикселя, указанных кругом. В этом случае используются декодированные пиксели в смежном блоке, показанные в группе 2806 пикселей. Поскольку группа 2806 пикселей сохранена в секции хранения, то путь ввода из секции хранения в секцию увеличения требуется в каждом устройстве, показанном на Фиг.21, Фиг.22, Фиг.26 и Фиг.27.
На Фиг.29 блок 2901 показывает блок перед сокращением, а блок 2902 показывает сокращенный блок, и обработка 2904 показывает способ обработки сокращения. В этом способе сокращения пиксель Р на сокращенном блоке генерируется обработкой фильтрации с использованием восьми пикселей (j, k, l, m, n, o, q, r), смежных с пикселями р, как показано в обработке 2904. Обработка 2905 показывает способ генерации пикселей на увеличенном блоке 2903 в обработке увеличения. Поскольку эта обработка является той же самой, что и 2805 на Фиг.28, ее описание опускается. В этом случае также группа 2906 пикселей сохраняется в секции хранения, так что путь ввода из секции хранения в секцию увеличения требуется на Фиг.21, Фиг.22, Фиг.26 и Фиг.27, чтобы реализовать эту обработку.
В этих примерах коэффициенты сокращения по вертикали и горизонтали размера сокращенного блока составляют 1/2 соответственно, но коэффициент сокращения не ограничен этим. Например, коэффициент сокращения может быть равен 1/4 и коэффициенты по вертикали и по горизонтали могут различаться.
Способ сокращения/увеличения не обязательно должен быть одного и того же типа, но может выбираться из множества способов. Возможным способом выбора является выбор способа, причем сумма абсолютных значений или сумма квадрата ошибки кодирования становится минимальной, который может быть выбран в единицах кадров или блочных единицах на стороне кодирования, и кодирование информации выбора или автоматический выбор из множества блоков-кандидатов декодирования. Для способа решения достаточно, если используется информация, полученная из характеристических данных, принадлежащих репродуцированному изображению, и репродуцированное изображение, например, способ для вычисления усредненного значения в пиксельных блоках или способ для выбора центрального значения в пиксельных блоках.
Способ сокращения для целевого блока кодирования не ограничен для устройства декодирования. Поэтому отличающийся способ сокращения может быть использован для блока предсказания и для целевого блока кодирования, только если число пикселей сокращенного блока то же самое. Для устройства декодирования и обработки декодирования способ сокращения для целевого блока кодирования не специфицирован.
(6)Повторное кодирование увеличенного блока
Для каждого устройства 2600, 2700, показанного на Фиг.26 и Фиг.27, блок, увеличенный секциями 2111 и 2208 увеличения, является кандидатом для блока декодирования, но также возможно обрабатывать этот блок как кандидат блока предсказания и выбирать подходящий один из этого блока-кандидата и блока предсказания, генерированного секциями 108 и 605 генерации предсказания. В случае блока, увеличенного секцией увеличения, высокочастотные компоненты ограничены обработкой фильтрации, так что повторное кодирование этого блока улучшает качество изображения при меньшей дополнительной информации.
На Фиг.30 и 31 показано устройство 3000 видеокодирования и устройство 3100 видеодекодирования согласно настоящей вариантой форме. Различиями устройства 3000 видеокодирования по Фиг.30 от Фиг.26 являются функции секции 3012 выбора и секции 3004 кодирования, и обработка данных преобразования (данных квантования), которые выведены из секции 2103 преобразования. В случае секции 3012 выбора по Фиг.26 вводятся два типа блоков-кандидатов декодирования, а в случае секции 3012 выбора настоящей вариантой формы вводятся два типа блоков-кандидатов предсказания с секции 108 генерации предсказания и секции 2111 увеличения. Для способа выбора может быть использован способ, показанный в описании Фиг.26. Однако если используется способ согласно непатентному документу (2), то два типа блоков-кандидатов предсказания должны быть виртуально кодированы/декодированы для вычисления полного искажения и количества битов кодирования. Для режима TMP-L данные преобразования (данные квантования), которые выведены из секции 2103 преобразования, также должны быть виртуально кодированы для преобразования их в количество битов кодирования. Выбранный блок предсказания выводится на секцию 106 суммирования и секцию 102 вычитания и преобразуется и кодируется. Если режим TMP-L выбран секцией выбора, то переключатель 3013 включается так, чтобы вывести данные преобразования (данные квантования), которые выводятся из секции 2103 преобразования в секцию 2004 кодирования. Секция 3004 кодирования кодирует все данные с секции 103 преобразования, секции 2103 преобразования (в случае режима TMP-L) и данные с секции выбора (если необходимо).
В случае выполнения квантования в секциях 103, 2103 преобразования эффективность кодирования улучшается, если точность квантования секции 2103 преобразования установлена более высокой, чем точность квантования секции 103 преобразования. Поскольку сокращенный блок может быть кодирован с количеством битов кодирования, меньшим, чем их количество целевого блока кодирования, увеличение точности квантования сокращенного блока не увеличивает количество битов кодирования в значительной степени. Поэтому качество изображения может быть улучшено без снижения эффективности кодирования.
Различиями устройства 3001 видеодекодирования по Фиг.31 от Фиг.27 являются функции секции 3101 декодирования, секции 3109 переключения и обработка блока предсказания, который выводится из секции 605 генерации предсказания. В секции 3101 декодирования информация выбора энтропийно декодируется. Если способом кодирования с предсказанием является режим TMP-L, то данные преобразования (данные квантования) сокращенного блока энтропийно декодируются. Данные преобразования (данные квантования) сокращенного блока выводятся на секцию 2202 инверсного преобразования посредством управления секцией 3109 переключения. Данные преобразования (данные квантования) увеличенного блока энтропийно декодируются и выводятся на секцию 602 инверсного преобразования посредством управления секцией 3109 переключения. При управлении переключателем 3110 на основе информации выбора блок предсказания, генерированный согласованием шаблона в секции 605 генерации предсказания, выводится на секцию 2207 сокращения. Секция 603 суммирования суммирует разностный блок, полученный с секции 602 инверсного преобразования, и блок предсказания, полученный с секции 2208 увеличения, и генерирует блок декодирования. Если способ кодирования с предсказанием является режимом TMP-Е, то энтропийно декодированные данные преобразования (данные квантования) выводятся на секцию 602 инверсного преобразования посредством управления секцией 3109 переключения. Также посредством управления секцией 3109 переключения на основе информации выбора блок предсказания, генерированный согласованием шаблона в секции 605 генерации предсказания, выводится на секцию 603 суммирования. Секция 603 суммирования суммирует разностный блок, полученный с секции 602 инверсного преобразования, и блок предсказания, полученный с секции 605 генерации предсказания через переключатель 3110, и генерирует декодированный блок.
В этой вариантой форме также могут быть применены способ предсказания шаблона в вариантой форме (1) настоящего варианта осуществления и способ выбора режим, показанный в вариантных формах (3) и (4).
Ниже описана программа видеокодирования, обеспечивающая выполнение устройством видеокодирования вышеописанной последовательности обработки кодирования. Как показано на Фиг.16, программа 1601 видеокодирования сохранена в области 1600а хранения программ, созданной на носителе 1600 записи, который может считываться или инсталлироваться в устройстве видеокодирования.
Программа 1601 видеокодирования содержит основной модуль 1601а для общего управления обработкой видеокодирования, модуль 1601b деления области, модуль 1601 вычитания, модуль 1601d преобразования, модуль 1601е кодирования, модуль 1601f инверсного преобразования, модуль 1601g суммирования, модуль 1601h хранения и модуль 1601i генерации предсказания. Модуль 1601i генерации предсказания содержит модуль 1601j определения области шаблона, модуль 1601k согласования и модуль 1601m заполнения.
Функции, реализуемые при исполнении каждого модуля, являются теми же самыми, что и описанные выше функции каждого составного элемента устройства 100 видеокодирования. Иными словами, функции, реализуемые при исполнении каждого модуля из модуля 1601b деления области, модуля 1601 вычитания, модуля 1601d преобразования, модуля 1601е кодирования, модуля 1601f инверсного преобразования, модуля 1601g суммирования, модуля 1601h хранения и модуля 1601i генерации предсказания, являются теми же самыми, что и описанные выше функции секции 101 деления области, секции 102 вычитания, секции 103 преобразования, секции 104 кодирования, секции 105 инверсного преобразования, секции 105 суммирования, секции 107 хранения и секции 108 генерации предсказания в устройстве 100 видеокодирования вышеописанных вариантов осуществления. Функции, реализуемые при исполнении каждого модуля из модуля 1601j определения области шаблона, модуля 1601k согласования и модуля 1601m заполнения, являются теми же самыми, что и описанные выше функции секции 201 определения области шаблона, секции 202 согласования и секции 203 заполнения в устройстве 100 видеокодирования вышеописанных вариантов осуществления.
Ниже описана программа видеодекодирования, обеспечивающая выполнение устройством видеодекодирования вышеописанной последовательности обработки кодирования. Как показано на Фиг.17, программа 1701 видеодекодирования сохранена в области 1700а хранения программ, созданной на носителе 1700 записи, который может считываться или инсталлироваться в устройстве видеодекодирования.
Программа 1701 видеодекодирования содержит основной модуль 1701а для общего управления обработкой видеодекодирования, модуль 1701b декодирования, модуль 1701с инверсного преобразования, модуль 1701d суммирования, модуль 1701e хранения и модуль 1701f генерации предсказания. Модуль 1701f генерации предсказания содержит модуль 1701g определения области шаблона, модуль 1701h согласования и модуль 1701i заполнения.
Функции, реализуемые при исполнении каждого модуля, являются теми же самыми, что и описанные выше функции каждого составного элемента устройства 600 видеодекодирования. Иными словами, функции, реализуемые при исполнении каждого модуля из модуля 1701b декодирования, модуля 1701с инверсного преобразования, модуля 1701d суммирования, модуля 1701e хранения и модуля 1701f генерации предсказания, являются теми же самыми, что и описанные выше функции секции 601 декодирования, секции 602 инверсного преобразования, секции 603 суммирования, секции 604 хранения и секции 605 генерации предсказания в устройстве 600 видеодекодирования вышеописанных вариантов осуществления. Функции, реализуемые при исполнении каждого модуля из модуля 1701g определения области шаблона, модуля 1701h согласования и модуля 1701i заполнения, являются теми же самыми, что и описанные выше функции секции 201 определения области шаблона, секции 202 согласования и секции 203 заполнения в устройстве 100 видеокодирования или устройстве 600 видеодекодирования вышеописанных вариантов осуществления.
Часть или все из программы 1601 видеокодирования программы 1701 видеодекодирования могут передаваться через среду передачи, такую как линия связи, приниматься и записываться (включая инсталляцию) другим оборудованием.
Программа 1601 видеокодирования и программа 1701 видеодекодирования, соответствующие устройству 100 видеокодирования и устройству 600 видеодекодирования, показаны на Фиг.1 и Фиг.6, были описаны здесь согласно первому варианту осуществления, но программа видеокодирования и программа видеодекодирования также могут быть созданы путем предоставления модулей для реализации функций устройства видеокодирования и устройства видеодекодирования для вариантой формы первого варианта осуществления, второго варианта осуществления и третьего варианта осуществления и их вариантных форм, и поэтому эти программы видеокодирования и программы видеодекодирования включены в настоящее изобретение.